diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..9dcfcdcf874e3ed54257c36bb797b214413a90da
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,86 @@
+# .gitignore for IVAS public collaboration Git repository
+
+# Compiler output Unix
+IVAS_cod
+IVAS_dec
+IVAS_rend
+ISAR_post_rend
+ambi_converter
+obj/
+*.a
+*.o
+*.P
+
+# default CMake
+build*/**/*
+
+# Compiler output VS2017
+IVAS_cod.exe
+IVAS_dec.exe
+IVAS_rend.exe
+ISAR_post_rend.exe
+ambi_converter.exe
+*.user
+.vs/
+Debug_*/
+Release_*/
+*.obj
+*.pdb
+
+# Standalone TD object renderer
+scripts/td_object_renderer/object_renderer_standalone/renderer_standalone
+scripts/td_object_renderer/object_renderer_standalone/renderer_standalone.exe
+
+# General/scripts
+.DS_Store
+.vscode
+.cache
+.idea
+*.log
+*.bak
+.\#*
+scripts/c-code_instrument/
+scripts/ifdef_instrument.list
+scripts/ref/
+scripts/test/
+scripts/out/
+scripts/self_test_summary.txt
+scripts/cppp/
+binary/
+tests/**/[c|d]ut
+tests/**/ref
+tests/*/testv
+tests/hrtf_binary_loading/bitstream/*
+tests/hrtf_binary_loading/dec_out_*/*
+scripts/testv/*_cut*.pcm
+scripts/testv/*_cut*.wav
+scripts/testv/stvOMASA_*.met
+scripts/testv/stvOMASA_*.csv
+scripts/testv/stvOMASA_2ISM_1MASA1TC48c.wav
+scripts/testv/stvOMASA_3ISM_1MASA1TC48c.wav
+scripts/testv/stvO*
+# default reference binary name
+IVAS_cod_ref*
+IVAS_dec_ref*
+IVAS_rend_ref*
+ISAR_post_rend_ref*
+
+# Python files that pop up when running scripts
+__pycache__/
+*.py[cod]
+*$py.class
+
+# history
+.history/
+
+#externals
+Externals/
+
+# coan output files that are created when cleaning out switches
+coan_out_*
+
+# Additional ignored locations for the BASOP repo
+/ci
+/scripts
+/tests
+/pytest.ini
diff --git a/Workspace_msvc/ambi_converter.vcxproj b/Workspace_msvc/ambi_converter.vcxproj
index caedd2c6f13a4a58e7155a70d7658086e95a7351..0e17467f00059626766158928c48c144b4f27610 100644
--- a/Workspace_msvc/ambi_converter.vcxproj
+++ b/Workspace_msvc/ambi_converter.vcxproj
@@ -160,6 +160,10 @@
{2FA8F384-0775-F3B7-F8C3-85209222FC70}
false
+
+ {54509728-928B-44D9-A118-A6F92F08B34F}
+ false
+
diff --git a/Workspace_msvc/decoder.vcxproj b/Workspace_msvc/decoder.vcxproj
index 160d4f7df7972204f12dd6a414e480e0a48b6a22..a27712c39684c30c579f3517fa57d9a7927be406 100644
--- a/Workspace_msvc/decoder.vcxproj
+++ b/Workspace_msvc/decoder.vcxproj
@@ -151,8 +151,6 @@
-
-
@@ -178,4 +176,4 @@
-
\ No newline at end of file
+
diff --git a/Workspace_msvc/lib_enc.vcxproj.filters b/Workspace_msvc/lib_enc.vcxproj.filters
index 4194dbc5a1b9602c6f126b86d3a64735badd9a31..0165869a652b48c1578988cf4406ed6a159bce20 100644
--- a/Workspace_msvc/lib_enc.vcxproj.filters
+++ b/Workspace_msvc/lib_enc.vcxproj.filters
@@ -46,9 +46,6 @@
encoder_evs_c
-
- encoder_evs_c
-
encoder_evs_c
@@ -596,6 +593,9 @@
encoder_all_c
+
+ encoder_all_c
+
diff --git a/Workspace_msvc/lib_util.vcxproj b/Workspace_msvc/lib_util.vcxproj
index 73a48f23e8967698270fd835193b8da1b580b7bb..7b793cc4c70b861dc4a0b0bfa0fa129c278f8926 100644
--- a/Workspace_msvc/lib_util.vcxproj
+++ b/Workspace_msvc/lib_util.vcxproj
@@ -110,7 +110,6 @@
-
@@ -121,6 +120,7 @@
+
@@ -145,6 +145,7 @@
+
diff --git a/apps/decoder.c b/apps/decoder.c
index b6b4feddde6624a16a67111960aef02328850122..b46f0afe7f30b19c018fa14d16fc6250a2466569 100644
--- a/apps/decoder.c
+++ b/apps/decoder.c
@@ -47,6 +47,9 @@
#include "aeid_file_reader.h"
#endif
#include "split_render_file_read_write.h"
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+#include "obj_edit_file_reader.h"
+#endif
#include "vector3_pair_file_reader.h"
#include "wmc_auto.h"
#include "options.h"
@@ -64,19 +67,10 @@ static
#endif
int32_t frame = 0; /* Counter of frames */
-#define MIN_NUM_BITS_ACTIVE_FRAME 56
-#define NUM_BITS_SID_IVAS_5K2 104
-#define MAX_OUTPUT_PCM_BUFFER_SIZE ( ( IVAS_MAX_OUTPUT_CHANNELS + IVAS_MAX_NUM_OBJECTS ) * IVAS_MAX_FRAME_SIZE )
-
-#define ORIENT_TRK_NONE ( 0 )
-#define ORIENT_TRK_REF ( 1 )
-#define ORIENT_TRK_AVG ( 2 )
-#define ORIENT_TRK_REF_VEC ( 3 )
-#define ORIENT_TRK_REF_VEC_LEV ( 4 )
-
-#define JBM_FRONTEND_FETCH_FRAMESIZE_MS 20
-#define HEADROTATION_FETCH_FRAMESIZE_MS 5
-#define DEFAULT_FETCH_FRAMESIZE_MS 20
+#ifdef DEBUGGING
+#define MIN_NUM_BITS_ACTIVE_FRAME 56
+#define NUM_BITS_SID_IVAS_5K2 104
+#endif
/*------------------------------------------------------------------------------------------*
@@ -90,8 +84,8 @@ typedef struct
uint16_t count;
uint16_t selected;
uint16_t frameCounter;
-} AcousticEnvironmentSequence;
+} AcousticEnvironmentSequence;
typedef struct
{
@@ -122,7 +116,7 @@ typedef struct
IVAS_DEC_INPUT_FORMAT inputFormat;
bool customLsOutputEnabled;
char *customLsSetupFilename;
- int16_t orientation_tracking;
+ IVAS_HEAD_ORIENT_TRK_T orientation_tracking;
bool non_diegetic_pan_enabled;
float non_diegetic_pan_gain;
Word16 non_diegetic_pan_gain_fx; /* Q15 */
@@ -135,10 +129,13 @@ typedef struct
AcousticEnvironmentSequence aeSequence;
bool dpidEnabled;
uint16_t directivityPatternId[IVAS_MAX_NUM_OBJECTS];
+ bool objEditEnabled;
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ char *objEditFileName;
+#endif
} DecArguments;
-#ifdef FIX_CREND_SIMPLIFY_CODE
typedef struct
{
hrtfFileReader *hrtfReader;
@@ -156,7 +153,7 @@ typedef struct
IVAS_AUDIO_CONFIG hrtf_set_audio_cfg;
} IVAS_DEC_HRTF_BINARY_WRAPPER;
-#endif
+
/*------------------------------------------------------------------------------------------*
* Local functions prototypes
@@ -164,13 +161,18 @@ typedef struct
static bool parseCmdlIVAS_dec( int16_t argc, char **argv, DecArguments *arg );
static void usage_dec( void );
-#ifdef FIX_CREND_SIMPLIFY_CODE
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+static ivas_error decodeG192( DecArguments arg, BS_READER_HANDLE hBsReader, IVAS_DEC_HRTF_BINARY_WRAPPER *hHrtfBinary, RotFileReader *headRotReader, RotFileReader *externalOrientationFileReader, RotFileReader *refRotReader, Vector3PairFileReader *referenceVectorReader, ObjectEditFileReader *objectEditFileReader, ISAR_SPLIT_REND_BITS_DATA *splitRendBits, IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf );
+static ivas_error decodeVoIP( DecArguments arg, BS_READER_HANDLE hBsReader, IVAS_DEC_HRTF_BINARY_WRAPPER *hHrtfBinary, RotFileReader *headRotReader, RotFileReader *externalOrientationFileReader, RotFileReader *refRotReader, Vector3PairFileReader *referenceVectorReader, ObjectEditFileReader *objectEditFileReader, IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf );
+#else
static ivas_error decodeG192( DecArguments arg, BS_READER_HANDLE hBsReader, IVAS_DEC_HRTF_BINARY_WRAPPER *hHrtfBinary, RotFileReader *headRotReader, RotFileReader *externalOrientationFileReader, RotFileReader *refRotReader, Vector3PairFileReader *referenceVectorReader, ISAR_SPLIT_REND_BITS_DATA *splitRendBits, IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf );
-static ivas_error decodeVoIP( DecArguments arg, BS_READER_HANDLE hBsReader, IVAS_DEC_HRTF_BINARY_WRAPPER *hHrtfBinary, RotFileReader *headRotReader, RotFileReader *externalOrientationFileReader, RotFileReader *refRotReader, Vector3PairFileReader *referenceVectorReader, IVAS_DEC_HANDLE hIvasDec );
+static ivas_error decodeVoIP( DecArguments arg, BS_READER_HANDLE hBsReader, IVAS_DEC_HRTF_BINARY_WRAPPER *hHrtfBinary, RotFileReader *headRotReader, RotFileReader *externalOrientationFileReader, RotFileReader *refRotReader, Vector3PairFileReader *referenceVectorReader, IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf );
+#endif
static ivas_error load_hrtf_from_file( IVAS_DEC_HRTF_BINARY_WRAPPER *hHrtfBinary, IVAS_DEC_HANDLE hIvasDec, const IVAS_AUDIO_CONFIG OutputConfig, const int32_t output_Fs );
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+static void do_object_editing_fx( IVAS_EDITABLE_PARAMETERS *editableParameters, ObjectEditFileReader *objectEditFileReader );
#else
-static ivas_error decodeG192( DecArguments arg, BS_READER_HANDLE hBsReader, RotFileReader *headRotReader, RotFileReader *externalOrientationFileReader, RotFileReader *refRotReader, Vector3PairFileReader *referenceVectorReader, ISAR_SPLIT_REND_BITS_DATA *splitRendBits, IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf );
-static ivas_error decodeVoIP( DecArguments arg, BS_READER_HANDLE hBsReader, RotFileReader *headRotReader, RotFileReader *externalOrientationFileReader, RotFileReader *refRotReader, Vector3PairFileReader *referenceVectorReader, IVAS_DEC_HANDLE hIvasDec );
+static void do_object_editing_fx( IVAS_EDITABLE_PARAMETERS *editableParameters );
#endif
@@ -202,12 +204,9 @@ int main(
RenderConfigReader *renderConfigReader = NULL;
int16_t *pcmBuf = NULL;
IVAS_RENDER_FRAMESIZE asked_frame_size;
-#ifdef FIX_CREND_SIMPLIFY_CODE
IVAS_DEC_HRTF_BINARY_WRAPPER hHrtfBinary;
-#else
- IVAS_DEC_HRTF_TD_HANDLE *hHrtfTD = NULL;
- IVAS_DEC_HRTF_CREND_HANDLE *hSetOfHRTF = NULL;
- IVAS_DEC_HRTF_STATISTICS_HANDLE *hHrtfStatistics = NULL;
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ ObjectEditFileReader *objectEditFileReader = NULL;
#endif
#ifdef WMOPS
@@ -215,10 +214,8 @@ int main(
reset_mem( USE_BYTES );
#endif
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtfBinary.hHrtfTD = NULL; /* just to avoid compilation warning */
hHrtfBinary.hHrtfStatistics = NULL; /* just to avoid compilation warning */
-#endif
splitRendBits.bits_buf = splitRendBitsBuf;
@@ -338,7 +335,7 @@ int main(
}
/* sanity check */
- if ( arg.orientation_tracking != ORIENT_TRK_REF )
+ if ( arg.orientation_tracking != IVAS_HEAD_ORIENT_TRK_REF )
{
fprintf( stderr, "\nError: Reference rotation file can be used in '-otr ref' mode only.\n\n" );
goto cleanup;
@@ -365,7 +362,7 @@ int main(
}
/* sanity check */
- if ( arg.orientation_tracking != ORIENT_TRK_REF_VEC && arg.orientation_tracking != ORIENT_TRK_REF_VEC_LEV )
+ if ( arg.orientation_tracking != IVAS_HEAD_ORIENT_TRK_REF_VEC && arg.orientation_tracking != IVAS_HEAD_ORIENT_TRK_REF_VEC_LEV )
{
fprintf( stderr, "\nError: Reference trajectory file can be used in '-otr ref_vec' or '-otr ref_vec_lev' mode only.\n\n" );
goto cleanup;
@@ -404,6 +401,20 @@ int main(
}
}
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ /*------------------------------------------------------------------------------------------*
+ * Open object editing instruction file
+ *------------------------------------------------------------------------------------------*/
+
+ if ( arg.objEditFileName != NULL )
+ {
+ if ( ( error = ObjectEditFileReader_open( arg.objEditFileName, &objectEditFileReader ) ) != IVAS_ERR_OK )
+ {
+ fprintf( stderr, "\nError: Can't open Object editing instruction file %s \n\n", arg.objEditFileName );
+ goto cleanup;
+ }
+ }
+#endif
/*------------------------------------------------------------------------------------------*
* Configure the decoder
@@ -411,12 +422,20 @@ int main(
asked_frame_size = arg.renderFramesize;
uint16_t aeID = arg.aeSequence.count > 0 ? arg.aeSequence.pID[0] : 65535;
+
+#ifdef LIB_DEC_REVISION
+ if ( ( error = IVAS_DEC_Configure( hIvasDec, arg.output_Fs, arg.outputConfig, arg.renderFramesize, arg.customLsOutputEnabled, arg.hrtfReaderEnabled,
+ arg.enableHeadRotation, arg.enableExternalOrientation, arg.orientation_tracking, arg.renderConfigEnabled,
+ arg.non_diegetic_pan_enabled, arg.non_diegetic_pan_gain_fx, arg.dpidEnabled, aeID, arg.objEditEnabled, arg.delayCompensationEnabled ) ) != IVAS_ERR_OK )
+#else
if ( ( error = IVAS_DEC_Configure( hIvasDec, arg.output_Fs, arg.outputConfig, arg.tsmEnabled, arg.renderFramesize, arg.customLsOutputEnabled, arg.hrtfReaderEnabled, arg.enableHeadRotation, arg.enableExternalOrientation, arg.orientation_tracking, arg.renderConfigEnabled, arg.non_diegetic_pan_enabled, arg.non_diegetic_pan_gain_fx,
arg.dpidEnabled, aeID, arg.delayCompensationEnabled ) ) != IVAS_ERR_OK )
+#endif
{
fprintf( stderr, "\nConfigure failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
goto cleanup;
}
+
if ( ( error = IVAS_DEC_GetRenderFramesize( hIvasDec, &arg.renderFramesize ) ) != IVAS_ERR_OK )
{
fprintf( stderr, "\nConfigure failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
@@ -518,6 +537,7 @@ int main(
fprintf( stderr, "Failed to get Distance Attenuation \n\n" );
goto cleanup;
}
+
if ( ( arg.outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || arg.outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
{
if ( asked_frame_size != IVAS_RENDER_FRAMESIZE_20MS &&
@@ -603,112 +623,11 @@ int main(
if ( arg.hrtfReaderEnabled )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtfBinary.hrtfReader = hrtfReader;
hHrtfBinary.hrtfFileName = arg.hrtfFileName;
hHrtfBinary.binaural_renderer = IVAS_BIN_RENDERER_TYPE_NONE;
hHrtfBinary.binaural_renderer_sec = IVAS_BIN_RENDERER_TYPE_NONE;
hHrtfBinary.hrtf_set_audio_cfg = IVAS_AUDIO_CONFIG_INVALID;
-#else
- if ( ( error = IVAS_DEC_GetHrtfHandle( hIvasDec, &hHrtfTD ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nIVAS_DEC_GetHrtfHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
- goto cleanup;
- }
-
-#ifdef FIX_989_TD_REND_ROM
- if ( ( error = load_TDrend_HRTF_binary( *hHrtfTD, arg.output_Fs, hrtfReader ) ) != IVAS_ERR_OK )
-#else
- if ( ( error = load_HRTF_binary( *hHrtfTD, hrtfReader ) ) != IVAS_ERR_OK )
-#endif
- {
- if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA )
- {
- fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName );
- goto cleanup;
- }
- else
- {
- destroy_td_hrtf( hHrtfTD );
- }
- }
-
- if ( ( error = IVAS_DEC_GetHrtfCRendHandle( hIvasDec, &hSetOfHRTF ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nIVAS_DEC_GetHrtfCRendHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
- goto cleanup;
- }
-
- if ( ( error = create_SetOfHRTF_from_binary( *hSetOfHRTF, hrtfReader, arg.output_Fs ) ) != IVAS_ERR_OK )
- {
- if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA )
- {
- fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName );
- goto cleanup;
- }
- else
- {
- destroy_SetOfHRTF( hSetOfHRTF );
- }
- }
-
- IVAS_DEC_HRTF_FASTCONV_HANDLE *hHrtfFastConv = NULL;
- if ( ( error = IVAS_DEC_GetHrtfFastConvHandle( hIvasDec, &hHrtfFastConv ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nIVAS_DEC_GetHrtfFastConvHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
- goto cleanup;
- }
-
- if ( ( error = load_fastconv_HRTF_from_binary( *hHrtfFastConv, hrtfReader ) ) != IVAS_ERR_OK )
- {
- if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA )
- {
- fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName );
- goto cleanup;
- }
- else
- {
- destroy_fastconv_hrtf( hHrtfFastConv );
- }
- }
-
- IVAS_DEC_HRTF_PARAMBIN_HANDLE *hHrtfParambin = NULL;
- if ( ( error = IVAS_DEC_GetHrtfParamBinHandle( hIvasDec, &hHrtfParambin ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nIVAS_DEC_GetHrtfParamBinHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
- goto cleanup;
- }
-
- if ( ( error = load_parambin_HRTF_from_binary( *hHrtfParambin, hrtfReader ) ) != IVAS_ERR_OK )
- {
- if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA )
- {
- fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName );
- goto cleanup;
- }
- else
- {
- destroy_parambin_hrtf( hHrtfParambin );
- }
- }
- if ( ( error = IVAS_DEC_GetHrtfStatisticsHandle( hIvasDec, &hHrtfStatistics ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nIVAS_DEC_GetHrtfHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
- goto cleanup;
- }
- if ( ( error = load_reverb_binary( *hHrtfStatistics, arg.output_Fs, hrtfReader ) ) != IVAS_ERR_OK )
- {
- if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA )
- {
- fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName );
- goto cleanup;
- }
- else
- {
- destroy_hrtf_statistics( hHrtfStatistics );
- }
- }
-#endif
}
/*------------------------------------------------------------------------------------------*
@@ -723,13 +642,11 @@ int main(
}
pcmBuf = malloc( pcmBufSize * sizeof( int16_t ) );
-#ifdef FIX_CREND_SIMPLIFY_CODE
if ( pcmBuf == NULL )
{
fprintf( stdout, "Error: Unable to allocate memory for output buffer.\n" );
goto cleanup;
}
-#endif
/*-----------------------------------------------------------------*
* Decoding
@@ -737,18 +654,18 @@ int main(
if ( arg.voipMode )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
- error = decodeVoIP( arg, hBsReader, &hHrtfBinary, headRotReader, externalOrientationFileReader, refRotReader, referenceVectorReader, hIvasDec );
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ error = decodeVoIP( arg, hBsReader, &hHrtfBinary, headRotReader, externalOrientationFileReader, refRotReader, referenceVectorReader, objectEditFileReader, hIvasDec, pcmBuf );
#else
- error = decodeVoIP( arg, hBsReader, headRotReader, externalOrientationFileReader, refRotReader, referenceVectorReader, hIvasDec );
+ error = decodeVoIP( arg, hBsReader, &hHrtfBinary, headRotReader, externalOrientationFileReader, refRotReader, referenceVectorReader, hIvasDec, pcmBuf );
#endif
}
else
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
- error = decodeG192( arg, hBsReader, &hHrtfBinary, headRotReader, externalOrientationFileReader, refRotReader, referenceVectorReader, &splitRendBits, hIvasDec, pcmBuf );
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ error = decodeG192( arg, hBsReader, &hHrtfBinary, headRotReader, externalOrientationFileReader, refRotReader, referenceVectorReader, objectEditFileReader, &splitRendBits, hIvasDec, pcmBuf );
#else
- error = decodeG192( arg, hBsReader, headRotReader, externalOrientationFileReader, refRotReader, referenceVectorReader, &splitRendBits, hIvasDec, pcmBuf );
+ error = decodeG192( arg, hBsReader, &hHrtfBinary, headRotReader, externalOrientationFileReader, refRotReader, referenceVectorReader, &splitRendBits, hIvasDec, pcmBuf );
#endif
}
@@ -765,11 +682,7 @@ int main(
}
else
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
fprintf( stderr, "\nDecoding finished prematurely: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
-#else
- fprintf( stdout, "Decoding finished prematurely\n\n" );
-#endif
goto cleanup;
}
@@ -792,38 +705,17 @@ cleanup:
if ( arg.hrtfReaderEnabled )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
destroy_td_hrtf( hHrtfBinary.hHrtfTD );
destroy_hrtf_statistics( hHrtfBinary.hHrtfStatistics );
-#else
- IVAS_DEC_GetHrtfHandle( hIvasDec, &hHrtfTD );
- if ( hHrtfTD != NULL )
- {
- destroy_td_hrtf( hHrtfTD );
- }
- IVAS_DEC_GetHrtfCRendHandle( hIvasDec, &hSetOfHRTF );
- if ( hSetOfHRTF != NULL )
- {
- destroy_SetOfHRTF( hSetOfHRTF );
- }
- IVAS_DEC_GetHrtfStatisticsHandle( hIvasDec, &hHrtfStatistics );
- destroy_hrtf_statistics( hHrtfStatistics );
-#endif
}
#ifdef FIX_1990_SANITIZER_IN_REVERB_LOAD
// TODO:
/* This free differs from float version.
This is needed as HRTF statistics from ROM are currently converted from Word16 values to scaled Word32 values. */
-#ifdef FIX_CREND_SIMPLIFY_CODE
IVAS_DEC_HRTF_STATISTICS_HANDLE *hHrtfStatistics = NULL;
IVAS_DEC_GetHrtfStatisticsHandle( hIvasDec, &hHrtfStatistics );
destroy_hrtf_statistics( hHrtfStatistics );
-#else
- IVAS_DEC_GetHrtfStatisticsHandle( hIvasDec, &hHrtfStatistics );
- destroy_hrtf_statistics( hHrtfStatistics );
#endif
-#endif
-
IVAS_DEC_Close( &hIvasDec );
CustomLsReader_close( &hLsCustomReader );
hrtfFileReader_close( &hrtfReader );
@@ -832,6 +724,9 @@ cleanup:
RotationFileReader_close( &refRotReader );
Vector3PairFileReader_close( &referenceVectorReader );
RenderConfigReader_close( &renderConfigReader );
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ ObjectEditFileReader_close( &objectEditFileReader );
+#endif
if ( BS_Reader_Close( &hBsReader ) != IVAS_ERR_OK )
{
@@ -956,7 +851,11 @@ static bool parseCmdlIVAS_dec(
int16_t i;
char argv_to_upper[FILENAME_MAX];
- arg->output_Fs = 48000;
+ /*-----------------------------------------------------------------*
+ * Set default values
+ *-----------------------------------------------------------------*/
+
+ arg->output_Fs = IVAS_MAX_SAMPLING_RATE;
arg->outputConfig = IVAS_AUDIO_CONFIG_MONO;
arg->decMode = IVAS_DEC_MODE_IVAS;
arg->quietModeEnabled = false;
@@ -966,7 +865,7 @@ static bool parseCmdlIVAS_dec(
arg->enableHeadRotation = false;
arg->headrotTrajFileName = NULL;
- arg->orientation_tracking = ORIENT_TRK_NONE;
+ arg->orientation_tracking = IVAS_HEAD_ORIENT_TRK_NONE;
arg->enableReferenceRotation = false;
arg->headrotTrajFileName = NULL;
arg->enableReferenceVectorTracking = false;
@@ -1008,6 +907,10 @@ static bool parseCmdlIVAS_dec(
{
arg->directivityPatternId[i] = 65535;
}
+ arg->objEditEnabled = false;
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ arg->objEditFileName = NULL;
+#endif
/*-----------------------------------------------------------------*
* Initialization
@@ -1034,18 +937,30 @@ static bool parseCmdlIVAS_dec(
if ( strcmp( argv_to_upper, "-VOIP" ) == 0 )
{
+#ifdef LIB_DEC_REVISION
+ arg->voipMode = true;
+#else
arg->voipMode = 1;
+#endif
i++;
}
else if ( strcmp( argv_to_upper, "-VOIP_HF_ONLY=0" ) == 0 )
{
+#ifdef LIB_DEC_REVISION
+ arg->voipMode = true;
+#else
arg->voipMode = 1;
+#endif
arg->inputFormat = IVAS_DEC_INPUT_FORMAT_RTPDUMP;
i++;
}
else if ( strcmp( argv_to_upper, "-VOIP_HF_ONLY=1" ) == 0 )
{
+#ifdef LIB_DEC_REVISION
+ arg->voipMode = true;
+#else
arg->voipMode = 1;
+#endif
arg->inputFormat = IVAS_DEC_INPUT_FORMAT_RTPDUMP_HF;
i++;
}
@@ -1126,6 +1041,11 @@ static bool parseCmdlIVAS_dec(
{
if ( !is_digits_only( argv[i] ) )
{
+#ifdef LIB_DEC_REVISION
+ fprintf( stderr, "Error: Render frame size is invalid or not specified!\n\n" );
+ usage_dec();
+#endif
+
return false;
}
@@ -1160,23 +1080,23 @@ static bool parseCmdlIVAS_dec(
if ( strcmp( argv_to_upper, "NONE" ) == 0 )
{
- arg->orientation_tracking = ORIENT_TRK_NONE;
+ arg->orientation_tracking = IVAS_HEAD_ORIENT_TRK_NONE;
}
else if ( strcmp( argv_to_upper, "REF" ) == 0 )
{
- arg->orientation_tracking = ORIENT_TRK_REF;
+ arg->orientation_tracking = IVAS_HEAD_ORIENT_TRK_REF;
}
else if ( strcmp( argv_to_upper, "AVG" ) == 0 )
{
- arg->orientation_tracking = ORIENT_TRK_AVG;
+ arg->orientation_tracking = IVAS_HEAD_ORIENT_TRK_AVG;
}
else if ( strcmp( argv_to_upper, "REF_VEC" ) == 0 )
{
- arg->orientation_tracking = ORIENT_TRK_REF_VEC;
+ arg->orientation_tracking = IVAS_HEAD_ORIENT_TRK_REF_VEC;
}
else if ( strcmp( argv_to_upper, "REF_VEC_LEV" ) == 0 )
{
- arg->orientation_tracking = ORIENT_TRK_REF_VEC_LEV;
+ arg->orientation_tracking = IVAS_HEAD_ORIENT_TRK_REF_VEC_LEV;
}
else
{
@@ -1459,6 +1379,29 @@ static bool parseCmdlIVAS_dec(
i += tmp;
}
+ else if ( strcmp( argv_to_upper, "-OBJ_EDIT" ) == 0 )
+ {
+ arg->objEditEnabled = true;
+ i++;
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ if ( argc - i <= 3 || argv[i][0] == '-' )
+ {
+ fprintf( stderr, "Error: Object editing instruction filename not specified!\n\n" );
+ usage_dec();
+ return false;
+ }
+
+ if ( strcmp( argv[i], "NULL" ) == 0 || strcmp( argv[i], "null" ) == 0 )
+ {
+ arg->objEditFileName = NULL; /* use the built-in editing function */
+ }
+ else
+ {
+ arg->objEditFileName = argv[i]; /* read edit instructions from this file */
+ }
+ i++;
+#endif
+ }
/*-----------------------------------------------------------------*
* Option not recognized
@@ -1634,7 +1577,7 @@ static void usage_dec( void )
fprintf( stdout, " works only in combination with '-otr ref_vec' and 'ref_vec_lev' modes\n" );
fprintf( stdout, "-render_config File : Renderer configuration File\n" );
fprintf( stdout, "-om File : Metadata output File for BINAURAL_SPLIT_PCM OutputConf (only for Fs = 48 kHz)\n" );
- fprintf( stdout, "-non_diegetic_pan P : panning mono non-diegetic sound to stereo with paning P, -90<= P <=90,\n" );
+ fprintf( stdout, "-non_diegetic_pan P : panning mono non-diegetic sound to stereo with panning P, -90<= P <=90,\n" );
fprintf( stdout, " left or l or 90->left, right or r or -90->right, center or c or 0->middle\n" );
fprintf( stdout, "-exof File : External orientation File for external orientation trajectory\n" );
fprintf( stdout, "-dpid ID : Directivity pattern ID(s) = [ID1, ID2, ID3, ID4]. Space-separated list of up\n" );
@@ -1647,6 +1590,12 @@ static void usage_dec( void )
fprintf( stdout, " without braces and spaces, with ':' character separating ID from duration and ',' separating\n" );
fprintf( stdout, " ID and duration pairs, where duration is specified in frames\n" );
fprintf( stdout, " for BINAURAL_ROOM_REVERB output configuration.\n" );
+#ifndef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ fprintf( stdout, "-obj_edit : Enable objects editing\n" );
+#else
+ fprintf( stdout, "-obj_edit File : Object editing instructions file or NULL for built-in example\n" );
+#endif
+
fprintf( stdout, "-level level : Complexity level, level = (1, 2, 3), will be defined after characterisation. \n" );
fprintf( stdout, " Currently, all values default to level 3 (full functionality).\n" );
fprintf( stdout, "-q : Quiet mode, no frame counter\n" );
@@ -1719,6 +1668,7 @@ static ivas_error initOnFirstGoodFrame(
return error;
}
+#ifndef LIB_DEC_REVISION
int32_t pcmFrameSize;
if ( ( error = IVAS_DEC_GetPcmFrameSize( hIvasDec, &pcmFrameSize ) ) != IVAS_ERR_OK )
@@ -1726,7 +1676,7 @@ static ivas_error initOnFirstGoodFrame(
fprintf( stderr, "\nError in IVAS_DEC_GetPcmFrameSize, error code: %d\n", error );
return error;
}
-
+#endif
if ( isSplitRend )
{
/* Open split rendering metadata writer */
@@ -1784,10 +1734,18 @@ static ivas_error initOnFirstGoodFrame(
}
}
+#ifdef LIB_DEC_REVISION
+ int16_t pcmFrameSize;
+ if ( ( error = IVAS_DEC_GetOutputBufferSize( hIvasDec, &pcmFrameSize ) ) != IVAS_ERR_OK )
+ {
+ fprintf( stderr, "\nError in IVAS_DEC_GetOutputBufferSize, error code: %d\n", error );
+ return error;
+ }
+
+#endif
#ifdef CODE_IMPROVEMENTS
int16_t *zeroBuf = calloc( pcmFrameSize, sizeof( int16_t ) );
#else
- int16_t *zeroBuf = malloc( pcmFrameSize * sizeof( int16_t ) );
memset( zeroBuf, 0, pcmFrameSize * sizeof( int16_t ) );
#endif
@@ -1963,13 +1921,14 @@ static ivas_error initOnFirstGoodFrame(
static ivas_error decodeG192(
DecArguments arg,
BS_READER_HANDLE hBsReader,
-#ifdef FIX_CREND_SIMPLIFY_CODE
IVAS_DEC_HRTF_BINARY_WRAPPER *hHrtfBinary,
-#endif
RotFileReader *headRotReader,
RotFileReader *externalOrientationFileReader,
RotFileReader *refRotReader,
Vector3PairFileReader *referenceVectorReader,
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ ObjectEditFileReader *objectEditFileReader,
+#endif
ISAR_SPLIT_REND_BITS_DATA *splitRendBits,
IVAS_DEC_HANDLE hIvasDec,
int16_t *pcmBuf )
@@ -2002,6 +1961,19 @@ static ivas_error decodeG192(
IVAS_RENDER_CONFIG_DATA renderConfig;
RenderConfigReader *renderConfigReader = NULL;
+#ifdef VARIABLE_SPEED_DECODING
+#ifdef LIB_DEC_REVISION
+ if ( arg.tsmEnabled )
+ {
+ if ( ( error = IVAS_DEC_EnableTsm( hIvasDec ) ) != IVAS_ERR_OK )
+ {
+ fprintf( stderr, "\nError in IVAS_DEC_EnableTsm, code: %d\n", error );
+ return error;
+ }
+ }
+
+#endif
+#endif
if ( ( error = IVAS_DEC_is_split_rendering_enabled( hIvasDec, &isSplitRend ) ) != IVAS_ERR_OK )
{
fprintf( stderr, "\nError in IVAS_DEC_is_split_rendering_enabled, code: %d\n", error );
@@ -2247,7 +2219,6 @@ static ivas_error decodeG192(
goto cleanup;
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
/* Read main parameters from the bitstream to set-up the decoder */
hHrtfBinary->binaural_renderer_old = hHrtfBinary->binaural_renderer;
hHrtfBinary->binaural_renderer_sec_old = hHrtfBinary->binaural_renderer_sec;
@@ -2268,24 +2239,56 @@ static ivas_error decodeG192(
goto cleanup;
}
}
-#endif
-#ifdef FIX_HRTF_LOAD_API
/* decode transport channels, do TSM and feed to renderer */
if ( ( error = IVAS_DEC_GetSamplesDecoder( hIvasDec, isSplitRend, splitRendBits ) ) != IVAS_ERR_OK )
{
return error;
}
+ /* Object metadata editing */
+ if ( arg.objEditEnabled )
+ {
+ IVAS_EDITABLE_PARAMETERS editableParameters;
+
+ if ( ( error = IVAS_DEC_GetEditableParameters( hIvasDec, &editableParameters ) ) != IVAS_ERR_OK )
+ {
+ fprintf( stderr, "\nError: could not get the editable parameters: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
+ return error;
+ }
+
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ if ( arg.objEditFileName != NULL )
+ {
+ if ( ( error = ObjectEditFileReader_readNextFrame( objectEditFileReader ) ) != IVAS_ERR_OK )
+ {
+ fprintf( stderr, "\nError: could not read object editing instructions from file: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
+ return error;
+ }
+ }
#endif
-#ifdef OBJ_EDITING_API
+
+ /* Do object metadata editing here ... */
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ do_object_editing_fx( &editableParameters, objectEditFileReader );
+#else
+ do_object_editing_fx( &editableParameters );
+#endif
+
+ /* set new object parameters*/
+ if ( ( error = IVAS_DEC_SetEditableParameters( hIvasDec, editableParameters ) ) != IVAS_ERR_OK )
+ {
+ fprintf( stderr, "\nError: could not set the editable parameters: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
+ goto cleanup;
+ }
+ }
+
/* Do the final preparations needed for rendering */
if ( ( error = IVAS_DEC_PrepareRenderer( hIvasDec ) ) != IVAS_ERR_OK )
{
fprintf( stderr, "\nError: could not prepare the renderer: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
goto cleanup;
}
-#endif
}
if ( isSplitRend )
@@ -2301,9 +2304,13 @@ static ivas_error decodeG192(
}
else
{
+#ifdef LIB_DEC_REVISION
+ if ( ( error = IVAS_DEC_GetSamplesRenderer( hIvasDec, nSamplesToRender, ( pcmBuf + nOutChannels * nSamplesRendered ), &nSamplesRendered_loop, &needNewFrame ) ) != IVAS_ERR_OK )
+#else
if ( ( error = IVAS_DEC_GetSamples( hIvasDec, nSamplesToRender, ( pcmBuf + nOutChannels * nSamplesRendered ), &nSamplesRendered_loop, &needNewFrame ) ) != IVAS_ERR_OK )
+#endif
{
- fprintf( stderr, "\nError in IVAS_DEC_GetSamples: %s\n", IVAS_DEC_GetErrorMessage( error ) );
+ fprintf( stderr, "\nError in IVAS_DEC_GetSamplesRenderer(): %s\n", IVAS_DEC_GetErrorMessage( error ) );
goto cleanup;
}
nSamplesRendered += nSamplesRendered_loop;
@@ -2318,7 +2325,6 @@ static ivas_error decodeG192(
fprintf( stdout, "%-8d\b\b\b\b\b\b\b\b", frame );
}
}
-
} while ( nSamplesRendered < nOutSamples && error == IVAS_ERR_OK );
@@ -2341,6 +2347,9 @@ static ivas_error decodeG192(
{
if ( ( error = initOnFirstGoodFrame( hIvasDec, arg, numInitialBadFrames, &nOutSamples, &vec_pos_len, delayNumSamples_orig, &delayNumSamples, &delayTimeScale, &bsFormat, &afWriter, &masaWriter, ismWriters, &nOutChannels, &numObj, &splitRendWriter ) ) != IVAS_ERR_OK )
{
+#ifdef LIB_DEC_REVISION
+ fprintf( stderr, "Error in initOnFirstGoodFrame(): %s\n", IVAS_DEC_GetErrorMessage( error ) );
+#endif
goto cleanup;
}
}
@@ -2646,7 +2655,6 @@ static ivas_error decodeG192(
cleanup:
RenderConfigReader_close( &renderConfigReader );
-
split_rend_reader_writer_close( &splitRendWriter );
AudioFileWriter_close( &afWriter );
MasaFileWriter_close( &masaWriter );
@@ -2681,21 +2689,23 @@ static ivas_error writeJbmTraceFileFrameWrapper( const void *data, void *writer
static ivas_error decodeVoIP(
DecArguments arg,
BS_READER_HANDLE hBsReader,
-#ifdef FIX_CREND_SIMPLIFY_CODE
IVAS_DEC_HRTF_BINARY_WRAPPER *hHrtf,
-#endif
RotFileReader *headRotReader,
RotFileReader *externalOrientationFileReader,
RotFileReader *refRotReader,
Vector3PairFileReader *referenceVectorReader,
- IVAS_DEC_HANDLE hIvasDec )
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ ObjectEditFileReader *objectEditFileReader,
+#endif
+ IVAS_DEC_HANDLE hIvasDec,
+ int16_t *pcmBuf )
{
bool decodingFailed = true; /* Assume failure until cleanup is reached without errors */
ivas_error error = IVAS_ERR_OK;
uint32_t nextPacketRcvTime_ms = 0;
uint32_t systemTime_ms = 0;
- uint32_t systemTimeInc_ms = (uint32_t) JBM_FRONTEND_FETCH_FRAMESIZE_MS;
+ uint32_t systemTimeInc_ms = (uint32_t) ( 1000 / IVAS_NUM_FRAMES_PER_SEC );
int32_t nFramesFed = 0;
uint8_t au[( IVAS_MAX_BITS_PER_FRAME + 7 ) >> 3];
@@ -2709,7 +2719,6 @@ static ivas_error decodeVoIP(
MasaFileWriter *masaWriter = NULL;
uint16_t numObj = 0;
- int16_t pcmBuf[MAX_OUTPUT_PCM_BUFFER_SIZE];
AudioFileWriter *afWriter = NULL;
#ifdef SUPPORT_JBM_TRACEFILE
JbmTraceFileWriter *jbmTraceWriter = NULL;
@@ -2733,13 +2742,9 @@ static ivas_error decodeVoIP(
IVAS_VECTOR3 Pos[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES] = { { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 } };
int16_t vec_pos_update, vec_pos_len;
int16_t nOutSamples = 0;
-#ifdef FIX_CREND_SIMPLIFY_CODE
bool bitstreamReadDone = false;
-#ifdef OBJ_EDITING_API
bool parametersAvailableForEditing = false;
-#endif
uint16_t nSamplesRendered;
-#endif
vec_pos_update = 0;
if ( ( error = IVAS_DEC_GetRenderFramesizeMs( hIvasDec, &systemTimeInc_ms ) ) != IVAS_ERR_OK )
@@ -2857,9 +2862,7 @@ static ivas_error decodeVoIP(
while ( 1 )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
nSamplesRendered = 0;
-#endif
/* reference vector */
if ( arg.enableReferenceVectorTracking && vec_pos_update == 0 )
@@ -2972,6 +2975,21 @@ static ivas_error decodeVoIP(
}
}
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+#ifdef NONBE_FIX_1255_OBJ_EDIT_JBM
+ if ( arg.objEditEnabled && arg.objEditFileName != NULL && vec_pos_update == 0 )
+#else
+ if ( arg.objEditEnabled && ( arg.objEditFileName != NULL ) )
+#endif
+ {
+ if ( ( error = ObjectEditFileReader_readNextFrame( objectEditFileReader ) ) != IVAS_ERR_OK )
+ {
+ fprintf( stderr, "\nError: could not read object editing instructions from file: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
+ return error;
+ }
+ }
+#endif
+
/* read all packets with a receive time smaller than the system time */
while ( nextPacketRcvTime_ms <= systemTime_ms )
{
@@ -3023,37 +3041,18 @@ static ivas_error decodeVoIP(
/* decode and get samples */
-#ifdef FIX_HRTF_LOAD
while ( nSamplesRendered < nOutSamples )
{
-#endif
#ifdef SUPPORT_JBM_TRACEFILE
-#ifdef FIX_CREND_SIMPLIFY_CODE
-#ifdef OBJ_EDITING_API
- if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, (void *) pcmBuf, systemTime_ms, writeJbmTraceFileFrameWrapper, jbmTraceWriter, &bitstreamReadDone, &nSamplesRendered, ¶metersAvailableForEditing ) ) != IVAS_ERR_OK )
-#else
- if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, (void *) pcmBuf, systemTime_ms, writeJbmTraceFileFrameWrapper, jbmTraceWriter, &bitstreamReadDone, &nSamplesRendered ) ) != IVAS_ERR_OK )
-#endif
-#else
- if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, pcmBuf, systemTime_ms, writeJbmTraceFileFrameWrapper, jbmTraceWriter ) ) != IVAS_ERR_OK )
-#endif
-#else
-#ifdef FIX_CREND_SIMPLIFY_CODE
-#ifdef OBJ_EDITING_API
- if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, (void *) pcmBuf, systemTime_ms, &bitstreamReadDone, ¶metersAvailableForEditing ) ) != IVAS_ERR_OK )
-#else
- if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, (void *) pcmBuf, systemTime_ms, &bitstreamReadDone ) ) != IVAS_ERR_OK )
-#endif
+ if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, (void *) pcmBuf, writeJbmTraceFileFrameWrapper, jbmTraceWriter, &bitstreamReadDone, &nSamplesRendered, ¶metersAvailableForEditing, systemTime_ms ) ) != IVAS_ERR_OK )
#else
- if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, pcmBuf, systemTime_ms ) ) != IVAS_ERR_OK )
-#endif
+ if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, (void *) pcmBuf, &bitstreamReadDone, ¶metersAvailableForEditing, systemTime_ms ) ) != IVAS_ERR_OK )
#endif
{
fprintf( stderr, "\nError in IVAS_DEC_VoIP_GetSamples: %s\n", IVAS_DEC_GetErrorMessage( error ) );
goto cleanup;
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
if ( bitstreamReadDone == true )
{
/* Read main parameters from the bitstream to set-up the decoder */
@@ -3077,16 +3076,34 @@ static ivas_error decodeVoIP(
}
}
}
-#endif
-#ifdef OBJ_EDITING_API
- if ( parametersAvailableForEditing == true )
+
+ /* Object metadata editing */
+ if ( arg.objEditEnabled && parametersAvailableForEditing == true )
{
- /* do the object editing here */
- }
+ IVAS_EDITABLE_PARAMETERS editableParameters;
+
+ /* get object parameters */
+ if ( ( error = IVAS_DEC_GetEditableParameters( hIvasDec, &editableParameters ) ) != IVAS_ERR_OK )
+ {
+ fprintf( stderr, "\nError: could not get the editable parameters: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
+ return error;
+ }
+
+ /* Do object metadata editing here ... */
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ do_object_editing_fx( &editableParameters, objectEditFileReader );
+#else
+ do_object_editing_fx( &editableParameters );
#endif
-#ifdef FIX_HRTF_LOAD
+
+ /* set new object parameters */
+ if ( ( error = IVAS_DEC_SetEditableParameters( hIvasDec, editableParameters ) ) != IVAS_ERR_OK )
+ {
+ fprintf( stderr, "\nError: could not set the editable parameters: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
+ return error;
+ }
+ }
} /* while ( nSamplesRendered < nOutSamples ) */
-#endif
/* write JBM Offset file entry */
if ( jbmOffsetWriter != NULL )
@@ -3111,7 +3128,11 @@ static ivas_error decodeVoIP(
{
if ( ( error = IVAS_DEC_HasDecodedFirstGoodFrame( hIvasDec, &decodedGoodFrame ) ) != IVAS_ERR_OK )
{
+#ifdef LIB_DEC_REVISION
+ fprintf( stderr, "Error in IVAS_DEC_HasDecodedFirstGoodFrame(): %s\n", IVAS_DEC_GetErrorMessage( error ) );
+#else
fprintf( stderr, "Error in IVAS_DEC_HasDecodedFirstGoodFrame, code: %d\n", error );
+#endif
goto cleanup;
}
@@ -3205,6 +3226,9 @@ static ivas_error decodeVoIP(
}
}
+#ifdef NONBE_FIX_1255_OBJ_EDIT_JBM
+ vec_pos_update = ( vec_pos_update + 1 ) % vec_pos_len;
+#else
// frame++;
if ( !arg.quietModeEnabled )
{
@@ -3212,18 +3236,29 @@ static ivas_error decodeVoIP(
}
vec_pos_update = ( vec_pos_update + 1 ) % vec_pos_len;
frame++;
+#endif
if ( vec_pos_update == 0 )
{
systemTime_ms += vec_pos_len * systemTimeInc_ms;
}
+#ifdef NONBE_FIX_1255_OBJ_EDIT_JBM
+ if ( vec_pos_update == 0 )
+ {
+ frame++;
+ if ( !arg.quietModeEnabled )
+ {
+ fprintf( stdout, "%-8d\b\b\b\b\b\b\b\b", frame );
+ }
+ }
+#endif
+
#ifdef WMOPS
update_mem();
update_wmops();
#endif
}
-
int16_t nSamplesFlushed = 0;
/* decode and get samples */
@@ -3372,7 +3407,129 @@ cleanup:
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
+/*---------------------------------------------------------------------*
+ * do_object_editing_fx()
+ *
+ * Example function to edit objects parameters
+ *---------------------------------------------------------------------*/
+
+static void do_object_editing_fx(
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ IVAS_EDITABLE_PARAMETERS *editableParameters,
+ ObjectEditFileReader *objectEditFileReader )
+#else
+ IVAS_EDITABLE_PARAMETERS *editableParameters )
+#endif
+{
+ /* put the objects equally spaced at the horizontal plane */
+ /* and play a little bit with the gains... */
+ Word16 obj_idx, non_diegetic_obj_idx;
+ Word16 num_nondiegetic_objects;
+
+ num_nondiegetic_objects = 0;
+ for ( obj_idx = 0; obj_idx < editableParameters->num_obj; obj_idx++ )
+ {
+ if ( !editableParameters->ism_metadata[obj_idx].non_diegetic_flag )
+ {
+ num_nondiegetic_objects++;
+ }
+ }
+
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ if ( objectEditFileReader != NULL )
+ {
+ ReadObjectEditInfo *readInfo;
+ readInfo = objectEditFileReader->readInfo;
+
+ if ( readInfo->bg_gain_edited )
+ {
+ editableParameters->gain_bed_fx = (Word32) readInfo->bg_gain * 536870912; /* Q29 */
+ }
+
+ for ( obj_idx = 0; obj_idx < editableParameters->num_obj; obj_idx++ )
+ {
+ if ( !editableParameters->ism_metadata[obj_idx].non_diegetic_flag )
+ {
+ /* object direction editing only for diegetic objects */
+ if ( readInfo->obj_azi_edited[obj_idx] )
+ {
+ if ( readInfo->obj_azi_relative[obj_idx] )
+ {
+ /* azimuth: apply relative edit + wrap */
+ editableParameters->ism_metadata[obj_idx].azimuth_fx = ( ( editableParameters->ism_metadata[obj_idx].azimuth_fx + (Word32) readInfo->obj_azi[obj_idx] * 4194304 + 2264924160 ) % 1509949440 ) - 754974720; /* Q22 */
+ }
+ else
+ {
+ editableParameters->ism_metadata[obj_idx].azimuth_fx = (Word32) readInfo->obj_azi[obj_idx] * 4194304; /* Q22 */
+ }
+ }
+ if ( readInfo->obj_ele_edited[obj_idx] )
+ {
+ if ( readInfo->obj_ele_relative[obj_idx] )
+ {
+ /* elevation: apply relative edit + saturation */
+ editableParameters->ism_metadata[obj_idx].elevation_fx = L_max( L_min( editableParameters->ism_metadata[obj_idx].elevation_fx + (Word32) readInfo->obj_ele[obj_idx] * 4194304, 377487360 ), -377487360 ); /* Q22 */
+ }
+ else
+ {
+ editableParameters->ism_metadata[obj_idx].elevation_fx = (Word32) readInfo->obj_ele[obj_idx] * 4194304; /* Q22 */
+ }
+ }
+ }
+
+ /* gain editing for all objects */
+ if ( readInfo->obj_gain_edited[obj_idx] )
+ {
+ if ( readInfo->obj_gain_relative[obj_idx] )
+ {
+ /* gain: apply relative edit + saturation */
+#ifdef FIX_2140_OBJECT_EDITING_SANITIZER_ISSUES
+ editableParameters->ism_metadata[obj_idx].gain_fx = L_max( L_min( L_shl_sat( Mpy_32_32( editableParameters->ism_metadata[obj_idx].gain_fx, (Word32) readInfo->obj_gain[obj_idx] * 536870912 ), 2 ), OBJ_EDIT_GAIN_MAX_FX ), OBJ_EDIT_GAIN_MIN_FX ); /* Q29*Q29 -> Q27 shift back to Q29 */
+#else
+ editableParameters->ism_metadata[obj_idx].gain_fx = L_max( L_min( editableParameters->ism_metadata[obj_idx].gain_fx * (Word32) readInfo->obj_gain[obj_idx] * 536870912, OBJ_EDIT_GAIN_MAX_FX ), OBJ_EDIT_GAIN_MIN_FX ); /* Q29 */
+#endif
+ }
+ else
+ {
+ editableParameters->ism_metadata[obj_idx].gain_fx = (Word32) readInfo->obj_gain[obj_idx] * 536870912; /* Q29 */
+ }
+ }
+ }
+ }
+ else
+ {
+#endif
+ if ( num_nondiegetic_objects )
+ {
+ float start_angle, angle_inc;
+ angle_inc = 360.0f / (float) num_nondiegetic_objects;
+ start_angle = angle_inc / 2.0f;
+ for ( obj_idx = 0, non_diegetic_obj_idx = 0; obj_idx < editableParameters->num_obj; obj_idx++ )
+ {
+ if ( !editableParameters->ism_metadata[obj_idx].non_diegetic_flag )
+ {
+ editableParameters->ism_metadata[obj_idx].elevation_fx = 0;
+ editableParameters->ism_metadata[obj_idx].azimuth_fx = (Word32) ( ( start_angle + (float) non_diegetic_obj_idx * angle_inc ) * 4194304 /* Q22 */ );
+ non_diegetic_obj_idx++;
+ }
+ }
+ }
+
+ /* breakover object gains */
+ for ( obj_idx = 0; obj_idx < editableParameters->num_obj; obj_idx++ )
+ {
+ editableParameters->ism_metadata[obj_idx].gain_fx = (Word32) ( ( 0.5f + (float) ( ( frame + obj_idx * 50 ) % 250 ) / 250.0f ) * 536870912 /*Q29*/ );
+ }
+
+ editableParameters->gain_bed_fx = ( 1 << 28 ); // 0.5 in Q29
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ }
+#endif
+
+ return;
+}
+
+
/*---------------------------------------------------------------------*
* load_hrtf_from_file()
*
@@ -3545,5 +3702,5 @@ static ivas_error load_hrtf_from_file(
return IVAS_ERR_OK;
}
-#endif
+
#undef WMC_TOOL_SKIP
diff --git a/apps/encoder.c b/apps/encoder.c
index d0ad408f2f8a77c83875e217e1f7ca71d439c9d4..2a8ef469f6161aea9111c1ff0f7d3d02eec51214 100644
--- a/apps/encoder.c
+++ b/apps/encoder.c
@@ -163,7 +163,6 @@ typedef struct
* Local functions prototypes
*------------------------------------------------------------------------------------------*/
-static void initArgStruct( EncArguments *arg );
static bool parseCmdlIVAS_enc( int16_t argc, char *argv[], EncArguments *arg );
static void usage_enc( void );
static bool readBandwidth( FILE *file, IVAS_ENC_BANDWIDTH *bandwidth, int32_t *bandwidthFrameCounter );
@@ -208,8 +207,6 @@ int main(
reset_mem( USE_BYTES );
#endif
- initArgStruct( &arg );
-
/*------------------------------------------------------------------------------------------*
* Parse command-line arguments
*------------------------------------------------------------------------------------------*/
@@ -853,11 +850,26 @@ cleanup:
* Local functions
*-------------------------------------------------------------------*/
-#define IVAS_DEFAULT_AGC ( 0 )
+/*---------------------------------------------------------------------*
+ * parseCmdlIVAS_enc()
+ *
+ * Encoder command-line parsing
+ *---------------------------------------------------------------------*/
-static void initArgStruct( EncArguments *arg )
+static bool parseCmdlIVAS_enc(
+ int16_t argc,
+ char *argv[],
+ EncArguments *arg )
{
- /* Set default values here */
+ int16_t i, j;
+ char argv_to_upper[FILENAME_MAX];
+ char stmp[FILENAME_MAX];
+ int32_t tmp;
+
+ /*-----------------------------------------------------------------*
+ * Set default values
+ *-----------------------------------------------------------------*/
+
arg->inputWavFilename = NULL;
arg->outputBitstreamFilename = NULL;
arg->inputFs = 0;
@@ -887,25 +899,9 @@ static void initArgStruct( EncArguments *arg )
#endif
arg->pca = false;
- return;
-}
-
-
-/*---------------------------------------------------------------------*
- * parseCmdlIVAS_enc()
- *
- * Encoder command-line parsing
- *---------------------------------------------------------------------*/
-
-static bool parseCmdlIVAS_enc(
- int16_t argc,
- char *argv[],
- EncArguments *arg )
-{
- int16_t i, j;
- char argv_to_upper[FILENAME_MAX];
- char stmp[FILENAME_MAX];
- int32_t tmp;
+ /*-----------------------------------------------------------------*
+ * Initialization
+ *-----------------------------------------------------------------*/
if ( argc < 5 )
{
diff --git a/apps/isar_post_rend.c b/apps/isar_post_rend.c
index 8182bfdd3d16d9baab4c8cfce8ff32fc9a71c3af..53417cf1504d72631ac8ca3ef4848084ac538411 100644
--- a/apps/isar_post_rend.c
+++ b/apps/isar_post_rend.c
@@ -952,7 +952,7 @@ int main(
memset( outBuffer.data_fx, 0, outBuffer.config.numSamplesPerChannel * outBuffer.config.numChannels * sizeof( Word32 ) );
- bitsBufferSize = SPLIT_REND_BITS_BUFF_SIZE;
+ bitsBufferSize = ISAR_SPLIT_REND_BITS_BUFF_SIZE;
if ( bitsBufferSize > 0 )
{
diff --git a/apps/renderer.c b/apps/renderer.c
index c411720a536a0704ef5c2d44cfc4915c92b6efbb..3613064efc33009bf48c3f255aaa31a37053d55c 100644
--- a/apps/renderer.c
+++ b/apps/renderer.c
@@ -174,7 +174,7 @@ typedef struct
char externalOrientationFilePath[RENDERER_MAX_CLI_ARG_LENGTH];
char customHrtfFilePath[RENDERER_MAX_CLI_ARG_LENGTH];
char renderConfigFilePath[RENDERER_MAX_CLI_ARG_LENGTH];
- int8_t orientation_tracking;
+ IVAS_HEAD_ORIENT_TRK_T orientation_tracking;
int16_t Opt_Headrotation;
int16_t Opt_ExternalOrientation;
int16_t nonDiegeticPan;
@@ -715,11 +715,7 @@ static int16_t get_cldfb_in_flag(
int16_t cldfb_in_flag;
cldfb_in_flag = 0;
-#ifdef FIX_HRTF_LOAD
if ( renderConfig->split_rend_config.rendererSelection == IVAS_BIN_RENDERER_TYPE_FASTCONV )
-#else
- if ( renderConfig->split_rend_config.rendererSelection == ISAR_SPLIT_REND_RENDERER_SELECTION_FASTCONV )
-#endif
{
#ifdef DEBUGGING
cldfb_in_flag = 1;
@@ -770,11 +766,7 @@ int main(
SplitRendBFIFileReader *splitRendBFIReader = NULL;
Vector3PairFileReader *referenceVectorReader = NULL;
hrtfFileReader *hrtfFileReader = NULL;
-#ifdef FIX_CREND_SIMPLIFY_CODE
IVAS_DEC_HRTF_CREND_HANDLE *hHrtfCrend = NULL;
-#else
- IVAS_DEC_HRTF_CREND_HANDLE *hSetOfHRTF = NULL;
-#endif
IVAS_DEC_HRTF_FASTCONV_HANDLE *hHrtfFastConv = NULL;
IVAS_DEC_HRTF_PARAMBIN_HANDLE *hHrtfParambin = NULL;
IVAS_DEC_HRTF_TD_HANDLE *hHrtfTD = NULL;
@@ -1025,11 +1017,7 @@ int main(
goto cleanup;
}
-#ifdef FIX_989_TD_REND_ROM
if ( ( error = load_TDrend_HRTF_binary( *hHrtfTD, args.sampleRate, hrtfFileReader ) ) != IVAS_ERR_OK )
-#else
- if ( ( error = load_HRTF_binary( *hHrtfTD, hrtfFileReader ) ) != IVAS_ERR_OK )
-#endif
{
if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA )
{
@@ -1042,7 +1030,6 @@ int main(
}
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
if ( ( error = IVAS_REND_GetHrtfCRendHandle( hIvasRend, &hHrtfCrend ) ) != IVAS_ERR_OK )
{
fprintf( stderr, "\nIVAS_Rend_GetHrtfCRendHandle failed: %s\n\n", ivas_error_to_string( error ) );
@@ -1056,15 +1043,6 @@ int main(
}
if ( ( error = load_Crend_HRTF_from_binary( *hHrtfCrend, hrtfFileReader, args.outConfig.audioConfig, hrtf_set_audio_cfg, args.sampleRate ) ) != IVAS_ERR_OK )
-#else
- if ( ( error = IVAS_REND_GetHrtfCRendHandle( hIvasRend, &hSetOfHRTF ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nIVAS_Rend_GetHrtfCRendHandle failed: %s\n\n", ivas_error_to_string( error ) );
- goto cleanup;
- }
-
- if ( ( error = create_SetOfHRTF_from_binary( *hSetOfHRTF, hrtfFileReader, args.sampleRate ) ) != IVAS_ERR_OK )
-#endif
{
if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA )
{
@@ -1073,11 +1051,7 @@ int main(
}
else
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
destroy_crend_hrtf( hHrtfCrend );
-#else
- destroy_SetOfHRTF( hSetOfHRTF );
-#endif
}
}
@@ -1087,11 +1061,7 @@ int main(
goto cleanup;
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
if ( ( error = load_fastconv_HRTF_from_binary( *hHrtfFastConv, args.outConfig.audioConfig, args.inConfig.ambisonicsBuses->audioConfig, hrtfFileReader ) ) != IVAS_ERR_OK )
-#else
- if ( ( error = load_fastconv_HRTF_from_binary( *hHrtfFastConv, hrtfFileReader ) ) != IVAS_ERR_OK )
-#endif
{
if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA )
{
@@ -1631,7 +1601,7 @@ int main(
if ( is_split_pre_rend_mode( &args ) )
{
- bitsBufferSize = SPLIT_REND_BITS_BUFF_SIZE;
+ bitsBufferSize = ISAR_SPLIT_REND_BITS_BUFF_SIZE;
}
else
{
@@ -2203,18 +2173,7 @@ cleanup:
RotationFileReader_close( &externalOrientationFileReader );
RotationFileReader_close( &referenceRotReader );
Vector3PairFileReader_close( &referenceVectorReader );
-#ifdef FIX_CREND_SIMPLIFY_CODE
destroy_td_hrtf( hHrtfTD );
-#else
- if ( hSetOfHRTF != NULL && *hSetOfHRTF != NULL )
- {
- destroy_SetOfHRTF( hSetOfHRTF );
- }
- if ( hHrtfTD != NULL && *hHrtfTD != NULL )
- {
- destroy_td_hrtf( hHrtfTD );
- }
-#endif
destroy_hrtf_statistics( hHrtfStatistics );
IVAS_REND_Close( &hIvasRend );
IsmPositionProvider_close( positionProvider );
@@ -2472,7 +2431,7 @@ static bool parseRenderFramesize(
static bool parseOrientationTracking(
char *value,
- int8_t *orientation_tracking )
+ IVAS_HEAD_ORIENT_TRK_T *orientation_tracking )
{
to_upper( value );
@@ -2805,9 +2764,7 @@ static CmdlnArgs defaultArgs(
const char *executableName )
{
CmdlnArgs args;
-#ifdef FIX_CREND_SIMPLIFY_CODE
int16_t i;
-#endif
strncpy( args.executableName, executableName, RENDERER_MAX_CLI_ARG_LENGTH );
clearString( args.inputFilePath );
@@ -2824,16 +2781,12 @@ static CmdlnArgs defaultArgs(
args.outConfig.audioConfig = IVAS_AUDIO_CONFIG_INVALID;
args.outConfig.outSetupCustom.num_spk = 0;
args.outConfig.outSetupCustom.num_lfe = 0;
-#ifdef FIX_CREND_SIMPLIFY_CODE
for ( i = 0; i < RENDERER_MAX_SBA_INPUTS; ++i )
{
args.inConfig.ambisonicsBuses[i].audioConfig = IVAS_AUDIO_CONFIG_INVALID;
}
for ( i = 0; i < RENDERER_MAX_ISM_INPUTS + RENDERER_MAX_MASA_INPUTS; ++i )
-#else
- for ( int32_t i = 0; i < RENDERER_MAX_ISM_INPUTS; ++i )
-#endif
{
clearString( args.inMetadataFilePaths[i] );
}
@@ -2870,11 +2823,7 @@ static CmdlnArgs defaultArgs(
clearString( args.inLfePanningMatrixFile );
args.render_framesize = IVAS_RENDER_FRAMESIZE_20MS;
args.syncMdDelay = 0;
-#ifdef FIX_CREND_SIMPLIFY_CODE
for ( i = 0; i < RENDERER_MAX_ISM_INPUTS; ++i )
-#else
- for ( int32_t i = 0; i < RENDERER_MAX_ISM_INPUTS; ++i )
-#endif
{
args.directivityPatternId[i] = 65535;
}
@@ -3159,6 +3108,13 @@ void getMetadataFromFileReader(
fprintf( stderr, "\nError (%s) while reading ISM metadata from: %s\n\n", ivas_error_to_string( error ), IsmFileReader_getFilePath( ismReader ) );
exit( -1 );
}
+#ifdef FIX_2084_FLOATING_POINT_LEFTOVERS
+ objectMetadataBuffer->positions[objIdx].azimuth_fx = ismMetadata.azimuth_fx;
+ objectMetadataBuffer->positions[objIdx].elevation_fx = ismMetadata.elevation_fx;
+ objectMetadataBuffer->positions[objIdx].radius_fx = ismMetadata.radius_fx;
+ objectMetadataBuffer->positions[objIdx].yaw_fx = ismMetadata.yaw_fx;
+ objectMetadataBuffer->positions[objIdx].pitch_fx = ismMetadata.pitch_fx;
+#else
objectMetadataBuffer->positions[objIdx].azimuth_fx = (Word32) ( ismMetadata.azimuth * ( 1 << 22 ) );
objectMetadataBuffer->positions[objIdx].elevation_fx = (Word32) ( ismMetadata.elevation * ( 1 << 22 ) );
objectMetadataBuffer->positions[objIdx].radius_fx = (Word16) ( ismMetadata.radius * ( 1 << 9 ) );
@@ -3170,6 +3126,7 @@ void getMetadataFromFileReader(
objectMetadataBuffer->positions[objIdx].radius = ismMetadata.radius;
objectMetadataBuffer->positions[objIdx].yaw = ismMetadata.yaw;
objectMetadataBuffer->positions[objIdx].pitch = ismMetadata.pitch;
+#endif
objectMetadataBuffer->positions[objIdx].non_diegetic_flag = ismMetadata.non_diegetic_flag;
return;
@@ -3223,20 +3180,50 @@ static void IsmPositionProvider_getNextFrame(
/* Otherwise fall back to default position */
else
{
+#ifdef FIX_2084_FLOATING_POINT_LEFTOVERS
+ objectMetadataBuffer->positions[objIdx].azimuth_fx = 0;
+ objectMetadataBuffer->positions[objIdx].elevation_fx = 0;
+ objectMetadataBuffer->positions[objIdx].radius_fx = 512; // 1.f in Q9
+ objectMetadataBuffer->positions[objIdx].yaw_fx = 0;
+ objectMetadataBuffer->positions[objIdx].pitch_fx = 0;
+ objectMetadataBuffer->positions[objIdx].non_diegetic_flag = 0;
+#else
objectMetadataBuffer->positions[objIdx].azimuth = 0.0f;
objectMetadataBuffer->positions[objIdx].elevation = 0.0f;
objectMetadataBuffer->positions[objIdx].radius = 1.0f;
objectMetadataBuffer->positions[objIdx].yaw = 0.0f;
objectMetadataBuffer->positions[objIdx].pitch = 0.0f;
- objectMetadataBuffer->positions[objIdx].azimuth_fx = 0;
- objectMetadataBuffer->positions[objIdx].elevation_fx = 0;
- objectMetadataBuffer->positions[objIdx].radius_fx = 512;
- objectMetadataBuffer->positions[objIdx].yaw_fx = 0;
- objectMetadataBuffer->positions[objIdx].pitch_fx = 0;
objectMetadataBuffer->positions[objIdx].non_diegetic_flag = 0;
+#endif
}
/* Wrap azimuth to lie within (-180, 180] range */
+#ifdef FIX_2084_FLOATING_POINT_LEFTOVERS
+ while ( LT_32( objectMetadataBuffer->positions[objIdx].azimuth_fx, 0 ) )
+ {
+ objectMetadataBuffer->positions[objIdx].azimuth_fx = L_add( objectMetadataBuffer->positions[objIdx].azimuth_fx, DEG_360_IN_Q22 );
+ }
+ while ( GE_32( objectMetadataBuffer->positions[objIdx].azimuth_fx, DEG_360_IN_Q22 ) )
+ {
+ objectMetadataBuffer->positions[objIdx].azimuth_fx = L_sub( objectMetadataBuffer->positions[objIdx].azimuth_fx, DEG_360_IN_Q22 );
+ }
+
+ /* Clamp elevation to lie within [-90, 90] range (can't be wrapped easily) */
+ objectMetadataBuffer->positions[objIdx].elevation_fx = L_min( L_max( objectMetadataBuffer->positions[objIdx].elevation_fx, -DEG_90_IN_Q22 ), DEG_90_IN_Q22 );
+
+ /* Wrap yaw to lie within (-180, 180] range */
+ while ( LT_32( objectMetadataBuffer->positions[objIdx].yaw_fx, 0 ) )
+ {
+ objectMetadataBuffer->positions[objIdx].yaw_fx = L_add( objectMetadataBuffer->positions[objIdx].yaw_fx, DEG_360_IN_Q22 );
+ }
+ while ( GE_32( objectMetadataBuffer->positions[objIdx].yaw_fx, DEG_360_IN_Q22 ) )
+ {
+ objectMetadataBuffer->positions[objIdx].yaw_fx = L_sub( objectMetadataBuffer->positions[objIdx].yaw_fx, DEG_360_IN_Q22 );
+ }
+
+ /* Clamp pitch to lie within [-90, 90] range (can't be wrapped easily) */
+ objectMetadataBuffer->positions[objIdx].pitch_fx = L_min( L_max( objectMetadataBuffer->positions[objIdx].pitch_fx, -DEG_90_IN_Q22 ), DEG_90_IN_Q22 );
+#else
while ( objectMetadataBuffer->positions[objIdx].azimuth < 0.0f )
{
objectMetadataBuffer->positions[objIdx].azimuth += 360.0f;
@@ -3264,6 +3251,7 @@ static void IsmPositionProvider_getNextFrame(
objectMetadataBuffer->positions[objIdx].pitch = min( max( objectMetadataBuffer->positions[objIdx].pitch, -90 ), 90 );
objectMetadataBuffer->positions[objIdx].yaw_fx = (Word32) ( ( objectMetadataBuffer->positions[objIdx].yaw ) * ( 1 << Q22 ) );
objectMetadataBuffer->positions[objIdx].pitch_fx = (Word32) ( ( objectMetadataBuffer->positions[objIdx].pitch ) * ( 1 << Q22 ) );
+#endif
}
++positionProvider->frameCounter;
@@ -3568,6 +3556,14 @@ static void parseObjectPosition(
exit( -1 );
}
+#ifdef FIX_2084_FLOATING_POINT_LEFTOVERS
+ position->azimuth_fx = (Word32) ( meta_prm[0] * ( 1 << Q22 ) ); /* Q22 */
+ position->elevation_fx = (Word32) ( meta_prm[1] * ( 1 << Q22 ) ); /* Q22 */
+ position->radius_fx = (Word16) ( meta_prm[2] * ( 1 << Q9 ) ); /* Q9 */
+ position->yaw_fx = (Word32) ( meta_prm[5] * ( 1 << Q22 ) ); /* Q22 */
+ position->pitch_fx = (Word32) ( meta_prm[6] * ( 1 << Q22 ) ); /* Q22 */
+ position->non_diegetic_flag = (Word16) meta_prm[7];
+#else
position->azimuth = meta_prm[0];
position->elevation = meta_prm[1];
position->azimuth_fx = (Word32) ( meta_prm[0] * ( 1 << 22 ) );
@@ -3576,6 +3572,7 @@ static void parseObjectPosition(
position->yaw = meta_prm[5];
position->pitch = meta_prm[6];
position->non_diegetic_flag = (int16_t) meta_prm[7];
+#endif
return;
}
diff --git a/lib_com/arith_coder_fx.c b/lib_com/arith_coder_fx.c
index 55d7a3ec545c9e624da69913fcdb7cb382b42e7a..09e2b7f4f8bece9a488773de92a3d1912b751a3d 100644
--- a/lib_com/arith_coder_fx.c
+++ b/lib_com/arith_coder_fx.c
@@ -194,13 +194,6 @@ void tcx_arith_scale_envelope(
Word16 statesi, bits;
Word32 mean, a, s, L_tmp;
Word16 mean_e, tmp, tmp2;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
lob_bits = 0;
move16();
@@ -225,12 +218,8 @@ void tcx_arith_scale_envelope(
tmp = norm_l( env[k] );
tmp2 = sub( 15, tmp );
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp = Inv16( round_fx_sat( L_shl( env[k], tmp ) ), &tmp2 ); /* exp(tmp2) */
-#else
- tmp = Inv16( round_fx_o( L_shl_o( env[k], tmp, &Overflow ), &Overflow ), &tmp2 ); /* exp(tmp2) */
-#endif
- ienv[k] = L_shl( L_deposit_h( tmp ), sub( tmp2, 15 ) ); /* Q16 */
+ ienv[k] = L_shl( L_deposit_h( tmp ), sub( tmp2, 15 ) ); /* Q16 */
move32();
mean = L_add( mean, ienv[k] ); /* Q16 */
}
@@ -262,11 +251,7 @@ void tcx_arith_scale_envelope(
b_e = add( b_e, mean_e );
/* scale = (-b + (float)sqrt(b*b - 4.0f*a*0.035f)) / (2.0f * a); */
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp = round_fx_sat( BASOP_Util_Add_Mant32Exp( L_mult( b, b ), shl( b_e, 1 ), Mpy_32_16_1( a, -4588 /*-4.0f*0.035f Q15*/ ), a_e, &tmp2 ) );
-#else
- tmp = round_fx_o( BASOP_Util_Add_Mant32Exp( L_mult( b, b ), shl( b_e, 1 ), Mpy_32_16_1( a, -4588 /*-4.0f*0.035f Q15*/ ), a_e, &tmp2 ), &Overflow );
-#endif
IF( tmp <= 0 )
{
@@ -281,11 +266,7 @@ void tcx_arith_scale_envelope(
tmp2 = BASOP_Util_Add_MantExp( negate( b ), b_e, tmp, tmp2, &scale ); /* exp(scale) */
scale = BASOP_Util_Divide1616_Scale( scale, round_fx( a ), &tmp );
-#ifdef ISSUE_1836_replace_overflow_libcom
scale = shl_sat( scale, sub( sub( add( tmp, tmp2 ), a_e ), 1 ) ); /* Q15 */
-#else
- scale = shl_o( scale, sub( sub( add( tmp, tmp2 ), a_e ), 1 ), &Overflow ); /* Q15 */
-#endif
/* iscale = 1.0f / scale; */
iscale_e = 0;
@@ -334,11 +315,7 @@ void tcx_arith_scale_envelope(
L_tmp = L_add( L_tmp, L_shl( Mpy_32_16_1( env[k], mult_r( 1147 /*0.035f Q15*/, iscale ) ), iscale_e ) ); /* Q16 */
tmp = norm_l( L_tmp );
-#ifdef ISSUE_1836_replace_overflow_libcom
statesi = mult_r( statesi, round_fx_sat( L_shl( L_tmp, tmp ) ) );
-#else
- statesi = mult_r( statesi, round_fx_o( L_shl_o( L_tmp, tmp, &Overflow ), &Overflow ) );
-#endif
bits = add( bits, sub( 15, tmp ) );
tmp = norm_s( statesi );
@@ -425,11 +402,7 @@ void tcx_arith_scale_envelope(
*s_env_e = sub( add( 15, iscale_e ), tmp );
move16();
BASOP_SATURATE_WARNING_OFF_EVS;
-#ifdef ISSUE_1836_replace_overflow_libcom
a = L_shl_sat( 1265000, sub( 15, *s_env_e ) );
-#else
- a = L_shl_o( 1265000, sub( 15, *s_env_e ), &Overflow );
-#endif
BASOP_SATURATE_WARNING_ON_EVS;
FOR( k = 0; k < L_frame; k++ )
diff --git a/lib_com/basop_util.c b/lib_com/basop_util.c
index fe2b7e871a0ebe2aca06094cb879427b4593ef71..37619f4c1ff2a467c26414eea3a13394a1f4c11b 100644
--- a/lib_com/basop_util.c
+++ b/lib_com/basop_util.c
@@ -267,12 +267,6 @@ void BASOP_Util_Divide_MantExp( Word16 a_m, /*!< Mantissa of dividend a
Word16 preShift, postShift;
Word16 m;
Word32 m32;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
-
assert( b_m != 0 );
@@ -305,11 +299,7 @@ void BASOP_Util_Divide_MantExp( Word16 a_m, /*!< Mantissa of dividend a
/* normalize result */
postShift = norm_l( m32 );
-#ifdef ISSUE_1836_replace_overflow_libcom
m = round_fx_sat( L_shl( m32, postShift ) );
-#else
- m = round_fx_o( L_shl( m32, postShift ), &Overflow );
-#endif
/* exponent */
*ptrResult_e = sub( add( add( a_e, sub( 1, b_e ) ), preShift ), postShift );
@@ -325,10 +315,6 @@ static Word16 Sqrt16_common( Word16 m,
Word16 e )
{
Word16 index, frac;
-#ifndef ISSUE_1836_replace_overflow_libcom
- Flag Overflow;
-#endif
-
assert( ( m >= 0x4000 ) || ( m == 0 ) );
@@ -342,13 +328,7 @@ static Word16 Sqrt16_common( Word16 m,
/* interpolate */
if ( m != 0 )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
m = mac_r_sat( SqrtTable[index], SqrtDiffTable[index], frac );
-#else
- BASOP_SATURATE_WARNING_OFF_EVS;
- m = mac_ro( SqrtTable[index], SqrtDiffTable[index], frac, &Overflow );
- BASOP_SATURATE_WARNING_ON_EVS;
-#endif
}
/* handle odd exponents */
@@ -364,19 +344,10 @@ static Word32 Sqrt32_common( Word32 m,
Word16 e )
{
Word16 m16, index, frac;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
assert( ( m >= 0x40000000 ) || ( m == 0 ) );
-#ifdef ISSUE_1836_replace_overflow_libcom
m16 = round_fx_sat( m );
-#else
- m16 = round_fx_o( m, &Overflow );
-#endif
/* get table index (upper 6 bits minus 32) */
/* index = (m16 >> 9) - 32; */
@@ -432,23 +403,9 @@ static Word32 ISqrt32_common( Word32 m,
Word16 e )
{
Word16 m16, index, frac;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
assert( m >= 0x40000000 );
-#ifdef ISSUE_1836_replace_overflow_libcom
m16 = round_fx_sat( m );
-#else
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- m16 = round_fx_o( m, &Overflow );
-#else
- m16 = round_fx( m );
-#endif
-#endif
-
/* get table index (upper 6 bits minus 32) */
/* index = (m16 >> 25) - 32; */
@@ -915,12 +872,6 @@ Word16 divide3232( Word32 L_num, Word32 L_denom )
{
Word16 z;
Word32 sign;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
-
sign = L_and( L_xor( L_num, L_denom ), (Word32) 0x80000000 );
@@ -933,17 +884,12 @@ Word16 divide3232( Word32 L_num, Word32 L_denom )
L_denom = L_shl( L_denom, z );
/* round_fx instead of extract_h improves spectral distortion in E_UTIL_lev_dur (schur version). */
-#ifdef ISSUE_1836_replace_overflow_libcom
z = div_l( L_num, round_fx_sat( L_denom ) );
-#else
- z = div_l( L_num, round_fx_o( L_denom, &Overflow ) );
-#endif
if ( 0 != sign )
{
z = negate( z );
}
-
return z;
}
@@ -2072,66 +2018,6 @@ Word16 idiv1616_1( Word16 x, Word16 y )
}
}
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
-Word32 norm_llQ31( /* o : normalized result Q31 */
- Word32 L_c, /* i : upper bits of accu Q-1 */
- Word32 L_sum, /* i : lower bits of accu, unsigned Q31 */
- Word16 *exp /* o : exponent of result in [-32,31] Q0 */
-)
-{
-#ifdef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- move32(); /* compensate missing instrumentation */
- move32(); /* compensate missing instrumentation */
- return w_norm_llQ31( ( (Word64) L_c << 32 ) | (UWord32) L_sum, exp );
-#else
- Word16 i;
- Word32 L_tmp;
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
-#ifndef ISSUE_1836_replace_overflow_libcom
- Flag Overflow = 0;
-#endif
- Flag Carry = 0;
-#endif /* BASOP_NOGLOB */
-
- /* Move MSBit of L_sum into L_c */
-#ifdef ISSUE_1836_replace_overflow_libcom
- Carry = 0;
- L_tmp = L_add_c( L_sum, L_sum, &Carry ); /* L_tmp = L_sum << 1 */
- L_c = L_add_c( L_c, L_c, &Carry );
-#else
- L_tmp = L_add_co( L_sum, L_sum, &Carry, &Overflow ); /* L_tmp = L_sum << 1 */
- L_c = L_add_co( L_c, L_c, &Carry, &Overflow );
-#endif
- L_add( 0, 0 );
- test();
- IF( ( L_c != (Word32) 0L ) && ( L_c != (Word32) 0xFFFFFFFFL ) )
- {
- i = norm_l( L_c );
- L_c = L_shl( L_c, i );
- i = sub( 31, i ); /* positive exponent */
- L_sum = L_lshr( L_tmp, 1 ); /* L_sum with MSBit=0 */
- L_sum = L_lshr( L_sum, i );
- L_sum = L_add( L_c, L_sum );
- }
- ELSE
- {
- i = -32;
- move16(); /* default exponent, if total sum=0 */
- IF( L_sum )
- {
- i = norm_l( L_sum );
- L_sum = L_shl( L_sum, i );
- i = negate( i ); /* negative or zero exponent */
- }
- }
- *exp = i;
- move16();
- return L_sum;
-#endif /* #ifdef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW */
-}
-#endif /* #ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW */
-
-
Word32 Dot_product16HQ( /* o : normalized result Q31 */
const Word32 L_off, /* i : initial sum value Qn */
const Word16 x[], /* i : x vector Qn */
diff --git a/lib_com/bitalloc_fx.c b/lib_com/bitalloc_fx.c
index 2b630cf214185b387d08ef0c830e15e5b5c643db..4d9c587994ed297a34d8b739e1658dca1805e154 100644
--- a/lib_com/bitalloc_fx.c
+++ b/lib_com/bitalloc_fx.c
@@ -23,12 +23,6 @@ void bitalloc_fx(
Word16 diff, temp;
Word16 fac;
Word16 ii;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
Word16 SFM_thr = SFM_G1G2;
move16();
@@ -56,11 +50,7 @@ void bitalloc_fx(
move16();
FOR( m = 1; m < im; m++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
v = sub_sat( temp, y[m] ); /* Q0 */
-#else
- v = sub_o( temp, y[m], &Overflow ); /* Q0 */
-#endif
temp = s_max( temp, y[m] );
if ( v < 0 )
{
@@ -230,13 +220,12 @@ void bitalloc_fx(
*-------------------------------------------------------------------*/
Word16 BitAllocF_fx(
- Word16 *y, /* i : norm of sub-vectors :Q0 */
- Word32 bit_rate, /* i : bitrate :Q0 */
- Word16 B, /* i : number of available bits :Q0 */
- Word16 N, /* i : number of sub-vectors :Q0 */
- Word16 *R, /* o : bit-allocation indicator :Q0 */
- Word16 *Rsubband_fx /* o : sub-band bit-allocation vector :Q3 */
- ,
+ Word16 *y, /* i : norm of sub-vectors :Q0 */
+ Word32 bit_rate, /* i : bitrate :Q0 */
+ Word16 B, /* i : number of available bits :Q0 */
+ Word16 N, /* i : number of sub-vectors :Q0 */
+ Word16 *R, /* o : bit-allocation indicator :Q0 */
+ Word16 *Rsubband_fx, /* o : sub-band bit-allocation vector :Q3 */
const Word16 hqswb_clas, /* i : hq swb class :Q0 */
const Word16 num_env_bands /* i : Number sub bands to be encoded for HF GNERIC :Q0 */
)
@@ -251,12 +240,6 @@ Word16 BitAllocF_fx(
Word16 tmp, exp1, exp2;
Word32 Rsubband_w32_fx[NB_SFM]; /* Q15 */
Word16 B_w16_fx;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
set32_fx( Rsubband_w32_fx, 0, NB_SFM );
@@ -450,11 +433,7 @@ Word16 BitAllocF_fx(
exp1 = sub( norm_l( L_tmp2 ), 1 );
exp2 = norm_s( n );
tmp = div_s( extract_h( L_shl( L_tmp2, exp1 ) ), shl( n, exp2 ) ); /*15 + 15 + exp1 - 16 - exp2*/
-#ifdef ISSUE_1836_replace_overflow_libcom
- m_fx = shl_sat( tmp, sub( exp2, exp1 ) ); /*Q14*/
-#else
- m_fx = shl_o( tmp, sub( exp2, exp1 ), &Overflow ); /*Q14*/
-#endif
+ m_fx = shl_sat( tmp, sub( exp2, exp1 ) ); /*Q14*/
if ( L_tmp1 < 0 )
{
m_fx = negate( m_fx );
diff --git a/lib_com/cldfb_evs_fx.c b/lib_com/cldfb_evs_fx.c
index 153f95cf99aeabd50ca6eec2eaab3d0e39e30d8b..368ce7923e560606c84f1fb665c82d573abab039 100644
--- a/lib_com/cldfb_evs_fx.c
+++ b/lib_com/cldfb_evs_fx.c
@@ -1240,12 +1240,6 @@ void GetEnergyCldfb( Word32 *energyLookahead, /*!< o: Q(*sf_energyLookahead)
Word32 energyValues[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX];
Word16 energyValuesSumE[CLDFB_NO_CHANNELS_MAX];
// Word16 freqTable[2] = {20, 40};
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
FOR( k = 0; k < numberCols; k++ )
{
@@ -1331,11 +1325,7 @@ void GetEnergyCldfb( Word32 *energyLookahead, /*!< o: Q(*sf_energyLookahead)
{
FOR( j = 20; j < numberBandsM; j++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
nrg = L_add_sat( nrg, L_shr_sat( energyValues[k][j], s ) );
-#else
- nrg = L_add_o( nrg, L_shr_o( energyValues[k][j], s, &Overflow ), &Overflow );
-#endif
}
}
@@ -1358,11 +1348,7 @@ void GetEnergyCldfb( Word32 *energyLookahead, /*!< o: Q(*sf_energyLookahead)
{
FOR( j = 20; j < numberBandsM; j++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
nrg = L_add_sat( nrg, L_shr_sat( energyValues[k][j], s ) );
-#else
- nrg = L_add_o( nrg, L_shr_o( energyValues[k][j], s, &Overflow ), &Overflow );
-#endif
}
}
diff --git a/lib_com/cldfb_fx.c b/lib_com/cldfb_fx.c
index 8c3331a3115886baed6f1c7dea632cac932eeb1a..2ef540fe398c4983a22694bd310117c13c5b4319 100644
--- a/lib_com/cldfb_fx.c
+++ b/lib_com/cldfb_fx.c
@@ -558,14 +558,11 @@ void cldfbAnalysis_ts_fx(
}
void cldfbAnalysis_ts_fx_var_q(
- const Word32 *timeIn_fx,
- /* i : time buffer */ // q
- Word32 realBuffer_fx[CLDFB_NO_CHANNELS_MAX],
- /* o : real value buffer */ // q_cldfb - 5
- Word32 imagBuffer_fx[CLDFB_NO_CHANNELS_MAX],
- /* o : imag value buffer */ // q_cldfb - 5
- const Word16 samplesToProcess, /* i : samples to process */
- HANDLE_CLDFB_FILTER_BANK h_cldfb, /* i : filterbank state */
+ const Word32 *timeIn_fx, /* i : time buffer q */
+ Word32 realBuffer_fx[CLDFB_NO_CHANNELS_MAX], /* o : real value buffer q_cldfb - 5 */
+ Word32 imagBuffer_fx[CLDFB_NO_CHANNELS_MAX], /* o : imag value buffer q_cldfb - 5 */
+ const Word16 samplesToProcess, /* i : samples to process */
+ HANDLE_CLDFB_FILTER_BANK h_cldfb, /* i : filterbank state */
Word16 *q_cldfb )
{
@@ -819,14 +816,11 @@ void cldfbAnalysis_ts_fx_var_q(
void cldfbAnalysis_ts_fx_fixed_q(
- const Word32 *timeIn_fx,
- /* i : time buffer */ // q
- Word32 realBuffer_fx[CLDFB_NO_CHANNELS_MAX],
- /* o : real value buffer */ // q - 5
- Word32 imagBuffer_fx[CLDFB_NO_CHANNELS_MAX],
- /* o : imag value buffer */ // q - 5
- const Word16 samplesToProcess, /* i : samples to process */
- HANDLE_CLDFB_FILTER_BANK h_cldfb, /* i : filterbank state */
+ const Word32 *timeIn_fx, /* i : time buffer q */
+ Word32 realBuffer_fx[CLDFB_NO_CHANNELS_MAX], /* o : real value buffer q - 5 */
+ Word32 imagBuffer_fx[CLDFB_NO_CHANNELS_MAX], /* o : imag value buffer q - 5 */
+ const Word16 samplesToProcess, /* i : samples to process */
+ HANDLE_CLDFB_FILTER_BANK h_cldfb, /* i : filterbank state */
Word16 *q_cldfb )
{
Word16 i, k;
@@ -1088,13 +1082,13 @@ void cldfbAnalysis_ts_fx_fixed_q(
* Conduct inverse multple overlap cmplex low delay MDCT
*--------------------------------------------------------------------*/
void cldfbSynthesis_ivas_fx(
- Word32 **realBuffer_fx, /* i : real values Qx*/
- Word32 **imagBuffer_fx, /* i : imag values Qx*/
- Word32 *timeOut_fx, /* o : output time domain samples Qx - 1*/
- const Word16 samplesToProcess, /* i : number of processed samples */
- const Word16 shift, /* i : scale for state buffer */
- const Word16 out_shift, /* i : scale for output buffer */
- HANDLE_CLDFB_FILTER_BANK h_cldfb /* i : filter bank state */
+ Word32 **realBuffer_fx, /* i : real values Qx*/
+ Word32 **imagBuffer_fx, /* i : imag values Qx*/
+ Word32 *timeOut_fx, /* o : output time domain samples Qx - 1*/
+ const Word16 samplesToProcess, /* i : number of processed samples */
+ const Word16 shift, /* i : scale for state buffer */
+ const Word16 out_shift, /* i : scale for output buffer */
+ HANDLE_CLDFB_FILTER_BANK h_cldfb /* i : filter bank state */
)
{
Word16 i;
@@ -1499,12 +1493,6 @@ static void GetEnergyCldfb_ivas_fx( Word32 *energyLookahead, /*!< o: Q(*sf_e
Word32 energyValues[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX];
Word16 energyValuesSumE[CLDFB_NO_CHANNELS_MAX];
// Word16 freqTable[2] = {20, 40};
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
FOR( k = 0; k < numberCols; k++ )
{
@@ -1590,11 +1578,7 @@ static void GetEnergyCldfb_ivas_fx( Word32 *energyLookahead, /*!< o: Q(*sf_e
{
FOR( j = 20; j < numberBandsM; j++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
nrg = L_add_sat( nrg, L_shr_sat( energyValues[k][j], s ) );
-#else
- nrg = L_add_o( nrg, L_shr_o( energyValues[k][j], s, &Overflow ), &Overflow );
-#endif
}
}
@@ -1617,11 +1601,7 @@ static void GetEnergyCldfb_ivas_fx( Word32 *energyLookahead, /*!< o: Q(*sf_e
{
FOR( j = 20; j < numberBandsM; j++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
nrg = L_add_sat( nrg, L_shr_sat( energyValues[k][j], s ) );
-#else
- nrg = L_add_o( nrg, L_shr_o( energyValues[k][j], s, &Overflow ), &Overflow );
-#endif
}
}
diff --git a/lib_com/cng_exc_fx.c b/lib_com/cng_exc_fx.c
index 56701bf6162428e0d1ca71b9c2664eebf78217c3..f23ef505c946ff2e687a3c0243b48488754f0e7e 100644
--- a/lib_com/cng_exc_fx.c
+++ b/lib_com/cng_exc_fx.c
@@ -621,12 +621,6 @@ void cng_params_postupd_fx(
Word16 CNG_mode;
Word16 ptr;
Word32 last_active_brate;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
ptr = add( sub( ho_circ_ptr, *cng_buf_cnt ), 1 );
IF( ptr < 0 )
@@ -652,16 +646,10 @@ void cng_params_postupd_fx(
FOR( i = 0; i < NUM_ENV_CNG; i++ )
{
/* sp[i] = 2.0f*(*ptR * *ptR + *ptI * *ptI)/L_FFT; */
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_mult_sat( *ptR, *ptR ); /* 2*Q_exc+1 */
L_tmp = L_add_sat( L_tmp, L_mult_sat( *ptI, *ptI ) ); /* 2*Q_exc+1 */
L_tmp = L_add_sat( L_tmp, L_tmp ); /* 2*Q_exc+1 */
-#else
- L_tmp = L_mult_o( *ptR, *ptR, &Overflow ); /* 2*Q_exc+1 */
- L_tmp = L_add_o( L_tmp, L_mult_o( *ptI, *ptI, &Overflow ), &Overflow ); /* 2*Q_exc+1 */
- L_tmp = L_add_o( L_tmp, L_tmp, &Overflow ); /* 2*Q_exc+1 */
-#endif
- L_tmp = Mult_32_16( L_tmp, 128 ); /* 2*Q_exc+1 */
+ L_tmp = Mult_32_16( L_tmp, 128 ); /* 2*Q_exc+1 */
tmp = add( add( Q_exc, Q_exc ), 1 );
sp[i] = L_shr( L_tmp, sub( tmp, 6 ) );
move32(); /* Q6 */
@@ -739,12 +727,6 @@ void cng_params_postupd_ivas_fx(
Word16 CNG_mode;
Word16 ptr;
Word32 last_active_brate;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
ptr = add( sub( ho_circ_ptr, *cng_buf_cnt ), 1 );
IF( ptr < 0 )
@@ -770,16 +752,10 @@ void cng_params_postupd_ivas_fx(
FOR( i = 0; i < NUM_ENV_CNG; i++ )
{
/* sp[i] = 2.0f*(*ptR * *ptR + *ptI * *ptI)/L_FFT; */
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_mult_sat( *ptR, *ptR ); /* 2*Q_exc+1 */
L_tmp = L_add_sat( L_tmp, L_mult_sat( *ptI, *ptI ) ); /* 2*Q_exc+1 */
L_tmp = L_add_sat( L_tmp, L_tmp ); /* 2*Q_exc+1 */
-#else
- L_tmp = L_mult_o( *ptR, *ptR, &Overflow ); /* 2*Q_exc+1 */
- L_tmp = L_add_o( L_tmp, L_mult_o( *ptI, *ptI, &Overflow ), &Overflow ); /* 2*Q_exc+1 */
- L_tmp = L_add_o( L_tmp, L_tmp, &Overflow ); /* 2*Q_exc+1 */
-#endif
- L_tmp = Mult_32_16( L_tmp, 128 ); /* 2*Q_exc+1 */
+ L_tmp = Mult_32_16( L_tmp, 128 ); /* 2*Q_exc+1 */
tmp = add( add( Q_exc, Q_exc ), 1 );
// To do : Saturation to be re-validated.
sp[i] = L_shr_sat( L_tmp, sub( tmp, 6 ) );
@@ -883,13 +859,6 @@ void cng_params_upd_fx(
Word16 tmp;
Word16 temp_lo_fx, temp_hi_fx;
Word16 exp_pow;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
/* update the pointer to circular buffer of old LSP vectors */
*ho_circ_ptr = add( *ho_circ_ptr, 1 );
@@ -926,15 +895,9 @@ void cng_params_upd_fx(
L_tmp = L_mult0( tmpv, tmpv ); /* 2*(Q_exc+scale) */
pt_exc2++;
tmpv = shl( *pt_exc2, scale );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_mac0_sat( L_tmp, tmpv, tmpv );
pt_exc2++;
L_ener = L_add_sat( L_ener, L_shr_sat( L_tmp, 7 ) ); /* Q(2*(Q_exc+scale)+1) ,division by L_frame done here */
-#else
- L_tmp = L_mac0_o( L_tmp, tmpv, tmpv, &Overflow );
- pt_exc2++;
- L_ener = L_add_o( L_ener, L_shr_o( L_tmp, 7, &Overflow ), &Overflow ); /* Q(2*(Q_exc+scale)+1) ,division by L_frame done here */
-#endif
}
}
ELSE /* L_FRAME16k */
@@ -945,22 +908,12 @@ void cng_params_upd_fx(
L_tmp = L_mult0( tmpv, tmpv ); /* 2*(Q_exc+scale) */
pt_exc2++;
tmpv = shl( *pt_exc2, scale );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_mac0_sat( L_tmp, tmpv, tmpv );
pt_exc2++;
L_ener = L_add_sat( L_ener, L_shr_sat( Mult_32_16( L_tmp, 26214 /* 256/320, Q15 */ ), 7 ) ); /* Q(2*(Q_exc+scale)+15+1-16+1) ,division by L_frame done here */
-#else
- L_tmp = L_mac0_o( L_tmp, tmpv, tmpv, &Overflow );
- pt_exc2++;
- L_ener = L_add_o( L_ener, L_shr_o( Mult_32_16( L_tmp, 26214 /* 256/320, Q15 */ ), 7, &Overflow ), &Overflow ); /* Q(2*(Q_exc+scale)+15+1-16+1) ,division by L_frame done here */
-#endif
}
}
-#ifdef ISSUE_1836_replace_overflow_libcom
L_ener = L_shr_sat( L_ener, sub( shl( add( Q_exc, scale ), 1 ), 5 ) ); /* Q6 (2*(Q_exc+scale)+1-2*(Q_exc+scale)+5) */
-#else
- L_ener = L_shr_o( L_ener, sub( shl( add( Q_exc, scale ), 1 ), 5 ), &Overflow ); /* Q6 (2*(Q_exc+scale)+1-2*(Q_exc+scale)+5) */
-#endif
/* update the circular buffer of old energies */
ho_ener_circ[*ho_circ_ptr] = L_ener;
@@ -994,16 +947,10 @@ void cng_params_upd_fx(
FOR( i = 0; i < NUM_ENV_CNG; i++ )
{
/* sp[i] = 2.0f*(*ptR * *ptR + *ptI * *ptI)/L_FFT; */
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_mult_sat( *ptR, *ptR ); /* 2*Q_exc+1 */
L_tmp = L_add_sat( L_tmp, L_mult_sat( *ptI, *ptI ) ); /* 2*Q_exc+1 */
L_tmp = L_add_sat( L_tmp, L_tmp ); /* 2*Q_exc+1 */
-#else
- L_tmp = L_mult_o( *ptR, *ptR, &Overflow ); /* 2*Q_exc+1 */
- L_tmp = L_add_o( L_tmp, L_mult_o( *ptI, *ptI, &Overflow ), &Overflow ); /* 2*Q_exc+1 */
- L_tmp = L_add_o( L_tmp, L_tmp, &Overflow ); /* 2*Q_exc+1 */
-#endif
- L_tmp = Mult_32_16( L_tmp, 128 ); /* 2*Q_exc+1 */
+ L_tmp = Mult_32_16( L_tmp, 128 ); /* 2*Q_exc+1 */
tmp = add( add( Q_exc, Q_exc ), 1 );
sp[i] = L_shr( L_tmp, sub( tmp, 6 ) );
move32(); /* Q6 */
@@ -1052,24 +999,23 @@ void cng_params_upd_fx(
}
void cng_params_upd_ivas_fx(
- const Word16 lsp_new[], /* i : LSP aprameters Q15 */
- const Word16 exc2[], /* i : current enhanced excitation Q_exc */
- const Word16 L_frame, /* i : frame length Q0 */
- Word16 *ho_circ_ptr, /* i/o: pointer for CNG averaging buffers Q0 */
- Word32 ho_ener_circ[], /* o : energy buffer for CNG averaging Q6 */
- Word16 *ho_circ_size, /* i/o: size of DTX hangover history buffer for averaging Q0 */
- Word16 ho_lsp_circ[], /* o : old LSP buffer for CNG averaging Q15 */
- const Word16 Q_exc, /* i : Q value of excitation */
- const Word16 enc_dec_flag, /* i : Flag indicating encoder or decoder (ENC,DEC) */
- Word32 ho_env_circ[], /* i/o: Envelope buffer Q(6+shift) */
- Word16 *cng_buf_cnt, /* i/o: Counter of postponed FFT-processing instances */
- Word16 cng_exc2_buf[], /* i/o: Excitation buffer Q_exc */
- Word16 cng_Qexc_buf[], /* i/o: Q_exc buffer Q0 */
- Word32 cng_brate_buf[], /* i/o: last_active_brate buffer Q0 */
- const Word32 last_active_brate /* i : Last active bit rate Q0 */
- ,
- const Word16 element_mode, /* i : Element mode */
- const Word16 bwidth /* i : Audio bandwidth */
+ const Word16 lsp_new[], /* i : LSP aprameters Q15 */
+ const Word16 exc2[], /* i : current enhanced excitation Q_exc */
+ const Word16 L_frame, /* i : frame length Q0 */
+ Word16 *ho_circ_ptr, /* i/o: pointer for CNG averaging buffers Q0 */
+ Word32 ho_ener_circ[], /* o : energy buffer for CNG averaging Q6 */
+ Word16 *ho_circ_size, /* i/o: size of DTX hangover history buffer for averaging Q0 */
+ Word16 ho_lsp_circ[], /* o : old LSP buffer for CNG averaging Q15 */
+ const Word16 Q_exc, /* i : Q value of excitation */
+ const Word16 enc_dec_flag, /* i : Flag indicating encoder or decoder (ENC,DEC) */
+ Word32 ho_env_circ[], /* i/o: Envelope buffer Q(6+shift) */
+ Word16 *cng_buf_cnt, /* i/o: Counter of postponed FFT-processing instances */
+ Word16 cng_exc2_buf[], /* i/o: Excitation buffer Q_exc */
+ Word16 cng_Qexc_buf[], /* i/o: Q_exc buffer Q0 */
+ Word32 cng_brate_buf[], /* i/o: last_active_brate buffer Q0 */
+ const Word32 last_active_brate, /* i : Last active bit rate Q0 */
+ const Word16 element_mode, /* i : Element mode */
+ const Word16 bwidth /* i : Audio bandwidth */
)
{
Word32 L_ener, L_tmp;
@@ -1086,12 +1032,6 @@ void cng_params_upd_ivas_fx(
move16();
Word16 temp_lo_fx, temp_hi_fx;
Word16 exp_pow;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* update the pointer to circular buffer of old LSP vectors */
*ho_circ_ptr = add( *ho_circ_ptr, 1 );
@@ -1128,15 +1068,9 @@ void cng_params_upd_ivas_fx(
L_tmp = L_mult0( tmpv, tmpv ); /* 2*(Q_exc+scale) */
pt_exc2++;
tmpv = shl( *pt_exc2, scale );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_mac0_sat( L_tmp, tmpv, tmpv );
pt_exc2++;
L_ener = L_add_sat( L_ener, L_shr_sat( L_tmp, 7 ) ); /* Q(2*(Q_exc+scale)+1) ,division by L_frame done here */
-#else
- L_tmp = L_mac0_o( L_tmp, tmpv, tmpv, &Overflow );
- pt_exc2++;
- L_ener = L_add_o( L_ener, L_shr_o( L_tmp, 7, &Overflow ), &Overflow ); /* Q(2*(Q_exc+scale)+1) ,division by L_frame done here */
-#endif
}
}
ELSE /* L_FRAME16k */
@@ -1147,22 +1081,12 @@ void cng_params_upd_ivas_fx(
L_tmp = L_mult0( tmpv, tmpv ); /* 2*(Q_exc+scale) */
pt_exc2++;
tmpv = shl( *pt_exc2, scale );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_mac0_sat( L_tmp, tmpv, tmpv );
pt_exc2++;
L_ener = L_add_sat( L_ener, L_shr_sat( Mult_32_16( L_tmp, 26214 /* 256/320, Q15 */ ), 7 ) ); /* Q(2*(Q_exc+scale)+15+1-16+1) ,division by L_frame done here */
-#else
- L_tmp = L_mac0_o( L_tmp, tmpv, tmpv, &Overflow );
- pt_exc2++;
- L_ener = L_add_o( L_ener, L_shr_o( Mult_32_16( L_tmp, 26214 /* 256/320, Q15 */ ), 7, &Overflow ), &Overflow ); /* Q(2*(Q_exc+scale)+15+1-16+1) ,division by L_frame done here */
-#endif
}
}
-#ifdef ISSUE_1836_replace_overflow_libcom
L_ener = L_shr_sat( L_ener, sub( shl( add( Q_exc, scale ), 1 ), 5 ) ); /* Q6 (2*(Q_exc+scale)+1-2*(Q_exc+scale)+5) */
-#else
- L_ener = L_shr_o( L_ener, sub( shl( add( Q_exc, scale ), 1 ), 5 ), &Overflow ); /* Q6 (2*(Q_exc+scale)+1-2*(Q_exc+scale)+5) */
-#endif
/* update the circular buffer of old energies */
ho_ener_circ[*ho_circ_ptr] = L_ener;
@@ -1196,21 +1120,12 @@ void cng_params_upd_ivas_fx(
FOR( i = 0; i < NUM_ENV_CNG; i++ )
{
/* sp[i] = 2.0f*(*ptR * *ptR + *ptI * *ptI)/L_FFT; */
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_mult_sat( *ptR, *ptR ); /* 2*Q_exc+1 */
L_tmp = L_add_sat( L_tmp, L_mult_sat( *ptI, *ptI ) ); /* 2*Q_exc+1 */
L_tmp = L_add_sat( L_tmp, L_tmp ); /* 2*Q_exc+1 */
L_tmp = Mult_32_16( L_tmp, 128 ); /* 2*Q_exc+1 */
tmp = add( add( Q_exc, Q_exc ), 1 );
sp[i] = L_shr_sat( L_tmp, sub( tmp, 6 ) );
-#else
- L_tmp = L_mult_o( *ptR, *ptR, &Overflow ); /* 2*Q_exc+1 */
- L_tmp = L_add_o( L_tmp, L_mult_o( *ptI, *ptI, &Overflow ), &Overflow ); /* 2*Q_exc+1 */
- L_tmp = L_add_o( L_tmp, L_tmp, &Overflow ); /* 2*Q_exc+1 */
- L_tmp = Mult_32_16( L_tmp, 128 ); /* 2*Q_exc+1 */
- tmp = add( add( Q_exc, Q_exc ), 1 );
- sp[i] = L_shr_o( L_tmp, sub( tmp, 6 ), &Overflow );
-#endif
move32(); /* Q6 */
ptR++;
ptI--;
diff --git a/lib_com/cnst.h b/lib_com/cnst.h
index 4157d878f42522b2978d23b942c2d46a4c2420c1..cf1a7820f868b97acce348b592673e7f564030e8 100644
--- a/lib_com/cnst.h
+++ b/lib_com/cnst.h
@@ -800,10 +800,6 @@ enum
#define CLDFB_NO_COL_MAX_SWITCH_BFI 10 /* CLDFB resampling - max number of CLDFB col. for switching, BFI */
#define CLDFB_OVRLP_MIN_SLOTS 3 /* CLDFB resampling - minimize processing to minimum required for transition frame ACELP->TCX/HQ */
-#ifndef FIX_2085_FLOATING_POINT_LEFTOVERS
-#define INV_CLDFB_BANDWIDTH ( 1.f / 800.f )
-#endif
-
#define INV_CLDFB_BANDWIDTH_Q31 ( 2684355l ) /* ( 1.f / 800.f ) Q31 */
#define INV_CLDFB_BANDWIDTH_MDFT_FAC_Q31 ( 10737418 )
#define CLDFB_BANDWIDTH 800
diff --git a/lib_com/codec_tcx_common_fx.c b/lib_com/codec_tcx_common_fx.c
index 010590ad176ff7f53348a5bd3a763d4b0d9fc55b..515a1a43e75cd9389f7348cce804990c1d427fcf 100644
--- a/lib_com/codec_tcx_common_fx.c
+++ b/lib_com/codec_tcx_common_fx.c
@@ -61,12 +61,6 @@ void tcxFormantEnhancement(
Word16 i, j, k, l, n;
Word16 fac, fac0, fac1, fac_e, d, tmp;
Word16 xn_buf_e, xn_one, m, e;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
k = shr( L_frame, 6 ); /* FDNS_NPTS = 64 */
l = 0;
@@ -141,11 +135,7 @@ void tcxFormantEnhancement(
{
fac = add( fac0, mult( d, extract_l( L_mult0( j, inv_int[n] ) ) ) );
BASOP_SATURATE_WARNING_OFF_EVS;
-#ifdef ISSUE_1836_replace_overflow_libcom
xn_buf[l + j] = s_min( xn_one, shl_sat( mult( xn_buf[l + j], fac ), fac_e ) );
-#else
- xn_buf[l + j] = s_min( xn_one, shl_o( mult( xn_buf[l + j], fac ), fac_e, &Overflow ) );
-#endif
move16();
BASOP_SATURATE_WARNING_ON_EVS;
}
@@ -233,12 +223,6 @@ void tcxFormantEnhancement_with_shift(
Word16 i, j, k, l, n;
Word16 fac, fac0, fac1, fac_e, d, tmp;
Word16 xn_buf_e, xn_one, m, e;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
k = shr( L_frame, 6 ); /* FDNS_NPTS = 64 */
l = 0;
@@ -317,11 +301,7 @@ void tcxFormantEnhancement_with_shift(
{
fac = add( fac0, mult( d, extract_l( L_mult0( j, inv_int[n] ) ) ) );
BASOP_SATURATE_WARNING_OFF_EVS;
-#ifdef ISSUE_1836_replace_overflow_libcom
xn_buf[l + j] = s_min( xn_one, shl_sat( mult( xn_buf[l + j], fac ), fac_e ) );
-#else
- xn_buf[l + j] = s_min( xn_one, shl_o( mult( xn_buf[l + j], fac ), fac_e, &Overflow ) );
-#endif
move16();
BASOP_SATURATE_WARNING_ON_EVS;
}
@@ -366,11 +346,7 @@ void tcxFormantEnhancement_with_shift(
{
fac = add( fac0, mult( d, extract_l( L_mult0( j, inv_int[n] ) ) ) );
BASOP_SATURATE_WARNING_OFF_EVS;
-#ifdef ISSUE_1836_replace_overflow_libcom
xn_buf[l + j] = s_min( xn_one, shl_sat( mult( xn_buf[l + j], fac ), fac_e ) );
-#else
- xn_buf[l + j] = s_min( xn_one, shl_o( mult( xn_buf[l + j], fac ), fac_e, &Overflow ) );
-#endif
move16();
BASOP_SATURATE_WARNING_ON_EVS;
}
diff --git a/lib_com/common_api_types.h b/lib_com/common_api_types.h
index d8ccd49d97dadd7c535501dd5871fafb91757f07..76b3fb6d44e7a58e6d827bcff28ce337fb0b9df6 100644
--- a/lib_com/common_api_types.h
+++ b/lib_com/common_api_types.h
@@ -46,24 +46,28 @@
* Common API constants
*----------------------------------------------------------------------------------*/
-#define IVAS_NUM_FRAMES_PER_SEC 50
-#define IVAS_MAX_FRAME_SIZE ( 48000 / IVAS_NUM_FRAMES_PER_SEC )
-#define IVAS_MAX_BITS_PER_FRAME ( 512000 / IVAS_NUM_FRAMES_PER_SEC )
+#define IVAS_NUM_FRAMES_PER_SEC 50 /* number of frames per second */
+#define IVAS_MAX_SAMPLING_RATE 48000 /* maximum supported sampling rate in Hz */
+#define IVAS_MAX_FRAME_SIZE ( IVAS_MAX_SAMPLING_RATE / IVAS_NUM_FRAMES_PER_SEC ) /* maximum frame buffer length (per channel) in samples */
+#define IVAS_MAX_BITS_PER_FRAME ( 512000 / IVAS_NUM_FRAMES_PER_SEC ) /* maximum bits per frame; corresponds to maximum bitrate of 512 kbps */
#define IVAS_MAX_NUM_OBJECTS 4
#define IVAS_MAX_INPUT_CHANNELS 16
-#define IVAS_MAX_OUTPUT_CHANNELS 16
+#define IVAS_MAX_OUTPUT_CHANNELS 16 /* Note: there is an exception for OSBA and EXT otuput where it can be 20 (HOA3 + 4 ISM channels) */
#define IVAS_CLDFB_NO_COL_MAX 16
#define IVAS_CLDFB_NO_CHANNELS_MAX 60
+/* Renderer constants */
#define IVAS_MAX_PARAM_SPATIAL_SUBFRAMES 4
#define IVAS_ROOM_ABS_COEFF 6
+#define IVAS_REVERB_PREDELAY_MAX 20 /* Max input delay for reverb module */
+#define IVAS_ER_LIST_HEIGHT 1.6f
+#define IVAS_ER_LIST_HEIGHT_FX 6710886 /* 1.6f in Q.22 */
-/* Maximum buffer length (per channel) in samples */
-#define MAX_BUFFER_LENGTH_PER_CHANNEL ( L_FRAME48k )
+/* JBM constants for adaptive-playout */
+#define IVAS_TIME_SCALE_MIN 50 /* min. time-scaling [%] */
+#define IVAS_TIME_SCALE_MAX 150 /* max. time-scaling [%] */
-/* Frame size required when rendering to binaural */
-#define BINAURAL_RENDERING_FRAME_SIZE_MS 5
/*----------------------------------------------------------------------------------*
* Common API enum for output audio configurations
@@ -126,9 +130,10 @@ typedef struct _IVAS_ISM_METADATA
Word32 elevation_fx; /* Q22 */
Word16 radius_fx; /* Q9 */
Word32 spread_fx; /* Q22 */
- Word32 gainFactor_fx; /* Q31 */
+ Word32 gainFactor_fx; /* Q29 */
Word32 yaw_fx; /* Q22 */
Word32 pitch_fx; /* Q22 */
+#ifndef FIX_2084_FLOATING_POINT_LEFTOVERS
float azimuth;
float elevation;
float radius;
@@ -136,21 +141,19 @@ typedef struct _IVAS_ISM_METADATA
float gainFactor;
float yaw;
float pitch;
- Word16 non_diegetic_flag;
-#ifdef OBJ_EDITING_API
- Word32 gain_fx;
#endif
+ Word16 non_diegetic_flag;
+ Word32 gain_fx; /* Q29 */
} IVAS_ISM_METADATA;
-#ifdef OBJ_EDITING_API
typedef struct _IVAS_EDITABLE_PARAMETERS
{
Word16 num_obj;
IVAS_ISM_METADATA ism_metadata[IVAS_MAX_NUM_OBJECTS];
- Word32 gain_bed_fx;
+ Word32 gain_bed_fx; /* Q29 */
+
} IVAS_EDITABLE_PARAMETERS;
-#endif
typedef struct
{
@@ -190,20 +193,12 @@ typedef enum
typedef struct ivas_masa_metadata_frame_struct *IVAS_MASA_METADATA_HANDLE;
typedef struct ivas_masa_decoder_ext_out_meta_struct *IVAS_MASA_DECODER_EXT_OUT_META_HANDLE;
-#ifdef FIX_CREND_SIMPLIFY_CODE
typedef struct ivas_hrtf_TDREND_HRFILT_FiltSet_struct *IVAS_DEC_HRTF_TD_HANDLE;
typedef struct ivas_hrtf_crend_structure *IVAS_DEC_HRTF_CREND_HANDLE;
typedef struct ivas_hrtf_fastconv_struct *IVAS_DEC_HRTF_FASTCONV_HANDLE;
typedef struct ivas_hrtf_parambin_struct *IVAS_DEC_HRTF_PARAMBIN_HANDLE;
typedef struct ivas_hrtf_statistics_struct *IVAS_DEC_HRTF_STATISTICS_HANDLE;
-#else
-typedef struct TDREND_HRFILT_FiltSet_struct *IVAS_DEC_HRTF_TD_HANDLE;
-typedef struct ivas_hrtfs_crend_structure *IVAS_DEC_HRTF_CREND_HANDLE;
-typedef struct ivas_hrtfs_fastconv_struct *IVAS_DEC_HRTF_FASTCONV_HANDLE;
-typedef struct ivas_hrtfs_parambin_struct *IVAS_DEC_HRTF_PARAMBIN_HANDLE;
-typedef struct ivas_hrtfs_statistics_struct *IVAS_DEC_HRTF_STATISTICS_HANDLE;
-#endif
-typedef struct cldfb_filter_bank_struct *IVAS_CLDFB_FILTER_BANK_HANDLE;
+typedef struct ivas_cldfb_filter_bank_struct *IVAS_CLDFB_FILTER_BANK_HANDLE;
typedef struct ivas_LS_setup_custom *IVAS_LSSETUP_CUSTOM_HANDLE;
typedef struct ivas_LS_setup_custom IVAS_LSSETUP_CUSTOM_STRUCT;
@@ -236,7 +231,6 @@ typedef struct _IVAS_JBM_TRACE_DATA
} IVAS_JBM_TRACE_DATA;
-#ifdef FIX_CREND_SIMPLIFY_CODE
typedef enum _ivas_binaural_renderer_type
{
IVAS_BIN_RENDERER_TYPE_NONE,
@@ -247,16 +241,15 @@ typedef enum _ivas_binaural_renderer_type
IVAS_BIN_RENDERER_TYPE_DEFAULT,
} IVAS_BIN_RENDERER_TYPE;
-#endif
/*----------------------------------------------------------------------------------*
* Split rendering API constants, structures, and enums
*----------------------------------------------------------------------------------*/
#define ISAR_MAX_SPLIT_REND_BITRATE 768000
-#define ISAR_MAX_SPLIT_REND_BITS_BUFFER_SIZE_IN_BYTES ( ( ( (int32_t) ISAR_MAX_SPLIT_REND_BITRATE / IVAS_NUM_FRAMES_PER_SEC ) + 7 ) >> 3 )
+#define ISAR_MAX_SPLIT_REND_BITS_BUFFER_SIZE_IN_BYTES ( ( ( (Word32) ISAR_MAX_SPLIT_REND_BITRATE / IVAS_NUM_FRAMES_PER_SEC ) + 7 ) >> 3 )
#define ISAR_SPLIT_REND_ADDITIONAL_BYTES_TO_READ 1
-#define SPLIT_REND_BITS_BUFF_SIZE ( ISAR_MAX_SPLIT_REND_BITS_BUFFER_SIZE_IN_BYTES + ISAR_SPLIT_REND_ADDITIONAL_BYTES_TO_READ )
+#define ISAR_SPLIT_REND_BITS_BUFF_SIZE ( ISAR_MAX_SPLIT_REND_BITS_BUFFER_SIZE_IN_BYTES + ISAR_SPLIT_REND_ADDITIONAL_BYTES_TO_READ )
typedef enum
{
@@ -286,56 +279,42 @@ typedef enum
} ISAR_SPLIT_REND_CODEC;
-#ifndef FIX_HRTF_LOAD
-typedef enum
-{
- ISAR_SPLIT_REND_RENDERER_SELECTION_CREND,
- ISAR_SPLIT_REND_RENDERER_SELECTION_FASTCONV,
- ISAR_SPLIT_REND_RENDERER_SELECTION_PARAMBIN,
- ISAR_SPLIT_REND_RENDERER_SELECTION_TDREND,
- ISAR_SPLIT_REND_RENDERER_SELECTION_DEFAULT,
-
-} ISAR_SPLIT_REND_RENDERER_SELECTION;
-#endif
typedef struct _ISAR_SPLIT_REND_BITS_DATA
{
- uint8_t *bits_buf;
- int32_t buf_len; /*size of bits_buf in bytes. This field should be set by allocator of bits_buf*/
- int32_t bits_written;
- int32_t bits_read;
- int16_t codec_frame_size_ms;
+ UWord8 *bits_buf;
+ Word32 buf_len; /*size of bits_buf in bytes. This field should be set by allocator of bits_buf*/
+ Word32 bits_written;
+ Word32 bits_read;
+ Word16 codec_frame_size_ms;
ISAR_SPLIT_REND_CODEC codec;
ISAR_SPLIT_REND_POSE_CORRECTION_MODE pose_correction;
- int16_t isar_frame_size_ms;
- int16_t lc3plus_highres;
+ Word16 isar_frame_size_ms;
+ Word16 lc3plus_highres;
} ISAR_SPLIT_REND_BITS_DATA, *ISAR_SPLIT_REND_BITS_HANDLE;
typedef struct _ISAR_SPLIT_REND_CONFIG
{
- int32_t splitRendBitRate; /*Bit rate for split rendering mode, if "pcm_out" is set then "splitRendBitRate" is used as a limit for MD bitrate */
- int16_t hq_mode; /*High quality 3DOF mode with additional side information. Requires more pre-renditions. */
- int16_t dof; /*flag to specify if pose correction is needed for 1, 2 or 3 degree of freedoms*/
- /*The axis can be set dynamically per frame based on a file input */
- /*possible values:
+ Word32 splitRendBitRate; /*Bit rate for split rendering mode, if "pcm_out" is set then "splitRendBitRate" is used as a limit for MD bitrate */
+ Word16 hq_mode; /*High quality 3DOF mode with additional side information. Requires more pre-renditions. */
+ Word16 dof; /*flag to specify if pose correction is needed for 1, 2 or 3 degree of freedoms*/
+ /*The axis can be set dynamically per frame based on a file input */
+ /*possible values:
1 - (1dof correction. By default YAW correction)
2 - (2dof correction. By default YAW and PITCH correction)
3 - (3dof correction. By default YAW, PITCH and ROLL correction)
*/
- int16_t codec_delay_ms; /* look ahead delay of the codec that is used to code BIN signal output of pre-renderer*/
- int16_t isar_frame_size_ms; /* ISAR bit stream frame size in milliseconds */
- int16_t codec_frame_size_ms; /* Codec frame size in milliseconds, only relevant with LC3plus */
+ Word16 codec_delay_ms; /* look ahead delay of the codec that is used to code BIN signal output of pre-renderer*/
+ Word16 isar_frame_size_ms; /* ISAR bit stream frame size in milliseconds */
+ Word16 codec_frame_size_ms; /* Codec frame size in milliseconds, only relevant with LC3plus */
ISAR_SPLIT_REND_POSE_CORRECTION_MODE poseCorrectionMode;
ISAR_SPLIT_REND_CODEC codec;
-#ifdef FIX_HRTF_LOAD
IVAS_BIN_RENDERER_TYPE rendererSelection;
-#else
- ISAR_SPLIT_REND_RENDERER_SELECTION rendererSelection;
-#endif
- int16_t lc3plus_highres;
+ Word16 lc3plus_highres;
} ISAR_SPLIT_REND_CONFIG_DATA, *ISAR_SPLIT_REND_CONFIG_HANDLE;
+
/*----------------------------------------------------------------------------------*
* Renderer API structures and enums
*----------------------------------------------------------------------------------*/
@@ -380,13 +359,14 @@ typedef struct _IVAS_RENDER_CONFIG
Word16 directivity_fx[IVAS_MAX_NUM_OBJECTS * 3]; // has the following q-factor pattern: {6, 6, 15, 6, 6, 15, 6, 6, 15, 6, 6, 15}
float distAtt[3];
Word32 distAtt_fx[3]; /* {Q27, Q30, Q30} */
+
} IVAS_RENDER_CONFIG_DATA, *IVAS_RENDER_CONFIG_HANDLE;
typedef struct
{
- int16_t numSamplesPerChannel;
- int16_t numChannels;
- int16_t is_cldfb;
+ Word16 numSamplesPerChannel;
+ Word16 numChannels;
+ Word16 is_cldfb;
} IVAS_REND_AudioBufferConfig;
@@ -396,7 +376,6 @@ typedef struct
Word16 q_factor;
Word16 *pq_fact;
Word32 *data_fx;
- // Word16 Q_data;
} IVAS_REND_AudioBuffer;
diff --git a/lib_com/deemph_fx.c b/lib_com/deemph_fx.c
index 230dcec6ac10c3f1ad33f030c3ea1e54dccef0e3..829b4045b554f374bffccffe5f611852ec9d212d 100644
--- a/lib_com/deemph_fx.c
+++ b/lib_com/deemph_fx.c
@@ -92,34 +92,16 @@ void deemph_fx(
{
Word16 i;
Word32 L_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow;
- Overflow = 0;
- move32();
-#endif
- L_tmp = L_deposit_h( signal[0] ); /*Qx+16*/
- L_tmp = L_mac_o( L_tmp, *mem, mu, &Overflow ); /*Qx+16*/
- signal[0] = round_fx_o( L_tmp, &Overflow ); /*Qx*/
-#else
- L_tmp = L_deposit_h( signal[0] ); /*Qx+16*/
- L_tmp = L_mac_sat( L_tmp, *mem, mu ); /*Qx+16*/
- signal[0] = round_fx_sat( L_tmp ); /*Qx*/
-#endif
-
-
+ L_tmp = L_deposit_h( signal[0] ); /*Qx+16*/
+ L_tmp = L_mac_sat( L_tmp, *mem, mu ); /*Qx+16*/
+ signal[0] = round_fx_sat( L_tmp ); /*Qx*/
move16();
FOR( i = 1; i < L; i++ )
{
- L_tmp = L_deposit_h( signal[i] ); /*Qx+16*/
-#ifdef ISSUE_1836_replace_overflow_libcom
+ L_tmp = L_deposit_h( signal[i] ); /*Qx+16*/
L_tmp = L_mac_sat( L_tmp, signal[i - 1], mu ); /*Qx+16*/
signal[i] = round_fx_sat( L_tmp ); /*Qx*/
-#else
- L_tmp = L_mac_o( L_tmp, signal[i - 1], mu, &Overflow ); /*Qx+16*/
- signal[i] = round_fx_o( L_tmp, &Overflow ); /*Qx*/
-#endif
move16();
}
@@ -142,13 +124,7 @@ void Deemph2(
{
Word16 i;
Word32 L_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow;
- Overflow = 0;
- move32();
-#endif
-#endif
+
/* saturation can occur in L_mac() */
L_tmp = L_mult( x[0], 16384 /*0.5f in Q15*/ ); /*Qx+16*/
@@ -158,16 +134,14 @@ void Deemph2(
FOR( i = 1; i < L; i++ )
{
L_tmp = L_mult( x[i], 16384 /*0.5f in Q15*/ ); /*Qx+16*/
-#ifdef ISSUE_1836_replace_overflow_libcom
- x[i] = mac_r_sat( L_tmp, x[i - 1], mu ); /*Qx-1*/
-#else
- x[i] = mac_ro( L_tmp, x[i - 1], mu, &Overflow ); /*Qx-1*/
-#endif
+ x[i] = mac_r_sat( L_tmp, x[i - 1], mu ); /*Qx-1*/
move16();
}
*mem = x[L - 1]; /*Qx-1*/
move16();
+
+ return;
}
@@ -188,17 +162,15 @@ void Deemph2(
* Returns:
* void
*/
-void E_UTIL_deemph2( Word16 shift, Word16 *x, const Word16 mu, const Word16 L, Word16 *mem )
+void E_UTIL_deemph2(
+ Word16 shift,
+ Word16 *x,
+ const Word16 mu,
+ const Word16 L,
+ Word16 *mem )
{
Word16 i;
Word32 L_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow;
- Overflow = 0;
- move32();
-#endif
-#endif
/* signal[0] = signal[0] + mu * (*mem); */
L_tmp = L_deposit_h( *mem ); /*Qx+16*/
@@ -207,13 +179,8 @@ void E_UTIL_deemph2( Word16 shift, Word16 *x, const Word16 mu, const Word16 L, W
shift = shr( -32768, shift ); /*Q15 - shift*/
FOR( i = 0; i < L; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_msu_sat( Mpy_32_16_1( L_tmp, mu ), x[i], shift ); /*Qx-shift+16*/
x[i] = round_fx_sat( L_tmp ); /*Qx-shift*/
-#else
- L_tmp = L_msu_o( Mpy_32_16_1( L_tmp, mu ), x[i], shift, &Overflow ); /*Qx-shift+16*/
- x[i] = round_fx_o( L_tmp, &Overflow ); /*Qx-shift*/
-#endif
move16();
}
}
@@ -221,13 +188,8 @@ void E_UTIL_deemph2( Word16 shift, Word16 *x, const Word16 mu, const Word16 L, W
{
FOR( i = 0; i < L; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_msu_sat( Mpy_32_16_1( L_tmp, mu ), shr_sat( x[i], shift ), -32768 /*1.0f in Q15*/ ); /*Qx-shift+16*/
x[i] = round_fx_sat( L_tmp ); /*Qx-shift*/
-#else
- L_tmp = L_msu_o( Mpy_32_16_1( L_tmp, mu ), shr_sat( x[i], shift ), -32768 /*1.0f in Q15*/, &Overflow ); /*Qx-shift+16*/
- x[i] = round_fx_o( L_tmp, &Overflow ); /*Qx-shift*/
-#endif
move16();
}
}
diff --git a/lib_com/disclaimer.c b/lib_com/disclaimer.c
index f98245cda6a3dbada76013f29d1e72bc76db25d0..53210b9fe68764e1432438f2781ee4ccad778dbd 100644
--- a/lib_com/disclaimer.c
+++ b/lib_com/disclaimer.c
@@ -40,7 +40,7 @@
#define WMC_TOOL_SKIP
-int16_t print_disclaimer( FILE *fPtr )
+Word16 print_disclaimer( FILE *fPtr )
{
fprintf( fPtr, "\n==================================================================================================\n" );
diff --git a/lib_com/edct_fx.c b/lib_com/edct_fx.c
index 244d693819fab6a1a3d9c4e2d9087abfaa733a70..86a8ad268b57c74982476ea5ab364fa2a7df9cc5 100644
--- a/lib_com/edct_fx.c
+++ b/lib_com/edct_fx.c
@@ -9,8 +9,6 @@
#include "rom_com.h" /* Static table prototypes */
#include "prot_fx.h" /* Function prototypes */
#include "stl.h"
-
-
#include "math_32.h"
static Word16 get_edxt_factor( Word16 length ) /* Returns value of sqrtf(2.f/length) in Q15 */
@@ -395,13 +393,6 @@ void edct_16fx(
const Word16 *px, *pt;
Word16 *py;
(void) element_mode;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow;
- Overflow = 0;
- move32();
-#endif
-#endif
/*COMPLETE: some eDCT sub function are missing */
IF( EQ_16( length, L_FRAME32k ) )
@@ -456,22 +447,13 @@ void edct_16fx(
{
i2 = shl( i, 1 );
- L_tmp = L_mult( x[i2], edct_table[i] ); /*Q(Qx+16) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ L_tmp = L_mult( x[i2], edct_table[i] ); /*Q(Qx+16) */
Lacc = L_mac_sat( L_tmp, *px, *pt ); /*Q(Qx+16) */
re2[i] = round_fx_sat( L_shl_sat( Lacc, Q_edct ) ); /* Q(Qx+Q_edct) */
move16();
L_tmp = L_mult( *px, edct_table[i] ); /*Q(Qx+16) */
Lacc = L_msu_sat( L_tmp, x[i2], *pt ); /*Q(Qx+16) */
im2[i] = round_fx_sat( L_shl_sat( Lacc, Q_edct ) ); /* Q(Qx+Q_edct) */
-#else
- Lacc = L_mac_o( L_tmp, *px, *pt, &Overflow ); /*Q(Qx+16) */
- re2[i] = round_fx_o( L_shl_o( Lacc, Q_edct, &Overflow ), &Overflow ); /* Q(Qx+Q_edct) */
- move16();
- L_tmp = L_mult( *px, edct_table[i] ); /*Q(Qx+16) */
- Lacc = L_msu_o( L_tmp, x[i2], *pt, &Overflow ); /*Q(Qx+16) */
- im2[i] = round_fx_o( L_shl_o( Lacc, Q_edct, &Overflow ), &Overflow ); /* Q(Qx+Q_edct) */
-#endif
move16();
px -= 2;
pt--;
@@ -496,20 +478,12 @@ void edct_16fx(
fact = round_fx( L_shl( L_tmp, 2 ) ); /*Q15 */
FOR( i = 0; i < shr( length, 1 ); i++ )
{
- tmp = mult_r( im2[i], fact ); /*Q(Qx+Q_edct) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ tmp = mult_r( im2[i], fact ); /*Q(Qx+Q_edct) */
re[i] = sub_sat( re2[i], tmp ); /*Q(Qx+Q_edct) */
-#else
- re[i] = sub_o( re2[i], tmp, &Overflow ); /*Q(Qx+Q_edct) */
-#endif
move16();
- tmp = mult_r( re2[i], fact ); /*Q(Qx+Q_edct) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ tmp = mult_r( re2[i], fact ); /*Q(Qx+Q_edct) */
im[i] = add_sat( im2[i], tmp ); /*Q(Qx+Q_edct) */
-#else
- im[i] = add_o( im2[i], tmp, &Overflow ); /*Q(Qx+Q_edct) */
-#endif
move16();
}
@@ -520,8 +494,7 @@ void edct_16fx(
{
i2 = shl( i, 1 );
- L_tmp = L_mult( re[i], edct_table[i] ); /*Q(Qx+Q_edct+16) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ L_tmp = L_mult( re[i], edct_table[i] ); /*Q(Qx+Q_edct+16) */
Lacc = L_mac_sat( L_tmp, im[i], *pt ); /*Q(Qx+Q_edct+16) */
y[i2] = round_fx_sat( L_shr_sat( Lacc, Q_edct ) ); /* Q(Qx) */
move16();
@@ -529,15 +502,6 @@ void edct_16fx(
L_tmp = L_mult( re[i], edct_table[sub( shr( length, 1 ), add( 1, i ) )] ); /*Q(Qx+Q_edct+16) */
Lacc = L_msu( L_tmp, im[i], edct_table[i] ); /*Q(Qx+Q_edct+16) */
*py = round_fx_sat( L_shr_sat( Lacc, Q_edct ) ); /* Q(Qx) */
-#else
- Lacc = L_mac_o( L_tmp, im[i], *pt, &Overflow ); /*Q(Qx+Q_edct+16) */
- y[i2] = round_fx_o( L_shr_o( Lacc, Q_edct, &Overflow ), &Overflow ); /* Q(Qx) */
- move16();
-
- L_tmp = L_mult( re[i], edct_table[sub( shr( length, 1 ), add( 1, i ) )] ); /*Q(Qx+Q_edct+16) */
- Lacc = L_msu( L_tmp, im[i], edct_table[i] ); /*Q(Qx+Q_edct+16) */
- *py = round_fx_o( L_shr_o( Lacc, Q_edct, &Overflow ), &Overflow ); /* Q(Qx) */
-#endif
move16();
py -= 2;
@@ -603,7 +567,7 @@ void iedct_short_fx(
return;
}
-#define FAST_EDXT /* optimized FFT-based DCT/DST algorithm */
+
/*-------------------------------------------------------------------------*
* edxt_fx()
*
@@ -739,7 +703,6 @@ void edxt_fx(
move16();
}
-#ifdef FAST_EDXT
test();
IF( EQ_16( kernelType, MDST_II ) || EQ_16( kernelType, MDCT_II ) )
{
@@ -913,47 +876,11 @@ void edxt_fx(
}
}
}
-#endif
-#ifdef IVAS_FLOAT_FIXED_TO_BE_DONE
- ELSE
- /* TODO: below IF and ELSE blocks are unreachable, verified on code coverage report */
- IF( s_and( kernelType, 1 ) ) /* DST */
+ else
{
- const float offK = ( kernelType == MDST_II && synthesis ? 0.5f : 1.0f - 0.5f * ( kernelType >> 1 ) );
- const float offM = ( kernelType == MDST_II && synthesis ? 1.0f : 0.5f );
-
- FOR( k = 0; k < length; k++ )
- {
- y[k] = 0.f;
- FOR( m = 0; m < length; m++ )
- {
- y[k] += x[m] * sinf( pi_len * ( m + offM ) * ( k + offK ) );
- }
- }
- IF( offK == 1.f )
- {
- y[length - 1] *= 0.5f; /* scale Nyquist sample */
- }
+ assert( !"Unsupported Kernel type in edxt_fx()" );
}
- ELSE /* kernelType 0, 2: DCT */
- {
- const float offK = ( EQ_16( kernelType, MDCT_II ) && synthesis ? 0.5f : 0.5f - shr( shr( kernelType, 1 ), 1 ) );
- const float offM = ( EQ_16( kernelType, MDCT_II ) && synthesis ? 0.0f : 0.5f );
- FOR( k = 0; k < length; k++ )
- {
- y[k] = 0.f;
- FOR( m = 0; m < length; m++ )
- {
- y[k] += x[m] * cosf( pi_len * ( m + offM ) * ( k + offK ) );
- }
- }
- IF( offK == 0.f )
- {
- y[0] *= 0.5f; /* scale lowest (i.e. DC) sample */
- }
- }
-#endif // IVAS_FLOAT_FIXED_TO_BE_DONE
/*v_multc(y, (kernelType == MDCT_II ? -1.f : 1.f) * sqrtf(2.f / length), y, length);*/
fac = get_edxt_factor( length ); /* Q15 */
if ( EQ_16( kernelType, MDCT_II ) )
diff --git a/lib_com/env_stab_fx.c b/lib_com/env_stab_fx.c
index c988076951bf3ea1eb202f21f92a801d1dac72fe..728cfddb99c5f912971f07249f99dd70ae358d81 100644
--- a/lib_com/env_stab_fx.c
+++ b/lib_com/env_stab_fx.c
@@ -188,12 +188,7 @@ Word16 env_stab_smo_fx( /* Q0 */
Word16 maxval, pp[NUM_ENV_STAB_PLC_STATES], pa[NUM_ENV_STAB_PLC_STATES];
Word16 i;
Word16 tmp, sum, exp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
/* get previous state */
prev_state = maximum_fx( env_stab_state_p, NUM_ENV_STAB_PLC_STATES, &maxval );
@@ -229,11 +224,7 @@ Word16 env_stab_smo_fx( /* Q0 */
/*tmp = shl(tmp, add(exp, 1));*/ /* Q15 */
FOR( i = 0; i < NUM_ENV_STAB_PLC_STATES; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
env_stab_state_p[i] = round_fx_sat( L_shl_sat( L_mult_sat( env_stab_state_p[i], tmp ), add( exp, 1 ) ) ); /* Q15 */
-#else
- env_stab_state_p[i] = round_fx_o( L_shl_o( L_mult_o( env_stab_state_p[i], tmp, &Overflow ), add( exp, 1 ), &Overflow ), &Overflow ); /* Q15 */
-#endif
move16();
}
diff --git a/lib_com/fd_cng_com_fx.c b/lib_com/fd_cng_com_fx.c
index 6666f90914e42399d122a720c02380831add9e2c..47e3df91ea423c8419b251649ef145603c7f901a 100644
--- a/lib_com/fd_cng_com_fx.c
+++ b/lib_com/fd_cng_com_fx.c
@@ -648,12 +648,6 @@ void minimum_statistics(
Word16 msAlphaCorAlpha2;
Word16 msPeriodogSum16;
Word16 msNoiseFloor16;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
len2 = i_mult( MSNUMSUBFR, len );
@@ -752,11 +746,7 @@ void minimum_statistics(
/* use absolute value to avoid -1.0 x -1.0 multiplications */
s2 = norm_l( scalar2 );
}
-#ifdef ISSUE_1836_replace_overflow_libcom
scalar216 = round_fx_sat( L_shl( scalar2, s2 ) );
-#else
- scalar216 = round_fx_o( L_shl_o( scalar2, s2, &Overflow ), &Overflow );
-#endif
scalar2 = L_mult( scalar216, scalar216 );
/* find common exponent */
@@ -906,11 +896,7 @@ void minimum_statistics(
s2 = s_min( s2, WORD32_BITS - 1 );
/* beta: scaled by s2 */
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp16 = round_fx_sat( L_shl( tmp, s1 ) );
-#else
- tmp16 = round_fx_o( L_shl_o( tmp, s1, &Overflow ), &Overflow );
-#endif
beta = mult_r( tmp16, tmp16 );
/* scalar3: scaled by s3 */
@@ -998,13 +984,8 @@ void minimum_statistics(
move32();
/* exponent msCurrentMinSubWindow[j]: CNG_S */
BASOP_SATURATE_WARNING_OFF_EVS;
-#ifdef ISSUE_1836_replace_overflow_libcom
msCurrentMinSubWindow[j] = L_shl_sat( Mpy_32_32( scalar, msBminSubWin[j] ), 5 );
move32();
-#else
- msCurrentMinSubWindow[j] = L_shl_o( Mpy_32_32( scalar, msBminSubWin[j] ), 5, &Overflow );
- move32();
-#endif
BASOP_SATURATE_WARNING_ON_EVS;
}
}
@@ -1261,13 +1242,6 @@ void minimum_statistics_fx(
Word16 msAlphaCorAlpha2;
Word16 msPeriodogSum16;
Word16 msNoiseFloor16;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
len2 = i_mult( MSNUMSUBFR, len );
@@ -1366,11 +1340,7 @@ void minimum_statistics_fx(
/* use absolute value to avoid -1.0 x -1.0 multiplications */
s2 = norm_l( scalar2 );
}
-#ifdef ISSUE_1836_replace_overflow_libcom
scalar216 = round_fx_sat( L_shl( scalar2, s2 ) );
-#else
- scalar216 = round_fx_o( L_shl_o( scalar2, s2, &Overflow ), &Overflow );
-#endif
scalar2 = L_mult( scalar216, scalar216 );
/* find common exponent */
@@ -1527,11 +1497,7 @@ void minimum_statistics_fx(
s2 = s_min( s2, WORD32_BITS - 1 );
/* beta: scaled by s2 */
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp16 = round_fx_sat( L_shl( tmp, s1 ) );
-#else
- tmp16 = round_fx_o( L_shl_o( tmp, s1, &Overflow ), &Overflow );
-#endif
beta = mult_r( tmp16, tmp16 );
/* scalar3: scaled by s3 */
@@ -1619,11 +1585,7 @@ void minimum_statistics_fx(
move32();
/* exponent msCurrentMinSubWindow[j]: CNG_S */
BASOP_SATURATE_WARNING_OFF_EVS;
-#ifdef ISSUE_1836_replace_overflow_libcom
msCurrentMinSubWindow[j] = L_shl_sat( Mpy_32_32( scalar, msBminSubWin[j] ), 5 );
-#else
- msCurrentMinSubWindow[j] = L_shl_o( Mpy_32_32( scalar, msBminSubWin[j] ), 5, &Overflow );
-#endif
move32();
BASOP_SATURATE_WARNING_ON_EVS;
}
@@ -2308,13 +2270,6 @@ static void getmidbands(
)
{
Word16 j, max_psize, shift;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
max_psize = psize[0];
move16();
@@ -2347,11 +2302,7 @@ static void getmidbands(
move16();
FOR( j = 0; j < npart; j++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
psize_norm[j] = shl_sat( psize[j], shift ); // Q(15 - psize_norm_exp)
-#else
- psize_norm[j] = shl_o( psize[j], shift, &Overflow ); // Q(15 - psize_norm_exp)
-#endif
move16();
}
/* minimum_statistics needs fixed exponent of 6 */
@@ -3355,8 +3306,8 @@ void SynthesisSTFT_fx(
}
/* Get time-domain signal */
// v_multc(olapBuffer + hFdCngCom->frameSize / 4, (float)(hFdCngCom->fftlen / 2), timeDomainOutput, hFdCngCom->frameSize);
- v_multc_fixed( olapBuffer + hFdCngCom->frameSize / 4, fftScale, timeDomainOutput, hFdCngCom->frameSize ); // Q_in - 9
- /* Get excitation */
+ v_multc_fx( olapBuffer + hFdCngCom->frameSize / 4, fftScale, timeDomainOutput, hFdCngCom->frameSize ); // Q_in - 9
+ /* Get excitation */
test();
test();
IF( ( EQ_16( element_mode, IVAS_CPE_TD ) || EQ_16( element_mode, IVAS_CPE_DFT ) ) && EQ_16( nchan_out, 2 ) )
@@ -3367,12 +3318,12 @@ void SynthesisSTFT_fx(
move32();
}
// v_multc(buf, (float)(hFdCngCom->fftlen / 2), buf, M + 1 + hFdCngCom->frameSize);
- v_multc_fixed( buf_fx, fftScale, buf_fx, add( M + 1, hFdCngCom->frameSize ) );
+ v_multc_fx( buf_fx, fftScale, buf_fx, add( M + 1, hFdCngCom->frameSize ) );
}
ELSE
{
// v_multc(olapBuffer + hFdCngCom->frameSize / 4 - (M + 1), (float)(hFdCngCom->fftlen / 2), buf, M + 1 + hFdCngCom->frameSize);
- v_multc_fixed( olapBuffer + sub( shr( hFdCngCom->frameSize, 2 ), ( M + 1 ) ), fftScale, buf_fx, add( M + 1, hFdCngCom->frameSize ) );
+ v_multc_fx( olapBuffer + sub( shr( hFdCngCom->frameSize, 2 ), ( M + 1 ) ), fftScale, buf_fx, add( M + 1, hFdCngCom->frameSize ) );
}
tmp_fx = buf_fx[0];
@@ -3447,10 +3398,10 @@ void SynthesisSTFT_dirac_fx(
}
/* Get time-domain signal */
- v_multc_fixed( olapBuffer + shr( hFdCngCom->frameSize, 2 ), fftScale, timeDomainOutput, samples_out ); // Q_in - 9
+ v_multc_fx( olapBuffer + shr( hFdCngCom->frameSize, 2 ), fftScale, timeDomainOutput, samples_out ); // Q_in - 9
/* Get excitation */
- v_multc_fixed( olapBuffer + sub( shr( hFdCngCom->frameSize, 2 ), ( M + 1 ) ), fftScale, buf, add( M + 1, hFdCngCom->frameSize ) );
+ v_multc_fx( olapBuffer + sub( shr( hFdCngCom->frameSize, 2 ), ( M + 1 ) ), fftScale, buf, add( M + 1, hFdCngCom->frameSize ) );
tmp = buf[0];
move32();
preemph_ivas_fx( buf + 1, PREEMPH_FAC, M + hFdCngCom->frameSize, &tmp );
diff --git a/lib_com/fft_fx_evs.c b/lib_com/fft_fx_evs.c
index 221bdc533ad0a147d04d3109bbf49bf2e77debbe..cf27583ae412ffd9673dee345a76c4828cac4eae 100644
--- a/lib_com/fft_fx_evs.c
+++ b/lib_com/fft_fx_evs.c
@@ -1186,12 +1186,6 @@ static void fft5_32_16fx(
Word16 T1, To, T8, Tt, T9, Ts, Te, Tp, Th, Tn, T2, T3, T4, T5, T6, T7;
Word16 i0, i1, i2, i3, i4;
Word32 L_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
i0 = Idx[0];
move16();
i1 = Idx[32];
@@ -1218,15 +1212,9 @@ static void fft5_32_16fx(
move16();
T6 = zRe[i3];
move16();
-#ifdef ISSUE_1836_replace_overflow_libcom
T7 = add_sat( T5, T6 );
T8 = add_sat( T4, T7 );
Tt = sub_sat( T5, T6 );
-#else
- T7 = add_o( T5, T6, &Overflow );
- T8 = add_o( T4, T7, &Overflow );
- Tt = sub_o( T5, T6, &Overflow );
-#endif
/* T9 = KP559016994 * (T4 - T7); */
L_tmp = Mult_32_16( KP559016994_16FX, sub_sat( T4, T7 ) ); // Q(16 +x)
T9 = round_fx_sat( L_tmp ); // Qx
@@ -1248,17 +1236,10 @@ static void fft5_32_16fx(
L_tmp = Mult_32_16( KP559016994_16FX, sub_sat( T4, T7 ) ); // Q(16 +x)
Tn = round_fx_sat( L_tmp ); // Qx
-#ifdef ISSUE_1836_replace_overflow_libcom
zRe[i0] = add_sat( T1, T8 );
move16();
zIm[i0] = add_sat( To, Tp );
move32();
-#else
- zRe[i0] = add_o( T1, T8, &Overflow );
- move16();
- zIm[i0] = add_o( To, Tp, &Overflow );
- move32();
-#endif
/*T2 = KP951056516*Te + KP587785252*Th; */
L_tmp = Mult_32_16( KP951056516_16FX, Te ); // Q(16 +x)
@@ -1275,7 +1256,6 @@ static void fft5_32_16fx(
T4 = add_sat( T9, T6 );
T5 = sub_sat( T6, T9 );
-#ifdef ISSUE_1836_replace_overflow_libcom
zRe[i3] = sub_sat( T4, T2 );
move32();
zRe[i1] = add_sat( T5, T3 );
@@ -1284,16 +1264,6 @@ static void fft5_32_16fx(
move32();
zRe[i4] = sub_sat( T5, T3 );
move32();
-#else
- zRe[i3] = sub_o( T4, T2, &Overflow );
- move32();
- zRe[i1] = add_o( T5, T3, &Overflow );
- move32();
- zRe[i2] = add_o( T4, T2, &Overflow );
- move32();
- zRe[i4] = sub_o( T5, T3, &Overflow );
- move32();
-#endif
/* T2 = KP951056516 * Ts + KP587785252 * Tt; */
L_tmp = Mult_32_16( KP951056516_16FX, Ts ); // Q(16 +x)
@@ -1700,12 +1670,6 @@ static void cftfsub_16fx(
{
Word16 j, j1, j2, j3, l;
Word16 x0r, x0i, x1r, x1i, x2r, x2i, x3r, x3i;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
l = 2;
move16();
@@ -1758,7 +1722,6 @@ static void cftfsub_16fx(
{
FOR( j = 0; j < l; j += 2 )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
j1 = add_sat( j, l );
x0r = sub_sat( a[j], a[j1] );
x0i = sub_sat( a[j + 1], a[j1 + 1] );
@@ -1766,15 +1729,6 @@ static void cftfsub_16fx(
move16();
a[j + 1] = add_sat( a[j + 1], a[j1 + 1] );
move16();
-#else
- j1 = add_o( j, l, &Overflow );
- x0r = sub_o( a[j], a[j1], &Overflow );
- x0i = sub_o( a[j + 1], a[j1 + 1], &Overflow );
- a[j] = add_o( a[j], a[j1], &Overflow );
- move16();
- a[j + 1] = add_o( a[j + 1], a[j1 + 1], &Overflow );
- move16();
-#endif
a[j1] = x0r;
move16();
a[j1 + 1] = x0i;
@@ -1799,14 +1753,7 @@ static void cft1st_16fx(
Word16 x0r, x0i, x1r, x1i, x2r, x2i, x3r, x3i;
Word16 tmp;
Word32 L_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-#ifdef ISSUE_1836_replace_overflow_libcom
x0r = add_sat( a[0], a[2] );
x0i = add_sat( a[1], a[3] );
x1r = sub_sat( a[0], a[2] );
@@ -1876,77 +1823,6 @@ static void cft1st_16fx(
move16();
k1 = 0;
move16();
-#else
- x0r = add_o( a[0], a[2], &Overflow );
- x0i = add_o( a[1], a[3], &Overflow );
- x1r = sub_o( a[0], a[2], &Overflow );
- x1i = sub_o( a[1], a[3], &Overflow );
- x2r = add_o( a[4], a[6], &Overflow );
- x2i = add_o( a[5], a[7], &Overflow );
- x3r = sub_o( a[4], a[6], &Overflow );
- x3i = sub_o( a[5], a[7], &Overflow );
- a[0] = add_o( x0r, x2r, &Overflow );
- move16();
- a[1] = add_o( x0i, x2i, &Overflow );
- move16();
- a[4] = sub_o( x0r, x2r, &Overflow );
- move16();
- a[5] = sub_o( x0i, x2i, &Overflow );
- move16();
- a[2] = sub_o( x1r, x3i, &Overflow );
- move16();
- a[3] = add_o( x1i, x3r, &Overflow );
- move16();
- a[6] = add_o( x1r, x3i, &Overflow );
- move16();
- a[7] = sub_o( x1i, x3r, &Overflow );
- wk1r = w[2];
- move32();
-
- x0r = add_o( a[8], a[10], &Overflow );
- x0i = add_o( a[9], a[11], &Overflow );
- x1r = sub_o( a[8], a[10], &Overflow );
- x1i = sub_o( a[9], a[11], &Overflow );
- x2r = add_o( a[12], a[14], &Overflow );
- x2i = add_o( a[13], a[15], &Overflow );
- x3r = sub_o( a[12], a[14], &Overflow );
- x3i = sub_o( a[13], a[15], &Overflow );
- a[8] = add_o( x0r, x2r, &Overflow );
- move16();
- a[9] = add_o( x0i, x2i, &Overflow );
- move16();
- a[12] = sub_o( x2i, x0i, &Overflow );
- move16();
- a[13] = sub_o( x0r, x2r, &Overflow );
- move16();
-
- x0r = sub_o( x1r, x3i, &Overflow );
- x0i = add_o( x1i, x3r, &Overflow );
- tmp = sub_o( x0r, x0i, &Overflow );
- L_tmp = Mult_32_16( wk1r, tmp ); /*Q(15+Qx+Q_edct) */
-
- a[10] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- tmp = add_o( x0r, x0i, &Overflow );
- L_tmp = Mult_32_16( wk1r, tmp ); /*Q(15+Qx+Q_edct) */
- a[11] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /* Q(Qx+Q_edct) */
- move16();
-
- x0r = add_o( x3i, x1r, &Overflow );
- x0i = sub_o( x3r, x1i, &Overflow );
- tmp = sub_o( x0i, x0r, &Overflow );
- L_tmp = Mult_32_16( wk1r, tmp ); /*Q(15+Qx+Q_edct) */
- a[14] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- tmp = add_o( x0i, x0r, &Overflow );
- L_tmp = Mult_32_16( wk1r, tmp ); /*Q(15+Qx+Q_edct) */
- a[15] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
- k1 = 0;
- move16();
-#endif
FOR( j = 16; j < n; j += 16 )
{
@@ -1967,7 +1843,7 @@ static void cft1st_16fx(
L_tmp = L_shl( Mult_32_32( wk2i, wk1r ), 1 ); /*Q29 */
wk3i = L_sub( L_shl( L_tmp, 1 ), wk1i ); /*Q30 */
-#ifdef ISSUE_1836_replace_overflow_libcom
+
x0r = add_sat( a[j], a[j + 2] );
x0i = add_sat( a[j + 1], a[j + 3] );
x1r = sub_sat( a[j], a[j + 2] );
@@ -2078,118 +1954,6 @@ static void cft1st_16fx(
L_tmp = Madd_32_16( L_tmp, wk3i, x0r ); /*Q(15+Qx+Q_edct) */
a[j + 15] = round_fx_sat( L_shl_sat( L_tmp, 1 ) ); /*Q(Qx+Q_edct) */
move16();
-#else
- x0r = add_o( a[j], a[j + 2], &Overflow );
- x0i = add_o( a[j + 1], a[j + 3], &Overflow );
- x1r = sub_o( a[j], a[j + 2], &Overflow );
- x1i = sub_o( a[j + 1], a[j + 3], &Overflow );
- x2r = add_o( a[j + 4], a[j + 6], &Overflow );
- x2i = add_o( a[j + 5], a[j + 7], &Overflow );
- x3r = sub_o( a[j + 4], a[j + 6], &Overflow );
- x3i = sub_o( a[j + 5], a[j + 7], &Overflow );
- a[j] = add_o( x0r, x2r, &Overflow );
- move16();
- a[j + 1] = add_o( x0i, x2i, &Overflow );
- move16();
-
- x0r = sub_o( x0r, x2r, &Overflow );
- x0i = sub_o( x0i, x2i, &Overflow );
- L_tmp = Mult_32_16( wk2r, x0r ); /*Q(15+Qx+Q_edct) */
- L_tmp = Msub_32_16( L_tmp, wk2i, x0i ); /*Q(15+Qx+Q_edct) */
- a[j + 4] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- L_tmp = Mult_32_16( wk2r, x0i ); /*Q(15+Qx+Q_edct) */
- L_tmp = Madd_32_16( L_tmp, wk2i, x0r ); /*Q(15+Qx+Q_edct) */
- a[j + 5] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- x0r = sub_o( x1r, x3i, &Overflow );
- x0i = add_o( x1i, x3r, &Overflow );
- L_tmp = Mult_32_16( wk1r, x0r ); /*Q(15+Qx+Q_edct) */
- L_tmp = Msub_32_16( L_tmp, wk1i, x0i ); /*Q(15+Qx+Q_edct) */
- a[j + 2] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- L_tmp = Mult_32_16( wk1r, x0i ); /*Q(15+Qx+Q_edct) */
- L_tmp = Madd_32_16( L_tmp, wk1i, x0r ); /*Q(15+Qx+Q_edct) */
- a[j + 3] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- x0r = add_o( x1r, x3i, &Overflow );
- x0i = sub_o( x1i, x3r, &Overflow );
- L_tmp = Mult_32_16( wk3r, x0r ); /*Q(15+Qx+Q_edct) */
- L_tmp = Msub_32_16( L_tmp, wk3i, x0i ); /*Q(15+Qx+Q_edct) */
- a[j + 6] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- L_tmp = Mult_32_16( wk3r, x0i ); /*Q(15+Qx+Q_edct) */
- L_tmp = Madd_32_16( L_tmp, wk3i, x0r ); /*Q(15+Qx+Q_edct) */
- a[j + 7] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- wk1r = w[k2 + 2];
- move32();
- wk1i = w[k2 + 3];
- move32();
- L_tmp = L_shl( Mult_32_32( wk2r, wk1i ), 1 ); /*Q29 */
- wk3r = L_sub( wk1r, L_shl( L_tmp, 1 ) ); /*Q30 */
-
- L_tmp = L_shl( Mult_32_32( wk2r, wk1r ), 1 ); /*Q29 */
- wk3i = L_sub( L_shl( L_tmp, 1 ), wk1i ); /*Q30 */
-
- x0r = add_o( a[j + 8], a[j + 10], &Overflow );
- x0i = add_o( a[j + 9], a[j + 11], &Overflow );
- x1r = sub_o( a[j + 8], a[j + 10], &Overflow );
- x1i = sub_o( a[j + 9], a[j + 11], &Overflow );
- x2r = add_o( a[j + 12], a[j + 14], &Overflow );
- x2i = add_o( a[j + 13], a[j + 15], &Overflow );
- x3r = sub_o( a[j + 12], a[j + 14], &Overflow );
- x3i = sub_o( a[j + 13], a[j + 15], &Overflow );
- a[j + 8] = add_o( x0r, x2r, &Overflow );
- move16();
- a[j + 9] = add_o( x0i, x2i, &Overflow );
- move16();
-
- x0r = sub_o( x0r, x2r, &Overflow );
- x0i = sub_o( x0i, x2i, &Overflow );
- tmp = negate( x0r );
- L_tmp = Mult_32_16( wk2i, tmp ); /*Q(15+Qx+Q_edct) */
- L_tmp = Msub_32_16( L_tmp, wk2r, x0i ); /*Q(15+Qx+Q_edct) */
- a[j + 12] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- tmp = negate( x0i );
- L_tmp = Mult_32_16( wk2i, tmp ); /*Q(15+Qx+Q_edct) */
- L_tmp = Madd_32_16( L_tmp, wk2r, x0r ); /*Q(15+Qx+Q_edct) */
- a[j + 13] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- x0r = sub_o( x1r, x3i, &Overflow );
- x0i = add_o( x1i, x3r, &Overflow );
- L_tmp = Mult_32_16( wk1r, x0r ); /*Q(15+Qx+Q_edct) */
- L_tmp = Msub_32_16( L_tmp, wk1i, x0i ); /*Q(15+Qx+Q_edct) */
- a[j + 10] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- L_tmp = Mult_32_16( wk1r, x0i ); /*Q(15+Qx+Q_edct) */
- L_tmp = Madd_32_16( L_tmp, wk1i, x0r ); /*Q(15+Qx+Q_edct) */
- a[j + 11] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- x0r = add_o( x1r, x3i, &Overflow );
- x0i = sub_o( x1i, x3r, &Overflow );
-
- L_tmp = Mult_32_16( wk3r, x0r ); /*Q(15+Qx+Q_edct) */
- L_tmp = Msub_32_16( L_tmp, wk3i, x0i ); /*Q(15+Qx+Q_edct) */
- a[j + 14] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- L_tmp = Mult_32_16( wk3r, x0i ); /*Q(15+Qx+Q_edct) */
- L_tmp = Madd_32_16( L_tmp, wk3i, x0r ); /*Q(15+Qx+Q_edct) */
- a[j + 15] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-#endif
}
return;
@@ -2212,16 +1976,10 @@ static void cftmdl_16fx(
Word16 tmp, tmp2;
Word32 L_tmp;
Word32 L_x0r, L_x0i;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
m = shl( l, 2 );
FOR( j = 0; j < l; j += 2 )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
j1 = add_sat( j, l );
j2 = add_sat( j1, l );
j3 = add_sat( j2, l );
@@ -2249,35 +2007,6 @@ static void cftmdl_16fx(
move16();
a[j3 + 1] = sub_sat( x1i, x3r );
move16();
-#else
- j1 = add_o( j, l, &Overflow );
- j2 = add_o( j1, l, &Overflow );
- j3 = add_o( j2, l, &Overflow );
- x0r = add_o( a[j], a[j1], &Overflow );
- x0i = add_o( a[j + 1], a[j1 + 1], &Overflow );
- x1r = sub_o( a[j], a[j1], &Overflow );
- x1i = sub_o( a[j + 1], a[j1 + 1], &Overflow );
- x2r = add_o( a[j2], a[j3], &Overflow );
- x2i = add_o( a[j2 + 1], a[j3 + 1], &Overflow );
- x3r = sub_o( a[j2], a[j3], &Overflow );
- x3i = sub_o( a[j2 + 1], a[j3 + 1], &Overflow );
- a[j] = add_o( x0r, x2r, &Overflow );
- move16();
- a[j + 1] = add_o( x0i, x2i, &Overflow );
- move16();
- a[j2] = sub_o( x0r, x2r, &Overflow );
- move16();
- a[j2 + 1] = sub_o( x0i, x2i, &Overflow );
- move16();
- a[j1] = sub_o( x1r, x3i, &Overflow );
- move16();
- a[j1 + 1] = add_o( x1i, x3r, &Overflow );
- move16();
- a[j3] = add_o( x1r, x3i, &Overflow );
- move16();
- a[j3 + 1] = sub_o( x1i, x3r, &Overflow );
- move16();
-#endif
}
wk1r = w[2];
@@ -2285,7 +2014,6 @@ static void cftmdl_16fx(
tmp2 = add( l, m );
FOR( j = m; j < tmp2; j += 2 )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
j1 = add_sat( j, l );
j2 = add_sat( j1, l );
j3 = add_sat( j2, l );
@@ -2329,51 +2057,6 @@ static void cftmdl_16fx(
L_tmp = Mult_32_16( wk1r, tmp ); /*Q(15+Qx+Q_edct) */
a[j3 + 1] = round_fx_sat( L_shl_sat( L_tmp, 1 ) ); /*Q(Qx+Q_edct) */
move16();
-#else
- j1 = add_o( j, l, &Overflow );
- j2 = add_o( j1, l, &Overflow );
- j3 = add_o( j2, l, &Overflow );
- x0r = add_o( a[j], a[j1], &Overflow );
- x0i = add_o( a[j + 1], a[j1 + 1], &Overflow );
- x1r = sub_o( a[j], a[j1], &Overflow );
- x1i = sub_o( a[j + 1], a[j1 + 1], &Overflow );
- x2r = add_o( a[j2], a[j3], &Overflow );
- x2i = add_o( a[j2 + 1], a[j3 + 1], &Overflow );
- x3r = sub_o( a[j2], a[j3], &Overflow );
- x3i = sub_o( a[j2 + 1], a[j3 + 1], &Overflow );
- a[j] = add_o( x0r, x2r, &Overflow );
- move16();
- a[j + 1] = add_o( x0i, x2i, &Overflow );
- move16();
- a[j2] = sub_o( x2i, x0i, &Overflow );
- move16();
- a[j2 + 1] = sub_o( x0r, x2r, &Overflow );
- move16();
-
- x0r = sub_o( x1r, x3i, &Overflow );
- x0i = add_o( x1i, x3r, &Overflow );
- tmp = sub_o( x0r, x0i, &Overflow );
- L_tmp = Mult_32_16( wk1r, tmp ); /*Q(15+Qx+Q_edct) */
- a[j1] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- tmp = add_o( x0r, x0i, &Overflow );
- L_tmp = Mult_32_16( wk1r, tmp ); /*Q(15+Qx+Q_edct) */
- a[j1 + 1] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- x0r = add_o( x3i, x1r, &Overflow );
- x0i = sub_o( x3r, x1i, &Overflow );
- tmp = sub_o( x0i, x0r, &Overflow );
- L_tmp = Mult_32_16( wk1r, tmp ); /*Q(15+Qx+Q_edct) */
- a[j3] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- tmp = add_o( x0i, x0r, &Overflow );
- L_tmp = Mult_32_16( wk1r, tmp ); /*Q(15+Qx+Q_edct) */
- a[j3 + 1] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-#endif
}
k1 = 0;
@@ -2400,7 +2083,6 @@ static void cftmdl_16fx(
tmp2 = add( l, k );
FOR( j = k; j < tmp2; j += 2 )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
j1 = add_sat( j, l );
j2 = add_sat( j1, l );
j3 = add_sat( j2, l );
@@ -2456,87 +2138,21 @@ static void cftmdl_16fx(
L_tmp = Madd_32_16( L_tmp, wk3i, x0r ); /*Q(15+Qx+Q_edct) */
a[j3 + 1] = round_fx_sat( L_shl_sat( L_tmp, 1 ) ); /*Q(Qx+Q_edct) */
move16();
-#else
- j1 = add_o( j, l, &Overflow );
- j2 = add_o( j1, l, &Overflow );
- j3 = add_o( j2, l, &Overflow );
- x0r = add_o( a[j], a[j1], &Overflow );
- x0i = add_o( a[j + 1], a[j1 + 1], &Overflow );
- x1r = sub_o( a[j], a[j1], &Overflow );
- x1i = sub_o( a[j + 1], a[j1 + 1], &Overflow );
- x2r = add_o( a[j2], a[j3], &Overflow );
- x2i = add_o( a[j2 + 1], a[j3 + 1], &Overflow );
- x3r = sub_o( a[j2], a[j3], &Overflow );
- x3i = sub_o( a[j2 + 1], a[j3 + 1], &Overflow );
- a[j] = add_o( x0r, x2r, &Overflow );
- move16();
- a[j + 1] = add_o( x0i, x2i, &Overflow );
- move16();
-
- x0r = sub_o( x0r, x2r, &Overflow );
- x0i = sub_o( x0i, x2i, &Overflow );
-
- L_tmp = Mult_32_16( wk2r, x0r ); /*Q(15+Qx+Q_edct) */
- L_tmp = Msub_32_16( L_tmp, wk2i, x0i ); /*Q(15+Qx+Q_edct) */
- a[j2] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- L_tmp = Mult_32_16( wk2r, x0i ); /*Q(15+Qx+Q_edct) */
- L_tmp = Madd_32_16( L_tmp, wk2i, x0r ); /*Q(15+Qx+Q_edct) */
- a[j2 + 1] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- x0r = sub_o( x1r, x3i, &Overflow );
- x0i = add_o( x1i, x3r, &Overflow );
-
- L_tmp = Mult_32_16( wk1r, x0r ); /*Q(15+Qx+Q_edct) */
- L_tmp = Msub_32_16( L_tmp, wk1i, x0i ); /*Q(15+Qx+Q_edct) */
- a[j1] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- L_tmp = Mult_32_16( wk1r, x0i ); /*Q(15+Qx+Q_edct) */
- L_tmp = Madd_32_16( L_tmp, wk1i, x0r ); /*Q(15+Qx+Q_edct) */
- a[j1 + 1] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- L_x0r = L_add( (Word32) x1r, (Word32) x3i );
- L_x0i = L_sub( (Word32) x1i, (Word32) x3r );
- x0r = extract_l( L_x0r );
- x0i = extract_l( L_x0i );
- L_tmp = Mult_32_16( wk3r, x0r ); /*Q(15+Qx+Q_edct) */
- L_tmp = Msub_32_16( L_tmp, wk3i, x0i ); /*Q(15+Qx+Q_edct) */
- a[j3] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- L_tmp = Mult_32_16( wk3r, x0i ); /*Q(15+Qx+Q_edct) */
- L_tmp = Madd_32_16( L_tmp, wk3i, x0r ); /*Q(15+Qx+Q_edct) */
- a[j3 + 1] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-#endif
}
wk1r = w[k2 + 2];
move32();
wk1i = w[k2 + 3];
move32();
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shl_sat( Mult_32_32( wk2r, wk1i ), 1 ); /*Q29 */
wk3r = L_sub_sat( wk1r, L_shl_sat( L_tmp, 1 ) ); /*Q30 */
L_tmp = L_shl_sat( Mult_32_32( wk2r, wk1r ), 1 ); /*Q29 */
wk3i = L_sub_sat( L_shl_sat( L_tmp, 1 ), wk1i ); /*Q30 */
tmp2 = add( l, add( k, m ) );
-#else
- L_tmp = L_shl_o( Mult_32_32( wk2r, wk1i ), 1, &Overflow ); /*Q29 */
- wk3r = L_sub_o( wk1r, L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q30 */
- L_tmp = L_shl_o( Mult_32_32( wk2r, wk1r ), 1, &Overflow ); /*Q29 */
- wk3i = L_sub_o( L_shl_o( L_tmp, 1, &Overflow ), wk1i, &Overflow ); /*Q30 */
- tmp2 = add( l, add( k, m ) );
-#endif
FOR( j = add( k, m ); j < tmp2; j += 2 )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
j1 = add_sat( j, l );
j2 = add_sat( j1, l );
j3 = add_sat( j2, l );
@@ -2593,64 +2209,6 @@ static void cftmdl_16fx(
L_tmp = Madd_32_16( L_tmp, wk3i, x0r ); /*Q(15+Qx+Q_edct) */
a[j3 + 1] = round_fx_sat( L_shl_sat( L_tmp, 1 ) ); /*Q(Qx+Q_edct) */
move16();
-#else
- j1 = add_o( j, l, &Overflow );
- j2 = add_o( j1, l, &Overflow );
- j3 = add_o( j2, l, &Overflow );
- x0r = add_o( a[j], a[j1], &Overflow );
- x0i = add_o( a[j + 1], a[j1 + 1], &Overflow );
- x1r = sub_o( a[j], a[j1], &Overflow );
- x1i = sub_o( a[j + 1], a[j1 + 1], &Overflow );
- x2r = add_o( a[j2], a[j3], &Overflow );
- x2i = add_o( a[j2 + 1], a[j3 + 1], &Overflow );
- x3r = sub_o( a[j2], a[j3], &Overflow );
- x3i = sub_o( a[j2 + 1], a[j3 + 1], &Overflow );
- a[j] = add_o( x0r, x2r, &Overflow );
- move16();
- a[j + 1] = add_o( x0i, x2i, &Overflow );
- move16();
-
- x0r = sub_o( x0r, x2r, &Overflow );
- x0i = sub_o( x0i, x2i, &Overflow );
-
- tmp = negate( x0r );
- L_tmp = Mult_32_16( wk2i, tmp ); /*Q(15+Qx+Q_edct) */
- L_tmp = Msub_32_16( L_tmp, wk2r, x0i ); /*Q(15+Qx+Q_edct) */
- a[j2] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- tmp = negate( x0i );
- L_tmp = Mult_32_16( wk2i, tmp ); /*Q(15+Qx+Q_edct) */
- L_tmp = Madd_32_16( L_tmp, wk2r, x0r ); /*Q(15+Qx+Q_edct) */
- a[j2 + 1] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- x0r = sub_o( x1r, x3i, &Overflow );
- x0i = add_o( x1i, x3r, &Overflow );
-
- L_tmp = Mult_32_16( wk1r, x0r ); /*Q(15+Qx+Q_edct) */
- L_tmp = Msub_32_16( L_tmp, wk1i, x0i ); /*Q(15+Qx+Q_edct) */
- a[j1] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- L_tmp = Mult_32_16( wk1r, x0i ); /*Q(15+Qx+Q_edct) */
- L_tmp = Madd_32_16( L_tmp, wk1i, x0r ); /*Q(15+Qx+Q_edct) */
- a[j1 + 1] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- x0r = add_o( x1r, x3i, &Overflow );
- x0i = sub_o( x1i, x3r, &Overflow );
-
- L_tmp = Mult_32_16( wk3r, x0r ); /*Q(15+Qx+Q_edct) */
- L_tmp = Msub_32_16( L_tmp, wk3i, x0i ); /*Q(15+Qx+Q_edct) */
- a[j3] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-
- L_tmp = Mult_32_16( wk3r, x0i ); /*Q(15+Qx+Q_edct) */
- L_tmp = Madd_32_16( L_tmp, wk3i, x0r ); /*Q(15+Qx+Q_edct) */
- a[j3 + 1] = round_fx_o( L_shl_o( L_tmp, 1, &Overflow ), &Overflow ); /*Q(Qx+Q_edct) */
- move16();
-#endif
}
}
diff --git a/lib_com/frame_ener_fx.c b/lib_com/frame_ener_fx.c
index 1e58dafac01444883e6be23556c91bed98984fe1..1ba05337caf20f13b8ad1494daf9aedb809cf03f 100644
--- a/lib_com/frame_ener_fx.c
+++ b/lib_com/frame_ener_fx.c
@@ -240,20 +240,9 @@ Word16 frame_energy_fx( /* o : Frame energy in Q8
const Word16 *pt1;
Word16 tmp16, exp1, exp2, tmp1, tmp2;
Word16 len, enern;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
/* len = (0.5f * (pitch[2]/64.0 + pitch[3]/64.0) + 0.5f) */
-#ifdef ISSUE_1836_replace_overflow_libcom
len = mult_r( add_sat( pitch[2], pitch[3] ), 256 );
-#else
- len = mult_r( add_o( pitch[2], pitch[3], &Overflow ), 256 );
-#endif
if ( LT_16( len, L_SUBFR ) )
{
@@ -283,29 +272,16 @@ Word16 frame_energy_fx( /* o : Frame energy in Q8
exp1 = sub( 15 + exp1, tmp2 );
/*add ld(2^exp1)=exp1 but check format, first*/
- tmp16 = sub( sub( 15, norm_s( exp1 ) ), 5 ); /*factor to shift Ltmp and exp1 with (shr) to avoid overflows when adding*/
-#ifdef ISSUE_1836_replace_overflow_libcom
- Ltmp = L_shr_sat( Ltmp, tmp16 ); /*Q25, tmp16*/
-#else
- Ltmp = L_shr_o( Ltmp, tmp16, &Overflow ); /*Q25, tmp16*/
-#endif
- exp2 = shr( exp1, tmp16 ); /*Q0 , tmp16*/
-#ifdef ISSUE_1836_replace_overflow_libcom
+ tmp16 = sub( sub( 15, norm_s( exp1 ) ), 5 ); /*factor to shift Ltmp and exp1 with (shr) to avoid overflows when adding*/
+ Ltmp = L_shr_sat( Ltmp, tmp16 ); /*Q25, tmp16*/
+ exp2 = shr( exp1, tmp16 ); /*Q0 , tmp16*/
Ltmp = L_add_sat( Ltmp, L_shl( L_deposit_l( exp2 ), 25 ) ); /*Q25, tmp16, normalized*/
-#else
- Ltmp = L_add_o( Ltmp, L_shl( L_deposit_l( exp2 ), 25 ), &Overflow ); /*Q25, tmp16, normalized*/
-#endif
/*make 10*log10 out of log2*/
- Ltmp = Mpy_32_16_1( Ltmp, LG10 ); /*Q25,tmp16 * Q13 = Q23, tmp16*/
-#ifdef ISSUE_1836_replace_overflow_libcom
+ Ltmp = Mpy_32_16_1( Ltmp, LG10 ); /*Q25,tmp16 * Q13 = Q23, tmp16*/
*frame_ener = extract_h( L_shl_sat( Ltmp, add( tmp16, 1 ) ) ); /*Q8*/
move16();
enern = sub_sat( *frame_ener, lp_speech ); /*Q8*/
-#else
- *frame_ener = extract_h( L_shl_o( Ltmp, add( tmp16, 1 ), &Overflow ) ); /*Q8*/
- move16();
- enern = sub_o( *frame_ener, lp_speech, &Overflow ); /*Q8*/
-#endif
+
return enern;
}
diff --git a/lib_com/get_gain_fx.c b/lib_com/get_gain_fx.c
index 187339bf14b453c4115ef803c3622a271da8a4f5..69d18b600c2396544fa6e013dfc246dcbc442936 100644
--- a/lib_com/get_gain_fx.c
+++ b/lib_com/get_gain_fx.c
@@ -53,18 +53,10 @@ Word32 get_gain( /* output: codebook gain (adaptive or fixed)
{
Word32 tcorr, tener, Lgain;
Word16 exp_c, exp_e, exp, tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
tcorr = L_deposit_l( 0 );
tener = L_deposit_l( 0 );
-
/*----------------------------------------------------------------*
* Find gain based on inter-correlation product
*----------------------------------------------------------------*/
@@ -72,13 +64,8 @@ Word32 get_gain( /* output: codebook gain (adaptive or fixed)
tcorr = Dot_product16HQ( 0, x, y, n, &exp_c );
tener = Dot_productSq16HQ( 0, y, n, &exp_e );
-#ifdef ISSUE_1836_replace_overflow_libcom
BASOP_Util_Divide_MantExp( round_fx_sat( tcorr ), exp_c, s_max( round_fx_sat( tener ), 1 ), exp_e, &tmp, &exp );
Lgain = L_shl_sat( L_deposit_l( tmp ) /*Q15*/, add( 1, exp ) ) /*Q16*/; //?sat
-#else
- BASOP_Util_Divide_MantExp( round_fx_o( tcorr, &Overflow ), exp_c, s_max( round_fx_o( tener, &Overflow ), 1 ), exp_e, &tmp, &exp );
- Lgain = L_shl_o( L_deposit_l( tmp ) /*Q15*/, add( 1, exp ), &Overflow ) /*Q16*/;
-#endif
return Lgain;
}
@@ -91,12 +78,6 @@ Word32 get_gain2( /* output: codebook gain (adaptive or fixed)
{
Word32 tcorr, tener, Lgain;
Word16 m_corr, m_ener, negative, Q_corr, Q_ener;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
negative = 0;
move16();
@@ -139,17 +120,12 @@ Word32 get_gain2( /* output: codebook gain (adaptive or fixed)
Q_corr = sub( Q_corr, Q_ener );
-#ifdef ISSUE_1836_replace_overflow_libcom
Lgain = L_shl_sat( L_deposit_l( m_corr ), add( Q_corr, 1 ) ); /* Lgain in Q16 */
-#else
- Lgain = L_shl_o( L_deposit_l( m_corr ), add( Q_corr, 1 ), &Overflow ); /* Lgain in Q16 */
-#endif
if ( negative != 0 )
{
Lgain = L_negate( Lgain ); /* Lgain in Q16 */
}
-
return Lgain;
}
diff --git a/lib_com/gs_bitallocation_fx.c b/lib_com/gs_bitallocation_fx.c
index 59917f42cd3f464c94c1e40828518ba8b2b08440..a4ebbe2d576bfff7fbae1da65888ab369b3d8fb9 100644
--- a/lib_com/gs_bitallocation_fx.c
+++ b/lib_com/gs_bitallocation_fx.c
@@ -77,11 +77,7 @@ void bands_and_bit_alloc_fx(
Word16 w_sum_bit;
(void) GSC_IVAS_mode;
(void) element_mode;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
+
nb_tot_bands = MBANDS_GN;
move16();
if ( EQ_16( L_frame, L_FRAME16k ) )
@@ -95,12 +91,8 @@ void bands_and_bit_alloc_fx(
set16_fx( out_bits_per_bands, 0, MBANDS_GN_BITALLOC16k );
/* To adapt current energy band to PVQ freq band for sorting*/
-#ifdef ISSUE_1836_replace_overflow_libcom
ener_vec[0] = add_sat( Ener_per_bd_iQ[0], Ener_per_bd_iQ[1] ); /*Q12 */
-#else
- ener_vec[0] = add_o( Ener_per_bd_iQ[0], Ener_per_bd_iQ[1], &Overflow ); /*Q12 */
-#endif
- Copy( Ener_per_bd_iQ_tmp + 1, ener_vec, MBANDS_GN - 1 ); /*Q12 */
+ Copy( Ener_per_bd_iQ_tmp + 1, ener_vec, MBANDS_GN - 1 ); /*Q12 */
ener_vec[MBANDS_GN - 1] = ener_vec[MBANDS_GN - 2];
move16();
IF( EQ_16( L_frame, L_FRAME16k ) )
diff --git a/lib_com/gs_bitallocation_ivas_fx.c b/lib_com/gs_bitallocation_ivas_fx.c
index 828d7933d88c0bd83373a22b1a85f50dc954664e..2223c0f8f0a5d2fb2f8752a563100ae6f7fd94b4 100644
--- a/lib_com/gs_bitallocation_ivas_fx.c
+++ b/lib_com/gs_bitallocation_ivas_fx.c
@@ -92,7 +92,6 @@ void bands_and_bit_alloc_ivas_fx(
const Word16 GSC_IVAS_mode /* i : GSC IVAS mode */
)
{
-
Word16 bandoffset, i, j, nb_bands_max, bit_new_bands, bit_tmp, st_band, nb_bands;
Word16 ener_vec[MBANDS_GN_BITALLOC16k]; /*Q12 */
Word16 nb_tot_bands = 16;
@@ -106,11 +105,7 @@ void bands_and_bit_alloc_ivas_fx(
Word32 bits_per_bands[MBANDS_GN_BITALLOC16k]; /* Q18 */
Word16 w_sum_bit;
Word16 fzero_val;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
+
nb_tot_bands = MBANDS_GN;
move16();
if ( EQ_16( L_frame, L_FRAME16k ) )
@@ -123,11 +118,7 @@ void bands_and_bit_alloc_ivas_fx(
set16_fx( out_bits_per_bands, 0, MBANDS_GN_BITALLOC16k );
/* To adapt current energy band to PVQ freq band for sorting*/
-#ifdef ISSUE_1836_replace_overflow_libcom
ener_vec[0] = add_sat( Ener_per_bd_iQ[0], Ener_per_bd_iQ[1] ); /*Q12 */
-#else
- ener_vec[0] = add_o( Ener_per_bd_iQ[0], Ener_per_bd_iQ[1], &Overflow ); /*Q12 */
-#endif
move16();
Copy( Ener_per_bd_iQ + 1, ener_vec, MBANDS_GN - 1 ); /*Q12 */
ener_vec[MBANDS_GN - 1] = ener_vec[MBANDS_GN - 2];
diff --git a/lib_com/gs_gains_fx.c b/lib_com/gs_gains_fx.c
index 7f2cb7e63041dacfa43e2e7d95306083f7bcbbc0..860ed90b0985c9981c63008925521e3191efea1d 100644
--- a/lib_com/gs_gains_fx.c
+++ b/lib_com/gs_gains_fx.c
@@ -84,12 +84,6 @@ void Comp_and_apply_gain_fx(
Word16 y_gain;
Word16 L16, frac, exp1, tmp_exp;
Word32 L32;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* Recreate excitation for local synthesis and decoder */
StartBin = 0;
@@ -110,15 +104,9 @@ void Comp_and_apply_gain_fx(
FOR( i = StartBin; i < NB_Qbins + StartBin; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
L32 = L_shl_sat( L_mult( exc_diffQ[i], y_gain ), tmp_exp ); /*Q_exc+16 */
exc_diffQ[i] = round_fx_sat( L32 ); /*Q_exc */
move16();
-#else
- L32 = L_shl_o( L_mult( exc_diffQ[i], y_gain ), tmp_exp, &Overflow ); /*Q_exc+16 */
- exc_diffQ[i] = round_fx_o( L32, &Overflow ); /*Q_exc */
- move16();
-#endif
}
}
ELSE
@@ -134,22 +122,14 @@ void Comp_and_apply_gain_fx(
y_gain = extract_l( Pow2( 14, frac ) ); /* Put 14 as exponent so that */
/* output of Pow2() will be: */
/* 16384 < Pow2() <= 32767 */
-#ifdef ISSUE_1836_replace_overflow_libcom
Ener_per_bd_yQ[i_band] = shl_sat( y_gain, sub( exp1, 13 ) );
-#else
- Ener_per_bd_yQ[i_band] = shl_o( y_gain, sub( exp1, 13 ), &Overflow );
-#endif
move16(); /*Q1 */
tmp_exp = add( add( exp1, 1 ), sub( Q_exc, Qexc_diff ) );
FOR( i = StartBin; i < NB_Qbins + StartBin; i++ )
{
- L32 = L_mult( exc_diffQ[i], y_gain ); /*Qexc_diff+15 */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ L32 = L_mult( exc_diffQ[i], y_gain ); /*Qexc_diff+15 */
exc_diffQ[i] = round_fx_sat( L_shl_sat( L32, tmp_exp ) ); /*Q_exc */
-#else
- exc_diffQ[i] = round_fx_o( L_shl_o( L32, tmp_exp, &Overflow ), &Overflow ); /*Q_exc */
-#endif
move16();
}
}
@@ -173,12 +153,6 @@ void Comp_and_apply_gain_ivas_fx(
Word16 L16, frac, exp1, tmp_exp;
Word32 L32;
Word16 Q_exc_diffQ[L_FRAME16k];
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* Recreate excitation for local synthesis and decoder */
StartBin = 0;
@@ -200,11 +174,7 @@ void Comp_and_apply_gain_ivas_fx(
FOR( i = StartBin; i < NB_Qbins + StartBin; i++ )
{
L32 = L_mult( exc_diffQ[i], y_gain ); /*Q_exc+16-tmp_exp */
-#ifdef ISSUE_1836_replace_overflow_libcom
- exc_diffQ[i] = round_fx_sat( L32 ); /*Q_exc-tmp_exp */
-#else
- exc_diffQ[i] = round_fx_o( L32, &Overflow ); /*Q_exc-tmp_exp */
-#endif
+ exc_diffQ[i] = round_fx_sat( L32 ); /*Q_exc-tmp_exp */
move16();
IF( exc_diffQ[i] )
{
@@ -230,22 +200,14 @@ void Comp_and_apply_gain_ivas_fx(
y_gain = extract_l( Pow2( 14, frac ) ); /* Put 14 as exponent so that */
/* output of Pow2() will be: */
/* 16384 < Pow2() <= 32767 */
-#ifdef ISSUE_1836_replace_overflow_libcom
- Ener_per_bd_yQ[i_band] = shl_sat( y_gain, sub( exp1, 13 ) ); /*Q13*/
-#else
- Ener_per_bd_yQ[i_band] = shl_o( y_gain, sub( exp1, 13 ), &Overflow ); /*Q13*/
-#endif
- move16(); /*Q1 */
+ Ener_per_bd_yQ[i_band] = shl_sat( y_gain, sub( exp1, 13 ) ); /*Q13*/
+ move16(); /*Q1 */
tmp_exp = add( add( exp1, 1 ), sub( *Q_exc, Qexc_diff ) );
FOR( i = StartBin; i < NB_Qbins + StartBin; i++ )
{
L32 = L_mult( exc_diffQ[i], y_gain ); /*Qexc_diff+15 */
-#ifdef ISSUE_1836_replace_overflow_libcom
- exc_diffQ[i] = round_fx_sat( L32 ); /*Q_exc-tmp_exp */
-#else
- exc_diffQ[i] = round_fx_o( L32, &Overflow ); /*Q_exc-tmp_exp */
-#endif
+ exc_diffQ[i] = round_fx_sat( L32 ); /*Q_exc-tmp_exp */
move16();
IF( exc_diffQ[i] )
{
diff --git a/lib_com/gs_noisefill_fx.c b/lib_com/gs_noisefill_fx.c
index 5b8c545410e71759371c36ee4bca56fdfdd0a689..2617bd5cec5817820e103de88e90af511f35e150 100644
--- a/lib_com/gs_noisefill_fx.c
+++ b/lib_com/gs_noisefill_fx.c
@@ -411,12 +411,6 @@ static void Decreas_freqPeak_fx(
Word16 lsf_new_diff[M];
Word16 tmp, tmp1, exp;
Word16 tmp2;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
move16(); /*ptr init*/
lsf_new_diff[0] = 0; /* prevent unitialized value */
move16();
@@ -474,13 +468,9 @@ static void Decreas_freqPeak_fx(
exp = norm_s( max_val );
tmp1 = div_s( shl( 1, sub( 14, exp ) ), max_val ); /*Q(29 - exp - Q_exc) */
L_tmp = L_mult( tmp, tmp1 ); /*Q(30 - exp) */
-#ifdef ISSUE_1836_replace_overflow_libcom
- tmp = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /*Q14 */
-#else
- tmp = round_fx_o( L_shl_o( L_tmp, exp, &Overflow ), &Overflow ); /*Q14 */
-#endif
- tmp = sub( 32767, tmp ); /*Q14 */
- L_tmp = L_mult( avrg, tmp ); /*Q_exc +15 */
+ tmp = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /*Q14 */
+ tmp = sub( 32767, tmp ); /*Q14 */
+ L_tmp = L_mult( avrg, tmp ); /*Q_exc +15 */
tmp = round_fx( L_shl( L_tmp, 1 ) );
tmp1 = negate( tmp );
@@ -534,12 +524,6 @@ static void envelop_modify_fx(
Word16 weight_fx;
Word32 L_exc_diffQ_fx[L_FRAME16k], exc_diffQ_max;
Word16 Q_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
start_band = i_mult( last_bin, 16 );
end_band = L_FRAME;
@@ -573,11 +557,7 @@ static void envelop_modify_fx(
/* output of Pow2() will be: */
/* 16384 < Pow2() <= 32767 */
exp = sub( exp, 14 );
-#ifdef ISSUE_1836_replace_overflow_libcom
Ener1_fx = mult_r( 13107, shl_sat( tmp, exp ) ); /*Q0 */
-#else
- Ener1_fx = mult_ro( 13107, shl_o( tmp, exp, &Overflow ), &Overflow ); /*Q0 */
-#endif
FOR( j = 0; j < 16; j++ )
{
@@ -603,11 +583,7 @@ static void envelop_modify_fx(
/* output of Pow2() will be: */
/* 16384 < Pow2() <= 32767 */
exp = sub( exp, 14 );
-#ifdef ISSUE_1836_replace_overflow_libcom
Ener1_fx = mult_r( 13107, shl_sat( tmp, exp ) ); /*Q0 */
-#else
- Ener1_fx = mult_r( 13107, shl_o( tmp, exp, &Overflow ) ); /*Q0 */
-#endif
src_fx = &exc_diffQ_fx[224];
FOR( j = 0; j < 32; j++ )
@@ -706,12 +682,6 @@ void highband_exc_dct_in_fx(
Word16 frac, exp, tmp1;
Word16 tmp2;
Word16 *end, Q_hb_exc;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
FOR( j = 10; j < MBANDS_GN; j++ )
{
@@ -726,15 +696,9 @@ void highband_exc_dct_in_fx(
/* output of Pow2() will be: */
/* 16384 < Pow2() <= 32767 */
exp = sub( exp, 14 );
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp1 = shl_sat( tmp, exp );
move16();
ener = add_sat( tmp1, ener ); /*Q0 */
-#else
- tmp1 = shl_o( tmp, exp, &Overflow );
- move16();
- ener = add_o( tmp1, ener, &Overflow ); /*Q0 */
-#endif
}
test();
@@ -963,14 +927,10 @@ void highband_exc_dct_in_fx(
FOR( i = sub( L_FRAME, 16 ); i < L_FRAME; i++ )
{
/*exc_dct_in[i] *= (0.067f*i-15.f); */
- tmp = mult_r( 17564, shl( i, 6 ) ); /*0.067 in Q18 and i in Q6= Q9 */
- tmp = sub( tmp, 7680 ); /*15 in Q9 = Q9 */
- L_tmp = L_mult( exc_dct_in[i], tmp ); /*Q(Q_exc+10) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ tmp = mult_r( 17564, shl( i, 6 ) ); /*0.067 in Q18 and i in Q6= Q9 */
+ tmp = sub( tmp, 7680 ); /*15 in Q9 = Q9 */
+ L_tmp = L_mult( exc_dct_in[i], tmp ); /*Q(Q_exc+10) */
exc_dct_in[i] = round_fx_sat( L_shl_sat( L_tmp, 6 ) ); /*Q_exc */
-#else
- exc_dct_in[i] = round_fx_o( L_shl_o( L_tmp, 6, &Overflow ), &Overflow ); /*Q_exc */
-#endif
}
}
@@ -1005,15 +965,9 @@ void highband_exc_dct_in_fx(
IF( GT_16( tmp, abs_s( *dst ) ) )
{
tmp2 = *src;
-#ifdef ISSUE_1836_replace_overflow_libcom
*src = mult_r( 16384, sub_sat( *src, abs_s( *dst ) ) ); /*Q_exc */
move16();
tmp = mult_r( 16384, add_sat( tmp2, abs_s( *dst ) ) ); /*Q_exc */
-#else
- *src = mult_r( 16384, sub_o( *src, abs_s( *dst ), &Overflow ) ); /*Q_exc */
- move16();
- tmp = mult_r( 16384, add_o( tmp2, abs_s( *dst ), &Overflow ) ); /*Q_exc */
-#endif
if ( tmp2 > 0 )
{
*src = tmp;
@@ -1102,12 +1056,6 @@ void highband_exc_dct_in_ivas_fx(
Word16 frac, exp, tmp1;
Word16 tmp2;
Word16 *end, Q_hb_exc;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
FOR( j = 10; j < MBANDS_GN; j++ )
{
@@ -1122,15 +1070,9 @@ void highband_exc_dct_in_ivas_fx(
/* output of Pow2() will be: */
/* 16384 < Pow2() <= 32767 */
exp = sub( exp, 14 );
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp1 = shl_sat( tmp, exp );
move16();
ener = add_sat( tmp1, ener ); /*Q0 */
-#else
- tmp1 = shl_o( tmp, exp, &Overflow );
- move16();
- ener = add_o( tmp1, ener, &Overflow ); /*Q0 */
-#endif
}
test();
@@ -1474,14 +1416,10 @@ void highband_exc_dct_in_ivas_fx(
FOR( i = sub( L_FRAME, 16 ); i < L_FRAME; i++ )
{
/*exc_dct_in[i] *= (0.067f*i-15.f); */
- tmp = mult_r( 17564, shl( i, 6 ) ); /*0.067 in Q18 and i in Q6= Q9 */
- tmp = sub( tmp, 7680 ); /*15 in Q9 = Q9 */
- L_tmp = L_mult( exc_dct_in[i], tmp ); /*Q(Q_exc+10) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ tmp = mult_r( 17564, shl( i, 6 ) ); /*0.067 in Q18 and i in Q6= Q9 */
+ tmp = sub( tmp, 7680 ); /*15 in Q9 = Q9 */
+ L_tmp = L_mult( exc_dct_in[i], tmp ); /*Q(Q_exc+10) */
exc_dct_in[i] = round_fx_sat( L_shl_sat( L_tmp, 6 ) ); /*Q_exc */
-#else
- exc_dct_in[i] = round_fx_o( L_shl_o( L_tmp, 6, &Overflow ), &Overflow ); /*Q_exc */
-#endif
}
}
@@ -1516,15 +1454,9 @@ void highband_exc_dct_in_ivas_fx(
IF( GT_16( tmp, abs_s( *dst ) ) )
{
tmp2 = *src;
-#ifdef ISSUE_1836_replace_overflow_libcom
*src = mult_r( 16384, sub_sat( *src, abs_s( *dst ) ) ); /*Q_exc */
move16();
tmp = mult_r( 16384, add_sat( tmp2, abs_s( *dst ) ) ); /*Q_exc */
-#else
- *src = mult_r( 16384, sub_o( *src, abs_s( *dst ), &Overflow ) ); /*Q_exc */
- move16();
- tmp = mult_r( 16384, add_o( tmp2, abs_s( *dst ), &Overflow ) ); /*Q_exc */
-#endif
IF( tmp2 > 0 )
{
*src = tmp;
diff --git a/lib_com/hp50_fx.c b/lib_com/hp50_fx.c
index 9d6f10ed2533a1b6c8028e3851235b18ae91e63f..1586bc252a2fec277b72b75bd4c19eb1257c7159 100644
--- a/lib_com/hp50_fx.c
+++ b/lib_com/hp50_fx.c
@@ -86,12 +86,6 @@ static void filter_2nd_order(
Word16 i;
Word16 x2, x1;
Word32 L_sum, L_y1, L_y2;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
-
/*
* Saturation: The states of the filter, namely L_y1 and L_y2 shall
@@ -109,17 +103,10 @@ static void filter_2nd_order(
L_sum = L_add( L_sum, HP50_Mpy_32_32_fix( mem[0], a2 ) ); /* y2*a2 */
L_sum = L_add( L_sum, HP50_Mpy_32_32_fix( mem[1], a1 ) ); /* y1*a1 */
-#ifdef ISSUE_1836_replace_overflow_libcom
L_y2 = L_shl_sat( L_sum, HP20_COEFF_SCALE );
BASOP_SATURATE_ERROR_OFF_EVS
BASOP_SATURATE_WARNING_OFF_EVS
signal[0] = round_fx_sat( L_shl_sat( L_y2, prescale ) );
-#else
- L_y2 = L_shl_o( L_sum, HP20_COEFF_SCALE, &Overflow );
- BASOP_SATURATE_ERROR_OFF_EVS
- BASOP_SATURATE_WARNING_OFF_EVS
- signal[0] = round_fx_o( L_shl_o( L_y2, prescale, &Overflow ), &Overflow );
-#endif
BASOP_SATURATE_WARNING_ON_EVS
@@ -131,17 +118,10 @@ static void filter_2nd_order(
L_sum = L_add( L_sum, HP50_Mpy_32_32_fix( mem[1], a2 ) ); /* y2*a2 */
L_sum = L_add( L_sum, HP50_Mpy_32_32_fix( L_y2, a1 ) ); /* y1*a1 */
-#ifdef ISSUE_1836_replace_overflow_libcom
L_y1 = L_shl_sat( L_sum, HP20_COEFF_SCALE );
BASOP_SATURATE_ERROR_OFF_EVS
BASOP_SATURATE_WARNING_OFF_EVS
signal[stride] = round_fx_sat( L_shl_sat( L_y1, prescale ) );
-#else
- L_y1 = L_shl_o( L_sum, HP20_COEFF_SCALE, &Overflow );
- BASOP_SATURATE_ERROR_OFF_EVS
- BASOP_SATURATE_WARNING_OFF_EVS
- signal[stride] = round_fx_o( L_shl_o( L_y1, prescale, &Overflow ), &Overflow );
-#endif
BASOP_SATURATE_WARNING_ON_EVS
move16();
@@ -157,17 +137,10 @@ static void filter_2nd_order(
L_sum = L_add( L_sum, HP50_Mpy_32_32_fix( L_y2, a2 ) );
L_sum = L_add( L_sum, HP50_Mpy_32_32_fix( L_y1, a1 ) );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_y2 = L_shl_sat( L_sum, HP20_COEFF_SCALE );
BASOP_SATURATE_ERROR_OFF_EVS
BASOP_SATURATE_WARNING_OFF_EVS
signal[i_mult( i, stride )] = round_fx_sat( L_shl_sat( L_y2, prescale ) );
-#else
- L_y2 = L_shl_o( L_sum, HP20_COEFF_SCALE, &Overflow );
- BASOP_SATURATE_ERROR_OFF_EVS
- BASOP_SATURATE_WARNING_OFF_EVS
- signal[i_mult( i, stride )] = round_fx_o( L_shl_o( L_y2, prescale, &Overflow ), &Overflow );
-#endif
BASOP_SATURATE_WARNING_ON_EVS
/* y[i+1] = b2*x[i-1] + b1*x[i-0] + b2*x[i+1] + a2*y[i-1] + a1*y[i+0]; */
BASOP_SATURATE_ERROR_ON_EVS
@@ -178,17 +151,10 @@ static void filter_2nd_order(
L_sum = L_add( L_sum, HP50_Mpy_32_32_fix( L_y1, a2 ) );
L_sum = L_add( L_sum, HP50_Mpy_32_32_fix( L_y2, a1 ) );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_y1 = L_shl_sat( L_sum, HP20_COEFF_SCALE );
BASOP_SATURATE_ERROR_OFF_EVS
BASOP_SATURATE_WARNING_OFF_EVS
signal[i_mult( add( i, 1 ), stride )] = round_fx_sat( L_shl_sat( L_y1, prescale ) );
-#else
- L_y1 = L_shl_o( L_sum, HP20_COEFF_SCALE, &Overflow );
- BASOP_SATURATE_ERROR_OFF_EVS
- BASOP_SATURATE_WARNING_OFF_EVS
- signal[i_mult( add( i, 1 ), stride )] = round_fx_o( L_shl_o( L_y1, prescale, &Overflow ), &Overflow );
-#endif
BASOP_SATURATE_WARNING_ON_EVS
move16();
}
@@ -221,12 +187,6 @@ void hp20( Word16 signal[], /* i/o: signal to filter any *
{
Word32 a1, b1, a2, b2;
Word16 prescale, prescaleOld, diff;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
-
prescale = getScaleFactor16( signal, lg );
prescaleOld = extract_l( mem[4] );
@@ -235,11 +195,7 @@ void hp20( Word16 signal[], /* i/o: signal to filter any *
{
prescale = s_min( prescale, diff );
}
-#ifdef ISSUE_1836_replace_overflow_libcom
diff = norm_l( L_shl_sat( mem[3], prescaleOld ) );
-#else
- diff = norm_l( L_shl_o( mem[3], prescaleOld, &Overflow ) );
-#endif
if ( mem[3] != 0 )
{
prescale = s_min( prescale, diff );
@@ -249,7 +205,6 @@ void hp20( Word16 signal[], /* i/o: signal to filter any *
IF( prescale != prescaleOld )
{
diff = sub( prescale, prescaleOld );
-#ifdef ISSUE_1836_replace_overflow_libcom
mem[0] = L_shr_sat( mem[0], diff );
move32();
mem[1] = L_shr_sat( mem[1], diff );
@@ -257,15 +212,6 @@ void hp20( Word16 signal[], /* i/o: signal to filter any *
mem[2] = L_shr_sat( mem[2], diff );
move32();
mem[3] = L_shr_sat( mem[3], diff ); //?sat
-#else
- mem[0] = L_shr_o( mem[0], diff, &Overflow );
- move32();
- mem[1] = L_shr_o( mem[1], diff, &Overflow );
- move32();
- mem[2] = L_shr_o( mem[2], diff, &Overflow );
- move32();
- mem[3] = L_shr_o( mem[3], diff, &Overflow );
-#endif
move32();
mem[4] = L_deposit_l( prescale );
}
@@ -340,7 +286,6 @@ void hp20( Word16 signal[], /* i/o: signal to filter any *
}
-#ifdef HP20_FIX32_RECODING
void hp20_fx_32_opt(
Word32 signal_fx[],
const Word16 lg,
@@ -378,17 +323,10 @@ void hp20_fx_32_opt(
}
diff = sub( prescale, prescaleOld );
-#ifdef ISSUE_1836_replace_overflow_libcom
mem_fx[0] = L_shr_sat( mem_fx[0], diff );
mem_fx[1] = L_shr_sat( mem_fx[1], diff );
mem_fx[2] = L_shr_sat( mem_fx[2], diff );
mem_fx[3] = L_shr_sat( mem_fx[3], diff );
-#else
- mem_fx[0] = L_shr_o( mem_fx[0], diff, &Overflow );
- mem_fx[1] = L_shr_o( mem_fx[1], diff, &Overflow );
- mem_fx[2] = L_shr_o( mem_fx[2], diff, &Overflow );
- mem_fx[3] = L_shr_o( mem_fx[3], diff, &Overflow );
-#endif
move32();
move32();
move32();
@@ -509,7 +447,8 @@ void hp20_fx_32_opt(
return;
}
-#endif
+
+
void hp20_fx_32(
Word32 signal_fx[],
const Word16 lg,
diff --git a/lib_com/hq2_bit_alloc_fx.c b/lib_com/hq2_bit_alloc_fx.c
index 868617b84d4ec48060a84489d7e8083584a7d995..0f097b669510a450f8ecbd9de929eb230908036a 100644
--- a/lib_com/hq2_bit_alloc_fx.c
+++ b/lib_com/hq2_bit_alloc_fx.c
@@ -312,12 +312,6 @@ void hq2_bit_alloc_har_fx(
Word16 exp_shift;
-#ifndef ISSUE_1836_replace_overflow_libcom
- Flag Overflow;
- Overflow = 0;
- move32();
-#endif
-
L_THR1 = L_shl( L_deposit_l( THR1 ), SWB_BWE_LR_QRk );
L_THR2 = L_shl( L_deposit_l( THR2 ), SWB_BWE_LR_QRk );
L_THR3 = L_shl( L_deposit_l( THR3 ), SWB_BWE_LR_QRk );
@@ -572,13 +566,7 @@ void hq2_bit_alloc_har_fx(
L_temp = Mult_32_16( L_Ravg_sub[GRP_SB - 1], sub( GRP_SB, 1 ) ); /* Qbe+0+1 */
L_temp = Mult_32_16( L_temp, Inv_norm_sum_fx ); /* Qbe+1+QIpb+1 */
-#ifdef ISSUE_1836_replace_overflow_libcom
lf_hf_ge_r_fx = round_fx_sat( L_shl_sat( L_temp, sub( 15 + 16, sub( add( SWB_BWE_LR_Qbe, QIns ), 30 ) ) ) );
-#else
- lf_hf_ge_r_fx = round_fx_o( L_shl_o( L_temp, sub( 15 + 16, sub( add( SWB_BWE_LR_Qbe, QIns ), 30 ) ), &Overflow ), &Overflow );
- Overflow = 0; /* reset BASOP Overflow */
- move32();
-#endif
exp_normn = norm_s( norm_sum_fx );
exp_normn = sub( exp_normn, 1 );
diff --git a/lib_com/hq2_core_com_fx.c b/lib_com/hq2_core_com_fx.c
index d6606178d4ab0a6e2351f70f98e1e6f25feb6cf0..a77513009f4ab74d365878332449c45fe86072e8 100644
--- a/lib_com/hq2_core_com_fx.c
+++ b/lib_com/hq2_core_com_fx.c
@@ -88,13 +88,6 @@ void mdct_spectrum_denorm_fx(
Word16 cond_fx;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16(); /* allow overflow happen. */
-#endif
-#endif
-
exp_safe = 4; /* safe bit for overflow */
move16();
@@ -165,13 +158,8 @@ void mdct_spectrum_denorm_fx(
pd_fx = div_s( shl( npulses[k], exp_normn ), shl( band_width[k], exp_normd ) ); /* 15 + (exp_norm - exp_normd) */
Qpd = add( sub( exp_normn, exp_normd ), 15 );
-#ifdef ISSUE_1836_replace_overflow_libcom
cond_fx = sub( shl_sat( pd_fx, sub( 15, Qpd ) ), pd_thresh_fx /*Q15*/ ); /* Q15 */
-#else
- cond_fx = sub( shl_o( pd_fx, sub( 15, Qpd ), &Overflow ), pd_thresh_fx /*Q15*/ ); /* Q15 */
- Overflow = 0;
-#endif
- move16(); /* allow overflow happen. */
+ move16(); /* allow overflow happen. */
IF( cond_fx < 0 )
{
/*gain_tweak = (float) pow (2.0f, (ld_slope * log2_f (pd / pd_thresh))); */
@@ -202,11 +190,7 @@ void mdct_spectrum_denorm_fx(
/*gamma *= gain_tweak; */
L_tmp = L_mult( gamma_fx, gain_tweak_fx ); /* Qgamma+Qtweak+1 */
exp_norm = norm_l( L_tmp );
-#ifdef ISSUE_1836_replace_overflow_libcom
gamma_fx = round_fx_sat( L_shl( L_tmp, exp_norm ) );
-#else
- gamma_fx = round_fx_o( L_shl_o( L_tmp, exp_norm, &Overflow ), &Overflow );
-#endif
Qgamma = sub( add( add( Qgamma, Qtweak ), exp_norm ), 15 ); /*Qgamma+Qtweak+1+exp_norm-16; */
}
@@ -270,13 +254,6 @@ void mdct_spectrum_denorm_ivas_fx(
Word16 cond_fx;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16(); /* allow overflow happen. */
-#endif
-#endif
-
exp_safe = 4; /* safe bit for overflow */
move16();
@@ -347,13 +324,8 @@ void mdct_spectrum_denorm_ivas_fx(
pd_fx = div_s( shl( npulses[k], exp_normn ), shl( band_width[k], exp_normd ) ); /* 15 + (exp_normn + exp_normd) */
Qpd = add( sub( exp_normn, exp_normd ), 15 );
-#ifdef ISSUE_1836_replace_overflow_libcom
cond_fx = sub( shl_sat( pd_fx, sub( 15, Qpd ) ), pd_thresh_fx /*Q15*/ ); /* Q15 */
-#else
- cond_fx = sub( shl_o( pd_fx, sub( 15, Qpd ), &Overflow ), pd_thresh_fx /*Q15*/ ); /* Q15 */
- Overflow = 0;
-#endif
- move16(); /* allow overflow happen. */
+ move16(); /* allow overflow happen. */
IF( cond_fx < 0 )
{
/*gain_tweak = (float) pow (2.0f, (ld_slope * log2_f (pd / pd_thresh))); */
@@ -384,11 +356,7 @@ void mdct_spectrum_denorm_ivas_fx(
/*gamma *= gain_tweak; */
L_tmp = L_mult( gamma_fx, gain_tweak_fx ); /* Qgamma+Qtweak+1 */
exp_norm = norm_l( L_tmp );
-#ifdef ISSUE_1836_replace_overflow_libcom
gamma_fx = round_fx_sat( L_shl( L_tmp, exp_norm ) );
-#else
- gamma_fx = round_fx_o( L_shl_o( L_tmp, exp_norm, &Overflow ), &Overflow );
-#endif
Qgamma = sub( add( add( Qgamma, Qtweak ), exp_norm ), 15 ); /*Qgamma+Qtweak+1+exp_norm-16; */
}
diff --git a/lib_com/hq2_noise_inject_fx.c b/lib_com/hq2_noise_inject_fx.c
index 9f013a3b0df3c7101f8ff8db272e84ad1338dc29..76efad10e991b289bd73e343153f8440468cc7b5 100644
--- a/lib_com/hq2_noise_inject_fx.c
+++ b/lib_com/hq2_noise_inject_fx.c
@@ -80,23 +80,13 @@ void hq2_noise_inject_fx(
Word16 i, j, k, ni_end_band, satur, count[BANDS_MAX], max_pos_pulse, pos;
Word16 sb = bands;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
satur = 0;
move16();
FOR( i = 0; i < bands; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
Ep_fx[i] = L_shl_sat( Ep_fx[i], 6 ); /* Q-6 -> Q0 */
-#else
- Ep_fx[i] = L_shl_o( Ep_fx[i], 6, &Overflow ); /* Q-6 -> Q0 */
-#endif
move32();
}
@@ -161,11 +151,7 @@ void hq2_noise_inject_fx(
Q_env_fx[k] = sub( 31, exp2 );
move16();
tmp = sub( 17, Q_env_fx[k] );
-#ifdef ISSUE_1836_replace_overflow_libcom
env_fx2[k] = extract_h( L_shl_sat( env_fx[k], tmp ) ); /*Q1 */
-#else
- env_fx2[k] = extract_h( L_shl_o( env_fx[k], tmp, &Overflow ) ); /*Q1 */
-#endif
peak_fx[k] = 0;
move16();
count[k] = 0;
@@ -176,11 +162,7 @@ void hq2_noise_inject_fx(
FOR( i = band_start[k]; i <= band_end[k]; i++ )
{
L_tmp = L_mult0( y2hat_fx[i], y2hat_fx[i] ); /* Q0 */
-#ifdef ISSUE_1836_replace_overflow_libcom
Ep_fx[k] = L_sub_sat( Ep_fx[k], L_tmp );
-#else
- Ep_fx[k] = L_sub_o( Ep_fx[k], L_tmp, &Overflow );
-#endif
move32(); /* Q0 */
IF( GT_16( abs_s( y2hat_fx[i] ), peak_fx[k] ) )
{
@@ -400,12 +382,8 @@ void hq2_noise_inject_fx(
}
ELSE IF( count[k - 1] == 0 && tmp4 > 0 )
{
- L_tmp = L_mult( env_fx2[k - 1], tmp ); /* Q(1+Q_speech+1 = Q_speech+2) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ L_tmp = L_mult( env_fx2[k - 1], tmp ); /* Q(1+Q_speech+1 = Q_speech+2) */
fac_fx = extract_h( L_shl_sat( L_tmp, sub( 26, Q_speech ) ) ); /*Q12 */
-#else
- fac_fx = extract_h( L_shl_o( L_tmp, sub( 26, Q_speech ), &Overflow ) ); /*Q12 */
-#endif
}
}
@@ -485,11 +463,7 @@ void hq2_noise_inject_fx(
}
L_tmp = Mult_32_16( Ep_fx[k], fac_fx ); /*Q(Q_Ep_fx[k]+12-15 = Q_Ep_fx[k]-3) */
-#ifdef ISSUE_1836_replace_overflow_libcom
ni_gain_fx[k] = L_shr_sat( L_tmp, sub( Q_Ep_fx[k], 20 ) );
-#else
- ni_gain_fx[k] = L_shr_o( L_tmp, sub( Q_Ep_fx[k], 20 ), &Overflow );
-#endif
move32(); /*Q17 */
}
ELSE
@@ -611,22 +585,14 @@ void hq2_noise_inject_fx(
L_tmp = Mult_32_16( Ep_fx[k], tmp ); /*Q(Q_Ep_fx[k]+28-Q_speech-15 = Q_Ep_fx[k]+13-Q_speech) */
tmp = sub( Q_Ep_fx[k], Q_speech );
tmp = sub( 15, tmp );
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp = extract_h( L_shl_sat( L_tmp, tmp ) ); /*Q12 */
-#else
- tmp = extract_h( L_shl_o( L_tmp, tmp, &Overflow ) ); /*Q12 */
-#endif
}
ELSE
{
tmp = 0x7fff; /*Q0 */
L_tmp = Mult_32_16( Ep_fx[k], tmp ); /*Q(Q_Ep_fx[k]+0-15 = Q_Ep_fx[k]-15) */
tmp = sub( 43, Q_Ep_fx[k] );
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp = extract_h( L_shl_sat( L_tmp, tmp ) ); /*Q12 */
-#else
- tmp = extract_h( L_shl_o( L_tmp, tmp, &Overflow ) ); /*Q12 */
-#endif
}
fac_fx = s_max( tmp, 4096 /* 1 in Q12 */ ); /*Q12 */
@@ -638,11 +604,7 @@ void hq2_noise_inject_fx(
IF( band_width[k] != 0 )
{
Q_speech = norm_s( band_width[k] );
-#ifdef ISSUE_1836_replace_overflow_libcom
- tmp = shl_sat( band_width[k], Q_speech ); /*Q(Q_speech) */
-#else
- tmp = shl_o( band_width[k], Q_speech, &Overflow ); /*Q(Q_speech) */
-#endif
+ tmp = shl_sat( band_width[k], Q_speech ); /*Q(Q_speech) */
tmp = div_s( 16384 /* 0.5 in Q15 */, tmp ); /*Q(15+14-Q_speech) */
}
ELSE
@@ -652,16 +614,12 @@ void hq2_noise_inject_fx(
move16();
move16();
}
- tmp1 = sub( fac_fx, 4096 /* 1 in Q12 */ ); /*Q12 */
- L_tmp = L_mult( tmp1, j ); /*Q13 */
- L_tmp = Mult_32_16( L_tmp, tmp ); /*Q(13+29-Q_speech-15 = 27-Q_speech) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ tmp1 = sub( fac_fx, 4096 /* 1 in Q12 */ ); /*Q12 */
+ L_tmp = L_mult( tmp1, j ); /*Q13 */
+ L_tmp = Mult_32_16( L_tmp, tmp ); /*Q(13+29-Q_speech-15 = 27-Q_speech) */
tmp = extract_h( L_shl_sat( L_tmp, add( 1, Q_speech ) ) ); /*Q12 */
-#else
- tmp = extract_h( L_shl_o( L_tmp, add( 1, Q_speech ), &Overflow ) ); /*Q12 */
-#endif
- tmp = sub( fac_fx, tmp ); /*Q12 */
- L_tmp = Mult_32_16( ni_gain_fx[k], tmp ); /*Q(17+12-15=14) */
+ tmp = sub( fac_fx, tmp ); /*Q12 */
+ L_tmp = Mult_32_16( ni_gain_fx[k], tmp ); /*Q(17+12-15=14) */
L_y2[i] = L_add( L_y2[i], L_shr( Mult_32_16( L_tmp, rand_fx ), 2 ) );
move32(); /*Q12 */
}
diff --git a/lib_com/ifft_rel_fx.c b/lib_com/ifft_rel_fx.c
index 2cc96b0c9eec70660930265cb76e1219b32d493b..f404a10c8f72d25c02b3d00260226591f0399cad 100644
--- a/lib_com/ifft_rel_fx.c
+++ b/lib_com/ifft_rel_fx.c
@@ -78,13 +78,6 @@ void ifft_rel_fx(
Word16 cc1, cc3, ss1, ss3;
Word16 tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
-
/*-----------------------------------------------------------------*
* ifft
@@ -111,7 +104,6 @@ void ifft_rel_fx(
FOR( i = is; i < n; i += id )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
t1 = sub_sat( *xi1, *xi3 ); /*Qx*/
*xi1 = add_sat( *xi1, *xi3 ); /*Qx*/
move16();
@@ -121,21 +113,9 @@ void ifft_rel_fx(
move16();
*xi4 = add_sat( t1, shl_sat( *xi4, 1 ) ); /*Qx*/
move16();
-#else
- t1 = sub_o( *xi1, *xi3, &Overflow ); /*Qx*/
- *xi1 = add_o( *xi1, *xi3, &Overflow ); /*Qx*/
- move16();
- *xi2 = shl_o( *xi2, 1, &Overflow ); /*Qx*/
- move16();
- *xi3 = sub_o( t1, shl_o( *xi4, 1, &Overflow ), &Overflow ); /*Qx*/
- move16();
- *xi4 = add_o( t1, shl_o( *xi4, 1, &Overflow ), &Overflow ); /*Qx*/
- move16();
-#endif
IF( NE_16( n4, 1 ) )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
t1 = mult_r( sub_sat( *( xi2 + n8 ), *( xi1 + n8 ) ), INV_SQR2_FX /*Q15*/ ); /*Qx*/
t2 = mult_r( add_sat( *( xi4 + n8 ), *( xi3 + n8 ) ), INV_SQR2_FX /*Q15*/ ); /*Qx*/
@@ -147,19 +127,6 @@ void ifft_rel_fx(
move16();
*( xi4 + n8 ) = shl_sat( sub_sat( t1, t2 ), 1 ); /*Qx*/
move16();
-#else
- t1 = mult_r( sub_o( *( xi2 + n8 ), *( xi1 + n8 ), &Overflow ), INV_SQR2_FX /*Q15*/ ); /*Qx*/
- t2 = mult_r( add_o( *( xi4 + n8 ), *( xi3 + n8 ), &Overflow ), INV_SQR2_FX /*Q15*/ ); /*Qx*/
-
- *( xi1 + n8 ) = add_o( *( xi1 + n8 ), *( xi2 + n8 ), &Overflow ); /*Qx*/
- move16();
- *( xi2 + n8 ) = sub_o( *( xi4 + n8 ), *( xi3 + n8 ), &Overflow ); /*Qx*/
- move16();
- *( xi3 + n8 ) = negate( shl_o( add_o( t2, t1, &Overflow ), 1, &Overflow ) ); /*Qx*/
- move16();
- *( xi4 + n8 ) = shl_o( sub_o( t1, t2, &Overflow ), 1, &Overflow ); /*Qx*/
- move16();
-#endif
}
xi1 += id;
xi2 += id;
@@ -207,7 +174,6 @@ void ifft_rel_fx(
FOR( i = is; i < n; i += id )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
t1 = sub_sat( *xup1, *xdn6 ); /*Qx*/
*xup1 = add_sat( *xup1, *xdn6 ); /*Qx*/
move16();
@@ -245,45 +211,6 @@ void ifft_rel_fx(
xdn8 += n4;
*xdn8 = add_sat( mult_r( t2, cc3 ), mult_r( t1, ss3 ) ); /*Qx*/
move16();
-#else
- t1 = sub_o( *xup1, *xdn6, &Overflow ); /*Qx*/
- *xup1 = add_o( *xup1, *xdn6, &Overflow ); /*Qx*/
- move16();
- xup1 += n4;
- xdn6 -= n4;
-
- t2 = sub_o( *xdn6, *xup1, &Overflow ); /*Qx*/
- *xdn6 = add_o( *xup1, *xdn6, &Overflow ); /*Qx*/
- move16();
-
- xdn6 += n4;
- t3 = add_o( *xdn8, *xup3, &Overflow ); /*Qx*/
- *xdn6 = sub_o( *xdn8, *xup3, &Overflow ); /*Qx*/
- move16();
-
- xup3 += n4;
- xdn8 -= n4;
-
- t4 = add_o( *xup3, *xdn8, &Overflow ); /*Qx*/
- *xup1 = sub_o( *xup3, *xdn8, &Overflow ); /*Qx*/
- move16();
-
- t5 = sub_o( t1, t4, &Overflow ); /*Qx*/
- t1 = add_o( t1, t4, &Overflow ); /*Qx*/
- t4 = sub_o( t2, t3, &Overflow ); /*Qx*/
- t2 = add_o( t2, t3, &Overflow ); /*Qx*/
- *xup3 = sub_o( mult_r( t1, cc3 ), mult_r( t2, ss3 ), &Overflow ); /*Qx*/
- move16();
- xup3 -= n4;
- *xup3 = add_o( mult_r( t5, cc1 ), mult_r( t4, ss1 ), &Overflow ); /*Qx*/
- move16();
- *xdn8 = sub_o( mult_r( t5, ss1 ), mult_r( t4, cc1 ), &Overflow ); /*Qx*/
- move16();
-
- xdn8 += n4;
- *xdn8 = add_o( mult_r( t2, cc3 ), mult_r( t1, ss3 ), &Overflow ); /*Qx*/
- move16();
-#endif
xup1 -= n4;
xup1 += id;
@@ -314,17 +241,10 @@ void ifft_rel_fx(
{
r1 = *xi0;
move16();
-#ifdef ISSUE_1836_replace_overflow_libcom
*xi0 = add_sat( r1, *xi1 ); /*Qx*/
move16();
*xi1 = sub_sat( r1, *xi1 ); /*Qx*/
move16();
-#else
- *xi0 = add_o( r1, *xi1, &Overflow ); /*Qx*/
- move16();
- *xi1 = sub_o( r1, *xi1, &Overflow ); /*Qx*/
- move16();
-#endif
xi0 += id;
xi1 += id;
}
diff --git a/lib_com/igf_base_fx.c b/lib_com/igf_base_fx.c
index 68853974cd23a96ce03f4d71bd977c1677deaadc..ae2e9c51bd168a96b6229eb421d5438425568a83 100644
--- a/lib_com/igf_base_fx.c
+++ b/lib_com/igf_base_fx.c
@@ -1115,61 +1115,25 @@ void IGFCommonFuncsCalcSfbEnergyPowerSpec( const Word16 startSfb, /**< in
)
{
Word16 /*Q0*/ sfb;
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Word16 /*Q0*/ line;
- Word32 L_c;
-#endif
-
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Flag Overflow = 0;
- Flag Carry = 0;
- move16();
- move16();
-#endif
-#endif
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- FOR( sfb = startSfb; sfb < stopSfb; sfb++ )
- {
- sfbEnergy[sfb] = L_deposit_l( 0 );
- move32();
- }
-#endif
IF( NULL == pPowerSpectrum )
{
-#ifdef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
FOR( sfb = startSfb; sfb < stopSfb; sfb++ )
{
sfbEnergy[sfb] = L_deposit_l( 0 );
move32();
}
-#endif
+
return;
}
FOR( sfb = startSfb; sfb < stopSfb; sfb++ )
{
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_c = L_deposit_l( 0 );
- FOR( line = swb_offset[sfb]; line < swb_offset[sfb + 1]; line++ )
- {
- Carry = 0;
- move16();
- sfbEnergy[sfb] = L_add_co( sfbEnergy[sfb], pPowerSpectrum[line], &Carry, &Overflow );
- move32();
- Overflow = 0;
- move16();
- L_c = L_macNs_co( L_c, 0, 0, &Carry, &Overflow );
- }
- sfbEnergy[sfb] = norm_llQ31( L_c, sfbEnergy[sfb], &( sfbEnergy_exp[sfb] ) );
- move32();
-#else
sfbEnergy[sfb] = sum_array_norm( pPowerSpectrum + swb_offset[sfb],
swb_offset[sfb + 1] - swb_offset[sfb],
&( sfbEnergy_exp[sfb] ) );
move32();
-#endif
+
sfbEnergy_exp[sfb] = add( sfbEnergy_exp[sfb], *pPowerSpectrum_exp );
move16();
}
diff --git a/lib_com/interpol_fx.c b/lib_com/interpol_fx.c
index f299c1d61b7485b4afb4e22ef8abcbe7eb57023f..7d4c2208de4c78c372e870f16da623948d69fa93 100644
--- a/lib_com/interpol_fx.c
+++ b/lib_com/interpol_fx.c
@@ -71,6 +71,7 @@ Word32 Interpol_lc_fx( /* o : interpolated value
}
L_sum = W_shl_sat_l( L_sum64, 1 ); /*Q15*/
}
+
return L_sum;
}
@@ -82,11 +83,6 @@ Word16 Interpol_4( /* Qx o : interpolated value */
{
Word16 i;
Word32 L_sum;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
x = x - L_INTERPOL1 + 1;
@@ -103,13 +99,8 @@ Word16 Interpol_4( /* Qx o : interpolated value */
}
BASOP_SATURATE_WARNING_OFF_EVS
/* Here, saturation might occur by intention */
-#ifdef ISSUE_1836_replace_overflow_libcom
L_sum = L_shl_sat( L_sum, 1 ); /*Qx+14+2*/
BASOP_SATURATE_WARNING_ON_EVS
+
return round_fx_sat( L_sum ); /*Qx*/
-#else
- L_sum = L_shl_o( L_sum, 1, &Overflow ); /*Qx+14+2*/
- BASOP_SATURATE_WARNING_ON_EVS
- return round_fx_o( L_sum, &Overflow ); /*Qx*/
-#endif
}
diff --git a/lib_com/ivas_cnst.h b/lib_com/ivas_cnst.h
index 69822b590c9f8492575213d00b803365948642e7..66e8f6dfa07ed4629c416bced48857875491f2f6 100644
--- a/lib_com/ivas_cnst.h
+++ b/lib_com/ivas_cnst.h
@@ -44,46 +44,33 @@
* mathematical constants
*----------------------------------------------------------------------------------*/
-#define PI_OVER_2 ( EVS_PI / 2.0f )
-#define PI_OVER_180 ( EVS_PI / 180.0f )
#define ONE_BY_PI_OVER_180_Q25 ( 1922527360 ) // Q25
-#define PI_OVER_180_Q22 ( 73204 ) // Q22
-#define _180_OVER_PI ( 180.0f / EVS_PI )
-#define _180_OVER_PI_Q25 ( 1922527338 ) // Q25
-#define PI_OVER_180_Q25 ( 585635 ) // Q25
+#define PI_OVER_180_Q22 ( 73204 ) // ( EVS_PI / 180.0f ) in Q22
+#define _180_OVER_PI_Q25 ( 1922527338 ) // ( 180.0f / EVS_PI ) in Q25
+#define PI_OVER_180_Q25 ( 585635 ) // ( EVS_PI / 180.0f ) in Q25
#define _180_IN_Q22 ( 754974720 ) // Q22
#define _360_IN_Q22 ( 1509949440 ) // Q22
-#define _180_OVER_PI_FX ( 58670 ) // Q10
-#define PI_OVER_180_Q15 ( 572 ) // Q15
-#define _180_OVER_PI_Q9 ( 29335 ) // Q9
+#define _180_OVER_PI_FX ( 58670 ) // ( 180.0f / EVS_PI ) in Q10
+#define PI_OVER_180_Q15 ( 572 ) // ( EVS_PI / 180.0f ) in Q15
+#define _180_OVER_PI_Q9 ( 29335 ) // ( 180.0f / EVS_PI ) in Q9
#define PI_OVER_4_Q29 ( 421657440 ) // Q29
-#define _180_OVER_PI_Q9 ( 29335 ) // Q9
#define PI_OVER_Q29 ( 1686629760 ) // Q29
#define Q31_0_99 ( 2126008811 ) // Q31
#define Q31_0_01 ( 21474836 ) // Q31
#define PI_OVER_180_FX ( 37480660 ) // Q31
#define PI_OVER_4_Q29 ( 421657440 ) // Q29
-#define PI_OVER_Q29 ( 1686629760 ) // Q29
#define PI2_C_ADP_RATE_Q31 ( 449767936 ) // Q31 (2.0f * EVS_PI * pOTR->centerAdaptationRate)
#define PI2_C_Q28 ( 1686629760 ) // Q28
#define OFF_C_ADP_RATE_Q31 ( 268435456 ) // Q31
#define C_ADP_RATE_Q31 ( 71582792 ) // Q31
+#define SQRT2_FX 1518500250 /* 1.414213562373095f in Q30 */
+#define SQRT2_OVER_2_FX 1518500250 /* (SQRT2 / 2.0f) in Q31 */
+#define INV_SQRT2_FX 1518500224 /* 1/sqrt(2) in Q31 */
+#define INV_SQRT2_FX_Q15 23170 /* 1/sqrt(2) Q15 */
+#define INV_SQRT3_FX 18918 /* 1/sqrt(3) Q15 */
-#define SQRT2 1.414213562373095f
-#define SQRT2_FIXED 1518500250 // Q30
-#define SQRT2_OVER_2 (SQRT2 / 2.0f)
-#define SQRT2_OVER_2_FIXED 1518500250 // Q31
-
-#define INV_SQRT2 7.071067811865475e-1f /* 1/sqrt(2) */
-#define INV_SQRT3 0.577350269189626f /* 1/sqrt(3) */
-#define INV_SQRT2_FX ( 1518500224 ) /* 1/sqrt(2) in Q31 */
-
-#define INV_SQRT2_FX_Q15 ( 23170 ) /* 1/sqrt(2) Q15 */
-#define INV_SQRT3_FX ( 18918 ) /* 1/sqrt(3) Q15 */
-
-#define LOG_10 2.30258509299f
-
+#define INV_1000_Q31 2147484 /*1/1000 IN Q31*/
/*----------------------------------------------------------------------------------*
* IVAS formats
@@ -164,7 +151,7 @@ typedef enum
#define MAX_INTERN_CHANNELS 16 /* Maximum number of intern channels (HOA 3rd order) */
#define HEAD_ROTATION_HOA_ORDER 3 /* HOA 3rd order */
#define MAX_CICP_CHANNELS 16 /* max channels for loudspeaker layouts (16 for custom layouts)*/
-#define MAX_OUTPUT_CHANNELS 16 /* Maximum number of output channels (HOA 3rd order), == IVAS_MAX_OUTPUT_CHANNELS */
+#define MAX_OUTPUT_CHANNELS 16 /* Maximum number of output channels (HOA 3rd order) without separate objects in combined formats */
#define MAX_OUTPUT_CHANNELS_IN_DIEGETIC_PAN 2 /* Maximum number of output channels with non diegetic panning */
#define BINAURAL_CHANNELS 2 /* number of channels for binaural output configuration */
@@ -208,7 +195,11 @@ typedef enum
#define MAX_JBM_L_FRAME48k 1920
#define MAX_JBM_L_FRAME_NS 40000000L
#define MAX_SPAR_INTERNAL_CHANNELS IVAS_SPAR_MAX_CH
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+#define MAX_CLDFB_DIGEST_CHANNELS 3 /* == maximum of ParamISM TCs and ParamMC TCs */
+#else
#define MAX_CLDFB_DIGEST_CHANNELS (FOA_CHANNELS + MAX_NUM_OBJECTS)
+#endif
typedef enum
{
@@ -262,6 +253,9 @@ typedef enum
/* format signaling in SID frames */
#define SID_FORMAT_NBITS 3 /* Bit 0 | Bit 1 | Bit 2 */
/*-------|-------|------ */
+#ifdef FIX_1384_MSAN_ivas_spar_dec_open
+#define SID_FORMAT_NONE (-0x1) /* n/a| n/a| n/a*/
+#endif
#define SID_DFT_STEREO 0x0 /* 0| 0| 0 */
#define SID_MDCT_STEREO 0x1 /* 1| 0| 0 */
#define SID_ISM 0x2 /* 0| 1| 0 */
@@ -341,36 +335,24 @@ typedef enum
#define ADJUST_ISM_BRATE_POS 8000
#define ISM_AZIMUTH_NBITS 7
-#define ISM_AZIMUTH_MIN -180.0f
-#define ISM_AZIMUTH_MAX 180.0f
-#define ISM_AZIMUTH_MIN_FX ( -754974720 ) // Q22
-#define ISM_AZIMUTH_MAX_FX ( 754974720 ) // Q22
-#define ISM_AZIMUTH_LOW_BORDER -140.0f
-#define ISM_AZIMUTH_HIGH_BORDER 135.0f
-#define ISM_AZIMUTH_LOW_BORDER_FX ( -587202560 ) // Q22
-#define ISM_AZIMUTH_HIGH_BORDER_FX ( 566231040 ) // Q22
+#define ISM_AZIMUTH_MIN_FX -754974720 /* -180.0f in Q22 */
+#define ISM_AZIMUTH_MAX_FX 754974720 /* 180.0f in Q22 */
+#define ISM_AZIMUTH_LOW_BORDER_FX -587202560 /* -140.0f in Q22 */
+#define ISM_AZIMUTH_HIGH_BORDER_FX 566231040 /* 135.0f in Q22 */
#define ISM_ELEVATION_NBITS 6
-#define ISM_ELEVATION_MIN -90.0f
-#define ISM_ELEVATION_MAX 90.0f
-#define ISM_ELEVATION_MIN_FX ( -377487360 ) // Q22
-#define ISM_ELEVATION_MAX_FX ( 377487360 ) // Q22
-#define ISM_ELEVATION_LOW_BORDER -70.0f
-#define ISM_ELEVATION_HIGH_BORDER 65.0f
-#define ISM_ELEVATION_LOW_BORDER_FX ( -293601280 ) // Q22
-#define ISM_ELEVATION_HIGH_BORDER_FX ( 272629760 ) // Q22
-#define ISM_Q_STEP 2.5f
-#define ISM_Q_STEP_FX ( 10485760 ) // Q22
-#define ISM_Q_STEP_BORDER 5.0f
-#define ISM_Q_STEP_BORDER_FX ( 20971520 ) // Q22
+#define ISM_ELEVATION_MIN_FX -377487360 /* -90.0f in Q22 */
+#define ISM_ELEVATION_MAX_FX 377487360 /* 90.0f in Q22 */
+#define ISM_ELEVATION_LOW_BORDER_FX -293601280 /* -70.0f in Q22 */
+#define ISM_ELEVATION_HIGH_BORDER_FX 272629760 /* 65.0f in Q22 */
+#define ISM_Q_STEP_FX 10485760 /* 2.5f in Q22 */
+#define ISM_Q_STEP_BORDER_FX 20971520 /* 5.0f in Q22 */
#define ISM_FEC_MAX 10
#define ISM_RADIUS_NBITS 6
-#define ISM_RADIUS_MIN 0.0f
-#define ISM_RADIUS_MIN_Q9 0
-#define ISM_RADIUS_DELTA 0.25f /* Max radius = (2^ISM_RADIUS_NBITS-1)*0.25 = 15.75 */
-#define ISM_RADIUS_DELTA_Q8 64 // Q8
+#define ISM_RADIUS_MIN_Q9 0 /* 0.0f in Q9 */
+#define ISM_RADIUS_DELTA_Q8 64 /* 0.25f in Q8 */
#define ISM_EXTENDED_METADATA_BRATE IVAS_64k
#define ISM_METADATA_IS_NDP_BITS 1
#define ISM_EXTENDED_METADATA_BITS 1
@@ -389,24 +371,24 @@ typedef enum
#define PARAM_ISM_MAX_CHAN 16
#define PARAM_ISM_HYS_BUF_SIZE 10
-#define STEP_PARAM_ISM_POW_RATIO_NBITS_Q31 (306783378) /* 1.0f / (float)((1 << PARAM_ISM_POW_RATIO_NBITS) - 1) */
+#define STEP_PARAM_ISM_POW_RATIO_NBITS_Q31 306783378 /* 1.0f / (float)((1 << PARAM_ISM_POW_RATIO_NBITS) - 1) */
/* ISM DTX */
-#define ISM_Q_STEP_FX ( 10485760 ) // Q22
-#define ISM_Q_STEP_BORDER_FX ( 20971520 ) // Q22
+#define ISM_Q_STEP_FX 10485760 /* Q22 */
+#define ISM_Q_STEP_BORDER_FX 20971520 /* Q22 */
#define ISM_DTX_COH_SCA_BITS 4
#define ISM_DTX_AZI_BITS_HIGH 8
#define ISM_DTX_ELE_BITS_HIGH 7
#define ISM_Q_STEP_HIGH (ISM_Q_STEP / 2)
#define ISM_Q_STEP_BORDER_HIGH (ISM_Q_STEP_BORDER / 2)
-#define ISM_Q_STEP_HIGH_FX ( 5 * ( 1 << ( 22 - 2 ) ) ) // Q22
-#define ISM_Q_STEP_BORDER_HIGH_FX ( 5 * ( 1 << ( 22 - 1 ) ) ) // Q22
+#define ISM_Q_STEP_HIGH_FX ( 5 * ( 1 << ( 22 - 2 ) ) ) /* Q22 */
+#define ISM_Q_STEP_BORDER_HIGH_FX ( 5 * ( 1 << ( 22 - 1 ) ) ) /* Q22 */
#define ISM_DTX_AZI_BITS_LOW 6
#define ISM_DTX_ELE_BITS_LOW 5
#define ISM_Q_STEP_LOW (ISM_Q_STEP * 2)
#define ISM_Q_STEP_BORDER_LOW (ISM_Q_STEP_BORDER * 2)
-#define ISM_Q_STEP_LOW_FX ( 5 * (1 << 22) ) // Q22
-#define ISM_Q_STEP_BORDER_LOW_FX ( 10 * (1 << 22) ) // Q22
+#define ISM_Q_STEP_LOW_FX ( 5 * (1 << 22) ) /* Q22 */
+#define ISM_Q_STEP_BORDER_LOW_FX ( 10 * (1 << 22) ) /* Q22 */
/* ISM modes */
typedef enum
@@ -555,9 +537,6 @@ enum
#define STEREO_DFT_ENC_DFT_NB ( STEREO_DFT_OFFSET + 1 ) /*frame + lookahead*/
#define STEREO_DFT_DEC_DFT_NB ( STEREO_DFT_NBDIV + STEREO_DFT_OFFSET ) /*frame + lookahead*/
-#define STEREO_CNA_LR_CORR_LT_FILT 0.95f /* long-term averaging factor for L/R correlation estimation */
-#define STEREO_CNA_ILD_LT_FILT 0.9f /* long-term averaging factor for ILD estimation */
-
typedef enum
{
DFT_STEREO_DEC_ANA_NOCORE = -1, /*-1: signal read from file (DEBUG mode)*/
@@ -570,17 +549,15 @@ typedef enum
} DFT_STEREO_DEC_ANA_TYPE;
/*Stereo parameters*/
-
#define STEREO_DFT_ERB4_BANDS 14
#define STEREO_DFT_ERB8_BANDS 8
#define STEREO_DFT_BAND_MAX ( STEREO_DFT_ERB4_BANDS - 1 ) /*Maximum number of parameter bands*/
#define STEREO_DFT_BUF_MAX STEREO_DFT32MS_N_MAX * STEREO_DFT_NBDIV
-
#define STEREO_DFT_NRG_PAST_LEN 3
/*ITD*/
#define STEREO_DFT_ITD_FS 32000
-#define STEREO_DFT_ITD_MAX 160 /*samples @ 32000*/
+#define STEREO_DFT_ITD_MAX 160 /*samples @ 32000*/
#define STEREO_DFT_ITD_MAX_ANA 200
#define STEREO_DFT_ITD_MIN max( STEREO_DFT_ITD_MAX - 256 + 1, 1 ) /*STEREO_DFT_ITD_MAX-pow(2,STEREO_DFT_ITD_NBITS-1)+1*/
#define STEREO_DFT_ITD_NBITS 9 /* 1 bit for sign, the rest for the absolute value*/
@@ -592,11 +569,10 @@ typedef enum
#define STEREO_DFT_FLAG_BITS 1
#define STEREO_DFT_SIDEGAIN_NBITS 5
#define STEREO_DFT_FEC_THRESHOLD 10
-#define STEREO_DFT_FEC_THRESHOLD_PLUS_1_INV_Q31 ( 195225786 ) // Q31
-#define STEREO_DFT_BITDIFF_LP_FAC_Q31 ( 128849019 ) // Q31 /* Low-pass filter coefficient for filtering bit difference between absolute and differential coding */
-#define STEREO_DFT_BITDIFF_ABS_SELECT_Q31 ( 1717986918 ) // Q31 /* Constant to set tendency for selecting absolute coding mode */
-#define STEREO_DFT_BITDIFF_INIT (12.0f) /* Init value for low-pass bit difference */
-#define STEREO_DFT_BITDIFF_INIT_FX (12288) // Q10 /* Init value for low-pass bit difference in Q10*/
+#define STEREO_DFT_FEC_THRESHOLD_PLUS_1_INV_Q31 ( 195225786 ) /* Q31 */
+#define STEREO_DFT_BITDIFF_LP_FAC_Q31 ( 128849019 ) /* Low-pass filter coefficient for filtering bit difference between absolute and differential coding, Q31 */
+#define STEREO_DFT_BITDIFF_ABS_SELECT_Q31 ( 1717986918 ) /* Constant to set tendency for selecting absolute coding mode, Q31 */
+#define STEREO_DFT_BITDIFF_INIT_FX ( 12288 ) /* Init value for low-pass bit difference, 12.0f in Q10*/
#define STEREO_DFT_SIDE_GAIN_NBITS 5
#define STEREO_DFT_IPD_NBITS 3
@@ -617,9 +593,8 @@ typedef enum
#define STEREO_DFT_SG_ACT_CNT_MAX 1500
#define STEREO_DFT_COH_MAXBAND 6
#define STEREO_DFT_SID_GIPD_NBITS 2
-#define STEREO_DFT_FD_FILT 0.9f
-#define STEREO_DFT_FD_FILT_Q31 1932735283 // Q31
-#define STEREO_DFT_FD_FILT_COMP_Q31 214748364 // Q31 /* 1.0 - STEREO_DFT_FD_FILT */
+#define STEREO_DFT_FD_FILT_Q31 1932735283 /* 0.9f in Q31 */
+#define STEREO_DFT_FD_FILT_COMP_Q31 214748364 /* 1.0 - STEREO_DFT_FD_FILT in Q31 */
#define STEREO_DFT_CNG_ITD_CNT 8
@@ -645,17 +620,15 @@ typedef enum
#define STEREO_DFT_RES_GAINS_BITS 3
#define STEREO_DFT_RES_COD_SNR_MIN 10
-#define STEREO_DFT_RES_COD_SNR_MIN_Q25 335544320 // Q25
+#define STEREO_DFT_RES_COD_SNR_MIN_Q25 335544320 /* Q25 */
#define STEREO_DFT_RES_COD_SNR_MAX 40
-#define STEREO_DFT_RES_COD_SNR_MAX_Q25 1342177280 // Q25
+#define STEREO_DFT_RES_COD_SNR_MAX_Q25 1342177280 /* Q25 */
#define STEREO_DFT_L_SUBFR_8k 32
#define STEREO_DFT_NBPSF_PIT_MAX_8k NBPSF_PIT_MAX / 2
/* Residual coding BPF */
-#define STEREO_DFT_BPF_ADAPT_ALPHA (0.61f)
-#define STEREO_DFT_BPF_ADAPT_BETA (0.68f)
-#define STEREO_DFT_BPF_ADAPT_ALPHA_FX (19988) /* STEREO_DFT_BPF_ADAPT_ALPHA in Q15 */
-#define STEREO_DFT_BPF_ADAPT_BETA_FX (22281) /* STEREO_DFT_BPF_ADAPT_BETA in Q15 */
+#define STEREO_DFT_BPF_ADAPT_ALPHA_FX 19988 /* 0.61f in Q15 */
+#define STEREO_DFT_BPF_ADAPT_BETA_FX 22281 /* 0.68f in Q15 */
/* Golomb-Rice encoding */
#define NO_SYMB_GR_SIDE_G 31
@@ -729,10 +702,8 @@ enum
#define ECSQ_VECTOR_SIZE_MAX 256
#define ECSQ_GLOBAL_GAIN_INDEX_ALL_ZERO 127 /* indicates that all values in the vector are zero */
-#define ECLVQ_GLOBAL_GAIN_FACTOR ( 20.0f * 127.0f / 90.0f )
-#define ECLVQ_GLOBAL_GAIN_FACTOR_Q26 1893961218 // Q26
-#define ECLVQ_INV_GLOBAL_GAIN_FACTOR ( 1.0f / ( 20.0f * 127.0f / 90.0f ) )
-#define ECLVQ_INV_GLOBAL_GAIN_FACTOR_Q24 594468 // Q24
+#define ECLVQ_GLOBAL_GAIN_FACTOR_Q26 1893961218 /* ( 20.0f * 127.0f / 90.0f ) in Q26 */
+#define ECLVQ_INV_GLOBAL_GAIN_FACTOR_Q24 594468 /* ( 1.0f / ( 20.0f * 127.0f / 90.0f ) ) in Q24 */
/* the currently defined configuration indexes are:
0: un-optimized using uniform 4 bit parameters (reserved)
@@ -825,12 +796,10 @@ enum fea_names
#define STEREO_BITS_TCA_CHAN 1 /* ref/target channel index */
#define STEREO_BITS_TCA_CORRSTATS 5 /* target corrStats */
#define STEREO_BITS_TCA_GD 5 /* target gain */
-#define STEREO_TCA_GDMIN -1.0f
-#define STEREO_TCA_GDMIN_FX -32768 // Q15
-#define STEREO_TCA_GDSTEP 0.05f
-#define STEREO_TCA_GDSTEP_FX 819 // Q14
-#define STEREO_TCA_GDMIN_FX_Q14 (-16384) // Q14
-#define STEREO_TCA_GDSTEP_FX_Q13 (410) // Q13
+#define STEREO_TCA_GDMIN_FX -32768 /* -1.0f in Q15 */
+#define STEREO_TCA_GDSTEP_FX 819 /* 0.05f in Q14 */
+#define STEREO_TCA_GDMIN_FX_Q14 -16384 /* -1.0fin Q14 */
+#define STEREO_TCA_GDSTEP_FX_Q13 410 /* 0.05f in Q13 */
#define STEREO_BITS_TCA ( STEREO_BITS_TCA_CHAN + STEREO_BITS_TCA_CORRSTATS + STEREO_BITS_TCA_GD )
#define STEREO_ICBWE_MSFLAG_BITS 1 /* BWE Multi Source flag */
@@ -846,14 +815,14 @@ enum fea_names
#define MAX_DELAYREGLEN 12 /* max regression length */
#define INV_MAX_DELAYREGLEN 0.083333333333333f /* (1/MAX_DELAYREGLEN) */
-#define INV_MAX_DELAYREGLEN_FX_Q15 2731 // Q15 /* (1/MAX_DELAYREGLEN) */
+#define INV_MAX_DELAYREGLEN_FX_Q15 2731 /* (1/MAX_DELAYREGLEN) in Q15 */
#define MAX_INTERPOLATE 11
#define ADDED_MEM_DS 40
#define STEREO_L_TCA_OVLP_NS 5000000L /* overlap length of the ICA gain scaling */
+#define STEREO_DMX_GAIN_Q13 29066 /* Q13, calculated this -->"powf( 10, ( ( 1 << STEREO_BITS_TCA_GD ) - 1 ) * STEREO_TCA_GDSTEP + STEREO_TCA_GDMIN )"*/
-#define STEREO_DMX_GAIN_Q13 29066 // Q13 /* calculated this -->"powf( 10, ( ( 1 << STEREO_BITS_TCA_GD ) - 1 ) * STEREO_TCA_GDSTEP + STEREO_TCA_GDMIN )"*/
/*----------------------------------------------------------------------------------*
* TD Stereo Constants
*----------------------------------------------------------------------------------*/
@@ -914,8 +883,7 @@ enum fea_names
#define SNS_CDBKS_BITS_4_FRAC 12
#define SNS_MEANS_BITS_4_FRAC 14
-#define MDCT_ST_PLC_FADEOUT_MIN_NOISE_NRG 0.001f
-#define MDCT_ST_PLC_FADEOUT_MIN_NOISE_NRG_Q31 2147483 // Q31
+#define MDCT_ST_PLC_FADEOUT_MIN_NOISE_NRG_Q31 2147483 /* 0.001f in Q31 */
#define MDCT_ST_PLC_FADEOUT_MAX_CONC_FRAME 2 * FRAMES_PER_SEC
#define MDCT_ST_PLC_FADEOUT_TO_ZERO_LEN 20
#define MDCT_ST_PLC_FADEOUT_DELAY_4_LSP_FADE 3
@@ -1013,47 +981,36 @@ typedef enum
#define DIRAC_DIFF_NUM_AMBI_COMP 4
#define DIRAC_HOA_RENDERING_NUM_VIRT_DECORR_LS 8
-#define DIRAC_GAIN_LIMIT 31.622776601683793f /* 30db gain limitiation */
-#define DIRAC_GAIN_LIMIT_Q26 ( 2122168614 ) // Q26 /* 30db gain limitiation */
+#define DIRAC_GAIN_LIMIT_Q26 2122168614 /* 30db gain limitiation, 31.622776601683793f in Q26 */
#define DIRAC_MAX_NUM_DECORR_FILTERS 22
#define DIRAC_MAX_DECORR_FILTER_LEN 20
#define DIRAC_DECORR_NUM_SPLIT_BANDS 3
#define DIRAC_DECORR_FILTER_LEN_1 15
#define DIRAC_DECORR_FILTER_LEN_2 6
#define DIRAC_DECORR_FILTER_LEN_3 3
-#define DIRAC_ONSET_ALPHA 0.95f
-#define DIRAC_ONSET_BETA 0.995f
-#define DIRAC_ONSET_GAIN 4.0f
-#define DIRAC_ONSET_ALPHA_FX 31129 // Q15
-#define DIRAC_ONSET_BETA_FX 32604 // Q15
-#define ONE_DIRAC_ONSET_BETA_FX 163 // Q15
-#define DIRAC_ONSET_GAIN_FX 16384 // Q12
+#define DIRAC_ONSET_ALPHA_FX 31129 /* 0.95f in Q15 */
+#define DIRAC_ONSET_BETA_FX 32604 /* 0.995f in Q15 */
+#define ONE_DIRAC_ONSET_BETA_FX 163 /* Q15 */
+#define DIRAC_ONSET_GAIN_FX 16384 /* 0.995f in Q12 */
#define DELAY_DIRAC_ENC_CMP_NS 9500000L /* Delay to be compensated on DirAC encoder */
-#define DELAY_DIRAC_SPAR_ENC_CMP_NS 500000L /* here we may set the 24 samples (at 48 kHz) additional delay to something else, leave as is for now*/
+#define DELAY_DIRAC_SPAR_ENC_CMP_NS 500000L /* here we may set the 24 samples (at 48 kHz) additional delay to something else, leave as is for now*/
#define DELAY_DIRAC_PARAM_DEC_SFR 2 /* Delay to be compensation for DirAC parameters in the decoder (subframes) */
#define DELAY_MASA_PARAM_DEC_SFR 2 /* Delay to be compensation for MASA parameters in the decoder (subframes) */
-#define SPH_IDX_FRONT ( MASA_NO_POINTS_EQUATOR / 2 ) /* Spherical index corresponding to front direction for setting as default value */
+#define SPH_IDX_FRONT ( MASA_NO_POINTS_EQUATOR / 2 ) /* Spherical index corresponding to front direction for setting as default value */
#define DIRAC_SLOT_NS 1250000L /* time duration of a time slot, 1.25ms (==DELAY_RENERER_NS/MAX_PARAM_SPATIAL_SUBFRAMES) */
#define DIRAC_SLOT_ENC_NS 5000000L
-#define DIRAC_MONO_THRESH_SILENCE 3e4f
-#define DIRAC_MONO_NORM_FACTOR 1e13f
-#define DIRAC_MONO_ONE_ON_NORM_FACTOR (1.f / 1e13f)
-#define DIRAC_MONO_MAX_THRESH 1e6f
-#define DIRAC_MONO_MIN_THRESH 1e2f
-#define DIRAC_MONO_FRAME_THRESH 15 /* 30ms */
-
-
-#define DIRAC_MONO_THRESH_SILENCE_FX (Word32)3e4
-#define DIRAC_MONO_NORM_FACTOR_FX (Word64)1e13
-#define DIRAC_MONO_ONE_ON_NORM_FACTOR_FX (Word64)1/1e13
-#define DIRAC_MONO_MAX_THRESH_FX (Word32)1e6
-#define DIRAC_MONO_MIN_THRESH_FX (Word32)1e2
-#define DIRAC_MONO_NORM_FACTOR_M 1220703104
-#define DIRAC_MONO_NORM_FACTOR_E 44
+#define DIRAC_MONO_FRAME_THRESH 15 /* 30ms */
+#define DIRAC_MONO_THRESH_SILENCE_FX (Word32)3e4
+#define DIRAC_MONO_NORM_FACTOR_FX (Word64)1e13
+#define DIRAC_MONO_ONE_ON_NORM_FACTOR_FX (Word64)1/1e13
+#define DIRAC_MONO_MAX_THRESH_FX (Word32)1e6
+#define DIRAC_MONO_MIN_THRESH_FX (Word32)1e2
+#define DIRAC_MONO_NORM_FACTOR_M 1220703104
+#define DIRAC_MONO_NORM_FACTOR_E 44
typedef enum
{
@@ -1088,18 +1045,13 @@ typedef enum
#define IVAS_SPAR_ARITH_OVERSHOOT_BITS 16
/* Common SPAR metadata constants */
-#define IVAS_ACTIVEW_DM_F_SCALE 0.5f
-#define IVAS_ACTIVEW_DM_F_SCALE_FX (1073741824) /* 0.5f in Q31 */
-#define IVAS_ACTIVEW_DM_F_SCALE_DTX 0.25f
-#define IVAS_ACTIVEW_DM_F_SCALE_DTX_FX (536870912) /* 0.25f in Q31 */
-#define IVAS_ACTIVEW_DM_F_SCALE_VLBR 0.25f
-#define IVAS_ACTIVEW_DM_F_SCALE_VLBR_FX (536870912) /* 0.25f in Q31 */
+#define IVAS_ACTIVEW_DM_F_SCALE_FX 1073741824 /* 0.5f in Q31 */
+#define IVAS_ACTIVEW_DM_F_SCALE_DTX_FX 536870912 /* 0.25f in Q31 */
+#define IVAS_ACTIVEW_DM_F_SCALE_VLBR_FX 536870912 /* 0.25f in Q31 */
#define IVAS_SPAR_FOA_DFLT_FREQ_PER_CHAN 24000
-#define IVAS_SPAR_DYN_ACTIVEW_THRESH (0.0039f)
-#define IVAS_SPAR_DYN_ACTIVEW_THRESH_FX (8375186) /* 0.0039f in Q31 */
-#define IVAS_SPAR_SIDE_CH_DYN_ACTIVEW_THRESH (32.0f)
-#define IVAS_SPAR_SIDE_CH_DYN_ACTIVEW_THRESH_Q0 (32)
+#define IVAS_SPAR_DYN_ACTIVEW_THRESH_FX 8375186 /* 0.0039f in Q31 */
+#define IVAS_SPAR_SIDE_CH_DYN_ACTIVEW_THRESH_Q0 32
#define MAX_QUANT_STRATS 3
#define MAX_CODING_STRATS 3
@@ -1154,13 +1106,10 @@ enum
#define IVAS_APD_8_SECT 8
#define IVAS_APD_16_SECT 16
-#define IVAS_DECORR_PARM_LOOKAHEAD_TAU 2e-3f
-#define IVAS_DECORR_PARM_APD_TAU 42949673 // Q31
+#define IVAS_DECORR_PARM_APD_TAU 42949673 /* Q31 */
/* IVAS SBA PCA */
-#define IVAS_PCA_NB_SUBR 20 /* 80 -> 0.25 ms, 40 -> 0.5 ms... */
-#define IVAS_PCA_COV_THRES 3e-5f
-#define IVAS_PCA_QUAT_EPS 1e-7f
+#define IVAS_PCA_NB_SUBR 20 /* 80 -> 0.25 ms, 40 -> 0.5 ms... */
#define IVAS_PCA_QBITS 19
#define IVAS_PCA_N1 91
#define IVAS_PCA_N1_EQ ( (IVAS_PCA_N1-1)/2 )
@@ -1170,15 +1119,10 @@ enum
#define IVAS_PCA_LEN_INTERP_Q ( IVAS_PCA_INTERP * IVAS_PCA_N_SLOTS )
#define IVAS_PCA_DELAY_CMP 24
#define IVAS_PCA_LEN_INTERP_EIG_DEC ( (IVAS_PCA_N_SLOTS+IVAS_PCA_DELAY_CMP)*16)
-#define IVAS_PCA_THRES_MIN_DOT 0.8f
-#define IVAS_PCA_THRES_MIN_DOT2 0.0f
-#define IVAS_PCA_THRES_DIST_ALT 6.0f
-
-#define IVAS_PCA_QUAT_EPS_FX 215 // Q31
-#define IVAS_PCA_THRES_MIN_DOT_FX 1717986918 // 0.8 in Q31
+#define IVAS_PCA_QUAT_EPS_FX 215 /* 1e-7f in Q31 */
+#define IVAS_PCA_THRES_MIN_DOT_FX 1717986918 /* 0.8 in Q31 */
#define IVAS_PCA_THRES_MIN_DOT2_FX 0
-#define IVAS_PCA_THRES_DIST_ALT_FX 1610612736 // 6 in Q28
-
+#define IVAS_PCA_THRES_DIST_ALT_FX 1610612736 /* 6 in Q28 */
typedef enum
{
@@ -1220,6 +1164,7 @@ enum
TOTAL_DECD_QUANT_STRATS
};
+
/*----------------------------------------------------------------------------------*
* MASA constants
*----------------------------------------------------------------------------------*/
@@ -1240,13 +1185,12 @@ enum
#define MASA_TRANSP_BITS 1
#define NO_BITS_MASA_ISM_NO_OBJ 2
-#define MASA2TOTAL_THR_Q30 1052266987 // 0.98f in Q30
+#define MASA2TOTAL_THR_Q30 1052266987 /* 0.98f in Q30 */
//Maximum error in float to fixed conversion : 0.005%
//Assuming the accuracy of 99.995%
//New value = 99.995 / 100 * 0.98 = 0.979951
#define BITS_MASA2TOTTAL_DCT0 6
-#define STEP_M2T 0.1f
-#define STEP_M2T_FX 214748365 // Q31
+#define STEP_M2T_FX 214748365 /* 0.1f in Q31 */
#define MASA_HEADER_BITS 2
#define MASA_SUBFRAME_BITS 1
#define MASA_LOWBITRATE_MODE_BITS 1
@@ -1286,16 +1230,11 @@ enum
#define LIMIT_ER_SIMPLE_ENC 6
#define LIMIT_USE_COMMON 3
-#define MASA_COHERENCE_TOLERANCE 0.1f
-#define MASA_COHERENCE_THRESHOLD 0.1f
-#define MASA_COHERENCE_TOLERANCE_FX 3277/*0.1 Q15*/
-#define MASA_COHERENCE_THRESHOLD_FX 214748365 // 0.1 in Q31
-#define MASA_RATIO_TOLERANCE 0.1f
-#define MASA_RATIO_THRESHOLD 0.1f
-#define MASA_ANGLE_TOLERANCE 0.5f
-#define MASA_RATIO_THRESHOLD_FX 32212255 // 0.015 in Q31
-#define MASA_RATIO_TOLERANCE_FX 107374182 // 0.1 in Q30
-#define MASA_ANGLE_TOLERANCE_FX ONE_IN_Q21 // 0.5 in Q22
+#define MASA_COHERENCE_TOLERANCE_FX 3277 /* 0.1 Q15 */
+#define MASA_COHERENCE_THRESHOLD_FX 214748365 /* 0.1 in Q31 */
+#define MASA_RATIO_THRESHOLD_FX 32212255 /* 0.015 in Q31 */
+#define MASA_RATIO_TOLERANCE_FX 107374182 /* 0.1 in Q30 */
+#define MASA_ANGLE_TOLERANCE_FX ONE_IN_Q21 /* 0.5 in Q22 */
#define MASA_LIMIT_NO_BANDS_SUR_COH 8
#define MINIMUM_BIT_BUDGET_NORMAL_META 100
#define DIFF_DFRATIO_2BIT_LIMIT_IDX_HODIRAC 4
@@ -1309,16 +1248,11 @@ enum
#define MASA_NO_POINTS_EQUATOR 430
#define MASA_NO_CIRCLES 121
-#define MASA_NO_CIRCLES_Q23 ( 1015021568 ) // Q23
-#define MASA_ASIN_OFFSET 0.0064471690266724975f
-#define MASA_ASIN_OFFSET_Q15 ( 211 ) // Q15
-#define MASA_NTOT2_FAC 32768.00566947353f
-#define MASA_NTOT2_FAC_Q15 ( 1073741952 ) // Q15
-#define MASA_ANGLE_AT_EQUATOR 0.012894427382667f
-#define MASA_ANGLE_AT_EQUATOR_Q31 ( 27690572 ) // Q31
-#define MASA_ANGLE_AT_EQUATOR_DEG 0.738796268264740f
-#define MASA_ANGLE_AT_EQUATOR_DEG_Q31 ( 1586552905l ) // Q31
-#define MASA_INV_ANGLE_AT_EQUATOR_DEG 1.353553128183453f
+#define MASA_NO_CIRCLES_Q23 1015021568 /* Q23 */
+#define MASA_ASIN_OFFSET_Q15 211 /* 0.0064471690266724975f in Q15 */
+#define MASA_NTOT2_FAC_Q15 1073741952 /* 32768.00566947353f in Q15 */
+#define MASA_ANGLE_AT_EQUATOR_Q31 27690572 /* 0.012894427382667f in Q31 */
+#define MASA_ANGLE_AT_EQUATOR_DEG_Q31 1586552905l /* 0.738796268264740f in Q31 */
#define MASA_STEREO_MIN_BITRATE IVAS_24k4
#define MAXIMUM_OMASA_FREQ_BANDS 8 /* Corresponds to maximum number of coding bands at 32 kbps */
#define OMASA_STEREO_SW_CNT_MAX 100
@@ -1326,13 +1260,16 @@ enum
#define MASA_MAXIMUM_TWO_DIR_BANDS 24
#define NBITS_HR_COH 4
#define OMASA_TDREND_MATCHING_GAIN_FX 26026
+//TODO: insert proper Q representations
+#define OMASA_GAIN_EDIT_THR_FX 246 /* OMASA gain change threshold, 0.06f in Q12 */
+#define OMASA_AZI_EDIT_THR_FX ONE_IN_Q22 /* OMASA-DISC azimuth change threshold, 1.0f in Q22 */
+#define OMASA_ELE_EDIT_THR_FX ONE_IN_Q23 /* OMASA-DISC elevation change threshold, 2.0f in Q22 */
-#define MASA_INV_ANGLE_AT_EQUATOR_DEG_Q30 (1453366656l)
-
+#define MASA_INV_ANGLE_AT_EQUATOR_DEG_Q30 1453366656l /* 1.353553128183453f in Q30 */
#define MASA_JBM_RINGBUFFER_FRAMES 3
-#define TOLERANCE_360_Q22 1510033326 /* 360 in Q22 + 0.02 in Q22*/
-#define MINUS_TOLERANCE_360_Q22 -1510033326 /* - (360 in Q22 + 0.02 in Q22) */
+#define TOLERANCE_360_Q22 1510033326 /* 360 in Q22 + 0.02 in Q22*/
+#define MINUS_TOLERANCE_360_Q22 -1510033326 /* - (360 in Q22 + 0.02 in Q22) */
typedef enum
{
MASA_STEREO_NOT_DEFINED,
@@ -1381,72 +1318,51 @@ typedef enum
#define MCMASA_SEPARATE_BRATE IVAS_64k /* minimum bitrate from which separated channel coding is supported */
#define MCMASA_MAX_ANA_CHANS 11 /* Maximum number of channels currently used in analysis of multichannel formats */
-#define MCMASA_MONOBITRATIO_64k_Q31 ( 536870912 ) // Q31
-#define MCMASA_MONOBITRATIO_Q31 ( 644245095 ) // Q31
+#define MCMASA_MONOBITRATIO_64k_Q31 536870912 /* Q31 */
+#define MCMASA_MONOBITRATIO_Q31 644245095 /* Q31 */
#define MC_MASA_THR_ELEVATION 40
-#define MCMASA_LFE_QLOW -6.5f
-#define MCMASA_LFE_DELTA 1.0f
-#define MCMASA_LFE_1BIT_THRES 0.03f
-#define MCMASA_LFE_ALPHA 0.67f
-#define MCMASA_LFE_BETA 0.09f
-#define MCMASA_LFE_1BIT_THRES_Q30 32212255 /* 0.03f in Q30 */
-#define MCMASA_LFE_ALPHA_Q30 719407022 /* 0.67f in Q30 */
-#define MCMASA_LFE_BETA_Q30 96636764 /* 0.09f in Q30 */
-#define MCMASA_LFE_THETA 1.3f
-#define MCMASA_LFE_SYNTH_ALPHA 0.95f /* Smoothing coefficient for LFE synthesis */
-#define MCMASA_LFE_SYNTH_ALPHA_Q15 (31129) // Q15
-#define MCMASA_LFE_ALPHA_Q15 (21954) // Q15
-#define MCMASA_LFE_BETA_Q15 (2949) // Q15
-#define MCMASA_LFE_BETA_Q14 (1474) // Q14
-#define MCMASA_LFE_THETA_Q14 (21299) // Q14
-#define MCMASA_LFE_QLOW_Q12 (-26624) // Q12
-#define MCMASA_LFE_DELTA_Q11 (2048) // Q11
-#define MCMASA_LFE_QLOW_Q11 (-13312) // Q11
-#define MCMASA_LFE_DELTA_Q10 (1024) // Q10
+#define MCMASA_LFE_1BIT_THRES_Q30 32212255 /* 0.03f in Q30 */
+#define MCMASA_LFE_ALPHA_Q30 719407022 /* 0.67f in Q30 */
+#define MCMASA_LFE_BETA_Q30 96636764 /* 0.09f in Q30 */
+#define MCMASA_LFE_SYNTH_ALPHA_Q15 31129 /* 0.95f in Q15 */
+#define MCMASA_LFE_ALPHA_Q15 21954 /* 0.67f in Q15 */
+#define MCMASA_LFE_BETA_Q15 2949 /* 0.09f in Q15 */
+#define MCMASA_LFE_BETA_Q14 1474 /* 0.09f in Q14 */
+#define MCMASA_LFE_THETA_Q14 21299 /* 1.3f in Q14 */
+#define MCMASA_LFE_QLOW_Q12 -26624 /* -6.5f in Q12 */
+#define MCMASA_LFE_DELTA_Q11 2048 /* 1.0f in Q11 */
+#define MCMASA_LFE_QLOW_Q11 -13312 /* -6.5f in Q11 */
+#define MCMASA_LFE_DELTA_Q10 1024 /* 1.0f in Q10 */
#define NUM_ELEVATED_SPEAKERS 4
#define MCMASA_MIN_SPEAKERS_SEPARATE_CENTER 4
+
/*----------------------------------------------------------------------------------*
* MCT constants
*----------------------------------------------------------------------------------*/
#define LFE_CHANNEL 3
-#define MIN_LFE_NRG 0.5f
-#ifdef ADJUST_MCT_CHANNELS_MAX
#define MCT_MAX_CHANNELS 11 /* == 7.1.4 LS channels without the LFE channel */
#define MCT_MAX_BLOCKS ( ( MCT_MAX_CHANNELS + 1 ) / CPE_CHANNELS ) /* max. number of channel pairs (MCT_MAX_CHANNELS/2) within MCT*/
-#else
-#define MCT_MAX_CHANNELS MAX_TRANSPORT_CHANNELS
-#define MCT_MAX_BLOCKS ( MCT_MAX_CHANNELS / CPE_CHANNELS ) /* max. number of channel pairs (MCT_MAX_CHANNELS/2) within MCT*/
-
-#define MAX_NUM_DATA max( MCT_MAX_CHANNELS, 4 )
-#endif
-
#define NBBITS_MCT_RATIO 4
#define BITRATE_MCT_RATIO_RANGE ( 1 << NBBITS_MCT_RATIO ) /* Range of the coded bitrate distribution ratio */
#define MCT_NUM_BLOCK_DATA_BITS 4
-/*typedef enum
-{
- MCT_CHAN_MODE_REGULAR,
- MCT_CHAN_MODE_IGNORE
-} MCT_CHAN_MODE;*/
-
/*----------------------------------------------------------------------------------*
* MC Param-Upmix Mode Constants
*----------------------------------------------------------------------------------*/
-#define MC_PARAMUPMIX_MAX_TRANSPORT_CHANS 8
-#define MC_PARAMUPMIX_MAX_INPUT_CHANS 12
-#define MC_PARAMUPMIX_MAX_BITS 1024 /* Maximum number of bits for the MC Param-Upmix metadata */
-#define MC_PARAMUPMIX_COMBINATIONS 4 /* number of sets of 2 channels combined */
-#define MC_PARAMUPMIX_NCH 2 /* number of channels to combine into 1 */
-#define MC_PARAMUPMIX_MIN_CLDFB 8
+#define MC_PARAMUPMIX_MAX_TRANSPORT_CHANS 8
+#define MC_PARAMUPMIX_MAX_INPUT_CHANS 12
+#define MC_PARAMUPMIX_MAX_BITS 1024 /* Maximum number of bits for the MC Param-Upmix metadata */
+#define MC_PARAMUPMIX_COMBINATIONS 4 /* number of sets of 2 channels combined */
+#define MC_PARAMUPMIX_NCH 2 /* number of channels to combine into 1 */
+#define MC_PARAMUPMIX_MIN_CLDFB 8
typedef enum _COV_SMOOTHING_TYPE
{
@@ -1498,11 +1414,8 @@ typedef enum
PARAM_MC_SYNTH_MONO_STEREO /* synthesis to mono or stereo */
} PARAM_MC_SYNTHESIS_CONF;
-#define PARAM_MC_REG_SX_FX (429496729) // Q31 /* Regularization factor for mixing matrix calculation */
-#define PARAM_MC_REG_GHAT_FX (2147483) // Q31 /* Regularization factor for mixing matrix calculation */
-
-#define PARAM_MC_REG_SX (0.2f) /* Regularization factor for mixing matrix calculation */
-#define PARAM_MC_REG_GHAT (0.001f) /* Regularization factor for mixing matrix calculation */
+#define PARAM_MC_REG_SX_FX 429496729 /* Regularization factor for mixing matrix calculation, (0.2f) in Q31 */
+#define PARAM_MC_REG_GHAT_FX 2147483 /* Regularization factor for mixing matrix calculation, (0.001f) in Q31 */
#define PARAM_MC_MAX_PARAMETER_BANDS 20 /* Maximum number of parameter bands */
#define PARAM_MC_MAX_PARAMETER_BANDS_RES 14 /* Maximum number of parameter bands with decorrelation */
#define PARAM_MC_MAX_NSLOTS MAX_JBM_CLDFB_TIMESLOTS /* Maximum number of CLDFB slots in a frame */
@@ -1510,7 +1423,6 @@ typedef enum
#define PARAM_MC_NSUBFRAMES_DEC 4 /* Number of subframes for the synthesis in the decoder */
#define PARAM_MC_MAX_BANDS_IN_PARAMETER_BAND 30 /* Maximum number of CLDFB frequency bands within a parameter band */
#define PARAM_MC_PARAMETER_FRAMES 2 /* Number of frames a parameter set for a parameter band is used*/
-#define PARAM_MC_ICC_ERROR_BIAS_FAC (1.15f) /* factor for favouring past ICC maps in the adaptive ICC map decision */
#define PARAM_MC_TRANSIENT_BAND_STEP 2 /* Number of parameter bands combined in case of a transient frame*/
#define PARAM_MC_MAX_DECORR_CLDFB_BANDS 20 /* Maximum number of CLDFB bands with decorrelation */
#define PARAM_MC_MAX_TRANSPORT_CHANS 3 /* Number of down mix channels */
@@ -1525,27 +1437,23 @@ typedef enum
#define PARAM_MC_NUM_BITS_ICC_SCALAR_QUANT 3 /* Number of bits for ICC uniform coding */
#define PARAM_MC_SZ_ILD_QUANTIZER_4BITS 16 /* Length of the ILD quantizer for Parametric MC */
#define PARAM_MC_NUM_BITS_ILD_SCALAR_QUANT 4 /* Number of bits for ILD uniform coding */
-#define PARAM_MC_DEFAULT_MIN_ILD (-92.0f) /* Default relative channel level for untransmitted channel energies */
-#define PARAM_MC_DEFAULT_MIN_ILD_FX (-23552) // Q8 /* Default relative channel level for untransmitted channel energies */
+#define PARAM_MC_DEFAULT_MIN_ILD_FX (-23552) /* Default relative channel level for untransmitted channel energies, (-92.0f) in Q8 */
#define PARAM_MC_MAX_BITS 1024 /* Maximum number of bits for the Parametric MC metadata */
#define PARAM_MC_MAX_BAND_ABS_COV_ENC 10
#define PARAM_MC_MAX_PARAM_BAND_ABS_COV_ENC 10
#define PARAM_MC_MAX_BAND_ABS_COV_DEC 10
-#define PARAM_MC_ENER_LIMIT_INTRAFRAME (1.5f)
-#define PARAM_MC_ENER_LIMIT_INTRAFRAME_FX_Q21 3145728
-#define PARAM_MC_ENER_LIMIT_INTERFRAME (2.0f)
-#define PARAM_MC_ENER_LIMIT_INTERFRAME_FX_Q21 4194304
-#define PARAM_MC_ENER_LIMIT_MAX_DELTA_FAC (15.0f)
-#define PARAM_MC_ENER_LIMIT_MAX_DELTA_FAC_FX_Q21 31457280
-#define PARAM_MC_NUM_ATTACK_ILD_THRESH (3)
-#define PARAM_MC_LFE_ON_THRESH (8000.0f)
-#define PARAM_MC_LFE_ON_THRESH_FX 8000 // Q0
+#define PARAM_MC_ENER_LIMIT_INTRAFRAME_FX_Q21 3145728 /* (1.5f) in Q21 */
+#define PARAM_MC_ENER_LIMIT_INTERFRAME_FX_Q21 4194304 /* (2.0f) in Q21 */
+#define PARAM_MC_ENER_LIMIT_MAX_DELTA_FAC_FX_Q21 31457280 /* (15.0f) in Q21 */
+#define PARAM_MC_NUM_ATTACK_ILD_THRESH 3
+#define PARAM_MC_LFE_ON_THRESH_FX 8000 /* Q0 */
#define PARAM_MC_BAND_TO_MDCT_BAND_RATIO 16 /* Ratio of resolution of CLDFB Bands to MDCT Bands */
#define PARAM_MC_SLOT_ENC_NS 2500000L
#define PARAM_MC_MDFT_NO_SLOTS 8
-#define INV_PARAM_MC_MDFT_NO_SLOTS_FX 4096 // Q15
+#define INV_PARAM_MC_MDFT_NO_SLOTS_FX 4096 /* Q15 */
#define PARAM_MC_CLDFB_TO_MDFT_FAC 2
+
/*----------------------------------------------------------------------------------*
* LFE Coding Constants
*----------------------------------------------------------------------------------*/
@@ -1575,20 +1483,14 @@ typedef enum
#define IVAS_LFE_NUM_COEFFS_IN_SUBGRP 2
#define IVAS_LFE_MAX_NUM_DCT_PASS_BINS 8
#define IVAS_LFE_MAX_NUM_DCT_COEFFS (IVAS_LFE_MAX_NUM_DCT_PASS_BINS * IVAS_LFE_NUM_COEFFS_IN_SUBGRP)
-#define IVAS_LFE_FADE_NS 8000000L /* 8.0 ms */
-#define IVAS_LFE_FADE_S_Q15 263 /* 8.0 ms in Q15 */
+#define IVAS_LFE_FADE_NS 8000000L /* 8.0 ms */
+#define IVAS_LFE_FADE_S_Q15 263 /* 8.0 ms in Q15 */
#define IVAS_MAX_NUM_QUANT_STRATS 2
#define IVAS_MAX_NUM_DCT_COEF_GROUPS 4
#define IVAS_LFE_SHIFT_BITS 5
#define IVAS_LFE_BITRATE_5000 5000
-#define IVAS_LFE_ABS_SUM_FLT_THR (0.000001f)
-
-#define IVAS_LFE_ABS_SUM_FLT_THR_Q42 4398047
-
-
-#define IVAS_ZERO_PAD_LEN_MULT_FAC (0.5f)
-
-#define IVAS_ZERO_PAD_LEN_MULT_FAC_fx 16384 // 0.5 in Q15
+#define IVAS_LFE_ABS_SUM_FLT_THR_Q42 4398047 /* 0.000001f in Q42 */
+#define IVAS_ZERO_PAD_LEN_MULT_FAC_fx 16384 /* 0.5 in Q15 */
/* LFE PLC */
#define LFE_PLC_BUFLEN 240
@@ -1597,13 +1499,16 @@ typedef enum
#define LFE_PLC_LENANA LFE_PLC_BUFLEN
#define LFE_PLC_FDEL 300
+
/*----------------------------------------------------------------------------------*
* HO Dirac Constants
*----------------------------------------------------------------------------------*/
-#define HODIRAC_BETA (214748368) /* 0.2f in Q30 */
-#define HODIRAC_FAC1 (951579008) /* 1.772454f in Q29 */
-#define HODIRAC_FAC2 (549393984) /* 1.023326f in Q29 */
-#define HODIRAC_FAC3 (317192992) /* 0.590818f in Q29 */
+
+#define HODIRAC_BETA 214748368 /* 0.2f in Q30 */
+#define HODIRAC_FAC1 951579008 /* 1.772454f in Q29 */
+#define HODIRAC_FAC2 549393984 /* 1.023326f in Q29 */
+#define HODIRAC_FAC3 317192992 /* 0.590818f in Q29 */
+
/*----------------------------------------------------------------------------------*
* Amplitude Panning (EFAP, VBAP) constants
@@ -1622,7 +1527,6 @@ typedef enum
EFAP_DMX_INTENSITY
} EFAP_VTX_DMX_TYPE;
-
#define VBAP_NUM_SEARCH_SECTORS 4
@@ -1634,8 +1538,8 @@ typedef enum
#define BINAURAL_MAXBANDS_Q25 2013265920 /* Max number of bands in Q25 */
#define ONE_BY_48000_Q31 44740
#define BINAURAL_CONVBANDS 50 /* Bands upto which convolution is performed */
-#define BINAURAL_NTAPS 3
-#define BINAURAL_NTAPS_SBA BINAURAL_NTAPS
+#define BINAURAL_NTAPS 3
+#define BINAURAL_NTAPS_SBA BINAURAL_NTAPS
#define BINAURAL_NTAPS_MAX 96
@@ -1643,27 +1547,13 @@ typedef enum
#define HRTF_SH_CHANNELS HOA3_CHANNELS
#define HRTF_LS_CHANNELS 15
#define HRTF_NUM_BINS 60
-#define REVERB_PREDELAY_MAX 20 /* Max input delay for reverb module */
-#define GAIN_LFE 1.88364911f /* Gain applied to LFE during renderering */
-#define GAIN_LFE_WORD32 2022552831 // Q30 /* Gain applied to LFE during renderering */
-#define GAIN_LFE_FX 30862 // Q14 /* Gain applied to LFE during renderering */
+#define GAIN_LFE_WORD32 2022552831 /* Gain applied to LFE during renderering, 1.88364911f in Q30 */
+#define GAIN_LFE_FX 30862 /* Gain applied to LFE during renderering, 1.88364911f in Q14 */
#define LOW_BIT_RATE_BINAURAL_EQ_BINS 17 /* Number of bins in an EQ applied at low bit rates in binauralization */
#define LOW_BIT_RATE_BINAURAL_EQ_OFFSET 14 /* Offset of bins where the low-bit-rate EQ starts*/
#define BINAURAL_COHERENCE_DIFFERENCE_BINS 9 /* Number of bins for direction-dependent diffuse-field binaural coherence */
-#ifndef FIX_CREND_SIMPLIFY_CODE
-typedef enum
-{
- BINAURAL_INPUT_AUDIO_CONFIG_INVALID,
- BINAURAL_INPUT_AUDIO_CONFIG_COMBINED, /* 5_1, 5_1_2, 5_1_4, 7_1, 7_1_4 */
- BINAURAL_INPUT_AUDIO_CONFIG_HOA3, /* HOA3 */
- BINAURAL_INPUT_AUDIO_CONFIG_HOA2, /* HOA2 */
- BINAURAL_INPUT_AUDIO_CONFIG_FOA, /* FOA */
- BINAURAL_INPUT_AUDIO_CONFIG_UNDEFINED /* Not used */
-
-} BINAURAL_INPUT_AUDIO_CONFIG;
-#endif
#define HEADROT_ORDER 3
#define HEADROT_SHMAT_DIM ( ( HEADROT_ORDER + 1 ) * ( HEADROT_ORDER + 1 ) )
#define HEADROT_SHMAT_DIM2 ( HEADROT_SHMAT_DIM * HEADROT_SHMAT_DIM )
@@ -1687,22 +1577,18 @@ typedef enum
#define SFX_SPAT_BIN_NUM_SUBSAMPLES 64
#define ITD_MEM_LEN (MAX_ITD + SFX_SPAT_BIN_SINC_M)
#define L_SUBFRAME5MS_48k (L_FRAME48k/4)
-#define MAX_ANGULAR_STEP (0.01f)
-#define MAX_ANGULAR_STEP_INV ( 1.0f / MAX_ANGULAR_STEP )
#define MAX_INTERPOLATION_STEPS 12
+#define DEG_360_IN_Q22 ( 360 << Q22 ) /* Q22 */
+#define DEG_180_IN_Q22 ( 180 << Q22 ) /* Q22 */
+#define DEG_90_IN_Q22 ( 90 << Q22 ) /* Q22 */
+#define ONE_BY_360_Q31 ( 5965232 ) /* Q31 */
+#define ONE_BY_360_Q15 ( 91 ) /* Q15 */
+#define ONE_BY_180_Q31 ( 11930465 ) /* Q31 */
-#define DEG_360_IN_Q22 ( 360 << Q22 ) // Q22
-#define DEG_180_IN_Q22 ( 180 << Q22 ) // Q22
-#define DEG_90_IN_Q22 ( 90 << Q22 ) // Q22
-#define ONE_BY_360_Q31 ( 5965232 ) // Q31
-#define ONE_BY_360_Q15 ( 91 ) // Q15
-#define ONE_BY_180_Q31 ( 11930465 ) // Q31
-
-#ifdef FIX_989_TD_REND_ROM
#define RESAMPLE_FACTOR_16_48_FX ( 5461 ) // Q14
#define RESAMPLE_FACTOR_32_48_FX ( 10922 ) // Q14
-#endif
+
/* ----- Enums - TD Renderer ----- */
@@ -1744,7 +1630,6 @@ typedef enum
} SFX_OpMode_t;
-
/*----------------------------------------------------------------------------------*
* Reverberator constants
*----------------------------------------------------------------------------------*/
@@ -1762,6 +1647,7 @@ typedef enum
#define LR_IAC_LENGTH_NR_FC ( RV_LENGTH_NR_FC )
#define LR_IAC_LENGTH_NR_FC_16KHZ ( RV_LENGTH_NR_FC_16KHZ )
+
/*----------------------------------------------------------------------------------*
* FB mixer constants
*----------------------------------------------------------------------------------*/
@@ -1876,7 +1762,7 @@ typedef enum
#define IVAS_16K_12BANDS_ACTIVE_BANDS 10
#define SPAR_DIRAC_SPLIT_START_BAND 8
-#define DIRAC_TO_SPAR_HBR_PRED_CHS (FOA_CHANNELS - 1)
+#define DIRAC_TO_SPAR_HBR_PRED_CHS (FOA_CHANNELS - 1)
#define SPAR_DTX_BANDS 2
#define SPAR_DTX_BANDS_LOG2 1 /* To be used for shift operation instead of division */
#define DIRAC_DTX_BANDS 2
@@ -1892,22 +1778,14 @@ typedef enum
*----------------------------------------------------------------------------------*/
#define IVAS_LIMITER_THRESHOLD 32729 /* -0.01 dBFS */
-#define IVAS_LIMITER_ATTACK_SECONDS 0.005f
/*----------------------------------------------------------------------------------*
* Early Reflection constants
*----------------------------------------------------------------------------------*/
-#define ER_RADIUS (1.0f)
-#define ER_LIST_ORIGIN_X (0.0f)
-#define ER_LIST_ORIGIN_Y (0.0f)
-#define ER_LIST_HEIGHT (1.6f)
-#define ER_RADIUS_FX (1* ONE_IN_Q30) //Q2.30
-#define ER_LIST_ORIGIN_X_FX (0)
-#define ER_LIST_ORIGIN_Y_FX (0)
-#define ER_LIST_HEIGHT_FX (6710886) /* 1.6 in Q.22 */
-
+#define ER_RADIUS_FX (1* ONE_IN_Q30) /*Q2.30 */
+#define ER_LIST_HEIGHT_FX IVAS_ER_LIST_HEIGHT_FX
/*----------------------------------------------------------------------------------*
@@ -1924,8 +1802,8 @@ typedef enum
#define STEREO_DMX_EVS_SUBBAND_SIZE 2
#define STEREO_DMX_EVS_NB_SUBBAND_MAX (L_FRAME48k / (2 * STEREO_DMX_EVS_SUBBAND_SIZE))
-#define STEREO_DMX_EVS_PHA_LEN_MAX 96 /* Max of PHA_LEN */
-#define STEREO_DMX_EVS_FAD_LEN_MAX 480 /* Max of FAD_LEN */
+#define STEREO_DMX_EVS_PHA_LEN_MAX 96 /* Max of PHA_LEN */
+#define STEREO_DMX_EVS_FAD_LEN_MAX 480 /* Max of FAD_LEN */
#define STEREO_DMX_EVS_DATA_LEN_MAX (STEREO_DMX_EVS_PHA_LEN_MAX + L_FRAME48k)
diff --git a/lib_com/ivas_dirac_com_fx.c b/lib_com/ivas_dirac_com_fx.c
index 7be68453542323370cee38ad5e44df2db8db3a6d..cba992070911995e986aa23a6637d2802d189c5f 100644
--- a/lib_com/ivas_dirac_com_fx.c
+++ b/lib_com/ivas_dirac_com_fx.c
@@ -218,7 +218,6 @@ ivas_error ivas_dirac_config_fx(
}
test();
-#ifdef FIX_2085_FLOATING_POINT_LEFTOVERS
IF( EQ_32( ivas_format, SBA_FORMAT ) || EQ_32( ivas_format, SBA_ISM_FORMAT ) )
{
// 100861_dirac_dec
@@ -228,17 +227,6 @@ ivas_error ivas_dirac_config_fx(
{
ivas_dirac_config_bands_fx( band_grouping, hConfig->nbands, extract_l( Mpy_32_32_r( Fs, INV_CLDFB_BANDWIDTH_Q31 ) ), NULL, 0, 0, hFbMdft, 1 );
}
-#else
- IF( EQ_32( ivas_format, SBA_FORMAT ) || EQ_32( ivas_format, SBA_ISM_FORMAT ) )
- {
- // 100861_dirac_dec
- ivas_dirac_config_bands_fx( band_grouping, IVAS_MAX_NUM_BANDS, (Word16) ( Fs * INV_CLDFB_BANDWIDTH + 0.5f ), dirac_to_spar_md_bands, hQMetaData->useLowerBandRes, hConfig->enc_param_start_band, hFbMdft, 1 );
- }
- ELSE
- {
- ivas_dirac_config_bands_fx( band_grouping, hConfig->nbands, (Word16) ( Fs * INV_CLDFB_BANDWIDTH + 0.5f ), NULL, 0, 0, hFbMdft, 1 );
- }
-#endif
return error;
}
@@ -510,18 +498,19 @@ void ivas_get_dirac_sba_max_md_bits_fx(
return;
}
+
/*-------------------------------------------------------------------------
* ivas_dirac_sba_config()
*
* DirAC Configuration function for SBA
*------------------------------------------------------------------------*/
+
ivas_error ivas_dirac_sba_config_fx(
IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
Word16 *element_mode, /* i/o: element mode of the core coder */
Word32 sba_total_brate, /* i : SBA total bitrate */
const Word16 sba_order, /* i : Ambisonic (SBA) order */
- const Word16 nbands /* i : number of frequency bands */
- ,
+ const Word16 nbands, /* i : number of frequency bands */
IVAS_FORMAT ivas_format )
{
Word16 nbands_coded;
@@ -606,14 +595,19 @@ ivas_error ivas_dirac_sba_config_fx(
}
}
- ivas_get_dirac_sba_max_md_bits_fx( sba_total_brate, &hQMetaData->bits_frame_nominal, &hQMetaData->metadata_max_bits, &hQMetaData->qmetadata_max_bit_req, hQMetaData->q_direction[0].cfg.nbands,
- ivas_format );
+ ivas_get_dirac_sba_max_md_bits_fx( sba_total_brate, &hQMetaData->bits_frame_nominal, &hQMetaData->metadata_max_bits, &hQMetaData->qmetadata_max_bit_req, hQMetaData->q_direction[0].cfg.nbands, ivas_format );
return error;
}
-void computeDirectionVectors_fixed(
+/*-------------------------------------------------------------------------
+ * computeDirectionVectors()
+ *
+ *
+ *------------------------------------------------------------------------*/
+
+void computeDirectionVectors_fx2(
Word32 *intensity_real_x, /* i: exp = i_e */
Word32 *intensity_real_y, /* i: exp = i_e */
Word32 *intensity_real_z, /* i: exp = i_e */
@@ -633,6 +627,7 @@ void computeDirectionVectors_fixed(
Word16 norm_x, norm_y, norm_z;
Word32 scaled_x, scaled_y, scaled_z;
Word16 e_x, e_y, e_z;
+
FOR( i = enc_param_start_band; i < enc_param_start_band + num_frequency_bands; ++i )
{
norm_x = norm_l( *intensity_real_x );
@@ -688,11 +683,7 @@ void computeDirectionVectors_fixed(
return;
}
-/*-------------------------------------------------------------------------
- * computeDirectionVectors()
- *
- *
- *------------------------------------------------------------------------*/
+
void computeDirectionVectors_fx(
Word32 *intensity_real_x, // i: Q( i_q )
@@ -722,6 +713,7 @@ void computeDirectionVectors_fx(
Word32 *init_x = intensity_real_x;
Word32 *init_y = intensity_real_y;
Word32 *init_z = intensity_real_z;
+
// First loop to determine the Q for the direction vector
FOR( i = enc_param_start_band; i < enc_param_start_band + num_frequency_bands; ++i )
{
@@ -749,6 +741,7 @@ void computeDirectionVectors_fx(
intensity_real_x = init_x;
intensity_real_y = init_y;
intensity_real_z = init_z;
+
// Actual processing loop for the direction vector
FOR( i = enc_param_start_band; i < enc_param_start_band + num_frequency_bands; ++i )
{
@@ -788,15 +781,18 @@ void computeDirectionVectors_fx(
}
*i_q = min_factor;
move16();
+
return;
}
+
/*-------------------------------------------------------------------------
* computeDiffuseness()
*
*
*------------------------------------------------------------------------*/
-void computeDiffuseness_fixed(
+
+void computeDiffuseness_fx(
Word32 *buffer_intensity[DIRAC_NUM_DIMS][DIRAC_NO_COL_AVG_DIFF], // i: Q(q_factor_intensity)
const Word32 *buffer_energy, // i: Q(q_factor_energy)
const Word16 num_freq_bands,
@@ -820,7 +816,6 @@ void computeDiffuseness_fixed(
Word16 q_ene, q_intensity;
/* Compute Intensity slow and energy slow buffer_intensity and buffer_energy */
-
set_zero_fx( intensity_slow, i_mult( DIRAC_NUM_DIMS, CLDFB_NO_CHANNELS_MAX ) );
set_zero_fx( intensity_slow_abs, CLDFB_NO_CHANNELS_MAX );
set_zero_fx( energy_slow, CLDFB_NO_CHANNELS_MAX );
@@ -979,17 +974,20 @@ void computeDiffuseness_fixed(
return;
}
-Word32 deindex_azimuth_fx( /* o : output Q22 */
- Word16 id_phi, /* i : index */
- const Word16 no_bits, /* i : number of bits for the spherical grid */
- const Word16 id_th, /* i : elevation index */
- const Word16 remap, /* i : remapping flag */
- const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
+
+/* o : output Q22 */
+Word32 deindex_azimuth_fx(
+ Word16 id_phi, /* i : index */
+ const Word16 no_bits, /* i : number of bits for the spherical grid */
+ const Word16 id_th, /* i : elevation index */
+ const Word16 remap, /* i : remapping flag */
+ const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
)
{
Word16 flag_delta;
Word32 dd_fx, delta_phi_fx;
Word32 phi_hat_fx;
+
test();
IF( NE_32( mc_format, MC_LS_SETUP_INVALID ) && EQ_16( no_bits, 2 ) )
{
@@ -1039,6 +1037,7 @@ Word32 deindex_azimuth_fx( /* o : output Q22
}
phi_hat_fx = companding_azimuth_fx( phi_hat_fx, mc_format, flag, -1 );
}
+
return phi_hat_fx;
}
@@ -1100,6 +1099,7 @@ void deindex_spherical_component_fx(
return;
}
+
/*----------------------------------------------------------------
* calculate_hodirac_sector_parameters()
*
diff --git a/lib_com/ivas_error.h b/lib_com/ivas_error.h
index 484faa90fbfc939e28e56c280aa0703a3c146ec4..035819c28339e24c171609cdf9647d5326c06495 100644
--- a/lib_com/ivas_error.h
+++ b/lib_com/ivas_error.h
@@ -77,10 +77,12 @@ typedef enum
IVAS_ERR_EXT_ORIENTATION_NOT_SUPPORTED,
IVAS_ERR_DIRECTIVITY_NOT_SUPPORTED,
IVAS_ERR_ACOUSTIC_ENVIRONMENT_NOT_SUPPORTED,
+ IVAS_ERR_OBJECTS_EDITING_NOT_SUPPORTED,
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ IVAS_ERR_OBJECTS_EDITING_AND_PANNING_NOT_SUPPORTED,
+#endif
IVAS_ERR_INVALID_HRTF,
-#ifdef FIX_989_TD_REND_ROM
IVAS_ERR_INVALID_HRTF_SAMPLING_RATE,
-#endif
IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA,
IVAS_ERR_INVALID_INPUT_FORMAT,
IVAS_ERR_INVALID_INDEX,
@@ -251,12 +253,16 @@ static inline const char *ivas_error_to_string( ivas_error error_code )
return "Directivity not supported";
case IVAS_ERR_ACOUSTIC_ENVIRONMENT_NOT_SUPPORTED:
return "Acoustic environment not supported";
+ case IVAS_ERR_OBJECTS_EDITING_NOT_SUPPORTED:
+ return "Objects editing not supported";
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ case IVAS_ERR_OBJECTS_EDITING_AND_PANNING_NOT_SUPPORTED:
+ return "Wrong use of both Object editing and Non-diegetic panning";
+#endif
case IVAS_ERR_INVALID_HRTF:
return "Unsupported HRTF filter set";
-#ifdef FIX_989_TD_REND_ROM
case IVAS_ERR_INVALID_HRTF_SAMPLING_RATE:
return "Wrong sampling rate in HRTF binary file";
-#endif
case IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA:
return "Renderer data missing in HRTF binary file";
case IVAS_ERR_INVALID_INPUT_FORMAT:
diff --git a/lib_com/ivas_filters_fx.c b/lib_com/ivas_filters_fx.c
index eca54cc55e99e883982da5403341ac6e7f511c67..02e7b272a4beb7759335c88421067918f710763f 100644
--- a/lib_com/ivas_filters_fx.c
+++ b/lib_com/ivas_filters_fx.c
@@ -41,28 +41,27 @@
/*------------------------------------------------------------------------------------------*
* Local functions declaration
*------------------------------------------------------------------------------------------*/
-static void ivas_iir_2_filter_fx(
- ivas_filters_process_state_t *filter_state,
- Word32 *pIn_Out_fx, // Q(31-*pIn_Out_e)
- const Word16 length,
- const Word16 stage,
- Word16 *pIn_Out_e );
+
+static void ivas_iir_2_filter_fx( ivas_filters_process_state_t *filter_state, Word32 *pIn_Out_fx, const Word16 length, const Word16 stage, Word16 *pIn_Out_e );
+
+
/*-----------------------------------------------------------------------------------------*
* Function ivas_filters_init()
*
* Initialisation call for filtering a signal
*-----------------------------------------------------------------------------------------*/
+
void ivas_filters_init_fx(
- ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
- const Word32 *filt_coeff_fx, /* i : filter coefficients Q31- *filt_coeff_e */
- const Word16 *filt_coeff_e, /* i : exponents of filter coefficients */
- const Word16 order ) /* i : filter order */
+ ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
+ const Word32 *filt_coeff_fx, /* i : filter coefficients Q31- *filt_coeff_e */
+ const Word16 *filt_coeff_e, /* i : exponents of filter coefficients */
+ const Word16 order ) /* i : filter order */
{
Word16 i;
+
filter_state->order = order;
move16();
-
test();
IF( EQ_16( order, IVAS_FILTER_ORDER_1 ) )
{
@@ -155,6 +154,7 @@ void ivas_filters_init_fx(
*
* Process call for selecting the type filter
*-----------------------------------------------------------------------------------------*/
+
void ivas_filter_process_fx(
ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
Word32 *pIn_Out_fx, /* i/o: signal subject to filtering Q(q_factor) */
@@ -163,6 +163,7 @@ void ivas_filter_process_fx(
{
Word16 pIn_Out_e[L_FRAME_MAX];
Word16 i;
+
SWITCH( filter_state->order )
{
case IVAS_FILTER_ORDER_1:
@@ -195,6 +196,7 @@ void ivas_filter_process_fx(
return;
}
+
void ivas_filter_process_exp_fx(
ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
Word32 *pIn_Out_fx, /* i/o: signal subject to filtering (exp[i] : pIn_out_e[i]) */
@@ -227,6 +229,7 @@ void ivas_filter_process_exp_fx(
*
* Process call for filtering a signal
*-----------------------------------------------------------------------------------------*/
+
static void ivas_iir_2_filter_fx(
ivas_filters_process_state_t *filter_state,
Word32 *pIn_Out_fx, // Q(31-*pIn_Out_e)
@@ -279,4 +282,6 @@ static void ivas_iir_2_filter_fx(
}
}
}
+
+ return;
}
diff --git a/lib_com/ivas_ism_com_fx.c b/lib_com/ivas_ism_com_fx.c
index 30cd2f29e095ddb08699ac2b5a0e5ca2de9fccbc..ea276c944920f227648b8d0fccf79076571f0806 100644
--- a/lib_com/ivas_ism_com_fx.c
+++ b/lib_com/ivas_ism_com_fx.c
@@ -470,16 +470,22 @@ void ivas_ism_reset_metadata(
hIsmMeta->non_diegetic_flag = 0;
move16();
-#ifdef OBJ_EDITING_API
- hIsmMeta->edited_gain_fx = ONE_IN_Q31;
+ hIsmMeta->edited_gain_fx = ONE_IN_Q29;
+ move32();
hIsmMeta->edited_azimuth_fx = 0;
+ move32();
hIsmMeta->edited_elevation_fx = 0;
+ move32();
hIsmMeta->edited_pitch_fx = 0;
+ move32();
hIsmMeta->edited_yaw_fx = 0;
+ move32();
hIsmMeta->edited_radius_fx = ONE_IN_Q9;
- hIsmMeta->gain_fx = ONE_IN_Q31;
+ move32();
+ hIsmMeta->gain_fx = ONE_IN_Q29;
+ move32();
hIsmMeta->non_diegetic_flag = 0;
-#endif
+ move16();
return;
}
diff --git a/lib_com/ivas_limiter_fx.c b/lib_com/ivas_limiter_fx.c
index 4250d7a7a46db4ebc5500b6754d015d1f25a601d..a293b629c189f7cedfff46ed6caf5e6b4213873d 100644
--- a/lib_com/ivas_limiter_fx.c
+++ b/lib_com/ivas_limiter_fx.c
@@ -41,12 +41,16 @@
#include
#include "ivas_prot_fx.h"
-
-#define ATTACK_CNST_48k ( 2106670080 ) // Q31
-#define ATTACK_CNST_32k ( 2086555136 ) // Q31
-#define ATTACK_CNST_16k ( 2027355264 ) // Q31
-#define ATTACK_CNST_8k ( 1913946752 ) // Q31
-
+#define RELEASE_CNST_20MS ( 85899345 ) // Q30
+#define RELEASE_CNST_2_20MS ( 21474836 ) // Q30
+#define RELEASE_CNST_10MS ( 42949672 ) // Q30
+#define RELEASE_CNST_2_10MS ( 10737418 ) // Q30
+#define RELEASE_CNST_5MS ( 21474836 ) // Q30
+#define RELEASE_CNST_2_5MS ( 5368709 ) // Q30
+#define ATTACK_CNST_48k ( 2106670080 ) // Q31
+#define ATTACK_CNST_32k ( 2086555136 ) // Q31
+#define ATTACK_CNST_16k ( 2027355264 ) // Q31
+#define ATTACK_CNST_8k ( 1913946752 ) // Q31
/*-------------------------------------------------------------------*
* detect_strong_saturations()
@@ -349,24 +353,45 @@ void limiter_process_fx(
* keep the gain curve smoother if the threshold is exceeded in many frames
* in a short span of time.
*/
- SWITCH( output_frame )
+ IF( EQ_32( L_mult0( output_frame, 50 ), hLimiter->sampling_rate ) )
{
- case 960:
- case 640:
- case 320:
- case 160:
- releaseHeuristic_cnst = 85899345; /*Q30*/
- move32();
- releaseHeuristic_cnst_2 = 21474836; /*Q30*/
- move32();
- BREAK;
- default:
- releaseHeuristic_cnst = 21474836; /*Q30*/
- move32();
- releaseHeuristic_cnst_2 = 5368709; /*Q30*/
- move32();
- BREAK;
+ releaseHeuristic_cnst = RELEASE_CNST_20MS;
+ move32();
+ releaseHeuristic_cnst_2 = RELEASE_CNST_2_20MS;
+ move32();
}
+ ELSE IF( EQ_32( L_mult0( output_frame, 100 ), hLimiter->sampling_rate ) )
+ {
+ releaseHeuristic_cnst = RELEASE_CNST_10MS;
+ move32();
+ releaseHeuristic_cnst_2 = RELEASE_CNST_2_10MS;
+ move32();
+ }
+ ELSE IF( EQ_32( L_mult0( output_frame, 200 ), hLimiter->sampling_rate ) )
+ {
+ releaseHeuristic_cnst = RELEASE_CNST_5MS;
+ move32();
+ releaseHeuristic_cnst_2 = RELEASE_CNST_2_5MS;
+ move32();
+ }
+ ELSE
+ {
+ // computing output_frame/hLimiter->sampling_rate in Q30
+ i = norm_s( output_frame );
+ c = norm_l( hLimiter->sampling_rate );
+ scale = extract_h( L_shl( hLimiter->sampling_rate, c ) );
+ idx = shl( output_frame, i );
+ IF( GT_16( idx, scale ) )
+ {
+ idx = shr( idx, 1 );
+ i = sub( i, 1 );
+ }
+ scale = div_s( idx, scale );
+ i = sub( sub( c, i ), 1 ); // Q30
+ releaseHeuristic_cnst_2 = L_shl( scale, i );
+ releaseHeuristic_cnst = L_shl( releaseHeuristic_cnst_2, 2 );
+ }
+
releaseHeuristic = hLimiter->release_heuristic_fx; /* Q30 */
move32();
diff --git a/lib_com/ivas_pca_tools_fx.c b/lib_com/ivas_pca_tools_fx.c
index c84078a7d4291080687cfe2597eafe8af3aba784..e0d42e4040cd90a6dc4f59c0d193d7c2d6d1022a 100644
--- a/lib_com/ivas_pca_tools_fx.c
+++ b/lib_com/ivas_pca_tools_fx.c
@@ -195,7 +195,7 @@ static void house_refl_fx(
IF( ( *normu_fx ) == 0 )
{
- pu_fx[0] = SQRT2_FIXED; // same q as other elements -> Q30
+ pu_fx[0] = SQRT2_FX; // same q as other elements -> Q30
pu_e[0] = 1;
move32();
move16();
@@ -387,8 +387,7 @@ static void house_qr_fx(
move32();
}
-
- pv_fx[s - k] = dotp_fixed( &pu_fx[k], &pa_fx[k], sub( n_rows, k ) ); // exp: tmp_pu_e[k]
+ pv_fx[s - k] = dotp_fx32( &pu_fx[k], &pa_fx[k], sub( n_rows, k ) ); // exp: tmp_pu_e[k]
pv_exp[s - k] = tmp_pu_e[k];
move32();
move16();
@@ -444,7 +443,7 @@ void eig_qr_fx(
move16();
/* check zero matrix */
- d_fx = dotp_fixed( A_fx, A_fx, n * n ); // A_q + A_q - Q31 -> d_q
+ d_fx = dotp_fx32( A_fx, A_fx, n * n ); // A_q + A_q - Q31 -> d_q
d_q = sub( add( A_q, A_q ), 31 );
if ( d_fx != 0 )
@@ -480,7 +479,7 @@ void eig_qr_fx(
}
/* stop condition */
- d_fx = dotp_fixed_guarded( D_fx, D_fx, n * n ); // ( A_q + A_q - 31 ) - find_guarded_bits_fx( n * n )
+ d_fx = dotp_fx_guarded( D_fx, D_fx, n * n ); // ( A_q + A_q - 31 ) - find_guarded_bits_fx( n * n )
d_q = sub( sub( add( A_q, A_q ), 31 ), find_guarded_bits_fx( n * n ) );
exp = sub( 31, d_q );
d_fx = Sqrt32( d_fx, &exp );
diff --git a/lib_com/ivas_prot_fx.h b/lib_com/ivas_prot_fx.h
index f226e5d95f6be98e4bb9bdb429f6d3c1c1cc8200..b24d34ce8542ee11adff3a2cb86db0b0dc5b10e8 100644
--- a/lib_com/ivas_prot_fx.h
+++ b/lib_com/ivas_prot_fx.h
@@ -53,137 +53,131 @@
*----------------------------------------------------------------------------------*/
ivas_error ivas_masa_dec_open_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder handle */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder handle */
);
void ivas_masa_dec_close_fx(
- MASA_DECODER_HANDLE *hMasa /* i/o: MASA metadata structure */
+ MASA_DECODER_HANDLE *hMasa /* i/o: MASA metadata structure */
);
ivas_error create_evs_sce_enc_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
- const Word16 sce_id, /* i : SCE # identifier */
- const Word32 element_brate /* i : element bitrate */
+ Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
+ const Word16 sce_id, /* i : SCE # identifier */
+ const Word32 element_brate /* i : element bitrate */
);
void destroy_sce_enc_fx(
- SCE_ENC_HANDLE hSCE, /* i/o: SCE encoder structure */
- Flag is_evs /* i : Flag to indicate EVS encoder */
+ SCE_ENC_HANDLE hSCE, /* i/o: SCE encoder structure */
+ Flag is_evs /* i : Flag to indicate EVS encoder */
);
void generate_gridEq_fx(
- SPHERICAL_GRID_DATA *data /* o : data structure for grid */
+ SPHERICAL_GRID_DATA *data /* o : data structure for grid */
);
void masa_sample_rate_band_correction_fx(
- MASA_CODEC_CONFIG *config, /* i/o: MASA codec config */
- Word16 *band_mapping, /* i/o: Band mapping used and modified */
- IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: QMetadata structure for modification */
- const UWord8 maxBand, /* i : max band */
- UWord8 is_encoder, /* i : signals if called at encoder */
- MASA_DECODER_EXT_OUT_META_HANDLE hExtOutMeta /* i/o: MASA decoder metadata ext out buffer */
+ MASA_CODEC_CONFIG *config, /* i/o: MASA codec config */
+ Word16 *band_mapping, /* i/o: Band mapping used and modified */
+ IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: QMetadata structure for modification */
+ const UWord8 maxBand, /* i : max band */
+ UWord8 is_encoder, /* i : signals if called at encoder */
+ MASA_DECODER_EXT_OUT_META_HANDLE hExtOutMeta /* i/o: MASA decoder metadata ext out buffer */
);
void ivas_masa_set_elements_fx(
- const Word32 ivas_total_brate, /* i : codec total bitrate */
- const Word16 mc_mode, /* i : MC format mode */
- const Word16 nchan_transport, /* i : number of MASA input/transport channels */
- IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
- Word16 *element_mode, /* o : element mode */
- Word16 *nSCE, /* o : number of SCEs */
- Word16 *nCPE, /* o : number of CPEs */
- const Word16 ivas_format, /* i : IVAS format */
- const ISM_MODE ism_mode, /* i : ISM mode */
- const Word32 ism_total_brate /* i : initial ISM total bitrate */
+ const Word32 ivas_total_brate, /* i : codec total bitrate */
+ const Word16 mc_mode, /* i : MC format mode */
+ const Word16 nchan_transport, /* i : number of MASA input/transport channels */
+ IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
+ Word16 *element_mode, /* o : element mode */
+ Word16 *nSCE, /* o : number of SCEs */
+ Word16 *nCPE, /* o : number of CPEs */
+ const Word16 ivas_format, /* i : IVAS format */
+ const ISM_MODE ism_mode, /* i : ISM mode */
+ const Word32 ism_total_brate /* i : initial ISM total bitrate */
);
void ivas_masa_set_coding_config_fx(
- MASA_CODEC_CONFIG *config, /* i/o: MASA coding config structure */
- Word16 *band_mapping, /* o : Band mapping used */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word16 nchan_transport, /* i : number of transport channels (mono/stereo) */
- const UWord8 isMcMasa /* i : toggle for selecting mcMASA specific config */
+ MASA_CODEC_CONFIG *config, /* i/o: MASA coding config structure */
+ Word16 *band_mapping, /* o : Band mapping used */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word16 nchan_transport, /* i : number of transport channels (mono/stereo) */
+ const UWord8 isMcMasa /* i : toggle for selecting mcMASA specific config */
);
void ivas_masa_prerender_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- Word32 *output_fx[], /* i/o: synthesized core-coder transport channels */
- Word16 *q_shift, /* o : specifies how much the Q-factor of output has changed by. */
- const Word16 output_frame, /* i : output frame length per channel */
- const Word16 nchan_remapped /* i : number of transports used in core */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ Word32 *output_fx[], /* i/o: synthesized core-coder transport channels */
+ Word16 *q_shift, /* o : specifies how much the Q-factor of output has changed by. */
+ const Word16 output_frame, /* i : output frame length per channel */
+ const Word16 nchan_remapped /* i : number of transports used in core */
);
ivas_error ivas_masa_dec_reconfigure_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord16 *nSamplesRendered, /* o : number of samples flushed from the previous frame (JBM) */
- Word16 *data /* o : output synthesis signal */
-#endif
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
void reconstruct_ism_ratios_fx(
- Word16 *ratio_ism_idx, /* i : index vector Q0 */
- const Word16 nchan_ism, /* i : number of components/objects Q0 */
- const Word32 step, /* i : quantization step Q31 */
- Word32 *q_energy_ratio_ism /* o : reconstructed ISM values Q30 */
+ Word16 *ratio_ism_idx, /* i : index vector Q0 */
+ const Word16 nchan_ism, /* i : number of components/objects Q0 */
+ const Word32 step, /* i : quantization step Q31 */
+ Word32 *q_energy_ratio_ism /* o : reconstructed ISM values Q30 */
);
void distribute_evenly_ism_fx(
- Word16 *idx, /* o : index values */
- const Word16 K, /* i : sum of indexes */
- const Word16 nchan_ism /* i : number of objects */
+ Word16 *idx, /* o : index values */
+ const Word16 K, /* i : sum of indexes */
+ const Word16 nchan_ism /* i : number of objects */
);
Word16 valid_ratio_index_fx(
- Word16 index, /* i : index to be checked */
- const Word16 K, /* i : L1 norm to check against */
- const Word16 len /* i : vector length */
+ Word16 index, /* i : index to be checked */
+ const Word16 K, /* i : L1 norm to check against */
+ const Word16 len /* i : vector length */
);
UWord16 index_theta_phi_16_fx(
- Word32 *p_theta, /* i/o: input elevation to be indexed Q22 */
- Word32 *p_phi, /* i/o: input azimuth to be indexed Q22 */
- const SPHERICAL_GRID_DATA *gridData /* i : generated grid data */
+ Word32 *p_theta, /* i/o: input elevation to be indexed Q22 */
+ Word32 *p_phi, /* i/o: input azimuth to be indexed Q22 */
+ const SPHERICAL_GRID_DATA *gridData /* i : generated grid data */
);
ivas_error ivas_masa_decode_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder struct */
- Decoder_State *st, /* i/o: decoder state structure */
- Word16 *nb_bits_read /* o : number of bits read */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder struct */
+ Decoder_State *st, /* i/o: decoder state structure */
+ Word16 *nb_bits_read /* o : number of bits read */
);
void ivas_omasa_rearrange_channels_fx(
- Word32 *output[], /* o : output synthesis signal */
- const Word16 nchan_transport_ism, /* o : number of ISM TCs */
- const Word16 output_frame /* i : output frame length per channel */
+ Word32 *output[], /* o : output synthesis signal */
+ const Word16 nchan_transport_ism, /* o : number of ISM TCs */
+ const Word16 output_frame /* i : output frame length per channel */
);
ivas_error ivas_omasa_combine_separate_ism_with_masa_open_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
void ivas_omasa_combine_separate_ism_with_masa_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- Word32 *output[], /* o : output synthesis signal */
- Word16 *output_q, /* i/o: output Q value */
- const Word16 nchan_ism, /* i : number of ISMs */
- const Word16 output_frame /* i : output frame length per channel */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ Word32 *output[], /* o : output synthesis signal */
+ Word16 *output_q, /* i/o: output Q value */
+ const Word16 nchan_ism, /* i : number of ISMs */
+ const Word16 output_frame /* i : output frame length per channel */
);
ivas_error ivas_omasa_objects_delay_open_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
void ivas_omasa_render_objects_from_mix_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- Word32 *output[], /* o : output synthesis signal */
- const Word16 nchan_ism, /* i : number of ISMs */
- const Word16 output_frame, /* i : output frame length per channel */
- Word16 *output_q /* i/o: output Q value */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ Word32 *output[], /* o : output synthesis signal */
+ const Word16 nchan_ism, /* i : number of ISMs */
+ const Word16 output_frame, /* i : output frame length per channel */
+ Word16 *output_q /* i/o: output Q value */
);
-
ivas_error ivas_omasa_ism_metadata_dec_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
const Word32 ism_total_brate, /* i : ISM total bitrate */
@@ -194,20 +188,13 @@ ivas_error ivas_omasa_ism_metadata_dec_fx(
);
ivas_error ivas_omasa_dec_config_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
-#ifdef FIX_HRTF_LOAD
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
Word16 *num_src,
Word16 SrcInd[MAX_NUM_TDREND_CHANNELS]
-#else
- UWord16 *nSamplesRendered, /* o : number of samples flushed from the previous frame (JBM) */
- Word16 *num_src,
- Word16 SrcInd[MAX_NUM_TDREND_CHANNELS],
- Word16 *data /* o : output synthesis signal */
-#endif
);
void ivas_omasa_modify_masa_energy_ratios_fx(
- IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
+ IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
Word32 masa_to_total_energy_ratio_fx[MAX_PARAM_SPATIAL_SUBFRAMES][MASA_MAXIMUM_CODING_SUBBANDS] // Q30
);
@@ -218,16 +205,16 @@ Word32 calculate_cpe_brate_MASA_ISM_fx(
);
Word16 ivas_jbm_dec_get_num_tc_channels_fx(
- Decoder_Struct *st_ivas /* i : IVAS decoder handle */
+ Decoder_Struct *st_ivas /* i : IVAS decoder handle */
);
ivas_error ivas_jbm_dec_tc_buffer_open_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const TC_BUFFER_MODE tc_buffer_mode, /* i : buffer mode */
- const Word16 nchan_transport_jbm, /* i : number of real transport channels */
- const Word16 nchan_transport_internal, /* i : number of totally buffered channels */
- const Word16 nchan_full, /* i : number of channels to fully store */
- const Word16 n_samples_granularity /* i : granularity of the renderer/buffer */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const TC_BUFFER_MODE tc_buffer_mode, /* i : buffer mode */
+ const Word16 nchan_transport_jbm, /* i : number of real transport channels */
+ const Word16 nchan_transport_internal, /* i : number of totally buffered channels */
+ const Word16 nchan_full, /* i : number of channels to fully store */
+ const Word16 n_samples_granularity /* i : granularity of the renderer/buffer */
);
void ivas_dct_windowing_fx(
@@ -239,152 +226,160 @@ void ivas_dct_windowing_fx(
const Word16 frame_len, /*Q0*/
Word32 *pOut_buf, // Q10
Word32 *pBuffer_prev, // Q10
- Word32 *pTemp_lfe );
+ Word32 *pTemp_lfe
+);
void ivas_get_twid_factors_fx1(
const Word16 length, // Q0
const Word16 **pTwid_re, // Q15
- const Word16 **pTwid_im );
+ const Word16 **pTwid_im
+);
Word32 ivas_get_mdct_scaling_gain_fx(
- const Word16 dct_len_by_2 );
+ const Word16 dct_len_by_2
+);
void ivas_imdct_fx(
const Word32 *pIn, // Q24
Word32 *pOut, // q_out Q9
const Word16 length /*Q0*/,
- Word16 *q_out );
+ Word16 *q_out
+);
void ivas_mdct_fx(
const Word32 *pIn, // q_out
Word32 *pOut, // q_out
const Word16 length, // Q0
- Word16 *q_out );
+ Word16 *q_out
+);
void ivas_itda_fx(
- const Word32 *re, /* i : time alised signal after IDCT Q24 */
- Word32 *pOut, /* o : time domain buffer of size 2*length */
- const Word16 length /* i : length of time alised signal buffer Q0 */
+ const Word32 *re, /* i : time alised signal after IDCT Q24 */
+ Word32 *pOut, /* o : time domain buffer of size 2*length */
+ const Word16 length /* i : length of time alised signal buffer Q0 */
);
void ivas_tda_fx(
- const Word32 *pIn, /* i : time domain buffer of size 2*length Q10*/
- Word32 *pOut, /* o : time domain buffer of size length Q10 */
- const Word16 length /* i : length of time alised signal buffer Q0*/
+ const Word32 *pIn, /* i : time domain buffer of size 2*length Q10*/
+ Word32 *pOut, /* o : time domain buffer of size length Q10 */
+ const Word16 length /* i : length of time alised signal buffer Q0*/
);
-// ivas_agc_dec_fx.c
ivas_error ivas_spar_agc_dec_open_fx(
- ivas_agc_dec_state_t **hAgcDec, /* i/o: SPAR AGC decoder handle */
- const Word32 output_Fs /* i : output sampling rate */
+ ivas_agc_dec_state_t **hAgcDec, /* i/o: SPAR AGC decoder handle */
+ const Word32 output_Fs /* i : output sampling rate */
);
void ivas_spar_agc_dec_close_fx(
- ivas_agc_dec_state_t **hAgcDec /* i/o: SPAR AGC decoder handle */
+ ivas_agc_dec_state_t **hAgcDec /* i/o: SPAR AGC decoder handle */
);
void ivas_agc_dec_process_fx(
- ivas_agc_dec_state_t *hAgcDec, /* i/o: AGC decoder handle */
- Word32 *pcm_in[], /* i : input audio channels */
- Word32 *pcm_out[], /* o : output audio channels */
- const Word16 n_channels, /* i : number of channels */
- const Word16 output_frame /* i : output frame length */
+ ivas_agc_dec_state_t *hAgcDec, /* i/o: AGC decoder handle */
+ Word32 *pcm_in[], /* i : input audio channels */
+ Word32 *pcm_out[], /* o : output audio channels */
+ const Word16 n_channels, /* i : number of channels */
+ const Word16 output_frame /* i : output frame length */
);
void ivas_agc_read_bits_fx(
- ivas_agc_dec_state_t *hAgcDec, /* i/o: AGC decoder handle */
- Decoder_State *st0, /* i/o: decoder state structure - for bitstream handling */
- const Word16 n_channels, /* i : number of channels */
- const Word16 AGC_flag /* i : AGC on/off flag */
+ ivas_agc_dec_state_t *hAgcDec, /* i/o: AGC decoder handle */
+ Decoder_State *st0, /* i/o: decoder state structure - for bitstream handling */
+ const Word16 n_channels, /* i : number of channels */
+ const Word16 AGC_flag /* i : AGC on/off flag */
);
-// ivas_agc_com_fx.c
void ivas_agc_initWindowFunc_fx(
Word16 *pWinFunc, // o: Q15
- const Word16 length );
+ const Word16 length
+);
void ivas_agc_calcGainParams_fx(
UWord16 *absEmin, // o: Q0
UWord16 *betaE, // o: Q0
UWord16 *maxAttExp, // o: Q0
- const Word16 numCoeffs );
+ const Word16 numCoeffs
+);
void ivas_transient_det_process_fx(
- ivas_trans_det_state_t *hTranDet, /* i/o: SPAR TD handle */
- Word32 *pIn_pcm, /* i : input audio channels */
- const Word16 frame_len, /* i : frame length in samples */
- Word16 transient_det[2] /* o : transient det outputs */
+ ivas_trans_det_state_t *hTranDet, /* i/o: SPAR TD handle */
+ Word32 *pIn_pcm, /* i : input audio channels */
+ const Word16 frame_len, /* i : frame length in samples */
+ Word16 transient_det[2] /* o : transient det outputs */
);
void ivas_td_decorr_get_ducking_gains_fx(
- ivas_trans_det_state_t *hTranDet, /* i/o: Transient detector handle */
+ ivas_trans_det_state_t *hTranDet, /* i/o: Transient detector handle */
Word32 *pIn_pcm,
Word32 *pIn_duck_gains,
Word32 *pOut_duck_gains,
const Word16 frame_len,
- const Word16 tdet_flag );
+ const Word16 tdet_flag
+);
-// ivas_stereo_eclvq_dec.c
-void ECSQ_decode(
+void ECSQ_decode_fx(
ECSQ_instance *ecsq_inst,
const Word16 N,
- Word16 *output );
+ Word16 *output
+);
-// bass_psfilter.c
Word16 res_bpf_adapt_fx(
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: DFT stereo decoder handle */
- const Word32 *bpf_error_signal_8k, /* i : BPF modification signal */
- Word32 res_buf[STEREO_DFT_N_8k] /* i : residual buffer */
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: DFT stereo decoder handle */
+ const Word32 *bpf_error_signal_8k, /* i : BPF modification signal */
+ Word32 res_buf[STEREO_DFT_N_8k] /* i : residual buffer */
);
-// ivas_sns_com_fx.c
void sns_compute_scf_fx(
Word32 spectrum[], /* i : Spectrum (Q_in) */
const PsychoacousticParameters *pPsychParams,
const Word16 L_frame,
Word32 *scf, /* o : Scalefactors (Q16)*/
- Word16 q );
+ Word16 q
+);
void sns_interpolate_scalefactors_fx(
- Word32 *scf_int, /* o : interpolated scalefactors for spectrum shaping q16*/
- const Word32 *scf, /* i : sns scalefactors as derived from the signal or read from the bitstream Q16*/
- Word16 encoder_side /* i : flag, if scalefactors have to be inverted */
+ Word32 *scf_int, /* o : interpolated scalefactors for spectrum shaping q16*/
+ const Word32 *scf, /* i : sns scalefactors as derived from the signal or read from the bitstream Q16*/
+ Word16 encoder_side /* i : flag, if scalefactors have to be inverted */
);
void sns_shape_spectrum_fx(
- Word32 spectrum[], /* i/o: spectrum to be shaped Input Q is q_spectrum and ouput Q is (q_spectrum-1)*/
- Word16 *q_spectrum, /* i/o: Q of spectrum */
- const PsychoacousticParameters *pPsychParams, /* i : psychoacoustic parameters used to get the frequency bands */
- const Word32 *scf_int, /* i : already interpolated SNS scalefactors */
- const Word16 q_scf_int, /* i : Q of interpolated SNS scalefactors q_scf_int*/
- const Word16 L_frame, /* i : frame length */
- Word16 *length );
-
-// ivas_stereo_eclvq_com_fx.c
+ Word32 spectrum[], /* i/o: spectrum to be shaped Input Q is q_spectrum and ouput Q is (q_spectrum-1)*/
+ Word16 *q_spectrum, /* i/o: Q of spectrum */
+ const PsychoacousticParameters *pPsychParams, /* i : psychoacoustic parameters used to get the frequency bands */
+ const Word32 *scf_int, /* i : already interpolated SNS scalefactors */
+ const Word16 q_scf_int, /* i : Q of interpolated SNS scalefactors q_scf_int*/
+ const Word16 L_frame, /* i : frame length */
+ Word16 *length
+);
+
Word32 ECSQ_dequantize_gain_fx(
- const Word16 index );
+ const Word16 index
+);
void stereo_tca_enc_fx(
- CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
- const Word16 input_frame /* i : length of a frame per channel */
+ CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
+ const Word16 input_frame /* i : length of a frame per channel */
);
void ECSQ_dequantize_vector_fx(
const Word16 *input, /*qx*/
const Word32 global_gain, /*q15*/
const Word16 N,
- Word32 *output /*qx*/ );
+ Word32 *output /*qx*/
+);
void ECSQ_init_instance_fx(
ECSQ_instance *ecsq_inst,
const Word16 config_index,
- void *ac_handle );
+ void *ac_handle
+);
void decoder_tcx_invQ_fx(
- Decoder_State *st, /* i/o: coder memory state */
- Word16 prm[], /* i : parameters */
- Word16 A[], /* i : coefficients NxAz[M+1] */
- Word16 Aind[], /* i : frame-independent coefficients Az[M+1] */
+ Decoder_State *st, /* i/o: coder memory state */
+ Word16 prm[], /* i : parameters */
+ Word16 A[], /* i : coefficients NxAz[M+1] */
+ Word16 Aind[], /* i : frame-independent coefficients Az[M+1] */
const Word16 L_spec,
const Word16 L_frame,
const Word16 L_frameTCX,
@@ -392,22 +387,22 @@ void decoder_tcx_invQ_fx(
Word16 *x_e,
Word16 gainlpc2[],
Word16 gainlpc2_e[],
- Word16 xn_buf[], /* Q14 */
- Word16 *fUseTns, /* o : flag that is set if TNS data is present */
+ Word16 xn_buf[], /* Q14 */
+ Word16 *fUseTns, /* o : flag that is set if TNS data is present */
STnsData *tnsData,
Word16 *gain_tcx,
Word16 *gain_tcx_e,
const Word16 **prm_sqQ1,
Word16 *nf_seed,
- const Word16 bfi, /* i : Bad frame indicator */
- const Word16 frame_cnt /* i : frame counter in the super frame */
+ const Word16 bfi, /* i : Bad frame indicator */
+ const Word16 frame_cnt /* i : frame counter in the super frame */
);
void decoder_tcx_noisefilling_fx(
- Decoder_State *st, /* i/o: coder memory state */
+ Decoder_State *st, /* i/o: coder memory state */
const Word32 concealment_noise[L_FRAME48k],
const Word16 concealment_noise_exp,
- const Word16 A[], /* i : coefficients NxAz[M+1] */
+ const Word16 A[], /* i : coefficients NxAz[M+1] */
const Word16 L_frameTCX_glob,
const Word16 L_spec,
const Word16 L_frame,
@@ -421,13 +416,13 @@ void decoder_tcx_noisefilling_fx(
const Word16 gain_tcx_e,
const Word16 *prm_sqQ,
Word16 nf_seed,
- const Word16 bfi, /* i : Bad frame indicator */
+ const Word16 bfi, /* i : Bad frame indicator */
const Word16 MCT_flag,
- const Word16 frame_cnt /* i : frame counter in the super frame*/
+ const Word16 frame_cnt /* i : frame counter in the super frame */
);
void decoder_tcx_noiseshaping_igf_fx(
- Decoder_State *st, /* i/o: coder memory state */
+ Decoder_State *st, /* i/o: coder memory state */
const Word16 L_spec,
const Word16 L_frame,
const Word16 L_frameTCX,
@@ -438,283 +433,293 @@ void decoder_tcx_noiseshaping_igf_fx(
const Word16 gainlpc2_fx[],
const Word16 gainlpc2_e[],
Word16 *temp_concealment_method,
- const Word16 bfi /* i : Bad frame indicator */
+ const Word16 bfi /* i : Bad frame indicator */
);
void init_tcx_info_fx(
- Decoder_State *st, /* i/o: coder memory state */
- const Word16 L_frame_glob, /* i : global frame length */
- const Word16 L_frameTCX_glob, /* i : FB global frame length */
- const Word16 frame_cnt, /* i : frame counter in the super_frame */
- const Word16 bfi, /* i : bad frame indicator */
- Word16 *tcx_offset, /* o : folding point offset relative to the end of the previous frame */
- Word16 *tcx_offsetFB, /* o : FB folding point offset relative to the end of the previous frame*/
- Word16 *L_frame, /* o : frame length */
- Word16 *L_frameTCX, /* o : TCX frame length */
- Word16 *left_rect, /* o : left part is rectangular */
- Word16 *L_spec /* o : spectrum length */
+ Decoder_State *st, /* i/o: coder memory state */
+ const Word16 L_frame_glob, /* i : global frame length */
+ const Word16 L_frameTCX_glob, /* i : FB global frame length */
+ const Word16 frame_cnt, /* i : frame counter in the super_frame */
+ const Word16 bfi, /* i : bad frame indicator */
+ Word16 *tcx_offset, /* o : folding point offset relative to the end of the previous frame */
+ Word16 *tcx_offsetFB, /* o : FB folding point offset relative to the end of the previous frame*/
+ Word16 *L_frame, /* o : frame length */
+ Word16 *L_frameTCX, /* o : TCX frame length */
+ Word16 *left_rect, /* o : left part is rectangular */
+ Word16 *L_spec /* o : spectrum length */
);
void decoder_tcx_IGF_mono_fx(
- Decoder_State *st, /* i/o: coder memory state */
- Word32 x_fx[], /* o : de-quatized coefficients */
- Word16 *x_e, /* o : de-quatized coefficients exponent */
- Word16 *x_len, /* o : de-quatized coefficients length */
- const Word16 L_frame, /* i : frame length */
- const Word16 left_rect, /* i : left part is rectangular */
- const Word16 bfi, /* i : bad frame indicator */
- const Word16 frame_cnt /* i : frame counter in the super_frame */
+ Decoder_State *st, /* i/o: coder memory state */
+ Word32 x_fx[], /* o : de-quatized coefficients */
+ Word16 *x_e, /* o : de-quatized coefficients exponent */
+ Word16 *x_len, /* o : de-quatized coefficients length */
+ const Word16 L_frame, /* i : frame length */
+ const Word16 left_rect, /* i : left part is rectangular */
+ const Word16 bfi, /* i : bad frame indicator */
+ const Word16 frame_cnt /* i : frame counter in the super_frame */
);
void decoder_tcx_IGF_stereo_fx(
- Decoder_State **sts, /* i/o: coder memory states */
- STEREO_MDCT_DEC_DATA_HANDLE hStereoMdct, /* i/o: MDCT stereo structure */
- Word16 ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask */
- Word32 *x_fx[CPE_CHANNELS][NB_DIV], /* i/o: de-quatized coefficients */
- Word16 x_e[CPE_CHANNELS][NB_DIV], /* i/o: de-quatized coefficients exponents */
- Word16 x_len[CPE_CHANNELS][NB_DIV], /* o : length of de-quantized coefficients */
- const Word16 L_frame, /* i : frame length */
- const Word16 left_rect, /* i : left part is rectangular */
- const Word16 k, /* i : Subframe index */
- const Word16 bfi, /* i : bad frame indicator */
- const Word16 MCT_flag /* i : hMCT handle allocated (1) or not (0) */
+ Decoder_State **sts, /* i/o: coder memory states */
+ STEREO_MDCT_DEC_DATA_HANDLE hStereoMdct, /* i/o: MDCT stereo structure */
+ Word16 ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask */
+ Word32 *x_fx[CPE_CHANNELS][NB_DIV], /* i/o: de-quatized coefficients */
+ Word16 x_e[CPE_CHANNELS][NB_DIV], /* i/o: de-quatized coefficients exponents */
+ Word16 x_len[CPE_CHANNELS][NB_DIV], /* o : length of de-quantized coefficients */
+ const Word16 L_frame, /* i : frame length */
+ const Word16 left_rect, /* i : left part is rectangular */
+ const Word16 k, /* i : Subframe index */
+ const Word16 bfi, /* i : bad frame indicator */
+ const Word16 MCT_flag /* i : hMCT handle allocated (1) or not (0) */
);
void IGFDecReplicateTCX10State_fx(
- IGF_DEC_INSTANCE_HANDLE hIGFDec /* i/o: instance handle of IGF Decoder */
+ IGF_DEC_INSTANCE_HANDLE hIGFDec /* i/o: instance handle of IGF Decoder */
);
-Word16 get_igf_startline(
- Decoder_State *st, /* i : decoder state */
- const Word16 L_frame, /* i : length of the frame */
- const Word16 L_frameTCX /* i : full band frame length */
+Word16 get_igf_startline_fx(
+ Decoder_State *st, /* i : decoder state */
+ const Word16 L_frame, /* i : length of the frame */
+ const Word16 L_frameTCX /* i : full band frame length */
);
void stereo_dft_dec_reset_fx(
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft /* i/o: decoder DFT stereo handle */
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft /* i/o: decoder DFT stereo handle */
);
void stereo_dft_dec_update_fx(
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder DFT stereo handle */
- const Word16 output_frame, /* i : output frame length */
- const Word16 sba_dirac_stereo_flag /* i : signal stereo output for SBA DirAC */
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder DFT stereo handle */
+ const Word16 output_frame, /* i : output frame length */
+ const Word16 sba_dirac_stereo_flag /* i : signal stereo output for SBA DirAC */
);
+
void stereo_dft_res_ecu_fx(
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: Decoder DFT stereo handle */
- Word32 *pDFT_RES, /* i/o: residual signal */
- Word32 *const DFT_PRED_RES, /* i/o: residual prediction signal */
- const Word16 k, /* i : Subframe index */
- const Word16 output_frame, /* i : Output frame length */
- const Word16 prev_bfi, /* i : Previous BFI */
- const Word32 dmx_nrg, /* i : Down-mix energy */
- Word16 *num_plocs, /* i/o: Number of peak locations */
- Word16 *plocs, /* i/o: Peak locations (bin) */
- Word32 *plocsi, /* i/o: Peak locations (fractional) */
- Word32 *input_mem /* o : Residual DFT buffer input mem */
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: Decoder DFT stereo handle */
+ Word32 *pDFT_RES, /* i/o: residual signal */
+ Word32 *const DFT_PRED_RES, /* i/o: residual prediction signal */
+ const Word16 k, /* i : Subframe index */
+ const Word16 output_frame, /* i : Output frame length */
+ const Word16 prev_bfi, /* i : Previous BFI */
+ const Word32 dmx_nrg, /* i : Down-mix energy */
+ Word16 *num_plocs, /* i/o: Number of peak locations */
+ Word16 *plocs, /* i/o: Peak locations (bin) */
+ Word32 *plocsi, /* i/o: Peak locations (fractional) */
+ Word32 *input_mem /* o : Residual DFT buffer input mem */
);
+
void stereo_dft_res_subst_spec_fx(
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: Decoder DFT stereo handle */
- Word32 *pDFT_RES, /* i/o: residual signal */
- const Word32 *const DFT_PRED_RES, /* i : residual prediction signal */
- const Word16 time_offs, /* i : Time offset for phase adjustment*/
- const Word16 L_res, /* i : bandwidth of residual signal */
- const Word16 L_ana, /* i : Length of FFT analysis */
- const Word16 k, /* i : Subframe index */
- Word16 *num_plocs, /* i/o: Number of peak locations */
- Word16 *plocs, /* i/o: Peak locations (bin) */
- Word32 *plocsi, /* i/o: Peak locations (fractional) */
- const Word16 analysis_flag /* i : Flag for running peak analysis */
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: Decoder DFT stereo handle */
+ Word32 *pDFT_RES, /* i/o: residual signal */
+ const Word32 *const DFT_PRED_RES, /* i : residual prediction signal */
+ const Word16 time_offs, /* i : Time offset for phase adjustment */
+ const Word16 L_res, /* i : bandwidth of residual signal */
+ const Word16 L_ana, /* i : Length of FFT analysis */
+ const Word16 k, /* i : Subframe index */
+ Word16 *num_plocs, /* i/o: Number of peak locations */
+ Word16 *plocs, /* i/o: Peak locations (bin) */
+ Word32 *plocsi, /* i/o: Peak locations (fractional) */
+ const Word16 analysis_flag /* i : Flag for running peak analysis */
);
+
void stereo_dft_res_ecu_burst_att_fx(
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: Decoder DFT stereo handle */
- Word32 *pDFT_RES, /* i/o: residual signal /att. residual */
- const Word32 dmx_nrg, /* i : dmx energy of current frame */
- const Word16 L_res, /* i : Bandwidth of residual */
- const Word16 L_ana /* i : Length of FFT analysis */
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: Decoder DFT stereo handle */
+ Word32 *pDFT_RES, /* i/o: residual signal /att. residual */
+ const Word32 dmx_nrg, /* i : dmx energy of current frame */
+ const Word16 L_res, /* i : Bandwidth of residual */
+ const Word16 L_ana /* i : Length of FFT analysis */
);
void stereo_dft_generate_res_pred_fx(
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder DFT stereo handle */
- const Word16 samp_ratio, /* i : sampling ratio */
- Word32 *pDFT_DMX, /* i : downmix signal */
- Word32 *DFT_PRED_RES, /* o : residual prediction signal */
- Word32 *pPredGain, /* i : residual prediction gains */
- const Word16 k, /* i : subframe index */
- Word32 *ap_filt_DMX, /* i : enhanced stereo filling signal */
- Word16 *stop, /* o : last FD stereo filling bin */
- const Word16 bfi /* i : BFI flag */
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder DFT stereo handle */
+ const Word16 samp_ratio, /* i : sampling ratio */
+ Word32 *pDFT_DMX, /* i : downmix signal */
+ Word32 *DFT_PRED_RES, /* o : residual prediction signal */
+ Word32 *pPredGain, /* i : residual prediction gains */
+ const Word16 k, /* i : subframe index */
+ Word32 *ap_filt_DMX, /* i : enhanced stereo filling signal */
+ Word16 *stop, /* o : last FD stereo filling bin */
+ const Word16 bfi /* i : BFI flag */
);
void stereo_dft_dec_analyze_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- const Word32 *input_fx, /* i : input signal */
- Word32 out_DFT_fx[CPE_CHANNELS][STEREO_DFT_BUF_MAX], /* o : DFT buffers */
- const Word16 chan, /* i : channel number */
- const Word16 input_frame, /* i : input frame size */
- const Word16 output_frame, /* i : output frame size */
- const DFT_STEREO_DEC_ANA_TYPE ana_type, /* i : signal type to analyze */
- const Word16 k_offset, /* i : offset of DFT */
- const Word16 delay, /* i : delay in samples for input signal */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ const Word32 *input_fx, /* i : input signal */
+ Word32 out_DFT_fx[CPE_CHANNELS][STEREO_DFT_BUF_MAX], /* o : DFT buffers */
+ const Word16 chan, /* i : channel number */
+ const Word16 input_frame, /* i : input frame size */
+ const Word16 output_frame, /* i : output frame size */
+ const DFT_STEREO_DEC_ANA_TYPE ana_type, /* i : signal type to analyze */
+ const Word16 k_offset, /* i : offset of DFT */
+ const Word16 delay, /* i : delay in samples for input signal */
Word16 *q,
- Word16 *q_out_DFT );
+ Word16 *q_out_DFT
+);
void init_basic_allpass_fx(
basic_allpass_t *ap,
const Word32 *gains_fx,
- const Word16 *delays );
+ const Word16 *delays
+);
void filter_with_allpass_fx(
- const Word32 *sig, /* i : allpass input signal */
- Word32 *out, /* o : filtered output */
- const Word16 len, /* i : length of input */
- basic_allpass_t *ap, /* i/o: basic allpass structure */
- Word16 q_shift );
+ const Word32 *sig, /* i : allpass input signal */
+ Word32 *out, /* o : filtered output */
+ const Word16 len, /* i : length of input */
+ basic_allpass_t *ap, /* i/o: basic allpass structure */
+ Word16 q_shift
+);
Word32 stereo_dft_dmx_swb_nrg_fx(
- const Word32 *dmx_k0, /* i : first subframe spectrum */
- const Word32 *dmx_k1, /* i : second subframe spectrum */
- const Word16 frame_length, /* i : frame lanegth */
+ const Word32 *dmx_k0, /* i : first subframe spectrum */
+ const Word32 *dmx_k1, /* i : second subframe spectrum */
+ const Word16 frame_length, /* i : frame lanegth */
const Word16 q0,
- const Word16 q1 );
+ const Word16 q1
+);
void stereo_dft_dec_core_switching_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word32 output_fx[], /* i/o: synthesis @internal Fs */
- Word32 synth_fx[], /* i/o: synthesis @output Fs */
- Word32 hb_synth_fx[], /* i/o: hb synthesis */
- Word32 DFT_fx[CPE_CHANNELS][STEREO_DFT_BUF_MAX], /* o : DFT buffers */
- const Word16 output_frame, /* i : output frame length */
- const Word16 use_cldfb_for_dft, /* i : flag to use of CLDFB FOR DFT Stereo */
- const Word16 sba_dirac_stereo_dtx_flag, /* i : DTX indicator FOR SBA DirAC stereo */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word32 output_fx[], /* i/o: synthesis @internal Fs */
+ Word32 synth_fx[], /* i/o: synthesis @output Fs */
+ Word32 hb_synth_fx[], /* i/o: hb synthesis */
+ Word32 DFT_fx[CPE_CHANNELS][STEREO_DFT_BUF_MAX], /* o : DFT buffers */
+ const Word16 output_frame, /* i : output frame length */
+ const Word16 use_cldfb_for_dft, /* i : flag to use of CLDFB FOR DFT Stereo */
+ const Word16 sba_dirac_stereo_dtx_flag, /* i : DTX indicator FOR SBA DirAC stereo */
Word16 *q,
- Word16 *q_DFT );
+ Word16 *q_DFT
+);
Word16 ivas_get_hodirac_flag_fx(
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word16 sba_order /* i : Ambisonic (SBA) order */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word16 sba_order /* i : Ambisonic (SBA) order */
);
void ivas_sba_config_fx(
- const Word32 sba_total_brate, /* i : SBA total bitrate */
- Word16 sba_order, /* i : Ambisonic (SBA) order */
- Word16 nb_channels, /* i : Number of ambisonic channels */
- Word16 *nchan_transport, /* o : number of transport channels */
- const Word16 sba_planar, /* i : SBA Planar flag */
- Word16 *nSCE, /* o : number of SCEs */
- Word16 *nCPE, /* o : number of CPEs */
- Word16 *element_mode /* o : element mode of the core coder */
+ const Word32 sba_total_brate, /* i : SBA total bitrate */
+ Word16 sba_order, /* i : Ambisonic (SBA) order */
+ Word16 nb_channels, /* i : Number of ambisonic channels */
+ Word16 *nchan_transport, /* o : number of transport channels */
+ const Word16 sba_planar, /* i : SBA Planar flag */
+ Word16 *nSCE, /* o : number of SCEs */
+ Word16 *nCPE, /* o : number of CPEs */
+ Word16 *element_mode /* o : element mode of the core coder */
);
Word16 ivas_get_bits_to_encode(
- Word32 val );
+ Word32 val
+);
Word16 ivas_get_spar_table_idx_fx(
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word16 sba_order, /* i : Ambisonic (SBA) order */
- const Word16 bwidth, /* i : audio bandwidth */
- Word16 *bitlen, /* o : number of bits */
- Word16 *ind /* o : indice */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word16 sba_order, /* i : Ambisonic (SBA) order */
+ const Word16 bwidth, /* i : audio bandwidth */
+ Word16 *bitlen, /* o : number of bits */
+ Word16 *ind /* o : indice */
);
Word16 ivas_get_sba_num_TCs_fx(
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word16 sba_order /* i : Ambisonic (SBA) order */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word16 sba_order /* i : Ambisonic (SBA) order */
);
Word16 ivas_sba_get_nchan_fx(
- const Word16 sba_order, /* i : Ambisonic (SBA) order */
- const Word16 sba_planar /* i : SBA planar flag */
+ const Word16 sba_order, /* i : Ambisonic (SBA) order */
+ const Word16 sba_planar /* i : SBA planar flag */
);
void ivas_dirac_dec_set_md_map_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 nCldfbTs /* i : number of CLDFB time slots */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const Word16 nCldfbTs /* i : number of CLDFB time slots */
);
void ivas_jbm_dec_get_adapted_subframes_fx(
- const Word16 nCldfbTs, /* i : number of time slots in the current frame */
- Word16 *subframe_nbslots, /* i/o: subframe grid */
- Word16 *nb_subframes /* i/o: number of subframes in the frame */
+ const Word16 nCldfbTs, /* i : number of time slots in the current frame */
+ Word16 *subframe_nbslots, /* i/o: subframe grid */
+ Word16 *nb_subframes /* i/o: number of subframes in the frame */
);
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
void ivas_jbm_dec_copy_tc_no_tsm_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle Q0 */
- Word32 *tc_fx[], /* i : transport channels Q11 */
- const Word16 output_frame /* i : output frame size Q0 */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle Q0 */
+ Word32 *tc_fx[], /* i : transport channels Q11 */
+ const Word16 output_frame /* i : output frame size Q0 */
);
void ivas_ism_param_dec_tc_gain_ajust_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord16 nSamples, /* i : number of samples to be compensate */
- const UWord16 nFadeLength, /* i : length of the crossfade in samples */
- Word32 *transport_channels_f[], /* i : synthesized core-coder transport channels/DirAC output Q_tc*/
- Word16 *Q_tc /* i/o : Q of input tc buffer */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord16 nSamples, /* i : number of samples to be compensate */
+ const UWord16 nFadeLength, /* i : length of the crossfade in samples */
+ Word32 *transport_channels_f[], /* i : synthesized core-coder transport channels/DirAC output Q_tc*/
+ Word16 *Q_tc /* i/o : Q of input tc buffer */
);
-
+#endif
/*! r: number of bits read */
Word16 read_GR0(
- const UWord16 *bit_stream, /* i : bitstream to be read */
- Word16 *ind, /* o : parameters read */
- const Word16 len /* i : number of params to be read */
+ const UWord16 *bit_stream, /* i : bitstream to be read */
+ Word16 *ind, /* o : parameters read */
+ const Word16 len /* i : number of params to be read */
);
/*! r: read value */
Word16 get_value(
- const UWord16 *bit_stream, /* i : bitstream */
- const Word16 nbits /* i : number of bits to be read */
+ const UWord16 *bit_stream, /* i : bitstream */
+ const Word16 nbits /* i : number of bits to be read */
);
/*! r: number of bits read */
Word16 read_BS_GR(
- const UWord16 *bit_stream, /* i : bitstream to be read */
- const Word16 nb, /* i : starting point in bitstream */
- Word16 *ind1, /* o : data array read */
- const Word16 len, /* i : number of params to be read */
- Word16 *GR_ord /* o : GR order to be used */
+ const UWord16 *bit_stream, /* i : bitstream to be read */
+ const Word16 nb, /* i : starting point in bitstream */
+ Word16 *ind1, /* o : data array read */
+ const Word16 len, /* i : number of params to be read */
+ Word16 *GR_ord /* o : GR order to be used */
);
/*! r: number of bits read */
Word16 read_BS_adapt_GR_sg(
- const UWord16 *bit_stream, /* i : bitstream to be read */
- const Word16 nb, /* i : starting position in bitstream */
- Word16 *ind1, /* o : decoded side gain values */
- const Word16 len, /* i : number of params to be read */
- Word16 *GR_ord, /* o : GR order used (read from bitstream)*/
- const Word16 *map0 /* i : initial map */
+ const UWord16 *bit_stream, /* i : bitstream to be read */
+ const Word16 nb, /* i : starting position in bitstream */
+ Word16 *ind1, /* o : decoded side gain values */
+ const Word16 len, /* i : number of params to be read */
+ Word16 *GR_ord, /* o : GR order used (read from bitstream) */
+ const Word16 *map0 /* i : initial map */
);
/*! r: number of bits read */
Word16 read_itd(
- Decoder_State *st, /* i : Decoder state */
- Word16 *pI /* o : ITD value */
+ Decoder_State *st, /* i : Decoder state */
+ Word16 *pI /* o : ITD value */
);
/*! r: number of bits read */
Word16 read_BS_adapt_GR_rpg(
- const UWord16 *bit_stream, /* i : bitstream to be read */
- const Word16 nb, /* i : starting point in bitstream */
- Word16 *ind1_pred, /* o : decoded res pred gains */
- const Word16 start, /* i : starting subband */
- const Word16 total_no, /* i : number of params to be read */
- Word16 *GR_ord /* o : GR order - read */
+ const UWord16 *bit_stream, /* i : bitstream to be read */
+ const Word16 nb, /* i : starting point in bitstream */
+ Word16 *ind1_pred, /* o : decoded res pred gains */
+ const Word16 start, /* i : starting subband */
+ const Word16 total_no, /* i : number of params to be read */
+ Word16 *GR_ord /* o : GR order - read */
);
/*! r: number of bits read */
Word16 read_flag_EC_DFT(
- const UWord16 *bit_stream, /* i : bitstream */
- Word16 *flag /* o : flag value */
+ const UWord16 *bit_stream, /* i : bitstream */
+ Word16 *flag /* o : flag value */
);
void ivas_init_dec_get_num_cldfb_instances_fx(
- Decoder_Struct *st_ivas, /* i : IVAS decoder structure */
- Word16 *numCldfbAnalyses, /* o : number of CLDFB analysis instances */
- Word16 *numCldfbSyntheses /* o : number of CLDFB synthesis instances */
+ Decoder_Struct *st_ivas, /* i : IVAS decoder structure */
+ Word16 *numCldfbAnalyses, /* o : number of CLDFB analysis instances */
+ Word16 *numCldfbSyntheses /* o : number of CLDFB synthesis instances */
);
Word16 masa_sq_fx(
- const Word32 in, /* i : input value */
- const Word32 *threshold, /* i : partition */
- const Word16 cb_sz /* i : codebook size */
+ const Word32 in, /* i : input value */
+ const Word32 *threshold, /* i : partition */
+ const Word16 cb_sz /* i : codebook size */
);
void ivas_compute_spar_params_enc_fx(
@@ -737,7 +742,8 @@ void ivas_compute_spar_params_enc_fx(
Word32 *pWscale, /*q_Wscale*/
Word16 *q_Wscale,
const Word16 from_dirac,
- const Word16 dyn_active_w_flag );
+ const Word16 dyn_active_w_flag
+);
void ivas_compute_spar_params_fx(
Word32 *cov_real[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH], /*q_cov_real*/
@@ -759,134 +765,122 @@ void ivas_compute_spar_params_fx(
Word32 *pWscale_fx, /*q_pWscale*/
Word16 *q_pWscale,
const Word16 from_dirac,
- const Word16 dyn_active_w_flag );
+ const Word16 dyn_active_w_flag
+);
ivas_error ivas_ism_metadata_dec_fx(
- const Word32 ism_total_brate, /* i : ISM total bitrate */
- const Word16 nchan_ism, /* i : number of ISM channels */
- Word16 *nchan_transport, /* o : number of transport channels */
- ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
- SCE_DEC_HANDLE hSCE[], /* i/o: SCE decoder handles */
- const Word16 bfi, /* i : bfi flag */
- Word16 nb_bits_metadata[], /* o : number of metadata bits */
- ISM_MODE ism_mode, /* i : ISM mode */
- ISM_DTX_DATA_DEC hISMDTX, /* i/o: ISM DTX structure */
- const PARAM_ISM_CONFIG_HANDLE hParamIsm, /* i : Param ISM Config Handle */
- Word16 *ism_extmeta_active, /* i/o: Extended metadata active in renderer */
- Word16 *ism_extmeta_cnt, /* i/o: Number of change frames observed */
- DEC_CORE_HANDLE st0 /* i : core-coder handle */
-);
-
-#ifdef OBJ_EDITING_API
-void ivas_ism_renderer_update_md(
- Decoder_Struct *st_ivas /* i/o: main IVAS decoder handle */
+ const Word32 ism_total_brate, /* i : ISM total bitrate */
+ const Word16 nchan_ism, /* i : number of ISM channels */
+ Word16 *nchan_transport, /* o : number of transport channels */
+ ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
+ SCE_DEC_HANDLE hSCE[], /* i/o: SCE decoder handles */
+ const Word16 bfi, /* i : bfi flag */
+ Word16 nb_bits_metadata[], /* o : number of metadata bits */
+ ISM_MODE ism_mode, /* i : ISM mode */
+ ISM_DTX_DATA_DEC hISMDTX, /* i/o: ISM DTX structure */
+ const PARAM_ISM_CONFIG_HANDLE hParamIsm, /* i : Param ISM Config Handle */
+ Word16 *ism_extmeta_active, /* i/o: Extended metadata active in renderer */
+ Word16 *ism_extmeta_cnt, /* i/o: Number of change frames observed */
+ DEC_CORE_HANDLE st0 /* i : core-coder handle */
);
-#endif
void ivas_get_ism_sid_quan_bitbudget_fx(
- const Word16 nchan_ism, /* i : number of objects */
- Word16 *nBits_azimuth, /* o : number of Q bits for azimuth */
- Word16 *nBits_elevation, /* o : number of Q bits for elevation */
- Word32 *q_step_fx, /* o : quantization step Q22*/
- Word32 *q_step_border_fx, /* o : quantization step at the border Q22*/
- Word16 *nBits_coh, /* o : number of Q bits for coherence */
- Word16 *nBits_sce_id /* o : number of Q bits for sce_id_dtx */
+ const Word16 nchan_ism, /* i : number of objects */
+ Word16 *nBits_azimuth, /* o : number of Q bits for azimuth */
+ Word16 *nBits_elevation, /* o : number of Q bits for elevation */
+ Word32 *q_step_fx, /* o : quantization step Q22*/
+ Word32 *q_step_border_fx, /* o : quantization step at the border Q22*/
+ Word16 *nBits_coh, /* o : number of Q bits for coherence */
+ Word16 *nBits_sce_id /* o : number of Q bits for sce_id_dtx */
);
void ivas_ism_metadata_sid_dec_fx(
- SCE_DEC_HANDLE hSCE[MAX_SCE], /* i/o: SCE decoder structure */
- const Word32 ism_total_brate, /* i : ISM total bitrate */
- const Word16 bfi, /* i : bfi flag */
- const Word16 nchan_ism, /* i : number of objects */
- const Word16 nchan_transport, /* i : number of transport channels*/
- const ISM_MODE ism_mode, /* i : ISM mode */
- Word16 *flag_noisy_speech, /* o : noisy speech flag */
- Word16 *sce_id_dtx, /* o : SCE DTX ID */
- ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
- Word16 nb_bits_metadata[] /* o : number of metadata bits */
-);
-
-// ivas_sce_dec_fx.c
+ SCE_DEC_HANDLE hSCE[MAX_SCE], /* i/o: SCE decoder structure */
+ const Word32 ism_total_brate, /* i : ISM total bitrate */
+ const Word16 bfi, /* i : bfi flag */
+ const Word16 nchan_ism, /* i : number of objects */
+ const Word16 nchan_transport, /* i : number of transport channels */
+ const ISM_MODE ism_mode, /* i : ISM mode */
+ Word16 *flag_noisy_speech, /* o : noisy speech flag */
+ Word16 *sce_id_dtx, /* o : SCE DTX ID */
+ ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
+ Word16 nb_bits_metadata[] /* o : number of metadata bits */
+);
+
ivas_error create_sce_dec(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 cpe_id, /* i : SCE # identifier */
- const Word32 element_brate /* i : element bitrate */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const Word16 cpe_id, /* i : SCE # identifier */
+ const Word32 element_brate /* i : element bitrate */
);
void destroy_sce_dec(
- SCE_DEC_HANDLE hSCE /* i/o: SCE decoder structure */
+ SCE_DEC_HANDLE hSCE /* i/o: SCE decoder structure */
);
void destroy_core_enc_fx(
- ENC_CORE_HANDLE hCoreCoder /* i/o: core encoder structure */
+ ENC_CORE_HANDLE hCoreCoder /* i/o: core encoder structure */
);
void destroy_evs_core_enc_fx(
- ENC_CORE_HANDLE hCoreCoder /* i/o: core encoder structure */
+ ENC_CORE_HANDLE hCoreCoder /* i/o: core encoder structure */
);
ivas_error ivas_sce_dec_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 sce_id, /* i : SCE # identifier */
- Word32 *output[1], /* o : output synthesis signal */
- const Word16 output_frame, /* i : output frame length per channel */
- const Word16 nb_bits_metadata /* i : number of metadata bits */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const Word16 sce_id, /* i : SCE # identifier */
+ Word32 *output[1], /* o : output synthesis signal */
+ const Word16 output_frame, /* i : output frame length per channel */
+ const Word16 nb_bits_metadata /* i : number of metadata bits */
);
-// ivas_cpe_dec_fx.c
ivas_error create_cpe_dec(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 cpe_id, /* i : CPE # identifier */
- const Word32 element_brate /* i : element bitrate */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const Word16 cpe_id, /* i : CPE # identifier */
+ const Word32 element_brate /* i : element bitrate */
);
void destroy_cpe_dec(
- CPE_DEC_HANDLE hCPE /* i/o: CPE decoder structure */
+ CPE_DEC_HANDLE hCPE /* i/o: CPE decoder structure */
);
ivas_error ivas_cpe_dec_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 cpe_id, /* i : CPE # identifier */
- Word32 *output[CPE_CHANNELS], /* o : output synthesis signal */
- const Word16 output_frame, /* i : output frame length per channel */
- const Word16 nb_bits_metadata /* i : number of metadata bits */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const Word16 cpe_id, /* i : CPE # identifier */
+ Word32 *output[CPE_CHANNELS], /* o : output synthesis signal */
+ const Word16 output_frame, /* i : output frame length per channel */
+ const Word16 nb_bits_metadata /* i : number of metadata bits */
);
void ivas_post_proc_fx(
- SCE_DEC_HANDLE hSCE, /* i/o: SCE decoder structure */
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- const Word16 n, /* i : channel number */
- Word32 synth[], /* i/o: output synthesis signal */
- Word32 *output[CPE_CHANNELS], /* i/o: output synthesis signal */
- const Word16 output_frame, /* i : output frame length */
- const Word16 sba_dirac_stereo_flag, /* i : signal stereo output for SBA DirAC */
- Word16 output_q );
-
-// ivas_lfe_dec_fx.c
-
-void ivas_lfe_dec_close_fx(
- LFE_DEC_HANDLE *hLFE /* i/o: LFE encoder handle */
+ SCE_DEC_HANDLE hSCE, /* i/o: SCE decoder structure */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ const Word16 n, /* i : channel number */
+ Word32 synth[], /* i/o: output synthesis signal */
+ Word32 *output[CPE_CHANNELS], /* i/o: output synthesis signal */
+ const Word16 output_frame, /* i : output frame length */
+ const Word16 sba_dirac_stereo_flag, /* i : signal stereo output for SBA DirAC */
+ Word16 output_q
);
ivas_error ivas_create_lfe_dec_fx(
- LFE_DEC_HANDLE *hLFE_out, /* o : IVAS LFE decoder structure */
- const Word32 output_Fs, /* i : output sampling rate */
- const Word32 delay_ns /* i : additional LFE delay to sync other channel outputs */
+ LFE_DEC_HANDLE *hLFE_out, /* o : IVAS LFE decoder structure */
+ const Word32 output_Fs, /* i : output sampling rate */
+ const Word32 delay_ns /* i : additional LFE delay to sync other channel outputs */
);
void ivas_lfe_dec_fx(
- LFE_DEC_HANDLE hLFE, /* i/o: LFE decoder handle */
- Decoder_State *st0, /* i/o: decoder state structure - for bitstream handling*/
- const Word16 output_frame, /* i : output frame length per channel */
- const Word16 bfi, /* i : BFI flag */
- Word32 output_lfe_ch[] /* o : output LFE synthesis */
+ LFE_DEC_HANDLE hLFE, /* i/o: LFE decoder handle */
+ Decoder_State *st0, /* i/o: decoder state structure - for bitstream handling*/
+ const Word16 output_frame, /* i : output frame length per channel */
+ const Word16 bfi, /* i : BFI flag */
+ Word32 output_lfe_ch[] /* o : output LFE synthesis */
);
void ivas_lfe_tdplc_fx(
- LFE_DEC_HANDLE hLFE, /* i/o: LFE decoder handle */
- const Word32 *prevsynth, /* i : previous frame synthesis */
- Word32 *ytda, /* o : output time-domain buffer */
- const Word16 output_frame /* i : output frame length */
+ LFE_DEC_HANDLE hLFE, /* i/o: LFE decoder handle */
+ const Word32 *prevsynth, /* i : previous frame synthesis */
+ Word32 *ytda, /* o : output time-domain buffer */
+ const Word16 output_frame /* i : output frame length */
);
void ivas_lfe_dec_close_fx(
@@ -894,160 +888,168 @@ void ivas_lfe_dec_close_fx(
);
void td_stereo_param_updt_fx(
- const Word16 lsp_old_PCh_fx[], /* i : primary channel old LSPs Q15 */
- const Word16 lsf_old_PCh_fx[], /* i : primary channel old LSFs Qlog2(2.56) */
- const Word16 pitch_buf_PCh_fx[], /* i : primary channel pitch buffer Q6 */
- Word16 tdm_lsfQ_PCh_fx[], /* o : Q LSFs for primary channel Qlog2(2.56) */
- Word16 tdm_Pri_pitch_buf_fx[], /* o : pitch values for primary channel Q6 */
- const Word16 flag_ACELP16k, /* i : ACELP@16kHz flag */
- const Word16 tdm_use_IAWB_Ave_lpc /* i : flag to indicate the usage of mean inactive LP coefficients */
+ const Word16 lsp_old_PCh_fx[], /* i : primary channel old LSPs Q15 */
+ const Word16 lsf_old_PCh_fx[], /* i : primary channel old LSFs Qlog2(2.56) */
+ const Word16 pitch_buf_PCh_fx[], /* i : primary channel pitch buffer Q6 */
+ Word16 tdm_lsfQ_PCh_fx[], /* o : Q LSFs for primary channel Qlog2(2.56) */
+ Word16 tdm_Pri_pitch_buf_fx[], /* o : pitch values for primary channel Q6 */
+ const Word16 flag_ACELP16k, /* i : ACELP@16kHz flag */
+ const Word16 tdm_use_IAWB_Ave_lpc /* i : flag to indicate the usage of mean inactive LP coefficients */
);
void updt_enc_common_ivas_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- const Word16 Q_new /* i : CUrrent frame scaling */
+ Encoder_State *st, /* i/o: encoder state structure */
+ const Word16 Q_new /* i : CUrrent frame scaling */
);
-
void updateBuffersForDmxMdctStereo_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE handle */
- const Word16 output_frame, /* i : output frame length */
- Word32 output0_fx[], /* i/o: decoder output */
- Word32 output1_fx[], /* i/o: decoder output */
- Word16 synth_fx[CPE_CHANNELS][L_FRAME48k] /* i/o: decoder synthesis */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE handle */
+ const Word16 output_frame, /* i : output frame length */
+ Word32 output0_fx[], /* i/o: decoder output */
+ Word32 output1_fx[], /* i/o: decoder output */
+ Word16 synth_fx[CPE_CHANNELS][L_FRAME48k] /* i/o: decoder synthesis */
);
void stereo_cng_compute_PScorr_fx(
- Word32 output_fx0[], /* i : Output signal */
- Word32 output_fx1[], /* i : Output signal */
+ Word32 output_fx0[], /* i : Output signal */
+ Word32 output_fx1[], /* i : Output signal */
Word16 *output_Q,
- Word32 *c_PS_LT_fx, /* i/o: Correlation */
+ Word32 *c_PS_LT_fx, /* i/o: Correlation */
Word16 Q_c_PS_LT_fx,
- const Word16 L_frame_0, /* i : L_frame channel 0 */
- const Word16 L_frame_1 /* i : L_frame channel 1 */
+ const Word16 L_frame_0, /* i : L_frame channel 0 */
+ const Word16 L_frame_1 /* i : L_frame channel 1 */
);
void ivas_mcmasa_setNumTransportChannels_fx(
- Word16 *nchan_transport, /* o : Pointer to number of transport channels to be set */
- Word16 *element_mode, /* o : Pointer to element mode to be set */
- const Word32 ivas_total_brate /* i : Total bitrate of IVAS */
+ Word16 *nchan_transport, /* o : Pointer to number of transport channels to be set */
+ Word16 *element_mode, /* o : Pointer to element mode to be set */
+ const Word32 ivas_total_brate /* i : Total bitrate of IVAS */
);
void ivas_mcmasa_set_separate_channel_mode_fx(
- UWord8 *separateChannelEnabled, /* o : Pointer to separate channel toggle */
- Word16 *separateChannelIndex, /* o : Pointer to separate channel index */
- const Word32 ivas_total_brate /* i : Total bitrate of IVAS */
+ UWord8 *separateChannelEnabled, /* o : Pointer to separate channel toggle */
+ Word16 *separateChannelIndex, /* o : Pointer to separate channel index */
+ const Word32 ivas_total_brate /* i : Total bitrate of IVAS */
);
void ivas_mcmasa_split_brate_fx(
- const UWord8 separateChannelEnabled, /* i : Transport running in "separate channel" mode */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate available to be split */
- const Word16 nSCE, /* i : Number of SCEs in use (0 or 1) */
- const Word16 nCPE, /* i : Number of CPEs in use (0 or 1) */
- Word32 *brate_sce, /* o : Pointer to SCE element bitrate */
- Word32 *brate_cpe /* o : Pointer to CPE element bitrate */
+ const UWord8 separateChannelEnabled, /* i : Transport running in "separate channel" mode */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate available to be split */
+ const Word16 nSCE, /* i : Number of SCEs in use (0 or 1) */
+ const Word16 nCPE, /* i : Number of CPEs in use (0 or 1) */
+ Word32 *brate_sce, /* o : Pointer to SCE element bitrate */
+ Word32 *brate_cpe /* o : Pointer to CPE element bitrate */
);
void update_last_metadata_fx(
- const Word16 nchan_ism, /* i : number of objects */
- ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
- const Word16 updt_flag[] /* i : last metadata update flag */
+ const Word16 nchan_ism, /* i : number of objects */
+ ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
+ const Word16 updt_flag[] /* i : last metadata update flag */
);
ivas_error ivas_jbm_dec_tc_buffer_reconfigure_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const TC_BUFFER_MODE tc_buffer_mode, /* i : new buffer mode */
- const Word16 nchan_transport_jbm, /* i : new number of real transport channels */
- const Word16 nchan_transport_internal, /* i : new number of totally buffered channels */
- const Word16 nchan_full, /* i : new number of channels to fully store */
- const Word16 n_samples_granularity /* i : new granularity of the renderer/buffer */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const TC_BUFFER_MODE tc_buffer_mode, /* i : new buffer mode */
+ const Word16 nchan_transport_jbm, /* i : new number of real transport channels */
+ const Word16 nchan_transport_internal, /* i : new number of totally buffered channels */
+ const Word16 nchan_full, /* i : new number of channels to fully store */
+ const Word16 n_samples_granularity /* i : new granularity of the renderer/buffer */
);
ivas_error ivas_dirac_allocate_parameters_fx(
- SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom, /* i/o: common data for spatial parametric rendering */
- const Word16 params_flag /* i : set of parameters flag */
+ SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom, /* i/o: common data for spatial parametric rendering*/
+ const Word16 params_flag /* i : set of parameters flag */
);
Word16 configure_reqularization_factor_fx(
- const IVAS_FORMAT ivas_format, /* i : IVAS format */
- const Word32 ivas_total_brate /* i : IVAS total bitrate */
+ const IVAS_FORMAT ivas_format, /* i : IVAS format */
+ const Word32 ivas_total_brate /* i : IVAS total bitrate */
);
ivas_error ivas_ism_config_fx(
- const Word32 ism_total_brate, /* i : ISM total bitrate */
- const Word16 nchan_transport, /* i : number of transport channels */
- const Word16 nchan_ism, /* i : number of objects */
- ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
- const Word16 ism_extended_metadata_flag, /* i : extended metadata flag */
- const Word16 null_metadata_flag[MAX_NUM_OBJECTS], /* i : NULL MD flag */
- const Word16 ism_imp[], /* i : ISM importance flags */
- Word32 element_brate[], /* o : element bitrate per object */
- Word32 total_brate[], /* o : total bitrate per object */
- Word16 nb_bits_metadata[], /* i/o: number of metadata bits */
- const Word16 combined_format_flag /* i : flag indicating combined format */
+ const Word32 ism_total_brate, /* i : ISM total bitrate */
+ const Word16 nchan_transport, /* i : number of transport channels */
+ const Word16 nchan_ism, /* i : number of objects */
+ ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
+ const Word16 ism_extended_metadata_flag, /* i : extended metadata flag */
+ const Word16 null_metadata_flag[MAX_NUM_OBJECTS], /* i : NULL MD flag */
+ const Word16 ism_imp[], /* i : ISM importance flags */
+ Word32 element_brate[], /* o : element bitrate per object */
+ Word32 total_brate[], /* o : total bitrate per object */
+ Word16 nb_bits_metadata[], /* i/o: number of metadata bits */
+ const Word16 combined_format_flag /* i : flag indicating combined format */
);
void stereo_dft_enc_analyze_fx(
- Encoder_State **sts, /* i/o: encoder state structure */
- const Word16 n_channels, /* i : number of input channels */
- const Word16 input_frame, /* i : input frame length */
- STEREO_DFT_ENC_DATA_HANDLE hStereoDft, /* i/o: encoder stereo handle */
- STEREO_MDCT_ENC_DATA_HANDLE hStereoMdct, /* i/o: encoder MDCT stereo handle */
- Word32 DFT[CPE_CHANNELS][STEREO_DFT_N_MAX_ENC], /* o : DFT buffers */
- Word16 DFT_e[CPE_CHANNELS], /* o : DFT buffers */
- Word16 *input_mem[CPE_CHANNELS], /* i/o: input buffer memory */
- Word16 *q_input_mem );
+ Encoder_State **sts, /* i/o: encoder state structure */
+ const Word16 n_channels, /* i : number of input channels */
+ const Word16 input_frame, /* i : input frame length */
+ STEREO_DFT_ENC_DATA_HANDLE hStereoDft, /* i/o: encoder stereo handle */
+ STEREO_MDCT_ENC_DATA_HANDLE hStereoMdct, /* i/o: encoder MDCT stereo handle */
+ Word32 DFT[CPE_CHANNELS][STEREO_DFT_N_MAX_ENC], /* o : DFT buffers */
+ Word16 DFT_e[CPE_CHANNELS], /* o : DFT buffers */
+ Word16 *input_mem[CPE_CHANNELS], /* i/o: input buffer memory */
+ Word16 *q_input_mem
+);
Word16 IGF_MapBitRateToIndex(
- const Word32 brate, /* i : bitrate */
- const Word16 bwidth, /* i : audio bandwidth */
- const Word16 element_mode, /* i : element mode */
- const Word16 rf_mode /* i : flag to signal the RF mode */
+ const Word32 brate, /* i : bitrate */
+ const Word16 bwidth, /* i : audio bandwidth */
+ const Word16 element_mode, /* i : element mode */
+ const Word16 rf_mode /* i : flag to signal the RF mode */
);
-Word16 ivas_jbm_dec_get_render_granularity(
- const RENDERER_TYPE rendererType, /* i : renderer type */
- const IVAS_FORMAT ivas_format, /* i : ivas format */
- const MC_MODE mc_mode, /* i : MC mode */
- const Word32 output_Fs /* i : sampling rate */
+#ifdef NONBE_1303_REND_GRANULARITY
+Word16 ivas_jbm_dec_get_render_granularity_fx(
+ const RENDERER_TYPE renderer_type, /* i : renderer type */
+ const RENDERER_TYPE renderer_type_sec, /* i : secondary renderer type */
+ const int32_t output_Fs /* i : sampling rate */
);
+#else
+Word16 ivas_jbm_dec_get_render_granularity(
+ const RENDERER_TYPE rendererType, /* i : renderer type */
+ const IVAS_FORMAT ivas_format, /* i : ivas format */
+ const MC_MODE mc_mode, /* i : MC mode */
+ const Word32 output_Fs /* i : sampling rate */
+);
+#endif
-// ivas_stereo_dft_com.c
void stereo_dft_config_fx(
- STEREO_DFT_CONFIG_DATA_HANDLE hConfig, /* o : DFT stereo configuration */
- const Word32 brate, /* i : IVAS/CPE/nominal total bitrate */
- Word16 *bits_frame_nominal, /* o : primary channel nominal bits per frame */
- Word16 *bits_frame_nominal_2 /* o : secondary channel nominal bits per frame*/
+ STEREO_DFT_CONFIG_DATA_HANDLE hConfig, /* o : DFT stereo configuration */
+ const Word32 brate, /* i : IVAS/CPE/nominal total bitrate */
+ Word16 *bits_frame_nominal, /* o : primary channel nominal bits per frame */
+ Word16 *bits_frame_nominal_2 /* o : secondary channel nominal bits per frame */
);
void stereo_td_itd_mdct_stereo_fx(
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder handle */
- const Word16 vad_flag_dtx[], /* i : VAD dtx flags */
- const Word16 vad_hover_flag[], /* i : VAD hangover flags */
- const Word16 input_frame /* i : frame length */
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder handle */
+ const Word16 vad_flag_dtx[], /* i : VAD dtx flags */
+ const Word16 vad_hover_flag[], /* i : VAD hangover flags */
+ const Word16 input_frame /* i : frame length */
);
void stereo_td_itd_fx(
- ITD_DATA *hITD, /* i/o: ITD data structure */
- Word16 input_mem_itd_fx[CPE_CHANNELS][STEREO_DFT_OVL_MAX], /* o : ITD memory (only used in DFT Stereo) */
+ ITD_DATA *hITD, /* i/o: ITD data structure */
+ Word16 input_mem_itd_fx[CPE_CHANNELS][STEREO_DFT_OVL_MAX], /* o : ITD memory (only used in DFT Stereo) */
Word16 *q_input_mem_itd,
- const Word16 hybrid_itd_flag, /* i : flag for hybrid TD/FD ITD processing */
- const Word16 dft_ovl, /* i : size of DFT overlap */
- Encoder_State **sts, /* i/o: Encoder state structure */
- const Word16 input_frame, /* i : input frame length */
- Word16 *input_mem[CPE_CHANNELS], /* i/o: input buffer memory */
- Word16 *q_input_mem );
+ const Word16 hybrid_itd_flag, /* i : flag for hybrid TD/FD ITD processing */
+ const Word16 dft_ovl, /* i : size of DFT overlap */
+ Encoder_State **sts, /* i/o: Encoder state structure */
+ const Word16 input_frame, /* i : input frame length */
+ Word16 *input_mem[CPE_CHANNELS], /* i/o: input buffer memory */
+ Word16 *q_input_mem
+);
void stereo_dft_unify_dmx_fx(
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder stereo handle */
- Decoder_State *st0, /* i/o: decoder state structure */
- Word32 DFT[CPE_CHANNELS][STEREO_DFT_BUF_MAX], /* i/o: DFT buffers */
- Word32 *input_mem, /* i/o: mem of buffer DFT analysis */
- const Word16 prev_sid_nodata /* i : Previous SID/No data indicator */
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder stereo handle */
+ Decoder_State *st0, /* i/o: decoder state structure */
+ Word32 DFT[CPE_CHANNELS][STEREO_DFT_BUF_MAX], /* i/o: DFT buffers */
+ Word32 *input_mem, /* i/o: mem of buffer DFT analysis */
+ const Word16 prev_sid_nodata /* i : Previous SID/No data indicator */
);
void stereo_dft_enc_compute_itd_fx(
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
Word32 *DFT_L,
Word16 *DFT_L_e,
Word32 *DFT_R,
@@ -1059,225 +1061,226 @@ void stereo_dft_enc_compute_itd_fx(
Word32 *bin_nrgL,
Word16 *bin_nrgL_e,
Word32 *bin_nrgR,
- Word16 *bin_nrgR_e );
+ Word16 *bin_nrgR_e
+);
Word16 stereo_dft_band_config_fx(
- Word16 *band_limits, /* o : DFT band limits */
- const Word16 band_res, /* i : DFT band resolution */
- const Word16 NFFT, /* i : analysis/synthesis window length */
- const Word16 enc_dec /* i : flag to indicate enc vs dec */
+ Word16 *band_limits, /* o : DFT band limits */
+ const Word16 band_res, /* i : DFT band resolution */
+ const Word16 NFFT, /* i : analysis/synthesis window length */
+ const Word16 enc_dec /* i : flag to indicate enc vs dec */
);
-// ivas_ls_custom_dec.c
void ivas_ls_custom_setup_fx(
- IVAS_OUTPUT_SETUP_HANDLE hOutSetup, /* o : IVAS output setup handle */
- const LSSETUP_CUSTOM_STRUCT *hLsSetupCustom /* i : Custom loudspeaker setup handle */
+ IVAS_OUTPUT_SETUP_HANDLE hOutSetup, /* o : IVAS output setup handle */
+ const LSSETUP_CUSTOM_STRUCT *hLsSetupCustom /* i : Custom loudspeaker setup handle */
);
ivas_error ivas_ls_custom_output_init_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder handle */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder handle */
);
ivas_error ivas_ls_custom_open_fx(
- LSSETUP_CUSTOM_HANDLE *hLsSetupCustom /* o : Custom loudspeaker setup handle */
+ LSSETUP_CUSTOM_HANDLE *hLsSetupCustom /* o : Custom loudspeaker setup handle */
);
ivas_error ivas_ism_renderer_open_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
void ivas_ism_render_sf_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const RENDERER_TYPE renderer_type, /* i : active renderer type */
- Word32 *output_fx[], /* i/o: core-coder transport channels/object output */
- const Word16 n_samples_to_render /* i : output frame length per channel */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const RENDERER_TYPE renderer_type, /* i : active renderer type */
+ Word32 *output_fx[], /* i/o: core-coder transport channels/object output */
+ const Word16 n_samples_to_render /* i : output frame length per channel */
);
void ivas_jbm_dec_get_adapted_linear_interpolator_fx(
- const Word16 default_interp_length, /* i : default length of the (full-frame) interpolator */
- const Word16 interp_length, /* i : length of the interpolator to be created */
- Word16 *interpolator_fx /* o : the interpolator */
+ const Word16 default_interp_length, /* i : default length of the (full-frame) interpolator */
+ const Word16 interp_length, /* i : length of the interpolator to be created */
+ Word16 *interpolator_fx /* o : the interpolator */
);
void ivas_omasa_separate_object_render_jbm_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const UWord16 nSamplesRendered, /* i : number of samples rendered */
- Word32 input_fx_in[][L_FRAME48k], /* i : separated object signal */
- Word32 *output_fx[], /* o : rendered time signal */
- const Word16 subframes_rendered, /* i : number of subframes rendered */
- const Word16 slots_rendered /* i : number of CLDFB slots rendered */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const UWord16 nSamplesRendered, /* i : number of samples rendered */
+ Word32 input_fx_in[][L_FRAME48k], /* i : separated object signal */
+ Word32 *output_fx[], /* o : rendered time signal */
+ const Word16 subframes_rendered, /* i : number of subframes rendered */
+ const Word16 slots_rendered /* i : number of CLDFB slots rendered */
);
void get_panning_gain_fx(
const Word16 sinAngleMapped,
- Word16 *panningGains );
+ Word16 *panningGains
+);
void ivas_ism_get_stereo_gains_fx(
- const Word16 aziDeg, /* i : object azimuth */
- const Word16 eleDeg, /* i : object elevation */
- Word16 *left_gain_fx, /* o : left channel gain */
- Word16 *right_gain_fx /* o : right channel gain */
+ const Word16 aziDeg, /* i : object azimuth */
+ const Word16 eleDeg, /* i : object elevation */
+ Word16 *left_gain_fx, /* o : left channel gain */
+ Word16 *right_gain_fx /* o : right channel gain */
);
-// ivas_mct_dec_mct_fx.c
void ivas_mct_dec_mct_fx(
- MCT_DEC_HANDLE hMCT, /* i/o: MCT decoder structure */
- Decoder_State **sts, /* i/o: decoder state structure */
- const Word16 nchan /* i : number of channels */
+ MCT_DEC_HANDLE hMCT, /* i/o: MCT decoder structure */
+ Decoder_State **sts, /* i/o: decoder state structure */
+ const Word16 nchan /* i : number of channels */
);
void apply_MCT_dec_fx(
- MCT_DEC_HANDLE hMCT, /* i/o: MCT decoder structure */
- Decoder_State **sts, /* i/o: decoder state structure */
- Word32 *x[MCT_MAX_CHANNELS][NB_DIV] /* i/o: decoded and dequan. spect. input to MCT */
+ MCT_DEC_HANDLE hMCT, /* i/o: MCT decoder structure */
+ Decoder_State **sts, /* i/o: decoder state structure */
+ Word32 *x[MCT_MAX_CHANNELS][NB_DIV] /* i/o: decoded and dequan. spect. input to MCT */
);
void mctStereoIGF_dec_fx(
- MCT_DEC_HANDLE hMCT, /* i/o: MCT decoder structure */
- Decoder_State **stm, /* i/o: decoder state structure */
- Word32 *x[MCT_MAX_CHANNELS][NB_DIV], /* i/o: decoded and dequantized spectrum*/
- const Word16 bfi /* i : bad frame flag */
+ MCT_DEC_HANDLE hMCT, /* i/o: MCT decoder structure */
+ Decoder_State **stm, /* i/o: decoder state structure */
+ Word32 *x[MCT_MAX_CHANNELS][NB_DIV], /* i/o: decoded and dequantized spectrum */
+ const Word16 bfi /* i : bad frame flag */
);
-// ivas_stereo_mdct_stereo_dec.c
void parse_stereo_from_bitstream(
- STEREO_MDCT_DEC_DATA_HANDLE hStereoMdct, /* i/o: MDCT stereo decoder structure */
- Decoder_State **sts, /* i/o: decoder state structure */
- const Word16 mct_on, /* i : flag mct block (1) or stereo (0)*/
- const Word16 isSBAStereoMode, /* i : flag core coding for SBA */
- Decoder_State *st0, /* i/o: decoder state structure for Bstr*/
- Word16 ms_mask[NB_DIV][MAX_SFB] /* o : bandwise MS mask */
+ STEREO_MDCT_DEC_DATA_HANDLE hStereoMdct, /* i/o: MDCT stereo decoder structure */
+ Decoder_State **sts, /* i/o: decoder state structure */
+ const Word16 mct_on, /* i : flag mct block (1) or stereo (0) */
+ const Word16 isSBAStereoMode, /* i : flag core coding for SBA */
+ Decoder_State *st0, /* i/o: decoder state structure for Bstr */
+ Word16 ms_mask[NB_DIV][MAX_SFB] /* o : bandwise MS mask */
);
void stereo_decoder_tcx_fx(
- STEREO_MDCT_DEC_DATA *hStereoMdct, /* i/o: MDCT stereo decoder structure */
- Word16 ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask */
- Word32 *spec_r_0[NB_DIV], /* i/o: spectrum right channel */
- Word32 *spec_l[], /* i/o: spectrum left channel [NB_DIV][N] */
- Word32 *spec_r[], /* i/o: spectrum right channel [NB_DIV][N] */
- const Word16 mdct_stereo_mode[], /* i : stereo mode (FB/band wise MS, dual mono */
- const Word16 core_l, /* i : core for left channel (TCX20/TCX10) */
- const Word16 core_r, /* i : core for right channel (TCX20/TCX10) */
- const Word16 igf, /* i : flag for IGF activity */
- const Word16 L_frameTCX_l, /* i : TCX frame length of left channel */
- const Word16 L_frameTCX_r, /* i : TCX frame length of right channel */
- const Word16 mct_on, /* i : flag mct block (1) or stereo (0) */
- const Word16 last_core_l, /* i : last core for left channel */
- const Word16 last_core_r, /* i : last core for right channel */
- const Word16 tmp_plc_upmix /* i : indicates temp upmix for PLC decision */
+ STEREO_MDCT_DEC_DATA *hStereoMdct, /* i/o: MDCT stereo decoder structure */
+ Word16 ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask */
+ Word32 *spec_r_0[NB_DIV], /* i/o: spectrum right channel */
+ Word32 *spec_l[], /* i/o: spectrum left channel [NB_DIV][N] */
+ Word32 *spec_r[], /* i/o: spectrum right channel [NB_DIV][N] */
+ const Word16 mdct_stereo_mode[], /* i : stereo mode (FB/band wise MS, dual mono */
+ const Word16 core_l, /* i : core for left channel (TCX20/TCX10) */
+ const Word16 core_r, /* i : core for right channel (TCX20/TCX10) */
+ const Word16 igf, /* i : flag for IGF activity */
+ const Word16 L_frameTCX_l, /* i : TCX frame length of left channel */
+ const Word16 L_frameTCX_r, /* i : TCX frame length of right channel */
+ const Word16 mct_on, /* i : flag mct block (1) or stereo (0) */
+ const Word16 last_core_l, /* i : last core for left channel */
+ const Word16 last_core_r, /* i : last core for right channel */
+ const Word16 tmp_plc_upmix /* i : indicates temp upmix for PLC decision */
);
void v_multc_acc_32_16(
- const Word32 x[], /* i : Input vector */
- const Word16 c, /* i : Constant */
- Word32 y[], /* o : Output vector that contains y + c*x */
- const Word16 N /* i : Vector length */
+ const Word32 x[], /* i : Input vector */
+ const Word16 c, /* i : Constant */
+ Word32 y[], /* o : Output vector that contains y + c*x */
+ const Word16 N /* i : Vector length */
);
+
void v_multc_acc_32_32(
- const Word32 x[], /* i : Input vector */
- const Word32 c, /* i : Constant */
- Word32 y[], /* o : Output vector that contains y + c*x */
- const Word16 N /* i : Vector length */
+ const Word32 x[], /* i : Input vector */
+ const Word32 c, /* i : Constant */
+ Word32 y[], /* o : Output vector that contains y + c*x */
+ const Word16 N /* i : Vector length */
);
void ivas_mono_stereo_downmix_mcmasa_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- Word32 *output_f_fx[], /* i/o: synthesized core-coder transport channels/mono or stereo output */
- Word16 output_frame /* i : output frame length per channel */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ Word32 *output_fx[], /* i/o: synthesized core-coder transport channels/mono or stereo output */
+ Word16 output_frame /* i : output frame length per channel */
);
void ivas_apply_non_diegetic_panning_fx(
- Word32 *input_f_fx, /* i : non-diegetic object */
- Word32 *output_f_fx[], /* i/o: core-coder transport mono channel/stereo output */
- const Word16 non_diegetic_pan_gain_fx, /* i : non-diegetic panning gain */
- const Word16 output_frame /* i : output frame length per channel */
+ Word32 *input_f_fx, /* i : non-diegetic object */
+ Word32 *output_fx[], /* i/o: core-coder transport mono channel/stereo output */
+ const Word16 non_diegetic_pan_gain_fx, /* i : non-diegetic panning gain */
+ const Word16 output_frame /* i : output frame length per channel */
);
void ivas_ism_mono_dmx_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- Word32 *output_f_fx[], /* i/o: synthesized core-coder transport channels/mono output */
- const Word16 output_frame /* i : output frame length */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ Word32 *output_fx[], /* i/o: synthesized core-coder transport channels/mono output */
+ const Word16 output_frame /* i : output frame length */
);
+
void ivas_sba_dirac_stereo_smooth_parameters_fx(
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder DFT stereo handle */
- ivas_spar_md_dec_state_t *hMdDec, /* i/o: SPAR MD handle for upmixing */
- const Word16 cross_fade_start_offset, /* i : SPAR mixer delay compensation */
- const Word32 output_Fs, /* i : Fs for delay calculation */
- const Word16 num_md_sub_frames /* i : number of subframes in mixing matrix */
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder DFT stereo handle */
+ ivas_spar_md_dec_state_t *hMdDec, /* i/o: SPAR MD handle for upmixing */
+ const Word16 cross_fade_start_offset, /* i : SPAR mixer delay compensation */
+ const Word32 output_Fs, /* i : Fs for delay calculation */
+ const Word16 num_md_sub_frames /* i : number of subframes in mixing matrix */
);
void stereo_dft_dec_synthesize_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word32 DFT[CPE_CHANNELS][STEREO_DFT_BUF_MAX], /* i : DFT buffers */
- const Word16 chan, /* i : channel number */
- Word32 output[L_FRAME48k], /* o : output synthesis signal */
- const Word16 output_frame /* i : output frame length */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word32 DFT[CPE_CHANNELS][STEREO_DFT_BUF_MAX], /* i : DFT buffers */
+ const Word16 chan, /* i : channel number */
+ Word32 output[L_FRAME48k], /* o : output synthesis signal */
+ const Word16 output_frame /* i : output frame length */
);
void stereo_dft_dec_smooth_parameters_fx(
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder DFT stereo handle */
- const Word16 prev_sid_nodata, /* i : Previous SID/No data indicator */
- const Word16 active_frame_counter, /* i : Active frame counter */
- const Word32 element_brate /* i : Element bitrate */
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder DFT stereo handle */
+ const Word16 prev_sid_nodata, /* i : Previous SID/No data indicator */
+ const Word16 active_frame_counter, /* i : Active frame counter */
+ const Word32 element_brate /* i : Element bitrate */
);
void stereo_dft_dec_res_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: decoder CPE handle */
- Word32 res_buf[STEREO_DFT_N_8k], /* i : residual buffer */
- Word16 q_res, /* i : q fact of residural buffer */
- Word32 *output /* o : output */
+ CPE_DEC_HANDLE hCPE, /* i/o: decoder CPE handle */
+ Word32 res_buf[STEREO_DFT_N_8k], /* i : residual buffer */
+ Word16 q_res, /* i : q fact of residural buffer */
+ Word32 *output /* o : output */
);
void stereo_dft_dec_fx(
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder DFT stereo handle */
- Decoder_State *st0, /* i/o: decoder state structure */
- Word32 DFT[CPE_CHANNELS][STEREO_DFT_BUF_MAX], /* i/o: DFT buffers */
- Word32 *input_mem, /* i/o: mem of buffer DFT analysis */
- STEREO_CNG_DEC_HANDLE hStereoCng, /* i/o: Stereo CNG data structure */
- const Word16 sba_dirac_stereo_flag, /* i : signal stereo output for SBA DirAC */
- const Word16 sba_mono_flag, /* i : signal mono output for SBA DirAC */
- ivas_spar_md_dec_state_t *hMdDec, /* i : SPAR MD handle for upmixing */
- const Word16 cross_fade_start_offset, /* i : SPAR mixer delay compensation */
- const Word32 output_Fs, /* i : Fs for delay calculation */
- const Word16 nchan_transport, /* i : number of transpor channels */
- const Word16 num_md_sub_frames /* i : number of MD subframes */
-);
-
-// ivas_stereo_dft_enc.c
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder DFT stereo handle */
+ Decoder_State *st0, /* i/o: decoder state structure */
+ Word32 DFT[CPE_CHANNELS][STEREO_DFT_BUF_MAX], /* i/o: DFT buffers */
+ Word32 *input_mem, /* i/o: mem of buffer DFT analysis */
+ STEREO_CNG_DEC_HANDLE hStereoCng, /* i/o: Stereo CNG data structure */
+ const Word16 sba_dirac_stereo_flag, /* i : signal stereo output for SBA DirAC */
+ const Word16 sba_mono_flag, /* i : signal mono output for SBA DirAC */
+ ivas_spar_md_dec_state_t *hMdDec, /* i : SPAR MD handle for upmixing */
+ const Word16 cross_fade_start_offset, /* i : SPAR mixer delay compensation */
+ const Word32 output_Fs, /* i : Fs for delay calculation */
+ const Word16 nchan_transport, /* i : number of transpor channels */
+ const Word16 num_md_sub_frames /* i : number of MD subframes */
+);
+
Word32 stereo_dft_enc_synthesize_fx(
- STEREO_DFT_ENC_DATA_HANDLE hStereoDft, /* i/o: encoder stereo handle */
- Word32 *output_fx, /* o : output synthesis Q16 */
+ STEREO_DFT_ENC_DATA_HANDLE hStereoDft, /* i/o: encoder stereo handle */
+ Word32 *output_fx, /* o : output synthesis Q16 */
Word16 *output_start_index,
Word16 *output_end_index,
- const Word16 chan, /* i : channel number */
- const Word32 input_Fs, /* i : input sampling rate */
- const Word32 output_sampling_rate, /* i : output sampling rate */
- const Word16 L_frame, /* i : frame length at internal Fs */
- Word16 *nrg_out_fx_e );
+ const Word16 chan, /* i : channel number */
+ const Word32 input_Fs, /* i : input sampling rate */
+ const Word32 output_sampling_rate, /* i : output sampling rate */
+ const Word16 L_frame, /* i : frame length at internal Fs */
+ Word16 *nrg_out_fx_e
+);
void ivas_ls_setup_conversion_fx(
- Decoder_Struct *st_ivas, /* i : IVAS decoder structure */
- const Word16 input_chans, /* i : number of input channels to the renderer */
- const Word16 output_frame, /* i : frame length */
- Word32 *input[], /* i : LS input/output synthesis signal */
- Word32 *output[] /* i/o: LS input/output synthesis signal */
+ Decoder_Struct *st_ivas, /* i : IVAS decoder structure */
+ const Word16 input_chans, /* i : number of input channels to the renderer */
+ const Word16 output_frame, /* i : frame length */
+ Word32 *input[], /* i : LS input/output synthesis signal */
+ Word32 *output[] /* i/o: LS input/output synthesis signal */
);
ivas_error ivas_ls_setup_conversion_open_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
void ivas_ls_setup_conversion_close_fx(
- LSSETUP_CONVERSION_HANDLE *hLsSetUpConversion /* i/o: LS converter handle */
+ LSSETUP_CONVERSION_HANDLE *hLsSetUpConversion /* i/o: LS converter handle */
);
void ivas_ls_setup_conversion_process_mdct_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- Word32 *output[] /* i/o: output synthesis signal */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ Word32 *output[] /* i/o: output synthesis signal */
);
void ivas_lssetupconversion_process_param_mc_fx(
- Decoder_Struct *st_ivas, /* i/o: LS setup conversion renderer handle */
+ Decoder_Struct *st_ivas, /* i/o: LS setup conversion renderer handle */
const Word16 num_timeslots,
Word32 Cldfb_RealBuffer_InOut[MAX_CICP_CHANNELS][PARAM_MC_MAX_NSLOTS_IN_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /* i/o: LS signals */
Word32 Cldfb_ImagBuffer_InOut[MAX_CICP_CHANNELS][PARAM_MC_MAX_NSLOTS_IN_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /* i/o: LS signals */
@@ -1285,241 +1288,247 @@ void ivas_lssetupconversion_process_param_mc_fx(
);
void convert_coeffs_to_higher_res_fx(
- const Word32 *in1, /* i : first subframe input */
- const Word32 *in2, /* i : second subframe input */
- Word32 *out, /* o : converted output */
- const Word16 len /* i : length of subframes */
+ const Word32 *in1, /* i : first subframe input */
+ const Word32 *in2, /* i : second subframe input */
+ Word32 *out, /* o : converted output */
+ const Word16 len /* i : length of subframes */
);
void create_IDCT_N_Matrix_fx(
- Word32 *inv_matrixFloatQ, /* i/o: RAM buffer */
- const Word16 N, /* i : DCT length, number of time samples */
- const Word16 n_cols, /* i : number of dct coeffs (as DCT may be truncated) */
- const Word16 alloc_size /* i : RAM buffer size in elements */
+ Word32 *inv_matrixFloatQ, /* i/o: RAM buffer */
+ const Word16 N, /* i : DCT length, number of time samples */
+ const Word16 n_cols, /* i : number of dct coeffs (as DCT may be truncated) */
+ const Word16 alloc_size /* i : RAM buffer size in elements */
);
void extend_dctN_input_fx(
- const Word32 *input, /* i : input in fdcng domain */
- const Word32 *dct_input, /* i : input in dctN(fdcng) domain */
- const Word16 in_dim, /* i : in_dim == N */
- Word32 *ext_sig, /* o : extended output in fdcng domain */
- const Word16 out_dim, /* i : output total dim */
- Word32 *matrix, /* i : idct synthesis matrix N rows, n_cols columns */
- const Word16 n_cols, /* i : number of columns == DCT truncation length */
- const DCTTYPE dcttype /* i : matrix operation type */
+ const Word32 *input, /* i : input in fdcng domain */
+ const Word32 *dct_input, /* i : input in dctN(fdcng) domain */
+ const Word16 in_dim, /* i : in_dim == N */
+ Word32 *ext_sig, /* o : extended output in fdcng domain */
+ const Word16 out_dim, /* i : output total dim */
+ Word32 *matrix, /* i : idct synthesis matrix N rows, n_cols columns */
+ const Word16 n_cols, /* i : number of columns == DCT truncation length */
+ const DCTTYPE dcttype /* i : matrix operation type */
);
void ivas_dirac_dec_get_frequency_axis_fx(
Word16 *frequency_axis, /* Q0 */
const Word32 output_Fs,
- const Word16 num_freq_bands );
+ const Word16 num_freq_bands
+);
void ivas_decision_matrix_dec_fx(
- Decoder_State *st, /* i/o: decoder state structure */
- Word16 *sharpFlag, /* o : formant sharpening flag */
- Word16 *core_switching_flag, /* o : ACELP->HQ switching frame flag */
- const Word32 element_brate, /* i : element bitrate */
- const Word16 nchan_out /* i : Number of output channels */
+ Decoder_State *st, /* i/o: decoder state structure */
+ Word16 *sharpFlag, /* o : formant sharpening flag */
+ Word16 *core_switching_flag, /* o : ACELP->HQ switching frame flag */
+ const Word32 element_brate, /* i : element bitrate */
+ const Word16 nchan_out /* i : Number of output channels */
);
void cmplx_matrix_square_fx(
- const Word32 *realX, /* i : real part of the matrix */
- const Word32 *imagX, /* i : imaginary part of the matrix */
- const Word16 mRows, /* i : number of rows of the matrix */
- const Word16 nCols, /* i : number of columns of the matrix */
- Word32 *realZ, /* o : real part of the resulting matrix */
- Word32 *imagZ, /* o : imaginary part of the resulting matrix */
+ const Word32 *realX, /* i : real part of the matrix */
+ const Word32 *imagX, /* i : imaginary part of the matrix */
+ const Word16 mRows, /* i : number of rows of the matrix */
+ const Word16 nCols, /* i : number of columns of the matrix */
+ Word32 *realZ, /* o : real part of the resulting matrix */
+ Word32 *imagZ, /* o : imaginary part of the resulting matrix */
Word16 input_exp,
- Word16 *output_exp );
+ Word16 *output_exp
+);
Word16 matrix_diag_product_fx(
- const Word32 *X, /* i : left hand matrix */
+ const Word32 *X, /* i : left hand matrix */
Word16 X_e,
- const Word16 rowsX, /* i : number of rows of the left hand matrix */
- const Word16 colsX, /* i : number of columns of the left hand matrix */
- const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
- const Word32 *Y, /* i : right hand diagonal matrix as vector containing the diagonal elements */
+ const Word16 rowsX, /* i : number of rows of the left hand matrix */
+ const Word16 colsX, /* i : number of columns of the left hand matrix */
+ const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
+ const Word32 *Y, /* i : right hand diagonal matrix as vector containing the diagonal elements */
Word16 Y_e,
- const Word16 entriesY, /* i : number of entries in the diagonal */
- Word32 *Z, /* o : resulting matrix after the matrix multiplication */
- Word16 *Z_e );
+ const Word16 entriesY, /* i : number of entries in the diagonal */
+ Word32 *Z, /* o : resulting matrix after the matrix multiplication */
+ Word16 *Z_e
+);
Word16 matrix_diag_product_fx_2(
- const Word32 *X, /* i : left hand matrix Q31 - X_e*/
+ const Word32 *X, /* i : left hand matrix Q31 - X_e*/
const Word16 X_e,
- const Word16 rowsX, /* i : number of rows of the left hand matrix Q0*/
- const Word16 colsX, /* i : number of columns of the left hand matrix Q0*/
- const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication Q0*/
- const Word32 *Y, /* i : right hand diagonal matrix as vector containing the diagonal elements Q31 - Y_e*/
+ const Word16 rowsX, /* i : number of rows of the left hand matrix Q0*/
+ const Word16 colsX, /* i : number of columns of the left hand matrix Q0*/
+ const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication Q0*/
+ const Word32 *Y, /* i : right hand diagonal matrix as vector containing the diagonal elements Q31 - Y_e*/
const Word16 *Y_e,
- const Word16 entriesY, /* i : number of entries in the diagonal Q0*/
- Word32 *Z, /* o : resulting matrix after the matrix multiplication Q31 - Z_e*/
- Word16 *Z_e );
+ const Word16 entriesY, /* i : number of entries in the diagonal Q0*/
+ Word32 *Z, /* o : resulting matrix after the matrix multiplication Q31 - Z_e*/
+ Word16 *Z_e
+);
Word16 matrix_diag_product_fx_1(
- const Word32 *X, /* i : left hand matrix */
+ const Word32 *X, /* i : left hand matrix */
const Word16 *X_e,
- const Word16 rowsX, /* i : number of rows of the left hand matrix */
- const Word16 colsX, /* i : number of columns of the left hand matrix */
- const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
- const Word32 *Y, /* i : right hand diagonal matrix as vector containing the diagonal elements */
+ const Word16 rowsX, /* i : number of rows of the left hand matrix */
+ const Word16 colsX, /* i : number of columns of the left hand matrix */
+ const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
+ const Word32 *Y, /* i : right hand diagonal matrix as vector containing the diagonal elements */
const Word16 *Y_e,
- const Word16 entriesY, /* i : number of entries in the diagonal */
- Word32 *Z, /* o : resulting matrix after the matrix multiplication */
- Word16 *Z_e );
+ const Word16 entriesY, /* i : number of entries in the diagonal */
+ Word32 *Z, /* o : resulting matrix after the matrix multiplication */
+ Word16 *Z_e
+);
Word16 diag_matrix_product_fx(
- const Word32 *Y, /* i : left hand diagonal matrix as vector containing the diagonal elements */
+ const Word32 *Y, /* i : left hand diagonal matrix as vector containing the diagonal elements */
Word16 Y_e,
- const Word16 entriesY, /* i : length of the diagonal of the left hand matrix */
- const Word32 *X, /* i : right hand matrix */
+ const Word16 entriesY, /* i : length of the diagonal of the left hand matrix */
+ const Word32 *X, /* i : right hand matrix */
Word16 X_e,
- const Word16 rowsX, /* i : number of rows of the right hand matrix */
- const Word16 colsX, /* i : number of columns of the right hand matrix */
- const Word16 transpX, /* i : flag indicating the transposition of the right hand matrix prior to the multiplication */
- Word32 *Z, /* o : resulting matrix after the matrix multiplication */
- Word16 *Z_e );
+ const Word16 rowsX, /* i : number of rows of the right hand matrix */
+ const Word16 colsX, /* i : number of columns of the right hand matrix */
+ const Word16 transpX, /* i : flag indicating the transposition of the right hand matrix prior to the multiplication */
+ Word32 *Z, /* o : resulting matrix after the matrix multiplication */
+ Word16 *Z_e
+);
Word16 matrix_product_diag_fx(
- const Word32 *X, /* i : left hand matrix */
+ const Word32 *X, /* i : left hand matrix */
Word16 X_e,
- const Word16 rowsX, /* i : number of rows of the left hand matrix */
- const Word16 colsX, /* i : number of columns of the left hand matrix */
- const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
- const Word32 *Y, /* i : right hand matrix */
+ const Word16 rowsX, /* i : number of rows of the left hand matrix */
+ const Word16 colsX, /* i : number of columns of the left hand matrix */
+ const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
+ const Word32 *Y, /* i : right hand matrix */
Word16 Y_e,
- const Word16 rowsY, /* i : number of rows of the right hand matrix */
- const Word16 colsY, /* i : number of columns of the right hand matrix */
- const Word16 transpY, /* i : flag indicating the transposition of the right hand matrix prior to the multiplication */
- Word32 *Z, /* o : resulting matrix after the matrix multiplication */
- Word16 *Z_e );
+ const Word16 rowsY, /* i : number of rows of the right hand matrix */
+ const Word16 colsY, /* i : number of columns of the right hand matrix */
+ const Word16 transpY, /* i : flag indicating the transposition of the right hand matrix prior to the multiplication */
+ Word32 *Z, /* o : resulting matrix after the matrix multiplication */
+ Word16 *Z_e
+);
-// ivas_stereo_mdct_core_dec_fx.c
void stereo_mdct_core_dec_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word32 *signal_out[CPE_CHANNELS], /* o : synthesis @internal_FS */
- Word16 signal_outFB[CPE_CHANNELS][L_FRAME48k], /* o : synthesis @output_FS */
- Word16 e_sigFB[CPE_CHANNELS] /* o : exponent of synthesis @output_FS */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word32 *signal_out[CPE_CHANNELS], /* o : synthesis @internal_FS */
+ Word16 signal_outFB[CPE_CHANNELS][L_FRAME48k], /* o : synthesis @output_FS */
+ Word16 e_sigFB[CPE_CHANNELS] /* o : exponent of synthesis @output_FS */
);
-// ivas_stereo_mdct_stereo_com.c
void splitAvailableBits_fx(
- const Word16 total_bits, /* i : total available bits for TCX coding */
- const Word16 split_ratio, /* i : split ratio */
- const Word16 isSBAStereoMode, /* i : signal core coding for SBA */
- Word16 *bits_ch0, /* o : bits for channel 0 */
- Word16 *bits_ch1 /* o : bits for channel 1 */
+ const Word16 total_bits, /* i : total available bits for TCX coding */
+ const Word16 split_ratio, /* i : split ratio */
+ const Word16 isSBAStereoMode, /* i : signal core coding for SBA */
+ Word16 *bits_ch0, /* o : bits for channel 0 */
+ Word16 *bits_ch1 /* o : bits for channel 1 */
);
void stereo_tcx_init_dec_fx(
- Decoder_State *st, /* i/o: decoder state structure */
- const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0)*/
- const Word16 last_element_mode /* i : element mode of previous frame */
+ Decoder_State *st, /* i/o: decoder state structure */
+ const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0)*/
+ const Word16 last_element_mode /* i : element mode of previous frame */
);
void stereo_icBWE_enc_ivas_fx(
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
- const Word32 shb_speech_ref_fx[], /* i : SHB speech ref channel */
- const Word16 shb_speech_ref_e, /* i : SHB speech ref channel */
- Word32 shb_speech_nonref_fx[], /* i/o: SHB speech non-ref channel */
- Word16 shb_speech_nonref_e, /* i/o: SHB speech non-ref channel */
- const Word32 *voice_factors_fx /* i : voicing factors Q31 */
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
+ const Word32 shb_speech_ref_fx[], /* i : SHB speech ref channel */
+ const Word16 shb_speech_ref_e, /* i : SHB speech ref channel */
+ Word32 shb_speech_nonref_fx[], /* i/o: SHB speech non-ref channel */
+ Word16 shb_speech_nonref_e, /* i/o: SHB speech non-ref channel */
+ const Word32 *voice_factors_fx /* i : voicing factors Q31 */
);
void initMdctStereoDecData_fx(
- STEREO_MDCT_DEC_DATA *hStereoMdct, /* i/o: mdct stereo parameters structure */
- const Word16 igf, /* i : flag indicating IGF activity */
- const H_IGF_GRID igfGrid, /* i : IGF grid configuration */
- const Word32 element_brate, /* i : element bitrate */
- const Word16 bwidth /* i : audio bandwidth */
+ STEREO_MDCT_DEC_DATA *hStereoMdct, /* i/o: mdct stereo parameters structure */
+ const Word16 igf, /* i : flag indicating IGF activity */
+ const H_IGF_GRID igfGrid, /* i : IGF grid configuration */
+ const Word32 element_brate, /* i : element bitrate */
+ const Word16 bwidth /* i : audio bandwidth */
);
void stereo_tdm_downmix_ivas_fx(
- STEREO_TD_ENC_DATA_HANDLE hStereoTD, /* i : TD stereo IVAS encoder structure */
- Word16 *Left_in_fx, /* Qx */
- Word16 *Right_in_fx, /* Qx */
- const Word16 input_frame, /* i : Number of samples */
- const Word16 tdm_ratio_idx, /* i : TDM ratio index */
- const Word16 tdm_SM_flag, /* i : channel combination scheme flag */
- const Word16 tdm_ratio_idx_SM /* i : TDM ratio index for SM mode */
+ STEREO_TD_ENC_DATA_HANDLE hStereoTD, /* i : TD stereo IVAS encoder structure */
+ Word16 *Left_in_fx, /* Qx */
+ Word16 *Right_in_fx, /* Qx */
+ const Word16 input_frame, /* i : Number of samples */
+ const Word16 tdm_ratio_idx, /* i : TDM ratio index */
+ const Word16 tdm_SM_flag, /* i : channel combination scheme flag */
+ const Word16 tdm_ratio_idx_SM /* i : TDM ratio index for SM mode */
);
ivas_error initMdctItdHandling_fx(
- STEREO_MDCT_ENC_DATA *hStereoMdct, /* i/o: mdct stereo parameters structure */
- const Word32 input_Fs /* i : input sampling rate */
+ STEREO_MDCT_ENC_DATA *hStereoMdct, /* i/o: mdct stereo parameters structure */
+ const Word32 input_Fs /* i : input sampling rate */
);
void stereo_mdct_enc_destroy_fx(
- STEREO_MDCT_ENC_DATA_HANDLE *hStereoMdct /* i/o: encoder MDCT stereo handle */
+ STEREO_MDCT_ENC_DATA_HANDLE *hStereoMdct /* i/o: encoder MDCT stereo handle */
);
void stereo_mdct_init_bands_fx(
- const Word16 L_frame, /* i : frame length */
- const Word16 tmp_tcx_mode, /* i : tcx mode (TCX10, TCX 20), -1 if transition frame */
- const Word32 element_brate, /* i : element bitrate */
- const Word16 igf, /* i : flag indicating if IGF is used */
- const H_IGF_GRID hIgfGrid, /* i : IGF grid setup */
- Word16 *sfbOffset, /* o : sfb offset table */
- Word16 *sfbCnt /* o : number of sfbs */
+ const Word16 L_frame, /* i : frame length */
+ const Word16 tmp_tcx_mode, /* i : tcx mode (TCX10, TCX 20), -1 if transition frame */
+ const Word32 element_brate, /* i : element bitrate */
+ const Word16 igf, /* i : flag indicating if IGF is used */
+ const H_IGF_GRID hIgfGrid, /* i : IGF grid setup */
+ Word16 *sfbOffset, /* o : sfb offset table */
+ Word16 *sfbCnt /* o : number of sfbs */
);
void stereo_mdct_init_igf_start_band_fx(
- STEREO_MDCT_BAND_PARAMETERS *stbParams, /* i/o: stereo frequency band parameters */
- const Word16 transFac, /* i : transform factor */
- const Word16 bwidth, /* i : audio bandwidth */
- const Word32 element_brate /* i : element bitrate */
+ STEREO_MDCT_BAND_PARAMETERS *stbParams, /* i/o: stereo frequency band parameters */
+ const Word16 transFac, /* i : transform factor */
+ const Word16 bwidth, /* i : audio bandwidth */
+ const Word32 element_brate /* i : element bitrate */
);
void ivas_mdct_dec_side_bits_frame_channel_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word16 param_lpc[CPE_CHANNELS][NPRM_LPC_NEW], /* o : lpc_parameters */
- Word16 p_param[CPE_CHANNELS][NB_DIV], /* o : pointer to param buffer */
- Decoder_State *st0, /* i : pointer to bitstream handle */
- Word16 nTnsBitsTCX10[CPE_CHANNELS][NB_DIV], /* o : number of bits for TNS */
- Word16 param[CPE_CHANNELS][DEC_NPRM_DIV * NB_DIV], /* i/o: parameters buffer */
- const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0)*/
- const Word16 odd_channel_cpe /* i : flag cpe with odd nb of tc channels */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word16 param_lpc[CPE_CHANNELS][NPRM_LPC_NEW], /* o : lpc_parameters */
+ Word16 p_param[CPE_CHANNELS][NB_DIV], /* o : pointer to param buffer */
+ Decoder_State *st0, /* i : pointer to bitstream handle */
+ Word16 nTnsBitsTCX10[CPE_CHANNELS][NB_DIV], /* o : number of bits for TNS */
+ Word16 param[CPE_CHANNELS][DEC_NPRM_DIV * NB_DIV], /* i/o: parameters buffer */
+ const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0) */
+ const Word16 odd_channel_cpe /* i : flag cpe with odd nb of tc channels */
);
void mdct_read_IGF_bits_fx(
- Decoder_State *st, /* i/o: Decoder state handle */
- Decoder_State *st0 /* i : pointer to handle where bitstream is read */
+ Decoder_State *st, /* i/o: Decoder state handle */
+ Decoder_State *st0 /* i : pointer to handle where bitstream is read */
);
-void IGFDecReadData_ivas_fx( const IGF_DEC_INSTANCE_HANDLE hInstance, /**< in: | instance handle of IGF Deccoder */
- Decoder_State *st, /**< in: | decoder state */
- const Word16 igfGridIdx, /**< in: Q0 | in case of CELP->TCX switching, use 1.25 framelength */
- const Word16 isIndepFrame /**< in: Q0 | if 1: arith dec force reset, if 0: no reset */
+void IGFDecReadData_ivas_fx(
+ const IGF_DEC_INSTANCE_HANDLE hInstance, /* i : instance handle of IGF Deccoder */
+ Decoder_State *st, /* i : decoder state */
+ const Word16 igfGridIdx, /* i : in case of CELP->TCX switching, use 1.25 framelength */
+ const Word16 isIndepFrame /* i : if 1: arith dec force reset, if 0: no reset */
);
void stereo_tca_init_dec_fx(
- STEREO_TCA_DEC_HANDLE hStereoTCA /* i/o: Stereo TCA handle for Fixed */
+ STEREO_TCA_DEC_HANDLE hStereoTCA /* i/o: Stereo TCA handle for Fixed */
);
void stereo_icBWE_init_dec_fx(
- STEREO_ICBWE_DEC_HANDLE hStereoICBWE /* i/o: Stereo inter-channel BWE handle */
+ STEREO_ICBWE_DEC_HANDLE hStereoICBWE /* i/o: Stereo inter-channel BWE handle */
);
void stereo_icBWE_decproc_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word32 *output[CPE_CHANNELS], /* i/o: output synthesis */
- Word32 outputHB[CPE_CHANNELS][L_FRAME48k], /* i : HB synthesis */
- const Word16 last_core, /* i : last core, primary channel */
- const Word16 last_bwidth, /* i : last bandwidth */
- const Word16 output_frame /* i : frame length */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word32 *output[CPE_CHANNELS], /* i/o: output synthesis */
+ Word32 outputHB[CPE_CHANNELS][L_FRAME48k], /* i : HB synthesis */
+ const Word16 last_core, /* i : last core, primary channel */
+ const Word16 last_bwidth, /* i : last bandwidth */
+ const Word16 output_frame /* i : frame length */
);
void add_HB_to_mono_dmx_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word32 output[L_FRAME48k], /* i/o: output synthesis */
- Word32 outputHB[L_FRAME48k], /* i : HB synthesis */
- const Word16 last_core, /* i : last core, primary channel */
- const Word16 output_frame /* i : frame length */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word32 output[L_FRAME48k], /* i/o: output synthesis */
+ Word32 outputHB[L_FRAME48k], /* i : HB synthesis */
+ const Word16 last_core, /* i : last core, primary channel */
+ const Word16 output_frame /* i : frame length */
);
void stereo_dft_dmx_out_reset_fx(
- STEREO_DFT_DMX_DATA_HANDLE hStereoDftDmx /* i/o: DFT stereo DMX decoder */
+ STEREO_DFT_DMX_DATA_HANDLE hStereoDftDmx /* i/o: DFT stereo DMX decoder */
);
void ivas_get_dirac_sba_max_md_bits_fx(
@@ -1528,86 +1537,89 @@ void ivas_get_dirac_sba_max_md_bits_fx(
Word16 *metadata_max_bits,
Word16 *qmetadata_max_bit_req,
const Word16 nbands,
- IVAS_FORMAT ivas_format );
+ IVAS_FORMAT ivas_format
+);
ivas_error ivas_dirac_sba_config_fx(
- IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
- Word16 *element_mode, /* i/o: element mode of the core coder */
- Word32 sba_total_brate, /* i : SBA total bitrate */
- const Word16 sba_order, /* i : Ambisonic (SBA) order */
- const Word16 nbands /* i : number of frequency bands */
- ,
- IVAS_FORMAT ivas_format );
+ IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
+ Word16 *element_mode, /* i/o: element mode of the core coder */
+ Word32 sba_total_brate, /* i : SBA total bitrate */
+ const Word16 sba_order, /* i : Ambisonic (SBA) order */
+ const Word16 nbands, /* i : number of frequency bands */
+ IVAS_FORMAT ivas_format
+);
ivas_error ivas_dirac_config_fx(
- void *st_ivas, /* i/o: IVAS encoder/decoder state structure */
- const Word16 enc_dec /* i : encoder or decoder flag */
+ void *st_ivas, /* i/o: IVAS encoder/decoder state structure */
+ const Word16 enc_dec /* i : encoder or decoder flag */
);
void dtx_read_padding_bits_fx(
DEC_CORE_HANDLE st,
- const Word16 num_bits );
+ const Word16 num_bits
+);
void FdCngEncodeMDCTStereoSID_fx(
- CPE_ENC_HANDLE hCPE /* i/o: CPE encoder state structure */
+ CPE_ENC_HANDLE hCPE /* i/o: CPE encoder state structure */
);
void FdCngDecodeMDCTStereoSID_fx(
- CPE_DEC_HANDLE hCPE /* i/o: CPE decoder state structure */
+ CPE_DEC_HANDLE hCPE /* i/o: CPE decoder state structure */
);
void FdCngEncodeDiracMDCTStereoSID_fx(
- CPE_ENC_HANDLE hCPE /* i/o: CPE encoder state structure */
+ CPE_ENC_HANDLE hCPE /* i/o: CPE encoder state structure */
);
void FdCngDecodeDiracMDCTStereoSID_fx(
- CPE_DEC_HANDLE hCPE /* i/o: CPE decoder state structure */
+ CPE_DEC_HANDLE hCPE /* i/o: CPE decoder state structure */
);
-// tonalMDCTconcealment.c
void TonalMdctConceal_whiten_noise_shape_ivas_fx(
Decoder_State *st,
const Word16 L_frame,
- const TONALMDCTCONC_NOISE_SHAPE_WHITENING_MODE whitening_mode );
+ const TONALMDCTCONC_NOISE_SHAPE_WHITENING_MODE whitening_mode
+);
void stereo_icBWE_dec_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word32 *synthRef_fx, /* i/o: Reference channel HB synthesis at output Fs */
- Word32 *synth_fx, /* o : Non reference channel HB synthesis at output Fs */
- const Word16 *fb_synth_ref_fx, /* i : ref. high-band synthesis 16-20 kHz */
- const Word16 *voice_factors_fx, /* i : voicing factors */
- const Word16 output_frame, /* i : frame length */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word32 *synthRef_fx, /* i/o: Reference channel HB synthesis at output Fs */
+ Word32 *synth_fx, /* o : Non reference channel HB synthesis at output Fs */
+ const Word16 *fb_synth_ref_fx, /* i : ref. high-band synthesis 16-20 kHz */
+ const Word16 *voice_factors_fx, /* i : voicing factors */
+ const Word16 output_frame, /* i : frame length */
Word16 *Q_syn,
- const Word16 Q_white_exc /* i : Q of fb_synth_ref_fx */
+ const Word16 Q_white_exc /* i : Q of fb_synth_ref_fx */
);
void decoder_tcx_tns_fx(
- Decoder_State *st, /* i/o: coder memory state */
- const Word16 L_frame_glob, /* i : frame length */
+ Decoder_State *st, /* i/o: coder memory state */
+ const Word16 L_frame_glob, /* i : frame length */
const Word16 L_spec,
const Word16 L_frame,
const Word16 L_frameTCX,
Word32 x_fx[N_MAX],
- const Word16 fUseTns, /* i : flag that is set if TNS data is present */
+ const Word16 fUseTns, /* i : flag that is set if TNS data is present */
STnsData *tnsData,
- const Word16 bfi, /* i : Bad frame indicator */
- const Word16 frame_cnt, /* i : frame counter in the super frame */
+ const Word16 bfi, /* i : Bad frame indicator */
+ const Word16 frame_cnt, /* i : frame counter in the super frame */
const Word16 whitenedDomain,
- Word16 *length );
+ Word16 *length
+);
void ivas_mdct_core_tns_ns_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word16 fUseTns[CPE_CHANNELS][NB_DIV], /* i : two entries for each channel in TCX10 */
- STnsData tnsData[CPE_CHANNELS][NB_DIV], /* o : TNS parameter */
- Word32 *x_fx[CPE_CHANNELS][NB_DIV], /* o : synthesis @internal_FS */
- Word32 Aq_fx[CPE_CHANNELS][( NB_SUBFR16k + 1 ) * ( M + 1 )], /* o : LP coefficients */
- const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0) */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word16 fUseTns[CPE_CHANNELS][NB_DIV], /* i : two entries for each channel in TCX10 */
+ STnsData tnsData[CPE_CHANNELS][NB_DIV], /* o : TNS parameter */
+ Word32 *x_fx[CPE_CHANNELS][NB_DIV], /* o : synthesis @internal_FS */
+ Word32 Aq_fx[CPE_CHANNELS][( NB_SUBFR16k + 1 ) * ( M + 1 )],/* o : LP coefficients */
+ const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0) */
Word16 x_e
);
void decoder_tcx_imdct_fx(
- Decoder_State *st, /* i/o: coder memory state */
- const Word16 L_frame_glob, /* i : frame length */
+ Decoder_State *st, /* i/o: coder memory state */
+ const Word16 L_frame_glob, /* i : frame length */
const Word16 L_frameTCX_glob,
const Word16 L_spec,
const Word16 tcx_offset,
@@ -1620,44 +1632,45 @@ void decoder_tcx_imdct_fx(
Word16 xn_buf_fx[],
Word16 *q_win,
Word16 *q_winFB,
- const UWord16 kernelType, /* i : TCX transform kernel type */
- const Word16 fUseTns, /* i : flag that is set if TNS data is present */
- Word16 synth_fx[], /* i/o: synth[-M..L_frame] */
+ const UWord16 kernelType, /* i : TCX transform kernel type */
+ const Word16 fUseTns, /* i : flag that is set if TNS data is present */
+ Word16 synth_fx[], /* i/o: synth[-M..L_frame] */
Word16 synthFB_fx[],
- const Word16 bfi, /* i : Bad frame indicator */
- const Word16 frame_cnt, /* i : frame counter in the super frame */
- const Word16 sba_dirac_stereo_flag /* i : signal stereo output for SBA DirAC */
+ const Word16 bfi, /* i : Bad frame indicator */
+ const Word16 frame_cnt, /* i : frame counter in the super frame */
+ const Word16 sba_dirac_stereo_flag /* i : signal stereo output for SBA DirAC */
);
void ivas_sba_dirac_stereo_dec_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- Word32 *output[CPE_CHANNELS], /* i/o: output synthesis signal */
- const Word16 output_frame, /* i : output frame length per channel */
- const Word16 mcmasa /* i : McMASA flag */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ Word32 *output[CPE_CHANNELS], /* i/o: output synthesis signal */
+ const Word16 output_frame, /* i : output frame length per channel */
+ const Word16 mcmasa /* i : McMASA flag */
);
ivas_error ivas_osba_render_sf_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
- UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
- UWord16 *nSamplesAvailableNext, /* o : number of CLDFB slots still to render */
- Word32 *p_output[] /* o : rendered time signal */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
+ UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
+ UWord16 *nSamplesAvailableNext, /* o : number of CLDFB slots still to render */
+ Word32 *p_output[] /* o : rendered time signal */
);
void ivas_hq_core_dec_fx(
- Decoder_State *st_fx, /* i/o: decoder state structure fx */
- Word16 synth[], /* o : output synthesis */
- Word16 *Q_synth, /* o : Q value of synth */
- const Word16 output_frame, /* i : output frame length */
- const Word16 hq_core_type, /* i : HQ core type */
- const Word16 core_switching_flag, /* i : ACELP->HQ switching frame flag */
+ Decoder_State *st_fx, /* i/o: decoder state structure fx */
+ Word16 synth[], /* o : output synthesis */
+ Word16 *Q_synth, /* o : Q value of synth */
+ const Word16 output_frame, /* i : output frame length */
+ const Word16 hq_core_type, /* i : HQ core type */
+ const Word16 core_switching_flag, /* i : ACELP->HQ switching frame flag */
Word16 output[],
- Word16 *Q_output );
+ Word16 *Q_output
+);
void ivas_HQ_FEC_Mem_update_fx(
- Decoder_State *st_fx, /* i/o: decoder state structure */
- Word32 *t_audio_q_fx, /*Q12*/
- Word32 *normq_fx, /*Q14*/
+ Decoder_State *st_fx, /* i/o: decoder state structure */
+ Word32 *t_audio_q_fx, /*Q12*/
+ Word32 *normq_fx, /*Q14*/
Word16 *ynrm,
Word16 *Num_bands_p,
Word16 is_transient,
@@ -1665,83 +1678,86 @@ void ivas_HQ_FEC_Mem_update_fx(
Word16 c_switching_flag,
Word16 nb_sfm,
Word16 num_Sb,
- Word16 *mean_en_high_fx, /*Q5*/
- Word16 hq_core_type, /* i : normal or low-rate MDCT(HQ) core */
- Word16 output_frame );
+ Word16 *mean_en_high_fx, /*Q5*/
+ Word16 hq_core_type, /* i : normal or low-rate MDCT(HQ) core */
+ Word16 output_frame
+);
-Word16 ivas_hq_classifier_dec_fx( /* o : Consumed bits Q0 */
- Decoder_State *st_fx, /* i/o: decoder state structure */
- const Word32 core_brate, /* i : Core bit rate Q0 */
- const Word16 length, /* i : Frame length Q0 */
- Word16 *is_transient, /* o : Transient flag Q0 */
- Word16 *hqswb_clas /* o : HQ class Q0 */
+/* o : Consumed bits Q0 */
+Word16 ivas_hq_classifier_dec_fx(
+ Decoder_State *st_fx, /* i/o: decoder state structure */
+ const Word32 core_brate, /* i : Core bit rate Q0 */
+ const Word16 length, /* i : Frame length Q0 */
+ Word16 *is_transient, /* o : Transient flag Q0 */
+ Word16 *hqswb_clas /* o : HQ class Q0 */
);
void ivas_hq_hr_dec_fx(
- Decoder_State *st_fx, /* i/o: decoder state structure fx */
- Word32 *t_audio_q, /* o : transform-domain coefficients Q12 */
- const Word16 length, /* i : frame length Q0 */
- Word16 num_bits, /* i : number of available bits Q0 */
- Word16 *ynrm, /* o : norm quantization index vector Q0 */
- Word16 *is_transient, /* o : transient flag Q0 */
- Word16 *hqswb_clas, /* o : HQ SWB class Q0 */
- Word16 *SWB_fenv, /* o : SWB frequency envelopes Q1 */
- const Word16 core_switching_flag /* i : Core switching flag */
+ Decoder_State *st_fx, /* i/o: decoder state structure fx */
+ Word32 *t_audio_q, /* o : transform-domain coefficients Q12 */
+ const Word16 length, /* i : frame length Q0 */
+ Word16 num_bits, /* i : number of available bits Q0 */
+ Word16 *ynrm, /* o : norm quantization index vector Q0 */
+ Word16 *is_transient, /* o : transient flag Q0 */
+ Word16 *hqswb_clas, /* o : HQ SWB class Q0 */
+ Word16 *SWB_fenv, /* o : SWB frequency envelopes Q1 */
+ const Word16 core_switching_flag /* i : Core switching flag */
);
void ivas_hq_configure_fx(
- const Word16 length, /* i : Frame length Q0 */
- const Word16 hqswb_clas, /* i : HQ SWB class Q0 */
- const Word32 core_brate, /* i : Codec bitrate Q0 */
- Word16 *num_sfm, /* o : Total number of subbands Q0 */
- Word16 *nb_sfm, /* o : Total number of coded bands Q0 */
- Word16 *start_norm, /* o : First norm to be SDE encoded Q0 */
- Word16 *num_env_bands, /* o : Number coded envelope bands Q0 */
- Word16 *numnrmibits, /* o : Number of bits in fall-back norm encoding Q0 */
- Word16 *hq_generic_offset, /* o : Freq offset for HQ GENERIC Q0 */
- Word16 *sfmsize, /* o : Subband bandwidths Q0 */
- Word16 *sfm_start, /* o : Subband start coefficients Q0 */
- Word16 *sfm_end /* o : Subband end coefficients Q0 */
+ const Word16 length, /* i : Frame length Q0 */
+ const Word16 hqswb_clas, /* i : HQ SWB class Q0 */
+ const Word32 core_brate, /* i : Codec bitrate Q0 */
+ Word16 *num_sfm, /* o : Total number of subbands Q0 */
+ Word16 *nb_sfm, /* o : Total number of coded bands Q0 */
+ Word16 *start_norm, /* o : First norm to be SDE encoded Q0 */
+ Word16 *num_env_bands, /* o : Number coded envelope bands Q0 */
+ Word16 *numnrmibits, /* o : Number of bits in fall-back norm encoding Q0 */
+ Word16 *hq_generic_offset, /* o : Freq offset for HQ GENERIC Q0 */
+ Word16 *sfmsize, /* o : Subband bandwidths Q0 */
+ Word16 *sfm_start, /* o : Subband start coefficients Q0 */
+ Word16 *sfm_end /* o : Subband end coefficients Q0 */
);
void ivas_hq_bit_allocation_fx(
- const Word32 core_brate, /* i : Core bit-rate Q0 */
- const Word16 length, /* i : Frame length Q0 */
- const Word16 hqswb_clas, /* i : HQ class Q0 */
- Word16 *num_bits, /* i/o: Remaining bit budget Q0 */
- const Word16 *normqlg2, /* i : Quantized norms Q0 */
- const Word16 nb_sfm, /* i : Number sub bands to be encoded Q0 */
- const Word16 *sfmsize, /* i : Sub band bandwidths Q0 */
- Word16 *noise_level, /* o : HVQ noise level Q15 */
- Word16 *R, /* o : Bit allocation per sub band Q0 */
- Word16 *Rsubband, /* o : Fractional bit allocation Q3 */
- Word16 *sum, /* o : Sum of allocated shape bits Q0 */
- Word16 *core_sfm, /* o : Last coded band in core Q0 */
- const Word16 num_env_bands /* i : Number sub bands to be encoded for HQ_GEN Q0 */
-);
-
-Word16 ivas_assign_gain_bits_fx( /* o : Number of assigned gain bits */
- const Word16 core, /* i : HQ core */
- const Word16 BANDS, /* i : Number of bands */
- const Word16 *band_width, /* i : Sub band bandwidth */
- Word16 *Rk, /* i/o: Bit allocation/Adjusted bit alloc. Q3 */
- Word16 *gain_bits_array, /* o : Assigned gain bits */
- Word16 *Rcalc /* o : Bit budget for shape quantizer Q3 */
+ const Word32 core_brate, /* i : Core bit-rate Q0 */
+ const Word16 length, /* i : Frame length Q0 */
+ const Word16 hqswb_clas, /* i : HQ class Q0 */
+ Word16 *num_bits, /* i/o: Remaining bit budget Q0 */
+ const Word16 *normqlg2, /* i : Quantized norms Q0 */
+ const Word16 nb_sfm, /* i : Number sub bands to be encoded Q0 */
+ const Word16 *sfmsize, /* i : Sub band bandwidths Q0 */
+ Word16 *noise_level, /* o : HVQ noise level Q15 */
+ Word16 *R, /* o : Bit allocation per sub band Q0 */
+ Word16 *Rsubband, /* o : Fractional bit allocation Q3 */
+ Word16 *sum, /* o : Sum of allocated shape bits Q0 */
+ Word16 *core_sfm, /* o : Last coded band in core Q0 */
+ const Word16 num_env_bands /* i : Number sub bands to be encoded for HQ_GEN Q0 */
+);
+
+/* o : Number of assigned gain bits */
+Word16 ivas_assign_gain_bits_fx(
+ const Word16 core, /* i : HQ core */
+ const Word16 BANDS, /* i : Number of bands */
+ const Word16 *band_width, /* i : Sub band bandwidth */
+ Word16 *Rk, /* i/o: Bit allocation/Adjusted bit alloc. Q3 */
+ Word16 *gain_bits_array, /* o : Assigned gain bits */
+ Word16 *Rcalc /* o : Bit budget for shape quantizer Q3 */
);
void ivas_fine_gain_pred_fx(
- const Word16 *sfm_start, /* i : Sub band start indices */
- const Word16 *sfm_end, /* i : Sub band end indices */
- const Word16 *sfm_size, /* i : Sub band bandwidths */
- const Word16 *i_sort, /* i : Energy sorting indices */
- const Word16 *K, /* i : Number of pulses per band */
- const Word16 *maxpulse, /* i : Maximum pulse per band */
- const Word16 *R, /* i : Bits per sub band Q3 */
- const Word16 num_sfm, /* i : Number of sub bands */
- Word16 *xq, /* i/o: Quantized vector /quantized vector with finegain adj Q15*/
- Word16 *y, /* i/o: Quantized vector (int) Q0*/
- Word16 *fg_pred, /* o : Predicted fine gains Q12 */
- const Word16 core /* i : Core */
+ const Word16 *sfm_start, /* i : Sub band start indices */
+ const Word16 *sfm_end, /* i : Sub band end indices */
+ const Word16 *sfm_size, /* i : Sub band bandwidths */
+ const Word16 *i_sort, /* i : Energy sorting indices */
+ const Word16 *K, /* i : Number of pulses per band */
+ const Word16 *maxpulse, /* i : Maximum pulse per band */
+ const Word16 *R, /* i : Bits per sub band Q3 */
+ const Word16 num_sfm, /* i : Number of sub bands */
+ Word16 *xq, /* i/o: Quantized vector /quantized vector with finegain adj Q15*/
+ Word16 *y, /* i/o: Quantized vector (int) Q0*/
+ Word16 *fg_pred, /* o : Predicted fine gains Q12 */
+ const Word16 core /* i : Core */
);
Word16 ivas_pvq_core_dec_fx(
@@ -1749,117 +1765,119 @@ Word16 ivas_pvq_core_dec_fx(
const Word16 *sfm_start,
const Word16 *sfm_end,
const Word16 *sfmsize,
- Word16 coefs_quant[], /* o : output MDCT */
+ Word16 coefs_quant[], /* o : output MDCT */
Word16 *Q_coefs,
Word16 bits_tot,
Word16 nb_sfm,
- Word16 *R, /* Q3 */
+ Word16 *R, /* Q3 */
Word16 *Rs,
Word16 *npulses,
Word16 *maxpulse,
- const Word16 core );
+ const Word16 core
+);
void ivas_hq_ecu_fx(
- const Word16 *prevsynth, /* i : buffer of previously synthesized signal */
- Word32 *ecu_rec, /* o : reconstructed frame in tda domain */
- Word16 *time_offs, /* i/o: Sample offset for consecutive frame losses */
- Word16 *X_sav, /* i/o: Stored spectrum of prototype frame */
- Word16 *Q_spec, /* i/o: Q value of stored spectrum */
- Word16 *num_p, /* i/o: Number of identified peaks */
- Word16 *plocs, /* i/o: Peak locations */
- Word32 *plocsi, /* i/o: Interpolated peak locations Q16 */
- const Word16 env_stab, /* i : Envelope stability parameter */
- Word16 *last_fec, /* i/o: Flag for usage of pitch dependent ECU */
- const Word16 ph_ecu_HqVoicing, /* i : HQ Voicing flag */
- Word16 *ph_ecu_active, /* i : Phase ECU active flag */
- Word16 *gapsynth, /* o : Gap synthesis */
- const Word16 prev_bfi, /* i : indicating burst frame error */
- const Word16 old_is_transient[2], /* i : flags indicating previous transient frames */
- Word16 *mag_chg_1st, /* i/o: per band magnitude modifier for transients */
- Word16 *Xavg, /* i/o: Frequency group average gain to fade to */
- Word16 *beta_mute, /* o : Factor for long-term mute */
- const Word16 output_frame, /* i : frame length */
- Decoder_State *st_fx /* i/o: decoder state structure */
+ const Word16 *prevsynth, /* i : buffer of previously synthesized signal */
+ Word32 *ecu_rec, /* o : reconstructed frame in tda domain */
+ Word16 *time_offs, /* i/o: Sample offset for consecutive frame losses */
+ Word16 *X_sav, /* i/o: Stored spectrum of prototype frame */
+ Word16 *Q_spec, /* i/o: Q value of stored spectrum */
+ Word16 *num_p, /* i/o: Number of identified peaks */
+ Word16 *plocs, /* i/o: Peak locations */
+ Word32 *plocsi, /* i/o: Interpolated peak locations Q16 */
+ const Word16 env_stab, /* i : Envelope stability parameter */
+ Word16 *last_fec, /* i/o: Flag for usage of pitch dependent ECU */
+ const Word16 ph_ecu_HqVoicing, /* i : HQ Voicing flag */
+ Word16 *ph_ecu_active, /* i : Phase ECU active flag */
+ Word16 *gapsynth, /* o : Gap synthesis */
+ const Word16 prev_bfi, /* i : indicating burst frame error */
+ const Word16 old_is_transient[2], /* i : flags indicating previous transient frames */
+ Word16 *mag_chg_1st, /* i/o: per band magnitude modifier for transients */
+ Word16 *Xavg, /* i/o: Frequency group average gain to fade to */
+ Word16 *beta_mute, /* o : Factor for long-term mute */
+ const Word16 output_frame, /* i : frame length */
+ Decoder_State *st_fx /* i/o: decoder state structure */
);
void ivas_fill_spectrum_fx(
- Word16 *coeff, /* i/o: normalized MLT spectrum / nf spectrum Q12 */
- Word32 *L_coeff_out, /* i/o: Noisefilled MLT spectrum Q12 */
- const Word16 *R, /* i : number of pulses per band Q0 */
- const Word16 is_transient, /* i : transient flag Q0 */
- Word16 norm[], /* i : quantization indices for norms Q0 */
- const Word16 *hq_generic_fenv, /* i : HQ GENERIC envelope Q1 */
- const Word16 hq_generic_offset, /* i : HQ GENERIC offset Q0 */
- const Word16 nf_idx, /* i : noise fill index Q0 */
- const Word16 length, /* i : Length of spectrum (32 or 48 kHz) Q0 */
- const Word16 env_stab, /* i : Envelope stability measure [0..1] Q15 */
- Word16 *no_att_hangover, /* i/o: Frame counter for attenuation hangover Q0 */
- Word32 *L_energy_lt, /* i/o: Long-term energy measure for transient detection Q13 */
- Word16 *bwe_seed, /* i/o: random seed for generating BWE i Q0 */
- const Word16 hq_generic_exc_clas, /* i : BWE excitation class Q0 */
- const Word16 core_sfm, /* i : index of the end band for core Q0 */
- const Word16 HQ_mode, /* i : HQ mode Q0 */
- Word16 noise_level[], /* i : noise levels for harmonic modes Q15 */
- const Word32 L_core_brate, /* i : target bit-rate Q0 */
- Word16 prev_noise_level[], /* i/o: noise factor in previous frame Q15 */
- Word16 *prev_R, /* i/o: bit allocation info. in previous frame Q0 */
- Word32 *prev_coeff_out, /* i/o: decoded spectrum in previous frame Q12 */
- const Word16 *peak_idx, /* i : peak indices for hvq Q0 */
- const Word16 Npeaks, /* i : number of peaks in hvq Q0 */
- const Word16 *npulses, /* i : number of pulses per band Q0 */
- const Word16 prev_is_transient, /* i : previous transient flag Q0 */
- Word32 *prev_normq, /* i/o: previous norms Q14 */
- Word32 *prev_env, /* i/o: previous noise envelopes Q(prev_env_Q) */
- const Word16 prev_bfi, /* i : previous bad frame indicator Q0 */
- const Word16 *sfmsize, /* i : Length of bands Q0 */
- const Word16 *sfm_start, /* i : Start of bands Q0 */
- const Word16 *sfm_end, /* i : End of bands Q0 */
- Word16 *prev_L_swb_norm, /* i/o: HVQ/Harmonic mode normalization length Q0 */
- const Word16 prev_hq_mode, /* i : Previous HQ mode Q0 */
- const Word16 num_sfm, /* i : Total number of bands Q0 */
+ Word16 *coeff, /* i/o: normalized MLT spectrum / nf spectrum Q12 */
+ Word32 *L_coeff_out, /* i/o: Noisefilled MLT spectrum Q12 */
+ const Word16 *R, /* i : number of pulses per band Q0 */
+ const Word16 is_transient, /* i : transient flag Q0 */
+ Word16 norm[], /* i : quantization indices for norms Q0 */
+ const Word16 *hq_generic_fenv, /* i : HQ GENERIC envelope Q1 */
+ const Word16 hq_generic_offset, /* i : HQ GENERIC offset Q0 */
+ const Word16 nf_idx, /* i : noise fill index Q0 */
+ const Word16 length, /* i : Length of spectrum (32 or 48 kHz) Q0 */
+ const Word16 env_stab, /* i : Envelope stability measure [0..1] Q15 */
+ Word16 *no_att_hangover, /* i/o: Frame counter for attenuation hangover Q0 */
+ Word32 *L_energy_lt, /* i/o: Long-term energy measure for transient detection Q13 */
+ Word16 *bwe_seed, /* i/o: random seed for generating BWE i Q0 */
+ const Word16 hq_generic_exc_clas, /* i : BWE excitation class Q0 */
+ const Word16 core_sfm, /* i : index of the end band for core Q0 */
+ const Word16 HQ_mode, /* i : HQ mode Q0 */
+ Word16 noise_level[], /* i : noise levels for harmonic modes Q15 */
+ const Word32 L_core_brate, /* i : target bit-rate Q0 */
+ Word16 prev_noise_level[], /* i/o: noise factor in previous frame Q15 */
+ Word16 *prev_R, /* i/o: bit allocation info. in previous frame Q0 */
+ Word32 *prev_coeff_out, /* i/o: decoded spectrum in previous frame Q12 */
+ const Word16 *peak_idx, /* i : peak indices for hvq Q0 */
+ const Word16 Npeaks, /* i : number of peaks in hvq Q0 */
+ const Word16 *npulses, /* i : number of pulses per band Q0 */
+ const Word16 prev_is_transient, /* i : previous transient flag Q0 */
+ Word32 *prev_normq, /* i/o: previous norms Q14 */
+ Word32 *prev_env, /* i/o: previous noise envelopes Q(prev_env_Q) */
+ const Word16 prev_bfi, /* i : previous bad frame indicator Q0 */
+ const Word16 *sfmsize, /* i : Length of bands Q0 */
+ const Word16 *sfm_start, /* i : Start of bands Q0 */
+ const Word16 *sfm_end, /* i : End of bands Q0 */
+ Word16 *prev_L_swb_norm, /* i/o: HVQ/Harmonic mode normalization length Q0 */
+ const Word16 prev_hq_mode, /* i : Previous HQ mode Q0 */
+ const Word16 num_sfm, /* i : Total number of bands Q0 */
Word16 *prev_env_Q,
const Word16 num_env_bands,
- const Word16 element_mode );
+ const Word16 element_mode
+);
void ivas_de_interleave_spectrum_fx(
- Word32 *coefs, /* i/o: input and output coefficients Q12 */
- const Word16 length /* i : length of spectrum Q0 */
+ Word32 *coefs, /* i/o: input and output coefficients Q12 */
+ const Word16 length /* i : length of spectrum Q0 */
);
void ivas_harm_bwe_fx(
- const Word16 *coeff_fine, /* i : fine structure for BWE */
- const Word16 *coeff, /* i : coded/noisefilled normalized spectrum */
- const Word16 num_sfm, /* i : Number of subbands */
- const Word16 *sfm_start, /* i : Subband start coefficient */
- const Word16 *sfm_end, /* i : Subband end coefficient */
- const Word16 last_sfm, /* i : last coded subband */
- const Word16 *R, /* i : bit allocation */
- const Word16 prev_hq_mode, /* i : previous hq mode */
- Word16 *norm, /* i/o: quantization indices for norms */
- Word16 *noise_level, /* i/o: noise levels for harmonic modes */
- Word16 *prev_noise_level, /* i/o: noise factor in previous frame */
- Word16 *bwe_seed, /* i/o: random seed for generating BWE input */
- Word32 *coeff_out, /* o : coded/noisefilled spectrum */
- const Word16 element_mode /* i : IVAS element mode */
+ const Word16 *coeff_fine, /* i : fine structure for BWE */
+ const Word16 *coeff, /* i : coded/noisefilled normalized spectrum */
+ const Word16 num_sfm, /* i : Number of subbands */
+ const Word16 *sfm_start, /* i : Subband start coefficient */
+ const Word16 *sfm_end, /* i : Subband end coefficient */
+ const Word16 last_sfm, /* i : last coded subband */
+ const Word16 *R, /* i : bit allocation */
+ const Word16 prev_hq_mode, /* i : previous hq mode */
+ Word16 *norm, /* i/o: quantization indices for norms */
+ Word16 *noise_level, /* i/o: noise levels for harmonic modes */
+ Word16 *prev_noise_level, /* i/o: noise factor in previous frame */
+ Word16 *bwe_seed, /* i/o: random seed for generating BWE input */
+ Word32 *coeff_out, /* o : coded/noisefilled spectrum */
+ const Word16 element_mode /* i : IVAS element mode */
);
void ivas_hq_pred_hb_bws_fx(
- Decoder_State *st_fx, /* i/o: decoder state structure */
- const Word16 *ynrm, /* i : norm quantization index vector */
- const Word16 length, /* i : frame length */
- const Word16 hqswb_clas, /* i : HQ SWB class */
- const Word16 *SWB_fenv /* i : SWB frequency envelopes Q1 */
+ Decoder_State *st_fx, /* i/o: decoder state structure */
+ const Word16 *ynrm, /* i : norm quantization index vector */
+ const Word16 length, /* i : frame length */
+ const Word16 hqswb_clas, /* i : HQ SWB class */
+ const Word16 *SWB_fenv /* i : SWB frequency envelopes Q1 */
);
void synchro_synthesis_fx(
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word32 *output_fx[CPE_CHANNELS], /* i/o: output synthesis signal */
- const Word16 output_frame, /* i : Number of samples */
- const Word16 sba_dirac_stereo_flag, /* i : signal stereo output for SBA DirAC */
- Word16 output_fx_q );
-
-// ivas_dirac_output_synthesis_cov
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word32 *output_fx[CPE_CHANNELS], /* i/o: output synthesis signal */
+ const Word16 output_frame, /* i : Number of samples */
+ const Word16 sba_dirac_stereo_flag, /* i : signal stereo output for SBA DirAC */
+ Word16 output_fx_q
+);
+
void ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot_fx(
Word32 *RealBuffer_fx, /* i : input channel filter bank samples (real part) */
Word16 RealBuffer_e, /* i : exponent input channel filter bank samples (real part)*/
@@ -1875,109 +1893,113 @@ void ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot_fx(
);
void configureFdCngDec_ivas_fx(
- HANDLE_FD_CNG_DEC hFdCngDec, /* i/o: Contains the variables related to the FD-based CNG process */
+ HANDLE_FD_CNG_DEC hFdCngDec, /* i/o: Contains the variables related to the FD-based CNG process */
const Word16 bwidth,
const Word32 total_brate,
const Word16 L_frame,
const Word16 last_L_frame,
- const Word16 element_mode );
+ const Word16 element_mode
+);
void synchonize_channels_mdct_sid_fx(
- Decoder_State *sts[CPE_CHANNELS], /* i/o: decoder state structure */
- const Word16 n /* i : channel number */
+ Decoder_State *sts[CPE_CHANNELS], /* i/o: decoder state structure */
+ const Word16 n /* i : channel number */
);
void ivas_interpolate_3_over_1_allpass_fx(
- const Word16 *input_fx,
- /* i : input signal */ /* Q_input */
- const Word16 len, /* i : number of input samples */
- Word16 *out_fx,
- /* o : output signal */ /* Q_input */
- Word16 *mem_fx /* i/o: memory */ /* Q_input */
+ const Word16 *input_fx, /* i : input signal Q_input */
+ const Word16 len, /* i : number of input samples */
+ Word16 *out_fx, /* o : output signal Q_input */
+ Word16 *mem_fx /* i/o: memory Q_input */
);
void tdm_configure_enc_fx(
- const Word16 ivas_format, /* i : IVAS format */
- const Word16 ism_mode, /* i : ISM mode in combined format */
- CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
- const Word16 Etot_last_fx[CPE_CHANNELS], /* i/o: Energy of last frame Q8*/
- const Word16 tdm_SM_or_LRTD_Pri, /* i : channel combination scheme flag in TD stereo OR LRTD primary channel */
- const Word16 tdm_ratio_idx, /* i : ratio index */
- const Word16 tdm_ratio_idx_SM, /* i : ratio index in SM mode */
- const Word16 attack_flag, /* i : Primary channel attack flag */
- const Word16 nb_bits_metadata /* i : number of metadata bits */
+ const Word16 ivas_format, /* i : IVAS format */
+ const Word16 ism_mode, /* i : ISM mode in combined format */
+ CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
+ const Word16 Etot_last_fx[CPE_CHANNELS], /* i/o: Energy of last frame Q8*/
+ const Word16 tdm_SM_or_LRTD_Pri, /* i : channel combination scheme flag in TD stereo OR LRTD primary channel */
+ const Word16 tdm_ratio_idx, /* i : ratio index */
+ const Word16 tdm_ratio_idx_SM, /* i : ratio index in SM mode */
+ const Word16 attack_flag, /* i : Primary channel attack flag */
+ const Word16 nb_bits_metadata /* i : number of metadata bits */
);
void stereoFdCngCoherence_fx(
- Encoder_State **sts, /* i/o: core encoder structures */
- const Word16 last_element_mode, /* i : last element mode */
- Word16 fft_buff[CPE_CHANNELS][2 * L_FFT], /* i : fft buffers for L and R channels fft_exp*/
- Word16 fft_exp );
+ Encoder_State **sts, /* i/o: core encoder structures */
+ const Word16 last_element_mode, /* i : last element mode */
+ Word16 fft_buff[CPE_CHANNELS][2 * L_FFT], /* i : fft buffers for L and R channels fft_exp*/
+ Word16 fft_exp
+);
void ivas_wb_tbe_dec_fx(
- Decoder_State *st_fx, /* i/o: decoder state structure */
- const Word16 coder_type, /* i : coding type */
- Word32 *bwe_exc_extended, /* i : bandwidth extended exciatation 2*Q_exc*/
+ Decoder_State *st_fx, /* i/o: decoder state structure */
+ const Word16 coder_type, /* i : coding type */
+ Word32 *bwe_exc_extended, /* i : bandwidth extended exciatation 2*Q_exc*/
const Word16 Q_exc,
- const Word16 voice_factors[], /* i : voicing factors */
- Word16 *synth, /* o : WB synthesis/final synthesis */
- Word16 *Q_synth );
+ const Word16 voice_factors[], /* i : voicing factors */
+ Word16 *synth, /* o : WB synthesis/final synthesis */
+ Word16 *Q_synth
+);
void GenShapedWBExcitation_ivas_fx(
- Word16 *excSHB, /* o : synthesized shaped shb exctiation Q_bwe_exc*/
- const Word16 *lpc_shb, /* i : lpc coefficients Q12*/
- Word16 *exc4kWhtnd, /* o : whitened synthesized shb excitation Q_bwe_exc*/
- Word32 *mem_csfilt, /* i/o : memory Q_bwe_exc+16*/
- Word16 *mem_genSHBexc_filt_down1, /* i/o : memory Q_bwe_exc*/
- Word16 *mem_genSHBexc_filt_down2, /* i/o : memory Q_bwe_exc*/
- Word16 *mem_genSHBexc_filt_down3, /* i/o : memory Q_bwe_exc*/
- Word16 *state_lpc_syn, /* i/o : memory Q_bwe_exc*/
- const Word16 coder_type, /* i : coding type */
- const Word16 *bwe_exc_extended, /* i : bwidth extended exciatation Q_bwe_exc*/
+ Word16 *excSHB, /* o : synthesized shaped shb exctiation Q_bwe_exc*/
+ const Word16 *lpc_shb, /* i : lpc coefficients Q12 */
+ Word16 *exc4kWhtnd, /* o : whitened synthesized shb excitation Q_bwe_exc*/
+ Word32 *mem_csfilt, /* i/o : memory Q_bwe_exc+16*/
+ Word16 *mem_genSHBexc_filt_down1, /* i/o : memory Q_bwe_exc*/
+ Word16 *mem_genSHBexc_filt_down2, /* i/o : memory Q_bwe_exc*/
+ Word16 *mem_genSHBexc_filt_down3, /* i/o : memory Q_bwe_exc*/
+ Word16 *state_lpc_syn, /* i/o : memory Q_bwe_exc*/
+ const Word16 coder_type, /* i : coding type */
+ const Word16 *bwe_exc_extended, /* i : bwidth extended exciatation Q_bwe_exc*/
const Word16 Q_bwe_exc,
- Word16 bwe_seed[], /* i/o : random number generator seed */
- const Word16 voice_factors[], /* i : voicing factor Q15*/
- const Word16 uv_flag, /* i : unvoiced flag */
- const Word16 igf_flag );
-
-Word16 ivas_wb_bwe_dec_fx( /* o : Q_syn_hb*/
- Decoder_State *st_fx, /* i/o: decoder state structure */
- const Word16 output[], /* i : suntehsis @ internal Fs Q_input */
- Word16 *synth_fx, /* i/o: ACELP core synthesis/final synthesis Q0/Qpost */
- Word16 *hb_synth_fx, /* o : SHB synthesis/final synthesis Q_syn_hb */
- const Word16 use_cldfb_for_dft, /* i : flag to use of CLDFB for DFT Stereo */
- const Word16 output_frame, /* i : frame length */
- Word16 *voice_factors_fx, /* i : voicing factors Q15 */
- const Word16 pitch_buf_fx[], /* i : pitch buffer Q6 */
- Word16 *Qpost );
+ Word16 bwe_seed[], /* i/o : random number generator seed */
+ const Word16 voice_factors[], /* i : voicing factor Q15*/
+ const Word16 uv_flag, /* i : unvoiced flag */
+ const Word16 igf_flag
+);
+
+/* o : Q_syn_hb*/
+Word16 ivas_wb_bwe_dec_fx(
+ Decoder_State *st_fx, /* i/o: decoder state structure */
+ const Word16 output[], /* i : suntehsis @ internal Fs Q_input */
+ Word16 *synth_fx, /* i/o: ACELP core synthesis/final synthesis Q0/Qpost */
+ Word16 *hb_synth_fx, /* o : SHB synthesis/final synthesis Q_syn_hb */
+ const Word16 use_cldfb_for_dft, /* i : flag to use of CLDFB for DFT Stereo */
+ const Word16 output_frame, /* i : frame length */
+ Word16 *voice_factors_fx, /* i : voicing factors Q15 */
+ const Word16 pitch_buf_fx[], /* i : pitch buffer Q6 */
+ Word16 *Qpost
+);
void ivas_param_ism_config_fx(
- PARAM_ISM_CONFIG_HANDLE hParamIsm, /* i/o: IVAS Param ISM Config Structure */
- const Word16 nchan_obj /* i : number of ISM channels */
+ PARAM_ISM_CONFIG_HANDLE hParamIsm, /* i/o: IVAS Param ISM Config Structure */
+ const Word16 nchan_obj /* i : number of ISM channels */
);
void ivas_mdct_core_invQ_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE handle */
- Word16 nTnsBitsTCX10[CPE_CHANNELS][NB_DIV], /* i : number of TNS bits */
- Word16 p_param[CPE_CHANNELS][NB_DIV], /* i : pointer to param buffer */
- Word16 param_lpc[CPE_CHANNELS][NPRM_LPC_NEW], /* i : lpc parameters */
- Word16 param[CPE_CHANNELS][DEC_NPRM_DIV * NB_DIV], /* i : param buffer */
- Word16 fUseTns[CPE_CHANNELS][NB_DIV], /* i : flag TNS enabled */
- STnsData tnsData[CPE_CHANNELS][NB_DIV], /* i : TNS parameter */
- Word32 *x_0[CPE_CHANNELS][NB_DIV], /* i/o: signal buffer */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE handle */
+ Word16 nTnsBitsTCX10[CPE_CHANNELS][NB_DIV], /* i : number of TNS bits */
+ Word16 p_param[CPE_CHANNELS][NB_DIV], /* i : pointer to param buffer */
+ Word16 param_lpc[CPE_CHANNELS][NPRM_LPC_NEW], /* i : lpc parameters */
+ Word16 param[CPE_CHANNELS][DEC_NPRM_DIV * NB_DIV], /* i : param buffer */
+ Word16 fUseTns[CPE_CHANNELS][NB_DIV], /* i : flag TNS enabled */
+ STnsData tnsData[CPE_CHANNELS][NB_DIV], /* i : TNS parameter */
+ Word32 *x_0[CPE_CHANNELS][NB_DIV], /* i/o: signal buffer */
Word16 x_0_e,
- Word32 *x[CPE_CHANNELS][NB_DIV], /* i/o: signal buffer */
+ Word32 *x[CPE_CHANNELS][NB_DIV], /* i/o: signal buffer */
Word16 x_e,
Word16 x_len[CPE_CHANNELS][NB_DIV],
- Word16 Aq[CPE_CHANNELS][( NB_SUBFR16k + 1 ) * ( M + 1 )], /* i : LP coefficients */
- Word16 ms_mask[NB_DIV][MAX_SFB], /* i : M/S mask */
- const Word16 MCT_flag /* i : hMCT handle allocated (1) or not (0) */
+ Word16 Aq[CPE_CHANNELS][( NB_SUBFR16k + 1 ) * ( M + 1 )], /* i : LP coefficients */
+ Word16 ms_mask[NB_DIV][MAX_SFB], /* i : M/S mask */
+ const Word16 MCT_flag /* i : hMCT handle allocated (1) or not (0) */
);
void ivas_mdct_tcx10_bit_distribution_fx(
- Word16 target_bitsTCX10[NB_DIV], /* o : target bit distribution */
- const Word16 nbits_tcx, /* i : TCX bits */
- const Word16 nTnsBitsTCX10[NB_DIV] /* i : TNS bits */
+ Word16 target_bitsTCX10[NB_DIV], /* o : target bit distribution */
+ const Word16 nbits_tcx, /* i : TCX bits */
+ const Word16 nTnsBitsTCX10[NB_DIV] /* i : TNS bits */
);
void TonalMDCTConceal_Detect_ivas_fx(
@@ -1985,10 +2007,11 @@ void TonalMDCTConceal_Detect_ivas_fx(
const Word32 pitchLag,
Word16 *numIndices,
const PsychoacousticParameters *psychParamsCurrent,
- Word16 element_mode );
+ Word16 element_mode
+);
Word16 GetPLCModeDecision_ivas_fx(
- Decoder_State *st /* i/o: decoder memory state pointer */
+ Decoder_State *st /* i/o: decoder memory state pointer */
);
void ivas_DetectTonalComponents_fx(
@@ -2007,47 +2030,51 @@ void ivas_DetectTonalComponents_fx(
const Word16 secondLastPowerSpectrum_e,
const Word16 nSamples,
const Word16 nSamplesCore,
- Word16 floorPowerSpectrum, /* i: lower limit for power spectrum bins */
+ Word16 floorPowerSpectrum, /* i : lower limit for power spectrum bins */
const PsychoacousticParameters *psychParamsCurrent,
- Word16 element_mode );
+ Word16 element_mode
+);
ivas_error stereo_dft_dec_create_fx(
- STEREO_DFT_DEC_DATA_HANDLE *hStereoDft, /* i/o: decoder DFT stereo handle */
- const Word32 element_brate, /* i : element bitrate */
- const Word32 output_Fs, /* i : output sampling rate */
- const Word16 sba_dirac_stereo_flag, /* i : signal stereo output for SBA DirAC */
- const Word16 nchan_transport /* i : number of transport channels */
+ STEREO_DFT_DEC_DATA_HANDLE *hStereoDft, /* i/o: decoder DFT stereo handle */
+ const Word32 element_brate, /* i : element bitrate */
+ const Word32 output_Fs, /* i : output sampling rate */
+ const Word16 sba_dirac_stereo_flag, /* i : signal stereo output for SBA DirAC */
+ const Word16 nchan_transport /* i : number of transport channels */
);
void stereo_cng_init_dec_fx(
- STEREO_CNG_DEC_HANDLE hStereoCng, /* i/o: stereo CNG decoder structure */
- const Word16 *frameSize /* i : pointer to frameSize of channel 0 to be used for channel 1 */
+ STEREO_CNG_DEC_HANDLE hStereoCng, /* i/o: stereo CNG decoder structure */
+ const Word16 *frameSize /* i : pointer to frameSize of channel 0 to be used for channel 1 */
);
ivas_error stereo_memory_dec_fx(
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- CPE_DEC_HANDLE hCPE, /* i : CPE decoder structure */
- const Word16 nb_bits_metadata, /* i : number of metadata bits */
- const Word32 output_Fs, /* i : output sampling rate */
- const IVAS_FORMAT ivas_format, /* i : IVAS format */
- const MC_MODE mc_mode, /* i : MC mode */
- const Word16 nchan_transport /* i : number of transport channels*/
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ CPE_DEC_HANDLE hCPE, /* i : CPE decoder structure */
+ const Word16 nb_bits_metadata, /* i : number of metadata bits */
+ const Word32 output_Fs, /* i : output sampling rate */
+ const IVAS_FORMAT ivas_format, /* i : IVAS format */
+ const MC_MODE mc_mode, /* i : MC mode */
+ const Word16 nchan_transport /* i : number of transport channels */
);
void initFdCngDec_ivas_fx(
- DEC_CORE_HANDLE st, /* i/o: decoder state structure */
- Word16 scale );
+ DEC_CORE_HANDLE st, /* i/o: decoder state structure */
+ Word16 scale
+);
-void ivas_initFdCngCom_fx( HANDLE_FD_CNG_COM hFdCngCom, Word16 scale );
+void ivas_initFdCngCom_fx(
+ HANDLE_FD_CNG_COM hFdCngCom, Word16 scale
+);
Word16 set_ACELP_flag_IVAS(
- const Word16 element_mode, /* i : element mode */
- const Word32 element_brate, /* i : element bitrate */
- const Word32 total_brate, /* i : total bitrate per channel */
- const Word16 idchan, /* i : Channel id */
- const Word16 tdm_LRTD_flag, /* i : LRTD stereo mode flag */
- const Word16 bwidth, /* i : audio bandwidth */
- const Word16 cng_type /* i : CNG type */
+ const Word16 element_mode, /* i : element mode */
+ const Word32 element_brate, /* i : element bitrate */
+ const Word32 total_brate, /* i : total bitrate per channel */
+ const Word16 idchan, /* i : Channel id */
+ const Word16 tdm_LRTD_flag, /* i : LRTD stereo mode flag */
+ const Word16 bwidth, /* i : audio bandwidth */
+ const Word16 cng_type /* i : CNG type */
);
void ivas_calc_c_p_coeffs_enc_fx(
@@ -2062,7 +2089,8 @@ void ivas_calc_c_p_coeffs_enc_fx(
const Word16 band_idx,
const Word16 dtx_vad,
const Word16 compute_p_flag,
- const Word16 dyn_active_w_flag );
+ const Word16 dyn_active_w_flag
+);
void ivas_calc_c_p_coeffs_fx(
ivas_spar_md_t *pSparMd,
@@ -2076,103 +2104,105 @@ void ivas_calc_c_p_coeffs_fx(
const Word16 band_idx,
const Word16 dtx_vad,
const Word16 compute_p_flag,
- const Word16 dyn_active_w_flag );
+ const Word16 dyn_active_w_flag
+);
Word16 is_SIDrate(
- const Word32 ivas_total_brate /* i : IVAS total bitrate */
+ const Word32 ivas_total_brate /* i : IVAS total bitrate */
);
Word16 is_DTXrate(
- const Word32 ivas_total_brate /* i : IVAS total bitrate */
+ const Word32 ivas_total_brate /* i : IVAS total bitrate */
);
Word16 ivas_qmetadata_dereorder_generic_fx(
- const UWord16 uns_value /* i : unsigned value result of ReorderGeneric */
+ const UWord16 uns_value /* i : unsigned value result of ReorderGeneric */
);
void update_bits_next_block_fx(
- IVAS_QDIRECTION *q_direction, /* i/o: qdirection */
- Word16 *p_diff, /* i/o: bits to be transferred */
- const Word16 j, /* i : subband to update bit alloc to*/
- const Word16 max_i, /* i : number of subbands */
- const Word16 max_k /* i : n umber of subframes */
+ IVAS_QDIRECTION *q_direction, /* i/o: qdirection */
+ Word16 *p_diff, /* i/o: bits to be transferred */
+ const Word16 j, /* i : subband to update bit alloc to */
+ const Word16 max_i, /* i : number of subbands */
+ const Word16 max_k /* i : number of subframes */
);
UWord32 ivas_syn_output_fx(
- Word32 *synth[], /* i/o: Word32 synthesis signal */
+ Word32 *synth[], /* i/o: Word32 synthesis signal */
const Word16 q_synth,
- const Word16 output_frame, /* i : output frame length (one channel) */
- const Word16 n_channels, /* i : number of output channels */
- Word16 *synth_out /* o : integer 16 bits synthesis signal */
+ const Word16 output_frame, /* i : output frame length (one channel) */
+ const Word16 n_channels, /* i : number of output channels */
+ Word16 *synth_out /* o : integer 16 bits synthesis signal */
);
void stereo_tcx_core_dec_fx(
- Decoder_State *st, /* i/o: decoder state structure */
- const FRAME_MODE frameMode, /* i : Decoder frame mode */
- Word16 *signal_out, /* o : synthesis @internal_Fs, Q0 */
- Word16 *signal_outFB, /* o : synthesis @output_Fs, Q0 */
- Word16 pitch_buf[], /* o : floating pitch for each subframe, Q6 */
- const Word16 sba_dirac_stereo_flag, /* i : signal stereo output for SBA DirAC */
- STEREO_TD_DEC_DATA_HANDLE hStereoTD, /* i/o: TD stereo decoder handle */
- const Word16 last_element_mode, /* i : last element mode */
- const Word16 flag_sec_CNA, /* i : CNA flag for secondary channel */
- STEREO_CNG_DEC_HANDLE hStereoCng, /* i : Stereo CNG handle */
- const Word16 nchan_out, /* i : number of output channels */
- const IVAS_FORMAT ivas_format /* i : IVAS format */
+ Decoder_State *st, /* i/o: decoder state structure */
+ const FRAME_MODE frameMode, /* i : Decoder frame mode */
+ Word16 *signal_out, /* o : synthesis @internal_Fs, Q0 */
+ Word16 *signal_outFB, /* o : synthesis @output_Fs, Q0 */
+ Word16 pitch_buf[], /* o : floating pitch for each subframe, Q6 */
+ const Word16 sba_dirac_stereo_flag, /* i : signal stereo output for SBA DirAC */
+ STEREO_TD_DEC_DATA_HANDLE hStereoTD, /* i/o: TD stereo decoder handle */
+ const Word16 last_element_mode, /* i : last element mode */
+ const Word16 flag_sec_CNA, /* i : CNA flag for secondary channel */
+ STEREO_CNG_DEC_HANDLE hStereoCng, /* i : Stereo CNG handle */
+ const Word16 nchan_out, /* i : number of output channels */
+ const IVAS_FORMAT ivas_format /* i : IVAS format */
);
void masa_compensate_two_dir_energy_ratio_index_fx(
- const Word16 ratio_index_1, /* i : Input ratio for direction 1 */
- const Word16 ratio_index_2, /* i : Input ratio for direction 2 */
- Word16 *ratio_index_mod1, /* o : Output modified ratio for direction 1 */
- Word16 *ratio_index_mod2, /* o : Output modified ratio for direction 2 */
- const Word16 hodirac_flag /* i : flag to indicate HO-DirAC mode */
+ const Word16 ratio_index_1, /* i : Input ratio for direction 1 */
+ const Word16 ratio_index_2, /* i : Input ratio for direction 2 */
+ Word16 *ratio_index_mod1, /* o : Output modified ratio for direction 1 */
+ Word16 *ratio_index_mod2, /* o : Output modified ratio for direction 2 */
+ const Word16 hodirac_flag /* i : flag to indicate HO-DirAC mode */
);
Word16 stereo_tdm_ener_analysis_fx(
- const Word16 ivas_format, /* i : IVAS format */
- CPE_ENC_HANDLE hCPE, /* i : CPE structure */
- const Word16 input_frame, /* i : Number of samples */
- Word16 *tdm_SM_or_LRTD_Pri, /* o : channel combination scheme flag in TD stereo OR LRTD primary channel */
- Word16 *tdm_ratio_idx_SM /* o : TDM ratio index for SM mode */
+ const Word16 ivas_format, /* i : IVAS format */
+ CPE_ENC_HANDLE hCPE, /* i : CPE structure */
+ const Word16 input_frame, /* i : Number of samples */
+ Word16 *tdm_SM_or_LRTD_Pri, /* o : channel combination scheme flag in TD stereo OR LRTD primary channel */
+ Word16 *tdm_ratio_idx_SM /* o : TDM ratio index for SM mode */
);
/*! r: projected azimuth index */
Word16 ivas_dirac_project_azimuth_index_fx(
- const Word16 az_idx, /* i : azimuth index */
- const Word16 az_alph, /* i : number of azimuth symbols */
- const Word16 az_alph_proj /* i : size of projected alphabet */
+ const Word16 az_idx, /* i : azimuth index */
+ const Word16 az_alph, /* i : number of azimuth symbols */
+ const Word16 az_alph_proj /* i : size of projected alphabet */
);
/*! r: projected elevation index */
Word16 ivas_dirac_project_elevation_index_fx(
- const Word16 el_idx, /* i : elevation index */
- const Word16 el_alph, /* i : number of elevation symbols */
- const Word16 el_alph_proj /* i : size of projected alphabet */
+ const Word16 el_idx, /* i : elevation index */
+ const Word16 el_alph, /* i : number of elevation symbols */
+ const Word16 el_alph_proj /* i : size of projected alphabet */
);
/*! r: projected index in channel mode */
Word16 ivas_chan_project_elevation_index_fx(
- const Word16 el_idx, /* i : elevation index */
- const Word16 el_alph, /* i : number of elevation symbols */
- const Word16 el_alph_proj /* i : size of projected alphabet */
+ const Word16 el_idx, /* i : elevation index */
+ const Word16 el_alph, /* i : number of elevation symbols */
+ const Word16 el_alph_proj /* i : size of projected alphabet */
);
void small_reduction_direction_fx(
- IVAS_QDIRECTION *q_direction, /* i/o: quantized direction structure */
+ IVAS_QDIRECTION *q_direction, /* i/o: quantized direction structure */
UWord16 bits_dir[MASA_MAXIMUM_CODING_SUBBANDS][MAX_PARAM_SPATIAL_SUBFRAMES],
const Word16 raw_flag[MASA_MAXIMUM_CODING_SUBBANDS],
- Word16 *diff );
+ Word16 *diff
+);
void sort_desc_ind_32_fx(
- Word32 *s, /* i/o: vector to be sorted Qx*/
- const Word16 len, /* i : vector length */
- Word16 *ind /* o : array of indices */
+ Word32 *s, /* i/o: vector to be sorted Qx*/
+ const Word16 len, /* i : vector length */
+ Word16 *ind /* o : array of indices */
);
ivas_error only_reduce_bits_direction_fx(
Word16 *reduce_bits_out,
- IVAS_QDIRECTION *q_direction, /* i/o: quantized direction structure */
+ IVAS_QDIRECTION *q_direction, /* i/o: quantized direction structure */
Word16 reduce_bits,
const Word16 coding_subbands,
const Word16 no_subframes,
@@ -2180,89 +2210,90 @@ ivas_error only_reduce_bits_direction_fx(
);
void ivas_qmetadata_azimuth_elevation_to_direction_vector_fx(
- const Word32 az, /* i : azimuth Q22 */
- const Word32 el, /* i : elevation Q22 */
- Word32 *dv /* o : direction vector Q30 */
+ const Word32 az, /* i : azimuth Q22 */
+ const Word32 el, /* i : elevation Q22 */
+ Word32 *dv /* o : direction vector Q30 */
);
void ivas_qmetadata_direction_vector_to_azimuth_elevation_fx(
- const Word32 *dv, /* i : direction vector */
+ const Word32 *dv, /* i : direction vector */
const Word16 div_q,
- Word32 *az, /* o : azimuth */
- Word32 *el /* o : elevation */
+ Word32 *az, /* o : azimuth */
+ Word32 *el /* o : elevation */
);
ivas_error ivas_qmetadata_open_fx(
- IVAS_QMETADATA_HANDLE *hQMetaData /* i/o: q_metadata handle */
+ IVAS_QMETADATA_HANDLE *hQMetaData /* i/o: q_metadata handle */
);
ivas_error ivas_qmetadata_allocate_memory_fx(
- IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
- const Word16 nbands, /* i : new number of frequency bands */
- const Word16 ndirs, /* i : new number of directions */
- const Word16 coherence_flag /* i : new coherence coding status */
+ IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
+ const Word16 nbands, /* i : new number of frequency bands */
+ const Word16 ndirs, /* i : new number of directions */
+ const Word16 coherence_flag /* i : new coherence coding status */
);
void ivas_qmetadata_close_fx(
- IVAS_QMETADATA_HANDLE *hQMetaData /* i/o: q_metadata handle */
+ IVAS_QMETADATA_HANDLE *hQMetaData /* i/o: q_metadata handle */
);
ivas_error ivas_spar_dec_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder struct */
- Word16 *nb_bits_read /* o : number of MD bits read */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder struct */
+ Word16 *nb_bits_read /* o : number of MD bits read */
);
void ivas_spar_md_dec_process_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- Decoder_State *st0, /* i/o: decoder state structure - for bitstream handling */
- const Word16 num_bands_out, /* i : number of output bands */
- const Word16 sba_order /* i : Ambisonic (SBA) order */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ Decoder_State *st0, /* i/o: decoder state structure - for bitstream handling */
+ const Word16 num_bands_out, /* i : number of output bands */
+ const Word16 sba_order /* i : Ambisonic (SBA) order */
);
ivas_error TDREND_Update_object_positions_fx(
- BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD Renderer handle */
- const Word16 num_src, /* i : number of sources to render */
- const IVAS_FORMAT in_format, /* i : Format of input sources */
- const ISM_METADATA_HANDLE *hIsmMetaData /* i : Input metadata for ISM objects */
+ BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD Renderer handle */
+ const Word16 num_src, /* i : number of sources to render */
+ const IVAS_FORMAT in_format, /* i : Format of input sources */
+ const ISM_METADATA_HANDLE *hIsmMetaData /* i : Input metadata for ISM objects */
);
ivas_error TDREND_MIX_LIST_SetOrient_fx(
- BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
- const Word32 *FrontVec_p_fx, /* i : Listener's orientation front vector */
- const Word32 *UpVec_p_fx, /* i : Listener's orientation up vector */
- const Word16 orient_q );
+ BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
+ const Word32 *FrontVec_p_fx, /* i : Listener's orientation front vector */
+ const Word32 *UpVec_p_fx, /* i : Listener's orientation up vector */
+ const Word16 orient_q
+);
void TDREND_MIX_LIST_SetPos_fx(
- BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
- const Word32 *Pos_p /* i : Listener's position */
+ BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
+ const Word32 *Pos_p /* i : Listener's position */
);
ivas_error TDREND_Update_listener_orientation_fx(
- BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD Renderer handle */
- const Word16 headRotEnabled, /* i : Headrotation flag */
- const IVAS_QUATERNION *headPosition_fx, /* i : Listener orientation */
- const IVAS_VECTOR3 *Pos_fx /* i : Listener Position */
+ BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD Renderer handle */
+ const Word16 headRotEnabled, /* i : Headrotation flag */
+ const IVAS_QUATERNION *headPosition_fx, /* i : Listener orientation */
+ const IVAS_VECTOR3 *Pos_fx /* i : Listener Position */
);
void QuatToRotMat_fx(
- const IVAS_QUATERNION quat, /* i : quaternion describing the rotation Qx */
- Word32 Rmat[3][3] /* o : real-space rotation matrix for this rotation 2*Qx-32 */
+ const IVAS_QUATERNION quat, /* i : quaternion describing the rotation Qx */
+ Word32 Rmat[3][3] /* o : real-space rotation matrix for this rotation 2*Qx-32 */
);
Word32 TDREND_SPATIAL_VecNorm_fx(
- const Word32 *Vec_p, /* i : Vector for norm calculation */
- const Word16 in_exp, /* i : Input exp */
- Word16 *out_exp /* o : Output exp */
+ const Word32 *Vec_p, /* i : Vector for norm calculation */
+ const Word16 in_exp, /* i : Input exp */
+ Word16 *out_exp /* o : Output exp */
);
void TDREND_SPATIAL_VecMapToNewCoordSystem_fx(
- const Word32 *Vec_p, /* i : Input vector */
- const Word32 *TranslVec_p, /* i : Translation vector */
- const Word32 *DirVec_p, /* i : Direction vector */
- const Word32 *UpVec_p, /* i : Up vector */
- const Word32 *RightVec_p, /* i : Right vector */
- Word32 *MappedVec_p, /* o : Transformed vector */
- Word32 *LisRelPosAbs /* o : Transformed vector ignoring orientation */
+ const Word32 *Vec_p, /* i : Input vector */
+ const Word32 *TranslVec_p, /* i : Translation vector */
+ const Word32 *DirVec_p, /* i : Direction vector */
+ const Word32 *UpVec_p, /* i : Up vector */
+ const Word32 *RightVec_p, /* i : Right vector */
+ Word32 *MappedVec_p, /* o : Transformed vector */
+ Word32 *LisRelPosAbs /* o : Transformed vector ignoring orientation */
);
void ivas_mct_side_bits_fx(
@@ -2333,7 +2364,7 @@ void ivas_dirac_dec_render_fx(
const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
UWord16 *nSamplesAvailableNext, /* o : number of CLDFB slots still to render */
- Word32 *output_f[] /* o : rendered time signal */
+ Word32 *output_fx[] /* o : rendered time signal */
);
void ivas_dirac_dec_read_BS_fx(
@@ -2346,7 +2377,7 @@ void ivas_dirac_dec_read_BS_fx(
const Word16 last_bit_pos, /* i : last read bitstream position */
const Word16 hodirac_flag, /* i : flag to indicate HO-DirAC mode */
const Word16 nchan_transport, /* i : number of transport channels */
- Word16 *dirac_to_spar_md_bands /* o : DirAC->SPAR MD bands */
+ Word16 *dirac_to_spar_md_bands /* o : DirAC->SPAR MD bands */
);
ivas_error ivas_dirac_dec_config_fx(
@@ -2378,11 +2409,6 @@ void ivas_destroy_dec_fx(
ivas_error ivas_ism_dec_config_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
const ISM_MODE last_ism_mode /* i/o: last ISM mode */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord16 *nSamplesRendered, /* o : number of samples flushed when the renderer granularity changes */
- Word16 *data /* o : output synthesis signal */
-#endif
);
ivas_error ivas_ism_metadata_dec_create_fx(
@@ -2397,11 +2423,6 @@ void ivas_ism_reset_metadata_handle_dec_fx(
ivas_error ivas_sba_dec_reconfigure_fx(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord16 *nSamplesFlushed, /* o : number of samples flushed */
- Word16 *data /* o : output synthesis signal */
-#endif
);
ivas_error ivas_spar_md_dec_matrix_open_fx(
@@ -2438,11 +2459,6 @@ void ivas_omasa_data_close_fx(
ivas_error ivas_mc_dec_config_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
const Word16 idx /* i : LS config. index */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord16 *nSamplesRendered, /* o : samples flushed from last frame (JBM) */
- Word16 *data /* o : output synthesis signal */
-#endif
);
void ivas_lfe_window_init_fx(
@@ -2498,177 +2514,184 @@ void ivas_fb_mixer_cross_fading_fx(
const Word16 cf_offset
);
-// ivas_omasa_dec.c
ivas_error ivas_omasa_dirac_td_binaural_jbm_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord16 nSamplesAsked, /* i : number of samples requested */
- UWord16 *nSamplesRendered, /* o : number of samples rendered */
- UWord16 *nSamplesAvailable, /* o : number of samples still to render */
- const Word16 nchan_transport, /* i : number of transport channels */
- Word32 *output_fx[] /* o : rendered time signal */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord16 nSamplesAsked, /* i : number of samples requested */
+ UWord16 *nSamplesRendered, /* o : number of samples rendered */
+ UWord16 *nSamplesAvailable, /* o : number of samples still to render */
+ const Word16 nchan_transport, /* i : number of transport channels */
+ Word32 *output_fx[] /* o : rendered time signal */
);
Word16 ivas_sba_get_analysis_order_fx(
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word16 sba_order /* i : Ambisonic (SBA) order */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word16 sba_order /* i : Ambisonic (SBA) order */
);
Word16 ivas_sba_get_nchan_metadata_fx(
- const Word16 sba_order, /* i : Ambisonic (SBA) order */
- const Word32 ivas_total_brate /* i : IVAS total bitrate */
+ const Word16 sba_order, /* i : Ambisonic (SBA) order */
+ const Word32 ivas_total_brate /* i : IVAS total bitrate */
);
/*! r: number of bits in SBQ SID frame */
Word16 ivas_sba_spar_sid_bitlen_fx(
- const Word16 nchan_transport /* i : number of transport channels */
+ const Word16 nchan_transport /* i : number of transport channels */
);
void ivas_sba_get_spar_hoa_ch_ind_fx(
- const Word16 num_md_chs, /* i : number of MD channels */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word16 num_md_chs, /* i : number of MD channels */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
Word16 HOA_md_ind[IVAS_SPAR_MAX_CH]
);
void ivas_sba_get_spar_hoa_md_flag_fx(
- const Word16 sba_order, /* i : Ambisonic (SBA) order */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word16 sba_order, /* i : Ambisonic (SBA) order */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
Word16 *spar_hoa_md_flag,
Word16 *spar_hoa_dirac2spar_md_flag
);
void ivas_omasa_dirac_rend_jbm_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord16 nSamplesAsked, /* i : number of samples requested */
- UWord16 *nSamplesRendered, /* o : number of samples rendered */
- UWord16 *nSamplesAvailable, /* o : number of samples still to render */
- const Word16 nchan_transport, /* i : number of transport channels */
- Word32 *output_f[] /* o : rendered time signal */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord16 nSamplesAsked, /* i : number of samples requested */
+ UWord16 *nSamplesRendered, /* o : number of samples rendered */
+ UWord16 *nSamplesAvailable, /* o : number of samples still to render */
+ const Word16 nchan_transport, /* i : number of transport channels */
+ Word32 *output_fx[] /* o : rendered time signal */
);
ivas_error ivas_jbm_dec_render_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const UWord16 nSamplesAsked, /* i : number of samples wanted */
- UWord16 *nSamplesRendered, /* o : number of samples rendered */
- UWord16 *nSamplesAvailableNext, /* o : number of samples still available in the rendering pipeline */
- Word16 *data /* o : output synthesis signal */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const UWord16 nSamplesAsked, /* i : number of samples wanted */
+ UWord16 *nSamplesRendered, /* o : number of samples rendered */
+ UWord16 *nSamplesAvailableNext, /* o : number of samples still available in the rendering pipeline */
+ Word16 *data /* o : output synthesis signal */
);
void ivas_sba_zero_vert_comp_fx(
- Word32 *sba_data[], /* i : SBA signals */
- const Word16 sba_order, /* i : SBA order */
- const Word16 sba_planar, /* i : SBA planar flag */
- const Word16 input_frame /* i : frame length */
+ Word32 *sba_data[], /* i : SBA signals */
+ const Word16 sba_order, /* i : SBA order */
+ const Word16 sba_planar, /* i : SBA planar flag */
+ const Word16 input_frame /* i : frame length */
);
/*! r: MC format mode (MCT, McMASA, ParamMC) */
MC_MODE ivas_mc_mode_select_fx(
- const MC_LS_SETUP mc_ls_setup, /* i : MC loudspeaker setup */
- const Word32 total_brate /* i : IVAS total bitrate */
+ const MC_LS_SETUP mc_ls_setup, /* i : MC loudspeaker setup */
+ const Word32 total_brate /* i : IVAS total bitrate */
);
/*! r: number of loudspeaker channels */
Word16 ivas_mc_ls_setup_get_num_channels_fx(
- const MC_LS_SETUP mc_ls_setup /* i : loudspeaker setup (CICP) */
+ const MC_LS_SETUP mc_ls_setup /* i : loudspeaker setup (CICP) */
);
/*! r: multi channel loudspeaker setup */
MC_LS_SETUP ivas_mc_map_output_config_to_mc_ls_setup_fx(
- const AUDIO_CONFIG output_config /* i : output audio configuration */
+ const AUDIO_CONFIG output_config /* i : output audio configuration */
);
/*! r: output configuration */
AUDIO_CONFIG ivas_mc_map_ls_setup_to_output_config_fx(
- const MC_LS_SETUP mc_ls_setup /* i : multi channel loudspeaker setup*/
+ const MC_LS_SETUP mc_ls_setup /* i : multi channel loudspeaker setup */
);
void ivas_wrap_arround_fx(
Word16 *pArr,
const Word16 min_val,
const Word16 max_val,
- const Word16 length );
+ const Word16 length
+);
void ivas_get_cum_freq_model_fx(
const Word16 *pFreq_model,
const Word16 length,
- Word16 *pCum_freq_model );
+ Word16 *pCum_freq_model
+);
Word16 ivas_map_num_pred_r_to_idx_fx(
const Word16 num_quant_points_pred_r,
- const Word16 active_w_flag );
+ const Word16 active_w_flag
+);
Word16 ivas_map_num_drct_r_to_idx_fx(
- const Word16 num_quant_points_drct_r );
+ const Word16 num_quant_points_drct_r
+);
Word16 ivas_map_num_decd_r_to_idx_fx(
- const Word16 num_quant_points_decd_r );
+ const Word16 num_quant_points_decd_r
+);
void ivas_spar_arith_coeffs_com_init_fx(
ivas_arith_coeffs_t *pArith_coeffs,
ivas_spar_md_com_cfg *pSpar_cfg,
const Word16 table_idx,
- const Word16 enc_dec );
+ const Word16 enc_dec
+);
void ivas_spar_huff_coeffs_com_init_fx(
ivas_huff_coeffs_t *pHuff_coeffs,
ivas_spar_md_com_cfg *pSpar_cfg,
const Word16 table_idx,
- const Word16 enc_dec );
+ const Word16 enc_dec
+);
ISM_MODE ivas_omasa_ism_mode_select_fx(
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word16 nchan_ism /* i : number of input ISM's */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word16 nchan_ism /* i : number of input ISM's */
);
void ivas_set_omasa_TC_fx(
- const ISM_MODE ism_mode, /* i : ISM mode */
- const Word16 nchan_ism, /* i : number of input ISMs */
- Word16 *nSCE, /* o : number of SCEs */
- Word16 *nCPE /* o : number of CPEs */
+ const ISM_MODE ism_mode, /* i : ISM mode */
+ const Word16 nchan_ism, /* i : number of input ISMs */
+ Word16 *nSCE, /* o : number of SCEs */
+ Word16 *nCPE /* o : number of CPEs */
);
Word32 ivas_interformat_brate_fx(
- const ISM_MODE ism_mode, /* i : ISM mode */
- const Word16 nchan_ism, /* i : number of ISM channels */
- const Word32 element_brate, /* i : element bitrate */
- const Word16 ism_imp, /* i : ISM importance flag */
- const Word16 limit_flag /* i : flag to limit the bitrate increase */
+ const ISM_MODE ism_mode, /* i : ISM mode */
+ const Word16 nchan_ism, /* i : number of ISM channels */
+ const Word32 element_brate, /* i : element bitrate */
+ const Word16 ism_imp, /* i : ISM importance flag */
+ const Word16 limit_flag /* i : flag to limit the bitrate increase */
);
Word16 check_bounds_s_fx(
- const Word16 value, /* i : Input value */
- const Word16 low, /* i : Low limit */
- const Word16 high /* i : High limit */
+ const Word16 value, /* i : Input value */
+ const Word16 low, /* i : Low limit */
+ const Word16 high /* i : High limit */
);
void ivas_combined_format_brate_sanity_fx(
- const Word32 element_brate, /* i : element bitrate */
- const Word16 core, /* i : core */
- const Word32 total_brate, /* i : total bitrate */
- Word32 *core_brate, /* i/o: core bitrate */
- Word16 *inactive_coder_type_flag, /* o : inactive coder_type flag */
- Word16 *diff_nBits /* o : number of differential bits */
+ const Word32 element_brate, /* i : element bitrate */
+ const Word16 core, /* i : core */
+ const Word32 total_brate, /* i : total bitrate */
+ Word32 *core_brate, /* i/o: core bitrate */
+ Word16 *inactive_coder_type_flag, /* o : inactive coder_type flag */
+ Word16 *diff_nBits /* o : number of differential bits */
);
Word16 bits_index_ism_ratio_fx(
- const Word16 nchan_ism /* i : number of objects */
+ const Word16 nchan_ism /* i : number of objects */
);
Word16 calculate_brate_limit_flag_fx(
- const Word16 ism_imp[], /* i : ISM importance flags */
- const Word16 nchan_ism /* i : number of objects */
+ const Word16 ism_imp[], /* i : ISM importance flags */
+ const Word16 nchan_ism /* i : number of objects */
);
+
Word16 ism_quant_meta_fx(
- const Word32 val, /* i : scalar value to quantize Q22 */
- Word32 *valQ, /* o : quantized value Q22 */
- const Word32 borders_fx[], /* i : level borders Q22 */
- const Word32 q_step_fx, /* i : quantization step Q22 */
- const Word32 q_step_border_fx, /* i : quantization step at the border Q22 */
- const Word16 cbsize /* i : codebook size */
+ const Word32 val, /* i : scalar value to quantize Q22 */
+ Word32 *valQ, /* o : quantized value Q22 */
+ const Word32 borders_fx[], /* i : level borders Q22 */
+ const Word32 q_step_fx, /* i : quantization step Q22 */
+ const Word32 q_step_border_fx, /* i : quantization step at the border Q22 */
+ const Word16 cbsize /* i : codebook size */
);
/*! r: number of channels to be analysed */
Word16 getNumChanAnalysis_fx(
- Encoder_Struct *st_ivas /* i : IVAS encoder structure */
+ Encoder_Struct *st_ivas /* i : IVAS encoder structure */
);
@@ -2676,65 +2699,39 @@ Word16 getNumChanAnalysis_fx(
* Limiter prototypes
*----------------------------------------------------------------------------------*/
-void ivas_limiter_close(
- IVAS_LIMITER_HANDLE *phLimiter /* i/o: pointer to limiter handle, can be NULL */
-);
-
void ivas_limiter_dec_fx(
- IVAS_LIMITER_HANDLE hLimiter, /* i/o: limiter struct handle */
- Word32 *output[MAX_OUTPUT_CHANNELS], /* i/o: input/output buffer */
- const Word16 num_channels, /* i : number of channels to be processed */
- const Word16 output_frame, /* i : number of samples per channel in the buffer */
- const Word16 BER_detect, /* i : BER detect flag */
- Word16 q_factor /* i : Q factor of the output samples */
+ IVAS_LIMITER_HANDLE hLimiter, /* i/o: limiter struct handle */
+ Word32 *output[MAX_OUTPUT_CHANNELS], /* i/o: input/output buffer */
+ const Word16 num_channels, /* i : number of channels to be processed */
+ const Word16 output_frame, /* i : number of samples per channel in the buffer */
+ const Word16 BER_detect, /* i : BER detect flag */
+ Word16 q_factor /* i : Q factor of the output samples */
);
void limiter_process_fx(
- IVAS_LIMITER_HANDLE hLimiter, /* i/o: limiter struct handle */
- const Word16 output_frame, /* i : number of samples to be processed per channel in the I/O buffer */
- const Word32 threshold, /* i : signal amplitude above which limiting starts to be applied */
- const Word16 BER_detect, /* i : BER detect flag */
- Word16 *strong_saturation_cnt, /* i/o: counter of strong saturations (can be NULL) */
- Word16 q_factor /* i : Q factor of output samples */
+ IVAS_LIMITER_HANDLE hLimiter, /* i/o: limiter struct handle */
+ const Word16 output_frame, /* i : number of samples to be processed per channel in the I/O buffer */
+ const Word32 threshold, /* i : signal amplitude above which limiting starts to be applied */
+ const Word16 BER_detect, /* i : BER detect flag */
+ Word16 *strong_saturation_cnt, /* i/o: counter of strong saturations (can be NULL) */
+ Word16 q_factor /* i : Q factor of output samples */
);
ivas_error ivas_limiter_open_fx(
- IVAS_LIMITER_HANDLE *hLimiter_out, /* o : limiter struct handle */
- const Word16 max_num_channels, /* i : maximum number of I/O channels to be processed */
- const Word32 sampling_rate /* i : sampling rate for processing */
+ IVAS_LIMITER_HANDLE *hLimiter_out, /* o : limiter struct handle */
+ const Word16 max_num_channels, /* i : maximum number of I/O channels to be processed */
+ const Word32 sampling_rate /* i : sampling rate for processing */
);
void ivas_limiter_close_fx(
- IVAS_LIMITER_HANDLE *phLimiter /* i/o: pointer to limiter handle, can be NULL */
+ IVAS_LIMITER_HANDLE *phLimiter /* i/o: pointer to limiter handle, can be NULL */
);
void copy_masa_descriptive_meta_fx(
- MASA_DECRIPTIVE_META *outMeta, /* o : metadata to be written */
- MASA_DECRIPTIVE_META *inMeta /* i : input metadata */
-);
-
-void efap_free_data_fx(
- EFAP_HANDLE *hEFAPdata /* i/o: EFAP handle to be freed */
-);
-
-void tdm_SCh_LSF_intra_pred_fx(
- const Word32 element_brate, /* i : element bitrate */
- const Word16 *tdm_lsfQ_PCh_fx, /* i : primary channel LSFs */
- Word16 *pred_lsf_SCh_fx /* o : predicted secondary channel LSFs */
-);
-
-ivas_error ivas_create_lfe_lpf_enc_fx(
- ivas_filters_process_state_t **hLfeLpf, /* o : LFE LPF handle */
- const Word32 input_Fs /* i : input sampling rate */
+ MASA_DECRIPTIVE_META *outMeta, /* o : metadata to be written */
+ MASA_DECRIPTIVE_META *inMeta /* i : input metadata */
);
-void ivas_lfe_lpf_enc_apply_fx(
- ivas_filters_process_state_t *hLfeLpf, /* i/o: LFE LPF handle */
- Word32 data_lfe_ch[], /* i/o: LFE signal */
- const Word16 input_frame /* i : input frame length per channel */
-);
-
-// ivas_arith.c
void ivas_ari_done_encoding_14bits_fx(
BSTR_ENC_HANDLE hBstr,
Tastat *s
@@ -2748,152 +2745,150 @@ void ivas_ari_encode_14bits_ext_fx(
);
void ms_inv_mask_processing_fx(
- STEREO_MDCT_ENC_DATA_HANDLE hStereoMdct, /* i/o: MDCT encoder structure */
- Encoder_State **sts, /* i/o: Encoder state structure */
- Word16 ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask */
- const Word16 iSubframe, /* i : subframe number */
- const Word32 x_0_fx[], /* i : spectrum 1 */
- const Word32 x_1_fx[], /* i : spectrum 2 */
- Word32 x_inv_0_fx[], /* o : inverse spectrum 1 */
- Word32 x_inv_1_fx[], /* o : inverse spectrum 2 */
- Word16 maxSfb /* i : number of stereo frequency bands */
+ STEREO_MDCT_ENC_DATA_HANDLE hStereoMdct, /* i/o: MDCT encoder structure */
+ Encoder_State **sts, /* i/o: Encoder state structure */
+ Word16 ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask */
+ const Word16 iSubframe, /* i : subframe number */
+ const Word32 x_0_fx[], /* i : spectrum 1 */
+ const Word32 x_1_fx[], /* i : spectrum 2 */
+ Word32 x_inv_0_fx[], /* o : inverse spectrum 1 */
+ Word32 x_inv_1_fx[], /* o : inverse spectrum 2 */
+ Word16 maxSfb /* i : number of stereo frequency bands */
);
void ms_processing_fx(
- STEREO_MDCT_ENC_DATA_HANDLE hStereoMdct, /* i/o: Stereo MDCT encoder structure */
- Encoder_State **sts, /* i/o: Encoder state structure */
- Word16 ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask */
- const Word16 iSubframe, /* i : subframe number */
- Word32 x_0_fx[], /* i/o: spectrum 1 */
- Word32 x_1_fx[], /* i/o: spectrum 1 */
- Word16 maxSfb /* i : number of stereo frequency bands*/
+ STEREO_MDCT_ENC_DATA_HANDLE hStereoMdct, /* i/o: Stereo MDCT encoder structure */
+ Encoder_State **sts, /* i/o: Encoder state structure */
+ Word16 ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask */
+ const Word16 iSubframe, /* i : subframe number */
+ Word32 x_0_fx[], /* i/o: spectrum 1 */
+ Word32 x_1_fx[], /* i/o: spectrum 1 */
+ Word16 maxSfb /* i : number of stereo frequency bands */
);
void convertToMS_fx(
- const Word16 L_frame, /* i : frame length */
- Word32 x0[], /* i/o: mid/left channel coefficients */
- Word32 x1[], /* i/o: side/right channel coefficients */
- const Word32 norm_fac /* i : normalization factor */
+ const Word16 L_frame, /* i : frame length */
+ Word32 x0[], /* i/o: mid/left channel coefficients */
+ Word32 x1[], /* i/o: side/right channel coefficients */
+ const Word32 norm_fac /* i : normalization factor */
);
void FindSplitRatio_fx(
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
- Encoder_State **sts /* i/o: Encoder state structure */
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
+ Encoder_State **sts /* i/o: Encoder state structure */
);
void IGFEncStereoEncoder_fx(
- STEREO_MDCT_BAND_PARAMETERS *sfbParam, /* i/o: sfb parameters for the right channel */
- const IGF_ENC_INSTANCE_HANDLE hIGFEnc, /* i : IGF handle */
- const Word32 *mdctSpectrumL_fx, /* i : left spectrum */
- const Word32 *mdctSpectrumR_fx, /* i : right spectrum */
+ STEREO_MDCT_BAND_PARAMETERS *sfbParam, /* i/o: sfb parameters for the right channel */
+ const IGF_ENC_INSTANCE_HANDLE hIGFEnc, /* i : IGF handle */
+ const Word32 *mdctSpectrumL_fx, /* i : left spectrum */
+ const Word32 *mdctSpectrumR_fx, /* i : right spectrum */
Word16 q_mdctSpectrum,
- Word16 *msMask, /* i/o: MS mask */
- Word16 *igfStereoMode, /* o : IGF stereo mode */
- const Word16 mdct_stereo_mode, /* i : MDCT stereo mode */
- const Word16 isTCX20, /* i : flag for indicating TCX20 */
- const Word16 isTransition /* i : flag for transtition */
+ Word16 *msMask, /* i/o: MS mask */
+ Word16 *igfStereoMode, /* o : IGF stereo mode */
+ const Word16 mdct_stereo_mode, /* i : MDCT stereo mode */
+ const Word16 isTCX20, /* i : flag for indicating TCX20 */
+ const Word16 isTransition /* i : flag for transtition */
);
void stereo_coder_tcx_fx(
- STEREO_MDCT_ENC_DATA_HANDLE hStereoMdct, /* i/o: Stereo MDCT encoder structure */
- Encoder_State **sts, /* i/o: encoder state structure */
- Word16 ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask */
- Word32 *mdst_spectrum_fx[CPE_CHANNELS][NB_DIV], /* i/o: MDST spectrum */
- Word32 *inv_spectrum_fx[CPE_CHANNELS][NB_DIV], /* i/o: inverse spectrum */
- Word32 *inv_mdst_spectrum_fx[CPE_CHANNELS][NB_DIV], /* i/o: inverse MDST spectrum */
- const Word16 mct_on, /* i : flag mct block (1) or stereo (0) */
+ STEREO_MDCT_ENC_DATA_HANDLE hStereoMdct, /* i/o: Stereo MDCT encoder structure */
+ Encoder_State **sts, /* i/o: encoder state structure */
+ Word16 ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask */
+ Word32 *mdst_spectrum_fx[CPE_CHANNELS][NB_DIV], /* i/o: MDST spectrum */
+ Word32 *inv_spectrum_fx[CPE_CHANNELS][NB_DIV], /* i/o: inverse spectrum */
+ Word32 *inv_mdst_spectrum_fx[CPE_CHANNELS][NB_DIV], /* i/o: inverse MDST spectrum */
+ const Word16 mct_on, /* i : flag mct block (1) or stereo (0) */
Word16 exp_spec,
- Word16 exp_mdst_spec );
+ Word16 exp_mdst_spec
+);
-// bw_detect_fx.c
Word16 set_bw_mct_fx(
- CPE_ENC_HANDLE hCPE[MCT_MAX_BLOCKS], /* i/o: CPE encoder structures */
- const Word16 nCPE /* i : number of CPEs */
+ CPE_ENC_HANDLE hCPE[MCT_MAX_BLOCKS], /* i/o: CPE encoder structures */
+ const Word16 nCPE /* i : number of CPEs */
);
-
-// ivas_mct_enc_mct.c
void write_mct_bitstream_fx(
- Encoder_State **sts, /* i/o: encoder state structure */
- MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */
- const Word16 nchan /* i : number of channels */
+ Encoder_State **sts, /* i/o: encoder state structure */
+ MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */
+ const Word16 nchan /* i : number of channels */
);
void getChannelEnergies_fx(
- Encoder_State **sts, /* i/o: Encoder state structure */
- Word32 nrg[MCT_MAX_CHANNELS], /* o : buffer with energies for each channel */
- Word16 nrg_e[MCT_MAX_CHANNELS], /* o : exponents of energies for each channel */
- const Word16 nchan /* i : number of channels */
+ Encoder_State **sts, /* i/o: Encoder state structure */
+ Word32 nrg[MCT_MAX_CHANNELS], /* o : buffer with energies for each channel */
+ Word16 nrg_e[MCT_MAX_CHANNELS], /* o : exponents of energies for each channel */
+ const Word16 nchan /* i : number of channels */
);
void apply_MCT_enc_fx(
- MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */
- Encoder_State **sts, /* i/o: encoder state structure */
- Word32 *mdst_spectrum[MCT_MAX_CHANNELS][NB_DIV], /* i/o: MDST spectrum */
- Word32 *inv_spectrum[MCT_MAX_CHANNELS][NB_DIV], /* i/o: inverse spectrum */
- Word32 *inv_mdst_spectrum[MCT_MAX_CHANNELS][NB_DIV], /* i/o: inverse MDST spectrum */
- const Word16 nchan /* i : number of channels */
+ MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */
+ Encoder_State **sts, /* i/o: encoder state structure */
+ Word32 *mdst_spectrum[MCT_MAX_CHANNELS][NB_DIV], /* i/o: MDST spectrum */
+ Word32 *inv_spectrum[MCT_MAX_CHANNELS][NB_DIV], /* i/o: inverse spectrum */
+ Word32 *inv_mdst_spectrum[MCT_MAX_CHANNELS][NB_DIV], /* i/o: inverse MDST spectrum */
+ const Word16 nchan /* i : number of channels */
);
void ivas_spar_config_fx(
- Word32 ivas_total_brate, /* i : codec total bitrate */
- const Word16 sba_order, /* i : Ambisonic (SBA) order */
- Word16 *nchan_transport, /* o : number of transport channels */
- Word16 *nSCE, /* o : number of SCEs */
- Word16 *nCPE, /* o : number of CPEs */
- Word32 *core_nominal_brate, /* o : core-coding nominal bitrate */
- const Word16 sid_format /* i : IVAS format indicator from SID frame */
+ Word32 ivas_total_brate, /* i : codec total bitrate */
+ const Word16 sba_order, /* i : Ambisonic (SBA) order */
+ Word16 *nchan_transport, /* o : number of transport channels */
+ Word16 *nSCE, /* o : number of SCEs */
+ Word16 *nCPE, /* o : number of CPEs */
+ Word32 *core_nominal_brate, /* o : core-coding nominal bitrate */
+ const Word16 sid_format /* i : IVAS format indicator from SID frame */
);
Word16 ivas_get_bw_idx_from_sample_rate_fx(
- const Word32 sampling_rate /* i : sampling rate */
+ const Word32 sampling_rate /* i : sampling rate */
);
void ivas_spar_bitrate_dist_fx(
- Word32 core_brates_act[], /* o : bitrates per core-coder */
- const Word16 nAvailBits, /* i : number of available bits */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word16 sba_order, /* i : Ambisonic (SBA) order */
- const Word16 bwidth /* i : audio bandwidth */
+ Word32 core_brates_act[], /* o : bitrates per core-coder */
+ const Word16 nAvailBits, /* i : number of available bits */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word16 sba_order, /* i : Ambisonic (SBA) order */
+ const Word16 bwidth /* i : audio bandwidth */
);
ivas_error ivas_corecoder_enc_reconfig_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
- const Word16 nSCE_old, /* i : number of SCEs in previous frame */
- const Word16 nCPE_old, /* i : number of CPEs in previous frame */
- const Word16 nchan_transport_old, /* i : number of TCs in previous frame */
- const Word32 brate_SCE, /* i : bitrate to be set for the SCEs */
- const Word32 brate_CPE, /* i : bitrate to be set for the CPEs */
- const MC_MODE last_mc_mode /* i : switching between MC modes: last mode */
+ Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
+ const Word16 nSCE_old, /* i : number of SCEs in previous frame */
+ const Word16 nCPE_old, /* i : number of CPEs in previous frame */
+ const Word16 nchan_transport_old, /* i : number of TCs in previous frame */
+ const Word32 brate_SCE, /* i : bitrate to be set for the SCEs */
+ const Word32 brate_CPE, /* i : bitrate to be set for the CPEs */
+ const MC_MODE last_mc_mode /* i : switching between MC modes: last mode */
);
void ivas_sba_zero_vert_comp_fx(
- Word32 *sba_data[], /* i : SBA signals */
- const Word16 sba_order, /* i : SBA order */
- const Word16 sba_planar, /* i : SBA planar flag */
- const Word16 input_frame /* i : frame length */
+ Word32 *sba_data[], /* i : SBA signals */
+ const Word16 sba_order, /* i : SBA order */
+ const Word16 sba_planar, /* i : SBA planar flag */
+ const Word16 input_frame /* i : frame length */
);
void tdm_configure_dec_fx(
- const Word16 ivas_format, /* i : IVAS format */
- const Word16 ism_mode, /* i : ISM mode in combined format */
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word16 *tdm_ratio_idx, /* o : ratio index */
- const Word16 nb_bits_metadata /* i : number of metadata bits */
+ const Word16 ivas_format, /* i : IVAS format */
+ const Word16 ism_mode, /* i : ISM mode in combined format */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word16 *tdm_ratio_idx, /* o : ratio index */
+ const Word16 nb_bits_metadata /* i : number of metadata bits */
);
void ivas_param_mc_metadata_open_fx(
- const MC_LS_SETUP mc_ls_setup, /* i : MC ls setup */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- HANDLE_IVAS_PARAM_MC_METADATA hMetadataPMC /* o : handle for the Parametric MC parameter coding state */
+ const MC_LS_SETUP mc_ls_setup, /* i : MC ls setup */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ HANDLE_IVAS_PARAM_MC_METADATA hMetadataPMC /* o : handle for the Parametric MC parameter coding state */
);
Word16 mdct_classifier_ivas_fx(
- Encoder_State *st, /* i/o: Encoder state variable */
- const Word16 *fft_buff, /* i : FFT spectrum from fft_rel */
- const Word32 enerBuffer[], /* i : energy buffer */
- Word16 enerBuffer_exp, /* i: enenrgy buffer exponent */
- const Word32 brate /* i : current brate, IVAS: nominal bitrate, EVS: st->total_brate */
+ Encoder_State *st, /* i/o: Encoder state variable */
+ const Word16 *fft_buff, /* i : FFT spectrum from fft_rel */
+ const Word32 enerBuffer[], /* i : energy buffer */
+ Word16 enerBuffer_exp, /* i: enenrgy buffer exponent */
+ const Word32 brate /* i : current brate, IVAS: nominal bitrate, EVS: st->total_brate */
);
@@ -2902,105 +2897,106 @@ Word16 mdct_classifier_ivas_fx(
*----------------------------------------------------------------------------------*/
void rc_uni_enc_init_fx(
- RangeUniEncState *rc_st_enc /* i/o: RC state handle */
+ RangeUniEncState *rc_st_enc /* i/o: RC state handle */
);
void rc_uni_enc_encode_fast_fx(
- RangeUniEncState *rc_st_enc, /* i/o: RC state handle */
- const UWord16 cum_freq, /* i : Cumulative frequency up to symbol */
- const UWord16 sym_freq, /* i : Symbol frequency */
- const UWord16 tot_shift /* i : Total frequency as a power of 2 */
+ RangeUniEncState *rc_st_enc, /* i/o: RC state handle */
+ const UWord16 cum_freq, /* i : Cumulative frequency up to symbol */
+ const UWord16 sym_freq, /* i : Symbol frequency */
+ const UWord16 tot_shift /* i : Total frequency as a power of 2 */
);
void rc_uni_enc_encode_symbol_fastS_fx(
- RangeUniEncState *rc_st_enc, /* i/o: Encoder state */
- const UWord16 symbol, /* i : Symbol to encode */
- const UWord16 cum_freq[], /* i : Cumulative frequency up to symbol */
- const UWord16 sym_freq[], /* i : Symbol frequency */
- const UWord16 tot_shift /* i : Total frequency as a power of 2 */
+ RangeUniEncState *rc_st_enc, /* i/o: Encoder state */
+ const UWord16 symbol, /* i : Symbol to encode */
+ const UWord16 cum_freq[], /* i : Cumulative frequency up to symbol */
+ const UWord16 sym_freq[], /* i : Symbol frequency */
+ const UWord16 tot_shift /* i : Total frequency as a power of 2 */
);
/*! r: Total number of bits produced */
Word16 rc_uni_enc_finish_fx(
- RangeUniEncState *rc_st_enc /* i/o: RC state handle */
+ RangeUniEncState *rc_st_enc /* i/o: RC state handle */
);
/*! r: Total number of bits produced */
Word16 rc_uni_enc_virtual_finish_fx(
- RangeUniEncState *rc_st_enc /* i : RC state handle */
+ RangeUniEncState *rc_st_enc /* i : RC state handle */
);
void rc_uni_enc_encode_bits_fx(
- RangeUniEncState *rc_st_enc, /* i/o: RC state handle */
- const UWord16 value, /* i : Value to encode */
- const Word16 bits /* i : Number of bits */
+ RangeUniEncState *rc_st_enc, /* i/o: RC state handle */
+ const UWord16 value, /* i : Value to encode */
+ const Word16 bits /* i : Number of bits */
);
void stereo_dft_enc_process_fx(
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
- const Word16 vad_flag_dtx[], /* i : VAD dtx flags */
- const Word16 vad_hover_flag[], /* i : VAD hangover flags */
- const Word16 input_frame /* i : input frame length */
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
+ const Word16 vad_flag_dtx[], /* i : VAD dtx flags */
+ const Word16 vad_hover_flag[], /* i : VAD hangover flags */
+ const Word16 input_frame /* i : input frame length */
);
void stereo_dft_cng_side_gain_fx(
- STEREO_DFT_ENC_DATA_HANDLE hStereoDft, /* i/o: DFT stereo handle */
- STEREO_CNG_ENC_HANDLE hStereoCng, /* i/o: Stereo CNG data structure */
- const Word32 core_brate, /* i : core bitrate */
- const Word32 last_core_brate, /* i : last core bitrate */
- const Word16 bwidth /* i : audio band-width */
+ STEREO_DFT_ENC_DATA_HANDLE hStereoDft, /* i/o: DFT stereo handle */
+ STEREO_CNG_ENC_HANDLE hStereoCng, /* i/o: Stereo CNG data structure */
+ const Word32 core_brate, /* i : core bitrate */
+ const Word32 last_core_brate, /* i : last core bitrate */
+ const Word16 bwidth /* i : audio band-width */
);
Word16 quantize_sns_fx(
- Word32 sns_in_fx[CPE_CHANNELS][NB_DIV][M], /* sns_e */
- Word32 snsQ_out_fx[CPE_CHANNELS][NB_DIV][M], /* sns_e */
+ Word32 sns_in_fx[CPE_CHANNELS][NB_DIV][M], /* sns_e */
+ Word32 snsQ_out_fx[CPE_CHANNELS][NB_DIV][M], /* sns_e */
Word16 sns_e,
Encoder_State **sts,
- Word16 *indices, /* Q0 */
- Word16 *zero_side_flag, /* Q0 */
- Word16 *sns_stereo_mode ); /* Q0 */
+ Word16 *indices, /* Q0 */
+ Word16 *zero_side_flag, /* Q0 */
+ Word16 *sns_stereo_mode /* Q0 */
+);
void stereo_enc_cng_init_fx(
- STEREO_CNG_ENC_HANDLE hStereoCng /* i/o: stereo CNG encoder structure */
+ STEREO_CNG_ENC_HANDLE hStereoCng /* i/o: stereo CNG encoder structure */
);
void stereo_cng_upd_counters_fx(
- STEREO_CNG_ENC_HANDLE hStereoCng, /* i/o: Stereo CNG data structure */
- const Word32 element_mode, /* i : element mode */
- const Word16 nbands, /* i : Number of bands in active */
- const Word32 sidSideGain[], /* i : SID side gains */
- const Word16 burst_ho_count, /* i : Hang-over count */
- Word16 *coh_fade_counter /* i : Coherence fade counter */
+ STEREO_CNG_ENC_HANDLE hStereoCng, /* i/o: Stereo CNG data structure */
+ const Word32 element_mode, /* i : element mode */
+ const Word16 nbands, /* i : Number of bands in active */
+ const Word32 sidSideGain[], /* i : SID side gains */
+ const Word16 burst_ho_count, /* i : Hang-over count */
+ Word16 *coh_fade_counter /* i : Coherence fade counter */
);
-
void stereo_dft_enc_sid_calc_coh_fx(
- STEREO_DFT_ENC_DATA_HANDLE hStereoDft, /* i/o: DFT stereo handle */
- Word32 prev_cohBand[2 * ( STEREO_DFT_BAND_MAX / 2 )], /* i/o: Previous coherence Q31 */
- Word16 *td_active, /* i/o: TD stereo mode indicator */
- Word16 *first_SID, /* i/o: First SID indicator */
- Word32 *cohBand /* i/o: Coherence per band Q31 */
+ STEREO_DFT_ENC_DATA_HANDLE hStereoDft, /* i/o: DFT stereo handle */
+ Word32 prev_cohBand[2 * ( STEREO_DFT_BAND_MAX / 2 )], /* i/o: Previous coherence Q31 */
+ Word16 *td_active, /* i/o: TD stereo mode indicator */
+ Word16 *first_SID, /* i/o: First SID indicator */
+ Word32 *cohBand /* i/o: Coherence per band Q31 */
);
void stereo_dft_enc_sid_coh_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: bitstream handle */
- Word32 *mem_cohBand, /* i/o: Coherence memory */
- const Word16 nbands, /* i : number of DFT stereo bands */
- Word16 *nb_bits, /* i/o: number of bits written */
- Word32 *cohBand /* i/o: Coherence per band */
+ BSTR_ENC_HANDLE hBstr, /* i/o: bitstream handle */
+ Word32 *mem_cohBand, /* i/o: Coherence memory */
+ const Word16 nbands, /* i : number of DFT stereo bands */
+ Word16 *nb_bits, /* i/o: number of bits written */
+ Word32 *cohBand /* i/o: Coherence per band */
);
void stereo_dft_enc_write_BS_fx(
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
- Word16 *nb_bits /* o : number of bits written */
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
+ Word16 *nb_bits /* o : number of bits written */
);
void stereo_dft_enc_res_fx(
- STEREO_DFT_ENC_DATA_HANDLE hStereoDft, /* i/o: encoder stereo handle */
- const Word32 *input_8k, /* i : input buffer sampled at 8kHz Q15 */
- BSTR_ENC_HANDLE hBstr, /* i/o: bitstream handle */
- Word16 *nb_bits, /* o : number of bits written */
- const Word16 max_bits );
+ STEREO_DFT_ENC_DATA_HANDLE hStereoDft, /* i/o: encoder stereo handle */
+ const Word32 *input_8k, /* i : input buffer sampled at 8kHz Q15 */
+ BSTR_ENC_HANDLE hBstr, /* i/o: bitstream handle */
+ Word16 *nb_bits, /* o : number of bits written */
+ const Word16 max_bits
+);
Word32 ECSQ_encode_target_SNR_fx(
ECSQ_instance *ecsq_inst,
@@ -3010,309 +3006,312 @@ Word32 ECSQ_encode_target_SNR_fx(
const Word32 target_SNR, // Q25
const Word16 max_bits,
Word32 *output,
- Word16 *global_gain_index_output );
+ Word16 *global_gain_index_output
+);
void ECSQ_quantize_vector_fx(
const Word32 *input,
const Word16 input_e,
const Word32 global_gain, // Q15
const Word16 N,
- Word16 *output );
+ Word16 *output
+);
Word32 ECSQ_compute_optimal_gain_fx( // Q15
const Word32 *input,
const Word16 input_e,
const Word16 N,
- const Word16 *output );
+ const Word16 *output
+);
void spectral_balancer_fx16(
- Word16 *signal, /* i/o : signal Qx */
- Word16 *mem, /* i/o : mem Qx */
- const Word16 lg, /* i : input signal length */
- const Word16 coeff_set /* i : coefficient set */
+ Word16 *signal, /* i/o : signal Qx */
+ Word16 *mem, /* i/o : mem Qx */
+ const Word16 lg, /* i : input signal length */
+ const Word16 coeff_set /* i : coefficient set */
);
void spectral_balancer_fx(
- Word32 *signal, /* i/o : signal Qx */
- Word32 *mem, /* i/o : mem Qx */
- const Word16 lg, /* i : input signal length */
- const Word16 coeff_set /* i : coefficient set */
+ Word32 *signal, /* i/o : signal Qx */
+ Word32 *mem, /* i/o : mem Qx */
+ const Word16 lg, /* i : input signal length */
+ const Word16 coeff_set /* i : coefficient set */
);
void stereo_icBWE_preproc_fx(
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
- const Word16 input_frame, /* i : input frame length */
- Word16 shb_speech_nonref[], /* o : SHB speech non-ref channel */
- Word16 q_shb_speech_nonref /* i : Q SHB speech non-ref channel */
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
+ const Word16 input_frame, /* i : input frame length */
+ Word16 shb_speech_nonref[], /* o : SHB speech non-ref channel */
+ Word16 q_shb_speech_nonref /* i : Q SHB speech non-ref channel */
);
void core_switching_pre_enc_ivas_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 *old_inp_12k8, /* i : old input signal @12.8kHz */
- const Word16 q_old_inp_12k8, /* i : Q old input signal @12.8kHz */
- const Word16 *old_inp_16k, /* i : old input signal @16kHz */
- const Word16 q_old_inp_16k, /* i : Q old input signal @16kHz */
- const Word16 active_cnt, /* i : active frame counter */
- const Word16 last_element_mode /* i : last_element_mode */
+ Encoder_State *st_fx, /* i/o: encoder state structure */
+ const Word16 *old_inp_12k8, /* i : old input signal @12.8kHz */
+ const Word16 q_old_inp_12k8, /* i : Q old input signal @12.8kHz */
+ const Word16 *old_inp_16k, /* i : old input signal @16kHz */
+ const Word16 q_old_inp_16k, /* i : Q old input signal @16kHz */
+ const Word16 active_cnt, /* i : active frame counter */
+ const Word16 last_element_mode /* i : last_element_mode */
);
Word16 ivas_acelp_tcx20_switching_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- Word16 *inp_fx, /* i : new input signal */
- Word16 q_inp, /* i : i/p Q */
- Word16 *wsp, /* i : input weighted signal */
- Word32 non_staX, /* i : unbound non-stationarity for sp/mu clas */
- Word16 *pitch_fr, /* i : fraction pitch values */
- Word16 *voicing_fr, /* i : fractional voicing values */
- Word32 currFlatness, /* i : flatness */
- Word16 lsp_mid[M], /* i : LSPs at the middle of the frame */
- Word16 stab_fac, /* i : LP filter stability */
+ Encoder_State *st, /* i/o: encoder state structure */
+ Word16 *inp_fx, /* i : new input signal */
+ Word16 q_inp, /* i : i/p Q */
+ Word16 *wsp, /* i : input weighted signal */
+ Word32 non_staX, /* i : unbound non-stationarity for sp/mu clas */
+ Word16 *pitch_fr, /* i : fraction pitch values */
+ Word16 *voicing_fr, /* i : fractional voicing values */
+ Word32 currFlatness, /* i : flatness */
+ Word16 lsp_mid[M], /* i : LSPs at the middle of the frame */
+ Word16 stab_fac, /* i : LP filter stability */
Word32 *res_cod_SNR_M,
Word16 *res_cod_SNR_M_e,
- const Word16 flag_16k_smc /* i : flag to indicate if the OL SMC is run at 16 kHz */
+ const Word16 flag_16k_smc /* i : flag to indicate if the OL SMC is run at 16 kHz */
);
void encod_gen_2sbfr(
- Encoder_State *st, /* i/o: state structure */
- const Word16 speech[], /* i : input speech */
- const Word16 Aw[], /* i : weighted A(z) unquantized for subframes */
- const Word16 Aq[], /* i : LP coefficients */
- const Word16 *res, /* i : residual signal */
- Word16 *syn, /* i/o: core synthesis */
- Word16 *exc, /* i/o: current non-enhanced excitation */
- Word16 *exc2, /* i/o: current enhanced excitation */
- Word16 *pitch_buf, /* i/o: floating pitch values for each subframe */
- Word16 *voice_factors, /* o : voicing factors */
- Word16 *bwe_exc, /* o : excitation for SWB TBE */
- const Word16 tdm_Pitch_reuse_flag, /* i : primary channel pitch reuse flag */
- const Word16 tdm_Pri_pitch_buf[], /* i : pitch values for primary channel */
+ Encoder_State *st, /* i/o: state structure */
+ const Word16 speech[], /* i : input speech */
+ const Word16 Aw[], /* i : weighted A(z) unquantized for subframes */
+ const Word16 Aq[], /* i : LP coefficients */
+ const Word16 *res, /* i : residual signal */
+ Word16 *syn, /* i/o: core synthesis */
+ Word16 *exc, /* i/o: current non-enhanced excitation */
+ Word16 *exc2, /* i/o: current enhanced excitation */
+ Word16 *pitch_buf, /* i/o: floating pitch values for each subframe */
+ Word16 *voice_factors, /* o : voicing factors */
+ Word16 *bwe_exc, /* o : excitation for SWB TBE */
+ const Word16 tdm_Pitch_reuse_flag, /* i : primary channel pitch reuse flag */
+ const Word16 tdm_Pri_pitch_buf[], /* i : pitch values for primary channel */
Word16 Q_new,
- Word16 shift );
+ Word16 shift
+);
void acelp_fast_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- const Word16 cdk_index, /* i : codebook index */
- const Word16 dn_orig[L_SUBFR],
- /* i : corr. between target and h[]. */ // Q_dn
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ const Word16 cdk_index, /* i : codebook index */
+ const Word16 dn_orig[L_SUBFR], /* i : corr. between target and h[]. Q_dn */
Word16 Q_dn,
- const Word16 cn[L_SUBFR],
- /* i : residual after long term prediction */ // q_cn
+ const Word16 cn[L_SUBFR], /* i : residual after long term prediction q_cn*/
const Word16 q_cn,
- const Word16 H[L_SUBFR],
- /* i : impulse response of weighted synthesis filter */ // e(norm_s(H[0])+1)
- Word16 code[L_SUBFR], /* o : algebraic (fixed) codebook excitation */
- Word16 y[], /* o : filtered fixed codebook excitation */
- const Word16 L_subfr /* i : subframe length */
+ const Word16 H[L_SUBFR], /* i : impulse response of weighted synthesis filter e(norm_s(H[0])+1) */
+ Word16 code[L_SUBFR], /* o : algebraic (fixed) codebook excitation */
+ Word16 y[], /* o : filtered fixed codebook excitation */
+ const Word16 L_subfr /* i : subframe length */
);
void ivas_mdct_quant_coder_fx(
- CPE_ENC_HANDLE hCPE, /* i/o: Encoder CPE handle */
- Word16 tnsBits[CPE_CHANNELS][NB_DIV], /* i : bits needed for TNS parameters */
- Word16 tnsSize[CPE_CHANNELS][NB_DIV], /* i : size of TNS */
- Word16 p_param[CPE_CHANNELS][NB_DIV], /* i : pointer to parameter array */
- const Word16 MCT_flag /* i : hMCT handle allocated (1) or not (0) */
+ CPE_ENC_HANDLE hCPE, /* i/o: Encoder CPE handle */
+ Word16 tnsBits[CPE_CHANNELS][NB_DIV], /* i : bits needed for TNS parameters */
+ Word16 tnsSize[CPE_CHANNELS][NB_DIV], /* i : size of TNS */
+ Word16 p_param[CPE_CHANNELS][NB_DIV], /* i : pointer to parameter array */
+ const Word16 MCT_flag /* i : hMCT handle allocated (1) or not (0) */
);
void ivas_mdct_tcx10_bit_distribution_fx(
- Word16 target_bitsTCX10[NB_DIV], /* o : target bit distribution */
- const Word16 nbits_tcx, /* i : TCX bits */
- const Word16 nTnsBitsTCX10[NB_DIV] /* i : TNS bits */
+ Word16 target_bitsTCX10[NB_DIV], /* o : target bit distribution */
+ const Word16 nbits_tcx, /* i : TCX bits */
+ const Word16 nTnsBitsTCX10[NB_DIV] /* i : TNS bits */
);
void QuantizeSpectrum_ivas_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- const Word16 A_fx[], /* i : quantized coefficients NxAz_q[M+1] */
- const Word16 Aqind[], /* i : frame-independent quantized coefficients (M+1) */
- Word16 gainlpc_fx[], /* i : MDCT gains of the previous frame */
- Word16 gainlpc_e[], /* i : exponents of MDCT gains of the previous frame */
- Word16 synth[], /* o : synthesis buffer, Q0 */
- const Word16 nb_bits, /* i : bit budget */
- const Word16 tnsSize, /* i : number of tns parameters put into prm */
- Word16 prm[], /* o : tcx parameters */
- const Word16 frame_cnt, /* i : frame counter in the super_frame */
- CONTEXT_HM_CONFIG *hm_cfg, /* i : HM configuration */
- const Word16 vad_hover_flag /* i : VAD hangover flag */
+ Encoder_State *st, /* i/o: encoder state structure */
+ const Word16 A_fx[], /* i : quantized coefficients NxAz_q[M+1] */
+ const Word16 Aqind[], /* i : frame-independent quantized coefficients (M+1) */
+ Word16 gainlpc_fx[], /* i : MDCT gains of the previous frame */
+ Word16 gainlpc_e[], /* i : exponents of MDCT gains of the previous frame */
+ Word16 synth[], /* o : synthesis buffer, Q0 */
+ const Word16 nb_bits, /* i : bit budget */
+ const Word16 tnsSize, /* i : number of tns parameters put into prm */
+ Word16 prm[], /* o : tcx parameters */
+ const Word16 frame_cnt, /* i : frame counter in the super_frame */
+ CONTEXT_HM_CONFIG *hm_cfg, /* i : HM configuration */
+ const Word16 vad_hover_flag /* i : VAD hangover flag */
);
void InternalTCXDecoder_fx(
- Encoder_State *st, /* i/o: state handle */
- const Word16 frame_cnt, /* i : frame counter in the super_frame */
- const Word16 L_frameTCX, /* i : full frame length */
- const Word16 L_frame, /* i : frame length */
- const Word16 L_spec, /* i : length of the coded spectrum */
- const Word16 tcx_offset, /* i : folding point offset relative to the end of the previous frame */
- const Word16 noiseFillingBorder, /* i : noise filling border */
- const Word32 *x_quant_fx, /* i : quantized spectrum */
- const Word32 ener_fx, /* i : energy of the quantized spectrum */
- const Word16 ener_e, /* i : energy of the quantized spectrum exponent */
- Word16 lf_deemph_fact_fx[], /* i/o: low frequency deemphasis factors */
- const Word16 fac_ns_fx, /* i : noise filling level, Q15 */
- const Word16 nf_seed, /* i : noise filling random seed, Q0 */
- const Word16 *A_fx, /* i : LPC representation of the FDNS gains */
- Word16 gainlpc_fx[], /* i/o: FDNS gains */
- Word16 gainlpc_e[], /* i/o: FDNS gains exponent */
- const Word16 hm_active, /* i : flag indicating if the harmonic model is active */
- Word16 gain_tcx_fx, /* i/o: global gain / quantized global gain */
- Word16 *gain_tcx_e, /* i/o: global gain / quantized global gain exponent */
- Word32 spectrum_fx[], /* o : dequantized spectrum */
- Word16 *spectrum_e, /* o : dequantized spectrum */
- Word16 synth[], /* o : time domain signal */
- Word16 *gain_tcx_q /* o : quantized global gain (at low bitrates) */
+ Encoder_State *st, /* i/o: state handle */
+ const Word16 frame_cnt, /* i : frame counter in the super_frame */
+ const Word16 L_frameTCX, /* i : full frame length */
+ const Word16 L_frame, /* i : frame length */
+ const Word16 L_spec, /* i : length of the coded spectrum */
+ const Word16 tcx_offset, /* i : folding point offset relative to the end of the previous frame */
+ const Word16 noiseFillingBorder, /* i : noise filling border */
+ const Word32 *x_quant_fx, /* i : quantized spectrum */
+ const Word32 ener_fx, /* i : energy of the quantized spectrum */
+ const Word16 ener_e, /* i : energy of the quantized spectrum exponent */
+ Word16 lf_deemph_fact_fx[], /* i/o: low frequency deemphasis factors */
+ const Word16 fac_ns_fx, /* i : noise filling level, Q15 */
+ const Word16 nf_seed, /* i : noise filling random seed, Q0 */
+ const Word16 *A_fx, /* i : LPC representation of the FDNS gains */
+ Word16 gainlpc_fx[], /* i/o: FDNS gains */
+ Word16 gainlpc_e[], /* i/o: FDNS gains exponent */
+ const Word16 hm_active, /* i : flag indicating if the harmonic model is active */
+ Word16 gain_tcx_fx, /* i/o: global gain / quantized global gain */
+ Word16 *gain_tcx_e, /* i/o: global gain / quantized global gain exponent */
+ Word32 spectrum_fx[], /* o : dequantized spectrum */
+ Word16 *spectrum_e, /* o : dequantized spectrum */
+ Word16 synth[], /* o : time domain signal */
+ Word16 *gain_tcx_q /* o : quantized global gain (at low bitrates) */
);
void stereo_tcx_core_enc(
- Encoder_State *st, /* i/o: encoder state structure */
- const Word16 new_samples_12k8[], /* i : buffer of input signal @12.8 kHz */
- const Word16 new_samples_16k[], /* i : buffer of input signal @16 kHz */
- const Word16 Aw_fx[], /* i : weighted A(z) unquant. for subframes, Q12 */
- Word16 lsp_new_fx[], /* i : LSPs at the end of the frame, Q15 */
- Word16 lsp_mid_fx[], /* i : LSPs in the middle of the frame, Q15 */
- Word16 pitch_buf_fx[NB_SUBFR16k], /* o : pitch for each subframe, Q6 */
- const Word16 last_element_mode, /* i : last element mode, Q0 */
- const Word16 vad_hover_flag, /* i : VAD hangover flag, Q0 */
+ Encoder_State *st, /* i/o: encoder state structure */
+ const Word16 new_samples_12k8[], /* i : buffer of input signal @12.8 kHz */
+ const Word16 new_samples_16k[], /* i : buffer of input signal @16 kHz */
+ const Word16 Aw_fx[], /* i : weighted A(z) unquant. for subframes,Q12*/
+ Word16 lsp_new_fx[], /* i : LSPs at the end of the frame, Q15 */
+ Word16 lsp_mid_fx[], /* i : LSPs in the middle of the frame, Q15 */
+ Word16 pitch_buf_fx[NB_SUBFR16k], /* o : pitch for each subframe, Q6 */
+ const Word16 last_element_mode, /* i : last element mode, Q0 */
+ const Word16 vad_hover_flag, /* i : VAD hangover flag, Q0 */
Word16 Q_new
);
Word16 transient_analysis_ivas_fx(
- TRAN_DET_HANDLE hTranDet, /* i : handle transient detection */
- const Word16 cor_map_LT[], /* i : LT correlation map Q_cor_map = Qx */
+ TRAN_DET_HANDLE hTranDet, /* i : handle transient detection */
+ const Word16 cor_map_LT[], /* i : LT correlation map Q_cor_map = Qx */
const Word16 Q_cor_map,
- const Word16 multi_harm_limit, /* i : multi harmonic threshold Q_multi_harm_limit = Qx */
- const Word16 Q_multi_harm_limit );
+ const Word16 multi_harm_limit, /* i : multi harmonic threshold Q_multi_harm_limit = Qx */
+ const Word16 Q_multi_harm_limit
+);
void set_transient_stereo_fx(
- CPE_ENC_HANDLE hCPE, /* i : CPE structure */
- Word32 currFlatness[] /* i/o: current flatness Q21*/
+ CPE_ENC_HANDLE hCPE, /* i : CPE structure */
+ Word32 currFlatness[] /* i/o: current flatness Q21*/
);
void ivas_smc_mode_selection_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- const Word32 element_brate, /* i : element bitrate */
- Word16 smc_dec, /* i : raw decision of the 1st stage classifier*/
- const Word16 relE, /* i : relative frame energy, Q8 */
- const Word16 Etot, /* i : total frame energy, Q8 */
- Word16 *attack_flag, /* i/o: attack flag (GSC or TC) */
- const Word16 *inp, /* i : input signal */
- const Word16 Q_new, /* i : Q of input signal */
- const Word16 S_map[], /* i : short-term correlation map, Q7 */
- const Word16 flag_spitch /* i : flag to indicate very short stable pitch*/
+ Encoder_State *st, /* i/o: encoder state structure */
+ const Word32 element_brate, /* i : element bitrate */
+ Word16 smc_dec, /* i : raw decision of the 1st stage classifier*/
+ const Word16 relE, /* i : relative frame energy, Q8 */
+ const Word16 Etot, /* i : total frame energy, Q8 */
+ Word16 *attack_flag, /* i/o: attack flag (GSC or TC) */
+ const Word16 *inp, /* i : input signal */
+ const Word16 Q_new, /* i : Q of input signal */
+ const Word16 S_map[], /* i : short-term correlation map, Q7 */
+ const Word16 flag_spitch /* i : flag to indicate very short stable pitch*/
);
/*! r: element mode */
Word16 select_stereo_mode_fx(
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
- const IVAS_FORMAT ivas_format /* i : IVAS format */
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
+ const IVAS_FORMAT ivas_format /* i : IVAS format */
);
void stereo_classifier_features_ivas_fx(
- STEREO_CLASSIF_HANDLE hStereoClassif, /* i/o: stereo classifier structure */
- const Word16 idchan, /* i : channel ID */
- const Word16 element_mode, /* i : element mode */
- const Word16 vad_flag, /* i : VAD flag */
- Word16 lsf_new_fx[], /* i : LSFs at the end of the frame Q1*1.28 */
- Word32 epsP_fx[], /* i : LP analysis residual energies for each iteration*/
- Word16 pitch[], /* i : open-loop pitch values for quantiz. Q0 */
- Word16 voicing_fx[], /* i : OL maximum normalized correlation Q15 */
- Word32 cor_map_sum_fx, /* i : speech/music clasif. parameter */
- Word32 non_staX_fx, /* i : unbound non-stationarity for sp/mu clas. */
- Word16 sp_div_fx, /* i : spectral diversity feature */
- const Word16 clas, /* i : signal class */
- Word16 epsP_e, /*exponent for epsP_fx */
- Word16 cor_map_sum_e, /*exponent for cor_map_sum_fx */
- Word16 non_staX_e, /*exponent for non_staX_fx */
- Word16 sp_div_e /*exponent for sp_div_fx */
+ STEREO_CLASSIF_HANDLE hStereoClassif, /* i/o: stereo classifier structure */
+ const Word16 idchan, /* i : channel ID */
+ const Word16 element_mode, /* i : element mode */
+ const Word16 vad_flag, /* i : VAD flag */
+ Word16 lsf_new_fx[], /* i : LSFs at the end of the frame Q1*1.28 */
+ Word32 epsP_fx[], /* i : LP analysis residual energies for each iteration*/
+ Word16 pitch[], /* i : open-loop pitch values for quantiz. Q0 */
+ Word16 voicing_fx[], /* i : OL maximum normalized correlation Q15 */
+ Word32 cor_map_sum_fx, /* i : speech/music clasif. parameter */
+ Word32 non_staX_fx, /* i : unbound non-stationarity for sp/mu clas. */
+ Word16 sp_div_fx, /* i : spectral diversity feature */
+ const Word16 clas, /* i : signal class */
+ Word16 epsP_e, /*exponent for epsP_fx */
+ Word16 cor_map_sum_e, /*exponent for cor_map_sum_fx */
+ Word16 non_staX_e, /*exponent for non_staX_fx */
+ Word16 sp_div_e /*exponent for sp_div_fx */
);
void tdm_ol_pitch_comparison_fx(
- CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
- Word16 pitch_fr[CPE_CHANNELS][NB_SUBFR], /* i/o: fractional pitch values, Q6 */
- Word16 voicing_fr[CPE_CHANNELS][NB_SUBFR] /* i/o: fractional pitch gains, Q15 */
+ CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
+ Word16 pitch_fr[CPE_CHANNELS][NB_SUBFR], /* i/o: fractional pitch values, Q6 */
+ Word16 voicing_fr[CPE_CHANNELS][NB_SUBFR] /* i/o: fractional pitch gains, Q15 */
);
void xtalk_classifier_td_fx(
- CPE_ENC_HANDLE hCPE /* i/o: CPE encoder structure */
+ CPE_ENC_HANDLE hCPE /* i/o: CPE encoder structure */
);
void unclr_classifier_td_fx(
- CPE_ENC_HANDLE hCPE /* i/o: CPE encoder structure */
+ CPE_ENC_HANDLE hCPE /* i/o: CPE encoder structure */
);
void quantize_direction_frame2D_fx(
- IVAS_QDIRECTION *q_direction, /* i/o: quantized direction structure */
+ IVAS_QDIRECTION *q_direction, /* i/o: quantized direction structure */
Word32 azimuth_orig[MASA_MAXIMUM_CODING_SUBBANDS][MAX_PARAM_SPATIAL_SUBFRAMES], // Q22
Word32 elevation_orig[MASA_MAXIMUM_CODING_SUBBANDS][MAX_PARAM_SPATIAL_SUBFRAMES] // Q22
);
Word16 quantize_direction2D_fx(
- Word32 phi, /* i : input azimuth value Q22 */
- const Word16 no_cw, /* i : number of bits */
- Word32 *phi_q, /* o : quantized azimuth value Q22 */
- UWord16 *index_phi, /* o : quantized azimuth index */
- const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
+ Word32 phi, /* i : input azimuth value Q22 */
+ const Word16 no_cw, /* i : number of bits */
+ Word32 *phi_q, /* o : quantized azimuth value Q22 */
+ UWord16 *index_phi, /* o : quantized azimuth index */
+ const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
);
void restore_metadata_buffer_fx(
BSTR_ENC_HANDLE hMetaData,
const Word16 next_ind_start,
- const Word16 bit_pos_start );
-
+ const Word16 bit_pos_start
+);
void small_requantize_direction_frame_fx(
- IVAS_QDIRECTION *q_direction, /* i/o: quantized direction structure */
+ IVAS_QDIRECTION *q_direction, /* i/o: quantized direction structure */
Word32 azimuth_orig[MASA_MAXIMUM_CODING_SUBBANDS][MAX_PARAM_SPATIAL_SUBFRAMES], // Q22
Word32 elevation_orig[MASA_MAXIMUM_CODING_SUBBANDS][MAX_PARAM_SPATIAL_SUBFRAMES], // Q22
const Word16 raw_flag[MASA_MAXIMUM_CODING_SUBBANDS],
Word16 bits_dir_bands[MASA_MAXIMUM_CODING_SUBBANDS],
- Word16 *diff );
+ Word16 *diff
+);
void ivas_param_ism_stereo_dmx_fx(
- Encoder_Struct *st_ivas, /* i : IVAS encoder structure */
- Word32 *data[MAX_NUM_OBJECTS], /* i/o: input signal/stereo dmx Qx */
- const Word16 input_frame /* i : Length of input frame */
+ Encoder_Struct *st_ivas, /* i : IVAS encoder structure */
+ Word32 *data[MAX_NUM_OBJECTS], /* i/o: input signal/stereo dmx Qx */
+ const Word16 input_frame /* i : Length of input frame */
);
void ivas_param_ism_enc_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
- Word32 *data[MAX_NUM_OBJECTS], /* i : input signal q_pcm_in */
- const Word16 input_frame /* i : input frame length per channel */
+ Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
+ Word32 *data[MAX_NUM_OBJECTS], /* i : input signal q_pcm_in */
+ const Word16 input_frame /* i : input frame length per channel */
);
ISM_MODE ivas_ism_mode_select(
- const Word16 nchan_inp, /* i : number of input objects */
- const Word32 ivas_total_brate /* i : IVAS total bitrate */
+ const Word16 nchan_inp, /* i : number of input objects */
+ const Word32 ivas_total_brate /* i : IVAS total bitrate */
);
void ivas_fb_mixer_update_prior_input_fx(
- IVAS_FB_MIXER_HANDLE hFbMixer, /* i/o: FB mixer handle */
- Word32 *pcm_in_fx[], /* i : input audio channels */
- const Word16 length, /* i : length of time slot */
- const Word16 nchan_fb_in /* i : number of analysis channels */
+ IVAS_FB_MIXER_HANDLE hFbMixer, /* i/o: FB mixer handle */
+ Word32 *pcm_in_fx[], /* i : input audio channels */
+ const Word16 length, /* i : length of time slot */
+ const Word16 nchan_fb_in /* i : number of analysis channels */
);
void ivas_fb_mixer_get_windowed_fr_fx(
- IVAS_FB_MIXER_HANDLE hFbMixer, /* i/o: FB mixer handle */
+ IVAS_FB_MIXER_HANDLE hFbMixer, /* i/o: FB mixer handle */
Word32 *pcm_in_fx[],
Word32 *frame_f_real_fx[],
Word32 *frame_f_imag_fx[],
- const Word16 length, /* i : number of new samples in time slot */
- const Word16 mdft_len, /* i : MDFT frame length */
- const Word16 nchan_fb_in, /* i : number of analysis channels */
+ const Word16 length, /* i : number of new samples in time slot */
+ const Word16 mdft_len, /* i : MDFT frame length */
+ const Word16 nchan_fb_in, /* i : number of analysis channels */
Word16 gb
);
void ivas_omasa_set_config_fx(
- OMASA_ENC_HANDLE hOMasa, /* i/o: OMASA encoder handle */
- MASA_ENCODER_HANDLE hMasa, /* i : MASA encoder handle */
- const Word32 input_Fs, /* i : Input sample rate */
- const ISM_MODE ism_mode /* i : ISM mode */
+ OMASA_ENC_HANDLE hOMasa, /* i/o: OMASA encoder handle */
+ MASA_ENCODER_HANDLE hMasa, /* i : MASA encoder handle */
+ const Word32 input_Fs, /* i : Input sample rate */
+ const ISM_MODE ism_mode /* i : ISM mode */
);
Word16 ivas_omasa_ener_brate_fx(
- const Word16 nchan_ism, /* i : number of ISMs */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- Word32 *data_f[], /* i : Input / transport audio signals */
- const Word16 input_frame, /* i : Input frame size */
- const Word16 data_e /* i : exponent for data_f */
+ const Word16 nchan_ism, /* i : number of ISMs */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ Word32 *data_f[], /* i : Input / transport audio signals */
+ const Word16 input_frame, /* i : Input frame size */
+ const Word16 data_e /* i : exponent for data_f */
);
void computeDiffuseness_mdft_fx(
@@ -3326,7 +3325,7 @@ void computeDiffuseness_mdft_fx(
Word16 *q_diffuseness /*Ouput Q*/
);
-void computeDirectionVectors_fixed(
+void computeDirectionVectors_fx2(
Word32 *intensity_real_x,
Word32 *intensity_real_y,
Word32 *intensity_real_z,
@@ -3336,8 +3335,8 @@ void computeDirectionVectors_fixed(
Word32 *direction_vector_y, /*Q30*/
Word32 *direction_vector_z, /*Q30*/
Word16 i_e, /*Exponent of all the intensity buffers*/
- Word16 *i_e_band );
-
+ Word16 *i_e_band
+);
UWord8 ivas_masa_surrcoh_signicant_fx(
Word32 surroundingCoherence[MAX_PARAM_SPATIAL_SUBFRAMES][MASA_FREQUENCY_BANDS], /* i : Surround coherence Q31 */
@@ -3346,33 +3345,35 @@ UWord8 ivas_masa_surrcoh_signicant_fx(
const Word16 nBands /* i : Number of frequency bands */
);
+
/*----------------------------------------------------------------------------------*
* McMASA prototypes
*----------------------------------------------------------------------------------*/
ivas_error ivas_mcmasa_enc_open_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
);
void ivas_mcmasa_enc_close_fx(
- MCMASA_ENC_HANDLE *hMcMasa, /* i/o: encoder McMASA handle */
- const Word32 input_Fs /* i : input sampling rate */
+ MCMASA_ENC_HANDLE *hMcMasa, /* i/o: encoder McMASA handle */
+ const Word32 input_Fs /* i : input sampling rate */
);
ivas_error ivas_mcmasa_enc_reconfig_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
);
void ivas_mcmasa_enc_fx(
- MCMASA_ENC_HANDLE hMcMasa, /* i/o: Encoder McMASA handle */
- IVAS_QMETADATA_HANDLE hQMeta, /* o : Qmetadata handle */
- MASA_ENCODER_HANDLE hMasa, /* i/o: Encoder MASA handle */
- Word32 *data_f[], /* i : Input frame of audio */
- const Word16 input_frame, /* i : Input frame size */
- const Word16 nchan_transport, /* i : Number of transport channels */
- const Word16 nchan_inp, /* i : Number of input channels */
- const Word16 q_inp /* i : Input data q-format */
+ MCMASA_ENC_HANDLE hMcMasa, /* i/o: Encoder McMASA handle */
+ IVAS_QMETADATA_HANDLE hQMeta, /* o : Qmetadata handle */
+ MASA_ENCODER_HANDLE hMasa, /* i/o: Encoder MASA handle */
+ Word32 *data_f[], /* i : Input frame of audio */
+ const Word16 input_frame, /* i : Input frame size */
+ const Word16 nchan_transport, /* i : Number of transport channels */
+ const Word16 nchan_inp, /* i : Number of input channels */
+ const Word16 q_inp /* i : Input data q-format */
);
+
void ivas_mcmasa_param_est_enc_fx(
MCMASA_ENC_HANDLE hMcMasa, /* i : McMASA encoder structure */
MASA_ENCODER_HANDLE hMasa, /* i : MASA encoder structure */
@@ -3388,110 +3389,111 @@ void ivas_mcmasa_param_est_enc_fx(
);
void computeReferencePower_enc_fx(
- const Word16 *band_grouping, /* i : Band grouping for estimation */
- Word32 Cldfb_RealBuffer[][DIRAC_NO_FB_BANDS_MAX], /* i : Real part of input signal */
- Word32 Cldfb_ImagBuffer[][DIRAC_NO_FB_BANDS_MAX], /* i : Imag part of input signal */
- Word32 *reference_power, /* o : Estimated power */
- const Word16 enc_param_start_band, /* i : first band to process */
- const Word16 num_freq_bands, /* i : Number of frequency bands */
- const IVAS_FORMAT ivas_format, /* i : ivas_format */
- Word16 ref_power_w, /* i : use 0 if hodirac is enabled */
- const Word16 nchan_ana, /* i : number of analysis channels */
- Word16 inp_q, /* i : q of cld buffers */
- Word16 q_reference_power[DIRAC_NO_FB_BANDS_MAX] );
+ const Word16 *band_grouping, /* i : Band grouping for estimation */
+ Word32 Cldfb_RealBuffer[][DIRAC_NO_FB_BANDS_MAX], /* i : Real part of input signal */
+ Word32 Cldfb_ImagBuffer[][DIRAC_NO_FB_BANDS_MAX], /* i : Imag part of input signal */
+ Word32 *reference_power, /* o : Estimated power */
+ const Word16 enc_param_start_band, /* i : first band to process */
+ const Word16 num_freq_bands, /* i : Number of frequency bands */
+ const IVAS_FORMAT ivas_format, /* i : ivas_format */
+ Word16 ref_power_w, /* i : use 0 if hodirac is enabled */
+ const Word16 nchan_ana, /* i : number of analysis channels */
+ Word16 inp_q, /* i : q of cld buffers */
+ Word16 q_reference_power[DIRAC_NO_FB_BANDS_MAX]
+);
void computeReferencePower_enc_fx_dirac(
- const Word16 *band_grouping, /* i : Band grouping for estimation */
- Word32 Cldfb_RealBuffer[][DIRAC_NO_FB_BANDS_MAX], /* i : Real part of input signal */
- Word32 Cldfb_ImagBuffer[][DIRAC_NO_FB_BANDS_MAX], /* i : Imag part of input signal */
- Word16 e_Cldfb, /* i : exponent of Cldfb buffer */
- Word32 *reference_power, /* o : Estimated power */
- Word16 *e_reference, /* o : exponent of reference_power */
- const Word16 enc_param_start_band, /* i : first band to process */
- const Word16 num_freq_bands, /* i : Number of frequency bands */
- const IVAS_FORMAT ivas_format, /* i : ivas_format */
- Word16 ref_power_w, /* i : use 0 if hodirac is enabled */
- const Word16 nchan_ana, /* i : number of analysis channels */
- Word16 *mono_frame_count, /* i/o: Mono Frame Count */
- Word16 *dirac_mono_flag /* i/o: Mono Flag */
+ const Word16 *band_grouping, /* i : Band grouping for estimation */
+ Word32 Cldfb_RealBuffer[][DIRAC_NO_FB_BANDS_MAX], /* i : Real part of input signal */
+ Word32 Cldfb_ImagBuffer[][DIRAC_NO_FB_BANDS_MAX], /* i : Imag part of input signal */
+ Word16 e_Cldfb, /* i : exponent of Cldfb buffer */
+ Word32 *reference_power, /* o : Estimated power */
+ Word16 *e_reference, /* o : exponent of reference_power */
+ const Word16 enc_param_start_band, /* i : first band to process */
+ const Word16 num_freq_bands, /* i : Number of frequency bands */
+ const IVAS_FORMAT ivas_format, /* i : ivas_format */
+ Word16 ref_power_w, /* i : use 0 if hodirac is enabled */
+ const Word16 nchan_ana, /* i : number of analysis channels */
+ Word16 *mono_frame_count, /* i/o: Mono Frame Count */
+ Word16 *dirac_mono_flag /* i/o: Mono Flag */
);
void ivas_omasa_enc_fx(
- OMASA_ENC_HANDLE hOMasa, /* i/o: OMASA encoder handle */
- MASA_ENCODER_HANDLE hMasa, /* i/o: MASA encoder handle */
- ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handle */
- Word32 *data_in[], /* i/o: Input / transport audio signals */
- Word16 q_data, /* i:Q0 Stores the q for data_in_f */
- const Word16 input_frame, /* i : Input frame size */
- const Word16 nchan_transport, /* i : Number of transport channels */
- const Word16 nchan_ism, /* i : Number of objects for parameter analysis */
- const ISM_MODE ism_mode, /* i : ISM mode */
- Word32 *data_separated_object_fx, /* o : Separated object audio signal */
- Word16 *idx_separated_object /* o : Index of the separated object */
+ OMASA_ENC_HANDLE hOMasa, /* i/o: OMASA encoder handle */
+ MASA_ENCODER_HANDLE hMasa, /* i/o: MASA encoder handle */
+ ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handle */
+ Word32 *data_in[], /* i/o: Input / transport audio signals */
+ Word16 q_data, /* i :Q0 Stores the q for data_in_f */
+ const Word16 input_frame, /* i : Input frame size */
+ const Word16 nchan_transport, /* i : Number of transport channels */
+ const Word16 nchan_ism, /* i : Number of objects for parameter analysis*/
+ const ISM_MODE ism_mode, /* i : ISM mode */
+ Word32 *data_separated_object_fx, /* o : Separated object audio signal */
+ Word16 *idx_separated_object /* o : Index of the separated object */
);
void mctStereoIGF_enc_fx(
- MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */
- Encoder_State **sts, /* i/o: encoder state structure */
- Word32 *orig_spectrum_fx[MCT_MAX_CHANNELS][2], /* i : MDCT spectrum for ITF */
- Word16 q_origSpec, /* i : Q for MDCT spectrum */
- Word32 *powerSpec[MCT_MAX_CHANNELS], /* i/o: MDCT^2 + MDST^2 spectrum,or estimate */
- Word16 q_powerSpec[MCT_MAX_CHANNELS], /* i : Q for powSpec_fx */
- Word32 *powerSpecMsInv_fx[MCT_MAX_CHANNELS][NB_DIV], /* i : same as powerSpec_fx but for inverse spect.*/
- Word16 *q_powerSpecMsInv[MCT_MAX_CHANNELS][NB_DIV], /* i : Q for powSpecMsInv_fx */
- Word32 *inv_spectrum_fx[MCT_MAX_CHANNELS][NB_DIV], /* i : inverse spectrum */
- const Word16 sp_aud_decision0[MCT_MAX_CHANNELS] /* i : speech audio decision */
+ MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */
+ Encoder_State **sts, /* i/o: encoder state structure */
+ Word32 *orig_spectrum_fx[MCT_MAX_CHANNELS][2], /* i : MDCT spectrum for ITF */
+ Word16 q_origSpec, /* i : Q for MDCT spectrum */
+ Word32 *powerSpec[MCT_MAX_CHANNELS], /* i/o: MDCT^2 + MDST^2 spectrum,or estimate */
+ Word16 q_powerSpec[MCT_MAX_CHANNELS], /* i : Q for powSpec_fx */
+ Word32 *powerSpecMsInv_fx[MCT_MAX_CHANNELS][NB_DIV], /* i : same as powerSpec_fx but for inverse spect.*/
+ Word16 *q_powerSpecMsInv[MCT_MAX_CHANNELS][NB_DIV], /* i : Q for powSpecMsInv_fx */
+ Word32 *inv_spectrum_fx[MCT_MAX_CHANNELS][NB_DIV], /* i : inverse spectrum */
+ const Word16 sp_aud_decision0[MCT_MAX_CHANNELS] /* i : speech audio decision */
);
void ivas_mct_core_enc_fx(
- const IVAS_FORMAT ivas_format, /* i : IVAS format */
- MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */
- CPE_ENC_HANDLE hCPE[MCT_MAX_BLOCKS], /* i/o: CPE encoder structures */
- const Word16 nChannels, /* i : number of channels to be coded */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word16 switch_bw, /* i : flag bandwidth switch occurance */
- const Word16 lfe_bits, /* i : bits spent for LFE */
- const Word16 sba_order /* i : Ambisonic (SBA) order */
+ const IVAS_FORMAT ivas_format, /* i : IVAS format */
+ MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */
+ CPE_ENC_HANDLE hCPE[MCT_MAX_BLOCKS], /* i/o: CPE encoder structures */
+ const Word16 nChannels, /* i : number of channels to be coded */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word16 switch_bw, /* i : flag bandwidth switch occurance */
+ const Word16 lfe_bits, /* i : bits spent for LFE */
+ const Word16 sba_order /* i : Ambisonic (SBA) order */
);
-
ivas_error mct_enc_reconfigure_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
- const UWord16 b_nchan_change /* i : flag indicating different channel count */
+ Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
+ const UWord16 b_nchan_change /* i : flag indicating different channel count */
);
Word16 quantize_phi_chan_compand_fx(
- Word32 phi, /* i : azimuth value Q22 */
- Word32 *phi_hat, /* o : quantized azimuth Q22 */
- const Word16 n, /* i : azimuth codebook size */
- const Word16 theta_flag, /* i : flag signaling high elevation */
- const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
+ Word32 phi, /* i : azimuth value Q22 */
+ Word32 *phi_hat, /* o : quantized azimuth Q22 */
+ const Word16 n, /* i : azimuth codebook size */
+ const Word16 theta_flag, /* i : flag signaling high elevation */
+ const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
);
Word16 quantize_phi_chan_lbr_fx(
- const Word32 phi, /* i : azimuth value, Q22 */
- Word32 *phi_hat, /* o : quantized azimuth, Q22 */
- const Word16 n /* i : azimuth codebook size */
+ const Word32 phi, /* i : azimuth value, Q22 */
+ Word32 *phi_hat, /* o : quantized azimuth, Q22 */
+ const Word16 n /* i : azimuth codebook size */
);
UWord16 quantize_direction_fx(
- const Word32 theta, /* i : input elevation value, Q22 */
- Word32 phi, /* i : input azimuth value, Q22 */
- const Word16 no_bits, /* i : number of bits */
- Word32 *theta_q, /* o : quantized elevation, Q22 */
- Word32 *phi_q, /* o : quantized azimuth, Q22 */
- UWord16 *index_theta, /* o : quantized elevation index */
- UWord16 *index_phi, /* o : quantized azimuth index */
- const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
+ const Word32 theta, /* i : input elevation value, Q22 */
+ Word32 phi, /* i : input azimuth value, Q22 */
+ const Word16 no_bits, /* i : number of bits */
+ Word32 *theta_q, /* o : quantized elevation, Q22 */
+ Word32 *phi_q, /* o : quantized azimuth, Q22 */
+ UWord16 *index_theta, /* o : quantized elevation index */
+ UWord16 *index_phi, /* o : quantized azimuth index */
+ const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
);
Word16 quantize_direction2D_fx(
- Word32 phi, /* i : input azimuth value Q22 */
- const Word16 no_cw, /* i : number of bits */
- Word32 *phi_q, /* o : quantized azimuth value Q22 */
- UWord16 *index_phi, /* o : quantized azimuth index */
- const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
+ Word32 phi, /* i : input azimuth value Q22 */
+ const Word16 no_cw, /* i : number of bits */
+ Word32 *phi_q, /* o : quantized azimuth value Q22 */
+ UWord16 *index_phi, /* o : quantized azimuth index */
+ const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
);
+
void quantize_direction_frame_fx(
IVAS_QDIRECTION *q_direction, /* i/o: quantized direction structure */
Word32 azimuth_orig[MASA_MAXIMUM_CODING_SUBBANDS][MAX_PARAM_SPATIAL_SUBFRAMES], /* o : Q22 */
@@ -3500,36 +3502,37 @@ void quantize_direction_frame_fx(
);
ivas_error ivas_qmetadata_enc_encode_fx(
- BSTR_ENC_HANDLE hMetaData, /* i/o: metadata bitstream handle */
- IVAS_QMETADATA *hQMetaData, /* i/o: metadata handle */
- const Word16 hodirac_flag /* i : flag to indicate HO-DirAC mode */
+ BSTR_ENC_HANDLE hMetaData, /* i/o: metadata bitstream handle */
+ IVAS_QMETADATA *hQMetaData, /* i/o: metadata handle */
+ const Word16 hodirac_flag /* i : flag to indicate HO-DirAC mode */
);
ivas_error ivas_qmetadata_enc_encode_hr_384_512_fx(
- BSTR_ENC_HANDLE hMetaData, /* i/o: metadata bitstream handle */
- IVAS_QMETADATA *hQMetaData, /* i/o: metadata handle */
+ BSTR_ENC_HANDLE hMetaData, /* i/o: metadata bitstream handle */
+ IVAS_QMETADATA *hQMetaData, /* i/o: metadata handle */
const Word16 bits_sph_idx,
const Word16 bits_sp_coh
);
void ivas_merge_masa_metadata_fx(
- MASA_ENCODER_HANDLE hMasa, /* i/o: MASA enc handle. source for MASA metadata and combined metadata will be here */
- OMASA_SPATIAL_META_HANDLE hOMasaMeta /* i : ISM-object metadata to be merged with the MASA metadata */
+ MASA_ENCODER_HANDLE hMasa, /* i/o: MASA enc handle. source for MASA metadata and combined metadata will be here */
+ OMASA_SPATIAL_META_HANDLE hOMasaMeta /* i : ISM-object metadata to be merged with the MASA metadata */
);
/*! r: number of bits written */
void ivas_qmetadata_enc_sid_encode_fx(
- BSTR_ENC_HANDLE hMetaData, /* i/o: metadata bitstream handle */
- IVAS_QMETADATA *q_metadata, /* i/o: metadata handle */
- const Word16 masa_sid_descriptor, /* i : description of MASA SID coding structure*/
- const Word16 nchan_transport, /* i : number of transport channels */
- const Word16 ivas_format /* i : ivas format */
+ BSTR_ENC_HANDLE hMetaData, /* i/o: metadata bitstream handle */
+ IVAS_QMETADATA *q_metadata, /* i/o: metadata handle */
+ const Word16 masa_sid_descriptor, /* i : description of MASA SID coding structure*/
+ const Word16 nchan_transport, /* i : number of transport channels */
+ const Word16 ivas_format /* i : ivas format */
);
+
void ivas_param_mc_enc_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS Encoder handle */
- BSTR_ENC_HANDLE hMetaData, /* i/o: IVAS Metadata bitstream handle */
- Word32 *data_f_fx[], /* i/o: input/transport MC data Q11 */
- const Word16 input_frame /* i : input frame length */
+ Encoder_Struct *st_ivas, /* i/o: IVAS Encoder handle */
+ BSTR_ENC_HANDLE hMetaData, /* i/o: IVAS Metadata bitstream handle */
+ Word32 *data_f_fx[], /* i/o: input/transport MC data Q11 */
+ const Word16 input_frame /* i : input frame length */
);
void ivas_merge_masa_transports_fx(
@@ -3541,16 +3544,16 @@ void ivas_merge_masa_transports_fx(
);
void ivas_param_mc_enc_close_fx(
- PARAM_MC_ENC_HANDLE *hParamMC, /* i/o: Parametric MC encoder handle */
- const Word32 input_Fs /* i : input sampling rate */
+ PARAM_MC_ENC_HANDLE *hParamMC, /* i/o: Parametric MC encoder handle */
+ const Word32 input_Fs /* i : input sampling rate */
);
ivas_error ivas_param_mc_enc_open_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
);
ivas_error ivas_param_mc_enc_reconfig_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
);
Word16 ivas_arith_encode_cmplx_cell_array_fx(
@@ -3567,20 +3570,20 @@ Word16 ivas_arith_encode_cmplx_cell_array_fx(
);
ivas_error stereo_dmx_evs_init_encoder_fx(
- STEREO_DMX_EVS_ENC_HANDLE *hStereoDmxEVS_out, /* o : Stereo downmix for EVS encoder handle */
- const Word32 input_Fs /* i : input sampling rate */
+ STEREO_DMX_EVS_ENC_HANDLE *hStereoDmxEVS_out, /* o : Stereo downmix for EVS encoder handle */
+ const Word32 input_Fs /* i : input sampling rate */
);
void stereo_dmx_evs_enc_fx(
- STEREO_DMX_EVS_ENC_HANDLE hStereoDmxEVS, /* i/o: Stereo downmix for EVS encoder handle */
- const Word32 input_Fs, /* i : input sampling rate */
- Word16 data[CPE_CHANNELS * L_FRAME48k], /* i/o: input signal Q0 */
- const Word16 n_samples, /* i : number of input samples */
- const bool is_binaural /* i : indication that input is binaural audio */
+ STEREO_DMX_EVS_ENC_HANDLE hStereoDmxEVS, /* i/o: Stereo downmix for EVS encoder handle */
+ const Word32 input_Fs, /* i : input sampling rate */
+ Word16 data[CPE_CHANNELS * L_FRAME48k], /* i/o: input signal Q0 */
+ const Word16 n_samples, /* i : number of input samples */
+ const bool is_binaural /* i : indication that input is binaural audio */
);
void stereo_dmx_evs_close_encoder_fx(
- STEREO_DMX_EVS_ENC_HANDLE *hStereoDmxEVS /* i/o: Stereo downmix for EVS encoder handle */
+ STEREO_DMX_EVS_ENC_HANDLE *hStereoDmxEVS /* i/o: Stereo downmix for EVS encoder handle */
);
void ivas_omasa_encode_masa_to_total_fx(
@@ -3588,74 +3591,78 @@ void ivas_omasa_encode_masa_to_total_fx(
BSTR_ENC_HANDLE hMetaData,
const Word16 low_bitrate_mode,
const Word16 nbands,
- const Word16 nblocks );
+ const Word16 nblocks
+);
+
ivas_error ivas_masa_enc_config_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
);
+
ivas_error ivas_omasa_enc_config_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
);
void ivas_omasa_enc_close_fx(
- OMASA_ENC_HANDLE *hOMasa /* i/o: encoder OMASA handle */
+ OMASA_ENC_HANDLE *hOMasa /* i/o: encoder OMASA handle */
);
+
ivas_error ivas_omasa_enc_open_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
);
void ivas_masa_estimate_energy_fx(
- MASA_ENCODER_HANDLE hMasa, /* i/o: MASA encoder structure */
- Word32 *data_fx[], /* i : Input audio channels Q(q_data) */
- const Word16 input_frame, /* i : frame length */
- const Word16 nchan_transport, /* i : number of MASA input/transport channels */
- Word16 q_data /* i : q for data_fx */
+ MASA_ENCODER_HANDLE hMasa, /* i/o: MASA encoder structure */
+ Word32 *data_fx[], /* i : Input audio channels Q(q_data) */
+ const Word16 input_frame, /* i : frame length */
+ const Word16 nchan_transport, /* i : number of MASA input/transport channels */
+ Word16 q_data /* i : q for data_fx */
);
void ivas_masa_enc_reconfigure_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
);
ivas_error ivas_masa_encode_fx(
- MASA_ENCODER_HANDLE hMasa, /* i/o: MASA encoder structure */
- IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
- BSTR_ENC_HANDLE hMetaData, /* i/o: Metadata bitstream handle */
- Word16 *nb_bits_metadata, /* o : number of metadata bits written */
- const Word16 nchan_transport, /* i : number of MASA input/transport channels */
- const IVAS_FORMAT ivas_format, /* i : IVAS format */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word16 Opt_DTX_ON, /* i : DTX on flag */
- const Word16 element_mode, /* i : element mode */
- const ISM_MODE ism_mode, /* i : ISM format mode */
- const Word16 nchan_ism, /* i : number of ISM channels */
- ISM_METADATA_HANDLE hIsmMetaData[MAX_NUM_OBJECTS], /* i : ISM metadata handle */
- const Word16 idx_separated_object, /* i : index of the separated object */
- OMASA_ENC_HANDLE hOMasa, /* i : OMASA encoder handle */
- const Word16 ism_imp, /* i : importance of separated object */
- const Word16 flag_omasa_ener_brate /* i : less bitrate for objects in OMASA flag */
+ MASA_ENCODER_HANDLE hMasa, /* i/o: MASA encoder structure */
+ IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
+ BSTR_ENC_HANDLE hMetaData, /* i/o: Metadata bitstream handle */
+ Word16 *nb_bits_metadata, /* o : number of metadata bits written */
+ const Word16 nchan_transport, /* i : number of MASA input/transport channels */
+ const IVAS_FORMAT ivas_format, /* i : IVAS format */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word16 Opt_DTX_ON, /* i : DTX on flag */
+ const Word16 element_mode, /* i : element mode */
+ const ISM_MODE ism_mode, /* i : ISM format mode */
+ const Word16 nchan_ism, /* i : number of ISM channels */
+ ISM_METADATA_HANDLE hIsmMetaData[MAX_NUM_OBJECTS], /* i : ISM metadata handle */
+ const Word16 idx_separated_object, /* i : index of the separated object */
+ OMASA_ENC_HANDLE hOMasa, /* i : OMASA encoder handle */
+ const Word16 ism_imp, /* i : importance of separated object */
+ const Word16 flag_omasa_ener_brate /* i : less bitrate for objects in OMASA flag */
);
void ivas_write_format_sid_fx(
- const IVAS_FORMAT ivas_format, /* i : IVAS format */
- const Word16 element_mode, /* i : element bitrate */
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- const Word16 sba_order, /* i : Ambisonic (SBA) order */
- const Word16 sba_planar /* i : SBA planar flag */
+ const IVAS_FORMAT ivas_format, /* i : IVAS format */
+ const Word16 element_mode, /* i : element bitrate */
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ const Word16 sba_order, /* i : Ambisonic (SBA) order */
+ const Word16 sba_planar /* i : SBA planar flag */
);
void ivas_write_format_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
);
ivas_error create_sce_enc_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
- const Word16 sce_id, /* i : SCE # identifier */
- const Word32 element_brate /* i : element bitrate */
+ Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
+ const Word16 sce_id, /* i : SCE # identifier */
+ const Word32 element_brate /* i : element bitrate */
);
ivas_error create_cpe_enc_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
- const Word16 cpe_id, /* i : CPE # identifier */
- const Word32 element_brate /* i : element bitrate */
+ Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
+ const Word16 cpe_id, /* i : CPE # identifier */
+ const Word32 element_brate /* i : element bitrate */
);
void ivas_quantise_real_values_fx(
@@ -3665,7 +3672,8 @@ void ivas_quantise_real_values_fx(
const Word32 max_value_fx,
Word16 *index,
Word32 *quant_fx,
- const Word16 dim );
+ const Word16 dim
+);
void ivas_quantise_real_values_enc_fx(
const Word32 *values_fx, // Q28
@@ -3674,7 +3682,8 @@ void ivas_quantise_real_values_enc_fx(
const Word32 max_value_fx, // Q28
Word16 *index,
Word32 *quant_fx, // Q28
- const Word16 dim );
+ const Word16 dim
+);
void ivas_quantise_real_values_enc_fx_varq(
const Word32 *values_fx,
@@ -3684,110 +3693,111 @@ void ivas_quantise_real_values_enc_fx_varq(
Word16 *index,
Word32 *quant_fx,
const Word16 dim,
- Word16 inp_q );
+ Word16 inp_q
+);
void ivas_spar_quant_dtx_init_fx(
ivas_spar_md_t *spar_md,
- Word32 *min_max );
+ Word32 *min_max
+);
void ivas_spar_quant_dtx_init_fx(
ivas_spar_md_t *spar_md,
- Word32 *min_max );
+ Word32 *min_max
+);
void ivas_copy_band_coeffs_idx_to_arr(
ivas_band_coeffs_ind_t *pBands_idx,
const Word16 nB,
Word16 *pSymbol_re,
ivas_cell_dim_t *pCell_dims,
- const ivas_coeffs_type_t coeff_type );
+ const ivas_coeffs_type_t coeff_type
+);
void ivas_clear_band_coeffs_fx(
ivas_band_coeffs_t *pband_coeffs,
- const UWord16 num_bands );
+ const UWord16 num_bands
+);
Word16 ivas_qmetadata_DecodeExtendedGR(
UWord16 *bitstream,
Word16 *index,
const Word16 alph_size,
- const Word16 gr_param );
+ const Word16 gr_param
+);
void ivas_masa_combine_directions_fx(
- MASA_ENCODER_HANDLE hMasa /* i/o: MASA encoder handle */
+ MASA_ENCODER_HANDLE hMasa /* i/o: MASA encoder handle */
);
/*! r: Bits to be used for quantizing distribution ratio of direct-to-total ratios */
Word16 ivas_get_df_ratio_bits_hodirac_fx(
- const Word16 index_diff /* i : index of quantized diffuse-to-total ratio */
+ const Word16 index_diff /* i : index of quantized diffuse-to-total ratio */
);
/*! r: Bits to be used for quantizing distribution ratio of direct-to-total ratios */
Word16 ivas_get_df_ratio_bits_fx(
- const Word16 index_diff /* i : index of quantized diffuse-to-total ratio */
+ const Word16 index_diff /* i : index of quantized diffuse-to-total ratio */
);
void invdct4_transform_fx(
- Word32 *v_fx, /* i : input vector */
- UWord8 *invdct_v, /* o : transformed vector */
- Word16 q );
+ Word32 *v_fx, /* i : input vector */
+ UWord8 *invdct_v, /* o : transformed vector */
+ Word16 q
+);
void ivas_spar_param_to_masa_param_mapping_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder struct */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder struct */
Word32 inRe_fx[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /* i : Input audio in CLDFB domain, real */
Word32 inIm_fx[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /* i : Input audio in CLDFB domain, imag */
Word16 q_cldfb[6][CLDFB_SLOTS_PER_SUBFRAME],
- const Word16 subframe /* i : Subframe to map */
+ const Word16 subframe /* i : Subframe to map */
);
ivas_error ivas_binRenderer_open_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
void ivas_binRenderer_close_fx(
- BINAURAL_RENDERER_HANDLE *hBinRenderer /* i/o: decoder binaural renderer handle */
+ BINAURAL_RENDERER_HANDLE *hBinRenderer /* i/o: decoder binaural renderer handle */
);
void ivas_init_binaural_hrtf_fx(
- HRTFS_FASTCONV *HrtfFastConv /* i/o: FASTCONV HRTF structure */
+ HRTFS_FASTCONV *HrtfFastConv /* i/o: FASTCONV HRTF structure */
);
ivas_error ivas_allocate_binaural_hrtf_fx(
HRTFS_FASTCONV *HrtfFastConv, /* i/o: FASTCONV HRTF structure */
-#ifdef FIX_CREND_SIMPLIFY_CODE
const int16_t n_channels, /* i : number of input channels */
-#else
- const AUDIO_CONFIG input_config, /* i : input audio configuration */
- const BINAURAL_INPUT_AUDIO_CONFIG bin_input_config, /* i : binaural input audio config */
- const RENDERER_TYPE renderer_type, /* i : renderer type */
-#endif
const int16_t allocate_init_flag /* i : Memory allocation flag */
);
void ivas_binRenderer_fx(
- BINAURAL_RENDERER_HANDLE hBinRenderer, /* i/o: binaural renderer handle */
- const MULTI_BIN_REND_POSE_DATA *pMultiBinPoseData, /* i/o: pose correction data handle */
- COMBINED_ORIENTATION_HANDLE hCombinedOrientationData, /* i : combined head and external orientation handle*/
- const Word16 numTimeSlots, /* i : number of time slots to render */
+ BINAURAL_RENDERER_HANDLE hBinRenderer, /* i/o: binaural renderer handle */
+ const MULTI_BIN_REND_POSE_DATA *pMultiBinPoseData, /* i/o: pose correction data handle */
+ COMBINED_ORIENTATION_HANDLE hCombinedOrientationData, /* i : combined head and external orientation handle*/
+ const Word16 numTimeSlots, /* i : number of time slots to render */
Word32 Cldfb_RealBuffer_Binaural_fx[][BINAURAL_CHANNELS][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* o : Rotated Binaural signals */
Word32 Cldfb_ImagBuffer_Binaural_fx[][BINAURAL_CHANNELS][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* o : Rotated Binaural signals */
- Word32 RealBuffer_fx[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i : LS signals */
- Word32 ImagBuffer_fx[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i : LS signals */
- Word16 *Q_in /* i : LS signals exp */
+ Word32 RealBuffer_fx[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i : LS signals */
+ Word32 ImagBuffer_fx[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i : LS signals */
+ Word16 *Q_in /* i : LS signals exp */
);
void ivas_binaural_add_LFE_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- Word16 output_frame, /* i : length of input frame */
- Word32 *input_fx[], /* i : transport channels */
- Word32 *output_fx[] /* o : synthesized core-coder transport channels/DirAC output */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ Word16 output_frame, /* i : length of input frame */
+ Word32 *input_fx[], /* i : transport channels */
+ Word32 *output_fx[] /* o : synthesized core-coder transport channels/DirAC output */
);
void ivas_mc2sba_fx(
- IVAS_OUTPUT_SETUP hIntSetup, /* i : Format of decoder output */
- Word32 *in_buffer_td[], /* i : MC signals (on input) and the HOA3 (on output) */
- Word32 *buffer_td[], /* i/o: MC signals (on input) and the HOA3 (on output) */
- const Word16 output_frame, /* i : output frame length per channel */
- const Word16 sba_order, /* i : Ambisonic (SBA) order */
- const Word16 gain_lfe /* i : gain for LFE, 0 = ignore LFE */
+ IVAS_OUTPUT_SETUP hIntSetup, /* i : Format of decoder output */
+ Word32 *in_buffer_td[], /* i : MC signals (on input) and the HOA3 (on output) */
+ Word32 *buffer_td[], /* i/o: MC signals (on input) and the HOA3 (on output) */
+ const Word16 output_frame, /* i : output frame length per channel */
+ const Word16 sba_order, /* i : Ambisonic (SBA) order */
+ const Word16 gain_lfe /* i : gain for LFE, 0 = ignore LFE */
);
void ivas_param_mc_mc2sba_cldfb_fx(
@@ -3801,150 +3811,155 @@ void ivas_param_mc_mc2sba_cldfb_fx(
);
void ivas_ism2sba_sf_fx(
- Word32 *buffer_in_fx[], /* i : TC buffer */
- Word32 *buffer_out_fx[], /* o : TD signal buffers */
- ISM_RENDERER_HANDLE hIsmRendererData, /* i/o: renderer data */
- const Word16 num_objects, /* i : number of objects */
- const Word16 n_samples_to_render, /* i : output frame length per channel */
- const Word16 offset, /* i : offset for the interpolatr */
- const Word16 sba_order /* i : Ambisonic (SBA) order */
+ Word32 *buffer_in_fx[], /* i : TC buffer */
+ Word32 *buffer_out_fx[], /* o : TD signal buffers */
+ ISM_RENDERER_HANDLE hIsmRendererData, /* i/o: renderer data */
+ const Word16 num_objects, /* i : number of objects */
+ const Word16 n_samples_to_render, /* i : output frame length per channel */
+ const Word16 offset, /* i : offset for the interpolatr */
+ const Word16 sba_order /* i : Ambisonic (SBA) order */
);
void panning_wrap_angles_fx(
- const Word32 azi_deg, /* i : azimuth in degrees for panning direction (positive left) Q22 */
- const Word32 ele_deg, /* i : elevation in degrees for panning direction (positive up) Q22 */
- Word32 *azi_wrapped, /* o : wrapped azimuth component Q22 */
- Word32 *ele_wrapped /* o : wrapped elevation component Q22 */
+ const Word32 azi_deg, /* i : azimuth in degrees for panning direction (positive left) Q22 */
+ const Word32 ele_deg, /* i : elevation in degrees for panning direction (positive up) Q22 */
+ Word32 *azi_wrapped, /* o : wrapped azimuth component Q22 */
+ Word32 *ele_wrapped /* o : wrapped elevation component Q22 */
);
-void v_sort_ind_fixed(
- Word32 *x, /* i/o: Vector to be sorted */
- Word16 *idx, /* o : Original index positions */
- const Word16 len /* i : vector length */
+void v_sort_ind_fx(
+ Word32 *x, /* i/o: Vector to be sorted */
+ Word16 *idx, /* o : Original index positions */
+ const Word16 len /* i : vector length */
);
void ivas_ls_setup_conversion_process_mdct_param_mc_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- Word32 *x_fx[][NB_DIV], /* i/o: Fixed output synthesis signal */
- Word16 x_e[CPE_CHANNELS][NB_DIV] /* i/o: Exponent for output synthesis signal */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ Word32 *x_fx[][NB_DIV], /* i/o: Fixed output synthesis signal */
+ Word16 x_e[CPE_CHANNELS][NB_DIV] /* i/o: Exponent for output synthesis signal */
);
void lls_interp_n_fx(
- Word16 x_fx[], /* i/o: input/output vector */
- const Word16 N, /* i : length of the input vector */
- Word16 *a_fx, /* o : calculated slope */
- Word16 *b_fx, /* o : calculated offset */
- const Word16 upd /* i : use 1 to update x[] with the interpolated output */
+ Word16 x_fx[], /* i/o: input/output vector */
+ const Word16 N, /* i : length of the input vector */
+ Word16 *a_fx, /* o : calculated slope */
+ Word16 *b_fx, /* o : calculated offset */
+ const Word16 upd /* i : use 1 to update x[] with the interpolated output*/
);
void ivas_lfe_synth_with_filters_fx(
- MCMASA_LFE_SYNTH_DATA_HANDLE hMasaLfeSynth, /* i/o: LFE synthesis structure for McMASA */
- Word32 *data_f[], /* o : output signals */
- const Word16 output_frame, /* i : output frame length per channel */
- const Word16 separateChannelIndex, /* i : separate channel index */
- const Word16 lfeChannelIndex /* i : LFE channel index */
+ MCMASA_LFE_SYNTH_DATA_HANDLE hMasaLfeSynth, /* i/o: LFE synthesis structure for McMASA */
+ Word32 *data_f[], /* o : output signals */
+ const Word16 output_frame, /* i : output frame length per channel */
+ const Word16 separateChannelIndex, /* i : separate channel index */
+ const Word16 lfeChannelIndex /* i : LFE channel index */
);
void ivas_lfe_enc_fx(
- LFE_ENC_HANDLE hLFE, /* i/o: LFE encoder handle */
- Word32 data_lfe_ch[], /* i : input LFE signal */
- Word16 q_data_lfe_ch, /* i : Q of input LFE signal */
- const Word16 input_frame, /* i : input frame length per channel */
- BSTR_ENC_HANDLE hBstr /* i/o: bitstream handle */
+ LFE_ENC_HANDLE hLFE, /* i/o: LFE encoder handle */
+ Word32 data_lfe_ch[], /* i : input LFE signal */
+ Word16 q_data_lfe_ch, /* i : Q of input LFE signal */
+ const Word16 input_frame, /* i : input frame length per channel */
+ BSTR_ENC_HANDLE hBstr /* i/o: bitstream handle */
);
void ivas_filter_process_fx(
- ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
- Word32 *pIn_Out_fx, /* i : signal subject to filtering */
- const Word16 length, /* i : filter order */
- Word16 q_factor );
+ ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
+ Word32 *pIn_Out_fx, /* i : signal subject to filtering */
+ const Word16 length, /* i : filter order */
+ Word16 q_factor
+);
void ivas_filter_process_exp_fx(
- ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
- Word32 *pIn_Out_fx, /* i/o: signal subject to filtering (exp[i] : pIn_out_e[i]) */
- const Word16 length, /* i : filter order */
- Word16 *pIn_Out_e );
+ ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
+ Word32 *pIn_Out_fx, /* i/o: signal subject to filtering (exp[i] : pIn_out_e[i]) */
+ const Word16 length, /* i : filter order */
+ Word16 *pIn_Out_e
+);
ivas_error ivas_osba_enc_open_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
);
void ivas_osba_enc_close_fx(
- OSBA_ENC_HANDLE *hOSba /* i/o: encoder OSBA handle */
+ OSBA_ENC_HANDLE *hOSba /* i/o: encoder OSBA handle */
);
void ivas_osba_enc_fx(
- OSBA_ENC_HANDLE hOSba, /* i/o: OSBA encoder handle */
- ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handle */
- Word32 *data_in_fx[], /* i/o: Input / transport audio signals */
- const Word16 input_frame, /* i : Input frame size */
- const Word16 nchan_ism, /* i : Number of objects for parameter analysis */
- const ISM_MODE ism_mode, /* i : ISM mode */
- const Word16 sba_analysis_order, /* i : SBA order evaluated in DirAC/SPAR encoder */
- const Word32 input_Fs, /* i : input sampling rate */
- const Word16 sba_planar, /* i : planar SBA flag */
- Word16 *q_data );
+ OSBA_ENC_HANDLE hOSba, /* i/o: OSBA encoder handle */
+ ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handle */
+ Word32 *data_in_fx[], /* i/o: Input / transport audio signals */
+ const Word16 input_frame, /* i : Input frame size */
+ const Word16 nchan_ism, /* i : Number of objects for parameter analysis */
+ const ISM_MODE ism_mode, /* i : ISM mode */
+ const Word16 sba_analysis_order, /* i : SBA order evaluated in DirAC/SPAR encoder */
+ const Word32 input_Fs, /* i : input sampling rate */
+ const Word16 sba_planar, /* i : planar SBA flag */
+ Word16 *q_data
+);
ivas_error ivas_osba_data_open_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder handle */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder handle */
);
+
ivas_error ivas_osba_dirac_td_binaural_jbm_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
- UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
- UWord16 *nSamplesAvailable, /* o : number of CLDFB slots still to render */
- Word32 *output_fx[] /* o : rendered time signal */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
+ UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
+ UWord16 *nSamplesAvailable, /* o : number of CLDFB slots still to render */
+ Word32 *output_fx[] /* o : rendered time signal */
);
ivas_error ivas_osba_ism_metadata_dec_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word32 ism_total_brate, /* i : ISM total bitrate */
- Word16 *nchan_ism, /* o : number of ISM separated channels */
- Word16 nb_bits_metadata[] /* o : number of ISM metadata bits */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const Word32 ism_total_brate, /* i : ISM total bitrate */
+ Word16 *nchan_ism, /* o : number of ISM separated channels */
+ Word16 nb_bits_metadata[] /* o : number of ISM metadata bits */
);
ivas_error ivas_osba_render_sf_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
- UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
- UWord16 *nSamplesAvailableNext, /* o : number of CLDFB slots still to render */
- Word32 *p_output[] /* o : rendered time signal */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
+ UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
+ UWord16 *nSamplesAvailableNext, /* o : number of CLDFB slots still to render */
+ Word32 *p_output[] /* o : rendered time signal */
);
void ivas_osba_stereo_add_channels_fx(
- Word32 *tc_fx[], /* i : transport channels */
- Word32 *output_fx[], /* i/o: output channels */
- const Word16 gain, /* i : gain bed value Q11 */
- const Word16 nchan_out, /* i : number of output channels */
- const Word16 nchan_ism, /* i : number of ISM channels */
- const UWord16 n_samples_to_render /* i : output frame length per channel */
+ Word32 *tc_fx[], /* i : transport channels */
+ Word32 *output_fx[], /* i/o: output channels */
+ const Word32 gain_bed_fx, /* i : gain bed value Q11 */
+ const Word16 nchan_out, /* i : number of output channels */
+ const Word16 nchan_ism, /* i : number of ISM channels */
+ const Word16 ism_mode, /* i : ISM mode */
+ const UWord16 n_samples_to_render /* i : output frame length per channel */
);
void ivas_osba_data_close_fx(
- SBA_ISM_DATA_HANDLE *hSbaIsmData /* i/o: OSBA rendering handle */
+ SBA_ISM_DATA_HANDLE *hSbaIsmData /* i/o: OSBA rendering handle */
);
ISM_MODE ivas_osba_ism_mode_select(
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word16 nchan_ism /* i : number of input ISM's */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word16 nchan_ism /* i : number of input ISM's */
);
void ivas_set_ism_importance_interformat_fx(
- const Word32 ism_total_brate, /* i/o: ISms total bitrate */
- const Word16 nchan_transport, /* i : number of transported channels */
- ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
- SCE_ENC_HANDLE hSCE[], /* i/o: SCE encoder handles */
- const Word16 lp_noise_CPE_fx, /* i : LP filtered total noise estimation */
- Word16 ism_imp[] /* o : ISM importance flags */
+ const Word32 ism_total_brate, /* i/o: ISms total bitrate */
+ const Word16 nchan_transport, /* i : number of transported channels */
+ ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
+ SCE_ENC_HANDLE hSCE[], /* i/o: SCE encoder handles */
+ const Word16 lp_noise_CPE_fx, /* i : LP filtered total noise estimation */
+ Word16 ism_imp[] /* o : ISM importance flags */
);
-
-void ivas_omasa_preProcessStereoTransportsForMovedObjects_fx(
+void ivas_omasa_preProcessStereoTransportsForEditedObjects_fx(
Decoder_Struct *st_ivas,
Word32 inRe_fx[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /*cldfb_buf_q*/
Word32 inIm_fx[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /*cldfb_buf_q*/
Word16 *cldfb_buf_q,
const Word16 nBins,
- const Word16 subframe );
+ const Word16 subframe
+);
void ivas_omasa_decode_masa_to_total_fx(
@@ -3952,7 +3967,8 @@ void ivas_omasa_decode_masa_to_total_fx(
Word16 *index,
Word32 masa_to_total_energy_ratio_fx[MAX_PARAM_SPATIAL_SUBFRAMES][MASA_FREQUENCY_BANDS],
const Word16 nbands,
- const Word16 nblocks );
+ const Word16 nblocks
+);
/*----------------------------------------------------------------------------------*
@@ -3960,15 +3976,15 @@ void ivas_omasa_decode_masa_to_total_fx(
*----------------------------------------------------------------------------------*/
ivas_error ivas_td_binaural_open_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
Word16 *SrcInd, /*Temporarily used to store the updated value of SrcInd*/
Word16 *num_src
);
ivas_error ivas_td_binaural_renderer_sf_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- Word32 *output_fx[], /* i/o: SCE channels / Binaural synthesis */
- const Word16 n_samples_granularity /* i : granularity of the renderer/buffer */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ Word32 *output_fx[], /* i/o: SCE channels / Binaural synthesis */
+ const Word16 n_samples_granularity /* i : granularity of the renderer/buffer */
);
@@ -3977,49 +3993,50 @@ ivas_error ivas_td_binaural_renderer_sf_fx(
*----------------------------------------------------------------------------------*/
void ivas_FB_mixer_close_fx(
- IVAS_FB_MIXER_HANDLE *hFbMixer, /* i/o: FB mixer handle */
- const Word32 sampling_rate, /* i : sampling rate in Hz */
- const Word16 spar_reconfig_flag /* i : SPAR reconfiguration flag */
+ IVAS_FB_MIXER_HANDLE *hFbMixer, /* i/o: FB mixer handle */
+ const Word32 sampling_rate, /* i : sampling rate in Hz */
+ const Word16 spar_reconfig_flag /* i : SPAR reconfiguration flag */
);
void ivas_fb_mixer_pcm_ingest_fx(
- IVAS_FB_MIXER_HANDLE hFbMixer, /* i/o: FB mixer handle */
- Word32 *pcm_in[], /* i : input audio channels Qq_data_fix[] */
- Word32 **ppOut_pcm, /* o : output audio channels Qq_ppOut_pcm[] */
- const Word16 frame_len, /* i : frame length */
+ IVAS_FB_MIXER_HANDLE hFbMixer, /* i/o: FB mixer handle */
+ Word32 *pcm_in[], /* i : input audio channels Qq_data_fix[] */
+ Word32 **ppOut_pcm, /* o : output audio channels Qq_ppOut_pcm[] */
+ const Word16 frame_len, /* i : frame length */
const Word16 HOA_md_ind[IVAS_SPAR_MAX_CH],
Word16 q_data_fix,
- Word16 *q_ppOut_pcm );
+ Word16 *q_ppOut_pcm
+);
void ivas_fb_mixer_process_fx(
- IVAS_FB_MIXER_HANDLE hFbMixer, /* i/o: FB mixer handle */
- Word32 ***mixer_mat_fx, /* i : mixer matrix */
- Word16 *q_mixer_mat_fx, /* i : mixer matrix Q-factor */
- Word32 **ppOut_pcm_fx, /* o : output audio channels */
- Word16 *q_ppOut_pcm_fx, /* o : output audio channels Q-factor */
- const Word16 frame_len, /* i : frame length in samples */
+ IVAS_FB_MIXER_HANDLE hFbMixer, /* i/o: FB mixer handle */
+ Word32 ***mixer_mat_fx, /* i : mixer matrix */
+ Word16 *q_mixer_mat_fx, /* i : mixer matrix Q-factor */
+ Word32 **ppOut_pcm_fx, /* o : output audio channels */
+ Word16 *q_ppOut_pcm_fx, /* o : output audio channels Q-factor */
+ const Word16 frame_len, /* i : frame length in samples */
Word16 in_out_mixer_map[IVAS_MAX_FB_MIXER_OUT_CH][IVAS_MAX_SPAR_FB_MIXER_IN_CH] /* i/o: mixing mapping */
);
Word16 ivas_get_num_bands_from_bw_idx(
- const Word16 bwidth /* i : audio bandwidth */
+ const Word16 bwidth /* i : audio bandwidth */
);
void sns_avq_dec_fx(
- Word16 *index, /* i : Quantization indices */
- Word32 SNS_Q[NB_DIV][M], /* o : Quantized SNS vectors */
+ Word16 *index, /* i : Quantization indices */
+ Word32 SNS_Q[NB_DIV][M], /* o : Quantized SNS vectors */
Word16 *q_snsq,
- const Word16 L_frame, /* i : frame length */
- const Word16 numlpc /* i : Number of sets of lpc */
+ const Word16 L_frame, /* i : frame length */
+ const Word16 numlpc /* i : Number of sets of lpc */
);
void sns_avq_dec_stereo_fx(
- Word16 *indexl, /* i : Quantization indices (left channel) */
- Word16 *indexr, /* i : Quantization indices (right channe) */
- const Word16 L_frame, /* i : frame length */
- Word32 *SNS_Ql, /* o : Quantized SNS vectors (left channel) */
+ Word16 *indexl, /* i : Quantization indices (left channel) */
+ Word16 *indexr, /* i : Quantization indices (right channe) */
+ const Word16 L_frame, /* i : frame length */
+ Word32 *SNS_Ql, /* o : Quantized SNS vectors (left channel) */
Word16 *q_l,
- Word32 *SNS_Qr, /* o : Quantized SNS vectors (right channe) */
+ Word32 *SNS_Qr, /* o : Quantized SNS vectors (right channe) */
Word16 *q_r
);
@@ -4030,150 +4047,144 @@ void dequantize_sns_fx(
);
void inverseMS_fx(
- const Word16 L_frame, /* i : frame length Q0*/
- Word32 x0[], /* i/o: mid/left channel coefficients Qx*/
- Word32 x1[], /* i/o: side/right channel coefficients Qx*/
- const Word32 norm_fac /* i : normalization factor Q31*/
+ const Word16 L_frame, /* i : frame length Q0*/
+ Word32 x0[], /* i/o: mid/left channel coefficients Qx*/
+ Word32 x1[], /* i/o: side/right channel coefficients Qx*/
+ const Word32 norm_fac /* i : normalization factor Q31*/
);
void ivas_syn_output_f_fx(
- Word32 *synth[], /* i/o: Word32 synthesis signal */
- const Word16 output_frame, /* i : output frame length (one channel) */
- const Word16 n_channels, /* i : number of output channels */
- Word32 *synth_out /* o : integer 16 bits synthesis signal */
+ Word32 *synth[], /* i/o: Word32 synthesis signal */
+ const Word16 output_frame, /* i : output frame length (one channel) */
+ const Word16 n_channels, /* i : number of output channels */
+ Word32 *synth_out /* o : integer 16 bits synthesis signal */
);
ivas_error ivas_init_encoder_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
);
ivas_error ivas_output_buff_dec_fx(
- Word32 *p_output_f[], /* i/o: output audio buffers */
- const Word16 nchan_out_buff_old, /* i : previous frame number of output channels */
- const Word16 nchan_out_buff /* i : number of output channels */
+ Word32 *p_output_fx[], /* i/o: output audio buffers */
+ const Word16 nchan_out_buff_old, /* i : previous frame number of output channels */
+ const Word16 nchan_out_buff /* i : number of output channels */
);
ivas_error ivas_dec_get_format_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
ivas_error ivas_dec_setup(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord16 *nSamplesRendered, /* o : number of samples flushed from the previous frame (JBM) */
- Word16 *data /* o : output synthesis signal */
-#endif
);
ivas_error create_mct_dec_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
ivas_error mct_dec_reconfigure_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const UWord16 b_nchan_change /* i : flag indicating different channel count */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const UWord16 b_nchan_change /* i : flag indicating different channel count */
);
ivas_error ivas_corecoder_dec_reconfig_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 nSCE_old, /* i : number of SCEs in previous frame */
- Word16 nCPE_old, /* i : number of CPEs in previous frame */
- const Word16 nchan_transport_old, /* i : number of TCs in previous frame */
- const Word16 sba_dirac_stereo_flag_old, /* i : signal stereo rendering using DFT upmix in previous frame */
- const Word32 brate_SCE, /* i : bitrate to be set for the SCEs */
- const Word32 brate_CPE /* i : bitrate to be set for the CPEs */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const Word16 nSCE_old, /* i : number of SCEs in previous frame */
+ Word16 nCPE_old, /* i : number of CPEs in previous frame */
+ const Word16 nchan_transport_old, /* i : number of TCs in previous frame */
+ const Word16 sba_dirac_stereo_flag_old, /* i : signal stereo rendering using DFT upmix in previous frame */
+ const Word32 brate_SCE, /* i : bitrate to be set for the SCEs */
+ const Word32 brate_CPE /* i : bitrate to be set for the CPEs */
);
ivas_error ivas_hp20_dec_reconfig_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 nchan_hp20_old /* i : number of HP20 filters in previous frame*/
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const Word16 nchan_hp20_old /* i : number of HP20 filters in previous frame */
);
Word16 getNumChanSynthesis(
- Decoder_Struct *st_ivas /* i : IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i : IVAS decoder structure */
);
void ivas_destroy_dec_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
ivas_error ivas_core_dec_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- SCE_DEC_HANDLE hSCE, /* i/o: SCE decoder structure */
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- MCT_DEC_HANDLE hMCT, /* i/o: MCT decoder structure */
- const Word16 n_channels, /* i : number of channels to be decoded */
- Word32 *output_fx[], /* o : output synthesis signal */
- Word32 outputHB[][L_FRAME48k], /* o : output HB synthesis signal */
- Word32 DFT_fx[CPE_CHANNELS][STEREO_DFT_BUF_MAX], /* o : DFT buffers */
- const Word16 sba_dirac_stereo_flag /* i : signal stereo output for SBA DirAC */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ SCE_DEC_HANDLE hSCE, /* i/o: SCE decoder structure */
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ MCT_DEC_HANDLE hMCT, /* i/o: MCT decoder structure */
+ const Word16 n_channels, /* i : number of channels to be decoded */
+ Word32 *output_fx[], /* o : output synthesis signal */
+ Word32 outputHB[][L_FRAME48k], /* o : output HB synthesis signal */
+ Word32 DFT_fx[CPE_CHANNELS][STEREO_DFT_BUF_MAX], /* o : DFT buffers */
+ const Word16 sba_dirac_stereo_flag /* i : signal stereo output for SBA DirAC */
);
void decod_gen_2sbfr_fx(
- Decoder_State *st, /* i/o: decoder static memory */
- const Word16 sharpFlag, /* i : formant sharpening flag `Q0*/
- const Word16 *Aq, /* i : LP filter coefficient Q12*/
- Word16 *pitch_buf, /* o : Word16 pitch values for each subframe Q6*/
- Word16 *voice_factors, /* o : voicing factors Q15*/
- Word16 *exc, /* i/o: adapt. excitation exc Q_exc*/
- Word16 *exc2, /* i/o: adapt. excitation/total exc Q_exc*/
- Word16 *bwe_exc, /* o : excitation for SWB TBE Q_exc*/
- Word16 *gain_buf, /* o : Word16 pitch gain for each subframe Q14*/
- const Word16 tdm_Pitch_reuse_flag, /* i : primary channel pitch reuse flag Q0*/
- const Word16 tdm_Pri_pitch_buf[] /* i : pitch values for primary channel Q6*/
+ Decoder_State *st, /* i/o: decoder static memory */
+ const Word16 sharpFlag, /* i : formant sharpening flag Q0*/
+ const Word16 *Aq, /* i : LP filter coefficient Q12*/
+ Word16 *pitch_buf, /* o : Word16 pitch values for each subframe Q6*/
+ Word16 *voice_factors, /* o : voicing factors Q15*/
+ Word16 *exc, /* i/o: adapt. excitation exc Q_exc*/
+ Word16 *exc2, /* i/o: adapt. excitation/total exc Q_exc*/
+ Word16 *bwe_exc, /* o : excitation for SWB TBE Q_exc*/
+ Word16 *gain_buf, /* o : Word16 pitch gain for each subframe Q14*/
+ const Word16 tdm_Pitch_reuse_flag, /* i : primary channel pitch reuse flag Q0*/
+ const Word16 tdm_Pri_pitch_buf[] /* i : pitch values for primary channe Q6*/
);
Word16 ivas_smc_gmm_fx(
- Encoder_State *st, /* i/o: state structure */
- STEREO_CLASSIF_HANDLE hStereoClassif, /* i/o: stereo classifier structure */
- const Word16 localVAD_HE_SAD, /* i : HE-SAD flag without hangover */
- const Word16 Etot_fx, /* i : total frame energy */
- const Word16 lsp_new_fx[M], /* i : LSPs in current frame Q15 */
- const Word16 cor_map_sum_fx, /* i : correlation map sum (from multi-harmonic anal.) Q8 */
- const Word32 epsP_fx[M + 1], /* i : LP prediciton error */
- const Word32 PS_fx[], /* i : energy spectrum */
- const Word32 non_sta_fx, /* i : unbound non-stationarity Q20 */
- const Word16 relE_fx, /* i : relative frame energy Q8 */
- Word16 *high_lpn_flag, /* i/o: sp/mus LPN flag */
- const Word16 flag_spitch, /* i : flag to indicate very short stable pitch */
+ Encoder_State *st, /* i/o: state structure */
+ STEREO_CLASSIF_HANDLE hStereoClassif, /* i/o: stereo classifier structure */
+ const Word16 localVAD_HE_SAD, /* i : HE-SAD flag without hangover */
+ const Word16 Etot_fx, /* i : total frame energy */
+ const Word16 lsp_new_fx[M], /* i : LSPs in current frame Q15 */
+ const Word16 cor_map_sum_fx, /* i : correlation map sum (from multi-harmonic anal.) Q8 */
+ const Word32 epsP_fx[M + 1], /* i : LP prediciton error */
+ const Word32 PS_fx[], /* i : energy spectrum */
+ const Word32 non_sta_fx, /* i : unbound non-stationarity Q20 */
+ const Word16 relE_fx, /* i : relative frame energy Q8 */
+ Word16 *high_lpn_flag, /* i/o: sp/mus LPN flag */
+ const Word16 flag_spitch, /* i : flag to indicate very short stable pitch */
Word16 Qfact_PS,
Word16 Q_esp,
Word16 Qfact_PS_past
);
void ivas_signaling_enc_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0) */
- const Word32 element_brate, /* i : element bitrate */
- const Word16 tdm_SM_or_LRTD_Pri, /* i : channel combination scheme flag in TD stereo OR LRTD primary channel */
- const Word16 tdm_Pitch_reuse_flag /* i : primary channel pitch reuse flag in TD stereo */
+ Encoder_State *st, /* i/o: encoder state structure */
+ const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0) */
+ const Word32 element_brate, /* i : element bitrate */
+ const Word16 tdm_SM_or_LRTD_Pri, /* i : channel combination scheme flag in TD stereo OR LRTD primary channel */
+ const Word16 tdm_Pitch_reuse_flag /* i : primary channel pitch reuse flag in TD stereo */
);
void smooth_dft2td_transition_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word32 *output_fx[CPE_CHANNELS], /* i/o: synthesis @external Fs Q11*/
- const Word16 output_frame /* i : output frame lenght Q0*/
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word32 *output_fx[CPE_CHANNELS], /* i/o: synthesis @external Fs Q11*/
+ const Word16 output_frame /* i : output frame lenght Q0*/
);
-
Word16 is_IVAS_bitrate_fx(
- const Word32 ivas_total_brate /* i : IVAS total bitrate */
+ const Word32 ivas_total_brate /* i : IVAS total bitrate */
);
void ivas_mdft_fx(
- const Word32 *pIn, /* i : input time-domain signal Qin */
- Word32 *pOut_re, /* o : Real part of MDFT signal Qin */
- Word32 *pOut_im, /* o : Imag. part of MDFT signal Qin */
- const Word16 length, /* i : signal length */
- const Word16 mdft_length /* i : MDFT length */
+ const Word32 *pIn, /* i : input time-domain signal Qin */
+ Word32 *pOut_re, /* o : Real part of MDFT signal Qin */
+ Word32 *pOut_im, /* o : Imag. part of MDFT signal Qin */
+ const Word16 length, /* i : signal length */
+ const Word16 mdft_length /* i : MDFT length */
);
void ivas_imdft_fx(
- const Word32 *pRe, /* i : Real part of MDFT signal Qin */
- const Word32 *pIm, /* i : Imag. part of MDFT signal Qin */
- Word32 *pOut, /* o : output time-domain signal Qin */
- const Word16 length /* i : signal length */
+ const Word32 *pRe, /* i : Real part of MDFT signal Qin */
+ const Word32 *pIm, /* i : Imag. part of MDFT signal Qin */
+ Word32 *pOut, /* o : output time-domain signal Qin */
+ const Word16 length /* i : signal length */
);
void TonalMdctConceal_create_concealment_noise_ivas_fx(
@@ -4195,225 +4206,214 @@ Word16 rand_triangular_signed_fx(
);
Word64 var_32_fx(
- const Word32 *x, /* i : input vector */
- const Word16 len, /* i : length of inputvector */
- Word16 q /* q : q-factor for the array */
+ const Word32 *x, /* i : input vector */
+ const Word16 len, /* i : length of inputvector */
+ Word16 q /* q : q-factor for the array */
);
ivas_error ivas_jbm_dec_tc_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+#ifndef LIB_DEC_REVISION
+ ,
Word32 *data_fx
+#endif
);
ivas_error ivas_jbm_dec_flush_renderer_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 tc_granularity_new, /* i : new renderer granularity */
- const RENDERER_TYPE renderer_type_old, /* i : old renderer type */
- const AUDIO_CONFIG intern_config_old, /* i : old internal config */
- const IVAS_OUTPUT_SETUP_HANDLE hIntSetupOld, /* i : old internal output setup */
- const MC_MODE mc_mode_old, /* i : old MC mode */
- const ISM_MODE ism_mode_old, /* i : old ISM mode */
- UWord16 *nSamplesRendered, /* o : number of samples flushed */
- Word16 *data /* o : output synthesis signal */
-);
-
-void ivas_jbm_dec_feed_tc_to_renderer_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 nSamplesForRendering, /* i : number of TC samples available for rendering */
- Word16 *nSamplesResidual, /* o : number of samples not fitting into the renderer grid and buffer for the next call*/
- Word32 *data /* i/o: transport channels/output synthesis signal */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const Word16 tc_granularity_new, /* i : new renderer granularity */
+ const RENDERER_TYPE renderer_type_old, /* i : old renderer type */
+ const AUDIO_CONFIG intern_config_old, /* i : old internal config */
+ const IVAS_OUTPUT_SETUP_HANDLE hIntSetupOld, /* i : old internal output setup */
+ const MC_MODE mc_mode_old, /* i : old MC mode */
+ const ISM_MODE ism_mode_old, /* i : old ISM mode */
+ UWord16 *nSamplesRendered, /* o : number of samples flushed */
+ Word16 *data /* o : output synthesis signal */
);
void ivas_jbm_dec_feed_tc_to_renderer_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 nSamplesForRendering, /* i : number of TC samples available for rendering */
- Word16 *nSamplesResidual, /* o : number of samples not fitting into the renderer grid and buffer for the next call*/
- Word32 *data /* i/o: transport channels/output synthesis signal */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const Word16 nSamplesForRendering, /* i : number of TC samples available for rendering */
+ Word16 *nSamplesResidual, /* o : number of samples not fitting into the renderer grid and buffer for the next call*/
+ Word32 *data_fx /* i/o: transport channels/output synthesis signal */
);
-#ifdef OBJ_EDITING_API
-void ivas_jbm_dec_prepare_renderer(
+void ivas_dec_prepare_renderer_fx(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
-#endif
void ivas_jbm_dec_get_adapted_subframes(
- const Word16 nCldfbTs, /* i : number of time slots in the current frame */
- Word16 *subframe_nbslots, /* i/o: subframe grid */
- Word16 *nb_subframes /* i/o: number of subframes in the frame */
+ const Word16 nCldfbTs, /* i : number of time slots in the current frame */
+ Word16 *subframe_nbslots, /* i/o: subframe grid */
+ Word16 *nb_subframes /* i/o: number of subframes in the frame */
);
void ivas_jbm_dec_get_md_map(
- const Word16 default_len, /* i : default frame length in metadata slots */
- const Word16 len, /* i : length of the modfied frames in metadata slots */
- const Word16 subframe_len, /* i : default length of a subframe */
- const Word16 offset, /* i : current read offset into the md buffer */
- const Word16 buf_len, /* i : length of the metadata buffer */
- Word16 *map /* o : metadata index map */
+ const Word16 default_len, /* i : default frame length in metadata slots */
+ const Word16 len, /* i : length of the modfied frames in metadata slots */
+ const Word16 subframe_len, /* i : default length of a subframe */
+ const Word16 offset, /* i : current read offset into the md buffer */
+ const Word16 buf_len, /* i : length of the metadata buffer */
+ Word16 *map /* o : metadata index map */
);
void ivas_jbm_dec_get_md_map_even_spacing(
- const Word16 len, /* i : length of the modfied frames in metadata slots */
- const Word16 subframe_len, /* i : default length of a subframe */
- const Word16 offset, /* i : current read offset into the md buffer */
- const Word16 buf_len, /* i : length of the metadata buffer */
- Word16 *map /* o : metadata index map */
+ const Word16 len, /* i : length of the modfied frames in metadata slots */
+ const Word16 subframe_len, /* i : default length of a subframe */
+ const Word16 offset, /* i : current read offset into the md buffer */
+ const Word16 buf_len, /* i : length of the metadata buffer */
+ Word16 *map /* o : metadata index map */
);
void bitbudget_to_brate(
- const Word16 x[], /* i : bitbudgets */
- Word32 y[], /* o : bitrates */
- const Word16 N /* i : number of entries to be converted */
+ const Word16 x[], /* i : bitbudgets */
+ Word32 y[], /* o : bitrates */
+ const Word16 N /* i : number of entries to be converted */
);
Word16 ism_quant_meta_fx(
- const Word32 val, /* i : scalar value to quantize */
- Word32 *valQ, /* o : quantized value */
- const Word32 borders_fx[], /* i : level borders */
- const Word32 q_step_fx, /* i : quantization step */
- const Word32 q_step_border_fx, /* i : quantization step at the border */
- const Word16 cbsize /* i : codebook size */
+ const Word32 val, /* i : scalar value to quantize */
+ Word32 *valQ, /* o : quantized value */
+ const Word32 borders_fx[], /* i : level borders */
+ const Word32 q_step_fx, /* i : quantization step */
+ const Word32 q_step_border_fx, /* i : quantization step at the border */
+ const Word16 cbsize /* i : codebook size */
);
ivas_error ivas_set_ism_metadata_fx(
- ISM_METADATA_HANDLE hIsmMeta, /* o : ISM metadata handle */
- const Word32 azimuth, /* i : azimuth value */
- const Word32 elevation, /* i : elevation value */
- const Word16 radius_meta, /* i : radius */
- const Word32 yaw, /* i : yaw */
- const Word32 pitch, /* i : pitch */
- const Word16 non_diegetic_flag /* i : non-diegetic object flag */
+ ISM_METADATA_HANDLE hIsmMeta, /* o : ISM metadata handle */
+ const Word32 azimuth, /* i : azimuth value */
+ const Word32 elevation, /* i : elevation value */
+ const Word16 radius_meta, /* i : radius */
+ const Word32 yaw, /* i : yaw */
+ const Word32 pitch, /* i : pitch */
+ const Word16 non_diegetic_flag /* i : non-diegetic object flag */
);
ivas_error ivas_ism_metadata_enc_fx(
- Word32 *ism_total_brate, /* i/o: ISM total bitrate */
- const Word16 nchan_ism, /* i : number of ISM channels */
- const Word16 nchan_transport, /* i : number of transport channels */
- ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
- SCE_ENC_HANDLE hSCE[], /* i/o: SCE encoder handles */
- BSTR_ENC_HANDLE hBstr, /* i/o: bitstream handle */
- Word16 nb_bits_metadata[], /* o : number of metadata bits */
- const Word16 localVAD[], /* i : VAD flag */
- const Word16 ism_mode, /* i : ISM mode */
- const PARAM_ISM_CONFIG_HANDLE hParamIsm, /* i : Param ISM Config Handle */
- const Word16 ism_extended_metadata_flag, /* i : Extended metadata flag */
- const Word16 lp_noise_CPE, /* i : LP filtered total noise estimation */
- const Word16 flag_omasa_ener_brate, /* i : less bitrate for objects in OMASA flag */
+ Word32 *ism_total_brate, /* i/o: ISM total bitrate */
+ const Word16 nchan_ism, /* i : number of ISM channels */
+ const Word16 nchan_transport, /* i : number of transport channels */
+ ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
+ SCE_ENC_HANDLE hSCE[], /* i/o: SCE encoder handles */
+ BSTR_ENC_HANDLE hBstr, /* i/o: bitstream handle */
+ Word16 nb_bits_metadata[], /* o : number of metadata bits */
+ const Word16 localVAD[], /* i : VAD flag */
+ const Word16 ism_mode, /* i : ISM mode */
+ const PARAM_ISM_CONFIG_HANDLE hParamIsm, /* i : Param ISM Config Handle */
+ const Word16 ism_extended_metadata_flag, /* i : Extended metadata flag */
+ const Word16 lp_noise_CPE, /* i : LP filtered total noise estimation */
+ const Word16 flag_omasa_ener_brate, /* i : less bitrate for objects in OMASA flag */
Word16 *omasa_stereo_sw_cnt,
- const Word16 ini_frame );
+ const Word16 ini_frame
+);
ivas_error ivas_ism_dec_config(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const ISM_MODE last_ism_mode /* i/o: last ISM mode */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord16 *nSamplesRendered, /* o : number of samples flushed when the renderer granularity changes */
- Word16 *data /* o : output synthesis signal */
-#endif
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const ISM_MODE last_ism_mode /* i/o: last ISM mode */
);
ivas_error ivas_param_ism_dec_open_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
void ivas_param_ism_dec_close_fx(
- PARAM_ISM_DEC_HANDLE *hParamIsmDec, /* i/o: decoder ParamISM handle */
- SPAT_PARAM_REND_COMMON_DATA_HANDLE *hSpatParamRendCom_out, /* i/o: common spatial renderer data */
- const AUDIO_CONFIG output_config /* i : output audio configuration */
+ PARAM_ISM_DEC_HANDLE *hParamIsmDec, /* i/o: decoder ParamISM handle */
+ SPAT_PARAM_REND_COMMON_DATA_HANDLE *hSpatParamRendCom_out, /* i/o: common spatial renderer data */
+ const AUDIO_CONFIG output_config /* i : output audio configuration */
);
void ivas_ism_dec_digest_tc_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
void ivas_param_ism_dec_digest_tc_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord16 nCldfbSlots, /* i : number of CLFBS slots in the transport channels */
- Word32 *transport_channels[], /* i : synthesized core-coder transport channels/DirAC output */
- Word16 q_tc_in );
-
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord16 nCldfbSlots, /* i : number of CLDFB slots in transport channels */
+ Word32 *p_data_fx[], /* i/o: synthesized core-coder transport channels/DirAC output */
+ const Word16 q_data_in /* i : Q-factor of input signal for single channel */
+);
-#ifdef OBJ_EDITING_API
void ivas_param_ism_dec_dequant_md_fx(
- Decoder_Struct *st_ivas
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder handle */
);
void ivas_param_ism_dec_prepare_renderer_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const Word16 nCldfbSlots /* i : number of CLFBS slots in the transport channels */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const Word16 nCldfbSlots /* i : number of CLDFB slots in transport channels */
);
-#endif
void ivas_param_ism_dec_render_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
- UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
- UWord16 *nSamplesAvailable, /* o : number of CLDFB slots still to render */
- Word32 *output_f_fx[] );
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
+ UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
+ UWord16 *nSamplesAvailable, /* o : number of CLDFB slots still to render */
+ Word32 *output_fx[] /* i/o: synthesized core-coder TCs / rendered signal*/
+);
void ivas_param_ism_params_to_masa_param_mapping_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
Word16 ivas_ism_dtx_enc_fx(
- ISM_DTX_HANDLE hISMDTX, /* i/o: ISM DTX handle */
- SCE_ENC_HANDLE hSCE[MAX_SCE], /* i/o: SCE encoder structure */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word16 nchan_ism, /* i : number of objects */
- const Word16 nchan_transport, /* i : number of transport channels */
- Word16 vad_flag[MAX_NUM_OBJECTS], /* i : VAD flag */
- ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
- Word16 md_diff_flag[], /* o : metadata differential flag */
- Word16 *sid_flag /* o : indication of SID frame */
+ ISM_DTX_HANDLE hISMDTX, /* i/o: ISM DTX handle */
+ SCE_ENC_HANDLE hSCE[MAX_SCE], /* i/o: SCE encoder structure */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word16 nchan_ism, /* i : number of objects */
+ const Word16 nchan_transport, /* i : number of transport channels */
+ Word16 vad_flag[MAX_NUM_OBJECTS], /* i : VAD flag */
+ ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
+ Word16 md_diff_flag[], /* o : metadata differential flag */
+ Word16 *sid_flag /* o : indication of SID frame */
);
void ivas_ism_dtx_dec_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- Word16 *nb_bits_metadata /* o : number of metadata bits */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ Word16 *nb_bits_metadata /* o : number of metadata bits */
);
void ivas_ism_get_sce_id_dtx_fx(
- ISM_DTX_HANDLE hISMDTX, /* i/o: ISM DTX handle */
- SCE_ENC_HANDLE hSCE[MAX_SCE], /* i/o: SCE encoder structure */
- const Word16 nchan_transport, /* i : number of transport channels */
- const Word16 input_frame /* i : input frame length per channel */
+ ISM_DTX_HANDLE hISMDTX, /* i/o: ISM DTX handle */
+ SCE_ENC_HANDLE hSCE[MAX_SCE], /* i/o: SCE encoder structure */
+ const Word16 nchan_transport, /* i : number of transport channels */
+ const Word16 input_frame /* i : input frame length per channel */
);
void ivas_ism_coh_estim_dtx_enc_fx(
- ISM_DTX_HANDLE hISMDTX, /* i/o: ISM DTX handle */
- SCE_ENC_HANDLE hSCE[MAX_SCE], /* i/o: SCE encoder structure */
- const Word16 nchan_transport, /* i : number of transport channels */
- const Word16 input_frame /* i : input frame length */
+ ISM_DTX_HANDLE hISMDTX, /* i/o: ISM DTX handle */
+ SCE_ENC_HANDLE hSCE[MAX_SCE], /* i/o: SCE encoder structure */
+ const Word16 nchan_transport, /* i : number of transport channels */
+ const Word16 input_frame /* i : input frame length */
);
void ivas_ism_dtx_limit_noise_energy_for_near_silence_fx(
- SCE_DEC_HANDLE hSCE[], /* i/o: SCE decoder structures */
- const Word16 sce_id_dtx, /* i : SCE DTX ID */
- const Word16 nchan_transport, /* i : number of transport channels */
- Word16 *Q_cngNoiseLevel );
-
+ SCE_DEC_HANDLE hSCE[], /* i/o: SCE decoder structures */
+ const Word16 sce_id_dtx, /* i : SCE DTX ID */
+ const Word16 nchan_transport, /* i : number of transport channels */
+ Word16 *Q_cngNoiseLevel
+);
ivas_error stereo_dft_enc_create_fx(
- STEREO_DFT_ENC_DATA_HANDLE *hStereoDft, /* o : encoder DFT stereo handle */
- const Word32 input_Fs, /* i : input sampling rate */
- const Word16 max_bwidth /* i : maximum encoded bandwidth */
+ STEREO_DFT_ENC_DATA_HANDLE *hStereoDft, /* o : encoder DFT stereo handle */
+ const Word32 input_Fs, /* i : input sampling rate */
+ const Word16 max_bwidth /* i : maximum encoded bandwidth */
);
void stereo_dft_enc_reset_fx(
- STEREO_DFT_ENC_DATA_HANDLE hStereoDft /* i/o: encoder stereo handle */
+ STEREO_DFT_ENC_DATA_HANDLE hStereoDft /* i/o: encoder stereo handle */
);
void stereo_enc_itd_init_fx(
- ITD_DATA_HANDLE hItd /* i/o: encoder ITD handle */
+ ITD_DATA_HANDLE hItd /* i/o: encoder ITD handle */
);
void stereo_dft_enc_update_fx(
- STEREO_DFT_ENC_DATA_HANDLE hStereoDft, /* i/o: encoder stereo handle */
- const Word16 max_bwidth /* i : maximum encoded bandwidth */
+ STEREO_DFT_ENC_DATA_HANDLE hStereoDft, /* i/o: encoder stereo handle */
+ const Word16 max_bwidth /* i : maximum encoded bandwidth */
);
void stereo_dft_enc_destroy_fx(
- STEREO_DFT_ENC_DATA_HANDLE *hStereoDft /* i/o: encoder DFT stereo handle */
+ STEREO_DFT_ENC_DATA_HANDLE *hStereoDft /* i/o: encoder DFT stereo handle */
);
void stereo_dft_quantize_res_gains_fx(
@@ -4422,7 +4422,8 @@ void stereo_dft_quantize_res_gains_fx(
Word32 *gq, // Q31
Word32 *rq, // Q31
Word16 *ig,
- Word16 *ir );
+ Word16 *ir
+);
void stereo_dft_dequantize_itd_fx(
Word16 *ind, /* Q0 */
@@ -4431,283 +4432,287 @@ void stereo_dft_dequantize_itd_fx(
);
Word16 stereo_dft_sg_recovery_fx(
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft /* i/o: Decoder DFT stereo handle */
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft /* i/o: Decoder DFT stereo handle */
);
Word16 res_bpf_adapt_ivas_fx(
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: DFT stereo decoder handle */
- const Word32 *bpf_error_signal_8k, /* i : BPF modification signal */
- Word32 res_buf[STEREO_DFT_N_8k], /* i : residual buffer Q_res */
- Word16 q_res );
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: DFT stereo decoder handle */
+ const Word32 *bpf_error_signal_8k, /* i : BPF modification signal */
+ Word32 res_buf[STEREO_DFT_N_8k], /* i : residual buffer Q_res */
+ Word16 q_res
+);
void stereo_dft_dec_read_BS_fx(
- const Word32 ivas_total_brate, /* i : IVAS total bitrate Q0*/
- const Word32 element_brate, /* i : element bitrate Q0*/
- Word32 *total_brate, /* o : total bitrate Q0*/
- Decoder_State *st, /* i/o: decoder state structure */
- STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder stereo handle */
- const Word16 bwidth, /* i : bandwidth Q0*/
- const Word16 output_frame, /* i : output frame length Q0*/
- Word32 res_buf_fx[STEREO_DFT_N_8k], /* o : residual buffer Q0*/
- Word16 *nb_bits, /* o : number of bits read Q0*/
- Word16 *coh_fx, /* i/o: Coherence Q15*/
- const Word16 ivas_format /* i : ivas format Q0*/
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate Q0*/
+ const Word32 element_brate, /* i : element bitrate Q0*/
+ Word32 *total_brate, /* o : total bitrate Q0*/
+ Decoder_State *st, /* i/o: decoder state structure */
+ STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder stereo handle */
+ const Word16 bwidth, /* i : bandwidth Q0*/
+ const Word16 output_frame, /* i : output frame length Q0*/
+ Word32 res_buf_fx[STEREO_DFT_N_8k], /* o : residual buffer Q0*/
+ Word16 *nb_bits, /* o : number of bits read Q0*/
+ Word16 *coh_fx, /* i/o: Coherence Q15*/
+ const Word16 ivas_format /* i : ivas format Q0*/
);
Word16 write_bitstream_adapt_GR_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: Encoder bitstream handle */
- const Word16 ind, /* i : bitstream index */
- const Word16 *in, /* i : values to be written in bitstream */
- const Word16 len, /* i : values vector length */
- const Word16 GR_ord, /* i : GR order to be used */
- const Word16 no_GR_ord /* i : speech/music 0/1 */
+ BSTR_ENC_HANDLE hBstr, /* i/o: Encoder bitstream handle */
+ const Word16 ind, /* i : bitstream index */
+ const Word16 *in, /* i : values to be written in bitstream */
+ const Word16 len, /* i : values vector length */
+ const Word16 GR_ord, /* i : GR order to be used */
+ const Word16 no_GR_ord /* i : speech/music 0/1 */
);
Word16 adapt_GR_ief_fx(
- const Word16 *in, /* i : vector to encode */
- Word16 *in_diff, /* o : encoded symbols in case of differential encoding */
- const Word16 *prev, /* i : previous frame data */
- const Word16 len, /* i : input vector length */
- const Word16 no_symb, /* i : number of symbols */
- Word16 *nbits, /* o : number of used bits */
- Word16 *in_enc, /* o : symbold actually encoded after adapt_GR */
- const Word16 *map0, /* i : mapping array */
- const Word16 no_GR_ord, /* i : number of GR order to try 2: 0,1; 3:0,1,2 */
- Word16 *nbits_diff, /* o : number bits in diff encoding */
- const Word16 side_gain_counter, /* i : number of frames since last abs coding */
- Word16 *side_gain_bitdiff_lp, /* i/o: LP-filtered bit difference between abs/diff */
- Word16 *q_side_gain_bitdiff_lp, /* i/o: Q of LP-filtered bit difference between abs/diff */
- const Word16 try_diff /* i : diff coding allowed 1/0 */
+ const Word16 *in, /* i : vector to encode */
+ Word16 *in_diff, /* o : encoded symbols in case of differential encoding */
+ const Word16 *prev, /* i : previous frame data */
+ const Word16 len, /* i : input vector length */
+ const Word16 no_symb, /* i : number of symbols */
+ Word16 *nbits, /* o : number of used bits */
+ Word16 *in_enc, /* o : symbold actually encoded after adapt_GR */
+ const Word16 *map0, /* i : mapping array */
+ const Word16 no_GR_ord, /* i : number of GR order to try 2: 0,1; 3:0,1,2 */
+ Word16 *nbits_diff, /* o : number bits in diff encoding */
+ const Word16 side_gain_counter, /* i : number of frames since last abs coding */
+ Word16 *side_gain_bitdiff_lp, /* i/o: LP-filtered bit difference between abs/diff */
+ Word16 *q_side_gain_bitdiff_lp, /* i/o: Q of LP-filtered bit difference between abs/diff */
+ const Word16 try_diff /* i : diff coding allowed 1/0 */
);
Word16 adapt_GR_rpg1_ief_fx(
- const Word16 *in, /* i : res pred gains input vector */
- Word16 *in_diff, /* o : encoded symbols in case of differential encoding */
- const Word16 *prev, /* i : previous frame data */
- const Word16 len, /* i : input vector length */
- const Word16 no_symb, /* i : number of symbols */
- Word16 *nbits, /* o : number of used bits */
- Word16 *in_enc, /* o : symbold actually encoded after adapt_GR */
- const Word16 *maps, /* i : mapping array */
- Word16 *nbits_diff, /* o : estimated no of bits for differential encoding */
- const Word16 no_GR_ord, /* i : number of GR order to try 2: 0,1; 3:0,1,2 */
- const Word16 try_diff /* i : diff coding allowed 1/0 */
+ const Word16 *in, /* i : res pred gains input vector */
+ Word16 *in_diff, /* o : encoded symbols in case of differential encoding */
+ const Word16 *prev, /* i : previous frame data */
+ const Word16 len, /* i : input vector length */
+ const Word16 no_symb, /* i : number of symbols */
+ Word16 *nbits, /* o : number of used bits */
+ Word16 *in_enc, /* o : symbold actually encoded after adapt_GR */
+ const Word16 *maps, /* i : mapping array */
+ Word16 *nbits_diff, /* o : estimated no of bits for differential encoding */
+ const Word16 no_GR_ord, /* i : number of GR order to try 2: 0,1; 3:0,1,2 */
+ const Word16 try_diff /* i : diff coding allowed 1/0 */
);
Word16 write_GR1_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: Encoder bitstream handle */
- const Word16 ind, /* i : bitstream index */
- const Word16 *in, /* i : data to be encoded */
- const Word16 len /* i : input data length */
+ BSTR_ENC_HANDLE hBstr, /* i/o: Encoder bitstream handle */
+ const Word16 ind, /* i : bitstream index */
+ const Word16 *in, /* i : data to be encoded */
+ const Word16 len /* i : input data length */
);
Word16 write_bitstream_GR_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: Encoder bitstream handle */
- const Word16 ind, /* i : bitstream index */
- const Word16 *in, /* i : input vector */
- const Word16 len, /* i : input vector length */
- const Word16 GR_ord /* i : GR order */
+ BSTR_ENC_HANDLE hBstr, /* i/o: Encoder bitstream handle */
+ const Word16 ind, /* i : bitstream index */
+ const Word16 *in, /* i : input vector */
+ const Word16 len, /* i : input vector length */
+ const Word16 GR_ord /* i : GR order */
);
void stereo_dft_hybrid_ITD_flag_fx(
- STEREO_DFT_CONFIG_DATA_HANDLE hConfig, /* o : DFT stereo configuration */
- const Word32 input_Fs, /* i : CPE element sampling rate */
- const Word16 hybrid_itd_max /* i : flag for hybrid ITD for very large ITDs */
+ STEREO_DFT_CONFIG_DATA_HANDLE hConfig, /* o : DFT stereo configuration */
+ const Word32 input_Fs, /* i : CPE element sampling rate */
+ const Word16 hybrid_itd_max /* i : flag for hybrid ITD for very large ITDs */
);
void rc_uni_dec_init_fx(
- RangeUniDecState *rc_st_dec, /* i/o: RC state handle */
- UWord16 *bit_buffer, /* i : Bit buffer */
- const Word16 max_available_bits /* i : Total maximum bits available */
+ RangeUniDecState *rc_st_dec, /* i/o: RC state handle */
+ UWord16 *bit_buffer, /* i : Bit buffer */
+ const Word16 max_available_bits /* i : Total maximum bits available */
);
UWord16 rc_uni_dec_read_symbol_fastS_fx(
- RangeUniDecState *rc_st_dec, /* i/o: Decoder State */
- const UWord16 cum_freq_table[], /* i : Cumulative frequency up to symbol */
- const UWord16 sym_freq_table[], /* i : Symbol frequency */
- const UWord16 alphabet_size, /* i : Number of symbols in the alphabet */
- const UWord16 tot_shift /* i : Total frequency as a power of 2 */
+ RangeUniDecState *rc_st_dec, /* i/o: Decoder State */
+ const UWord16 cum_freq_table[], /* i : Cumulative frequency up to symbol */
+ const UWord16 sym_freq_table[], /* i : Symbol frequency */
+ const UWord16 alphabet_size, /* i : Number of symbols in the alphabet */
+ const UWord16 tot_shift /* i : Total frequency as a power of 2 */
);
Word16 rc_uni_dec_virtual_finish_fx(
- RangeUniDecState *rc_st_dec /* i/o: RC state handle */
+ RangeUniDecState *rc_st_dec /* i/o: RC state handle */
);
void unclr_classifier_dft_fx(
- CPE_ENC_HANDLE hCPE /* i/o: CPE encoder structure */
+ CPE_ENC_HANDLE hCPE /* i/o: CPE encoder structure */
);
void xtalk_classifier_dft_fx(
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
- const Word16 itd, /* i : ITD from DFT stereo - used as a feature */
- const Word32 gcc_phat[] /* i : GPHAT cross-channel correlation function Q31*/
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
+ const Word16 itd, /* i : ITD from DFT stereo - used as a feature */
+ const Word32 gcc_phat[] /* i : GPHAT cross-channel correlation function Q31*/
);
void stereo_td_init_enc_fx(
- STEREO_TD_ENC_DATA_HANDLE hStereoTD, /* i/o: TD stereo encoder handle */
- const Word16 last_element_mode /* i : last element mode */
+ STEREO_TD_ENC_DATA_HANDLE hStereoTD, /* i/o: TD stereo encoder handle */
+ const Word16 last_element_mode /* i : last element mode */
);
ivas_error stereo_set_tdm_fx(
- CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
- const Word16 input_frame, /* i : input frame length per channel */
- Word16 input_q );
+ CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
+ const Word16 input_frame, /* i : input frame length per channel */
+ Word16 input_q
+);
void stereo_tdm_prep_dwnmx_fx(
- CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
- const Word32 *input1, /* i : right channel input */
- const Word16 input_frame, /* i : frame lenght */
- const Word16 input_q /* i : frame lenght */
+ CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
+ const Word32 *input1, /* i : right channel input */
+ const Word16 input_frame, /* i : frame lenght */
+ const Word16 input_q /* i : frame lenght */
);
void tdm_upmix_plain_fx(
- Word32 Left_fx[], /* o : left channel Qx*/
- Word32 Right_fx[], /* o : right channel Qx*/
- const Word32 PCh_2_L_fx[], /* i : primary channel Qx*/
- const Word32 SCh_2_R_fx[], /* i : secondary channel Qx*/
- const Word32 LR_ratio_fx, /* i : mixing ratio Q31*/
- const Word32 inv_den_LR_ratio_fx, /* i : inverse mixing ration Q31*/
- const Word16 start_index, /* i : start index Q0*/
- const Word16 end_index, /* i : end index Q0*/
- const Word16 plus_minus_flag /* i : plus/minus flag Q0*/
+ Word32 Left_fx[], /* o : left channel Qx*/
+ Word32 Right_fx[], /* o : right channel Qx*/
+ const Word32 PCh_2_L_fx[], /* i : primary channel Qx*/
+ const Word32 SCh_2_R_fx[], /* i : secondary channel Qx*/
+ const Word32 LR_ratio_fx, /* i : mixing ratio Q31*/
+ const Word32 inv_den_LR_ratio_fx, /* i : inverse mixing ration Q31*/
+ const Word16 start_index, /* i : start index Q0*/
+ const Word16 end_index, /* i : end index Q0*/
+ const Word16 plus_minus_flag /* i : plus/minus flag Q0*/
);
void stereo_tdm_combine_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word32 *PCh_2_L_fx, /* i/o: Primary channel -> output as left channel Qx*/
- Word32 *SCh_2_R_fx, /* i/o: Secondary channel -> output as right channel Qx*/
- const Word16 output_frame, /* i : Number of samples Q0*/
- const Word16 flag_HB, /* i : flag to distinguish between core (0) and HB (1) synthesis Q0*/
- const Word16 tdm_ratio_idx /* i : TDM ratio index Q0*/
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word32 *PCh_2_L_fx, /* i/o: Primary channel -> output as left channel Qx*/
+ Word32 *SCh_2_R_fx, /* i/o: Secondary channel -> output as right channel Qx*/
+ const Word16 output_frame, /* i : Number of samples Q0*/
+ const Word16 flag_HB, /* i : flag to distinguish between core (0) and HB (1) synthesis Q0*/
+ const Word16 tdm_ratio_idx /* i : TDM ratio index Q0*/
);
Word16 tdm_lp_comparison_fx(
- STEREO_TD_ENC_DATA_HANDLE hStereoTD, /* i/o: TD stereo encoder handle */
- STEREO_CLASSIF_HANDLE hStereoClassif, /* i/o: stereo classifier structure */
- Encoder_State *st, /* i/o: Encoder structure */
- Word32 *speech_buff, /* i : Current speech frame Q_speech */
- const Word16 *A_PCh_fx, /* i : primary channel LP coefficients Q12*/
- const Word16 *A_SCh_fx, /* i : secondary channel LP coeff. Q12*/
- const Word16 m, /* i : filter length */
- const Word16 *isp_PCh_fx, /* i : primary channel LSPs Q15 */
- const Word16 *isp_SCh_fx, /* i : secondary channel LSPs Q15 */
- const Word16 L_frame, /* i : frame length */
- const Word32 element_brate_wo_meta, /* i : element bitrate without metadata*/
- Word16 Q_speech );
+ STEREO_TD_ENC_DATA_HANDLE hStereoTD, /* i/o: TD stereo encoder handle */
+ STEREO_CLASSIF_HANDLE hStereoClassif, /* i/o: stereo classifier structure */
+ Encoder_State *st, /* i/o: Encoder structure */
+ Word32 *speech_buff, /* i : Current speech frame Q_speech */
+ const Word16 *A_PCh_fx, /* i : primary channel LP coefficients Q12*/
+ const Word16 *A_SCh_fx, /* i : secondary channel LP coeff. Q12*/
+ const Word16 m, /* i : filter length */
+ const Word16 *isp_PCh_fx, /* i : primary channel LSPs Q15 */
+ const Word16 *isp_SCh_fx, /* i : secondary channel LSPs Q15 */
+ const Word16 L_frame, /* i : frame length */
+ const Word32 element_brate_wo_meta, /* i : element bitrate without metadata */
+ Word16 Q_speech
+);
ivas_error signaling_enc_secondary_fx(
- Encoder_State *st, /* i/o: Encoder structure */
- const Word16 tdm_SM_or_LRTD_Pri, /* i : channel combination scheme flag OR LRTD primary channel */
- const Word16 tdm_Pitch_reuse_flag /* i : primary channel pitch reuse flag*/
+ Encoder_State *st, /* i/o: Encoder structure */
+ const Word16 tdm_SM_or_LRTD_Pri, /* i : channel combination scheme flag OR LRTD primary channel */
+ const Word16 tdm_Pitch_reuse_flag /* i : primary channel pitch reuse flag */
);
void tdm_low_rate_enc(
- Encoder_State *st, /* i/o: State structure */
- const Word16 Aq[], /* i : 12k8 Lp coefficient */
- const Word16 *res,
- /* i : residual signal */ // Q_new
- Word16 *synth,
- /* i/o: core synthesis */ // Q_new
- Word16 *exc_fx,
- /* i/o: current non-enhanced excitation */ // Q_new
- Word16 *pitch_buf,
- /* i/o: floating pitch values for each subframe */ // Q6
- Word16 *voice_factors,
- /* o : voicing factors */ // Q15
- Word16 *bwe_exc_fx,
- /* o : excitation for SWB TBE */ // Q_new
- const Word16 attack_flag, /* i : attck flag */
- const Word16 *lsf_new,
- /* i : current frame ISF vector */ // x2.56
- Word16 *tmp_noise,
- /* o : long-term noise energy */ // Q8
- Word16 Q_new );
+ Encoder_State *st, /* i/o: State structure */
+ const Word16 Aq[], /* i : 12k8 Lp coefficient */
+ const Word16 *res, /* i : residual signal Q_new*/
+ Word16 *synth, /* i/o: core synthesis Q_new*/
+ Word16 *exc_fx, /* i/o: current non-enhanced excitation Q_new*/
+ Word16 *pitch_buf, /* i/o: floating pitch values for each subframe Q6*/
+ Word16 *voice_factors, /* o : voicing factors Q15*/
+ Word16 *bwe_exc_fx, /* o : excitation for SWB TBE Q_new*/
+ const Word16 attack_flag, /* i : attack flag */
+ const Word16 *lsf_new, /* i : current frame ISF vector x2.56 */
+ Word16 *tmp_noise, /* o : long-term noise energy Q8 */
+ Word16 Q_new
+);
void tdm_low_rate_dec_fx(
- Decoder_State *st, /* i/o: decoder static memory */
- Word16 dct_epit[], /* o : GSC excitation in DCT domain Q_exc*/
- Word16 *pitch_buf, /* o : Word16 pitch values for each subframe Q6*/
- Word16 *voice_factors, /* o : voicing factors Q15*/
- Word16 *exc, /* i/o: adapt. excitation exc Q_exc*/
- Word16 *exc2, /* i/o: adapt. excitation/total exc Q_exc*/
- Word16 *bwe_exc, /* o : excitation for SWB TBE Q_exc*/
- const Word16 *lsf_new /* i : ISFs at the end of the frame Q8/100 (2.56x)*/
+ Decoder_State *st, /* i/o: decoder static memory */
+ Word16 dct_epit[], /* o : GSC excitation in DCT domain Q_exc*/
+ Word16 *pitch_buf, /* o : Word16 pitch values for each subframe Q6*/
+ Word16 *voice_factors, /* o : voicing factors Q15*/
+ Word16 *exc, /* i/o: adapt. excitation exc Q_exc*/
+ Word16 *exc2, /* i/o: adapt. excitation/total exc Q_exc*/
+ Word16 *bwe_exc, /* o : excitation for SWB TBE Q_exc*/
+ const Word16 *lsf_new /* i : ISFs at the end of the frame Q8/100 (2.56x)*/
+);
+
+void tdm_SCh_LSF_intra_pred_fx(
+ const Word32 element_brate, /* i : element bitrate */
+ const Word16 *tdm_lsfQ_PCh_fx, /* i : primary channel LSFs */
+ Word16 *pred_lsf_SCh_fx /* o : predicted secondary channel LSFs */
);
void tdm_SCh_LSF_intra_pred_fx(
- const Word32 element_brate, /* i : element bitrate */
- const Word16 *tdm_lsfQ_PCh_fx, /* i : primary channel LSFs */
- Word16 *pred_lsf_SCh_fx /* o : predicted secondary channel LSFs */
+ const Word32 element_brate, /* i : element bitrate */
+ const Word16 *tdm_lsfQ_PCh_fx, /* i : primary channel LSFs */
+ Word16 *pred_lsf_SCh_fx /* o : predicted secondary channel LSFs */
);
void tdm_SCh_lsf_reuse_fx(
- const Word16 enc_dec, /* i : encoder/decoder flag */
- const Word32 element_brate, /* i : element bitrate */
- Word16 lsf_new_fx[M], /* i/o: LSFs at the end of the frame */
- Word16 lsp_new_fx[M], /* i/o: LSPs at the end of the frame */
- const Word16 tdm_lsfQ_PCh_fx[M], /* i : primary channel LSFs */
- const Word16 lsf_wgts_fx[M], /* i : LSF weights */
- Word16 *beta_index /* i/o: quantization index */
+ const Word16 enc_dec, /* i : encoder/decoder flag */
+ const Word32 element_brate, /* i : element bitrate */
+ Word16 lsf_new_fx[M], /* i/o: LSFs at the end of the frame */
+ Word16 lsp_new_fx[M], /* i/o: LSPs at the end of the frame */
+ const Word16 tdm_lsfQ_PCh_fx[M], /* i : primary channel LSFs */
+ const Word16 lsf_wgts_fx[M], /* i : LSF weights */
+ Word16 *beta_index /* i/o: quantization index */
);
void EstimateStereoTCXNoiseLevel_fx(
- Encoder_State **sts, /* i : state handle */
- Word32 *q_spectrum[CPE_CHANNELS][NB_DIV], /* i : quantized MDCT spectrum */
- Word16 gain_tcx[][NB_DIV], /* i : global gain */
- Word16 gain_tcx_e[][NB_DIV], /* i : global gain exponent */
- Word16 L_frame[][NB_DIV], /* i : frame length */
- Word16 noiseFillingBorder[][NB_DIV], /* i : noise filling border */
- Word16 hm_active[][NB_DIV], /* i : flag indicating if the harmonic model is active */
- const Word16 ignore_chan[], /* i : flag indicating whether the channel should be ignored */
- Word16 fac_ns[][NB_DIV], /* o : noise filling level */
- Word16 param_core[][NB_DIV * NPRM_DIV], /* o : quantized noise filling level */
- const Word16 MCT_flag /* i : hMCT handle allocated (1) or not (0) */
+ Encoder_State **sts, /* i : state handle */
+ Word32 *q_spectrum[CPE_CHANNELS][NB_DIV], /* i : quantized MDCT spectrum */
+ Word16 gain_tcx[][NB_DIV], /* i : global gain */
+ Word16 gain_tcx_e[][NB_DIV], /* i : global gain exponent */
+ Word16 L_frame[][NB_DIV], /* i : frame length */
+ Word16 noiseFillingBorder[][NB_DIV], /* i : noise filling border */
+ Word16 hm_active[][NB_DIV], /* i : flag indicating if the harmonic model is active */
+ const Word16 ignore_chan[], /* i : flag indicating whether the channel should be ignored */
+ Word16 fac_ns[][NB_DIV], /* o : noise filling level */
+ Word16 param_core[][NB_DIV * NPRM_DIV], /* o : quantized noise filling level */
+ const Word16 MCT_flag /* i : hMCT handle allocated (1) or not (0) */
);
void TNSAnalysisStereo_fx(
- Encoder_State **sts, /* i : encoder state handle */
- Word32 *mdst_spectrum_fx[CPE_CHANNELS][NB_DIV], /* o : MDST spectrum Qx*/
- const Word16 bWhitenedDomain, /* i : whitened domain flag Q0*/
- Word16 tnsSize[CPE_CHANNELS][NB_DIV], /* i : number of tns parameters put into prm Q0*/
- Word16 tnsBits[CPE_CHANNELS][NB_DIV], /* i : number of tns bits in the frame Q0*/
- Word16 param_core[][NB_DIV * NPRM_DIV], /* o : TNS parameters Q0*/
- const Word16 mct_on /* i : flag mct block (1) or stereo (0) Q0*/
+ Encoder_State **sts, /* i : encoder state handle */
+ Word32 *mdst_spectrum_fx[CPE_CHANNELS][NB_DIV], /* o : MDST spectrum Qx*/
+ const Word16 bWhitenedDomain, /* i : whitened domain flag Q0*/
+ Word16 tnsSize[CPE_CHANNELS][NB_DIV], /* i : number of tns parameters put into prm Q0*/
+ Word16 tnsBits[CPE_CHANNELS][NB_DIV], /* i : number of tns bits in the frame Q0*/
+ Word16 param_core[][NB_DIV * NPRM_DIV], /* o : TNS parameters Q0*/
+ const Word16 mct_on /* i : flag mct block (1) or stereo (0) Q0*/
);
void init_tcx_enc_info_fx(
- Encoder_State *st, /* i/o: coder memory state */
+ Encoder_State *st, /* i/o: coder memory state */
Word16 *L_frame,
Word16 *L_frameTCX,
- Word16 *L_spec );
+ Word16 *L_spec
+);
void SetCurrentPsychParams(
const Word16 core,
const Word16 last_frame_was_concealed_cng,
- TCX_CONFIG_HANDLE hTcxCfg );
+ TCX_CONFIG_HANDLE hTcxCfg
+);
void sns_avq_cod_fx(
- const Word32 *sns_fx, /* i : Input sns vectors */
+ const Word32 *sns_fx, /* i : Input sns vectors */
Word16 exp_sns,
- const Word32 *snsmid_fx, /* i : Input mid-sns vectors */
+ const Word32 *snsmid_fx, /* i : Input mid-sns vectors */
Word16 exp_snsmid,
- Word32 *sns_q_fx, /* o : Quantized LFS vectors Q16 */
- Word32 *snsmid_q_fx, /* o : Quantized mid-LFS vectors Q16 */
- Word16 *index, /* o : Quantization indices */
- const Word16 core, /* i : core */
+ Word32 *sns_q_fx, /* o : Quantized LFS vectors Q16 */
+ Word32 *snsmid_q_fx, /* o : Quantized mid-LFS vectors Q16 */
+ Word16 *index, /* o : Quantization indices */
+ const Word16 core, /* i : core */
const Word16 L_frame,
- const Word16 low_brate_mode /* i : flag low bit operating mode */
+ const Word16 low_brate_mode /* i : flag low bit operating mode */
);
void sns_avq_cod_stereo_fx(
- const Word32 *snsl_fx, /* i : Input sns vector (left channel) */
+ const Word32 *snsl_fx, /* i : Input sns vector (left channel) */
Word16 exp_snl,
- const Word32 *snsr_fx, /* i : Input sns vector (right channel) */
+ const Word32 *snsr_fx, /* i : Input sns vector (right channel) */
Word16 exp_snr,
const Word16 L_frame,
- Word32 *snsl_q_fx, /* o : Quantized sns vector (left channel) Q16 */
- Word32 *snsr_q_fx, /* o : Quantized sns vector (right channel) Q16 */
- Word16 *indexl, /* o : Quantization indices (left channel) */
- Word16 *indexr /* o : Quantization indices (right channel) */
+ Word32 *snsl_q_fx, /* o : Quantized sns vector (left channel) Q16 */
+ Word32 *snsr_q_fx, /* o : Quantized sns vector (right channel) Q16 */
+ Word16 *indexl, /* o : Quantization indices (left channel) */
+ Word16 *indexr /* o : Quantization indices (right channel) */
);
ivas_error initMdctStereoDtxData_fx(
@@ -4715,297 +4720,259 @@ ivas_error initMdctStereoDtxData_fx(
);
void applyDmxMdctStereo_fx(
- const CPE_DEC_HANDLE hCPE, /* i : CPE handle */
- Word32 *output_fx[CPE_CHANNELS], /* o : output from core decoder q_out*/
- const Word16 output_frame /* i : output frame length Q0*/
+ const CPE_DEC_HANDLE hCPE, /* i : CPE handle */
+ Word32 *output_fx[CPE_CHANNELS], /* o : output from core decoder q_out*/
+ const Word16 output_frame /* i : output frame length Q0*/
);
ivas_error front_vad_create_fx(
- FRONT_VAD_ENC_HANDLE *hFrontVad, /* i/o: front-VAD handle */
- const ENCODER_CONFIG_HANDLE hEncoderConfig /* i : configuration structure */
+ FRONT_VAD_ENC_HANDLE *hFrontVad, /* i/o: front-VAD handle */
+ const ENCODER_CONFIG_HANDLE hEncoderConfig /* i : configuration structure */
);
void front_vad_destroy_fx(
- FRONT_VAD_ENC_HANDLE *hFrontVad /* i/o: front-VAD handle */
+ FRONT_VAD_ENC_HANDLE *hFrontVad /* i/o: front-VAD handle */
);
ivas_error front_vad_fx(
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure, nullable */
- Encoder_State *st, /* i/o: encoder state structure */
- const ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : configuration structure */
- FRONT_VAD_ENC_HANDLE *hFrontVads, /* i/o: FrontVad handles */
- const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0) */
- const Word16 input_frame, /* i : frame length */
- Word16 vad_flag_dtx[], /* o : HE-SAD flag with additional DTX HO */
- Word32 fr_bands_fx[][2 * NB_BANDS], /* o : energy in frequency bands q_fr_bands_fx */
- Word16 q_fr_bands[], /* o : Q of fr_bands_fx Q0 */
- Word16 Etot_LR_fx[], /* o : total energy Left & Right channel Q8 */
- Word32 lf_E_fx[][2 * VOIC_BINS], /* i : per bin spectrum energy in lf, LR channels q_lf_E */
- Word16 q_lf_E[], /* o : Q of lf_E_fx */
- Word16 localVAD_HE_SAD[], /* o : HE-SAD flag without hangover, LR channels */
- Word16 vad_hover_flag[], /* o : VAD hangover flag */
- Word32 band_energies_LR_fx[2 * NB_BANDS], /* o : energy in critical bands without minimum noise floor E_MIN q_band_energies_LR */
- Word16 *q_band_energies_LR, /* o : Q of band_energies_LR_fx */
- Word32 *PS_out_fx, /* o : energy spectrum q_PS_out */
- Word16 *q_PS_out, /* o : Q of PS_out_fx Q0 */
- Word16 *Bin_E_out_fx, /* o : log-energy spectrum of the current frame Q7 */
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure, nullable */
+ Encoder_State *st, /* i/o: encoder state structure */
+ const ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : configuration structure */
+ FRONT_VAD_ENC_HANDLE *hFrontVads, /* i/o: FrontVad handles */
+ const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0) */
+ const Word16 input_frame, /* i : frame length */
+ Word16 vad_flag_dtx[], /* o : HE-SAD flag with additional DTX HO */
+ Word32 fr_bands_fx[][2 * NB_BANDS], /* o : energy in frequency bands q_fr_bands_fx */
+ Word16 q_fr_bands[], /* o : Q of fr_bands_fx Q0 */
+ Word16 Etot_LR_fx[], /* o : total energy Left & Right channel Q8 */
+ Word32 lf_E_fx[][2 * VOIC_BINS], /* i : per bin spectrum energy in lf, LR channels q_lf_E */
+ Word16 q_lf_E[], /* o : Q of lf_E_fx */
+ Word16 localVAD_HE_SAD[], /* o : HE-SAD flag without hangover, LR channels */
+ Word16 vad_hover_flag[], /* o : VAD hangover flag */
+ Word32 band_energies_LR_fx[2 * NB_BANDS], /* o : energy in critical bands without minimum noise floor E_MIN q_band_energies_LR */
+ Word16 *q_band_energies_LR, /* o : Q of band_energies_LR_fx */
+ Word32 *PS_out_fx, /* o : energy spectrum q_PS_out */
+ Word16 *q_PS_out, /* o : Q of PS_out_fx Q0 */
+ Word16 *Bin_E_out_fx, /* o : log-energy spectrum of the current frame Q7 */
Word16 Q_inp,
Word16 *Q_buffer,
Word16 Q_add,
- Word16 *front_create_flag );
-
-void stereo_cna_update_params_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word32 *output_fx[CPE_CHANNELS], /* i : Output signal OUTPUT_Q*/
- const Word16 output_frame, /* i : Output frame length Q0*/
- const Word16 tdm_ratio_idx /* i : TDM ratio index Q0*/
+ Word16 *front_create_flag
);
-void mvr2r_inc_fixed_one(
- const Word32 x_fx[], /* i : input vector */
- const Word16 x_inc, /* i : increment for vector x[] */
- Word32 y_fx[], /* o : output vector */
- const Word16 y_inc, /* i : increment for vector y[] */
- const Word16 n /* i : vector size */
+void stereo_cna_update_params_fx(
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word32 *output_fx[CPE_CHANNELS], /* i : Output signal OUTPUT_Q*/
+ const Word16 output_frame, /* i : Output frame length Q0*/
+ const Word16 tdm_ratio_idx /* i : TDM ratio index Q0*/
);
-void mvr2r_inc_fixed(
- const Word32 x_fx[], /* i : input vector */
- const Word16 x_inc, /* i : increment for vector x[] */
- Word32 y_fx[], /* o : output vector */
- const Word16 y_inc, /* i : increment for vector y[] */
- const Word16 n /* i : vector size */
-);
-
-void v_mult_inc_fx(
- const Word32 x1_fx[], /* i : Input vector 1 */
- Word16 *x1_q_fx,
- const Word16 x1_inc, /* i : Increment for input vector 1 */
- const Word32 x2_fx[], /* i : Input vector 2 */
- Word16 *x2_q_fx,
- const Word16 x2_inc, /* i : Increment for input vector 1 */
- Word32 y_fx[], /* o : Output vector that contains vector 1 .* vector 2 */
- Word16 *y_q_fx,
- const Word16 y_inc, /* i : increment for vector y[i] */
- const Word16 N /* i : Vector length */
+void mvr2r_inc_fx(
+ const Word32 x_fx[], /* i : input vector */
+ const Word16 x_inc, /* i : increment for vector x[] */
+ Word32 y_fx[], /* o : output vector */
+ const Word16 y_inc, /* i : increment for vector y[] */
+ const Word16 n /* i : vector size */
);
void v_add_inc_fx(
- const Word32 x1[], /* i : Input vector 1 */
- const Word16 x_inc, /* i : Increment for input vector 1 */
- const Word32 x2[], /* i : Input vector 2 */
- const Word16 x2_inc, /* i : Increment for input vector 2 */
- Word32 y[], /* o : Output vector that contains vector 1 + vector 2 */
- const Word16 y_inc, /* i : increment for vector y[] */
- const Word16 N /* i : Vector length */
+ const Word32 x1[], /* i : Input vector 1 */
+ const Word16 x_inc, /* i : Increment for input vector 1 */
+ const Word32 x2[], /* i : Input vector 2 */
+ const Word16 x2_inc, /* i : Increment for input vector 2 */
+ Word32 y[], /* o : Output vector containing vector 1 + vector 2*/
+ const Word16 y_inc, /* i : increment for vector y[] */
+ const Word16 N /* i : Vector length */
);
+
Word32 logsumexp_fx(
- const Word32 x[], /* i : input array x */
+ const Word32 x[], /* i : input array x */
const Word16 x_e,
- const Word16 N /* i : number of elements in array x */
+ const Word16 N /* i : number of elements in array x */
);
+
Word32 lin_interp32_fx(
- const Word32 x, /* i : the value to be mapped */
- const Word32 x1, /* i : source range interval: low end */
- const Word32 y1, /* i : source range interval: high end */
- const Word32 x2, /* i : target range interval: low */
- const Word32 y2, /* i : target range interval: high */
- const Word16 flag_sat /* i : flag to indicate whether to apply saturation */
+ const Word32 x, /* i : the value to be mapped */
+ const Word32 x1, /* i : source range interval: low end */
+ const Word32 y1, /* i : source range interval: high end */
+ const Word32 x2, /* i : target range interval: low */
+ const Word32 y2, /* i : target range interval: high */
+ const Word16 flag_sat /* i : flag to indicate whether to apply saturation */
);
void v_addc_fx(
- const Word32 x_fx[], /* i : Input vector */
- const Word32 c_fx, /* i : Constant */
- Word32 y_fx[], /* o : Output vector that contains c*x */
- const Word16 N /* i : Vector length */
-);
-
-void v_addc_fixed(
- const Word32 x[], /* i : Input vector */
- const Word32 c, /* i : Constant */
- Word32 y[], /* o : Output vector that contains c*x */
- const Word16 N /* i : Vector length */
+ const Word32 x_fx[], /* i : Input vector */
+ const Word32 c_fx, /* i : Constant */
+ Word32 y_fx[], /* o : Output vector that contains c*x */
+ const Word16 N /* i : Vector length */
);
void v_min_fx(
- const Word32 x1_fx[], /* i : Input vector 1 */
+ const Word32 x1_fx[], /* i : Input vector 1 */
Word16 *x1_q_fx,
- const Word32 x2_fx[], /* i : Input vector 2 */
+ const Word32 x2_fx[], /* i : Input vector 2 */
Word16 *x2_q_fx,
- Word32 y_fx[], /* o : Output vector that contains vector 1 .* vector 2 */
+ Word32 y_fx[], /* o : Output vector that contains vector 1 .* vector 2 */
Word16 *y_q_fx,
- const Word16 N /* i : Vector length */
+ const Word16 N /* i : Vector length */
);
-void v_mult_inc_fixed(
- const Word32 x1_fx[], /* i : Input vector 1 */
- const Word16 x1_inc, /* i : Increment for input vector 1 */
- const Word32 x2_fx[], /* i : Input vector 2 */
- const Word16 x2_inc, /* i : Increment for input vector 1 */
- Word32 y_fx[], /* o : Output vector that contains vector 1 .* vector 2 */
- const Word16 y_inc, /* i : increment for vector y[i] */
- const Word16 N /* i : Vector length */
+void v_mult_inc_fx(
+ const Word32 x1_fx[], /* i : Input vector 1 */
+ const Word16 x1_inc, /* i : Increment for input vector 1 */
+ const Word32 x2_fx[], /* i : Input vector 2 */
+ const Word16 x2_inc, /* i : Increment for input vector 1 */
+ Word32 y_fx[], /* o : Output vector that contains vector 1 .* vector 2 */
+ const Word16 y_inc, /* i : increment for vector y[i] */
+ const Word16 N /* i : Vector length */
);
void v_sqrt_fx(
- const Word32 x[], /* i : Input vector */
+ const Word32 x[], /* i : Input vector */
Word16 exp[],
- Word32 y[], /* o : Output vector that contains sqrt(x) */
- const Word16 N /* i : Vector length */
+ Word32 y[], /* o : Output vector that contains sqrt(x) */
+ const Word16 N /* i : Vector length */
);
Word32 sumAbs_fx(
- const Word32 *vec, /* i : input vector */
- const Word16 lvec /* i : length of input vector */
+ const Word32 *vec, /* i : input vector */
+ const Word16 lvec /* i : length of input vector */
);
-Word32 dot_product_cholesky_fx(
- const Word32 *x, /* i : vector x */
- const Word32 *A, /* i : Cholesky matrix A */
- const Word16 N /* i : vector & matrix size */
-);
-
-Word64 dot_product_cholesky_fixed(
- const Word32 *x, /* i : vector x */
- const Word32 *A, /* i : Cholesky matrix A */
- const Word16 N /* i : vector & matrix size */
+Word64 dot_product_cholesky_fx(
+ const Word32 *x, /* i : vector x */
+ const Word32 *A, /* i : Cholesky matrix A */
+ const Word16 N /* i : vector & matrix size */
);
void v_mult_mat_fx(
- Word32 *y_fx, /* o : the product x*A */
- Word16 *y_q_fx,
- const Word32 *x_fx, /* i : vector x */
- Word16 *x_q_fx,
- const Word32 *A_fx, /* i : matrix A */
- Word16 *A_q_fx,
- const Word16 N, /* i : number of rows */
- const Word16 C /* i : number of columns */
-);
-void v_mult_mat_fixed(
- Word32 *y, /* o : the product x*A */
- const Word32 *x, /* i : vector x */
- const Word32 *A, /* i : matrix A */
- const Word16 Nr, /* i : number of rows */
- const Word16 Nc, /* i : number of columns */
- Word16 guardbits );
+ Word32 *y, /* o : the product x*A */
+ const Word32 *x, /* i : vector x */
+ const Word32 *A, /* i : matrix A */
+ const Word16 Nr, /* i : number of rows */
+ const Word16 Nc, /* i : number of columns */
+ Word16 guardbits
+);
Word32 check_bounds_l(
- const Word32 value, /* i : Input value */
- const Word32 low, /* i : Low limit */
- const Word32 high /* i : High limit */
+ const Word32 value, /* i : Input value */
+ const Word32 low, /* i : Low limit */
+ const Word32 high /* i : High limit */
);
Word16 check_bounds_s_fx(
- const Word16 value, /* i : Input value */
- const Word16 low, /* i : Low limit */
- const Word16 high /* i : High limit */
+ const Word16 value, /* i : Input value */
+ const Word16 low, /* i : Low limit */
+ const Word16 high /* i : High limit */
);
ivas_error stereo_memory_enc_fx(
- CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
- const Word32 input_Fs, /* i : input sampling rate */
- const Word16 max_bwidth, /* i : maximum audio bandwidth */
- const IVAS_FORMAT ivas_format, /* i : IVAS format */
- const Word16 nchan_transport /* i : number transport chans */
+ CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
+ const Word32 input_Fs, /* i : input sampling rate */
+ const Word16 max_bwidth, /* i : maximum audio bandwidth */
+ const IVAS_FORMAT ivas_format, /* i : IVAS format */
+ const Word16 nchan_transport /* i : number transport chans */
);
void stereo_switching_enc_fx(
- CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
- Word32 old_input_signal_pri[], /* i : old input signal of primary channel */
- const Word16 input_frame, /* i : input frame length */
- const Word16 q_inp );
-
+ CPE_ENC_HANDLE hCPE, /* i : CPE encoder structure */
+ Word32 old_input_signal_pri[], /* i : old input signal of primary channel */
+ const Word16 input_frame, /* i : input frame length */
+ const Word16 q_inp
+);
void stereo_td2dft_update_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- const Word16 n, /* i : channel number Q0*/
- Word32 output_fx[], /* i/o: synthesis @internal Fs Q11*/
- Word32 synth_fx[], /* i/o: synthesis @output Fs Q11*/
- Word32 hb_synth_fx[], /* i/o: hb synthesis Q11*/
- const Word16 output_frame /* i : frame length Q0*/
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ const Word16 n, /* i : channel number Q0*/
+ Word32 output_fx[], /* i/o: synthesis @internal Fs Q11*/
+ Word32 synth_fx[], /* i/o: synthesis @output Fs Q11*/
+ Word32 hb_synth_fx[], /* i/o: hb synthesis Q11*/
+ const Word16 output_frame /* i : frame length Q0*/
);
void stereo_mdct2dft_update_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word32 output0_fx[], /* i/o: synthesis @internal Fs, ch0 Q11*/
- Word32 synth0_fx[] /* i/o: synthesis @output Fs, ch0 Q11*/
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word32 output0_fx[], /* i/o: synthesis @internal Fs, ch0 Q11*/
+ Word32 synth0_fx[] /* i/o: synthesis @output Fs, ch0 Q11*/
);
Word16 write_GR0_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: Encoder bitstream handle */
- const Word16 ind, /* i : bitstream index */
- const Word16 *in, /* i : data to be encoded */
- const Word16 len /* i : input data length */
+ BSTR_ENC_HANDLE hBstr, /* i/o: Encoder bitstream handle */
+ const Word16 ind, /* i : bitstream index */
+ const Word16 *in, /* i : data to be encoded */
+ const Word16 len /* i : input data length */
);
void ivas_mct_core_dec(
- MCT_DEC_HANDLE hMCT, /* i/o: MCT decoder structure */
- CPE_DEC_HANDLE hCPE[MCT_MAX_BLOCKS], /* i/o: CPE decoder structure */
- const Word16 nCPE, /* i : number of CPEs */
+ MCT_DEC_HANDLE hMCT, /* i/o: MCT decoder structure */
+ CPE_DEC_HANDLE hCPE[MCT_MAX_BLOCKS], /* i/o: CPE decoder structure */
+ const Word16 nCPE, /* i : number of CPEs */
Word32 *signal_out_fx[],
- Word16 q_x[MCT_MAX_CHANNELS] );
+ Word16 q_x[MCT_MAX_CHANNELS]
+);
void ivas_qmetadata_to_dirac_fx(
- const IVAS_QMETADATA_HANDLE hQMetaData, /* i : frame of MASA q_metadata */
- DIRAC_DEC_HANDLE hDirAC, /* i : DirAC decoder structure */
- MASA_DECODER_HANDLE hMasa, /* i : MASA decoder structure */
- SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom, /* i/o: common spatial renderer data handle */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const IVAS_FORMAT ivas_format, /* i : IVAS format */
- const Word16 hodirac_flag, /* i : flag to indicate HO-DirAC mode */
- Word16 *dirac_to_spar_md_bands /* o : DirAC->SPAR MD bands */
+ const IVAS_QMETADATA_HANDLE hQMetaData, /* i : frame of MASA q_metadata */
+ DIRAC_DEC_HANDLE hDirAC, /* i : DirAC decoder structure */
+ MASA_DECODER_HANDLE hMasa, /* i : MASA decoder structure */
+ SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom, /* i/o: common spatial renderer data handle */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const IVAS_FORMAT ivas_format, /* i : IVAS format */
+ const Word16 hodirac_flag, /* i : flag to indicate HO-DirAC mode */
+ Word16 *dirac_to_spar_md_bands /* o : DirAC->SPAR MD bands */
);
Word16 masa_sq_fx(
- const Word32 in, /* i : input value */
- const Word32 *threshold, /* i : partition */
- const Word16 cb_sz /* i : codebook size */
+ const Word32 in, /* i : input value */
+ const Word32 *threshold, /* i : partition */
+ const Word16 cb_sz /* i : codebook size */
);
Word16 quantize_direction2D_fx(
- Word32 phi, /* i : input azimuth value Q22 */
- const Word16 no_cw, /* i : number of bits */
- Word32 *phi_q, /* o : quantized azimuth value Q22 */
- UWord16 *index_phi, /* o : quantized azimuth index */
- const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
+ Word32 phi, /* i : input azimuth value Q22 */
+ const Word16 no_cw, /* i : number of bits */
+ Word32 *phi_q, /* o : quantized azimuth value Q22 */
+ UWord16 *index_phi, /* o : quantized azimuth index */
+ const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
);
Word32 companding_azimuth_fx(
- const Word32 azi_fx, /* i : input azimuth value */
- const MC_LS_SETUP mc_format, /* i : input channel format */
- const Word16 theta_flag, /* i : zero/non zero elevation flag */
- const Word16 direction /* i : direction of companding (direct or inverse)*/
+ const Word32 azi_fx, /* i : input azimuth value */
+ const MC_LS_SETUP mc_format, /* i : input channel format */
+ const Word16 theta_flag, /* i : zero/non zero elevation flag */
+ const Word16 direction /* i : direction of companding (direct or inverse) */
);
Word16 quantize_phi_fx(
- Word32 phi, /* i : azimuth value */
- const Word16 flag_delta, /* i : flag indicating if the azimuth codebook is translated or not */
- Word32 *phi_hat, /* o : quantized azimuth */
- const Word16 n /* i : azimuth codebook size */
+ Word32 phi, /* i : azimuth value */
+ const Word16 flag_delta, /* i : flag indicating if the azimuth codebook is translated or not */
+ Word32 *phi_hat, /* o : quantized azimuth */
+ const Word16 n /* i : azimuth codebook size */
);
Word32 deindex_elevation_fx(
- UWord16 *id_th, /* i : input index */
- const Word16 no_bits, /* i : number of bits for the spherical grid */
- const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
+ UWord16 *id_th, /* i : input index */
+ const Word16 no_bits, /* i : number of bits for the spherical grid */
+ const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
);
Word32 deindex_azimuth_fx(
- Word16 id_phi, /* i : index */
- const Word16 no_bits, /* i : number of bits for the spherical grid */
- const Word16 id_th, /* i : elevation index */
- const Word16 remap, /* i : remapping flag */
- const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
+ Word16 id_phi, /* i : index */
+ const Word16 no_bits, /* i : number of bits for the spherical grid */
+ const Word16 id_th, /* i : elevation index */
+ const Word16 remap, /* i : remapping flag */
+ const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
);
+
void deindex_spherical_component_fx(
- const UWord16 sph_idx, /* i : spherical index */
- Word32 *az_fx, /* o : decoded azimuth value */
- Word32 *el_fx, /* o : decoded elevation value */
- UWord16 *az_idx, /* o : azimuth index */
- UWord16 *el_idx, /* o : elevation index */
- const UWord16 no_bits, /* i : number of bits for the spherical grid */
- const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
+ const UWord16 sph_idx, /* i : spherical index */
+ Word32 *az_fx, /* o : decoded azimuth value */
+ Word32 *el_fx, /* o : decoded elevation value */
+ UWord16 *az_idx, /* o : azimuth index */
+ UWord16 *el_idx, /* o : elevation index */
+ const UWord16 no_bits, /* i : number of bits for the spherical grid */
+ const MC_LS_SETUP mc_format /* i : channel format if in MC-mode */
);
void ivas_dirac_param_est_enc_fx(
@@ -5022,79 +4989,61 @@ void ivas_dirac_param_est_enc_fx(
const Word16 nchan_fb_in,
Word16 *mono_frame_count,
Word16 *dirac_mono_flag,
- const Word16 shift );
+ const Word16 shift
+);
ivas_error ivas_cldfb_dec_reconfig_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 nchan_transport_old, /* i : number of TCs in previous frame */
- Word16 numCldfbAnalyses_old, /* i : number of CLDFB analysis instances in previous frame */
- const Word16 numCldfbSyntheses_old /* i : number of CLDFB synthesis instances in previous frame */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const Word16 nchan_transport_old, /* i : number of TCs in previous frame */
+ Word16 numCldfbAnalyses_old, /* i : number of CLDFB analysis instances in previous frame */
+ const Word16 numCldfbSyntheses_old /* i : number of CLDFB synthesis instances in previous frame */
);
ivas_error ivas_sba_enc_reconfigure_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
-);
-/*! r: Ambisonic (SBA) order used for analysis and coding */
-Word16 ivas_sba_get_analysis_order(
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word16 sba_order /* i : Ambisonic (SBA) order */
-);
-
-Word16 ivas_sba_get_nchan_metadata(
- const Word16 sba_order, /* i : Ambisonic (SBA) order */
- const Word32 ivas_total_brate /* i : IVAS total bitrate */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
);
-/*! r: flag indicating to code SPAR HOA MD for all bands */
-void ivas_sba_get_spar_hoa_md_flag(
- const Word16 sba_order, /* i : Ambisonic (SBA) order */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- Word16 *spar_hoa_md_flag,
- Word16 *spar_hoa_dirac2spar_md_flag );
-
Word16 ivas_sba_remapTCs_fx(
- Word32 *sba_data[], /* i/o: SBA signals */
- Decoder_Struct *st_ivas, /* i/o: decoder struct */
- const Word16 output_frame /* i : frame length */
+ Word32 *sba_data[], /* i/o: SBA signals */
+ Decoder_Struct *st_ivas, /* i/o: decoder struct */
+ const Word16 output_frame /* i : frame length */
);
-void ivas_sba2mc_cldfb_fixed(
- IVAS_OUTPUT_SETUP hInSetup, /* i : Format of input layout */
- Word32 RealBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i/o: cldfb real part (Q_real) */
- Word32 ImagBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i/o: cldfb imag part (Q_imag) */
- const Word16 nb_channels_out, /* i : nb of output channels */
- const Word16 nb_bands, /* i : nb of CLDFB bands to process */
- const Word16 nb_timeslots, /* i : number of time slots to process */
- const Word32 *hoa_dec_mtx /* i : HOA decoding mtx */
+void ivas_sba2mc_cldfb_fx(
+ IVAS_OUTPUT_SETUP hInSetup, /* i : Format of input layout */
+ Word32 RealBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i/o: cldfb real part (Q_real) */
+ Word32 ImagBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i/o: cldfb imag part (Q_imag) */
+ const Word16 nb_channels_out, /* i : nb of output channels */
+ const Word16 nb_bands, /* i : nb of CLDFB bands to process */
+ const Word16 nb_timeslots, /* i : number of time slots to process */
+ const Word32 *hoa_dec_mtx /* i : HOA decoding mtx */
);
void ivas_dirac_config_bands_fx(
- Word16 *band_grouping, /* o : band grouping */
- const Word16 nbands, /* i : number of bands */
- const Word16 max_band, /* i : maximal band index +1 */
- Word16 *dirac_to_spar_md_bands, /* o : mapping of DirAC parameter band index to SPAR FB band index */
- const Word8 useLowerBandRes, /* i : flag indicating lower band resolution for DirAC */
- const Word16 enc_param_start_band, /* i : band index of first DirAC parameter band */
+ Word16 *band_grouping, /* o : band grouping */
+ const Word16 nbands, /* i : number of bands */
+ const Word16 max_band, /* i : maximal band index +1 */
+ Word16 *dirac_to_spar_md_bands, /* o : mapping of DirAC parameter band index to SPAR FB band index */
+ const Word8 useLowerBandRes, /* i : flag indicating lower band resolution for DirAC */
+ const Word16 enc_param_start_band, /* i : band index of first DirAC parameter band */
IVAS_FB_MIXER_HANDLE hFbMdft,
- const Word8 BandGroupLowRes );
+ const Word8 BandGroupLowRes
+);
void ivas_dirac_dec_close_fx(
- DIRAC_DEC_HANDLE *hDirAC_out );
+ DIRAC_DEC_HANDLE *hDirAC_out
+);
void generate_masking_noise_lb_dirac_fx(
- HANDLE_FD_CNG_COM hFdCngCom, /* i/o: FD_CNG structure containing all buffers and variables */
- Word32 *tdBuffer, /* i/o: time-domain signal, if NULL no LB-CNA */
- const Word16 nCldfbTs, /* i : number of CLDFB slots that will be rendered */
+ HANDLE_FD_CNG_COM hFdCngCom, /* i/o: FD_CNG structure containing all buffers and variables */
+ Word32 *tdBuffer, /* i/o: time-domain signal, if NULL no LB-CNA */
+ const Word16 nCldfbTs, /* i : number of CLDFB slots that will be rendered */
SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom, /* i : common spatial rendering parameters handle */
- const Word16 cna_flag /* i : CNA flag for LB and HB */
+ const Word16 cna_flag /* i : CNA flag for LB and HB */
);
void ivas_dirac_dec_close_fx(
- DIRAC_DEC_HANDLE *hDirAC_out );
-
-void ivas_dirac_dec_set_md_map(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 nCldfbTs /* i : number of CLDFB time slots */
+ DIRAC_DEC_HANDLE *hDirAC_out
);
void computeDirectionVectors_fx(
@@ -5106,253 +5055,259 @@ void computeDirectionVectors_fx(
Word32 *direction_vector_x,
Word32 *direction_vector_y,
Word32 *direction_vector_z,
- Word16 *q_factor );
+ Word16 *q_factor
+);
-void computeDiffuseness_fixed(
+void computeDiffuseness_fx(
Word32 *buffer_intensity[DIRAC_NUM_DIMS][DIRAC_NO_COL_AVG_DIFF],
const Word32 *buffer_energy,
const Word16 num_freq_bands,
Word32 *diffuseness,
Word16 *q_factor_intensity,
Word16 *q_factor_energy,
- Word16 *q_diffuseness );
+ Word16 *q_diffuseness
+);
void ivas_dirac_dec_get_response_fx(
const Word16 azimuth,
const Word16 elevation,
Word32 *response_fx, /*Q_out*/
const Word16 ambisonics_order,
- Word16 Q_out );
+ Word16 Q_out
+);
/*This is a derivate to ivas_dirac_dec_get_response_fx with fixed Q_out=29*/
void ivas_dirac_dec_get_response_fx_29(
const Word16 azimuth,
const Word16 elevation,
Word32 *response_fx, /*Q_out=29*/
- const Word16 ambisonics_order );
+ const Word16 ambisonics_order
+);
void calculate_hodirac_sector_parameters_fx(
- DIRAC_ENC_HANDLE hDirAC, /* i : DirAC handle */
- Word32 RealBuffer_fx[DIRAC_MAX_ANA_CHANS][DIRAC_NO_FB_BANDS_MAX], /* i : signal vector (L+1)^2 x N_bins, real part */
- Word32 ImagBuffer_fx[DIRAC_MAX_ANA_CHANS][DIRAC_NO_FB_BANDS_MAX], /* i : signal vector, imaginary part */
- Word16 Qfac, /* i : Q-factor of signal vector */
- const Word32 beta_fx, /* i : forgetting factor for average filtering, Q30 */
- const Word16 *band_grouping, /* i : indices of band groups */
- const Word16 N_bands, /* i : number of bands (groups) */
- const Word16 enc_param_start_band, /* i : first band to process */
- Word32 *azi_fx, /* o : array of sector azimuth angles, flat Q23 */
- Word32 *ele_fx, /* o : array of sector elevation angles, flat Q23 */
- Word32 *diff_fx, /* o : array of sector diffuseness values, flat */
- Word16 *diff_exp, /* o : array of sector diffuseness exponents, flat */
- Word32 *ene_fx, /* o : array of sector energy values, flat */
- Word16 *ene_exp /* o : array of sector energy exponents, flat */
+ DIRAC_ENC_HANDLE hDirAC, /* i : DirAC handle */
+ Word32 RealBuffer_fx[DIRAC_MAX_ANA_CHANS][DIRAC_NO_FB_BANDS_MAX], /* i : signal vector (L+1)^2 x N_bins,real part*/
+ Word32 ImagBuffer_fx[DIRAC_MAX_ANA_CHANS][DIRAC_NO_FB_BANDS_MAX], /* i : signal vector, imaginary part */
+ Word16 Qfac, /* i : Q-factor of signal vector */
+ const Word32 beta_fx, /* i : forgetting factor for average filtering, Q30 */
+ const Word16 *band_grouping, /* i : indices of band groups */
+ const Word16 N_bands, /* i : number of bands (groups) */
+ const Word16 enc_param_start_band, /* i : first band to process */
+ Word32 *azi_fx, /* o : array of sector azimuth angles, flat Q23 */
+ Word32 *ele_fx, /* o : array of sector elevation angles, flat Q23 */
+ Word32 *diff_fx, /* o : array of sector diffuseness values, flat */
+ Word16 *diff_exp, /* o : array of sector diffuseness exponents, flat */
+ Word32 *ene_fx, /* o : array of sector energy values, flat */
+ Word16 *ene_exp /* o : array of sector energy exponents, flat */
);
void ivas_mc_paramupmix_enc_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS Encoder handle */
- BSTR_ENC_HANDLE hMetaData, /* i/o: IVAS Metadata bitstream handle */
+ Encoder_Struct *st_ivas, /* i/o: IVAS Encoder handle */
+ BSTR_ENC_HANDLE hMetaData, /* i/o: IVAS Metadata bitstream handle */
Word32 *data_fx[],
- const Word16 input_frame /* i : input frame length */
+ const Word16 input_frame /* i : input frame length */
);
-void ivas_mc_paramupmix_dec_render(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
- UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
- UWord16 *nSamplesAvailable, /* o : number of CLDFB slots still to render */
- Word32 *input_fx[], /* i : core-coder transport channels */
- Word32 *output_fx[] /* i/o: synthesized core-coder transport channels */
+void ivas_mc_paramupmix_dec_render_fx(
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
+ UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
+ UWord16 *nSamplesAvailable, /* o : number of CLDFB slots still to render */
+ Word32 *input_fx[], /* i : core-coder transport channels */
+ Word32 *output_fx[] /* i/o: synthesized core-coder transport channels */
);
Word16 ivas_param_mc_getNumTransportChannels_fx(
- const Word32 ivas_total_bitrate, /* i : IVAS total bitrate */
- const MC_LS_SETUP mc_ls_setup /* i : MC ls setup */
+ const Word32 ivas_total_bitrate, /* i : IVAS total bitrate */
+ const MC_LS_SETUP mc_ls_setup /* i : MC ls setup */
);
ivas_error ivas_param_mc_dec_open_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
ivas_error ivas_param_mc_dec_reconfig_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
void ivas_param_mc_dec_close_fx(
- PARAM_MC_DEC_HANDLE *hParamMC_out /* i/o: Parametric MC decoder handle */
+ PARAM_MC_DEC_HANDLE *hParamMC_out /* i/o: Parametric MC decoder handle */
);
void ivas_param_mc_dec_digest_tc_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord8 nCldfbSlots, /* i : number of CLFBS slots in the transport channels */
- Word32 *transport_channels_f_fx[],
- Word16 transport_f_e );
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord8 nCldfbSlots, /* i : number of CLFBS slots in the transport channels */
+ Word32 *p_data_fx[], /* i/o: synthesized core-coder transport channels/DirAC output */
+ const Word16 q_data /* i : Q-factor of input signal for single channel */
+);
-#ifdef OBJ_EDITING_API
void ivas_param_mc_dec_prepare_renderer(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord8 nCldfbSlots /* i : number of CLFBS slots in the transport channels */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord8 nCldfbSlots /* i : number of CLFBS slots in the transport channels */
);
-#endif
void ivas_param_mc_dec_render_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
- UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
- UWord16 *nSamplesAvailable, /* o : number of CLDFB slots still to render */
- Word32 *output_f_fx[], /* o : rendered time signal */
- Word16 channel_active_fx[MAX_OUTPUT_CHANNELS] );
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
+ UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
+ UWord16 *nSamplesAvailable, /* o : number of CLDFB slots still to render */
+ Word32 *output_fx[], /* o : rendered time signal */
+ Word16 channel_active_fx[MAX_OUTPUT_CHANNELS]
+);
Word16 matrix_product_mant_exp_fx(
- const Word32 *X_fx, /* i : left hand matrix */
- const Word16 X_fx_e, /* i : left hand matrix */
- const Word16 rowsX, /* i : number of rows of the left hand matrix */
- const Word16 colsX, /* i : number of columns of the left hand matrix */
- const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
- const Word32 *Y_fx, /* i : right hand matrix */
- const Word16 Y_fx_e, /* i : right hand matrix */
- const Word16 rowsY, /* i : number of rows of the right hand matrix */
- const Word16 colsY, /* i : number of columns of the right hand matrix */
- const Word16 transpY, /* i : flag indicating the transposition of the right hand matrix prior to the multiplication */
- Word32 *Z_fx, /* o : resulting matrix after the matrix multiplication */
- Word16 *Z_fx_e /* o : resulting matrix after the matrix multiplication */
+ const Word32 *X_fx, /* i : left hand matrix */
+ const Word16 X_fx_e, /* i : left hand matrix */
+ const Word16 rowsX, /* i : number of rows of the left hand matrix */
+ const Word16 colsX, /* i : number of columns of the left hand matrix */
+ const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
+ const Word32 *Y_fx, /* i : right hand matrix */
+ const Word16 Y_fx_e, /* i : right hand matrix */
+ const Word16 rowsY, /* i : number of rows of the right hand matrix */
+ const Word16 colsY, /* i : number of columns of the right hand matrix */
+ const Word16 transpY, /* i : flag indicating the transposition of the right hand matrix prior to the multiplication */
+ Word32 *Z_fx, /* o : resulting matrix after the matrix multiplication */
+ Word16 *Z_fx_e /* o : resulting matrix after the matrix multiplication */
);
Word16 matrix_product_fx(
- const Word32 *X_fx, /* i : left hand matrix */
- const Word16 rowsX, /* i : number of rows of the left hand matrix */
- const Word16 colsX, /* i : number of columns of the left hand matrix */
- const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
- const Word32 *Y_fx, /* i : right hand matrix */
- const Word16 rowsY, /* i : number of rows of the right hand matrix */
- const Word16 colsY, /* i : number of columns of the right hand matrix */
- const Word16 transpY, /* i : flag indicating the transposition of the right hand matrix prior to the multiplication */
- Word32 *Z_fx /* o : resulting matrix after the matrix multiplication */
+ const Word32 *X_fx, /* i : left hand matrix */
+ const Word16 rowsX, /* i : number of rows of the left hand matrix */
+ const Word16 colsX, /* i : number of columns of the left hand matrix */
+ const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
+ const Word32 *Y_fx, /* i : right hand matrix */
+ const Word16 rowsY, /* i : number of rows of the right hand matrix */
+ const Word16 colsY, /* i : number of columns of the right hand matrix */
+ const Word16 transpY, /* i : flag indicating the transposition of the right hand matrix prior to the multiplication */
+ Word32 *Z_fx /* o : resulting matrix after the matrix multiplication */
);
Word16 matrix_product_q30_fx(
- const Word32 *X_fx, /* i : left hand matrix */
- const Word16 rowsX, /* i : number of rows of the left hand matrix */
- const Word16 colsX, /* i : number of columns of the left hand matrix */
- const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
- const Word32 *Y_fx, /* i : right hand matrix */
- const Word16 rowsY, /* i : number of rows of the right hand matrix */
- const Word16 colsY, /* i : number of columns of the right hand matrix */
- const Word16 transpY, /* i : flag indicating the transposition of the right hand matrix prior to the multiplication */
- Word32 *Z_fx /* o : resulting matrix after the matrix multiplication */
+ const Word32 *X_fx, /* i : left hand matrix */
+ const Word16 rowsX, /* i : number of rows of the left hand matrix */
+ const Word16 colsX, /* i : number of columns of the left hand matrix */
+ const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
+ const Word32 *Y_fx, /* i : right hand matrix */
+ const Word16 rowsY, /* i : number of rows of the right hand matrix */
+ const Word16 colsY, /* i : number of columns of the right hand matrix */
+ const Word16 transpY, /* i : flag indicating the transposition of the right hand matrix prior to the multiplication */
+ Word32 *Z_fx /* o : resulting matrix after the matrix multiplication */
);
Word16 matrix_product_mant_exp(
- const Word32 *X_fx, /* i : left hand matrix */
- const Word16 *X_e, /* i : left hand matrix */
- const Word16 rowsX, /* i : number of rows of the left hand matrix */
- const Word16 colsX, /* i : number of columns of the left hand matrix */
- const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
- const Word32 *Y_fx, /* i : right hand matrix */
- const Word16 *Y_e, /* i : right hand matrix */
- const Word16 rowsY, /* i : number of rows of the right hand matrix */
- const Word16 colsY, /* i : number of columns of the right hand matrix */
- const Word16 transpY, /* i : flag indicating the transposition of the right hand matrix prior to the multiplication */
- Word32 *Z_fx, /* o : resulting matrix after the matrix multiplication */
- Word16 *Z_e /* o : resulting matrix after the matrix multiplication */
+ const Word32 *X_fx, /* i : left hand matrix */
+ const Word16 *X_e, /* i : left hand matrix */
+ const Word16 rowsX, /* i : number of rows of the left hand matrix */
+ const Word16 colsX, /* i : number of columns of the left hand matrix */
+ const Word16 transpX, /* i : flag indicating the transposition of the left hand matrix prior to the multiplication */
+ const Word32 *Y_fx, /* i : right hand matrix */
+ const Word16 *Y_e, /* i : right hand matrix */
+ const Word16 rowsY, /* i : number of rows of the right hand matrix */
+ const Word16 colsY, /* i : number of columns of the right hand matrix */
+ const Word16 transpY, /* i : flag indicating the transposition of the right hand matrix prior to the multiplication */
+ Word32 *Z_fx, /* o : resulting matrix after the matrix multiplication */
+ Word16 *Z_e /* o : resulting matrix after the matrix multiplication */
);
void mat2svdMat_fx(
- const Word32 *mat, /* i : matrix as column ordered vector Qx*/
- Word32 svdMat[MAX_OUTPUT_CHANNELS][MAX_OUTPUT_CHANNELS], /* o : matrix as two-dimensional arry Qx*/
- const Word16 nRows, /* i : number of rows of the matrix Q0*/
- const Word16 mCols, /* i : number of columns of the matrix Q0*/
- const Word16 transpose /* i : flag indication transposition Q0*/
+ const Word32 *mat, /* i : matrix as column ordered vector Qx*/
+ Word32 svdMat[MAX_OUTPUT_CHANNELS][MAX_OUTPUT_CHANNELS], /* o : matrix as two-dimensional arry Qx*/
+ const Word16 nRows, /* i : number of rows of the matrix Q0*/
+ const Word16 mCols, /* i : number of columns of the matrix Q0*/
+ const Word16 transpose /* i : flag indication transposition Q0*/
);
void svdMat2mat_fx(
- Word32 svdMat[MAX_OUTPUT_CHANNELS][MAX_OUTPUT_CHANNELS], /* i : matrix as two-dimensional arry Qx*/
- Word32 *mat, /* o : matrix as column ordered vector Qx*/
- const Word16 nRows, /* i : number of rows of the matrix Q0*/
- const Word16 mCols /* i : number of columns of the matrix Q0*/
+ Word32 svdMat[MAX_OUTPUT_CHANNELS][MAX_OUTPUT_CHANNELS], /* i : matrix as two-dimensional arry Qx*/
+ Word32 *mat, /* o : matrix as column ordered vector Qx*/
+ const Word16 nRows, /* i : number of rows of the matrix Q0*/
+ const Word16 mCols /* i : number of columns of the matrix Q0*/
);
Word16 computeMixingMatrices_fx(
- const Word16 num_inputs, /* i : number of input channels */
- const Word16 num_outputs, /* i : number of output channels */
- const Word32 *Cx, /* i : input channel covariance matrix */
+ const Word16 num_inputs, /* i : number of input channels */
+ const Word16 num_outputs, /* i : number of output channels */
+ const Word32 *Cx, /* i : input channel covariance matrix */
Word16 Cx_e,
- const Word32 *Cy, /* i : target covariance matrix */
+ const Word32 *Cy, /* i : target covariance matrix */
Word16 Cy_e,
- const Word32 *Q, /* i : prototype matrix (usually a upmix matrix) */
+ const Word32 *Q, /* i : prototype matrix (usually a upmix matrix) */
Word16 Q_fx_e,
- const Word16 energy_compensation_flag, /* i : flag indicating that the energy compensation should be performed (i.e. no residual mixing matrix will follow) */
- const Word32 reg_Sx_fx, /* i : regularization factor for the input channel singular values */
+ const Word16 energy_compensation_flag, /* i : flag indicating that the energy compensation should be performed (i.e. no residual mixing matrix will follow) */
+ const Word32 reg_Sx_fx, /* i : regularization factor for the input channel singular values */
Word16 reg_Sx_e,
- const Word32 reg_ghat_fx, /* i : regularization factor for the normalization matrix */
+ const Word32 reg_ghat_fx, /* i : regularization factor for the normalization matrix */
Word16 reg_ghat_e,
- Word32 *mixing_matrix_fx, /* o : resulting mixing matrix */
+ Word32 *mixing_matrix_fx, /* o : resulting mixing matrix */
Word16 *mixing_matrix_out_e,
- Word32 *Cr_fx, /* o : residual covariance matrix */
- Word16 *Cr_e );
+ Word32 *Cr_fx, /* o : residual covariance matrix */
+ Word16 *Cr_e
+);
Word16 computeMixingMatricesResidual_fx(
- const Word32 num_outputs, /* i : number of output channels */
- const Word32 *Cx_fx, /* i : vector containing the diagonal diffuse prototype covariance */
+ const Word32 num_outputs, /* i : number of output channels */
+ const Word32 *Cx_fx, /* i : vector containing the diagonal diffuse prototype covariance */
const Word16 Cx_e,
- const Word32 *Cy_fx, /* i : matrix containing the missing cov (Cr from computeMixingMatrices()) */
+ const Word32 *Cy_fx, /* i : matrix containing the missing cov (Cr from computeMixingMatrices()) */
const Word16 Cy_fx_e,
- const Word32 reg_Sx_fx, /* i : regularization factor for the input channel singular values */
+ const Word32 reg_Sx_fx, /* i : regularization factor for the input channel singular values */
const Word16 reg_Sx_e,
- const Word32 reg_ghat_fx, /* i : regularization factor for the normalization matrix */
+ const Word32 reg_ghat_fx, /* i : regularization factor for the normalization matrix */
const Word16 reg_ghat_e,
- Word32 *mixing_matrix_fx, /* o : resulting residual mixing matrix */
- Word16 *mixing_matrix_ret_e );
+ Word32 *mixing_matrix_fx, /* o : resulting residual mixing matrix */
+ Word16 *mixing_matrix_ret_e
+);
Word16 svd_fx(
- Word32 InputMatrix[][MAX_OUTPUT_CHANNELS], /* i : matrix to be decomposed (M) InputMatrix_e*/
+ Word32 InputMatrix[][MAX_OUTPUT_CHANNELS], /* i : matrix to be decomposed (M) InputMatrix_e*/
Word16 InputMatrix_e,
- Word32 singularVectors_Left_fx[][MAX_OUTPUT_CHANNELS], /* o : left singular vectors (U) Q31*/
- Word32 singularValues_fx[MAX_OUTPUT_CHANNELS], /* o : singular values vector (S) singularValues_fx_e*/
- Word32 singularVectors_Right_fx[][MAX_OUTPUT_CHANNELS], /* o : right singular vectors (V) Q31*/
+ Word32 singularVectors_Left_fx[][MAX_OUTPUT_CHANNELS], /* o : left singular vectors (U) Q31*/
+ Word32 singularValues_fx[MAX_OUTPUT_CHANNELS], /* o : singular values vector (S) singularValues_fx_e*/
+ Word32 singularVectors_Right_fx[][MAX_OUTPUT_CHANNELS], /* o : right singular vectors (V) Q31*/
Word16 singularValues_fx_e[MAX_OUTPUT_CHANNELS],
- const Word16 nChannelsL, /* i : number of rows in the matrix to be decomposed Q0*/
- const Word16 nChannelsC /* i : number of columns in the matrix to be decomposed Q0*/
+ const Word16 nChannelsL, /* i : number of rows in the matrix to be decomposed Q0*/
+ const Word16 nChannelsC /* i : number of columns in the matrix to be decomposed Q0*/
);
ivas_error ivas_dirac_dec_output_synthesis_cov_open_fx(
DIRAC_OUTPUT_SYNTHESIS_PARAMS *h_dirac_output_synthesis_params, /* i/o: handle for the covariance synthesis parameters */
- DIRAC_OUTPUT_SYNTHESIS_COV_STATE *h_dirac_output_synthesis_state, /* i/o: hanlde for the covariance synthesis state */
- const Word16 max_band_decorr, /* i : uppermost frequency band where decorrelation is applied */
- const Word16 interp_length, /* i : length for interpolating the mixing matrices in time slots */
- const Word16 num_param_bands, /* i : number of parameter bands */
- const Word16 num_param_bands_residual, /* i : number of parameter bands with a residual mixing matrix (i.e. decorrelation */
- const Word16 nchan_in, /* i : number of input (transport) channels */
- const Word16 nchan_out, /* i : number of output channels */
- const Word32 *proto_matrix /* i : the prototype (upmix) matrix (only used if mode == 1) */
+ DIRAC_OUTPUT_SYNTHESIS_COV_STATE *h_dirac_output_synthesis_state, /* i/o: hanlde for the covariance synthesis state */
+ const Word16 max_band_decorr, /* i : uppermost frequency band where decorrelation is applied */
+ const Word16 interp_length, /* i : length for interpolating the mixing matrices in time slots */
+ const Word16 num_param_bands, /* i : number of parameter bands */
+ const Word16 num_param_bands_residual, /* i : number of parameter bands with a residual mixing matrix (i.e. decorrelation */
+ const Word16 nchan_in, /* i : number of input (transport) channels */
+ const Word16 nchan_out, /* i : number of output channels */
+ const Word32 *proto_matrix /* i : the prototype (upmix) matrix (only used if mode == 1) */
);
void ivas_dirac_dec_output_synthesis_get_interpolator_fx(
DIRAC_OUTPUT_SYNTHESIS_PARAMS *h_dirac_output_synthesis_params, /* i/o: handle for the covariance synthesis parameters */
- const UWord16 interp_length /* i : interpolator length */
+ const UWord16 interp_length /* i : interpolator length */
);
void ivas_dirac_dec_output_synthesis_cov_init_fx(
- DIRAC_OUTPUT_SYNTHESIS_COV_STATE *h_dirac_output_synthesis_state, /* i/o: pointer to the state of the covariance synthesis */
- const Word16 nchan_in, /* i : number of input (tranport) channels */
- const Word16 nchan_out, /* i : number of output channels */
- const Word16 n_param_bands, /* i : number of total parameter bands */
- const Word16 n_param_bands_res /* i : number of parameter bands with a residual mixing matrix (i.e. decorrelation */
+ DIRAC_OUTPUT_SYNTHESIS_COV_STATE *h_dirac_output_synthesis_state, /* i/o: pointer to the state of the covariance synthesis */
+ const Word16 nchan_in, /* i : number of input (tranport) channels */
+ const Word16 nchan_out, /* i : number of output channels */
+ const Word16 n_param_bands, /* i : number of total parameter bands */
+ const Word16 n_param_bands_res /* i : number of parameter bands with a residual mixing matrix (i.e. decorrelation */
);
void ivas_dirac_dec_output_synthesis_cov_param_mc_synthesise_slot_fx(
Word32 *Cldfb_RealBuffer_in_fx,
Word32 *Cldfb_ImagBuffer_in_fx,
- Word32 Cldfb_RealBuffer_fx[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* o : output channel filter bank samples (real part) */
- Word32 Cldfb_ImagBuffer_fx[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* o : output channel filter bank samples (imaginary part) */
- Word32 *mixing_matrix_fx[], /* i : parameter band wise mixing matrices (direct part) */
- Word16 *mixing_matrix_e, /* i : parameter band wise mixing matrices (direct part) */
- Word32 *mixing_matrix_res_fx[], /* i : parameter band wise mixing matrices (residual part) */
- Word16 *mixing_matrix_res_e, /* i : parameter band wise mixing matrices (residual part) */
- const UWord16 slot_idx_sfr, /* i : time slot index for the current slot within the current subframe */
- const UWord16 slot_idx_tot, /* i : time slot index for the current slot within the frame */
- const Word16 nX, /* i : number of input channels */
- const Word16 nY, /* i : number of output channels */
- PARAM_MC_DEC_HANDLE hParamMC /* i : handle to the Parametric MC decoder state */
+ Word32 Cldfb_RealBuffer_fx[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* o : output channel filter bank samples (real part) */
+ Word32 Cldfb_ImagBuffer_fx[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* o : output channel filter bank samples (imaginary part) */
+ Word32 *mixing_matrix_fx[], /* i : parameter band wise mixing matrices (direct part) */
+ Word16 *mixing_matrix_e, /* i : parameter band wise mixing matrices (direct part) */
+ Word32 *mixing_matrix_res_fx[], /* i : parameter band wise mixing matrices (residual part) */
+ Word16 *mixing_matrix_res_e, /* i : parameter band wise mixing matrices (residual part) */
+ const UWord16 slot_idx_sfr, /* i : time slot index for the current slot within the current subframe */
+ const UWord16 slot_idx_tot, /* i : time slot index for the current slot within the frame */
+ const Word16 nX, /* i : number of input channels */
+ const Word16 nY, /* i : number of output channels */
+ PARAM_MC_DEC_HANDLE hParamMC /* i : handle to the Parametric MC decoder state */
);
Word16 computeMixingMatricesISM_fx(
@@ -5372,132 +5327,136 @@ Word16 computeMixingMatricesISM_fx(
const Word32 reg_Sx_fx,
const Word32 reg_ghat_fx,
Word32 *mixing_matrix_fx,
- Word16 *mixing_matrix_e );
+ Word16 *mixing_matrix_e
+);
ivas_error ivas_spar_enc_open_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS encoder handle */
- const Word16 spar_reconfig_flag /* i : SPAR reconfiguration flag */
+ Encoder_Struct *st_ivas, /* i/o: IVAS encoder handle */
+ const Word16 spar_reconfig_flag /* i : SPAR reconfiguration flag */
);
void ivas_spar_enc_close_fx(
- SPAR_ENC_HANDLE *hSpar, /* i/o: SPAR encoder handle */
- const Word32 input_Fs, /* i : input sampling rate */
- const Word16 nchan_inp, /* i : number of input channels */
- const Word16 spar_reconfig_flag /* i : SPAR reconfiguration flag */
+ SPAR_ENC_HANDLE *hSpar, /* i/o: SPAR encoder handle */
+ const Word32 input_Fs, /* i : input sampling rate */
+ const Word16 nchan_inp, /* i : number of input channels */
+ const Word16 spar_reconfig_flag /* i : SPAR reconfiguration flag */
);
void ivas_spar_dec_close_fx(
- SPAR_DEC_HANDLE *hSpar, /* i/o: SPAR decoder handle */
- const Word32 output_Fs, /* i : output sampling rate */
- const Word16 spar_reconfig_flag /* i : SPAR reconfiguration flag */
+ SPAR_DEC_HANDLE *hSpar, /* i/o: SPAR decoder handle */
+ const Word32 output_Fs, /* i : output sampling rate */
+ const Word16 spar_reconfig_flag /* i : SPAR reconfiguration flag */
);
ivas_error ivas_sba_linear_renderer_fx(
- Word32 *output_f[], /* i/o: synthesized core-coder transport channels/DirAC output */
- const Word16 output_frame, /* i : output frame length per channel */
- const Word16 nchan_in, /* i : number of input ambisonics channels */
- const Word16 nchan_ism, /* i : number of objects */
- const AUDIO_CONFIG output_config, /* i : output audio configuration */
- const IVAS_OUTPUT_SETUP output_setup /* i : output format setup */
+ Word32 *output_fx[], /* i/o: synthesized core-coder transport channels/DirAC output */
+ const Word16 output_frame, /* i : output frame length per channel */
+ const Word16 nchan_in, /* i : number of input ambisonics channels */
+ const Word16 nchan_ism, /* i : number of objects */
+ const AUDIO_CONFIG output_config, /* i : output audio configuration */
+ const IVAS_OUTPUT_SETUP output_setup /* i : output format setup */
);
void ivas_sba_mix_matrix_determiner_fx(
- SPAR_DEC_HANDLE hSpar, /* i/o: SPAR decoder handle */
- Word32 *output_fx[], /* i/o: transport/output audio channels */
- const Word16 bfi, /* i : BFI flag */
- const Word16 nchan_remapped, /* i : num channels after remapping of TCs */
- const Word16 output_frame, /* i : output frame length */
- const Word16 num_md_sub_frames, /* i : number of subframes in mixing matrix*/
- const Word16 Q_output /* i : Q of transport/output audio channels */
+ SPAR_DEC_HANDLE hSpar, /* i/o: SPAR decoder handle */
+ Word32 *output_fx[], /* i/o: transport/output audio channels */
+ const Word16 bfi, /* i : BFI flag */
+ const Word16 nchan_remapped, /* i : num channels after remapping of TCs */
+ const Word16 output_frame, /* i : output frame length */
+ const Word16 num_md_sub_frames, /* i : number of subframes in mixing matrix */
+ const Word16 Q_output /* i : Q of transport/output audio channels */
);
Word16 ivas_agc_enc_get_flag(
- const Word16 nchan_transport /* i : number of transport channels */
+ const Word16 nchan_transport /* i : number of transport channels */
);
ivas_error ivas_spar_agc_enc_open_fx(
- ivas_agc_enc_state_t **hAgcEnc, /* i/o: SPAR AGC encoder handle */
- const Word32 input_Fs, /* i : input sampling rate */
- const Word16 nchan_inp /* i : number of input channels */
+ ivas_agc_enc_state_t **hAgcEnc, /* i/o: SPAR AGC encoder handle */
+ const Word32 input_Fs, /* i : input sampling rate */
+ const Word16 nchan_inp /* i : number of input channels */
);
void ivas_spar_agc_enc_close_fx(
- ivas_agc_enc_state_t **hAgcEnc /* i/o: SPAR AGC encoder handle */
+ ivas_agc_enc_state_t **hAgcEnc /* i/o: SPAR AGC encoder handle */
);
void ivas_agc_enc_process_fx(
- ivas_agc_enc_state_t *hAgcEnc, /* i/o: AGC encoder handle */
- BSTR_ENC_HANDLE hMetaData, /* i/o: MetaData handle */
- Word32 **ppPcm_in, /* i : input audio channels */
- Word32 **ppPcm_out, /* o : output audio channels */
- const Word16 n_channels, /* i : number of channels */
- const ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : configuration structure */
- Word16 *q_ppPcm );
+ ivas_agc_enc_state_t *hAgcEnc, /* i/o: AGC encoder handle */
+ BSTR_ENC_HANDLE hMetaData, /* i/o: MetaData handle */
+ Word32 **ppPcm_in, /* i : input audio channels */
+ Word32 **ppPcm_out, /* o : output audio channels */
+ const Word16 n_channels, /* i : number of channels */
+ const ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : configuration structure */
+ Word16 *q_ppPcm
+);
void ivas_spar_set_bitrate_config_fx(
- ivas_spar_md_com_cfg *pSpar_md_cfg, /* i/o: SPAR MD config. handle */
- const Word16 table_idx, /* i : config. table index */
- const Word16 num_bands, /* i : number of bands */
+ ivas_spar_md_com_cfg *pSpar_md_cfg, /* i/o: SPAR MD config. handle */
+ const Word16 table_idx, /* i : config. table index */
+ const Word16 num_bands, /* i : number of bands */
const Word16 dirac2spar_md_flag,
const Word16 enc_flag,
const Word16 pca_flag,
- const Word16 agc_flag );
+ const Word16 agc_flag
+);
Word16 ivas_is_res_channel(
- const Word16 ch, /* i : ch index in WYZX ordering */
- const Word16 nchan_transport /* i : number of transport channels (1-4) */
+ const Word16 ch, /* i : ch index in WYZX ordering */
+ const Word16 nchan_transport /* i : number of transport channels (1-4) */
);
void ivas_spar_dec_agc_pca_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- Word32 *output[], /* i/o: input/output audio channels */
- const Word16 output_frame /* i : output frame length */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ Word32 *output[], /* i/o: input/output audio channels */
+ const Word16 output_frame /* i : output frame length */
);
void ivas_spar_dec_set_render_map_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 nCldfbTs /* i : number of CLDFB time slots */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const Word16 nCldfbTs /* i : number of CLDFB time slots */
);
void ivas_spar_dec_set_render_params_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const Word16 n_cldfb_slots /* i : number of cldfb slots in this frame */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const Word16 n_cldfb_slots /* i : number of cldfb slots in this frame */
);
void ivas_spar_dec_digest_tc_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const Word16 nchan_transport, /* i : number of transport channels */
- const Word16 nCldfbSlots, /* i : number of CLDFB slots */
- const Word16 nSamplesForRendering /* i : number of samples provided */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const Word16 nchan_transport, /* i : number of transport channels */
+ const Word16 nCldfbSlots, /* i : number of CLDFB slots */
+ const Word16 nSamplesForRendering /* i : number of samples provided */
);
void ivas_sba_dec_digest_tc_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const Word16 nCldfbSlots, /* i : number of CLDFB slots */
- const Word16 nSamplesForRendering /* i : number of samples provided */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const Word16 nCldfbSlots, /* i : number of CLDFB slots */
+ const Word16 nSamplesForRendering /* i : number of samples provided */
);
+
ivas_error ivas_sba_dec_render_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
- UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
- UWord16 *nSamplesAvailableNext, /* o : number of CLDFB slots still to render */
- Word32 *output_fx[] /* o : rendered time signal Q11*/
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
+ UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
+ UWord16 *nSamplesAvailableNext, /* o : number of CLDFB slots still to render */
+ Word32 *output_fx[] /* o : rendered time signal Q11*/
);
void ivas_spar_dec_upmixer_sf_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- Word32 *output_fx[], /* o : output audio channels */
- const Word16 nchan_internal /* i : number of internal channels */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ Word32 *output_fx[], /* o : output audio channels */
+ const Word16 nchan_internal /* i : number of internal channels */
);
ivas_error ivas_spar_md_enc_open_fx(
- ivas_spar_md_enc_state_t **hMdEnc_in, /* i/o: SPAR MD encoder handle */
- const ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : configuration structure */
- const Word16 sba_order /* i : Ambisonic (SBA) order */
+ ivas_spar_md_enc_state_t **hMdEnc_in, /* i/o: SPAR MD encoder handle */
+ const ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : configuration structure */
+ const Word16 sba_order /* i : Ambisonic (SBA) order */
);
void ivas_spar_md_enc_close_fx(
- ivas_spar_md_enc_state_t **hMdEnc /* i/o: SPAR MD encoder handle */
+ ivas_spar_md_enc_state_t **hMdEnc /* i/o: SPAR MD encoder handle */
);
void ivas_create_fullr_dmx_mat_fx(
@@ -5511,7 +5470,8 @@ void ivas_create_fullr_dmx_mat_fx(
const Word16 start_band,
const Word16 end_band,
const Word16 active_w,
- ivas_spar_md_com_cfg *hMdCfg );
+ ivas_spar_md_com_cfg *hMdCfg
+);
void ivas_get_spar_md_from_dirac_enc_fx(
Word32 azi_dirac_fx[IVAS_MAX_NUM_BANDS][MAX_PARAM_SPATIAL_SUBFRAMES], // Q22
@@ -5529,7 +5489,8 @@ void ivas_get_spar_md_from_dirac_enc_fx(
Word32 Wscale_d[IVAS_MAX_NUM_BANDS], // Q29
const UWord8 useLowerRes,
const Word16 active_w_vlbr,
- const Word16 dyn_active_w_flag );
+ const Word16 dyn_active_w_flag
+);
void ivas_get_spar_md_from_dirac_fx(
Word32 azi_dirac_fx[IVAS_MAX_NUM_BANDS][MAX_PARAM_SPATIAL_SUBFRAMES], // Q22
@@ -5547,73 +5508,76 @@ void ivas_get_spar_md_from_dirac_fx(
Word32 Wscale_d[IVAS_MAX_NUM_BANDS], // Q29
const UWord8 useLowerRes,
const Word16 active_w_vlbr,
- const Word16 dyn_active_w_flag );
+ const Word16 dyn_active_w_flag
+);
ivas_error ivas_spar_md_enc_process_fx(
- ivas_spar_md_enc_state_t *hMdEnc, /* i/o: SPAR MD encoder handle */
- const ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : configuration structure */
+ ivas_spar_md_enc_state_t *hMdEnc, /* i/o: SPAR MD encoder handle */
+ const ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : configuration structure */
Word32 *cov_real_fx[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH],
Word16 *cov_real_q[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH],
Word32 *cov_dtx_real_fx[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH],
Word16 *cov_dtx_real_q[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH],
- BSTR_ENC_HANDLE hMetaData, /* i/o: MetaData handle */
+ BSTR_ENC_HANDLE hMetaData, /* i/o: MetaData handle */
const Word16 dtx_vad,
const Word16 nchan_inp,
- const Word16 sba_order, /* i : Ambisonic (SBA) order */
- Word32 *prior_mixer[IVAS_MAX_FB_MIXER_OUT_CH][IVAS_MAX_SPAR_FB_MIXER_IN_CH], /* i : prior mixer_matrix */
- Word16 *q_prior_mixer, /* i/o : q for prior mixer_matrix */
- const Word16 dyn_active_w_flag, /* i : flag to indicate dynamic active W */
- const Word16 dirac_mono_flag, /* i : flag to indicate mono only mode in SBA */
- const Word16 nchan_out );
+ const Word16 sba_order, /* i : Ambisonic (SBA) order */
+ Word32 *prior_mixer[IVAS_MAX_FB_MIXER_OUT_CH][IVAS_MAX_SPAR_FB_MIXER_IN_CH], /* i : prior mixer_matrix */
+ Word16 *q_prior_mixer, /* i/o : q for prior mixer_matrix */
+ const Word16 dyn_active_w_flag, /* i : flag to indicate dynamic active W */
+ const Word16 dirac_mono_flag, /* i : flag to indicate mono only mode in SBA */
+ const Word16 nchan_out
+);
Word16 ivas_get_spar_dec_md_num_subframes(
- const Word16 sba_order, /* i : Ambisonic (SBA) order */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word32 ivas_last_active_brate /* i : IVAS last active bitrate */
+ const Word16 sba_order, /* i : Ambisonic (SBA) order */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word32 ivas_last_active_brate /* i : IVAS last active bitrate */
);
void ivas_spar_get_parameters_fx(
- SPAR_DEC_HANDLE hSpar, /* i/o: SPAR decoder handle */
- const DECODER_CONFIG_HANDLE hDecoderConfig, /* i : configuration structure */
- const Word16 ts, /* i : time slot index */
- const Word16 num_ch_out, /* i : number of channels out */
- const Word16 num_ch_in, /* i : number of channels in */
- const Word16 num_spar_bands, /* i : number of SPAR bands */
- Word32 par_mat_fx[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH][IVAS_MAX_NUM_BANDS] /* o : mixing matrix */
+ SPAR_DEC_HANDLE hSpar, /* i/o: SPAR decoder handle */
+ const DECODER_CONFIG_HANDLE hDecoderConfig, /* i : configuration structure */
+ const Word16 ts, /* i : time slot index */
+ const Word16 num_ch_out, /* i : number of channels out */
+ const Word16 num_ch_in, /* i : number of channels in */
+ const Word16 num_spar_bands, /* i : number of SPAR bands */
+ Word32 par_mat_fx[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH][IVAS_MAX_NUM_BANDS] /* o : mixing matrix */
);
void ivas_spar_to_dirac_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- ivas_spar_md_dec_state_t *hMdDec, /* i/o: SPAR MD decoder handle */
- const Word16 dtx_vad, /* i : DTX frame flag */
- const Word16 num_bands_out, /* i : number of output bands */
- const Word16 bw, /* i : band joining factor */
- const Word16 dyn_active_w_flag /* i : dynamic active W flag */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ ivas_spar_md_dec_state_t *hMdDec, /* i/o: SPAR MD decoder handle */
+ const Word16 dtx_vad, /* i : DTX frame flag */
+ const Word16 num_bands_out, /* i : number of output bands */
+ const Word16 bw, /* i : band joining factor */
+ const Word16 dyn_active_w_flag /* i : dynamic active W flag */
);
void ivas_spar_dec_gen_umx_mat_fx(
- ivas_spar_md_dec_state_t *hMdDec, /* i/o: SPAR MD decoder handle */
- const Word16 nchan_transport, /* i : number of transport channels */
- const Word16 num_bands_out, /* i : number of output bands */
- const Word16 bfi, /* i : bad frame indicator */
- const Word16 num_md_sub_frames );
+ ivas_spar_md_dec_state_t *hMdDec, /* i/o: SPAR MD decoder handle */
+ const Word16 nchan_transport, /* i : number of transport channels */
+ const Word16 num_bands_out, /* i : number of output bands */
+ const Word16 bfi, /* i : bad frame indicator */
+ const Word16 num_md_sub_frames
+);
ivas_error ivas_spar_covar_enc_open_fx(
- ivas_enc_cov_handler_state_t **hCovEnc, /* i/o: SPAR Covar. encoder handle */
- ivas_filterbank_t *pFb, /* i/o: FB handle */
- const Word32 input_Fs, /* i : input sampling rate */
- const Word16 nchan_inp, /* i : number of input channels */
- const COV_SMOOTHING_TYPE smooth_mode, /* i : Smooth covariance for SPAR or MC*/
- const Word32 ivas_total_brate /* i : IVAS total bitrate */
+ ivas_enc_cov_handler_state_t **hCovEnc, /* i/o: SPAR Covar. encoder handle */
+ ivas_filterbank_t *pFb, /* i/o: FB handle */
+ const Word32 input_Fs, /* i : input sampling rate */
+ const Word16 nchan_inp, /* i : number of input channels */
+ const COV_SMOOTHING_TYPE smooth_mode, /* i : Smooth covariance for SPAR or MC */
+ const Word32 ivas_total_brate /* i : IVAS total bitrate */
);
void ivas_spar_covar_enc_close_fx(
- ivas_enc_cov_handler_state_t **hCovEnc, /* i/o: SPAR Covar. encoder handle */
- const Word16 nchan_inp /* i : number of input channels */
+ ivas_enc_cov_handler_state_t **hCovEnc, /* i/o: SPAR Covar. encoder handle */
+ const Word16 nchan_inp /* i : number of input channels */
);
void ivas_enc_cov_handler_process_fx(
- ivas_enc_cov_handler_state_t *hCovEnc, /* i/o: SPAR Covar. encoder handle */
+ ivas_enc_cov_handler_state_t *hCovEnc, /* i/o: SPAR Covar. encoder handle */
Word32 **ppIn_FR_real,
Word32 **ppIn_FR_imag,
Word16 q_ppIn_FR,
@@ -5621,7 +5585,7 @@ void ivas_enc_cov_handler_process_fx(
Word16 *q_cov_real[IVAS_SPAR_MAX_CH],
Word32 *cov_dtx_real[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH],
Word16 *q_cov_dtx_real[IVAS_SPAR_MAX_CH],
- ivas_filterbank_t *pFb, /* i/o: FB handle */
+ ivas_filterbank_t *pFb, /* i/o: FB handle */
const Word16 start_band,
const Word16 end_band,
const Word16 num_ch,
@@ -5632,79 +5596,84 @@ void ivas_enc_cov_handler_process_fx(
const Word16 *remix_order,
Word16 *dyn_active_w_flag,
const Word16 nchan_transport,
- const Word16 is_sba );
+ const Word16 is_sba
+);
ivas_error ivas_spar_covar_smooth_enc_open_fx(
- ivas_cov_smooth_state_t **hCovState, /* i/o: SPAR Covar. smoothing handle */
- const ivas_cov_smooth_cfg_t *cov_smooth_cfg, /* i : SPAR config. handle */
- ivas_filterbank_t *pFb, /* i/o: FB handle */
- const Word16 nchan_inp, /* i : number of input channels */
- const COV_SMOOTHING_TYPE smooth_mode, /* i : Smooth covariance for SPAR or MC */
- const Word32 ivas_total_brate /* i : IVAS total bitrate */
+ ivas_cov_smooth_state_t **hCovState, /* i/o: SPAR Covar. smoothing handle */
+ const ivas_cov_smooth_cfg_t *cov_smooth_cfg, /* i : SPAR config. handle */
+ ivas_filterbank_t *pFb, /* i/o: FB handle */
+ const Word16 nchan_inp, /* i : number of input channels */
+ const COV_SMOOTHING_TYPE smooth_mode, /* i : Smooth covariance for SPAR or MC */
+ const Word32 ivas_total_brate /* i : IVAS total bitrate */
);
void ivas_spar_covar_smooth_enc_close_fx(
- ivas_cov_smooth_state_t **hCovState, /* i/o: SPAR Covar. encoder handle */
- const Word16 nchan_inp /* i : number of input channels */
+ ivas_cov_smooth_state_t **hCovState, /* i/o: SPAR Covar. encoder handle */
+ const Word16 nchan_inp /* i : number of input channels */
);
void ivas_cov_smooth_process_fx(
- ivas_cov_smooth_state_t *hCovState, /* i/o: Covariance state handle */
+ ivas_cov_smooth_state_t *hCovState, /* i/o: Covariance state handle */
Word32 *cov_real[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH],
- ivas_filterbank_t *pFb, /* i/o: FB handle */
+ ivas_filterbank_t *pFb, /* i/o: FB handle */
const Word16 start_band,
const Word16 end_band,
const Word16 num_ch,
const Word16 transient_det[2],
- Word16 *q_cov[IVAS_SPAR_MAX_CH] );
+ Word16 *q_cov[IVAS_SPAR_MAX_CH]
+);
void ivas_pca_enc_init_fx(
- PCA_ENC_STATE *hPCA /* i/o: PCA encoder structure */
+ PCA_ENC_STATE *hPCA /* i/o: PCA encoder structure */
);
void ivas_pca_enc_fx(
- const ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : configuration structure */
- PCA_ENC_STATE *hPCA, /* i : PCA encoder structure */
- BSTR_ENC_HANDLE hMetaData, /* i/o: MetaData handle */
- Word32 *data_f[8], /* i : input/transformed audio channels Q11 */
- const Word16 input_frame, /* i : input frame length */
- const Word16 n_channels /* i : number of channels */
+ const ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : configuration structure */
+ PCA_ENC_STATE *hPCA, /* i : PCA encoder structure */
+ BSTR_ENC_HANDLE hMetaData, /* i/o: MetaData handle */
+ Word32 *data_f[8], /* i : input/transformed audio channels Q11 */
+ const Word16 input_frame, /* i : input frame length */
+ const Word16 n_channels /* i : number of channels */
);
void cov_subfr_fx(
Word32 **ptr_sig_fx, // Q11
Word64 *r_fx_64, // Q11
const Word16 n_channels,
- const Word16 len );
+ const Word16 len
+);
void ivas_pca_read_bits_fx(
- Decoder_State *st0, /* i/o: decoder state structure - for bitstream handling*/
- PCA_DEC_STATE *hPCA /* i/o: PCA encoder structure */
+ Decoder_State *st0, /* i/o: decoder state structure - for bitstream handling*/
+ PCA_DEC_STATE *hPCA /* i/o: PCA encoder structure */
);
void ivas_pca_dec_init_fx(
- PCA_DEC_STATE *hPCA /* i/o: PCA decoder structure */
+ PCA_DEC_STATE *hPCA /* i/o: PCA decoder structure */
);
void ivas_pca_dec_fx(
- PCA_DEC_STATE *hPCA, /* i/o: PCA decoder structure */
- const Word16 output_frame, /* i : output frame length */
- const Word16 n_channels, /* i : number of channels */
- const Word32 ivas_total_brate, /* i : IVAS total bitrate */
- const Word32 last_ivas_total_brate, /* i : last IVAS total bitrate */
- const Word16 bfi, /* i : bad frame indicator */
- Word32 *pcm_out[] /* o : output audio channels */
+ PCA_DEC_STATE *hPCA, /* i/o: PCA decoder structure */
+ const Word16 output_frame, /* i : output frame length */
+ const Word16 n_channels, /* i : number of channels */
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate */
+ const Word32 last_ivas_total_brate, /* i : last IVAS total bitrate */
+ const Word16 bfi, /* i : bad frame indicator */
+ Word32 *pcm_out[] /* o : output audio channels */
);
void eye_matrix_fx(
Word16 *mat,
const Word16 n,
- const Word16 d );
+ const Word16 d
+);
void eye_matrix_fx32(
Word32 *mat, // Q
const Word16 n,
- const Word32 d ); // Q
+ const Word32 d // Q
+);
void eig_qr_fx(
const Word32 *A_fx, // A_q
@@ -5712,12 +5681,14 @@ void eig_qr_fx(
const Word16 num_iter,
Word32 *EV_fx, // Q31
Word32 *Vals_fx, // A_q
- const Word16 n );
+ const Word16 n
+);
void exhst_4x4_fx(
Word16 *cost_mtx, // Q
Word16 *path,
- const Word16 maximize );
+ const Word16 maximize
+);
Word16 mat_det4_fx(
const Word16 *m // Q15
@@ -5732,13 +5703,15 @@ void mat2dquat_fx(
void dquat2mat_fx(
const Word16 *ql,
const Word16 *qr,
- Word16 *m );
+ Word16 *m
+);
void quat_shortestpath_fx(
const Word16 *q00,
Word16 *q01,
const Word16 *q10,
- Word16 *q11 );
+ Word16 *q11
+);
void pca_interp_preproc_fx(
const Word16 *prev_ql,
@@ -5747,110 +5720,119 @@ void pca_interp_preproc_fx(
const Word16 *qr,
const Word16 len,
Word16 *ql_interp,
- Word16 *qr_interp );
+ Word16 *qr_interp
+);
void pca_dec_s3_fx(
const Word32 index,
- Word16 *q );
+ Word16 *q
+);
void ivas_spar_huff_coeffs_com_init(
ivas_huff_coeffs_t *pHuff_coeffs,
ivas_spar_md_com_cfg *pSpar_cfg,
const Word16 table_idx,
- const Word16 enc_dec );
+ const Word16 enc_dec
+);
void ivas_spar_arith_coeffs_com_init(
ivas_arith_coeffs_t *pArith_coeffs,
ivas_spar_md_com_cfg *pSpar_cfg,
const Word16 table_idx,
- const Word16 enc_dec );
+ const Word16 enc_dec
+);
void ivas_ari_start_decoding_14bits_ext_1_lfe(
Decoder_State *st,
Tastat *s,
- Word16 *extra_bits_read );
+ Word16 *extra_bits_read
+);
UWord16 ivas_ari_decode_14bits_bit_ext_1_lfe(
Decoder_State *st,
Tastat *s,
const UWord16 *cum_freq,
- Word16 *extra_bits_read );
+ Word16 *extra_bits_read
+);
void ivas_ari_done_decoding_14bits_ext_1_lfe(
Decoder_State *st,
- const Word16 extra_bits_read );
+ const Word16 extra_bits_read
+);
Word16 quantize_phi_fx(
- Word32 phi, /* i : azimuth value */
- const Word16 flag_delta, /* i : flag indicating if the azimuth codebook is translated or not */
- Word32 *phi_hat, /* o : quantized azimuth */
- const Word16 n /* i : azimuth codebook size */
+ Word32 phi, /* i : azimuth value */
+ const Word16 flag_delta, /* i : flag indicating if the azimuth codebook is translated or not */
+ Word32 *phi_hat, /* o : quantized azimuth */
+ const Word16 n /* i : azimuth codebook size */
);
Word16 quantize_phi_enc_fx(
- Word32 phi, /* i : azimuth value */
- const Word16 flag_delta, /* i : flag indicating if the azimuth codebook is translated or not */
- Word32 *phi_hat, /* o : quantized azimuth */
- const Word16 n /* i : azimuth codebook size */
+ Word32 phi, /* i : azimuth value */
+ const Word16 flag_delta, /* i : flag indicating if the azimuth codebook is translated or not */
+ Word32 *phi_hat, /* o : quantized azimuth */
+ const Word16 n /* i : azimuth codebook size */
);
Word16 ivas_spar_chk_zero_coefs_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder handle */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder handle */
);
void pca_enc_s3_fx(
Word16 *q, // Q15
- Word32 *index );
+ Word32 *index
+);
void ivas_spar_get_uniform_quant_strat_fx(
ivas_spar_md_com_cfg *pSpar_md_com_cfg,
- const Word16 table_idx );
+ const Word16 table_idx
+);
void ivas_lfe_lpf_select_filt_coeff_fx(
- const Word32 sampling_rate, /* i : sampling rate */
- const Word16 order, /* i : filter order */
- const Word32 **ppFilt_coeff_fx, /* o : filter coefficients */
- const Word16 **ppFilt_coeff_e /* o : exponents of filter coefficients */
+ const Word32 sampling_rate, /* i : sampling rate */
+ const Word16 order, /* i : filter order */
+ const Word32 **ppFilt_coeff_fx, /* o : filter coefficients */
+ const Word16 **ppFilt_coeff_e /* o : exponents of filter coefficients */
);
void ivas_filters_init_fx(
- ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
- const Word32 *filt_coeff, /* i : filter coefficients */
- const Word16 *filt_coeff_e, /* i : exponents of filter coefficients */
- const Word16 order /* i : filter order */
+ ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
+ const Word32 *filt_coeff, /* i : filter coefficients */
+ const Word16 *filt_coeff_e, /* i : exponents of filter coefficients */
+ const Word16 order /* i : filter order */
);
void ivas_decision_matrix_enc_fx(
- Encoder_State *st, /* i : encoder state structure */
- const Word32 element_brate, /* i : element bitrate */
- const Word16 fft_buff[], /* i : FFT buffer */
- const Word32 enerBuffer[], /* i : energy buffer */
+ Encoder_State *st, /* i : encoder state structure */
+ const Word32 element_brate, /* i : element bitrate */
+ const Word16 fft_buff[], /* i : FFT buffer */
+ const Word32 enerBuffer[], /* i : energy buffer */
Word16 enerBuffer_exp,
- const Word16 last_element_mode /* i : last element mode */
+ const Word16 last_element_mode /* i : last element mode */
);
void stereo_dft_dec_sid_coh_fx(
- Decoder_State *st, /* i/o: decoder state structure */
- const Word16 nbands, /* i : number of DFT stereo bands Q0*/
- Word16 *coh, /* i/o: coherence Q15*/
- Word16 *nb_bits /* i/o: number of bits read Q0*/
+ Decoder_State *st, /* i/o: decoder state structure */
+ const Word16 nbands, /* i : number of DFT stereo bands Q0*/
+ Word16 *coh, /* i/o: coherence Q15*/
+ Word16 *nb_bits /* i/o: number of bits read Q0*/
);
void stereo_tca_init_enc_fx(
- STEREO_TCA_ENC_HANDLE hStereoTCA, /* i/o: Stereo ICA handle */
- const Word32 input_Fs /* i : input sampling frequency */
+ STEREO_TCA_ENC_HANDLE hStereoTCA, /* i/o: Stereo ICA handle */
+ const Word32 input_Fs /* i : input sampling frequency */
);
void stereo_tca_dec_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word32 *synth[CPE_CHANNELS], /* i/o: output synth qsynth*/
- const Word16 output_frame /* i : length of a frame per channel Q0*/
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word32 *synth[CPE_CHANNELS], /* i/o: output synth qsynth*/
+ const Word16 output_frame /* i : length of a frame per channel Q0*/
);
void stereo_tca_scale_R_channel_fx(
- CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
- Word32 *output_fx, /* i/o: output synthesis, R channel q_out*/
- const Word16 output_frame /* i : frame length Q0*/
+ CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */
+ Word32 *output_fx, /* i/o: output synthesis, R channel q_out*/
+ const Word16 output_frame /* i : frame length Q0*/
);
void adjustTargetSignal_fx(
@@ -5858,215 +5840,215 @@ void adjustTargetSignal_fx(
const Word16 prevShift,
const Word16 currShift,
const Word16 L_shift_adapt,
- const Word16 method );
+ const Word16 method
+);
void stereo_icBWE_init_enc_fx(
- STEREO_ICBWE_ENC_HANDLE hStereoICBWE /* i/o: Stereo inter-channel BWE handle */
+ STEREO_ICBWE_ENC_HANDLE hStereoICBWE /* i/o: Stereo inter-channel BWE handle */
);
void stereo_classifier_init_fx(
- STEREO_CLASSIF_HANDLE hStereoClassif /* i/o: stereo classifier structure */
+ STEREO_CLASSIF_HANDLE hStereoClassif /* i/o: stereo classifier structure */
);
void stereo_td_init_dec_fx(
- STEREO_TD_DEC_DATA_HANDLE hStereoTD, /* i/o: TD stereo decoder handle */
- const Word16 last_element_mode /* i : last element mode Q0*/
+ STEREO_TD_DEC_DATA_HANDLE hStereoTD, /* i/o: TD stereo decoder handle */
+ const Word16 last_element_mode /* i : last element mode Q0*/
);
void initMdctStereoEncData_fx(
- STEREO_MDCT_ENC_DATA *hStereoMdct, /* i/o: mdct stereo parameters structure */
- const IVAS_FORMAT ivas_format, /* i : IVAS format */
- const Word16 element_mode, /* i : element mode */
- const Word32 element_brate, /* i : element bitrate */
- const Word16 bwidth, /* i : bandwidth */
- const Word16 igf, /* i : flag indicating IGF activity */
- const H_IGF_GRID hIgfGrid, /* i : IGF grid setup */
- const Word16 mem_init /* i : initialize memory after malloc */
+ STEREO_MDCT_ENC_DATA *hStereoMdct, /* i/o: mdct stereo parameters structure */
+ const IVAS_FORMAT ivas_format, /* i : IVAS format */
+ const Word16 element_mode, /* i : element mode */
+ const Word32 element_brate, /* i : element bitrate */
+ const Word16 bwidth, /* i : bandwidth */
+ const Word16 igf, /* i : flag indicating IGF activity */
+ const H_IGF_GRID hIgfGrid, /* i : IGF grid setup */
+ const Word16 mem_init /* i : initialize memory after malloc */
);
void deindex_sph_idx_fx(
- const UWord16 sphIndex, /* i : Spherical index */
- const SPHERICAL_GRID_DATA *gridData, /* i : Prepared spherical grid */
- Word32 *theta_fx, /* o : Elevation */
- Word32 *phi_fx /* o : Azimuth */
+ const UWord16 sphIndex, /* i : Spherical index */
+ const SPHERICAL_GRID_DATA *gridData, /* i : Prepared spherical grid */
+ Word32 *theta_fx, /* o : Elevation */
+ Word32 *phi_fx /* o : Azimuth */
);
ivas_error ivas_dirac_enc_open_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
);
void ivas_dirac_enc_close_fx(
- DIRAC_ENC_HANDLE *hDirAC, /* i/o: encoder DirAC handle */
- const Word32 input_Fs /* i : input sampling_rate */
+ DIRAC_ENC_HANDLE *hDirAC, /* i/o: encoder DirAC handle */
+ const Word32 input_Fs /* i : input sampling_rate */
);
ivas_error ivas_dirac_enc_fx(
- DIRAC_ENC_HANDLE hDirAC, /* i/o: encoder DirAC handle */
- IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
- BSTR_ENC_HANDLE hMetaData, /* i/o: Metadata bitstream handle */
- Word32 *data_f[], /* i/o: SBA channels */
- Word32 **ppIn_FR_real, /* o : real freq domain values */
- Word32 **ppIn_FR_imag, /* o : imag freq domain values */
+ DIRAC_ENC_HANDLE hDirAC, /* i/o: encoder DirAC handle */
+ IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
+ BSTR_ENC_HANDLE hMetaData, /* i/o: Metadata bitstream handle */
+ Word32 *data_f[], /* i/o: SBA channels */
+ Word32 **ppIn_FR_real, /* o : real freq domain values */
+ Word32 **ppIn_FR_imag, /* o : imag freq domain values */
Word16 pp_fr_q,
- const Word16 input_frame, /* i : input frame length */
- const Word16 dtx_vad, /* i : DTX vad flag */
- const IVAS_FORMAT ivas_format, /* i : ivas format */
- const Word16 nchan_transport, /* i : number of transport channels */
- const Word16 hodirac_flag, /* i : hodirac flag */
+ const Word16 input_frame, /* i : input frame length */
+ const Word16 dtx_vad, /* i : DTX vad flag */
+ const IVAS_FORMAT ivas_format, /* i : ivas format */
+ const Word16 nchan_transport, /* i : number of transport channels */
+ const Word16 hodirac_flag, /* i : hodirac flag */
const Word16 shift
);
ivas_error ivas_spar_md_enc_init_fx(
- ivas_spar_md_enc_state_t *hMdEnc, /* o : MD encoder handle */
- const ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : configuration structure */
- const Word16 sba_order /* i : Ambisonic (SBA) order */
+ ivas_spar_md_enc_state_t *hMdEnc, /* o : MD encoder handle */
+ const ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : configuration structure */
+ const Word16 sba_order /* i : Ambisonic (SBA) order */
);
void ivas_spar_get_cldfb_gains_fx(
SPAR_DEC_HANDLE hSpar,
HANDLE_CLDFB_FILTER_BANK cldfbAnaDec0,
HANDLE_CLDFB_FILTER_BANK cldfbSynDec0,
- const DECODER_CONFIG_HANDLE hDecoderConfig );
+ const DECODER_CONFIG_HANDLE hDecoderConfig
+);
void ivas_sba_getTCs_fx(
- Word32 *sba_data[], /* i : SBA signals Q11 */
- Encoder_Struct *st_ivas, /* i/o: Encoder struct */
- const Word16 input_frame /* i : frame length */
+ Word32 *sba_data[], /* i : SBA signals Q11 */
+ Encoder_Struct *st_ivas, /* i/o: Encoder struct */
+ const Word16 input_frame /* i : frame length */
);
ivas_error front_vad_spar_fx(
- SPAR_ENC_HANDLE hSpar, /* i/o: SPAR encoder structure */
- const Word32 *omni_in, /* i : omnidirectional input signal Q11 */
- ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : encoder configuration handle */
- const Word16 input_frame /* i : input frame length */
+ SPAR_ENC_HANDLE hSpar, /* i/o: SPAR encoder structure */
+ const Word32 *omni_in, /* i : omnidirectional input signal Q11 */
+ ENCODER_CONFIG_HANDLE hEncoderConfig, /* i : encoder configuration handle */
+ const Word16 input_frame /* i : input frame length */
);
ivas_error ivas_spar_enc_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
- Word32 *data_fx[], /* i/o: input/transport audio channel Q11 */
- const Word16 input_frame, /* i : input frame length */
- Word16 *nb_bits_metadata, /* i : number of MD bits written */
- BSTR_ENC_HANDLE hMetaData /* o : MetaData handle */
+ Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
+ Word32 *data_fx[], /* i/o: input/transport audio channel Q11 */
+ const Word16 input_frame, /* i : input frame length */
+ Word16 *nb_bits_metadata, /* i : number of MD bits written */
+ BSTR_ENC_HANDLE hMetaData /* o : MetaData handle */
);
ivas_error ivas_ism_enc_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
- Word32 *data[], /* i : input signal [channels][samples] Q(q_data) */
- Word16 q_data, /* i : Q-factor of input signal */
- const Word16 input_frame, /* i : input frame length per channel */
- Word16 *nb_bits_metadata, /* i : number of metadata bits */
- const Word16 flag_omasa_ener_brate /* i : less bitrate for objects in OMASA flag */
+ Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
+ Word32 *data[], /* i : input signal [channels][samples] Q(q_data) */
+ Word16 q_data, /* i : Q-factor of input signal */
+ const Word16 input_frame, /* i : input frame length per channel */
+ Word16 *nb_bits_metadata, /* i : number of metadata bits */
+ const Word16 flag_omasa_ener_brate /* i : less bitrate for objects in OMASA flag */
);
ivas_error ivas_sce_enc_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
- const Word16 sce_id, /* i : SCE # identifier */
- const Word32 data_fx[], /* i : input signal for single channel Q(q_data_fx) */
- const Word16 q_data_fx, /* i : Q-factor of input signal for single channel */
- const Word16 input_frame, /* i : input frame length per channel */
- const Word16 nb_bits_metadata /* i : number of metadata bits */
+ Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
+ const Word16 sce_id, /* i : SCE # identifier */
+ const Word32 data_fx[], /* i : input signal for single channel Q(q_data_fx) */
+ const Word16 q_data_fx, /* i : Q-factor of input signal for single channel */
+ const Word16 input_frame, /* i : input frame length per channel */
+ const Word16 nb_bits_metadata /* i : number of metadata bits */
);
ivas_error ivas_cpe_enc_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
- const Word16 cpe_id, /* i : CPE # identifier */
- Word32 data_fx_ch0[], /* i : input signal for channel 0 Q(q_data_fx) */
- Word32 data_fx_ch1[], /* i : input signal for channel 1 Q(q_data_fx) */
- Word16 q_data_fx, /* i : Q-factor of input signal for both channels */
- const Word16 input_frame, /* i : input frame length per channel */
- const Word16 nb_bits_metadata, /* i : number of metadata bits */
- Word16 Q_new_out[] );
+ Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
+ const Word16 cpe_id, /* i : CPE # identifier */
+ Word32 data_fx_ch0[], /* i : input signal for channel 0 Q(q_data_fx) */
+ Word32 data_fx_ch1[], /* i : input signal for channel 1 Q(q_data_fx) */
+ Word16 q_data_fx, /* i : Q-factor of input signal for both channels */
+ const Word16 input_frame, /* i : input frame length per channel */
+ const Word16 nb_bits_metadata, /* i : number of metadata bits */
+ Word16 Q_new_out[]
+);
ivas_error ivas_mct_enc_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
- Word32 *data_fx[MCT_MAX_CHANNELS], /* i : input signal buffers Q(q_data_fx) */
- Word16 q_data_fx, /* i : Q-factor of input signal */
- const Word16 input_frame, /* i : input frame length per channel */
- const Word16 nb_bits_metadata /* i : number of metadata bits */
+ Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
+ Word32 *data_fx[MCT_MAX_CHANNELS], /* i : input signal buffers Q(q_data_fx) */
+ Word16 q_data_fx, /* i : Q-factor of input signal */
+ const Word16 input_frame, /* i : input frame length per channel */
+ const Word16 nb_bits_metadata /* i : number of metadata bits */
);
ivas_error ivas_compute_core_buffers_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- Word16 **inp16k_out_fx, /* o : ptr. to inp. signal in the current frame */
- Word16 *old_inp_16k_fx, /* i/o: buffer of old input signal @ 16kHz */
- Word16 new_inp_resamp16k_out_fx[], /* o : new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE */
- const Word16 input_frame, /* i : frame length */
- const Word16 last_element_mode, /* i : last element mode */
- const Word32 sr_core, /* i : core-coder sampling rate */
- Word32 *ener_fx, /* o : residual energy from Levinson-Durbin Q_r */
- Word16 A_fx[NB_SUBFR16k * ( M + 1 )], /* i/o: A(z) unquantized for the 4 subframes */
- Word16 Aw_fx[NB_SUBFR16k * ( M + 1 )], /* i/o: weighted A(z) unquantized for subframes */
- Word32 epsP[M + 1], /* i/o: LP prediction errors */
- Word16 lsp_new_fx[M], /* i/o: LSPs at the end of the frame */
- Word16 lsp_mid_fx[M], /* i/o: LSPs in the middle of the frame */
+ Encoder_State *st, /* i/o: encoder state structure */
+ Word16 **inp16k_out_fx, /* o : ptr. to inp. signal in the current frame */
+ Word16 *old_inp_16k_fx, /* i/o: buffer of old input signal @ 16kHz */
+ Word16 new_inp_resamp16k_out_fx[], /* o : new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE */
+ const Word16 input_frame, /* i : frame length */
+ const Word16 last_element_mode, /* i : last element mode */
+ const Word32 sr_core, /* i : core-coder sampling rate */
+ Word32 *ener_fx, /* o : residual energy from Levinson-Durbin Q_r */
+ Word16 A_fx[NB_SUBFR16k * ( M + 1 )], /* i/o: A(z) unquantized for the 4 subframes */
+ Word16 Aw_fx[NB_SUBFR16k * ( M + 1 )], /* i/o: weighted A(z) unquantized for subframes */
+ Word32 epsP[M + 1], /* i/o: LP prediction errors */
+ Word16 lsp_new_fx[M], /* i/o: LSPs at the end of the frame */
+ Word16 lsp_mid_fx[M], /* i/o: LSPs in the middle of the frame */
Word16 Q_old_inp_16k,
Word16 Q_r[2],
- Word16 *Q_new );
+ Word16 *Q_new
+);
ivas_error ivas_enc_fx(
- Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
- const Word16 *data, /* i : input signal Q0 */
- const Word16 n_samples /* i : number of input samples */
+ Encoder_Struct *st_ivas, /* i/o: IVAS encoder structure */
+ const Word16 *data, /* i : input signal Q0 */
+ const Word16 n_samples /* i : number of input samples */
);
void reset_metadata_spatial_fx(
- const IVAS_FORMAT ivas_format, /* i : IVAS format */
- BSTR_ENC_HANDLE hMetaData, /* i/o: Metadata bitstream handle */
- const Word32 element_brate, /* i : element bitrate */
- Word32 *total_brate, /* o : total bitrate */
- const Word32 core_brate, /* i : core bitrate */
- const Word16 nb_bits_metadata /* i : number of meatdata bits */
+ const IVAS_FORMAT ivas_format, /* i : IVAS format */
+ BSTR_ENC_HANDLE hMetaData, /* i/o: Metadata bitstream handle */
+ const Word32 element_brate, /* i : element bitrate */
+ Word32 *total_brate, /* o : total bitrate */
+ const Word32 core_brate, /* i : core bitrate */
+ const Word16 nb_bits_metadata /* i : number of meatdata bits */
);
void Euler2Quat_fx(
- const Word32 yaw, /* i : yaw (x) Q22 */
- const Word32 pitch, /* i : pitch (y) Q22 */
- const Word32 roll, /* i : roll (z) Q22 */
- IVAS_QUATERNION *quat /* o : quaternion describing the rotation */
+ const Word32 yaw, /* i : yaw (x) Q22 */
+ const Word32 pitch, /* i : pitch (y) Q22 */
+ const Word32 roll, /* i : roll (z) Q22 */
+ IVAS_QUATERNION *quat /* o : quaternion describing the rotation */
);
-float deg2rad(
- float degrees );
Word32 deg2rad_fx(
- Word32 degrees );
+ Word32 degrees
+);
void Quat2EulerDegree_fx(
- const IVAS_QUATERNION quat, /* i : quaternion describing the rotation */
- Word32 *yaw_fx, /* o : yaw */
- Word32 *pitch_fx, /* o : pitch */
- Word32 *roll_fx /* o : roll */
+ const IVAS_QUATERNION quat, /* i : quaternion describing the rotation */
+ Word32 *yaw_fx, /* o : yaw */
+ Word32 *pitch_fx, /* o : pitch */
+ Word32 *roll_fx /* o : roll */
);
void Copy_Quat_fx(
- const IVAS_QUATERNION *in_quat, /* i : quaternion describing the rotation */
- IVAS_QUATERNION *out_quat /* i : quaternion describing the rotation */
+ const IVAS_QUATERNION *in_quat, /* i : quaternion describing the rotation */
+ IVAS_QUATERNION *out_quat /* o : quaternion describing the rotation */
);
void modify_Quat_q_fx(
- const IVAS_QUATERNION *in_quat, /* i : quaternion describing the rotation */
- IVAS_QUATERNION *out_quat, /* i : quaternion describing the rotation */
- Word16 q_new /* i : quaternion describing the rotation */
+ const IVAS_QUATERNION *in_quat, /* i : quaternion describing the rotation */
+ IVAS_QUATERNION *out_quat, /* i : quaternion describing the rotation */
+ Word16 q_new /* o : quaternion describing the rotation */
);
void modify_Rmat_q_fx(
- Word32 Rmat_in[3][3], /* i : real-space rotation matrix for this rotation */
- Word32 Rmat_out[3][3], /* o : real-space rotation matrix for this rotation*/
- Word16 q_cur, /* i : current q factor for rotation matrix */
- Word16 q_new /* i : target q factor for rotation matrix */
+ Word32 Rmat_in[3][3], /* i : real-space rotation matrix for this rotation */
+ Word32 Rmat_out[3][3], /* o : real-space rotation matrix for this rotation */
+ Word16 q_cur, /* i : current q factor for rotation matrix */
+ Word16 q_new /* i : target q factor for rotation matrix */
);
-/*=============================================================================================*/
-/* clang-format off */
+
/*----------------------------------------------------------------------------------*
* General IVAS prototypes
*----------------------------------------------------------------------------------*/
-/*! r: number of channels to be analysed */
-
void copy_encoder_config_ivas_fx(
Encoder_Struct *st_ivas, /* i : IVAS encoder structure */
Encoder_State *st, /* o : encoder state structure */
- const Word16 flag_all /* i : flag 1==update all, 0=partial update Q0*/
+ const Word16 flag_all /* i : flag 1==update all, 0=partial update Q0*/
);
ivas_error create_mct_enc_fx(
@@ -6082,96 +6064,97 @@ void ivas_mct_enc_close_fx(
);
ivas_error pre_proc_front_ivas_fx(
- SCE_ENC_HANDLE hSCE, /* i/o: SCE encoder structure */
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
- const Word32 element_brate, /* i : SCE/CPE element bitrate Q0*/
- const Word16 nb_bits_metadata, /* i : number of metadata bits Q0*/
- const Word16 input_frame, /* i : frame length Q0*/
- const Word16 n, /* i : channel number Q0*/
- Word16 old_inp_12k8_fx[], /* o : buffer of old input signal Q_new-1*/
- Word16 old_inp_16k_fx[], /* o : buffer of old input signal @16kHz Q_new-1*/
- Word32 *ener_fx, /* o : residual energy from Levinson-Durbin epsP_fx_q*/
- Word16 *relE_fx, /* o : frame relative energy Q8*/
- Word16 A_fx[NB_SUBFR16k * ( M + 1 )], /* o : A(z) unquantized for the 4 subframes Q12*/
- Word16 Aw_fx[NB_SUBFR16k * ( M + 1 )], /* o : weighted A(z) unquantized for subframes Q12*/
- Word32 epsP_fx[M + 1], /* o : LP prediction errors epsP_fx_q*/
+ SCE_ENC_HANDLE hSCE, /* i/o: SCE encoder structure */
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
+ const Word32 element_brate, /* i : SCE/CPE element bitrate Q0*/
+ const Word16 nb_bits_metadata, /* i : number of metadata bits Q0*/
+ const Word16 input_frame, /* i : frame length Q0*/
+ const Word16 n, /* i : channel number Q0*/
+ Word16 old_inp_12k8_fx[], /* o : buffer of old input signal Q_new-1*/
+ Word16 old_inp_16k_fx[], /* o : buffer of old input signal @16kHz Q_new-1*/
+ Word32 *ener_fx, /* o : residual energy from Levinson-Durbin epsP_fx_q*/
+ Word16 *relE_fx, /* o : frame relative energy Q8*/
+ Word16 A_fx[NB_SUBFR16k * ( M + 1 )], /* o : A(z) unquantized for the 4 subframes Q12*/
+ Word16 Aw_fx[NB_SUBFR16k * ( M + 1 )], /* o : weighted A(z) unquantized for subframes Q12*/
+ Word32 epsP_fx[M + 1], /* o : LP prediction errors epsP_fx_q*/
Word16 *epsP_fx_q,
- Word16 lsp_new_fx[M], /* o : LSPs at the end of the frame Q15*/
- Word16 lsp_mid_fx[M], /* o : LSPs in the middle of the frame Q15*/
- Word16 *vad_hover_flag, /* o : VAD hangover flag Q0*/
- Word16 *attack_flag, /* o : flag signaling attack Q0*/
- Word32 realBuffer_fx[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i/o: real buffer Q(q_re_im_buf)*/
- Word32 imagBuffer_fx[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i/o: imag buffer Q(q_re_im_buf)*/
- Word16 *q_re_im_buf, /* i/o: Q-factor of real and imag buffer */
- Word16 old_wsp_fx[], /* o : weighted input signal buffer q_old_wsp*/
+ Word16 lsp_new_fx[M], /* o : LSPs at the end of the frame Q15*/
+ Word16 lsp_mid_fx[M], /* o : LSPs in the middle of the frame Q15*/
+ Word16 *vad_hover_flag, /* o : VAD hangover flag Q0*/
+ Word16 *attack_flag, /* o : flag signaling attack Q0*/
+ Word32 realBuffer_fx[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i/o: real buffer Q(q_re_im_buf)*/
+ Word32 imagBuffer_fx[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i/o: imag buffer Q(q_re_im_buf)*/
+ Word16 *q_re_im_buf, /* i/o: Q-factor of real and imag buffer */
+ Word16 old_wsp_fx[], /* o : weighted input signal buffer q_old_wsp*/
Word16 *q_old_wsp,
- Word16 pitch_fr_fx[NB_SUBFR], /* o : fractional pitch values Q6*/
- Word16 voicing_fr_fx[NB_SUBFR], /* o : fractional pitch gains Q15*/
- Word16 *loc_harm, /* o : harmonicity flag Q0*/
- Word16 *cor_map_sum_fx, /* o : speech/music clasif. parameter Q8*/
- Word16 *vad_flag_dtx, /* o : HE-SAD flag with additional DTX HO Q0*/
- Word32 enerBuffer_fx[CLDFB_NO_CHANNELS_MAX], /* o : energy buffer enerBuffer_fx_exp*/
- Word16 *enerBuffer_fx_exp, /* o : energy buffer */
- Word16 fft_buff_fx[2 * L_FFT], /* o : FFT buffer fft_buff_fx_q*/
- Word16 *fft_buff_fx_q, /* o : FFT buffer */
- const Word16 tdm_A_PCh_fx[M + 1], /* i : unq. LP coeff. of primary channel Q12*/
- const Word16 tdm_lsp_new_PCh_fx[M], /* i : unq. LSPs of primary channel Q15*/
- const Word32 currFlatness_fx, /* i : flatness parameter Q21*/
- const Word16 tdm_ratio_idx, /* i : Current Ratio_L index Q0*/
- Word32 fr_bands_LR_fx[][2 * NB_BANDS], /* i : energy in frequency bands (fr_bands_LR_fx_q) fr_bands_LR_fx_q*/
+ Word16 pitch_fr_fx[NB_SUBFR], /* o : fractional pitch values Q6*/
+ Word16 voicing_fr_fx[NB_SUBFR], /* o : fractional pitch gains Q15*/
+ Word16 *loc_harm, /* o : harmonicity flag Q0*/
+ Word16 *cor_map_sum_fx, /* o : speech/music clasif. parameter Q8*/
+ Word16 *vad_flag_dtx, /* o : HE-SAD flag with additional DTX HO Q0*/
+ Word32 enerBuffer_fx[CLDFB_NO_CHANNELS_MAX], /* o : energy buffer enerBuffer_fx_exp*/
+ Word16 *enerBuffer_fx_exp, /* o : energy buffer */
+ Word16 fft_buff_fx[2 * L_FFT], /* o : FFT buffer fft_buff_fx_q*/
+ Word16 *fft_buff_fx_q, /* o : FFT buffer */
+ const Word16 tdm_A_PCh_fx[M + 1], /* i : unq. LP coeff. of primary channel Q12*/
+ const Word16 tdm_lsp_new_PCh_fx[M], /* i : unq. LSPs of primary channel Q15*/
+ const Word32 currFlatness_fx, /* i : flatness parameter Q21*/
+ const Word16 tdm_ratio_idx, /* i : Current Ratio_L index Q0*/
+ Word32 fr_bands_LR_fx[][2 * NB_BANDS], /* i : energy in frequency bands (fr_bands_LR_fx_q) fr_bands_LR_fx_q*/
Word16 fr_bands_LR_fx_q[CPE_CHANNELS],
- const Word16 Etot_LR_fx[], /* i : total energy Left & Right channel Q8*/
- Word32 lf_E_LR_fx[][2 * VOIC_BINS], /* i : per bin spectrum energy in lf, LR channels (lf_E_LR_fx_q)*/
+ const Word16 Etot_LR_fx[], /* i : total energy Left & Right channel Q8*/
+ Word32 lf_E_LR_fx[][2 * VOIC_BINS], /* i : per bin spectrum energy in lf, LR channels (lf_E_LR_fx_q)*/
Word16 lf_E_LR_fx_q,
- const Word16 localVAD_HE_SAD_LR[], /* i : HE-SAD flag without hangover, LR channels Q0*/
- Word32 band_energies_LR_fx[2 * NB_BANDS], /* o : energy in critical bands without minimum noise floor E_MIN (band_energies_LR_fx_q)*/
+ const Word16 localVAD_HE_SAD_LR[], /* i : HE-SAD flag without hangover, LR channels Q0*/
+ Word32 band_energies_LR_fx[2 * NB_BANDS], /* o : energy in critical bands without minimum noise floor E_MIN (band_energies_LR_fx_q)*/
Word16 band_energies_LR_fx_q,
- const Word16 flag_16k_smc, /* i : flag to indicate if the OL SMC is run at 16 kHz Q0*/
- const Word16 front_vad_flag, /* i : front-VAD flag to overwrite VAD decision Q0*/
- const Word16 force_front_vad, /* i : flag to force VAD decision Q0*/
- const Word16 front_vad_dtx_flag, /* i : front-VAD DTX flag to overwrite VAD decision Q0*/
- const IVAS_FORMAT ivas_format, /* i : IVAS format */
- const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0) Q0*/
- const Word32 last_ivas_total_brate, /* i : last IVAS total bitrate Q0*/
- const Word32 ivas_total_brate, /* i : IVAS total bitrate - for setting the DTX Q0*/
+ const Word16 flag_16k_smc, /* i : flag to indicate if the OL SMC is run at 16 kHz Q0*/
+ const Word16 front_vad_flag, /* i : front-VAD flag to overwrite VAD decision Q0*/
+ const Word16 force_front_vad, /* i : flag to force VAD decision Q0*/
+ const Word16 front_vad_dtx_flag, /* i : front-VAD DTX flag to overwrite VAD decision Q0*/
+ const IVAS_FORMAT ivas_format, /* i : IVAS format */
+ const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0) Q0*/
+ const Word32 last_ivas_total_brate, /* i : last IVAS total bitrate Q0*/
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate - for setting the DTX Q0*/
Word16 *Q_new
#ifdef DEBUG_MODE_INFO
,
const Word16 ch_idx
#endif
);
+
ivas_error pre_proc_ivas_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- const Word16 last_element_mode, /* i : last element mode Q0*/
- const Word32 element_brate, /* i : element bitrate Q0*/
- const Word32 last_element_brate, /* i : last element bitrate Q0*/
- const Word16 input_frame, /* i : frame length Q0*/
- Word16 old_inp_12k8_fx[], /* i/o: buffer of old input signal Q_new-1 */
- Word16 old_inp_16k_fx[], /* i/o: buffer of old input signal @ 16kHz Q_new-1 */
- Word16 **inp_fx, /* o : ptr. to inp. signal in the current frame Q_new*/
- Word32 *ener_fx, /* o : residual energy from Levinson-Durbin epsP_fx_q*/
- Word16 A_fx[NB_SUBFR16k * ( M + 1 )], /* i/o: A(z) unquantized for the 4 subframes Q12*/
- Word16 Aw_fx[NB_SUBFR16k * ( M + 1 )], /* i/o: weighted A(z) unquantized for subframes Q14*/
- Word32 epsP_fx[M + 1], /* i : LP prediction errors epsP_fx_q*/
- Word16 *epsP_fx_q, /* i : LP prediction errors */
- Word16 lsp_new_fx[M], /* i/o: LSPs at the end of the frame Q15*/
- Word16 lsp_mid_fx[M], /* i/o: LSPs in the middle of the frame Q15*/
- Word16 *new_inp_resamp16k_fx, /* o : new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE Q_new-1*/
- Word16 *Voicing_flag, /* o : voicing flag for HQ FEC Q0*/
- Word16 old_wsp_fx[], /* i : weighted input signal buffer e_old_wsp*/
+ Encoder_State *st, /* i/o: encoder state structure */
+ const Word16 last_element_mode, /* i : last element mode Q0*/
+ const Word32 element_brate, /* i : element bitrate Q0*/
+ const Word32 last_element_brate, /* i : last element bitrate Q0*/
+ const Word16 input_frame, /* i : frame length Q0*/
+ Word16 old_inp_12k8_fx[], /* i/o: buffer of old input signal Q_new-1 */
+ Word16 old_inp_16k_fx[], /* i/o: buffer of old input signal @ 16kHz Q_new-1 */
+ Word16 **inp_fx, /* o : ptr. to inp. signal in the current frame Q_new*/
+ Word32 *ener_fx, /* o : residual energy from Levinson-Durbin epsP_fx_q*/
+ Word16 A_fx[NB_SUBFR16k * ( M + 1 )], /* i/o: A(z) unquantized for the 4 subframes Q12*/
+ Word16 Aw_fx[NB_SUBFR16k * ( M + 1 )], /* i/o: weighted A(z) unquantized for subframes Q14*/
+ Word32 epsP_fx[M + 1], /* i : LP prediction errors epsP_fx_q*/
+ Word16 *epsP_fx_q, /* i : LP prediction errors */
+ Word16 lsp_new_fx[M], /* i/o: LSPs at the end of the frame Q15*/
+ Word16 lsp_mid_fx[M], /* i/o: LSPs in the middle of the frame Q15*/
+ Word16 *new_inp_resamp16k_fx, /* o : new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE Q_new-1*/
+ Word16 *Voicing_flag, /* o : voicing flag for HQ FEC Q0*/
+ Word16 old_wsp_fx[], /* i : weighted input signal buffer e_old_wsp*/
Word16 e_old_wsp,
- const Word16 loc_harm, /* i : harmonicity flag Q0*/
- const Word16 vad_flag_dtx, /* i : HE-SAD flag with additional DTX HO Q0*/
- const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0) Q0*/
- const Word16 vad_hover_flag, /* i : VAD hangover flag Q0*/
- const Word16 flag_16k_smc, /* i : flag to indicate if the OL SMC is run at 16 kHz Q0*/
- Word32 enerBuffer_fx[CLDFB_NO_CHANNELS_MAX], /* e_enerBuffer */
+ const Word16 loc_harm, /* i : harmonicity flag Q0*/
+ const Word16 vad_flag_dtx, /* i : HE-SAD flag with additional DTX HO Q0*/
+ const Word16 MCT_flag, /* i : hMCT handle allocated (1) or not (0) Q0*/
+ const Word16 vad_hover_flag, /* i : VAD hangover flag Q0*/
+ const Word16 flag_16k_smc, /* i : flag to indicate if the OL SMC is run at 16 kHz Q0*/
+ Word32 enerBuffer_fx[CLDFB_NO_CHANNELS_MAX], /* e_enerBuffer */
Word16 e_enerBuffer,
- Word16 fft_buff_fx[2 * L_FFT], /* Qx */
- Word16 cor_map_sum_fx, /* Q8 */
+ Word16 fft_buff_fx[2 * L_FFT], /* Qx */
+ Word16 cor_map_sum_fx, /* Q8 */
Word16 *Q_new
);
-/*! r: number of clipped samples */
+
void ivas_initialize_handles_enc_fx(
Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
);
@@ -6197,13 +6180,10 @@ ivas_error ivas_init_decoder_front(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
-
void ivas_mct_dec_close(
MCT_DEC_HANDLE *hMCT /* i/o: MCT decoder structure */
);
-/*! r: number of channels to be synthesised */
-
void copy_decoder_config(
Decoder_Struct *st_ivas, /* i : IVAS decoder structure */
Decoder_State *st /* o : decoder state structure */
@@ -6214,48 +6194,46 @@ void ivas_initialize_handles_dec(
);
ivas_error ivas_core_enc_fx(
- SCE_ENC_HANDLE hSCE, /* i/o: SCE encoder structure */
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
- MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */
- const Word16 n_CoreChannels, /* i : number of core channels to be coded Q0*/
- Word16 old_inp_12k8_fx[][L_INP_12k8], /* i : buffer of old input signal Q_new-1*/
- Word16 old_inp_16k_fx[][L_INP], /* i : buffer of old input signal Q_new-1*/
- Word16 Q_new[], /* i : Q factor of speech buffers */
- Word32 ener_fx[], /* i : residual energy from Levinson-Durbin epsP_fx_q*/
- Word16 A_fx[][NB_SUBFR16k * ( M + 1 )], /* i : A(z) unquantized for the 4 subframes Q12*/
- Word16 Aw_fx[][NB_SUBFR16k * ( M + 1 )], /* i : weighted A(z) unquantized for subframes Q12*/
- Word32 epsP_fx[][M + 1], /* i : LP prediction errors epsP_fx_q*/
- Word16 epsP_fx_q[], /* i : LP prediction errors */
- Word16 lsp_new_fx[][M], /* i : LSPs at the end of the frame Q15*/
- Word16 lsp_mid_fx[][M], /* i : LSPs in the middle of the frame Q15*/
- const Word16 vad_hover_flag[], /* i : VAD hanglover flag Q0*/
- Word16 attack_flag[], /* i : attack flag (GSC or TC) Q0*/
- Word32 realBuffer_fx[][CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i/o: real buffer q_re_im_buf*/
- Word32 imagBuffer_fx[][CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i/o: imag buffer q_re_im_buf*/
- Word16 *q_re_im_buf, /* i : Q factor of re/in CLDFB buffers */
- Word16 old_wsp_fx[][L_WSP], /* i : weighted input signal buffer e_old_wsp*/
- Word16 e_old_wsp[], /* i : Q factor of old_wsp buffer */
- const Word16 loc_harm[], /* i : harmonicity flag Q0*/
- const Word16 cor_map_sum_fx[], /* i : speech/music clasif. parameter Q8*/
- const Word16 vad_flag_dtx[], /* i : HE-SAD flag with additional DTX HO Q0*/
- Word32 enerBuffer_fx[][CLDFB_NO_CHANNELS_MAX], /* o : energy buffer enerBuffer_fx_exp*/
- Word16 enerBuffer_fx_exp[], /* o : energy buffer */
- Word16 fft_buff_fx[][2 * L_FFT], /* i : FFT buffer Qx*/
- const Word16 tdm_SM_or_LRTD_Pri, /* i : channel combination scheme flag Q0*/
- const Word16 ivas_format, /* i : IVAS format Q0*/
- const Word16 flag_16k_smc /* i : flag to indicate if the OL SMC is run at 16 kHz Q0*/
+ SCE_ENC_HANDLE hSCE, /* i/o: SCE encoder structure */
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
+ MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */
+ const Word16 n_CoreChannels, /* i : number of core channels to be coded Q0*/
+ Word16 old_inp_12k8_fx[][L_INP_12k8], /* i : buffer of old input signal Q_new-1*/
+ Word16 old_inp_16k_fx[][L_INP], /* i : buffer of old input signal Q_new-1*/
+ Word16 Q_new[], /* i : Q factor of speech buffers */
+ Word32 ener_fx[], /* i : residual energy from Levinson-Durbin epsP_fx_q*/
+ Word16 A_fx[][NB_SUBFR16k * ( M + 1 )], /* i : A(z) unquantized for the 4 subframes Q12*/
+ Word16 Aw_fx[][NB_SUBFR16k * ( M + 1 )], /* i : weighted A(z) unquantized for subframes Q12*/
+ Word32 epsP_fx[][M + 1], /* i : LP prediction errors epsP_fx_q*/
+ Word16 epsP_fx_q[], /* i : LP prediction errors */
+ Word16 lsp_new_fx[][M], /* i : LSPs at the end of the frame Q15*/
+ Word16 lsp_mid_fx[][M], /* i : LSPs in the middle of the frame Q15*/
+ const Word16 vad_hover_flag[], /* i : VAD hanglover flag Q0*/
+ Word16 attack_flag[], /* i : attack flag (GSC or TC) Q0*/
+ Word32 realBuffer_fx[][CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i/o: real buffer q_re_im_buf*/
+ Word32 imagBuffer_fx[][CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i/o: imag buffer q_re_im_buf*/
+ Word16 *q_re_im_buf, /* i : Q factor of re/in CLDFB buffers */
+ Word16 old_wsp_fx[][L_WSP], /* i : weighted input signal buffer e_old_wsp*/
+ Word16 e_old_wsp[], /* i : Q factor of old_wsp buffer */
+ const Word16 loc_harm[], /* i : harmonicity flag Q0*/
+ const Word16 cor_map_sum_fx[], /* i : speech/music clasif. parameter Q8*/
+ const Word16 vad_flag_dtx[], /* i : HE-SAD flag with additional DTX HO Q0*/
+ Word32 enerBuffer_fx[][CLDFB_NO_CHANNELS_MAX], /* o : energy buffer enerBuffer_fx_exp*/
+ Word16 enerBuffer_fx_exp[], /* o : energy buffer */
+ Word16 fft_buff_fx[][2 * L_FFT], /* i : FFT buffer Qx*/
+ const Word16 tdm_SM_or_LRTD_Pri, /* i : channel combination scheme flag Q0*/
+ const Word16 ivas_format, /* i : IVAS format Q0*/
+ const Word16 flag_16k_smc /* i : flag to indicate if the OL SMC is run @16 kHz Q0*/
);
void ivas_renderer_select(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
-#ifdef FIX_CREND_SIMPLIFY_CODE
/*! r: secondary binaural renderer type */
-RENDERER_TYPE ivas_renderer_secondary_select(
+RENDERER_TYPE ivas_renderer_secondary_select_fx(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
-#endif
ivas_error ivas_mc_enc_config_fx(
Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
@@ -6266,8 +6244,8 @@ Word16 is_IVAS_bitrate_fx(
const Word32 ivas_total_brate /* i : IVAS total bitrate */
);
-int16_t is_DTXrate(
- const int32_t ivas_total_brate /* i : IVAS total bitrate */
+Word16 is_DTXrate(
+ const Word32 ivas_total_brate /* i : IVAS total bitrate */
);
@@ -6275,28 +6253,28 @@ int16_t is_DTXrate(
* JBM prototypes
*----------------------------------------------------------------------------------*/
-ivas_error ivas_jbm_dec_set_discard_samples(
- Decoder_Struct *st_ivas /* i/o: main IVAS decoder structre */
+ivas_error ivas_jbm_dec_set_discard_samples_fx(
+ Decoder_Struct *st_ivas /* i/o: main IVAS decoder structre */
);
-TC_BUFFER_MODE ivas_jbm_dec_get_tc_buffer_mode(
- Decoder_Struct *st_ivas /* i : IVAS decoder handle */
+TC_BUFFER_MODE ivas_jbm_dec_get_tc_buffer_mode_fx(
+ Decoder_Struct *st_ivas /* i : IVAS decoder handle */
);
-void ivas_jbm_dec_tc_buffer_close(
- DECODER_TC_BUFFER_HANDLE *phTcBuffer /* i/o: TC buffer handle */
+void ivas_jbm_dec_tc_buffer_close_fx(
+ DECODER_TC_BUFFER_HANDLE *phTcBuffer /* i/o: TC buffer handle */
);
void ivas_jbm_dec_td_renderers_adapt_subframes(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
ivas_error ivas_jbm_dec_metadata_open(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
void ivas_jbm_masa_sf_to_sf_map(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
@@ -6317,6 +6295,7 @@ void ivas_ism_reset_metadata(
void ivas_ism_reset_metadata_enc(
ISM_METADATA_HANDLE hIsmMeta /* i/o: ISM metadata handle */
);
+
void ivas_ism_reset_metadata_API(
ISM_METADATA_HANDLE hIsmMeta /* i/o: ISM metadata handles */
);
@@ -6371,23 +6350,22 @@ ivas_error ivas_ism_dtx_open(
void ivas_ism_metadata_sid_enc_fx(
ISM_DTX_HANDLE hISMDTX, /* i/o: ISM DTX handle */
- const Word16 flag_noisy_speech, /* i : noisy speech flag */
- const Word16 nchan_ism, /* i : number of objects */
- const Word16 nchan_transport, /* i : number of transport channels */
+ const Word16 flag_noisy_speech, /* i : noisy speech flag */
+ const Word16 nchan_ism, /* i : number of objects */
+ const Word16 nchan_transport, /* i : number of transport channels */
const ISM_MODE ism_mode, /* i : ISM mode */
ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */
- const Word16 sid_flag, /* i : indication of SID frame */
- const Word16 md_diff_flag[], /* i : metadata differental flag */
+ const Word16 sid_flag, /* i : indication of SID frame */
+ const Word16 md_diff_flag[], /* i : metadata differental flag */
BSTR_ENC_HANDLE hBstr, /* i/o: bitstream handle */
- Word16 nb_bits_metadata[] /* o : number of metadata bits */
+ Word16 nb_bits_metadata[] /* o : number of metadata bits */
);
-
-
void ivas_param_ism_compute_noisy_speech_flag_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
);
+
/*----------------------------------------------------------------------------------*
* DFT Stereo prototypes
*----------------------------------------------------------------------------------*/
@@ -6408,14 +6386,14 @@ UWord16 rc_uni_dec_read_bit(
/*! r: Read bit */
UWord16 rc_uni_dec_read_bit_prob_fast(
RangeUniDecState *rc_st_dec, /* i/o: RC state handle */
- const Word16 freq0, /* i : Frequency for symbol 0 */
- const UWord16 tot_shift /* i : Total frequency as a power of 2 */
+ const Word16 freq0, /* i : Frequency for symbol 0 */
+ const UWord16 tot_shift /* i : Total frequency as a power of 2 */
);
/*! r: Read bits */
UWord16 rc_uni_dec_read_bits(
RangeUniDecState *rc_st_dec, /* i/o: RC state handle */
- const Word16 bits /* i : Number of bits */
+ const Word16 bits /* i : Number of bits */
);
@@ -6443,7 +6421,7 @@ void tdm_bit_alloc(
);
/*! r: value of the indice */
-uint16_t get_indice_st(
+UWord16 get_indice_st(
Decoder_State *st, /* i/o: decoder state structure */
const Word32 element_brate, /* i : element bitrate */
const Word16 pos, /* i : absolute position in the bitstream */
@@ -6457,17 +6435,17 @@ uint16_t get_indice_st(
void stereo_mdct_core_enc_fx(
CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
- Word16 new_samples[CPE_CHANNELS][L_INP], /* i : new samples Q0*/
- Word16 old_wsp[CPE_CHANNELS][L_WSP], /* i : 12.8kHz weighted speech (for LTP Qx*/
- Word16 pitch_buf_fx[CPE_CHANNELS][NB_SUBFR16k] /* o : floating pitch for each subframe Q6*/
+ Word16 new_samples[CPE_CHANNELS][L_INP], /* i : new samples Q0*/
+ Word16 old_wsp[CPE_CHANNELS][L_WSP], /* i : 12.8kHz weighted speech (for LTP Qx*/
+ Word16 pitch_buf_fx[CPE_CHANNELS][NB_SUBFR16k] /* o : floating pitch for each subframe Q6*/
);
Word16 write_stereo_to_bitstream_fx
(
STEREO_MDCT_ENC_DATA_HANDLE hStereoMdct, /* i/o: Stereo MDCT encoder structure */
Encoder_State **sts, /* i/o: Encoder state structure */
- Word16 ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask Q0*/
- const Word16 mct_on, /* i : flag mct block (1) or stereo (0) Q0*/
+ Word16 ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask Q0*/
+ const Word16 mct_on, /* i : flag mct block (1) or stereo (0) Q0*/
BSTR_ENC_HANDLE hBstr /* i/o: bitstream handle */
);
@@ -6487,9 +6465,9 @@ void stereo_cng_dec_update(
*----------------------------------------------------------------------------------*/
void mvc2c(
- const uint8_t x[], /* i : input vector */
- uint8_t y[], /* o : output vector */
- const int16_t n /* i : vector size */
+ const UWord8 x[], /* i : input vector */
+ UWord8 y[], /* o : output vector */
+ const Word16 n /* i : vector size */
);
void stereo_switching_dec(
@@ -6498,28 +6476,25 @@ void stereo_switching_dec(
);
-/*! r: number of bits written */
-
-
-
/*----------------------------------------------------------------------------------*
* MCT prototypes
*----------------------------------------------------------------------------------*/
+
void ivas_mdct_core_whitening_enc_fx(
CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
- Word16 new_samples_fx[CPE_CHANNELS][L_INP], /* i : new samples */
- Word16 old_wsp_fx[CPE_CHANNELS][L_WSP], /* i : 12.8kHz weighted speech (for LTP */
- Word16 pitch_buf[CPE_CHANNELS][NB_SUBFR16k], /* o : floating pitch for each subframe */
- Word32 *mdst_spectrum_long[CPE_CHANNELS], /* o : buffer for MDST spectrum */
- Word16 tnsBits[CPE_CHANNELS][NB_DIV], /* o : buffer TNS bits */
- Word32 *orig_spectrum_long[CPE_CHANNELS], /* o : origingal spectrum w/o whitening */
- Word16 tnsSize[CPE_CHANNELS][NB_DIV], /* o : size of TNS */
- Word16 p_param[CPE_CHANNELS][NB_DIV], /* o : pointer to parameter array */
+ Word16 new_samples_fx[CPE_CHANNELS][L_INP], /* i : new samples */
+ Word16 old_wsp_fx[CPE_CHANNELS][L_WSP], /* i : 12.8kHz weighted speech (for LTP */
+ Word16 pitch_buf[CPE_CHANNELS][NB_SUBFR16k], /* o : floating pitch for each subframe */
+ Word32 *mdst_spectrum_long[CPE_CHANNELS], /* o : buffer for MDST spectrum */
+ Word16 tnsBits[CPE_CHANNELS][NB_DIV], /* o : buffer TNS bits */
+ Word32 *orig_spectrum_long[CPE_CHANNELS], /* o : origingal spectrum w/o whitening */
+ Word16 tnsSize[CPE_CHANNELS][NB_DIV], /* o : size of TNS */
+ Word16 p_param[CPE_CHANNELS][NB_DIV], /* o : pointer to parameter array */
BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- const Word16 mct_on, /* i : flag mct block (1) or stereo (0) */
+ const Word16 mct_on, /* i : flag mct block (1) or stereo (0) */
const Word16 nChannels, /* i : total number of coded channels */
-Word16 mdst_spectrum_e[CPE_CHANNELS][NB_DIV],
-Word16 orig_spectrum_e[CPE_CHANNELS][NB_DIV]
+ Word16 mdst_spectrum_e[CPE_CHANNELS][NB_DIV],
+ Word16 orig_spectrum_e[CPE_CHANNELS][NB_DIV]
);
void splitAvailableBitsMCT_fx(
@@ -6535,24 +6510,24 @@ void enc_prm_igf_mdct(
BSTR_ENC_HANDLE hBstr /* i/o: Bitstream handle */
);
+
/*----------------------------------------------------------------------------------*
* Q Metadata prototypes for DirAC and MASA
*----------------------------------------------------------------------------------*/
-/*! r: number of bits written */
/*! r: number of bits read */
Word16 ivas_qmetadata_dec_decode(
IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
- UWord16 *bitstream, /* i : bitstream */
- Word16 *index, /* i/o: bitstream position */
- const Word16 hodirac_flag /* i : flag to indicate HO-DirAC mode */
+ UWord16 *bitstream, /* i : bitstream */
+ Word16 *index, /* i/o: bitstream position */
+ const Word16 hodirac_flag /* i : flag to indicate HO-DirAC mode */
);
/*! r: number of bits read */
Word16 ivas_qmetadata_dec_decode_hr_384_512(
IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: hQMetaData handle */
- UWord16 *bitstream, /* i : bitstream */
- Word16 *index, /* i/o: bitstream position */
+ UWord16 *bitstream, /* i : bitstream */
+ Word16 *index, /* i/o: bitstream position */
const SPHERICAL_GRID_DATA *sph_grid16, /* i : spherical grid for deindexing */
const Word16 bits_sph_idx,
const Word16 bits_sp_coh,
@@ -6562,14 +6537,13 @@ Word16 ivas_qmetadata_dec_decode_hr_384_512(
/*! r: number of bits read */
Word16 ivas_qmetadata_dec_sid_decode(
IVAS_QMETADATA_HANDLE hQMetaData, /* i/o: q_metadata handle */
- UWord16 *bitstream, /* i : bitstream */
- Word16 *index, /* i/o: bitstream position */
- const Word16 nchan_transport, /* i : number of transport channels */
- Word16 *element_mode, /* o : element mode */
- const Word16 ivas_format /* i : IVAS format */
+ UWord16 *bitstream, /* i : bitstream */
+ Word16 *index, /* i/o: bitstream position */
+ const Word16 nchan_transport, /* i : number of transport channels */
+ Word16 *element_mode, /* o : element mode */
+ const Word16 ivas_format /* i : IVAS format */
);
-
UWord16 ivas_qmetadata_reorder_generic_fx(
const Word16 signed_value
);
@@ -6594,39 +6568,38 @@ Word16 ivas_get_sba_dirac_stereo_flag(
* DirAC prototypes
*----------------------------------------------------------------------------------*/
-
ivas_error ivas_dirac_enc_reconfigure(
Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
);
ivas_error ivas_mc_paramupmix_enc_open_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
);
void ivas_mc_paramupmix_enc_close_fx(
- MC_PARAMUPMIX_ENC_HANDLE *hMCParamUpmix, /* i/o: MC Param-Upmix encoder handle */
- const int32_t input_Fs /* i : input sampling rate */
+ MC_PARAMUPMIX_ENC_HANDLE *hMCParamUpmix, /* i/o: MC Param-Upmix encoder handle */
+ const Word32 input_Fs /* i : input sampling rate */
);
ivas_error ivas_mc_paramupmix_dec_open(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
void ivas_mc_paramupmix_dec_close(
- MC_PARAMUPMIX_DEC_HANDLE *hMCParamUpmix_out /* i/o: Parametric MC decoder handle */
+ MC_PARAMUPMIX_DEC_HANDLE *hMCParamUpmix_out /* i/o: Parametric MC decoder handle */
);
void ivas_mc_paramupmix_dec_read_BS(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- Decoder_State *st, /* i/o: decoder state structure */
- MC_PARAMUPMIX_DEC_HANDLE hMCParamUpmix, /* i/o: decoder MC Param-Upmix handle */
- Word16 *nb_bits /* o : number of bits written */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ Decoder_State *st, /* i/o: decoder state structure */
+ MC_PARAMUPMIX_DEC_HANDLE hMCParamUpmix, /* i/o: decoder MC Param-Upmix handle */
+ Word16 *nb_bits /* o : number of bits written */
);
-void ivas_mc_paramupmix_dec_digest_tc(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord8 nCldfbSlots, /* i : number of CLFBS slots in the transport channels */
- const Word16 nSamplesForRendering /* i : number of samples provided */
+void ivas_mc_paramupmix_dec_digest_tc_fx(
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord8 nCldfbSlots, /* i : number of CLFBS slots in the transport channels */
+ const Word16 nSamplesForRendering /* i : number of samples provided */
);
void ivas_param_mc_set_coded_bands_fx(
@@ -6634,10 +6607,11 @@ void ivas_param_mc_set_coded_bands_fx(
);
UWord16 ivas_param_mc_get_configuration_index_fx(
- const MC_LS_SETUP mc_ls_setup, /* i : MC ls setup */
- const Word32 ivas_total_brate /* i : IVAS total bitrate */
+ const MC_LS_SETUP mc_ls_setup, /* i : MC ls setup */
+ const Word32 ivas_total_brate /* i : IVAS total bitrate */
);
+
/*----------------------------------------------------------------------------------*
* SPAR prototypes
*----------------------------------------------------------------------------------*/
@@ -6648,10 +6622,10 @@ UWord16 ivas_param_mc_get_configuration_index_fx(
ivas_error ivas_spar_md_dec_open(
ivas_spar_md_dec_state_t **hMdDec_out, /* i/o: SPAR MD decoder handle */
const DECODER_CONFIG_HANDLE hDecoderConfig, /* i : configuration structure */
- const Word16 num_channels, /* i : number of internal channels */
- const Word16 sba_order, /* i : SBA order */
- const Word16 sid_format, /* i : SID format */
- const Word32 last_active_ivas_total_brate /* i : IVAS last active bitrate */
+ const Word16 num_channels, /* i : number of internal channels */
+ const Word16 sba_order, /* i : SBA order */
+ const Word16 sid_format, /* i : SID format */
+ const Word32 last_active_ivas_total_brate /* i : IVAS last active bitrate */
);
void ivas_spar_md_dec_close(
@@ -6661,14 +6635,14 @@ void ivas_spar_md_dec_close(
ivas_error ivas_spar_md_dec_init(
ivas_spar_md_dec_state_t *hMdDec, /* i/o: SPAR MD decoder handle */
const DECODER_CONFIG_HANDLE hDecoderConfig, /* i : configuration structure */
- const Word16 num_channels, /* i : number of internal channels */
- const Word16 sba_order /* i : SBA order */
+ const Word16 num_channels, /* i : number of internal channels */
+ const Word16 sba_order /* i : SBA order */
);
/* Transient detector module */
ivas_error ivas_transient_det_open_fx(
ivas_trans_det_state_t **hTranDet, /* i/o: Transient detector handle */
- const Word32 sampling_rate /* i : sampling rate */
+ const Word32 sampling_rate /* i : sampling rate */
);
void ivas_transient_det_close_fx(
@@ -6714,29 +6688,31 @@ void ivas_clear_band_coeff_idx(
/*----------------------------------------------------------------------------------*
* MASA prototypes
*----------------------------------------------------------------------------------*/
+
ivas_error ivas_masa_enc_open_fx(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder handle */
);
void ivas_masa_enc_close_fx(
- MASA_ENCODER_HANDLE *hMasa /* i/o: MASA metadata structure */
+ MASA_ENCODER_HANDLE *hMasa /* i/o: MASA metadata structure */
);
-int16_t ivas_qmetadata_encode_extended_gr_length_fx(
+Word16 ivas_qmetadata_encode_extended_gr_length_fx(
const UWord16 value,
const UWord16 alphabet_size,
- const Word16 gr_param);
+ const Word16 gr_param
+);
void ivas_qmetadata_encode_extended_gr_fx(
- BSTR_ENC_HANDLE hMetaData, /* i/o: q_metadata handle */
- const UWord16 value, /* i : value to be encoded */
- const UWord16 alphabet_size, /* i : alphabet size */
- const Word16 gr_param); /* i : GR order */
-
+ BSTR_ENC_HANDLE hMetaData, /* i/o: q_metadata handle */
+ const UWord16 value, /* i : value to be encoded */
+ const UWord16 alphabet_size, /* i : alphabet size */
+ const Word16 gr_param /* i : GR order */
+);
void ivas_set_qmetadata_maxbit_req_fx(
IVAS_QMETADATA_HANDLE hQMetaData, /* o : qmetadata structure where the requirement value is set */
- const IVAS_FORMAT ivas_format /* i : IVAS format */
+ const IVAS_FORMAT ivas_format /* i : IVAS format */
);
@@ -6745,7 +6721,7 @@ void ivas_set_qmetadata_maxbit_req_fx(
*-----------------------------------------------------------------------------------*/
void ivas_binaural_hrtf_close_fx(
- HRTFS_FASTCONV_HANDLE *hHrtfFastConv /* i/o: decoder binaural hrtf handle */
+ HRTFS_FASTCONV_HANDLE *hHrtfFastConv /* i/o: decoder binaural hrtf handle */
);
/*----------------------------------------------------------------------------------*
@@ -6753,7 +6729,7 @@ void ivas_binaural_hrtf_close_fx(
*----------------------------------------------------------------------------------*/
void ivas_ism_renderer_close(
- ISM_RENDERER_HANDLE *hIsmRendererData /* i/o: ISM renderer handle */
+ ISM_RENDERER_HANDLE *hIsmRendererData /* i/o: ISM renderer handle */
);
@@ -6773,26 +6749,24 @@ void panning_wrap_angles(
* McMASA prototypes
*----------------------------------------------------------------------------------*/
-
ivas_error ivas_mcmasa_dec_reconfig(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder handle */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder handle */
);
void ivas_mcmasa_dmx_modify_fx(
- const Word16 n_samples, /* i : input frame length in samples */
- Word32 dmx_fx[][L_FRAME48k + NS2SA(48000, IVAS_FB_ENC_DELAY_NS)], /* i/o: downmix signal to be transformed into another format Qx*/
- Word16 dmx_Q[], /* i/o : Q of the intput signal which is being transformed*/
- const Word16 n_chnls_dmx_old, /* i : number of downmix channels in the old format Q0 */
- const Word16 n_chnls_dmx_new /* i : number of downmix channels in the target format Q0*/
+ const Word16 n_samples, /* i : input frame length in samples */
+ Word32 dmx_fx[][L_FRAME48k + NS2SA(48000, IVAS_FB_ENC_DELAY_NS)], /* i/o: downmix signal to be transformed into another format Qx*/
+ Word16 dmx_Q[], /* i/o : Q of the intput signal which is being transformed */
+ const Word16 n_chnls_dmx_old, /* i : number of downmix channels in the old format Q0 */
+ const Word16 n_chnls_dmx_new /* i : number of downmix channels in the target format Q0 */
);
ivas_error ivas_mono_dmx_renderer_open(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
-
void ivas_mono_dmx_renderer_close(
- MONO_DOWNMIX_RENDERER_HANDLE *hMonoDmxRenderer /* i/ i/o: Mono downmix structure */
+ MONO_DOWNMIX_RENDERER_HANDLE *hMonoDmxRenderer /* i/ i/o: Mono downmix structure */
);
@@ -6804,6 +6778,17 @@ void ivas_lfe_lpf_enc_close_fx(
ivas_filters_process_state_t **hLfeLpf /* i/o: LFE LPF handle */
);
+ivas_error ivas_create_lfe_lpf_enc_fx(
+ ivas_filters_process_state_t **hLfeLpf, /* o : LFE LPF handle */
+ const Word32 input_Fs /* i : input sampling rate */
+);
+
+void ivas_lfe_lpf_enc_apply_fx(
+ ivas_filters_process_state_t *hLfeLpf, /* i/o: LFE LPF handle */
+ Word32 data_lfe_ch[], /* i/o: LFE signal */
+ const Word16 input_frame /* i : input frame length per channel */
+);
+
/*----------------------------------------------------------------------------------*
* LFE Coding prototypes
@@ -6811,7 +6796,7 @@ void ivas_lfe_lpf_enc_close_fx(
ivas_error ivas_create_lfe_enc_fx(
LFE_ENC_HANDLE *hLFE, /* o : IVAS LFE encoder structure */
- const Word32 input_Fs /* i : input sampling rate */
+ const Word32 input_Fs /* i : input sampling rate */
);
void ivas_lfe_enc_close_fx(
@@ -6819,60 +6804,62 @@ void ivas_lfe_enc_close_fx(
);
void ivas_filters_init_fx(
- ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
- const Word32 *filt_coeff_fx, /* i : filter coefficients Q31- *filt_coeff_e */
- const Word16 *filt_coeff_e, /* i : exponents of filter coefficients */
- const Word16 order ) ;
+ ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
+ const Word32 *filt_coeff_fx, /* i : filter coefficients Q31- *filt_coeff_e */
+ const Word16 *filt_coeff_e, /* i : exponents of filter coefficients */
+ const Word16 order
+);
void ivas_filter_process_fx(
- ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
- Word32 *pIn_Out_fx, /* i/o: signal subject to filtering Q(q_factor) */
- const Word16 length, /* i : filter order */
- Word16 q_factor );
+ ivas_filters_process_state_t *filter_state, /* i/o: filter state handle */
+ Word32 *pIn_Out_fx, /* i/o: signal subject to filtering Q(q_factor) */
+ const Word16 length, /* i : filter order */
+ Word16 q_factor
+);
/*----------------------------------------------------------------------------------*
* OSBA prototypes
*----------------------------------------------------------------------------------*/
+
ivas_error ivas_osba_enc_reconfig(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
);
void ivas_set_surplus_brate_enc(
- Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
+ Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
#ifdef DEBUG_MODE_INFO
,
- const int16_t *nb_bits_metadata /* i : number of metadata bits */
+ const int16_t *nb_bits_metadata /* i : number of metadata bits */
#endif
);
void ivas_set_surplus_brate_dec(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- int32_t *ism_total_brate /* i : ISM total bitrate */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ Word32 *ism_total_brate /* i : ISM total bitrate */
);
ivas_error ivas_omasa_separate_object_renderer_open(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
void ivas_omasa_separate_object_renderer_close(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
);
+
/*----------------------------------------------------------------------------------*
* Filter-bank (FB) Mixer
*----------------------------------------------------------------------------------*/
ivas_error ivas_fb_set_cfg(
IVAS_FB_CFG **pFb_cfg_out, /* o : FB config. handle */
- const Word16 ivas_format, /* i : IVAS format */
- const Word16 num_in_chans, /* i : number of FB input channels */
- const Word16 num_out_chans, /* i : number of FB output channels */
- const Word16 active_w_mixing, /* i : active_w_mixing flag */
- const Word32 sampling_Fs, /* i : sampling rate */
- const Word16 nachan_dirac_ana /* i : number of DirAR analysis channels */
+ const Word16 ivas_format, /* i : IVAS format */
+ const Word16 num_in_chans, /* i : number of FB input channels */
+ const Word16 num_out_chans, /* i : number of FB output channels */
+ const Word16 active_w_mixing, /* i : active_w_mixing flag */
+ const Word32 sampling_Fs, /* i : sampling rate */
+ const Word16 nachan_dirac_ana /* i : number of DirAR analysis channels */
);
-
-/*=============================================================================================*/
-
+/* clang-format on */
#endif
diff --git a/lib_com/ivas_rom_com.h b/lib_com/ivas_rom_com.h
index 3c24b682315d2f2f108f56482978e7c6a0efcccf..5072e385f79bdc52d1785322daae59dde072cfa3 100644
--- a/lib_com/ivas_rom_com.h
+++ b/lib_com/ivas_rom_com.h
@@ -294,6 +294,9 @@ extern const Word32 diffuseness_thresholds_hr_fx[HR_MASA_ER_LEVELS + 1];
extern const Word32 no_phi_masa_inv_fx[NO_SPHERICAL_GRIDS][MAX_NO_THETA];
extern const Word32 azimuth_cb_fx[8];
extern const Word32 delta_theta_masa_fx[NO_SPHERICAL_GRIDS - 2];
+#ifdef OBJ_EDIT_BASOP
+extern const Word32 delta_theta_masa_inv_fx[NO_SPHERICAL_GRIDS - 2];
+#endif
extern const Word16 coherence_cb0_masa_Q14[DIRAC_DIFFUSE_LEVELS * 2 * MASA_NO_CV_COH];
extern const Word32 coherence_cb0_masa_fx[DIRAC_DIFFUSE_LEVELS * 2 * MASA_NO_CV_COH];
extern const Word16 coherence_cb1_masa_Q15[MASA_NO_CV_COH1 * MASA_MAXIMUM_CODING_SUBBANDS]; /* 25 */
diff --git a/lib_com/ivas_rom_com_fx.c b/lib_com/ivas_rom_com_fx.c
index 395a3c08f49c990f899bcab877a20a60ff2f5bf6..4b14f6d5acaa16e1b3e765a0169d67a7e0659e50 100644
--- a/lib_com/ivas_rom_com_fx.c
+++ b/lib_com/ivas_rom_com_fx.c
@@ -4406,6 +4406,13 @@ const Word32 delta_theta_masa_fx[NO_SPHERICAL_GRIDS - 2] = {
188743680, 188743680, 150994944, 106954752, 83886080, 62914560, 45214596, 28101836, 20971520
};
+#ifdef OBJ_EDIT_BASOP
+// Q31
+const Word32 delta_theta_masa_inv_fx[NO_SPHERICAL_GRIDS - 2] = {
+ 47721859, 47721859, 59652324, 84215045, 107374182, 143165577, 199209986, 320519947, 429496730
+};
+#endif
+
// q = 14
const Word16 coherence_cb0_masa_Q14[DIRAC_DIFFUSE_LEVELS * 2 * MASA_NO_CV_COH] = {
783, 4173, 9036, 16163, 22238, 27587, 32234, 0,
diff --git a/lib_com/ivas_rotation_com_fx.c b/lib_com/ivas_rotation_com_fx.c
index a922082f7242efab7483136bb97b39b77346eec8..d399c6a660e352ebd6ad625d8d13753c88d432a0 100644
--- a/lib_com/ivas_rotation_com_fx.c
+++ b/lib_com/ivas_rotation_com_fx.c
@@ -85,9 +85,10 @@ void Euler2Quat_fx(
*
* Quaternion q factor modification
*------------------------------------------------------------------------*/
+
void Copy_Quat_fx(
const IVAS_QUATERNION *in_quat, /* i : quaternion describing the rotation */
- IVAS_QUATERNION *out_quat /* i : quaternion describing the rotation */
+ IVAS_QUATERNION *out_quat /* o : quaternion describing the rotation */
)
{
out_quat->q_fact = in_quat->q_fact;
@@ -104,14 +105,16 @@ void Copy_Quat_fx(
return;
}
+
/*-------------------------------------------------------------------------
* Scale_Quat_fx()
*
* Quaternion q factor modification
*------------------------------------------------------------------------*/
+
void modify_Quat_q_fx(
const IVAS_QUATERNION *in_quat, /* i : quaternion describing the rotation */
- IVAS_QUATERNION *out_quat, /* i : quaternion describing the rotation */
+ IVAS_QUATERNION *out_quat, /* o : quaternion describing the rotation */
Word16 q_new /* i : quaternion describing the rotation */
)
{
@@ -123,16 +126,18 @@ void modify_Quat_q_fx(
return;
}
+
/*-------------------------------------------------------------------------
* modify_Rmat_q_fx()
*
* Rotation matrix q factor modification
*------------------------------------------------------------------------*/
+
void modify_Rmat_q_fx(
- Word32 Rmat_in[3][3], /* i : real-space rotation matrix for this rotation */
- Word32 Rmat_out[3][3], /* o : real-space rotation matrix for this rotation*/
+ Word32 Rmat_in[3][3], /* i : real-space rotation matrix for this rotation */
+ Word32 Rmat_out[3][3], /* o : real-space rotation matrix for this rotation */
Word16 q_cur, /* i : current q factor for rotation matrix */
- Word16 q_new /* i : target q factor for rotation matrix */
+ Word16 q_new /* i : target q factor for rotation matrix */
)
{
Word16 j, k;
@@ -148,11 +153,13 @@ void modify_Rmat_q_fx(
return;
}
+
/*-------------------------------------------------------------------------
* Quat2EulerDegree()
*
* Quaternion handling: calculate corresponding Euler angles in degrees
*------------------------------------------------------------------------*/
+
void Quat2EulerDegree_fx(
const IVAS_QUATERNION quat, /* i : quaternion describing the rotation */
Word32 *yaw_fx, /* o : yaw */
@@ -240,6 +247,7 @@ void Quat2EulerDegree_fx(
*
* Converts degrees to normalized radians
*------------------------------------------------------------------------*/
+
Word32 deg2rad_fx(
Word32 degrees // Q22
)
@@ -255,18 +263,3 @@ Word32 deg2rad_fx(
return Mpy_32_32( PI_OVER_180_FX, degrees ); // Q22
}
-
-float deg2rad(
- float degrees )
-{
- while ( degrees >= 180.0f )
- {
- degrees = degrees - 360.0f;
- }
- while ( degrees <= -180.0f )
- {
- degrees = degrees + 360.0f;
- }
-
- return PI_OVER_180 * degrees;
-}
diff --git a/lib_com/ivas_spar_com_fx.c b/lib_com/ivas_spar_com_fx.c
index 685d8de54245ba5dc3b79f32e24167c8d77ecb91..afb639ef00c92528308d8e5ceabf7085007fd8c4 100644
--- a/lib_com/ivas_spar_com_fx.c
+++ b/lib_com/ivas_spar_com_fx.c
@@ -2369,7 +2369,6 @@ static void ivas_calc_p_coeffs_per_band_enc_fx(
}
ELSE IF( EQ_16( num_dmx, 3 ) )
{
-#ifdef FIX_1970_SBA_CRASH
Word64 re64[2];
Word32 re32[2], re32_2;
Word16 qtmp2;
@@ -2399,80 +2398,6 @@ static void ivas_calc_p_coeffs_per_band_enc_fx(
q_tmp = s_min( 63, qtmp2 );
recon_uu_re[0][0] = L_max( 0, re32_2 );
move32();
-#else
- Word32 re1[2], re2;
- Word16 q_re1[2];
- set32_fx( re1, 0, 2 );
- set16_fx( q_re1, 31, 2 );
-
- FOR( j = 0; j < 2; j++ )
- {
- FOR( k = 0; k < 2; k++ )
- {
- Word32 re;
- W_tmp = W_mult0_32_32( pSparMd->band_coeffs[b_ts_idx].C_re_fx[0][k], cov_dd_re[k][j] ); // q_C_re+q_cov_dd_re
- q_tmp = sub( W_norm( W_tmp ), 33 );
- re = W_shl_sat_l( W_tmp, q_tmp ); // q_C_re+q_cov_dd_re+q_tmp
- q_tmp = add( add( q_C_re, q_tmp ), q_cov_dd_re );
- if ( W_tmp == 0 )
- {
- q_tmp = 31;
- move16();
- }
-
- IF( LT_16( q_tmp, q_re1[j] ) )
- {
- re1[j] = L_shr( re1[j], sub( q_re1[j], q_tmp ) ); // q_tmp
- move32();
- q_re1[j] = q_tmp;
- move16();
- }
- ELSE
- {
- re = L_shr( re, sub( q_tmp, q_re1[j] ) ); // q_re1[j]
- }
- re1[j] = L_add( re1[j], re ); // q_re1[j]
- move32();
- }
- }
-
- W_tmp = W_mult0_32_32( pSparMd->band_coeffs[b_ts_idx].C_re_fx[0][0], re1[0] ); // q_C_re+q_re1[0]
- q_tmp = sub( W_norm( W_tmp ), 33 );
- re2 = W_shl_sat_l( W_tmp, q_tmp ); // q_C_re+q_re1[0]+q_tmp
- q_tmp = add( add( q_C_re, q_tmp ), q_re1[0] );
- if ( W_tmp == 0 )
- {
- q_tmp = 31;
- move16();
- }
- recon_uu_re[0][0] = re2; // q_C_re+q_re1[0]+q_tmp-32
- move32();
-
- W_tmp = W_mult0_32_32( pSparMd->band_coeffs[b_ts_idx].C_re_fx[0][1], re1[1] ); // q_C_re+q_re1[1]
- q_tmp1 = sub( W_norm( W_tmp ), 33 );
- re2 = W_shl_sat_l( W_tmp, q_tmp1 ); // q_C_re+q_re1[1]+q_tmp1
- q_tmp1 = add( add( q_C_re, q_tmp1 ), q_re1[1] );
- if ( W_tmp == 0 )
- {
- q_tmp1 = 31;
- move16();
- }
-
- IF( LT_16( q_tmp, q_tmp1 ) )
- {
- re2 = L_shr( re2, sub( q_tmp1, q_tmp ) ); // q_tmp
- }
- ELSE
- {
- recon_uu_re[0][0] = L_shr( recon_uu_re[0][0], sub( q_tmp, q_tmp1 ) ); // q_tmp1
- move32();
- q_tmp = q_tmp1;
- move16();
- }
-
- recon_uu_re[0][0] = L_add( recon_uu_re[0][0], re2 ); // q_tmp
- move32();
-#endif
IF( LT_16( q_cov_uu_re, q_tmp ) )
{
diff --git a/lib_com/ivas_stat_com.h b/lib_com/ivas_stat_com.h
index 1f7ea778d06534d594480c2be3ad04c0278fed6d..4678acd3191020245245df72f3af7e46e914a5bb 100644
--- a/lib_com/ivas_stat_com.h
+++ b/lib_com/ivas_stat_com.h
@@ -65,8 +65,7 @@ typedef struct
Word32 yaw_fx; /* yaw value read from the input metadata file */ /* Q22 */
Word32 pitch_fx; /* pitch value read from the input metadata file */ /* Q22 */
-#ifdef OBJ_EDITING_API
- Word32 gain_fx; /* Q31 */
+ Word32 gain_fx; /* Q29 */
Word32 edited_azimuth_fx; /* Q22 */
Word32 edited_elevation_fx; /* Q22 */
@@ -74,8 +73,7 @@ typedef struct
Word32 edited_yaw_fx; /* Q22 */
Word32 edited_pitch_fx; /* Q22 */
- Word32 edited_gain_fx; /* Q31 */
-#endif
+ Word32 edited_gain_fx; /* Q29 */
Word16 non_diegetic_flag; /* Non-diegetic (non-headtracked) object flag */
diff --git a/lib_com/ivas_tools_fx.c b/lib_com/ivas_tools_fx.c
index 9001276bf722b5119aeb3458377a247a80ed0add..46067d828c93467479e6b71edf697f4f246736ec 100644
--- a/lib_com/ivas_tools_fx.c
+++ b/lib_com/ivas_tools_fx.c
@@ -189,57 +189,8 @@ void ivas_syn_output_f_fx(
*
*
*-------------------------------------------------------------------*/
-void mvr2r_inc_fixed_one(
- const Word32 x_fx[], /* i : input vector Q29*/
- const Word16 x_inc, /* i : increment for vector x[] Q0*/
- Word32 y_fx[], /* o : output vector Q29*/
- const Word16 y_inc, /* i : increment for vector y[] Q0*/
- const Word16 n /* i : vector size Q0*/
-)
-{
- Word16 i;
- Word16 ix;
- Word16 iy;
-
- IF( n <= 0 )
- {
- /* cannot transfer vectors with size 0 */
- return;
- }
-
- IF( y_fx < x_fx )
- {
- ix = 0;
- move16();
- iy = 0;
- move16();
- FOR( i = 0; i < n; i++ )
- {
- y_fx[iy] = x_fx[ix]; /*Q29*/
- move32();
- ix = ix + x_inc;
- iy = iy + y_inc;
- }
- }
- ELSE
- {
- ix = imult1616( sub( n, 1 ), x_inc ); /*Q0*/
- iy = imult1616( sub( n, 1 ), y_inc ); /*Q0*/
- FOR( i = ( n - 1 ); i >= 0; i-- )
- {
- y_fx[iy] = x_fx[ix]; /*Q29*/
- move32();
-
- ix = ix - x_inc;
- iy = iy - y_inc;
- }
- }
-
- return;
-}
-
-void mvr2r_inc_fixed(
+void mvr2r_inc_fx(
const Word32 x_fx[], /* i : input vector Q29*/
const Word16 x_inc, /* i : increment for vector x[] Q0*/
Word32 y_fx[], /* o : output vector Q29*/
@@ -348,45 +299,8 @@ void v_add_inc_fx(
* Multiplication of two vectors with explicit increments
*-------------------------------------------------------------------*/
-void v_mult_inc_fx(
- const Word32 x1_fx[], /* i : Input vector 1 x1_q_fx*/
- Word16 *x1_q_fx,
- const Word16 x1_inc, /* i : Increment for input vector 1 Q0*/
- const Word32 x2_fx[], /* i : Input vector 2 x2_q_fx*/
- Word16 *x2_q_fx,
- const Word16 x2_inc, /* i : Increment for input vector 1 Q0*/
- Word32 y_fx[], /* o : Output vector that contains vector 1 .* vector 2 y_q_fx*/
- Word16 *y_q_fx,
- const Word16 y_inc, /* i : increment for vector y[i] Q0*/
- const Word16 N /* i : Vector length Q0*/
-)
-{
- Word16 i;
- Word16 ix1 = 0;
- Word16 ix2 = 0;
- Word16 iy = 0;
-
- move16();
- move16();
- move16();
-
- FOR( i = 0; i < N; i++ )
- {
- y_fx[iy] = Mpy_32_32( x1_fx[ix1], x2_fx[ix2] ); /* x1_q_fx + x2_q_fx - 31 */
- move32();
- y_q_fx[iy] = sub( add( x1_q_fx[ix1], x2_q_fx[ix2] ), 31 );
- move16();
-
- ix1 = add( ix1, x1_inc ); /*Q0*/
- ix2 = add( ix2, x2_inc ); /*Q0*/
- iy = add( iy, y_inc ); /*Q0*/
- }
-
- return;
-}
-
// when buffers have constant q/
-void v_mult_inc_fixed(
+void v_mult_inc_fx(
const Word32 x1_fx[], /* i : Input vector 1 Qx1*/
const Word16 x1_inc, /* i : Increment for input vector 1 Q0*/
const Word32 x2_fx[], /* i : Input vector 2 Qx2*/
@@ -441,28 +355,6 @@ void v_addc_fx(
return;
}
-/*-------------------------------------------------------------------*
- * v_addc()
- *
- * Addition of constant to vector
- *-------------------------------------------------------------------*/
-void v_addc_fixed(
- const Word32 x[], /* i : Input vector Qx*/
- const Word32 c, /* i : Constant Qx*/
- Word32 y[], /* o : Output vector that contains c*x Qx*/
- const Word16 N /* i : Vector length Q0*/
-)
-{
- Word16 i;
-
- FOR( i = 0; i < N; i++ )
- {
- y[i] = L_add( c, x[i] ); /*Qx*/
- move32();
- }
-
- return;
-}
/*-------------------------------------------------------------------*
* v_min_fx()
@@ -528,6 +420,7 @@ void v_min_fx(
*
* square root of vector
*-------------------------------------------------------------------*/
+
void v_sqrt_fx(
const Word32 x[], /* i : Input vector Qx*/
Word16 exp[],
@@ -546,6 +439,7 @@ void v_sqrt_fx(
return;
}
+
/*-------------------------------------------------------------------*
* v_sub_s()
*
@@ -589,6 +483,7 @@ void v_sub32_fx(
return;
}
+
/*---------------------------------------------------------------------*
* dot_product_cholesky()
*
@@ -598,7 +493,7 @@ void v_sub32_fx(
*---------------------------------------------------------------------*/
/*! r: the dot product x'*A*A'*x */
-Word64 dot_product_cholesky_fixed(
+Word64 dot_product_cholesky_fx(
const Word32 *x, /* i : vector x Q31 - exp_x*/
const Word32 *A, /* i : Cholesky matrix A Q31 - exp_A*/
const Word16 N /* i : vector & matrix size Q0*/
@@ -630,7 +525,16 @@ Word64 dot_product_cholesky_fixed(
return suma;
}
-void v_mult_mat_fixed(
+
+/*---------------------------------------------------------------------*
+ * v_mult_mat_fx()
+ *
+ * Multiplication of row vector x by matrix A, where x has size Nr and
+ * A has size Nr x Nc ans it is stored column-wise in memory.
+ * The resulting row vector y has size Nc
+ *---------------------------------------------------------------------*/
+
+void v_mult_mat_fx(
Word32 *y, /* o : the product x*A Qx - guardbits*/
const Word32 *x, /* i : vector x Qx*/
const Word32 *A, /* i : matrix A Q31*/
@@ -662,108 +566,6 @@ void v_mult_mat_fixed(
MVR2R_WORD32( tmp_y, y, Nc ); /*Qx - guardbits*/
}
-Word32 dot_product_cholesky_fx(
- const Word32 *x, /* i : vector x Qx1*/
- const Word32 *A, /* i : Cholesky matrix A Qx2*/
- const Word16 N /* i : vector & matrix size Q0*/
-)
-{
- Word16 i, j;
- Word32 suma, tmp_sum;
- const Word32 *pt_x, *pt_A;
-
- pt_A = A;
- suma = 0;
- move32();
-
- FOR( i = 0; i < N; i++ )
- {
- tmp_sum = 0;
- move32();
- pt_x = x;
- FOR( j = 0; j <= i; j++ )
- {
- tmp_sum = L_add( tmp_sum, Mpy_32_32( *pt_x++, *pt_A++ ) ); /*Qx1 + Qx2 - 31*/
- }
-
- suma = L_add( suma, Mpy_32_32( tmp_sum, tmp_sum ) );
- }
-
- return suma;
-}
-
-
-/*---------------------------------------------------------------------*
- * v_mult_mat_fx()
- *
- * Multiplication of row vector x by matrix A, where x has size Nr and
- * A has size Nr x Nc ans it is stored column-wise in memory.
- * The resulting row vector y has size Nc
- *---------------------------------------------------------------------*/
-
-void v_mult_mat_fx(
- Word32 *y_fx, /* o : the product x*A y_q_fx*/
- Word16 *y_q_fx,
- const Word32 *x_fx, /* i : vector x x_q_fx*/
- Word16 *x_q_fx,
- const Word32 *A_fx, /* i : matrix A A_q_fx*/
- Word16 *A_q_fx,
- const Word16 Nr, /* i : number of rows Q0*/
- const Word16 Nc /* i : number of columns Q0*/
-)
-{
- Word16 i, j;
- const Word32 *pt_x_fx, *pt_A_fx;
- Word32 *pt_y_fx;
- Word32 tmp_y_fx[MAX_V_MULT_MAT];
- Word32 temp;
- Word16 temp_q;
-
- pt_y_fx = tmp_y_fx;
- pt_A_fx = A_fx; /*A_q_fx*/
- pt_x_fx = x_fx; /*x_q_fx*/
-
- FOR( i = 0; i < Nc; i++ )
- {
- pt_x_fx = x_fx; /*x_q_fx*/
- *pt_y_fx = 0;
- move32();
- y_q_fx[i] = 0;
- move32();
- FOR( j = 0; j < Nr; j++ )
- {
- temp = Mpy_32_32( *pt_x_fx++, *pt_A_fx++ ); /*x_q_fx + A_q_fx - 31*/
- temp_q = sub( add( x_q_fx[j], A_q_fx[Nr * i + j] ), 31 );
- IF( j == 0 )
- {
- *pt_y_fx = temp;
- move32();
- y_q_fx[i] = temp_q;
- move16();
- }
- ELSE
- {
- IF( GT_16( y_q_fx[i], temp_q ) )
- {
- *pt_y_fx = L_add( L_shr( *pt_y_fx, sub( y_q_fx[i], temp_q ) ), temp );
- move32();
- y_q_fx[i] = temp_q;
- move16();
- }
- ELSE
- {
- *pt_y_fx = L_add( *pt_y_fx, L_shr( temp, sub( temp_q, y_q_fx[i] ) ) );
- move32();
- }
- }
- }
- pt_y_fx++;
- }
-
- MVR2R_WORD32( tmp_y_fx, y_fx, Nc ); /*y_q_fx*/
-
- return;
-}
/*---------------------------------------------------------------------*
* logsumexp()
@@ -812,14 +614,17 @@ Word32 logsumexp_fx(
temp32 = L_add( BASOP_Util_Log2( sum ), L_shl( sum_e, Q25 ) ); /*Q25*/
temp32 = Mpy_32_32( temp32, 1488522239 ); /*logf(x) = log2(x)*logf(2) Q25*/
temp32 = L_add( L_shr( temp32, sub( x_e, 6 ) ), max_exp ); // q = 31-x_e
- return temp32; /*31-x_e*/
+
+ return temp32; /*31-x_e*/
}
+
/*---------------------------------------------------------------------*
* lin_interp()
*
* Linearly maps x from source range to the target range
*---------------------------------------------------------------------*/
+
/*! r: mapped output value */
Word32 lin_interp32_fx(
const Word32 x, /* i : the value to be mapped Qx */
@@ -858,6 +663,7 @@ Word32 lin_interp32_fx(
return temp32;
}
+
/*-------------------------------------------------------------------*
* check_bounds_s_fx()
*
@@ -2124,6 +1930,7 @@ static float wrap_azi(
return azi;
}
+
/* helper function for panning_wrap_angles */
static Word32 wrap_azi_fx(
const Word32 azi_deg /* Q22 */ )
@@ -2144,6 +1951,8 @@ static Word32 wrap_azi_fx(
return azi; /*Q22*/
}
+
+
/*-------------------------------------------------------------------*
* panning_wrap_angles()
*
@@ -2152,6 +1961,7 @@ static Word32 wrap_azi_fx(
* elevation = [-90, 90]
* Considers direction changes from large elevation values
*-------------------------------------------------------------------*/
+
void panning_wrap_angles(
const float azi_deg, /* i : azimuth in degrees for panning direction (positive left) */
const float ele_deg, /* i : elevation in degrees for panning direction (positive up) */
@@ -2211,6 +2021,8 @@ void panning_wrap_angles(
return;
}
}
+
+
/*-------------------------------------------------------------------*
* panning_wrap_angles_fx()
*
@@ -2219,6 +2031,7 @@ void panning_wrap_angles(
* elevation = [-90, 90]
* Considers direction changes from large elevation values
*-------------------------------------------------------------------*/
+
void panning_wrap_angles_fx(
const Word32 azi_deg, /* i : azimuth in degrees for panning direction (positive left) Q22 */
const Word32 ele_deg, /* i : elevation in degrees for panning direction (positive up) Q22 */
@@ -2294,7 +2107,7 @@ void panning_wrap_angles_fx(
* (modified version of v_sort() to return an index array)
*-------------------------------------------------------------------------*/
-void v_sort_ind_fixed(
+void v_sort_ind_fx(
Word32 *x, /* i/o: Vector to be sorted Qx*/
Word16 *idx, /* o : Original index positions Q0*/
const Word16 len /* i : vector length Q0*/
diff --git a/lib_com/lerp_fx.c b/lib_com/lerp_fx.c
index 88492ecdb11e61a9c65645076a111ef749dda374..e35814b12b18064be9cfbc9d996509398609833d 100644
--- a/lib_com/lerp_fx.c
+++ b/lib_com/lerp_fx.c
@@ -132,13 +132,22 @@ void lerp( const Word16 *f /*Qx*/, Word16 *f_out /*Qx*/, Word16 bufferNewSize /*
{
lerp_proc( f, f_out, bufferNewSize, bufferOldSize );
}
+
+ return;
}
+
+
/*-------------------------------------------------------------*
* procedure lerp_proc() *
* *
* *
*-------------------------------------------------------------*/
-static void lerp_proc( const Word16 *f /*Qx*/, Word16 *f_out /*Qx*/, Word16 bufferNewSize /*Q0*/, Word16 bufferOldSize /*Q0*/ )
+
+static void lerp_proc(
+ const Word16 *f /*Qx*/,
+ Word16 *f_out /*Qx*/,
+ Word16 bufferNewSize /*Q0*/,
+ Word16 bufferOldSize /*Q0*/ )
{
Word16 i, idx, n;
@@ -236,7 +245,11 @@ static void lerp_proc( const Word16 *f /*Qx*/, Word16 *f_out /*Qx*/, Word16 buff
}
-static void lerp_proc32( Word32 *f /*Qx*/, Word32 *f_out /*Qx*/, Word16 bufferNewSize /*Q0*/, Word16 bufferOldSize /*Q0*/ )
+static void lerp_proc32(
+ Word32 *f /*Qx*/,
+ Word32 *f_out /*Qx*/,
+ Word16 bufferNewSize /*Q0*/,
+ Word16 bufferOldSize /*Q0*/ )
{
Word16 i, idx, n;
@@ -338,7 +351,12 @@ static void L_lerp_proc_fx( const Word32 *f_fx, Word32 *f_out_fx, const Word16 b
* *
*-------------------------------------------------------------*/
-void L_lerp_fx( Word32 *f /*q*/, Word32 *f_out /*q*/, Word16 bufferNewSize /*Q0*/, Word16 bufferOldSize /*Q0*/, Word16 *q )
+void L_lerp_fx(
+ Word32 *f /*q*/,
+ Word32 *f_out /*q*/,
+ Word16 bufferNewSize /*Q0*/,
+ Word16 bufferOldSize /*Q0*/,
+ Word16 *q )
{
Word16 tmpNewSize;
Word16 tmp1, tmp2, tmp_e;
diff --git a/lib_com/low_rate_band_att_fx.c b/lib_com/low_rate_band_att_fx.c
index 8b323e96aba8615f793409f2753ad7e006cfcadc..f0fbf9bd67327f65120c8506261167690e7a75e6 100644
--- a/lib_com/low_rate_band_att_fx.c
+++ b/lib_com/low_rate_band_att_fx.c
@@ -39,12 +39,6 @@ void ivas_fine_gain_pred_fx(
Word16 tmp, exp, exp2;
Word32 L_tmp;
UWord16 lsb;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
FOR( band = 0; band < num_sfm; band++ )
{
@@ -83,11 +77,7 @@ void ivas_fine_gain_pred_fx(
tmp1 = shr( tmp1, sub( sub( 15, tmp_exp ), Q11 ) );
Mpy_32_16_ss( L_tmp, tmp1, &L_tmp, &lsb ); /*31-exp+11-15=27-exp */
-#ifdef ISSUE_1836_replace_overflow_libcom
gp = round_fx_sat( L_shl_sat( L_tmp, add( 1, exp ) ) ); /*27-exp+1+exp-16=12 */
-#else
- gp = round_fx_o( L_shl_o( L_tmp, add( 1, exp ), &Overflow ), &Overflow ); /*27-exp+1+exp-16=12 */
-#endif
test();
test();
IF( EQ_16( core, HQ_CORE ) && R != NULL && LE_16( R[i_sort[band]], 256 ) ) /* 256 is 32 in Q3 */
@@ -102,12 +92,8 @@ void ivas_fine_gain_pred_fx(
exp = add( exp, exp2 );
/*gp *= 1.0f - 0.05f / accuracy; */
- tmp = div_s( 13107, accuracy ); /* 0.05 in Q18 */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ tmp = div_s( 13107, accuracy ); /* 0.05 in Q18 */
tmp = shr_sat( tmp, sub( 34, exp ) ); /*15+18-exp+16-15=34-exp */
-#else
- tmp = shr_sat( tmp, sub( 34, exp ) ); /*15+18-exp+16-15=34-exp */
-#endif
tmp = sub( 32767, tmp );
tmp = s_max( 27554, tmp ); /* Limit attenuation to norm quantizer error, 2^-0.25 in Q15 */
gp = mult_r( tmp, gp ); /*15+12+1-16=12 */
@@ -164,12 +150,6 @@ void fine_gain_pred_fx(
Word16 tmp, exp, exp2;
Word32 L_tmp;
UWord16 lsb;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
FOR( band = 0; band < num_sfm; band++ )
{
@@ -201,11 +181,7 @@ void fine_gain_pred_fx(
exp = sub( 31, add( exp, sub( 30, shl( shift, 1 ) ) ) );
L_tmp = Isqrt_lc( L_tmp, &exp ); /*31 - exp */
Mpy_32_16_ss( L_tmp, fine_gain_pred_sqrt_bw[bw_idx], &L_tmp, &lsb ); /*31-exp+11-15=27-exp */
-#ifdef ISSUE_1836_replace_overflow_libcom
- gp = round_fx_sat( L_shl_sat( L_tmp, add( 1, exp ) ) ); /*27-exp+1+exp-16=12 */
-#else
- gp = round_fx_o( L_shl_o( L_tmp, add( 1, exp ), &Overflow ), &Overflow ); /*27-exp+1+exp-16=12 */
-#endif
+ gp = round_fx_sat( L_shl_sat( L_tmp, add( 1, exp ) ) ); /*27-exp+1+exp-16=12 */
test();
test();
IF( EQ_16( core, HQ_CORE ) && R != NULL && LE_16( R[i_sort[band]], 256 ) ) /* 256 is 32 in Q3 */
@@ -220,12 +196,8 @@ void fine_gain_pred_fx(
exp = add( exp, exp2 );
/*gp *= 1.0f - 0.05f / accuracy; */
- tmp = div_s( 13107, accuracy ); /* 0.05 in Q18 */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ tmp = div_s( 13107, accuracy ); /* 0.05 in Q18 */
tmp = shr_sat( tmp, sub( 34, exp ) ); /*15+18-exp+16-15=34-exp */
-#else
- tmp = shr_sat( tmp, sub( 34, exp ) ); /*15+18-exp+16-15=34-exp */
-#endif
tmp = sub( 32767, tmp );
tmp = s_max( 27554, tmp ); /* Limit attenuation to norm quantizer error, 2^-0.25 in Q15 */
gp = mult_r( tmp, gp ); /*15+12+1-16=12 */
diff --git a/lib_com/lpc_tools_fx.c b/lib_com/lpc_tools_fx.c
index c8cc09e7308abd312616ee304c2aae9a9b9e1fe1..a5aee205d0d15c8c7dd833ce858cc9749881d56a 100644
--- a/lib_com/lpc_tools_fx.c
+++ b/lib_com/lpc_tools_fx.c
@@ -409,11 +409,6 @@ static Word32 Div_32_opt( Word32 L_num /*Q31*/, Word16 denom_hi /*Qx -16*/, Word
{
Word16 approx /*, hi, lo, n_hi , n_lo*/;
Word32 L_32;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/* First approximation: 1 / L_denom = 1/denom_hi */
@@ -429,11 +424,7 @@ static Word32 Div_32_opt( Word32 L_num /*Q31*/, Word16 denom_hi /*Qx -16*/, Word
L_32 = Mpy_32_32( L_num, L_32 );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_32 = L_shl_sat( L_32, 2 );
-#else
- L_32 = L_shl_o( L_32, 2, &Overflow );
-#endif
return ( L_32 );
}
@@ -469,12 +460,6 @@ Word16 E_LPC_lev_dur_stab( const Word16 Rh[] /*QR -16*/, const Word16 Rl[] /*QR
Word32 t0, t1, t2; /* temporary variables */
Word16 flag;
Word16 Ah[TCXLTP_LTP_ORDER + 1], Al[TCXLTP_LTP_ORDER + 1]; /* LPC coef. in double prec. */
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
-
BASOP_SATURATE_WARNING_OFF_EVS
if ( epsP != NULL )
@@ -534,21 +519,12 @@ Word16 E_LPC_lev_dur_stab( const Word16 Rh[] /*QR -16*/, const Word16 Rl[] /*QR
t0 = Mac_32( t0, Rh[j], Rl[j], Ah[i - j], Al[i - j] );
}
-#ifdef ISSUE_1836_replace_overflow_libcom
t0 = L_shl_sat( t0, 4 ); /* result in Q27 -> convert to Q31 */
-#else
- t0 = L_shl_o( t0, 4, &Overflow ); /* result in Q27 -> convert to Q31 */
-#endif
- /* No overflow possible */
+ /* No overflow possible */
/* Compose and add R[i] in Q3 */
-#ifdef ISSUE_1836_replace_overflow_libcom
t0 = L_mac_sat( t0, Rl[i], 1 );
t0 = L_msu_sat( t0, Rh[i], -32768 );
-#else
- t0 = L_mac_o( t0, Rl[i], 1, &Overflow );
- t0 = L_msu_o( t0, Rh[i], -32768, &Overflow );
-#endif
/* K = -t0 / Alpha */
t1 = L_abs( t0 );
@@ -563,11 +539,7 @@ Word16 E_LPC_lev_dur_stab( const Word16 Rh[] /*QR -16*/, const Word16 Rl[] /*QR
{
t2 = L_negate( t2 ); /* K =-t0/Alpha */
}
-#ifdef ISSUE_1836_replace_overflow_libcom
t2 = L_shl_sat( t2, alp_exp ); /* denormalize; compare to Alpha */
-#else
- t2 = L_shl_o( t2, alp_exp, &Overflow ); /* denormalize; compare to Alpha */
-#endif
test();
if ( ( mem != NULL ) && ( ( GT_16( abs_s( extract_h( t2 ) ), k_max ) ) ) )
{
@@ -584,7 +556,7 @@ Word16 E_LPC_lev_dur_stab( const Word16 Rh[] /*QR -16*/, const Word16 Rl[] /*QR
/*------------------------------------------*
* Compute new LPC coeff. -> An[i]
- * An[j]= A[j] + K*A[i-j] , j=1 to i-1
+ * An[j]= A[j] + K*A[i-j], j=1 to i-1
* An[i]= K
*------------------------------------------*/
@@ -606,11 +578,7 @@ Word16 E_LPC_lev_dur_stab( const Word16 Rh[] /*QR -16*/, const Word16 Rl[] /*QR
L_Extract( t2, &Ah[i], &Al[i] ); /* An[i] in Q27 */
/* Alpha = Alpha * (1-K**2) */
-#ifdef ISSUE_1836_replace_overflow_libcom
t1 = L_mult_sat( Kh, Kh ); /* K*K in Q31 */
-#else
- t1 = L_mult_o( Kh, Kh, &Overflow ); /* K*K in Q31 */
-#endif
t0 = L_mac( t1, mult( Kh, Kl ), 2 );
t0 = L_abs( t0 ); /* Some case <0 !! */
t0 = L_sub( (Word32) 0x7fffffffL, t0 ); /* 1 - K*K in Q31 */
@@ -646,11 +614,7 @@ Word16 E_LPC_lev_dur_stab( const Word16 Rh[] /*QR -16*/, const Word16 Rl[] /*QR
FOR( i = 1; i <= order; i++ )
{
t0 = L_Comp( Ah[i], Al[i] );
-#ifdef ISSUE_1836_replace_overflow_libcom
A[i] = round_fx_sat( L_shl_sat( t0, k ) );
-#else
- A[i] = round_fx_o( L_shl_o( t0, k, &Overflow ), &Overflow );
-#endif
move16();
}
@@ -686,12 +650,6 @@ Word16 E_LPC_lev_dur_stab_ivas_fx( const Word16 Rh[], const Word16 Rl[], Word16
Word32 t0, t1, t2; /* temporary variables */
Word16 flag;
Word16 Ah[TCXLTP_LTP_ORDER + 1], Al[TCXLTP_LTP_ORDER + 1]; /* LPC coef. in double prec. */
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
-
BASOP_SATURATE_WARNING_OFF_EVS
if ( epsP != NULL )
@@ -751,21 +709,12 @@ Word16 E_LPC_lev_dur_stab_ivas_fx( const Word16 Rh[], const Word16 Rl[], Word16
t0 = Mac_32( t0, Rh[j], Rl[j], Ah[i - j], Al[i - j] );
}
-#ifdef ISSUE_1836_replace_overflow_libcom
t0 = L_shl_sat( t0, 4 ); /* result in Q27 -> convert to Q31 */
-#else
- t0 = L_shl_o( t0, 4, &Overflow ); /* result in Q27 -> convert to Q31 */
-#endif
- /* No overflow possible */
+ /* No overflow possible */
/* Compose and add R[i] in Q3 */
-#ifdef ISSUE_1836_replace_overflow_libcom
t0 = L_mac_sat( t0, Rl[i], 1 );
t0 = L_msu_sat( t0, Rh[i], -32768 );
-#else
- t0 = L_mac_o( t0, Rl[i], 1, &Overflow );
- t0 = L_msu_o( t0, Rh[i], -32768, &Overflow );
-#endif
/* K = -t0 / Alpha */
t1 = L_abs( t0 );
@@ -780,11 +729,7 @@ Word16 E_LPC_lev_dur_stab_ivas_fx( const Word16 Rh[], const Word16 Rl[], Word16
{
t2 = L_negate( t2 ); /* K =-t0/Alpha */
}
-#ifdef ISSUE_1836_replace_overflow_libcom
t2 = L_shl_sat( t2, alp_exp ); /* denormalize; compare to Alpha */
-#else
- t2 = L_shl_o( t2, alp_exp, &Overflow ); /* denormalize; compare to Alpha */
-#endif
test();
if ( ( mem != NULL ) && ( ( GT_16( abs_s( extract_h( t2 ) ), k_max ) ) ) )
{
@@ -801,7 +746,7 @@ Word16 E_LPC_lev_dur_stab_ivas_fx( const Word16 Rh[], const Word16 Rl[], Word16
/*------------------------------------------*
* Compute new LPC coeff. -> An[i]
- * An[j]= A[j] + K*A[i-j] , j=1 to i-1
+ * An[j]= A[j] + K*A[i-j], j=1 to i-1
* An[i]= K
*------------------------------------------*/
@@ -823,11 +768,7 @@ Word16 E_LPC_lev_dur_stab_ivas_fx( const Word16 Rh[], const Word16 Rl[], Word16
L_Extract( t2, &Ah[i], &Al[i] ); /* An[i] in Q27 */
/* Alpha = Alpha * (1-K**2) */
-#ifdef ISSUE_1836_replace_overflow_libcom
t1 = L_mult_sat( Kh, Kh ); /* K*K in Q31 */
-#else
- t1 = L_mult_o( Kh, Kh, &Overflow ); /* K*K in Q31 */
-#endif
t0 = L_mac( t1, mult( Kh, Kl ), 2 );
t0 = L_abs( t0 ); /* Some case <0 !! */
t0 = L_sub( (Word32) 0x7fffffffL, t0 ); /* 1 - K*K in Q31 */
@@ -863,11 +804,7 @@ Word16 E_LPC_lev_dur_stab_ivas_fx( const Word16 Rh[], const Word16 Rl[], Word16
FOR( i = 1; i <= order; i++ )
{
t0 = L_Comp( Ah[i], Al[i] );
-#ifdef ISSUE_1836_replace_overflow_libcom
A[i] = round_fx_sat( L_shl_sat( t0, k ) );
-#else
- A[i] = round_fx_o( L_shl_o( t0, k, &Overflow ), &Overflow );
-#endif
move16();
}
@@ -903,13 +840,6 @@ Word16 E_LPC_lev_dur_stab_fx( const Word16 Rh[] /*QR -16*/, const Word16 Rl[] /*
Word32 t0, t1, t2; /* temporary variables */
Word16 flag;
Word16 Ah[TCXLTP_LTP_ORDER + 1], Al[TCXLTP_LTP_ORDER + 1]; /* LPC coef. in double prec. */
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
BASOP_SATURATE_WARNING_OFF_EVS
if ( epsP != NULL )
@@ -969,21 +899,12 @@ Word16 E_LPC_lev_dur_stab_fx( const Word16 Rh[] /*QR -16*/, const Word16 Rl[] /*
t0 = Mac_32( t0, Rh[j], Rl[j], Ah[i - j], Al[i - j] );
}
-#ifdef ISSUE_1836_replace_overflow_libcom
t0 = L_shl_sat( t0, 4 ); /* result in Q27 -> convert to Q31 */
-#else
- t0 = L_shl_o( t0, 4, &Overflow ); /* result in Q27 -> convert to Q31 */
-#endif
- /* No overflow possible */
+ /* No overflow possible */
/* Compose and add R[i] in Q3 */
-#ifdef ISSUE_1836_replace_overflow_libcom
t0 = L_mac_sat( t0, Rl[i], 1 );
t0 = L_msu_sat( t0, Rh[i], -32768 );
-#else
- t0 = L_mac_o( t0, Rl[i], 1, &Overflow );
- t0 = L_msu_o( t0, Rh[i], -32768, &Overflow );
-#endif
/* K = -t0 / Alpha */
t1 = L_abs( t0 );
@@ -998,11 +919,7 @@ Word16 E_LPC_lev_dur_stab_fx( const Word16 Rh[] /*QR -16*/, const Word16 Rl[] /*
{
t2 = L_negate( t2 ); /* K =-t0/Alpha */
}
-#ifdef ISSUE_1836_replace_overflow_libcom
t2 = L_shl_sat( t2, alp_exp ); /* denormalize; compare to Alpha */
-#else
- t2 = L_shl_o( t2, alp_exp, &Overflow ); /* denormalize; compare to Alpha */
-#endif
test();
if ( ( mem != NULL ) && ( ( GT_16( abs_s( extract_h( t2 ) ), k_max ) ) ) )
{
@@ -1019,7 +936,7 @@ Word16 E_LPC_lev_dur_stab_fx( const Word16 Rh[] /*QR -16*/, const Word16 Rl[] /*
/*------------------------------------------*
* Compute new LPC coeff. -> An[i]
- * An[j]= A[j] + K*A[i-j] , j=1 to i-1
+ * An[j]= A[j] + K*A[i-j], j=1 to i-1
* An[i]= K
*------------------------------------------*/
@@ -1041,11 +958,7 @@ Word16 E_LPC_lev_dur_stab_fx( const Word16 Rh[] /*QR -16*/, const Word16 Rl[] /*
L_Extract( t2, &Ah[i], &Al[i] ); /* An[i] in Q27 */
/* Alpha = Alpha * (1-K**2) */
-#ifdef ISSUE_1836_replace_overflow_libcom
t1 = L_mult_sat( Kh, Kh ); /* K*K in Q31 */
-#else
- t1 = L_mult_o( Kh, Kh, &Overflow ); /* K*K in Q31 */
-#endif
t0 = L_mac( t1, mult( Kh, Kl ), 2 );
t0 = L_abs( t0 ); /* Some case <0 !! */
t0 = L_sub( (Word32) 0x7fffffffL, t0 ); /* 1 - K*K in Q31 */
@@ -1081,11 +994,7 @@ Word16 E_LPC_lev_dur_stab_fx( const Word16 Rh[] /*QR -16*/, const Word16 Rl[] /*
FOR( i = 1; i <= order; i++ )
{
t0 = L_Comp( Ah[i], Al[i] );
-#ifdef ISSUE_1836_replace_overflow_libcom
A[i] = L_shl_sat( t0, k );
-#else
- A[i] = L_shl_o( t0, k, &Overflow );
-#endif
move16();
}
@@ -1553,13 +1462,6 @@ void E_LPC_a_lsf_isf_conversion( Word16 *lpcCoeffs /*Qx*/, Word16 *lsf /*15Q16*/
Word16 lpc[19];
move16();
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
/* half length FFT */
scale = add( norm_s( lpcCoeffs[0] ), 1 ) + 5;
move16();
@@ -1733,7 +1635,6 @@ void E_LPC_a_lsf_isf_conversion( Word16 *lpcCoeffs /*Qx*/, Word16 *lsf /*15Q16*/
Word16 ImAr = extract_h( L_sub( ImagFFT[i], ImagFFT[N / 2 - i] ) );
Word16 ImBr = extract_h( L_add( ImagFFT[i], ImagFFT[N / 2 - i] ) );
BASOP_SATURATE_WARNING_OFF_EVS
-#ifdef ISSUE_1836_replace_overflow_libcom
tmpw15.v.re = mac_r_sat( L_mult( ptwiddle->v.re, pwn17->v.re ), ptwiddle->v.im, pwn17->v.im );
move16();
tmpw15.v.im = msu_r_sat( L_mult( ptwiddle->v.re, pwn17->v.im ), ptwiddle->v.im, pwn17->v.re );
@@ -1748,22 +1649,6 @@ void E_LPC_a_lsf_isf_conversion( Word16 *lpcCoeffs /*Qx*/, Word16 *lsf /*15Q16*/
move16();
tmpw15.v.im = mac_r_sat( L_mult( ptwiddle->v.re, pwn17i->v.im ), ptwiddle->v.im, pwn17i->v.re );
move16();
-#else
- tmpw15.v.re = mac_ro( L_mult( ptwiddle->v.re, pwn17->v.re ), ptwiddle->v.im, pwn17->v.im, &Overflow );
- move16();
- tmpw15.v.im = msu_ro( L_mult( ptwiddle->v.re, pwn17->v.im ), ptwiddle->v.im, pwn17->v.re, &Overflow );
- move16();
- BASOP_SATURATE_WARNING_ON_EVS
- RealOut[i] = mac_r( L_msu( L_msu( L_mult( ReAr, pwn17->v.re ), ImAr, pwn17->v.im ), ReBr, pwn15->v.im ), ImBr, pwn15->v.re );
- move16();
- ImagOut[i] = mac_r( L_mac( L_mac( L_mult( ReAr, pwn17->v.im ), ImAr, pwn17->v.re ), ReBr, pwn15->v.re ), ImBr, pwn15->v.im );
- move16();
- BASOP_SATURATE_WARNING_OFF_EVS
- tmpw15.v.re = msu_ro( L_mult( ptwiddle->v.im, pwn17i->v.im ), ptwiddle->v.re, pwn17i->v.re, &Overflow );
- move16();
- tmpw15.v.im = mac_ro( L_mult( ptwiddle->v.re, pwn17i->v.im ), ptwiddle->v.im, pwn17i->v.re, &Overflow );
- move16();
-#endif
BASOP_SATURATE_WARNING_ON_EVS
RealOut[N / 2 - i] = msu_r( L_mac( L_mac( L_mult( ReAr, pwn17i->v.re ), ImAr, pwn17i->v.im ), ImBr, pwn15i->v.re ), ReBr, pwn15i->v.im );
move16();
@@ -1784,7 +1669,6 @@ void E_LPC_a_lsf_isf_conversion( Word16 *lpcCoeffs /*Qx*/, Word16 *lsf /*15Q16*/
Word16 ImAr = extract_h( L_sub( ImagFFT[i], ImagFFT[N / 2 - i] ) );
Word16 ImBr = extract_h( L_add( ImagFFT[i], ImagFFT[N / 2 - i] ) );
BASOP_SATURATE_WARNING_OFF_EVS
-#ifdef ISSUE_1836_replace_overflow_libcom
tmpw15.v.re = mac_r_sat( L_mult( ptwiddle->v.im, pwn17->v.re ), ptwiddle->v.re, pwn17->v.im );
move16();
tmpw15.v.im = msu_r_sat( L_mult( ptwiddle->v.im, pwn17->v.im ), ptwiddle->v.re, pwn17->v.re );
@@ -1799,22 +1683,6 @@ void E_LPC_a_lsf_isf_conversion( Word16 *lpcCoeffs /*Qx*/, Word16 *lsf /*15Q16*/
move16();
tmpw15.v.im = mac_r_sat( L_mult( ptwiddle->v.im, pwn17i->v.im ), ptwiddle->v.re, pwn17i->v.re );
move16();
-#else
- tmpw15.v.re = mac_ro( L_mult( ptwiddle->v.im, pwn17->v.re ), ptwiddle->v.re, pwn17->v.im, &Overflow );
- move16();
- tmpw15.v.im = msu_ro( L_mult( ptwiddle->v.im, pwn17->v.im ), ptwiddle->v.re, pwn17->v.re, &Overflow );
- move16();
- BASOP_SATURATE_WARNING_ON_EVS
- RealOut[i] = mac_r( L_msu( L_msu( L_mult( ReAr, pwn17->v.re ), ImAr, pwn17->v.im ), ReBr, pwn15->v.im ), ImBr, pwn15->v.re );
- move16();
- ImagOut[i] = mac_r( L_mac( L_mac( L_mult( ReAr, pwn17->v.im ), ImAr, pwn17->v.re ), ReBr, pwn15->v.re ), ImBr, pwn15->v.im );
- move16();
- BASOP_SATURATE_WARNING_OFF_EVS
- tmpw15.v.re = msu_ro( L_mult( ptwiddle->v.re, pwn17i->v.im ), ptwiddle->v.im, pwn17i->v.re, &Overflow );
- move16();
- tmpw15.v.im = mac_ro( L_mult( ptwiddle->v.im, pwn17i->v.im ), ptwiddle->v.re, pwn17i->v.re, &Overflow );
- move16();
-#endif
BASOP_SATURATE_WARNING_ON_EVS
RealOut[N / 2 - i] = msu_r( L_mac( L_mac( L_mult( ReAr, pwn17i->v.re ), ImAr, pwn17i->v.im ), ImBr, pwn15i->v.re ), ReBr, pwn15i->v.im );
move16();
diff --git a/lib_com/lsf_tools_fx.c b/lib_com/lsf_tools_fx.c
index 80e597e1a07643a50a49c3ab2572ba08989a3cea..0fbc7f7586c164b6b838b95dfc9d58c6ca6198de 100644
--- a/lib_com/lsf_tools_fx.c
+++ b/lib_com/lsf_tools_fx.c
@@ -69,11 +69,6 @@ static Word16 chebyshev( Word16 x, Word32 *f, const Word16 n, const Word16 shift
Word16 cheb;
Word32 t0, b1, b2;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
cheb = norm_s( x );
if ( cheb )
@@ -110,26 +105,16 @@ static Word16 chebyshev( Word16 x, Word32 *f, const Word16 n, const Word16 shift
b2 = L_add( t0, *f++ ); /* b0 = 2*x*b1 - b2 + f[i] */
/* i = 5 */
t0 = Mpy_32_16_1( b2, x ); /* t0 = x*b1 */
-#ifdef ISSUE_1836_replace_overflow_libcom
if ( !cheb )
t0 = L_shl_sat( t0, 1 ); /* t0 = 2*x*b1 */
-#else
- if ( !cheb )
- t0 = L_shl_o( t0, 1, &Overflow ); /* t0 = 2*x*b1 */
-#endif
- t0 = L_sub( t0, b1 ); /* t0 = 2*x*b1 - b2 */
- b1 = L_add( t0, *f++ ); /* b0 = 2*x*b1 - b2 + f[i] */
+ t0 = L_sub( t0, b1 ); /* t0 = 2*x*b1 - b2 */
+ b1 = L_add( t0, *f++ ); /* b0 = 2*x*b1 - b2 + f[i] */
/* i = 6 */
t0 = Mpy_32_16_1( b1, x ); /* t0 = x*b1 */
-#ifdef ISSUE_1836_replace_overflow_libcom
if ( !cheb )
t0 = L_shl_sat( t0, 1 ); /* t0 = 2*x*b1 */
-#else
- if ( !cheb )
- t0 = L_shl_o( t0, 1, &Overflow ); /* t0 = 2*x*b1 */
-#endif
- t0 = L_sub( t0, b2 ); /* t0 = 2*x*b1 - b2 */
+ t0 = L_sub( t0, b2 ); /* t0 = 2*x*b1 - b2 */
}
/* IF (sub(n,8) == 0) */
IF( n == 8 )
@@ -137,15 +122,10 @@ static Word16 chebyshev( Word16 x, Word32 *f, const Word16 n, const Word16 shift
b2 = L_add( t0, *f++ ); /* b0 = 2*x*b1 - b2 + f[i] */
/* i = 7 */
t0 = Mpy_32_16_1( b2, x ); /* t0 = x*b1 */
-#ifdef ISSUE_1836_replace_overflow_libcom
if ( !cheb )
t0 = L_shl_sat( t0, 1 ); /* t0 = 2*x*b1 */
-#else
- if ( !cheb )
- t0 = L_shl_o( t0, 1, &Overflow ); /* t0 = 2*x*b1 */
-#endif
- t0 = L_sub( t0, b1 ); /* t0 = 2*x*b1 - b2 */
- /*b1 = L_add(b2,0);*/
+ t0 = L_sub( t0, b1 ); /* t0 = 2*x*b1 - b2 */
+ /*b1 = L_add(b2,0);*/
}
ELSE
{
@@ -163,13 +143,8 @@ static Word16 chebyshev( Word16 x, Word32 *f, const Word16 n, const Word16 shift
BASOP_SATURATE_WARNING_OFF_EVS
-#ifdef ISSUE_1836_replace_overflow_libcom
- t0 = L_shl_sat( t0, shift ); /* Qx to Q30 with saturation */
- cheb = round_fx_sat( t0 ); /* Result in Q14 */
-#else
- t0 = L_shl_o( t0, shift, &Overflow ); /* Qx to Q30 with saturation */
- cheb = round_fx_o( t0, &Overflow ); /* Result in Q14 */
-#endif
+ t0 = L_shl_sat( t0, shift ); /* Qx to Q30 with saturation */
+ cheb = round_fx_sat( t0 ); /* Result in Q14 */
cheb = s_max( -32767, cheb ); /* to avoid saturation */
BASOP_SATURATE_WARNING_ON_EVS
return ( cheb );
@@ -184,11 +159,6 @@ void E_LPC_a_isp_conversion( const Word16 a[], Word16 isp[], const Word16 old_is
Word32 t0, t1;
Word16 scale = 1024;
move16();
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/*-------------------------------------------------------------*
* find the sum and diff polynomials F1(z) and F2(z)
@@ -310,11 +280,7 @@ void E_LPC_a_isp_conversion( const Word16 a[], Word16 isp[], const Word16 old_is
* xint = xlow - ylow*(xhigh-xlow)/(yhigh-ylow)
*--------------------------------------------------------*/
-#ifdef ISSUE_1836_replace_overflow_libcom
y = sub_sat( yhigh, ylow );
-#else
- y = sub_o( yhigh, ylow, &Overflow );
-#endif
IF( y != 0 )
{
x = sub( xhigh, xlow );
@@ -1243,19 +1209,16 @@ void E_LPC_a_lsp_conversion(
* Returns:
* void
*/
-void E_LPC_f_lsp_a_conversion( const Word16 *lsp, Word16 *a, const Word16 m )
+void E_LPC_f_lsp_a_conversion(
+ const Word16 *lsp,
+ Word16 *a,
+ const Word16 m )
{
Word16 i, j, k;
Word32 f1[NC_MAX + 1], f2[NC_MAX + 1];
Word16 nc;
Word32 t0;
Word16 Ovf, Ovf2;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
-
/*-----------------------------------------------------*
* Find the polynomials F1(z) and F2(z) *
@@ -1285,11 +1248,7 @@ void E_LPC_f_lsp_a_conversion( const Word16 *lsp, Word16 *a, const Word16 m )
{
f1[nc - i] = L_add( f1[nc - i], f1[nc - i - 1] );
move32();
-#ifdef ISSUE_1836_replace_overflow_libcom
f2[nc - i] = L_sub_sat( f2[nc - i], f2[nc - i - 1] );
-#else
- f2[nc - i] = L_sub_o( f2[nc - i], f2[nc - i - 1], &Overflow );
-#endif
move32();
}
@@ -1299,19 +1258,11 @@ void E_LPC_f_lsp_a_conversion( const Word16 *lsp, Word16 *a, const Word16 m )
*-----------------------------------------------------*/
t0 = L_deposit_l( 0 );
-#ifdef ISSUE_1836_replace_overflow_libcom
FOR( i = 1; i <= nc; i++ )
{
t0 = L_max( t0, L_abs( L_add_sat( f1[i], f2[i] ) ) );
t0 = L_max( t0, L_abs( L_sub_sat( f1[i], f2[i] ) ) );
}
-#else
- FOR( i = 1; i <= nc; i++ )
- {
- t0 = L_max( t0, L_abs( L_add_o( f1[i], f2[i], &Overflow ) ) );
- t0 = L_max( t0, L_abs( L_sub_o( f1[i], f2[i], &Overflow ) ) );
- }
-#endif
k = s_min( norm_l( t0 ), 6 );
a[0] = shl( 256, k );
move16();
@@ -1325,7 +1276,6 @@ void E_LPC_f_lsp_a_conversion( const Word16 *lsp, Word16 *a, const Word16 m )
FOR( i = 1; i <= nc; i++ )
{
/* a[i] = 0.5*(f1[i] + f2[i]) */
-#ifdef ISSUE_1836_replace_overflow_libcom
t0 = L_add_sat( f1[i], f2[i] );
t0 = L_shl( t0, k );
a[i] = round_fx_sat( t0 ); /* from Q23 to Qx and * 0.5 */
@@ -1334,16 +1284,6 @@ void E_LPC_f_lsp_a_conversion( const Word16 *lsp, Word16 *a, const Word16 m )
t0 = L_sub_sat( f1[i], f2[i] );
t0 = L_shl( t0, k );
a[j] = round_fx_sat( t0 ); /* from Q23 to Qx and * 0.5 */
-#else
- t0 = L_add_o( f1[i], f2[i], &Overflow );
- t0 = L_shl( t0, k );
- a[i] = round_fx_o( t0, &Overflow ); /* from Q23 to Qx and * 0.5 */
-
- /* a[j] = 0.5*(f1[i] - f2[i]) */
- t0 = L_sub_o( f1[i], f2[i], &Overflow );
- t0 = L_shl( t0, k );
- a[j] = round_fx_o( t0, &Overflow ); /* from Q23 to Qx and * 0.5 */
-#endif
j--;
}
@@ -1787,11 +1727,7 @@ void a2rc_fx( const Word16 *a, /* i: can be any Q */
Word16 m, j, n;
Word16 q, q_a, q_a2, One_Qx;
Word32 One_Qx2;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
+
q = add( norm_s( a[-1] ), 1 );
q_a = sub( 15, q );
q_a2 = add( shl( q_a, 1 ), 1 );
@@ -1851,8 +1787,7 @@ void a2rc_fx( const Word16 *a, /* i: can be any Q */
FOR( j = 0; j < m / 2; j++ )
{
n = sub( sub( m, (Word16) 1 ), j );
- L_tmp1 = L_mult( denom_mant, f_fx[j] ); /* denom*f[j]. Q15*Q12 = Q28 (floating with exp) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ L_tmp1 = L_mult( denom_mant, f_fx[j] ); /* denom*f[j]. Q15*Q12 = Q28 (floating with exp) */
L_tmp1 = L_mac_sat( L_tmp1, tmp, f_fx[n] ); /* denom*f[j]+km*denom*f[n] in Q28 (floating with exp) */
L_tmp2 = L_mult( denom_mant, f_fx[n] ); /* denom*f[n]. Q15*Q12 = Q28 (floating with exp) */
L_tmp2 = L_mac_sat( L_tmp2, tmp, f_fx[j] ); /* denom*f[n]+km*denom*f[j] in Q28 (floating with exp) */
@@ -1860,31 +1795,15 @@ void a2rc_fx( const Word16 *a, /* i: can be any Q */
L_tmp2 = L_shr_sat( L_tmp2, exp ); /* bringing to true Q28 */
f_fx[j] = round_fx_sat( L_tmp1 ); /* extracting in q_a */
f_fx[n] = round_fx_sat( L_tmp2 ); /* extracting in q_a */
-#else
- L_tmp1 = L_mac_o( L_tmp1, tmp, f_fx[n], &Overflow ); /* denom*f[j]+km*denom*f[n] in Q28 (floating with exp) */
- L_tmp2 = L_mult( denom_mant, f_fx[n] ); /* denom*f[n]. Q15*Q12 = Q28 (floating with exp) */
- L_tmp2 = L_mac_o( L_tmp2, tmp, f_fx[j], &Overflow ); /* denom*f[n]+km*denom*f[j] in Q28 (floating with exp) */
- L_tmp1 = L_shr_o( L_tmp1, exp, &Overflow ); /* bringing to true Q28 */
- L_tmp2 = L_shr_o( L_tmp2, exp, &Overflow ); /* bringing to true Q28 */
- f_fx[j] = round_fx_o( L_tmp1, &Overflow ); /* extracting in q_a */
- f_fx[n] = round_fx_o( L_tmp2, &Overflow ); /* extracting in q_a */
-#endif
}
IF( m & 1 )
{
- L_tmp1 = L_mult( denom_mant, f_fx[j] ); /* denom*f[j]. Q15*Q12 = Q28 (floating with exp) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ L_tmp1 = L_mult( denom_mant, f_fx[j] ); /* denom*f[j]. Q15*Q12 = Q28 (floating with exp) */
L_tmp1 = L_mac_sat( L_tmp1, tmp, f_fx[j] ); /* denom*f[j]+km*denom*f[j] in Q28 (floating with exp) */
L_tmp1 = L_shr_sat( L_tmp1, exp ); /* bringing to true Q28 */
f_fx[j] = round_fx_sat( L_tmp1 ); /* extracting in q_a */
move16();
-#else
- L_tmp1 = L_mac_o( L_tmp1, tmp, f_fx[j], &Overflow ); /* denom*f[j]+km*denom*f[j] in Q28 (floating with exp) */
- L_tmp1 = L_shr_o( L_tmp1, exp, &Overflow ); /* bringing to true Q28 */
- f_fx[j] = round_fx_o( L_tmp1, &Overflow ); /* extracting in q_a */
- move16();
-#endif
}
}
@@ -2336,11 +2255,6 @@ Word16 lsf_stab_fx( /* o : LP filter stability Q15*/
Word16 i, m;
Word32 L_tmp;
Word16 tmp, e;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/*-------------------------------------------------------------------*
* Check stability on lsf: distance between old lsf and current lsf
@@ -2385,18 +2299,10 @@ Word16 lsf_stab_fx( /* o : LP filter stability Q15*/
}
e = sub( 30 - 21 - 1, e );
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp = round_fx_sat( L_shl_sat( L_tmp, e ) ); /*Q14*/
-#else
- tmp = round_fx_o( L_shl_o( L_tmp, e, &Overflow ), &Overflow ); /*Q14*/
-#endif
tmp = sub( 20480, tmp ); /* 1.25 - tmp in Q14 */
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp = shl_sat( tmp, 1 ); /* Q14 -> Q15 with saturation */
-#else
- tmp = shl_o( tmp, 1, &Overflow ); /* Q14 -> Q15 with saturation */
-#endif
tmp = s_max( tmp, 0 );
@@ -2433,11 +2339,6 @@ Word16 lsf_stab_ivas_fx( /* o : LP filter stability
Word16 i, m;
Word32 L_tmp;
Word16 tmp, e;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/*-------------------------------------------------------------------*
* Check stability on lsf: distance between old lsf and current lsf
@@ -2488,11 +2389,7 @@ Word16 lsf_stab_ivas_fx( /* o : LP filter stability
}
e = sub( 30 - 21 - 1, e );
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp = round_fx_sat( L_shl_sat( L_tmp, e ) ); /*Q12*/
-#else
- tmp = round_fx_o( L_shl_o( L_tmp, e, &Overflow ), &Overflow ); /*Q12*/
-#endif
// tmp = sub(20480, tmp); /* 1.25 - tmp in Q14 */
tmp = sub( 5120, tmp ); /* 1.25 - tmp in Q12 */
@@ -3851,11 +3748,6 @@ Word16 root_search_fx( Word16 low,
Word32 v_high, vh;
Word32 Ltemp, L_tmp1, L_tmp, Ltmp;
Word16 exp1, tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
v_high = polynomial_eval_fx( high, coef, order ); /* v_high has the value at high index */
@@ -3922,13 +3814,9 @@ Word16 root_search_fx( Word16 low,
L_tmp1 = L_shl( L_tmp, exp1 );
tmp = extract_h( L_tmp1 );
exp1 = sub( 30 - 25, exp1 );
- tmp = div_s( 16384, tmp ); /* 15+exp1 */
- Ltmp = Mult_32_16( *v_low, tmp ); /* 15+exp1+25-15 */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ tmp = div_s( 16384, tmp ); /* 15+exp1 */
+ Ltmp = Mult_32_16( *v_low, tmp ); /* 15+exp1+25-15 */
Ltemp = L_shl_sat( Ltmp, ( 6 - exp1 ) ); /* Q31 */
-#else
- Ltemp = L_shl_o( Ltmp, ( 6 - exp1 ), &Overflow ); /* Q31 */
-#endif
if ( LT_32( *v_low, vh ) )
{
Ltemp = L_negate( Ltemp );
@@ -4147,7 +4035,7 @@ void dec_FDCNG_MSVQ_stage1_fx(
{
dct_vec[col] = shl( cbpW8[col], dct_col_shift_tab[col] ); // Q0
move32();
- /* LOGIC( 1 ) , SHIFT( 1 );
+ /* LOGIC( 1 ), SHIFT( 1 );
in BASOP: s_and(for W8->W16), shl()
*/
}
diff --git a/lib_com/lsp_conv_poly_fx.c b/lib_com/lsp_conv_poly_fx.c
index e9d5413b3bbb9c30f0616b1a225bb6ebe7b986a3..e9b4a559b8ebee99b86abef60ea53dd8fbae1fbc 100644
--- a/lib_com/lsp_conv_poly_fx.c
+++ b/lib_com/lsp_conv_poly_fx.c
@@ -335,28 +335,16 @@ static Word32 b_inv_sq(
Word16 m_den, exp_den;
Word16 div_out;
Word32 Ltmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
exp_den = norm_l( in32 );
m_den = extract_h( L_shl( in32, exp_den ) );
exp_den = add( sub( 30, exp_den ), sub( 16, exp_in ) );
m_den = mult_r( m_den, m_den );
-#ifdef ISSUE_1836_replace_overflow_libcom
exp_den = shl( exp_den, 1 );
div_out = div_s( 8192, m_den );
Ltmp = L_shl_sat( div_out, add( sub( 30 - 13, exp_den ), 15 ) ); /*Q15*/
-#else
- exp_den = shl_o( exp_den, 1, &Overflow );
-
- div_out = div_s( 8192, m_den );
- Ltmp = L_shl_o( div_out, add( sub( 30 - 13, exp_den ), 15 ), &Overflow ); /*Q15*/
-#endif
return Ltmp;
}
@@ -372,11 +360,6 @@ static Word32 inv_pow(
Word32 mh;
UWord16 ml;
Word32 r0, s0;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
IF( re == 0 )
{
@@ -388,11 +371,7 @@ static Word32 inv_pow(
{
exp1 = norm_l( re );
tmp = extract_h( L_shl( re, exp1 ) );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shr( L_mult_sat( tmp, tmp ), 1 );
-#else
- L_tmp = L_shr( L_mult_o( tmp, tmp, &Overflow ), 1 );
-#endif
Mpy_32_16_ss( L_tmp, x, &mh, &ml );
r0 = L_add( L_tmp, mh );
}
@@ -407,11 +386,7 @@ static Word32 inv_pow(
{
exp2 = norm_l( se );
tmp = extract_h( L_shl( se, exp2 ) );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shr( L_mult_sat( tmp, tmp ), 1 );
-#else
- L_tmp = L_shr( L_mult_o( tmp, tmp, &Overflow ), 1 );
-#endif
Mpy_32_16_ss( L_tmp, x, &mh, &ml );
s0 = L_sub( L_tmp, mh );
}
@@ -441,11 +416,7 @@ static Word32 inv_pow(
}
tmp = div_s( (Word16) ( ( 1 << 14 ) - 1 ), tmp );
exp1 = add( exp1, exp2 );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shr_sat( tmp, sub( 31, exp1 ) ); /* result in Q15 */
-#else
- L_tmp = L_shr_o( tmp, sub( 31, exp1 ), &Overflow ); /* result in Q15 */
-#endif
return ( L_tmp );
}
@@ -523,11 +494,6 @@ static void spectautocorr_fx(
UWord16 ml;
Word32 r[M + 1];
Word16 exp0;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/*---------------------------------------------------------------------*
* The mid point of the cosine table x of m entries assuming an odd m.
@@ -549,11 +515,7 @@ static void spectautocorr_fx(
move32();
FOR( i = 2; i < N - 1; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
r[0] = L_add_sat( r[0], G[i] );
-#else
- r[0] = L_add_o( r[0], G[i], &Overflow );
-#endif
move32();
}
@@ -587,27 +549,18 @@ static void spectautocorr_fx(
move16(); /* 1.0 in Q15 */
FOR( i = 1; i < imid; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
gp = L_add_sat( G[i], G[N - i - 1] );
-#else
- gp = L_add_o( G[i], G[N - i - 1], &Overflow );
-#endif
gn = L_sub( G[i], G[N - i - 1] );
/*r[1] = L_mac(r[1], x[i-1], gn);*/
Mpy_32_16_ss( gn, x[i - 1], &mh, &ml );
-#ifdef ISSUE_1836_replace_overflow_libcom
r[1] = L_add_sat( r[1], mh );
-#else
- r[1] = L_add_o( r[1], mh, &Overflow );
-#endif
move32();
c[1] = x[i - 1];
move16();
FOR( j = 2; j < M; j += 2 )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
c[j] = mult_r( c[j - 1], x[i - 1] );
move16();
c[j] = add_sat( c[j], sub_sat( c[j], c[j - 2] ) );
@@ -627,75 +580,34 @@ static void spectautocorr_fx(
Mpy_32_16_ss( gn, c[j + 1], &mh, &ml );
r[j + 1] = L_add_sat( r[j + 1], mh );
move32();
-#else
- c[j] = mult_r( c[j - 1], x[i - 1] );
- move16();
- c[j] = add_o( c[j], sub_o( c[j], c[j - 2], &Overflow ), &Overflow );
- move16();
-
- /*r[j] = L_mac(r[j], c[j], gp);*/
- Mpy_32_16_ss( gp, c[j], &mh, &ml );
- r[j] = L_add_o( r[j], mh, &Overflow );
- move32();
-
- c[j + 1] = mult_r( c[j], x[i - 1] );
- move16();
- c[j + 1] = add_o( c[j + 1], sub_o( c[j + 1], c[j - 1], &Overflow ), &Overflow );
- move16();
-
- /*r[j+1] = L_mac(r[j+1], c[j+1], gn);*/
- Mpy_32_16_ss( gn, c[j + 1], &mh, &ml );
- r[j + 1] = L_add_o( r[j + 1], mh, &Overflow );
- move32();
-#endif
}
c[j] = mult_r( c[j - 1], x[i - 1] );
move16();
-#ifdef ISSUE_1836_replace_overflow_libcom
c[j] = add_sat( c[j], sub_sat( c[j], c[j - 2] ) );
move16();
Mpy_32_16_ss( gp, c[j], &mh, &ml );
r[j] = L_add_sat( r[j], mh );
move32();
-#else
- c[j] = add_o( c[j], sub_o( c[j], c[j - 2], &Overflow ), &Overflow );
- move16();
-
- Mpy_32_16_ss( gp, c[j], &mh, &ml );
- r[j] = L_add_o( r[j], mh, &Overflow );
- move32();
-#endif
}
/*---------------------------------------------------------------------*
* Add the endpoints x = cos(0) = 1 and x = cos(pi) = -1 as
* well as the lower half of the unit circle.
*---------------------------------------------------------------------*/
-#ifdef ISSUE_1836_replace_overflow_libcom
+
gp = L_shr( L_add_sat( G[0], G[N - 1] ), 1 );
gn = L_shr( L_sub( G[0], G[N - 1] ), 1 );
r[0] = L_add_sat( r[0], gp );
-#else
- gp = L_shr( L_add_o( G[0], G[N - 1], &Overflow ), 1 );
- gn = L_shr( L_sub( G[0], G[N - 1] ), 1 );
-
- r[0] = L_add_o( r[0], gp, &Overflow );
-#endif
move32();
exp0 = norm_l( r[0] );
L_Extract( L_shl( r[0], exp0 ), &rh[0], &rl[0] );
FOR( j = 1; j < M; j += 2 )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
L_Extract( L_shl( L_add_sat( r[j], gn ), exp0 ), &rh[j], &rl[j] );
L_Extract( L_shl( L_add_sat( r[j + 1], gp ), exp0 ), &rh[j + 1], &rl[j + 1] );
-#else
- L_Extract( L_shl( L_add_o( r[j], gn, &Overflow ), exp0 ), &rh[j], &rl[j] );
- L_Extract( L_shl( L_add_o( r[j + 1], gp, &Overflow ), exp0 ), &rh[j + 1], &rl[j + 1] );
-#endif
}
return;
diff --git a/lib_com/math_op.c b/lib_com/math_op.c
index ac92eec20ec7091e9f5da4e3394e4b13395dbdb8..12d14ca6a0d1fe86141d377ef7907d0150aa6f4e 100644
--- a/lib_com/math_op.c
+++ b/lib_com/math_op.c
@@ -228,30 +228,16 @@ Word32 Energy_scale( /* (o) : Q31: normalized result (1 < val
{
Word16 i, sft, tmp;
Word32 L_sum;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
-
L_sum = 0; /* just to avoid superflous compiler warning about uninitialized use of L_sum */
IF( expi == 0 )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
L_sum = L_mac_sat( 1, x[0], x[0] );
FOR( i = 1; i < lg; i++ )
{
L_sum = L_mac_sat( L_sum, x[i], x[i] );
}
-#else
- L_sum = L_mac_o( 1, x[0], x[0], &Overflow );
- FOR( i = 1; i < lg; i++ )
- {
- L_sum = L_mac_o( L_sum, x[i], x[i], &Overflow );
- }
-#endif
}
IF( expi < 0 )
{
@@ -261,16 +247,11 @@ Word32 Energy_scale( /* (o) : Q31: normalized result (1 < val
FOR( i = 1; i < lg; i++ )
{
tmp = mult_r( x[i], sft );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_sum = L_mac_sat( L_sum, tmp, tmp );
-#else
- L_sum = L_mac_o( L_sum, tmp, tmp, &Overflow );
-#endif
}
}
IF( expi > 0 )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp = shl_sat( x[0], expi );
L_sum = L_mac_sat( 1, tmp, tmp );
FOR( i = 1; i < lg; i++ )
@@ -278,15 +259,6 @@ Word32 Energy_scale( /* (o) : Q31: normalized result (1 < val
tmp = shl_sat( x[i], expi );
L_sum = L_mac_sat( L_sum, tmp, tmp );
}
-#else
- tmp = shl_o( x[0], expi, &Overflow );
- L_sum = L_mac_o( 1, tmp, tmp, &Overflow );
- FOR( i = 1; i < lg; i++ )
- {
- tmp = shl_o( x[i], expi, &Overflow );
- L_sum = L_mac_o( L_sum, tmp, tmp, &Overflow );
- }
-#endif
}
/* Normalize acc in Q31 */
diff --git a/lib_com/modif_fs_fx.c b/lib_com/modif_fs_fx.c
index b54efcea8f15dcb60e1ddc3e8d62432d40016aff..6bd1e7a699ffd2d697a0c496939321f67864bcef 100644
--- a/lib_com/modif_fs_fx.c
+++ b/lib_com/modif_fs_fx.c
@@ -75,12 +75,6 @@ Word16 modify_Fs_ivas_fx( /* o : length of output Q
Word16 flag_low_order = 0;
move16();
Word16 filt_len_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
const Resampling_cfg *cfg_ptr_fx;
/*-------------------------------------------------------------------*
@@ -279,11 +273,7 @@ Word16 modify_Fs_ivas_fx( /* o : length of output Q
test();
IF( GT_32( fin, 16000 ) && ( EQ_16( lg_out, L_FRAME ) || EQ_16( lg_out, L_FRAME16k ) || EQ_16( lg_out, 512 ) ) )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
num_den = shl_sat( num_den, 1 );
-#else
- num_den = shl_o( num_den, 1, &Overflow );
-#endif
*Q_new_inp = add( *Q_new_inp, 1 );
move16();
}
@@ -364,12 +354,6 @@ Word16 modify_Fs_fx( /* o : length of output Q0 */
Word16 flag_low_order = 0;
move16();
Word16 filt_len_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
const Resampling_cfg *cfg_ptr_fx;
/*-------------------------------------------------------------------*
@@ -565,11 +549,7 @@ Word16 modify_Fs_fx( /* o : length of output Q0 */
if ( GT_32( fin, 16000 ) && ( EQ_16( lg_out, L_FRAME ) || EQ_16( lg_out, L_FRAME16k ) || EQ_16( lg_out, 512 ) ) )
{
#ifdef BASOP_NOGLOB_DECLARE_LOCAL
-#ifdef ISSUE_1836_replace_overflow_libcom
num_den = shl_sat( num_den, 1 );
-#else
- num_den = shl_o( num_den, 1, &Overflow );
-#endif
#else
num_den = shl( num_den, 1 );
#endif
@@ -941,176 +921,95 @@ void Decimate_allpass_steep_fx(
Word32 Lacc, Lacc1;
Word16 temp1, temp2;
Word16 sum = 0;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
move16();
/*upper allpass filter chain */
-
-
FOR( k = 0; k < N / 2; k++ )
{
- Lacc = L_deposit_h( mem[0] ); /* Q(16+x) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ Lacc = L_deposit_h( mem[0] ); /* Q(16+x) */
Lacc = L_mac_sat( Lacc, AP1_STEEP_FX[0], in_fx[2 * k] ); /* Q(16+x) */
Lacc1 = L_deposit_h( in_fx[2 * k] ); /* Q16+Qx */
temp1 = extract_h( Lacc ); /* Qx */
Lacc1 = L_msu_sat( Lacc1, AP1_STEEP_FX[0], temp1 ); /* Q16+Qx */
-#else
- Lacc = L_mac_o( Lacc, AP1_STEEP_FX[0], in_fx[2 * k], &Overflow ); /* Q(16+x) */
- Lacc1 = L_deposit_h( in_fx[2 * k] ); /* Q16+Qx */
- temp1 = extract_h( Lacc ); /* Qx */
- Lacc1 = L_msu_o( Lacc1, AP1_STEEP_FX[0], temp1, &Overflow ); /* Q16+Qx */
-#endif
- mem[0] = extract_h( Lacc1 ); /* Qx */
+ mem[0] = extract_h( Lacc1 ); /* Qx */
temp[0] = temp1;
move16();
move16();
- Lacc1 = L_deposit_h( mem[1] ); /* Q16+Qx */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ Lacc1 = L_deposit_h( mem[1] ); /* Q16+Qx */
Lacc1 = ( L_mac_sat( Lacc1, AP1_STEEP_FX[1], temp1 ) ); /* Q16+Qx */
temp2 = extract_h( Lacc1 ); /* Qx */
Lacc = L_msu_sat( Lacc, AP1_STEEP_FX[1], temp2 ); /* Q16+Qx */
-#else
- Lacc1 = ( L_mac_o( Lacc1, AP1_STEEP_FX[1], temp1, &Overflow ) ); /* Q16+Qx */
-
- temp2 = extract_h( Lacc1 ); /* Qx */
- Lacc = L_msu_o( Lacc, AP1_STEEP_FX[1], temp2, &Overflow ); /* Q16+Qx */
-#endif
- mem[1] = extract_h( Lacc ); /* Qx */
+ mem[1] = extract_h( Lacc ); /* Qx */
temp[1] = temp2;
move16();
move16();
-
- Lacc = L_deposit_h( mem[ALLPASSSECTIONS_STEEP - 1] ); /* Q(16+x) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ Lacc = L_deposit_h( mem[ALLPASSSECTIONS_STEEP - 1] ); /* Q(16+x) */
out_fx[k] = extract_h( L_mac_sat( Lacc, AP1_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], temp2 ) ); /* Qx format */
move16();
mem[ALLPASSSECTIONS_STEEP - 1] = extract_h( L_msu_sat( Lacc1, AP1_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], out_fx[k] ) ); /* Qx */
move16();
-#else
- out_fx[k] = extract_h( L_mac_o( Lacc, AP1_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], temp2, &Overflow ) ); /* Qx format */
- move16();
- mem[ALLPASSSECTIONS_STEEP - 1] = extract_h( L_msu_o( Lacc1, AP1_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], out_fx[k], &Overflow ) ); /* Qx */
- move16();
-#endif
}
/* lower allpass filter chain */
-
- Lacc = L_deposit_h( mem[ALLPASSSECTIONS_STEEP] ); /* Q(16+x) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ Lacc = L_deposit_h( mem[ALLPASSSECTIONS_STEEP] ); /* Q(16+x) */
Lacc = L_mac_sat( Lacc, AP2_STEEP_FX[0], mem[2 * ALLPASSSECTIONS_STEEP] ); /* Q(16+x) */
Lacc1 = L_deposit_h( mem[2 * ALLPASSSECTIONS_STEEP] ); /* Q(16+x) */
temp1 = extract_h( Lacc ); /* Qx */
Lacc1 = L_msu_sat( Lacc1, AP2_STEEP_FX[0], temp1 ); /* Q(16+x) */
-#else
- Lacc = L_mac_o( Lacc, AP2_STEEP_FX[0], mem[2 * ALLPASSSECTIONS_STEEP], &Overflow ); /*Q(16+x) */
- Lacc1 = L_deposit_h( mem[2 * ALLPASSSECTIONS_STEEP] ); /* Q(16+x) */
- temp1 = extract_h( Lacc ); /* Qx */
- Lacc1 = L_msu_o( Lacc1, AP2_STEEP_FX[0], temp1, &Overflow ); /* Q(16+x) */
-#endif
mem[ALLPASSSECTIONS_STEEP] = extract_h( Lacc1 );
temp[0] = temp1;
move16();
Lacc1 = L_deposit_h( mem[ALLPASSSECTIONS_STEEP + 1] ); /* Q(16+x) */
-#ifdef ISSUE_1836_replace_overflow_libcom
- Lacc1 = L_mac_sat( Lacc1, AP2_STEEP_FX[1], temp1 ); /* Q(16+x) */
- temp2 = extract_h( Lacc1 ); /* Qx */
+ Lacc1 = L_mac_sat( Lacc1, AP2_STEEP_FX[1], temp1 ); /* Q(16+x) */
+ temp2 = extract_h( Lacc1 ); /* Qx */
temp[1] = temp2;
move16();
- Lacc = L_msu_sat( Lacc, AP2_STEEP_FX[1], temp2 ); /* Q(16+x) */
-#else
- Lacc1 = L_mac_o( Lacc1, AP2_STEEP_FX[1], temp1, &Overflow ); /* Q(16+x) */
- temp2 = extract_h( Lacc1 ); /* Qx */
- temp[1] = temp2;
- move16();
- Lacc = L_msu_o( Lacc, AP2_STEEP_FX[1], temp2, &Overflow ); /* Q(16+x) */
-#endif
+ Lacc = L_msu_sat( Lacc, AP2_STEEP_FX[1], temp2 ); /* Q(16+x) */
mem[ALLPASSSECTIONS_STEEP + 1] = extract_h( Lacc ); /* Qx */
move16();
- Lacc = L_deposit_h( mem[2 * ALLPASSSECTIONS_STEEP - 1] ); /* Q(16+x) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ Lacc = L_deposit_h( mem[2 * ALLPASSSECTIONS_STEEP - 1] ); /* Q(16+x) */
Lacc = L_mac_sat( Lacc, AP2_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], temp2 ); /* Q(16+x) temp[ALLPASSSECTIONS_STEEP-1] */
temp[2] = extract_h( Lacc ); /* temp[2] in Qx */
move16();
Lacc1 = L_msu_sat( Lacc1, AP2_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], temp[2] ); /* Q(16+x) */
-#else
- Lacc = L_mac_o( Lacc, AP2_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], temp2, &Overflow ); /* Q(16+x) temp[ALLPASSSECTIONS_STEEP-1] */
- temp[2] = extract_h( Lacc ); /* temp[2] in Qx */
- move16();
- Lacc1 = L_msu_o( Lacc1, AP2_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], temp[2], &Overflow ); /* Q(16+x) */
-#endif
- mem[2 * ALLPASSSECTIONS_STEEP - 1] = extract_h( Lacc1 ); /* Qx */
+ mem[2 * ALLPASSSECTIONS_STEEP - 1] = extract_h( Lacc1 ); /* Qx */
move16();
sum = mult_r( out_fx[0], 16384 ); /* Qx */
out_fx[0] = add_sat( sum, mult_r( temp[ALLPASSSECTIONS_STEEP - 1], 16384 ) ); /* Qx */
move16();
-
FOR( k = 1; k < N / 2; k++ )
{
-
-
- Lacc = L_deposit_h( mem[ALLPASSSECTIONS_STEEP] ); /* Q(16+x) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ Lacc = L_deposit_h( mem[ALLPASSSECTIONS_STEEP] ); /* Q(16+x) */
Lacc = L_mac_sat( Lacc, AP2_STEEP_FX[0], in_fx[2 * k - 1] ); /* Q(16+x):temp[0] */
Lacc1 = L_deposit_h( in_fx[2 * k - 1] ); /* Q(16+x) */
temp1 = extract_h( Lacc ); /* Qx */
Lacc1 = L_msu_sat( Lacc1, AP2_STEEP_FX[0], temp1 ); /* Q(16+x) */
-#else
- Lacc = L_mac_o( Lacc, AP2_STEEP_FX[0], in_fx[2 * k - 1], &Overflow ); /* Q(16+x):temp[0] */
- Lacc1 = L_deposit_h( in_fx[2 * k - 1] ); /* Q(16+x) */
- temp1 = extract_h( Lacc ); /* Qx */
- Lacc1 = L_msu_o( Lacc1, AP2_STEEP_FX[0], temp1, &Overflow ); /* Q(16+x) */
-#endif
mem[ALLPASSSECTIONS_STEEP] = extract_h( Lacc1 ); /* Qx */
move16();
temp[0] = temp1;
move16();
-
Lacc1 = L_deposit_h( mem[ALLPASSSECTIONS_STEEP + 1] ); /* Q(16+x) */
-#ifdef ISSUE_1836_replace_overflow_libcom
- Lacc1 = L_mac_sat( Lacc1, AP2_STEEP_FX[1], temp1 ); /* Q(16+x) */
- temp2 = extract_h( Lacc1 ); /* Qx */
+ Lacc1 = L_mac_sat( Lacc1, AP2_STEEP_FX[1], temp1 ); /* Q(16+x) */
+ temp2 = extract_h( Lacc1 ); /* Qx */
temp[1] = temp2;
move16();
Lacc = L_msu_sat( Lacc, AP2_STEEP_FX[1], temp2 ); /* Q(16+x) */
mem[ALLPASSSECTIONS_STEEP + 1] = extract_h( Lacc ); /* Qx */
-
Lacc = L_deposit_h( mem[2 * ALLPASSSECTIONS_STEEP - 1] ); /* Q(16+x) */
Lacc = L_mac_sat( Lacc, AP2_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], temp[1] ); /* Q(16+x) temp[ALLPASSSECTIONS_STEEP-1] */
temp[2] = extract_h( Lacc ); /*temp[2] in Qx */
Lacc1 = L_msu_sat( Lacc1, AP2_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], temp[2] ); /* Q(16+x) */
-#else
- Lacc1 = L_mac_o( Lacc1, AP2_STEEP_FX[1], temp1, &Overflow ); /* Q(16+x) */
- temp2 = extract_h( Lacc1 ); /* Qx */
- temp[1] = temp2;
- move16();
- Lacc = L_msu_o( Lacc, AP2_STEEP_FX[1], temp2, &Overflow ); /* Q(16+x) */
- mem[ALLPASSSECTIONS_STEEP + 1] = extract_h( Lacc ); /* Qx */
-
-
- Lacc = L_deposit_h( mem[2 * ALLPASSSECTIONS_STEEP - 1] ); /* Q(16+x) */
- Lacc = L_mac_o( Lacc, AP2_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], temp[1], &Overflow ); /* Q(16+x) temp[ALLPASSSECTIONS_STEEP-1] */
- temp[2] = extract_h( Lacc ); /*temp[2] in Qx */
- Lacc1 = L_msu_o( Lacc1, AP2_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], temp[2], &Overflow ); /* Q(16+x) */
-#endif
- mem[2 * ALLPASSSECTIONS_STEEP - 1] = extract_h( Lacc1 ); /* Qx */
-
+ mem[2 * ALLPASSSECTIONS_STEEP - 1] = extract_h( Lacc1 ); /* Qx */
sum = mult_r( out_fx[k], 16384 ); /* Qx */
out_fx[k] = add_sat( sum, mult_r( temp[ALLPASSSECTIONS_STEEP - 1], 16384 ) );
@@ -1225,20 +1124,13 @@ void Interpolate_allpass_steep_fx(
Word16 k;
Word32 Lacc = 0, Lacc1 = 0;
Word16 temp1, temp2;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
/*** State in Q0,in_fx Q0, AP1_STEEP in Q15 AP2_STEEP in Q15 OP in Q0 ************/
/*upper allpass filter chain */
FOR( k = 0; k < N; k++ )
{
-
- Lacc = L_deposit_h( mem[0] ); /* Q(16+x) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ Lacc = L_deposit_h( mem[0] ); /* Q(16+x) */
Lacc = L_mac_sat( Lacc, AP2_STEEP_FX[0], in_fx[k] ); /* Q(16+x):temp[0] */
Lacc1 = L_deposit_h( in_fx[k] ); /* Q(16+x) */
temp1 = round_fx_sat( Lacc ); /* Qx */
@@ -1261,37 +1153,13 @@ void Interpolate_allpass_steep_fx(
move16();
mem[ALLPASSSECTIONS_STEEP - 1] = round_fx_sat( L_msu_sat( Lacc1, AP2_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], out_fx[2 * k + 1] ) ); /* Qx */
move16();
-#else
- Lacc1 = L_deposit_h( in_fx[k] ); /* Q(16+x) */
- temp1 = round_fx_o( Lacc, &Overflow ); /* Qx */
- Lacc1 = L_msu_o( Lacc1, AP2_STEEP_FX[0], temp1, &Overflow ); /* Q(16+x) */
-
- mem[0] = round_fx_o( Lacc1, &Overflow );
- move16();
- Lacc1 = L_deposit_h( mem[1] ); /* Q(16+x) */
- Lacc1 = ( L_mac_o( Lacc1, AP2_STEEP_FX[1], temp1, &Overflow ) ); /* Q(16+x):temp[1] */
- Lacc = L_deposit_h( temp1 );
-
- temp2 = round_fx_o( Lacc1, &Overflow ); /* Qx */
- Lacc = L_msu_o( Lacc, AP2_STEEP_FX[1], temp2, &Overflow ); /* Q(16+x) */
- mem[1] = round_fx_o( Lacc, &Overflow ); /* Qx */
- move16();
-
- Lacc1 = L_deposit_h( temp2 );
- Lacc = L_deposit_h( mem[ALLPASSSECTIONS_STEEP - 1] ); /* Q(16+x) */
- out_fx[2 * k + 1] = round_fx_o( L_mac_o( Lacc, AP2_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], temp2, &Overflow ), &Overflow ); /* Qx format */
- move16();
- mem[ALLPASSSECTIONS_STEEP - 1] = round_fx_o( L_msu_o( Lacc1, AP2_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], out_fx[2 * k + 1], &Overflow ), &Overflow ); /* Qx */
- move16();
-#endif
}
/* lower allpass filter chain */
FOR( k = 0; k < N; k++ )
{
- Lacc = L_deposit_h( mem[ALLPASSSECTIONS_STEEP] ); /* Q(16+x) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ Lacc = L_deposit_h( mem[ALLPASSSECTIONS_STEEP] ); /* Q(16+x) */
Lacc = L_mac_sat( Lacc, AP1_STEEP_FX[0], in_fx[k] ); /* Q(16+x):temp[0] */
Lacc1 = L_deposit_h( in_fx[k] ); /* Q(16+x) */
temp1 = round_fx_sat( Lacc ); /* Qx */
@@ -1312,28 +1180,6 @@ void Interpolate_allpass_steep_fx(
move16();
mem[2 * ALLPASSSECTIONS_STEEP - 1] = round_fx_sat( L_msu_sat( Lacc1, AP1_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], out_fx[2 * k] ) ); /* Qx */
move16();
-#else
- Lacc = L_mac_o( Lacc, AP1_STEEP_FX[0], in_fx[k], &Overflow ); /* Q(16+x):temp[0] */
- Lacc1 = L_deposit_h( in_fx[k] ); /* Q(16+x) */
- temp1 = round_fx_o( Lacc, &Overflow ); /* Qx */
- Lacc1 = L_msu_o( Lacc1, AP1_STEEP_FX[0], temp1, &Overflow ); /* Q(16+x) */
-
- mem[ALLPASSSECTIONS_STEEP] = round_fx_o( Lacc1, &Overflow );
- Lacc1 = L_deposit_h( mem[ALLPASSSECTIONS_STEEP + 1] ); /* Q(16+x) */
- Lacc1 = L_mac_o( Lacc1, AP1_STEEP_FX[1], temp1, &Overflow ); /* Q(16+x):temp[1] */
-
- temp2 = round_fx_o( Lacc1, &Overflow ); /* Qx */
- Lacc = L_deposit_h( temp1 );
- Lacc = L_msu_o( Lacc, AP1_STEEP_FX[1], temp2, &Overflow ); /* Q(16+x) */
- mem[ALLPASSSECTIONS_STEEP + 1] = round_fx_o( Lacc, &Overflow ); /* Qx */
-
- Lacc = L_deposit_h( mem[2 * ALLPASSSECTIONS_STEEP - 1] ); /* Q(16+x) */
- Lacc1 = L_deposit_h( temp2 );
- out_fx[2 * k] = round_fx_o( L_mac_o( Lacc, AP1_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], temp2, &Overflow ), &Overflow ); /* Qx format */
- move16();
- mem[2 * ALLPASSSECTIONS_STEEP - 1] = round_fx_o( L_msu_o( Lacc1, AP1_STEEP_FX[ALLPASSSECTIONS_STEEP - 1], out_fx[2 * k], &Overflow ), &Overflow ); /* Qx */
- move16();
-#endif
}
return;
diff --git a/lib_com/oper_32b.c b/lib_com/oper_32b.c
index d8966dbab9914381ca5466a2d2772b34f3665c18..cb8c773004d605c06b6b3b595db70639be814a36 100644
--- a/lib_com/oper_32b.c
+++ b/lib_com/oper_32b.c
@@ -124,20 +124,10 @@ Word32 L_Comp( Word16 hi, Word16 lo )
Word32 Mpy_32( Word16 hi1, Word16 lo1, Word16 hi2, Word16 lo2 )
{
Word32 L_32;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
L_32 = L_mult( hi1, hi2 );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_32 = L_mac_sat( L_32, mult( hi1, lo2 ), 1 );
L_32 = L_mac_sat( L_32, mult( lo1, hi2 ), 1 );
-#else
- L_32 = L_mac_o( L_32, mult( hi1, lo2 ), 1, &Overflow );
- L_32 = L_mac_o( L_32, mult( lo1, hi2 ), 1, &Overflow );
-#endif
return ( L_32 );
}
@@ -166,21 +156,10 @@ Word32 Mpy_32( Word16 hi1, Word16 lo1, Word16 hi2, Word16 lo2 )
Word32 Mac_32( Word32 L_num, Word16 hi1, Word16 lo1, Word16 hi2, Word16 lo2 )
{
Word32 L_32;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
-#ifdef ISSUE_1836_replace_overflow_libcom
L_32 = L_mac_sat( L_num, hi1, hi2 );
L_32 = L_mac_sat( L_32, mult( hi1, lo2 ), 1 );
L_32 = L_mac_sat( L_32, mult( lo1, hi2 ), 1 );
-#else
- L_32 = L_mac_o( L_num, hi1, hi2, &Overflow );
- L_32 = L_mac_o( L_32, mult( hi1, lo2 ), 1, &Overflow );
- L_32 = L_mac_o( L_32, mult( lo1, hi2 ), 1, &Overflow );
-#endif
return ( L_32 );
}
@@ -208,19 +187,9 @@ Word32 Mac_32( Word32 L_num, Word16 hi1, Word16 lo1, Word16 hi2, Word16 lo2 )
Word32 Sqr_32( Word16 hi, Word16 lo )
{
Word32 L_32;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
-#ifdef ISSUE_1836_replace_overflow_libcom
L_32 = L_mult_sat( hi, hi );
L_32 = L_mac_sat( L_32, mult( hi, lo ), 2 );
-#else
- L_32 = L_mult_o( hi, hi, &Overflow );
- L_32 = L_mac_o( L_32, mult( hi, lo ), 2, &Overflow );
-#endif
return ( L_32 );
}
diff --git a/lib_com/options.h b/lib_com/options.h
index 4eb4bc82aa5b99056e0a0a1054237876516f7053..4d2514eb3ae76b335ea63598ba22c5583fb3f208 100644
--- a/lib_com/options.h
+++ b/lib_com/options.h
@@ -71,104 +71,61 @@
#define BASOP_NOGLOB_DECLARE_LOCAL
#endif
-/* Note: each compile switch (FIX_1101_...) is independent from the other ones */
-
-#define FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW /* FhG: bit-exact, replace carry and overflow operations by 64-bit operations, MR 2166 */
-#define ISSUE_1836_replace_overflow_libcom /* FhG: BE - replace overflow operators by non-overflow-alternatives in lib_com */
-#define ISSUE_1867_replace_overflow_libenc /* FhG: BE - replace overflow operators by non-overflow-alternatives all over the lib_enc module */
-#define FIX_1942_ASSERTION_LOWSHELF /* FhG: Modified the target_gains_db_fx calculation in compute_t60_coeffs_fx() */
-#define FIX_1944_CRASH_FOR_STEREO /* FhG: improve TonalMDCTConceal_InsertNoise calculation precision */
-#define FIX_1970_SBA_CRASH /* Dlb: Fix for issue 1970, SBA crash */
-
-#define FIX_1978_SAT_MISSING_IN_GAIN_ENC /* VA: Fix add saturation missing that lead to a crash in P800-10 */
-#define FIX_1981_MAXIMUM_EXP_FX /* FhG: Fix bug in function to find maximum value in vector */
-#define FIX_1981_MAXIMUM_EXP_FX_ZEROMANTISSA /* FhG: Fix bug in function to find maximum value in vector:zero-mantissa fix*/
-
-#define FIX_1979_SAT_MISSING_IN_LSF_ENC /* VA: Proposal to fix 1979, saturation in lsf_enc, NOkia to review */
-#define FIX_1946_CRASH_JBM_PROCESSING /* FhG: Increased guard bits of DFT_fx */
-#define FIX_1980_CRASH_FDCNG_ENCODESID /* FhG: Add one bit of headroom in e_fx calculation in FdCng_encodeSID_ivas_fx() */
-#define FIX_1987_CRASH_OMASA_ENERGY /* FhG: Replace cldfbAnalysis_ts_fx_fix_q() with cldfbAnalysis_ts_fx_var_q() to avoid assertion error */
-#define FIX_1985_SBA_714_HF_LOSS /* Dlb: Fix for issue 1985, improved dirac ref pow precision*/
-#define FIX_1819_EIGENVALUE_ERROR /* FhG: Workaround for zero eigenvalue: replace with epsilon if det != 0*/
-#define FIX_1990_SANITIZER_IN_REVERB_LOAD /* Nokia: Fix issue part of issue 1990 by introducing missing free of structure. */
-#define FIX_1995_REVERB_INIT /* VA/Nokia: issue 1995: Fix use-of-uninitialized-value in ivas_binaural_reverb_init() */
-#define FIX_1996_MASKING_NOISE /* Dlb: Heavy precision loss in ola buffers causing discontinuity*/
-#define FIX1998_APA_EXEC_SCALING /* FhG: fix scaling of apa_exec_ivas_fx(); avoid continuously worse scaling with previous data */
-#define FIX2007_BASSPSFILTER_OVERFLOW /* FhG: use saturing operator, to avoid overflow in bass_psfilter_fx() */
-#define FIX_ISSUE_2004_LPC_SHB_SAT /* Dolby: Issue 2004: prevent saturation of the LPC SHB filter */
-
-#define FIX_2009_HIGH_NOISE_FLOOR_FOR_FX_DEC /* FhG: Corrected the q_input in the input of generate_masking_noise_dirac_ivas_fx() */
-#define FIX_ISSUE_2013_MDCT_STEREO_DTX_DISCONTINUITIES /* Eri/FhG: Issue 2013 fix for dtx discontinuities */
-#define FIX_ISSUE_2013_MDCT_STEREO_FER_DISCONTINUITIES /* Eri/FhG: Issue 2013 fix for FER discontinuities */
-#define FIX_2000_NON_LINEARITY_OVERSHOOT /* Eri: Issue 2000: SWB TBE energy overshoot in non-linearity. Aligns with float */
-#define FIX_2010_PREP_TBE_EXC /* FhG: fix issues with varying Q-values for code_preQ_fx[] */
-#define FIX_2025_FDCNG_MULT /* Nokia, FhG: Fix LB FDCNG noise introduced by changing mult to i_mult */
-
-#define FIX_1962_FORMAT_CONV_SPECTRAL_DIFF /* FhG: Improved precision of targetEnergy in ivas_ls_setup_conversion_process_mdct_fx() */
-#define FIX_2003_CON_TCX_OVERFLOW /* FhG: Use a dynamic scaling factor for the synth buffer at the output of con_tcx_ivas_fx() */
-#define HP20_FIX32_RECODING /* FhG: optimized hp20_fx_32 calculation and applied it as hp20_fx_32_opt in decoder */
-#define OPT_TCXLTP_FILTER_LOOP /* FhG: optimize loop in tcx_ltp_synth_filter */
-#define FIX_2049_DIFF_IN_DECORR_TAIL /* FhG: correct scale values in ivas_dirac_dec_binaural_process_output_fx() */
-#define FIX_2602_NONBE_SAT_IN_SWB_TBE_SCALE /* Dolby/FhG: fix for issue 2026: Saturation in SWB TBE re-scaling function preventing StereoDownmix complexity job to complete */
-#define FIX_2021_BANDWIDTH_EXTENSION_PROBLEM /* FhG: increase cldfb buffer precision*/
-
-#define FIX_2083_FLOATING_POINT_LEFTOVERS /* FhG: convert floating-point leftovers in makeCustomLsSetup()*/
-#define FIX_2085_FLOATING_POINT_LEFTOVERS /* FhG: convert floating-point leftovers in ivas_dirac_config_fx() */
+/* ################### Start FIXES switches ########################### */
+
+#define FIX_1990_SANITIZER_IN_REVERB_LOAD /* Nokia: Fix issue part of issue 1990 by introducing missing free of structure - keep until #2059 is addressed */
+#define FIX_1999_TEMPORARY_DISABLE_DIST_ATT_CHECK /* Eri: Issue 1999: Range check on float values of distance attenuation, while the float values are not propagated to this function. The test is not correct, but configurable distance attenuation is not used in Characterization.*/
+#define TEMP_FIX_2088_MSAN_INIT_ERROR /* Eri: Temporary fix for Issue 2088 - MSAN error. Will come with later port of JBM+Split rendering update */
+#define FIX_2092_ASSERT_IN_OMASA_RENDER /* FhG, Nokia: Fix LTV crash due to overflow in OMASA EXT output */
+#define FIX_2084_FLOATING_POINT_LEFTOVERS /* FhG: convert floating-point leftovers in IVAS_ENC_FeedObjectMetadata() */
+#define FIX_2141_ASSERT_IN_OMASA_BITRATE_SWITSCHING /* FhG: Replace L_shl with L_shl_sat to prevent overflow when calculating scale factors for very small numbers in the logarithmic domain */
+/* ################### End FIXES switches ########################### */
+
/* #################### Start BASOP porting switches ############################ */
#define NONBE_1244_FIX_SWB_BWE_MEMORY /* VA: issue 1244: fix to SWB BWE memory in case of switching from FB coding - pending a review by Huawei */
-#define FIX_1129_EXT_REND_OUTPUT_HIGH /* Philips: issue 1129: External renderer BINAURAL_ROOM_REVERB format output level too high compared to internal rendering output */
#define NONBE_1302_FIX_OMASA_JBM_FLUSH /* VA: issue 1302: fix OMASA JBM bitrate switching flush in binaural output */
#define NONBE_1328_FIX_NON_LINEARITY /* VA: Fix possible issue when computing bwe_exc_extended and previous frame were almost 0, float issue 1328 */
#define FIX_1319_STACK_SBA_DECODER /* VA: issue 1319: Optimize the definition of buffer lengths in the SBA decoder */
#define FIX_1320_STACK_CPE_DECODER /* VA: issue 1320: Optimize the stack memory consumption in the CPE decoder */
-#define FIX_1984_SAT_IN_PSYCHAD /* VA: Issue 1984: proposal to fix an assert */
#define NONBE_FIX_1261_MASA_EXT_META_JBM /* Nokia: issue #1261: MASA metadata EXT output delay buffer init in JBM */
-#define NONBE_FIX_1143_MASA_BRSW /* Nok: Fix for issue 1143: MSAN use of uninitialized value in masa decoding to binaural with dtx bitrate switching and 5 % FER */
-#define NONBE_FIX_1220_OMASA_JBM_EXT_USAN /* Nokia: fix issue 1220 OMASA EXT JBM USAN, also fix similar cases of free to avoid future problems */
#define NONBE_FIX_1376_MDCT_CONCEALMENT /* FhG: fix concealment artifact in MDCT Stereo with DTX, in case transition frame gets lost */
-#define FIX_989_TD_REND_ROM /* Eri: Clean-up for TD renderer and completion of ROM generation tool */
-#define FIX_CREND_SIMPLIFY_CODE
-#ifdef FIX_CREND_SIMPLIFY_CODE
-#define FIX_989_TD_REND_ROM /* Eri: Clean-up for TD renderer and completion of ROM generation tool */
-#define USE_REVERB_16BIT_ROM /* if desactivated old rom hrtf tables is used */
-#define USE_TDREND_16BIT_ROM /* if desactivated old rom hrtf tables is used. when active some tests case with 4 ISM fail due to owerflow in round_fixed function */
-#define USE_FASTCONV_PARAMBIN_16BIT_ROM /* if desactivated old rom hrtf tables is used */
-#define FIX_HRTF_LOAD /* VA: issue 1187: fix memory issue when HRTFs are loaded from a binary file */
-#endif
#define NONBE_1377_REND_DIRATT_CONF /* Eri: Issue 1377: Error in directivity attenuation configuration for both IVAS_dec and IVAS_rend */
#define FIX_1377_HANDLE_ERROR_CODE /* Eri: Add missing error code handling from IVAS_REND_SetObjectIDs */
-#define FIX_1999_TEMPORARY_DISABLE_DIST_ATT_CHECK /* Eri: Issue 1999: Range check on float values of distance attenuation, while the float values are not propagated to this function. The test is not correct, but configurable distance attenuation is not used in Characterization.*/
-#define ADJUST_MCT_CHANNELS_MAX /* FhG: set correct max mct channels constant*/
#define FIX_1053_REVERB_RECONFIGURATION
#define TMP_FIX_1119_SPLIT_RENDERING_VOIP /* FhG: Add error check for unsupported config: split rendering with VoIP mode */
#define FIX_1113_EXTREND_ISAR /* FhG: issue 1113: fix external renderer asserts for FOA/HOA2 and CLDFB config */
-#define FIX_1166_TDREND_DIV0 /* FhG,Eri: issue 1166: potential divide by zero in TD Renderer */
-#define NONBE_1203_MDCT2DFT_SWITCHING /* VA: issue 1203: fix severe artifacts during MDCT to DFT stereo switching when MDCT ITD is not used */
-#define NONBE_1122_JBM_FIX_PLAYOUT_DELAY_IN_DTX /* FhG: Avoid JBM ignoring safety margin and setting playout delay to 0 during DTX */
#define NONBE_1122_KEEP_EVS_MODE_UNCHANGED /* FhG: Disables fix for issue 1122 in EVS mode to keep BE tests green. This switch should be removed once the 1122 fix is added to EVS via a CR. */
#define FIX_938_COMPILER_WARNING /* FhG: Fix compiler warning in ivas_mdct_core_reconstruct() */
#define FIX_1376_MISSING_ISM_METADATA /* FhG: IVAS_rend: throw error if there exists an ISM input without a corresponding metadata file path */
#define FIX_1385_INIT_IGF_STOP_FREQ /* FhG: Initialize infoIGFStopFreq in init_igf_dec() */
#define FIX_1387_INIT_PRM_SQQ /* FhG: initialize pointer prm_sqQ, which might be uninitialized in case of bfi == 1 */
-#define NONBE_1296_TDREND_ITD_OUT_OF_BOUNDS_ACCESS /* Eri: issue 1296: ITD resampling can occasionally read out of bounds, especially when the requested subframes are short (1.25 ms). Seen for headtracking+JBM. */
#define FIX_1349_TNS_CRASH /* FhG: Fix crash in TNS entropy coding, in case order of joint TNS coding is reduced to 0 */
-#define NONBE_FIX_1180_HQMDCT_PHECU_LT_MUTING /* Ericsson: issue 1180, corrected long term mute loop attnuation after 200ms in PhECU-PLC */
#define FIX_1179_USAN_PHASEECU /* Eri: issue 1179: better handling of 16 bit wrap around for very long(>200ms) FER-bursts */
-#define NONBE_1199_OMASA_JBM_BRATE_SW_FLUSH /* VA: issue 1199: fix bug in renderer flush in OMASA JBM bitrate switching */
-#define NONBE_1200_ISM_JBM_BRATE_SW_FLUSH /* VA: issue 1200: fix bug in renderer flush in ISM JBM bitrate switching */
#define NONBE_1293_CRASH_FIRST_FRAME_LOST /* VA: issue 1293: fix G.192 decoder crash when first frame is lost */
#define FIX_1384_MSAN_stereo_tcx_core_enc /* VA: issue 1384: fix use-of-uninitialized value in stereo_tcx_core_enc() */
-#define NONBE_FIX_1297_SPAR_JBM_MEM_SAN /* Dolby: issue 1297, SPAR + JBM + BR switch memory sanitizer */
+#define NONBE_1303_REND_GRANULARITY /* VA: issue 1303: Renderer granularity revision */
+#define NONBE_1300_TDREND_LARGE_ITD /* Eri: issue 1300: There was a bug feeding 1.25 ms frames to the TD renderer, causing out-of-buffer access. This was resolved. However, it is still possible that modeled HRTF with large ITDs could trigger out-of-buffer access. This adds a check to prevent this.*/
+#define FIX_1384_MSAN_ivas_spar_dec_open /* VA: issue 1386: fix use-of-uninitialized value in ivas_spar_dec_open() */
+#define FIX_1388_MSAN_ivas_init_decoder /* VA: issue 1388: fix use-of-uninitialized value in ivas_init_decoder() */
+#define FIX_1288_SPLIT_REND_XSAN /* Dlb: Fix asan, msan and usan issues in split rendering mode*/
+#define LIB_DEC_REVISION /* VA: cleaning and simplification of lib_dec.c */
+#define UNIFIED_DECODING_PATHS_LEFTOVERS /* VA: issue 880: remove leftovers after NONBE_UNIFIED_DECODING_PATHS */
+#define FIX_NCHAN_BUFFERS /* VA: issue 1322: Correct the number of float buffers (channels) at the decoder */
+#define FIX_RENDERER_STACK /* VA: issue 1322: reduction of renderers' buffers size */
#define CODE_IMPROVEMENTS
// object-editing feature porting
-#define OBJ_EDITING_API /* object editing changes related to the API */
-#ifdef OBJ_EDITING_API
-#define FIX_HRTF_LOAD_API // solves API conflicts between HRTF and object-editing features
#define TMP_FIX_SPLIT_REND // temporary fix to split-rendering (it follows the later state of the framework but it is needed now because of current test-conditions)
#define TMP_FIX_OMASA_SR_BE // temporary fix to keep OMASA split-rendering BE
-#endif
+#define NONBE_1399_1400_FIX_OBJ_EDIT_ISSUES // Nokia: Fix 1399_1400 issue in float, this is essential for the BASOP porting
+#define OBJ_EDIT_BASOP
+#define NONBE_1217_INIT_OBJ_EDIT /* VA: issue 1217: do object editing only when objects metadata is available */
+#define FIX_1217_OBJECT_EDIT_FILE_INTERFACE /* Nokia: issue #1217: add decoder functionality to read object edit instructions from a file */
+#define NONBE_1217_OBJ_EDIT_FOA /* VA/Nokia: isse 1217: fix crash in object editing to FOA output in ParamISM */
+#define NONBE_FIX_1255_OBJ_EDIT_JBM /* VA: issue 1255: restore object editing in JBM */
+#define FIX_1372_OSBA_OBJECT_EDITING /* VA: issue 1372: Fix OSBA object-editing in BINAURAL_ROOM_IR */
+#define FIX_2140_OBJECT_EDITING_SANITIZER_ISSUES /* Nokia: Issue 2140, fixes three different sanitizer issues persisting in object editing code. */
/* #################### End BASOP porting switches ############################ */
diff --git a/lib_com/phase_dispersion_fx.c b/lib_com/phase_dispersion_fx.c
index 055513dd1ff8bcd4dbf070240a342bd33a669d4a..ce4f70e5a5c98944957ecbbc0f8f785090a471fb 100644
--- a/lib_com/phase_dispersion_fx.c
+++ b/lib_com/phase_dispersion_fx.c
@@ -31,12 +31,6 @@ void phase_dispersion(
Word32 x32[2 * L_SUBFR];
Word16 *code_real, *code_imag;
const Word16 *h_real, *h_imag;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
-
move16();
state = 2;
@@ -60,11 +54,7 @@ void phase_dispersion(
move16();
prev_gain_pit[0] = gain_pit;
-#ifdef ISSUE_1836_replace_overflow_libcom
IF( GT_32( gain_code, L_add_sat( *prev_gain_code, L_shl_sat( *prev_gain_code, 1 ) ) ) )
-#else
- IF( GT_32( gain_code, L_add_o( *prev_gain_code, L_shl_o( *prev_gain_code, 1, &Overflow ), &Overflow ) ) )
-#endif
{
IF( LT_16( state, 2 ) )
{
@@ -172,11 +162,7 @@ void phase_dispersion(
scale2 = getScaleFactor32( x32, L_subfr );
FOR( i = 0; i < L_subfr; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
code[i] = round_fx_sat( L_shl_sat( x32[i], scale2 ) );
-#else
- code[i] = round_fx_o( L_shl_o( x32[i], scale2, &Overflow ), &Overflow );
-#endif
move16();
}
j = sub( j, scale2 );
diff --git a/lib_com/ppp_fx.c b/lib_com/ppp_fx.c
index fd8b0acef8d9adf42572deb5e57bf2ba49a0be7f..c0824124977b34308ef68a814d6496bfd3b1f771 100644
--- a/lib_com/ppp_fx.c
+++ b/lib_com/ppp_fx.c
@@ -97,12 +97,7 @@ void deemph_lpc_fx(
Word16 k, temp;
Word16 b_fx[M + 2]; /* Q12 */
Word16 a_fx[2] = { -22282, 32767 }; /* Q15 {-PREEMPH_FAC,1.0} */
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
b_fx[0] = 4096;
move16(); /* 1 in Q12 */
FOR( k = 0; k < M; k++ )
@@ -117,11 +112,7 @@ void deemph_lpc_fx(
{
/* LPC_de_curr[k] = a[0]*b[k] + a[1]*b[k+1]; */
temp = mult( a_fx[0], b_fx[k] ); /* Q12 */
-#ifdef ISSUE_1836_replace_overflow_libcom
LPC_de_curr_fx[k] = add_sat( temp, b_fx[k + 1] );
-#else
- LPC_de_curr_fx[k] = add_o( temp, b_fx[k + 1], &Overflow );
-#endif
move16(); /* Q12 */
}
@@ -143,11 +134,7 @@ void deemph_lpc_fx(
{
/* LPC_de_old[k] = a[0]*b[k] + a[1]*b[k+1]; */
temp = mult( a_fx[0], b_fx[k] ); /* Q12 */
-#ifdef ISSUE_1836_replace_overflow_libcom
LPC_de_old_fx[k] = add_sat( temp, b_fx[k + 1] );
-#else
- LPC_de_old_fx[k] = add_o( temp, b_fx[k + 1], &Overflow );
-#endif
move16(); /* Q12 */
}
}
diff --git a/lib_com/pred_lt4_fx.c b/lib_com/pred_lt4_fx.c
index 146ecc2cea79fc2a4aa7c562aad4d59a1cbeab11..869edfd1b89911da958ad63bdbed4235353d4690 100644
--- a/lib_com/pred_lt4_fx.c
+++ b/lib_com/pred_lt4_fx.c
@@ -34,12 +34,7 @@ void pred_lt4_ivas_fx(
Word32 s;
const Word16 *x0, *x1, *x2;
const Word32 *c1, *c2;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
x0 = &excI[-T0];
frac = negate( frac );
@@ -72,13 +67,10 @@ void pred_lt4_ivas_fx(
s = W_sat_l( W_shr( s64, 16 ) ); /* Q_exc + Q16 */
}
-#ifdef ISSUE_1836_replace_overflow_libcom
excO[j] = round_fx_sat( s ); /* Q_exc */
-#else
- excO[j] = round_fx_o( s, &Overflow ); /* Q_exc */
-#endif
move16();
}
+
return;
}
@@ -96,14 +88,8 @@ void pred_lt4(
Word16 i, j;
Word32 s;
const Word16 *x0, *x1, *x2, *c1, *c2;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
- x0 = &excI[-T0];
+ x0 = &excI[-T0];
frac = negate( frac );
@@ -134,22 +120,14 @@ void pred_lt4(
}
s = W_sat_l( s64 ); /* Q_exc + Q14 */
}
-#ifdef ISSUE_1836_replace_overflow_libcom
#if ( INTERP_EXP != -1 )
s = L_shl_sat( s, INTERP_EXP + 1 ); /* Q_exc + Q15 */
#endif
excO[j] = round_fx_sat( s ); /* Q_exc */
move16();
-#else
-#if ( INTERP_EXP != -1 )
- s = L_shl_o( s, INTERP_EXP + 1, &Overflow ); /* Q_exc + Q15 */
-#endif
-
- excO[j] = round_fx_o( s, &Overflow ); /* Q_exc */
- move16();
-#endif
}
+
return;
}
@@ -193,12 +171,7 @@ void pred_lt4_tc_fx(
Word16 excO[L_SUBFR + 1];
Word32 L_sum;
Word16 excI[2 * L_SUBFR];
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
Copy( exc + sub( i_subfr, L_SUBFR ), excI, L_SUBFR * 2 ); /* Q0 */
test();
@@ -230,25 +203,15 @@ void pred_lt4_tc_fx(
k += UP_SAMP;
L_sum = L_mac( L_sum, x0[i], win[k] ); /* Q15 */
}
-#ifdef ISSUE_1836_replace_overflow_libcom
L_sum = L_shl_sat( L_sum, 1 ); /* Q16 */
excO[j] = round_fx_sat( L_sum ); /* Q0 */
-#else
- L_sum = L_shl_o( L_sum, 1, &Overflow ); /* Q16 */
- excO[j] = round_fx_o( L_sum, &Overflow ); /* Q0 */
-#endif
-
move16();
x0++;
}
FOR( i = T0; i < L_SUBFR; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
exc[i + i_subfr] = add_sat( exc[i + i_subfr], mult_r( PIT_SHARP_fx, excO[i] ) ); /* Q0 */
-#else
- exc[i + i_subfr] = add_o( exc[i + i_subfr], mult_r( PIT_SHARP_fx, excO[i] ), &Overflow ); /* Q0 */
-#endif
move16();
}
}
diff --git a/lib_com/preemph_fx.c b/lib_com/preemph_fx.c
index db3949bca986349d860738d79c765d9386422616..0184a4aa3b31c265b23594424419c4997f614362 100644
--- a/lib_com/preemph_fx.c
+++ b/lib_com/preemph_fx.c
@@ -22,15 +22,10 @@ void preemph_copy_fx(
)
{
Word16 i, temp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
temp = x[lg - 1]; /* Qx */
move16();
-#ifdef ISSUE_1836_replace_overflow_libcom
+
FOR( i = lg - 1; i > 0; i-- )
{
y[i] = msu_r_sat( L_deposit_h( x[i] ), x[i - 1], mu ); /* Qx */
@@ -38,19 +33,11 @@ void preemph_copy_fx(
}
y[0] = msu_r_sat( L_deposit_h( x[0] ), *mem, mu ); /* Qx */
move16();
-#else
- FOR( i = lg - 1; i > 0; i-- )
- {
- y[i] = msu_ro( L_deposit_h( x[i] ), x[i - 1], mu, &Overflow ); /* Qx */
- move16();
- }
- y[0] = msu_ro( L_deposit_h( x[0] ), *mem, mu, &Overflow ); /* Qx */
- move16();
-#endif
-
*mem = temp; /* Qx */
move16();
+
+ return;
}
void preemph_copy_32fx(
@@ -62,15 +49,10 @@ void preemph_copy_32fx(
)
{
Word16 i, temp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
temp = x[lg - 1]; /* Qx */
move16();
-#ifdef ISSUE_1836_replace_overflow_libcom
+
FOR( i = lg - 1; i > 0; i-- )
{
y[i] = L_msu_sat( L_deposit_h( x[i] ), x[i - 1], mu ); /* Qx+16 */
@@ -78,18 +60,11 @@ void preemph_copy_32fx(
}
y[0] = L_msu_sat( L_deposit_h( x[0] ), *mem, mu ); /* Qx+16 */
move16();
-#else
- FOR( i = lg - 1; i > 0; i-- )
- {
- y[i] = L_msu_o( L_deposit_h( x[i] ), x[i - 1], mu, &Overflow ); /* Qx+16 */
- move16();
- }
- y[0] = L_msu_o( L_deposit_h( x[0] ), *mem, mu, &Overflow ); /* Qx+16 */
- move16();
-#endif
*mem = temp; /* Qx */
move16();
+
+ return;
}
/*-------------------------------------------------------------*
@@ -150,16 +125,10 @@ void E_UTIL_f_preemph2(
{
Word16 i, temp;
Word32 L_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
temp = signal[lg - 1]; /* Qx */
move16();
-#ifdef ISSUE_1836_replace_overflow_libcom
FOR( i = lg - 1; i > 0; i-- )
{
L_tmp = L_mult( signal[i], 16384 ); /* Qx + 15 */
@@ -174,22 +143,6 @@ void E_UTIL_f_preemph2(
L_tmp = L_shl_sat( L_tmp, add( shift, 1 ) ); /* Qx + shift + 16 */
signal[0] = round_fx_sat( L_tmp ); /* Qx + shift */
move16();
-#else
- FOR( i = lg - 1; i > 0; i-- )
- {
- L_tmp = L_mult( signal[i], 16384 ); /* Qx + 15 */
- L_tmp = L_msu0_o( L_tmp, signal[i - 1], mu, &Overflow ); /* Qx + 15 */
- L_tmp = L_shl_o( L_tmp, add( shift, 1 ), &Overflow ); /* Qx + shift + 16 */
- signal[i] = round_fx_o( L_tmp, &Overflow ); /* Qx + shift */
- move16();
- }
-
- L_tmp = L_mult( signal[0], 16384 ); /* Qx + 15 */
- L_tmp = L_msu0_o( L_tmp, *mem, mu, &Overflow ); /* Qx + 15 */
- L_tmp = L_shl_o( L_tmp, add( shift, 1 ), &Overflow ); /* Qx + shift + 16 */
- signal[0] = round_fx_o( L_tmp, &Overflow ); /* Qx + shift */
- move16();
-#endif
*mem = temp; /* Qx */
move16();
diff --git a/lib_com/prot_fx.h b/lib_com/prot_fx.h
index d5583074029523cae0e89ed9c6f22ee087d32e2e..32b8a00ee5d5457391c29147ac2dbdce9bcbde59 100644
--- a/lib_com/prot_fx.h
+++ b/lib_com/prot_fx.h
@@ -32,6 +32,7 @@
#ifndef PROT_FX2_H
#define PROT_FX2_H
+
/*----------------------------------------------------------------------------------*
* Prototypes of RAM counting tool macros
*----------------------------------------------------------------------------------*/
@@ -56,6 +57,8 @@
#include "ivas_error.h"
#include "ivas_error_utils.h"
#include "complex_basop.h"
+
+
#define TCX_IMDCT_SCALE 15
#define TCX_IMDCT_HEADROOM 1
@@ -166,6 +169,7 @@ Word16 L_get_q_buf1( float *ptr_flt, Word16 length );
/*================================================================================*/
/* conversion functions: */
/*================================================================================*/
+
Word32 sum_l_fx(
const Word32 *vec, /* i : input vector */
const Word16 lvec /* i : length of input vector */
@@ -212,8 +216,9 @@ void set32_fx(
);
// tools.c
-Word16 Random( /* o : output random value */
- Word16 *seed /* i/o: random seed */
+/* o : output random value */
+Word16 Random(
+ Word16 *seed /* i/o: random seed */
);
// tools.c
@@ -241,7 +246,6 @@ void Copy_pword(
const Word16 L /* i : vector length */
);
-// tools.c
void Scale_sig(
Word16 x[], /* i/o: signal to scale Qx */
const Word16 lg, /* i : size of x[] Q0 */
@@ -254,15 +258,16 @@ void scale_sig(
const Word16 exp0 /* i : exponent: x = round(x << exp) Qx ?exp */
);
-// tools.c
-Word32 sum2_fx( /* o : sum of all squared vector elements Q(2x+1)*/
- const Word16 *vec, /* i : i vector Qx*/
- const Word16 lvec /* i : length of i vector */
+/* o : sum of all squared vector elements Q(2x+1)*/
+Word32 sum2_fx(
+ const Word16 *vec, /* i : i vector Qx*/
+ const Word16 lvec /* i : length of i vector */
);
-Word64 sum2_fx_no_sat( /* o : sum of all squared vector elements Q(2x)*/
- const Word16 *vec, /* i : i vector Qx*/
- const Word16 lvec /* i : length of i vector */
+/* o : sum of all squared vector elements Q(2x)*/
+Word64 sum2_fx_no_sat(
+ const Word16 *vec, /* i : i vector Qx*/
+ const Word16 lvec /* i : length of i vector */
);
Word16 sign_fx(
@@ -272,11 +277,11 @@ Word16 sign_fx(
Word16 sign16_fx(
const Word16 x /* i : input value of x */
);
+
/*========================================================================================================/
mslvq_com_fx.c
/========================================================================================================*/
-// mslvq_com_fx
Word16 deindex_lvq_fx(
Word16 *index, /* i : index to be decoded, as an array of 3 short */
Word16 *x_lvq, /* o : decoded codevector Q(x2.56)*/
@@ -293,7 +298,9 @@ void deindex_lvq_SHB_fx(
const Word16 nbits,
const Word16 mode );
-Word32 encode_comb_fx( Word16 *cv, Word16 idx_lead );
+Word32 encode_comb_fx(
+ Word16 *cv,
+ Word16 idx_lead );
Word32 mslvq_ivas_16(
Word16 *pTmp_fx, /* i : M-dimensional input vector */
@@ -350,8 +357,8 @@ swb_bwe_com_fx.c
void calc_normal_length_fx(
const Word16 core, /* i : core */
- const Word16 *sp, /* i : i signal */
- const Word16 mode, /* i : i mode */
+ const Word16 *sp, /* i : i signal */
+ const Word16 mode, /* i : i mode */
const Word16 extl, /* i : extension layer */
Word16 *L_swb_norm, /* o : normalize length */
Word16 *prev_L_swb_norm, /*i/o : last normalize length */
@@ -359,17 +366,16 @@ void calc_normal_length_fx(
void calc_normal_length_fx_32(
const Word16 core, /* i : core : Q0 */
- const Word32 *sp, /* i : i signal : Q12 */
- const Word16 mode, /* i : i mode : Q0 */
+ const Word32 *sp, /* i : i signal : Q12 */
+ const Word16 mode, /* i : i mode : Q0 */
const Word16 extl, /* i : extension layer : Q0 */
Word16 *L_swb_norm, /* o : normalize length : Q0 */
Word16 *prev_L_swb_norm /*i/o : last normalize length : Q0 */
);
-
void hq_generic_decoding_fx(
const Word16 HQ_mode, /* i : HQ mode */
- Word32 *coeff_out1_fx, /* i/o: BWE i & temporary buffer */
+ Word32 *coeff_out1_fx, /* i/o: BWE i & temporary buffer */
const Word16 *hq_generic_fenv_fx, /* i : SWB frequency envelopes */
Word32 *coeff_out_fx, /* o : SWB signal in MDCT domain */
const Word16 hq_generic_offset, /* i : frequency offset for representing hq generic*/
@@ -386,14 +392,14 @@ Word16 WB_BWE_gain_pred_fx(
Word16 *voice_factors, /* i : voicing factors Q15 */
const Word16 pitch_buf[], /* i : pitch buffer Q6 */
Word32 last_core_brate, /* i : previous frame core bitrate */
- Word16 last_wb_bwe_ener, /* i : previous frame wb bwe signal energy */
+ Word16 last_wb_bwe_ener, /* i : previous frame wb bwe signal energy */
Word16 Q_syn,
Word16 last_extl_fx,
Word16 tilt_wb_fx );
/* o : Tilt in Q24 */
Word32 calc_tilt_bwe_fx(
- const Word16 *sp0, /* i : i signal */
+ const Word16 *sp0, /* i : i signal */
const Word16 exp, /* i : Exp of inp signal */
const Word16 N /* i : signal length */
);
@@ -402,7 +408,7 @@ void calc_norm_envelop_fx(
const Word16 SWB_signal[], /* i : SWB spectrum Q_syn*/
Word32 *envelope, /* o : normalized envelope Q_syn*/
const Word16 L_swb_norm, /* i : length of envelope Q0 */
- const Word16 SWB_flength, /* i : Length of i /output */
+ const Word16 SWB_flength, /* i : Length of i /output */
const Word16 st_offset /* i : offset */
);
@@ -410,7 +416,7 @@ void WB_BWE_decoding_fx(
const Word16 *core_dec_freq, /* i : Frequency domain core decoded signal */
Word16 *WB_fenv, /* i : WB frequency envelopes */
Word32 *WB_signal32, /* o : WB signal in MDCT domain */
- const Word16 WB_flength, /* i : Length of i /output */
+ const Word16 WB_flength, /* i : Length of i /output */
const Word16 mode, /* i : classification for WB signal */
const Word16 last_extl, /* i : extl. layer for last frame */
Word32 *prev_Energy, /* i/o: energy for last frame */
@@ -423,14 +429,14 @@ void WB_BWE_decoding_fx(
Word16 *prev_flag, /* i/o: attenu flag of last frame */
Word16 prev_coder_type, /* i : coding type of last frame */
Word16 Q_syn,
- Word16 *Q_syn_hb /*o : Q value of WB_signal_32 */
+ Word16 *Q_syn_hb /* o : Q value of WB_signal_32 */
);
void SWB_BWE_decoding_fx(
const Word16 *core_dec_freq, /* i : Frequency domain core decoded signal */
Word16 *SWB_fenv, /* i/o: SWB frequency envelopes */
Word32 *SWB_signal, /* o : SWB signal in MDCT domain */
- const Word16 SWB_flength, /* i : Length of i /output */
+ const Word16 SWB_flength, /* i : Length of i /output */
const Word16 mode, /* i : classification for SWB signal */
Word16 *frica_flag, /* o : fricative signal flag */
Word16 *prev_Energy, /* i/o: energy for last frame */
@@ -463,13 +469,13 @@ void calc_norm_envelop_fx_32(
const Word32 SWB_signal_fx[], /* i : SWB spectrum : Q12 */
Word32 *envelope_fx, /* o : normalized envelope : Q16 */
const Word16 L_swb_norm, /* i : length of envelope : Q0 */
- const Word16 SWB_flength, /* i : Length of i /output : Q0 */
+ const Word16 SWB_flength, /* i : Length of i /output : Q0 */
const Word16 st_offset /* i : offset : Q0 */
);
void hq_generic_decoding_fx(
const Word16 HQ_mode, /* i : HQ mode */
- Word32 *coeff_out1_fx, /* i/o: BWE i & temporary buffer */
+ Word32 *coeff_out1_fx, /* i/o: BWE i & temporary buffer */
const Word16 *hq_generic_fenv_fx, /* i : SWB frequency envelopes */
Word32 *coeff_out_fx, /* o : SWB signal in MDCT domain */
const Word16 hq_generic_offset, /* i : frequency offset for representing hq generic*/
@@ -479,7 +485,7 @@ void hq_generic_decoding_fx(
void hq_generic_decoding_ivas_fx(
const Word16 HQ_mode, /* i : HQ mode */
- Word32 *coeff_out1_fx, /* i/o: BWE i & temporary buffer */
+ Word32 *coeff_out1_fx, /* i/o: BWE i & temporary buffer */
const Word16 *hq_generic_fenv_fx, /* i : SWB frequency envelopes */
Word32 *coeff_out_fx, /* o : SWB signal in MDCT domain */
const Word16 hq_generic_offset, /* i : frequency offset for representing hq generic*/
@@ -502,7 +508,7 @@ lognorm_fx.c
void logqnorm_fx(
const Word32 *x, /* i : coefficient vector Qx */
- const Word16 qx, /* i : Q value of i */
+ const Word16 qx, /* i : Q value of i */
Word16 *k, /* o : index Q0 */
const Word16 L, /* i : codebook length Q0 */
const Word16 N, /* i : sub-vector size Q0 */
@@ -521,7 +527,7 @@ void logqnorm_2_fx(
void calc_norm_fx(
const Word32 *L_x, /* i : Input vector. Qx */
- const Word16 qx, /* i : Q value of i */
+ const Word16 qx, /* i : Q value of i */
Word16 *norm, /* o : Quantization indices for norms Q0 */
Word16 *normlg, /* o : Quantized norms in log2 Q0 */
const Word16 start_band, /* i : Indice of band to start coding Q0 */
@@ -529,15 +535,17 @@ void calc_norm_fx(
const Word16 *band_len, /* i : Length of bands Q0 */
const Word16 *band_start /* i : Start of bands Q0 */
);
+
void calc_norm_ivas_fx(
- const Word32 *x_fx, /* i : Input vector.(Qin) */
- Word16 *norm, /* o : Quantization indices for norms Q0 */
- Word16 *normlg, /* o : Quantized norms in log2 Q0 */
+ const Word32 *x_fx, /* i : Input vector.(Qin) */
+ Word16 *norm, /* o : Quantization indices for norms Q0 */
+ Word16 *normlg, /* o : Quantized norms in log2 Q0 */
const Word16 start_band, /* i : Indice of band to start coding */
const Word16 num_bands, /* i : Number of bands */
const Word16 *band_len, /* i : Length of bands */
const Word16 *band_start /* i : Start of bands */
);
+
void logqnorm_ivas_fx(
const Word32 *x_fx, /* i : coefficient vector Qq*/
const Word16 q, /* i : q of coefficient vector */
@@ -546,15 +554,16 @@ void logqnorm_ivas_fx(
const Word16 N, /* i : sub-vector size */
const Word32 *thre_fxn /* i : quantization thresholds Q14*/
);
+
/*========================================================================================================/
hq_tools_fx.c
/========================================================================================================*/
void hq_swb_harmonic_calc_norm_envelop_fx(
- const Word32 *L_SWB_signal, /* i : i signal Q=12*/
+ const Word32 *L_SWB_signal, /* i : i signal Q=12*/
Word32 *L_envelope, /* o : output envelope Q=12*/
const Word16 L_swb_norm, /* i : length of normaliztion */
- const Word16 SWB_flength /* i : length of i signal */
+ const Word16 SWB_flength /* i : length of i signal */
);
/* o : Number of coefficients in nf codebook */
@@ -585,7 +594,7 @@ Word16 find_last_band_fx(
void apply_noisefill_HQ_fx(
const Word16 *R, /* i : bit allocation */
- const Word16 length, /* i : i frame length */
+ const Word16 length, /* i : i frame length */
const Word16 flag_32K_env_ho, /* i : envelope stability hangover flag*/
const Word32 L_core_brate, /* i : core bit rate */
const Word16 last_sfm, /* i : last coded subband */
@@ -637,16 +646,16 @@ void harm_bwe_fx(
Word16 *norm, /* i/o: quantization indices for norms */
Word16 *noise_level, /* i/o: noise levels for harmonic modes */
Word16 *prev_noise_level, /* i/o: noise factor in previous frame */
- Word16 *bwe_seed, /* i/o: random seed for generating BWE i */
+ Word16 *bwe_seed, /* i/o: random seed for generating BWE i */
Word32 *coeff_out, /* o : coded/noisefilled spectrum */
- const Word16 element_mode /* i : IVAS element mode */
+ const Word16 element_mode /* i : IVAS element mode */
);
void hq_fold_bwe_fx(
const Word16 last_sfm, /* i : last coded subband Q0 */
const Word16 *sfm_end, /* i : Subband end coefficient Q0 */
const Word16 num_sfm, /* i : Number of subbands Q0 */
- Word16 *coeff /* i/o: coded/noisefilled normalized spectrum Q12 */
+ Word16 *coeff /* i/o: coded/noisefilled normalized spectrum Q12*/
);
void apply_nf_gain_fx(
@@ -655,7 +664,7 @@ void apply_nf_gain_fx(
const Word16 *R, /* i : bit allocation Q0 */
const Word16 *sfm_start, /* i : Subband start coefficient Q0 */
const Word16 *sfm_end, /* i : Subband end coefficient Q0 */
- Word16 *coeff /* i/o: coded/noisefilled normalized spectrum Q12 */
+ Word16 *coeff /* i/o: coded/noisefilled normalized spectrum Q12*/
);
void hvq_bwe_fx(
@@ -674,7 +683,7 @@ void hvq_bwe_fx(
Word16 *norm, /* i/o: quantization indices for norms Q0 */
Word16 *noise_level, /* i/o: noise levels for harmonic modes Q15 */
Word16 *prev_noise_level, /* i/o: noise factor in previous frame Q15 */
- Word16 *bwe_seed, /* i/o: random seed for generating BWE i Q0 */
+ Word16 *bwe_seed, /* i/o: random seed for generating BWE i Q0 */
Word32 *L_coeff_out, /* o : coded/noisefilled spectrum Qout*/
const Word16 qin,
const Word16 qout );
@@ -696,7 +705,7 @@ void noise_mix_fx(
const Word16 istart, /* i : start coefficient Q0 */
const Word16 iend, /* i : end coefficient Q0 */
const Word16 noise_level, /* i : noise_level Q0 */
- Word32 *L_coeff_out, /* o : noisemixed spectrum Qout */
+ Word32 *L_coeff_out, /* o : noisemixed spectrum Qout*/
const Word16 qin,
const Word16 qout );
@@ -705,8 +714,8 @@ void hq_generic_fine_fx(
const Word16 last_sfm, /* i : Last coded band */
const Word16 *sfm_start, /* i : Subband start coefficient */
const Word16 *sfm_end, /* i : Subband end coefficient */
- Word16 *bwe_seed, /* i/o: random seed for generating BWE i */
- Word16 *coeff_out1 /* o : HQ Generic i */
+ Word16 *bwe_seed, /* i/o: random seed for generating BWE i */
+ Word16 *coeff_out1 /* o : HQ Generic i */
);
void map_hq_generic_fenv_norm_fx(
@@ -752,7 +761,7 @@ Word16 calc_nor_delta_hf_ivas_fx(
void hq_bwe_fx(
const Word16 HQ_mode, /* i : HQ mode */
- Word32 *coeff_out1, /* i/o: BWE i & temporary buffer */
+ Word32 *coeff_out1, /* i/o: BWE i & temporary buffer */
const Word16 *hq_generic_fenv, /* i : SWB frequency envelopes */
Word32 *coeff_out, /* o : SWB signal in MDCT domain */
const Word16 hq_generic_offset, /* i : frequency offset for representing hq generic bwe*/
@@ -765,7 +774,7 @@ void hq_bwe_fx(
void hq_bwe_ivas_fx(
const Word16 HQ_mode, /* i : HQ mode */
- Word32 *coeff_out1, /* i/o: BWE i & temporary buffer */
+ Word32 *coeff_out1, /* i/o: BWE i & temporary buffer */
const Word16 *hq_generic_fenv, /* i : SWB frequency envelopes */
Word32 *coeff_out, /* o : SWB signal in MDCT domain */
const Word16 hq_generic_offset, /* i : frequency offset for representing hq generic bwe*/
@@ -861,12 +870,13 @@ Word32 sub_lsp2lsf_fx(
void E_LPC_lsp_lsf_conversion(
const Word16 lsp[], /* i : lsp[m] (range: -1<=val<1) */
- Word16 lsf[], /* output : lsf[m] normalized (range: 0<=val<=6400) */
- const Word16 m /* i : LPC order */
+ Word16 lsf[], /* o : lsf[m] normalized (range: 0<=val<=6400) */
+ const Word16 m /* i : LPC order */
);
+
void E_LPC_lsf_lsp_conversion(
const Word16 lsf[], /* i : lsf[m] normalized (range: 0<=val<=6400) */
- Word16 lsp[], /* o : lsp[m] (range: -1<=val<1) */
+ Word16 lsp[], /* o : lsp[m] (range: -1<=val<1) */
const Word16 m /* i : LPC order */
);
@@ -877,7 +887,7 @@ void E_LPC_f_lsp_a_conversion(
void E_LPC_a_isp_conversion(
const Word16 *a, /* i : LP filter coefficients */
- Word16 *isp, /* o : Line spectral pairs (in the cosine domain) */
+ Word16 *isp, /* o : Line spectral pairs (in the cosine domain) */
const Word16 *old_isp, /* i : LSP vector from past frame */
const Word16 m /* i : LPC order */
);
@@ -899,7 +909,7 @@ void E_LPC_f_isp_a_conversion(
void E_LPC_a_lsp_conversion(
const Word16 *a, /* i : LP filter coefficients */
- Word16 *lsp, /* o : Line spectral pairs (in the cosine domain) */
+ Word16 *lsp, /* o : Line spectral pairs (in the cosine domain) */
const Word16 *old_lsp, /* i : LSP vector from past frame */
const Word16 m /* i : LPC order */
);
@@ -923,10 +933,10 @@ void lsp2lpc_fx(
Word16 order );
void E_LPC_a_lsp_conversion(
- const Word16 *a, /* i : LP filter coefficients */
+ const Word16 *a, /* i : LP filter coefficients */
Word16 *lsp, /* o : Line spectral pairs (in the cosine domain) */
- const Word16 *old_lsp, /* i : LSP vector from past frame */
- const Word16 m /* i : LPC order */
+ const Word16 *old_lsp, /* i : LSP vector from past frame */
+ const Word16 m /* i : LPC order */
);
void v_sort(
@@ -1055,9 +1065,9 @@ void lsf2lsp_fx(
void lsp2lsf_fx(
const Word16 lsp[], /* i : lsp[m] (range: -1<=val<1) Q15*/
- Word16 lsf[], /* o : lsf[m] normalized (range: 0.0<=val<=0.5) Q(x2.56)*/
+ Word16 lsf[], /* o : lsf[m] normalized (range: 0.0<=val<=0.5) Q(x2.56)*/
const Word16 m, /* i : LPC order Q0*/
- const Word32 int_fs /* i : internal sampling frequency */
+ const Word32 int_fs /* i : internal sampling frequency */
);
void isf2lsf_fx(
@@ -1146,8 +1156,8 @@ Word16 vq_dec_lvq_fx(
Word16 indices[], /* i : Indices */
Word16 stages, /* i : Number of stages */
Word16 N, /* i : Vector dimension */
- Word16 mode, /* (i): mode_lvq, or mode_lvq_p */
- Word16 no_bits, /* (i): no. bits for lattice */
+ Word16 mode, /* i : mode_lvq, or mode_lvq_p */
+ Word16 no_bits, /* i : no. bits for lattice */
Word32 *p_offset_scale1,
Word32 *p_offset_scale2,
Word32 *p_offset_scale1_p,
@@ -1161,10 +1171,14 @@ Word16 vq_dec_lvq_ivas_fx(
Word16 indices[], /* i : Indices */
Word16 stages, /* i : Number of stages */
Word16 N, /* i : Vector dimension */
- Word16 mode, /* (i): mode_lvq, or mode_lvq_p */
- Word16 no_bits /* (i): no. bits for lattice */
+ Word16 mode, /* i : mode_lvq, or mode_lvq_p */
+ Word16 no_bits /* i : no. bits for lattice */
);
-void a2rc_fx( const Word16 *a, Word16 *refl, Word16 lpcorder );
+
+void a2rc_fx(
+ const Word16 *a,
+ Word16 *refl,
+ Word16 lpcorder );
Word16 vq_dec_lvq_ivas_fx(
Word16 sf_flag, /* i : safety net flag */
@@ -1172,8 +1186,8 @@ Word16 vq_dec_lvq_ivas_fx(
Word16 indices[], /* i : Indices */
Word16 stages, /* i : Number of stages */
Word16 N, /* i : Vector dimension */
- Word16 mode, /* (i): mode_lvq, or mode_lvq_p */
- Word16 no_bits /* (i): no. bits for lattice */
+ Word16 mode, /* i : mode_lvq, or mode_lvq_p */
+ Word16 no_bits /* i : no. bits for lattice */
);
void a2rc_fx(
@@ -1366,13 +1380,13 @@ void get_next_indice_tmp_fx(
/* o : value of the indice */
UWord16 get_indice_1_fx(
- Decoder_State *st_fx, /* i/o: decoder state structure */
+ Decoder_State *st_fx, /* i/o: decoder state structure */
Word16 pos /* i : absolute position in the bitstream */
);
void reset_indices_enc_fx(
BSTR_ENC_HANDLE hBstr, /* i/o: encoder state structure */
- const Word16 max_num_indices /* i : max number of indices */
+ const Word16 max_num_indices /* i : max number of indices */
);
Word16 BRATE2IDX_fx(
@@ -1437,7 +1451,7 @@ scale_mem_fx.c
Word16 Rescale_exc(
Word16 dct_post_old_exc_fx[], /* i/o: Music post processing memory Q_exc*/
- Word16 exc[], /* i/o: excitation to rescale Q_exc */
+ Word16 exc[], /* i/o: excitation to rescale Q_exc*/
Word16 bwe_exc[], /* Q_exc */
Word16 *last_exc_dct_in, /* Q_exc */
Word16 lg, /* i : frame size */
@@ -1445,12 +1459,12 @@ Word16 Rescale_exc(
Word32 L_gain_code, /* i : decoded codebook gain Q16 */
Word16 *sQ_exc, /* i/o: Excitation scaling factor */
Word16 *sQsubfr, /* i/o: Past excitation scaling factors */
- Word16 exc2[], /* o : local excitation vector Q_exc */
+ Word16 exc2[], /* o : local excitation vector Q_exc */
Word16 i_subfr, /* i : subframe number */
const Word16 coder_type );
void Rescale_mem(
- const Word16 Q_exc, /* i : current excitation scaling (>=0) */
+ const Word16 Q_exc, /* i : current excitation scaling (>=0) */
Word16 *prev_Q_syn, /* i/o : scaling factor of previous frame */
Word16 *Q_syn, /* i/o : scaling factor of frame */
Word16 *mem_syn2, /* i/o : modified synthesis memory Qexp_scale */
@@ -1469,7 +1483,7 @@ void Rescale_mem(
void scale_sig32(
Word32 x[], /* i/o: signal to scale Qx */
const Word16 lg, /* i : size of x[] Q0 */
- const Word16 exp0 /* i : exponent: x = round(x << exp) Qx xx exp */
+ const Word16 exp0 /* i : exponent: x = round(x << exp) Qx xx exp */
);
void Scale_sig64(
@@ -1483,6 +1497,7 @@ void scale_sig32_r(
const Word16 lg, /* i : size of x[] Q0 */
const Word16 exp0 /* i : exponent: x = round(x << exp) Qx exp */
);
+
Word16 rescale_mem(
const Word16 *Q_exc, /* i : current excitation scaling (>=0) */
Word16 *prev_Q_syn, /* i/o : scaling factor of previous frame */
@@ -1551,9 +1566,10 @@ Word32 get_gain2(
const Word16 y[], /*Q13/o->Q13 */
- Word16 Mbands_gn, /* i : number of bands */
- const Word16 ReUseGain, /* i : Reuse the gain in Ener_per_bd_yQ */
+ Word16 Mbands_gn, /* i : number of bands */
+ const Word16 ReUseGain, /* i : Reuse the gain in Ener_per_bd_yQ */
Word16 Qexc_diff,
Word16 Q_exc );
@@ -1834,8 +1848,8 @@ void Comp_and_apply_gain_ivas_fx(
Word16 exc_diffQ[], /* i/o: Quantized excitation */
Word16 Ener_per_bd_iQ[], /* i : Target ener per band Q13 */
Word16 Ener_per_bd_yQ[], /* i/o : Ener per band for norm vector i->Q13/o->Q13 */
- Word16 Mbands_gn, /* i : number of bands */
- const Word16 ReUseGain, /* i : Reuse the gain in Ener_per_bd_yQ */
+ Word16 Mbands_gn, /* i : number of bands */
+ const Word16 ReUseGain, /* i : Reuse the gain in Ener_per_bd_yQ */
Word16 Qexc_diff,
Word16 *Q_exc );
@@ -1907,7 +1921,7 @@ void GetPredictedSignal_fx(
);
void Get20Log10Spec_fx(
- const Word32 *L_inBuf, /* i : i Q_inBuf */
+ const Word32 *L_inBuf, /* i : i Q_inBuf */
Word16 *outBuf_fx, /* o : output Q7 */
const Word16 fLen, /* i : loop length */
const Word16 Q_inBuf /* i : Qvalue of L_inBuf */
@@ -1915,7 +1929,7 @@ void Get20Log10Spec_fx(
void GetSynthesizedSpecThinOut_fx(
const Word16 *predBuf_fx, /* i : Qss: prediction buffer (i.e., lowband) */
- const Word16 Qss, /* i : Q value of i vector */
+ const Word16 Qss, /* i : Q value of i vector */
Word32 *L_outBuf, /* o : QsL: synthesized spectrum */
Word16 QsL, /* o : Q value of synthesized spectrum */
const Word16 nBands_fx, /* i : Q0: number of subbands calculated */
@@ -2094,8 +2108,8 @@ void ton_ene_est_fx(
);
void norm_vec_32_16_scale_fx(
- Word32 *L_vec_in, /* i : i vector */
- Word16 Qin, /* i : Q value for i vector */
+ Word32 *L_vec_in, /* i : i vector */
+ Word16 Qin, /* i : Q value for i vector */
Word16 length_fx, /* i :vector size */
Word16 *vec_out_fx, /* o : output vectror */
Word16 *Qout, /* o : Q value for output vectro */
@@ -2107,7 +2121,7 @@ void updat_prev_frm_fx(
Word32 L_t_audio[], /* o: core coder buffer */
Word32 L_bwe_br, /* i: core bitrate */
Word16 length_fx, /* i: frame length coded bw */
- const Word16 inner_frame_fx, /* i: i frame length */
+ const Word16 inner_frame_fx, /* i: i frame length */
Word16 bands_fx, /* i: sub band resolution */
Word16 bwidth_fx, /* i: NB/WB/SWB indicator */
const Word16 is_transient_fx, /* i: signal class information */
@@ -2171,8 +2185,8 @@ Word16 har_est_fx(
);
void FindNBiggest2_simple_fx_har(
- const Word32 *L_inBuf, /* i : i buffer (searched) */
- const Word16 Qabs_in, /* i : Q value of i buffer */
+ const Word32 *L_inBuf, /* i : i buffer (searched) */
+ const Word16 Qabs_in, /* i : Q value of i buffer */
GainItem_fx *pk_sf_fx, /* o : N biggest components found */
const Word16 nIdx_fx, /* i : search length */
Word16 *n_fx, /* i : number of components searched (N biggest) */
@@ -2417,7 +2431,7 @@ Word32 syn_kern_16(
void syn_filt_s_lc_fx(
const Word16 shift, /* i : scaling to apply Q0 */
const Word16 a[], /* i : LP filter coefficients Q12 */
- const Word16 x[], /* i : i signal Qx */
+ const Word16 x[], /* i : i signal Qx */
Word16 y[], /* o : output signal Qx-s */
const Word16 lg /* i : size of filtering Q0 */
);
@@ -2426,7 +2440,7 @@ void Syn_filt_s(
const Word16 shift, /* i : scaling to apply Q0 */
const Word16 a[], /* i : LP filter coefficients Q12 */
const Word16 m, /* i : order of LP filter Q0 */
- const Word16 x[], /* i : i signal Qx */
+ const Word16 x[], /* i : i signal Qx */
Word16 y[], /* o : output signal Qx-s */
const Word16 lg, /* i : size of filtering Q0 */
Word16 mem[], /* i/o: memory associated with this filtering. Qx-s */
@@ -2621,8 +2635,8 @@ Word16 modify_Fs_ivas_fx(
/* o : length of output Q0 */
Word16 modify_Fs_fx(
const Word16 sigIn_fx[], /* i : signal to decimate Q0 */
- Word16 lg, /* i : length of i Q0 */
- const Word32 fin, /* i : frequency of i Q0 */
+ Word16 lg, /* i : length of i Q0 */
+ const Word32 fin, /* i : frequency of i Q0 */
Word16 sigOut_fx[], /* o : decimated signal Q0 */
const Word32 fout, /* i : frequency of output Q0 */
Word16 mem_fx[], /* i/o: filter memory Q0 */
@@ -2773,6 +2787,7 @@ Word16 E_UTIL_f_preemph3(
Word16 *mem, /* Qx */
Word16 bits /* Q0 */
);
+
Word16 E_UTIL_f_preemph3_ivas_fx(
Word16 *signal, /* Qx */
const Word16 mu, /* Q15 */
@@ -2914,7 +2929,6 @@ void save_old_syn_fx(
Word16 *mem_deemph /* i/o: deemphasis filter memory */
);
-// swb_tbe_com_fx.c
void find_td_envelope_fx(
const Word16 inp[], /* i : input signal Qx */
const Word16 len, /* i : length of the input signal */
@@ -3308,18 +3322,16 @@ void prep_tbe_exc_fx(
Word16 bwe_exc_fx[], /* i/o: excitation for TBE Q_exc*/
const Word16 gain_preQ_fx, /* i : prequantizer excitation gain */
const Word16 code_preQ_fx[], /* i : prequantizer excitation */
-#ifdef FIX_2010_PREP_TBE_EXC
- const Word16 Q_code_preQ, /* i : Q, prequantizer excitation */
-#endif
- const Word16 Q_exc, /* i : Excitation, bwe_exc Q-factor */
- const Word16 T0, /* i : integer pitch variables Q0 */
- const Word16 T0_frac, /* i : Fractional pitch variables Q0*/
- const Word16 coder_type, /* i : coding type */
- const Word32 core_brate, /* i : core bitrate */
- const Word16 element_mode, /* i : element mode */
- const Word16 idchan, /* i : channel ID */
- const Word16 flag_TD_BWE, /* i : flag indicating whether hTD_BWE exists */
- const Word16 tdm_LRTD_flag /* i : LRTD stereo mode flag */
+ const Word16 Q_code_preQ, /* i : Q, prequantizer excitation */
+ const Word16 Q_exc, /* i : Excitation, bwe_exc Q-factor */
+ const Word16 T0, /* i : integer pitch variables Q0 */
+ const Word16 T0_frac, /* i : Fractional pitch variables Q0*/
+ const Word16 coder_type, /* i : coding type */
+ const Word32 core_brate, /* i : core bitrate */
+ const Word16 element_mode, /* i : element mode */
+ const Word16 idchan, /* i : channel ID */
+ const Word16 flag_TD_BWE, /* i : flag indicating whether hTD_BWE exists */
+ const Word16 tdm_LRTD_flag /* i : LRTD stereo mode flag */
);
/*! r: Formant filter strength [0,1] */
@@ -3625,9 +3637,7 @@ Word16 ppp_extract_pitch_period_fx(
Word16 *out, /* o : output residual */
Word16 l, /* i : lag */
Word16 *out_of_bound, /* o : out of bound flag */
- Word16 Qres
-
-);
+ Word16 Qres );
void DTFS_peaktoaverage_fx(
DTFS_STRUCTURE X_fx, /* i : DTFS */
@@ -3690,14 +3700,6 @@ Word32 DTFS_getEngy_band_wb_fx(
Word16 lband,
Word16 hband );
-// tns_base.c
-/** Init TNS configuration.
- * Fills STnsConfig structure with sensible content.
- * @param nSampleRate Sampling rate of the i .
- * @param nFrameLength Frame length.
- * @param pTnsConfig TNS configuration to be initialized.
- * @return 0 on success, otherwise 1.
- */
void InitTnsConfiguration(
const Word16 bwidth,
const Word16 frameLength,
@@ -3716,19 +3718,6 @@ void InitTnsConfiguration_ivas_fx(
const Word16 element_mode,
const Word16 is_mct );
-/** Modify spectrum using TNS filter.
- * Modifies spectrum unsing TNS filter defined by pTnsData.
- * If fIsAnalyses is true considers spectrum to be
- * an i of encoder and returns residum.
- * If fIsAnalyses is false considers spectrum to be
- * a residum from decoder and returns output spectrum.
- * @param pTnsConfig TNS configuration.
- * @param pTnsData TNS data describing filters.
- * @param spectrum Input/output spectrum.
- * @param fIsAnalysis Defines if TNS filter is applied
- * in encoder (TRUE) or in decoder (FALSE).
- * @return 0 on success, otherwise 1.
- */
void ApplyTnsFilter(
STnsConfig const *pTnsConfig,
STnsData const *pTnsData,
@@ -3824,17 +3813,8 @@ void *SetTnsEnabledSingleFilter( void *p, const Word16 index, const Word16 value
void const *GetTnsOnWhite( void const *p, const Word16 index, Word16 *pValue );
void *SetTnsOnWhite( void *p, const Word16 index, const Word16 value );
-/*tns_base.h*/
-/** Reset TNS data.
- * Resets TNS data to the initial state.
- * @param pTnsData pointer to a TNS data to be reset.
- */
void ResetTnsData( STnsData *pTnsData );
-/** Clear TNS filter data.
- * Resets TNS filter order and all coefficients to 0.
- * @param pTnsFilter pointer to a TNS filter to be cleared.
- */
void ClearTnsFilterCoefficients( STnsFilter *pTnsFilter );
/*========================================================================================================/
@@ -4263,7 +4243,6 @@ Word16 getTcxLpcShapedAri(
const Word16 element_mode /* i : IVAS element mode */
);
-// tcx_mdct_window.c
void mdct_window_sine(
PWord16 *window, /* Qx */
Word16 n /* Q0 */
@@ -4288,7 +4267,7 @@ Word16 getInvFrameLen(
const Word16 L_frame ); /* returns 1/L_frame in Q21 format */
void tcx_get_windows(
- TCX_CONFIG_HANDLE hTcxCfg, /* i : TCX configuration */
+ TCX_CONFIG_HANDLE hTcxCfg, /* i : TCX configuration */
const Word16 left_mode, /* i: overlap mode of left window half */
const Word16 right_mode, /* i: overlap mode of right window half */
Word16 *left_overlap, /* o: left overlap length */
@@ -4305,7 +4284,7 @@ void WindowSignal(
Word16 right_overlap_mode, /* i : overlap mode of right window half */
Word16 *left_overlap_length, /* o : TCX window left overlap length */
Word16 *right_overlap_length, /* o : TCX window right overlap length */
- const Word16 in[], /* i : i signal */
+ const Word16 in[], /* i : i signal */
Word16 *L_frame, /* i/o: frame length */
Word16 out[], /* o : output windowed signal */
const Word16 truncate_aldo, /* i : nonzero to truncate long ALDO slope */
@@ -4452,13 +4431,9 @@ void InitTnsConfigs_ivas_fx(
const Word16 element_mode,
const Word16 is_mct );
-#define IVAS_CODE_TCX_UTIL
-#ifdef IVAS_CODE_TCX_UTIL
void SetAllowTnsOnWhite(
STnsConfig tnsConfig[2][2],
const Word8 allowTnsOnWhite );
-#endif
-#undef IVAS_CODE_TCX_UTIL
void SetTnsConfig(
TCX_CONFIG_HANDLE hTcxCfg, /* i : configuration of TCX */
@@ -4484,7 +4459,6 @@ void init_TCX_config(
Word16 L_frameTCX,
Word16 fscaleFB );
-// tec_com.c
void resetTecDec_Fx(
TEC_DEC_HANDLE hTecDec );
@@ -4543,7 +4517,6 @@ void set_TEC_TFA_code_fx(
Word16 *tec_flag,
Word16 *tfa_flag );
-// tcx_mdct_fx.c
void TCX_MDCT(
const Word16 *x, /* Qx */
Word32 *y, /* exp(y_e) */
@@ -4593,8 +4566,6 @@ void TCX_MDXT_Inverse_fx(
const UWord16 kernel_type /* Q0 */
);
-// edct_fx.c
-#define EDCT_FACTOR_SCALE 2
void edct_fx(
const Word32 *x, /* i : i signal Qq */
Word32 *y, /* o : output transform Qq */
@@ -4638,12 +4609,10 @@ void edxt_fx(
const UWord16 synthesis /* i : nonzero for inverse */
);
-// fft_evs.c
void fft16( Word32 *re, Word32 *im, Word16 s, Word16 bScale );
void BASOP_cfft( cmplx *pComplexBuf, Word16 sizeOfFft, Word16 *scale, Word32 workBuffer[2 * BASOP_CFFT_MAX_LENGTH] );
void BASOP_rfft( Word32 *x, Word16 sizeOfFft, Word16 *scale, Word16 isign );
-// fft_fx_evs.c
void DoRTFTn_fx(
Word32 *x, /* i/o : real part of i and output data */
Word32 *y, /* i/o : imaginary part of i and output data */
@@ -4722,7 +4691,7 @@ void DoRTFTn_fx_ivas(
);
-Word16 find_guarded_bits_fx( Word32 n );
+Word16 find_guarded_bits_fx( const Word32 n );
Word16 L_norm_arr( const Word32 *arr, Word16 size );
Word16 norm_arr( Word16 *arr, Word16 size );
@@ -4750,6 +4719,7 @@ void edct2_fx(
Word16 *q,
const Word16 *ip,
const Word16 *w );
+
void DoRTFT160_16fx(
Word16 x[], /* i/o : real part of i and output data */
Word16 y[] /* i/o : imaginary part of i and output data */
@@ -4759,12 +4729,21 @@ void DoRTFT320_16fx(
Word16 *x, /* i/o : real part of i and output data */
Word16 *y /* i/o : imaginary part of i and output data */
);
+
void DoRTFT128_16fx(
Word16 *x, /* i/o : real part of i and output data Q(Qx+Q_edct)*/
Word16 *y /* i/o : imaginary part of i and output data Q(Qx+Q_edct)*/
);
-void fft3_fx( const Word16[], Word16[], const Word16 );
-void ifft3_fx( const Word16[], Word16[], const Word16 );
+
+void fft3_fx(
+ const Word16[],
+ Word16[],
+ const Word16 );
+
+void ifft3_fx(
+ const Word16[],
+ Word16[],
+ const Word16 );
void fft3_fx_ivas(
const Word32 X[],
@@ -4775,7 +4754,6 @@ void ifft3_fx_ivas(
Word32 Y[],
const Word16 n );
-// fft_rel_fx.c
void r_fft_fx_lc(
const Word16 *phs_tbl, /* i : Table of phase */
const Word16 SIZE, /* i : Size of the FFT */
@@ -4786,7 +4764,6 @@ void r_fft_fx_lc(
const Word16 isign /* i : 1=fft, otherwize it's ifft */
);
-// cldfb_evs
void cldfbAnalysis_fx(
HANDLE_CLDFB_FILTER_BANK anaCldfb, /*!< Handle of Cldfb Analysis Bank */
Word32 **cldfbReal, /*!< Pointer to real subband slots */
@@ -4959,7 +4936,6 @@ void E_UTIL_voice_factor(
Word16 shift /* i : scaling to get 12bit */
);
-// window_ola_fx.c
void sinq_fx(
const Word16 tmp, /* i : sinus factor cos(tmp*i+phi) Q15*/
const Word16 phi, /* i : sinus phase cos(tmp*i+phi) Q15*/
@@ -5057,10 +5033,10 @@ void bands_and_bit_alloc_fx(
Word16 *out_bits_per_bands, /* i/o: Number of bit allowed per allowed subband Q3 */
Word16 *nb_subbands, /* o : Number of subband allowed */
const Word16 *exc_diff, /* i : Difference signal to quantize (encoder side only) */
- Word16 *concat_in, /* o : Concatened PVQ's i vector (encoder side only) */
+ Word16 *concat_in, /* o : Concatened PVQ's i vector (encoder side only) */
Word16 *pvq_len, /* o : Number of bin covered with the PVQ */
const Word16 coder_type, /* i : coding type */
- const Word16 bwidth, /* i : i signal bandwidth */
+ const Word16 bwidth, /* i : i signal bandwidth */
const Word16 GSC_noisy_speech, /* i : GSC noisy speech flag */
const Word16 L_frame, /* i : frame length */
const Word16 element_mode, /* i : element mode */
@@ -5369,6 +5345,7 @@ void scalebands(
const Word16 nband, /* i : Number of bands */
Word32 *bandpow, /* o : Power for each band */
const Word16 flag_fft_en );
+
void scalebands_fx(
const Word32 *partpow, /* i : Power for each partition */
Word16 *part, /* i : Partition upper boundaries (band indices starting from 0) */
@@ -5967,7 +5944,6 @@ void tcx_arith_render_envelope(
Word32 env[] /* o: shaped signal envelope Q16*/
);
-
/* returns innovation gain Q16 */
Word32 calc_gain_inov(
const Word16 *code, /* i : algebraic excitation Q9 */
@@ -5986,11 +5962,11 @@ void ResetSHBbuffer_Dec_fx(
);
void wb_tbe_dec_fx(
- Decoder_State *st_fx, /* i/o: decoder state structure */
- const Word16 coder_type, /* i : coding type */
- Word32 *bwe_exc_extended, /* i : bandwidth extended exciatation */
+ Decoder_State *st_fx, /* i/o: decoder state structure */
+ const Word16 coder_type, /* i : coding type */
+ Word32 *bwe_exc_extended, /* i : bandwidth extended exciatation */
const Word16 Q_exc,
- const Word16 voice_factors[], /* i : voicing factors */
+ const Word16 voice_factors[], /* i : voicing factors */
Word16 *synth, /* i/o: ACELP core synthesis/final synthesis */
Word16 *Q_synth );
@@ -6050,7 +6026,7 @@ void GenTransition_fx(
);
void GenTransition_fx32(
- TD_BWE_DEC_HANDLE hBWE_TD, /* i/o: TD BWE data handle */
+ TD_BWE_DEC_HANDLE hBWE_TD, /* i/o: TD BWE data handle */
Word32 *outputHB_fx, /* o : synthesized HB transitions signal : Q11 */
const Word32 output_Fs, /* i : output sampling rate : Q0 */
const Word16 L_frame, /* i : ACELP frame length : Q0 */
@@ -6104,28 +6080,28 @@ Word16 minimum_l(
Word32 *min_val /* o : minimum value in the input vector */
);
-void v_multc_fixed(
+void v_multc_fx(
const Word32 x[], /* i : Input vector */
const Word32 c, /* i : Constant */
Word32 y[], /* o : Output vector that contains c*x */
const Word16 N /* i : Vector length */
);
-void v_multc_fixed_16(
+void v_multc_fx_16(
const Word32 x[], /* i : Input vector */
const Word16 c, /* i : Constant */
Word32 y[], /* o : Output vector that contains c*x */
const Word16 N /* i : Vector length */
);
-void v_multc_fixed_16_16(
+void v_multc_fx_16_16(
const Word16 x[], /* i : Input vector */
const Word16 c, /* i : Constant */
Word16 y[], /* o : Output vector that contains c*x */
const Word16 N /* i : Vector length */
);
-void v_add_fixed(
+void v_add_fx_hdrm(
const Word32 x1[], /* i : Input vector 1 */
const Word32 x2[], /* i : Input vector 2 */
Word32 y[], /* o : Output vector that contains vector 1 - vector 2 */
@@ -6133,14 +6109,14 @@ void v_add_fixed(
const Word16 hdrm /* i : headroom for when subtraction result > 1 or < -1 */
);
-void v_add_fixed_no_hdrm(
+void v_add_fx_no_hdrm(
const Word32 x1[], /* i : Input vector 1 */
const Word32 x2[], /* i : Input vector 2 */
Word32 y[], /* o : Output vector that contains vector 1 + vector 2 */
const Word16 N /* i : Vector length */
);
-void v_add_fixed_me(
+void v_add_fx_me(
const Word32 x1[], /* i : Input vector 1 */
const Word16 x1_e, /* i : Exponent for input vector 1 */
const Word32 x2[], /* i : Input vector 2 */
@@ -6159,14 +6135,7 @@ void v_add_w64(
const Word16 hdrm /* i : headroom for when subtraction result > 1 or < -1 */
);
-void v_multc_32_16_fixed(
- const Word32 x[], /* i : Input vector */
- const Word16 c, /* i : Constant */
- Word32 y[], /* o : Output vector that contains c*x */
- const Word16 N /* i : Vector length */
-);
-
-void v_sub_fixed(
+void v_sub_fx(
const Word32 x1[], /* i : Input vector 1 */
const Word32 x2[], /* i : Input vector 2 */
Word32 y[], /* o : Output vector that contains vector 1 - vector 2 */
@@ -6174,7 +6143,7 @@ void v_sub_fixed(
const Word16 hdrm /* i : headroom for when subtraction result > 1 or < -1 */
);
-void v_sub_fixed_no_hdrm(
+void v_sub_fx_no_hdrm(
const Word32 x1[], /* i : Input vector 1 */
const Word32 x2[], /* i : Input vector 2 */
Word32 y[], /* o : Output vector that contains vector 1 - vector 2 */
@@ -6182,21 +6151,21 @@ void v_sub_fixed_no_hdrm(
);
/*! r: dot product of x[] and y[] */
-Word32 dotp_fixed(
+Word32 dotp_fx32(
const Word32 x[], /* i : vector x[] */
const Word32 y[], /* i : vector y[] */
const Word16 n /* i : vector length */
);
/*! r: dot product of x[] and y[] in case of overflow*/
-Word32 dotp_fixed_o(
+Word32 dotp_fx32_o(
const Word32 x[], /* i : vector x[] */
const Word32 y[], /* i : vector y[] */
const Word16 n, /* i : vector length */
const Word16 log_len, /* i : max factor added to result q after dot product (equal to log2(n)) */
Word16 *res_q );
-Word32 dotp_fixed_32(
+Word32 dotp_fx32_fac(
const Word32 x[], /* i : vector x[] */
const Word32 y[], /* i : vector y[] */
const Word16 n, /* i : vector length */
@@ -6204,7 +6173,7 @@ Word32 dotp_fixed_32(
Word16 *res_q /*stores resultant Q*/
);
-Word32 dotp_fixed_ivas_fx(
+Word32 dotp_fx_ivas_fx(
const Word32 x[], /* i : vector x[] */
Word16 x_e,
const Word32 y[], /* i : vector y[] */
@@ -6212,7 +6181,7 @@ Word32 dotp_fixed_ivas_fx(
const Word16 n, /* i : vector length */
Word16 *out_e );
-Word32 dotp_fixed_guarded(
+Word32 dotp_fx_guarded(
const Word32 x[], /* i : vector x[] */
const Word32 y[], /* i : vector y[] */
const Word16 n /* i : vector length */
@@ -7346,30 +7315,30 @@ void rc_dec_init_fx(
/* o : Decoded cumulative frequency */
UWord32 rc_decode_fx(
Word16 *BER_detect, /* o : Bit error detection flag */
- PVQ_DEC_HANDLE hPVQ, /* i/o: PVQ decoder handle */
+ PVQ_DEC_HANDLE hPVQ, /* i/o: PVQ decoder handle */
UWord32 tot /* i : Total cumulative frequency */
);
void rc_dec_update_fx(
- Decoder_State *st_fx, /* i/o: Decoder State */
+ Decoder_State *st_fx, /* i/o: Decoder State */
PVQ_DEC_HANDLE hPVQ, /* i/o: PVQ decoder handle */
UWord32 cum_freq, /* i : Cumulative frequency */
UWord32 sym_freq /* i : Symbol frequency */
);
-/* i : Decoded value */
+/* o : Decoded value */
Word32 rc_dec_bits_fx(
- Decoder_State *st_fx, /* i/o: Decoder State */
+ Decoder_State *st_fx, /* i/o: Decoder State */
PVQ_DEC_HANDLE hPVQ, /* i/o: PVQ decoder handle */
- Word16 bits /* i : Number of bits */
+ Word16 bits /* i : Number of bits */
);
-/* i : Decoded value */
+/* o : Decoded value */
UWord32 rc_dec_uniform_fx(
- Decoder_State *st_fx, /* i/o: Decoder State */
+ Decoder_State *st_fx, /* i/o: Decoder State */
PVQ_DEC_HANDLE hPVQ, /* i/o: PVQ decoder handle */
- UWord32 tot /* i : Maximum value */
+ UWord32 tot /* i : Maximum value */
);
void rc_dec_finish_fx(
@@ -7379,8 +7348,8 @@ void rc_dec_finish_fx(
void pvq_decode_fx(
Decoder_State *st_fx,
- PVQ_DEC_HANDLE hPVQ, /* i/o: PVQ decoder handle */
- Word16 *xq, /* o: decoded vector (Q15) */
+ PVQ_DEC_HANDLE hPVQ, /* i/o: PVQ decoder handle */
+ Word16 *xq, /* o: decoded vector (Q15) */
Word16 *y, /* o: decoded vector (non-scaled int) */
const Word16 k_val, /* i: number of allocated pulses */
const Word16 dim, /* i: Length of vector */
@@ -7395,6 +7364,7 @@ void nelp_decoder_fx(
const Word16 coder_type, /* i : coding type Q0 */
Word16 *gain_buf /* Q14 */
);
+
void decod_nelp_fx(
Decoder_State *st_fx, /* i/o: decoder static memory */
Word16 *tmp_noise_fx, /* o : long term temporary noise energy */
@@ -7486,7 +7456,7 @@ void FdCng_decodeSID_fx(
void noisy_speech_detection_fx(
HANDLE_FD_CNG_DEC hFdCngDec, /* i/o: FD_CNG structure */
const Word16 vad, /* i : VAD flag */
- const Word16 *syn, /* i : i time-domain frame */
+ const Word16 *syn, /* i : i time-domain frame */
const Word16 Q );
void generate_comfort_noise_dec_fx(
@@ -7569,7 +7539,6 @@ void destroy_cldfb_encoder_fx(
Encoder_State *st /* i/o: state structure */
);
-// swb_bwe_dec_fx.c
Word16 WB_BWE_gain_deq_fx(
Decoder_State *st_fx, /* i/o: decoder state structure */
Word16 *WB_fenv /*Q15*/
@@ -7624,21 +7593,15 @@ void hq_core_dec_fx(
const Word16 hq_core_type, /* i : HQ core type Q0*/
const Word16 core_switching_flag /* i : ACELP->HQ switching frame flag Q0*/
);
+
void HQ_core_dec_init_fx(
HQ_DEC_HANDLE hHQ_core /* i/o: HQ core data handle */
);
+
void HQ_nbfec_init_fx(
HQ_NBFEC_HANDLE hHQ_nbfec /* i/o: HQ NB FEC data handle */
);
-void GetAttackForTCXDecision_fx(
- Word32 const *pSubblockNrg,
- Word32 const *pAccSubblockNrg,
- Word16 nSubblocks,
- Word16 nPastSubblocks,
- Word16 attackRatioThreshold,
- Word16 *pbIsAttackPresent,
- Word16 *pAttackIndex );
void hq_ecu_fx(
const Word16 *prevsynth, /* i : buffer of previously synthesized signal */
@@ -7827,7 +7790,6 @@ void hvq_dec_fx(
Word32 *coefsq_norm, /* o : Output vector in Q12 */
const Word16 core );
-// hvq_pvq_bitalloc_fx.c
Word16 hvq_pvq_bitalloc_fx(
Word16 num_bits, /* i/o: Number of available bits (including gain bits) */
const Word32 brate, /* i : bitrate */
@@ -8149,14 +8111,14 @@ void sc_vbr_dec_init(
);
ivas_error ppp_quarter_decoder_fx(
- DTFS_STRUCTURE *CURRCW_Q_DTFS_FX, /* i/o: Current CW DTFS */
+ DTFS_STRUCTURE *CURRCW_Q_DTFS_FX, /* i/o: Current CW DTFS */
Word16 prevCW_lag_fx, /* i : Previous lag */
Word16 *lastLgainD_fx, /* i/o: Last gain lowband Q11 */
- Word16 *lastHgainD_fx, /* i/o: Last gain highwband Q11 */
- Word16 *lasterbD_fx, /* i/o: Last ERB vector Q13 */
+ Word16 *lastHgainD_fx, /* i/o: Last gain highwband Q11 */
+ Word16 *lasterbD_fx, /* i/o: Last ERB vector Q13 */
Word16 bfi, /* i : FER flag */
- Word16 *S_fx, /* i : sine table, Q15 */
- Word16 *C_fx, /* i : cosine table, Q15 */
+ Word16 *S_fx, /* i : sine table, Q15 */
+ Word16 *C_fx, /* i : cosine table, Q15 */
DTFS_STRUCTURE PREV_CW_D_FX, /* i : Previous DTFS */
Decoder_State *st_fx );
@@ -8192,7 +8154,8 @@ void acelp_plc_mdct_transition_fx(
);
void cldfb_reset_memory_fx(
- HANDLE_CLDFB_FILTER_BANK hs /* i/o: filter bank handle */ );
+ HANDLE_CLDFB_FILTER_BANK hs /* i/o: filter bank handle */
+);
void tcxltp_dec_init_fx(
TCX_LTP_DEC_HANDLE hTcxLtpDec, /* Q0 */
@@ -8628,7 +8591,8 @@ void getTCXparam_fx(
const Word16 *no_param_tns, /* i : number of TNS parameters per subframe Q0 */
Word16 p_param[2], /* o : pointer to parameters for next round of bs reading Q0 */
Word16 nTnsBitsTCX10[2], /*Q0*/
- const Word16 pre_past_flag /*Q0*/ );
+ const Word16 pre_past_flag /*Q0*/
+);
void dec_prm_fx(
Word16 *coder_type,
@@ -8724,7 +8688,8 @@ void GetParameters_fx(
void const *pParameter, // Q0
Word16 **pStream, // Q0
Word16 *pnSize, // Q0
- Word16 *pnBits ); // Q0
+ Word16 *pnBits // Q0
+);
void EncodeTnsData_ivas_fx(
STnsConfig const *pTnsConfig, /* i : TNS Configuration struct */
@@ -9288,14 +9253,14 @@ void delay_signal_q_adj_fx(
const Word16 q_x,
const Word16 q_mem );
-Word32 anint_fixed(
- Word32 x, /* i: Round to the nearest integer */
- Word16 exp /* i: Exponent for round step */
+Word32 anint_fx(
+ const Word32 x, /* i: Round to the nearest integer */
+ const Word16 exp /* i: Exponent for round step */
);
-Word32 ceil_fixed(
- Word32 x, /* i: number to ceil */
- Word16 exp /* i: Exponent for ceil step */
+Word32 ceil_fx(
+ const Word32 x, /* i: number to ceil */
+ const Word16 exp /* i: Exponent for ceil step */
);
void v_add_fx(
@@ -9406,7 +9371,6 @@ void cldfbSynthesis_ivas_fx(
HANDLE_CLDFB_FILTER_BANK h_cldfb /* i : filter bank state */
);
-// bass_psfilter.c
void addBassPostFilter_ivas_fx(
const Word32 *harm_timeIn_fx,
const Word16 samplesToProcess,
@@ -9542,7 +9506,7 @@ void IMDCT_ivas_fx(
Word16 *q_acelp_zir_fx,
Word16 *pq_win );
-void v_mult16_fixed(
+void v_mult16_fx(
const Word16 x1[], /* i : Input vector 1 */
const Word16 x2[], /* i : Input vector 2 */
Word16 y[], /* o : Output vector that contains vector 1 .* vector 2 */
@@ -9561,6 +9525,7 @@ Word32 sum2_f_16_fx(
const Word16 *vec, /* i : input vector */
const Word16 lvec /* i : length of input vector */
);
+
Word32 sum2_f_16_gb_fx(
const Word16 *vec, /* i : input vector */
const Word16 lvec, /* i : length of input vector */
@@ -9734,14 +9699,12 @@ void Copy_Scale_sig_16_32_DEPREC(
const Word16 exp0 /* i : exponent: x = round(x << exp) Qx ?exp */
);
-#ifdef FIX_CREND_SIMPLIFY_CODE
void Copy_Scale_sig_16_32_r(
const Word16 x[], /* i : signal to scale input Qx */
Word32 y[], /* o : scaled signal output Qx */
const Word16 lg, /* i : size of x[] Q0 */
const Word16 exp0 /* i : exponent: x = round(x << exp) Qx ?exp */
);
-#endif
void Copy_Scale_sig_16_32_no_sat(
const Word16 x[], /* i : signal to scale input Qx */
@@ -9922,7 +9885,6 @@ Word32 dot_product_mat_fx(
const Word16 *x, /* i : vector x Q15 */
const Word32 *A, /* i : matrix A Q0*/
const Word16 m /* i : vector & matrix size */
-
);
void Vr_subt(
@@ -10395,7 +10357,7 @@ Word32 sum2_32_fx(
const Word16 lvec, /* i : length of input vector */
Word16 *e );
-void v_mult_fixed(
+void v_mult_fx(
const Word32 x1[], /* i : Input vector 1 */
const Word32 x2[], /* i : Input vector 2 */
Word32 y[], /* o : Output vector that contains vector 1 .* vector 2 */
@@ -10490,13 +10452,11 @@ void hp20_fx_32(
Word32 mem_fx[],
const Word32 Fs );
-#ifdef HP20_FIX32_RECODING
void hp20_fx_32_opt(
Word32 signal_fx[],
const Word16 lg,
Word32 mem_fx[],
const Word32 Fs );
-#endif
void getTCXMode_ivas_fx(
Decoder_State *st, /* i/o: decoder memory state */
@@ -10608,7 +10568,7 @@ void core_encode_update_ivas_fx(
);
void updt_enc_common_ivas_fx(
- Encoder_State *st, /* i/o: encoder state structure */
+ Encoder_State *st, /* i/o: encoder state structure */
const Word16 Q_new /* i : CUrrent frame scaling */
);
@@ -11301,7 +11261,7 @@ ivas_error acelp_core_enc_ivas_fx(
Word16 *q_old_syn_12k8_16,
Word16 pitch_buf[NB_SUBFR16k], /* o : floating pitch for each subframe Q6*/
Word16 *unbits, /* o : number of unused bits Q0*/
- STEREO_TD_ENC_DATA_HANDLE hStereoTD, /* i/o: TD stereo encoder handle */
+ STEREO_TD_ENC_DATA_HANDLE hStereoTD, /* i/o: TD stereo encoder handle */
Word16 tdm_lsfQ_PCh[M], /* i : Q LSFs for primary channel X2.56*/
Word16 Q_new );
@@ -11413,10 +11373,8 @@ void UnmapIndex_fx(
Word32 *Lag /* Q0 */
);
-#define GET_ADJ( T, L ) GET_ADJ2( T, L, *FractionalResolution )
#define GET_ADJ2( T, L, F ) ( ( ( L ) << ( F ) ) - ( T ) )
-
Word32 tcx_hm_render_fx(
const Word32 lag, /* i: pitch lag Q0 */
const Word16 fract_res, /* i: fractional resolution of the lag Q0 */
@@ -11450,7 +11408,7 @@ void writeTCXMode_fx(
);
void writeTCXWindowing_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: bitstream handle */
+ BSTR_ENC_HANDLE hBstr, /* i/o: bitstream handle */
const Word16 overlap_mode /* i : overlap mode Q0*/
);
diff --git a/lib_com/pvq_com_fx.c b/lib_com/pvq_com_fx.c
index 9e2f58ed02467a79c769d9a0e27b205884e1a85a..98ca8c4ab1dce71ba25c07df33b3cc7238dbd829 100644
--- a/lib_com/pvq_com_fx.c
+++ b/lib_com/pvq_com_fx.c
@@ -427,12 +427,6 @@ void NearOppSplitAdjustment_fx(
Word16 qac, qboth, qskew, qavg, qmin, Midx;
Word32 L_QIb, L_qnum;
Word16 QIb, QIa;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
rangeCoderFinalizationFBits_fx( Qac, INTac, &qac );
qboth = sub( qband, sub( qac, qzero ) ); /* Q0 */
@@ -458,11 +452,7 @@ void NearOppSplitAdjustment_fx(
}
*qnear = qboth; /* Q3 */
move16();
-#ifdef ISSUE_1836_replace_overflow_libcom
QIb = extract_h( L_shl_sat( L_QIb, 16 ) ); /* may saturate Q0*/
-#else
- QIb = extract_h( L_shl_o( L_QIb, 16, &Overflow ) ); /* may saturate Q0*/
-#endif
if ( LE_16( QIb, qboth ) )
{
*qnear = QIb; /* Q0 */
@@ -533,12 +523,6 @@ void fine_gain_quant_fx(
Word16 tmp1, tmp2, exp1, exp2;
Word32 L_tmp;
UWord16 lsb;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
FOR( band = 0; band < num_sfm; band++ )
{
@@ -560,11 +544,7 @@ void fine_gain_quant_fx(
tmp1 = sub( tmp1, exp1 );
L_tmp = L_Comp( tmp1, exp2 );
Mpy_32_16_ss( L_tmp, 24660, &L_tmp, &lsb ); /* 24660 = 20*log10(2) in Q12 */ /*16+12-15=13 */
-#ifdef ISSUE_1836_replace_overflow_libcom
gain_db = round_fx_sat( L_shl_sat( L_tmp, 17 ) );
-#else
- gain_db = round_fx_sat( L_shl_o( L_tmp, 17, &Overflow ) );
-#endif
idx = squant_fx( gain_db, &gain_dbq, finegain_fx[gbits - 1], gain_cb_size[gbits - 1] );
push_indice( hBstr, IND_PVQ_FINE_GAIN, idx, gbits );
diff --git a/lib_com/residu_fx.c b/lib_com/residu_fx.c
index d338e316356ce908ed95ae7621921ab588eed2b5..ecfb672b06e02809f463966e6f5a1228a87a72a1 100644
--- a/lib_com/residu_fx.c
+++ b/lib_com/residu_fx.c
@@ -62,19 +62,12 @@ void Residu3_lc_fx(
Word16 i, j;
Word32 s;
Word16 q;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
q = add( norm_s( a[0] ), 1 );
if ( shift > 0 )
{
q = add( q, shift );
}
-#ifdef ISSUE_1836_replace_overflow_libcom
*y++ = shl_sat( x[0], shift );
move16();
@@ -103,36 +96,7 @@ void Residu3_lc_fx(
*y++ = round_fx_sat( s );
}
-#else
- *y++ = shl_o( x[0], shift, &Overflow );
- move16();
-
- FOR( i = 1; i < m; i++ )
- {
- s = L_mult_o( x[i], a[0], &Overflow );
- /* Stop at i to Avoid Mults with Zeros */
- FOR( j = 1; j <= i; j++ )
- {
- s = L_mac_o( s, x[i - j], a[j], &Overflow );
- }
-
- s = L_shl_o( s, q, &Overflow );
- *y++ = round_fx_o( s, &Overflow );
- }
-
- FOR( ; i < lg; i++ )
- {
- s = L_mult_o( x[i], a[0], &Overflow );
- FOR( j = 1; j <= m; j++ )
- {
- s = L_mac_o( s, x[i - j], a[j], &Overflow );
- }
-
- s = L_shl_o( s, q, &Overflow );
- *y++ = round_fx_o( s, &Overflow );
- }
-
-#endif
+ return;
}
/*--------------------------------------------------------------------*
@@ -166,7 +130,10 @@ void Residu3_10_fx(
s = W_shl_sat_l( s64, q );
y[i] = round_fx_sat( s );
}
+
+ return;
}
+
/*--------------------------------------------------------------------*
* Residu3_fx:
*
@@ -185,12 +152,7 @@ void Residu3_fx(
Word64 s64;
Word32 s32;
Word16 q;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
+
q = add( norm_s( a[0] ), 1 );
if ( shift != 0 )
{
@@ -206,14 +168,13 @@ void Residu3_fx(
}
s64 = W_mac_16_16( s64, x[i - 16], a[16] );
s32 = W_shl_sat_l( s64, q );
-#ifdef ISSUE_1836_replace_overflow_libcom
y[i] = round_fx_sat( s32 );
-#else
- y[i] = round_fx_o( s32, &Overflow );
-#endif
move16();
}
+
+ return;
}
+
/*==========================================================================*/
/* FUNCTION : void calc_residu() */
/*--------------------------------------------------------------------------*/
diff --git a/lib_com/stat_com.h b/lib_com/stat_com.h
index c50e99711624758634d8b9079aa60536f85a3db6..7b5c9fd104ab5458a2676b909691b5a492bff1ac 100644
--- a/lib_com/stat_com.h
+++ b/lib_com/stat_com.h
@@ -577,7 +577,6 @@ typedef struct
UWord8 nBits;
} Coding;
-
/* Scale TCX setup */
typedef struct
{
@@ -590,7 +589,6 @@ typedef struct
} SCALE_TCX_SETUP;
-
typedef struct
{
UWord16 frame_bits; /*Bits per frame*/
@@ -604,7 +602,7 @@ typedef struct
} FrameSizeParams;
-typedef struct cldfb_filter_bank_struct
+typedef struct ivas_cldfb_filter_bank_struct
{
Word16 no_channels;
Word16 no_col;
@@ -648,7 +646,6 @@ typedef struct cldfb_filter_bank_struct
Word16 outScalefactor; /*!< Scale factor of output data (syn only) Q0*/
Word16 synFilterHeadroom; /*!< Headroom for states in synthesis cldfb filterbank Q0*/
-
/* memory helper states */
Word16 *memory; // Qx
Word32 *memory32; // Q_cldfb_state /*because cldfb_state_fx is word32 which is used to assign values*/
@@ -669,7 +666,6 @@ typedef struct cldfb_filter_bank_struct
} CLDFB_FILTER_BANK, *HANDLE_CLDFB_FILTER_BANK;
-
typedef enum
{
FRAME_0 = 0,
@@ -691,6 +687,7 @@ typedef enum
} FRAME_SIZE;
+
/*---------------------------------------------------------------*
* IGF *
*---------------------------------------------------------------*/
@@ -742,7 +739,6 @@ typedef struct IGF_INFO_struct
Word16 bitRateIndex;
} IGF_INFO, *H_IGF_INFO;
-
typedef struct
{
Word16 *indexBuffer;
diff --git a/lib_com/stat_noise_uv_mod_fx.c b/lib_com/stat_noise_uv_mod_fx.c
index 9b0bae1e5803d75d8a5baea5b8cbadbbfe320276..7a5519c04263c79137d724d5abf77cfb8bf6d201 100644
--- a/lib_com/stat_noise_uv_mod_fx.c
+++ b/lib_com/stat_noise_uv_mod_fx.c
@@ -74,12 +74,6 @@ void stat_noise_uv_mod_fx(
Word16 En_shift, Tmp;
Word16 Exc2_local[L_FRAME]; /* local_copy in scaled Q_local*/
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*---------------------------------------------------------*
* Init local variables
@@ -111,11 +105,7 @@ void stat_noise_uv_mod_fx(
move16();
tmp_res = div_l( L_tmp_res, tmp_den );
move16();
-#ifdef ISSUE_1836_replace_overflow_libcom
min_alpha = add_sat( tmp_res, 16384 );
-#else
- min_alpha = add_o( tmp_res, 16384, &Overflow );
-#endif
move16();
/**st_min_alpha = sub(*st_min_alpha, 1638); move16();*/
@@ -166,13 +156,8 @@ void stat_noise_uv_mod_fx(
{
FOR( i_subfr = 0; i_subfr < L_FRAME; i_subfr += L_SUBFR )
{
- exctilt = calc_tilt_fx( &Exc2_local[i_subfr], En_shift, L_SUBFR ); /*Q15 */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ exctilt = calc_tilt_fx( &Exc2_local[i_subfr], En_shift, L_SUBFR ); /*Q15 */
exctilt = mult( shl_sat( sub( TILT_COMP_LIM_FX, min_alpha ), 2 ), exctilt ); /*Q15 */
-#else
- exctilt = mult( shl_o( sub( TILT_COMP_LIM_FX, min_alpha ), 2, &Overflow ), exctilt ); /*Q15 */
-#endif
-
PREEMPH_FX( &Exc2_local[i_subfr], exctilt, L_SUBFR, exc_pe );
}
}
@@ -196,11 +181,7 @@ void stat_noise_uv_mod_fx(
tmp_shift = norm_s( tmp_den );
tmp_den = shl( tmp_den, tmp_shift );
tmp_res = div_s( tmp_nom, tmp_den );
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp_res = shl_sat( tmp_res, tmp_shift );
-#else
- tmp_res = shl_o( tmp_res, tmp_shift, &Overflow );
-#endif
alpha = add( 32767, mult( tmp_res, sub( min_alpha, 32767 ) ) );
*act_count = 0;
@@ -264,13 +245,8 @@ void stat_noise_uv_mod_fx(
L_tmp_res = Mult_32_16( *ge_sm, tmp_res ); /* Q_stat_noise_ge+45-Q_local-Q_ge-tmp_shift-15 */
L_tmp_res = Mult_32_16( L_tmp_res, sub( 32767, beta ) ); /*30-Q_local-tmp_shift+15-15 */
L_tmp_res = L_add_sat( L_shl_sat( L_tmp_res, sub( add( Q_local, tmp_shift ), 15 ) ), beta ); /* Q15 */
-#ifdef ISSUE_1836_replace_overflow_libcom
- tmp_res = extract_h( L_shl_sat( L_tmp_res, 15 ) ); /* 15+15-16=14 */
-#else
- tmp_res = extract_h( L_shl_o( L_tmp_res, 15, &Overflow ) ); /* 15+15-16=14 */
-#endif
-
- Noimix_fract = extract_l( Mult_32_16( L_tmp_res, Noimix_fract ) ); /*15+15-15 */
+ tmp_res = extract_h( L_shl_sat( L_tmp_res, 15 ) ); /* 15+15-16=14 */
+ Noimix_fract = extract_l( Mult_32_16( L_tmp_res, Noimix_fract ) ); /*15+15-15 */
FOR( i = 0; i < L_FRAME; i++ )
{
@@ -402,12 +378,6 @@ void stat_noise_uv_mod_ivas_fx(
Word16 En_shift, Tmp;
Word16 Exc2_local[L_FRAME]; /* local_copy in scaled Q_local*/
Word32 L_Exc2_local[L_FRAME]; /* local_copy in scaled Q_local*/
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*---------------------------------------------------------*
* Init local variables
@@ -436,11 +406,7 @@ void stat_noise_uv_mod_ivas_fx(
L_tmp_res = L_shl( L_tmp_res, sub( tmp_shift, 1 ) );
tmp_den = shl( tmp_den, tmp_shift );
tmp_res = div_l( L_tmp_res, tmp_den );
-#ifdef ISSUE_1836_replace_overflow_libcom
min_alpha = add_sat( tmp_res, 16384 );
-#else
- min_alpha = add_o( tmp_res, 16384, &Overflow );
-#endif
/**st_min_alpha = sub(*st_min_alpha, 1638); move16();*/
min_alpha = s_max( min_alpha, sub( *st_min_alpha, 1638 ) );
@@ -490,13 +456,8 @@ void stat_noise_uv_mod_ivas_fx(
{
FOR( i_subfr = 0; i_subfr < L_FRAME; i_subfr += L_SUBFR )
{
- exctilt = calc_tilt_fx( &Exc2_local[i_subfr], En_shift, L_SUBFR ); /*Q15 */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ exctilt = calc_tilt_fx( &Exc2_local[i_subfr], En_shift, L_SUBFR ); /*Q15 */
exctilt = mult( shl_sat( sub( TILT_COMP_LIM_FX, min_alpha ), 2 ), exctilt ); /*Q15 */
-#else
- exctilt = mult( shl_o( sub( TILT_COMP_LIM_FX, min_alpha ), 2, &Overflow ), exctilt ); /*Q15 */
-#endif
-
PREEMPH_FX( &Exc2_local[i_subfr], exctilt, L_SUBFR, exc_pe );
}
}
@@ -520,11 +481,7 @@ void stat_noise_uv_mod_ivas_fx(
tmp_shift = norm_s( tmp_den );
tmp_den = shl( tmp_den, tmp_shift );
tmp_res = div_s( tmp_nom, tmp_den );
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp_res = shl_sat( tmp_res, tmp_shift );
-#else
- tmp_res = shl_o( tmp_res, tmp_shift, &Overflow );
-#endif
alpha = add( 32767, mult( tmp_res, sub( min_alpha, 32767 ) ) );
*act_count = 0;
diff --git a/lib_com/swb_tbe_com_fx.c b/lib_com/swb_tbe_com_fx.c
index 7aef5baa3a541cfc792300a8274bac56070279ad..bfe9db62d269efef90004808a98090c8691b71ec 100644
--- a/lib_com/swb_tbe_com_fx.c
+++ b/lib_com/swb_tbe_com_fx.c
@@ -999,10 +999,6 @@ static void filt_mu_fx(
Word16 mu, ga, temp;
const Word16 *ptrs;
Word16 tmp, exp;
-#ifndef ISSUE_1836_replace_overflow_libcom
- Flag Overflow = 0;
- move32();
-#endif
IF( EQ_16( SubFrameLength, L_SUBFR ) )
{
@@ -1042,11 +1038,7 @@ static void filt_mu_fx(
{
temp = mult_r( mu, ( *ptrs++ ) );
temp = add_sat( temp, *ptrs ); /*Q12 */
-#ifdef ISSUE_1836_replace_overflow_libcom
sig_out[n] = shl_sat( mult_r( ga, temp ), 1 );
-#else
- sig_out[n] = shl_o( mult_r( ga, temp ), 1, &Overflow );
-#endif
move16(); /*Q12 */
}
@@ -1453,12 +1445,6 @@ void GenShapedWBExcitation_ivas_fx(
Word32 LepsP[LPC_WHTN_ORDER_WB + 1];
Word16 tmp_vfac;
Word16 avg_voice_fac;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
/*0.25f*sum_f(voice_factors, NB_SUBFR)*/
L_tmp = L_mult( voice_factors[0], 8192 /* 0.25 in Q15 */ );
@@ -1547,39 +1533,23 @@ void GenShapedWBExcitation_ivas_fx(
n1 = norm_s( max_val );
FOR( i = 0; i < L_FRAME16k / 4; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
excTmp2_frac[i] = shl( excTmp2[i], n1 ); // Q_bwe_exc + n1 // saturation not possible
-#else
- excTmp2_frac[i] = shl_o( excTmp2[i], n1, &Overflow ); // Q_bwe_exc + n1
-#endif
- move16(); /* Q14 */
+ move16(); /* Q14 */
}
n1 = sub( sub( 14, n1 ), Q_bwe_exc );
pow1 = 1;
move32();
-#ifdef ISSUE_1836_replace_overflow_libcom
FOR( i = 0; i < L_FRAME16k / 4; i++ )
{
L_tmp = L_mult( excTmp2_frac[i], excTmp2_frac[i] ); /* Q29 */ // saturation not possible: excTmp2_frac[i] < MIN_16
pow1 = L_add_sat( pow1, L_shr( L_tmp, 10 ) ); /* Q22 */
}
-#else
- FOR( i = 0; i < L_FRAME16k / 4; i++ )
- {
- L_tmp = L_mult_o( excTmp2_frac[i], excTmp2_frac[i], &Overflow ); /* Q29 */
- pow1 = L_add_o( pow1, L_shr( L_tmp, 10 ), &Overflow ); /* Q22 */
- }
-#endif
}
FOR( i = 0; i < L_FRAME16k / 4; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
excNoisyEnv[i] = L_add_sat( *mem_csfilt, L_mult( csfilt_num2[0], excTmp2[i] ) ); // L_mult: sat not poosible, excTmp2 > 0
-#else
- excNoisyEnv[i] = L_add_o( *mem_csfilt, L_mult_o( csfilt_num2[0], excTmp2[i], &Overflow ), &Overflow );
-#endif
- move32(); /* Q_bwe_exc+16 */
+ move32(); /* Q_bwe_exc+16 */
*mem_csfilt = Mult_32_16( excNoisyEnv[i], neg_csfilt_den2[1] );
move32(); /* Q_bwe_exc+16 */
}
@@ -1608,11 +1578,7 @@ void GenShapedWBExcitation_ivas_fx(
n2 = norm_l( Lmax );
FOR( i = 0; i < L_FRAME16k / 4; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
exc4k_frac[i] = extract_h( L_shl( exc4k_32[i], n2 ) ); /* Q(14-n2) */
-#else
- exc4k_frac[i] = extract_h( L_shl_o( exc4k_32[i], n2, &Overflow ) ); /* Q(14-n2) */
-#endif
move16();
}
n2 = 30 - n2 - ( Q_bwe_exc + 6 );
@@ -1620,13 +1586,8 @@ void GenShapedWBExcitation_ivas_fx(
move32();
FOR( i = 0; i < L_FRAME16k / 4; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_mult_sat( exc4k_frac[i], exc4k_frac[i] ); /* Q29 */
pow22 = L_add( pow22, L_shr( L_tmp, 10 ) ); /* Q22 */
-#else
- L_tmp = L_mult_o( exc4k_frac[i], exc4k_frac[i], &Overflow ); /* Q29 */
- pow22 = L_add_o( pow22, L_shr( L_tmp, 10 ), &Overflow ); /* Q22 */
-#endif
}
}
@@ -1635,19 +1596,11 @@ void GenShapedWBExcitation_ivas_fx(
IF( EQ_16( coder_type, UNVOICED ) || ( igf_flag != 0 && LT_16( avg_voice_fac, 6654 /* 0.2 in Q15 */ ) ) )
{
L_tmp = root_a_over_b_fx( pow1, sub( 19, shl( n1, 1 ) ), pow22, sub( 19, shl( n2, 1 ) ), &exp );
-#ifdef ISSUE_1836_replace_overflow_libcom
scale = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /*Q15 */
-#else
- scale = round_fx_o( L_shl_o( L_tmp, exp, &Overflow ), &Overflow ); /*Q15 */
-#endif
sc = sub( add( n2, Q_bwe_exc ), 14 );
FOR( i = 0; i < L_FRAME16k / 4; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
exc4kWhtnd[i] = round_fx_sat( L_shl_sat( L_mult_sat( exc4k_frac[i], scale ), sc ) ); /* Q_bwe_exc+n2-10+16+ Q_bwe_exc + n2 -14 -16 = //Q_bwe_exc */
-#else
- exc4kWhtnd[i] = round_fx_o( L_shl_o( L_mult_o( exc4k_frac[i], scale, &Overflow ), sc, &Overflow ), &Overflow ); /* Q_bwe_exc+n2-10+16+ Q_bwe_exc + n2 -14 -16 = //Q_bwe_exc */
-#endif
move16();
}
}
@@ -1663,11 +1616,7 @@ void GenShapedWBExcitation_ivas_fx(
{
/*tmp_vfac = 2*voice_factors[i];
tmp_vfac = min(1, tmp_vfac);*/
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp_vfac = shl_sat( voice_factors[i], 1 );
-#else
- tmp_vfac = shl_o( voice_factors[i], 1, &Overflow );
-#endif
}
ELSE
{
@@ -1676,7 +1625,6 @@ void GenShapedWBExcitation_ivas_fx(
}
Ltemp1 = root_a_fx( L_deposit_h( tmp_vfac ), 31, &exp );
-#ifdef ISSUE_1836_replace_overflow_libcom
temp1 = round_fx_sat( L_shl_sat( Ltemp1, exp ) ); /* Q15 */
L_tmp = Mult_32_16( pow1, sub( 32767, tmp_vfac ) ); /* Q22*/
Ltemp2 = root_a_over_b_fx( L_tmp, sub( 19, shl( n1, 1 ) ), pow22, sub( 19, shl( n2, 1 ) ), &exp );
@@ -1689,20 +1637,6 @@ void GenShapedWBExcitation_ivas_fx(
move16();
k++;
}
-#else
- temp1 = round_fx_o( L_shl_o( Ltemp1, exp, &Overflow ), &Overflow ); /* Q15 */
- L_tmp = Mult_32_16( pow1, sub( 32767, tmp_vfac ) ); /* Q22*/
- Ltemp2 = root_a_over_b_fx( L_tmp, sub( 19, shl( n1, 1 ) ), pow22, sub( 19, shl( n2, 1 ) ), &exp );
- temp2 = round_fx_o( L_shl_o( Ltemp2, exp, &Overflow ), &Overflow ); /* Q15 */
- FOR( j = 0; j < L_FRAME16k / 16; j++ )
- {
- L_tmp = L_mult_o( temp1, exc4kWhtnd[k], &Overflow ); /* Q(16+Q_bwe_exc) */
- L_tmp = L_add_o( L_tmp, L_shl_o( L_mult_o( temp2, exc4k_frac[k], &Overflow ), sc, &Overflow ), &Overflow ); /* Q(16+Q_bwe_exc) */
- exc4kWhtnd[k] = round_fx_o( L_tmp, &Overflow ); /* Q_bwe_exc */
- move16();
- k++;
- }
-#endif
}
}
}
@@ -1757,12 +1691,6 @@ void GenShapedWBExcitation_fx(
Word32 LepsP[LPC_WHTN_ORDER_WB + 1];
Word16 tmp_vfac;
Word16 avg_voice_fac;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
move16();
move16();
move16();
@@ -1853,11 +1781,7 @@ void GenShapedWBExcitation_fx(
n1 = norm_s( max_val );
FOR( i = 0; i < L_FRAME16k / 4; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
excTmp2_frac[i] = shl( excTmp2[i], n1 );
-#else
- excTmp2_frac[i] = shl_o( excTmp2[i], n1, &Overflow );
-#endif
move16(); /* Q14 */
}
n1 = sub( sub( 14, n1 ), Q_bwe_exc );
@@ -1865,23 +1789,14 @@ void GenShapedWBExcitation_fx(
move32();
FOR( i = 0; i < L_FRAME16k / 4; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_mult_sat( excTmp2_frac[i], excTmp2_frac[i] ); /* Q29 */
pow1 = L_add_sat( pow1, L_shr( L_tmp, 7 ) ); /* Q22 */
-#else
- L_tmp = L_mult_o( excTmp2_frac[i], excTmp2_frac[i], &Overflow ); /* Q29 */
- pow1 = L_add_o( pow1, L_shr( L_tmp, 7 ), &Overflow ); /* Q22 */
-#endif
}
}
FOR( i = 0; i < L_FRAME16k / 4; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
excNoisyEnv[i] = L_add_sat( *mem_csfilt, L_mult( csfilt_num2[0], excTmp2[i] ) );
-#else
- excNoisyEnv[i] = L_add_o( *mem_csfilt, L_mult_o( csfilt_num2[0], excTmp2[i], &Overflow ), &Overflow );
-#endif
move32(); /* Q_bwe_exc+16 */
*mem_csfilt = Mpy_32_16_1( excNoisyEnv[i], neg_csfilt_den2[1] );
move32(); /* Q_bwe_exc+16 */
@@ -1912,11 +1827,7 @@ void GenShapedWBExcitation_fx(
n2 = norm_l( Lmax );
FOR( i = 0; i < L_FRAME16k / 4; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
exc4k_frac[i] = extract_h( L_shl( exc4k_32[i], n2 ) ); /* Q(14-n2) */
-#else
- exc4k_frac[i] = extract_h( L_shl_o( exc4k_32[i], n2, &Overflow ) ); /* Q(14-n2) */
-#endif
move16();
}
n2 = sub( sub( 30, n2 ), add( Q_bwe_exc, 6 ) );
@@ -1924,13 +1835,8 @@ void GenShapedWBExcitation_fx(
move32();
FOR( i = 0; i < L_FRAME16k / 4; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_mult_sat( exc4k_frac[i], exc4k_frac[i] ); /* Q29 */
pow22 = L_add( pow22, L_shr( L_tmp, 7 ) ); /* Q22 */
-#else
- L_tmp = L_mult_o( exc4k_frac[i], exc4k_frac[i], &Overflow ); /* Q29 */
- pow22 = L_add_o( pow22, L_shr( L_tmp, 7 ), &Overflow ); /* Q22 */
-#endif
}
}
@@ -1939,7 +1845,6 @@ void GenShapedWBExcitation_fx(
IF( EQ_16( coder_type, UNVOICED ) || ( igf_flag != 0 && LT_16( avg_voice_fac, 6654 /*0.2 in Q15 */ ) ) )
{
L_tmp = root_a_over_b_fx( pow1, sub( 22, shl( n1, 1 ) ), pow22, sub( 22, shl( n2, 1 ) ), &exp );
-#ifdef ISSUE_1836_replace_overflow_libcom
scale = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /*Q15 */
sc = sub( add( n2, Q_bwe_exc ), 14 );
FOR( i = 0; i < L_FRAME16k / 4; i++ )
@@ -1947,15 +1852,6 @@ void GenShapedWBExcitation_fx(
exc4kWhtnd[i] = round_fx_sat( L_shl_sat( L_mult_sat( exc4k_frac[i], scale ), sc ) ); /* Q_bwe_exc+n2-10+16+ Q_bwe_exc + n2 -14 -16 = //Q_bwe_exc */
move16();
}
-#else
- scale = round_fx_o( L_shl_o( L_tmp, exp, &Overflow ), &Overflow ); /*Q15 */
- sc = sub( add( n2, Q_bwe_exc ), 14 );
- FOR( i = 0; i < L_FRAME16k / 4; i++ )
- {
- exc4kWhtnd[i] = round_fx_o( L_shl_o( L_mult_o( exc4k_frac[i], scale, &Overflow ), sc, &Overflow ), &Overflow ); /* Q_bwe_exc+n2-10+16+ Q_bwe_exc + n2 -14 -16 = //Q_bwe_exc */
- move16();
- }
-#endif
}
ELSE
{
@@ -1970,11 +1866,7 @@ void GenShapedWBExcitation_fx(
{
/*tmp_vfac = 2*voice_factors[i];
tmp_vfac = min(1, tmp_vfac);*/
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp_vfac = shl_sat( voice_factors[i], 1 );
-#else
- tmp_vfac = shl_o( voice_factors[i], 1, &Overflow );
-#endif
}
ELSE
{
@@ -1983,7 +1875,6 @@ void GenShapedWBExcitation_fx(
}
Ltemp1 = root_a_fx( L_deposit_h( tmp_vfac ), 31, &exp );
-#ifdef ISSUE_1836_replace_overflow_libcom
temp1 = round_fx_sat( L_shl_sat( Ltemp1, exp ) ); /* Q15 */
L_tmp = Mpy_32_16_1( pow1, sub( 32767, tmp_vfac ) ); /* Q22*/
Ltemp2 = root_a_over_b_fx( L_tmp, sub( 22, shl( n1, 1 ) ), pow22, sub( 22, shl( n2, 1 ) ), &exp );
@@ -1996,30 +1887,16 @@ void GenShapedWBExcitation_fx(
move16();
k = add( k, 1 );
}
-#else
- temp1 = round_fx_o( L_shl_o( Ltemp1, exp, &Overflow ), &Overflow ); /* Q15 */
- L_tmp = Mpy_32_16_1( pow1, sub( 32767, tmp_vfac ) ); /* Q22*/
- Ltemp2 = root_a_over_b_fx( L_tmp, sub( 22, shl( n1, 1 ) ), pow22, sub( 22, shl( n2, 1 ) ), &exp );
- temp2 = round_fx_o( L_shl_o( Ltemp2, exp, &Overflow ), &Overflow ); /* Q15 */
- FOR( j = 0; j < L_FRAME16k / 16; j++ )
- {
- L_tmp = L_mult_o( temp1, exc4kWhtnd[k], &Overflow ); /* Q(16+Q_bwe_exc) */
- L_tmp = L_add_o( L_tmp, L_shl_o( L_mult_o( temp2, exc4k_frac[k], &Overflow ), sc, &Overflow ), &Overflow ); /* Q(16+Q_bwe_exc) */
- exc4kWhtnd[k] = round_fx_o( L_tmp, &Overflow ); /* Q_bwe_exc */
- move16();
- k = add( k, 1 );
- }
-#endif
}
}
}
Syn_filt_s( 0, lpc_shb, LPC_SHB_ORDER_WB, exc4kWhtnd, excSHB, L_FRAME16k / 4, state_lpc_syn, 1 );
-
return;
}
+
/*-------------------------------------------------------------------*
* GenWBSynth()
*
@@ -3085,7 +2962,7 @@ void GenShapedSHBExcitation_ivas_enc_fx(
/*Word16 out_exp;
Word32 temp_pow1 = root_a_over_b_fx(pow1, Q_pow1, pow22, Q_pow22, &out_exp);
temp_pow1 = L_shl(temp_pow1, out_exp);*/
- // v_multc_fixed_16_16(White_exc16k, round_fx(temp_pow), White_exc16k, L_FRAME16k);
+ // v_multc_fx_16_16(White_exc16k, round_fx(temp_pow), White_exc16k, L_FRAME16k);
L_tmp = 0;
move32();
Q_White_exc16k = add( getScaleFactor16( White_exc16k, L_FRAME16k ), norm_l( temp_pow ) );
@@ -4104,7 +3981,7 @@ void GenShapedSHBExcitation_ivas_dec_fx(
/*Word16 out_exp;
Word32 temp_pow1 = root_a_over_b_fx(pow1, Q_pow1, pow22, Q_pow22, &out_exp);
temp_pow1 = L_shl(temp_pow1, out_exp);*/
- // v_multc_fixed_16_16(White_exc16k, round_fx(temp_pow), White_exc16k, L_FRAME16k);
+ // v_multc_fx_16_16(White_exc16k, round_fx(temp_pow), White_exc16k, L_FRAME16k);
L_tmp = 0;
move32();
shift = getScaleFactor16( White_exc16k, L_FRAME16k );
@@ -4434,7 +4311,7 @@ void GenShapedSHBExcitation_ivas_dec_fx(
L_tmp = root_a_over_b_fx( pow1, Q_pow1, pow22, Q_pow22, &exp );
Word16 temp_fac = round_fx_sat( L_shl_sat( L_tmp, exp ) ); // Q15
shift = sub( sub( *Q_bwe_exc, NOISE_QADJ ), Q_White_exc16k );
- // v_multc_fixed_16_16(White_exc16k,shr(temp_fac, temp_fac_exp) , mixExc16k, L_FRAME16k);
+ // v_multc_fx_16_16(White_exc16k,shr(temp_fac, temp_fac_exp) , mixExc16k, L_FRAME16k);
FOR( k = 0; k < L_FRAME16k; k++ )
{
mixExc16k[k] = mult_r( shl_sat( White_exc16k[k], shift ), temp_fac );
@@ -5784,13 +5661,6 @@ void non_linearity_fx(
Word16 nframes;
Word32 prev_scale;
Word16 length_half;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
IF( EQ_16( L_frame, L_FRAME16k ) )
{
@@ -5888,20 +5758,10 @@ void non_linearity_fx(
tmp = div_s( shl( 1, sub( 14, exp ) ), j ); /* Q(29-exp) */
/* (log2(scale / prev_scale))/length */
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shl_sat( Mult_32_16( L_tmp, tmp ), sub( exp, 14 ) ); /* Q(16+29-exp+1-16+exp-14)->Q16 */
-#else
- L_tmp = L_shl_o( Mult_32_16( L_tmp, tmp ), sub( exp, 14 ), &Overflow ); /* Q(16+29-exp+1-16+exp-14)->Q16 */
-#endif
-
- frac = L_Extract_lc( L_tmp, &exp ); /* Extract exponent of L_tmp */
-
+ frac = L_Extract_lc( L_tmp, &exp ); /* Extract exponent of L_tmp */
tmp = extract_l( Pow2( 14, frac ) );
-#ifdef ISSUE_1836_replace_overflow_libcom
scale_step = shl_sat( tmp, exp ); /* Q14 */
-#else
- scale_step = shl_o( tmp, exp, &Overflow ); /* Q14 */
-#endif
}
}
@@ -5924,12 +5784,8 @@ void non_linearity_fx(
IF( GT_16( max_val, shl( 1, Q_inp ) ) )
{
exp = norm_s( max_val );
- tmp = div_s( shl( 1, sub( 14, exp ) ), max_val ); /* Q(29-exp-Q_inp) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ tmp = div_s( shl( 1, sub( 14, exp ) ), max_val ); /* Q(29-exp-Q_inp) */
scale = L_shl_sat( L_mult( 21955 /* 0.67 in Q15 */, tmp ), add( exp, sub( Q_inp, 14 ) ) ); /* Q31 */
-#else
- scale = L_shl_o( L_mult( 21955 /* 0.67 in Q15 */, tmp ), add( exp, sub( Q_inp, 14 ) ), &Overflow ); /* Q31 */
-#endif
}
ELSE
{
@@ -5970,28 +5826,15 @@ void non_linearity_fx(
L_tmp = L_sub( L_tmp, L_tmp1 ); /* Q16 */
/* Computing 1/(j - length/2) */
-
tmp = sub( j, length_half );
exp = norm_s( tmp );
-
-
tmp = div_s( shl( 1, sub( 14, exp ) ), tmp ); /* Q(29-exp) */
/* (log2(scale / prev_scale))/length */
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shl_sat( Mult_32_16( L_tmp, tmp ), sub( exp, 14 ) ); /*Q(16+29-exp+1-16+exp-14)->Q16 */
-#else
- L_tmp = L_shl_o( Mult_32_16( L_tmp, tmp ), sub( exp, 14 ), &Overflow ); /*Q(16+29-exp+1-16+exp-14)->Q16 */
-#endif
-
- frac = L_Extract_lc( L_tmp, &exp ); /* Extract exponent of L_tmp */
-
+ frac = L_Extract_lc( L_tmp, &exp ); /* Extract exponent of L_tmp */
tmp = extract_l( Pow2( 14, frac ) );
-#ifdef ISSUE_1836_replace_overflow_libcom
scale_step = shl_sat( tmp, exp ); /*Q14 */
-#else
- scale_step = shl_o( tmp, exp, &Overflow ); /*Q14 */
-#endif
}
}
@@ -6058,12 +5901,6 @@ void non_linearity_ivas_fx(
Word16 nframes;
Word32 prev_scale;
Word16 length_half;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
#ifdef NONBE_1328_FIX_NON_LINEARITY
Word16 sc_factor;
#endif
@@ -6128,21 +5965,10 @@ void non_linearity_ivas_fx(
}
#ifdef NONBE_1328_FIX_NON_LINEARITY
-#ifdef FIX_2000_NON_LINEARITY_OVERSHOOT
sc_factor = s_max( sub( 13, norm_s( add( j, 1 ) ) ), 0 ); /* Adapt the scaling factor allowed depending of max position */
sc_factor = s_max( sc_factor, 1 ); /* Note: The sc_factor is the log2 of the sc_factor in the float code to simplify condition below */
-#else
- /* sc_factor = 32; */ /* Here we divide prev_scale, so 32 == 2 << (15-10) 1024.0 corresponds to 10 bits and 32 to 5 bits */
- /* if ( element_mode > EVS_MONO ) */ /* element mode is not needed because the function is duplicated for IVAS */
- sc_factor = shl_sat( 1, sub( 16, max( 13 - norm_s( add( j, 1 ) ), 0 ) ) ); /* Adapt the scaling factor allowed depending of max position */
- sc_factor = s_max( s_min( sc_factor, 16384 ), 2 * 32 ); /* note: The thresholding is purposely different between float and BASOP implementations. */
-#endif
test();
-#ifdef FIX_2000_NON_LINEARITY_OVERSHOOT
IF( prev_scale <= 0 || GT_32( L_shr( prev_scale, sub( sc_factor, 1 ) /*Q30 -> Q31*/ ), scale /*Q31*/ ) ) /* Since the sc_factor is the log2 of sc_factor in float, we apply it using L_shr */
-#else
- IF( prev_scale <= 0 || GT_32( Mult_32_16( prev_scale, sc_factor ) /*Q30 -> Q31*/, scale /*Q31*/ ) )
-#endif
#else
test();
IF( prev_scale <= 0 || GT_32( Mult_32_16( prev_scale, 64 ) /*Q30 -> Q31*/, scale /*Q31*/ ) )
@@ -6182,20 +6008,12 @@ void non_linearity_ivas_fx(
tmp = div_s( shl( 1, sub( 14, exp ) ), j ); /* Q(29-exp) */
/* (log2(scale / prev_scale))/length */
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shl_sat( Mult_32_16( L_tmp, tmp ), sub( exp, 14 ) ); /* Q(16+29-exp+1-16+exp-14)->Q16 */
-#else
- L_tmp = L_shl_o( Mult_32_16( L_tmp, tmp ), sub( exp, 14 ), &Overflow ); /* Q(16+29-exp+1-16+exp-14)->Q16 */
-#endif
frac = L_Extract_lc( L_tmp, &exp ); /* Extract exponent of L_tmp */
tmp = extract_l( Pow2( 14, frac ) );
-#ifdef ISSUE_1836_replace_overflow_libcom
scale_step = shl_sat( tmp, exp ); /* Q14 */
-#else
- scale_step = shl_o( tmp, exp, &Overflow ); /* Q14 */
-#endif
}
}
@@ -6218,12 +6036,8 @@ void non_linearity_ivas_fx(
IF( GT_16( max_val, shl_sat( 1, Q_inp ) ) )
{
exp = norm_s( max_val );
- tmp = div_s( shl( 1, sub( 14, exp ) ), max_val ); /* Q(29-exp-Q_inp) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ tmp = div_s( shl( 1, sub( 14, exp ) ), max_val ); /* Q(29-exp-Q_inp) */
scale = L_shl_sat( L_mult( 21955, tmp ), add( exp, sub( Q_inp, 14 ) ) ); /* Q31 */
-#else
- scale = L_shl_o( L_mult( 21955, tmp ), add( exp, sub( Q_inp, 14 ) ), &Overflow ); /* Q31 */
-#endif
}
ELSE
{
@@ -6232,23 +6046,12 @@ void non_linearity_ivas_fx(
}
#ifdef NONBE_1328_FIX_NON_LINEARITY
-#ifdef FIX_2000_NON_LINEARITY_OVERSHOOT
/* if ( element_mode > EVS_MONO ) */ /* element mode is not needed because the function is duplicated for IVAS */
sc_factor = s_max( sub( 12, norm_s( add( sub( j, length_half ), 1 ) ) ), 0 ); /* allowed intra frame jump is smaller */
sc_factor = s_max( sc_factor, 1 ); /* Note: The sc_factor is the log2 of the sc_factor in the float code to simplify condition below */
-#else
- /* sc_factor = 32; */ /* Here we divide prev_scale, so 32 == 2 << (15-10) 1024.0 corresponds to 10 bits and 32 to 5 bits */
- /* if ( element_mode > EVS_MONO ) */ /* element mode is not needed because the function is duplicated for IVAS */
- sc_factor = shl_sat( 1, sub( 16, max( 12 - norm_s( add( j, 1 ) ), 0 ) ) ); /* Adapt the scaling factor allowed depending of max position */
- sc_factor = s_max( s_min( sc_factor, 16384 ), 2 * 32 ); /* note: The thresholding is purposely different between float and BASOP implementations. */
-#endif
test();
-#ifdef FIX_2000_NON_LINEARITY_OVERSHOOT
IF( prev_scale <= 0 || GT_32( L_shr( prev_scale, sub( sc_factor, 1 ) /*Q30 -> Q31*/ ), scale /*Q31*/ ) ) /* Since the sc_factor is the log2 of sc_factor in float, we apply it using L_shr */
-#else
- IF( prev_scale <= 0 || GT_32( Mult_32_16( prev_scale, sc_factor ) /*Q30 -> Q31*/, scale /*Q31*/ ) )
-#endif
#else
IF( prev_scale <= 0 || GT_32( Mult_32_16( prev_scale, 64 ), scale ) )
#endif
@@ -6283,28 +6086,15 @@ void non_linearity_ivas_fx(
L_tmp = L_sub( L_tmp, L_tmp1 ); /* Q16 */
/* Computing 1/(j - length/2) */
-
tmp = sub( j, length_half );
exp = norm_s( tmp );
-
-
tmp = div_s( shl( 1, sub( 14, exp ) ), tmp ); /* Q(29-exp) */
/* (log2(scale / prev_scale))/length */
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shl_sat( Mult_32_16( L_tmp, tmp ), sub( exp, 14 ) ); /*Q(16+29-exp+1-16+exp-14)->Q16 */
-#else
- L_tmp = L_shl_o( Mult_32_16( L_tmp, tmp ), sub( exp, 14 ), &Overflow ); /*Q(16+29-exp+1-16+exp-14)->Q16 */
-#endif
-
- frac = L_Extract_lc( L_tmp, &exp ); /* Extract exponent of L_tmp */
-
+ frac = L_Extract_lc( L_tmp, &exp ); /* Extract exponent of L_tmp */
tmp = extract_l( Pow2( 14, frac ) );
-#ifdef ISSUE_1836_replace_overflow_libcom
scale_step = shl_sat( tmp, exp ); /*Q14 */
-#else
- scale_step = shl_o( tmp, exp, &Overflow ); /*Q14 */
-#endif
}
}
@@ -6566,7 +6356,7 @@ void wb_tbe_extras_reset_synth_fx(
*-------------------------------------------------------------------*/
void elliptic_bpf_48k_generic_fx(
- const int16_t element_mode,
+ const Word16 element_mode,
Word16 IsUpsampled3,
Word16 input_fx[], /* i : input signal Q_input_fx*/
Word16 *Q_input_fx,
@@ -6884,7 +6674,7 @@ void synthesise_fb_high_band_fx(
Word32 bpf_memory[][4], /* i/o: memory for elliptic bpf 48k */
Word16 bpf_memory_Q[],
Word16 Qout,
- int16_t element_mode )
+ Word16 element_mode )
{
Word16 i, j;
Word16 excitation_in_interp3_buffer[L_FRAME48k + 4];
@@ -7039,12 +6829,6 @@ void Estimate_mix_factors_fx(
Word16 exp1, exp2, expa, expb, fraca, fracb, scale, num_flag, den_flag;
Word16 tmp, tmp1, sc1, sc2;
Word32 L_tmp1, L_tmp2;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
Copy( shb_res, shb_res_local, L_FRAME16k );
Copy( White_exc16k_frac, WN_exc_local, L_FRAME16k );
@@ -7102,11 +6886,7 @@ void Estimate_mix_factors_fx(
expa = sub( 30, expa );
expb = norm_l( temp_p1_p2 );
-#ifdef ISSUE_1836_replace_overflow_libcom
fracb = round_fx_sat( L_shl( temp_p1_p2, expb ) );
-#else
- fracb = round_fx_o( L_shl_o( temp_p1_p2, expb, &Overflow ), &Overflow );
-#endif
expb = sub( 30, expb );
num_flag = 0;
@@ -7206,18 +6986,16 @@ void prep_tbe_exc_fx(
Word16 bwe_exc_fx[], /* i/o: excitation for TBE Q_exc*/
const Word16 gain_preQ_fx, /* i : prequantizer excitation gain */
const Word16 code_preQ_fx[], /* i : prequantizer excitation */
-#ifdef FIX_2010_PREP_TBE_EXC
- const Word16 Q_code_preQ, /* i : Q, prequantizer excitation */
-#endif
- const Word16 Q_exc, /* i : Excitation, bwe_exc Q-factor */
- const Word16 T0, /* i : integer pitch variables Q0 */
- const Word16 T0_frac, /* i : Fractional pitch variables Q0*/
- const Word16 coder_type, /* i : coding type */
- const Word32 core_brate, /* i : core bitrate */
- const Word16 element_mode, /* i : element mode */
- const Word16 idchan, /* i : channel ID */
- const Word16 flag_TD_BWE, /* i : flag indicating whether hTD_BWE exists */
- const Word16 tdm_LRTD_flag /* i : LRTD stereo mode flag */
+ const Word16 Q_code_preQ, /* i : Q, prequantizer excitation */
+ const Word16 Q_exc, /* i : Excitation, bwe_exc Q-factor */
+ const Word16 T0, /* i : integer pitch variables Q0 */
+ const Word16 T0_frac, /* i : Fractional pitch variables Q0*/
+ const Word16 coder_type, /* i : coding type */
+ const Word32 core_brate, /* i : core bitrate */
+ const Word16 element_mode, /* i : element mode */
+ const Word16 idchan, /* i : channel ID */
+ const Word16 flag_TD_BWE, /* i : flag indicating whether hTD_BWE exists */
+ const Word16 tdm_LRTD_flag /* i : LRTD stereo mode flag */
)
{
@@ -7233,12 +7011,6 @@ void prep_tbe_exc_fx(
Word32 L_tmp, Ltemp1, Ltemp2;
Word32 tempQ31;
Word16 tempQ15;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/**voice_factors = VF_0th_PARAM + VF_1st_PARAM * voice_fac + VF_2nd_PARAM * voice_fac * voice_fac;
= VF_0th_PARAM + voice_fac * (VF_1st_PARAM + VF_2nd_PARAM * voice_fac )
@@ -7252,11 +7024,7 @@ void prep_tbe_exc_fx(
tmp = MAX_16;
move16();
-#ifdef ISSUE_1836_replace_overflow_libcom
pitch = shl_sat( add( shl_sat( T0, 2 ), T0_frac ), 5 ); /* Q7 */
-#else
- pitch = shl_o( add( shl_o( T0, 2, &Overflow ), T0_frac ), 5, &Overflow ); /* Q7 */
-#endif
test();
test();
@@ -7285,8 +7053,7 @@ void prep_tbe_exc_fx(
IF( EQ_16( L_frame_fx, L_FRAME ) )
{
- interp_code_5over2_fx( code_fx, tmp_code_fx, L_subfr ); /* code: Q9, tmp_code: Q9 */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ interp_code_5over2_fx( code_fx, tmp_code_fx, L_subfr ); /* code: Q9, tmp_code: Q9 */
gain_code16 = round_fx_sat( L_shl_sat( gain_code_fx, Q_exc ) ); /*Q_exc */
FOR( i = 0; i < L_subfr * HIBND_ACB_L_FAC; i++ )
{
@@ -7297,60 +7064,30 @@ void prep_tbe_exc_fx(
bwe_exc_fx[i + i_subfr_fx * HIBND_ACB_L_FAC] = round_fx_sat( L_tmp ); /*Q_exc */
move16();
}
-#else
- gain_code16 = round_fx_o( L_shl_o( gain_code_fx, Q_exc, &Overflow ), &Overflow ); /*Q_exc */
- FOR( i = 0; i < L_subfr * HIBND_ACB_L_FAC; i++ )
- {
- L_tmp = L_mult( gain_code16, tmp_code_fx[i] ); /* Q9 + Q_exc + 1*/
- L_tmp = L_shl_o( L_tmp, 5, &Overflow ); /* Q9 + Q_exc + Q6*/
- L_tmp = L_mac_o( L_tmp, gain_pit_fx, bwe_exc_fx[i + i_subfr_fx * HIBND_ACB_L_FAC], &Overflow ); /*Q15+Q_exc */
- L_tmp = L_shl_o( L_tmp, 1, &Overflow ); /*16+Q_exc */ /* saturation can occur here */
- bwe_exc_fx[i + i_subfr_fx * HIBND_ACB_L_FAC] = round_fx_o( L_tmp, &Overflow ); /*Q_exc */
- move16();
- }
-#endif
}
ELSE
{
Word16 shift = 4;
-#ifdef FIX_2010_PREP_TBE_EXC
- /* multrus 2025-09-15
- TODO:
- - leave shift = 4, since this is legacy code from EVS;
- - check with vaillancourt, whether we really have a different scaling of code_preQ_fx[] for IVAS
- - if the different scalings are confirmed, this condition could be simplified
- */
IF( NE_16( element_mode, EVS_MONO ) )
{
/* shift of 4 assumes code_preQ_fx[] in Q10 - this is however not always given */
shift = add( 2 + 1 - 1, Q_code_preQ ); /* gain_preQ_fx in Q2, code_preQ_fx[] in Q_code_preQ, 1 additional left-shift by L_mult() - factor of 2 (from "2 * gain_preQ * code_preQ[i]") */
shift = sub( 16, shift );
}
-#endif
+
move16();
IF( gain_preQ_fx != 0 )
{
FOR( i = 0; i < L_subfr; i++ )
{
/*code in the encoder is Q9 and there is no <<1 with Mult_32_16 Q16 * Q9 -> Q9 */
- Ltemp1 = Mult_32_16( gain_code_fx, code_fx[i] ); /* Q16 + Q9 + 1 - 16 = Q10 */
-#ifdef FIX_2010_PREP_TBE_EXC
+ Ltemp1 = Mult_32_16( gain_code_fx, code_fx[i] ); /* Q16 + Q9 + 1 - 16 = Q10 */
Ltemp2 = L_mult( gain_preQ_fx, code_preQ_fx[i] ); /* Q2 + Q_code_preQ */
-#else
- Ltemp2 = L_mult( gain_preQ_fx, code_preQ_fx[i] ); /*Q2 * Q10 -> Q12 */
-#endif
-#ifdef ISSUE_1836_replace_overflow_libcom
Ltemp1 = L_shl_sat( Ltemp1, add( Q_exc, 6 ) /*Q_exc+16-19*/ ); /*Q_exc+16 */
Ltemp2 = L_shl_sat( Ltemp2, add( Q_exc, shift ) /*Q_exc+ 2 + 6 (or) 10 - 13*/ ); /*Q_exc+16 */
tmp_code_preInt_fx[i] = round_fx_sat( L_add_sat( Ltemp1, Ltemp2 ) ); /* Q_exc */
-#else
- Ltemp1 = L_shl_o( Ltemp1, add( Q_exc, 6 ) /*Q_exc+16-19*/, &Overflow ); /*Q_exc+16 */
- Ltemp2 = L_shl_o( Ltemp2, add( Q_exc, shift ) /*Q_exc+ 2 + 6 (or) 10 - 13*/, &Overflow ); /*Q_exc+16 */
-
- tmp_code_preInt_fx[i] = round_fx_o( L_add_o( Ltemp1, Ltemp2, &Overflow ), &Overflow ); /* Q_exc */
-#endif
move16();
}
}
@@ -7359,14 +7096,9 @@ void prep_tbe_exc_fx(
FOR( i = 0; i < L_subfr; i++ )
{
/*code in the encoder is Q9 and there is no <<1 with Mult_32_16 Q16 * Q9 -> Q9 */
- Ltemp1 = Mult_32_16( gain_code_fx, code_fx[i] ); /* Q16 + Q9 + 1 - 16 = Q10 */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ Ltemp1 = Mult_32_16( gain_code_fx, code_fx[i] ); /* Q16 + Q9 + 1 - 16 = Q10 */
Ltemp1 = L_shl_sat( Ltemp1, add( Q_exc, 6 ) /*Q_exc+16-19*/ ); /*Q_exc+16 */
tmp_code_preInt_fx[i] = round_fx_sat( Ltemp1 ); /* Q_exc */
-#else
- Ltemp1 = L_shl_o( Ltemp1, add( Q_exc, 6 ) /*Q_exc+16-19*/, &Overflow ); /*Q_exc+16 */
- tmp_code_preInt_fx[i] = round_fx_o( Ltemp1, &Overflow ); /* Q_exc */
-#endif
move16();
}
}
@@ -7374,15 +7106,9 @@ void prep_tbe_exc_fx(
interp_code_4over2_fx( tmp_code_preInt_fx, tmp_code_fx, L_subfr ); /* o: tmp_code in Q_exc */
FOR( i = 0; i < shl( L_subfr, 1 ); i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_mult( gain_pit_fx, bwe_exc_fx[i + ( i_subfr_fx << 1 )] ); /*Q14+Q_exc+1 */
tmp = round_fx_sat( L_shl_sat( L_tmp, 1 /* (Q_exc+16)-(14+Q_exc+1)*/ ) ); /* tmp in Q_exc */
bwe_exc_fx[i + ( i_subfr_fx << 1 )] = add_sat( tmp, tmp_code_fx[i] ); /*Q_exc */
-#else
- L_tmp = L_mult( gain_pit_fx, bwe_exc_fx[i + shl( i_subfr_fx, 1 )] ); /*Q14+Q_exc+1 */
- tmp = round_fx_o( L_shl_o( L_tmp, 1 /* (Q_exc+16)-(14+Q_exc+1)*/, &Overflow ), &Overflow ); /* tmp in Q_exc */
- bwe_exc_fx[i + shl( i_subfr_fx, 1 )] = add_o( tmp, tmp_code_fx[i], &Overflow ); /*Q_exc */
-#endif
move16();
}
}
@@ -7418,11 +7144,6 @@ Word16 swb_formant_fac_fx(
{
Word16 formant_fac;
Word16 tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/* Smoothen tilt value */
/* tmp = 0.5f * (float)fabs(lpc_shb2) + 0.5f * *tilt_mem; */
@@ -7449,11 +7170,8 @@ Word16 swb_formant_fac_fx(
/* formant_fac = 1.0f - 0.5f*formant_fac */
tmp = mult_r( 16384, formant_fac ); /* 0.5 in Q15 */
-#ifdef ISSUE_1836_replace_overflow_libcom
formant_fac = shl_sat( sub( 4096 /* 1 in Q12 */, tmp ), 3 );
-#else
- formant_fac = shl_o( sub( 4096 /* 1 in Q12 */, tmp ), 3, &Overflow );
-#endif
+
return formant_fac; /*Q15 */
}
diff --git a/lib_com/syn_filt_fx.c b/lib_com/syn_filt_fx.c
index 891314fe216ecb025a0fd8f61e0ccca98ada73c1..cfa254042c6c823b921156e0265d369e40ffffa4 100644
--- a/lib_com/syn_filt_fx.c
+++ b/lib_com/syn_filt_fx.c
@@ -11,16 +11,8 @@
static Word32 syn_kern_2( Word32 L_tmp, const Word16 a[], const Word16 y[] )
{
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
- L_tmp = L_msu_o( L_tmp, y[-1], a[1], &Overflow );
- return L_msu_o( L_tmp, y[-2], a[2], &Overflow );
-#else
L_tmp = L_msu_sat( L_tmp, y[-1], a[1] );
return L_msu_sat( L_tmp, y[-2], a[2] );
-#endif
}
static Word32 syn_kern_4( Word32 L_tmp, const Word16 a[], const Word16 y[] )
@@ -340,18 +332,20 @@ void syn_filt_fx32(
* Returns:
* void
*/
-void E_UTIL_synthesis( const Word16 shift, const Word16 a[], const Word16 x[], Word16 y[], const Word16 lg, Word16 mem[], const Word16 update, const Word16 m )
+void E_UTIL_synthesis(
+ const Word16 shift,
+ const Word16 a[],
+ const Word16 x[],
+ Word16 y[],
+ const Word16 lg,
+ Word16 mem[],
+ const Word16 update,
+ const Word16 m )
{
Word16 i, j, a0;
Word32 L_tmp;
Word16 q;
Word32 ( *syn_kern )( Word32 L_tmp, const Word16 a[], const Word16 y[] ) = NULL;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
if ( EQ_16( m, 6 ) )
{
@@ -384,13 +378,8 @@ void E_UTIL_synthesis( const Word16 shift, const Word16 a[], const Word16 x[], W
*-----------------------------------------------------------------------*/
/* Filtering Only from Input + Memory */
L_tmp = syn_kern( L_mult( a0, *x++ ), a, mem );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shl_sat( L_tmp, q );
*y++ = round_fx_sat( L_tmp );
-#else
- L_tmp = L_shl_o( L_tmp, q, &Overflow );
- *y++ = round_fx_o( L_tmp, &Overflow );
-#endif
move16();
/* Filtering from Input + Mix of Memory & Output Signal Past */
@@ -400,24 +389,15 @@ void E_UTIL_synthesis( const Word16 shift, const Word16 a[], const Word16 x[], W
/* Process Output Signal Past */
FOR( j = 1; j <= i; j++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_msu_sat( L_tmp, a[j], y[-j] );
-#else
- L_tmp = L_msu_o( L_tmp, a[j], y[-j], &Overflow );
-#endif
}
/* Process Memory */
FOR( ; j <= m; j++ )
{
L_tmp = L_msu_sat( L_tmp, a[j], mem[i - j] );
}
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shl_sat( L_tmp, q );
*y++ = round_fx_sat( L_tmp );
-#else
- L_tmp = L_shl_o( L_tmp, q, &Overflow );
- *y++ = round_fx_o( L_tmp, &Overflow );
-#endif
move16();
}
@@ -425,13 +405,8 @@ void E_UTIL_synthesis( const Word16 shift, const Word16 a[], const Word16 x[], W
FOR( ; i < lg; i++ )
{
L_tmp = syn_kern( L_mult( a0, *x++ ), a, y );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shl_sat( L_tmp, q );
*y++ = round_fx_sat( L_tmp );
-#else
- L_tmp = L_shl_o( L_tmp, q, &Overflow );
- *y++ = round_fx_o( L_tmp, &Overflow );
-#endif
move16();
}
@@ -471,17 +446,21 @@ void E_UTIL_synthesis( const Word16 shift, const Word16 a[], const Word16 x[], W
* Returns:
* void
*/
-void E_UTIL_synthesis_fx( const Word16 shift, const Word32 a[], const Word32 x[], Word32 y[], const Word16 lg, Word32 mem[], const Word16 update, const Word16 m )
+void E_UTIL_synthesis_fx(
+ const Word16 shift,
+ const Word32 a[],
+ const Word32 x[],
+ Word32 y[],
+ const Word16 lg,
+ Word32 mem[],
+ const Word16 update,
+ const Word16 m )
{
Word16 i, j;
Word32 a0;
Word32 L_tmp;
Word16 q;
Word32 ( *syn_kern )( Word32 L_tmp, const Word32 a[], const Word32 y[] ) = NULL;
-#ifndef ISSUE_1836_replace_overflow_libcom
- Flag Overflow = 0;
- move32();
-#endif
if ( EQ_16( m, 6 ) )
{
@@ -508,22 +487,14 @@ void E_UTIL_synthesis_fx( const Word16 shift, const Word32 a[], const Word32 x[]
*-----------------------------------------------------------------------*/
mem += m; /*move32();*/
-#ifdef ISSUE_1836_replace_overflow_libcom
a0 = L_shr_sat( a[0], shift ); /* input / 2^shift */
-#else
- a0 = L_shr_o( a[0], shift, &Overflow ); /* input / 2^shift */
-#endif
/*-----------------------------------------------------------------------*
* Do the filtering
*-----------------------------------------------------------------------*/
/* Filtering Only from Input + Memory */
L_tmp = syn_kern( Mpy_32_32( a0, *x++ ), a, mem );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shl_sat( L_tmp, q );
-#else
- L_tmp = L_shl_o( L_tmp, q, &Overflow );
-#endif
*y++ = L_tmp;
move32();
@@ -541,11 +512,7 @@ void E_UTIL_synthesis_fx( const Word16 shift, const Word32 a[], const Word32 x[]
{
L_tmp = Msub_32_32_r( L_tmp, a[j], mem[i - j] );
}
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shl_sat( L_tmp, q );
-#else
- L_tmp = L_shl_o( L_tmp, q, &Overflow );
-#endif
*y++ = L_tmp;
move32();
}
@@ -554,11 +521,7 @@ void E_UTIL_synthesis_fx( const Word16 shift, const Word32 a[], const Word32 x[]
FOR( ; i < lg; i++ )
{
L_tmp = syn_kern( Mpy_32_32( a0, *x++ ), a, y );
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_shl_sat( L_tmp, q );
-#else
- L_tmp = L_shl_o( L_tmp, q, &Overflow );
-#endif
*y++ = L_tmp;
move32();
}
diff --git a/lib_com/tcx_ltp_fx.c b/lib_com/tcx_ltp_fx.c
index d9112ffa04ec74421beef4149d3a44d369762dd1..a584de16a44a3c19fffa68bb3f4127f40be88e20 100644
--- a/lib_com/tcx_ltp_fx.c
+++ b/lib_com/tcx_ltp_fx.c
@@ -375,6 +375,8 @@ static void tcx_ltp_get_zir_fx(
move32();
alpha = sub( alpha, step );
}
+
+ return;
}
void predict_signal(
@@ -389,12 +391,7 @@ void predict_signal(
Word16 j;
Word32 s;
const Word16 *x0, *win;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
x0 = &excI[-T0 - 1];
frac = negate( frac );
@@ -410,21 +407,16 @@ void predict_signal(
FOR( j = 0; j < L_subfr; j++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
s = L_mult_sat( win[0], x0[0] ); /* Qx + 16 */
s = L_mac_sat( s, win[1], x0[1] ); /* Qx + 16 */
s = L_mac_sat( s, win[2], x0[2] ); /* Qx + 16 */
excO[j] = mac_r_sat( s, win[3], x0[3] ); /* Qx + 16 */
-#else
- s = L_mult_o( win[0], x0[0], &Overflow ); /* Qx + 16 */
- s = L_mac_o( s, win[1], x0[1], &Overflow ); /* Qx + 16 */
- s = L_mac_o( s, win[2], x0[2], &Overflow ); /* Qx + 16 */
- excO[j] = mac_ro( s, win[3], x0[3], &Overflow ); /* Qx + 16 */
-#endif
move16();
x0++;
}
+
+ return;
}
static void tcx_ltp_synth_filter(
@@ -492,7 +484,6 @@ static void tcx_ltp_synth_filter(
step = negate( step );
}
-#ifdef OPT_TCXLTP_FILTER_LOOP
IF( zir != NULL )
{
IF( fade != 0 )
@@ -640,57 +631,16 @@ static void tcx_ltp_synth_filter(
}
}
}
-#else
- FOR( j = 0; j < length; j++ )
- {
- s = L_deposit_l( 0 );
- s2 = L_deposit_l( 0 );
- k = 0;
- move16();
- FOR( i = 0; i < L; i++ )
- {
- s = L_mac_sat( L_mac_sat( s, w0[k], x0[i] ), w1[k], x1[-i] ); /* Qx */
- s2 = L_mac_sat( L_mac_sat( s2, v0[k], y0[i] ), v1[k], y1[-i] ); /* Qx */
- k = k + pitch_res;
- }
-
- /* s2 *= ALPHA;
- normal: synth_ltp[j] = synth[j] - gain * s2 + gain * s;
- zir: synth_ltp[j] = synth[j] - gain * s2 + gain * s - zir[j];
- fade-in/out: synth_ltp[j] = synth[j] - alpha * gain * s2 + alpha * gain * s; */
- i = sub_sat( round_fx_sat( s ), mult_r_sat( round_fx_sat( s2 ), ALPHA ) ); /* Qx */
- k = mult_r( gain, i ); /* Qx */
- if ( fade != 0 )
- k = mult_r( k, alpha ); /* Qx */
- k = add_sat( synth[j], k ); /* Qx */
- if ( zir != NULL )
- {
- k = sub_sat( k, zir[j] ); /* Qx */
- }
-
- synth_ltp[j] = k; /* Qx */
- move16();
-
- BASOP_SATURATE_WARNING_OFF_EVS;
- if ( fade != 0 )
- {
- alpha = add_sat( alpha, step );
- }
- BASOP_SATURATE_WARNING_ON_EVS;
-
- x0++;
- x1++;
- y0++;
- y1++;
- }
-#endif
}
ELSE
{
Copy( synth, synth_ltp, length ); /* Qx */
}
+
+ return;
}
+
static void tcx_ltp_synth_filter32(
Word32 *synth_ltp, /* Qx */
Word32 *synth, /* Qx */
@@ -752,10 +702,11 @@ static void tcx_ltp_synth_filter32(
}
if ( fade < 0 )
+ {
step = negate( step );
+ }
}
-#ifdef OPT_TCXLTP_FILTER_LOOP
IF( fade != 0 )
{
IF( zir != NULL )
@@ -902,57 +853,16 @@ static void tcx_ltp_synth_filter32(
}
}
}
-#else
- FOR( j = 0; j < length; j++ )
- {
- s = L_deposit_l( 0 );
- s2 = L_deposit_l( 0 );
- k = 0;
- move16();
- FOR( i = 0; i < L; i++ )
- {
- s = Madd_32_16_r( Madd_32_16_r( s, x0[i], w0[k] ), x1[-i], w1[k] ); /* Qx */
- s2 = Madd_32_16_r( Madd_32_16_r( s2, y0[i], v0[k] ), y1[-i], v1[k] ); /* Qx */
- k = k + pitch_res;
- }
-
- /* s2 *= ALPHA;
- normal: synth_ltp[j] = synth[j] - gain * s2 + gain * s;
- zir: synth_ltp[j] = synth[j] - gain * s2 + gain * s - zir[j];
- fade-in/out: synth_ltp[j] = synth[j] - alpha * gain * s2 + alpha * gain * s; */
- L_tmp = L_sub_sat( s, Mpy_32_16_r( s2, ALPHA ) ); /* Qx */
- L_tmp2 = Mpy_32_16_r( L_tmp, gain ); /* Qx */
- IF( fade != 0 )
- L_tmp2 = Mpy_32_16_r( L_tmp2, alpha ); /* Qx */
- L_tmp2 = L_add_sat( synth[j], L_tmp2 ); /* Qx */
- if ( zir != NULL )
- {
- L_tmp2 = L_sub_sat( L_tmp2, zir[j] ); /* Qx */
- }
-
- synth_ltp[j] = L_tmp2; /* Qx */
- move16();
-
- BASOP_SATURATE_WARNING_OFF_EVS;
- if ( fade != 0 )
- {
- alpha = add_sat( alpha, step );
- }
- BASOP_SATURATE_WARNING_ON_EVS;
-
- x0++;
- x1++;
- y0++;
- y1++;
- }
-#endif
}
ELSE
{
Copy32( synth, synth_ltp, length ); /* Qx */
}
+
+ return;
}
+
static void tcx_ltp_synth_filter_10(
Word16 *out, /* Qx */
Word16 *in, /* Qx */
diff --git a/lib_com/tcx_mdct_fx.c b/lib_com/tcx_mdct_fx.c
index 29827b9356a4a659b723b083d3402555cfb6770e..475a0079c74117488f23cebe48365dd3d8e611d1 100644
--- a/lib_com/tcx_mdct_fx.c
+++ b/lib_com/tcx_mdct_fx.c
@@ -107,19 +107,13 @@ void TCX_MDCT(
Word16 factor, neg_factor;
Word16 factor_e;
(void) element_mode;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
factor = TCX_MDCT_GetScaleFactor( add( add( shr( l, 1 ), m ), shr( r, 1 ) ), &factor_e );
*y_e = add( *y_e, factor_e );
move16();
neg_factor = negate( factor );
-
/* Init */
FOR( i = 0; i < m / 2; i++ )
{
@@ -128,11 +122,7 @@ void TCX_MDCT(
}
FOR( i = 0; i < l / 2; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
y[m / 2 + r / 2 + m / 2 + i] = L_msu_sat( L_mult( x[i], factor ), x[l - 1 - i], factor ); /* exp(y_e) */
-#else
- y[m / 2 + r / 2 + m / 2 + i] = L_msu_o( L_mult( x[i], factor ), x[l - 1 - i], factor, &Overflow ); /* exp(y_e) */
-#endif
move32();
}
FOR( i = 0; i < m / 2; i++ )
@@ -142,11 +132,7 @@ void TCX_MDCT(
}
FOR( i = 0; i < r / 2; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
y[m / 2 + r / 2 - 1 - m / 2 - i] = L_mac_sat( L_mult( x[l + m + i], neg_factor ), x[l + m + r - 1 - i], neg_factor ); /* exp(y_e) */
-#else
- y[m / 2 + r / 2 - 1 - m / 2 - i] = L_mac_o( L_mult( x[l + m + i], neg_factor ), x[l + m + r - 1 - i], neg_factor, &Overflow ); /* exp(y_e) */
-#endif
move32();
}
@@ -173,12 +159,7 @@ void TCX_MDST(
Word16 factor, neg_factor;
Word16 factor_e;
(void) element_mode;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
factor = TCX_MDCT_GetScaleFactor( add( add( shr( l, 1 ), m ), shr( r, 1 ) ), &factor_e ); /* exp(factor_e) */
*y_e = add( *y_e, factor_e );
move16();
@@ -194,11 +175,7 @@ void TCX_MDST(
}
FOR( i = 0; i < l / 2; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
y[m / 2 + r / 2 + m / 2 + i] = L_msu_sat( L_mult( x[i], neg_factor ), x[l - 1 - i], factor ); /* exp(y_e) */
-#else
- y[m / 2 + r / 2 + m / 2 + i] = L_msu_o( L_mult( x[i], neg_factor ), x[l - 1 - i], factor, &Overflow ); /* exp(y_e) */
-#endif
move32();
}
FOR( i = 0; i < m / 2; i++ )
diff --git a/lib_com/tcx_utils_fx.c b/lib_com/tcx_utils_fx.c
index 326ec622160e3281067d2dc8c507261401dfd77a..a6b32f31040b2c362336ad848a422d6b3b622a40 100644
--- a/lib_com/tcx_utils_fx.c
+++ b/lib_com/tcx_utils_fx.c
@@ -681,10 +681,6 @@ void lpc2mdct(
const PWord16 *ptwiddle;
Word32 workBuffer[2 * BASOP_CFFT_MAX_LENGTH];
-#ifndef IVAS_CODE_TCX_UTIL
- (void) noInverse;
-#endif
-
assert( length <= FDNS_NPTS );
sizeN = shl( length, 1 ); /*Q0*/
@@ -709,28 +705,17 @@ void lpc2mdct(
move32();
}
- move16();
-#ifdef IVAS_CODE_TCX_UTIL
if ( noInverse )
{
- /* half length FFT */
- scale = add( norm_s( lpcCoeffs[0] ), 1 );
- BASOP_cfft( (cmplx *) ComplexData, FDNS_NPTS, &scale, workBuffer ); // tbv -> In float the fft type changes as well
- /*Get amplitude*/
- j = sub( length, 1 );
- k = 0;
- for ( i = 0; i < length; i++ )
- {
- mdct_gains[i] = (float) ( sqrt( RealData[i] * RealData[i] + ImagData[i] * ImagData[i] ) );
- }
+ assert( !"not supported option in lpc2mdct()" );
}
else
-#endif
{
/* half length FFT */
scale = add( norm_s( lpcCoeffs[0] ), 1 );
BASOP_cfft( (cmplx *) ComplexData, FDNS_NPTS, &scale, workBuffer ); /*Q31 - scale*/
- /*Get amplitude*/
+
+ /* Get amplitude */
j = sub( length, 1 );
k = 0;
FOR( i = 0; i < length / 2; i++ )
@@ -991,11 +976,6 @@ void mdct_shaping(
Word32 *px = x; /*Qx*/
Word16 const *pgains = gains;
Word16 const *pgainsexp = gains_exp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/* FDNS_NPTS = 64 */
k = shr( lg, 6 ); /*Q0*/
@@ -1046,11 +1026,7 @@ void mdct_shaping(
FOR( l = 0; l < k; l++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
*x = L_shl_sat( Mpy_32_16_r( *x, *gains ), *gains_exp ); /*Qx*/
-#else
- *x = L_shl_o( Mpy_32_16_r( *x, *gains ), *gains_exp, &Overflow ); /*Qx*/
-#endif
move32();
x++;
}
@@ -1069,11 +1045,7 @@ void mdct_shaping(
gains_exp = pgainsexp;
FOR( i = 0; i < FDNS_NPTS; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
*x = L_shl_sat( Mpy_32_16_r( *x, *gains ), *gains_exp ); /*Qx*/
-#else
- *x = L_shl_o( Mpy_32_16_r( *x, *gains ), *gains_exp, &Overflow ); /*Qx*/
-#endif
move32();
x += k;
gains++;
@@ -1399,12 +1371,6 @@ void PsychAdaptLowFreqDeemph(
Word16 i;
Word16 max_val, max_e, fac, min, min_e, tmp, tmp_e;
Word32 L_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
-
assert( lpcGains[0] >= 0x4000 );
@@ -1445,21 +1411,13 @@ void PsychAdaptLowFreqDeemph(
/* fac = tmp = (float)pow(max_val / min, 0.0078125f); */
tmp_e = min_e;
move16();
- tmp = Inv16( min, &tmp_e ); /*Q15 - tmp_e*/
-#ifdef FIX_1984_SAT_IN_PSYCHAD
+ tmp = Inv16( min, &tmp_e ); /*Q15 - tmp_e*/
L_tmp = L_shl_sat( L_mult_sat( tmp, max_val ), add( tmp_e, max_e ) ); /* Q31 */
-#else
- L_tmp = L_shl( L_mult( tmp, max_val ), add( tmp_e, max_e ) ); /* Q31 */
-#endif
- L_tmp = BASOP_Util_Log2( L_tmp ); /* Q25 */
- L_tmp = L_shr( L_tmp, 7 ); /* 0.0078125f = 1.f/(1<<7) */
- L_tmp = BASOP_Util_InvLog2( L_tmp ); /* Q31 */
-#ifdef ISSUE_1836_replace_overflow_libcom
- tmp = round_fx_sat( L_tmp ); /* Q15 */
-#else
- tmp = round_fx_o( L_tmp, &Overflow ); /* Q15 */
-#endif
- fac = tmp; /* Q15 */
+ L_tmp = BASOP_Util_Log2( L_tmp ); /* Q25 */
+ L_tmp = L_shr( L_tmp, 7 ); /* 0.0078125f = 1.f/(1<<7) */
+ L_tmp = BASOP_Util_InvLog2( L_tmp ); /* Q31 */
+ tmp = round_fx_sat( L_tmp ); /* Q15 */
+ fac = tmp; /* Q15 */
move16();
/* gradual lowering of lowest 32 bins; DC is lowered by (max_val/tmp)^1/4 */
@@ -2049,7 +2007,6 @@ void InitTnsConfigs_ivas_fx(
InitTnsConfiguration_ivas_fx( bwidth, add( L_frame, shr( L_frame, 2 ) ), &tnsConfig[1][1], igfStopFreq, total_brate, element_mode, MCT_flag );
}
-
void SetTnsConfig(
TCX_CONFIG_HANDLE hTcxCfg, /* i : configuration of TCX */
const Word16 isTCX20, /*Q0*/
@@ -2059,8 +2016,7 @@ void SetTnsConfig(
hTcxCfg->pCurrentTnsConfig = &hTcxCfg->tnsConfig[isTCX20][isAfterACELP];
assert( hTcxCfg->pCurrentTnsConfig != NULL );
}
-#define IVAS_CODE_TCX_UTIL
-#ifdef IVAS_CODE_TCX_UTIL
+
/*-------------------------------------------------------------------*
* SetAllowTnsOnWhite
*
@@ -2082,8 +2038,6 @@ void SetAllowTnsOnWhite(
move16();
return;
}
-#endif
-#undef IVAS_CODE_TCX_UTIL
void tcx_get_gain(
Word32 *x, /* i: spectrum 1 Q31 - x_e*/
@@ -2101,11 +2055,6 @@ void tcx_get_gain(
Word32 corr, ener;
Word16 sx, sy, corr_e, ener_e;
Word16 i, tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
maxX = L_deposit_l( 1 );
maxY = L_deposit_l( 1 );
@@ -2151,11 +2100,8 @@ void tcx_get_gain(
ener = L_shl( ener, tmp ); /*Q31 - ener_e + tmp*/
ener_e = sub( ener_e, tmp );
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp = div_s( abs_s( round_fx_sat( corr ) ), round_fx_sat( ener ) ); /*Q15 - (corr_e - ener_e)*/
-#else
- tmp = div_s( abs_s( round_fx_o( corr, &Overflow ) ), round_fx_o( ener, &Overflow ) ); /*Q15 - (corr_e - ener_e)*/
-#endif
+
if ( corr < 0 )
tmp = negate( tmp );
diff --git a/lib_com/tns_base.c b/lib_com/tns_base.c
index 42c0db406dcaa7c5ecdd3341101526aaa4e4b716..54e6478d45df63fd6324ce70b84f20528e9523b5 100755
--- a/lib_com/tns_base.c
+++ b/lib_com/tns_base.c
@@ -174,7 +174,7 @@ void InitTnsConfiguration(
FOR( iFilter = 0; iFilter < pTnsConfig->nMaxFilters; iFilter++ )
{
- assert( pTnsConfig->pTnsParameters[iFilter].startLineFrequency < 0.5f * nSampleRate );
+ assert( pTnsConfig->pTnsParameters[iFilter].startLineFrequency < nSampleRate / 2 );
assert( nSampleRate <= 96000 );
move16();
startLineFilter[iFilter] = divide3232( L_mult0( frameLength, pTnsConfig->pTnsParameters[iFilter].startLineFrequency ), L_shl( nSampleRate, 14 ) );
@@ -438,13 +438,6 @@ Word16 ITF_Detect_fx(
Word32 L_tmp, tmp32;
Word16 tmpbuf[325];
Word16 n, i;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
move16();
move16();
move16();
@@ -476,11 +469,7 @@ Word16 ITF_Detect_fx(
/* Check threshold HLM_MIN_NRG */
BASOP_SATURATE_WARNING_OFF_EVS;
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp32 = L_sub( L_shl_sat( L_tmp, sub( shift, sub( 24, Q ) ) ), 4194304l /*HLM_MIN_NRG Q7*/ ); /*Q7*/
-#else
- tmp32 = L_sub( L_shl_o( L_tmp, sub( shift, sub( 24, Q ) ), &Overflow ), 4194304l /*HLM_MIN_NRG Q7*/ ); /*Q7*/
-#endif
BASOP_SATURATE_WARNING_ON_EVS;
/* get pre-shift for autocorrelation */
diff --git a/lib_com/tools_fx.c b/lib_com/tools_fx.c
index 0d60446b361124bfa23f30695332afbbe1dad29d..1be575c2410063c75a5b55b0cc2d6a3976fcc634 100644
--- a/lib_com/tools_fx.c
+++ b/lib_com/tools_fx.c
@@ -667,7 +667,7 @@ Word16 minimum_l(
*---------------------------------------------------------------------*/
/*! r: dot product of x[] and y[] */
-Word32 dotp_fixed(
+Word32 dotp_fx32(
const Word32 x[], /* i : vector x[] Qx */
const Word32 y[], /* i : vector y[] Qy */
const Word16 n /* i : vector length */
@@ -687,7 +687,7 @@ Word32 dotp_fixed(
}
/*To calculate dot product of two 32 bit arrays in case of overflow*/
-Word32 dotp_fixed_o(
+Word32 dotp_fx32_o(
const Word32 x[], /* i : vector x[] */
const Word32 y[], /* i : vector y[] */
const Word16 n, /* i : vector length */
@@ -719,7 +719,7 @@ Word32 dotp_fixed_o(
}
-Word32 dotp_fixed_32(
+Word32 dotp_fx32_fac(
const Word32 x[], /* i : vector x[] */
const Word32 y[], /* i : vector y[] */
const Word16 n, /* i : vector length */
@@ -777,12 +777,12 @@ void v_add_w64(
/*-------------------------------------------------------------------*
- * v_sub_fixed()
+ * v_sub_fx()
*
* Subtraction of two vectors sample by sample
*-------------------------------------------------------------------*/
-void v_sub_fixed(
+void v_sub_fx(
const Word32 x1[], /* i : Input vector 1 */
const Word32 x2[], /* i : Input vector 2 */
Word32 y[], /* o : Output vector that contains vector 1 - vector 2 */
@@ -801,7 +801,7 @@ void v_sub_fixed(
return;
}
-void v_sub_fixed_no_hdrm(
+void v_sub_fx_no_hdrm(
const Word32 x1[], /* i : Input vector 1 */
const Word32 x2[], /* i : Input vector 2 */
Word32 y[], /* o : Output vector that contains vector 1 - vector 2 */
@@ -820,12 +820,12 @@ void v_sub_fixed_no_hdrm(
}
/*-------------------------------------------------------------------*
- * v_multc_fixed()
+ * v_multc()
*
* Multiplication of vector by constant
*-------------------------------------------------------------------*/
-void v_multc_fixed(
+void v_multc_fx(
const Word32 x[], /* i : Input vector */
const Word32 c, /* i : Constant */
Word32 y[], /* o : Output vector that contains c*x */
@@ -843,7 +843,7 @@ void v_multc_fixed(
return;
}
-void v_multc_fixed_16(
+void v_multc_fx_16(
const Word32 x[], /* i : Input vector */
const Word16 c, /* i : Constant */
Word32 y[], /* o : Output vector that contains c*x */
@@ -861,7 +861,7 @@ void v_multc_fixed_16(
return;
}
-void v_multc_fixed_16_16(
+void v_multc_fx_16_16(
const Word16 x[], /* i : Input vector */
const Word16 c, /* i : Constant */
Word16 y[], /* o : Output vector that contains c*x */
@@ -1185,35 +1185,21 @@ Word16 usquant_fx(
Word16 idx;
Word16 tmp, exp;
Word32 L_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* idx = (short)( (x - qlow)/delta + 0.5f); */
exp = norm_s( delta );
- tmp = div_s( shl( 1, sub( 14, exp ) ), delta ); /*Q(29-exp-(Qx-1))->Q(30-exp-Qx) */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ tmp = div_s( shl( 1, sub( 14, exp ) ), delta ); /*Q(29-exp-(Qx-1))->Q(30-exp-Qx) */
L_tmp = L_mult( sub_sat( x, qlow ), tmp ); /*Q(31-exp) */
idx = extract_l( L_shr_r( L_add( L_tmp, shl_sat( 1, sub( 30, exp ) ) ), sub( 31, exp ) ) ); /*Q0 */
-#else
- L_tmp = L_mult( sub_o( x, qlow, &Overflow ), tmp ); /*Q(31-exp) */
- idx = extract_l( L_shr_r( L_add( L_tmp, shl_o( 1, sub( 30, exp ), &Overflow ) ), sub( 31, exp ) ) ); /*Q0 */
-#endif
idx = s_min( idx, sub( cbsize, 1 ) );
idx = s_max( idx, 0 );
/* *xq = idx*delta + qlow; */
- L_tmp = L_deposit_l( qlow ); /*Qx */
- L_tmp = L_mac( L_tmp, idx, delta ); /*Qx */
-#ifdef ISSUE_1836_replace_overflow_libcom
+ L_tmp = L_deposit_l( qlow ); /*Qx */
+ L_tmp = L_mac( L_tmp, idx, delta ); /*Qx */
*xq = round_fx_sat( L_shl_sat( L_tmp, 16 ) ); /*Qx */
-#else
- *xq = round_fx_o( L_shl_o( L_tmp, 16, &Overflow ), &Overflow ); /*Qx */
-#endif
+
return idx;
}
@@ -1287,20 +1273,11 @@ Word32 sum2_fx(
{
Word16 i;
Word32 L_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
L_tmp = L_deposit_l( 0 );
FOR( i = 0; i < lvec; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_mac_sat( L_tmp, vec[i], vec[i] ); /*Q(2x+1) */
-#else
- L_tmp = L_mac_o( L_tmp, vec[i], vec[i], &Overflow ); /*Q(2x+1) */
-#endif
}
return L_tmp;
@@ -1357,21 +1334,11 @@ Word32 sum2_fx_mod(
{
Word16 i;
Word32 L_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
L_tmp = L_deposit_l( 0 );
FOR( i = 0; i < lvec; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
L_tmp = L_add_sat( L_tmp, L_shr( L_mult_sat( vec[i], vec[i] ), 9 ) );
-#else
- L_tmp = L_add_o( L_tmp, L_shr( L_mult_o( vec[i], vec[i], &Overflow ), 9 ), &Overflow );
-#endif
}
return L_tmp;
@@ -1602,12 +1569,7 @@ void Copy_Scale_sig(
{
Word16 i;
Word16 tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
IF( exp0 == 0 )
{
FOR( i = 0; i < lg; i++ )
@@ -1629,11 +1591,7 @@ void Copy_Scale_sig(
}
FOR( i = 0; i < lg; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
y[i] = shl_sat( x[i], exp0 );
-#else
- y[i] = shl_o( x[i], exp0, &Overflow );
-#endif
move16(); /* saturation can occur here */
}
@@ -1656,13 +1614,6 @@ void Copy_Scale_sig_16_32_DEPREC(
{
Word16 i;
Word16 tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
IF( exp0 == 0 )
{
@@ -1678,11 +1629,7 @@ void Copy_Scale_sig_16_32_DEPREC(
/*Should not happen */
FOR( i = 0; i < lg; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
y[i] = L_deposit_l( shl_sat( x[i], exp0 ) );
-#else
- y[i] = L_deposit_l( shl_o( x[i], exp0, &Overflow ) );
-#endif
move32();
}
return;
@@ -1695,11 +1642,7 @@ void Copy_Scale_sig_16_32_DEPREC(
#else
assert( exp0 < 16 );
#endif
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp = shl_sat( 1, exp0 );
-#else
- tmp = shl_o( 1, exp0, &Overflow );
-#endif
FOR( i = 0; i < lg; i++ )
{
y[i] = L_mult0( x[i], tmp );
@@ -1709,7 +1652,6 @@ void Copy_Scale_sig_16_32_DEPREC(
return;
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
void Copy_Scale_sig_16_32_r(
const Word16 x[], /* i : signal to scale input Qx */
Word32 y[], /* o : scaled signal output Qx */
@@ -1718,12 +1660,14 @@ void Copy_Scale_sig_16_32_r(
)
{
Word16 i;
- for ( i = 0; i < lg; i++ )
+
+ FOR( i = 0; i < lg; i++ )
{
y[i] = L_shl_r( L_deposit_l( x[i] ), exp0 );
}
+
+ return;
}
-#endif
void Copy_Scale_sig_16_32_no_sat(
const Word16 x[], /* i : signal to scale input Qx */
@@ -1734,13 +1678,6 @@ void Copy_Scale_sig_16_32_no_sat(
{
Word16 i;
Word32 L_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
IF( exp0 == 0 )
{
@@ -1756,20 +1693,13 @@ void Copy_Scale_sig_16_32_no_sat(
/*Should not happen */
FOR( i = 0; i < lg; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
y[i] = L_deposit_l( shl_sat( x[i], exp0 ) );
-#else
- y[i] = L_deposit_l( shl_o( x[i], exp0, &Overflow ) );
-#endif
move32();
}
return;
}
-#ifdef ISSUE_1836_replace_overflow_libcom
+
L_tmp = L_shl_sat( 1, exp0 - 1 );
-#else
- L_tmp = L_shl_o( 1, exp0 - 1, &Overflow );
-#endif
IF( L_tmp >= 0x7FFF )
{
@@ -1804,23 +1734,13 @@ void Copy_Scale_sig_32_16(
{
Word16 i;
Word16 tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
tmp = add( 16, exp0 );
IF( tmp != 0 )
{
FOR( i = 0; i < lg; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
y[i] = round_fx_sat( L_shl_sat( x[i], tmp ) );
-#else
- y[i] = round_fx_o( L_shl_o( x[i], tmp, &Overflow ), &Overflow );
-#endif
move16();
}
}
@@ -1828,11 +1748,7 @@ void Copy_Scale_sig_32_16(
{
FOR( i = 0; i < lg; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
y[i] = round_fx_sat( x[i] );
-#else
- y[i] = round_fx_o( x[i], &Overflow );
-#endif
move16();
}
}
@@ -1854,12 +1770,7 @@ void Scale_sig32(
)
{
Word16 i;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
IF( 0 == exp0 )
{
return;
@@ -1867,11 +1778,7 @@ void Scale_sig32(
FOR( i = 0; i < lg; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
x[i] = L_shl_sat( x[i], exp0 );
-#else
- x[i] = L_shl_o( x[i], exp0, &Overflow );
-#endif
move32(); /* saturation can occur here */
}
@@ -2176,7 +2083,6 @@ Word16 maximum_exp_fx(
const Word16 *exp_vec, /* i : exponents of input vector */
const Word16 lvec_fx /* i : length of input vector */
)
-#ifdef FIX_1981_MAXIMUM_EXP_FX
{
Word16 j, ind;
ind = 0;
@@ -2185,49 +2091,23 @@ Word16 maximum_exp_fx(
FOR( j = 1; j < lvec_fx; j++ )
{
Word16 scale = sub( exp_vec[j], exp_vec[ind] );
-#ifdef FIX_1981_MAXIMUM_EXP_FX_ZEROMANTISSA
+
test();
if ( vec_fx[j] == 0 || vec_fx[ind] == 0 )
{
scale = 0;
move16();
}
-#endif
- if ( L_mac0_sat( L_shl_sat( L_deposit_l( vec_fx[j] ), scale ), vec_fx[ind], -0x0001 ) > 0 )
- {
- ind = j;
- move16();
- }
- }
- return ind;
-}
-#else
-{
- Word16 j, ind;
- Word16 tmp, exp;
- ind = 0;
- move16();
- tmp = vec_fx[0];
- move16();
- exp = exp_vec[0];
- move16();
- FOR( j = 1; j < lvec_fx; j++ )
- {
- IF( LT_16( tmp, shr_sat( vec_fx[j], sub( exp, exp_vec[j] ) ) ) )
+ if ( L_mac0_sat( L_shl_sat( L_deposit_l( vec_fx[j] ), scale ), vec_fx[ind], -0x0001 ) > 0 )
{
ind = j;
move16();
- tmp = vec_fx[j];
- move16();
- exp = exp_vec[j];
- move16();
}
}
return ind;
}
-#endif
/*---------------------------------------------------------------------*
@@ -2954,13 +2834,6 @@ Word16 w_vquant_fx(
Word16 tmp;
Word16 c, idx, j;
Word32 dist, minDist;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
idx = 0;
move16();
@@ -2976,7 +2849,6 @@ Word16 w_vquant_fx(
{
dist = L_deposit_l( 0 );
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp = sub_sat( x[3], shr( cb[j++], Qx ) );
if ( weights[3] != 0 )
{
@@ -2997,28 +2869,6 @@ Word16 w_vquant_fx(
{
dist = L_mac0_sat( dist, tmp, tmp );
}
-#else
- tmp = sub_o( x[3], shr( cb[j++], Qx ), &Overflow );
- if ( weights[3] != 0 )
- {
- dist = L_mac0_o( dist, tmp, tmp, &Overflow );
- }
- tmp = sub_o( x[2], shr( cb[j++], Qx ), &Overflow );
- if ( weights[2] != 0 )
- {
- dist = L_mac0_o( dist, tmp, tmp, &Overflow );
- }
- tmp = sub_o( x[1], shr( cb[j++], Qx ), &Overflow );
- if ( weights[1] != 0 )
- {
- dist = L_mac0_o( dist, tmp, tmp, &Overflow );
- }
- tmp = sub_o( x[0], shr( cb[j++], Qx ), &Overflow );
- if ( weights[0] != 0 )
- {
- dist = L_mac0_o( dist, tmp, tmp, &Overflow );
- }
-#endif
if ( LT_32( dist, minDist ) )
{
idx = c;
@@ -3048,7 +2898,6 @@ Word16 w_vquant_fx(
{
dist = L_deposit_l( 0 );
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp = sub_sat( x[0], shr( cb[j++], Qx ) );
if ( weights[0] != 0 )
{
@@ -3069,28 +2918,6 @@ Word16 w_vquant_fx(
{
dist = L_mac0_sat( dist, tmp, tmp );
}
-#else
- tmp = sub_o( x[0], shr( cb[j++], Qx ), &Overflow );
- if ( weights[0] != 0 )
- {
- dist = L_mac0_o( dist, tmp, tmp, &Overflow );
- }
- tmp = sub_o( x[1], shr( cb[j++], Qx ), &Overflow );
- if ( weights[1] != 0 )
- {
- dist = L_mac0_o( dist, tmp, tmp, &Overflow );
- }
- tmp = sub_o( x[2], shr( cb[j++], Qx ), &Overflow );
- if ( weights[2] != 0 )
- {
- dist = L_mac0_o( dist, tmp, tmp, &Overflow );
- }
- tmp = sub_o( x[3], shr( cb[j++], Qx ), &Overflow );
- if ( weights[3] != 0 )
- {
- dist = L_mac0_o( dist, tmp, tmp, &Overflow );
- }
-#endif
if ( LT_32( dist, minDist ) )
{
idx = c;
@@ -3584,12 +3411,7 @@ Word32 root_a_over_b_fx(
Word16 tmp, num, den, scale;
Word16 exp, exp_num, exp_den;
Word32 L_tmp;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
test();
IF( ( a <= 0 ) || ( b <= 0 ) )
{
@@ -3599,27 +3421,15 @@ Word32 root_a_over_b_fx(
}
exp_num = norm_l( b );
-#ifdef ISSUE_1836_replace_overflow_libcom
num = round_fx_sat( L_shl_sat( b, exp_num ) );
-#else
- num = round_fx_o( L_shl_o( b, exp_num, &Overflow ), &Overflow );
-#endif
exp_num = sub( sub( 30, exp_num ), Q_b );
exp_den = norm_l( a );
-#ifdef ISSUE_1836_replace_overflow_libcom
den = round_fx_sat( L_shl_sat( a, exp_den ) );
-#else
- den = round_fx_o( L_shl_o( a, exp_den, &Overflow ), &Overflow );
-#endif
exp_den = sub( sub( 30, exp_den ), Q_a );
scale = shr( sub( den, num ), 15 );
-#ifdef ISSUE_1836_replace_overflow_libcom
num = shl_sat( num, scale );
-#else
- num = shl_o( num, scale, &Overflow );
-#endif
exp_num = sub( exp_num, scale );
tmp = div_s( num, den );
@@ -3778,12 +3588,7 @@ void fir_fx(
Word16 buf_in[L_FRAME32k + L_FILT_MAX];
Word16 i, j;
Word32 s;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
/* prepare the input buffer (copy and update memory) */
Copy( mem, buf_in, K );
Copy( x, buf_in + K, L );
@@ -3795,27 +3600,15 @@ void fir_fx(
/* do the filtering */
FOR( i = 0; i < L; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
s = L_mult_sat( buf_in[K + i], h[0] );
-#else
- s = L_mult_o( buf_in[K + i], h[0], &Overflow );
-#endif
FOR( j = 1; j <= K; j++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
s = L_mac_sat( s, h[j], buf_in[K + i - j] );
-#else
- s = L_mac_o( s, h[j], buf_in[K + i - j], &Overflow );
-#endif
}
-#ifdef ISSUE_1836_replace_overflow_libcom
+
s = L_shl_sat( s, shift );
y[i] = round_fx_sat( s ); /*Qx */
-#else
- s = L_shl_o( s, shift, &Overflow );
- y[i] = round_fx_o( s, &Overflow ); /*Qx */
-#endif
move16();
}
@@ -3956,11 +3749,6 @@ Word16 squant_fx(
Word16 tmp;
Word16 c, idx;
Word32 L_mindist, L_dist;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
idx = 0;
move16();
@@ -3970,18 +3758,10 @@ Word16 squant_fx(
FOR( c = 0; c < cbsize; c++ )
{
L_dist = L_deposit_l( 0 );
-#ifdef ISSUE_1836_replace_overflow_libcom
tmp = sub_sat( x, cb[c] );
-#else
- tmp = sub_o( x, cb[c], &Overflow );
-#endif
/*dist += tmp*tmp; */
-#ifdef ISSUE_1836_replace_overflow_libcom
L_dist = L_mac_sat( L_dist, tmp, tmp );
-#else
- L_dist = L_mac_o( L_dist, tmp, tmp, &Overflow );
-#endif
if ( LT_32( L_dist, L_mindist ) )
{
@@ -4123,12 +3903,7 @@ void Copy_Scale_sig32(
Word16 i;
Word32 L_tmp;
Word16 tmp = exp0;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
IF( exp0 == 0 )
{
FOR( i = 0; i < lg; i++ )
@@ -4142,20 +3917,14 @@ void Copy_Scale_sig32(
{
FOR( i = 0; i < lg; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
y[i] = L_shl_sat( x[i], tmp );
-#else
- y[i] = L_shl_o( x[i], tmp, &Overflow );
-#endif
move16();
}
return;
}
-#ifdef ISSUE_1836_replace_overflow_libcom
+
L_tmp = L_shl_sat( 1, exp0 - 1 );
-#else
- L_tmp = L_shl_o( 1, exp0 - 1, &Overflow );
-#endif
+
FOR( i = 0; i < lg; i++ )
{
y[i] = W_extract_l( W_mult_32_32( L_tmp, x[i] ) );
@@ -4345,23 +4114,14 @@ void add_vec_fx(
)
{
Word16 i, Qyx1, Qyx2;
-#ifndef ISSUE_1836_replace_overflow_libcom
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
Qyx1 = sub( Qx1, Qy );
Qyx2 = sub( Qx2, Qy );
IF( Qyx1 == 0 )
{
FOR( i = 0; i < N; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
y[i] = add_sat( x1[i], shr_r_sat( x2[i], Qyx2 ) );
-#else
- y[i] = add_o( x1[i], shr_r_sat( x2[i], Qyx2 ), &Overflow );
-#endif
move16();
}
}
@@ -4369,11 +4129,7 @@ void add_vec_fx(
{
FOR( i = 0; i < N; i++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
y[i] = add_sat( shr_r_sat( x1[i], Qyx1 ), shr_r_sat( x2[i], Qyx2 ) ); //!!sat //!!sat
-#else
- y[i] = add_o( shr_r_sat( x1[i], Qyx1 ), shr_r_sat( x2[i], Qyx2 ), &Overflow );
-#endif
move16();
}
}
@@ -4512,11 +4268,7 @@ Word32 Calc_Energy_Autoscaled(
FOR( i = 0; i < j; i++ )
{
/* divide by 2 so energy will be divided by 4 */
-#ifdef ISSUE_1836_replace_overflow_libcom
temp = mult_r( *signal++, 16384 );
-#else
- temp = mult_ro( *signal++, 16384, &Overflow );
-#endif
L_Energy = L_mac0_o( L_Energy, temp, temp, &Overflow );
}
FOR( i = j; i < len; i += 8 ) /* Process 8 Samples at a time */
@@ -4526,11 +4278,7 @@ Word32 Calc_Energy_Autoscaled(
L_temp = L_mult0( temp, temp );
FOR( j = 1; j < 8; j++ )
{
-#ifdef ISSUE_1836_replace_overflow_libcom
temp = mult_r( *signal++, 16384 );
-#else
- temp = mult_ro( *signal++, 16384, &Overflow );
-#endif
L_temp = L_mac0_o( L_temp, temp, temp, &Overflow );
}
/*Overfloe will never happen because temp2 is always positive*/
@@ -5402,23 +5150,6 @@ void delay_signal_q_adj_fx(
return;
}
-void v_add_fx(
- const Word32 x1[], /* i : Input vector 1 */
- const Word32 x2[], /* i : Input vector 2 */
- Word32 y[], /* o : Output vector that contains vector 1 + vector 2 */
- const Word16 N /* i : Vector length */
-)
-{
- Word16 i;
-
- FOR( i = 0; i < N; i++ )
- {
- y[i] = L_add_sat( x1[i], x2[i] );
- move32();
- }
-
- return;
-}
Word16 floor_log_2( Word32 num )
{
@@ -5569,7 +5300,7 @@ Word32 sign_l(
}
}
-void v_mult16_fixed(
+void v_mult16_fx(
const Word16 x1[], /* i : Input vector 1 */
const Word16 x2[], /* i : Input vector 2 */
Word16 y[], /* o : Output vector that contains vector 1 .* vector 2 */
@@ -5736,7 +5467,7 @@ Word32 dotp_me_fx(
return suma;
}
-Word32 dotp_fixed_guarded(
+Word32 dotp_fx_guarded(
const Word32 x[], /* i : vector x[] */
const Word32 y[], /* i : vector y[] */
const Word16 n /* i : vector length */
@@ -5756,7 +5487,7 @@ Word32 dotp_fixed_guarded(
}
-Word32 dotp_fixed_ivas_fx(
+Word32 dotp_fx_ivas_fx(
const Word32 x[], /* i : vector x[] */
Word16 x_e,
const Word32 y[], /* i : vector y[] */
@@ -5777,6 +5508,7 @@ Word32 dotp_fixed_ivas_fx(
*out_e = exp;
move16();
+
return suma;
}
@@ -5787,8 +5519,7 @@ Word32 dotp_fixed_ivas_fx(
* Multiplication of two vectors
*-------------------------------------------------------------------*/
-
-void v_mult_fixed(
+void v_mult_fx(
const Word32 x1[], /* i : Input vector 1 */
const Word32 x2[], /* i : Input vector 2 */
Word32 y[], /* o : Output vector that contains vector 1 .* vector 2 */
@@ -5808,12 +5539,14 @@ void v_mult_fixed(
/*-------------------------------------------------------------------*
- * anint_fixed()
+ * anint_fx()
*
* Round to the nearest integer.
*-------------------------------------------------------------------*/
-Word32 anint_fixed( Word32 x, Word16 exp )
+Word32 anint_fx(
+ const Word32 x,
+ const Word16 exp )
{
IF( x == 0 )
{
@@ -5831,14 +5564,14 @@ Word32 anint_fixed( Word32 x, Word16 exp )
/*-------------------------------------------------------------------*
- * ceil_fixed()
+ * ceil_fx()
*
* Ceil to the next multiple of (1 << exp).
*-------------------------------------------------------------------*/
-Word32 ceil_fixed(
- Word32 x,
- Word16 exp )
+Word32 ceil_fx(
+ const Word32 x,
+ const Word16 exp )
{
Word32 step;
@@ -5878,12 +5611,31 @@ void sort_l(
/*-------------------------------------------------------------------*
- * v_add_fixed()
+ * v_add()
*
* Subtraction of two vectors sample by sample
*-------------------------------------------------------------------*/
-void v_add_fixed(
+void v_add_fx(
+ const Word32 x1[], /* i : Input vector 1 */
+ const Word32 x2[], /* i : Input vector 2 */
+ Word32 y[], /* o : Output vector that contains vector 1 + vector 2 */
+ const Word16 N /* i : Vector length */
+)
+{
+ Word16 i;
+
+ FOR( i = 0; i < N; i++ )
+ {
+ y[i] = L_add_sat( x1[i], x2[i] );
+ move32();
+ }
+
+ return;
+}
+
+
+void v_add_fx_hdrm(
const Word32 x1[], /* i : Input vector 1 */
const Word32 x2[], /* i : Input vector 2 */
Word32 y[], /* o : Output vector that contains vector 1 - vector 2 */
@@ -5902,7 +5654,7 @@ void v_add_fixed(
return;
}
-void v_add_fixed_no_hdrm(
+void v_add_fx_no_hdrm(
const Word32 x1[], /* i : Input vector 1 */
const Word32 x2[], /* i : Input vector 2 */
Word32 y[], /* o : Output vector that contains vector 1 + vector 2 */
@@ -5920,7 +5672,7 @@ void v_add_fixed_no_hdrm(
return;
}
-void v_add_fixed_me(
+void v_add_fx_me(
const Word32 x1[], /* i : Input vector 1 */
const Word16 x1_e, /* i : Exponent for input vector 1 */
const Word32 x2[], /* i : Input vector 2 */
@@ -5948,7 +5700,7 @@ void v_add_fixed_me(
}
Word16 find_guarded_bits_fx(
- Word32 n )
+ const Word32 n )
{
// return n <= 1 ? 0 : n <= 2 ? 1
// : n <= 4 ? 2
diff --git a/lib_dec/FEC_HQ_phase_ecu_fx.c b/lib_dec/FEC_HQ_phase_ecu_fx.c
index 17fece8ec22471c714edab1f22ae3121116290b0..de3f39799a81714002e4b9833fc2f4c3c0f182be 100644
--- a/lib_dec/FEC_HQ_phase_ecu_fx.c
+++ b/lib_dec/FEC_HQ_phase_ecu_fx.c
@@ -63,11 +63,7 @@ static Word16 sqrt2ndOrder( const Word16 );
static void windowing( const Word16 *, Word16 *, const Word16 *, const Word16, const Word16 );
static void windowing_ROM_optimized( const Word16 *, Word16 *, const Word16, const Word16, const Word16 );
static void fft_spec2_fx( const Word16[], Word32[], const Word16 );
-#ifdef NONBE_FIX_1180_HQMDCT_PHECU_LT_MUTING
static void trans_ana_fx( const Word16 *, Word16 *, Word16 *, Word16 *, const Word16, const Word16, const Word16, const Word16, const Word16, Word16 *, Word16 *, Word16 *, Word16 * );
-#else
-static void trans_ana_fx( const Word16 *, Word16 *, Word16 *, Word16 *, const Word16, const Word16, const Word16, const Word16, Word16 *, Word16 *, Word16 *, Word16 * );
-#endif
static void peakfinder_fx( const Word16 *, const Word16, Word16 *, Word16 *, const Word16 );
static Word16 imax_fx( const Word16 *, const Word16 );
static void spec_ana_fx( const Word16 *prevsynth, Word16 *plocs, Word32 *plocsi, Word16 *num_plocs, Word16 *X_sav, const Word16 output_frame, const Word16 bwidth_fx, Word16 *Q );
@@ -234,13 +230,11 @@ static void trans_ana_fx(
const Word16 time_offs, /* i : Time offset (integral multiple of output_frame) */
const Word16 est_mus_content, /* i : 0.0=speech_like ... 1.0=Music (==st->env_stab ) */
const Word16 last_fec, /* i : signal that previous frame was concealed with fec_alg */
-#ifdef NONBE_FIX_1180_HQMDCT_PHECU_LT_MUTING
- const Word16 element_mode, /* i : element_mode req to handle EVS_MONO specific BE path */
-#endif
- Word16 *alpha, /* o : Magnitude modification factors for fade to average */
- Word16 *beta, /* o : Magnitude modification factors for fade to average */
- Word16 *beta_mute, /* o : Factor for long-term mute Q15 */
- Word16 *Xavg /* o : Frequency group average gain to fade to */
+ const Word16 element_mode, /* i : element_mode req to handle EVS_MONO specific BE path */
+ Word16 *alpha, /* o : Magnitude modification factors for fade to average */
+ Word16 *beta, /* o : Magnitude modification factors for fade to average */
+ Word16 *beta_mute, /* o : Factor for long-term mute Q15 */
+ Word16 *Xavg /* o : Frequency group average gain to fade to */
)
{
const Word16 *w_hamm, *pFftTbl;
@@ -562,7 +556,6 @@ static void trans_ana_fx(
mag_chg[k] = mult_r( mag_chg_1st[k], att_val ); /* Q15 */
move16();
-#ifdef NONBE_FIX_1180_HQMDCT_PHECU_LT_MUTING
IF( NE_16( element_mode, EVS_MONO ) )
{
IF( EQ_16( k, 0 ) && GT_16( burst_len, BETA_MUTE_THR ) ) /* beta_mute final long term attenuation adjusted only once per frame in the first sub-band, Ref Eq(184) in 26.447 */
@@ -579,13 +572,7 @@ static void trans_ana_fx(
move16();
}
}
-#else
- IF( GT_16( burst_len, BETA_MUTE_THR ) )
- {
- *beta_mute = shr( *beta_mute, 1 );
- move16();
- }
-#endif
+
alpha[k] = mag_chg[k];
move16();
/*beta[k] = sqrt(1.0f - SQR(alpha[k])) * *beta_mute;*/
@@ -2728,7 +2715,7 @@ static void ivas_rec_wtda_fx(
tmp = div_s( 1, shl( ola_len, 1 ) ); // Q15
tmp = round_fx( L_shl( L_mult( tmp, EVS_PI_FX ), 2 ) ); // Q15
sinq_fx( tmp, 0, ola_len, xfwin );
- v_mult16_fixed( xfwin, xfwin, xfwin, ola_len ); /* xfwin = sin^2 of 0..pi/4 */
+ v_mult16_fx( xfwin, xfwin, xfwin, ola_len ); /* xfwin = sin^2 of 0..pi/4 */
pOldW = xfwin + sub( ola_len, 1 );
pNewW = xfwin;
FOR( i = 0; i < ola_len; i++ )
@@ -4545,13 +4532,9 @@ static void ivas_hq_phase_ecu_fx(
#endif
offset = add( sub( sub( shl( output_frame, 1 ), lprot ), *time_offs ), ph_ecu_lookahead );
-#ifdef NONBE_FIX_1180_HQMDCT_PHECU_LT_MUTING
+
trans_ana_fx( prevsynth + offset, mag_chg, &ph_dith, mag_chg_1st, output_frame, *time_offs, env_stab,
*last_fec, element_mode, alpha, beta, beta_mute, Xavg );
-#else
- trans_ana_fx( prevsynth + offset, mag_chg, &ph_dith, mag_chg_1st, output_frame, *time_offs, env_stab,
- *last_fec, alpha, beta, beta_mute, Xavg );
-#endif
ivas_spec_ana_fx( prevsynth + offset, plocs, plocsi, num_p, X_sav, output_frame, bwidth_fx, Q_spec, element_mode, &noise_fac, pcorr );
@@ -4571,13 +4554,9 @@ static void ivas_hq_phase_ecu_fx(
*time_offs = add_sat( *time_offs, output_frame );
move16();
offset = sub( shl( output_frame, 1 ), lprot );
-#ifdef NONBE_FIX_1180_HQMDCT_PHECU_LT_MUTING
+
trans_ana_fx( prevsynth + offset, mag_chg, &ph_dith, mag_chg_1st, output_frame, *time_offs, env_stab,
0, element_mode, alpha, beta, beta_mute, Xavg );
-#else
- trans_ana_fx( prevsynth + offset, mag_chg, &ph_dith, mag_chg_1st, output_frame, *time_offs, env_stab,
- 0, alpha, beta, beta_mute, Xavg );
-#endif
}
Copy( X_sav, X, lprot );
@@ -4666,13 +4645,9 @@ static void hq_phase_ecu_fx(
}
offset = sub( sub( shl( output_frame, 1 ), lprot ), *time_offs );
-#ifdef NONBE_FIX_1180_HQMDCT_PHECU_LT_MUTING
+
trans_ana_fx( prevsynth + offset, mag_chg, &ph_dith, mag_chg_1st, output_frame, *time_offs, env_stab,
*last_fec, EVS_MONO, alpha, beta, beta_mute, Xavg );
-#else
- trans_ana_fx( prevsynth + offset, mag_chg, &ph_dith, mag_chg_1st, output_frame, *time_offs, env_stab,
- *last_fec, alpha, beta, beta_mute, Xavg );
-#endif
spec_ana_fx( prevsynth + offset, plocs, plocsi, num_p, X_sav, output_frame, bwidth_fx, Q_spec );
@@ -4697,13 +4672,9 @@ static void hq_phase_ecu_fx(
move16();
offset = sub( shl( output_frame, 1 ), lprot );
-#ifdef NONBE_FIX_1180_HQMDCT_PHECU_LT_MUTING
+
trans_ana_fx( prevsynth + offset, mag_chg, &ph_dith, mag_chg_1st, output_frame, *time_offs, env_stab,
0, EVS_MONO, alpha, beta, beta_mute, Xavg );
-#else
- trans_ana_fx( prevsynth + offset, mag_chg, &ph_dith, mag_chg_1st, output_frame, *time_offs, env_stab,
- 0, alpha, beta, beta_mute, Xavg );
-#endif
}
Copy( X_sav, X, lprot );
diff --git a/lib_dec/FEC_adapt_codebook_fx.c b/lib_dec/FEC_adapt_codebook_fx.c
index fae55ab5b0aff3d63693e2829d9556c779d66b54..24ddc6463b456cab77b31fec330af17b6b00b081 100644
--- a/lib_dec/FEC_adapt_codebook_fx.c
+++ b/lib_dec/FEC_adapt_codebook_fx.c
@@ -15,14 +15,12 @@
* Create an artificial onset when it is lost
*---------------------------------------------------------------------*/
Word16 FEC_SinOnset_fx(
- Word16 *exc,
- /* i/o : exc vector to modify */ // Qin = Qold, Qout = Q_exc
- Word16 puls_pos, /* i : last pulse position desired */
- const Word16 T0, /* i : Pitch information of the 1 subfr */
- Word32 enr_q, /* i : energy provide by the encoder */
- Word16 *Aq, /* i : A(z) filter Q12 */
- const Word16 L_frame /* i : frame length */
- ,
+ Word16 *exc, /* i/o : exc vector to modify Qin = Qold, Qout = Q_exc */
+ Word16 puls_pos, /* i : last pulse position desired */
+ const Word16 T0, /* i : Pitch information of the 1 subfr */
+ Word32 enr_q, /* i : energy provide by the encoder */
+ Word16 *Aq, /* i : A(z) filter Q12 */
+ const Word16 L_frame, /* i : frame length */
const Word16 Qold )
{
Word16 P0, onset_len, sign, i, len, L_subfr, L_subfr2;
diff --git a/lib_dec/FEC_pitch_estim_fx.c b/lib_dec/FEC_pitch_estim_fx.c
index b7ad94f8931293ef25288170d9be242c4e0fabc8..4ea25cd857b2ed36ddbceda1a6f27dc1cbaafa9d 100644
--- a/lib_dec/FEC_pitch_estim_fx.c
+++ b/lib_dec/FEC_pitch_estim_fx.c
@@ -44,10 +44,9 @@ void FEC_pitch_estim_fx(
const Word32 old_pitch_buf[], /* i : buffer of old subframe pitch values 15Q16 */
Word16 *bfi_pitch, /* i/o: update of the estimated pitch for FEC Q6*/
Word16 *bfi_pitch_frame, /* o : frame length when pitch was updated */
- Word16 *upd_cnt /* i/o: update counter */
- ,
- const Word16 coder_type, /* i : coder_type */
- Word16 element_mode /* i : element mode */
+ Word16 *upd_cnt, /* i/o: update counter */
+ const Word16 coder_type, /* i : coder_type */
+ Word16 element_mode /* i : element mode */
)
{
Word16 tmp, tmp1, tmp2, tmp3;
diff --git a/lib_dec/LD_music_post_filter_fx.c b/lib_dec/LD_music_post_filter_fx.c
index f07feac96a5a375ea4cec286dbce448833984e93..d1ec20b0b88a35f8e3217eb632e085cbaabf384f 100644
--- a/lib_dec/LD_music_post_filter_fx.c
+++ b/lib_dec/LD_music_post_filter_fx.c
@@ -941,11 +941,10 @@ void Post_music_postP_fx(
Word16 *mem_deemph, /* i/o: speech deemph filter memory Q_syn*/
Word16 *st_pst_old_syn_fx, /* i/o: psfiler Q_syn*/
Word16 *st_pst_mem_deemp_err_fx, /* i/o: psfiler Q_syn*/
- Word16 *mem_agc, /*Q_syn*/
+ Word16 *mem_agc, /* Q_syn */
PFSTAT *pf_stat, /* i/o: All memories related to NB post filter */
- const Word16 *tmp_buffer /* tmp_buffer in Q-1 */
- ,
- Word16 *mem_tmp2 /* Temporary memory used with scale_syn Q_syn*/
+ const Word16 *tmp_buffer, /* tmp_buffer in Q-1 */
+ Word16 *mem_tmp2 /* Temporary memory used with scale_syn Q_syn*/
)
{
Word16 exc16[DCT_L_POST];
diff --git a/lib_dec/acelp_core_dec_fx.c b/lib_dec/acelp_core_dec_fx.c
index cf32fdf5685c85d1ad738182bcf7bb4e3fc3dcf1..00d6ce926a97d88692e32fce0752f5ab116279f7 100644
--- a/lib_dec/acelp_core_dec_fx.c
+++ b/lib_dec/acelp_core_dec_fx.c
@@ -1637,16 +1637,11 @@ ivas_error acelp_core_dec_fx(
IF( NE_16( st->element_mode, last_element_mode ) )
{
set16_fx( st->hFdCngDec->hFdCngCom->olapBufferSynth2, 0, st->hFdCngDec->hFdCngCom->fftlen );
-#ifdef FIX_1996_MASKING_NOISE
set32_fx( st->hFdCngDec->hFdCngCom->olapBufferSynth2_fx, 0, st->hFdCngDec->hFdCngCom->fftlen );
-#endif
}
Word32 psyn_32_fx[L_FRAME16k];
Copy_Scale_sig_16_32_no_sat( psyn_fx, psyn_32_fx, st->hFdCngDec->hFdCngCom->frameSize, sub( Q6, st->Q_syn ) ); // Q6
-#ifndef FIX_1996_MASKING_NOISE
- Copy_Scale_sig_16_32_no_sat( st->hFdCngDec->hFdCngCom->olapBufferSynth2, st->hFdCngDec->hFdCngCom->olapBufferSynth2_fx, shl( st->hFdCngDec->hFdCngCom->frameSize, 1 ), Q15 ); // Q15
-#endif
generate_masking_noise_ivas_fx( psyn_32_fx, &exp, st->hFdCngDec->hFdCngCom, st->hFdCngDec->hFdCngCom->frameSize, 0, 0, 0, st->element_mode, hStereoCng, nchan_out );
Copy_Scale_sig_32_16( psyn_32_fx, psyn_fx, st->hFdCngDec->hFdCngCom->frameSize, sub( st->Q_syn, exp ) ); // Q = st->Q_syn
@@ -1738,9 +1733,7 @@ ivas_error acelp_core_dec_fx(
IF( st->idchan == 0 )
{
set16_fx( st->hFdCngDec->hFdCngCom->olapBufferSynth2, 0, st->hFdCngDec->hFdCngCom->fftlen );
-#ifdef FIX_1996_MASKING_NOISE
set32_fx( st->hFdCngDec->hFdCngCom->olapBufferSynth2_fx, 0, st->hFdCngDec->hFdCngCom->fftlen );
-#endif
}
IF( hStereoCng != NULL && ( st->idchan == 0 ) )
{
diff --git a/lib_dec/arith_coder_dec_fx.c b/lib_dec/arith_coder_dec_fx.c
index 77ae166b450b57fd108d9f0a948e902fb0772a3f..2919210dc2aab107d81789eb08cf8149730fb927 100644
--- a/lib_dec/arith_coder_dec_fx.c
+++ b/lib_dec/arith_coder_dec_fx.c
@@ -28,27 +28,16 @@ static Word16 tcx_arith_decode_fx(
Word16 exp_k;
Word16 tmp;
#ifdef BASOP_NOGLOB_DECLARE_LOCAL
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Word32 L_tmp, Q;
- Flag Overflow = 0;
- move32();
- Flag Carry = 0;
-#else
Word32 Q;
Word64 W_tmp;
-#endif
move32();
#endif
-
bp = ari_start_decoding_14bits_prm_fx( prm, 0, &as );
tmp = sub( envelope_e, 1 + 15 );
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_tmp = L_deposit_l( 0 );
-#else
W_tmp = 0;
-#endif
+
FOR( k = 0; k < L_frame; k++ )
{
IF( envelope[k] == 0 ) /* safety check in case of bit errors */
@@ -72,11 +61,7 @@ static Word16 tcx_arith_decode_fx(
{
bp = ari_decode_14bits_sign_fx( prm, bp, target_bits, &s, &as );
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_tmp = L_macNs_co( L_tmp, q, k, &Carry, &Overflow );
-#else
W_tmp = W_mac_16_16( W_tmp, q, k );
-#endif
Q = L_mult( q, negate( shl( 1, sub( 30, SPEC_EXP_DEC ) ) ) );
IF( EQ_16( s, 0 ) )
@@ -101,11 +86,7 @@ static Word16 tcx_arith_decode_fx(
set32_fx( q_spectrum + k, 0, sub( L_frame, k ) );
/* noise filling seed */
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- *nf_seed = extract_l( L_tmp );
-#else
*nf_seed = extract_l( W_extract_l( W_tmp ) );
-#endif
move16();
return bp;
@@ -125,9 +106,8 @@ void tcx_arith_decode_envelope_fx(
Word16 tcxltp_pitch, /* i: TCX LTP pitch in FD, -1 if n/a Q0*/
Word16 *arith_bits, /* o: bits used for ari. coding Q0 */
Word16 *signaling_bits, /* o: bits used for signaling Q0 */
- Word16 *nf_seed /* o: noise filling seed Q0 */
- ,
- Word16 low_complexity /* i: low-complexity flag Q0 */
+ Word16 *nf_seed, /* o: noise filling seed Q0 */
+ Word16 low_complexity /* i: low-complexity flag Q0 */
)
{
Word32 env[N_MAX_ARI]; /* unscaled envelope */
@@ -165,7 +145,6 @@ void tcx_arith_decode_envelope_fx(
return;
}
-
*signaling_bits = 0;
move16();
assert( st->hTcxDec->enableTcxLpc );
diff --git a/lib_dec/bass_psfilter_fx.c b/lib_dec/bass_psfilter_fx.c
index 599c3aa987e9d0bea88edef76cab6c89f2166a17..bb2158057b63e82df5cfe08b5efba649baf0a148 100644
--- a/lib_dec/bass_psfilter_fx.c
+++ b/lib_dec/bass_psfilter_fx.c
@@ -555,11 +555,7 @@ void bass_psfilter_fx(
FOR( i = 0; i < subfr_len; i++ )
{
/* err[i] = syn_fx[i] - gain*syn2_fx[i] */
-#ifdef FIX2007_BASSPSFILTER_OVERFLOW
err[i] = msu_r( L_shr_sat( L_mult0( gain, syn2_fx[i] ), exp2 ), syn_fx[i], 16384 ); /* Q15 */
-#else
- err[i] = msu_r( L_shr( L_mult0( gain, syn2_fx[i] ), exp2 ), syn_fx[i], 16384 ); /* Q15 */
-#endif
move16();
/* the sign is inverted but it is not important because
we calculate energy with 'err[i]' x 'err[i]'
diff --git a/lib_dec/core_switching_dec_fx.c b/lib_dec/core_switching_dec_fx.c
index be95ebaf006cbfe800c81c7fa7be8a18403beb8f..162e45812e34fc8f984f705eaf8b8a3a876d65b2 100644
--- a/lib_dec/core_switching_dec_fx.c
+++ b/lib_dec/core_switching_dec_fx.c
@@ -1630,26 +1630,18 @@ ivas_error core_switching_post_dec_ivas_fx(
test();
IF( EQ_16( st_fx->last_core, HQ_CORE ) || st_fx->last_core == TCX_20_CORE || st_fx->last_core == TCX_10_CORE ) /* MDCT to ACELP transition */
{
-#ifdef FIX_ISSUE_2013_MDCT_STEREO_DTX_DISCONTINUITIES
Word16 Q_old_postdec = 0;
move16();
-#endif
Qtmp = s_min( *Qsynth, 0 );
IF( hHQ_core != NULL )
{
Qtmp = s_min( s_min( *Qsynth, hHQ_core->Q_old_postdec ), hHQ_core->Q_old_wtda );
-#ifdef FIX_ISSUE_2013_MDCT_STEREO_DTX_DISCONTINUITIES
Q_old_postdec = hHQ_core->Q_old_postdec;
move16();
-#endif
}
- Scale_sig( synth, output_frame, sub( Qtmp, *Qsynth ) ); /* Qtmp */
-#ifndef FIX_ISSUE_2013_MDCT_STEREO_DTX_DISCONTINUITIES
- Scale_sig( st_fx->delay_buf_out_fx, delay_comp, Qtmp ); /*delay buff_out_fx is Q0*/
-#else
+ Scale_sig( synth, output_frame, sub( Qtmp, *Qsynth ) ); /* Qtmp */
Scale_sig( st_fx->delay_buf_out_fx, delay_comp, sub( Qtmp, Q_old_postdec ) ); /* delay buff_out_fx is Qtmp */
-#endif
IF( hHQ_core != NULL )
{
Scale_sig( hHQ_core->old_out_fx, L_FRAME48k, sub( Qtmp, hHQ_core->Q_old_wtda ) ); /* Qtmp */
@@ -1707,9 +1699,7 @@ ivas_error core_switching_post_dec_ivas_fx(
move16();
ptmp1++;
ptmp2++;
-#ifdef FIX_ISSUE_2013_MDCT_STEREO_FER_DISCONTINUITIES
tmpF = add( tmpF, tmp ); /* Q15 */
-#endif
}
}
ELSE
diff --git a/lib_dec/dec_ace_fx.c b/lib_dec/dec_ace_fx.c
index b6554e02c7343616afa751b98551660230abc8bf..8453a16cf1e309bfee4336387e866b86300949a9 100644
--- a/lib_dec/dec_ace_fx.c
+++ b/lib_dec/dec_ace_fx.c
@@ -526,19 +526,15 @@ void decoder_acelp_fx(
/*-----------------------------------------------------------------*
* Prepare TBE excitation
*-----------------------------------------------------------------*/
+
gain_code = gain_code_tmp;
move32();
gain_pit = gain_pit_tmp;
move16();
IF( st->igf != 0 )
{
-#ifdef FIX_2010_PREP_TBE_EXC
prep_tbe_exc_fx( st->L_frame, L_SUBFR, i_subfr, gain_pit, gain_code, code, st->voice_fac, &voice_factors[idx], bwe_exc,
gain_preQ, code_preQ, Q10, st->Q_exc, T0, T0_frac, st->coder_type, st->core_brate, st->element_mode, st->idchan, st->hBWE_TD != NULL, 0 );
-#else
- prep_tbe_exc_fx( st->L_frame, L_SUBFR, i_subfr, gain_pit, gain_code, code, st->voice_fac, &voice_factors[idx], bwe_exc,
- gain_preQ, code_preQ, st->Q_exc, T0, T0_frac, st->coder_type, st->core_brate, st->element_mode, st->idchan, st->hBWE_TD != NULL, 0 );
-#endif
}
/*---------------------------------------------------------*
diff --git a/lib_dec/dec_gen_voic_fx.c b/lib_dec/dec_gen_voic_fx.c
index 39412a22e85a936a91905ce3689b58f7f82658ea..53da3c36ad2a3f5d5a22780dfdd8b70f32881537 100644
--- a/lib_dec/dec_gen_voic_fx.c
+++ b/lib_dec/dec_gen_voic_fx.c
@@ -100,9 +100,7 @@ ivas_error decod_gen_voic_fx(
Word16 pf_temp[MAXLAG_WI];
Word16 pf_n2[MAXLAG_WI];
MUSIC_POSTFILT_HANDLE hMusicPF;
-#ifdef FIX_2010_PREP_TBE_EXC
Word16 Q_code_preQ;
-#endif
gain_pit_fx = 0;
gain_code_fx = 0;
@@ -326,15 +324,6 @@ ivas_error decod_gen_voic_fx(
idx = idiv1616( i_subfr_fx, L_SUBFR );
}
-#ifdef FIX_2010_PREP_TBE_EXC
- /*
- 2025-09-15 multrus:
- TODO:
- check with vaillancourt
- - where this difference between EVS and IVAS comes from
- - where Q_code_preQ could be derived
- - whether any of the above calculations need to be adjusted
- */
Q_code_preQ = Q6;
move16();
if ( EQ_16( st_fx->element_mode, EVS_MONO ) )
@@ -347,13 +336,6 @@ ivas_error decod_gen_voic_fx(
&voice_factors_fx[idx], bwe_exc_fx, gain_preQ_fx, code_preQ_fx, Q_code_preQ,
st_fx->Q_exc, T0_fx, T0_frac_fx, st_fx->coder_type, st_fx->core_brate,
st_fx->element_mode, st_fx->idchan, st_fx->hBWE_TD != NULL, st_fx->tdm_LRTD_flag );
-#else
- prep_tbe_exc_fx( L_frame, L_SUBFR, i_subfr_fx, gain_pit_fx, gain_code_fx, code_fx, voice_fac_fx,
- &voice_factors_fx[idx], bwe_exc_fx, gain_preQ_fx, code_preQ_fx,
- st_fx->Q_exc, T0_fx, T0_frac_fx, st_fx->coder_type, st_fx->core_brate,
- st_fx->element_mode, st_fx->idchan, st_fx->hBWE_TD != NULL, st_fx->tdm_LRTD_flag );
-#endif
-
/*----------------------------------------------------------------*
* Excitation enhancements (update of total excitation signal)
diff --git a/lib_dec/dec_tcx_fx.c b/lib_dec/dec_tcx_fx.c
index 68f7f02f39a92bc42b8f642461d8a87661dcf817..ee8273a7b1b169da8679322e3ec9942974edaadd 100644
--- a/lib_dec/dec_tcx_fx.c
+++ b/lib_dec/dec_tcx_fx.c
@@ -622,14 +622,11 @@ void decoder_tcx_fx(
test();
IF( ( bfi == 0 ) && ( hTcxCfg->resq != 0 ) )
{
-
IF( hTcxDec->tcx_lpc_shaped_ari != 0 ) /* new arithmetic coder */
{
-
Word16 *prm_resq;
- prm_resq = prm_sqQ + sub( *prm_target /* = targetBits */
- ,
+ prm_resq = prm_sqQ + sub( *prm_target, /* = targetBits */
hTcxDec->resQBits[frame_cnt] );
i = tcx_ari_res_invQ_spec( x, x_e, L_spec,
@@ -663,7 +660,6 @@ void decoder_tcx_fx(
}
/* for FAC */
-
test();
IF( bfi == 0 && st->tcxonly == 0 )
{
@@ -733,7 +729,6 @@ void decoder_tcx_fx(
}
}
-
IF( hTcxDec->tcx_lpc_shaped_ari == 0 ) /* old arithmetic coder */
{
/* noise filling seed */
@@ -3323,7 +3318,7 @@ void IMDCT_ivas_fx(
move32();
}
q_tmp_fx_32 = sub( q_xn_buf_fx_32, res_e );
- // v_multc_fixed( xn_buf_fx_32 + overlap / 2 + nz, (float) sqrt( (float) L_frame / NORM_MDCT_FACTOR ), tmp_fx_32, L_frame );
+ // v_multc_fx( xn_buf_fx_32 + overlap / 2 + nz, (float) sqrt( (float) L_frame / NORM_MDCT_FACTOR ), tmp_fx_32, L_frame );
if ( allow_qwin_change )
{
@@ -4093,7 +4088,7 @@ void decoder_tcx_ivas_fx(
*-------------------------------------------------------------------*/
void decoder_tcx_invQ_fx(
Decoder_State *st, /* i/o: coder memory state */
- int16_t prm[], /* i : parameters */
+ Word16 prm[], /* i : parameters */
Word16 A[], /* i : coefficients NxAz[M+1] */
Word16 Aind[], /* i : frame-independent coefficients Az[M+1] */
const Word16 L_spec,
@@ -4728,7 +4723,7 @@ void decoder_tcx_noisefilling_fx(
*-----------------------------------------------------------------*/
/* Init lengths */
- infoIGFStartLine = get_igf_startline( st, L_frame, L_frameTCX );
+ infoIGFStartLine = get_igf_startline_fx( st, L_frame, L_frameTCX );
noiseFillingSize = L_spec;
move16();
diff --git a/lib_dec/dec_tran_fx.c b/lib_dec/dec_tran_fx.c
index b30b1a8c066576225a9db240ba71d830c1e00e21..4bee037ef79bbf8673525ed0be6110a3f61922d4 100644
--- a/lib_dec/dec_tran_fx.c
+++ b/lib_dec/dec_tran_fx.c
@@ -71,15 +71,12 @@ void decod_tran_fx(
Word16 gain_code16;
Word32 L_tmp;
Word16 tmp16, tmp1_fx, tmp_fx;
-#ifdef FIX_2010_PREP_TBE_EXC
Word16 Q_code_preQ;
-#endif
GSC_DEC_HANDLE hGSCDec;
hGSCDec = st_fx->hGSCDec;
MUSIC_POSTFILT_HANDLE hMusicPF;
hMusicPF = st_fx->hMusicPF;
-
gain_code_fx = 0; /* Quantized algebraic codeebook gain */
move32();
norm_gain_code_fx = 0; /* normalized algebraic codeebook gain Q16 */
@@ -257,15 +254,6 @@ void decod_tran_fx(
tmp_idx_2 = idiv1616( i_subfr, L_SUBFR );
}
-#ifdef FIX_2010_PREP_TBE_EXC
- /*
- 2025-09-15 multrus:
- TODO:
- check with vaillancourt
- - where this difference between EVS and IVAS comes from
- - where Q_code_preQ could be derived
- - whether any of the above calculations need to be adjusted
- */
Q_code_preQ = Q6;
move16();
if ( EQ_16( st_fx->element_mode, EVS_MONO ) )
@@ -278,12 +266,6 @@ void decod_tran_fx(
&voice_factors_fx[tmp_idx_2], bwe_exc_fx, gain_preQ_fx, code_preQ_fx, Q_code_preQ,
st_fx->Q_exc, T0, T0_frac, st_fx->coder_type, st_fx->core_brate,
st_fx->element_mode, st_fx->idchan, st_fx->hBWE_TD != NULL, st_fx->tdm_LRTD_flag );
-#else
- prep_tbe_exc_fx( L_frame_fx, L_SUBFR, i_subfr, gain_pit_fx, gain_code_fx, code_fx, voice_fac_fx,
- &voice_factors_fx[tmp_idx_2], bwe_exc_fx, gain_preQ_fx, code_preQ_fx,
- st_fx->Q_exc, T0, T0_frac, st_fx->coder_type, st_fx->core_brate,
- st_fx->element_mode, st_fx->idchan, st_fx->hBWE_TD != NULL, st_fx->tdm_LRTD_flag );
-#endif
/*----------------------------------------------------------------*
* Excitation enhancements (update of total excitation signal)
diff --git a/lib_dec/dlpc_avq_fx.c b/lib_dec/dlpc_avq_fx.c
index 07f1ea6f21206fa6b7d77d2886afc525462e6f85..4be63062f666f69a378635d29c244b182a670ae1 100644
--- a/lib_dec/dlpc_avq_fx.c
+++ b/lib_dec/dlpc_avq_fx.c
@@ -285,10 +285,9 @@ Word16 decode_lpc_avq_fx(
}
Word16 decode_lpc_avq_ivas_fx(
- Decoder_State *st, /* i/o: decoder state structure */
- const Word16 numlpc, /* i : Number of sets of lpc */
- Word16 *param_lpc /* o : lpc parameters */
- ,
+ Decoder_State *st, /* i/o: decoder state structure */
+ const Word16 numlpc, /* i : Number of sets of lpc */
+ Word16 *param_lpc, /* o : lpc parameters */
const Word16 ch, /* i : channel */
const Word16 element_mode, /* i : element mode */
const Word16 sns_low_br_mode /* i : SNS low-bitrate mode */
diff --git a/lib_dec/er_dec_tcx_fx.c b/lib_dec/er_dec_tcx_fx.c
index 2b112c00e752b8cfa234884ed4e9e4eec964bb9d..7cb4f897b24cc393f5589f14aaf2d0530ee9de4c 100644
--- a/lib_dec/er_dec_tcx_fx.c
+++ b/lib_dec/er_dec_tcx_fx.c
@@ -16,35 +16,14 @@
static void calcGainc_fx( Word16 *exc, Word16 Q_exc, Word32 old_fpitch /*Q16*/, Word16 L_subfr /*Q0*/, Word32 lp_gainp /*Q16*/, Word32 *lp_gainc /*Q16*/ )
{
Word16 tmp16, tmp16_2, tmp16_3, tmp_e, tmp2_e, tmp_loop, i;
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Word32 L_c;
- Word32 L_acc, L_tmp;
-#else
Word64 W_acc;
Word32 L_tmp;
-#endif
#ifdef BASOP_NOGLOB_DECLARE_LOCAL
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Flag Overflow = 0;
- Flag Carry = 0;
-#endif
move32();
move32();
#endif
-
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_acc = L_deposit_l( 0 );
- L_c = L_deposit_l( 0 );
-#else
W_acc = 0;
-#endif
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Overflow = 0;
- move16();
- Carry = 0;
- move16();
-#endif
tmp16 = round_fx( old_fpitch ); /*Q0*/
tmp_loop = shl( L_subfr, 1 );
@@ -57,22 +36,9 @@ static void calcGainc_fx( Word16 *exc, Word16 Q_exc, Word32 old_fpitch /*Q16*/,
/*st->lp_gainc += ( exc[i-2*L_subfr] - st->Mode2_lp_gainp * exc[i-2*L_subfr-(int)(st->old_fpitch+0.5f)] ) *
( exc[i-2*L_subfr] - st->Mode2_lp_gainp * exc[i-2*L_subfr-(int)(st->old_fpitch+0.5f)] );*/
tmp16_3 = sub_sat( exc[( i - ( L_subfr * 2 ) )] /*Q1*/, mult_r( tmp16_2 /*Q15*/, exc[( ( i - ( L_subfr * 2 ) ) - tmp16 )] /*Q1*/ ) /*Q1*/ );
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_acc = L_macNs_co( L_acc, tmp16_3, tmp16_3, &Carry, &Overflow ); /*Q3*/
- Overflow = 0;
- move16();
- L_c = L_macNs_co( L_c, 0, 0, &Carry, &Overflow ); /*Accumulate Carrys Q-1*/
- Carry = 0;
- move16();
-#else
W_acc = W_mac_16_16( W_acc, tmp16_3, tmp16_3 ); /*Q3*/
-#endif
}
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_tmp = norm_llQ31( L_c, L_acc, &tmp_e ); /*Q3,norm,tmp_e*/
-#else
- L_tmp = w_norm_llQ31( W_acc, &tmp_e ); /*Q3,norm,tmp_e*/
-#endif
+ L_tmp = w_norm_llQ31( W_acc, &tmp_e ); /*Q3,norm,tmp_e*/
tmp_e = add( tmp_e, 31 - ( add( shl( Q_exc, 1 ), 1 ) ) ); /*L_tmp is Q31, now*/
tmp16 = BASOP_Util_Divide3216_Scale( L_tmp /*Q31,norm,tmp_e*/, shl( L_subfr, 1 ) /*Q15,15*/, &tmp2_e ) /*Q15,tmp2_e+tmp_e-15*/;
tmp_e = sub( add( tmp2_e, tmp_e ), 15 );
@@ -88,56 +54,24 @@ static void calcGainc_fx( Word16 *exc, Word16 Q_exc, Word32 old_fpitch /*Q16*/,
static void calcGainc2_fx( Word16 *exc, Word16 Q_exc, Word16 L_subfr /*Q0*/, Word32 *lp_gainc /*Q16*/ )
{
Word16 i, cnt, tmp16, tmp_e, tmp2_e;
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Word32 L_c, L_acc, L_tmp;
-#else
Word64 W_acc;
Word32 L_tmp;
-#endif
#ifdef BASOP_NOGLOB_DECLARE_LOCAL
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Flag Overflow = 0;
- Flag Carry = 0;
-#endif
-#endif
- move16();
- move16();
-
-
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Carry = 0;
move16();
- Overflow = 0;
move16();
+#endif
- L_c = L_deposit_l( 0 );
- L_acc = L_deposit_l( 0 );
-#else
W_acc = 0;
-#endif
cnt = shl( L_subfr, 1 );
FOR( i = 0; i < cnt; i++ )
{
/* *gainc += ( exc[i-2*L_subfr] ) * ( exc[i-2*L_subfr]); */
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_acc = L_macNs_co( L_acc, exc[( i - ( L_subfr * 2 ) )] /*Q1*/, exc[( i - ( L_subfr * 2 ) )] /*Q1*/, &Carry, &Overflow ); /*Q3*/
- Overflow = 0;
- move16();
- L_c = L_macNs_co( L_c, 0, 0, &Carry, &Overflow ); /* Accumulate Carrys Q-1*/
- Carry = 0;
- move16();
-#else
W_acc = W_mac_16_16( W_acc, exc[( i - ( L_subfr * 2 ) )] /*Q1*/, exc[( i - ( L_subfr * 2 ) )] /*Q1*/ ); /*Q3*/
-#endif
}
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_tmp = norm_llQ31( L_c, L_acc, &tmp_e ); /*Q3,norm,tmp_e*/
-#else
- L_tmp = w_norm_llQ31( W_acc, &tmp_e ); /*Q3,norm,tmp_e*/
-#endif
+ L_tmp = w_norm_llQ31( W_acc, &tmp_e ); /*Q3,norm,tmp_e*/
tmp_e = add( tmp_e, sub( 31, ( add( shl( Q_exc, 1 ), 1 ) ) ) ); /*L_tmp is Q31, now*/
tmp16 = BASOP_Util_Divide3216_Scale( L_tmp /*Q31,norm,tmp_e*/, shl( L_subfr, 1 ) /*Q15,15*/, &tmp2_e ) /*Q15,tmp2_e+tmp_e-15*/;
tmp_e = sub( add( tmp2_e, tmp_e ), 15 );
@@ -990,13 +924,12 @@ void con_tcx_fx(
}
void con_tcx_ivas_fx(
- Decoder_State *st, /* i/o: coder memory state */
- Word16 synth[],
- /* i/o: synth[] */ /*Q0 */
- const Word16 coh, /* i : coherence of stereo signal Q14*/
- Word16 *noise_seed, /* i/o: noise seed for stereo Q0*/
- const Word16 only_left, /* i : TD-PLC only in left channel Q0*/
- const Word16 *A_cng /* i : CNG LP filter coefficients Q14*/
+ Decoder_State *st, /* i/o: coder memory state */
+ Word16 synth[], /* i/o: synth[] Q0 */
+ const Word16 coh, /* i : coherence of stereo signal Q14*/
+ Word16 *noise_seed, /* i/o: noise seed for stereo Q0 */
+ const Word16 only_left, /* i : TD-PLC only in left channel Q0 */
+ const Word16 *A_cng /* i : CNG LP filter coefficients Q14*/
)
{
Word16 i, s, c, L_frame, L_subfr, fLowPassFilter, T0;
@@ -1007,11 +940,7 @@ void con_tcx_ivas_fx(
Word16 pre_emph_buf;
Word16 hp_filt[L_FIR_FER2];
Word16 alpha;
-#ifdef FIX_2003_CON_TCX_OVERFLOW
Word16 tmp_deemph, gain, gainCNG, gain_inov, scf;
-#else
- Word16 tmp_deemph, gain, gainCNG, gain_inov;
-#endif
Word16 *pt_exc, *pt1_exc;
Word16 Tc, tmpSeed;
Word16 fUseExtrapolatedPitch;
@@ -1086,32 +1015,20 @@ void con_tcx_ivas_fx(
/* set excitation memory*/
exc = buf + OLD_EXC_SIZE_DEC;
-#ifdef FIX_2003_CON_TCX_OVERFLOW
tmp_deemph = synth[-1]; /*st->Q_syn_factor*/
move16();
pre_emph_buf = synth[-1]; /*st->Q_syn_factor*/
move16();
-#else
- tmp_deemph = synth[-1]; /*Q0*/
- move16();
- pre_emph_buf = synth[-1]; /*Q0*/
-#endif
test();
IF( ( EQ_16( st->nbLostCmpt, 1 ) ) || hTcxDec->tcxConceal_recalc_exc )
{
/* apply pre-emphasis to the signal */
-#ifdef FIX_2003_CON_TCX_OVERFLOW
mem = shl( synth[( -( ( ( L_frame / 2 ) + hTcxDec->pit_max_TCX ) + M + M ) - 1 )], st->Q_syn_factor );
-#else
- mem = synth[( -( ( ( L_frame / 2 ) + hTcxDec->pit_max_TCX ) + M + M ) - 1 )]; /*Q0*/
-#endif
move16();
Q_exc = E_UTIL_f_preemph3_ivas_fx( &( synth[-( ( ( L_frame / 2 ) + hTcxDec->pit_max_TCX ) + 2 * M )] ), st->preemph_fac, add( add( shr( L_frame, 1 ), hTcxDec->pit_max_TCX ), shl( M, 1 ) ), &mem, 1 );
-#ifdef FIX_2003_CON_TCX_OVERFLOW
scale_sig( &( synth[-( ( ( L_frame / 2 ) + hTcxDec->pit_max_TCX ) + 2 * M )] ), add( add( shr( L_frame, 1 ), hTcxDec->pit_max_TCX ), shl( M, 1 ) ), negate( st->Q_syn_factor ) ); /*Q0, Setting back to Q0, as the following calculations are implemented assuming synth is in Q0 */
-#endif
st->Mode2_lp_gainc = L_deposit_l( 0 );
@@ -1155,17 +1072,11 @@ void con_tcx_ivas_fx(
ELSE
{
/* apply pre-emphasis to the signal */
-#ifdef FIX_2003_CON_TCX_OVERFLOW
mem = shl( synth[( -L_frame - 1 )], st->Q_syn_factor ); /*hTcxDec->Q_synth_factor_old*/
-#else
- mem = synth[( -L_frame - 1 )]; /*Q0*/
-#endif
move16();
Q_exc = E_UTIL_f_preemph3_ivas_fx( &( synth[-L_frame] ), st->preemph_fac, L_frame, &mem, 1 );
-#ifdef FIX_2003_CON_TCX_OVERFLOW
scale_sig( &synth[-L_frame], L_frame, negate( st->Q_syn_factor ) ); /*Q0, Setting back to Q0, as the following calculations are implemented assuming synth is in Q0 */
-#endif
- Copy( st->old_Aq_12_8_fx, A_local, M + 1 ); /*Q14*/
+ Copy( st->old_Aq_12_8_fx, A_local, M + 1 ); /*Q14*/
offset = shr( L_frame, 1 );
IF( GE_16( st->last_good, UNVOICED_TRANSITION ) )
@@ -1780,18 +1691,10 @@ void con_tcx_ivas_fx(
syn = buf + M; /*Q_syn*/
Copy( synth - M, buf, M ); /*Q_syn*/
-#ifdef FIX_2003_CON_TCX_OVERFLOW
scf = norm_s( tmp_deemph );
new_Q = sub( Q_exc, 4 ); // deemph_fx filter gain can be up to 10 (~2^3.32), so 4 bits of headroom are needed to avoid overflow
-#else
- new_Q = sub( Q_exc, 3 );
-#endif
new_Q = s_max( new_Q, -1 );
-#ifdef FIX_2003_CON_TCX_OVERFLOW
new_Q = s_min( new_Q, scf );
-#else
- new_Q = s_min( new_Q, norm_s( tmp_deemph ) );
-#endif
tmp16 = s_min( new_Q, st->prev_Q_syn );
st->prev_Q_syn = new_Q;
@@ -1802,15 +1705,11 @@ void con_tcx_ivas_fx(
move16();
Copy_Scale_sig( buf, mem_syn, M, exp_scale ); /* Q: tmp16 */
-#ifdef FIX_2003_CON_TCX_OVERFLOW
if ( GT_16( sub( Q_syn, st->Q_syn_factor ), scf ) )
{
Q_syn = add( scf, st->Q_syn_factor ); // so that (Q_syn - st->Q_syn_factor) = scf;
}
tmp_deemph = shl( tmp_deemph, sub( Q_syn, st->Q_syn_factor ) );
-#else
- tmp_deemph = shl_sat( tmp_deemph, Q_syn );
-#endif
st->Q_syn = Q_syn;
move16();
@@ -1875,9 +1774,6 @@ void con_tcx_ivas_fx(
/* Deemphasis and output synth and ZIR */
deemph_fx( syn, st->preemph_fac, add( L_frame, shr( L_frame, 1 ) ), &tmp_deemph );
-#ifndef FIX_2003_CON_TCX_OVERFLOW
- bufferCopyFx( syn + sub( L_frame, M + 1 ), st->syn, 1 + M, Q_syn, 0, 0, 0 ); /*Q_syn*/
-#endif
lerp( syn + sub( L_frame, shr( L_frame, 1 ) ), hTcxDec->old_syn_Overl, shr( st->L_frame, 1 ), shr( L_frame, 1 ) );
hTcxDec->Q_old_syn_Overl = Q_syn;
@@ -1900,7 +1796,6 @@ void con_tcx_ivas_fx(
hHQ_core->Q_old_wtda = Q_syn;
move16();
-#ifdef FIX_2003_CON_TCX_OVERFLOW
scf = add( getScaleFactor16( syn, L_frame ), Q_syn );
IF( LT_16( scf, 0 ) ) // Only avoid left shift in bufferCopyFX when overflow could occur
{
@@ -1917,17 +1812,6 @@ void con_tcx_ivas_fx(
Copy_Scale_sig( syn + L_frame, hTcxDec->syn_OverlFB, shr( L_frame, 1 ), sub( st->Q_syn_factor, Q_syn ) );
hTcxDec->Q_syn_OverlFB = st->Q_syn_factor;
-#else
- /* As long as there is no synth scaling factor introduced, which
- is given to the outside, there might occur overflows here */
- BASOP_SATURATE_WARNING_OFF_EVS
- bufferCopyFx( syn, synth, L_frame, Q_syn, 0, 0, 0 ); /*Q_syn*/
- BASOP_SATURATE_WARNING_ON_EVS
-
- Copy_Scale_sig( syn + L_frame, hTcxDec->syn_OverlFB, shr( L_frame, 1 ), sub( 0, Q_syn ) ); /*Q0*/
- hTcxDec->Q_syn_OverlFB = 0;
- move16();
-#endif
/* copy total excitation exc2 as 16kHz for acelp mode1 decoding */
IF( st->hWIDec != NULL )
diff --git a/lib_dec/fd_cng_dec_fx.c b/lib_dec/fd_cng_dec_fx.c
index d3b9634522e9c7e7ed83c4c2a6784a0ac57c2ca7..d8805c4f268703c5b33ae3d35f456b6e61aa3a6a 100644
--- a/lib_dec/fd_cng_dec_fx.c
+++ b/lib_dec/fd_cng_dec_fx.c
@@ -88,9 +88,7 @@ void initFdCngDec_ivas_fx(
hFdCngDec->hFdCngCom->olapBufferAna = hFdCngDec->olapBufferAna;
set16_fx( hFdCngDec->olapBufferSynth2, 0, FFTLEN );
hFdCngDec->hFdCngCom->olapBufferSynth2 = hFdCngDec->olapBufferSynth2;
-#ifdef FIX_1996_MASKING_NOISE
set32_fx( hFdCngDec->hFdCngCom->olapBufferSynth2_fx, 0, FFTLEN );
-#endif
/* Set some counters and flags */
@@ -3644,9 +3642,8 @@ void generate_comfort_noise_dec_hf_ivas_fx(
void generate_masking_noise_fx(
Word16 *timeDomainBuffer, /* i/o : pointer to time domain output buffer 15Q0 */
Word16 Q,
- HANDLE_FD_CNG_COM hFdCngCom /* i/o : pointer to FD_CNG_COM structure */
- ,
- Word16 length, /*Q0*/
+ HANDLE_FD_CNG_COM hFdCngCom, /* i/o : pointer to FD_CNG_COM structure */
+ Word16 length, /*Q0*/
Word16 core /*Q0*/ )
{
Word16 i, s, s1, s2, sq, cnt, startBand2, stopFFTbin2;
@@ -3858,10 +3855,9 @@ void generate_masking_noise_update_seed_fx(
* Generate additional comfort noise (kind of noise filling) *
************************************************************/
void generate_masking_noise_mdct_fx(
- Word32 *mdctBuffer, /* i/o: time-domain signal Q31 - mdctBuffer_e*/
- Word16 *mdctBuffer_e, /* i/o: exponent time-domain signal */
- HANDLE_FD_CNG_COM hFdCngCom /* i/o: FD_CNG structure containing all buffers and variables */
- ,
+ Word32 *mdctBuffer, /* i/o: time-domain signal Q31 - mdctBuffer_e*/
+ Word16 *mdctBuffer_e, /* i/o: exponent time-domain signal */
+ HANDLE_FD_CNG_COM hFdCngCom, /* i/o: FD_CNG structure containing all buffers and variables */
Word16 L_frame )
{
Word16 i, s, s1, s2, sq, cnt;
@@ -4115,12 +4111,12 @@ void generate_masking_noise_mdct_ivas_fx(
}
/*re-normalization of energy level: M/sqrt(2)*/
- v_multc_fixed( maskingNoise, SQRT_NORM_MDCT_FACTOR_Q27, maskingNoise, hFdCngCom->stopFFTbin ); // Q11
+ v_multc_fx( maskingNoise, SQRT_NORM_MDCT_FACTOR_Q27, maskingNoise, hFdCngCom->stopFFTbin ); // Q11
scale_sig32( maskingNoise, hFdCngCom->stopFFTbin, sub( 20, *mdctBuffer_e ) ); // exp = *mdctBuffer_e
/* Add some comfort noise on top of decoded signal */
- v_add_fixed( maskingNoise, mdctBuffer, mdctBuffer, hFdCngCom->stopFFTbin, 1 );
+ v_add_fx_hdrm( maskingNoise, mdctBuffer, mdctBuffer, hFdCngCom->stopFFTbin, 1 );
*mdctBuffer_e = sub( *mdctBuffer_e, 1 );
move16();
}
@@ -4661,7 +4657,7 @@ void generate_masking_noise_ivas_fx(
}
ELSE
{
- v_add_fixed_no_hdrm( maskingNoise_fx, timeDomainBuffer, timeDomainBuffer, s_min( hFdCngCom->frameSize, length ) ); /*Q31 - *exp_out*/
+ v_add_fx_no_hdrm( maskingNoise_fx, timeDomainBuffer, timeDomainBuffer, s_min( hFdCngCom->frameSize, length ) ); /*Q31 - *exp_out*/
}
return;
@@ -4996,29 +4992,18 @@ void generate_masking_noise_lb_dirac_fx(
overwriting it with the synthesis in case of shared tc and synth channel memory, i.e. non-TSM mode */
slot_size_cng = shr( hFdCngCom->frameSize, 4 /* DEFAULT_JBM_CLDFB_TIMESLOTS */ );
/* move start indices forward to the end of the last subframe */
-#ifdef FIX_2025_FDCNG_MULT
cur_subframe_start_outfs = i_mult( nCldfbTs, hSpatParamRendCom->slot_size );
cur_subframe_start_cngfs = i_mult( nCldfbTs, slot_size_cng );
-#else
- cur_subframe_start_outfs = mult( nCldfbTs, hSpatParamRendCom->slot_size );
- cur_subframe_start_cngfs = mult( nCldfbTs, slot_size_cng );
-#endif
/* go from the last subframe back and move the LB noise */
FOR( cur_subframe = sub( hSpatParamRendCom->nb_subframes, 1 ); cur_subframe >= 0; cur_subframe-- )
{
Word16 move_size, subframe_size_outfs;
-#ifdef FIX_2025_FDCNG_MULT
move_size = i_mult( slot_size_cng, hSpatParamRendCom->subframe_nbslots[cur_subframe] );
subframe_size_outfs = i_mult( hSpatParamRendCom->subframe_nbslots[cur_subframe], hSpatParamRendCom->slot_size );
cur_subframe_start_outfs = sub( cur_subframe_start_outfs, i_mult( hSpatParamRendCom->subframe_nbslots[cur_subframe], hSpatParamRendCom->slot_size ) );
cur_subframe_start_cngfs = sub( cur_subframe_start_cngfs, i_mult( hSpatParamRendCom->subframe_nbslots[cur_subframe], slot_size_cng ) );
-#else
- move_size = mult( slot_size_cng, hSpatParamRendCom->subframe_nbslots[cur_subframe] );
- subframe_size_outfs = mult( hSpatParamRendCom->subframe_nbslots[cur_subframe], hSpatParamRendCom->slot_size );
- cur_subframe_start_outfs = sub( cur_subframe_start_outfs, mult( hSpatParamRendCom->subframe_nbslots[cur_subframe], hSpatParamRendCom->slot_size ) );
- cur_subframe_start_cngfs = sub( cur_subframe_start_cngfs, mult( hSpatParamRendCom->subframe_nbslots[cur_subframe], slot_size_cng ) );
-#endif
+
/* move cna */
Copy32( tdBuffer + cur_subframe_start_cngfs, tdBuffer + cur_subframe_start_outfs, move_size );
diff --git a/lib_dec/gs_dec_amr_wb_fx.c b/lib_dec/gs_dec_amr_wb_fx.c
index eea37431a865aba1ec1ddcc180a859525f672e45..4a0bf352fab3e016e426fa83dbf34ed89d4259ee 100644
--- a/lib_dec/gs_dec_amr_wb_fx.c
+++ b/lib_dec/gs_dec_amr_wb_fx.c
@@ -122,8 +122,7 @@ static void Ener_per_band_fx(
static void Apply_gain_fx(
Word16 exc_diffQ_fx[], /* i/o: Quantized excitation Qx*/
Word32 L_Ener_per_bd_iQ[], /* i : Target ener per band Q16*/
- Word32 L_Ener_per_bd_yQ[] /* i : Ener per band for norm vector Qx*/
- ,
+ Word32 L_Ener_per_bd_yQ[], /* i : Ener per band for norm vector Qx*/
const Word16 Q_out )
{
Word16 i_band;
diff --git a/lib_dec/hq_core_dec_fx.c b/lib_dec/hq_core_dec_fx.c
index 5153215dbc021b5fe2ade623fbf2b8e0dea68933..e30fb0ec22cc962b64d9c472ae20a9fd65bde639 100644
--- a/lib_dec/hq_core_dec_fx.c
+++ b/lib_dec/hq_core_dec_fx.c
@@ -892,7 +892,7 @@ void ivas_hq_core_dec_fx(
{
/* Rough resampling, but reduces energy loss in case of switch to ACELP in first good frame */
L_lerp_fx_q11( t_audio_q, wtda_audio_LB, st_fx->L_frame, inner_frame );
- v_multc_fixed_16( t_audio_q, ONE_IN_Q14, wtda_audio_LB, st_fx->L_frame );
+ v_multc_fx_16( t_audio_q, ONE_IN_Q14, wtda_audio_LB, st_fx->L_frame );
Q_audio = 15;
move16();
}
@@ -903,7 +903,7 @@ void ivas_hq_core_dec_fx(
tmp = Sqrt16( tmp, &tmp_e );
ener_match = shr( tmp, sub( 2, tmp_e ) ); // Q13
- v_multc_fixed_16( t_audio_q, ener_match, t_audio_q, inner_frame ); // Q10
+ v_multc_fx_16( t_audio_q, ener_match, t_audio_q, inner_frame ); // Q10
Scale_sig32( t_audio_q, inner_frame, Q2 ); // Q10 + Q2
Q_audio = Q_G_audio;
diff --git a/lib_dec/hq_env_dec_fx.c b/lib_dec/hq_env_dec_fx.c
index 7c5af1b2aa8d796a21141a34e20bdce3601d41d0..5011dcf86f35da45f47522514903eafdad35afd7 100644
--- a/lib_dec/hq_env_dec_fx.c
+++ b/lib_dec/hq_env_dec_fx.c
@@ -13,15 +13,15 @@
* Decode envelope indices
*------------------------------------------------------------------------*/
-Word16 decode_envelope_indices_fx( /* o : Number of bits Q0*/
- Decoder_State *st_fx, /* i/o: decoder state structure */
- const Word16 start_norm, /* i : starting band index Q0*/
- const Word16 num_sfm, /* i : Number of subbands Q0*/
- const Word16 numnrmibits, /* i : Bitrate of fall-back coding mode Q0*/
- Word16 *difidx, /* o : Diff indices/encoded diff indices Q0*/
- const Word16 flag_HQ2 /* i : indicator of HQ2 core Q0*/
- ,
- const Word16 is_transient /* i : indicator of HQ_TRANSIENT Q0*/
+/* o : Number of bits Q0*/
+Word16 decode_envelope_indices_fx(
+ Decoder_State *st_fx, /* i/o: decoder state structure */
+ const Word16 start_norm, /* i : starting band index Q0*/
+ const Word16 num_sfm, /* i : Number of subbands Q0*/
+ const Word16 numnrmibits, /* i : Bitrate of fall-back coding mode Q0*/
+ Word16 *difidx, /* o : Diff indices/encoded diff indices Q0*/
+ const Word16 flag_HQ2, /* i : indicator of HQ2 core Q0*/
+ const Word16 is_transient /* i : indicator of HQ_TRANSIENT Q0*/
)
{
Word16 hcode_l;
diff --git a/lib_dec/igf_dec_fx.c b/lib_dec/igf_dec_fx.c
index ee462d7c550d1871a6ae948c118c270f310e556c..686882fd3ed748598f9fb81d41058d6e384a3739 100644
--- a/lib_dec/igf_dec_fx.c
+++ b/lib_dec/igf_dec_fx.c
@@ -909,9 +909,9 @@ static void IGF_prepStereo(
H_IGF_INFO hInfoL, hInfoR;
Word16 tb, sfb, strt_cpy, tile_idx;
Word16 *swb_offset;
- const Word32 c_fx = SQRT2_OVER_2_FIXED; // Q31
- Word16 selectionL = 0; // 0 -> IGF, 1 -> pSpecFlat
- Word16 selectionR = 0; // 0 -> IGF, 1 -> pSpecFlat
+ const Word32 c_fx = SQRT2_OVER_2_FX; // Q31
+ Word16 selectionL = 0; // 0 -> IGF, 1 -> pSpecFlat
+ Word16 selectionR = 0; // 0 -> IGF, 1 -> pSpecFlat
move32();
move16();
move16();
@@ -1482,15 +1482,8 @@ static void IGF_appl( IGF_DEC_PRIVATE_DATA_HANDLE hPrivateData, /**< in
Word16 dS[IGF_MAX_SFB];
Word16 dS_e[IGF_MAX_SFB];
Word32 energyTmp[24];
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Word32 L_c;
-#endif
Word16 Hr;
#ifdef BASOP_NOGLOB_DECLARE_LOCAL
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Flag Overflow = 0;
- Flag Carry = 0;
-#endif
move16();
move16();
#endif
@@ -1569,22 +1562,7 @@ static void IGF_appl( IGF_DEC_PRIVATE_DATA_HANDLE hPrivateData, /**< in
&dE_e,
negate( tmp ) );
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_c = 0;
- move32();
- FOR( tb = 0; tb < 24; tb++ )
- {
- Carry = 0;
- move16();
- L_tmp = L_add_co( L_tmp, energyTmp[tb], &Carry, &Overflow ); // Q31 - dE_e
- Overflow = 0;
- move16();
- L_c = L_macNs_co( L_c, 0, 0, &Carry, &Overflow );
- }
- L_tmp = norm_llQ31( L_c, L_tmp, &shift ); // Q31
-#else
L_tmp = sum_array_norm( energyTmp, 24, &shift );
-#endif
/* float: dE = (float)sqrt(dE / 24.f); basop: */
shift = add( sub( shift, 4 ), dE_e ); /* x/24 = (x >> 4) * 1/1.5 */
dE = Sqrt16norm( extract_h( L_tmp ), &shift );
@@ -2176,20 +2154,8 @@ static void IGF_appl_ivas( IGF_DEC_PRIVATE_DATA_HANDLE hPrivateData, /**< in
Word16 dS[IGF_MAX_SFB];
Word16 dS_e[IGF_MAX_SFB];
Word32 energyTmp[24];
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Word32 L_c;
-#endif
Word16 spec_e_arr[N_MAX];
Word16 vspec_e_arr[N_MAX_TCX - IGF_START_MN];
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Flag Overflow = 0;
- move16();
- Flag Carry = 0;
- move16();
-#endif
-#endif
-
/* initialize variables */
w0 = 6586; // Q15
@@ -2266,21 +2232,7 @@ static void IGF_appl_ivas( IGF_DEC_PRIVATE_DATA_HANDLE hPrivateData, /**< in
&dE_e,
negate( tmp ) );
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_c = 0;
- move32();
- FOR( tb = 0; tb < 24; tb++ )
- {
- Carry = 0;
- move16();
- L_tmp = L_add_co( L_tmp, energyTmp[tb], &Carry, &Overflow ); // Q31 - dE_e
- Overflow = 0;
- L_c = L_macNs_co( L_c, 0, 0, &Carry, &Overflow );
- }
- L_tmp = norm_llQ31( L_c, L_tmp, &shift ); // Q31
-#else
L_tmp = sum_array_norm( energyTmp, 24, &shift );
-#endif
/* float: dE = (float)sqrt(dE / 24.f); basop: */
shift = add( sub( shift, 4 ), dE_e ); /* x/24 = (x >> 4) * 1/1.5 */
dE = Sqrt16norm( extract_h( L_tmp ), &shift );
@@ -2905,6 +2857,7 @@ static void IGF_getWhiteSpectralData_ivas(
Word16 tmp_e;
Word16 out_e_arr[IGF_START_MX + MAX_IGF_SFB_LEN];
Word16 max_out_e;
+ Word64 window_sum;
assert( LT_16( stop, IGF_START_MX + MAX_IGF_SFB_LEN ) );
/* inits */
@@ -2930,16 +2883,18 @@ static void IGF_getWhiteSpectralData_ivas(
ak_e = add( tmp_e, sub( shl( sub( in_e, s_l ), 1 ), 15 ) ); // tmp_e + 2 * (in_e - s_l) - 15
ak_e = sub( ak_e, 1 );
- FOR( i = start; i < stop - level; i++ )
+ window_sum = 0;
+ move64();
+ FOR( j = start - level; j < start + level; j++ )
{
- Word64 temp = 0;
- move64();
- FOR( j = i - level; j < i + level + 1; j++ )
- {
- temp = W_mac_32_32( temp, in[j], in[j] );
- }
- ak = Mult_32_16( W_shl_sat_l( temp, shift ), quo ); // add( shl( level, 1 ), 1 ), &tmp_e ) );
+ window_sum = W_mac_32_32( window_sum, in[j], in[j] );
+ }
+ FOR( i = start; i < stop - level; i++ )
+ {
+ window_sum = W_mac_32_32( window_sum, in[i + level], in[i + level] ); /* add the right one */
+ ak = Mult_32_16( W_shl_sat_l( window_sum, shift ), quo ); // add( shl( level, 1 ), 1 ), &tmp_e ) );
+ window_sum = W_sub( window_sum, W_mult_32_32( in[i - level], in[i - level] ) ); /* subtract the left one */
n = sub( ak_e, norm_l( ak ) );
n = shr( n, 1 );
@@ -2951,16 +2906,10 @@ static void IGF_getWhiteSpectralData_ivas(
FOR( ; i < stop; i++ )
{
- Word64 temp = 0;
- move64();
+ ak = L_deposit_h( BASOP_Util_Divide3216_Scale( W_shl_sat_l( window_sum, shift ), sub( stop, sub( i, level ) ), &tmp_e ) );
+ window_sum = W_sub( window_sum, W_mult_32_32( in[i - level], in[i - level] ) ); /* subtract the left one */
+ ak_e = add( tmp_e, eff_e ); // tmp_e + 2 * (in_e - s_l) - 15
- FOR( j = i - level; j < stop; j++ )
- {
- temp = W_mac_32_32( temp, in[j], in[j] );
- }
-
- ak = L_deposit_h( BASOP_Util_Divide3216_Scale( W_shl_sat_l( temp, shift ), sub( stop, sub( i, level ) ), &tmp_e ) );
- ak_e = add( tmp_e, eff_e ); // tmp_e + 2 * (in_e - s_l) - 15
n = sub( ak_e, add( norm_l( ak ), 1 ) );
n = shr( n, 1 );
@@ -4122,16 +4071,17 @@ void IGFDecReplicateTCX10State_fx(
/**********************************************************************/ /*
copy the LPC flat spectrum to IGF buffer
**************************************************************************/
-void IGFDecCopyLPCFlatSpectrum( const IGF_DEC_INSTANCE_HANDLE hInstance, /**< in: | instance handle of IGF Decoder */
- const Word32 *pSpectrumFlat, /**< in: Q31 | LPC flattend spectrum from TCX dec */
- const Word16 pSpectrumFlat_exp, /**< in: | exponent of pSpectrumFlat */
- const Word16 igfGridIdx /**< in: Q0 | IGF grid index */
+
+void IGFDecCopyLPCFlatSpectrum(
+ const IGF_DEC_INSTANCE_HANDLE hInstance, /**< in: | instance handle of IGF Decoder */
+ const Word32 *pSpectrumFlat, /**< in: Q31 | LPC flattend spectrum from TCX dec */
+ const Word16 pSpectrumFlat_exp, /**< in: | exponent of pSpectrumFlat */
+ const Word16 igfGridIdx /**< in: Q0 | IGF grid index */
)
{
IGF_DEC_PRIVATE_DATA_HANDLE hPrivateData;
H_IGF_GRID hGrid;
-
IF( hInstance )
{
hPrivateData = &hInstance->igfData;
@@ -4144,6 +4094,8 @@ void IGFDecCopyLPCFlatSpectrum( const IGF_DEC_INSTANCE_HANDLE hInstance, /**< in
Copy32( pSpectrumFlat, hPrivateData->pSpecFlat, hGrid->startLine );
}
+
+ return;
}
void IGFDecCopyLPCFlatSpectrum_fx(
@@ -4168,13 +4120,18 @@ void IGFDecCopyLPCFlatSpectrum_fx(
Copy_Scale_sig32( pSpectrumFlat, hPrivateData->pSpecFlat, hGrid->startLine, sub( pSpectrumFlat_exp, 20 ) ); // Q11
}
+
+ return;
}
-/**********************************************************************/ /*
- store the IGF bitstream information for TCX10 subframes
- **************************************************************************/
-void IGFDecStoreTCX10SubFrameData( const IGF_DEC_INSTANCE_HANDLE hInstance, /**< in: | instance handle of IGF Decoder */
- const Word16 subFrameIdx /**< in: Q0 | index of subframe */
+
+/**********************************************************************/ /*
+store the IGF bitstream information for TCX10 subframes
+**************************************************************************/
+
+void IGFDecStoreTCX10SubFrameData(
+ const IGF_DEC_INSTANCE_HANDLE hInstance, /**< in: | instance handle of IGF Decoder */
+ const Word16 subFrameIdx /**< in: Q0 | index of subframe */
)
{
IGF_DEC_PRIVATE_DATA_HANDLE hPrivateData;
@@ -4192,13 +4149,18 @@ void IGFDecStoreTCX10SubFrameData( const IGF_DEC_INSTANCE_HANDLE hInstance, /**<
/* store flattening trigger for current subframe */
hPrivateData->igf_flatteningTrigger_subframe[subFrameIdx] = hInstance->flatteningTrigger;
move16();
+
+ return;
}
-/**********************************************************************/ /*
- restore the IGF bitstream information for TCX10 subframes
- **************************************************************************/
-void IGFDecRestoreTCX10SubFrameData( const IGF_DEC_INSTANCE_HANDLE hInstance, /**< in: | instance handle of IGF Decoder */
- const Word16 subFrameIdx /**< in: Q0 | index of subframe */
+
+/**********************************************************************/ /*
+restore the IGF bitstream information for TCX10 subframes
+**************************************************************************/
+
+void IGFDecRestoreTCX10SubFrameData(
+ const IGF_DEC_INSTANCE_HANDLE hInstance, /**< in: | instance handle of IGF Decoder */
+ const Word16 subFrameIdx /**< in: Q0 | index of subframe */
)
{
IGF_DEC_PRIVATE_DATA_HANDLE hPrivateData;
@@ -4249,11 +4211,13 @@ void IGFDecRestoreTCX10SubFrameData_fx(
return;
}
+
/*-----------------------------------------------------------------------*
* init_igf_dec()
*
* Initialize IGF decoder parameters
*-----------------------------------------------------------------------*/
+
void init_igf_dec(
IGF_DEC_INSTANCE_HANDLE hIGFDec /* i/o: IGF decoder handle */
)
@@ -4300,7 +4264,14 @@ void init_igf_dec(
return;
}
-Word16 get_igf_startline(
+
+/*-----------------------------------------------------------------------*
+ * init_igget_igf_startline()
+ *
+ *
+ *-----------------------------------------------------------------------*/
+
+Word16 get_igf_startline_fx(
Decoder_State *st, /* i : decoder state */
const Word16 L_frame, /* i : length of the frame */
const Word16 L_frameTCX /* i : full band frame length */
diff --git a/lib_dec/ivas_binRenderer_internal_fx.c b/lib_dec/ivas_binRenderer_internal_fx.c
index a92d8a3d58e67282c2d78929eae13697e613d3f5..70e288ba31ad46a3f8ab5fa3535d4d8da892973d 100644
--- a/lib_dec/ivas_binRenderer_internal_fx.c
+++ b/lib_dec/ivas_binRenderer_internal_fx.c
@@ -56,8 +56,14 @@
#define NUM_TAPS_F0_3 ( Word16 )( 29 ) // (Word16) ceil( 0.3f * hBinRenConvModule->numTaps )
#define REVERB_INPUT_DOWNMIX_CHANNELS ( 11 )
+
+#define NUM_TAPS_F0_6 ( Word16 )( 58 ) // (Word16) ceil( 0.6f * hBinRenConvModule->numTaps )
+#define NUM_TAPS_F0_5 ( Word16 )( 48 ) // (Word16) ceil( 0.5f * hBinRenConvModule->numTaps )
+#define NUM_TAPS_F0_4 ( Word16 )( 39 ) // (Word16) ceil( 0.4f * hBinRenConvModule->numTaps )
+#define NUM_TAPS_F0_3 ( Word16 )( 29 ) // (Word16) ceil( 0.3f * hBinRenConvModule->numTaps )
+
/* Downmix table for sparse frequency domain reverberator*/
-const Word32 dmxmtx_table_fx[BINAURAL_CHANNELS][REVERB_INPUT_DOWNMIX_CHANNELS] = {
+static const Word32 dmxmtx_table_fx[BINAURAL_CHANNELS][REVERB_INPUT_DOWNMIX_CHANNELS] = {
// Q31
{ 0x7fffffff, 0, 1518485623, 0x7fffffff, 0, 0x7fffffff, 0, 0x7fffffff, 0, 0x7fffffff, 0 },
{ 0, 0x7fffffff, 1518485623, 0, 0x7fffffff, 0, 0x7fffffff, 0, 0x7fffffff, 0, 0x7fffffff },
@@ -69,6 +75,7 @@ const Word32 dmxmtx_table_fx[BINAURAL_CHANNELS][REVERB_INPUT_DOWNMIX_CHANNELS] =
*
*
*-------------------------------------------------------------------------*/
+
static void ivas_binRenderer_filterModule_fx(
Word32 out_Conv_CLDFB_real[BINAURAL_CHANNELS][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* o : real part of Binaural signals Q6 */
Word32 out_Conv_CLDFB_imag[BINAURAL_CHANNELS][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* o : imag part of Binaural signals Q6 */
@@ -168,11 +175,13 @@ static void ivas_binRenderer_filterModule_fx(
return;
}
+
/*-------------------------------------------------------------------------
* ivas_binRenderer_convModuleOpen()
*
* Open convolution module handle of fastconv binaural renderer
*-------------------------------------------------------------------------*/
+
static ivas_error ivas_binRenderer_convModuleOpen(
BINAURAL_RENDERER_HANDLE hBinRenderer,
const Word16 renderer_type,
@@ -207,17 +216,11 @@ static ivas_error ivas_binRenderer_convModuleOpen(
move16();
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
hBinRenConvModule->numTaps = hHrtf->ntaps;
move16();
-#endif
IF( EQ_16( renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) )
{
-#ifndef FIX_CREND_SIMPLIFY_CODE
- hBinRenConvModule->numTaps = BINAURAL_NTAPS_MAX;
- move16();
-#endif
/* Use variable order filtering */
bandIdx = 0;
move16();
@@ -249,18 +252,6 @@ static ivas_error ivas_binRenderer_convModuleOpen(
}
ELSE
{
-#ifndef FIX_CREND_SIMPLIFY_CODE
- IF( EQ_16( hBinRenderer->ivas_format, SBA_FORMAT ) )
- {
- hBinRenConvModule->numTaps = BINAURAL_NTAPS_SBA;
- move16();
- }
- ELSE
- {
- hBinRenConvModule->numTaps = BINAURAL_NTAPS;
- move16();
- }
-#endif
/* Use fixed order filtering */
bandIdx = 0;
move16();
@@ -342,7 +333,6 @@ static ivas_error ivas_binRenderer_convModuleOpen(
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for Convolution Module \n" ) );
}
-
FOR( bandIdx = 0; bandIdx < hBinRenderer->conv_band; bandIdx++ )
{
IF( ( hBinRenConvModule->filterStatesLeftReal_fx[pos_idx][bandIdx] = (Word32 **) malloc( hBinRenderer->nInChannels * sizeof( Word32 * ) ) ) == NULL )
@@ -376,12 +366,8 @@ static ivas_error ivas_binRenderer_convModuleOpen(
{
FOR( chIdx = 0; chIdx < hBinRenderer->nInChannels; chIdx++ )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
Word16 tmp;
tmp = chIdx;
-#else
- Word16 tmp = 0;
-#endif
move16();
IF( isLoudspeaker )
@@ -413,66 +399,10 @@ static ivas_error ivas_binRenderer_convModuleOpen(
}
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
hBinRenConvModule->filterTapsLeftReal_fx[bandIdx][chIdx] = hHrtf->leftReal_fx[bandIdx][tmp];
hBinRenConvModule->filterTapsLeftImag_fx[bandIdx][chIdx] = hHrtf->leftImag_fx[bandIdx][tmp];
hBinRenConvModule->filterTapsRightReal_fx[bandIdx][chIdx] = hHrtf->rightReal_fx[bandIdx][tmp];
hBinRenConvModule->filterTapsRightImag_fx[bandIdx][chIdx] = hHrtf->rightImag_fx[bandIdx][tmp];
-#else
- IF( EQ_16( renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) )
- {
- /* set the memories to zero */
- IF( isLoudspeaker )
- {
- hBinRenConvModule->filterTapsLeftReal_fx[bandIdx][chIdx] = hHrtf->leftBRIRReal_fx[bandIdx][tmp];
- hBinRenConvModule->filterTapsLeftImag_fx[bandIdx][chIdx] = hHrtf->leftBRIRImag_fx[bandIdx][tmp];
- hBinRenConvModule->filterTapsRightReal_fx[bandIdx][chIdx] = hHrtf->rightBRIRReal_fx[bandIdx][tmp];
- hBinRenConvModule->filterTapsRightImag_fx[bandIdx][chIdx] = hHrtf->rightBRIRImag_fx[bandIdx][tmp];
- }
- }
- ELSE
- {
- /* set the memories to zero */
- IF( isLoudspeaker )
- {
- hBinRenConvModule->filterTapsLeftReal_fx[bandIdx][chIdx] = hHrtf->leftHRIRReal_fx[bandIdx][tmp];
- hBinRenConvModule->filterTapsLeftImag_fx[bandIdx][chIdx] = hHrtf->leftHRIRImag_fx[bandIdx][tmp];
- hBinRenConvModule->filterTapsRightReal_fx[bandIdx][chIdx] = hHrtf->rightHRIRReal_fx[bandIdx][tmp];
- hBinRenConvModule->filterTapsRightImag_fx[bandIdx][chIdx] = hHrtf->rightHRIRImag_fx[bandIdx][tmp];
- }
- ELSE
- {
- IF( EQ_16( input_config, IVAS_AUDIO_CONFIG_HOA3 ) )
- {
- /* HOA3 filter coefficients */
- hBinRenConvModule->filterTapsLeftReal_fx[bandIdx][chIdx] = hHrtf->leftHRIRReal_HOA3_fx[bandIdx][chIdx];
- hBinRenConvModule->filterTapsLeftImag_fx[bandIdx][chIdx] = hHrtf->leftHRIRImag_HOA3_fx[bandIdx][chIdx];
- hBinRenConvModule->filterTapsRightReal_fx[bandIdx][chIdx] = hHrtf->rightHRIRReal_HOA3_fx[bandIdx][chIdx];
- hBinRenConvModule->filterTapsRightImag_fx[bandIdx][chIdx] = hHrtf->rightHRIRImag_HOA3_fx[bandIdx][chIdx];
- }
- ELSE IF( EQ_16( input_config, IVAS_AUDIO_CONFIG_HOA2 ) )
- {
- /* HOA2 filter coefficients */
- hBinRenConvModule->filterTapsLeftReal_fx[bandIdx][chIdx] = hHrtf->leftHRIRReal_HOA2_fx[bandIdx][chIdx];
- hBinRenConvModule->filterTapsLeftImag_fx[bandIdx][chIdx] = hHrtf->leftHRIRImag_HOA2_fx[bandIdx][chIdx];
- hBinRenConvModule->filterTapsRightReal_fx[bandIdx][chIdx] = hHrtf->rightHRIRReal_HOA2_fx[bandIdx][chIdx];
- hBinRenConvModule->filterTapsRightImag_fx[bandIdx][chIdx] = hHrtf->rightHRIRImag_HOA2_fx[bandIdx][chIdx];
- }
- ELSE IF( EQ_16( input_config, IVAS_AUDIO_CONFIG_FOA ) )
- {
- /* FOA filter coefficients */
- hBinRenConvModule->filterTapsLeftReal_fx[bandIdx][chIdx] = hHrtf->leftHRIRReal_FOA_fx[bandIdx][chIdx];
- hBinRenConvModule->filterTapsLeftImag_fx[bandIdx][chIdx] = hHrtf->leftHRIRImag_FOA_fx[bandIdx][chIdx];
- hBinRenConvModule->filterTapsRightReal_fx[bandIdx][chIdx] = hHrtf->rightHRIRReal_FOA_fx[bandIdx][chIdx];
- hBinRenConvModule->filterTapsRightImag_fx[bandIdx][chIdx] = hHrtf->rightHRIRImag_FOA_fx[bandIdx][chIdx];
- }
- ELSE
- {
- return IVAS_ERR_INVALID_INPUT_FORMAT;
- }
- }
- }
-#endif
}
}
@@ -529,7 +459,6 @@ void ivas_init_binaural_hrtf_fx(
{
Word16 i;
-#ifdef FIX_CREND_SIMPLIFY_CODE
HrtfFastConv->leftReal_fx = NULL;
HrtfFastConv->leftImag_fx = NULL;
HrtfFastConv->rightReal_fx = NULL;
@@ -538,48 +467,10 @@ void ivas_init_binaural_hrtf_fx(
move32();
HrtfFastConv->n_channels = 0;
move16();
-#else
- HrtfFastConv->leftHRIRReal_HOA3_fx = NULL;
- HrtfFastConv->leftHRIRImag_HOA3_fx = NULL;
- HrtfFastConv->rightHRIRReal_HOA3_fx = NULL;
- HrtfFastConv->rightHRIRImag_HOA3_fx = NULL;
- HrtfFastConv->FASTCONV_HOA3_latency_s_fx = 0;
- move32();
-
- HrtfFastConv->leftHRIRReal_fx = NULL;
- HrtfFastConv->leftHRIRImag_fx = NULL;
- HrtfFastConv->rightHRIRReal_fx = NULL;
- HrtfFastConv->rightHRIRImag_fx = NULL;
- HrtfFastConv->FASTCONV_HRIR_latency_s_fx = 0;
- move32();
-
- HrtfFastConv->leftBRIRReal_fx = NULL;
- HrtfFastConv->leftBRIRImag_fx = NULL;
- HrtfFastConv->rightBRIRReal_fx = NULL;
- HrtfFastConv->rightBRIRImag_fx = NULL;
- HrtfFastConv->FASTCONV_BRIR_latency_s_fx = 0;
- move32();
-
- HrtfFastConv->leftHRIRReal_HOA2_fx = NULL;
- HrtfFastConv->leftHRIRImag_HOA2_fx = NULL;
- HrtfFastConv->rightHRIRReal_HOA2_fx = NULL;
- HrtfFastConv->rightHRIRImag_HOA2_fx = NULL;
- HrtfFastConv->FASTCONV_HOA2_latency_s_fx = 0;
- move32();
-
- HrtfFastConv->leftHRIRReal_FOA_fx = NULL;
- HrtfFastConv->leftHRIRImag_FOA_fx = NULL;
- HrtfFastConv->rightHRIRReal_FOA_fx = NULL;
- HrtfFastConv->rightHRIRImag_FOA_fx = NULL;
- HrtfFastConv->FASTCONV_FOA_latency_s_fx = 0;
- move32();
-#endif
HrtfFastConv->allocate_init_flag = 0;
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
HrtfFastConv->ntaps = 0;
move16();
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
HrtfFastConv->FASTCONV_latency_s_Q_fx = 0;
move16();
HrtfFastConv->FASTCONV_taps_s_Q_fx = 0;
@@ -588,8 +479,6 @@ void ivas_init_binaural_hrtf_fx(
move16();
HrtfFastConv->FASTCONV_reverbEne_s_Q_fx = 0;
move16();
-#endif
-#endif
FOR( i = 0; i < CLDFB_NO_CHANNELS_MAX; i++ )
{
@@ -653,18 +542,11 @@ return IVAS_ERR_OK;
*-------------------------------------------------------------------------*/
ivas_error ivas_allocate_binaural_hrtf_fx(
- HRTFS_FASTCONV *HrtfFastConv, /* i/o: FASTCONV HRTF structure */
-#ifdef FIX_CREND_SIMPLIFY_CODE
- const int16_t n_channels, /* i : number of input channels */
-#else
- const AUDIO_CONFIG input_config, /* i : input audio configuration */
- const BINAURAL_INPUT_AUDIO_CONFIG bin_input_config, /* i : binaural input audio config */
- const RENDERER_TYPE renderer_type, /* i : renderer type */
-#endif
+ HRTFS_FASTCONV *HrtfFastConv, /* i/o: FASTCONV HRTF structure */
+ const int16_t n_channels, /* i : number of input channels */
const Word16 allocate_init_flag /* i : Memory allocation flag */
)
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
HrtfFastConv->n_channels = n_channels;
move16();
@@ -694,162 +576,7 @@ ivas_error ivas_allocate_binaural_hrtf_fx(
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for HrtfFastConv->rightImag" );
}
}
-#else
- test();
- IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_HOA3 ) || EQ_32( bin_input_config, BINAURAL_INPUT_AUDIO_CONFIG_HOA3 ) )
- {
- test();
- test();
- test();
- IF( ( HrtfFastConv->leftHRIRReal_HOA3_fx != NULL ) && ( HrtfFastConv->leftHRIRImag_HOA3_fx != NULL ) && ( HrtfFastConv->rightHRIRReal_HOA3_fx != NULL ) && ( HrtfFastConv->rightHRIRImag_HOA3_fx != NULL ) )
- {
- return IVAS_ERR_OK;
- }
- ELSE
- {
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->leftHRIRReal_HOA3_fx, BINAURAL_CONVBANDS, HOA3_CHANNELS, BINAURAL_NTAPS_SBA, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRReal_HOA3" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->leftHRIRImag_HOA3_fx, BINAURAL_CONVBANDS, HOA3_CHANNELS, BINAURAL_NTAPS_SBA, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRImag_HOA3" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->rightHRIRReal_HOA3_fx, BINAURAL_CONVBANDS, HOA3_CHANNELS, BINAURAL_NTAPS_SBA, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRReal_HOA3" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->rightHRIRImag_HOA3_fx, BINAURAL_CONVBANDS, HOA3_CHANNELS, BINAURAL_NTAPS_SBA, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRImag_HOA3" );
- }
- }
- }
-
- test();
- IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_HOA2 ) || EQ_32( bin_input_config, BINAURAL_INPUT_AUDIO_CONFIG_HOA2 ) )
- {
- test();
- test();
- test();
- IF( ( HrtfFastConv->leftHRIRReal_HOA2_fx != NULL ) && ( HrtfFastConv->leftHRIRImag_HOA2_fx != NULL ) && ( HrtfFastConv->rightHRIRReal_HOA2_fx != NULL ) && ( HrtfFastConv->rightHRIRImag_HOA2_fx != NULL ) )
- {
- return IVAS_ERR_OK;
- }
- ELSE
- {
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->leftHRIRReal_HOA2_fx, BINAURAL_CONVBANDS, HOA2_CHANNELS, BINAURAL_NTAPS_SBA, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRReal_HOA2" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->leftHRIRImag_HOA2_fx, BINAURAL_CONVBANDS, HOA2_CHANNELS, BINAURAL_NTAPS_SBA, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRImag_HOA2" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->rightHRIRReal_HOA2_fx, BINAURAL_CONVBANDS, HOA2_CHANNELS, BINAURAL_NTAPS_SBA, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRReal_HOA2" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->rightHRIRImag_HOA2_fx, BINAURAL_CONVBANDS, HOA2_CHANNELS, BINAURAL_NTAPS_SBA, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRImag_HOA2" );
- }
- }
- }
-
- test();
- IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_FOA ) || EQ_32( bin_input_config, BINAURAL_INPUT_AUDIO_CONFIG_FOA ) )
- {
- test();
- test();
- test();
- IF( ( HrtfFastConv->leftHRIRReal_FOA_fx != NULL ) && ( HrtfFastConv->leftHRIRImag_FOA_fx != NULL ) && ( HrtfFastConv->rightHRIRReal_FOA_fx != NULL ) && ( HrtfFastConv->rightHRIRImag_FOA_fx != NULL ) )
- {
- return IVAS_ERR_OK;
- }
- ELSE
- {
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->leftHRIRReal_FOA_fx, BINAURAL_CONVBANDS, FOA_CHANNELS, BINAURAL_NTAPS_SBA, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRReal_FOA" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->leftHRIRImag_FOA_fx, BINAURAL_CONVBANDS, FOA_CHANNELS, BINAURAL_NTAPS_SBA, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRImag_FOA" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->rightHRIRReal_FOA_fx, BINAURAL_CONVBANDS, FOA_CHANNELS, BINAURAL_NTAPS_SBA, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRReal_FOA" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->rightHRIRImag_FOA_fx, BINAURAL_CONVBANDS, FOA_CHANNELS, BINAURAL_NTAPS_SBA, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRImag_FOA" );
- }
- }
- }
-
- test();
- IF( EQ_32( renderer_type, RENDERER_BINAURAL_FASTCONV ) || EQ_32( bin_input_config, BINAURAL_INPUT_AUDIO_CONFIG_COMBINED ) )
- {
- test();
- test();
- test();
- IF( ( HrtfFastConv->leftHRIRReal_fx != NULL ) && ( HrtfFastConv->leftHRIRImag_fx != NULL ) && ( HrtfFastConv->rightHRIRReal_fx != NULL ) && ( HrtfFastConv->rightHRIRImag_fx != NULL ) )
- {
- return IVAS_ERR_OK;
- }
- ELSE
- {
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->leftHRIRReal_fx, BINAURAL_CONVBANDS, HRTF_LS_CHANNELS, BINAURAL_NTAPS, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRReal" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->leftHRIRImag_fx, BINAURAL_CONVBANDS, HRTF_LS_CHANNELS, BINAURAL_NTAPS, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRImag" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->rightHRIRReal_fx, BINAURAL_CONVBANDS, HRTF_LS_CHANNELS, BINAURAL_NTAPS, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRReal" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->rightHRIRImag_fx, BINAURAL_CONVBANDS, HRTF_LS_CHANNELS, BINAURAL_NTAPS, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRImag" );
- }
- }
- }
- test();
- IF( EQ_32( renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) || EQ_32( bin_input_config, BINAURAL_INPUT_AUDIO_CONFIG_COMBINED ) )
- {
- test();
- test();
- test();
- IF( ( HrtfFastConv->leftBRIRReal_fx != NULL ) && ( HrtfFastConv->leftBRIRImag_fx != NULL ) && ( HrtfFastConv->rightBRIRReal_fx != NULL ) && ( HrtfFastConv->rightBRIRImag_fx != NULL ) )
- {
- return IVAS_ERR_OK;
- }
- ELSE
- {
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->leftBRIRReal_fx, BINAURAL_CONVBANDS, HRTF_LS_CHANNELS, BINAURAL_NTAPS_MAX, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftBRIRReal" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->leftBRIRImag_fx, BINAURAL_CONVBANDS, HRTF_LS_CHANNELS, BINAURAL_NTAPS_MAX, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftBRIRImag" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->rightBRIRReal_fx, BINAURAL_CONVBANDS, HRTF_LS_CHANNELS, BINAURAL_NTAPS_MAX, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightBRIRReal" );
- }
- IF( NE_32( IVAS_ERR_OK, ivas_alloc_pppMem_fx( &HrtfFastConv->rightBRIRImag_fx, BINAURAL_CONVBANDS, HRTF_LS_CHANNELS, BINAURAL_NTAPS_MAX, allocate_init_flag ) ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightBRIRImag" );
- }
- }
- }
-#endif
return IVAS_ERR_OK;
}
@@ -868,9 +595,7 @@ static ivas_error ivas_binaural_hrtf_open_fx(
{
Word16 i, j;
ivas_error error;
-#ifdef FIX_CREND_SIMPLIFY_CODE
Word16 n_channels;
-#endif
test();
IF( hHrtfFastConv != NULL && *hHrtfFastConv != NULL )
@@ -893,84 +618,55 @@ static ivas_error ivas_binaural_hrtf_open_fx(
test();
IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_32( renderer_type, RENDERER_BINAURAL_FASTCONV ) )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
HrtfFastConv->FASTCONV_latency_s_fx = FASTCONV_HRIR_latency_s_fx;
move32();
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
HrtfFastConv->FASTCONV_latency_s_Q_fx = Q31 - FASTCONV_factor_Q_HRIR_latency_s_fx;
move16();
HrtfFastConv->FASTCONV_taps_s_Q_fx = Q15 - FASTCONV_factor_Q_HRIR_fx;
move16();
-#endif
HrtfFastConv->ntaps = BINAURAL_NTAPS;
move16();
-#else
- HrtfFastConv->FASTCONV_HRIR_latency_s_fx = FASTCONV_HRIR_latency_s_fx;
- move32();
-#endif
}
+
IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_HOA2 ) )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
HrtfFastConv->FASTCONV_latency_s_fx = FASTCONV_HOA2_latency_s_fx;
move32();
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
HrtfFastConv->FASTCONV_latency_s_Q_fx = Q31 - FASTCONV_factor_Q_HOA2_latency_s_fx;
move16();
HrtfFastConv->FASTCONV_taps_s_Q_fx = Q15 - FASTCONV_factor_Q_HOA2_fx;
move16();
-#endif
-
HrtfFastConv->ntaps = BINAURAL_NTAPS_SBA;
move16();
-#else
- HrtfFastConv->FASTCONV_HOA2_latency_s_fx = FASTCONV_HOA2_latency_s_fx;
- move32();
-#endif
}
IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_HOA3 ) )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
HrtfFastConv->FASTCONV_latency_s_fx = FASTCONV_HOA3_latency_s_fx;
move32();
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
HrtfFastConv->FASTCONV_latency_s_Q_fx = Q31 - FASTCONV_factor_Q_HOA3_latency_s_fx;
move16();
HrtfFastConv->FASTCONV_taps_s_Q_fx = Q15 - FASTCONV_factor_Q_HOA3_fx;
move16();
-#endif
HrtfFastConv->ntaps = BINAURAL_NTAPS_SBA;
move16();
-#else
- HrtfFastConv->FASTCONV_HOA3_latency_s_fx = FASTCONV_HOA3_latency_s_fx;
- move32();
-#endif
}
IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_FOA ) )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
HrtfFastConv->FASTCONV_latency_s_fx = FASTCONV_FOA_latency_s_fx;
move32();
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
HrtfFastConv->FASTCONV_latency_s_Q_fx = Q31 - FASTCONV_factor_Q_FOA_latency_s_fx;
move16();
HrtfFastConv->FASTCONV_taps_s_Q_fx = Q15 - FASTCONV_factor_Q_FOA_fx;
move16();
-#endif
HrtfFastConv->ntaps = BINAURAL_NTAPS_SBA;
move16();
-#else
- HrtfFastConv->FASTCONV_FOA_latency_s_fx = FASTCONV_FOA_latency_s_fx;
- move32();
-#endif
}
+
test();
IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_32( renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
HrtfFastConv->FASTCONV_latency_s_fx = FASTCONV_BRIR_latency_s_fx;
move32();
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
HrtfFastConv->FASTCONV_latency_s_Q_fx = Q31 - FASTCONV_factor_Q_BRIR_latency_s_fx;
move16();
HrtfFastConv->FASTCONV_taps_s_Q_fx = Q15 - FASTCONV_factor_Q_BRIR_fx;
@@ -979,23 +675,13 @@ static ivas_error ivas_binaural_hrtf_open_fx(
move16();
HrtfFastConv->FASTCONV_reverbEne_s_Q_fx = Q15 - FASTCONV_factor_Q_reverberationEneCorrections_fx;
move16();
-#endif
HrtfFastConv->ntaps = BINAURAL_NTAPS_MAX;
move16();
-#else
- HrtfFastConv->FASTCONV_BRIR_latency_s_fx = FASTCONV_BRIR_latency_s_fx;
- move32();
-#endif
}
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
HrtfFastConv->allocate_init_flag = 0;
-#else
- HrtfFastConv->allocate_init_flag = 1;
-#endif
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
n_channels = 0;
move16();
@@ -1025,174 +711,78 @@ static ivas_error ivas_binaural_hrtf_open_fx(
move16();
}
}
+
IF( NE_32( ( error = ivas_allocate_binaural_hrtf_fx( HrtfFastConv, n_channels, HrtfFastConv->allocate_init_flag ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_allocate_binaural_hrtf_fx( HrtfFastConv, input_config, BINAURAL_INPUT_AUDIO_CONFIG_INVALID, renderer_type, HrtfFastConv->allocate_init_flag ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
+
FOR( i = 0; i < BINAURAL_CONVBANDS; i++ )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
test();
test();
IF( EQ_32( renderer_type, RENDERER_BINAURAL_FASTCONV ) && EQ_32( HrtfFastConv->n_channels, HRTF_LS_CHANNELS ) )
-#else
- IF( EQ_32( renderer_type, RENDERER_BINAURAL_FASTCONV ) )
-#endif
{
FOR( j = 0; j < HRTF_LS_CHANNELS; j++ )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
Copy_Scale_sig_16_32_r( leftHRIRReal_fx[i][j], HrtfFastConv->leftReal_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_HRIR_fx );
Copy_Scale_sig_16_32_r( leftHRIRImag_fx[i][j], HrtfFastConv->leftImag_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_HRIR_fx );
Copy_Scale_sig_16_32_r( rightHRIRReal_fx[i][j], HrtfFastConv->rightReal_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_HRIR_fx );
Copy_Scale_sig_16_32_r( rightHRIRImag_fx[i][j], HrtfFastConv->rightImag_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_HRIR_fx );
-#else
- HrtfFastConv->leftReal_fx[i][j] = leftHRIRReal_fx[i][j];
- HrtfFastConv->leftImag_fx[i][j] = leftHRIRImag_fx[i][j];
- HrtfFastConv->rightReal_fx[i][j] = rightHRIRReal_fx[i][j];
- HrtfFastConv->rightImag_fx[i][j] = rightHRIRImag_fx[i][j];
-#endif
-#else
- HrtfFastConv->leftHRIRReal_fx[i][j] = leftHRIRReal_fx[i][j];
- HrtfFastConv->leftHRIRImag_fx[i][j] = leftHRIRImag_fx[i][j];
- HrtfFastConv->rightHRIRReal_fx[i][j] = rightHRIRReal_fx[i][j];
- HrtfFastConv->rightHRIRImag_fx[i][j] = rightHRIRImag_fx[i][j];
-#endif
}
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
ELSE IF( EQ_32( renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) && EQ_32( HrtfFastConv->n_channels, HRTF_LS_CHANNELS ) )
-#else
- ELSE IF( EQ_32( renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) )
-#endif
{
FOR( j = 0; j < HRTF_LS_CHANNELS; j++ )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
Copy_Scale_sig_16_32_r( leftBRIRReal_fx[i][j], HrtfFastConv->leftReal_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_BRIR_fx );
Copy_Scale_sig_16_32_r( leftBRIRImag_fx[i][j], HrtfFastConv->leftImag_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_BRIR_fx );
Copy_Scale_sig_16_32_r( rightBRIRReal_fx[i][j], HrtfFastConv->rightReal_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_BRIR_fx );
Copy_Scale_sig_16_32_r( rightBRIRImag_fx[i][j], HrtfFastConv->rightImag_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_BRIR_fx );
-#else
- HrtfFastConv->leftReal_fx[i][j] = leftBRIRReal_fx[i][j];
- HrtfFastConv->leftImag_fx[i][j] = leftBRIRImag_fx[i][j];
- HrtfFastConv->rightReal_fx[i][j] = rightBRIRReal_fx[i][j];
- HrtfFastConv->rightImag_fx[i][j] = rightBRIRImag_fx[i][j];
-#endif
-#else
- HrtfFastConv->leftBRIRReal_fx[i][j] = leftBRIRReal_fx[i][j];
- HrtfFastConv->leftBRIRImag_fx[i][j] = leftBRIRImag_fx[i][j];
- HrtfFastConv->rightBRIRReal_fx[i][j] = rightBRIRReal_fx[i][j];
- HrtfFastConv->rightBRIRImag_fx[i][j] = rightBRIRImag_fx[i][j];
-#endif
}
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
test();
IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_HOA3 ) && EQ_32( HrtfFastConv->n_channels, HOA3_CHANNELS ) )
-#else
- IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_HOA3 ) )
-#endif
{
FOR( j = 0; j < HOA3_CHANNELS; j++ )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
Copy_Scale_sig_16_32_r( leftHRIRReal_HOA3_fx[i][j], HrtfFastConv->leftReal_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_HOA3_fx );
Copy_Scale_sig_16_32_r( leftHRIRImag_HOA3_fx[i][j], HrtfFastConv->leftImag_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_HOA3_fx );
Copy_Scale_sig_16_32_r( rightHRIRReal_HOA3_fx[i][j], HrtfFastConv->rightReal_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_HOA3_fx );
Copy_Scale_sig_16_32_r( rightHRIRImag_HOA3_fx[i][j], HrtfFastConv->rightImag_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_HOA3_fx );
-#else
- HrtfFastConv->leftReal_fx[i][j] = leftHRIRReal_HOA3_fx[i][j];
- HrtfFastConv->leftImag_fx[i][j] = leftHRIRImag_HOA3_fx[i][j];
- HrtfFastConv->rightReal_fx[i][j] = rightHRIRReal_HOA3_fx[i][j];
- HrtfFastConv->rightImag_fx[i][j] = rightHRIRImag_HOA3_fx[i][j];
-#endif
-#else
- HrtfFastConv->leftHRIRReal_HOA3_fx[i][j] = leftHRIRReal_HOA3_fx[i][j];
- HrtfFastConv->leftHRIRImag_HOA3_fx[i][j] = leftHRIRImag_HOA3_fx[i][j];
- HrtfFastConv->rightHRIRReal_HOA3_fx[i][j] = rightHRIRReal_HOA3_fx[i][j];
- HrtfFastConv->rightHRIRImag_HOA3_fx[i][j] = rightHRIRImag_HOA3_fx[i][j];
-#endif
}
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
/* Note: IVAS_AUDIO_CONFIG_HOA2 and IVAS_AUDIO_CONFIG_FOA input configs. are not relevant in internal renderer
as SBA to binaural always synthesizes HOA3 output for binauralization. However, the external renderer can use them. */
test();
IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_HOA2 ) && EQ_32( HrtfFastConv->n_channels, HOA2_CHANNELS ) )
-#else
- IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_HOA2 ) )
-#endif
{
FOR( j = 0; j < HOA2_CHANNELS; j++ )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
Copy_Scale_sig_16_32_r( leftHRIRReal_HOA2_fx[i][j], HrtfFastConv->leftReal_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_HOA2_fx );
Copy_Scale_sig_16_32_r( leftHRIRImag_HOA2_fx[i][j], HrtfFastConv->leftImag_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_HOA2_fx );
Copy_Scale_sig_16_32_r( rightHRIRReal_HOA2_fx[i][j], HrtfFastConv->rightReal_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_HOA2_fx );
Copy_Scale_sig_16_32_r( rightHRIRImag_HOA2_fx[i][j], HrtfFastConv->rightImag_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_HOA2_fx );
-#else
- HrtfFastConv->leftReal_fx[i][j] = leftHRIRReal_HOA2_fx[i][j];
- HrtfFastConv->leftImag_fx[i][j] = leftHRIRImag_HOA2_fx[i][j];
- HrtfFastConv->rightReal_fx[i][j] = rightHRIRReal_HOA2_fx[i][j];
- HrtfFastConv->rightImag_fx[i][j] = rightHRIRImag_HOA2_fx[i][j];
-#endif
-#else
- HrtfFastConv->leftHRIRReal_HOA2_fx[i][j] = leftHRIRReal_HOA2_fx[i][j];
- HrtfFastConv->leftHRIRImag_HOA2_fx[i][j] = leftHRIRImag_HOA2_fx[i][j];
- HrtfFastConv->rightHRIRReal_HOA2_fx[i][j] = rightHRIRReal_HOA2_fx[i][j];
- HrtfFastConv->rightHRIRImag_HOA2_fx[i][j] = rightHRIRImag_HOA2_fx[i][j];
-#endif
}
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
test();
IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_FOA ) && EQ_32( HrtfFastConv->n_channels, FOA_CHANNELS ) )
-#else
- IF( EQ_32( input_config, IVAS_AUDIO_CONFIG_FOA ) )
-#endif
{
FOR( j = 0; j < FOA_CHANNELS; j++ )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
Copy_Scale_sig_16_32_r( leftHRIRReal_FOA_fx[i][j], HrtfFastConv->leftReal_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_FOA_fx );
Copy_Scale_sig_16_32_r( leftHRIRImag_FOA_fx[i][j], HrtfFastConv->leftImag_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_FOA_fx );
Copy_Scale_sig_16_32_r( rightHRIRReal_FOA_fx[i][j], HrtfFastConv->rightReal_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_FOA_fx );
Copy_Scale_sig_16_32_r( rightHRIRImag_FOA_fx[i][j], HrtfFastConv->rightImag_fx[i][j], HrtfFastConv->ntaps, Q29 - FASTCONV_factor_Q_FOA_fx );
-#else
- HrtfFastConv->leftReal_fx[i][j] = leftHRIRReal_FOA_fx[i][j];
- HrtfFastConv->leftImag_fx[i][j] = leftHRIRImag_FOA_fx[i][j];
- HrtfFastConv->rightReal_fx[i][j] = rightHRIRReal_FOA_fx[i][j];
- HrtfFastConv->rightImag_fx[i][j] = rightHRIRImag_FOA_fx[i][j];
-#endif
-#else
- HrtfFastConv->leftHRIRReal_FOA_fx[i][j] = leftHRIRReal_FOA_fx[i][j];
- HrtfFastConv->leftHRIRImag_FOA_fx[i][j] = leftHRIRImag_FOA_fx[i][j];
- HrtfFastConv->rightHRIRReal_FOA_fx[i][j] = rightHRIRReal_FOA_fx[i][j];
- HrtfFastConv->rightHRIRImag_FOA_fx[i][j] = rightHRIRImag_FOA_fx[i][j];
-#endif
}
}
}
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
Copy_Scale_sig_16_32_r( fastconvReverberationTimes_fx, HrtfFastConv->fastconvReverberationTimes_fx, CLDFB_NO_CHANNELS_MAX, Q26 - FASTCONV_factor_Q_reverberationTimes_fx );
Copy_Scale_sig_16_32_r( fastconvReverberationEneCorrections_fx, HrtfFastConv->fastconvReverberationEneCorrections_fx, CLDFB_NO_CHANNELS_MAX, Q31 - FASTCONV_factor_Q_reverberationTimes_fx );
-#else
- Copy32( fastconvReverberationTimes_fx, HrtfFastConv->fastconvReverberationTimes_fx, CLDFB_NO_CHANNELS_MAX );
- Copy32( fastconvReverberationEneCorrections_fx, HrtfFastConv->fastconvReverberationEneCorrections_fx, CLDFB_NO_CHANNELS_MAX );
-#endif
*hHrtfFastConv = HrtfFastConv;
@@ -1209,12 +799,12 @@ static ivas_error ivas_binaural_hrtf_open_fx(
static void ivas_binaural_obtain_DMX_fx(
const Word16 numTimeSlots,
- BINAURAL_RENDERER_HANDLE hBinRenderer, /* i/o: fastconv binaural renderer handle */
+ BINAURAL_RENDERER_HANDLE hBinRenderer, /* i/o: fastconv binaural renderer handle */
Word32 RealBuffer[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /* i : Contains the LS signals Q_in_out */
Word32 ImagBuffer[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /* i : Contains the LS signals Q_in_out */
- Word32 realDMX[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /*Q_in_out*/
- Word32 imagDMX[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /*Q_in_out*/
- Word16 *Q_in_out ) /*i/o: input and output Q*/
+ Word32 realDMX[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /* Q_in_out */
+ Word32 imagDMX[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /* Q_in_out */
+ Word16 *Q_in_out ) /* i/o: input and output Q */
{
Word16 chIdx, bandIdx, k;
@@ -1369,6 +959,7 @@ static void ivas_binaural_obtain_DMX_fx(
}
}
}
+
IF( NE_16( hBinRenderer->nInChannels, HOA3_CHANNELS ) )
{
*Q_in_out = sub( *Q_in_out, 1 );
@@ -1433,12 +1024,7 @@ ivas_error ivas_rend_openCldfbRend(
move16();
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
ivas_output_init( hBinRenderer->hInputSetup, inConfig );
-#else
- hBinRenderer->hInputSetup->is_loudspeaker_setup = 0;
- hBinRenderer->hInputSetup->output_config = inConfig;
-#endif
IF( ( error = getAudioConfigNumChannels( inConfig, &hBinRenderer->hInputSetup->nchan_out_woLFE ) ) != IVAS_ERR_OK )
{
@@ -1473,15 +1059,7 @@ ivas_error ivas_rend_openCldfbRend(
return error;
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
pCldfbRend->binaural_latency_ns = L_shr_r( Mpy_32_32_r( pCldfbRend->hHrtfFastConv->FASTCONV_latency_s_fx, (Word32) 1000000000 ), pCldfbRend->hHrtfFastConv->FASTCONV_latency_s_Q_fx );
-#else
- pCldfbRend->binaural_latency_ns = Mult_32_32( pCldfbRend->hHrtfFastConv->FASTCONV_latency_s_fx, (Word32) 1000000000 );
-#endif
-#else
- pCldfbRend->binaural_latency_ns = (Word32) ( pCldfbRend->hHrtfFastConv->FASTCONV_HOA3_latency_s_fx * 1000000000 );
-#endif
move32();
hBinRenderer->hReverb = NULL;
move32();
@@ -1586,13 +1164,11 @@ ivas_error ivas_binRenderer_open_fx(
move16();
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
test();
IF( st_ivas->hHrtfFastConv == NULL && st_ivas->hDecoderConfig->Opt_HRTF_binary )
{
return IVAS_ERROR( IVAS_ERR_INTERNAL, "HRTF binary file present but not used in FastConv renderer" );
}
-#endif
/* Load HRTF tables */
IF( NE_32( ( error = ivas_binaural_hrtf_open_fx( &st_ivas->hHrtfFastConv, st_ivas->hIntSetup.output_config, st_ivas->renderer_type ) ), IVAS_ERR_OK ) )
@@ -1621,17 +1197,8 @@ ivas_error ivas_binRenderer_open_fx(
}
hBinRenderer->hoa_dec_mtx = st_ivas->hoa_dec_mtx;
-#ifdef FIX_CREND_SIMPLIFY_CODE
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
- st_ivas->binaural_latency_ns = L_shr_r( Mpy_32_32_r( st_ivas->hHrtfFastConv->FASTCONV_latency_s_fx, (Word32) 1000000000 ), st_ivas->hHrtfFastConv->FASTCONV_latency_s_Q_fx );
-#else
- st_ivas->binaural_latency_ns = st_ivas->hHrtfFastConv->FASTCONV_latency_s_fx;
- move32();
-#endif
-#else
- st_ivas->binaural_latency_ns = st_ivas->hHrtfFastConv->FASTCONV_BRIR_latency_s_fx;
-#endif
move32();
+ st_ivas->binaural_latency_ns = L_shr_r( Mpy_32_32_r( st_ivas->hHrtfFastConv->FASTCONV_latency_s_fx, (Word32) 1000000000 ), st_ivas->hHrtfFastConv->FASTCONV_latency_s_Q_fx );
}
ELSE
{
@@ -1641,51 +1208,7 @@ ivas_error ivas_binRenderer_open_fx(
return error;
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
st_ivas->binaural_latency_ns = L_shr_r( Mpy_32_32_r( st_ivas->hHrtfFastConv->FASTCONV_latency_s_fx, (Word32) 1000000000 ), st_ivas->hHrtfFastConv->FASTCONV_latency_s_Q_fx );
-#else
- st_ivas->binaural_latency_ns = st_ivas->hHrtfFastConv->FASTCONV_latency_s_fx;
- move32();
-#endif
-#else
- IF( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV ) )
- {
- IF( EQ_32( hBinRenderer->ivas_format, MC_FORMAT ) )
- {
- st_ivas->binaural_latency_ns = st_ivas->hHrtfFastConv->FASTCONV_HRIR_latency_s_fx;
- move32();
- }
- ELSE
- {
- IF( EQ_16( hBinRenderer->nInChannels, 16 ) )
- {
- st_ivas->binaural_latency_ns = st_ivas->hHrtfFastConv->FASTCONV_HOA3_latency_s_fx;
- move32();
- }
- ELSE IF( EQ_16( hBinRenderer->nInChannels, 9 ) )
- {
- st_ivas->binaural_latency_ns = st_ivas->hHrtfFastConv->FASTCONV_HOA2_latency_s_fx;
- move32();
- }
- ELSE IF( EQ_16( hBinRenderer->nInChannels, 4 ) )
- {
- st_ivas->binaural_latency_ns = st_ivas->hHrtfFastConv->FASTCONV_FOA_latency_s_fx;
- move32();
- }
- ELSE
- {
- return IVAS_ERR_INVALID_INPUT_FORMAT;
- }
- }
- }
- ELSE
- {
- /* same value for MC or HOA both use MC BRIR*/
- st_ivas->binaural_latency_ns = st_ivas->hHrtfFastConv->FASTCONV_BRIR_latency_s_fx;
- move32();
- }
-#endif
}
/* Allocate memories needed for reverb module */
@@ -1697,12 +1220,11 @@ ivas_error ivas_binRenderer_open_fx(
{
pRoomAcoustics = &( st_ivas->hRenderConfig->roomAcoustics );
}
+
IF( NE_32( ( error = ivas_binaural_reverb_init_fx( &( hBinRenderer->hReverb ), st_ivas->hHrtfStatistics, hBinRenderer->conv_band, hBinRenderer->timeSlots, pRoomAcoustics, st_ivas->hDecoderConfig->output_Fs, st_ivas->hHrtfFastConv->fastconvReverberationTimes_fx, st_ivas->hHrtfFastConv->fastconvReverberationEneCorrections_fx, NULL ) ), IVAS_ERR_OK ) )
{
return error;
}
-
- /* initialize the dmx matrix */
}
ELSE
{
@@ -1832,11 +1354,13 @@ static void ivas_binRenderer_convModuleClose_fx(
return;
}
+
/*-------------------------------------------------------------------------
* ivas_binRenderer_close()
*
* Close fastconv binaural renderer memories
*------------------------------------------------------------------------*/
+
void ivas_binRenderer_close_fx(
BINAURAL_RENDERER_HANDLE *hBinRenderer /* i/o: fastconv binaural renderer handle */
)
@@ -1863,11 +1387,13 @@ void ivas_binRenderer_close_fx(
return;
}
+
/*-------------------------------------------------------------------------
* ivas_free_pppHrtfMem()
*
* Free fastconv binaural renderer hrtf memories
*------------------------------------------------------------------------*/
+
static void ivas_free_pppHrtfMem_fx(
Word32 ****ppppHRIR, /*Qx*/
const Word16 dim,
@@ -1909,9 +1435,7 @@ void ivas_binaural_hrtf_close_fx(
)
{
Word16 allocate_init_flag;
-#ifdef FIX_CREND_SIMPLIFY_CODE
Word16 n_channels;
-#endif
test();
IF( hHrtfFastConv == NULL || *hHrtfFastConv == NULL )
@@ -1922,7 +1446,6 @@ void ivas_binaural_hrtf_close_fx(
allocate_init_flag = ( *hHrtfFastConv )->allocate_init_flag;
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
n_channels = ( *hHrtfFastConv )->n_channels;
move16();
@@ -1930,40 +1453,17 @@ void ivas_binaural_hrtf_close_fx(
ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->leftImag_fx, n_channels, allocate_init_flag );
ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->rightReal_fx, n_channels, allocate_init_flag );
ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->rightImag_fx, n_channels, allocate_init_flag );
-#else
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->leftHRIRReal_fx, HRTF_LS_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->leftHRIRImag_fx, HRTF_LS_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->rightHRIRReal_fx, HRTF_LS_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->rightHRIRImag_fx, HRTF_LS_CHANNELS, allocate_init_flag );
-
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->leftBRIRReal_fx, HRTF_LS_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->leftBRIRImag_fx, HRTF_LS_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->rightBRIRReal_fx, HRTF_LS_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->rightBRIRImag_fx, HRTF_LS_CHANNELS, allocate_init_flag );
-
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->leftHRIRReal_HOA3_fx, HOA3_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->leftHRIRImag_HOA3_fx, HOA3_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->rightHRIRReal_HOA3_fx, HOA3_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->rightHRIRImag_HOA3_fx, HOA3_CHANNELS, allocate_init_flag );
-
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->leftHRIRReal_HOA2_fx, HOA2_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->leftHRIRImag_HOA2_fx, HOA2_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->rightHRIRReal_HOA2_fx, HOA2_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->rightHRIRImag_HOA2_fx, HOA2_CHANNELS, allocate_init_flag );
-
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->leftHRIRReal_FOA_fx, FOA_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->leftHRIRImag_FOA_fx, FOA_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->rightHRIRReal_FOA_fx, FOA_CHANNELS, allocate_init_flag );
- ivas_free_pppHrtfMem_fx( &( *hHrtfFastConv )->rightHRIRImag_FOA_fx, FOA_CHANNELS, allocate_init_flag );
-#endif
+
return;
}
+
/*-------------------------------------------------------------------------*
* ivas_binaural_add_LFE()
*
* The functions adds the LFE to the left and right channels after binaural rendering
*-------------------------------------------------------------------------*/
+
void ivas_binaural_add_LFE_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
Word16 output_frame, /* i : length of input frame */
@@ -2009,7 +1509,8 @@ void ivas_binaural_add_LFE_fx(
}
FOR( idx_lfe = 0; idx_lfe < st_ivas->hIntSetup.num_lfe; idx_lfe++ )
{
- v_multc_fixed_16( input_fx[st_ivas->hIntSetup.index_lfe[idx_lfe]], gain_fx, lfe_tc, output_frame ); // q_input_fx - 1
+ v_multc_fx_16( input_fx[st_ivas->hIntSetup.index_lfe[idx_lfe]], gain_fx, lfe_tc, output_frame ); // q_input_fx - 1
+
/* copy LFE to left and right channels */
FOR( idx = 0; idx < output_frame; idx++ )
{
@@ -2026,6 +1527,7 @@ void ivas_binaural_add_LFE_fx(
return;
}
+
/*-------------------------------------------------------------------------
* ivas_binRenderer_fx()
*
@@ -2077,13 +1579,13 @@ void ivas_binRenderer_fx(
/* Rotation in SHD (HOA3) */
IF( EQ_16( hCombinedOrientationData->shd_rot_max_order, -1 ) )
{
- rotateFrame_shd_cldfb( RealBuffer_fx, ImagBuffer_fx, hCombinedOrientationData->Rmat_fx[hCombinedOrientationData->subframe_idx], hBinRenderer->hInputSetup->nchan_out_woLFE, numTimeSlots, 3 );
+ rotateFrame_shd_cldfb_fx( RealBuffer_fx, ImagBuffer_fx, hCombinedOrientationData->Rmat_fx[hCombinedOrientationData->subframe_idx], hBinRenderer->hInputSetup->nchan_out_woLFE, numTimeSlots, 3 );
*Q_in = sub( *Q_in, 1 ); //( Q_in + 14 - 15 )
move16();
}
ELSE IF( hCombinedOrientationData->shd_rot_max_order > 0 )
{
- rotateFrame_shd_cldfb( RealBuffer_fx, ImagBuffer_fx, hCombinedOrientationData->Rmat_fx[hCombinedOrientationData->subframe_idx], hBinRenderer->hInputSetup->nchan_out_woLFE, numTimeSlots, hCombinedOrientationData->shd_rot_max_order );
+ rotateFrame_shd_cldfb_fx( RealBuffer_fx, ImagBuffer_fx, hCombinedOrientationData->Rmat_fx[hCombinedOrientationData->subframe_idx], hBinRenderer->hInputSetup->nchan_out_woLFE, numTimeSlots, hCombinedOrientationData->shd_rot_max_order );
*Q_in = sub( *Q_in, 1 ); //( Q_in + 14 - 15 )
move16();
}
@@ -2091,24 +1593,20 @@ void ivas_binRenderer_fx(
ELSE
{
/* Rotation in SD (CICPx) */
- rotateFrame_sd_cldfb_fixed( hCombinedOrientationData->Rmat_fx[hCombinedOrientationData->subframe_idx], RealBuffer_fx, ImagBuffer_fx,
- hBinRenderer->hInputSetup, hBinRenderer->hEFAPdata, numTimeSlots, hBinRenderer->conv_band );
+ rotateFrame_sd_cldfb_fx( hCombinedOrientationData->Rmat_fx[hCombinedOrientationData->subframe_idx], RealBuffer_fx, ImagBuffer_fx,
+ hBinRenderer->hInputSetup, hBinRenderer->hEFAPdata, numTimeSlots, hBinRenderer->conv_band );
}
}
/* HOA decoding to CICP19 if needed*/
test();
-#ifdef FIX_CREND_SIMPLIFY_CODE
test();
test();
IF( hBinRenderer->hInputSetup->is_loudspeaker_setup == 0 &&
( NE_16( hBinRenderer->nInChannels, HOA3_CHANNELS ) && NE_16( hBinRenderer->nInChannels, HOA2_CHANNELS ) && NE_16( hBinRenderer->nInChannels, FOA_CHANNELS ) ) )
-#else
- IF( hBinRenderer->hInputSetup->is_loudspeaker_setup == 0 && NE_16( hBinRenderer->nInChannels, 16 ) )
-#endif
{
- ivas_sba2mc_cldfb_fixed( *( hBinRenderer->hInputSetup ), RealBuffer_fx, ImagBuffer_fx,
- hBinRenderer->nInChannels, hBinRenderer->conv_band, numTimeSlots, hBinRenderer->hoa_dec_mtx );
+ ivas_sba2mc_cldfb_fx( *( hBinRenderer->hInputSetup ), RealBuffer_fx, ImagBuffer_fx,
+ hBinRenderer->nInChannels, hBinRenderer->conv_band, numTimeSlots, hBinRenderer->hoa_dec_mtx );
}
ivas_binRenderer_filterModule_fx( Cldfb_RealBuffer_Binaural_fx[0], Cldfb_ImagBuffer_Binaural_fx[0], RealBuffer_fx, ImagBuffer_fx, numTimeSlots, hBinRenderer, 0, *Q_in );
@@ -2169,15 +1667,11 @@ void ivas_binRenderer_fx(
IF( hBinRenderer->hInputSetup->is_loudspeaker_setup )
{
- rotateFrame_sd_cldfb_fixed( Rmat_local, RealBuffer_fx, ImagBuffer_fx, hBinRenderer->hInputSetup, hBinRenderer->hEFAPdata, numTimeSlots, hBinRenderer->conv_band );
+ rotateFrame_sd_cldfb_fx( Rmat_local, RealBuffer_fx, ImagBuffer_fx, hBinRenderer->hInputSetup, hBinRenderer->hEFAPdata, numTimeSlots, hBinRenderer->conv_band );
}
ELSE
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
- rotateFrame_shd_cldfb( RealBuffer_fx, ImagBuffer_fx, Rmat_local, hBinRenderer->hInputSetup->nchan_out_woLFE, numTimeSlots, hBinRenderer->hInputSetup->ambisonics_order );
-#else
- rotateFrame_shd_cldfb( RealBuffer_fx, ImagBuffer_fx, Rmat_local, hBinRenderer->hInputSetup->nchan_out_woLFE, numTimeSlots, 3 );
-#endif
+ rotateFrame_shd_cldfb_fx( RealBuffer_fx, ImagBuffer_fx, Rmat_local, hBinRenderer->hInputSetup->nchan_out_woLFE, numTimeSlots, hBinRenderer->hInputSetup->ambisonics_order );
}
ivas_binRenderer_filterModule_fx( Cldfb_RealBuffer_Binaural_fx[pos_idx], Cldfb_ImagBuffer_Binaural_fx[pos_idx], RealBuffer_fx, ImagBuffer_fx, numTimeSlots, hBinRenderer, pos_idx, *Q_in );
@@ -2256,6 +1750,7 @@ void ivas_binRenderer_fx(
return;
}
+
/*-------------------------------------------------------------------------
* ivas_rend_CldfbMultiBinRendProcess()
*
@@ -2275,8 +1770,8 @@ void ivas_rend_CldfbMultiBinRendProcess(
const Word16 Q_in /* i : LS signals exp */
)
{
- int16_t slot_idx, ch_idx, idx, pose_idx, i, j;
- int16_t sf_idx;
+ Word16 slot_idx, ch_idx, idx, pose_idx, i, j;
+ Word16 sf_idx;
Word32 Cldfb_RealBuffer_sfIn[MAX_INPUT_CHANNELS][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX];
Word32 Cldfb_ImagBuffer_sfIn[MAX_INPUT_CHANNELS][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX];
Word32 Cldfb_RealBuffer_Binaural[MAX_HEAD_ROT_POSES][BINAURAL_CHANNELS][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX];
diff --git a/lib_dec/ivas_core_dec_fx.c b/lib_dec/ivas_core_dec_fx.c
index de83e8a072fb3e427a731d888b2d1f7a899646b8..f3020662b8c87fd826cc41db8c9b65487b673b13 100644
--- a/lib_dec/ivas_core_dec_fx.c
+++ b/lib_dec/ivas_core_dec_fx.c
@@ -740,13 +740,8 @@ ivas_error ivas_core_dec_fx(
move16();
sts[1]->hHQ_core->Q_old_wtda = sub( 15, sts[1]->hHQ_core->exp_old_out );
move16();
-#ifdef FIX_1944_CRASH_FOR_STEREO
shift1 = getScaleFactor16( sts[0]->hHQ_core->old_out_fx, L_FRAME48k );
shift2 = getScaleFactor16( sts[1]->hHQ_core->old_out_fx, L_FRAME48k );
-#else
- shift1 = norm_arr( sts[0]->hHQ_core->old_out_fx, L_FRAME48k );
- shift2 = norm_arr( sts[1]->hHQ_core->old_out_fx, L_FRAME48k );
-#endif
scale_sig( sts[0]->hHQ_core->old_out_fx, L_FRAME48k, shift1 );
scale_sig( sts[1]->hHQ_core->old_out_fx, L_FRAME48k, shift2 );
sts[0]->hHQ_core->Q_old_wtda = add( sts[0]->hHQ_core->Q_old_wtda, shift1 );
diff --git a/lib_dec/ivas_cpe_dec_fx.c b/lib_dec/ivas_cpe_dec_fx.c
index ac16c4a2d4d94abc8729404d6be2e33bbfff0bfe..743add2729206717059bfa5b5db180ea706b621f 100644
--- a/lib_dec/ivas_cpe_dec_fx.c
+++ b/lib_dec/ivas_cpe_dec_fx.c
@@ -664,11 +664,7 @@ ivas_error ivas_cpe_dec_fx(
IF( NE_16( shift, 31 ) )
{
-#ifdef FIX_1946_CRASH_JBM_PROCESSING
shift = sub( add( hCPE->hStereoDft->q_dft, shift ), Q17 ); /* Q17 for guard bits */
-#else
- shift = sub( add( hCPE->hStereoDft->q_dft, shift ), Q16 ); /* Q16 for guard bits */
-#endif
IF( GT_16( shift, hCPE->hStereoDft->q_dft ) )
{
@@ -973,11 +969,7 @@ static ivas_error stereo_dft_dec_main(
IF( NE_16( shift, 31 ) )
{
-#ifdef FIX_1946_CRASH_JBM_PROCESSING
shift = sub( add( hCPE->hStereoDft->q_dft, shift ), Q17 ); /* Q17 for guard bits */
-#else
- shift = sub( add( hCPE->hStereoDft->q_dft, shift ), Q16 ); /* Q16 for guard bits */
-#endif
IF( GT_16( shift, hCPE->hStereoDft->q_dft ) )
{
diff --git a/lib_dec/ivas_dirac_dec_fx.c b/lib_dec/ivas_dirac_dec_fx.c
index 6d36b342903b909194a52f873911e86a8ebbcc85..6e30bc084031b0268c4a1865f7db633dc795938a 100644
--- a/lib_dec/ivas_dirac_dec_fx.c
+++ b/lib_dec/ivas_dirac_dec_fx.c
@@ -960,11 +960,14 @@ static ivas_error ivas_dirac_rend_config_fx(
return error;
}
+
+
/*-------------------------------------------------------------------------
* ivas_dirac_dec_config()
*
* Open or reconfigure decoder DirAC/MASA handle
*-------------------------------------------------------------------------*/
+
ivas_error ivas_dirac_dec_config_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
const DIRAC_CONFIG_FLAG flag_config_inp /* i/ : Flag determining if we open or reconfigure the DirAC decoder */
@@ -1195,15 +1198,16 @@ ivas_error ivas_dirac_dec_config_fx(
}
}
-
return error;
}
+
/*-------------------------------------------------------------------------
* ivas_dirac_dec_close()
*
* Close DirAC memories
*------------------------------------------------------------------------*/
+
void ivas_dirac_dec_close_fx(
DIRAC_DEC_HANDLE *hDirAC_out )
{
@@ -1229,11 +1233,14 @@ void ivas_dirac_dec_close_fx(
return;
}
+
+
/*-------------------------------------------------------------------------
* ivas_dirac_dec_read_BS_fx()
*
* Read DirAC parameters from the bitstream
*------------------------------------------------------------------------*/
+
void ivas_dirac_dec_read_BS_fx(
const Word32 ivas_total_brate, /* i : IVAS total bitrate */
Decoder_State *st, /* i/o: decoder state structure */
@@ -1288,6 +1295,7 @@ void ivas_dirac_dec_read_BS_fx(
*nb_bits = add( *nb_bits, ivas_qmetadata_dec_sid_decode( hQMetaData, st->bit_stream, &( st->next_bit_pos ), nchan_transport, NULL, SBA_FORMAT ) );
move16();
+
FOR( i = 0; i < MAX_PARAM_SPATIAL_SUBFRAMES; i++ )
{
hQMetaData->q_direction[0].band_data[orig_dirac_bands - 1].azimuth_fx[i] = hQMetaData->q_direction[0].band_data[1].azimuth_fx[0];
@@ -1415,11 +1423,14 @@ void ivas_dirac_dec_read_BS_fx(
return;
}
+
+
/*-----------------------------------------------------------------------*
* ivas_qmetadata_to_dirac()
*
* Copy qmetedata to DirAC parameters for rendering
*-----------------------------------------------------------------------*/
+
void ivas_qmetadata_to_dirac_fx(
const IVAS_QMETADATA_HANDLE hQMetaData, /* i : frame of MASA q_metadata */
DIRAC_DEC_HANDLE hDirAC, /* i : DirAC decoder structure */
@@ -1847,7 +1858,6 @@ void ivas_qmetadata_to_dirac_fx(
move16();
}
-
hSpatParamRendCom->energy_ratio1_fx[tmp_write_idx_band][b] = q_direction->band_data[qBand_idx].energy_ratio_fx[0];
move32();
hSpatParamRendCom->diffuseness_vector_fx[tmp_write_idx_band][b] = diffuseness_fx;
@@ -1924,97 +1934,16 @@ void ivas_qmetadata_to_dirac_fx(
/* update buffer write index */
hSpatParamRendCom->dirac_bs_md_write_idx = add( hSpatParamRendCom->dirac_bs_md_write_idx, MAX_PARAM_SPATIAL_SUBFRAMES ) % hSpatParamRendCom->dirac_md_buffer_length;
move16();
+
return;
}
+
+
/*-------------------------------------------------------------------------
* ivas_dirac_dec_set_md_map()
*
* Set metadata index mapping for DirAC
*------------------------------------------------------------------------*/
-void ivas_dirac_dec_set_md_map(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- const Word16 nCldfbTs /* i : number of CLDFB time slots */
-)
-{
- Word16 num_slots_in_subfr;
- DIRAC_DEC_HANDLE hDirAC;
- SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom;
-
- hDirAC = st_ivas->hDirAC;
- hSpatParamRendCom = st_ivas->hSpatParamRendCom;
-
- /* adapt subframes */
- hSpatParamRendCom->num_slots = nCldfbTs;
- move16();
- hSpatParamRendCom->slots_rendered = 0;
- move16();
- num_slots_in_subfr = CLDFB_NO_COL_MAX / MAX_PARAM_SPATIAL_SUBFRAMES;
- move16();
- hSpatParamRendCom->subframes_rendered = 0;
- move16();
-
- ivas_jbm_dec_get_adapted_subframes( nCldfbTs, hSpatParamRendCom->subframe_nbslots, &hSpatParamRendCom->nb_subframes );
-
- /* copy also to tc buffer */
- /* only for non-combined formats and combinded formats w/o discrete objects */
- test();
- test();
- test();
- IF( ( NE_16( st_ivas->ivas_format, MASA_ISM_FORMAT ) || NE_16( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) ) && !( EQ_16( st_ivas->ivas_format, SBA_ISM_FORMAT ) && EQ_16( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) ) )
- {
- st_ivas->hTcBuffer->nb_subframes = hSpatParamRendCom->nb_subframes;
- move16();
- Copy( hSpatParamRendCom->subframe_nbslots, st_ivas->hTcBuffer->subframe_nbslots, hSpatParamRendCom->nb_subframes );
- }
-
- /* set mapping according to dirac_read_idx */
-
- set16_fx( hSpatParamRendCom->render_to_md_map, 0, MAX_JBM_SUBFRAMES_5MS * JBM_CLDFB_SLOTS_IN_SUBFRAME );
-
- test();
- test();
- IF( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) )
- {
- ivas_jbm_dec_get_md_map_even_spacing( nCldfbTs, num_slots_in_subfr, 0, hSpatParamRendCom->dirac_md_buffer_length, hSpatParamRendCom->render_to_md_map );
- }
- ELSE IF( hDirAC == NULL || hDirAC->hConfig == NULL || hDirAC->hConfig->dec_param_estim == 0 )
- {
- ivas_jbm_dec_get_md_map( DEFAULT_JBM_CLDFB_TIMESLOTS, nCldfbTs, num_slots_in_subfr, 0, hSpatParamRendCom->dirac_md_buffer_length, hSpatParamRendCom->render_to_md_map );
- }
- ELSE
- {
- ivas_jbm_dec_get_md_map( DEFAULT_JBM_CLDFB_TIMESLOTS, nCldfbTs, num_slots_in_subfr, hSpatParamRendCom->dirac_read_idx, hSpatParamRendCom->dirac_md_buffer_length, hSpatParamRendCom->render_to_md_map );
- }
-
- test();
- test();
- IF( hDirAC == NULL || hDirAC->hConfig == NULL || hDirAC->hConfig->dec_param_estim == 0 )
- {
- Word64 tmp_fx;
- Word16 sf_idx, slot_idx, slot_idx_abs;
- Word32 quo, rem;
-
- slot_idx_abs = 0;
- move16();
- FOR( sf_idx = 0; sf_idx < hSpatParamRendCom->nb_subframes; sf_idx++ )
- {
- tmp_fx = 0;
- move64();
- FOR( slot_idx = 0; slot_idx < hSpatParamRendCom->subframe_nbslots[sf_idx]; slot_idx++ )
- {
- tmp_fx = W_add_nosat( tmp_fx, W_deposit32_l( L_deposit_l( hSpatParamRendCom->render_to_md_map[slot_idx_abs] ) ) );
- slot_idx_abs = add( slot_idx_abs, 1 );
- }
- iDiv_and_mod_32( W_shl_sat_l( tmp_fx, 16 ), hSpatParamRendCom->subframe_nbslots[sf_idx], &quo, &rem, 0 );
- hSpatParamRendCom->render_to_md_map[sf_idx] = add( round_fx( quo ), hSpatParamRendCom->dirac_read_idx ) % hSpatParamRendCom->dirac_md_buffer_length;
- move16();
- }
-
- set16_fx( &hSpatParamRendCom->render_to_md_map[hSpatParamRendCom->nb_subframes], 0, sub( MAX_JBM_SUBFRAMES_5MS * JBM_CLDFB_SLOTS_IN_SUBFRAME, hSpatParamRendCom->nb_subframes ) );
- }
-
- return;
-}
void ivas_dirac_dec_set_md_map_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
@@ -2053,7 +1982,6 @@ void ivas_dirac_dec_set_md_map_fx(
}
/* set mapping according to dirac_read_idx */
-
set16_fx( hSpatParamRendCom->render_to_md_map, 0, MAX_JBM_SUBFRAMES_5MS * JBM_CLDFB_SLOTS_IN_SUBFRAME );
test();
@@ -2147,20 +2075,28 @@ void ivas_dirac_dec_render_fx(
Word16 temp = 0;
move16();
SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom;
- Word32 *output_f_local_fx[MAX_OUTPUT_CHANNELS];
- Word32 output_f_local_buff_fx[MAX_OUTPUT_CHANNELS][L_FRAME48k] = { 0 }; // VE2SB: TBV
+ Word32 *output_fx_local[MAX_OUTPUT_CHANNELS];
+#ifdef FIX_RENDERER_STACK
+ Word32 *p_output_fx[MAX_OUTPUT_CHANNELS];
+ Word32 output_fx_local_buff[MAX_OUTPUT_CHANNELS][L_FRAME48k / MAX_PARAM_SPATIAL_SUBFRAMES];
+#else
+ Word32 output_fx_local_buff[MAX_OUTPUT_CHANNELS][L_FRAME48k] = { 0 };
+#endif
hSpatParamRendCom = st_ivas->hSpatParamRendCom;
nchan_intern = add( st_ivas->hIntSetup.nchan_out_woLFE, st_ivas->hIntSetup.num_lfe );
FOR( ch = 0; ch < nchan_intern; ch++ )
{
- output_f_local_fx[ch] = output_f_local_buff_fx[ch];
- set_zero_fx( output_f_local_fx[ch], nSamplesAsked );
+ output_fx_local[ch] = output_fx_local_buff[ch];
+#ifdef FIX_RENDERER_STACK
+ p_output_fx[ch] = output_fx[ch];
+#else
+ set_zero_fx( output_fx_local[ch], nSamplesAsked );
+#endif
}
slot_size = NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, CLDFB_SLOT_NS ); // cL
-
/* loop for synthesis, assume we always have to render in multiples of 5ms subframes with spills */
slots_to_render = s_min( sub( hSpatParamRendCom->num_slots, hSpatParamRendCom->slots_rendered ), idiv1616( nSamplesAsked, slot_size ) );
@@ -2180,29 +2116,42 @@ void ivas_dirac_dec_render_fx(
FOR( subframe_idx = first_sf; subframe_idx < last_sf; subframe_idx++ )
{
- ivas_dirac_dec_render_sf_fx( st_ivas, output_f_local_fx, nchan_transport, NULL, NULL );
+ ivas_dirac_dec_render_sf_fx( st_ivas, output_fx_local, nchan_transport, NULL, NULL );
n_samples_sf = i_mult( hSpatParamRendCom->subframe_nbslots[subframe_idx], hSpatParamRendCom->slot_size );
FOR( ch = 0; ch < nchan_intern; ch++ )
{
- output_f_local_fx[ch] += n_samples_sf;
+#ifdef FIX_RENDERER_STACK
+ /* move to output */
+ test();
+ test();
+ IF( !( ( st_ivas->hDirACRend->hOutSetup.separateChannelEnabled ) && ( EQ_16( st_ivas->hDirACRend->hOutSetup.separateChannelIndex, ch ) || EQ_16( add( st_ivas->hDirACRend->hOutSetup.separateChannelIndex, 1 ), ch ) ) ) )
+ {
+ Copy32( output_fx_local_buff[ch], p_output_fx[ch], n_samples_sf );
+ }
+
+ p_output_fx[ch] += n_samples_sf;
+#else
+ output_fx_local[ch] += n_samples_sf;
+#endif
}
/* update combined orientation access index */
ivas_combined_orientation_update_index( st_ivas->hCombinedOrientationData, n_samples_sf );
}
+#ifndef FIX_RENDERER_STACK
FOR( ch = 0; ch < nchan_intern; ch++ )
{
test();
test();
IF( !( ( st_ivas->hDirACRend->hOutSetup.separateChannelEnabled ) && ( ( EQ_16( st_ivas->hDirACRend->hOutSetup.separateChannelIndex, ch ) || EQ_16( add( st_ivas->hDirACRend->hOutSetup.separateChannelIndex, 1 ), ch ) ) ) ) )
{
- Copy32( output_f_local_buff_fx[ch], output_fx[ch], *nSamplesRendered );
+ Copy32( output_fx_local_buff[ch], output_fx[ch], *nSamplesRendered );
}
}
-
+#endif
/* clang-format off */
IF( EQ_16( hSpatParamRendCom->slots_rendered, hSpatParamRendCom->num_slots ) )
{
@@ -2369,7 +2318,9 @@ void ivas_dirac_dec_render_sf_fx(
Word32 Cldfb_RealBuffer_Temp_fx[2][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX];
Word32 Cldfb_ImagBuffer_Temp_fx[2][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX];
#endif
+#ifndef FIX_2140_OBJECT_EDITING_SANITIZER_ISSUES
Word16 cldfb_buf_q;
+#endif
Word16 offset = 0, buff_len = 0;
move16();
move16();
@@ -2410,7 +2361,6 @@ void ivas_dirac_dec_render_sf_fx(
}
}
-
hDirAC = st_ivas->hDirAC;
hDirACRend = st_ivas->hDirACRend;
hSpatParamRendCom = st_ivas->hSpatParamRendCom;
@@ -2505,7 +2455,6 @@ void ivas_dirac_dec_render_sf_fx(
move16();
}
-
test();
test();
IF( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV ) || EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) )
@@ -2881,13 +2830,16 @@ void ivas_dirac_dec_render_sf_fx(
move16();
}
- test();
- IF( ( NE_16( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) && NE_16( st_ivas->ism_mode, ISM_MASA_MODE_MASA_ONE_OBJ ) ) )
+ IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) )
{
#ifdef FIX_1319_STACK_SBA_DECODER
- ivas_omasa_preProcessStereoTransportsForMovedObjects_fx( st_ivas, Cldfb_RealBuffer_Binaural_fx[0], Cldfb_ImagBuffer_Binaural_fx[0], &cldfb_buf_q, hSpatParamRendCom->num_freq_bands, subframe_idx );
+#ifdef FIX_2140_OBJECT_EDITING_SANITIZER_ISSUES
+ ivas_omasa_preProcessStereoTransportsForEditedObjects_fx( st_ivas, Cldfb_RealBuffer_Binaural_fx[0], Cldfb_ImagBuffer_Binaural_fx[0], &q_cldfb, hSpatParamRendCom->num_freq_bands, subframe_idx );
+#else
+ ivas_omasa_preProcessStereoTransportsForEditedObjects_fx( st_ivas, Cldfb_RealBuffer_Binaural_fx[0], Cldfb_ImagBuffer_Binaural_fx[0], &cldfb_buf_q, hSpatParamRendCom->num_freq_bands, subframe_idx );
+#endif
#else
- ivas_omasa_preProcessStereoTransportsForMovedObjects_fx( st_ivas, Cldfb_RealBuffer_Temp_fx, Cldfb_ImagBuffer_Temp_fx, &cldfb_buf_q, hSpatParamRendCom->num_freq_bands, subframe_idx );
+ ivas_omasa_preProcessStereoTransportsForEditedObjects_fx( st_ivas, Cldfb_RealBuffer_Temp_fx, Cldfb_ImagBuffer_Temp_fx, &cldfb_buf_q, hSpatParamRendCom->num_freq_bands, subframe_idx );
#endif
}
}
@@ -3172,12 +3124,13 @@ void ivas_dirac_dec_render_sf_fx(
hDirACRend->q_buffer_energy[index - 1] = DirAC_mem.reference_power_q[0];
move16();
- computeDiffuseness_fixed( hDirACRend->buffer_intensity_real_fx, hDirACRend->buffer_energy_fx, num_freq_bands, hSpatParamRendCom->diffuseness_vector_fx[md_idx], hDirACRend->q_buffer_intensity_real, hDirACRend->q_buffer_energy, &hSpatParamRendCom->q_diffuseness_vector );
+ computeDiffuseness_fx( hDirACRend->buffer_intensity_real_fx, hDirACRend->buffer_energy_fx, num_freq_bands, hSpatParamRendCom->diffuseness_vector_fx[md_idx], hDirACRend->q_buffer_intensity_real, hDirACRend->q_buffer_energy, &hSpatParamRendCom->q_diffuseness_vector );
}
/*-----------------------------------------------------------------*
* frequency domain decorrelation
*-----------------------------------------------------------------*/
+
IF( EQ_16( hDirACRend->proto_signal_decorr_on, 1 ) )
{
/* decorrelate prototype frame */
@@ -3198,9 +3151,9 @@ void ivas_dirac_dec_render_sf_fx(
hDirACRend->h_freq_domain_decorr_ap_params,
hDirACRend->h_freq_domain_decorr_ap_state );
- v_multc_fixed( onset_filter_fx, 536870912 /* 0.25f in Q31 */, onset_filter_fx, hSpatParamRendCom->num_freq_bands );
+ v_multc_fx( onset_filter_fx, 536870912 /* 0.25f in Q31 */, onset_filter_fx, hSpatParamRendCom->num_freq_bands );
- v_add_fixed_no_hdrm( onset_filter_fx, onset_filter_subframe_fx, onset_filter_subframe_fx, hSpatParamRendCom->num_freq_bands ); /* Q31 */
+ v_add_fx_no_hdrm( onset_filter_fx, onset_filter_subframe_fx, onset_filter_subframe_fx, hSpatParamRendCom->num_freq_bands ); /* Q31 */
p_onset_filter_fx = onset_filter_subframe_fx;
}
ELSE
@@ -3254,6 +3207,7 @@ void ivas_dirac_dec_render_sf_fx(
/*-----------------------------------------------------------------*
* output synthesis
*-----------------------------------------------------------------*/
+
test();
IF( ( EQ_16( hDirACRend->synthesisConf, DIRAC_SYNTHESIS_PSD_LS ) || EQ_16( hDirACRend->synthesisConf, DIRAC_SYNTHESIS_PSD_SHD ) ) )
{
@@ -3373,15 +3327,15 @@ void ivas_dirac_dec_render_sf_fx(
IF( NE_16( hDirACRend->synthesisConf, DIRAC_SYNTHESIS_GAIN_SHD ) )
{
- v_add_fixed_me( reference_power_fx, sub( 31, DirAC_mem.reference_power_q[0] ),
- reference_power_smooth_fx, sub( 31, q_reference_power_smooth[0] ),
- reference_power_smooth_fx, &temp_q,
- s_min( hSpatParamRendCom->num_freq_bands, CLDFB_NO_CHANNELS_HALF ), 1 );
+ v_add_fx_me( reference_power_fx, sub( 31, DirAC_mem.reference_power_q[0] ),
+ reference_power_smooth_fx, sub( 31, q_reference_power_smooth[0] ),
+ reference_power_smooth_fx, &temp_q,
+ s_min( hSpatParamRendCom->num_freq_bands, CLDFB_NO_CHANNELS_HALF ), 1 );
q_reference_power_smooth[0] = sub( 31, temp_q );
- v_add_fixed_me( reference_power_fx + CLDFB_NO_CHANNELS_HALF, sub( 31, DirAC_mem.reference_power_q[1] ),
- reference_power_smooth_fx + CLDFB_NO_CHANNELS_HALF, sub( 31, q_reference_power_smooth[1] ),
- reference_power_smooth_fx + CLDFB_NO_CHANNELS_HALF, &temp_q,
- s_max( 0, sub( hSpatParamRendCom->num_freq_bands, CLDFB_NO_CHANNELS_HALF ) ), 1 );
+ v_add_fx_me( reference_power_fx + CLDFB_NO_CHANNELS_HALF, sub( 31, DirAC_mem.reference_power_q[1] ),
+ reference_power_smooth_fx + CLDFB_NO_CHANNELS_HALF, sub( 31, q_reference_power_smooth[1] ),
+ reference_power_smooth_fx + CLDFB_NO_CHANNELS_HALF, &temp_q,
+ s_max( 0, sub( hSpatParamRendCom->num_freq_bands, CLDFB_NO_CHANNELS_HALF ) ), 1 );
q_reference_power_smooth[1] = sub( 31, temp_q );
}
}
@@ -3830,17 +3784,20 @@ void ivas_dirac_dec_render_sf_fx(
Word16 az_q0 = extract_l( L_shr( st_ivas->hIsmMetaData[i]->azimuth_fx, Q22 ) );
Word16 el_q0 = extract_l( L_shr( st_ivas->hIsmMetaData[i]->elevation_fx, Q22 ) );
Word32 az1_32, el1_32;
- rotateAziEle_fixed( az_q0, el_q0, &az1_32, &el1_32, st_ivas->hCombinedOrientationData->Rmat_fx[0], st_ivas->hIntSetup.is_planar_setup );
+
+ rotateAziEle_fx32( az_q0, el_q0, &az1_32, &el1_32, st_ivas->hCombinedOrientationData->Rmat_fx[0], st_ivas->hIntSetup.is_planar_setup );
IF( st_ivas->hEFAPdata != NULL )
{
const Word32 azi_fx = L_shl( az1_32, Q22 - Q16 ); // Q16 -> Q22
const Word32 ele_fx = L_shl( el1_32, Q22 - Q16 ); // Q16 -> Q22
efap_determine_gains_fx( st_ivas->hEFAPdata, st_ivas->hIsmRendererData->gains_fx[i], azi_fx, ele_fx, EFAP_MODE_EFAP );
-#ifdef OBJ_EDITING_API
- // TODO: Enable gain editing feature
- // v_multc_fixed( st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hIsmMetaData[i]->edited_gain_fx, st_ivas->hIsmRendererData->gains_fx[i], nchan_out_woLFE ); // Q30, Q30 --> Q30
-#endif
+ // TODO: Align Q-values
+ IF( NE_32( st_ivas->hIsmMetaData[i]->edited_gain_fx, ONE_IN_Q29 ) )
+ {
+ v_multc_fx( st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hIsmMetaData[i]->edited_gain_fx, st_ivas->hIsmRendererData->gains_fx[i], nchan_out_woLFE ); // Q30, Q29 --> Q28
+ Scale_sig32( st_ivas->hIsmRendererData->gains_fx[i], nchan_out_woLFE, Q2 ); // Q28 --> Q30
+ }
}
}
@@ -4097,7 +4054,6 @@ void ivas_dirac_dec_render_sf_fx(
{
FOR( ch = 0; ch < outchannels; ch++ )
{
-
test();
test();
IF( ( hDirACRend->hOutSetup.num_lfe > 0 && ( EQ_16( hDirACRend->hOutSetup.index_lfe[idx_lfe], ch ) ) ) )
@@ -4204,7 +4160,6 @@ void ivas_dirac_dec_render_sf_fx(
hSpatParamRendCom->subframes_rendered = add( hSpatParamRendCom->subframes_rendered, 1 );
move16();
-
IF( EQ_16( hDirACRend->synthesisConf, DIRAC_SYNTHESIS_GAIN_SHD ) )
{
hDirACRend->h_output_synthesis_psd_state.gains_dir_prev_q = hDirACRend->h_output_synthesis_psd_state.q_cy_cross_dir_smooth_prev;
diff --git a/lib_dec/ivas_dirac_output_synthesis_cov_fx.c b/lib_dec/ivas_dirac_output_synthesis_cov_fx.c
index 954dd5f72e35211386a25ec3703f839b8944ea1e..0ecd015ee407bb092acfb99da8bee139c120d20c 100644
--- a/lib_dec/ivas_dirac_output_synthesis_cov_fx.c
+++ b/lib_dec/ivas_dirac_output_synthesis_cov_fx.c
@@ -30,7 +30,6 @@
*******************************************************************************************************/
-
#include "basop_util.h"
#include "enh32.h"
#include
@@ -470,9 +469,9 @@ void ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot_fx(
scale_sig32( imag_in_buffer_fx, buf_len, sub( ImagBuffer_e, output_e ) );
cmplx_matrix_square_fx( real_in_buffer_fx, imag_in_buffer_fx, num_bands, nchan_in, real_buffer_fx, imag_buffer_fx, output_e, &output_e );
- v_add_fixed_me( cx_fx, *cx_e, real_buffer_fx, output_e, cx_fx, &tmp1_e, imult1616( nchan_in, nchan_in ), 1 );
+ v_add_fx_me( cx_fx, *cx_e, real_buffer_fx, output_e, cx_fx, &tmp1_e, imult1616( nchan_in, nchan_in ), 1 );
- v_add_fixed_me( cx_imag_fx, *cx_imag_e, imag_buffer_fx, output_e, cx_imag_fx, &tmp2_e, imult1616( nchan_in, nchan_in ), 1 );
+ v_add_fx_me( cx_imag_fx, *cx_imag_e, imag_buffer_fx, output_e, cx_imag_fx, &tmp2_e, imult1616( nchan_in, nchan_in ), 1 );
cx_fx_norm = L_norm_arr( cx_fx, PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS );
cx_imag_fx_norm = L_norm_arr( cx_imag_fx, PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS );
@@ -552,33 +551,32 @@ void ivas_dirac_dec_output_synthesis_cov_param_mc_synthesise_slot_fx(
move16();
}
- v_multc_fixed( mixing_matrix_fx[param_band_idx], L_deposit_h( hParamMC->h_output_synthesis_params.interpolator_fx[slot_idx_tot] ), mixing_matrix_smooth_fx, imult1616( nY, nX ) );
+ v_multc_fx( mixing_matrix_fx[param_band_idx], L_deposit_h( hParamMC->h_output_synthesis_params.interpolator_fx[slot_idx_tot] ), mixing_matrix_smooth_fx, imult1616( nY, nX ) );
mixing_matrix_smooth_e = mixing_matrix_e[param_band_idx]; // interpolator is W16
move16();
- v_multc_fixed( h_synthesis_state.mixing_matrix_old_fx[param_band_idx], L_sub( ONE_IN_Q31, L_deposit_h( hParamMC->h_output_synthesis_params.interpolator_fx[slot_idx_tot] ) ), mixing_matrix_buffer_fx, imult1616( nY, nX ) );
+ v_multc_fx( h_synthesis_state.mixing_matrix_old_fx[param_band_idx], L_sub( ONE_IN_Q31, L_deposit_h( hParamMC->h_output_synthesis_params.interpolator_fx[slot_idx_tot] ) ), mixing_matrix_buffer_fx, imult1616( nY, nX ) );
mixing_matrix_buffer_e = h_synthesis_state.mixing_matrix_old_exp[param_band_idx]; // interpolator is W16
move16();
- v_add_fixed_me( mixing_matrix_smooth_fx, mixing_matrix_smooth_e, mixing_matrix_buffer_fx, mixing_matrix_buffer_e, mixing_matrix_smooth_fx, &mixing_matrix_smooth_e, imult1616( nY, nX ), 0 );
+ v_add_fx_me( mixing_matrix_smooth_fx, mixing_matrix_smooth_e, mixing_matrix_buffer_fx, mixing_matrix_buffer_e, mixing_matrix_smooth_fx, &mixing_matrix_smooth_e, imult1616( nY, nX ), 0 );
IF( have_residual )
{
/* residual mixing matrix interpolation*/
- v_multc_fixed( mixing_matrix_res_fx[param_band_idx], L_deposit_h( hParamMC->h_output_synthesis_params.interpolator_fx[slot_idx_tot] ), mixing_matrix_res_smooth_fx, imult1616( nY, nY ) );
+ v_multc_fx( mixing_matrix_res_fx[param_band_idx], L_deposit_h( hParamMC->h_output_synthesis_params.interpolator_fx[slot_idx_tot] ), mixing_matrix_res_smooth_fx, imult1616( nY, nY ) );
mixing_matrix_res_smooth_e = mixing_matrix_res_e[param_band_idx]; // interpolator is W16
move16();
set_zero_fx( mixing_matrix_buffer_fx, imult1616( nY, nY ) );
- v_multc_fixed( h_synthesis_state.mixing_matrix_res_old_fx[param_band_idx], L_sub( ONE_IN_Q31, L_deposit_h( hParamMC->h_output_synthesis_params.interpolator_fx[slot_idx_tot] ) ), mixing_matrix_buffer_fx, imult1616( nY, nY ) );
+ v_multc_fx( h_synthesis_state.mixing_matrix_res_old_fx[param_band_idx], L_sub( ONE_IN_Q31, L_deposit_h( hParamMC->h_output_synthesis_params.interpolator_fx[slot_idx_tot] ) ), mixing_matrix_buffer_fx, imult1616( nY, nY ) );
mixing_matrix_buffer_e = h_synthesis_state.mixing_matrix_res_old_exp[param_band_idx]; // interpolator is W16
move16();
- v_add_fixed_me( mixing_matrix_res_smooth_fx, mixing_matrix_res_smooth_e, mixing_matrix_buffer_fx, mixing_matrix_buffer_e, mixing_matrix_res_smooth_fx, &mixing_matrix_res_smooth_e, imult1616( nY, nY ), 0 );
+ v_add_fx_me( mixing_matrix_res_smooth_fx, mixing_matrix_res_smooth_e, mixing_matrix_buffer_fx, mixing_matrix_buffer_e, mixing_matrix_res_smooth_fx, &mixing_matrix_res_smooth_e, imult1616( nY, nY ), 0 );
}
-
FOR( band = brange[0]; band < brange[1]; band++ )
{
assert( band >= 0 );
@@ -601,17 +599,16 @@ void ivas_dirac_dec_output_synthesis_cov_param_mc_synthesise_slot_fx(
shifter = sub( mixing_matrix_res_smooth_e, 32 );
FOR( ch_idx = 0; ch_idx < nY; ch_idx++ )
{
- int i;
+ Word16 i;
Word16 idx;
Word64 temp_real, temp_imag;
-
idx = ch_idx;
temp_real = 0;
temp_imag = 0;
move64();
move64();
- for ( i = 0; i < nY; i++ )
+ FOR( i = 0; i < nY; i++ )
{
temp_real = W_mac_32_32( temp_real, mixing_matrix_res_smooth_fx[idx], diff_f_real_fx[i] );
temp_imag = W_mac_32_32( temp_imag, mixing_matrix_res_smooth_fx[idx], diff_f_imag_fx[i] );
@@ -650,11 +647,10 @@ void ivas_dirac_dec_output_synthesis_cov_param_mc_synthesise_slot_fx(
FOR( ch_idx = 0; ch_idx < nY; ch_idx++ )
{
- int i;
+ Word16 i;
Word16 idx;
Word64 temp_real, temp_imag;
-
idx = ch_idx;
temp_real = 0;
temp_imag = 0;
@@ -721,7 +717,6 @@ Word16 computeMixingMatrices_fx(
Word32 svd_s_buffer_fx[MAX_OUTPUT_CHANNELS];
Word16 svd_s_buffer_e[MAX_OUTPUT_CHANNELS];
-
Word32 limit_fx;
Word16 limit_e;
@@ -789,7 +784,6 @@ Word16 computeMixingMatrices_fx(
Cy_fx_e = Cy_e;
move16();
-
/*-----------------------------------------------------------------*
* Decomposition of Cy
*-----------------------------------------------------------------*/
@@ -905,13 +899,11 @@ Word16 computeMixingMatrices_fx(
}
}
-
limit_fx = 0;
move32();
limit_e = 0;
move16();
-
/*-----------------------------------------------------------------*
* regularized Kx-1
*-----------------------------------------------------------------*/
@@ -935,12 +927,10 @@ Word16 computeMixingMatrices_fx(
*-----------------------------------------------------------------*/
/* Computing Q*Cx*Q' */
-
matrix_product_mant_exp_fx( Q_fx, Q_e, lengthCy, lengthCx, 0, Cx_fx, Cx_fx_e, lengthCx, lengthCx, 0, Q_Cx_fx, &Q_Cx_e );
matrix_product_diag_fx( Q_Cx_fx, Q_Cx_e, lengthCy, lengthCx, 0, Q_fx, Q_e, lengthCy, lengthCx, 1, Cy_hat_diag_fx, &Cy_hat_diag_e );
-
Word16 com_e = sub( limit_e, Cy_hat_diag_e );
FOR( i = 0; i < lengthCy; ++i )
{
@@ -978,13 +968,11 @@ Word16 computeMixingMatrices_fx(
move16();
}
-
/*-----------------------------------------------------------------*
* Formulate optimal P
*-----------------------------------------------------------------*/
/* Computing the input matrix Kx'*Q'*G_hat'*Ky */
-
Word16 mat_mult_buffer1_fx_e;
Word16 mat_mult_buffer2_fx_e[MAX_OUTPUT_CHANNELS * MAX_OUTPUT_CHANNELS];
@@ -1047,8 +1035,6 @@ Word16 computeMixingMatrices_fx(
*-----------------------------------------------------------------*/
/* Compute Cy_tilde = M*Cx*M' */
-
-
Word16 Cx_e_arr[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS];
set16_fx( Cx_e_arr, Cx_fx_e, PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS );
matrix_product_mant_exp( mixing_matrix_fx, mixing_matrix_fx_e, lengthCy, lengthCx, 0, Cx_fx, Cx_e_arr, lengthCx, lengthCx, 0, mat_mult_buffer1_fx, mat_mult_buffer1_fx_e1 );
@@ -1218,6 +1204,7 @@ Word16 computeMixingMatrices_fx(
return out;
}
+
/*-------------------------------------------------------------------*
* computeMixingMatricesResidual()
*
diff --git a/lib_dec/ivas_init_dec_fx.c b/lib_dec/ivas_init_dec_fx.c
index 11fed28cb0ecbb511582a149a4b87ec627404007..00179537e0749a109a66aa1f3bb9899188094d57 100644
--- a/lib_dec/ivas_init_dec_fx.c
+++ b/lib_dec/ivas_init_dec_fx.c
@@ -151,9 +151,6 @@ ivas_error ivas_dec_get_format_fx(
/*-------------------------------------------------------------------*
* Read other signaling (ISM/MC mode, number of channels, etc.)
*-------------------------------------------------------------------*/
-#ifndef FIX_HRTF_LOAD
- k = extract_l( Mpy_32_32_r( ivas_total_brate, ONE_BY_FRAMES_PER_SEC_Q31 ) );
-#endif
IF( is_DTXrate( ivas_total_brate ) == 0 )
{
@@ -175,13 +172,9 @@ ivas_error ivas_dec_get_format_fx(
/* read the number of objects */
nchan_ism = 1;
move16();
-#ifdef FIX_HRTF_LOAD
k = extract_l( Mpy_32_32_r( ivas_total_brate, ONE_BY_FRAMES_PER_SEC_Q31 ) );
k = sub( k, 1 );
WHILE( st_ivas->bit_stream[k] && ( nchan_ism < MAX_NUM_OBJECTS ) )
-#else
- WHILE( st_ivas->bit_stream[k - 1] && nchan_ism < MAX_NUM_OBJECTS )
-#endif
{
nchan_ism = add( nchan_ism, 1 );
k = sub( k, 1 );
@@ -274,19 +267,11 @@ ivas_error ivas_dec_get_format_fx(
*/
nchan_ism = sub( 5, nchan_ism );
test();
-#ifdef FIX_HRTF_LOAD
IF( EQ_16( st_ivas->nchan_transport, 1 ) && EQ_16( nchan_ism, 2 ) )
{
nchan_ism = 1;
move16();
}
-#else
- IF( EQ_16( st_ivas->nchan_transport, 1 ) && EQ_16( st_ivas->nchan_ism, 2 ) )
- {
- st_ivas->nchan_ism = 1;
- move16();
- }
-#endif
/* for MASA_ISM_FORMAT at input the number of MASA transport channels is always 2 and the corresponding bit is not used here*/
st_ivas->nchan_transport = 2;
@@ -354,11 +339,7 @@ ivas_error ivas_dec_get_format_fx(
/* read Ambisonic (SBA) order (0 for signaling OSBA format at low bitrates)*/
sba_order = st_ivas->bit_stream[num_bits_read + 1];
move16();
-#ifdef FIX_HRTF_LOAD
sba_order = add( sba_order, shl( st_ivas->bit_stream[num_bits_read], 1 ) );
-#else
- sba_order = shl( st_ivas->bit_stream[num_bits_read], 1 );
-#endif
num_bits_read = add( num_bits_read, SBA_ORDER_BITS );
/* read the real Ambisonic order when the above bits are used to signal OSBA format */
@@ -366,11 +347,7 @@ ivas_error ivas_dec_get_format_fx(
{
sba_order = st_ivas->bit_stream[num_bits_read + 1];
move16();
-#ifdef FIX_HRTF_LOAD
sba_order = add( sba_order, shl( st_ivas->bit_stream[num_bits_read], 1 ) );
-#else
- sba_order = shl( st_ivas->bit_stream[num_bits_read], 1 );
-#endif
num_bits_read = add( num_bits_read, SBA_ORDER_BITS );
}
@@ -413,7 +390,7 @@ ivas_error ivas_dec_get_format_fx(
return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "wrong MC configuration signalled!" );
}
- st_ivas->mc_mode = ivas_mc_mode_select_fx( ivas_mc_map_output_config_to_mc_ls_setup_fx( signaled_config ), st_ivas->hDecoderConfig->ivas_total_brate );
+ st_ivas->mc_mode = ivas_mc_mode_select_fx( ivas_mc_map_output_config_to_mc_ls_setup_fx( signaled_config ), ivas_total_brate );
st_ivas->transport_config = signaled_config;
move16();
}
@@ -497,13 +474,9 @@ ivas_error ivas_dec_get_format_fx(
/* read the number of objects */
nchan_ism = 1;
move16();
-#ifdef FIX_HRTF_LOAD
k = extract_l( Mpy_32_32_r( ivas_total_brate, ONE_BY_FRAMES_PER_SEC_Q31 ) );
k = sub( sub( k, 1 ), SID_FORMAT_NBITS );
WHILE( st_ivas->bit_stream[k] && ( nchan_ism < MAX_NUM_OBJECTS ) )
-#else
- WHILE( st_ivas->bit_stream[k - 1 - SID_FORMAT_NBITS] && nchan_ism < MAX_NUM_OBJECTS )
-#endif
{
nchan_ism = add( nchan_ism, 1 );
k = sub( k, 1 );
@@ -557,12 +530,7 @@ ivas_error ivas_dec_get_format_fx(
*-------------------------------------------------------------------*/
ivas_error ivas_dec_setup(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord16 *nSamplesRendered, /* o : number of samples flushed from the previous frame (JBM) */
- Word16 *data /* o : output synthesis signal */
-#endif
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
)
{
Word16 k, idx, num_bits_read;
@@ -594,7 +562,7 @@ ivas_error ivas_dec_setup(
}
/*-------------------------------------------------------------------*
- * Read other signling (ISM/MC mode, number of channels, etc.)
+ * Read other signaling (ISM/MC mode, number of channels, etc.)
*-------------------------------------------------------------------*/
IF( is_DTXrate( ivas_total_brate ) == 0 )
@@ -630,11 +598,7 @@ ivas_error ivas_dec_setup(
st_ivas->nchan_ism = nchan_ism;
move16();
-#ifdef FIX_HRTF_LOAD
IF( NE_32( ( error = ivas_ism_dec_config_fx( st_ivas, st_ivas->ism_mode ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_ism_dec_config_fx( st_ivas, st_ivas->ism_mode, nSamplesRendered, data ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -657,11 +621,7 @@ ivas_error ivas_dec_setup(
test();
IF( st_ivas->ini_frame > 0 && NE_32( ivas_total_brate, st_ivas->last_active_ivas_total_brate ) && GT_32( ivas_total_brate, IVAS_SID_5k2 ) )
{
-#ifdef FIX_HRTF_LOAD
IF( NE_32( ( error = ivas_sba_dec_reconfigure_fx( st_ivas ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_sba_dec_reconfigure_fx( st_ivas, nSamplesRendered, data ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -692,10 +652,8 @@ ivas_error ivas_dec_setup(
}
/* this should be non-zero if original input format was MASA_ISM_FORMAT */
-#ifdef NONBE_1199_OMASA_JBM_BRATE_SW_FLUSH
st_ivas->ism_mode = ISM_MODE_NONE;
move16();
-#endif
st_ivas->nchan_ism = add( st_ivas->bit_stream[sub( k, 3 )], shl( st_ivas->bit_stream[sub( k, 2 )], 1 ) );
IF( GT_16( st_ivas->nchan_ism, 0 ) )
@@ -743,11 +701,7 @@ ivas_error ivas_dec_setup(
}
ELSE
{
-#ifdef FIX_HRTF_LOAD
IF( NE_32( ( error = ivas_masa_dec_reconfigure_fx( st_ivas ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_masa_dec_reconfigure_fx( st_ivas, nSamplesRendered, data ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -755,11 +709,7 @@ ivas_error ivas_dec_setup(
}
ELSE
{
-#ifdef FIX_HRTF_LOAD
IF( NE_32( ( error = ivas_omasa_dec_config_fx( st_ivas, &num_src, SrcInd ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_omasa_dec_config_fx( st_ivas, nSamplesRendered, &num_src, SrcInd, data ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -785,11 +735,7 @@ ivas_error ivas_dec_setup(
test();
IF( ( GT_32( ivas_total_brate, IVAS_SID_5k2 ) && NE_32( ivas_total_brate, st_ivas->hDecoderConfig->last_ivas_total_brate ) ) || ( st_ivas->ini_active_frame == 0 ) )
{
-#ifdef FIX_HRTF_LOAD
IF( NE_32( ( error = ivas_omasa_dec_config_fx( st_ivas, &num_src, SrcInd ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_omasa_dec_config_fx( st_ivas, nSamplesRendered, &num_src, SrcInd, data ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -828,11 +774,7 @@ ivas_error ivas_dec_setup(
test();
IF( st_ivas->ini_frame > 0 && NE_32( ivas_total_brate, st_ivas->last_active_ivas_total_brate ) )
{
-#ifdef FIX_HRTF_LOAD
IF( NE_32( ( error = ivas_sba_dec_reconfigure_fx( st_ivas ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_sba_dec_reconfigure_fx( st_ivas, nSamplesRendered, data ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -849,9 +791,7 @@ ivas_error ivas_dec_setup(
test();
IF( st_ivas->ini_frame > 0 && EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
{
- Word16 n;
-
- n = add( st_ivas->nchan_transport, st_ivas->nchan_ism );
+ Word16 n = add( st_ivas->nchan_transport, st_ivas->nchan_ism );
st_ivas->nCPE = shr_r( n, 1 );
}
}
@@ -882,11 +822,7 @@ ivas_error ivas_dec_setup(
num_bits_read = add( num_bits_read, MC_LS_SETUP_BITS );
/* select MC format mode; reconfigure the MC format decoder */
-#ifdef FIX_HRTF_LOAD
IF( NE_32( ( error = ivas_mc_dec_config_fx( st_ivas, idx ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_mc_dec_config_fx( st_ivas, idx, nSamplesRendered, data ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -997,11 +933,7 @@ ivas_error ivas_dec_setup(
move16();
}
-#ifdef FIX_HRTF_LOAD
IF( NE_32( ( error = ivas_sba_dec_reconfigure_fx( st_ivas ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_sba_dec_reconfigure_fx( st_ivas, nSamplesRendered, data ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -1013,7 +945,6 @@ ivas_error ivas_dec_setup(
}
}
-#ifdef NONBE_1199_OMASA_JBM_BRATE_SW_FLUSH
test();
IF( GT_16( st_ivas->ini_frame, 0 ) && EQ_32( st_ivas->ivas_format, MASA_FORMAT ) )
{
@@ -1023,7 +954,6 @@ ivas_error ivas_dec_setup(
move16();
}
-#endif
IF( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) )
{
ISM_MODE last_ism_mode = st_ivas->ism_mode;
@@ -1069,11 +999,7 @@ ivas_error ivas_dec_setup(
move32();
}
-#ifdef FIX_HRTF_LOAD
IF( NE_32( ( error = ivas_ism_dec_config_fx( st_ivas, last_ism_mode ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_ism_dec_config_fx( st_ivas, last_ism_mode, nSamplesRendered, data ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -1232,14 +1158,12 @@ static ivas_error ivas_read_format(
st_ivas->ivas_format = SBA_ISM_FORMAT;
move32();
-#ifdef FIX_CREND_SIMPLIFY_CODE
/* read the real Ambisonic order when the above bits are used to signal OSBA format */
IF( LE_32( ivas_total_brate, IVAS_24k4 ) )
{
st_ivas->sba_order = st_ivas->bit_stream[add( *num_bits_read, 2 + SBA_PLANAR_BITS + SBA_ORDER_BITS )];
st_ivas->sba_order = add( st_ivas->sba_order, shl( st_ivas->bit_stream[add( *num_bits_read, 1 + SBA_PLANAR_BITS + SBA_ORDER_BITS )], 1 ) );
}
-#endif
}
}
( *num_bits_read ) = add( ( *num_bits_read ), 1 );
@@ -1356,7 +1280,6 @@ static ivas_error ivas_read_format(
*-------------------------------------------------------------------*/
/*! r: number of channels to be synthesised */
-
Word16 getNumChanSynthesis(
Decoder_Struct *st_ivas /* i : IVAS decoder structure */
)
@@ -1392,6 +1315,7 @@ Word16 getNumChanSynthesis(
return n;
}
+
/*-------------------------------------------------------------------*
* copy_decoder_config()
*
@@ -1457,6 +1381,10 @@ ivas_error ivas_init_decoder_front(
move32();
st_ivas->mc_mode = MC_MODE_NONE;
move32();
+#ifdef FIX_1384_MSAN_ivas_spar_dec_open
+ st_ivas->sid_format = SID_FORMAT_NONE;
+ move16();
+#endif
st_ivas->sba_dirac_stereo_flag = 0;
move16();
@@ -1491,8 +1419,8 @@ ivas_error ivas_init_decoder_front(
{
return error;
}
- error = ivas_orient_trk_SetTrackingType_fx( st_ivas->hHeadTrackData->OrientationTracker, st_ivas->hDecoderConfig->orientation_tracking );
- IF( NE_32( ( error ), IVAS_ERR_OK ) )
+
+ IF( NE_32( ( error = ivas_orient_trk_SetTrackingType_fx( st_ivas->hHeadTrackData->OrientationTracker, st_ivas->hDecoderConfig->orientation_tracking ) ), IVAS_ERR_OK ) )
{
return error;
}
@@ -1504,7 +1432,7 @@ ivas_error ivas_init_decoder_front(
IF( st_ivas->hDecoderConfig->Opt_ExternalOrientation )
{
- IF( NE_32( ( error = ivas_external_orientation_open( &( st_ivas->hExtOrientationData ), st_ivas->hDecoderConfig->render_framesize ) ), IVAS_ERR_OK ) )
+ IF( NE_32( ( error = ivas_external_orientation_open_fx( &( st_ivas->hExtOrientationData ), st_ivas->hDecoderConfig->render_framesize ) ), IVAS_ERR_OK ) )
{
return error;
}
@@ -1517,48 +1445,17 @@ ivas_error ivas_init_decoder_front(
test();
IF( st_ivas->hDecoderConfig->Opt_Headrotation || st_ivas->hDecoderConfig->Opt_ExternalOrientation )
{
- IF( NE_32( ( error = ivas_combined_orientation_open( &( st_ivas->hCombinedOrientationData ), st_ivas->hDecoderConfig->output_Fs, st_ivas->hDecoderConfig->render_framesize ) ), IVAS_ERR_OK ) )
+ IF( NE_32( ( error = ivas_combined_orientation_open_fx( &( st_ivas->hCombinedOrientationData ), st_ivas->hDecoderConfig->output_Fs, st_ivas->hDecoderConfig->render_framesize ) ), IVAS_ERR_OK ) )
{
return error;
}
}
-#ifndef FIX_CREND_SIMPLIFY_CODE
- /*-------------------------------------------------------------------*
- * Allocate HRTF binary handle
- *--------------------------------------------------------------------*/
-
- IF( st_ivas->hDecoderConfig->Opt_HRTF_binary )
- {
- IF( NE_32( ( error = ivas_HRTF_binary_open_fx( &( st_ivas->hHrtfTD ) ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
- IF( NE_32( ( error = ivas_HRTF_CRend_binary_open_fx( &( st_ivas->hSetOfHRTF ) ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
-
- IF( NE_32( ( error = ivas_HRTF_fastconv_binary_open_fx( &st_ivas->hHrtfFastConv ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
-
- IF( NE_32( ( error = ivas_HRTF_parambin_binary_open_fx( &st_ivas->hHrtfParambin ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
-
- IF( NE_32( ( error = ivas_HRTF_statistics_binary_open_fx( &st_ivas->hHrtfStatistics ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
- }
-#endif
/*-------------------------------------------------------------------*
* Allocate and initialize Binaural Renderer configuration handle
*--------------------------------------------------------------------*/
+
test();
test();
test();
@@ -1588,6 +1485,7 @@ ivas_error ivas_init_decoder_front(
*
* Initialize IVAS decoder state structure
*-------------------------------------------------------------------*/
+
ivas_error ivas_init_decoder_fx(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
)
@@ -1884,6 +1782,14 @@ ivas_error ivas_init_decoder_fx(
{
st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->seed2 = st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->seed3;
move16();
+ IF( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) || EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) )
+ {
+ /* reusing OMASA function for allocating and initializing MASA_ISM rendering handle (even though not in OMASA) */
+ IF( NE_32( ( error = ivas_omasa_data_open_fx( st_ivas ) ), IVAS_ERR_OK ) )
+ {
+ return error;
+ }
+ }
}
ELSE IF( EQ_32( st_ivas->ism_mode, ISM_MODE_DISC ) )
{
@@ -1926,7 +1832,7 @@ ivas_error ivas_init_decoder_fx(
test();
test();
test();
- IF( NE_32( hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_FOA ) && NE_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_STEREO ) && NE_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_MONO ) && !( EQ_32( hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) && EQ_32( st_ivas->intern_config, IVAS_AUDIO_CONFIG_FOA ) ) )
+ IF( NE_32( output_config, IVAS_AUDIO_CONFIG_FOA ) && NE_32( output_config, IVAS_AUDIO_CONFIG_STEREO ) && NE_32( output_config, IVAS_AUDIO_CONFIG_MONO ) && !( EQ_32( output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) && EQ_32( st_ivas->intern_config, IVAS_AUDIO_CONFIG_FOA ) ) )
{
IF( NE_32( ( error = ivas_dirac_dec_config_fx( st_ivas, DIRAC_OPEN ) ), IVAS_ERR_OK ) )
{
@@ -1951,7 +1857,7 @@ ivas_error ivas_init_decoder_fx(
move16();
}
- ivas_dirac_config_bands_fx( band_grouping, IVAS_MAX_NUM_BANDS, extract_l( Mpy_32_32_r( st_ivas->hDecoderConfig->output_Fs, INV_CLDFB_BANDWIDTH_Q31 ) ),
+ ivas_dirac_config_bands_fx( band_grouping, IVAS_MAX_NUM_BANDS, extract_l( Mpy_32_32_r( output_Fs, INV_CLDFB_BANDWIDTH_Q31 ) ),
st_ivas->hSpar->dirac_to_spar_md_bands, st_ivas->hQMetaData->useLowerBandRes, st_ivas->hSpar->enc_param_start_band, 0, 1 );
}
st_ivas->sba_dirac_stereo_flag = ivas_get_sba_dirac_stereo_flag( st_ivas );
@@ -2075,6 +1981,7 @@ ivas_error ivas_init_decoder_fx(
st_ivas->sba_dirac_stereo_flag = ivas_get_sba_dirac_stereo_flag( st_ivas );
move16();
+
IF( NE_32( ( error = ivas_qmetadata_open_fx( &( st_ivas->hQMetaData ) ) ), IVAS_ERR_OK ) )
{
return error;
@@ -2103,7 +2010,7 @@ ivas_error ivas_init_decoder_fx(
test();
test();
- IF( NE_32( hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_FOA ) && NE_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_STEREO ) && NE_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_MONO ) )
+ IF( NE_32( output_config, IVAS_AUDIO_CONFIG_FOA ) && NE_32( output_config, IVAS_AUDIO_CONFIG_STEREO ) && NE_32( output_config, IVAS_AUDIO_CONFIG_MONO ) )
{
IF( NE_32( ( error = ivas_dirac_dec_config_fx( st_ivas, DIRAC_OPEN ) ), IVAS_ERR_OK ) )
{
@@ -2119,6 +2026,7 @@ ivas_error ivas_init_decoder_fx(
st_ivas->hSpar->enc_param_start_band = s_min( IVAS_MAX_NUM_BANDS, SPAR_DIRAC_SPLIT_START_BAND );
move16();
+
IF( ivas_get_hodirac_flag_fx( ivas_total_brate, st_ivas->sba_analysis_order ) )
{
st_ivas->hSpar->enc_param_start_band = 0;
@@ -2128,7 +2036,7 @@ ivas_error ivas_init_decoder_fx(
move16();
}
- ivas_dirac_config_bands_fx( band_grouping, IVAS_MAX_NUM_BANDS, extract_l( Mpy_32_32_r( st_ivas->hDecoderConfig->output_Fs, INV_CLDFB_BANDWIDTH_Q31 ) ),
+ ivas_dirac_config_bands_fx( band_grouping, IVAS_MAX_NUM_BANDS, extract_l( Mpy_32_32_r( output_Fs, INV_CLDFB_BANDWIDTH_Q31 ) ),
st_ivas->hSpar->dirac_to_spar_md_bands, st_ivas->hQMetaData->useLowerBandRes, st_ivas->hSpar->enc_param_start_band, 0, 1 );
}
@@ -2149,9 +2057,7 @@ ivas_error ivas_init_decoder_fx(
st_ivas->nCPE_old = st_ivas->nCPE;
move16();
{
- Word16 n_all;
-
- n_all = add( st_ivas->nchan_transport, st_ivas->nchan_ism );
+ Word16 n_all = add( st_ivas->nchan_transport, st_ivas->nchan_ism );
st_ivas->nCPE = shr( add( n_all, 1 ), 1 );
}
st_ivas->element_mode_init = IVAS_CPE_MDCT;
@@ -2249,19 +2155,9 @@ ivas_error ivas_init_decoder_fx(
reset_indices_dec( st_ivas->hSCE[0]->hCoreCoder[0] );
- IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
+ IF( ( error = ivas_ism_metadata_dec_create_fx( st_ivas, st_ivas->nchan_ism, NULL ) ) != IVAS_ERR_OK )
{
- if ( ( error = ivas_ism_metadata_dec_create_fx( st_ivas, st_ivas->nchan_ism, NULL ) ) != IVAS_ERR_OK )
- {
- return error;
- }
- }
- else
- {
- IF( NE_32( ( error = ivas_ism_metadata_dec_create_fx( st_ivas, 1, NULL ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
+ return error;
}
}
ELSE IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) )
@@ -2397,7 +2293,6 @@ ivas_error ivas_init_decoder_fx(
FOR( cpe_id = 0; cpe_id < st_ivas->nCPE; cpe_id++ )
{
IF( NE_32( ( error = create_cpe_dec( st_ivas, cpe_id, tmp_br ) ), IVAS_ERR_OK ) )
-
{
return error;
}
@@ -2465,13 +2360,13 @@ ivas_error ivas_init_decoder_fx(
}
IF( NE_32( ( error = ivas_masa_dec_open_fx( st_ivas ) ), IVAS_ERR_OK ) )
-
{
return error;
}
st_ivas->sba_dirac_stereo_flag = ivas_get_sba_dirac_stereo_flag( st_ivas );
move16();
+
test();
IF( NE_32( st_ivas->renderer_type, RENDERER_DISABLE ) && NE_32( st_ivas->renderer_type, RENDERER_MCMASA_MONO_STEREO ) )
{
@@ -2480,6 +2375,7 @@ ivas_error ivas_init_decoder_fx(
return error;
}
}
+
test();
test();
IF( EQ_32( st_ivas->hOutSetup.output_config, IVAS_AUDIO_CONFIG_LS_CUSTOM ) && st_ivas->hOutSetup.separateChannelEnabled && !st_ivas->hLsSetupCustom->separate_ch_found )
@@ -2529,6 +2425,7 @@ ivas_error ivas_init_decoder_fx(
{
st_ivas->element_mode_init = IVAS_CPE_MDCT; /* element_mode_init was IVAS_SCE for SCE initialization */
move16();
+
IF( NE_32( ( error = create_cpe_dec( st_ivas, cpe_id, brate_cpe ) ), IVAS_ERR_OK ) )
{
return error;
@@ -2597,6 +2494,7 @@ ivas_error ivas_init_decoder_fx(
/*-------------------------------------------------------------------*
* Allocate and initialize rendering handles
*--------------------------------------------------------------------*/
+
test();
test();
test();
@@ -2656,21 +2554,20 @@ ivas_error ivas_init_decoder_fx(
IF( EQ_32( st_ivas->hOutSetup.output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) )
{
- if ( NE_32( ( error = ivas_reverb_open_fx( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ), IVAS_ERR_OK ) )
+ if ( NE_32( ( error = ivas_reverb_open_fx( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, output_Fs ) ), IVAS_ERR_OK ) )
{
return error;
}
}
-
- granularity = NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, FRAME_SIZE_NS / MAX_PARAM_SPATIAL_SUBFRAMES );
-
+#ifndef NONBE_1303_REND_GRANULARITY
+ granularity = NS2SA_FX2( output_Fs, FRAME_SIZE_NS / MAX_PARAM_SPATIAL_SUBFRAMES );
n_channels_transport_jbm = ivas_jbm_dec_get_num_tc_channels_fx( st_ivas );
-
IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, TC_BUFFER_MODE_RENDERER, n_channels_transport_jbm, n_channels_transport_jbm, n_channels_transport_jbm, granularity ) ), IVAS_ERR_OK ) )
{
return error;
}
+#endif
}
ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_MC ) )
{
@@ -2691,7 +2588,7 @@ ivas_error ivas_init_decoder_fx(
test();
test();
test();
- IF( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_MIXER_CONV_ROOM ) && EQ_32( st_ivas->ivas_format, MC_FORMAT ) && ( st_ivas->hDecoderConfig->Opt_Headrotation || st_ivas->hDecoderConfig->Opt_ExternalOrientation ) )
+ IF( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_MIXER_CONV_ROOM ) && EQ_32( st_ivas->ivas_format, MC_FORMAT ) && ( hDecoderConfig->Opt_Headrotation || hDecoderConfig->Opt_ExternalOrientation ) )
{
IF( NE_32( ( error = efap_init_data_fx( &( st_ivas->hEFAPdata ), st_ivas->hIntSetup.ls_azimuth_fx, st_ivas->hIntSetup.ls_elevation_fx, st_ivas->hIntSetup.nchan_out_woLFE, EFAP_MODE_EFAP ) ), IVAS_ERR_OK ) )
{
@@ -2699,7 +2596,6 @@ ivas_error ivas_init_decoder_fx(
}
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
Word16 num_poses = 1;
move16();
if ( st_ivas->hSplitBinRend != NULL )
@@ -2708,19 +2604,14 @@ ivas_error ivas_init_decoder_fx(
move16();
}
- IF( NE_32( ( error = ivas_rend_openCrend_fx( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, st_ivas->hRenderConfig, st_ivas->hHrtfCrend, st_ivas->hHrtfStatistics, st_ivas->hDecoderConfig->output_Fs, 0, num_poses ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_rend_openCrend_fx( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config,
- st_ivas->hRenderConfig, st_ivas->hSetOfHRTF, st_ivas->hHrtfStatistics, st_ivas->hDecoderConfig->output_Fs, ( st_ivas->hSplitBinRend == NULL ) ? 1 : st_ivas->hSplitBinRend->splitrend.multiBinPoseData.num_poses ) ),
- IVAS_ERR_OK ) )
-#endif
+ IF( NE_32( ( error = ivas_rend_openCrend_fx( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, output_config, st_ivas->hRenderConfig, st_ivas->hHrtfCrend, st_ivas->hHrtfStatistics, st_ivas->hDecoderConfig->output_Fs, 0, num_poses ) ), IVAS_ERR_OK ) )
{
return error;
}
st_ivas->binaural_latency_ns = st_ivas->hCrendWrapper->binaural_latency_ns;
move32();
-
+#ifndef NONBE_1303_REND_GRANULARITY
test();
IF( ( EQ_32( st_ivas->ivas_format, MC_FORMAT ) ) && ( EQ_32( st_ivas->mc_mode, MC_MODE_PARAMUPMIX ) ) )
{
@@ -2734,7 +2625,7 @@ ivas_error ivas_init_decoder_fx(
}
ELSE
{
- granularity = NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, FRAME_SIZE_NS / MAX_PARAM_SPATIAL_SUBFRAMES );
+ granularity = NS2SA_FX2( output_Fs, FRAME_SIZE_NS / MAX_PARAM_SPATIAL_SUBFRAMES );
n_channels_transport_jbm = ivas_jbm_dec_get_num_tc_channels_fx( st_ivas );
@@ -2743,6 +2634,7 @@ ivas_error ivas_init_decoder_fx(
return error;
}
}
+#endif
}
IF( EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) )
@@ -2781,7 +2673,7 @@ ivas_error ivas_init_decoder_fx(
IF( EQ_32( st_ivas->hOutSetup.output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) )
{
- IF( NE_32( ( error = ivas_reverb_open_fx( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ), IVAS_ERR_OK ) )
+ IF( NE_32( ( error = ivas_reverb_open_fx( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, output_Fs ) ), IVAS_ERR_OK ) )
{
return error;
}
@@ -2900,7 +2792,7 @@ ivas_error ivas_init_decoder_fx(
}
IF( EQ_32( st_ivas->hOutSetup.output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) )
{
- IF( NE_32( ( error = ivas_reverb_open_fx( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ), IVAS_ERR_OK ) )
+ IF( NE_32( ( error = ivas_reverb_open_fx( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, output_Fs ) ), IVAS_ERR_OK ) )
{
return error;
}
@@ -2942,7 +2834,7 @@ ivas_error ivas_init_decoder_fx(
test();
test();
test();
- IF( ( EQ_32( st_ivas->ivas_format, SBA_FORMAT ) || EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) ) && !st_ivas->sba_dirac_stereo_flag && NE_16( st_ivas->hDecoderConfig->nchan_out, 1 ) )
+ IF( ( EQ_32( st_ivas->ivas_format, SBA_FORMAT ) || EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) ) && !st_ivas->sba_dirac_stereo_flag && NE_16( hDecoderConfig->nchan_out, 1 ) )
{
Word16 Q_cldfbSynDec = Q11;
move16();
@@ -2984,7 +2876,7 @@ ivas_error ivas_init_decoder_fx(
{
IF( st_ivas->hBinRenderer->render_lfe )
{
- IF( NE_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) && NE_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
+ IF( NE_16( output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) && NE_16( output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
{
/* Account for filterbank delay */
delay_ns = L_add( delay_ns, IVAS_FB_DEC_DELAY_NS );
@@ -3029,9 +2921,16 @@ ivas_error ivas_init_decoder_fx(
IF( st_ivas->hTcBuffer == NULL )
{
/* no module has yet open the TC buffer, open a default one */
+#ifdef NONBE_1303_REND_GRANULARITY
+ granularity = ivas_jbm_dec_get_render_granularity_fx( st_ivas->renderer_type, ivas_renderer_secondary_select_fx( st_ivas ), output_Fs );
n_channels_transport_jbm = ivas_jbm_dec_get_num_tc_channels_fx( st_ivas );
- IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, ivas_jbm_dec_get_tc_buffer_mode( st_ivas ), n_channels_transport_jbm, n_channels_transport_jbm, n_channels_transport_jbm, NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, CLDFB_SLOT_NS ) ) ), IVAS_ERR_OK ) )
+ IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, ivas_jbm_dec_get_tc_buffer_mode_fx( st_ivas ), n_channels_transport_jbm, n_channels_transport_jbm, n_channels_transport_jbm, granularity ) ), IVAS_ERR_OK ) )
+#else
+ n_channels_transport_jbm = ivas_jbm_dec_get_num_tc_channels_fx( st_ivas );
+
+ IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, ivas_jbm_dec_get_tc_buffer_mode_fx( st_ivas ), n_channels_transport_jbm, n_channels_transport_jbm, n_channels_transport_jbm, NS2SA_FX2( output_Fs, CLDFB_SLOT_NS ) ) ), IVAS_ERR_OK ) )
+#endif
{
return error;
}
@@ -3041,7 +2940,7 @@ ivas_error ivas_init_decoder_fx(
test();
IF( ( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) || EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) ) && st_ivas->hDecoderConfig->Opt_tsm )
{
- IF( EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
+ IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
{
IF( NE_32( ( error = ivas_jbm_dec_metadata_open( st_ivas ) ), IVAS_ERR_OK ) )
{
@@ -3051,15 +2950,20 @@ ivas_error ivas_init_decoder_fx(
}
/*-----------------------------------------------------------------*
- * Allocate floating-point output audio buffers
+ * Allocate output audio buffers
*-----------------------------------------------------------------*/
- FOR( n = 0; n < ivas_get_nchan_buffers_dec_fx( st_ivas, st_ivas->sba_analysis_order, st_ivas->hDecoderConfig->ivas_total_brate ); n++ )
+#ifdef FIX_NCHAN_BUFFERS
+ k = ivas_get_nchan_buffers_dec_fx( st_ivas, st_ivas->sba_analysis_order, ivas_total_brate );
+ FOR( n = 0; n < k; n++ )
+#else
+ FOR( n = 0; n < ivas_get_nchan_buffers_dec_fx( st_ivas, st_ivas->sba_analysis_order, ivas_total_brate ); n++ )
+#endif
{
/* note: these are intra-frame heap memories */
IF( ( st_ivas->p_output_fx[n] = (Word32 *) malloc( ( 48000 / FRAMES_PER_SEC ) * sizeof( Word32 ) ) ) == NULL )
{
- return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for floating-point output audio buffer!\n" ) );
+ return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for output audio buffer!\n" ) );
}
set32_fx( st_ivas->p_output_fx[n], 0, 48000 / FRAMES_PER_SEC );
}
@@ -3220,6 +3124,7 @@ void destroy_core_dec_fx(
return;
}
+
/*-------------------------------------------------------------------------
* ivas_initialize_handles_dec()
*
@@ -3291,11 +3196,7 @@ void ivas_initialize_handles_dec(
st_ivas->hMonoDmxRenderer = NULL;
st_ivas->hCrendWrapper = NULL;
st_ivas->hReverb = NULL;
-#ifdef FIX_CREND_SIMPLIFY_CODE
st_ivas->hHrtfCrend = NULL;
-#else
- st_ivas->hSetOfHRTF = NULL;
-#endif
st_ivas->hHrtfFastConv = NULL;
st_ivas->hHrtfParambin = NULL;
st_ivas->hHrtfStatistics = NULL;
@@ -3319,7 +3220,7 @@ void ivas_initialize_handles_dec(
st_ivas->hTcBuffer = NULL;
st_ivas->hJbmMetadata = NULL;
- /* floating-point output audio buffers */
+ /* output audio buffers */
FOR( i = 0; i < MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS; i++ )
{
st_ivas->p_output_fx[i] = NULL;
@@ -3466,11 +3367,7 @@ void ivas_destroy_dec_fx(
ivas_dirac_dec_close_binaural_data_fx( st_ivas->hDiracDecBin );
/* Crend handle */
-#ifdef FIX_CREND_SIMPLIFY_CODE
ivas_rend_closeCrend_fx( &( st_ivas->hCrendWrapper ) );
-#else
- ivas_rend_closeCrend_fx( &( st_ivas->hCrendWrapper ), ( st_ivas->hSplitBinRend == NULL ) ? 1 : st_ivas->hSplitBinRend->splitrend.multiBinPoseData.num_poses );
-#endif
/* Reverb handle */
ivas_reverb_close_fx( &st_ivas->hReverb );
@@ -3509,11 +3406,7 @@ void ivas_destroy_dec_fx(
ivas_td_binaural_close_fx( &st_ivas->hBinRendererTd );
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
IF( st_ivas->hHrtfTD != NULL )
-#else
- ELSE IF( st_ivas->hHrtfTD != NULL )
-#endif
{
BSplineModelEvalDealloc_fx( &st_ivas->hHrtfTD->ModelParams, &st_ivas->hHrtfTD->ModelEval );
@@ -3521,11 +3414,7 @@ void ivas_destroy_dec_fx(
}
/* CRend binaural renderer handle */
-#ifdef FIX_CREND_SIMPLIFY_CODE
ivas_HRTF_CRend_binary_close_fx( &st_ivas->hHrtfCrend );
-#else
- ivas_HRTF_CRend_binary_close_fx( &st_ivas->hSetOfHRTF );
-#endif
/* Fastconv HRTF memories */
ivas_binaural_hrtf_close_fx( &st_ivas->hHrtfFastConv );
@@ -3551,7 +3440,7 @@ void ivas_destroy_dec_fx(
st_ivas->hDecoderConfig = NULL;
}
- ivas_jbm_dec_tc_buffer_close( &st_ivas->hTcBuffer );
+ ivas_jbm_dec_tc_buffer_close_fx( &st_ivas->hTcBuffer );
IF( st_ivas->hJbmMetadata != NULL )
{
@@ -3559,10 +3448,9 @@ void ivas_destroy_dec_fx(
st_ivas->hJbmMetadata = NULL;
}
- /* floating-point output audio buffers */
+ /* output audio buffers */
FOR( i = 0; i < MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS; i++ )
{
-
IF( st_ivas->p_output_fx[i] != NULL )
{
free( st_ivas->p_output_fx[i] );
@@ -3591,6 +3479,7 @@ void ivas_init_dec_get_num_cldfb_instances_fx(
)
{
IVAS_FORMAT ivas_format;
+
*numCldfbAnalyses = st_ivas->nchan_transport;
move16();
*numCldfbSyntheses = st_ivas->hDecoderConfig->nchan_out;
@@ -3880,6 +3769,7 @@ static ivas_error doSanityChecks_IVAS(
move32();
output_config = st_ivas->hDecoderConfig->output_config;
move32();
+
/*-----------------------------------------------------------------*
* Sanity checks
*-----------------------------------------------------------------*/
@@ -3925,6 +3815,8 @@ static ivas_error doSanityChecks_IVAS(
}
}
+ test();
+ test();
IF( ( EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ) && NE_32( output_Fs, 48000 ) )
{
return IVAS_ERROR( IVAS_ERR_INVALID_SAMPLING_RATE, "Error: Only 48kHz output sampling rate is supported for split rendering." );
@@ -3967,5 +3859,26 @@ static ivas_error doSanityChecks_IVAS(
}
}
+
+ IF( st_ivas->hDecoderConfig->Opt_ObjEdit_on )
+ {
+ test();
+ test();
+ test();
+ test();
+ IF( !( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) || EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) || EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) || ( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) && GT_16( st_ivas->nchan_ism, 0 ) ) ) )
+ {
+ return IVAS_ERROR( IVAS_ERR_OBJECTS_EDITING_NOT_SUPPORTED, "Wrong set-up: Obect editing is not supported in this IVAS format." );
+ }
+ }
+
+#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
+ test();
+ IF( st_ivas->hDecoderConfig->Opt_ObjEdit_on && st_ivas->hDecoderConfig->Opt_non_diegetic_pan )
+ {
+ return IVAS_ERROR( IVAS_ERR_OBJECTS_EDITING_AND_PANNING_NOT_SUPPORTED, "Wrong set-up: Only object editing or Non-diegetic panning can be used." );
+ }
+#endif
+
return IVAS_ERR_OK;
}
diff --git a/lib_dec/ivas_ism_dec_fx.c b/lib_dec/ivas_ism_dec_fx.c
index 63609317d01f7e41b5a51b96064e694003afe690..f225b793fac2b0a7ca6366f5f2df9c4647f21bbc 100644
--- a/lib_dec/ivas_ism_dec_fx.c
+++ b/lib_dec/ivas_ism_dec_fx.c
@@ -49,11 +49,6 @@ static ivas_error ivas_ism_bitrate_switching_dec_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
const Word16 nchan_transport_old, /* i : last number of transport channels */
const ISM_MODE last_ism_mode /* i : last ISM mode */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord16 *nSamplesRendered, /* o : number of samples rendered */
- Word16 *data /* o : output synthesis signal Q0*/
-#endif
)
{
ivas_error error;
@@ -65,16 +60,7 @@ static ivas_error ivas_ism_bitrate_switching_dec_fx(
Word16 tc_nchan_allocate_new;
Word16 tc_granularity_new;
Word16 nchan_out_buff, nchan_out_buff_old;
-#ifndef FIX_HRTF_LOAD
- AUDIO_CONFIG intern_config_old;
- IVAS_OUTPUT_SETUP hIntSetupOld;
- RENDERER_TYPE renderer_type_old;
-#endif
-#ifndef FIX_HRTF_LOAD
- error = IVAS_ERR_OK;
- move32();
-#endif
nCPE_old = st_ivas->nCPE;
move16();
nSCE_old = st_ivas->nSCE;
@@ -122,18 +108,6 @@ static ivas_error ivas_ism_bitrate_switching_dec_fx(
return error;
}
-
-#ifndef FIX_HRTF_LOAD
- /* save old IntSetup, might be needed for JBM flushing...*/
- intern_config_old = st_ivas->intern_config;
- move32();
- hIntSetupOld = st_ivas->hIntSetup;
- move32();
- tc_granularity_new = 1;
- move16();
- renderer_type_old = st_ivas->renderer_type;
- move32();
-#endif
/*-----------------------------------------------------------------*
* Initialize the needed renderer struct and destroy the unnecessary renderer struct
*-----------------------------------------------------------------*/
@@ -149,64 +123,43 @@ static ivas_error ivas_ism_bitrate_switching_dec_fx(
ivas_output_init( &( st_ivas->hIntSetup ), st_ivas->hDecoderConfig->output_config );
}
-#ifndef NONBE_1200_ISM_JBM_BRATE_SW_FLUSH
+ test();
+ test();
+ /* transfer subframe info from DirAC or ParamMC to central tc buffer */
+ /* only do this if we are not having done everything already in the TC decoding part and having only played out from the TC buffer */
+ IF( EQ_32( last_ism_mode, ISM_MODE_PARAM ) && st_ivas->hSpatParamRendCom != NULL && NE_32( st_ivas->hTcBuffer->tc_buffer_mode, TC_BUFFER_MODE_BUFFER ) )
{
-#endif
- test();
- test();
- /* transfer subframe info from DirAC or ParamMC to central tc buffer */
- /* only do this if we are not having done everything already in the TC decoding part and having only played out from the TC buffer */
- IF( EQ_32( last_ism_mode, ISM_MODE_PARAM ) && st_ivas->hSpatParamRendCom != NULL && NE_32( st_ivas->hTcBuffer->tc_buffer_mode, TC_BUFFER_MODE_BUFFER ) )
- {
- st_ivas->hTcBuffer->nb_subframes = st_ivas->hSpatParamRendCom->nb_subframes;
- move16();
- st_ivas->hTcBuffer->subframes_rendered = st_ivas->hSpatParamRendCom->subframes_rendered;
- move16();
- st_ivas->hTcBuffer->num_slots = st_ivas->hSpatParamRendCom->num_slots;
- move16();
- st_ivas->hTcBuffer->slots_rendered = st_ivas->hSpatParamRendCom->slots_rendered;
- move16();
- Copy( st_ivas->hSpatParamRendCom->subframe_nbslots, st_ivas->hTcBuffer->subframe_nbslots, MAX_JBM_SUBFRAMES_5MS );
- }
-
- /* JBM: when granularity goes down (e.g. Discrete ISM with TD Obj Renderer -> ParamISM with binaural fastconv
- render what still fits in the new granularity */
- tc_granularity_new = ivas_jbm_dec_get_render_granularity( st_ivas->renderer_type, st_ivas->ivas_format, st_ivas->mc_mode, st_ivas->hDecoderConfig->output_Fs );
-
- IF( LT_16( tc_granularity_new, st_ivas->hTcBuffer->n_samples_granularity ) )
- {
-#ifdef FIX_HRTF_LOAD
- /* flush already done in IVAS_DEC_ReadFormat() */
-#else
-#ifdef NONBE_1200_ISM_JBM_BRATE_SW_FLUSH
- /* write back info for correct rendering of the flushable samples */
- int16_t nchan_transport_ref = st_ivas->nchan_transport;
- st_ivas->nchan_transport = nchan_transport_old;
+ st_ivas->hTcBuffer->nb_subframes = st_ivas->hSpatParamRendCom->nb_subframes;
+ move16();
+ st_ivas->hTcBuffer->subframes_rendered = st_ivas->hSpatParamRendCom->subframes_rendered;
+ move16();
+ st_ivas->hTcBuffer->num_slots = st_ivas->hSpatParamRendCom->num_slots;
+ move16();
+ st_ivas->hTcBuffer->slots_rendered = st_ivas->hSpatParamRendCom->slots_rendered;
move16();
+ Copy( st_ivas->hSpatParamRendCom->subframe_nbslots, st_ivas->hTcBuffer->subframe_nbslots, MAX_JBM_SUBFRAMES_5MS );
+ }
+ /* JBM: when granularity goes down (e.g. Discrete ISM with TD Obj Renderer -> ParamISM with binaural fastconv
+ render what still fits in the new granularity */
+#ifdef NONBE_1303_REND_GRANULARITY
+ tc_granularity_new = ivas_jbm_dec_get_render_granularity_fx( st_ivas->renderer_type, RENDERER_DISABLE, st_ivas->hDecoderConfig->output_Fs );
+#else
+ tc_granularity_new = ivas_jbm_dec_get_render_granularity( st_ivas->renderer_type, st_ivas->ivas_format, st_ivas->mc_mode, st_ivas->hDecoderConfig->output_Fs );
#endif
- IF( NE_32( ( error = ivas_jbm_dec_flush_renderer_fx( st_ivas, tc_granularity_new, renderer_type_old, intern_config_old, &hIntSetupOld, MC_MODE_NONE, last_ism_mode, nSamplesRendered, data ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
-#ifdef NONBE_1200_ISM_JBM_BRATE_SW_FLUSH
- st_ivas->nchan_transport = nchan_transport_ref;
- move16();
-#endif
-#endif
- }
- /* JBM: when granularity goes up set samples to discard at the beginning of the frame */
- ELSE IF( GT_16( tc_granularity_new, st_ivas->hTcBuffer->n_samples_granularity ) )
+ IF( LT_16( tc_granularity_new, st_ivas->hTcBuffer->n_samples_granularity ) )
+ {
+ /* flush already done in IVAS_DEC_ReadFormat() */
+ }
+ /* JBM: when granularity goes up set samples to discard at the beginning of the frame */
+ ELSE IF( GT_16( tc_granularity_new, st_ivas->hTcBuffer->n_samples_granularity ) )
+ {
+ IF( NE_32( ( error = ivas_jbm_dec_set_discard_samples_fx( st_ivas ) ), IVAS_ERR_OK ) )
{
- IF( NE_32( ( error = ivas_jbm_dec_set_discard_samples( st_ivas ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
+ return error;
}
-#ifndef NONBE_1200_ISM_JBM_BRATE_SW_FLUSH
}
-#endif
IF( NE_16( st_ivas->ism_mode, last_ism_mode ) )
{
@@ -230,6 +183,8 @@ static ivas_error ivas_ism_bitrate_switching_dec_fx(
{
/* close the parametric binaural renderer */
ivas_dirac_dec_close_binaural_data_fx( st_ivas->hDiracDecBin );
+ /* Close omasa data struct (used for object editing) */
+ ivas_omasa_data_close_fx( &st_ivas->hMasaIsmData );
/* Open the TD Binaural renderer */
test();
@@ -265,12 +220,12 @@ static ivas_error ivas_ism_bitrate_switching_dec_fx(
/* close the parametric binaural renderer */
ivas_dirac_dec_close_binaural_data_fx( st_ivas->hDiracDecBin );
+
+ /* Close omasa data struct (used for object editing) */
+ ivas_omasa_data_close_fx( &st_ivas->hMasaIsmData );
+
/* Open Crend Binaural renderer */
-#ifdef FIX_CREND_SIMPLIFY_CODE
IF( NE_32( ( error = ivas_rend_openCrend_fx( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hOutSetup.output_config, st_ivas->hRenderConfig, st_ivas->hHrtfCrend, st_ivas->hHrtfStatistics, st_ivas->hDecoderConfig->output_Fs, 0, ( st_ivas->hSplitBinRend == NULL ) ? 1 : st_ivas->hSplitBinRend->splitrend.multiBinPoseData.num_poses ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_rend_openCrend_fx( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hOutSetup.output_config, st_ivas->hRenderConfig, st_ivas->hSetOfHRTF, st_ivas->hHrtfStatistics, st_ivas->hDecoderConfig->output_Fs, ( st_ivas->hSplitBinRend == NULL ) ? 1 : st_ivas->hSplitBinRend->splitrend.multiBinPoseData.num_poses ) ), IVAS_ERR_OK ) )
-#endif
st_ivas->binaural_latency_ns = st_ivas->hCrendWrapper->binaural_latency_ns;
move32();
@@ -300,6 +255,11 @@ static ivas_error ivas_ism_bitrate_switching_dec_fx(
{
return error;
}
+ /* Open omasa data struct (used for object editing) */
+ IF( ( error = ivas_omasa_data_open_fx( st_ivas ) ) != IVAS_ERR_OK )
+ {
+ return error;
+ }
/* Close the TD Binaural renderer */
ivas_td_binaural_close_fx( &st_ivas->hBinRendererTd );
@@ -328,12 +288,13 @@ static ivas_error ivas_ism_bitrate_switching_dec_fx(
return error;
}
+ /* Open omasa data struct (used for object editing) */
+ IF( ( error = ivas_omasa_data_open_fx( st_ivas ) ) != IVAS_ERR_OK )
+ {
+ return error;
+ }
/* close the crend binaural renderer */
-#ifdef FIX_CREND_SIMPLIFY_CODE
ivas_rend_closeCrend_fx( &( st_ivas->hCrendWrapper ) );
-#else
- ivas_rend_closeCrend_fx( &( st_ivas->hCrendWrapper ), ( st_ivas->hSplitBinRend == NULL ) ? 1 : st_ivas->hSplitBinRend->splitrend.multiBinPoseData.num_poses );
-#endif
}
}
@@ -347,86 +308,70 @@ static ivas_error ivas_ism_bitrate_switching_dec_fx(
}
/*-----------------------------------------------------------------*
- * floating-point output audio buffers
+ * output audio buffers
*-----------------------------------------------------------------*/
-#ifndef NONBE_1200_ISM_JBM_BRATE_SW_FLUSH
- {
-#endif
- nchan_out_buff = ivas_get_nchan_buffers_dec_fx( st_ivas, -1, -1 );
+ nchan_out_buff = ivas_get_nchan_buffers_dec_fx( st_ivas, -1, -1 );
- IF( NE_32( ( error = ivas_output_buff_dec_fx( st_ivas->p_output_fx, nchan_out_buff_old, nchan_out_buff ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
-#ifndef NONBE_1200_ISM_JBM_BRATE_SW_FLUSH
+ IF( NE_32( ( error = ivas_output_buff_dec_fx( st_ivas->p_output_fx, nchan_out_buff_old, nchan_out_buff ) ), IVAS_ERR_OK ) )
+ {
+ return error;
}
-#endif
/*-----------------------------------------------------------------*
* JBM TC buffers
*-----------------------------------------------------------------*/
-#ifndef NONBE_1200_ISM_JBM_BRATE_SW_FLUSH
- {
-#endif
- Word16 tc_nchan_full_new;
- DECODER_TC_BUFFER_HANDLE hTcBuffer;
+ Word16 tc_nchan_full_new;
+ DECODER_TC_BUFFER_HANDLE hTcBuffer;
- hTcBuffer = st_ivas->hTcBuffer;
- tc_buffer_mode_new = ivas_jbm_dec_get_tc_buffer_mode( st_ivas );
- tc_nchan_tc_new = ivas_jbm_dec_get_num_tc_channels_fx( st_ivas );
- tc_nchan_allocate_new = tc_nchan_tc_new;
- move16();
- tc_nchan_full_new = tc_nchan_tc_new;
- move16();
+ hTcBuffer = st_ivas->hTcBuffer;
+ tc_buffer_mode_new = ivas_jbm_dec_get_tc_buffer_mode_fx( st_ivas );
+ tc_nchan_tc_new = ivas_jbm_dec_get_num_tc_channels_fx( st_ivas );
+ tc_nchan_allocate_new = tc_nchan_tc_new;
+ move16();
+ tc_nchan_full_new = tc_nchan_tc_new;
+ move16();
- test();
- test();
- test();
- test();
- if ( EQ_32( st_ivas->ism_mode, ISM_MODE_PARAM ) && ( NE_32( st_ivas->renderer_type, RENDERER_MONO_DOWNMIX ) && NE_32( st_ivas->renderer_type, RENDERER_DISABLE ) && NE_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) && NE_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) ) )
- {
- tc_nchan_full_new = 0;
- move16();
- }
+ test();
+ test();
+ test();
+ test();
+ if ( EQ_32( st_ivas->ism_mode, ISM_MODE_PARAM ) && ( NE_32( st_ivas->renderer_type, RENDERER_MONO_DOWNMIX ) && NE_32( st_ivas->renderer_type, RENDERER_DISABLE ) && NE_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) && NE_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) ) )
+ {
+ tc_nchan_full_new = 0;
+ move16();
+ }
- /* reconfigure buffer */
- test();
- test();
- test();
- IF( NE_32( hTcBuffer->tc_buffer_mode, tc_buffer_mode_new ) || NE_16( hTcBuffer->nchan_transport_jbm, tc_nchan_tc_new ) ||
- NE_16( hTcBuffer->nchan_buffer_full, tc_nchan_full_new ) || NE_16( hTcBuffer->nchan_transport_internal, tc_nchan_allocate_new ) )
+ /* reconfigure buffer */
+ test();
+ test();
+ test();
+ IF( NE_32( hTcBuffer->tc_buffer_mode, tc_buffer_mode_new ) || NE_16( hTcBuffer->nchan_transport_jbm, tc_nchan_tc_new ) ||
+ NE_16( hTcBuffer->nchan_buffer_full, tc_nchan_full_new ) || NE_16( hTcBuffer->nchan_transport_internal, tc_nchan_allocate_new ) )
+ {
+ IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_reconfigure_fx( st_ivas, tc_buffer_mode_new, tc_nchan_tc_new, tc_nchan_allocate_new, tc_nchan_full_new, tc_granularity_new ) ), IVAS_ERR_OK ) )
{
- IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_reconfigure_fx( st_ivas, tc_buffer_mode_new, tc_nchan_tc_new, tc_nchan_allocate_new, tc_nchan_full_new, tc_granularity_new ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
+ return error;
}
+ }
- /* transfer subframe info from central tc buffer to ParamMC or McMASA (DirAC) */
- IF( st_ivas->hSpatParamRendCom != NULL )
- {
- st_ivas->hSpatParamRendCom->nb_subframes = st_ivas->hTcBuffer->nb_subframes;
- move16();
- st_ivas->hSpatParamRendCom->subframes_rendered = st_ivas->hTcBuffer->subframes_rendered;
- move16();
- st_ivas->hSpatParamRendCom->num_slots = st_ivas->hTcBuffer->num_slots;
- move16();
- st_ivas->hSpatParamRendCom->slots_rendered = st_ivas->hTcBuffer->slots_rendered;
- move16();
+ /* transfer subframe info from central tc buffer to ParamMC or McMASA (DirAC) */
+ IF( st_ivas->hSpatParamRendCom != NULL )
+ {
+ st_ivas->hSpatParamRendCom->nb_subframes = st_ivas->hTcBuffer->nb_subframes;
+ move16();
+ st_ivas->hSpatParamRendCom->subframes_rendered = st_ivas->hTcBuffer->subframes_rendered;
+ move16();
+ st_ivas->hSpatParamRendCom->num_slots = st_ivas->hTcBuffer->num_slots;
+ move16();
+ st_ivas->hSpatParamRendCom->slots_rendered = st_ivas->hTcBuffer->slots_rendered;
+ move16();
- Copy( st_ivas->hTcBuffer->subframe_nbslots, st_ivas->hSpatParamRendCom->subframe_nbslots, MAX_JBM_SUBFRAMES_5MS );
- }
-#ifndef NONBE_1200_ISM_JBM_BRATE_SW_FLUSH
+ Copy( st_ivas->hTcBuffer->subframe_nbslots, st_ivas->hSpatParamRendCom->subframe_nbslots, MAX_JBM_SUBFRAMES_5MS );
}
-#endif
-#ifdef FIX_HRTF_LOAD
return IVAS_ERR_OK;
-#else
- return error;
-#endif
}
@@ -440,21 +385,12 @@ static ivas_error ivas_ism_bitrate_switching_dec_fx(
ivas_error ivas_ism_dec_config_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
const ISM_MODE last_ism_mode /* i/o: last ISM mode */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord16 *nSamplesRendered, /* o : number of samples flushed when the renderer granularity changes */
- Word16 *data /* o : output synthesis signal Q0*/
-#endif
)
{
Word32 ivas_total_brate;
ivas_error error;
Word16 nchan_transport_old;
-#ifndef FIX_HRTF_LOAD
- error = IVAS_ERR_OK;
- move32();
-#endif
ivas_total_brate = st_ivas->hDecoderConfig->ivas_total_brate;
move32();
/* Assumes that num of input objects are constant */
@@ -495,12 +431,7 @@ ivas_error ivas_ism_dec_config_fx(
test();
IF( ( NE_16( st_ivas->ism_mode, last_ism_mode ) ) || ( NE_32( ivas_total_brate, st_ivas->hDecoderConfig->last_ivas_total_brate ) ) )
{
-#ifdef FIX_HRTF_LOAD
IF( NE_16( ( error = ivas_ism_bitrate_switching_dec_fx( st_ivas, nchan_transport_old, last_ism_mode ) ), IVAS_ERR_OK ) )
-
-#else
- IF( NE_16( ( error = ivas_ism_bitrate_switching_dec_fx( st_ivas, nchan_transport_old, last_ism_mode, nSamplesRendered, data ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -525,11 +456,7 @@ ivas_error ivas_ism_dec_config_fx(
/* ISM mode switching */
IF( NE_32( st_ivas->ism_mode, last_ism_mode ) )
{
-#ifdef FIX_HRTF_LOAD
IF( NE_16( ( error = ivas_ism_bitrate_switching_dec_fx( st_ivas, nchan_transport_old, last_ism_mode ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_16( ( error = ivas_ism_bitrate_switching_dec_fx( st_ivas, nchan_transport_old, last_ism_mode, nSamplesRendered, data ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -560,9 +487,5 @@ ivas_error ivas_ism_dec_config_fx(
BREAK;
}
-#ifdef FIX_HRTF_LOAD
return IVAS_ERR_OK;
-#else
- return error;
-#endif
}
diff --git a/lib_dec/ivas_ism_dtx_dec_fx.c b/lib_dec/ivas_ism_dtx_dec_fx.c
index d5943a90cf19cc9744f181178dca2ae722ff154e..19d99a0bb1fe277e13efc6485f7230bb235ffcba 100644
--- a/lib_dec/ivas_ism_dtx_dec_fx.c
+++ b/lib_dec/ivas_ism_dtx_dec_fx.c
@@ -163,11 +163,13 @@ void ivas_ism_dtx_limit_noise_energy_for_near_silence_fx(
Word32 fac_fx, cng_noise_nrg_obj_fx, cng_noise_nrg_dominant_fx;
Word16 ch, cng_noise_level_len, Q_cng_noise_nrg_dominant, exp;
HANDLE_FD_CNG_COM hFdCngCom;
+
hFdCngCom = hSCE[sce_id_dtx]->hCoreCoder[0]->hFdCngDec->hFdCngCom;
cng_noise_level_len = sub( hFdCngCom->stopFFTbin, hFdCngCom->startBand );
- Q_cng_noise_nrg_dominant = add( Q_cngNoiseLevel[sce_id_dtx], Q_cngNoiseLevel[sce_id_dtx] ); /*stores Q for cng_noise_nrg_dominant_fx*/
- cng_noise_nrg_dominant_fx = dotp_fixed_o( hFdCngCom->cngNoiseLevel, hFdCngCom->cngNoiseLevel, cng_noise_level_len, 9 /*log2(len(hFdCngCom->cngNoiseLevel))*/, &Q_cng_noise_nrg_dominant ); /*Resultant Q_cng_noise_nrg_dominant= (Q_cng_noise_nrg_dominant-x)<=31*/
- IF( LT_32( cng_noise_nrg_dominant_fx, L_shl_sat( 1, Q_cng_noise_nrg_dominant ) ) ) /*cng_noise_nrg_dominant<1.f*/
+ Q_cng_noise_nrg_dominant = add( Q_cngNoiseLevel[sce_id_dtx], Q_cngNoiseLevel[sce_id_dtx] ); /*stores Q for cng_noise_nrg_dominant_fx*/
+ cng_noise_nrg_dominant_fx = dotp_fx32_o( hFdCngCom->cngNoiseLevel, hFdCngCom->cngNoiseLevel, cng_noise_level_len, 9 /*log2(len(hFdCngCom->cngNoiseLevel))*/, &Q_cng_noise_nrg_dominant ); /*Resultant Q_cng_noise_nrg_dominant= (Q_cng_noise_nrg_dominant-x)<=31*/
+
+ IF( LT_32( cng_noise_nrg_dominant_fx, L_shl_sat( 1, Q_cng_noise_nrg_dominant ) ) ) /*cng_noise_nrg_dominant<1.f*/
{
FOR( ch = 0; ch < nchan_transport; ch++ )
{
@@ -177,8 +179,8 @@ void ivas_ism_dtx_limit_noise_energy_for_near_silence_fx(
}
hFdCngCom = hSCE[ch]->hCoreCoder[0]->hFdCngDec->hFdCngCom;
cng_noise_level_len = sub( hFdCngCom->stopFFTbin, hFdCngCom->startBand );
- Word16 Q_cng_noise_nrg_obj = add( Q_cngNoiseLevel[ch], Q_cngNoiseLevel[ch] ); /*Stores Q-factor of cng_noise_nrg_obj*/
- cng_noise_nrg_obj_fx = dotp_fixed_o( hFdCngCom->cngNoiseLevel, hFdCngCom->cngNoiseLevel, cng_noise_level_len, 9, &Q_cng_noise_nrg_obj ); /*Resultant Q_cng_noise_nrg_obj= (Q_cng_noise_nrg_obj-x)<=31*/
+ Word16 Q_cng_noise_nrg_obj = add( Q_cngNoiseLevel[ch], Q_cngNoiseLevel[ch] ); /*Stores Q-factor of cng_noise_nrg_obj*/
+ cng_noise_nrg_obj_fx = dotp_fx32_o( hFdCngCom->cngNoiseLevel, hFdCngCom->cngNoiseLevel, cng_noise_level_len, 9, &Q_cng_noise_nrg_obj ); /*Resultant Q_cng_noise_nrg_obj= (Q_cng_noise_nrg_obj-x)<=31*/
IF( GT_32( cng_noise_nrg_obj_fx, cng_noise_nrg_dominant_fx ) )
{
Word32 temp = 0;
@@ -195,8 +197,8 @@ void ivas_ism_dtx_limit_noise_energy_for_near_silence_fx(
}
exp = sub( 31, Q_temp );
fac_fx = Sqrt32( temp, &exp );
- v_multc_fixed( hFdCngCom->cngNoiseLevel, fac_fx, hFdCngCom->cngNoiseLevel, cng_noise_level_len ); /*Resultant Q of cngNoiseLevel is Q_cngNoiseLevel for ch*/
- scale_sig32( hFdCngCom->cngNoiseLevel, cng_noise_level_len, exp ); /*Restoring Q of hFdCngCom->cngNoiseLevel to Q_cngNoiseLevel */
+ v_multc_fx( hFdCngCom->cngNoiseLevel, fac_fx, hFdCngCom->cngNoiseLevel, cng_noise_level_len ); /*Resultant Q of cngNoiseLevel is Q_cngNoiseLevel for ch*/
+ scale_sig32( hFdCngCom->cngNoiseLevel, cng_noise_level_len, exp ); /*Restoring Q of hFdCngCom->cngNoiseLevel to Q_cngNoiseLevel */
}
}
}
diff --git a/lib_dec/ivas_ism_param_dec_fx.c b/lib_dec/ivas_ism_param_dec_fx.c
index 973d726b0b8a8f54d4236c3cec4d7842d0269f24..4821d5cdd0abd61bfd0516c6c31dc259da162f5d 100644
--- a/lib_dec/ivas_ism_param_dec_fx.c
+++ b/lib_dec/ivas_ism_param_dec_fx.c
@@ -44,6 +44,15 @@
#include "debug.h"
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+/*-----------------------------------------------------------------------*
+ * Local function declarations
+ *-----------------------------------------------------------------------*/
+
+static void ivas_ism_param_dec_tc_gain_adjust_fx( Decoder_Struct *st_ivas, const Word16 nSamples, const Word16 nFadeLength, Word32 *p_data_fx[], Word16 *q_data );
+
+#endif
+
/*-----------------------------------------------------------------------*
* Local function definitions
*-----------------------------------------------------------------------*/
@@ -72,6 +81,7 @@ static void ivas_param_ism_dec_dequant_DOA_fx(
return;
}
+
static void ivas_param_ism_dec_dequant_powrat_fx(
PARAM_ISM_DEC_HANDLE hParamIsmDec /* i/o: decoder ParamISM handle */
)
@@ -167,6 +177,7 @@ static void ivas_ism_get_proto_matrix_fx(
return;
}
+
static void ivas_param_ism_collect_slot_fx(
PARAM_ISM_DEC_HANDLE hParamIsmDec, /* i/o: decoder ParamISM handle */
Word32 *Cldfb_RealBuffer_in_fx, /*Q(31-exp_real)*/
@@ -183,7 +194,6 @@ static void ivas_param_ism_collect_slot_fx(
Word16 exp_tmp;
/* loop over parameter bands to collect transport channel energies */
-
FOR( band_idx = 0; band_idx < hParamIsmDec->hParamIsm->nbands; band_idx++ )
{
brange[0] = hParamIsmDec->hParamIsm->band_grouping[band_idx];
@@ -210,6 +220,7 @@ static void ivas_param_ism_collect_slot_fx(
move16();
}
}
+
return;
}
@@ -391,6 +402,7 @@ static void ivas_param_ism_compute_mixing_matrix_fx(
return;
}
+
static void ivas_param_ism_render_slot_fx(
PARAM_ISM_DEC_HANDLE hParamIsmDec,
SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom,
@@ -435,6 +447,7 @@ static void ivas_param_ism_render_slot_fx(
}
}
}
+
FOR( bin_idx = 0; bin_idx < hSpatParamRendCom->num_freq_bands; bin_idx++ )
{
/* smooth the mixing matrix */
@@ -519,11 +532,11 @@ static ivas_error ivas_param_ism_rendering_init_fx(
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for proto matrix\n" ) );
}
-
IF( ( hParamIsmRendering->interpolator_fx = (Word16 *) malloc( subframe_nbslots * sizeof( Word16 ) ) ) == NULL )
{
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for interpolator\n" ) );
}
+
test();
test();
test();
@@ -539,6 +552,7 @@ static ivas_error ivas_param_ism_rendering_init_fx(
return IVAS_ERR_OK;
}
+
static void ivas_param_ism_update_mixing_matrix_fx(
PARAM_ISM_DEC_HANDLE hParamIsmDec,
Word32 mixing_matrix_fx[CLDFB_NO_CHANNELS_MAX][PARAM_ISM_MAX_CHAN * PARAM_ISM_MAX_DMX], /*Q(31-mixing_matrix_exp)*/
@@ -580,11 +594,16 @@ static void ivas_param_ism_update_mixing_matrix_fx(
*
* Open Param ISM handle
*-------------------------------------------------------------------------*/
+
ivas_error ivas_param_ism_dec_open_fx(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
)
{
+#ifdef NONBE_1303_REND_GRANULARITY
+ Word16 i, granularity;
+#else
Word16 i;
+#endif
PARAM_ISM_DEC_HANDLE hParamIsmDec;
IVAS_OUTPUT_SETUP hOutSetup;
SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom;
@@ -625,6 +644,7 @@ ivas_error ivas_param_ism_dec_open_fx(
move32();
output_config = st_ivas->hDecoderConfig->output_config;
move32();
+
ivas_param_ism_config_fx( hParamIsmDec->hParamIsm, st_ivas->nchan_ism ); // assuming Q14 for gains;
/*-----------------------------------------------------------------*
@@ -747,6 +767,9 @@ ivas_error ivas_param_ism_dec_open_fx(
st_ivas->hParamIsmDec = hParamIsmDec;
st_ivas->hSpatParamRendCom = hSpatParamRendCom;
+#ifdef NONBE_1303_REND_GRANULARITY
+ granularity = ivas_jbm_dec_get_render_granularity_fx( st_ivas->renderer_type, RENDERER_DISABLE, output_Fs );
+#endif
test();
IF( NE_32( st_ivas->renderer_type, RENDERER_MONO_DOWNMIX ) && NE_32( st_ivas->renderer_type, RENDERER_DISABLE ) )
@@ -793,8 +816,11 @@ ivas_error ivas_param_ism_dec_open_fx(
IF( st_ivas->hTcBuffer == NULL )
{
+#ifdef NONBE_1303_REND_GRANULARITY
+ IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, TC_BUFFER_MODE_RENDERER, nchan_transport, nchan_transport, nchan_full, granularity ) ), IVAS_ERR_OK ) )
+#else
IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, TC_BUFFER_MODE_RENDERER, nchan_transport, nchan_transport, nchan_full, NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, CLDFB_SLOT_NS ) ) ), IVAS_ERR_OK ) )
-
+#endif
{
return error;
}
@@ -807,8 +833,12 @@ ivas_error ivas_param_ism_dec_open_fx(
IF( st_ivas->hTcBuffer == NULL )
{
Word16 nchan_to_allocate = st_ivas->hDecoderConfig->nchan_out;
+#ifdef NONBE_1303_REND_GRANULARITY
+ IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, TC_BUFFER_MODE_BUFFER, nchan_to_allocate, nchan_to_allocate, nchan_to_allocate, granularity ) ), IVAS_ERR_OK ) )
+#else
move16(); // NS2SA
IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, TC_BUFFER_MODE_BUFFER, nchan_to_allocate, nchan_to_allocate, nchan_to_allocate, NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, CLDFB_SLOT_NS ) ) ), IVAS_ERR_OK ) )
+#endif
{
return error;
}
@@ -819,6 +849,7 @@ ivas_error ivas_param_ism_dec_open_fx(
return error;
}
+
/*-------------------------------------------------------------------------*
* ivas_param_ism_dec_close()
*
@@ -903,6 +934,7 @@ void ivas_param_ism_dec_close_fx(
*
*
*-------------------------------------------------------------------------*/
+
void ivas_ism_dec_digest_tc_fx(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
)
@@ -979,34 +1011,26 @@ void ivas_ism_dec_digest_tc_fx(
IF( EQ_32( st_ivas->intern_config, IVAS_AUDIO_CONFIG_STEREO ) )
{
-#ifdef OBJ_EDITING_API
- Word16 gains_fx[2];
- ivas_ism_get_stereo_gains_fx( (Word16) L_shr( st_ivas->hIsmMetaData[i]->azimuth_fx, 22 ), (Word16) L_shr( st_ivas->hIsmMetaData[i]->elevation_fx, 22 ), &gains_fx[0], &gains_fx[1] );
- st_ivas->hIsmRendererData->gains_fx[i][0] = L_shr( L_deposit_h( gains_fx[0] ), 1 ); // Q31 -> Q30
- move32();
- st_ivas->hIsmRendererData->gains_fx[i][1] = L_shr( L_deposit_h( gains_fx[1] ), 1 ); // Q31 -> Q30
- move32();
- // TODO: Enable gain editing feature
- // v_multc_fixed( st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hIsmMetaData[i]->edited_gain_fx, st_ivas->hIsmRendererData->gains_fx[i], CPE_CHANNELS ); // Q30, Q30 --> Q30
-#else
- Word16 gains_fx[2];
+ Word16 gains_fx[CPE_CHANNELS];
+
ivas_ism_get_stereo_gains_fx( (Word16) L_shr( st_ivas->hIsmMetaData[i]->azimuth_fx, 22 ), (Word16) L_shr( st_ivas->hIsmMetaData[i]->elevation_fx, 22 ), &gains_fx[0], &gains_fx[1] );
+
st_ivas->hIsmRendererData->gains_fx[i][0] = L_shr( L_deposit_h( gains_fx[0] ), 1 ); // Q31 -> Q30
move32();
st_ivas->hIsmRendererData->gains_fx[i][1] = L_shr( L_deposit_h( gains_fx[1] ), 1 ); // Q31 -> Q30
move32();
-#endif
+ // TODO: Align Q values
+ IF( NE_32( st_ivas->hIsmMetaData[i]->edited_gain_fx, ONE_IN_Q29 ) )
+ {
+ v_multc_fx( st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hIsmMetaData[i]->edited_gain_fx, st_ivas->hIsmRendererData->gains_fx[i], CPE_CHANNELS ); // Q30, Q29 --> Q28
+ Scale_sig32( st_ivas->hIsmRendererData->gains_fx[i], CPE_CHANNELS, Q2 ); // Q28 --> Q30
+ }
}
ELSE
{
// TODO tmu review when #215 is resolved
-#ifdef OBJ_EDITING_API
azimuth_fx = L_shr( L_add( st_ivas->hIsmMetaData[i]->edited_azimuth_fx, 2097152 ), Q22 ); // Q0 ,2097152 = .5f in Q22
elevation_fx = L_shr( L_add( st_ivas->hIsmMetaData[i]->edited_elevation_fx, 2097152 ), Q22 ); // Q0 ,2097152 = .5f in Q22
-#else
- azimuth_fx = L_shr( L_add( st_ivas->hIsmMetaData[i]->azimuth_fx, 2097152 ), Q22 ); // Q0 ,2097152 = .5f in Q22
- elevation_fx = L_shr( L_add( st_ivas->hIsmMetaData[i]->elevation_fx, 2097152 ), Q22 ); // Q0 ,2097152 = .5f in Q22
-#endif
test();
test();
@@ -1033,11 +1057,14 @@ void ivas_ism_dec_digest_tc_fx(
{
azimuth_fx = L_shl( azimuth_fx, Q22 ); // Q22
elevation_fx = L_shl( elevation_fx, Q22 ); // Q22
+
efap_determine_gains_fx( st_ivas->hEFAPdata, st_ivas->hIsmRendererData->gains_fx[i], azimuth_fx, elevation_fx, EFAP_MODE_EFAP );
-#ifdef OBJ_EDITING_API
- // TODO: Enable gain editing feature
- // v_multc_fixed( st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hIsmMetaData[i]->edited_gain_fx, st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hEFAPdata->numSpk );
-#endif
+ // TODO: align Q values properly
+ IF( NE_32( st_ivas->hIsmMetaData[i]->edited_gain_fx, ONE_IN_Q29 ) )
+ {
+ v_multc_fx( st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hIsmMetaData[i]->edited_gain_fx, st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hEFAPdata->numSpk ); // Q30, Q29 --> Q28
+ Scale_sig32( st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hEFAPdata->numSpk, Q2 ); // Q28 --> Q30
+ }
}
}
ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_SBA_LINEAR_ENC ) ||
@@ -1047,11 +1074,15 @@ void ivas_ism_dec_digest_tc_fx(
/*get HOA gets for direction (ACN/SN3D)*/
Word16 azi = shr( extract_h( st_ivas->hIsmMetaData[i]->azimuth_fx ), 22 - 16 ); // Q0
Word16 ele = shr( extract_h( st_ivas->hIsmMetaData[i]->elevation_fx ), 22 - 16 ); // Q0
+
ivas_dirac_dec_get_response_fx( azi, ele, st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hIntSetup.ambisonics_order, Q30 );
-#ifdef OBJ_EDITING_API
- // TODO: Enable gain editing feature
- // v_multc_fixed( st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hIsmMetaData[i]->edited_gain_fx, st_ivas->hIsmRendererData->gains_fx[i], ivas_sba_get_nchan_fx( st_ivas->hIntSetup.ambisonics_order, 0 ) ); // Q30, Q30 --> Q30
-#endif
+
+ // TODO: Align Q-values
+ IF( NE_32( st_ivas->hIsmMetaData[i]->edited_gain_fx, ONE_IN_Q29 ) )
+ {
+ v_multc_fx( st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hIsmMetaData[i]->edited_gain_fx, st_ivas->hIsmRendererData->gains_fx[i], ivas_sba_get_nchan_fx( st_ivas->hIntSetup.ambisonics_order, 0 ) ); // Q30, Q29 --> Q28
+ Scale_sig32( st_ivas->hIsmRendererData->gains_fx[i], ivas_sba_get_nchan_fx( st_ivas->hIntSetup.ambisonics_order, 0 ), Q2 ); // Q28 --> 30
+ }
}
}
}
@@ -1060,176 +1091,87 @@ void ivas_ism_dec_digest_tc_fx(
return;
}
+
/*-------------------------------------------------------------------------*
* ivas_param_ism_dec_digest_tc()
*
*
*-------------------------------------------------------------------------*/
+
void ivas_param_ism_dec_digest_tc_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord16 nCldfbSlots, /* i : number of CLFBS slots in the transport channels */
- Word32 *transport_channels[], /* i : synthesized core-coder transport channels/DirAC output q_tc_in*/
- Word16 q_tc_in )
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord16 nCldfbSlots, /* i : number of CLDFB slots in transport channels */
+ Word32 *p_data_fx[], /* i/o: synthesized core-coder transport channels/DirAC output q_data_in */
+ const Word16 q_data_in /* i : Q-factor of input signal for single channel */
+)
{
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+ Word16 i, ch, slot_idx, output_frame;
+ Word16 num_freq_bands, cldfb_ch, n_ch_cldfb;
+ Word32 *cldfb_real_buffer, *cldfb_imag_buffer;
+ Word16 q_data = q_data_in;
move16();
+#else
move16();
move16();
move16();
-#ifndef OBJ_EDITING_API
- Word32 cx_diag_fx[CLDFB_NO_CHANNELS_MAX][PARAM_ISM_MAX_DMX];
- Word16 exp_cx_diag[CLDFB_NO_CHANNELS_MAX][PARAM_ISM_MAX_DMX];
- Word16 exp_real_tmp = 0, exp_imag_tmp = 0;
-#endif
- Word16 q_tc = q_tc_in;
+ Word16 q_tc = q_data_in;
move16();
-#ifndef OBJ_EDITING_API
- Word16 ch, nchan_transport, nchan_out, nchan_out_woLFE, i;
- Word16 slot_idx, bin_idx;
- Word32 ivas_total_brate;
-#else
Word16 ch, nchan_transport, i;
Word16 slot_idx;
-#endif
Word16 output_frame;
-#ifndef OBJ_EDITING_API
- /* Direct Response/EFAP Gains */
- Word32 direct_response_fx[MAX_NUM_OBJECTS][PARAM_ISM_MAX_CHAN];
-#endif
PARAM_ISM_DEC_HANDLE hParamIsmDec;
SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom;
Word16 fade_len;
-
- /* Initialization */
-#ifndef OBJ_EDITING_API
- set32_fx( &direct_response_fx[0][0], 0, MAX_NUM_OBJECTS * PARAM_ISM_MAX_CHAN );
#endif
- hParamIsmDec = st_ivas->hParamIsmDec;
- assert( hParamIsmDec );
- hSpatParamRendCom = st_ivas->hSpatParamRendCom;
- assert( hSpatParamRendCom );
- output_frame = imult1616( nCldfbSlots, hSpatParamRendCom->num_freq_bands );
- fade_len = shr( output_frame, 1 );
-
- nchan_transport = st_ivas->nchan_transport;
- move16();
-#ifndef OBJ_EDITING_API
- ivas_total_brate = st_ivas->hDecoderConfig->ivas_total_brate;
- move32();
- hParamIsmDec->hParamIsmRendering->Cldfb_ImagBuffer_tc_exp = 25;
- move16();
- hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_exp = 25;
+ /* Initialization */
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+ num_freq_bands = st_ivas->hSpatParamRendCom->num_freq_bands;
move16();
- IF( EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
- {
- nchan_out = st_ivas->nchan_ism;
- move16();
- nchan_out_woLFE = nchan_out;
- move16();
- st_ivas->hDecoderConfig->nchan_out = nchan_out;
- move16();
- }
- ELSE
- {
- nchan_out = add( st_ivas->hIntSetup.nchan_out_woLFE, st_ivas->hIntSetup.num_lfe );
- nchan_out_woLFE = st_ivas->hIntSetup.nchan_out_woLFE;
- move16();
- }
-#endif
-
- push_wmops( "ivas_param_ism_dec" );
+ output_frame = imult1616( nCldfbSlots, st_ivas->hSpatParamRendCom->num_freq_bands );
+ n_ch_cldfb = sub( st_ivas->hTcBuffer->nchan_transport_jbm, st_ivas->hTcBuffer->nchan_buffer_full );
-#ifndef OBJ_EDITING_API
- /* general setup */
- ivas_jbm_dec_get_adapted_linear_interpolator_fx( DEFAULT_JBM_CLDFB_TIMESLOTS, nCldfbSlots, hParamIsmDec->hParamIsmRendering->interpolator_fx );
+ cldfb_real_buffer = st_ivas->hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_fx;
+ cldfb_imag_buffer = st_ivas->hParamIsmDec->hParamIsmRendering->Cldfb_ImagBuffer_tc_fx;
- ivas_dirac_dec_set_md_map_fx( st_ivas, nCldfbSlots );
- /* set buffers to zero */
+ ivas_ism_param_dec_tc_gain_adjust_fx( st_ivas, output_frame, shr( output_frame, 1 ), p_data_fx, &q_data );
- set_zero_fx( &cx_diag_fx[0][0], CLDFB_NO_CHANNELS_MAX * PARAM_ISM_MAX_DMX );
- set16_zero_fx( &exp_cx_diag[0][0], CLDFB_NO_CHANNELS_MAX * PARAM_ISM_MAX_DMX );
-
- /* Frame-level Processing */
- /* De-quantization */
- test();
- IF( !( EQ_32( ivas_total_brate, IVAS_SID_5k2 ) || EQ_32( ivas_total_brate, FRAME_NO_DATA ) ) )
+ IF( !st_ivas->hDecoderConfig->Opt_tsm )
{
- ivas_param_ism_dec_dequant_DOA_fx( hParamIsmDec, st_ivas->nchan_ism );
- ivas_param_ism_dec_dequant_powrat_fx( hParamIsmDec );
- st_ivas->hISMDTX.dtx_flag = 0;
- move16();
+ Scale_sig32( p_data_fx[0], output_frame, sub( Q11, q_data ) ); /*keepeing p_data_fx at Q11*/
+ Scale_sig32( p_data_fx[1], output_frame, sub( Q11, q_data ) ); /*keepeing p_data_fx at Q11*/
}
ELSE
{
- st_ivas->hISMDTX.dtx_flag = 1;
- move16();
- }
-
- /* obtain the direct response using EFAP */
- IF( !( EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) ) )
- {
- FOR( i = 0; i < st_ivas->nchan_ism; i++ )
- {
- efap_determine_gains_fx( st_ivas->hEFAPdata, direct_response_fx[i], hParamIsmDec->azimuth_values_fx[i], hParamIsmDec->elevation_values_fx[i], EFAP_MODE_EFAP );
- }
- }
- ELSE
- {
- Word16 j;
-
- FOR( i = 0; i < st_ivas->nchan_ism; i++ )
+ IF( NE_16( q_data, q_data_in ) )
{
- FOR( j = 0; j < nchan_out_woLFE; j++ )
- {
- IF( EQ_16( i, j ) )
- {
- direct_response_fx[i][j] = ONE_IN_Q30;
- move32();
- }
- ELSE
- {
- direct_response_fx[i][j] = 0;
- move32();
- }
- }
- }
-
- FOR( j = 0; j < nchan_out_woLFE; j++ )
- {
- IF( hParamIsmDec->azimuth_values_fx[j] > 0 )
- {
- hParamIsmDec->hParamIsmRendering->proto_matrix_fx[j] = 32767; // (1.0f in Q15) - 1
- move16();
- hParamIsmDec->hParamIsmRendering->proto_matrix_fx[nchan_out_woLFE + j] = 0;
- move16();
- }
- ELSE
+ FOR( i = 0; i < MAX_PARAM_ISM_WAVE; i++ )
{
- IF( hParamIsmDec->azimuth_values_fx[j] < 0 )
- {
- hParamIsmDec->hParamIsmRendering->proto_matrix_fx[j] = 0;
- move16();
- hParamIsmDec->hParamIsmRendering->proto_matrix_fx[nchan_out_woLFE + j] = 32767; // (1.0f in Q15) - 1
- move16();
- }
- ELSE /* == 0.0f */
- {
- hParamIsmDec->hParamIsmRendering->proto_matrix_fx[j] = ONE_IN_Q14; // Q15
- move16();
- hParamIsmDec->hParamIsmRendering->proto_matrix_fx[nchan_out_woLFE + j] = ONE_IN_Q14; // Q15
- move16();
- }
+ scale_sig32( p_data_fx[i], output_frame, sub( q_data_in, q_data ) ); // q_data_in
}
+ q_data = q_data_in;
+ move16();
}
}
-#endif
+#else
+ hParamIsmDec = st_ivas->hParamIsmDec;
+ assert( hParamIsmDec );
+ hSpatParamRendCom = st_ivas->hSpatParamRendCom;
+ assert( hSpatParamRendCom );
+ output_frame = imult1616( nCldfbSlots, hSpatParamRendCom->num_freq_bands );
+ fade_len = shr( output_frame, 1 );
+
+ nchan_transport = st_ivas->nchan_transport;
+ move16();
IF( st_ivas->hDecoderConfig->Opt_tsm )
{
/*TODO : FhG to check*/
ivas_ism_param_dec_tc_gain_ajust_fx( st_ivas, output_frame, fade_len, transport_channels, &q_tc );
+
IF( NE_16( q_tc, q_tc_in ) )
{
FOR( i = 0; i < 2; i++ )
@@ -1240,7 +1182,29 @@ void ivas_param_ism_dec_digest_tc_fx(
move16();
}
}
+#endif
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+ /* CLDFB Analysis */
+ FOR( ( ch = 0, cldfb_ch = 0 ); cldfb_ch < n_ch_cldfb; ( cldfb_ch++, ch++ ) )
+ {
+ FOR( slot_idx = 0; slot_idx < nCldfbSlots; slot_idx++ )
+ {
+ q_data = q_data_in;
+ move16();
+
+ cldfbAnalysis_ts_fx_fixed_q( &( p_data_fx[ch][num_freq_bands * slot_idx] ),
+ &cldfb_real_buffer[slot_idx * num_freq_bands * n_ch_cldfb + cldfb_ch * num_freq_bands],
+ &cldfb_imag_buffer[slot_idx * num_freq_bands * n_ch_cldfb + cldfb_ch * num_freq_bands],
+ num_freq_bands, st_ivas->cldfbAnaDec[cldfb_ch], &q_data );
+
+ st_ivas->hParamIsmDec->hParamIsmRendering->Cldfb_ImagBuffer_tc_exp = sub( 31, q_data );
+ move16();
+ st_ivas->hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_exp = sub( 31, q_data );
+ move16();
+ }
+ }
+#else
FOR( ch = 0; ch < nchan_transport; ch++ )
{
/* CLDFB Analysis */
@@ -1260,60 +1224,16 @@ void ivas_param_ism_dec_digest_tc_fx(
hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_exp = sub( 31, q_tc );
move16();
}
-
-#ifndef OBJ_EDITING_API
- Word16 scale_factor_real, scale_factor_imag;
- Word16 current_idx;
- exp_real_tmp = hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_exp;
- move16();
- exp_imag_tmp = hParamIsmDec->hParamIsmRendering->Cldfb_ImagBuffer_tc_exp;
- move16();
- current_idx = add( imult1616( imult1616( slot_idx, hSpatParamRendCom->num_freq_bands ), nchan_transport ), imult1616( ch, hSpatParamRendCom->num_freq_bands ) );
- scale_factor_real = getScaleFactor32( &hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_fx[current_idx], hSpatParamRendCom->num_freq_bands );
- scale_factor_imag = getScaleFactor32( &hParamIsmDec->hParamIsmRendering->Cldfb_ImagBuffer_tc_fx[current_idx], hSpatParamRendCom->num_freq_bands );
- scale_sig32( &hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_fx[current_idx], hSpatParamRendCom->num_freq_bands, scale_factor_real ); // Q(31-(exp_real_tmp-scale_factor_real))
- scale_sig32( &hParamIsmDec->hParamIsmRendering->Cldfb_ImagBuffer_tc_fx[current_idx], hSpatParamRendCom->num_freq_bands, scale_factor_imag ); // Q(31-(exp_imag_tmp-scale_factor_imag))
- exp_real_tmp = sub( exp_real_tmp, scale_factor_real );
- exp_imag_tmp = sub( exp_imag_tmp, scale_factor_imag );
- ivas_param_ism_collect_slot_fx( hParamIsmDec,
- &hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_fx[current_idx],
- exp_real_tmp,
- &hParamIsmDec->hParamIsmRendering->Cldfb_ImagBuffer_tc_fx[current_idx],
- exp_imag_tmp,
- ch,
- cx_diag_fx, exp_cx_diag );
-
- exp_real_tmp = add( exp_real_tmp, scale_factor_real );
- exp_imag_tmp = add( exp_imag_tmp, scale_factor_imag );
- scale_sig32( &hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_fx[current_idx], hSpatParamRendCom->num_freq_bands, -scale_factor_real ); // Q(31-(exp_real_tmp))
- scale_sig32( &hParamIsmDec->hParamIsmRendering->Cldfb_ImagBuffer_tc_fx[current_idx], hSpatParamRendCom->num_freq_bands, -scale_factor_imag ); // Q(31-(exp_imag_tmp))
-#endif
}
}
-
-#ifndef OBJ_EDITING_API
- /* Obtain Mixing Matrix on a frame-level */
- FOR( bin_idx = 0; bin_idx < CLDFB_NO_CHANNELS_MAX; bin_idx++ )
- {
- set32_fx( hParamIsmDec->hParamIsmRendering->mixing_matrix_lin_fx[bin_idx], 0, PARAM_ISM_MAX_CHAN * PARAM_ISM_MAX_DMX );
- }
-
- /* Compute mixing matrix */
- ivas_param_ism_compute_mixing_matrix_fx( st_ivas->nchan_ism, hParamIsmDec, st_ivas->hISMDTX, direct_response_fx, nchan_transport, nchan_out_woLFE, cx_diag_fx, exp_cx_diag,
- hParamIsmDec->hParamIsmRendering->mixing_matrix_lin_fx, hParamIsmDec->hParamIsmRendering->exp_mixing_matrix_lin_fx );
-
#endif
- pop_wmops();
return;
}
-#ifdef OBJ_EDITING_API
-
-
/*-------------------------------------------------------------------------*
- * ivas_param_ism_dec_prepare_renderer_fx()
+ * ivas_param_ism_dec_dequant_md()
*
*
*-------------------------------------------------------------------------*/
@@ -1322,10 +1242,13 @@ void ivas_param_ism_dec_dequant_md_fx(
Decoder_Struct *st_ivas )
{
/* De-quantization */
+ test();
IF( !( EQ_32( st_ivas->hDecoderConfig->ivas_total_brate, IVAS_SID_5k2 ) || EQ_32( st_ivas->hDecoderConfig->ivas_total_brate, FRAME_NO_DATA ) ) )
{
ivas_param_ism_dec_dequant_DOA_fx( st_ivas->hParamIsmDec, st_ivas->nchan_ism );
+
ivas_param_ism_dec_dequant_powrat_fx( st_ivas->hParamIsmDec );
+
st_ivas->hISMDTX.dtx_flag = 0;
move16();
}
@@ -1338,6 +1261,7 @@ void ivas_param_ism_dec_dequant_md_fx(
return;
}
+
/*-------------------------------------------------------------------------*
* ivas_param_ism_dec_prepare_renderer_fx()
*
@@ -1345,12 +1269,12 @@ void ivas_param_ism_dec_dequant_md_fx(
*-------------------------------------------------------------------------*/
void ivas_param_ism_dec_prepare_renderer_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const Word16 nCldfbSlots /* i : number of CLFBS slots in the transport channels */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const Word16 nCldfbSlots /* i : number of CLDFB slots in transport channels */
)
{
- int16_t ch, nchan_transport, nchan_out, nchan_out_woLFE, i;
- int16_t slot_idx, bin_idx;
+ Word16 ch, nchan_transport, nchan_out, nchan_out_woLFE, i;
+ Word16 slot_idx, bin_idx;
Word32 cx_diag_fx[CLDFB_NO_CHANNELS_MAX][PARAM_ISM_MAX_DMX];
Word16 exp_cx_diag[CLDFB_NO_CHANNELS_MAX][PARAM_ISM_MAX_DMX];
Word16 exp_real_tmp = 0, exp_imag_tmp = 0;
@@ -1372,10 +1296,9 @@ void ivas_param_ism_dec_prepare_renderer_fx(
ivas_total_brate = st_ivas->hDecoderConfig->ivas_total_brate;
/* Initialization */
-
- hParamIsmDec->hParamIsmRendering->Cldfb_ImagBuffer_tc_exp = 25;
+ hParamIsmDec->hParamIsmRendering->Cldfb_ImagBuffer_tc_exp = Q25;
move16();
- hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_exp = 25;
+ hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_exp = Q25;
move16();
IF( EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
{
@@ -1392,7 +1315,6 @@ void ivas_param_ism_dec_prepare_renderer_fx(
nchan_out_woLFE = st_ivas->hIntSetup.nchan_out_woLFE;
move16();
}
- push_wmops( "ivas_param_ism_dec_digest_tc" );
/* general setup */
ivas_jbm_dec_get_adapted_linear_interpolator_fx( DEFAULT_JBM_CLDFB_TIMESLOTS, nCldfbSlots, hParamIsmDec->hParamIsmRendering->interpolator_fx );
@@ -1520,34 +1442,32 @@ void ivas_param_ism_dec_prepare_renderer_fx(
ivas_param_ism_compute_mixing_matrix_fx( st_ivas->nchan_ism, hParamIsmDec, st_ivas->hISMDTX, direct_response_fx, nchan_transport, nchan_out_woLFE, cx_diag_fx, exp_cx_diag,
hParamIsmDec->hParamIsmRendering->mixing_matrix_lin_fx, hParamIsmDec->hParamIsmRendering->exp_mixing_matrix_lin_fx );
-
- pop_wmops();
-
return;
}
-#endif
+
/*-------------------------------------------------------------------------*
- * ivas_ism_param_dec_tc_gain_ajust()
+ * ivas_ism_param_dec_tc_gain_adjust()
*
*
*-------------------------------------------------------------------------*/
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+static void ivas_ism_param_dec_tc_gain_adjust_fx(
+#else
void ivas_ism_param_dec_tc_gain_ajust_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord16 nSamples, /* i : number of samples to be compensate */
- const UWord16 nFadeLength, /* i : length of the crossfade in samples */
- Word32 *transport_channels_f[], /* i : synthesized core-coder transport channels/DirAC output Q_tc*/
- Word16 *Q_tc /* i/o : Q of input tc buffer */
+#endif
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const Word16 nSamples, /* i : number of samples to be compensate */
+ const Word16 nFadeLength, /* i : length of the crossfade in samples */
+ Word32 *p_data_fx[], /* i : synthesized core-coder transport channels/DirAC output q_data */
+ Word16 *q_data /* i/o : Q of input data buffer */
)
-
{
Word16 i, tmp_e1, tmp_e2, tmp, tmp2, invFade;
Word32 L_tmp1, L_tmp2;
-
Word16 gain_fx, last_gain_fx;
Word32 ene_tc_fx, ene_sum_fx;
-
Word16 ene_tc_e, ene_sum_e;
ene_tc_fx = 0;
@@ -1559,7 +1479,6 @@ void ivas_ism_param_dec_tc_gain_ajust_fx(
ene_sum_e = 0;
move16();
-
last_gain_fx = st_ivas->hParamIsmDec->hParamIsm->last_dmx_gain_fx;
move16();
@@ -1576,14 +1495,13 @@ void ivas_ism_param_dec_tc_gain_ajust_fx(
move16();
ch1_e = 0;
move16();
- ch0 = transport_channels_f[0][i];
+ ch0 = p_data_fx[0][i];
move16();
- ch1 = transport_channels_f[1][i];
+ ch1 = p_data_fx[1][i];
move16();
ch0 = BASOP_Util_Add_Mant32Exp( ch0, ch0_e, 0, 0, &ch0_e );
ch1 = BASOP_Util_Add_Mant32Exp( ch1, ch1_e, 0, 0, &ch1_e );
-
L_tmp1 = Mpy_32_32( ch0, ch0 ); /*L*L*/
tmp_e1 = add( ch0_e, ch0_e );
L_tmp2 = Mpy_32_32( ch1, ch1 ); /*R*R*/
@@ -1592,7 +1510,6 @@ void ivas_ism_param_dec_tc_gain_ajust_fx(
ene_tc_fx = BASOP_Util_Add_Mant32Exp( ene_tc_fx, ene_tc_e, L_tmp1, tmp_e1, &ene_tc_e );
ene_tc_fx = BASOP_Util_Add_Mant32Exp( ene_tc_fx, ene_tc_e, L_tmp2, tmp_e2, &ene_tc_e );
-
L_tmp1 = BASOP_Util_Add_Mant32Exp( ch0, ch0_e, ch1, ch1_e, &tmp_e1 ); /*L + R*/
L_tmp1 = Mpy_32_32( L_tmp1, L_tmp1 ); // Q(31-(tmp_e1+tmp_e1 /*(L + R)*(L + R)*/
tmp_e1 = add( tmp_e1, tmp_e1 );
@@ -1642,6 +1559,7 @@ void ivas_ism_param_dec_tc_gain_ajust_fx(
{
/* Smoothing */
gain_fx = add( mult_r( 24574, gain_fx ), mult_r( 8192, last_gain_fx ) ); // 24574 =.75f in Q15 , 8192=.25f in Q15
+
/* 10ms ramp */
/* slope between two consecutive gains, 480 samples length */
invFade = div_s( 1, nFadeLength ); // Q15
@@ -1652,18 +1570,18 @@ void ivas_ism_param_dec_tc_gain_ajust_fx(
/* tmp2 = ( last_gain_fx + i * grad_fx )*/
tmp2 = add( mult_r( sub( 32767, tmp ), last_gain_fx ), mult_r( tmp, gain_fx ) ); // 32767= 1.0f in Q15,
- transport_channels_f[0][i] = Mpy_32_16_1( transport_channels_f[0][i], tmp2 ); // Q(Q_tc-tmp_e1)
+ p_data_fx[0][i] = Mpy_32_16_1( p_data_fx[0][i], tmp2 ); // Q(Q_tc-tmp_e1)
move32();
- transport_channels_f[1][i] = Mpy_32_16_1( transport_channels_f[1][i], tmp2 ); // Q(Q_tc-tmp_e1)
+ p_data_fx[1][i] = Mpy_32_16_1( p_data_fx[1][i], tmp2 ); // Q(Q_tc-tmp_e1)
move32();
tmp = add( tmp, invFade );
}
FOR( ; i < nSamples; i++ )
{
- transport_channels_f[0][i] = Mpy_32_16_1( transport_channels_f[0][i], gain_fx ); // Q(Q_tc-tmp_e1)
+ p_data_fx[0][i] = Mpy_32_16_1( p_data_fx[0][i], gain_fx ); // Q(Q_tc-tmp_e1)
move32();
- transport_channels_f[1][i] = Mpy_32_16_1( transport_channels_f[1][i], gain_fx ); // Q(Q_tc-tmp_e1)
+ p_data_fx[1][i] = Mpy_32_16_1( p_data_fx[1][i], gain_fx ); // Q(Q_tc-tmp_e1)
move32();
}
}
@@ -1671,9 +1589,9 @@ void ivas_ism_param_dec_tc_gain_ajust_fx(
{
FOR( i = 0; i < nSamples; i++ )
{
- transport_channels_f[0][i] = Mpy_32_16_1( transport_channels_f[0][i], gain_fx ); // Q(Q_tc-tmp_e1)
+ p_data_fx[0][i] = Mpy_32_16_1( p_data_fx[0][i], gain_fx ); // Q(Q_tc-tmp_e1)
move32();
- transport_channels_f[1][i] = Mpy_32_16_1( transport_channels_f[1][i], gain_fx ); // Q(Q_tc-tmp_e1)
+ p_data_fx[1][i] = Mpy_32_16_1( p_data_fx[1][i], gain_fx ); // Q(Q_tc-tmp_e1)
move32();
}
}
@@ -1683,26 +1601,29 @@ void ivas_ism_param_dec_tc_gain_ajust_fx(
st_ivas->hParamIsmDec->hParamIsm->last_dmx_gain_e = tmp_e1;
move16();
- *Q_tc = sub( *Q_tc, tmp_e1 );
+ *q_data = sub( *q_data, tmp_e1 );
move16();
+
return;
}
+
/*-------------------------------------------------------------------------*
* ivas_ism_param_dec_render_sf()
*
*
*-------------------------------------------------------------------------*/
+
static void ivas_ism_param_dec_render_sf_fx(
Decoder_Struct *st_ivas,
IVAS_OUTPUT_SETUP hSetup,
const Word16 nchan_transport,
const Word16 nchan_out,
const Word16 nchan_out_woLFE,
- Word32 *output_f_fx[], /*Q_output*/
+ Word32 *output_fx[], /*Q_output*/
Word16 Q_output[] )
{
- Word16 ch, slot_idx, i, index_slot;
+ Word16 ch, slot_idx, i, index_slot, cldfb_idx;
/* CLDFB Output Buffers */
Word32 Cldfb_RealBuffer_fx[PARAM_ISM_MAX_CHAN][JBM_CLDFB_SLOTS_IN_SUBFRAME][CLDFB_NO_CHANNELS_MAX]; // Q(31-real_exp)
Word32 Cldfb_ImagBuffer_fx[PARAM_ISM_MAX_CHAN][JBM_CLDFB_SLOTS_IN_SUBFRAME][CLDFB_NO_CHANNELS_MAX]; // Q(31-imag_exp)
@@ -1715,12 +1636,14 @@ static void ivas_ism_param_dec_render_sf_fx(
Word16 idx_lfe;
Word16 subframe_idx;
Word16 samplesProcessed, no_col_cldfb, size_cldfb;
+
hParamIsmDec = st_ivas->hParamIsmDec;
hSpatParamRendCom = st_ivas->hSpatParamRendCom;
slot_idx_start = hSpatParamRendCom->slots_rendered;
move16();
subframe_idx = hSpatParamRendCom->subframes_rendered;
move16();
+
/* Set some memories to zero */
FOR( ch = 0; ch < nchan_out_woLFE; ch++ )
{
@@ -1731,17 +1654,15 @@ static void ivas_ism_param_dec_render_sf_fx(
}
}
-
Word16 real_exp[JBM_CLDFB_SLOTS_IN_SUBFRAME];
Word16 imag_exp[JBM_CLDFB_SLOTS_IN_SUBFRAME];
FOR( slot_idx = 0; slot_idx < hSpatParamRendCom->subframe_nbslots[subframe_idx]; slot_idx++ )
{
index_slot = add( slot_idx_start, slot_idx );
-
FOR( ch = 0; ch < nchan_transport; ch++ )
{
- Word16 cldfb_idx = add( imult1616( imult1616( index_slot, hSpatParamRendCom->num_freq_bands ), nchan_transport ), imult1616( ch, hSpatParamRendCom->num_freq_bands ) );
+ cldfb_idx = add( imult1616( imult1616( index_slot, hSpatParamRendCom->num_freq_bands ), nchan_transport ), imult1616( ch, hSpatParamRendCom->num_freq_bands ) );
Cldfb_RealBuffer_in_fx[ch] = &hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_fx[cldfb_idx]; // Q11
Cldfb_ImagBuffer_in_fx[ch] = &hParamIsmDec->hParamIsmRendering->Cldfb_ImagBuffer_tc_fx[cldfb_idx]; // Q11
}
@@ -1769,7 +1690,7 @@ static void ivas_ism_param_dec_render_sf_fx(
test();
IF( ( hSetup.num_lfe > 0 ) && EQ_16( hSetup.index_lfe[idx_lfe], ch ) )
{
- set32_fx( output_f_fx[ch], 0, i_mult( hSpatParamRendCom->subframe_nbslots[subframe_idx], hSpatParamRendCom->num_freq_bands ) );
+ set32_fx( output_fx[ch], 0, i_mult( hSpatParamRendCom->subframe_nbslots[subframe_idx], hSpatParamRendCom->num_freq_bands ) );
if ( LT_16( idx_lfe, sub( hSetup.num_lfe, 1 ) ) )
{
@@ -1778,7 +1699,6 @@ static void ivas_ism_param_dec_render_sf_fx(
}
ELSE
{
-
Word32 *RealBuffer_fx[16];
Word32 *ImagBuffer_fx[16];
@@ -1804,7 +1724,7 @@ static void ivas_ism_param_dec_render_sf_fx(
Scale_sig32( st_ivas->cldfbSynDec[ch]->cldfb_state_fx, st_ivas->cldfbSynDec[ch]->p_filter_length, sub( sub( Q_real, 1 ), Q11 ) ); // Q_real-1
st_ivas->cldfbSynDec[ch]->Q_cldfb_state = sub( Q_real, 1 );
move16();
- cldfbSynthesis_ivas_fx( RealBuffer_fx, ImagBuffer_fx, output_f_fx[ch], i_mult( hSpatParamRendCom->num_freq_bands, hSpatParamRendCom->subframe_nbslots[subframe_idx] ), 0, 0, st_ivas->cldfbSynDec[ch] );
+ cldfbSynthesis_ivas_fx( RealBuffer_fx, ImagBuffer_fx, output_fx[ch], i_mult( hSpatParamRendCom->num_freq_bands, hSpatParamRendCom->subframe_nbslots[subframe_idx] ), 0, 0, st_ivas->cldfbSynDec[ch] );
Scale_sig32( st_ivas->cldfbSynDec[ch]->cldfb_state_fx, st_ivas->cldfbSynDec[ch]->p_filter_length, sub( Q11, sub( Q_real, 1 ) ) ); // Q11
st_ivas->cldfbSynDec[ch]->Q_cldfb_state = Q11;
move16();
@@ -1821,7 +1741,7 @@ static void ivas_ism_param_dec_render_sf_fx(
}
size_cldfb = imult1616( st_ivas->cldfbSynDec[ch]->no_channels, no_col_cldfb );
- Scale_sig32( output_f_fx[ch], size_cldfb, sub( Q11, sub( Q_real, 1 ) ) ); // Q11
+ Scale_sig32( output_fx[ch], size_cldfb, sub( Q11, sub( Q_real, 1 ) ) ); // Q11
Q_output[ch] = 11;
move16();
@@ -1843,22 +1763,22 @@ static void ivas_ism_param_dec_render_sf_fx(
*
*
*-------------------------------------------------------------------------*/
+
void ivas_param_ism_dec_render_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
- UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
- UWord16 *nSamplesAvailableNext, /* o : number of CLDFB slots still to render */
- Word32 *output_f_fx[] /*Q11*/
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
+ UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
+ UWord16 *nSamplesAvailableNext, /* o : number of CLDFB slots still to render */
+ Word32 *output_fx[] /* i/o: synthesized core-coder TCs / rendered signal Q11*/
)
{
-
Word16 ch, slots_to_render, first_sf, last_sf, subframe_idx;
UWord16 slot_size, n_samples_sf;
PARAM_ISM_DEC_HANDLE hParamIsmDec;
SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom;
IVAS_OUTPUT_SETUP hSetup;
Word16 nchan_transport, nchan_out, nchan_out_woLFE;
- Word32 *output_f_local_fx[MAX_OUTPUT_CHANNELS];
+ Word32 *output_fx_local[MAX_OUTPUT_CHANNELS];
Word16 Q_output[MAX_OUTPUT_CHANNELS];
set16_fx( Q_output, 0, MAX_OUTPUT_CHANNELS );
@@ -1907,17 +1827,17 @@ void ivas_param_ism_dec_render_fx(
FOR( ch = 0; ch < nchan_out; ch++ )
{
- output_f_local_fx[ch] = &output_f_fx[ch][0];
+ output_fx_local[ch] = &output_fx[ch][0];
}
FOR( subframe_idx = first_sf; subframe_idx < last_sf; subframe_idx++ )
{
- ivas_ism_param_dec_render_sf_fx( st_ivas, hSetup, nchan_transport, nchan_out, nchan_out_woLFE, output_f_local_fx, Q_output );
+ ivas_ism_param_dec_render_sf_fx( st_ivas, hSetup, nchan_transport, nchan_out, nchan_out_woLFE, output_fx_local, Q_output );
n_samples_sf = i_mult( hSpatParamRendCom->subframe_nbslots[subframe_idx], hSpatParamRendCom->slot_size );
FOR( ch = 0; ch < nchan_out; ch++ )
{
- output_f_local_fx[ch] += n_samples_sf;
+ output_fx_local[ch] += n_samples_sf;
}
}
@@ -1930,7 +1850,6 @@ void ivas_param_ism_dec_render_fx(
/* store MetaData parameters */
FOR( ch = 0; ch < st_ivas->nchan_ism; ch++ )
{
-#ifdef OBJ_EDITING_API
IF( GT_32( st_ivas->hParamIsmDec->azimuth_values_fx[ch], 754974720 ) /*180.f in Q22*/ )
{
st_ivas->hIsmMetaData[ch]->azimuth_fx = L_sub( st_ivas->hParamIsmDec->edited_azimuth_values_fx[ch], 1509949440 ) /*360.0F in Q22*/;
@@ -1943,18 +1862,6 @@ void ivas_param_ism_dec_render_fx(
}
st_ivas->hIsmMetaData[ch]->elevation_fx = st_ivas->hParamIsmDec->edited_elevation_values_fx[ch];
move32();
-#else
- IF( GT_32( st_ivas->hParamIsmDec->azimuth_values_fx[ch], 754974720 ) /*180.f in Q22*/ )
- {
- st_ivas->hIsmMetaData[ch]->azimuth_fx = L_sub( st_ivas->hParamIsmDec->azimuth_values_fx[ch], 1509949440 ) /*360.0F in Q22*/;
- move32();
- }
- ELSE
- {
- st_ivas->hIsmMetaData[ch]->azimuth_fx = st_ivas->hParamIsmDec->azimuth_values_fx[ch];
- move32();
- }
-#endif
st_ivas->hIsmMetaData[ch]->elevation_fx = st_ivas->hParamIsmDec->elevation_values_fx[ch];
move32();
@@ -1963,6 +1870,7 @@ void ivas_param_ism_dec_render_fx(
*nSamplesAvailableNext = imult1616( sub( hSpatParamRendCom->num_slots, hSpatParamRendCom->slots_rendered ), (Word16) slot_size );
move16();
+
return;
}
@@ -1972,6 +1880,7 @@ void ivas_param_ism_dec_render_fx(
*
*
*-------------------------------------------------------------------------*/
+
void ivas_param_ism_params_to_masa_param_mapping_fx(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
)
@@ -1984,166 +1893,142 @@ void ivas_param_ism_params_to_masa_param_mapping_fx(
Word16 azimuth[2];
Word16 elevation[2];
Word16 power_ratio_fx[2]; /* Q15 */
-#ifndef OBJ_EDITING_API
- Word32 ivas_total_brate;
-#endif
-
+ MASA_ISM_DATA_HANDLE hMasaIsmData;
+ Word16 obj;
+ Word16 obj_idx;
hParamIsmDec = st_ivas->hParamIsmDec;
+ move16();
hSpatParamRendCom = st_ivas->hSpatParamRendCom;
+ move16();
+ hMasaIsmData = st_ivas->hMasaIsmData;
nBins = hSpatParamRendCom->num_freq_bands;
move16();
-#ifndef OBJ_EDITING_API
- ivas_total_brate = st_ivas->hDecoderConfig->ivas_total_brate;
- move32();
- test();
- IF( !( EQ_32( ivas_total_brate, IVAS_SID_5k2 ) || ivas_total_brate == FRAME_NO_DATA ) )
+ IF( st_ivas->hISMDTX.dtx_flag )
{
- ivas_param_ism_dec_dequant_DOA_fx( hParamIsmDec, st_ivas->nchan_ism );
- ivas_param_ism_dec_dequant_powrat_fx( hParamIsmDec );
- st_ivas->hISMDTX.dtx_flag = 0;
+ Word32 energy_ratio_fx; /* Q30 */
+ energy_ratio_fx = L_mult0( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->coherence_fx, st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->coherence_fx ); /* Q15 + Q15 -> Q30 */
+
+ hSpatParamRendCom->numSimultaneousDirections = 1;
+ move16();
+ azimuth[0] = extract_l( L_shr( L_add( hParamIsmDec->azimuth_values_fx[0], ONE_IN_Q21 ), 22 ) ); // Q0
move16();
+ elevation[0] = extract_l( L_shr( L_add( hParamIsmDec->elevation_values_fx[0], ONE_IN_Q21 ), 22 ) ); // Q0
+ move16();
+
+ FOR( sf_idx = 0; sf_idx < MAX_PARAM_SPATIAL_SUBFRAMES; sf_idx++ )
+ {
+ FOR( bin_idx = 0; bin_idx < nBins; bin_idx++ )
+ {
+ hSpatParamRendCom->azimuth[sf_idx][bin_idx] = azimuth[0];
+ move16();
+ hSpatParamRendCom->elevation[sf_idx][bin_idx] = elevation[0];
+ move16();
+ hSpatParamRendCom->energy_ratio1_fx[sf_idx][bin_idx] = energy_ratio_fx;
+ move16();
+ hSpatParamRendCom->spreadCoherence_fx[sf_idx][bin_idx] = 0;
+ move16();
+ hSpatParamRendCom->surroundingCoherence_fx[sf_idx][bin_idx] = 0;
+ move16();
+ }
+ }
}
ELSE
{
- st_ivas->hISMDTX.dtx_flag = 1;
+ hSpatParamRendCom->numSimultaneousDirections = 2;
move16();
- }
-#endif
-
- IF( GT_16( st_ivas->nchan_ism, 1 ) )
- {
- IF( st_ivas->hISMDTX.dtx_flag )
+ FOR( band_idx = 0; band_idx < hParamIsmDec->hParamIsm->nbands; band_idx++ )
{
- Word32 energy_ratio_fx; /* Q30 */
- energy_ratio_fx = L_mult0( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->coherence_fx, st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->coherence_fx ); /* Q15 + Q15 -> Q30 */
+ brange[0] = hParamIsmDec->hParamIsm->band_grouping[band_idx];
+ move16();
+ brange[1] = hParamIsmDec->hParamIsm->band_grouping[band_idx + 1];
+ move16();
- hSpatParamRendCom->numSimultaneousDirections = 1;
+ azimuth[0] = extract_l( L_shr( L_add( hParamIsmDec->edited_azimuth_values_fx[hParamIsmDec->hParamIsm->obj_indices[band_idx][0][0]], ( 1 << 21 ) ), 22 ) ); // Q0
move16();
- azimuth[0] = extract_l( L_shr( L_add( hParamIsmDec->azimuth_values_fx[0], ONE_IN_Q21 ), 22 ) ); // Q0
+ elevation[0] = extract_l( L_shr( L_add( hParamIsmDec->edited_elevation_values_fx[hParamIsmDec->hParamIsm->obj_indices[band_idx][0][0]], ( 1 << 21 ) ), 22 ) ); // Q0
move16();
- elevation[0] = extract_l( L_shr( L_add( hParamIsmDec->elevation_values_fx[0], ONE_IN_Q21 ), 22 ) ); // Q0
+ power_ratio_fx[0] = hParamIsmDec->power_ratios_fx[band_idx][0][0];
+ move16();
+
+ azimuth[1] = extract_l( L_shr( L_add( hParamIsmDec->edited_azimuth_values_fx[hParamIsmDec->hParamIsm->obj_indices[band_idx][0][1]], ( 1 << 21 ) ), 22 ) ); // Q0
+ move16();
+ elevation[1] = extract_l( L_shr( L_add( hParamIsmDec->edited_elevation_values_fx[hParamIsmDec->hParamIsm->obj_indices[band_idx][0][1]], ( 1 << 21 ) ), 22 ) ); // Q0
+ move16();
+ power_ratio_fx[1] = hParamIsmDec->power_ratios_fx[band_idx][0][1];
move16();
FOR( sf_idx = 0; sf_idx < MAX_PARAM_SPATIAL_SUBFRAMES; sf_idx++ )
{
- FOR( bin_idx = 0; bin_idx < nBins; bin_idx++ )
+ FOR( bin_idx = brange[0]; bin_idx < brange[1]; bin_idx++ )
{
hSpatParamRendCom->azimuth[sf_idx][bin_idx] = azimuth[0];
move16();
hSpatParamRendCom->elevation[sf_idx][bin_idx] = elevation[0];
move16();
- hSpatParamRendCom->energy_ratio1_fx[sf_idx][bin_idx] = energy_ratio_fx;
- move16();
- hSpatParamRendCom->spreadCoherence_fx[sf_idx][bin_idx] = 0;
+ hSpatParamRendCom->energy_ratio1_fx[sf_idx][bin_idx] = L_shl( power_ratio_fx[0], Q15 ); // Q30
+ move32();
+ hSpatParamRendCom->azimuth2[sf_idx][bin_idx] = azimuth[1];
move16();
- hSpatParamRendCom->surroundingCoherence_fx[sf_idx][bin_idx] = 0;
+ hSpatParamRendCom->elevation2[sf_idx][bin_idx] = elevation[1];
move16();
+ hSpatParamRendCom->energy_ratio2_fx[sf_idx][bin_idx] = L_shl( power_ratio_fx[1], Q15 ); // Q30
+ move32();
}
}
}
- ELSE
+
+ FOR( sf_idx = 0; sf_idx < MAX_PARAM_SPATIAL_SUBFRAMES; sf_idx++ )
{
- hSpatParamRendCom->numSimultaneousDirections = 2;
- move16();
- FOR( band_idx = 0; band_idx < hParamIsmDec->hParamIsm->nbands; band_idx++ )
+ FOR( bin_idx = 0; bin_idx < nBins; bin_idx++ )
{
- brange[0] = hParamIsmDec->hParamIsm->band_grouping[band_idx];
- move16();
-#ifdef OBJ_EDITING_API
- brange[1] = hParamIsmDec->hParamIsm->band_grouping[band_idx + 1];
- move16();
-
- azimuth[0] = extract_l( L_shr( L_add( hParamIsmDec->edited_azimuth_values_fx[hParamIsmDec->hParamIsm->obj_indices[band_idx][0][0]], ( 1 << 21 ) ), 22 ) ); // Q0
- move16();
- elevation[0] = extract_l( L_shr( L_add( hParamIsmDec->edited_elevation_values_fx[hParamIsmDec->hParamIsm->obj_indices[band_idx][0][0]], ( 1 << 21 ) ), 22 ) ); // Q0
- move16();
-#else
- brange[1] = hParamIsmDec->hParamIsm->band_grouping[band_idx + 1];
- move16();
-
- azimuth[0] = extract_l( L_shr( L_add( hParamIsmDec->azimuth_values_fx[hParamIsmDec->hParamIsm->obj_indices[band_idx][0][0]], ( 1 << 21 ) ), 22 ) ); // Q0
- move16();
- elevation[0] = extract_l( L_shr( L_add( hParamIsmDec->elevation_values_fx[hParamIsmDec->hParamIsm->obj_indices[band_idx][0][0]], ( 1 << 21 ) ), 22 ) ); // Q0
- move16();
-#endif
- power_ratio_fx[0] = hParamIsmDec->power_ratios_fx[band_idx][0][0];
- move16();
-
-#ifdef OBJ_EDITING_API
- azimuth[1] = extract_l( L_shr( L_add( hParamIsmDec->edited_azimuth_values_fx[hParamIsmDec->hParamIsm->obj_indices[band_idx][0][1]], ( 1 << 21 ) ), 22 ) ); // Q0
- move16();
- elevation[1] = extract_l( L_shr( L_add( hParamIsmDec->edited_elevation_values_fx[hParamIsmDec->hParamIsm->obj_indices[band_idx][0][1]], ( 1 << 21 ) ), 22 ) ); // Q0
- move16();
-#else
- azimuth[1] = extract_l( L_shr( L_add( hParamIsmDec->azimuth_values_fx[hParamIsmDec->hParamIsm->obj_indices[band_idx][0][1]], ( 1 << 21 ) ), 22 ) ); // Q0
+ hSpatParamRendCom->spreadCoherence_fx[sf_idx][bin_idx] = 0;
move16();
- elevation[1] = extract_l( L_shr( L_add( hParamIsmDec->elevation_values_fx[hParamIsmDec->hParamIsm->obj_indices[band_idx][0][1]], ( 1 << 21 ) ), 22 ) ); // Q0
+ hSpatParamRendCom->spreadCoherence2_fx[sf_idx][bin_idx] = 0;
move16();
-#endif
- power_ratio_fx[1] = hParamIsmDec->power_ratios_fx[band_idx][0][1];
+ hSpatParamRendCom->surroundingCoherence_fx[sf_idx][bin_idx] = 0;
move16();
+ }
+ }
- FOR( sf_idx = 0; sf_idx < MAX_PARAM_SPATIAL_SUBFRAMES; sf_idx++ )
- {
- FOR( bin_idx = brange[0]; bin_idx < brange[1]; bin_idx++ )
- {
- hSpatParamRendCom->azimuth[sf_idx][bin_idx] = azimuth[0];
- move16();
- hSpatParamRendCom->elevation[sf_idx][bin_idx] = elevation[0];
- move16();
- hSpatParamRendCom->energy_ratio1_fx[sf_idx][bin_idx] = L_shl( power_ratio_fx[0], Q15 ); // Q30
- move32();
- hSpatParamRendCom->azimuth2[sf_idx][bin_idx] = azimuth[1];
- move16();
- hSpatParamRendCom->elevation2[sf_idx][bin_idx] = elevation[1];
- move16();
- hSpatParamRendCom->energy_ratio2_fx[sf_idx][bin_idx] = L_shl( power_ratio_fx[1], Q15 ); // Q30
- move32();
- }
- }
+ FOR( obj = 0; obj < st_ivas->nchan_ism; obj++ )
+ {
+ FOR( sf_idx = 0; sf_idx < MAX_PARAM_SPATIAL_SUBFRAMES; sf_idx++ )
+ {
+ hMasaIsmData->azimuth_ism_fx[obj][sf_idx] = extract_l( L_shr( ( L_add( hParamIsmDec->azimuth_values_fx[obj], ( 1 << 21 ) ) ), 22 ) ); // Q0
+ hMasaIsmData->elevation_ism_fx[obj][sf_idx] = extract_l( L_shr_r( L_add( hParamIsmDec->elevation_values_fx[obj], ( 1 << 21 ) ), 22 ) ); // Scale to Q0
}
+ hMasaIsmData->azimuth_ism_edited_fx[obj] = extract_l( L_shr( ( L_add( hParamIsmDec->edited_azimuth_values_fx[obj], ( 1 << 21 ) ) ), 22 ) );
+ hMasaIsmData->elevation_ism_edited_fx[obj] = extract_l( L_shr( ( L_add( hParamIsmDec->edited_azimuth_values_fx[obj], ( 1 << 21 ) ) ), 22 ) );
+
FOR( sf_idx = 0; sf_idx < MAX_PARAM_SPATIAL_SUBFRAMES; sf_idx++ )
{
- FOR( bin_idx = 0; bin_idx < nBins; bin_idx++ )
- {
- hSpatParamRendCom->spreadCoherence_fx[sf_idx][bin_idx] = 0;
- move16();
- hSpatParamRendCom->spreadCoherence2_fx[sf_idx][bin_idx] = 0;
- move16();
- hSpatParamRendCom->surroundingCoherence_fx[sf_idx][bin_idx] = 0;
- move16();
- }
+ set_zero_fx( hMasaIsmData->energy_ratio_ism_fx[obj][sf_idx], CLDFB_NO_CHANNELS_MAX );
}
}
- }
- ELSE
- {
- hSpatParamRendCom->numSimultaneousDirections = 1;
- move16();
- azimuth[0] = extract_l( L_shr( ( L_add( hParamIsmDec->azimuth_values_fx[0], ( 1 << 21 ) ) ), 22 ) ); // Q0
- move16();
- elevation[0] = extract_l( L_shr( L_add( hParamIsmDec->elevation_values_fx[0], ( 1 << 21 ) ), 22 ) ); // Q0
- move16();
- FOR( sf_idx = 0; sf_idx < MAX_PARAM_SPATIAL_SUBFRAMES; sf_idx++ )
+ FOR( obj = 0; obj < MAX_PARAM_ISM_WAVE; obj++ )
{
- FOR( bin_idx = 0; bin_idx < nBins; bin_idx++ )
+ FOR( band_idx = 0; band_idx < hParamIsmDec->hParamIsm->nbands; band_idx++ )
{
- hSpatParamRendCom->azimuth[sf_idx][bin_idx] = azimuth[0];
- move16();
- hSpatParamRendCom->elevation[sf_idx][bin_idx] = elevation[0];
- move16();
- hSpatParamRendCom->energy_ratio1_fx[sf_idx][bin_idx] = ONE_IN_Q30; /* 1.0f in Q30 */
- move32();
- hSpatParamRendCom->spreadCoherence_fx[sf_idx][bin_idx] = 0;
- move16();
- hSpatParamRendCom->surroundingCoherence_fx[sf_idx][bin_idx] = 0;
- move16();
+ brange[0] = hParamIsmDec->hParamIsm->band_grouping[band_idx];
+ brange[1] = hParamIsmDec->hParamIsm->band_grouping[band_idx + 1];
+
+ obj_idx = hParamIsmDec->hParamIsm->obj_indices[band_idx][0][obj];
+ power_ratio_fx[obj] = hParamIsmDec->power_ratios_fx[band_idx][0][obj]; // Q15
+
+ FOR( sf_idx = 0; sf_idx < MAX_PARAM_SPATIAL_SUBFRAMES; sf_idx++ )
+ {
+ FOR( bin_idx = brange[0]; bin_idx < brange[1]; bin_idx++ )
+ {
+ hMasaIsmData->energy_ratio_ism_fx[obj_idx][sf_idx][bin_idx] = L_shl( power_ratio_fx[obj], 15 ); // Q15 -> Q30
+ }
+ }
}
}
}
+
return;
}
diff --git a/lib_dec/ivas_ism_renderer_fx.c b/lib_dec/ivas_ism_renderer_fx.c
index 36234bf4713f711712cbb3f3b63a4b3a0c6b42b3..64c7f7b087a2d06e39e43acc017b9a7dd7d1d238 100644
--- a/lib_dec/ivas_ism_renderer_fx.c
+++ b/lib_dec/ivas_ism_renderer_fx.c
@@ -72,7 +72,7 @@ ivas_error ivas_ism_renderer_open_fx(
test();
test();
IF( st_ivas->hIntSetup.is_loudspeaker_setup &&
- st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO &&
+ NE_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_STEREO ) &&
st_ivas->hIntSetup.ls_azimuth_fx != NULL && st_ivas->hIntSetup.ls_elevation_fx != NULL &&
st_ivas->hEFAPdata == NULL )
{
@@ -128,6 +128,7 @@ ivas_error ivas_ism_renderer_open_fx(
*
* Close struct for object rendering.
*-------------------------------------------------------------------------*/
+
void ivas_ism_renderer_close(
ISM_RENDERER_HANDLE *hIsmRendererData /* i/o: ISM renderer handle */
)
@@ -156,6 +157,7 @@ void ivas_ism_renderer_close(
*
* Object rendering process
*-------------------------------------------------------------------------*/
+
void ivas_ism_render_sf_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
const RENDERER_TYPE renderer_type, /* i : active renderer type */
@@ -237,10 +239,9 @@ void ivas_ism_render_sf_fx(
set32_fx( output_fx[i], 0, n_samples_to_render );
}
-
FOR( subframe_idx = first_sf; subframe_idx < last_sf; subframe_idx++ )
{
- int16_t n_samples_in_subframe;
+ Word16 n_samples_in_subframe;
n_samples_in_subframe = st_ivas->hTcBuffer->n_samples_granularity * st_ivas->hTcBuffer->subframe_nbslots[subframe_idx];
test();
@@ -259,28 +260,22 @@ void ivas_ism_render_sf_fx(
{
if ( GE_16( subframe_idx, ism_md_subframe_update_jbm ) )
{
-#ifdef OBJ_EDITING_API
rotateAziEle_fx( extract_l( L_shr( st_ivas->hIsmMetaData[i]->edited_azimuth_fx, 22 ) ), extract_l( L_shr( st_ivas->hIsmMetaData[i]->edited_elevation_fx, 22 ) ), &azimuth, &elevation, st_ivas->hCombinedOrientationData->Rmat_fx[st_ivas->hCombinedOrientationData->subframe_idx], st_ivas->hIntSetup.is_planar_setup );
-#else
- rotateAziEle_fx( extract_l( L_shr( st_ivas->hIsmMetaData[i]->azimuth_fx, 22 ) ), extract_l( L_shr( st_ivas->hIsmMetaData[i]->elevation_fx, 22 ) ), &azimuth, &elevation, st_ivas->hCombinedOrientationData->Rmat_fx[st_ivas->hCombinedOrientationData->subframe_idx], st_ivas->hIntSetup.is_planar_setup );
-#endif
}
else
{
-#ifdef OBJ_EDITING_API
rotateAziEle_fx( extract_l( L_shr( st_ivas->hIsmMetaData[i]->edited_azimuth_fx, 22 ) ), extract_l( L_shr( st_ivas->hIsmMetaData[i]->edited_elevation_fx, 22 ) ), &azimuth, &elevation, st_ivas->hCombinedOrientationData->Rmat_fx[st_ivas->hCombinedOrientationData->subframe_idx], st_ivas->hIntSetup.is_planar_setup );
-#else
- rotateAziEle_fx( extract_l( L_shr( st_ivas->hIsmMetaData[i]->last_azimuth_fx, 22 ) ), extract_l( L_shr( st_ivas->hIsmMetaData[i]->last_elevation_fx, 22 ) ), &azimuth, &elevation, st_ivas->hCombinedOrientationData->Rmat_fx[st_ivas->hCombinedOrientationData->subframe_idx], st_ivas->hIntSetup.is_planar_setup );
-#endif
}
IF( st_ivas->hEFAPdata != NULL )
{
efap_determine_gains_fx( st_ivas->hEFAPdata, st_ivas->hIsmRendererData->gains_fx[i], L_shl( azimuth, 22 ), L_shl( elevation, 22 ), EFAP_MODE_EFAP );
-#ifdef OBJ_EDITING_API
- // TODO: Enable gain editing feature
- // v_multc_fixed( st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hIsmMetaData[i]->edited_gain_fx, st_ivas->hIsmRendererData->gains_fx[i], nchan_out_woLFE ); // Q30, Q30 --> Q30
-#endif
+ // TODO: Align Q-values
+ IF( NE_32( st_ivas->hIsmMetaData[i]->edited_gain_fx, ONE_IN_Q29 ) )
+ {
+ v_multc_fx( st_ivas->hIsmRendererData->gains_fx[i], st_ivas->hIsmMetaData[i]->edited_gain_fx, st_ivas->hIsmRendererData->gains_fx[i], nchan_out_woLFE ); // Q30, Q29 --> Q28
+ Scale_sig32( st_ivas->hIsmRendererData->gains_fx[i], nchan_out_woLFE, Q2 ); // Q28 --> Q30
+ }
}
}
@@ -415,6 +410,7 @@ void ivas_ism_get_stereo_gains_fx(
return;
}
+
/*-------------------------------------------------------------------------*
* ivas_omasa_separate_object_renderer_open()
*
@@ -622,17 +618,38 @@ void ivas_omasa_separate_object_render_jbm_fx(
IF( single_separated )
{
- azimuth = st_ivas->hMasaIsmData->azimuth_separated_ism[md_idx];
- move16();
- elevation = st_ivas->hMasaIsmData->elevation_separated_ism[md_idx];
- move16();
+ test();
+ IF( EQ_16( st_ivas->ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) && st_ivas->hMasaIsmData->ism_dir_is_edited[st_ivas->hMasaIsmData->idx_separated_ism] )
+ {
+ azimuth = st_ivas->hMasaIsmData->azimuth_ism_edited_fx[st_ivas->hMasaIsmData->idx_separated_ism];
+ move16();
+ elevation = st_ivas->hMasaIsmData->elevation_ism_edited_fx[st_ivas->hMasaIsmData->idx_separated_ism];
+ move16();
+ }
+ ELSE
+ {
+ azimuth = st_ivas->hMasaIsmData->azimuth_separated_ism_fx[md_idx];
+ move16();
+ elevation = st_ivas->hMasaIsmData->elevation_separated_ism_fx[md_idx];
+ move16();
+ }
}
ELSE
{
- azimuth = st_ivas->hMasaIsmData->azimuth_ism[obj][md_idx];
- move16();
- elevation = st_ivas->hMasaIsmData->elevation_ism[obj][md_idx];
- move16();
+ IF( st_ivas->hMasaIsmData->ism_dir_is_edited[obj] )
+ {
+ azimuth = st_ivas->hMasaIsmData->azimuth_ism_edited_fx[obj];
+ move16();
+ elevation = st_ivas->hMasaIsmData->elevation_ism_edited_fx[obj];
+ move16();
+ }
+ ELSE
+ {
+ azimuth = st_ivas->hMasaIsmData->azimuth_ism_fx[obj][md_idx];
+ move16();
+ elevation = st_ivas->hMasaIsmData->elevation_ism_fx[obj][md_idx];
+ move16();
+ }
}
if ( st_ivas->hOutSetup.is_planar_setup )
diff --git a/lib_dec/ivas_jbm_dec_fx.c b/lib_dec/ivas_jbm_dec_fx.c
index 48580801d892e11c1159ed259a801d403fdf77ab..9ce180ec573c88b5c9f29b6d10784ae22b6ffb64 100644
--- a/lib_dec/ivas_jbm_dec_fx.c
+++ b/lib_dec/ivas_jbm_dec_fx.c
@@ -51,23 +51,26 @@
* Local function prototypes
*-----------------------------------------------------------------------*/
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
static void ivas_jbm_dec_copy_tc( Decoder_Struct *st_ivas, const Word16 nSamplesForRendering, Word16 *nSamplesResidual, Word32 *data, Word32 *tc_digest_f[], Word16 data_q );
-
+#endif
static void ivas_jbm_dec_tc_buffer_playout_fx( Decoder_Struct *st_ivas, const UWord16 nSamplesAsked, UWord16 *nSamplesRendered, Word32 *output_fx[] );
static void ivas_jbm_dec_copy_masa_meta_to_buffer( Decoder_Struct *st_ivas );
static void ivas_jbm_masa_sf_to_slot_map( Decoder_Struct *st_ivas, const Word16 nCldfbTs );
-
-static Word16 ceil_fx16( Word16 inp, Word16 Q );
-static Word16 ceil_fx16( Word16 inp, Word16 Q )
+static Word16 ceil_fx16(
+ const Word16 inp,
+ const Word16 Q )
{
Word16 ret = shr( inp, Q );
+
IF( ( s_and( inp, sub( shl( 1, Q ), 1 ) ) ) > 0 )
{
ret = add( ret, 1 );
}
+
return ret;
}
@@ -78,8 +81,11 @@ static Word16 ceil_fx16( Word16 inp, Word16 Q )
*--------------------------------------------------------------------------*/
ivas_error ivas_jbm_dec_tc_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- Word32 *data_fx /*Q11*/
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+#ifndef LIB_DEC_REVISION
+ ,
+ Word32 *data_fx /*Q11*/
+#endif
)
{
Word16 ch, n, output_frame, nchan_out, i, ii;
@@ -112,6 +118,7 @@ ivas_error ivas_jbm_dec_tc_fx(
output_frame = extract_l( Mult_32_16( output_Fs, INV_FRAME_PER_SEC_Q15 ) ) /* output_Fs / FRAMES_PER_SEC */;
+ /* set pointers to transport channels audio */
FOR( n = 0; n < MAX_TRANSPORT_CHANNELS; n++ )
{
p_output_fx[n] = st_ivas->p_output_fx[n];
@@ -159,11 +166,7 @@ ivas_error ivas_jbm_dec_tc_fx(
/* HP filtering */
FOR( n = 0; n < s_min( nchan_out, st_ivas->nchan_transport ); n++ )
{
-#ifdef HP20_FIX32_RECODING
hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#else
- hp20_fx_32( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#endif
}
}
ELSE IF( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) )
@@ -197,10 +200,10 @@ ivas_error ivas_jbm_dec_tc_fx(
move16();
}
}
+
ivas_ism_dtx_limit_noise_energy_for_near_silence_fx( st_ivas->hSCE, st_ivas->hISMDTX.sce_id_dtx, st_ivas->nchan_transport, Q_cngNoiseLevel );
-#ifdef OBJ_EDITING_API
+
ivas_param_ism_dec_dequant_md_fx( st_ivas );
-#endif
}
ELSE IF( EQ_32( st_ivas->ism_mode, ISM_MODE_PARAM ) )
{
@@ -208,9 +211,8 @@ ivas_error ivas_jbm_dec_tc_fx(
{
return error;
}
-#ifdef OBJ_EDITING_API
+
ivas_param_ism_dec_dequant_md_fx( st_ivas );
-#endif
}
ELSE /* ISM_MODE_DISC */
{
@@ -236,11 +238,7 @@ ivas_error ivas_jbm_dec_tc_fx(
}
/* HP filtering */
-#ifdef HP20_FIX32_RECODING
hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#else
- hp20_fx_32( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#endif
}
test();
@@ -287,12 +285,13 @@ ivas_error ivas_jbm_dec_tc_fx(
{
return error;
}
-
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
test();
IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) && st_ivas->hDecoderConfig->Opt_tsm )
{
ivas_jbm_dec_copy_masa_meta_to_buffer( st_ivas );
}
+#endif
}
ELSE IF( EQ_32( st_ivas->ivas_format, SBA_FORMAT ) )
{
@@ -591,11 +590,7 @@ ivas_error ivas_jbm_dec_tc_fx(
/* HP filtering */
FOR( n = 0; n < nchan_remapped; n++ )
{
-#ifdef HP20_FIX32_RECODING
hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#else
- hp20_fx_32( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#endif
}
IF( EQ_32( st_ivas->ivas_format, SBA_FORMAT ) )
@@ -669,7 +664,7 @@ ivas_error ivas_jbm_dec_tc_fx(
test();
/* external output */
- IF( EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) && EQ_32( st_ivas->hMasa->config.input_ivas_format, MASA_ISM_FORMAT ) )
+ IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) && EQ_32( st_ivas->hMasa->config.input_ivas_format, MASA_ISM_FORMAT ) )
{
FOR( n = 0; n < st_ivas->nchan_ism; n++ )
{
@@ -788,11 +783,7 @@ ivas_error ivas_jbm_dec_tc_fx(
FOR( n = 0; n < getNumChanSynthesis( st_ivas ); n++ )
{
-#ifdef HP20_FIX32_RECODING
hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#else
- hp20_fx_32( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#endif
}
Word16 output_q = 11;
@@ -804,515 +795,555 @@ ivas_error ivas_jbm_dec_tc_fx(
output_q = 8;
move16();
}
- ELSE IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
- {
- IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) )
- {
+ ELSE IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) ){
+ IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) ){
ivas_omasa_rearrange_channels_fx( p_output_fx, nchan_transport_ism, output_frame );
- }
- ELSE IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_MASA_ONE_OBJ ) )
- {
- /* Convert separate object to MASA, combine with the original MASA, and output combined MASA + empty objects. */
- ivas_omasa_combine_separate_ism_with_masa_fx( st_ivas, p_output_fx, &output_q, st_ivas->nchan_ism, output_frame );
- }
- ELSE IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) )
- {
- /* Extract objects from MASA, output MASA + all objects (i.e., extracted and separated objects) */
- ivas_omasa_render_objects_from_mix_fx( st_ivas, p_output_fx, st_ivas->nchan_ism, output_frame, &output_q );
- }
+ }
+ ELSE IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_MASA_ONE_OBJ ) )
+ {
+ /* Convert separate object to MASA, combine with the original MASA, and output combined MASA + empty objects. */
+ ivas_omasa_combine_separate_ism_with_masa_fx( st_ivas, p_output_fx, &output_q, st_ivas->nchan_ism, output_frame );
+ }
+ ELSE IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) )
+ {
+ /* Extract objects from MASA, output MASA + all objects (i.e., extracted and separated objects) */
+ ivas_omasa_render_objects_from_mix_fx( st_ivas, p_output_fx, st_ivas->nchan_ism, output_frame, &output_q );
+ }
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
+ IF( st_ivas->hDecoderConfig->Opt_tsm )
+ {
+ ivas_jbm_dec_copy_masa_meta_to_buffer( st_ivas );
+ }
+#endif
+}
+IF( NE_16( output_q, Q11 ) )
+{
+ FOR( n = 0; n < s_max( getNumChanSynthesis( st_ivas ), nchan_transport_ism + st_ivas->nchan_transport ); n++ )
+ {
+ Scale_sig32( p_output_fx[n], output_frame, sub( Q11, output_q ) ); // Q11
+ }
+}
+}
+ELSE IF( EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) )
+{
+ Word16 nchan_ism, sba_ch_idx;
- IF( st_ivas->hDecoderConfig->Opt_tsm )
- {
- ivas_jbm_dec_copy_masa_meta_to_buffer( st_ivas );
- }
- }
- IF( NE_16( output_q, Q11 ) )
+ set16_fx( nb_bits_metadata, 0, MAX_SCE + 1 );
+ nchan_ism = st_ivas->nchan_ism;
+ move16();
+ IF( EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
+ {
+ /* set ISM parameters and decode ISM metadata in OSBA format */
+ IF( NE_32( ( error = ivas_osba_ism_metadata_dec_fx( st_ivas, ivas_total_brate, &nchan_ism, &nb_bits_metadata[1] ) ), IVAS_ERR_OK ) )
{
- FOR( n = 0; n < s_max( getNumChanSynthesis( st_ivas ), nchan_transport_ism + st_ivas->nchan_transport ); n++ )
- {
- Scale_sig32( p_output_fx[n], output_frame, sub( Q11, output_q ) ); // Q11
- }
+ return error;
}
+ sba_ch_idx = st_ivas->nchan_ism;
+ move16();
}
- ELSE IF( EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) )
+ ELSE
{
- Word16 nchan_ism, sba_ch_idx;
-
- set16_fx( nb_bits_metadata, 0, MAX_SCE + 1 );
- nchan_ism = st_ivas->nchan_ism;
+ nb_bits_metadata[1] = add( nb_bits_metadata[1], NO_BITS_MASA_ISM_NO_OBJ );
+ sba_ch_idx = 0;
move16();
- IF( EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
+ move16();
+ }
+
+ /* SBA metadata decoding */
+ IF( NE_32( ( error = ivas_spar_dec_fx( st_ivas, nb_bits_metadata ) ), IVAS_ERR_OK ) )
+ {
+ return error;
+ }
+
+ test();
+ IF( EQ_16( st_ivas->nchan_transport, CPE_CHANNELS ) && GE_16( st_ivas->nCPE, 1 ) )
+ {
+ st_ivas->hCPE[0]->element_brate = ivas_total_brate;
+ move32();
+ }
+
+ /* core-decoding of transport channels */
+ Word16 q_output = 11;
+ move16();
+
+ IF( EQ_16( st_ivas->nSCE, 1 ) )
+ {
+ set32_fx( p_output_fx[0], 0, L_FRAME48k );
+
+ IF( NE_32( ( error = ivas_sce_dec_fx( st_ivas, 0, &p_output_fx[0], output_frame, nb_bits_metadata[0] + nb_bits_metadata[1] ) ), IVAS_ERR_OK ) )
{
- /* set ISM parameters and decode ISM metadata in OSBA format */
- IF( NE_32( ( error = ivas_osba_ism_metadata_dec_fx( st_ivas, ivas_total_brate, &nchan_ism, &nb_bits_metadata[1] ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
- sba_ch_idx = st_ivas->nchan_ism;
- move16();
+ return error;
}
- ELSE
+ }
+ ELSE IF( EQ_16( st_ivas->nCPE, 1 ) )
+ {
+
+ IF( NE_32( ( error = ivas_cpe_dec_fx( st_ivas, 0, &p_output_fx[0], output_frame, add( nb_bits_metadata[0], nb_bits_metadata[1] ) ) ), IVAS_ERR_OK ) )
{
- nb_bits_metadata[1] = add( nb_bits_metadata[1], NO_BITS_MASA_ISM_NO_OBJ );
- sba_ch_idx = 0;
- move16();
- move16();
+ return error;
}
- /* SBA metadata decoding */
- IF( NE_32( ( error = ivas_spar_dec_fx( st_ivas, nb_bits_metadata ) ), IVAS_ERR_OK ) )
+ IF( NE_16( q_output, Q11 ) )
+ {
+ Scale_sig32( p_output_fx[0], output_frame, sub( Q11, q_output ) ); // Q11
+ Scale_sig32( p_output_fx[1], output_frame, sub( Q11, q_output ) ); // Q11
+ }
+ }
+ ELSE IF( GT_16( st_ivas->nCPE, 1 ) )
+ {
+ IF( NE_32( ( error = ivas_mct_dec_fx( st_ivas, p_output_fx, output_frame, nb_bits_metadata[0] + nb_bits_metadata[1] ) ), IVAS_ERR_OK ) )
{
return error;
}
+ }
- test();
- IF( EQ_16( st_ivas->nchan_transport, CPE_CHANNELS ) && GE_16( st_ivas->nCPE, 1 ) )
+ IF( st_ivas->sba_dirac_stereo_flag )
+ {
+ FOR( i = 0; i < st_ivas->hSpar->hMdDec->spar_md_cfg.nchan_transport; i++ )
{
- st_ivas->hCPE[0]->element_brate = ivas_total_brate;
- move32();
+ Scale_sig32( p_output_fx[i + sba_ch_idx], output_frame, Q14 - Q11 ); // Q14
}
-
- /* core-decoding of transport channels */
- Word16 q_output = 11;
+ SPAR_DEC_HANDLE hSpar = st_ivas->hSpar;
+ Word16 nchan_transport;
+ nchan_transport = hSpar->hMdDec->spar_md_cfg.nchan_transport;
move16();
+ nchan_out = nchan_transport;
+ move16();
+ ivas_agc_dec_process_fx( st_ivas->hSpar->hAgcDec, ( p_output_fx + sba_ch_idx ), ( p_output_fx + sba_ch_idx ), st_ivas->hSpar->hMdDec->spar_md_cfg.nchan_transport, output_frame );
- IF( EQ_16( st_ivas->nSCE, 1 ) )
+ IF( st_ivas->hSpar->hPCA != NULL )
{
- set32_fx( p_output_fx[0], 0, L_FRAME48k );
-
- IF( NE_32( ( error = ivas_sce_dec_fx( st_ivas, 0, &p_output_fx[0], output_frame, nb_bits_metadata[0] + nb_bits_metadata[1] ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
+ ivas_pca_dec_fx( st_ivas->hSpar->hPCA, output_frame, st_ivas->hSpar->hMdDec->spar_md_cfg.nchan_transport, st_ivas->hDecoderConfig->ivas_total_brate, st_ivas->hDecoderConfig->last_ivas_total_brate, st_ivas->bfi, &p_output_fx[sba_ch_idx] );
}
- ELSE IF( EQ_16( st_ivas->nCPE, 1 ) )
+ ivas_spar_dec_gen_umx_mat_fx( st_ivas->hSpar->hMdDec, st_ivas->nchan_transport, IVAS_MAX_NUM_BANDS, st_ivas->bfi, ivas_get_spar_dec_md_num_subframes( st_ivas->sba_order, st_ivas->hDecoderConfig->ivas_total_brate, st_ivas->last_active_ivas_total_brate ) );
{
-
- IF( NE_32( ( error = ivas_cpe_dec_fx( st_ivas, 0, &p_output_fx[0], output_frame, add( nb_bits_metadata[0], nb_bits_metadata[1] ) ) ), IVAS_ERR_OK ) )
+ Word16 q;
+ hCPE = st_ivas->hCPE[0];
+ hSCE = st_ivas->hSCE[0];
+ s = 0;
+ move16();
+ FOR( i = 0; i < 2; i++ )
{
- return error;
+ s = s_min( s, L_norm_arr( p_output_fx[sba_ch_idx + i], L_FRAME48k ) - 11 /* Guard bits */ );
}
-
- IF( NE_16( q_output, Q11 ) )
+ FOR( i = 0; i < 2; i++ )
{
- Scale_sig32( p_output_fx[0], output_frame, sub( Q11, q_output ) ); // Q11
- Scale_sig32( p_output_fx[1], output_frame, sub( Q11, q_output ) ); // Q11
+ Scale_sig32( p_output_fx[sba_ch_idx + i], L_FRAME48k, s ); // Q(11+s)
}
- }
- ELSE IF( GT_16( st_ivas->nCPE, 1 ) )
- {
- IF( NE_32( ( error = ivas_mct_dec_fx( st_ivas, p_output_fx, output_frame, nb_bits_metadata[0] + nb_bits_metadata[1] ) ), IVAS_ERR_OK ) )
+ hCPE->hStereoDft->q_dft = add( Q11, s );
+ move16();
+ IF( EQ_16( hCPE->hStereoDft->first_frame, 1 ) )
{
- return error;
+ hCPE->hStereoDft->q_smoothed_nrg = Q6; // hCPE->hStereoDft->q_dft;
+ hCPE->hStereoDft->q_ap_delay_mem_fx = hCPE->hStereoDft->q_dft;
+ move16();
+ move16();
}
- }
- IF( st_ivas->sba_dirac_stereo_flag )
- {
- FOR( i = 0; i < st_ivas->hSpar->hMdDec->spar_md_cfg.nchan_transport; i++ )
- {
- Scale_sig32( p_output_fx[i + sba_ch_idx], output_frame, Q14 - Q11 ); // Q14
- }
- SPAR_DEC_HANDLE hSpar = st_ivas->hSpar;
- Word16 nchan_transport;
- nchan_transport = hSpar->hMdDec->spar_md_cfg.nchan_transport;
- move16();
- nchan_out = nchan_transport;
+ q = hCPE->hStereoDft->q_dft;
move16();
- ivas_agc_dec_process_fx( st_ivas->hSpar->hAgcDec, ( p_output_fx + sba_ch_idx ), ( p_output_fx + sba_ch_idx ), st_ivas->hSpar->hMdDec->spar_md_cfg.nchan_transport, output_frame );
-
- IF( st_ivas->hSpar->hPCA != NULL )
+ scale_sig32( hCPE->input_mem_BPF_fx[0], STEREO_DFT32MS_OVL_16k, sub( hCPE->hStereoDft->q_dft, Q11 ) );
+ FOR( i = 0; i < CPE_CHANNELS; ++i )
{
- ivas_pca_dec_fx( st_ivas->hSpar->hPCA, output_frame, st_ivas->hSpar->hMdDec->spar_md_cfg.nchan_transport, st_ivas->hDecoderConfig->ivas_total_brate, st_ivas->hDecoderConfig->last_ivas_total_brate, st_ivas->bfi, &p_output_fx[sba_ch_idx] );
+ scale_sig32( hCPE->input_mem_LB_fx[i], STEREO_DFT32MS_OVL_16k, sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
+ scale_sig32( hCPE->input_mem_fx[i], NS2SA_FX2( hCPE->hCoreCoder[0]->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
}
- ivas_spar_dec_gen_umx_mat_fx( st_ivas->hSpar->hMdDec, st_ivas->nchan_transport, IVAS_MAX_NUM_BANDS, st_ivas->bfi, ivas_get_spar_dec_md_num_subframes( st_ivas->sba_order, st_ivas->hDecoderConfig->ivas_total_brate, st_ivas->last_active_ivas_total_brate ) );
+ IF( hCPE->hCoreCoder[0] != NULL )
{
- Word16 q;
- hCPE = st_ivas->hCPE[0];
- hSCE = st_ivas->hSCE[0];
- s = 0;
+ Copy_Scale_sig_16_32_no_sat( hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx, hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, L_FRAME32k, sub( q, hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda_LB ) ); // q
+ Copy_Scale_sig_16_32_no_sat( hCPE->hCoreCoder[0]->hHQ_core->old_out_fx, hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, L_FRAME48k, sub( q, hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda ) ); // q
+ hCPE->hCoreCoder[0]->hHQ_core->Q_old_out_fx32 = q;
move16();
- FOR( i = 0; i < 2; i++ )
- {
- s = s_min( s, L_norm_arr( p_output_fx[sba_ch_idx + i], L_FRAME48k ) - 11 /* Guard bits */ );
- }
- FOR( i = 0; i < 2; i++ )
- {
- Scale_sig32( p_output_fx[sba_ch_idx + i], L_FRAME48k, s ); // Q(11+s)
- }
- hCPE->hStereoDft->q_dft = add( Q11, s );
+ }
+ IF( hCPE->hStereoDft != NULL )
+ {
+ scale_sig32( hCPE->hStereoDft->buff_LBTCX_mem_fx, NS2SA( 16000, STEREO_DFT32MS_OVL_NS ), sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
+ scale_sig32( hCPE->hStereoDft->ap_delay_mem_fx, NS2SA( 16000, DELAY_BWE_TOTAL_NS ), sub( hCPE->hStereoDft->q_dft, hCPE->hStereoDft->q_ap_fade_mem_fx ) ); // q_dft
+ hCPE->hStereoDft->q_ap_fade_mem_fx = hCPE->hStereoDft->q_dft;
move16();
- IF( EQ_16( hCPE->hStereoDft->first_frame, 1 ) )
- {
- hCPE->hStereoDft->q_smoothed_nrg = Q6; // hCPE->hStereoDft->q_dft;
- hCPE->hStereoDft->q_ap_delay_mem_fx = hCPE->hStereoDft->q_dft;
- move16();
- move16();
- }
+ }
- q = hCPE->hStereoDft->q_dft;
+ IF( hSCE != NULL )
+ {
+ Scale_sig32( &hSCE->save_hb_synth_fx[0], extract_l( Mpy_32_32( hCPE->hCoreCoder[0]->output_Fs, ONE_BY_FRAMES_PER_SEC_Q31 ) ), hCPE->hStereoDft->q_dft - hSCE->q_save_hb_synth_fx ); // q_dft
+ hSCE->q_save_hb_synth_fx = hCPE->hStereoDft->q_dft;
+ move16();
+ Scale_sig32( &hSCE->save_synth_fx[0], extract_l( Mpy_32_32( hCPE->hCoreCoder[0]->output_Fs, ONE_BY_FRAMES_PER_SEC_Q31 ) ), hCPE->hStereoDft->q_dft - hSCE->q_save_synth_fx ); // q_dft
+ hSCE->q_save_synth_fx = hCPE->hStereoDft->q_dft;
move16();
- scale_sig32( hCPE->input_mem_BPF_fx[0], STEREO_DFT32MS_OVL_16k, sub( hCPE->hStereoDft->q_dft, Q11 ) );
- FOR( i = 0; i < CPE_CHANNELS; ++i )
- {
- scale_sig32( hCPE->input_mem_LB_fx[i], STEREO_DFT32MS_OVL_16k, sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
- scale_sig32( hCPE->input_mem_fx[i], NS2SA_FX2( hCPE->hCoreCoder[0]->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
- }
- IF( hCPE->hCoreCoder[0] != NULL )
- {
- Copy_Scale_sig_16_32_no_sat( hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx, hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, L_FRAME32k, sub( q, hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda_LB ) ); // q
- Copy_Scale_sig_16_32_no_sat( hCPE->hCoreCoder[0]->hHQ_core->old_out_fx, hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, L_FRAME48k, sub( q, hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda ) ); // q
- hCPE->hCoreCoder[0]->hHQ_core->Q_old_out_fx32 = q;
- move16();
- }
- IF( hCPE->hStereoDft != NULL )
- {
- scale_sig32( hCPE->hStereoDft->buff_LBTCX_mem_fx, NS2SA( 16000, STEREO_DFT32MS_OVL_NS ), sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
- scale_sig32( hCPE->hStereoDft->ap_delay_mem_fx, NS2SA( 16000, DELAY_BWE_TOTAL_NS ), sub( hCPE->hStereoDft->q_dft, hCPE->hStereoDft->q_ap_fade_mem_fx ) ); // q_dft
- hCPE->hStereoDft->q_ap_fade_mem_fx = hCPE->hStereoDft->q_dft;
- move16();
- }
-
- IF( hSCE != NULL )
- {
- Scale_sig32( &hSCE->save_hb_synth_fx[0], extract_l( Mpy_32_32( hCPE->hCoreCoder[0]->output_Fs, ONE_BY_FRAMES_PER_SEC_Q31 ) ), hCPE->hStereoDft->q_dft - hSCE->q_save_hb_synth_fx ); // q_dft
- hSCE->q_save_hb_synth_fx = hCPE->hStereoDft->q_dft;
- move16();
- Scale_sig32( &hSCE->save_synth_fx[0], extract_l( Mpy_32_32( hCPE->hCoreCoder[0]->output_Fs, ONE_BY_FRAMES_PER_SEC_Q31 ) ), hCPE->hStereoDft->q_dft - hSCE->q_save_synth_fx ); // q_dft
- hSCE->q_save_synth_fx = hCPE->hStereoDft->q_dft;
- move16();
- }
- FOR( ii = 0; ii < CPE_CHANNELS; ii++ )
- {
- scale_sig32( hCPE->output_mem_fx[ii], NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
- hCPE->q_output_mem_fx[ii] = hCPE->hStereoDft->q_dft;
- move16();
- }
- FOR( i = 0; i < CPE_CHANNELS; i++ )
- Scale_sig32( hCPE->prev_synth_fx[i], NS2SA_FX2( output_Fs, IVAS_DEC_DELAY_NS - STEREO_DFT32MS_OVL_NS ), sub( hCPE->q_prev_synth_fx, Q11 ) ); // q_prev_synth_fx
- ivas_sba_dirac_stereo_dec_fx( st_ivas, &p_output_fx[sba_ch_idx], output_frame, 0 );
- FOR( i = 0; i < 2; i++ )
- {
- Scale_sig32( p_output_fx[sba_ch_idx + i], L_FRAME48k, negate( s ) );
- }
-
- FOR( i = 0; i < CPE_CHANNELS; i++ )
- Scale_sig32( hCPE->prev_synth_fx[i], NS2SA_FX2( output_Fs, IVAS_DEC_DELAY_NS - STEREO_DFT32MS_OVL_NS ), sub( 11, hCPE->q_prev_synth_fx ) ); // Q11
-
- scale_sig32( hCPE->input_mem_BPF_fx[0], STEREO_DFT32MS_OVL_16k, sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
- FOR( i = 0; i < CPE_CHANNELS; ++i )
- {
- scale_sig32( hCPE->input_mem_LB_fx[i], STEREO_DFT32MS_OVL_16k, sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
- scale_sig32( hCPE->input_mem_fx[i], NS2SA_FX2( hCPE->hCoreCoder[0]->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
- }
-
- IF( hCPE->hCoreCoder[0] != NULL )
- {
- Copy_Scale_sig_32_16( hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx, L_FRAME32k, sub( hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda_LB, q ) ); // Q_old_wtda_LB
- Copy_Scale_sig_32_16( hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, hCPE->hCoreCoder[0]->hHQ_core->old_out_fx, L_FRAME48k, sub( hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda, q ) ); // Q_old_wtda
- }
- IF( hCPE->hStereoDft != NULL )
- {
- scale_sig32( hCPE->hStereoDft->buff_LBTCX_mem_fx, NS2SA( 16000, STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
- scale_sig32( hCPE->hStereoDft->ap_delay_mem_fx, NS2SA( 16000, DELAY_BWE_TOTAL_NS ), sub( Q11, hCPE->hStereoDft->q_ap_fade_mem_fx ) ); // Q11
- hCPE->hStereoDft->q_ap_fade_mem_fx = Q11;
- move16();
- }
-
- FOR( ii = 0; ii < CPE_CHANNELS; ii++ )
- {
- scale_sig32( hCPE->output_mem_fx[ii], NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
- hCPE->q_output_mem_fx[ii] = Q11;
- move16();
- }
}
- }
-
- /* HP filtering */
- FOR( n = 0; n < getNumChanSynthesis( st_ivas ); n++ )
- {
-#ifdef HP20_FIX32_RECODING
- hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#else
- hp20_fx_32( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#endif
- }
-
- nchan_remapped = ivas_sba_remapTCs_fx( &p_output_fx[sba_ch_idx], st_ivas, output_frame );
-
- test();
- test();
- IF( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) || EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) )
- {
- num_md_sub_frames = ivas_get_spar_dec_md_num_subframes( st_ivas->sba_analysis_order, st_ivas->hDecoderConfig->ivas_total_brate, st_ivas->last_active_ivas_total_brate );
- SPAR_DEC_HANDLE hSpar = st_ivas->hSpar;
- Word16 nchan_transport;
- // num_bands_out = hSpar->hFbMixer->pFb->filterbank_num_bands;
- nchan_transport = hSpar->hMdDec->spar_md_cfg.nchan_transport;
- move16();
- nchan_out = nchan_transport;
- move16();
- Word16 Q_p_output;
- Word16 min_norm = 31;
- move16();
-
- FOR( ch = 0; ch < nchan_transport; ++ch )
+ FOR( ii = 0; ii < CPE_CHANNELS; ii++ )
+ {
+ scale_sig32( hCPE->output_mem_fx[ii], NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
+ hCPE->q_output_mem_fx[ii] = hCPE->hStereoDft->q_dft;
+ move16();
+ }
+ FOR( i = 0; i < CPE_CHANNELS; i++ )
+ Scale_sig32( hCPE->prev_synth_fx[i], NS2SA_FX2( output_Fs, IVAS_DEC_DELAY_NS - STEREO_DFT32MS_OVL_NS ), sub( hCPE->q_prev_synth_fx, Q11 ) ); // q_prev_synth_fx
+ ivas_sba_dirac_stereo_dec_fx( st_ivas, &p_output_fx[sba_ch_idx], output_frame, 0 );
+ FOR( i = 0; i < 2; i++ )
{
- Word16 norm = L_norm_arr( p_output_fx[sba_ch_idx + ch], output_frame ); // Normalize per channel
- min_norm = s_min( norm, min_norm );
+ Scale_sig32( p_output_fx[sba_ch_idx + i], L_FRAME48k, negate( s ) );
}
- Q_p_output = s_max( 3, sub( min_norm, 1 ) );
+ FOR( i = 0; i < CPE_CHANNELS; i++ )
+ Scale_sig32( hCPE->prev_synth_fx[i], NS2SA_FX2( output_Fs, IVAS_DEC_DELAY_NS - STEREO_DFT32MS_OVL_NS ), sub( 11, hCPE->q_prev_synth_fx ) ); // Q11
- Q_p_output = s_min( Q_p_output, 19 ); // to restrict Q-factor of p_ouptut to Q30
- FOR( ch = 0; ch < nchan_transport; ch++ )
+ scale_sig32( hCPE->input_mem_BPF_fx[0], STEREO_DFT32MS_OVL_16k, sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
+ FOR( i = 0; i < CPE_CHANNELS; ++i )
{
- Scale_sig32( p_output_fx[sba_ch_idx + ch], output_frame, Q_p_output ); // Q_p_output + Q11
+ scale_sig32( hCPE->input_mem_LB_fx[i], STEREO_DFT32MS_OVL_16k, sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
+ scale_sig32( hCPE->input_mem_fx[i], NS2SA_FX2( hCPE->hCoreCoder[0]->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
}
- Q_p_output = add( Q11, Q_p_output );
- hSpar->hMdDec->Q_mixer_mat = 31;
- move16();
- ivas_sba_mix_matrix_determiner_fx( st_ivas->hSpar, &p_output_fx[sba_ch_idx], st_ivas->bfi, nchan_remapped, output_frame, num_md_sub_frames, sub( Q_p_output, Q11 ) );
- FOR( Word16 c = 0; c < nchan_transport; c++ )
+ IF( hCPE->hCoreCoder[0] != NULL )
{
- Scale_sig32( p_output_fx[sba_ch_idx + c], output_frame, Q11 ); // Q11
+ Copy_Scale_sig_32_16( hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx, L_FRAME32k, sub( hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda_LB, q ) ); // Q_old_wtda_LB
+ Copy_Scale_sig_32_16( hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, hCPE->hCoreCoder[0]->hHQ_core->old_out_fx, L_FRAME48k, sub( hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda, q ) ); // Q_old_wtda
}
- }
- ELSE IF( NE_32( st_ivas->renderer_type, RENDERER_DISABLE ) && st_ivas->sba_dirac_stereo_flag == 0 )
- {
- Word16 size = add( st_ivas->hSpar->hMdDec->spar_md_cfg.nchan_transport, sba_ch_idx );
- if ( EQ_16( size, 3 ) )
+ IF( hCPE->hStereoDft != NULL )
{
- size = add( size, 1 );
+ scale_sig32( hCPE->hStereoDft->buff_LBTCX_mem_fx, NS2SA( 16000, STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
+ scale_sig32( hCPE->hStereoDft->ap_delay_mem_fx, NS2SA( 16000, DELAY_BWE_TOTAL_NS ), sub( Q11, hCPE->hStereoDft->q_ap_fade_mem_fx ) ); // Q11
+ hCPE->hStereoDft->q_ap_fade_mem_fx = Q11;
+ move16();
}
- FOR( i = sba_ch_idx; i < size; i++ )
+ FOR( ii = 0; ii < CPE_CHANNELS; ii++ )
{
- Scale_sig32( p_output_fx[i], output_frame, ( Q14 - Q11 ) ); // Q14
+ scale_sig32( hCPE->output_mem_fx[ii], NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
+ hCPE->q_output_mem_fx[ii] = Q11;
+ move16();
}
-
- ivas_spar_dec_agc_pca_fx( st_ivas, &p_output_fx[sba_ch_idx], output_frame );
}
+ }
- test();
- test();
- IF( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) || EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) )
- {
- /* loudness correction */
- ivas_dirac_dec_binaural_sba_gain_fx( &p_output_fx[sba_ch_idx], nchan_remapped, output_frame ); /*returns Q-1*/
-
- FOR( i = 0; i < nchan_remapped; i++ )
- {
- Scale_sig32( p_output_fx[i], output_frame, 1 ); // Q-1 -> Q
- }
- }
- ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_MONO_DOWNMIX ) && EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
- {
- ivas_ism_mono_dmx_fx( st_ivas, p_output_fx, output_frame );
+ /* HP filtering */
+ FOR( n = 0; n < getNumChanSynthesis( st_ivas ); n++ )
+ {
+ hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
+ }
- Scale_sig32( p_output_fx[0], L_FRAME48k, Q11 - Q8 ); // Q11
+ nchan_remapped = ivas_sba_remapTCs_fx( &p_output_fx[sba_ch_idx], st_ivas, output_frame );
- /* add W */
- FOR( n = 0; n < nchan_out; n++ )
- {
- v_add_32( p_output_fx[n], p_output_fx[n + s_max( nchan_out, nchan_ism )], p_output_fx[n], output_frame );
- }
+ test();
+ test();
+ IF( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) || EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) )
+ {
+ num_md_sub_frames = ivas_get_spar_dec_md_num_subframes( st_ivas->sba_analysis_order, st_ivas->hDecoderConfig->ivas_total_brate, st_ivas->last_active_ivas_total_brate );
+ SPAR_DEC_HANDLE hSpar = st_ivas->hSpar;
+ Word16 nchan_transport;
+ // num_bands_out = hSpar->hFbMixer->pFb->filterbank_num_bands;
+ nchan_transport = hSpar->hMdDec->spar_md_cfg.nchan_transport;
+ move16();
+ nchan_out = nchan_transport;
+ move16();
+ Word16 Q_p_output;
+ Word16 min_norm = 31;
+ move16();
+
+ FOR( ch = 0; ch < nchan_transport; ++ch )
+ {
+ Word16 norm = L_norm_arr( p_output_fx[sba_ch_idx + ch], output_frame ); // Normalize per channel
+ min_norm = s_min( norm, min_norm );
+ }
+
+ Q_p_output = s_max( 3, sub( min_norm, 1 ) );
+
+ Q_p_output = s_min( Q_p_output, 19 ); // to restrict Q-factor of p_ouptut to Q30
+ FOR( ch = 0; ch < nchan_transport; ch++ )
+ {
+ Scale_sig32( p_output_fx[sba_ch_idx + ch], output_frame, Q_p_output ); // Q_p_output + Q11
+ }
+ Q_p_output = add( Q11, Q_p_output );
+ hSpar->hMdDec->Q_mixer_mat = 31;
+ move16();
+
+ ivas_sba_mix_matrix_determiner_fx( st_ivas->hSpar, &p_output_fx[sba_ch_idx], st_ivas->bfi, nchan_remapped, output_frame, num_md_sub_frames, sub( Q_p_output, Q11 ) );
+ FOR( Word16 c = 0; c < nchan_transport; c++ )
+ {
+ Scale_sig32( p_output_fx[sba_ch_idx + c], output_frame, Q11 ); // Q11
}
}
- ELSE IF( EQ_32( st_ivas->ivas_format, MC_FORMAT ) )
+ ELSE IF( NE_32( st_ivas->renderer_type, RENDERER_DISABLE ) && st_ivas->sba_dirac_stereo_flag == 0 )
{
+ Word16 size = add( st_ivas->hSpar->hMdDec->spar_md_cfg.nchan_transport, sba_ch_idx );
+ if ( EQ_16( size, 3 ) )
+ {
+ size = add( size, 1 );
+ }
- // st = (st_ivas->nSCE > 0) ? st_ivas->hSCE[0]->hCoreCoder[0] : st_ivas->hCPE[0]->hCoreCoder[0];
- IF( st_ivas->nSCE > 0 )
+ FOR( i = sba_ch_idx; i < size; i++ )
{
- st = st_ivas->hSCE[0]->hCoreCoder[0];
+ Scale_sig32( p_output_fx[i], output_frame, ( Q14 - Q11 ) ); // Q14
}
- ELSE
+
+ ivas_spar_dec_agc_pca_fx( st_ivas, &p_output_fx[sba_ch_idx], output_frame );
+ }
+
+ test();
+ test();
+ IF( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) || EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) )
+ {
+ /* loudness correction */
+ ivas_dirac_dec_binaural_sba_gain_fx( &p_output_fx[sba_ch_idx], nchan_remapped, output_frame ); /*returns Q-1*/
+
+ FOR( i = 0; i < nchan_remapped; i++ )
{
- st = st_ivas->hCPE[0]->hCoreCoder[0];
+ Scale_sig32( p_output_fx[i], output_frame, 1 ); // Q-1 -> Q
}
+ }
+ ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_MONO_DOWNMIX ) && EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
+ {
+ ivas_ism_mono_dmx_fx( st_ivas, p_output_fx, output_frame );
- IF( EQ_32( st_ivas->mc_mode, MC_MODE_MCT ) )
+ Scale_sig32( p_output_fx[0], L_FRAME48k, Q11 - Q8 ); // Q11
+
+ /* add W */
+ FOR( n = 0; n < nchan_out; n++ )
{
- /* LFE channel decoder */
- ivas_lfe_dec_fx( st_ivas->hLFE, st, output_frame, st_ivas->bfi, p_output_fx[LFE_CHANNEL] );
+ v_add_32( p_output_fx[n], p_output_fx[n + s_max( nchan_out, nchan_ism )], p_output_fx[n], output_frame );
+ }
+ }
+}
+ELSE IF( EQ_32( st_ivas->ivas_format, MC_FORMAT ) )
+{
- Scale_sig32( p_output_fx[LFE_CHANNEL], L_FRAME48k, Q11 - Q9 ); // Q11
- IF( NE_32( ( error = ivas_mct_dec_fx( st_ivas, p_output_fx, output_frame, 0 ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
- /* HP filtering */
- FOR( n = 0; n < st_ivas->nchan_transport; n++ )
+ // st = (st_ivas->nSCE > 0) ? st_ivas->hSCE[0]->hCoreCoder[0] : st_ivas->hCPE[0]->hCoreCoder[0];
+ IF( st_ivas->nSCE > 0 )
+ {
+ st = st_ivas->hSCE[0]->hCoreCoder[0];
+ }
+ ELSE
+ {
+ st = st_ivas->hCPE[0]->hCoreCoder[0];
+ }
+
+ IF( EQ_32( st_ivas->mc_mode, MC_MODE_MCT ) )
+ {
+ /* LFE channel decoder */
+ ivas_lfe_dec_fx( st_ivas->hLFE, st, output_frame, st_ivas->bfi, p_output_fx[LFE_CHANNEL] );
+
+ Scale_sig32( p_output_fx[LFE_CHANNEL], L_FRAME48k, Q11 - Q9 ); // Q11
+ IF( NE_32( ( error = ivas_mct_dec_fx( st_ivas, p_output_fx, output_frame, 0 ) ), IVAS_ERR_OK ) )
+ {
+ return error;
+ }
+ /* HP filtering */
+ FOR( n = 0; n < st_ivas->nchan_transport; n++ )
+ {
+ IF( NE_16( n, LFE_CHANNEL ) )
{
- IF( NE_16( n, LFE_CHANNEL ) )
- {
-#ifdef HP20_FIX32_RECODING
- hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#else
- hp20_fx_32( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#endif
- }
+ hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
}
+ }
- test();
- test();
- test();
- IF( NE_32( st_ivas->transport_config, st_ivas->intern_config ) && ( NE_32( st_ivas->intern_config, IVAS_AUDIO_CONFIG_FOA ) || NE_32( st_ivas->intern_config, IVAS_AUDIO_CONFIG_HOA2 ) || NE_32( st_ivas->intern_config, IVAS_AUDIO_CONFIG_HOA3 ) ) )
+ test();
+ test();
+ test();
+ IF( NE_32( st_ivas->transport_config, st_ivas->intern_config ) && ( NE_32( st_ivas->intern_config, IVAS_AUDIO_CONFIG_FOA ) || NE_32( st_ivas->intern_config, IVAS_AUDIO_CONFIG_HOA2 ) || NE_32( st_ivas->intern_config, IVAS_AUDIO_CONFIG_HOA3 ) ) )
+ {
+ IF( GE_16( add( st_ivas->hTransSetup.nchan_out_woLFE, st_ivas->hTransSetup.num_lfe ), add( st_ivas->hIntSetup.nchan_out_woLFE, st_ivas->hIntSetup.num_lfe ) ) )
{
- IF( GE_16( add( st_ivas->hTransSetup.nchan_out_woLFE, st_ivas->hTransSetup.num_lfe ), add( st_ivas->hIntSetup.nchan_out_woLFE, st_ivas->hIntSetup.num_lfe ) ) )
- {
- ivas_mc2sba_fx( st_ivas->hTransSetup, p_output_fx, p_output_fx, output_frame, st_ivas->hIntSetup.ambisonics_order, GAIN_LFE_FX );
- }
+ ivas_mc2sba_fx( st_ivas->hTransSetup, p_output_fx, p_output_fx, output_frame, st_ivas->hIntSetup.ambisonics_order, GAIN_LFE_FX );
}
+ }
- test();
- test();
- IF( ( EQ_32( st_ivas->renderer_type, RENDERER_MC ) || EQ_32( st_ivas->renderer_type, RENDERER_SBA_LINEAR_ENC ) ) && GE_16( add( st_ivas->hTransSetup.nchan_out_woLFE, st_ivas->hTransSetup.num_lfe ), add( st_ivas->hOutSetup.nchan_out_woLFE, st_ivas->hOutSetup.num_lfe ) ) )
+ test();
+ test();
+ IF( ( EQ_32( st_ivas->renderer_type, RENDERER_MC ) || EQ_32( st_ivas->renderer_type, RENDERER_SBA_LINEAR_ENC ) ) && GE_16( add( st_ivas->hTransSetup.nchan_out_woLFE, st_ivas->hTransSetup.num_lfe ), add( st_ivas->hOutSetup.nchan_out_woLFE, st_ivas->hOutSetup.num_lfe ) ) )
+ {
+ IF( EQ_32( st_ivas->renderer_type, RENDERER_MC ) )
{
- IF( EQ_32( st_ivas->renderer_type, RENDERER_MC ) )
+ s = Q16 - Q11;
+ move16();
+ s = sub( s, find_guarded_bits_fx( st_ivas->nchan_transport ) );
+ FOR( i = 0; i < s_max( st_ivas->hDecoderConfig->nchan_out, st_ivas->nchan_transport ); ++i )
{
- s = Q16 - Q11;
- move16();
- s = sub( s, find_guarded_bits_fx( st_ivas->nchan_transport ) );
- FOR( i = 0; i < s_max( st_ivas->hDecoderConfig->nchan_out, st_ivas->nchan_transport ); ++i )
- {
- Scale_sig32( p_output_fx[i], output_frame, s ); // Q(11+s)
- }
- ivas_ls_setup_conversion_fx( st_ivas, st_ivas->nchan_transport, output_frame, p_output_fx, p_output_fx );
- FOR( i = 0; i < s_max( st_ivas->hDecoderConfig->nchan_out, st_ivas->nchan_transport ); ++i )
- {
- Scale_sig32( p_output_fx[i], output_frame, negate( s ) ); // Q11
- }
+ Scale_sig32( p_output_fx[i], output_frame, s ); // Q(11+s)
}
- ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_SBA_LINEAR_ENC ) )
+ ivas_ls_setup_conversion_fx( st_ivas, st_ivas->nchan_transport, output_frame, p_output_fx, p_output_fx );
+ FOR( i = 0; i < s_max( st_ivas->hDecoderConfig->nchan_out, st_ivas->nchan_transport ); ++i )
{
- ivas_mc2sba_fx( st_ivas->hIntSetup, p_output_fx, p_output_fx, output_frame, st_ivas->hOutSetup.ambisonics_order, 0 );
+ Scale_sig32( p_output_fx[i], output_frame, negate( s ) ); // Q11
}
}
+ ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_SBA_LINEAR_ENC ) )
+ {
+ ivas_mc2sba_fx( st_ivas->hIntSetup, p_output_fx, p_output_fx, output_frame, st_ivas->hOutSetup.ambisonics_order, 0 );
+ }
}
- ELSE IF( EQ_32( st_ivas->mc_mode, MC_MODE_PARAMUPMIX ) )
- {
- /* LFE channel decoder */
- ivas_lfe_dec_fx( st_ivas->hLFE, st, output_frame, st_ivas->bfi, p_output_fx[LFE_CHANNEL] );
+ }
+ ELSE IF( EQ_32( st_ivas->mc_mode, MC_MODE_PARAMUPMIX ) )
+ {
+ /* LFE channel decoder */
+ ivas_lfe_dec_fx( st_ivas->hLFE, st, output_frame, st_ivas->bfi, p_output_fx[LFE_CHANNEL] );
- Scale_sig32( p_output_fx[LFE_CHANNEL], L_FRAME48k, Q11 - Q9 ); // Q11
+ Scale_sig32( p_output_fx[LFE_CHANNEL], L_FRAME48k, Q11 - Q9 ); // Q11
- ivas_mc_paramupmix_dec_read_BS( st_ivas, st, st_ivas->hMCParamUpmix, &nb_bits_metadata[0] );
+ ivas_mc_paramupmix_dec_read_BS( st_ivas, st, st_ivas->hMCParamUpmix, &nb_bits_metadata[0] );
- IF( NE_32( ( error = ivas_mct_dec_fx( st_ivas, p_output_fx, output_frame, nb_bits_metadata[0] ) ), IVAS_ERR_OK ) )
+ IF( NE_32( ( error = ivas_mct_dec_fx( st_ivas, p_output_fx, output_frame, nb_bits_metadata[0] ) ), IVAS_ERR_OK ) )
+ {
+ return error;
+ }
+ /* HP filtering */
+ FOR( n = 0; n < st_ivas->nchan_transport; n++ )
+ {
+ IF( NE_16( n, LFE_CHANNEL ) )
{
- return error;
+ hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
}
- /* HP filtering */
- FOR( n = 0; n < st_ivas->nchan_transport; n++ )
+ }
+
+ /* Rendering */
+ test();
+ test();
+ IF( EQ_32( st_ivas->renderer_type, RENDERER_MC ) && ( EQ_32( output_config, IVAS_AUDIO_CONFIG_MONO ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_STEREO ) ) )
+ {
+ /* Compensate loudness for not doing full upmix */
+ FOR( n = 4; n < 8; n++ )
{
- IF( NE_16( n, LFE_CHANNEL ) )
- {
-#ifdef HP20_FIX32_RECODING
- hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#else
- hp20_fx_32( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#endif
- }
+ Scale_sig32( p_output_fx[n], output_frame, 1 );
}
- /* Rendering */
test();
- test();
- IF( EQ_32( st_ivas->renderer_type, RENDERER_MC ) && ( EQ_32( output_config, IVAS_AUDIO_CONFIG_MONO ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_STEREO ) ) )
+ IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_MONO ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_STEREO ) )
{
- /* Compensate loudness for not doing full upmix */
- FOR( n = 4; n < 8; n++ )
+ s = Q16 - Q11;
+ move16();
+ Word16 nchan_transport;
+ nchan_transport = audioCfg2channels( IVAS_AUDIO_CONFIG_5_1_2 );
+ s = sub( s, find_guarded_bits_fx( nchan_transport ) );
+ FOR( i = 0; i < s_max( st_ivas->hDecoderConfig->nchan_out, nchan_transport ); ++i )
{
- Scale_sig32( p_output_fx[n], output_frame, 1 );
+ Scale_sig32( p_output_fx[i], output_frame, s );
}
-
- test();
- IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_MONO ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_STEREO ) )
+ ivas_ls_setup_conversion_fx( st_ivas, nchan_transport, output_frame, p_output_fx, p_output_fx );
+ FOR( i = 0; i < s_max( st_ivas->hDecoderConfig->nchan_out, nchan_transport ); ++i )
{
- s = Q16 - Q11;
- move16();
- Word16 nchan_transport;
- nchan_transport = audioCfg2channels( IVAS_AUDIO_CONFIG_5_1_2 );
- s = sub( s, find_guarded_bits_fx( nchan_transport ) );
- FOR( i = 0; i < s_max( st_ivas->hDecoderConfig->nchan_out, nchan_transport ); ++i )
- {
- Scale_sig32( p_output_fx[i], output_frame, s );
- }
- ivas_ls_setup_conversion_fx( st_ivas, nchan_transport, output_frame, p_output_fx, p_output_fx );
- FOR( i = 0; i < s_max( st_ivas->hDecoderConfig->nchan_out, nchan_transport ); ++i )
- {
- Scale_sig32( p_output_fx[i], output_frame, negate( s ) );
- }
+ Scale_sig32( p_output_fx[i], output_frame, negate( s ) );
}
}
}
- ELSE IF( EQ_32( st_ivas->mc_mode, MC_MODE_PARAMMC ) )
+ }
+ ELSE IF( EQ_32( st_ivas->mc_mode, MC_MODE_PARAMMC ) )
+ {
+ /* read Parametric MC parameters from the bitstream */
+ ivas_param_mc_dec_read_BS_fx( ivas_total_brate, st, st_ivas->hParamMC, &nb_bits_metadata[0] );
+
+ IF( EQ_16( st_ivas->nCPE, 1 ) )
{
- /* read Parametric MC parameters from the bitstream */
- ivas_param_mc_dec_read_BS_fx( ivas_total_brate, st, st_ivas->hParamMC, &nb_bits_metadata[0] );
+ Word16 q_output = 11;
+ move16();
- IF( EQ_16( st_ivas->nCPE, 1 ) )
+ IF( NE_32( ( error = ivas_cpe_dec_fx( st_ivas, 0, &p_output_fx[0], output_frame, nb_bits_metadata[0] ) ), IVAS_ERR_OK ) )
{
- Word16 q_output = 11;
- move16();
-
- IF( NE_32( ( error = ivas_cpe_dec_fx( st_ivas, 0, &p_output_fx[0], output_frame, nb_bits_metadata[0] ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
- IF( NE_16( q_output, Q11 ) )
- {
- Scale_sig32( p_output_fx[0], output_frame, sub( Q11, q_output ) ); // Q11
- Scale_sig32( p_output_fx[1], output_frame, sub( Q11, q_output ) ); // Q11
- }
+ return error;
}
- ELSE IF( GT_16( st_ivas->nCPE, 1 ) )
+ IF( NE_16( q_output, Q11 ) )
{
- IF( NE_32( ( error = ivas_mct_dec_fx( st_ivas, p_output_fx, output_frame, nb_bits_metadata[0] ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
+ Scale_sig32( p_output_fx[0], output_frame, sub( Q11, q_output ) ); // Q11
+ Scale_sig32( p_output_fx[1], output_frame, sub( Q11, q_output ) ); // Q11
}
-
- /* HP filtering */
- FOR( n = 0; n < st_ivas->nchan_transport; n++ )
+ }
+ ELSE IF( GT_16( st_ivas->nCPE, 1 ) )
+ {
+ IF( NE_32( ( error = ivas_mct_dec_fx( st_ivas, p_output_fx, output_frame, nb_bits_metadata[0] ) ), IVAS_ERR_OK ) )
{
-#ifdef HP20_FIX32_RECODING
- hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#else
- hp20_fx_32( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#endif
+ return error;
}
+ }
- /* Rendering */
- test();
- IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_MONO ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_STEREO ) )
- {
- ivas_ls_setup_conversion_fx( st_ivas, st_ivas->nchan_transport, output_frame, p_output_fx, p_output_fx );
- }
+ /* HP filtering */
+ FOR( n = 0; n < st_ivas->nchan_transport; n++ )
+ {
+ hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
}
- ELSE IF( EQ_32( st_ivas->mc_mode, MC_MODE_MCMASA ) )
+
+ /* Rendering */
+ test();
+ IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_MONO ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_STEREO ) )
{
- IF( st_ivas->hOutSetup.separateChannelEnabled )
+ ivas_ls_setup_conversion_fx( st_ivas, st_ivas->nchan_transport, output_frame, p_output_fx, p_output_fx );
+ }
+ }
+ ELSE IF( EQ_32( st_ivas->mc_mode, MC_MODE_MCMASA ) )
+ {
+ IF( st_ivas->hOutSetup.separateChannelEnabled )
+ {
+ st = st_ivas->hCPE[0]->hCoreCoder[0]; /* Metadata is always with CPE in the case of separated channel */
+ }
+
+ /* read McMASA parameters from the bitstream */
+
+ IF( NE_32( ( error = ivas_masa_decode_fx( st_ivas, st, &nb_bits_metadata[0] ) ), IVAS_ERR_OK ) )
+ {
+ return error;
+ }
+
+ IF( st_ivas->hOutSetup.separateChannelEnabled )
+ {
+ /* Decode the transport audio signals */
+ Word16 q_output = 11;
+ move16();
+
+ IF( NE_32( ( error = ivas_cpe_dec_fx( st_ivas, 0, &p_output_fx[0], output_frame, nb_bits_metadata[0] ) ), IVAS_ERR_OK ) )
+ {
+ return error;
+ }
+ IF( NE_16( q_output, Q11 ) )
{
- st = st_ivas->hCPE[0]->hCoreCoder[0]; /* Metadata is always with CPE in the case of separated channel */
+ Scale_sig32( p_output_fx[0], output_frame, sub( Q11, q_output ) ); // Q11
+ Scale_sig32( p_output_fx[1], output_frame, sub( Q11, q_output ) ); // Q11
}
- /* read McMASA parameters from the bitstream */
+ /* Identify the index of the separated channel, always LFE_CHANNEL-1 here */
+ n = LFE_CHANNEL - 1;
+ move16();
- IF( NE_32( ( error = ivas_masa_decode_fx( st_ivas, st, &nb_bits_metadata[0] ) ), IVAS_ERR_OK ) )
+ /* Decode the separated channel to output[n] to be combined with the synthesized channels */
+
+ set32_fx( p_output_fx[n], 0, L_FRAME48k );
+
+ IF( NE_32( ( error = ivas_sce_dec_fx( st_ivas, 0, &p_output_fx[n], output_frame, 0 ) ), IVAS_ERR_OK ) )
{
return error;
}
+ test();
+ test();
+ test();
+ test();
+ test();
+ test();
+ test();
+ /* Delay the separated channel to sync with CLDFB delay of the DirAC synthesis, and synthesize the LFE signal. */
+ IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_5_1 ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_7_1 ) ||
+ EQ_32( output_config, IVAS_AUDIO_CONFIG_5_1_4 ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_7_1_4 ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_5_1_2 ) || ( EQ_32( output_config, IVAS_AUDIO_CONFIG_LS_CUSTOM ) && st_ivas->hOutSetup.num_lfe > 0 ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
+ {
+ ivas_lfe_synth_with_filters_fx( st_ivas->hMasa->hMasaLfeSynth, p_output_fx, output_frame, n, LFE_CHANNEL );
+ }
+ ELSE IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_LS_CUSTOM ) && st_ivas->hOutSetup.num_lfe == 0 )
+ {
+ /* Delay the separated channel to sync with the DirAC rendering */
+ delay_signal32_fx( p_output_fx[n], output_frame, st_ivas->hMasa->hMasaLfeSynth->delayBuffer_syncDirAC_fx, st_ivas->hMasa->hMasaLfeSynth->delayBuffer_syncDirAC_size );
+ }
+ }
+ ELSE
+ {
+ Word16 q_output = 11;
+ move16();
+ IF( EQ_16( st_ivas->nSCE, 1 ) )
+ {
+ set32_fx( p_output_fx[0], 0, L_FRAME48k );
- IF( st_ivas->hOutSetup.separateChannelEnabled )
+ IF( NE_32( ( error = ivas_sce_dec_fx( st_ivas, 0, &p_output_fx[0], output_frame, nb_bits_metadata[0] ) ), IVAS_ERR_OK ) )
+ {
+ return error;
+ }
+ }
+ ELSE IF( EQ_16( st_ivas->nCPE, 1 ) )
{
- /* Decode the transport audio signals */
- Word16 q_output = 11;
- move16();
IF( NE_32( ( error = ivas_cpe_dec_fx( st_ivas, 0, &p_output_fx[0], output_frame, nb_bits_metadata[0] ) ), IVAS_ERR_OK ) )
{
@@ -1323,259 +1354,338 @@ ivas_error ivas_jbm_dec_tc_fx(
Scale_sig32( p_output_fx[0], output_frame, sub( Q11, q_output ) ); // Q11
Scale_sig32( p_output_fx[1], output_frame, sub( Q11, q_output ) ); // Q11
}
+ }
+ }
- /* Identify the index of the separated channel, always LFE_CHANNEL-1 here */
- n = LFE_CHANNEL - 1;
- move16();
+ IF( st_ivas->sba_dirac_stereo_flag != 0 ) /* use the flag to trigger the DFT upmix */
+ {
+ Word16 q;
+ hCPE = st_ivas->hCPE[0];
+ hSCE = st_ivas->hSCE[0];
+ s = 0;
+ move16();
+ FOR( i = 0; i < 2; i++ )
+ {
+ s = s_min( s, L_norm_arr( p_output_fx[i], L_FRAME48k ) - 11 /* Guard bits */ );
+ }
+ FOR( i = 0; i < 2; i++ )
+ {
+ Scale_sig32( p_output_fx[i], L_FRAME48k, s ); // Q(11+s)
+ }
- /* Decode the separated channel to output[n] to be combined with the synthesized channels */
+ hCPE->hStereoDft->q_dft = add( Q11, s );
+ move16();
+ IF( EQ_16( hCPE->hStereoDft->first_frame, 1 ) )
+ {
+ hCPE->hStereoDft->q_smoothed_nrg = Q6; // hCPE->hStereoDft->q_dft;
+ hCPE->hStereoDft->q_ap_delay_mem_fx = hCPE->hStereoDft->q_dft;
- set32_fx( p_output_fx[n], 0, L_FRAME48k );
+ move16();
+ move16();
+ }
- IF( NE_32( ( error = ivas_sce_dec_fx( st_ivas, 0, &p_output_fx[n], output_frame, 0 ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
- test();
- test();
- test();
- test();
- test();
- test();
- test();
- /* Delay the separated channel to sync with CLDFB delay of the DirAC synthesis, and synthesize the LFE signal. */
- IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_5_1 ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_7_1 ) ||
- EQ_32( output_config, IVAS_AUDIO_CONFIG_5_1_4 ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_7_1_4 ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_5_1_2 ) || ( EQ_32( output_config, IVAS_AUDIO_CONFIG_LS_CUSTOM ) && st_ivas->hOutSetup.num_lfe > 0 ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
- {
- ivas_lfe_synth_with_filters_fx( st_ivas->hMasa->hMasaLfeSynth, p_output_fx, output_frame, n, LFE_CHANNEL );
- }
- ELSE IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_LS_CUSTOM ) && st_ivas->hOutSetup.num_lfe == 0 )
- {
- /* Delay the separated channel to sync with the DirAC rendering */
- delay_signal32_fx( p_output_fx[n], output_frame, st_ivas->hMasa->hMasaLfeSynth->delayBuffer_syncDirAC_fx, st_ivas->hMasa->hMasaLfeSynth->delayBuffer_syncDirAC_size );
- }
+ q = hCPE->hStereoDft->q_dft;
+ move16();
+
+ scale_sig32( hCPE->input_mem_BPF_fx[0], STEREO_DFT32MS_OVL_16k, sub( hCPE->hStereoDft->q_dft, Q11 ) );
+ FOR( i = 0; i < CPE_CHANNELS; ++i )
+ {
+ scale_sig32( hCPE->input_mem_LB_fx[i], STEREO_DFT32MS_OVL_16k, sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
+ scale_sig32( hCPE->input_mem_fx[i], NS2SA_FX2( hCPE->hCoreCoder[0]->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
}
- ELSE
+
+ IF( hCPE->hCoreCoder[0] != NULL )
{
- Word16 q_output = 11;
+ Copy_Scale_sig_16_32_no_sat( hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx, hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, L_FRAME32k, q - hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda_LB ); // q
+ Copy_Scale_sig_16_32_no_sat( hCPE->hCoreCoder[0]->hHQ_core->old_out_fx, hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, L_FRAME48k, q - hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda ); // q
+ hCPE->hCoreCoder[0]->hHQ_core->Q_old_out_fx32 = q;
move16();
- IF( EQ_16( st_ivas->nSCE, 1 ) )
- {
- set32_fx( p_output_fx[0], 0, L_FRAME48k );
-
- IF( NE_32( ( error = ivas_sce_dec_fx( st_ivas, 0, &p_output_fx[0], output_frame, nb_bits_metadata[0] ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
- }
- ELSE IF( EQ_16( st_ivas->nCPE, 1 ) )
- {
-
- IF( NE_32( ( error = ivas_cpe_dec_fx( st_ivas, 0, &p_output_fx[0], output_frame, nb_bits_metadata[0] ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
- IF( NE_16( q_output, Q11 ) )
- {
- Scale_sig32( p_output_fx[0], output_frame, sub( Q11, q_output ) ); // Q11
- Scale_sig32( p_output_fx[1], output_frame, sub( Q11, q_output ) ); // Q11
- }
- }
}
-
- IF( st_ivas->sba_dirac_stereo_flag != 0 ) /* use the flag to trigger the DFT upmix */
+ IF( hCPE->hStereoDft != NULL )
{
- Word16 q;
- hCPE = st_ivas->hCPE[0];
- hSCE = st_ivas->hSCE[0];
- s = 0;
+ scale_sig32( hCPE->hStereoDft->buff_LBTCX_mem_fx, NS2SA( 16000, STEREO_DFT32MS_OVL_NS ), sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
+ scale_sig32( hCPE->hStereoDft->ap_delay_mem_fx, NS2SA( 16000, DELAY_BWE_TOTAL_NS ), sub( hCPE->hStereoDft->q_dft, hCPE->hStereoDft->q_ap_fade_mem_fx ) ); // q_dft
+ hCPE->hStereoDft->q_ap_fade_mem_fx = hCPE->hStereoDft->q_dft;
move16();
- FOR( i = 0; i < 2; i++ )
- {
- s = s_min( s, L_norm_arr( p_output_fx[i], L_FRAME48k ) - 11 /* Guard bits */ );
- }
- FOR( i = 0; i < 2; i++ )
- {
- Scale_sig32( p_output_fx[i], L_FRAME48k, s ); // Q(11+s)
- }
-
- hCPE->hStereoDft->q_dft = add( Q11, s );
+ }
+ IF( st_ivas->hSpar != NULL )
+ {
+ st_ivas->hSpar->hMdDec->Q_mixer_mat = 30;
move16();
- IF( EQ_16( hCPE->hStereoDft->first_frame, 1 ) )
- {
- hCPE->hStereoDft->q_smoothed_nrg = Q6; // hCPE->hStereoDft->q_dft;
- hCPE->hStereoDft->q_ap_delay_mem_fx = hCPE->hStereoDft->q_dft;
-
- move16();
- move16();
- }
+ }
- q = hCPE->hStereoDft->q_dft;
+ IF( hSCE != NULL )
+ {
+ Scale_sig32( &hSCE->save_hb_synth_fx[0], extract_l( Mpy_32_32( hCPE->hCoreCoder[0]->output_Fs, ONE_BY_FRAMES_PER_SEC_Q31 ) ), hCPE->hStereoDft->q_dft - hSCE->q_save_hb_synth_fx ); // q_dft
+ hSCE->q_save_hb_synth_fx = hCPE->hStereoDft->q_dft;
move16();
+ Scale_sig32( &hSCE->save_synth_fx[0], extract_l( Mpy_32_32( hCPE->hCoreCoder[0]->output_Fs, ONE_BY_FRAMES_PER_SEC_Q31 ) ), hCPE->hStereoDft->q_dft - hSCE->q_save_synth_fx ); // q_dft
+ hSCE->q_save_synth_fx = hCPE->hStereoDft->q_dft;
+ move16();
+ }
+ FOR( ii = 0; ii < CPE_CHANNELS; ii++ )
+ {
+ scale_sig32( hCPE->output_mem_fx[ii], NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( hCPE->hStereoDft->q_dft, hCPE->q_output_mem_fx[ii] ) ); // q_dft
+ hCPE->q_output_mem_fx[ii] = hCPE->hStereoDft->q_dft;
+ move16();
+ }
+ FOR( i = 0; i < CPE_CHANNELS; i++ )
+ Scale_sig32( hCPE->prev_synth_fx[i], NS2SA_FX2( output_Fs, IVAS_DEC_DELAY_NS - STEREO_DFT32MS_OVL_NS ), sub( hCPE->q_prev_synth_fx, Q11 ) ); // q_prev_synth_fx
+ ivas_sba_dirac_stereo_dec_fx( st_ivas, p_output_fx, output_frame, 1 );
+ FOR( i = 0; i < 2; i++ )
+ {
+ Scale_sig32( p_output_fx[i], L_FRAME48k, negate( s ) );
+ }
+ FOR( i = 0; i < CPE_CHANNELS; i++ )
+ Scale_sig32( hCPE->prev_synth_fx[i], NS2SA_FX2( output_Fs, IVAS_DEC_DELAY_NS - STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->q_prev_synth_fx ) ); // Q11
- scale_sig32( hCPE->input_mem_BPF_fx[0], STEREO_DFT32MS_OVL_16k, sub( hCPE->hStereoDft->q_dft, Q11 ) );
- FOR( i = 0; i < CPE_CHANNELS; ++i )
- {
- scale_sig32( hCPE->input_mem_LB_fx[i], STEREO_DFT32MS_OVL_16k, sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
- scale_sig32( hCPE->input_mem_fx[i], NS2SA_FX2( hCPE->hCoreCoder[0]->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
- }
-
- IF( hCPE->hCoreCoder[0] != NULL )
- {
- Copy_Scale_sig_16_32_no_sat( hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx, hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, L_FRAME32k, q - hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda_LB ); // q
- Copy_Scale_sig_16_32_no_sat( hCPE->hCoreCoder[0]->hHQ_core->old_out_fx, hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, L_FRAME48k, q - hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda ); // q
- hCPE->hCoreCoder[0]->hHQ_core->Q_old_out_fx32 = q;
- move16();
- }
- IF( hCPE->hStereoDft != NULL )
- {
- scale_sig32( hCPE->hStereoDft->buff_LBTCX_mem_fx, NS2SA( 16000, STEREO_DFT32MS_OVL_NS ), sub( hCPE->hStereoDft->q_dft, Q11 ) ); // q_dft
- scale_sig32( hCPE->hStereoDft->ap_delay_mem_fx, NS2SA( 16000, DELAY_BWE_TOTAL_NS ), sub( hCPE->hStereoDft->q_dft, hCPE->hStereoDft->q_ap_fade_mem_fx ) ); // q_dft
- hCPE->hStereoDft->q_ap_fade_mem_fx = hCPE->hStereoDft->q_dft;
- move16();
- }
- IF( st_ivas->hSpar != NULL )
- {
- st_ivas->hSpar->hMdDec->Q_mixer_mat = 30;
- move16();
- }
+ scale_sig32( hCPE->input_mem_BPF_fx[0], STEREO_DFT32MS_OVL_16k, sub( Q11, hCPE->hStereoDft->q_dft ) );
+ FOR( i = 0; i < CPE_CHANNELS; ++i )
+ {
+ scale_sig32( hCPE->input_mem_LB_fx[i], STEREO_DFT32MS_OVL_16k, sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
+ scale_sig32( hCPE->input_mem_fx[i], NS2SA_FX2( hCPE->hCoreCoder[0]->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
+ }
- IF( hSCE != NULL )
- {
- Scale_sig32( &hSCE->save_hb_synth_fx[0], extract_l( Mpy_32_32( hCPE->hCoreCoder[0]->output_Fs, ONE_BY_FRAMES_PER_SEC_Q31 ) ), hCPE->hStereoDft->q_dft - hSCE->q_save_hb_synth_fx ); // q_dft
- hSCE->q_save_hb_synth_fx = hCPE->hStereoDft->q_dft;
- move16();
- Scale_sig32( &hSCE->save_synth_fx[0], extract_l( Mpy_32_32( hCPE->hCoreCoder[0]->output_Fs, ONE_BY_FRAMES_PER_SEC_Q31 ) ), hCPE->hStereoDft->q_dft - hSCE->q_save_synth_fx ); // q_dft
- hSCE->q_save_synth_fx = hCPE->hStereoDft->q_dft;
- move16();
- }
+ IF( hCPE->hCoreCoder[0] != NULL )
+ {
+ Copy_Scale_sig_32_16( hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx, L_FRAME32k, sub( hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda_LB, q ) ); // Q_old_wtda_LB
+ Copy_Scale_sig_32_16( hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, hCPE->hCoreCoder[0]->hHQ_core->old_out_fx, L_FRAME48k, sub( hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda, q ) ); // Q_old_wtda
+ }
+ IF( hCPE->hStereoDft != NULL )
+ {
+ scale_sig32( hCPE->hStereoDft->buff_LBTCX_mem_fx, NS2SA_FX2( 16000, STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
+ scale_sig32( hCPE->hStereoDft->ap_delay_mem_fx, NS2SA_FX2( 16000, DELAY_BWE_TOTAL_NS ), sub( Q11, hCPE->hStereoDft->q_ap_fade_mem_fx ) ); // Q11
+ hCPE->hStereoDft->q_ap_fade_mem_fx = Q11;
+ move16();
+ }
+ IF( st_ivas->hSpar != NULL )
+ {
FOR( ii = 0; ii < CPE_CHANNELS; ii++ )
{
- scale_sig32( hCPE->output_mem_fx[ii], NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( hCPE->hStereoDft->q_dft, hCPE->q_output_mem_fx[ii] ) ); // q_dft
- hCPE->q_output_mem_fx[ii] = hCPE->hStereoDft->q_dft;
- move16();
- }
- FOR( i = 0; i < CPE_CHANNELS; i++ )
- Scale_sig32( hCPE->prev_synth_fx[i], NS2SA_FX2( output_Fs, IVAS_DEC_DELAY_NS - STEREO_DFT32MS_OVL_NS ), sub( hCPE->q_prev_synth_fx, Q11 ) ); // q_prev_synth_fx
- ivas_sba_dirac_stereo_dec_fx( st_ivas, p_output_fx, output_frame, 1 );
- FOR( i = 0; i < 2; i++ )
- {
- Scale_sig32( p_output_fx[i], L_FRAME48k, negate( s ) );
- }
- FOR( i = 0; i < CPE_CHANNELS; i++ )
- Scale_sig32( hCPE->prev_synth_fx[i], NS2SA_FX2( output_Fs, IVAS_DEC_DELAY_NS - STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->q_prev_synth_fx ) ); // Q11
-
- scale_sig32( hCPE->input_mem_BPF_fx[0], STEREO_DFT32MS_OVL_16k, sub( Q11, hCPE->hStereoDft->q_dft ) );
- FOR( i = 0; i < CPE_CHANNELS; ++i )
- {
- scale_sig32( hCPE->input_mem_LB_fx[i], STEREO_DFT32MS_OVL_16k, sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
- scale_sig32( hCPE->input_mem_fx[i], NS2SA_FX2( hCPE->hCoreCoder[0]->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
- }
-
- IF( hCPE->hCoreCoder[0] != NULL )
- {
- Copy_Scale_sig_32_16( hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx, L_FRAME32k, sub( hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda_LB, q ) ); // Q_old_wtda_LB
- Copy_Scale_sig_32_16( hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, hCPE->hCoreCoder[0]->hHQ_core->old_out_fx, L_FRAME48k, sub( hCPE->hCoreCoder[0]->hHQ_core->Q_old_wtda, q ) ); // Q_old_wtda
- }
- IF( hCPE->hStereoDft != NULL )
- {
- scale_sig32( hCPE->hStereoDft->buff_LBTCX_mem_fx, NS2SA_FX2( 16000, STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
- scale_sig32( hCPE->hStereoDft->ap_delay_mem_fx, NS2SA_FX2( 16000, DELAY_BWE_TOTAL_NS ), sub( Q11, hCPE->hStereoDft->q_ap_fade_mem_fx ) ); // Q11
- hCPE->hStereoDft->q_ap_fade_mem_fx = Q11;
+ scale_sig32( hCPE->output_mem_fx[ii], NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
+ hCPE->q_output_mem_fx[ii] = Q11;
move16();
}
- IF( st_ivas->hSpar != NULL )
- {
- FOR( ii = 0; ii < CPE_CHANNELS; ii++ )
- {
- scale_sig32( hCPE->output_mem_fx[ii], NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, STEREO_DFT32MS_OVL_NS ), sub( Q11, hCPE->hStereoDft->q_dft ) ); // Q11
- hCPE->q_output_mem_fx[ii] = Q11;
- move16();
- }
- }
}
+ }
- /* HP filtering */
- FOR( n = 0; n < getNumChanSynthesis( st_ivas ); n++ )
- {
-#ifdef HP20_FIX32_RECODING
- hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#else
- hp20_fx_32( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
-#endif
- }
+ /* HP filtering */
+ FOR( n = 0; n < getNumChanSynthesis( st_ivas ); n++ )
+ {
+ hp20_fx_32_opt( p_output_fx[n], output_frame, st_ivas->mem_hp20_out_fx[n], output_Fs );
+ }
- IF( EQ_32( st_ivas->renderer_type, RENDERER_MCMASA_MONO_STEREO ) )
- {
- ivas_mono_stereo_downmix_mcmasa_fx( st_ivas, p_output_fx, output_frame );
- }
+ IF( EQ_32( st_ivas->renderer_type, RENDERER_MCMASA_MONO_STEREO ) )
+ {
+ ivas_mono_stereo_downmix_mcmasa_fx( st_ivas, p_output_fx, output_frame );
}
}
+}
- /*----------------------------------------------------------------*
- * Write IVAS transport channels
- *----------------------------------------------------------------*/
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
+/*----------------------------------------------------------------*
+ * Write IVAS transport channels
+ *----------------------------------------------------------------*/
- IF( EQ_16( st_ivas->hDecoderConfig->Opt_tsm, 1 ) )
+#ifdef LIB_DEC_REVISION
+IF( st_ivas->hDecoderConfig->Opt_tsm == 0 )
+#else
+IF( EQ_16( st_ivas->hDecoderConfig->Opt_tsm, 1 ) )
+{
+ ivas_syn_output_f_fx( p_output_fx, output_frame, st_ivas->hTcBuffer->nchan_transport_jbm, data_fx );
+}
+ELSE
+#endif
+{
+ /* directly copy to tc buffers */
+ /*note : the q of cldfb buffers (imag/real) are needed to be Q_p_output - 5 here 6 is taken for that*/
+ ivas_jbm_dec_copy_tc_no_tsm_fx( st_ivas, p_output_fx, output_frame );
+}
+#endif
+/*----------------------------------------------------------------*
+ * Common updates
+ *----------------------------------------------------------------*/
+
+IF( !st_ivas->bfi ) /* do not update if first frame(s) are lost or NO_DATA */
+{
+ st_ivas->hDecoderConfig->last_ivas_total_brate = ivas_total_brate;
+ move32();
+ IF( LE_32( ivas_total_brate, IVAS_SID_5k2 ) )
{
- ivas_syn_output_f_fx( p_output_fx, output_frame, st_ivas->hTcBuffer->nchan_transport_jbm, data_fx );
+ st_ivas->last_active_ivas_total_brate = st_ivas->last_active_ivas_total_brate;
+ move32();
}
ELSE
{
- /* directly copy to tc buffers */
- /*note : the q of cldfb buffers (imag/real) are needed to be Q_p_output - 5 here 6 is taken for that*/
- ivas_jbm_dec_copy_tc_no_tsm_fx( st_ivas, p_output_fx, output_frame );
+ st_ivas->last_active_ivas_total_brate = ivas_total_brate;
+ move32();
}
+}
+
+test();
+test();
+if ( LT_16( st_ivas->ini_frame, MAX_FRAME_COUNTER ) && !( st_ivas->bfi && st_ivas->ini_frame == 0 ) ) /* keep "st_ivas->ini_frame = 0" until first good received frame */
+{
+ st_ivas->ini_frame = add( st_ivas->ini_frame, 1 );
+ move16();
+}
+
+test();
+test();
+if ( LT_16( st_ivas->ini_active_frame, MAX_FRAME_COUNTER ) && !( st_ivas->bfi && st_ivas->ini_frame == 0 ) && GT_32( ivas_total_brate, IVAS_SID_5k2 ) ) /* needed in MASA decoder in case the first active frame is BFI, and there were SID-frames decoded before */
+{
+ st_ivas->ini_active_frame = add( st_ivas->ini_active_frame, 1 );
+ move16();
+}
+
+st_ivas->last_ivas_format = st_ivas->ivas_format;
+move32();
+pop_wmops();
+
+return IVAS_ERR_OK;
+}
- /*----------------------------------------------------------------*
- * Common updates
- *----------------------------------------------------------------*/
- IF( !st_ivas->bfi ) /* do not update if first frame(s) are lost or NO_DATA */
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+
+/*--------------------------------------------------------------------------*
+ * ivas_dec_feed_tc_to_renderer()
+ *
+ * Feed decoded transport channels to the IVAS renderer routine
+ * + digest TC channels in ParamISM and ParamMC
+ *--------------------------------------------------------------------------*/
+
+void ivas_jbm_dec_feed_tc_to_renderer_fx(
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
+ const Word16 nSamplesForRendering, /* i : number of TC samples available for rendering */
+ Word16 *nSamplesResidual, /* o : number of samples not fitting into the renderer grid and buffer for the next call*/
+ Word32 *data /* i : transport channels */
+)
+{
+ Word32 data_fx[MAX_CLDFB_DIGEST_CHANNELS][MAX_JBM_L_FRAME48k]; /* buffer for transport channels that will be directly converted with the CLDFB */
+ Word32 *p_data_fx[MAX_CLDFB_DIGEST_CHANNELS];
+ Word16 n, n_render_timeslots, n_ch_cldfb;
+ Word16 ch;
+ DECODER_TC_BUFFER_HANDLE hTcBuffer;
+
+ hTcBuffer = st_ivas->hTcBuffer;
+ n_ch_cldfb = sub( hTcBuffer->nchan_transport_jbm, hTcBuffer->nchan_buffer_full );
+ move16();
+
+ hTcBuffer->q_tc_fx = Q11;
+ move16();
+
+ IF( st_ivas->hDecoderConfig->Opt_tsm )
{
- st_ivas->hDecoderConfig->last_ivas_total_brate = ivas_total_brate;
- move32();
- IF( LE_32( ivas_total_brate, IVAS_SID_5k2 ) )
+ Word16 n_samples_still_available, m;
+ Word16 n_ch_full_copy;
+ Word16 n_ch_res_copy;
+
+ FOR( n = 0; n < n_ch_cldfb; n++ )
{
- st_ivas->last_active_ivas_total_brate = st_ivas->last_active_ivas_total_brate;
- move32();
+ p_data_fx[n] = &data_fx[n][0];
}
- ELSE
+
+ n_samples_still_available = sub( hTcBuffer->n_samples_buffered, hTcBuffer->n_samples_rendered );
+ hTcBuffer->n_samples_buffered = add( add( n_samples_still_available, nSamplesForRendering ), hTcBuffer->n_samples_discard );
+ hTcBuffer->n_samples_available = i_mult( hTcBuffer->n_samples_granularity, idiv1616( hTcBuffer->n_samples_buffered, hTcBuffer->n_samples_granularity ) );
+ *nSamplesResidual = sub( hTcBuffer->n_samples_buffered, hTcBuffer->n_samples_available );
+ move16();
+ move16();
+ move16();
+ n_ch_full_copy = s_min( hTcBuffer->nchan_transport_jbm, hTcBuffer->nchan_buffer_full );
+ n_ch_res_copy = sub( hTcBuffer->nchan_transport_jbm, hTcBuffer->nchan_buffer_full );
+
+ FOR( ch = 0; ch < n_ch_full_copy; ch++ )
{
- st_ivas->last_active_ivas_total_brate = ivas_total_brate;
- move32();
+ set32_fx( hTcBuffer->tc_fx[ch], 0, hTcBuffer->n_samples_discard );
+ Copy32( hTcBuffer->tc_fx[ch] + hTcBuffer->n_samples_rendered, hTcBuffer->tc_fx[ch] + hTcBuffer->n_samples_discard, n_samples_still_available );
+ FOR( m = 0; m < nSamplesForRendering; m++ )
+ {
+ hTcBuffer->tc_fx[ch][n_samples_still_available + hTcBuffer->n_samples_discard + m] = data[m * hTcBuffer->nchan_transport_jbm + ch];
+ move32();
+ }
}
- }
- test();
- test();
- if ( LT_16( st_ivas->ini_frame, MAX_FRAME_COUNTER ) && !( st_ivas->bfi && st_ivas->ini_frame == 0 ) ) /* keep "st_ivas->ini_frame = 0" until first good received frame */
+ IF( n_ch_res_copy > 0 )
+ {
+ FOR( ; ch < hTcBuffer->nchan_transport_jbm; ch++ )
+ {
+ Copy32( hTcBuffer->tc_fx[ch], p_data_fx[ch], n_samples_still_available );
+
+ FOR( m = 0; m < nSamplesForRendering; m++ )
+ {
+ p_data_fx[ch][n_samples_still_available + m] = data[m * hTcBuffer->nchan_transport_jbm + ch];
+ move32();
+ }
+ Copy32( p_data_fx[ch] + hTcBuffer->n_samples_available, hTcBuffer->tc_fx[ch], *nSamplesResidual );
+ }
+ }
+
+ n_render_timeslots = idiv1616( st_ivas->hTcBuffer->n_samples_available, st_ivas->hTcBuffer->n_samples_granularity );
+ }
+ ELSE
{
- st_ivas->ini_frame = add( st_ivas->ini_frame, 1 );
+ FOR( n = 0; n < n_ch_cldfb; n++ )
+ {
+ p_data_fx[n] = &st_ivas->p_output_fx[n][0];
+ move16();
+ }
+
+#ifdef FIX_NCHAN_BUFFERS
+ ch = ivas_get_nchan_buffers_dec_fx( st_ivas, st_ivas->sba_analysis_order, st_ivas->hDecoderConfig->ivas_total_brate );
+ FOR( n = 0; n < ch; n++ )
+#else
+ FOR( n = 0; n < ivas_get_nchan_buffers_dec_fx( st_ivas, st_ivas->sba_analysis_order, st_ivas->hDecoderConfig->ivas_total_brate ); n++ )
+#endif
+ {
+ hTcBuffer->tc_fx[n] = st_ivas->p_output_fx[n]; /* note: buffers needed in the TD decorellator */
+ move16();
+ }
+
+ hTcBuffer->n_samples_buffered = nSamplesForRendering;
+ hTcBuffer->n_samples_available = hTcBuffer->n_samples_buffered;
+ *nSamplesResidual = 0;
+ move16();
+ move16();
+ move16();
+
+ n_render_timeslots = DEFAULT_JBM_CLDFB_TIMESLOTS;
move16();
}
+ /* CLDFB analysis for ParamMC/ParamISM */
+ test();
+ test();
test();
test();
- if ( LT_16( st_ivas->ini_active_frame, MAX_FRAME_COUNTER ) && !( st_ivas->bfi && st_ivas->ini_frame == 0 ) && GT_32( ivas_total_brate, IVAS_SID_5k2 ) ) /* needed in MASA decoder in case the first active frame is BFI, and there were SID-frames decoded before */
+ test();
+ test();
+ IF( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) && EQ_32( st_ivas->ism_mode, ISM_MODE_PARAM ) && ( EQ_32( st_ivas->renderer_type, RENDERER_PARAM_ISM ) || EQ_32( st_ivas->renderer_type, RENDERER_SBA_LINEAR_ENC ) ) )
{
- st_ivas->ini_active_frame = add( st_ivas->ini_active_frame, 1 );
- move16();
+ ivas_param_ism_dec_digest_tc_fx( st_ivas, n_render_timeslots, p_data_fx, Q11 );
+ }
+ ELSE IF( EQ_32( st_ivas->ivas_format, MC_FORMAT ) && EQ_32( st_ivas->mc_mode, MC_MODE_PARAMMC ) && EQ_32( hTcBuffer->tc_buffer_mode, TC_BUFFER_MODE_RENDERER ) )
+ {
+ ivas_param_mc_dec_digest_tc_fx( st_ivas, (uint8_t) n_render_timeslots, p_data_fx, Q11 );
}
- st_ivas->last_ivas_format = st_ivas->ivas_format;
- move32();
- pop_wmops();
+ hTcBuffer->n_samples_rendered = 0;
+ move16();
+ hTcBuffer->subframes_rendered = 0;
+ move16();
- return IVAS_ERR_OK;
+ return;
}
+#else
/*--------------------------------------------------------------------------*
* ivas_jbm_dec_feed_tc_to_renderer()
*
* Feed decoded transport channels and metadata to the IVAS JBM renderer routine
*--------------------------------------------------------------------------*/
+
void ivas_jbm_dec_feed_tc_to_renderer_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
const Word16 nSamplesForRendering, /* i : number of TC samples available for rendering */
@@ -1598,7 +1708,7 @@ void ivas_jbm_dec_feed_tc_to_renderer_fx(
}
Word16 n, n_render_timeslots;
- push_wmops( "ivas_jbm_dec_feed_tc_to_rendererer" );
+ push_wmops( "ivas_jbm_dec_feed_tc_to_renderer" );
FOR( n = 0; n < MAX_CLDFB_DIGEST_CHANNELS; n++ )
{
p_data_f_fx[n] = &data_f_fx[n][0];
@@ -1619,288 +1729,23 @@ void ivas_jbm_dec_feed_tc_to_renderer_fx(
ELSE
{
*nSamplesResidual = 0;
- move16();
- }
- n_render_timeslots = idiv1616( st_ivas->hTcBuffer->n_samples_available, st_ivas->hTcBuffer->n_samples_granularity );
-
-#ifndef OBJ_EDITING_API
- test();
- IF( EQ_16( st_ivas->hTcBuffer->tc_buffer_mode, TC_BUFFER_MODE_BUFFER ) )
- {
- ivas_jbm_dec_td_renderers_adapt_subframes( st_ivas );
-
- test();
- test();
- test();
- IF( ( EQ_16( st_ivas->ivas_format, MASA_FORMAT ) || EQ_16( st_ivas->ivas_format, MASA_ISM_FORMAT ) ) && EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) && st_ivas->hDecoderConfig->Opt_tsm )
- {
- ivas_jbm_masa_sf_to_slot_map( st_ivas, n_render_timeslots );
- }
- }
- ELSE IF( EQ_16( st_ivas->ivas_format, STEREO_FORMAT ) )
- {
- ivas_jbm_dec_td_renderers_adapt_subframes( st_ivas );
- }
- ELSE
-#endif
- IF( EQ_16( st_ivas->ivas_format, ISM_FORMAT ) )
- {
- /* Rendering */
- IF( EQ_16( st_ivas->ism_mode, ISM_MODE_PARAM ) )
- {
- test();
-#ifndef OBJ_EDITING_API
- test();
- test();
- IF( EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) || EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) || EQ_16( st_ivas->renderer_type, RENDERER_STEREO_PARAMETRIC ) )
- {
- ivas_dirac_dec_set_md_map_fx( st_ivas, n_render_timeslots );
-
- ivas_param_ism_params_to_masa_param_mapping_fx( st_ivas );
- }
- ELSE
-#endif
- IF( EQ_16( st_ivas->renderer_type, RENDERER_PARAM_ISM ) || EQ_16( st_ivas->renderer_type, RENDERER_SBA_LINEAR_ENC ) )
- {
-
- ivas_param_ism_dec_digest_tc_fx( st_ivas, n_render_timeslots, p_data_f_fx, Q11 );
- }
- }
-#ifndef OBJ_EDITING_API
- ELSE /* ISM_MODE_DISC */
- {
- ivas_ism_dec_digest_tc_fx( st_ivas );
- }
-#endif
- }
-#ifndef OBJ_EDITING_API
- ELSE IF( EQ_16( st_ivas->ivas_format, SBA_FORMAT ) || EQ_16( st_ivas->ivas_format, MASA_FORMAT ) )
- {
- IF( st_ivas->hSCE[0] )
- {
- Word16 shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
- IF( LT_16( sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift ), 4 ) )
- {
- shift = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, 4 );
- }
- scale_sig32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN, shift ); // Q(31-cngNoiseLevelExp+shift)
- st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift );
- }
- ivas_sba_dec_digest_tc_fx( st_ivas, n_render_timeslots, st_ivas->hTcBuffer->n_samples_available );
- }
- ELSE IF( EQ_16( st_ivas->ivas_format, SBA_ISM_FORMAT ) )
- {
-
- IF( EQ_16( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
- {
- ivas_ism_dec_digest_tc_fx( st_ivas );
-
- test();
- test();
- test();
- test();
- /* delay the objects here for all renderers where it is needed */
- IF(
- (
- EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV ) ||
- EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) ||
- EQ_16( st_ivas->renderer_type, RENDERER_OSBA_AMBI ) ||
- EQ_16( st_ivas->renderer_type, RENDERER_OSBA_LS ) ||
- EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) ) &&
- ( NE_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) && NE_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ) )
- {
- FOR( n = 0; n < st_ivas->nchan_ism; n++ )
- {
- delay_signal32_fx( st_ivas->hTcBuffer->tc_fx[n], st_ivas->hTcBuffer->n_samples_available, st_ivas->hSbaIsmData->delayBuffer_fx[n], st_ivas->hSbaIsmData->delayBuffer_size );
- }
- }
-
- IF( !st_ivas->sba_dirac_stereo_flag )
- {
- IF( EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV ) )
- {
- Word16 temp, temp_e;
- temp = BASOP_Util_Divide1616_Scale( st_ivas->hTcBuffer->n_samples_granularity, st_ivas->hSpatParamRendCom->slot_size, &temp_e );
- n_render_timeslots = extract_l( L_shr( L_mult0( n_render_timeslots, temp ), sub( 15, temp_e ) ) );
- }
-
- IF( st_ivas->hSCE[0] )
- {
- Word16 shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
- if ( LT_16( sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift ), 4 ) )
- {
- shift = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, 4 );
- }
- scale_sig32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN, shift ); // Q(31-cngNoiseLevelExp+shift)
- st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift );
- }
- ivas_sba_dec_digest_tc_fx( st_ivas, n_render_timeslots, st_ivas->hTcBuffer->n_samples_available );
- }
- }
- ELSE
- {
- ivas_jbm_dec_td_renderers_adapt_subframes( st_ivas );
-
- IF( st_ivas->hSCE[0] )
- {
- Word16 shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
- if ( LT_16( sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift ), 4 ) )
- {
- shift = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, 4 );
- }
- scale_sig32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN, shift ); // Q(31-cngNoiseLevelExp+shift)
- st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift );
- }
- ivas_sba_dec_digest_tc_fx( st_ivas, n_render_timeslots, st_ivas->hTcBuffer->n_samples_available );
- }
- }
- ELSE IF( EQ_16( st_ivas->ivas_format, MASA_ISM_FORMAT ) )
- {
- test();
- IF( EQ_32( st_ivas->renderer_type, RENDERER_OMASA_MIX_EXT ) || EQ_32( st_ivas->renderer_type, RENDERER_OMASA_OBJECT_EXT ) )
- {
- ivas_jbm_dec_td_renderers_adapt_subframes( st_ivas );
- IF( st_ivas->hDecoderConfig->Opt_tsm )
- {
- ivas_jbm_masa_sf_to_slot_map( st_ivas, n_render_timeslots );
- }
- }
- ELSE
- {
- test();
- IF( EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) && EQ_16( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) )
- {
- n_render_timeslots = i_mult( n_render_timeslots, idiv1616( st_ivas->hTcBuffer->n_samples_granularity, st_ivas->hSpatParamRendCom->slot_size ) );
- }
-
- IF( st_ivas->hSCE[0] )
- {
- Word16 shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
- if ( LT_16( sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift ), 4 ) )
- {
- shift = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, 4 );
- }
- scale_sig32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN, shift ); // Q(31- (st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp - shift)
- st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift );
- move16();
- }
- ivas_sba_dec_digest_tc_fx( st_ivas, n_render_timeslots, st_ivas->hTcBuffer->n_samples_available );
-
- IF( EQ_16( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) )
- {
- ivas_ism_dec_digest_tc_fx( st_ivas );
- }
- }
-
- test();
- IF( EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) || EQ_16( st_ivas->renderer_type, RENDERER_DIRAC ) )
- {
- Word16 num_objects;
-
- /* Delay the signal to match CLDFB delay. Delay the whole buffer. */
- num_objects = 0;
- move16();
-
- test();
- test();
- IF( ( EQ_16( st_ivas->ism_mode, ISM_MASA_MODE_MASA_ONE_OBJ ) || EQ_16( st_ivas->ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) ) && NE_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) )
- {
- num_objects = 1;
- move16();
- }
- ELSE IF( EQ_16( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) )
- {
- num_objects = st_ivas->nchan_ism;
- move16();
- }
- FOR( n = 0; n < num_objects; n++ )
- {
- test();
- IF( EQ_16( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) && EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) )
- {
- v_multc_fixed_16( st_ivas->hTcBuffer->tc_fx[CPE_CHANNELS + n], OMASA_TDREND_MATCHING_GAIN_FX, st_ivas->hTcBuffer->tc_fx[CPE_CHANNELS + n], st_ivas->hTcBuffer->n_samples_available );
- }
- delay_signal32_fx( st_ivas->hTcBuffer->tc_fx[CPE_CHANNELS + n], st_ivas->hTcBuffer->n_samples_available, st_ivas->hMasaIsmData->delayBuffer_fx[n], st_ivas->hMasaIsmData->delayBuffer_size );
- }
- }
- }
- ELSE IF( EQ_16( st_ivas->ivas_format, MC_FORMAT ) )
- {
- IF( EQ_16( st_ivas->mc_mode, MC_MODE_MCT ) )
- {
- ivas_jbm_dec_td_renderers_adapt_subframes( st_ivas );
- }
- ELSE IF( EQ_16( st_ivas->mc_mode, MC_MODE_PARAMUPMIX ) )
- {
- ivas_mc_paramupmix_dec_digest_tc( st_ivas, (UWord8) n_render_timeslots, st_ivas->hTcBuffer->n_samples_available );
- }
- ELSE IF( EQ_16( st_ivas->mc_mode, MC_MODE_PARAMMC ) )
- {
-
- Word16 nchan_transport = st_ivas->nchan_transport;
- move16();
- Word16 nchan_out_transport = add( st_ivas->hTransSetup.nchan_out_woLFE, st_ivas->hTransSetup.num_lfe );
- Word16 nchan_out_cov;
- test();
- test();
- IF( EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV ) || EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) )
- {
- nchan_out_cov = add( st_ivas->hTransSetup.nchan_out_woLFE, st_ivas->hTransSetup.num_lfe );
- }
- ELSE IF( EQ_16( st_ivas->hParamMC->synthesis_conf, PARAM_MC_SYNTH_LS_CONV_CLDFB ) )
- {
- nchan_out_cov = nchan_out_transport;
- move16();
- }
- ELSE IF( EQ_16( st_ivas->hParamMC->synthesis_conf, PARAM_MC_SYNTH_LS_CONV_COV ) || EQ_16( st_ivas->hParamMC->synthesis_conf, PARAM_MC_SYNTH_MONO_STEREO ) )
- {
- nchan_out_cov = add( st_ivas->hOutSetup.nchan_out_woLFE, st_ivas->hOutSetup.num_lfe );
- }
- ELSE
- {
- nchan_out_cov = nchan_out_transport;
- move16();
- }
-
- scale_sig32( st_ivas->hParamMC->proto_matrix_int_fx, st_ivas->hParamMC->proto_matrix_int_len, -1 ); // Q(31-1)
- st_ivas->hParamMC->proto_matrix_int_e = 1;
- move16();
-
- ivas_param_mc_dec_digest_tc_fx( st_ivas, (UWord8) n_render_timeslots, (Word32 **) p_data_f_fx, Q11 );
-
- scale_sig32( st_ivas->hParamMC->proto_matrix_int_fx, st_ivas->hParamMC->proto_matrix_int_len, 1 ); // Q(31-1+1)
-
- Word16 shift;
- FOR( Word16 param_band_idx = 0; param_band_idx < st_ivas->hParamMC->num_param_bands_synth; param_band_idx++ )
- {
- shift = getScaleFactor32( st_ivas->hParamMC->h_output_synthesis_cov_state.cx_old_fx[param_band_idx], s_min( st_ivas->hParamMC->h_output_synthesis_cov_state.cx_old_len, nchan_transport * nchan_transport ) );
- scale_sig32( st_ivas->hParamMC->h_output_synthesis_cov_state.cx_old_fx[param_band_idx], s_min( st_ivas->hParamMC->h_output_synthesis_cov_state.cx_old_len, i_mult( nchan_transport, nchan_transport ) ), shift ); // Q(31-cx_old_e+shift)
- st_ivas->hParamMC->h_output_synthesis_cov_state.cx_old_e[param_band_idx] = sub( st_ivas->hParamMC->h_output_synthesis_cov_state.cx_old_e[param_band_idx], shift );
- move16();
-
- shift = getScaleFactor32( st_ivas->hParamMC->h_output_synthesis_cov_state.cy_old_fx[param_band_idx], nchan_out_cov * nchan_out_cov );
- scale_sig32( st_ivas->hParamMC->h_output_synthesis_cov_state.cy_old_fx[param_band_idx], i_mult( nchan_out_cov, nchan_out_cov ), shift ); // Q(31-cy_old_e+shift)
- st_ivas->hParamMC->h_output_synthesis_cov_state.cy_old_e[param_band_idx] = sub( st_ivas->hParamMC->h_output_synthesis_cov_state.cy_old_e[param_band_idx], shift );
- move16();
- }
- }
- ELSE IF( EQ_16( st_ivas->mc_mode, MC_MODE_MCMASA ) )
+ move16();
+ }
+ n_render_timeslots = idiv1616( st_ivas->hTcBuffer->n_samples_available, st_ivas->hTcBuffer->n_samples_granularity );
+
+ IF( EQ_16( st_ivas->ivas_format, ISM_FORMAT ) )
+ {
+ /* Rendering */
+ IF( EQ_16( st_ivas->ism_mode, ISM_MODE_PARAM ) )
{
- IF( st_ivas->hSCE[0] )
+ test();
+ IF( EQ_16( st_ivas->renderer_type, RENDERER_PARAM_ISM ) || EQ_16( st_ivas->renderer_type, RENDERER_SBA_LINEAR_ENC ) )
{
- Word16 shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
- if ( LT_16( sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift ), 4 ) )
- {
- shift = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, 4 );
- }
- scale_sig32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN, shift ); // Q(31-cngNoiseLevelExp+shift)
- st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift );
- move16();
+
+ ivas_param_ism_dec_digest_tc_fx( st_ivas, n_render_timeslots, p_data_f_fx, Q11 );
}
- ivas_sba_dec_digest_tc_fx( st_ivas, n_render_timeslots, st_ivas->hTcBuffer->n_samples_available );
}
}
-#else
ELSE IF( EQ_16( st_ivas->ivas_format, MC_FORMAT ) )
{
test();
@@ -1909,17 +1754,19 @@ void ivas_jbm_dec_feed_tc_to_renderer_fx(
ivas_param_mc_dec_digest_tc_fx( st_ivas, (UWord8) n_render_timeslots, (Word32 **) p_data_f_fx, Q11 );
}
}
-#endif
pop_wmops();
return;
}
+#endif
+
/*--------------------------------------------------------------------------*
* ivas_dec_render()
*
* Principal IVAS JBM rendering routine
*--------------------------------------------------------------------------*/
+
ivas_error ivas_jbm_dec_render_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
const UWord16 nSamplesAsked, /* i : number of samples wanted */
@@ -1940,7 +1787,9 @@ ivas_error ivas_jbm_dec_render_fx(
Word16 subframe_len, gd_bits, exp, nchan_in, i, j, ch;
const Word16 output_q_factor = Q11;
move16();
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom;
+#endif
Word16 nchan_out_syn_output;
push_wmops( "ivas_dec_render" );
@@ -1948,7 +1797,9 @@ ivas_error ivas_jbm_dec_render_fx(
* Initialization of local vars after struct has been set
*----------------------------------------------------------------*/
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
hSpatParamRendCom = st_ivas->hSpatParamRendCom;
+#endif
output_Fs = st_ivas->hDecoderConfig->output_Fs;
move32();
nchan_out = st_ivas->hDecoderConfig->nchan_out;
@@ -1964,28 +1815,36 @@ ivas_error ivas_jbm_dec_render_fx(
{
p_output_fx[n] = st_ivas->p_output_fx[n];
}
+
IF( !st_ivas->hDecoderConfig->Opt_tsm )
{
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
FOR( n = 0; n < st_ivas->hTcBuffer->nchan_buffer_full; n++ )
{
p_tc_fx[n] = &p_output_fx[n][st_ivas->hTcBuffer->n_samples_rendered];
}
-
+#endif
FOR( n = 0; n < MAX_TRANSPORT_CHANNELS + MAX_NUM_OBJECTS; n++ )
{
st_ivas->hTcBuffer->tc_fx[n] = st_ivas->p_output_fx[n];
}
}
+
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
ELSE
{
+#endif
FOR( n = 0; n < st_ivas->hTcBuffer->nchan_buffer_full; n++ )
{
p_tc_fx[n] = &st_ivas->hTcBuffer->tc_fx[n][st_ivas->hTcBuffer->n_samples_rendered];
}
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
}
+#endif
st_ivas->hTcBuffer->no_channels = st_ivas->hTcBuffer->nchan_buffer_full;
move16();
+
/*----------------------------------------------------------------*
* Update combined orientation access index
*----------------------------------------------------------------*/
@@ -2089,7 +1948,11 @@ ivas_error ivas_jbm_dec_render_fx(
}
}
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+ ivas_ism2sba_sf_fx( p_tc_fx, p_output_fx, st_ivas->hIsmRendererData, st_ivas->nchan_transport, *nSamplesRendered, st_ivas->hTcBuffer->n_samples_rendered, st_ivas->hIntSetup.ambisonics_order );
+#else
ivas_ism2sba_sf_fx( st_ivas->hTcBuffer->tc_fx, p_output_fx, st_ivas->hIsmRendererData, st_ivas->nchan_transport, *nSamplesRendered, st_ivas->hTcBuffer->n_samples_rendered, st_ivas->hIntSetup.ambisonics_order );
+#endif
Word16 sba_num_chans = imult1616( add( st_ivas->hIntSetup.ambisonics_order, 1 ), add( st_ivas->hIntSetup.ambisonics_order, 1 ) );
FOR( j = 0; j < sba_num_chans; j++ )
@@ -2256,44 +2119,7 @@ ivas_error ivas_jbm_dec_render_fx(
ivas_ism_render_sf_fx( st_ivas, st_ivas->renderer_type, p_output_fx, *nSamplesRendered );
/* add already rendered SBA part */
-#ifdef OBJ_EDITING_API
- test();
- IF( EQ_16( st_ivas->ivas_format, SBA_ISM_FORMAT ) && EQ_16( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
- {
- Word32 gain = st_ivas->hSbaIsmData->gain_bed_fx;
- test();
- // TODO: Enable gain editing feature (NE_32 ( gain, ONE_IN_Q_gain ) )
- IF( NE_32( gain, ONE_IN_Q31 ) && GT_32( gain, 0 ) )
- {
- FOR( n = 0; n < nchan_out; n++ )
- {
- FOR( i = 0; i < *nSamplesRendered; i++ )
- {
- Word32 tmp1 = Mpy_32_32( p_tc_fx[n + st_ivas->nchan_ism][i], gain ); // Q11 + Q30 - 32 = Q9
- tmp1 = L_shl( tmp1, 2 ); // Q9 --> Q11
- p_output_fx[n][i] = L_add_sat( p_output_fx[n][i], tmp1 ); // Q11
- }
- }
- }
- ELSE
- {
- FOR( n = 0; n < nchan_out; n++ )
- {
- FOR( n = 0; n < nchan_out; n++ )
- {
- FOR( i = 0; i < *nSamplesRendered; i++ )
- {
- p_output_fx[n][i] = L_add_sat( p_output_fx[n][i], p_tc_fx[n + st_ivas->nchan_ism][i] ); // Q11
- }
- }
- }
- }
- }
- ELSE
-#endif
- {
- ivas_osba_stereo_add_channels_fx( p_tc_fx, p_output_fx, ONE_IN_Q11, nchan_out, st_ivas->nchan_ism, *nSamplesRendered );
- }
+ ivas_osba_stereo_add_channels_fx( p_tc_fx, p_output_fx, st_ivas->hSbaIsmData->gain_bed_fx, nchan_out, st_ivas->nchan_ism, st_ivas->ism_mode, *nSamplesRendered );
}
ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_OSBA_AMBI ) || EQ_32( st_ivas->renderer_type, RENDERER_OSBA_LS ) || EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) )
{
@@ -2302,7 +2128,7 @@ ivas_error ivas_jbm_dec_render_fx(
return error;
}
}
- ELSE IF( EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) ) /*EXT output = individual objects + HOA3*/
+ ELSE IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) ) /*EXT output = individual objects + HOA3*/
{
IF( NE_32( ( error = ivas_sba_dec_render_fx( st_ivas, nSamplesAskedLocal, nSamplesRendered, nSamplesAvailableNext, &p_output_fx[st_ivas->nchan_ism] ) ), IVAS_ERR_OK ) )
{
@@ -2311,7 +2137,11 @@ ivas_error ivas_jbm_dec_render_fx(
FOR( n = 0; n < st_ivas->nchan_ism; n++ )
{
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+ Copy32( p_tc_fx[n], p_output_fx[n], *nSamplesRendered );
+#else
Copy32( st_ivas->hTcBuffer->tc_fx[n] + st_ivas->hTcBuffer->n_samples_rendered, p_output_fx[n], *nSamplesRendered );
+#endif
}
}
ELSE
@@ -2325,6 +2155,7 @@ ivas_error ivas_jbm_dec_render_fx(
ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) || EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) )
{
ivas_dirac_dec_binaural_render_fx( st_ivas, nSamplesAskedLocal, nSamplesRendered, nSamplesAvailableNext, nchan_remapped, p_output_fx );
+
FOR( n = 0; n < st_ivas->hDecoderConfig->nchan_out; n++ )
{
scale_sig32( p_output_fx[n], *nSamplesRendered, 1 );
@@ -2337,7 +2168,7 @@ ivas_error ivas_jbm_dec_render_fx(
return error;
}
- IF( EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
+ IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
{
FOR( n = st_ivas->hIntSetup.nchan_out_woLFE - 1; n >= 0; n-- )
{
@@ -2356,12 +2187,12 @@ ivas_error ivas_jbm_dec_render_fx(
}
ELSE IF( EQ_32( st_ivas->ivas_format, MC_FORMAT ) )
{
-
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
FOR( n = 0; n < st_ivas->hTcBuffer->nchan_buffer_full; n++ )
{
p_tc_fx[n] = &st_ivas->hTcBuffer->tc_fx[n][st_ivas->hTcBuffer->n_samples_rendered];
}
-
+#endif
IF( EQ_32( st_ivas->mc_mode, MC_MODE_MCT ) )
{
Word16 crendInPlaceRotation = FALSE;
@@ -2404,10 +2235,20 @@ ivas_error ivas_jbm_dec_render_fx(
*st_ivas->hCrendWrapper->p_io_qfactor = exp;
move16();
- FOR( i = 0; i < nchan_in; i++ )
+ IF( crendInPlaceRotation )
{
- scale_sig32( p_output_fx[i], *nSamplesRendered, negate( sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ) ); // Q = *st_ivas->hCrendWrapper->p_io_qfactor
- IF( st_ivas->hDecoderConfig->Opt_tsm )
+ FOR( i = 0; i < nchan_in; i++ )
+ {
+ scale_sig32( p_output_fx[i], *nSamplesRendered, negate( sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ) ); // Q = *st_ivas->hCrendWrapper->p_io_qfactor
+ IF( st_ivas->hDecoderConfig->Opt_tsm )
+ {
+ scale_sig32( p_tc_fx[i], *nSamplesRendered, negate( sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ) ); // Q = *st_ivas->hCrendWrapper->p_io_qfactor
+ }
+ }
+ }
+ ELSE
+ {
+ FOR( i = 0; i < nchan_in; i++ )
{
scale_sig32( p_tc_fx[i], *nSamplesRendered, negate( sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ) ); // Q = *st_ivas->hCrendWrapper->p_io_qfactor
}
@@ -2445,13 +2286,30 @@ ivas_error ivas_jbm_dec_render_fx(
ivas_binaural_add_LFE_fx( st_ivas, *nSamplesRendered, p_tc_fx, p_output_fx );
}
- FOR( i = 0; i < nchan_in; i++ )
+ IF( crendInPlaceRotation )
+ {
+ n = nchan_in;
+ }
+ ELSE
+ {
+ n = nchan_out;
+ }
+ move16();
+
+ FOR( i = 0; i < n; i++ )
{
scale_sig32( p_output_fx[i], *nSamplesRendered, sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ); // Q11
- IF( st_ivas->hDecoderConfig->Opt_tsm )
- {
- scale_sig32( p_tc_fx[i], *nSamplesRendered, sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ); // Q11
- }
+ }
+
+ IF( st_ivas->hDecoderConfig->Opt_tsm && crendInPlaceRotation )
+ {
+ n = 0;
+ move16();
+ }
+
+ FOR( i = n; i < nchan_in; i++ )
+ {
+ scale_sig32( p_tc_fx[i], *nSamplesRendered, sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ); // Q11
}
}
ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_MC ) )
@@ -2487,7 +2345,7 @@ ivas_error ivas_jbm_dec_render_fx(
}
ELSE IF( EQ_32( st_ivas->mc_mode, MC_MODE_PARAMUPMIX ) )
{
- ivas_mc_paramupmix_dec_render( st_ivas, nSamplesAskedLocal, nSamplesRendered, nSamplesAvailableNext, p_tc_fx, p_output_fx );
+ ivas_mc_paramupmix_dec_render_fx( st_ivas, nSamplesAskedLocal, nSamplesRendered, nSamplesAvailableNext, p_tc_fx, p_output_fx );
test();
test();
@@ -2616,7 +2474,9 @@ ivas_error ivas_jbm_dec_render_fx(
}
ELSE IF( EQ_32( st_ivas->mc_mode, MC_MODE_MCMASA ) )
{
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
Word16 offset = imult1616( hSpatParamRendCom->slots_rendered, hSpatParamRendCom->slot_size );
+#endif
nchan_remapped = st_ivas->nchan_transport;
move16();
@@ -2639,7 +2499,11 @@ ivas_error ivas_jbm_dec_render_fx(
/* we still need to copy the separate channel if available */
IF( st_ivas->hOutSetup.separateChannelEnabled )
{
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+ Copy32( p_tc_fx[LFE_CHANNEL - 1], p_output_fx[st_ivas->hOutSetup.separateChannelIndex], *nSamplesRendered );
+#else
Copy32( st_ivas->hTcBuffer->tc_fx[LFE_CHANNEL - 1] + offset, p_output_fx[st_ivas->hOutSetup.separateChannelIndex], *nSamplesRendered );
+#endif
}
ivas_mc2sba_fx( st_ivas->hIntSetup, p_output_fx, p_output_fx, *nSamplesRendered, st_ivas->hOutSetup.ambisonics_order, 0 );
@@ -2667,13 +2531,22 @@ ivas_error ivas_jbm_dec_render_fx(
EQ_32( output_config, IVAS_AUDIO_CONFIG_5_1_4 ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_7_1_4 ) ||
EQ_32( output_config, IVAS_AUDIO_CONFIG_5_1_2 ) || ( EQ_32( output_config, IVAS_AUDIO_CONFIG_LS_CUSTOM ) && GT_16( st_ivas->hOutSetup.num_lfe, 0 ) ) )
{
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+ Copy32( p_tc_fx[LFE_CHANNEL], p_output_fx[LFE_CHANNEL], *nSamplesRendered );
+ Copy32( p_tc_fx[LFE_CHANNEL - 1], p_output_fx[st_ivas->hOutSetup.separateChannelIndex], *nSamplesRendered );
+#else
Copy32( st_ivas->hTcBuffer->tc_fx[LFE_CHANNEL] + offset, p_output_fx[LFE_CHANNEL], *nSamplesRendered );
Copy32( st_ivas->hTcBuffer->tc_fx[LFE_CHANNEL - 1] + offset, p_output_fx[st_ivas->hOutSetup.separateChannelIndex], *nSamplesRendered );
+#endif
}
ELSE IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_LS_CUSTOM ) && st_ivas->hOutSetup.num_lfe == 0 )
{
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+ Copy32( p_tc_fx[LFE_CHANNEL - 1], p_output_fx[st_ivas->hOutSetup.separateChannelIndex], *nSamplesRendered );
+#else
/* Delay the separated channel to sync with the DirAC rendering */
Copy32( st_ivas->hTcBuffer->tc_fx[LFE_CHANNEL - 1] + offset, p_output_fx[st_ivas->hOutSetup.separateChannelIndex], *nSamplesRendered );
+#endif
}
}
}
@@ -2889,6 +2762,7 @@ ivas_error ivas_jbm_dec_flush_renderer_fx(
{
return error;
}
+
IF( NE_32( ( error = getAudioConfigNumChannels( st_ivas->hOutSetup.output_config, &nchan_out ) ), IVAS_ERR_OK ) )
{
return error;
@@ -2911,6 +2785,7 @@ ivas_error ivas_jbm_dec_flush_renderer_fx(
{
return error;
}
+
ivas_binaural_add_LFE_fx( st_ivas, *nSamplesRendered, st_ivas->hTcBuffer->tc_fx, p_output_fx );
}
ELSE
@@ -2979,120 +2854,112 @@ ivas_error ivas_jbm_dec_flush_renderer_fx(
#endif
}
}
- ELSE IF( EQ_16( st_ivas->ivas_format, SBA_ISM_FORMAT ) ){
-#ifdef NONBE_FIX_1297_SPAR_JBM_MEM_SAN
- IF( EQ_32( ism_mode_old, ISM_SBA_MODE_DISC ) ){
-#endif
- Word32 * tc_local_fx[MAX_TRANSPORT_CHANNELS];
- Word16 last_spar_md_idx;
- Word16 last_dirac_md_idx;
- UWord16 nSamplesAvailableNext;
-#ifdef NONBE_FIX_1297_SPAR_JBM_MEM_SAN
- ISM_MODE ism_mode_orig;
- RENDERER_TYPE renderer_type_orig;
- Word32 ivas_total_brate;
-
- ivas_total_brate = st_ivas->hDecoderConfig->ivas_total_brate;
- renderer_type_orig = st_ivas->renderer_type;
- ism_mode_orig = st_ivas->ism_mode;
-
- /* to render flushed samples, use configuration from the last received frame */
- move32();
- st_ivas->ism_mode = ism_mode_old;
- st_ivas->renderer_type = renderer_type_old;
- st_ivas->hDecoderConfig->ivas_total_brate = st_ivas->hDecoderConfig->last_ivas_total_brate;
-#endif
+ ELSE IF( EQ_16( st_ivas->ivas_format, SBA_ISM_FORMAT ) )
+ {
+ IF( EQ_32( ism_mode_old, ISM_SBA_MODE_DISC ) )
+ {
+ Word32 *tc_local_fx[MAX_TRANSPORT_CHANNELS];
+ Word16 last_spar_md_idx;
+ Word16 last_dirac_md_idx;
+ UWord16 nSamplesAvailableNext;
+ ISM_MODE ism_mode_orig;
+ RENDERER_TYPE renderer_type_orig;
+ Word32 ivas_total_brate;
- last_spar_md_idx = st_ivas->hSpar->render_to_md_map[st_ivas->hSpar->slots_rendered - 1];
- last_dirac_md_idx = st_ivas->hSpatParamRendCom->render_to_md_map[st_ivas->hSpatParamRendCom->slots_rendered - 1];
- move16();
- move16();
+ ivas_total_brate = st_ivas->hDecoderConfig->ivas_total_brate;
+ renderer_type_orig = st_ivas->renderer_type;
+ ism_mode_orig = st_ivas->ism_mode;
- /* copy from ISM delay buffer to the correct place in TCs */
- FOR( ch_idx = 0; ch_idx < st_ivas->nchan_ism; ch_idx++ )
- {
-#ifdef NONBE_FIX_1297_SPAR_JBM_MEM_SAN
- tc_local_fx[ch_idx] = &st_ivas->hTcBuffer->tc_fx[ch_idx][hTcBuffer->n_samples_rendered];
-#else
- tc_local_fx[ch_idx] = &st_ivas->hTcBuffer->tc_fx[ch_idx + 2][hTcBuffer->n_samples_rendered];
-#endif
- Copy32( st_ivas->hSbaIsmData->delayBuffer_fx[ch_idx], tc_local_fx[ch_idx], st_ivas->hSbaIsmData->delayBuffer_size );
- }
-
- /* transfer adapted sf info from hTcBuffer to SPAR and DirAC */
- st_ivas->hSpar->nb_subframes = 1;
- st_ivas->hSpar->subframes_rendered = 0;
- st_ivas->hSpar->subframe_nbslots[0] = JBM_CLDFB_SLOTS_IN_SUBFRAME;
- st_ivas->hSpar->slots_rendered = 0;
- st_ivas->hSpar->num_slots = JBM_CLDFB_SLOTS_IN_SUBFRAME;
- st_ivas->hSpatParamRendCom->nb_subframes = 1;
- st_ivas->hSpatParamRendCom->subframes_rendered = 0;
- st_ivas->hSpatParamRendCom->subframe_nbslots[0] = JBM_CLDFB_SLOTS_IN_SUBFRAME;
- st_ivas->hSpatParamRendCom->slots_rendered = 0;
- st_ivas->hSpatParamRendCom->num_slots = JBM_CLDFB_SLOTS_IN_SUBFRAME;
- move16();
- move16();
- move16();
- move16();
- move16();
- move16();
- move16();
- move16();
- move16();
- move16();
+ /* to render flushed samples, use configuration from the last received frame */
+ move32();
+ st_ivas->ism_mode = ism_mode_old;
+ st_ivas->renderer_type = renderer_type_old;
+ st_ivas->hDecoderConfig->ivas_total_brate = st_ivas->hDecoderConfig->last_ivas_total_brate;
+
+ last_spar_md_idx = st_ivas->hSpar->render_to_md_map[st_ivas->hSpar->slots_rendered - 1];
+ last_dirac_md_idx = st_ivas->hSpatParamRendCom->render_to_md_map[st_ivas->hSpatParamRendCom->slots_rendered - 1];
+ move16();
+ move16();
+
+ /* copy from ISM delay buffer to the correct place in TCs */
+ FOR( ch_idx = 0; ch_idx < st_ivas->nchan_ism; ch_idx++ )
+ {
+ tc_local_fx[ch_idx] = &st_ivas->hTcBuffer->tc_fx[ch_idx][hTcBuffer->n_samples_rendered];
+ Copy32( st_ivas->hSbaIsmData->delayBuffer_fx[ch_idx], tc_local_fx[ch_idx], st_ivas->hSbaIsmData->delayBuffer_size );
+ }
+
+ /* transfer adapted sf info from hTcBuffer to SPAR and DirAC */
+ st_ivas->hSpar->nb_subframes = 1;
+ st_ivas->hSpar->subframes_rendered = 0;
+ st_ivas->hSpar->subframe_nbslots[0] = JBM_CLDFB_SLOTS_IN_SUBFRAME;
+ st_ivas->hSpar->slots_rendered = 0;
+ st_ivas->hSpar->num_slots = JBM_CLDFB_SLOTS_IN_SUBFRAME;
+ st_ivas->hSpatParamRendCom->nb_subframes = 1;
+ st_ivas->hSpatParamRendCom->subframes_rendered = 0;
+ st_ivas->hSpatParamRendCom->subframe_nbslots[0] = JBM_CLDFB_SLOTS_IN_SUBFRAME;
+ st_ivas->hSpatParamRendCom->slots_rendered = 0;
+ st_ivas->hSpatParamRendCom->num_slots = JBM_CLDFB_SLOTS_IN_SUBFRAME;
+ move16();
+ move16();
+ move16();
+ move16();
+ move16();
+ move16();
+ move16();
+ move16();
+ move16();
+ move16();
+
+ /* also adapt md maps, just use the last index */
+ set16_fx( st_ivas->hSpar->render_to_md_map, last_spar_md_idx, n_slots_still_available );
+ set16_fx( st_ivas->hSpatParamRendCom->render_to_md_map, last_dirac_md_idx, n_slots_still_available );
- /* also adapt md maps, just use the last index */
- set16_fx( st_ivas->hSpar->render_to_md_map, last_spar_md_idx, n_slots_still_available );
- set16_fx( st_ivas->hSpatParamRendCom->render_to_md_map, last_dirac_md_idx, n_slots_still_available );
+ /* render the last subframe */
+ IF( NE_32( ( error = ivas_osba_dirac_td_binaural_jbm_fx( st_ivas, (UWord16) hTcBuffer->n_samples_granularity, nSamplesRendered, &nSamplesAvailableNext, p_output_fx ) ), IVAS_ERR_OK ) )
+ {
+ return error;
+ }
- /* render the last subframe */
- IF( NE_32( ( error = ivas_osba_dirac_td_binaural_jbm_fx( st_ivas, (UWord16) hTcBuffer->n_samples_granularity, nSamplesRendered, &nSamplesAvailableNext, p_output_fx ) ), IVAS_ERR_OK ) )
+ /* restore original configuration */
+ st_ivas->ism_mode = ism_mode_orig;
+ st_ivas->renderer_type = renderer_type_orig;
+ st_ivas->hDecoderConfig->ivas_total_brate = ivas_total_brate;
+ }
+ }
+ ELSE
{
- return error;
+ return IVAS_ERROR( IVAS_ERR_WRONG_MODE, "Wrong IVAS format in VoIP renderer flushing!" );
}
-#ifdef NONBE_FIX_1297_SPAR_JBM_MEM_SAN
- /* restore original configuration */
- st_ivas->ism_mode = ism_mode_orig;
- st_ivas->renderer_type = renderer_type_orig;
- st_ivas->hDecoderConfig->ivas_total_brate = ivas_total_brate;
+ hTcBuffer->n_samples_rendered = hTcBuffer->n_samples_granularity;
}
-#endif
-}
-ELSE
-{
- return IVAS_ERROR( IVAS_ERR_WRONG_MODE, "Wrong IVAS format in VoIP renderer flushing!" );
-}
-
-hTcBuffer->n_samples_rendered = hTcBuffer->n_samples_granularity;
-}
-/* update global combined orientation start index */
-ivas_combined_orientation_update_start_index( st_ivas->hCombinedOrientationData, *nSamplesRendered );
+ /* update global combined orientation start index */
+ ivas_combined_orientation_update_start_index( st_ivas->hCombinedOrientationData, *nSamplesRendered );
-*nSamplesRendered = n_samples_to_render;
-move16();
+ *nSamplesRendered = n_samples_to_render;
+ move16();
-/* Only write out the valid data*/
-IF( is_split_rendering_enabled( st_ivas->hDecoderConfig, st_ivas->hRenderConfig ) == 0 )
-{
- IF( NE_16( st_ivas->ivas_format, MONO_FORMAT ) )
+ /* Only write out the valid data*/
+ IF( is_split_rendering_enabled( st_ivas->hDecoderConfig, st_ivas->hRenderConfig ) == 0 )
{
-#ifndef DISABLE_LIMITER
- Word16 ch_idx, exp = 11;
- move16();
- FOR( ch_idx = 0; ch_idx < MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS; ch_idx++ )
+ IF( NE_16( st_ivas->ivas_format, MONO_FORMAT ) )
{
- p_output_fx[ch_idx] = st_ivas->p_output_fx[ch_idx];
- }
- ivas_limiter_dec_fx( st_ivas->hLimiter, p_output_fx, st_ivas->hDecoderConfig->nchan_out, *nSamplesRendered, st_ivas->BER_detect, exp );
+#ifndef DISABLE_LIMITER
+ Word16 ch_idx, exp = 11;
+ move16();
+ FOR( ch_idx = 0; ch_idx < MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS; ch_idx++ )
+ {
+ p_output_fx[ch_idx] = st_ivas->p_output_fx[ch_idx];
+ }
+ ivas_limiter_dec_fx( st_ivas->hLimiter, p_output_fx, st_ivas->hDecoderConfig->nchan_out, *nSamplesRendered, st_ivas->BER_detect, exp );
#endif
+ }
}
-}
-ivas_syn_output_fx( p_output_fx, Q11, *nSamplesRendered, st_ivas->hDecoderConfig->nchan_out, data );
+ ivas_syn_output_fx( p_output_fx, Q11, *nSamplesRendered, st_ivas->hDecoderConfig->nchan_out, data );
-return IVAS_ERR_OK;
+ return IVAS_ERR_OK;
}
@@ -3102,7 +2969,7 @@ return IVAS_ERR_OK;
* Set number of samples to discard in the first subframe if the renderer granularity changes on a bitrate change
*--------------------------------------------------------------------------*/
-ivas_error ivas_jbm_dec_set_discard_samples(
+ivas_error ivas_jbm_dec_set_discard_samples_fx(
Decoder_Struct *st_ivas /* i/o: main IVAS decoder structre */
)
{
@@ -3544,6 +3411,8 @@ Word16 ivas_jbm_dec_get_num_tc_channels_fx(
return num_tc;
}
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
+
/*--------------------------------------------------------------------------*
* ivas_jbm_dec_copy_tc()
*
@@ -3609,6 +3478,8 @@ static void ivas_jbm_dec_copy_tc(
return;
}
+#endif
+
/*--------------------------------------------------------------------------*
* ivas_jbm_dec_get_render_granularity()
*
@@ -3616,8 +3487,37 @@ static void ivas_jbm_dec_copy_tc(
*--------------------------------------------------------------------------*/
/*! r: render granularity */
+#ifdef NONBE_1303_REND_GRANULARITY
+Word16 ivas_jbm_dec_get_render_granularity_fx(
+ const RENDERER_TYPE renderer_type, /* i : renderer type */
+ const RENDERER_TYPE renderer_type_sec, /* i : secondary renderer type */
+ const int32_t output_Fs /* i : sampling rate */
+)
+{
+ Word16 render_granularity;
+ test();
+ test();
+ test();
+ IF( EQ_32( renderer_type, RENDERER_BINAURAL_OBJECTS_TD ) || /* TD renderer */
+ EQ_32( renderer_type, RENDERER_BINAURAL_MIXER_CONV ) || EQ_32( renderer_type, RENDERER_BINAURAL_MIXER_CONV_ROOM ) || /* Crend */
+ EQ_32( renderer_type_sec, RENDERER_BINAURAL_OBJECTS_TD ) /* TD rend as a secondary renderer -> set the common granularity for both renderers */
+ )
+ {
+ /* 5 ms granularity */
+ render_granularity = NS2SA_FX2( output_Fs, FRAME_SIZE_NS / MAX_PARAM_SPATIAL_SUBFRAMES );
+ move16();
+ }
+ ELSE
+ {
+ /* 1.25 ms granularity */
+ render_granularity = NS2SA_FX2( output_Fs, CLDFB_SLOT_NS );
+ move16();
+ }
+ return render_granularity;
+}
+#else
Word16 ivas_jbm_dec_get_render_granularity(
const RENDERER_TYPE rendererType, /* i : renderer type */
const IVAS_FORMAT ivas_format, /* i : ivas format */
@@ -3648,6 +3548,7 @@ Word16 ivas_jbm_dec_get_render_granularity(
return render_granularity;
}
+#endif
/*--------------------------------------------------------------------------*
@@ -3973,7 +3874,7 @@ static void ivas_jbm_dec_tc_buffer_playout_fx(
* Close JBM transport channel buffer
*--------------------------------------------------------------------------*/
-void ivas_jbm_dec_tc_buffer_close(
+void ivas_jbm_dec_tc_buffer_close_fx(
DECODER_TC_BUFFER_HANDLE *phTcBuffer /* i/o: TC buffer handle */
)
{
@@ -3999,11 +3900,13 @@ void ivas_jbm_dec_tc_buffer_close(
return;
}
+
/*--------------------------------------------------------------------------*
* ivas_jbm_dec_td_renderers_adapt_subframes()
*
* Close JBM transport channel buffer
*--------------------------------------------------------------------------*/
+
void ivas_jbm_dec_td_renderers_adapt_subframes(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
)
@@ -4070,17 +3973,20 @@ void ivas_jbm_dec_td_renderers_adapt_subframes(
return;
}
+
+
/*--------------------------------------------------------------------------*
* ivas_jbm_dec_get_tc_buffer_mode()
*
*
*--------------------------------------------------------------------------*/
-TC_BUFFER_MODE ivas_jbm_dec_get_tc_buffer_mode(
+TC_BUFFER_MODE ivas_jbm_dec_get_tc_buffer_mode_fx(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
)
{
TC_BUFFER_MODE buffer_mode;
+
buffer_mode = TC_BUFFER_MODE_BUFFER;
move16();
@@ -4178,6 +4084,7 @@ TC_BUFFER_MODE ivas_jbm_dec_get_tc_buffer_mode(
return buffer_mode;
}
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
/*--------------------------------------------------------------------------*
* ivas_jbm_dec_copy_tc_no_tsm()
@@ -4269,6 +4176,8 @@ void ivas_jbm_dec_copy_tc_no_tsm_fx(
return;
}
+#endif
+
/*--------------------------------------------------------------------------*
* ivas_jbm_dec_metadata_open()
*
@@ -4279,10 +4188,12 @@ ivas_error ivas_jbm_dec_metadata_open(
Decoder_Struct *st_ivas )
{
JBM_METADATA_HANDLE hJbmMetadata;
+
IF( ( hJbmMetadata = (JBM_METADATA_HANDLE) malloc( sizeof( JBM_METADATA ) ) ) == NULL )
{
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for JBM metadata handle\n" ) );
}
+
hJbmMetadata->sf_write_idx = 0;
move16();
hJbmMetadata->sf_md_buffer_length = MASA_JBM_RINGBUFFER_FRAMES * MAX_PARAM_SPATIAL_SUBFRAMES;
@@ -4356,6 +4267,7 @@ static void ivas_jbm_dec_copy_masa_meta_to_buffer(
*
* Map input MASA metadata subframes to slots in JBM processing
*--------------------------------------------------------------------------*/
+
static void ivas_jbm_masa_sf_to_slot_map(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
const Word16 nCldfbTs /* i : number of CLDFB time slots */
@@ -4367,6 +4279,10 @@ static void ivas_jbm_masa_sf_to_slot_map(
Word16 slot_idx;
Word16 write_idx, sf_index;
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+ ivas_jbm_dec_copy_masa_meta_to_buffer( st_ivas );
+
+#endif
/* Set values */
hJbmMetadata = st_ivas->hJbmMetadata;
num_slots_in_subfr = CLDFB_NO_COL_MAX / MAX_PARAM_SPATIAL_SUBFRAMES;
@@ -4477,26 +4393,26 @@ void ivas_jbm_masa_sf_to_sf_map(
return;
}
-#ifdef OBJ_EDITING_API
+
/*--------------------------------------------------------------------------*
- * ivas_jbm_dec_prepare_renderer()
+ * ivas_dec_prepare_renderer()
*
- * prepare IVAS JBM renderer routine
+ * prepare IVAS renderer routine
*--------------------------------------------------------------------------*/
-void ivas_jbm_dec_prepare_renderer(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
+void ivas_dec_prepare_renderer_fx(
+ Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
)
{
- Word16 n, n_render_timeslots, tmp, exp;
+ Word16 n, n_render_timeslots, tmp, exp, shift;
- push_wmops( "ivas_jbm_dec_feed_tc_to_rendererer" );
+ push_wmops( "ivas_dec_prepare_renderer" );
/* n_render_timeslots = st_ivas->hTcBuffer->n_samples_available / st_ivas->hTcBuffer->n_samples_granularity; */
tmp = BASOP_Util_Divide1616_Scale( st_ivas->hTcBuffer->n_samples_available, st_ivas->hTcBuffer->n_samples_granularity, &exp );
n_render_timeslots = shr( tmp, sub( 15, exp ) ); // Q0
-
+ test();
IF( EQ_16( st_ivas->hTcBuffer->tc_buffer_mode, TC_BUFFER_MODE_BUFFER ) )
{
ivas_jbm_dec_td_renderers_adapt_subframes( st_ivas );
@@ -4518,6 +4434,7 @@ void ivas_jbm_dec_prepare_renderer(
/* Rendering */
IF( EQ_16( st_ivas->ism_mode, ISM_MODE_PARAM ) )
{
+ test();
test();
test();
IF( EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) || EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) || EQ_16( st_ivas->renderer_type, RENDERER_STEREO_PARAMETRIC ) )
@@ -4540,7 +4457,7 @@ void ivas_jbm_dec_prepare_renderer(
{
IF( st_ivas->hSCE[0] )
{
- Word16 shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
+ shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
IF( LT_16( sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift ), 4 ) )
{
shift = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, 4 );
@@ -4548,11 +4465,11 @@ void ivas_jbm_dec_prepare_renderer(
scale_sig32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN, shift ); // Q(31-cngNoiseLevelExp+shift)
st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift );
}
+
ivas_sba_dec_digest_tc_fx( st_ivas, n_render_timeslots, st_ivas->hTcBuffer->n_samples_available );
}
ELSE IF( EQ_16( st_ivas->ivas_format, SBA_ISM_FORMAT ) )
{
-
IF( EQ_16( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
{
ivas_ism_dec_digest_tc_fx( st_ivas );
@@ -4561,6 +4478,8 @@ void ivas_jbm_dec_prepare_renderer(
test();
test();
test();
+ test();
+ test();
/* delay the objects here for all renderers where it is needed */
IF(
(
@@ -4588,7 +4507,7 @@ void ivas_jbm_dec_prepare_renderer(
IF( st_ivas->hSCE[0] )
{
- Word16 shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
+ shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
if ( LT_16( sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift ), 4 ) )
{
shift = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, 4 );
@@ -4605,7 +4524,7 @@ void ivas_jbm_dec_prepare_renderer(
IF( st_ivas->hSCE[0] )
{
- Word16 shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
+ shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
if ( LT_16( sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift ), 4 ) )
{
shift = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, 4 );
@@ -4613,6 +4532,7 @@ void ivas_jbm_dec_prepare_renderer(
scale_sig32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN, shift ); // Q(31-cngNoiseLevelExp+shift)
st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift );
}
+
ivas_sba_dec_digest_tc_fx( st_ivas, n_render_timeslots, st_ivas->hTcBuffer->n_samples_available );
}
}
@@ -4622,6 +4542,7 @@ void ivas_jbm_dec_prepare_renderer(
IF( EQ_32( st_ivas->renderer_type, RENDERER_OMASA_MIX_EXT ) || EQ_32( st_ivas->renderer_type, RENDERER_OMASA_OBJECT_EXT ) )
{
ivas_jbm_dec_td_renderers_adapt_subframes( st_ivas );
+
IF( st_ivas->hDecoderConfig->Opt_tsm )
{
ivas_jbm_masa_sf_to_slot_map( st_ivas, n_render_timeslots );
@@ -4637,7 +4558,7 @@ void ivas_jbm_dec_prepare_renderer(
IF( st_ivas->hSCE[0] )
{
- Word16 shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
+ shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
if ( LT_16( sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift ), 4 ) )
{
shift = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, 4 );
@@ -4646,6 +4567,7 @@ void ivas_jbm_dec_prepare_renderer(
st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift );
move16();
}
+
ivas_sba_dec_digest_tc_fx( st_ivas, n_render_timeslots, st_ivas->hTcBuffer->n_samples_available );
IF( EQ_16( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) )
@@ -4657,32 +4579,53 @@ void ivas_jbm_dec_prepare_renderer(
test();
IF( EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) || EQ_16( st_ivas->renderer_type, RENDERER_DIRAC ) )
{
- Word16 num_objects;
+ Word16 nchan_transport_ism;
/* Delay the signal to match CLDFB delay. Delay the whole buffer. */
- num_objects = 0;
+ nchan_transport_ism = 0;
move16();
test();
test();
IF( ( EQ_16( st_ivas->ism_mode, ISM_MASA_MODE_MASA_ONE_OBJ ) || EQ_16( st_ivas->ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) ) && NE_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) )
{
- num_objects = 1;
+ nchan_transport_ism = 1;
move16();
}
ELSE IF( EQ_16( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) )
{
- num_objects = st_ivas->nchan_ism;
+ nchan_transport_ism = st_ivas->nchan_ism;
move16();
}
- FOR( n = 0; n < num_objects; n++ )
+
+ FOR( n = 0; n < nchan_transport_ism; n++ )
{
test();
IF( EQ_16( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) && EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) )
{
- v_multc_fixed_16( st_ivas->hTcBuffer->tc_fx[CPE_CHANNELS + n], OMASA_TDREND_MATCHING_GAIN_FX, st_ivas->hTcBuffer->tc_fx[CPE_CHANNELS + n], st_ivas->hTcBuffer->n_samples_available );
+ v_multc_fx_16( st_ivas->hTcBuffer->tc_fx[CPE_CHANNELS + n], OMASA_TDREND_MATCHING_GAIN_FX, st_ivas->hTcBuffer->tc_fx[CPE_CHANNELS + n], st_ivas->hTcBuffer->n_samples_available );
+
+ IF( st_ivas->hMasaIsmData->ism_gain_is_edited[n] )
+ {
+ v_multc_fx_16( st_ivas->hTcBuffer->tc_fx[CPE_CHANNELS + n], st_ivas->hMasaIsmData->gain_ism_edited_fx[n], st_ivas->hTcBuffer->tc_fx[CPE_CHANNELS + n], st_ivas->hTcBuffer->n_samples_available );
+ Scale_sig32( st_ivas->hTcBuffer->tc_fx[CPE_CHANNELS + n], st_ivas->hTcBuffer->n_samples_available, Q3 ); // Q8 -> Q11
+ }
}
delay_signal32_fx( st_ivas->hTcBuffer->tc_fx[CPE_CHANNELS + n], st_ivas->hTcBuffer->n_samples_available, st_ivas->hMasaIsmData->delayBuffer_fx[n], st_ivas->hMasaIsmData->delayBuffer_size );
+ // TODO: check if tis is a bug in main already
+ }
+
+ test();
+ IF( EQ_16( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) && EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) )
+ {
+ IF( st_ivas->hMasaIsmData->masa_gain_is_edited )
+ {
+ FOR( n = 0; n < BINAURAL_CHANNELS; n++ )
+ {
+ v_multc_fx_16( st_ivas->hTcBuffer->tc_fx[n], st_ivas->hMasaIsmData->gain_masa_edited_fx, st_ivas->hTcBuffer->tc_fx[n], st_ivas->hTcBuffer->n_samples_available ); // Q8
+ Scale_sig32( st_ivas->hTcBuffer->tc_fx[n], st_ivas->hTcBuffer->n_samples_available, Q3 ); // Q8 -> Q11
+ }
+ }
}
}
}
@@ -4694,7 +4637,7 @@ void ivas_jbm_dec_prepare_renderer(
}
ELSE IF( EQ_16( st_ivas->mc_mode, MC_MODE_PARAMUPMIX ) )
{
- ivas_mc_paramupmix_dec_digest_tc( st_ivas, (UWord8) n_render_timeslots, st_ivas->hTcBuffer->n_samples_available );
+ ivas_mc_paramupmix_dec_digest_tc_fx( st_ivas, (UWord8) n_render_timeslots, st_ivas->hTcBuffer->n_samples_available );
}
ELSE IF( EQ_16( st_ivas->mc_mode, MC_MODE_PARAMMC ) )
{
@@ -4702,6 +4645,7 @@ void ivas_jbm_dec_prepare_renderer(
move16();
Word16 nchan_out_transport = add( st_ivas->hTransSetup.nchan_out_woLFE, st_ivas->hTransSetup.num_lfe );
Word16 nchan_out_cov;
+
test();
test();
IF( EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV ) || EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) )
@@ -4731,7 +4675,6 @@ void ivas_jbm_dec_prepare_renderer(
scale_sig32( st_ivas->hParamMC->proto_matrix_int_fx, st_ivas->hParamMC->proto_matrix_int_len, 1 ); // Q(31-1+1)
- Word16 shift;
FOR( Word16 param_band_idx = 0; param_band_idx < st_ivas->hParamMC->num_param_bands_synth; param_band_idx++ )
{
shift = getScaleFactor32( st_ivas->hParamMC->h_output_synthesis_cov_state.cx_old_fx[param_band_idx], s_min( st_ivas->hParamMC->h_output_synthesis_cov_state.cx_old_len, nchan_transport * nchan_transport ) );
@@ -4749,7 +4692,7 @@ void ivas_jbm_dec_prepare_renderer(
{
IF( st_ivas->hSCE[0] )
{
- Word16 shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
+ shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN );
if ( LT_16( sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift ), 4 ) )
{
shift = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, 4 );
@@ -4758,6 +4701,7 @@ void ivas_jbm_dec_prepare_renderer(
st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp = sub( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevelExp, shift );
move16();
}
+
ivas_sba_dec_digest_tc_fx( st_ivas, n_render_timeslots, st_ivas->hTcBuffer->n_samples_available );
}
}
@@ -4765,4 +4709,3 @@ void ivas_jbm_dec_prepare_renderer(
pop_wmops();
return;
}
-#endif
diff --git a/lib_dec/ivas_lfe_dec_fx.c b/lib_dec/ivas_lfe_dec_fx.c
index 29a64da58ad02646b6483d68a94acdc00cb2b2ed..74d8de662ea8aadd99c86363b514d42e8164fe1e 100644
--- a/lib_dec/ivas_lfe_dec_fx.c
+++ b/lib_dec/ivas_lfe_dec_fx.c
@@ -315,6 +315,7 @@ static void ivas_create_lfe_lpf_dec_fx(
return;
}
+
/*-----------------------------------------------------------------------------------------*
* Function ivas_lfe_dec_fx()
*
@@ -401,6 +402,7 @@ void ivas_lfe_dec_fx(
j = add( j, shr( output_frame, 5 ) );
}
q_out = Q9;
+ move16();
}
IF( hLFE->filter_state.order > 0 )
@@ -488,7 +490,7 @@ ivas_error ivas_create_lfe_dec_fx(
low_pass_delay_dec_out = 0; // Q15
move16();
- if ( delay_ns > ivas_lfe_lpf_delay_ns[IVAS_FILTER_ORDER_4 - 3] )
+ IF( GT_32( delay_ns, ivas_lfe_lpf_delay_ns[IVAS_FILTER_ORDER_4 - 3] ) )
{
filt_order = 4;
low_pass_delay_dec_out = ivas_lfe_lpf_delay_Q15[IVAS_FILTER_ORDER_4 - 3];
diff --git a/lib_dec/ivas_masa_dec_fx.c b/lib_dec/ivas_masa_dec_fx.c
index 7dba2b5d4714c44e59743955cc05e2e939fd58da..fe3f7fee990cefd5e99365060e791cecdb153f8d 100644
--- a/lib_dec/ivas_masa_dec_fx.c
+++ b/lib_dec/ivas_masa_dec_fx.c
@@ -184,10 +184,10 @@ ivas_error ivas_masa_decode_fx(
IF( NE_32( ivas_format, MC_FORMAT ) || NE_16( st_ivas->mc_mode, MC_MODE_MCMASA ) )
{
Word16 bits_per_frame = extract_l( Mpy_32_32( ivas_total_brate, ONE_BY_FRAMES_PER_SEC_Q31 ) );
+
IF( EQ_32( ivas_format, MASA_FORMAT ) )
{
/* re-read the number of objects, needed in case of bad frame */
-#ifdef FIX_CREND_SIMPLIFY_CODE
ch = sub( 5, add( st_ivas->bit_stream[sub( bits_per_frame, 3 )], shl( st_ivas->bit_stream[sub( bits_per_frame, 2 )], 1 ) ) );
if ( EQ_16( ch, 5 ) )
@@ -197,17 +197,10 @@ ivas_error ivas_masa_decode_fx(
}
st_ivas->nchan_ism = ch;
move16();
-#else
- st_ivas->nchan_ism = sub( 5, add( st_ivas->bit_stream[bits_per_frame - 3], shl( st_ivas->bit_stream[bits_per_frame - 2], 1 ) ) );
-#endif
}
test();
-#ifdef FIX_CREND_SIMPLIFY_CODE
IF( EQ_32( ivas_format, MASA_FORMAT ) && GT_16( st_ivas->nchan_ism, 0 ) )
-#else
- IF( EQ_32( ivas_format, MASA_FORMAT ) && NE_16( st_ivas->nchan_ism, 5 ) )
-#endif
{
/* there was OMASA in the input */
hMasa->config.input_ivas_format = MASA_ISM_FORMAT;
@@ -229,6 +222,7 @@ ivas_error ivas_masa_decode_fx(
move16();
move16();
*nb_bits_read = add( *nb_bits_read, MASA_HEADER_BITS );
+
/* read number of directions */
byteBuffer = st->bit_stream[( st->next_bit_pos )--];
move16();
@@ -330,6 +324,7 @@ ivas_error ivas_masa_decode_fx(
move16();
st_ivas->hIsmMetaData[0]->ism_md_lowrate_flag = 0;
move16();
+
IF( EQ_16( st_ivas->hIsmMetaData[0]->ism_imp, ISM_NO_META ) )
{
/* read flags */
@@ -365,6 +360,7 @@ ivas_error ivas_masa_decode_fx(
move16();
st_ivas->hIsmMetaData[ch]->ism_md_lowrate_flag = 0;
move16();
+
IF( EQ_16( st_ivas->hIsmMetaData[ch]->ism_imp, ISM_NO_META ) )
{
/* read flags */
@@ -378,8 +374,10 @@ ivas_error ivas_masa_decode_fx(
move16();
}
}
+
st_ivas->flag_omasa_brate = 0;
move16();
+
test();
IF( GE_16( st_ivas->nchan_ism, 3 ) && EQ_32( ivas_total_brate, IVAS_128k ) )
{
@@ -390,7 +388,6 @@ ivas_error ivas_masa_decode_fx(
}
}
}
-
byteBuffer = st->bit_stream[st->next_bit_pos];
move16();
st->next_bit_pos = sub( st->next_bit_pos, 1 );
@@ -504,9 +501,9 @@ ivas_error ivas_masa_decode_fx(
FOR( sf = 0; sf < MAX_PARAM_SPATIAL_SUBFRAMES; sf++ )
{
meta_write_index = add( st_ivas->hSpatParamRendCom->dirac_bs_md_write_idx, sf ) % st_ivas->hSpatParamRendCom->dirac_md_buffer_length;
- st_ivas->hMasaIsmData->azimuth_separated_ism[meta_write_index] = st_ivas->hMasaIsmData->azimuth_ism[obj][meta_write_index];
+ st_ivas->hMasaIsmData->azimuth_separated_ism_fx[meta_write_index] = st_ivas->hMasaIsmData->azimuth_ism_fx[obj][meta_write_index];
move16();
- st_ivas->hMasaIsmData->elevation_separated_ism[meta_write_index] = st_ivas->hMasaIsmData->elevation_ism[obj][meta_write_index];
+ st_ivas->hMasaIsmData->elevation_separated_ism_fx[meta_write_index] = st_ivas->hMasaIsmData->elevation_ism_fx[obj][meta_write_index];
move16();
}
}
@@ -837,13 +834,14 @@ ivas_error ivas_masa_dec_open_fx(
move32();
/* ISM metadata */
+
test();
- test();
- IF( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) && st_ivas->hIsmMetaData[0] != NULL && EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
+ IF( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) && st_ivas->hIsmMetaData[0] != NULL )
{
/* these are not needed -> clean. EXT metafile writer in OMASA needs only the number of ISMs and writes default null-data */
ivas_ism_metadata_close( st_ivas->hIsmMetaData, 0 );
}
+
test();
test();
test();
@@ -907,6 +905,9 @@ ivas_error ivas_masa_dec_open_fx(
IF( st_ivas->hTcBuffer == NULL && NE_16( st_ivas->renderer_type, RENDERER_DISABLE ) && NE_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) && NE_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) && NE_16( st_ivas->renderer_type, RENDERER_STEREO_PARAMETRIC ) )
{
Word16 nchan_to_allocate, nchan_transport;
+#ifdef NONBE_1303_REND_GRANULARITY
+ Word16 granularity;
+#endif
TC_BUFFER_MODE buffer_mode;
buffer_mode = TC_BUFFER_MODE_RENDERER;
@@ -951,7 +952,13 @@ ivas_error ivas_masa_dec_open_fx(
nchan_to_allocate = add( nchan_to_allocate, 1 );
}
+#ifdef NONBE_1303_REND_GRANULARITY
+ granularity = ivas_jbm_dec_get_render_granularity_fx( st_ivas->renderer_type, RENDERER_DISABLE, st_ivas->hDecoderConfig->output_Fs );
+
+ IF( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, buffer_mode, nchan_transport, nchan_to_allocate, nchan_to_allocate, granularity ) ) != IVAS_ERR_OK )
+#else
IF( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, buffer_mode, nchan_transport, nchan_to_allocate, nchan_to_allocate, NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, CLDFB_SLOT_NS ) ) ) != IVAS_ERR_OK )
+#endif
{
return error;
}
@@ -1193,8 +1200,8 @@ void ivas_masa_prerender_fx(
test();
IF( EQ_32( st_ivas->renderer_type, RENDERER_DIRAC ) || EQ_32( st_ivas->renderer_type, RENDERER_DISABLE ) )
{
- v_multc_fixed( output_fx[0], SQRT2_FIXED, output_fx[0], output_frame ); /* q + 30 - 31 = q - 1*/ /* Gain transport signal when transmitting mono with cpe in order to match loudness */
- *q_shift = -1; /* Q has decreased by 1. */
+ v_multc_fx( output_fx[0], SQRT2_FX, output_fx[0], output_frame ); /* q + 30 - 31 = q - 1*/ /* Gain transport signal when transmitting mono with cpe in order to match loudness */
+ *q_shift = -1; /* Q has decreased by 1. */
move16();
}
}
@@ -1680,11 +1687,6 @@ static Word16 decode_lfe_to_total_energy_ratio_fx(
ivas_error ivas_masa_dec_reconfigure_fx(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord16 *nSamplesRendered, /* o : number of samples flushed from the previous frame (JBM) */
- Word16 *data /* o : output synthesis signal */
-#endif
)
{
Word16 n, tmp, num_bits;
@@ -1693,27 +1695,25 @@ ivas_error ivas_masa_dec_reconfigure_fx(
Decoder_State **sts;
UWord32 ivas_total_brate, last_ivas_total_brate;
Word16 numCldfbAnalyses_old, numCldfbSyntheses_old;
+#ifdef FIX_NCHAN_BUFFERS
+ Word16 nchan_out_buff_old, nchan_out_buff;
+#endif
ivas_error error;
Word32 ism_total_brate;
Word16 pos_idx;
-#ifndef FIX_HRTF_LOAD
- error = IVAS_ERR_OK;
- move16();
-#endif
ivas_total_brate = st_ivas->hDecoderConfig->ivas_total_brate;
move32();
last_ivas_total_brate = st_ivas->hDecoderConfig->last_ivas_total_brate;
move32();
+#ifdef FIX_NCHAN_BUFFERS
+ nchan_out_buff_old = ivas_get_nchan_buffers_dec_fx( st_ivas, -1, -1 );
+#endif
test();
-#ifdef NONBE_FIX_1220_OMASA_JBM_EXT_USAN
test();
/* Copy state to TC buffer if granularity matches and we are not in OMASA EXT rendering mode */
IF( st_ivas->hSpatParamRendCom != NULL && EQ_16( st_ivas->hSpatParamRendCom->slot_size, st_ivas->hTcBuffer->n_samples_granularity ) && NE_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
-#else
- IF( st_ivas->hSpatParamRendCom != NULL && EQ_16( st_ivas->hSpatParamRendCom->slot_size, st_ivas->hTcBuffer->n_samples_granularity ) )
-#endif
{
Copy( st_ivas->hSpatParamRendCom->subframe_nbslots, st_ivas->hTcBuffer->subframe_nbslots, MAX_JBM_SUBFRAMES_5MS );
st_ivas->hTcBuffer->nb_subframes = st_ivas->hSpatParamRendCom->nb_subframes;
@@ -1733,9 +1733,7 @@ ivas_error ivas_masa_dec_reconfigure_fx(
test();
test();
test();
-#ifdef NONBE_FIX_1220_OMASA_JBM_EXT_USAN
test();
-#endif
IF( ( EQ_32( st_ivas->renderer_type, RENDERER_DIRAC ) && st_ivas->hDirACRend == NULL ) ||
( ( EQ_32( st_ivas->renderer_type, RENDERER_STEREO_PARAMETRIC ) || EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) || EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) ) && st_ivas->hDiracDecBin[0] == NULL ) )
{
@@ -1745,7 +1743,6 @@ ivas_error ivas_masa_dec_reconfigure_fx(
return error;
}
}
-#ifdef NONBE_FIX_1220_OMASA_JBM_EXT_USAN
ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_DISABLE ) || EQ_32( st_ivas->renderer_type, RENDERER_MONO_DOWNMIX ) || EQ_32( st_ivas->renderer_type, RENDERER_OMASA_MIX_EXT ) )
{
/* close all unnecessary parametric decoding and rendering */
@@ -1754,19 +1751,6 @@ ivas_error ivas_masa_dec_reconfigure_fx(
ivas_spat_hSpatParamRendCom_close_fx( &( st_ivas->hSpatParamRendCom ) );
ivas_dirac_dec_close_fx( &( st_ivas->hDirAC ) );
}
-#else
- ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_DISABLE ) || EQ_32( st_ivas->renderer_type, RENDERER_MONO_DOWNMIX ) )
- {
- IF( st_ivas->hDirAC != NULL )
- {
- /* close all unnecessary parametric decoding and rendering */
- ivas_dirac_dec_close_binaural_data_fx( st_ivas->hDiracDecBin );
- ivas_dirac_rend_close_fx( &( st_ivas->hDirACRend ) );
- ivas_spat_hSpatParamRendCom_close_fx( &( st_ivas->hSpatParamRendCom ) );
- ivas_dirac_dec_close_fx( &( st_ivas->hDirAC ) );
- }
- }
-#endif
/* possible reconfigure is done later */
/*-----------------------------------------------------------------*
@@ -1856,16 +1840,11 @@ ivas_error ivas_masa_dec_reconfigure_fx(
test();
test();
test();
-#ifdef NONBE_FIX_1143_MASA_BRSW
test();
test();
IF( ( LT_32( ivas_total_brate, MASA_STEREO_MIN_BITRATE ) && GE_32( last_ivas_total_brate, MASA_STEREO_MIN_BITRATE ) ) ||
( LT_32( ivas_total_brate, MASA_STEREO_MIN_BITRATE ) && EQ_32( last_ivas_total_brate, FRAME_NO_DATA ) ) ||
( LT_32( ivas_total_brate, MASA_STEREO_MIN_BITRATE ) && EQ_32( last_ivas_total_brate, IVAS_SID_5k2 ) ) )
-#else
- IF( ( LT_32( ivas_total_brate, MASA_STEREO_MIN_BITRATE ) && GE_32( last_ivas_total_brate, MASA_STEREO_MIN_BITRATE ) ) ||
- ( LT_32( ivas_total_brate, MASA_STEREO_MIN_BITRATE ) && EQ_32( last_ivas_total_brate, FRAME_NO_DATA ) ) )
-#endif
{
st_ivas->hCPE[cpe_id]->nchan_out = 1;
move16();
@@ -1967,29 +1946,19 @@ ivas_error ivas_masa_dec_reconfigure_fx(
ivas_masa_set_elements_fx( ivas_total_brate, st_ivas->mc_mode, st_ivas->nchan_transport, st_ivas->hQMetaData, &tmp, &tmp, &tmp, st_ivas->ivas_format, st_ivas->ism_mode, ism_total_brate );
-#ifndef NONBE_1199_OMASA_JBM_BRATE_SW_FLUSH
- IF( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) )
- {
- IF( NE_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
- {
- move16();
- st_ivas->nchan_ism = 0; /* Initialization if it has not been already read from the end of the bitstream at the same time
- with reading of the format: nchan_ism is needed in MASA format because for the EXT output in
- MASA-only (pre-rendering mode of OMASA) the number of ISMs to output correct number of empty objects is needed */
- }
- st_ivas->ism_mode = ISM_MODE_NONE;
- move16();
- }
-#endif
{
Word16 tc_nchan_to_allocate;
Word16 tc_nchan_transport;
TC_BUFFER_MODE buffer_mode_new;
Word16 n_samples_granularity;
+#ifdef NONBE_1303_REND_GRANULARITY
+ n_samples_granularity = ivas_jbm_dec_get_render_granularity_fx( st_ivas->renderer_type, ivas_renderer_secondary_select_fx( st_ivas ), st_ivas->hDecoderConfig->output_Fs );
+#else
n_samples_granularity = NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, CLDFB_SLOT_NS );
move16();
- buffer_mode_new = ivas_jbm_dec_get_tc_buffer_mode( st_ivas );
+#endif
+ buffer_mode_new = ivas_jbm_dec_get_tc_buffer_mode_fx( st_ivas );
tc_nchan_transport = ivas_jbm_dec_get_num_tc_channels_fx( st_ivas );
tc_nchan_to_allocate = tc_nchan_transport;
@@ -2009,17 +1978,31 @@ ivas_error ivas_masa_dec_reconfigure_fx(
}
ELSE
{
+#ifdef FIX_NCHAN_BUFFERS
+ tc_nchan_to_allocate = BINAURAL_CHANNELS;
+ move16();
+ test();
+ if ( st_ivas->hDiracDecBin[0] != NULL && st_ivas->hDiracDecBin[0]->useTdDecorr )
+ {
+ tc_nchan_to_allocate = 2 * BINAURAL_CHANNELS;
+ move16();
+ }
+#else
tc_nchan_to_allocate = shl( BINAURAL_CHANNELS, 1 );
+#endif
}
+
test();
test();
test();
IF( EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) && EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) && EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) )
{
+#ifndef NONBE_1303_REND_GRANULARITY
n_samples_granularity = NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, FRAME_SIZE_NS / MAX_PARAM_SPATIAL_SUBFRAMES ); /* Use the same granularity as tdrend */
+#endif
IF( GT_16( n_samples_granularity, st_ivas->hTcBuffer->n_samples_granularity ) )
{
- IF( NE_32( ( error = ivas_jbm_dec_set_discard_samples( st_ivas ) ), IVAS_ERR_OK ) )
+ IF( NE_32( ( error = ivas_jbm_dec_set_discard_samples_fx( st_ivas ) ), IVAS_ERR_OK ) )
{
return error;
}
@@ -2029,14 +2012,7 @@ ivas_error ivas_masa_dec_reconfigure_fx(
{
IF( LT_16( n_samples_granularity, st_ivas->hTcBuffer->n_samples_granularity ) )
{
-#ifdef FIX_HRTF_LOAD
/* flush already done in IVAS_DEC_ReadFormat() */
-#else
- if ( NE_32( ( error = ivas_jbm_dec_flush_renderer_fx( st_ivas, n_samples_granularity, st_ivas->renderer_type, st_ivas->intern_config, &st_ivas->hIntSetup, MC_MODE_NONE, ISM_MASA_MODE_DISC, nSamplesRendered, data ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
-#endif
}
}
}
@@ -2083,11 +2059,23 @@ ivas_error ivas_masa_dec_reconfigure_fx(
}
}
-#ifdef FIX_HRTF_LOAD
- return IVAS_ERR_OK;
-#else
- return error;
+#ifdef FIX_NCHAN_BUFFERS
+ /*-----------------------------------------------------------------*
+ * output audio buffers
+ *-----------------------------------------------------------------*/
+
+ test();
+ IF( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) && EQ_32( st_ivas->last_ivas_format, MASA_FORMAT ) ) /* note: switching with OMASA is addressed in ivas_omasa_dec_config() */
+ {
+ nchan_out_buff = ivas_get_nchan_buffers_dec_fx( st_ivas, -1, -1 );
+ IF( ( error = ivas_output_buff_dec_fx( st_ivas->p_output_fx, nchan_out_buff_old, nchan_out_buff ) ) != IVAS_ERR_OK )
+ {
+ return error;
+ }
+ }
+
#endif
+ return IVAS_ERR_OK;
}
@@ -3359,6 +3347,7 @@ static Word16 ivas_decode_masaism_metadata_fx(
FOR( obj = 0; obj < nchan_ism; obj++ )
{
+ hMasaIsmData->bits_ism[obj] = bits_ism[obj];
index = 0;
move16();
IF( LT_16( bits_ism[obj], 8 ) ) /* if low resolution, can look to the past */
@@ -3435,9 +3424,9 @@ static Word16 ivas_decode_masaism_metadata_fx(
Word16 int_azi = rint_fx( L_shr( azimuth, Q22 - 16 ) ); // Q0, extra -16 is added as int_azi is W16 and azimuth is W32
Word16 int_ele = rint_fx( L_shr( elevation, Q22 - 16 ) ); // Q0
- hMasaIsmData->azimuth_ism[obj][meta_write_index] = int_azi; // Q0
+ hMasaIsmData->azimuth_ism_fx[obj][meta_write_index] = int_azi; // Q0
move16();
- hMasaIsmData->elevation_ism[obj][meta_write_index] = int_ele; // Q0
+ hMasaIsmData->elevation_ism_fx[obj][meta_write_index] = int_ele; // Q0
move16();
}
}
diff --git a/lib_dec/ivas_mc_param_dec_fx.c b/lib_dec/ivas_mc_param_dec_fx.c
index 250b37675be3e1d0c4432fa5bc2863ddc064b91b..d95ffe9984499fd8f4a4655de7644f379a88da17 100644
--- a/lib_dec/ivas_mc_param_dec_fx.c
+++ b/lib_dec/ivas_mc_param_dec_fx.c
@@ -73,38 +73,26 @@ typedef struct parameter_band_mapping_struct
static void ivas_param_mc_dec_init_fx( PARAM_MC_DEC_HANDLE hParamMC, const Word16 nchan_in, const Word16 nchan_out );
static void ivas_param_mc_dec_copy_diffuse_proto( PARAM_MC_DEC_HANDLE hParamMC, Word32 Cldfb_buffer_real_fx[MAX_CICP_CHANNELS][PARAM_MC_MAX_NSLOTS_IN_SUBFRAME][CLDFB_NO_CHANNELS_MAX], Word32 Cldfb_buffer_imag_fx[MAX_CICP_CHANNELS][PARAM_MC_MAX_NSLOTS_IN_SUBFRAME][CLDFB_NO_CHANNELS_MAX], const Word16 nY, const Word16 slot_idx );
+
static Word16 ivas_param_mc_range_decoder_LC_fx( UWord16 *bit_buffer, Word16 *x, Word16 *BER_detect, const Word16 sz_seq, const Word16 sz_alphabet, const UWord16 *cft, const UWord16 *sft, const Word16 tot_shift, const Word16 nbbits );
-
-static void ivas_param_mc_get_mixing_matrices_fx(
- PARAM_MC_DEC_HANDLE hParamMC, /* i : Parametric MC handle */
- IVAS_OUTPUT_SETUP *hSynthesisOutputSetup,
- Word32 Cx_in_fixed[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* i : input covariance for all parameter bands */
- Word16 Cx_in_e,
- const Word16 param_band_idx,
- Word32 *mixing_matrix_fx[],
- Word16 *mixing_matrix_e,
- Word32 *mixing_matrix_res_fx[],
- Word16 *mixing_matrix_res_e,
- const Word16 nY_intern, /* i : number of channels in the transported format */
- const PARAM_MC_SYNTHESIS_CONF synth_config, /* i : Parametric MC synthesis config */
- const Word16 nX, /* i : number of transport channels */
- const Word16 nY_cov /* i : number of covariance synthesis output channels */
-);
+static void ivas_param_mc_get_mixing_matrices_fx( PARAM_MC_DEC_HANDLE hParamMC, IVAS_OUTPUT_SETUP *hSynthesisOutputSetup, Word32 Cx_in_fixed[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], Word16 Cx_in_e, const Word16 param_band_idx, Word32 *mixing_matrix_fx[], Word16 *mixing_matrix_e, Word32 *mixing_matrix_res_fx[], Word16 *mixing_matrix_res_e, const Word16 nY_intern, const PARAM_MC_SYNTHESIS_CONF synth_config, const Word16 nX, const Word16 nY_cov );
static Word16 ivas_param_mc_uniform_decoder_fx( Word16 *seq, const Word16 sz_seq, const Word16 *alphabet, const Word16 N, UWord16 bit_buffer[PARAM_MC_MAX_BITS] );
+
static void ivas_param_mc_dec_compute_interpolator_fx( const UWord16 bAttackPresent, const UWord16 attackPos, const UWord16 interp_length, Word16 *interpolator );
static void param_mc_set_num_synth_bands( const Word32 output_Fs, PARAM_MC_DEC_HANDLE hParamMC );
static void ivas_param_mc_get_param_band_mapping( const Word16 n_target_bands, const Word16 *target_band_grouping, const Word16 n_source_bands, const Word16 *source_band_grouping, PARAM_MC_PARAMETER_BAND_MAPPING *parameter_band_mapping );
-
static void ivas_param_mc_bs_decode_parameter_values_fx( UWord16 bit_buffer[], Word16 *bit_pos, const Word16 max_bits, Word16 *BER_detect, HANDLE_IVAS_PARAM_MC_METADATA hMetadataPMC, HANDLE_PARAM_MC_PARAMETER_CODING_INFO hParamCodingInfo, const Word16 map_size_wo_lfe, const Word16 map_size, const Word16 num_lfe_bands, const Word16 band_step, const Word16 num_param_bands, Word16 *value_buffer );
+
static void ivas_param_mc_dequantize_cov_fx( PARAM_MC_DEC_HANDLE hParamMC, Word16 *ild_q_fx, Word16 *icc_q_fx, const Word16 param_band_index, const Word16 nY_cov, const PARAM_MC_SYNTHESIS_CONF synth_conf, const Word16 nY_int, const Word16 nX, Word32 *Cx_state_fx, Word16 Cx_state_e, Word32 *Cproto_fx, Word16 Cproto_e, Word32 *Cy_state_fx, Word16 *Cy_state_e );
+
static ivas_error param_mc_get_diff_proto_info_fx( const Word32 *proto_mtx, const UWord16 nchan_transport, const UWord16 nchan_out_cov, PARAM_MC_DIFF_PROTO_INFO *p_diff_proto_info, Word16 Q_proto_mtx );
-static void param_mc_update_mixing_matrices_fx( PARAM_MC_DEC_HANDLE hParamMC, Word32 *mixing_matrix[], Word16 *mixing_matrix_fx, Word32 *mixing_matrix_res[], Word16 *mixing_matrix_res_exp, const UWord16 nX, const UWord16 nY );
+static void param_mc_update_mixing_matrices_fx( PARAM_MC_DEC_HANDLE hParamMC, Word32 *mixing_matrix[], Word16 *mixing_matrix_fx, Word32 *mixing_matrix_res[], Word16 *mixing_matrix_res_exp, const UWord16 nX, const UWord16 nY );
static void param_mc_protoSignalComputation_fx( Word32 *RealBuffer_fx, Word32 *ImagBuffer_fx, Word32 *proto_frame_f_fx, const PARAM_MC_DIFF_PROTO_INFO *diff_proto_info, const Word16 num_freq_bands, const Word16 Cldfb_Real_Imag_exp, Word16 *proto_frame_f_fx_q /* Word16 ImagBuffer_fx_e, Word16 *common_e*/ );
@@ -263,7 +251,6 @@ ivas_error ivas_param_mc_dec_open_fx(
ivas_param_mc_metadata_open_fx( mc_ls_setup, ivas_total_brate, hParamMC->hMetadataPMC );
/* init arrays for quantized parameters */
-
IF( ( hParamMC->icc_q_fx = (Word16 *) malloc( hParamMC->hMetadataPMC->num_parameter_bands * hParamMC->hMetadataPMC->icc_mapping_conf->icc_map_size_lfe * sizeof( Word16 ) ) ) == NULL )
{
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for Parametric MC\n" ) );
@@ -352,6 +339,7 @@ ivas_error ivas_param_mc_dec_open_fx(
}
}
}
+
IF( ( hParamMC->proto_matrix_int_fx = (Word32 *) malloc( nchan_out_transport * nchan_transport * sizeof( Word32 ) ) ) == NULL )
{
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for Parametric MC\n" ) );
@@ -508,6 +496,9 @@ ivas_error ivas_param_mc_dec_open_fx(
IF( NE_32( hParamMC->synthesis_conf, PARAM_MC_SYNTH_MONO_STEREO ) )
{
Word16 n_cldfb_slots;
+#ifdef NONBE_1303_REND_GRANULARITY
+ Word16 granularity;
+#endif
n_cldfb_slots = DEFAULT_JBM_CLDFB_TIMESLOTS;
move16();
@@ -525,6 +516,7 @@ ivas_error ivas_param_mc_dec_open_fx(
set32_fx( hParamMC->Cldfb_RealBuffer_tc_fx, 0, cldfb_buf_size );
hParamMC->Cldfb_RealBuffer_tc_e = 25; // Q6 , Initialised with Q6 to match non jbm and jbm cases
move16();
+
IF( ( hParamMC->Cldfb_ImagBuffer_tc_fx = (Word32 *) malloc( cldfb_buf_size * sizeof( Word32 ) ) ) == NULL )
{
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for Parametric MC JBM\n" ) );
@@ -537,7 +529,13 @@ ivas_error ivas_param_mc_dec_open_fx(
IF( st_ivas->hTcBuffer == NULL )
{
+#ifdef NONBE_1303_REND_GRANULARITY
+ granularity = ivas_jbm_dec_get_render_granularity_fx( st_ivas->renderer_type, RENDERER_DISABLE, output_Fs );
+
+ IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, TC_BUFFER_MODE_RENDERER, nchan_transport, nchan_transport, 0, granularity ) ), IVAS_ERR_OK ) )
+#else
IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, TC_BUFFER_MODE_RENDERER, nchan_transport, nchan_transport, 0, NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, CLDFB_SLOT_NS ) ) ), IVAS_ERR_OK ) )
+#endif
{
return error;
}
@@ -555,6 +553,7 @@ ivas_error ivas_param_mc_dec_open_fx(
move16();
st_ivas->hParamMC = hParamMC;
+
return error;
}
@@ -620,6 +619,7 @@ static void ivas_param_mc_get_param_band_mapping(
parameter_band_mapping->n_source_bands[target_band_idx] = source_band_in_target_band_cnt;
move16();
}
+
return;
}
@@ -653,6 +653,7 @@ ivas_error ivas_param_mc_dec_reconfig_fx(
hParamMC = st_ivas->hParamMC;
error = IVAS_ERR_OK;
move32();
+
/* save important config information from the previous state */
nchan_transport_old = st_ivas->nchan_transport;
move32();
@@ -712,6 +713,7 @@ ivas_error ivas_param_mc_dec_reconfig_fx(
/*-----------------------------------------------------------------*
* set input parameters
*-----------------------------------------------------------------*/
+
hParamMC->num_freq_bands = shr( add( (Word16) Mpy_32_32( output_Fs, INV_CLDFB_BANDWIDTH_Q31 << 1 ), 1 ), 1 ); // Q0
move16();
hParamMC->max_band_energy_compensation = hParamMC->num_freq_bands;
@@ -828,7 +830,6 @@ ivas_error ivas_param_mc_dec_reconfig_fx(
*-----------------------------------------------------------------*/
/* prototype signal computation */
-
IF( EQ_16( hParamMC->synthesis_conf, PARAM_MC_SYNTH_MONO_STEREO ) )
{
IF( NE_16( nchan_transport_old, nchan_transport ) )
@@ -855,8 +856,8 @@ ivas_error ivas_param_mc_dec_reconfig_fx(
Copy32( st_ivas->hLsSetUpConversion->dmxMtx_fx[k], &hParamMC->ls_conv_dmx_matrix_fx[k * nchan_out_cov], nchan_out_cov );
}
}
- /* convert ParamMC parameter bands to SFB */
+ /* convert ParamMC parameter bands to SFB */
st_ivas->hLsSetUpConversion->sfbCnt = hParamMC->num_param_bands_synth;
move16();
FOR( k = 0; k <= hParamMC->num_param_bands_synth; k++ )
@@ -1046,14 +1047,14 @@ ivas_error ivas_param_mc_dec_reconfig_fx(
FOR( source_param_idx = 0; source_param_idx < parameter_band_mapping.n_source_bands[new_param_band_idx]; source_param_idx++ )
{
/* Cx */
- v_multc_fixed_16( cov_state_old.cx_old_fx[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], parameter_band_mapping.source_band_factor_fx[new_param_band_idx][source_param_idx], tmp_buf_fx, imult1616( nchan_transport_old, nchan_transport_old ) ); // Q(31 - cov_state_old.cx_old_e)
- v_add_fixed_me( tmp_buf_fx, cov_state_old.cx_old_e[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], hParamMC->h_output_synthesis_cov_state.cx_old_fx[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.cx_old_e[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.cx_old_fx[new_param_band_idx], &hParamMC->h_output_synthesis_cov_state.cx_old_e[new_param_band_idx], imult1616( nchan_transport_old, nchan_transport_old ), 0 ); // Q(31 - hParamMC->h_output_synthesis_cov_state.cx_old_e[new_param_band_idx])
+ v_multc_fx_16( cov_state_old.cx_old_fx[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], parameter_band_mapping.source_band_factor_fx[new_param_band_idx][source_param_idx], tmp_buf_fx, imult1616( nchan_transport_old, nchan_transport_old ) ); // Q(31 - cov_state_old.cx_old_e)
+ v_add_fx_me( tmp_buf_fx, cov_state_old.cx_old_e[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], hParamMC->h_output_synthesis_cov_state.cx_old_fx[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.cx_old_e[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.cx_old_fx[new_param_band_idx], &hParamMC->h_output_synthesis_cov_state.cx_old_e[new_param_band_idx], imult1616( nchan_transport_old, nchan_transport_old ), 0 ); // Q(31 - hParamMC->h_output_synthesis_cov_state.cx_old_e[new_param_band_idx])
/* Cy */
- v_multc_fixed_16( cov_state_old.cy_old_fx[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], parameter_band_mapping.source_band_factor_fx[new_param_band_idx][source_param_idx], tmp_buf_fx, imult1616( nchan_out_cov, nchan_out_cov ) ); // Q(31 - cov_state_old.cy_old_e)
- v_add_fixed_me( tmp_buf_fx, cov_state_old.cy_old_e[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], hParamMC->h_output_synthesis_cov_state.cy_old_fx[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.cy_old_e[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.cy_old_fx[new_param_band_idx], &hParamMC->h_output_synthesis_cov_state.cy_old_e[new_param_band_idx], imult1616( nchan_out_cov, nchan_out_cov ), 0 ); // Q(31 - hParamMC->h_output_synthesis_cov_state.cy_old_e[new_param_band_idx])
+ v_multc_fx_16( cov_state_old.cy_old_fx[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], parameter_band_mapping.source_band_factor_fx[new_param_band_idx][source_param_idx], tmp_buf_fx, imult1616( nchan_out_cov, nchan_out_cov ) ); // Q(31 - cov_state_old.cy_old_e)
+ v_add_fx_me( tmp_buf_fx, cov_state_old.cy_old_e[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], hParamMC->h_output_synthesis_cov_state.cy_old_fx[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.cy_old_e[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.cy_old_fx[new_param_band_idx], &hParamMC->h_output_synthesis_cov_state.cy_old_e[new_param_band_idx], imult1616( nchan_out_cov, nchan_out_cov ), 0 ); // Q(31 - hParamMC->h_output_synthesis_cov_state.cy_old_e[new_param_band_idx])
/* mixing matrix*/
- v_multc_fixed_16( cov_state_old.mixing_matrix_old_fx[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], parameter_band_mapping.source_band_factor_fx[new_param_band_idx][source_param_idx], tmp_buf_fx, imult1616( nchan_transport_old, nchan_out_cov ) ); // Q(31 - mixing_matrix_old_exp)
- v_add_fixed_me( tmp_buf_fx, cov_state_old.mixing_matrix_old_exp[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], hParamMC->h_output_synthesis_cov_state.mixing_matrix_old_fx[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.mixing_matrix_old_exp[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.mixing_matrix_old_fx[new_param_band_idx], &hParamMC->h_output_synthesis_cov_state.mixing_matrix_old_exp[new_param_band_idx], imult1616( nchan_transport_old, nchan_out_cov ), 0 ); // Q(31 - hParamMC->h_output_synthesis_cov_state.mixing_matrix_old_exp[new_param_band_idx])
+ v_multc_fx_16( cov_state_old.mixing_matrix_old_fx[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], parameter_band_mapping.source_band_factor_fx[new_param_band_idx][source_param_idx], tmp_buf_fx, imult1616( nchan_transport_old, nchan_out_cov ) ); // Q(31 - mixing_matrix_old_exp)
+ v_add_fx_me( tmp_buf_fx, cov_state_old.mixing_matrix_old_exp[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], hParamMC->h_output_synthesis_cov_state.mixing_matrix_old_fx[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.mixing_matrix_old_exp[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.mixing_matrix_old_fx[new_param_band_idx], &hParamMC->h_output_synthesis_cov_state.mixing_matrix_old_exp[new_param_band_idx], imult1616( nchan_transport_old, nchan_out_cov ), 0 ); // Q(31 - hParamMC->h_output_synthesis_cov_state.mixing_matrix_old_exp[new_param_band_idx])
}
}
FOR( new_param_band_idx = 0; new_param_band_idx < max_param_band_residual; new_param_band_idx++ )
@@ -1061,11 +1062,12 @@ ivas_error ivas_param_mc_dec_reconfig_fx(
FOR( source_param_idx = 0; source_param_idx < parameter_band_mapping.n_source_bands[new_param_band_idx]; source_param_idx++ )
{
/* residual mixing matrix*/
- v_multc_fixed_16( cov_state_old.mixing_matrix_res_old_fx[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], parameter_band_mapping.source_band_factor_fx[new_param_band_idx][source_param_idx], tmp_buf_fx, imult1616( nchan_out_cov, nchan_out_cov ) ); // Q(31 - mixing_matrix_res_old_exp)
- v_add_fixed_me( tmp_buf_fx, cov_state_old.mixing_matrix_res_old_exp[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_old_fx[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_old_exp[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_old_fx[new_param_band_idx], &hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_old_exp[new_param_band_idx], imult1616( nchan_out_cov, nchan_out_cov ), 0 ); // Q(hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_old_exp[new_param_band_idx])
+ v_multc_fx_16( cov_state_old.mixing_matrix_res_old_fx[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], parameter_band_mapping.source_band_factor_fx[new_param_band_idx][source_param_idx], tmp_buf_fx, imult1616( nchan_out_cov, nchan_out_cov ) ); // Q(31 - mixing_matrix_res_old_exp)
+ v_add_fx_me( tmp_buf_fx, cov_state_old.mixing_matrix_res_old_exp[parameter_band_mapping.source_band_idx[new_param_band_idx][source_param_idx]], hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_old_fx[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_old_exp[new_param_band_idx], hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_old_fx[new_param_band_idx], &hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_old_exp[new_param_band_idx], imult1616( nchan_out_cov, nchan_out_cov ), 0 ); // Q(hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_old_exp[new_param_band_idx])
}
}
}
+
ivas_dirac_dec_output_synthesis_cov_close_fx( ¶ms_old, &cov_state_old );
}
@@ -1084,7 +1086,6 @@ ivas_error ivas_param_mc_dec_reconfig_fx(
set_zero_fx( hParamMC->proto_frame_f_fx, shl( imult1616( hParamMC->diff_proto_info->num_protos_diff, hParamMC->num_freq_bands ), 1 ) );
}
-
IF( NE_16( nchan_transport_old, nchan_transport ) )
{
IF( NE_16( hParamMC->synthesis_conf, PARAM_MC_SYNTH_MONO_STEREO ) )
@@ -1135,6 +1136,7 @@ ivas_error ivas_param_mc_dec_reconfig_fx(
}
}
}
+
return error;
}
@@ -1252,6 +1254,7 @@ void ivas_param_mc_dec_close_fx(
free( hParamMC->diff_proto_info );
hParamMC->diff_proto_info = NULL;
}
+
/* States */
/* free prototype signal buffers */
IF( hParamMC->proto_frame_f_fx != NULL )
@@ -1513,350 +1516,93 @@ void ivas_param_mc_dec_read_BS_fx(
*------------------------------------------------------------------------*/
void ivas_param_mc_dec_digest_tc_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord8 nCldfbSlots, /* i : number of CLFBS slots in the transport channels */
- Word32 *transport_channels_f_fx[],
- Word16 transport_f_e )
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord8 nCldfbSlots, /* i : number of CLDFB slots in transport channels */
+ Word32 *p_data_fx[], /* i/o: synthesized core-coder transport channels/DirAC output */
+ const Word16 q_data /* i : Q-factor of input signal for single channel */
+)
{
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+ Word16 ch, num_freq_bands, slot_idx, cldfb_ch, n_ch_cldfb;
+ Word32 *cldfb_real_buffer, *cldfb_imag_buffer;
+#else
PARAM_MC_DEC_HANDLE hParamMC;
-#ifdef OBJ_EDITING_API
Word16 ch, slot_idx;
Word16 nchan_transport;
-#else
- Word16 i, ch;
- Word16 is_next_band, skip_next_band;
- Word16 slot_idx, param_band_idx;
- Word16 nchan_transport, nchan_out_transport, nchan_out_cldfb;
- Word16 nchan_out_cov;
-#endif
+
/*CLDFB*/
hParamMC = st_ivas->hParamMC;
assert( hParamMC );
-#ifndef OBJ_EDITING_API
- Word32 *pCx, *pCx_imag;
- Word32 cx_fx[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS]; // Q(31 - cx_e)
- Word32 cx_imag_fx[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS]; // Q(31 - cx_imag_e)
- Word32 cx_next_band_fx[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS]; // Q(31 - cx_next_band_e)
- Word32 cx_imag_next_band_fx[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS]; // Q(31 - cx_imag_next_band_e)
- Word32 real_part_fx, imag_part_fx, L_tmp1, L_tmp2;
-
- Word16 cx_buff_e[2][PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS];
- Word16 cx_e;
- Word16 cx_imag_e, tmp_e;
- Word16 cx_imag_next_band_e, cx_next_band_e;
-
- Word16 max_e;
-
- /* format converter */
- Word16 channel_active[MAX_OUTPUT_CHANNELS];
- IVAS_OUTPUT_SETUP *hSynthesisOutputSetup;
#endif
- Word16 qout = 0;
+ Word16 q_out = 0;
move16();
-
- push_wmops( "param_mc_dec_digest_tc" );
-
-#ifndef OBJ_EDITING_API
- set16_fx( channel_active, 0, MAX_CICP_CHANNELS );
-#endif
- nchan_transport = st_ivas->nchan_transport;
+ /* Initialization */
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+ num_freq_bands = st_ivas->hParamMC->num_freq_bands;
move16();
+ n_ch_cldfb = sub( st_ivas->hTcBuffer->nchan_transport_jbm, st_ivas->hTcBuffer->nchan_buffer_full );
-#ifndef OBJ_EDITING_API
- nchan_out_transport = add( st_ivas->hTransSetup.nchan_out_woLFE, st_ivas->hTransSetup.num_lfe );
-
- test();
- test();
- IF( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV ) || EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) )
- {
- nchan_out_cldfb = BINAURAL_CHANNELS;
- move16();
- set16_fx( channel_active, 1, nchan_out_cldfb );
- nchan_out_cov = add( st_ivas->hTransSetup.nchan_out_woLFE, st_ivas->hTransSetup.num_lfe );
- hSynthesisOutputSetup = &st_ivas->hTransSetup;
- }
- ELSE IF( EQ_32( hParamMC->synthesis_conf, PARAM_MC_SYNTH_LS_CONV_CLDFB ) )
- {
- nchan_out_cov = nchan_out_transport;
- move16();
- nchan_out_cldfb = add( st_ivas->hOutSetup.nchan_out_woLFE, st_ivas->hOutSetup.num_lfe );
- hSynthesisOutputSetup = &st_ivas->hTransSetup;
- }
- ELSE IF( EQ_32( hParamMC->synthesis_conf, PARAM_MC_SYNTH_LS_CONV_COV ) || EQ_32( hParamMC->synthesis_conf, PARAM_MC_SYNTH_MONO_STEREO ) )
- {
- nchan_out_cov = add( st_ivas->hOutSetup.nchan_out_woLFE, st_ivas->hOutSetup.num_lfe );
- nchan_out_cldfb = nchan_out_cov;
- move16();
- set16_fx( channel_active, 1, nchan_out_cov );
- hSynthesisOutputSetup = &st_ivas->hOutSetup;
- }
- ELSE
- {
- nchan_out_cov = nchan_out_transport;
- move16();
- nchan_out_cldfb = nchan_out_transport;
- move16();
- set16_fx( channel_active, 1, nchan_out_cov );
- hSynthesisOutputSetup = &st_ivas->hTransSetup;
- }
-
- /* adapt transient position */
- IF( hParamMC->hMetadataPMC->bAttackPresent )
- {
- hParamMC->hMetadataPMC->attackIndex = s_max( 0, add( hParamMC->hMetadataPMC->attackIndex, shr( sub( nCldfbSlots, DEFAULT_JBM_CLDFB_TIMESLOTS ), 1 ) ) );
- move16();
- }
- /* adapt subframes */
- hParamMC->num_slots = nCldfbSlots;
- move16();
- hParamMC->slots_rendered = 0;
- move16();
- hParamMC->subframes_rendered = 0;
- move16();
- ivas_jbm_dec_get_adapted_subframes( nCldfbSlots, hParamMC->subframe_nbslots, &hParamMC->nb_subframes );
- st_ivas->hTcBuffer->nb_subframes = hParamMC->nb_subframes;
+ cldfb_real_buffer = st_ivas->hParamMC->Cldfb_RealBuffer_tc_fx;
+ cldfb_imag_buffer = st_ivas->hParamMC->Cldfb_ImagBuffer_tc_fx;
+#else
+ nchan_transport = st_ivas->nchan_transport;
move16();
- Copy( hParamMC->subframe_nbslots, st_ivas->hTcBuffer->subframe_nbslots, hParamMC->nb_subframes );
-
- ivas_param_mc_dec_compute_interpolator_fx( hParamMC->hMetadataPMC->bAttackPresent, hParamMC->hMetadataPMC->attackIndex, nCldfbSlots, hParamMC->h_output_synthesis_params.interpolator_fx );
-
- /* loop over two bands at a time */
- FOR( param_band_idx = 0; param_band_idx < hParamMC->num_param_bands_synth; param_band_idx += 2 )
- {
- /* don't process next band if it exceeds the limit */
- skip_next_band = ( ( param_band_idx + 1 ) == hParamMC->num_param_bands_synth ) ? 1 : 0;
-
- set_zero_fx( cx_fx, PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS );
- set_zero_fx( cx_imag_fx, PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS );
- set_zero_fx( cx_next_band_fx, PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS );
- set_zero_fx( cx_imag_next_band_fx, PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS );
-
- cx_e = 0;
- move16();
- cx_imag_e = 0;
- move16();
- cx_next_band_e = 0;
- move16();
- cx_imag_next_band_e = 0;
- move16();
#endif
- /* slot loop for gathering the input data */
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+ /* CLDFB Analysis */
+ FOR( ( ch = 0, cldfb_ch = 0 ); cldfb_ch < n_ch_cldfb; ( cldfb_ch++, ch++ ) )
+ {
FOR( slot_idx = 0; slot_idx < nCldfbSlots; slot_idx++ )
{
- IF( st_ivas->hDecoderConfig->Opt_tsm )
- {
-#ifndef OBJ_EDITING_API
- IF( param_band_idx == 0 ) /* only run cldfbAna once */
- {
-#endif
- Word32 RealBuffer_fx[CLDFB_NO_CHANNELS_MAX];
- Word32 ImagBuffer_fx[CLDFB_NO_CHANNELS_MAX];
-
- /* CLDFB Analysis*/
- FOR( ch = 0; ch < nchan_transport; ch++ )
- {
- qout = transport_f_e;
- move16();
- cldfbAnalysis_ts_fx_fixed_q( &( transport_channels_f_fx[ch][hParamMC->num_freq_bands * slot_idx] ), RealBuffer_fx, ImagBuffer_fx, hParamMC->num_freq_bands, st_ivas->cldfbAnaDec[ch], &qout );
-
- Copy32( RealBuffer_fx, &hParamMC->Cldfb_RealBuffer_tc_fx[slot_idx * hParamMC->num_freq_bands * nchan_transport + ch * hParamMC->num_freq_bands], hParamMC->num_freq_bands );
- Copy32( ImagBuffer_fx, &hParamMC->Cldfb_ImagBuffer_tc_fx[slot_idx * hParamMC->num_freq_bands * nchan_transport + ch * hParamMC->num_freq_bands], hParamMC->num_freq_bands );
- }
-
- hParamMC->Cldfb_ImagBuffer_tc_e = qout;
- move16();
-#ifndef OBJ_EDITING_API
- }
-#endif
- }
-
-#ifndef OBJ_EDITING_API
- IF( GE_16( slot_idx, shl( hParamMC->hMetadataPMC->attackIndex, 1 ) ) )
- {
- FOR( is_next_band = 0; is_next_band < 2; is_next_band++ )
- {
- test();
- IF( is_next_band && skip_next_band )
- {
- CONTINUE;
- }
- IF( is_next_band )
- {
- ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot_fx( &hParamMC->Cldfb_RealBuffer_tc_fx[slot_idx * hParamMC->num_freq_bands * nchan_transport],
- /*hParamMC->Cldfb_RealBuffer_tc_e*/ Q31 - Q6,
- &hParamMC->Cldfb_ImagBuffer_tc_fx[slot_idx * hParamMC->num_freq_bands * nchan_transport],
- /*hParamMC->Cldfb_ImagBuffer_tc_e*/ Q31 - Q6,
- cx_next_band_fx,
- &cx_next_band_e,
- cx_imag_next_band_fx,
- &cx_imag_next_band_e,
- hParamMC,
- add( param_band_idx, is_next_band ),
- nchan_transport );
- }
- ELSE
- {
- ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot_fx( &hParamMC->Cldfb_RealBuffer_tc_fx[slot_idx * hParamMC->num_freq_bands * nchan_transport],
- /*hParamMC->Cldfb_RealBuffer_tc_e*/ Q31 - Q6,
- &hParamMC->Cldfb_ImagBuffer_tc_fx[slot_idx * hParamMC->num_freq_bands * nchan_transport],
- /*hParamMC->Cldfb_ImagBuffer_tc_e*/ Q31 - Q6,
- cx_fx,
- &cx_e,
- cx_imag_fx,
- &cx_imag_e,
- hParamMC,
- add( param_band_idx, is_next_band ),
- nchan_transport );
- }
- }
- }
-#endif
- }
-
-#ifndef OBJ_EDITING_API
- Word16 tmp_cx_e, tmp_cx_imag_e;
- /* map from complex input covariance to real values */
- FOR( is_next_band = 0; is_next_band < 2; is_next_band++ )
- {
- test();
- IF( is_next_band && skip_next_band )
- {
- CONTINUE;
- }
- /* Cx for transport channels */
- IF( is_next_band )
- {
- pCx = &cx_next_band_fx[0];
- pCx_imag = &cx_imag_next_band_fx[0];
- tmp_cx_e = cx_next_band_e;
- tmp_cx_imag_e = cx_imag_next_band_e;
- }
- ELSE
- {
- pCx = &cx_fx[0];
- pCx_imag = &cx_imag_fx[0];
- tmp_cx_e = cx_e;
- tmp_cx_imag_e = cx_imag_e;
- }
+ q_out = q_data;
+ move16();
- FOR( i = 0; i < nchan_transport * nchan_transport; i++ )
- {
- real_part_fx = pCx[i]; // Q(31 - cx_buff_e)
- imag_part_fx = pCx_imag[i];
- move32();
- move32();
- cx_buff_e[is_next_band][i] = tmp_cx_e;
- move16();
- /* (a-ib)(c+id) = ac + bd + i(ad-bc) */
- IF( LT_16( param_band_idx, hParamMC->max_param_band_abs_cov ) )
- {
- L_tmp1 = Mpy_32_32( real_part_fx, real_part_fx );
- L_tmp2 = Mpy_32_32( imag_part_fx, imag_part_fx );
- L_tmp1 = BASOP_Util_Add_Mant32Exp( L_tmp1, add( tmp_cx_e, tmp_cx_e ), L_tmp2, add( tmp_cx_imag_e, tmp_cx_imag_e ), &tmp_e );
- pCx[i] = Sqrt32( L_tmp1, &tmp_e );
- move32();
- cx_buff_e[is_next_band][i] = tmp_e;
- move16();
- }
- ELSE
- {
- pCx[i] = real_part_fx;
- move32();
- cx_buff_e[is_next_band][i] = tmp_cx_e;
- move16();
- }
- }
+ cldfbAnalysis_ts_fx_fixed_q( &( p_data_fx[ch][num_freq_bands * slot_idx] ),
+ &cldfb_real_buffer[slot_idx * num_freq_bands * n_ch_cldfb + cldfb_ch * num_freq_bands],
+ &cldfb_imag_buffer[slot_idx * num_freq_bands * n_ch_cldfb + cldfb_ch * num_freq_bands],
+ num_freq_bands, st_ivas->cldfbAnaDec[cldfb_ch], &q_out );
}
- max_e = cx_buff_e[0][0];
- move16();
-
- /* Cx for transport channels */
- FOR( is_next_band = 0; is_next_band < 2; is_next_band++ )
+ IF( st_ivas->hDecoderConfig->Opt_tsm )
{
- FOR( i = 0; i < imult1616( nchan_transport, nchan_transport ); i++ )
- {
-
- IF( LT_16( max_e, cx_buff_e[is_next_band][i] ) )
- {
- max_e = cx_buff_e[is_next_band][i];
- }
- }
+ st_ivas->hParamMC->Cldfb_ImagBuffer_tc_e = q_out;
+ move16();
}
- /* Cx for transport channels */
- FOR( is_next_band = 0; is_next_band < 2; is_next_band++ )
+ }
+#else
+ /* slot loop for gathering the input data */
+ FOR( slot_idx = 0; slot_idx < nCldfbSlots; slot_idx++ )
+ {
+ IF( st_ivas->hDecoderConfig->Opt_tsm )
{
- FOR( i = 0; i < imult1616( nchan_transport, nchan_transport ); i++ )
- {
- if ( is_next_band == 0 )
- {
- cx_fx[i] = L_shr( cx_fx[i], sub( max_e, cx_buff_e[is_next_band][i] ) );
- }
- else
- {
- cx_next_band_fx[i] = L_shr( cx_next_band_fx[i], sub( max_e, cx_buff_e[is_next_band][i] ) );
- }
- move32();
- }
- }
- cx_e = max_e;
- move16();
-
-
- /* we have to do it similar to the encoder in case of attacks (i.e. accumulate two bands) to ensure correct DMX of the target covariance*/
+ Word32 RealBuffer_fx[CLDFB_NO_CHANNELS_MAX];
+ Word32 ImagBuffer_fx[CLDFB_NO_CHANNELS_MAX];
- test();
- test();
- IF( hParamMC->hMetadataPMC->bAttackPresent && ( EQ_32( hParamMC->synthesis_conf, PARAM_MC_SYNTH_LS_CONV_COV ) || EQ_32( hParamMC->synthesis_conf, PARAM_MC_SYNTH_MONO_STEREO ) ) )
- {
- Word16 len = imult1616( nchan_transport, nchan_transport );
- Word16 sc = s_min( getScaleFactor32( cx_fx, len ), getScaleFactor32( cx_next_band_fx, len ) );
- IF( EQ_16( sc, 0 ) )
+ /* CLDFB Analysis*/
+ FOR( ch = 0; ch < nchan_transport; ch++ )
{
- Scale_sig32( cx_fx, len, -Q1 ); // add one bit head room
- Scale_sig32( cx_next_band_fx, len, -Q1 ); // add one bit head room
- cx_e = add( cx_e, Q1 );
- cx_next_band_e = add( cx_e, Q1 );
- }
- v_add_fx( cx_fx, cx_next_band_fx, cx_fx, len );
- Copy32( cx_fx, cx_next_band_fx, len );
- }
+ q_out = q_data;
+ move16();
+ cldfbAnalysis_ts_fx_fixed_q( &( p_data_fx[ch][hParamMC->num_freq_bands * slot_idx] ), RealBuffer_fx, ImagBuffer_fx, hParamMC->num_freq_bands, st_ivas->cldfbAnaDec[ch], &q_out );
- FOR( is_next_band = 0; is_next_band < 2; is_next_band++ )
- {
- test();
- IF( is_next_band && skip_next_band )
- {
- CONTINUE;
+ Copy32( RealBuffer_fx, &hParamMC->Cldfb_RealBuffer_tc_fx[slot_idx * hParamMC->num_freq_bands * nchan_transport + ch * hParamMC->num_freq_bands], hParamMC->num_freq_bands );
+ Copy32( ImagBuffer_fx, &hParamMC->Cldfb_ImagBuffer_tc_fx[slot_idx * hParamMC->num_freq_bands * nchan_transport + ch * hParamMC->num_freq_bands], hParamMC->num_freq_bands );
}
- IF( NE_32( hParamMC->synthesis_conf, PARAM_MC_SYNTH_MONO_STEREO ) )
- {
- IF( is_next_band )
- {
-
- ivas_param_mc_get_mixing_matrices_fx( hParamMC, hSynthesisOutputSetup, cx_next_band_fx, cx_e, add( param_band_idx, is_next_band ), hParamMC->h_output_synthesis_cov_state.mixing_matrix_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_exp, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_exp, nchan_out_transport, hParamMC->synthesis_conf, nchan_transport, nchan_out_cov );
- }
- ELSE
- {
-
- ivas_param_mc_get_mixing_matrices_fx( hParamMC, hSynthesisOutputSetup, cx_fx, cx_e, add( param_band_idx, is_next_band ), hParamMC->h_output_synthesis_cov_state.mixing_matrix_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_exp, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_exp, nchan_out_transport, hParamMC->synthesis_conf, nchan_transport, nchan_out_cov );
- }
- }
+ hParamMC->Cldfb_ImagBuffer_tc_e = q_out;
+ move16();
}
}
#endif
- pop_wmops();
return;
}
-#ifdef OBJ_EDITING_API
/*-------------------------------------------------------------------------
* ivas_param_mc_dec_prepare_renderer()
*
@@ -1864,8 +1610,8 @@ void ivas_param_mc_dec_digest_tc_fx(
*------------------------------------------------------------------------*/
void ivas_param_mc_dec_prepare_renderer(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord8 nCldfbSlots /* i : number of CLFBS slots in the transport channels */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord8 nCldfbSlots /* i : number of CLDFB slots in transport channels */
)
{
Word16 i;
@@ -1874,21 +1620,18 @@ void ivas_param_mc_dec_prepare_renderer(
Word16 nchan_transport, nchan_out_transport, nchan_out_cldfb;
Word16 nchan_out_cov;
PARAM_MC_DEC_HANDLE hParamMC;
-
+ /*CLDFB*/
Word32 *pCx, *pCx_imag;
Word32 cx_fx[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS]; // Q(31 - cx_e)
Word32 cx_imag_fx[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS]; // Q(31 - cx_imag_e)
Word32 cx_next_band_fx[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS]; // Q(31 - cx_next_band_e)
Word32 cx_imag_next_band_fx[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS]; // Q(31 - cx_imag_next_band_e)
Word32 real_part_fx, imag_part_fx, L_tmp1, L_tmp2;
-
Word16 cx_buff_e[2][PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS];
Word16 cx_e;
Word16 cx_imag_e, tmp_e;
Word16 cx_imag_next_band_e, cx_next_band_e;
-
Word16 max_e;
-
/* format converter */
Word16 channel_active[MAX_OUTPUT_CHANNELS];
IVAS_OUTPUT_SETUP *hSynthesisOutputSetup;
@@ -1944,6 +1687,7 @@ void ivas_param_mc_dec_prepare_renderer(
hParamMC->hMetadataPMC->attackIndex = s_max( 0, add( hParamMC->hMetadataPMC->attackIndex, shr( sub( nCldfbSlots, DEFAULT_JBM_CLDFB_TIMESLOTS ), 1 ) ) );
move16();
}
+
/* adapt subframes */
hParamMC->num_slots = nCldfbSlots;
move16();
@@ -1990,6 +1734,7 @@ void ivas_param_mc_dec_prepare_renderer(
{
CONTINUE;
}
+
IF( is_next_band )
{
ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot_fx( &hParamMC->Cldfb_RealBuffer_tc_fx[slot_idx * hParamMC->num_freq_bands * nchan_transport],
@@ -2021,6 +1766,7 @@ void ivas_param_mc_dec_prepare_renderer(
}
}
}
+
Word16 tmp_cx_e, tmp_cx_imag_e;
/* map from complex input covariance to real values */
FOR( is_next_band = 0; is_next_band < 2; is_next_band++ )
@@ -2090,6 +1836,7 @@ void ivas_param_mc_dec_prepare_renderer(
}
}
}
+
/* Cx for transport channels */
FOR( is_next_band = 0; is_next_band < 2; is_next_band++ )
{
@@ -2109,9 +1856,7 @@ void ivas_param_mc_dec_prepare_renderer(
cx_e = max_e;
move16();
-
/* we have to do it similar to the encoder in case of attacks (i.e. accumulate two bands) to ensure correct DMX of the target covariance*/
-
test();
test();
IF( hParamMC->hMetadataPMC->bAttackPresent && ( EQ_32( hParamMC->synthesis_conf, PARAM_MC_SYNTH_LS_CONV_COV ) || EQ_32( hParamMC->synthesis_conf, PARAM_MC_SYNTH_MONO_STEREO ) ) )
@@ -2152,13 +1897,15 @@ void ivas_param_mc_dec_prepare_renderer(
}
}
}
+
+ return;
}
-#endif
+
/*-------------------------------------------------------------------------
- * ivas_param_mc_dec()
+ * ivas_param_mc_dec_render()
*
- * Parametric MC decoding process
+ * Parametric MC rendering process
*------------------------------------------------------------------------*/
void ivas_param_mc_dec_render_fx(
@@ -2166,7 +1913,7 @@ void ivas_param_mc_dec_render_fx(
const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
UWord16 *nSamplesAvailableNext, /* o : number of CLDFB slots still to render */
- Word32 *output_f_fx[], /* o : rendered time signal Q11*/
+ Word32 *output_fx[], /* o : rendered time signal Q11*/
Word16 channel_active_fx[MAX_OUTPUT_CHANNELS] )
{
PARAM_MC_DEC_HANDLE hParamMC;
@@ -2175,20 +1922,18 @@ void ivas_param_mc_dec_render_fx(
Word16 slot_idx, slot_idx_start, slot_idx_start_cldfb_synth, first_sf, last_sf, slots_to_render;
Word16 nchan_transport, nchan_out_transport, nchan_out_cldfb;
Word16 nchan_out_cov;
-
/*CLDFB*/
Word32 Cldfb_RealBuffer_fx[MAX_INTERN_CHANNELS][PARAM_MC_MAX_NSLOTS_IN_SUBFRAME][CLDFB_NO_CHANNELS_MAX];
Word32 Cldfb_ImagBuffer_fx[MAX_INTERN_CHANNELS][PARAM_MC_MAX_NSLOTS_IN_SUBFRAME][CLDFB_NO_CHANNELS_MAX];
Word32 Cldfb_RealBuffer_Binaural_fx[MAX_HEAD_ROT_POSES][BINAURAL_CHANNELS][PARAM_MC_MAX_NSLOTS_IN_SUBFRAME][CLDFB_NO_CHANNELS_MAX];
Word32 Cldfb_ImagBuffer_Binaural_fx[MAX_HEAD_ROT_POSES][BINAURAL_CHANNELS][PARAM_MC_MAX_NSLOTS_IN_SUBFRAME][CLDFB_NO_CHANNELS_MAX];
- Word32 *p_output_f_fx[MAX_OUTPUT_CHANNELS];
+ Word32 *p_output_fx[MAX_OUTPUT_CHANNELS];
FOR( i = 0; i < MAX_OUTPUT_CHANNELS; i++ )
{
- p_output_f_fx[i] = output_f_fx[i]; // Q11
+ p_output_fx[i] = output_fx[i]; // Q11
}
/*Decorrelator*/
Word32 onset_filter_fx[MAX_CICP_CHANNELS * CLDFB_NO_CHANNELS_MAX]; // Q31
-
/* format converter */
Word16 channel_active[MAX_OUTPUT_CHANNELS];
UWord16 nband_synth;
@@ -2310,6 +2055,7 @@ void ivas_param_mc_dec_render_fx(
/*-----------------------------------------------------------------*
* protoype signal computation
*-----------------------------------------------------------------*/
+
param_mc_protoSignalComputation_fx( &hParamMC->Cldfb_RealBuffer_tc_fx[hParamMC->slots_rendered * nchan_transport * hParamMC->num_freq_bands],
&hParamMC->Cldfb_ImagBuffer_tc_fx[hParamMC->slots_rendered * nchan_transport * hParamMC->num_freq_bands],
hParamMC->proto_frame_f_fx, hParamMC->diff_proto_info,
@@ -2317,8 +2063,8 @@ void ivas_param_mc_dec_render_fx(
/*-----------------------------------------------------------------*
* frequency domain decorrelation
*-----------------------------------------------------------------*/
- /* decorrelate prototype frame */
+ /* decorrelate prototype frame */
ivas_dirac_dec_decorr_process_fx( hParamMC->num_freq_bands,
hParamMC->num_outputs_diff,
hParamMC->diff_proto_info->num_protos_diff,
@@ -2353,6 +2099,7 @@ void ivas_param_mc_dec_render_fx(
/*-----------------------------------------------------------------*
* output synthesis
*-----------------------------------------------------------------*/
+
ivas_dirac_dec_output_synthesis_cov_param_mc_synthesise_slot_fx(
&hParamMC->Cldfb_RealBuffer_tc_fx[hParamMC->slots_rendered * nchan_transport * hParamMC->num_freq_bands],
&hParamMC->Cldfb_ImagBuffer_tc_fx[hParamMC->slots_rendered * nchan_transport * hParamMC->num_freq_bands], Cldfb_RealBuffer_fx, Cldfb_ImagBuffer_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_exp, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_exp, slot_idx, add( slot_idx, slot_idx_start ),
@@ -2405,8 +2152,8 @@ void ivas_param_mc_dec_render_fx(
FOR( idx_lfe = 0; idx_lfe < hLsSetup.num_lfe; idx_lfe++ )
{
/* Copy just the first band of LFE*/
- v_multc_fixed_16( Cldfb_RealBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], tmp, Cldfb_RealBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], 1 );
- v_multc_fixed_16( Cldfb_ImagBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], tmp, Cldfb_ImagBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], 1 );
+ v_multc_fx_16( Cldfb_RealBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], tmp, Cldfb_RealBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], 1 );
+ v_multc_fx_16( Cldfb_ImagBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], tmp, Cldfb_ImagBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], 1 );
Scale_sig32( Cldfb_RealBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], 1, tmp_exp );
Scale_sig32( Cldfb_ImagBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], 1, tmp_exp );
@@ -2414,8 +2161,8 @@ void ivas_param_mc_dec_render_fx(
{
IF( hLsSetup.index_lfe[idx_lfe] != ch )
{
- v_add_fixed_no_hdrm( Cldfb_RealBuffer_fx[ch][slot_idx], Cldfb_RealBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], Cldfb_RealBuffer_fx[ch][slot_idx], 1 );
- v_add_fixed_no_hdrm( Cldfb_ImagBuffer_fx[ch][slot_idx], Cldfb_ImagBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], Cldfb_ImagBuffer_fx[ch][slot_idx], 1 );
+ v_add_fx_no_hdrm( Cldfb_RealBuffer_fx[ch][slot_idx], Cldfb_RealBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], Cldfb_RealBuffer_fx[ch][slot_idx], 1 );
+ v_add_fx_no_hdrm( Cldfb_ImagBuffer_fx[ch][slot_idx], Cldfb_ImagBuffer_fx[hLsSetup.index_lfe[idx_lfe]][slot_idx], Cldfb_ImagBuffer_fx[ch][slot_idx], 1 );
}
}
}
@@ -2520,7 +2267,6 @@ void ivas_param_mc_dec_render_fx(
ivas_lssetupconversion_process_param_mc_fx( st_ivas, hParamMC->subframe_nbslots[subframe_idx], Cldfb_RealBuffer_fx, Cldfb_ImagBuffer_fx, channel_active );
}
-
/* CLDFB synthesis */
FOR( ch = 0; ch < nchan_out_cldfb; ch++ )
{
@@ -2545,27 +2291,27 @@ void ivas_param_mc_dec_render_fx(
}
Word16 len = add( imult1616( slot_idx_start_cldfb_synth, hParamMC->num_freq_bands ), imult1616( hParamMC->num_freq_bands, hParamMC->subframe_nbslots[subframe_idx] ) );
- scale_sig32( output_f_fx[ch], len, 5 - 11 );
- cldfbSynthesis_ivas_fx( RealBuffer_fx, ImagBuffer_fx, &( output_f_fx[ch][slot_idx_start_cldfb_synth * hParamMC->num_freq_bands] ),
+ scale_sig32( output_fx[ch], len, 5 - 11 );
+ cldfbSynthesis_ivas_fx( RealBuffer_fx, ImagBuffer_fx, &( output_fx[ch][slot_idx_start_cldfb_synth * hParamMC->num_freq_bands] ),
imult1616( hParamMC->num_freq_bands, hParamMC->subframe_nbslots[subframe_idx] ), 0, 0, st_ivas->cldfbSynDec[ch] );
- scale_sig32( output_f_fx[ch], len, 11 - 5 ); // Q11
+ scale_sig32( output_fx[ch], len, 11 - 5 ); // Q11
}
ELSE
{
- set32_fx( &( output_f_fx[ch][slot_idx_start_cldfb_synth * hParamMC->num_freq_bands] ), 0, imult1616( hParamMC->num_freq_bands, hParamMC->subframe_nbslots[subframe_idx] ) );
+ set32_fx( &( output_fx[ch][slot_idx_start_cldfb_synth * hParamMC->num_freq_bands] ), 0, imult1616( hParamMC->num_freq_bands, hParamMC->subframe_nbslots[subframe_idx] ) );
}
}
slot_idx_start = add( slot_idx_start, hParamMC->subframe_nbslots[subframe_idx] );
slot_idx_start_cldfb_synth = add( slot_idx_start_cldfb_synth, hParamMC->subframe_nbslots[subframe_idx] );
}
+
IF( EQ_16( st_ivas->renderer_type, RENDERER_SBA_LINEAR_ENC ) )
{
- ivas_mc2sba_fx( st_ivas->hIntSetup, p_output_f_fx, p_output_f_fx, *nSamplesRendered, st_ivas->hOutSetup.ambisonics_order, 0 );
+ ivas_mc2sba_fx( st_ivas->hIntSetup, p_output_fx, p_output_fx, *nSamplesRendered, st_ivas->hOutSetup.ambisonics_order, 0 );
}
/* update */
-
IF( EQ_16( hParamMC->slots_rendered, hParamMC->num_slots ) )
{
hParamMC->hMetadataPMC->last_coded_bwidth = hParamMC->hMetadataPMC->coded_bwidth;
@@ -2573,7 +2319,6 @@ void ivas_param_mc_dec_render_fx(
param_mc_update_mixing_matrices_fx( hParamMC, hParamMC->h_output_synthesis_cov_state.mixing_matrix_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_exp, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_exp, nchan_transport, nchan_out_cov );
}
-
hParamMC->subframes_rendered = last_sf;
move16();
*nSamplesAvailableNext = imult1616( sub( hParamMC->num_slots, hParamMC->slots_rendered ), NS2SA_FX2( output_Fs, CLDFB_SLOT_NS ) );
@@ -2679,7 +2424,6 @@ static void param_mc_protoSignalComputation_fx(
set32_fx( proto_frame_f_fx, 0, shl( imult1616( num_freq_bands, diff_proto_info->num_protos_diff ), 1 ) );
-
FOR( proto_ch_idx = 0; proto_ch_idx < diff_proto_info->num_protos_diff; proto_ch_idx++ )
{
Word16 num_source_ch = diff_proto_info->num_source_chan_diff[proto_ch_idx];
@@ -2700,7 +2444,6 @@ static void param_mc_protoSignalComputation_fx(
FOR( band = 0; band < num_freq_bands; band++ )
{
-
Word32 tmp_x = L_shl( Mpy_32_32( fac_fx, ( *( p_real_buffer_fx++ ) ) ), 4 ); // Q(26 + 4 + 6 - 31) :: Q5
*( p_proto_frame_fx ) = L_add( *( p_proto_frame_fx ), tmp_x );
@@ -2739,6 +2482,7 @@ static void ivas_param_mc_dec_copy_diffuse_proto(
Word16 k, l;
Word16 num_freq_bands, num_freq_bands_diff;
Word32 *p_proto_diff_fx;
+
num_freq_bands = hParamMC->num_freq_bands;
move16();
num_freq_bands_diff = hParamMC->h_output_synthesis_params.max_band_decorr;
@@ -2785,11 +2529,13 @@ static Word16 ivas_param_mc_bin2dec_fx(
return out;
}
+
/*-------------------------------------------------------------------------
* ivas_param_mc_uniform_decoder()
*
* decode a uniformily coded sequence of float values
*------------------------------------------------------------------------*/
+
static Word16 ivas_param_mc_uniform_decoder_fx(
Word16 *seq, /* o : decoded sequence of float values hParamCodingInfo -> Q-quant*/
const Word16 sz_seq, /* i : number of values to decode */
@@ -2824,6 +2570,7 @@ static Word16 ivas_param_mc_uniform_decoder_fx(
*
* decode a sequency of inidices coded with a range coder
*------------------------------------------------------------------------*/
+
static Word16 ivas_param_mc_range_decoder_LC_fx(
UWord16 *bit_buffer, /* i : bit buffer to read from */
Word16 *x, /* o : decoded indices */
@@ -2880,6 +2627,7 @@ static Word16 ivas_param_mc_range_decoder_LC_fx(
return cur_bit_pos;
}
+
/*-------------------------------------------------------------------------
* param_mc_compute_interpolator()
*
@@ -2992,12 +2740,9 @@ static void ivas_param_mc_get_mixing_matrices_fx(
Word16 ch_idx1, ch_idx2, lfe_idx1, lfe_idx2;
Word16 remove_lfe;
Word16 lfe_indices[PARAM_MC_LOCAL_SZ_LFE_MAP];
-
Word32 Cx_fx[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS];
Word32 Cy_fx[MAX_CICP_CHANNELS * MAX_CICP_CHANNELS];
-
Word32 Cy_full_fx[MAX_CICP_CHANNELS * MAX_CICP_CHANNELS];
-
Word32 Cr_fx[MAX_CICP_CHANNELS * MAX_CICP_CHANNELS]; // Q(31 - Cr_e)
Word16 Cr_e;
Word32 Cy_diag_fx[MAX_OUTPUT_CHANNELS]; // Q(31 - Cy_diag_buff_e)
@@ -3017,19 +2762,14 @@ static void ivas_param_mc_get_mixing_matrices_fx(
Word16 mixing_matrix_res_local_e;
Word32 L_tmp;
Word16 tmp_e, tmp;
-
Word16 proto_matrix_e = hParamMC->h_output_synthesis_params.proto_matrix_e;
move16();
Word32 proto_matrix_noLFE_fx[PARAM_MC_MAX_TRANSPORT_CHANS * MAX_CICP_CHANNELS]; // Q(31 - proto_matrix_noLFE_e)
-
- Word32 mat_mult_buffer1_fx[MAX_CICP_CHANNELS * MAX_CICP_CHANNELS]; // Q(31 - mat_mult_buffer1_e)
-
- Word32 Cproto_diag_fx[MAX_CICP_CHANNELS]; // Q(31 - Cproto_diag_e)
+ Word32 mat_mult_buffer1_fx[MAX_CICP_CHANNELS * MAX_CICP_CHANNELS]; // Q(31 - mat_mult_buffer1_e)
+ Word32 Cproto_diag_fx[MAX_CICP_CHANNELS]; // Q(31 - Cproto_diag_e)
Word16 mat_mult_buffer1_e, proto_matrix_ptr_e, Cproto_diag_e;
-
Word32 *ptrMM_fx;
Word32 *ptrMM_out_fx;
-
Word16 Cy_e, Cx_e;
Word16 Cy_full_e;
Word16 new_e = 0;
@@ -3095,6 +2835,7 @@ static void ivas_param_mc_get_mixing_matrices_fx(
num_lfe_bands = PARAM_MC_MAX_BAND_LFE;
move16();
}
+
IF( hSynthesisOutputSetup->num_lfe > 0 && param_band_idx >= num_lfe_bands )
{
remove_lfe = 1;
@@ -3120,10 +2861,8 @@ static void ivas_param_mc_get_mixing_matrices_fx(
Cx_old_state_fx = hParamMC->h_output_synthesis_cov_state.cx_old_fx[param_band_idx];
Cy_old_state_fx = hParamMC->h_output_synthesis_cov_state.cy_old_fx[param_band_idx];
-
/* Getting mixing mtx */
/* estimate target cov from input cov and proto_matrix */
-
Cx_state_e = Cx_in_e;
move16();
matrix_product_fx( hParamMC->proto_matrix_int_fx, nY_intern, nX, 0, Cx_state_fx, nX, nX, 0, mat_mult_buffer1_fx );
@@ -3153,8 +2892,6 @@ static void ivas_param_mc_get_mixing_matrices_fx(
nY_intern,
nX, Cx_state_fx, Cx_state_e, Cproto_fx, Cproto_e, Cy_state_fx, &Cy_state_e );
- // dbgwrite2_txt(Cy_state_fx,nY_intern*nY_intern,"../cy_state_fx.txt");
-
/* Smoothing: Sum over two buffers */
IF( hParamMC->hMetadataPMC->bAttackPresent )
{
@@ -3169,10 +2906,8 @@ static void ivas_param_mc_get_mixing_matrices_fx(
ELSE
{
/* smoothing gains are now identical to one, simply add up */
- // v_add( Cy_state, Cy_old_state, Cy_full, nY_cov * nY_cov );
-
- v_add_fixed_me( Cx_state_fx, Cx_state_e, Cx_old_state_fx, hParamMC->h_output_synthesis_cov_state.cx_old_e[param_band_idx], Cx_fx, &Cx_e, imult1616( nX, nX ), 1 );
- v_add_fixed_me( Cy_state_fx, Cy_state_e, Cy_old_state_fx, hParamMC->h_output_synthesis_cov_state.cy_old_e[param_band_idx], Cy_full_fx, &Cy_full_e, imult1616( nY_cov, nY_cov ), 1 );
+ v_add_fx_me( Cx_state_fx, Cx_state_e, Cx_old_state_fx, hParamMC->h_output_synthesis_cov_state.cx_old_e[param_band_idx], Cx_fx, &Cx_e, imult1616( nX, nX ), 1 );
+ v_add_fx_me( Cy_state_fx, Cy_state_e, Cy_old_state_fx, hParamMC->h_output_synthesis_cov_state.cy_old_e[param_band_idx], Cy_full_fx, &Cy_full_e, imult1616( nY_cov, nY_cov ), 1 );
}
Copy32( Cx_state_fx, Cx_old_state_fx, imult1616( nX, nX ) );
@@ -3216,7 +2951,6 @@ static void ivas_param_mc_get_mixing_matrices_fx(
/* remove LFE IF necessary */
IF( remove_lfe )
{
-
Cy_e = Cy_full_e;
remove_lfe_from_cy_fx( nY_cov, lfe_indices, hSynthesisOutputSetup->num_lfe, Cy_full_fx, Cy_fx );
}
@@ -3233,7 +2967,6 @@ static void ivas_param_mc_get_mixing_matrices_fx(
matrix_product_diag_fx( mat_mult_buffer1_fx, mat_mult_buffer1_e, nY_band, nX, 0, proto_matrix_ptr_fx, proto_matrix_ptr_e, nY_band, nX, 1, Cproto_diag_fx, &Cproto_diag_e );
/* make sure we have no negative entries in Cproto_diag due to rounding errors */
-
FOR( ch_idx1 = 0; ch_idx1 < nY_band; ch_idx1++ )
{
if ( Cproto_diag_fx[ch_idx1] < 0 )
@@ -3243,13 +2976,13 @@ static void ivas_param_mc_get_mixing_matrices_fx(
}
}
-
/* Computing the mixing matrices */
/* bands with decorr */
IF( LT_16( brange[0], hParamMC->h_output_synthesis_params.max_band_decorr ) )
{
computeMixingMatrices_fx( nX, nY_band, Cx_fx, Cx_e, Cy_fx, Cy_e, proto_matrix_ptr_fx, proto_matrix_ptr_e, 0, PARAM_MC_REG_SX_FX, 0, PARAM_MC_REG_GHAT_FX, 0, mixing_matrix_local_fx, &mixing_matrix_local_e, Cr_fx, &Cr_e );
+
/* Compute mixing matrix FOR residual */
computeMixingMatricesResidual_fx( nY_band, Cproto_diag_fx, Cproto_diag_e, Cr_fx, Cr_e, PARAM_MC_REG_SX_FX, 0, PARAM_MC_REG_GHAT_FX, 0, mixing_matrix_res_local_fx, &mixing_matrix_res_local_e );
@@ -3424,13 +3157,6 @@ static void param_mc_update_mixing_matrices_fx(
* generate the target covariance matrix
*------------------------------------------------------------------------*/
-
-/*-------------------------------------------------------------------------
- * ivas_param_mc_dequantize_cov_fx()
- *
- * generate the target covariance matrix
- *------------------------------------------------------------------------*/
-
static void ivas_param_mc_dequantize_cov_fx(
PARAM_MC_DEC_HANDLE hParamMC, /* i : Parametric MC handle */
Word16 *ild_q_fx, /* i : sequence of dequantized ILD values Q8 */
@@ -3504,7 +3230,6 @@ static void ivas_param_mc_dequantize_cov_fx(
}
/* estimate ICCs from estimated Cproto */
-
FOR( k = 0; k < nY_int; k++ )
{
// a_fx[k] = 1.f / ( sqrtf( Cproto_fx[k + nY_int * k] ) + EPSILON );
@@ -3639,7 +3364,6 @@ static void ivas_param_mc_dequantize_cov_fx(
Word32 target_ch_ener_fx[MAX_CICP_CHANNELS]; // Q(31 - target_ch_ener_e)
Word16 target_ch_ener_e[MAX_CICP_CHANNELS];
Word32 dmx_ch_ener_fx[MAX_CICP_CHANNELS];
-
Word16 ls_conv_dmx_matrix_e[MAX_CICP_CHANNELS * MAX_CICP_CHANNELS];
set32_fx( target_ch_ener_fx, 0, MAX_CICP_CHANNELS );
@@ -3748,6 +3472,7 @@ static void ivas_param_mc_dequantize_cov_fx(
return;
}
+
/*-------------------------------------------------------------------------*
* param_mc_set_num_synth_bands()
*
@@ -3806,7 +3531,6 @@ static void param_mc_set_num_synth_bands(
* calculated the diffuse prototype information
*-------------------------------------------------------------------------*/
-
static ivas_error param_mc_get_diff_proto_info_fx(
const Word32 *proto_mtx, /* i : protoype matrix for the synthesis */
const UWord16 nchan_transport, /* i : number of transport channels */
@@ -3841,7 +3565,7 @@ static ivas_error param_mc_get_diff_proto_info_fx(
p_diff_proto_info->num_protos_diff = 1;
move16();
- mvr2r_inc_fixed( proto_mtx, nchan_out_cov, proto_fac_fx, nchan_out_cov, nchan_transport );
+ mvr2r_inc_fx( proto_mtx, nchan_out_cov, proto_fac_fx, nchan_out_cov, nchan_transport );
p_diff_proto_info->proto_index_diff[0] = 0;
move16();
@@ -3892,7 +3616,7 @@ static ivas_error param_mc_get_diff_proto_info_fx(
proto_mtx_ptr += nchan_out_cov;
}
- mvr2r_inc_fixed( proto_mtx + cur_out_ch, nchan_out_cov, proto_fac_fx + p_diff_proto_info->num_protos_diff, nchan_out_cov, nchan_transport );
+ mvr2r_inc_fx( proto_mtx + cur_out_ch, nchan_out_cov, proto_fac_fx + p_diff_proto_info->num_protos_diff, nchan_out_cov, nchan_transport );
p_diff_proto_info->proto_index_diff[cur_out_ch] = p_diff_proto_info->num_protos_diff;
move16();
@@ -3941,6 +3665,7 @@ static ivas_error param_mc_get_diff_proto_info_fx(
proto_fac_ptr += nchan_out_cov;
}
}
+
return IVAS_ERR_OK;
}
diff --git a/lib_dec/ivas_mc_paramupmix_dec_fx.c b/lib_dec/ivas_mc_paramupmix_dec_fx.c
index fa36c4f34adb85aa4c40ac21d3ca6ea4caaf176c..d28ba83282e91f8c9fb55b99d97a0a0ba82f0ca0 100644
--- a/lib_dec/ivas_mc_paramupmix_dec_fx.c
+++ b/lib_dec/ivas_mc_paramupmix_dec_fx.c
@@ -206,10 +206,10 @@ void ivas_mc_paramupmix_dec_read_BS(
*
*------------------------------------------------------------------------*/
-void ivas_mc_paramupmix_dec_digest_tc(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
- const UWord8 nCldfbSlots, /* i : number of CLFBS slots in the transport channels*/
- const Word16 nSamplesForRendering /* i : number of samples provided */
+void ivas_mc_paramupmix_dec_digest_tc_fx(
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
+ const UWord8 nCldfbSlots, /* i : number of CLDFB slots in transport channels */
+ const Word16 nSamplesForRendering /* i : number of samples provided */
)
{
MC_PARAMUPMIX_DEC_HANDLE hMCParamUpmix;
@@ -235,7 +235,7 @@ void ivas_mc_paramupmix_dec_digest_tc(
*
*------------------------------------------------------------------------*/
-void ivas_mc_paramupmix_dec_render(
+void ivas_mc_paramupmix_dec_render_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder handle */
const UWord16 nSamplesAsked, /* i : number of CLDFB slots requested */
UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
@@ -252,7 +252,7 @@ void ivas_mc_paramupmix_dec_render(
hMCParamUpmix = st_ivas->hMCParamUpmix;
assert( hMCParamUpmix );
- push_wmops( "ivas_mc_paramupmix_dec_render" );
+ push_wmops( "ivas_mc_paramupmix_dec_render_fx" );
FOR( ch = 0; ch < MAX_OUTPUT_CHANNELS; ch++ )
{
@@ -408,6 +408,9 @@ ivas_error ivas_mc_paramupmix_dec_open(
{
Word16 nchan_to_allocate;
Word16 nchan_tc;
+#ifdef NONBE_1303_REND_GRANULARITY
+ Word16 granularity;
+#endif
TC_BUFFER_MODE buffer_mode;
buffer_mode = TC_BUFFER_MODE_RENDERER;
@@ -434,7 +437,13 @@ ivas_error ivas_mc_paramupmix_dec_open(
move16();
}
+#ifdef NONBE_1303_REND_GRANULARITY
+ granularity = ivas_jbm_dec_get_render_granularity_fx( st_ivas->renderer_type, RENDERER_DISABLE, output_Fs );
+
+ IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, buffer_mode, nchan_tc, nchan_to_allocate, nchan_to_allocate, granularity ) ), IVAS_ERR_OK ) )
+#else
IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, buffer_mode, nchan_tc, nchan_to_allocate, nchan_to_allocate, NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, CLDFB_SLOT_NS ) ) ), IVAS_ERR_OK ) )
+#endif
{
return error;
}
@@ -737,7 +746,7 @@ static void ivas_mc_paramupmix_dec_sf(
Word32 Cldfb_RealBuffer_Binaural_fx[MAX_HEAD_ROT_POSES][BINAURAL_CHANNELS][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX];
Word32 Cldfb_ImagBuffer_Binaural_fx[MAX_HEAD_ROT_POSES][BINAURAL_CHANNELS][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX];
- int16_t slot_index_start;
+ Word16 slot_index_start;
hMCParamUpmix = st_ivas->hMCParamUpmix;
assert( hMCParamUpmix );
diff --git a/lib_dec/ivas_mct_core_dec_fx.c b/lib_dec/ivas_mct_core_dec_fx.c
index 3a2cd3118ae5b7ababf7726087d91f5e0f2626dd..f96a20126250b065cfcc5d50b404ae4c780ba283 100644
--- a/lib_dec/ivas_mct_core_dec_fx.c
+++ b/lib_dec/ivas_mct_core_dec_fx.c
@@ -75,16 +75,12 @@ void ivas_mct_side_bits_fx(
{
FOR( ch = 0; ch < CPE_CHANNELS; ch++ )
{
-#ifdef ADJUST_MCT_CHANNELS_MAX
IF( LT_16( i, MCT_MAX_CHANNELS ) )
{
-#endif
sts[i] = hCPE[cpe_id]->hCoreCoder[ch];
i = add( i, 1 );
move16();
-#ifdef ADJUST_MCT_CHANNELS_MAX
}
-#endif
}
}
@@ -225,30 +221,13 @@ void ivas_mct_core_dec(
{
FOR( ch = 0; ch < CPE_CHANNELS; ( ch++, i++ ) )
{
-#ifdef ADJUST_MCT_CHANNELS_MAX
IF( LT_16( i, MCT_MAX_CHANNELS ) )
{
-#endif
sts[i] = hCPE[cpe_id]->hCoreCoder[ch];
-#ifdef ADJUST_MCT_CHANNELS_MAX
}
-#endif
}
}
-#ifndef ADJUST_MCT_CHANNELS_MAX
- /*seems like obsolete code*/
- i = 0;
- move16();
- FOR( ch = 0; ch < nChannels; ch++ )
- {
- IF( EQ_32( sts[ch]->mct_chan_mode, MCT_CHAN_MODE_IGNORE ) )
- {
- CONTINUE;
- }
- i = add( i, 1 );
- }
-#endif
bfi = sts[0]->bfi;
move16();
diff --git a/lib_dec/ivas_mct_dec_fx.c b/lib_dec/ivas_mct_dec_fx.c
index cb533bb5a0328bcdaf20013c484d0184613e08ce..aaffbee9ae66d0bffb33a2ccde5dec69dbf5ccd0 100644
--- a/lib_dec/ivas_mct_dec_fx.c
+++ b/lib_dec/ivas_mct_dec_fx.c
@@ -48,11 +48,7 @@
* Local function prototypes
*-----------------------------------------------------------------------*/
-#ifdef FIX_HRTF_LOAD
static ivas_error ivas_mc_dec_reconfig_fx( Decoder_Struct *st_ivas );
-#else
-static ivas_error ivas_mc_dec_reconfig_fx( Decoder_Struct *st_ivas, UWord16 *nSamplesRendered, Word16 *data );
-#endif
/*--------------------------------------------------------------------------*
@@ -203,12 +199,9 @@ ivas_error ivas_mct_dec_fx(
move16();
}
-
/* MCT core decoder */
Word16 q_x[MAX_TRANSPORT_CHANNELS];
ivas_mct_core_dec( hMCT, st_ivas->hCPE, nCPE, output_fx, q_x );
- // Scaling output buffer back to Q11
-
/* for sba to stereo output disable any further processing for TCs > 2 as it is not needed*/
test();
@@ -242,7 +235,6 @@ ivas_error ivas_mct_dec_fx(
ivas_mdct_core_tns_ns_fx( hCPE, fUseTns[cpe_id], tnsData[cpe_id], x_fx, Aq_fx_32[cpe_id], 1, 20 );
}
-
test();
test();
IF( EQ_16( st_ivas->renderer_type, RENDERER_MC ) )
@@ -334,7 +326,6 @@ ivas_error ivas_mct_dec_fx(
}
}
-
/*----------------------------------------------------------------*
* CoreCoder Post-processing and updates
*----------------------------------------------------------------*/
@@ -380,6 +371,7 @@ ivas_error ivas_mct_dec_fx(
return error;
}
Copy_Scale_sig_16_32_no_sat( synth_fx[n], output_fx[( cpe_id * CPE_CHANNELS ) + n], output_frame, sub( Q11, Q_synth ) ); // Q11
+
/* Save synthesis for HQ FEC */
Word32 output_fx_[L_FRAME48k];
Copy32( output_fx[( cpe_id * CPE_CHANNELS ) + n], output_fx_, L_FRAME48k ); // Q11
@@ -442,6 +434,7 @@ ivas_error ivas_mct_dec_fx(
*
* Create, allocate and initialize IVAS decoder MCT handle
*-------------------------------------------------------------------------*/
+
ivas_error create_mct_dec_fx(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
)
@@ -534,6 +527,7 @@ ivas_error create_mct_dec_fx(
hMCT->hBlockData[n]->ch2 = 0;
move16();
move16();
+
/*-----------------------------------------------------------------*
* MDCT stereo initialization
*-----------------------------------------------------------------*/
@@ -575,6 +569,7 @@ ivas_error create_mct_dec_fx(
return IVAS_ERR_OK;
}
+
/*-------------------------------------------------------------------------
* mct_dec_reconfigure()
*
@@ -822,11 +817,6 @@ void ivas_mct_dec_close(
ivas_error ivas_mc_dec_config_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
const Word16 idx /* i : LS config. index */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord16 *nSamplesRendered, /* o : samples flushed from last frame (JBM) */
- Word16 *data /* o : output synthesis signal */
-#endif
)
{
AUDIO_CONFIG signaled_config;
@@ -867,11 +857,7 @@ ivas_error ivas_mc_dec_config_fx(
}
}
-#ifdef FIX_HRTF_LOAD
IF( NE_32( ( error = ivas_mc_dec_reconfig_fx( st_ivas ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_mc_dec_reconfig_fx( st_ivas, nSamplesRendered, data ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -903,11 +889,6 @@ ivas_error ivas_mc_dec_config_fx(
static ivas_error ivas_mc_dec_reconfig_fx(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord16 *nSamplesRendered, /* o : number of samples flushed from the last frame (JBM) */
- Word16 *data /* o : output synthesis signal */
-#endif
)
{
Word16 nchan_transport_old, nSCE_old, nCPE_old, sba_dirac_stereo_flag_old, nchan_hp20_old;
@@ -921,17 +902,8 @@ static ivas_error ivas_mc_dec_reconfig_fx(
Word16 tc_nchan_tc_new;
Word16 tc_nchan_allocate_new;
Word16 tc_granularity_new;
-#ifndef FIX_HRTF_LOAD
- AUDIO_CONFIG intern_config_old;
- IVAS_OUTPUT_SETUP hIntSetupOld;
-#endif
Word16 nchan_out_buff_old, nchan_out_buff;
-
-#ifndef FIX_HRTF_LOAD
- error = IVAS_ERR_OK;
- move32();
-#endif
ivas_total_brate = st_ivas->hDecoderConfig->ivas_total_brate;
move32();
nchan_transport_old = st_ivas->nchan_transport;
@@ -970,14 +942,6 @@ static ivas_error ivas_mc_dec_reconfig_fx(
st_ivas->sba_dirac_stereo_flag = ivas_get_sba_dirac_stereo_flag( st_ivas );
move16();
-#ifndef FIX_HRTF_LOAD
- /* save old IntSetup, might be needed for JBM flushing...*/
- intern_config_old = st_ivas->intern_config;
- move32();
- hIntSetupOld = st_ivas->hIntSetup;
- tc_granularity_new = 1;
- move16();
-#endif
/* renderer might have changed, reselect */
renderer_type_old = st_ivas->renderer_type;
move32();
@@ -987,8 +951,7 @@ static ivas_error ivas_mc_dec_reconfig_fx(
ivas_output_init( &( st_ivas->hIntSetup ), st_ivas->intern_config );
/* transfer subframe info from DirAC or ParamMC to central tc buffer */
-
- if ( st_ivas->hTcBuffer->tc_buffer_mode != TC_BUFFER_MODE_BUFFER )
+ IF( NE_32( st_ivas->hTcBuffer->tc_buffer_mode, TC_BUFFER_MODE_BUFFER ) )
{
test();
IF( EQ_16( last_mc_mode, MC_MODE_PARAMMC ) )
@@ -1019,26 +982,25 @@ static ivas_error ivas_mc_dec_reconfig_fx(
/* JBM: when granularity goes down (e.g. MCT with CREND -> ParamMC with binaural fastconv
render what still fits in the new granularity */
+#ifdef NONBE_1303_REND_GRANULARITY
+ tc_granularity_new = ivas_jbm_dec_get_render_granularity_fx( st_ivas->renderer_type, RENDERER_DISABLE, st_ivas->hDecoderConfig->output_Fs );
+#else
tc_granularity_new = ivas_jbm_dec_get_render_granularity( st_ivas->renderer_type, st_ivas->ivas_format, st_ivas->mc_mode, st_ivas->hDecoderConfig->output_Fs );
move16();
- IF( LT_16( tc_granularity_new, st_ivas->hTcBuffer->n_samples_granularity ) ){
-#ifdef FIX_HRTF_LOAD
- /* flush already done in IVAS_DEC_ReadFormat() */
-#else
- IF( NE_32( ( error = ivas_jbm_dec_flush_renderer_fx( st_ivas, tc_granularity_new, renderer_type_old, intern_config_old, &hIntSetupOld, last_mc_mode, ISM_MODE_NONE, nSamplesRendered, data ) ), IVAS_ERR_OK ) ){
- return error;
-}
#endif
+ IF( LT_16( tc_granularity_new, st_ivas->hTcBuffer->n_samples_granularity ) )
+ {
+ /* flush already done in IVAS_DEC_ReadFormat() */
}
/* JBM: when granularity goes up set samples to discard at the beginning of the frame */
- ELSE
- IF( GT_16( tc_granularity_new, st_ivas->hTcBuffer->n_samples_granularity ) )
+ ELSE IF( GT_16( tc_granularity_new, st_ivas->hTcBuffer->n_samples_granularity ) )
{
- IF( NE_32( ( error = ivas_jbm_dec_set_discard_samples( st_ivas ) ), IVAS_ERR_OK ) )
+ IF( NE_32( ( error = ivas_jbm_dec_set_discard_samples_fx( st_ivas ) ), IVAS_ERR_OK ) )
{
return error;
}
}
+
IF( EQ_16( st_ivas->mc_mode, MC_MODE_MCT ) )
{
st_ivas->nchan_transport = ivas_mc_ls_setup_get_num_channels_fx( ivas_mc_map_output_config_to_mc_ls_setup_fx( st_ivas->transport_config ) );
@@ -1069,17 +1031,10 @@ static ivas_error ivas_mc_dec_reconfig_fx(
ivas_masa_dec_close_fx( &( st_ivas->hMasa ) );
ivas_qmetadata_close_fx( &st_ivas->hQMetaData );
-#ifndef NONBE_FIX_1220_OMASA_JBM_EXT_USAN
- IF( st_ivas->hDirAC != NULL )
- {
-#endif
- ivas_dirac_rend_close_fx( &( st_ivas->hDirACRend ) );
- ivas_spat_hSpatParamRendCom_close_fx( &( st_ivas->hSpatParamRendCom ) );
- ivas_dirac_dec_close_fx( &( st_ivas->hDirAC ) );
- vbap_free_data_fx( &( st_ivas->hVBAPdata ) );
-#ifndef NONBE_FIX_1220_OMASA_JBM_EXT_USAN
- }
-#endif
+ ivas_dirac_rend_close_fx( &( st_ivas->hDirACRend ) );
+ ivas_spat_hSpatParamRendCom_close_fx( &( st_ivas->hSpatParamRendCom ) );
+ ivas_dirac_dec_close_fx( &( st_ivas->hDirAC ) );
+ vbap_free_data_fx( &( st_ivas->hVBAPdata ) );
/* init LS conversion if the renderer type asks for it */
test();
@@ -1159,17 +1114,10 @@ static ivas_error ivas_mc_dec_reconfig_fx(
ivas_masa_dec_close_fx( &( st_ivas->hMasa ) );
ivas_qmetadata_close_fx( &st_ivas->hQMetaData );
-#ifndef NONBE_FIX_1220_OMASA_JBM_EXT_USAN
- IF( st_ivas->hDirAC != NULL )
- {
-#endif
- ivas_dirac_rend_close_fx( &( st_ivas->hDirACRend ) );
- ivas_spat_hSpatParamRendCom_close_fx( &( st_ivas->hSpatParamRendCom ) );
- ivas_dirac_dec_close_fx( &( st_ivas->hDirAC ) );
- vbap_free_data_fx( &( st_ivas->hVBAPdata ) );
-#ifndef NONBE_FIX_1220_OMASA_JBM_EXT_USAN
- }
-#endif
+ ivas_dirac_rend_close_fx( &( st_ivas->hDirACRend ) );
+ ivas_spat_hSpatParamRendCom_close_fx( &( st_ivas->hSpatParamRendCom ) );
+ ivas_dirac_dec_close_fx( &( st_ivas->hDirAC ) );
+ vbap_free_data_fx( &( st_ivas->hVBAPdata ) );
IF( EQ_16( last_mc_mode, MC_MODE_MCT ) )
{
@@ -1298,6 +1246,7 @@ static ivas_error ivas_mc_dec_reconfig_fx(
st->hTcxCfg->fIsTNSAllowed = getTnsAllowed( ivas_total_brate, st->igf, st->element_mode );
move16();
}
+
IF( EQ_16( st_ivas->mc_mode, MC_MODE_MCMASA ) )
{
UWord8 separateChannelEnabled;
@@ -1339,6 +1288,7 @@ static ivas_error ivas_mc_dec_reconfig_fx(
{
return error;
}
+
IF( EQ_16( last_mc_mode, MC_MODE_MCT ) && EQ_16( st_ivas->mc_mode, MC_MODE_PARAMMC ) && GT_16( st_ivas->nchan_transport, CPE_CHANNELS ) )
{
st = st_ivas->hCPE[1]->hCoreCoder[1];
@@ -1357,12 +1307,12 @@ static ivas_error ivas_mc_dec_reconfig_fx(
/*-----------------------------------------------------------------*
* re-configure HP20 memories
*-----------------------------------------------------------------*/
+
IF( NE_32( ( error = ivas_hp20_dec_reconfig_fx( st_ivas, nchan_hp20_old ) ), IVAS_ERR_OK ) )
{
return error;
}
-
/*-----------------------------------------------------------------*
* Reconfigure renderers
*-----------------------------------------------------------------*/
@@ -1370,9 +1320,6 @@ static ivas_error ivas_mc_dec_reconfig_fx(
IF( EQ_16( st_ivas->mc_mode, MC_MODE_MCMASA ) )
{
test();
-#ifndef NONBE_FIX_1220_OMASA_JBM_EXT_USAN
- test();
-#endif
IF( ( NE_16( st_ivas->renderer_type, RENDERER_DISABLE ) ) && ( NE_16( st_ivas->renderer_type, RENDERER_MCMASA_MONO_STEREO ) ) )
{
IF( st_ivas->hDirAC != NULL )
@@ -1392,11 +1339,7 @@ static ivas_error ivas_mc_dec_reconfig_fx(
}
}
}
-#ifdef NONBE_FIX_1220_OMASA_JBM_EXT_USAN
ELSE IF( EQ_16( st_ivas->renderer_type, RENDERER_DISABLE ) )
-#else
- ELSE IF( EQ_16( st_ivas->renderer_type, RENDERER_DISABLE ) && st_ivas->hDirAC != NULL )
-#endif
{
ivas_dirac_rend_close_fx( &( st_ivas->hDirACRend ) );
ivas_spat_hSpatParamRendCom_close_fx( &( st_ivas->hSpatParamRendCom ) );
@@ -1429,6 +1372,7 @@ static ivas_error ivas_mc_dec_reconfig_fx(
IF( st_ivas->hBinRenderer != NULL && ( NE_16( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV ) && NE_16( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) ) )
{
ivas_binRenderer_close_fx( &st_ivas->hBinRenderer );
+
test();
IF( ( st_ivas->hDecoderConfig->Opt_Headrotation || st_ivas->hDecoderConfig->Opt_ExternalOrientation ) )
{
@@ -1443,11 +1387,7 @@ static ivas_error ivas_mc_dec_reconfig_fx(
test();
IF( ( st_ivas->hCrendWrapper != NULL ) && ( st_ivas->hCrendWrapper->hCrend[0] != NULL ) && ( NE_16( st_ivas->renderer_type, RENDERER_BINAURAL_MIXER_CONV ) && NE_16( st_ivas->renderer_type, RENDERER_BINAURAL_MIXER_CONV_ROOM ) && ( NE_16( st_ivas->renderer_type, RENDERER_BINAURAL_OBJECTS_TD ) || NE_16( st_ivas->hIntSetup.output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) ) ) )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
ivas_rend_closeCrend_fx( &( st_ivas->hCrendWrapper ) );
-#else
- ivas_rend_closeCrend_fx( &( st_ivas->hCrendWrapper ), ( st_ivas->hSplitBinRend == NULL ) ? 1 : st_ivas->hSplitBinRend->splitrend.multiBinPoseData.num_poses );
-#endif
}
test();
@@ -1512,11 +1452,7 @@ static ivas_error ivas_mc_dec_reconfig_fx(
}
ELSE IF( st_ivas->hCrendWrapper == NULL && ( EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_MIXER_CONV ) || EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_MIXER_CONV_ROOM ) ) )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
IF( ( error = ivas_rend_openCrend_fx( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, st_ivas->hRenderConfig, st_ivas->hHrtfCrend, st_ivas->hHrtfStatistics, st_ivas->hDecoderConfig->output_Fs, 0, ( st_ivas->hSplitBinRend == NULL ) ? 1 : st_ivas->hSplitBinRend->splitrend.multiBinPoseData.num_poses ) ) != IVAS_ERR_OK )
-#else
- IF( ( error = ivas_rend_openCrend_fx( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, st_ivas->hRenderConfig, st_ivas->hSetOfHRTF, st_ivas->hHrtfStatistics, st_ivas->hDecoderConfig->output_Fs, ( st_ivas->hSplitBinRend == NULL ) ? 1 : st_ivas->hSplitBinRend->splitrend.multiBinPoseData.num_poses ) ) != IVAS_ERR_OK )
-#endif
{
return error;
}
@@ -1525,6 +1461,7 @@ static ivas_error ivas_mc_dec_reconfig_fx(
}
}
}
+
/*-----------------------------------------------------------------*
* CLDFB instances
*-----------------------------------------------------------------*/
@@ -1537,6 +1474,7 @@ static ivas_error ivas_mc_dec_reconfig_fx(
/*-----------------------------------------------------------------*
* Allocate the LFE handle that is coded separately after the allocation of the core coders
*-----------------------------------------------------------------*/
+
test();
IF( ( EQ_16( st_ivas->mc_mode, MC_MODE_MCT ) || EQ_16( st_ivas->mc_mode, MC_MODE_PARAMUPMIX ) ) )
{
@@ -1600,7 +1538,7 @@ static ivas_error ivas_mc_dec_reconfig_fx(
DECODER_TC_BUFFER_HANDLE hTcBuffer;
hTcBuffer = st_ivas->hTcBuffer;
- tc_buffer_mode_new = ivas_jbm_dec_get_tc_buffer_mode( st_ivas );
+ tc_buffer_mode_new = ivas_jbm_dec_get_tc_buffer_mode_fx( st_ivas );
tc_nchan_tc_new = ivas_jbm_dec_get_num_tc_channels_fx( st_ivas );
tc_nchan_allocate_new = tc_nchan_tc_new;
move16();
@@ -1611,8 +1549,23 @@ static ivas_error ivas_mc_dec_reconfig_fx(
test();
IF( EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) || EQ_16( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) || EQ_16( st_ivas->renderer_type, RENDERER_STEREO_PARAMETRIC ) )
{
+#ifdef FIX_NCHAN_BUFFERS
+ tc_nchan_allocate_new = BINAURAL_CHANNELS;
+ move16();
+ test();
+ IF( st_ivas->hDiracDecBin[0] != NULL && st_ivas->hDiracDecBin[0]->useTdDecorr )
+ {
+ tc_nchan_allocate_new = 2 * BINAURAL_CHANNELS;
+ move16();
+ }
+ ELSE IF( st_ivas->hOutSetup.separateChannelEnabled )
+ {
+ tc_nchan_allocate_new = add( tc_nchan_allocate_new, 1 );
+ }
+#else
tc_nchan_allocate_new = BINAURAL_CHANNELS * 2;
move16();
+#endif
tc_nchan_full_new = tc_nchan_allocate_new;
move16();
}
@@ -1685,9 +1638,8 @@ static ivas_error ivas_mc_dec_reconfig_fx(
}
}
-
/*-----------------------------------------------------------------*
- * floating-point output audio buffers
+ * output audio buffers
*-----------------------------------------------------------------*/
nchan_out_buff = ivas_get_nchan_buffers_dec_fx( st_ivas, -1, -1 );
@@ -1697,9 +1649,5 @@ static ivas_error ivas_mc_dec_reconfig_fx(
return error;
}
-#ifdef FIX_HRTF_LOAD
return IVAS_ERR_OK;
-#else
-return error;
-#endif
}
diff --git a/lib_dec/ivas_mct_dec_mct_fx_fx.c b/lib_dec/ivas_mct_dec_mct_fx_fx.c
index 299a09a9346a8942db067338b024ab90a2bd2e6e..c5e884f4694db0c4903c45293998e6be42b6fd61 100644
--- a/lib_dec/ivas_mct_dec_mct_fx_fx.c
+++ b/lib_dec/ivas_mct_dec_mct_fx_fx.c
@@ -205,7 +205,7 @@ static void applyGlobalILD_fx(
qratio = L_shl( qratio, q_qratio );
FOR( k = 0; k < nSubframes; k++ )
{
- v_multc_fixed( x[ch][k], qratio, x[ch][k], L_subframeTCX ); // Qx - 5 + q_qratio
+ v_multc_fx( x[ch][k], qratio, x[ch][k], L_subframeTCX ); // Qx - 5 + q_qratio
scale_sig32( x[ch][k], L_subframeTCX, sub( 5, q_qratio ) );
}
}
diff --git a/lib_dec/ivas_mdct_core_dec_fx.c b/lib_dec/ivas_mdct_core_dec_fx.c
index bfe81d4bb02aa31be6b9c853da71c5da1c944693..b951258852201ff1da3b8077675d4bf8cfc2e630 100644
--- a/lib_dec/ivas_mdct_core_dec_fx.c
+++ b/lib_dec/ivas_mdct_core_dec_fx.c
@@ -1187,10 +1187,8 @@ void ivas_mdct_core_reconstruct_fx(
set16_fx( synthFB_fx, 0, L_FRAME_PLUS + M );
IF( st->core != ACELP_CORE )
{
-#ifdef FIX_2003_CON_TCX_OVERFLOW
st->Q_syn_factor = 0;
move16();
-#endif
Word16 q_win0 = Q15;
move16();
Word16 q_winFB0 = Q15;
@@ -1429,11 +1427,7 @@ void ivas_mdct_core_reconstruct_fx(
{
#endif
Copy( synthFB_fx, signal_outFB_fx[ch], st->hTcxDec->L_frameTCX );
-#ifdef FIX_2003_CON_TCX_OVERFLOW
e_sig[ch] = sub( 15, q_syn + st->Q_syn_factor );
-#else
- e_sig[ch] = sub( 15, q_syn );
-#endif
move16();
#ifndef FIX_938_COMPILER_WARNING
}
@@ -1618,7 +1612,7 @@ void ivas_mdct_core_tns_ns_fx(
scf_e[ind] = sub( 15, q_shift );
move16();
}
- TonalMDCTConceal_SaveFreqSignal_ivas_fx( st->hTonalMDCTConc, x_fx[ch][k], x_e, L_frameTCX[ch], L_frame[ch], &scf_fx[0], scf_e, 0, get_igf_startline( st, L_frame[ch], L_frameTCX[ch] ) );
+ TonalMDCTConceal_SaveFreqSignal_ivas_fx( st->hTonalMDCTConc, x_fx[ch][k], x_e, L_frameTCX[ch], L_frame[ch], &scf_fx[0], scf_e, 0, get_igf_startline_fx( st, L_frame[ch], L_frameTCX[ch] ) );
}
}
ELSE
@@ -1714,9 +1708,9 @@ void ivas_mdct_core_tns_ns_fx(
however, this frame is nevertheless acting as an transition frame as also visible in L_frameTCX; thus, the safer approach to prevent high frequency artifacts is to apply the SNS up to L_frameTCX;
in case this is not necessary, x[] is filled with zeros, and the multiplication is not causing any additional harm
*/
- v_multc_fixed( x_fx[ch][k] + st->hTcxCfg->psychParamsCurrent->nBins, sns_int_scf_fx[FDNS_NPTS - 1], x_fx[ch][k] + st->hTcxCfg->psychParamsCurrent->nBins, sub( s_max( L_spec[ch], L_frameTCX[ch] ), st->hTcxCfg->psychParamsCurrent->nBins ) );
+ v_multc_fx( x_fx[ch][k] + st->hTcxCfg->psychParamsCurrent->nBins, sns_int_scf_fx[FDNS_NPTS - 1], x_fx[ch][k] + st->hTcxCfg->psychParamsCurrent->nBins, sub( s_max( L_spec[ch], L_frameTCX[ch] ), st->hTcxCfg->psychParamsCurrent->nBins ) );
#else
- v_multc_fixed( x_fx[ch][k] + st->hTcxCfg->psychParamsCurrent->nBins, sns_int_scf_fx[FDNS_NPTS - 1], x_fx[ch][k] + st->hTcxCfg->psychParamsCurrent->nBins, sub( L_spec[ch], st->hTcxCfg->psychParamsCurrent->nBins ) );
+ v_multc_fx( x_fx[ch][k] + st->hTcxCfg->psychParamsCurrent->nBins, sns_int_scf_fx[FDNS_NPTS - 1], x_fx[ch][k] + st->hTcxCfg->psychParamsCurrent->nBins, sub( L_spec[ch], st->hTcxCfg->psychParamsCurrent->nBins ) );
#endif
q_2 = sub( add( q_x, q_sns_int_scf ), 31 );
diff --git a/lib_dec/ivas_mono_dmx_renderer_fx.c b/lib_dec/ivas_mono_dmx_renderer_fx.c
index 848f457eb468cbf5486ec65b99905265ff1f82a0..6c64eee816fc5cfbb4db6c676a09e080e004d4bc 100644
--- a/lib_dec/ivas_mono_dmx_renderer_fx.c
+++ b/lib_dec/ivas_mono_dmx_renderer_fx.c
@@ -106,9 +106,10 @@ void ivas_mono_dmx_renderer_close(
*
* Downmix process
*------------------------------------------------------------------------*/
+
void ivas_ism_mono_dmx_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- Word32 *output_f_fx[], /* i/o: synthesized core-coder transport channels/mono output Qin = 11/ Qout = 8*/
+ Word32 *output_fx[], /* i/o: synthesized core-coder transport channels/mono output Qin = 11/ Qout = 8*/
const Word16 output_frame /* i : output frame length */
)
{
@@ -149,7 +150,7 @@ void ivas_ism_mono_dmx_fx(
move16();
FOR( Word16 lp = 0; lp < numInputChannels; lp++ )
{
- Word16 norm = L_norm_arr( output_f_fx[lp], output_frame );
+ Word16 norm = L_norm_arr( output_fx[lp], output_frame );
Output_norm = s_min( Output_norm, norm );
}
Q_shift = sub( Output_norm, find_guarded_bits_fx( numInputChannels ) );
@@ -157,11 +158,10 @@ void ivas_ism_mono_dmx_fx(
/* Compute the Proto Signal */
FOR( i = 0; i < numInputChannels; i++ )
{
- v_shr_32( output_f_fx[i], output_shr, output_frame, -Q_shift );
+ v_shr_32( output_fx[i], output_shr, output_frame, -Q_shift );
v_add_32( output_shr, proto_signal_fx, proto_signal_fx, output_frame );
}
-
proto_norm = L_norm_arr( proto_signal_fx, output_frame );
proto_shift = sub( proto_norm, shr( ( add( find_guarded_bits_fx( output_frame ), 1 ) ), 1 ) );
@@ -176,7 +176,7 @@ void ivas_ism_mono_dmx_fx(
protoEner_pre = L_add( protoEner_pre, Mpy_32_32( proto_sh, proto_sh ) );
FOR( j = 0; j < numInputChannels; j++ )
{
- Word32 output_f_shift = L_shl( output_f_fx[j][i], input_shift );
+ Word32 output_f_shift = L_shl( output_fx[j][i], input_shift );
inputEner_pre = L_add( inputEner_pre, Mpy_32_32( output_f_shift, output_f_shift ) );
}
}
@@ -256,10 +256,9 @@ void ivas_ism_mono_dmx_fx(
move16();
}
-
/* equalize the downmix */
- v_multc_fixed_16( proto_signal_fx, eq_fx, output_f_fx[0], output_frame );
- v_shr_32( output_f_fx[0], output_f_fx[0], output_frame, Q_shift );
+ v_multc_fx_16( proto_signal_fx, eq_fx, output_fx[0], output_frame );
+ v_shr_32( output_fx[0], output_fx[0], output_frame, Q_shift );
return;
}
@@ -272,7 +271,7 @@ void ivas_ism_mono_dmx_fx(
void ivas_mono_stereo_downmix_mcmasa_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
- Word32 *output_f_fx[], /* i/o: synthesized core-coder transport channels/mono or stereo output Q11*/
+ Word32 *output_fx[], /* i/o: synthesized core-coder transport channels/mono or stereo output Q11*/
Word16 output_frame /* i : output frame length per channel */
)
{
@@ -286,8 +285,8 @@ void ivas_mono_stereo_downmix_mcmasa_fx(
test();
IF( EQ_16( st_ivas->hDecoderConfig->nchan_out, 2 ) && st_ivas->hOutSetup.separateChannelEnabled )
{
- v_multc_acc_32_16( output_f_fx[st_ivas->hOutSetup.separateChannelIndex], INV_SQRT2_FX_Q15, output_f_fx[0], output_frame ); // Q11
- v_multc_acc_32_16( output_f_fx[st_ivas->hOutSetup.separateChannelIndex], INV_SQRT2_FX_Q15, output_f_fx[1], output_frame ); // Q11
+ v_multc_acc_32_16( output_fx[st_ivas->hOutSetup.separateChannelIndex], INV_SQRT2_FX_Q15, output_fx[0], output_frame ); // Q11
+ v_multc_acc_32_16( output_fx[st_ivas->hOutSetup.separateChannelIndex], INV_SQRT2_FX_Q15, output_fx[1], output_frame ); // Q11
}
/* Mono downmix */
ELSE IF( EQ_16( st_ivas->hDecoderConfig->nchan_out, 1 ) )
@@ -295,16 +294,16 @@ void ivas_mono_stereo_downmix_mcmasa_fx(
/* Downmix L and R to dmx_tmp */
FOR( i = 0; i < st_ivas->nchan_transport; i++ )
{
- v_multc_acc_32_16( output_f_fx[i], INV_SQRT2_FX_Q15, dmx_tmp_fx, output_frame ); // Q11
+ v_multc_acc_32_16( output_fx[i], INV_SQRT2_FX_Q15, dmx_tmp_fx, output_frame ); // Q11
}
/* Add center channel */
IF( st_ivas->hOutSetup.separateChannelEnabled )
{
- v_add_32( output_f_fx[st_ivas->hOutSetup.separateChannelIndex], dmx_tmp_fx, dmx_tmp_fx, output_frame );
+ v_add_32( output_fx[st_ivas->hOutSetup.separateChannelIndex], dmx_tmp_fx, dmx_tmp_fx, output_frame );
}
/* Move to output */
- Copy32( dmx_tmp_fx, output_f_fx[0], output_frame ); // Q11
+ Copy32( dmx_tmp_fx, output_fx[0], output_frame ); // Q11
}
return;
@@ -319,7 +318,7 @@ void ivas_mono_stereo_downmix_mcmasa_fx(
void ivas_apply_non_diegetic_panning_fx(
Word32 *input_f_fx, /* i : non-diegetic object */
- Word32 *output_f_fx[], /* o: core-coder transport mono channel/stereo output */
+ Word32 *output_fx[], /* o: core-coder transport mono channel/stereo output */
const Word16 non_diegetic_pan_gain_fx, /* i : non-diegetic panning gain Q15*/
const Word16 output_frame /* i : output frame length per channel Q11*/
)
@@ -329,8 +328,8 @@ void ivas_apply_non_diegetic_panning_fx(
pan_left_fx = add( mult( non_diegetic_pan_gain_fx, 16384 ), 16384 ); // 0.5.Q15 = 16384
pan_right_fx = sub( 32767, pan_left_fx );
- v_multc_fixed( input_f_fx, L_shl( L_deposit_l( pan_right_fx ), 16 ), output_f_fx[1], output_frame );
- v_multc_fixed( input_f_fx, L_shl( L_deposit_l( pan_left_fx ), 16 ), output_f_fx[0], output_frame );
+ v_multc_fx( input_f_fx, L_shl( L_deposit_l( pan_right_fx ), 16 ), output_fx[1], output_frame );
+ v_multc_fx( input_f_fx, L_shl( L_deposit_l( pan_left_fx ), 16 ), output_fx[0], output_frame );
return;
}
diff --git a/lib_dec/ivas_objectRenderer_internal_fx.c b/lib_dec/ivas_objectRenderer_internal_fx.c
index a97567c198c8f2f9348370572adeb9081d996c4e..98a57c4cd360c69ba106abf465e2a244ed1d017e 100644
--- a/lib_dec/ivas_objectRenderer_internal_fx.c
+++ b/lib_dec/ivas_objectRenderer_internal_fx.c
@@ -56,21 +56,24 @@ ivas_error ivas_td_binaural_open_fx(
move16();
test();
- if ( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) || EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
+ IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) || EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
{
*num_src = st_ivas->nchan_ism;
move16();
}
-#ifdef FIX_HRTF_LOAD
+#ifdef NONBE_1303_REND_GRANULARITY
+ test();
+ IF( st_ivas->hHrtfTD == NULL && st_ivas->hDecoderConfig->Opt_HRTF_binary )
+#else
if ( st_ivas->hHrtfTD == NULL && st_ivas->hDecoderConfig->Opt_HRTF_binary &&
( st_ivas->ivas_format != SBA_ISM_FORMAT ) // ToDo: temporary hack to avoid ASAN errors -> see issue #1202
)
+#endif
{
return IVAS_ERROR( IVAS_ERR_INTERNAL, "HRTF binary file present but not used in TD renderer" );
}
-#endif
return ivas_td_binaural_open_unwrap_fx( &st_ivas->hHrtfTD, st_ivas->hDecoderConfig->output_Fs, *num_src, st_ivas->ivas_format, st_ivas->transport_config, st_ivas->hRenderConfig->directivity_fx, st_ivas->hRenderConfig->distAtt_fx, st_ivas->hTransSetup, &st_ivas->hBinRendererTd, &st_ivas->binaural_latency_ns, SrcInd );
}
@@ -210,7 +213,6 @@ ivas_error ivas_td_binaural_renderer_sf_fx(
IF( EQ_16( subframe_idx, ism_md_subframe_update_jbm ) )
{
-#ifdef OBJ_EDITING_API
test();
IF( EQ_16( st_ivas->ivas_format, ISM_FORMAT ) || EQ_16( st_ivas->ivas_format, SBA_ISM_FORMAT ) )
{
@@ -240,8 +242,7 @@ ivas_error ivas_td_binaural_renderer_sf_fx(
return error;
}
}
- else
-#endif
+ ELSE
{
IF( NE_16( error = TDREND_Update_object_positions_fx( st_ivas->hBinRendererTd, nchan_ism, st_ivas->ivas_format, st_ivas->hIsmMetaData ), IVAS_ERR_OK ) )
{
@@ -376,6 +377,7 @@ ivas_error ivas_td_binaural_renderer_sf_splitBinaural(
{
continue;
}
+
IF( ( error = ivas_td_binaural_open_unwrap_fx( &st_ivas->hHrtfTD,
st_ivas->hDecoderConfig->output_Fs,
st_ivas->nchan_transport,
diff --git a/lib_dec/ivas_omasa_dec_fx.c b/lib_dec/ivas_omasa_dec_fx.c
index 7278b9968fa35439ad267c76af69b8f34beef655..811935a6037f5ecc7c5b6c359084e4b308b80c04 100644
--- a/lib_dec/ivas_omasa_dec_fx.c
+++ b/lib_dec/ivas_omasa_dec_fx.c
@@ -315,7 +315,7 @@ ivas_error ivas_omasa_data_open_fx(
)
{
MASA_ISM_DATA_HANDLE hMasaIsmData;
- Word16 ch, bin;
+ Word16 ch, band_idx;
Word16 sf, obj_idx;
IF( ( hMasaIsmData = (MASA_ISM_DATA_HANDLE) malloc( sizeof( MASA_ISM_DATA ) ) ) == NULL )
@@ -323,50 +323,65 @@ ivas_error ivas_omasa_data_open_fx(
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for MASA ISM data\n" ) );
}
- FOR( bin = 0; bin < CLDFB_NO_CHANNELS_MAX; bin++ )
+ FOR( band_idx = 0; band_idx < MASA_FREQUENCY_BANDS; band_idx++ )
{
FOR( ch = 0; ch < 2; ch++ )
{
- hMasaIsmData->ismPreprocMatrix_fx[ch][ch][bin] = 32767; /* 1.0f in Q15 */
- move16();
- hMasaIsmData->ismPreprocMatrix_fx[1 - ch][ch][bin] = 0; // Q15
- move16();
- hMasaIsmData->eneMoveIIR_fx[ch][bin] = 0; // Q22
+
+ hMasaIsmData->ismPreprocMatrix_fx[ch][ch][band_idx] = ONE_IN_Q28;
move32();
- hMasaIsmData->enePreserveIIR_fx[ch][bin] = 0; // Q22
+ hMasaIsmData->ismPreprocMatrix_fx[sub( 1, ch )][ch][band_idx] = 0;
move32();
+ hMasaIsmData->eneMoveIIR_fx[ch][band_idx] = 0;
+ move32();
+ hMasaIsmData->eneMoveIIR_e[ch][band_idx] = 0;
+ move16();
+ hMasaIsmData->enePreserveIIR_fx[ch][band_idx] = 0;
+ move32();
+ hMasaIsmData->enePreserveIIR_e[ch][band_idx] = 0;
+ move16();
}
- hMasaIsmData->preprocEneTarget_fx[bin] = 0; // Q19
+
+ hMasaIsmData->eneOrigIIR_fx[band_idx] = 0;
+ move32();
+ hMasaIsmData->eneOrigIIR_e[band_idx] = 0;
+ move16();
+ hMasaIsmData->preprocEneTarget_fx[band_idx] = 0;
move32();
- hMasaIsmData->preprocEneRealized_fx[bin] = 0; // Q19
+ hMasaIsmData->preprocEneRealized_fx[band_idx] = 0;
move32();
}
- hMasaIsmData->objectsMoved = 0;
- move16();
+ hMasaIsmData->objectsEdited = 0;
+ move32();
hMasaIsmData->delayBuffer_fx = NULL;
+ move16();
FOR( ch = 0; ch < MAX_NUM_OBJECTS; ch++ )
{
- hMasaIsmData->ism_is_edited[ch] = 0;
- move16();
+ hMasaIsmData->ism_dir_is_edited[ch] = 0;
+ hMasaIsmData->ism_gain_is_edited[ch] = 0;
hMasaIsmData->q_elevation_old_fx[ch] = 0; // Q22
move32();
hMasaIsmData->q_azimuth_old_fx[ch] = 0; // Q22
move32();
}
+ hMasaIsmData->masa_gain_is_edited = 0;
+ hMasaIsmData->idx_separated_ism = -1;
+ move16();
+
FOR( obj_idx = 0; obj_idx < MAX_NUM_OBJECTS; obj_idx++ )
{
- set16_fx( hMasaIsmData->azimuth_ism[obj_idx], 0, MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR );
- set16_fx( hMasaIsmData->elevation_ism[obj_idx], 0, MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR );
+ set16_fx( hMasaIsmData->azimuth_ism_fx[obj_idx], 0, MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR );
+ set16_fx( hMasaIsmData->elevation_ism_fx[obj_idx], 0, MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR );
FOR( sf = 0; sf < MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR; sf++ )
{
set32_fx( hMasaIsmData->energy_ratio_ism_fx[obj_idx][sf], 0, CLDFB_NO_CHANNELS_MAX );
}
}
- set16_fx( hMasaIsmData->azimuth_separated_ism, 0, MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR );
- set16_fx( hMasaIsmData->elevation_separated_ism, 0, MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR );
+ set16_fx( hMasaIsmData->azimuth_separated_ism_fx, 0, MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR );
+ set16_fx( hMasaIsmData->elevation_separated_ism_fx, 0, MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR );
hMasaIsmData->hExtData = NULL;
move32();
@@ -467,19 +482,11 @@ void ivas_omasa_data_close_fx(
*--------------------------------------------------------------------------*/
ivas_error ivas_omasa_dec_config_fx(
- Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
-#ifdef FIX_HRTF_LOAD
- Word16 *num_src,
- Word16 SrcInd[MAX_NUM_TDREND_CHANNELS]
-#else
- UWord16 *nSamplesRendered, /* o : number of samples flushed from the previous frame (JBM) */
+ Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
Word16 *num_src,
- Word16 SrcInd[MAX_NUM_TDREND_CHANNELS],
- Word16 *data /* o : output synthesis signal Qx*/
-#endif
-)
+ Word16 SrcInd[MAX_NUM_TDREND_CHANNELS] )
{
- Word16 k, sce_id, nSCE_old, nchan_hp20_old, numCldfbAnalyses_old, numCldfbSyntheses_old, n_MD;
+ Word16 k, sce_id, nSCE_old, nchan_hp20_old, numCldfbAnalyses_old, numCldfbSyntheses_old;
Word32 ivas_total_brate, ism_total_brate, cpe_brate;
Word32 brate_SCE, brate_CPE;
ISM_MODE ism_mode_old;
@@ -540,11 +547,7 @@ ivas_error ivas_omasa_dec_config_fx(
}
ELSE
{
-#ifdef FIX_HRTF_LOAD
IF( NE_32( ( error = ivas_masa_dec_reconfigure_fx( st_ivas ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_masa_dec_reconfigure_fx( st_ivas, nSamplesRendered, data ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -609,63 +612,19 @@ ivas_error ivas_omasa_dec_config_fx(
IF( NE_16( ism_mode_old, st_ivas->ism_mode ) )
{
/* ISM MD reconfig. */
- n_MD = 0;
- move16();
-
- IF( EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
+ IF( st_ivas->hIsmMetaData[0] == NULL )
{
- /* the full number of hIsmMetaData are needed for EXT output */
- IF( st_ivas->hIsmMetaData[0] == NULL )
- {
- IF( ( error = ivas_ism_metadata_dec_create_fx( st_ivas, st_ivas->nchan_ism, NULL ) ) != IVAS_ERR_OK )
- {
- return error;
- }
- }
- ELSE
+ IF( ( error = ivas_ism_metadata_dec_create_fx( st_ivas, st_ivas->nchan_ism, NULL ) ) != IVAS_ERR_OK )
{
- FOR( k = 0; k < st_ivas->nchan_ism; k++ )
- {
- ivas_ism_reset_metadata_handle_dec_fx( st_ivas->hIsmMetaData[k] );
- }
+ return error;
}
}
ELSE
{
- test();
- IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_MASA_ONE_OBJ ) || EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) )
- {
- n_MD = 1;
- move16();
-
- IF( st_ivas->hIsmMetaData[0] == NULL )
- {
- error = ivas_ism_metadata_dec_create_fx( st_ivas, 1, NULL );
- move32();
- IF( NE_32( error, IVAS_ERR_OK ) )
- {
- return error;
- }
- }
- ELSE
- {
- ivas_ism_reset_metadata_handle_dec_fx( st_ivas->hIsmMetaData[0] );
- }
- }
- ELSE IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) )
+ FOR( k = 0; k < st_ivas->nchan_ism; k++ )
{
- n_MD = st_ivas->nchan_ism;
- move16();
-
- error = ivas_ism_metadata_dec_create_fx( st_ivas, st_ivas->nchan_ism, NULL );
- move32();
- IF( NE_32( error, IVAS_ERR_OK ) )
- {
- return error;
- }
+ ivas_ism_reset_metadata_handle_dec_fx( st_ivas->hIsmMetaData[k] );
}
-
- ivas_ism_metadata_close( st_ivas->hIsmMetaData, n_MD );
}
st_ivas->hCPE[0]->element_brate = L_sub( ivas_total_brate, ism_total_brate );
@@ -830,7 +789,7 @@ ivas_error ivas_omasa_dec_config_fx(
}
/*-----------------------------------------------------------------*
- * floating-point output audio buffers
+ * output audio buffers
*-----------------------------------------------------------------*/
nchan_out_buff = ivas_get_nchan_buffers_dec_fx( st_ivas, -1, -1 );
@@ -1031,9 +990,9 @@ ivas_error ivas_omasa_ism_metadata_dec_fx(
{
meta_write_index = ( add( dirac_bs_md_write_idx, block ) ) % st_ivas->hSpatParamRendCom->dirac_md_buffer_length;
move16();
- st_ivas->hMasaIsmData->azimuth_ism[n][meta_write_index] = azimuth_ism;
+ st_ivas->hMasaIsmData->azimuth_ism_fx[n][meta_write_index] = azimuth_ism;
move16();
- st_ivas->hMasaIsmData->elevation_ism[n][meta_write_index] = elevation_ism;
+ st_ivas->hMasaIsmData->elevation_ism_fx[n][meta_write_index] = elevation_ism;
move16();
}
}
@@ -1055,9 +1014,9 @@ ivas_error ivas_omasa_ism_metadata_dec_fx(
{
meta_write_index = ( add( dirac_bs_md_write_idx, block ) ) % st_ivas->hSpatParamRendCom->dirac_md_buffer_length;
move16();
- st_ivas->hMasaIsmData->azimuth_separated_ism[meta_write_index] = azimuth_ism;
+ st_ivas->hMasaIsmData->azimuth_separated_ism_fx[meta_write_index] = azimuth_ism;
move16();
- st_ivas->hMasaIsmData->elevation_separated_ism[meta_write_index] = elevation_ism;
+ st_ivas->hMasaIsmData->elevation_separated_ism_fx[meta_write_index] = elevation_ism;
move16();
}
}
@@ -1077,15 +1036,15 @@ ivas_error ivas_omasa_ism_metadata_dec_fx(
FOR( block = 0; block < 2; block++ )
{
- st_ivas->hMasaIsmData->azimuth_separated_ism[block] = st_ivas->hMasaIsmData->azimuth_separated_ism[add( block, 2 )];
- st_ivas->hMasaIsmData->elevation_separated_ism[block] = st_ivas->hMasaIsmData->elevation_separated_ism[add( block, 2 )];
+ st_ivas->hMasaIsmData->azimuth_separated_ism_fx[block] = st_ivas->hMasaIsmData->azimuth_separated_ism_fx[add( block, 2 )];
+ st_ivas->hMasaIsmData->elevation_separated_ism_fx[block] = st_ivas->hMasaIsmData->elevation_separated_ism_fx[add( block, 2 )];
move16();
move16();
}
FOR( block = 2; block < MAX_PARAM_SPATIAL_SUBFRAMES; block++ )
{
- st_ivas->hMasaIsmData->azimuth_separated_ism[block] = azimuth_ism;
- st_ivas->hMasaIsmData->elevation_separated_ism[block] = elevation_ism;
+ st_ivas->hMasaIsmData->azimuth_separated_ism_fx[block] = azimuth_ism;
+ st_ivas->hMasaIsmData->elevation_separated_ism_fx[block] = elevation_ism;
move16();
move16();
}
@@ -1107,7 +1066,7 @@ void ivas_omasa_dirac_rend_jbm_fx(
UWord16 *nSamplesRendered, /* o : number of samples rendered */
UWord16 *nSamplesAvailable, /* o : number of samples still to render */
const Word16 nchan_transport, /* i : number of transport channels */
- Word32 *output_f[] /* o : rendered time signal Q11*/
+ Word32 *output_fx[] /* o : rendered time signal Q11*/
)
{
Word16 subframes_rendered;
@@ -1120,17 +1079,46 @@ void ivas_omasa_dirac_rend_jbm_fx(
{
*nSamplesRendered = min( nSamplesAsked, st_ivas->hTcBuffer->n_samples_available );
-
test();
IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_MASA_ONE_OBJ ) || EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) )
{
- Copy32( &output_f[CPE_CHANNELS][st_ivas->hTcBuffer->n_samples_rendered], data_separated_objects[0], *nSamplesRendered );
+ Copy32( &output_fx[CPE_CHANNELS][st_ivas->hTcBuffer->n_samples_rendered], data_separated_objects[0], *nSamplesRendered );
+ IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) )
+ {
+ /* Gain separated object, if edited */
+ FOR( n = 0; n < st_ivas->nchan_ism; n++ )
+ {
+ test();
+ IF( st_ivas->hMasaIsmData->ism_gain_is_edited[n] && EQ_16( st_ivas->hMasaIsmData->idx_separated_ism, n ) )
+ {
+ v_multc_fx_16( data_separated_objects[0], st_ivas->hMasaIsmData->gain_ism_edited_fx[n], data_separated_objects[0], *nSamplesRendered ); // Q = 8
+ Scale_sig32( data_separated_objects[0], *nSamplesRendered, Q3 ); // Q = 11
+ }
+ }
+ }
}
ELSE
{
FOR( n = 0; n < st_ivas->nchan_ism; n++ )
{
- Copy32( &output_f[n + CPE_CHANNELS][st_ivas->hTcBuffer->n_samples_rendered], data_separated_objects[n], *nSamplesRendered );
+ Copy32( &output_fx[n + CPE_CHANNELS][st_ivas->hTcBuffer->n_samples_rendered], data_separated_objects[n], *nSamplesRendered );
+
+ /* Gain discrete objects, if edited */
+ IF( st_ivas->hMasaIsmData->ism_gain_is_edited[n] )
+ {
+ v_multc_fx_16( data_separated_objects[n], st_ivas->hMasaIsmData->gain_ism_edited_fx[n], data_separated_objects[n], *nSamplesRendered ); // Q = 8
+ Scale_sig32( data_separated_objects[n], *nSamplesRendered, Q3 ); // Q = 11
+ }
+ }
+
+ /* Gain MASA part, if edited */
+ IF( st_ivas->hMasaIsmData->masa_gain_is_edited )
+ {
+ FOR( n = 0; n < 2; n++ )
+ {
+ v_multc_fx_16( output_fx[n], st_ivas->hMasaIsmData->gain_masa_edited_fx, output_fx[n], *nSamplesRendered ); // Q = 8
+ Scale_sig32( output_fx[n], *nSamplesRendered, Q3 ); // Q = 11
+ }
}
}
}
@@ -1140,14 +1128,14 @@ void ivas_omasa_dirac_rend_jbm_fx(
slots_rendered = st_ivas->hSpatParamRendCom->slots_rendered;
move16();
- ivas_dirac_dec_render_fx( st_ivas, nchan_transport, nSamplesAsked, nSamplesRendered, nSamplesAvailable, output_f );
+ ivas_dirac_dec_render_fx( st_ivas, nchan_transport, nSamplesAsked, nSamplesRendered, nSamplesAvailable, output_fx );
FOR( Word16 ind1 = 0; ind1 < MAX_NUM_OBJECTS; ind1++ )
{
scale_sig32( st_ivas->hIsmRendererData->prev_gains_fx[ind1], MAX_OUTPUT_CHANNELS, -1 ); // Q30 -> Q29
}
- ivas_omasa_separate_object_render_jbm_fx( st_ivas, *nSamplesRendered, data_separated_objects, output_f, subframes_rendered, slots_rendered );
+ ivas_omasa_separate_object_render_jbm_fx( st_ivas, *nSamplesRendered, data_separated_objects, output_fx, subframes_rendered, slots_rendered );
FOR( Word16 ind1 = 0; ind1 < MAX_NUM_OBJECTS; ind1++ )
{
@@ -1505,8 +1493,8 @@ void ivas_omasa_combine_separate_ism_with_masa_fx(
{
Word32 ele, azi;
- ele = st_ivas->hMasaIsmData->elevation_separated_ism[sf];
- azi = st_ivas->hMasaIsmData->azimuth_separated_ism[sf];
+ ele = st_ivas->hMasaIsmData->elevation_separated_ism_fx[sf];
+ azi = st_ivas->hMasaIsmData->azimuth_separated_ism_fx[sf];
directionIndex = index_theta_phi_16_fx( &ele, &azi, st_ivas->hMasa->data.sph_grid16 );
@@ -1532,10 +1520,10 @@ void ivas_omasa_combine_separate_ism_with_masa_fx(
eneIsm_frac, eneIsm_exp );
/* Mix the separated object audio signal to the MASA audio signals */
- ivas_get_stereo_panning_gains_fx( st_ivas->hMasaIsmData->azimuth_separated_ism[0],
- st_ivas->hMasaIsmData->elevation_separated_ism[0], old_panning_gains_q15_fx );
- ivas_get_stereo_panning_gains_fx( st_ivas->hMasaIsmData->azimuth_separated_ism[2],
- st_ivas->hMasaIsmData->elevation_separated_ism[2], new_panning_gains_q15_fx );
+ ivas_get_stereo_panning_gains_fx( st_ivas->hMasaIsmData->azimuth_separated_ism_fx[0],
+ st_ivas->hMasaIsmData->elevation_separated_ism_fx[0], old_panning_gains_q15_fx );
+ ivas_get_stereo_panning_gains_fx( st_ivas->hMasaIsmData->azimuth_separated_ism_fx[2],
+ st_ivas->hMasaIsmData->elevation_separated_ism_fx[2], new_panning_gains_q15_fx );
/* Subsequent processing in Q31 format */
FOR( n = 0; n < MASA_MAX_TRANSPORT_CHANNELS; n++ )
@@ -1754,8 +1742,8 @@ void ivas_omasa_render_objects_from_mix_fx(
FOR( n = 0; n < nchan_ism; n++ )
{
// Q0 -> Q22
- Word32 azi = L_shl( st_ivas->hMasaIsmData->azimuth_ism[n][st_ivas->hSpatParamRendCom->dirac_read_idx], Q22 );
- Word32 ele = L_shl( st_ivas->hMasaIsmData->elevation_ism[n][st_ivas->hSpatParamRendCom->dirac_read_idx], Q22 );
+ Word32 azi = L_shl( st_ivas->hMasaIsmData->azimuth_ism_fx[n][st_ivas->hSpatParamRendCom->dirac_read_idx], Q22 );
+ Word32 ele = L_shl( st_ivas->hMasaIsmData->elevation_ism_fx[n][st_ivas->hSpatParamRendCom->dirac_read_idx], Q22 );
st_ivas->hIsmMetaData[n]->azimuth_fx = azi;
st_ivas->hIsmMetaData[n]->elevation_fx = ele;
@@ -2123,12 +2111,19 @@ void ivas_omasa_render_objects_from_mix_fx(
outSlotImPr = &( outIm[n][slot][0] );
move32();
move32();
+#ifdef FIX_2092_ASSERT_IN_OMASA_RENDER
+ mantissa_exp_to_qvalue( &outRe_exp[n][slot][0], &outRe[n][slot][0], Q20 + Q2, nBins ); // + Q2: add two bits headroom to prevent overflow in cldfbSynthesis_ivas_fx().
+ mantissa_exp_to_qvalue( &outIm_exp[n][slot][0], &outIm[n][slot][0], Q20 + Q2, nBins );
+ cldfbSynthesis_ivas_fx( &outSlotRePr, &outSlotImPr, &rendered_objects[n][index],
+ nBins, 0, 1 + Q2, st_ivas->cldfbSynDec[index2] );
+#else
mantissa_exp_to_qvalue( &outRe_exp[n][slot][0], &outRe[n][slot][0], Q20, nBins );
mantissa_exp_to_qvalue( &outIm_exp[n][slot][0], &outIm[n][slot][0], Q20, nBins );
cldfbSynthesis_ivas_fx( &outSlotRePr, &outSlotImPr, &rendered_objects[n][index],
nBins, 0, 1, st_ivas->cldfbSynDec[index2] );
+#endif
}
}
diff --git a/lib_dec/ivas_osba_dec_fx.c b/lib_dec/ivas_osba_dec_fx.c
index 3aae0517988ad88923af7e492d1a886e835662e3..67908e99647bce09865d9790b89ad4eee6e18508 100644
--- a/lib_dec/ivas_osba_dec_fx.c
+++ b/lib_dec/ivas_osba_dec_fx.c
@@ -134,7 +134,7 @@ ivas_error ivas_osba_dirac_td_binaural_jbm_fx(
{
Word16 n;
ivas_error error;
- Word32 output_separated_objects_fx[BINAURAL_CHANNELS][L_FRAME48k]; // VE2SB: TBV
+ Word32 output_separated_objects_fx[BINAURAL_CHANNELS][L_FRAME48k];
Word32 *p_sepobj_fx[BINAURAL_CHANNELS];
Word16 channel_offset;
Word16 slot_idx_start;
@@ -228,6 +228,7 @@ ivas_error ivas_osba_dirac_td_binaural_jbm_fx(
}
}
}
+
return IVAS_ERR_OK;
}
@@ -292,7 +293,7 @@ ivas_error ivas_osba_render_sf_fx(
if ( !st_ivas->hDecoderConfig->Opt_tsm )
{
- int16_t tc_offset;
+ Word16 tc_offset;
tc_offset = st_ivas->hTcBuffer->n_samples_rendered;
for ( n = 0; n < st_ivas->nchan_ism; n++ )
{
@@ -314,7 +315,7 @@ ivas_error ivas_osba_render_sf_fx(
{
IF( NE_32( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) )
{
- v_add_fixed_no_hdrm( p_output[n], p_output_ism[n], p_output[n], *nSamplesRendered );
+ v_add_fx_no_hdrm( p_output[n], p_output_ism[n], p_output[n], *nSamplesRendered );
}
}
@@ -331,39 +332,55 @@ ivas_error ivas_osba_render_sf_fx(
void ivas_osba_stereo_add_channels_fx(
Word32 *tc_fx[], /* i : transport channels */
Word32 *output_fx[], /* i/o: output channels */
- const Word16 gain, /* i : gain bed value Q11 */
+ const Word32 gain_bed_fx, /* i : gain bed value */
const Word16 nchan_out, /* i : number of output channels */
const Word16 nchan_ism, /* i : number of ISM channels */
+ const Word16 ism_mode, /* i : ISM mode */
const UWord16 n_samples_to_render /* i : output frame length per channel */
)
{
- Word16 n;
+ Word16 n, i;
-#if 0
- IF ( ism_mode == ISM_SBA_MODE_DISC )
- {
-#endif
- IF( NE_16( gain, ONE_IN_Q11 ) )
- {
- assert( 0 && "Object editing is not implemented in the BASOP code!" );
- }
- ELSE
+ IF( EQ_16( ism_mode, ISM_SBA_MODE_DISC ) )
{
- FOR( n = 0; n < nchan_out; n++ )
+ Word32 gain = gain_bed_fx;
+ test();
+
+ // TODO: Enable gain editing feature (NE_32 ( gain, ONE_IN_Q_gain ) )
+ test();
+ IF( NE_32( gain, ONE_IN_Q29 ) && GT_32( gain, 0 ) )
{
- v_add_fixed_no_hdrm( output_fx[n], tc_fx[n + nchan_ism], output_fx[n], n_samples_to_render );
+ FOR( n = 0; n < nchan_out; n++ )
+ {
+ FOR( i = 0; i < n_samples_to_render; i++ )
+ {
+ Word32 tmp1 = Mpy_32_32( tc_fx[n + nchan_ism][i], gain ); // Q11 + Q29 - 31 = Q9
+ tmp1 = L_shl( tmp1, 2 ); // Q9 --> Q11
+ output_fx[n][i] = L_add_sat( output_fx[n][i], tmp1 ); // Q11
+ }
+ }
+ }
+ ELSE
+ {
+ FOR( n = 0; n < nchan_out; n++ )
+ {
+ FOR( i = 0; i < n_samples_to_render; i++ )
+ {
+ output_fx[n][i] = L_add_sat( output_fx[n][i], tc_fx[n + nchan_ism][i] ); // Q11
+ }
+ }
}
- }
-#if 0
}
ELSE
{
FOR( n = 0; n < nchan_out; n++ )
{
- v_add_fixed_no_hdrm( output_fx[n], tc_fx[n + nchan_ism], output_fx[n], n_samples_to_render );
+ FOR( i = 0; i < n_samples_to_render; i++ )
+ {
+ output_fx[n][i] = L_add_sat( output_fx[n][i], tc_fx[n + nchan_ism][i] ); // Q11
+ }
}
}
-#endif
return;
}
diff --git a/lib_dec/ivas_out_setup_conversion_fx.c b/lib_dec/ivas_out_setup_conversion_fx.c
index 3842b0f6b608ec976a1187437f1c27b8e0603bcb..a3801bc0678ad1d523a33ff8bb7c0345daad5bba 100644
--- a/lib_dec/ivas_out_setup_conversion_fx.c
+++ b/lib_dec/ivas_out_setup_conversion_fx.c
@@ -662,13 +662,8 @@ void ivas_ls_setup_conversion_process_mdct_fx(
Word16 inChannels, outChannels, num_CPE;
Word16 transform_type[MAX_CICP_CHANNELS][2];
Word16 frameSize;
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
Word64 targetEnergy64[MAX_SFB + 2], dmxEnergy64[MAX_SFB + 2];
Word16 scf1, scf2;
-#else
- Word32 targetEnergy[MAX_SFB + 2], dmxEnergy[MAX_SFB + 2];
- Word16 dmxEnergy_exp[MAX_SFB + 2], dmxEnergy_exp_temp;
-#endif
Word32 dmxCoeff;
Word32 dmxSignalReal[L_FRAME48k], dmxSignalImag[L_FRAME48k];
Word32 eqGain;
@@ -753,20 +748,12 @@ void ivas_ls_setup_conversion_process_mdct_fx(
/* set overall frequency resolution of (sub)frame to maximum of (sub)frame, requires conversion if both channels are not the same */
frameSize = hLsSetUpConversion->sfbOffset[hLsSetUpConversion->sfbCnt];
move16();
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
set64_fx( targetEnergy64, 0, MAX_SFB + 2 );
set64_fx( dmxEnergy64, 0, MAX_SFB + 2 );
scf1 = 63;
scf2 = 63;
move16();
move16();
-#else
- set32_fx( targetEnergy, 0, MAX_SFB + 2 );
- set32_fx( dmxEnergy, 0, MAX_SFB + 2 );
- set16_fx( dmxEnergy_exp, 0, MAX_SFB + 2 );
- dmxEnergy_exp_temp = 0;
- move16();
-#endif
FOR( chOutIdx = 0; chOutIdx < outChannels; chOutIdx++ )
{
@@ -785,12 +772,9 @@ void ivas_ls_setup_conversion_process_mdct_fx(
/* Step 1: Compute the target energy and DMX signal (possible since we have all signals in TCX20 resolution) */
IF( dmxCoeff )
{
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
Word64 targetEne64;
Word32 tmpDMXSig;
-#else
- Word32 tmpDMXSig, targetEne;
-#endif
+
/* Convert the signal resolution to TCX20 */
/* initially, set pointers to input; if conversion occurs in (sub)frame, set to convertRes */
pTmp[0] = x[chInIdx][0]; // Q(q_output)
@@ -833,13 +817,8 @@ void ivas_ls_setup_conversion_process_mdct_fx(
stop = hLsSetUpConversion->sfbOffset[bandIdx + 1];
move16();
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
targetEne64 = 0;
move64();
-#else
- targetEne = 0;
- move32();
-#endif
/* Loop over all the bins in the band */
FOR( binIdx = start; binIdx < stop; binIdx++ )
@@ -847,30 +826,18 @@ void ivas_ls_setup_conversion_process_mdct_fx(
tmpDMXSig = Mpy_32_32( L_shl_sat( dmxCoeff, 1 ), sig[0][binIdx] );
dmxSignalReal[binIdx] = L_add( dmxSignalReal[binIdx], tmpDMXSig );
move32();
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
targetEne64 = W_mac_32_32( targetEne64, tmpDMXSig, tmpDMXSig );
-#else
- targetEne = L_add( targetEne, Mpy_32_32( tmpDMXSig, tmpDMXSig ) );
-#endif
tmpDMXSig = Mpy_32_32( L_shl_sat( dmxCoeff, 1 ), mdst[binIdx] );
dmxSignalImag[binIdx] = L_add( dmxSignalImag[binIdx], tmpDMXSig );
move32();
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
targetEne64 = W_mac_32_32( targetEne64, tmpDMXSig, tmpDMXSig );
-#else
- targetEne = L_add( targetEne, Mpy_32_32( tmpDMXSig, tmpDMXSig ) );
-#endif
}
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
+
targetEnergy64[bandIdx] = W_add( targetEnergy64[bandIdx], W_shr( targetEne64, 1 ) );
if ( NE_64( targetEnergy64[bandIdx], 0 ) )
{
scf1 = s_min( scf1, W_norm( targetEnergy64[bandIdx] ) );
}
-#else
- targetEnergy[bandIdx] = L_add( targetEnergy[bandIdx], targetEne );
- move32();
-#endif
} /* end of band loop */
}
}
@@ -878,28 +845,17 @@ void ivas_ls_setup_conversion_process_mdct_fx(
FOR( bandIdx = 0; bandIdx < hLsSetUpConversion->sfbCnt; bandIdx++ )
{
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
Word32 tmpReal, tmpImag;
Word64 DMXEne64;
-#else
- Word32 tmpReal, tmpImag, DMXEne;
- Word16 DMXEne_exp;
-#endif
+
start = hLsSetUpConversion->sfbOffset[bandIdx];
move16();
stop = hLsSetUpConversion->sfbOffset[bandIdx + 1];
move16();
/* Loop over all the bins in the band */
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
DMXEne64 = 0;
move64();
-#else
- DMXEne = 0;
- move32();
- DMXEne_exp = 0;
- move16();
-#endif
FOR( binIdx = start; binIdx < stop; binIdx++ )
{
@@ -907,39 +863,22 @@ void ivas_ls_setup_conversion_process_mdct_fx(
move32();
tmpImag = dmxSignalImag[binIdx];
move32();
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
DMXEne64 = W_mac_32_32( DMXEne64, tmpReal, tmpReal );
DMXEne64 = W_mac_32_32( DMXEne64, tmpImag, tmpImag );
-#else
- DMXEne = BASOP_Util_Add_Mant32Exp( DMXEne, DMXEne_exp, L_add( Mpy_32_32( tmpReal, tmpReal ), Mpy_32_32( tmpImag, tmpImag ) ), sub( 40, shl( q_output, 1 ) ), &DMXEne_exp );
-#endif
}
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
+
dmxEnergy64[bandIdx] = W_add( dmxEnergy64[bandIdx], W_shr( DMXEne64, 1 ) );
if ( NE_64( dmxEnergy64[bandIdx], 0 ) )
{
scf2 = s_min( scf2, W_norm( dmxEnergy64[bandIdx] ) );
}
-#else
- dmxEnergy[bandIdx] = BASOP_Util_Add_Mant32Exp( dmxEnergy[bandIdx], dmxEnergy_exp[bandIdx], DMXEne, DMXEne_exp, &dmxEnergy_exp[bandIdx] );
- move32();
- dmxEnergy_exp_temp = s_max( dmxEnergy_exp_temp, dmxEnergy_exp[bandIdx] );
-#endif
}
} /* end of out channel loop */
-#ifndef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
- /* Scaling to common exponent */
- FOR( bandIdx = 0; bandIdx < MAX_SFB + 2; bandIdx++ )
- {
- dmxEnergy[bandIdx] = L_shl( dmxEnergy[bandIdx], sub( dmxEnergy_exp[bandIdx], dmxEnergy_exp_temp ) );
- move32();
- }
-#endif
+
/* Step 3: Peform energy smoothing */
Word16 te_scale = getScaleFactor32( hLsSetUpConversion->targetEnergyPrev_fx[0], hLsSetUpConversion->sfbCnt );
scale_sig32( hLsSetUpConversion->targetEnergyPrev_fx[0], hLsSetUpConversion->sfbCnt, te_scale );
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
Word16 dmx_scale = getScaleFactor32( hLsSetUpConversion->dmxEnergyPrev_fx[0], hLsSetUpConversion->sfbCnt );
scale_sig32( hLsSetUpConversion->dmxEnergyPrev_fx[0], hLsSetUpConversion->sfbCnt, dmx_scale );
@@ -948,17 +887,9 @@ void ivas_ls_setup_conversion_process_mdct_fx(
Word16 dmxEnergy_e = sub( add( sub( 40, shl( q_output, 1 ) ), 1 ), scf2 );
Word16 dmx_max_e = s_max( dmxEnergy_e, sub( hLsSetUpConversion->dmx_prev_exp[0], dmx_scale ) );
-#else
- Word16 dmx_sacle = getScaleFactor32( hLsSetUpConversion->dmxEnergyPrev_fx[0], hLsSetUpConversion->sfbCnt );
- scale_sig32( hLsSetUpConversion->dmxEnergyPrev_fx[0], hLsSetUpConversion->sfbCnt, dmx_sacle );
-
- Word16 te_max_e = s_max( sub( 40, shl( q_output, 1 ) ), sub( hLsSetUpConversion->te_prev_exp[0], te_scale ) );
- Word16 dmx_max_e = s_max( dmxEnergy_exp_temp, sub( hLsSetUpConversion->dmx_prev_exp[0], dmx_sacle ) );
-#endif
FOR( bandIdx = 0; bandIdx < hLsSetUpConversion->sfbCnt; bandIdx++ )
{
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
Word32 targetEnergy, dmxEnergy;
targetEnergy = W_extract_h( W_shl( targetEnergy64[bandIdx], scf1 ) );
@@ -972,16 +903,6 @@ void ivas_ls_setup_conversion_process_mdct_fx(
move32();
hLsSetUpConversion->dmxEnergyPrev_fx[0][bandIdx] = dmxEnergy;
move32();
-#else
- targetEnergy[bandIdx] = L_add( Mpy_32_32( LS_OUT_CONV_SMOOTHING_FACTOR_Q31, L_shr( targetEnergy[bandIdx], sub( te_max_e, sub( 40, shl( q_output, 1 ) ) ) ) ), Mpy_32_32( ( ONE_IN_Q31 - LS_OUT_CONV_SMOOTHING_FACTOR_Q31 ), L_shr( hLsSetUpConversion->targetEnergyPrev_fx[0][bandIdx], sub( te_max_e, sub( hLsSetUpConversion->te_prev_exp[0], te_scale ) ) ) ) );
- move32();
- dmxEnergy[bandIdx] = L_add( Mpy_32_32( LS_OUT_CONV_SMOOTHING_FACTOR_Q31, L_shr( dmxEnergy[bandIdx], sub( dmx_max_e, dmxEnergy_exp_temp ) ) ), Mpy_32_32( ( ONE_IN_Q31 - LS_OUT_CONV_SMOOTHING_FACTOR_Q31 ), L_shr( hLsSetUpConversion->dmxEnergyPrev_fx[0][bandIdx], sub( dmx_max_e, sub( hLsSetUpConversion->dmx_prev_exp[0], dmx_sacle ) ) ) ) );
- move32();
- hLsSetUpConversion->targetEnergyPrev_fx[0][bandIdx] = targetEnergy[bandIdx]; /* te_prev_exp = 40 - 2*q_output */
- move32();
- hLsSetUpConversion->dmxEnergyPrev_fx[0][bandIdx] = dmxEnergy[bandIdx]; /* dmx_prev_exp = 40 - 2*q_output */
- move32();
-#endif
}
hLsSetUpConversion->te_prev_exp[0] = te_max_e; /* te_prev_exp = 40 - 2*q_output */
@@ -1015,13 +936,10 @@ void ivas_ls_setup_conversion_process_mdct_fx(
move16();
/* Compute Eq gains */
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
ivas_lssetupconversion_computeEQFactor_fx( &hLsSetUpConversion->targetEnergyPrev_fx[0][bandIdx], hLsSetUpConversion->te_prev_exp[0],
&hLsSetUpConversion->dmxEnergyPrev_fx[0][bandIdx], hLsSetUpConversion->dmx_prev_exp[0],
&eqGain ); // Q(eqGain) = 30
-#else
- ivas_lssetupconversion_computeEQFactor_fx( &targetEnergy[bandIdx], hLsSetUpConversion->te_prev_exp[0], &dmxEnergy[bandIdx], hLsSetUpConversion->dmx_prev_exp[0], &eqGain ); // Q(eqGain) = 30
-#endif
+
FOR( binIdx = start; binIdx < stop; binIdx++ )
{
x[chInIdx][0][binIdx] = Mpy_32_32( L_shl( x[chInIdx][0][binIdx], 1 ), eqGain ); // Q - 1
@@ -1041,13 +959,10 @@ void ivas_ls_setup_conversion_process_mdct_fx(
move16();
/* Compute Eq gains */
-#ifdef FIX_1962_FORMAT_CONV_SPECTRAL_DIFF
ivas_lssetupconversion_computeEQFactor_fx( &hLsSetUpConversion->targetEnergyPrev_fx[0][bandIdx], hLsSetUpConversion->te_prev_exp[0],
&hLsSetUpConversion->dmxEnergyPrev_fx[0][bandIdx], hLsSetUpConversion->dmx_prev_exp[0],
&eqGain );
-#else
- ivas_lssetupconversion_computeEQFactor_fx( &targetEnergy[bandIdx], hLsSetUpConversion->te_prev_exp[0], &dmxEnergy[bandIdx], hLsSetUpConversion->dmx_prev_exp[0], &eqGain );
-#endif
+
FOR( subFrameIdx = 0; subFrameIdx < NB_DIV; subFrameIdx++ )
{
IF( EQ_16( transform_type[chInIdx][subFrameIdx], TCX_10 ) )
diff --git a/lib_dec/ivas_output_config_fx.c b/lib_dec/ivas_output_config_fx.c
index 9832cd8a6f68df32c09d970955ba5ef7bc8e9451..284bd08599ad2602396237350570c549f14f2ed8 100644
--- a/lib_dec/ivas_output_config_fx.c
+++ b/lib_dec/ivas_output_config_fx.c
@@ -603,7 +603,7 @@ void ivas_renderer_select(
return;
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
+
/*-------------------------------------------------------------------------*
* ivas_renderer_secondary_select()
*
@@ -611,7 +611,7 @@ void ivas_renderer_select(
*-------------------------------------------------------------------------*/
/*! r: secondary binaural renderer type */
-RENDERER_TYPE ivas_renderer_secondary_select(
+RENDERER_TYPE ivas_renderer_secondary_select_fx(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
)
{
@@ -639,4 +639,3 @@ RENDERER_TYPE ivas_renderer_secondary_select(
return renderer_type;
}
-#endif
diff --git a/lib_dec/ivas_qmetadata_dec_fx.c b/lib_dec/ivas_qmetadata_dec_fx.c
index f71a40e1cd353b67a81860dd8d88457a6a77b458..cc98c6ec494fba2b1fd1895bfb3e35de277421ce 100644
--- a/lib_dec/ivas_qmetadata_dec_fx.c
+++ b/lib_dec/ivas_qmetadata_dec_fx.c
@@ -1190,7 +1190,7 @@ Word16 ivas_qmetadata_dec_sid_decode(
IF( EQ_16( ivas_format, SBA_FORMAT ) )
{
sba_spar_bitlen = ivas_sba_spar_sid_bitlen_fx( nchan_transport );
- metadata_sid_bits = (int16_t) ( IVAS_SID_5k2 - SID_2k40 ) / FRAMES_PER_SEC - SID_FORMAT_NBITS - SBA_ORDER_BITS - SBA_PLANAR_BITS - 1; /* -1 for inactive mode header bit*/
+ metadata_sid_bits = (Word16) ( IVAS_SID_5k2 - SID_2k40 ) / FRAMES_PER_SEC - SID_FORMAT_NBITS - SBA_ORDER_BITS - SBA_PLANAR_BITS - 1; /* -1 for inactive mode header bit*/
metadata_sid_bits = sub( metadata_sid_bits, sba_spar_bitlen );
}
ELSE
diff --git a/lib_dec/ivas_rom_dec_fx.c b/lib_dec/ivas_rom_dec_fx.c
index 8b2a2d27e30190397fede143c25f4d1ac07b923c..ae0ccf31ce837c7488dc9683bad2da8e4fd0a18e 100644
--- a/lib_dec/ivas_rom_dec_fx.c
+++ b/lib_dec/ivas_rom_dec_fx.c
@@ -357,8 +357,6 @@ const UWord16 * const sym_freq_ECSQ_tab_abs_lsbs[1 + 4] =
* DirAC ROM tables
*----------------------------------------------------------------------------------*/
-
-
/*Q10*/
const Word16 dirac_dithering_azi_scale_fx[DIRAC_DIFFUSE_LEVELS] =
{
@@ -369,10 +367,6 @@ const Word16 dirac_dithering_ele_scale_fx[DIRAC_DIFFUSE_LEVELS] =
{
1375 ,2072 ,3680 ,5743 ,9468 ,15979 ,21410 ,28252
};
-/*----------------------------------------------------------------------------------*
- * FASTCONV and PARAMETRIC binaural renderer ROM tables
- *----------------------------------------------------------------------------------*/
-
/*----------------------------------------------------------------------*
diff --git a/lib_dec/ivas_sba_dec_fx.c b/lib_dec/ivas_sba_dec_fx.c
index 6a77c5c0ec6068c60b854d6489f8d0117521e487..ea7e100a15db37363db57d012c49652c784fc0f9 100644
--- a/lib_dec/ivas_sba_dec_fx.c
+++ b/lib_dec/ivas_sba_dec_fx.c
@@ -108,11 +108,6 @@ void ivas_sba_set_cna_cng_flag(
ivas_error ivas_sba_dec_reconfigure_fx(
Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord16 *nSamplesFlushed, /* o : number of samples flushed Q0*/
- Word16 *data /* o : output synthesis signal Q0*/
-#endif
)
{
Word16 nchan_transport_old, nSCE_old, nCPE_old, nchan_hp20_old;
@@ -179,10 +174,6 @@ ivas_error ivas_sba_dec_reconfigure_fx(
st_ivas->sba_analysis_order = ivas_sba_get_analysis_order_fx( ivas_total_brate, st_ivas->sba_order );
-#ifndef FIX_HRTF_LOAD
- *nSamplesFlushed = 0;
- move16();
-#endif
granularity_new = st_ivas->hTcBuffer->n_samples_granularity; /*Q0*/
move16();
@@ -192,6 +183,7 @@ ivas_error ivas_sba_dec_reconfigure_fx(
test();
IF( EQ_16( st_ivas->ivas_format, SBA_ISM_FORMAT ) && ( EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ) )
{
+#ifndef NONBE_1303_REND_GRANULARITY
RENDERER_TYPE renderer_type_new;
Word16 sba_order_internal;
@@ -215,7 +207,9 @@ ivas_error ivas_sba_dec_reconfigure_fx(
ELSE
{
test();
- IF( EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
+ test();
+ test();
+ IF( EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
{
renderer_type_new = RENDERER_BINAURAL_FASTCONV;
move16();
@@ -226,8 +220,11 @@ ivas_error ivas_sba_dec_reconfigure_fx(
move16();
}
}
-
+#endif
/* determine new granularity */
+#ifdef NONBE_1303_REND_GRANULARITY
+ granularity_new = ivas_jbm_dec_get_render_granularity_fx( st_ivas->renderer_type, ivas_renderer_secondary_select_fx( st_ivas ), st_ivas->hDecoderConfig->output_Fs );
+#else
granularity_new = NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, CLDFB_SLOT_NS ); /*Q0*/
move16();
@@ -237,34 +234,16 @@ ivas_error ivas_sba_dec_reconfigure_fx(
{
granularity_new = i_mult( granularity_new, JBM_CLDFB_SLOTS_IN_SUBFRAME ); /*Q0*/
}
+#endif
/* flush renderer on granularity change form 5ms to 1.25ms, again only possible for binaural rendering */
IF( LT_16( granularity_new, st_ivas->hTcBuffer->n_samples_granularity ) )
{
-#ifdef FIX_HRTF_LOAD
/* flush already done in IVAS_DEC_ReadFormat() */
-#else
- /* write back info for correct rendering of the flushable samples */
- st_ivas->sba_analysis_order = sba_analysis_order_old_flush; /*Q0*/
- move16();
- st_ivas->hDecoderConfig->ivas_total_brate = last_ivas_total_brate; /*Q0*/
- move32();
-
- if ( NE_32( ( error = ivas_jbm_dec_flush_renderer_fx( st_ivas, granularity_new, st_ivas->renderer_type, st_ivas->intern_config, &st_ivas->hIntSetup, st_ivas->mc_mode, ism_mode_old, nSamplesFlushed, data ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
-
- /* restore correct values for the current frame*/
- st_ivas->sba_analysis_order = ivas_sba_get_analysis_order_fx( ivas_total_brate, st_ivas->sba_order );
- move16();
- st_ivas->hDecoderConfig->ivas_total_brate = ivas_total_brate; /*Q0*/
- move32();
-#endif
}
ELSE IF( GT_16( granularity_new, st_ivas->hTcBuffer->n_samples_granularity ) )
{
- if ( NE_32( ( error = ivas_jbm_dec_set_discard_samples( st_ivas ) ), IVAS_ERR_OK ) )
+ if ( NE_32( ( error = ivas_jbm_dec_set_discard_samples_fx( st_ivas ) ), IVAS_ERR_OK ) )
{
return error;
}
@@ -592,6 +571,7 @@ ivas_error ivas_sba_dec_reconfigure_fx(
{
return error;
}
+
nchan_transport = add( nchan_transport, st_ivas->nchan_ism );
st_ivas->nCPE = shr_r( nchan_transport, 1 );
move16();
@@ -608,6 +588,7 @@ ivas_error ivas_sba_dec_reconfigure_fx(
{
ivas_td_binaural_close_fx( &st_ivas->hBinRendererTd );
}
+
nchan_transport = st_ivas->nchan_transport;
move16();
nchan_transport_old = add( nchan_transport_old, st_ivas->nchan_ism ); /*Q0*/
@@ -764,21 +745,17 @@ ivas_error ivas_sba_dec_reconfigure_fx(
}
/*-----------------------------------------------------------------*
- * floating-point output audio buffers
+ * output audio buffers
*-----------------------------------------------------------------*/
nchan_out_buff = ivas_get_nchan_buffers_dec_fx( st_ivas, st_ivas->sba_analysis_order, st_ivas->hDecoderConfig->ivas_total_brate ); /*Q0*/
- if ( NE_32( ( error = ivas_output_buff_dec_fx( st_ivas->p_output_fx, nchan_out_buff_old, nchan_out_buff ) ), IVAS_ERR_OK ) )
+ IF( NE_32( ( error = ivas_output_buff_dec_fx( st_ivas->p_output_fx, nchan_out_buff_old, nchan_out_buff ) ), IVAS_ERR_OK ) )
{
return error;
}
-#ifdef FIX_HRTF_LOAD
return IVAS_ERR_OK;
-#else
- return error;
-#endif
}
@@ -899,22 +876,41 @@ ivas_error ivas_sba_dec_render_fx(
Word32 *output_fx[] /* o : rendered time signal Q11*/
)
{
- Word16 slots_to_render, first_sf, last_sf, subframe_idx;
+ Word16 slots_to_render, first_sf, last_sf, subframe_idx, n_samples_sf;
UWord16 slot_size, ch;
UWord16 nchan_internal, nchan_out;
SPAR_DEC_HANDLE hSpar;
SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom;
- Word32 *output_f_local_fx[MAX_OUTPUT_CHANNELS];
+ Word32 *output_fx_local[MAX_OUTPUT_CHANNELS];
ivas_error error;
hSpar = st_ivas->hSpar;
hSpatParamRendCom = st_ivas->hSpatParamRendCom;
nchan_internal = ivas_sba_get_nchan_metadata_fx( st_ivas->sba_analysis_order, st_ivas->hDecoderConfig->ivas_total_brate );
nchan_out = add( st_ivas->hIntSetup.nchan_out_woLFE, st_ivas->hIntSetup.num_lfe ); /*Q0*/
+#ifdef FIX_NCHAN_BUFFERS
+ IF( EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
+ {
+ nchan_out = s_max( nchan_internal, st_ivas->hDecoderConfig->nchan_out );
+
+ IF( EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
+ {
+ nchan_out = s_max( nchan_internal, sub( st_ivas->hDecoderConfig->nchan_out, st_ivas->nchan_ism ) );
+ }
+#ifdef FIX_1372_OSBA_OBJECT_EDITING
+ ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) )
+ {
+ nchan_out = BINAURAL_CHANNELS;
+ move16();
+ }
+#endif
+ }
+ nchan_out = s_min( nchan_out, ivas_get_nchan_buffers_dec_fx( st_ivas, st_ivas->sba_analysis_order, st_ivas->hDecoderConfig->ivas_total_brate ) );
+#endif
FOR( ch = 0; ch < nchan_out; ch++ )
{
- output_f_local_fx[ch] = output_fx[ch]; /*Q11*/
+ output_fx_local[ch] = output_fx[ch]; /*Q11*/
}
slot_size = NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, CLDFB_SLOT_NS ); /*Q0*/
@@ -936,12 +932,13 @@ ivas_error ivas_sba_dec_render_fx(
FOR( subframe_idx = first_sf; subframe_idx < last_sf; subframe_idx++ )
{
- Word16 n_samples_sf = imult1616( slot_size, hSpar->subframe_nbslots[subframe_idx] ); /*Q0*/
+ n_samples_sf = imult1616( slot_size, hSpar->subframe_nbslots[subframe_idx] ); /*Q0*/
+
+ ivas_spar_dec_upmixer_sf_fx( st_ivas, output_fx_local, nchan_internal );
- ivas_spar_dec_upmixer_sf_fx( st_ivas, output_f_local_fx, nchan_internal );
FOR( ch = 0; ch < nchan_out; ch++ )
{
- output_f_local_fx[ch] = output_f_local_fx[ch] + n_samples_sf; /*Q11*/
+ output_fx_local[ch] = output_fx_local[ch] + n_samples_sf; /*Q11*/
}
/* update combined orientation access index */
ivas_combined_orientation_update_index( st_ivas->hCombinedOrientationData, n_samples_sf );
diff --git a/lib_dec/ivas_sba_dirac_stereo_dec_fx.c b/lib_dec/ivas_sba_dirac_stereo_dec_fx.c
index cf22a4048ff6a45d7ca201e8b362a9de48d1181c..42a2524f1f6676a2f216159767685da2dbb0d4ae 100644
--- a/lib_dec/ivas_sba_dirac_stereo_dec_fx.c
+++ b/lib_dec/ivas_sba_dirac_stereo_dec_fx.c
@@ -622,6 +622,7 @@ static void map_params_dirac_to_stereo(
move32();
}
}
+
/* Clamp values here. [-1, 1] is the allowed range, but due to precision issues they can be slightly off which can cause problems later. */
/* In Q31, this clamping happens implicitly */
q_sqrt = 0;
@@ -642,6 +643,7 @@ static void map_params_dirac_to_stereo(
q_sqrt = 0;
move16();
}
+
/* for residual prediction gain, allowed range is [0, 1]*/
res_pred_gain[b] = L_max( Mpy_32_16_1( diffuseness[b], sub( MAX_16, surrCoh[b] ) ), 0 ); /*Q31*/
move32();
diff --git a/lib_dec/ivas_sba_rendering_internal_fx.c b/lib_dec/ivas_sba_rendering_internal_fx.c
index 7a96185b9c7a8838e8cfd40e4502a9ad1a610b60..bf64b92d83928ff6d148c270d846f37b3c4409c9 100644
--- a/lib_dec/ivas_sba_rendering_internal_fx.c
+++ b/lib_dec/ivas_sba_rendering_internal_fx.c
@@ -49,7 +49,7 @@
* SBA signals transformed into MC in CLDFB domain
*-------------------------------------------------------------------------*/
-void ivas_sba2mc_cldfb_fixed(
+void ivas_sba2mc_cldfb_fx(
IVAS_OUTPUT_SETUP hInSetup, /* i : Format of input layout */
Word32 RealBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i/o: cldfb real part (Q_real) */
Word32 ImagBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i/o: cldfb imag part (Q_imag) */
@@ -65,10 +65,10 @@ void ivas_sba2mc_cldfb_fixed(
Word32 *p_real_fx, *p_imag_fx, *p_realOut_fx, *p_imagOut_fx;
Word16 nb_channels_in;
- push_wmops( "ivas_sba2mc_cldfb_fixed" );
+ push_wmops( "ivas_sba2mc_cldfb_fx" );
nb_channels_in = hInSetup.nchan_out_woLFE; /*Q0*/
move16();
- assert( EQ_16( nb_channels_in, 16 ) && EQ_16( nb_channels_out, 11 ) && "ivas_sba2mc_cldfb_fixed; only HOA3 to CICP19 is for now supported!" );
+ assert( EQ_16( nb_channels_in, 16 ) && EQ_16( nb_channels_out, 11 ) && "ivas_sba2mc_cldfb_fx; only HOA3 to CICP19 is for now supported!" );
FOR( n = 0; n < nb_channels_out; n++ )
{
@@ -121,6 +121,7 @@ void ivas_sba2mc_cldfb_fixed(
return;
}
+
/*-------------------------------------------------------------------------*
* ivas_mc2sba()
*
@@ -129,12 +130,11 @@ void ivas_sba2mc_cldfb_fixed(
void ivas_mc2sba_fx(
IVAS_OUTPUT_SETUP hIntSetup, /* i : Format of decoder output */
- Word32 *in_buffer_td_fx[],
- /* i : MC signals (on input) and the HOA3 (on output) */ /*Q*/
- Word32 *buffer_td_fx[], /* i/o: MC signals (on input) and the HOA3 (on output) Q*/
- const Word16 output_frame, /* i : output frame length per channel Q0*/
- const Word16 sba_order, /* i : Ambisonic (SBA) order Q0*/
- const Word16 gain_lfe_fx /* i : gain for LFE, 0 = ignore LFE Q14*/
+ Word32 *in_buffer_td_fx[], /* i : MC signals (on input) and the HOA3 (on output) Q*/
+ Word32 *buffer_td_fx[], /* i/o: MC signals (on input) and the HOA3 (on output) Q*/
+ const Word16 output_frame, /* i : output frame length per channel Q0*/
+ const Word16 sba_order, /* i : Ambisonic (SBA) order Q0*/
+ const Word16 gain_lfe_fx /* i : gain for LFE, 0 = ignore LFE Q14*/
)
{
Word16 i, j, k;
@@ -218,6 +218,7 @@ void ivas_mc2sba_fx(
* MC signals transformed into SBA in CLDFB domain
* used for binaural rendering with head rotation
*-------------------------------------------------------------------------*/
+
void ivas_param_mc_mc2sba_cldfb_fx(
IVAS_OUTPUT_SETUP hTransSetup, /* i : transported MC Format */
Word32 *hoa_encoder_fx, /* i : HOA3 encoder for the transported MC format Q31*/
@@ -342,23 +343,25 @@ Word16 ivas_sba_remapTCs_fx(
}
}
}
+
return ( nchan_remapped );
}
+
/*-------------------------------------------------------------------------*
* ivas_ism2sba_sf()
*
* ISM transformed into SBA in TD domain.
*-------------------------------------------------------------------------*/
+
void ivas_ism2sba_sf_fx(
- Word32 *buffer_in_fx[],
- /* i : TC buffer */ /*Q_buffer_in*/
- Word32 *buffer_out_fx[], /* o : TD signal buffers Q_buffer_in + 29 - 31*/
- ISM_RENDERER_HANDLE hIsmRendererData, /* i/o: renderer data */
- const Word16 num_objects, /* i : number of objects Q0*/
- const Word16 n_samples_to_render, /* i : output frame length per channel Q0*/
- const Word16 offset, /* i : offset for the interpolatr Q0*/
- const Word16 sba_order /* i : Ambisonic (SBA) order Q0*/
+ Word32 *buffer_in_fx[], /* i : TC buffer Q_buffer_in*/
+ Word32 *buffer_out_fx[], /* o : TD signal buffers Q_buffer_in + 29 - 31*/
+ ISM_RENDERER_HANDLE hIsmRendererData, /* i/o: renderer data */
+ const Word16 num_objects, /* i : number of objects Q0*/
+ const Word16 n_samples_to_render, /* i : output frame length per channel Q0*/
+ const Word16 offset, /* i : offset for the interpolatr Q0*/
+ const Word16 sba_order /* i : Ambisonic (SBA) order Q0*/
)
{
Word16 i, j, k;
@@ -380,9 +383,13 @@ void ivas_ism2sba_sf_fx(
FOR( j = 0; j < sba_num_chans; j++ )
{
g2_fx = hIsmRendererData->interpolator_fx + offset; /*Pointer addition*/ /*Q15*/
- tc_fx = buffer_in_fx[i] + offset; /*Pointer addition*/ /*Q_buffer_in*/
- out_fx = buffer_tmp_fx[j]; /*Q_buffer_in + 29 - 31*/
- gain_fx = hIsmRendererData->gains_fx[i][j]; /*Q29*/
+#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
+ tc_fx = buffer_in_fx[i]; /*Q_buffer_in*/
+#else
+ tc_fx = buffer_in_fx[i] + offset; /*Pointer addition*/ /*Q_buffer_in*/
+#endif
+ out_fx = buffer_tmp_fx[j]; /*Q_buffer_in + 29 - 31*/
+ gain_fx = hIsmRendererData->gains_fx[i][j]; /*Q29*/
move32();
prev_gain_fx = hIsmRendererData->prev_gains_fx[i][j]; /*Q29*/
move32();
@@ -397,24 +404,24 @@ void ivas_ism2sba_sf_fx(
}
}
}
+
FOR( j = 0; j < sba_num_chans; j++ )
{
Copy32( buffer_tmp_fx[j], buffer_out_fx[j], n_samples_to_render ); /*Q_buffer_in + 29 - 31*/
}
+
return;
}
+
/*-------------------------------------------------------------------*
* ivas_sba_linear_renderer()
*
* Linear rendering for SBA format
*-------------------------------------------------------------------*/
-/*TODO: To be tested*/
-/************************
-Float to fixed conversion required for:output_f
-*************************/
+
ivas_error ivas_sba_linear_renderer_fx(
- Word32 *output_f[], /* i/o: synthesized core-coder transport channels/DirAC output Q11*/
+ Word32 *output_fx[], /* i/o: synthesized core-coder transport channels/DirAC output Q11*/
const Word16 output_frame, /* i : output frame length per channel Q0*/
const Word16 nchan_in, /* i : number of input ambisonics channels Q0*/
const Word16 nchan_ism, /* i : number of objects Q0*/
@@ -451,17 +458,17 @@ ivas_error ivas_sba_linear_renderer_fx(
case IVAS_AUDIO_CONFIG_HOA3: /* Ambisonics output, order: 3 */
FOR( i = nchan_hoa; i < output_setup.nchan_out_woLFE; i++ )
{
- set_zero_fx( output_f[i], output_frame );
+ set_zero_fx( output_fx[i], output_frame );
}
BREAK;
case IVAS_AUDIO_CONFIG_EXTERNAL:
FOR( i = output_setup.nchan_out_woLFE - 1; i >= nchan_ism; i-- )
{
- Copy32( output_f[i - nchan_ism], output_f[i], output_frame ); /*Q11*/
+ Copy32( output_fx[i - nchan_ism], output_fx[i], output_frame ); /*Q11*/
}
FOR( ; i >= 0; i-- )
{
- set_zero_fx( output_f[i], output_frame );
+ set_zero_fx( output_fx[i], output_frame );
}
BREAK;
default:
@@ -477,6 +484,7 @@ ivas_error ivas_sba_linear_renderer_fx(
*
* Determine SBA mixing matrices
*-------------------------------------------------------------------*/
+
void ivas_sba_mix_matrix_determiner_fx(
SPAR_DEC_HANDLE hSpar, /* i/o: SPAR decoder handle */
Word32 *output_fx[], /* i/o: transport/output audio channels Q_output*/
@@ -491,6 +499,7 @@ void ivas_sba_mix_matrix_determiner_fx(
Word16 num_bands_out, nchan_transport, nchan_out;
Word16 Q_p_output = add( 11, Q_output );
Word32 temp_fx;
+
/* Convert numeric range */
FOR( ch = 0; ch < nchan_remapped; ch++ )
{
@@ -520,6 +529,7 @@ void ivas_sba_mix_matrix_determiner_fx(
move16();
nchan_out = nchan_transport; /*Q0*/
move16();
+
ivas_agc_dec_process_fx( hSpar->hAgcDec, ( output_fx ), ( output_fx ), nchan_transport, output_frame );
Q_p_output = sub( Q_p_output, 3 );
#ifdef DEBUGGING
@@ -538,6 +548,8 @@ void ivas_sba_mix_matrix_determiner_fx(
/* Mixing matrix determiner */
num_bands_out = hSpar->hFbMixer->pFb->filterbank_num_bands; /*Q0*/
move16();
+
ivas_spar_dec_gen_umx_mat_fx( hSpar->hMdDec, nchan_transport, num_bands_out, bfi, num_md_sub_frames );
+
return;
}
diff --git a/lib_dec/ivas_spar_decoder_fx.c b/lib_dec/ivas_spar_decoder_fx.c
index d0c22e7b6c8f1e07df8a62282775d6e621f6a833..12a916fbe490ea505582b7248fac025cec7742d9 100644
--- a/lib_dec/ivas_spar_decoder_fx.c
+++ b/lib_dec/ivas_spar_decoder_fx.c
@@ -292,6 +292,11 @@ ivas_error ivas_spar_dec_open_fx(
move16();
}
+#ifdef NONBE_1303_REND_GRANULARITY
+ granularity = ivas_jbm_dec_get_render_granularity_fx( st_ivas->renderer_type, ivas_renderer_secondary_select_fx( st_ivas ), output_Fs );
+
+ IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, buffer_mode, nchan_tc, nchan_to_allocate, nchan_to_allocate, granularity ) ), IVAS_ERR_OK ) )
+#else
test();
test();
@@ -303,6 +308,7 @@ ivas_error ivas_spar_dec_open_fx(
}
IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, buffer_mode, nchan_tc, nchan_to_allocate, nchan_to_allocate, granularity ) ), IVAS_ERR_OK ) )
+#endif
{
return error;
}
@@ -702,7 +708,7 @@ void ivas_spar_get_cldfb_gains_fx(
cf_end = add( sub( hSpar->hFbMixer->cross_fade_end_offset, encfb_delay ), decfb_delay ); /*Q0*/
cf_len = sub( cf_end, cf_start );
weights_fx = hSpar->hFbMixer->cldfb_cross_fade_fx; /*hSpar->hFbMixer->cldfb_cross_fade_q*/
- cf_cldfb_start = shr( extract_l( ceil_fixed( sub( divide1616( sub( cf_start, shr( decfb_delay, 1 ) ), shl( stride, 9 ) ), 32 ), 6 ) ), 6 ); /*Q0*/
+ cf_cldfb_start = shr( extract_l( ceil_fx( sub( divide1616( sub( cf_start, shr( decfb_delay, 1 ) ), shl( stride, 9 ) ), 32 ), 6 ) ), 6 ); /*Q0*/
cf_cldfb_end = shr( divide1616( add( sub( cf_start, shr( decfb_delay, 1 ) ), cf_len ), shl( stride, 9 ) ), 6 ); /*q-factor of stride is 9(as max value is 60)*/ /*Q0*/
num_cf_slots = add( sub( cf_cldfb_end, cf_cldfb_start ), 1 ); /*Q0*/
num_samples = add( imult1616( num_cf_slots, stride ), sub( pt_len, stride ) ); /*Q0*/
@@ -1753,9 +1759,13 @@ void ivas_spar_dec_upmixer_sf_fx(
p_tc_fx[i] = st_ivas->hTcBuffer->tc_fx[( i + nchan_ism )] + prod; /*Q11*/
}
+#ifdef FIX_1372_OSBA_OBJECT_EDITING
+ IF( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) )
+#else
test();
test();
IF( EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) && EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) && EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV_ROOM ) )
+#endif
{
FOR( i = 0; i < nchan_ism; i++ )
{
diff --git a/lib_dec/ivas_stat_dec.h b/lib_dec/ivas_stat_dec.h
index edf9729cedb15a3b209b976647ac2e468033fb1f..289b91b775581bc1cc10616ad2cffb519a31b3f1 100644
--- a/lib_dec/ivas_stat_dec.h
+++ b/lib_dec/ivas_stat_dec.h
@@ -463,10 +463,8 @@ typedef struct ivas_param_ism_dec_data_structure
Word32 elevation_values_fx[MAX_PARAM_SPATIAL_SUBFRAMES * IVAS_MAX_NUM_BANDS]; /* Q22 */
Word16 power_ratios_fx[MAX_PARAM_ISM_NBANDS][MAX_PARAM_ISM_NBLOCKS][MAX_PARAM_ISM_WAVE]; /* Q15 */
-#ifdef OBJ_EDITING_API
- Word32 edited_azimuth_values_fx[MAX_PARAM_SPATIAL_SUBFRAMES * IVAS_MAX_NUM_BANDS];
- Word32 edited_elevation_values_fx[MAX_PARAM_SPATIAL_SUBFRAMES * IVAS_MAX_NUM_BANDS];
-#endif
+ Word32 edited_azimuth_values_fx[MAX_PARAM_SPATIAL_SUBFRAMES * IVAS_MAX_NUM_BANDS]; // Q22
+ Word32 edited_elevation_values_fx[MAX_PARAM_SPATIAL_SUBFRAMES * IVAS_MAX_NUM_BANDS]; // Q22
/*sub-modules*/
PARAM_ISM_CONFIG_HANDLE hParamIsm; /* Parametric ISM common handle */
@@ -720,9 +718,7 @@ typedef struct ivas_osba_data
Word16 delayBuffer_size;
Word16 delayBuffer_nchan;
-#ifdef OBJ_EDITING_API
- Word32 gain_bed_fx;
-#endif
+ Word32 gain_bed_fx; // Q29
} SBA_ISM_DATA, *SBA_ISM_DATA_HANDLE;
@@ -955,32 +951,44 @@ typedef struct ivas_masa_ism_ext_data_structure
/* Data structure for MASA_ISM rendering */
typedef struct ivas_masa_ism_data_structure
{
- Word16 azimuth_ism[MAX_NUM_OBJECTS][MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR];
- Word16 elevation_ism[MAX_NUM_OBJECTS][MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR];
+ Word16 azimuth_ism_fx[MAX_NUM_OBJECTS][MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR]; // Q0
+ Word16 elevation_ism_fx[MAX_NUM_OBJECTS][MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR]; // Q0
Word32 energy_ratio_ism_fx[MAX_NUM_OBJECTS][MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR][CLDFB_NO_CHANNELS_MAX]; /* Q30 */
Word32 masa_to_total_energy_ratio_fx[MAX_PARAM_SPATIAL_SUBFRAMES][MASA_FREQUENCY_BANDS]; /* Q30 */
- Word16 azimuth_ism_edited[MAX_NUM_OBJECTS];
- Word16 elevation_ism_edited[MAX_NUM_OBJECTS];
- UWord8 ism_is_edited[MAX_NUM_OBJECTS];
-#ifdef OBJ_EDITING_API
- Word32 gain_ism[MAX_NUM_OBJECTS];
- Word32 gain_masa;
-#endif
+ Word16 azimuth_ism_edited_fx[MAX_NUM_OBJECTS]; // Q0
+ Word16 elevation_ism_edited_fx[MAX_NUM_OBJECTS]; // Q0
+
+ UWord8 ism_dir_is_edited[MAX_NUM_OBJECTS];
+ Word16 gain_ism_fx[MAX_NUM_OBJECTS];
+ Word16 gain_masa_fx;
+
+ Word16 gain_ism_edited_fx[MAX_NUM_OBJECTS]; // Q12
+ UWord8 ism_gain_is_edited[MAX_NUM_OBJECTS];
+ Word16 gain_masa_edited_fx; // Q12
+ UWord8 masa_gain_is_edited;
Word16 idx_separated_ism;
- Word16 azimuth_separated_ism[MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR];
- Word16 elevation_separated_ism[MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR];
+ Word16 azimuth_separated_ism_fx[MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR];
+ Word16 elevation_separated_ism_fx[MAX_PARAM_SPATIAL_SUBFRAMES + DELAY_MASA_PARAM_DEC_SFR];
Word32 q_azimuth_old_fx[MAX_NUM_OBJECTS]; /* Q22 */
Word32 q_elevation_old_fx[MAX_NUM_OBJECTS]; /* Q22 */
- Word16 ismPreprocMatrix_fx[2][2][CLDFB_NO_CHANNELS_MAX]; /* Q15 */
- UWord8 objectsMoved;
- Word32 eneMoveIIR_fx[2][CLDFB_NO_CHANNELS_MAX]; /*Q-22*/
- Word32 enePreserveIIR_fx[2][CLDFB_NO_CHANNELS_MAX]; /*Q-22*/
- Word32 preprocEneTarget_fx[CLDFB_NO_CHANNELS_MAX]; /*Q-19*/
- Word32 preprocEneRealized_fx[CLDFB_NO_CHANNELS_MAX]; /*Q-19*/
+ UWord8 objectsEdited;
+ Word32 preprocEneTarget_fx[MASA_FREQUENCY_BANDS];
+ Word16 preprocEneTarget_e[MASA_FREQUENCY_BANDS];
+ Word32 preprocEneRealized_fx[MASA_FREQUENCY_BANDS];
+ Word16 preprocEneRealized_e[MASA_FREQUENCY_BANDS];
+ Word32 ismPreprocMatrix_fx[2][2][MASA_FREQUENCY_BANDS]; // Q28?
+ // Word16 ismPreprocMatrix_e[2][2][MASA_FREQUENCY_BANDS]; // Not needed?
+ Word32 eneMoveIIR_fx[2][MASA_FREQUENCY_BANDS];
+ Word16 eneMoveIIR_e[2][MASA_FREQUENCY_BANDS];
+ Word32 enePreserveIIR_fx[2][MASA_FREQUENCY_BANDS];
+ Word16 enePreserveIIR_e[2][MASA_FREQUENCY_BANDS];
+ Word32 eneOrigIIR_fx[MASA_FREQUENCY_BANDS];
+ Word16 eneOrigIIR_e[MASA_FREQUENCY_BANDS];
+ Word16 bits_ism[MAX_NUM_OBJECTS];
Word32 **delayBuffer_fx; /* Q11 */
Word16 delayBuffer_size;
@@ -997,9 +1005,9 @@ typedef struct ivas_masa_ism_data_structure
typedef struct decoder_tc_buffer_structure
{
- Word32 *tc_buffer_fx; /* the buffer itself */ /*stores memory length of tc buffer*/
- Word32 *tc_fx[MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS]; /* pointers into the buffer to the beginning of each tc Q11 for ivas */ // VE2SB: TBV
- Word16 no_channels; /*Stores no of channels in tc_fx with values*/
+ Word32 *tc_buffer_fx; /* the buffer itself */ /*stores memory length of tc buffer*/
+ Word32 *tc_fx[MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS]; /* pointers into the buffer to the beginning of each tc Q11 for ivas */
+ Word16 no_channels; /*Stores no of channels in tc_fx with values*/
Word16 q_tc_fx;
TC_BUFFER_MODE tc_buffer_mode; /* mode of the buffer (no buffering, render buffering, out buffering) */
Word16 nchan_transport_jbm; /* number of TCs after TC decoding */
@@ -1062,6 +1070,7 @@ typedef struct decoder_config_structure
Word16 Opt_ExternalOrientation; /* indicates whether external orientations are used */
Word16 Opt_dpid_on; /* indicates whether Directivity pattern option is used */
Word16 Opt_aeid_on; /* indicates whether Acoustic environment option is used */
+ Word16 Opt_ObjEdit_on; /* indicates whether object editing option is used */
Word16 Opt_tsm; /* indicates whether time scaling modification is activated */
IVAS_RENDER_FRAMESIZE render_framesize;
Word16 Opt_delay_comp; /* flag indicating delay compensation active */
@@ -1151,11 +1160,7 @@ typedef struct Decoder_Struct
MONO_DOWNMIX_RENDERER_HANDLE hMonoDmxRenderer; /* Mono downmix structure */
CREND_WRAPPER_HANDLE hCrendWrapper; /* Crend handle */
REVERB_HANDLE hReverb; /* Reverb handle */
-#ifdef FIX_CREND_SIMPLIFY_CODE
HRTFS_CREND_HANDLE hHrtfCrend; /* HRTF tables for CRend binaural renderer */
-#else
- HRTFS_CREND_HANDLE hSetOfHRTF; /* Set of HRTFs handle (CRend) */
-#endif
HRTFS_FASTCONV_HANDLE hHrtfFastConv; /* FASTCONV HRTF tables for binaural rendering */
HRTFS_PARAMBIN_HANDLE hHrtfParambin; /* HRTF tables for parametric binauralizer */
HRTFS_STATISTICS_HANDLE hHrtfStatistics; /* HRTF statistics handle */
diff --git a/lib_dec/ivas_stereo_cng_dec_fx.c b/lib_dec/ivas_stereo_cng_dec_fx.c
index b8336c928b752dbbae8c6745e4a550fd62825ba8..1f0cff11077368b5c1310c38e19172fc40cb71ae 100644
--- a/lib_dec/ivas_stereo_cng_dec_fx.c
+++ b/lib_dec/ivas_stereo_cng_dec_fx.c
@@ -59,8 +59,8 @@
#define CM_INIT 50
#define CORR_INIT 8
#define SID_INIT 6
-#define STEREO_CNA_LR_CORR_LT_FILT_FX 2040109440 /* long-term averaging factor for L/R correlation estimation in stereo CNA */
-#define STEREO_CNA_ILD_LT_FILT_FX 1932735283 /* long-term averaging factor for ILD estimation in stereo CNA */
+#define STEREO_CNA_LR_CORR_LT_FILT_FX 2040109440 /* long-term averaging factor for L/R correlation estimation in stereo CNA, == 0.95f */
+#define STEREO_CNA_ILD_LT_FILT_FX 1932735283 /* long-term averaging factor for ILD estimation in stereo CNA, == 0.9f */
/*-------------------------------------------------------------------
* stereo_dft_dec_sid_coh()
diff --git a/lib_dec/ivas_stereo_dft_dec_fx.c b/lib_dec/ivas_stereo_dft_dec_fx.c
index 789305f4884a24f2afdf2036a03d123077dfc2d9..aa8d428c7af303c3412fca48b142e3ab22c09220 100644
--- a/lib_dec/ivas_stereo_dft_dec_fx.c
+++ b/lib_dec/ivas_stereo_dft_dec_fx.c
@@ -3161,21 +3161,16 @@ void stereo_dft_generate_res_pred_fx(
move32();
DFT_PRED_RES[2 * i + 1] = L_add( L_shl( Mpy_32_16_1( hStereoDft->DFT_past_DMX_fx[d_short_ind][2 * i + 1], g_short ), q_shift0 ), L_shl( Mpy_32_16_1( hStereoDft->DFT_past_DMX_fx[d_long_ind][2 * i + 1], g_long ), q_shift1 ) ); /* q_dft */
move32();
-#ifndef FIX_1946_CRASH_JBM_PROCESSING
- past_dmx_nrg = Madd_32_32( Madd_32_32( past_dmx_nrg, DFT_PRED_RES[2 * i], DFT_PRED_RES[2 * i] ), DFT_PRED_RES[2 * i + 1], DFT_PRED_RES[2 * i + 1] ); /* q_dft */
-#endif
}
test();
IF( !bfi || GE_16( b, hStereoDft->res_cod_band_max ) )
{
Word16 q_div;
Word16 op;
-#ifdef FIX_1946_CRASH_JBM_PROCESSING
FOR( i = hStereoDft->band_limits[b]; i < len; i++ )
{
past_dmx_nrg = Madd_32_32( Madd_32_32( past_dmx_nrg, DFT_PRED_RES[2 * i], DFT_PRED_RES[2 * i] ), DFT_PRED_RES[2 * i + 1], DFT_PRED_RES[2 * i + 1] ); /* q_dft */
}
-#endif
op = BASOP_Util_Divide3232_Scale( L_add( 1, dmx_nrg ), L_add( 1, past_dmx_nrg ), &q_div ); /* q_sqrt */
q_sqrt = q_div;
move16();
@@ -4356,11 +4351,10 @@ void stereo_dft_dec_read_BS_fx(
ecsq_inst.config_index = sub( shl( hStereoDft->res_cod_mode[k_offset], 1 ), 1 ); /* Q0 */
move16();
- ECSQ_decode( &ecsq_inst, hStereoDft->res_cod_line_max, dec );
+ ECSQ_decode_fx( &ecsq_inst, hStereoDft->res_cod_line_max, dec );
n_bits = rc_uni_dec_virtual_finish_fx( &range_uni_dec_state ); /* Q0 */
-
set_zero_fx( res_buf_fx, STEREO_DFT_N_8k );
FOR( Word16 c = 0; c < hStereoDft->res_cod_line_max; c++ )
{
diff --git a/lib_dec/ivas_stereo_dft_plc_fx.c b/lib_dec/ivas_stereo_dft_plc_fx.c
index c29e1e4b54805a2b8dcfb596281740043c7d59b9..4b47d0a1d840d2564975bc4e57e5b3039fb4169c 100644
--- a/lib_dec/ivas_stereo_dft_plc_fx.c
+++ b/lib_dec/ivas_stereo_dft_plc_fx.c
@@ -124,7 +124,7 @@ void stereo_dft_res_ecu_fx(
rfft_fx( res_buf, trigo_dec, L_FRAME8k, +1 );
- v_multc_fixed_16( res_buf, fac, res_buf, L_FRAME8k ); /* hStereoDft->q_dft */
+ v_multc_fx_16( res_buf, fac, res_buf, L_FRAME8k ); /* hStereoDft->q_dft */
Copy32( res_buf + ( OFFSET8k - ZP8k ), &hStereoDft->res_cod_mem_fx[0], STEREO_DFT_OVL_8k ); /* hStereoDft->q_dft */
hStereoDft->q_res_cod_mem_fx = hStereoDft->q_dft;
move16();
@@ -145,7 +145,7 @@ void stereo_dft_res_ecu_fx(
v_shr_32( res_buf, res_buf, L_FRAME8k, negate( q_shift ) ); /* hStereoDft->q_dft */
- v_multc_fixed( res_buf, fac, res_buf, L_FRAME8k ); /* hStereoDft->q_dft */
+ v_multc_fx( res_buf, fac, res_buf, L_FRAME8k ); /* hStereoDft->q_dft */
/* Cross-fade memory */
fac = 0;
@@ -756,7 +756,7 @@ void stereo_dft_res_ecu_burst_att_fx(
fac = L_sub( MAX_32, L_deposit_h( BASOP_Util_Divide3232_Scale( L_sub( hStereoDft->time_offs, L_ana ), L_add( hStereoDft->time_offs, L_ana ), &q_fac ) ) ); /* Q0 */
}
- v_multc_fixed( pDFT_RES, fac, pDFT_RES, shl( L_res, 1 ) );
+ v_multc_fx( pDFT_RES, fac, pDFT_RES, shl( L_res, 1 ) );
return;
}
diff --git a/lib_dec/ivas_stereo_eclvq_dec_fx.c b/lib_dec/ivas_stereo_eclvq_dec_fx.c
index dfa411145fc3ce2930203029047d821a1d37e45d..df7158c85caa580a15df7c9797e95d5edbe6b3a0 100644
--- a/lib_dec/ivas_stereo_eclvq_dec_fx.c
+++ b/lib_dec/ivas_stereo_eclvq_dec_fx.c
@@ -119,7 +119,7 @@ static Word16 arith_decode_prob_escape(
* the dequantized vector is obtained using the ECSQ_dequantize_vector method
* ---------------------------------------------------------------*/
-void ECSQ_decode(
+void ECSQ_decode_fx(
ECSQ_instance *ecsq_inst,
const Word16 N, /* Q0 */
Word16 *output /* Q0 */
diff --git a/lib_dec/ivas_stereo_icbwe_dec_fx.c b/lib_dec/ivas_stereo_icbwe_dec_fx.c
index 8ef404ede324f9b8dab878f5eb378d42e56fd88f..d5b289acfa39f8888e9dee25efef36f0a41ee389 100644
--- a/lib_dec/ivas_stereo_icbwe_dec_fx.c
+++ b/lib_dec/ivas_stereo_icbwe_dec_fx.c
@@ -121,9 +121,8 @@ void stereo_icBWE_dec_fx(
const Word16 *fb_synth_ref_fx, /* i : ref. high-band synthesis 16-20 kHz Q_white_exc*/
const Word16 *voice_factors_fx, /* i : voicing factors Q15 */
const Word16 output_frame, /* i : frame length Q0 */
- Word16 *Q_syn /* i : Q of synth and synthRef buffers */
- ,
- const Word16 Q_white_exc /* i : Q of fb_synth_ref_fx */
+ Word16 *Q_syn, /* i : Q of synth and synthRef buffers */
+ const Word16 Q_white_exc /* i : Q of fb_synth_ref_fx */
)
{
Word16 i, j, k, nbSubFr;
@@ -427,7 +426,7 @@ void stereo_icBWE_dec_fx(
test();
IF( LT_32( hCPE->hStereoDftDmx->targetGain_fx, 268435456 /* 0.5 in Q29 */ ) || GT_32( hCPE->hStereoDftDmx->targetGain_fx, 1073741824 /* 2.0 in Q29 */ ) )
{
- v_multc_fixed_16_16( voice_factors_fx, 16384 /* 0.5 in Q15 */, nlMixFac_fx, NB_SUBFR16k );
+ v_multc_fx_16_16( voice_factors_fx, 16384 /* 0.5 in Q15 */, nlMixFac_fx, NB_SUBFR16k );
}
}
ELSE
@@ -435,7 +434,7 @@ void stereo_icBWE_dec_fx(
test();
IF( LT_32( hCPE->hStereoTCA->targetGain_fx, 268435456 /* 0.5 in Q29 */ ) || GT_32( hCPE->hStereoTCA->targetGain_fx, 1073741824 /* 2.0 in Q29 */ ) )
{
- v_multc_fixed_16_16( voice_factors_fx, 16384 /* 0.5 in Q15 */, nlMixFac_fx, NB_SUBFR16k );
+ v_multc_fx_16_16( voice_factors_fx, 16384 /* 0.5 in Q15 */, nlMixFac_fx, NB_SUBFR16k );
}
}
@@ -636,7 +635,7 @@ void stereo_icBWE_dec_fx(
IF( EQ_16( st->extl, FB_TBE ) )
{
- v_multc_fixed_16_16( fb_synth_ref_fx, gsMapping_fx, fb_synth_nonref_fx, L_FRAME48k );
+ v_multc_fx_16_16( fb_synth_ref_fx, gsMapping_fx, fb_synth_nonref_fx, L_FRAME48k );
}
/* generate 32kHz SHB synthesis from 12.8(16)kHz signal */
diff --git a/lib_dec/ivas_stereo_mdct_core_dec_fx.c b/lib_dec/ivas_stereo_mdct_core_dec_fx.c
index b2a894a34286b4c3a56972f9b2849ebc849c4d48..eebfa267cf08cec433419553c956cd95fda23383 100644
--- a/lib_dec/ivas_stereo_mdct_core_dec_fx.c
+++ b/lib_dec/ivas_stereo_mdct_core_dec_fx.c
@@ -411,7 +411,7 @@ void stereo_mdct_core_dec_fx(
}
Word16 s = getScaleFactor32( x_fx[ch][k], L_frameTCX[ch] );
Scale_sig32( x_fx[ch][k], L_frameTCX[ch], s ); /* exp(x_e + 31 - s) */
- TonalMDCTConceal_SaveFreqSignal_ivas_fx( st->hTonalMDCTConc, x_fx[ch][k], sub( x_e[ch][k], s ), L_frameTCX[ch], L_frame[ch], &scf_fx[0], scf_e, 0, get_igf_startline( st, L_frame[ch], L_frameTCX[ch] ) );
+ TonalMDCTConceal_SaveFreqSignal_ivas_fx( st->hTonalMDCTConc, x_fx[ch][k], sub( x_e[ch][k], s ), L_frameTCX[ch], L_frame[ch], &scf_fx[0], scf_e, 0, get_igf_startline_fx( st, L_frame[ch], L_frameTCX[ch] ) );
Scale_sig32( x_fx[ch][k], L_frameTCX[ch], negate( s ) ); /* exp(x_e) */
}
}
diff --git a/lib_dec/ivas_stereo_mdct_stereo_dec_fx.c b/lib_dec/ivas_stereo_mdct_stereo_dec_fx.c
index c34fd8624480edd51282215f38a2c11303811c05..43dc48edfad2aa4e00376d17c73518e183879561 100644
--- a/lib_dec/ivas_stereo_mdct_stereo_dec_fx.c
+++ b/lib_dec/ivas_stereo_mdct_stereo_dec_fx.c
@@ -48,12 +48,16 @@
static void inverseBwMS_fx( const Word16 startLine, const Word16 stopLine, Word32 x0[], Word32 x1[], const Word32 norm_fac );
-#define NF_RED_FAC_FIXED 1610612736 // Q31
-#define SQRT2_OVER_2_FIXED 1518500250 // Q31
-#define POINT_8_FIXED 1717986918 // Q31
-#define POINT_2_FIXED 429496730 // Q31
-#define ONE_POINT_3_FIXED 87241523 // Q26
-#define POINT_9_FIXED 60397978 // Q26
+/*-------------------------------------------------------------------*
+ * Local constants
+ *-------------------------------------------------------------------*/
+
+#define NF_RED_FAC_FX 1610612736 // Q31
+#define POINT_8_FX 1717986918 // Q31
+#define POINT_2_FX 429496730 // Q31
+#define ONE_POINT_3_FX 87241523 // Q26
+#define POINT_9_FX 60397978 // Q26
+
/*-------------------------------------------------------------------*
* parse_stereo_from_bitstream
@@ -250,6 +254,7 @@ void parse_stereo_from_bitstream(
*
* Band-wise M/S stereo processing
*-------------------------------------------------------------------*/
+
static void inverseBwMS_fx(
const Word16 startLine, /* i : start line of sfb Q0*/
const Word16 stopLine, /* i : stop line of sfb Q0*/
@@ -280,6 +285,7 @@ static void inverseBwMS_fx(
*
* M/S stereo processing
*-------------------------------------------------------------------*/
+
void inverseMS_fx(
const Word16 L_frame, /* i : frame length Q0*/
Word32 x0[], /* i/o: mid/left channel coefficients Qx*/
@@ -298,8 +304,9 @@ void inverseMS_fx(
*
* apply stereo processing (inverse MS and global ILD)
*-------------------------------------------------------------------*/
+
void stereo_decoder_tcx_fx(
- STEREO_MDCT_DEC_DATA *hStereoMdct, /* i/o: MDCT stereo decoder structure */
+ STEREO_MDCT_DEC_DATA *hStereoMdct, /* i/o: MDCT stereo decoder structure */
Word16 ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask Q0*/
Word32 *spec_r_0[NB_DIV], /* i/o: spectrum right channel Qx*/
Word32 *spec_l[], /* i/o: spectrum left channel [NB_DIV][N] Qx*/
@@ -355,11 +362,11 @@ void stereo_decoder_tcx_fx(
{
IF( EQ_32( spec_r_0[k][i], 0 ) )
{
- spec_r[k][i] = Mpy_32_32( spec_r[k][i], NF_RED_FAC_FIXED ); /* Qx */
+ spec_r[k][i] = Mpy_32_32( spec_r[k][i], NF_RED_FAC_FX ); /* Qx */
move32();
}
}
- inverseMS_fx( sfbConf->sfbOffset[sfbConf->nBandsStereoCore], spec_l[k], spec_r[k], SQRT2_OVER_2_FIXED );
+ inverseMS_fx( sfbConf->sfbOffset[sfbConf->nBandsStereoCore], spec_l[k], spec_r[k], SQRT2_OVER_2_FX );
}
ELSE IF( EQ_16( mdct_stereo_mode[k], SMDCT_BW_MS ) )
{
@@ -371,11 +378,11 @@ void stereo_decoder_tcx_fx(
{
IF( EQ_32( spec_r_0[k][i], 0 ) )
{
- spec_r[k][i] = Mpy_32_32( spec_r[k][i], NF_RED_FAC_FIXED ); /* Qx */
+ spec_r[k][i] = Mpy_32_32( spec_r[k][i], NF_RED_FAC_FX ); /* Qx */
move32();
}
}
- inverseBwMS_fx( sfbConf->sfbOffset[sfb], sfbConf->sfbOffset[sfb + 1], spec_l[k], spec_r[k], SQRT2_OVER_2_FIXED );
+ inverseBwMS_fx( sfbConf->sfbOffset[sfb], sfbConf->sfbOffset[sfb + 1], spec_l[k], spec_r[k], SQRT2_OVER_2_FX );
}
}
}
@@ -388,11 +395,11 @@ void stereo_decoder_tcx_fx(
{
IF( EQ_32( spec_r_0[k][i], 0 ) )
{
- spec_r[k][i] = Mpy_32_32( spec_r[k][i], NF_RED_FAC_FIXED ); /* Qx */
+ spec_r[k][i] = Mpy_32_32( spec_r[k][i], NF_RED_FAC_FX ); /* Qx */
move32();
}
}
- inverseMS_fx( sub( sfbConf->sfbOffset[sfbConf->sfbCnt], sfbConf->sfbOffset[sfbConf->nBandsStereoCore] ), &spec_l[k][sfbConf->sfbOffset[sfbConf->nBandsStereoCore]], &spec_r[k][sfbConf->sfbOffset[sfbConf->nBandsStereoCore]], SQRT2_OVER_2_FIXED );
+ inverseMS_fx( sub( sfbConf->sfbOffset[sfbConf->sfbCnt], sfbConf->sfbOffset[sfbConf->nBandsStereoCore] ), &spec_l[k][sfbConf->sfbOffset[sfbConf->nBandsStereoCore]], &spec_r[k][sfbConf->sfbOffset[sfbConf->nBandsStereoCore]], SQRT2_OVER_2_FX );
}
ELSE IF( EQ_16( hStereoMdct->IGFStereoMode[k], SMDCT_BW_MS ) )
{
@@ -404,11 +411,11 @@ void stereo_decoder_tcx_fx(
{
IF( EQ_32( spec_r_0[k][i], 0 ) )
{
- spec_r[k][i] = Mpy_32_32( spec_r[k][i], NF_RED_FAC_FIXED ); /* Qx */
+ spec_r[k][i] = Mpy_32_32( spec_r[k][i], NF_RED_FAC_FX ); /* Qx */
move32();
}
}
- inverseBwMS_fx( sfbConf->sfbOffset[sfb], sfbConf->sfbOffset[sfb + 1], spec_l[k], spec_r[k], SQRT2_OVER_2_FIXED );
+ inverseBwMS_fx( sfbConf->sfbOffset[sfb], sfbConf->sfbOffset[sfb + 1], spec_l[k], spec_r[k], SQRT2_OVER_2_FX );
}
}
}
@@ -420,15 +427,15 @@ void stereo_decoder_tcx_fx(
tmp_32 = L_shr( tmp_32, sub( 5, tmp_e ) ); /* nrgRatio = nrg[1]/nrg[0] */ // Q26
nrgRatio = L_sub( tmp_32, ONE_IN_Q26 ); // Q26
- hStereoMdct->smooth_ratio_fx = W_extract_h( W_mac_32_32( W_mult_32_32( POINT_8_FIXED, hStereoMdct->smooth_ratio_fx ), POINT_2_FIXED, nrgRatio ) ); // Q26
+ hStereoMdct->smooth_ratio_fx = W_extract_h( W_mac_32_32( W_mult_32_32( POINT_8_FX, hStereoMdct->smooth_ratio_fx ), POINT_2_FX, nrgRatio ) ); // Q26
move32();
/* set flag to reverse dmx computation in case of right-side panning, only relevant for mono output */
- IF( GT_32( hStereoMdct->smooth_ratio_fx, ONE_POINT_3_FIXED ) )
+ IF( GT_32( hStereoMdct->smooth_ratio_fx, ONE_POINT_3_FX ) )
{
hStereoMdct->reverse_dmx = 1; /* Q0 */
move16();
}
- ELSE IF( LT_32( hStereoMdct->smooth_ratio_fx, POINT_9_FIXED ) )
+ ELSE IF( LT_32( hStereoMdct->smooth_ratio_fx, POINT_9_FX ) )
{
hStereoMdct->reverse_dmx = 0; /* Q0 */
move16();
@@ -463,16 +470,16 @@ void stereo_decoder_tcx_fx(
IF( ( GT_32( nrgRatio, ONE_IN_Q26 ) ) && ( LT_16( k, tmp1 ) ) )
{
shift = norm_l( nrgRatio );
- nrgRatio = L_shl( nrgRatio, shift ); /* Q26 + shift */
- v_multc_fixed( spec_r[k], nrgRatio, spec_r[k], L_frameTCX_r ); /* spec_r will be in Qx + shift - Q5 */
- Scale_sig32( spec_r[k], L_frameTCX_r, sub( 5, shift ) ); /* Qx */
+ nrgRatio = L_shl( nrgRatio, shift ); /* Q26 + shift */
+ v_multc_fx( spec_r[k], nrgRatio, spec_r[k], L_frameTCX_r ); /* spec_r will be in Qx + shift - Q5 */
+ Scale_sig32( spec_r[k], L_frameTCX_r, sub( 5, shift ) ); /* Qx */
}
ELSE IF( ( LT_32( nrgRatio, ONE_IN_Q26 ) ) && ( LT_16( k, tmp2 ) ) )
{
inv_nrgRatio = BASOP_Util_Divide3232_Scale_newton( ONE_IN_Q26, nrgRatio, &tmp_e );
shift = sub( 5, tmp_e );
- v_multc_fixed( spec_l[k], inv_nrgRatio, spec_l[k], L_frameTCX_l ); /* spec_r will be in Qx - tmp_e */
- Scale_sig32( spec_l[k], L_frameTCX_l, sub( 5, shift ) ); /* Qx */
+ v_multc_fx( spec_l[k], inv_nrgRatio, spec_l[k], L_frameTCX_l ); /* spec_r will be in Qx - tmp_e */
+ Scale_sig32( spec_l[k], L_frameTCX_l, sub( 5, shift ) ); /* Qx */
}
}
} /* for k */
@@ -659,15 +666,12 @@ void synchonize_channels_mdct_sid_fx(
* between active/inactive coding in MDCT-Stereo DTX
*-------------------------------------------------------------------*/
-// helper function
-static void update_exp( Word16 *a_exp, Word16 *b_exp, Word16 *buff_a, Word16 *buff_b, Word16 legth );
-
static void update_exp(
Word16 *a_exp,
Word16 *b_exp,
- Word16 *buff_a, /* exp(a_exp) */
- Word16 *buff_b, /* exp(b_exp) */
- Word16 legth /* Q0 */
+ Word16 *buff_a, /* exp(a_exp) */
+ Word16 *buff_b, /* exp(b_exp) */
+ const Word16 legth /* Q0 */
)
{
Word16 diff = 0;
diff --git a/lib_dec/ivas_stereo_switching_dec_fx.c b/lib_dec/ivas_stereo_switching_dec_fx.c
index 2cd075478f6dc237099144841f8496d8ad00b639..da6adcf338b516d34c97671912252022e0075d3e 100644
--- a/lib_dec/ivas_stereo_switching_dec_fx.c
+++ b/lib_dec/ivas_stereo_switching_dec_fx.c
@@ -425,10 +425,10 @@ ivas_error stereo_memory_dec_fx(
{
assert( hCPE->hCoreCoder[0]->hHQ_core->Q_old_out_fx32 == hCPE->hCoreCoder[1]->hHQ_core->Q_old_out_fx32 );
v_add_32( hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, hCPE->hCoreCoder[1]->hHQ_core->old_out_fx32, hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, extract_l( Mpy_32_16_1( output_Fs, INV_FRAME_PER_SEC_Q15 ) ) ); /* exp(exp_old_out) */
- v_multc_fixed_16( hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, 16384 /* 0.5 in Q15 */, hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, extract_l( Mpy_32_16_1( output_Fs, INV_FRAME_PER_SEC_Q15 ) ) ); /* exp(exp_old_out) */
+ v_multc_fx_16( hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, 16384 /* 0.5 in Q15 */, hCPE->hCoreCoder[0]->hHQ_core->old_out_fx32, extract_l( Mpy_32_16_1( output_Fs, INV_FRAME_PER_SEC_Q15 ) ) ); /* exp(exp_old_out) */
v_add_32( hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, hCPE->hCoreCoder[1]->hHQ_core->old_out_LB_fx32, hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, L_FRAME32k ); /* q_old_outLB_fx */
- v_multc_fixed_16( hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, 16384 /* 0.5 in Q15 */, hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, L_FRAME32k ); /* exp(exp_old_out) */
+ v_multc_fx_16( hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, 16384 /* 0.5 in Q15 */, hCPE->hCoreCoder[0]->hHQ_core->old_out_LB_fx32, L_FRAME32k ); /* exp(exp_old_out) */
}
/*--------------------------------------------------------------*
@@ -2140,12 +2140,10 @@ void stereo_td2dft_update_fx(
}
ELSE IF( EQ_16( hCPE->element_mode, IVAS_CPE_MDCT ) && hCPE->input_mem_fx[0] != NULL )
{
-
/* update DFT stereo OLA memories */
/*set_zero( hCPE->input_mem_LB[n], STEREO_DFT32MS_OVL_16k );*/
L_lerp_fx_q11( output_fx + sub( sts[n]->L_frame, ovl ), hCPE->input_mem_LB_fx[n], STEREO_DFT32MS_OVL_16k, ovl );
-
/* TCX synthesis (it was already delayed in TD stereo in core_switching_post_dec()) */
IF( sts[n]->hTcxDec != NULL )
{
diff --git a/lib_dec/ivas_tcx_core_dec_fx.c b/lib_dec/ivas_tcx_core_dec_fx.c
index afe1b71db8c37411bbb890c45b45399d118b6185..b36aad0c187920f8cfcb38dd974b11b18415b28a 100644
--- a/lib_dec/ivas_tcx_core_dec_fx.c
+++ b/lib_dec/ivas_tcx_core_dec_fx.c
@@ -458,7 +458,7 @@ void stereo_tcx_core_dec_fx(
Copy( &lsfnew_uw_fx[k * M], &lsf_fx[( k + 1 ) * M], M ); /* Q2.56 */
Copy( &lsfnew_uw_fx[k * M], &lsf_tmp_fx[( k + 1 ) * M], M ); /* Q2.56 */
- v_multc_fixed_16_16( &lsf_tmp_fx[( k + 1 ) * M], sr_core_ratio, &lsf_tmp_fx[( k + 1 ) * M], M );
+ v_multc_fx_16_16( &lsf_tmp_fx[( k + 1 ) * M], sr_core_ratio, &lsf_tmp_fx[( k + 1 ) * M], M );
Scale_sig( &lsf_tmp_fx[( k + 1 ) * M], M, tmp );
test();
IF( !st->lpcQuantization && EQ_32( st->sr_core, INT_FS_16k_FX ) )
@@ -918,9 +918,6 @@ void stereo_tcx_core_dec_fx(
Word32 signal_out_32_fx[L_FRAME48k];
Word16 exp;
Copy_Scale_sig_16_32_no_sat( signal_out_fx, signal_out_32_fx, st->hFdCngDec->hFdCngCom->frameSize, Q6 );
-#ifndef FIX_1996_MASKING_NOISE
- Copy_Scale_sig_16_32_no_sat( st->hFdCngDec->hFdCngCom->olapBufferSynth2, st->hFdCngDec->hFdCngCom->olapBufferSynth2_fx, shl( st->hFdCngDec->hFdCngCom->frameSize, 1 ), Q15 );
-#endif
generate_masking_noise_ivas_fx( signal_out_32_fx, &exp, st->hFdCngDec->hFdCngCom, st->hFdCngDec->hFdCngCom->frameSize, 0, 0, 0, st->element_mode, hStereoCng, nchan_out );
Copy_Scale_sig_32_16( signal_out_32_fx, signal_out_fx, st->hFdCngDec->hFdCngCom->frameSize, negate( exp ) ); // Q0
Copy_Scale_sig_32_16( st->hFdCngDec->hFdCngCom->olapBufferSynth2_fx, st->hFdCngDec->hFdCngCom->olapBufferSynth2, shl( st->hFdCngDec->hFdCngCom->frameSize, 1 ), -Q15 ); // Q0
diff --git a/lib_dec/ivas_td_low_rate_dec_fx.c b/lib_dec/ivas_td_low_rate_dec_fx.c
index 385096ba6d6d860d73dc06b7895167afe855b42e..59543f4da0928f1846ae0ef222f1c2158a030fbc 100644
--- a/lib_dec/ivas_td_low_rate_dec_fx.c
+++ b/lib_dec/ivas_td_low_rate_dec_fx.c
@@ -326,11 +326,8 @@ void decod_gen_2sbfr_fx(
* Prepare TBE excitation
*-----------------------------------------------------------------*/
-#ifdef FIX_2010_PREP_TBE_EXC
prep_tbe_exc_fx( L_frame, 2 * L_SUBFR, i_subfr, gain_pit, gain_code, code, voice_fac, &voice_factors[i_subfr / L_SUBFR /*i_subfr / L_SUBFR*/], bwe_exc, 0, NULL, Q10, st->Q_exc, T0, T0_frac, GENERIC, st->core_brate, st->element_mode, st->idchan, st->hBWE_TD != NULL, st->tdm_LRTD_flag );
-#else
- prep_tbe_exc_fx( L_frame, 2 * L_SUBFR, i_subfr, gain_pit, gain_code, code, voice_fac, &voice_factors[i_subfr / L_SUBFR /*i_subfr / L_SUBFR*/], bwe_exc, 0, NULL, st->Q_exc, T0, T0_frac, GENERIC, st->core_brate, st->element_mode, st->idchan, st->hBWE_TD != NULL, st->tdm_LRTD_flag );
-#endif
+
voice_factors[i_subfr / L_SUBFR + 1] = voice_factors[i_subfr / L_SUBFR /*i_subfr / L_SUBFR*/]; /* Q15 */
move16();
diff --git a/lib_dec/jbm_jb4sb_fx.c b/lib_dec/jbm_jb4sb_fx.c
index 6357c3a1bc70165220d678a281b327c663a0e179..eccd8cb030efc927998ef6e1cb2d373e5833c901 100644
--- a/lib_dec/jbm_jb4sb_fx.c
+++ b/lib_dec/jbm_jb4sb_fx.c
@@ -774,7 +774,6 @@ static void JB4_targetPlayoutDelay(
move32();
move32();
-#ifdef NONBE_1122_JBM_FIX_PLAYOUT_DELAY_IN_DTX
#ifdef NONBE_1122_KEEP_EVS_MODE_UNCHANGED
IF( !h->evsMode )
{
@@ -786,13 +785,6 @@ static void JB4_targetPlayoutDelay(
#endif
*targetStartUp = JB4_MAX( *targetStartUp, (UWord32) h->safetyMargin );
move32();
-#else
- if ( LT_64( *targetStartUp, 60 ) )
- {
- *targetStartUp = 60;
- move32();
- }
-#endif
return;
}
@@ -1330,7 +1322,7 @@ static void JB4_estimateShortTermJitter(
}
IF( temp != 0 )
{
- temp = L_shr( ceil_fixed( temp, sub( 15, exp ) ), sub( 15, exp ) ); // Q31
+ temp = L_shr( ceil_fx( temp, sub( 15, exp ) ), sub( 15, exp ) ); // Q31
}
h->stJitter = (UWord32) W_mult0_32_32( temp, h->frameDuration );
move32();
diff --git a/lib_dec/jbm_pcmdsp_apa.h b/lib_dec/jbm_pcmdsp_apa.h
index 8daf3fc11c2f27e8c638ff4c68c721458c0338b5..70e31eb75e64612743ea50e72108d69c5cf92309 100644
--- a/lib_dec/jbm_pcmdsp_apa.h
+++ b/lib_dec/jbm_pcmdsp_apa.h
@@ -39,9 +39,9 @@
#ifndef JBM_PCMDSP_APA_H
#define JBM_PCMDSP_APA_H JBM_PCMDSP_APA_H
+#include "common_api_types.h"
#include
-#include
-#include "options.h"
+
/*
********************************************************************************
@@ -50,17 +50,17 @@
*/
/* size of IO buffers (a_in[], a_out[]) for apa_exec() */
-#define APA_BUF_PER_CHANNEL ( 960 * 3 )
+#define APA_BUF_PER_CHANNEL ( IVAS_MAX_FRAME_SIZE * 3 )
#define APA_MAX_NUM_CHANNELS 16
#define APA_BUF ( APA_BUF_PER_CHANNEL * APA_MAX_NUM_CHANNELS )
/* min/max sampling rate [Hz] */
#define APA_MIN_RATE 1000
-#define APA_MAX_RATE 48000
+#define APA_MAX_RATE IVAS_MAX_SAMPLING_RATE
/* min/max scaling [%] */
-#define APA_MIN_SCALE 50
-#define APA_MAX_SCALE 150
+#define APA_MIN_SCALE IVAS_TIME_SCALE_MIN
+#define APA_MAX_SCALE IVAS_TIME_SCALE_MAX
#define APA_SM_SURROUND 1
#define APA_SM_LOGARITHMIC 2
diff --git a/lib_dec/jbm_pcmdsp_apa_fx.c b/lib_dec/jbm_pcmdsp_apa_fx.c
index 94b4cb6bd2dfd1c680ce42e927414bd24934c6d3..7b64250b182955ac529e723fe562ed616f256421 100644
--- a/lib_dec/jbm_pcmdsp_apa_fx.c
+++ b/lib_dec/jbm_pcmdsp_apa_fx.c
@@ -76,10 +76,8 @@ struct apa_state_t
bool evs_compat_mode;
Word16 *buf_out_fx;
- Word16 Q_buf_out; /* stores the scaling of buf_out_fx */
-#ifdef FIX1998_APA_EXEC_SCALING
+ Word16 Q_buf_out; /* stores the scaling of buf_out_fx */
Word16 Q_a_out_init_old; /* stores initially determined max. scaling of data in buf_out_fx, before beeing adjusted to previous frame scaling */
-#endif
UWord16 buf_out_capacity;
UWord16 l_buf_out;
@@ -193,10 +191,8 @@ ivas_error apa_init(
}
memset( ps->buf_out_fx, 0, ( sizeof( Word16 ) * ps->buf_out_capacity ) );
ps->Q_buf_out = Q15;
-#ifdef FIX1998_APA_EXEC_SCALING
ps->Q_a_out_init_old = Q15;
move16();
-#endif
move16();
ps->evs_compat_mode = false;
@@ -279,10 +275,8 @@ UWord8 apa_reconfigure(
ps->buf_out_fx = (Word16 *) malloc( sizeof( Word16 ) * ps->buf_out_capacity );
memset( ps->buf_out_fx, 0, ( sizeof( Word16 ) * ps->buf_out_capacity ) );
ps->Q_buf_out = Q15;
-#ifdef FIX1998_APA_EXEC_SCALING
ps->Q_a_out_init_old = Q15;
move16();
-#endif
move16();
IF( !ps->buf_out_fx )
{
@@ -908,15 +902,11 @@ UWord8 apa_exec_ivas_fx(
Word32 expScaling, actScaling;
UWord32 statsResetThreshold, statsResetShift;
Word16 Q_a_out;
-#ifdef FIX1998_APA_EXEC_SCALING
Word16 Q_a_out_init_old;
-#endif
Q_a_out = add( getScaleFactor32_copy( a_in, L_mult0( ps->num_channels, APA_BUF_PER_CHANNEL ) ), Q11 - Q16 - Q1 );
-#ifdef FIX1998_APA_EXEC_SCALING
Q_a_out_init_old = Q_a_out; /* store the possible scaling of a_in, to be re-used in the next frame */
move16();
-#endif
statsResetThreshold = 1637;
move32();
statsResetShift = 2;
@@ -983,15 +973,11 @@ UWord8 apa_exec_ivas_fx(
Word16 a_tmp[APA_BUF];
Word16 *buf_out_ptr = &( ps->buf_out_fx[ps->l_buf_out - ps->l_frm] );
-#ifdef FIX1998_APA_EXEC_SCALING
/*
don't compare against actual scaling in ps->Q_buf_out, but possible scaling in ps->Q_a_out_init_old; otherwise we are constantly reducing the scaling over time, leading to precision issues
alternative approach: determine scaling of ps->buf_out_fx, but this is costly due to the sheer amount of samples stored there...
*/
Q_a_out = s_min( Q_a_out, ps->Q_a_out_init_old );
-#else
- Q_a_out = s_min( Q_a_out, ps->Q_buf_out );
-#endif
Scale_sig( ps->buf_out_fx, ps->buf_out_capacity, sub( Q_a_out, ps->Q_buf_out ) ); // Q_buf_out -> Q_a_out
IF( EQ_32( ps->scale, 100 ) )
{
@@ -1105,10 +1091,8 @@ UWord8 apa_exec_ivas_fx(
}
ps->l_buf_out = (UWord16) L_add( ps->l_buf_out, l_frm_out );
move16();
-#ifdef FIX1998_APA_EXEC_SCALING
ps->Q_a_out_init_old = Q_a_out_init_old;
move16();
-#endif
*l_out = l_frm_out;
move16();
diff --git a/lib_dec/lib_dec.h b/lib_dec/lib_dec.h
index dc95fe00e9aac3e958d53d16508693f2c79debe5..51c359227790d08c4430ee54e7cab5f41469be9d 100644
--- a/lib_dec/lib_dec.h
+++ b/lib_dec/lib_dec.h
@@ -64,14 +64,12 @@ typedef enum _IVAS_DEC_COMPLEXITY_LEVEL
IVAS_DEC_COMPLEXITY_LEVEL_THREE = 3
} IVAS_DEC_COMPLEXITY_LEVEL;
-#ifdef FIX_CREND_SIMPLIFY_CODE
typedef enum _IVAS_DEC_PCM_TYPE
{
IVAS_DEC_PCM_INT16,
IVAS_DEC_PCM_FLOAT,
IVAS_DEC_PCM_INVALID
} IVAS_DEC_PCM_TYPE;
-#endif
/* bitstream formats that can be consumed */
typedef enum _IVAS_DEC_BS_FORMAT
@@ -113,7 +111,9 @@ ivas_error IVAS_DEC_Configure(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
const UWord32 sampleRate, /* i : output sampling frequency */
const IVAS_AUDIO_CONFIG outputConfig, /* i : output configuration */
+#ifndef LIB_DEC_REVISION
const bool tsmEnabled, /* i : enable time scale modification */
+ #endif
const IVAS_RENDER_FRAMESIZE renderFramesize, /* i : rendering frame size */
const bool customLsOutputEnabled, /* i : enable custom loudspeaker setup handle */
const bool hrtfReaderEnabled, /* i : enable HRTF binary file input */
@@ -125,6 +125,7 @@ ivas_error IVAS_DEC_Configure(
const Word16 non_diegetic_pan_gain_fx, /* i : non diegetic panning gain */
const bool dpidEnabled, /* i : enable directivity pattern option */
const UWord16 acousticEnvironmentId, /* i : Acoustic environment ID */
+ const bool objEditEnabled, /* i : enable object editing */
const bool delayCompensationEnabled /* i : enable delay compensation */
);
@@ -143,7 +144,6 @@ ivas_error IVAS_DEC_FeedFrame_Serial(
Word16 bfi /* i : bad frame indicator flag */
);
-#ifdef FIX_CREND_SIMPLIFY_CODE
ivas_error IVAS_DEC_ReadFormat(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
IVAS_BIN_RENDERER_TYPE *binaural_renderer, /* o : binaural renderer type */
@@ -151,17 +151,18 @@ ivas_error IVAS_DEC_ReadFormat(
IVAS_AUDIO_CONFIG *hrtf_set_audio_cfg /* o : HRTF set audio config. */
);
-#ifdef FIX_HRTF_LOAD_API
ivas_error IVAS_DEC_GetSamplesDecoder(
- IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
- const int16_t isSplitRend, /* i : split rendering enabled flag */
- ISAR_SPLIT_REND_BITS_DATA *splitRendBits /* o : output split rendering bits */
+ IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
+ const Word16 isSplitRend, /* i : split rendering enabled flag */
+ ISAR_SPLIT_REND_BITS_DATA *splitRendBits /* o : output split rendering bits */
);
-#endif
-#endif
/*! r: decoder error code */
+#ifdef LIB_DEC_REVISION
+ivas_error IVAS_DEC_GetSamplesRenderer(
+#else
ivas_error IVAS_DEC_GetSamples(
+#endif
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
const Word16 nSamplesAsked, /* i : number of samples wanted by the caller */
Word16 *pcmBuf, /* i/o: buffer for decoded PCM output. The memory must already be allocated and be able to hold the expected number of output samples, based on frame size and number of output channels Q0 */
@@ -169,21 +170,19 @@ ivas_error IVAS_DEC_GetSamples(
bool *needNewFrame /* o : indication that the decoder needs a new frame */
);
-#ifdef OBJ_EDITING_API
ivas_error IVAS_DEC_GetEditableParameters(
- IVAS_DEC_HANDLE hIvasDec,
- IVAS_EDITABLE_PARAMETERS *hIvasEditableParameters
+ IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
+ IVAS_EDITABLE_PARAMETERS *hIvasEditableParameters /* o : object editing parameters handle */
);
ivas_error IVAS_DEC_SetEditableParameters(
- IVAS_DEC_HANDLE hIvasDec,
- IVAS_EDITABLE_PARAMETERS hIvasEditableParameters
+ IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
+ IVAS_EDITABLE_PARAMETERS hIvasEditableParameters /* i : object editing parameters handle */
);
ivas_error IVAS_DEC_PrepareRenderer(
- IVAS_DEC_HANDLE hIvasDec
+ IVAS_DEC_HANDLE hIvasDec /* i/o: IVAS decoder handle */
);
-#endif
ivas_error IVAS_DEC_GetSplitBinauralBitstream(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
@@ -212,14 +211,14 @@ ivas_error IVAS_DEC_GetCldfbSamples(
Word16 *nOutSamples /* o : number of samples per channel written to output buffer */
);
-int16_t IVAS_DEC_is_split_rendering_enabled(
+Word16 IVAS_DEC_is_split_rendering_enabled(
IVAS_DEC_HANDLE hIvasDec, /* i : IVAS decoder handle */
- int16_t *isSplitRend /* o : flag to indicate if split rendering is enabled */
+ Word16 *isSplitRend /* o : flag to indicate if split rendering is enabled */
);
-int16_t IVAS_DEC_is_split_rendering_coded_out(
+Word16 IVAS_DEC_is_split_rendering_coded_out(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
- int16_t *isSplitCoded /* o : flag to indicate if split rendering is enabled */
+ Word16 *isSplitCoded /* o : flag to indicate if split rendering is enabled */
);
/*! r: error code */
@@ -232,9 +231,9 @@ ivas_error IVAS_DEC_GetObjectMetadata(
/*! r: error code */
ivas_error IVAS_DEC_GetMasaMetadata(
- IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
- IVAS_MASA_DECODER_EXT_OUT_META_HANDLE *hMasaExtOutMeta, /* o : pointer to handle, which will be set to point to metadata from the most recently decoded frame */
- const UWord8 getFromJbmBuffer /* i : get metadata from a JBM buffer */
+ IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
+ IVAS_MASA_DECODER_EXT_OUT_META_HANDLE *hMasaExtOutMeta, /* o : pointer to handle, which will be set to point to metadata from the most recently decoded frame */
+ const UWord8 getFromJbmBuffer /* i : get metadata from a JBM buffer */
);
/*! r: error code */
@@ -287,34 +286,32 @@ ivas_error IVAS_DEC_VoIP_SetScale(
const Word16 scale /* i : TSM scale to set */
);
+#ifdef VARIABLE_SPEED_DECODING
+#ifdef LIB_DEC_REVISION
+ivas_error IVAS_DEC_EnableTsm(
+ IVAS_DEC_HANDLE hIvasDec /* i/o: IVAS decoder handle */
+);
+#endif
+
ivas_error IVAS_DEC_TSM_SetQuality(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
const Word16 quality /* i : target TSM quality Q14 */
);
+#endif
/*! r: error code */
ivas_error IVAS_DEC_VoIP_GetSamples(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
UWord16 nSamplesPerChannel, /* i : number of samples per channel requested to be written to output buffer */
Word16 *pcmBuf, /* i/o: buffer for decoded PCM output. The memory must already be allocated and be able to hold the expected number of output samples, based on frame size and number of output channels Q0 */
- const UWord32 systemTimestamp_ms, /* i : current system timestamp */
-#ifdef FIX_CREND_SIMPLIFY_CODE
#ifdef SUPPORT_JBM_TRACEFILE
JbmTraceFileWriterFn jbmWriterFn,
void* jbmWriter,
#endif
- bool *bitstreamReadDone, /* o : flag indicating that bitstream was read */
- UWord16 *nSamplesRendered /* o : number of samples rendered */
-#else
- #ifdef SUPPORT_JBM_TRACEFILE
- JbmTraceFileWriterFn jbmWriterFn,
- void* jbmWriter
-#endif
-#endif
-#ifdef OBJ_EDITING_API
- ,
- bool *parametersAvailableForEditing
-#endif
+ bool *bitstreamReadDone, /* o : flag indicating that bitstream was read */
+ UWord16 *nSamplesRendered, /* o : number of samples rendered */
+ bool *parametersAvailableForEditing, /* o : indicates whether objects editing is available */
+ const UWord32 systemTimestamp_ms /* i : current system timestamp */
);
ivas_error IVAS_DEC_Flush(
@@ -402,11 +399,7 @@ ivas_error IVAS_DEC_FeedCustomLsData(
);
/*! r: error code */
-#ifdef FIX_CREND_SIMPLIFY_CODE
ivas_error IVAS_DEC_GetHrtfTDrendHandle(
-#else
-ivas_error IVAS_DEC_GetHrtfHandle(
-#endif
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
IVAS_DEC_HRTF_TD_HANDLE **hHrtfTD /* o : TD rend. HRTF handle */
);
@@ -432,7 +425,6 @@ ivas_error IVAS_DEC_GetHrtfStatisticsHandle(
IVAS_DEC_HRTF_STATISTICS_HANDLE **hHrtfStatistics /* o : HRTF statistics handle */
);
-#ifdef FIX_CREND_SIMPLIFY_CODE
ivas_error IVAS_DEC_HRTF_binary_open(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
const IVAS_BIN_RENDERER_TYPE binaural_renderer /* i : binaural renderer type */
@@ -442,7 +434,6 @@ ivas_error IVAS_DEC_HRTF_binary_close(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
const IVAS_BIN_RENDERER_TYPE binaural_renderer_old /* i : previous binaural renderer type */
);
-#endif
/*! r: error code*/
ivas_error IVAS_DEC_GetRenderConfig(
@@ -474,12 +465,13 @@ ivas_error IVAS_DEC_HasDecodedFirstGoodFrame(
bool *hasDecodedFirstGoodFrame /* o : flag indicating if the decoder has decoded a good frame since it was configured */
);
+#ifndef LIB_DEC_REVISION
/*! r: error code */
ivas_error IVAS_DEC_GetPcmFrameSize(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
Word32 *pcmFrameSize /* o : total size of the PCM output frame. This takes into account the number of output channels Q0 */
);
-
+#endif
/*! r: true if decoder has no data in VoIP jitter buffer */
bool IVAS_DEC_VoIP_IsEmpty(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
diff --git a/lib_dec/lib_dec_fx.c b/lib_dec/lib_dec_fx.c
index dc58c5662c718a3451076bb26ff76264946e824d..b32a49e17802b37f45c8083e57b3153cb175832e 100644
--- a/lib_dec/lib_dec_fx.c
+++ b/lib_dec/lib_dec_fx.c
@@ -1,4 +1,4 @@
-/******************************************************************************************************
+/******************************************************************************************************
(C) 2022-2025 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
@@ -38,6 +38,7 @@
#include "ivas_prot_rend_fx.h"
#include "prot_fx.h"
#include "isar_prot.h"
+#include "ivas_rom_com.h"
#include "lib_isar_pre_rend.h"
#include "ivas_prot_fx.h"
#include "jbm_jb4sb.h"
@@ -47,7 +48,6 @@
#include
#include "wmc_auto.h"
-#define INV_1000_Q31 2147484 /*1/1000 IN Q31*/
/*---------------------------------------------------------------------*
* Local structs
@@ -55,7 +55,9 @@
struct IVAS_DEC_VOIP
{
+#ifndef LIB_DEC_REVISION
UWord16 nSamplesFrame; /* Total number of samples in a frame (includes number of channels) */
+#endif
JB4_HANDLE hJBM;
UWord16 lastDecodedWasActive;
JB4_DATAUNIT_HANDLE hCurrentDataUnit; /* Points to the currently processed data unit */
@@ -79,8 +81,10 @@ struct IVAS_DEC
bool isInitialized;
Word16 bitstreamformat; /* Bitstream format flag (G.192/MIME/VOIP_G192_RTP/VOIP_RTPDUMP) */
- bool Opt_VOIP; /* flag indicating VOIP mode with JBM */
- Word16 tsm_scale; /* scale for TSM operation */
+#ifdef DEBUGGING
+ bool Opt_VOIP; /* flag indicating VOIP mode with JBM */
+#endif
+ Word16 tsm_scale; /* scale for TSM operation */
Word16 tsm_max_scaling;
Word16 timeScalingDone; /* have we done already one TSM in a 20ms frame? */
Word16 tsm_quality; /*Q14*/
@@ -90,49 +94,51 @@ struct IVAS_DEC
bool hasBeenFedFrame;
bool updateOrientation;
UWord16 nSamplesAvailableNext;
+#ifndef LIB_DEC_REVISION
Word16 nSamplesRendered;
+#endif
Word16 nTransportChannelsOld;
Word16 amrwb_rfc4867_flag; /* MIME from rfc4867 is used */
Word16 sdp_hf_only; /* RTP payload format parameter: only Header-Full format without zero padding for size collision avoidance */
Word16 prev_ft_speech; /* RXDTX handler: previous frametype flag for G.192 format AMRWB SID_FIRST detection */
Word16 CNG; /* RXDTX handler: CNG=1, nonCNG=0 */
-#ifdef FIX_HRTF_LOAD
UWord16 nSamplesFlushed;
-#ifdef FIX_HRTF_LOAD_API
Word16 *flushbuffer;
-#else
- Word16 flushbuffer[20 * 960 / 4]; // temp. hack
-#endif
-#ifdef OBJ_EDITING_API
- bool hasEditableParameters;
- bool enableParameterEditing;
-#endif
bool hasBeenPreparedRendering;
-#endif
};
+
/*---------------------------------------------------------------------*
* Local function declarations
*---------------------------------------------------------------------*/
+#ifdef LIB_DEC_REVISION
+static void ivas_destroy_handle_VoIP_fx( IVAS_DEC_VOIP *hVoIP );
+#else
static void IVAS_DEC_Close_VoIP( IVAS_DEC_VOIP *hVoIP );
+#endif
#ifdef SUPPORT_JBM_TRACEFILE
static void store_JbmData( IVAS_DEC_VOIP *hVoIP, JB4_DATAUNIT_HANDLE dataUnit, const UWord32 systemTimestamp_ms, const UWord16 extBufferedSamples, const Word32 output_Fs );
#endif
+#ifdef LIB_DEC_REVISION
+static ivas_error evs_dec_main_fx( Decoder_Struct *st_ivas );
+#else
static ivas_error evs_dec_main_fx( Decoder_Struct *st_ivas, const Word16 nOutSamples, Word32 *floatBuf, Word16 *pcmBuf );
+#endif
static ivas_error input_format_API_to_internal( IVAS_DEC_INPUT_FORMAT input_format, Word16 *bitstream_format_internal, Word16 *sdp_hf_only, const bool is_voip_enabled );
static void init_decoder_config( DECODER_CONFIG_HANDLE hDecoderConfig );
+#ifdef LIB_DEC_REVISION
+static ivas_error ivas_dec_setup_all( IVAS_DEC_HANDLE hIvasDec, UWord8 *nTransportChannels, const Word16 isSplitRend, ISAR_SPLIT_REND_BITS_DATA *splitRendBits );
+static ivas_error apa_setup( IVAS_DEC_HANDLE hIvasDec, const bool isInitialized_voip, const UWord16 nTransportChannels );
+#else
static ivas_error IVAS_DEC_VoIP_reconfigure( IVAS_DEC_HANDLE hIvasDec, const UWord16 nTransportChannels, const UWord16 l_ts );
-#ifdef FIX_HRTF_LOAD
static ivas_error IVAS_DEC_Setup( IVAS_DEC_HANDLE hIvasDec, UWord16 *nTcBufferGranularity, UWord8 *nTransportChannels );
-#else
-static ivas_error IVAS_DEC_Setup( IVAS_DEC_HANDLE hIvasDec, UWord16 *nTcBufferGranularity, UWord8 *nTransportChannels, UWord8 *nOutChannels, UWord16 *nSamplesRendered, Word16 *data );
-#endif
static ivas_error IVAS_DEC_GetTcSamples( IVAS_DEC_HANDLE hIvasDec, Word32 *pcmBuf_fx, Word16 *nOutSamples );
static ivas_error IVAS_DEC_RendererFeedTcSamples( IVAS_DEC_HANDLE hIvasDec, const Word16 nSamplesForRendering, Word16 *nSamplesResidual, Word32 *pcmBuf );
static ivas_error IVAS_DEC_GetRenderedSamples( IVAS_DEC_HANDLE hIvasDec, const UWord16 nSamplesForRendering, UWord16 *nSamplesRendered, UWord16 *nSamplesAvailableNext, Word16 *pcmBuf );
static ivas_error IVAS_DEC_GetBufferedNumberOfSamples( IVAS_DEC_HANDLE hIvasDec, Word16 *nSamplesBuffered );
+#endif
static Word16 get_render_frame_size_ms( IVAS_RENDER_FRAMESIZE render_framesize );
static void update_voip_rendered20ms( IVAS_DEC_HANDLE hIvasDec, const Word16 nSamplesRendered );
static ivas_error isar_set_split_rend_setup( ISAR_DEC_SPLIT_REND_WRAPPER *hSplitBinRend, const ISAR_SPLIT_REND_CONFIG_DATA *hSplitBinConfig, const COMBINED_ORIENTATION_HANDLE hCombinedOrientationData, ISAR_SPLIT_REND_BITS_DATA *splitRendBits );
@@ -182,7 +188,9 @@ ivas_error IVAS_DEC_Open(
hIvasDec->needNewFrame = false;
hIvasDec->nTransportChannelsOld = 0;
hIvasDec->nSamplesAvailableNext = 0;
+#ifndef LIB_DEC_REVISION
hIvasDec->nSamplesRendered = 0;
+#endif
hIvasDec->nSamplesFrame = 0;
hIvasDec->hasBeenFedFrame = false;
hIvasDec->hasBeenFedFirstGoodFrame = false;
@@ -202,33 +210,27 @@ ivas_error IVAS_DEC_Open(
move16();
move16();
move16();
-#ifdef FIX_HRTF_LOAD
-#ifdef OBJ_EDITING_API
hIvasDec->flushbuffer = NULL;
-#else
- // hIvasDec->flushbuffer = NULL;
-#endif
hIvasDec->nSamplesFlushed = 0;
-#ifdef OBJ_EDITING_API
- hIvasDec->hasEditableParameters = false;
- hIvasDec->enableParameterEditing = false;
-#endif
+ move16();
hIvasDec->hasBeenPreparedRendering = false;
-#endif
+ move16();
hIvasDec->mode = mode;
move16();
hIvasDec->bitstreamformat = G192;
+ move16();
+#ifdef DEBUGGING
hIvasDec->Opt_VOIP = 0;
+ move16();
+#endif
hIvasDec->amrwb_rfc4867_flag = -1;
hIvasDec->prev_ft_speech = 1; /* RXDTX handler previous frametype flag for G.192 format AMRWB SID_FIRST detection */
hIvasDec->CNG = 0; /* RXDTX handler CNG = 1, no CNG = 0*/
move16();
move16();
move16();
- move16();
- move16();
/*-----------------------------------------------------------------*
* Initialize IVAS-codec decoder state
@@ -338,7 +340,7 @@ static ivas_error isar_set_split_rend_setup(
splitRendBits->lc3plus_highres = 0;
#ifndef TMP_FIX_SPLIT_REND
- if ( ( hSplitBinRend->hMultiBinCldfbData = (ISAR_DEC_SPLIT_REND_MULTI_BIN_CLDFB_DATA_HANDLE) malloc( sizeof( ISAR_DEC_SPLIT_REND_MULTI_BIN_CLDFB_DATA ) ) ) == NULL )
+ IF( ( hSplitBinRend->hMultiBinCldfbData = (ISAR_DEC_SPLIT_REND_MULTI_BIN_CLDFB_DATA_HANDLE) malloc( sizeof( ISAR_DEC_SPLIT_REND_MULTI_BIN_CLDFB_DATA ) ) ) == NULL )
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Cannot allocate memory for split rendering structure" );
}
@@ -346,7 +348,7 @@ static ivas_error isar_set_split_rend_setup(
ISAR_PRE_REND_GetMultiBinPoseData( hSplitBinConfig, &hSplitBinRend->splitrend.multiBinPoseData, ( hCombinedOrientationData != NULL ) ? hCombinedOrientationData->sr_pose_pred_axis : DEFAULT_AXIS );
- if ( hCombinedOrientationData != NULL )
+ IF( hCombinedOrientationData != NULL )
{
isar_set_split_rend_ht_setup_fx( &hSplitBinRend->splitrend, hCombinedOrientationData->Quaternions, hCombinedOrientationData->Rmat_fx );
}
@@ -379,6 +381,8 @@ static void init_decoder_config(
hDecoderConfig->Opt_ExternalOrientation = 0;
hDecoderConfig->Opt_dpid_on = 0;
hDecoderConfig->Opt_aeid_on = 0;
+ hDecoderConfig->Opt_ObjEdit_on = 0;
+ move16();
move16();
move16();
move16();
@@ -402,7 +406,7 @@ static void init_decoder_config(
/*---------------------------------------------------------------------*
* IVAS_DEC_Close( )
*
- *
+ * Deallocate IVAS decoder memory handles
*---------------------------------------------------------------------*/
void IVAS_DEC_Close(
@@ -418,7 +422,11 @@ void IVAS_DEC_Close(
IF( ( *phIvasDec )->hVoIP )
{
+#ifdef LIB_DEC_REVISION
+ ivas_destroy_handle_VoIP_fx( ( *phIvasDec )->hVoIP );
+#else
IVAS_DEC_Close_VoIP( ( *phIvasDec )->hVoIP );
+#endif
( *phIvasDec )->hVoIP = NULL;
}
@@ -437,12 +445,12 @@ void IVAS_DEC_Close(
{
free( ( *phIvasDec )->apaExecBuffer_fx );
}
-#ifdef OBJ_EDITING_API
+
IF( ( *phIvasDec )->flushbuffer != NULL )
{
free( ( *phIvasDec )->flushbuffer );
}
-#endif
+
free( *phIvasDec );
*phIvasDec = NULL;
phIvasDec = NULL;
@@ -485,19 +493,45 @@ static IVAS_DEC_BS_FORMAT mapIvasFormat(
return IVAS_DEC_BS_UNKOWN;
}
+#ifdef LIB_DEC_REVISION
+
+/*---------------------------------------------------------------------*
+ * create_flush_buffer()
+ *
+ * Create flush buffer - needed for binaural outputs with TSM or in VoIP mode
+ *---------------------------------------------------------------------*/
+
+static ivas_error create_flush_buffer_fx(
+ IVAS_DEC_HANDLE hIvasDec /* i/o: IVAS decoder handle */
+)
+{
+ hIvasDec->flushbuffer = (Word16 *) malloc( CPE_CHANNELS * hIvasDec->nSamplesFrame / IVAS_MAX_PARAM_SPATIAL_SUBFRAMES * sizeof( Word16 ) );
+ if ( hIvasDec->flushbuffer == NULL )
+ {
+ return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate JBM flush buffer" );
+ }
+
+ set16_fx( hIvasDec->flushbuffer, 0, CPE_CHANNELS * hIvasDec->nSamplesFrame / IVAS_MAX_PARAM_SPATIAL_SUBFRAMES );
+
+ return IVAS_ERR_OK;
+}
+
+#endif
/*---------------------------------------------------------------------*
* IVAS_DEC_Configure( )
*
* Decoder configuration
- * legacy code behavior: if no output format set, then it's EVS mono
+ * legacy behavior: if no output format set, then it's EVS mono
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_Configure(
- IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
- const UWord32 sampleRate, /* i : output sampling frequency */
- const IVAS_AUDIO_CONFIG outputConfig, /* i : output configuration */
- const bool tsmEnabled, /* i : enable time scale modification */
+ IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
+ const UWord32 sampleRate, /* i : output sampling frequency */
+ const IVAS_AUDIO_CONFIG outputConfig, /* i : output configuration */
+#ifndef LIB_DEC_REVISION
+ const bool tsmEnabled, /* i : enable time scale modification */
+#endif
const IVAS_RENDER_FRAMESIZE renderFramesize, /* i : rendering frame size */
const bool customLsOutputEnabled, /* i : enable custom loudspeaker setup handle */
const bool hrtfReaderEnabled, /* i : enable HRTF binary file input */
@@ -509,6 +543,7 @@ ivas_error IVAS_DEC_Configure(
const Word16 non_diegetic_pan_gain_fx, /* i : non diegetic panning gain */
const bool dpidEnabled, /* i : enable directivity pattern option */
const UWord16 acousticEnvironmentId, /* i : Acoustic environment ID */
+ const bool objEditEnabled, /* i : enable object editing */
const bool delayCompensationEnabled /* i : enable delay compensation */
)
{
@@ -567,7 +602,9 @@ ivas_error IVAS_DEC_Configure(
move16();
}
+#ifndef LIB_DEC_REVISION
hDecoderConfig->Opt_tsm = (Word16) tsmEnabled;
+#endif
hDecoderConfig->Opt_LsCustom = (Word16) customLsOutputEnabled;
hDecoderConfig->Opt_Headrotation = (Word16) enableHeadRotation;
hDecoderConfig->orientation_tracking = orientation_tracking;
@@ -586,6 +623,8 @@ ivas_error IVAS_DEC_Configure(
{
hDecoderConfig->Opt_aeid_on = FALSE;
}
+ hDecoderConfig->Opt_ObjEdit_on = (Word16) objEditEnabled;
+ move16();
move16();
move16();
move16();
@@ -635,6 +674,7 @@ ivas_error IVAS_DEC_Configure(
}
hIvasDec->nSamplesFrame = (UWord16) Mpy_32_16_1( hDecoderConfig->output_Fs, INV_FRAME_PER_SEC_Q15 );
+#ifndef LIB_DEC_REVISION
hIvasDec->nSamplesAvailableNext = 0;
hIvasDec->nSamplesRendered = 0;
hIvasDec->tsm_scale = 100;
@@ -646,7 +686,6 @@ ivas_error IVAS_DEC_Configure(
move16();
move16();
-#ifdef OBJ_EDITING_API
/* init flush buffer if necessary (only needed for binaural)*/
test();
test();
@@ -667,7 +706,7 @@ ivas_error IVAS_DEC_Configure(
/*---------------------------------------------------------------------*
* IVAS_DEC_EnableSplitRendering( )
*
- * Intitialize Split rendering
+ * Update IVAS decoder config. if Split rendering is enabled
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_EnableSplitRendering(
@@ -697,7 +736,7 @@ ivas_error IVAS_DEC_EnableSplitRendering(
/*---------------------------------------------------------------------*
* get_render_framesize_ms( )
*
- * Get the 5ms flag
+ * Get render framesize in ms
*---------------------------------------------------------------------*/
static Word16 get_render_frame_size_ms(
@@ -723,7 +762,7 @@ static Word16 get_render_frame_size_ms(
/*---------------------------------------------------------------------*
* IVAS_DEC_SetRenderFramesize( )
*
- * Get the 5ms flag
+ * Set render framesize
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_SetRenderFramesize(
@@ -753,10 +792,11 @@ ivas_error IVAS_DEC_SetRenderFramesize(
return IVAS_ERR_OK;
}
+
/*---------------------------------------------------------------------*
* IVAS_DEC_GetGetRenderFramesize( )
*
- * Get the 5ms flag
+ * Get render framesize
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_GetRenderFramesize(
@@ -885,7 +925,7 @@ ivas_error IVAS_DEC_GetReferencesUpdateFrequency(
/*---------------------------------------------------------------------*
* IVAS_DEC_GetGetNumOrientationSubframes( )
*
- * Get the number of subframes for head/ecernal orientation per render frame
+ * Get the number of subframes for head/external orientation per render frame
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_GetNumOrientationSubframes(
@@ -932,10 +972,13 @@ ivas_error IVAS_DEC_EnableVoIP(
hDecoderConfig = hIvasDec->st_ivas->hDecoderConfig;
+#ifdef DEBUGGING
hIvasDec->Opt_VOIP = 1;
+#endif
hDecoderConfig->Opt_tsm = 1;
move16();
move16();
+
IF( NE_16( (Word16) hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
{
hDecoderConfig->nchan_out = audioCfg2channels( hDecoderConfig->output_config );
@@ -955,8 +998,10 @@ ivas_error IVAS_DEC_EnableVoIP(
hIvasDec->hVoIP->lastDecodedWasActive = 0;
move16();
hIvasDec->hVoIP->hCurrentDataUnit = NULL;
+#ifndef LIB_DEC_REVISION
hIvasDec->hVoIP->nSamplesFrame = (UWord16) Mpy_32_16_1( hDecoderConfig->output_Fs, INV_FRAME_PER_SEC_Q15 );
move16();
+#endif
hIvasDec->hVoIP->nSamplesRendered20ms = 0;
move16();
@@ -988,7 +1033,14 @@ ivas_error IVAS_DEC_EnableVoIP(
}
#endif
-#ifdef OBJ_EDITING_API
+#ifdef LIB_DEC_REVISION
+ /* init flush buffer (needed for binaural outputs) */
+ IF( ( error = create_flush_buffer_fx( hIvasDec ) ) != IVAS_ERR_OK )
+ {
+ fprintf( stderr, "\nError in create_flush_buffer , code: %d\n", error );
+ return error;
+ }
+#else
IF( hIvasDec->flushbuffer == NULL && ( EQ_32( hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_32( hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) || EQ_32( hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) ) )
{
hIvasDec->flushbuffer = (void *) malloc( CPE_CHANNELS * hIvasDec->nSamplesFrame / IVAS_MAX_PARAM_SPATIAL_SUBFRAMES * sizeof( Word16 ) );
@@ -1015,12 +1067,25 @@ ivas_error IVAS_DEC_FeedFrame_Serial(
{
ivas_error error;
+#ifdef FIX_1388_MSAN_ivas_init_decoder
+ test();
+ IF( hIvasDec == NULL || hIvasDec->st_ivas == NULL )
+ {
+ return IVAS_ERR_UNEXPECTED_NULL_POINTER;
+ }
+#endif
+
IF( !hIvasDec->isInitialized )
{
/* Once first frame is fed, finish initialization in EVS Mono.
* In IVAS mode, initialization is done in ivas_dec(). */
IF( EQ_16( hIvasDec->mode, IVAS_DEC_MODE_EVS ) )
{
+#ifdef FIX_1388_MSAN_ivas_init_decoder
+ hIvasDec->st_ivas->hDecoderConfig->ivas_total_brate = ACELP_8k00;
+ move32();
+
+#endif
IF( NE_32( ( error = ivas_init_decoder_fx( hIvasDec->st_ivas ) ), IVAS_ERR_OK ) )
{
return error;
@@ -1046,11 +1111,13 @@ ivas_error IVAS_DEC_FeedFrame_Serial(
hIvasDec->st_ivas->hDecoderConfig->ivas_total_brate = imult3216( hIvasDec->hVoIP->hCurrentDataUnit->dataSize, FRAMES_PER_SEC );
move32();
}
+#ifndef FIX_1388_MSAN_ivas_init_decoder
ELSE
{
hIvasDec->st_ivas->hDecoderConfig->ivas_total_brate = ACELP_8k00;
move32();
}
+#endif
hIvasDec->isInitialized = true;
move16();
}
@@ -1112,9 +1179,13 @@ ivas_error IVAS_DEC_FeedFrame_Serial(
hIvasDec->needNewFrame = false;
hIvasDec->hasBeenFedFrame = true;
+#ifndef LIB_DEC_REVISION
hIvasDec->nSamplesRendered = 0;
+#endif
hIvasDec->nSamplesAvailableNext = hIvasDec->nSamplesFrame;
+#ifndef LIB_DEC_REVISION
move16();
+#endif
move16();
move16();
move16();
@@ -1124,13 +1195,16 @@ ivas_error IVAS_DEC_FeedFrame_Serial(
/*---------------------------------------------------------------------*
- * IVAS_DEC_GetSamples( )
+ * IVAS_DEC_GetSamplesRenderer( )
*
- * Main function to decode to PCM data
+ * Main function to render the decoded data to output data
*---------------------------------------------------------------------*/
-
+#ifdef LIB_DEC_REVISION
+ivas_error IVAS_DEC_GetSamplesRenderer(
+#else
ivas_error IVAS_DEC_GetSamples(
+#endif
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
const Word16 nSamplesAsked, /* i : number of samples wanted by the caller */
Word16 *pcmBuf, /* i/o: buffer for decoded PCM output. The memory must already be allocated and be able to hold the expected number of output samples, based on frame size and number of output channels Q0 */
@@ -1139,26 +1213,16 @@ ivas_error IVAS_DEC_GetSamples(
)
{
ivas_error error;
-#ifdef OBJ_EDITING_API
+#ifndef LIB_DEC_REVISION
Word16 nSamplesToRender;
+#endif
UWord16 nSamplesRendered, nSamplesRendered_loop;
UWord16 nOutChannels;
-#else
- Word16 nOutSamplesElse, nSamplesToRender;
- UWord16 nSamplesRendered, nSamplesRendered_loop, l_ts, nTimeScalerOutSamples;
- UWord8 nTransportChannels, nOutChannels;
-#endif
+ Decoder_Struct *st_ivas;
nSamplesRendered = 0;
nOutChannels = 0;
nSamplesRendered_loop = 0;
-#ifndef OBJ_EDITING_API
- l_ts = 0;
- nTransportChannels = 0;
- move16();
- move16();
-#endif
-
move16();
move16();
move16();
@@ -1168,13 +1232,14 @@ ivas_error IVAS_DEC_GetSamples(
{
return IVAS_ERR_UNEXPECTED_NULL_POINTER;
}
-#ifdef OBJ_EDITING_API
+
/* the rendering needs to be prepared at this point */
- if ( hIvasDec->hasBeenPreparedRendering == false )
+ IF( hIvasDec->hasBeenPreparedRendering == false )
{
return IVAS_ERR_UNKNOWN;
}
-#endif
+
+ st_ivas = hIvasDec->st_ivas;
IF( hIvasDec->updateOrientation )
{
@@ -1182,7 +1247,7 @@ ivas_error IVAS_DEC_GetSamples(
* Combine orientations
*----------------------------------------------------------------*/
- IF( NE_32( ( error = combine_external_and_head_orientations_dec( hIvasDec->st_ivas->hHeadTrackData, hIvasDec->st_ivas->hExtOrientationData, hIvasDec->st_ivas->hCombinedOrientationData ) ), IVAS_ERR_OK ) )
+ IF( NE_32( ( error = combine_external_and_head_orientations_dec( st_ivas->hHeadTrackData, st_ivas->hExtOrientationData, st_ivas->hCombinedOrientationData ) ), IVAS_ERR_OK ) )
{
return error;
}
@@ -1191,11 +1256,11 @@ ivas_error IVAS_DEC_GetSamples(
* Binaural split rendering setup
*----------------------------------------------------------------*/
- IF( EQ_32( hIvasDec->st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_32( hIvasDec->st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
+ IF( EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
{
- IF( hIvasDec->st_ivas->hCombinedOrientationData != NULL )
+ IF( st_ivas->hCombinedOrientationData != NULL )
{
- isar_set_split_rend_ht_setup_fx( &hIvasDec->st_ivas->hSplitBinRend->splitrend, hIvasDec->st_ivas->hCombinedOrientationData->Quaternions, hIvasDec->st_ivas->hCombinedOrientationData->Rmat_fx );
+ isar_set_split_rend_ht_setup_fx( &st_ivas->hSplitBinRend->splitrend, st_ivas->hCombinedOrientationData->Quaternions, st_ivas->hCombinedOrientationData->Rmat_fx );
}
}
@@ -1218,11 +1283,11 @@ ivas_error IVAS_DEC_GetSamples(
test();
/* check if we are still at the beginning with bad frames, put out zeroes, keep track of subframes */
- IF( !hIvasDec->isInitialized && hIvasDec->st_ivas->bfi )
+ IF( !hIvasDec->isInitialized && st_ivas->bfi )
{
hIvasDec->hasBeenFedFrame = false;
move16();
- set16_fx( pcmBuf, 0, imult1616( hIvasDec->st_ivas->hDecoderConfig->nchan_out, nSamplesAsked ) );
+ set16_fx( pcmBuf, 0, imult1616( st_ivas->hDecoderConfig->nchan_out, nSamplesAsked ) );
#ifdef NONBE_1293_CRASH_FIRST_FRAME_LOST
nSamplesRendered = nSamplesAsked;
move16();
@@ -1246,132 +1311,35 @@ ivas_error IVAS_DEC_GetSamples(
}
ELSE
{
-#ifndef OBJ_EDITING_API
- /* check if we need to run the setup function */
- test();
- IF( !hIvasDec->isInitialized || hIvasDec->hasBeenFedFrame )
- {
- /* setup */
-#ifdef FIX_HRTF_LOAD
- IF( NE_32( ( error = IVAS_DEC_Setup( hIvasDec, &l_ts, &nTransportChannels ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = IVAS_DEC_Setup( hIvasDec, &l_ts, &nTransportChannels, &nOutChannels, &nSamplesRendered_loop, pcmBuf + imult3216( nSamplesRendered, nOutChannels ) ) ), IVAS_ERR_OK ) )
-#endif
- {
- return error;
- }
- }
-#endif
+#ifndef LIB_DEC_REVISION
{
-#ifndef OBJ_EDITING_API
- /* check if we need to run the setup function, tc decoding and feeding the renderer */
- test();
- IF( !hIvasDec->isInitialized || hIvasDec->hasBeenFedFrame )
- {
- Word16 nResidualSamples, nSamplesTcsScaled;
- nSamplesRendered = add( nSamplesRendered, nSamplesRendered_loop );
-
- test();
- IF( hIvasDec->st_ivas->hDecoderConfig->Opt_tsm && NE_16( (Word16) nTransportChannels, hIvasDec->nTransportChannelsOld ) )
- {
- IF( NE_32( ( error = IVAS_DEC_VoIP_reconfigure( hIvasDec, nTransportChannels, l_ts ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
- }
-
- /* IVAS decoder */
- IF( NE_32( ( error = IVAS_DEC_GetTcSamples( hIvasDec, hIvasDec->apaExecBuffer_fx, &nOutSamplesElse ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
-
- /* JBM */
- IF( hIvasDec->st_ivas->hDecoderConfig->Opt_tsm )
- {
- IF( apa_set_scale_fx( hIvasDec->hTimeScaler, hIvasDec->tsm_scale ) != 0 )
- {
- return IVAS_ERR_UNKNOWN;
- }
-
- // tmp apaExecBuffer
- IF( EQ_16( (Word16) hIvasDec->mode, IVAS_DEC_MODE_EVS ) )
- {
- Word16 tmp_apaExecBuffer[APA_BUF];
- FOR( Word32 i = 0; i < APA_BUF_PER_CHANNEL * nTransportChannels; ++i )
- {
- tmp_apaExecBuffer[i] = extract_l( L_shr( hIvasDec->apaExecBuffer_fx[i], Q11 ) ); // Q0
- }
- IF( apa_exec_fx( hIvasDec->hTimeScaler, tmp_apaExecBuffer, (UWord16) imult3216( hIvasDec->nSamplesFrame, nTransportChannels ), (UWord16) hIvasDec->tsm_max_scaling, tmp_apaExecBuffer, &nTimeScalerOutSamples ) != 0 )
- {
- return IVAS_ERR_UNKNOWN;
- }
- FOR( Word32 i = 0; i < APA_BUF_PER_CHANNEL * nTransportChannels; ++i )
- {
- hIvasDec->apaExecBuffer_fx[i] = L_shl( tmp_apaExecBuffer[i], Q11 ); // Q11
- }
- }
- ELSE
- {
- IF( apa_exec_ivas_fx( hIvasDec->hTimeScaler, hIvasDec->apaExecBuffer_fx, (UWord16) imult3216( hIvasDec->nSamplesFrame, nTransportChannels ), (UWord16) hIvasDec->tsm_max_scaling, hIvasDec->apaExecBuffer_fx, &nTimeScalerOutSamples ) != 0 )
- {
- return IVAS_ERR_UNKNOWN;
- }
- }
- assert( LE_32( (Word32) nTimeScalerOutSamples, APA_BUF ) );
- nSamplesTcsScaled = idiv1616U( extract_l( nTimeScalerOutSamples ), nTransportChannels );
- hIvasDec->timeScalingDone = 1;
- move16();
- }
- ELSE
- {
- nSamplesTcsScaled = hIvasDec->nSamplesFrame;
- move16();
- }
-#ifdef DEBUG_MODE_JBM
- dbgwrite( &nTimeScalerOutSamples, sizeof( uint16_t ), 1, 1, "./res/JBM_nTimeScaleOutSamples.dat" );
-#endif
-
- /* Feed decoded transport channels samples to the renderer */
- IF( NE_32( ( error = IVAS_DEC_RendererFeedTcSamples( hIvasDec, nSamplesTcsScaled, &nResidualSamples, hIvasDec->apaExecBuffer_fx ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
-#ifdef DEBUG_MODE_JBM
- dbgwrite( &nResidualSamples, sizeof( int16_t ), 1, 1, "./res/JBM_nResidualSamples.dat" );
#endif
-
-
- IF( hIvasDec->st_ivas->hDecoderConfig->Opt_tsm )
- {
- /* feed residual samples to TSM for the next call */
- IF( apa_set_renderer_residual_samples( hIvasDec->hTimeScaler, (UWord16) nResidualSamples ) != 0 )
- {
- return IVAS_ERR_UNKNOWN;
- }
- }
- hIvasDec->hasBeenFedFrame = false;
- move16();
- }
-#else
- nOutChannels = (UWord8) hIvasDec->st_ivas->hDecoderConfig->nchan_out;
+ nOutChannels = (UWord8) st_ivas->hDecoderConfig->nchan_out;
hIvasDec->hasBeenFedFrame = false;
+
/* check for possible flushed samples from a rate switch */
IF( GE_16( hIvasDec->nSamplesFlushed, 0 ) )
{
/* note: offset (rendered samples) is always 0 */
Copy( hIvasDec->flushbuffer, pcmBuf, imult1616( hIvasDec->nSamplesFlushed, nOutChannels ) );
- nSamplesRendered = add( nSamplesRendered, hIvasDec->nSamplesFlushed );
+#ifdef LIB_DEC_REVISION
+ nSamplesRendered = hIvasDec->nSamplesFlushed;
+#else
+ nSamplesRendered = add( nSamplesRendered, hIvasDec->nSamplesFlushed );
+#endif
hIvasDec->nSamplesFlushed = 0;
move16();
move16();
}
-#endif
/* render IVAS frames directly to the output buffer */
- nSamplesToRender = sub( nSamplesAsked, nSamplesRendered );
- IF( NE_32( ( error = IVAS_DEC_GetRenderedSamples( hIvasDec, nSamplesToRender, &nSamplesRendered_loop, &hIvasDec->nSamplesAvailableNext, pcmBuf + imult3216( nSamplesRendered, nOutChannels ) ) ), IVAS_ERR_OK ) )
+#ifdef LIB_DEC_REVISION
+ IF( ( error = ivas_jbm_dec_render_fx( st_ivas, sub( nSamplesAsked, nSamplesRendered ), &nSamplesRendered_loop, &hIvasDec->nSamplesAvailableNext, pcmBuf + imult3216( nSamplesRendered, nOutChannels ) ) ) != IVAS_ERR_OK )
+#else
+ nSamplesToRender = sub( nSamplesAsked, nSamplesRendered );
+ IF( NE_32( ( error = IVAS_DEC_GetRenderedSamples( hIvasDec, nSamplesToRender, &nSamplesRendered_loop, &hIvasDec->nSamplesAvailableNext, pcmBuf + imult3216( nSamplesRendered, nOutChannels ) ) ), IVAS_ERR_OK ) )
+#endif
{
return error;
}
@@ -1392,7 +1360,9 @@ ivas_error IVAS_DEC_GetSamples(
move16();
}
#endif
+#ifndef LIB_DEC_REVISION
}
+#endif
}
#ifdef NONBE_1293_CRASH_FIRST_FRAME_LOST
@@ -1420,7 +1390,7 @@ ivas_error IVAS_DEC_GetSamples(
/*---------------------------------------------------------------------*
* IVAS_DEC_GetSplitBinauralBitstream( )
*
- *
+ * Get split-rendering bitstream
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_GetSplitBinauralBitstream(
@@ -1463,13 +1433,6 @@ ivas_error IVAS_DEC_GetSplitBinauralBitstream(
*needNewFrame = false;
hSplitBinRend = st_ivas->hSplitBinRend;
-#ifndef OBJ_EDITING_API
- IF( ( error = isar_set_split_rend_setup( hSplitBinRend, &st_ivas->hRenderConfig->split_rend_config, st_ivas->hCombinedOrientationData, splitRendBits ) ) != IVAS_ERR_OK )
- {
- return error;
- }
-#endif
-
FOR( i = 0; i < MAX_HEAD_ROT_POSES * BINAURAL_CHANNELS; i++ )
{
FOR( j = 0; j < CLDFB_NO_COL_MAX; j++ )
@@ -1496,18 +1459,16 @@ ivas_error IVAS_DEC_GetSplitBinauralBitstream(
numPoses = hSplitBinRend->splitrend.multiBinPoseData.num_poses;
move16();
-#ifdef OBJ_EDITING_API
/* init flush buffer for rate switch if not already initizalized */
IF( hIvasDec->flushbuffer == NULL )
{
hIvasDec->flushbuffer = (void *) malloc( numPoses * BINAURAL_CHANNELS * hIvasDec->nSamplesFrame / IVAS_MAX_PARAM_SPATIAL_SUBFRAMES * sizeof( float ) );
set16_fx( (Word16 *) hIvasDec->flushbuffer, 0, numPoses * BINAURAL_CHANNELS * hIvasDec->nSamplesFrame / IVAS_MAX_PARAM_SPATIAL_SUBFRAMES );
}
-#endif
IF( NE_32( st_ivas->hDecoderConfig->render_framesize, IVAS_RENDER_FRAMESIZE_20MS ) &&
- ( EQ_32( hIvasDec->st_ivas->hRenderConfig->split_rend_config.poseCorrectionMode, ISAR_SPLIT_REND_POSE_CORRECTION_MODE_NONE ) ||
- EQ_16( hIvasDec->st_ivas->hRenderConfig->split_rend_config.dof, 0 ) ) )
+ ( EQ_32( st_ivas->hRenderConfig->split_rend_config.poseCorrectionMode, ISAR_SPLIT_REND_POSE_CORRECTION_MODE_NONE ) ||
+ EQ_16( st_ivas->hRenderConfig->split_rend_config.dof, 0 ) ) )
{
numSamplesPerChannelToDecode = (Word16) ( output_Fs / FRAMES_PER_SEC ); // TODO remove division
numSamplesPerChannelToDecode = (Word16) ( numSamplesPerChannelToDecode / MAX_PARAM_SPATIAL_SUBFRAMES ); // TODO remove division
@@ -1541,7 +1502,11 @@ ivas_error IVAS_DEC_GetSplitBinauralBitstream(
}
/* Decode and render */
+#ifdef LIB_DEC_REVISION
+ IF( ( error = IVAS_DEC_GetSamplesRenderer( hIvasDec, numSamplesPerChannelToDecode, pcmBuf_out, nOutSamples, needNewFrame ) ) != IVAS_ERR_OK )
+#else
IF( ( error = IVAS_DEC_GetSamples( hIvasDec, numSamplesPerChannelToDecode, pcmBuf_out, nOutSamples, needNewFrame ) ) != IVAS_ERR_OK )
+#endif
{
return error;
}
@@ -1618,18 +1583,18 @@ ivas_error IVAS_DEC_GetSplitBinauralBitstream(
Q_out[0] = 31;
Word16 num_poses = hSplitBinRend->splitrend.multiBinPoseData.num_poses;
- for ( i = 0; i < i_mult( BINAURAL_CHANNELS, numPoses ); i++ )
+ FOR( i = 0; i < i_mult( BINAURAL_CHANNELS, numPoses ); i++ )
{
- for ( j = 0; j < CLDFB_NO_COL_MAX; j++ )
+ FOR( j = 0; j < CLDFB_NO_COL_MAX; j++ )
{
q1 = s_min( q1, L_norm_arr( Cldfb_RealBuffer_Binaural[i][j], CLDFB_NO_CHANNELS_MAX ) );
q2 = s_min( q2, L_norm_arr( Cldfb_ImagBuffer_Binaural[i][j], CLDFB_NO_CHANNELS_MAX ) );
}
}
Q_buff = s_min( q1, q2 );
- for ( i = 0; i < i_mult( BINAURAL_CHANNELS, numPoses ); i++ )
+ FOR( i = 0; i < i_mult( BINAURAL_CHANNELS, numPoses ); i++ )
{
- for ( j = 0; j < CLDFB_NO_COL_MAX; j++ )
+ FOR( j = 0; j < CLDFB_NO_COL_MAX; j++ )
{
scale_sig32( Cldfb_RealBuffer_Binaural[i][j], CLDFB_NO_CHANNELS_MAX, Q_buff );
scale_sig32( Cldfb_ImagBuffer_Binaural[i][j], CLDFB_NO_CHANNELS_MAX, Q_buff );
@@ -1689,7 +1654,7 @@ ivas_error IVAS_DEC_GetSplitBinauralBitstream(
ivas_limiter_dec_fx( st_ivas->hLimiter, pOutput, st_ivas->hDecoderConfig->nchan_out, numSamplesPerChannelToDecode, st_ivas->BER_detect, Q11 );
}
- ivas_syn_output_fx( pOutput, Q11, numSamplesPerChannelToDecode, st_ivas->hDecoderConfig->nchan_out, (int16_t *) pcmBuf_out );
+ ivas_syn_output_fx( pOutput, Q11, numSamplesPerChannelToDecode, st_ivas->hDecoderConfig->nchan_out, (Word16 *) pcmBuf_out );
}
#ifndef TMP_FIX_SPLIT_REND
@@ -1700,6 +1665,20 @@ ivas_error IVAS_DEC_GetSplitBinauralBitstream(
}
+#ifdef LIB_DEC_REVISION
+/*---------------------------------------------------------------------*
+ * ivas_dec_setup_all()
+ *
+ * Set-up all decoder parts: IVAS decoder, ISAR
+ *---------------------------------------------------------------------*/
+
+static ivas_error ivas_dec_setup_all(
+ IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
+ UWord8 *nTransportChannels, /* o : number of decoded transport PCM channels */
+ const Word16 isSplitRend, /* i : split rendering enabled flag */
+ ISAR_SPLIT_REND_BITS_DATA *splitRendBits /* o : output split rendering bits */
+)
+#else
/*---------------------------------------------------------------------*
* IVAS_DEC_Setup( )
*
@@ -1710,39 +1689,21 @@ static ivas_error IVAS_DEC_Setup(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
UWord16 *nTcBufferGranularity, /* o : granularity of the TC Buffer */
UWord8 *nTransportChannels /* o : number of decoded transport PCM channels */
-#ifndef FIX_HRTF_LOAD
- ,
- UWord8 *nOutChannels, /* o : number of decoded out channels (PCM or CLDFB) */
- UWord16 *nSamplesRendered, /* o : number of samples flushed from the last frame */
- Word16 *data /* o : output synthesis signal Q0 */
-#endif
)
+#endif
{
ivas_error error;
-#ifndef FIX_HRTF_LOAD
- *nSamplesRendered = 0;
- move16();
-#endif
IF( EQ_16( (Word16) hIvasDec->mode, IVAS_DEC_MODE_EVS ) )
{
IF( EQ_16( (Word16) hIvasDec->st_ivas->renderer_type, RENDERER_NON_DIEGETIC_DOWNMIX ) )
{
*nTransportChannels = MAX_OUTPUT_CHANNELS_IN_DIEGETIC_PAN;
-#ifndef FIX_HRTF_LOAD
- *nOutChannels = MAX_OUTPUT_CHANNELS_IN_DIEGETIC_PAN;
-#endif
}
ELSE
{
*nTransportChannels = 1;
-#ifndef FIX_HRTF_LOAD
- *nOutChannels = 1;
-#endif
}
-#ifndef FIX_HRTF_LOAD
- move16();
-#endif
move16();
}
ELSE
@@ -1751,6 +1712,17 @@ static ivas_error IVAS_DEC_Setup(
st_ivas = hIvasDec->st_ivas;
+#ifdef LIB_DEC_REVISION
+ /* Setup IVAS split rendering */
+ IF( isSplitRend )
+ {
+ IF( ( error = isar_set_split_rend_setup( st_ivas->hSplitBinRend, &st_ivas->hRenderConfig->split_rend_config, st_ivas->hCombinedOrientationData, splitRendBits ) ) != IVAS_ERR_OK )
+ {
+ return error;
+ }
+ }
+
+#endif
/*----------------------------------------------------------------*
* IVAS decoder setup
* - read IVAS format signaling
@@ -1759,29 +1731,21 @@ static ivas_error IVAS_DEC_Setup(
* - reconfigure the decoder when the number of TC or IVAS total bitrate change
*----------------------------------------------------------------*/
- IF( st_ivas->bfi == 0 )
+ IF( EQ_16( st_ivas->bfi, 0 ) )
{
-#ifdef FIX_HRTF_LOAD
+ error = IVAS_ERR_OK; // this is just to help the clang-formatting keep alignments
IF( ( error = ivas_dec_setup( st_ivas ) ) != IVAS_ERR_OK )
-#else
- IF( ( error = ivas_dec_setup( st_ivas, nSamplesRendered, data ) ) != IVAS_ERR_OK )
-#endif
{
return error;
}
-#ifdef DEBUGGING
- int16_t a = 0; // this is just to help the clang-formatting keep alignments correct
-#endif
}
*nTransportChannels = (UWord8) st_ivas->hTcBuffer->nchan_transport_jbm;
+#ifndef LIB_DEC_REVISION
*nTcBufferGranularity = (UWord16) st_ivas->hTcBuffer->n_samples_granularity;
-#ifndef FIX_HRTF_LOAD
- *nOutChannels = (UWord8) st_ivas->hDecoderConfig->nchan_out;
move16();
#endif
move16();
- move16();
/*-----------------------------------------------------------------*
* ISAR:
@@ -1790,7 +1754,11 @@ static ivas_error IVAS_DEC_Setup(
*-----------------------------------------------------------------*/
test();
+#ifdef LIB_DEC_REVISION
+ IF( st_ivas->ini_frame == 0 && isSplitRend )
+#else
IF( st_ivas->ini_frame == 0 && ( is_split_rendering_enabled( st_ivas->hDecoderConfig, st_ivas->hRenderConfig ) ) )
+#endif
{
IF( ( error = ivas_dec_init_split_rend( st_ivas ) ) != IVAS_ERR_OK )
{
@@ -1811,7 +1779,7 @@ static ivas_error IVAS_DEC_Setup(
return IVAS_ERR_OK;
}
-
+#ifndef LIB_DEC_REVISION
/*---------------------------------------------------------------------*
* IVAS_DEC_GetTcSamples( )
*
@@ -1840,7 +1808,12 @@ static ivas_error IVAS_DEC_GetTcSamples(
IF( EQ_16( (Word16) hIvasDec->mode, IVAS_DEC_MODE_EVS ) )
{
+#ifdef LIB_DEC_REVISION
+ pcmBuf_fx[0] = 0; // TODO !!!
+ IF( NE_32( ( error = evs_dec_main_fx( st_ivas ) ), IVAS_ERR_OK ) )
+#else
IF( NE_32( ( error = evs_dec_main_fx( st_ivas, *nOutSamples, pcmBuf_fx, NULL ) ), IVAS_ERR_OK ) )
+#endif
{
return error;
}
@@ -1893,7 +1866,11 @@ static ivas_error IVAS_DEC_GetTcSamples(
}
/* Function call: ivas_jbm_dec_tc function */
+#ifdef LIB_DEC_REVISION
+ IF( NE_32( ( error = ivas_jbm_dec_tc_fx( st_ivas ) ), IVAS_ERR_OK ) )
+#else
IF( NE_32( ( error = ivas_jbm_dec_tc_fx( st_ivas, pcmBuf_fx ) ), IVAS_ERR_OK ) )
+#endif
{
return error;
}
@@ -1934,6 +1911,7 @@ static ivas_error IVAS_DEC_GetTcSamples(
}
}
}
+
if ( hIvasDec->hasBeenFedFirstGoodFrame )
{
hIvasDec->hasDecodedFirstGoodFrame = true;
@@ -1999,7 +1977,6 @@ static ivas_error IVAS_DEC_GetRenderedSamples(
st_ivas = hIvasDec->st_ivas;
-#ifdef FIX_HRTF_LOAD
// temp code to make HRTF changes working in the old API structure
UWord16 nSamplesRendered_loop = 0;
Word16 nOutChannels = st_ivas->hDecoderConfig->nchan_out;
@@ -2022,15 +1999,10 @@ static ivas_error IVAS_DEC_GetRenderedSamples(
error = ivas_jbm_dec_render_fx( st_ivas, nSamplesForRendering - *nSamplesRendered, &nSamplesRendered_loop, nSamplesAvailableNext, pcmBuf + ( *nSamplesRendered * nOutChannels ) );
*nSamplesRendered = add( *nSamplesRendered, nSamplesRendered_loop );
-#else
- /* run the main IVAS decoding routine */
- error = ivas_jbm_dec_render_fx( st_ivas, nSamplesForRendering, nSamplesRendered, nSamplesAvailableNext, pcmBuf );
-#endif
return error;
}
-
/*---------------------------------------------------------------------*
* IVAS_DEC_GetBufferedNumberOfSamples( )
*
@@ -2061,7 +2033,7 @@ static ivas_error IVAS_DEC_GetBufferedNumberOfSamples(
return IVAS_ERR_OK;
}
-
+#endif
/*---------------------------------------------------------------------*
* IVAS_DEC_GetNumObjects( )
@@ -2154,9 +2126,9 @@ ivas_error IVAS_DEC_GetFormat(
/*---------------------------------------------------------------------*
- * getInputBufferSize()
- *
+ * getOutputBufferSize()
*
+ * Get size of output buffer in samples
*---------------------------------------------------------------------*/
static Word16 getOutputBufferSize(
@@ -2191,7 +2163,7 @@ static Word16 getOutputBufferSize(
/*---------------------------------------------------------------------*
* IVAS_DEC_GetOutputBufferSize()
*
- *
+ * Returns size of output buffer in samples
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_GetOutputBufferSize(
@@ -2256,6 +2228,7 @@ ivas_error IVAS_DEC_GetNumOutputChannels(
*
* Get metadata of one object decoded in the most recent frame
*---------------------------------------------------------------------*/
+
ivas_error IVAS_DEC_GetObjectMetadata(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
IVAS_ISM_METADATA *metadata, /* o : struct where metadata decoded in most recently decoded frame will be written */
@@ -2278,7 +2251,7 @@ ivas_error IVAS_DEC_GetObjectMetadata(
st_ivas = hIvasDec->st_ivas;
- IF( hIvasDec->st_ivas->hMasa != NULL )
+ IF( st_ivas->hMasa != NULL )
{
IF( EQ_32( hIvasDec->st_ivas->hMasa->config.input_ivas_format, MASA_ISM_FORMAT ) )
{
@@ -2290,10 +2263,10 @@ ivas_error IVAS_DEC_GetObjectMetadata(
test();
test();
test();
- if ( NE_32( st_ivas->ivas_format, ISM_FORMAT ) &&
- NE_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) &&
- NE_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) &&
- EQ_16( is_masa_ism, 0 ) )
+ IF( NE_32( st_ivas->ivas_format, ISM_FORMAT ) &&
+ NE_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) &&
+ NE_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) &&
+ EQ_16( is_masa_ism, 0 ) )
{
return IVAS_ERR_WRONG_MODE;
}
@@ -2318,22 +2291,19 @@ ivas_error IVAS_DEC_GetObjectMetadata(
metadata->yaw_fx = 0; // Q22
metadata->pitch_fx = 0; // Q22
metadata->spread_fx = 0; // Q22
- metadata->gainFactor_fx = ONE_IN_Q31; // Q31
+ metadata->gainFactor_fx = ONE_IN_Q29; // Q31
metadata->non_diegetic_flag = 0;
}
ELSE
{
-#ifdef OBJ_EDITING_API
IF( EQ_32( st_ivas->ism_mode, ISM_MODE_DISC ) )
{
metadata->azimuth_fx = hIsmMeta->edited_azimuth_fx;
metadata->elevation_fx = hIsmMeta->edited_elevation_fx;
metadata->radius_fx = hIsmMeta->edited_radius_fx;
-
metadata->yaw_fx = hIsmMeta->edited_yaw_fx;
metadata->pitch_fx = hIsmMeta->edited_pitch_fx;
metadata->spread_fx = 0;
-
metadata->gainFactor_fx = hIsmMeta->edited_gain_fx;
metadata->non_diegetic_flag = hIsmMeta->non_diegetic_flag;
}
@@ -2345,7 +2315,7 @@ ivas_error IVAS_DEC_GetObjectMetadata(
metadata->yaw_fx = hIsmMeta->yaw_fx;
metadata->pitch_fx = hIsmMeta->pitch_fx;
metadata->spread_fx = 0;
- metadata->gainFactor_fx = ONE_IN_Q31;
+ metadata->gainFactor_fx = ONE_IN_Q29;
metadata->non_diegetic_flag = hIsmMeta->non_diegetic_flag;
}
ELSE IF( EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) || EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) )
@@ -2360,7 +2330,6 @@ ivas_error IVAS_DEC_GetObjectMetadata(
metadata->non_diegetic_flag = st_ivas->hIsmMetaData[objectIdx]->non_diegetic_flag;
}
ELSE
-#endif
{
metadata->azimuth_fx = hIsmMeta->azimuth_fx; // Q22
metadata->elevation_fx = hIsmMeta->elevation_fx; // Q22
@@ -2368,7 +2337,7 @@ ivas_error IVAS_DEC_GetObjectMetadata(
metadata->yaw_fx = hIsmMeta->yaw_fx; // Q22
metadata->pitch_fx = hIsmMeta->pitch_fx; // Q22
metadata->spread_fx = 0; // Q22
- metadata->gainFactor_fx = ONE_IN_Q31;
+ metadata->gainFactor_fx = ONE_IN_Q29;
metadata->non_diegetic_flag = hIsmMeta->non_diegetic_flag;
}
}
@@ -2381,9 +2350,11 @@ ivas_error IVAS_DEC_GetObjectMetadata(
move32();
move16();
move16();
+
return IVAS_ERR_OK;
}
+
/*---------------------------------------------------------------------*
* IVAS_DEC_GetMasaMetadata( )
*
@@ -2507,7 +2478,7 @@ ivas_error IVAS_DEC_FeedHeadTrackData(
/*---------------------------------------------------------------------*
* IVAS_DEC_FeedRefRotData( )
*
- * Feed the decoder with the reference rotation
+ * Feed the decoder with the reference rotation data
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_FeedRefRotData(
@@ -2574,10 +2545,10 @@ ivas_error IVAS_DEC_FeedRefVectorData(
hIvasDec->updateOrientation = true;
move16();
- ivas_error error_fx = ivas_orient_trk_SetReferenceVector_fx( pOtr, listenerPos, refPos );
- return error_fx;
+ return ivas_orient_trk_SetReferenceVector_fx( pOtr, listenerPos, refPos );
}
+
/*---------------------------------------------------------------------*
* IVAS_DEC_FeedExternalOrientationData( )
*
@@ -2691,7 +2662,7 @@ ivas_error IVAS_DEC_FeedCustomLsData(
return IVAS_ERR_OK;
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
+
/*---------------------------------------------------------------------*
* IVAS_DEC_GetHrtfTDrendHandle( )
*
@@ -2699,16 +2670,6 @@ ivas_error IVAS_DEC_FeedCustomLsData(
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_GetHrtfTDrendHandle(
-#else
-
-/*---------------------------------------------------------------------*
- * IVAS_DEC_GetHrtfHandle( )
- *
- *
- *---------------------------------------------------------------------*/
-
-ivas_error IVAS_DEC_GetHrtfHandle(
-#endif
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
IVAS_DEC_HRTF_TD_HANDLE **hHrtfTD /* o : TD rend. HRTF handle */
)
@@ -2733,31 +2694,18 @@ ivas_error IVAS_DEC_GetHrtfHandle(
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_GetHrtfCRendHandle(
- IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
-#ifdef FIX_CREND_SIMPLIFY_CODE
+ IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
IVAS_DEC_HRTF_CREND_HANDLE **hHrtfCrend /* o : Crend HRTF handle */
-#else
- IVAS_DEC_HRTF_CREND_HANDLE **hSetOfHRTF /* o : Set of HRTF handle */
-#endif
)
{
test();
test();
-#ifdef FIX_CREND_SIMPLIFY_CODE
IF( hIvasDec == NULL || hIvasDec->st_ivas == NULL || hIvasDec->st_ivas->hHrtfCrend == NULL )
{
return IVAS_ERR_WRONG_PARAMS;
}
*hHrtfCrend = &hIvasDec->st_ivas->hHrtfCrend;
-#else
- IF( hIvasDec == NULL || hIvasDec->st_ivas == NULL || hIvasDec->st_ivas->hSetOfHRTF == NULL )
- {
- return IVAS_ERR_WRONG_PARAMS;
- }
-
- *hSetOfHRTF = &hIvasDec->st_ivas->hSetOfHRTF;
-#endif
return IVAS_ERR_OK;
}
@@ -2822,7 +2770,9 @@ ivas_error IVAS_DEC_GetHrtfStatisticsHandle(
IVAS_DEC_HRTF_STATISTICS_HANDLE **hHrtfStatistics /* o : HRTF statistics handle */
)
{
- if ( hIvasDec == NULL || hIvasDec->st_ivas == NULL || hIvasDec->st_ivas->hHrtfStatistics == NULL )
+ test();
+ test();
+ IF( hIvasDec == NULL || hIvasDec->st_ivas == NULL || hIvasDec->st_ivas->hHrtfStatistics == NULL )
{
return IVAS_ERR_WRONG_PARAMS;
}
@@ -2833,7 +2783,6 @@ ivas_error IVAS_DEC_GetHrtfStatisticsHandle(
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
/*---------------------------------------------------------------------*
* IVAS_DEC_HRTF_binary_open( )
*
@@ -2943,20 +2892,20 @@ ivas_error IVAS_DEC_HRTF_binary_close(
IF( st_ivas->hDecoderConfig->Opt_HRTF_binary && st_ivas->ini_frame > 0 )
{
test();
- IF( !( binaural_renderer_old == IVAS_BIN_RENDERER_TYPE_TDREND || binaural_renderer_old == IVAS_BIN_RENDERER_TYPE_DEFAULT ) )
+ IF( !( EQ_32( binaural_renderer_old, IVAS_BIN_RENDERER_TYPE_TDREND ) || EQ_32( binaural_renderer_old, IVAS_BIN_RENDERER_TYPE_DEFAULT ) ) )
{
ivas_HRTF_binary_close_fx( &st_ivas->hHrtfTD );
}
test();
- IF( !( binaural_renderer_old == IVAS_BIN_RENDERER_TYPE_CREND || binaural_renderer_old == IVAS_BIN_RENDERER_TYPE_DEFAULT ) )
+ IF( !( EQ_32( binaural_renderer_old, IVAS_BIN_RENDERER_TYPE_CREND ) || EQ_32( binaural_renderer_old, IVAS_BIN_RENDERER_TYPE_DEFAULT ) ) )
{
/* CRend binaural renderer handle */
ivas_HRTF_CRend_binary_close_fx( &st_ivas->hHrtfCrend );
}
test();
- IF( !( binaural_renderer_old == IVAS_BIN_RENDERER_TYPE_FASTCONV || binaural_renderer_old == IVAS_BIN_RENDERER_TYPE_DEFAULT ) )
+ IF( !( EQ_32( binaural_renderer_old, IVAS_BIN_RENDERER_TYPE_FASTCONV ) || EQ_32( binaural_renderer_old, IVAS_BIN_RENDERER_TYPE_DEFAULT ) ) )
{
/* Fastconv HRTF memories */
ivas_binaural_hrtf_close_fx( &st_ivas->hHrtfFastConv );
@@ -2966,9 +2915,8 @@ ivas_error IVAS_DEC_HRTF_binary_close(
}
test();
- IF( !( binaural_renderer_old == IVAS_BIN_RENDERER_TYPE_PARAMBIN || binaural_renderer_old == IVAS_BIN_RENDERER_TYPE_DEFAULT ) )
+ IF( !( EQ_32( binaural_renderer_old, IVAS_BIN_RENDERER_TYPE_PARAMBIN ) || EQ_32( binaural_renderer_old, IVAS_BIN_RENDERER_TYPE_DEFAULT ) ) )
{
-
/* Parametric binauralizer HRTF filters */
ivas_HRTF_parambin_binary_close_fx( &st_ivas->hHrtfParambin );
}
@@ -2976,7 +2924,6 @@ ivas_error IVAS_DEC_HRTF_binary_close(
return IVAS_ERR_OK;
}
-#endif
/*---------------------------------------------------------------------*
@@ -3023,7 +2970,7 @@ static ivas_error copyRendererConfigStruct(
/*---------------------------------------------------------------------*
* IVAS_DEC_GetRenderConfig( )
*
- *
+ * Return renderer configuration parameters handle
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_GetRenderConfig(
@@ -3043,6 +2990,12 @@ ivas_error IVAS_DEC_GetRenderConfig(
}
+/*---------------------------------------------------------------------*
+ * IVAS_DEC_GetDefaultRenderConfig( )
+ *
+ * Return default renderer configuration parameters
+ *---------------------------------------------------------------------*/
+
/*! r: error code*/
ivas_error IVAS_DEC_GetDefaultRenderConfig(
IVAS_RENDER_CONFIG_HANDLE hRCout /* o : Render config handle */
@@ -3064,7 +3017,7 @@ ivas_error IVAS_DEC_GetDefaultRenderConfig(
/*---------------------------------------------------------------------*
* IVAS_DEC_FeedRenderConfig( )
*
- *
+ * Set renderer configuration (acoustic environment) parameters
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_FeedRenderConfig(
@@ -3073,6 +3026,7 @@ ivas_error IVAS_DEC_FeedRenderConfig(
)
{
RENDER_CONFIG_HANDLE hRenderConfig;
+ Decoder_Struct *st_ivas;
ivas_error error;
test();
@@ -3083,6 +3037,8 @@ ivas_error IVAS_DEC_FeedRenderConfig(
}
hRenderConfig = hIvasDec->st_ivas->hRenderConfig;
+ st_ivas = hIvasDec->st_ivas;
+
hRenderConfig->roomAcoustics.nBands = renderConfig.roomAcoustics.nBands;
hRenderConfig->roomAcoustics.acousticPreDelay_fx = renderConfig.roomAcoustics.acousticPreDelay_fx;
hRenderConfig->roomAcoustics.inputPreDelay_fx = renderConfig.roomAcoustics.inputPreDelay_fx;
@@ -3112,9 +3068,9 @@ ivas_error IVAS_DEC_FeedRenderConfig(
/* Re-initialize reverb instance if already available */
/* TD renderer Jot reverberator */
- IF( hIvasDec->st_ivas->hReverb != NULL )
+ IF( st_ivas->hReverb != NULL )
{
- IF( ( error = ivas_reverb_open_fx( &hIvasDec->st_ivas->hReverb, hIvasDec->st_ivas->hHrtfStatistics, hRenderConfig, hIvasDec->st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK )
+ IF( ( error = ivas_reverb_open_fx( &st_ivas->hReverb, st_ivas->hHrtfStatistics, hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK )
{
return error;
}
@@ -3123,19 +3079,20 @@ ivas_error IVAS_DEC_FeedRenderConfig(
/* CREND Jot reverberator */
test();
test();
- IF( hIvasDec->st_ivas->hCrendWrapper != NULL && hIvasDec->st_ivas->hCrendWrapper->hCrend[0] != NULL && hIvasDec->st_ivas->hCrendWrapper->hCrend[0]->hReverb != NULL )
+ IF( st_ivas->hCrendWrapper != NULL && st_ivas->hCrendWrapper->hCrend[0] != NULL && st_ivas->hCrendWrapper->hCrend[0]->hReverb != NULL )
{
- IF( ( error = ivas_reverb_open_fx( &hIvasDec->st_ivas->hCrendWrapper->hCrend[0]->hReverb, hIvasDec->st_ivas->hHrtfStatistics, hRenderConfig, hIvasDec->st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK )
+ IF( ( error = ivas_reverb_open_fx( &st_ivas->hCrendWrapper->hCrend[0]->hReverb, hIvasDec->st_ivas->hHrtfStatistics, hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK )
{
return error;
}
}
- test();
/* FB reverberator */
- IF( hIvasDec->st_ivas->hDiracDecBin[0] != NULL && hIvasDec->st_ivas->hDiracDecBin[0]->hReverb != NULL )
+ test();
+ IF( st_ivas->hDiracDecBin[0] != NULL && st_ivas->hDiracDecBin[0]->hReverb != NULL )
{
- ivas_binaural_reverb_close_fx( &( hIvasDec->st_ivas->hDiracDecBin[0]->hReverb ) );
+ ivas_binaural_reverb_close_fx( &( st_ivas->hDiracDecBin[0]->hReverb ) );
+
IF( ( error = ivas_binaural_reverb_init_fx( &( hIvasDec->st_ivas->hDiracDecBin[0]->hReverb ), hIvasDec->st_ivas->hHrtfStatistics, hIvasDec->st_ivas->hSpatParamRendCom->num_freq_bands, CLDFB_NO_COL_MAX / MAX_PARAM_SPATIAL_SUBFRAMES, &( hRenderConfig->roomAcoustics ), hIvasDec->st_ivas->hDecoderConfig->output_Fs, NULL, NULL, NULL ) ) != IVAS_ERR_OK )
{
return error;
@@ -3144,9 +3101,10 @@ ivas_error IVAS_DEC_FeedRenderConfig(
test();
/* Fastconv CLDFB reverberator */
- IF( hIvasDec->st_ivas->hBinRenderer != NULL && hIvasDec->st_ivas->hBinRenderer->hReverb != NULL )
+ IF( st_ivas->hBinRenderer != NULL && st_ivas->hBinRenderer->hReverb != NULL )
{
- ivas_binaural_reverb_close_fx( &( hIvasDec->st_ivas->hBinRenderer->hReverb ) );
+ ivas_binaural_reverb_close_fx( &( st_ivas->hBinRenderer->hReverb ) );
+
IF( ( error = ivas_binaural_reverb_init_fx( &( hIvasDec->st_ivas->hBinRenderer->hReverb ), hIvasDec->st_ivas->hHrtfStatistics, hIvasDec->st_ivas->hBinRenderer->conv_band, hIvasDec->st_ivas->hBinRenderer->timeSlots, &( hRenderConfig->roomAcoustics ), hIvasDec->st_ivas->hDecoderConfig->output_Fs, NULL, NULL, NULL ) ) != IVAS_ERR_OK )
{
return error;
@@ -3164,7 +3122,7 @@ ivas_error IVAS_DEC_FeedRenderConfig(
hRenderConfig->split_rend_config.poseCorrectionMode = ISAR_SPLIT_REND_POSE_CORRECTION_MODE_NONE;
}
- IF( is_split_rendering_enabled( hIvasDec->st_ivas->hDecoderConfig, hRenderConfig ) )
+ IF( is_split_rendering_enabled( st_ivas->hDecoderConfig, hRenderConfig ) )
{
IF( ( error = isar_split_rend_validate_config( &hRenderConfig->split_rend_config, ( hIvasDec->st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ? 1 : 0 ) ) != IVAS_ERR_OK )
{
@@ -3251,7 +3209,7 @@ ivas_error IVAS_DEC_GetDelay(
/*---------------------------------------------------------------------*
* IVAS_DEC_HasDecodedFirstGoodFrame( )
*
- *
+ * Return flag indicating if the decoder has decoded a good frame
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_HasDecodedFirstGoodFrame(
@@ -3272,6 +3230,7 @@ ivas_error IVAS_DEC_HasDecodedFirstGoodFrame(
return IVAS_ERR_OK;
}
+#ifndef LIB_DEC_REVISION
/*---------------------------------------------------------------------*
* IVAS_DEC_GetPcmFrameSize( )
@@ -3304,6 +3263,8 @@ ivas_error IVAS_DEC_GetPcmFrameSize(
return IVAS_ERR_OK;
}
+#endif
+
/*---------------------------------------------------------------------*
* isSidFrame( )
@@ -3330,8 +3291,15 @@ static bool isSidFrame(
return false;
}
-static void bsCompactToSerial(
- const UWord8 *compact,
+
+/*---------------------------------------------------------------------*
+ * bsCompactToSerial( )
+ *
+ * Bitstream conversion to Byte format
+ *---------------------------------------------------------------------*/
+
+static void bsCompactToSerial(
+ const UWord8 *compact,
UWord16 *serial,
const UWord16 num_bits )
{
@@ -3517,6 +3485,51 @@ ivas_error IVAS_DEC_VoIP_SetScale(
return IVAS_ERR_OK;
}
+#ifdef VARIABLE_SPEED_DECODING
+#ifdef LIB_DEC_REVISION
+
+/*---------------------------------------------------------------------*
+ * IVAS_DEC_EnableTsm( )
+ *
+ * Enable Time-Scale Modification (TSM)
+ *---------------------------------------------------------------------*/
+
+ivas_error IVAS_DEC_EnableTsm(
+ IVAS_DEC_HANDLE hIvasDec /* i/o: IVAS decoder handle */
+)
+{
+ AUDIO_CONFIG output_config;
+ ivas_error error;
+
+ test();
+ IF( hIvasDec == NULL || hIvasDec->st_ivas == NULL )
+ {
+ return IVAS_ERR_UNEXPECTED_NULL_POINTER;
+ }
+
+ hIvasDec->st_ivas->hDecoderConfig->Opt_tsm = 1;
+ move16();
+
+ /* Init flush buffer if necessary (only needed for binaural) */
+ output_config = hIvasDec->st_ivas->hDecoderConfig->output_config;
+
+ test();
+ test();
+ test();
+ test();
+ test();
+ IF( hIvasDec->flushbuffer == NULL && ( EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_32( output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) || EQ_32( output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) || EQ_32( output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ) )
+ {
+ IF( ( error = create_flush_buffer( hIvasDec ) ) != IVAS_ERR_OK )
+ {
+ return error;
+ }
+ }
+
+ return IVAS_ERR_OK;
+}
+
+#endif
/*---------------------------------------------------------------------*
* IVAS_DEC_TSM_SetQuality( )
@@ -3557,8 +3570,7 @@ ivas_error IVAS_DEC_TSM_SetQuality(
return IVAS_ERR_OK;
}
-
-#ifdef FIX_CREND_SIMPLIFY_CODE
+#endif
/*---------------------------------------------------------------------*
* renderer_type_to_mode()
@@ -3625,7 +3637,11 @@ ivas_error IVAS_DEC_ReadFormat(
MC_MODE mc_mode_old;
Word16 nchan_transport_old;
AUDIO_CONFIG intern_config_old, transport_config_old, output_config;
+#ifdef NONBE_1303_REND_GRANULARITY
+ RENDERER_TYPE renderer_type_old, renderer_type_sec_new, renderer_type_sec_old;
+#else
RENDERER_TYPE renderer_type_old, renderer_type_sec_new;
+#endif
test();
IF( hIvasDec == NULL || hIvasDec->st_ivas == NULL )
@@ -3641,6 +3657,9 @@ ivas_error IVAS_DEC_ReadFormat(
intern_config_old = st_ivas->intern_config;
transport_config_old = st_ivas->transport_config;
renderer_type_old = st_ivas->renderer_type;
+#ifdef NONBE_1303_REND_GRANULARITY
+ renderer_type_sec_old = ivas_renderer_secondary_select_fx( st_ivas );
+#endif
move32();
move32();
move32();
@@ -3648,6 +3667,9 @@ ivas_error IVAS_DEC_ReadFormat(
move32();
move32();
move32();
+#ifdef NONBE_1303_REND_GRANULARITY
+ move32();
+#endif
output_config = st_ivas->hDecoderConfig->output_config;
move32();
@@ -3677,7 +3699,7 @@ ivas_error IVAS_DEC_ReadFormat(
*binaural_renderer = renderer_type_to_mode( st_ivas->renderer_type );
/* Select secondary binaural renderer (used in combined formats) */
- renderer_type_sec_new = ivas_renderer_secondary_select( st_ivas );
+ renderer_type_sec_new = ivas_renderer_secondary_select_fx( st_ivas );
*binaural_renderer_sec = renderer_type_to_mode( renderer_type_sec_new );
/* select HRTF audio configuration to load the right HRTF set for the external binary file */
@@ -3739,7 +3761,36 @@ ivas_error IVAS_DEC_ReadFormat(
}
}
-#ifdef FIX_HRTF_LOAD
+#ifdef NONBE_1303_REND_GRANULARITY
+ test();
+ test();
+ test();
+ test();
+ /* JBM: compensate when binaural renderer granularity changes (happens in bitrate switching) */
+ IF( st_ivas->ini_active_frame > 0 && st_ivas->hDecoderConfig->Opt_tsm &&
+ ( NE_32( renderer_type_old, st_ivas->renderer_type ) ||
+ NE_32( renderer_type_sec_old, renderer_type_sec_new ) ) )
+ {
+ Word16 tc_granularity_new = ivas_jbm_dec_get_render_granularity_fx( st_ivas->renderer_type, renderer_type_sec_new, st_ivas->hDecoderConfig->output_Fs );
+
+ st_ivas->nchan_transport = nchan_transport_old;
+ move16();
+
+ IF( st_ivas->hTcBuffer == NULL )
+ {
+ return IVAS_ERR_UNEXPECTED_NULL_POINTER;
+ }
+
+ /* when granularity goes down, render what still fits in the new granularity */
+ IF( LT_32( tc_granularity_new, st_ivas->hTcBuffer->n_samples_granularity ) )
+ {
+ IF( NE_32( ( error = ivas_jbm_dec_flush_renderer_fx( st_ivas, tc_granularity_new, renderer_type_old, intern_config_old, &st_ivas->hIntSetup, mc_mode_old, ism_mode_old, &hIvasDec->nSamplesFlushed, hIvasDec->flushbuffer ) ), IVAS_ERR_OK ) )
+ {
+ return error;
+ }
+ }
+ }
+#else
test();
test();
test();
@@ -3747,25 +3798,17 @@ ivas_error IVAS_DEC_ReadFormat(
test();
test();
IF( ( NE_32( renderer_type_old, st_ivas->renderer_type ) && NE_32( renderer_type_old, RENDERER_DISABLE ) ) ||
- ( st_ivas->ini_active_frame > 0 && ( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) || EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) ) && EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) && NE_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) ) )
+ ( st_ivas->ini_active_frame > 0 &&
+ ( ( ( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) || EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) ) && EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC ) && NE_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) ) ||
+ ( EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) && EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV ) && NE_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) ) ) ) )
{
/* JBM: when granularity goes down (e.g. Discrete ISM with TD Obj Renderer -> ParamISM with binaural fastconv
render what still fits in the new granularity */
Word16 tc_granularity_new = ivas_jbm_dec_get_render_granularity( st_ivas->renderer_type, st_ivas->ivas_format, st_ivas->mc_mode, st_ivas->hDecoderConfig->output_Fs );
-#ifdef NONBE_1200_ISM_JBM_BRATE_SW_FLUSH
st_ivas->nchan_transport = nchan_transport_old;
move16();
-#else
-// st_ivas->nchan_transport = nchan_transport_old; // ToDo: temporarily deactivated to keep FIX_HRTF_LOAD bit-exact but this is likely a bug in the main -> see issue #1200
-#endif
-#ifndef NONBE_1199_OMASA_JBM_BRATE_SW_FLUSH
- if ( st_ivas->ivas_format == MASA_FORMAT )
- {
- st_ivas->nchan_ism = 0; // ToDo: temporary hack to keep FIX_HRTF_LOAD bit-exact but this is likely a bug in the main -> see issue #1199
- }
-#endif
IF( LT_16( tc_granularity_new, st_ivas->hTcBuffer->n_samples_granularity ) )
{
IF( ( error = ivas_jbm_dec_flush_renderer_fx( st_ivas, tc_granularity_new, renderer_type_old, intern_config_old, &st_ivas->hIntSetup, mc_mode_old, ism_mode_old, &hIvasDec->nSamplesFlushed, hIvasDec->flushbuffer ) ) != IVAS_ERR_OK )
@@ -3792,9 +3835,7 @@ ivas_error IVAS_DEC_ReadFormat(
return IVAS_ERR_OK;
}
-#endif
-#ifdef FIX_HRTF_LOAD_API
/*---------------------------------------------------------------------*
* IVAS_DEC_GetSamplesDecoder( )
@@ -3804,11 +3845,18 @@ ivas_error IVAS_DEC_ReadFormat(
ivas_error IVAS_DEC_GetSamplesDecoder(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
- const int16_t isSplitRend, /* i : split rendering enabled flag */
+ const Word16 isSplitRend, /* i : split rendering enabled flag */
ISAR_SPLIT_REND_BITS_DATA *splitRendBits /* o : output split rendering bits */
)
{
ivas_error error;
+ Decoder_Struct *st_ivas;
+#ifdef LIB_DEC_REVISION
+ UWord16 nTimeScalerOutSamples;
+ UWord8 nTransportChannels;
+ Word16 nResidualSamples, nSamplesTcsScaled;
+ bool isInitialized_voip;
+#endif
IF( hIvasDec == NULL || hIvasDec->st_ivas == NULL )
{
@@ -3823,24 +3871,30 @@ ivas_error IVAS_DEC_GetSamplesDecoder(
}
#endif
- /* If TSM is generally enabled, we have to wait for the first good frame.
- Otherwise, we directly decode the first frame in any case. */
-#ifdef FIX_HRTF_LOAD
- if ( !hIvasDec->isInitialized || hIvasDec->hasBeenFedFrame )
-#else
- if ( ( hIvasDec->st_ivas->hDecoderConfig->Opt_tsm && hIvasDec->hasBeenFedFirstGoodFrame ) || !hIvasDec->st_ivas->hDecoderConfig->Opt_tsm )
+ st_ivas = hIvasDec->st_ivas;
+
+#ifdef LIB_DEC_REVISION
+ isInitialized_voip = hIvasDec->apaExecBuffer_fx != NULL;
#endif
+
+ test();
+ IF( !hIvasDec->isInitialized || hIvasDec->hasBeenFedFrame ) /* wait for the first good frame */
{
+#ifdef LIB_DEC_REVISION
+ /*-----------------------------------------------------------------*
+ * Setup all decoder parts (IVAS decoder, ISAR)
+ *-----------------------------------------------------------------*/
+ IF( ( error = ivas_dec_setup_all( hIvasDec, &nTransportChannels, isSplitRend, splitRendBits ) ) != IVAS_ERR_OK )
+ {
+ return error;
+ }
+#else
UWord16 l_ts, nTimeScalerOutSamples;
-#ifdef FIX_HRTF_LOAD
UWord8 nTransportChannels;
-#else
- UWord8 nTransportChannels, nOutChannels;
-#endif
Word16 nResidualSamples, nSamplesTcsScaled, nOutSamplesElse;
- if ( isSplitRend )
+ IF( isSplitRend )
{
IF( ( error = isar_set_split_rend_setup( hIvasDec->st_ivas->hSplitBinRend, &hIvasDec->st_ivas->hRenderConfig->split_rend_config, hIvasDec->st_ivas->hCombinedOrientationData, splitRendBits ) ) != IVAS_ERR_OK )
{
@@ -3848,37 +3902,82 @@ ivas_error IVAS_DEC_GetSamplesDecoder(
}
}
-#ifdef FIX_HRTF_LOAD
- if ( ( error = IVAS_DEC_Setup( hIvasDec, &l_ts, &nTransportChannels ) ) != IVAS_ERR_OK )
-#else
- if ( ( error = IVAS_DEC_Setup( hIvasDec, &l_ts, &nTransportChannels, &nOutChannels, &hIvasDec->nSamplesFlushed, hIvasDec->pcmType, hIvasDec->flushbuffer ) ) != IVAS_ERR_OK )
-#endif
+ IF( ( error = IVAS_DEC_Setup( hIvasDec, &l_ts, &nTransportChannels ) ) != IVAS_ERR_OK )
{
return error;
}
- if ( hIvasDec->st_ivas->hDecoderConfig->Opt_tsm && nTransportChannels != hIvasDec->nTransportChannelsOld )
+ IF( hIvasDec->st_ivas->hDecoderConfig->Opt_tsm && NE_16( nTransportChannels, hIvasDec->nTransportChannelsOld ) )
+ {
+ IF( ( error = IVAS_DEC_VoIP_reconfigure( hIvasDec, nTransportChannels, l_ts ) ) != IVAS_ERR_OK )
+ {
+ return error;
+ }
+ }
+#endif
+
+#ifdef LIB_DEC_REVISION
+ /*-----------------------------------------------------------------*
+ * IVAS decoder: decode transport channels and metadata
+ *-----------------------------------------------------------------*/
+
+ IF( EQ_32( hIvasDec->mode, IVAS_DEC_MODE_EVS ) )
{
- if ( ( error = IVAS_DEC_VoIP_reconfigure( hIvasDec, nTransportChannels, l_ts ) ) != IVAS_ERR_OK )
+ IF( ( error = evs_dec_main_fx( st_ivas ) ) != IVAS_ERR_OK )
{
return error;
}
}
+ ELSE IF( EQ_32( hIvasDec->mode, IVAS_DEC_MODE_IVAS ) )
+ {
+ IF( ( error = ivas_jbm_dec_tc_fx( st_ivas ) ) != IVAS_ERR_OK )
+ {
+ return error;
+ }
+ hIvasDec->isInitialized = true; /* Initialization done in ivas_dec() */
+ move16();
+ }
+
+ if ( hIvasDec->hasBeenFedFirstGoodFrame )
+ {
+ hIvasDec->hasDecodedFirstGoodFrame = true;
+ move16();
+ }
+#else
/* IVAS TC decoder */
- if ( ( error = IVAS_DEC_GetTcSamples( hIvasDec, hIvasDec->apaExecBuffer_fx, &nOutSamplesElse ) ) != IVAS_ERR_OK )
+ IF( ( error = IVAS_DEC_GetTcSamples( hIvasDec, hIvasDec->apaExecBuffer_fx, &nOutSamplesElse ) ) != IVAS_ERR_OK )
{
return error;
}
+#endif
- /* JBM */
- if ( hIvasDec->st_ivas->hDecoderConfig->Opt_tsm )
+ /*-----------------------------------------------------------------*
+ * JBM
+ *-----------------------------------------------------------------*/
+
+ IF( st_ivas->hDecoderConfig->Opt_tsm )
{
+#ifdef LIB_DEC_REVISION
+ IF( NE_16( nTransportChannels, hIvasDec->nTransportChannelsOld ) )
+ {
+ IF( ( error = apa_setup( hIvasDec, isInitialized_voip, nTransportChannels ) ) != IVAS_ERR_OK )
+ {
+ return error;
+ }
+ }
+
+#endif
IF( apa_set_scale_fx( hIvasDec->hTimeScaler, hIvasDec->tsm_scale ) != 0 )
{
return IVAS_ERR_UNKNOWN;
}
+#ifdef LIB_DEC_REVISION
+ ivas_syn_output_f_fx( st_ivas->p_output_fx, hIvasDec->nSamplesFrame, nTransportChannels, hIvasDec->apaExecBuffer_fx );
+
+#endif
+
// tmp apaExecBuffer
IF( EQ_16( (Word16) hIvasDec->mode, IVAS_DEC_MODE_EVS ) )
{
@@ -3887,10 +3986,12 @@ ivas_error IVAS_DEC_GetSamplesDecoder(
{
tmp_apaExecBuffer[i] = extract_l( L_shr( hIvasDec->apaExecBuffer_fx[i], Q11 ) ); // Q0
}
+
IF( apa_exec_fx( hIvasDec->hTimeScaler, tmp_apaExecBuffer, (UWord16) imult3216( hIvasDec->nSamplesFrame, nTransportChannels ), (UWord16) hIvasDec->tsm_max_scaling, tmp_apaExecBuffer, &nTimeScalerOutSamples ) != 0 )
{
return IVAS_ERR_UNKNOWN;
}
+
FOR( Word32 i = 0; i < APA_BUF_PER_CHANNEL * nTransportChannels; ++i )
{
hIvasDec->apaExecBuffer_fx[i] = L_shl( tmp_apaExecBuffer[i], Q11 ); // Q11
@@ -3903,6 +4004,7 @@ ivas_error IVAS_DEC_GetSamplesDecoder(
return IVAS_ERR_UNKNOWN;
}
}
+
assert( LE_32( (Word32) nTimeScalerOutSamples, APA_BUF ) );
nSamplesTcsScaled = idiv1616U( extract_l( nTimeScalerOutSamples ), nTransportChannels );
hIvasDec->timeScalingDone = 1;
@@ -3913,69 +4015,94 @@ ivas_error IVAS_DEC_GetSamplesDecoder(
nSamplesTcsScaled = hIvasDec->nSamplesFrame;
}
- /* Feed decoded transport channels samples to the renderer */
- if ( ( error = IVAS_DEC_RendererFeedTcSamples( hIvasDec, nSamplesTcsScaled, &nResidualSamples, hIvasDec->apaExecBuffer_fx ) ) != IVAS_ERR_OK )
+ /*-----------------------------------------------------------------*
+ * Feed decoded transport channels samples to the renderer
+ *-----------------------------------------------------------------*/
+
+#ifdef LIB_DEC_REVISION
+ ivas_jbm_dec_feed_tc_to_renderer_fx( st_ivas, nSamplesTcsScaled, &nResidualSamples, hIvasDec->apaExecBuffer_fx );
+#else
+ IF( ( error = IVAS_DEC_RendererFeedTcSamples( hIvasDec, nSamplesTcsScaled, &nResidualSamples, hIvasDec->apaExecBuffer_fx ) ) != IVAS_ERR_OK )
{
return error;
}
+#endif
- if ( hIvasDec->st_ivas->hDecoderConfig->Opt_tsm )
+ IF( st_ivas->hDecoderConfig->Opt_tsm )
{
/* feed residual samples to TSM for the next call */
- if ( apa_set_renderer_residual_samples( hIvasDec->hTimeScaler, (uint16_t) nResidualSamples ) != 0 )
+ IF( apa_set_renderer_residual_samples( hIvasDec->hTimeScaler, (uint16_t) nResidualSamples ) != 0 )
{
return IVAS_ERR_UNKNOWN;
}
}
hIvasDec->hasBeenFedFrame = false;
+ move16();
}
+
hIvasDec->hasBeenPreparedRendering = false;
+ move16();
- IF( hIvasDec->st_ivas->hIsmMetaData[0] )
+ /*-----------------------------------------------------------------*
+ * Set editable metadata
+ *-----------------------------------------------------------------*/
+
+ IF( st_ivas->hIsmMetaData[0] )
{
- IF( hIvasDec->st_ivas->ivas_format == ISM_FORMAT || hIvasDec->st_ivas->ivas_format == MASA_ISM_FORMAT || hIvasDec->st_ivas->ivas_format == SBA_ISM_FORMAT )
+ test();
+ test();
+ IF( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) || EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) || EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) )
{
- IF( hIvasDec->st_ivas->ism_mode == ISM_MODE_DISC || hIvasDec->st_ivas->ism_mode == ISM_MASA_MODE_DISC || hIvasDec->st_ivas->ism_mode == ISM_SBA_MODE_DISC )
+ test();
+ test();
+ test();
+ IF( EQ_32( st_ivas->ism_mode, ISM_MODE_DISC ) || EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) || EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) || EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
{
Word16 obj;
- ISM_METADATA_HANDLE *hIsmMetaData = hIvasDec->st_ivas->hIsmMetaData;
- FOR( obj = 0; obj < hIvasDec->st_ivas->nchan_ism; obj++ )
+ ISM_METADATA_HANDLE *hIsmMetaData = st_ivas->hIsmMetaData;
+ FOR( obj = 0; obj < st_ivas->nchan_ism; obj++ )
{
hIsmMetaData[obj]->edited_azimuth_fx = hIsmMetaData[obj]->azimuth_fx;
+ move32();
hIsmMetaData[obj]->edited_elevation_fx = hIsmMetaData[obj]->elevation_fx;
+ move32();
hIsmMetaData[obj]->edited_yaw_fx = hIsmMetaData[obj]->yaw_fx;
+ move32();
hIsmMetaData[obj]->edited_pitch_fx = hIsmMetaData[obj]->pitch_fx;
+ move32();
hIsmMetaData[obj]->edited_radius_fx = hIsmMetaData[obj]->radius_fx;
- hIsmMetaData[obj]->edited_gain_fx = ONE_IN_Q31;
+ move32();
}
- IF( hIvasDec->st_ivas->ism_mode == ISM_SBA_MODE_DISC )
+ if ( EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
{
- hIvasDec->st_ivas->hSbaIsmData->gain_bed_fx = ONE_IN_Q31;
+ st_ivas->hSbaIsmData->gain_bed_fx = ONE_IN_Q29; // TODO: Check Q value
+ move32();
}
}
}
}
- IF( hIvasDec->st_ivas->hParamIsmDec != NULL )
+ IF( st_ivas->hParamIsmDec != NULL )
{
- IF( hIvasDec->st_ivas->ism_mode == ISM_MODE_PARAM )
+ IF( EQ_32( st_ivas->ism_mode, ISM_MODE_PARAM ) )
{
Word16 obj = 0;
- PARAM_ISM_DEC_HANDLE hParamIsmDec = hIvasDec->st_ivas->hParamIsmDec;
- for ( obj = 0; obj < hIvasDec->st_ivas->nchan_ism; obj++ )
+ PARAM_ISM_DEC_HANDLE hParamIsmDec = st_ivas->hParamIsmDec;
+ FOR( obj = 0; obj < st_ivas->nchan_ism; obj++ )
{
hParamIsmDec->edited_azimuth_values_fx[obj] = hParamIsmDec->azimuth_values_fx[obj];
hParamIsmDec->edited_elevation_values_fx[obj] = hParamIsmDec->elevation_values_fx[obj];
+ move32();
+ move32();
}
}
}
return IVAS_ERR_OK;
}
-#endif
-#ifdef OBJ_EDITING_API
+
/*---------------------------------------------------------------------*
* IVAS_DEC_GetEditableParameters( )
*
@@ -3986,21 +4113,226 @@ ivas_error IVAS_DEC_GetEditableParameters(
IVAS_DEC_HANDLE hIvasDec,
IVAS_EDITABLE_PARAMETERS *hIvasEditableParameters )
{
+ Word16 obj, dirac_read_idx;
+ Decoder_Struct *st_ivas;
+ ISM_MODE ism_mode;
+
test();
+ test();
+ IF( hIvasEditableParameters == NULL || hIvasDec == NULL || hIvasDec->st_ivas == NULL )
+ {
+ return IVAS_ERR_UNEXPECTED_NULL_POINTER;
+ }
+
+#ifdef NONBE_1293_CRASH_FIRST_FRAME_LOST
+ IF( !hIvasDec->hasBeenFedFirstGoodFrame )
+ {
+ hIvasEditableParameters->num_obj = 0;
+ move16();
+
+ return IVAS_ERR_OK;
+ }
+#endif
+
+ st_ivas = hIvasDec->st_ivas;
+ ism_mode = st_ivas->ism_mode;
+
test();
test();
test();
test();
- IF( !( hIvasDec->st_ivas->ivas_format == ISM_FORMAT ||
- ( hIvasDec->st_ivas->ivas_format == SBA_ISM_FORMAT && hIvasDec->st_ivas->ism_mode == ISM_SBA_MODE_DISC ) ||
- ( hIvasDec->st_ivas->ivas_format == MASA_ISM_FORMAT && ( hIvasDec->st_ivas->ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ || hIvasDec->st_ivas->ism_mode == ISM_MASA_MODE_DISC ) ) ) )
+#ifdef NONBE_1217_INIT_OBJ_EDIT
+ IF( !( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) ||
+ EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) ||
+ EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) ||
+ ( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) && GT_16( st_ivas->nchan_ism, 0 ) ) ) )
+#else
+ IF( !( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) ||
+ ( EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) && EQ_32( ism_mode, ISM_SBA_MODE_DISC ) ) ||
+ ( EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) && ( EQ_32( ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) || EQ_32( ism_mode, ISM_MASA_MODE_DISC ) ) ) ) )
{
return IVAS_ERROR( IVAS_ERR_WRONG_MODE, "Object editing no supported in this operation mode." );
}
+#endif
+ hIvasEditableParameters->gain_bed_fx = ONE_IN_Q29;
+ move32();
+ hIvasEditableParameters->num_obj = st_ivas->nchan_ism;
+ move16();
+
+ test();
+ test();
test();
+ IF( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) || EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) )
+ {
+ test();
+ IF( EQ_32( ism_mode, ISM_MODE_DISC ) || EQ_32( ism_mode, ISM_SBA_MODE_DISC ) )
+ {
+ FOR( obj = 0; obj < hIvasEditableParameters->num_obj; obj++ )
+ {
+ hIvasEditableParameters->ism_metadata[obj].azimuth_fx = st_ivas->hIsmMetaData[obj]->azimuth_fx;
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].elevation_fx = st_ivas->hIsmMetaData[obj]->elevation_fx;
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].yaw_fx = st_ivas->hIsmMetaData[obj]->yaw_fx;
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].pitch_fx = st_ivas->hIsmMetaData[obj]->pitch_fx;
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].radius_fx = st_ivas->hIsmMetaData[obj]->radius_fx;
+ move16();
+ hIvasEditableParameters->ism_metadata[obj].gain_fx = st_ivas->hIsmMetaData[obj]->edited_gain_fx;
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].non_diegetic_flag = st_ivas->hIsmMetaData[obj]->non_diegetic_flag;
+ move16();
+ }
+
+ IF( EQ_32( ism_mode, ISM_SBA_MODE_DISC ) )
+ {
+ hIvasEditableParameters->gain_bed_fx = ONE_IN_Q29;
+ move32();
+ }
+ }
+ ELSE IF( EQ_32( ism_mode, ISM_MODE_PARAM ) )
+ {
+ FOR( obj = 0; obj < hIvasEditableParameters->num_obj; obj++ )
+ {
+ hIvasEditableParameters->ism_metadata[obj].azimuth_fx = st_ivas->hParamIsmDec->azimuth_values_fx[obj];
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].elevation_fx = st_ivas->hParamIsmDec->elevation_values_fx[obj];
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].yaw_fx = 0;
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].pitch_fx = 0;
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].radius_fx = 0;
+ move16();
+ hIvasEditableParameters->ism_metadata[obj].gain_fx = ONE_IN_Q29; // TODO check Q-value
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].non_diegetic_flag = 0;
+ move16();
+ }
+ }
+ ELSE IF( EQ_32( ism_mode, ISM_MODE_NONE ) )
+ {
+ hIvasEditableParameters->num_obj = 0;
+ move16();
+ }
+#ifdef DEBUGGING
+ ELSE
+ {
+ assert( 0 && "This should never happen!" );
+ }
+#endif
+ }
+#ifdef NONBE_1217_INIT_OBJ_EDIT
+ ELSE IF( EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) || ( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) && GT_16( st_ivas->nchan_ism, 0 ) ) )
+#else
+ ELSE IF( EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) && ( EQ_32( ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) || EQ_32( ism_mode, ISM_MASA_MODE_DISC ) ) )
+#endif
+ {
+ /* object editing possible only in two highest OMASA modes */
+#ifdef NONBE_1217_INIT_OBJ_EDIT
+ test();
+#endif
+ IF( EQ_32( ism_mode, ISM_MASA_MODE_DISC ) )
+ {
+ FOR( obj = 0; obj < hIvasEditableParameters->num_obj; obj++ )
+ {
+ hIvasEditableParameters->ism_metadata[obj].azimuth_fx = st_ivas->hIsmMetaData[obj]->azimuth_fx;
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].elevation_fx = st_ivas->hIsmMetaData[obj]->elevation_fx;
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].yaw_fx = st_ivas->hIsmMetaData[obj]->yaw_fx;
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].pitch_fx = st_ivas->hIsmMetaData[obj]->pitch_fx;
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].radius_fx = st_ivas->hIsmMetaData[obj]->radius_fx;
+ move32();
+
+ /* reset the otherwise unused "gain" field for the object */
+ st_ivas->hIsmMetaData[obj]->edited_gain_fx = ONE_IN_Q29;
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].gain_fx = st_ivas->hIsmMetaData[obj]->edited_gain_fx;
+ move32();
+ hIvasEditableParameters->ism_metadata[obj].non_diegetic_flag = st_ivas->hIsmMetaData[obj]->non_diegetic_flag;
+ move16();
+ }
+ }
+#ifdef NONBE_1217_INIT_OBJ_EDIT
+ ELSE IF( EQ_32( ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) )
+#else
+ ELSE
+#endif
+ {
+ /* Handle MONO output */
+ IF( NE_32( st_ivas->renderer_type, RENDERER_MONO_DOWNMIX ) )
+ {
+ dirac_read_idx = st_ivas->hSpatParamRendCom->render_to_md_map[st_ivas->hSpatParamRendCom->subframes_rendered];
+ }
+ ELSE
+ {
+ dirac_read_idx = 0;
+ }
+ move16();
+
+ FOR( obj = 0; obj < hIvasEditableParameters->num_obj; obj++ )
+ {
+ hIvasEditableParameters->ism_metadata[obj].azimuth_fx = L_shl( L_deposit_l( st_ivas->hMasaIsmData->azimuth_ism_fx[obj][dirac_read_idx] ), Q22 );
+ hIvasEditableParameters->ism_metadata[obj].elevation_fx = L_shl( L_deposit_l( st_ivas->hMasaIsmData->elevation_ism_fx[obj][dirac_read_idx] ), Q22 );
+ move32();
+ move32();
+
+ hIvasEditableParameters->ism_metadata[obj].yaw_fx = st_ivas->hIsmMetaData[obj]->yaw_fx;
+ hIvasEditableParameters->ism_metadata[obj].pitch_fx = st_ivas->hIsmMetaData[obj]->pitch_fx;
+ hIvasEditableParameters->ism_metadata[obj].radius_fx = st_ivas->hIsmMetaData[obj]->radius_fx;
+ move32();
+ move32();
+ move32();
+
+ /* reset the otherwise unused "gain" field for the object */
+ st_ivas->hIsmMetaData[obj]->edited_gain_fx = ONE_IN_Q29;
+ hIvasEditableParameters->ism_metadata[obj].gain_fx = st_ivas->hIsmMetaData[obj]->edited_gain_fx;
+ hIvasEditableParameters->ism_metadata[obj].non_diegetic_flag = st_ivas->hIsmMetaData[obj]->non_diegetic_flag;
+ move32();
+ move32();
+ move16();
+ }
+ }
+#ifdef NONBE_1217_INIT_OBJ_EDIT
+ ELSE IF( EQ_32( ism_mode, ISM_MASA_MODE_MASA_ONE_OBJ ) || EQ_32( ism_mode, ISM_MODE_NONE ) )
+ {
+ hIvasEditableParameters->num_obj = 0;
+ move16();
+ }
+#ifdef DEBUGGING
+ ELSE
+ {
+ assert( 0 && "This should never happen!" );
+ }
+#endif
+#endif
+ }
+
+ return IVAS_ERR_OK;
+}
+
+
+/*---------------------------------------------------------------------*
+ * IVAS_DEC_SetEditableParameters( )
+ *
+ * Main function to decode to PCM data
+ *---------------------------------------------------------------------*/
+
+ivas_error IVAS_DEC_SetEditableParameters(
+ IVAS_DEC_HANDLE hIvasDec,
+ IVAS_EDITABLE_PARAMETERS hIvasEditableParameters )
+{
+ Word16 dirac_read_idx, obj;
+ Decoder_Struct *st_ivas;
+ ISM_MODE ism_mode;
+
test();
- if ( hIvasEditableParameters == NULL || hIvasDec == NULL || hIvasDec->st_ivas == NULL )
+ IF( hIvasDec == NULL || hIvasDec->st_ivas == NULL )
{
return IVAS_ERR_UNEXPECTED_NULL_POINTER;
}
@@ -4008,146 +4340,273 @@ ivas_error IVAS_DEC_GetEditableParameters(
#ifdef NONBE_1293_CRASH_FIRST_FRAME_LOST
IF( !hIvasDec->hasBeenFedFirstGoodFrame )
{
- hIvasEditableParameters->num_obj = 0;
- move16();
-
return IVAS_ERR_OK;
}
#endif
- hIvasEditableParameters->gain_bed_fx = ONE_IN_Q30;
- move32();
- hIvasEditableParameters->num_obj = hIvasDec->st_ivas->nchan_ism;
- move16();
+ st_ivas = hIvasDec->st_ivas;
+ ism_mode = st_ivas->ism_mode;
+
+ test();
+ test();
+ test();
+ test();
+#ifdef NONBE_1217_INIT_OBJ_EDIT
+ IF( !( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) ||
+ EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) ||
+ EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) ||
+ ( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) && GT_16( st_ivas->nchan_ism, 0 ) ) ) )
+#else
test();
test();
- if ( hIvasDec->st_ivas->ivas_format == ISM_FORMAT || hIvasDec->st_ivas->ivas_format == SBA_ISM_FORMAT )
+ IF( !( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) ||
+ ( EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) && EQ_32( ism_mode, ISM_SBA_MODE_DISC ) ) ||
+ ( EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) && ( EQ_32( ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) || EQ_32( ism_mode, ISM_MASA_MODE_DISC ) ) ) ) ||
+ EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_EXTERNAL ) )
+#endif
{
- if ( hIvasDec->st_ivas->ism_mode == ISM_MODE_DISC || hIvasDec->st_ivas->ism_mode == ISM_SBA_MODE_DISC )
+ return IVAS_ERROR( IVAS_ERR_WRONG_MODE, "Object editing no supported in this operation mode." );
+ }
+
+ test();
+ test();
+ test();
+ IF( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) || EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) )
+ {
+ test();
+ IF( EQ_32( ism_mode, ISM_MODE_DISC ) || EQ_32( ism_mode, ISM_SBA_MODE_DISC ) )
{
- Word16 obj;
- for ( obj = 0; obj < hIvasEditableParameters->num_obj; obj++ )
+#ifdef DEBUGGING
+ assert( hIvasEditableParameters.num_obj == st_ivas->nchan_ism );
+#endif
+ FOR( obj = 0; obj < hIvasEditableParameters.num_obj; obj++ )
{
- hIvasEditableParameters->ism_metadata[obj].azimuth_fx = hIvasDec->st_ivas->hIsmMetaData[obj]->azimuth_fx;
+ st_ivas->hIsmMetaData[obj]->edited_azimuth_fx = hIvasEditableParameters.ism_metadata[obj].azimuth_fx;
move32();
- hIvasEditableParameters->ism_metadata[obj].elevation_fx = hIvasDec->st_ivas->hIsmMetaData[obj]->elevation_fx;
+ st_ivas->hIsmMetaData[obj]->edited_elevation_fx = hIvasEditableParameters.ism_metadata[obj].elevation_fx;
move32();
- hIvasEditableParameters->ism_metadata[obj].yaw_fx = hIvasDec->st_ivas->hIsmMetaData[obj]->yaw_fx;
+ st_ivas->hIsmMetaData[obj]->edited_radius_fx = hIvasEditableParameters.ism_metadata[obj].radius_fx;
move32();
- hIvasEditableParameters->ism_metadata[obj].pitch_fx = hIvasDec->st_ivas->hIsmMetaData[obj]->pitch_fx;
+ st_ivas->hIsmMetaData[obj]->edited_gain_fx = hIvasEditableParameters.ism_metadata[obj].gain_fx;
move32();
- hIvasEditableParameters->ism_metadata[obj].radius_fx = hIvasDec->st_ivas->hIsmMetaData[obj]->radius_fx;
- move16();
- hIvasEditableParameters->ism_metadata[obj].gain_fx = hIvasDec->st_ivas->hIsmMetaData[obj]->edited_gain_fx;
+ st_ivas->hIsmMetaData[obj]->edited_yaw_fx = hIvasEditableParameters.ism_metadata[obj].yaw_fx;
+ move32();
+ st_ivas->hIsmMetaData[obj]->edited_pitch_fx = hIvasEditableParameters.ism_metadata[obj].pitch_fx;
move32();
- hIvasEditableParameters->ism_metadata[obj].non_diegetic_flag = hIvasDec->st_ivas->hIsmMetaData[obj]->non_diegetic_flag;
+ st_ivas->hIsmMetaData[obj]->non_diegetic_flag = hIvasEditableParameters.ism_metadata[obj].non_diegetic_flag;
move16();
}
- if ( hIvasDec->st_ivas->ism_mode == ISM_SBA_MODE_DISC )
+
+ IF( EQ_32( ism_mode, ISM_SBA_MODE_DISC ) )
+ {
+ st_ivas->hSbaIsmData->gain_bed_fx = hIvasEditableParameters.gain_bed_fx;
+ move32();
+ }
+ }
+ ELSE IF( EQ_32( ism_mode, ISM_MODE_PARAM ) )
+ {
+#ifdef DEBUGGING
+ assert( hIvasEditableParameters.num_obj == st_ivas->nchan_ism );
+#endif
+ FOR( obj = 0; obj < hIvasEditableParameters.num_obj; obj++ )
+ {
+ st_ivas->hParamIsmDec->edited_azimuth_values_fx[obj] = hIvasEditableParameters.ism_metadata[obj].azimuth_fx;
+ move32();
+ st_ivas->hParamIsmDec->edited_elevation_values_fx[obj] = hIvasEditableParameters.ism_metadata[obj].elevation_fx;
+ move32();
+#ifdef NONBE_1217_OBJ_EDIT_FOA
+ IF( st_ivas->hMasaIsmData != NULL )
+ {
+#endif
+ st_ivas->hMasaIsmData->gain_ism_edited_fx[obj] = shr( extract_h( hIvasEditableParameters.ism_metadata[obj].gain_fx ), Q1 ); // Q29 -> Q12
+ move32();
+
+ /* Detect direction editing in Param-ISM mode */
+ IF( GT_32( L_abs( L_sub( st_ivas->hParamIsmDec->azimuth_values_fx[obj], hIvasEditableParameters.ism_metadata[obj].azimuth_fx ) ), OMASA_AZI_EDIT_THR_FX ) ||
+ GT_32( L_abs( L_sub( st_ivas->hParamIsmDec->elevation_values_fx[obj], hIvasEditableParameters.ism_metadata[obj].elevation_fx ) ), OMASA_ELE_EDIT_THR_FX ) )
+ {
+ st_ivas->hMasaIsmData->ism_dir_is_edited[obj] = 1;
+ }
+ ELSE
+ {
+ st_ivas->hMasaIsmData->ism_dir_is_edited[obj] = 0;
+ }
+ move16();
+
+ /* Detect gain editing in Param-ISM mode */
+ IF( GT_16( abs_s( sub( ONE_IN_Q12, shr( extract_h( hIvasEditableParameters.ism_metadata[obj].gain_fx ), Q1 ) ) ), OMASA_GAIN_EDIT_THR_FX ) ) // TODO: check Q values
+ {
+ st_ivas->hMasaIsmData->ism_gain_is_edited[obj] = 1;
+ }
+ ELSE
+ {
+ st_ivas->hMasaIsmData->ism_gain_is_edited[obj] = 0;
+ }
+ move16();
+#ifdef NONBE_1217_OBJ_EDIT_FOA
+ }
+#endif
+ }
+
+#ifdef NONBE_1217_OBJ_EDIT_FOA
+ IF( st_ivas->hMasaIsmData != NULL )
{
- hIvasEditableParameters->gain_bed_fx = ONE_IN_Q30;
- move32();
+#endif
+ /* MASA is not present with the ISM format */
+ st_ivas->hMasaIsmData->masa_gain_is_edited = 0;
+ move16();
+#ifdef NONBE_1217_OBJ_EDIT_FOA
}
+#endif
}
- else if ( hIvasDec->st_ivas->ism_mode == ISM_MODE_PARAM )
+ ELSE IF( EQ_32( ism_mode, ISM_MODE_NONE ) )
{
- Word16 obj;
- for ( obj = 0; obj < hIvasEditableParameters->num_obj; obj++ )
+ IF( NE_16( hIvasEditableParameters.num_obj, 0 ) )
{
- hIvasEditableParameters->ism_metadata[obj].azimuth_fx = hIvasDec->st_ivas->hParamIsmDec->azimuth_values_fx[obj];
- move32();
- hIvasEditableParameters->ism_metadata[obj].elevation_fx = hIvasDec->st_ivas->hParamIsmDec->elevation_values_fx[obj];
- move32();
- hIvasEditableParameters->ism_metadata[obj].yaw_fx = 0;
- move32();
- hIvasEditableParameters->ism_metadata[obj].pitch_fx = 0;
- move32();
- hIvasEditableParameters->ism_metadata[obj].radius_fx = 0;
- move16();
- hIvasEditableParameters->ism_metadata[obj].gain_fx = ONE_IN_Q31;
- move32();
- hIvasEditableParameters->ism_metadata[obj].non_diegetic_flag = 0;
- move16();
+ return IVAS_ERR_OBJECTS_EDITING_NOT_SUPPORTED;
}
}
- else
+#ifdef DEBUGGING
+ ELSE
{
assert( 0 && "This should never happen!" );
}
+#endif
}
-
- return IVAS_ERR_OK;
-}
-
-
-/*---------------------------------------------------------------------*
- * IVAS_DEC_SetEditableParameters( )
- *
- * Main function to decode to PCM data
- *---------------------------------------------------------------------*/
-
-ivas_error IVAS_DEC_SetEditableParameters(
- IVAS_DEC_HANDLE hIvasDec,
- IVAS_EDITABLE_PARAMETERS hIvasEditableParameters )
-{
- if ( !( hIvasDec->st_ivas->ivas_format == ISM_FORMAT ||
- ( hIvasDec->st_ivas->ivas_format == SBA_ISM_FORMAT && hIvasDec->st_ivas->ism_mode == ISM_SBA_MODE_DISC ) ||
- ( hIvasDec->st_ivas->ivas_format == MASA_ISM_FORMAT && ( hIvasDec->st_ivas->ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ || hIvasDec->st_ivas->ism_mode == ISM_MASA_MODE_DISC ) ) ) ||
- hIvasDec->st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_EXTERNAL )
- {
- return IVAS_ERROR( IVAS_ERR_WRONG_MODE, "Object editing no supported in this operation mode." );
- }
-
- if ( hIvasDec == NULL || hIvasDec->st_ivas == NULL )
+ ELSE IF( EQ_16( st_ivas->ivas_format, MASA_ISM_FORMAT ) && ( EQ_16( ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) || EQ_16( ism_mode, ISM_MASA_MODE_DISC ) ) )
{
- return IVAS_ERR_UNEXPECTED_NULL_POINTER;
- }
+ Word32 id_th;
+ Word32 threshold_azi, threshold_ele;
-#ifdef NONBE_1293_CRASH_FIRST_FRAME_LOST
- IF( !hIvasDec->hasBeenFedFirstGoodFrame )
- {
- return IVAS_ERR_OK;
- }
-#endif
#ifdef DEBUGGING
- assert( hIvasEditableParameters.num_obj == hIvasDec->st_ivas->nchan_ism );
+ assert( hIvasEditableParameters.num_obj == st_ivas->nchan_ism );
#endif
-
- if ( hIvasDec->st_ivas->ivas_format == ISM_FORMAT || hIvasDec->st_ivas->ivas_format == SBA_ISM_FORMAT )
- {
- if ( hIvasDec->st_ivas->ism_mode == ISM_MODE_DISC || hIvasDec->st_ivas->ism_mode == ISM_SBA_MODE_DISC )
+ FOR( obj = 0; obj < hIvasEditableParameters.num_obj; obj++ )
{
- int16_t obj;
- for ( obj = 0; obj < hIvasEditableParameters.num_obj; obj++ )
+ IF( st_ivas->hMasaIsmData != NULL )
{
- hIvasDec->st_ivas->hIsmMetaData[obj]->edited_azimuth_fx = hIvasEditableParameters.ism_metadata[obj].azimuth_fx;
- hIvasDec->st_ivas->hIsmMetaData[obj]->edited_elevation_fx = hIvasEditableParameters.ism_metadata[obj].elevation_fx;
- hIvasDec->st_ivas->hIsmMetaData[obj]->edited_radius_fx = hIvasEditableParameters.ism_metadata[obj].radius_fx;
+ /* copy relevant fields also to OMASA structs, but only if the value has been changed. original values are in st_ivas->hIsmMetaData */
+ /* first, need to convert float values to ints used internally */
+ Word16 new_azi, new_ele;
+
+ new_azi = extract_l( L_shr( L_add( L_abs( hIvasEditableParameters.ism_metadata[obj].azimuth_fx ), 2097152 ), Q22 ) ); // Q22->Q0
+ IF( LT_32( hIvasEditableParameters.ism_metadata[obj].azimuth_fx, 0 ) )
+ {
+ new_azi = negate( new_azi );
+ }
+
+ new_ele = extract_l( L_shr( L_add( L_abs( hIvasEditableParameters.ism_metadata[obj].elevation_fx ), 2097152 ), Q22 ) ); // Q22->Q0
+ IF( LT_32( hIvasEditableParameters.ism_metadata[obj].elevation_fx, 0 ) )
+ {
+ new_ele = negate( new_ele );
+ }
+
+ IF( EQ_16( ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) )
+ {
+ /* Handle MONO output */
+ IF( NE_16( st_ivas->renderer_type, RENDERER_MONO_DOWNMIX ) )
+ {
+ dirac_read_idx = st_ivas->hSpatParamRendCom->render_to_md_map[st_ivas->hSpatParamRendCom->subframes_rendered];
+ }
+ ELSE
+ {
+ dirac_read_idx = 0;
+ }
+ move16();
+
+ /* determine thresholds for detecting object metadata edit for direction based on quantization resolution of the spatial direction parameters.
+ * these depend from the number of bits used to transmit the directions,
+ * which in turn depends from the object priority and importance:
+ * importance -> priority -> number of bits -> elevation resolution -> elevation ring index -> azimuth resolution.
+ * leading to elevation_resolution -> elevation threshold and azimuth resolution -> azimuth threshold */
+ id_th = extract_l( L_shr( L_add( Mpy_32_16_1( delta_theta_masa_inv_fx[st_ivas->hMasaIsmData->bits_ism[obj] - 3], abs_s( st_ivas->hMasaIsmData->elevation_ism_fx[obj][dirac_read_idx] ) ), 32768 ), 16 ) ); // + 0.5f in Q16
+ threshold_azi = Mpy_32_32( 1509949440, no_phi_masa_inv_fx[st_ivas->hMasaIsmData->bits_ism[obj] - 1][id_th] ); // Q = 22;
+ threshold_ele = delta_theta_masa_fx[st_ivas->hMasaIsmData->bits_ism[obj] - 3];
+
+ test();
+ IF( ( GT_32( L_shl( abs_s( sub( new_azi, st_ivas->hMasaIsmData->azimuth_ism_fx[obj][dirac_read_idx] ) ), 22 ), threshold_azi ) ) ||
+ ( GT_32( L_shl( abs_s( sub( new_ele, st_ivas->hMasaIsmData->elevation_ism_fx[obj][dirac_read_idx] ) ), 22 ), threshold_ele ) ) )
+ {
+ /* at least one of the threshold is exceeded, so use new direction value and set editing detection flag */
+ st_ivas->hMasaIsmData->azimuth_ism_edited_fx[obj] = new_azi;
+ move32();
+ st_ivas->hMasaIsmData->elevation_ism_edited_fx[obj] = new_ele;
+ move32();
- hIvasDec->st_ivas->hIsmMetaData[obj]->edited_gain_fx = hIvasEditableParameters.ism_metadata[obj].gain_fx;
+ st_ivas->hMasaIsmData->ism_dir_is_edited[obj] = 1;
+ }
+ ELSE
+ {
+ st_ivas->hMasaIsmData->ism_dir_is_edited[obj] = 0;
+ }
+ move16();
+ }
+ ELSE
+ {
+ /* detect editing in ISM_MASA_MODE_DISC. optionally, add quantization-resolution -based thresholds */
+ test();
+ IF( L_abs( L_sub( st_ivas->hIsmMetaData[obj]->azimuth_fx, hIvasEditableParameters.ism_metadata[obj].azimuth_fx ) ) > OMASA_AZI_EDIT_THR_FX ||
+ L_abs( L_sub( st_ivas->hIsmMetaData[obj]->elevation_fx, hIvasEditableParameters.ism_metadata[obj].elevation_fx ) ) > OMASA_ELE_EDIT_THR_FX )
+ {
+ st_ivas->hMasaIsmData->azimuth_ism_edited_fx[obj] = new_azi;
+ move32();
+ st_ivas->hMasaIsmData->elevation_ism_edited_fx[obj] = new_ele;
+ move32();
- hIvasDec->st_ivas->hIsmMetaData[obj]->edited_yaw_fx = hIvasEditableParameters.ism_metadata[obj].yaw_fx;
- hIvasDec->st_ivas->hIsmMetaData[obj]->edited_pitch_fx = hIvasEditableParameters.ism_metadata[obj].pitch_fx;
+ st_ivas->hMasaIsmData->ism_dir_is_edited[obj] = 1;
+ }
+ ELSE
+ {
+ st_ivas->hMasaIsmData->ism_dir_is_edited[obj] = 0;
+ }
+ move16();
+ }
- hIvasDec->st_ivas->hIsmMetaData[obj]->non_diegetic_flag = hIvasEditableParameters.ism_metadata[obj].non_diegetic_flag;
+ /* compare pre-edit gain and the edited one to detect editing */
+ IF( GT_16( abs_s( sub( shr( extract_h( st_ivas->hIsmMetaData[obj]->edited_gain_fx ), Q1 ), shr( extract_h( hIvasEditableParameters.ism_metadata[obj].gain_fx ), Q1 ) ) ), OMASA_GAIN_EDIT_THR_FX ) ) // TODO: check incoming Q value
+ {
+ st_ivas->hMasaIsmData->ism_gain_is_edited[obj] = 1;
+ st_ivas->hMasaIsmData->gain_ism_edited_fx[obj] = shr( extract_h( hIvasEditableParameters.ism_metadata[obj].gain_fx ), Q1 ); // Q29 --> Q12
+ move16();
+ }
+ ELSE
+ {
+ st_ivas->hMasaIsmData->ism_gain_is_edited[obj] = 0u;
+ }
+ move32();
}
- if ( hIvasDec->st_ivas->ism_mode == ISM_SBA_MODE_DISC )
+ /* Copy edited values to hIsmMetaData struct */
+ IF( st_ivas->hIsmMetaData[obj] != NULL )
{
- hIvasDec->st_ivas->hSbaIsmData->gain_bed_fx = hIvasEditableParameters.gain_bed_fx;
+ st_ivas->hIsmMetaData[obj]->azimuth_fx = hIvasEditableParameters.ism_metadata[obj].azimuth_fx;
+ move32();
+ st_ivas->hIsmMetaData[obj]->elevation_fx = hIvasEditableParameters.ism_metadata[obj].elevation_fx;
+ move32();
+ st_ivas->hIsmMetaData[obj]->yaw_fx = hIvasEditableParameters.ism_metadata[obj].yaw_fx;
+ move32();
+ st_ivas->hIsmMetaData[obj]->pitch_fx = hIvasEditableParameters.ism_metadata[obj].pitch_fx;
+ move32();
+ st_ivas->hIsmMetaData[obj]->radius_fx = hIvasEditableParameters.ism_metadata[obj].radius_fx;
+ move32();
+ st_ivas->hIsmMetaData[obj]->edited_gain_fx = hIvasEditableParameters.ism_metadata[obj].gain_fx; // TODO: check incoming Q value
+ move32();
+ st_ivas->hIsmMetaData[obj]->non_diegetic_flag = hIvasEditableParameters.ism_metadata[obj].non_diegetic_flag;
+ move16();
}
}
- else if ( hIvasDec->st_ivas->ism_mode == ISM_MODE_PARAM )
+
+ IF( GT_16( abs_s( sub( shr( extract_h( hIvasEditableParameters.gain_bed_fx ), Q1 ), ONE_IN_Q12 ) ), OMASA_GAIN_EDIT_THR_FX ) ) // TODO: check Q value
{
- int16_t obj;
- for ( obj = 0; obj < hIvasEditableParameters.num_obj; obj++ )
- {
- }
+ st_ivas->hMasaIsmData->gain_masa_edited_fx = shr( extract_h( hIvasEditableParameters.gain_bed_fx ), Q1 ); // TODO: check type
+ move32();
+ st_ivas->hMasaIsmData->masa_gain_is_edited = 1;
}
- else
+ ELSE
{
- assert( 0 && "This should never happen!" );
+ st_ivas->hMasaIsmData->masa_gain_is_edited = 0;
}
+ move16();
}
return IVAS_ERR_OK;
@@ -4157,13 +4616,15 @@ ivas_error IVAS_DEC_SetEditableParameters(
/*---------------------------------------------------------------------*
* IVAS_DEC_PrepareRenderer( )
*
- * Main function to decode to PCM data
+ * prepare IVAS renderer
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_PrepareRenderer(
- IVAS_DEC_HANDLE hIvasDec )
+ IVAS_DEC_HANDLE hIvasDec /* i/o: IVAS decoder handle */
+)
{
- if ( hIvasDec == NULL )
+ test();
+ IF( hIvasDec == NULL || hIvasDec->st_ivas == NULL )
{
return IVAS_ERR_UNEXPECTED_NULL_POINTER;
}
@@ -4173,14 +4634,15 @@ ivas_error IVAS_DEC_PrepareRenderer(
IF( hIvasDec->hasBeenFedFirstGoodFrame || hIvasDec->isInitialized ) /* note: 'isInitialized' is related to EVS decoder */
#endif
{
- ivas_jbm_dec_prepare_renderer( hIvasDec->st_ivas );
+ ivas_dec_prepare_renderer_fx( hIvasDec->st_ivas );
}
hIvasDec->hasBeenPreparedRendering = true;
+ move16();
return IVAS_ERR_OK;
}
-#endif
+
/*---------------------------------------------------------------------*
* IVAS_DEC_VoIP_GetSamples( )
@@ -4189,27 +4651,17 @@ ivas_error IVAS_DEC_PrepareRenderer(
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_VoIP_GetSamples(
- IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
- UWord16 nSamplesPerChannel, /* i : number of samples per channel requested to be written to output buffer */
- Word16 *pcmBuf, /* i/o: buffer for decoded PCM output. The memory must already be allocated and be able to hold the expected number of output samples, based on frame size and number of output channels Q0 */
- const UWord32 systemTimestamp_ms, /* i : current system timestamp */
-#ifdef FIX_CREND_SIMPLIFY_CODE
+ IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
+ UWord16 nSamplesPerChannel, /* i : number of samples per channel requested to be written to output buffer */
+ Word16 *pcmBuf, /* i/o: buffer for decoded PCM output. The memory must already be allocated and be able to hold the expected number of output samples, based on frame size and number of output channels Q0 */
#ifdef SUPPORT_JBM_TRACEFILE
JbmTraceFileWriterFn jbmWriterFn,
void *jbmWriter,
#endif
- bool *bitstreamReadDone, /* o : that bitstream was read */
- UWord16 *nSamplesRendered /* o : number of samples rendered */
-#else
-#ifdef SUPPORT_JBM_TRACEFILE
- JbmTraceFileWriterFn jbmWriterFn,
- void *jbmWriter
-#endif
-#endif
-#ifdef OBJ_EDITING_API
- ,
- bool *parametersAvailableForEditing
-#endif
+ bool *bitstreamReadDone, /* o : flag indicating that bitstream was read */
+ UWord16 *nSamplesRendered, /* o : number of samples rendered */
+ bool *parametersAvailableForEditing, /* o : indicates whether objects editing is available */
+ const UWord32 systemTimestamp_ms /* i : current system timestamp */
)
{
Decoder_Struct *st_ivas;
@@ -4220,15 +4672,11 @@ ivas_error IVAS_DEC_VoIP_GetSamples(
UWord16 extBufferedSamples;
Word16 result;
ivas_error error;
-#ifndef FIX_CREND_SIMPLIFY_CODE
- Word16 nSamplesRendered;
-#endif
-#ifdef OBJ_EDITING_API
- *parametersAvailableForEditing = false;
-#endif
-
UWord8 nOutChannels;
+ *parametersAvailableForEditing = false;
+ move16();
+
test();
test();
IF( hIvasDec == NULL || hIvasDec->st_ivas == NULL || hIvasDec->hVoIP == NULL )
@@ -4240,11 +4688,6 @@ ivas_error IVAS_DEC_VoIP_GetSamples(
hDecoderConfig = st_ivas->hDecoderConfig;
hVoIP = hIvasDec->hVoIP;
nOutChannels = (UWord8) st_ivas->hDecoderConfig->nchan_out;
-#ifndef FIX_CREND_SIMPLIFY_CODE
- nSamplesRendered = 0;
- move16();
- move16();
-#endif
move16();
IF( nSamplesPerChannel == 0 )
@@ -4261,18 +4704,27 @@ ivas_error IVAS_DEC_VoIP_GetSamples(
}
#endif
-/* make sure that the FIFO after decoder/scaler contains at least one sound card frame (i.e. 20ms) */
-#ifdef FIX_CREND_SIMPLIFY_CODE
+ /* make sure that the FIFO after decoder/scaler contains at least one sound card frame (i.e. 20ms) */
WHILE( LT_16( *nSamplesRendered, nSamplesPerChannel ) )
-#else
- WHILE( LT_16( nSamplesRendered, nSamplesPerChannel ) )
-#endif
{
IF( hIvasDec->nSamplesAvailableNext == 0 )
{
Word16 nSamplesBuffered;
nSamplesBuffered = 0;
move16();
+
+#ifdef LIB_DEC_REVISION
+ IF( hIvasDec->hasBeenFedFirstGoodFrame )
+ {
+ /* check if the TC buffer already exists, otherweise nothing is buffered anyway */
+
+ IF( st_ivas->hTcBuffer != NULL )
+ {
+ nSamplesBuffered = sub( st_ivas->hTcBuffer->n_samples_buffered, st_ivas->hTcBuffer->n_samples_rendered );
+ nSamplesBuffered = add( nSamplesBuffered, hVoIP->nSamplesRendered20ms );
+ }
+ }
+#else
IF( hIvasDec->hasBeenFedFirstGoodFrame )
{
IF( NE_32( ( error = IVAS_DEC_GetBufferedNumberOfSamples( hIvasDec, &nSamplesBuffered ) ), IVAS_ERR_OK ) )
@@ -4280,6 +4732,7 @@ ivas_error IVAS_DEC_VoIP_GetSamples(
return error;
}
}
+#endif
extBufferedSamples = nSamplesBuffered;
move16();
@@ -4352,9 +4805,7 @@ ivas_error IVAS_DEC_VoIP_GetSamples(
return error;
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
*bitstreamReadDone = true;
-#endif
}
ELSE IF( hIvasDec->hasDecodedFirstGoodFrame )
{
@@ -4395,7 +4846,6 @@ ivas_error IVAS_DEC_VoIP_GetSamples(
JB4_FreeDataUnit( hVoIP->hJBM, dataUnit );
}
-#ifdef FIX_HRTF_LOAD
test();
IF( hIvasDec->hasBeenFedFirstGoodFrame && *bitstreamReadDone == true )
{
@@ -4403,20 +4853,21 @@ ivas_error IVAS_DEC_VoIP_GetSamples(
return IVAS_ERR_OK;
}
-#endif
IF( !hIvasDec->hasBeenFedFirstGoodFrame )
{
hIvasDec->nSamplesAvailableNext = hIvasDec->nSamplesFrame;
+#ifndef LIB_DEC_REVISION
hIvasDec->nSamplesRendered = 0;
move16();
+#endif
move16();
}
-
-#ifdef OBJ_EDITING_API
- /* :TODO: only return here if we really have editing initialized */
- if ( hIvasDec->hasBeenFedFirstGoodFrame && hIvasDec->hasEditableParameters == true && hIvasDec->enableParameterEditing == true )
+#ifndef NONBE_FIX_1255_OBJ_EDIT_JBM
+ IF( hIvasDec->hasBeenFedFirstGoodFrame )
{
*parametersAvailableForEditing = true;
+ move16();
+
return IVAS_ERR_OK;
}
#endif
@@ -4428,14 +4879,11 @@ ivas_error IVAS_DEC_VoIP_GetSamples(
/* codec mode to use not known yet - simply output silence */
/* directly set output zero */
Word16 nSamplesToZero = s_min( nSamplesPerChannel, hIvasDec->nSamplesAvailableNext );
-#ifdef FIX_CREND_SIMPLIFY_CODE
set16_fx( pcmBuf + imult1616( *nSamplesRendered, nOutChannels ), 0, imult1616( nSamplesToZero, nOutChannels ) );
*nSamplesRendered = add( *nSamplesRendered, nSamplesToZero );
-#else
- set16_fx( pcmBuf + imult1616( nSamplesRendered, nOutChannels ), 0, imult1616( nSamplesToZero, nOutChannels ) );
- nSamplesRendered = add( nSamplesRendered, nSamplesToZero );
-#endif
+#ifndef LIB_DEC_REVISION
hIvasDec->nSamplesRendered = add( hIvasDec->nSamplesRendered, nSamplesToZero );
+#endif
hIvasDec->nSamplesAvailableNext = sub( hIvasDec->nSamplesAvailableNext, nSamplesToZero );
move16();
move16();
@@ -4446,64 +4894,57 @@ ivas_error IVAS_DEC_VoIP_GetSamples(
Word16 nSamplesToRender, nSamplesRendered_loop;
bool tmp;
-#ifdef FIX_HRTF_LOAD_API
- if ( !hIvasDec->isInitialized || hIvasDec->hasBeenFedFrame )
+ /* decode TCs, do TSM and prepare the renderer */
+ test();
+ IF( !hIvasDec->isInitialized || hIvasDec->hasBeenFedFrame )
{
- if ( hIvasDec->nSamplesAvailableNext == 0 || hIvasDec->nSamplesAvailableNext == hIvasDec->nSamplesFrame )
+ test();
+ IF( hIvasDec->nSamplesAvailableNext == 0 || EQ_16( hIvasDec->nSamplesAvailableNext, hIvasDec->nSamplesFrame ) )
{
+#ifndef LIB_DEC_REVISION
uint16_t nSamplesFlushed_ref = hIvasDec->nSamplesFlushed;
-
- if ( ( error = IVAS_DEC_GetSamplesDecoder( hIvasDec, 0, 0 ) ) != IVAS_ERR_OK )
+#endif
+ IF( ( error = IVAS_DEC_GetSamplesDecoder( hIvasDec, 0, 0 ) ) != IVAS_ERR_OK )
{
return error;
}
+#ifndef LIB_DEC_REVISION
hIvasDec->nSamplesFlushed = nSamplesFlushed_ref;
-
+ move16();
+#endif
*bitstreamReadDone = false;
+ move16();
+#ifdef NONBE_FIX_1255_OBJ_EDIT_JBM
+ *parametersAvailableForEditing = true;
+ move16();
+ return IVAS_ERR_OK;
+#endif
}
}
-#endif
-#ifdef FIX_CREND_SIMPLIFY_CODE
nSamplesToRender = sub( nSamplesPerChannel, *nSamplesRendered );
-#else
- nSamplesToRender = sub( nSamplesPerChannel, nSamplesRendered );
-#endif
-#ifdef OBJ_EDITING_API
/* check if we still need to prepare the renderer */
IF( hIvasDec->hasBeenPreparedRendering == false )
{
-
IF( NE_32( ( error = IVAS_DEC_PrepareRenderer( hIvasDec ) ), IVAS_ERR_OK ) )
{
return error;
}
}
-#endif
/* render IVAS frames directly to the output buffer */
-#ifdef FIX_CREND_SIMPLIFY_CODE
- IF( NE_32( ( error = IVAS_DEC_GetSamples( hIvasDec, nSamplesToRender, pcmBuf + imult1616( *nSamplesRendered, nOutChannels ), &nSamplesRendered_loop, &tmp ) ), IVAS_ERR_OK ) )
+#ifdef LIB_DEC_REVISION
+ IF( NE_32( ( error = IVAS_DEC_GetSamplesRenderer( hIvasDec, nSamplesToRender, pcmBuf + imult1616( *nSamplesRendered, nOutChannels ), &nSamplesRendered_loop, &tmp ) ), IVAS_ERR_OK ) )
#else
- IF( NE_32( ( error = IVAS_DEC_GetSamples( hIvasDec, nSamplesToRender, pcmBuf + imult1616( nSamplesRendered, nOutChannels ), &nSamplesRendered_loop, &tmp ) ), IVAS_ERR_OK ) )
+ IF( NE_32( ( error = IVAS_DEC_GetSamples( hIvasDec, nSamplesToRender, pcmBuf + imult1616( *nSamplesRendered, nOutChannels ), &nSamplesRendered_loop, &tmp ) ), IVAS_ERR_OK ) )
#endif
{
return error;
}
-#ifndef FIX_HRTF_LOAD_API
-#ifdef FIX_HRTF_LOAD
- *bitstreamReadDone = false; // temp hack until JBM API is reworked
-#endif
-#endif
-
-#ifdef FIX_CREND_SIMPLIFY_CODE
*nSamplesRendered = add( *nSamplesRendered, nSamplesRendered_loop );
-#else
- nSamplesRendered = add( nSamplesRendered, nSamplesRendered_loop );
-#endif
update_voip_rendered20ms( hIvasDec, nSamplesRendered_loop );
}
}
@@ -4515,7 +4956,7 @@ ivas_error IVAS_DEC_VoIP_GetSamples(
/*---------------------------------------------------------------------*
* update_voip_rendered20ms( )
*
- * Function to flush remaining audio in VoIP
+ * pdate the number of samples that have been rendered since the last 20ms render border
*---------------------------------------------------------------------*/
static void update_voip_rendered20ms(
@@ -4527,7 +4968,11 @@ static void update_voip_rendered20ms(
nSamplesRenderedTotal = add( hIvasDec->hVoIP->nSamplesRendered20ms, nSamplesRendered );
/* we have crossed a 20ms border, reset the time scaling done flag */
+#ifdef LIB_DEC_REVISION
+ IF( GE_16( nSamplesRenderedTotal, hIvasDec->nSamplesFrame ) )
+#else
IF( GE_16( nSamplesRenderedTotal, hIvasDec->hVoIP->nSamplesFrame ) )
+#endif
{
hIvasDec->timeScalingDone = 0;
move16();
@@ -4536,9 +4981,17 @@ static void update_voip_rendered20ms(
/* float code was: hIvasDec->hVoIP->nSamplesRendered20ms = nSamplesRenderedTotal % hIvasDec->hVoIP->nSamplesFrame; */
hIvasDec->hVoIP->nSamplesRendered20ms = nSamplesRenderedTotal;
move16();
+#ifdef LIB_DEC_REVISION
+ WHILE( GE_16( hIvasDec->hVoIP->nSamplesRendered20ms, hIvasDec->nSamplesFrame ) )
+#else
WHILE( GE_16( hIvasDec->hVoIP->nSamplesRendered20ms, hIvasDec->hVoIP->nSamplesFrame ) )
+#endif
{
+#ifdef LIB_DEC_REVISION
+ hIvasDec->hVoIP->nSamplesRendered20ms = sub( hIvasDec->hVoIP->nSamplesRendered20ms, hIvasDec->nSamplesFrame );
+#else
hIvasDec->hVoIP->nSamplesRendered20ms = sub( hIvasDec->hVoIP->nSamplesRendered20ms, hIvasDec->hVoIP->nSamplesFrame );
+#endif
}
return;
@@ -4548,7 +5001,7 @@ static void update_voip_rendered20ms(
/*---------------------------------------------------------------------*
* IVAS_DEC_VoIP_Flush( )
*
- * Function to flush remaining audio in VoIP
+ * Function to flush remaining audio samples in VoIP
*---------------------------------------------------------------------*/
ivas_error IVAS_DEC_Flush(
@@ -4561,9 +5014,7 @@ ivas_error IVAS_DEC_Flush(
ivas_error error;
UWord16 nSamplesToRender;
UWord16 nSamplesFlushedLocal;
-#ifdef FIX_HRTF_LOAD
nSamplesFlushedLocal = 0; // temp. hack
-#endif
test();
IF( hIvasDec == NULL || hIvasDec->st_ivas == NULL )
@@ -4584,7 +5035,11 @@ ivas_error IVAS_DEC_Flush(
test();
IF( GT_16( nSamplesToRender, 0 ) && NE_16( (Word16) hIvasDec->st_ivas->ivas_format, (Word16) MONO_FORMAT ) )
{
+#ifdef LIB_DEC_REVISION
+ error = ivas_jbm_dec_render_fx( hIvasDec->st_ivas, nSamplesToRender, &nSamplesFlushedLocal, &hIvasDec->nSamplesAvailableNext, pcmBuf );
+#else
error = IVAS_DEC_GetRenderedSamples( hIvasDec, nSamplesToRender, &nSamplesFlushedLocal, &hIvasDec->nSamplesAvailableNext, pcmBuf );
+#endif
}
ELSE
{
@@ -4645,12 +5100,16 @@ ivas_error IVAS_DEC_VoIP_Get_CA_offset(
/*---------------------------------------------------------------------*
- * IVAS_DEC_Close_VoIP( )
- *
+ * ivas_destroy_handle_VoIP( )
*
+ * Deallocate VoIP handle
*---------------------------------------------------------------------*/
+#ifdef LIB_DEC_REVISION
+static void ivas_destroy_handle_VoIP_fx(
+#else
static void IVAS_DEC_Close_VoIP(
+#endif
IVAS_DEC_VOIP *hVoIP /* i/o: IVAS decoder handle */
)
{
@@ -4944,6 +5403,11 @@ static ivas_error printConfigInfo_dec(
{
fprintf( stdout, "Acoustic environment ID:ON\n" );
}
+
+ IF( st_ivas->hDecoderConfig->Opt_ObjEdit_on )
+ {
+ fprintf( stdout, "Objects editing : ON\n" );
+ }
}
/*-----------------------------------------------------------------*
@@ -5003,16 +5467,23 @@ void IVAS_DEC_PrintDisclaimer( void )
*---------------------------------------------------------------------*/
static ivas_error evs_dec_main_fx(
- Decoder_Struct *st_ivas,
+ Decoder_Struct *st_ivas
+#ifndef LIB_DEC_REVISION
+ ,
const Word16 nOutSamples,
Word32 *Buf_fx, // Q11
Word16 *pcmBuf // Q0
+#endif
)
{
DEC_CORE_HANDLE *hCoreCoder;
Word16 mixer_left_fx, mixer_right_fx;
Word32 *p_output_fx[MAX_OUTPUT_CHANNELS_IN_DIEGETIC_PAN];
+#ifdef LIB_DEC_REVISION
+ Word16 ch, i, nOutSamples;
+#else
Word16 ch, n, i;
+#endif
Word16 output_16[L_FRAME48k];
ivas_error error;
@@ -5021,6 +5492,10 @@ static ivas_error evs_dec_main_fx(
move32();
hCoreCoder[0]->output_frame_fx = extract_l( Mult_32_16( hCoreCoder[0]->output_Fs, INV_FRAME_PER_SEC_Q15 ) ); // Q0
move16();
+#ifdef LIB_DEC_REVISION
+ nOutSamples = hCoreCoder[0]->output_frame_fx;
+ move16();
+#endif
mdct_switching_dec_fx( hCoreCoder[0] );
@@ -5084,10 +5559,30 @@ static ivas_error evs_dec_main_fx(
mixer_left_fx = add( shr( st_ivas->hDecoderConfig->non_diegetic_pan_gain_fx, Q1 ), ONE_IN_Q14 ); // Q14
mixer_right_fx = sub( MAX16B, mixer_left_fx );
- v_multc_fixed_16( p_output_fx[0], mixer_right_fx, p_output_fx[1], nOutSamples ); /* Q11 */
- v_multc_fixed_16( p_output_fx[0], mixer_left_fx, p_output_fx[0], nOutSamples ); /* Q11 */
+ v_multc_fx_16( p_output_fx[0], mixer_right_fx, p_output_fx[1], nOutSamples ); /* Q11 */
+ v_multc_fx_16( p_output_fx[0], mixer_left_fx, p_output_fx[0], nOutSamples ); /* Q11 */
}
+#ifdef LIB_DEC_REVISION
+ IF( st_ivas->hDecoderConfig->Opt_tsm )
+ {
+ /* BE workaround: in order to keep EVS bit-exact wrt. TS 26.443, convert 'float' output data to 'short' before the TSM */
+ Word32 pcm_buf_local[L_FRAME48k];
+
+ FOR( ch = 0; ch < st_ivas->hDecoderConfig->nchan_out; ch++ )
+ {
+ ivas_syn_output_f_fx( &p_output_fx[ch], nOutSamples, 1, pcm_buf_local );
+
+ Copy32( pcm_buf_local, p_output_fx[ch], nOutSamples );
+ }
+ }
+#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
+ ELSE // ToDo: the 'else' branch can be removed once UNIFIED_DECODING_PATHS_LEFTOVERS is merged
+ {
+ ivas_jbm_dec_copy_tc_no_tsm_fx( st_ivas, p_output_fx, nOutSamples );
+ }
+#endif
+#else
IF( !st_ivas->hDecoderConfig->Opt_tsm )
{
ivas_jbm_dec_copy_tc_no_tsm_fx( st_ivas, p_output_fx, nOutSamples );
@@ -5115,6 +5610,7 @@ static ivas_error evs_dec_main_fx(
}
}
}
+#endif
return IVAS_ERR_OK;
}
@@ -5169,6 +5665,18 @@ static ivas_error input_format_API_to_internal(
}
+#ifdef LIB_DEC_REVISION
+/*---------------------------------------------------------------------*
+ * apa_setup()
+ *
+ * Setup APA decoder
+ *---------------------------------------------------------------------*/
+
+static ivas_error apa_setup(
+ IVAS_DEC_HANDLE hIvasDec,
+ const bool isInitialized_voip,
+ const UWord16 nTransportChannels )
+#else
/*---------------------------------------------------------------------*
* IVAS_DEC_VoIP_reconfigure()
*
@@ -5179,18 +5687,29 @@ static ivas_error IVAS_DEC_VoIP_reconfigure(
IVAS_DEC_HANDLE hIvasDec,
const UWord16 nTransportChannels,
const UWord16 l_ts )
+#endif
{
Word16 apa_buffer_size;
+#ifdef LIB_DEC_REVISION
+ UWord16 l_ts;
+
+ l_ts = (UWord16) hIvasDec->st_ivas->hTcBuffer->n_samples_granularity;
+ move16();
+ IF( !isInitialized_voip )
+#else
apa_buffer_size = hIvasDec->nSamplesFrame;
move16();
IF( hIvasDec->apaExecBuffer_fx == NULL )
+#endif
{
DECODER_CONFIG_HANDLE hDecoderConfig;
+#ifndef LIB_DEC_REVISION
IF( hIvasDec->st_ivas->hDecoderConfig->Opt_tsm )
{
+#endif
UWord16 wss, css;
Word32 startQuality;
@@ -5255,32 +5774,35 @@ static ivas_error IVAS_DEC_VoIP_reconfigure(
}
set_zero2_fx( hIvasDec->apaExecBuffer_fx, L_mult0( apa_buffer_size, (Word16) nTransportChannels ) );
+#ifndef LIB_DEC_REVISION
}
+#endif
}
- ELSE
- {
- IF( hIvasDec->st_ivas->hDecoderConfig->Opt_tsm )
- {
- IF( apa_reconfigure( hIvasDec->hTimeScaler, nTransportChannels, l_ts ) != 0 )
- {
+ ELSE{
+#ifndef LIB_DEC_REVISION
+ IF( hIvasDec->st_ivas->hDecoderConfig->Opt_tsm ){
+#endif
+ IF( apa_reconfigure( hIvasDec->hTimeScaler, nTransportChannels, l_ts ) != 0 ){
return IVAS_ERR_INIT_ERROR;
- }
- apa_buffer_size = APA_BUF_PER_CHANNEL;
- move16();
- free( hIvasDec->apaExecBuffer_fx );
- IF( ( hIvasDec->apaExecBuffer_fx = malloc( sizeof( Word32 ) * L_mult0( apa_buffer_size, (Word16) nTransportChannels ) ) ) == NULL )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate VoIP handle" );
- }
- set_zero2_fx( hIvasDec->apaExecBuffer_fx, L_mult0( apa_buffer_size, (Word16) nTransportChannels ) );
- }
- /* realloc apa_exe_buffer */
- }
+}
+apa_buffer_size = APA_BUF_PER_CHANNEL;
+move16();
+free( hIvasDec->apaExecBuffer_fx );
+IF( ( hIvasDec->apaExecBuffer_fx = malloc( sizeof( Word32 ) * L_mult0( apa_buffer_size, (Word16) nTransportChannels ) ) ) == NULL )
+{
+ return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate VoIP handle" );
+}
+set_zero2_fx( hIvasDec->apaExecBuffer_fx, L_mult0( apa_buffer_size, (Word16) nTransportChannels ) );
+#ifndef LIB_DEC_REVISION
+}
+/* realloc apa_exe_buffer */
+#endif
+}
- hIvasDec->nTransportChannelsOld = nTransportChannels;
- move16();
+hIvasDec->nTransportChannelsOld = nTransportChannels;
+move16();
- return IVAS_ERR_OK;
+return IVAS_ERR_OK;
}
@@ -5347,7 +5869,7 @@ ivas_error IVAS_DEC_GetCldfbSamples(
IF( hSplitBinRend->hCldfbDataOut->config != IVAS_AUDIO_CONFIG_INVALID )
{
num_chs = audioCfg2channels( hSplitBinRend->hCldfbDataOut->config );
- maxBand = (int16_t) ( ( CLDFB_NO_CHANNELS_MAX * hIvasDec->st_ivas->hDecoderConfig->output_Fs ) / 48000 );
+ maxBand = (Word16) ( ( CLDFB_NO_CHANNELS_MAX * hIvasDec->st_ivas->hDecoderConfig->output_Fs ) / 48000 );
FOR( slot_idx = 0; slot_idx < CLDFB_NO_COL_MAX; slot_idx++ )
{
@@ -5377,7 +5899,7 @@ ivas_error IVAS_DEC_GetCldfbSamples(
/*-------------------------------------------------------------------*
* ivas_create_handle_isar()
*
- * Initialize IVAS decoder split rend handle
+ * Initialize IVAS decoder split-rendering handle
*-------------------------------------------------------------------*/
static ivas_error ivas_create_handle_isar(
@@ -5386,7 +5908,7 @@ static ivas_error ivas_create_handle_isar(
{
ISAR_DEC_SPLIT_REND_WRAPPER_HANDLE hSplitBinRend;
- if ( ( hSplitBinRend = (ISAR_DEC_SPLIT_REND_WRAPPER_HANDLE) malloc( sizeof( ISAR_DEC_SPLIT_REND_WRAPPER ) ) ) == NULL )
+ IF( ( hSplitBinRend = (ISAR_DEC_SPLIT_REND_WRAPPER_HANDLE) malloc( sizeof( ISAR_DEC_SPLIT_REND_WRAPPER ) ) ) == NULL )
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Cannot allocate memory for IVAS decoder handle" );
}
@@ -5442,7 +5964,7 @@ static void ivas_destroy_handle_isar(
*
*---------------------------------------------------------------------*/
-int16_t IVAS_DEC_is_split_rendering_enabled(
+Word16 IVAS_DEC_is_split_rendering_enabled(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
Word16 *isSplitRend /* o : flag to indicate if split rendering is enabled */
)
@@ -5558,7 +6080,7 @@ static ivas_error ivas_dec_reconfig_split_rend(
FOR( ch = 0; ch < BINAURAL_CHANNELS; ch++ )
{
- if ( ( error = openCldfb_ivas_fx( &( hSplitRendWrapper->hCldfbHandles->cldfbSyn[ch] ), CLDFB_SYNTHESIS, st_ivas->hDecoderConfig->output_Fs, CLDFB_PROTOTYPE_5_00MS, DEC ) ) != IVAS_ERR_OK )
+ IF( ( error = openCldfb_ivas_fx( &( hSplitRendWrapper->hCldfbHandles->cldfbSyn[ch] ), CLDFB_SYNTHESIS, st_ivas->hDecoderConfig->output_Fs, CLDFB_PROTOTYPE_5_00MS, DEC ) ) != IVAS_ERR_OK )
{
return error;
}
@@ -5632,7 +6154,7 @@ static ivas_error ivas_dec_init_split_rend(
#ifdef TMP_FIX_SPLIT_REND
/* note: this is intra-frame heap memory */
- if ( ( st_ivas->hSplitBinRend->hMultiBinCldfbData = (ISAR_DEC_SPLIT_REND_MULTI_BIN_CLDFB_DATA_HANDLE) malloc( sizeof( ISAR_DEC_SPLIT_REND_MULTI_BIN_CLDFB_DATA ) ) ) == NULL )
+ IF( ( st_ivas->hSplitBinRend->hMultiBinCldfbData = (ISAR_DEC_SPLIT_REND_MULTI_BIN_CLDFB_DATA_HANDLE) malloc( sizeof( ISAR_DEC_SPLIT_REND_MULTI_BIN_CLDFB_DATA ) ) ) == NULL )
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Cannot allocate memory for split rendering structure" );
}
@@ -5676,12 +6198,12 @@ static ivas_error ivas_dec_init_split_rend(
/*---------------------------------------------------------------------*
* IVAS_DEC_is_split_rendering_coded_out()
*
- *
+ * Return flag to indicate if split rendering is enabled
*---------------------------------------------------------------------*/
Word16 IVAS_DEC_is_split_rendering_coded_out(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
- int16_t *isSplitCoded /* o : flag to indicate if split rendering is enabled */
+ Word16 *isSplitCoded /* o : flag to indicate if split rendering is enabled */
)
{
Decoder_Struct *st_ivas;
diff --git a/lib_dec/lsf_dec_fx.c b/lib_dec/lsf_dec_fx.c
index 913543db8c6b90d0f51beb13a097845f34b0b746..ec45dbae965bd56524cd22c57877730bb79a7afe 100644
--- a/lib_dec/lsf_dec_fx.c
+++ b/lib_dec/lsf_dec_fx.c
@@ -370,9 +370,8 @@ void lsf_end_dec_fx(
Word16 *qlsf, /* o : quantized LSFs in the cosine domain Qx2.56*/
Word16 *lpc_param, /* i : LPC parameters Q0*/
Word16 *LSF_Q_prediction, /* o : LSF prediction mode Q0*/
- Word16 *nb_indices /* o : number of indices Q0*/
- ,
- const Word16 tdm_lsfQ_PCh[M] /* i : Q LSFs for primary channel Qx*/
+ Word16 *nb_indices, /* o : number of indices Q0*/
+ const Word16 tdm_lsfQ_PCh[M] /* i : Q LSFs for primary channel Qx*/
)
{
Word16 pred0[M]; /* Prediction for the safety-net quantizer (usually mean)*/
diff --git a/lib_dec/pit_dec_fx.c b/lib_dec/pit_dec_fx.c
index 38ec41cb209c196f3333a972a2195ff8f4c0aa46..d490dce4a4e6152ec857f8cefa7f8e08344f8444 100644
--- a/lib_dec/pit_dec_fx.c
+++ b/lib_dec/pit_dec_fx.c
@@ -591,9 +591,8 @@ void pit_Q_dec_fx(
Word16 *T0, /* o : integer pitch lag */
Word16 *T0_frac, /* o : pitch fraction */
Word16 *T0_min, /* i/o: delta search min */
- Word16 *T0_max /* i/o: delta search max */
- ,
- Word16 *BER_detect /* o : BER detect flag */
+ Word16 *T0_max, /* i/o: delta search max */
+ Word16 *BER_detect /* o : BER detect flag */
)
{
IF( EQ_16( nBits, 10 ) ) /* absolute decoding with 10 bits */
@@ -702,9 +701,8 @@ void pit16k_Q_dec_fx(
Word16 *T0, /* o : integer pitch lag */
Word16 *T0_frac, /* o : pitch fraction */
Word16 *T0_min, /* i/o: delta search min */
- Word16 *T0_max /* i/o: delta search max */
- ,
- Word16 *BER_detect /* o : BER detect flag */
+ Word16 *T0_max, /* i/o: delta search max */
+ Word16 *BER_detect /* o : BER detect flag */
)
{
Word16 index;
diff --git a/lib_dec/pitch_extr_fx.c b/lib_dec/pitch_extr_fx.c
index 5cabc98b1009ce6c096943078c72b295235bceaf..5d6e397b0c6de34d9660a5c93915a26884056c3b 100644
--- a/lib_dec/pitch_extr_fx.c
+++ b/lib_dec/pitch_extr_fx.c
@@ -220,8 +220,7 @@ void pitch_pred_linear_fit(
a2 = mac_r( L_mac( L_mult( mult_r( 2 * 2048, pg[1] ) /*Q8*/, pg[2] ) /*Q5+16*/, mult_r( 2 * 2048, pg[1] ) /*Q8*/, pg[3] ) /*Q5+16*/, mult_r( -4 * 2048, pg[0] ) /*Q8*/, pg[1] /*Q12*/ ) /*Q5*/;
a1 = mac_r( L_mac( L_mult( mult_r( 3 * 2048, pg[0] ) /*Q8*/, pg[1] ) /*Q5+16*/, mult_r( 4 * 2048, pg[0] ) /*Q8*/, pg[2] /*Q12*/ ) /*Q5+16*/, mult_r( 3 * 2048, pg[0] ) /*Q8*/, pg[3] /*Q12*/ ) /*Q5*/;
- a = L_mac( L_mac( L_mac( L_mac( L_mult( a1, round_fx( L_shl( ml[0], 4 ) ) ) /*Q4*/
- ,
+ a = L_mac( L_mac( L_mac( L_mac( L_mult( a1, round_fx( L_shl( ml[0], 4 ) ) ) /*Q4*/,
round_fx( L_shl( ml[1], 4 ) ) /*Q4*/, a2 ),
round_fx( L_shl( ml[2], 4 ) ) /*Q4*/, a3 ),
round_fx( L_shl( ml[3], 4 ) ) /*Q4*/, a4 ),
@@ -258,8 +257,7 @@ void pitch_pred_linear_fit(
b4 = mac_r( L_mac( L_mac( L_mult( mult_r( -3 * 8192, pg[0] ), pg[3] ), mult_r( -2 * 8192, pg[1] ), pg[3] ), mult_r( -32768 / 2, pg[3] ), mult_r( 32768 / 2, pg[2] ) ), mult_r( 32768 / 2, pg[4] ), mult_r( 32768 / 2, pg[3] ) ); /*Q7*/
b5 = mac_r( L_mac( L_mac( L_mult( mult_r( -32768 /*(-4*8192)*/, pg[0] ), pg[4] ), mult_r( -3 * 8192, pg[1] ), pg[4] ), mult_r( -2 * 8192, pg[2] ), pg[4] ), mult_r( -32768 / 2, pg[4] ), mult_r( 32768 / 2, pg[3] ) ) /*Q7*/;
- b = L_mac( L_mac( L_mac( L_mac( L_mult( b1, round_fx( L_shl( ml[0], 4 ) ) ) /*Q4*/
- ,
+ b = L_mac( L_mac( L_mac( L_mac( L_mult( b1, round_fx( L_shl( ml[0], 4 ) ) ) /*Q4*/,
round_fx( L_shl( ml[1], 4 ) ) /*Q4*/, b2 ),
round_fx( L_shl( ml[2], 4 ) ) /*Q4*/, b3 ),
round_fx( L_shl( ml[3], 4 ) ) /*Q4*/, b4 ),
diff --git a/lib_dec/rom_dec_fx.c b/lib_dec/rom_dec_fx.c
index f5c0e4794845db03e52d35730b72c993e476a740..0493e48ebf551cf23c70a032a36725ad572877e1 100644
--- a/lib_dec/rom_dec_fx.c
+++ b/lib_dec/rom_dec_fx.c
@@ -51,6 +51,7 @@ const Word16 h_low_fx[5] = /* Q15 */
{
-410, 3572, 25602, 3572, -410
};
+
const Word16 inv_sqi[15] = /* Q15 */
{
8192, /* 1/4 */
@@ -69,9 +70,11 @@ const Word16 inv_sqi[15] = /* Q15 */
146, /* 1/225 */
128 /* 1/256 */
};
+
/*-------------------------------------------------------------------*
* index square used in fec_adapt_codebook
*-------------------------------------------------------------------*/
+
const Word16 sqi[15] = /* Q0 */
{
4, /* 2 */
@@ -90,8 +93,10 @@ const Word16 sqi[15] = /* Q0 */
225, /* 15 */
256 /* 16 */
};
+
/* RE8 related tables */
const Word16 mult_avq_tab[7] = {1,1,1,342,1,1,171};
+
const Word16 shift_avq_tab[7] = {0,0,1, 10,2,0, 10};
const Word16 hntable[55]=
@@ -123,7 +128,7 @@ const Word16 hestable[15]=
const Word16 lsf_tab_fx[LPC_SHB_ORDER] = /* Q15 */
{
2315, 3920, 5546, 6759, 7978,
- 10254, 11336, 12476, 13437, 14590
+ 10254, 11336, 12476, 13437, 14590
};
const Word16 POW_ATT_TABLE0[OFF_FRAMES_LIMIT + 1] = /* Q15 */
@@ -132,15 +137,18 @@ const Word16 POW_ATT_TABLE0[OFF_FRAMES_LIMIT + 1] = /* Q15 */
20675, 19745, 18856, 18007, 17197, 16423, 8211, 4106, 2053, 1026,
513, 257, 128, 64, 32, 16, 8, 4, 2, 1, 0
};
+
const Word16 POW_ATT_TABLE1[OFF_FRAMES_LIMIT + 1] = /* Q15 */
{
32767, 31656, 30581, 29543, 28540, 27571, 26635, 25731, 24857, 24013,
23198, 22410, 21650, 20915, 20205, 19519, 9759, 4880, 2440, 1220,
610, 305, 152, 76, 38, 19, 10, 5, 2, 1, 0
};
+
/* frequency group start bins for transient analysis */
/* 125 375 750 1250 2000 4000 8000 16000 24000 */
const Word16 gw[LGW_MAX] = { 1, 3, 6, 10, 16, 32, 64, 128, 192 };
+
const Word16 gw_fx[LGW_MAX] = { 1, 3, 6, 10, 16, 32, 64, 128, 192 }; /* Q0 frequency group start bins for transient analysis */
const Word16 gw_len_inv_fx[LGW_MAX - 1] = /* Q15 */
@@ -148,14 +156,15 @@ const Word16 gw_len_inv_fx[LGW_MAX - 1] = /* Q15 */
16384, 10923, 8192, 5461,
2048, 1024, 512, 512,
};
+
const Word16 GR_POW_HEADROOM[LGW_MAX] = /* in Q0-- Number of bits down-shifting to prevent from saturation in group power accumulation.*/
{
0, 0, 1, 2, 2, 3, 4, 4, 4
};
+
/* 31.25 343.75 718.75 1218.75 1968.75 4000 8000 16000 24000 */
const Word16 ivas_gwlpr[LGW_MAX] = { 1, 3*QUOT_LPR_LTR-1, 6*QUOT_LPR_LTR-1, 10*QUOT_LPR_LTR-1, 16*QUOT_LPR_LTR-1, 32*QUOT_LPR_LTR, 64*QUOT_LPR_LTR, 128*QUOT_LPR_LTR, 192*QUOT_LPR_LTR };
-
const Word16 w_hamm48k_2_fx[L_TRANA48k / 2] = /* Q15 */
{
2621, 2623, 2630, 2640, 2654, 2672, 2694, 2721,
@@ -215,6 +224,7 @@ const Word16 w_hamm16k_2_fx[L_TRANA16k / 2] = /* Q15 */
28549, 29053, 29529, 29976, 30393, 30780, 31134, 31455,
31742, 31995, 32213, 32396, 32543, 32653, 32727, 32763
};
+
const Word16 w_hamm_sana48k_2_fx[288] = /* Q15 */
{
2621, 2622, 2625, 2630, 2636, 2644, 2654, 2666,
@@ -254,6 +264,7 @@ const Word16 w_hamm_sana48k_2_fx[288] = /* Q15 */
32552, 32579, 32604, 32628, 32649, 32669, 32687, 32703,
32717, 32730, 32741, 32750, 32757, 32762, 32766, 32767
};
+
const Word16 w_hamm_sana32k_2_fx[L_PROT_HAMM_LEN2_32k] = /* Q15 */
{
2621, 2623, 2630, 2640, 2654, 2672, 2694, 2721,
@@ -281,6 +292,7 @@ const Word16 w_hamm_sana32k_2_fx[L_PROT_HAMM_LEN2_32k] = /* Q15 */
32283, 32344, 32400, 32452, 32501, 32545, 32585, 32622,
32654, 32682, 32707, 32727, 32743, 32755, 32763, 32767
};
+
const Word16 w_hamm_sana16k_2_fx[L_PROT_HAMM_LEN2_16k] = /* Q15 */
{
2621, 2630, 2654, 2695, 2752, 2825, 2914, 3019,
@@ -305,30 +317,30 @@ const Word16 swb_hr_inv_frm_len[4] = /* in Q19 */
4369 /* 1/(960/8) */
};
-const Word16 inv_tbl_2n_minus1[] = { -1, -1, /* Bits = 0 and 1 are not used */
- 21845/*Q16*/,
- 18725/*Q17*/,
- 17476/*Q18*/,
- 16913/*Q19*/,
- 16644/*Q20*/,
- 16513/*Q21*/
+const Word16 inv_tbl_2n_minus1[] = {
+ -1, -1, /* Bits = 0 and 1 are not used */
+ 21845/*Q16*/,
+ 18725/*Q17*/,
+ 17476/*Q18*/,
+ 16913/*Q19*/,
+ 16644/*Q20*/,
+ 16513/*Q21*/
}; /* in Qx */
-
/* er_dec_tcx.c */
const Word16 h_high3_32[L_FIR_FER2] = { -1694/*-0.0517f Q15*/, -1923/*-0.0587f Q15*/, -2687/*-0.0820f Q15*/, -3355/*-0.1024f Q15*/, -3814/*-0.1164f Q15*/, 28790/*0.8786f Q15*/, -3814/*-0.1164f Q15*/, -3355/*-0.1024f Q15*/, -2687/*-0.0820f Q15*/, -1923/*-0.0587f Q15*/, -1694/*-0.0517f Q15*/ };
+
const Word16 h_high3_16[L_FIR_FER2] = { 0/* 0.f Q15*/, -672/*-0.0205f Q15*/, -2133/*-0.0651f Q15*/, -4116/*-0.1256f Q15*/, -5872/*-0.1792f Q15*/, 26306/*0.8028f Q15*/, -5872/*-0.1792f Q15*/, -4116/*-0.1256f Q15*/, -2133/*-0.0651f Q15*/, -672/*-0.0205f Q15*/, 0/* 0.f Q15*/ };
-const Word16 T_256DIV_L_Frame[] =
+
+const Word16 T_256DIV_L_Frame[6] =
{
- 6554 /*L_Frame 640*/
- ,8192 /*L_Frame 512*/
- ,8738 /*L_Frame 480*/
- ,13107/*L_Frame 320*/
- ,16384 /*L_Frame 256*/
- ,26214 /*L_Frame 160*/
+ 6554, /*L_Frame 640*/
+ 8192, /*L_Frame 512*/
+ 8738, /*L_Frame 480*/
+ 13107, /*L_Frame 320*/
+ 16384, /*L_Frame 256*/
+ 26214 /*L_Frame 160*/
};
-/* clang-format on */
-
/* Word16 (Q15) Hann window ranging from 0 to 32767/32768 (~0.999969) */
const Word16 pcmdsp_window_hann_960[960] = {
@@ -444,3 +456,4 @@ const Word16 pcmdsp_window_hann_640[640] = {
490, 452, 415, 380, 346, 314, 283, 254, 227, 201, 176, 154, 132, 113, 94,
78, 63, 50, 38, 27, 19, 12, 6, 2, 0
};
+/* clang-format on */
diff --git a/lib_dec/stat_dec.h b/lib_dec/stat_dec.h
index a1e9af4289e4a1ffd656cb8e22540421ec65da85..81951104e50e56c21b9ff1dd41da427e29760e3a 100644
--- a/lib_dec/stat_dec.h
+++ b/lib_dec/stat_dec.h
@@ -1310,9 +1310,7 @@ typedef struct Decoder_State
Word16 Q_syn;
Word16 Q_syn2;
Word16 Q_syn_cng;
-#ifdef FIX_2003_CON_TCX_OVERFLOW
Word16 Q_syn_factor; // This q_factor is used to avoid using fixed Q0 for synth[] at the output of con_tcx_ivas_fx(). It is then used for two consecutive TCX concealment processes. It cannot be greater than 0.
-#endif
Word16 prev_Q_syn;
Word16 prev_Q_bwe_exc;
diff --git a/lib_dec/swb_tbe_dec_fx.c b/lib_dec/swb_tbe_dec_fx.c
index c3291bde24f95ec52e5fe52d111b5e27d64af6b0..f1bea2e23ae5d4881ba271800091405b8fb3529a 100644
--- a/lib_dec/swb_tbe_dec_fx.c
+++ b/lib_dec/swb_tbe_dec_fx.c
@@ -2705,12 +2705,8 @@ void swb_tbe_dec_fx(
FOR( i = 0; i < L_SHB_LAHEAD; i++ )
{
- L_tmp = Mult_32_16( Lscale, shaped_shb_excitation[i] ); /* Q_bwe_exc + (31-exp) - 15 */
-#ifdef FIX_2602_NONBE_SAT_IN_SWB_TBE_SCALE
+ L_tmp = Mult_32_16( Lscale, shaped_shb_excitation[i] ); /* Q_bwe_exc + (31-exp) - 15 */
shaped_shb_excitation[i] = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /* Q_bwe_exc */
-#else
- shaped_shb_excitation[i] = round_fx( L_shl( L_tmp, exp ) ); /* Q_bwe_exc */
-#endif
move16();
}
IF( exp < 0 )
@@ -2731,12 +2727,8 @@ void swb_tbe_dec_fx(
L_tmp1 = Mult_32_16( L_shl_sat( 1, sub( 31, exp ) ), temp ); /* Q31-exp */
temp = sub( 32767 /*1.0f Q15*/, temp );
Lscale = L_add( Mult_32_16( Lscale, temp ), L_tmp1 );
- L_tmp = Mult_32_16( Lscale, shaped_shb_excitation[i] ); /* Q_bwe_exc + (31-exp) - 15 */
-#ifdef FIX_2602_NONBE_SAT_IN_SWB_TBE_SCALE
+ L_tmp = Mult_32_16( Lscale, shaped_shb_excitation[i] ); /* Q_bwe_exc + (31-exp) - 15 */
shaped_shb_excitation[i] = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /* Q_bwe_exc */
-#else
- shaped_shb_excitation[i] = round_fx( L_shl( L_tmp, exp ) ); /* Q_bwe_exc */
-#endif
move16();
}
}
@@ -2748,12 +2740,8 @@ void swb_tbe_dec_fx(
L_tmp1 = Mult_32_16( L_shl_sat( 1, sub( 31, exp ) ), temp ); /* Q31-exp */
temp = sub( 32767 /*1.0f Q15*/, temp );
Lscale = L_add( Mult_32_16( Lscale, temp ), L_tmp1 );
- L_tmp = Mult_32_16( Lscale, shaped_shb_excitation[i] ); /* Q_bwe_exc + (31-exp) - 15 */
-#ifdef FIX_2602_NONBE_SAT_IN_SWB_TBE_SCALE
+ L_tmp = Mult_32_16( Lscale, shaped_shb_excitation[i] ); /* Q_bwe_exc + (31-exp) - 15 */
shaped_shb_excitation[i] = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /* Q_bwe_exc */
-#else
- shaped_shb_excitation[i] = round_fx( L_shl( L_tmp, exp ) ); /* Q_bwe_exc */
-#endif
move16();
}
}
diff --git a/lib_dec/tonalMDCTconcealment_fx.c b/lib_dec/tonalMDCTconcealment_fx.c
index 82f741e5626ba2869dd18354962b597ff0c9842d..d098eaa15e4e9700ed11759342775554694c8c15 100644
--- a/lib_dec/tonalMDCTconcealment_fx.c
+++ b/lib_dec/tonalMDCTconcealment_fx.c
@@ -1306,11 +1306,7 @@ void TonalMDCTConceal_InsertNoise_ivas_fx(
{
Word16 i, l, ld, fac;
Word16 rnd;
-#ifdef FIX_1944_CRASH_FOR_STEREO
Word16 tmp, g, tilt, exp_last, exp_noise, tiltFactor, crossfadeGain, e_crossfadeGain, scaleFactor;
-#else
- Word16 tmp, g, tilt, exp_last, exp_noise, tiltFactor, crossfadeGain, e_crossfadeGain;
-#endif
Word32 L_tmp, L_tmp1, L_tmp2, nrgNoiseInLastFrame, nrgWhiteNoise;
Word16 inv_exp, inv_samples, exp;
Word32 last_block_nrg_correct;
@@ -1488,10 +1484,6 @@ void TonalMDCTConceal_InsertNoise_ivas_fx(
}
mdctSpectrum[i] = L_shl( L_tmp2, exp ); // Q15 - e_crossfadeGain + Q15 - spectralData_exp + exp
move32();
-#ifndef FIX_1944_CRASH_FOR_STEREO
- hTonalMDCTConc->faded_signal_nrg = L_add( hTonalMDCTConc->faded_signal_nrg, Mpy_32_32( mdctSpectrum[i], mdctSpectrum[i] ) ); // Q31- faded_signal_nrg_exp
- move32();
-#endif
}
FOR( i = crossOverFreq; i < hTonalMDCTConc->lastBlockData.nSamples; i++ )
{
@@ -1500,7 +1492,6 @@ void TonalMDCTConceal_InsertNoise_ivas_fx(
}
*mdctSpectrum_exp = sub( add( e_crossfadeGain, hTonalMDCTConc->lastBlockData.spectralData_exp ), exp );
move16();
-#ifdef FIX_1944_CRASH_FOR_STEREO
scaleFactor = getScaleFactor32( mdctSpectrum, crossOverFreq );
IF( scaleFactor > 8 )
{
@@ -1519,9 +1510,6 @@ void TonalMDCTConceal_InsertNoise_ivas_fx(
}
move32();
hTonalMDCTConc->faded_signal_nrg_exp = shl( sub( *mdctSpectrum_exp, scaleFactor ), 1 );
-#else
- hTonalMDCTConc->faded_signal_nrg_exp = shl( *mdctSpectrum_exp, 1 );
-#endif
move16();
}
}
@@ -1685,10 +1673,6 @@ void TonalMDCTConceal_InsertNoise_ivas_fx(
}
mdctSpectrum[l] = L_shl( L_tmp2, exp ); // Q15 - e_crossfadeGain + Q15 - spectralData_exp + exp
move32();
-#ifndef FIX_1944_CRASH_FOR_STEREO
- hTonalMDCTConc->faded_signal_nrg = L_add( hTonalMDCTConc->faded_signal_nrg, Mpy_32_32( mdctSpectrum[l], mdctSpectrum[l] ) ); // Q31 - 2*mdctSpectrum_exp
- move32();
-#endif
}
FOR( i = 1; i < hTonalMDCTConc->pTCI->numIndexes; i++ )
@@ -1708,9 +1692,6 @@ void TonalMDCTConceal_InsertNoise_ivas_fx(
}
mdctSpectrum[l] = L_shl( L_tmp2, exp ); // Q15 - e_crossfadeGain + Q15 - spectralData_exp + exp
move32();
-#ifndef FIX_1944_CRASH_FOR_STEREO
- hTonalMDCTConc->faded_signal_nrg = L_add( hTonalMDCTConc->faded_signal_nrg, Mpy_32_32( mdctSpectrum[l], mdctSpectrum[l] ) ); // Q31- 2*mdctSpectrum_exp
-#endif
}
}
@@ -1729,10 +1710,6 @@ void TonalMDCTConceal_InsertNoise_ivas_fx(
}
mdctSpectrum[l] = L_shl( L_tmp2, exp ); // Q15 - e_crossfadeGain + Q15 - spectralData_exp + exp
move32();
-#ifndef FIX_1944_CRASH_FOR_STEREO
- hTonalMDCTConc->faded_signal_nrg = L_add( hTonalMDCTConc->faded_signal_nrg, Mpy_32_32( mdctSpectrum[l], mdctSpectrum[l] ) ); // Q31- 2*mdctSpectrum_exp
- move32();
-#endif
}
FOR( l = crossOverFreq; l < hTonalMDCTConc->lastBlockData.nSamples; l++ )
@@ -1740,7 +1717,6 @@ void TonalMDCTConceal_InsertNoise_ivas_fx(
mdctSpectrum[l] = L_deposit_h( 0 );
move32();
}
-#ifdef FIX_1944_CRASH_FOR_STEREO
scaleFactor = getScaleFactor32( mdctSpectrum, crossOverFreq );
IF( scaleFactor > 8 )
{
@@ -1759,9 +1735,6 @@ void TonalMDCTConceal_InsertNoise_ivas_fx(
}
move32();
hTonalMDCTConc->faded_signal_nrg_exp = shl( sub( *mdctSpectrum_exp, scaleFactor ), 1 );
-#else
- hTonalMDCTConc->faded_signal_nrg_exp = shl( *mdctSpectrum_exp, 1 );
-#endif
move16();
}
}
diff --git a/lib_enc/acelp_core_enc_fx.c b/lib_enc/acelp_core_enc_fx.c
index 75df71db44e1a1b2517708c65c1a57f0e92bc2ea..cdb0d4d34dcbb29a22b41875c877ba088134d278 100644
--- a/lib_enc/acelp_core_enc_fx.c
+++ b/lib_enc/acelp_core_enc_fx.c
@@ -1284,7 +1284,7 @@ ivas_error acelp_core_enc_ivas_fx(
IF( NE_16( att_fx, 32767 /* ONE_IN_Q15 */ ) )
{
- v_multc_fixed_16_16( res_fx, att_fx, res_fx, st->L_frame );
+ v_multc_fx_16_16( res_fx, att_fx, res_fx, st->L_frame );
}
/*-----------------------------------------------------------------*
diff --git a/lib_enc/acelp_core_switch_enc_fx.c b/lib_enc/acelp_core_switch_enc_fx.c
index 12af87d7cddb4d031d8dfd03ab169728ba815f6e..d790b1866163c7d591cee2c33517f51ac04c834b 100644
--- a/lib_enc/acelp_core_switch_enc_fx.c
+++ b/lib_enc/acelp_core_switch_enc_fx.c
@@ -611,6 +611,7 @@ static void encod_gen_voic_core_switch_ivas_fx(
set16_fx( dummyF, -1, NB_SUBFR16k ); /* hack to signal ACELP->HQ switching frame */
pitch = pit_encode_fx( hBstr, st_fx->acelp_cfg.pitch_bits, core_bitrate, 0, L_frame, GENERIC, &pitch_limit_flag, 0, exc, L_SUBFR, T_op, &T0_min, &T0_max, &T0, &T0_frac, h1, xn, 0 /*hStereoTD->tdm_Pitch_reuse_flag*/, dummyF /*hStereoTD->tdm_Pri_pitch_buf*/, st_fx->element_mode, Q_new ); /* Q6 */
+
/*-----------------------------------------------------------------*
* Find adaptive exitation
*-----------------------------------------------------------------*/
@@ -726,12 +727,7 @@ static void bwe_switch_enc_fx(
Word16 synth_subfr_bwe_fx[SWITCH_MAX_GAP]; /* synthesized bwe for core switching */
Word16 n, L;
BSTR_ENC_HANDLE hBstr;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
hBstr = st_fx->hBstr;
L = NS2SA_FX2( st_fx->input_Fs, FRAME_SIZE_NS );
@@ -847,17 +843,14 @@ static void bwe_switch_enc_fx(
L_tmp1 = L_mult( tmp, E2_fx ); /*30-q_tmp1+q_tmp2 */
q_tmp2 = sub( q_tmp1, q_tmp2 ); /*30-q_tmp2 */
L_tmp1 = L_shl( L_tmp1, sub( q_tmp2, 24 ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
- gain_fx = round_fx_sat( Isqrt( L_tmp1 ) ); /*Q12 */
-#else
- gain_fx = round_fx_o( Isqrt( L_tmp1 ), &Overflow ); /*Q12 */
-#endif
+ gain_fx = round_fx_sat( Isqrt( L_tmp1 ) ); /*Q12 */
ind1_fx = usquant_fx( gain_fx, &gain_fx, shr( MINVALUEOFFIRSTGAIN_FX, 1 ), shr( DELTAOFFIRSTGAIN_FX, 4 ), ( 1 << NOOFGAINBITS1 ) ); /* Q0 */
push_indice( hBstr, IND_CORE_SWITCHING_AUDIO_GAIN, ind1_fx, NOOFGAINBITS1 );
return;
}
+
static void bwe_switch_enc_ivas_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
const Word16 *new_speech_fx /* i : original input signal Q0 */
@@ -878,12 +871,7 @@ static void bwe_switch_enc_ivas_fx(
Word16 synth_subfr_bwe_fx[SWITCH_MAX_GAP]; /* synthesized bwe for core switching */
Word16 n, L;
BSTR_ENC_HANDLE hBstr;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
hBstr = st_fx->hBstr;
L = NS2SA_FX2( st_fx->input_Fs, FRAME_SIZE_NS );
@@ -996,11 +984,7 @@ static void bwe_switch_enc_ivas_fx(
L_tmp1 = L_mult( tmp, E2_fx ); /*30-q_tmp1+q_tmp2 */
q_tmp2 = sub( q_tmp1, q_tmp2 ); /*30-q_tmp2 */
L_tmp1 = L_shl( L_tmp1, sub( q_tmp2, 24 ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
gain_fx = round_fx_sat( Isqrt( L_tmp1 ) ); /*Q12 */
-#else
- gain_fx = round_fx_o( Isqrt( L_tmp1 ), &Overflow ); /*Q12 */
-#endif
ind1_fx = usquant_fx( gain_fx, &gain_fx, shr( MINVALUEOFFIRSTGAIN_FX, 1 ), shr( DELTAOFFIRSTGAIN_FX, 4 ), ( 1 << NOOFGAINBITS1 ) );
push_indice( hBstr, IND_CORE_SWITCHING_AUDIO_GAIN, ind1_fx, NOOFGAINBITS1 );
diff --git a/lib_enc/acelp_enc_util_fx.c b/lib_enc/acelp_enc_util_fx.c
index 8787c46c87c3762f0f95217f11af3bdd63017130..a9e567fa73a0c502f58bf0cf88caa2a90577f5b3 100644
--- a/lib_enc/acelp_enc_util_fx.c
+++ b/lib_enc/acelp_enc_util_fx.c
@@ -160,11 +160,7 @@ void E_ACELP_conv(
{
Word16 i, k;
Word32 L_tmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
+
FOR( k = 0; k < L_SUBFR; k++ )
{
/*cn2[k] = xn2[k]; */
@@ -175,12 +171,8 @@ void E_ACELP_conv(
/*cn2[k]-=cn2[i]*h2[k-i];*/
L_tmp_64 = W_msu0_16_16( L_tmp_64, cn2[i], h2[k - i] ); /*h2 4Q11*/
}
- L_tmp = W_sat_l( L_tmp_64 ); /* 4Q11 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = W_sat_l( L_tmp_64 ); /* 4Q11 */
cn2[k] = round_fx_sat( L_shl_sat( L_tmp, 5 ) ); /* Q0 */
-#else
- cn2[k] = round_fx_o( L_shl_o( L_tmp, 5, &Overflow ), &Overflow ); /* Q0 */
-#endif
}
}
@@ -192,11 +184,7 @@ void E_ACELP_conv_ivas_fx(
{
Word16 i, k;
Word32 L_tmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
+
FOR( k = 0; k < L_SUBFR; k++ )
{
/*cn2[k] = xn2[k]; */
@@ -207,12 +195,8 @@ void E_ACELP_conv_ivas_fx(
/*cn2[k]-=cn2[i]*h2[k-i];*/
L_tmp_64 = W_msu0_16_16( L_tmp_64, cn2[i], h2[k - i] ); /*Qnew + 11*/
}
- L_tmp = W_sat_l( L_tmp_64 ); /* Qnew + 11 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = W_sat_l( L_tmp_64 ); /* Qnew + 11 */
cn2[k] = round_fx_sat( L_shl_sat( L_tmp, 5 ) ); /* Qnew*/
-#else
- cn2[k] = round_fx_o( L_shl_o( L_tmp, 5, &Overflow ), &Overflow ); /* Qnew*/
-#endif
move16();
}
}
diff --git a/lib_enc/analy_sp_fx.c b/lib_enc/analy_sp_fx.c
index 666d7865c8c7326d1a5c076690f59354cb12da24..7a1f60e4507f891bef28851339c64eef0eaee578 100644
--- a/lib_enc/analy_sp_fx.c
+++ b/lib_enc/analy_sp_fx.c
@@ -898,13 +898,6 @@ static void find_enr(
Word32 etot;
Word16 exp_etot;
Word32 *tmpptr;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
ptR = &data[1]; /* first real */
ptI = &data[L_FFT - 1]; /* first imaginary */
@@ -950,13 +943,9 @@ static void find_enr(
/* *ptE *= 4.0 / (L_FFT*L_FFT) */
/* normalization - corresponds to FFT normalization by 2/L_FFT */
- BASOP_SATURATE_WARNING_OFF_EVS; /* saturation seems to have no effect (tested by simulation) */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ BASOP_SATURATE_WARNING_OFF_EVS; /* saturation seems to have no effect (tested by simulation) */
*ptE = L_shl_sat( Ltmp, diff_scaleM2 ); /* Q_new + QSCALE - 2 */
-#else
- *ptE = L_shl_o( Ltmp, diff_scaleM2, &Overflow ); /* Q_new + QSCALE - 2 */
-#endif
- move32(); /* scaled by Q_new + QSCALE - 2 */
+ move32(); /* scaled by Q_new + QSCALE - 2 */
BASOP_SATURATE_WARNING_ON_EVS;
/*band[i] += *ptE++;*/
*Bin_E = *ptE;
@@ -980,13 +969,9 @@ static void find_enr(
exp_band = sub( exp_band, shift_to_norm );
exp_band = sub( diff_scaleP1, exp_band );
- BASOP_SATURATE_WARNING_OFF_EVS; /* saturation seems to have no effect (tested by simulation) */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ BASOP_SATURATE_WARNING_OFF_EVS; /* saturation seems to have no effect (tested by simulation) */
band[i] = L_shl_sat( Ltmp1, exp_band ); /* Q15 + exp_band */
-#else
- band[i] = L_shl_o( Ltmp1, exp_band, &Overflow ); /* Q15 + exp_band */
-#endif
- move32(); /* band scaled by Q_new + QSCALE */
+ move32(); /* band scaled by Q_new + QSCALE */
BASOP_SATURATE_WARNING_ON_EVS;
test();
@@ -1035,13 +1020,9 @@ static void find_enr(
/* *ptE *= 4.0 / (L_FFT*L_FFT) */
/* normalization - corresponds to FFT normalization by 2/L_FFT */
- BASOP_SATURATE_WARNING_OFF_EVS; /* saturation seems to have no effect (tested by simulation) */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ BASOP_SATURATE_WARNING_OFF_EVS; /* saturation seems to have no effect (tested by simulation) */
*Bin_E = L_shl_sat( Ltmp, diff_scaleM2 ); /* Q_new + QSCALE */
-#else
- *Bin_E = L_shl_o( Ltmp, diff_scaleM2, &Overflow ); /* Q_new + QSCALE */
-#endif
- move32(); /* scaled by Q_new + QSCALE - 2 */
+ move32(); /* scaled by Q_new + QSCALE - 2 */
BASOP_SATURATE_WARNING_ON_EVS;
Bin_E++;
Ltmp1 = L_add( Ltmp1, Ltmp );
@@ -1062,11 +1043,7 @@ static void find_enr(
exp_band = sub( exp_band, shift_to_norm );
exp_band = sub( diff_scaleP1, exp_band );
BASOP_SATURATE_WARNING_OFF_EVS; /* saturation seems to have no effect (tested by simulation) */
-#ifdef ISSUE_1867_replace_overflow_libenc
band[i] = L_shl_sat( Ltmp1, exp_band );
-#else
- band[i] = L_shl_o( Ltmp1, exp_band, &Overflow );
-#endif
move32(); /* band scaled by Q_new + QSCALE */
BASOP_SATURATE_WARNING_ON_EVS;
diff --git a/lib_enc/ari_hm_enc_fx.c b/lib_enc/ari_hm_enc_fx.c
index 4beac647d5a1d3c2d184b8467e4c45eecb265e2f..1917216ef6f3817970040cc0de0cc93c67ea43ce 100644
--- a/lib_enc/ari_hm_enc_fx.c
+++ b/lib_enc/ari_hm_enc_fx.c
@@ -241,12 +241,6 @@ Word16 SearchPeriodicityIndex_fx(
Word32 Lag;
Word16 s, tmp, tmp2, tmp3;
Word32 tmp32;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* Debug init (not instrumented) */
C = -3000;
@@ -459,11 +453,7 @@ Word16 SearchPeriodicityIndex_fx(
tmp32 = L_mult0( Score, NumToConsider ); /* -> 16Q15 */
tmp = sub( norm_l( tmp32 ), 1 );
tmp2 = norm_l( AbsTotal );
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp3 = div_s( round_fx_sat( L_shl( tmp32, tmp ) ), round_fx_sat( L_shl( AbsTotal, tmp2 ) ) );
-#else
- tmp3 = div_s( round_fx_o( L_shl_o( tmp32, tmp, &Overflow ), &Overflow ), round_fx_o( L_shl_o( AbsTotal, tmp2, &Overflow ), &Overflow ) );
-#endif
*RelativeScore = shr_sat( tmp3, add( sub( tmp, tmp2 ), 2 ) ); /* -> 2Q13 */
move16();
}
diff --git a/lib_enc/arith_coder_enc_fx.c b/lib_enc/arith_coder_enc_fx.c
index 58125b81cafde7044d7fb0c02b05883a1d082edd..12f3368dce228f49a0bd2c80cf6e180c41caed50 100644
--- a/lib_enc/arith_coder_enc_fx.c
+++ b/lib_enc/arith_coder_enc_fx.c
@@ -48,13 +48,6 @@ static Word16 tcx_arith_estimate_scale(
{
Word16 scale, tmp, k, s, s1;
Word32 L_tmp, accu;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
/* compute normalised standard deviation and determine approximate scale */
accu = L_deposit_l( 0 );
@@ -74,11 +67,7 @@ static Word16 tcx_arith_estimate_scale(
s1 = norm_l( abs_spectrum[k] );
}
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = mult_r( round_fx_sat( L_shl( abs_spectrum[k], s1 ) ), envelope[k] );
-#else
- tmp = mult_r( round_fx_o( L_shl( abs_spectrum[k], s1 ), &Overflow ), envelope[k] );
-#endif
L_tmp = L_mult0( tmp, tmp );
tmp = sub( shl( s1, 1 ), 1 );
@@ -373,13 +362,6 @@ static Word16 tcx_arith_rateloop(
Word32 L_tmp;
Word16 tmp, tmp3;
Word32 tmp2;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
scale = tcx_arith_estimate_scale( abs_spectrum, abs_spectrum_e, L_frame, envelope, envelope_e, &tmp );
scale = mult_r( scale, *target_bits_fac );
@@ -688,22 +670,10 @@ void tcx_arith_encode_envelope_fx(
const Word8 *deadzone_flags;
Word16 gamma_w, gamma_uw;
Word16 hm_bits;
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Word32 L_tmp, L_tmp2;
-#else
Word32 L_tmp;
Word64 W_tmp2;
-#endif
Word16 tmp;
TCX_ENC_HANDLE hTcxEnc = st->hTcxEnc;
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Flag Overflow = 0;
- Flag Carry = 0;
- move32();
- move32();
-#endif
-#endif
assert( L_spec <= N_MAX_ARI );
@@ -787,18 +757,10 @@ void tcx_arith_encode_envelope_fx(
move16();
/* Multiply back the signs */
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_tmp2 = L_deposit_l( 0 );
-#else
W_tmp2 = 0;
-#endif
FOR( k = 0; k <= kMax; k++ )
{
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_tmp2 = L_macNs_co( L_tmp2, q_spectrum[k], k, &Carry, &Overflow );
-#else
W_tmp2 = W_mac_16_16( W_tmp2, q_spectrum[k], k );
-#endif
if ( signs[k] != 0 )
L_tmp = L_mult( q_spectrum[k], -( 1 << ( 30 - SPEC_EXP_DEC ) ) );
@@ -812,11 +774,7 @@ void tcx_arith_encode_envelope_fx(
set32_fx( spectrum + k, 0, sub( s_max( L_frame, L_spec ), k ) );
/* noise filling seed */
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- *nf_seed = extract_l( L_tmp2 );
-#else
*nf_seed = extract_l( W_extract_l( W_tmp2 ) );
-#endif
move16();
}
diff --git a/lib_enc/avq_cod_fx.c b/lib_enc/avq_cod_fx.c
index 8433e77abe610eb2841607b917fe2a1a47e3728d..982b30d323939a75f3478a442cdae07433583ed9 100644
--- a/lib_enc/avq_cod_fx.c
+++ b/lib_enc/avq_cod_fx.c
@@ -1,6 +1,7 @@
/*====================================================================================
EVS Codec 3GPP TS26.452 Aug 12, 2021. Version 16.3.0
====================================================================================*/
+
#include
#include
#include "options.h" /* Compilation switches */
@@ -13,19 +14,22 @@
/*-------------------------------------------------------------------*
* Local prototypes
*-------------------------------------------------------------------*/
+
static void wrte_cv( BSTR_ENC_HANDLE hBstr, const Word16 nq, const Word16 i_ind, const Word16 kv_ind, UWord16 I, Word16 kv[], Word16 *bits );
+
/*-------------------------------------------------------------------*
* Function AVQ_cod() *
* *
* Split algevraic vector quantizer (AVQ) base on RE8 latice *
*-------------------------------------------------------------------*/
-void AVQ_cod_fx( /* o: comfort noise gain factor */
- const Word16 xri[], /* i: vector to quantize Qx*/
- Word16 xriq[], /* o: quantized normalized vector (assuming the bit budget is enough) */
- const Word16 NB_BITS, /* i: number of allocated bits */
- const Word16 Nsv, /* i: number of subvectors (lg=Nsv*8) */
- const Word16 Q_in_ref /* i: Scaling input */
+/* o: comfort noise gain factor */
+void AVQ_cod_fx(
+ const Word16 xri[], /* i : vector to quantize Qx*/
+ Word16 xriq[], /* o : quantized normalized vector (assuming the bit budget is enough) */
+ const Word16 NB_BITS, /* i : number of allocated bits */
+ const Word16 Nsv, /* i : number of subvectors (lg=Nsv*8) */
+ const Word16 Q_in_ref /* i : Scaling input */
)
{
Word16 i, l, iter, c[8];
@@ -33,11 +37,7 @@ void AVQ_cod_fx( /* o: comfort noise gain factor
Word16 ebits[NSV_MAX], e_ebits, f_ebits, e_tmp, f_tmp, tmp16, l_8;
Word32 Lener, Ltmp, Lgain, x1[8];
Word16 tot_est_bits, Q_in;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
+
Q_in = sub( Q_in_ref, 1 );
move16();
@@ -53,11 +53,7 @@ void AVQ_cod_fx( /* o: comfort noise gain factor
Lener = L_shl( 4, shl( Q_in, 1 ) ); /* to set ebits >= 0 */
FOR( i = 0; i < 8; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Lener = L_mac_sat( Lener, xri[l * 8 + i], xri[l * 8 + i] );
-#else
- Lener = L_mac_o( Lener, xri[l * 8 + i], xri[l * 8 + i], &Overflow );
-#endif
}
/* estimated bit consumption when gain=1 */
/* ebits[l] = 5.0 * FAC_LOG2 * (Word16)log10(ener * 0.5) */
@@ -165,13 +161,13 @@ void AVQ_cod_fx( /* o: comfort noise gain factor
*
* Encode subvectors and write indexes into the bitstream
*-----------------------------------------------------------------*/
+
void AVQ_encmux_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: bitstream handle */
+ BSTR_ENC_HANDLE hBstr, /* i/o: bitstream handle */
const Word16 extl, /* i : extension layer */
- Word16 xriq[], /* i/o: rounded subvectors [0..8*Nsv-1] followed
- by rounded bit allocations [8*Nsv..8*Nsv+Nsv-1] */
+ Word16 xriq[], /* i/o: rounded subvectors [0..8*Nsv-1] followed by rounded bit allocations [8*Nsv..8*Nsv+Nsv-1] */
Word16 *nb_bits, /* i/o: number of allocated bits */
- const Word16 Nsv, /* i: number of subvectors */
+ const Word16 Nsv, /* i : number of subvectors */
Word16 nq_out[], /* o : AVQ nq index */
Word16 avq_bit_sFlag, /* i : flag for AVQ bit saving solution */
Word16 trgtSvPos /* i : target SV for AVQ bit savings */
@@ -187,6 +183,7 @@ void AVQ_encmux_fx(
Word16 unusedbitsFlag;
Word16 svOrder[NSV_MAX], k, nullVec, dummy_bits;
Word16 tmp;
+
test();
IF( EQ_16( extl, SWB_BWE_HIGHRATE ) || EQ_16( extl, FB_BWE_HIGHRATE ) )
{
@@ -589,8 +586,10 @@ void AVQ_encmux_fx(
return;
}
+
+
/*-------------------------------------------------------------------*
- * Function AVQ_cod_lpc_fx() *
+ * Function AVQ_cod_lpc_fx() *
* *
* Split algebraic vector quantizer (AVQ) for LPC quantization *
*-------------------------------------------------------------------*/
diff --git a/lib_enc/bass_psfilter_enc_fx.c b/lib_enc/bass_psfilter_enc_fx.c
index 7a056dd132fe774997eb43f6b6bc1b4284b162f3..c4aeab22d55bbd5cec8b5331bf03525b41462552 100644
--- a/lib_enc/bass_psfilter_enc_fx.c
+++ b/lib_enc/bass_psfilter_enc_fx.c
@@ -36,13 +36,6 @@ Word16 bass_pf_enc_fx(
Word32 cross_n_d, nrg_n;
const Word16 *pFilt;
Word32 ener2;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
IF( NE_16( l_frame, L_FRAME16k ) )
{
@@ -155,7 +148,6 @@ Word16 bass_pf_enc_fx(
FOR( i = 0; i < lg; i++ )
{
tmp32 = L_msu0( 0, gain, syn[i + i_subfr - T] );
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp32 = L_msu0_sat( tmp32, gain, syn[i + i_subfr + T] );
tmp16 = mac_r_sat( tmp32, gain, syn[i + i_subfr] ); /* Q0 */
@@ -164,16 +156,6 @@ Word16 bass_pf_enc_fx(
tmp16 = round_fx_sat( L_shl_sat( lp_error, s1 ) ); /* Q0+s1-3 */
ener2 = L_mac0_sat( ener2, tmp16, tmp16 ); /* Q0+(s1-3)*2 */
-#else
- tmp32 = L_msu0_o( tmp32, gain, syn[i + i_subfr + T], &Overflow );
- tmp16 = mac_ro( tmp32, gain, syn[i + i_subfr], &Overflow ); /* Q0 */
-
- lp_error = Mpy_32_16_1( lp_error, 29491 /*0.9f Q15*/ );
- lp_error = L_mac_o( lp_error, tmp16, 0x1000, &Overflow ); /* Q13 */
-
- tmp16 = round_fx_o( L_shl_o( lp_error, s1, &Overflow ), &Overflow ); /* Q0+s1-3 */
- ener2 = L_mac0_o( ener2, tmp16, tmp16, &Overflow ); /* Q0+(s1-3)*2 */
-#endif
}
}
@@ -182,7 +164,6 @@ Word16 bass_pf_enc_fx(
FOR( i = lg; i < l_subfr; i++ )
{
tmp32 = L_mult0( gain, syn[i + i_subfr] );
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp32 = L_msu0_sat( tmp32, gain, syn[i + i_subfr - T] ); /* Q0 */
tmp16 = round_fx_sat( tmp32 );
lp_error = Mpy_32_16_1( lp_error, 29491 /*0.9f Q15*/ );
@@ -190,15 +171,6 @@ Word16 bass_pf_enc_fx(
tmp16 = round_fx_sat( L_shl_sat( lp_error, s1 ) ); /* Q0+s1-3 */
ener2 = L_mac0_sat( ener2, tmp16, tmp16 ); /* Q0+(s1-3)*2 */
-#else
- tmp32 = L_msu0_o( tmp32, gain, syn[i + i_subfr - T], &Overflow ); /* Q0 */
- tmp16 = round_fx_o( tmp32, &Overflow );
- lp_error = Mpy_32_16_1( lp_error, 29491 /*0.9f Q15*/ );
- lp_error = L_mac_o( lp_error, tmp16, 0x1000, &Overflow ); /* Q13 */
-
- tmp16 = round_fx_o( L_shl_o( lp_error, s1, &Overflow ), &Overflow ); /* Q0+s1-3 */
- ener2 = L_mac0_o( ener2, tmp16, tmp16, &Overflow ); /* Q0+(s1-3)*2 */
-#endif
}
}
@@ -259,11 +231,7 @@ Word16 bass_pf_enc_fx(
tmp32 = L_mac( tmp32, tmp16, syn[i + i_subfr] );
noise_in[i] = round_fx( L_shl( tmp32, s2 ) ); /* Q0+s2 */
-#ifdef ISSUE_1867_replace_overflow_libenc
error_in[i] = sub_sat( orig[i + i_subfr], syn[i + i_subfr] ); /*Q0*/
-#else
- error_in[i] = sub_o( orig[i + i_subfr], syn[i + i_subfr], &Overflow ); /*Q0*/
-#endif
move16();
}
}
@@ -277,11 +245,7 @@ Word16 bass_pf_enc_fx(
noise_in[i] = round_fx( L_shl( tmp32, s2 ) ); /* Q0+s2 */
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
error_in[i] = sub_sat( orig[i + i_subfr], syn[i + i_subfr] ); /*Q0*/
-#else
- error_in[i] = sub_o( orig[i + i_subfr], syn[i + i_subfr], &Overflow ); /*Q0*/
-#endif
move16();
}
}
diff --git a/lib_enc/bw_detect_fx.c b/lib_enc/bw_detect_fx.c
index 6ec7c626b3b1ef007d81f0983a26c60368d2e6db..49391f60f7d0fc3485c737453dc621b215c9d0c3 100644
--- a/lib_enc/bw_detect_fx.c
+++ b/lib_enc/bw_detect_fx.c
@@ -67,12 +67,6 @@ void bw_detect_fx(
const Word32 *pt32;
Word32 max_NB32, max_WB32, max_SWB32, max_FB32, mean_NB32, mean_WB32, mean_SWB32, mean_FB32; /* Q11*/ /* we need Word32 for the new cldfb energy vectors */
Word16 bwd_count_wider_bw;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
Word16 lp_noise_fx;
bwd_count_wider_bw = BWD_COUNT_WIDER_BW;
@@ -123,17 +117,24 @@ void bw_detect_fx(
move32(); /* Q31 */
cldfb_bin_Exp[0] = add( cldfb_bin_Exp[0], CLDFBscalingFactor_EXP );
move16();
-
+#ifdef FIX_2141_ASSERT_IN_OMASA_BITRATE_SWITSCHING
+ if ( cldfb_bin[0] == 0 )
+ {
+ cldfb_bin[0] = L_deposit_l( 1 );
+ move32();
+ }
+#else
if ( cldfb_bin[i] == 0 )
{
cldfb_bin[i] = L_deposit_l( 1 );
move32();
}
+#endif
L_tmp = BASOP_Util_Log2( cldfb_bin[0] ); /*(log2(660423549*2^(-31))/64)*2^31*/
-#ifdef ISSUE_1867_replace_overflow_libenc
- L_tmp = L_add_sat( L_tmp, L_shl( L_deposit_l( cldfb_bin_Exp[0] ), 31 - LD_DATA_SCALE ) ); /* Q25 */
+#ifdef FIX_2141_ASSERT_IN_OMASA_BITRATE_SWITSCHING
+ L_tmp = L_add_sat( L_tmp, L_shl_sat( L_deposit_l( cldfb_bin_Exp[0] ), 31 - LD_DATA_SCALE ) ); /* Q25 */
#else
- L_tmp = L_add_o( L_tmp, L_shl( L_deposit_l( cldfb_bin_Exp[0] ), 31 - LD_DATA_SCALE ), &Overflow ); /* Q25 */
+ L_tmp = L_add_sat( L_tmp, L_shl( L_deposit_l( cldfb_bin_Exp[0] ), 31 - LD_DATA_SCALE ) ); /* Q25 */
#endif
cldfb_bin[0] = Mpy_32_16_1( L_tmp, 9864 /*1.0f/3.3219280948873623478703194294894f Q15*/ );
move32(); /* 1/log2(10) */ /* Q25 */
@@ -163,8 +164,12 @@ void bw_detect_fx(
cldfb_bin[i] = L_deposit_l( 1 );
move32();
}
- L_tmp = BASOP_Util_Log2( cldfb_bin[i] ); /*(log2(660423549*2^(-31))/64)*2^31*/
+ L_tmp = BASOP_Util_Log2( cldfb_bin[i] ); /*(log2(660423549*2^(-31))/64)*2^31*/
+#ifdef FIX_2141_ASSERT_IN_OMASA_BITRATE_SWITSCHING
+ L_tmp = L_add( L_tmp, L_shl_sat( L_deposit_l( cldfb_bin_Exp[i] ), 31 - LD_DATA_SCALE ) ); /* Q25 */
+#else
L_tmp = L_add( L_tmp, L_shl( L_deposit_l( cldfb_bin_Exp[i] ), 31 - LD_DATA_SCALE ) ); /* Q25 */
+#endif
cldfb_bin[i] = Mpy_32_16_1( L_tmp, 9864 /*1.0f/3.3219280948873623478703194294894f Q15*/ );
move32(); /* 1/log2(10) */ /* Q25 */
}
@@ -202,8 +207,12 @@ void bw_detect_fx(
cldfb_bin[i] = L_deposit_l( 1 );
move32();
}
- L_tmp = BASOP_Util_Log2( cldfb_bin[i] ); /*(log2(660423549*2^(-31))/64)*2^31*/
+ L_tmp = BASOP_Util_Log2( cldfb_bin[i] ); /*(log2(660423549*2^(-31))/64)*2^31*/
+#ifdef FIX_2141_ASSERT_IN_OMASA_BITRATE_SWITSCHING
+ L_tmp = L_add( L_tmp, L_shl_sat( L_deposit_l( cldfb_bin_Exp[i] ), 31 - LD_DATA_SCALE ) ); /* Q25 */
+#else
L_tmp = L_add( L_tmp, L_shl( L_deposit_l( cldfb_bin_Exp[i] ), 31 - LD_DATA_SCALE ) ); /* Q25 */
+#endif
cldfb_bin[i] = Mpy_32_16_1( L_tmp, 9864 /*1.0f/3.3219280948873623478703194294894f Q15*/ );
move32(); /* 1/log2(10) */ /* Q25 */
}
@@ -235,8 +244,12 @@ void bw_detect_fx(
cldfb_bin[i] = L_deposit_l( 1 );
move32();
}
- L_tmp = BASOP_Util_Log2( cldfb_bin[i] ); /*(log2(660423549*2^(-31))/64)*2^31*/
+ L_tmp = BASOP_Util_Log2( cldfb_bin[i] ); /*(log2(660423549*2^(-31))/64)*2^31*/
+#ifdef FIX_2141_ASSERT_IN_OMASA_BITRATE_SWITSCHING
+ L_tmp = L_add( L_tmp, L_shl_sat( L_deposit_l( cldfb_bin_Exp[i] ), 31 - LD_DATA_SCALE ) ); /* Q25 */
+#else
L_tmp = L_add( L_tmp, L_shl( L_deposit_l( cldfb_bin_Exp[i] ), 31 - LD_DATA_SCALE ) ); /* Q25 */
+#endif
cldfb_bin[i] = Mpy_32_16_1( L_tmp, 9864 /*1.0f/3.3219280948873623478703194294894f Q15*/ );
move32(); /* 1/log2(10) */ /* Q25 */
}
@@ -303,11 +316,7 @@ void bw_detect_fx(
FOR( i = 0; i < BWD_TOTAL_WIDTH; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
spect[i] = round_fx_sat( L_shr_sat( spect32[i], Q_dct ) );
-#else
- spect[i] = round_fx_o( L_shr_o( spect32[i], Q_dct, &Overflow ), &Overflow );
-#endif
move16();
}
Q_dct = -2;
@@ -345,11 +354,7 @@ void bw_detect_fx(
pt1 = &spect[i_mult2( i, bin_width )];
FOR( j = 0; j < bin_width; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
sum32 = L_mac0_sat( sum32, *pt1, *pt1 );
-#else
- sum32 = L_mac0_o( sum32, *pt1, *pt1, &Overflow );
-#endif
pt1++;
}
tmp_1 = BASOP_Util_Cmp_Mant32Exp( sum32, E_spect_bin, MAX_32, Q31 - 41 ); /* Any sum32 in Q_dct if it is less than MAX_32 in Q41 will be less than 0.001 */
diff --git a/lib_enc/cng_enc_fx.c b/lib_enc/cng_enc_fx.c
index 37770ce9e66b8f920bbf12773b63745be9e8f409..34be60d8a7c5b6d33502ba91b95184cbf4c4456d 100644
--- a/lib_enc/cng_enc_fx.c
+++ b/lib_enc/cng_enc_fx.c
@@ -108,13 +108,6 @@ void CNG_enc_fx(
st_lp_sp_enr = hTdCngEnc->lp_sp_enr_fx;
move16();
Word16 lp_ener_thr_scale;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
- /* Temp variables for floating point functions */
lp_ener_thr_scale = 8; /* 4.0f*/ /*IVAS_CODE Q2 */
move16();
@@ -637,11 +630,7 @@ void CNG_enc_fx(
FOR( i = 0; i < M; i++ )
{
dev = abs_s( sub( lsp_tmp[i], lsp_new[i] ) ); /*Q15 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- dist = add_sat( dist, dev ); /*Q15 */
-#else
- dist = add_o( dist, dev, &Overflow ); /*Q15 */
-#endif
+ dist = add_sat( dist, dev ); /*Q15 */
if ( GT_16( dev, max_dev ) )
{
max_dev = dev;
@@ -771,16 +760,10 @@ void CNG_enc_fx(
FOR( i = 0; i < NUM_ENV_CNG; i++ )
{
/* env[i] = 2.0f*(*ptR * *ptR + *ptI * *ptI)/L_FFT; */
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mult_sat( *ptR, *ptR ); /* 2*Q_new+1 */
L_tmp = L_add_sat( L_tmp, L_mult_sat( *ptI, *ptI ) ); /* 2*Q_new+1 */
L_tmp = L_add_sat( L_tmp, L_tmp ); /* 2*Q_new+1 */
-#else
- L_tmp = L_mult_o( *ptR, *ptR, &Overflow ); /* 2*Q_new+1 */
- L_tmp = L_add_o( L_tmp, L_mult_o( *ptI, *ptI, &Overflow ), &Overflow ); /* 2*Q_new+1 */
- L_tmp = L_add_o( L_tmp, L_tmp, &Overflow ); /* 2*Q_new+1 */
-#endif
- L_tmp = Mult_32_16( L_tmp, 128 ); /* 2*Q_new+1 */
+ L_tmp = Mult_32_16( L_tmp, 128 ); /* 2*Q_new+1 */
tmp1 = add( add( Q_new, Q_new ), 1 );
env[i] = L_shr( L_tmp, sub( tmp1, 6 ) );
move32(); /* Q6 */
@@ -1056,13 +1039,9 @@ void CNG_enc_fx(
/* d += (env[j] - CNG_details_codebook_fx[i][j]) * (env[j] - CNG_details_codebook_fx[i][j]);*/
L_tmp = L_sub( env[j], L_deposit_l( CNG_details_codebook_fx[i][j] ) ); /* Q6 */
exp = norm_l( L_tmp );
- L_tmp = L_shl( L_tmp, exp ); /*Q(exp+6)*/
- tmp1 = extract_h( L_tmp ); /*Q(exp+6-16)=exp-10*/
-#ifdef ISSUE_1867_replace_overflow_libenc
- L_tmp = L_mult_sat( tmp1, tmp1 ); /*Q(2*exp - 19)*/
-#else
- L_tmp = L_mult_o( tmp1, tmp1, &Overflow ); /*Q(2*exp - 19)*/
-#endif
+ L_tmp = L_shl( L_tmp, exp ); /*Q(exp+6)*/
+ tmp1 = extract_h( L_tmp ); /*Q(exp+6-16)=exp-10*/
+ L_tmp = L_mult_sat( tmp1, tmp1 ); /*Q(2*exp - 19)*/
L_tmp = L_shr( L_tmp, sub( add( exp, exp ), 36 ) ); /* Q17 */
d = L_add( d, L_tmp );
}
@@ -1249,12 +1228,7 @@ void CNG_enc_ivas_fx(
Word64 w_temp;
Word32 inv_frame_len;
Word32 L_ener;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
step_inv = 0;
move16();
maxl = 0;
@@ -1911,7 +1885,7 @@ void CNG_enc_ivas_fx(
L_tmp1 = L_mult0( hTdCngEnc->CNG_att_fx, 26214 /* 1/20.0f in Q19 */ ); // Q26 (7 + 19)
L_tmp1 = BASOP_Util_fPow( 1342177280 /*10 in Q27 */, 4, L_tmp1, 5, &exp );
att = extract_h( L_shl( L_sub( L_tmp1, EPSILON_FX ), exp ) ); // Q15 // Subtracting by EPSILON_FX to avoid assertion when L_tmp1 value is 1073741824 and exp =1
- v_multc_fixed_16_16( res1, att, res1, st_fx->L_frame ); /* Q_new */
+ v_multc_fx_16_16( res1, att, res1, st_fx->L_frame ); /* Q_new */
}
ELSE IF( st_fx->bwidth != NB )
{
@@ -1957,16 +1931,10 @@ void CNG_enc_ivas_fx(
FOR( i = 0; i < NUM_ENV_CNG; i++ )
{
/* env[i] = 2.0f*(*ptR * *ptR + *ptI * *ptI)/L_FFT; */
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mult_sat( *ptR, *ptR ); /* 2*Q_new+1 */
L_tmp = L_add_sat( L_tmp, L_mult_sat( *ptI, *ptI ) ); /* 2*Q_new+1 */
L_tmp = L_add_sat( L_tmp, L_tmp ); /* 2*Q_new+1 */
-#else
- L_tmp = L_mult_o( *ptR, *ptR, &Overflow ); /* 2*Q_new+1 */
- L_tmp = L_add_o( L_tmp, L_mult_o( *ptI, *ptI, &Overflow ), &Overflow ); /* 2*Q_new+1 */
- L_tmp = L_add_o( L_tmp, L_tmp, &Overflow ); /* 2*Q_new+1 */
-#endif
- L_tmp = Mult_32_16( L_tmp, 128 ); /* 2*Q_new+1 */
+ L_tmp = Mult_32_16( L_tmp, 128 ); /* 2*Q_new+1 */
tmp1 = add( add( Q_new, Q_new ), 1 );
env[i] = L_shr( L_tmp, sub( tmp1, 6 ) );
move32(); /* Q6 */
@@ -2266,13 +2234,9 @@ void CNG_enc_ivas_fx(
/* d += (env[j] - CNG_details_codebook_fx[i][j]) * (env[j] - CNG_details_codebook_fx[i][j]);*/
L_tmp = L_sub( env[j], L_deposit_l( CNG_details_codebook_fx[i][j] ) ); /* Q6 */
exp = norm_l( L_tmp );
- L_tmp = L_shl( L_tmp, exp ); /*Q(exp+6)*/
- tmp1 = extract_h( L_tmp ); /*Q(exp+6-16)=exp-10*/
-#ifdef ISSUE_1867_replace_overflow_libenc
- L_tmp = L_mult_sat( tmp1, tmp1 ); /*Q(2*exp - 19)*/
-#else
- L_tmp = L_mult_o( tmp1, tmp1, &Overflow ); /*Q(2*exp - 19)*/
-#endif
+ L_tmp = L_shl( L_tmp, exp ); /*Q(exp+6)*/
+ tmp1 = extract_h( L_tmp ); /*Q(exp+6-16)=exp-10*/
+ L_tmp = L_mult_sat( tmp1, tmp1 ); /*Q(2*exp - 19)*/
L_tmp = L_shr( L_tmp, sub( add( exp, exp ), 36 ) ); /* Q17 */
d = L_add( d, L_tmp ); /* Q17 */
}
@@ -2539,12 +2503,7 @@ static Word16 shb_DTX_fx(
DTX_ENC_HANDLE hDtxEnc = st_fx->hDtxEnc;
TD_CNG_ENC_HANDLE hTdCngEnc = st_fx->hTdCngEnc;
TD_BWE_ENC_HANDLE hBWE_TD = st_fx->hBWE_TD;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
shb_new_speech_fx = shb_old_speech_fx + ( ACELP_LOOK_12k8 + L_SUBFR ) * 5 / 4;
Copy( hBWE_TD->old_speech_shb_fx, shb_old_speech_fx, ( ACELP_LOOK_12k8 + L_SUBFR ) * 5 / 4 );
Copy( shb_speech_fx, shb_new_speech_fx, L_FRAME16k );
@@ -2561,11 +2520,7 @@ static Word16 shb_DTX_fx(
wb_ener_fx = L_deposit_l( 0 );
FOR( i = 0; i < st_fx->L_frame; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
wb_ener_fx = L_mac_sat( wb_ener_fx, syn_12k8_16k[i], syn_12k8_16k[i] );
-#else
- wb_ener_fx = L_mac_o( wb_ener_fx, syn_12k8_16k[i], syn_12k8_16k[i], &Overflow );
-#endif
}
wb_ener_fx = L_add( Mpy_32_16_1( wb_ener_fx, 128 ), 1 ); /* 128 in Q15, wb_ener_fx in Q1 */
@@ -2574,11 +2529,7 @@ static Word16 shb_DTX_fx(
fra = Log2_norm_lc( L_shl( wb_ener_fx, exp ) );
exp = sub( 30 - 1, exp );
wb_ener_fx = Mpy_32_16( exp, fra, LG10 );
-#ifdef ISSUE_1867_replace_overflow_libenc
log_wb_ener_fx = round_fx_sat( L_shl_sat( wb_ener_fx, 10 ) ); /* log_wb_ener_fx in Q8 */
-#else
- log_wb_ener_fx = round_fx_o( L_shl_o( wb_ener_fx, 10, &Overflow ), &Overflow ); /* log_wb_ener_fx in Q8 */
-#endif
exp = norm_l( shb_ener_fx );
fra = Log2_norm_lc( L_shl( shb_ener_fx, exp ) );
exp = sub( 30 - 1, exp );
@@ -2597,11 +2548,7 @@ static Word16 shb_DTX_fx(
move16();
}
-#ifdef ISSUE_1867_replace_overflow_libenc
log_shb_ener_fx = sub_sat( round_fx_sat( L_shl_sat( shb_ener_fx, 10 ) ), att ); /* log_shb_ener_fx in Q8 */
-#else
- log_shb_ener_fx = sub_o( round_fx_o( L_shl_o( shb_ener_fx, 10, &Overflow ), &Overflow ), att, &Overflow ); /* log_shb_ener_fx in Q8 */
-#endif
IF( hDtxEnc->first_CNG == 0 )
{
hTdCngEnc->mov_wb_cng_ener_fx = log_wb_ener_fx;
@@ -3010,13 +2957,6 @@ static Word16 shb_DTX_ivas_fx(
TD_CNG_ENC_HANDLE hTdCngEnc = st->hTdCngEnc;
TD_BWE_ENC_HANDLE hBWE_TD = st->hBWE_TD;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
-
shb_new_speech_fx = shb_old_speech_fx + ( ACELP_LOOK_12k8 + L_SUBFR ) * 5 / 4;
Copy( hBWE_TD->old_speech_shb_fx, shb_old_speech_fx, ( ACELP_LOOK_12k8 + L_SUBFR ) * 5 / 4 ); // old_speech_shb_fx -> Q0
Copy( shb_speech_fx, shb_new_speech_fx, L_FRAME16k ); // Q0
@@ -3033,11 +2973,7 @@ static Word16 shb_DTX_ivas_fx(
wb_ener_fx = L_deposit_l( 0 );
FOR( i = 0; i < st->L_frame; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
wb_ener_fx = L_mac_sat( wb_ener_fx, syn_12k8_16k_fx[i], syn_12k8_16k_fx[i] ); // ( Q0 + Q0 + Q1 ) --> Q1 due to left shift in L_mac
-#else
- wb_ener_fx = L_mac_o( wb_ener_fx, syn_12k8_16k_fx[i], syn_12k8_16k_fx[i], &Overflow ); // ( Q0 + Q0 + Q1 ) --> Q1 due to left shift in L_mac
-#endif
}
wb_ener_fx = L_add( Mpy_32_16_1( wb_ener_fx, 128 ), 1 ); /* 128 in Q15, wb_ener_fx in Q1 */
@@ -3047,11 +2983,7 @@ static Word16 shb_DTX_ivas_fx(
exp = sub( 30 - 1, exp );
wb_ener_fx = Mpy_32_16( exp, fra, LG10 );
-#ifdef ISSUE_1867_replace_overflow_libenc
log_wb_ener_fx = round_fx_sat( L_shl_sat( wb_ener_fx, 10 ) ); /* log_wb_ener_fx in Q8 */
-#else
- log_wb_ener_fx = round_fx_o( L_shl_o( wb_ener_fx, 10, &Overflow ), &Overflow ); /* log_wb_ener_fx in Q8 */
-#endif
exp = norm_l( shb_ener_fx );
fra = Log2_norm_lc( L_shl( shb_ener_fx, exp ) );
exp = sub( 30 - 1, exp );
@@ -3075,11 +3007,7 @@ static Word16 shb_DTX_ivas_fx(
move16();
}
-#ifdef ISSUE_1867_replace_overflow_libenc
log_shb_ener_fx = sub_sat( round_fx_sat( L_shl_sat( shb_ener_fx, 10 ) ), att_fx ); /* log_shb_ener_fx in Q8 */
-#else
- log_shb_ener_fx = sub_o( round_fx_o( L_shl_o( shb_ener_fx, 10, &Overflow ), &Overflow ), att_fx, &Overflow ); /* log_shb_ener_fx in Q8 */
-#endif
IF( st->hDtxEnc->first_CNG == 0 )
{
diff --git a/lib_enc/cod2t32_fx.c b/lib_enc/cod2t32_fx.c
index 156b38ce491a042e737d03d6ee5a89d8bd9b3f04..f4dbad642052e26ed32a07cd761cfe209d218211 100644
--- a/lib_enc/cod2t32_fx.c
+++ b/lib_enc/cod2t32_fx.c
@@ -47,12 +47,7 @@ void acelp_2t32_fx(
Word32 L_tmp;
Word16 rrixix[NB_TRACK_FCB_2T][NB_POS_FCB_2T];
Word16 rrixiy[MSIZE];
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
/*----------------------------------------------------------------*
* Compute rrixix[][] needed for the codebook search.
*----------------------------------------------------------------*/
@@ -65,19 +60,11 @@ void acelp_2t32_fx(
L_cor = L_deposit_h( 1 );
FOR( i = 0; i < NB_POS_FCB_2T; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_cor = L_mac_sat( L_cor, *ptr_h1, *ptr_h1 );
-#else
- L_cor = L_mac_o( L_cor, *ptr_h1, *ptr_h1, &Overflow );
-#endif
ptr_h1++;
*p1-- = extract_h( L_cor );
move16(); /*Q9 Q7*/
-#ifdef ISSUE_1867_replace_overflow_libenc
L_cor = L_mac_sat( L_cor, *ptr_h1, *ptr_h1 );
-#else
- L_cor = L_mac_o( L_cor, *ptr_h1, *ptr_h1, &Overflow );
-#endif
ptr_h1++;
*p0-- = extract_h( L_cor );
move16(); /*Q9 Q7*/
@@ -118,28 +105,17 @@ void acelp_2t32_fx(
L_cor = L_mult( *ptr_h1++, *ptr_h2++ ); // Q(12+12+1)
FOR( i = k; i < NB_POS_FCB_2T - 1; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
*p1 = round_fx_sat( L_cor ); // Q(25-16)
L_cor = L_mac_sat( L_cor, *ptr_h1++, *ptr_h2++ );
*p0 = round_fx_sat( L_cor ); // Q(9)
L_cor = L_mac_sat( L_cor, *ptr_h1++, *ptr_h2++ );
-#else
- *p1 = round_fx_o( L_cor, &Overflow ); // Q(25-16)
- L_cor = L_mac_o( L_cor, *ptr_h1++, *ptr_h2++, &Overflow );
- *p0 = round_fx_o( L_cor, &Overflow ); // Q(9)
- L_cor = L_mac_o( L_cor, *ptr_h1++, *ptr_h2++, &Overflow );
-#endif
move16();
move16();
p1 -= ( NB_POS_FCB_2T + 1 );
p0 -= ( NB_POS_FCB_2T + 1 );
}
-#ifdef ISSUE_1867_replace_overflow_libenc
*p1 = round_fx_sat( L_cor ); // Q9
-#else
- *p1 = round_fx_o( L_cor, &Overflow ); // Q9
-#endif
pos -= NB_POS_FCB_2T;
move16();
pos2--;
@@ -242,15 +218,9 @@ void acelp_2t32_fx(
FOR( i1 = 1; i1 < L_SUBFR; i1 += STEP )
{
ps2 = add( ps1, dn_p[i1] );
-#ifdef ISSUE_1867_replace_overflow_libenc
alp2 = add_sat( alp1, add_sat( *p1++, *p2++ ) );
sq = mult( ps2, ps2 );
s = L_msu_sat( L_mult( alpk, sq ), psk, alp2 );
-#else
- alp2 = add_o( alp1, add_o( *p1++, *p2++, &Overflow ), &Overflow );
- sq = mult( ps2, ps2 );
- s = L_msu_o( L_mult( alpk, sq ), psk, alp2, &Overflow );
-#endif
IF( s > 0 )
{
psk = sq;
@@ -323,6 +293,8 @@ void acelp_2t32_fx(
}
return;
}
+
+
/*----------------------------------------------------------------------------------
* Function acelp_1t64()
*
@@ -333,19 +305,21 @@ void acelp_2t32_fx(
*----------------------------------------------------------------------------------*/
void acelp_1t64_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- const Word16 dn[], /* i : corr. between target and h[]. Qx*/
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ const Word16 dn[], /* i : corr. between target and h[]. Qx*/
const Word16 h[], /* i : impulse response of weighted synthesis filter Q12 */
- Word16 code[], /* o : algebraic (fixed) codebook excitation Q9 */
- Word16 y[], /* o : filtered fixed codebook excitation Q9 */
- const Word16 L_subfr /* i : subframe length */
+ Word16 code[], /* o : algebraic (fixed) codebook excitation Q9 */
+ Word16 y[], /* o : filtered fixed codebook excitation Q9 */
+ const Word16 L_subfr /* i : subframe length */
)
{
Word16 i, pos, sgn, index;
Word32 L_tmp;
+
/*-------------------------------------------------------------------*
* Find position and sign of maximum impulse.
*-------------------------------------------------------------------*/
+
pos = emaximum_fx( 0, dn, L_subfr, &L_tmp );
IF( dn[pos] < 0 )
diff --git a/lib_enc/cod4t64_fx.c b/lib_enc/cod4t64_fx.c
index d0bb15cc7a8d07740b8bec88d1ab73d30bfe15be..4d342eeb4c72303265286e6401984aeb64037f19 100644
--- a/lib_enc/cod4t64_fx.c
+++ b/lib_enc/cod4t64_fx.c
@@ -66,11 +66,9 @@ Word16 acelp_4t64_fx(
Word16 y[], /* o : filtered fixed codebook excitation Q9*/
Word16 nbbits, /* i : number of bits per codebook */
const Word16 cmpl_flag, /* i : complexity reduction flag */
- const Word16 Opt_AMR_WB /* i : flag indicating AMR-WB IO mode */
- ,
+ const Word16 Opt_AMR_WB, /* i : flag indicating AMR-WB IO mode */
const Word16 element_mode )
{
-
Word16 i, k, index, track;
Word32 L_index;
Word16 ind[NPMAXPT * NB_TRACK_FCB_4T + 32]; /* VE3: why +32 ???*/
@@ -468,14 +466,16 @@ Word16 acelp_4t64_fx(
return saved_bits;
}
+
/*---------------------------------------------------------------------*
*encode class for 3p 4p 5p 6p/track *
*---------------------------------------------------------------------*/
-static Word32 fcb_encode_cl_fx( /* o: class index of the pulse on a track */
- const Word32 buffer[], /* i: pulses on a track */
- const Word32 pulse_num, /* i: pulses number on a track */
- const Word32 pos_num /* i: number of the position which have pulse */
+/* o: comfort noise gain factor */
+static Word32 fcb_encode_cl_fx(
+ const Word32 buffer[], /* i : pulses on a track */
+ const Word32 pulse_num, /* i : pulses number on a track */
+ const Word32 pos_num /* i : number of the position which have pulse */
)
{
Word32 i, k;
@@ -500,9 +500,11 @@ static Word32 fcb_encode_cl_fx( /* o: class index of t
/*---------------------------------------------------------------------*
*encode fcb pulse index *
*---------------------------------------------------------------------*/
-static Word32 fcb_encode_PI_fx( /* o: return index of the pulse on a track */
- const Word16 v[], /* i: pulse on a track Q9 */
- const Word32 pulse_num /* i: number of the pulse on a track */
+
+/* o: return index of the pulse on a track */
+static Word32 fcb_encode_PI_fx(
+ const Word16 v[], /* i : pulse on a track Q9 */
+ const Word32 pulse_num /* i : number of the pulse on a track */
)
{
Word16 sector_p[7];
@@ -528,10 +530,12 @@ static Word32 fcb_encode_PI_fx( /* o: return index of t
/*---------------------------------------------------------------------*
*encode the class and compute class offset *
*---------------------------------------------------------------------*/
-static Word32 fcb_encode_class_fx( /* o: class offset */
- const Word32 sector_6p_num[], /* i: position which have pulse on a track */
- const Word32 pulse_num, /* i: pulse number on a track */
- const Word32 pulse_pos_num /* i: number of position which have pulse on a track */
+
+/* o: class offset */
+static Word32 fcb_encode_class_fx(
+ const Word32 sector_6p_num[], /* i : position which have pulse on a track */
+ const Word32 pulse_num, /* i : pulse number on a track */
+ const Word32 pulse_pos_num /* i : number of position which have pulse on a track */
)
{
Word32 i, j, k;
@@ -561,14 +565,18 @@ static Word32 fcb_encode_class_fx( /* o: class o
}
return mn9_offet;
}
+
+
/*---------------------------------------------------------------------*
*encode the position *
*---------------------------------------------------------------------*/
-static Word32 fcb_encode_position_fx( /* o: return index of the positions which have pulse*/
- const Word16 pos_vector[], /* i: position of the pulse on a track */
- Word32 n,
- const Word32 pos_num, /* i: the number of position which have pulse */
- const Word32 flag )
+
+/* o: return index of the positions which have pulse*/
+static Word32 fcb_encode_position_fx(
+ const Word16 pos_vector[], /* i: position of the pulse on a track */
+ Word32 n,
+ const Word32 pos_num, /* i: the number of position which have pulse */
+ const Word32 flag )
{
Word32 i;
Word32 mmm1;
@@ -600,20 +608,17 @@ static Word32 fcb_encode_position_fx( /* o: return
return mmm1;
}
-/*-------------------------------------------------------------------*
- * search_ixiy
- *
- * Find the best positions of 2 pulses in a subframe
- *-------------------------------------------------------------------*/
/*------------------------------------------------------------*
* quant_1p_N1
*
* Quantization of 1 pulse with N+1 bits:
*-------------------------------------------------------------*/
-static Word16 quant_1p_N1_fx( /* o : return N+1 bits */
- const Word16 pos, /* i : position of the pulse */
- const Word16 N /* i : number of bits FOR position */
+
+/* o : return N+1 bits */
+static Word16 quant_1p_N1_fx(
+ const Word16 pos, /* i : position of the pulse */
+ const Word16 N /* i : number of bits FOR position */
)
{
Word16 mask;
@@ -627,6 +632,7 @@ static Word16 quant_1p_N1_fx( /* o : return N+1 bits
{
index = add( index, shl( 1, N ) ); /* index += 1 << N */
}
+
return index;
}
@@ -635,11 +641,15 @@ static Word16 quant_1p_N1_fx( /* o : return N+1 bits
* quant_2p_2N1_fx
*
* Quantization of 2 pulses with 2*N+1 bits:
+
+
*-------------------------------------------------------------*/
-Word16 quant_2p_2N1_fx( /* o: return (2*N)+1 bits */
- const Word16 pos1, /* i: position of the pulse 1 */
- const Word16 pos2, /* i: position of the pulse 2 */
- const Word16 N /* i: number of bits FOR position */
+
+/* o: return (2*N)+1 bits */
+Word16 quant_2p_2N1_fx(
+ const Word16 pos1, /* i : position of the pulse 1 */
+ const Word16 pos2, /* i : position of the pulse 2 */
+ const Word16 N /* i : number of bits FOR position */
)
{
Word16 mask, tmp;
@@ -701,23 +711,29 @@ Word16 quant_2p_2N1_fx( /* o: return (2*N)+1 bits */
return index;
}
+
+
/*---------------------------------------------------------------------*
* Quantization of 3 pulses with 3*N+1 bits: *
*---------------------------------------------------------------------*/
-static Word16 quant_3p_3N1_fx( /* o : return (3*N)+1 bits */
- const Word16 pos1, /* i : position of the pulse 1 */
- const Word16 pos2, /* i : position of the pulse 2 */
- const Word16 pos3, /* i : position of the pulse 3 */
- const Word16 N /* i : number of bits for position */
+
+/* o : return (3*N)+1 bits */
+static Word16 quant_3p_3N1_fx(
+ const Word16 pos1, /* i : position of the pulse 1 */
+ const Word16 pos2, /* i : position of the pulse 2 */
+ const Word16 pos3, /* i : position of the pulse 3 */
+ const Word16 N /* i : number of bits for position */
)
{
Word16 nb_pos;
Word16 index;
nb_pos = shl( 1, sub( N, 1 ) ); /* nb_pos = (1<<(N-1)); */
+
/*-------------------------------------------------------*
* Quantization of 3 pulses with 3*N+1 bits: *
*-------------------------------------------------------*/
+
logic16();
logic16();
logic16();
@@ -752,24 +768,30 @@ static Word16 quant_3p_3N1_fx( /* o : return (3*N)+1 bits
}
return ( index );
}
+
+
/*---------------------------------------------------------------------*
* Quantization of 4 pulses with 4*N+1 bits: *
*---------------------------------------------------------------------*/
-static Word32 quant_4p_4N1_fx( /* o : return (4*N)+1 bits */
- const Word16 pos1, /* i : position of the pulse 1 */
- const Word16 pos2, /* i : position of the pulse 2 */
- const Word16 pos3, /* i : position of the pulse 3 */
- const Word16 pos4, /* i : position of the pulse 4 */
- const Word16 N /* i : number of bits for position */
+
+/* o : return (4*N)+1 bits */
+static Word32 quant_4p_4N1_fx(
+ const Word16 pos1, /* i : position of the pulse 1 */
+ const Word16 pos2, /* i : position of the pulse 2 */
+ const Word16 pos3, /* i : position of the pulse 3 */
+ const Word16 pos4, /* i : position of the pulse 4 */
+ const Word16 N /* i : number of bits for position */
)
{
Word16 nb_pos;
Word32 index;
nb_pos = shl( 1, sub( N, 1 ) ); /* nb_pos = (1<<(N-1)); */
+
/*-------------------------------------------------------*
* Quantization of 4 pulses with 4*N+1 bits: *
*-------------------------------------------------------*/
+
logic16();
logic16();
logic16();
@@ -801,15 +823,19 @@ static Word32 quant_4p_4N1_fx( /* o : return (4*N)+1 bits
/* index += quant_2p_2N1_fx(pos1, pos4, N) << (2*N); */
index = L_add( index, L_shl( quant_2p_2N1_fx( pos1, pos4, N ), shl( N, 1 ) ) );
}
+
return ( index );
}
+
+
/*---------------------------------------------------------------------*
* Quantization of 4 pulses with 4*N bits: *
*---------------------------------------------------------------------*/
-static Word32 quant_4p_4N_fx( /* o : return 4*N bits */
- const Word16 pos[], /* i : position of the pulse 1..4 */
- const Word16 N /* i : number of bits for position */
+/* o : return 4*N bits */
+static Word32 quant_4p_4N_fx(
+ const Word16 pos[], /* i : position of the pulse 1..4 */
+ const Word16 N /* i : number of bits for position */
)
{
Word16 i, j, k, nb_pos, n_1, tmp;
@@ -881,9 +907,10 @@ static Word32 quant_4p_4N_fx( /* o : return 4*N bits
}
-static Word32 quant_5p_5N_fx( /* o : return 5*N bits */
- const Word16 pos[], /* i : position of the pulse 1..5 */
- const Word16 N ) /* i : number of bits for position */
+/* o : return 5*N bits */
+static Word32 quant_5p_5N_fx(
+ const Word16 pos[], /* i : position of the pulse 1..5 */
+ const Word16 N ) /* i : number of bits for position */
{
Word16 i, j, k, nb_pos, n_1, tmp;
Word16 posA[5], posB[5];
@@ -961,9 +988,11 @@ static Word32 quant_5p_5N_fx( /* o : return 5*N bits
return ( index );
}
-static Word32 quant_6p_6N_2_fx( /* o : return (6*N)-2 bits */
- const Word16 pos[], /* i : position of the pulse 1..6 */
- const Word16 N ) /* i : number of bits for position */
+
+/* o : return (6*N)-2 bits */
+static Word32 quant_6p_6N_2_fx(
+ const Word16 pos[], /* i : position of the pulse 1..6 */
+ const Word16 N ) /* i : number of bits for position */
{
Word16 i, j, k, nb_pos, n_1;
Word16 posA[6], posB[6];
@@ -1047,11 +1076,13 @@ static Word32 quant_6p_6N_2_fx( /* o : return (6*N)-2 bits
/*---------------------------------------------------------------------*
*order the pulse position *
*---------------------------------------------------------------------*/
-static Word32 pre_process_fx( /* o: return sign value of pulse on a track */
- const Word16 v[], /* i: the pulse vector Q9 */
- Word16 pos_vector[], /* o: position of the pulse on a track */
- Word32 pos_vector_num[], /* o: the pulse number on the position which have pulse Q0 */
- Word32 *pulse_pos_num /* i: the number of position which have pulse */
+
+/* o: return sign value of pulse on a track */
+static Word32 pre_process_fx(
+ const Word16 v[], /* i : the pulse vector Q9 */
+ Word16 pos_vector[], /* o : position of the pulse on a track */
+ Word32 pos_vector_num[], /* o : the pulse number on the position which have pulse Q0 */
+ Word32 *pulse_pos_num /* i : the number of position which have pulse */
)
{
Word16 j, k;
diff --git a/lib_enc/cod_ace_fx.c b/lib_enc/cod_ace_fx.c
index dc139873ad53da9cfcfcfdc1cb8851228ee454bc..5a6e094a23441de7546cf27d688c247dae0b5137 100644
--- a/lib_enc/cod_ace_fx.c
+++ b/lib_enc/cod_ace_fx.c
@@ -75,12 +75,6 @@ Word16 coder_acelp_fx( /* o : SEGSNR for CL decision *
Word16 dummy = 0;
move16();
ACELP_config *acelp_cfg;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
acelp_cfg = &( st->acelp_cfg );
LPD_state_HANDLE hLPDmem = st->hLPDmem;
@@ -353,39 +347,25 @@ Word16 coder_acelp_fx( /* o : SEGSNR for CL decision *
Ltmp = Mpy_32_16_1( gain_code2, code2[i] );
Ltmp = L_shl( Ltmp, Q_new_p5 );
Ltmp = L_mac( Ltmp, gain_pit, exc[i + i_subfr] );
-#ifdef ISSUE_1867_replace_overflow_libenc
exc2[i] = round_fx_sat( L_shl_sat( Ltmp, 1 ) );
-#else
- exc2[i] = round_fx_sat( L_shl_o( Ltmp, 1, &Overflow ) );
-#endif
move16();
Ltmp2 = Mpy_32_16_1( gain_code, code[i] );
Ltmp2 = L_shl_sat( Ltmp2, Q_new_p5 );
Ltmp = L_add_sat( Ltmp, Ltmp2 );
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp = L_shl_sat( Ltmp, 1 ); /* saturation can occur here */
exc[i + i_subfr] = round_fx_sat( Ltmp );
-#else
- Ltmp = L_shl_o( Ltmp, 1, &Overflow ); /* saturation can occur here */
- exc[i + i_subfr] = round_fx_o( Ltmp, &Overflow );
-#endif
move16();
}
+
/*-----------------------------------------------------------------*
* Prepare TBE excitation
*-----------------------------------------------------------------*/
IF( st->igf != 0 )
{
-#ifdef FIX_2010_PREP_TBE_EXC
prep_tbe_exc_fx( L_frame, L_SUBFR, i_subfr, gain_pit, gain_code, code, voice_fac, &voice_factors[i_subfr / L_SUBFR],
bwe_exc, gain_preQ, code_preQ, Q10, Q_new, T0, T0_frac, st->coder_type, st->core_brate,
st->element_mode, st->idchan, st->hBWE_TD != NULL, st->tdm_LRTD_flag );
-#else
- prep_tbe_exc_fx( L_frame, L_SUBFR, i_subfr, gain_pit, gain_code, code, voice_fac, &voice_factors[i_subfr / L_SUBFR],
- bwe_exc, gain_preQ, code_preQ, Q_new, T0, T0_frac, st->coder_type, st->core_brate,
- st->element_mode, st->idchan, st->hBWE_TD != NULL, st->tdm_LRTD_flag );
-#endif
}
/*---------------------------------------------------------*
diff --git a/lib_enc/cod_tcx_fx.c b/lib_enc/cod_tcx_fx.c
index a08a81c4afe7c10466b3556d59874ffbe3e96237..1e01d8c3c621eb7cbfe443bcb8f2f9bc82512a75 100644
--- a/lib_enc/cod_tcx_fx.c
+++ b/lib_enc/cod_tcx_fx.c
@@ -1272,12 +1272,6 @@ void QuantizeSpectrum_fx(
Word16 nz; /* non-zero length in ALDO window*/
CONTEXT_HM_CONFIG *phm_cfg;
TCX_ENC_HANDLE hTcxEnc = st->hTcxEnc;
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Flag Overflow = 0;
- Flag Carry = 0;
-#endif
-#endif
/* Stack memory is split between encoder and internal decoder to reduce max
stack memory usage. */
@@ -1841,29 +1835,19 @@ void QuantizeSpectrum_fx(
/* Save quantized Values */
tmp32 = L_deposit_l( 0 );
move16();
-#ifdef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
Word64 seed = 0;
move64();
-#endif
FOR( i = 0; i < L_spec; i++ )
{
spectrum[i] = L_mult( sqQ[i], 1 << ( 30 - SPEC_EXP_DEC ) );
move32();
/* noise filling seed */
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- tmp32 = L_macNs_co( tmp32, abs_s( sqQ[i] ), i, &Carry, &Overflow );
-#else
seed = W_mac_16_16( seed, abs_s( sqQ[i] ), i );
-#endif
}
*spectrum_e = SPEC_EXP_DEC;
move16();
-#ifdef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
nf_seed = extract_l( W_extract_l( seed ) ); // Q0
-#else
- nf_seed = extract_l( tmp32 );
-#endif
}
ELSE /* low rates: new arithmetic coder */
{
@@ -2913,14 +2897,7 @@ void QuantizeTCXSpectrum_fx(
CONTEXT_HM_CONFIG *phm_cfg;
Word16 att_fx = 0;
move16();
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Flag Overflow = 0;
- move16();
- Flag Carry = 0;
- move16();
-#endif
-#endif
+
/*-----------------------------------------------------------*
* Init *
*-----------------------------------------------------------*/
@@ -3537,31 +3514,19 @@ void QuantizeTCXSpectrum_fx(
move16();
}
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- tmp32 = L_deposit_l( 0 );
-#else
Word64 tmp64 = 0;
-#endif
FOR( i = 0; i < L_spec; i++ )
{
spectrum_fx[i] = L_mult( sqQ[i], 1 << ( 30 - SPEC_EXP_DEC ) );
move32();
/* noise filling seed */
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- tmp32 = L_macNs_co( tmp32, abs_s( sqQ[i] ), i, &Carry, &Overflow );
-#else
tmp64 = W_mac_16_16( tmp64, abs_s( sqQ[i] ), i );
-#endif
}
*spectrum_e = SPEC_EXP_DEC;
move16();
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- *nf_seed = extract_l( tmp32 );
-#else
assert( W_extract_h( tmp64 ) == 0 );
*nf_seed = extract_l( W_extract_l( tmp64 ) );
-#endif
}
ELSE
{
diff --git a/lib_enc/core_enc_ol_fx.c b/lib_enc/core_enc_ol_fx.c
index 2483fe95d7dfd61525827fcbe15d94cdb8d96aa9..c26905199f00fb3652f400721a64767fe3d2fb77 100644
--- a/lib_enc/core_enc_ol_fx.c
+++ b/lib_enc/core_enc_ol_fx.c
@@ -80,13 +80,6 @@ void core_encode_openloop_fx(
Word16 lsp_old_q_rf[M + 1], lsf_old_q_rf[M + 1];
(void) vad_hover_flag;
(void) vad_flag_dtx;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
TCX_ENC_HANDLE hTcxEnc = st->hTcxEnc;
RF_ENC_HANDLE hRF = st->hRF;
@@ -553,11 +546,7 @@ void core_encode_openloop_fx(
/*v_sub(lsf_uq_rf, lsf_q_1st_rf, lsf_q_d_rf, M);*/
FOR( i = 0; i < M; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
lsf_q_d_rf[i] = shl_sat( mult_r( sub_sat( lsf_uq_rf[i], lsf_q_1st_rf[i] ), 25600 ), 5 );
-#else
- lsf_q_d_rf[i] = shl_sat( mult_r( sub_o( lsf_uq_rf[i], lsf_q_1st_rf[i], &Overflow ), 25600 ), 5 );
-#endif
move16();
/*input value is in Qx2.56, convert to Q6 to match table, quantizer table kept at Q6 to avoid losing precision */
/*Assume this difference data max range can be represented by Q6*/
@@ -758,12 +747,6 @@ static void closest_centroid_rf(
Word16 tmp, tmpL;
Word64 werr_64;
Word32 L_tmp, best_werr, werr;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
ind_vec[0] = 0;
move16();
@@ -778,13 +761,8 @@ static void closest_centroid_rf(
tmpL = i_mult2( i, length );
FOR( j = 0; j < length; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = sub_sat( data[j], quantizer[tmpL + j] );
L_tmp = L_mult_sat( tmp, tmp );
-#else
- tmp = sub_o( data[j], quantizer[tmpL + j], &Overflow );
- L_tmp = L_mult_o( tmp, tmp, &Overflow );
-#endif
werr_64 = W_mac_32_16( werr_64, L_tmp, weights[j] );
}
werr = W_sat_m( werr_64 );
@@ -836,12 +814,6 @@ void core_acelp_tcx20_switching_fx(
Word16 snr_tcx, snr_acelp, dsnr;
TCX_ENC_HANDLE hTcxEnc = st->hTcxEnc;
SP_MUS_CLAS_HANDLE hSpMusClas = st->hSpMusClas;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* Check minimum pitch for quantization */
FOR( i = 0; i < 3; i++ )
@@ -1117,11 +1089,7 @@ void core_acelp_tcx20_switching_fx(
FOR( j = 0; j < L_SUBFR; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp32 = L_mac0_sat( tmp32, st->wspeech_enc[i + j], st->wspeech_enc[i + j] );
-#else
- tmp32 = L_mac0_o( tmp32, st->wspeech_enc[i + j], st->wspeech_enc[i + j], &Overflow );
-#endif
}
tmp32 = L_shr( BASOP_Util_Log2( tmp32 ), 9 ); /* 15Q16 */
tmp32 = L_add( tmp32, L_sub( 0x1F0000, L_shl( L_deposit_h( add( Q_new, sub( shift, 1 ) ) ), 1 ) ) ); /* wspeech_enc scaling */
@@ -1139,11 +1107,7 @@ void core_acelp_tcx20_switching_fx(
tcx_snr = L_shl( Mpy_32_16_1( tcx_snr, 0x6054 ), 2 ); /* 0x6054 -> 10/log2(10) (2Q13) */
BASOP_SATURATE_WARNING_OFF_EVS
-#ifdef ISSUE_1867_replace_overflow_libenc
snr_tcx = round_fx_sat( L_shl_sat( tcx_snr, 8 ) ); /* 7Q8 */
-#else
- snr_tcx = round_fx_o( L_shl_o( tcx_snr, 8, &Overflow ), &Overflow ); /* 7Q8 */
-#endif
BASOP_SATURATE_WARNING_ON_EVS
/*--------------------------------------------------------------*
@@ -1177,19 +1141,11 @@ void core_acelp_tcx20_switching_fx(
FOR( j = 0; j < L_SUBFR; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
signal = L_mac0_sat( signal, st->wspeech_enc[i + j], st->wspeech_enc[i + j] );
tmp16 = round_fx_sat( L_shl_sat( Mpy_32_16_r( gain, st->wspeech_enc[i + j - T0] ), 15 ) );
tmp16 = sub_sat( st->wspeech_enc[i + j], tmp16 );
noise = L_mac0_sat( noise, tmp16, tmp16 );
-#else
- signal = L_mac0_o( signal, st->wspeech_enc[i + j], st->wspeech_enc[i + j], &Overflow );
-
- tmp16 = round_fx_o( L_shl_o( Mpy_32_16_r( gain, st->wspeech_enc[i + j - T0] ), 15, &Overflow ), &Overflow );
- tmp16 = sub_o( st->wspeech_enc[i + j], tmp16, &Overflow );
- noise = L_mac0_o( noise, tmp16, tmp16, &Overflow );
-#endif
}
/* Assume always 4 sub frames. */
/*assert( (st->L_frame / L_SUBFR) == 4);*/
@@ -1242,11 +1198,7 @@ void core_acelp_tcx20_switching_fx(
test();
if ( ( GT_16( snr_acelp, snr_tcx ) ) &&
( LT_16( snr_acelp, add( snr_tcx, 512 /*2.0f Q8*/ ) ) ) &&
-#ifdef ISSUE_1867_replace_overflow_libenc
( LT_16( add_sat( st->prevTempFlatness_fx, currFlatness ), 416 /*3.25f Q7*/ ) || EQ_16( stab_fac, 0x7fff /*1 Q15*/ ) ||
-#else
- ( LT_16( add_o( st->prevTempFlatness_fx, currFlatness, &Overflow ), 416 /*3.25f Q7*/ ) || EQ_16( stab_fac, 0x7fff /*1 Q15*/ ) ||
-#endif
( EQ_32( st->sr_core, INT_FS_12k8 ) && EQ_16( st->sp_aud_decision0, 1 ) && LT_16( add_sat( st->prevTempFlatness_fx, currFlatness ), 2560 /*20.f Q7*/ ) ) ) &&
( LE_16( st->acelpFramesCount, 6 ) ) )
{
diff --git a/lib_enc/corr_xh_fx.c b/lib_enc/corr_xh_fx.c
index 135d560d16fd5005c0ee426840836d377042b6b3..21af7bc0a75da31e16fc522af9f3d4562a33cd13 100644
--- a/lib_enc/corr_xh_fx.c
+++ b/lib_enc/corr_xh_fx.c
@@ -31,12 +31,6 @@ void corr_xh_fx(
{
Word16 i, j, k;
Word32 L_tmp, y32[L_SUBFR], L_maxloc, L_tot;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
/* first keep the result on 32 bits and find absolute maximum */
L_tot = L_deposit_l( 1 );
@@ -49,11 +43,7 @@ void corr_xh_fx(
L_tmp = L_mac( 1L, x[i], h[0] ); /* 1 -> to avoid null dn[] Qx+15*/
FOR( j = i; j < L_SUBFR - 1; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac_sat( L_tmp, x[j + 1], h[j + 1 - i] ); /*Qx+15*/
-#else
- L_tmp = L_mac_o( L_tmp, x[j + 1], h[j + 1 - i], &Overflow ); /*Qx+15*/
-#endif
}
y32[i] = L_tmp; /*Qx+15*/
@@ -63,13 +53,8 @@ void corr_xh_fx(
}
/* tot += 3*max / 8 */
L_maxloc = L_shr( L_maxloc, 2 );
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tot = L_add_sat( L_tot, L_maxloc ); /* +max/4 */
L_tot = L_add_sat( L_tot, L_shr( L_maxloc, 1 ) ); /* +max/8 */
-#else
- L_tot = L_add_o( L_tot, L_maxloc, &Overflow ); /* +max/4 */
- L_tot = L_add_o( L_tot, L_shr( L_maxloc, 1 ), &Overflow ); /* +max/8 */
-#endif
}
/* Find the number of right shifts to do on y32[] so that */
@@ -93,12 +78,6 @@ void corr_hh_ivas_fx(
{
Word16 i, j, k;
Word32 L_tmp, y32[L_SUBFR * 2], L_maxloc, L_tot;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
/* first keep the result on 32 bits and find absolute maximum */
L_tot = L_deposit_l( 1 );
@@ -111,11 +90,7 @@ void corr_hh_ivas_fx(
L_tmp = L_mac( 1L, shr( h[i], 3 ), shr( h[0], 3 ) ); /* 1 -> to avoid null dn[] */ // 2*(15 - norm_s(h[0]) -3) - 1
FOR( j = i; j < L_subfr - 1; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac_sat( L_tmp, shr( h[j + 1], 3 ), shr( h[j + 1 - i], 3 ) ); // 2*(15 - norm_s(h[0]) -3) - 1 //?sat
-#else
- L_tmp = L_mac_o( L_tmp, shr( h[j + 1], 3 ), shr( h[j + 1 - i], 3 ), &Overflow ); // 2*(15 - norm_s(h[0]) -3) - 1
-#endif
}
y32[i] = L_tmp; // 2*(15 - norm_s(h[0]) -3) - 1
@@ -125,13 +100,8 @@ void corr_hh_ivas_fx(
}
/* tot += 3*max / 8 */
L_maxloc = L_shr( L_maxloc, 2 );
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tot = L_add_sat( L_tot, L_maxloc ); /* +max/4 */
L_tot = L_add_sat( L_tot, L_shr( L_maxloc, 1 ) ); /* +max/8 */
-#else
- L_tot = L_add_o( L_tot, L_maxloc, &Overflow ); /* +max/4 */
- L_tot = L_add_o( L_tot, L_shr( L_maxloc, 1 ), &Overflow ); /* +max/8 */
-#endif
}
/* Find the number of right shifts to do on y32[] so that */
@@ -161,12 +131,6 @@ void corr_xh_ivas_fx(
{
Word16 i, j, k;
Word32 L_tmp, y32[L_SUBFR * 2], L_maxloc, L_tot;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
/* first keep the result on 32 bits and find absolute maximum */
L_tot = L_deposit_l( 0 );
@@ -179,11 +143,7 @@ void corr_xh_ivas_fx(
L_tmp = L_mac( 0, x[i], h[0] ); // Qx+(14 - norm_s(h[0])) + 1
FOR( j = i; j < L_subfr - 1; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac_sat( L_tmp, x[j + 1], h[j + 1 - i] ); // Qx+(14 - norm_s(h[0])) + 1
-#else
- L_tmp = L_mac_o( L_tmp, x[j + 1], h[j + 1 - i], &Overflow ); // Qx+(14 - norm_s(h[0])) + 1
-#endif
}
y32[i] = L_tmp; // Qx+(14 - norm_s(h[0])) + 1
@@ -193,13 +153,8 @@ void corr_xh_ivas_fx(
}
/* tot += 3*max / 8 */
L_maxloc = L_shr( L_maxloc, 2 );
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tot = L_add_sat( L_tot, L_maxloc ); /* +max/4 */
L_tot = L_add_sat( L_tot, L_shr( L_maxloc, 1 ) ); /* +max/8 */
-#else
- L_tot = L_add_o( L_tot, L_maxloc, &Overflow ); /* +max/4 */
- L_tot = L_add_o( L_tot, L_shr( L_maxloc, 1 ), &Overflow ); /* +max/8 */
-#endif
}
/* Find the number of right shifts to do on y32[] so that */
diff --git a/lib_enc/detect_transient_fx.c b/lib_enc/detect_transient_fx.c
index 8a95627042e909e9ff6cc187e94c10e814fb1b62..14a6d6c80b06ee3b070e2e2507b13f6bbf412914 100644
--- a/lib_enc/detect_transient_fx.c
+++ b/lib_enc/detect_transient_fx.c
@@ -62,41 +62,28 @@ static void hp_filter_fx(
{
Word16 i;
Word32 L_tmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
/*y[0] = 0.4931f * *oldy + 0.7466f*(x[0] - *oldx); */
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mult( sub_sat( x[0], *oldx ), 24465 /*0.7466f in Q15*/ ); /*Q_new+16 */
-#else
- L_tmp = L_mult( sub_o( x[0], *oldx, &Overflow ), 24465 /*0.7466f in Q15*/ ); /*Q_new+16 */
-#endif
- L_tmp = L_mac_sat( L_tmp, *oldy, 16158 /*0.4931f in Q15*/ ); /*Q_new+16 */
- y[0] = round_fx_sat( L_tmp ); /*Q_new */
+ L_tmp = L_mac_sat( L_tmp, *oldy, 16158 /*0.4931f in Q15*/ ); /*Q_new+16 */
+ y[0] = round_fx_sat( L_tmp ); /*Q_new */
FOR( i = 1; i < L; i++ )
{
/*y[i] = 0.4931f*y[i-1] + 0.7466f*(x[i] - x[i-1]); */
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mult( sub_sat( x[i], x[i - 1] ), 24465 /*0.7466f in Q15*/ ); /*Q_new+16 */
L_tmp = L_mac_sat( L_tmp, y[i - 1], 16158 /*0.4931f in Q15*/ ); /*Q_new+16 */
y[i] = round_fx_sat( L_tmp ); /*Q_new */
-#else
- L_tmp = L_mult( sub_o( x[i], x[i - 1], &Overflow ), 24465 /*0.7466f in Q15*/ ); /*Q_new+16 */
- L_tmp = L_mac_o( L_tmp, y[i - 1], 16158 /*0.4931f in Q15*/, &Overflow ); /*Q_new+16 */
- y[i] = round_fx_o( L_tmp, &Overflow ); /*Q_new */
-#endif
}
*oldx = x[L - 1];
move16(); /*Q_new */
*oldy = y[L - 1];
move16(); /*Q_new */
+
+ return;
}
+
+
/*--------------------------------------------------------------------------*/
/* Function detect_transient */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~ */
@@ -129,11 +116,9 @@ Word16 detect_transient_fx(
Word32 E_low_fx, E_high_fx;
Word16 temp16, Thres_fx = 0;
Word16 exp;
-#ifdef ISSUE_1867_replace_overflow_libenc
#ifdef BASOP_NOGLOB_DECLARE_LOCAL
Flag Overflow = 0;
move32();
-#endif
#endif
shift = 0;
@@ -165,11 +150,7 @@ Word16 detect_transient_fx(
FOR( i = 0; i < L / 4; i++ )
{
/*EnergyLT += out_filt[i] * out_filt[i]; */
-#ifdef ISSUE_1867_replace_overflow_libenc
EnergyLT = L_mac0_sat( EnergyLT, out_filt_fx[i], out_filt_fx[i] ); /*2Q_new */
-#else
- EnergyLT = L_mac0_o( EnergyLT, out_filt_fx[i], out_filt_fx[i], &Overflow ); /*2Q_new */
-#endif
}
}
ELSE
@@ -188,27 +169,14 @@ Word16 detect_transient_fx(
FOR( i = 0; i < L / 4; i++ )
{
temp16 = extract_l( L_shr( out_filt_fx[i + blk * ( L / 4 )], 12 ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
Energy_fx = L_add_sat( Energy_fx, L_mult0( temp16, temp16 ) );
-#else
- Energy_fx = L_add_o( Energy_fx, L_mult0( temp16, temp16 ), &Overflow );
-#endif
- temp16 = shr( in_fx[i + blk * ( L / 4 )], Q_new ); /*Q0*/
-#ifdef ISSUE_1867_replace_overflow_libenc
+ temp16 = shr( in_fx[i + blk * ( L / 4 )], Q_new ); /*Q0*/
Energy_in_fx[blk + 1] = L_add_sat( Energy_in_fx[blk + 1], L_mult0( temp16, temp16 ) ); /*Q0*/
-#else
- Energy_in_fx[blk + 1] = L_add_o( Energy_in_fx[blk + 1], L_mult0( temp16, temp16 ), &Overflow ); /*Q0*/
-#endif
move32();
}
-#ifdef ISSUE_1867_replace_overflow_libenc
E_in_fx = L_add_sat( E_in_fx, Energy_in_fx[blk + 1] ); /*Q0*/
E_out_fx = L_add_sat( E_out_fx, Energy_fx ); /*Q0*/
-#else
- E_in_fx = L_add_o( E_in_fx, Energy_in_fx[blk + 1], &Overflow ); /*Q0*/
- E_out_fx = L_add_o( E_out_fx, Energy_fx, &Overflow ); /*Q0*/
-#endif
Thres_fx = 2185; /*1 /15 Q15*/
move16();
@@ -232,21 +200,13 @@ Word16 detect_transient_fx(
FOR( i = 0; i < L / 8; i++ )
{
/*Energy += out_filt_fx[i + blk*(L/4)] * out_filt_fx[i + blk*(L/4)]; */
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac0_sat( L_tmp, out_filt_fx[i + blk * ( L / 4 )], out_filt_fx[i + blk * ( L / 4 )] ); /*2Q_new */
-#else
- L_tmp = L_mac0_o( L_tmp, out_filt_fx[i + blk * ( L / 4 )], out_filt_fx[i + blk * ( L / 4 )], &Overflow ); /*2Q_new */
-#endif
}
L_tmp2 = L_deposit_l( 0 );
FOR( ; i < L / 4; i++ )
{
/*Energy += out_filt_fx[i + blk*(L/4)] * out_filt_fx[i + blk*(L/4)]; */
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp2 = L_mac0_sat( L_tmp2, out_filt_fx[i + blk * ( L / 4 )], out_filt_fx[i + blk * ( L / 4 )] ); /*2Q_new */
-#else
- L_tmp2 = L_mac0_o( L_tmp2, out_filt_fx[i + blk * ( L / 4 )], out_filt_fx[i + blk * ( L / 4 )], &Overflow ); /*2Q_new */
-#endif
}
Overflow = 0;
move16();
@@ -257,14 +217,7 @@ Word16 detect_transient_fx(
shift = 1;
move16();
}
-#ifndef ISSUE_1867_replace_overflow_libenc
- Overflow = 0;
- move16();
-
- Energy = L_add_o( L_shr( L_tmp, shift ), L_shr( L_tmp2, shift ), &Overflow ); /*2Q_new - shift*/
-#else
- Energy = L_add_sat( L_shr( L_tmp, shift ), L_shr( L_tmp2, shift ) ); /*2Q_new - shift*/
-#endif
+ Energy = L_add_sat( L_shr( L_tmp, shift ), L_shr( L_tmp2, shift ) ); /*2Q_new - shift*/
test();
IF( EQ_16( st_fx->extl, SWB_BWE ) || EQ_16( st_fx->extl, FB_BWE ) )
{
@@ -305,11 +258,7 @@ Word16 detect_transient_fx(
}
/*EnergyLT = 0.75f*EnergyLT + 0.25f*Energy; */
/*0.75f*EnergyLT in Q0 //0.25f*Energy in Q0 */
-#ifdef ISSUE_1867_replace_overflow_libenc
EnergyLT = L_add_sat( Mult_32_16( EnergyLT, 24576 /*0.75f in Q15*/ ), Mult_32_16( Energy, shl( 8192 /*0.25 in Q15*/, shift ) ) ); /*2Q_new */
-#else
- EnergyLT = L_add_o( Mult_32_16( EnergyLT, 24576 /*0.75f in Q15*/ ), Mult_32_16( Energy, shl( 8192 /*0.25 in Q15*/, shift ) ), &Overflow ); /*2Q_new */
-#endif
}
}
st_fx->EnergyLT_fx = EnergyLT;
diff --git a/lib_enc/dtx_fx.c b/lib_enc/dtx_fx.c
index 10ec0dd8bcb86f9468d70e8b96a4ef1744a22ed8..fa9da7f420e75fd0fa49db50cfddc897fa044bcf 100644
--- a/lib_enc/dtx_fx.c
+++ b/lib_enc/dtx_fx.c
@@ -78,12 +78,6 @@ void dtx_ivas_fx(
TD_CNG_ENC_HANDLE hTdCngEnc = st_fx->hTdCngEnc;
Word16 last_br_cng_flag, last_br_flag, br_dtx_flag;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
Word32 total_brate_ref;
total_brate_ref = st_fx->total_brate;
@@ -467,11 +461,7 @@ void dtx_ivas_fx(
speech++;
FOR( i = 1; i < L_FRAME / 16; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac0_sat( L_tmp, *speech, *speech ); /*2*Q_speech*/
-#else
- L_tmp = L_mac0_o( L_tmp, *speech, *speech, &Overflow ); /*2*Q_speech*/
-#endif
speech++;
}
hDtxEnc->frame_ener_fx = L_add( hDtxEnc->frame_ener_fx, L_shr( L_tmp, Q_speech2 ) ); /* Q(-7) */
@@ -641,12 +631,6 @@ void dtx_fx(
TD_CNG_ENC_HANDLE hTdCngEnc = st_fx->hTdCngEnc;
Word16 last_br_cng_flag, last_br_flag, br_dtx_flag;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
IF( st_fx->dtx_sce_sba != 0 )
{
@@ -943,11 +927,7 @@ void dtx_fx(
speech++;
FOR( i = 1; i < L_FRAME / 16; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac0_sat( L_tmp, *speech, *speech ); /*2*Q_speech*/
-#else
- L_tmp = L_mac0_o( L_tmp, *speech, *speech, &Overflow ); /*2*Q_speech*/
-#endif
speech++;
}
hDtxEnc->frame_ener_fx = L_add( hDtxEnc->frame_ener_fx, L_shr( L_tmp, Q_speech2 ) ); /*Q(-7) */
@@ -1252,11 +1232,6 @@ void dtx_hangover_control_fx(
VAD_HANDLE hVAD = st_fx->hVAD;
DTX_ENC_HANDLE hDtxEnc = st_fx->hDtxEnc;
TD_CNG_ENC_HANDLE hTdCngEnc = st_fx->hTdCngEnc;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/* get current frame exc energy in log2 */
exp = norm_l( hTdCngEnc->ho_ener_circ_fx[hTdCngEnc->ho_circ_ptr] );
@@ -1425,11 +1400,7 @@ void dtx_hangover_control_fx(
move16();
FOR( j = 0; j < m; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
lsp_est[i] = add_sat( lsp_est[i], tmp[j * M + i] ); /*Q15 */
-#else
- lsp_est[i] = add_o( lsp_est[i], tmp[j * M + i], &Overflow ); /*Q15 */
-#endif
}
lsp_est[i] = sub( lsp_est[i], tmp[max_idx[0] * M + i] ); /*Q15 */
@@ -1445,20 +1416,12 @@ void dtx_hangover_control_fx(
move16();
FOR( j = 0; j < m; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
lsp_est[i] = add_sat( lsp_est[i], tmp[j * M + i] ); /*Q15 */
-#else
- lsp_est[i] = add_o( lsp_est[i], tmp[j * M + i], &Overflow ); /*Q15 */
-#endif
}
-#ifdef ISSUE_1867_replace_overflow_libenc
lsp_est[i] = sub_sat( lsp_est[i], add_sat( tmp[max_idx[0] * M + i], tmp[max_idx[1] * M + i] ) ); /*Q15 */
-#else
- lsp_est[i] = sub_o( lsp_est[i], add_o( tmp[max_idx[0] * M + i], tmp[max_idx[1] * M + i], &Overflow ), &Overflow ); /*Q15 */
-#endif
- S_tmp = div_s( 1, sub( m, 2 ) ); /*Q15 */
- lsp_est[i] = mult_r( lsp_est[i], S_tmp ); /*Q15 */
+ S_tmp = div_s( 1, sub( m, 2 ) ); /*Q15 */
+ lsp_est[i] = mult_r( lsp_est[i], S_tmp ); /*Q15 */
}
}
@@ -1466,11 +1429,7 @@ void dtx_hangover_control_fx(
move16();
FOR( i = 0; i < M; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
- Dlsp_n2e = add_sat( Dlsp_n2e, abs_s( sub( lsp_new_fx[i], lsp_est[i] ) ) ); /*Q15 */
-#else
- Dlsp_n2e = add_o( Dlsp_n2e, abs_s( sub( lsp_new_fx[i], lsp_est[i] ) ), &Overflow ); /*Q15 */
-#endif
+ Dlsp_n2e = add_sat( Dlsp_n2e, abs_s( sub( lsp_new_fx[i], lsp_est[i] ) ) ); /*Q15 */
lsp_est[i] = add( mult_r( 26214, lsp_est[i] ), mult_r( 6554, lsp_new_fx[i] ) ); /*Q15 */
}
@@ -1483,11 +1442,7 @@ void dtx_hangover_control_fx(
FOR( i = 0; i < M; i++ )
{
S_tmp = abs_s( sub( hDtxEnc->lspCNG_fx[i], lsp_est[i] ) ); /*Q15 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- Dlsp = add_sat( Dlsp, S_tmp ); /*Q15 */
-#else
- Dlsp = add_o( Dlsp, S_tmp, &Overflow ); /*Q15 */
-#endif
+ Dlsp = add_sat( Dlsp, S_tmp ); /*Q15 */
IF( GT_16( S_tmp, S_max ) )
{
S_max = S_tmp; /*Q15 */
diff --git a/lib_enc/enc_acelp_fx.c b/lib_enc/enc_acelp_fx.c
index 16d4bd260abb1cbc99d22605221e3f9859f2e134..ca4c399b0ec345672e3fd2bf5cafd04d0c73bda3 100644
--- a/lib_enc/enc_acelp_fx.c
+++ b/lib_enc/enc_acelp_fx.c
@@ -65,12 +65,6 @@ void E_ACELP_h_vec_corr1_fx(
Word16 *dn2;
Word16 *p0, *p1, *p2;
Word32 L_sum;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
dn2 = &dn2_pos[( track * 8 )]; /*Q0*/
p0 = rrixix[track]; /*Q9*/
@@ -84,41 +78,26 @@ void E_ACELP_h_vec_corr1_fx(
p2 = &vec[dn]; /*Qx*/
FOR( j = dn; j < L_SUBFR - 1; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_sum = L_mac_sat( L_sum, *p1++, *p2++ ); /*2*Qx+1*/
-#else
- L_sum = L_mac_o( L_sum, *p1++, *p2++, &Overflow ); /*2*Qx+1*/
-#endif
}
-#ifdef ISSUE_1867_replace_overflow_libenc
corr = mac_r_sat( L_sum, *p1++, *p2++ ); /*Q9*/
-#else
- corr = mac_ro( L_sum, *p1++, *p2++, &Overflow ); /*Q9*/
-#endif
/*cor[dn >> 2] = sign[dn] * s + p0[dn >> 2];*/
j = shr( dn, 2 );
if ( sign[dn] > 0 )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
corr = add_sat( p0[j], corr ); /*Q9*/
-#else
- corr = add_o( p0[j], corr, &Overflow ); /*Q9*/
-#endif
}
if ( sign[dn] < 0 )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
corr = sub_sat( p0[j], corr ); /*Q9*/
-#else
- corr = sub_o( p0[j], corr, &Overflow ); /*Q9*/
-#endif
}
cor[j] = corr; /*Q9*/
move16();
}
+
return;
}
@@ -134,12 +113,6 @@ void E_ACELP_h_vec_corr2_fx(
Word16 i, j, pos, corr;
Word16 *p0, *p1, *p2;
Word32 L_sum;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
p0 = rrixix[track]; /*Q9*/
@@ -152,21 +125,12 @@ void E_ACELP_h_vec_corr2_fx(
p2 = &vec[pos]; /*Qx*/
FOR( j = pos; j < L_SUBFR - 1; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_sum = L_mac_sat( L_sum, *p1++, *p2++ ); /* 2*Qx+1 */
-#else
- L_sum = L_mac_o( L_sum, *p1++, *p2++, &Overflow ); /* 2*Qx+1 */
-#endif
}
-#ifdef ISSUE_1867_replace_overflow_libenc
corr = mac_r_sat( L_sum, *p1++, *p2++ ); /*Q9*/
-#else
- corr = mac_ro( L_sum, *p1++, *p2++, &Overflow ); /*Q9*/
-#endif
/*cor[i] = s * sign[track] + p0[i];*/
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( sign[pos] > 0 )
{
corr = add_sat( *p0++, corr ); /*Q9*/
@@ -175,21 +139,12 @@ void E_ACELP_h_vec_corr2_fx(
{
corr = sub_sat( *p0++, corr ); /*Q9*/
}
-#else
- if ( sign[pos] > 0 )
- {
- corr = add_o( *p0++, corr, &Overflow ); /*Q9*/
- }
- if ( sign[pos] < 0 )
- {
- corr = sub_o( *p0++, corr, &Overflow ); /*Q9*/
- }
-#endif
cor[i] = corr; /*Q9*/
move16();
pos = add( pos, 4 );
}
+
return;
}
@@ -239,14 +194,6 @@ static void E_ACELP_2pulse_search(
Word32 xy_save;
Word16 check = 0; /* debug code not instrumented */
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
-
/* eight dn2 max positions per track */
/*pos_x = &dn2[track_x << 3]; SHIFT(1); PTR_INIT(1);*/
pos_x = &dn2[( track_x * 8 )]; /*Qdn*/
@@ -262,11 +209,7 @@ static void E_ACELP_2pulse_search(
sqk[0] = -1;
move16();
x2 = shr( pos_x[0], 2 ); /*Qdn*/
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( mac_r_sat( L_mac_sat( L_mac_sat( alp0, cor_x[x2], _1_ ), cor_y[0], _1_ ), rrixiy[track_x][( x2 * 16 )], _1_ ) < 0 )
-#else
- if ( mac_ro( L_mac_o( L_mac_o( alp0, cor_x[x2], _1_, &Overflow ), cor_y[0], _1_, &Overflow ), rrixiy[track_x][( x2 * 16 )], _1_, &Overflow ) < 0 )
-#endif
{
sqk[0] = 1;
move16();
@@ -286,11 +229,7 @@ static void E_ACELP_2pulse_search(
ps1 = add( ps0, dn[x] ); /*Qdn*/
/*alp1 = alp0 + cor_x[x2];*/
-#ifdef ISSUE_1867_replace_overflow_libenc
alp1 = L_mac_sat( alp0, cor_x[x2], _1_ ); /*Q22*/
-#else
- alp1 = L_mac_o( alp0, cor_x[x2], _1_, &Overflow ); /*Q22*/
-#endif
p1 = cor_y; /*Qx*/
p2 = &rrixiy[track_x][( x2 * 16 )]; /*Q9*/
@@ -302,14 +241,9 @@ static void E_ACELP_2pulse_search(
move16();
/*alp2 = alp1 + (*p1++) + (*p2++);*/
-#ifdef ISSUE_1867_replace_overflow_libenc
alp2 = L_mac_sat( alp1, *p1++, _1_ ); /*Qx+12+1*/
alp2_16 = mac_r_sat( alp2, *p2++, _1_ ); /*Q6*/
-#else
- alp2 = L_mac_o( alp1, *p1++, _1_, &Overflow ); /*Qx+12+1*/
- alp2_16 = mac_ro( alp2, *p2++, _1_, &Overflow ); /*Q6*/
-#endif
- alpk[1 - ik] = alp2_16; /*Q6*/
+ alpk[1 - ik] = alp2_16; /*Q6*/
move16();
/*sq = ps2 * ps2;*/
@@ -348,6 +282,7 @@ static void E_ACELP_2pulse_search(
*alp = alpk[ik]; /*Q6*/
move16();
+
return;
}
@@ -458,6 +393,7 @@ static void E_ACELP_1pulse_search(
move16();
*ix = x_save; /*Q0*/
move16();
+
return;
}
@@ -618,29 +554,16 @@ Word16 E_ACELP_xy1_corr_fx(
Word16 i, Q_xn;
Word16 xy, yy, exp_xy, exp_yy, gain;
Word32 L_off;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
L_off = L_shr( 10737418l /*0.01f/2.0f Q31*/, s_min( add( exp_xn, exp_xn ), 31 ) );
L_off = L_max( 1, L_off ); /* ensure at least a '1' */
/* Compute scalar product t1: */
-#ifdef ISSUE_1867_replace_overflow_libenc
yy = round_fx_sat( Dot_product15_offs( y1, y1, L_subfr, &exp_yy, L_off ) ); /*Q15 - exp_yy*/
-#else
- yy = round_fx_o( Dot_product15_offs( y1, y1, L_subfr, &exp_yy, L_off ), &Overflow ); /*Q15 - exp_yy*/
-#endif
/* Compute scalar product t0: */
-#ifdef ISSUE_1867_replace_overflow_libenc
xy = round_fx_sat( Dot_product12_offs( xn, y1, L_subfr, &exp_xy, L_off ) ); /*Q15 - exp_xy*/
-#else
- xy = round_fx_o( Dot_product12_offs( xn, y1, L_subfr, &exp_xy, L_off ), &Overflow ); /*Q15 - exp_xy*/
-#endif
+
/* Compute doubled format out of the exponent */
Q_xn = shl( sub( 15, exp_xn ), 1 );
g_corr->y1y1 = yy;
@@ -682,11 +605,7 @@ Word16 E_ACELP_xy1_corr_fx(
Word16 tmp, exp_tmp, exp_div;
/* Compute scalar product */
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = round_fx_sat( Dot_product12_offs( xn, xn, L_subfr, &exp_tmp, 1 ) ); /*Q15 - exp_tmp*/
-#else
- tmp = round_fx_o( Dot_product12_offs( xn, xn, L_subfr, &exp_tmp, 1 ), &Overflow ); /*Q15 - exp_tmp*/
-#endif
/* gain_p_snr = sqrt(/) */
tmp = BASOP_Util_Divide1616_Scale( tmp, yy, &exp_div );
exp_tmp = add( sub( exp_tmp, exp_yy ), exp_div );
@@ -696,11 +615,7 @@ Word16 E_ACELP_xy1_corr_fx(
/* Note: shl works as shl or shr. */
exp_tmp = sub( exp_tmp, 1 );
BASOP_SATURATE_WARNING_OFF_EVS
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = round_fx_sat( L_shl_sat( Mpy_32_16_1( 1717986944l /*ACELP_GAINS_CONST Q31*/, tmp ), exp_tmp ) ); /*Q14*/
-#else
- tmp = round_fx_o( L_shl_o( Mpy_32_16_1( 1717986944l /*ACELP_GAINS_CONST Q31*/, tmp ), exp_tmp, &Overflow ), &Overflow ); /*Q14*/
-#endif
BASOP_SATURATE_WARNING_ON_EVS
gain = s_min( gain, tmp ); /*Q14*/
@@ -708,7 +623,6 @@ Word16 E_ACELP_xy1_corr_fx(
bail:
-
return ( gain );
}
@@ -808,12 +722,6 @@ void E_ACELP_codebook_target_update_fx(
{
Word16 i, Q15_flag;
Word32 L_tmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
assert( gain >= 0 );
Q15_flag = 0;
@@ -830,19 +738,13 @@ void E_ACELP_codebook_target_update_fx(
L_tmp = L_deposit_h( x[i] ); /*Q_xn+16*/
if ( Q15_flag == 0 )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_msu_sat( L_tmp, y[i], gain ); /*Q_xn+15*/
-#else
- L_tmp = L_msu_o( L_tmp, y[i], gain, &Overflow ); /*Q_xn+15*/
-#endif
}
-#ifdef ISSUE_1867_replace_overflow_libenc
x2[i] = msu_r_sat( L_tmp, y[i], gain ); /*Q_xn*/
-#else
- x2[i] = msu_ro( L_tmp, y[i], gain, &Overflow ); /*Q_xn*/
-#endif
move16();
}
+
+ return;
}
@@ -882,13 +784,6 @@ void E_ACELP_pulsesign(
Word16 signs[3];
Word16 *ptr16;
Word16 val, index;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
/* calculate energy for normalization of cn[] and dn[] */
Lval = L_mac0( 1, cn[0], cn[0] ); /*2*Q_xn*/
@@ -896,12 +791,8 @@ void E_ACELP_pulsesign(
FOR( i = 1; i < L_subfr; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Lval = L_mac0_sat( Lval, cn[i], cn[i] ); /*2*Q_xn*/
-#else
- Lval = L_mac0_o( Lval, cn[i], cn[i], &Overflow ); /*2*Q_xn*/
-#endif
- Lcor = L_mac0( Lcor, dn[i], dn[i] ); /*2*Qdn*/
+ Lcor = L_mac0( Lcor, dn[i], dn[i] ); /*2*Qdn*/
}
e_dn = 31;
@@ -917,13 +808,8 @@ void E_ACELP_pulsesign(
if ( i > 0 )
Lcor = L_shr( Lcor, i );
-#ifdef ISSUE_1867_replace_overflow_libenc
k_dn = round_fx_sat( Lval ); /*Q15 - e_dn*/
k_cn = round_fx_sat( Lcor ); /*Q15 - e_cn*/
-#else
- k_dn = round_fx_o( Lval, &Overflow ); /*Q15 - e_dn*/
- k_cn = round_fx_o( Lcor, &Overflow ); /*Q15 - e_cn*/
-#endif
k_cn = mult_r( 0x2000, k_cn ); /* 1 in Q13 */
k_dn = mult_r( alp, k_dn ); /* alp in Q13 */
@@ -941,13 +827,9 @@ void E_ACELP_pulsesign(
FOR( i = 0; i < L_subfr; i++ )
{
/*cor = (s * cn[i]) + (alp * dn[i]); MULT(1);MAC(1);*/
- Lcor = L_mult( cn[i], k_cn ); /*Q_xn + Q15 - e_cn + 1*/
- Lcor = L_mac( Lcor, dn[i], k_dn ); /*Qdn + Q15 - e_dn + 1*/
-#ifdef ISSUE_1867_replace_overflow_libenc
+ Lcor = L_mult( cn[i], k_cn ); /*Q_xn + Q15 - e_cn + 1*/
+ Lcor = L_mac( Lcor, dn[i], k_dn ); /*Qdn + Q15 - e_dn + 1*/
val = round_fx_sat( L_shl_sat( Lcor, 4 ) ); /*shifting by 4 may overflow but improves accuracy Qdn + 4 - e_dn*/
-#else
- val = round_fx_o( L_shl_o( Lcor, 4, &Overflow ), &Overflow ); /*shifting by 4 may overflow but improves accuracy Qdn + 4 - e_dn*/
-#endif
index = shr( val, 15 );
sign[i] = ptr16[index]; /*Q15*/
@@ -1268,12 +1150,6 @@ void E_ACELP_4tsearch_fx(
Word32 s, L_tmp;
Word16 nb_pulse, nb_pulse_m2;
Word16 check = 0; /* debug code not instrumented */
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
alp = config->alp; /* Q13 */ /* initial value for energy of all fixed pulses */
move16();
@@ -1311,11 +1187,7 @@ void E_ACELP_4tsearch_fx(
BASOP_SATURATE_WARNING_OFF_EVS
FOR( i = 0; i < L_SUBFR; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac_sat( L_tmp, H[i], H[i] ); /*Q25*/
-#else
- L_tmp = L_mac_o( L_tmp, H[i], H[i], &Overflow ); /*Q25*/
-#endif
}
val = extract_h( L_tmp ); /*Q9*/
BASOP_SATURATE_WARNING_ON_EVS
@@ -1463,13 +1335,8 @@ void E_ACELP_4tsearch_fx(
L_tmp = L_mult( vec[0], vec[0] ); /*Q25+2*scale*/
FOR( i = 1; i < L_SUBFR; i++ )
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac_sat( L_tmp, vec[i], vec[i] ); /*Q25+2*scale*/
-#else
- L_tmp = L_mac_o( L_tmp, vec[i], vec[i], &Overflow ); /*Q25+2*scale*/
-#endif
-
- alp = round_fx( L_shr( L_tmp, 3 ) ); /*Q6+2*scale*/
+ alp = round_fx( L_shr( L_tmp, 3 ) ); /*Q6+2*scale*/
/*alp *= 0.5F; */
}
@@ -1524,11 +1391,7 @@ void E_ACELP_4tsearch_fx(
FOR( i = 0; i < L_SUBFR; i++ )
{
tmp = add( *p0++, *p1++ );
-#ifdef ISSUE_1867_replace_overflow_libenc
vec[i] = add_sat( vec[i], tmp ); /* can saturate here. */
-#else
- vec[i] = add_o( vec[i], tmp, &Overflow ); /* can saturate here. */
-#endif
move16();
}
}
@@ -1559,7 +1422,6 @@ void E_ACELP_4tsearch_fx(
}
assert( check ); /* debug code not instrumented */
-
/*
* Build the codeword, the filtered codeword and index of codevector, as well as store weighted correlations.
*/
@@ -1578,16 +1440,14 @@ void E_ACELP_4tsearch_fx(
}
FOR( i = 0; i < L_SUBFR; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
y[i] = add_sat( y[i], *p0++ ); /*Q12+scale*/
-#else
- y[i] = add_o( y[i], *p0++, &Overflow ); /*Q12+scale*/
-#endif
move16();
}
}
return;
}
+
+
/*
* E_ACELP_4t_fx
*
@@ -1622,6 +1482,7 @@ void E_ACELP_4tsearch_fx(
* Returns:
* void
*/
+
void E_ACELP_4t_fx(
Word16 dn[], /*Qdn*/
Word16 cn[] /* Q_xn */,
@@ -1635,9 +1496,8 @@ void E_ACELP_4t_fx(
const Word16 last_L_frame, /*Q0*/
const Word32 total_brate, /*Q0*/
const Word16 i_subfr, /*Q0*/
- const Word16 cmpl_flag /*Q0*/
- ,
- const Word16 element_mode /*Q0*/
+ const Word16 cmpl_flag, /*Q0*/
+ const Word16 element_mode /*Q0*/
)
{
PulseConfig config;
@@ -1710,9 +1570,11 @@ static void E_ACELP_indexing_shift(
}
dst[i] = s_or( lshl( src[i], shift_bits ), lsb_bits ); /*Q(shift_bits)*/
move16();
+
return;
}
+
#define MAX_IDX_LEN 9
Word16 E_ACELP_indexing_fx(
@@ -1861,13 +1723,10 @@ void E_ACELP_adaptive_codebook(
ACELP_CbkCorr *g_corr, /* o : ACELP correlation values */
Word16 **pt_indice, /* i/o: quantization indices pointer */
Word16 *pitch_gain, /* o : adaptive codebook gain 1Q14 */
- Word16 exp_xn /* i : exponent of xn (Q_xn-15) */
- ,
+ Word16 exp_xn, /* i : exponent of xn (Q_xn-15) */
Word16 rf_mode,
Word16 rf_coder_type,
- Word16 *lp_select
-
-)
+ Word16 *lp_select )
{
Word16 y2[L_SUBFR], xn2[L_SUBFR], code[L_SUBFR];
ACELP_CbkCorr g_corr2;
@@ -1950,6 +1809,7 @@ void E_ACELP_adaptive_codebook(
* - find filtered pitch exc. y2[]=exc[] convolved with h1[]) *
* - compute pitch gain2 *
*-----------------------------------------------------------------*/
+
test();
IF( EQ_16( mode, NORMAL_OPERATION ) || EQ_16( mode, LOW_PASS ) )
{
@@ -1989,6 +1849,7 @@ void E_ACELP_adaptive_codebook(
/*-----------------------------------------------------------------*
* use the best prediction (minimise quadratic error). *
*-----------------------------------------------------------------*/
+
test();
IF( EQ_16( mode, LOW_PASS ) || LT_32( L_tmp, L_ener ) )
{
@@ -2149,19 +2010,7 @@ static void E_ACELP_codearithp_fx(
{
Word16 k, nb_pulse, i, t, pos[NPMAXPT], posno;
Word16 sign, m;
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- UWord32 s;
-#else
UWord64 W_s;
-#endif
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Flag Overflow = 0;
- Flag Carry = 0;
-#endif
- move32();
- move32();
-#endif
/* Collect different pulse positions to pos[], number of them to posno */
posno = 0;
@@ -2184,11 +2033,7 @@ static void E_ACELP_codearithp_fx(
}
/* Iterate over the different pulse positions */
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- s = L_deposit_l( 0 );
-#else
W_s = 0;
-#endif
t = 0;
move16();
nb_pulse = 0;
@@ -2201,15 +2046,7 @@ static void E_ACELP_codearithp_fx(
/* Code m-1 pulses */
FOR( i = 1; i < m; ++i )
{
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Carry = 0;
-#endif
- move32();
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- s = L_add_co( s, pulsestostates[pos[k]][t], &Carry, &Overflow );
-#else
W_s = W_add( W_s, pulsestostates[pos[k]][t] );
-#endif
t = add( t, 1 );
if ( sub( t, NPMAXPT ) > 0 )
{
@@ -2220,42 +2057,18 @@ static void E_ACELP_codearithp_fx(
/* Code sign */
/* We use L_add_c since we want to work with unsigned UWord32 */
/* Therefore, we have to clear carry */
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Carry = 0;
-#endif
- move32();
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- s = L_lshl( s, 1 );
-#else
W_s = W_lshl( W_s, 1 );
-#endif
if ( sign < 0 )
{
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- s = L_add_co( s, 1, &Carry, &Overflow );
-#else
W_s = W_add( W_s, 1 );
-#endif
}
/* Code last pulse */
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Carry = 0;
-#endif
- move32();
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- s = L_add_co( s, pulsestostates[pos[k]][t], &Carry, &Overflow );
-#else
W_s = W_add( W_s, pulsestostates[pos[k]][t] );
-#endif
t = add( t, 1 );
}
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- *ps = s; /*Q0*/
-#else
*ps = (UWord32) W_s; /*Q0*/
-#endif
move32();
*n = L_deposit_l( 0 );
if ( nb_pulse )
diff --git a/lib_enc/enc_acelpx_fx.c b/lib_enc/enc_acelpx_fx.c
index cd06a4d1570f0aa926351f869f2085a521de6167..00a23895508012d62b6ad339087538802e92e716 100644
--- a/lib_enc/enc_acelpx_fx.c
+++ b/lib_enc/enc_acelpx_fx.c
@@ -4,21 +4,24 @@
#include
#include "options.h"
-//#include "prot_fx.h"
#include "basop_util.h"
#include "options.h"
#include "rom_enc.h"
#include "prot_fx.h" /* Function prototypes */
#include "prot_fx_enc.h" /* Function prototypes */
+
/*--------------------------------------------------------------------------------------*
* Local constant
*--------------------------------------------------------------------------------------*/
#define _1_Q11 ( 2048 /*1.0f Q11*/ ) /* 1.0f in 4Q11 */
+
+
/*--------------------------------------------------------------------------------------*
* E_ACELP_update_cor
*--------------------------------------------------------------------------------------*/
+
static void E_ACELP_update_cor_fx(
const Word16 pos[], /* i Q0*/
Word16 nb_pulse, /* i Q0*/
@@ -111,11 +114,16 @@ static void E_ACELP_update_cor_fx(
{
assert( !"Number of pulses not supported" );
}
+
+ return;
}
+
+
/*--------------------------------------------------------------------------------------*
* E_ACELP_2pulse_searchx
* Iterations: nb_pos_ix*16
*--------------------------------------------------------------------------------------*/
+
static void E_ACELP_2pulse_searchx_fx(
const Word16 nb_pos_ix, /*Q0*/
const Word16 track_x, /*Q0*/
@@ -139,12 +147,6 @@ static void E_ACELP_2pulse_searchx_fx(
Word32 alp0, alp1, alp2, s;
Word16 *pR, sgnx;
Word16 sqk[2], alpk[2], ik;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* eight dn2 max positions per track */
pos_x = &dn2[( track_x * 8 )]; /*Qdn*/
@@ -169,11 +171,7 @@ static void E_ACELP_2pulse_searchx_fx(
{
sgnx = negate( sgnx );
}
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( mac_r_sat( L_mac_sat( L_mac_sat( alp0, cor[x], sign[x] ), cor[track_y], sign[track_y] ), R[track_y - x], sgnx ) < 0 )
-#else
- if ( mac_ro( L_mac_o( L_mac_o( alp0, cor[x], sign[x], &Overflow ), cor[track_y], sign[track_y], &Overflow ), R[track_y - x], sgnx, &Overflow ) < 0 )
-#endif
{
sqk[0] = 1;
move16();
@@ -192,14 +190,10 @@ static void E_ACELP_2pulse_searchx_fx(
move16();
/* dn[x] has only nb_pos_ix positions saved */
/*ps1 = ps0 + dn[x]; INDIRECT(1);ADD(1);*/
- ps1 = add_sat( ps0, dn[x] ); /*Qdn*/
- /*alp1 = alp0 + 2*sgnx*cor[x]; INDIRECT(1);MULT(1); MAC(1);*/
-#ifdef ISSUE_1867_replace_overflow_libenc
+ ps1 = add_sat( ps0, dn[x] ); /*Qdn*/
+ /*alp1 = alp0 + 2*sgnx*cor[x]; INDIRECT(1);MULT(1); MAC(1);*/
alp1 = L_mac_sat( alp0, cor[x], sgnx ); /* Qalp = (Q_R=Q_cor)*Q_signval */
-#else
- alp1 = L_mac_o( alp0, cor[x], sgnx, &Overflow ); /* Qalp = (Q_R=Q_cor)*Q_signval */
-#endif
- pR = R - x; /*Q9+scale*/
+ pR = R - x; /*Q9+scale*/
FOR( y = track_y; y < L_SUBFR; y += 4 )
{
@@ -213,26 +207,14 @@ static void E_ACELP_2pulse_searchx_fx(
assert( sgnx != 0 );
alp2_16 = 0;
-#ifdef ISSUE_1867_replace_overflow_libenc
alp2 = L_mac_sat( alp1, cor[y], sign[y] ); /* Qalp = (Q_R=Q_cor)*Q_signval */
-#else
- alp2 = L_mac_o( alp1, cor[y], sign[y], &Overflow ); /* Qalp = (Q_R=Q_cor)*Q_signval */
-#endif
if ( sgnx > 0 )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
alp2_16 = mac_r_sat( alp2, pR[y], sign[y] ); /* Qalp = (Q_R=Q_cor)*Q_signval */
-#else
- alp2_16 = mac_ro( alp2, pR[y], sign[y], &Overflow ); /* Qalp = (Q_R=Q_cor)*Q_signval */
-#endif
}
if ( sgnx < 0 )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
alp2_16 = msu_r_sat( alp2, pR[y], sign[y] ); /* Qalp = (Q_R=Q_cor)*Q_signval */
-#else
- alp2_16 = msu_ro( alp2, pR[y], sign[y], &Overflow ); /* Qalp = (Q_R=Q_cor)*Q_signval */
-#endif
}
alpk[1 - ik] = alp2_16; /* Qalp */
move16();
@@ -242,13 +224,8 @@ static void E_ACELP_2pulse_searchx_fx(
sqk[1 - ik] = sq; /* Q9 */
move16();
-
/*s = (alpk * sq) - (sqk * alp2); MULT(1);MAC(1);*/
-#ifdef ISSUE_1867_replace_overflow_libenc
s = L_msu_sat( L_mult( alpk[ik], sq ), sqk[ik], alp2_16 ); /* Q_sq = Q_sqk, Q_alpk = Q_alp */
-#else
- s = L_msu_o( L_mult( alpk[ik], sq ), sqk[ik], alp2_16, &Overflow ); /* Q_sq = Q_sqk, Q_alpk = Q_alp */
-#endif
if ( s > 0 )
{
ik = sub( 1, ik );
@@ -281,11 +258,15 @@ static void E_ACELP_2pulse_searchx_fx(
move16();
assert( ( ( pos[0] & 3 ) == track_x ) && ( ( pos[1] & 3 ) == track_y ) ); /* sanity check */
+
+ return;
}
+
/*--------------------------------------------------------------------------------------*
* E_ACELP_1pulse_searchx
*--------------------------------------------------------------------------------------*/
+
static void E_ACELP_1pulse_searchx_fx(
UWord8 tracks[2], /*Q0*/
Word16 *R, /*Q9+scale*/
@@ -306,12 +287,7 @@ static void E_ACELP_1pulse_searchx_fx(
Word16 ntracks, t;
Word16 sqk[2], alpk[2], ik;
move16();
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
/* save these to limit memory searches */
/*alp0 = *alp + R[0]; INDIRECT(1);*/
ps0 = *ps; /* Qdn */
@@ -326,11 +302,7 @@ static void E_ACELP_1pulse_searchx_fx(
sqk[0] = -1;
ik = 0;
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( mac_r_sat( alp0, cor[tracks[0]], sign[tracks[0]] ) < 0 )
-#else
- if ( mac_ro( alp0, cor[tracks[0]], sign[tracks[0]], &Overflow ) < 0 )
-#endif
{
sqk[0] = 1;
move16();
@@ -354,26 +326,17 @@ static void E_ACELP_1pulse_searchx_fx(
ps1 = add( ps0, dn[x] );
/* alp1 = alp0 + 2*sign[x]*cor[x]; MAC(1); MULT(1);*/
assert( sign[x] == sign_val_1 << 1 || sign[x] == -( sign_val_1 << 1 ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
alp1 = mac_r_sat( alp0, cor[x], sign[x] ); /* Qalp = (Q_R=Q_cor)*Q_signval */
-#else
- alp1 = mac_ro( alp0, cor[x], sign[x], &Overflow ); /* Qalp = (Q_R=Q_cor)*Q_signval */
-#endif
- alpk[1 - ik] = alp1; /* Qalp */
+ alpk[1 - ik] = alp1; /* Qalp */
move16();
-
/*sq = ps1 * ps1; MULT(1);*/
sq = mult_r( ps1, ps1 ); /* 6Q9 */
sqk[1 - ik] = sq; /* Q9 */
move16();
/*s = (alpk[ik] * sq) - (sqk[ik] * alp1); MULT(1);MAC(1);*/
-#ifdef ISSUE_1867_replace_overflow_libenc
s = L_msu_sat( L_mult_sat( alpk[ik], sq ), sqk[ik], alp1 ); /* Q9+Qalp+1 */
-#else
- s = L_msu_o( L_mult_o( alpk[ik], sq, &Overflow ), sqk[ik], alp1, &Overflow ); /* Q9+Qalp+1 */
-#endif
if ( s > 0 )
{
ik = sub( 1, ik );
@@ -393,21 +356,24 @@ static void E_ACELP_1pulse_searchx_fx(
move16();
*ix = x_save; /* Q0 */
move16();
+
+ return;
}
+
/*--------------------------------------------------------------------------------------*
* E_ACELP_4tsearchx_fx
* Autocorrelation method for searching pulse positions effectively
* Algorithm is identical to traditional covariance method
*--------------------------------------------------------------------------------------*/
+
void E_ACELP_4tsearchx_fx(
Word16 dn[], /*Qdn*/
const Word16 cn[], /*Q_new*/
Word16 Rw[], /*Q9*/
Word16 code[], /*Q9*/
const PulseConfig *config,
- Word16 ind[] /*Q0*/
- ,
+ Word16 ind[], /*Q0*/
const Word16 element_mode )
{
Word16 sign[L_SUBFR], vec[L_SUBFR];
@@ -433,7 +399,6 @@ void E_ACELP_4tsearchx_fx(
ps = 0; /* to avoid compilation warnings */
move16();
-
alp = config->alp; /* Q13 */
move16();
nb_pulse = config->nb_pulse;
@@ -637,7 +602,6 @@ void E_ACELP_4tsearchx_fx(
}
}
-
/*
* Store weighted energy of code, build the codeword and index of codevector.
*/
@@ -685,4 +649,6 @@ void E_ACELP_4tsearchx_fx(
move16();
}
}
+
+ return;
}
diff --git a/lib_enc/enc_amr_wb_fx.c b/lib_enc/enc_amr_wb_fx.c
index 530eb4a40de114c5bfcba23654a64783cf280eb3..2bbb7d1544749ff9a11c8173f0324efdee712a2c 100644
--- a/lib_enc/enc_amr_wb_fx.c
+++ b/lib_enc/enc_amr_wb_fx.c
@@ -65,12 +65,6 @@ void encod_amr_wb_fx(
AMRWB_IO_ENC_HANDLE hAmrwb_IO = st->hAmrwb_IO;
BSTR_ENC_HANDLE hBstr = st->hBstr;
LPD_state_HANDLE hLPDmem = st->hLPDmem;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*------------------------------------------------------------------*
* Initializations
@@ -193,23 +187,14 @@ void encod_amr_wb_fx(
&gain_inov, &norm_gain_code, g_corr, clip_gain, hAmrwb_IO->past_qua_en_fx );
gp_clip_test_gain_pit_fx( st->element_mode, st->core_brate, gain_pit, st->clip_var_fx );
-#ifdef ISSUE_1867_replace_overflow_libenc
Lgcode = L_shl_sat( gain_code, Q_new ); /* scaled gain_code with Qnew -> Q16*/
gcode16 = round_fx_sat( Lgcode ); /*Q0*/
-#else
- Lgcode = L_shl_o( gain_code, Q_new, &Overflow ); /* scaled gain_code with Qnew -> Q16*/
- gcode16 = round_fx_o( Lgcode, &Overflow ); /*Q0*/
-#endif
hLPDmem->tilt_code = Est_tilt2( exc + i_subfr, gain_pit, code, Lgcode, &voice_fac, shift ); /*Q15*/
FOR( i = 0; i < L_SUBFR; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
exc2[i + i_subfr] = round_fx_sat( L_shl_sat( L_mult( gain_pit, exc[i + i_subfr] ), 1 ) ); /*Q_new*/
-#else
- exc2[i + i_subfr] = round_fx_o( L_shl_o( L_mult( gain_pit, exc[i + i_subfr] ), 1, &Overflow ), &Overflow ); /*Q_new*/
-#endif
move16();
}
@@ -236,13 +221,8 @@ void encod_amr_wb_fx(
L_tmp = L_mult( gcode16, code[i] ); /*Q10*/
L_tmp = L_shl_sat( L_tmp, 5 ); /*Q15*/
L_tmp = L_mac_sat( L_tmp, exc[i + i_subfr], gain_pit ); /* Q_new+15 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- L_tmp = L_shl_sat( L_tmp, 1 ); /* saturation can occur here Q_new+15*/
- exc[i + i_subfr] = round_fx_sat( L_tmp ); /*Q_new*/
-#else
- L_tmp = L_shl_o( L_tmp, 1, &Overflow ); /* saturation can occur here Q_new+15*/
- exc[i + i_subfr] = round_fx_o( L_tmp, &Overflow ); /*Q_new*/
-#endif
+ L_tmp = L_shl_sat( L_tmp, 1 ); /* saturation can occur here Q_new+15*/
+ exc[i + i_subfr] = round_fx_sat( L_tmp ); /*Q_new*/
move16();
}
diff --git a/lib_enc/enc_gen_voic_fx.c b/lib_enc/enc_gen_voic_fx.c
index 01f80cacb3dca21f6bb6cd59e9e1df0eb3bb0df9..f4e56fdd3a3df11aa797d147cd8b66279e64f1b5 100644
--- a/lib_enc/enc_gen_voic_fx.c
+++ b/lib_enc/enc_gen_voic_fx.c
@@ -144,12 +144,6 @@ void encod_gen_voic_fx(
Word16 shift_wsp;
Word16 harm_flag_acelp;
Word16 lp_select, lp_flag, L_frame;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
SC_VBR_ENC_HANDLE hSC_VBR = st_fx->hSC_VBR;
BSTR_ENC_HANDLE hBstr = st_fx->hBstr;
SP_MUS_CLAS_HANDLE hSpMusClas = st_fx->hSpMusClas;
@@ -249,6 +243,7 @@ void encod_gen_voic_fx(
*pt_pitch_fx = pit_encode_fx( hBstr, st_fx->acelp_cfg.pitch_bits, st_fx->core_brate, 0, L_frame, st_fx->coder_type, &pitch_limit_flag, i_subfr_fx, exc_fx,
L_SUBFR, st_fx->pitch, &T0_min_fx, &T0_max_fx, &T0_fx, &T0_frac_fx, h1_fx, xn_fx, tdm_Pitch_reuse_flag, tdm_Pri_pitch_buf, st_fx->element_mode, Q_new ); /* Q6 */
+
tbe_celp_exc( L_frame, i_subfr_fx, T0_fx, T0_frac_fx, &error_fx, bwe_exc_fx );
/*-----------------------------------------------------------------*
@@ -283,11 +278,7 @@ void encod_gen_voic_fx(
}
/*st_fx->lowrate_pitchGain = 0.9f * st_fx->lowrate_pitchGain + 0.1f * gain_pit_fx;*/
-#ifdef ISSUE_1867_replace_overflow_libenc
hSpMusClas->lowrate_pitchGain = round_fx_sat( L_mac_sat( L_mult( 29491, hSpMusClas->lowrate_pitchGain ), 6554, gain_pit_fx ) ); /*Q14*Q16(0.1) + Q15 -> Q15*/
-#else
- hSpMusClas->lowrate_pitchGain = round_fx_o( L_mac_o( L_mult( 29491, hSpMusClas->lowrate_pitchGain ), 6554, gain_pit_fx, &Overflow ), &Overflow ); /*Q14*Q16(0.1) + Q15 -> Q15*/
-#endif
/*-----------------------------------------------------------------*
* Transform domain contribution encoding - active frames
@@ -339,14 +330,8 @@ void encod_gen_voic_fx(
}
gp_clip_test_gain_pit_fx( st_fx->element_mode, st_fx->core_brate, gain_pit_fx, st_fx->clip_var_fx );
-#ifdef ISSUE_1867_replace_overflow_libenc
- Lgcode = L_shl_sat( gain_code_fx, Q_new ); /* scaled gain_code with Qnew -> Q16*/
- gcode16 = round_fx_sat( Lgcode ); /*Q0*/
-#else
- Lgcode = L_shl_o( gain_code_fx, Q_new, &Overflow ); /* scaled gain_code with Qnew -> Q16*/
- gcode16 = round_fx_o( Lgcode, &Overflow ); /*Q0*/
-#endif
-
+ Lgcode = L_shl_sat( gain_code_fx, Q_new ); /* scaled gain_code with Qnew -> Q16*/
+ gcode16 = round_fx_sat( Lgcode ); /*Q0*/
hLPDmem->tilt_code = Est_tilt2( &exc_fx[i_subfr_fx], gain_pit_fx, code_fx, Lgcode, &voice_fac_fx, shift ); /* Q15 */
move16();
@@ -381,35 +366,20 @@ void encod_gen_voic_fx(
FOR( i = 0; i < L_SUBFR; i++ )
{
/* Contribution from AVQ layer */
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp1 = L_mult_sat( gain_preQ_fx, code_preQ_fx[i] ); /* Q2 + Q6 -> Q9*/
Ltmp1 = L_shl_sat( Ltmp1, tmp1_fx ); /* Q16 + Q_exc */
-#else
- Ltmp1 = L_mult_o( gain_preQ_fx, code_preQ_fx[i], &Overflow ); /* Q2 + Q6 -> Q9*/
- Ltmp1 = L_shl_o( Ltmp1, tmp1_fx, &Overflow ); /* Q16 + Q_exc */
-#endif
/* Compute exc2 */
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp = L_shl_sat( L_mult( gain_pit_fx, exc_fx[i + i_subfr_fx] ), 1 ); /* Q16 */
exc2_fx[i + i_subfr_fx] = round_fx_sat( L_add_sat( Ltmp, Ltmp1 ) ); /* Q0 */
-#else
- Ltmp = L_shl_o( L_mult( gain_pit_fx, exc_fx[i + i_subfr_fx] ), 1, &Overflow ); /* Q16 */
- exc2_fx[i + i_subfr_fx] = round_fx_o( L_add_o( Ltmp, Ltmp1, &Overflow ), &Overflow ); /* Q0 */
-#endif
move16();
/* code in Q9, gain_pit in Q14 */
- Ltmp = L_mult( gcode16, code_fx[i] ); /* Q10 */
- Ltmp = L_shl( Ltmp, 5 ); /* Q15 */
- Ltmp = L_mac( Ltmp, exc_fx[i + i_subfr_fx], gain_pit_fx ); /* Q15 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ Ltmp = L_mult( gcode16, code_fx[i] ); /* Q10 */
+ Ltmp = L_shl( Ltmp, 5 ); /* Q15 */
+ Ltmp = L_mac( Ltmp, exc_fx[i + i_subfr_fx], gain_pit_fx ); /* Q15 */
Ltmp = L_shl_sat( Ltmp, 1 ); /* saturation can occur here Q16*/
exc_fx[i + i_subfr_fx] = round_fx_sat( L_add_sat( Ltmp, Ltmp1 ) ); /* Q0 */
-#else
- Ltmp = L_shl_o( Ltmp, 1, &Overflow ); /* saturation can occur here Q16*/
- exc_fx[i + i_subfr_fx] = round_fx_o( L_add_o( Ltmp, Ltmp1, &Overflow ), &Overflow ); /* Q0 */
-#endif
}
}
ELSE
@@ -422,18 +392,11 @@ void encod_gen_voic_fx(
FOR( i = 0; i < L_SUBFR; i++ )
{
/* code in Q9, gain_pit in Q14 */
- Ltmp = L_mult( gcode16, code_fx[i] ); /* Q10 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ Ltmp = L_mult( gcode16, code_fx[i] ); /* Q10 */
Ltmp = L_shl_sat( Ltmp, 5 ); /* Q15 */
Ltmp = L_mac_sat( Ltmp, exc_fx[i + i_subfr_fx], gain_pit_fx ); /* Q15 */
Ltmp = L_shl_sat( Ltmp, 1 ); /* saturation can occur here Q16*/
exc_fx[i + i_subfr_fx] = round_fx_sat( Ltmp ); /* Q0 */
-#else
- Ltmp = L_shl_o( Ltmp, 5, &Overflow ); /* Q15 */
- Ltmp = L_mac_o( Ltmp, exc_fx[i + i_subfr_fx], gain_pit_fx, &Overflow ); /* Q15 */
- Ltmp = L_shl_o( Ltmp, 1, &Overflow ); /* saturation can occur here Q16*/
- exc_fx[i + i_subfr_fx] = round_fx_o( Ltmp, &Overflow ); /* Q0 */
-#endif
}
}
@@ -441,22 +404,10 @@ void encod_gen_voic_fx(
* Prepare TBE excitation
*-----------------------------------------------------------------*/
-#ifdef FIX_2010_PREP_TBE_EXC
- /* multrus 2025-09-15
- TODO:
- - check with vaillancourt, whether Q10 is the correct scaling - it contradicts comments above, where it's rather indicated as Q6
- - comparing againt float, Q10 seems to be correct
- */
prep_tbe_exc_fx( L_frame, L_SUBFR, i_subfr_fx, gain_pit_fx, gain_code_fx, code_fx, voice_fac_fx,
&voice_factors_fx[i_subfr_fx / L_SUBFR], bwe_exc_fx, gain_preQ_fx, code_preQ_fx, Q10, Q_new,
T0_fx, T0_frac_fx, st_fx->coder_type, st_fx->core_brate,
st_fx->element_mode, st_fx->idchan, st_fx->hBWE_TD != NULL, st_fx->tdm_LRTD_flag );
-#else
- prep_tbe_exc_fx( L_frame, L_SUBFR, i_subfr_fx, gain_pit_fx, gain_code_fx, code_fx, voice_fac_fx,
- &voice_factors_fx[i_subfr_fx / L_SUBFR], bwe_exc_fx, gain_preQ_fx, code_preQ_fx, Q_new,
- T0_fx, T0_frac_fx, st_fx->coder_type, st_fx->core_brate,
- st_fx->element_mode, st_fx->idchan, st_fx->hBWE_TD != NULL, st_fx->tdm_LRTD_flag );
-#endif
/*-----------------------------------------------------------------*
* Synthesize speech to update mem_syn[].
@@ -554,12 +505,6 @@ void encod_gen_voic_ivas_fx(
Word16 harm_flag_acelp;
Word16 lp_select, lp_flag, L_frame;
Word16 q_h1;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
SC_VBR_ENC_HANDLE hSC_VBR = st_fx->hSC_VBR;
BSTR_ENC_HANDLE hBstr = st_fx->hBstr;
LPD_state_HANDLE hLPDmem = st_fx->hLPDmem;
@@ -753,13 +698,8 @@ void encod_gen_voic_ivas_fx(
}
gp_clip_test_gain_pit_fx( st_fx->element_mode, st_fx->core_brate, gain_pit_fx, st_fx->clip_var_fx );
-#ifdef ISSUE_1867_replace_overflow_libenc
Lgcode = L_shl_sat( gain_code_fx, Q_new ); /* scaled gain_code with Qnew -> Q16*/
gcode16 = round_fx_sat( Lgcode );
-#else
- Lgcode = L_shl_o( gain_code_fx, Q_new, &Overflow ); /* scaled gain_code with Qnew -> Q16*/
- gcode16 = round_fx_o( Lgcode, &Overflow );
-#endif
hLPDmem->tilt_code = est_tilt_ivas_fx( &exc_fx[i_subfr_fx], gain_pit_fx, code_fx, gain_code_fx, &voice_fac_fx, Q_new, L_SUBFR, 0 ); /* Q15 */
move16();
@@ -810,35 +750,20 @@ void encod_gen_voic_ivas_fx(
FOR( i = 0; i < L_SUBFR; i++ )
{
/* Contribution from AVQ layer */
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp1 = L_mult_sat( gain_preQ_fx, code_preQ_fx[i] );
Ltmp1 = L_shl_sat( Ltmp1, tmp1_fx );
-#else
- Ltmp1 = L_mult_o( gain_preQ_fx, code_preQ_fx[i], &Overflow );
- Ltmp1 = L_shl_o( Ltmp1, tmp1_fx, &Overflow );
-#endif
/* Compute exc2 */
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp = L_shl_sat( L_mult( gain_pit_fx, exc_fx[i + i_subfr_fx] ), 1 );
exc2_fx[i + i_subfr_fx] = round_fx_sat( L_add_sat( Ltmp, Ltmp1 ) );
-#else
- Ltmp = L_shl_o( L_mult( gain_pit_fx, exc_fx[i + i_subfr_fx] ), 1, &Overflow );
- exc2_fx[i + i_subfr_fx] = round_fx_o( L_add_o( Ltmp, Ltmp1, &Overflow ), &Overflow );
-#endif
move16();
/* code in Q9, gain_pit in Q14 */
Ltmp = L_mult( gcode16, code_fx[i] ); /*Qnew + 9 + 1 */
Ltmp = L_shl( Ltmp, 5 ); /*Qnew + 9+ 1+5 */
Ltmp = L_mac( Ltmp, exc_fx[i + i_subfr_fx], gain_pit_fx ); /*Qnew + 14 + 1*/
-#ifdef ISSUE_1867_replace_overflow_libenc
- Ltmp = L_shl_sat( Ltmp, 1 ); /*Qnew + 14 + 1 +1 */ /* saturation can occur here Q16*/
+ Ltmp = L_shl_sat( Ltmp, 1 ); /*Qnew + 14 + 1 +1 */ /* saturation can occur here Q16*/
exc_fx[i + i_subfr_fx] = round_fx_sat( L_add_sat( Ltmp, Ltmp1 ) );
-#else
- Ltmp = L_shl_o( Ltmp, 1, &Overflow ); /*Qnew + 14 + 1 +1 */ /* saturation can occur here Q16*/
- exc_fx[i + i_subfr_fx] = round_fx_o( L_add_o( Ltmp, Ltmp1, &Overflow ), &Overflow );
-#endif
move16();
}
}
@@ -853,35 +778,22 @@ void encod_gen_voic_ivas_fx(
{
/* code in Q9, gain_pit in Q14 */
/*gcode16 in Qnew*/
- Ltmp = L_mult( gcode16, code_fx[i] ); /*Qnew + 9 + 1 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ Ltmp = L_mult( gcode16, code_fx[i] ); /*Qnew + 9 + 1 */
Ltmp = L_shl_sat( Ltmp, 5 ); /*Qnew + 9+ 1+5 */
Ltmp = L_mac_sat( Ltmp, exc_fx[i + i_subfr_fx], gain_pit_fx ); /*Qnew + 14 + 1*/
Ltmp = L_shl_sat( Ltmp, 1 ); /*Qnew + 14 + 1 +1 */
exc_fx[i + i_subfr_fx] = round_fx_sat( Ltmp );
-#else
- Ltmp = L_shl_o( Ltmp, 5, &Overflow ); /*Qnew + 9+ 1+5 */
- Ltmp = L_mac_o( Ltmp, exc_fx[i + i_subfr_fx], gain_pit_fx, &Overflow ); /*Qnew + 14 + 1*/
- Ltmp = L_shl_o( Ltmp, 1, &Overflow ); /*Qnew + 14 + 1 +1 */
- exc_fx[i + i_subfr_fx] = round_fx_o( Ltmp, &Overflow );
-#endif
}
}
+
/*-----------------------------------------------------------------*
* Prepare TBE excitation
*-----------------------------------------------------------------*/
-#ifdef FIX_2010_PREP_TBE_EXC
prep_tbe_exc_fx( L_frame, L_SUBFR, i_subfr_fx, gain_pit_fx, gain_code_fx, code_fx, voice_fac_fx,
&voice_factors_fx[i_subfr_fx / L_SUBFR], bwe_exc_fx, gain_preQ_fx, code_preQ_fx, Q_AVQ_OUT_DEC, Q_new,
T0_fx, T0_frac_fx, st_fx->coder_type, st_fx->core_brate,
st_fx->element_mode, st_fx->idchan, st_fx->hBWE_TD != NULL, st_fx->tdm_LRTD_flag );
-#else
- prep_tbe_exc_fx( L_frame, L_SUBFR, i_subfr_fx, gain_pit_fx, gain_code_fx, code_fx, voice_fac_fx,
- &voice_factors_fx[i_subfr_fx / L_SUBFR], bwe_exc_fx, gain_preQ_fx, code_preQ_fx, Q_new,
- T0_fx, T0_frac_fx, st_fx->coder_type, st_fx->core_brate,
- st_fx->element_mode, st_fx->idchan, st_fx->hBWE_TD != NULL, st_fx->tdm_LRTD_flag );
-#endif
/*-----------------------------------------------------------------*
* Synthesize speech to update mem_syn[].
diff --git a/lib_enc/enc_gen_voic_rf_fx.c b/lib_enc/enc_gen_voic_rf_fx.c
index 26a45bad9bc15b1f23dad9d5184e7fe71f40beb3..a8ce8de56e07796f11da21da5cdebca2da611ff2 100644
--- a/lib_enc/enc_gen_voic_rf_fx.c
+++ b/lib_enc/enc_gen_voic_rf_fx.c
@@ -164,13 +164,6 @@ void coder_acelp_rf_fx(
Word16 prev_gain_pit;
Word16 rf_coder_type;
Word16 lp_select;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
RF_ENC_HANDLE hRF = st->hRF;
/* to avoid compilation warnings */
@@ -433,16 +426,16 @@ void coder_acelp_rf_fx(
/*----------------------------------------------------------*
* - voice factor (for pitch enhancement) *
*----------------------------------------------------------*/
+
E_UTIL_voice_factor( exc_rf, i_subfr, code, gain_pit, gain_code,
&voice_fac, &( hRF->rf_tilt_code ), L_SUBFR, acelp_cfg->voice_tilt, Q_new, shift );
-
/*-----------------------------------------------------------------*
* Update memory of the weighting filter
*-----------------------------------------------------------------*/
+
/* st_fx->_rf_mem_w0 = xn[L_SUBFR-1] - (gain_pit*y1[L_SUBFR-1]) - (gain_code*y2[L_SUBFR-1]); */
- Ltmp = Mpy_32_16_1( gain_code, y2[L_SUBFR - 1] ); /* Q10 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ Ltmp = Mpy_32_16_1( gain_code, y2[L_SUBFR - 1] ); /* Q10 */
Ltmp = L_shl_sat( Ltmp, add( 5, Q_xn ) ); /* Q15 + Q_xn */
Ltmp = L_mac_sat( Ltmp, y1[L_SUBFR - 1], gain_pit ); /* Q15 + Q_xn */
/* Add Gaussian contribution*/
@@ -450,19 +443,9 @@ void coder_acelp_rf_fx(
Ltmp2 = L_shl_sat( Ltmp2, add( 5, Q_xn ) ); /* Q15 + Q_xn */
Ltmp = L_add_sat( Ltmp, Ltmp2 ); /* Q15 + Q_xn */
hRF->rf_mem_w0 = sub_sat( xn[L_SUBFR - 1], round_fx_sat( L_shl_sat( Ltmp, 1 ) ) ); /* Q_xn */
-#else
- Ltmp = L_shl_o( Ltmp, add( 5, Q_xn ), &Overflow ); /* Q15 + Q_xn */
- Ltmp = L_mac_o( Ltmp, y1[L_SUBFR - 1], gain_pit, &Overflow ); /* Q15 + Q_xn */
- /* Add Gaussian contribution*/
- Ltmp2 = Mpy_32_16_1( gain_code2, y22[L_SUBFR - 1] ); /* Q10 */
- Ltmp2 = L_shl_o( Ltmp2, add( 5, Q_xn ), &Overflow ); /* Q15 + Q_xn */
- Ltmp = L_add_o( Ltmp, Ltmp2, &Overflow ); /* Q15 + Q_xn */
- hRF->rf_mem_w0 = sub_o( xn[L_SUBFR - 1], round_fx_o( L_shl_o( Ltmp, 1, &Overflow ), &Overflow ), &Overflow ); /* Q_xn */
-#endif
move16();
hRF->rf_mem_w0 = shr_sat( hRF->rf_mem_w0, shift ); /*Qnew-1*/
-
/*-------------------------------------------------------*
* - Find the total excitation. *
*-------------------------------------------------------*/
@@ -473,8 +456,7 @@ void coder_acelp_rf_fx(
FOR( i = sub( tmp2, shr( L_SUBFR, 1 ) ); i < tmp2; i++ )
{
/* code in Q9, gain_pit in Q14; exc Q_new */
- Ltmp = Mpy_32_16_1( gain_code2, code2[i] ); /* Q10 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ Ltmp = Mpy_32_16_1( gain_code2, code2[i] ); /* Q10 */
Ltmp = L_shl_sat( Ltmp, Q_new_p5 ); /* Q15 + Q_new */
Ltmp = L_mac_sat( Ltmp, gain_pit, exc_rf[i + i_subfr] ); /* Q15 + Q_new */
exc2[i] = round_fx_sat( L_shl_sat( Ltmp, 1 ) ); /* Q_new */
@@ -484,27 +466,16 @@ void coder_acelp_rf_fx(
Ltmp = L_add_sat( Ltmp, Ltmp2 ); /* Q15 + Q_new */
Ltmp = L_shl_sat( Ltmp, 1 ); /* saturation can occur here Q16 + Q_new*/
exc_rf[i + i_subfr] = round_fx_sat( Ltmp ); /* Q_new */
-#else
- Ltmp = L_shl_o( Ltmp, Q_new_p5, &Overflow ); /* Q15 + Q_new */
- Ltmp = L_mac_o( Ltmp, gain_pit, exc_rf[i + i_subfr], &Overflow ); /* Q15 + Q_new */
- exc2[i] = round_fx_o( L_shl_o( Ltmp, 1, &Overflow ), &Overflow ); /* Q_new */
- move16();
- Ltmp2 = Mpy_32_16_1( gain_code_vect[j], code[i] ); /* Q10 */
- Ltmp2 = L_shl_o( Ltmp2, Q_new_p5, &Overflow ); /* Q15 + Q_new */
- Ltmp = L_add_o( Ltmp, Ltmp2, &Overflow ); /* Q15 + Q_new */
- Ltmp = L_shl_o( Ltmp, 1, &Overflow ); /* saturation can occur here Q16 + Q_new*/
- exc_rf[i + i_subfr] = round_fx_o( Ltmp, &Overflow ); /* Q_new */
-#endif
move16();
}
tmp2 = L_SUBFR;
move16();
}
-
/*---------------------------------------------------------*
* Enhance the excitation *
*---------------------------------------------------------*/
+
E_UTIL_enhancer( voice_fac, stab_fac, past_gcode, gain_inov,
&hRF->rf_gc_threshold, code, exc2, gain_pit, &hRF->rf_dm_fx.prev_gain_code,
hRF->rf_dm_fx.prev_gain_pit, &hRF->rf_dm_fx.prev_state, coder_type,
diff --git a/lib_enc/enc_higher_acelp_fx.c b/lib_enc/enc_higher_acelp_fx.c
index dcbe87a8d2b3d1b8798fc205719165709765a6e5..014ce4603a0a5a1aced83ec0f5f9c174d2232bcd 100644
--- a/lib_enc/enc_higher_acelp_fx.c
+++ b/lib_enc/enc_higher_acelp_fx.c
@@ -87,13 +87,10 @@ void transf_cdbk_enc_fx(
* For inactive frame, find target in residual domain
* Deemphasis
*--------------------------------------------------------------*/
+
IF( EQ_16( st_fx->coder_type, INACTIVE ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
gcode16 = round_fx_sat( L_shl_sat( gain_code, Q_new ) );
-#else
- gcode16 = round_fx_o( L_shl_o( gain_code, Q_new, &Overflow ), &Overflow );
-#endif
FOR( i = 0; i < L_SUBFR; i++ )
{
/*x_tran[i] = xn[i] - *gain_pit * y1[i] - gain_code * y2[i];*/
@@ -140,12 +137,14 @@ void transf_cdbk_enc_fx(
/*--------------------------------------------------------------*
* Split algebraic vector quantizer based on RE8 lattice
*--------------------------------------------------------------*/
+
AVQ_cod_fx( x_tran, x_norm, nBits, Nsv, 0 );
/*--------------------------------------------------------------*
* Find prequantizer excitation gain
* Quantize the gain
*--------------------------------------------------------------*/
+
L_corr = L_deposit_l( 0 );
L_ener = L_deposit_l( 0 );
FOR( i = 0; i < Nsv * 8; i++ )
@@ -188,11 +187,7 @@ void transf_cdbk_enc_fx(
m_corr = div_s( 16384, m_den );
e_corr = sub( 14 + 4, e_den );
Ltmp = L_shr( Mult_32_16( Ltmp, m_corr ), e_corr ); /*Q12*/
-#ifdef ISSUE_1867_replace_overflow_libenc
- stmp = round_fx_sat( L_shl_sat( Ltmp, 16 ) ); /* Q12 */
-#else
- stmp = round_fx_o( L_shl_o( Ltmp, 16, &Overflow ), &Overflow ); /* Q12 */
-#endif
+ stmp = round_fx_sat( L_shl_sat( Ltmp, 16 ) ); /* Q12 */
}
ELSE
{
@@ -259,6 +254,7 @@ void transf_cdbk_enc_fx(
/*--------------------------------------------------------------*
* Encode and multiplex subvectors into bit-stream
*--------------------------------------------------------------*/
+
trgtSvPos = Nsv - 1;
move16();
test();
@@ -324,6 +320,7 @@ void transf_cdbk_enc_fx(
/*--------------------------------------------------------------*
* Preemphasise
*--------------------------------------------------------------*/
+
/* in extreme cases at subframe boundaries, lower the preemphasis memory to avoid a saturation */
test();
if ( ( nq[7] != 0 ) && ( GT_16( sub( st_fx->last_nq_preQ, nq[0] ), 7 ) ) )
@@ -380,6 +377,8 @@ void transf_cdbk_enc_fx(
return;
}
+
+
void transf_cdbk_enc_ivas_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
const Word16 harm_flag_acelp, /* i : harmonic flag for higher rates ACELP Q0*/
@@ -445,13 +444,10 @@ void transf_cdbk_enc_ivas_fx(
* For inactive frame, find target in residual domain
* Deemphasis
*--------------------------------------------------------------*/
+
IF( EQ_16( st_fx->coder_type, INACTIVE ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
gcode16 = round_fx_sat( L_shl_sat( gain_code, Q_new ) );
-#else
- gcode16 = round_fx_o( L_shl_o( gain_code, Q_new, &Overflow ), &Overflow );
-#endif
FOR( i = 0; i < L_SUBFR; i++ )
{
/*x_tran[i] = xn[i] - *gain_pit * y1[i] - gain_code * y2[i];*/
@@ -497,12 +493,14 @@ void transf_cdbk_enc_ivas_fx(
/*--------------------------------------------------------------*
* Split algebraic vector quantizer based on RE8 lattice
*--------------------------------------------------------------*/
+
AVQ_cod_fx( x_tran, x_norm, nBits, Nsv, 0 );
/*--------------------------------------------------------------*
* Find prequantizer excitation gain
* Quantize the gain
*--------------------------------------------------------------*/
+
L_corr = L_deposit_l( 0 );
L_ener = L_deposit_l( 0 );
FOR( i = 0; i < Nsv * 8; i++ )
@@ -545,11 +543,7 @@ void transf_cdbk_enc_ivas_fx(
m_corr = div_s( 16384, m_den );
e_corr = sub( 14 + 4, e_den );
Ltmp = L_shr( Mult_32_16( Ltmp, m_corr ), e_corr ); /*Q12*/
-#ifdef ISSUE_1867_replace_overflow_libenc
- stmp = round_fx_sat( L_shl_sat( Ltmp, 16 ) ); /* Q12 */
-#else
- stmp = round_fx_o( L_shl_o( Ltmp, 16, &Overflow ), &Overflow ); /* Q12 */
-#endif
+ stmp = round_fx_sat( L_shl_sat( Ltmp, 16 ) ); /* Q12 */
}
ELSE
{
@@ -618,6 +612,7 @@ void transf_cdbk_enc_ivas_fx(
/*--------------------------------------------------------------*
* Encode and multiplex subvectors into bit-stream
*--------------------------------------------------------------*/
+
trgtSvPos = sub( Nsv, 1 );
move16();
test();
@@ -632,7 +627,9 @@ void transf_cdbk_enc_ivas_fx(
move16();
move16();
}
+
AVQ_encmux_fx( st_fx->hBstr, -1, x_norm, &nBits, Nsv, nq, avq_bit_sFlag, trgtSvPos );
+
/* save # of AVQ unused bits for next subframe */
*unbits = nBits;
move16();
@@ -682,6 +679,7 @@ void transf_cdbk_enc_ivas_fx(
/*--------------------------------------------------------------*
* Preemphasise
*--------------------------------------------------------------*/
+
/* in extreme cases at subframe boundaries, lower the preemphasis memory to avoid a saturation */
test();
if ( ( nq[7] != 0 ) && ( GT_16( sub( st_fx->last_nq_preQ, nq[0] ), 7 ) ) )
@@ -762,6 +760,8 @@ void transf_cdbk_enc_ivas_fx(
return;
}
+
+
/*-------------------------------------------------------------------*
* Find target in residual domain - cn[]
*-------------------------------------------------------------------*/
@@ -790,13 +790,15 @@ static void find_cn_fx(
/*-----------------------------------------------------------------*
* Transform domain contribution encoding
*-----------------------------------------------------------------*/
-Word16 gain_quant_fx( /* o: quantization index Q0*/
- Word32 *gain, /* i: quantized gain Q16*/
- Word16 *gain16, /* o: quantized gain expg*/
- const Word16 c_min, /* i: log10 of lower limit in Q14*/
- const Word16 c_max, /* i: log10 of upper limit in Q13*/
- const Word16 bits, /* i: number of bits to quantize Q0*/
- Word16 *expg /* o: output exponent of gain16 */
+
+/* o: quantization index Q0*/
+Word16 gain_quant_fx(
+ Word32 *gain, /* i : quantized gain Q16*/
+ Word16 *gain16, /* o : quantized gain expg*/
+ const Word16 c_min, /* i : log10 of lower limit in Q14*/
+ const Word16 c_max, /* i : log10 of upper limit in Q13*/
+ const Word16 bits, /* i : number of bits to quantize Q0*/
+ Word16 *expg /* o : output exponent of gain16 */
)
{
Word16 index, levels;
diff --git a/lib_enc/enc_pit_exc_fx.c b/lib_enc/enc_pit_exc_fx.c
index 532c0389801740b2a330b9440a743b4e14fe7a8e..b1ad74b0da240b2627468b5cccd015e687eb9722 100644
--- a/lib_enc/enc_pit_exc_fx.c
+++ b/lib_enc/enc_pit_exc_fx.c
@@ -104,12 +104,6 @@ void enc_pit_exc_fx(
BSTR_ENC_HANDLE hBstr = st_fx->hBstr;
GSC_ENC_HANDLE hGSCEnc = st_fx->hGSCEnc;
LPD_state_HANDLE hLPDmem = st_fx->hLPDmem;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*------------------------------------------------------------------*
* Initialization
@@ -272,11 +266,13 @@ void enc_pit_exc_fx(
*pt_pitch = pit_encode_fx( hBstr, st_fx->acelp_cfg.pitch_bits, Pitch_BR, 0, st_fx->L_frame, Pitch_CT, &pitch_limit_flag, i_subfr, exc,
L_subfr, st_fx->pitch, &T0_min, &T0_max, T0, T0_frac, h1, xn, tdm_Pitch_reuse_flag, tdm_Pri_pitch_buf, st_fx->element_mode, Q_new ); /* Q6 */
+
/*-----------------------------------------------------------------*
* Find adaptive exitation
*-----------------------------------------------------------------*/
pred_lt4( &exc[i_subfr], &exc[i_subfr], *T0, *T0_frac, L_subfr + 1, pitch_inter4_2, L_INTERPOL2, PIT_UP_SAMP );
+
/*-----------------------------------------------------------------*
* Gain clipping test to avoid unstable synthesis on frame erasure
* or in case of floating point encoder & fixed p. decoder
@@ -297,11 +293,7 @@ void enc_pit_exc_fx(
}
/*st_fx->lowrate_pitchGain = 0.9f * st_fx->lowrate_pitchGain + 0.1f * gain_pit;*/
-#ifdef ISSUE_1867_replace_overflow_libenc
hSpMusClas->lowrate_pitchGain = round_fx_sat( L_mac_sat( L_mult( 29491, hSpMusClas->lowrate_pitchGain ), 6554, gain_pit ) ); /*Q14*Q16(0.1) + Q15 -> Q15*/
-#else
- hSpMusClas->lowrate_pitchGain = round_fx_o( L_mac_o( L_mult( 29491, hSpMusClas->lowrate_pitchGain ), 6554, gain_pit, &Overflow ), &Overflow ); /*Q14*Q16(0.1) + Q15 -> Q15*/
-#endif
gpit_tmp = gain_pit;
move16(); /*Q14*/
@@ -358,6 +350,7 @@ void enc_pit_exc_fx(
gain_enc_mless_fx( hBstr, st_fx->acelp_cfg.gains_mode, st_fx->element_mode, L_FRAME, i_subfr, -1, xn, y1, shift_wsp, y2, code, Es_pred,
&gain_pit, &gain_code, &gain_inov, &norm_gain_code, g_corr, clip_gain );
}
+
gp_clip_test_gain_pit_fx( st_fx->element_mode, st_fx->core_brate, gain_pit, st_fx->clip_var_fx );
Lgcode = L_shl_sat( gain_code, Q_new ); /* scaled gain_code with Qnew -> Q16*/
@@ -380,21 +373,12 @@ void enc_pit_exc_fx(
IF( use_fcb != 0 )
{
Ltmp = L_mult( gcode16, y2[L_subfr - 1] ); /* Q10 + Q_new */
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp = L_shl_sat( Ltmp, add( 5, shift ) ); /* Q15 + Q_new + shift */
Ltmp = L_negate( Ltmp );
Ltmp = L_mac_sat( Ltmp, xn[L_subfr - 1], 16384 ); /* Q_new + Q15 + shift */
Ltmp = L_msu_sat( Ltmp, y1[L_subfr - 1], gain_pit ); /* Q_new + Q15 + shift */
Ltmp = L_shl_sat( Ltmp, sub( 1, shift ) ); /* Q_new + 15 */
hLPDmem->mem_w0 = round_fx_sat( Ltmp ); /*Q_new-1 */
-#else
- Ltmp = L_shl_o( Ltmp, add( 5, shift ), &Overflow ); /* Q15 + Q_new + shift */
- Ltmp = L_negate( Ltmp );
- Ltmp = L_mac_o( Ltmp, xn[L_subfr - 1], 16384, &Overflow ); /* Q_new + Q15 + shift */
- Ltmp = L_msu_o( Ltmp, y1[L_subfr - 1], gain_pit, &Overflow ); /* Q_new + Q15 + shift */
- Ltmp = L_shl_o( Ltmp, sub( 1, shift ), &Overflow ); /* Q_new + 15 */
- hLPDmem->mem_w0 = round_fx_o( Ltmp, &Overflow ); /*Q_new-1 */
-#endif
move16();
}
ELSE
@@ -416,18 +400,11 @@ void enc_pit_exc_fx(
FOR( i = 0; i < L_subfr; i++ )
{
/* code in Q9, gain_pit in Q14 */
- Ltmp = L_mult( gcode16, code[i] ); /* Q10 + Q_new */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ Ltmp = L_mult( gcode16, code[i] ); /* Q10 + Q_new */
Ltmp = L_shl_sat( Ltmp, 5 ); /* Q15 + Q_new */
Ltmp = L_mac_sat( Ltmp, exc[i + i_subfr], gain_pit ); /* Q15 + Q_new */
Ltmp = L_shl_sat( Ltmp, 1 ); /* saturation can occur here Q_new + Q16*/
exc[i + i_subfr] = round_fx_sat( Ltmp ); /* Q_new */
-#else
- Ltmp = L_shl_o( Ltmp, 5, &Overflow ); /* Q15 + Q_new */
- Ltmp = L_mac_o( Ltmp, exc[i + i_subfr], gain_pit, &Overflow ); /* Q15 + Q_new */
- Ltmp = L_shl_o( Ltmp, 1, &Overflow ); /* saturation can occur here Q_new + Q16*/
- exc[i + i_subfr] = round_fx_o( Ltmp, &Overflow ); /* Q_new */
-#endif
move16();
}
}
@@ -613,12 +590,6 @@ void enc_pit_exc_ivas_fx(
BSTR_ENC_HANDLE hBstr = st_fx->hBstr;
GSC_ENC_HANDLE hGSCEnc = st_fx->hGSCEnc;
LPD_state_HANDLE hLPDmem = st_fx->hLPDmem;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*------------------------------------------------------------------*
* Initialization
@@ -670,7 +641,6 @@ void enc_pit_exc_ivas_fx(
}
ELSE
{
-
Local_BR = ACELP_7k20;
move32();
Pitch_BR = st_fx->core_brate;
@@ -757,6 +727,7 @@ void enc_pit_exc_ivas_fx(
* target in residual domain "cn"
* Compute impulse response, h1[], of weighted synthesis filter
*----------------------------------------------------------------*/
+
Copy( &res[i_subfr], &exc[i_subfr], L_subfr ); /* Q_new */
/* condition on target (compared to float) has been put outside the loop */
@@ -799,6 +770,7 @@ void enc_pit_exc_ivas_fx(
lp_select = lp_filt_exc_enc_fx( MODE1, AUDIO, i_subfr, exc, h1, xn, y1, xn2, L_subfr, st_fx->L_frame, g_corr, clip_gain, &gain_pit, &lp_flag ); /* Q0 */
+
IF( EQ_16( lp_flag, NORMAL_OPERATION ) )
{
push_indice( hBstr, IND_LP_FILT_SELECT, lp_select, 1 );
@@ -884,21 +856,12 @@ void enc_pit_exc_ivas_fx(
IF( use_fcb != 0 )
{
Ltmp = L_mult0( gcode16, y2[L_subfr - 1] );
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp = L_shl_sat( Ltmp, add( 5, shift ) ); // Q_new+14+shift
Ltmp = L_negate( Ltmp );
Ltmp = L_mac_sat( Ltmp, xn[L_subfr - 1], 16384 ); // Q_new-1+15+shift
Ltmp = L_msu_sat( Ltmp, y1[L_subfr - 1], gain_pit ); // Q_new-1+15+shift
Ltmp = L_shl_sat( Ltmp, sub( 1, shift ) ); // Q_new+15
hGSCEnc->mem_w0_tmp_fx = round_fx_sat( Ltmp ); /*Q_new-1 */
-#else
- Ltmp = L_shl_o( Ltmp, add( 5, shift ), &Overflow ); // Q_new+14+shift
- Ltmp = L_negate( Ltmp );
- Ltmp = L_mac_o( Ltmp, xn[L_subfr - 1], 16384, &Overflow ); // Q_new-1+15+shift
- Ltmp = L_msu_o( Ltmp, y1[L_subfr - 1], gain_pit, &Overflow ); // Q_new-1+15+shift
- Ltmp = L_shl_o( Ltmp, sub( 1, shift ), &Overflow ); // Q_new+15
- hGSCEnc->mem_w0_tmp_fx = round_fx_o( Ltmp, &Overflow ); /*Q_new-1 */
-#endif
}
ELSE
{
@@ -918,18 +881,11 @@ void enc_pit_exc_ivas_fx(
FOR( i = 0; i < L_subfr; i++ )
{
/* code in Q9, gain_pit in Q14 */
- Ltmp = L_mult( gcode16, code[i] ); /* Q10 + Q_new */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ Ltmp = L_mult( gcode16, code[i] ); /* Q10 + Q_new */
Ltmp = L_shl_sat( Ltmp, 5 ); /* Q15 + Q_new */
Ltmp = L_mac_sat( Ltmp, exc[i + i_subfr], gain_pit ); /* Q15 + Q_new */
Ltmp = L_shl_sat( Ltmp, 1 ); /* saturation can occur here Q16 + Q_new */
exc[i + i_subfr] = round_fx_sat( Ltmp ); /* Q_new */
-#else
- Ltmp = L_shl_o( Ltmp, 5, &Overflow ); /* Q15 + Q_new */
- Ltmp = L_mac_o( Ltmp, exc[i + i_subfr], gain_pit, &Overflow ); /* Q15 + Q_new */
- Ltmp = L_shl_o( Ltmp, 1, &Overflow ); /* saturation can occur here Q16 + Q_new */
- exc[i + i_subfr] = round_fx_o( Ltmp, &Overflow ); /* Q_new */
-#endif
move16();
}
}
diff --git a/lib_enc/enc_tran_fx.c b/lib_enc/enc_tran_fx.c
index c95f07e418b13f014775e377afae11da17daea63..fd97c8bf44a0642823a3aa3a5cde82a5c6e16f83 100644
--- a/lib_enc/enc_tran_fx.c
+++ b/lib_enc/enc_tran_fx.c
@@ -93,21 +93,17 @@ Word16 encod_tran_fx(
Word16 L_frame_fx;
Word16 shift_wsp;
Word32 L_tmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
BSTR_ENC_HANDLE hBstr = st_fx->hBstr;
SC_VBR_ENC_HANDLE hSC_VBR = st_fx->hSC_VBR;
LPD_state_HANDLE hLPDmem = st_fx->hLPDmem;
L_frame_fx = st_fx->L_frame;
move16();
+
/*------------------------------------------------------------------*
* Initializations
*------------------------------------------------------------------*/
+
gain_pit = 0;
move16();
gain_code = L_deposit_l( 0 );
@@ -202,11 +198,13 @@ Word16 encod_tran_fx(
Jopt_flag = 1;
move16();
}
+
/*-----------------------------------------------------------------*
* Quantize the gains
* Test quantized gain of pitch for pitch clipping algorithm
* Update tilt of code: 0.0 (unvoiced) to 0.5 (voiced)
*-----------------------------------------------------------------*/
+
IF( Jopt_flag == 0 )
{
/* SQ gain_code */
@@ -230,14 +228,10 @@ Word16 encod_tran_fx(
}
gp_clip_test_gain_pit_fx( st_fx->element_mode, st_fx->core_brate, gain_pit, st_fx->clip_var_fx );
-#ifdef ISSUE_1867_replace_overflow_libenc
Lgcode = L_shl_sat( gain_code, Q_new ); /* scaled gain_code with Qnew -> Q16*/
gcode16 = round_fx_sat( Lgcode );
-#else
- Lgcode = L_shl_o( gain_code, Q_new, &Overflow ); /* scaled gain_code with Qnew -> Q16*/
- gcode16 = round_fx_o( Lgcode, &Overflow );
-#endif
hLPDmem->tilt_code = Est_tilt2( &exc_fx[i_subfr], gain_pit, code, Lgcode, &voice_fac, shift ); /* Q15 */
+
/*-----------------------------------------------------------------*
* Update memory of the weighting filter
*-----------------------------------------------------------------*/
@@ -250,6 +244,7 @@ Word16 encod_tran_fx(
L_tmp = L_msu( L_tmp, y1[L_SUBFR - 1], gain_pit );
L_tmp = L_shl_sat( L_tmp, sub( 1, shift ) ); /* Q_new + 15 */
hLPDmem->mem_w0 = round_fx_sat( L_tmp ); /*Q_new-1*/
+
/*-----------------------------------------------------------------*
* Construct adaptive part of the excitation
* Save the non-enhanced excitation for FEC_exc
@@ -284,18 +279,11 @@ Word16 encod_tran_fx(
FOR( i = 0; i < L_SUBFR; i++ )
{
/* code in Q9, gain_pit in Q14 */
- L_tmp = L_mult( gcode16, code[i] ); /* Q10 + Q_new */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = L_mult( gcode16, code[i] ); /* Q10 + Q_new */
L_tmp = L_shl_sat( L_tmp, 5 ); /* Q15 + Q_new */
L_tmp = L_mac_sat( L_tmp, exc_fx[i + i_subfr], gain_pit ); /* Q15 + Q_new */
L_tmp = L_shl_sat( L_tmp, 1 ); /* saturation can occur here Q16 + Q_new */
exc_fx[i + i_subfr] = round_fx_sat( L_tmp ); /* Q_new */
-#else
- L_tmp = L_shl_o( L_tmp, 5, &Overflow ); /* Q15 + Q_new */
- L_tmp = L_mac_o( L_tmp, exc_fx[i + i_subfr], gain_pit, &Overflow ); /* Q15 + Q_new */
- L_tmp = L_shl_o( L_tmp, 1, &Overflow ); /* saturation can occur here Q16 + Q_new */
- exc_fx[i + i_subfr] = round_fx_o( L_tmp, &Overflow ); /* Q_new */
-#endif
}
/*-----------------------------------------------------------------*
@@ -308,21 +296,12 @@ Word16 encod_tran_fx(
FOR( i = 0; i < L_SUBFR; i++ )
{
L_tmp = L_mult( gain_preQ, code_preQ[i] ); /* Q2 + Q10 -> Q13*/
-#ifdef ISSUE_1867_replace_overflow_libenc
- L_tmp = L_shl_sat( L_tmp, tmp1_fx ); /* Q16 + Q_exc */
+ L_tmp = L_shl_sat( L_tmp, tmp1_fx ); /* Q16 + Q_exc */
tmp_fx = round_fx_sat( L_tmp );
exc2_fx[i + i_subfr] = add_sat( exc2_fx[i + i_subfr], tmp_fx ); /* Q_exc */
move16();
exc_fx[i + i_subfr] = add_sat( exc_fx[i + i_subfr], tmp_fx ); /* Q_exc */
move16();
-#else
- L_tmp = L_shl_o( L_tmp, tmp1_fx, &Overflow ); /* Q16 + Q_exc */
- tmp_fx = round_fx_o( L_tmp, &Overflow );
- exc2_fx[i + i_subfr] = add_o( exc2_fx[i + i_subfr], tmp_fx, &Overflow ); /* Q_exc */
- move16();
- exc_fx[i + i_subfr] = add_o( exc_fx[i + i_subfr], tmp_fx, &Overflow ); /* Q_exc */
- move16();
-#endif
}
}
@@ -330,13 +309,8 @@ Word16 encod_tran_fx(
* Prepare TBE excitation
*-----------------------------------------------------------------*/
-#ifdef FIX_2010_PREP_TBE_EXC
prep_tbe_exc_fx( L_frame_fx, L_SUBFR, i_subfr, gain_pit, gain_code, code, voice_fac, &voice_factors[i_subfr / L_SUBFR],
bwe_exc_fx, gain_preQ, code_preQ, Q10, Q_new, T0, T0_frac, st_fx->coder_type, st_fx->core_brate, st_fx->element_mode, st_fx->idchan, st_fx->hBWE_TD != NULL, st_fx->tdm_LRTD_flag );
-#else
- prep_tbe_exc_fx( L_frame_fx, L_SUBFR, i_subfr, gain_pit, gain_code, code, voice_fac, &voice_factors[i_subfr / L_SUBFR],
- bwe_exc_fx, gain_preQ, code_preQ, Q_new, T0, T0_frac, st_fx->coder_type, st_fx->core_brate, st_fx->element_mode, st_fx->idchan, st_fx->hBWE_TD != NULL, st_fx->tdm_LRTD_flag );
-#endif
/*-----------------------------------------------------------------*
* Synthesize speech to update mem_syn[].
@@ -444,6 +418,7 @@ Word16 encod_tran_fx(
return tc_subfr;
}
+
Word16 encod_tran_ivas_fx(
Encoder_State *st_fx, /* i/o: state structure */
const Word16 speech_fx[], /* i : input speech Q0*/
@@ -460,7 +435,7 @@ Word16 encod_tran_ivas_fx(
Word16 tc_subfr, /* i/o: TC subframe classification Q0*/
Word16 position, /* i : maximum of residual signal index Q0*/
Word16 *unbits, /* i/o: number of unused bits Q0*/
- const Word16 shift, /* i : Scaling to get 12 bits */
+ const Word16 shift_r, /* i : Scaling to get 12 bits */
const Word16 Q_new /* i : Input scaling */
)
{
@@ -494,16 +469,14 @@ Word16 encod_tran_ivas_fx(
Word16 shift_wsp;
Word32 L_tmp;
Word16 q_h1;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+ Word16 shift, tmp;
BSTR_ENC_HANDLE hBstr = st_fx->hBstr;
SC_VBR_ENC_HANDLE hSC_VBR = st_fx->hSC_VBR;
LPD_state_HANDLE hLPDmem = st_fx->hLPDmem;
+ shift = shift_r; /* for IVAS, shift_r is always 0 */
+ /* will be reusing the EVS shift strategy later on to allow of H1 overshoot */
+ move16();
L_frame_fx = st_fx->L_frame;
move16();
@@ -512,6 +485,7 @@ Word16 encod_tran_ivas_fx(
/*------------------------------------------------------------------*
* Initializations
*------------------------------------------------------------------*/
+
gain_pit = 0;
move16();
gain_code = L_deposit_l( 0 );
@@ -553,6 +527,7 @@ Word16 encod_tran_ivas_fx(
{
shift_wsp = sub( shift_wsp, 1 );
}
+
/*----------------------------------------------------------------*
* ACELP subframe loop
*----------------------------------------------------------------*/
@@ -572,9 +547,15 @@ Word16 encod_tran_ivas_fx(
res_fx, L_SUBFR, p_Aw, st_fx->preemph_fac, xn, cn, h1 );
q_h1 = sub( 14, norm_s( h1[0] ) );
+ tmp = sub( 14, norm_arr( h1, L_SUBFR ) );
+ shift = sub( q_h1, tmp ); /* shift is initialized to shift_r ( to 0) at the beginning of the scope, re-compute shift_wsp in case it has changed */
+ shift_wsp = add( Q_new, shift );
+ if ( LT_32( st_fx->core_brate, MIN_BRATE_AVQ_EXC ) )
+ {
+ shift_wsp = sub( shift_wsp, 1 );
+ }
Copy_Scale_sig( h1, h2_fx, L_SUBFR, sub( 11, q_h1 ) ); /*Q11*/
- Scale_sig( h1, L_SUBFR, sub( 14, q_h1 ) );
-
+ Scale_sig( h1, L_SUBFR, add( sub( 14, q_h1 ), shift ) );
/* scaling of xn[] to limit dynamic at 12 bits */
Scale_sig( xn, L_SUBFR, shift );
@@ -611,11 +592,13 @@ Word16 encod_tran_ivas_fx(
Jopt_flag = 1;
move16();
}
+
/*-----------------------------------------------------------------*
* Quantize the gains
* Test quantized gain of pitch for pitch clipping algorithm
* Update tilt of code: 0.0 (unvoiced) to 0.5 (voiced)
*-----------------------------------------------------------------*/
+
IF( Jopt_flag == 0 )
{
/* SQ gain_code */
@@ -639,14 +622,10 @@ Word16 encod_tran_ivas_fx(
}
gp_clip_test_gain_pit_fx( st_fx->element_mode, st_fx->core_brate, gain_pit, st_fx->clip_var_fx );
-#ifdef ISSUE_1867_replace_overflow_libenc
Lgcode = L_shl_sat( gain_code, Q_new ); /* scaled gain_code with Qnew -> Q16*/
gcode16 = round_fx_sat( Lgcode );
-#else
- Lgcode = L_shl_o( gain_code, Q_new, &Overflow ); /* scaled gain_code with Qnew -> Q16*/
- gcode16 = round_fx_o( Lgcode, &Overflow );
-#endif
hLPDmem->tilt_code = est_tilt_ivas_fx( &exc_fx[i_subfr], gain_pit, code, gain_code, &voice_fac, Q_new, L_SUBFR, 0 ); // Q15
+
/*-----------------------------------------------------------------*
* Update memory of the weighting filter
*-----------------------------------------------------------------*/
@@ -659,6 +638,7 @@ Word16 encod_tran_ivas_fx(
L_tmp = L_msu( L_tmp, y1[L_SUBFR - 1], gain_pit ); // Q_new-1+15+shift
L_tmp = L_shl_sat( L_tmp, sub( 1, shift ) ); // Q_new+15
hLPDmem->mem_w0 = round_fx_sat( L_tmp ); /*Q_new-1*/
+
/*-----------------------------------------------------------------*
* Construct adaptive part of the excitation
* Save the non-enhanced excitation for FEC_exc
@@ -690,21 +670,15 @@ Word16 encod_tran_ivas_fx(
* Construct adaptive part of the excitation
* Save the non-enhanced excitation for FEC_exc
*-----------------------------------------------------------------*/
+
FOR( i = 0; i < L_SUBFR; i++ )
{
/* code in Q9, gain_pit in Q14 */
- L_tmp = L_mult( gcode16, code[i] ); /* Q10 + Q_new */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = L_mult( gcode16, code[i] ); /* Q10 + Q_new */
L_tmp = L_shl_sat( L_tmp, 5 ); /* Q15 + Q_new */
L_tmp = L_mac_sat( L_tmp, exc_fx[i + i_subfr], gain_pit ); /* Q15 + Q_new */
L_tmp = L_shl_sat( L_tmp, 1 ); /* saturation can occur here Q16 + Q_new */
exc_fx[i + i_subfr] = round_fx_sat( L_tmp ); /* Q_new */
-#else
- L_tmp = L_shl_o( L_tmp, 5, &Overflow ); /* Q15 + Q_new */
- L_tmp = L_mac_o( L_tmp, exc_fx[i + i_subfr], gain_pit, &Overflow ); /* Q15 + Q_new */
- L_tmp = L_shl_o( L_tmp, 1, &Overflow ); /* saturation can occur here Q16 + Q_new */
- exc_fx[i + i_subfr] = round_fx_o( L_tmp, &Overflow ); /* Q_new */
-#endif
}
/*-----------------------------------------------------------------*
@@ -717,21 +691,12 @@ Word16 encod_tran_ivas_fx(
FOR( i = 0; i < L_SUBFR; i++ )
{
L_tmp = L_mult( gain_preQ, code_preQ[i] ); /* Q2 + Q10 -> Q13*/
-#ifdef ISSUE_1867_replace_overflow_libenc
- L_tmp = L_shl_sat( L_tmp, tmp1_fx ); /* Q16 + Q_exc */
+ L_tmp = L_shl_sat( L_tmp, tmp1_fx ); /* Q16 + Q_exc */
tmp_fx = round_fx_sat( L_tmp );
exc2_fx[i + i_subfr] = add_sat( exc2_fx[i + i_subfr], tmp_fx ); /* Q_exc */
move16();
exc_fx[i + i_subfr] = add_sat( exc_fx[i + i_subfr], tmp_fx ); /* Q_exc */
-#else
- L_tmp = L_shl_o( L_tmp, tmp1_fx, &Overflow ); /* Q16 + Q_exc */
- tmp_fx = round_fx_o( L_tmp, &Overflow );
-
- exc2_fx[i + i_subfr] = add_o( exc2_fx[i + i_subfr], tmp_fx, &Overflow ); /* Q_exc */
- move16();
- exc_fx[i + i_subfr] = add_o( exc_fx[i + i_subfr], tmp_fx, &Overflow ); /* Q_exc */
-#endif
move16();
}
}
@@ -740,15 +705,9 @@ Word16 encod_tran_ivas_fx(
* Prepare TBE excitation
*-----------------------------------------------------------------*/
-#ifdef FIX_2010_PREP_TBE_EXC
prep_tbe_exc_fx( L_frame_fx, L_SUBFR, i_subfr, gain_pit, gain_code, code, voice_fac, &voice_factors[i_subfr / L_SUBFR],
bwe_exc_fx, gain_preQ, code_preQ, Q10, Q_new, T0, T0_frac, st_fx->coder_type, st_fx->core_brate,
st_fx->element_mode, st_fx->idchan, st_fx->hBWE_TD != NULL, st_fx->tdm_LRTD_flag );
-#else
- prep_tbe_exc_fx( L_frame_fx, L_SUBFR, i_subfr, gain_pit, gain_code, code, voice_fac, &voice_factors[i_subfr / L_SUBFR],
- bwe_exc_fx, gain_preQ, code_preQ, Q_new, T0, T0_frac, st_fx->coder_type, st_fx->core_brate,
- st_fx->element_mode, st_fx->idchan, st_fx->hBWE_TD != NULL, st_fx->tdm_LRTD_flag );
-#endif
/*-----------------------------------------------------------------*
* Synthesize speech to update mem_syn[].
diff --git a/lib_enc/enc_uv_fx.c b/lib_enc/enc_uv_fx.c
index 28c79a9685515706fc1314278f47efd228229791..1a531b8bed7810dd5a1bd8abea53ff47792b24e4 100644
--- a/lib_enc/enc_uv_fx.c
+++ b/lib_enc/enc_uv_fx.c
@@ -1,6 +1,7 @@
/*====================================================================================
EVS Codec 3GPP TS26.452 Aug 12, 2021. Version 16.3.0
====================================================================================*/
+
#include
#include
#include "options.h" /* Compilation switches */
@@ -9,12 +10,13 @@
#include "rom_com.h"
#include "prot_fx_enc.h" /* Function prototypes */
+
/*-------------------------------------------------------------------*
* encod_unvoiced()
*
* Encode unvoiced (UC) frames
*-------------------------------------------------------------------*/
-/*fixed point implementation of unvoiced_encoder*/
+
void encod_unvoiced_fx(
Encoder_State *st_fx, /* i/o: state structure */
const Word16 *speech_fx, /* i : Input speech Q_new*/
@@ -81,7 +83,6 @@ void encod_unvoiced_fx(
Q_xn = add( sub( Q_new, 1 ), shift );
Q_new_p5 = add( Q_new, 5 );
-
FOR( i_subfr = 0; i_subfr < L_FRAME; i_subfr += L_SUBFR )
{
/*----------------------------------------------------------------*
@@ -89,6 +90,7 @@ void encod_unvoiced_fx(
* Find the excitation search target "xn" and innovation target in residual domain "cn"
* Compute impulse response, h1[], of weighted synthesis filter
*----------------------------------------------------------------*/
+
i_subfr_idx = shr( i_subfr, 6 );
Copy( &res_fx[i_subfr], &exc_fx[i_subfr], L_SUBFR ); /* Q_new */
@@ -100,9 +102,11 @@ void encod_unvoiced_fx(
/* scaling of xn[] to limit dynamic at 12 bits */
Scale_sig( xn_fx, L_SUBFR, shift );
+
/*----------------------------------------------------------------*
* Unvoiced subframe processing
*----------------------------------------------------------------*/
+
IF( !uc_two_stage_flag )
{
*pt_pitch_fx = gaus_encode_fx( st_fx, i_subfr, h1_fx, xn_fx, exc_fx, &hLPDmem->mem_w0, st_fx->clip_var_fx,
@@ -123,9 +127,11 @@ void encod_unvoiced_fx(
* Gain clipping test to avoid unstable synthesis on frame erasure
* or in case of floating point encoder & fixed p. decoder
*-----------------------------------------------------------------*/
+
Mode2_gp_clip_fx( st_fx->voicing_fx, i_subfr, st_fx->coder_type, xn_fx, st_fx->clip_var_fx, L_SUBFR, Q_xn );
*pt_pitch_fx = L_SUBFR;
move16();
+
/*----------------------------------------------------------------------*
* Encode the algebraic innovation *
*----------------------------------------------------------------------*/
@@ -165,15 +171,18 @@ void encod_unvoiced_fx(
/*----------------------------------------------------------*
* - voice factor (for pitch enhancement) *
*----------------------------------------------------------*/
+
E_UTIL_voice_factor( exc_fx, i_subfr, code_fx, gain_pit_fx, L_gain_code_fx, &voice_fac_fx, &( hLPDmem->tilt_code ), L_SUBFR, acelp_cfg->voice_tilt, Q_new, shift );
IF( st_fx->Opt_RF_ON )
{
st_fx->hRF->rf_tilt_buf[i_subfr_idx] = hLPDmem->tilt_code;
}
+
/*-----------------------------------------------------------------*
* Update memory of the weighting filter
*-----------------------------------------------------------------*/
+
/* st_fx->mem_w0 = xn[L_SUBFR-1] - (gain_pit*y1[L_SUBFR-1]) - (gain_code*y2[L_SUBFR-1]); */
Ltmp = Mpy_32_16_1( L_gain_code_fx, y2_fx[L_SUBFR - 1] ); /* Q10 */
Ltmp = L_shl( Ltmp, add( 5, Q_xn ) ); /* Q15 + Q_xn */
@@ -222,6 +231,7 @@ void encod_unvoiced_fx(
* Synthesize speech to update mem_syn[].
* Update A(z) filters
*-----------------------------------------------------------------*/
+
Syn_filt_s( 1, p_Aq_fx, M, &exc_fx[i_subfr], &syn_fx[i_subfr], L_SUBFR, hLPDmem->mem_syn, 1 );
p_Aw_fx += ( M + 1 );
@@ -238,6 +248,7 @@ void encod_unvoiced_fx(
return;
}
+
void encod_unvoiced_ivas_fx(
Encoder_State *st_fx, /* i/o: state structure */
const Word16 *speech_fx, /* i : Input speech Q_new*/
@@ -287,6 +298,7 @@ void encod_unvoiced_ivas_fx(
/*------------------------------------------------------------------*
* Initializations
*------------------------------------------------------------------*/
+
gain_pit_fx = 0;
move16();
@@ -306,7 +318,6 @@ void encod_unvoiced_ivas_fx(
Q_xn = add( sub( Q_new, 1 ), shift );
Q_new_p5 = add( Q_new, 5 );
-
FOR( i_subfr = 0; i_subfr < L_FRAME; i_subfr += L_SUBFR )
{
/*----------------------------------------------------------------*
@@ -314,6 +325,7 @@ void encod_unvoiced_ivas_fx(
* Find the excitation search target "xn" and innovation target in residual domain "cn"
* Compute impulse response, h1[], of weighted synthesis filter
*----------------------------------------------------------------*/
+
i_subfr_idx = shr( i_subfr, 6 );
Copy( &res_fx[i_subfr], &exc_fx[i_subfr], L_SUBFR ); /* Q_new */
@@ -326,9 +338,11 @@ void encod_unvoiced_ivas_fx(
/* scaling of xn[] to limit dynamic at 12 bits */
Scale_sig( xn_fx, L_SUBFR, shift ); // Q_new - 1 + shift
+
/*----------------------------------------------------------------*
* Unvoiced subframe processing
*----------------------------------------------------------------*/
+
IF( !uc_two_stage_flag )
{
*pt_pitch_fx = gaus_encode_fx( st_fx, i_subfr, h1_fx, xn_fx, exc_fx, &hLPDmem->mem_w0, st_fx->clip_var_fx,
@@ -341,22 +355,25 @@ void encod_unvoiced_ivas_fx(
/*----------------------------------------------------------------*
* Unvoiced subframe processing in two stages
*----------------------------------------------------------------*/
+
// PMT("The code below needs validation, never been tested")
/* No adaptive codebook (UC) */
set16_fx( y1, 0, L_SUBFR );
set16_fx( exc_fx + i_subfr, 0, L_SUBFR );
+
/*-----------------------------------------------------------------*
* Gain clipping test to avoid unstable synthesis on frame erasure
* or in case of floating point encoder & fixed p. decoder
*-----------------------------------------------------------------*/
+
Mode2_gp_clip_fx( st_fx->voicing_fx, i_subfr, st_fx->coder_type, xn_fx, st_fx->clip_var_fx, L_SUBFR, Q_xn );
*pt_pitch_fx = L_SUBFR << 6;
move16();
+
/*----------------------------------------------------------------------*
* Encode the algebraic innovation *
*----------------------------------------------------------------------*/
- // E_ACELP_innovative_codebook_fx( exc_fx, *pt_pitch_fx, 0, 1, gain_pit_fx, hLPDmem->tilt_code, acelp_cfg, i_subfr, p_Aq_fx, h1_fx, xn_fx, cn_fx, y1, y2_fx, (Word8) st_fx->acelp_autocorr, &prm, code_fx, shift, st_fx->L_frame, st_fx->last_L_frame, st_fx->total_brate, st_fx->element_mode );
inov_encode_ivas_fx( st_fx, st_fx->core_brate, 0, L_FRAME, st_fx->last_L_frame,
UNVOICED, st_fx->bwidth, 1, i_subfr, -1, p_Aq_fx,
gain_pit_fx, cn_fx, exc_fx, h2_fx, hLPDmem->tilt_code, *pt_pitch_fx, xn_fx, code_fx, y2_fx, &unbits_PI, L_SUBFR, shift, Q_new );
@@ -398,6 +415,7 @@ void encod_unvoiced_ivas_fx(
/*----------------------------------------------------------*
* - voice factor (for pitch enhancement) *
*----------------------------------------------------------*/
+
E_UTIL_voice_factor( exc_fx, i_subfr, code_fx, gain_pit_fx, L_gain_code_fx, &voice_fac_fx, &( hLPDmem->tilt_code ), L_SUBFR, acelp_cfg->voice_tilt, Q_new, shift );
if ( st_fx->Opt_RF_ON )
@@ -408,6 +426,7 @@ void encod_unvoiced_ivas_fx(
/*-----------------------------------------------------------------*
* Update memory of the weighting filter
*-----------------------------------------------------------------*/
+
/* st_fx->mem_w0 = xn[L_SUBFR-1] - (gain_pit*y1[L_SUBFR-1]) - (gain_code*y2[L_SUBFR-1]); */
Ltmp = Mpy_32_16_1( L_gain_code_fx, y2_fx[L_SUBFR - 1] ); /* Q10 */
Ltmp = L_shl( Ltmp, add( 5, Q_xn ) ); // Qxn+15
@@ -462,6 +481,7 @@ void encod_unvoiced_ivas_fx(
* Synthesize speech to update mem_syn[].
* Update A(z) filters
*-----------------------------------------------------------------*/
+
Syn_filt_s( 1, p_Aq_fx, M, &exc_fx[i_subfr], &syn_fx[i_subfr], L_SUBFR, hLPDmem->mem_syn, 1 );
p_Aw_fx += ( M + 1 );
diff --git a/lib_enc/ext_sig_ana_fx.c b/lib_enc/ext_sig_ana_fx.c
index 42f6dc487b52d5df5c56c46676513741ff3d6f8e..20d18c7796b4dd86b8f12380900ba14952119694 100644
--- a/lib_enc/ext_sig_ana_fx.c
+++ b/lib_enc/ext_sig_ana_fx.c
@@ -914,10 +914,10 @@ void core_signal_analysis_high_bitrate_ivas_fx(
tmp = BASOP_Util_Divide1616_Scale( st->bwidth_sw_cnt, BWS_TRAN_PERIOD, &exp_diff );
factor = L_shl( L_deposit_h( tmp ), exp_diff ); // Q31
- v_multc_fixed( hTcxEnc->spectrum_fx[frameno] + i * tcx5SizeFB + L_FRAME16k / ( 2 * nSubframes ),
- factor,
- hTcxEnc->spectrum_fx[frameno] + i * tcx5SizeFB + L_FRAME16k / ( 2 * nSubframes ),
- L_subframe - L_FRAME16k / ( 2 * nSubframes ) );
+ v_multc_fx( hTcxEnc->spectrum_fx[frameno] + i * tcx5SizeFB + L_FRAME16k / ( 2 * nSubframes ),
+ factor,
+ hTcxEnc->spectrum_fx[frameno] + i * tcx5SizeFB + L_FRAME16k / ( 2 * nSubframes ),
+ L_subframe - L_FRAME16k / ( 2 * nSubframes ) );
}
}
hTcxEnc->spectrum_e[frameno] = s_max( exp[0], exp[1] );
@@ -954,7 +954,7 @@ void core_signal_analysis_high_bitrate_ivas_fx(
tmp = Sqrt16( tmp, &exp_diff );
factor = L_shl( L_deposit_h( tmp ), exp_diff ); // Q31
- v_multc_fixed( hTcxEnc->spectrum_fx[frameno], factor, hTcxEnc->spectrum_fx[frameno], L_subframe );
+ v_multc_fx( hTcxEnc->spectrum_fx[frameno], factor, hTcxEnc->spectrum_fx[frameno], L_subframe );
}
ELSE
{
@@ -996,10 +996,10 @@ void core_signal_analysis_high_bitrate_ivas_fx(
tmp = BASOP_Util_Divide1616_Scale( st->bwidth_sw_cnt, BWS_TRAN_PERIOD, &exp_diff );
factor = L_shl( L_deposit_h( tmp ), exp_diff ); // Q31
- v_multc_fixed( hTcxEnc->spectrum_fx[frameno] + L_FRAME16k / nSubframes,
- factor,
- hTcxEnc->spectrum_fx[frameno] + L_FRAME16k / nSubframes,
- L_subframe - L_FRAME16k / nSubframes );
+ v_multc_fx( hTcxEnc->spectrum_fx[frameno] + L_FRAME16k / nSubframes,
+ factor,
+ hTcxEnc->spectrum_fx[frameno] + L_FRAME16k / nSubframes,
+ L_subframe - L_FRAME16k / nSubframes );
}
IF( NE_16( st->element_mode, IVAS_CPE_MDCT ) )
@@ -1121,10 +1121,10 @@ void core_signal_analysis_high_bitrate_ivas_fx(
tmp = BASOP_Util_Divide1616_Scale( st->bwidth_sw_cnt, BWS_TRAN_PERIOD, &exp_diff );
factor = L_shl( L_deposit_h( tmp ), exp_diff ); // Q31
- v_multc_fixed( spectrum[frameno] + i * tcx5SizeFB + L_FRAME16k / ( 2 * nSubframes ),
- factor,
- spectrum[frameno] + i * tcx5SizeFB + L_FRAME16k / ( 2 * nSubframes ),
- L_subframe - L_FRAME16k / ( 2 * nSubframes ) );
+ v_multc_fx( spectrum[frameno] + i * tcx5SizeFB + L_FRAME16k / ( 2 * nSubframes ),
+ factor,
+ spectrum[frameno] + i * tcx5SizeFB + L_FRAME16k / ( 2 * nSubframes ),
+ L_subframe - L_FRAME16k / ( 2 * nSubframes ) );
}
}
}
@@ -1149,7 +1149,7 @@ void core_signal_analysis_high_bitrate_ivas_fx(
tmp = Sqrt16( tmp, &exp_diff );
factor = L_shl( L_deposit_h( tmp ), exp_diff ); // Q31
- v_multc_fixed( spectrum[frameno], factor, spectrum[frameno], L_subframe );
+ v_multc_fx( spectrum[frameno], factor, spectrum[frameno], L_subframe );
}
ELSE
{
@@ -1191,7 +1191,7 @@ void core_signal_analysis_high_bitrate_ivas_fx(
tmp = BASOP_Util_Divide1616_Scale( st->bwidth_sw_cnt, BWS_TRAN_PERIOD, &exp_diff );
factor = L_shl( L_deposit_h( tmp ), exp_diff ); // Q31
- v_multc_fixed( spectrum[frameno] + L_FRAME16k / nSubframes, factor, spectrum[frameno] + L_FRAME16k / nSubframes, L_subframe - L_FRAME16k / nSubframes );
+ v_multc_fx( spectrum[frameno] + L_FRAME16k / nSubframes, factor, spectrum[frameno] + L_FRAME16k / nSubframes, L_subframe - L_FRAME16k / nSubframes );
}
}
}
diff --git a/lib_enc/fd_cng_enc_fx.c b/lib_enc/fd_cng_enc_fx.c
index 8b41b4e7847b75e49f8d0bcee0f72a6eaa051f0d..6834958d1b0937c9e8590b4c2a97a335fe0474db 100644
--- a/lib_enc/fd_cng_enc_fx.c
+++ b/lib_enc/fd_cng_enc_fx.c
@@ -2467,11 +2467,7 @@ void FdCng_encodeSID_ivas_fx(
v_fx[i] = Mpy_32_32( 671088640 /*10 in Q26*/, BASOP_Util_Log10( E_fx[i], hFdCngEnc->msNoiseEst_fx_exp ) ); // Q20 = 26+25-31
move32();
}
-#ifdef FIX_1980_CRASH_FDCNG_ENCODESID
e_fx = L_add( e_fx, L_shr( v_fx[i], 1 ) ); // Q19, add one bit headroom
-#else
- e_fx = L_add( e_fx, v_fx[i] ); // Q20
-#endif
}
/* Normalize MSVQ input */
@@ -2540,11 +2536,7 @@ void FdCng_encodeSID_ivas_fx(
{
gain_fx = L_add( gain_fx, v_fx[i] ); // Q = 31 - v_e
}
-#ifdef FIX_1980_CRASH_FDCNG_ENCODESID
- e_fx = L_shl( e_fx, sub( 12, v_e ) ); // Q = 31 - v_e
-#else
- e_fx = L_shl( e_fx, sub( 11, v_e ) ); // Q = 31 - v_e
-#endif
+ e_fx = L_shl( e_fx, sub( 12, v_e ) ); // Q = 31 - v_e
gain_fx = Mpy_32_16_1( L_sub( e_fx, gain_fx ), div_s( 1, N ) ); // Q = 31 - v_e
gain_fx = L_shl( gain_fx, sub( v_e, 8 ) ); // Q23
diff --git a/lib_enc/find_tar_fx.c b/lib_enc/find_tar_fx.c
index 0fec2c42479ea010499ffdacc4d400cc165f30bc..ca3f50f115a0fb59f9479896ecf11b78c3434f99 100644
--- a/lib_enc/find_tar_fx.c
+++ b/lib_enc/find_tar_fx.c
@@ -134,11 +134,7 @@ void find_targets_fx(
{
Ltmp = L_msu( Ltmp, Aqs[j], h1[i - j] ); /* Q27 */
}
-#ifdef ISSUE_1867_replace_overflow_libenc
h1[i] = round_fx( L_shl_sat( Ltmp, s ) ); /* Q11 + s */
-#else
- h1[i] = round_fx( L_shl_o( Ltmp, s, &Overflow ) ); /* Q11 + s */
-#endif
}
Ltmp = L_mult( Ap[i], s2 ); /* Q27 */
FOR( j = 1; j <= M; j++ )
@@ -185,12 +181,7 @@ void find_targets_ivas_fx(
Word32 h1_32[6 * L_SUBFR];
Word16 sf;
Word64 Ltmp64;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
+
/*------------------------------------------------------------------------*
* Find the target vector for excitation search:
*
@@ -256,20 +247,12 @@ void find_targets_ivas_fx(
}
set32_fx( h1_32, 0, L_subfr );
-#ifndef ISSUE_1867_replace_overflow_libenc
- Overflow = 0;
- move16();
-#endif
FOR( i = 0; i < M; i++ )
{
Ltmp64 = W_mult_16_16( Ap[i], s2 ); /* Q27 */
FOR( j = 1; j <= i; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp64 = W_msu_16_16( Ltmp64, Aqs[j], extract_h( L_shl_sat( h1_32[i - j], s ) ) ); /* Q27 */
-#else
- Ltmp64 = W_msu_16_16( Ltmp64, Aqs[j], extract_h( L_shl_o( h1_32[i - j], s, &Overflow ) ) ); /* Q27 */
-#endif
}
h1_32[i] = W_extract_l( Ltmp64 ); /* Q27 */
move32();
@@ -278,29 +261,17 @@ void find_targets_ivas_fx(
Ltmp64 = W_mult_16_16( Ap[i], s2 ); /* Q27 */
FOR( j = 1; j <= M; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp64 = W_msu_16_16( Ltmp64, Aqs[j], extract_h( L_shl_sat( h1_32[i - j], s ) ) ); /* Q27 */
-#else
- Ltmp64 = W_msu_16_16( Ltmp64, Aqs[j], extract_h( L_shl_o( h1_32[i - j], s, &Overflow ) ) ); /* Q27 */
-#endif
}
h1_32[M] = W_extract_l( Ltmp64 ); /* Q27 */
move32();
FOR( i = M + 1; i < L_subfr; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp64 = W_msu_16_16( 0, Aqs[1], extract_h( L_shl_sat( h1_32[i - 1], s ) ) ); /* Q27 */
-#else
- Ltmp64 = W_msu_16_16( 0, Aqs[1], extract_h( L_shl_o( h1_32[i - 1], s, &Overflow ) ) ); /* Q27 */
-#endif
FOR( j = 2; j <= M; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp64 = W_msu_16_16( Ltmp64, Aqs[j], extract_h( L_shl_sat( h1_32[i - j], s ) ) ); /* Q27 */
-#else
- Ltmp64 = W_msu_16_16( Ltmp64, Aqs[j], extract_h( L_shl_o( h1_32[i - j], s, &Overflow ) ) ); /* Q27 */
-#endif
}
h1_32[i] = W_extract_l( Ltmp64 ); /* Q27 */
move32();
diff --git a/lib_enc/find_tilt_fx.c b/lib_enc/find_tilt_fx.c
index 56078ec1eaf8b25faf54ec72f4a98b254dd219ef..e267040991aa03cd00a47d929400681729e60a86 100644
--- a/lib_enc/find_tilt_fx.c
+++ b/lib_enc/find_tilt_fx.c
@@ -28,9 +28,8 @@ void find_tilt_fx(
Word32 hp_E[], /* o : energy in HF Q_new + Q_SCALE*/
const Word16 codec_mode, /* i : MODE1 or MODE2 Q0*/
const Word16 Q_new, /* i : scaling factor */
- Word32 *bckr_tilt_lt /* i/o: lf/hf E ratio of background noise Q16*/
- ,
- Word16 Opt_vbr_mode /* Q0 */
+ Word32 *bckr_tilt_lt, /* i/o: lf/hf E ratio of background noise Q16*/
+ Word16 Opt_vbr_mode /* Q0 */
)
{
Word32 lp_bckr = 0, hp_bckr = 0, lp_E, Ltmp;
@@ -44,12 +43,7 @@ void find_tilt_fx(
Word16 scaling;
move32();
move32();
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
/*-----------------------------------------------------------------*
* Initializations
*-----------------------------------------------------------------*/
@@ -110,13 +104,8 @@ void find_tilt_fx(
/*mean_voi = 0.5f * (voicing[1] + voicing[2]) + corr_shift;*/
Ltmp = L_mult( voicing[1], 16384 /* 0.5 in Q15 */ ); /* Q31 */
Ltmp = L_mac( Ltmp, voicing[2], 16384 /* 0.5 in Q15 */ ); /* Q31 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- Ltmp = L_mac_sat( Ltmp, corr_shift, 32767 ); /* Q31 */
- mean_voi = round_fx_sat( Ltmp ); /* Q15 */
-#else
- Ltmp = L_mac_o( Ltmp, corr_shift, 32767, &Overflow ); /* Q31 */
- mean_voi = round_fx_o( Ltmp, &Overflow ); /* Q15 */
-#endif
+ Ltmp = L_mac_sat( Ltmp, corr_shift, 32767 ); /* Q31 */
+ mean_voi = round_fx_sat( Ltmp ); /* Q15 */
/*f0 = INT_FS_FX / pitch[2];*/
e_tmp = norm_s( pitch[2] );
@@ -162,23 +151,15 @@ void find_tilt_fx(
tmp = sub( freq, f2 );
IF( L_mac0( -(Word32) TH_D_FX * TH_D_FX, tmp, tmp ) < 0 )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
lp_E = L_add_sat( *pt_E, lp_E ); /* Q_new + QSCALE - 2 */
-#else
- lp_E = L_add_o( *pt_E, lp_E, &Overflow ); /* Q_new + QSCALE - 2 */
-#endif
- m_cnt = add( m_cnt, 1 ); /* Q0 */
+ m_cnt = add( m_cnt, 1 ); /* Q0 */
}
pt_E++;
}
-#ifdef ISSUE_1867_replace_overflow_libenc
f1 = add_sat( f1, f0 );
f2 = add_sat( f2, f0 );
-#else
- f1 = add_o( f1, f0, &Overflow );
- f2 = add_o( f2, f0, &Overflow );
-#endif
}
+
/*lp_E = lp_E / (float)cnt - lp_bckr;*/
e_tmp = sub( norm_l( lp_E ), 1 );
m_tmp = extract_h( L_shl( lp_E, e_tmp ) );
@@ -191,11 +172,7 @@ void find_tilt_fx(
m_tmp = div_s( m_tmp, m_cnt ); /* exp(e_tmp + e_cnt) */
e_tmp = sub( e_tmp, e_cnt );
-#ifdef ISSUE_1867_replace_overflow_libenc
lp_E = L_sub_sat( L_shr_sat( m_tmp, sub( e_tmp, 1 ) ), lp_bckr ); /* Q_new + QSCALE */
-#else
- lp_E = L_sub_o( L_shr_sat( m_tmp, sub( e_tmp, 1 ) ), lp_bckr, &Overflow ); /* Q_new + QSCALE */
-#endif
pt_E = tmp_E + VOIC_BINS; /* Update for next half-frame */
}
@@ -236,11 +213,7 @@ void find_tilt_fx(
IF( EQ_16( bwidth, NB ) ) /* For NB input, compensate for the missing bands */
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp = L_shl_sat( ee[i], 3 );
-#else
- Ltmp = L_shl_o( ee[i], 3, &Overflow );
-#endif
IF( EQ_32( Ltmp, MAX_32 ) ) /* if Overflow: Compute with less precision */
{
Ltmp = Mult_32_16( ee[i], 24576 /* 0.75 in Q15 */ ); /* 6/8 Q6*/
@@ -295,14 +268,9 @@ void find_tilt_ivas_fx(
Word64 sum;
Word16 inv_bands, q_lp_E;
Word32 Le_min_scaled, Ltmp2;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
move32();
move32();
+
/*-----------------------------------------------------------------*
* Initializations
*-----------------------------------------------------------------*/
@@ -370,15 +338,10 @@ void find_tilt_ivas_fx(
hp_bckr = L_add_sat( L_shl_sat( hp_bckr, 1 ), hp_bckr ); /* Q_new */
}
/*mean_voi = 0.5f * (voicing[1] + voicing[2]) + corr_shift;*/
- Ltmp = L_mult( voicing[1], 16384 /* 0.5 in Q15 */ ); // Q31
- Ltmp = L_mac( Ltmp, voicing[2], 16384 /* 0.5 in Q15 */ ); // Q31
-#ifdef ISSUE_1867_replace_overflow_libenc
+ Ltmp = L_mult( voicing[1], 16384 /* 0.5 in Q15 */ ); // Q31
+ Ltmp = L_mac( Ltmp, voicing[2], 16384 /* 0.5 in Q15 */ ); // Q31
Ltmp = L_mac_sat( Ltmp, corr_shift, 32767 /* 1.0f in Q15 */ ); // Q31
mean_voi = round_fx_sat( Ltmp ); // Q15
-#else
- Ltmp = L_mac_o( Ltmp, corr_shift, 32767 /* 1.0f in Q15 */, &Overflow ); // Q31
- mean_voi = round_fx_o( Ltmp, &Overflow ); // Q15
-#endif
/*f0 = INT_FS_FX / pitch[2];*/
e_tmp = norm_s( pitch[2] );
@@ -430,14 +393,10 @@ void find_tilt_ivas_fx(
}
pt_E++;
}
-#ifdef ISSUE_1867_replace_overflow_libenc
f1 = add_sat( f1, f0 );
f2 = add_sat( f2, f0 );
-#else
- f1 = add_o( f1, f0, &Overflow );
- f2 = add_o( f2, f0, &Overflow );
-#endif
}
+
/*lp_E = lp_E / (float)cnt - lp_bckr;*/
e_tmp = sub( W_norm( sum ), 1 );
m_tmp = extract_h( W_extract_h( W_shl( sum, e_tmp ) ) ); // q_lf_E+1+e_tmp-32-16
@@ -504,12 +463,8 @@ void find_tilt_ivas_fx(
IF( bwidth == NB ) /* For NB input, compensate for the missing bands */
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp = L_shl_sat( ee[i], 3 ); /* Q6 */
-#else
- Ltmp = L_shl_o( ee[i], 3, &Overflow ); /* Q6 */
-#endif
- IF( EQ_32( Ltmp, MAX_32 ) ) /* if Overflow: Compute with less precision */
+ IF( EQ_32( Ltmp, MAX_32 ) ) /* if Overflow: Compute with less precision */
{
Ltmp = Mult_32_16( ee[i], 24576 /* 0.75 in Q15 */ ); /* 6/8 Q6*/
ee[i] = L_shl_sat( Ltmp, 3 ); /* Q6 */
diff --git a/lib_enc/find_uv_fx.c b/lib_enc/find_uv_fx.c
index 401b64cb55346e5cd824b8d5c9d1e2c2d1034478..8554b03dd54fadbfadfc9a78ac3b463ef3beb587 100644
--- a/lib_enc/find_uv_fx.c
+++ b/lib_enc/find_uv_fx.c
@@ -115,13 +115,6 @@ Word16 find_uv_fx( /* o : coding type */
Word16 ee0_th, ee1_th, voi_th, nb_cond, flag_low_relE;
NOISE_EST_HANDLE hNoiseEst = st_fx->hNoiseEst;
SC_VBR_ENC_HANDLE hSC_VBR = st_fx->hSC_VBR;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
Word16 Last_Resort;
Word16 vadnoise;
@@ -199,13 +192,9 @@ Word16 find_uv_fx( /* o : coding type */
* Average voicing (normalized correlation)
*-----------------------------------------------------------------*/
- /*mean_ee = 1.0f/3.0f * (st->ee_old + ee[0] + ee[1]); */ /* coefficients take into account the position of the window */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ /*mean_ee = 1.0f/3.0f * (st->ee_old + ee[0] + ee[1]); */ /* coefficients take into account the position of the window */
mean_ee = L_add_sat( L_add_sat( st_fx->ee_old_fx, ee[0] ), ee[1] ); /* Q6 */
-#else
- mean_ee = L_add_o( L_add_o( st_fx->ee_old_fx, ee[0], &Overflow ), ee[1], &Overflow ); /* Q6 */
-#endif
- mean_ee = Mult_32_16( mean_ee, 10923 /* 1/3 in Q15 */ ); /*Q6*/
+ mean_ee = Mult_32_16( mean_ee, 10923 /* 1/3 in Q15 */ ); /*Q6*/
/* mean_voi3 = 1.0f/3.0f * (voicing[0] + voicing[1] + voicing[2]);*/
Ltmp0 = L_mult( st_fx->voicing_fx[0], 10923 /* 1/3 in Q15 */ ); /* Q31 */
@@ -230,11 +219,7 @@ Word16 find_uv_fx( /* o : coding type */
{
dE2_th = 21 << 10;
move32();
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( GE_16( add_sat( mean_voi3, corr_shift ), 22282 /* 0.68 in Q15 */ ) ) /*( mean_voi3 + corr_shift ) >= 0.68f*/
-#else
- if ( GE_16( add_o( mean_voi3, corr_shift, &Overflow ), 22282 /* 0.68 in Q15 */ ) ) /*( mean_voi3 + corr_shift ) >= 0.68f*/
-#endif
{
nb_cond = 0;
move16();
@@ -313,11 +298,7 @@ Word16 find_uv_fx( /* o : coding type */
test();
if ( ( EQ_16( st_fx->last_coder_type_raw, UNVOICED ) ) || /* previous frame was unvoiced */
( ( LT_32( ee[0], ee0_th ) ) && ( GT_32( hp_E[0], L_shl( E_MIN_FX, Q_new ) ) ) && /* energy is concentrated in high frequencies provided that some energy is present in HF */
-#ifdef ISSUE_1867_replace_overflow_libenc
- ( LT_16( add_sat( st_fx->voicing_fx[0], corr_shift ), voi_th ) ) ) ) /* normalized correlation is low */
-#else
- ( LT_16( add_o( st_fx->voicing_fx[0], corr_shift, &Overflow ), voi_th ) ) ) ) /* normalized correlation is low */
-#endif
+ ( LT_16( add_sat( st_fx->voicing_fx[0], corr_shift ), voi_th ) ) ) ) /* normalized correlation is low */
{
tmp_offset_flag = 0;
move16();
@@ -393,21 +374,16 @@ Word16 find_uv_fx( /* o : coding type */
test();
test();
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( ( ( LT_16( add_sat( mean_voi3, corr_shift ), add( 22282 /* 0.68 in Q15 */, mean_voi3_offset ) ) ) && /* normalized correlation low */
( LT_16( add_sat( st_fx->voicing_fx[2], corr_shift ), 25887 /* 0.79 in Q15 */ ) ) && /* normalized correlation low on look-ahead - onset detection */
-#else
- if ( ( ( LT_16( add_o( mean_voi3, corr_shift, &Overflow ), add( 22282 /* 0.68 in Q15 */, mean_voi3_offset ) ) ) && /* normalized correlation low */
- ( LT_16( add_o( st_fx->voicing_fx[2], corr_shift, &Overflow ), 25887 /* 0.79 in Q15 */ ) ) && /* normalized correlation low on look-ahead - onset detection */
-#endif
- ( LT_32( ee[0], 640 /* 10.0f in Q6 */ ) ) && ( GT_32( hp_E[0], E_min_th ) ) && /* energy concentrated in high frequencies provided that some energy is present in HF... */
- ( LT_32( ee[1], ee1_th ) ) && ( GT_32( hp_E[1], E_min_th ) ) && /* ... biased towards look-ahead to detect onsets */
- ( tmp_offset_flag == 0 ) && /* Take care of voiced offsets */
- /*( st_fx->music_hysteresis_fx == 0 ) &&*/ /* ... and in segment after AUDIO frames */
- ( LE_32( dE1, 237568 /* 29.0f in Q13 */ ) ) && /* Avoid on sharp energy spikes */
- ( LE_32( st_fx->old_dE1_fx, 237568 /* 29.0f in Q13 */ ) ) && /* + one frame hysteresis */
- ( st_fx->spike_hyst < 0 ) ) || /* Avoid after sharp energy spikes followed by decay (e.g. castanets) */
- flag_low_relE ) /* low relative frame energy (only for SC-VBR) */
+ ( LT_32( ee[0], 640 /* 10.0f in Q6 */ ) ) && ( GT_32( hp_E[0], E_min_th ) ) && /* energy concentrated in high frequencies provided that some energy is present in HF... */
+ ( LT_32( ee[1], ee1_th ) ) && ( GT_32( hp_E[1], E_min_th ) ) && /* ... biased towards look-ahead to detect onsets */
+ ( tmp_offset_flag == 0 ) && /* Take care of voiced offsets */
+ /*( st_fx->music_hysteresis_fx == 0 ) &&*/ /* ... and in segment after AUDIO frames */
+ ( LE_32( dE1, 237568 /* 29.0f in Q13 */ ) ) && /* Avoid on sharp energy spikes */
+ ( LE_32( st_fx->old_dE1_fx, 237568 /* 29.0f in Q13 */ ) ) && /* + one frame hysteresis */
+ ( st_fx->spike_hyst < 0 ) ) || /* Avoid after sharp energy spikes followed by decay (e.g. castanets) */
+ flag_low_relE ) /* low relative frame energy (only for SC-VBR) */
{
coder_type = UNVOICED;
move16();
@@ -427,20 +403,16 @@ Word16 find_uv_fx( /* o : coding type */
test();
test();
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( ( ( LT_16( add_sat( mean_voi3, corr_shift ), add( 22774 /* 0.695f in Q15 */, mean_voi3_offset ) ) ) && /* normalized correlation low */
-#else
- if ( ( ( LT_16( add_o( mean_voi3, corr_shift, &Overflow ), add( 22774 /* 0.695f in Q15 */, mean_voi3_offset ) ) ) && /* normalized correlation low */
-#endif
- ( LT_16( add_sat( st_fx->voicing_fx[2], corr_shift ), 25887 /* 0.8 in Q15 */ ) ) && /* normalized correlation low on look-ahead - onset detection */
- ( LT_32( ee[0], 397 /* 6.2f in Q6 */ ) ) && ( GT_32( hp_E[0], E_min_th ) ) && /* energy concentrated in high frequencies provided that some energy is present in HF... */
- ( LT_32( ee[1], 397 /* 6.2f in Q6 */ ) ) && ( GT_32( hp_E[1], E_min_th ) ) && /* ... biased towards look-ahead to detect onsets */
- ( tmp_offset_flag == 0 ) && /* Take care of voiced offsets */
- /*( st_fx->music_hysteresis_fx == 0 ) && */ /* ... and in segment after AUDIO frames */
- ( LE_32( dE1, 245760 /* 30.0f in Q13 */ ) ) && /* Avoid on sharp energy spikes */
- ( LE_32( st_fx->old_dE1_fx, 245760 /* 30.0f in Q13 */ ) ) && /* + one frame hysteresis */
- ( st_fx->spike_hyst < 0 ) ) /* Avoid after sharp energy spikes followed by decay (e.g. castanets) */
- || ( flag_low_relE && ( LE_32( st_fx->old_dE1_fx, 245760 /* 30.0f in Q13 */ ) ) ) ) /* low relative frame energy (only for SC-VBR) */
+ ( LT_16( add_sat( st_fx->voicing_fx[2], corr_shift ), 25887 /* 0.8 in Q15 */ ) ) && /* normalized correlation low on look-ahead - onset detection */
+ ( LT_32( ee[0], 397 /* 6.2f in Q6 */ ) ) && ( GT_32( hp_E[0], E_min_th ) ) && /* energy concentrated in high frequencies provided that some energy is present in HF... */
+ ( LT_32( ee[1], 397 /* 6.2f in Q6 */ ) ) && ( GT_32( hp_E[1], E_min_th ) ) && /* ... biased towards look-ahead to detect onsets */
+ ( tmp_offset_flag == 0 ) && /* Take care of voiced offsets */
+ /*( st_fx->music_hysteresis_fx == 0 ) && */ /* ... and in segment after AUDIO frames */
+ ( LE_32( dE1, 245760 /* 30.0f in Q13 */ ) ) && /* Avoid on sharp energy spikes */
+ ( LE_32( st_fx->old_dE1_fx, 245760 /* 30.0f in Q13 */ ) ) && /* + one frame hysteresis */
+ ( st_fx->spike_hyst < 0 ) ) /* Avoid after sharp energy spikes followed by decay (e.g. castanets) */
+ || ( flag_low_relE && ( LE_32( st_fx->old_dE1_fx, 245760 /* 30.0f in Q13 */ ) ) ) ) /* low relative frame energy (only for SC-VBR) */
{
coder_type = UNVOICED;
move16();
@@ -633,12 +605,6 @@ Word16 find_uv_ivas_fx( /* o : coding typ
Word16 ee0_th, ee1_th, voi_th, nb_cond, flag_low_relE;
NOISE_EST_HANDLE hNoiseEst = st_fx->hNoiseEst;
SC_VBR_ENC_HANDLE hSC_VBR = st_fx->hSC_VBR;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
Word16 Last_Resort;
Word16 vadnoise;
@@ -738,13 +704,9 @@ Word16 find_uv_ivas_fx( /* o : coding typ
* Average voicing (normalized correlation)
*-----------------------------------------------------------------*/
- /*mean_ee = 1.0f/3.0f * (st->ee_old + ee[0] + ee[1]); */ /* coefficients take into account the position of the window */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ /*mean_ee = 1.0f/3.0f * (st->ee_old + ee[0] + ee[1]); */ /* coefficients take into account the position of the window */
mean_ee = L_add_sat( L_add_sat( st_fx->ee_old_fx, ee[0] ), ee[1] ); /* Q6 */
-#else
- mean_ee = L_add_o( L_add_o( st_fx->ee_old_fx, ee[0], &Overflow ), ee[1], &Overflow ); /* Q6 */
-#endif
- mean_ee = Mult_32_16( mean_ee, 10923 ); /*Q6*/
+ mean_ee = Mult_32_16( mean_ee, 10923 ); /*Q6*/
/* mean_voi3 = 1.0f/3.0f * (voicing[0] + voicing[1] + voicing[2]);*/
Ltmp0 = L_mult( st_fx->voicing_fx[0], 10923 /* 1/3 in Q15 */ ); /* Q31 */
@@ -769,11 +731,7 @@ Word16 find_uv_ivas_fx( /* o : coding typ
{
dE2_th = 21 << 10;
move32();
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( GE_16( add_sat( mean_voi3, corr_shift ), 22282 ) ) /*( mean_voi3 + corr_shift ) >= 0.68f*/
-#else
- if ( GE_16( add_o( mean_voi3, corr_shift, &Overflow ), 22282 ) ) /*( mean_voi3 + corr_shift ) >= 0.68f*/
-#endif
{
nb_cond = 0;
move16();
@@ -852,16 +810,10 @@ Word16 find_uv_ivas_fx( /* o : coding typ
test();
test();
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
IF( ( EQ_16( st_fx->last_coder_type_raw, UNVOICED ) ) || /* previous frame was unvoiced */
( ( LT_32( ee[0], ee0_th ) ) && ( GT_32( hp_E[0], E_min_th ) ) && /* energy is concentrated in high frequencies provided that some energy is present in HF */
( LT_16( add_sat( st_fx->voicing_fx[0], corr_shift ), voi_th ) ) ) )
/* normalized correlation is low */
-#else
- IF( ( EQ_16( st_fx->last_coder_type_raw, UNVOICED ) ) || /* previous frame was unvoiced */
- ( ( LT_32( ee[0], ee0_th ) ) && ( GT_32( hp_E[0], E_min_th ) ) && /* energy is concentrated in high frequencies provided that some energy is present in HF */
- ( LT_16( add_o( st_fx->voicing_fx[0], corr_shift, &Overflow ), voi_th ) ) ) ) /* normalized correlation is low */
-#endif
{
tmp_offset_flag = 0;
move16();
@@ -937,7 +889,6 @@ Word16 find_uv_ivas_fx( /* o : coding typ
test();
test();
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
IF( ( ( LT_16( add_sat( mean_voi3, corr_shift ), add( 22282 /* 0.68 in Q15 */, mean_voi3_offset ) ) ) && /* normalized correlation low */
( LT_16( add_sat( st_fx->voicing_fx[2], corr_shift ), 25887 /* 0.79 in Q15 */ ) ) && /* normalized correlation low on look-ahead - onset detection */
( LT_32( ee[0], 640 /* 10.0f in Q6 */ ) ) && ( GT_32( hp_E[0], E_min_th ) ) && /* energy concentrated in high frequencies provided that some energy is present in HF... */
@@ -948,18 +899,6 @@ Word16 find_uv_ivas_fx( /* o : coding typ
( LE_32( st_fx->old_dE1_fx, 237568 /* 29.0f in Q13 */ ) ) && /* + one frame hysteresis */
( st_fx->spike_hyst < 0 ) ) || /* Avoid after sharp energy spikes followed by decay (e.g. castanets) */
flag_low_relE )
-#else
- IF( ( ( LT_16( add_o( mean_voi3, corr_shift, &Overflow ), add( 22282 /* 0.68 in Q15 */, mean_voi3_offset ) ) ) && /* normalized correlation low */
- ( LT_16( add_o( st_fx->voicing_fx[2], corr_shift, &Overflow ), 25887 /* 0.79 in Q15 */ ) ) && /* normalized correlation low on look-ahead - onset detection */
- ( LT_32( ee[0], 640 /* 10.0f in Q6 */ ) ) && ( GT_32( hp_E[0], E_min_th ) ) && /* energy concentrated in high frequencies provided that some energy is present in HF... */
- ( LT_32( ee[1], ee1_th ) ) && ( GT_32( hp_E[1], E_min_th ) ) && /* ... biased towards look-ahead to detect onsets */
- ( tmp_offset_flag == 0 ) && /* Take care of voiced offsets */
- /*( st_fx->music_hysteresis_fx == 0 ) &&*/ /* ... and in segment after AUDIO frames */
- ( LE_32( dE1, 237568 /* 29.0f in Q13 */ ) ) && /* Avoid on sharp energy spikes */
- ( LE_32( st_fx->old_dE1_fx, 237568 /* 29.0f in Q13 */ ) ) && /* + one frame hysteresis */
- ( st_fx->spike_hyst < 0 ) ) || /* Avoid after sharp energy spikes followed by decay (e.g. castanets) */
- flag_low_relE )
-#endif
/* low relative frame energy (only for SC-VBR) */
{
coder_type = UNVOICED;
@@ -977,20 +916,16 @@ Word16 find_uv_ivas_fx( /* o : coding typ
test();
test();
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( ( ( LT_16( add_sat( mean_voi3, corr_shift ), add( 22774 /* 0.695f in Q15 */, mean_voi3_offset ) ) ) && /* normalized correlation low */
-#else
- if ( ( ( LT_16( add_o( mean_voi3, corr_shift, &Overflow ), add( 22774 /* 0.695f in Q15 */, mean_voi3_offset ) ) ) && /* normalized correlation low */
-#endif
- /*( LT_16( add_o( st_fx->voicing_fx[2], corr_shift, &Overflow ), 25887 ) ) && */ /* normalized correlation low on look-ahead - onset detection */
- ( LT_32( ee[0], 397 /* 6.2f in Q6 */ ) ) && ( GT_32( hp_E[0], E_min_th ) ) && /* energy concentrated in high frequencies provided that some energy is present in HF... */
- ( LT_32( ee[1], 397 /* 6.2f in Q16 */ ) ) && ( GT_32( hp_E[1], E_min_th ) ) && /* ... biased towards look-ahead to detect onsets */
- ( tmp_offset_flag == 0 ) && /* Take care of voiced offsets */
- /*( st_fx->music_hysteresis_fx == 0 ) && */ /* ... and in segment after AUDIO frames */
- ( LE_32( dE1, 245760 /* 30.0f in Q13 */ ) ) && /* Avoid on sharp energy spikes */
- ( LE_32( st_fx->old_dE1_fx, 245760 /* 30.0f in Q13 */ ) ) && /* + one frame hysteresis */
- ( st_fx->spike_hyst < 0 ) ) /* Avoid after sharp energy spikes followed by decay (e.g. castanets) */
- || ( flag_low_relE && ( LE_32( st_fx->old_dE1_fx, 245760 /* 30.0f in Q13 */ ) ) ) ) /* low relative frame energy (only for SC-VBR) */
+ /*( LT_16( add_o( st_fx->voicing_fx[2], corr_shift, &Overflow ), 25887 ) ) && */ /* normalized correlation low on look-ahead - onset detection */
+ ( LT_32( ee[0], 397 /* 6.2f in Q6 */ ) ) && ( GT_32( hp_E[0], E_min_th ) ) && /* energy concentrated in high frequencies provided that some energy is present in HF... */
+ ( LT_32( ee[1], 397 /* 6.2f in Q16 */ ) ) && ( GT_32( hp_E[1], E_min_th ) ) && /* ... biased towards look-ahead to detect onsets */
+ ( tmp_offset_flag == 0 ) && /* Take care of voiced offsets */
+ /*( st_fx->music_hysteresis_fx == 0 ) && */ /* ... and in segment after AUDIO frames */
+ ( LE_32( dE1, 245760 /* 30.0f in Q13 */ ) ) && /* Avoid on sharp energy spikes */
+ ( LE_32( st_fx->old_dE1_fx, 245760 /* 30.0f in Q13 */ ) ) && /* + one frame hysteresis */
+ ( st_fx->spike_hyst < 0 ) ) /* Avoid after sharp energy spikes followed by decay (e.g. castanets) */
+ || ( flag_low_relE && ( LE_32( st_fx->old_dE1_fx, 245760 /* 30.0f in Q13 */ ) ) ) ) /* low relative frame energy (only for SC-VBR) */
{
coder_type = UNVOICED;
move16();
diff --git a/lib_enc/frame_spec_dif_cor_rate_fx.c b/lib_enc/frame_spec_dif_cor_rate_fx.c
index 3e2eb40155f5e006eda820818db061688d9d2299..9678acdbfee4fb3d927c352c00273b9f5914e39c 100644
--- a/lib_enc/frame_spec_dif_cor_rate_fx.c
+++ b/lib_enc/frame_spec_dif_cor_rate_fx.c
@@ -35,7 +35,7 @@ void frame_spec_dif_cor_rate_fx(
Word16 scalefactor, spec_dif_cor_rate;
Word32 m, dx, dy;
Word16 *pre_spec_low_dif = hVAD_CLDFB->pre_spec_low_dif;
- const Word32 FIX_cost1 = 2147484 /* 0.001f Q31 */;
+ const Word32 FIX_cost1 = INV_1000_Q31;
move16();
move32();
diff --git a/lib_enc/gain_enc_fx.c b/lib_enc/gain_enc_fx.c
index 1d3cecfc58addd80dfa0b746ed2f5bbe96bc542f..e84d09e3cc963572063bfb0d36b435c9a57e6c29 100644
--- a/lib_enc/gain_enc_fx.c
+++ b/lib_enc/gain_enc_fx.c
@@ -66,12 +66,6 @@ void Es_pred_enc_fx(
Word16 s0, s1, ener_dB, mean_ener_code16;
const Word16 *qua_table;
Word32 ener_fx, Lmean_ener_code, Ltmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
Lmean_ener_code = L_deposit_l( 0 );
Q_res = sub( shl( Q_new, 1 ), 3 );
@@ -99,11 +93,7 @@ void Es_pred_enc_fx(
FOR( i = 1; i < L_SUBFR; i++ )
{
tmp16 = mult_r( res[i_subfr + i], 8192 /* 1 in Q13 */ ); /* remove 2bits Q_new - 2*/
-#ifdef ISSUE_1867_replace_overflow_libenc
ener_fx = L_mac_sat( ener_fx, tmp16, tmp16 );
-#else
- ener_fx = L_mac_o( ener_fx, tmp16, tmp16, &Overflow );
-#endif
}
/* ener = 10 * (float)log10(ener / (float)L_SUBFR) */
@@ -185,11 +175,7 @@ void Es_pred_enc_fx(
FOR( i = 1; i < size; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp16_2 = abs_s( sub_sat( mean_ener_code16, qua_table[i] ) );
-#else
- tmp16_2 = abs_s( sub_o( mean_ener_code16, qua_table[i], &Overflow ) );
-#endif
IF( LT_16( tmp16_2, tmp16 ) )
{
tmp16 = tmp16_2;
@@ -245,12 +231,6 @@ void gain_enc_mless_fx(
Word16 exp1, exp2;
Word16 exp_num, exp_den, exp_div, frac_den;
Word32 L_frac_num, L_frac_den, L_div;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*-----------------------------------------------------------------*
* calculate the rest of the correlation coefficients
@@ -413,11 +393,7 @@ void gain_enc_mless_fx(
L_div = Mult_32_16( L_frac_num, tmp ); /*Q(30-exp)*/
exp_div = sub( exp_num, exp_den );
-#ifdef ISSUE_1867_replace_overflow_libenc
*gain_pit = round_fx_sat( L_shl_sat( L_div, add( exp, exp_div ) ) ); /*Q14*/
-#else
- *gain_pit = round_fx_o( L_shl_o( L_div, add( exp, exp_div ), &Overflow ), &Overflow ); /*Q14*/
-#endif
L_tmp1 = L_shr( L_mult( coeff[1], coeff[4] ), 2 ); /*Q31*/
exp1 = add( exp_coeff[1], exp_coeff[4] );
@@ -442,11 +418,7 @@ void gain_enc_mless_fx(
L_div = Mult_32_16( L_frac_num, tmp ); /*Q(30-exp)*/
exp_div = sub( exp_num, exp_den );
-#ifdef ISSUE_1867_replace_overflow_libenc
*gain_code = L_shl_sat( L_div, sub( add( exp, exp_div ), 14 ) );
-#else
- *gain_code = L_shl_o( L_div, sub( add( exp, exp_div ), 14 ), &Overflow );
-#endif
move32(); /*Q16*/
*gain_pit = s_max( G_PITCH_MIN_TC192_Q14, s_min( *gain_pit, G_PITCH_MAX_TC192_Q14 ) );
@@ -475,12 +447,8 @@ void gain_enc_mless_fx(
index = gain_quant_fx( gain_code, &gain_code16, LG10_G_CODE_MIN_TC192_Q14, LG10_G_CODE_MAX_TC192_Q13, nBits2, &expg );
push_indice( hBstr, IND_GAIN_CODE, index, nBits2 );
- L_tmp = L_mult( gain_code16, gcode0 ); /*Q0*Q0 -> Q1*/
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = L_mult( gain_code16, gcode0 ); /*Q0*Q0 -> Q1*/
*gain_code = L_shl_sat( L_tmp, add( add( expg, exp_gcode0 ), 15 ) ); /*Q16*/
-#else
- *gain_code = L_shl_o( L_tmp, add( add( expg, exp_gcode0 ), 15 ), &Overflow ); /*Q16*/
-#endif
}
ELSE
{
@@ -559,6 +527,8 @@ void gain_enc_mless_fx(
return;
}
+
+
/*---------------------------------------------------------------------*
* gain_enc_SQ()
*
@@ -598,12 +568,6 @@ void gain_enc_SQ_fx(
Word16 exp1, exp2;
Word16 exp_num, exp_den, exp_div, frac_den;
Word32 L_frac_num, L_frac_den, L_div;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*-----------------------------------------------------------------*
* calculate the rest of the correlation coefficients
@@ -707,11 +671,7 @@ void gain_enc_SQ_fx(
L_tmp1 = L_mult( coeff[0], coeff[2] ); /*Q31*/
exp1 = add( exp_coeff[0], exp_coeff[2] );
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp2 = L_mult_sat( coeff[4], coeff[4] ); /*Q31*/
-#else
- L_tmp2 = L_mult_o( coeff[4], coeff[4], &Overflow ); /*Q31*/
-#endif
exp2 = add( exp_coeff[4], exp_coeff[4] );
IF( GT_16( exp1, exp2 ) )
@@ -753,33 +713,17 @@ void gain_enc_SQ_fx(
exp_num = exp2;
move16();
}
-#ifdef ISSUE_1867_replace_overflow_libenc
L_frac_num = L_sub_sat( L_tmp2, L_tmp1 ); /*Q31*/
-#else
- L_frac_num = L_sub_o( L_tmp2, L_tmp1, &Overflow ); /*Q31*/
-#endif
L_div = Mult_32_16( L_frac_num, tmp ); /*Q(30-exp)*/
exp_div = sub( exp_num, exp_den );
-#ifdef ISSUE_1867_replace_overflow_libenc
*gain_pit = round_fx_sat( L_shl_sat( L_div, add( exp, exp_div ) ) ); /*Q14*/
-#else
- *gain_pit = round_fx_o( L_shl_o( L_div, add( exp, exp_div ), &Overflow ), &Overflow ); /*Q14*/
-#endif
-#ifdef FIX_1978_SAT_MISSING_IN_GAIN_ENC
L_tmp1 = L_mult_sat( coeff[1], coeff[4] ); /*Q31*/
-#else
- L_tmp1 = L_mult( coeff[1], coeff[4] ); /*Q31*/
-#endif
exp1 = add( exp_coeff[1], exp_coeff[4] );
-#ifdef FIX_1978_SAT_MISSING_IN_GAIN_ENC
L_tmp2 = L_mult_sat( coeff[0], coeff[3] ); /*Q31*/
-#else
- L_tmp2 = L_mult( coeff[0], coeff[3] ); /*Q31*/
-#endif
exp2 = add( exp_coeff[0], exp_coeff[3] );
IF( GT_16( exp1, exp2 ) )
@@ -794,11 +738,7 @@ void gain_enc_SQ_fx(
exp_num = exp2;
move16();
}
-#ifdef ISSUE_1867_replace_overflow_libenc
L_frac_num = L_sub_sat( L_tmp2, L_tmp1 ); /*Q31*/
-#else
- L_frac_num = L_sub_o( L_tmp2, L_tmp1, &Overflow ); /*Q31*/
-#endif
L_div = Mult_32_16( L_frac_num, tmp ); /*Q(30-exp)*/
exp_div = sub( exp_num, exp_den );
@@ -869,28 +809,27 @@ void gain_enc_SQ_fx(
return;
}
+
+
/*-------------------------------------------------------------------*
* gain_enc_gaus()
*
* Quantization of gain for Gaussian codebook
*-------------------------------------------------------------------*/
-Word16 gain_enc_gaus_fx( /* o : Return index of quantization */
- Word32 *gain, /* i/o: Code gain to quantize Q16*/
- const Word16 bits, /* i : number of bits to quantize Q0*/
- const Word16 lowBound, /* i : lower bound of quantizer (dB) Q8*/
- const Word16 stepSize, /* i : Step size choice Q14*/
- const Word16 inv_stepSize /* i : Step size choice Q15*/
+
+/* o : Return index of quantization */
+Word16 gain_enc_gaus_fx(
+ Word32 *gain, /* i/o: Code gain to quantize Q16*/
+ const Word16 bits, /* i : number of bits to quantize Q0*/
+ const Word16 lowBound, /* i : lower bound of quantizer (dB) Q8*/
+ const Word16 stepSize, /* i : Step size choice Q14*/
+ const Word16 inv_stepSize /* i : Step size choice Q15*/
)
{
Word16 index, exp_gain, frac_gain, wtmp;
Word16 enr_q, wenr;
Word32 Ltmp, enr;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
/*enr = 20.0 * log10(*gain + 0.001) codebook gain in dB */
exp_gain = norm_l( *gain );
frac_gain = Log2_norm_lc( L_shl( *gain, exp_gain ) );
@@ -921,15 +860,13 @@ Word16 gain_enc_gaus_fx( /* o : Return index of quant
Ltmp = Pow2( 14, frac_gain ); /* Put 14 as exponent */
exp_gain = sub( exp_gain, 14 ); /* Retreive exponent of wtmp */
-#ifdef ISSUE_1867_replace_overflow_libenc
*gain = L_shl_sat( Ltmp, add( 16, exp_gain ) );
-#else
- *gain = L_shl_o( Ltmp, add( 16, exp_gain ), &Overflow );
-#endif
move32(); /*Q16*/
return index;
}
+
+
/*-----------------------------------------------------------------*
* gain_enc_tc()
*
@@ -939,6 +876,7 @@ Word16 gain_enc_gaus_fx( /* o : Return index of quant
* - gain_pit = 0
* - gain_code - scalar quantization (no prediciton history used)
*-----------------------------------------------------------------*/
+
void gain_enc_tc_fx(
BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
const Word16 gains_mode[], /* i : gain bits Q0*/
@@ -967,6 +905,7 @@ void gain_enc_tc_fx(
/*----------------------------------------------------------------*
* get number of bits for gain quantization
*----------------------------------------------------------------*/
+
nBits = gains_mode[shr( i_subfr, 6 )];
/*----------------------------------------------------------------*
@@ -992,6 +931,7 @@ void gain_enc_tc_fx(
/*----------------------------------------------------------------*
* compute gain = xy/yy
*----------------------------------------------------------------*/
+
g_code_fx = div_s( num, den );
i = sub( exp_num, exp_den ); /* Gain_trans in Q7 */
@@ -1081,9 +1021,11 @@ void gain_enc_tc_fx(
BREAK;
}
}
+
/*----------------------------------------------------------------*
* 3-bit -> 2-bit encoding
*----------------------------------------------------------------*/
+
IF( EQ_16( nBits, 2 ) )
{
/* 2-bit -> 3-bit decoding */
@@ -1111,6 +1053,7 @@ void gain_enc_tc_fx(
/*-----------------------------------------------------------------*
* decode normalized codebook gain
*-----------------------------------------------------------------*/
+
/**norm_gain_code = *gain_code / *gain_inov;*/
expg = sub( norm_s( *gain_inov_fx ), 1 );
expg = s_max( expg, 0 );
@@ -1118,13 +1061,17 @@ void gain_enc_tc_fx(
tmp_fx = div_s( shr( 8192, expg ), *gain_inov_fx );
*norm_gain_code_fx = L_shr( Mult_32_16( *gain_code_fx, tmp_fx ), sub( 1, expg ) ); // Q16
move32();
+
return;
}
+
+
/*-----------------------------------------------------------------*
* Find_Opt_gainQ_fx()
*
* Find the best quantizer
*-----------------------------------------------------------------*/
+
static Word16 Find_Opt_gainQ_fx(
Word16 *coeff, /* exp(exp_coeff) */
Word16 *exp_coeff,
@@ -1144,13 +1091,6 @@ static Word16 Find_Opt_gainQ_fx(
Word16 exp_max[5];
Word16 exp_code, e_max;
Word32 L_tmp, L_tmp1;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
/*----------------------------------------------------------------*
* Find the best quantizer
@@ -1244,11 +1184,7 @@ static Word16 Find_Opt_gainQ_fx(
L_tmp = L_mac( L_tmp, coeff[3], g_code ); /* 15 - coeff_exp + 13 - 1 */
L_tmp = L_mac( L_tmp, coeff[4], g_pit_cod ); /* 15 - coeff_exp + 13 - 1 */
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp1 = L_sub_sat( L_tmp, dist_min );
-#else
- L_tmp1 = L_sub_o( L_tmp, dist_min, &Overflow );
-#endif
if ( L_tmp1 < 0 )
{
index = i;
@@ -1269,8 +1205,11 @@ static Word16 Find_Opt_gainQ_fx(
L_tmp = L_shl_sat( L_tmp, add( exp_gcode0, 6 ) ); /* Q10 -> Q16 */
*gain_code = L_tmp; /* gain of code in Q16 */
move16();
+
return index;
}
+
+
/*---------------------------------------------------------------------*
* gain_enc_lbr()
*
@@ -1302,12 +1241,10 @@ void gain_enc_lbr_fx(
Word32 gc_mem[], /* i/o: gain_code from previous subframes Q16*/
Word16 gp_mem[], /* i/o: gain_pitch from previous subframes Q14*/
const Word16 clip_gain, /* i : gain pitch clipping flag (1 = clipping) Q0*/
- const Word16 L_subfr /* i : subframe length Q0*/
- ,
- const Word16 element_mode /* i : mode element Q0*/
+ const Word16 L_subfr, /* i : subframe length Q0*/
+ const Word16 element_mode /* i : mode element Q0*/
)
{
-
Word16 index = 0, size, nBits, n_pred, ctype;
const Word16 *b, *cdbk = 0;
Word16 gcode0, aux[10];
@@ -1324,6 +1261,7 @@ void gain_enc_lbr_fx(
L_subfr_sf = 7;
move16();
}
+
/*-----------------------------------------------------------------*
* calculate the rest of the correlation coefficients
* c2 = , c3 = -2, c4 = 2, c5* =
@@ -1373,7 +1311,6 @@ void gain_enc_lbr_fx(
*gain_inov = extract_h( L_shl_sat( L_inov, sub( exp_inov, 3 ) ) ); /* gain_inov in Q12 */
move16();
-
/*-----------------------------------------------------------------*
* select the codebook, size and number of bits
* set the gains searching range
@@ -1389,6 +1326,7 @@ void gain_enc_lbr_fx(
* calculate prediction of gcode
* search for the best codeword
*-----------------------------------------------------------------*/
+
test();
IF( i_subfr == 0 )
{
@@ -1698,7 +1636,6 @@ void gain_enc_lbr_fx(
aux[3] = round_fx( L_shl( L_tmp1, 12 ) ); /* Q12 */
move16();
-
/*aux[4] = (float)log10(gc_mem[2]);
= log2(gc_mem[2])*log10(2);*/
exp = norm_l( gc_mem[2] );
@@ -1741,9 +1678,11 @@ void gain_enc_lbr_fx(
{
push_indice( hBstr, IND_GAIN, index, nBits );
}
+
return;
}
+
/*-------------------------------------------------------------------*
* gain_enc_amr_wb()
*
@@ -1755,7 +1694,6 @@ void gain_enc_lbr_fx(
* mean-squared weighted error criterion is used in the quantizer search.
*-------------------------------------------------------------------*/
-
void gain_enc_amr_wb_fx(
BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
const Word16 *xn, /* i : target vector Q_xn*/
@@ -1781,17 +1719,12 @@ void gain_enc_amr_wb_fx(
Word16 exp_max[5], tmp, nBits;
Word32 L_tmp, dist_min, L_inov, L_tmp1;
const Word16 *t_qua_gain, *p;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*----------------------------------------------------------------*
* Find the initial quantization pitch index
* Set gains search range
*----------------------------------------------------------------*/
+
IF( GE_32( core_brate, ACELP_12k65 ) )
{
t_qua_gain = t_qua_gain7b_fx; // Q14
@@ -1837,6 +1770,7 @@ void gain_enc_amr_wb_fx(
}
nBits = 6;
}
+
/*----------------------------------------------------------------*
* Compute coefficients needed for the quantization.
*
@@ -1849,6 +1783,7 @@ void gain_enc_amr_wb_fx(
* Product and have been computed in Adpt_enr() and
* are in vector g_coeff[].
*----------------------------------------------------------------*/
+
coeff[0] = g_coeff[0];
move16();
exp_coeff[0] = g_coeff[1];
@@ -1882,6 +1817,7 @@ void gain_enc_amr_wb_fx(
* L_tmp = MEAN_ENER - 10log10(energy of code/ L_subfr)
* = MEAN_ENER - 3.0103*log2(energy of code/ L_subfr)
*----------------------------------------------------------------*/
+
L_tmp = Dot_product12( code, code, L_SUBFR, &exp_code );
L_inov = L_add( L_tmp, 0 );
/* exp_code: -18 (code in Q9), -6 (/L_subfr), -31 (L_tmp Q31->Q0) */
@@ -1901,6 +1837,7 @@ void gain_enc_amr_wb_fx(
/*----------------------------------------------------------------*
* predicted codebook gain
*----------------------------------------------------------------*/
+
L_tmp = L_shl( L_tmp, 10 ); /* From Q14 to Q24 */
L_tmp = L_mac0( L_tmp, pred_gain_fx[0], past_qua_en[0] ); /* Q14*Q10 -> Q24 */
L_tmp = L_mac0( L_tmp, pred_gain_fx[1], past_qua_en[1] ); /* Q14*Q10 -> Q24 */
@@ -2018,11 +1955,7 @@ void gain_enc_amr_wb_fx(
L_tmp = L_mac( L_tmp, coeff[3], g_code ); /* 15 - coeff_exp + 13 - 1 */
L_tmp = L_mac( L_tmp, coeff[4], g_pit_cod ); /* 15 - coeff_exp + 13 - 1 */
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp1 = L_sub_sat( L_tmp, dist_min );
-#else
- L_tmp1 = L_sub_o( L_tmp, dist_min, &Overflow );
-#endif
/* splitting the if cost half the complexity of using IF macro */
if ( L_tmp1 < 0 )
{
@@ -2044,14 +1977,9 @@ void gain_enc_amr_wb_fx(
g_code = *p++; /* selected code gain in Q11 */
move16();
- L_tmp = L_mult( g_code, gcode0 ); /* Q11*Q0 -> Q12 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = L_mult( g_code, gcode0 ); /* Q11*Q0 -> Q12 */
L_tmp = L_shl_sat( L_tmp, add( exp_gcode0, 4 ) ); /* Q12 -> Q16 */
-#else
- L_tmp = L_shl_o( L_tmp, add( exp_gcode0, 4 ), &Overflow ); /* Q12 -> Q16 */
-#endif
-
- *gain_code = L_tmp; /* gain of code in Q16 */
+ *gain_code = L_tmp; /* gain of code in Q16 */
move16();
/*---------------------------------------------------*
diff --git a/lib_enc/gaus_enc_fx.c b/lib_enc/gaus_enc_fx.c
index 8b822b7042325b417568ed4fd4b5a575af82d532..fb93a67438c063fbda6678e1e59a2dd192073c2e 100644
--- a/lib_enc/gaus_enc_fx.c
+++ b/lib_enc/gaus_enc_fx.c
@@ -63,12 +63,6 @@ Word16 gaus_encode_fx(
Word32 Ltmp;
Word16 dn[L_SUBFR], exp_code, gcode; /* Correlation between xn and h1 */
Word16 exp, tmp, tmp_idx;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*----------------------------------------------------------------*
* Encode gaussian excitation
@@ -103,11 +97,9 @@ Word16 gaus_encode_fx(
/*----------------------------------------------------------------*
* Total excitation for Unvoiced coders
*----------------------------------------------------------------*/
-#ifdef ISSUE_1867_replace_overflow_libenc
+
gcode = round_fx_sat( L_shl_sat( *gain_code, Q_new ) ); /* scaled gain_code with Qnew */
-#else
- gcode = round_fx_o( L_shl_o( *gain_code, Q_new, &Overflow ), &Overflow ); /* scaled gain_code with Qnew */
-#endif
+
FOR( i = 0; i < L_SUBFR; i++ )
{
exc[i + i_subfr] = round_fx( L_shl( L_mult( gcode, code[i] ), 15 - 9 ) ); /* Q_new */
@@ -200,12 +192,6 @@ void gauss2v_fx(
Word16 gxx, gcc, index_delta, delta, m_sign, inv_delta;
Word16 hg[190], Gaus_dico2[190];
Word16 shiftP3;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*----------------------------------------------------------------*
* Encode the tilt of gaussian excitation
@@ -435,13 +421,8 @@ void gauss2v_fx(
cor2_norm = norm_l( cor2 );
eneri_norm = norm_l( eneri );
-#ifdef ISSUE_1867_replace_overflow_libenc
cor2_mantissa = round_fx_sat( L_shl_sat( cor2, cor2_norm ) );
eneri_mantissa = round_fx_sat( L_shl_sat( eneri, eneri_norm ) );
-#else
- cor2_mantissa = round_fx_o( L_shl_o( cor2, cor2_norm, &Overflow ), &Overflow );
- eneri_mantissa = round_fx_o( L_shl_o( eneri, eneri_norm, &Overflow ), &Overflow );
-#endif
difference_norm = sub( add( cor2_norm, enerw_norm ), add( cor2w_norm, eneri_norm ) );
update_best = 0;
@@ -610,15 +591,13 @@ void gauss2v_fx(
/* Gain must be output in a 32-bit variable as a Q16 */
/* Compensate for Q_new */
-#ifdef ISSUE_1867_replace_overflow_libenc
*gain = L_shl_sat( Portion, sub( 13, Q_new ) ); /* Q16 */
-#else
- *gain = L_shl_o( Portion, sub( 13, Q_new ), &Overflow ); /* Q16 */
-#endif
move32();
return;
}
+
+
/*---------------------------------------------------------------------*
* Put selected codevector positions and signs into quantization index
*---------------------------------------------------------------------*/
diff --git a/lib_enc/gp_clip_fx.c b/lib_enc/gp_clip_fx.c
index 05d385fe78de7ac707856b295e80ac12e50be42e..07b88103b29dc5c0f62fa32ce0c410189941d664 100644
--- a/lib_enc/gp_clip_fx.c
+++ b/lib_enc/gp_clip_fx.c
@@ -114,12 +114,6 @@ Word16 gp_clip_fx(
Word32 ener;
Word32 L_tmp;
Word16 thres;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
clip = 0;
move16();
@@ -144,18 +138,10 @@ Word16 gp_clip_fx(
}
}
-#ifdef ISSUE_1867_replace_overflow_libenc
ener = L_mac_sat( 1L, xn[0], xn[0] );
-#else
- ener = L_mac_o( 1L, xn[0], xn[0], &Overflow );
-#endif
FOR( i = 1; i < L_SUBFR; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
ener = L_mac_sat( ener, xn[i], xn[i] );
-#else
- ener = L_mac_o( ener, xn[i], xn[i], &Overflow );
-#endif
}
/* ener = 10.0f*(float)log10(ener) */
@@ -344,12 +330,7 @@ Word16 Mode2_gp_clip_fx(
Word16 clip, tmp, exp_xn;
Word16 i;
Word32 wener, Ltmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
move16();
clip = 0;
@@ -367,11 +348,7 @@ Word16 Mode2_gp_clip_fx(
FOR( i = 0; i < L_subfr; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
wener = L_mac0_sat( wener, xn[i], xn[i] );
-#else
- wener = L_mac0_o( wener, xn[i], xn[i], &Overflow );
-#endif
}
/*wener = 10.0f*(float)log10(wener);*/
diff --git a/lib_enc/gs_enc_fx.c b/lib_enc/gs_enc_fx.c
index e26d5abbf5320377e19d1ae7d404208fa46b034e..7a0d1a279b608c29f1064fb423549fd401e45548 100644
--- a/lib_enc/gs_enc_fx.c
+++ b/lib_enc/gs_enc_fx.c
@@ -1332,12 +1332,6 @@ static Word16 edyn_fx( /* o : ratio of max to mean */
Word32 L_tmp, ener_max, ener_mean;
Word16 tmp, exp2, tmp2, tmp1, exp1, exp3;
Word16 scale;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
ener_mean = L_shl( 1, shl( Qnew, 1 ) ); /*2*Qnew*/
ener_max = L_shl( 1, shl( Qnew, 1 ) );
@@ -1346,11 +1340,7 @@ static Word16 edyn_fx( /* o : ratio of max to mean */
{
L_tmp = L_mult0( vec[j], vec[j] ); /*2*Qnew*/
ener_max = L_max( ener_max, L_tmp );
-#ifdef ISSUE_1867_replace_overflow_libenc
ener_mean = L_add_sat( ener_mean, L_tmp );
-#else
- ener_mean = L_add_o( ener_mean, L_tmp, &Overflow );
-#endif
}
/*dyn = 10.0f * (ener_max / ener_mean);*/
ener_mean = Mult_32_16( ener_mean, div_s( 1, lvec ) ); /*2*Qnew*/
@@ -1358,11 +1348,7 @@ static Word16 edyn_fx( /* o : ratio of max to mean */
IF( ener_mean > 0 )
{
exp1 = norm_l( ener_mean );
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp1 = round_fx_sat( L_shl( ener_mean, exp1 ) );
-#else
- tmp1 = round_fx_o( L_shl( ener_mean, exp1 ), &Overflow );
-#endif
exp1 = sub( 30, exp1 );
exp2 = norm_l( ener_max );
diff --git a/lib_enc/guided_plc_enc_fx.c b/lib_enc/guided_plc_enc_fx.c
index 50932734cedfb35226c981816594fe1999161ac5..599fc57f290dbd5f0ad4fdbfad43d5af80ea7f37 100644
--- a/lib_enc/guided_plc_enc_fx.c
+++ b/lib_enc/guided_plc_enc_fx.c
@@ -43,13 +43,6 @@ static void coderLookAheadInnovation(
move32();
move16();
move16();
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
/* Debug init (not instrumented) */
T0_fx = -3000;
@@ -167,14 +160,9 @@ static void coderLookAheadInnovation(
ps_e = add( alp_e, ps_e );
BASOP_SATURATE_WARNING_OFF_EVS
-#ifdef ISSUE_1867_replace_overflow_libenc
max_ps_tmp = L_shl_sat( max_ps, sub( max_ps_e, ps_e ) );
-#else
- max_ps_tmp = L_shl_o( max_ps, sub( max_ps_e, ps_e ), &Overflow );
-#endif
BASOP_SATURATE_WARNING_ON_EVS
-
IF( LT_32( max_ps_tmp, ps ) )
{
max_ps = L_add( ps, 0 );
@@ -438,6 +426,8 @@ Word16 encSideSpecPowDiffuseDetector_fx(
return idx;
}
+
+
/*-------------------------------------------------------------------*
* updateSpecPowDiffuseIdx_fx()
*
@@ -448,13 +438,6 @@ void updateSpecPowDiffuseIdx_fx(
{
Word16 min_gp;
Word16 k;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
move32();
move16();
@@ -463,26 +446,20 @@ void updateSpecPowDiffuseIdx_fx(
FOR( k = 1; k < 4; k++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
st->mean_gc[1] = L_add_sat( st->mean_gc[1], st->gain_code[k] );
-#else
- st->mean_gc[1] = L_add_o( st->mean_gc[1], st->gain_code[k], &Overflow );
-#endif
move32();
min_gp = s_min( min_gp, st->bpf_gainT[k] );
}
/* Suppress saturation warning in threshold comparison. */
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( LT_32( st->mean_gc[1], L_add_sat( st->mean_gc[0], Mpy_32_16_r( st->mean_gc[0], 3211 /*0.098 Q15*/ ) ) ) || GT_16( min_gp, 13435 /*0.82 Q14*/ ) )
-#else
- if ( LT_32( st->mean_gc[1], L_add_o( st->mean_gc[0], Mpy_32_16_r( st->mean_gc[0], 3211 /*0.098 Q15*/ ), &Overflow ) ) || GT_16( min_gp, 13435 /*0.82 Q14*/ ) )
-#endif
{
move16();
st->glr_idx[0] = 0;
}
move16();
st->mean_gc[0] = st->mean_gc[1]; /* Q15 */
+
+ return;
}
diff --git a/lib_enc/hf_cod_amrwb_fx.c b/lib_enc/hf_cod_amrwb_fx.c
index 860f5626bd9f16e20030708bbc8543b5157b90f7..e833201bc5e2614de96760e317ffa6d0c5d3e91c 100644
--- a/lib_enc/hf_cod_amrwb_fx.c
+++ b/lib_enc/hf_cod_amrwb_fx.c
@@ -87,11 +87,6 @@ void hf_cod_fx(
Word32 L_tmp;
Word16 *pt1;
const Word16 *pt2;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/* Original speech signal as reference for high band gain quantisation */
Copy( speech16k_fx, HF_SP_fx, L_SUBFR16k );
@@ -110,15 +105,10 @@ void hf_cod_fx(
ener_exc_fx = dot_prod_satcontr( exc_fx, exc_fx, Q_exc, Q_exc, &q1, L_SUBFR );
ener_hf_fx = dot_prod_satcontr( HF_fx, HF_fx, -3, -3, &q2, L_SUBFR16k );
- scale_fx = div_s( shl( 1, 14 ), ener_exc_fx ); /*Q(29-q1) */
- L_tmp = L_mult( ener_hf_fx, scale_fx ); /*30-q1+q2 */
- q2 = sub( q1, q2 ); /*30-q2 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ scale_fx = div_s( shl( 1, 14 ), ener_exc_fx ); /*Q(29-q1) */
+ L_tmp = L_mult( ener_hf_fx, scale_fx ); /*30-q1+q2 */
+ q2 = sub( q1, q2 ); /*30-q2 */
scale_fx = round_fx( Isqrt( L_shl_sat( L_tmp, sub( q2, 26 ) ) ) ); /*Q13 */
-#else
- scale_fx = round_fx( Isqrt( L_shl_o( L_tmp, sub( q2, 26 ), &Overflow ) ) ); /*Q13 */
-#endif
-
pt1 = HF_fx;
FOR( i = 0; i < L_SUBFR16k; i++ )
@@ -190,15 +180,10 @@ void hf_cod_fx(
ener_hf_fx = dot_prod_satcontr( HF_syn_fx, HF_syn_fx, 0, 0, &q2, L_SUBFR16k );
ener_input_fx = dot_prod_satcontr( HF_SP_fx, HF_SP_fx, 0, 0, &q1, L_SUBFR16k );
- HF_calc_gain_fx = div_s( shl( 1, 14 ), ener_input_fx ); /*Q(29-q1) */
- L_tmp = L_mult( ener_hf_fx, HF_calc_gain_fx ); /*30-q1+q2 */
- q2 = sub( q1, q2 ); /*30-q2 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ HF_calc_gain_fx = div_s( shl( 1, 14 ), ener_input_fx ); /*Q(29-q1) */
+ L_tmp = L_mult( ener_hf_fx, HF_calc_gain_fx ); /*30-q1+q2 */
+ q2 = sub( q1, q2 ); /*30-q2 */
HF_calc_gain_fx = round_fx_sat( Isqrt( L_shl_sat( L_tmp, sub( q2, 20 ) ) ) ); /*Q10 */
-#else
- HF_calc_gain_fx = round_fx_o( Isqrt( L_shl_sat( L_tmp, sub( q2, 20 ) ) ), &Overflow ); /*Q10 */
-#endif
-
/* set energy of HF synthesis to energy of original HF:
cross-fade between HF levels in active and inactive frame in hangover period */
diff --git a/lib_enc/hq_classifier_enc_fx.c b/lib_enc/hq_classifier_enc_fx.c
index 1f84c270aec9fec1e44cff439aec3217012f03ac..1253d55fd8a921fed876c0cc1e033c39158bed6e 100644
--- a/lib_enc/hq_classifier_enc_fx.c
+++ b/lib_enc/hq_classifier_enc_fx.c
@@ -652,14 +652,9 @@ void hvq_classifier_ivas_fx(
Word16 num_peak_cands, high, low;
Word16 sharp[HVQ_NSUB_32k];
Word16 peak_cand_idx[HVQ_THRES_BIN_32k], avail_peaks[HVQ_NSUB_32k];
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
Word16 temp_e = 0;
move16();
+
L_input_max = L_deposit_l( 0 );
set32_fx( L_thr, 0, L_FRAME16k );
@@ -810,11 +805,7 @@ void hvq_classifier_ivas_fx(
sharp[i] = extract_h( L_shl( L_tmp, shift ) ); /* 30-s+s-8-16 -> Q6 */
move16();
/*sharp_dist += (sharp[i]-HVQ_SHARP_THRES); */
-#ifdef ISSUE_1867_replace_overflow_libenc
sharp_dist = add_sat( sharp_dist, sub( sharp[i], HVQ_SHARP_THRES_FX ) ); /* Q6 */
-#else
- sharp_dist = add_o( sharp_dist, sub( sharp[i], HVQ_SHARP_THRES_FX ), &Overflow ); /* Q6 */
-#endif
if ( GT_16( sharp[i], HVQ_SHARP_THRES_FX ) )
{
num_sharp_bands = add( num_sharp_bands, 1 );
@@ -1091,12 +1082,7 @@ void hvq_classifier_fx(
Word16 num_peak_cands, high, low;
Word16 sharp[HVQ_NSUB_32k];
Word16 peak_cand_idx[HVQ_THRES_BIN_32k], avail_peaks[HVQ_NSUB_32k];
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
L_input_max = L_deposit_l( 0 );
set32_fx( L_thr, 0, L_FRAME16k );
@@ -1248,11 +1234,7 @@ void hvq_classifier_fx(
move16();
/*sharp_dist += (sharp[i]-HVQ_SHARP_THRES); */
-#ifdef ISSUE_1867_replace_overflow_libenc
sharp_dist = add_sat( sharp_dist, sub( sharp[i], HVQ_SHARP_THRES_FX ) );
-#else
- sharp_dist = add_o( sharp_dist, sub( sharp[i], HVQ_SHARP_THRES_FX ), &Overflow );
-#endif
IF( GT_16( sharp[i], HVQ_SHARP_THRES_FX ) )
{
num_sharp_bands = add( num_sharp_bands, 1 );
diff --git a/lib_enc/hq_core_enc_fx.c b/lib_enc/hq_core_enc_fx.c
index dd9f1f2b9a51e01c3a60498e4711aff5bf992e04..2879997ac5d6e225d7fc434ad1e4728dca32635b 100644
--- a/lib_enc/hq_core_enc_fx.c
+++ b/lib_enc/hq_core_enc_fx.c
@@ -307,6 +307,7 @@ void hq_core_enc_ivas_fx(
st->Nb_ACELP_frames = 0;
move16();
set_zero_fx( t_audio_fx, L_FRAME48k_EXT );
+
/* set input_frame length */
input_frame = input_frame_orig; /* Q0 */
@@ -429,11 +430,9 @@ void hq_core_enc_ivas_fx(
/* limit encoded band-width according to the command-line OR BWD limitation */
inner_frame = inner_frame_tbl[st->bwidth]; /* Q0 */
L_spec = l_spec_tbl[st->bwidth]; /* Q0 */
-
move16();
move16();
-
IF( GT_16( input_frame, inner_frame ) )
{
IF( EQ_16( is_transient, 1 ) )
@@ -449,7 +448,6 @@ void hq_core_enc_ivas_fx(
}
}
-
/* subtract signaling bits */
num_bits = sub( num_bits, hBstr->nb_bits_tot ); /* Q0 */
@@ -467,12 +465,12 @@ void hq_core_enc_ivas_fx(
{
FOR( i = 0; i < NUM_TIME_SWITCHING_BLOCKS; i++ )
{
- v_multc_fixed( t_audio_fx + add( i_mult2( i, shr( inner_frame, 2 ) ), L_FRAME16k / NUM_TIME_SWITCHING_BLOCKS ), L_tmp, t_audio_fx + add( i_mult2( i, shr( inner_frame, 2 ) ), L_FRAME16k / NUM_TIME_SWITCHING_BLOCKS ), sub( shr( inner_frame, 2 ), L_FRAME16k / NUM_TIME_SWITCHING_BLOCKS ) ); // Q_audio + Q31 - Q31 -> Q_audio
+ v_multc_fx( t_audio_fx + add( i_mult2( i, shr( inner_frame, 2 ) ), L_FRAME16k / NUM_TIME_SWITCHING_BLOCKS ), L_tmp, t_audio_fx + add( i_mult2( i, shr( inner_frame, 2 ) ), L_FRAME16k / NUM_TIME_SWITCHING_BLOCKS ), sub( shr( inner_frame, 2 ), L_FRAME16k / NUM_TIME_SWITCHING_BLOCKS ) ); // Q_audio + Q31 - Q31 -> Q_audio
}
}
ELSE
{
- v_multc_fixed( t_audio_fx + L_FRAME16k, L_tmp, t_audio_fx + L_FRAME16k, L_spec - L_FRAME16k ); // Q_audio + Q31 - Q31 -> Q_audio
+ v_multc_fx( t_audio_fx + L_FRAME16k, L_tmp, t_audio_fx + L_FRAME16k, L_spec - L_FRAME16k ); // Q_audio + Q31 - Q31 -> Q_audio
}
}
@@ -551,7 +549,6 @@ void hq_core_enc_ivas_fx(
Copy_Scale_sig_32_16( wtda_audio_fx32, wtda_audio_fx16, 2 * L_FRAME48k, negate( Q_audio ) ); // Q0
TCX_MDCT_Inverse( t_audio_fx, sub( sub( 31, Q_audio ), 15 ), wtda_audio_fx16, overlap, sub( L_frame, overlap ), overlap, st->element_mode );
-
/* Window current frame */
Word16 tcx_offset_tmp;
@@ -566,7 +563,6 @@ void hq_core_enc_ivas_fx(
}
tcx_windowing_synthesis_current_frame( wtda_audio_fx16, st->hTcxCfg->tcx_aldo_window_2, st->hTcxCfg->tcx_mdct_window_half, st->hTcxCfg->tcx_mdct_window_minimum, overlap, /*st->hTcxCfg->tcx_mdct_window_length*/ st->hTcxCfg->tcx_mdct_window_half_length, st->hTcxCfg->tcx_mdct_window_min_length, st->last_core == ACELP_CORE, st->hTcxCfg->tcx_last_overlap_mode, /*left mode*/ st->hTcxEnc->acelp_zir, st->hTcxEnc->Txnq, NULL, Aq_old_fx, st->hTcxCfg->tcx_mdct_window_trans, shr( st->L_frame, 1 ), tcx_offset_tmp, st->last_core, 0, 0 );
-
/*Compute windowed synthesis in case of switching to ALDO windows in next frame*/
Copy( wtda_audio_fx16 + sub( L_frame, nz ), st->hTcxEnc->old_out_fx, nz + overlap ); /* Q0 */
set16_fx( st->hTcxEnc->old_out_fx + add( nz, overlap ), 0, nz );
@@ -588,7 +584,7 @@ void hq_core_enc_ivas_fx(
{
Word16 tmp_q = Q_audio;
move16();
- Word32 ener_match_fx = SQRT2_FIXED;
+ Word32 ener_match_fx = SQRT2_FX;
move32();
FOR( i = 0; i < input_frame; i++ )
{
@@ -600,7 +596,6 @@ void hq_core_enc_ivas_fx(
scale_sig32( wtda_audio_fx32, 2 * L_FRAME48k, sub( Q_audio, tmp_q ) ); /* Q_audio */
Inverse_Transform( t_audio_fx, &Q_audio, wtda_audio_fx32, is_transient, L_FRAME16k, inner_frame, st->element_mode );
-
out_q = Q_audio;
move16();
window_ola_fx( wtda_audio_fx32, output_fx, &out_q, st->hTcxEnc->old_out_fx, &old_q, L_FRAME16k, st->hTcxCfg->tcx_last_overlap_mode, st->hTcxCfg->tcx_curr_overlap_mode, 0, 0, NULL );
diff --git a/lib_enc/hq_lr_enc_fx.c b/lib_enc/hq_lr_enc_fx.c
index 645c952e4f551efd7b9019e31e7347ec1a518a4a..cd58e3b95358314438c169dbcc95f32a5efce782 100644
--- a/lib_enc/hq_lr_enc_fx.c
+++ b/lib_enc/hq_lr_enc_fx.c
@@ -271,13 +271,6 @@ void hq_lr_enc_fx(
Word16 beta_fx; /*Q14 1.05f; */
HQ_ENC_HANDLE hHQ_core = st_fx->hHQ_core;
BSTR_ENC_HANDLE hBstr = st_fx->hBstr;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
set32_fx( L_y2, 0x0L, L_FRAME48k );
set16_fx( inp_vector_fx, 0, inner_frame_fx );
@@ -607,13 +600,9 @@ void hq_lr_enc_fx(
exp = 0;
move16();
}
- L_tmp = Mult_32_16( Ep_vari_fx, 3277 ); /*13+15-15=13 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = Mult_32_16( Ep_vari_fx, 3277 ); /*13+15-15=13 */
L_tmp = L_shl_sat( Mult_32_16( L_tmp, tmp ), sub( 12, exp ) ); /*Q(13+exp-15 +12-exp +4 = 14) */
-#else
- L_tmp = L_shl_o( Mult_32_16( L_tmp, tmp ), sub( 12, exp ), &Overflow ); /*Q(13+exp-15 +12-exp +4 = 14) */
-#endif
- tmp2 = extract_h( Ep_avrg_fx ); /*Q13-16=-3 */
+ tmp2 = extract_h( Ep_avrg_fx ); /*Q13-16=-3 */
IF( tmp2 != 0 )
{
exp = norm_s( tmp2 );
@@ -628,14 +617,10 @@ void hq_lr_enc_fx(
exp = 0;
move16();
}
- L_tmp2 = Mult_32_16( Ep_vari_fx, 6554 ); /*13+15-15=13 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp2 = Mult_32_16( Ep_vari_fx, 6554 ); /*13+15-15=13 */
L_tmp2 = L_shl_sat( Mult_32_16( L_tmp2, tmp2 ), sub( 13, exp ) ); /*Q(13+exp-15 +13-exp +3 = 14) */
-#else
- L_tmp2 = L_shl_o( Mult_32_16( L_tmp2, tmp2 ), sub( 13, exp ), &Overflow ); /*Q(13+exp-15 +13-exp +3 = 14) */
-#endif
- L_tmp = L_min( L_tmp, L_tmp2 ); /*Q14 */
- tmp = extract_l( L_min( L_tmp, 13107 ) ); /*Q14 */
+ L_tmp = L_min( L_tmp, L_tmp2 ); /*Q14 */
+ tmp = extract_l( L_min( L_tmp, 13107 ) ); /*Q14 */
alpha_fx = add( 16384, tmp );
}
IF( EQ_16( hHQ_core->last_bitalloc_max_band[j++], 1 ) )
@@ -656,14 +641,10 @@ void hq_lr_enc_fx(
exp = 0;
move16();
}
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_shl_sat( Mult_32_16( Ep_avrg_fx, tmp ), sub( 14, exp ) ); /*Q(13+exp-15 +14-exp+2 = 14) */
-#else
- L_tmp = L_shl_o( Mult_32_16( Ep_avrg_fx, tmp ), sub( 14, exp ), &Overflow ); /*Q(13+exp-15 +14-exp+2 = 14) */
-#endif
- L_tmp = L_max( L_tmp, 16384 ); /*Q14 */
- tmp = extract_l( L_min( L_tmp, beta_fx ) ); /*Q14 */
- alpha_fx = shl( mult( alpha_fx, tmp ), 1 ); /*14+14-15 +1=Q14 */
+ L_tmp = L_max( L_tmp, 16384 ); /*Q14 */
+ tmp = extract_l( L_min( L_tmp, beta_fx ) ); /*Q14 */
+ alpha_fx = shl( mult( alpha_fx, tmp ), 1 ); /*14+14-15 +1=Q14 */
}
ELSE
{
@@ -683,15 +664,11 @@ void hq_lr_enc_fx(
exp = 0;
move16();
}
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_shl_sat( Mult_32_16( Ep_tmp_fx[i], tmp2 ), sub( 19, exp ) ); /*Q(13+exp-15 +19-exp +3 = 20) */
-#else
- L_tmp = L_shl_o( Mult_32_16( Ep_tmp_fx[i], tmp2 ), sub( 19, exp ), &Overflow ); /*Q(13+exp-15 +19-exp +3 = 20) */
-#endif
- L_tmp = Mult_32_16( L_tmp, shl( sub( bands_fx, lowband ), 9 ) ); /*20 +9 -15 =Q14 */
- L_tmp = L_max( L_tmp, 13926 ); /*Q14 */
- tmp2 = extract_l( L_min( L_tmp, 16384 ) ); /*Q14 */
- alpha_fx = shl( mult( alpha_fx, tmp2 ), 1 ); /*14+14-15+1 =Q14 */
+ L_tmp = Mult_32_16( L_tmp, shl( sub( bands_fx, lowband ), 9 ) ); /*20 +9 -15 =Q14 */
+ L_tmp = L_max( L_tmp, 13926 ); /*Q14 */
+ tmp2 = extract_l( L_min( L_tmp, 16384 ) ); /*Q14 */
+ alpha_fx = shl( mult( alpha_fx, tmp2 ), 1 ); /*14+14-15+1 =Q14 */
}
L_band_energy_tmp[i] = L_shl( Mult_32_16( L_band_energy_tmp[i], alpha_fx ), 1 ); /*Q(Q_band_energy+14-15 +1= Q_band_energy) */
move32();
@@ -766,11 +743,7 @@ void hq_lr_enc_fx(
bit_budget_fx = sub( bit_budget_fx, 2 ); /* bits in high bands to indicate the last 2 subbands is allocated bits or not Q0*/
FOR( i = 0; i < bands_fx; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ep_tmp_fx[i] = L_shl_sat( Ep_tmp_fx[i], 2 ); /* Q15 */
-#else
- Ep_tmp_fx[i] = L_shl_o( Ep_tmp_fx[i], 2, &Overflow ); /* Q15 */
-#endif
move32();
}
IF( EQ_32( st_fx->core_brate, ACELP_13k20 ) )
@@ -802,11 +775,7 @@ void hq_lr_enc_fx(
IF( GE_16( i, lowband ) && add( sub( i, bands_fx ), p2a_bands_fx ) < 0 )
{
Ep_vari_fx = L_add_sat( Ep_vari_fx, L_abs( L_sub_sat( Ep_tmp_fx[i], Ep_tmp_fx[( i - 1 )] ) ) ); /*Q15 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- Ep_avrg_fx = L_add_sat( Ep_avrg_fx, Ep_tmp_fx[i] ); /*Q15 */
-#else
- Ep_avrg_fx = L_add_o( Ep_avrg_fx, Ep_tmp_fx[i], &Overflow ); /*Q15 */
-#endif
+ Ep_avrg_fx = L_add_sat( Ep_avrg_fx, Ep_tmp_fx[i] ); /*Q15 */
}
IF( GE_16( i, highband ) )
@@ -874,12 +843,8 @@ void hq_lr_enc_fx(
IF( EQ_16( hHQ_core->last_bitalloc_max_band[sub( i, add( tmp, 1 ) )], 1 ) )
{
tmp = sub( tmp, lowband );
- L_tmp = Mult_32_16( Ep_tmp_fx[i], tmp ); /*Q(15+0-15 = 0) */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = Mult_32_16( Ep_tmp_fx[i], tmp ); /*Q(15+0-15 = 0) */
tmp = extract_h( L_shl_sat( L_tmp, 16 ) ); /*Q0 */
-#else
- tmp = extract_h( L_shl_o( L_tmp, 16, &Overflow ) ); /*Q0 */
-#endif
IF( tmp != 0 )
{
exp = norm_s( tmp );
@@ -940,19 +905,11 @@ void hq_lr_enc_fx(
{
IF( GE_16( i, lowband ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ep_avrg_fx = L_add_sat( Ep_avrg_fx, Ep_tmp_fx[i] ); /*Q15 */
-#else
- Ep_avrg_fx = L_add_o( Ep_avrg_fx, Ep_tmp_fx[i], &Overflow ); /*Q15 */
-#endif
}
ELSE
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ep_avrgL_fx = L_add_sat( Ep_avrgL_fx, Ep_tmp_fx[i] ); /*Q15 */
-#else
- Ep_avrgL_fx = L_add_o( Ep_avrgL_fx, Ep_tmp_fx[i], &Overflow ); /*Q15 */
-#endif
IF( GT_32( Ep_tmp_fx[i], Ep_peak_fx ) )
{
Ep_peak_fx = L_add( Ep_tmp_fx[i], 0 ); /*Q15 */
@@ -1216,15 +1173,9 @@ void hq_lr_enc_ivas_fx(
Word32 L_band_energy_tmp[BANDS_MAX];
UWord16 lo;
Word16 Q_band_energy;
-#ifndef ISSUE_1867_replace_overflow_libenc
- Flag Overflow;
- move32();
-#endif
-
BSTR_ENC_HANDLE hBstr = st->hBstr;
HQ_ENC_HANDLE hHQ_core = st->hHQ_core;
-
set32_fx( L_y2, 0x0L, L_FRAME48k );
set32_fx( inp_vector, 0, inner_frame );
flag_spt = 0;
@@ -1487,11 +1438,7 @@ void hq_lr_enc_ivas_fx(
}
ELSE
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ep_avrgL_fx = L_add_sat( Ep_avrgL_fx, Ep_tmp_fx[i] ); /*Q15 */
-#else
- Ep_avrgL_fx = L_add_o( Ep_avrgL_fx, Ep_tmp_fx[i], &Overflow ); /*Q15 */
-#endif
IF( L_sub( Ep_tmp_fx[i], Ep_peak_fx ) > 0 )
{
Ep_peak_fx = Ep_tmp_fx[i]; /*Q15 */
@@ -1615,11 +1562,7 @@ void hq_lr_enc_ivas_fx(
move16();
}
Mpy_32_16_ss( Ep_avrg_fx, tmp, &L_tmp, &lo );
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_shl_sat( L_tmp, sub( 14, exp ) ); /*Q(13+exp-15 +14-exp+2 = 14) */
-#else
- L_tmp = L_shl_o( L_tmp, sub( 14, exp ), &Overflow ); /*Q(13+exp-15 +14-exp+2 = 14) */
-#endif
L_tmp = L_max( L_tmp, 16384 ); /*14 */
tmp = extract_l( L_min( L_tmp, beta_fx ) ); /*14 */
alpha_fx = shl( mult( alpha_fx, tmp ), 1 ); /*14+14-15 +1=14 */
@@ -1666,11 +1609,7 @@ void hq_lr_enc_ivas_fx(
{
IF( sub( i, lowband ) >= 0 )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ep_avrg_fx = L_add_sat( Ep_avrg_fx, Ep_tmp_fx[i] ); /*Q15 */
-#else
- Ep_avrg_fx = L_add_o( Ep_avrg_fx, Ep_tmp_fx[i], &Overflow ); /*Q15 */
-#endif
}
ELSE
{
@@ -1712,12 +1651,8 @@ void hq_lr_enc_ivas_fx(
Mpy_32_16_ss( Ep_peak_fx, tmp, &L_tmp, &lo );
Mpy_32_16_ss( L_tmp, lowband, &L_tmp, &lo );
Mpy_32_16_ss( L_tmp, 18842, &L_tmp, &lo );
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_shl_sat( L_tmp, sub( 27, exp ) ); /*Q14 0.5 */
-#else
- L_tmp = L_shl_o( L_tmp, sub( 27, exp ), &Overflow ); /*Q14 0.5 */
-#endif
- tmp2 = extract_l( L_min( L_tmp, 19661 ) ); /*14 */
+ tmp2 = extract_l( L_min( L_tmp, 19661 ) ); /*14 */
Mpy_32_16_ss( L_band_energy_tmp[i], tmp2, &L_tmp, &lo );
L_band_energy_tmp[i] = L_shl( L_tmp, 1 ); /*Q_band_energy */
move32();
@@ -1740,11 +1675,7 @@ void hq_lr_enc_ivas_fx(
bit_budget = sub( bit_budget, 2 ); /* bits in high bands to indicate the last 2 subbands is allocated bits or not */
FOR( i = 0; i < bands; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ep_tmp_fx[i] = L_shl_sat( Ep_tmp_fx[i], 2 ); /* Q15 */
-#else
- Ep_tmp_fx[i] = L_shl_o( Ep_tmp_fx[i], 2, &Overflow ); /* Q15 */
-#endif
move32();
}
IF( EQ_32( st->core_brate, ACELP_13k20 ) )
@@ -1780,11 +1711,7 @@ void hq_lr_enc_ivas_fx(
IF( sub( i, lowband ) >= 0 && add( sub( i, bands ), p2a_bands ) < 0 )
{
Ep_vari_fx = L_add( Ep_vari_fx, L_abs( L_sub( Ep_tmp_fx[i], Ep_tmp_fx[sub( i, 1 )] ) ) ); /*Q15 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- Ep_avrg_fx = L_add_sat( Ep_avrg_fx, Ep_tmp_fx[i] ); /*Q15 */
-#else
- Ep_avrg_fx = L_add_o( Ep_avrg_fx, Ep_tmp_fx[i], &Overflow ); /*Q15 */
-#endif
+ Ep_avrg_fx = L_add_sat( Ep_avrg_fx, Ep_tmp_fx[i] ); /*Q15 */
}
IF( sub( i, highband ) >= 0 )
@@ -1817,11 +1744,7 @@ void hq_lr_enc_ivas_fx(
tmp = sub( bands, p2a_bands );
tmp = sub( tmp, lowband ); /*Q0 */
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp1 = extract_h( L_shl_sat( Ep_avrg_fx, 1 ) ); /*Q0 */
-#else
- tmp1 = extract_h( L_shl_o( Ep_avrg_fx, 1, &Overflow ) ); /*Q0 */
-#endif
IF( tmp1 != 0 )
{
exp = norm_s( tmp1 );
@@ -1860,11 +1783,7 @@ void hq_lr_enc_ivas_fx(
{
tmp = sub( tmp, lowband );
Mpy_32_16_ss( Ep_tmp_fx[i], tmp, &L_tmp, &lo );
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = extract_h( L_shl_sat( L_tmp, 16 ) ); /*Q0 */
-#else
- tmp = extract_h( L_shl_o( L_tmp, 16, &Overflow ) ); /*Q0 */
-#endif
IF( tmp != 0 )
{
exp = norm_s( tmp );
@@ -1888,12 +1807,7 @@ void hq_lr_enc_ivas_fx(
ELSE
{
tmp = sub( tmp, lowband );
-
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp1 = extract_h( L_shl_sat( Ep_avrg_fx, 1 ) ); /*Q0 */
-#else
- tmp1 = extract_h( L_shl_o( Ep_avrg_fx, 1, &Overflow ) ); /*Q0 */
-#endif
IF( tmp1 != 0 )
{
exp = norm_s( tmp1 );
@@ -1932,19 +1846,11 @@ void hq_lr_enc_ivas_fx(
{
IF( sub( i, lowband ) >= 0 )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ep_avrg_fx = L_add_sat( Ep_avrg_fx, Ep_tmp_fx[i] ); /*Q15 */
-#else
- Ep_avrg_fx = L_add_o( Ep_avrg_fx, Ep_tmp_fx[i], &Overflow ); /*Q15 */
-#endif
}
ELSE
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ep_avrgL_fx = L_add_sat( Ep_avrgL_fx, Ep_tmp_fx[i] ); /*Q15 */
-#else
- Ep_avrgL_fx = L_add_o( Ep_avrgL_fx, Ep_tmp_fx[i], &Overflow ); /*Q15 */
-#endif
IF( L_sub( Ep_tmp_fx[i], Ep_peak_fx ) > 0 )
{
Ep_peak_fx = Ep_tmp_fx[i]; /* Q15 */
@@ -1969,11 +1875,7 @@ void hq_lr_enc_ivas_fx(
move16();
FOR( i = 0; i < lowband; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = extract_h( L_shl_sat( Ep_avrgL_fx, 1 ) ); /*Q0 */
-#else
- tmp = extract_h( L_shl_o( Ep_avrgL_fx, 1, &Overflow ) ); /*Q0 */
-#endif
IF( tmp != 0 )
{
exp = norm_s( tmp );
@@ -2238,14 +2140,14 @@ static Word16 small_symbol_enc_tran_ivas_fx( /* o : bit
* if flag_pack = 0, estimatng else packing bits
*--------------------------------------------------------------------------*/
-static Word16 small_symbol_enc_fx( /* o : bits */
- BSTR_ENC_HANDLE hBstr, /* i : handle to the bitstream */
- const Word16 *qbidx, /* i : input of dequantized differential energy Q0*/
- const Word16 BANDS, /* i : number of bands Q0*/
- Word16 *hLCmode, /* i/o: LC mode info Q0*/
- const Word16 flag_pack /* i : indicator of packing or estimating bits Q0*/
- ,
- const Word16 is_transient /* Q0 */ )
+/* o : bits */
+static Word16 small_symbol_enc_fx(
+ BSTR_ENC_HANDLE hBstr, /* i : handle to the bitstream */
+ const Word16 *qbidx, /* i : input of dequantized differential energy Q0*/
+ const Word16 BANDS, /* i : number of bands Q0*/
+ Word16 *hLCmode, /* i/o: LC mode info Q0*/
+ const Word16 flag_pack, /* i : indicator of packing or estimating bits Q0*/
+ const Word16 is_transient /* Q0 */ )
{
Word16 i, bits;
Word16 difidx[BANDS_MAX], LSB[BANDS_MAX];
@@ -2376,12 +2278,13 @@ static Word16 small_symbol_enc_ivas_fx(
}
-static Word16 large_symbol_enc_fx( /* o : bits Q0*/
- BSTR_ENC_HANDLE hBstr, /* i : handle to the bitstream */
- Word16 *qbidx, /* i : input of dequantized differential energy Q0*/
- const Word16 BANDS, /* i : number of bands Q0*/
- Word16 *hLCmode0, /* i/o: LC mode info Q0*/
- const Word16 flag_pack /* i : indicator of packing or estimating bits Q0*/
+/* o : bits Q0 */
+static Word16 large_symbol_enc_fx(
+ BSTR_ENC_HANDLE hBstr, /* i : handle to the bitstream */
+ Word16 *qbidx, /* i : input of dequantized differential energy Q0*/
+ const Word16 BANDS, /* i : number of bands Q0*/
+ Word16 *hLCmode0, /* i/o: LC mode info Q0*/
+ const Word16 flag_pack /* i : indicator of packing or estimating bits Q0*/
)
{
Word16 i, bits, tmp;
@@ -3252,7 +3155,7 @@ static Word16 band_energy_quant_fx(
static Word16 band_energy_quant_ivas_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
const Word32 *L_t_audio, /* i : Q12 : input MDCT signal (Qs) */
const Word16 band_start[], /* i : Q0 : band start table */
const Word16 band_end[], /* i : Q0 : band end table */
@@ -3260,7 +3163,8 @@ static Word16 band_energy_quant_ivas_fx(
const Word16 bands, /* i : Q0 : number of bands */
const Word32 L_qint, /* i : Q29 */
const Word16 eref_fx, /* i : Q10 */
- const Word16 is_transient /* i : Q0 : indicator for HQ_TRANSIENT */ )
+ const Word16 is_transient /* i : Q0 : indicator for HQ_TRANSIENT */
+)
{
Word16 i, k;
Word16 ebits;
@@ -3481,12 +3385,6 @@ static Word16 p2a_threshold_quant_fx(
Word32 L_p2a;
Word16 p2a_fx;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
exp_safe = 4; /* never happen overflow. */
move16();
@@ -3553,11 +3451,7 @@ static Word16 p2a_threshold_quant_fx(
/* 10/( log(10)/log(2) ) = 3.01029995663981195211 24660(Q13) */
L_p2a = Mpy_32_16_1( L_tmp, 24660 ); /* 16+13-15 -> Q14 */
-#ifdef ISSUE_1867_replace_overflow_libenc
p2a_fx = round_fx_sat( L_shl_sat( L_p2a, 13 ) ); /* 27 -16 -> 11 */
-#else
- p2a_fx = round_fx_o( L_shl_o( L_p2a, 13, &Overflow ), &Overflow ); /* 27 -16 -> 11 */
-#endif
}
IF( LE_16( p2a_fx, p2a_th_fx ) )
@@ -3607,12 +3501,6 @@ static Word16 p2a_threshold_quant_ivas_fx(
Word32 L_p2a;
Word16 p2a_fx;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
exp_safe = 4; /* never happen overflow. */
move16();
@@ -3678,11 +3566,7 @@ static Word16 p2a_threshold_quant_ivas_fx(
/* 10/( log(10)/log(2) ) = 3.01029995663981195211 24660(Q13) */
L_p2a = Mpy_32_16_1( L_tmp, 24660 ); /* 16+13-15 -> Q14 */
-#ifdef ISSUE_1867_replace_overflow_libenc
p2a_fx = round_fx_sat( L_shl_sat( L_p2a, 13 ) ); /* 27 -16 -> 11 */
-#else
- p2a_fx = round_fx_o( L_shl_o( L_p2a, 13, &Overflow ), &Overflow ); /* 27 -16 -> 11 */
-#endif
}
IF( LE_16( p2a_fx, p2a_th_fx ) )
@@ -3749,12 +3633,6 @@ static void mdct_spectrum_fine_gain_enc_fx(
Word16 d_fx;
Word16 dmin_fx;
Word16 imin_fx;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* Fine gain quantization on only the most significant energy bands */
@@ -3824,13 +3702,9 @@ static void mdct_spectrum_fine_gain_enc_fx(
exp_normn = norm_l( L_Exy );
exp_normn = sub( exp_normn, 1 );
exp_normd = norm_l( L_Eyy );
-#ifdef ISSUE_1867_replace_overflow_libenc
gamma_fx = div_l( L_shl( L_Exy, exp_normn ), round_fx_sat( L_shl( L_Eyy, exp_normd ) ) ); /* Qgamma */
-#else
- gamma_fx = div_l( L_shl_o( L_Exy, exp_normn, &Overflow ), round_fx_o( L_shl_o( L_Eyy, exp_normd, &Overflow ), &Overflow ) ); /* Qgamma */
-#endif
- Qgamma = add( sub( exp_normn, exp_normd ), 15 ); /* exp_normn - (exp_normd-16) - 1; */
- gamma_fx = shl( gamma_fx, sub( 14, Qgamma ) ); /* Qgamma -> Q14 */
+ Qgamma = add( sub( exp_normn, exp_normd ), 15 ); /* exp_normn - (exp_normd-16) - 1; */
+ gamma_fx = shl( gamma_fx, sub( 14, Qgamma ) ); /* Qgamma -> Q14 */
dmin_fx = 32767;
move16();
@@ -3917,12 +3791,6 @@ static void mdct_spectrum_fine_gain_enc_ivas_fx(
Word16 d_fx;
Word16 dmin_fx;
Word16 imin_fx;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* Fine gain quantization on only the most significant energy bands */
@@ -3992,13 +3860,9 @@ static void mdct_spectrum_fine_gain_enc_ivas_fx(
exp_normn = norm_l( L_Exy );
exp_normn = sub( exp_normn, 1 );
exp_normd = norm_l( L_Eyy );
-#ifdef ISSUE_1867_replace_overflow_libenc
gamma_fx = div_l( L_shl( L_Exy, exp_normn ), round_fx_sat( L_shl( L_Eyy, exp_normd ) ) ); /* Qgamma */
-#else
- gamma_fx = div_l( L_shl_o( L_Exy, exp_normn, &Overflow ), round_fx_o( L_shl_o( L_Eyy, exp_normd, &Overflow ), &Overflow ) ); /* Qgamma */
-#endif
- Qgamma = add( sub( exp_normn, exp_normd ), 15 ); /* exp_normn - (exp_normd-16) - 1; */
- gamma_fx = shl( gamma_fx, sub( 14, Qgamma ) ); /* Qgamma -> Q14 */
+ Qgamma = add( sub( exp_normn, exp_normd ), 15 ); /* exp_normn - (exp_normd-16) - 1; */
+ gamma_fx = shl( gamma_fx, sub( 14, Qgamma ) ); /* Qgamma -> Q14 */
dmin_fx = 32767;
move16();
diff --git a/lib_enc/hvq_enc_fx.c b/lib_enc/hvq_enc_fx.c
index 60cf0159a7cb65c07e85301813f0efa04a6f4bc1..1119656fc3bb66eba83d3d1349870aa17489e4b0 100644
--- a/lib_enc/hvq_enc_fx.c
+++ b/lib_enc/hvq_enc_fx.c
@@ -49,12 +49,7 @@ Word16 hvq_enc_ivas_fx( /*o : Consumed bits
Word16 expPeMean, expNfMean, expNfpe, expNfpe3, expo, expo3;
Word16 manPeMean, manNfMean, manNfpe, man;
Word16 tmp16, adjust;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
bits_used = 0;
move16();
@@ -120,11 +115,7 @@ Word16 hvq_enc_ivas_fx( /*o : Consumed bits
nf_cnt = add( nf_cnt, 1 ); /* Q0 */
}
-#ifdef ISSUE_1867_replace_overflow_libenc
pe_mean = L_add_sat( pe_mean, pe ); /* in Q12 and always positive */
-#else
- pe_mean = L_add_o( pe_mean, pe, &Overflow ); /* in Q12 and always positive */
-#endif
}
IF( pe_mean > 0 )
@@ -151,12 +142,8 @@ Word16 hvq_enc_ivas_fx( /*o : Consumed bits
acc = L_mult( tmp16, HVQ_NFPE_FACTOR_CUBE_FX ); /* in Q(12+6+1) = Q19 */
expNfpe3 = extract_l( L_mult0( expNfpe, 3 ) ); /* Cube operation */
/* Number of bits required to adjust to Q15 */
- adjust = add( 19 - ( 15 + 16 ), expNfpe3 ); /* +16 is due to the following extract_h(). */
-#ifdef ISSUE_1867_replace_overflow_libenc
- noise_level[i] = extract_h( L_shr_sat( acc, adjust ) ); /* noise_level[] in Q15 */
-#else
+ adjust = add( 19 - ( 15 + 16 ), expNfpe3 ); /* +16 is due to the following extract_h(). */
noise_level[i] = extract_h( L_shr_sat( acc, adjust ) ); /* noise_level[] in Q15 */
-#endif
move16();
q_noise_level_idx[i] = quant_lc_fx( noise_level[i], &q_noise_level[i] );
move16();
@@ -236,12 +223,7 @@ Word16 hvq_enc_fx( /*o : Consumed bits
Word16 expPeMean, expNfMean, expNfpe, expNfpe3, expo, expo3;
Word16 manPeMean, manNfMean, manNfpe, man;
Word16 tmp16, adjust;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
bits_used = 0;
move16();
@@ -307,11 +289,7 @@ Word16 hvq_enc_fx( /*o : Consumed bits
nf_cnt = add( nf_cnt, 1 ); /* Q0 */
}
-#ifdef ISSUE_1867_replace_overflow_libenc
pe_mean = L_add_sat( pe_mean, pe ); /* in Q12 and always positive */
-#else
- pe_mean = L_add_o( pe_mean, pe, &Overflow ); /* in Q12 and always positive */
-#endif
}
IF( pe_mean > 0 )
diff --git a/lib_enc/igf_enc_fx.c b/lib_enc/igf_enc_fx.c
index 4225570dd03e3b584e87b8b63a6f95a3c1123260..25dfa2534f78ec58f23306d021f7bf158f818331 100755
--- a/lib_enc/igf_enc_fx.c
+++ b/lib_enc/igf_enc_fx.c
@@ -105,12 +105,6 @@ static void IGF_CalculateEnvelope(
Word16 tmp_exp;
Word32 L_tmp;
Word16 shift;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* initialize variables */
Copy32( pMDCTSpectrum + IGF_START_MN, hInstance->spec_be_igf, hInstance->infoStopLine - IGF_START_MN );
@@ -232,13 +226,8 @@ static void IGF_CalculateEnvelope(
move16();
}
-#ifdef ISSUE_1867_replace_overflow_libenc
BASOP_Util_Divide_MantExp( round_fx_sat( sfbEnergyTileR[sfb] ), sfbEnergyTileR_exp[sfb], width, 15, &gain, &gain_exp );
BASOP_Util_Divide_MantExp( round_fx_sat( sfbEnergyC[sfb] ), sfbEnergyC_exp[sfb], round_fx_sat( sfbEnergyTileC[sfb] ), sfbEnergyTileC_exp[sfb], &tmp, &tmp_exp );
-#else
- BASOP_Util_Divide_MantExp( round_fx_o( sfbEnergyTileR[sfb], &Overflow ), sfbEnergyTileR_exp[sfb], width, 15, &gain, &gain_exp );
- BASOP_Util_Divide_MantExp( round_fx_o( sfbEnergyC[sfb], &Overflow ), sfbEnergyC_exp[sfb], round_fx_o( sfbEnergyTileC[sfb], &Overflow ), sfbEnergyTileC_exp[sfb], &tmp, &tmp_exp );
-#endif
L_tmp = L_mult( gain, tmp );
gain_exp = add( gain_exp, tmp_exp );
}
@@ -266,11 +255,7 @@ static void IGF_CalculateEnvelope(
L_tmp = BASOP_Util_Log2( L_tmp );
L_tmp = L_add( L_tmp, L_deposit_h( shl( gain_exp, 15 - 6 ) ) );
shift = norm_l( L_tmp );
-#ifdef ISSUE_1867_replace_overflow_libenc
gain = round_fx_sat( L_shl( L_tmp, shift ) );
-#else
- gain = round_fx_o( L_shl_o( L_tmp, shift, &Overflow ), &Overflow );
-#endif
gain_exp = sub( 7, shift );
gain_exp = BASOP_Util_Add_MantExp( gain, gain_exp, 32767 /*16 Q11*/, 4, &gain );
gain_exp = BASOP_Util_Add_MantExp( gain, gain_exp, 0x4000, 0, &gain );
@@ -384,9 +369,6 @@ void IGF_ErodeSpectrum( Word16 *highPassEner_exp, /**< ou
Word32 highPassEner; /* Q31 */
Word32 lastLine;
Word32 nextLine;
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Word32 L_c;
-#endif
Word32 highPassEner_Ovfl;
Word16 s;
Word16 tmploop;
@@ -400,17 +382,6 @@ void IGF_ErodeSpectrum( Word16 *highPassEner_exp, /**< ou
Word16 tmp;
Word32 L_tmp;
-#if !defined( FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW ) && !defined( ISSUE_1867_replace_overflow_libenc )
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Flag Carry = 0;
-#endif
- move32();
- move32();
-#endif
-#endif
-
hPrivateData = &hInstance->igfData;
hGrid = &hPrivateData->igfInfo.grid[igfGridIdx];
igfBgn = hGrid->startLine;
@@ -441,32 +412,14 @@ void IGF_ErodeSpectrum( Word16 *highPassEner_exp, /**< ou
IF( igfBgn > 0 )
{
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_c = 0;
- move32();
-#else
Word64 W_highPassEner = 0;
move64();
-#endif
FOR( i = 0; i < igfBgn; i++ )
{
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Carry = 0;
- move32();
- highPassEner = L_add_co( highPassEner, Mpy_32_16_1( pPowerSpectrum[i], shl( i, 4 ) /*Q4*/ ) /*Q20, pPowerSpectrum_exp*/, &Carry, &Overflow );
- Overflow = 0;
- move32();
- L_c = L_macNs_co( L_c, 0, 0, &Carry, &Overflow );
-#else
W_highPassEner = W_add( W_highPassEner, W_deposit32_l( Mpy_32_16_1( pPowerSpectrum[i], shl( i, 4 ) /*Q4*/ ) ) /*Q20, pPowerSpectrum_exp*/ );
-#endif
}
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- highPassEner = norm_llQ31( L_c, highPassEner, highPassEner_exp ); /*Q20, highPassEner_exp*/
-#else
highPassEner = w_norm_llQ31( W_highPassEner, highPassEner_exp ); /*Q20, highPassEner_exp*/
-#endif
*highPassEner_exp = add( *highPassEner_exp, pPowerSpectrum_exp );
move16();
test();
@@ -487,13 +440,8 @@ void IGF_ErodeSpectrum( Word16 *highPassEner_exp, /**< ou
/* May overflow - just for threshold comparison */
/* negate because the negated may be 1 larger in abs, */
/* so whenever compared to the negation of a maximum possible pPowerspectrum, it is still larger */
-#ifdef ISSUE_1867_replace_overflow_libenc
highPassEner_Ovfl = L_shl_sat( L_negate( highPassEner ), sub( *highPassEner_exp, pPowerSpectrum_exp ) );
L_tmp = L_add_sat( pPowerSpectrum[i - 1], highPassEner_Ovfl );
-#else
- highPassEner_Ovfl = L_shl_o( L_negate( highPassEner ), sub( *highPassEner_exp, pPowerSpectrum_exp ), &Overflow );
- L_tmp = L_add_o( pPowerSpectrum[i - 1], highPassEner_Ovfl, &Overflow );
-#endif
if ( L_tmp >= 0 )
{
@@ -930,22 +878,12 @@ Word16 IGF_getSFM( /**< out: Q15| SFM value
Word16 invDenom_exp, numf_exp;
Word16 numf;
Word32 SFM32;
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Word32 L_c;
-#endif
Word16 invDenom, SFM;
#ifdef BASOP_NOGLOB_DECLARE_LOCAL
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Flag Overflow = 0;
- Flag Carry = 0;
-#endif
move32();
move32();
#endif
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- L_c = 0;
-#endif
move32();
num = 0;
move32();
@@ -976,23 +914,10 @@ Word16 IGF_getSFM( /**< out: Q15| SFM value
n = s_max( 0, n );
num = L_add( num, L_deposit_l( n ) ); /*Q0*/
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- Carry = 0;
- move32();
- denom = L_add_co( energy[i], denom, &Carry, &Overflow );
- Overflow = 0;
- move32();
- L_c = L_macNs_co( L_c, 0, 0, &Carry, &Overflow );
-#else
W_denom = W_add( W_deposit32_l( energy[i] ), W_denom );
-#endif
}
-#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
- denom = norm_llQ31( L_c, denom, &denom_exp ); /*Q31*/
-#else
denom = w_norm_llQ31( W_denom, &denom_exp ); /*Q31*/
-#endif
denom_exp = add( denom_exp, *energy_exp );
/* calculate SFM only if signal is present */
diff --git a/lib_enc/init_enc_fx.c b/lib_enc/init_enc_fx.c
index b3ddbf663f702cbd1db6b37f5bdc9dc3563b2b73..6d5618ee1aea0b6ec74127325ecc50d71680ec80 100644
--- a/lib_enc/init_enc_fx.c
+++ b/lib_enc/init_enc_fx.c
@@ -20,9 +20,9 @@
*-----------------------------------------------------------------------*/
ivas_error init_encoder_fx(
- Encoder_State *st_fx, /* i/o: Encoder static variables structure */
- const int16_t var_SID_rate_flag, /* i : flag for variable SID update rate */
- const int16_t interval_SID /* i : interval for SID update */
+ Encoder_State *st_fx, /* i/o: Encoder static variables structure */
+ const Word16 var_SID_rate_flag, /* i : flag for variable SID update rate */
+ const Word16 interval_SID /* i : interval for SID update */
)
{
Word16 i;
diff --git a/lib_enc/inov_enc_fx.c b/lib_enc/inov_enc_fx.c
index 88f95864599a7aebc516b70f56e4f4790203ea48..536cf1479736567f950faf63cc395d23de7e92c5 100644
--- a/lib_enc/inov_enc_fx.c
+++ b/lib_enc/inov_enc_fx.c
@@ -13,7 +13,7 @@
/*==============================================================================*/
-/* FUNCTION : inov_encode_fx() */
+/* FUNCTION : inov_encode_fx() */
/*------------------------------------------------------------------------------*/
/* PURPOSE : Encode the algebraic innovation */
/*------------------------------------------------------------------------------*/
@@ -333,7 +333,6 @@ Word16 inov_encode_fx(
}
}
-
/*----------------------------------------------------------------*
* Pitch sharpening
*----------------------------------------------------------------*/
@@ -343,6 +342,7 @@ Word16 inov_encode_fx(
return stack_pulses;
}
+
Word16 inov_encode_ivas_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
const Word32 core_brate, /* i : core bitrate */
@@ -743,7 +743,6 @@ Word16 inov_encode_ivas_fx(
}
}
-
/*----------------------------------------------------------------*
* Pitch sharpening
*----------------------------------------------------------------*/
diff --git a/lib_enc/ivas_agc_enc_fx.c b/lib_enc/ivas_agc_enc_fx.c
index d74e10bdaf25ea124ae9326ad807ac835e6e6e97..10d7cb8c71c2b736bc7fa24bbd467bed6f7dc94b 100644
--- a/lib_enc/ivas_agc_enc_fx.c
+++ b/lib_enc/ivas_agc_enc_fx.c
@@ -49,13 +49,14 @@
#define TWO_IN_Q29 1073741824
#define ONE_MINUS_M_DELTA_PROD_FLT_FC 1073741824 // Q15
-static Word16 ceil_fx( Word16 inp, Word16 Q );
-static Word32 pow32_fx( Word16 inp, Word16 indx );
-static Word16 BASOP_Util_Cmp_Mant32Exp_sat( Word32 a_m, Word16 a_e, Word32 b_m, Word16 b_e );
-static Word16 ceil_fx( Word16 inp, Word16 Q )
+
+static Word16 ceil_fx_loc(
+ const Word16 inp,
+ const Word16 Q )
{
Word16 ret;
Word32 ret_32;
+
IF( inp > 0 )
{
IF( EQ_16( Q, 15 ) )
@@ -77,7 +78,8 @@ static Word16 ceil_fx( Word16 inp, Word16 Q )
return ret;
}
-Word16 BASOP_Util_Cmp_Mant32Exp_sat /*!< o: flag: result of comparison */
+
+static Word16 BASOP_Util_Cmp_Mant32Exp_sat /*!< o: flag: result of comparison */
/* 0, if a == b */
/* 1, if a > b */
/* -1, if a < b */
@@ -90,7 +92,6 @@ Word16 BASOP_Util_Cmp_Mant32Exp_sat /*!< o: flag: result of comparison */
Word32 diff_m;
Word16 diff_e, shift, result;
-
/*
This function compares two input parameters, both represented by a 32-bit mantissa and a 16-bit exponent.
If both values are identical, 0 is returned.
@@ -171,7 +172,9 @@ Word16 BASOP_Util_Cmp_Mant32Exp_sat /*!< o: flag: result of comparison */
return result;
}
-Word32 pow32_fx( Word16 inp, Word16 indx )
+static Word32 pow32_fx(
+ const Word16 inp,
+ const Word16 indx )
{
Word32 temp_1, temp_2;
IF( EQ_16( indx, 1 ) )
@@ -626,7 +629,7 @@ void ivas_agc_enc_process_fx(
div_e = 0;
move16();
}
- temp_16 = ceil_fx( temp_16, sub( Q15, div_e ) ); /* Q0 */
+ temp_16 = ceil_fx_loc( temp_16, sub( Q15, div_e ) ); /* Q0 */
}
pState->gain_state[i].gainExpVal = temp_16; /* Q0 */
move16();
diff --git a/lib_enc/ivas_core_enc_fx.c b/lib_enc/ivas_core_enc_fx.c
index dfca3d7ba9845e4c7a71ae4afd16e51c5d804c0c..d03f58ed5a18ac2a0a88e363816060f8a96e35b8 100644
--- a/lib_enc/ivas_core_enc_fx.c
+++ b/lib_enc/ivas_core_enc_fx.c
@@ -697,7 +697,6 @@ ivas_error ivas_core_enc_fx(
{
/* Common pre-processing for SWB(FB) TBE and SWB(FB) BWE */
/* Scaling cldfb_state_fx */
-#ifdef FIX_2021_BANDWIDTH_EXTENSION_PROBLEM
Word16 q_shift, scf_cldfb;
scf_cldfb = L_norm_arr( st->cldfbSynTd->cldfb_state_fx, st->cldfbSynTd->p_filter_length );
@@ -719,18 +718,10 @@ ivas_error ivas_core_enc_fx(
scale_sig32( st->cldfbSynTd->cldfb_state_fx, st->cldfbSynTd->p_filter_length, q_shift ); // st->cldfbSynTd->Q_cldfb_state -> q_realImagBuffer
st->cldfbSynTd->Q_cldfb_state = sub( q_re_im_buf[n], 1 );
}
-#else
- scale_sig32( st->cldfbSynTd->cldfb_state_fx, st->cldfbSynTd->p_filter_length, sub( q_re_im_buf[n], st->cldfbSynTd->Q_cldfb_state ) ); // st->cldfbSynTd->Q_cldfb_state -> q_realImagBuffer
-#endif
swb_pre_proc_ivas_fx( st, new_swb_speech_fx_16, new_swb_speech_fx, shb_speech_fx, &Q_shb_spch, realBuffer_fx[n], imagBuffer_fx[n], q_re_im_buf[n], hCPE );
-#ifdef FIX_2021_BANDWIDTH_EXTENSION_PROBLEM
st->cldfbSynTd->Q_cldfb_state = sub( q_re_im_buf[n], 1 );
-#else
- /* Re-scaling cldfb_state_fx */
- scale_sig32( st->cldfbSynTd->cldfb_state_fx, st->cldfbSynTd->p_filter_length, negate( sub( q_re_im_buf[n], st->cldfbSynTd->Q_cldfb_state ) ) ); // q_realImagBuffer -> st->cldfbSynTd->Q_cldfb_state
-#endif
}
ELSE IF( GE_32( input_Fs, 32000 ) )
{
diff --git a/lib_enc/ivas_dirac_enc_fx.c b/lib_enc/ivas_dirac_enc_fx.c
index efd6129032cbf9f514d40cfaa97e0a960e82f55d..9886b1cb76c99b094f6b57256954cde6fbcc4700 100644
--- a/lib_enc/ivas_dirac_enc_fx.c
+++ b/lib_enc/ivas_dirac_enc_fx.c
@@ -435,7 +435,7 @@ ivas_error ivas_dirac_enc_fx(
ivas_qmetadata_direction_vector_to_azimuth_elevation_fx( &avg_dir_fx[0], Q30, &hQMetaData->q_direction[0].band_data[0].azimuth_fx[i], &hQMetaData->q_direction[0].band_data[0].elevation_fx[i] );
- Word32 tmp = dotp_fixed( avg_dir_fx, avg_dir_fx, 3 ); // 2*avg_dir_e
+ Word32 tmp = dotp_fx32( avg_dir_fx, avg_dir_fx, 3 ); // 2*avg_dir_e
Word16 tmp_e = shl( avg_dir_e, 1 );
tmp = Sqrt32( tmp, &tmp_e );
Word16 er_tmp_e = 0;
@@ -1132,9 +1132,10 @@ void ivas_dirac_param_est_enc_fx(
intensity_real_fx,
cldfb_q,
intensity_real_q );
+
IF( !hodirac_flag )
{
- computeDirectionVectors_fixed(
+ computeDirectionVectors_fx2(
intensity_real_fx[0],
intensity_real_fx[1],
intensity_real_fx[2],
@@ -1458,14 +1459,14 @@ void ivas_dirac_param_est_enc_fx(
*
*
*------------------------------------------------------------------------*/
+
static void computeIntensityVector_enc_fx(
const DIRAC_ENC_HANDLE hDirAC,
Word32 Cldfb_RealBuffer[DIRAC_MAX_ANA_CHANS][DIRAC_NO_FB_BANDS_MAX], /* q_cldfb */
Word32 Cldfb_ImagBuffer[DIRAC_MAX_ANA_CHANS][DIRAC_NO_FB_BANDS_MAX], /* q_cldfb */
const Word16 enc_param_start_band, /* i : first band to process Q0*/
const Word16 num_frequency_bands, /* Q0 */
- Word32 intensity_real[DIRAC_NUM_DIMS][DIRAC_MAX_NBANDS] /* q_intensity_real */
- ,
+ Word32 intensity_real[DIRAC_NUM_DIMS][DIRAC_MAX_NBANDS], /* q_intensity_real */
Word16 q_cldfb,
Word16 q_intensity_real[DIRAC_MAX_NBANDS] )
{
diff --git a/lib_enc/ivas_enc_fx.c b/lib_enc/ivas_enc_fx.c
index c4d7b75a7ec81a0cfa02fce7e2f9a5135aedf0cf..095d4c2cf4e1c4ebfc579ce37ee4297db16f2c9b 100644
--- a/lib_enc/ivas_enc_fx.c
+++ b/lib_enc/ivas_enc_fx.c
@@ -310,7 +310,7 @@ ivas_error ivas_enc_fx(
/* Stereo transport is used also with monoMASA, duplicate mono if monoMASA */
IF( EQ_16( sub( st_ivas->hEncoderConfig->nchan_inp, hEncoderConfig->nchan_ism ), 1 ) )
{
- v_multc_fixed( data_fx[hEncoderConfig->nchan_ism], L_deposit_h( INV_SQRT2_FX_Q15 ) /* Q31 */, data_fx[hEncoderConfig->nchan_ism], input_frame );
+ v_multc_fx( data_fx[hEncoderConfig->nchan_ism], L_deposit_h( INV_SQRT2_FX_Q15 ) /* Q31 */, data_fx[hEncoderConfig->nchan_ism], input_frame );
Copy32( data_fx[hEncoderConfig->nchan_ism], data_fx[hEncoderConfig->nchan_ism + 1], input_frame ); /* st_ivas->q_data_fx */
}
diff --git a/lib_enc/ivas_front_vad_fx.c b/lib_enc/ivas_front_vad_fx.c
index ce09abdbc0e3806675880b57ba31e6820fdad1c9..99da0175f5811480995bcaa76c6323584143300c 100644
--- a/lib_enc/ivas_front_vad_fx.c
+++ b/lib_enc/ivas_front_vad_fx.c
@@ -304,7 +304,7 @@ ivas_error front_vad_fx(
IF( EQ_16( n_chan, CPE_CHANNELS ) )
{
/* get average channel energies, adding up was already done, so only need to scale by number of channels */
- v_multc_fixed( &band_energies_LR_fx[0], ONE_IN_Q30 /* 0.5f in Q31 */, &band_energies_LR_fx[0], 2 * NB_BANDS );
+ v_multc_fx( &band_energies_LR_fx[0], ONE_IN_Q30 /* 0.5f in Q31 */, &band_energies_LR_fx[0], 2 * NB_BANDS );
/* Logical OR between L and R decisions */
test();
diff --git a/lib_enc/ivas_init_enc_fx.c b/lib_enc/ivas_init_enc_fx.c
index 08cdfd044ecab931e1796de1f02f525b81972618..6b1185b1e40dba82ffc0307eb949293da2c3f9e5 100644
--- a/lib_enc/ivas_init_enc_fx.c
+++ b/lib_enc/ivas_init_enc_fx.c
@@ -279,6 +279,8 @@ Word16 getNumChanAnalysis_fx(
return n;
}
+
+
/*-------------------------------------------------------------------*
* copy_encoder_config_fx()
*
@@ -421,6 +423,7 @@ void ivas_initialize_handles_enc_fx(
*
* Initialize IVAS encoder state structure
*-------------------------------------------------------------------*/
+
ivas_error ivas_init_encoder_fx(
Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
)
@@ -464,7 +467,7 @@ ivas_error ivas_init_encoder_fx(
move16();
/*-----------------------------------------------------------------*
- * Allocate floating-point input audio buffers
+ * Allocate input audio buffers
*-----------------------------------------------------------------*/
nchan_inp_buff = hEncoderConfig->nchan_inp; /* Q0 */
@@ -489,7 +492,7 @@ ivas_error ivas_init_encoder_fx(
/* note: these are intra-frame heap memories */
IF( ( st_ivas->p_data_fx[n] = (Word32 *) malloc( Mpy_32_16_1( input_Fs, INV_FRAME_PER_SEC_Q15 ) * sizeof( Word32 ) ) ) == NULL )
{
- return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for floating-point input audio buffer!\n" ) );
+ return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for input audio buffer!\n" ) );
}
set32_fx( st_ivas->p_data_fx[n], 0, extract_l( Mpy_32_16_1( input_Fs, INV_FRAME_PER_SEC_Q15 ) ) );
}
@@ -773,9 +776,6 @@ ivas_error ivas_init_encoder_fx(
}
ELSE IF( EQ_32( ivas_format, SBA_ISM_FORMAT ) )
{
- st_ivas->ism_mode = ISM_MODE_NONE;
- move16();
-
st_ivas->ism_mode = ivas_osba_ism_mode_select( ivas_total_brate, st_ivas->hEncoderConfig->nchan_ism );
IF( ( error = ivas_ism_metadata_enc_create_fx( st_ivas, hEncoderConfig->nchan_ism, element_brate_tmp ) ) != IVAS_ERR_OK )
@@ -833,12 +833,8 @@ ivas_error ivas_init_encoder_fx(
ELSE
{
/* allocate and initialize MCT core coder */
- {
- int16_t n_all;
-
- n_all = add( st_ivas->nchan_transport, st_ivas->hEncoderConfig->nchan_ism );
- st_ivas->nCPE = shr_r( n_all, 1 );
- }
+ Word16 n_all = add( st_ivas->nchan_transport, st_ivas->hEncoderConfig->nchan_ism );
+ st_ivas->nCPE = shr_r( n_all, 1 );
iDiv_and_mod_32( ivas_total_brate, st_ivas->nchan_transport, &tmp_br, &tmp32, 0 );
tmp_br = L_shl( tmp_br, CPE_CHANNELS_LOG2 );
@@ -865,7 +861,7 @@ ivas_error ivas_init_encoder_fx(
st_ivas->mc_mode = ivas_mc_mode_select_fx( hEncoderConfig->mc_input_setup, ivas_total_brate ); /* Q0 */
move32();
- IF( ( error = ivas_create_lfe_lpf_enc_fx( &st_ivas->hLfeLpf, hEncoderConfig->input_Fs ) ) != IVAS_ERR_OK )
+ IF( ( error = ivas_create_lfe_lpf_enc_fx( &st_ivas->hLfeLpf, input_Fs ) ) != IVAS_ERR_OK )
{
return error;
}
@@ -977,6 +973,7 @@ ivas_error ivas_init_encoder_fx(
{
return error;
}
+
ivas_mcmasa_split_brate_fx( st_ivas->hMcMasa->separateChannelEnabled, ivas_total_brate, st_ivas->nSCE, st_ivas->nCPE, &brate_sce, &brate_cpe );
FOR( sce_id = 0; sce_id < st_ivas->nSCE; sce_id++ )
@@ -1032,6 +1029,8 @@ ivas_error ivas_init_encoder_fx(
return error;
}
+
+
/*-------------------------------------------------------------------------
* destroy_core_enc()
*
@@ -1190,6 +1189,7 @@ void destroy_core_enc_fx(
return;
}
+
void destroy_evs_core_enc_fx(
ENC_CORE_HANDLE hCoreCoder /* i/o: core encoder structure */
)
@@ -1347,11 +1347,13 @@ void destroy_evs_core_enc_fx(
*
* Close IVAS encoder handles
*-------------------------------------------------------------------------*/
+
void ivas_destroy_enc_fx(
Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
)
{
Word16 i, n, nchan_inp;
+
nchan_inp = st_ivas->hEncoderConfig->nchan_inp;
move16();
@@ -1459,7 +1461,7 @@ void ivas_destroy_enc_fx(
free( st_ivas->ind_list_metadata );
}
- /* floating-point input audio buffers */
+ /* input audio buffers */
FOR( n = 0; n < MAX_INPUT_CHANNELS + MAX_NUM_OBJECTS; n++ )
{
IF( st_ivas->p_data_fx[n] != NULL )
@@ -1475,6 +1477,7 @@ void ivas_destroy_enc_fx(
return;
}
+
/*-------------------------------------------------------------------------
* ivas_initialize_MD_bstr_enc_fx()
*
diff --git a/lib_enc/ivas_ism_enc_fx.c b/lib_enc/ivas_ism_enc_fx.c
index 6b75a6be7494dc6490eeb62381b0840438e4a4f5..d3aaa46caa6fa269dbf1f00a99bbf860cc59ae0e 100644
--- a/lib_enc/ivas_ism_enc_fx.c
+++ b/lib_enc/ivas_ism_enc_fx.c
@@ -520,7 +520,6 @@ ivas_error ivas_ism_enc_fx(
dbgwrite( &tmpF, sizeof( float ), 1, input_frame, fname( debug_dir, "element_brate", 0, id, ENC ) );
}
#endif
-
pop_wmops();
return error;
diff --git a/lib_enc/ivas_masa_enc_fx.c b/lib_enc/ivas_masa_enc_fx.c
index 2905491e3c7d20697ac3c905f1b4ea77ab4f2f0b..7d8a0f8354eaed50eefa768990027c5a38fe4e49 100644
--- a/lib_enc/ivas_masa_enc_fx.c
+++ b/lib_enc/ivas_masa_enc_fx.c
@@ -2774,7 +2774,7 @@ static Word16 encode_lfe_to_total_energy_ratio_fx(
FOR( i = 0; i < MAX_PARAM_SPATIAL_SUBFRAMES; i++ )
{
// log2LFEratio[i] = log2f( max( 0.001f, hMasa->data.lfeToTotalEnergyRatio[i] ) );
- maxVal = 2147484 /* 0.001f in Q31 */;
+ maxVal = INV_1000_Q31;
move32();
maxVal_e = 0;
move16();
diff --git a/lib_enc/ivas_mcmasa_enc_fx.c b/lib_enc/ivas_mcmasa_enc_fx.c
index 5c8822919feef1571338decf22762ada6081021e..280da94568e28c042476055c9fef075341e20982 100644
--- a/lib_enc/ivas_mcmasa_enc_fx.c
+++ b/lib_enc/ivas_mcmasa_enc_fx.c
@@ -286,7 +286,7 @@ ivas_error ivas_mcmasa_enc_open_fx(
bufferSize = (Word16) ( ( input_Fs / FRAMES_PER_SEC ) / MAX_PARAM_SPATIAL_SUBFRAMES );
FOR( i = 0; i < 2; i++ )
{
- IF( ( hMcMasa->lfeAnaRingBuffer[i] = (Word32 *) malloc( bufferSize * sizeof( float ) ) ) == NULL )
+ IF( ( hMcMasa->lfeAnaRingBuffer[i] = (Word32 *) malloc( bufferSize * sizeof( Word32 ) ) ) == NULL )
{
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for McMasa\n" ) );
}
@@ -1108,8 +1108,8 @@ void ivas_mcmasa_param_est_enc_fx(
}
/* Y */
- v_multc_fixed( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[1][0], Foa_RealBuffer_fx[1], num_freq_bins ); // inp_q
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[1][0], Foa_ImagBuffer_fx[1], num_freq_bins ); // inp_q
+ v_multc_fx( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[1][0], Foa_RealBuffer_fx[1], num_freq_bins ); // inp_q
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[1][0], Foa_ImagBuffer_fx[1], num_freq_bins ); // inp_q
FOR( i = 1; i < numAnalysisChannels; i++ )
{
v_multc_acc_32_32( Chnl_RealBuffer_fx[i], hMcMasa->chnlToFoaMtx_fx[1][i], Foa_RealBuffer_fx[1], num_freq_bins ); // inp_q
@@ -1125,8 +1125,8 @@ void ivas_mcmasa_param_est_enc_fx(
}
ELSE
{
- v_multc_fixed( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[2][0], Foa_RealBuffer_fx[2], num_freq_bins ); // inp_q
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[2][0], Foa_ImagBuffer_fx[2], num_freq_bins ); // inp_q
+ v_multc_fx( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[2][0], Foa_RealBuffer_fx[2], num_freq_bins ); // inp_q
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[2][0], Foa_ImagBuffer_fx[2], num_freq_bins ); // inp_q
FOR( i = 1; i < numAnalysisChannels; i++ )
{
v_multc_acc_32_32( Chnl_RealBuffer_fx[i], hMcMasa->chnlToFoaMtx_fx[2][i], Foa_RealBuffer_fx[2], num_freq_bins ); // inp_q
@@ -1135,8 +1135,8 @@ void ivas_mcmasa_param_est_enc_fx(
}
/* X */
- v_multc_fixed( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[3][0], Foa_RealBuffer_fx[3], num_freq_bins ); // inp_q
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[3][0], Foa_ImagBuffer_fx[3], num_freq_bins ); // inp_q
+ v_multc_fx( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[3][0], Foa_RealBuffer_fx[3], num_freq_bins ); // inp_q
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[3][0], Foa_ImagBuffer_fx[3], num_freq_bins ); // inp_q
FOR( i = 1; i < numAnalysisChannels; i++ )
{
v_multc_acc_32_32( Chnl_RealBuffer_fx[i], hMcMasa->chnlToFoaMtx_fx[3][i], Foa_RealBuffer_fx[3], num_freq_bins ); // inp_q
@@ -1149,8 +1149,8 @@ void ivas_mcmasa_param_est_enc_fx(
Copy32( Foa_ImagBuffer_fx[0], FoaEven_ImagBuffer_fx[0], num_freq_bins ); // inp_q
/* Y */
- v_multc_fixed( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[1][0], FoaEven_RealBuffer_fx[1], num_freq_bins ); // inp_q
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[1][0], FoaEven_ImagBuffer_fx[1], num_freq_bins ); // inp_q
+ v_multc_fx( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[1][0], FoaEven_RealBuffer_fx[1], num_freq_bins ); // inp_q
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[1][0], FoaEven_ImagBuffer_fx[1], num_freq_bins ); // inp_q
FOR( i = 1; i < numAnalysisChannels; i++ )
{
v_multc_acc_32_32( Chnl_RealBuffer_fx[i], hMcMasa->chnlToFoaEvenMtx_fx[1][i], FoaEven_RealBuffer_fx[1], num_freq_bins ); // inp_q
@@ -1162,8 +1162,8 @@ void ivas_mcmasa_param_est_enc_fx(
set_zero_fx( FoaEven_ImagBuffer_fx[2], num_freq_bins ); // inp_q
/* X */
- v_multc_fixed( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[3][0], FoaEven_RealBuffer_fx[3], num_freq_bins ); // inp_q
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[3][0], FoaEven_ImagBuffer_fx[3], num_freq_bins ); // inp_q
+ v_multc_fx( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[3][0], FoaEven_RealBuffer_fx[3], num_freq_bins ); // inp_q
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[3][0], FoaEven_ImagBuffer_fx[3], num_freq_bins ); // inp_q
FOR( i = 1; i < numAnalysisChannels; i++ )
{
v_multc_acc_32_32( Chnl_RealBuffer_fx[i], hMcMasa->chnlToFoaEvenMtx_fx[3][i], FoaEven_RealBuffer_fx[3], num_freq_bins ); // inp_q
@@ -1181,7 +1181,7 @@ void ivas_mcmasa_param_est_enc_fx(
q_intensity_real_fx,
inp_q );
- computeDirectionVectors_fixed(
+ computeDirectionVectors_fx2(
intensity_real_fx[0],
intensity_real_fx[1],
intensity_real_fx[2],
diff --git a/lib_enc/ivas_mct_core_enc_fx.c b/lib_enc/ivas_mct_core_enc_fx.c
index e42ee56d716ea63ea6e34bd259c3f08430bca1fc..9bbf1260c8ed61e487b4b01a99eb6c38ebaea869 100644
--- a/lib_enc/ivas_mct_core_enc_fx.c
+++ b/lib_enc/ivas_mct_core_enc_fx.c
@@ -333,14 +333,10 @@ void ivas_mct_core_enc_fx(
{
FOR( ch = 0; ch < CPE_CHANNELS; ch++ )
{
-#ifdef ADJUST_MCT_CHANNELS_MAX
IF( LT_16( add( i_mult( cpe_id, CPE_CHANNELS ), ch ), nChannels ) )
{
-#endif
sts[i] = hCPE[cpe_id]->hCoreCoder[ch];
-#ifdef ADJUST_MCT_CHANNELS_MAX
}
-#endif
IF( EQ_32( hCPE[cpe_id]->hCoreCoder[ch]->mct_chan_mode, MCT_CHAN_MODE_IGNORE ) )
{
diff --git a/lib_enc/ivas_mct_enc_mct_fx.c b/lib_enc/ivas_mct_enc_mct_fx.c
index 0918c51d24cde78794b32dba5e23234010be407b..d402d834f9fa1b5dcbd409f5902e09c25ee907da 100644
--- a/lib_enc/ivas_mct_enc_mct_fx.c
+++ b/lib_enc/ivas_mct_enc_mct_fx.c
@@ -153,7 +153,7 @@ static void getNextBestCorrelation_fx(
tmp_idx = sub( shr( imult1616( nChannels, sub( nChannels, 1 ) ), 1 ), 1 );
/* sort values */
- v_sort_ind_fixed( tmp_corrVals, tmp_org, add( tmp_idx, 1 ) );
+ v_sort_ind_fx( tmp_corrVals, tmp_org, add( tmp_idx, 1 ) );
/* get max, or 2nd max and so on depending on sortInd value */
*max_corr = tmp_corrVals[( tmp_idx - sortInd )]; // Qx
@@ -236,7 +236,7 @@ static void getCorrelationMatrix_fx(
FOR( n = 0; n < nSubframes; n++ )
{
res_q = sub( 31, sts[0]->hTcxEnc->spectrum_e[0] );
- L_tmp = dotp_fixed_32( sts[ch1]->hTcxEnc->spectrum_fx[n], sts[ch2]->hTcxEnc->spectrum_fx[n], L_subframe, 1, &res_q );
+ L_tmp = dotp_fx32_fac( sts[ch1]->hTcxEnc->spectrum_fx[n], sts[ch2]->hTcxEnc->spectrum_fx[n], L_subframe, 1, &res_q );
xCorrMatrix[ch1][ch2] = BASOP_Util_Add_Mant32Exp( xCorrMatrix[ch1][ch2], xCorrMatrix_exp[ch1][ch2], L_tmp, sub( 31, res_q ), &xCorrMatrix_exp[ch1][ch2] );
move32();
}
@@ -607,8 +607,8 @@ static void getGlobalILD_fx(
FOR( k = 0; k < nSubframes; k++ )
{
- v_multc_fixed( sts[ch]->hTcxEnc->spectrum_fx[k], L_deposit_h( qratio ), sts[ch]->hTcxEnc->spectrum_fx[k], L_subframe ); // sts[ch]->hTcxEnc->spectrum_e
- v_multc_fixed( mdst_spectrum[ch][k], L_deposit_h( qratio ), mdst_spectrum[ch][k], L_subframe ); // sts[ch]->hTcxEnc->spectrum_e
+ v_multc_fx( sts[ch]->hTcxEnc->spectrum_fx[k], L_deposit_h( qratio ), sts[ch]->hTcxEnc->spectrum_fx[k], L_subframe ); // sts[ch]->hTcxEnc->spectrum_e
+ v_multc_fx( mdst_spectrum[ch][k], L_deposit_h( qratio ), mdst_spectrum[ch][k], L_subframe ); // sts[ch]->hTcxEnc->spectrum_e
}
}
}
@@ -874,8 +874,8 @@ void apply_MCT_enc_fx(
FOR( k = 0; k < nSubframes; k++ )
{
- v_multc_fixed( sts[ch]->hTcxEnc->spectrum_fx[k], L_deposit_h( qratio ), sts[ch]->hTcxEnc->spectrum_fx[k], L_subframeTCX );
- v_multc_fixed( mdst_spectrum[ch][k], L_deposit_h( qratio ), mdst_spectrum[ch][k], L_subframeTCX );
+ v_multc_fx( sts[ch]->hTcxEnc->spectrum_fx[k], L_deposit_h( qratio ), sts[ch]->hTcxEnc->spectrum_fx[k], L_subframeTCX );
+ v_multc_fx( mdst_spectrum[ch][k], L_deposit_h( qratio ), mdst_spectrum[ch][k], L_subframeTCX );
set32_fx( inv_spectrum[ch][k], 0, L_subframeTCX );
}
sts[ch]->hTcxEnc->spectrum_e[1] = add( sts[ch]->hTcxEnc->spectrum_e[0], exp );
diff --git a/lib_enc/ivas_mdct_core_enc_fx.c b/lib_enc/ivas_mdct_core_enc_fx.c
index 86ea8ebe919149397275a57349d1472ac931e4ca..b4eba62010700dd4e91a3944c7a4f0b6b936d6f9 100644
--- a/lib_enc/ivas_mdct_core_enc_fx.c
+++ b/lib_enc/ivas_mdct_core_enc_fx.c
@@ -362,8 +362,8 @@ static void kernel_switch_trafo_fx(
tmp = BASOP_Util_Divide1616_Scale( NORM_MDCT_FACTOR, add( shr( l, 1 ), add( m, shr( r, 1 ) ) ), &exp_tmp );
tmp = Sqrt16( tmp, &exp_tmp );
- factor = L_shl( L_deposit_h( tmp ), sub( exp_tmp, 1 ) ); // Q30
- v_multc_fixed( y, factor, y, add( shr( l, 1 ), add( m, shr( r, 1 ) ) ) ); // (Q_in, Q30) -> Q_in - 1
+ factor = L_shl( L_deposit_h( tmp ), sub( exp_tmp, 1 ) ); // Q30
+ v_multc_fx( y, factor, y, add( shr( l, 1 ), add( m, shr( r, 1 ) ) ) ); // (Q_in, Q30) -> Q_in - 1
return;
}
@@ -440,7 +440,7 @@ static void kernel_switch_update_transforms_fx(
tmp = BASOP_Util_Divide1616_Scale( NORM_MDCT_FACTOR, s, &exp_tmp );
tmp = Sqrt16( tmp, &exp_tmp );
factor = L_shl( L_deposit_h( tmp ), sub( exp_tmp, Q1 ) ); // Q30
- v_multc_fixed( sigR, factor, sigR, s ); // (Q6, Q30) -> Q5
+ v_multc_fx( sigR, factor, sigR, s ); // (Q6, Q30) -> Q5
q_com = L_norm_arr( sigR, s );
q_com = s_min( add( q_com, Q5 ), *q_sig );
@@ -591,8 +591,8 @@ static void kernel_switch_update_transforms_fx(
Word16 tmp, exp_tmp;
Word32 factor;
tmp = BASOP_Util_Divide1616_Scale( bwidthSwCnt, BWS_TRAN_PERIOD, &exp_tmp );
- factor = L_shl( L_deposit_h( tmp ), exp_tmp ); // Q31
- v_multc_fixed( sigR + L_FRAME16k / nSubframes, factor, sigR + L_FRAME16k / nSubframes, sub( s, idiv1616( L_FRAME16k, nSubframes ) ) ); // *q_sig
+ factor = L_shl( L_deposit_h( tmp ), exp_tmp ); // Q31
+ v_multc_fx( sigR + L_FRAME16k / nSubframes, factor, sigR + L_FRAME16k / nSubframes, sub( s, idiv1616( L_FRAME16k, nSubframes ) ) ); // *q_sig
}
return;
diff --git a/lib_enc/ivas_omasa_enc_fx.c b/lib_enc/ivas_omasa_enc_fx.c
index cbbbacf0988baa19a531b61698278e2acbf53bcf..166bd67318dff995663cc884565ce74a3dc2bf0f 100644
--- a/lib_enc/ivas_omasa_enc_fx.c
+++ b/lib_enc/ivas_omasa_enc_fx.c
@@ -961,7 +961,6 @@ void ivas_set_surplus_brate_enc(
dbgwrite( &tmpF, 4, 1, input_frame, "res/brate_MASA_MD" ); /* == MASA MD bitrate */
}
#endif
-
return;
}
@@ -1222,8 +1221,8 @@ static void ivas_omasa_param_est_enc_fx(
}
/* Y */
- v_multc_fixed( Chnl_RealBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[1][0], Foa_RealBuffer_fx[1], num_freq_bins ); /*q*/
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[1][0], Foa_ImagBuffer_fx[1], num_freq_bins ); /*q*/
+ v_multc_fx( Chnl_RealBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[1][0], Foa_RealBuffer_fx[1], num_freq_bins ); /*q*/
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[1][0], Foa_ImagBuffer_fx[1], num_freq_bins ); /*q*/
FOR( i = 1; i < nchan_ism; i++ )
{
v_multc_acc_32_32( Chnl_RealBuffer_fx[i], hOMasa->chnlToFoaMtx_fx[1][i], Foa_RealBuffer_fx[1], num_freq_bins ); /*q*/
@@ -1231,30 +1230,29 @@ static void ivas_omasa_param_est_enc_fx(
}
/* Z */
- v_multc_fixed( Chnl_RealBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[2][0], Foa_RealBuffer_fx[2], num_freq_bins ); /*q*/
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[2][0], Foa_ImagBuffer_fx[2], num_freq_bins ); /*q*/
+ v_multc_fx( Chnl_RealBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[2][0], Foa_RealBuffer_fx[2], num_freq_bins ); /*q*/
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[2][0], Foa_ImagBuffer_fx[2], num_freq_bins ); /*q*/
FOR( i = 1; i < nchan_ism; i++ )
{
v_multc_acc_32_32( Chnl_RealBuffer_fx[i], hOMasa->chnlToFoaMtx_fx[2][i], Foa_RealBuffer_fx[2], num_freq_bins ); /*q*/
v_multc_acc_32_32( Chnl_ImagBuffer_fx[i], hOMasa->chnlToFoaMtx_fx[2][i], Foa_ImagBuffer_fx[2], num_freq_bins ); /*q*/
}
-
/* X */
- v_multc_fixed( Chnl_RealBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[3][0], Foa_RealBuffer_fx[3], num_freq_bins ); /*q*/
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[3][0], Foa_ImagBuffer_fx[3], num_freq_bins ); /*q*/
+ v_multc_fx( Chnl_RealBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[3][0], Foa_RealBuffer_fx[3], num_freq_bins ); /*q*/
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[3][0], Foa_ImagBuffer_fx[3], num_freq_bins ); /*q*/
FOR( i = 1; i < nchan_ism; i++ )
{
v_multc_acc_32_32( Chnl_RealBuffer_fx[i], hOMasa->chnlToFoaMtx_fx[3][i], Foa_RealBuffer_fx[3], num_freq_bins ); /*q*/
v_multc_acc_32_32( Chnl_ImagBuffer_fx[i], hOMasa->chnlToFoaMtx_fx[3][i], Foa_ImagBuffer_fx[3], num_freq_bins ); /*q*/
}
+
/* Direction estimation */
computeIntensityVector_enc_fx( hOMasa->band_grouping, Foa_RealBuffer_fx, Foa_ImagBuffer_fx, num_freq_bands, intensity_real_fx, q_intensity_real_fx, q );
- computeDirectionVectors_fixed( intensity_real_fx[0], intensity_real_fx[1], intensity_real_fx[2], 0, num_freq_bands, direction_vector_fx[0], direction_vector_fx[1], direction_vector_fx[2], 0, q_intensity_real_fx );
+ computeDirectionVectors_fx2( intensity_real_fx[0], intensity_real_fx[1], intensity_real_fx[2], 0, num_freq_bands, direction_vector_fx[0], direction_vector_fx[1], direction_vector_fx[2], 0, q_intensity_real_fx );
/* Power estimation for diffuseness */
-
computeReferencePower_omasa_ivas_fx( hOMasa->band_grouping, Foa_RealBuffer_fx, Foa_ImagBuffer_fx, reference_power_fx[ts], 0, num_freq_bands, q, q_reference_power_fx );
minimum_fx( q_intensity_real_fx, num_freq_bands, &intensity_real_e );
@@ -1293,7 +1291,7 @@ static void ivas_omasa_param_est_enc_fx(
Copy32( reference_power_fx[ts], &( hOMasa->buffer_energy_fx[( index - 1 ) * num_freq_bands] ), num_freq_bands );
hOMasa->buffer_energy_q[( index - 1 )] = sub( 31, ref_exp );
move16();
- computeDiffuseness_fixed( hOMasa->buffer_intensity_real_fx, hOMasa->buffer_energy_fx, num_freq_bands, diffuseness_vector_fx, hOMasa->buffer_intensity_real_q, hOMasa->buffer_energy_q, &q_diffuseness_vector );
+ computeDiffuseness_fx( hOMasa->buffer_intensity_real_fx, hOMasa->buffer_energy_fx, num_freq_bands, diffuseness_vector_fx, hOMasa->buffer_intensity_real_q, hOMasa->buffer_energy_q, &q_diffuseness_vector );
FOR( band_m_idx = 0; band_m_idx < hOMasa->nbands; band_m_idx++ )
{
@@ -1430,14 +1428,7 @@ static void ivas_omasa_energy_and_ratio_est_fx(
{
q_cldfb = q_data;
move16();
-#ifdef FIX_1987_CRASH_OMASA_ENERGY
cldfbAnalysis_ts_fx_var_q( &( data_fx[i][l_ts * ts] ), Chnl_RealBuffer_fx[i], Chnl_ImagBuffer_fx[i], l_ts, hOMasa->cldfbAnaEnc[i], &q_cldfb );
-#else
- scale_sig32( hOMasa->cldfbAnaEnc[i]->cldfb_state_fx, hOMasa->cldfbAnaEnc[i]->cldfb_state_length, sub( q_cldfb, hOMasa->cldfbAnaEnc[i]->Q_cldfb_state ) );
- hOMasa->cldfbAnaEnc[i]->Q_cldfb_state = q_cldfb;
- move16();
- cldfbAnalysis_ts_fx_fixed_q( &( data_fx[i][l_ts * ts] ), Chnl_RealBuffer_fx[i], Chnl_ImagBuffer_fx[i], l_ts, hOMasa->cldfbAnaEnc[i], &q_cldfb );
-#endif
norm_Chnl = s_min( norm_Chnl, L_norm_arr( Chnl_ImagBuffer_fx[i], 60 ) );
norm_Chnl = s_min( norm_Chnl, L_norm_arr( Chnl_RealBuffer_fx[i], 60 ) );
}
diff --git a/lib_enc/ivas_osba_enc_fx.c b/lib_enc/ivas_osba_enc_fx.c
index 424e56e4d26131d02790cb5aaa22c67f863e9507..3629b856285ae840e4540f4f21685b290e1d624c 100644
--- a/lib_enc/ivas_osba_enc_fx.c
+++ b/lib_enc/ivas_osba_enc_fx.c
@@ -354,21 +354,19 @@ ivas_error ivas_osba_enc_reconfig(
/*-----------------------------------------------------------------*
* Allocate, initialize, and configure SCE/CPE/MCT handles
*-----------------------------------------------------------------*/
+
nchan_transport = st_ivas->nchan_transport;
test();
test();
IF( old_ism_mode == ISM_MODE_NONE && EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
{
- {
- nchan_transport = add( st_ivas->nchan_transport, st_ivas->hEncoderConfig->nchan_ism );
- st_ivas->nCPE = shr_r( nchan_transport, 1 );
- }
+ nchan_transport = add( st_ivas->nchan_transport, st_ivas->hEncoderConfig->nchan_ism );
+ st_ivas->nCPE = shr_r( nchan_transport, 1 );
}
ELSE IF( EQ_32( old_ism_mode, ISM_SBA_MODE_DISC ) && st_ivas->ism_mode == ISM_MODE_NONE )
{
nchan_transport_old = add( nchan_transport_old, st_ivas->hEncoderConfig->nchan_ism );
-
nchan_transport = st_ivas->nchan_transport;
}
ELSE IF( EQ_32( st_ivas->ism_mode, ISM_SBA_MODE_DISC ) )
@@ -377,6 +375,7 @@ ivas_error ivas_osba_enc_reconfig(
nchan_transport = add( st_ivas->nchan_transport, st_ivas->hEncoderConfig->nchan_ism );
st_ivas->nCPE = shr_r( nchan_transport, 1 );
}
+
Word16 tmp_e;
Word32 bitrate_per_chan = L_deposit_h( BASOP_Util_Divide3216_Scale( ivas_total_brate, st_ivas->nchan_transport, &tmp_e ) );
bitrate_per_chan = L_shr( bitrate_per_chan, sub( 15, tmp_e ) );
diff --git a/lib_enc/ivas_pca_enc_fx.c b/lib_enc/ivas_pca_enc_fx.c
index 2cb347a026794ad3e32d70cad242c81d02731e86..7eb4f18e71e4fc428d47427a68b9349633fd6667 100644
--- a/lib_enc/ivas_pca_enc_fx.c
+++ b/lib_enc/ivas_pca_enc_fx.c
@@ -415,9 +415,9 @@ void ivas_pca_enc_fx(
{
temp_fx32 = r_sm_fx[k * FOA_CHANNELS + k]; // min_q
move32();
- IF( LT_32( temp_fx32, L_shr( 64424, sub( 31, hPCA->old_r_sm_q ) ) ) ) // IVAS_PCA_COV_THRES in Q31
+ IF( LT_32( temp_fx32, L_shr( 64424, sub( 31, hPCA->old_r_sm_q ) ) ) ) // IVAS_PCA_COV_THRES=3e-5f in Q31
{
- temp_fx32 = L_shr( 64424, sub( 31, hPCA->old_r_sm_q ) ); // IVAS_PCA_COV_THRES in Q31 /*hPCA->old_r_sm_q */
+ temp_fx32 = L_shr( 64424, sub( 31, hPCA->old_r_sm_q ) ); // IVAS_PCA_COV_THRES=3e-5f in Q31 /*hPCA->old_r_sm_q */
}
r_sm_fx[k * FOA_CHANNELS + k] = temp_fx32; /* pointer reuse */ // hPCA->old_r_sm_q
move32();
diff --git a/lib_enc/ivas_qmetadata_enc_fx.c b/lib_enc/ivas_qmetadata_enc_fx.c
index f69127ff4ca8fb6dd175b0c337b95b509c7138a9..3f18527746af83315451c5160e22d3e48c496f38 100644
--- a/lib_enc/ivas_qmetadata_enc_fx.c
+++ b/lib_enc/ivas_qmetadata_enc_fx.c
@@ -840,9 +840,8 @@ void ivas_qmetadata_enc_sid_encode_fx(
IF( EQ_16( ivas_format, SBA_FORMAT ) )
{
-
sba_spar_bitlen = ivas_sba_spar_sid_bitlen_fx( nchan_transport );
- metadata_sid_bits = (int16_t) ( IVAS_SID_5k2 - SID_2k40 ) / FRAMES_PER_SEC - SID_FORMAT_NBITS - SBA_ORDER_BITS - SBA_PLANAR_BITS - 1; /* -1 for inactive mode header bit*/
+ metadata_sid_bits = (Word16) ( IVAS_SID_5k2 - SID_2k40 ) / FRAMES_PER_SEC - SID_FORMAT_NBITS - SBA_ORDER_BITS - SBA_PLANAR_BITS - 1; /* -1 for inactive mode header bit*/
metadata_sid_bits = sub( metadata_sid_bits, sba_spar_bitlen );
}
ELSE
@@ -851,7 +850,6 @@ void ivas_qmetadata_enc_sid_encode_fx(
move16();
}
-
/* Save initial position in bitstream */
bit_pos_start = hMetaData->nb_bits_tot;
move16();
@@ -1031,8 +1029,8 @@ void ivas_qmetadata_enc_sid_encode_fx(
{
/*compute the average direction */
ivas_qmetadata_azimuth_elevation_to_direction_vector_fx( q_direction->band_data[b].azimuth_fx[m], q_direction->band_data[b].elevation_fx[m], direction_vector_fx );
- scale_sig32( direction_vector_fx, 3, Q22 - Q30 ); // Q30 -> Q22
- v_add_fixed_no_hdrm( avg_direction_vector_fx, direction_vector_fx, avg_direction_vector_fx, 3 ); // Q22
+ scale_sig32( direction_vector_fx, 3, Q22 - Q30 ); // Q30 -> Q22
+ v_add_fx_no_hdrm( avg_direction_vector_fx, direction_vector_fx, avg_direction_vector_fx, 3 ); // Q22
}
ivas_qmetadata_direction_vector_to_azimuth_elevation_fx( avg_direction_vector_fx, Q22, &avg_azimuth_fx[b], &avg_elevation_fx[b] );
@@ -2375,7 +2373,7 @@ static Word16 ivas_qmetadata_entropy_encode_dir_fx(
/*compute the average direction */
ivas_qmetadata_azimuth_elevation_to_direction_vector_fx( q_direction->band_data[i].azimuth_fx[j], q_direction->band_data[i].elevation_fx[j], direction_vector );
scale_sig32( direction_vector, 3, -8 ); // Q30 -> Q22
- v_add_fixed_no_hdrm( avg_direction_vector, direction_vector, avg_direction_vector, 3 );
+ v_add_fx_no_hdrm( avg_direction_vector, direction_vector, avg_direction_vector, 3 );
}
}
}
@@ -2638,7 +2636,7 @@ static Word16 ivas_qmetadata_entropy_encode_dir_fx(
IF( LT_16( idx, 4 ) )
{
- v_add_fixed_no_hdrm( avg_direction_vector, direction_vector, avg_direction_vector, 3 );
+ v_add_fx_no_hdrm( avg_direction_vector, direction_vector, avg_direction_vector, 3 );
}
}
/* project the quantized average azimuth angle to the same grid as the current sample */
@@ -2669,7 +2667,7 @@ static Word16 ivas_qmetadata_entropy_encode_dir_fx(
ivas_qmetadata_azimuth_elevation_to_direction_vector_fx( q_direction->band_data[i].azimuth_fx[j], q_direction->band_data[i].elevation_fx[j], direction_vector );
scale_sig32( direction_vector, 3, -8 ); // Q30 -> Q22
- v_add_fixed_no_hdrm( avg_direction_vector, direction_vector, avg_direction_vector, 3 );
+ v_add_fx_no_hdrm( avg_direction_vector, direction_vector, avg_direction_vector, 3 );
ivas_qmetadata_direction_vector_to_azimuth_elevation_fx( avg_direction_vector, Q22, &avg_azimuth, &avg_elevation );
avg_azimuth_index_upd = quantize_phi_enc_fx( L_add( avg_azimuth, 180 << Q22 ), 0, &avg_azimuth, avg_azimuth_alphabet );
diff --git a/lib_enc/ivas_sns_enc_fx.c b/lib_enc/ivas_sns_enc_fx.c
index 252637e73999bfd53a81b60a4640118f3db6cac1..0e3c0bd405c51fedc3cdc397b35271b23f445391 100644
--- a/lib_enc/ivas_sns_enc_fx.c
+++ b/lib_enc/ivas_sns_enc_fx.c
@@ -672,7 +672,7 @@ Word16 quantize_sns_fx(
Word32 ener_side_fx;
Word16 ener_side_q;
- v_sub_fixed_no_hdrm( snsQ_out_fx[0][k], snsQ_out_fx[1][k], side_fx, M );
+ v_sub_fx_no_hdrm( snsQ_out_fx[0][k], snsQ_out_fx[1][k], side_fx, M );
Word64 L64_sum;
L64_sum = 1;
diff --git a/lib_enc/ivas_spar_encoder_fx.c b/lib_enc/ivas_spar_encoder_fx.c
index 481b969b70cc3e830d3fe8346613775ad9e90243..0b1f77245a19521319ec8798eb0f65bde6e2162b 100644
--- a/lib_enc/ivas_spar_encoder_fx.c
+++ b/lib_enc/ivas_spar_encoder_fx.c
@@ -730,9 +730,11 @@ static ivas_error ivas_spar_enc_process_fx(
{
Copy32( data_fx[HOA_keep_ind[i]], data_fx[i], input_frame );
}
+
/*-----------------------------------------------------------------------------------------*
* Transient detector
*-----------------------------------------------------------------------------------------*/
+
ivas_transient_det_process_fx( hSpar->hTranDet, data_fx[0], input_frame, transient_det );
#ifdef DEBUGGING
@@ -743,7 +745,6 @@ static ivas_error ivas_spar_enc_process_fx(
dbgwrite_txt( a, 2, "fixed.txt", NULL );
}
#endif
-
if ( LT_32( ivas_total_brate, IVAS_24k4 ) )
{
transient_det[1] = 0;
@@ -890,12 +891,14 @@ static ivas_error ivas_spar_enc_process_fx(
/*-----------------------------------------------------------------------------------------*
* Covariance and MD processing
*-----------------------------------------------------------------------------------------*/
+
IF( NE_32( ( error = ivas_spar_cov_md_process_fx( hEncoderConfig, st_ivas->hSpar, st_ivas->hQMetaData, hMetaData, nchan_inp, sba_order, ppIn_FR_real_fx, ppIn_FR_imag_fx, transient_det, dtx_vad, nchan_transport, &dyn_active_w_flag, pp_fr_q ) ), IVAS_ERR_OK ) )
{
return error;
}
set16_fx( q_p_pcm_tmp_fx, pp_fr_q, nchan_fb_in );
+
/*-----------------------------------------------------------------------------------------*
* FB mixer
*-----------------------------------------------------------------------------------------*/
@@ -972,6 +975,7 @@ static ivas_error ivas_spar_enc_process_fx(
v_add_fx( data_fx[idx], p_pcm_tmp_fx[i] + num_del_samples, p_pcm_tmp_fx[i] + num_del_samples, sub( input_frame, num_del_samples ) );
}
}
+
/*-----------------------------------------------------------------------------------------*
* PCA encoder
*-----------------------------------------------------------------------------------------*/
@@ -990,7 +994,6 @@ static ivas_error ivas_spar_enc_process_fx(
}
}
-
/*-----------------------------------------------------------------------------------------*
* AGC
*-----------------------------------------------------------------------------------------*/
diff --git a/lib_enc/ivas_stereo_dft_enc_fx.c b/lib_enc/ivas_stereo_dft_enc_fx.c
index 1eb89a74af4cab0fbcf3994b059aa5dca5c23958..e5522fb377bf0ab53db392a8fae7c58230c46efa 100644
--- a/lib_enc/ivas_stereo_dft_enc_fx.c
+++ b/lib_enc/ivas_stereo_dft_enc_fx.c
@@ -51,7 +51,7 @@
#define STEREO_DFT_NRG_PAST_MAX_BAND 9
#define STEREO_DFT_NRG_PAST_MAX_BAND_LB 4
-#define STEREO_DFT_DMX_CROSSOVER ( int16_t )( 132 * ( (float) ( STEREO_DFT_N_NS_ENC ) / STEREO_DFT_N_NS ) + 0.5f ) /* crossover bin between binwise and bandwise DMX */
+#define STEREO_DFT_DMX_CROSSOVER ( Word16 )( 132 * ( (float) ( STEREO_DFT_N_NS_ENC ) / STEREO_DFT_N_NS ) + 0.5f ) /* crossover bin between binwise and bandwise DMX */
#define ITD_VAD_E_BAND_N_INIT 200000
#define ITD_SID_PREV_FRAMES 5
diff --git a/lib_enc/ivas_stereo_dft_enc_itd_fx.c b/lib_enc/ivas_stereo_dft_enc_itd_fx.c
index aee6e3a6b3d2365b45c45fd7b2b8994097cebacd..eb23e9d01862638d7789f34c293a2818b55ecdb9 100644
--- a/lib_enc/ivas_stereo_dft_enc_itd_fx.c
+++ b/lib_enc/ivas_stereo_dft_enc_itd_fx.c
@@ -77,7 +77,7 @@
#define ITD_VAD_NOISE_INIT_FRAMES 30
#define ITD_VAD_THRSHOLD 0.001f
-#define ITD_VAD_THRSHOLD_Q31 2147484
+#define ITD_VAD_THRSHOLD_Q31 INV_1000_Q31
#define ITD_VAD_MS_SNR_UPDATE_THRESH 15.0f
#define ITD_VAD_MS_SNR_UPDATE_THRESH_FX 15
#define HIGHT_SNR_VOICE_TH 10000.0f
diff --git a/lib_enc/ivas_stereo_dft_td_itd_fx.c b/lib_enc/ivas_stereo_dft_td_itd_fx.c
index 0e404a0de6fe6e81056f5767994d4d055674f3c7..2c044625c9afe432e74c86ab81a9ddde7ce46d14 100644
--- a/lib_enc/ivas_stereo_dft_td_itd_fx.c
+++ b/lib_enc/ivas_stereo_dft_td_itd_fx.c
@@ -573,10 +573,8 @@ void stereo_td_itd_mdct_stereo_fx(
Word16 DFT_e[CPE_CHANNELS];
Word16 DFT_tmp_e[CPE_CHANNELS][STEREO_DFT_N_MAX_ENC];
STEREO_MDCT_ENC_DATA_HANDLE hStereoMdct;
-#ifdef NONBE_1203_MDCT2DFT_SWITCHING
Word16 dft_ovl;
Word16 sf;
-#endif
test();
IF( hCPE->hStereoMdct != NULL && hCPE->hStereoMdct->hItd != NULL )
@@ -615,7 +613,6 @@ void stereo_td_itd_mdct_stereo_fx(
/* Time Domain ITD compensation using extrapolation */
stereo_td_itd_fx( hStereoMdct->hItd, NULL, NULL, 1, hStereoMdct->hDft_ana->dft_ovl, hCPE->hCoreCoder, input_frame, hCPE->input_mem_fx, hCPE->q_input_mem );
}
-#ifdef NONBE_1203_MDCT2DFT_SWITCHING
ELSE IF( hCPE->input_mem_fx[0] != NULL )
{
dft_ovl = extract_l( Mpy_32_32( imult3216( input_frame, STEREO_DFT_OVL_MAX ), 2236963 ) ); // 1/L_FRAME48k = 2236963 (Q31)
@@ -628,7 +625,6 @@ void stereo_td_itd_mdct_stereo_fx(
move16();
}
}
-#endif
return;
diff --git a/lib_enc/ivas_stereo_ica_enc_fx.c b/lib_enc/ivas_stereo_ica_enc_fx.c
index e5c7af987416ee004fd5405e36a175643b479827..924de4d6595451430d5ab5a91f8c5a96fbd444fa 100644
--- a/lib_enc/ivas_stereo_ica_enc_fx.c
+++ b/lib_enc/ivas_stereo_ica_enc_fx.c
@@ -609,13 +609,13 @@ static void utilCrossCorr_fx(
{
IF( EQ_16( winSymmFlag, 0 ) )
{
- v_mult_fixed( buf1, win, tempBuf1, len );
- v_mult_fixed( buf2, win, tempBuf2, len );
+ v_mult_fx( buf1, win, tempBuf1, len );
+ v_mult_fx( buf2, win, tempBuf2, len );
}
ELSE
{
- v_mult_fixed( buf1, win, tempBuf1, ( len >> 1 ) );
- v_mult_fixed( buf2, win, tempBuf2, ( len >> 1 ) );
+ v_mult_fx( buf1, win, tempBuf1, ( len >> 1 ) );
+ v_mult_fx( buf2, win, tempBuf2, ( len >> 1 ) );
FOR( i = shr( len, 1 ); i < len; i++ )
{
@@ -704,7 +704,7 @@ static void utilCrossCorr_fx(
*corrEst_e = max_e;
move16();
- v_multc_fixed( corrEst, scale, corrEst, j );
+ v_multc_fx( corrEst, scale, corrEst, j );
*corrEst_e = add( *corrEst_e, temp2_e );
move16();
@@ -885,9 +885,9 @@ static void corrStatsEst_fx(
move32();
/* long term corr Stats estimation */
- v_multc_fixed_16( hStereoTCA->corrEstLT_fx, alpha_fx, hStereoTCA->corrEstLT_fx, 2 * L_NCSHIFT_DS + 1 ); /* Q31-hStereoTCA->corrEstLT_exp */
- v_multc_fixed_16( corrEst_fx, sub( MAX_16, alpha_fx ), corrEst_fx, 2 * L_NCSHIFT_DS + 1 ); /* Q31-corrEst_exp */
- v_add_fixed_me( hStereoTCA->corrEstLT_fx, hStereoTCA->corrEstLT_exp, corrEst_fx, corrEst_exp, hStereoTCA->corrEstLT_fx, &hStereoTCA->corrEstLT_exp, 2 * L_NCSHIFT_DS + 1, 0 );
+ v_multc_fx_16( hStereoTCA->corrEstLT_fx, alpha_fx, hStereoTCA->corrEstLT_fx, 2 * L_NCSHIFT_DS + 1 ); /* Q31-hStereoTCA->corrEstLT_exp */
+ v_multc_fx_16( corrEst_fx, sub( MAX_16, alpha_fx ), corrEst_fx, 2 * L_NCSHIFT_DS + 1 ); /* Q31-corrEst_exp */
+ v_add_fx_me( hStereoTCA->corrEstLT_fx, hStereoTCA->corrEstLT_exp, corrEst_fx, corrEst_exp, hStereoTCA->corrEstLT_fx, &hStereoTCA->corrEstLT_exp, 2 * L_NCSHIFT_DS + 1, 0 );
hStereoTCA->ica_envVarLT_fx = BASOP_Util_Add_Mant32Exp( Mpy_32_16_1( hStereoTCA->ica_envVarLT_fx, SMOOTH_ENV_FACTOR_FX_Q15 ), hStereoTCA->ica_envVarLT_exp, Mpy_32_16_1( tempF_fx, ONE_IN_Q15 - SMOOTH_ENV_FACTOR_FX_Q15 ), tempF_exp, &hStereoTCA->ica_envVarLT_exp ); // SMOOTH_ENV_FACTOR_FX_Q15 (Q31-hStereoTCA->ica_envVarLT_exp)
move32();
@@ -1037,15 +1037,15 @@ static void corrStatsEst_fx(
IF( LT_32( hStereoTCA->prevTargetGain_fx, 429496730 /*0.8f in Q29*/ ) && vad_flag1 )
{
/* ch 2 is prev reference channel */
- v_multc_fixed( corrEst_fx, 644245095 /*1.2f in Q29*/, corrEst_fx, L_NCSHIFT_DS + 1 ); /* Q31-corrEst_exp */
- v_multc_fixed( corrEst_fx + L_NCSHIFT_DS + 1, 447213470 /* 0.833 in Q29*/, corrEst_fx + L_NCSHIFT_DS + 1, L_NCSHIFT_DS ); /* Q31-corrEst_exp */
+ v_multc_fx( corrEst_fx, 644245095 /*1.2f in Q29*/, corrEst_fx, L_NCSHIFT_DS + 1 ); /* Q31-corrEst_exp */
+ v_multc_fx( corrEst_fx + L_NCSHIFT_DS + 1, 447213470 /* 0.833 in Q29*/, corrEst_fx + L_NCSHIFT_DS + 1, L_NCSHIFT_DS ); /* Q31-corrEst_exp */
corrEst_exp = add( corrEst_exp, 2 );
}
ELSE IF( GT_32( hStereoTCA->prevTargetGain_fx, 644245094 /*1.2f in Q29*/ ) && vad_flag1 )
{
/* ch 1 is prev reference channel */
- v_multc_fixed( corrEst_fx, 447213470 /* 0.833 f in Q29*/, corrEst_fx, L_NCSHIFT_DS ); /* Q31-corrEst_exp */
- v_multc_fixed( corrEst_fx + L_NCSHIFT_DS, 644245095 /*1.2f in Q29*/, corrEst_fx + L_NCSHIFT_DS, L_NCSHIFT_DS + 1 ); /* Q31-corrEst_exp */
+ v_multc_fx( corrEst_fx, 447213470 /* 0.833 f in Q29*/, corrEst_fx, L_NCSHIFT_DS ); /* Q31-corrEst_exp */
+ v_multc_fx( corrEst_fx + L_NCSHIFT_DS, 644245095 /*1.2f in Q29*/, corrEst_fx + L_NCSHIFT_DS, L_NCSHIFT_DS + 1 ); /* Q31-corrEst_exp */
corrEst_exp = add( corrEst_exp, 2 );
}
test();
@@ -1055,9 +1055,9 @@ static void corrStatsEst_fx(
j = s_min( 2 * L_NCSHIFT_DS, add( hStereoTCA->prevCorrLagStats[0], 1 + L_NCSHIFT_DS ) );
k = add( sub( j, i ), 1 );
- v_multc_fixed( corrEst_fx, ONE_IN_Q29 /*1.0f in Q29*/, corrEst_fx, i ); // to allign in same exp (Q31-corrEst_exp)
- v_multc_fixed( corrEst_fx + i, 644245095 /*1.2f in Q29*/, corrEst_fx + i, k ); /* Q31-corrEst_exp */
- v_multc_fixed( corrEst_fx + i + k, ONE_IN_Q29 /*1.0f in Q29*/, corrEst_fx + i + k, sub( 2 * L_NCSHIFT_DS + 1, i + k ) ); // to allign in same exp (Q31-corrEst_exp)
+ v_multc_fx( corrEst_fx, ONE_IN_Q29 /*1.0f in Q29*/, corrEst_fx, i ); // to allign in same exp (Q31-corrEst_exp)
+ v_multc_fx( corrEst_fx + i, 644245095 /*1.2f in Q29*/, corrEst_fx + i, k ); /* Q31-corrEst_exp */
+ v_multc_fx( corrEst_fx + i + k, ONE_IN_Q29 /*1.0f in Q29*/, corrEst_fx + i + k, sub( 2 * L_NCSHIFT_DS + 1, i + k ) ); // to allign in same exp (Q31-corrEst_exp)
corrEst_exp = add( corrEst_exp, 2 );
}
@@ -1876,17 +1876,17 @@ void stereo_tca_enc_fx(
IF( EQ_16( hStereoTCA->prevRefChanIndx, L_CH_INDX ) )
{
- v_multc_fixed( bufChanL_fx, ONE_IN_Q29, bufChanL_fx, L_MEM_RECALC_48K + L_MEM_RECALC_48k_SCH + L_FRAME48k + L_NCSHIFTMAX ); /* TO make in common Q bufChan_q - 2*/
- Copy32( ptrChanL_fx - add( lMemRecalc, lMemRecalc_SCh ), input_mem_loc_fx[0], add( lMemRecalc, lMemRecalc_SCh ) ); // bufChan_q - 2
- v_multc_fixed( ptrChanR_fx + sub( prevNCShift, add( lMemRecalc, lMemRecalc_SCh ) ), hStereoTCA->prevTargetGain_fx, input_mem_loc_fx[1], add( lMemRecalc, lMemRecalc_SCh ) ); // bufChan_q-2
- v_multc_fixed( bufChanR_fx, ONE_IN_Q29, bufChanR_fx, L_MEM_RECALC_48K + L_MEM_RECALC_48k_SCH + L_FRAME48k + L_NCSHIFTMAX ); /* TO make in common Q bufChan_q -2*/
+ v_multc_fx( bufChanL_fx, ONE_IN_Q29, bufChanL_fx, L_MEM_RECALC_48K + L_MEM_RECALC_48k_SCH + L_FRAME48k + L_NCSHIFTMAX ); /* TO make in common Q bufChan_q - 2*/
+ Copy32( ptrChanL_fx - add( lMemRecalc, lMemRecalc_SCh ), input_mem_loc_fx[0], add( lMemRecalc, lMemRecalc_SCh ) ); // bufChan_q - 2
+ v_multc_fx( ptrChanR_fx + sub( prevNCShift, add( lMemRecalc, lMemRecalc_SCh ) ), hStereoTCA->prevTargetGain_fx, input_mem_loc_fx[1], add( lMemRecalc, lMemRecalc_SCh ) ); // bufChan_q-2
+ v_multc_fx( bufChanR_fx, ONE_IN_Q29, bufChanR_fx, L_MEM_RECALC_48K + L_MEM_RECALC_48k_SCH + L_FRAME48k + L_NCSHIFTMAX ); /* TO make in common Q bufChan_q -2*/
}
ELSE
{
- v_multc_fixed( bufChanL_fx, ONE_IN_Q29, bufChanL_fx, L_MEM_RECALC_48K + L_MEM_RECALC_48k_SCH + L_FRAME48k + L_NCSHIFTMAX ); /* TO make in common Q bufChan_q -2*/
- Copy32( ptrChanL_fx + sub( prevNCShift, add( lMemRecalc, lMemRecalc_SCh ) ), input_mem_loc_fx[0], add( lMemRecalc, lMemRecalc_SCh ) ); // bufChan_q -2
- v_multc_fixed( ptrChanR_fx - add( lMemRecalc, lMemRecalc_SCh ), hStereoTCA->prevTargetGain_fx, input_mem_loc_fx[1], add( lMemRecalc, lMemRecalc_SCh ) ); // bufChan_q -2
- v_multc_fixed( bufChanR_fx, ONE_IN_Q29, bufChanR_fx, L_MEM_RECALC_48K + L_MEM_RECALC_48k_SCH + L_FRAME48k + L_NCSHIFTMAX ); /* TO make in common Q bufChan_q -2*/
+ v_multc_fx( bufChanL_fx, ONE_IN_Q29, bufChanL_fx, L_MEM_RECALC_48K + L_MEM_RECALC_48k_SCH + L_FRAME48k + L_NCSHIFTMAX ); /* TO make in common Q bufChan_q -2*/
+ Copy32( ptrChanL_fx + sub( prevNCShift, add( lMemRecalc, lMemRecalc_SCh ) ), input_mem_loc_fx[0], add( lMemRecalc, lMemRecalc_SCh ) ); // bufChan_q -2
+ v_multc_fx( ptrChanR_fx - add( lMemRecalc, lMemRecalc_SCh ), hStereoTCA->prevTargetGain_fx, input_mem_loc_fx[1], add( lMemRecalc, lMemRecalc_SCh ) ); // bufChan_q -2
+ v_multc_fx( bufChanR_fx, ONE_IN_Q29, bufChanR_fx, L_MEM_RECALC_48K + L_MEM_RECALC_48k_SCH + L_FRAME48k + L_NCSHIFTMAX ); /* TO make in common Q bufChan_q -2*/
}
bufChan_q = sub( bufChan_q, 2 );
q_com = bufChan_q;
@@ -1937,7 +1937,7 @@ void stereo_tca_enc_fx(
}
ELSE
{
- v_multc_fixed( target_fx - tempS, hStereoTCA->prevTargetGain_fx, &( input_mem_loc_fx[target_idx][lMemRecalc + lMemRecalc_SCh - tempS - currentNCShift] ), add( currentNCShift, tempS ) ); /* bufChan_q - 2 */
+ v_multc_fx( target_fx - tempS, hStereoTCA->prevTargetGain_fx, &( input_mem_loc_fx[target_idx][lMemRecalc + lMemRecalc_SCh - tempS - currentNCShift] ), add( currentNCShift, tempS ) ); /* bufChan_q - 2 */
scale_sig32( input_mem_loc_fx[target_idx], sub( sub( add( lMemRecalc, lMemRecalc_SCh ), tempS ), currentNCShift ), -2 );
scale_sig32( &input_mem_loc_fx[target_idx][lMemRecalc + lMemRecalc_SCh], sub( NS2SA( 48000, L_MEM_RECALC_NS + L_MEM_RECALC_SCH_NS ), add( lMemRecalc, lMemRecalc_SCh ) ), -2 );
scale_sig32( input_mem_loc_fx[0], NS2SA( 48000, L_MEM_RECALC_NS + L_MEM_RECALC_SCH_NS ), -2 );
@@ -1989,12 +1989,12 @@ void stereo_tca_enc_fx(
target_idx = L_CH_INDX; /* only to avoid compilation warning */
move16();
- v_multc_fixed( bufChanL_fx, ONE_IN_Q29, bufChanL_fx, L_MEM_RECALC_48K + L_MEM_RECALC_48k_SCH + L_FRAME48k + L_NCSHIFTMAX ); /* TO make in common Q bufChan_q -2*/
+ v_multc_fx( bufChanL_fx, ONE_IN_Q29, bufChanL_fx, L_MEM_RECALC_48K + L_MEM_RECALC_48k_SCH + L_FRAME48k + L_NCSHIFTMAX ); /* TO make in common Q bufChan_q -2*/
- Copy32( ptrChanL_fx - add( lMemRecalc, lMemRecalc_SCh ), input_mem_loc_fx[0], add( lMemRecalc, lMemRecalc_SCh ) ); // bufChan_q -2
- v_multc_fixed( ptrChanR_fx - add( lMemRecalc, lMemRecalc_SCh ), hStereoTCA->prevTargetGain_fx, input_mem_loc_fx[1], add( lMemRecalc, lMemRecalc_SCh ) ); // bufChan_q -2
+ Copy32( ptrChanL_fx - add( lMemRecalc, lMemRecalc_SCh ), input_mem_loc_fx[0], add( lMemRecalc, lMemRecalc_SCh ) ); // bufChan_q -2
+ v_multc_fx( ptrChanR_fx - add( lMemRecalc, lMemRecalc_SCh ), hStereoTCA->prevTargetGain_fx, input_mem_loc_fx[1], add( lMemRecalc, lMemRecalc_SCh ) ); // bufChan_q -2
- v_multc_fixed( bufChanR_fx, ONE_IN_Q29, bufChanR_fx, L_MEM_RECALC_48K + L_MEM_RECALC_48k_SCH + L_FRAME48k + L_NCSHIFTMAX ); /* TO make in common Q bufChan_q -2 */
+ v_multc_fx( bufChanR_fx, ONE_IN_Q29, bufChanR_fx, L_MEM_RECALC_48K + L_MEM_RECALC_48k_SCH + L_FRAME48k + L_NCSHIFTMAX ); /* TO make in common Q bufChan_q -2 */
bufChan_q = sub( bufChan_q, 2 );
q_com = bufChan_q;
move16();
diff --git a/lib_enc/ivas_stereo_icbwe_enc_fx.c b/lib_enc/ivas_stereo_icbwe_enc_fx.c
index 85c35ed50f80ab35a492daf9b536088e6573dffe..f6bf1a0999fecbf98301544fcca9ad8bb4e2f04d 100644
--- a/lib_enc/ivas_stereo_icbwe_enc_fx.c
+++ b/lib_enc/ivas_stereo_icbwe_enc_fx.c
@@ -132,14 +132,14 @@ static Word16 ic_bwe_enc_specMapping_ivas_fx(
/* Calculate rxx(1)/rxx(0) of the non ref target */
- temp00_fx = dotp_fixed_ivas_fx( shb_frame_target_fx, shb_frame_target_e, shb_frame_target_fx, shb_frame_target_e, L_FRAME16k - 1, &temp00_exp ); /* Q31-temp0_exp */
- temp11_fx = dotp_fixed_ivas_fx( shb_frame_target_fx, shb_frame_target_e, shb_frame_target_fx + 1, shb_frame_target_e, L_FRAME16k - 1, &temp11_exp ); /* Q31-temp1_exp */
+ temp00_fx = dotp_fx_ivas_fx( shb_frame_target_fx, shb_frame_target_e, shb_frame_target_fx, shb_frame_target_e, L_FRAME16k - 1, &temp00_exp ); /* Q31-temp0_exp */
+ temp11_fx = dotp_fx_ivas_fx( shb_frame_target_fx, shb_frame_target_e, shb_frame_target_fx + 1, shb_frame_target_e, L_FRAME16k - 1, &temp11_exp ); /* Q31-temp1_exp */
/* Calculate rxx(1)/rxx(0) of the non ref synth */
- temp0_fx = dotp_fixed_ivas_fx( shb_synth_nonref_fx, *shb_synth_nonref_e, shb_synth_nonref_fx, *shb_synth_nonref_e, L_FRAME16k - 3, &temp0_exp ); /* Q31-temp0_exp */
- temp1_fx = dotp_fixed_ivas_fx( shb_synth_nonref_fx, *shb_synth_nonref_e, shb_synth_nonref_fx + 1, *shb_synth_nonref_e, L_FRAME16k - 3, &temp1_exp ); /* Q31-temp1_exp */
- temp2_fx = dotp_fixed_ivas_fx( shb_synth_nonref_fx, *shb_synth_nonref_e, shb_synth_nonref_fx + 2, *shb_synth_nonref_e, L_FRAME16k - 3, &temp2_exp ); /* Q31-temp2_exp */
- temp3_fx = dotp_fixed_ivas_fx( shb_synth_nonref_fx, *shb_synth_nonref_e, shb_synth_nonref_fx + 3, *shb_synth_nonref_e, L_FRAME16k - 3, &temp3_exp ); /* Q31-temp3_exp */
+ temp0_fx = dotp_fx_ivas_fx( shb_synth_nonref_fx, *shb_synth_nonref_e, shb_synth_nonref_fx, *shb_synth_nonref_e, L_FRAME16k - 3, &temp0_exp ); /* Q31-temp0_exp */
+ temp1_fx = dotp_fx_ivas_fx( shb_synth_nonref_fx, *shb_synth_nonref_e, shb_synth_nonref_fx + 1, *shb_synth_nonref_e, L_FRAME16k - 3, &temp1_exp ); /* Q31-temp1_exp */
+ temp2_fx = dotp_fx_ivas_fx( shb_synth_nonref_fx, *shb_synth_nonref_e, shb_synth_nonref_fx + 2, *shb_synth_nonref_e, L_FRAME16k - 3, &temp2_exp ); /* Q31-temp2_exp */
+ temp3_fx = dotp_fx_ivas_fx( shb_synth_nonref_fx, *shb_synth_nonref_e, shb_synth_nonref_fx + 3, *shb_synth_nonref_e, L_FRAME16k - 3, &temp3_exp ); /* Q31-temp3_exp */
exp = s_max( *memShbSpecXcorr_e, s_max( s_max( s_max( temp00_exp, temp11_exp ), s_max( temp0_exp, temp1_exp ) ), s_max( temp2_exp, temp3_exp ) ) );
@@ -734,7 +734,7 @@ void stereo_icBWE_enc_ivas_fx(
test();
IF( LT_32( gTarget_fx, 268435456 ) || GT_32( gTarget_fx, 1073741824 ) ) // 0.5 in Q29 or 2.0 in Q29
{
- v_multc_fixed( voice_factors_fx, 1073741824, nlMixFac_fx, NB_SUBFR16k ); // Q31, 0.5 in Q31 -> 1073741824
+ v_multc_fx( voice_factors_fx, 1073741824, nlMixFac_fx, NB_SUBFR16k ); // Q31, 0.5 in Q31 -> 1073741824
}
Word16 L_FRAME16k_by_nbSubFr = L_FRAME16k / NB_SUBFR;
@@ -947,7 +947,7 @@ void stereo_icBWE_enc_ivas_fx(
test();
IF( LT_32( gTarget_fx, 268435456 ) || GT_32( gTarget_fx, 1073741824 ) ) // 0.5 in Q29 & 2.0 in Q29
{
- v_multc_fixed( voice_factors_fx, 1073741824 /*0.5 in Q31*/, nlMixFac_fx, NB_SUBFR16k ); /* Q31 */
+ v_multc_fx( voice_factors_fx, 1073741824 /*0.5 in Q31*/, nlMixFac_fx, NB_SUBFR16k ); /* Q31 */
}
Word16 L_FRAME16k_by_nbSubFr = L_FRAME16k / NB_SUBFR;
diff --git a/lib_enc/ivas_stereo_mdct_igf_enc_fx.c b/lib_enc/ivas_stereo_mdct_igf_enc_fx.c
index 6c3588cabc6d7a93997e0937dfd86940f859dee8..d22e1b885b7791d5cdadd3e62de61d00262b0588 100644
--- a/lib_enc/ivas_stereo_mdct_igf_enc_fx.c
+++ b/lib_enc/ivas_stereo_mdct_igf_enc_fx.c
@@ -80,13 +80,13 @@ static Word16 calcCoh_fx( // Q15
move16();
q_cc = q_ener1;
move16();
- ener1_fx = dotp_fixed_o( sig1_fx, sig1_fx, nSamples, gB, &q_ener1 ); /* q_ener1 */
- ener2_fx = dotp_fixed_o( sig2_fx, sig2_fx, nSamples, gB, &q_ener2 ); /* q_ener2 */
- cEner_fx = Mpy_32_32( ener1_fx, ener2_fx ); /* q_ener1+q_ener2-31 */
+ ener1_fx = dotp_fx32_o( sig1_fx, sig1_fx, nSamples, gB, &q_ener1 ); /* q_ener1 */
+ ener2_fx = dotp_fx32_o( sig2_fx, sig2_fx, nSamples, gB, &q_ener2 ); /* q_ener2 */
+ cEner_fx = Mpy_32_32( ener1_fx, ener2_fx ); /* q_ener1+q_ener2-31 */
q_cEner = sub( 62, add( q_ener1, q_ener2 ) );
cEner_fx = Sqrt32( cEner_fx, &q_cEner ); /* Q31-q_cEner */
q_cEner = sub( Q31, q_cEner );
- cc_fx = dotp_fixed_o( sig1_fx, sig2_fx, nSamples, gB, &q_cc ); /* q_cc */
+ cc_fx = dotp_fx32_o( sig1_fx, sig2_fx, nSamples, gB, &q_cc ); /* q_cc */
IF( corr != NULL )
{
diff --git a/lib_enc/ivas_stereo_mdct_stereo_enc_fx.c b/lib_enc/ivas_stereo_mdct_stereo_enc_fx.c
index bcc4462a23f3d3574a5996509226e5e9174a0491..d53eb365d3dcca44ca72231143fec4127c002df0 100644
--- a/lib_enc/ivas_stereo_mdct_stereo_enc_fx.c
+++ b/lib_enc/ivas_stereo_mdct_stereo_enc_fx.c
@@ -255,8 +255,8 @@ void stereo_coder_tcx_fx(
tmp = Inv16( extract_h( nrgRatio_fx[k] ), &e_tmp ); /* Q15-e_tmp */
tmp = shl( tmp, e_tmp ); /* Q15 */
- v_multc_fixed_16( sts[1]->hTcxEnc->spectrum_fx[k], tmp, sts[1]->hTcxEnc->spectrum_fx[k], L_frameTCX ); /* exp: exp_spec */
- v_multc_fixed_16( mdst_spectrum_fx[1][k], tmp, mdst_spectrum_fx[1][k], L_frameTCX ); /* exp: exp_mdct_spec */
+ v_multc_fx_16( sts[1]->hTcxEnc->spectrum_fx[k], tmp, sts[1]->hTcxEnc->spectrum_fx[k], L_frameTCX ); /* exp: exp_spec */
+ v_multc_fx_16( mdst_spectrum_fx[1][k], tmp, mdst_spectrum_fx[1][k], L_frameTCX ); /* exp: exp_mdct_spec */
}
ELSE IF( EQ_16( BASOP_Util_Cmp_Mant32Exp( nrgRatio_fx[k], nrgRatio_e[k], ONE_IN_Q27, 4 ), -1 ) && LT_16( k, EQ_16( sts[0]->core, TCX_20_CORE ) ? 1 : NB_DIV ) )
{
@@ -264,8 +264,8 @@ void stereo_coder_tcx_fx(
L_frameTCX = idiv1616( L_frameTCX, ( sts[0]->core == TCX_20_CORE ) ? 1 : NB_DIV ); /* Q0 */
/* This operation is resulting in some high MLDs in fixed point. */
- v_multc_fixed_16( sts[0]->hTcxEnc->spectrum_fx[k], extract_l( L_shr( nrgRatio_fx[k], 16 - nrgRatio_e[k] ) ), sts[0]->hTcxEnc->spectrum_fx[k], L_frameTCX ); /* exp: exp_spec */
- v_multc_fixed_16( mdst_spectrum_fx[0][k], extract_l( L_shr( nrgRatio_fx[k], 16 - nrgRatio_e[k] ) ), mdst_spectrum_fx[0][k], L_frameTCX ); /* exp: exp_mdct_spec */
+ v_multc_fx_16( sts[0]->hTcxEnc->spectrum_fx[k], extract_l( L_shr( nrgRatio_fx[k], 16 - nrgRatio_e[k] ) ), sts[0]->hTcxEnc->spectrum_fx[k], L_frameTCX ); /* exp: exp_spec */
+ v_multc_fx_16( mdst_spectrum_fx[0][k], extract_l( L_shr( nrgRatio_fx[k], 16 - nrgRatio_e[k] ) ), mdst_spectrum_fx[0][k], L_frameTCX ); /* exp: exp_mdct_spec */
}
}
}
@@ -309,7 +309,7 @@ void stereo_coder_tcx_fx(
}
for ( k = 0; k < nSubframes; k++ )
{
- convertToMS_fx( L_frameTCX, sts[0]->hTcxEnc->spectrum_fx[k], sts[1]->hTcxEnc->spectrum_fx[k], SQRT2_OVER_2_FIXED );
+ convertToMS_fx( L_frameTCX, sts[0]->hTcxEnc->spectrum_fx[k], sts[1]->hTcxEnc->spectrum_fx[k], SQRT2_OVER_2_FX );
/* Make sure that the MDST is processed in the correct way also */
set_s( &ms_mask[k][0], 1, MAX_SFB );
@@ -428,15 +428,15 @@ void stereo_coder_tcx_fx(
move32();
- v_multc_fixed( &sts[0]->hTcxEnc->spectrum_fx[k][startLine], nrgRatio_fx[0], &sts[0]->hTcxEnc->spectrum_fx[k][startLine], sfbWidth ); /* exp: exp_spec+1 */
- v_multc_fixed( &mdst_spectrum_fx[0][k][startLine], nrgRatio_fx[0], &mdst_spectrum_fx[0][k][startLine], sfbWidth ); /* exp: exp_mdct_spec+1 */
- scale_sig32( &sts[0]->hTcxEnc->spectrum_fx[k][startLine], sfbWidth, Q1 ); // exp: exp_spec
- scale_sig32( &mdst_spectrum_fx[0][k][startLine], sfbWidth, Q1 ); // exp: exp_mdct_spec
+ v_multc_fx( &sts[0]->hTcxEnc->spectrum_fx[k][startLine], nrgRatio_fx[0], &sts[0]->hTcxEnc->spectrum_fx[k][startLine], sfbWidth ); /* exp: exp_spec+1 */
+ v_multc_fx( &mdst_spectrum_fx[0][k][startLine], nrgRatio_fx[0], &mdst_spectrum_fx[0][k][startLine], sfbWidth ); /* exp: exp_mdct_spec+1 */
+ scale_sig32( &sts[0]->hTcxEnc->spectrum_fx[k][startLine], sfbWidth, Q1 ); // exp: exp_spec
+ scale_sig32( &mdst_spectrum_fx[0][k][startLine], sfbWidth, Q1 ); // exp: exp_mdct_spec
- v_multc_fixed( &sts[1]->hTcxEnc->spectrum_fx[k][startLine], nrgRatio_fx[1], &sts[1]->hTcxEnc->spectrum_fx[k][startLine], sfbWidth ); /* exp: exp_spec+1 */
- v_multc_fixed( &mdst_spectrum_fx[1][k][startLine], nrgRatio_fx[1], &mdst_spectrum_fx[1][k][startLine], sfbWidth ); /* exp: exp_mdct_spec+1 */
- scale_sig32( &sts[1]->hTcxEnc->spectrum_fx[k][startLine], sfbWidth, Q1 ); // exp: exp_spec
- scale_sig32( &mdst_spectrum_fx[1][k][startLine], sfbWidth, Q1 ); // exp: exp_mdct_spec
+ v_multc_fx( &sts[1]->hTcxEnc->spectrum_fx[k][startLine], nrgRatio_fx[1], &sts[1]->hTcxEnc->spectrum_fx[k][startLine], sfbWidth ); /* exp: exp_spec+1 */
+ v_multc_fx( &mdst_spectrum_fx[1][k][startLine], nrgRatio_fx[1], &mdst_spectrum_fx[1][k][startLine], sfbWidth ); /* exp: exp_mdct_spec+1 */
+ scale_sig32( &sts[1]->hTcxEnc->spectrum_fx[k][startLine], sfbWidth, Q1 ); // exp: exp_spec
+ scale_sig32( &mdst_spectrum_fx[1][k][startLine], sfbWidth, Q1 ); // exp: exp_mdct_spec
}
}
}
@@ -584,7 +584,7 @@ void ms_processing_fx(
{
IF( NE_16( ms_mask[iSubframe][sfb], 0 ) )
{
- convertToBwMS_fx( sfbConf->sfbOffset[sfb], sfbConf->sfbOffset[sfb + 1], x_0_fx, x_1_fx, SQRT2_OVER_2_FIXED );
+ convertToBwMS_fx( sfbConf->sfbOffset[sfb], sfbConf->sfbOffset[sfb + 1], x_0_fx, x_1_fx, SQRT2_OVER_2_FX );
}
}
@@ -640,7 +640,7 @@ void ms_inv_mask_processing_fx(
IF( EQ_16( ms_mask[iSubframe][sfb], 0 ) )
{
- convertToBwMS_fx( sfbConf->sfbOffset[sfb], sfbConf->sfbOffset[sfb + 1], x_inv_0_fx, x_inv_1_fx, SQRT2_OVER_2_FIXED );
+ convertToBwMS_fx( sfbConf->sfbOffset[sfb], sfbConf->sfbOffset[sfb + 1], x_inv_0_fx, x_inv_1_fx, SQRT2_OVER_2_FX );
}
}
@@ -1185,9 +1185,9 @@ static void MsStereoDecision_fx(
FOR( i = 0; i < length; i++ )
{
- specM_fx[i] = Mpy_32_32( L_add( specL_fx[i], specR_fx[i] ), SQRT2_OVER_2_FIXED ); // Q( q_spec )
+ specM_fx[i] = Mpy_32_32( L_add( specL_fx[i], specR_fx[i] ), SQRT2_OVER_2_FX ); // Q( q_spec )
move32();
- specS_fx[i] = Mpy_32_32( L_sub( specL_fx[i], specR_fx[i] ), SQRT2_OVER_2_FIXED ); // Q( q_spec )
+ specS_fx[i] = Mpy_32_32( L_sub( specL_fx[i], specR_fx[i] ), SQRT2_OVER_2_FX ); // Q( q_spec )
move32();
}
diff --git a/lib_enc/ivas_stereo_switching_enc_fx.c b/lib_enc/ivas_stereo_switching_enc_fx.c
index 24ff57217cb95b64d983a3f0ddf6f27312fab872..4375046237747b0b603012af082f673e133b9bf4 100644
--- a/lib_enc/ivas_stereo_switching_enc_fx.c
+++ b/lib_enc/ivas_stereo_switching_enc_fx.c
@@ -649,25 +649,17 @@ void stereo_switching_enc_fx(
dft_ovl = extract_l( Mpy_32_32( imult3216( input_frame, STEREO_DFT_OVL_MAX ), 2236963 ) ); // 1/L_FRAME48k = 2236963 (Q31)
/* update DFT analysis overlap memory */
-#ifdef NONBE_1203_MDCT2DFT_SWITCHING
/* note: in MDCT stereo, the update is done in stereo_td_itd_mdct_stereo() */
-#endif
test();
test();
IF( GT_16( hCPE->element_mode, IVAS_CPE_DFT ) && hCPE->input_mem_fx[0] != NULL && NE_16( hCPE->element_mode, IVAS_CPE_MDCT ) )
{
FOR( n = 0; n < CPE_CHANNELS; n++ )
{
-#ifdef NONBE_1203_MDCT2DFT_SWITCHING
Word16 sf = L_norm_arr( sts[n]->input32_fx + input_frame - dft_ovl, dft_ovl );
Copy_Scale_sig32_16( sts[n]->input32_fx + input_frame - dft_ovl, hCPE->input_mem_fx[n], dft_ovl, sf ); /* sts[n]->q_inp32 - 16 */
hCPE->q_input_mem[n] = sub( add( sts[n]->q_inp32, sf ), 16 );
move16();
-#else
- Copy_Scale_sig32_16( sts[n]->input32_fx + input_frame - dft_ovl, hCPE->input_mem_fx[n], dft_ovl, 0 ); /* sts[n]->q_inp32 - 16 */
- hCPE->q_input_mem[n] = sub( sts[n]->q_inp32, 16 );
- move16();
-#endif
}
}
@@ -831,7 +823,7 @@ void stereo_switching_enc_fx(
test();
IF( hCPE->hStereoTD != NULL && EQ_16( hCPE->hStereoTD->tdm_last_ratio_idx, LRTD_STEREO_LEFT_IS_PRIM ) )
{
- v_multc_fixed( hCPE->hCoreCoder[1]->old_input_signal32_fx + sub( input_frame, add( offset, NS2SA_FX2( L_mult0( input_frame, FRAMES_PER_SEC ), L_MEM_RECALC_TBE_NS ) ) ), -MAX_32, sts[1]->cldfbAnaEnc->cldfb_state_fx, offset ); /* Q16+q_inp */
+ v_multc_fx( hCPE->hCoreCoder[1]->old_input_signal32_fx + sub( input_frame, add( offset, NS2SA_FX2( L_mult0( input_frame, FRAMES_PER_SEC ), L_MEM_RECALC_TBE_NS ) ) ), -MAX_32, sts[1]->cldfbAnaEnc->cldfb_state_fx, offset ); /* Q16+q_inp */
sts[1]->cldfbAnaEnc->Q_cldfb_state = q_inp;
move16();
}
diff --git a/lib_enc/ivas_tcx_core_enc_fx.c b/lib_enc/ivas_tcx_core_enc_fx.c
index 52cc9db8308401ab6eb97c7c01d2ff51d4e9bae0..c10705e5db5192984f0279374dce3288edab1870 100644
--- a/lib_enc/ivas_tcx_core_enc_fx.c
+++ b/lib_enc/ivas_tcx_core_enc_fx.c
@@ -760,9 +760,6 @@ Word16 ivas_acelp_tcx20_switching_fx(
Word32 offset_tcx, target;
Word32 y_fx[N_MAX];
Word32 tcx_snr;
-#ifndef ISSUE_1867_replace_overflow_libenc
- Flag Overflow;
-#endif
Word32 gain, noise;
Word16 noise_e = 0;
move16();
@@ -1250,11 +1247,7 @@ Word16 ivas_acelp_tcx20_switching_fx(
test();
if ( ( GT_32( snr_acelp, tcx_snr ) ) &&
( LT_32( snr_acelp, L_add( tcx_snr, 131072 /*2.0f Q16*/ ) ) ) &&
-#ifdef ISSUE_1867_replace_overflow_libenc
( LT_32( L_add_sat( st->prevTempFlatness_32fx, currFlatness ), 6815744 /*3.25f Q21*/ ) || EQ_16( stab_fac, 0x7fff ) ||
-#else
- ( LT_32( L_add_o( st->prevTempFlatness_32fx, currFlatness, &Overflow ), 6815744 /*3.25f Q21*/ ) || EQ_16( stab_fac, 0x7fff ) ||
-#endif
( !flag_16k_smc && ( st->sp_aud_decision0 > 0 ) && LT_32( L_add_sat( st->prevTempFlatness_32fx, currFlatness ), 41943040 /*20.f Q21*/ ) ) ) &&
( LE_16( st->Nb_ACELP_frames, 6 ) ) )
{
diff --git a/lib_enc/ivas_td_low_rate_enc_fx.c b/lib_enc/ivas_td_low_rate_enc_fx.c
index 8832af43c6514cd37d29c9b7b1c5336fff71cbb5..21fa7131243fcfef33162a6c624179eb68126900 100644
--- a/lib_enc/ivas_td_low_rate_enc_fx.c
+++ b/lib_enc/ivas_td_low_rate_enc_fx.c
@@ -376,11 +376,7 @@ void encod_gen_2sbfr(
* Prepare TBE excitation
*-----------------------------------------------------------------*/
-#ifdef FIX_2010_PREP_TBE_EXC
prep_tbe_exc_fx( L_frame, L_SUBFR, i_subfr, gain_pit, gain_code, code, voice_fac, &voice_factors[i_subfr / L_SUBFR], bwe_exc, 0, NULL, Q10, Q_new, T0, T0_frac, coder_type, st->core_brate, st->element_mode, st->idchan, st->hBWE_TD != NULL, st->tdm_LRTD_flag );
-#else
- prep_tbe_exc_fx( L_frame, L_SUBFR, i_subfr, gain_pit, gain_code, code, voice_fac, &voice_factors[i_subfr / L_SUBFR], bwe_exc, 0, NULL, Q_new, T0, T0_frac, coder_type, st->core_brate, st->element_mode, st->idchan, st->hBWE_TD != NULL, st->tdm_LRTD_flag );
-#endif
voice_factors[i_subfr / L_SUBFR + 1] = voice_factors[i_subfr / L_SUBFR]; /* Q15 */
move16();
diff --git a/lib_enc/lib_enc_fx.c b/lib_enc/lib_enc_fx.c
index 295608d6fb902cc09274d92c175fc9668df4ddf9..a242ad6792288918e0eafa5c736b8a3a863b1f55 100644
--- a/lib_enc/lib_enc_fx.c
+++ b/lib_enc/lib_enc_fx.c
@@ -540,12 +540,16 @@ ivas_error IVAS_ENC_FeedObjectMetadata(
{
return IVAS_ERR_INVALID_INDEX;
}
+#ifdef FIX_2084_FLOATING_POINT_LEFTOVERS
+ error = ivas_set_ism_metadata_fx( hIvasEnc->st_ivas->hIsmMetaData[ismIndex], metadata.azimuth_fx, metadata.elevation_fx, metadata.radius_fx, metadata.yaw_fx, metadata.pitch_fx, metadata.non_diegetic_flag );
+#else
Word32 azimuth_fx = float_to_fix( metadata.azimuth, Q22 ); /* Q22 */
Word32 elevation_fx = float_to_fix( metadata.elevation, Q22 ); /* Q22 */
Word16 radius_fx = float_to_fix16( metadata.radius, Q9 ); /* Q9 */
Word32 yaw_fx = float_to_fix( metadata.yaw, Q22 ); /* Q22 */
Word32 pitch_fx = float_to_fix( metadata.pitch, Q22 ); /* Q22 */
error = ivas_set_ism_metadata_fx( hIvasEnc->st_ivas->hIsmMetaData[ismIndex], azimuth_fx, elevation_fx, radius_fx, yaw_fx, pitch_fx, metadata.non_diegetic_flag );
+#endif
IF( error != IVAS_ERR_OK )
{
diff --git a/lib_enc/lp_exc_e_fx.c b/lib_enc/lp_exc_e_fx.c
index 3b77bf3cd4697c528d9248c1aadf575422f1cf9a..4d6084c879694fe13d70d85916e1378c8c5584c3 100644
--- a/lib_enc/lp_exc_e_fx.c
+++ b/lib_enc/lp_exc_e_fx.c
@@ -1,10 +1,10 @@
/*====================================================================================
EVS Codec 3GPP TS26.452 Aug 12, 2021. Version 16.3.0
====================================================================================*/
+
#include
#include "options.h" /* Compilation switches */
#include "cnst.h" /* Common constants */
-//#include "prot_fx.h" /* Function prototypes */
#include "basop_util.h"
#include "prot_fx.h" /* Function prototypes */
#include "prot_fx_enc.h" /* Function prototypes */
@@ -173,6 +173,7 @@ Word16 lp_filt_exc_enc_fx(
return select;
}
+
/*-------------------------------------------------------------------*
* adpt_enr_fx()
*
@@ -180,20 +181,20 @@ Word16 lp_filt_exc_enc_fx(
* This serves to decide about the filtering of the adaptive excitation
*-------------------------------------------------------------------*/
-static Word16 adpt_enr_fx( /* o : adaptive excitation energy mant */
- const Word16 codec_mode, /* i : MODE1 or MODE2 */
- const Word16 *exc, /* i : excitation vector Q_new */
- const Word16 *h1, /* i : impuls response Q15 */
- Word16 *y1, /* o : zero-memory filtered adpt. excitation 12 bits */
- const Word16 L_subfr, /* i : vector length */
- Word16 *gain, /* o : subframe adaptive gain Q14 */
- Word16 *g_corr, /* o : correlations for adptive gain mant/exp*/
- const Word16 clip_gain, /* i : adaptive gain clipping flag Q0 */
- const Word16 *xn, /* i : adaptive codebook target 12 bits Q_new-1+shift*/
- Word16 *xn2, /* o : algebraic codebook target 12 bits Q_new-1+shift*/
- Word16 *exp_ener /* o : adaptive excitation energy exp */
- ,
- Word16 use_prev_sf_pit_gain /* i : flag to use prev sf pitch gain or not */
+/* o : adaptive excitation energy mant */
+static Word16 adpt_enr_fx(
+ const Word16 codec_mode, /* i : MODE1 or MODE2 */
+ const Word16 *exc, /* i : excitation vector Q_new */
+ const Word16 *h1, /* i : impuls response Q15 */
+ Word16 *y1, /* o : zero-memory filtered adpt. excitation 12 bits */
+ const Word16 L_subfr, /* i : vector length */
+ Word16 *gain, /* o : subframe adaptive gain Q14 */
+ Word16 *g_corr, /* o : correlations for adptive gain mant/exp*/
+ const Word16 clip_gain, /* i : adaptive gain clipping flag Q0 */
+ const Word16 *xn, /* i : adaptive codebook target 12 bits Q_new-1+shift*/
+ Word16 *xn2, /* o : algebraic codebook target 12 bits Q_new-1+shift*/
+ Word16 *exp_ener, /* o : adaptive excitation energy exp */
+ Word16 use_prev_sf_pit_gain /* i : flag to use prev sf pitch gain or not */
)
{
Word16 ener, i;
@@ -274,14 +275,14 @@ static Word16 adpt_enr_fx( /* o : adaptive excitation
* codebook excitation y1[]. ( and -2 )
*-------------------------------------------------------------------*/
-Word16 corr_xy1_fx( /* o : pitch gain (0..GAIN_PIT_MAX) */
- const Word16 xn_1[], /* i : target signal Q_new*/
- const Word16 y1_1[], /* i : filtered adaptive codebook excitation 12 bits*/
- Word16 g_corr[], /* o : correlations and -2 mant/exp*/
- const Word16 L_subfr, /* i : vector length */
- const Word16 norm_flag /* i : flag for constraining pitch contribution */
- ,
- Flag *Overflow_out /* o : propagating the Overflow flag to upper level */
+/* o : pitch gain (0..GAIN_PIT_MAX) */
+Word16 corr_xy1_fx(
+ const Word16 xn_1[], /* i : target signal Q_new*/
+ const Word16 y1_1[], /* i : filtered adaptive codebook excitation 12 bits*/
+ Word16 g_corr[], /* o : correlations and -2 mant/exp*/
+ const Word16 L_subfr, /* i : vector length */
+ const Word16 norm_flag, /* i : flag for constraining pitch contribution */
+ Flag *Overflow_out /* o : propagating the Overflow flag to upper level */
)
{
Word16 i;
diff --git a/lib_enc/lsf_enc_fx.c b/lib_enc/lsf_enc_fx.c
index 469b3baa2490497d27584bbd9a3c6513c295516a..0c5656ac447fdddddd91746589b0cce60dc03081 100644
--- a/lib_enc/lsf_enc_fx.c
+++ b/lib_enc/lsf_enc_fx.c
@@ -766,11 +766,6 @@ static Word16 qlsf_Mode_Select_fx(
Word32 temp32, En = 0;
Word16 safety_net;
Word16 i, cs, cl;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/* calculate the prediction residual */
cl = 0;
@@ -786,11 +781,7 @@ static Word16 qlsf_Mode_Select_fx(
{
pred_pow2[i] = shl( pred1[i], cs );
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
En = L_mac_sat( En, mult( pred_pow2[i], shl_sat( w[i], 2 ) ), pred_pow2[i] ); /* 2.56*2.56 at Q-4 */
-#else
- En = L_mac_o( En, mult( pred_pow2[i], shl_sat( w[i], 2 ) ), pred_pow2[i], &Overflow ); /* 2.56*2.56 at Q-4 */
-#endif
}
cs = shl( cs, 1 );
@@ -1358,9 +1349,11 @@ void lsf_end_enc_fx(
/* Update AR-predictor memories */
Copy( qlsf, st->mem_AR_fx, M );
+
return;
}
+
void lsf_end_enc_ivas_fx(
Encoder_State *st, /* i/o: encoder state structure */
const Word16 *lsf, /* i : LSF in the frequency domain (0..6400) x2.56*/
@@ -1372,8 +1365,7 @@ void lsf_end_enc_ivas_fx(
Word16 *lpc_param,
Word16 *no_indices,
Word16 *bits_param_lpc,
- Word16 coder_type_raw /* i : Coder type (LSF coder_type have some special cases)*/
- ,
+ Word16 coder_type_raw, /* i : Coder type (LSF coder_type have some special cases)*/
const Word16 tdm_lsfQ_PCh[M] /* i : Q LSFs for primary channel */
)
{
@@ -1444,10 +1436,11 @@ void lsf_end_enc_ivas_fx(
move16();
}
- /*----------------------------------------------------------------------------------- -*
+ /*------------------------------------------------------------------------------------*
* Calculate the number of stages and levels for each stage based on allowed bit budget
* Set absolute threshold for codebook-type decision logic depending on signal bandwidth
- *------------------------------------------------------------------------------------ -*/
+ *-------------------------------------------------------------------------------------*/
+
IF( st->bwidth == NB )
{
abs_threshold = SFNETLOWLIMIT_NB / 2;
@@ -1464,6 +1457,7 @@ void lsf_end_enc_ivas_fx(
/*--------------------------------------------------------------------------------*
* LSF quantization of SID frames
*--------------------------------------------------------------------------------*/
+
IF( EQ_32( st->core_brate, SID_2k40 ) )
{
lsfq_CNG_ivas_fx( hBstr, lsf, wghts, qlsf );
@@ -1479,8 +1473,8 @@ void lsf_end_enc_ivas_fx(
* Calculate number of stages and levels for each stage based on the allowed bit allocation
* (subtract one bit for LSF predictor selection)
*----------------------------------------------------------------*/
- lsf_allocate_fx( sub( nBits, shr( predmode, 1 ) ), mode_lvq, mode_lvq_p, &stages0, &stages1, levels0, levels1, bits0, bits1 );
+ lsf_allocate_fx( sub( nBits, shr( predmode, 1 ) ), mode_lvq, mode_lvq_p, &stages0, &stages1, levels0, levels1, bits0, bits1 );
/*--------------------------------------------------------------------------------*
* LSF quantization of all other frames but SID frames
@@ -1546,6 +1540,7 @@ void lsf_end_enc_ivas_fx(
pred2[i] = add( pred0[i], mult( Predictors_fx[mode_lvq_p][i], sub( st->mem_AR_fx[i], pred0[i] ) ) );
Tmp2[i] = sub( lsf[i], pred2[i] );
}
+
/* Adaptive scaling factor (multiplier) is updated in order to reduce the amount of consecutive predictive frames in
case of possible frame erasure. AR-predictive usage for VOICED mode is allowed to be higher than other modes. */
test();
@@ -1692,6 +1687,7 @@ void lsf_end_enc_ivas_fx(
}
}
}
+
/*--------------------------------------------------------------------------*
* Write indices to array
*--------------------------------------------------------------------------*/
@@ -1877,7 +1873,6 @@ void lsf_end_enc_ivas_fx(
}
}
-
/*--------------------------------------------------------------------------*
* De-quantize encoded LSF vector
*--------------------------------------------------------------------------*/
@@ -1944,9 +1939,11 @@ void lsf_end_enc_ivas_fx(
/* Update AR-predictor memories */
Copy( qlsf, st->mem_AR_fx, M );
+
return;
}
+
/*-------------------------------------------------------------------*
* first_VQstages()
*
@@ -1970,11 +1967,6 @@ static void first_VQstages(
Word16 *pTmp_short, idx_buf[2 * LSFMBEST * MAX_VQ_STAGES], parents[LSFMBEST], counter = 0, j,
m, s, c, c2, p_max, *indices[2];
Word16 maxC = LSFMBEST;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/*float dd[16];*/
const Word16 *cb_stage, *cbp;
@@ -2000,13 +1992,9 @@ static void first_VQstages(
L_tmp = L_deposit_l( 0 );
FOR( j = 0; j < N; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp1 = L_shl_sat( L_mult0( u[j], w[j] ), 7 ); /*x2.56 + Q8 + Q7 */
-#else
- L_tmp1 = L_shl_o( L_mult0( u[j], w[j] ), 7, &Overflow ); /*x2.56 + Q8 + Q7 */
-#endif
- L_tmp1 = Mult_32_16( L_tmp1, u[j] ); /*x2.56 + Q15 + x2.56 -Q15 */
- L_tmp = L_add( L_tmp, L_tmp1 ); /*Q0 + x2.56 +x2.56 */
+ L_tmp1 = Mult_32_16( L_tmp1, u[j] ); /*x2.56 + Q15 + x2.56 -Q15 */
+ L_tmp = L_add( L_tmp, L_tmp1 ); /*Q0 + x2.56 +x2.56 */
}
set32_fx( dist[1], L_tmp, maxC );
@@ -2125,6 +2113,7 @@ static void first_VQstages(
/*------------------------------------------------------------*
* Compute error vectors for each node
*------------------------------------------------------------*/
+
cs = 0;
move16();
FOR( c = 0; c < maxC; c++ )
@@ -2149,6 +2138,7 @@ static void first_VQstages(
return;
}
+
static void first_VQstages_ivas_fx(
const Word16 *const *cb,
Word16 u[], /* i : vector to be encoded (prediction and mean removed) */
@@ -2166,11 +2156,6 @@ static void first_VQstages_ivas_fx(
Word16 *pTmp_short, idx_buf[2 * LSFMBEST * MAX_VQ_STAGES], parents[LSFMBEST], counter = 0, j,
m, s, c, c2, p_max, *indices[2];
Word16 maxC = LSFMBEST;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/*float dd[16];*/
const Word16 *cb_stage, *cbp;
@@ -2196,13 +2181,9 @@ static void first_VQstages_ivas_fx(
L_tmp = L_deposit_l( 0 );
FOR( j = 0; j < N; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp1 = L_shl_sat( L_mult0( u[j], w[j] ), 7 ); /*x2.56 + Q8 + Q7 */
-#else
- L_tmp1 = L_shl_o( L_mult0( u[j], w[j] ), 7, &Overflow ); /*x2.56 + Q8 + Q7 */
-#endif
- L_tmp1 = Mult_32_16( L_tmp1, u[j] ); /*x2.56 + Q15 + x2.56 -Q15 */
- L_tmp = L_add( L_tmp, L_tmp1 ); /*Q0 + x2.56 +x2.56 */
+ L_tmp1 = Mult_32_16( L_tmp1, u[j] ); /*x2.56 + Q15 + x2.56 -Q15 */
+ L_tmp = L_add( L_tmp, L_tmp1 ); /*Q0 + x2.56 +x2.56 */
}
set32_fx( dist[1], L_shr( L_tmp, 1 ), maxC ); /*Q-1 + x2.56 +x2.56 */
@@ -2321,6 +2302,7 @@ static void first_VQstages_ivas_fx(
/*------------------------------------------------------------*
* Compute error vectors for each node
*------------------------------------------------------------*/
+
cs = 0;
move16();
FOR( c = 0; c < maxC; c++ )
@@ -2344,6 +2326,8 @@ static void first_VQstages_ivas_fx(
return;
}
+
+
/*---------------------------------------------------------------------------
* vq_enc_lsf_lvq()
*
@@ -2404,7 +2388,6 @@ static Word32 vq_lvq_lsf_enc(
first_VQstages( cb, u, levels, stagesVQ, w, M, MSVQ_MAXCNT, indices_firstVQ );
}
-
FOR( i = 0; i < maxC; i++ )
{
Copy( pred, cand[i], M );
@@ -2464,6 +2447,7 @@ static Word32 vq_lvq_lsf_enc(
return e[c2];
}
+
static Word32 vq_lvq_lsf_enc_ivas_fx(
Word16 pred_flag,
Word16 mode,
@@ -2524,7 +2508,6 @@ static Word32 vq_lvq_lsf_enc_ivas_fx(
first_VQstages_ivas_fx( cb, u, levels, stagesVQ, w, M, MSVQ_MAXCNT, indices_firstVQ );
}
-
FOR( i = 0; i < maxC; i++ )
{
Copy( pred, cand[i], M );
@@ -2559,11 +2542,7 @@ static Word32 vq_lvq_lsf_enc_ivas_fx(
L_tmp = L_mult( mult( diff[0], shl_sat( w[0], 1 ) ), diff[0] ); /*(2.56+Q5+ Q10 -Q15) + 2.56+ Q5 + Q1 = 2.56 + 2.56 + Q6 */
FOR( j = 1; j < M; j++ )
{
-#ifdef FIX_1979_SAT_MISSING_IN_LSF_ENC
L_tmp = L_mac_sat( L_tmp, mult( diff[j], shl_sat( w[j], 1 ) ), diff[j] ); /*(2.56+Q5+ Q10 -Q15) + 2.56+ Q5 + Q1 = 2.56 + 2.56 + Q6 */
-#else
- L_tmp = L_mac( L_tmp, mult( diff[j], shl_sat( w[j], 1 ) ), diff[j] ); /*(2.56+Q5+ Q10 -Q15) + 2.56+ Q5 + Q1 = 2.56 + 2.56 + Q6 */
-#endif
}
e[i] = L_tmp;
move32();
@@ -2586,6 +2565,8 @@ static Word32 vq_lvq_lsf_enc_ivas_fx(
return e[c2];
}
+
+
static void BcTcvq_1st_fx(
Word16 x_fx[][2], /*x2.56*/
const Word16 CB_fx[][128][2], /*x2.56*/
@@ -2736,7 +2717,6 @@ static void BcTcvq_SubBlock_fx(
Word16 stage1, stage2, state, prev_state, branch;
Word16 index, bestCode, brCode[N_DIM];
Word16 temp16_fx;
-
Word32 dist_fx, minDist_fx, brDist_fx[N_DIM];
Word16 pred_fx[N_DIM], target_fx[N_DIM], brQuant_fx[N_DIM][N_DIM];
@@ -2745,7 +2725,6 @@ static void BcTcvq_SubBlock_fx(
FOR( state = 0; state < NUM_STATE; state++ )
{
-
/* 1st branch search */
prev_state = NTRANS[0][state];
move16();
@@ -2943,8 +2922,11 @@ static Word32 BcTcvq_FixSearch_fx(
move16();
minDist_fx = L_shr( minDist_fx, 2 ); /*2.56*2.56*Q(-5 - 2)*/
+
return minDist_fx;
}
+
+
static Word16 optimalPath_fx(
Word32 cDist_fx[][16], /*2.56*2.56*Q(-5 - 2)*/
Word32 blockDist_fx[], /*2.56*2.56*Q(-5 - 2)*/
@@ -3084,7 +3066,6 @@ static void buildCode_fx(
set16_fx( BrIndex, 0, ( N_STAGE_VQ - 4 ) );
-
FOR( stage = N_STAGE_VQ - 4; stage >= 1; stage-- )
{
if ( GT_16( s[stage], 7 ) )
@@ -3123,6 +3104,8 @@ static void buildCode_fx(
return;
}
+
+
static void BcTcvq_fx(
Word16 snFlag,
const Word16 *x_fx, // x2.65
@@ -3338,11 +3321,7 @@ Word32 qlsf_ARSN_tcvq_Enc_16k_fx(
Word16 error_svq_fx[M], error_svq_q_fx[M];
Word16 cl, cs;
Word32 temp_l;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
+
IF( EQ_16( safety_net, 1 ) )
{
indice[0] = 1;
@@ -3414,11 +3393,7 @@ Word32 qlsf_ARSN_tcvq_Enc_16k_fx(
{
yy_fx[i] = shl( yy_fx[i], cs );
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
temp_l = L_mac_sat( temp_l, mult( yy_fx[i], shl_sat( w_fx[i], 2 ) ), yy_fx[i] );
-#else
- temp_l = L_mac_o( temp_l, mult( yy_fx[i], shl_sat( w_fx[i], 2 ) ), yy_fx[i], &Overflow );
-#endif
}
cs = shl( cs, 1 );
temp_l = L_shr( temp_l, cs );
@@ -3437,20 +3412,11 @@ static void FFT_Mid_Interpol_16k_fx(
)
{
Word16 i;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
FOR( i = 0; i < L_FFT / 2; i++ )
{
/* Interpolation */
-#ifdef ISSUE_1867_replace_overflow_libenc
Bin_Ener_mid[i] = L_shr( L_add_sat( Bin_Ener_old[i], Bin_Ener[i] ), 1 );
-#else
- Bin_Ener_mid[i] = L_shr( L_add_o( Bin_Ener_old[i], Bin_Ener[i], &Overflow ), 1 );
-#endif
/* Memory update */
Bin_Ener_old[i] = Bin_Ener[i];
@@ -3515,11 +3481,6 @@ static void lsf_mid_enc_fx(
Word32 L_tmp;
Word16 tmp, k1;
const Word16 *ratio = NULL;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/* convert LSPs to LSFs */
lsp2lsf_fx( lsp, lsf, M, int_fs );
@@ -3631,13 +3592,8 @@ static void lsf_mid_enc_fx(
/* err += wghts[j] * ftemp * ftemp; */
/* tmp is usually very small, we can have some extra precision with very rare saturation */
tmp = shl_sat( tmp, 4 );
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = mult_r_sat( tmp, tmp );
err = L_mac_sat( err, tmp, shl_sat( wghts[j], 2 ) );
-#else
- tmp = mult_ro( tmp, tmp, &Overflow );
- err = L_mac_o( err, tmp, shl_sat( wghts[j], 2 ), &Overflow );
-#endif
}
/* err = L_shl(err,Wscale); */
err = Mult_32_16( err, LSF_1_OVER_256SQ );
@@ -3699,11 +3655,6 @@ static void lsf_mid_enc_ivas_fx(
Word32 L_tmp;
Word16 tmp, k1;
const Word16 *ratio = NULL;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/* convert LSPs to LSFs */
lsp2lsf_fx( lsp, lsf, M, int_fs );
@@ -3824,13 +3775,8 @@ static void lsf_mid_enc_ivas_fx(
/* err += wghts[j] * ftemp * ftemp; */
/* tmp is usually very small, we can have some extra precision with very rare saturation */
tmp = shl_sat( tmp, 4 );
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = mult_r_sat( tmp, tmp );
err = L_mac_sat( err, tmp, shl_sat( wghts[j], 2 ) );
-#else
- tmp = mult_ro( tmp, tmp, &Overflow );
- err = L_mac_o( err, tmp, shl_sat( wghts[j], 2 ), &Overflow );
-#endif
}
/* err = L_shl(err,Wscale); */
err = Mult_32_16( err, LSF_1_OVER_256SQ );
diff --git a/lib_enc/lsf_msvq_ma_enc_fx.c b/lib_enc/lsf_msvq_ma_enc_fx.c
index 333ea97ff14438722073c9a9b7192a8d8ae49d8b..c0e02d6c245bafbdd51e2a5ffc2c02bb85a2e4c1 100644
--- a/lib_enc/lsf_msvq_ma_enc_fx.c
+++ b/lib_enc/lsf_msvq_ma_enc_fx.c
@@ -1576,11 +1576,6 @@ void midlsf_enc_fx(
Word32 err, err_min, L_tmp;
Word16 k, k1, j, tmp, size, qlsf[M], wghts[M];
const Word16 *ratio;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
IF( EQ_16( coder_type, UNVOICED ) )
{
@@ -1631,18 +1626,10 @@ void midlsf_enc_fx(
/* err += wghts[j] * ftemp * ftemp; */
/* tmp is usually very small, we can have some extra precision with very rare saturation */
tmp = shl_sat( tmp, 4 );
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = mult_r_sat( tmp, tmp );
-#else
- tmp = mult_ro( tmp, tmp, &Overflow );
-#endif
err = L_mac( err, tmp, wghts[j] );
}
-#ifdef ISSUE_1867_replace_overflow_libenc
err = L_shl_sat( err, 2 );
-#else
- err = L_shl_o( err, 2, &Overflow );
-#endif
/* err = L_shl(err,Wscale); */
err = Mult_32_16( err, LSF_1_OVER_256SQ );
diff --git a/lib_enc/mdct_classifier_fx.c b/lib_enc/mdct_classifier_fx.c
index 790ec7aa8db0985304b0d493b99aace1fc44c3e6..2b55889f57d542899ea5ec7f52c9ec2010a83a5b 100644
--- a/lib_enc/mdct_classifier_fx.c
+++ b/lib_enc/mdct_classifier_fx.c
@@ -118,16 +118,9 @@ Word16 mdct_classifier_fx( /* o: MDCT A/B decision
Word16 exp, exp1, exp2, exp3;
Word32 L_tmp, L_tmp1;
TCX_ENC_HANDLE hTcxEnc = st_fx->hTcxEnc;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
- test();
- {
- dft_mag_square_fx( fft_buff, magSq, 256 );
- }
+ dft_mag_square_fx( fft_buff, magSq, 256 );
+
nf = L_add( magSq[0], 0 );
pe = L_add( magSq[0], 0 );
np = 0;
@@ -358,11 +351,7 @@ Word16 mdct_classifier_fx( /* o: MDCT A/B decision
test();
test();
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
IF( GT_32( Mult_32_16( gain3, 27307 ), gain2 ) || ( GE_32( gain3, Mult_32_16( gain2, 26214 ) ) && GT_32( peak_H1, L_shl_sat( avrg_H1, 1 ) ) ) || ( LT_32( Mult_32_32( L_shl( peak_l, exp ), L_shl( avrg_h, exp1 ) ), Mult_32_32( L_shl( L_tmp, exp ), L_shl( avrg_l, exp1 ) ) ) || GT_32( Mult_32_32( L_shl( L_tmp1, exp2 ), L_shl( avrg_h, exp1 ) ), Mult_32_32( L_shl( peak_h, exp2 ), L_shl( avrg_l, exp1 ) ) ) ) )
-#else
- IF( GT_32( Mult_32_16( gain3, 27307 ), gain2 ) || ( GE_32( gain3, Mult_32_16( gain2, 26214 ) ) && GT_32( peak_H1, L_shl_o( avrg_H1, 1, &Overflow ) ) ) || ( LT_32( Mult_32_32( L_shl_o( peak_l, exp, &Overflow ), L_shl_o( avrg_h, exp1, &Overflow ) ), Mult_32_32( L_shl_o( L_tmp, exp, &Overflow ), L_shl_o( avrg_l, exp1, &Overflow ) ) ) || GT_32( Mult_32_32( L_shl_o( L_tmp1, exp2, &Overflow ), L_shl_o( avrg_h, exp1, &Overflow ) ), Mult_32_32( L_shl_o( peak_h, exp2, &Overflow ), L_shl_o( avrg_l, exp1, &Overflow ) ) ) ) )
-#endif
{
condition3 = 1;
move16();
@@ -456,11 +445,7 @@ Word16 mdct_classifier_fx( /* o: MDCT A/B decision
test();
test();
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
IF( ( EQ_16( hTcxEnc->clas_final_old, HQ_CORE ) || EQ_16( hTcxEnc->clas_final_old, TCX_20_CORE ) ) && ( ( GT_32( hTcxEnc->last_gain1, L_shr( gain1_tmp, 1 ) ) && LT_32( hTcxEnc->last_gain1, L_shl_sat( gain1_tmp, 1 ) ) ) && ( GT_32( hTcxEnc->last_gain2, L_shr( gain2_tmp, 1 ) ) && LT_32( hTcxEnc->last_gain2, L_shl_sat( gain2_tmp, 1 ) ) ) ) )
-#else
- IF( ( EQ_16( hTcxEnc->clas_final_old, HQ_CORE ) || EQ_16( hTcxEnc->clas_final_old, TCX_20_CORE ) ) && ( ( GT_32( hTcxEnc->last_gain1, L_shr( gain1_tmp, 1 ) ) && LT_32( hTcxEnc->last_gain1, L_shl_o( gain1_tmp, 1, &Overflow ) ) ) && ( GT_32( hTcxEnc->last_gain2, L_shr( gain2_tmp, 1 ) ) && LT_32( hTcxEnc->last_gain2, L_shl_o( gain2_tmp, 1, &Overflow ) ) ) ) )
-#endif
{
clas_final = hTcxEnc->clas_final_old;
move16();
@@ -553,10 +538,6 @@ Word16 mdct_classifier_ivas_fx(
Word16 exp, exp1, exp2, exp3;
Word32 gain1_tmp = 0, gain2_tmp = 0;
Word32 L_tmp, L_tmp1;
-#ifndef ISSUE_1867_replace_overflow_libenc
- Flag Overflow = 0;
- move16();
-#endif
move16();
move16();
@@ -900,11 +881,7 @@ Word16 mdct_classifier_ivas_fx(
test();
test();
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
IF( GT_32( Mult_32_16( gain3, 27307 ), gain2 ) || ( GE_32( gain3, Mult_32_16( gain2, 26214 ) ) && GT_32( peak_H1, L_shl_sat( avrg_H1, 1 ) ) ) || ( LT_32( Mult_32_32( L_shl( peak_l, exp ), L_shl( avrg_h, exp1 ) ), Mult_32_32( L_shl( L_tmp, exp ), L_shl( avrg_l, exp1 ) ) ) || GT_32( Mult_32_32( L_shl( L_tmp1, exp2 ), L_shl( avrg_h, exp1 ) ), Mult_32_32( L_shl( peak_h, exp2 ), L_shl( avrg_l, exp1 ) ) ) ) )
-#else
- IF( GT_32( Mult_32_16( gain3, 27307 ), gain2 ) || ( GE_32( gain3, Mult_32_16( gain2, 26214 ) ) && GT_32( peak_H1, L_shl_o( avrg_H1, 1, &Overflow ) ) ) || ( LT_32( Mult_32_32( L_shl_o( peak_l, exp, &Overflow ), L_shl_o( avrg_h, exp1, &Overflow ) ), Mult_32_32( L_shl_o( L_tmp, exp, &Overflow ), L_shl_o( avrg_l, exp1, &Overflow ) ) ) || GT_32( Mult_32_32( L_shl_o( L_tmp1, exp2, &Overflow ), L_shl_o( avrg_h, exp1, &Overflow ) ), Mult_32_32( L_shl_o( peak_h, exp2, &Overflow ), L_shl_o( avrg_l, exp1, &Overflow ) ) ) ) )
-#endif
{
condition3 = 1;
move16();
@@ -1005,11 +982,7 @@ Word16 mdct_classifier_ivas_fx(
test();
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
IF( ( EQ_16( hTcxEnc->clas_final_old, HQ_CORE ) || EQ_16( hTcxEnc->clas_final_old, TCX_20_CORE ) ) && ( ( GT_32( hTcxEnc->last_gain1, L_shr( gain1_tmp, 1 ) ) && LT_32( hTcxEnc->last_gain1, L_shl_sat( gain1_tmp, 1 ) ) ) && ( GT_32( hTcxEnc->last_gain2, L_shr( gain2_tmp, 1 ) ) && LT_32( hTcxEnc->last_gain2, L_shl_sat( gain2_tmp, 1 ) ) ) ) )
-#else
- IF( ( EQ_16( hTcxEnc->clas_final_old, HQ_CORE ) || EQ_16( hTcxEnc->clas_final_old, TCX_20_CORE ) ) && ( ( GT_32( hTcxEnc->last_gain1, L_shr( gain1_tmp, 1 ) ) && LT_32( hTcxEnc->last_gain1, L_shl_o( gain1_tmp, 1, &Overflow ) ) ) && ( GT_32( hTcxEnc->last_gain2, L_shr( gain2_tmp, 1 ) ) && LT_32( hTcxEnc->last_gain2, L_shl_o( gain2_tmp, 1, &Overflow ) ) ) ) )
-#endif
{
clas_final = hTcxEnc->clas_final_old;
move16();
diff --git a/lib_enc/multi_harm_fx.c b/lib_enc/multi_harm_fx.c
index ba68b685208adcafee3a7dfaf8ae74fead13a6f7..10d89ea75405eefb6f0b9bda29c6626357e08eee 100644
--- a/lib_enc/multi_harm_fx.c
+++ b/lib_enc/multi_harm_fx.c
@@ -1,10 +1,10 @@
/*====================================================================================
EVS Codec 3GPP TS26.452 Aug 12, 2021. Version 16.3.0
====================================================================================*/
+
#include
-#include "options.h" /* Compilation switches */
-#include "cnst.h" /* Common constants */
-//#include "prot_fx.h" /* Function prototypes */
+#include "options.h" /* Compilation switches */
+#include "cnst.h" /* Common constants */
#include "prot_fx.h" /* Function prototypes */
#include "prot_fx_enc.h" /* Function prototypes */
#include "basop_util.h"
@@ -20,19 +20,21 @@
* Perform multi-harmonic analysis, information used for UV and VAD decision
*---------------------------------------------------------------------*/
-Word16 multi_harm_fx( /* o : frame multi-harmonicity (1-harmonic, 0-not) */
- const Word16 Bin_E[], /* i : log-energy spectrum of the current frame Q7 */
- Word16 old_S[], /* i/o: prev. log-energy spectrum w. subtracted floor Q7 */
- Word16 cor_map_LT[], /* i/o: LT correlation map Q15 */
- Word16 *multi_harm_limit, /* i/o: multi harminic threshold Q9 */
- const Word32 total_brate, /* i : total bitrate Q0 */
- const Word16 bwidth, /* i : input signal bandwidth Q0 */
- Word16 *cor_strong_limit, /* i/o: HF correlation indicator Q0 */
- Word16 *st_mean_avr_dyn, /* i/o: long term average dynamic Q7 */
- Word16 *st_last_sw_dyn, /* i/o: last dynamic Q7 */
- Word16 *cor_map_sum, /* i : sum of correlation map Q8 */
- Word16 *sp_floor, /* o: noise floor estimate Q7 */
- Word16 S_map[] /* o : short-term correlation map Q7 */
+/* o : frame multi-harmonicity (1-harmonic, 0-not) */
+Word16 multi_harm_fx(
+
+ const Word16 Bin_E[], /* i : log-energy spectrum of the current frame Q7 */
+ Word16 old_S[], /* i/o: prev. log-energy spectrum w. subtracted floor Q7 */
+ Word16 cor_map_LT[], /* i/o: LT correlation map Q15 */
+ Word16 *multi_harm_limit, /* i/o: multi harminic threshold Q9 */
+ const Word32 total_brate, /* i : total bitrate Q0 */
+ const Word16 bwidth, /* i : input signal bandwidth Q0 */
+ Word16 *cor_strong_limit, /* i/o: HF correlation indicator Q0 */
+ Word16 *st_mean_avr_dyn, /* i/o: long term average dynamic Q7 */
+ Word16 *st_last_sw_dyn, /* i/o: last dynamic Q7 */
+ Word16 *cor_map_sum, /* i : sum of correlation map Q8 */
+ Word16 *sp_floor, /* o: noise floor estimate Q7 */
+ Word16 S_map[] /* o : short-term correlation map Q7 */
)
{
Word16 i, j, k, L, stemp, N_mins, ind_mins[L_FFT / 4], *pt_mins, harm;
@@ -41,12 +43,6 @@ Word16 multi_harm_fx( /* o : frame multi-harmonicity
Word32 L_acc;
Word32 Lcorx2, Lcory2, Lcorxy, Lcor_map_LT_sum;
Word16 mean_dyn;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*------------------------------------------------------------------*
* initialization
@@ -214,11 +210,7 @@ Word16 multi_harm_fx( /* o : frame multi-harmonicity
IF( EQ_16( i, ind_mins[k] ) )
{
/* include the last peak point (new minimum) to the corr. sum */
-#ifdef ISSUE_1867_replace_overflow_libenc
Lcory2 = L_mac_sat( Lcory2, old_S[i], old_S[i] );
-#else
- Lcory2 = L_mac_o( Lcory2, old_S[i], old_S[i], &Overflow );
-#endif
/* calculation of the norm. peak correlation */
test();
@@ -269,15 +261,9 @@ Word16 multi_harm_fx( /* o : frame multi-harmonicity
k++;
}
-#ifdef ISSUE_1867_replace_overflow_libenc
Lcorx2 = L_mac_sat( Lcorx2, S[i], S[i] );
Lcory2 = L_mac_sat( Lcory2, old_S[i], old_S[i] );
Lcorxy = L_mac_sat( Lcorxy, S[i], old_S[i] );
-#else
- Lcorx2 = L_mac_o( Lcorx2, S[i], S[i], &Overflow );
- Lcory2 = L_mac_o( Lcory2, old_S[i], old_S[i], &Overflow );
- Lcorxy = L_mac_o( Lcorxy, S[i], old_S[i], &Overflow );
-#endif
}
Copy( S, old_S, ind_mins[0] );
@@ -374,19 +360,21 @@ Word16 multi_harm_fx( /* o : frame multi-harmonicity
return harm;
}
-Word16 multi_harm_ivas_fx( /* o : frame multi-harmonicity (1-harmonic, 0-not) */
- const Word16 Bin_E[], /* i : log-energy spectrum of the current frame Q7 */
- Word16 old_S[], /* i/o: prev. log-energy spectrum w. subtracted floor Q7 */
- Word16 cor_map_LT[], /* i/o: LT correlation map Q15 */
- Word16 *multi_harm_limit, /* i/o: multi harminic threshold Q9 */
- const Word32 total_brate, /* i : total bitrate Q0 */
- const Word16 bwidth, /* i : input signal bandwidth Q0 */
- Word16 *cor_strong_limit, /* i/o: HF correlation indicator Q0 */
- Word16 *st_mean_avr_dyn, /* i/o: long term average dynamic Q7 */
- Word16 *st_last_sw_dyn, /* i/o: last dynamic Q7 */
- Word16 *cor_map_sum, /* i : sum of correlation map Q8 */
- Word16 *sp_floor, /* o: noise floor estimate Q7 */
- Word16 S_map[] /* o : short-term correlation map Q7 */
+
+/* o : frame multi-harmonicity (1-harmonic, 0-not) */
+Word16 multi_harm_ivas_fx(
+ const Word16 Bin_E[], /* i : log-energy spectrum of the current frame Q7 */
+ Word16 old_S[], /* i/o: prev. log-energy spectrum w. subtracted floor Q7 */
+ Word16 cor_map_LT[], /* i/o: LT correlation map Q15 */
+ Word16 *multi_harm_limit, /* i/o: multi harminic threshold Q9 */
+ const Word32 total_brate, /* i : total bitrate Q0 */
+ const Word16 bwidth, /* i : input signal bandwidth Q0 */
+ Word16 *cor_strong_limit, /* i/o: HF correlation indicator Q0 */
+ Word16 *st_mean_avr_dyn, /* i/o: long term average dynamic Q7 */
+ Word16 *st_last_sw_dyn, /* i/o: last dynamic Q7 */
+ Word16 *cor_map_sum, /* i : sum of correlation map Q8 */
+ Word16 *sp_floor, /* o: noise floor estimate Q7 */
+ Word16 S_map[] /* o : short-term correlation map Q7 */
)
{
Word16 i, j, k, L, stemp, N_mins, ind_mins[L_FFT / 4], *pt_mins, harm;
@@ -396,12 +384,6 @@ Word16 multi_harm_ivas_fx( /* o : frame multi-harmoni
Word32 L_acc;
Word32 Lcorx2, Lcory2, Lcorxy, Lcor_map_LT_sum;
Word16 mean_dyn;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*------------------------------------------------------------------*
* initialization
@@ -563,11 +545,7 @@ Word16 multi_harm_ivas_fx( /* o : frame multi-harmoni
IF( EQ_16( i, ind_mins[k] ) )
{
/* include the last peak point (new minimum) to the corr. sum */
-#ifdef ISSUE_1867_replace_overflow_libenc
Lcory2 = L_mac_sat( Lcory2, old_S[i], old_S[i] );
-#else
- Lcory2 = L_mac_o( Lcory2, old_S[i], old_S[i], &Overflow );
-#endif
/* calculation of the norm. peak correlation */
test();
@@ -618,15 +596,9 @@ Word16 multi_harm_ivas_fx( /* o : frame multi-harmoni
k++;
}
-#ifdef ISSUE_1867_replace_overflow_libenc
Lcorx2 = L_mac_sat( Lcorx2, S[i], S[i] );
Lcory2 = L_mac_sat( Lcory2, old_S[i], old_S[i] );
Lcorxy = L_mac_sat( Lcorxy, S[i], old_S[i] );
-#else
- Lcorx2 = L_mac_o( Lcorx2, S[i], S[i], &Overflow );
- Lcory2 = L_mac_o( Lcory2, old_S[i], old_S[i], &Overflow );
- Lcorxy = L_mac_o( Lcorxy, S[i], old_S[i], &Overflow );
-#endif
}
Copy( S, old_S, ind_mins[0] );
diff --git a/lib_enc/nelp_enc_fx.c b/lib_enc/nelp_enc_fx.c
index 9d192500f9f83c415b6ad3031c9c9b99b9959163..9122be431e58c675afd23259c8c2f78f30d5892e 100644
--- a/lib_enc/nelp_enc_fx.c
+++ b/lib_enc/nelp_enc_fx.c
@@ -354,12 +354,6 @@ void nelp_encoder_fx(
move32();
Word16 BP1_ORDER;
Word16 rf_flag;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
SC_VBR_ENC_HANDLE hSC_VBR = st_fx->hSC_VBR;
BSTR_ENC_HANDLE hBstr = st_fx->hBstr;
RF_ENC_HANDLE hRF = st_fx->hRF;
@@ -424,15 +418,10 @@ void nelp_encoder_fx(
E1_fx = L_deposit_l( 0 );
FOR( i = 0; i < L_FRAME; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
E1_fx = L_mac0_sat( E1_fx, in_fx[i], in_fx[i] ); /*Q(qE1+qE1) */
-#else
- E1_fx = L_mac0_o( E1_fx, in_fx[i], in_fx[i], &Overflow ); /*Q(qE1+qE1) */
-#endif
}
qE1 = shl( qE1, 1 );
- ;
qf = qIn;
move16();
@@ -444,11 +433,7 @@ void nelp_encoder_fx(
EL1_fx = L_deposit_l( 0 );
FOR( i = 0; i < L_FRAME; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
EL1_fx = L_mac0_sat( EL1_fx, filtRes_fx[i], filtRes_fx[i] ); /*Q(2*qIn) */
-#else
- EL1_fx = L_mac0_o( EL1_fx, filtRes_fx[i], filtRes_fx[i], &Overflow ); /*Q(2*qIn) */
-#endif
}
qEL1 = shl( qEL1, 1 );
@@ -464,11 +449,7 @@ void nelp_encoder_fx(
EH1_fx = L_deposit_l( 0 );
FOR( i = 0; i < L_FRAME; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
EH1_fx = L_mac0_sat( EH1_fx, filtRes_fx[i], filtRes_fx[i] ); /*Q(2*qEH1) */
-#else
- EH1_fx = L_mac0_o( EH1_fx, filtRes_fx[i], filtRes_fx[i], &Overflow ); /*Q(2*qEH1) */
-#endif
}
qEH1 = 2 * qEH1;
move16();
@@ -484,11 +465,7 @@ void nelp_encoder_fx(
Ltemp = L_deposit_l( 0 );
FOR( j = (Word16) ( i * lag ); j < (Word16) ( ( i + 1 ) * lag ); j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltemp = L_mac0_sat( Ltemp, in_fx[j], in_fx[j] ); /*Q(2*qGain) */
-#else
- Ltemp = L_mac0_o( Ltemp, in_fx[j], in_fx[j], &Overflow ); /*Q(2*qGain) */
-#endif
}
/*Gains[i] = (float) sqrt(Gains[i]/lag); */
@@ -512,11 +489,7 @@ void nelp_encoder_fx(
Ltemp = L_deposit_l( 0 );
FOR( j = (Word16) ( i * lag ); j < L_FRAME; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltemp = L_mac0_sat( Ltemp, in_fx[j], in_fx[j] ); /*Q(2*qGain) */
-#else
- Ltemp = L_mac0_o( Ltemp, in_fx[j], in_fx[j], &Overflow ); /*Q(2*qGain) */
-#endif
}
/*Gains[i] = (float) sqrt(Gains[i]/(L_FRAME-(lag*i))); */
@@ -1121,12 +1094,6 @@ void nelp_encoder_ivas_fx(
move32();
Word16 BP1_ORDER;
Word16 rf_flag;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
SC_VBR_ENC_HANDLE hSC_VBR = st_fx->hSC_VBR;
BSTR_ENC_HANDLE hBstr = st_fx->hBstr;
RF_ENC_HANDLE hRF = st_fx->hRF;
@@ -1193,11 +1160,7 @@ void nelp_encoder_ivas_fx(
E1_fx = L_deposit_l( 0 );
FOR( i = 0; i < L_FRAME; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
E1_fx = L_mac0_sat( E1_fx, in_fx[i], in_fx[i] ); /*Q(qE1+qE1) */
-#else
- E1_fx = L_mac0_o( E1_fx, in_fx[i], in_fx[i], &Overflow ); /*Q(qE1+qE1) */
-#endif
}
qE1 = shl( qE1, 1 );
@@ -1212,11 +1175,7 @@ void nelp_encoder_ivas_fx(
EL1_fx = L_deposit_l( 0 );
FOR( i = 0; i < L_FRAME; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
EL1_fx = L_mac0_sat( EL1_fx, filtRes_fx[i], filtRes_fx[i] ); /*Q(2*qIn) */
-#else
- EL1_fx = L_mac0_o( EL1_fx, filtRes_fx[i], filtRes_fx[i], &Overflow ); /*Q(2*qIn) */
-#endif
}
qEL1 = shl( qEL1, 1 );
@@ -1232,11 +1191,7 @@ void nelp_encoder_ivas_fx(
EH1_fx = L_deposit_l( 0 );
FOR( i = 0; i < L_FRAME; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
EH1_fx = L_mac0_sat( EH1_fx, filtRes_fx[i], filtRes_fx[i] ); /*Q(2*qEH1) */
-#else
- EH1_fx = L_mac0_o( EH1_fx, filtRes_fx[i], filtRes_fx[i], &Overflow ); /*Q(2*qEH1) */
-#endif
}
qEH1 = shl( qEH1, 1 );
move16();
@@ -1251,11 +1206,7 @@ void nelp_encoder_ivas_fx(
Ltemp = L_deposit_l( 0 );
FOR( j = (Word16) ( i * lag ); j < (Word16) ( ( i + 1 ) * lag ); j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltemp = L_mac0_sat( Ltemp, in_fx[j], in_fx[j] ); /*Q(2*qGain) */
-#else
- Ltemp = L_mac0_o( Ltemp, in_fx[j], in_fx[j], &Overflow ); /*Q(2*qGain) */
-#endif
}
/*Gains[i] = (float) sqrt(Gains[i]/lag); */
@@ -1279,11 +1230,7 @@ void nelp_encoder_ivas_fx(
Ltemp = L_deposit_l( 0 );
FOR( j = i_mult( i, lag ); j < L_FRAME; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltemp = L_mac0_sat( Ltemp, in_fx[j], in_fx[j] ); /*Q(2*qGain) */
-#else
- Ltemp = L_mac0_o( Ltemp, in_fx[j], in_fx[j], &Overflow ); /*Q(2*qGain) */
-#endif
}
/*Gains[i] = (float) sqrt(Gains[i]/(L_FRAME-(lag*i))); */
diff --git a/lib_enc/nois_est_fx.c b/lib_enc/nois_est_fx.c
index fb07df485a5f63e9f9df553bfc626e90bdcac6dd..181b1f10efdaa1b64a506e835250cf7b7f2480ab 100644
--- a/lib_enc/nois_est_fx.c
+++ b/lib_enc/nois_est_fx.c
@@ -102,16 +102,8 @@ static Word16 noise_est_ln_q8_fx(
{
Word16 e_ener, f_ener;
Word32 L_tmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
- L_tmp = L_add_o( L_enr, L_shl( (Word32) 1L, q_new_plus_q_scale ), &Overflow ); /* +1.0f */
-#else
L_tmp = L_add_sat( L_enr, L_shl( (Word32) 1L, q_new_plus_q_scale ) ); /* +1.0f */
-#endif
if ( flag_add1p0 == 0 )
{
L_tmp = L_add( L_enr, 0 ); /* +0 , no offset */
@@ -123,9 +115,11 @@ static Word16 noise_est_ln_q8_fx(
f_ener = Log2_norm_lc( L_shl( L_tmp, e_ener ) );
e_ener = sub( sub( 30, e_ener ), q_new_plus_q_scale );
L_tmp = Mpy_32_16( e_ener, f_ener, 22713 ); /* Q16 (22713 = Ln(2) in Q15)*/
- return round_fx( L_shl( L_tmp, 8 ) ); /* Q8 */
+
+ return round_fx( L_shl( L_tmp, 8 ) ); /* Q8 */
}
+
/*-----------------------------------------------------------------*
* eps_quota_fx()
*
@@ -668,11 +662,6 @@ void noise_est_down_fx(
Word16 scale;
Word32 totalNoise_temp;
Word32 L_Etot, L_Etot_last, L_Etot_v_h2, L_Etot_v;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
L_Etot = L_shl( Etot, 16 ); /*Q24 for later AR1 computations*/
L_Etot_last = L_shl( *Etot_last, 16 );
@@ -687,15 +676,9 @@ void noise_est_down_fx(
totalNoise_temp = L_deposit_l( 0 );
FOR( i = min_band; i <= max_band; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
totalNoise_temp = L_add_sat( totalNoise_temp, bckr[i] ); /*Q_new+QSCALE*/
-#else
- totalNoise_temp = L_add_o( totalNoise_temp, bckr[i], &Overflow ); /*Q_new+QSCALE*/
-#endif
}
totalNoise_temp = L_max( totalNoise_temp, L_shl( e_min, 4 ) );
-
-
totalNoise_temp = L_max( totalNoise_temp, (Word32) 1L ); /* make sure log2_norm_lc does not cause table reading out of bounds */
/*totalNoise = 10.0f * (float)log10( *totalNoise );*/
@@ -715,11 +698,7 @@ void noise_est_down_fx(
FOR( i = 0; i < NB_BANDS; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp = L_add_sat( L_shr_r( *pt1, 1 ), L_shr_r( *pt2, 1 ) );
-#else
- Ltmp = L_add_o( L_shr_r( *pt1, 1 ), L_shr_r( *pt2, 1 ), &Overflow );
-#endif
/*Ltmp = L_shr_r(L_add(*pt1,*pt2),1);*/
enr[i] = Ltmp;
move32(); /*Q_new+QSCALE*/
@@ -1010,19 +989,8 @@ void noise_est_fx(
SP_MUS_CLAS_HANDLE hSpMusClas;
hSpMusClas = st_fx->hSpMusClas;
(void) ( ncharX );
-
- /* Check if LR-VAD */
- {
- hNoiseEst = st_fx->hNoiseEst;
- }
-
+ hNoiseEst = st_fx->hNoiseEst;
GSC_ENC_HANDLE hGSCEnc = st_fx->hGSCEnc;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*-----------------------------------------------------------------*
* Initialization
@@ -1073,6 +1041,7 @@ void noise_est_fx(
}
}
}
+
/*-----------------------------------------------------------------*
* Set the threshold for eps & non_sta based on input sampling rate
* The reason is that in case of 8kHz sampling input, there is nothing
@@ -1104,7 +1073,6 @@ void noise_est_fx(
move16();
}
-
/*-----------------------------------------------------------------*
* Estimation of pitch stationarity
*-----------------------------------------------------------------*/
@@ -1117,13 +1085,8 @@ void noise_est_fx(
Ltmp = L_deposit_h( corr_shift );
Ltmp = L_mac( Ltmp, st_fx->voicing_fx[0], 10923 );
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp = L_mac_sat( Ltmp, st_fx->voicing_fx[1], 10923 );
wtmp = mac_r_sat( Ltmp, st_fx->voicing_fx[2], 10923 );
-#else
- Ltmp = L_mac_o( Ltmp, st_fx->voicing_fx[1], 10923, &Overflow );
- wtmp = mac_ro( Ltmp, st_fx->voicing_fx[2], 10923, &Overflow );
-#endif
tmp_pc = pc;
move16();
@@ -1139,16 +1102,15 @@ void noise_est_fx(
* Multi-harmonic analysis
*-----------------------------------------------------------------*/
+ IF( st_fx->hSpMusClas != NULL )
{
- IF( st_fx->hSpMusClas != NULL )
- {
- i = 0;
- move16();
- *loc_harm = multi_harm_fx( EspecdB, hNoiseEst->old_S_fx, hNoiseEst->cor_map_fx, &hNoiseEst->multi_harm_limit_fx, st_fx->total_brate,
- st_fx->bwidth, ( st_fx->hGSCEnc != NULL ) ? &hGSCEnc->cor_strong_limit : &i, &hSpMusClas->mean_avr_dyn_fx, &hSpMusClas->last_sw_dyn_fx, cor_map_sum, sp_floor, S_map );
- move16();
- }
+ i = 0;
+ move16();
+ *loc_harm = multi_harm_fx( EspecdB, hNoiseEst->old_S_fx, hNoiseEst->cor_map_fx, &hNoiseEst->multi_harm_limit_fx, st_fx->total_brate,
+ st_fx->bwidth, ( st_fx->hGSCEnc != NULL ) ? &hGSCEnc->cor_strong_limit : &i, &hSpMusClas->mean_avr_dyn_fx, &hSpMusClas->last_sw_dyn_fx, cor_map_sum, sp_floor, S_map );
+ move16();
}
+
/*-----------------------------------------------------------------*
* Detection of frames with non-stationary spectral content
*-----------------------------------------------------------------*/
@@ -1176,11 +1138,7 @@ void noise_est_fx(
FOR( i = 10; i <= st_fx->max_band; i++ )
{
Lnum = L_max( *pt1, *pt2 ); /* Don't need if anymore */
-#ifdef ISSUE_1867_replace_overflow_libenc
Lsum_den = L_add_sat( Lsum_den, Lnum );
-#else
- Lsum_den = L_add_o( Lsum_den, Lnum, &Overflow );
-#endif
Ltmpden = L_min( *pt1, *pt2 );
if ( Ltmpden == 0 )
{
@@ -1296,11 +1254,7 @@ void noise_est_fx(
/* alpha = 0.064f * ftemp + 0.75f; */
Ltmp = Mult_32_16( (Word32) 137438953L, tmp ); /* Q31(.064)+Q8+1-16 --> Q24 */
Ltmp = L_mac( Ltmp, 256, 24576 ); /* Q8+Q15(.75)+1 --> Q24 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- alpha = round_fx_sat( L_shl_sat( Ltmp, 7 ) ); /*Q24 +7 --> Q31 Q15*/
-#else
- alpha = round_fx_o( L_shl_o( Ltmp, 7, &Overflow ), &Overflow ); /*Q24 +7 --> Q31 Q15*/
-#endif
+ alpha = round_fx_sat( L_shl_sat( Ltmp, 7 ) ); /*Q24 +7 --> Q31 Q15*/
/*if( alpha > 0.999f { alpha = 0.999f;} */
alpha = s_min( alpha, 32735 ); /*.999 in Q15*/
@@ -1335,14 +1289,9 @@ void noise_est_fx(
/* + 1.0f added to reduce sensitivity to non stationarity in low energies */
/* tmp_enr = enr[i] + 1.0f; */
tmp_Q = add( Q_new, Q_SCALE );
- Ltmp = L_shl( (Word32) 1L, tmp_Q ); /* 1.0 added in the right dynamic domain */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ Ltmp = L_shl( (Word32) 1L, tmp_Q ); /* 1.0 added in the right dynamic domain */
L_tmp_enr = L_add_sat( enr[i], Ltmp ); /* enr scale dynamic */
L_tmp_ave_enr = L_add_sat( hNoiseEst->ave_enr_fx[i], Ltmp ); /* ave__enr scale dynamic */
-#else
- L_tmp_enr = L_add_o( enr[i], Ltmp, &Overflow ); /* enr scale dynamic */
- L_tmp_ave_enr = L_add_o( hNoiseEst->ave_enr_fx[i], Ltmp, &Overflow ); /* ave__enr scale dynamic */
-#endif
IF( LE_32( non_sta, th_sta ) ) /* Just to limit the saturation */
{
@@ -1381,14 +1330,10 @@ void noise_est_fx(
} */
/* ave_enr2:: calculation of another non-stationarity measure (following attacks) */
- Ltmp = L_shl( (Word32) 1L, tmp_Q ); /* 1.0 added in the right dynamic domain */
- /*L_tmp_enr = L_add(enr[i] , Ltmp );*/ /* enr scale dynamic , done above */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ Ltmp = L_shl( (Word32) 1L, tmp_Q ); /* 1.0 added in the right dynamic domain */
+ /*L_tmp_enr = L_add(enr[i] , Ltmp );*/ /* enr scale dynamic , done above */
L_tmp_ave_enr2 = L_add_sat( hNoiseEst->ave_enr2_fx[i], Ltmp ); /* ave__enr scale dynamic */
-#else
- L_tmp_ave_enr2 = L_add_o( hNoiseEst->ave_enr2_fx[i], Ltmp, &Overflow ); /* ave__enr scale dynamic */
-#endif
- IF( LE_32( Lnon_sta2, th_sta ) ) /* Just to limit the saturation */
+ IF( LE_32( Lnon_sta2, th_sta ) ) /* Just to limit the saturation */
{
Lnum = L_max( L_tmp_enr, L_tmp_ave_enr2 );
Lden = L_min( L_tmp_enr, L_tmp_ave_enr2 );
@@ -1419,11 +1364,7 @@ void noise_est_fx(
/* log_enr = (float)ln_fx(enr[i]); */
log_enr16 = noise_est_ln_q8_fx( enr[i], 0, tmp_Q );
wtmp = abs_s( sub( log_enr16, hSpMusClas->past_log_enr_fx[i - START_BAND_SPMUS] ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
*non_staX = add_sat( *non_staX, wtmp );
-#else
- *non_staX = add_o( *non_staX, wtmp, &Overflow );
-#endif
move16(); /* Q8 */
hSpMusClas->past_log_enr_fx[i - START_BAND_SPMUS] = log_enr16;
move16();
@@ -1439,11 +1380,7 @@ void noise_est_fx(
tmp_floor = LN_E_MIN_PLUS_ONE_FX;
move16(); /* non dynamic init constant in Q8 */
tmp_floor = noise_est_ln_q8_fx( hNoiseEst->bckr_fx[i], 1, tmp_Q );
-#ifdef ISSUE_1867_replace_overflow_libenc
non_staB = add_sat( non_staB, abs_s( sub( tmp_enr, tmp_floor ) ) ); /* Q8 */
-#else
- non_staB = add_o( non_staB, abs_s( sub( tmp_enr, tmp_floor ) ), &Overflow ); /* Q8 */
-#endif
}
ELSE /*ini_frame < 100*/
{
@@ -1452,11 +1389,7 @@ void noise_est_fx(
tmp_floor = LN_E_MIN_PLUS_ONE_FX;
move16(); /* non dynamic init constant in Q8 */
tmp_floor = noise_est_ln_q8_fx( E_MIN_FX, 1, tmp_Q );
-#ifdef ISSUE_1867_replace_overflow_libenc
non_staB = add_sat( non_staB, abs_s( sub( tmp_enr, tmp_floor ) ) ); /* Q8 */
-#else
- non_staB = add_o( non_staB, abs_s( sub( tmp_enr, tmp_floor ) ), &Overflow ); /* Q8 */
-#endif
}
}
@@ -1568,12 +1501,8 @@ void noise_est_fx(
Ltmp = eps_quota_fx( epsP_h[0], epsP_l[0],
epsP_h[2], epsP_l[2], 12 ); /* Word32 Q12 */
BASOP_SATURATE_WARNING_OFF_EVS /* may saturate*/
-#ifdef ISSUE_1867_replace_overflow_libenc
epsP_0_2 = round_fx_sat( L_shl_sat( Ltmp, 16 ) );
/* Q12+16 -16 -> Q12 , NB saturation in Q12 sets max value to 7,999 */
-#else
- epsP_0_2 = round_fx_o( L_shl_o( Ltmp, 16, &Overflow ), &Overflow ); /* Q12+16 -16 -> Q12 , NB saturation in Q12 sets max value to 7,999 */
-#endif
BASOP_SATURATE_WARNING_ON_EVS
epsP_0_2 = s_max( 0, epsP_0_2 ); /* min value is 0 , Q12 */
@@ -1610,13 +1539,9 @@ void noise_est_fx(
/* epsP_2_16 = max(0 , min(8, epsP[2] / epsP[16])); */
Ltmp = eps_quota_fx( epsP_h[2], epsP_l[2],
- epsP_h[16], epsP_l[16], 12 ); /* Word32 Q12 */
- BASOP_SATURATE_WARNING_OFF_EVS /* may saturate*/
-#ifdef ISSUE_1867_replace_overflow_libenc
+ epsP_h[16], epsP_l[16], 12 ); /* Word32 Q12 */
+ BASOP_SATURATE_WARNING_OFF_EVS /* may saturate*/
epsP_2_16 = round_fx_sat( L_shl_sat( Ltmp, 16 ) ); /* Q12+16 -16 -> Q12 ,*/
-#else
- epsP_2_16 = round_fx_o( L_shl_o( Ltmp, 16, &Overflow ), &Overflow ); /* Q12+16 -16 -> Q12 ,*/
-#endif
/*NB saturation in Q12 sets max value to 7,999 */
BASOP_SATURATE_WARNING_ON_EVS
@@ -1739,12 +1664,7 @@ void noise_est_fx(
*-----------------------------------------------------------------*/
Ltmp = L_mult( st_fx->voicing_fx[0], 16384 );
Ltmp = L_mac( Ltmp, st_fx->voicing_fx[1], 16384 );
-#ifdef ISSUE_1867_replace_overflow_libenc
cor_tmp = mac_r_sat( Ltmp, corr_shift, MAX_16 );
-#else
- cor_tmp = mac_ro( Ltmp, corr_shift, MAX_16, &Overflow );
-#endif
-
LepsP = eps_quota_fx( epsP_h[2], epsP_l[2],
epsP_h[16], epsP_l[16], 11 ); /* L_epsP in Q11 */
/* note this epsP2/eps16 is not limited to 8 as, epsP_2_16 is !! */
@@ -2346,12 +2266,6 @@ void noise_est_ivas_fx(
Le_min_scaled = L_shl( E_MIN_FXQ31, sub( q_fr_bands, Q31 ) ); // q_fr_bands
GSC_ENC_HANDLE hGSCEnc = st_fx->hGSCEnc;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* Check if LR-VAD */
IF( hFrontVad != NULL )
@@ -2454,7 +2368,6 @@ void noise_est_ivas_fx(
move16();
}
-
/*-----------------------------------------------------------------*
* Estimation of pitch stationarity
*-----------------------------------------------------------------*/
@@ -2464,16 +2377,10 @@ void noise_est_ivas_fx(
wtmp1 = abs_s( sub( st_fx->pitch[1], st_fx->pitch[0] ) );
pc = add( wtmp, wtmp1 );
-
Ltmp = L_deposit_h( corr_shift );
Ltmp = L_mac( Ltmp, st_fx->voicing_fx[0], 10923 );
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp = L_mac_sat( Ltmp, st_fx->voicing_fx[1], 10923 );
wtmp = mac_r_sat( Ltmp, st_fx->voicing_fx[2], 10923 );
-#else
- Ltmp = L_mac_o( Ltmp, st_fx->voicing_fx[1], 10923, &Overflow );
- wtmp = mac_ro( Ltmp, st_fx->voicing_fx[2], 10923, &Overflow );
-#endif
tmp_pc = pc;
move16();
@@ -2685,11 +2592,7 @@ void noise_est_ivas_fx(
/* alpha = 0.064f * ftemp + 0.75f; */
Ltmp = Madd_32_16( 12582912 /* 0.75 in Q24*/, 137438953, tmp ); // Q24
-#ifdef ISSUE_1867_replace_overflow_libenc
- alpha = round_fx_sat( L_shl_sat( Ltmp, 7 ) ); /*Q24 +7 --> Q31 Q15*/
-#else
- alpha = round_fx_o( L_shl_o( Ltmp, 7, &Overflow ), &Overflow ); /*Q24 +7 --> Q31 Q15*/
-#endif
+ alpha = round_fx_sat( L_shl_sat( Ltmp, 7 ) ); /*Q24 +7 --> Q31 Q15*/
/*if( alpha > 0.999f { alpha = 0.999f;} */
alpha = s_min( alpha, 32735 ); /*.999 in Q15*/
@@ -2842,11 +2745,7 @@ void noise_est_ivas_fx(
IF( LT_16( ini_frame, 100 ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
non_staB = add_sat( non_staB, abs_s( sub( tmp_enr, LN_E_MIN_PLUS_ONE_FX ) ) ); /* Q8 */
-#else
- non_staB = add_o( non_staB, abs_s( sub( tmp_enr, LN_E_MIN_PLUS_ONE_FX ) ), &Overflow ); /* Q8 */
-#endif
}
ELSE /*ini_frame < 100*/
{
@@ -2868,11 +2767,7 @@ void noise_est_ivas_fx(
Ltmp1 = Mpy_32_16_1( Ltmp1, 22713 ); // Q15
tmp_floor = round_fx( L_shl( Ltmp1, 9 ) ); /* Q8 */
}
-#ifdef ISSUE_1867_replace_overflow_libenc
non_staB = add_sat( non_staB, abs_s( sub( tmp_enr, tmp_floor ) ) ); /* Q8 */
-#else
- non_staB = add_o( non_staB, abs_s( sub( tmp_enr, tmp_floor ) ), &Overflow ); /* Q8 */
-#endif
}
}
diff --git a/lib_enc/normalizecoefs_fx.c b/lib_enc/normalizecoefs_fx.c
index 1dcf6b6e2fc71319aa587875835a7adfcf5ecf0f..696bf272fdf4e7be2f18900e29613a0914550fbc 100644
--- a/lib_enc/normalizecoefs_fx.c
+++ b/lib_enc/normalizecoefs_fx.c
@@ -29,12 +29,7 @@ void normalizecoefs_fx(
Word16 *pcoefs16;
Word32 *pcoefs;
Word16 subvec_start, subvec_end, num_coefs;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
+
pcoefs = coefs;
pcoefs16 = coefs_norm;
@@ -57,11 +52,7 @@ void normalizecoefs_fx(
*pcoefs = Mpy_32_16_1( *pcoefs, INV2POWHALF );
move32();
}
-#ifdef ISSUE_1867_replace_overflow_libenc
*pcoefs16++ = round_fx_sat( L_shl_sat( *pcoefs++, 16 - k ) ); /* Q12 */
-#else
- *pcoefs16++ = round_fx_o( L_shl_o( *pcoefs++, 16 - k, &Overflow ), &Overflow ); /* Q12 */
-#endif
move16();
}
}
diff --git a/lib_enc/pit_enc_fx.c b/lib_enc/pit_enc_fx.c
index be35a5a1262b8e617f4adc3e0bbfb8ec2823e6d3..c20ec2479ba48060bd8f32dcf2d2a85d0eb69ce0 100644
--- a/lib_enc/pit_enc_fx.c
+++ b/lib_enc/pit_enc_fx.c
@@ -964,12 +964,6 @@ void norm_corr_ivas_fx(
Word16 h_e, e_max;
Word32 L_tmp;
Word64 W_tmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
k = negate( t_min );
h_e = add( 1, norm_s( h[0] ) ); // exponent of h
@@ -987,15 +981,10 @@ void norm_corr_ivas_fx(
FOR( t = t_min; t <= t_max; t++ )
{
/* Compute correlation between xn[] and excf[] */
-
L_tmp = L_mac( 0, xn[0], excf[0] );
FOR( i = 1; i < L_subfr; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac_sat( L_tmp, xn[i], excf[i] ); // (Q_new - 1) + (Q_new - h_e) + 1
-#else
- L_tmp = L_mac_o( L_tmp, xn[i], excf[i], &Overflow ); // (Q_new - 1) + (Q_new - h_e) + 1
-#endif
}
exp = norm_l( L_tmp );
L_tmp = L_shl( L_tmp, exp );
@@ -1066,12 +1055,6 @@ void norm_corr_fx(
Word16 corr, exp_corr, norm, exp_norm, exp, scale;
Word16 excf[L_FRAME16k];
Word32 L_tmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
k = negate( t_min );
@@ -1082,18 +1065,10 @@ void norm_corr_fx(
conv_fx( &exc[k], h, excf, L_subfr );
/* Compute rounded down 1/sqrt(energy of xn[]) */
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac_sat( 1, xn[0], xn[0] );
-#else
- L_tmp = L_mac_o( 1, xn[0], xn[0], &Overflow );
-#endif
FOR( i = 1; i < L_subfr; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac_sat( L_tmp, xn[i], xn[i] );
-#else
- L_tmp = L_mac_o( L_tmp, xn[i], xn[i], &Overflow );
-#endif
}
exp = norm_l( L_tmp );
exp = sub( 30, exp );
@@ -1108,15 +1083,10 @@ void norm_corr_fx(
FOR( t = t_min; t <= t_max; t++ )
{
/* Compute correlation between xn[] and excf[] */
-
L_tmp = L_mac( 1, xn[0], excf[0] );
FOR( i = 1; i < L_subfr; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac_sat( L_tmp, xn[i], excf[i] );
-#else
- L_tmp = L_mac_o( L_tmp, xn[i], excf[i], &Overflow );
-#endif
}
exp = norm_l( L_tmp );
L_tmp = L_shl( L_tmp, exp );
@@ -1127,11 +1097,7 @@ void norm_corr_fx(
L_tmp = L_mac( 1, excf[0], excf[0] );
FOR( i = 1; i < L_subfr; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac_sat( L_tmp, excf[i], excf[i] );
-#else
- L_tmp = L_mac_o( L_tmp, excf[i], excf[i], &Overflow );
-#endif
}
exp = norm_l( L_tmp );
diff --git a/lib_enc/pitch_ol2_fx.c b/lib_enc/pitch_ol2_fx.c
index 3e2ef6c3151ce4faea8936c6312aa98ddcebf99a..ab97b615007e4aa8422ebec85113eea3ee455434 100644
--- a/lib_enc/pitch_ol2_fx.c
+++ b/lib_enc/pitch_ol2_fx.c
@@ -50,12 +50,6 @@ void pitch_ol2_fx(
Word32 R1, R2;
Word16 R0, exp_R0, exp_R1, exp_R2, j;
Word16 pit_max;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* initialization */
pit_max = PIT_MAX;
@@ -84,13 +78,8 @@ void pitch_ol2_fx(
pt_cor_fx = cor_fx;
FOR( t = t_min; t <= t_max; t++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
t0 = L_shl_sat( *pt_cor_32++, exp3 );
*pt_cor_fx++ = round_fx_sat( t0 );
-#else
- t0 = L_shl_o( *pt_cor_32++, exp3, &Overflow );
- *pt_cor_fx++ = round_fx_o( t0, &Overflow );
-#endif
move16();
}
@@ -196,11 +185,7 @@ void pitch_ol2_fx(
exp_R2 = norm_l( R2 );
R2 = L_shl( R2, exp_R2 );
-#ifdef ISSUE_1867_replace_overflow_libenc
R1 = L_mult_sat( round_fx_sat( R1 ), round_fx_sat( R2 ) );
-#else
- R1 = L_mult_o( round_fx_o( R1, &Overflow ), round_fx_o( R2, &Overflow ), &Overflow );
-#endif
i = norm_l( R1 );
R1 = L_shl( R1, i );
@@ -210,19 +195,11 @@ void pitch_ol2_fx(
R1 = Isqrt_lc( R1, &exp_R1 );
-#ifdef ISSUE_1867_replace_overflow_libenc
R1 = L_mult( R0, round_fx_sat( R1 ) );
-#else
- R1 = L_mult( R0, round_fx_o( R1, &Overflow ) );
-#endif
exp_R0 = sub( 31, exp_R0 );
exp_R0 = sub( add( exp_R0, exp_R1 ), exp3 );
-#ifdef ISSUE_1867_replace_overflow_libenc
*voicing_fr_fx = round_fx_sat( L_shl_sat( R1, exp_R0 ) ); /*Q15*/
-#else
- *voicing_fr_fx = round_fx_o( L_shl_o( R1, exp_R0, &Overflow ), &Overflow ); /*Q15*/
-#endif
move16();
}
ELSE
@@ -262,12 +239,6 @@ void StableHighPitchDetect_fx(
Word16 tmp, tmp1, exp, diff16, cor_max16, exp1, exp2, pit_min_up;
Word32 L_tmp, L_tmp1;
Word16 Top;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*voicing = (voicing[0] + voicing[1] + voicing[2] )/3;*/
L_tmp = L_mult( voicing[0], 10923 /*1/3 in Q15*/ );
@@ -316,35 +287,21 @@ void StableHighPitchDetect_fx(
tmp = div_s( 16384, tmp ); /*Q(15+exp)*/
BASOP_SATURATE_WARNING_OFF_EVS
diff = L_negate( L_shr_sat( Mult_32_16( diff, tmp ), sub( exp + 7, 31 ) ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
BASOP_SATURATE_WARNING_ON_EVS
diff16 = round_fx_sat( diff );
-#else
- BASOP_SATURATE_WARNING_ON_EVS
- diff16 = round_fx_o( diff, &Overflow );
-#endif
}
ELSE
{
tmp = div_s( 16384, tmp ); /*Q(15+exp)*/
BASOP_SATURATE_WARNING_OFF_EVS
diff = L_shr_sat( Mult_32_16( diff, tmp ), sub( exp + 7, 31 ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
BASOP_SATURATE_WARNING_ON_EVS
diff16 = round_fx_sat( diff );
-#else
- BASOP_SATURATE_WARNING_ON_EVS
- diff16 = round_fx_o( diff, &Overflow );
-#endif
}
}
ELSE
{
-#ifdef ISSUE_1867_replace_overflow_libenc
diff16 = round_fx_sat( L_shl_sat( diff, 25 ) );
-#else
- diff16 = round_fx_o( L_shl_o( diff, 25, &Overflow ), &Overflow );
-#endif
}
test();
test();
@@ -421,11 +378,7 @@ void StableHighPitchDetect_fx(
L_tmp1 = Isqrt_lc( L_tmp1, &exp ); /*Q(31-exp)*/
cor_max = Mult_32_32( cor_max, L_tmp1 );
exp = 31 - ( shl( Q_new, 1 ) + 1 ) - ( 31 - exp ) + 31;
-#ifdef ISSUE_1867_replace_overflow_libenc
cor_max16 = round_fx_sat( L_shl_sat( cor_max, exp ) ); /*Q15*/
-#else
- cor_max16 = round_fx_o( L_shl_o( cor_max, exp, &Overflow ), &Overflow ); /*Q15*/
-#endif
/**voicing0_sm = add(mult_r(24576 ,(*voicing0_sm)) , mult_r(8192 , cor_max16));*/
*voicing0_sm = round_fx( L_mac( L_mult( 24576 /*.75f Q15*/, *voicing0_sm ), 8192 /*.25f Q15*/, cor_max16 ) );
move16();
@@ -490,12 +443,6 @@ void StableHighPitchDetect_ivas_fx(
Word16 tmp, tmp1, exp, diff16, cor_max16, exp1, exp2, pit_min_up;
Word32 L_tmp, L_tmp1;
Word16 Top;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*voicing = (voicing[0] + voicing[1] + voicing[2] )/3;*/
L_tmp = L_mult( voicing[0], 10923 /*1/3 in Q15*/ );
@@ -551,35 +498,21 @@ void StableHighPitchDetect_ivas_fx(
tmp = div_s( 16384, tmp ); /*Q(15+exp)*/
BASOP_SATURATE_WARNING_OFF_EVS
diff = L_negate( L_shr_sat( Mult_32_16( diff, tmp ), sub( exp + 7, 31 ) ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
BASOP_SATURATE_WARNING_ON_EVS
diff16 = round_fx_sat( diff );
-#else
- BASOP_SATURATE_WARNING_ON_EVS
- diff16 = round_fx_o( diff, &Overflow );
-#endif
}
ELSE
{
tmp = div_s( 16384, tmp ); /*Q(15+exp)*/
BASOP_SATURATE_WARNING_OFF_EVS
diff = L_shr_sat( Mult_32_16( diff, tmp ), sub( exp + 7, 31 ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
BASOP_SATURATE_WARNING_ON_EVS
diff16 = round_fx_sat( diff );
-#else
- BASOP_SATURATE_WARNING_ON_EVS
- diff16 = round_fx_o( diff, &Overflow );
-#endif
}
}
ELSE
{
-#ifdef ISSUE_1867_replace_overflow_libenc
diff16 = round_fx_sat( L_shl_sat( diff, 25 ) );
-#else
- diff16 = round_fx_o( L_shl_o( diff, 25, &Overflow ), &Overflow );
-#endif
}
test();
test();
@@ -665,11 +598,7 @@ void StableHighPitchDetect_ivas_fx(
L_tmp1 = Isqrt_lc( L_tmp1, &exp ); /*Q(31-exp)*/
cor_max = Mult_32_32( cor_max, L_tmp1 );
exp = add( sub( sub( 31, add( shl( Q_new, 1 ), 1 ) ), sub( 31, exp ) ), 31 );
-#ifdef ISSUE_1867_replace_overflow_libenc
cor_max16 = round_fx_sat( L_shl_sat( cor_max, exp ) ); /*Q15*/
-#else
- cor_max16 = round_fx_o( L_shl_o( cor_max, exp, &Overflow ), &Overflow ); /*Q15*/
-#endif
/**voicing0_sm = add(mult_r(24576 ,(*voicing0_sm)) , mult_r(8192 , cor_max16));*/
*voicing0_sm = round_fx( L_mac( L_mult( 24576 /*.75f Q15*/, *voicing0_sm ), 8192 /*.25f Q15*/, cor_max16 ) );
move16();
diff --git a/lib_enc/pitch_ol_fx.c b/lib_enc/pitch_ol_fx.c
index 8bf8065c8ae5da2f4dd3c1b5fea889099ae4faac..a27db58597618dbcfe64c48090fb7b9722428aef 100644
--- a/lib_enc/pitch_ol_fx.c
+++ b/lib_enc/pitch_ol_fx.c
@@ -182,11 +182,6 @@ void pitch_ol_fx(
const Word16 *len, *len1, *sublen, *sublen1, *pit_max, *sec_length, *sec_length1;
Word16 pit_min_coding;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
/*--------------------------------------------------------------*
* Initialization
@@ -738,11 +733,7 @@ void pitch_ol_fx(
enr1_exp = 0;
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
enr1 = add_sat( extract_h( dotp_fx( pt2, pt2, len[j], &enr1_exp ) ), 1 );
-#else
- enr1 = add_o( extract_h( dotp_fx( pt2, pt2, len[j], &enr1_exp ) ), 1, &Overflow );
-#endif
enr2 = L_mult( enr0[j], enr1 );
enr2_exp = norm_l( enr2 );
@@ -778,11 +769,7 @@ void pitch_ol_fx(
move16(); /* selected moving vector */
enr1_exp = 0;
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
enr1 = add_sat( extract_h( dotp_fx( pt4, pt4, len1[j], &enr1_exp ) ), 1 );
-#else
- enr1 = add_o( extract_h( dotp_fx( pt4, pt4, len1[j], &enr1_exp ) ), 1, &Overflow );
-#endif
enr2 = L_mult( enr0_1[j], enr1 );
enr2_exp = norm_l( enr2 );
@@ -877,11 +864,7 @@ void pitch_ol_fx(
move16();
pitch_tmp[i] = pitchX[i][ind];
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
cor_tmp[i] = add_sat( corX[i][ind], corr_shift );
-#else
- cor_tmp[i] = add_o( corX[i][ind], corr_shift, &Overflow );
-#endif
move16();
/* Higher is the neighbour's correlation, higher is the weighting */
@@ -895,11 +878,7 @@ void pitch_ol_fx(
move16();
pitch_tmp[i + NHFR] = pitchX[i][ind1];
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
cor_tmp[i + NHFR] = add_sat( corX[i][ind1], corr_shift );
-#else
- cor_tmp[i + NHFR] = add_o( corX[i][ind1], corr_shift, &Overflow );
-#endif
move16();
/* Higher is the neighbour's correlation, higher is the weighting */
@@ -1120,11 +1099,6 @@ void pitch_ol_ivas_fx(
const Word16 *len, *len1, *sublen, *sublen1, *pit_max, *sec_length, *sec_length1;
Word16 pit_min_coding;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
Word16 new_q;
new_q = sub( 63, shl( qwsp, 1 ) );
@@ -1726,12 +1700,7 @@ void pitch_ol_ivas_fx(
enr1 = ISqrt32( enr1, &enr1_exp ); /* 1/sqrt(energy) */ /*31-enr2_exp*/
Ltmp = Mpy_32_16_1( enr1, cor_buf[ind] );
-#ifdef ISSUE_1867_replace_overflow_libenc
corX[i][j] = extract_h( L_shl_sat( Ltmp, add( enr1_exp, cor_buf_exp[ind] ) ) ); // Q15
-#else
-
- corX[i][j] = extract_h( L_shl_o( Ltmp, add( enr1_exp, cor_buf_exp[ind] ), &Overflow ) ); // Q15
-#endif
move16();
Ltmp = Mpy_32_16_1( enr1, pt_cor0[ind] );
@@ -1774,11 +1743,7 @@ void pitch_ol_ivas_fx(
enr1 = ISqrt32( enr1, &enr1_exp ); /* 1/sqrt(energy) */ /*31-enr1_exp*/
Ltmp = Mpy_32_16_1( enr1, cor_buf[ind1 + len_x] );
-#ifdef ISSUE_1867_replace_overflow_libenc
corX[i][j + NSECT] = extract_h( L_shl_sat( Ltmp, add( enr1_exp, cor_buf_exp[ind1 + len_x] ) ) ); // Q15
-#else
- corX[i][j + NSECT] = extract_h( L_shl_o( Ltmp, add( enr1_exp, cor_buf_exp[ind1 + len_x] ), &Overflow ) ); // Q15
-#endif
move16();
Ltmp = Mpy_32_16_1( enr1, pt_cor0[ind1 + ( DELTA_COH - 1 ) + len_x] );
@@ -1855,11 +1820,7 @@ void pitch_ol_ivas_fx(
move16();
pitch_tmp[i] = pitchX[i][ind];
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
cor_tmp[i] = add_sat( corX[i][ind], corr_shift );
-#else
- cor_tmp[i] = add_o( corX[i][ind], corr_shift, &Overflow );
-#endif
move16();
/* Higher is the neighbour's correlation, higher is the weighting */
@@ -1873,11 +1834,7 @@ void pitch_ol_ivas_fx(
move16();
pitch_tmp[i + NHFR] = pitchX[i][ind1];
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
cor_tmp[i + NHFR] = add_sat( corX[i][ind1], corr_shift );
-#else
- cor_tmp[i + NHFR] = add_o( corX[i][ind1], corr_shift, &Overflow );
-#endif
move16();
/* Higher is the neighbour's correlation, higher is the weighting */
diff --git a/lib_enc/ppp_enc_fx.c b/lib_enc/ppp_enc_fx.c
index df422582d1970020214578bba0c74b9d99ef8c06..5e977c8f7b96f8b151deae0e406657ba2c6fbc11 100644
--- a/lib_enc/ppp_enc_fx.c
+++ b/lib_enc/ppp_enc_fx.c
@@ -618,18 +618,17 @@ static Word16 DTFS_quant_cw_fx(
/* CALLED FROM : TX */
/*===================================================================*/
-static Word16 DTFS_alignment_fine_new_fx( DTFS_STRUCTURE X1_fx, DTFS_STRUCTURE X2_fx, Word16 *S_fx, Word16 *C_fx )
+static Word16 DTFS_alignment_fine_new_fx(
+ DTFS_STRUCTURE X1_fx,
+ DTFS_STRUCTURE X2_fx,
+ Word16 *S_fx,
+ Word16 *C_fx )
{
Word16 temp, temp1, k, Qcorr, Qmaxcorr;
Word16 n, fshift_fx, HalfLag, ab1[MAXLAG_WI], ab2[MAXLAG_WI];
Word32 corr_fx;
Word32 maxcorr_fx, wcorr_fx, diff_corr;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
+
IF( LT_16( X1_fx.lag_fx, X2_fx.lag_fx ) )
{
DTFS_zeroPadd_fx( X2_fx.lag_fx, &X1_fx );
@@ -667,15 +666,9 @@ static Word16 DTFS_alignment_fine_new_fx( DTFS_STRUCTURE X1_fx, DTFS_STRUCTURE X
FOR( k = 0; k <= HalfLag; k++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
corr_fx = L_mac_sat( corr_fx, ab1[k], C_fx[temp % ( 4 * X2_fx.lag_fx )] );
corr_fx = L_mac_sat( corr_fx, ab2[k], S_fx[temp % ( 4 * X2_fx.lag_fx )] );
temp = add_sat( temp, temp1 );
-#else
- corr_fx = L_mac_o( corr_fx, ab1[k], C_fx[temp % ( 4 * X2_fx.lag_fx )], &Overflow );
- corr_fx = L_mac_o( corr_fx, ab2[k], S_fx[temp % ( 4 * X2_fx.lag_fx )], &Overflow );
- temp = add_o( temp, temp1, &Overflow );
-#endif
}
temp = sub( 32767, extract_l( L_shr( L_mult( 82, abs_s( n ) ), 1 ) ) ); /* Q15 */
Qcorr = norm_l( corr_fx );
@@ -685,40 +678,23 @@ static Word16 DTFS_alignment_fine_new_fx( DTFS_STRUCTURE X1_fx, DTFS_STRUCTURE X
move16();
}
-#ifdef ISSUE_1867_replace_overflow_libenc
temp1 = round_fx_sat( (Word32) L_shl_sat( corr_fx, Qcorr ) ); /* Q(Qcorr-16) */
wcorr_fx = L_mult_sat( temp1, temp ); /* Q(Qcorr-16+15+1)=Q(Qcorr) */
-#else
- temp1 = round_fx_o( (Word32) L_shl_o( corr_fx, Qcorr, &Overflow ), &Overflow ); /* Q(Qcorr-16) */
- wcorr_fx = L_mult_o( temp1, temp, &Overflow ); /* Q(Qcorr-16+15+1)=Q(Qcorr) */
-#endif
IF( GE_16( Qmaxcorr, Qcorr ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
diff_corr = L_sub_sat( wcorr_fx, L_shl_sat( maxcorr_fx, sub( Qcorr, Qmaxcorr ) ) ); /* Qcorr */
-#else
- diff_corr = L_sub_o( wcorr_fx, L_shl_o( maxcorr_fx, sub( Qcorr, Qmaxcorr ), &Overflow ), &Overflow ); /* Qcorr */
-#endif
}
ELSE
{
-#ifdef ISSUE_1867_replace_overflow_libenc
diff_corr = L_sub_sat( L_shl_sat( wcorr_fx, sub( Qmaxcorr, Qcorr ) ), maxcorr_fx ); /* Qmaxcorr */
-#else
- diff_corr = L_sub_o( L_shl_o( wcorr_fx, sub( Qmaxcorr, Qcorr ), &Overflow ), maxcorr_fx, &Overflow ); /* Qmaxcorr */
-#endif
}
if ( diff_corr > 0 )
{
fshift_fx = n;
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
maxcorr_fx = (Word32) L_shl_sat( corr_fx, Qcorr ); /* Qcorr */
-#else
- maxcorr_fx = (Word32) L_shl_o( corr_fx, Qcorr, &Overflow ); /* Qcorr */
-#endif
Qmaxcorr = Qcorr;
move16();
}
@@ -726,6 +702,8 @@ static Word16 DTFS_alignment_fine_new_fx( DTFS_STRUCTURE X1_fx, DTFS_STRUCTURE X
return fshift_fx;
}
+
+
/*===================================================================*/
/* FUNCTION : LPCPowSpect_fx () */
/*-------------------------------------------------------------------*/
@@ -766,12 +744,7 @@ static void LPCPowSpect_fx(
Word32 Ltemp, Lw;
Word32 Lacc;
Word16 tmp, exp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
+
FOR( k = 0; k < Nf; k++ )
{
@@ -802,17 +775,11 @@ static void LPCPowSpect_fx(
t1 = add( t1, (Word16) L_shr( Ltemp, 16 ) ); /* t1 is interpolated cos(w) */
Ltemp = L_shr( L_mult( LPC[i], t1 ), 1 ); /* Ltemp in Q27 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- Re = L_add_sat( Re, Ltemp ); /* Re=1-sum(LPC[i]*cos(Lw)); */
- Ltemp = L_add_sat( Lw, 0x6000 ); /* add 0.75, which is 3pi/2 to convert sin to cos */
- Ltemp = L_shl_sat( Ltemp, 10 ); /* Q25 */
-#else
- Re = L_add_o( Re, Ltemp, &Overflow ); /* Re=1-sum(LPC[i]*cos(Lw)); */
- Ltemp = L_add_o( Lw, 0x6000, &Overflow ); /* add 0.75, which is 3pi/2 to convert sin to cos */
- Ltemp = L_shl_o( Ltemp, 10, &Overflow ); /* Q25 */
-#endif
- w = extract_h( Ltemp ); /* w is equivalent cos index */
- dl = extract_l( Ltemp ); /* dl is 6 bit left-over for interpolation */
+ Re = L_add_sat( Re, Ltemp ); /* Re=1-sum(LPC[i]*cos(Lw)); */
+ Ltemp = L_add_sat( Lw, 0x6000 ); /* add 0.75, which is 3pi/2 to convert sin to cos */
+ Ltemp = L_shl_sat( Ltemp, 10 ); /* Q25 */
+ w = extract_h( Ltemp ); /* w is equivalent cos index */
+ dl = extract_l( Ltemp ); /* dl is 6 bit left-over for interpolation */
w = s_and( w, 511 );
t1 = cos_table[w];
/*t2=cos_table[s_and(add(w,1),511)]; */
@@ -832,13 +799,8 @@ static void LPCPowSpect_fx(
t1 = add( t1, (Word16) L_shr( Ltemp, 16 ) ); /* t1 is interpolated cos(w) */
Ltemp = L_shr( L_mult( LPC[i], t1 ), 1 ); /* Ltemp in Q27 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- Im = L_sub_sat( Im, Ltemp ); /* Im=sum(LPC[i]*sin(Lw)) */
- Lw = L_add_sat( Lw, freq[k] ); /* Lw=(i+1)*freq[k] */
-#else
- Im = L_sub_o( Im, Ltemp, &Overflow ); /* Im=sum(LPC[i]*sin(Lw)) */
- Lw = L_add_o( Lw, freq[k], &Overflow ); /* Lw=(i+1)*freq[k] */
-#endif
+ Im = L_sub_sat( Im, Ltemp ); /* Im=sum(LPC[i]*sin(Lw)) */
+ Lw = L_add_sat( Lw, freq[k] ); /* Lw=(i+1)*freq[k] */
}
/* If necessary, we can block-normalize Re and Im to improve precision */
dh = extract_h( Re );
@@ -853,11 +815,7 @@ static void LPCPowSpect_fx(
ELSE
Lacc = L_mult0( dh, dl );
-#ifdef ISSUE_1867_replace_overflow_libenc
Lacc = L_add_sat( L_shr( Lacc, 15 ), L_shr( L_mult_sat( dh, dh ), 1 ) ); /* Lacc=Re*Re */
-#else
- Lacc = L_add_o( L_shr( Lacc, 15 ), L_shr( L_mult_o( dh, dh, &Overflow ), 1 ), &Overflow ); /* Lacc=Re*Re */
-#endif
dh = extract_h( Im );
dl = extract_l( Im );
@@ -888,18 +846,16 @@ static void LPCPowSpect_fx(
move16();
}
Ltemp = L_deposit_h( tmp );
-#ifdef ISSUE_1867_replace_overflow_libenc
out[k] = round_fx_sat( L_shl_sat( Ltemp, negate( add( exp, 8 ) ) ) );
-#else
- out[k] = round_fx_o( L_shl_o( Ltemp, negate( add( exp, 8 ) ), &Overflow ), &Overflow );
-#endif
move16();
/* out[k] = shl(tmp,-exp-8); in Q7 */
}
+
return;
}
+
/*===================================================================*/
/* FUNCTION : erb_diff_fx () */
/*-------------------------------------------------------------------*/
diff --git a/lib_enc/prot_fx_enc.h b/lib_enc/prot_fx_enc.h
index e64c18468db76ef4f161075c927b97b44f1e13e2..448a93b9ff07d372b829a09e6da8983bc9c7c4d7 100644
--- a/lib_enc/prot_fx_enc.h
+++ b/lib_enc/prot_fx_enc.h
@@ -33,34 +33,32 @@
#ifndef PROT_FX_ENC_H
#define PROT_FX_ENC_H
+#include "options.h"
#include "ivas_cnst.h"
#include "stat_enc.h"
#include "stat_dec.h"
#include "ivas_stat_dec.h"
-#include "ivas_error.h"
-#include "ivas_error_utils.h"
-#include "complex_basop.h"
#include "ivas_stat_enc.h"
ivas_error acelp_core_enc_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 inp_fx[], /* i : input signal of the current frame Q_new*/
- const Word32 ener_fx, /* i : residual energy from Levinson-Durbin Q6*/
- Word16 A_fx[NB_SUBFR16k * ( M + 1 )], /* i : A(z) unquantized for the 4 subframes Q12*/
- Word16 Aw_fx[NB_SUBFR16k * ( M + 1 )], /* i : weighted A(z) unquant. for subframes Q12*/
- const Word16 epsP_h_fx[M + 1], /* i : LP prediction errors Qx*/
- const Word16 epsP_l_fx[M + 1], /* i : LP prediction errors Qx*/
- Word16 lsp_new_fx[M], /* i : LSPs at the end of the frame Q15*/
- Word16 lsp_mid_fx[M], /* i : LSPs in the middle of the frame Q15*/
- Word16 vad_hover_flag_fx, /* i : VAD hangover flag Q0*/
- const Word16 attack_flag, /* i : attack flag (GSC or TC) Q0*/
- Word32 bwe_exc_extended_fx[], /* i/o: bandwidth extended excitation st->prev_Q_bwe_exc*/
- Word16 *voice_factors_fx, /* o : voicing factors Q15*/
+ Encoder_State *st_fx, /* i/o: encoder state structure */
+ const Word16 inp_fx[], /* i : input signal of the current frame Q_new*/
+ const Word32 ener_fx, /* i : residual energy from Levinson-Durbin Q6*/
+ Word16 A_fx[NB_SUBFR16k * ( M + 1 )], /* i : A(z) unquantized for the 4 subframes Q12*/
+ Word16 Aw_fx[NB_SUBFR16k * ( M + 1 )], /* i : weighted A(z) unquant. for subframes Q12*/
+ const Word16 epsP_h_fx[M + 1], /* i : LP prediction errors Qx*/
+ const Word16 epsP_l_fx[M + 1], /* i : LP prediction errors Qx*/
+ Word16 lsp_new_fx[M], /* i : LSPs at the end of the frame Q15*/
+ Word16 lsp_mid_fx[M], /* i : LSPs in the middle of the frame 15*/
+ Word16 vad_hover_flag_fx, /* i : VAD hangover flag Q0*/
+ const Word16 attack_flag, /* i : attack flag (GSC or TC) Q0*/
+ Word32 bwe_exc_extended_fx[], /* i/o: bandwidth extended excitation st->prev_Q_bwe_exc*/
+ Word16 *voice_factors_fx, /* o : voicing factors Q15*/
Word16 old_syn_12k8_16k_fx[], /* o : intermediate ACELP synthesis at 12.8kHz or 16kHz to be used by SWB BWE q_old_syn*/
- Word16 pitch_buf_fx[NB_SUBFR16k], /* o : floating pitch for each subframe Q6*/
- Word16 *unbits_fx, /* o : number of unused bits Q0*/
- STEREO_TD_ENC_DATA_HANDLE hStereoTD, /* i/o: TD stereo encoder handle */
+ Word16 pitch_buf_fx[NB_SUBFR16k], /* o : floating pitch for each subframe Q6*/
+ Word16 *unbits_fx, /* o : number of unused bits Q0*/
+ STEREO_TD_ENC_DATA_HANDLE hStereoTD, /* i/o: TD stereo encoder handle */
const Word16 Q_new,
const Word16 shift );
@@ -97,7 +95,7 @@ void AVQ_encmux_fx(
BSTR_ENC_HANDLE hBstr, /* i/o: bitstream handle */
const Word16 extl, /* i : extension layer */
Word16 xriq[], /* i/o: rounded subvectors [0..8*Nsv-1] followed
- by rounded bit allocations [8*Nsv..8*Nsv+Nsv-1] */
+ by rounded bit allocations [8*Nsv..8*Nsv+Nsv-1] */
Word16 *nb_bits, /* i/o: number of allocated bits */
const Word16 Nsv, /* i: number of subvectors */
Word16 nq_out[], /* o : AVQ nq index */
@@ -107,7 +105,7 @@ void AVQ_encmux_fx(
void bw_detect_fx(
Encoder_State *st, /* i/o: Encoder State */
- const Word16 signal_in[], /* i : input signal */
+ const Word16 signal_in[], /* i : input signal */
Word16 *spectrum, /* i : MDCT spectrum Q_spec */
const Word32 *enerBuffer, /* i : CLDFB Energy Q31 */
const Word16 *cldfbBuf_Ener_Exp, /* i : CLDFB Energy Exponent */
@@ -122,14 +120,14 @@ void core_switching_post_enc_fx(
const Word16 A[], /* i : unquant. LP filter coefs. (Q12) */
Word16 Qshift,
Word16 Q_new,
- const Word16 Qsp, /* i/o : Q from acelp synthsis */
+ const Word16 Qsp, /* i/o : Q from acelp synthsis */
Word16 *Qmus /* i/o : Q from mdct synthsis / Q of output synthesis */
);
void core_switching_pre_enc_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 *old_inp_12k8, /* i : old i signal @12.8kHz Qx*/
- const Word16 *old_inp_16k, /* i : old i signal @16kHz Qx*/
+ Encoder_State *st_fx, /* i/o: encoder state structure */
+ const Word16 *old_inp_12k8, /* i : old i signal @12.8kHz Qx*/
+ const Word16 *old_inp_16k, /* i : old i signal @16kHz Qx*/
const Word16 active_cnt, /* i : active frame counter Q0*/
const Word16 last_element_mode /* i : last_element_mode Q0*/
);
@@ -140,19 +138,19 @@ Word16 correlation_shift_fx(
);
void dtx_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
+ Encoder_State *st_fx, /* i/o: encoder state structure */
const Word16 vad, /* i : vad flag Q0*/
- const Word16 speech[], /* i : Pointer to the speech frame Q_speech*/
- Word16 Q_speech /* i : Q factor for speech */
+ const Word16 speech[], /* i : Pointer to the speech frame Q_speech*/
+ Word16 Q_speech /* i : Q factor for speech */
);
void dtx_ivas_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
+ Encoder_State *st_fx, /* i/o: encoder state structure */
const Word32 last_ivas_total_brate, /* i : last IVAS total bitrate Q0*/
- const Word32 ivas_total_brate, /* i : IVAS total bitrate Q0*/
+ const Word32 ivas_total_brate, /* i : IVAS total bitrate Q0*/
const Word16 vad, /* i : vad flag for DTX Q0*/
- const Word16 speech[], /* i : Pointer to the speech frame Q_speech*/
- Word16 Q_speech /* i : Q factor for speech */
+ const Word16 speech[], /* i : Pointer to the speech frame Q_speech*/
+ Word16 Q_speech /* i : Q factor for speech */
);
Word16 dtx_hangover_addition_fx(
@@ -161,28 +159,30 @@ Word16 dtx_hangover_addition_fx(
const Word16 lp_snr, /* i Q8 */
const Word16 cldfb_subtraction, /* i Q0 number of DTX-HO frames CLDFB wants to reduce */
Word16 *vad_hover_flag_ptr,
- VAD_HANDLE hVAD, /* i/o: VAD data handle */
+ VAD_HANDLE hVAD, /* i/o: VAD data handle */
NOISE_EST_HANDLE hNoiseEst /* i : Noise estimation handle */
);
+
Word16 ivas_dtx_hangover_addition_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
const Word16 vad_flag, /* i Q0 */
const Word16 lp_snr, /* i Q8 */
const Word16 cldfb_subtraction, /* i Q0 number of DTX-HO frames CLDFB wants to reduce */
Word16 *vad_hover_flag_ptr,
- VAD_HANDLE hVAD, /* i/o: VAD data handle */
+ VAD_HANDLE hVAD, /* i/o: VAD data handle */
NOISE_EST_HANDLE hNoiseEst, /* i : Noise estimation handle */
Word16 *rem_dtx_ho );
+
void fb_tbe_enc_fx(
- Encoder_State *st, /* i/o: encoder state structure */
+ Encoder_State *st, /* i/o: encoder state structure */
const Word16 new_input[], /* i : i speech at 48 kHz sample rate */
- const Word16 fb_exc[], /* i : FB excitation from the SWB part */
+ const Word16 fb_exc[], /* i : FB excitation from the SWB part */
Word16 Q_fb_exc );
void fb_tbe_enc_ivas_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- const Word16 new_input[], /* i : i speech at 48 kHz sample rate Q_new_input*/
- const Word16 fb_exc[], /* i : FB excitation from the SWB part Q_fb_exc*/
+ Encoder_State *st, /* i/o: encoder state structure */
+ const Word16 new_input[], /* i : i speech at 48 kHz sample rate Q_new_input*/
+ const Word16 fb_exc[], /* i : FB excitation from the SWB part Q_fb_exc*/
Word16 Q_fb_exc,
Word16 Q_new_input );
@@ -196,54 +196,54 @@ Word16 ffr_getSfWord32(
const Word32 *vector, /*!< Pointer to i vector */
const Word16 len /*!< Length of i vector */
);
+
void find_tilt_ivas_fx(
- const Word32 fr_bands[], /* i : energy in frequency bands q_fr_bands*/
- const Word16 q_fr_bands, /* i : Q of fr_bands Q0*/
- const Word32 bckr[], /* i : per band background noise energy estimate q_bckr*/
- const Word16 q_bckr, /* i : Q of bckr Q0*/
+ const Word32 fr_bands[], /* i : energy in frequency bands q_fr_bands*/
+ const Word16 q_fr_bands, /* i : Q of fr_bands Q0*/
+ const Word32 bckr[], /* i : per band background noise energy estimate q_bckr*/
+ const Word16 q_bckr, /* i : Q of bckr Q0*/
Word32 ee[2], /* o : lf/hf E ration for present frame Q_bckr*/
const Word16 pitch[3], /* i : open loop pitch values for 3 half-frames Q0*/
const Word16 voicing[3], /* i : normalized correlation for 3 half-frames Q15*/
- const Word32 *lf_E, /* i : per bin energy for low frequencies q_lf_E*/
- const Word16 q_lf_E, /* i : Q of lf_E */
- const Word16 corr_shift, /* i : normalized correlation correction Q15*/
- const Word16 bwidth, /* i : i signal bandwidth */
- const Word16 max_band, /* i : maximum critical band */
+ const Word32 *lf_E, /* i : per bin energy for low frequencies q_lf_E*/
+ const Word16 q_lf_E, /* i : Q of lf_E */
+ const Word16 corr_shift, /* i : normalized correlation correction Q15*/
+ const Word16 bwidth, /* i : i signal bandwidth */
+ const Word16 max_band, /* i : maximum critical band */
Word32 hp_E[], /* o : energy in HF Q_new*/
- const Word16 codec_mode, /* i : MODE1 or MODE2 */
+ const Word16 codec_mode, /* i : MODE1 or MODE2 */
Word32 *bckr_tilt_lt,
Word16 Opt_vbr_mode );
void find_tilt_fx(
- const Word32 fr_bands[], /* i : energy in frequency bands Q_new + Q_SCALE*/
- const Word32 bckr[], /* i : per band background noise energy estimate Q_new + Q_SCALE*/
- Word32 ee[2], /* o : lf/hf E ration for present frame Q6*/
- const Word16 pitch[3], /* i : open loop pitch values for 3 half-frames Q0*/
- const Word16 voicing[3], /* i : normalized correlation for 3 half-frames Q15*/
+ const Word32 fr_bands[], /* i : energy in frequency bands Q_new + Q_SCALE*/
+ const Word32 bckr[], /* i : per band background noise energy estimate Q_new + Q_SCALE*/
+ Word32 ee[2], /* o : lf/hf E ration for present frame Q6*/
+ const Word16 pitch[3], /* i : open loop pitch values for 3 half-frames Q0*/
+ const Word16 voicing[3], /* i : normalized correlation for 3 half-frames Q15*/
const Word32 *lf_E, /* i : per bin energy for low frequencies Q_new + Q_SCALE - 2*/
- const Word16 corr_shift, /* i : normalized correlation correction Q15*/
+ const Word16 corr_shift, /* i : normalized correlation correction Q15*/
const Word16 bwidth, /* i : input signal bandwidth Q0*/
const Word16 max_band, /* i : maximum critical band Q0*/
Word32 hp_E[], /* o : energy in HF Q_new + Q_SCALE*/
- const Word16 codec_mode, /* i : MODE1 or MODE2 Q0*/
- const Word16 Q_new, /* i : scaling factor */
- Word32 *bckr_tilt_lt /* i/o: lf/hf E ratio of background noise Q16*/
- ,
- Word16 Opt_vbr_mode /* Q0 */
+ const Word16 codec_mode, /* i : MODE1 or MODE2 Q0*/
+ const Word16 Q_new, /* i : scaling factor */
+ Word32 *bckr_tilt_lt, /* i/o: lf/hf E ratio of background noise Q16*/
+ Word16 Opt_vbr_mode /* Q0 */
);
/* o : coding type */
Word16 find_uv_ivas_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 *T_op_fr, /* i : pointer to adjusted fractional pitch (4 val.) Q6*/
- const Word16 *voicing_fr, /* i : refined correlation for each subframes Q15*/
- const Word16 *speech, /* i : pointer to speech signal for E computation Q_new*/
- const Word32 *ee, /* i : lf/hf Energy ratio for present frame Q6*/
+ const Word16 *T_op_fr, /* i : pointer to adjusted fractional pitch (4 val.) Q6*/
+ const Word16 *voicing_fr, /* i : refined correlation for each subframes Q15*/
+ const Word16 *speech, /* i : pointer to speech signal for E computation Q_new*/
+ const Word32 *ee, /* i : lf/hf Energy ratio for present frame Q6*/
Word32 *dE1X, /* o : sudden energy increase for S/M classifier Q13*/
- const Word16 corr_shift, /* i : normalized correlation correction in noise Q15*/
- const Word16 relE, /* i : relative frame energy Q8*/
- const Word16 Etot, /* i : total energy Q8*/
- const Word32 hp_E[], /* i : energy in HF q_hp_E*/
+ const Word16 corr_shift, /* i : normalized correlation correction in noise Q15*/
+ const Word16 relE, /* i : relative frame energy Q8*/
+ const Word16 Etot, /* i : total energy Q8*/
+ const Word32 hp_E[], /* i : energy in HF q_hp_E*/
Word16 *flag_spitch, /* i/o: flag to indicate very short stable pitch and high correlation Q0*/
const Word16 last_core_orig, /* i : original last core Q0*/
STEREO_CLASSIF_HANDLE hStereoClassif, /* i/o: stereo classifier structure */
@@ -252,23 +252,23 @@ Word16 find_uv_ivas_fx(
/* o : coding type */
Word16 find_uv_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 *T_op_fr, /* i : pointer to adjusted fractional pitch (4 val.) Q6*/
- const Word16 *voicing_fr, /* i : refined correlation for each subframes Q15*/
- const Word16 *speech, /* i : pointer to speech signal for E computation Q_new*/
- const Word32 *ee, /* i : lf/hf Energy ratio for present frame Q6*/
- const Word16 corr_shift, /* i : normalized correlation correction in noise Q15*/
- const Word16 relE, /* i : relative frame energy Q8*/
- const Word16 Etot, /* i : total energy Q8*/
- const Word32 hp_E[], /* i : energy in HF Q_new + Q_SCALE*/
+ Encoder_State *st_fx, /* i/o: encoder state structure */
+ const Word16 *T_op_fr, /* i : pointer to adjusted fractional pitch (4 val.) Q6*/
+ const Word16 *voicing_fr, /* i : refined correlation for each subframes Q15*/
+ const Word16 *speech, /* i : pointer to speech signal for E computation Q_new*/
+ const Word32 *ee, /* i : lf/hf Energy ratio for present frame Q6*/
+ const Word16 corr_shift, /* i : normalized correlation correction in noise Q15*/
+ const Word16 relE, /* i : relative frame energy Q8*/
+ const Word16 Etot, /* i : total energy Q8*/
+ const Word32 hp_E[], /* i : energy in HF Q_new + Q_SCALE*/
const Word16 Q_new,
- Word16 *flag_spitch, /* i/o: flag to indicate very short stable pitch and high correlation Q0*/
+ Word16 *flag_spitch, /* i/o: flag to indicate very short stable pitch and high correlation Q0*/
const Word16 shift,
- const Word16 last_core_orig /* i : original last core Q0*/
+ const Word16 last_core_orig /* i : original last core Q0*/
);
void fine_gain_quant_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
const Word16 *ord, /* i : Indices for energy order */
const Word16 num_sfm, /* i : Number of bands */
const Word16 *gain_bits, /* i : Gain adjustment bits per sub band */
@@ -278,21 +278,21 @@ void fine_gain_quant_fx(
void hq_core_enc_fx(
Encoder_State *st_fx,
- const Word16 *audio, /* i : i audio signal Q0 */
- const Word16 input_frame_orig, /* i : frame length Q0*/
- const Word16 hq_core_type, /* i : HQ core type Q0*/
+ const Word16 *audio, /* i : i audio signal Q0*/
+ const Word16 input_frame_orig, /* i : frame length Q0*/
+ const Word16 hq_core_type, /* i : HQ core type Q0*/
const Word16 Voicing_flag, /* i : Voicing flag for FER method selection Q0*/
- const Word16 vad_hover_flag /* i : VAD hangover flag Q0*/
+ const Word16 vad_hover_flag /* i : VAD hangover flag Q0*/
);
void long_enr_fx(
- Encoder_State *st_fx, /* i/o: state structure */
+ Encoder_State *st_fx, /* i/o: state structure */
const Word16 Etot, /* i : total channel E (see lib_enc\analy_sp.c) */
const Word16 localVAD_HE_SAD, /* i : HE-SAD flag without hangover */
Word16 high_lpn_flag );
void ivas_long_enr_fx(
- Encoder_State *st_fx, /* i/o: state structure */
+ Encoder_State *st_fx, /* i/o: state structure */
const Word32 Etot, /* i : total channel E (see lib_enc\analy_sp.c) Q=24*/
const Word16 localVAD_HE_SAD, /* i : HE-SAD flag without hangover */
Word16 high_lpn_flag, /* i : sp/mus LPN flag */
@@ -300,10 +300,9 @@ void ivas_long_enr_fx(
const Word16 n_chan, /* i : number of channels */
const Word16 localVAD_HE_SAD_LR[], /* i : HE-SAD flag without hangover LR channels */
const Word16 Etot_LR[] /* i : total channel energy LR channels Q=8*/
-
);
-/* o: MDCT A/B decision */
+/* o: MDCT A/B decision */
Word16 mdct_classifier_fx(
const Word16 *Y, /* i: re[0], re[1], ..., re[n/2], im[n/2 - 1], im[n/2 - 2], ..., im[1] */
Encoder_State *st_fx, /* i/o: Encoder state variable */
@@ -371,7 +370,7 @@ void noise_est_fx(
const Word32 Le_min_scaled, /*i : Minimum energy value in Q_new + Q_SCALE */
Word16 *sp_floor, /* o : noise floor estimate Q7 */
Word16 S_map[], /* o : short-term correlation map Q7 */
- const Word16 ini_frame /* i : Frame number (init) */
+ const Word16 ini_frame /* i : Frame number (init) */
);
void noise_est_ivas_fx(
@@ -402,19 +401,18 @@ void noise_est_ivas_fx(
Word16 EspecdB[], /* i/o: log E spectrum (with f=0) of the current frame Q7 for multi harm */
Word16 *sp_floor, /* o : noise floor estimate Q7 */
Word16 S_map[], /* o : short-term correlation map Q7 */
- STEREO_CLASSIF_HANDLE hStereoClassif, /* i/o: stereo classifier structure */
- FRONT_VAD_ENC_HANDLE hFrontVad, /* i/o: front-VAD handle */
- const Word16 ini_frame /* i : Frame number (init) */
+ STEREO_CLASSIF_HANDLE hStereoClassif, /* i/o: stereo classifier structure */
+ FRONT_VAD_ENC_HANDLE hFrontVad, /* i/o: front-VAD handle */
+ const Word16 ini_frame /* i : Frame number (init) */
);
void noise_est_pre_fx(
const Word16 Etot, /* i : Energy of current frame */
const Word16 ini_frame_fx, /* i : Frame number (init) */
- NOISE_EST_HANDLE hNoiseEst, /* i/o: Noise estimation handle */
- const Word16 idchan, /* i : channel ID */
- const Word16 element_mode, /* i : element mode */
- const Word16 last_element_mode /* i : last element mode */
-
+ NOISE_EST_HANDLE hNoiseEst, /* i/o: Noise estimation handle */
+ const Word16 idchan, /* i : channel ID */
+ const Word16 element_mode, /* i : element mode */
+ const Word16 last_element_mode /* i : last element mode */
);
void noise_est_pre_32fx(
@@ -424,7 +422,6 @@ void noise_est_pre_32fx(
const Word16 idchan, /* i : channel ID */
const Word16 element_mode, /* i : element mode */
const Word16 last_element_mode /* i : last element mode */
-
);
void pitch_ol2_fx(
@@ -481,17 +478,17 @@ void pitch_ol_init_fx(
);
void Preemph_scaled(
- Word16 new_speech[], /* i : Speech to scale already on 14 bits Q_new*/
- Word16 *Q_new, /* o : Scaling factor */
- Word16 *mem_preemph, /* i/o: Preemph memory Q(-1)*/
- Word16 *Q_max, /* i/o: Q_new limitation */
- const Word16 Preemph_factor, /* i : Preemphasis factor Q15*/
- const Word16 bits, /* i : Bit to remove from the output to (15-bits) */
- const Word16 bit1, /* i : Limit the output scaling to ((15-bits)-bit1) bits */
- const Word16 L_Q_mem, /* i : Number of old scaling to take into account Q0*/
- const Word16 Lframe, /* i : Frame length Q0*/
- const Word16 last_coder_type, /* i : coder_type Q0*/
- const Word16 Search_scaling /* i : enable the search of a proper scaling factor Q0*/
+ Word16 new_speech[], /* i : Speech to scale already on 14 bits Q_new*/
+ Word16 *Q_new, /* o : Scaling factor */
+ Word16 *mem_preemph, /* i/o: Preemph memory Q(-1)*/
+ Word16 *Q_max, /* i/o: Q_new limitation */
+ const Word16 Preemph_factor, /* i : Preemphasis factor Q15*/
+ const Word16 bits, /* i : Bit to remove from the output to (15-bits) */
+ const Word16 bit1, /* i : Limit the output scaling to ((15-bits)-bit1) bits */
+ const Word16 L_Q_mem, /* i : Number of old scaling to take into account Q0*/
+ const Word16 Lframe, /* i : Frame length Q0*/
+ const Word16 last_coder_type, /* i : coder_type Q0*/
+ const Word16 Search_scaling /* i : enable the search of a proper scaling factor Q0*/
);
void Scale_mem_enc(
@@ -530,10 +527,10 @@ void Scale_wsp(
Word16 *old_wsp, /* i/o: Old weighted speech buffer */
Word16 *mem_decim2, /* i/o: Decimation buffer */
Word16 *old_wsp12k8, /* i/o: wsp memory @ 12.8 kHz used in pitol2 */
- const Word16 Len_p_look /* i : L_frame + look ahead Q0*/
+ const Word16 Len_p_look /* i : L_frame + look ahead Q0*/
);
-/* o : classification for current frames */
+/* o : classification for current frames */
Word16 signal_clas_fx(
Encoder_State *st, /* i/o: encoder state structure */
const Word16 *speech, /* i : pointer to speech signal for E computation */
@@ -543,7 +540,7 @@ Word16 signal_clas_fx(
Word16 *uc_clas /* o : temporary classification used in music/speech class*/
);
-/* o : classification for current frames */
+/* o : classification for current frames */
Word16 signal_clas_ivas_fx(
Encoder_State *st, /* i/o: encoder state structure */
const Word16 *speech, /* i : pointer to speech signal for E computation */
@@ -554,27 +551,27 @@ Word16 signal_clas_ivas_fx(
);
void speech_music_classif_fx(
- Encoder_State *st, /* i/o: state structure */
- const Word16 *new_inp, /* i : new input signal */
- const Word16 *inp, /* i : input signal to locate attach position */
- const Word16 localVAD_HE_SAD, /* i : HE-SAD flag without hangover */
- const Word16 lsp_new[M], /* i : LSPs in current frame Q15 */
- const Word16 cor_map_sum, /* i : correlation map sum (from multi-harmonic anal.)Q8*/
- const Word32 epsP[M + 1], /* i : LP prediciton error Q_esp*/
- const Word32 PS[], /* i : energy spectrum Q_new+QSCALE*/
- const Word16 Etot, /* i : total frame energy Q8 */
- const Word16 old_cor, /* i : max correlation from previous frame Q15 */
+ Encoder_State *st, /* i/o: state structure */
+ const Word16 *new_inp, /* i : new input signal */
+ const Word16 *inp, /* i : input signal to locate attach position */
+ const Word16 localVAD_HE_SAD, /* i : HE-SAD flag without hangover */
+ const Word16 lsp_new[M], /* i : LSPs in current frame Q15 */
+ const Word16 cor_map_sum, /* i : correlation map sum (from multi-harmonic anal.) Q8*/
+ const Word32 epsP[M + 1], /* i : LP prediciton error Q_esp*/
+ const Word32 PS[], /* i : energy spectrum Q_new+QSCALE*/
+ const Word16 Etot, /* i : total frame energy Q8 */
+ const Word16 old_cor, /* i : max correlation from previous frame Q15 */
Word16 *attack_flag, /* o : flag to indicate if attack is to be treated by TC or GSC */
- Word16 non_sta, /* i : unbound non-stationarity for sp/mus classifier */
- Word16 relE, /* i : relative frame energy */
- Word16 Q_esp, /* i : scaling of esP */
- Word16 Q_inp, /* i : scaling of input */
- Word16 *high_lpn_flag_ptr, /* o : noise log prob flag for NOISE_EST */
- Word16 flag_spitch /* i : flag to indicate very short stable pitch */
+ Word16 non_sta, /* i : unbound non-stationarity for sp/mus classifier */
+ Word16 relE, /* i : relative frame energy */
+ Word16 Q_esp, /* i : scaling of esP */
+ Word16 Q_inp, /* i : scaling of input */
+ Word16 *high_lpn_flag_ptr, /* o : noise log prob flag for NOISE_EST */
+ Word16 flag_spitch /* i : flag to indicate very short stable pitch */
);
void StableHighPitchDetect_fx(
- Word16 *flag_spitch, /* o : flag to indicate very short stable pitch */
+ Word16 *flag_spitch, /* o : flag to indicate very short stable pitch*/
Word16 pitch[], /* i/o: OL pitch buffer */
const Word16 voicing[], /* i : OL pitch gains */
const Word16 wsp[], /* i : weighted speech */
@@ -606,10 +603,10 @@ void StableHighPitchDetect_ivas_fx(
void swb_bwe_enc_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
- Word16 *old_input_12k8_fx, /* i : i signal @12.8kHz for SWB BWE */
- Word16 *old_input_16k_fx, /* i : i signal @16kHz for SWB BWE */
+ Word16 *old_input_12k8_fx, /* i : i signal @12.8kHz for SWB BWE */
+ Word16 *old_input_16k_fx, /* i : i signal @16kHz for SWB BWE */
const Word16 *old_syn_12k8_16k_fx, /* i : ACELP core synthesis at 12.8kHz or 16kHz */
- const Word16 *new_swb_speech_fx, /* i : original i signal at 32kHz */
+ const Word16 *new_swb_speech_fx, /* i : original i signal at 32kHz */
Word16 *shb_speech_fx, /* i : SHB target signal (6-14kHz) at 16kHz */
const Word16 coder_type, /* i : coding type */
Word16 Q_shb_speech,
@@ -617,9 +614,9 @@ void swb_bwe_enc_fx(
void swb_bwe_enc_ivas_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 last_element_mode, /* i : last element mode */
- Word16 *old_input_12k8_fx, /* i : input signal @12.8kHz for SWB BWE */
- Word16 *old_input_16k_fx, /* i : input signal @16kHz for SWB BWE */
+ const Word16 last_element_mode, /* i : last element mode */
+ Word16 *old_input_12k8_fx, /* i : input signal @12.8kHz for SWB BWE */
+ Word16 *old_input_16k_fx, /* i : input signal @16kHz for SWB BWE */
const Word16 *old_syn_12k8_16k_fx, /* i : ACELP core synthesis at 12.8kHz or 16kHz */
const Word16 *new_swb_speech_fx, /* i : original input signal at 32kHz */
const Word16 Q_new_swb_speech, /* i : Q for new_swb_speech_fx */
@@ -635,19 +632,19 @@ void swb_CNG_enc_fx(
void swb_CNG_enc_ivas_fx(
Encoder_State *st, /* i/o: State structure */
- const Word16 *shb_speech_fx, /* i : SHB target signal (6-14kHz) at 16kHz Q0 */
+ const Word16 *shb_speech_fx, /* i : SHB target signal (6-14kHz) at 16kHz Q0 */
const Word16 *syn_12k8_16k_fx /* i : ACELP core synthesis at 12.8kHz or 16kHz Q0 */
);
void swb_pre_proc_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 *input_fx, /* i : original i signal */
- Word16 *new_swb_speech_fx, /* o : original i signal at 32kHz */
+ const Word16 *input_fx, /* i : original i signal */
+ Word16 *new_swb_speech_fx, /* o : original i signal at 32kHz */
Word16 *shb_speech_fx, /* o : SHB target signal (6-14kHz) at 16kHz */
Word16 *Q_shb_spch, /* o : shb target signal Q factor */
- Word32 realBuffer[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i : real buffer */
- Word32 imagBuffer[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i : imag buffer */
- const CLDFB_SCALE_FACTOR *cldfbScale /* i : scale data of real and imag CLDFB buffers */
+ Word32 realBuffer[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i : real buffer */
+ Word32 imagBuffer[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i : imag buffer */
+ const CLDFB_SCALE_FACTOR *cldfbScale /* i : scale data of real and imag CLDFB buffers*/
);
void InitSWBencBufferStates_fx(
@@ -658,19 +655,19 @@ void InitSWBencBufferStates_fx(
void swb_tbe_enc_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
const Word16 coder_type, /* i : coding type */
- Word16 *new_speech_fx, /* i : original i signal */
+ Word16 *new_speech_fx, /* i : original i signal */
Word32 *bwe_exc_extended_fx, /* i : bandwidth extended excitation */
const Word16 voice_factors_fx[], /* i : voicing factors */
Word16 *White_exc16k_fx, /* o : shaped white excitation for the FB TBE */
Word16 *Q_white_exc, /* o : generated white noise for FB Q factor */
Word16 Q_bwe_exc, /* i : bandwidth extended excitation Q factor */
- Word16 Q_shb, /* i : SHB target Q factor */
+ Word16 Q_shb, /* i : SHB target Q factor */
Word16 *voicing_fx, /* i : OL maximum normalized correlation */
const Word16 pitch_buf[] /* i : pitch for each subframe */
);
void swb_tbe_enc_ivas_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
+ Encoder_State *st_fx, /* i/o: encoder state structure */
STEREO_ICBWE_ENC_HANDLE hStereoICBWE, /* i/o: IC-BWE state structure */
Word16 *shb_speech_fx, /* i : SHB target signal (6-14kHz) at 16kHz Q_shb */
Word32 *bwe_exc_extended, /* i : bandwidth extended exciatation 2 * Q_new */
@@ -716,26 +713,26 @@ void vad_param_updt_fx(
Encoder_State *st_fx, /* i/o: state structure */
const Word16 old_pitch1, /* i : OL pitch value from last frame */
const Word16 corr_shift, /* i : correlation shift Q15*/
- const Word16 corr_shiftR, /* i : correlation shift */
+ const Word16 corr_shiftR, /* i : correlation shift */
const Word16 Az[], /* i: a coeffs Q12 */
- FRONT_VAD_ENC_HANDLE hFrontVad[], /* i/o: front-VAD handles */
- const Word16 n_channels /* i : number of channels */
+ FRONT_VAD_ENC_HANDLE hFrontVad[], /* i/o: front-VAD handles */
+ const Word16 n_channels /* i : number of channels */
);
void wb_bwe_enc_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 *new_wb_speech_fx, /* i : original i signal at 16kHz */
+ const Word16 *new_wb_speech_fx, /* i : original i signal at 16kHz */
Word16 coder_type /* i : coding type */
);
void wb_bwe_enc_ivas_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 *new_wb_speech_fx /* i : original i signal at 16kHz */
+ const Word16 *new_wb_speech_fx /* i : original i signal at 16kHz */
);
void wb_pre_proc_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 *new_inp_resamp16k, /* i : original i signal */
+ Encoder_State *st_fx, /* i/o: encoder state structure */
+ const Word16 *new_inp_resamp16k, /* i : original i signal */
Word16 *hb_speech /* o : HB target signal (6-8kHz) at 16kHz */
);
@@ -767,46 +764,46 @@ void wb_tbe_enc_ivas_fx(
);
Word16 wb_vad_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word32 fr_bands[], /* i : per band i energy (contains 2 vectors) Q_new+QSCALE*/
+ Encoder_State *st_fx, /* i/o: encoder state structure */
+ const Word32 fr_bands[], /* i : per band i energy (contains 2 vectors) Q_new+QSCALE*/
Word16 *noisy_speech_HO, /* o : SC-VBR noisy speech HO flag */
Word16 *clean_speech_HO, /* o : SC-VBR clean speech HO flag */
Word16 *NB_speech_HO, /* o : SC-VBR NB speech HO flag */
Word16 *snr_sum_he, /* o : Output snr_sum as weighted spectral measure*/
Word16 *localVAD_HE_SAD,
Word16 *flag_noisy_speech_snr, /* o : */
- const Word16 Q_new, /* i : scaling factor Q0 */
- VAD_HANDLE hVAD, /* i/o: VAD data handle */
- NOISE_EST_HANDLE hNoiseEst, /* i : Noise estimation handle */
+ const Word16 Q_new, /* i : scaling factor Q0 */
+ VAD_HANDLE hVAD, /* i/o: VAD data handle */
+ NOISE_EST_HANDLE hNoiseEst, /* i : Noise estimation handle */
Word16 lp_speech, /* i : long term active speech energy average */
Word16 lp_noise /* i : long term noise energy */
);
Word16 wb_vad_ivas_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word32 fr_bands[], /* i : per band i energy (contains 2 vectors) q_fr_bands*/
- const Word16 q_fr_bands, /* i : Q of fr_bands */
+ Encoder_State *st_fx, /* i/o: encoder state structure */
+ const Word32 fr_bands[], /* i : per band i energy (contains 2 vectors) q_fr_bands*/
+ const Word16 q_fr_bands, /* i : Q of fr_bands */
Word16 *noisy_speech_HO, /* o : SC-VBR noisy speech HO flag */
Word16 *clean_speech_HO, /* o : SC-VBR clean speech HO flag */
Word16 *NB_speech_HO, /* o : SC-VBR NB speech HO flag */
Word16 *snr_sum_he, /* o : Output snr_sum as weighted spectral measure*/
Word16 *localVAD_HE_SAD,
Word16 *flag_noisy_speech_snr, /* o : */
- VAD_HANDLE hVAD, /* i/o: VAD data handle */
- NOISE_EST_HANDLE hNoiseEst, /* i : Noise estimation handle */
+ VAD_HANDLE hVAD, /* i/o: VAD data handle */
+ NOISE_EST_HANDLE hNoiseEst, /* i : Noise estimation handle */
Word16 lp_speech, /* i : long term active speech energy average */
Word16 lp_noise /* i : long term noise energy */
);
Word32 construct_snr_thresh_fx(
- Word16 sp_center[], /*(i) spectral center Q10*/
- Word32 snr_flux, /*(i) snr flux Q25*/
- Word32 lt_snr, /*(i) long time time domain snr Q25*/
- Word32 l_snr, /*(i) long time frequency domain snr Q25*/
- Word32 continuous_speech_num, /*(i) amount of continuous speech frames Q0*/
- Word16 continuous_noise_num, /*(i) amount of continuous noise frames Q0*/
- Word32 fg_energy_est_start, /*(i) whether if estimated energy Q0*/
- Word16 bw_index /*(i) band width index Q0*/
+ Word16 sp_center[], /*(i) spectral center Q10*/
+ Word32 snr_flux, /*(i) snr flux Q25*/
+ Word32 lt_snr, /*(i) long time time domain snr Q25*/
+ Word32 l_snr, /*(i) long time frequency domain snr Q25*/
+ Word32 continuous_speech_num, /*(i) amount of continuous speech frames Q0*/
+ Word16 continuous_noise_num, /*(i) amount of continuous noise frames Q0*/
+ Word32 fg_energy_est_start, /*(i) whether if estimated energy Q0*/
+ Word16 bw_index /*(i) band width index Q0*/
);
void sc_vbr_enc_init_fx(
@@ -825,12 +822,12 @@ void attenuateNbSpectrum_fx(
/* o : pitch gain (0..GAIN_PIT_MAX) */
Word16 corr_xy1_fx(
- const Word16 xn_1[], /* i : target signal */
- const Word16 y1_1[], /* i : filtered adaptive codebook excitation */
- Word16 g_corr[], /* o : correlations and -2 */
- const Word16 L_subfr, /* i : vector length */
- const Word16 norm_flag, /* i : flag for constraining pitch contribution */
- Flag *Overflow_out /* o : propagating the Overflow flag to upper level */
+ const Word16 xn_1[], /* i : target signal */
+ const Word16 y1_1[], /* i : filtered adaptive codebook excitation */
+ Word16 g_corr[], /* o : correlations and -2 */
+ const Word16 L_subfr, /* i : vector length */
+ const Word16 norm_flag, /* i : flag for constraining pitch contribution */
+ Flag *Overflow_out /* o : propagating the Overflow flag to upper level */
);
Word16 E_ACELP_indexing_fx(
@@ -850,14 +847,14 @@ void fcb_pulse_track_joint_fx(
Word16 gain_quant_fx(
Word32 *gain, /* i/o: quantized gain */
Word16 *gain16,
- const Word16 c_min, /* i: log10 of lower limit in Q14 */
- const Word16 c_max, /* i: log10 of upper limit in Q13 */
+ const Word16 c_min, /* i: log10 of lower limit in Q14 */
+ const Word16 c_max, /* i: log10 of upper limit in Q13 */
const Word16 bits, /* i: number of bits to quantize */
Word16 *expg );
void gsc_enc_fx(
- Encoder_State *st_fx, /* i/o: State structure */
- Word16 res_dct_in[], /* i : dct of residual signal */
+ Encoder_State *st_fx, /* i/o: State structure */
+ Word16 res_dct_in[], /* i : dct of residual signal */
Word16 exc_dct_in[], /* i/o: dct of pitch-only excitation / total excitation */
const Word16 Diff_len,
const Word16 bits_used,
@@ -888,10 +885,10 @@ void LPDmem_enc_init_ivas_fx(
);
void lsf_end_enc_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- const Word16 *lsf, /* i : LSF in the frequency domain (0..6400) */
- Word16 *qlsf, /* o : quantized LSF */
- const Word16 nBits_in, /* i : number of bits to spend on ISF quantization */
+ Encoder_State *st, /* i/o: encoder state structure */
+ const Word16 *lsf, /* i : LSF in the frequency domain (0..6400) */
+ Word16 *qlsf, /* o : quantized LSF */
+ const Word16 nBits_in, /* i : number of bits to spend on ISF quantization */
const Word16 coder_type_org, /* i : coding type */
Word16 Q_ener, /* i : Q valuen for Bin_Ener */
Word16 force_sf, /* i : Force safety-net usage if coding type supports */
@@ -902,10 +899,10 @@ void lsf_end_enc_fx(
);
void lsf_end_enc_ivas_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- const Word16 *lsf, /* i : LSF in the frequency domain (0..6400) */
- Word16 *qlsf, /* o : quantized LSF */
- const Word16 nBits_in, /* i : number of bits to spend on ISF quantization */
+ Encoder_State *st, /* i/o: encoder state structure */
+ const Word16 *lsf, /* i : LSF in the frequency domain (0..6400) */
+ Word16 *qlsf, /* o : quantized LSF */
+ const Word16 nBits_in, /* i : number of bits to spend on ISF quantization */
const Word16 coder_type_org, /* i : coding type */
Word16 Q_ener, /* i : Q valuen for Bin_Ener */
Word16 force_sf, /* i : Force safety-net usage if coding type supports */
@@ -913,7 +910,7 @@ void lsf_end_enc_ivas_fx(
Word16 *no_indices,
Word16 *bits_param_lpc,
Word16 coder_type_raw, /* i : Coder type (LSF coder_type have some special cases)*/
- const Word16 tdm_lsfQ_PCh[M] /* i : Q LSFs for primary channel */
+ const Word16 tdm_lsfQ_PCh[M] /* i : Q LSFs for primary channel */
);
void Mode2_abs_pit_enc_fx(
@@ -957,11 +954,12 @@ void norm_corr_ivas_fx(
Word16 peak_avrg_ratio_fx(
const Word32 total_brate, /* Q0 */
- const Word32 *input_hi_fx, /* i : i signal Q_coeff*/
+ const Word32 *input_hi_fx, /* i : i signal Q_coeff*/
const Word16 length, /* i : number of coefficients Q0*/
Word16 *mode_count, /* i/o: HQ_HARMONIC mode count Q0*/
Word16 *mode_count1, /* i/o: HQ_NORMAL mode count Q0*/
Word16 Q_coeff );
+
Word16 peak_avrg_ratio_ivas_fx(
const Word32 total_brate, /* Q0 */
const Word32 *input_hi_fx, /* i : i signal Q_coeff*/
@@ -969,6 +967,7 @@ Word16 peak_avrg_ratio_ivas_fx(
Word16 *mode_count, /* i/o: HQ_HARMONIC mode count Q0*/
Word16 *mode_count1, /* i/o: HQ_NORMAL mode count Q0*/
Word16 Q_coeff );
+
void hvq_classifier_ivas_fx(
const Word32 *input, /* i : input signal Q12 */
Word16 *prev_Npeaks, /* i/o: Peak number memory Q0 */
@@ -982,8 +981,9 @@ void hvq_classifier_ivas_fx(
Word16 *hvq_hangover, /* i/o: Mode-switch hangover Q0 */
Word32 *L_pe_gains /* o : peak gains Q12 */
);
+
void pit16k_Q_enc_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
const Word16 nBits, /* i : # of Q bits */
const Word16 limit_flag, /* i : restrained(0) or extended(1) Q limits */
const Word16 T0, /* i : integer pitch lag */
@@ -991,23 +991,23 @@ void pit16k_Q_enc_fx(
Word16 *T0_min, /* i/o: delta search min */
Word16 *T0_max /* o : delta search max */
);
-/* o : chosen integer pitch lag */
+
+/* o : chosen integer pitch lag */
Word16 pitch_fr4_fx(
- const Word16 exc[], /* i : excitation buffer Q_new*/
- const Word16 xn[], /* i : target signal Q_new-1+shift*/
- const Word16 h[], /* i : weighted synthesis filter impulse response Q(14+shift)*/
- const Word16 t0_min, /* i : minimum value in the searched range. Q0*/
- const Word16 t0_max, /* i : maximum value in the searched range. Q0*/
- Word16 *pit_frac, /* o : chosen fraction (0, 1, 2 or 3) */
- const Word16 i_subfr, /* i : flag to first subframe */
- const Word16 limit_flag, /* i : flag for limits (0=restrained, 1=extended) */
- const Word16 t0_fr2, /* i : minimum value for resolution 1/2 */
- const Word16 t0_fr1, /* i : minimum value for resolution 1 */
- const Word16 L_frame, /* i : length of the frame */
- const Word16 L_subfr /* i : size of subframe */
- ,
- const Word16 element_mode, /* i : mode element */
- const Word16 Q_new /* i : scaling factor */
+ const Word16 exc[], /* i : excitation buffer Q_new*/
+ const Word16 xn[], /* i : target signal Q_new-1+shift*/
+ const Word16 h[], /* i : weighted synthesis filter impulse response Q(14+shift)*/
+ const Word16 t0_min, /* i : minimum value in the searched range. Q0*/
+ const Word16 t0_max, /* i : maximum value in the searched range. Q0*/
+ Word16 *pit_frac, /* o : chosen fraction (0, 1, 2 or 3) */
+ const Word16 i_subfr, /* i : flag to first subframe */
+ const Word16 limit_flag, /* i : flag for limits (0=restrained, 1=extended) */
+ const Word16 t0_fr2, /* i : minimum value for resolution 1/2 */
+ const Word16 t0_fr1, /* i : minimum value for resolution 1 */
+ const Word16 L_frame, /* i : length of the frame */
+ const Word16 L_subfr, /* i : size of subframe */
+ const Word16 element_mode, /* i : mode element */
+ const Word16 Q_new /* i : scaling factor */
);
void pit_Q_enc_fx(
@@ -1059,7 +1059,7 @@ Word16 WB_BWE_encoding_ivas_fx(
void calculate_hangover_attenuation_gain_fx(
Encoder_State *st, /* i : encoder state structure */
Word16 *att, /* o : attenuation factor */
- const Word16 vad_hover_flag /* i : VAD hangover flag */
+ const Word16 vad_hover_flag /* i : VAD hangover flag */
);
/*transient_detection.h*/
@@ -1093,12 +1093,11 @@ void RunTransientDetection_fx(
const Word16 nSamplesAvailable,
TRAN_DET_HANDLE hTranDet );
-
void RunTransientDetection_ivas_fx(
- Word16 *input_fx, /* i : input signal Q: q_input */
+ Word16 *input_fx, /* i : input signal Q: q_input */
const Word16 length, /* i : frame length */
TRAN_DET_HANDLE hTranDet, /* i/o: transient detection handle */
- Word16 q_input /*i: stores q for input_fx*/
+ Word16 q_input /* i : stores q for input_fx */
);
/** Get the average temporal flatness measure using subblock energies aligned with the TCX.
@@ -1131,7 +1130,6 @@ Word16 GetTCXMaxenergyChange_fx(
const Word16 nCurrentSubblocks,
const Word16 nPrevSubblocks );
-
Word16 GetTCXMaxenergyChange_ivas_fx(
TRAN_DET_HANDLE hTranDet,
const Word8 isTCX10,
@@ -1219,24 +1217,24 @@ void HQ_core_enc_init_fx(
void AVQ_cod_lpc_fx(
Word16 *nvec, /* i : vector to quantize (normalized) */
- Word16 *nvecq, /* o : quantized vector */
- Word16 *indx, /* o : index[] (4 bits per words) */
+ Word16 *nvecq, /* o : quantized vector */
+ Word16 *indx, /* o : index[] (4 bits per words) */
Word16 Nsv /* i : number of subvectors (lg=Nsv*8) */
);
void ProcessIGF_ivas_fx(
Encoder_State *st, /* i : Encoder state */
- Word16 powerSpec_len, /* i : length of pPowerSpectrum buffer */
+ Word16 powerSpec_len, /* i : length of pPowerSpectrum buffer */
Word32 *pMDCTSpectrum, /* i : MDCT spectrum */
- Word16 *q_spectrum, /* i/o: Q of spectrum */
+ Word16 *q_spectrum, /* i/o: Q of spectrum */
const Word32 *pITFMDCTSpectrum, /* i : MDCT spectrum fir ITF */
- const Word16 q_ITFMDCTSpectrum, /* i : Q of MDCT spectrum fir ITF */
+ const Word16 q_ITFMDCTSpectrum, /* i : Q of MDCT spectrum fir ITF */
Word32 *pPowerSpectrum, /* i : MDCT^2 + MDST^2 spectrum, or estimate */
- Word16 *q_powerSpec, /* i/o: Q of power spectrum */
+ Word16 *q_powerSpec, /* i/o: Q of power spectrum */
const Word16 isTCX20, /* i : flag indicating if the input is TCX20 or TCX10/2xTCX5 */
const Word16 frameno, /* i : flag indicating index of current subframe */
- const Word16 sp_aud_decision0, /* i : first stage switching decision */
- const Word16 vad_hover_flag /* i : VAD hangover flag */
+ const Word16 sp_aud_decision0, /* i : first stage switching decision */
+ const Word16 vad_hover_flag /* i : VAD hangover flag */
);
void ProcessIGF_fx(
@@ -1253,7 +1251,7 @@ void ProcessIGF_fx(
);
void AnalyzePowerSpectrum_fx(
- Encoder_State *st, /* i/o: encoder states */
+ Encoder_State *st, /* i/o: encoder states */
Word16 L_frame, /* i : frame length */
Word16 L_frameTCX, /* i : full band frame length */
Word16 left_overlap, /* i : left overlap length */
@@ -1265,7 +1263,7 @@ void AnalyzePowerSpectrum_fx(
Word16 *powerSpec_e );
void AnalyzePowerSpectrum_ivas_fx(
- Encoder_State *st, /* i/o: encoder states */
+ Encoder_State *st, /* i/o: encoder states */
Word16 L_frame, /* i : frame length */
Word16 L_frameTCX, /* i : full band frame length */
Word16 left_overlap, /* i : left overlap length */
@@ -1290,30 +1288,33 @@ void AdaptLowFreqEmph_fx(
/* o : SQ gain */
Word16 SQ_gain_fx(
- Word32 x[], /* i : vector to quantize */
- Word16 x_e, /* i : exponent */
- Word16 nbitsSQ, /* i : number of bits targeted */
- Word16 lg, /* i : vector size (2048 max) */
- Word16 *gain_e ); /* o : SQ gain exponent */
+ Word32 x[], /* i : vector to quantize */
+ Word16 x_e, /* i : exponent */
+ Word16 nbitsSQ, /* i : number of bits targeted */
+ Word16 lg, /* i : vector size (2048 max) */
+ Word16 *gain_e /* o : SQ gain exponent */
+);
/* o : SQ gain */
Word16 SQ_gain_ivas_fx(
- Word32 x[], /* i : vector to quantize */
- Word16 x_e, /* i : exponent */
- Word16 nbitsSQ, /* i : number of bits targeted */
- Word16 lg, /* i : vector size (2048 max) */
- Word16 *gain_e ); /* o : SQ gain exponent */
+ Word32 x[], /* i : vector to quantize */
+ Word16 x_e, /* i : exponent */
+ Word16 nbitsSQ, /* i : number of bits targeted */
+ Word16 lg, /* i : vector size (2048 max) */
+ Word16 *gain_e /* o : SQ gain exponent */
+);
/* o : SQ gain */
Word16 SQ_gain_estimate_fx(
- Word32 x[], /* i : vector to quantize */
- Word16 x_e, /* i : exponent */
- Word16 nbitsSQ, /* i : number of bits targeted */
- Word16 lg, /* i : vector size (2048 max) */
- Word16 *gain_e ); /* o : SQ gain exponent */
+ Word32 x[], /* i : vector to quantize */
+ Word16 x_e, /* i : exponent */
+ Word16 nbitsSQ, /* i : number of bits targeted */
+ Word16 lg, /* i : vector size (2048 max) */
+ Word16 *gain_e /* o : SQ gain exponent */
+);
void tcx_scalar_quantization_fx(
- Word32 *x, /* i: i coefficients */
+ Word32 *x, /* i: i coefficients */
Word16 x_e, /* i: exponent */
Word16 *xq, /* o: quantized coefficients */
Word16 L_frame, /* i: frame length */
@@ -1324,7 +1325,7 @@ void tcx_scalar_quantization_fx(
const Word16 alfe_flag );
Word16 tcx_scalar_quantization_rateloop_fx(
- Word32 *x, /* i : i coefficients */
+ Word32 *x, /* i : i coefficients */
Word16 x_e, /* i : exponent */
Word16 *xq, /* o : quantized coefficients */
Word16 L_frame, /* i : frame length */
@@ -1396,29 +1397,30 @@ void tcx_noise_factor_ivas_fx(
);
void tcx_encoder_memory_update_ivas_fx(
- Word16 *wsig, /* i : target weighted signal, Q_new */
- Word16 *xn_buf, /* i/o: mdct output buffer/time domain weigthed synthesis, Q_new */
- Word16 L_frame_glob, /* i: global frame length */
- const Word16 *Ai, /* i: Unquantized (interpolated) LPC coefficients, Q12 */
- const Word16 *A, /* i: Quantized LPC coefficients, Q = 14 - norm_s(A[0]) */
- Word16 preemph, /* i: preemphasis factor, Q15 */
- LPD_state *LPDmem, /* i/o: coder memory state */
+ Word16 *wsig, /* i : target weighted signal, Q_new */
+ Word16 *xn_buf, /* i/o: mdct output buffer/time domain weigthed synthesis, Q_new */
+ Word16 L_frame_glob, /* i : global frame length */
+ const Word16 *Ai, /* i : Unquantized (interpolated) LPC coefficients, Q12 */
+ const Word16 *A, /* i : Quantized LPC coefficients, Q = 14 - norm_s(A[0]) */
+ Word16 preemph, /* i : preemphasis factor, Q15 */
+ LPD_state *LPDmem, /* i/o: coder memory state */
Encoder_State *st,
Word16 *synthout, /* Q_new */
Word16 Q_new );
void tcx_encoder_memory_update_fx(
- Word16 *wsig, /* i: targert weighted signal */
+ Word16 *wsig, /* i: targert weighted signal */
Word16 *xn_buf, /* i/o: mdct output buffer/TD weigthed synthesis */
Word16 L_frame_glob, /* i: global frame length */
const Word16 *Ai, /* i: Unquantized (interpolated) LPC coefficients */
const Word16 *A, /* i: Quantized LPC coefficients */
- Word16 preemph, /* i: preemphasis factor*/
+ Word16 preemph, /* i: preemphasis factor */
LPD_state *LPDmem, /* i/o: coder memory state */
Encoder_State *st,
Word16 *synthout, /* o: synthesis signal */
Word16 Q_new,
Word16 shift );
+
Word16 tcx_ari_res_Q_spec_fx(
const Word32 x_orig[], /* i: original spectrum Q31-e */
Word16 x_orig_e, /* i: original spectrum exponent Q0 */
@@ -1558,6 +1560,7 @@ void Mode2_pit_encode_fx(
Word16 pit_fr2,
Word16 pit_max,
Word16 pit_res_max );
+
void E_ACELP_4tsearch_fx(
Word16 dn[] /*Qdn*/,
const Word16 cn[] /*Q_xn*/,
@@ -1567,6 +1570,7 @@ void E_ACELP_4tsearch_fx(
Word16 ind[] /*Q0*/,
Word16 y[] /*Qy*/,
const Word16 element_mode );
+
void E_ACELP_4t_fx(
Word16 dn[], /* Qdn */
Word16 cn[] /* Q_xn */,
@@ -1585,13 +1589,13 @@ void E_ACELP_4t_fx(
);
void E_ACELP_innovative_codebook_fx(
- Word16 *exc, /* i : pointer to the excitation frame Q_new */
+ Word16 *exc, /* i : pointer to the excitation frame Q_new */
Word16 T0, /* i : integer pitch lag Q0 */
Word16 T0_frac, /* i : fraction of lag Q0 */
Word16 T0_res, /* i : pitch resolution Q0 */
Word16 pitch_gain, /* i : adaptive codebook gain 1Q14 */
Word16 tilt_code, /* i : tilt factor Q15 */
- ACELP_config *acelp_cfg, /* i/o: configuration of the ACELP */
+ ACELP_config *acelp_cfg, /* i/o: configuration of the ACELP */
Word16 i_subfr, /* i : subframe index */
const Word16 *Aq, /* i : quantized LPC coefficients 3Q12 */
Word16 *h1, /* i : impulse response of weighted synthesis filter 1Q14+shift */
@@ -1610,55 +1614,27 @@ void E_ACELP_innovative_codebook_fx(
void CalculateTnsFilt_fx(
STnsConfig const *pTnsConfig, /* i : TNS Configuration struct */
- const Word32 pSpectrum[], /* i : MDCT spectrum Qx*/
+ const Word32 pSpectrum[], /* i : MDCT spectrum Qx*/
const Word16 pSpectrum_e,
STnsData *pTnsData /* o : TNS data struct */
);
-/** Detect TNS parameters.
- * Detects if TNS should be used and fills TNS data in pTnsData.
- * @param pTnsConfig TNS configuration.
- * @param pSpectrum Spectrum lines.
- TNS is tested on the spectrum defined by pSpectrum.
- * @param sbCnt Number of active subbands.
- * @param pTnsData TNS data is filled with sensible information.
- * @return Returns 1 if Tns should be used, otherwise 0.
- */
Word16 DetectTnsFilt_fx(
STnsConfig const *pTnsConfig,
Word32 const pSpectrum[],
STnsData *pTnsData,
Word16 *predictionGain );
-/** Detect TNS parameters.
-* Detects if TNS should be used and fills TNS data in pTnsData.
-* @param pTnsConfig TNS configuration.
-* @param pSpectrum Spectrum lines.
-TNS is tested on the spectrum defined by pSpectrum.
-* @param sbCnt Number of active subbands.
-* @param pTnsData TNS data is filled with sensible information.
-* @return Returns 1 if Tns should be used, otherwise 0.
-*/
Word16 DetectTnsFilt_ivas_fx(
- STnsConfig const *pTnsConfig, /* i : TNS Configuration struct */
- Word32 const pSpectrum[], /* i : MDCT spectrum Q=Qx */
- STnsData *pTnsData, /* o : TNS data struct */
- TRAN_DET_HANDLE hTranDet, /* i : transient detection handle */
- Word8 isTCX10, /* i : TCX10 or TCX20? */
- Word16 ltp_gain, /* i : LTP gain Q=15 */
- Word16 *predictionGain /* o : TNS prediction gain Q=7 */
-);
-
-
-/** Write TNS data into a stream of integers.
- * Writes TNS data into a stream of integers.
- * @param pTnsConfig TNS configuration.
- * @param pTnsData TNS data to be written to a bitstream.
- * @param stream Output stream of integers.
- * @param pnSize Set to the number of elements written to the stream.
- * @param pnBits Set to the number of required.
- * @return 0 on success, otherwise 1.
- */
+ STnsConfig const *pTnsConfig, /* i : TNS Configuration struct */
+ Word32 const pSpectrum[], /* i : MDCT spectrum Q=Qx */
+ STnsData *pTnsData, /* o : TNS data struct */
+ TRAN_DET_HANDLE hTranDet, /* i : transient detection handle */
+ Word8 isTCX10, /* i : TCX10 or TCX20? */
+ Word16 ltp_gain, /* i : LTP gain Q=15 */
+ Word16 *predictionGain /* o : TNS prediction gain Q=7 */
+);
+
Word16 EncodeTnsData_fx(
STnsConfig const *pTnsConfig,
STnsData const *pTnsData,
@@ -1666,15 +1642,6 @@ Word16 EncodeTnsData_fx(
Word16 *pnSize,
Word16 *pnBits );
-/** Write TNS data into a bitstream.
- * Writes TNS data into a bitstream.
- * @param pTnsConfig TNS configuration.
- * @param stream Contains TNS data written with EncodeTnsData.
- * @param pnSize Set to the number of used elements from stream.
- * @param st Encoder state.
- * @param pnBits Set to the number of bits written.
- * @return 0 on success, otherwise 1.
- */
Word16 WriteTnsData_fx(
STnsConfig const *pTnsConfig,
Word16 const *stream,
@@ -1696,6 +1663,7 @@ void subband_FFT_fx(
Word32 Offset, /*(i) offset of the CLDFB*/
Word16 *fftoQ /*(o) the Scaling */
);
+
Word16 E_ACELP_toeplitz_mul_fx(
const Word16 R[], /* Q9 */
const Word16 c[], /* Qx */
@@ -1732,7 +1700,7 @@ Word16 gain_enc_uv_fx(
Word16 mean_ener, /*, -2,, -2 and 2 Qx*/
- const Word16 clip_gain /* i : gain pitch clipping flag (1 = clipping) Q0*/
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ const Word16 gains_mode[], /* i : gain bits Q0*/
+ const Word16 element_mode, /* i : element mode Q0*/
+ const Word16 L_frame, /* i : length of the frame Q0*/
+ const Word16 i_subfr, /* i : subframe index Q0*/
+ const Word16 tc_subfr, /* i : TC subframe index Q0*/
+ const Word16 *xn, /* i : target vector Q_xn*/
+ const Word16 *y1, /* i : zero-memory filtered adaptive excitation Q_xn*/
+ const Word16 Q_xn, /* i : xn and y1 scaling */
+ const Word16 *y2, /* i : zero-memory filtered algebraic codebook excitation Q9*/
+ const Word16 *code, /* i : algebraic excitation Q9*/
+ const Word16 Es_pred, /* i : predicted scaled innovation energy Q8*/
+ Word16 *gain_pit, /* o : quantized pitch gain Q14*/
+ Word32 *gain_code, /* o : quantized codebook gain Q16*/
+ Word16 *gain_inov, /* o : gain of the innovation (used for normalization) Q12*/
+ Word32 *norm_gain_code, /* o : norm. gain of the codebook excitation Q16*/
+ Word16 *g_corr, /* i/o: correlations , -2,, -2 and 2 Qx*/
+ const Word16 clip_gain /* i : gain pitch clipping flag (1 = clipping) Q0*/
);
+
void updt_IO_switch_enc_fx(
- Encoder_State *st, /* i/o: state structure */
+ Encoder_State *st, /* i/o: state structure */
const Word16 input_frame /* i : i frame length */
);
@@ -3630,31 +3594,31 @@ void hf_cod_init_fx(
);
void analy_lp_AMR_WB_fx(
- const Word16 speech[], /* i : pointer to the speech frame Q_new*/
- Word32 *ener, /* o : residual energy from Levinson-Durbin Q_r*/
- Word16 A[], /* o : A(z) filter coefficients Q14*/
- Word16 epsP_h[], /* o : LP analysis residual energies for each iteration Q_r*/
- Word16 epsP_l[], /* o : LP analysis residual energies for each iteration Q_r*/
- Word16 isp_new[], /* o : current frame ISPs Q15*/
- Word16 isp_old[], /* i/o: previous frame unquantized ISPs Q15*/
- Word16 isf_new[], /* o : current frame ISPs Q15*/
- Word16 Top, /* i : open loop pitch lag Q0*/
- Word16 Tnc, /* i : open loop pitch gain Qx*/
+ const Word16 speech[], /* i : pointer to the speech frame Q_new*/
+ Word32 *ener, /* o : residual energy from Levinson-Durbin Q_r*/
+ Word16 A[], /* o : A(z) filter coefficients Q14*/
+ Word16 epsP_h[], /* o : LP analysis residual energies for each iteration Q_r*/
+ Word16 epsP_l[], /* o : LP analysis residual energies for each iteration Q_r*/
+ Word16 isp_new[], /* o : current frame ISPs Q15*/
+ Word16 isp_old[], /* i/o: previous frame unquantized ISPs Q15*/
+ Word16 isf_new[], /* o : current frame ISPs Q15*/
+ Word16 Top, /* i : open loop pitch lag Q0*/
+ Word16 Tnc, /* i : open loop pitch gain Qx*/
Word16 Q_new,
Word16 *Q_r );
void encod_amr_wb_fx(
- Encoder_State *st, /* i/o: state structure */
- const Word16 speech[], /* i : i speech Q_new-1*/
- const Word16 Aw[], /* i : weighted A(z) unquantized for subframes Q12*/
- const Word16 Aq[], /* i : 12k8 Lp coefficient Q12*/
- const Word16 *res, /* i : residual signal Q_new*/
- Word16 *syn, /* i/o: core synthesis st->Q_syn*/
- Word16 *exc, /* i/o: current non-enhanced excitation Q_new*/
- Word16 *exc2, /* i/o: current enhanced excitation Q_new*/
- Word16 *pitch_buf, /* i/o: floating pitch values for each subframe Q6*/
- Word16 hf_gain_fx[NB_SUBFR], /* o : decoded HF gain Q0*/
- const Word16 *speech16k_fx, /* i : i speech @16kHz Qx*/
+ Encoder_State *st, /* i/o: state structure */
+ const Word16 speech[], /* i : i speech Q_new-1*/
+ const Word16 Aw[], /* i : weighted A(z) unquantized for subframes Q12*/
+ const Word16 Aq[], /* i : 12k8 Lp coefficient Q12*/
+ const Word16 *res, /* i : residual signal Q_new*/
+ Word16 *syn, /* i/o: core synthesis st->Q_syn*/
+ Word16 *exc, /* i/o: current non-enhanced excitation Q_new*/
+ Word16 *exc2, /* i/o: current enhanced excitation Q_new*/
+ Word16 *pitch_buf, /* i/o: floating pitch values for each subframe Q6*/
+ Word16 hf_gain_fx[NB_SUBFR], /* o : decoded HF gain Q0*/
+ const Word16 *speech16k_fx, /* i : i speech @16kHz Qx*/
Word16 shift,
Word16 Q_new );
@@ -3671,36 +3635,36 @@ void TBEreset_enc_fx(
);
void acelp_core_switch_enc_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 inp12k8[], /* i : i signal @12.8 kHz Q0 */
- const Word16 inp16k[], /* i : i signal @16 kHz Q0 */
- const Word16 A[NB_SUBFR16k * ( M + 1 )], /* i : A(z) unquantized for the 4 subframes Q12*/
+ Encoder_State *st_fx, /* i/o: encoder state structure */
+ const Word16 inp12k8[], /* i : i signal @12.8 kHz Q0 */
+ const Word16 inp16k[], /* i : i signal @16 kHz Q0 */
+ const Word16 A[NB_SUBFR16k * ( M + 1 )], /* i : A(z) unquantized for the 4 subframes Q12 */
Word16 shift,
Word16 Q_new );
void acelp_core_switch_enc_ivas_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 inp12k8[], /* i : i signal @12.8 kHz Q0 */
- const Word16 inp16k[], /* i : i signal @16 kHz Q0 */
- const Word16 A[NB_SUBFR16k * ( M + 1 )], /* i : A(z) unquantized for the 4 subframes Q12*/
+ Encoder_State *st_fx, /* i/o: encoder state structure */
+ const Word16 inp12k8[], /* i : i signal @12.8 kHz Q0 */
+ const Word16 inp16k[], /* i : i signal @16 kHz Q0 */
+ const Word16 A[NB_SUBFR16k * ( M + 1 )], /* i : A(z) unquantized for the 4 subframes Q12 */
Word16 shift,
Word16 Q_new );
void gain_enc_amr_wb_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- const Word16 *xn, /* i : target vector Q_xn*/
- const Word16 Q_xn, /* i : xn and yy1 format */
- const Word16 *yy1, /* i : zero-memory filtered adaptive excitation Q_xn*/
- const Word16 *y2, /* i : zero-memory filtered algebraic codebook excitation Q9*/
- const Word16 *code, /* i : algebraic excitation Q9*/
- const Word32 core_brate, /* i : core bitrate Q0*/
- Word16 *gain_pit, /* i/o: pitch gain / Quantized pitch gain Q14*/
- Word32 *gain_code, /* o : quantized codebook gain Q16*/
- Word16 *gain_inov, /* o : gain of the innovation (used for normalization) Q12*/
- Word32 *norm_gain_code, /* o : norm. gain of the codebook excitation Q16*/
- Word16 *g_coeff, /* i/o: correlations , -2,, -2 and 2 Qx*/
- const Word16 clip_gain, /* i : gain pitch clipping flag (1 = clipping) Q0*/
- Word16 *past_qua_en /* i/o: gain quantization memory (4 words) Q10*/
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ const Word16 *xn, /* i : target vector Q_xn*/
+ const Word16 Q_xn, /* i : xn and yy1 format */
+ const Word16 *yy1, /* i : zero-memory filtered adaptive excitation Q_xn*/
+ const Word16 *y2, /* i : zero-memory filtered algebraic codebook excitation Q9*/
+ const Word16 *code, /* i : algebraic excitation Q9*/
+ const Word32 core_brate, /* i : core bitrate Q0*/
+ Word16 *gain_pit, /* i/o: pitch gain / Quantized pitch gain Q14*/
+ Word32 *gain_code, /* o : quantized codebook gain Q16*/
+ Word16 *gain_inov, /* o : gain of the innovation (used for normalization) Q12*/
+ Word32 *norm_gain_code, /* o : norm. gain of the codebook excitation Q16*/
+ Word16 *g_coeff, /* i/o: correlations , -2,, -2 and 2 Qx*/
+ const Word16 clip_gain, /* i : gain pitch clipping flag (1 = clipping) Q0*/
+ Word16 *past_qua_en /* i/o: gain quantization memory (4 words) Q10*/
);
void hf_cod_fx(
@@ -3771,13 +3735,13 @@ void transf_cdbk_enc_ivas_fx(
);
void gain_enc_lbr_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
const Word16 gains_mode[], /* i : gain bits Q0*/
const Word16 coder_type, /* i : coding type Q0*/
const Word16 i_subfr, /* i : subframe index Q0*/
const Word16 *xn, /* i : target vector Q_xn*/
const Word16 *y1, /* i : zero-memory filtered adaptive excitation Q_xn*/
- const Word16 Q_xn, /* i : xn and y1 format */
+ const Word16 Q_xn, /* i : xn and y1 format */
const Word16 *y2, /* i : zero-memory filtered algebraic codebook excitation Q9*/
const Word16 *code, /* i : algebraic excitation Q9*/
Word16 *gain_pit, /* o : quantized pitch gain Q14*/
@@ -3787,28 +3751,29 @@ void gain_enc_lbr_fx(
Word16 *g_corr, /* i/o: correlations , -2,, -2 and 2 mant/exp*/
Word32 gc_mem[], /* i/o: gain_code from previous subframes Q16*/
Word16 gp_mem[], /* i/o: gain_pitch from previous subframes Q14*/
- const Word16 clip_gain, /* i : gain pitch clipping flag (1 = clipping) Q0*/
- const Word16 L_subfr /* i : subframe length Q0*/
- ,
- const Word16 element_mode /* i : mode element Q0*/
+ const Word16 clip_gain, /* i : gain pitch clipping flag (1 = clipping) Q0*/
+ const Word16 L_subfr, /* i : subframe length Q0*/
+ const Word16 element_mode /* i : mode element Q0*/
);
+
void gain_enc_SQ_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- const Word16 gains_mode[], /* i : gain bits Q0*/
- const Word16 i_subfr, /* i : subframe index Q0*/
- const Word16 *xn, /* i : target vector Q_xn*/
- const Word16 *yy1, /* i : zero-memory filtered adaptive excitation Q_xn*/
- const Word16 *y2, /* i : zero-memory filtered algebraic codebook excitation Q9*/
- const Word16 *code, /* i : algebraic excitation Q9*/
- const Word16 Es_pred, /* i : predicted scaled innovation energy Q8*/
- Word16 *gain_pit, /* o : quantized pitch gain Q14*/
- Word32 *gain_code, /* o : quantized codebook gain Q16*/
- Word16 *gain_inov, /* o : gain of the innovation (used for normalization) Q12*/
- Word32 *norm_gain_code, /* o : norm. gain of the codebook excitation Q16*/
- Word16 *g_corr, /* i/o: correlations , ,, -2 and 2 Qx*/
- const Word16 clip_gain, /* i : gain pitch clipping flag (1 = clipping) Q0*/
- const Word16 Q_xn /* i : xn and y1 scaling */
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ const Word16 gains_mode[], /* i : gain bits Q0*/
+ const Word16 i_subfr, /* i : subframe index Q0*/
+ const Word16 *xn, /* i : target vector Q_xn*/
+ const Word16 *yy1, /* i : zero-memory filtered adaptive excitation Q_xn*/
+ const Word16 *y2, /* i : zero-memory filtered algebraic codebook excitation Q9*/
+ const Word16 *code, /* i : algebraic excitation Q9*/
+ const Word16 Es_pred, /* i : predicted scaled innovation energy Q8*/
+ Word16 *gain_pit, /* o : quantized pitch gain Q14*/
+ Word32 *gain_code, /* o : quantized codebook gain Q16*/
+ Word16 *gain_inov, /* o : gain of the innovation (used for normalization) Q12*/
+ Word32 *norm_gain_code, /* o : norm. gain of the codebook excitation Q16*/
+ Word16 *g_corr, /* i/o: correlations , ,, -2 and 2 Qx*/
+ const Word16 clip_gain, /* i : gain pitch clipping flag (1 = clipping) Q0*/
+ const Word16 Q_xn /* i : xn and y1 scaling */
);
+
void updt_tar_fx(
const Word16 *x, /* i : old target (for pitch search) */
Word16 *x2, /* o : new target (for codebook search) */
@@ -3816,20 +3781,21 @@ void updt_tar_fx(
const Word16 gain, /* i : adaptive codebook gain */
const Word16 L /* i : subframe size */
);
+
void updt_tar_HR_fx(
- const Word16 *x, /* i : old target (for pitch search) */
- Word16 *x2, /* o : new target (for codebook search) */
- const Word16 *y, /* i : filtered adaptive codebook vector */
- const Word16 gain, /* i : adaptive codebook gain */
- const Word16 Qx, /* i : Scaling factor to adapt output to i */
- const Word16 L /* i : subframe size */
+ const Word16 *x, /* i : old target (for pitch search) */
+ Word16 *x2, /* o : new target (for codebook search) */
+ const Word16 *y, /* i : filtered adaptive codebook vector */
+ const Word16 gain, /* i : adaptive codebook gain */
+ const Word16 Qx, /* i : Scaling factor to adapt output to i */
+ const Word16 L /* i : subframe size */
);
Flag conv_fx(
- const Word16 x[], /* i : i vector Q_new*/
- const Word16 h[], /* i : impulse response (or second i vector) Q(15)*/
- Word16 y[], /* o : output vetor (result of convolution) 12 bits*/
- const Word16 L /* i : vector size */
+ const Word16 x[], /* i : i vector Q_new*/
+ const Word16 h[], /* i : impulse response (or second i vector) Q(15)*/
+ Word16 y[], /* o : output vetor (result of convolution) 12 bits*/
+ const Word16 L /* i : vector size */
);
ivas_error ppp_voiced_encoder_fx(
@@ -3838,13 +3804,13 @@ ivas_error ppp_voiced_encoder_fx(
const Word16 bwidth, /* i : audio bandwidth */
const Word16 last_coder_type_raw, /* i : raw last_coder_type */
const Word16 old_pitch_buf[], /* i : buffer of old subframe pitch values */
- Word16 *in_fx, /* i : residual signal */
- Word16 *out_fx, /* o : Quantized residual signal */
- Word16 delay_fx, /* i : open loop pitch */
- Word16 *lpc1_fx, /* i : prev frame de-emphasized LPC */
- Word16 *lpc2_fx, /* i : current frame de-emphasized LPC */
- Word16 *exc_fx, /* i: previous frame quantized excitation */
- Word16 *pitch_fx, /* o: floating pitch values for each subframe */
+ Word16 *in_fx, /* i : residual signal */
+ Word16 *out_fx, /* o : Quantized residual signal */
+ Word16 delay_fx, /* i : open loop pitch */
+ Word16 *lpc1_fx, /* i : prev frame de-emphasized LPC */
+ Word16 *lpc2_fx, /* i : current frame de-emphasized LPC */
+ Word16 *exc_fx, /* i: previous frame quantized excitation */
+ Word16 *pitch_fx, /* o: floating pitch values for each subframe */
Word16 Qres );
void signalling_enc_fx(
@@ -3852,7 +3818,7 @@ void signalling_enc_fx(
);
void transition_enc_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
+ Encoder_State *st_fx, /* i/o: encoder state structure */
const Word16 i_subfr, /* i : subframe index */
Word16 *tc_subfr, /* i/o: TC subframe index */
Word16 *Jopt_flag, /* i : joint optimization flag */
@@ -3863,7 +3829,7 @@ void transition_enc_fx(
Word16 *T0_max, /* i/o: higher limit for close-loop search Q0*/
Word16 *exc_fx, /* i/o: pointer to excitation signal frame Q_new*/
Word16 *y1_fx, /* o : zero-memory filtered adaptive excitation Q_new-1+shift*/
- const Word16 *h1_fx, /* i : weighted filter i response Q(14+shift)*/
+ const Word16 *h1_fx, /* i : weighted filter i response Q(14+shift)*/
const Word16 *xn_fx, /* i : target vector Q_new-1+shift*/
Word16 *xn2_fx, /* o : target vector for innovation search Q_new-1+shift*/
Word16 *gp_cl_fx, /* i/o: memory of gain of pitch clipping algorithm */
@@ -3873,13 +3839,12 @@ void transition_enc_fx(
Word16 **pt_pitch_fx, /* o : floating pitch values */
Word16 *bwe_exc_fx, /* o : excitation for SWB TBE Q_new*/
Word16 *unbits_ACELP, /* i/o: unused bits */
- Word16 Q_new, /* i : Current scaling */
- Word16 shift /* i : downscaling needs for 12 bits convolutions */
-
+ Word16 Q_new, /* i : Current scaling */
+ Word16 shift /* i : downscaling needs for 12 bits convolutions */
);
void transition_enc_ivas_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
+ Encoder_State *st_fx, /* i/o: encoder state structure */
const Word16 i_subfr, /* i : subframe index */
Word16 *tc_subfr, /* i/o: TC subframe index */
Word16 *Jopt_flag, /* i : joint optimization flag */
@@ -3900,13 +3865,12 @@ void transition_enc_ivas_fx(
Word16 **pt_pitch_fx, /* o : floating pitch values */
Word16 *bwe_exc_fx, /* o : excitation for SWB TBE Q_new*/
Word16 *unbits_ACELP, /* i/o: unused bits */
- Word16 Q_new, /* i : Current scaling */
- Word16 shift /* i : downscaling needs for 12 bits convolutions */
-
+ Word16 Q_new, /* i : Current scaling */
+ Word16 shift /* i : downscaling needs for 12 bits convolutions */
);
void gain_enc_tc_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
const Word16 gains_mode[], /* i : gain bits Q0*/
const Word16 i_subfr, /* i : subframe index Q0*/
const Word16 xn_fx[], /* i : target vector Q_xn*/
@@ -3917,69 +3881,69 @@ void gain_enc_tc_fx(
Word32 *gain_code_fx, /* o : quantized codebook gain Q16*/
Word16 *gain_inov_fx, /* o : innovation gain Q12*/
Word32 *norm_gain_code_fx, /* o : norm. gain of the codebook excitation Q16*/
- const Word16 Q_xn /* i : xn and y1 scaling */
+ const Word16 Q_xn /* i : xn and y1 scaling */
);
void gain_enc_tc_ivas_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- const Word16 gains_mode[], /* i : gain bits Q0*/
- const Word16 i_subfr, /* i : subframe index Q0*/
- const Word16 xn_fx[], /* i : target vector Q_xn*/
- const Word16 y2_fx[], /* i : zero-memory filtered algebraic codebook excitation Q_xn*/
- const Word16 code_fx[], /* i : algebraic excitation Q9*/
- const Word16 Es_pred_fx, /* i : predicted scaled innovation energy Q8*/
- Word16 *gain_pit_fx, /* o : Pitch gain / Quantized pitch gain Q14*/
- Word32 *gain_code_fx, /* o : quantized codebook gain Q16*/
- Word16 *gain_inov_fx, /* o : innovation gain Q12*/
- Word32 *norm_gain_code_fx, /* o : norm. gain of the codebook excitation Q6*/
- const Word16 Q_xn /* i : xn and y1 scaling */
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ const Word16 gains_mode[], /* i : gain bits Q0*/
+ const Word16 i_subfr, /* i : subframe index Q0*/
+ const Word16 xn_fx[], /* i : target vector Q_xn*/
+ const Word16 y2_fx[], /* i : zero-memory filtered algebraic codebook excitation Q_xn*/
+ const Word16 code_fx[], /* i : algebraic excitation Q9*/
+ const Word16 Es_pred_fx, /* i : predicted scaled innovation energy Q8*/
+ Word16 *gain_pit_fx, /* o : Pitch gain / Quantized pitch gain Q14*/
+ Word32 *gain_code_fx, /* o : quantized codebook gain Q16*/
+ Word16 *gain_inov_fx, /* o : innovation gain Q12*/
+ Word32 *norm_gain_code_fx, /* o : norm. gain of the codebook excitation Q6*/
+ const Word16 Q_xn /* i : xn and y1 scaling */
);
Word16 gaus_encode_fx(
- Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 i_subfr, /* i : subframe index Q0*/
- const Word16 *h1, /* i : weighted filter input response Q14*/
- const Word16 *xn, /* i : target vector Q12*/
- Word16 *exc, /* o : pointer to excitation signal frame Q_new*/
- Word16 *mem_w0, /* o : weighting filter denominator memory Q_new*/
- Word16 *clip_gain, /* o : memory of gain of pitch clipping algorithm [2.56x,Q14,Q8,Q0,Q14,Q14]*/
- Word16 *tilt_code, /* o : synthesis excitation spectrum tilt Q15*/
- Word16 *code, /* o : algebraic excitation Q9*/
- Word32 *gain_code, /* o : Code gain. Q16*/
- Word16 *y2, /* o : zero-memory filtered adaptive excitation Q9*/
- Word16 *gain_inov, /* o : innovation gain Q12*/
- Word16 *voice_fac, /* o : voicing factor Q15*/
- Word16 *gain_pit, /* o : adaptive excitation gain Q14*/
- const Word16 Q_new, /* i : scaling factor */
- const Word16 shift, /* i : scaling factor */
- Word32 *norm_gain_code /* o : normalized innovative cb. gain Q16*/
+ Encoder_State *st_fx, /* i/o: encoder state structure */
+ const Word16 i_subfr, /* i : subframe index Q0*/
+ const Word16 *h1, /* i : weighted filter input response Q14*/
+ const Word16 *xn, /* i : target vector Q12*/
+ Word16 *exc, /* o : pointer to excitation signal frame Q_new*/
+ Word16 *mem_w0, /* o : weighting filter denominator memory Q_new*/
+ Word16 *clip_gain, /* o : memory of gain of pitch clipping algorithm [2.56x,Q14,Q8,Q0,Q14,Q14]*/
+ Word16 *tilt_code, /* o : synthesis excitation spectrum tilt Q15*/
+ Word16 *code, /* o : algebraic excitation Q9*/
+ Word32 *gain_code, /* o : Code gain. Q16*/
+ Word16 *y2, /* o : zero-memory filtered adaptive excitation Q9*/
+ Word16 *gain_inov, /* o : innovation gain Q12*/
+ Word16 *voice_fac, /* o : voicing factor Q15*/
+ Word16 *gain_pit, /* o : adaptive excitation gain Q14*/
+ const Word16 Q_new, /* i : scaling factor */
+ const Word16 shift, /* i : scaling factor */
+ Word32 *norm_gain_code /* o : normalized innovative cb. gain Q16*/
);
Word16 gaus_encode_ivas_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
- const Word16 i_subfr, /* i : subframe index Q0*/
- const Word16 *h1, /* i : weighted filter input response Q14*/
- const Word16 *xn, /* i : target vector Q12*/
- Word16 *exc, /* o : pointer to excitation signal frame Q_new*/
- Word16 *mem_w0, /* o : weighting filter denominator memory Q_new*/
- Word16 *clip_gain, /* o : memory of gain of pitch clipping algorithm [2.56x,Q14,Q8,Q0,Q14,Q14]*/
- Word16 *tilt_code, /* o : synthesis excitation spectrum tilt Q15*/
- Word16 *code, /* o : algebraic excitation Q9*/
- Word32 *gain_code, /* o : Code gain. Q16*/
- Word16 *y2, /* o : zero-memory filtered adaptive excitation Q9*/
- Word16 *gain_inov, /* o : innovation gain Q12*/
- Word16 *voice_fac, /* o : voicing factor Q15*/
- Word16 *gain_pit, /* o : adaptive excitation gain Q14*/
- const Word16 Q_new, /* i : scaling factor */
- const Word16 shift, /* i : scaling factor */
- Word32 *norm_gain_code /* o : normalized innovative cb. gain Q16*/
+ const Word16 i_subfr, /* i : subframe index Q0*/
+ const Word16 *h1, /* i : weighted filter input response Q14*/
+ const Word16 *xn, /* i : target vector Q12*/
+ Word16 *exc, /* o : pointer to excitation signal frame Q_new*/
+ Word16 *mem_w0, /* o : weighting filter denominator memory Q_new*/
+ Word16 *clip_gain, /* o : memory of gain of pitch clipping algorithm [2.56x,Q14,Q8,Q0,Q14,Q14]*/
+ Word16 *tilt_code, /* o : synthesis excitation spectrum tilt Q15*/
+ Word16 *code, /* o : algebraic excitation Q9*/
+ Word32 *gain_code, /* o : Code gain. Q16*/
+ Word16 *y2, /* o : zero-memory filtered adaptive excitation Q9*/
+ Word16 *gain_inov, /* o : innovation gain Q12*/
+ Word16 *voice_fac, /* o : voicing factor Q15*/
+ Word16 *gain_pit, /* o : adaptive excitation gain Q14*/
+ const Word16 Q_new, /* i : scaling factor */
+ const Word16 shift, /* i : scaling factor */
+ Word32 *norm_gain_code /* o : normalized innovative cb. gain Q16*/
);
void pre_proc_fx(
Encoder_State *st, /* i/o: encoder state structure */
const Word16 input_frame, /* i : frame length */
- Word16 old_inp_12k8[], /* i/o: buffer of old i signal */
- Word16 old_inp_16k[], /* i/o: buffer of old i signal @ 16kHz */
+ Word16 old_inp_12k8[], /* i/o: buffer of old i signal */
+ Word16 old_inp_16k[], /* i/o: buffer of old i signal @ 16kHz */
Word16 **inp, /* o : ptr. to inp. signal in the current frame */
Word32 fr_bands[2 * NB_BANDS], /* o : energy in frequency bands */
Word16 *Etot, /* o : total energy */
@@ -3995,33 +3959,35 @@ void pre_proc_fx(
Word16 lsp_new[M], /* o : LSPs at the end of the frame */
Word16 lsp_mid[M], /* o : LSPs in the middle of the frame */
Word16 *vad_hover_flag,
- Word16 *attack_flag, /* o : flag signalling attack encoded by AC mode (GSC) */
+ Word16 *attack_flag, /* o : flag signalling attack encoded by AC mode (GSC) */
Word16 *new_inp_resamp16k, /* o : new i signal @16kHz, non pre-emphasised, used by the WB TBE/BWE */
- Word16 *Voicing_flag, /* o : voicing flag for HQ FEC */
- Word32 realBuffer[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i/o : cldfb real buffer */
- Word32 imagBuffer[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i/o : cldfb imag buffer */
- CLDFB_SCALE_FACTOR *cldfbScale, /* o : cldfb scale */
- Word16 *old_exc, /* i/o: static excitation memory */
- Word16 *hq_core_type, /* o : HQ core type */
+ Word16 *Voicing_flag, /* o : voicing flag for HQ FEC */
+ Word32 realBuffer[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i/o : cldfb real buffer */
+ Word32 imagBuffer[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* i/o : cldfb imag buffer */
+ CLDFB_SCALE_FACTOR *cldfbScale, /* o : cldfb scale */
+ Word16 *old_exc, /* i/o: static excitation memory */
+ Word16 *hq_core_type, /* o : HQ core type */
Word16 *Q_new,
Word16 *shift,
Word16 *Q_r );
void swb_bwe_enc_hr_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
- Word16 *new_input_fx, /* i : i signal */
- Word16 new_input_fx_exp, /* i : Exponent of i signal */
+ Word16 *new_input_fx, /* i : i signal */
+ Word16 new_input_fx_exp, /* i : Exponent of i signal */
const Word16 input_frame, /* i : frame length */
const Word16 unbits /* i : number of core unused bits */
);
-Word16 gain_enc_gaus_fx( /* o : Return index of quantization */
- Word32 *gain, /* i/o: Code gain to quantize Q16*/
- const Word16 bits, /* i : number of bits to quantize Q0*/
- const Word16 lowBound, /* i : lower bound of quantizer (dB) Q8*/
- const Word16 stepSize, /* i : Step size choice Q14*/
- const Word16 inv_stepSize /* i : Step size choice Q15*/
+/* o : Return index of quantization */
+Word16 gain_enc_gaus_fx(
+ Word32 *gain, /* i/o: Code gain to quantize Q16*/
+ const Word16 bits, /* i : number of bits to quantize Q0*/
+ const Word16 lowBound, /* i : lower bound of quantizer (dB) Q8*/
+ const Word16 stepSize, /* i : Step size choice Q14*/
+ const Word16 inv_stepSize /* i : Step size choice Q15*/
);
+
void enc_pit_exc_fx(
Encoder_State *st_fx, /* i/o: State structure */
const Word16 *speech, /* i : Input speech Q_new-1*/
@@ -4036,9 +4002,9 @@ void enc_pit_exc_fx(
Word16 *pitch_buf, /* i/o: Fractionnal per subframe pitch Q6*/
const Word16 nb_subfr, /* i : Number of subframe considered Q0*/
Word16 *gpit, /* o : pitch mean gpit Q15*/
- Word16 *saved_bit_pos, /* o : saved position in the bitstream before pitch contribution Q0*/
- const Word16 tdm_Pitch_reuse_flag, /* i : primary channel pitch reuse flag Q0*/
- const Word16 tdm_Pri_pitch_buf[], /* i : primary channel pitch buffer Q6*/
+ Word16 *saved_bit_pos, /* o : saved position in the bitstream before pitch contribution Q0*/
+ const Word16 tdm_Pitch_reuse_flag, /* i : primary channel pitch reuse flag Q0*/
+ const Word16 tdm_Pri_pitch_buf[], /* i : primary channel pitch buffer Q6*/
Word16 Q_new,
Word16 shift );
@@ -4056,29 +4022,31 @@ void enc_pit_exc_ivas_fx(
Word16 *pitch_buf, /* i/o: Fractionnal per subframe pitch Q6*/
const Word16 nb_subfr, /* i : Number of subframe considered Q0*/
Word16 *gpit, /* o : pitch mean gpit Q15*/
- Word16 *saved_bit_pos, /* o : saved position in the bitstream before pitch contribution Q0*/
- const Word16 tdm_Pitch_reuse_flag, /* i : primary channel pitch reuse flag Q0*/
- const Word16 tdm_Pri_pitch_buf[], /* i : primary channel pitch buffer Q6*/
+ Word16 *saved_bit_pos, /* o : saved position in the bitstream before pitch contribution Q0*/
+ const Word16 tdm_Pitch_reuse_flag, /* i : primary channel pitch reuse flag Q0*/
+ const Word16 tdm_Pri_pitch_buf[], /* i : primary channel pitch buffer Q6*/
Word16 Q_new,
Word16 shift );
-Word16 Pit_exc_contribution_len_fx( /* o : bin where pitch contribution is significant */
- Encoder_State *st_fx, /* i/o: state structure */
- const Word16 *dct_res, /* i : DCT of residual Qnew*/
- Word16 *dct_pitex, /* i/o: DCT of pitch contribution Qnew*/
- Word16 *pitch_buf, /* i/o: Pitch per subframe Q6*/
- const Word16 nb_subfr, /* i : Number of subframe considered Q0*/
- Word16 *hangover, /* i : hangover for the time contribution switching Q0*/
- Word16 Qnew );
-
-Word16 Pit_exc_contribution_len_ivas_fx( /* o : bin where pitch contribution is significant */
- Encoder_State *st_fx, /* i/o: state structure */
- const Word16 *dct_res, /* i : DCT of residual Qnew*/
- Word16 *dct_pitex, /* i/o: DCT of pitch contribution Qnew*/
- Word16 *pitch_buf, /* i/o: Pitch per subframe Q6*/
- const Word16 nb_subfr, /* i : Number of subframe considered Q0*/
- Word16 *hangover, /* i : hangover for the time contribution switching Q0*/
- Word16 Qnew );
+/* o : bin where pitch contribution is significant */
+Word16 Pit_exc_contribution_len_fx(
+ Encoder_State *st_fx, /* i/o: state structure */
+ const Word16 *dct_res, /* i : DCT of residual Qnew*/
+ Word16 *dct_pitex, /* i/o: DCT of pitch contribution Qnew*/
+ Word16 *pitch_buf, /* i/o: Pitch per subframe Q6*/
+ const Word16 nb_subfr, /* i : Number of subframe considered Q0*/
+ Word16 *hangover, /* i : hangover for the time contribution switching Q0*/
+ Word16 Qnew );
+
+/* o : bin where pitch contribution is significant */
+Word16 Pit_exc_contribution_len_ivas_fx(
+ Encoder_State *st_fx, /* i/o: state structure */
+ const Word16 *dct_res, /* i : DCT of residual Qnew*/
+ Word16 *dct_pitex, /* i/o: DCT of pitch contribution Qnew*/
+ Word16 *pitch_buf, /* i/o: Pitch per subframe Q6*/
+ const Word16 nb_subfr, /* i : Number of subframe considered Q0*/
+ Word16 *hangover, /* i : hangover for the time contribution switching Q0*/
+ Word16 Qnew );
Word16 pvq_core_enc_fx(
BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
@@ -4096,6 +4064,7 @@ Word16 pvq_core_enc_fx(
Word16 *maxpulse, /* i : maximum pulse per band */
const Word16 core /* i : number of bands */
);
+
Word16 pvq_core_enc_ivas_fx(
BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
Word16 coefs_norm[], /* i/o: normalized coefficients to encode */
@@ -4135,7 +4104,6 @@ void hq_lr_enc_ivas_fx(
const Word16 is_transient_fx /* i : Q0 : transient flag */
);
-
void hq_hr_enc_fx(
Encoder_State *st_fx, /* i/o: encoder state structure fx */
Word32 *t_audio, /* i/o: transform-domain coefficients Q12 */
@@ -4168,7 +4136,7 @@ void diffcod_fx(
Word16 *difidx /* (o) differential code Q0*/
);
-/* o : Consumed bits Q0 */
+/* o : Consumed bits Q0 */
Word16 hq_classifier_enc_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
const Word16 length, /* i : Frame length Q0 */
@@ -4181,7 +4149,7 @@ Word16 hq_classifier_enc_fx(
Word16 *hqswb_clas /* o : HQ class Q0 */
);
-/* o : Consumed bits Q0 */
+/* o : Consumed bits Q0 */
Word16 hq_classifier_enc_ivas_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
const Word16 length, /* i : Frame length Q0 */
@@ -4211,8 +4179,7 @@ Word16 encode_envelope_indices_ivas_fx(
Word16 *difidx, /* i/o: Diff indices/encoded diff indices Q0 */
Word16 *LCmode, /* o : Coding mode if flag_pack=0, i : if flag_pack=1 Q0 */
const Word16 flag_pack, /* i : indicator of packing or estimating bits Q0 */
- const Word16 flag_HQ2 /* i : indicator of HQ2 core Q0 */
- ,
+ const Word16 flag_HQ2, /* i : indicator of HQ2 core Q0 */
const Word16 is_transient /* i : indicator of HQ_TRANSIENT Q0 */
);
@@ -4292,7 +4259,6 @@ Word16 noise_adjust_fx(
const Word16 core_sfm /* i : index of the end band for core Q0 */
);
-
ivas_error tcq_core_LR_enc_fx(
BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
Word16 inp_vector_fx[], /* x5 */
@@ -4313,7 +4279,6 @@ ivas_error tcq_core_LR_enc_fx(
const Word16 adjustFlag,
const Word16 is_transient );
-
ivas_error tcq_core_LR_enc_ivas_fx(
BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
Word32 inp_vector[],
@@ -4355,8 +4320,8 @@ void diffcod_lrmdct_fx(
);
Word16 peak_vq_enc_ivas_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- const Word16 bwidth, /* i : audio bandwidth */
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ const Word16 bwidth, /* i : audio bandwidth */
const Word32 *coefs, /* i : Input coefficient vector Q12 */
Word32 *coefs_out, /* o : Quantized output vector Q12 */
const Word32 core_brate, /* i : Core bitrate */
@@ -4369,8 +4334,8 @@ Word16 peak_vq_enc_ivas_fx(
);
Word16 peak_vq_enc_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- const Word16 bwidth, /* i : audio bandwidth */
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ const Word16 bwidth, /* i : audio bandwidth */
const Word32 *coefs, /* i : Input coefficient vector Q12 */
Word32 *coefs_out, /* o : Quantized output vector Q12 */
const Word32 brate, /* i : Core bitrate */
@@ -4410,7 +4375,8 @@ Word16 E_ACELP_hh_corr(
Word16 *x /*Q11*/,
Word16 *y /*Qy*/,
Word16 L_subfr /*Q0*/,
- Word16 bits /*Q0*/ );
+ Word16 bits /*Q0*/
+);
void acelp_1t64_fx(
BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
@@ -4420,6 +4386,7 @@ void acelp_1t64_fx(
Word16 y[], /* o : filtered fixed codebook excitation */
const Word16 L_subfr /* i : subframe length */
);
+
void acelp_2t32_fx(
BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
const Word16 dn[], /* i : corr. between target and h[]. */
@@ -4427,8 +4394,9 @@ void acelp_2t32_fx(
Word16 code[], /* o : algebraic (fixed) codebook excitation */
Word16 y[] /* o : filtered fixed codebook excitation */
);
+
Word16 acelp_4t64_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
Word16 dn[], /* i : corr. between target and h[]. */
const Word16 cn[], /* i : residual after long term prediction Q_new*/
const Word16 H[], /* i : impulse response of weighted synthesis filter Q12*/
@@ -4438,153 +4406,152 @@ Word16 acelp_4t64_fx(
Word16 y[], /* o : filtered fixed codebook excitation Q9*/
Word16 nbbits, /* i : number of bits per codebook */
const Word16 cmpl_flag, /* i : coomplexity reduction flag */
- const Word16 Opt_AMR_WB /* i : flag indicating AMR-WB IO mode */
- ,
+ const Word16 Opt_AMR_WB, /* i : flag indicating AMR-WB IO mode */
const Word16 element_mode );
ivas_error evs_enc_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- const Word16 *data, /* i : input signal Q0*/
- Word32 *mem_hp20_in_fx, /* i/o: hp20 filter memory Qx*/
- const Word16 n_samples /* i : number of input samples Q0*/
+ Encoder_State *st, /* i/o: encoder state structure */
+ const Word16 *data, /* i : input signal Q0*/
+ Word32 *mem_hp20_in_fx, /* i/o: hp20 filter memory Qx*/
+ const Word16 n_samples /* i : number of input samples Q0*/
);
/* o: Qx y(n) */
/* y(n)(Qx) = alpha(Q15) * x(Qx) + (1.0f-alpha)* y(n-1) (Qx) */
Word16 noise_est_AR1_Qx(
- Word16 x, /* i : Qx x(n) */
- Word16 y, /* i : Qx y(n-1) */
- Word16 alpha /*i : Q15 scaling of driving x(n) */
+ Word16 x, /* i : Qx x(n) */
+ Word16 y, /* i : Qx y(n-1) */
+ Word16 alpha /* i : Q15 scaling of driving x(n) */
);
/*o : Qx y( n ) */
Word32 noise_est_AR1_Qx_32(
- Word32 x, /* i : Qx x(n) */
- Word32 y, /* i : Qx y(n-1) */
- Word32 alpha /*i : Q15 scaling of driving x(n) */
+ Word32 x, /* i : Qx x(n) */
+ Word32 y, /* i : Qx y(n-1) */
+ Word32 alpha /* i : Q15 scaling of driving x(n) */
);
void FEC_lsf_estim_enc_fx(
- Encoder_State *st_fx, /* i : Encoder static memory */
+ Encoder_State *st_fx, /* i : Encoder static memory */
Word16 *lsf /* o : estimated LSF vector Qlog2(2.56)*/
);
Word32 mslvq_cng_fx(
- Word16 idx_cv, /* i : index of cv from previous stage */
- Word16 *pTmp, /* i : 16 dimensional i vector x2.56*/
- Word16 *quant, /* o : quantized vector x2.56*/
+ Word16 idx_cv, /* i : index of cv from previous stage */
+ Word16 *pTmp, /* i : 16 dimensional i vector x2.56*/
+ Word16 *quant, /* o : quantized vector x2.56*/
Word16 *cv_out, /* o : corresponding 8-dim lattice codevectors (without the scaling) Q13*/
- Word16 *idx_lead, /* o : leader index for each 8-dim subvector */
- Word16 *idx_scale, /* o : scale index for each subvector */
- const Word16 *w, /* i : weights for LSF quantization Q10*/
+ Word16 *idx_lead, /* o : leader index for each 8-dim subvector */
+ Word16 *idx_scale, /* o : scale index for each subvector */
+ const Word16 *w, /* i : weights for LSF quantization Q10*/
Word16 *no_scales );
Word32 mslvq_cng_ivas_fx(
- Word16 idx_cv, /* i : index of cv from previous stage */
- Word16 *pTmp, /* i : 16 dimensional i vector x2.56*/
- Word16 *quant, /* o : quantized vector x2.56*/
+ Word16 idx_cv, /* i : index of cv from previous stage */
+ Word16 *pTmp, /* i : 16 dimensional i vector x2.56*/
+ Word16 *quant, /* o : quantized vector x2.56*/
Word16 *cv_out, /* o : corresponding 8-dim lattice codevectors (without the scaling) Q13*/
- Word16 *idx_lead, /* o : leader index for each 8-dim subvector */
- Word16 *idx_scale, /* o : scale index for each subvector */
- const Word16 *w /* i : weights for LSF quantization Q10*/
+ Word16 *idx_lead, /* o : leader index for each 8-dim subvector */
+ Word16 *idx_scale, /* o : scale index for each subvector */
+ const Word16 *w /* i : weights for LSF quantization Q10*/
);
void Unified_weighting_fx(
- const Word32 Bin_Ener_128_fx[], /* i : FFT Bin energy 128 bins in two sets Q_ener */
+ const Word32 Bin_Ener_128_fx[], /* i : FFT Bin energy 128 bins in two sets Q_ener */
Word16 Q_ener,
- const Word16 lsf_fx[], /* i : LSF vector x2.56 */
- Word16 w_fx[], /* o : LP weighting filter (numerator) Q8 */
- const Word16 narrowBand, /* i : flag for Narrowband Q0*/
- const Word16 unvoiced, /* i : flag for Unvoiced frame Q0*/
- const Word32 sr_core, /* i : sampling rate of core-coder Q0*/
- const Word16 order /* i : LP order Q0*/
+ const Word16 lsf_fx[], /* i : LSF vector x2.56 */
+ Word16 w_fx[], /* o : LP weighting filter (numerator) Q8 */
+ const Word16 narrowBand, /* i : flag for Narrowband Q0*/
+ const Word16 unvoiced, /* i : flag for Unvoiced frame Q0*/
+ const Word32 sr_core, /* i : sampling rate of core-coder Q0*/
+ const Word16 order /* i : LP order Q0*/
);
Word32 qlsf_ARSN_tcvq_Enc_16k_fx(
const Word16 *x_fx, /* i : Vector to be encoded x2.65 */
Word16 *y_fx, /* o : Quantized LSF vector x2.65 */
- Word16 *indice, /* o : Indices */
- const Word16 *w_fx, /* i : LSF Weights Q10 */
- const Word16 nBits, /* i : number of bits */
- Word16 safety_net /* i : safety_net flag */
+ Word16 *indice, /* o : Indices */
+ const Word16 *w_fx, /* i : LSF Weights Q10 */
+ const Word16 nBits, /* i : number of bits */
+ Word16 safety_net /* i : safety_net flag */
);
Word32 mslvq_fx(
- Word16 *pTmp, /* i : M-dimensional i vector */
- Word16 *quant, /* o : quantized vector */
- Word16 *cv_out, /* o : corresponding 8-dim lattice codevectors (without the scaling) */
- Word16 *idx_lead, /* o : leader index for each 8-dim subvector */
- Word16 *idx_scale, /* o : scale index for each subvector */
- Word16 *w, /* i : weights for LSF quantization */
- Word16 mode, /* i : number indicating the coding type (V/UV/G...)*/
- Word16 mode_glb, /* i : LVQ coding mode */
- Word16 pred_flag, /* i : prediction flag (0: safety net, 1 - predictive )*/
+ Word16 *pTmp, /* i : M-dimensional i vector */
+ Word16 *quant, /* o : quantized vector */
+ Word16 *cv_out, /* o : corresponding 8-dim lattice codevectors (without the scaling) */
+ Word16 *idx_lead, /* o : leader index for each 8-dim subvector */
+ Word16 *idx_scale, /* o : scale index for each subvector */
+ Word16 *w, /* i : weights for LSF quantization */
+ Word16 mode, /* i : number indicating the coding type (V/UV/G...) */
+ Word16 mode_glb, /* i : LVQ coding mode */
+ Word16 pred_flag, /* i : prediction flag (0: safety net, 1 - predictive ) */
Word16 no_scales[][2] );
-
-/* o : frame multi-harmonicity (1-harmonic, 0-not) */
+/* o : frame multi-harmonicity (1-harmonic, 0-not) */
Word16 multi_harm_fx(
- const Word16 Bin_E[], /* i : log-energy spectrum of the current frame Q7 */
- Word16 old_S[], /* i/o: prev. log-energy spectrum w. subtracted floor Q7 */
- Word16 cor_map_LT[], /* i/o: LT correlation map Q15 */
- Word16 *multi_harm_limit, /* i/o: multi harminic threshold Q9 */
- const Word32 total_brate, /* i : total bitrate Q0 */
- const Word16 bwidth, /* i : i signal bandwidth Q0 */
- Word16 *cor_strong_limit, /* i/o: HF correlation indicator Q0 */
- Word16 *st_mean_avr_dyn, /* i/o: long term average dynamic Q7 */
- Word16 *st_last_sw_dyn, /* i/o: last dynamic Q7 */
- Word16 *cor_map_sum, /* i : sum of correlation map Q8 */
+ const Word16 Bin_E[], /* i : log-energy spectrum of the current frame Q7 */
+ Word16 old_S[], /* i/o: prev. log-energy spectrum w. subtracted floor Q7 */
+ Word16 cor_map_LT[], /* i/o: LT correlation map Q15 */
+ Word16 *multi_harm_limit, /* i/o: multi harminic threshold Q9 */
+ const Word32 total_brate, /* i : total bitrate Q0 */
+ const Word16 bwidth, /* i : i signal bandwidth Q0 */
+ Word16 *cor_strong_limit, /* i/o: HF correlation indicator Q0 */
+ Word16 *st_mean_avr_dyn, /* i/o: long term average dynamic Q7 */
+ Word16 *st_last_sw_dyn, /* i/o: last dynamic Q7 */
+ Word16 *cor_map_sum, /* i : sum of correlation map Q8 */
Word16 *sp_floor, /* o: noise floor estimate Q7 */
Word16 S_map[] /* o : short-term correlation map Q7 */
);
-/* o : frame multi-harmonicity (1-harmonic, 0-not) */
+/* o : frame multi-harmonicity (1-harmonic, 0-not) */
Word16 multi_harm_ivas_fx(
- const Word16 Bin_E[], /* i : log-energy spectrum of the current frame Q7 */
- Word16 old_S[], /* i/o: prev. log-energy spectrum w. subtracted floor Q7 */
- Word16 cor_map_LT[], /* i/o: LT correlation map Q15 */
- Word16 *multi_harm_limit, /* i/o: multi harminic threshold Q9 */
- const Word32 total_brate, /* i : total bitrate Q0 */
- const Word16 bwidth, /* i : i signal bandwidth Q0 */
- Word16 *cor_strong_limit, /* i/o: HF correlation indicator Q0 */
- Word16 *st_mean_avr_dyn, /* i/o: long term average dynamic Q7 */
- Word16 *st_last_sw_dyn, /* i/o: last dynamic Q7 */
- Word16 *cor_map_sum, /* i : sum of correlation map Q8 */
+ const Word16 Bin_E[], /* i : log-energy spectrum of the current frame Q7 */
+ Word16 old_S[], /* i/o: prev. log-energy spectrum w. subtracted floor Q7 */
+ Word16 cor_map_LT[], /* i/o: LT correlation map Q15 */
+ Word16 *multi_harm_limit, /* i/o: multi harminic threshold Q9 */
+ const Word32 total_brate, /* i : total bitrate Q0 */
+ const Word16 bwidth, /* i : i signal bandwidth Q0 */
+ Word16 *cor_strong_limit, /* i/o: HF correlation indicator Q0 */
+ Word16 *st_mean_avr_dyn, /* i/o: long term average dynamic Q7 */
+ Word16 *st_last_sw_dyn, /* i/o: last dynamic Q7 */
+ Word16 *cor_map_sum, /* i : sum of correlation map Q8 */
Word16 *sp_floor, /* o: noise floor estimate Q7 */
Word16 S_map[] /* o : short-term correlation map Q7 */
);
void pvq_encode_frame_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- const Word16 *coefs_norm, /* i : normalized coefficients to encode */
- Word16 Q_coefs, /* i : Q-point of coefs_norm[] */
- Word16 *coefs_quant, /* o : quantized coefficients */
- Word16 *gopt, /* o : optimal shape gains */
- Word16 *npulses, /* o : number of pulses per band */
- Word16 *pulse_vector, /* o : non-normalized pulse shapes */
- const Word16 *sfm_start, /* i : indices of first coefficients in the bands */
- const Word16 *sfm_end, /* i : indices of last coefficients in the bands */
- const Word16 *sfmsize, /* i : band sizes */
- const Word16 nb_sfm, /* i : total number of bands */
- const Word16 *R, /* i : bitallocation per band Q3 */
- const Word16 pvq_bits, /* i : number of bits avaiable */
- const Word16 core /* i : core */
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ const Word16 *coefs_norm, /* i : normalized coefficients to encode */
+ Word16 Q_coefs, /* i : Q-point of coefs_norm[] */
+ Word16 *coefs_quant, /* o : quantized coefficients */
+ Word16 *gopt, /* o : optimal shape gains */
+ Word16 *npulses, /* o : number of pulses per band */
+ Word16 *pulse_vector, /* o : non-normalized pulse shapes */
+ const Word16 *sfm_start, /* i : indices of first coefficients in the bands */
+ const Word16 *sfm_end, /* i : indices of last coefficients in the bands */
+ const Word16 *sfmsize, /* i : band sizes */
+ const Word16 nb_sfm, /* i : total number of bands */
+ const Word16 *R, /* i : bitallocation per band Q3 */
+ const Word16 pvq_bits, /* i : number of bits avaiable */
+ const Word16 core /* i : core */
);
+
void pvq_encode_frame_ivas_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- const Word16 *coefs_norm, /* i : normalized coefficients to encode */
- Word16 Q_coefs, /* i : Q-point of coefs_norm[] */
- Word16 *coefs_quant, /* o : quantized coefficients */
- Word16 *gopt, /* o : optimal shape gains */
- Word16 *npulses, /* o : number of pulses per band */
- Word16 *pulse_vector, /* o : non-normalized pulse shapes */
- const Word16 *sfm_start, /* i : indices of first coefficients in the bands */
- const Word16 *sfm_end, /* i : indices of last coefficients in the bands */
- const Word16 *sfmsize, /* i : band sizes */
- const Word16 nb_sfm, /* i : total number of bands */
- const Word16 *R, /* i : bitallocation per band Q3 */
- const Word16 pvq_bits, /* i : number of bits avaiable */
- const Word16 core /* i : core */
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ const Word16 *coefs_norm, /* i : normalized coefficients to encode */
+ Word16 Q_coefs, /* i : Q-point of coefs_norm[] */
+ Word16 *coefs_quant, /* o : quantized coefficients */
+ Word16 *gopt, /* o : optimal shape gains */
+ Word16 *npulses, /* o : number of pulses per band */
+ Word16 *pulse_vector, /* o : non-normalized pulse shapes */
+ const Word16 *sfm_start, /* i : indices of first coefficients in the bands */
+ const Word16 *sfm_end, /* i : indices of last coefficients in the bands */
+ const Word16 *sfmsize, /* i : band sizes */
+ const Word16 nb_sfm, /* i : total number of bands */
+ const Word16 *R, /* i : bitallocation per band Q3 */
+ const Word16 pvq_bits, /* i : number of bits avaiable */
+ const Word16 core /* i : core */
);
/*Qx o : interpolated value */
@@ -4594,49 +4561,49 @@ Word16 Interpol_4(
);
void set_ppp_mode_fx(
- Encoder_State *st_fx, /* i/o: state structure */
- const Word16 noisy_speech_HO, /* i : SC-VBR noisy speech HO flag */
- const Word16 clean_speech_HO, /* i : SC-VBR clean speech HO flag */
- const Word16 NB_speech_HO, /* i : SC-VBR NB speech HO flag */
- const Word16 localVAD_he /* i : HE-SAD flag without hangover */
+ Encoder_State *st_fx, /* i/o: state structure */
+ const Word16 noisy_speech_HO, /* i : SC-VBR noisy speech HO flag */
+ const Word16 clean_speech_HO, /* i : SC-VBR clean speech HO flag */
+ const Word16 NB_speech_HO, /* i : SC-VBR NB speech HO flag */
+ const Word16 localVAD_he /* i : HE-SAD flag without hangover */
);
void decision_matrix_enc_fx(
- Encoder_State *st_fx, /* i : encoder state structure */
+ Encoder_State *st_fx, /* i : encoder state structure */
Word16 *hq_core_type /* o : HQ core_fx type Q0*/
);
void pvq_encode_fx(
BSTR_ENC_HANDLE hBstr,
- PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
- const Word16 *x, /* i: vector to quantize Q15-3=>Q12 */
- Word16 *y, /* o: raw pulses (non-scaled short) Q0 */
- Word16 *xq, /* o: quantized vector Q15 */
- Word32 *L_xq, /* o: quantized vector Q31 */
- const Word16 pulses, /* i: number of allocated pulses */
- const Word16 dim, /* i: Length of vector */
- const Word16 neg_gain /* i: - Gain use - negative gain in Q15 0 ..1 */
+ PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
+ const Word16 *x, /* i : vector to quantize Q15-3=>Q12 */
+ Word16 *y, /* o : raw pulses (non-scaled short) Q0 */
+ Word16 *xq, /* o : quantized vector Q15 */
+ Word32 *L_xq, /* o : quantized vector Q31 */
+ const Word16 pulses, /* i : number of allocated pulses */
+ const Word16 dim, /* i : Length of vector */
+ const Word16 neg_gain /* i : Gain use - negative gain in Q15 0 ..1 */
);
void pvq_encode_ivas_fx(
BSTR_ENC_HANDLE hBstr,
- PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
- const Word16 *x, /* i: vector to quantize Q15-3=>Q12 */
- Word16 *y, /* o: raw pulses (non-scaled short) Q0 */
- Word16 *xq, /* o: quantized vector Q15 */
- Word32 *L_xq, /* o: quantized vector Q31 */
- const Word16 pulses, /* i: number of allocated pulses */
- const Word16 dim, /* i: Length of vector */
- const Word16 neg_gain /* i: - Gain use - negative gain in Q15 0 ..1 */
+ PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
+ const Word16 *x, /* i : vector to quantize Q15-3=>Q12 */
+ Word16 *y, /* o : raw pulses (non-scaled short) Q0 */
+ Word16 *xq, /* o : quantized vector Q15 */
+ Word32 *L_xq, /* o : quantized vector Q31 */
+ const Word16 pulses, /* i : number of allocated pulses */
+ const Word16 dim, /* i : Length of vector */
+ const Word16 neg_gain /* i : Gain use - negative gain in Q15 0 ..1 */
);
void rc_enc_init_fx(
- PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
- Word16 tot_bits /* i : Total bit budget Q0*/
+ PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
+ Word16 tot_bits /* i : Total bit budget Q0*/
);
void rc_enc_finish_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: Encoder state */
+ BSTR_ENC_HANDLE hBstr, /* i/o: Encoder state */
PVQ_ENC_HANDLE hPVQ /* i/o: PVQ encoder handle */
);
@@ -4647,47 +4614,47 @@ void rc_enc_finish_ivas_fx(
);
void rc_encode_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
- UWord32 cum_freq, /* i : Cumulative frequency up to symbol Q0*/
- UWord32 sym_freq, /* i : Symbol probability Q0*/
- UWord32 tot /* i : Total cumulative frequency Q0*/
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
+ UWord32 cum_freq, /* i : Cumulative frequency up to symbol Q0*/
+ UWord32 sym_freq, /* i : Symbol probability Q0*/
+ UWord32 tot /* i : Total cumulative frequency Q0*/
);
void rc_encode_ivas_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
- UWord32 cum_freq, /* i : Cumulative frequency up to symbol Q0*/
- UWord32 sym_freq, /* i : Symbol probability Q0*/
- UWord32 tot /* i : Total cumulative frequency Q0*/
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
+ UWord32 cum_freq, /* i : Cumulative frequency up to symbol Q0*/
+ UWord32 sym_freq, /* i : Symbol probability Q0*/
+ UWord32 tot /* i : Total cumulative frequency Q0*/
);
void rc_enc_uniform_ivas_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
- UWord32 value, /* i : Value to encode Q0*/
- UWord32 tot /* i : Maximum value Q0*/
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
+ UWord32 value, /* i : Value to encode Q0*/
+ UWord32 tot /* i : Maximum value Q0*/
);
void rc_enc_uniform_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
- UWord32 value, /* i : Value to encode Q0*/
- UWord32 tot /* i : Maximum value Q0*/
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
+ UWord32 value, /* i : Value to encode Q0*/
+ UWord32 tot /* i : Maximum value Q0*/
);
void rc_enc_bits_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
- UWord32 value, /* i : Value to encode Q0*/
- Word16 bits /* i : Number of bits used Q0*/
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
+ UWord32 value, /* i : Value to encode Q0*/
+ Word16 bits /* i : Number of bits used Q0*/
);
void rc_enc_bits_ivas_fx(
- BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
- PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
- UWord32 value, /* i : Value to encode Q0*/
- Word16 bits /* i : Number of bits used Q0*/
+ BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
+ PVQ_ENC_HANDLE hPVQ, /* i/o: PVQ encoder handle */
+ UWord32 value, /* i : Value to encode Q0*/
+ Word16 bits /* i : Number of bits used Q0*/
);
void re8_compute_base_index_fx(
@@ -4700,7 +4667,7 @@ void tfaCalcEnv_fx(
const Word16 *shb_speech,
Word32 *enr );
-/* o : pitch index */
+/* o : pitch index */
Word16 delta_pit_enc_fx(
const Word16 fr_steps, /* i : fractional resolution steps (2 or 4)*/
const Word16 T0, /* i : integer pitch lag */
@@ -4709,17 +4676,17 @@ Word16 delta_pit_enc_fx(
);
void set_impulse_fx(
- const Word16 xn_fx[], /* i : target signal Q_new-1+shift*/
- const Word16 h_orig_fx[], /* i : impulse response of weighted synthesis filter Q(14+shift)*/
- Word16 exc_fx[], /* o : adaptive codebook excitation Q_new*/
- Word16 yy1_fx[], /* o : filtered adaptive codebook excitation Q_new*/
- Word16 *imp_shape, /* o : adaptive codebook index Q0*/
- Word16 *imp_pos, /* o : position of the glottal impulse center index Q0*/
- Word32 *gain_trans_fx, /* o : transition gain Q7*/
- Word16 Q_new /* i : Current scaling */
+ const Word16 xn_fx[], /* i : target signal Q_new-1+shift*/
+ const Word16 h_orig_fx[], /* i : impulse response of weighted synthesis filter Q(14+shift)*/
+ Word16 exc_fx[], /* o : adaptive codebook excitation Q_new*/
+ Word16 yy1_fx[], /* o : filtered adaptive codebook excitation Q_new*/
+ Word16 *imp_shape, /* o : adaptive codebook index Q0*/
+ Word16 *imp_pos, /* o : position of the glottal impulse center index Q0*/
+ Word32 *gain_trans_fx, /* o : transition gain Q7*/
+ Word16 Q_new /* i : Current scaling */
);
-/* o : pitch index */
+/* o : pitch index */
Word16 abs_pit_enc_fx(
const Word16 fr_steps, /* i : fractional resolution steps (2 or 4) for shortest pitches*/
const Word16 limit_flag, /* i : restrained(0) or extended(1) limits */
@@ -4728,19 +4695,19 @@ Word16 abs_pit_enc_fx(
);
ivas_error ppp_quarter_encoder_fx(
- Word16 *returnFlag, /* o : return value */
- DTFS_STRUCTURE *CURRCW_Q_FX, /* o : Quantized (amp/phase) DTFS */
- DTFS_STRUCTURE *TARGETCW_FX, /* o : DTFS with quant phase but unquant Amp */
- Word16 prevCW_lag, /* i : previous lag */
- DTFS_STRUCTURE vCURRCW_NQ_FX, /* i : Unquantized DTFS */
- const Word16 *curr_lpc_fx, /* i : LPCS */
- Word16 *lastLgainE_fx, /* i/o: last low band gain */
- Word16 *lastHgainE_fx, /* i/o: last high band gain */
- Word16 *lasterbE_fx, /* i/o: last ERB vector */
- DTFS_STRUCTURE PREV_CW_E_FX, /* i : past DTFS */
- Word16 *S_fx, /* i : sin table, Q15 */
- Word16 *C_fx, /* i : cos table, Q15 */
- BSTR_ENC_HANDLE hBstr /* i/o: encoder bitstream handle */
+ Word16 *returnFlag, /* o : return value */
+ DTFS_STRUCTURE *CURRCW_Q_FX, /* o : Quantized (amp/phase) DTFS */
+ DTFS_STRUCTURE *TARGETCW_FX, /* o : DTFS with quant phase but unquant Amp */
+ Word16 prevCW_lag, /* i : previous lag */
+ DTFS_STRUCTURE vCURRCW_NQ_FX, /* i : Unquantized DTFS */
+ const Word16 *curr_lpc_fx, /* i : LPCS */
+ Word16 *lastLgainE_fx, /* i/o: last low band gain */
+ Word16 *lastHgainE_fx, /* i/o: last high band gain */
+ Word16 *lasterbE_fx, /* i/o: last ERB vector */
+ DTFS_STRUCTURE PREV_CW_E_FX, /* i : past DTFS */
+ Word16 *S_fx, /* i : sin table, Q15 */
+ Word16 *C_fx, /* i : cos table, Q15 */
+ BSTR_ENC_HANDLE hBstr /* i/o: encoder bitstream handle */
);
void index_lvq_fx(
@@ -4762,15 +4729,15 @@ void index_lvq_ivas_fx(
const Word16 prediction_flag );
ivas_error init_encoder_fx(
- Encoder_State *st_fx, /* i/o: Encoder static variables structure */
- const int16_t var_SID_rate_flag, /* i : flag for variable SID update rate */
- const int16_t interval_SID /* i : interval for SID update */
+ Encoder_State *st_fx, /* i/o: Encoder static variables structure */
+ const Word16 var_SID_rate_flag, /* i : flag for variable SID update rate */
+ const Word16 interval_SID /* i : interval for SID update */
);
void copy_encoder_config_fx(
- Encoder_Struct *st_ivas, /* i : IVAS encoder structure */
- Encoder_State *st, /* o : encoder state structure */
- const Word16 flag_all /* i : flag 1==update all, 0=partial update Q0*/
+ Encoder_Struct *st_ivas, /* i : IVAS encoder structure */
+ Encoder_State *st, /* o : encoder state structure */
+ const Word16 flag_all /* i : flag 1==update all, 0=partial update Q0*/
);
void destroy_encoder_fx(
@@ -4778,9 +4745,9 @@ void destroy_encoder_fx(
);
void amr_wb_enc_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- const Word16 input_sp[], /* i : i signal Q0*/
- const Word16 n_samples /* i : number of i samples Q0*/
+ Encoder_State *st, /* i/o: encoder state structure */
+ const Word16 input_sp[], /* i : i signal Q0*/
+ const Word16 n_samples /* i : number of i samples Q0*/
);
void writeLPCparam_fx(
diff --git a/lib_enc/pvq_encode_fx.c b/lib_enc/pvq_encode_fx.c
index 0e8363654694ffd1f8df7a66b193ce6ca524b519..85704ccf3ba1417296f037dc7caccd8d63ddda6a 100644
--- a/lib_enc/pvq_encode_fx.c
+++ b/lib_enc/pvq_encode_fx.c
@@ -63,17 +63,11 @@ static Word16 one_pulse_search(
UWord32 UL_left_l, UL_right_l, UL_dummy;
Word32 L_tmp;
UWord16 u_sgn;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
en_tmp = en_dn_shift; /* dummy assignment to avoid compiler warning for unused parameter */
/* maximize correlation precision, prior to every unit pulse addition in the vector */
- corr_up_shift = norm_l( L_mac( *L_xy_ptr, 1, max_xabs ) ); /* pre analyze worst case L_xy update in the dim loop , 2 ops */
+ corr_up_shift = norm_l( L_mac( *L_xy_ptr, 1, max_xabs ) ); /* pre analyze worst case L_xy update in the dim loop, 2 ops */
imax = -1; /* not needed for search, only added to avoid compiler warning */
/* clean BE code, with split out low/high precision loops */
@@ -90,14 +84,9 @@ static Word16 one_pulse_search(
FOR( i = 0; i < dim; i++ ) /* FOR 3 ops */
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp_corr = L_shl_sat( L_mac_sat( *L_xy_ptr, 1, x_abs[i] ), corr_up_shift ); /* actual in-loop target value, 2 ops */
corr_tmp = round_fx_sat( L_tmp_corr ); /* 1 op */
-#else
- L_tmp_corr = L_shl_o( L_mac_o( *L_xy_ptr, 1, x_abs[i], &Overflow ), corr_up_shift, &Overflow ); /* actual in-loop target value, 2 ops */
- corr_tmp = round_fx_o( L_tmp_corr, &Overflow ); /* 1 op */
-#endif
- corr_sq_tmp = mult( corr_tmp, corr_tmp ); /* CorrSq, is a 16bit for low compelxity cross multiplication 1 op */
+ corr_sq_tmp = mult( corr_tmp, corr_tmp ); /* CorrSq, is a 16bit for low compelxity cross multiplication 1 op */
L_tmp_en_lc = L_mac( *L_yy_ptr, 1, y[i] ); /*Q1 result , energy may span up to ~14+1(Q1)+1(sign)=16 bits, 1 op */
/* extract_l without shift can always be used for this section as energy is guaranteed to stay in the lower word, 1 op */
@@ -212,12 +201,6 @@ void pvq_encode_ivas_fx(
Word16 neg_gain_norm, shift_tot;
Word16 high_pulse_density_flag;
PvqEntry entry;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
L_proj_fac = 4096;
move32();
@@ -371,13 +354,8 @@ void pvq_encode_ivas_fx(
}
Mpy_32_16_ss( L_isqrt, tmp, &L_tmp, &u16_tmp ); /* Q31*Q(0+x) +1 */
Mpy_32_16_ss( L_tmp, neg_gain_norm, &L_tmp, &u16_tmp ); /* Q31*Q(0+x) *Q15 +1 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- L_tmp = L_shr_sat( L_tmp, shift_tot ); /* Q31+x */
- xq[i] = round_fx_sat( L_tmp ); /* Q15, array move */
-#else
- L_tmp = L_shr_sat( L_tmp, shift_tot ); /* Q31+x */
- xq[i] = round_fx_o( L_tmp, &Overflow ); /* Q15, array move */
-#endif
+ L_tmp = L_shr_sat( L_tmp, shift_tot ); /* Q31+x */
+ xq[i] = round_fx_sat( L_tmp ); /* Q15, array move */
move16();
L_xq[i] = L_tmp; /* Q31 currently unused */
move32();
@@ -427,12 +405,6 @@ void pvq_encode_fx(
Word16 neg_gain_norm, shift_tot;
Word16 high_pulse_density_flag;
PvqEntry entry;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
L_proj_fac = 4096;
move32();
@@ -586,13 +558,8 @@ void pvq_encode_fx(
}
Mpy_32_16_ss( L_isqrt, tmp, &L_tmp, &u16_tmp ); /* Q31*Q(0+x) +1 */
Mpy_32_16_ss( L_tmp, neg_gain_norm, &L_tmp, &u16_tmp ); /* Q31*Q(0+x) *Q15 +1 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- L_tmp = L_shr_sat( L_tmp, shift_tot ); /* Q31+x */
- xq[i] = round_fx_sat( L_tmp ); /* Q15, array move */
-#else
- L_tmp = L_shr_sat( L_tmp, shift_tot ); /* Q31+x */
- xq[i] = round_fx_o( L_tmp, &Overflow ); /* Q15, array move */
-#endif
+ L_tmp = L_shr_sat( L_tmp, shift_tot ); /* Q31+x */
+ xq[i] = round_fx_sat( L_tmp ); /* Q15, array move */
move16();
L_xq[i] = L_tmp; /* Q31 currently unused */
move32();
diff --git a/lib_enc/q_gain2p_fx.c b/lib_enc/q_gain2p_fx.c
index ddb3eec9e6fc17a46946ded234b69f4652490f5b..c576c25f6120a5092e5f5c3f6d80dd76cb1ed63a 100644
--- a/lib_enc/q_gain2p_fx.c
+++ b/lib_enc/q_gain2p_fx.c
@@ -145,13 +145,6 @@ static Word16 gain_enc( /* o : quantization pitch index
const Word16 *p;
const Word16 *t_qua_gain;
Word32 L_tmp, dist_min, L_tmp1;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
-
assert( ( func_type != FUNC_GAIN_ENC_UV ) && ( func_type != FUNC_GAIN_ENC_GACELP_UV ) );
@@ -167,15 +160,13 @@ static Word16 gain_enc( /* o : quantization pitch index
/* gain_inov = 1.0f / sqrt((dot_product(code, code, L_SUBFR) + 0.01) / L_SUBFR) */
L_tmp = calc_gain_inov( code, lcode, &L_tmp1, &exp_L_tmp1 );
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
*gain_inov = round_fx_sat( L_shl_sat( L_tmp, 15 - 3 ) ); /* gain_inov in Q12 */
-#else
- *gain_inov = round_fx_o( L_shl_o( L_tmp, 15 - 3, &Overflow ), &Overflow ); /* gain_inov in Q12 */
-#endif
move16();
+
/*----------------------------------------------------------------*
* calculate the predicted gain code
*----------------------------------------------------------------*/
+
IF( func_type == FUNC_GAIN_ENC_MLESS )
{
/*j = 10 * log10((dot_product(code, code, lcode) + 0.01) / lcode) */
@@ -383,11 +374,7 @@ static Word16 gain_enc( /* o : quantization pitch index
/* Here, we use L_mult0 to compensate the factor 0.5 applied to coeff[1..4] before */
L_tmp = L_add( L_tmp, L_shr( L_mult0( p[2 * i + 0], p[2 * i + 0] ), shr_coeff0 ) );
L_tmp = L_sub( L_tmp, L_shr( L_mult( p[2 * i + 0], coeff1 ), shr_coeff1 ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp1 = L_sub_sat( L_tmp, dist_min );
-#else
- L_tmp1 = L_sub_o( L_tmp, dist_min, &Overflow );
-#endif
BASOP_SATURATE_WARNING_ON_EVS
if ( L_tmp1 < 0 )
{
@@ -407,26 +394,19 @@ static Word16 gain_enc( /* o : quantization pitch index
L_tmp = L_mult( g_code, gcode0 ); /* Q11*Q15 -> Q27 */
exp_gcode0 = add( exp_gcode0, -11 );
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_shl_sat( L_tmp, exp_gcode0 ); /* Q27 -> Q16 */
-#else
- L_tmp = L_shl_o( L_tmp, exp_gcode0, &Overflow ); /* Q27 -> Q16 */
-#endif
*gain_code = L_tmp;
move32();
/* Q16/Q12 => Q5 */
L_tmp = L_deposit_h( BASOP_Util_Divide3216_Scale( L_tmp, *gain_inov, &i ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
*past_gcode = L_shl_sat( L_tmp, sub( i, 15 - 12 ) );
-#else
- *past_gcode = L_shl_o( L_tmp, sub( i, 15 - 12 ), &Overflow );
-#endif
move16();
return index;
}
+
Word16 gain_enc_uv_fx( /* o : quantization pitch index */
const Word16 *code, /* i : algebraic excitation */
const Word16 *code2, /* i : gaussian excitation */
@@ -454,12 +434,6 @@ Word16 gain_enc_uv_fx( /* o : quantization pitch ind
Word16 index2;
const Word16 log2_scale = 16;
move16();
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
pred_nrg_frame = 0; /* to suppress compilation warnings */
g_code2 = 0; /* to suppress compilation warnings */
exp_gcode2 = 0; /* to suppress compilation warnings */
@@ -467,7 +441,6 @@ Word16 gain_enc_uv_fx( /* o : quantization pitch ind
move16();
move16();
-
assert( ( func_type != FUNC_GAIN_ENC_MLESS ) );
/* Debug check value (not instrumented) */
@@ -615,11 +588,7 @@ Word16 gain_enc_uv_fx( /* o : quantization pitch ind
}
s1 = norm_l( *gain_code );
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp1 = round_fx_sat( L_shl( *gain_code, s1 ) );
-#else
- tmp1 = round_fx_o( L_shl_o( *gain_code, s1, &Overflow ), &Overflow );
-#endif
s1 = sub( 15, s1 );
tmp1 = mult_r( mult_r( tmp1, tmp1 ), g_coeff->y2y2 );
@@ -632,11 +601,7 @@ Word16 gain_enc_uv_fx( /* o : quantization pitch ind
L_tmp1 = L_add( L_tmp, 0 );
s1 = norm_l( *gain_code );
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp1 = round_fx_sat( L_shl( *gain_code, s1 ) );
-#else
- tmp1 = round_fx_o( L_shl_o( *gain_code, s1, &Overflow ), &Overflow );
-#endif
s1 = sub( 15, s1 );
c_index2 = 0x7FFF;
diff --git a/lib_enc/qlpc_stoch_fx.c b/lib_enc/qlpc_stoch_fx.c
index 702afbadd283a6d4e7cd131b6e4b25195d04d37e..70a41378f66e8295ea6a4aa3162d177e06538846 100644
--- a/lib_enc/qlpc_stoch_fx.c
+++ b/lib_enc/qlpc_stoch_fx.c
@@ -396,12 +396,6 @@ void Unified_weighting_fx(
Word16 nf_fx;
Word32 Bin_Ener_160_fx[160];
const Word32 *Freq_w_Table_fx, *Bin_Ener_fx;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*Config. weighting*/
IF( narrowBand )
@@ -440,11 +434,7 @@ void Unified_weighting_fx(
L_tmp = L_deposit_l( 0 );
FOR( i = 95; i < 127; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_add_sat( L_tmp, Bin_Ener_160_fx[i] ); /* Q_ener */
-#else
- L_tmp = L_add_o( L_tmp, Bin_Ener_160_fx[i], &Overflow ); /* Q_ener */
-#endif
}
L_tmp = L_shr( L_tmp, 5 );
@@ -525,11 +515,7 @@ void Unified_weighting_fx(
}
ELSE
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_shl_sat( L_deposit_l( sub_sat( w_fft_fx[i], min_fx ) ), 13 ); /* Q21 */
-#else
- L_tmp = L_shl_o( L_deposit_l( sub_o( w_fft_fx[i], min_fx, &Overflow ) ), 13, &Overflow ); /* Q21 */
-#endif
exp = norm_l( L_tmp );
frac = round_fx( L_shl( L_tmp, exp ) );
exp = sub( add( exp, 21 ), 30 );
diff --git a/lib_enc/scale_enc_fx.c b/lib_enc/scale_enc_fx.c
index c561903868d8d078871a50842c43c991ffc89d32..5fd11bd31bff4f5ac2e3749167a4cd28e0ee8446 100644
--- a/lib_enc/scale_enc_fx.c
+++ b/lib_enc/scale_enc_fx.c
@@ -62,6 +62,8 @@ void Scale_wsp(
Scale_sig( mem_decim2, 3, *Q_exp );
Copy( old_wsp12k8, wsp - L_WSP_MEM, L_WSP_MEM ); /* Now memory and wsp vector have the same scaling */
+
+ return;
}
/*-------------------------------------------------------------------*
@@ -87,12 +89,6 @@ void Preemph_scaled(
Word16 mu, shift, QVal;
Word32 L_tmp, L_maxloc;
Word16 Q_min;
-#if !defined( ISSUE_1867_replace_overflow_libenc )
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/*---------------------------------------------------------------*
* Perform fixed preemphasis through 1 - g z^-1 *
@@ -100,13 +96,7 @@ void Preemph_scaled(
*---------------------------------------------------------------*/
BASOP_SATURATE_WARNING_OFF_EVS
-
-#ifdef ISSUE_1867_replace_overflow_libenc
QVal = shl_sat( 1, sub( 15, bits ) ); //?sat
-#else
- Overflow = 0;
- QVal = shl_sat( 1, sub( 15, bits ) );
-#endif
BASOP_SATURATE_WARNING_ON_EVS
mu = shr( Preemph_factor, bits ); /* Q15 --> Q(15-bits) */
@@ -123,11 +113,7 @@ void Preemph_scaled(
/* Equivalent to tmp = max((abs(x[i] - mu*x[i-1]),tmp)
* finds the max of preemphasized signal */
L_tmp = L_mult( new_speech[i], QVal );
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_msu_sat( L_tmp, new_speech[i - 1], mu );
-#else
- L_tmp = L_msu_o( L_tmp, new_speech[i - 1], mu, &Overflow );
-#endif
L_tmp = L_abs( L_tmp );
L_maxloc = L_max( L_tmp, L_maxloc );
}
@@ -177,11 +163,7 @@ void Preemph_scaled(
FOR( i = sub( Lframe, 1 ); i > 0; i-- )
{
L_tmp = L_mult( new_speech[i], QVal );
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_msu_sat( L_tmp, new_speech[i - 1], mu );
-#else
- L_tmp = L_msu_o( L_tmp, new_speech[i - 1], mu, &Overflow );
-#endif
L_tmp = L_shl( L_tmp, *Q_new );
new_speech[i] = round_fx_sat( L_tmp ); // Q_new
}
@@ -192,7 +174,11 @@ void Preemph_scaled(
new_speech[0] = round_fx_sat( L_tmp );
*mem_preemph = tmp_fixed;
move16();
+
+ return;
}
+
+
/*-------------------------------------------------------------------*
* Scale_mem
*
@@ -214,11 +200,6 @@ Word32 Scale_mem_pre_proc( /* o : Min energy scaled
{
Word16 i;
Word32 e_min_scaled;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
-#endif
-#endif
e_min_scaled = L_shr_r( L_add( L_shr( E_MIN_FXQ15, sub( 14, add( *Q_new, QSCALE ) ) ), 1 ), 1 );
@@ -247,21 +228,12 @@ Word32 Scale_mem_pre_proc( /* o : Min energy scaled
/* Do scaling and valide minimum energy value */
FOR( i = 0; i < NB_BANDS; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
enrO[i] = L_max( L_shl_sat( enrO[i], Q_exp ), e_min_scaled );
bckr[i] = L_max( L_shl_sat( bckr[i], Q_exp ), e_min_scaled );
ave_enr[i] = L_max( L_shl_sat( ave_enr[i], Q_exp ), e_min_scaled );
ave_enr2[i] = L_max( L_shl_sat( ave_enr2[i], Q_exp ), e_min_scaled );
st_fr_bands1[i] = L_max( L_shl_sat( st_fr_bands1[i], Q_exp ), e_min_scaled );
st_fr_bands2[i] = L_max( L_shl_sat( st_fr_bands2[i], Q_exp ), e_min_scaled );
-#else
- enrO[i] = L_max( L_shl_o( enrO[i], Q_exp, &Overflow ), e_min_scaled );
- bckr[i] = L_max( L_shl_o( bckr[i], Q_exp, &Overflow ), e_min_scaled );
- ave_enr[i] = L_max( L_shl_o( ave_enr[i], Q_exp, &Overflow ), e_min_scaled );
- ave_enr2[i] = L_max( L_shl_o( ave_enr2[i], Q_exp, &Overflow ), e_min_scaled );
- st_fr_bands1[i] = L_max( L_shl_o( st_fr_bands1[i], Q_exp, &Overflow ), e_min_scaled );
- st_fr_bands2[i] = L_max( L_shl_o( st_fr_bands2[i], Q_exp, &Overflow ), e_min_scaled );
-#endif
move32();
move32();
move32();
@@ -271,9 +243,11 @@ Word32 Scale_mem_pre_proc( /* o : Min energy scaled
}
}
}
+
return e_min_scaled;
}
+
void Scale_mem_enc(
Word16 Q_exp, /* i : Diff scaling factor */
Word16 *old_speech16k, /* i/o: Speech memory */
diff --git a/lib_enc/set_impulse_fx.c b/lib_enc/set_impulse_fx.c
index e1f9cf6e9a843de43166481a49042a5565da17b4..68dc2038ea38dd93e3680312453c32b8858a48a0 100644
--- a/lib_enc/set_impulse_fx.c
+++ b/lib_enc/set_impulse_fx.c
@@ -12,6 +12,7 @@
/*-----------------------------------------------------------------*
* Local constant
+
*-----------------------------------------------------------------*/
#define INPOL 4 /* +- range in samples for impulse position searching */
@@ -69,12 +70,7 @@ void set_impulse_fx(
Word16 krit_fx, krit_max_fx, gain16;
Word32 Lrr, Ldd, Ltmp, Ltmp1;
const Word16 *pt_Glt;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
krit_max_fx = -32768;
move16();
@@ -125,21 +121,12 @@ void set_impulse_fx(
/* nominator & DEnominator row <0> */
FOR( i = 0; i < L_SUBFR; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
Lrr = L_mac_sat( Lrr, gh_fx[i], gh_fx[i] ); // Q27
Ldd = L_mac_sat( Ldd, gh_fx[i], xn_fx[i] ); // Q27
-#else
- Lrr = L_mac_o( Lrr, gh_fx[i], gh_fx[i], &Overflow ); // Q27
- Ldd = L_mac_o( Ldd, gh_fx[i], xn_fx[i], &Overflow ); // Q27
-#endif
}
rr_fx[start1] = Lrr;
move32();
-#ifdef ISSUE_1867_replace_overflow_libenc
dd_fx[start1] = round_fx_sat( Ldd ); // Q11
-#else
- dd_fx[start1] = round_fx_o( Ldd, &Overflow ); // Q11
-#endif
rr_fx[start1] = L_max( rr_fx[start1], 1 );
FOR( i = add( start1, 1 ); i < L_IMPULSE2; i++ )
@@ -153,25 +140,15 @@ void set_impulse_fx(
gh_fx[j] = mac_r( L_deposit_h( gh_fx[j - 1] ),
Glottal_cdbk_fx[m * L_IMPULSE + L_IMPULSE2 - i], h_orig_fx[j] ); // Q13
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
Lrr = L_mac_sat( Lrr, gh_fx[j], gh_fx[j] ); // Q27
Ldd = L_mac_sat( Ldd, gh_fx[j], xn_fx[j] ); // Q27
-#else
- Lrr = L_mac_o( Lrr, gh_fx[j], gh_fx[j], &Overflow ); // Q27
- Ldd = L_mac_o( Ldd, gh_fx[j], xn_fx[j], &Overflow ); // Q27
-#endif
}
gh_fx[0] = mult_r( Glottal_cdbk_fx[m * L_IMPULSE + L_IMPULSE2 - i], h_orig_fx[0] ); // Q13
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
Lrr = L_mac_sat( Lrr, gh_fx[0], gh_fx[0] ); // Q27
Ldd = L_mac_sat( Ldd, gh_fx[0], xn_fx[0] ); // Q27
-#else
- Lrr = L_mac_o( Lrr, gh_fx[0], gh_fx[0], &Overflow ); // Q27
- Ldd = L_mac_o( Ldd, gh_fx[0], xn_fx[0], &Overflow ); // Q27
-#endif
- dd_fx[i] = round_fx_sat( Ldd ); // Q11
+ dd_fx[i] = round_fx_sat( Ldd ); // Q11
rr_fx[i] = L_max( Lrr, 1 );
move32();
/* move rr and dd into rr[i] and dd[i] */
@@ -204,11 +181,7 @@ void set_impulse_fx(
FOR( i = L_SUBFR - 2; i >= start2; i-- )
{
/*rr[i] = rr[i+1] + gh[L_SUBFR+L_IMPULSE2-1-i]*gh[L_SUBFR+L_IMPULSE2-1-i];*/
-#ifdef ISSUE_1867_replace_overflow_libenc
rr_fx[i] = L_mac_sat( rr_fx[i + 1], gh_fx[L_SUBFR + L_IMPULSE2 - 1 - i], gh_fx[L_SUBFR + L_IMPULSE2 - 1 - i] ); // Q27
-#else
- rr_fx[i] = L_mac_o( rr_fx[i + 1], gh_fx[L_SUBFR + L_IMPULSE2 - 1 - i], gh_fx[L_SUBFR + L_IMPULSE2 - 1 - i], &Overflow ); // Q27
-#endif
move32();
}
/* nominator rows */
diff --git a/lib_enc/sig_clas_fx.c b/lib_enc/sig_clas_fx.c
index beb97514a0d139e512f3936143a461e75d89de6e..78caad798f008b29eaa213f9f11c55fe575f3713 100644
--- a/lib_enc/sig_clas_fx.c
+++ b/lib_enc/sig_clas_fx.c
@@ -5,7 +5,6 @@
#include
#include "options.h" /* Compilation switches */
#include "cnst.h" /* Common constants */
-//#include "prot_fx.h" /* Function prototypes */
#include "rom_com.h"
#include "prot_fx.h" /* Function prototypes */
#include "prot_fx_enc.h" /* Function prototypes */
diff --git a/lib_enc/speech_music_classif_fx.c b/lib_enc/speech_music_classif_fx.c
index 045000fcea581d967261fe3ea86befff50edfbba..38fd1726005ea31439079f1bdebb53e8d36bb85a 100644
--- a/lib_enc/speech_music_classif_fx.c
+++ b/lib_enc/speech_music_classif_fx.c
@@ -660,12 +660,6 @@ static Word16 sp_mus_classif_gmm_fx( /* o : decis
Word16 tmp1, tmp2, exp2, scale, exp3;
SP_MUS_CLAS_HANDLE hSpMusClas = st_fx->hSpMusClas;
HQ_ENC_HANDLE hHQ_core = st_fx->hHQ_core;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
/*------------------------------------------------------------------*
* Initialization
@@ -794,18 +788,10 @@ static Word16 sp_mus_classif_gmm_fx( /* o : decis
sum_PS = L_deposit_l( 0 );
FOR( i = LOWEST_FBIN; i < HIGHEST_FBIN; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
sum_PS = L_add_sat( sum_PS, PS[i] );
-#else
- sum_PS = L_add_o( sum_PS, PS[i], &Overflow );
-#endif
}
exp1 = norm_l( sum_PS );
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp1 = round_fx_sat( L_shl( sum_PS, exp1 ) );
-#else
- tmp1 = round_fx_o( L_shl( sum_PS, exp1 ), &Overflow );
-#endif
exp1 = sub( 30, exp1 );
FOR( i = LOWEST_FBIN; i < HIGHEST_FBIN; i++ )
@@ -813,11 +799,7 @@ static Word16 sp_mus_classif_gmm_fx( /* o : decis
/*PS_norm[i] = PS[i] / sum_PS;*/
/*dPS[i] = (float)fabs(PS_norm[i] - st->past_PS[i]);*/
exp2 = norm_l( PS[i] );
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp2 = round_fx_sat( L_shl( PS[i], exp2 ) );
-#else
- tmp2 = round_fx_o( L_shl( PS[i], exp2 ), &Overflow );
-#endif
exp2 = sub( 30, exp2 );
scale = shr( sub( tmp1, tmp2 ), 15 );
@@ -878,11 +860,7 @@ static Word16 sp_mus_classif_gmm_fx( /* o : decis
ELSE
{
exp1 = norm_l( L_add( dPS[i], 336 ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp1 = round_fx_sat( L_shl_sat( L_add( dPS[i], 336 ), exp1 ) );
-#else
- tmp1 = round_fx_o( L_shl_o( L_add( dPS[i], 336 ), exp1, &Overflow ), &Overflow );
-#endif
exp1 = sub( 30, exp1 );
exp2 = norm_l( mx );
@@ -939,11 +917,7 @@ static Word16 sp_mus_classif_gmm_fx( /* o : decis
FOR( i = 0; i < N_FEATURES; i++ )
{
/**pFV = pSF[0] * *pFV + pSF[1];*/
-#ifdef ISSUE_1867_replace_overflow_libenc
*pFV = round_fx_sat( L_shl_sat( L_mac( pSF_a[i], *pFV, pSF_m[i] ), ishift[i] ) );
-#else
- *pFV = round_fx_o( L_shl_o( L_mac( pSF_a[i], *pFV, pSF_m[i] ), ishift[i], &Overflow ), &Overflow );
-#endif
move16();
pFV++;
}
@@ -974,11 +948,7 @@ static Word16 sp_mus_classif_gmm_fx( /* o : decis
FOR( p = 0; p < N_FEATURES; p++ )
{
/* xm[p] = FV[p] - m_speech[k*N_FEATURES+p];*/
-#ifdef ISSUE_1867_replace_overflow_libenc
xm[p] = sub_sat( FV[p], m_speech_fx[k * N_FEATURES + p] );
-#else
- xm[p] = sub_o( FV[p], m_speech_fx[k * N_FEATURES + p], &Overflow );
-#endif
move16(); /*Q15 */
}
@@ -994,11 +964,7 @@ static Word16 sp_mus_classif_gmm_fx( /* o : decis
FOR( p = 0; p < N_FEATURES; p++ )
{
/*xm[p] = FV[p] - m_noise[k*N_FEATURES+p];*/
-#ifdef ISSUE_1867_replace_overflow_libenc
xm[p] = sub_sat( FV[p], m_noise_fx[k * N_FEATURES + p] );
-#else
- xm[p] = sub_o( FV[p], m_noise_fx[k * N_FEATURES + p], &Overflow );
-#endif
move16(); /*Q15 */
}
@@ -1013,11 +979,7 @@ static Word16 sp_mus_classif_gmm_fx( /* o : decis
FOR( p = 0; p < N_FEATURES; p++ )
{
/*xm[p] = FV[p] - m_music[k*N_FEATURES+p];*/
-#ifdef ISSUE_1867_replace_overflow_libenc
xm[p] = sub_sat( FV[p], m_music_fx[k * N_FEATURES + p] );
-#else
- xm[p] = sub_o( FV[p], m_music_fx[k * N_FEATURES + p], &Overflow );
-#endif
move16(); /*Q15 */
}
@@ -1031,11 +993,7 @@ static Word16 sp_mus_classif_gmm_fx( /* o : decis
/* calculate log-probability */
/*log(0.0001)-0.5f * N_FEATURES * LOG_PI2 in Q9 */
-#ifdef ISSUE_1867_replace_overflow_libenc
lps = extract_h( L_shl_sat( L_sub( max_s, LOG_PROB_CONST ), 16 - 1 ) ); /*Q9 */
-#else
- lps = extract_h( L_shl_o( L_sub( max_s, LOG_PROB_CONST ), 16 - 1, &Overflow ) ); /*Q9 */
-#endif
lps = s_max( lps, -10832 );
lpm = extract_h( L_shl( L_sub( max_m, LOG_PROB_CONST ), 16 - 1 ) ); /*Q9 */
@@ -1043,11 +1001,7 @@ static Word16 sp_mus_classif_gmm_fx( /* o : decis
/*
lpn = (float)log(pyn) - 0.5f * N_FEATURES * (float)log(2*PI);
*/
-#ifdef ISSUE_1867_replace_overflow_libenc
lpn = extract_h( L_shl_sat( L_sub( max_n, LOG_PROB_CONST ), 16 - 1 ) ); /*Q9 */
-#else
- lpn = extract_h( L_shl_o( L_sub( max_n, LOG_PROB_CONST ), 16 - 1, &Overflow ) ); /*Q9 */
-#endif
lpn = s_max( lpn, -10832 );
*high_lpn_flag_ptr = 0;
@@ -1499,12 +1453,6 @@ static Word16 attack_det_fx( /* o : attack flag
Word16 i, j, tmp, tmp1, attack, exp1;
Word32 L_tmp, etmp, etmp2, finc[ATT_NSEG];
Word16 att_3lsub_pos;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
att_3lsub_pos = ATT_3LSUB_POS;
move16();
@@ -1521,11 +1469,7 @@ static Word16 attack_det_fx( /* o : attack flag
FOR( j = 1; j < ATT_SEG_LEN; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac0_sat( L_tmp, inp[i * ATT_SEG_LEN + j], inp[i * ATT_SEG_LEN + j] ); /*2*Qx */
-#else
- L_tmp = L_mac0_o( L_tmp, inp[i * ATT_SEG_LEN + j], inp[i * ATT_SEG_LEN + j], &Overflow ); /*2*Qx */
-#endif
}
finc[i] = L_tmp;
@@ -1550,11 +1494,7 @@ static Word16 attack_det_fx( /* o : attack flag
FOR( i = 1; i < att_3lsub_pos; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_add_sat( L_tmp, L_shr_sat( finc[i], Qx ) ); /*Qx */
-#else
- L_tmp = L_add_o( L_tmp, L_shr_sat( finc[i], Qx ), &Overflow ); /*Qx */
-#endif
}
L_tmp = Mult_32_16( L_tmp, tmp ); /*Q(14-exp1+Qx) */
etmp = L_shl( L_tmp, sub( exp1, 14 ) ); /*Qx */
@@ -1566,11 +1506,7 @@ static Word16 attack_det_fx( /* o : attack flag
L_tmp = L_shr_sat( finc[attack], Qx ); /*Qx */
FOR( i = 1; i < tmp1; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_add_sat( L_tmp, L_shr_sat( finc[i + attack], Qx ) ); /*Qx */
-#else
- L_tmp = L_add_o( L_tmp, L_shr_sat( finc[i + attack], Qx ), &Overflow ); /*Qx */
-#endif
}
L_tmp = Mult_32_16( L_tmp, tmp ); /*Q(14-exp1+Qx) */
etmp2 = L_shl( L_tmp, sub( exp1, 14 ) ); /*Qx */
@@ -1977,8 +1913,8 @@ Word16 ivas_smc_gmm_fx(
Word16 guard_bits = find_guarded_bits_fx( NB_MEL_BANDS );
move16();
- v_mult_mat_fixed( mfcc_fx, melS_fx, dct_mtx_fx, NB_MEL_BANDS, NB_MEL_COEF, guard_bits ); // Q19
- *pFV_fx++ = L_shl( mfcc_fx[2], 1 ); // Q20
+ v_mult_mat_fx( mfcc_fx, melS_fx, dct_mtx_fx, NB_MEL_BANDS, NB_MEL_COEF, guard_bits ); // Q19
+ *pFV_fx++ = L_shl( mfcc_fx[2], 1 ); // Q20
move32();
*pFV_fx++ = L_shl( mfcc_fx[6], 1 );
move32();
@@ -2235,8 +2171,9 @@ Word16 ivas_smc_gmm_fx(
}
/* PCA */
- v_sub_fixed_no_hdrm( FV_fx, pca_mean_fx, FV_fx, N_SMC_FEATURES );
- v_mult_mat_fixed( FV_fx, FV_fx, pca_components_fx, N_SMC_FEATURES, N_PCA_COEF, 0 );
+ v_sub_fx_no_hdrm( FV_fx, pca_mean_fx, FV_fx, N_SMC_FEATURES );
+ v_mult_mat_fx( FV_fx, FV_fx, pca_components_fx, N_SMC_FEATURES, N_PCA_COEF, 0 );
+
/*------------------------------------------------------------------*
* Calculation of posterior probability
* Log-probability
@@ -2251,15 +2188,15 @@ Word16 ivas_smc_gmm_fx(
FOR( m = 0; m < N_SMC_MIXTURES; m++ )
{
v_sub32_fx( FV_fx, &means_speech_fx[m * N_PCA_COEF], fvm_fx, N_PCA_COEF );
- wprob_fx = dot_product_cholesky_fixed( fvm_fx, &prec_chol_speech_fx[m * ( N_PCA_COEF * N_PCA_COEF + N_PCA_COEF ) / 2], N_PCA_COEF ); // Q10
+ wprob_fx = dot_product_cholesky_fx( fvm_fx, &prec_chol_speech_fx[m * ( N_PCA_COEF * N_PCA_COEF + N_PCA_COEF ) / 2], N_PCA_COEF ); // Q10
ps_fx[m] = L_sub( L_sub( L_add( log_weights_speech_compute[m], log_det_chol_speech_fx[m] ), W_extract_l( W_shr( wprob_fx, Q10 ) ) ), HALF_N_PCA_COEF_LOG_P12_Q18 ); // Q18
move32();
v_sub32_fx( FV_fx, &means_music_fx[m * N_PCA_COEF], fvm_fx, N_PCA_COEF );
- wprob_fx = dot_product_cholesky_fixed( fvm_fx, &prec_chol_music_fx[m * ( N_PCA_COEF * N_PCA_COEF + N_PCA_COEF ) / 2], N_PCA_COEF ); // Q10
+ wprob_fx = dot_product_cholesky_fx( fvm_fx, &prec_chol_music_fx[m * ( N_PCA_COEF * N_PCA_COEF + N_PCA_COEF ) / 2], N_PCA_COEF ); // Q10
pm_fx[m] = L_sub( L_sub( L_add( log_weights_music_compute[m], log_det_chol_music_fx[m] ), W_extract_l( W_shr( wprob_fx, Q10 ) ) ), HALF_N_PCA_COEF_LOG_P12_Q18 ); // Q18
move32();
v_sub32_fx( FV_fx, &means_noise_fx[m * N_PCA_COEF], fvm_fx, N_PCA_COEF );
- wprob_fx = dot_product_cholesky_fixed( fvm_fx, &prec_chol_noise_fx[m * ( N_PCA_COEF * N_PCA_COEF + N_PCA_COEF ) / 2], N_PCA_COEF ); // Q10
+ wprob_fx = dot_product_cholesky_fx( fvm_fx, &prec_chol_noise_fx[m * ( N_PCA_COEF * N_PCA_COEF + N_PCA_COEF ) / 2], N_PCA_COEF ); // Q10
pn_fx[m] = L_sub( L_sub( L_add( log_weights_noise_compute[m], log_det_chol_noise_fx[m] ), W_extract_l( W_shr( wprob_fx, Q10 ) ) ), HALF_N_PCA_COEF_LOG_P12_Q18 ); // Q18
move32();
}
@@ -2669,13 +2606,6 @@ static Word16 attack_det_ivas_fx( /* o : attack flag
Word64 W_tmp;
Word16 q_diff;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
att_3lsub_pos = ATT_3LSUB_POS;
move16();
if ( GE_32( total_brate, ACELP_24k40 ) )
@@ -2691,11 +2621,7 @@ static Word16 attack_det_ivas_fx( /* o : attack flag
FOR( j = 1; j < ATT_SEG_LEN; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac0_sat( L_tmp, inp[i * ATT_SEG_LEN + j], inp[i * ATT_SEG_LEN + j] ); /*2*Qx */
-#else
- L_tmp = L_mac0_o( L_tmp, inp[i * ATT_SEG_LEN + j], inp[i * ATT_SEG_LEN + j], &Overflow ); /*2*Qx */
-#endif
}
finc[i] = L_tmp;
@@ -3736,12 +3662,6 @@ static void spec_analysis_fx(
Word16 peak_idx[65];
Word16 valey_idx[65];
Word16 p2v[65];
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* find spectral peaks */
k = 0;
@@ -3824,15 +3744,7 @@ static void spec_analysis_fx(
test();
IF( GT_16( peak_idx[k], valey_idx[i] ) && LT_16( peak_idx[k], valey_idx[i + 1] ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
p2v[k] = sub_sat( shl_sat( peak[k], 1 ), add_sat( valley[i], valley[i + 1] ) );
-#else
-#ifdef ISSUE_1796_replace_shl_o
- p2v[k] = sub_o( shl_sat( peak[k], 1 ), add_o( valley[i], valley[i + 1], &Overflow ), &Overflow );
-#else
- p2v[k] = sub_o( shl_o( peak[k], 1, &Overflow ), add_o( valley[i], valley[i + 1], &Overflow ), &Overflow );
-#endif
-#endif
move16();
k = add( k, 1 );
}
diff --git a/lib_enc/stat_enc.h b/lib_enc/stat_enc.h
index d9afb7f996e8e889ddcf74a95f8a68dda943d4a8..e20c06fd45eee9b8b8b1158c0df4b16d9722d4a7 100644
--- a/lib_enc/stat_enc.h
+++ b/lib_enc/stat_enc.h
@@ -1685,7 +1685,6 @@ typedef struct enc_core_structure
Word16 encoderLookahead_FB;
/* pitch_ol for adaptive lag window */
-
Word16 old_pitch_la; /* past open loop pitch lag from look-ahead before very short stable pitch detection */
Word16 old_voicing_la; /* past open loop pitch gain from look-ahead */
diff --git a/lib_enc/stat_noise_uv_enc_fx.c b/lib_enc/stat_noise_uv_enc_fx.c
index 364bd1dcedc05f0c6b669cbe3b76f3512aaa34c1..a62963ff002602651abcb3aebf952f69d621c347 100644
--- a/lib_enc/stat_noise_uv_enc_fx.c
+++ b/lib_enc/stat_noise_uv_enc_fx.c
@@ -49,34 +49,21 @@ void stat_noise_uv_enc_fx(
Word16 noisiness = 0;
move16();
Word16 num, den, expn, expd;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
+
test();
test();
test();
IF( ( EQ_16( st_fx->coder_type, UNVOICED ) && uc_two_stage_flag == 0 ) || ( EQ_16( st_fx->coder_type, INACTIVE ) && LE_32( st_fx->core_brate, ACELP_9k60 ) ) )
{
-
/*-----------------------------------------------------------------*
* Calculate and write the noisiness parameter
*-----------------------------------------------------------------*/
+
/* epsP[2] is located in LepsP[0] and epsP[16] in LepsP[1] */
expn = sub( norm_l( LepsP[0] ), 1 );
-#ifdef ISSUE_1867_replace_overflow_libenc
num = extract_h( L_shl( LepsP[0], expn ) ); /*expn-16*/
-#else
- num = extract_h( L_shl_o( LepsP[0], expn, &Overflow ) ); /*expn-16*/
-#endif
expd = norm_l( LepsP[1] );
-#ifdef ISSUE_1867_replace_overflow_libenc
- den = extract_h( L_shl( LepsP[1], expd ) ); /*expd-16*/
-#else
- den = extract_h( L_shl_o( LepsP[1], expd, &Overflow ) ); /*expd-16*/
-#endif
+ den = extract_h( L_shl( LepsP[1], expd ) ); /*expd-16*/
num = div_s( num, den ); /*expn-expd+15*/
num = shr_sat( num, add( sub( expn, expd ), 5 ) ); /*Q10*/
num = sub( num, 1024 ); /*num - 1*/
@@ -132,34 +119,21 @@ void stat_noise_uv_enc_ivas_fx(
Word16 noisiness = 0;
move16();
Word16 num, den, expn, expd;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
test();
test();
test();
IF( ( EQ_16( st_fx->coder_type, UNVOICED ) && uc_two_stage_flag == 0 ) || ( EQ_16( st_fx->coder_type, INACTIVE ) && LE_32( st_fx->core_brate, ACELP_9k60 ) ) )
{
-
/*-----------------------------------------------------------------*
* Calculate and write the noisiness parameter
*-----------------------------------------------------------------*/
+
/* epsP[2] is located in LepsP[0] and epsP[16] in LepsP[1] */
expn = sub( norm_l( LepsP[0] ), 1 );
-#ifdef ISSUE_1867_replace_overflow_libenc
num = extract_h( L_shl( LepsP[0], expn ) ); /*expn-16*/
-#else
- num = extract_h( L_shl_o( LepsP[0], expn, &Overflow ) ); /*expn-16*/
-#endif
expd = norm_l( LepsP[1] );
-#ifdef ISSUE_1867_replace_overflow_libenc
- den = extract_h( L_shl( LepsP[1], expd ) ); /*expd-16*/
-#else
- den = extract_h( L_shl_o( LepsP[1], expd, &Overflow ) ); /*expd-16*/
-#endif
+ den = extract_h( L_shl( LepsP[1], expd ) ); /*expd-16*/
num = div_s( num, den ); /*expn-expd+15*/
num = shr_sat( num, add( sub( expn, expd ), 5 ) ); /*Q10*/
num = sub( num, 1024 ); /*num - 1*/
diff --git a/lib_enc/swb_bwe_enc_fx.c b/lib_enc/swb_bwe_enc_fx.c
index 4af21c5cb1bbc82ea808ee2f243436890273281b..af72e0f4926c25256e65079a8429764c0bf1d520 100644
--- a/lib_enc/swb_bwe_enc_fx.c
+++ b/lib_enc/swb_bwe_enc_fx.c
@@ -302,12 +302,6 @@ void swb_bwe_enc_ivas_fx(
Word16 fb_ener_adjust_fx;
Word16 ener_adjust_quan_fx = 0;
move16();
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
Word16 fb_band_begin;
Word16 q_new_input_hp;
@@ -409,11 +403,8 @@ void swb_bwe_enc_ivas_fx(
*----------------------------------------------------------------------*/
/* tilt returned in Q24 goto to Q11 */
-#ifdef ISSUE_1867_replace_overflow_libenc
tilt_nb_fx = round_fx_sat( L_shl_sat( calc_tilt_bwe_fx( old_input_lp_fx, Q_slb_speech, st_fx->L_frame ), 3 ) );
-#else
- tilt_nb_fx = round_fx_o( L_shl_o( calc_tilt_bwe_fx( old_input_lp_fx, Q_slb_speech, st_fx->L_frame ), 3, &Overflow ), &Overflow );
-#endif
+
/*---------------------------------------------------------------------*
* SWB BWE encoding
* FB BWE encoding
@@ -440,7 +431,7 @@ void swb_bwe_enc_ivas_fx(
/* high-band gain control in case of BWS */
IF( st_fx->bwidth_sw_cnt > 0 )
{
- v_multc_fixed_16( &yorig_32[L_FRAME16k], div_s( st_fx->bwidth_sw_cnt, BWS_TRAN_PERIOD ), &yorig_32[L_FRAME16k], sub( inner_frame, L_FRAME16k ) );
+ v_multc_fx_16( &yorig_32[L_FRAME16k], div_s( st_fx->bwidth_sw_cnt, BWS_TRAN_PERIOD ), &yorig_32[L_FRAME16k], sub( inner_frame, L_FRAME16k ) );
}
/* Convert to 16 Bits (Calc Shift Required to Stay within MAX_Q_NEW_INPUT) */
@@ -547,12 +538,8 @@ void swb_bwe_enc_ivas_fx(
exp1 = norm_l( L_tmp );
L_tmp = L_shl( L_tmp, exp1 );
exp = sub( sub( 31, exp1 ), sub( 30, exp ) );
- L_tmp = Isqrt_lc( L_tmp, &exp ); /*31-exp */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = Isqrt_lc( L_tmp, &exp ); /*31-exp */
fb_ener_adjust_fx = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /*Q15 */
-#else
- fb_ener_adjust_fx = round_fx_o( L_shl_o( L_tmp, exp, &Overflow ), &Overflow ); /*Q15 */
-#endif
}
ELSE
{
@@ -632,16 +619,8 @@ void swb_bwe_enc_fx(
Word16 fb_ener_adjust_fx;
Word16 ener_adjust_quan_fx = 0;
move16();
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
FD_BWE_ENC_HANDLE hBWE_FD = st_fx->hBWE_FD;
-
/*---------------------------------------------------------------------*
* Delay the original input signal to be synchronized with ACELP core synthesis
*---------------------------------------------------------------------*/
@@ -694,15 +673,13 @@ void swb_bwe_enc_fx(
*----------------------------------------------------------------------*/
/* tilt returned in Q24 goto to Q11 */
-#ifdef ISSUE_1867_replace_overflow_libenc
tilt_nb_fx = round_fx_sat( L_shl_sat( calc_tilt_bwe_fx( old_input_lp_fx, Q_slb_speech, st_fx->L_frame ), 3 ) );
-#else
- tilt_nb_fx = round_fx_o( L_shl_o( calc_tilt_bwe_fx( old_input_lp_fx, Q_slb_speech, st_fx->L_frame ), 3, &Overflow ), &Overflow );
-#endif
+
/*---------------------------------------------------------------------*
* SWB BWE encoding
* FB BWE encoding
*---------------------------------------------------------------------*/
+
new_input_fx_exp = 0;
move16();
/* MDCT of the core synthesis signal */
@@ -820,12 +797,8 @@ void swb_bwe_enc_fx(
L_tmp = L_shl( L_tmp, exp1 );
// exp = 31 - exp1 - ( 30 - exp );
exp = add( 31 - 30, sub( exp, exp1 ) );
- L_tmp = Isqrt_lc( L_tmp, &exp ); /*31-exp */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = Isqrt_lc( L_tmp, &exp ); /*31-exp */
fb_ener_adjust_fx = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /*Q15 */
-#else
- fb_ener_adjust_fx = round_fx_o( L_shl_o( L_tmp, exp, &Overflow ), &Overflow ); /*Q15 */
-#endif
}
ELSE
{
@@ -845,6 +818,8 @@ void swb_bwe_enc_fx(
return;
}
+
+
/*==========================================================================*/
/* FUNCTION : static Word16 WB_BWE_fenv_q_fx() */
/*--------------------------------------------------------------------------*/
@@ -1026,13 +1001,6 @@ static Word16 FD_BWE_class_fx( /* o : FD BWE class
Word16 sharplimit;
Word16 numsharp, num, den;
Word16 numharmonic, tmp, expn, expd, scale;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
-
FD_BWE_ENC_HANDLE hBWE_FD = st_fx->hBWE_FD;
mode = NORMAL;
@@ -1067,28 +1035,16 @@ static Word16 FD_BWE_class_fx( /* o : FD BWE class
{
IF( hBWE_FD->prev_global_gain_fx == 0 )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
gain_tmp = round_fx_sat( L_shl_sat( fGain, 30 ) ); /*Q14 */
-#else
- gain_tmp = round_fx_o( L_shl_o( fGain, 30, &Overflow ), &Overflow ); /*Q14 */
-#endif
}
ELSE
{
expn = norm_l( fGain );
-#ifdef ISSUE_1867_replace_overflow_libenc
num = extract_h( L_shl( fGain, expn ) );
-#else
- num = extract_h( L_shl_o( fGain, expn, &Overflow ) );
-#endif
expn = sub( sub( 30, expn ), shl( Q_shb, 1 ) );
expd = norm_l( hBWE_FD->prev_global_gain_fx );
-#ifdef ISSUE_1867_replace_overflow_libenc
den = extract_h( L_shl( hBWE_FD->prev_global_gain_fx, expd ) );
-#else
- den = extract_h( L_shl_o( hBWE_FD->prev_global_gain_fx, expd, &Overflow ) );
-#endif
expd = sub( sub( 30, expd ), shl( st_fx->prev_Q_shb, 1 ) );
scale = shr( sub( den, num ), 15 );
@@ -1186,13 +1142,9 @@ static Word16 FD_BWE_class_fx( /* o : FD BWE class
move16();
}
expd = norm_s( den );
- tmp = div_s( shl( 1, sub( 14, expd ) ), den ); /*Q(29-expd-Q_syn) */
- L_tmp = L_mult( tmp, peak ); /*Q(30-expd) */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ tmp = div_s( shl( 1, sub( 14, expd ) ), den ); /*Q(29-expd-Q_syn) */
+ L_tmp = L_mult( tmp, peak ); /*Q(30-expd) */
sharp = round_fx_sat( L_shl_sat( L_tmp, sub( expd, 4 ) ) ); /*Q10 */
-#else
- sharp = round_fx_o( L_shl_o( L_tmp, sub( expd, 4 ), &Overflow ), &Overflow ); /*Q10 */
-#endif
}
ELSE
{
@@ -1388,12 +1340,7 @@ static void vqWithCand_w_fx(
const Word16 *p_E_ROM_dico;
Word16 dist, temp1;
Word32 L_dist, L_tmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
IF( flag )
{
set32_fx( dist_min, MAX_32, surv ); /* FLT_MAX */
@@ -1409,22 +1356,14 @@ static void vqWithCand_w_fx(
FOR( i = 0; i < E_ROM_dico_size; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
dist = sub_sat( x[0], *p_E_ROM_dico++ ); /*Q8 */
-#else
- dist = sub_o( x[0], *p_E_ROM_dico++, &Overflow ); /*Q8 */
-#endif
- L_dist = L_mult( dist, w[0] ); /*Q22 */
- L_dist = Mult_32_16( L_dist, dist ); /*Q15 */
- L_dist = L_shr( L_dist, 10 ); /*Q5 */
+ L_dist = L_mult( dist, w[0] ); /*Q22 */
+ L_dist = Mult_32_16( L_dist, dist ); /*Q15 */
+ L_dist = L_shr( L_dist, 10 ); /*Q5 */
FOR( j = 1; j < dim; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
temp1 = sub_sat( x[j], *p_E_ROM_dico++ );
-#else
- temp1 = sub_o( x[j], *p_E_ROM_dico++, &Overflow );
-#endif
L_tmp = L_mult( temp1, w[j] ); /*Q22 */
L_tmp = Mult_32_16( L_tmp, temp1 ); /*Q15 */
L_dist = L_add( L_dist, L_shr( L_tmp, 10 ) ); /*Q5 */
@@ -1699,12 +1638,6 @@ static void msvq_interpol_fx(
Word16 quant_select[SWB_FENV], w_env11[SWB_FENV / 2], w_env12[SWB_FENV / 2], tmp;
Word32 L_tmp, distCand[N_CAND], L_dist, L_minDist;
Word16 synth_energy[SWB_FENV];
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* Extract target vector */
FOR( n_band = 0; n_band < DIM11; n_band++ )
@@ -1744,21 +1677,13 @@ static void msvq_interpol_fx(
/* Extract vector for odd position */
FOR( n_band = 0; n_band < DIM11; n_band++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
quant_tmp[n_band] = add_sat( quant_tmp1[n_band], quant_tmp2[n_band] );
-#else
- quant_tmp[n_band] = add_o( quant_tmp1[n_band], quant_tmp2[n_band], &Overflow );
-#endif
move16();
}
FOR( n_band = 0; n_band < DIM12 - 1; n_band++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = add_sat( quant_tmp[n_band], quant_tmp[n_band + 1] ); /*Q8 */
-#else
- tmp = add_o( quant_tmp[n_band], quant_tmp[n_band + 1], &Overflow ); /*Q8 */
-#endif
tmp = shr( tmp, 1 );
quant_tmp2[n_band] = sub( env_temp12[n_band], tmp );
move16(); /*Q8 */
@@ -1781,11 +1706,7 @@ static void msvq_interpol_fx(
FOR( n_band = 0; n_band < DIM12 - 1; n_band++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = add_sat( quant_tmp[n_band], quant_tmp[n_band + 1] );
-#else
- tmp = add_o( quant_tmp[n_band], quant_tmp[n_band + 1], &Overflow );
-#endif
tmp = shr( tmp, 1 );
quant_select[( n_band << 1 ) + 1] = add( tmp, quant_tmp2[n_band] );
move16(); /*Q8 */
@@ -1845,12 +1766,7 @@ static void msvq_interpol_2_fx(
Word16 quant_select[SWB_FENV], w_env11[SWB_FENV / 2], w_env12[SWB_FENV / 2];
Word32 L_tmp, distCand[N_CAND], L_dist, L_minDist;
Word16 synth_energy[SWB_FENV];
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
/* Extract target vector */
FOR( n_band = 0; n_band < DIM11 - 1; n_band++ )
{
@@ -1907,17 +1823,9 @@ static void msvq_interpol_2_fx(
move16();
FOR( n_band = 1; n_band < DIM12 - 1; n_band++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp_q = add_sat( quant_tmp[n_band - 1], quant_tmp[n_band] );
-#else
- tmp_q = add_o( quant_tmp[n_band - 1], quant_tmp[n_band], &Overflow );
-#endif
tmp_q = shr( tmp_q, 1 );
-#ifdef ISSUE_1867_replace_overflow_libenc
quant_tmp2[n_band] = sub_sat( env_temp12[n_band], tmp_q );
-#else
- quant_tmp2[n_band] = sub_o( env_temp12[n_band], tmp_q, &Overflow );
-#endif
move16();
}
@@ -1938,17 +1846,9 @@ static void msvq_interpol_2_fx(
move16(); /*Q8 */
FOR( n_band = 1; n_band < DIM12 - 1; n_band++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp_q = add_sat( quant_tmp[n_band - 1], quant_tmp[n_band] );
-#else
- tmp_q = add_o( quant_tmp[n_band - 1], quant_tmp[n_band], &Overflow );
-#endif
tmp_q = shr( tmp_q, 1 );
-#ifdef ISSUE_1867_replace_overflow_libenc
quant_select[( n_band << 1 ) - 1] = add_sat( quant_tmp2[n_band], tmp_q );
-#else
- quant_select[( n_band << 1 ) - 1] = add_o( quant_tmp2[n_band], tmp_q, &Overflow );
-#endif
}
L_dist = L_deposit_l( 0 );
@@ -2010,12 +1910,6 @@ static void calculate_Tonality_fx(
Word16 org_spec[80], gen_spec[80];
Word32 L_log_gm_org, L_log_gm_gen;
Word16 l_shift;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* to reduce dynamic range of original spectrum */
max = 0;
@@ -2120,11 +2014,7 @@ static void calculate_Tonality_fx(
L_tmp2 = Mpy_32_16_1( L_log_gm_org, inv_len ); /* Q14 */
L_tmp = L_sub( L_tmp1, L_tmp2 );
-#ifdef ISSUE_1867_replace_overflow_libenc
*SFM_org = round_fx_sat( L_shl_sat( L_tmp, 14 ) ); /*Q12 */
-#else
- *SFM_org = round_fx_o( L_shl_o( L_tmp, 14, &Overflow ), &Overflow ); /*Q12 */
-#endif
move16();
*SFM_org = s_max( 0, s_min( *SFM_org, 24547 ) );
move16(); /*0.0001 and 5.993 in Q12 */
@@ -2145,11 +2035,7 @@ static void calculate_Tonality_fx(
L_tmp2 = Mpy_32_16_1( L_log_gm_gen, inv_len ); /* Q14 */
L_tmp = L_sub( L_tmp1, L_tmp2 );
-#ifdef ISSUE_1867_replace_overflow_libenc
*SFM_gen = round_fx_sat( L_shl_sat( L_tmp, 14 ) ); /*Q12 */
-#else
- *SFM_gen = round_fx_o( L_shl_o( L_tmp, 14, &Overflow ), &Overflow ); /*Q12 */
-#endif
move16();
*SFM_gen = s_max( 0, s_min( *SFM_gen, 24547 ) );
move16(); /*0.0001 and 5.993 in Q12 */
@@ -2178,12 +2064,6 @@ static void calculate_Tonality_ivas_fx(
Word16 org_spec[80], gen_spec[80];
Word32 L_log_gm_org, L_log_gm_gen;
Word16 l_shift;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
/* to reduce dynamic range of original spectrum */
max = 0;
@@ -2288,11 +2168,7 @@ static void calculate_Tonality_ivas_fx(
L_tmp2 = Mpy_32_16_1( L_log_gm_org, inv_len ); /* Q14 */
L_tmp = L_sub( L_tmp1, L_tmp2 );
-#ifdef ISSUE_1867_replace_overflow_libenc
*SFM_org = round_fx_sat( L_shl_sat( L_tmp, 14 ) ); /*Q12 */
-#else
- *SFM_org = round_fx_o( L_shl_o( L_tmp, 14, &Overflow ), &Overflow ); /*Q12 */
-#endif
move16();
*SFM_org = s_max( 0, s_min( *SFM_org, 24547 ) );
move16(); /*0.0001 and 5.993 in Q12 */
@@ -2313,11 +2189,7 @@ static void calculate_Tonality_ivas_fx(
L_tmp2 = Mpy_32_16_1( L_log_gm_gen, inv_len ); /* Q14 */
L_tmp = L_sub( L_tmp1, L_tmp2 );
-#ifdef ISSUE_1867_replace_overflow_libenc
*SFM_gen = round_fx_sat( L_shl_sat( L_tmp, 14 ) ); /*Q12 */
-#else
- *SFM_gen = round_fx_o( L_shl_o( L_tmp, 14, &Overflow ), &Overflow ); /*Q12 */
-#endif
move16();
*SFM_gen = s_max( 0, s_min( *SFM_gen, 24547 ) );
move16(); /*0.0001 and 5.993 in Q12 */
@@ -2705,13 +2577,6 @@ static Word16 SWB_BWE_encoding_fx(
Word16 SWB_tenv_tmp_fx[SWB_TENV];
Word16 max_fx;
Word16 energy_factor_fx[SWB_FENV], w_env_fx[SWB_FENV];
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
-
FD_BWE_ENC_HANDLE hBWE_FD = st_fx->hBWE_FD;
BSTR_ENC_HANDLE hBstr = st_fx->hBstr;
@@ -2752,11 +2617,8 @@ static Word16 SWB_BWE_encoding_fx(
}
/* tilt returned in Q24 go to Q11 */
-#ifdef ISSUE_1867_replace_overflow_libenc
tilt_fx = round_fx_sat( L_shl_sat( calc_tilt_bwe_fx( insig_fx, 0, L_FRAME32k ), 3 ) );
-#else
- tilt_fx = round_fx_o( L_shl_o( calc_tilt_bwe_fx( insig_fx, 0, L_FRAME32k ), 3, &Overflow ), &Overflow );
-#endif
+
test();
test();
IF( EQ_16( IsTransient, 1 ) && ( GT_16( tilt_fx, 16384 ) || GT_16( st_fx->clas, 1 ) ) )
@@ -2860,11 +2722,7 @@ static Word16 SWB_BWE_encoding_fx(
L_tmp = L_deposit_h( tmp );
L_tmp = Isqrt_lc( L_tmp, &expn ); /*31-expn */
-#ifdef ISSUE_1867_replace_overflow_libenc
Rat_tenv_fx = round_fx_sat( L_shl_sat( L_tmp, sub( expn, 1 ) ) ); /*Q14 */
-#else
- Rat_tenv_fx = round_fx_o( L_shl_o( L_tmp, sub( expn, 1 ), &Overflow ), &Overflow ); /*Q14 */
-#endif
}
ELSE
{
@@ -2876,11 +2734,7 @@ static Word16 SWB_BWE_encoding_fx(
{
L_tmp = L_mult( Rat_tenv_fx, 19661 ); /*Q29 */
-#ifdef ISSUE_1867_replace_overflow_libenc
Rat_tenv_fx = round_fx_sat( L_shl_sat( L_tmp, 2 ) ); /*Q15 */
-#else
- Rat_tenv_fx = round_fx_o( L_shl_o( L_tmp, 2, &Overflow ), &Overflow ); /*Q15 */
-#endif
}
ELSE IF( GT_16( Rat_tenv_fx, 16384 ) )
{
@@ -3164,12 +3018,6 @@ static Word16 SWB_BWE_encoding_ivas_fx(
Word16 SWB_tenv_tmp_fx[SWB_TENV];
Word16 max_fx;
Word16 energy_factor_fx[SWB_FENV], w_env_fx[SWB_FENV];
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
Word16 inner_frame;
Word16 q_shift;
Word16 yos_fx_16[L_FRAME_MAX];
@@ -3229,11 +3077,7 @@ static Word16 SWB_BWE_encoding_ivas_fx(
}
/* tilt returned in Q24 go to Q11 */
-#ifdef ISSUE_1867_replace_overflow_libenc
tilt_fx = round_fx_sat( L_shl_sat( calc_tilt_bwe_fx( insig_fx, 0, L_FRAME32k ), 3 ) );
-#else
- tilt_fx = round_fx_o( L_shl_o( calc_tilt_bwe_fx( insig_fx, 0, L_FRAME32k ), 3, &Overflow ), &Overflow );
-#endif
test();
test();
IF( EQ_16( IsTransient, 1 ) && ( GT_16( tilt_fx, 16384 ) || GT_16( st_fx->clas, 1 ) ) )
@@ -3338,11 +3182,7 @@ static Word16 SWB_BWE_encoding_ivas_fx(
expn = sub( sub( 30, expn ), sub( shl( Q_insig_lp, 1 ), 7 ) );
expd = norm_l( WB_tenv_syn_fx );
-#ifdef ISSUE_1867_replace_overflow_libenc
den = round_fx_sat( L_shl( WB_tenv_syn_fx, expd ) );
-#else
- den = round_fx_o( L_shl( WB_tenv_syn_fx, expd ), &Overflow );
-#endif
expd = sub( sub( 30, expd ), sub( shl( Q_insig_lp, 1 ), 7 ) );
scale = shr( sub( den, num ), 15 );
@@ -3355,11 +3195,7 @@ static Word16 SWB_BWE_encoding_ivas_fx(
L_tmp = L_deposit_h( tmp );
L_tmp = Isqrt_lc( L_tmp, &expn ); /*31-expn */
-#ifdef ISSUE_1867_replace_overflow_libenc
Rat_tenv_fx = round_fx_sat( L_shl_sat( L_tmp, sub( expn, 1 ) ) ); /*Q14 */
-#else
- Rat_tenv_fx = round_fx_o( L_shl_o( L_tmp, sub( expn, 1 ), &Overflow ), &Overflow ); /*Q14 */
-#endif
}
ELSE
{
@@ -3369,12 +3205,8 @@ static Word16 SWB_BWE_encoding_ivas_fx(
IF( LT_16( Rat_tenv_fx, 8192 ) )
{
- L_tmp = L_mult( Rat_tenv_fx, 19661 ); /*Q29 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = L_mult( Rat_tenv_fx, 19661 ); /*Q29 */
Rat_tenv_fx = round_fx_sat( L_shl_sat( L_tmp, 2 ) ); /*Q15 */
-#else
- Rat_tenv_fx = round_fx_o( L_shl_o( L_tmp, 2, &Overflow ), &Overflow ); /*Q15 */
-#endif
}
ELSE IF( GT_16( Rat_tenv_fx, 16384 ) )
{
diff --git a/lib_enc/swb_bwe_enc_hr_fx.c b/lib_enc/swb_bwe_enc_hr_fx.c
index 872d7d403e920cf3119448fb837c86022b853e60..5fa034fbfa236c4e27737fd1a34a7d4302d800d5 100644
--- a/lib_enc/swb_bwe_enc_hr_fx.c
+++ b/lib_enc/swb_bwe_enc_hr_fx.c
@@ -117,12 +117,6 @@ void swb_bwe_enc_hr_fx(
Word32 L_t_audio_tmp_fx[N_BANDS_BWE_HR * WIDTH_NONTRANS_FREQ_COEF];
#else
Word32 L_t_audio_tmp_fx[L_FRAME48k];
-#endif
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
#endif
FD_BWE_ENC_HANDLE hBWE_FD = st_fx->hBWE_FD;
BSTR_ENC_HANDLE hBstr = st_fx->hBstr;
@@ -771,11 +765,7 @@ void swb_bwe_enc_hr_fx(
{
L_tmp = L_mult( temp, t_audio_fx[i] );
L_tmp = L_shr_sat( L_tmp, temp2 );
-#ifdef ISSUE_1867_replace_overflow_libenc
t_audio_fx[i] = round_fx_sat( L_tmp );
-#else
- t_audio_fx[i] = round_fx_o( L_tmp, &Overflow );
-#endif
move16();
}
diff --git a/lib_enc/swb_bwe_enc_lr_fx.c b/lib_enc/swb_bwe_enc_lr_fx.c
index ad178ab55171e24fc809772c6eb82fee24d20062..a8b6f0a6df0ed02e1f59f63d68d7e6902c727585 100644
--- a/lib_enc/swb_bwe_enc_lr_fx.c
+++ b/lib_enc/swb_bwe_enc_lr_fx.c
@@ -698,12 +698,7 @@ static void gethar_noisegn_fx(
Word16 temp_lo, temp_hi;
Word16 Qg;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
+
/*Generate HF noise*/
genhf_noise_fx( noise_flr_fx, Qss, L_xSynth_har, QsL, sspectra_fx, bands, har_bands, har_freq_est2, pos_max_hfe2, pul_res_fx, pk_sf_fx, fLenLow,
fLenHigh, sbWidth, lagIndices, subband_offsets, subband_search_offset );
@@ -785,13 +780,8 @@ static void gethar_noisegn_fx(
L_temp = L_Comp( exp, frac );
L_temp = Mpy_32_16_1( L_temp, 19728 ); /* log(2)/log(10)=.30102999566398119521 = 19728.3(Q16) Q(0+16+1)=Q17 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- L_temp = L_shl_sat( L_temp, 13 ); /* Q17+13=30 30-16=14 */
+ L_temp = L_shl_sat( L_temp, 13 ); /* Q17+13=30 30-16=14 */
g_fx = round_fx_sat( L_temp );
-#else
- L_temp = L_shl_o( L_temp, 13, &Overflow ); /* Q17+13=30 30-16=14 */
- g_fx = round_fx_o( L_temp, &Overflow );
-#endif
}
gqlevs_fx = 4;
diff --git a/lib_enc/swb_pre_proc_fx.c b/lib_enc/swb_pre_proc_fx.c
index f857cbec0b2daa6e0c1894b271f2b9a3c70134be..6a108ce6f24092fd1ad90d79101d5d3c37992e77 100644
--- a/lib_enc/swb_pre_proc_fx.c
+++ b/lib_enc/swb_pre_proc_fx.c
@@ -1104,10 +1104,8 @@ void swb_pre_proc_ivas_fx(
IF( ( ( st->core == ACELP_CORE ) && NE_16( st->extl, SWB_BWE_HIGHRATE ) && NE_16( st->extl, FB_BWE_HIGHRATE ) ) ||
( ( EQ_32( st->total_brate, ACELP_9k60 ) || st->rf_mode ) && EQ_16( st->bwidth, SWB ) && ( st->element_mode == EVS_MONO ) ) )
{
-#ifdef FIX_2021_BANDWIDTH_EXTENSION_PROBLEM
Word64 CldfbHB64_fx = 0;
move64();
-#endif
Word32 CldfbHB_fx = 0; // fixed counterpart
Word16 CldfbHB_fx_e = 0; // fixed counterpart
#ifdef BASOP_NOGLOB_DECLARE_LOCAL
@@ -1218,28 +1216,15 @@ void swb_pre_proc_ivas_fx(
{
FOR( ts = 0; ts < CLDFB_NO_COL_MAX; ts++ )
{
-#ifdef FIX_2021_BANDWIDTH_EXTENSION_PROBLEM
CldfbHB64_fx = W_mac_32_32( CldfbHB64_fx, realBufferFlipped[ts][nB], realBufferFlipped[ts][nB] );
CldfbHB64_fx = W_mac_32_32( CldfbHB64_fx, imagBufferFlipped[ts][nB], imagBufferFlipped[ts][nB] );
-#else
- realQ_neg1 = extract_l( L_shr( realBufferFlipped[ts][nB], 16 ) );
- imagQ_neg1 = extract_l( L_shr( imagBufferFlipped[ts][nB], 16 ) ); /* Q(-1), headroom needed */
-
- CldfbHB_fx = L_mac0_o( CldfbHB_fx, realQ_neg1, realQ_neg1, &Overflow );
- CldfbHB_fx = L_mac0_o( CldfbHB_fx, imagQ_neg1, imagQ_neg1, &Overflow ); /* Q(-2) */
-#endif
}
}
-#ifdef FIX_2021_BANDWIDTH_EXTENSION_PROBLEM
+
Word16 scf = W_norm( CldfbHB64_fx );
CldfbHB64_fx = W_shl( CldfbHB64_fx, scf );
CldfbHB_fx = W_extract_h( CldfbHB64_fx );
CldfbHB_fx_e = sub( Q31, add( shl( q_reImBuffer, 1 ), sub( scf, Q31 ) ) );
-#else
- CldfbHB_fx_e = sub( Q31, shl( sub( q_reImBuffer, Q16 ), 1 ) );
- exp = norm_l( CldfbHB_fx );
- CldfbHB_fx = L_shl( CldfbHB_fx, exp ); /* CldfbHB_ener = CldfbHB_fl*2^(exp) */
-#endif
Cldfbtemp1 = Log2_norm_lc( CldfbHB_fx ); /* Log2_norm_lc(t) = 2^15*(log2(t/2^30)) */
Cldfbtemp1 = sub( shr( Cldfbtemp1, 6 ), shl( add( sub( Q31 - Q30, CldfbHB_fx_e ), exp ), 9 ) );
CldfbHB_fx = L_mult( Cldfbtemp1, 9864 ); /* Q9 + Q15 + Q1 = Q25 */
diff --git a/lib_enc/swb_tbe_enc_fx.c b/lib_enc/swb_tbe_enc_fx.c
index 0d9a3d0cb1cc1b21c135f9d323fdc5502e98f026..0dc1ad698662af60efa13bf37c3ddf24066b0ef1 100644
--- a/lib_enc/swb_tbe_enc_fx.c
+++ b/lib_enc/swb_tbe_enc_fx.c
@@ -52,13 +52,17 @@ static Word32 pow_off_pk_fx( Word16 a[], Word16 len, Word16 step );
static Word32 pow_off_pk_corrected_fx( Word16 a[], Word16 len, Word16 step );
static void find_max_mem_enc( Encoder_State *st_fx, Word16 *n_mem, Word16 *n_mem2 );
+
static void rescale_genSHB_mem_enc( Encoder_State *st_fx, Word16 sf );
+
static void find_max_mem_wb_enc( Encoder_State *st_fx, Word16 *n_mem );
+
static void rescale_genWB_mem_enc( Encoder_State *st_fx, Word16 sf );
static void Quant_lower_LSF_fx( const Word16 lsf[], Word16 lsf_q[], Word16 lsf_idx[] );
static Word16 Quant_mirror_point_fx( const Word16 lsf[], const Word16 lsf_q[], Word16 *m );
+
static Word16 Find_LSF_grid_fx( const Word16 lsf[], Word16 lsf_q[], const Word16 m );
static void Quant_BWE_LSF_fx( Encoder_State *st_fx, const Word16 lsp_shb[], Word16 Q_lsfs[] );
@@ -83,6 +87,7 @@ static void gainFrSmooth_En_ivas_fx( Encoder_State *st_fx, Word16 *shb_frame_fx
*
* Find norm and max in TBE memories and past buffers
*-------------------------------------------------------------------*/
+
void find_max_mem_enc(
Encoder_State *st_fx,
Word16 *n_mem,
@@ -188,6 +193,8 @@ void find_max_mem_enc(
tempQ15 = sub( s_min( *n_mem, n_mem_32 ), 1 );
*n_mem = s_max( tempQ15, 0 );
move16();
+
+ return;
}
@@ -196,7 +203,10 @@ void find_max_mem_enc(
*
* Rescale genSHB memories
*-------------------------------------------------------------------*/
-void rescale_genSHB_mem_enc( Encoder_State *st_fx, Word16 sf )
+
+void rescale_genSHB_mem_enc(
+ Encoder_State *st_fx,
+ Word16 sf )
{
Word16 i;
TD_BWE_ENC_HANDLE hBWE_TD = st_fx->hBWE_TD;
@@ -697,12 +707,6 @@ void wb_tbe_enc_fx(
Word16 avg_voice_fac;
TD_BWE_ENC_HANDLE hBWE_TD = st_fx->hBWE_TD;
RF_ENC_HANDLE hRF = st_fx->hRF;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
/*Word16 att = 32767;*/
@@ -1168,13 +1172,8 @@ void wb_tbe_enc_fx(
exp = norm_s( voicingBufAvg_fx );
tmp = div_s( shl( 1, sub( 14, exp ) ), voicingBufAvg_fx ); /* (14-exp) */
L_tmp = L_mult( pitBufAvg_fx, tmp ); /* (21-exp) */
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_shl_sat( L_tmp, add( exp, 10 ) );
tmp = round_fx_sat( L_tmp ); /* Q15 */
-#else
- L_tmp = L_shl_o( L_tmp, add( exp, 10 ), &Overflow );
- tmp = round_fx_o( L_tmp, &Overflow ); /* Q15 */
-#endif
}
tmp = s_max( s_min( tmp, 32767 ), 22938 ); /* Q15 */
@@ -1304,12 +1303,6 @@ void wb_tbe_enc_ivas_fx(
Word16 dummy = 0;
Word16 avg_voice_fac;
TD_BWE_ENC_HANDLE hBWE_TD = st_fx->hBWE_TD;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
move16();
/*Word16 att = 32767;*/
@@ -1340,11 +1333,7 @@ void wb_tbe_enc_ivas_fx(
FOR( j = 0; j < L_SUBFR16k; j = j + 4 )
{
L_tmp = L_mult( hb_old_speech[i], ola_win_shb_switch_fold_fx[j] );
-#ifdef ISSUE_1867_replace_overflow_libenc
hb_old_speech[i] = mac_r_sat( L_tmp, hb_speech[k], ola_win_shb_switch_fold_fx[L_SUBFR16k - 4 - j] );
-#else
- hb_old_speech[i] = mac_ro( L_tmp, hb_speech[k], ola_win_shb_switch_fold_fx[L_SUBFR16k - 4 - j], &Overflow );
-#endif
move16();
i--;
k++;
@@ -1832,13 +1821,8 @@ void wb_tbe_enc_ivas_fx(
exp = norm_s( voicingBufAvg_fx );
tmp = div_s( shl( 1, sub( 14, exp ) ), voicingBufAvg_fx ); /* (14-exp) */
L_tmp = L_mult( pitBufAvg_fx, tmp ); /* (21-exp) */
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_shl_sat( L_tmp, add( exp, 10 ) );
tmp = round_fx_sat( L_tmp ); /* Q15 */
-#else
- L_tmp = L_shl_o( L_tmp, add( exp, 10 ), &Overflow );
- tmp = round_fx_o( L_tmp, &Overflow ); /* Q15 */
-#endif
}
tmp = s_max( s_min( tmp, 32767 ), 22938 ); /* Q15 */
@@ -2019,12 +2003,6 @@ void swb_tbe_enc_fx(
Word16 tilt_para;
Word16 Q_bwe_exc_fb;
Word16 n_subfr_saturation;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
TD_BWE_ENC_HANDLE hBWE_TD = st_fx->hBWE_TD;
RF_ENC_HANDLE hRF = st_fx->hRF;
@@ -2491,13 +2469,8 @@ void swb_tbe_enc_fx(
curr_pow_fx = L_shl( 21475l /*0.00001f Q31*/, tmp ); /* 2*(Q_bwe_exc) */
FOR( i = 0; i < L_SHB_LAHEAD + 10; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
prev_pow_fx = L_mac0_sat( prev_pow_fx, shaped_shb_excitation_fx[i], shaped_shb_excitation_fx[i] ); /* 2*Q_bwe_exc */
curr_pow_fx = L_mac0_sat( curr_pow_fx, shaped_shb_excitation_fx[i + L_SHB_LAHEAD + 10], shaped_shb_excitation_fx[i + L_SHB_LAHEAD + 10] ); /* 2*Q_bwe_exc */
-#else
- prev_pow_fx = L_mac0_o( prev_pow_fx, shaped_shb_excitation_fx[i], shaped_shb_excitation_fx[i], &Overflow ); /* 2*Q_bwe_exc */
- curr_pow_fx = L_mac0_o( curr_pow_fx, shaped_shb_excitation_fx[i + L_SHB_LAHEAD + 10], shaped_shb_excitation_fx[i + L_SHB_LAHEAD + 10], &Overflow ); /* 2*Q_bwe_exc */
-#endif
}
if ( GT_16( voice_factors_fx[0], 24576 /*0.75f Q15*/ ) )
@@ -2531,20 +2504,12 @@ void swb_tbe_enc_fx(
{
FOR( ; i < L_SHB_LAHEAD + 10; i++ )
{
- tmp = i_mult_sat( sub( i, 19 ), 3277 /*0.1f Q15*/ ); /* Q15 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ tmp = i_mult_sat( sub( i, 19 ), 3277 /*0.1f Q15*/ ); /* Q15 */
L_tmp1 = Mult_32_16( L_shl_sat( 1, sub( 31, exp ) ), tmp ); /* Q31-exp */
-#else
- L_tmp1 = Mult_32_16( L_shl_o( 1, sub( 31, exp ), &Overflow ), tmp ); /* Q31-exp */
-#endif
tmp = sub( 32767 /*1.0f Q15*/, tmp );
Lscale = L_add( Mult_32_16( Lscale, tmp ), L_tmp1 );
- L_tmp = Mult_32_16( Lscale, shaped_shb_excitation_fx[i] ); /* Q_bwe_exc + (31-exp) - 15 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = Mult_32_16( Lscale, shaped_shb_excitation_fx[i] ); /* Q_bwe_exc + (31-exp) - 15 */
shaped_shb_excitation_fx[i] = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /* Q_bwe_exc */
-#else
- shaped_shb_excitation_fx[i] = round_fx_o( L_shl_o( L_tmp, exp, &Overflow ), &Overflow ); /* Q_bwe_exc */
-#endif
move16();
}
}
@@ -2553,19 +2518,11 @@ void swb_tbe_enc_fx(
FOR( ; i < L_SHB_LAHEAD + 10; i++ )
{
tmp = round_fx_sat( L_shl( L_mult( 0x6666 /* 0.1 in Q12 */, shl( sub( i, 19 ), 11 ) ), 1 ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp1 = Mult_32_16( L_shl_sat( 1, sub( 31, exp ) ), tmp ); /* Q31-exp */
-#else
- L_tmp1 = Mult_32_16( L_shl_o( 1, sub( 31, exp ), &Overflow ), tmp ); /* Q31-exp */
-#endif
tmp = sub( 32767 /*1.0f Q15*/, tmp );
Lscale = L_add( Mult_32_16( Lscale, tmp ), L_tmp1 );
- L_tmp = Mult_32_16( Lscale, shaped_shb_excitation_fx[i] ); /* Q_bwe_exc + (31-exp) - 15 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = Mult_32_16( Lscale, shaped_shb_excitation_fx[i] ); /* Q_bwe_exc + (31-exp) - 15 */
shaped_shb_excitation_fx[i] = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /* Q_bwe_exc */
-#else
- shaped_shb_excitation_fx[i] = round_fx_o( L_shl_o( L_tmp, exp, &Overflow ), &Overflow ); /* Q_bwe_exc */
-#endif
move16();
}
}
@@ -2794,13 +2751,9 @@ void swb_tbe_enc_fx(
tmp = div_s( shl( 1, sub( 14, exp ) ), voicingBufAvg_fx ); /* (14-exp) */
/* sd_uq_q*pitBufAvg */
- L_tmp = Mult_32_16( L_tmp, pitBufAvg_fx ); /* Q13 * Q10 + 1 -16 => Q8 */
- L_tmp = Mult_32_16( L_tmp, tmp ); /* Q8 + (14 - exp) - 15 => Q7 - exp */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = Mult_32_16( L_tmp, pitBufAvg_fx ); /* Q13 * Q10 + 1 -16 => Q8 */
+ L_tmp = Mult_32_16( L_tmp, tmp ); /* Q8 + (14 - exp) - 15 => Q7 - exp */
tmp = round_fx_sat( L_shl_sat( L_tmp, 31 - ( 7 - exp ) ) ); /* Q15 */
-#else
- tmp = round_fx_o( L_shl_o( L_tmp, 31 - ( 7 - exp ), &Overflow ), &Overflow ); /* Q15 */
-#endif
}
tmp = s_min( tmp, 32767 /*1.0f Q15*/ );
@@ -2988,12 +2941,6 @@ void swb_tbe_enc_ivas_fx(
Word16 tilt_para_fx;
Word16 Q_bwe_exc_fb;
Word16 n_subfr_saturation;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
Env_error_fx = 0;
move16();
@@ -3113,7 +3060,6 @@ void swb_tbe_enc_ivas_fx(
enerG = Enr_1_Az_fx( lpc_shb1, 2 * L_SUBFR ); /* Q3 */
/* if the LP gain is greater than a threshold, avoid saturation */
-#ifdef FIX_ISSUE_2004_LPC_SHB_SAT
Word16 flag_sat = 0;
Word16 lpc_shb_fx0_req_shift = sub( norm_s( lpc_shb_fx[0] ), 2 );
IF( GT_16( lpc_shb_fx0_req_shift, 0 ) )
@@ -3129,9 +3075,6 @@ void swb_tbe_enc_ivas_fx(
}
IF( GT_16( enerG, 256 /* 32.0 in Q3 */ ) || flag_sat )
-#else
- IF( GT_16( enerG, 256 /*32 Q3*/ ) )
-#endif
{
set16_fx( lpc_shb_fx, 0, LPC_SHB_ORDER + 1 );
E_LPC_lev_dur( R_h, R_l, lpc_shb_fx, LepsP, 2, NULL ); /* LPC in Q14 */
@@ -3869,12 +3812,8 @@ void swb_tbe_enc_ivas_fx(
FOR( i = 0; i < L_SHB_LAHEAD; i++ )
{
- L_tmp = Mult_32_16( Lscale, shaped_shb_excitation_fx[i] ); /* Q(16-exp+Q_bwe_exc) */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = Mult_32_16( Lscale, shaped_shb_excitation_fx[i] ); /* Q(16-exp+Q_bwe_exc) */
shaped_shb_excitation_fx[i] = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /* Q_bwe_exc */
-#else
- shaped_shb_excitation_fx[i] = round_fx_o( L_shl_o( L_tmp, exp, &Overflow ), &Overflow ); /* Q_bwe_exc */
-#endif
move16();
}
IF( exp < 0 )
@@ -3891,20 +3830,12 @@ void swb_tbe_enc_ivas_fx(
{
FOR( ; i < L_SHB_LAHEAD + 10; i++ )
{
- tmp = i_mult_sat( sub( i, 19 ), 3277 /*0.1f Q15*/ ); /* Q15 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ tmp = i_mult_sat( sub( i, 19 ), 3277 /*0.1f Q15*/ ); /* Q15 */
L_tmp1 = Mult_32_16( L_shl_sat( 1, sub( 31, exp ) ), tmp ); /* Q31-exp */
-#else
- L_tmp1 = Mult_32_16( L_shl_o( 1, sub( 31, exp ), &Overflow ), tmp ); /* Q31-exp */
-#endif
tmp = sub( 32767 /*1.0f Q15*/, tmp );
L_tmp = L_add( Mult_32_16( Lscale, tmp ), L_tmp1 );
- L_tmp = Mult_32_16( L_tmp, shaped_shb_excitation_fx[i] ); /* Q_bwe_exc + (31-exp) - 15 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = Mult_32_16( L_tmp, shaped_shb_excitation_fx[i] ); /* Q_bwe_exc + (31-exp) - 15 */
shaped_shb_excitation_fx[i] = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /* Q_bwe_exc */
-#else
- shaped_shb_excitation_fx[i] = round_fx_o( L_shl_o( L_tmp, exp, &Overflow ), &Overflow ); /* Q_bwe_exc */
-#endif
move16();
}
}
@@ -3913,19 +3844,11 @@ void swb_tbe_enc_ivas_fx(
FOR( ; i < L_SHB_LAHEAD + 10; i++ )
{
tmp = round_fx_sat( L_shl( L_mult( 0x6666 /* 0.1 in Q12 */, shl( sub( i, 19 ), 11 ) ), 1 ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp1 = Mult_32_16( L_shl_sat( 1, sub( 31, exp ) ), tmp ); /* Q31-exp */
-#else
- L_tmp1 = Mult_32_16( L_shl_o( 1, sub( 31, exp ), &Overflow ), tmp ); /* Q31-exp */
-#endif
tmp = sub( 32767 /*1.0f Q15*/, tmp );
L_tmp = L_add( Mult_32_16( Lscale, tmp ), L_tmp1 );
- L_tmp = Mult_32_16( L_tmp, shaped_shb_excitation_fx[i] ); /* Q_bwe_exc + (31-exp) - 15 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = Mult_32_16( L_tmp, shaped_shb_excitation_fx[i] ); /* Q_bwe_exc + (31-exp) - 15 */
shaped_shb_excitation_fx[i] = round_fx_sat( L_shl_sat( L_tmp, exp ) ); /* Q_bwe_exc */
-#else
- shaped_shb_excitation_fx[i] = round_fx_o( L_shl_o( L_tmp, exp, &Overflow ), &Overflow ); /* Q_bwe_exc */
-#endif
move16();
}
}
@@ -4432,13 +4355,9 @@ void swb_tbe_enc_ivas_fx(
tmp = div_s( shl( 1, sub( 14, exp ) ), voicingBufAvg_fx ); /* (14-exp) */
/* sd_uq_q*pitBufAvg */
- L_tmp = Mult_32_16( L_tmp, pitBufAvg_fx ); /* Q13 * Q10 + 1 -16 => Q8 */
- L_tmp = Mult_32_16( L_tmp, tmp ); /* Q8 + (14 - exp) - 15 => Q7 - exp */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = Mult_32_16( L_tmp, pitBufAvg_fx ); /* Q13 * Q10 + 1 -16 => Q8 */
+ L_tmp = Mult_32_16( L_tmp, tmp ); /* Q8 + (14 - exp) - 15 => Q7 - exp */
tmp = round_fx_sat( L_shl_sat( L_tmp, 31 - ( 7 - exp ) ) ); /* Q15 */
-#else
- tmp = round_fx_o( L_shl_o( L_tmp, 31 - ( 7 - exp ), &Overflow ), &Overflow ); /* Q15 */
-#endif
}
tmp = s_min( tmp, 32767 /*1.0f Q15*/ );
tmp = s_max( tmp, 19661 /*0.6f Q15*/ );
@@ -4593,12 +4512,6 @@ static void EstimateSHBFrameGain_fx(
Word16 exp_out;
Word16 tmp;
Word16 scaling = 0;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
move16();
/* initilaization */
@@ -4708,47 +4621,26 @@ static void EstimateSHBFrameGain_fx(
FOR( i = 0; i < l_shb_lahead; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
sig = mult_r_sat( oriSHB[i], win_shb[i] ); /* Q_oriSHB */
oriNrg = L_mac0_sat( oriNrg, sig, sig ); /* 2*Q_orisHB*/
sig = round_fx_sat( Mult_32_16( mod_syn[i], win_shb[i] ) ); /*Q_synSHB */
synNrg = L_mac0_sat( synNrg, sig, sig ); /* 2*Q_synSHB */
-#else
- sig = mult_ro( oriSHB[i], win_shb[i], &Overflow ); /* Q_oriSHB */
- oriNrg = L_mac0_o( oriNrg, sig, sig, &Overflow ); /* 2*Q_orisHB*/
- sig = round_fx_o( Mult_32_16( mod_syn[i], win_shb[i] ), &Overflow ); /*Q_synSHB */
- synNrg = L_mac0_o( synNrg, sig, sig, &Overflow ); /* 2*Q_synSHB */
-#endif
}
FOR( ; i < l_frame; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
oriNrg = L_mac0_sat( oriNrg, oriSHB[i], oriSHB[i] ); /* 2*Q_oriSHB */
sig = round_fx_sat( mod_syn[i] ); /* Q_oriSHB */
synNrg = L_mac0_sat( synNrg, sig, sig ); /* 2*Q_oriSHB */
-#else
- oriNrg = L_mac0_o( oriNrg, oriSHB[i], oriSHB[i], &Overflow ); /* 2*Q_oriSHB */
- sig = round_fx_o( mod_syn[i], &Overflow ); /* Q_oriSHB */
- synNrg = L_mac0_o( synNrg, sig, sig, &Overflow ); /* 2*Q_oriSHB */
-#endif
}
tmp = add( l_frame, l_shb_lahead );
FOR( ; i < tmp; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
sig = mult_r_sat( oriSHB[i], win_shb[l_frame + l_shb_lahead - 1 - i] ); /* Q_oriSHB */
oriNrg = L_mac0_sat( oriNrg, sig, sig ); /* 2*Q_oriSHB */
sig = round_fx_sat( Mult_32_16( mod_syn[i], win_shb[l_frame + l_shb_lahead - 1 - i] ) ); /* Q_oriSHB */
synNrg = L_mac0_sat( synNrg, sig, sig ); /* 2*Q_oriSHB */
-#else
- sig = mult_ro( oriSHB[i], win_shb[l_frame + l_shb_lahead - 1 - i], &Overflow ); /* Q_oriSHB */
- oriNrg = L_mac0_o( oriNrg, sig, sig, &Overflow ); /* 2*Q_oriSHB */
-
- sig = round_fx_o( Mult_32_16( mod_syn[i], win_shb[l_frame + l_shb_lahead - 1 - i] ), &Overflow ); /* Q_oriSHB */
- synNrg = L_mac0_o( synNrg, sig, sig, &Overflow ); /* 2*Q_oriSHB */
-#endif
}
IF( EQ_32( oriNrg, MAX_32 ) )
{
@@ -4757,33 +4649,18 @@ static void EstimateSHBFrameGain_fx(
move32();
FOR( i = 0; i < l_shb_lahead; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
sig = mult_r( shl_sat( oriSHB[i], scaling ), win_shb[i] );
oriNrg = L_mac0_sat( oriNrg, sig, sig ); /* 2*Q_oriSHB + 2*scaling */
-#else
- sig = mult_r( shl_sat( oriSHB[i], scaling ), win_shb[i] );
- oriNrg = L_mac0_o( oriNrg, sig, sig, &Overflow ); /* 2*Q_oriSHB + 2*scaling */
-#endif
}
FOR( ; i < l_frame; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
sig = shl_sat( oriSHB[i], scaling );
oriNrg = L_mac0_sat( oriNrg, sig, sig ); /* 2*Q_oriSHB + 2*scaling */
-#else
- sig = shl_sat( oriSHB[i], scaling );
- oriNrg = L_mac0_o( oriNrg, sig, sig, &Overflow ); /* 2*Q_oriSHB + 2*scaling */
-#endif
}
FOR( ; i < tmp; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
sig = mult_r( shl_sat( oriSHB[i], scaling ), win_shb[l_frame + l_shb_lahead - 1 - i] );
oriNrg = L_mac0_sat( oriNrg, sig, sig ); /* 2*Q_oriSHB + 2*scaling */
-#else
- sig = mult_r( shl_sat( oriSHB[i], scaling ), win_shb[l_frame + l_shb_lahead - 1 - i] );
- oriNrg = L_mac0_o( oriNrg, sig, sig, &Overflow ); /* 2*Q_oriSHB + 2*scaling */
-#endif
}
}
L_tmp = root_a_over_b_fx( oriNrg, 2 * Q_oriSHB, synNrg, 2 * Q_synSHB, &exp_out );
@@ -4819,12 +4696,6 @@ static void EstimateSHBFrameGain_ivas_fx(
Word16 exp_out;
Word16 tmp;
Word16 scaling = 0;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
move16();
/* initilaization */
@@ -4934,47 +4805,26 @@ static void EstimateSHBFrameGain_ivas_fx(
FOR( i = 0; i < l_shb_lahead; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
sig = mult_r_sat( oriSHB[i], win_shb[i] ); /* Q_oriSHB */
oriNrg = L_mac0_sat( oriNrg, sig, sig ); /* 2*Q_orisHB*/
sig = round_fx_sat( Mult_32_16( mod_syn[i], win_shb[i] ) ); /*Q_synSHB */
synNrg = L_mac0_sat( synNrg, sig, sig ); /* 2*Q_synSHB - 2*/
-#else
- sig = mult_ro( oriSHB[i], win_shb[i], &Overflow ); /* Q_oriSHB */
- oriNrg = L_mac0_o( oriNrg, sig, sig, &Overflow ); /* 2*Q_orisHB*/
- sig = round_fx_o( Mult_32_16( mod_syn[i], win_shb[i] ), &Overflow ); /*Q_synSHB */
- synNrg = L_mac0_o( synNrg, sig, sig, &Overflow ); /* 2*Q_synSHB - 2*/
-#endif
}
FOR( ; i < l_frame; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
oriNrg = L_mac0_sat( oriNrg, oriSHB[i], oriSHB[i] ); /* 2*Q_oriSHB */
sig = round_fx_sat( mod_syn[i] ); /* Q_oriSHB */
synNrg = L_mac0_sat( synNrg, sig, sig ); /* 2*Q_oriSHB - 2*/
-#else
- oriNrg = L_mac0_o( oriNrg, oriSHB[i], oriSHB[i], &Overflow ); /* 2*Q_oriSHB */
- sig = round_fx_o( mod_syn[i], &Overflow ); /* Q_oriSHB */
- synNrg = L_mac0_o( synNrg, sig, sig, &Overflow ); /* 2*Q_oriSHB - 2*/
-#endif
}
tmp = add( l_frame, l_shb_lahead );
FOR( ; i < tmp; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
sig = mult_r_sat( oriSHB[i], win_shb[l_frame + l_shb_lahead - 1 - i] ); /* Q_oriSHB */
oriNrg = L_mac0_sat( oriNrg, sig, sig ); /* 2*Q_oriSHB */
sig = round_fx_sat( Mult_32_16( mod_syn[i], win_shb[l_frame + l_shb_lahead - 1 - i] ) ); /* Q_oriSHB */
synNrg = L_mac0_sat( synNrg, sig, sig ); /* 2*Q_oriSHB - 2*/
-#else
- sig = mult_ro( oriSHB[i], win_shb[l_frame + l_shb_lahead - 1 - i], &Overflow ); /* Q_oriSHB */
- oriNrg = L_mac0_o( oriNrg, sig, sig, &Overflow ); /* 2*Q_oriSHB */
-
- sig = round_fx_o( Mult_32_16( mod_syn[i], win_shb[l_frame + l_shb_lahead - 1 - i] ), &Overflow ); /* Q_oriSHB */
- synNrg = L_mac0_o( synNrg, sig, sig, &Overflow ); /* 2*Q_oriSHB - 2*/
-#endif
}
IF( EQ_32( oriNrg, MAX_32 ) )
{
@@ -4983,33 +4833,18 @@ static void EstimateSHBFrameGain_ivas_fx(
move32();
FOR( i = 0; i < l_shb_lahead; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
sig = mult_r( shl_sat( oriSHB[i], scaling ), win_shb[i] );
oriNrg = L_mac0_sat( oriNrg, sig, sig ); /* 2*Q_oriSHB + 2*scaling */
-#else
- sig = mult_r( shl_sat( oriSHB[i], scaling ), win_shb[i] );
- oriNrg = L_mac0_o( oriNrg, sig, sig, &Overflow ); /* 2*Q_oriSHB + 2*scaling */
-#endif
}
FOR( ; i < l_frame; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
sig = shl_sat( oriSHB[i], scaling );
oriNrg = L_mac0_sat( oriNrg, sig, sig ); /* 2*Q_oriSHB + 2*scaling */
-#else
- sig = shl_sat( oriSHB[i], scaling );
- oriNrg = L_mac0_o( oriNrg, sig, sig, &Overflow ); /* 2*Q_oriSHB + 2*scaling */
-#endif
}
FOR( ; i < tmp; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
sig = mult_r( shl_sat( oriSHB[i], scaling ), win_shb[l_frame + l_shb_lahead - 1 - i] );
oriNrg = L_mac0_sat( oriNrg, sig, sig ); /* 2*Q_oriSHB + 2*scaling */
-#else
- sig = mult_r( shl_sat( oriSHB[i], scaling ), win_shb[l_frame + l_shb_lahead - 1 - i] );
- oriNrg = L_mac0_o( oriNrg, sig, sig, &Overflow ); /* 2*Q_oriSHB + 2*scaling */
-#endif
}
}
L_tmp = root_a_over_b_fx( oriNrg, shl( Q_oriSHB, 1 ), synNrg, sub( shl( Q_synSHB, 1 ), 2 ), &exp_out );
@@ -5123,12 +4958,6 @@ static void EstimateSHBGainShape_fx(
Word16 length_tmp;
Word32 L_tmp, normFact;
Word16 scaling = 0;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
move32();
move16();
move16();
@@ -5246,43 +5075,25 @@ static void EstimateSHBGainShape_fx(
FOR( k = 0; k < length; k++ )
{
sig = mult_r( oriSHB[j + k], subwin[k + 1] ); /* Q_oriSHB */
-#ifdef ISSUE_1867_replace_overflow_libenc
oriNrg = L_mac0_sat( oriNrg, sig, sig ); /* 2* Q_oriSHB */
sig = mult_r( synSHB[j + k], subwin[k + 1] ); /* Q_oriSHB */
synNrg = L_mac0_sat( synNrg, sig, sig ); /* 2* Q_oriSHB */
-#else
- oriNrg = L_mac0_o( oriNrg, sig, sig, &Overflow ); /* 2* Q_oriSHB */
- sig = mult_r( synSHB[j + k], subwin[k + 1] ); /* Q_oriSHB */
- synNrg = L_mac0_o( synNrg, sig, sig, &Overflow ); /* 2* Q_oriSHB */
-#endif
}
FOR( k = 0; k < ( join_length - length ); k++ )
{
sig = mult_r( oriSHB[length + j + k], 32767 ); /* Q_oriSHB */
-#ifdef ISSUE_1867_replace_overflow_libenc
oriNrg = L_mac0_sat( oriNrg, sig, sig ); /* 2* Q_oriSHB */
sig = mult_r( synSHB[length + j + k], 32767 ); /* Q_oriSHB */
synNrg = L_mac0_sat( synNrg, sig, sig ); /* 2* Q_oriSHB */
-#else
- oriNrg = L_mac0_o( oriNrg, sig, sig, &Overflow ); /* 2* Q_oriSHB */
- sig = mult_r( synSHB[length + j + k], 32767 ); /* Q_oriSHB */
- synNrg = L_mac0_o( synNrg, sig, sig, &Overflow ); /* 2* Q_oriSHB */
-#endif
}
FOR( k = 0; k < length; k++ )
{
sig = mult_r( oriSHB[j + join_length + k], subwin[length - k - 1] ); /* Q_oriSHB */
-#ifdef ISSUE_1867_replace_overflow_libenc
oriNrg = L_mac0_sat( oriNrg, sig, sig ); /* 2* Q_oriSHB */
sig = mult_r( synSHB[j + join_length + k], subwin[length - k - 1] ); /* Q_oriSHB */
synNrg = L_mac0_sat( synNrg, sig, sig ); /* 2* Q_oriSHB */
-#else
- oriNrg = L_mac0_o( oriNrg, sig, sig, &Overflow ); /* 2* Q_oriSHB */
- sig = mult_r( synSHB[j + join_length + k], subwin[length - k - 1] ); /* Q_oriSHB */
- synNrg = L_mac0_o( synNrg, sig, sig, &Overflow ); /* 2* Q_oriSHB */
-#endif
}
/* Only implemented in SWB because the length of samples in SWB frame is longer, more likely to saturate */
scaling = 0;
@@ -5329,13 +5140,8 @@ static void EstimateSHBGainShape_fx(
FOR( i = 0; i < num_gains; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
subgain[i] = round_fx_sat( L_shl_sat( L_subgain[i], sub( norm[i], n_max + 1 ) ) ); /* Q(14-n_max) */
L_sum_gain = L_mac0_sat( L_sum_gain, subgain[i], subgain[i] ); /* Q(28-2*n_max) */
-#else
- subgain[i] = round_fx_o( L_shl_o( L_subgain[i], sub( norm[i], n_max + 1 ), &Overflow ), &Overflow ); /* Q(14-n_max) */
- L_sum_gain = L_mac0_o( L_sum_gain, subgain[i], subgain[i], &Overflow ); /* Q(28-2*n_max) */
-#endif
move16();
}
@@ -5349,12 +5155,8 @@ static void EstimateSHBGainShape_fx(
{
FOR( i = 0; i < num_gains; i++ )
{
- L_tmp = Mpy_32_16_1( normFact, subgain[i] ); /*Q(31-n) * Q(31-norm[i]) */ /* Q(30-n-n_max) */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = Mpy_32_16_1( normFact, subgain[i] ); /*Q(31-n) * Q(31-norm[i]) */ /* Q(30-n-n_max) */
subgain[i] = s_max( round_fx_sat( L_shl_sat( L_tmp, add( n, n_max + 1 ) ) ), 3277 /*0.1f Q15*/ ); /* Q15 */
-#else
- subgain[i] = s_max( round_fx_o( L_shl_o( L_tmp, add( n, n_max + 1 ), &Overflow ), &Overflow ), 3277 /*0.1f Q15*/ ); /* Q15 */
-#endif
move16();
}
}
@@ -5363,11 +5165,7 @@ static void EstimateSHBGainShape_fx(
FOR( i = 0; i < num_gains; i++ )
{
L_tmp = Mpy_32_16_1( normFact, subgain[i] ); /*Q(31-n) * Q(31-norm[i]) */ /* Q(30-n-n_max) */
-#ifdef ISSUE_1867_replace_overflow_libenc
- subgain[i] = round_fx_sat( L_shl_sat( L_tmp, add( n, n_max + 1 ) ) ); /* Q15 */
-#else
- subgain[i] = round_fx_o( L_shl_o( L_tmp, add( n, n_max + 1 ), &Overflow ), &Overflow ); /* Q15 */
-#endif
+ subgain[i] = round_fx_sat( L_shl_sat( L_tmp, add( n, n_max + 1 ) ) ); /* Q15 */
move16();
}
}
@@ -5811,6 +5609,7 @@ static void Quant_shb_ener_sf_fx(
{
push_indice( st_fx->hBstr, IND_SHB_ENER_SF, idxSubEner_fx, NUM_BITS_SHB_ENER_SF );
}
+
return;
}
@@ -5865,6 +5664,7 @@ static void Quant_shb_ener_sf_ivas_fx(
{
push_indice( st_fx->hBstr, IND_SHB_ENER_SF, idxSubEner_fx, NUM_BITS_SHB_ENER_SF );
}
+
return;
}
@@ -5899,6 +5699,8 @@ static void Quant_shb_res_gshape_fx(
push_indice( st_fx->hBstr, IND_SHB_RES_GS + i, idxSubGain_fx[i], NUM_BITS_SHB_RES_GS );
}
}
+
+ return;
}
@@ -5935,6 +5737,8 @@ static void Quant_shb_res_gshape_ivas_fx(
push_indice( st->hBstr, IND_SHB_RES_GS + i, idxSubGain_fx[i], NUM_BITS_SHB_RES_GS );
}
}
+
+ return;
}
@@ -5962,8 +5766,7 @@ static void QuantizeSHBframegain_fx(
Encoder_State *st_fx, /* i/o: encoder state structure */
Word32 *GainFrame, /* i/o: Gain Q18 */
const Word16 extl, /* i : extension layer */
- Word32 extl_brate /* i : extension layer bitrate */
- ,
+ Word32 extl_brate, /* i : extension layer bitrate */
Word16 *rf_gainFrame_ind )
{
Word16 idxFrameGain;
@@ -6842,7 +6645,7 @@ static void gainFrSmooth_En_fx( Encoder_State *st_fx,
}
test();
- if ( LT_32( lsp_slow_evol_rate, 2147484l /*0.001f Q31*/ ) && LT_32( lsp_fast_evol_rate, 2147484l /*0.001f Q31*/ ) )
+ if ( LT_32( lsp_slow_evol_rate, INV_1000_Q31 ) && LT_32( lsp_fast_evol_rate, 2147484l /*0.001f Q31*/ ) )
{
*frGainSmoothEn = 1;
move16();
@@ -6969,7 +6772,7 @@ static void gainFrSmooth_En_ivas_fx( Encoder_State *st_fx,
}
test();
- if ( ( BASOP_Util_Cmp_Mant32Exp( lsp_slow_evol_rate, lsp_slow_evol_rate_e, 2147484l /*0.001f in Q31*/, 0 ) < 0 ) && ( BASOP_Util_Cmp_Mant32Exp( lsp_fast_evol_rate, lsp_fast_evol_rate_e, 2147484l /*0.001f in Q31*/, 0 ) < 0 ) )
+ if ( ( BASOP_Util_Cmp_Mant32Exp( lsp_slow_evol_rate, lsp_slow_evol_rate_e, INV_1000_Q31, 0 ) < 0 ) && ( BASOP_Util_Cmp_Mant32Exp( lsp_fast_evol_rate, lsp_fast_evol_rate_e, 2147484l /*0.001f in Q31*/, 0 ) < 0 ) )
{
*frGainSmoothEn = 1;
move16();
@@ -6997,12 +6800,6 @@ static void first_VQstages_fx(
move16();
Word16 maxC = LSFMBEST;
move16();
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
/*float dd[16];*/
const Word16 *cb_stage, *cbp;
@@ -7028,13 +6825,9 @@ static void first_VQstages_fx(
L_tmp = L_deposit_l( 0 );
FOR( j = 0; j < N; j++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp1 = L_shl_sat( L_mult0( u[j], w[j] ), 7 ); /*x2.56 + Q8 + Q7 */
-#else
- L_tmp1 = L_shl_o( L_mult0( u[j], w[j] ), 7, &Overflow ); /*x2.56 + Q8 + Q7 */
-#endif
- L_tmp1 = Mult_32_16( L_tmp1, u[j] ); /*x2.56 + Q15 + x2.56 -Q15 */
- L_tmp = L_add( L_tmp, L_tmp1 ); /*Q0 + x2.56 +x2.56 */
+ L_tmp1 = Mult_32_16( L_tmp1, u[j] ); /*x2.56 + Q15 + x2.56 -Q15 */
+ L_tmp = L_add( L_tmp, L_tmp1 ); /*Q0 + x2.56 +x2.56 */
}
set32_fx( dist[1], L_tmp, maxC );
@@ -7522,12 +7315,7 @@ void fb_tbe_enc_fx(
Word16 tmp, tmp1, tmp2, exp, exp2, exp_norm;
Word16 s_max_value, exp_temp, i;
TD_BWE_ENC_HANDLE hBWE_TD = st->hBWE_TD;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move16();
-#endif
-#endif
+
s_max_value = 0;
FOR( i = 0; i < L_FRAME48k; i++ )
{
@@ -7561,13 +7349,9 @@ void fb_tbe_enc_fx(
Copy( hBWE_TD->old_input_fhb_fx, input_fhb, Sample_Delay_HP );
Copy( tmp_vec, input_fhb + Sample_Delay_HP, L_FRAME48k - Sample_Delay_HP );
Copy( tmp_vec + L_FRAME48k - Sample_Delay_HP, hBWE_TD->old_input_fhb_fx, Sample_Delay_HP );
- temp2 = sum2_fx_mod( input_fhb, L_FRAME48k / 2 ); /* Q11 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ temp2 = sum2_fx_mod( input_fhb, L_FRAME48k / 2 ); /* Q11 */
temp2 = L_add_sat( temp2, L_shl_sat( hBWE_TD->prev_fb_energy_fx, sub( sub( add( exp_temp, exp_temp ), 6 ), hBWE_TD->prev_fb_energy_fx_Q ) ) ); /* Q11 */
-#else
- temp2 = L_add_o( temp2, L_shl_o( hBWE_TD->prev_fb_energy_fx, sub( sub( add( exp_temp, exp_temp ), 6 ), hBWE_TD->prev_fb_energy_fx_Q ), &Overflow ), &Overflow ); /* Q11 */
-#endif
- hBWE_TD->prev_fb_energy_fx = sum2_fx_mod( input_fhb + L_FRAME48k / 2, L_FRAME48k / 2 ); /*Q11*/
+ hBWE_TD->prev_fb_energy_fx = sum2_fx_mod( input_fhb + L_FRAME48k / 2, L_FRAME48k / 2 ); /*Q11*/
hBWE_TD->prev_fb_energy_fx_Q = sub( add( exp_temp, exp_temp ), 6 );
fb_exc_energy = sum2_fx_mod( fb_exc, L_FRAME16k ); /* Q(2*Q_fb_exc+1 -7) */
diff --git a/lib_enc/tcx_ltp_enc_fx.c b/lib_enc/tcx_ltp_enc_fx.c
index c492fd100fb159608d1780c7d6ea85f170805093..9f8b26cf8e751119ba541900953f8e53ae3dd3d1 100644
--- a/lib_enc/tcx_ltp_enc_fx.c
+++ b/lib_enc/tcx_ltp_enc_fx.c
@@ -495,13 +495,6 @@ static void tcx_ltp_find_gain( Word16 *speech, Word16 *pred_speech, Word16 L_fra
{
Word32 corr, ener;
Word16 i, g, s1, s2, tmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
s1 = sub( getScaleFactor16( speech, L_frame ), 4 );
s2 = sub( getScaleFactor16( pred_speech, L_frame ), 4 );
@@ -528,21 +521,13 @@ static void tcx_ltp_find_gain( Word16 *speech, Word16 *pred_speech, Word16 L_fra
ener = L_shl( ener, tmp );
s2 = sub( s2, tmp );
-#ifdef ISSUE_1867_replace_overflow_libenc
g = divide1616( round_fx_sat( corr ), round_fx_sat( ener ) );
-#else
- g = divide1616( round_fx_o( corr, &Overflow ), round_fx_o( ener, &Overflow ) );
-#endif
BASOP_SATURATE_WARNING_OFF_EVS
g = shl_sat( g, sub( s1, s2 ) );
BASOP_SATURATE_WARNING_ON_EVS
/* Quantize gain */
-#ifdef ISSUE_1867_replace_overflow_libenc
g = shr( sub_sat( g, 0x1000 ), 13 );
-#else
- g = shr( sub_o( g, 0x1000, &Overflow ), 13 );
-#endif
g = s_max( g, -1 );
*gain_index = g;
@@ -557,12 +542,6 @@ static void tcx_ltp_find_gain_ivas_fx( Word16 *speech /*Qx*/, Word16 *pred_speec
{
Word32 corr, ener;
Word16 i, g, s1, s2, tmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
s1 = sub( getScaleFactor16( speech, L_frame ), 4 );
s2 = sub( getScaleFactor16( pred_speech, L_frame ), 4 );
@@ -589,11 +568,7 @@ static void tcx_ltp_find_gain_ivas_fx( Word16 *speech /*Qx*/, Word16 *pred_speec
ener = L_shl( ener, tmp );
s2 = sub( s2, tmp );
-#ifdef ISSUE_1867_replace_overflow_libenc
g = divide1616( round_fx_sat( corr ), round_fx_sat( ener ) );
-#else
- g = divide1616( round_fx_o( corr, &Overflow ), round_fx_o( ener, &Overflow ) );
-#endif
BASOP_SATURATE_WARNING_OFF_EVS
g = shl_sat( g, sub( s1, s2 ) ); /*Q15*/
BASOP_SATURATE_WARNING_ON_EVS
@@ -650,12 +625,6 @@ void tcx_ltp_encode_fx(
Word16 buf_zir[M + L_SUBFR], *zir;
Word16 Aest[M + 1];
Word16 alpha, step;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
norm_corr = 0;
move16();
@@ -813,18 +782,10 @@ void tcx_ltp_encode_fx(
FOR( n = 0; n < L_subfr; n++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
speech_ltp[n] = sub_sat( speech[n], mult_r_sat( *gain, mult_r_sat( alpha, pred_speech[n] ) ) );
-#else
- speech_ltp[n] = sub_o( speech[n], mult_ro( *gain, mult_ro( alpha, pred_speech[n], &Overflow ), &Overflow ), &Overflow );
-#endif
move16();
BASOP_SATURATE_WARNING_OFF_EVS;
-#ifdef ISSUE_1867_replace_overflow_libenc
alpha = add_sat( alpha, step );
-#else
- alpha = add_o( alpha, step, &Overflow );
-#endif
BASOP_SATURATE_WARNING_ON_EVS;
}
}
@@ -875,11 +836,7 @@ void tcx_ltp_encode_fx(
FOR( n = 0; n < L_subfr; n++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
speech_ltp[n] = add_sat( sub_sat( speech[n], mult_r_sat( *gain, pred_speech[n] ) ), zir[n] );
-#else
- speech_ltp[n] = add_o( sub_o( speech[n], mult_ro( *gain, pred_speech[n], &Overflow ), &Overflow ), zir[n], &Overflow );
-#endif
move16();
}
}
@@ -897,11 +854,7 @@ void tcx_ltp_encode_fx(
{
FOR( n = L_subfr; n < L_frame; n++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
speech_ltp[n] = sub_sat( speech[n], mult( *gain, pred_speech[n] ) );
-#else
- speech_ltp[n] = sub_o( speech[n], mult( *gain, pred_speech[n] ), &Overflow );
-#endif
move16();
}
}
@@ -947,11 +900,6 @@ void tcx_ltp_encode_ivas_fx(
Word16 Aest_fx[M + 1];
Word16 exponent;
Word16 sqr;
-#ifndef ISSUE_1867_replace_overflow_libenc
- Flag Overflow = 0;
- move32();
-#endif
-
TCX_ENC_HANDLE hTcxEnc = st->hTcxEnc;
tcxOnly = st->tcxonly;
@@ -1243,11 +1191,7 @@ void tcx_ltp_encode_ivas_fx(
FOR( n = 0; n < L_subfr; n++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
speech_ltp_fx[n] = sub_sat( speech_fx[n], mult_r_sat( hTcxEnc->tcxltp_gain, mult_r_sat( alpha_fx, pred_speech_fx[n] ) ) );
-#else
- speech_ltp_fx[n] = sub_o( speech_fx[n], mult_ro( hTcxEnc->tcxltp_gain, mult_ro( alpha_fx, pred_speech_fx[n], &Overflow ), &Overflow ), &Overflow );
-#endif
move16();
alpha_fx = add_sat( alpha_fx, step_fx );
}
@@ -1297,11 +1241,7 @@ void tcx_ltp_encode_ivas_fx(
FOR( n = 0; n < L_subfr; n++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
speech_ltp_fx[n] = add_sat( sub_sat( speech_fx[n], mult_r_sat( hTcxEnc->tcxltp_gain, pred_speech_fx[n] ) ), zir_fx[n] );
-#else
- speech_ltp_fx[n] = add_o( sub_o( speech_fx[n], mult_ro( hTcxEnc->tcxltp_gain, pred_speech_fx[n], &Overflow ), &Overflow ), zir_fx[n], &Overflow );
-#endif
move16();
}
}
@@ -1319,11 +1259,7 @@ void tcx_ltp_encode_ivas_fx(
{
FOR( n = L_subfr; n < L_frame; n++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
speech_ltp_fx[n] = sub_sat( speech_fx[n], mult( hTcxEnc->tcxltp_gain, pred_speech_fx[n] ) );
-#else
- speech_ltp_fx[n] = sub_o( speech_fx[n], mult( hTcxEnc->tcxltp_gain, pred_speech_fx[n] ), &Overflow );
-#endif
move16();
}
}
diff --git a/lib_enc/tcx_utils_enc_fx.c b/lib_enc/tcx_utils_enc_fx.c
index b8f187205de3b3e3ef02d87751b1a40c061dbdc6..bbeb26ee394d24ee76664d0f3c1293532f83b663 100644
--- a/lib_enc/tcx_utils_enc_fx.c
+++ b/lib_enc/tcx_utils_enc_fx.c
@@ -287,31 +287,16 @@ static void detectLowpassFac( const Word32 *powerSpec, Word16 powerSpec_e, Word1
{
Word16 i, tmp;
Word32 threshold;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
threshold = 256l /*0.1f * 2*NORM_MDCT_FACTOR Q3*/; /* Q3 */
move32();
BASOP_SATURATE_WARNING_OFF_EVS /* Allow saturation, because threshold is being compared to powerSpec[i] below. */
-#ifdef ISSUE_1867_replace_overflow_libenc
threshold = L_shl_sat( threshold, sub( 28, powerSpec_e ) );
-#else
- threshold = L_shl_o( threshold, sub( 28, powerSpec_e ), &Overflow );
-#endif
IF( rectWin != 0 )
{
/* compensate for bad side-lobe attenuation with asymmetric windows */
-#ifdef ISSUE_1867_replace_overflow_libenc
threshold = L_shl_sat( threshold, 1 );
-#else
- threshold = L_shl_o( threshold, 1, &Overflow );
-#endif
}
BASOP_SATURATE_WARNING_ON_EVS
@@ -2504,12 +2489,6 @@ void tcx_noise_factor_ivas_fx(
Word16 att; /* noise level attenuation factor for transient windows */
Word32 xMax;
Word16 exp_spQ[N_MAX];
-#if !defined( ISSUE_1867_replace_overflow_libenc )
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
assert( nTransWidth <= 16 );
@@ -2758,11 +2737,7 @@ void tcx_noise_factor_ivas_fx(
tmp4 = BASOP_Util_Divide3232_Scale_newton( Mpy_32_16_1( sqErrorNrg, att ), n, &s );
s = add( add( exp_sqErrorNrg, -15 ), s );
BASOP_SATURATE_WARNING_OFF_EVS;
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp4 = L_shl_sat( tmp4, s );
-#else
- tmp4 = L_shl_o( tmp4, s, &Overflow );
-#endif
BASOP_SATURATE_WARNING_ON_EVS;
}
ELSE
diff --git a/lib_enc/tns_base_enc_fx.c b/lib_enc/tns_base_enc_fx.c
index 945b5c0024aa2c7775c8934318640282a64264ba..3f671f705930b82e4fdce2858c72e23b2c60052e 100644
--- a/lib_enc/tns_base_enc_fx.c
+++ b/lib_enc/tns_base_enc_fx.c
@@ -76,12 +76,6 @@ Word16 DetectTnsFilt_fx( STnsConfig const *pTnsConfig,
Word16 idx1;
Word16 nSubdivisions;
Word16 iSubdivisions;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
move16();
move16();
@@ -127,11 +121,7 @@ Word16 DetectTnsFilt_fx( STnsConfig const *pTnsConfig,
/* Check threshold HLM_MIN_NRG */
BASOP_SATURATE_WARNING_OFF_EVS;
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp32 = L_sub( L_shl_sat( L_tmp, s_min( 31, sub( shift, 24 - 31 * 2 ) ) ), 3277l /*HLM_MIN_NRG Q7*/ );
-#else
- tmp32 = L_sub( L_shl_o( L_tmp, s_min( 31, sub( shift, 24 - 31 * 2 ) ), &Overflow ), 3277l /*HLM_MIN_NRG Q7*/ );
-#endif
BASOP_SATURATE_WARNING_ON_EVS;
/* get pre-shift for autocorrelation */
@@ -447,12 +437,6 @@ Word16 DetectTnsFilt_ivas_fx( STnsConfig const *pTnsConfig, /* i : TNS Configur
Word16 idx1;
Word16 nSubdivisions;
Word16 iSubdivisions;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
move16();
move16();
@@ -498,11 +482,7 @@ Word16 DetectTnsFilt_ivas_fx( STnsConfig const *pTnsConfig, /* i : TNS Configur
/* Check threshold HLM_MIN_NRG */
BASOP_SATURATE_WARNING_OFF_EVS;
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp32 = L_sub( L_shl_sat( L_tmp, s_min( 31, sub( shift, 24 - 31 * 2 ) ) ), 3277l /*HLM_MIN_NRG Q7*/ );
-#else
- tmp32 = L_sub( L_shl_o( L_tmp, s_min( 31, sub( shift, 24 - 31 * 2 ) ), &Overflow ), 3277l /*HLM_MIN_NRG Q7*/ );
-#endif
BASOP_SATURATE_WARNING_ON_EVS;
/* get pre-shift for autocorrelation */
diff --git a/lib_enc/transient_detection_fx.c b/lib_enc/transient_detection_fx.c
index bb8239f90a4ab6ae55edc1b245017274bec24154..b0593456d05d7aeada3e57c854eb50b4a398e020 100644
--- a/lib_enc/transient_detection_fx.c
+++ b/lib_enc/transient_detection_fx.c
@@ -259,88 +259,6 @@ static void GetAttackForTCXDecision_ivas_fx(
}
-void GetAttackForTCXDecision_fx(
- Word32 const *pSubblockNrg,
- Word32 const *pAccSubblockNrg,
- Word16 nSubblocks,
- Word16 nPastSubblocks,
- Word16 attackRatioThreshold,
- Word16 *pbIsAttackPresent,
- Word16 *pAttackIndex )
-{
- Word16 i;
- Word16 bIsAttackPresent, attackIndex;
- Word16 attackRatioThreshold_1_5;
-
- assert( nSubblocks >= NSUBBLOCKS );
- assert( nPastSubblocks >= 2 );
-
- /* attackRatioThreshold_1_5 = attackRatioThreshold * 1.5, exponent is ATTACKTHRESHOLD_E+1 */
- attackRatioThreshold_1_5 = add( shr( attackRatioThreshold, 2 ), shr( attackRatioThreshold, 1 ) );
-
- move16();
- move16();
- bIsAttackPresent = FALSE;
- attackIndex = 0;
- /* Search for the last attack in the subblocks */
- if ( s_or( (Word16) GT_32( L_shr( pSubblockNrg[-1], ATTACKTHRESHOLD_E ), Mpy_32_16_1( pAccSubblockNrg[-1], attackRatioThreshold ) ),
- L_sub( L_shr( pSubblockNrg[-2], ATTACKTHRESHOLD_E ), Mpy_32_16_1( pAccSubblockNrg[-2], attackRatioThreshold ) ) > 0 ) )
- {
- move16();
- bIsAttackPresent = TRUE;
- }
-
- FOR( i = 0; i < NSUBBLOCKS; i++ )
- {
- IF( GT_32( L_shr( pSubblockNrg[i], ATTACKTHRESHOLD_E ), Mpy_32_16_1( pAccSubblockNrg[i], attackRatioThreshold ) ) )
- {
- if ( i < 6 )
- {
- move16();
- bIsAttackPresent = TRUE;
- }
-
- if ( s_and( (Word16) NE_16( attackIndex, 2 ), (Word16) NE_16( attackIndex, 6 ) ) )
- {
- move16();
- attackIndex = i;
- }
- }
- ELSE /* no attack, but set index anyway in case of strong energy increase */
- {
- IF( s_and( ( (Word16) GT_32( L_shr( pSubblockNrg[i], 1 + ATTACKTHRESHOLD_E ), Mpy_32_16_1( pSubblockNrg[sub( i, 1 )], attackRatioThreshold_1_5 ) ) ),
- ( L_sub( L_shr( pSubblockNrg[i], 1 + ATTACKTHRESHOLD_E ), Mpy_32_16_1( pSubblockNrg[sub( i, 2 )], attackRatioThreshold_1_5 ) ) > 0 ) ) )
- {
-
- if ( s_and( (Word16) NE_16( attackIndex, 2 ), (Word16) NE_16( attackIndex, 6 ) ) )
- {
- move16();
- attackIndex = i;
- }
- }
- }
- }
- /* avoid post-echos on click sounds (very short transients) due to TNS aliasing */
- if ( EQ_16( attackIndex, 4 ) )
- {
- move16();
- attackIndex = 7;
- }
- if ( EQ_16( attackIndex, 5 ) )
- {
- move16();
- attackIndex = 6;
- }
-
- move16();
- move16();
- *pAttackIndex = attackIndex;
- *pbIsAttackPresent = bIsAttackPresent;
-
- return;
-}
-
-
/** Initialize TCX transient detector.
* See InitTransientDetector_fx for definition of parameters.
*/
diff --git a/lib_enc/transition_enc_fx.c b/lib_enc/transition_enc_fx.c
index e19a89e0b86f79b6452f3a699a27b53827177383..842b635515650a93aea44655363ad030ea3c5de6 100644
--- a/lib_enc/transition_enc_fx.c
+++ b/lib_enc/transition_enc_fx.c
@@ -2203,12 +2203,6 @@ static void gain_trans_enc_fx(
)
{
Word16 i, imax, istart, tmp16, gain_trans, gscale;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
istart = 0;
move16();
@@ -2216,19 +2210,11 @@ static void gain_trans_enc_fx(
move16();
gscale = 7;
move16();
-#ifdef ISSUE_1867_replace_overflow_libenc
gain_trans = extract_h( L_shl_sat( gain_trans32, 16 ) ); /* Q7 */
-#else
- gain_trans = extract_h( L_shl_o( gain_trans32, 16, &Overflow ) ); /* Q7 */
-#endif
IF( GT_32( L_abs( gain_trans32 ), 29862L ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
gain_trans = extract_h( L_shl_sat( gain_trans32, 16 - 3 ) ); /* Q4 */
-#else
- gain_trans = extract_h( L_shl_o( gain_trans32, 16 - 3, &Overflow ) ); /* Q4 */
-#endif
istart = 4;
move16();
imax = N_GAIN_TC - 1;
@@ -2261,11 +2247,7 @@ static void gain_trans_enc_fx(
FOR( i = 0; i < L_SUBFR; i++ )
{
/*exc[i] *= (*gain_trans);*/
-#ifdef ISSUE_1867_replace_overflow_libenc
exc[i] = round_fx_sat( L_shl_sat( L_mult( exc[i], gain_trans ), tmp16 ) );
-#else
- exc[i] = round_fx_o( L_shl_o( L_mult( exc[i], gain_trans ), tmp16, &Overflow ), &Overflow );
-#endif
move16();
}
@@ -2291,12 +2273,6 @@ void tc_classif_enc_fx(
{
Word32 temp;
Word16 T_op, i;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
T_op = pitch;
move16();
@@ -2371,11 +2347,7 @@ void tc_classif_enc_fx(
L_sum = L_mac_sat( 1L, res[0], res[0] );
FOR( i = 1; i < len; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_sum = L_mac0_sat( L_sum, res[i], res[i] );
-#else
- L_sum = L_mac0_o( L_sum, res[i], res[i], &Overflow );
-#endif
}
aver = L_sum; /*Q = 2*Q_new */
move32();
@@ -2388,13 +2360,8 @@ void tc_classif_enc_fx(
L_temp1 = Mult_32_16( temp, 8192 ); /* Q=31-exp */
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
IF( GT_32( temp2, L_shl_sat( L_temp2, ( 31 - exp2 ) - ( 31 - exp ) ) ) &&
LT_32( aver, L_shl_sat( L_temp1, ( 31 - exp_aver ) - ( 31 - exp ) ) ) )
-#else
- IF( GT_32( temp2, L_shl_o( L_temp2, ( 31 - exp2 ) - ( 31 - exp ), &Overflow ) ) &&
- LT_32( aver, L_shl_o( L_temp1, ( 31 - exp_aver ) - ( 31 - exp ), &Overflow ) ) )
-#endif
{
*position = position_tmp;
move16();
diff --git a/lib_enc/vad_fx.c b/lib_enc/vad_fx.c
index 9883d9fae5366185dbfa83f79b66104cd0b73ea2..c4c6df6c3b4e55a8e1aa0beccac0951ecdbb63d7 100644
--- a/lib_enc/vad_fx.c
+++ b/lib_enc/vad_fx.c
@@ -1,10 +1,10 @@
/*====================================================================================
EVS Codec 3GPP TS26.452 Aug 12, 2021. Version 16.3.0
====================================================================================*/
+
#include
#include "options.h"
#include "cnst.h" /* Common constants */
-//#include "prot_fx.h" /* Function prototypes */
#include "rom_enc.h"
#include "prot_fx.h" /* Function prototypes */
#include "prot_fx_enc.h" /* Function prototypes */
@@ -75,9 +75,10 @@
/* snr_sum = "scale" * (float)log10( L_snr_sum ) ;*/
-static Word16 vad_snr_log_fx( /* o: Q8 */
- Word32 L_snr, /* i: Q4 */
- Word16 scale /* i: scale Q13 , 10.0*log10(2) or 1.0*log10(2) */
+/* o: Q8 */
+static Word16 vad_snr_log_fx(
+ Word32 L_snr, /* i: Q4 */
+ Word16 scale /* i: scale Q13 , 10.0*log10(2) or 1.0*log10(2) */
)
{
Word16 e_snr, f_snr;
@@ -199,6 +200,7 @@ static void sign_thr_snr_acc_ivas_fx(
move32();
move32();
}
+
static void sign_thr_snr_acc_fx(
Word32 *L_snr_sum, /* o: Q4 */
Word32 L_snr, /* i: Q4 */
@@ -208,12 +210,6 @@ static void sign_thr_snr_acc_fx(
{
/*if( snr >= sign_thr ) */
Word32 L_tmp;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
L_tmp = L_deposit_l( min_snr );
IF( GE_32( L_snr, L_deposit_l( sign_thr ) ) )
@@ -221,12 +217,8 @@ static void sign_thr_snr_acc_fx(
L_tmp = L_add( L_snr, 0 ); /* Q4 */
}
BASOP_SATURATE_WARNING_OFF_EVS /* may saturate in BASOP */
-#ifdef ISSUE_1867_replace_overflow_libenc
*L_snr_sum = L_add_sat( *L_snr_sum, L_tmp );
/* Q4 */
-#else
- *L_snr_sum = L_add_o( *L_snr_sum, L_tmp, &Overflow ); /* Q4 */
-#endif
move32();
BASOP_SATURATE_WARNING_ON_EVS
}
@@ -702,12 +694,6 @@ Word16 wb_vad_fx(
Word32 L_accum_ener_H;
Word16 vad_bwidth_fx;
Word16 last_7k2_coder_type;
-#if !defined( ISSUE_1867_replace_overflow_libenc )
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
if ( hNoiseEst == NULL )
{
@@ -1052,35 +1038,19 @@ Word16 wb_vad_fx(
tmp = shl_sat( snr, 5 ); /* Q8 -> Q13 */
IF( LT_16( i, 2 ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = add_sat( tmp, delta1 ); /*Q13 */
-#else
- tmp = add_o( tmp, delta1, &Overflow ); /*Q13 */
-#endif
}
ELSE IF( LT_16( i, 7 ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = add_sat( tmp, delta2 ); /*Q13 */
-#else
- tmp = add_o( tmp, delta2, &Overflow ); /*Q13 */
-#endif
}
ELSE IF( LT_16( i, 18 ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = add_sat( tmp, delta3 ); /*Q13 */
-#else
- tmp = add_o( tmp, delta3, &Overflow ); /*Q13 */
-#endif
}
ELSE
{
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp = add_sat( tmp, delta4 ); /*Q13 */
-#else
- tmp = add_o( tmp, delta4, &Overflow ); /*Q13 */
-#endif
}
tmp1 = tmp;
@@ -1088,11 +1058,7 @@ Word16 wb_vad_fx(
sub( 0, 0 );
if ( LT_16( i, 7 ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
tmp1 = add_sat( tmp, 3277 ); /*.4 in Q13 ftmp1 = ftmp + 0.4f; */
-#else
- tmp1 = add_o( tmp, 3277, &Overflow ); /*.4 in Q13 ftmp1 = ftmp + 0.4f; */
-#endif
}
tmp = s_min( tmp, 16384 ); /* Q13, ftmp = min(ftmp, 2.0f); */
@@ -1176,19 +1142,11 @@ Word16 wb_vad_fx(
/* accumulate background noise energy in bands [0-2] and in bands [3-19]*/
IF( LT_16( i, 3 ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_accum_ener_L = L_add_sat( L_accum_ener_L, hNoiseEst->bckr_fx[i] ); /*Q_new+QSCALE */
-#else
- L_accum_ener_L = L_add_o( L_accum_ener_L, hNoiseEst->bckr_fx[i], &Overflow ); /*Q_new+QSCALE */
-#endif
}
ELSE
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_accum_ener_H = L_add_sat( L_accum_ener_H, hNoiseEst->bckr_fx[i] ); /*Q_new+QSCALE */
-#else
- L_accum_ener_H = L_add_o( L_accum_ener_H, hNoiseEst->bckr_fx[i], &Overflow ); /*Q_new+QSCALE */
-#endif
}
/* Identify the outlier band */
@@ -1282,11 +1240,7 @@ Word16 wb_vad_fx(
}
}
/*st_fx->snr_sum_vad_fx = 0.5f * st->snr_sum_vad + 0.5f * snr_sum_ol;*/
-#ifdef ISSUE_1867_replace_overflow_libenc
hVAD->L_snr_sum_vad_fx = L_shr( L_add_sat( hVAD->L_snr_sum_vad_fx, L_snr_sum_ol ), 1 ); /*Q4*/
-#else
- hVAD->L_snr_sum_vad_fx = L_shr( L_add_o( hVAD->L_snr_sum_vad_fx, L_snr_sum_ol, &Overflow ), 1 ); /*Q4*/
-#endif
move32();
/* snr_sum_ol = 10.0f * (float)log10( snr_sum_ol ); */
@@ -1400,11 +1354,7 @@ Word16 wb_vad_fx(
thr1_ol = thr1;
move16();
L_tmp2 = Msub_32_16( (Word32) 614, L_snr_outlier, 20972 ); /* .6*1024= */ /* 0.6 Q26(Q10 in high word) - Q4*Q21+1 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- tmp2 = round_fx( L_shl_sat( L_tmp2, 14 ) ); /* Q10(high word)+ 14 -16 --> Q8*/
-#else
- tmp2 = round_fx( L_shl_o( L_tmp2, 14, &Overflow ) ); /* Q10(high word)+ 14 -16 --> Q8*/
-#endif
+ tmp2 = round_fx( L_shl_sat( L_tmp2, 14 ) ); /* Q10(high word)+ 14 -16 --> Q8*/
IF( L_tmp2 > 0 )
{
thr1_ol = add( thr1_ol, tmp2 ); /* Q24 >>16 + Q8 */
@@ -1974,12 +1924,6 @@ Word16 wb_vad_ivas_fx(
Word16 last_7k2_coder_type;
Word16 q_shift, q_ener, q_diff1, q_diff2;
Word16 q_L_snr_sum_ol, e_snr, f_snr;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
Word16 L_msnr_e = 0, L_mssnr_e = 0, L_mssnr_hov_e = 0, L_msnr18_e = 0, L_msnr19_e = 0;
move16(); /*L_msnr_e*/
move16(); /*L_mssnr_e*/
@@ -2444,19 +2388,11 @@ Word16 wb_vad_ivas_fx(
/* accumulate background noise energy in bands [0-2] and in bands [3-19]*/
IF( LT_16( i, 3 ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_accum_ener_L = L_add_sat( L_accum_ener_L, hNoiseEst->bckr_fx[i] ); /* hNoiseEst->q_bckr */
-#else
- L_accum_ener_L = L_add_o( L_accum_ener_L, hNoiseEst->bckr_fx[i], &Overflow ); /* hNoiseEst->q_bckr */
-#endif
}
ELSE
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_accum_ener_H = L_add_sat( L_accum_ener_H, hNoiseEst->bckr_fx[i] ); /*hNoiseEst->q_bckr */
-#else
- L_accum_ener_H = L_add_o( L_accum_ener_H, hNoiseEst->bckr_fx[i], &Overflow ); /*hNoiseEst->q_bckr */
-#endif
}
/* Identify the outlier band */
@@ -2470,11 +2406,8 @@ Word16 wb_vad_ivas_fx(
move16();
}
} /* end of band loop */
-#ifdef ISSUE_1867_replace_overflow_libenc
+
L_snr_sum_HE_SAD = L_shl_sat( L_snr_sum_HE_SAD, sub( 4, q_snr_sum_HE_SAD ) ); // q_snr_sum_HE_SAD->q4
-#else
- L_snr_sum_HE_SAD = L_shl_o( L_snr_sum_HE_SAD, sub( 4, q_snr_sum_HE_SAD ), &Overflow ); // q_snr_sum_HE_SAD->q4
-#endif
snr_sumt = extract_h( L_shl( L_snr_sumt, Q4 ) ); // Q16 -> Q4
diff --git a/lib_enc/vad_param_updt_fx.c b/lib_enc/vad_param_updt_fx.c
index 8cafb40da2e7edc026b6c10d8dc8c001c37b0d0a..9738da4d653187e2e8c9c77ad19b984e32af1e3a 100644
--- a/lib_enc/vad_param_updt_fx.c
+++ b/lib_enc/vad_param_updt_fx.c
@@ -1,11 +1,11 @@
/*====================================================================================
EVS Codec 3GPP TS26.452 Aug 12, 2021. Version 16.3.0
====================================================================================*/
+
#include
#include
-#include "options.h" /* Compilation switches */
-#include "cnst.h" /* Common constants */
-//#include "prot_fx.h" /* Function prototypes */
+#include "options.h" /* Compilation switches */
+#include "cnst.h" /* Common constants */
#include "ivas_stat_enc.h" /* Function prototypes */
#include "prot_fx.h" /* Function prototypes */
#include "prot_fx_enc.h" /* Function prototypes */
@@ -34,12 +34,6 @@ void vad_param_updt_fx(
Word16 i, ini_frame, corr_shift_temp[2];
VAD_HANDLE hVAD;
DTX_ENC_HANDLE hDtxEnc = st_fx->hDtxEnc;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
corr_shift_temp[0] = corr_shift; /*Q15*/
corr_shift_temp[1] = corr_shiftR; /*Q15*/
@@ -64,8 +58,7 @@ void vad_param_updt_fx(
}
IF( !st_fx->Opt_AMR_WB )
{
- /* fix explanation
- , after function dtx_fx, the "vad_flag" parameter can not be used for SID scheduling purposes any longer
+ /* fix explanation, after function dtx_fx, the "vad_flag" parameter can not be used for SID scheduling purposes any longer
as dtx_fx can schedules active frames even if the initial analyzed vad_flag is 0 )
in the worst case without the fix an active frame could be classified as SID frame, quite/very unlikley though
*/
@@ -162,18 +155,12 @@ void vad_param_updt_fx(
}
}
-
/* (voicing[0] + voicing[1] + voicing[2]) / 3 + corr_shift */
L_tmp = L_mult( st_fx->voicing_fx[0], 10923 );
L_tmp = L_mac( L_tmp, st_fx->voicing_fx[1], 10923 );
- L_tmp = L_mac( L_tmp, st_fx->voicing_fx[2], 10923 ); /*Q15 */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ L_tmp = L_mac( L_tmp, st_fx->voicing_fx[2], 10923 ); /*Q15 */
L_tmp = L_mac_sat( L_tmp, corr_shift_temp[i], 32767 ); /*Q15 */
voice_tmp = round_fx_sat( L_tmp ); /*Q15 */
-#else
- L_tmp = L_mac_o( L_tmp, corr_shift_temp[i], 32767, &Overflow ); /*Q15 */
- voice_tmp = round_fx_o( L_tmp, &Overflow ); /*Q15 */
-#endif
/* abs(pitch[0] - *pitO) + abs(pitch[1] - pitch[0]) + abs(pitch[2] - pitch[1]) */
pitch_tmp = abs_s( sub( st_fx->pitch[0], old_pitch1 ) ); /*Q0 */
diff --git a/lib_enc/vbr_average_rate_fx.c b/lib_enc/vbr_average_rate_fx.c
index 668dd06d7249339beaa3b5dc7b9894b2d5546172..f1f75a30a40dff5cef50c030d359d1bfd2fcabb4 100644
--- a/lib_enc/vbr_average_rate_fx.c
+++ b/lib_enc/vbr_average_rate_fx.c
@@ -47,13 +47,6 @@ void update_average_rate_fx(
Word16 tmp;
Word32 L_tmp;
Word32 L_tmp1, L_tmp2;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
Word16 exp, recip, Qrecip;
IF( EQ_16( hSC_VBR->numactive, RATEWIN ) ) /* goes into rate control only the numactive ==RATEWIN. So rate control is triggered after each RATEWIN avtive frames */
@@ -258,11 +251,8 @@ void update_average_rate_fx(
/* sum the total number of bits (in kbytes) * 10 here */
/*st->sum_of_rates += (hSC_VBR->core_brate / 1000.0f) * 10; */
L_tmp = L_shl( Mult_32_16( core_brate_fx, 20972 ), 7 ); /*Q13*/
-#ifdef ISSUE_1867_replace_overflow_libenc
hSC_VBR->sum_of_rates_fx = L_add_sat( hSC_VBR->sum_of_rates_fx, L_tmp );
-#else
- hSC_VBR->sum_of_rates_fx = L_add_o( hSC_VBR->sum_of_rates_fx, L_tmp, &Overflow );
-#endif
move32();
+
return;
}
diff --git a/lib_enc/vlpc_2st_cod_fx.c b/lib_enc/vlpc_2st_cod_fx.c
index 3f56add3986225e0cede5f6931e97488e3b150df..6db7cd3ef6e350ce3cced4767ed7bffb466cd9a6 100644
--- a/lib_enc/vlpc_2st_cod_fx.c
+++ b/lib_enc/vlpc_2st_cod_fx.c
@@ -30,13 +30,6 @@ Word16 vlpc_2st_cod_fx( /* output: number of allocated bits
Word16 nq, xq[M];
Word32 L_tmp;
Word16 gap;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
-
/* 0 bit with true weighting: save 0.5 bit */
lsf_weight_2st( lsf, w, 1 ); /*w:0Q15*1.28*/
@@ -59,11 +52,7 @@ Word16 vlpc_2st_cod_fx( /* output: number of allocated bits
BASOP_SATURATE_WARNING_OFF_EVS /* Allow saturate because we only need to know if the result is smaller than 8.0f */
FOR( i = 1; i < M; i++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
L_tmp = L_mac_sat( L_tmp, x[i], x[i] ); /*10Q21*/
-#else
- L_tmp = L_mac_o( L_tmp, x[i], x[i], &Overflow ); /*10Q21*/
-#endif
}
BASOP_SATURATE_WARNING_ON_EVS
diff --git a/lib_enc/voiced_enc_fx.c b/lib_enc/voiced_enc_fx.c
index 705c5f6ea255eff5edc483d8c5fccfdcd8b80075..a78ec7648031fa923d47c90b184a8b6aeab61ca6 100644
--- a/lib_enc/voiced_enc_fx.c
+++ b/lib_enc/voiced_enc_fx.c
@@ -123,12 +123,6 @@ ivas_error ppp_voiced_encoder_fx(
Word32 low_band_en_fx;
Word32 curr_Engy, prev_Engy;
Word16 temp_Fs;
-#if !defined( ISSUE_1867_replace_overflow_libenc )
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
DTFS_STRUCTURE *CURRP_NQ_FX;
DTFS_STRUCTURE *TMPDTFS_FX;
DTFS_STRUCTURE *TMPDTFS2_FX;
@@ -566,11 +560,7 @@ ivas_error ppp_voiced_encoder_fx(
/*if ( res_enratio > 5.0 && tmp < 0.65 ) */
/* 5 in Q11, 0.65 in Q15 // L_shl(tmp_fx,sub(31,Qtmp)) makes tmp_fx FIXED Q31 */
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( ( GT_32( res_enratio_fx, 10240 ) ) && ( LT_16( extract_h( L_shl_sat( tmp_fx, sub( 31, Qtmp ) ) ), 21299 ) ) )
-#else
- if ( ( GT_32( res_enratio_fx, 10240 ) ) && ( LT_16( extract_h( L_shl_o( tmp_fx, sub( 31, Qtmp ), &Overflow ) ), 21299 ) ) )
-#endif
{
PPP_MODE_E = 'B';
move16();
@@ -581,11 +571,7 @@ ivas_error ppp_voiced_encoder_fx(
/* if ( res_enratio > 3.0 && tmp < 1.2 ) */
/*3 in Q11, 1.2 in Q14 // L_shl(tmp_fx,sub(31,Qtmp)) makes tmp_fx FIXED Q14 */
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( ( GT_32( res_enratio_fx, 6144 ) ) && ( LT_16( extract_h( L_shl_sat( tmp_fx, sub( 30, Qtmp ) ) ), 19661 ) ) )
-#else
- if ( ( GT_32( res_enratio_fx, 6144 ) ) && ( LT_16( extract_h( L_shl_o( tmp_fx, sub( 30, Qtmp ), &Overflow ) ), 19661 ) ) )
-#endif
{
PPP_MODE_E = 'B';
move16();
@@ -599,12 +585,7 @@ ivas_error ppp_voiced_encoder_fx(
IF( LT_16( shl_sat( hSC_VBR->vadsnr_fx, 1 ), hSC_VBR->SNR_THLD_fx ) ) /*Q8 */
{
/* if (res_enratio < 0.025) */
-#ifdef ISSUE_1867_replace_overflow_libenc
- IF( LT_32( L_shl_sat( res_enratio_fx, 4 ), 819 ) )
- /*0x0333 = 0.025 in Q15, res_enratio_fx in Q15 after shl 4 */
-#else
- IF( LT_32( L_shl_o( res_enratio_fx, 4, &Overflow ), 819 ) ) /*0x0333 = 0.025 in Q15, res_enratio_fx in Q15 after shl 4 */
-#endif
+ IF( LT_32( L_shl_sat( res_enratio_fx, 4 ), 819 ) ) /*0x0333 = 0.025 in Q15, res_enratio_fx in Q15 after shl 4 */
{
hSC_VBR->bump_up = 1;
move16();
@@ -620,11 +601,7 @@ ivas_error ppp_voiced_encoder_fx(
ELSE
{
/* if ( res_enratio < 0.092f) */
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( LT_32( L_shl_sat( res_enratio_fx, 4 ), 3015 ) ) /*3015 = 0.092 in Q15, res_enratio_fx in Q15 after shl 4 */
-#else
- if ( LT_32( L_shl_o( res_enratio_fx, 4, &Overflow ), 3015 ) ) /*3015 = 0.092 in Q15, res_enratio_fx in Q15 after shl 4 */
-#endif
{
hSC_VBR->bump_up = 1;
move16();
@@ -633,12 +610,7 @@ ivas_error ppp_voiced_encoder_fx(
/* if (min(res_enratio, sp_enratio) < 0.075 && tmp < -0.5f)) : 2458 = 0.075 in Q15 */
test();
-#ifdef ISSUE_1867_replace_overflow_libenc
if ( LT_32( L_min( L_shl_sat( res_enratio_fx, 4 ), sp_enratio_fx ), 2458 ) && LT_32( tmp_fx, shl_sat( -1, sub( Qtmp, 1 ) ) ) )
-#else
-
- if ( LT_32( L_min( L_shl_o( res_enratio_fx, 4, &Overflow ), sp_enratio_fx ), 2458 ) && LT_32( tmp_fx, shl_sat( -1, sub( Qtmp, 1 ) ) ) )
-#endif
{
hSC_VBR->bump_up = 1;
move16();
@@ -757,11 +729,7 @@ ivas_error ppp_voiced_encoder_fx(
Ltemp1 = L_negate( Ltemp1 );
}
expa = norm_l( Ltemp2 );
-#ifdef ISSUE_1867_replace_overflow_libenc
fraca = extract_h( L_shl( Ltemp2, expa ) );
-#else
- fraca = extract_h( L_shl_o( Ltemp2, expa, &Overflow ) );
-#endif
expa = sub( 30, expa );
expb = norm_l( Ltemp1 );
@@ -774,11 +742,7 @@ ivas_error ppp_voiced_encoder_fx(
tmp = div_s( fracb, fraca );
exp = sub( expb, expa );
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltemp_fx = L_shl_sat( tmp, add( exp, 14 ) );
-#else
- Ltemp_fx = L_shl_o( tmp, add( exp, 14 ), &Overflow );
-#endif
/*-------------------------------------------*/
sp_hb_enratio_fx = L_add( Ltemp_fx, 0 ); /* Q29 */
}
@@ -802,11 +766,7 @@ ivas_error ppp_voiced_encoder_fx(
move32();
Qadj = sub( hSC_VBR->Q_prev_cw_en_fx, shl( CURRP_NQ_FX->Q, 1 ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp_32 = L_shl_sat( Ltmp_32, Qadj ); /* shift left required to adjust Q of CURRP_NQ_FX = Q_prev_cw_en_fx */
-#else
- Ltmp_32 = L_shl_o( Ltmp_32, Qadj, &Overflow ); /* shift left required to adjust Q of CURRP_NQ_FX = Q_prev_cw_en_fx */
-#endif
/* Ltmp1_32 = 0.8f * st->prev_cw_en */
Ltmp1_32 = Mult_32_16( hSC_VBR->prev_cw_en_fx, 26214 ); /* Q = (Q_prev_cw_en_fx + Q15+1)-Q16 = Q_prev_cw_en_fx */
@@ -911,11 +871,7 @@ ivas_error ppp_voiced_encoder_fx(
/* compute energy of impz */
FOR( x_fx = 0; x_fx < 160; x_fx++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
energy_impz_fx = L_add_sat( energy_impz_fx, L_mult0( impzo_fx[x_fx], impzo_fx[x_fx] ) );
-#else
- energy_impz_fx = L_add_o( energy_impz_fx, L_mult0( impzo_fx[x_fx], impzo_fx[x_fx] ), &Overflow );
-#endif
}
/*energy_impz = (float)(10*log10((float)energy_impz)); */
@@ -929,11 +885,7 @@ ivas_error ppp_voiced_encoder_fx(
Ltmp_32 = DTFS_getEngy_fx( CURRP_Q_E_FX ); /*Q = 2*(CURRP_Q_E_FX->Q) */
move32();
Qadj = sub( hSC_VBR->Q_prev_cw_en_fx, shl( CURRP_Q_E_FX->Q, 1 ) );
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltmp_32 = L_shl_sat( Ltmp_32, Qadj ); /* shift left required to adjust Q of CURRP_Q_E_FX = Q_prev_cw_en_fx */
-#else
- Ltmp_32 = L_shl_o( Ltmp_32, Qadj, &Overflow ); /* shift left required to adjust Q of CURRP_Q_E_FX = Q_prev_cw_en_fx */
-#endif
/* if ((DTFS_getEngy(*CURRP_Q_E) > st->prev_cw_en)&&(max(pos_q,neg_q)>3.5) && energy_impz>15.0 && tmpres>0.7) */
test();
test();
@@ -995,13 +947,9 @@ ivas_error ppp_voiced_encoder_fx(
fracb = shl( fracb, scale );
expb = sub( expb, scale );
- tmp = div_s( fracb, fraca ); /* tmp in Q15 */
- exp = sub( expb, expa ); /* ans = tmp*2^(exp) */
-#ifdef ISSUE_1867_replace_overflow_libenc
+ tmp = div_s( fracb, fraca ); /* tmp in Q15 */
+ exp = sub( expb, expa ); /* ans = tmp*2^(exp) */
Ltemp_fx = L_shl_sat( tmp, add( exp, 12 ) ); /* make tmp Q27 */
-#else
- Ltemp_fx = L_shl_o( tmp, add( exp, 12 ), &Overflow ); /* make tmp Q27 */
-#endif
}
test();
IF( GT_32( Ltemp_fx, 6710886 ) && ( !hSC_VBR->rate_control ) ) /* 0.05 in Q27 = 6710886 */
@@ -1037,11 +985,7 @@ ivas_error ppp_voiced_encoder_fx(
tmp = div_s( fracb, fraca );
exp = sub( expb, expa );
-#ifdef ISSUE_1867_replace_overflow_libenc
Ltemp_fx = L_shl_sat( tmp, add( exp, 14 ) ); /* answer in Q29 */
-#else
- Ltemp_fx = L_shl_o( tmp, add( exp, 14 ), &Overflow ); /* answer in Q29 */
-#endif
}
/*-------------------------------------------*/
@@ -1109,11 +1053,7 @@ ivas_error ppp_voiced_encoder_fx(
exp = sub( 30, add( expa, sub( 31, exp ) ) );
frac = Log2_norm_lc( L_tmp );
L_tmp = Mpy_32_16( exp, frac, 12330 ); /* L_tmp is always Q13 */
-#ifdef ISSUE_1867_replace_overflow_libenc
- Ltemp = L_shl_sat( L_tmp, 10 ); /* Ltemp is always Q23 */
-#else
- Ltemp = L_shl_o( L_tmp, 10, &Overflow ); /* Ltemp is always Q23 */
-#endif
+ Ltemp = L_shl_sat( L_tmp, 10 ); /* Ltemp is always Q23 */
}
ELSE
{
@@ -1296,12 +1236,7 @@ static void synthesis_filter_fx( Word16 b[], Word16 x[], Word16 y[], Word16 buf[
{
Word32 acc;
Word16 i, j;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
FOR( i = 0; i < N; i++ )
{
acc = L_deposit_h( *x++ ); /*Q16 */
@@ -1310,28 +1245,15 @@ static void synthesis_filter_fx( Word16 b[], Word16 x[], Word16 y[], Word16 buf[
FOR( j = P - 1; j > 0; j-- )
{
/* acc = L_sub(acc, L_mult(memory[j], coef[j])); */
-#ifdef ISSUE_1867_replace_overflow_libenc
acc = L_msu_sat( acc, buf[j], b[j] ); /*Q13 */
-#else
- acc = L_msu_o( acc, buf[j], b[j], &Overflow ); /*Q13 */
-#endif
buf[j] = buf[j - 1];
move16();
}
/* acc = L_sub(acc, L_mult(memory[0], coef[0])); */
-#ifdef ISSUE_1867_replace_overflow_libenc
acc = L_msu_sat( acc, buf[0], b[0] );
acc = L_shl_sat( acc, 3 );
*y++ = round_fx_sat( acc );
buf[0] = round_fx_sat( acc );
-#else
- acc = L_msu_o( acc, buf[0], b[0], &Overflow );
- acc = L_shl_o( acc, 3, &Overflow );
-
- *y++ = round_fx_o( acc, &Overflow );
-
- buf[0] = round_fx_o( acc, &Overflow );
-#endif
move16();
move16();
}
@@ -1376,12 +1298,7 @@ static Word32 DTFS_freq_corr_fx(
Word16 exp, tmp;
Word32 L_tmp;
Word16 Q_num, Q_den;
-#if !defined( ISSUE_1867_replace_overflow_libenc )
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
IF( LT_16( X1_DTFS_fx.lag_fx, X2_DTFS_fx.lag_fx ) )
{
DTFS_zeroPadd_fx( X2_DTFS_fx.lag_fx, &X1_DTFS_fx );
@@ -1416,13 +1333,8 @@ static Word32 DTFS_freq_corr_fx(
FOR( k = lk; k < hk; k++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
corr_fx = L_mac0_sat( corr_fx, X1_DTFS_fx.a_fx[k], X2_DTFS_fx.a_fx[k] ); /* Q(1) */
corr_fx = L_mac0_sat( corr_fx, X1_DTFS_fx.b_fx[k], X2_DTFS_fx.b_fx[k] ); /* Q(1) */
-#else
- corr_fx = L_mac0_o( corr_fx, X1_DTFS_fx.a_fx[k], X2_DTFS_fx.a_fx[k], &Overflow ); /* Q(1) */
- corr_fx = L_mac0_o( corr_fx, X1_DTFS_fx.b_fx[k], X2_DTFS_fx.b_fx[k], &Overflow ); /* Q(1) */
-#endif
}
Qr = norm_l( corr_fx );
@@ -1432,12 +1344,8 @@ static Word32 DTFS_freq_corr_fx(
move16();
}
-#ifdef ISSUE_1867_replace_overflow_libenc
E1_fx = round_fx_sat( L_shl_sat( corr_fx, Qr ) ); /* Q(Qr-16) */
-#else
- E1_fx = round_fx_o( L_shl_o( corr_fx, Qr, &Overflow ), &Overflow ); /* Q(Qr-16) */
-#endif
- Num = L_mult0( E1_fx, E1_fx ); /* Q(2+2*Qr-32+1) */
+ Num = L_mult0( E1_fx, E1_fx ); /* Q(2+2*Qr-32+1) */
Q_num = sub( shl( add( add( X1_DTFS_fx.Q, X2_DTFS_fx.Q ), Qr ), 1 ), 32 );
/* PORTING: Handling the functions with variable no. of arguments */
@@ -1450,11 +1358,7 @@ static Word32 DTFS_freq_corr_fx(
move16();
}
-#ifdef ISSUE_1867_replace_overflow_libenc
E1_fx = round_fx_sat( L_shl_sat( E_fx, q1 ) ); /* Q(1+q1-16) */
-#else
- E1_fx = round_fx_o( L_shl_o( E_fx, q1, &Overflow ), &Overflow ); /* Q(1+q1-16) */
-#endif
/* PORTING: Handling the functions with variable no. of arguments */
E_fx = DTFS_getEngy_band_fx( X2_DTFS_fx, lband, hband ); /* Q(1) */
q2 = norm_l( E_fx );
@@ -1464,12 +1368,8 @@ static Word32 DTFS_freq_corr_fx(
move16();
}
-#ifdef ISSUE_1867_replace_overflow_libenc
E2_fx = round_fx_sat( L_shl_sat( E_fx, q2 ) ); /* Q(1+q2-16) */
-#else
- E2_fx = round_fx_o( L_shl_o( E_fx, q2, &Overflow ), &Overflow ); /* Q(1+q2-16) */
-#endif
- Den = L_mult0( E1_fx, E2_fx ); /* Q(2+q1+q2-32+1) */
+ Den = L_mult0( E1_fx, E2_fx ); /* Q(2+q1+q2-32+1) */
Q_den = sub( add( shl( add( X2_DTFS_fx.Q, X1_DTFS_fx.Q ), 1 ), add( q1, q2 ) ), 32 );
Num = L_max( Num, 1 );
@@ -1483,25 +1383,14 @@ static Word32 DTFS_freq_corr_fx(
}
ELSE
{
-
expa = norm_l( Num );
-#ifdef ISSUE_1867_replace_overflow_libenc
fraca = extract_h( L_shl_sat( Num, expa ) );
-#else
- fraca = extract_h( L_shl_o( Num, expa, &Overflow ) );
-#endif
expa = sub( 30, add( expa, Q_num ) );
-
expb = norm_l( Den );
-#ifdef ISSUE_1867_replace_overflow_libenc
fracb = round_fx_sat( L_shl( Den, expb ) );
-#else
- fracb = round_fx_o( L_shl_o( Den, expb, &Overflow ), &Overflow );
-#endif
expb = sub( 30, add( expb, Q_den ) );
-
scale = shr( sub( fraca, fracb ), 15 );
fracb = shl_sat( fracb, scale );
expb = sub( expb, scale );
@@ -1521,8 +1410,11 @@ static Word32 DTFS_freq_corr_fx(
*Qout = sub( 30, exp );
move16();
}
+
return Result;
}
+
+
/*===================================================================*/
/* FUNCTION : DTFS_alignment_extract_td_fx () */
/*-------------------------------------------------------------------*/
@@ -1547,12 +1439,7 @@ static Word16 DTFS_alignment_extract_td_fx( Word16 *x1, Word16 *x2, Word16 lag )
{
Word16 j, k, idx, Adiff_fx;
Word32 maxcorr, corr;
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
maxcorr = L_add( MIN_32, 0 );
Adiff_fx = (Word16) ( s_max( 4, shr( lag, 3 ) ) );
@@ -1563,11 +1450,7 @@ static Word16 DTFS_alignment_extract_td_fx( Word16 *x1, Word16 *x2, Word16 lag )
corr = L_deposit_l( 0 );
FOR( k = 0; k < lag; k++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
corr = L_mac_sat( corr, x1[k], x2[( k - j + lag ) % lag] );
-#else
- corr = L_mac_o( corr, x1[k], x2[( k - j + lag ) % lag], &Overflow );
-#endif
}
IF( GT_32( corr, maxcorr ) )
{
@@ -1610,15 +1493,11 @@ static Word32 DTFS_getEngy_band_fx(
Word32 freq_fx, L_lband, L_hband;
Word32 en_fx = 0;
move32();
-#ifndef ISSUE_1867_replace_overflow_libenc
-#ifdef BASOP_NOGLOB_DECLARE_LOCAL
- Flag Overflow = 0;
- move32();
-#endif
-#endif
+
L_lband = L_mult( lband, X_fx.lag_fx ); /* Q0 * Q0 -> Q1 */
L_hband = L_mult( hband, X_fx.lag_fx ); /* Q0 * Q0 -> Q1 */
HalfLag = s_min( shr( sub( X_fx.lag_fx, 1 ), 1 ), X_fx.nH_4kHz_fx );
+
/* get lband and hband */
FOR( k = 1; k <= HalfLag; k++ )
{
@@ -1643,13 +1522,8 @@ static Word32 DTFS_getEngy_band_fx(
FOR( k = lk; k < hk; k++ )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
en_fx = L_mac0_sat( en_fx, X_fx.a_fx[k], X_fx.a_fx[k] ); /* 2*X1.Q+1 */
en_fx = L_mac0_sat( en_fx, X_fx.b_fx[k], X_fx.b_fx[k] );
-#else
- en_fx = L_mac0_o( en_fx, X_fx.a_fx[k], X_fx.a_fx[k], &Overflow ); /* 2*X1.Q+1 */
- en_fx = L_mac0_o( en_fx, X_fx.b_fx[k], X_fx.b_fx[k], &Overflow );
-#endif
}
if ( lband == 0 )
@@ -1661,17 +1535,14 @@ static Word32 DTFS_getEngy_band_fx(
test();
IF( ( s_and( X_fx.lag_fx, 1 ) == 0 ) && ( hband == X_fx.upper_cut_off_freq_fx ) )
{
-#ifdef ISSUE_1867_replace_overflow_libenc
en_fx = L_mac0_sat( en_fx, X_fx.a_fx[k], X_fx.a_fx[k] );
en_fx = L_mac0_sat( en_fx, X_fx.b_fx[k], X_fx.b_fx[k] );
-#else
- en_fx = L_mac0_o( en_fx, X_fx.a_fx[k], X_fx.a_fx[k], &Overflow );
- en_fx = L_mac0_o( en_fx, X_fx.b_fx[k], X_fx.b_fx[k], &Overflow );
-#endif
}
return en_fx; /* 2*X1.Q */
}
+
+
/*---------------------------------------------------------------------*
* sc_vbr_enc_init_fx()
*
diff --git a/lib_isar/isar_cnst.h b/lib_isar/isar_cnst.h
index 9e8793130d395b65f0a5e54829995d79f426a9e3..40d6c393857ee28145728999a52dfded680ec8db 100644
--- a/lib_isar/isar_cnst.h
+++ b/lib_isar/isar_cnst.h
@@ -139,7 +139,7 @@ typedef enum
#define ISAR_SPLIT_REND_ROT_AXIS_BITS 3
#define ISAR_SPLIT_REND_RO_FLAG_BITS 1
-#define IVAS_LC3PLUS_MAX_NUM_DECODERS 2
+#define ISAR_LC3PLUS_MAX_NUM_DECODERS 2
/*----------------------------------------------------------------------------------*
* Split rendering bitrate constants
diff --git a/lib_isar/isar_lc3plus_dec.c b/lib_isar/isar_lc3plus_dec.c
index 38371d1343b81d0c4c484f9d29f3f78f00cdff85..279daee41d351702c6c9aee5a65d8858deea9651 100644
--- a/lib_isar/isar_lc3plus_dec.c
+++ b/lib_isar/isar_lc3plus_dec.c
@@ -67,9 +67,9 @@ ivas_error ISAR_LC3PLUS_DEC_Open(
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for LC3plus wrapper handle\n" );
}
- if ( config.channels > IVAS_LC3PLUS_MAX_NUM_DECODERS )
+ if ( config.channels > ISAR_LC3PLUS_MAX_NUM_DECODERS )
{
- return IVAS_ERROR( IVAS_ERR_INIT_ERROR, "Maximum number of channels exceeds IVAS_LC3PLUS_MAX_NUM_DECODERS\n" );
+ return IVAS_ERROR( IVAS_ERR_INIT_ERROR, "Maximum number of channels exceeds ISAR_LC3PLUS_MAX_NUM_DECODERS\n" );
}
diff --git a/lib_isar/isar_splitRendererPLC.c b/lib_isar/isar_splitRendererPLC.c
index 60eeff74646131f51385c5ceb22327a587dcd128..d807a26e6ea2eebbd5a35efbadce5d281a56e74c 100644
--- a/lib_isar/isar_splitRendererPLC.c
+++ b/lib_isar/isar_splitRendererPLC.c
@@ -1277,8 +1277,8 @@ void isar_splitBinRendPLC(
{
FOR( k = 0; k < iNumCols; k++ )
{
- v_multc_fixed( &Cldfb_RealBuffer_Binaural_fx[n][k][0], fade_fac_fx, &Cldfb_RealBuffer_Binaural_fx[n][k][0], (Word16) CLDFB_NO_CHANNELS_MAX );
- v_multc_fixed( &Cldfb_ImagBuffer_Binaural_fx[n][k][0], fade_fac_fx, &Cldfb_ImagBuffer_Binaural_fx[n][k][0], (Word16) CLDFB_NO_CHANNELS_MAX );
+ v_multc_fx( &Cldfb_RealBuffer_Binaural_fx[n][k][0], fade_fac_fx, &Cldfb_RealBuffer_Binaural_fx[n][k][0], (Word16) CLDFB_NO_CHANNELS_MAX );
+ v_multc_fx( &Cldfb_ImagBuffer_Binaural_fx[n][k][0], fade_fac_fx, &Cldfb_ImagBuffer_Binaural_fx[n][k][0], (Word16) CLDFB_NO_CHANNELS_MAX );
}
}
}
diff --git a/lib_isar/isar_stat.h b/lib_isar/isar_stat.h
index 9cfc24e5ace2249bd5dc97757eedd7f3bd58b460..351cb4525e3d9f46914c5456e29a444e21c2480c 100644
--- a/lib_isar/isar_stat.h
+++ b/lib_isar/isar_stat.h
@@ -48,9 +48,9 @@
* ISAR post rend constants
*-------------------------------------------------------------------*/
-#define MAX_CLDFB_BUFFER_LENGTH_PER_CHANNEL ( MAX_BUFFER_LENGTH_PER_CHANNEL * 2 )
+#define MAX_CLDFB_BUFFER_LENGTH_PER_CHANNEL ( L_FRAME_MAX * 2 )
#define MAX_CLDFB_BUFFER_LENGTH ( MAX_CLDFB_BUFFER_LENGTH_PER_CHANNEL * MAX_INPUT_CHANNELS )
-#define MAX_BIN_BUFFER_LENGTH ( MAX_BUFFER_LENGTH_PER_CHANNEL * BINAURAL_CHANNELS )
+#define MAX_BIN_BUFFER_LENGTH ( L_FRAME_MAX * BINAURAL_CHANNELS )
#define MAX_CLDFB_BIN_BUFFER_LENGTH ( MAX_CLDFB_BUFFER_LENGTH_PER_CHANNEL * BINAURAL_CHANNELS )
/*-------------------------------------------------------------------*
diff --git a/lib_isar/lib_isar_post_rend.c b/lib_isar/lib_isar_post_rend.c
index 5ee7f4a167ca31924f6400155ccc7331a164c961..8178663ce2c087d88d568880e5f4c7bf01f8355e 100644
--- a/lib_isar/lib_isar_post_rend.c
+++ b/lib_isar/lib_isar_post_rend.c
@@ -1039,8 +1039,12 @@ ivas_error ISAR_POST_REND_FeedInputAudio(
cldfb2tdSampleFact = ( inputAudio.config.is_cldfb ) ? 2 : 1;
- IF( LE_16( inputAudio.config.numSamplesPerChannel, 0 ) || ( LT_16( MAX_BUFFER_LENGTH_PER_CHANNEL, inputAudio.config.numSamplesPerChannel ) && EQ_16( inputAudio.config.is_cldfb, 0 ) ) ||
- ( LT_16( DEPR_i_mult( MAX_BUFFER_LENGTH_PER_CHANNEL, cldfb2tdSampleFact ), inputAudio.config.numSamplesPerChannel ) && EQ_16( inputAudio.config.is_cldfb, 1 ) ) )
+ test();
+ test();
+ test();
+ test();
+ IF( LE_16( inputAudio.config.numSamplesPerChannel, 0 ) || ( LT_16( L_FRAME_MAX, inputAudio.config.numSamplesPerChannel ) && EQ_16( inputAudio.config.is_cldfb, 0 ) ) ||
+ ( LT_16( DEPR_i_mult( L_FRAME_MAX, cldfb2tdSampleFact ), inputAudio.config.numSamplesPerChannel ) && EQ_16( inputAudio.config.is_cldfb, 1 ) ) )
{
return IVAS_ERROR( IVAS_ERR_INVALID_BUFFER_SIZE, "Buffer size outside of supported range" );
}
@@ -1118,11 +1122,7 @@ ivas_error ISAR_POST_REND_InitConfig(
hIvasRend->splitRenderConfig.isar_frame_size_ms = 0; /* 0 means "use default for selected codec" */
hIvasRend->splitRenderConfig.codec = ISAR_SPLIT_REND_CODEC_DEFAULT;
hIvasRend->splitRenderConfig.poseCorrectionMode = ISAR_SPLIT_REND_POSE_CORRECTION_MODE_CLDFB;
-#ifdef FIX_HRTF_LOAD
hIvasRend->splitRenderConfig.rendererSelection = IVAS_BIN_RENDERER_TYPE_DEFAULT;
-#else
- hIvasRend->splitRenderConfig.rendererSelection = ISAR_SPLIT_REND_RENDERER_SELECTION_DEFAULT;
-#endif
}
return IVAS_ERR_OK;
@@ -1633,10 +1633,10 @@ static ivas_error renderInputSplitBin(
splitBinInput->base.numNewSamplesPerChannel = 0;
/* Apply input gain to new audio */
- v_multc_fixed( inAudio.data_fx,
- splitBinInput->base.gain_fx,
- inAudio.data_fx,
- inAudio.config.numSamplesPerChannel * inAudio.config.numChannels );
+ v_multc_fx( inAudio.data_fx,
+ splitBinInput->base.gain_fx,
+ inAudio.data_fx,
+ inAudio.config.numSamplesPerChannel * inAudio.config.numChannels );
SWITCH( outConfig )
{
@@ -1703,8 +1703,12 @@ ivas_error ISAR_POST_REND_getSamples(
cldfb2tdSampleFact = ( outAudio.config.is_cldfb ) ? 2 : 1;
- IF( outAudio.config.numSamplesPerChannel <= 0 || ( MAX_BUFFER_LENGTH_PER_CHANNEL < outAudio.config.numSamplesPerChannel && outAudio.config.is_cldfb == 0 ) ||
- ( ( MAX_BUFFER_LENGTH_PER_CHANNEL * cldfb2tdSampleFact ) < outAudio.config.numSamplesPerChannel && outAudio.config.is_cldfb == 1 ) )
+ test();
+ test();
+ test();
+ test();
+ IF( outAudio.config.numSamplesPerChannel <= 0 || ( L_FRAME_MAX < outAudio.config.numSamplesPerChannel && outAudio.config.is_cldfb == 0 ) ||
+ ( ( L_FRAME_MAX * cldfb2tdSampleFact ) < outAudio.config.numSamplesPerChannel && outAudio.config.is_cldfb == 1 ) )
{
return IVAS_ERR_INVALID_BUFFER_SIZE;
}
diff --git a/lib_isar/lib_isar_pre_rend.c b/lib_isar/lib_isar_pre_rend.c
index da4f6542f69b0cfefab4404a2182a7672c1731d3..1ba5cafc4ed0bfb5c5e7b8502b92475e80997521 100644
--- a/lib_isar/lib_isar_pre_rend.c
+++ b/lib_isar/lib_isar_pre_rend.c
@@ -119,8 +119,8 @@ ivas_error ISAR_PRE_REND_open(
FOR( ch = 0; ch < num_ch; ch++ )
{
- if ( ( error = openCldfb_ivas_fx( &( hSplitRendWrapper->hCldfbHandles->cldfbAna[ch] ),
- CLDFB_ANALYSIS, OutSampleRate, CLDFB_PROTOTYPE_5_00MS, DEC ) ) != IVAS_ERR_OK )
+ IF( ( error = openCldfb_ivas_fx( &( hSplitRendWrapper->hCldfbHandles->cldfbAna[ch] ),
+ CLDFB_ANALYSIS, OutSampleRate, CLDFB_PROTOTYPE_5_00MS, DEC ) ) != IVAS_ERR_OK )
{
return error;
}
@@ -152,7 +152,7 @@ ivas_error ISAR_PRE_REND_open(
{
IF( EQ_16( pSplitRendConfig->codec, ISAR_SPLIT_REND_CODEC_LC3PLUS ) )
{
- if ( ( error = split_renderer_open_lc3plus( hSplitRendWrapper, pSplitRendConfig, OutSampleRate, ivas_frame_size ) ) != IVAS_ERR_OK )
+ IF( ( error = split_renderer_open_lc3plus( hSplitRendWrapper, pSplitRendConfig, OutSampleRate, ivas_frame_size ) ) != IVAS_ERR_OK )
{
return error;
}
diff --git a/lib_lc3plus/lc3.c b/lib_lc3plus/lc3.c
index 2d3fbb51e171c3d1c86d7b9fd57b31930687d369..e8a73aec84ba5e03673a8bd14618fe963c4f597e 100644
--- a/lib_lc3plus/lc3.c
+++ b/lib_lc3plus/lc3.c
@@ -121,9 +121,9 @@ static int null_in_list(void **list, int n)
/* return pointer to aligned base + base_size, *base_size += size + 4 bytes align */
void *balloc(void *base, size_t *base_size, size_t size)
{
- uintptr_t ptr = ((uintptr_t)base + *base_size + 3) & ~3;
+ uintptr_t ptr = ((uintptr_t)base + *base_size + 3) & (uintptr_t)(~3);
assert((uintptr_t)base % 4 == 0); /* base must be 4-byte aligned */
- *base_size = (*base_size + size + 3) & ~3;
+ *base_size = (*base_size + size + 3) & (uintptr_t)(~3);
return (void *)ptr;
}
diff --git a/lib_rend/ivas_crend_fx.c b/lib_rend/ivas_crend_fx.c
index 45d923b3e6f017a63292b87fa1df348db9a415ec..9c3379527d84ee278052b0ce8099af94674a623c 100644
--- a/lib_rend/ivas_crend_fx.c
+++ b/lib_rend/ivas_crend_fx.c
@@ -46,10 +46,7 @@
#include "debug.h"
#endif
-#define float_to_fix( n, factor ) ( round( n * ( 1 << factor ) ) )
-#define fix_to_float( n, factor ) ( (float) n / ( 1 << factor ) )
-#ifdef FIX_CREND_SIMPLIFY_CODE
/*-------------------------------------------------------------------------
* ivas_Crend_hrtf_init()
*
@@ -58,16 +55,6 @@
ivas_error ivas_Crend_hrtf_init_fx(
HRTFS_CREND_DATA *hHrtf /* i/o: HRTF handle */
-#else
-/*-------------------------------------------------------------------------
- * ivas_hrtf_init()
- *
- * Initialize hHrtf handle
- *------------------------------------------------------------------------*/
-
-ivas_error ivas_hrtf_init(
- HRTFS_DATA *hHrtf /* i/o: HRTF handle */
-#endif
)
{
Word16 i, j;
@@ -89,14 +76,12 @@ ivas_error ivas_hrtf_init(
move16();
move16();
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = 0;
move16();
hHrtf->factor_Q_inv_diffuse_weight = 0;
move16();
hHrtf->factor_Q_pOut_to_bin = 0;
move16();
-#endif
FOR( i = 0; i < MAX_INTERN_CHANNELS; i++ )
{
@@ -129,7 +114,6 @@ ivas_error ivas_hrtf_init(
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
/*-------------------------------------------------------------------------
* ivas_hrtf_open()
*
@@ -151,28 +135,6 @@ static ivas_error ivas_hrtf_open_fx(
}
IF( ( error = ivas_Crend_hrtf_init_fx( hHrtf ) ) != IVAS_ERR_OK )
-#else
-/*-------------------------------------------------------------------------
- * ivas_hrtf_open()
- *
- * Open hHrtf handle
- *------------------------------------------------------------------------*/
-static ivas_error ivas_hrtf_open_fx(
- HRTFS_HANDLE *hHrtf_out /* o : HRTF handle */
-)
-{
- HRTFS_HANDLE hHrtf;
- ivas_error error;
-
- IF( *hHrtf_out == NULL )
- {
- IF( ( hHrtf = (HRTFS_HANDLE) malloc( sizeof( HRTFS_DATA ) ) ) == NULL )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for SPAR decoder\n" );
- }
-
- IF( NE_32( ( error = ivas_hrtf_init( hHrtf ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -195,11 +157,7 @@ static ivas_error ivas_hrtf_open_fx(
*------------------------------------------------------------------------*/
static void ivas_hrtf_close(
-#ifdef FIX_CREND_SIMPLIFY_CODE
HRTFS_CREND_HANDLE *hHrtf /* i/o: Crend HRTF handle */
-#else
- HRTFS_HANDLE *hHrtf /* i/o: HRTF handle */
-#endif
)
{
test();
@@ -225,26 +183,14 @@ static ivas_error ivas_rend_initCrend_fx(
CREND_WRAPPER *pCrend,
const AUDIO_CONFIG inConfig,
const AUDIO_CONFIG outConfig,
-#ifdef FIX_CREND_SIMPLIFY_CODE
HRTFS_CREND_HANDLE hHrtfCrend,
const Word16 ext_rend_flag,
-#else
- HRTFS_CREND_HANDLE hSetOfHRTF,
-#endif
const Word32 output_Fs )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
Word16 i, j, tmp, tmp2;
-#else
- Word16 i, j, tmp;
-#endif
Word16 nchan_in;
IVAS_REND_AudioConfigType inConfigType;
-#ifdef FIX_CREND_SIMPLIFY_CODE
HRTFS_CREND_HANDLE hHrtf;
-#else
- HRTFS_HANDLE hHrtf;
-#endif
ivas_error error;
inConfigType = getAudioConfigType( inConfig );
@@ -266,7 +212,6 @@ static ivas_error ivas_rend_initCrend_fx(
IF( hHrtf == NULL )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
test();
IF( hHrtfCrend != NULL && ext_rend_flag == 0 )
{
@@ -291,12 +236,6 @@ static ivas_error ivas_rend_initCrend_fx(
move16();
}
}
-#else
- IF( NE_32( ivas_hrtf_open_fx( &hHrtf ), IVAS_ERR_OK ) )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for HRTF handle" );
- }
-#endif
}
IF( NE_32( ( error = getAudioConfigNumChannels( inConfig, &nchan_in ) ), IVAS_ERR_OK ) )
@@ -311,36 +250,8 @@ static ivas_error ivas_rend_initCrend_fx(
return IVAS_ERR_INTERNAL_FATAL;
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
IF( hHrtf->init_from_rom )
{
-#else
- test();
- test();
- test();
- test();
- test();
- test();
- test();
- test();
- test();
- test();
- test();
- test();
- test();
- test();
- test();
- IF( ( hSetOfHRTF == NULL ) ||
- ( ( hSetOfHRTF->hHRTF_hrir_combined == NULL ) && ( inConfigType == IVAS_REND_AUDIO_CONFIG_TYPE_CHANNEL_BASED ) && ( outConfig == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) ) ||
- ( ( hSetOfHRTF->hHRTF_hrir_combined == NULL ) && ( inConfigType == IVAS_REND_AUDIO_CONFIG_TYPE_CHANNEL_BASED ) && ( outConfig == IVAS_AUDIO_CONFIG_BINAURAL ) ) ||
- ( ( hSetOfHRTF->hHRTF_brir_combined == NULL ) && ( inConfigType == IVAS_REND_AUDIO_CONFIG_TYPE_CHANNEL_BASED ) && ( outConfig == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) ) ||
- ( ( hSetOfHRTF->hHRTF_hrir_foa == NULL ) && ( inConfig == IVAS_AUDIO_CONFIG_FOA ) ) ||
- ( ( hSetOfHRTF->hHRTF_hrir_hoa2 == NULL ) && ( inConfig == IVAS_AUDIO_CONFIG_HOA2 ) ) ||
- ( ( hSetOfHRTF->hHRTF_hrir_hoa3 == NULL ) && ( inConfig == IVAS_AUDIO_CONFIG_HOA3 ) ) )
- {
- hHrtf->init_from_rom = 1;
- move16();
-#endif
IF( EQ_32( inConfigType, IVAS_REND_AUDIO_CONFIG_TYPE_CHANNEL_BASED ) )
{
hHrtf->max_num_ir = sub( hHrtf->max_num_ir, 1 ); /* subtract LFE */
@@ -355,31 +266,25 @@ static ivas_error ivas_rend_initCrend_fx(
hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; // Q31
hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_48kHz; // Q0
hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_48kHz; // Q0
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_Combined_BRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_Combined_BRIR_inv_diffuse_weight_Q_48kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_Combined_BRIR_coeff_Q_48kHz_fx;
-#endif
}
ELSE
{
hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; // Q31
hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_48kHz; // Q0
hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_48kHz; // Q0
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_Combined_HRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_Combined_HRIR_inv_diffuse_weight_Q_48kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_Combined_HRIR_coeff_Q_48kHz_fx;
-#endif
}
move32();
move16();
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
move16();
move16();
move16();
-#endif
FOR( j = 0; j < BINAURAL_CHANNELS; j++ )
{
@@ -412,31 +317,25 @@ static ivas_error ivas_rend_initCrend_fx(
hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; // Q31
hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_32kHz; // Q0
hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_32kHz; // Q0
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_Combined_BRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_Combined_BRIR_inv_diffuse_weight_Q_32kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_Combined_BRIR_coeff_Q_32kHz_fx;
-#endif
}
ELSE
{
hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; // Q31
hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_32kHz; // Q0
hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_32kHz; // Q0
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_Combined_HRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_Combined_HRIR_inv_diffuse_weight_Q_32kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_Combined_HRIR_coeff_Q_32kHz_fx;
-#endif
}
move32();
move16();
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
move16();
move16();
move16();
-#endif
FOR( j = 0; j < BINAURAL_CHANNELS; j++ )
{
@@ -469,31 +368,25 @@ static ivas_error ivas_rend_initCrend_fx(
hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; // Q31
hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_16kHz;
hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_16kHz;
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_Combined_BRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_Combined_BRIR_inv_diffuse_weight_Q_16kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_Combined_BRIR_coeff_Q_16kHz_fx;
-#endif
}
ELSE
{
hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; // Q31
hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_16kHz;
hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_16kHz;
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_Combined_HRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_Combined_HRIR_inv_diffuse_weight_Q_16kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_Combined_HRIR_coeff_Q_16kHz_fx;
-#endif
}
move32();
move16();
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
move16();
move16();
move16();
-#endif
FOR( j = 0; j < BINAURAL_CHANNELS; j++ )
{
@@ -654,14 +547,12 @@ static ivas_error ivas_rend_initCrend_fx(
move32();
move16();
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_HOA3_HRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_HOA3_HRIR_inv_diffuse_weight_Q_48kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_HOA3_HRIR_coeff_Q_48kHz_fx;
move16();
move16();
move16();
-#endif
FOR( i = 0; i < hHrtf->max_num_ir; i++ )
{
@@ -701,14 +592,12 @@ static ivas_error ivas_rend_initCrend_fx(
move32();
move16();
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_HOA3_HRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_HOA3_HRIR_inv_diffuse_weight_Q_32kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_HOA3_HRIR_coeff_Q_32kHz_fx;
move16();
move16();
move16();
-#endif
FOR( i = 0; i < hHrtf->max_num_ir; i++ )
{
@@ -749,14 +638,12 @@ static ivas_error ivas_rend_initCrend_fx(
move32();
move16();
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_HOA3_HRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_HOA3_HRIR_inv_diffuse_weight_Q_16kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_HOA3_HRIR_coeff_Q_16kHz_fx;
move16();
move16();
move16();
-#endif
FOR( i = 0; i < hHrtf->max_num_ir; i++ )
{
@@ -805,14 +692,12 @@ static ivas_error ivas_rend_initCrend_fx(
move32();
move16();
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_HOA2_HRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_HOA2_HRIR_inv_diffuse_weight_Q_48kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_HOA2_HRIR_coeff_Q_48kHz_fx;
move16();
move16();
move16();
-#endif
FOR( i = 0; i < hHrtf->max_num_ir; i++ )
{
@@ -852,14 +737,12 @@ static ivas_error ivas_rend_initCrend_fx(
move32();
move16();
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_HOA2_HRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_HOA2_HRIR_inv_diffuse_weight_Q_32kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_HOA2_HRIR_coeff_Q_32kHz_fx;
move16();
move16();
move16();
-#endif
FOR( i = 0; i < hHrtf->max_num_ir; i++ )
{
@@ -900,14 +783,12 @@ static ivas_error ivas_rend_initCrend_fx(
move32();
move16();
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_HOA2_HRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_HOA2_HRIR_inv_diffuse_weight_Q_16kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_HOA2_HRIR_coeff_Q_16kHz_fx;
move16();
move16();
move16();
-#endif
FOR( i = 0; i < hHrtf->max_num_ir; i++ )
{
@@ -955,14 +836,12 @@ static ivas_error ivas_rend_initCrend_fx(
move32();
move16();
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_FOA_HRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_FOA_HRIR_inv_diffuse_weight_Q_48kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_FOA_HRIR_coeff_Q_48kHz_fx;
move16();
move16();
move16();
-#endif
FOR( i = 0; i < hHrtf->max_num_ir; i++ )
{
@@ -1002,14 +881,12 @@ static ivas_error ivas_rend_initCrend_fx(
move32();
move16();
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_FOA_HRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_FOA_HRIR_inv_diffuse_weight_Q_32kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_FOA_HRIR_coeff_Q_32kHz_fx;
move16();
move16();
move16();
-#endif
FOR( i = 0; i < hHrtf->max_num_ir; i++ )
{
@@ -1050,14 +927,12 @@ static ivas_error ivas_rend_initCrend_fx(
move32();
move16();
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
hHrtf->factor_Q_latency_s_fx = Q31 - CRendBin_FOA_HRIR_Q_latency_s_fx;
hHrtf->factor_Q_inv_diffuse_weight = Q15 - CRendBin_FOA_HRIR_inv_diffuse_weight_Q_16kHz_fx;
hHrtf->factor_Q_pOut_to_bin = Q15 - CRendBin_FOA_HRIR_coeff_Q_16kHz_fx;
move16();
move16();
move16();
-#endif
FOR( i = 0; i < hHrtf->max_num_ir; i++ )
{
@@ -1107,16 +982,12 @@ static ivas_error ivas_rend_initCrend_fx(
}
ELSE
{
-#ifndef FIX_CREND_SIMPLIFY_CODE
- hHrtf->init_from_rom = 0;
-#endif
IF( inConfigType == IVAS_REND_AUDIO_CONFIG_TYPE_CHANNEL_BASED )
{
hHrtf->max_num_ir = sub( hHrtf->max_num_ir, 1 ); /* subtract LFE */
move16();
hHrtf->gain_lfe_fx = GAIN_LFE_FX;
move16();
-#ifdef FIX_CREND_SIMPLIFY_CODE
}
IF( EQ_16( ext_rend_flag, 1 ) )
@@ -1237,247 +1108,6 @@ static ivas_error ivas_rend_initCrend_fx(
hHrtf->pOut_to_bin_re_fx[i][j] = hHrtfCrend->pOut_to_bin_re_fx[tmp][j];
hHrtf->pOut_to_bin_im_fx[i][j] = hHrtfCrend->pOut_to_bin_im_fx[tmp][j];
}
-#else
- IF( EQ_16( outConfig, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) )
- {
- IF( hSetOfHRTF->hHRTF_brir_combined == NULL )
- {
- return IVAS_ERROR( IVAS_ERR_INVALID_OUTPUT_FORMAT, "Invalid command wrong output format" );
- }
- hHrtf->latency_s_fx = hSetOfHRTF->hHRTF_brir_combined->latency_s_fx; // Q31
- hHrtf->max_num_iterations = hSetOfHRTF->hHRTF_brir_combined->max_num_iterations;
- hHrtf->index_frequency_max_diffuse = hSetOfHRTF->hHRTF_brir_combined->index_frequency_max_diffuse;
- }
- ELSE
- {
- IF( hSetOfHRTF->hHRTF_hrir_combined == NULL )
- {
- return IVAS_ERROR( IVAS_ERR_INVALID_OUTPUT_FORMAT, "Invalid command wrong output format" );
- }
- hHrtf->latency_s_fx = hSetOfHRTF->hHRTF_hrir_combined->latency_s_fx; // Q31
- hHrtf->max_num_iterations = hSetOfHRTF->hHRTF_hrir_combined->max_num_iterations;
- hHrtf->index_frequency_max_diffuse = hSetOfHRTF->hHRTF_hrir_combined->index_frequency_max_diffuse;
- }
- move32();
- move16();
- move16();
-
- FOR( j = 0; j < BINAURAL_CHANNELS; j++ )
- {
- IF( EQ_16( outConfig, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) )
- {
- hHrtf->num_iterations_diffuse[j] = hSetOfHRTF->hHRTF_brir_combined->num_iterations_diffuse[j];
- hHrtf->pIndex_frequency_max_diffuse[j] = hSetOfHRTF->hHRTF_brir_combined->pIndex_frequency_max_diffuse[j];
-
- hHrtf->pOut_to_bin_diffuse_re_fx[j] = hSetOfHRTF->hHRTF_brir_combined->pOut_to_bin_diffuse_re_fx[j]; // Q31
- hHrtf->pOut_to_bin_diffuse_im_fx[j] = hSetOfHRTF->hHRTF_brir_combined->pOut_to_bin_diffuse_im_fx[j]; // Q31
- }
- ELSE
- {
- hHrtf->num_iterations_diffuse[j] = hSetOfHRTF->hHRTF_hrir_combined->num_iterations_diffuse[j];
- hHrtf->pIndex_frequency_max_diffuse[j] = hSetOfHRTF->hHRTF_hrir_combined->pIndex_frequency_max_diffuse[j];
-
- hHrtf->pOut_to_bin_diffuse_re_fx[j] = hSetOfHRTF->hHRTF_hrir_combined->pOut_to_bin_diffuse_re_fx[j]; // Q31
- hHrtf->pOut_to_bin_diffuse_im_fx[j] = hSetOfHRTF->hHRTF_hrir_combined->pOut_to_bin_diffuse_im_fx[j]; // Q31
- }
- move32();
- move32();
- move16();
- move16();
- }
-
- FOR( i = 0; i < hHrtf->max_num_ir; i++ )
- {
- IF( EQ_16( inConfig, IVAS_AUDIO_CONFIG_5_1 ) )
- {
- tmp = channelIndex_CICP6[i];
- }
- ELSE IF( EQ_16( inConfig, IVAS_AUDIO_CONFIG_7_1 ) )
- {
- tmp = channelIndex_CICP12[i];
- }
- ELSE IF( EQ_16( inConfig, IVAS_AUDIO_CONFIG_5_1_2 ) )
- {
- tmp = channelIndex_CICP14[i];
- }
- ELSE IF( EQ_16( inConfig, IVAS_AUDIO_CONFIG_5_1_4 ) )
- {
- tmp = channelIndex_CICP16[i];
- }
- ELSE IF( EQ_16( inConfig, IVAS_AUDIO_CONFIG_7_1_4 ) )
- {
- tmp = channelIndex_CICP19[i];
- }
- ELSE
- {
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Error: Channel configuration not specified!\n\n" );
- }
- move16();
- FOR( j = 0; j < BINAURAL_CHANNELS; j++ )
- {
- IF( EQ_16( outConfig, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) )
- {
- hHrtf->inv_diffuse_weight_fx[j][i] = hSetOfHRTF->hHRTF_brir_combined->inv_diffuse_weight_fx[j][tmp];
- move16();
- hHrtf->num_iterations[i][j] = hSetOfHRTF->hHRTF_brir_combined->num_iterations[tmp][j];
- hHrtf->pIndex_frequency_max[i][j] = hSetOfHRTF->hHRTF_brir_combined->pIndex_frequency_max[tmp][j];
-
- hHrtf->pOut_to_bin_re_fx[i][j] = hSetOfHRTF->hHRTF_brir_combined->pOut_to_bin_re_fx[tmp][j]; // Q29
- hHrtf->pOut_to_bin_im_fx[i][j] = hSetOfHRTF->hHRTF_brir_combined->pOut_to_bin_im_fx[tmp][j]; // Q29
- }
- ELSE
- {
- hHrtf->inv_diffuse_weight_fx[j][i] = hSetOfHRTF->hHRTF_hrir_combined->inv_diffuse_weight_fx[j][tmp];
- move16();
- hHrtf->num_iterations[i][j] = hSetOfHRTF->hHRTF_hrir_combined->num_iterations[tmp][j];
- hHrtf->pIndex_frequency_max[i][j] = hSetOfHRTF->hHRTF_hrir_combined->pIndex_frequency_max[tmp][j];
-
- hHrtf->pOut_to_bin_re_fx[i][j] = hSetOfHRTF->hHRTF_hrir_combined->pOut_to_bin_re_fx[tmp][j]; // Q29
- hHrtf->pOut_to_bin_im_fx[i][j] = hSetOfHRTF->hHRTF_hrir_combined->pOut_to_bin_im_fx[tmp][j]; // Q29
- }
- move32();
- move32();
- move16();
- move16();
- }
- }
- }
- ELSE IF( EQ_16( inConfigType, IVAS_REND_AUDIO_CONFIG_TYPE_AMBISONICS ) )
- {
- IF( EQ_16( inConfig, IVAS_AUDIO_CONFIG_HOA3 ) )
- {
- IF( hSetOfHRTF->hHRTF_hrir_hoa3 == NULL )
- {
- return IVAS_ERROR( IVAS_ERR_UNEXPECTED_NULL_POINTER, "Invalid function parameters " );
- }
- hHrtf->latency_s_fx = hSetOfHRTF->hHRTF_hrir_hoa3->latency_s_fx; // Q31
- hHrtf->max_num_iterations = hSetOfHRTF->hHRTF_hrir_hoa3->max_num_iterations;
- hHrtf->index_frequency_max_diffuse = hSetOfHRTF->hHRTF_hrir_hoa3->index_frequency_max_diffuse;
- move32();
- move16();
- move16();
-
- FOR( i = 0; i < hHrtf->max_num_ir; i++ )
- {
- FOR( j = 0; j < BINAURAL_CHANNELS; j++ )
- {
- hHrtf->inv_diffuse_weight_fx[j][i] = hSetOfHRTF->hHRTF_hrir_hoa3->inv_diffuse_weight_fx[j][i];
- move16();
- hHrtf->num_iterations[i][j] = hSetOfHRTF->hHRTF_hrir_hoa3->num_iterations[i][j];
- hHrtf->pIndex_frequency_max[i][j] = hSetOfHRTF->hHRTF_hrir_hoa3->pIndex_frequency_max[i][j];
-
- hHrtf->pOut_to_bin_re_fx[i][j] = hSetOfHRTF->hHRTF_hrir_hoa3->pOut_to_bin_re_fx[i][j]; // Q29
- hHrtf->pOut_to_bin_im_fx[i][j] = hSetOfHRTF->hHRTF_hrir_hoa3->pOut_to_bin_im_fx[i][j]; // Q29
- move32();
- move32();
- move16();
- move16();
- }
- }
- FOR( j = 0; j < BINAURAL_CHANNELS; j++ )
- {
- hHrtf->num_iterations_diffuse[j] = hSetOfHRTF->hHRTF_hrir_hoa3->num_iterations_diffuse[j];
- hHrtf->pIndex_frequency_max_diffuse[j] = hSetOfHRTF->hHRTF_hrir_hoa3->pIndex_frequency_max_diffuse[j];
-
- hHrtf->pOut_to_bin_diffuse_re_fx[j] = hSetOfHRTF->hHRTF_hrir_hoa3->pOut_to_bin_diffuse_re_fx[j]; // Q31
- hHrtf->pOut_to_bin_diffuse_im_fx[j] = hSetOfHRTF->hHRTF_hrir_hoa3->pOut_to_bin_diffuse_im_fx[j]; // Q31
- move32();
- move32();
- move16();
- move16();
- }
- }
- ELSE IF( EQ_16( inConfig, IVAS_AUDIO_CONFIG_HOA2 ) )
- {
- IF( hSetOfHRTF->hHRTF_hrir_hoa2 == NULL )
- {
- return IVAS_ERROR( IVAS_ERR_UNEXPECTED_NULL_POINTER, "Invalid function parameters " );
- }
- hHrtf->latency_s_fx = hSetOfHRTF->hHRTF_hrir_hoa2->latency_s_fx; // Q31
- hHrtf->max_num_iterations = hSetOfHRTF->hHRTF_hrir_hoa2->max_num_iterations;
- hHrtf->index_frequency_max_diffuse = hSetOfHRTF->hHRTF_hrir_hoa2->index_frequency_max_diffuse;
- move32();
- move16();
- move16();
-
- FOR( i = 0; i < hHrtf->max_num_ir; i++ )
- {
- FOR( j = 0; j < BINAURAL_CHANNELS; j++ )
- {
- hHrtf->inv_diffuse_weight_fx[j][i] = hSetOfHRTF->hHRTF_hrir_hoa2->inv_diffuse_weight_fx[j][i];
- move16();
- hHrtf->num_iterations[i][j] = hSetOfHRTF->hHRTF_hrir_hoa2->num_iterations[i][j];
- hHrtf->pIndex_frequency_max[i][j] = hSetOfHRTF->hHRTF_hrir_hoa2->pIndex_frequency_max[i][j];
-
- hHrtf->pOut_to_bin_re_fx[i][j] = hSetOfHRTF->hHRTF_hrir_hoa2->pOut_to_bin_re_fx[i][j]; // Q29
- hHrtf->pOut_to_bin_im_fx[i][j] = hSetOfHRTF->hHRTF_hrir_hoa2->pOut_to_bin_im_fx[i][j]; // Q29
- move32();
- move32();
- move16();
- move16();
- }
- }
- FOR( j = 0; j < BINAURAL_CHANNELS; j++ )
- {
- hHrtf->num_iterations_diffuse[j] = hSetOfHRTF->hHRTF_hrir_hoa2->num_iterations_diffuse[j];
- hHrtf->pIndex_frequency_max_diffuse[j] = hSetOfHRTF->hHRTF_hrir_hoa2->pIndex_frequency_max_diffuse[j];
-
- hHrtf->pOut_to_bin_diffuse_re_fx[j] = hSetOfHRTF->hHRTF_hrir_hoa2->pOut_to_bin_diffuse_re_fx[j]; // Q31
- hHrtf->pOut_to_bin_diffuse_im_fx[j] = hSetOfHRTF->hHRTF_hrir_hoa2->pOut_to_bin_diffuse_im_fx[j]; // Q31
- move32();
- move32();
- move16();
- move16();
- }
- }
- ELSE IF( EQ_16( inConfig, IVAS_AUDIO_CONFIG_FOA ) )
- {
- IF( hSetOfHRTF->hHRTF_hrir_foa == NULL )
- {
- return IVAS_ERROR( IVAS_ERR_UNEXPECTED_NULL_POINTER, "Invalid function parameters " );
- }
- hHrtf->latency_s_fx = hSetOfHRTF->hHRTF_hrir_foa->latency_s_fx; // Q31
- hHrtf->max_num_iterations = hSetOfHRTF->hHRTF_hrir_foa->max_num_iterations;
- hHrtf->index_frequency_max_diffuse = hSetOfHRTF->hHRTF_hrir_foa->index_frequency_max_diffuse;
- move32();
- move16();
- move16();
-
- FOR( i = 0; i < hHrtf->max_num_ir; i++ )
- {
- FOR( j = 0; j < BINAURAL_CHANNELS; j++ )
- {
- hHrtf->inv_diffuse_weight_fx[j][i] = hSetOfHRTF->hHRTF_hrir_foa->inv_diffuse_weight_fx[j][i];
- move16();
-
- hHrtf->num_iterations[i][j] = hSetOfHRTF->hHRTF_hrir_foa->num_iterations[i][j];
- hHrtf->pIndex_frequency_max[i][j] = hSetOfHRTF->hHRTF_hrir_foa->pIndex_frequency_max[i][j];
-
- hHrtf->pOut_to_bin_re_fx[i][j] = hSetOfHRTF->hHRTF_hrir_foa->pOut_to_bin_re_fx[i][j]; // Q29
- hHrtf->pOut_to_bin_im_fx[i][j] = hSetOfHRTF->hHRTF_hrir_foa->pOut_to_bin_im_fx[i][j]; // Q29
- move32();
- move32();
- move16();
- move16();
- }
- }
- FOR( j = 0; j < BINAURAL_CHANNELS; j++ )
- {
- hHrtf->num_iterations_diffuse[j] = hSetOfHRTF->hHRTF_hrir_foa->num_iterations_diffuse[j];
- hHrtf->pIndex_frequency_max_diffuse[j] = hSetOfHRTF->hHRTF_hrir_foa->pIndex_frequency_max_diffuse[j];
-
- hHrtf->pOut_to_bin_diffuse_re_fx[j] = hSetOfHRTF->hHRTF_hrir_foa->pOut_to_bin_diffuse_re_fx[j]; // Q31
- hHrtf->pOut_to_bin_diffuse_im_fx[j] = hSetOfHRTF->hHRTF_hrir_foa->pOut_to_bin_diffuse_im_fx[j]; // Q31
- move32();
- move32();
- move16();
- move16();
- }
- }
- ELSE
- {
- return IVAS_ERROR( IVAS_ERR_INTERNAL, "Unsupported renderer type in Crend" );
-#endif
}
}
}
@@ -1777,12 +1407,11 @@ ivas_error ivas_rend_initCrendWrapper_fx(
( *pCrend )->io_qfactor = 0;
move16();
( *pCrend )->p_io_qfactor = &( *pCrend )->io_qfactor;
-#ifdef FIX_CREND_SIMPLIFY_CODE
+
FOR( pos_idx = 0; pos_idx < MAX_HEAD_ROT_POSES; pos_idx++ )
{
( *pCrend )->hCrend[pos_idx] = NULL;
}
-#endif
FOR( pos_idx = 0; pos_idx < num_poses; pos_idx++ )
{
@@ -1829,6 +1458,7 @@ ivas_error ivas_rend_initCrendWrapper_fx(
return IVAS_ERR_OK;
}
+
/*-------------------------------------------------------------------------
* ivas_rend_openMultiBinCrend()
*
@@ -1842,20 +1472,10 @@ ivas_error ivas_rend_openMultiBinCrend(
const MULTI_BIN_REND_POSE_DATA *pMultiBinPoseData,
const Word32 output_Fs )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
return ivas_rend_openCrend_fx( pCrend, inConfig, outConfig, NULL /*hRendCfg*/, NULL, NULL /* hHrtfStatistics */, output_Fs, 0, pMultiBinPoseData->num_poses );
-#else
- ivas_error error;
-
- if ( ( error = ivas_rend_openCrend_fx( pCrend, inConfig, outConfig, NULL /*hRendCfg*/, NULL, NULL /* hHrtfStatistics */, output_Fs, pMultiBinPoseData->num_poses ) ) != IVAS_ERR_OK )
- {
- return error;
- }
-
- return error;
-#endif
}
+
/*-------------------------------------------------------------------------
* ivas_rend_openCrend()
*
@@ -1867,25 +1487,15 @@ ivas_error ivas_rend_openCrend_fx(
const AUDIO_CONFIG inConfig,
const AUDIO_CONFIG outConfig,
RENDER_CONFIG_DATA *hRendCfg,
-#ifdef FIX_CREND_SIMPLIFY_CODE
HRTFS_CREND_HANDLE hHrtfCrend,
-#else
- HRTFS_CREND_HANDLE hSetOfHRTF,
-#endif
HRTFS_STATISTICS_HANDLE hHrtfStatistics,
const Word32 output_Fs,
-#ifdef FIX_CREND_SIMPLIFY_CODE
const Word16 ext_rend_flag,
-#endif
const Word16 num_poses )
{
Word16 i, subframe_length;
Word32 max_total_ir_len;
-#ifdef FIX_CREND_SIMPLIFY_CODE
HRTFS_CREND_HANDLE hHrtf;
-#else
- HRTFS_HANDLE hHrtf;
-#endif
CREND_HANDLE hCrend;
ivas_error error;
Word16 pos_idx;
@@ -1899,11 +1509,7 @@ ivas_error ivas_rend_openCrend_fx(
IF( ( *pCrend )->hHrtfCrend == NULL )
{
-#ifdef FIX_CREND_SIMPLIFY_CODE
IF( NE_32( ( error = ivas_rend_initCrend_fx( *pCrend, inConfig, outConfig, hHrtfCrend, ext_rend_flag, output_Fs ) ), IVAS_ERR_OK ) )
-#else
- IF( NE_32( ( error = ivas_rend_initCrend_fx( *pCrend, inConfig, outConfig, hSetOfHRTF, output_Fs ) ), IVAS_ERR_OK ) )
-#endif
{
return error;
}
@@ -2061,11 +1667,7 @@ ivas_error ivas_rend_openCrend_fx(
{
hCrend->hReverb = NULL;
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
( *pCrend )->binaural_latency_ns = L_shr_r( Mpy_32_32_r( ( *pCrend )->hHrtfCrend->latency_s_fx, (Word32) 1000000000 ), ( *pCrend )->hHrtfCrend->factor_Q_latency_s_fx );
-#else
- ( *pCrend )->binaural_latency_ns = Mult_32_32( ( *pCrend )->hHrtfCrend->latency_s_fx, (Word32) 1000000000 );
-#endif
move32();
}
@@ -2083,12 +1685,7 @@ ivas_error ivas_rend_openCrend_fx(
*------------------------------------------------------------------------*/
void ivas_rend_closeCrend_fx(
- CREND_WRAPPER_HANDLE *pCrend
-#ifndef FIX_CREND_SIMPLIFY_CODE
- ,
- const int16_t num_poses
-#endif
-)
+ CREND_WRAPPER_HANDLE *pCrend )
{
Word16 i;
Word16 pos_idx;
@@ -2100,21 +1697,13 @@ void ivas_rend_closeCrend_fx(
return;
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
test();
IF( ( *pCrend )->hHrtfCrend != NULL && ( *pCrend )->hHrtfCrend->init_from_rom )
-#else
- IF( ( *pCrend )->hHrtfCrend != NULL )
-#endif
{
ivas_hrtf_close( &( *pCrend )->hHrtfCrend );
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
FOR( pos_idx = 0; pos_idx < MAX_HEAD_ROT_POSES; pos_idx++ )
-#else
- FOR( pos_idx = 0; pos_idx < num_poses; pos_idx++ )
-#endif
{
hCrend = ( *pCrend )->hCrend[pos_idx];
IF( hCrend != NULL )
@@ -2228,13 +1817,13 @@ void ivas_rend_closeCldfbRend(
return;
}
+
/*-----------------------------------------------------------------------------------------*
* Function ivas_rend_crendConvolver()
*
* Convolver block
*-----------------------------------------------------------------------------------------*/
-#ifdef FIX_CREND_SIMPLIFY_CODE
static ivas_error ivas_rend_crendConvolver_fx(
const CREND_WRAPPER *pCrend,
AUDIO_CONFIG inConfig,
@@ -2439,237 +2028,8 @@ static ivas_error ivas_rend_crendConvolver_fx(
return IVAS_ERR_OK;
}
-#else
-static ivas_error ivas_rend_crendConvolver_fx(
- const CREND_WRAPPER *pCrend,
- AUDIO_CONFIG inConfig,
- AUDIO_CONFIG outConfig,
- Word32 *pcm_in[], // Qx
- Word32 *pcm_out[], // Qx
- const Word32 output_Fs,
- const Word16 i_ts,
- const Word16 pos_idx )
-{
- Word16 i, j, k, m;
- Word16 subframe_length, idx_in;
- Word16 lfe_idx_in;
- Word32 offset, offset_in, offset_diffuse;
- Word16 index_in;
- Word16 nchan_in, nchan_out;
- const Word32 *pIn;
- Word32 *pFreq_buf_re, *pFreq_buf_im;
- Word32 *pFreq_buf2_re, *pFreq_buf2_im;
- const Word32 *pFreq_filt_re, *pFreq_filt_im;
- Word32 pOut[L_FRAME48k * 2];
- Word32 tmp_out_re[L_FRAME48k];
- Word32 tmp_out_im[L_FRAME48k];
- CREND_HANDLE hCrend;
- ivas_error error;
-
- hCrend = pCrend->hCrend[pos_idx];
-
- IF( NE_32( ( error = getAudioConfigNumChannels( inConfig, &nchan_in ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
-
- IF( NE_32( ( error = getAudioConfigNumChannels( outConfig, &nchan_out ) ), IVAS_ERR_OK ) )
- {
- return error;
- }
-
- /* subframe_length = (int16_t) ( output_Fs / FRAMES_PER_SEC ) / MAX_PARAM_SPATIAL_SUBFRAMES; */
- subframe_length = extract_l( Mpy_32_32_r( output_Fs, 10737418 /* 1 / ( FRAMES_PER_SEC * MAX_PARAM_SPATIAL_SUBFRAMES ) in Q31 */ ) );
-
- lfe_idx_in = -1;
- move16();
- IF( EQ_32( getAudioConfigType( inConfig ), IVAS_REND_AUDIO_CONFIG_TYPE_CHANNEL_BASED ) )
- {
- IF( NE_32( inConfig, IVAS_AUDIO_CONFIG_LS_CUSTOM ) )
- {
- lfe_idx_in = LFE_CHANNEL;
- move16();
- }
- ELSE
- {
- assert( 0 && "Custom LS not supported in CRend" );
- }
- }
-
- offset = L_mult0( hCrend->delay_line_rw_index, subframe_length ); /* subframe_length * ( pCrend->hHrtfCrend->max_num_iterations - 1 ); */
- offset_diffuse = L_mult0( hCrend->diffuse_delay_line_rw_index, subframe_length ); /* subframe_length *( pCrend->hHrtfCrend->num_iterations_diffuse[0] - 1 ); */
-
- IF( pCrend->hHrtfCrend->num_iterations_diffuse[0] > 0 )
- {
- set32_fx( &hCrend->freq_buffer_re_diffuse_fx[0][offset_diffuse], 0, subframe_length );
- set32_fx( &hCrend->freq_buffer_im_diffuse_fx[0][offset_diffuse], 0, subframe_length );
- if ( pCrend->hHrtfCrend->same_inv_diffuse_weight == 0 )
- {
- set32_fx( &hCrend->freq_buffer_re_diffuse_fx[1][offset_diffuse], 0, subframe_length );
- set32_fx( &hCrend->freq_buffer_im_diffuse_fx[1][offset_diffuse], 0, subframe_length );
- }
- }
-
- i = 0;
- move16();
- FOR( idx_in = 0; idx_in < nchan_in; idx_in++ )
- {
- pIn = &pcm_in[idx_in][i_ts * subframe_length];
-
- IF( NE_16( idx_in, lfe_idx_in ) )
- {
- IF( pCrend->hHrtfCrend->num_iterations_diffuse[0] > 0 )
- {
- IF( pCrend->hHrtfCrend->same_inv_diffuse_weight )
- {
- pFreq_buf_re = &hCrend->freq_buffer_re_diffuse_fx[0][offset_diffuse];
- pFreq_buf_im = &hCrend->freq_buffer_im_diffuse_fx[0][offset_diffuse];
- pFreq_filt_re = &hCrend->freq_buffer_re_fx[i][offset];
- pFreq_filt_im = &hCrend->freq_buffer_im_fx[i][offset];
-
- FOR( k = 0; k < pCrend->hHrtfCrend->index_frequency_max_diffuse; k++ )
- {
- pFreq_buf_re[k] = L_add( Mpy_32_16_r( pFreq_filt_re[k], pCrend->hHrtfCrend->inv_diffuse_weight_fx[0][i] ), pFreq_buf_re[k] ); // Qx
- pFreq_buf_im[k] = L_add( Mpy_32_16_r( pFreq_filt_im[k], pCrend->hHrtfCrend->inv_diffuse_weight_fx[0][i] ), pFreq_buf_im[k] ); // Qx
- move32();
- move32();
- }
- }
- ELSE
- {
- pFreq_buf_re = &hCrend->freq_buffer_re_diffuse_fx[0][offset_diffuse];
- pFreq_buf_im = &hCrend->freq_buffer_im_diffuse_fx[0][offset_diffuse];
- pFreq_buf2_re = &hCrend->freq_buffer_re_diffuse_fx[1][offset_diffuse];
- pFreq_buf2_im = &hCrend->freq_buffer_im_diffuse_fx[1][offset_diffuse];
- pFreq_filt_re = &hCrend->freq_buffer_re_fx[i][offset];
- pFreq_filt_im = &hCrend->freq_buffer_im_fx[i][offset];
-
- for ( k = 0; k < pCrend->hHrtfCrend->index_frequency_max_diffuse; k++ )
- {
- pFreq_buf_re[k] = L_add( Mpy_32_16_r( pFreq_filt_re[k], pCrend->hHrtfCrend->inv_diffuse_weight_fx[0][i] ), pFreq_buf_re[k] ); // Qx
- pFreq_buf_im[k] = L_add( Mpy_32_16_r( pFreq_filt_im[k], pCrend->hHrtfCrend->inv_diffuse_weight_fx[0][i] ), pFreq_buf_im[k] ); // Qx
- move32();
- move32();
- pFreq_buf2_re[k] = L_add( Mpy_32_16_r( pFreq_filt_re[k], pCrend->hHrtfCrend->inv_diffuse_weight_fx[1][i] ), pFreq_buf2_re[k] ); // Qx
- pFreq_buf2_im[k] = L_add( Mpy_32_16_r( pFreq_filt_im[k], pCrend->hHrtfCrend->inv_diffuse_weight_fx[1][i] ), pFreq_buf2_im[k] ); // Qx
- move32();
- move32();
- }
- }
- }
- pFreq_buf_re = &hCrend->freq_buffer_re_fx[i][offset]; // Qx
- pFreq_buf_im = &hCrend->freq_buffer_im_fx[i][offset]; // Qx
- ivas_mdft_fx( pIn, pFreq_buf_re, pFreq_buf_im, subframe_length, subframe_length );
-#ifdef DEBUGGING
- dbgwrite_txt( (const float *) pFreq_buf_re, subframe_length, "Fixed_pFreq_buf_re_mdft.txt", NULL );
- dbgwrite_txt( (const float *) pFreq_buf_im, subframe_length, "Fixed_pFreq_buf_im_mdft.txt", NULL );
-#endif
- i = add( i, 1 );
- }
- }
-
- FOR( j = 0; j < nchan_out; j++ )
- {
- set32_fx( tmp_out_re, 0, subframe_length );
- set32_fx( tmp_out_im, 0, subframe_length );
- i = 0;
- move16();
- FOR( idx_in = 0; idx_in < nchan_in; idx_in++ )
- {
- IF( NE_16( idx_in, lfe_idx_in ) )
- {
- offset = 0;
- move16();
- FOR( m = 0; m < pCrend->hHrtfCrend->num_iterations[i][j]; m++ )
- {
- index_in = add( add( hCrend->delay_line_rw_index, sub( pCrend->hHrtfCrend->max_num_iterations, pCrend->hHrtfCrend->num_iterations[i][j] ) ), add( m, 1 ) );
- index_in = index_in % ( pCrend->hHrtfCrend->max_num_iterations );
- move16();
- offset_in = L_mult0( index_in, subframe_length );
-
- pFreq_buf_re = &hCrend->freq_buffer_re_fx[i][offset_in]; // Qx
- pFreq_buf_im = &hCrend->freq_buffer_im_fx[i][offset_in]; // Qx
- pFreq_filt_re = &pCrend->hHrtfCrend->pOut_to_bin_re_fx[i][j][offset]; // Q29
- pFreq_filt_im = &pCrend->hHrtfCrend->pOut_to_bin_im_fx[i][j][offset]; // Q29
-
- FOR( k = 0; k < pCrend->hHrtfCrend->pIndex_frequency_max[i][j][m]; k++ )
- {
- tmp_out_re[k] = L_add( Msub_32_32( Mpy_32_32( pFreq_buf_re[k], pFreq_filt_re[k] ), pFreq_buf_im[k], pFreq_filt_im[k] ), tmp_out_re[k] ); // Qx - 2
- tmp_out_im[k] = L_add( Madd_32_32( Mpy_32_32( pFreq_buf_re[k], pFreq_filt_im[k] ), pFreq_buf_im[k], pFreq_filt_re[k] ), tmp_out_im[k] ); // Qx - 2
- move32();
- move32();
- }
-
- offset = L_add( offset, k );
- }
- i = add( i, 1 );
- }
- }
-
- offset = 0;
- move16();
- FOR( m = 0; m < pCrend->hHrtfCrend->num_iterations_diffuse[j]; m++ )
- {
- index_in = add( hCrend->diffuse_delay_line_rw_index, add( m, 1 ) );
- index_in = index_in % pCrend->hHrtfCrend->num_iterations_diffuse[0];
- move16();
- offset_diffuse = L_mult0( index_in, subframe_length );
- if ( pCrend->hHrtfCrend->same_inv_diffuse_weight )
- {
- pFreq_buf_re = &hCrend->freq_buffer_re_diffuse_fx[0][offset_diffuse];
- pFreq_buf_im = &hCrend->freq_buffer_im_diffuse_fx[0][offset_diffuse];
- }
- else
- {
- pFreq_buf_re = &hCrend->freq_buffer_re_diffuse_fx[j][offset_diffuse];
- pFreq_buf_im = &hCrend->freq_buffer_im_diffuse_fx[j][offset_diffuse];
- }
- pFreq_filt_re = &pCrend->hHrtfCrend->pOut_to_bin_diffuse_re_fx[j][offset]; // Q31
- pFreq_filt_im = &pCrend->hHrtfCrend->pOut_to_bin_diffuse_im_fx[j][offset]; // Q31
- FOR( k = 0; k < pCrend->hHrtfCrend->pIndex_frequency_max_diffuse[j][m]; k++ )
- {
- tmp_out_re[k] = L_add( L_shr( Msub_32_32( Mpy_32_32( pFreq_buf_re[k], pFreq_filt_re[k] ), pFreq_buf_im[k], pFreq_filt_im[k] ), 2 ), tmp_out_re[k] ); // Qx - 2
- tmp_out_im[k] = L_add( L_shr( Madd_32_32( Mpy_32_32( pFreq_buf_re[k], pFreq_filt_im[k] ), pFreq_buf_im[k], pFreq_filt_re[k] ), 2 ), tmp_out_im[k] ); // Qx - 2
- move32();
- move32();
- }
- offset = L_add( offset, k );
- move32();
- }
-
- ivas_imdft_fx( tmp_out_re, tmp_out_im, pOut, subframe_length );
- scale_sig32( pOut, shl( subframe_length, 1 ), 2 );
-#ifdef DEBUGGING
- dbgwrite_txt( (const float *) pOut, subframe_length << 1, "Fixed_imdft_out.txt", NULL );
-#endif
- pFreq_buf_re = &pcm_out[j][i_ts * subframe_length];
- FOR( k = 0; k < subframe_length; k++ )
- {
- pFreq_buf_re[k] = L_add( pOut[k], hCrend->prev_out_buffer_fx[j][k] ); // Qx
- hCrend->prev_out_buffer_fx[j][k] = pOut[k + subframe_length]; // Qx
- move32();
- move32();
- }
- }
-
- hCrend->delay_line_rw_index = add( hCrend->delay_line_rw_index, 1 );
- hCrend->delay_line_rw_index = hCrend->delay_line_rw_index % ( pCrend->hHrtfCrend->max_num_iterations );
- move16();
- move16();
- IF( pCrend->hHrtfCrend->num_iterations_diffuse[0] > 0 )
- {
- hCrend->diffuse_delay_line_rw_index = add( hCrend->diffuse_delay_line_rw_index, 1 );
- hCrend->diffuse_delay_line_rw_index = hCrend->diffuse_delay_line_rw_index % ( pCrend->hHrtfCrend->num_iterations_diffuse[0] );
- move16();
- move16();
- }
-
- return IVAS_ERR_OK;
-}
-
-#endif
/*-----------------------------------------------------------------------------------------*
* Function ivas_rend_crendProcessSubframe()
*
@@ -2688,19 +2048,14 @@ ivas_error ivas_rend_crendProcessSubframe_fx(
Word32 *input_f[], /* i : transport channels Qx */
Word32 *output[], /* i/o: input/output audio channels Qx */
const Word16 n_samples_to_render, /* i : output frame length per channel */
- const Word32 output_Fs /* i : output sampling rate */
- ,
+ const Word32 output_Fs, /* i : output sampling rate */
const Word16 pos_idx )
{
Word16 subframe_idx, subframe_len;
Word16 nchan_out, nchan_in, ch, first_sf, last_sf, slot_size, slots_to_render;
Word32 *tc_local_fx[MAX_OUTPUT_CHANNELS];
-#ifdef FIX_CREND_SIMPLIFY_CODE
Word32 *p_output_fx[BINAURAL_CHANNELS];
Word32 pcm_tmp_fx[BINAURAL_CHANNELS][L_FRAME48k / MAX_PARAM_SPATIAL_SUBFRAMES];
-#else
- Word32 pcm_tmp_fx[BINAURAL_CHANNELS][L_FRAME48k];
-#endif
Word32 *p_pcm_tmp_fx[BINAURAL_CHANNELS];
IVAS_REND_AudioConfigType inConfigType;
ivas_error error;
@@ -2739,9 +2094,7 @@ ivas_error ivas_rend_crendProcessSubframe_fx(
FOR( ch = 0; ch < BINAURAL_CHANNELS; ch++ )
{
p_pcm_tmp_fx[ch] = pcm_tmp_fx[ch];
-#ifdef FIX_CREND_SIMPLIFY_CODE
p_output_fx[ch] = output[ch];
-#endif
}
IF( hTcBuffer != NULL )
@@ -2858,12 +2211,6 @@ ivas_error ivas_rend_crendProcessSubframe_fx(
tc_local_fx[ch] += subframe_len;
}
-#ifndef FIX_CREND_SIMPLIFY_CODE
- FOR( ch = 0; ch < BINAURAL_CHANNELS; ch++ )
- {
- p_pcm_tmp_fx[ch] += subframe_len;
- }
-#endif
if ( hTcBuffer != NULL )
{
hTcBuffer->slots_rendered = add( hTcBuffer->subframe_nbslots[subframe_idx], hTcBuffer->slots_rendered );
@@ -2875,7 +2222,6 @@ ivas_error ivas_rend_crendProcessSubframe_fx(
return IVAS_ERR_INVALID_INPUT_FORMAT;
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
FOR( ch = 0; ch < BINAURAL_CHANNELS; ch++ )
{
/* move to output */
@@ -2883,7 +2229,6 @@ ivas_error ivas_rend_crendProcessSubframe_fx(
p_output_fx[ch] += subframe_len;
}
-#endif
/* update combined orientation access index */
ivas_combined_orientation_update_index( hCombinedOrientationData, subframe_len );
@@ -2902,13 +2247,6 @@ ivas_error ivas_rend_crendProcessSubframe_fx(
}
}
}
-#ifndef FIX_CREND_SIMPLIFY_CODE
- /* move to output */
- FOR( ch = 0; ch < nchan_out; ch++ )
- {
- MVR2R_WORD32( pcm_tmp_fx[ch], output[ch], n_samples_to_render ); // Qx
- }
-#endif
if ( hTcBuffer != NULL )
{
@@ -3004,8 +2342,8 @@ ivas_error ivas_rend_crendProcessSubframesSplitBin(
{
Copy32( output[hIntSetup->index_lfe[0]], tmpLfeBuffer, n_samples_to_render );
gain_lfe = ( ( pCrend != NULL ) && ( pCrend->hHrtfCrend != NULL ) ) ? pCrend->hHrtfCrend->gain_lfe_fx : GAIN_LFE_FX;
- v_multc_fixed_16( tmpLfeBuffer, gain_lfe, tmpLfeBuffer, n_samples_to_render ); // q_input_fx - 1
- Scale_sig32( tmpLfeBuffer, n_samples_to_render, 1 ); // q_input_fx
+ v_multc_fx_16( tmpLfeBuffer, gain_lfe, tmpLfeBuffer, n_samples_to_render ); // q_input_fx - 1
+ Scale_sig32( tmpLfeBuffer, n_samples_to_render, 1 ); // q_input_fx
}
ELSE
{
diff --git a/lib_rend/ivas_dirac_ana_fx.c b/lib_rend/ivas_dirac_ana_fx.c
index 4e00b96232a515e7f08383a3c9451ac7aa2cadf5..502f4f5ae81acc7af1caa8d4935f9c1089f9923f 100644
--- a/lib_rend/ivas_dirac_ana_fx.c
+++ b/lib_rend/ivas_dirac_ana_fx.c
@@ -411,7 +411,7 @@ static void ivas_dirac_param_est_ana_fx(
/* Direction estimation */
computeIntensityVector_ana_fx( hDirAC->band_grouping, Foa_RealBuffer_fx, Foa_ImagBuffer_fx, num_freq_bands, intensity_real_fx, intensity_real_q, inp_q );
- computeDirectionVectors_fixed( intensity_real_fx[0], intensity_real_fx[1], intensity_real_fx[2], 0, num_freq_bands, direction_vector_fx[0], direction_vector_fx[1], direction_vector_fx[2], 0, intensity_real_q );
+ computeDirectionVectors_fx2( intensity_real_fx[0], intensity_real_fx[1], intensity_real_fx[2], 0, num_freq_bands, direction_vector_fx[0], direction_vector_fx[1], direction_vector_fx[2], 0, intensity_real_q );
/* Power estimation for diffuseness */
computeReferencePower_ana_fx( hDirAC->band_grouping, Foa_RealBuffer_fx, Foa_ImagBuffer_fx, reference_power_fx[ts], num_freq_bands, inp_q, &reference_power_q );
@@ -446,7 +446,7 @@ static void ivas_dirac_param_est_ana_fx(
Copy32( reference_power_fx[ts], &( hDirAC->buffer_energy_fx[( index - 1 ) * num_freq_bands] ), num_freq_bands );
hDirAC->buffer_energy_q[index - 1] = reference_power_q;
move16();
- computeDiffuseness_fixed( hDirAC->buffer_intensity_real_fx, hDirAC->buffer_energy_fx, num_freq_bands, diffuseness_vector_fx, hDirAC->buffer_intensity_real_q, hDirAC->buffer_energy_q, &diffuseness_q );
+ computeDiffuseness_fx( hDirAC->buffer_intensity_real_fx, hDirAC->buffer_energy_fx, num_freq_bands, diffuseness_vector_fx, hDirAC->buffer_intensity_real_q, hDirAC->buffer_energy_q, &diffuseness_q );
FOR( band_m_idx = 0; band_m_idx < hDirAC->nbands; band_m_idx++ )
{
@@ -537,10 +537,10 @@ static void ivas_dirac_dmx_fx(
IF( EQ_16( nchan_transport, 2 ) )
{
v_add_fx( data_in_fx[0], data_in_fx[1], data_out_fx[0], input_frame );
- v_multc_fixed( data_out_fx[0], ONE_IN_Q30, data_out_fx[0], input_frame ); // ONE_IN_Q30 = 0.5* ONE_IN_Q31
+ v_multc_fx( data_out_fx[0], ONE_IN_Q30, data_out_fx[0], input_frame ); // ONE_IN_Q30 = 0.5* ONE_IN_Q31
- v_sub_fixed_no_hdrm( data_in_fx[0], data_in_fx[1], data_out_fx[1], input_frame );
- v_multc_fixed( data_out_fx[1], ONE_IN_Q30, data_out_fx[1], input_frame );
+ v_sub_fx_no_hdrm( data_in_fx[0], data_in_fx[1], data_out_fx[1], input_frame );
+ v_multc_fx( data_out_fx[1], ONE_IN_Q30, data_out_fx[1], input_frame );
FOR( i = 0; i < nchan_transport; i++ )
{
diff --git a/lib_rend/ivas_dirac_dec_binaural_functions_fx.c b/lib_rend/ivas_dirac_dec_binaural_functions_fx.c
index 8f063a897f1b1102b81989ab4492aba523c1ecac..0539b7b85524aacc82866eb1afc7eb7d8bc0db43 100644
--- a/lib_rend/ivas_dirac_dec_binaural_functions_fx.c
+++ b/lib_rend/ivas_dirac_dec_binaural_functions_fx.c
@@ -51,20 +51,9 @@ Word16 slot_fx[4] = { 32767, 16384, 10922, 8192 };
* Local constants
*------------------------------------------------------------------------*/
-#define CLDFB_HALF_BIN_FREQUENCY_OFFSET 0.5f
-#define IVAS_TDET_DUCK_MULT_FAC_PARA_BIN ( 2.0f )
-#define IVAS_TDET_DUCK_MULT_FAC_PARA_BIN_LOW_BR ( 3.0f )
-#define SBA_CARDI_TARGET_ENERGY_GAIN 0.5f
-
-#define STEREO_PREPROCESS_IIR_FACTOR ( 0.9f )
-#define STEREO_PREPROCESS_IIR_FACTOR_Q15 ( 29491 )
+#define STEREO_PREPROCESS_IIR_FACTOR_Q15 ( 29491 ) // 0.9f in Q15
/* powf(0.95f, 4.0f) for sub-frame smoothing instead of CLDFB slot */
-#define ADAPT_HTPROTO_IIR_FAC 0.81450625f
-
-#define ADAPT_HTPROTO_ILD_LIM_DB0 1.0f
-#define ADAPT_HTPROTO_ILD_LIM_DB1 4.0f
-#define ADAPT_HTPROTO_ROT_LIM_0 0.4f
-#define ADAPT_HTPROTO_ROT_LIM_0_FX 429496736 // Q30
+#define ADAPT_HTPROTO_ROT_LIM_0_FX 429496736 // 0.4f in Q30
#define TWO_POINT_FIVE_IN_Q13 20480 // Q13
#define ADAPT_HTPROTO_IIR_FAC_FX 26689 // Q15
#define LOG_10_BASE_2_Q29 1783446528 // Q29
@@ -74,11 +63,8 @@ Word16 slot_fx[4] = { 32767, 16384, 10922, 8192 };
#define EPSILON_EXP ( -39 )
#define ONE_DIV_EPSILON_MANT 1953125000 /* 1e+12 = 0.9094947*(2^40) */
#define ONE_DIV_EPSILON_EXP ( 40 )
-#define ADAPT_HTPROTO_ROT_LIM_1 0.8f
-#ifdef FIX_1819_EIGENVALUE_ERROR
#define SMALL_EIGENVALUE 50
-#endif
#define MAX_GAIN_CACHE_SIZE ( ( MASA_MAXIMUM_DIRECTIONS * 3 ) + MAX_NUM_OBJECTS ) /* == different calls to get gains */
@@ -108,14 +94,11 @@ typedef struct parambin_rend_config_data
* Local function prototypes
*------------------------------------------------------------------------*/
-static void ivas_dirac_dec_binaural_internal_fx( Decoder_Struct *st_ivas, COMBINED_ORIENTATION_HANDLE hCombinedOrientationData, Word32 *output_f[] /*Q11*/, const Word16 nchan_transport, const Word16 subframe );
-#ifdef FIX_2049_DIFF_IN_DECORR_TAIL
-static void ivas_dirac_dec_decorrelate_slot_fx( DIRAC_DEC_BIN_HANDLE hDiracDecBin, const Word16 num_freq_bands, const Word16 slot, Word32 inRe[][CLDFB_SLOTS_PER_SUBFRAME] /*q_inp*/[CLDFB_NO_CHANNELS_MAX], Word32 inIm[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX] /*q_inp*/, Word16 q_inp, Word32 decRe[][CLDFB_NO_CHANNELS_MAX], Word32 decIm[][CLDFB_NO_CHANNELS_MAX], Word16 *q_out );
-#else
-static void ivas_dirac_dec_decorrelate_slot_fx( DIRAC_DEC_BIN_HANDLE hDiracDecBin, const Word16 num_freq_bands, const Word16 slot, Word32 inRe[][CLDFB_SLOTS_PER_SUBFRAME] /*q_inp*/[CLDFB_NO_CHANNELS_MAX], Word32 inIm[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX] /*q_inp*/, Word16 q_inp, Word32 decRe[][CLDFB_NO_CHANNELS_MAX] /*q_inp*/, Word32 decIm[] /*q_inp*/[CLDFB_NO_CHANNELS_MAX] );
-#endif
+static void ivas_dirac_dec_binaural_internal_fx( Decoder_Struct *st_ivas, COMBINED_ORIENTATION_HANDLE hCombinedOrientationData, Word32 *output_fx[] /*Q11*/, const Word16 nchan_transport, const Word16 subframe );
+
+static void ivas_dirac_dec_decorrelate_slot_fx( DIRAC_DEC_BIN_HANDLE hDiracDecBin, const Word16 num_freq_bands, const Word16 slot, Word32 inRe[][CLDFB_SLOTS_PER_SUBFRAME] /*q_inp*/[CLDFB_NO_CHANNELS_MAX], Word32 inIm[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX] /*q_inp*/, const Word16 q_inp, Word32 decRe[][CLDFB_NO_CHANNELS_MAX], Word32 decIm[][CLDFB_NO_CHANNELS_MAX], Word16 *q_out );
-static void ivas_dirac_dec_binaural_formulate_input_covariance_matrices_fx( DIRAC_DEC_BIN_HANDLE hDiracDecBin, SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom, PARAMBIN_REND_CONFIG_HANDLE hConfig, Word32 inRe[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], Word32 inIm[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], const Word16 subframe, Word32 *subFrameTotalEne, Word16 *subFrameTotalEne_e, Word32 *IIReneLimiter, Word16 q );
+static void ivas_dirac_dec_binaural_formulate_input_covariance_matrices_fx( DIRAC_DEC_BIN_HANDLE hDiracDecBin, SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom, PARAMBIN_REND_CONFIG_HANDLE hConfig, Word32 inRe[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], Word32 inIm[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], const Word16 subframe, Word32 *subFrameTotalEne, Word16 *subFrameTotalEne_e, Word32 *IIReneLimiter, const Word16 q );
static void ivas_dirac_dec_binaural_formulate_target_covariance_matrices_fx( DIRAC_DEC_BIN_HANDLE hDiracDecBin, const SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom, const PARAMBIN_REND_CONFIG_HANDLE hConfig, Word32 Rmat[3][3], const Word16 subframe, const Word16 isHeadtracked, const Word32 *subFrameTotalEne, Word16 *subFrameTotalEne_e, const Word32 *IIReneLimiter, const MASA_ISM_DATA_HANDLE hMasaIsmData );
@@ -137,18 +120,7 @@ static void formulate2x2MixingMatrix_fx( Word32 Ein1_fx /*q_Ein*/, Word32 Ein2_f
static void matrixMul_fx( Word32 Are[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_A*/, Word32 Aim[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_A*/, Word16 *q_A, Word32 Bre[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_B*/, Word32 Bim[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_B*/, Word16 *q_B, Word32 outRe[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_out*/, Word32 outIm[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_out*/, Word16 *q_out );
-static void matrixTransp2Mul_fx(
- Word32 Are[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_A*/,
- Word32 Aim[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_A*/,
- Word16 *q_A,
- Word32 Bre[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_B*/,
- Word32 Bim[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_B*/,
- Word16 *q_B,
- Word32 Ascale,
- Word32 Bscale,
- Word32 outRe[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_out*/,
- Word32 outIm[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_out*/,
- Word16 *q_out );
+static void matrixTransp2Mul_fx( Word32 Are[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_A*/, Word32 Aim[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_A*/, Word16 *q_A, Word32 Bre[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_B*/, Word32 Bim[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_B*/, Word16 *q_B, Word32 Ascale, Word32 Bscale, Word32 outRe[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_out*/, Word32 outIm[BINAURAL_CHANNELS][BINAURAL_CHANNELS] /*q_out*/, Word16 *q_out );
/*-------------------------------------------------------------------------
@@ -173,17 +145,26 @@ ivas_error ivas_dirac_dec_init_binaural_data_fx(
Word16 tmp_e;
Word16 tmp2;
ivas_error error;
-
Word16 num_poses, pos_idx;
const IVAS_ROOM_ACOUSTICS_CONFIG_DATA *pRoomAcoustics;
num_poses = 1;
+ move16();
IF( st_ivas->hSplitBinRend != NULL )
{
num_poses = st_ivas->hSplitBinRend->splitrend.multiBinPoseData.num_poses;
move16();
}
+#ifdef NONBE_1303_REND_GRANULARITY
+ output_Fs = st_ivas->hDecoderConfig->output_Fs;
+ move32();
+ nBins = st_ivas->hSpatParamRendCom->num_freq_bands;
+ move16();
+ renderer_type = st_ivas->renderer_type;
+ move32();
+#endif
+
FOR( pos_idx = 0; pos_idx < num_poses; pos_idx++ )
{
hDiracDecBin = st_ivas->hDiracDecBin[pos_idx];
@@ -203,13 +184,14 @@ ivas_error ivas_dirac_dec_init_binaural_data_fx(
hDiracDecBin->phHrtfParambin = NULL;
}
+#ifndef NONBE_1303_REND_GRANULARITY
output_Fs = st_ivas->hDecoderConfig->output_Fs;
move32();
nBins = st_ivas->hSpatParamRendCom->num_freq_bands;
move16();
renderer_type = st_ivas->renderer_type;
move32();
-
+#endif
FOR( j = 0; j < BINAURAL_CHANNELS; j++ )
{
FOR( k = 0; k < BINAURAL_CHANNELS + MAX_NUM_OBJECTS; k++ )
@@ -349,7 +331,7 @@ ivas_error ivas_dirac_dec_init_binaural_data_fx(
ivas_dirac_dec_decorr_close_fx( &hDiracDecBin->h_freq_domain_decorr_ap_params, &hDiracDecBin->h_freq_domain_decorr_ap_state );
}
- if ( pos_idx == 0 ) /* open decorrelator only for the main direction */
+ IF( pos_idx == 0 ) /* open decorrelator only for the main direction */
{
IF( NE_32( ( error = ivas_td_decorr_reconfig_dec( st_ivas->ivas_format, st_ivas->hDecoderConfig->ivas_total_brate, st_ivas->nchan_transport, st_ivas->hDecoderConfig->output_Fs, &( hDiracDecBin->hTdDecorr ), &( hDiracDecBin->useTdDecorr ) ) ), IVAS_ERR_OK ) )
{
@@ -361,6 +343,7 @@ ivas_error ivas_dirac_dec_init_binaural_data_fx(
IF( !hDiracDecBin->useTdDecorr && !( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) && EQ_32( st_ivas->ism_mode, ISM_MODE_PARAM ) ) )
{
Word16 frequency_axis_fx[CLDFB_NO_CHANNELS_MAX];
+
ivas_dirac_dec_get_frequency_axis_fx( frequency_axis_fx, output_Fs, nBins );
IF( NE_32( ( error = ivas_dirac_dec_decorr_open_fx( &( hDiracDecBin->h_freq_domain_decorr_ap_params ),
@@ -378,9 +361,10 @@ ivas_error ivas_dirac_dec_init_binaural_data_fx(
}
}
}
- else
+ ELSE
{
hDiracDecBin->useTdDecorr = st_ivas->hDiracDecBin[0]->useTdDecorr; /* copy the flag, but the implementation re-uses the decorrelated signal */
+ move16();
}
hDiracDecBin->reqularizationFactor_fx = configure_reqularization_factor_fx( st_ivas->ivas_format, st_ivas->hDecoderConfig->ivas_total_brate ); /* Q14 */
@@ -397,13 +381,30 @@ ivas_error ivas_dirac_dec_init_binaural_data_fx(
Word16 nchan_to_allocate;
Word16 n_samples_granularity;
+#ifdef FIX_NCHAN_BUFFERS
+ nchan_to_allocate = BINAURAL_CHANNELS;
+ move16();
+ IF( st_ivas->hDiracDecBin[0] != NULL && st_ivas->hDiracDecBin[0]->useTdDecorr )
+ {
+ nchan_to_allocate = 2 * BINAURAL_CHANNELS;
+ move16();
+ }
+ ELSE IF( st_ivas->hOutSetup.separateChannelEnabled )
+ {
+ nchan_to_allocate = add( nchan_to_allocate, 1 );
+ }
+#else
nchan_to_allocate = 2 * BINAURAL_CHANNELS;
move16();
+#endif
if ( EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) )
{
nchan_to_allocate = add( BINAURAL_CHANNELS, st_ivas->nchan_ism );
}
+#ifdef NONBE_1303_REND_GRANULARITY
+ n_samples_granularity = ivas_jbm_dec_get_render_granularity_fx( st_ivas->renderer_type, ivas_renderer_secondary_select_fx( st_ivas ), output_Fs );
+#else
n_samples_granularity = NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, CLDFB_SLOT_NS );
test();
test();
@@ -411,6 +412,7 @@ ivas_error ivas_dirac_dec_init_binaural_data_fx(
{
n_samples_granularity = NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, FRAME_SIZE_NS / MAX_PARAM_SPATIAL_SUBFRAMES ); /* Use the same granularity as tdrend */
}
+#endif
IF( NE_32( ( error = ivas_jbm_dec_tc_buffer_open_fx( st_ivas, TC_BUFFER_MODE_RENDERER, ivas_jbm_dec_get_num_tc_channels_fx( st_ivas ), nchan_to_allocate, nchan_to_allocate, n_samples_granularity ) ), IVAS_ERR_OK ) )
{
@@ -432,7 +434,8 @@ void ivas_dirac_dec_close_binaural_data_fx(
DIRAC_DEC_BIN_HANDLE *hBinaural /* i/o: decoder DirAC binaural data handle */
)
{
- int16_t pos_idx;
+ Word16 pos_idx;
+
test();
IF( hBinaural == NULL || *hBinaural == NULL )
{
@@ -476,6 +479,7 @@ ivas_error ivas_dirac_dec_binaural_copy_hrtfs_fx(
)
{
Word16 i, j;
+
test();
IF( hHrtfParambin != NULL && *hHrtfParambin != NULL )
{
@@ -490,7 +494,7 @@ ivas_error ivas_dirac_dec_binaural_copy_hrtfs_fx(
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for parametric binauralizer HRTF tables" );
}
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
+
FOR( i = 0; i < BINAURAL_CHANNELS; i++ )
{
FOR( j = 0; j < HRTF_SH_CHANNELS; j++ )
@@ -505,20 +509,7 @@ ivas_error ivas_dirac_dec_binaural_copy_hrtfs_fx(
Copy_Scale_sig_16_32_r( parametricReverberationTimes_fx, hrtfParambin->parametricReverberationTimes_fx, CLDFB_NO_CHANNELS_MAX, Q26 - parametricReverberationTimes_factorQ_fx ); /*Q26*/
Copy_Scale_sig_16_32_r( parametricReverberationEneCorrections_fx, hrtfParambin->parametricReverberationEneCorrections_fx, CLDFB_NO_CHANNELS_MAX, Q31 - parametricReverberationEneCorrections_factorQ_fx ); /*Q31*/
Copy_Scale_sig_16_32_r( parametricEarlyPartEneCorrection_fx, hrtfParambin->parametricEarlyPartEneCorrection_fx, CLDFB_NO_CHANNELS_MAX, Q28 - parametricEarlyPartEneCorrection_factorQ_fx ); /*Q28*/
-#else
- FOR( i = 0; i < BINAURAL_CHANNELS; i++ )
- {
- FOR( j = 0; j < HRTF_SH_CHANNELS; j++ )
- {
- Copy( hrtfShCoeffsRe_fx[i][j], hrtfParambin->hrtfShCoeffsRe_fx[i][j], HRTF_NUM_BINS ); /*Q14*/
- Copy( hrtfShCoeffsIm_fx[i][j], hrtfParambin->hrtfShCoeffsIm_fx[i][j], HRTF_NUM_BINS ); /*Q14*/
- }
- }
- Copy32( parametricReverberationTimes_fx, hrtfParambin->parametricReverberationTimes_fx, CLDFB_NO_CHANNELS_MAX ); /*Q26*/
- Copy32( parametricReverberationEneCorrections_fx, hrtfParambin->parametricReverberationEneCorrections_fx, CLDFB_NO_CHANNELS_MAX ); /*Q31*/
- Copy32( parametricEarlyPartEneCorrection_fx, hrtfParambin->parametricEarlyPartEneCorrection_fx, CLDFB_NO_CHANNELS_MAX ); /*Q28*/
-#endif
*hHrtfParambin = hrtfParambin;
return IVAS_ERR_OK;
@@ -538,23 +529,29 @@ void ivas_dirac_dec_binaural_render_fx(
UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
UWord16 *nSamplesAvailable, /* o : number of CLDFB slots still to render */
const Word16 nchan_transport, /* i : number of transport channels */
- Word32 *output_f[] /* o : rendered time signal, Q11 */
+ Word32 *output_fx[] /* o : rendered time signal, Q11 */
)
{
- Word16 slots_to_render, first_sf, last_sf, subframe_idx;
+ Word16 slots_to_render, first_sf, last_sf, subframe_idx, n_samples_sf;
UWord16 slot_size, ch;
UWord16 nchan_out;
SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom;
Word32 *output_fx_local[MAX_OUTPUT_CHANNELS];
+#ifndef FIX_RENDERER_STACK
Word32 output_fx_local_buff[MAX_OUTPUT_CHANNELS][L_FRAME48k];
Word16 output_length;
+#endif
hSpatParamRendCom = st_ivas->hSpatParamRendCom;
nchan_out = BINAURAL_CHANNELS;
move16();
FOR( ch = 0; ch < nchan_out; ch++ )
{
+#ifdef FIX_RENDERER_STACK
+ output_fx_local[ch] = output_fx[ch];
+#else
output_fx_local[ch] = output_fx_local_buff[ch];
+#endif
}
slot_size = NS2SA_FX2( st_ivas->hDecoderConfig->output_Fs, CLDFB_SLOT_NS );
@@ -573,11 +570,14 @@ void ivas_dirac_dec_binaural_render_fx(
last_sf = add( last_sf, 1 );
}
+#ifndef FIX_RENDERER_STACK
output_length = 0;
move16();
+#endif
FOR( subframe_idx = first_sf; subframe_idx < last_sf; subframe_idx++ )
{
- Word16 n_samples_sf = imult1616( slot_size, hSpatParamRendCom->subframe_nbslots[subframe_idx] );
+ n_samples_sf = imult1616( slot_size, hSpatParamRendCom->subframe_nbslots[subframe_idx] );
+
ivas_dirac_dec_binaural_internal_fx( st_ivas, st_ivas->hCombinedOrientationData, output_fx_local, nchan_transport, subframe_idx );
FOR( ch = 0; ch < nchan_out; ch++ )
@@ -585,17 +585,19 @@ void ivas_dirac_dec_binaural_render_fx(
output_fx_local[ch] += n_samples_sf;
}
+#ifndef FIX_RENDERER_STACK
output_length = add( output_length, n_samples_sf );
-
+#endif
/* update combined orientation access index */
ivas_combined_orientation_update_index( st_ivas->hCombinedOrientationData, n_samples_sf );
}
+#ifndef FIX_RENDERER_STACK
FOR( ch = 0; ch < nchan_out; ch++ )
{
- Copy32( output_fx_local_buff[ch], output_f[ch], output_length );
+ Copy32( output_fx_local_buff[ch], output_fx[ch], output_length );
}
-
+#endif
IF( EQ_16( hSpatParamRendCom->slots_rendered, hSpatParamRendCom->num_slots ) )
{
hSpatParamRendCom->dirac_read_idx = add( hSpatParamRendCom->dirac_read_idx, DEFAULT_JBM_SUBFRAMES_5MS ) % hSpatParamRendCom->dirac_md_buffer_length;
@@ -608,11 +610,13 @@ void ivas_dirac_dec_binaural_render_fx(
return;
}
+
/*-------------------------------------------------------------------------
* ivas_dirac_dec_binaural_sba_gain()
*
* loudness correction for parametric binaural renderer
*------------------------------------------------------------------------*/
+
void ivas_dirac_dec_binaural_sba_gain_fx(
Word32 *output[], /* i/o: synthesized core-coder transport channels/DirAC output, inp Qx, out Qx-1 */
const Word16 nchan_remapped, /* i : num channels after remapping of TCs */
@@ -635,7 +639,7 @@ void ivas_dirac_dec_binaural_sba_gain_fx(
FOR( n = 0; n < nchan_remapped; n++ )
{
- v_multc_fixed_16( output[n], gain, output[n], output_frame ); /* Qx to Qx-1*/
+ v_multc_fx_16( output[n], gain, output[n], output_frame ); /* Qx to Qx-1*/
}
return;
@@ -645,6 +649,7 @@ void ivas_dirac_dec_binaural_sba_gain_fx(
/*-------------------------------------------------------------------------
* Local functions
*------------------------------------------------------------------------*/
+
static void ivas_dirac_dec_binaural_internal_fx(
Decoder_Struct *st_ivas,
COMBINED_ORIENTATION_HANDLE hCombinedOrientationData,
@@ -652,7 +657,7 @@ static void ivas_dirac_dec_binaural_internal_fx(
const Word16 nchan_transport,
const Word16 subframe )
{
- Word16 q_input = 11;
+ Word16 q_input = Q11;
move16();
IF( st_ivas->hSCE[0] )
{
@@ -795,6 +800,7 @@ static void ivas_dirac_dec_binaural_internal_fx(
set32_fx( Cldfb_ImagBuffer_in_fx[i][j], 0, 60 );
}
}
+
/* CLDFB Analysis of input */
FOR( slot = 0; slot < hSpatParamRendCom->subframe_nbslots[subframe]; slot++ )
{
@@ -845,11 +851,7 @@ static void ivas_dirac_dec_binaural_internal_fx(
slot,
st_ivas->hSCE[0]->hCoreCoder[0]->cna_dirac_flag && st_ivas->hSCE[0]->hCoreCoder[0]->flag_cna,
( st_ivas->hSCE[0]->hCoreCoder[0]->core_brate == FRAME_NO_DATA || st_ivas->hSCE[0]->hCoreCoder[0]->core_brate == SID_2k40 ) && ( st_ivas->hSCE[0]->hCoreCoder[0]->cng_type == FD_CNG ) && st_ivas->hSCE[0]->hCoreCoder[0]->cng_sba_flag,
-#ifdef FIX_2009_HIGH_NOISE_FLOOR_FOR_FX_DEC
st_ivas->hTcBuffer->q_tc_fx, &q_cldfb[2][slot] );
-#else
- 11, &q_cldfb[2][slot] );
-#endif
generate_masking_noise_dirac_ivas_fx( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom,
st_ivas->cldfbAnaDec[1], /*nothing will be analyzed, just get cnst*/
@@ -884,18 +886,10 @@ static void ivas_dirac_dec_binaural_internal_fx(
{
Cldfb_RealBuffer_in_fx[0][slot][b] = Mpy_32_16_1( Cldfb_RealBuffer_in_fx[0][slot][b], 23170 );
Cldfb_RealBuffer_in_fx[1][slot][b] = L_add( L_add( Cldfb_RealBuffer_in_fx[0][slot][b], L_shr( Cldfb_RealBuffer_in_fx[1][slot][b], 1 ) ), Cldfb_RealBuffer_in_fx[0][slot][b] );
-#ifdef FIX_2009_HIGH_NOISE_FLOOR_FOR_FX_DEC
Cldfb_RealBuffer_in_fx[0][slot][b] = L_add( Cldfb_RealBuffer_in_fx[0][slot][b], L_shr( Cldfb_RealBuffer_in_fx[2][slot][b], add( sub( q_cldfb[2][slot], q_input ), 6 ) ) );
-#else
- Cldfb_RealBuffer_in_fx[0][slot][b] = L_add( Cldfb_RealBuffer_in_fx[0][slot][b], L_shr( Cldfb_RealBuffer_in_fx[2][slot][b], 1 ) );
-#endif
Cldfb_ImagBuffer_in_fx[0][slot][b] = Mpy_32_16_1( Cldfb_ImagBuffer_in_fx[0][slot][b], 23170 );
Cldfb_ImagBuffer_in_fx[1][slot][b] = L_add( Cldfb_ImagBuffer_in_fx[0][slot][b], L_shr( Cldfb_ImagBuffer_in_fx[1][slot][b], 1 ) );
-#ifdef FIX_2009_HIGH_NOISE_FLOOR_FOR_FX_DEC
Cldfb_ImagBuffer_in_fx[0][slot][b] = L_add( Cldfb_ImagBuffer_in_fx[0][slot][b], L_shr( Cldfb_ImagBuffer_in_fx[2][slot][b], add( sub( q_cldfb[2][slot], q_input ), 6 ) ) );
-#else
- Cldfb_ImagBuffer_in_fx[0][slot][b] = L_add( Cldfb_ImagBuffer_in_fx[0][slot][b], L_shr( Cldfb_ImagBuffer_in_fx[2][slot][b], 1 ) );
-#endif
move32();
move32();
move32();
@@ -908,8 +902,8 @@ static void ivas_dirac_dec_binaural_internal_fx(
{
/* At mono input duplicate the channel to dual-mono, and apply gain
correction to ensure same overall level as in stereo mode */
- v_multc_fixed_16( Cldfb_RealBuffer_in_fx[0][slot], 23170, Cldfb_RealBuffer_in_fx[0][slot], nBins );
- v_multc_fixed_16( Cldfb_ImagBuffer_in_fx[0][slot], 23170, Cldfb_ImagBuffer_in_fx[0][slot], nBins );
+ v_multc_fx_16( Cldfb_RealBuffer_in_fx[0][slot], 23170, Cldfb_RealBuffer_in_fx[0][slot], nBins );
+ v_multc_fx_16( Cldfb_ImagBuffer_in_fx[0][slot], 23170, Cldfb_ImagBuffer_in_fx[0][slot], nBins );
Copy32( Cldfb_RealBuffer_in_fx[0][slot], Cldfb_RealBuffer_in_fx[1][slot], nBins );
Copy32( Cldfb_ImagBuffer_in_fx[0][slot], Cldfb_ImagBuffer_in_fx[1][slot], nBins );
@@ -946,8 +940,8 @@ static void ivas_dirac_dec_binaural_internal_fx(
IF( EQ_16( config_data.nchan_transport, 1 ) &&
( EQ_32( config_data.ivas_format, SBA_FORMAT ) || EQ_32( config_data.ivas_format, SBA_ISM_FORMAT ) ) )
{
- v_multc_fixed_16( Cldfb_RealBuffer_in_fx[ch][slot], 23170, Cldfb_RealBuffer_in_fx[ch][slot], nBins );
- v_multc_fixed_16( Cldfb_ImagBuffer_in_fx[ch][slot], 23170, Cldfb_ImagBuffer_in_fx[ch][slot], nBins );
+ v_multc_fx_16( Cldfb_RealBuffer_in_fx[ch][slot], 23170, Cldfb_RealBuffer_in_fx[ch][slot], nBins );
+ v_multc_fx_16( Cldfb_ImagBuffer_in_fx[ch][slot], 23170, Cldfb_ImagBuffer_in_fx[ch][slot], nBins );
}
}
}
@@ -985,10 +979,11 @@ static void ivas_dirac_dec_binaural_internal_fx(
test();
test();
test();
- IF( EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) && EQ_16( nchan_transport, 2 ) && NE_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) && NE_32( st_ivas->ism_mode, ISM_MASA_MODE_MASA_ONE_OBJ ) )
+ test();
+ test();
+ IF( ( EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) && ( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) || ( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) && ( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) || EQ_32( st_ivas->renderer_type, RENDERER_STEREO_PARAMETRIC ) ) ) ) ) || EQ_32( st_ivas->ivas_format, ISM_FORMAT ) )
{
- /* Un-tested function. No test-case is hitting.*/
- ivas_omasa_preProcessStereoTransportsForMovedObjects_fx( st_ivas, Cldfb_RealBuffer_in_fx, Cldfb_ImagBuffer_in_fx, &q_inp, nBins, subframe );
+ ivas_omasa_preProcessStereoTransportsForEditedObjects_fx( st_ivas, Cldfb_RealBuffer_in_fx, Cldfb_ImagBuffer_in_fx, &q_inp, nBins, subframe );
}
IF( hCombinedOrientationData )
@@ -1106,6 +1101,7 @@ static void ivas_dirac_dec_binaural_internal_fx(
move32();
}
+ test();
IF( EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_32( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
{
ivas_dirac_dec_binaural_process_output_fx( hDiracDecBin, hSpatParamRendCom, st_ivas->cldfbSynDec, output_fx, &q_out, Cldfb_RealBuffer_in_fx, Cldfb_ImagBuffer_in_fx, q_inp, max_band_decorr, numInChannels, config_data.processReverb, subframe, q_mat,
@@ -1127,14 +1123,14 @@ static void ivas_dirac_dec_binaural_internal_fx(
}
hDiracDecBin->hDiffuseDist = NULL;
-
- if ( pMultiBinPoseData != NULL && pMultiBinPoseData->num_poses > 1 )
+ test();
+ IF( pMultiBinPoseData != NULL && GT_16( pMultiBinPoseData->num_poses, 1 ) )
{
/* quaternion-based rotation from ivas_binRenderer_internal.c:ivas_binRenderer(), but using absolute rotation instead of delta rotations */
IVAS_QUATERNION Quaternions_rot, Quaternions_abs, *Quaternions_ref;
Word32 Rmat_local[3][3];
- if ( hCombinedOrientationData )
+ IF( hCombinedOrientationData )
{
Quaternions_ref = &hCombinedOrientationData->Quaternions[0];
Copy_Quat_fx( Quaternions_ref, &Quaternions_abs );
@@ -1158,7 +1154,8 @@ static void ivas_dirac_dec_binaural_internal_fx(
hDiracDecBin = st_ivas->hDiracDecBin[pos_idx];
assert( hDiracDecBin != NULL && "No DiracDecBin handle for this position" );
- if ( config_data.ivas_format == SBA_FORMAT || config_data.ivas_format == SBA_ISM_FORMAT )
+ test();
+ IF( EQ_32( config_data.ivas_format, SBA_FORMAT ) || EQ_32( config_data.ivas_format, SBA_ISM_FORMAT ) )
{
hDiracDecBin->hDiffuseDist = &diffuseDistData;
}
@@ -1182,7 +1179,6 @@ static void ivas_dirac_dec_binaural_internal_fx(
hCombinedOrientationData && hCombinedOrientationData->enableCombinedOrientation[subframe] > 0,
nchanSeparateChannels, st_ivas->hMasaIsmData );
-
q_mat = hDiracDecBin->q_processMtx;
move16();
q_mat = s_min( q_mat, hDiracDecBin->q_processMtxPrev );
@@ -1263,16 +1259,10 @@ static void ivas_dirac_dec_decorrelate_slot_fx(
const Word16 slot,
Word32 inRe[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /*q_inp*/
Word32 inIm[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /*q_inp*/
- Word16 q_inp,
-#ifdef FIX_2049_DIFF_IN_DECORR_TAIL
+ const Word16 q_inp,
Word32 decRe[][CLDFB_NO_CHANNELS_MAX],
Word32 decIm[][CLDFB_NO_CHANNELS_MAX],
- Word16 *q_out
-#else
- Word32 decRe[][CLDFB_NO_CHANNELS_MAX], /*q_inp*/
- Word32 decIm[][CLDFB_NO_CHANNELS_MAX] /*q_inp*/
-#endif
-)
+ Word16 *q_out )
{
Word16 offset, ch, bin;
Word32 onset_filter_fx[BINAURAL_CHANNELS * CLDFB_NO_CHANNELS_MAX]; /* 2 ch, 60 bins */
@@ -1324,11 +1314,9 @@ static void ivas_dirac_dec_decorrelate_slot_fx(
move32();
}
}
-#ifdef FIX_2049_DIFF_IN_DECORR_TAIL
- *q_out = q_decorrelatedFrameInterleaved;
-#else
- // q_decorrelatedFrameInterleaved will be same as q_inp/q_protoFrame //
-#endif
+
+ *q_out = q_decorrelatedFrameInterleaved; // q_decorrelatedFrameInterleaved will be same as q_inp/q_protoFrame //
+
return;
}
@@ -1343,7 +1331,7 @@ static void ivas_dirac_dec_binaural_formulate_input_covariance_matrices_fx(
Word32 *subFrameTotalEne_fx,
Word16 *subFrameTotalEne_e,
Word32 *IIReneLimiter_fx,
- Word16 q )
+ const Word16 q )
{
Word16 ch, slot, bin;
Word16 nBins;
@@ -1371,11 +1359,9 @@ static void ivas_dirac_dec_binaural_formulate_input_covariance_matrices_fx(
nBins = hSpatParamRendCom->num_freq_bands; /* Actually bins */
move16();
-
set32_fx( hDiracDecBin->ChCrossRe_fx, 0, nBins );
set32_fx( hDiracDecBin->ChCrossIm_fx, 0, nBins );
-
set16_fx( hDiracDecBin->ChCrossRe_e, 0, nBins );
set16_fx( hDiracDecBin->ChCrossIm_e, 0, nBins );
@@ -1510,7 +1496,6 @@ static void ivas_dirac_dec_binaural_formulate_input_covariance_matrices_fx(
}
}
-
test();
/* Temporal IIR-type smoothing of covariance matrices. Also apply encoding quality based smoothing factor. */
IF( EQ_32( ivas_format, MASA_FORMAT ) && LT_32( ivas_total_brate, MASA_STEREO_MIN_BITRATE ) )
@@ -1524,7 +1509,6 @@ static void ivas_dirac_dec_binaural_formulate_input_covariance_matrices_fx(
FOR( bin = 0; bin < nBins; bin++ )
{
-
/* Temporally smooth cov mtx estimates for resulting mixing matrix stability. The design principle is that
* the energy history (IIR) must not be more than double of the current frame energy. This provides more
* robust performance at energy offsets when compared to typical IIR averaging. */
@@ -1737,18 +1721,18 @@ static void ivas_dirac_dec_binaural_formulate_target_covariance_matrices_fx(
UWord16 ismDirIndex;
ismDirIndex = sub( dirIndex, hSpatParamRendCom->numParametricDirections );
assert( hMasaIsmData != NULL && "hMasaIsmData should not be NULL if we use it" );
- IF( hMasaIsmData->ism_is_edited[ismDirIndex] )
+ IF( hMasaIsmData->ism_dir_is_edited[ismDirIndex] )
{
- aziDeg = hMasaIsmData->azimuth_ism_edited[ismDirIndex];
+ aziDeg = hMasaIsmData->azimuth_ism_edited_fx[ismDirIndex];
move16();
- eleDeg = hMasaIsmData->elevation_ism_edited[ismDirIndex];
+ eleDeg = hMasaIsmData->elevation_ism_edited_fx[ismDirIndex];
move16();
}
ELSE
{
- aziDeg = hMasaIsmData->azimuth_ism[ismDirIndex][dirac_read_idx];
+ aziDeg = hMasaIsmData->azimuth_ism_fx[ismDirIndex][dirac_read_idx];
move16();
- eleDeg = hMasaIsmData->elevation_ism[ismDirIndex][dirac_read_idx];
+ eleDeg = hMasaIsmData->elevation_ism_fx[ismDirIndex][dirac_read_idx];
move16();
}
ratio_fx = hMasaIsmData->energy_ratio_ism_fx[ismDirIndex][dirac_read_idx][bin];
@@ -2487,7 +2471,6 @@ static void ivas_dirac_dec_binaural_determine_processing_matrices_fx(
q_gain = sub( 31, add( exp2, exp1 ) );
}
-
// 1073741824 = 4 in Q28
IF( LT_16( q_gain, Q28 ) )
{
@@ -2598,17 +2581,38 @@ static void ivas_dirac_dec_binaural_determine_processing_matrices_fx(
{
IF( EQ_16( ism_mode, ISM_MASA_MODE_DISC ) )
{
- aziDeg = hMasaIsmData->azimuth_ism[chB][dirac_read_idx];
- move16();
- eleDeg = hMasaIsmData->elevation_ism[chB][dirac_read_idx];
- move16();
+ IF( hMasaIsmData->ism_dir_is_edited[chB] )
+ {
+ aziDeg = hMasaIsmData->azimuth_ism_edited_fx[chB];
+ move16();
+ eleDeg = hMasaIsmData->elevation_ism_edited_fx[chB];
+ move16();
+ }
+ ELSE
+ {
+ aziDeg = hMasaIsmData->azimuth_ism_fx[chB][dirac_read_idx];
+ move16();
+ eleDeg = hMasaIsmData->elevation_ism_fx[chB][dirac_read_idx];
+ move16();
+ }
}
ELSE
{
- aziDeg = hMasaIsmData->azimuth_separated_ism[dirac_read_idx];
- move16();
- eleDeg = hMasaIsmData->elevation_separated_ism[dirac_read_idx];
- move16();
+ test();
+ IF( ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ && hMasaIsmData->ism_dir_is_edited[hMasaIsmData->idx_separated_ism] )
+ {
+ aziDeg = hMasaIsmData->azimuth_ism_edited_fx[hMasaIsmData->idx_separated_ism];
+ move16();
+ eleDeg = hMasaIsmData->elevation_ism_edited_fx[hMasaIsmData->idx_separated_ism];
+ move16();
+ }
+ ELSE
+ {
+ aziDeg = hMasaIsmData->azimuth_separated_ism_fx[dirac_read_idx];
+ move16();
+ eleDeg = hMasaIsmData->elevation_separated_ism_fx[dirac_read_idx];
+ move16();
+ }
instantChange = 1;
move16();
}
@@ -2748,11 +2752,7 @@ static void ivas_dirac_dec_binaural_process_output_fx(
move16();
move16();
move16();
-#ifdef FIX_2049_DIFF_IN_DECORR_TAIL
Word32 decSlotRe_fx[CLDFB_SLOTS_PER_SUBFRAME][BINAURAL_CHANNELS][CLDFB_NO_CHANNELS_MAX], decSlotIm_fx[CLDFB_SLOTS_PER_SUBFRAME][BINAURAL_CHANNELS][CLDFB_NO_CHANNELS_MAX];
-#else
- Word32 decSlotRe_fx[BINAURAL_CHANNELS][CLDFB_NO_CHANNELS_MAX], decSlotIm_fx[BINAURAL_CHANNELS][CLDFB_NO_CHANNELS_MAX];
-#endif
Word32 outSlotRe_fx[CLDFB_NO_CHANNELS_MAX], outSlotIm_fx[CLDFB_NO_CHANNELS_MAX];
Word16 q_inp[6][CLDFB_SLOTS_PER_SUBFRAME];
Word16 interpVal_fx;
@@ -2762,11 +2762,9 @@ static void ivas_dirac_dec_binaural_process_output_fx(
move16();
Word16 ch_len = s_max( 4, numInChannels );
Word16 eff_q;
-#ifdef FIX_2049_DIFF_IN_DECORR_TAIL
Word16 q_decSlot[CLDFB_SLOTS_PER_SUBFRAME];
Word16 q_decSlotMin = 31;
move16();
-#endif
IF( processReverb )
{
@@ -2813,7 +2811,6 @@ static void ivas_dirac_dec_binaural_process_output_fx(
move16();
}
-#ifdef FIX_2049_DIFF_IN_DECORR_TAIL
IF( !hDiracDecBin->useTdDecorr && ( max_band_decorr > 0 ) )
{
FOR( slot = 0; slot < nSlots; slot++ )
@@ -2855,7 +2852,7 @@ static void ivas_dirac_dec_binaural_process_output_fx(
}
}
}
-#endif
+
eff_q = sub( add( q_inp_mix, q_mat ), 15 );
FOR( Word16 i = 0; i < ch_len; i++ )
@@ -2914,31 +2911,18 @@ static void ivas_dirac_dec_binaural_process_output_fx(
{
if ( recompute == 1 )
{
-#ifndef FIX_2049_DIFF_IN_DECORR_TAIL
- ivas_dirac_dec_decorrelate_slot_fx( hDiracDecBin, nBins, slot, inRe_fx, inIm_fx, q_inp_mix, decSlotRe_fx, decSlotIm_fx );
-#endif
FOR( chA = 0; chA < BINAURAL_CHANNELS; chA++ )
{
-#ifdef FIX_2049_DIFF_IN_DECORR_TAIL
Copy32( decSlotRe_fx[slot][chA], decorrRe_fx[chA][slot], CLDFB_NO_CHANNELS_MAX );
Copy32( decSlotIm_fx[slot][chA], decorrIm_fx[chA][slot], CLDFB_NO_CHANNELS_MAX );
-#else
- Copy32( decSlotRe_fx[chA], decorrRe_fx[chA][slot], CLDFB_NO_CHANNELS_MAX );
- Copy32( decSlotIm_fx[chA], decorrIm_fx[chA][slot], CLDFB_NO_CHANNELS_MAX );
-#endif
}
}
else
{
FOR( chA = 0; chA < BINAURAL_CHANNELS; chA++ )
{
-#ifdef FIX_2049_DIFF_IN_DECORR_TAIL
Copy32( decorrRe_fx[chA][slot], decSlotRe_fx[slot][chA], CLDFB_NO_CHANNELS_MAX );
Copy32( decorrIm_fx[chA][slot], decSlotIm_fx[slot][chA], CLDFB_NO_CHANNELS_MAX );
-#else
- Copy32( decorrRe_fx[chA][slot], decSlotRe_fx[chA], CLDFB_NO_CHANNELS_MAX );
- Copy32( decorrIm_fx[chA][slot], decSlotIm_fx[chA], CLDFB_NO_CHANNELS_MAX );
-#endif
}
}
}
@@ -2966,13 +2950,8 @@ static void ivas_dirac_dec_binaural_process_output_fx(
}
ELSE
{
-#ifdef FIX_2049_DIFF_IN_DECORR_TAIL
decSlotRePointer_fx = decSlotRe_fx[slot][chB];
decSlotImPointer_fx = decSlotIm_fx[slot][chB];
-#else
- decSlotRePointer_fx = decSlotRe_fx[chB];
- decSlotImPointer_fx = decSlotIm_fx[chB];
-#endif
}
}
ELSE
@@ -3706,7 +3685,7 @@ static void eig2x2_fx(
}
/* Numeric case, when input is near an identity matrix with a gain */
- tmp1 = Mpy_32_32( 2147484, add_fx ); // 2147484 = 1e-3f in Q31
+ tmp1 = Mpy_32_32( INV_1000_Q31, add_fx );
IF( LT_16( q_tmp1, q_tmp2 ) )
{
@@ -4572,7 +4551,7 @@ static void formulate2x2MixingMatrix_fx(
move32();
q_Sx = sub( add( q_Sx, Q14 ), 15 );
- temp = Mpy_32_32( E_in2, 2147484 ); // 2147484 = 0.001f in Q31
+ temp = Mpy_32_32( E_in2, INV_1000_Q31 );
temp = L_max( temp, E_in1 );
IF( temp == 0 )
@@ -4601,8 +4580,8 @@ static void formulate2x2MixingMatrix_fx(
}
move32();
- temp = Mpy_32_32( E_in1, 2147484 ); // 2147484 = 0.001f in Q31
- temp = L_max( temp, E_in2 ); // q_ein
+ temp = Mpy_32_32( E_in1, 2147484 );
+ temp = L_max( temp, E_in2 ); // q_ein
IF( temp == 0 )
{
IF( E_out2 == 0 )
@@ -4672,20 +4651,18 @@ static void formulate2x2MixingMatrix_fx(
eig2x2_fx( tmpRe_fx[0][0], tmpRe_fx[1][1], q_temp, tmpRe_fx[1][0], tmpIm_fx[1][0], q_temp, Ure_fx, Uim_fx, &q_U, D_fx, &q_D );
-#ifdef FIX_1819_EIGENVALUE_ERROR
IF( D_fx[0] != 0 && D_fx[1] == 0 ) // Due to an eig2x2 error, sometimes D_fx[1] becomes zero, which implies that the input matrix should be singular (i.e., determinant = 0).
{
Word32 det_fx = L_sub_sat( Mult_32_32( tmpRe_fx[0][0], tmpRe_fx[1][1] ),
- L_add_sat(
- Mult_32_32( tmpRe_fx[1][0], tmpRe_fx[1][0] ),
- Mult_32_32( tmpIm_fx[1][0], tmpIm_fx[1][0] ) ) );
+ L_add_sat( Mult_32_32( tmpRe_fx[1][0], tmpRe_fx[1][0] ),
+ Mult_32_32( tmpIm_fx[1][0], tmpIm_fx[1][0] ) ) );
if ( det_fx != 0 )
{
D_fx[1] = SMALL_EIGENVALUE; // Setting D_fx[1] to epsilon has no effect, as the value is too small to affect the output.
move32();
}
}
-#endif
+
IF( D_fx[0] == 0 )
{
temp = ONE_DIV_EPSILON_MANT; /* Result of 1.0/eps with full precision */
@@ -4944,7 +4921,6 @@ static void getDirectPartGains_fx(
const Word16 isHeadtracked,
HRTFS_PARAMBIN_HANDLE hHrtfParambin )
{
- // float aziRad, eleRad;
Word32 y, mappedX;
Word16 aziRadMapped, A, A2, A3;
const Word16 LsAngleRad = 17157; // Q15
@@ -4958,113 +4934,137 @@ static void getDirectPartGains_fx(
IF( renderStereoOutputInsteadOfBinaural ) /* In stereo (i.e. non-binaural) rendering mode */
{
- /* Convert azi and ele to an azi value of the cone of confusion */
-
- // y = ( sinf( aziRad ) * cosf( eleRad ) );
-
- IF( GT_16( abs_s( eleDeg ), 180 ) )
- {
- // cos(180 + x) = -cos(x)
- cos_val = -ptr_cos[sub( abs_s( eleDeg ), 180 )]; // Q31
- }
- ELSE
- {
- cos_val = ptr_cos[abs_s( eleDeg )]; // Q31
- }
+ *lImagp = 0;
+ *rImagp = 0;
+ move32();
move32();
- IF( GT_16( aziDeg, 180 ) )
- {
- // sin(180 + x) = -sin(x)
- sin_val = -ptr_sin[sub( aziDeg, 180 )]; // Q31
- }
- ELSE IF( LT_16( aziDeg, -180 ) )
+ test();
+ IF( EQ_16( aziDeg, gainCache->azi ) && EQ_16( eleDeg, gainCache->ele ) )
{
- // sin(-(180 + x)) = sin(180 + x) = sinx
- sin_val = ptr_sin[sub( abs_s( aziDeg ), 180 )]; // Q31
+ *lRealp = gainCache->shVec_fx[0]; /* Reused memory */
+ *rRealp = gainCache->shVec_fx[1]; /* Reused memory */
+ move32();
+ move32();
}
ELSE
{
- sin_val = ptr_sin[aziDeg]; // Q31
- }
- move32();
-
- y = Mpy_32_32( sin_val, cos_val ); // Q31
- e_mappedX = 0;
- move16();
- mappedX = Sqrt32( L_max( 0, L_sub( ONE_IN_Q31, Mpy_32_32( y, y ) ) ), &e_mappedX );
+ /* Convert azi and ele to an azi value of the cone of confusion */
- aziRadMapped = BASOP_util_atan2( y, mappedX, negate( e_mappedX ) ); // Q13
+ // y = ( sinf( aziRad ) * cosf( eleRad ) );
- /* Determine the real valued amplitude panning gains */
- *lImagp = 0;
- *rImagp = 0;
- move32();
- move32();
- IF( GE_16( aziRadMapped, shr( LsAngleRad, 2 ) ) )
- { /* Left side */
- *lRealp = ONE_IN_Q31;
- *rRealp = 0;
+ IF( GT_16( abs_s( eleDeg ), 180 ) )
+ {
+ // cos(180 + x) = -cos(x)
+ cos_val = -ptr_cos[sub( abs_s( eleDeg ), 180 )]; // Q31
+ }
+ ELSE
+ {
+ cos_val = ptr_cos[abs_s( eleDeg )]; // Q31
+ }
move32();
+
+ IF( GT_16( aziDeg, 180 ) )
+ {
+ // sin(180 + x) = -sin(x)
+ sin_val = -ptr_sin[sub( aziDeg, 180 )]; // Q31
+ }
+ ELSE IF( LT_16( aziDeg, -180 ) )
+ {
+ // sin(-(180 + x)) = sin(180 + x) = sinx
+ sin_val = ptr_sin[sub( abs_s( aziDeg ), 180 )]; // Q31
+ }
+ ELSE
+ {
+ sin_val = ptr_sin[aziDeg]; // Q31
+ }
move32();
- }
- ELSE IF( LE_16( aziRadMapped, negate( shr( LsAngleRad, 2 ) ) ) )
- { /* Right side */
- *lRealp = 0;
- *rRealp = ONE_IN_Q31;
+
+ y = Mpy_32_32( sin_val, cos_val ); // Q31
+ e_mappedX = 0;
+ move16();
+ mappedX = Sqrt32( L_max( 0, L_sub( ONE_IN_Q31, Mpy_32_32( y, y ) ) ), &e_mappedX );
+
+ aziRadMapped = BASOP_util_atan2( y, mappedX, negate( e_mappedX ) ); // Q13
+
+ /* Determine the real valued amplitude panning gains */
move32();
move32();
- }
- ELSE /* Tangent panning law */
- {
- Word16 e_div, div, e_a, e_a3, temp_16_1, temp_16_2, e_num, e_den;
- div = BASOP_Util_Divide3232_Scale( y, mappedX, &e_div );
- e_div = sub( e_div, e_mappedX );
+ IF( GE_16( aziRadMapped, shr( LsAngleRad, 2 ) ) )
+ { /* Left side */
+ *lRealp = ONE_IN_Q31;
+ *rRealp = 0;
+ move32();
+ move32();
+ }
+ ELSE IF( LE_16( aziRadMapped, negate( shr( LsAngleRad, 2 ) ) ) )
+ { /* Right side */
+ *lRealp = 0;
+ *rRealp = ONE_IN_Q31;
+ move32();
+ move32();
+ }
+ ELSE /* Tangent panning law */
+ {
+ Word16 e_div, div, e_a, e_a3, temp_16_1, temp_16_2, e_num, e_den;
+ div = BASOP_Util_Divide3232_Scale( y, mappedX, &e_div );
+ e_div = sub( e_div, e_mappedX );
- A = mult( div, INV_TAN30_FX );
- e_a = add( e_div, 1 );
+ A = mult( div, INV_TAN30_FX );
+ e_a = add( e_div, 1 );
- e_num = BASOP_Util_Add_MantExp( A, e_a, -32767, 0, &temp_16_1 );
- e_den = BASOP_Util_Add_MantExp( A, e_a, 32767, 0, &temp_16_2 );
- IF( temp_16_2 <= 0 )
- {
- temp_16_2 = 32;
- e_den = 0;
+ e_num = BASOP_Util_Add_MantExp( A, e_a, -32767, 0, &temp_16_1 );
+ e_den = BASOP_Util_Add_MantExp( A, e_a, 32767, 0, &temp_16_2 );
+ IF( temp_16_2 <= 0 )
+ {
+ temp_16_2 = 32;
+ e_den = 0;
+ move16();
+ move16();
+ }
+ A2 = BASOP_Util_Divide1616_Scale( temp_16_1, temp_16_2, &e_div );
+ e_div = add( e_div, sub( e_num, e_den ) );
+
+ e_den = BASOP_Util_Add_MantExp( mult( A2, A2 ), add( e_div, e_div ), 32767, 0, &temp_16_2 );
+ A3 = BASOP_Util_Divide1616_Scale( 32767, temp_16_2, &e_a3 );
+ e_a3 = sub( e_a3, e_den );
+ // A3 = 1.0f / ( A2 * A2 + 1.0f ); // Q15
+ Word32 temp_32 = L_shr( L_deposit_h( A3 ), sub( 0, e_a3 ) );
+ Word16 temp_e = 0;
+ e_a3 = 0;
move16();
move16();
+ *lRealp = Sqrt32( temp_32, &e_a3 );
+ *rRealp = Sqrt32( L_sub( ONE_IN_Q31, temp_32 ), &temp_e );
+ *lRealp = L_shr( *lRealp, sub( 0, e_a3 ) ); // Q31
+ *rRealp = L_shr( *rRealp, sub( 0, temp_e ) ); // Q31
+ move32();
+ move32();
+ move32();
+ move32();
}
- A2 = BASOP_Util_Divide1616_Scale( temp_16_1, temp_16_2, &e_div );
- e_div = add( e_div, sub( e_num, e_den ) );
- e_den = BASOP_Util_Add_MantExp( mult( A2, A2 ), add( e_div, e_div ), 32767, 0, &temp_16_2 );
- A3 = BASOP_Util_Divide1616_Scale( 32767, temp_16_2, &e_a3 );
- e_a3 = sub( e_a3, e_den );
- // A3 = 1.0f / ( A2 * A2 + 1.0f ); // Q15
- Word32 temp_32 = L_shr( L_deposit_h( A3 ), sub( 0, e_a3 ) );
- Word16 temp_e = 0;
- e_a3 = 0;
- move16();
- move16();
- *lRealp = Sqrt32( temp_32, &e_a3 );
- *rRealp = Sqrt32( L_sub( ONE_IN_Q31, temp_32 ), &temp_e );
- *lRealp = L_shr( *lRealp, sub( 0, e_a3 ) ); // Q31
- *rRealp = L_shr( *rRealp, sub( 0, temp_e ) ); // Q31
+ /* Scaling to have the same expected gain as for the HRTF rendering */
+ *lRealp = Mpy_32_32( *lRealp, SQRT2_FX ); // Q30
+ *rRealp = Mpy_32_32( *rRealp, SQRT2_FX ); // Q30
+
+ *lRealp = L_shr( *lRealp, 2 ); // Q28
+ *rRealp = L_shr( *rRealp, 2 ); // Q28
move32();
move32();
move32();
move32();
- }
-
- /* Scaling to have the same expected gain as for the HRTF rendering */
- *lRealp = Mpy_32_32( *lRealp, SQRT2_FIXED ); // Q30
- *rRealp = Mpy_32_32( *rRealp, SQRT2_FIXED ); // Q30
- *lRealp = L_shr( *lRealp, 2 ); // Q28
- *rRealp = L_shr( *rRealp, 2 ); // Q28
- move32();
- move32();
- move32();
- move32();
+ /* Store to gain cache */
+ gainCache->azi = aziDeg;
+ gainCache->ele = eleDeg;
+ gainCache->shVec_fx[0] = *lRealp; /* Reuse memory */
+ gainCache->shVec_fx[1] = *rRealp; /* Reuse memory */
+ move16();
+ move16();
+ move32();
+ move32();
+ }
}
ELSE /* In regular binaural rendering mode */
{
@@ -5093,6 +5093,7 @@ static void getDirectPartGains_fx(
return;
}
+
static void hrtfShGetHrtf_fx(
const Word16 bin,
const Word16 aziDeg,
@@ -5108,6 +5109,7 @@ static void hrtfShGetHrtf_fx(
Word16 k;
Word16( *hrtfShCoeffsReInt_fx )[16][60];
Word16( *hrtfShCoeffsImInt_fx )[16][60];
+
hrtfShCoeffsReInt_fx = hHrtfParambin->hrtfShCoeffsRe_fx;
hrtfShCoeffsImInt_fx = hHrtfParambin->hrtfShCoeffsIm_fx;
@@ -5141,11 +5143,7 @@ static void hrtfShGetHrtf_fx(
{
Word32 shVec[HRTF_SH_CHANNELS];
- ivas_dirac_dec_get_response_fx( aziDeg,
- eleDeg,
- shVec,
- HRTF_SH_ORDER,
- Q29 );
+ ivas_dirac_dec_get_response_fx( aziDeg, eleDeg, shVec, HRTF_SH_ORDER, Q29 );
FOR( k = 0; k < HRTF_SH_CHANNELS; k++ )
{
@@ -5246,29 +5244,51 @@ Word16 configure_reqularization_factor_fx(
return reqularizationFactor;
}
+
/*-------------------------------------------------------------------*
- * ivas_omasa_preProcessStereoTransportsForMovedObjects_fx()
+ * ivas_omasa_preProcessStereoTransportsForEditedObjects()
*
*
*-------------------------------------------------------------------*/
-void ivas_omasa_preProcessStereoTransportsForMovedObjects_fx(
+void ivas_omasa_preProcessStereoTransportsForEditedObjects_fx(
Decoder_Struct *st_ivas,
- Word32 inRe_fx[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /*cldfb_buf_q*/
- Word32 inIm_fx[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX], /*cldfb_buf_q*/
+ Word32 inRe_fx[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX],
+ Word32 inIm_fx[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX],
Word16 *cldfb_buf_q,
const Word16 nBins,
const Word16 subframe )
{
- Word16 bin, ch, inCh, outCh, ismDirIndex, slot;
+ Word16 bin, ch, inCh, outCh, ismDirIndex, slot, band_idx, bin_lo, bin_hi, max_band, n_ism;
SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom;
MASA_ISM_DATA_HANDLE hMasaIsmData;
+ PARAM_ISM_DEC_HANDLE hParamIsmDec;
UWord8 enableCentering;
Word16 dirac_read_idx;
Word16 nSlots;
+ Word16 panGainsOut[4][2];
+ Word16 panGainsIn[4][2];
+ Word16 panEnesOut[4][2];
+ Word16 panEnesIn[4][2];
+ UWord8 ismGainEdited[4];
+ UWord8 ismDirEdited[4];
+ UWord8 masaGainEdited;
+ UWord8 masaIsmMode;
hSpatParamRendCom = st_ivas->hSpatParamRendCom;
hMasaIsmData = st_ivas->hMasaIsmData;
+ hParamIsmDec = st_ivas->hParamIsmDec;
+
+ IF( EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) )
+ {
+ masaIsmMode = 1;
+ move16();
+ }
+ ELSE
+ {
+ masaIsmMode = 0;
+ move16();
+ }
test();
test();
@@ -5283,310 +5303,1154 @@ void ivas_omasa_preProcessStereoTransportsForMovedObjects_fx(
move16();
}
- /* Bypass processing until first object is moved */
- IF( hMasaIsmData->objectsMoved == 0 )
+ test();
+ IF( EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) || EQ_32( st_ivas->ivas_format, ISM_FORMAT ) )
+ {
+ n_ism = st_ivas->nchan_ism;
+ move16();
+ }
+ ELSE
+ {
+ n_ism = hSpatParamRendCom->numIsmDirections;
+ move16();
+ }
+
+ FOR( ismDirIndex = 0; ismDirIndex < n_ism; ismDirIndex++ )
+ {
+ ismGainEdited[ismDirIndex] = hMasaIsmData->ism_gain_is_edited[ismDirIndex];
+ move16();
+ ismDirEdited[ismDirIndex] = hMasaIsmData->ism_dir_is_edited[ismDirIndex];
+ move16();
+ }
+ masaGainEdited = hMasaIsmData->masa_gain_is_edited;
+ move16();
+
+ /* Bypass processing until first object is moved or gained */
+ IF( EQ_32( hMasaIsmData->objectsEdited, 0 ) )
{
- FOR( ismDirIndex = 0; ismDirIndex < hSpatParamRendCom->numIsmDirections; ismDirIndex++ )
+ FOR( ismDirIndex = 0; ismDirIndex < n_ism; ismDirIndex++ )
{
- if ( hMasaIsmData->ism_is_edited[ismDirIndex] )
+ IF( ismDirEdited[ismDirIndex] )
+ {
+ hMasaIsmData->objectsEdited = 1;
+ move16();
+ }
+
+ IF( ismGainEdited[ismDirIndex] )
{
- hMasaIsmData->objectsMoved = 1;
+ hMasaIsmData->objectsEdited = 1;
move16();
}
}
- IF( hMasaIsmData->objectsMoved == 0 )
+
+ IF( masaGainEdited )
+ {
+ hMasaIsmData->objectsEdited = 1;
+ move16();
+ }
+
+ IF( EQ_32( hMasaIsmData->objectsEdited, 0 ) )
{
/* No objects have moved so far */
return;
}
}
- /* Perform object-movement based processing */
- nSlots = hSpatParamRendCom->subframe_nbslots[subframe];
- move16();
- dirac_read_idx = hSpatParamRendCom->render_to_md_map[subframe];
- move16();
-
- FOR( bin = 0; bin < nBins; bin++ )
+ /* OMASA gaining for discrete OMASA mode with stereo_param/bin_room_param renderer */
+ test();
+ test();
+ test();
+ IF( ( EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_PARAMETRIC_ROOM ) || EQ_32( st_ivas->renderer_type, RENDERER_STEREO_PARAMETRIC ) ) && EQ_32( st_ivas->ism_mode, ISM_MASA_MODE_DISC ) )
{
- Word16 ismPreprocMtxNew_fx[2][2];
- Word16 ismPreprocMtxIncrement_fx[2][2];
- Word16 eneMove_fx[2];
- Word16 enePreserve_fx[2];
- Word16 ismRatioAcc_fx;
- Word32 subframeEne_fx;
- Word32 Enes_fx[2];
- Word16 normEnes_fx[2];
- Word16 remainderNormEne_fx;
- Word16 normEnes_q_fx[2], temp_q = 0;
- Word16 eneMove_q_fx[2], enePreserve_q_fx[2], temp1;
- Word32 temp;
+ /* ISM gaining */
+ FOR( ch = 0; ch < n_ism; ch++ )
+ {
+ IF( st_ivas->hMasaIsmData->ism_gain_is_edited[ch] )
+ {
+ FOR( slot = 0; slot < hSpatParamRendCom->subframe_nbslots[subframe]; slot++ )
+ {
+ Word16 gain;
+ gain = st_ivas->hMasaIsmData->gain_ism_edited_fx[ch];
+ move32();
- set16_fx( ismPreprocMtxNew_fx[0], 0, 2 );
- set16_fx( ismPreprocMtxNew_fx[1], 0, 2 );
- set16_fx( ismPreprocMtxIncrement_fx[0], 0, 2 );
- set16_fx( ismPreprocMtxIncrement_fx[1], 0, 2 );
- set16_fx( eneMove_fx, 0, 2 );
- set16_fx( enePreserve_fx, 0, 2 );
- ismRatioAcc_fx = 0;
- move16();
- subframeEne_fx = 0;
- move32();
- set16_fx( normEnes_fx, 0, 2 );
- set32_fx( Enes_fx, 0, 2 );
- set16_fx( normEnes_q_fx, Q31, 2 );
- set16_fx( eneMove_q_fx, Q31, 2 );
- set16_fx( enePreserve_q_fx, Q31, 2 );
+ v_multc_fx_16( inRe_fx[ch + 2][slot], gain, inRe_fx[ch + 2][slot], nBins ); // Q = *cldfb_buf_q - 3
+ Scale_sig32( inRe_fx[ch + 2][slot], nBins, Q3 ); // Q = *cldfb_buf_q
- /* Determine transport normalized energies and subframe energy */
- FOR( slot = 0; slot < nSlots; slot++ )
+ v_multc_fx_16( inIm_fx[ch + 2][slot], gain, inIm_fx[ch + 2][slot], nBins ); // Q = *cldfb_buf_q - 3
+ Scale_sig32( inIm_fx[ch + 2][slot], nBins, Q3 ); // Q = *cldfb_buf_q
+ }
+ }
+ }
+
+ /* MASA gaining */
+ FOR( ch = 0; ch < 2; ch++ )
{
- FOR( ch = 0; ch < 2; ch++ )
+ IF( masaGainEdited )
{
- Enes_fx[ch] = L_add( Enes_fx[ch], Mpy_32_32( inRe_fx[ch][slot][bin], inRe_fx[ch][slot][bin] ) ); // Q = *cldfb_buf_q + *cldfb_buf_q - 31 = Q-19
- move32();
- Enes_fx[ch] = L_add( Enes_fx[ch], Mpy_32_32( inIm_fx[ch][slot][bin], inIm_fx[ch][slot][bin] ) ); // Q = *cldfb_buf_q + *cldfb_buf_q - 31 = Q-19
- move32();
- }
+ FOR( slot = 0; slot < hSpatParamRendCom->subframe_nbslots[subframe]; slot++ )
+ {
+ Word16 gain_masa;
+ gain_masa = st_ivas->hMasaIsmData->gain_masa_edited_fx;
+ move32();
- subframeEne_fx = L_add( Enes_fx[0], Enes_fx[1] ); // Q = *cldfb_buf_q + *cldfb_buf_q - 31 = Q-19
+ v_multc_fx_16( inRe_fx[ch][slot], gain_masa, inRe_fx[ch][slot], nBins ); // Q = *cldfb_buf_q - 3
+ Scale_sig32( inRe_fx[ch][slot], nBins, Q3 ); // Q = *cldfb_buf_q
- IF( subframeEne_fx != 0 )
- {
- normEnes_fx[0] = BASOP_Util_Divide3232_Scale( Enes_fx[0], subframeEne_fx, &temp_q );
- move32();
- normEnes_fx[0] = shr( normEnes_fx[0], sub( sub( 15, temp_q ), Q12 ) ); // Q12
- move32();
- normEnes_fx[1] = BASOP_Util_Divide3232_Scale( Enes_fx[1], subframeEne_fx, &temp_q );
- move32();
- normEnes_fx[1] = shr( normEnes_fx[1], sub( sub( 15, temp_q ), Q12 ) ); // Q12
- move32();
+ v_multc_fx_16( inIm_fx[ch][slot], gain_masa, inIm_fx[ch][slot], nBins ); // Q = *cldfb_buf_q - 3
+ Scale_sig32( inIm_fx[ch][slot], nBins, Q3 ); // Q = *cldfb_buf_q
+ }
}
- ELSE
+ }
+ }
+ ELSE IF( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) && st_ivas->hISMDTX.dtx_flag ) /* If dtx on, perform just the smoothing of the processing gains */
+ {
+ Word32 totalTargetEne;
+ Word32 ismPreprocMtxNew[2][2];
+ Word32 ismPreprocMtxIncrement[2][2];
+ Word32 outSlotRe[2][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX];
+ Word32 outSlotIm[2][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX];
+ Word32 eqVal;
+ Word32 temp;
+ Word16 temp_q;
+ Word64 temp64;
+ Word16 exp1;
+ Word16 totalTargetEne_e;
+
+ nSlots = hSpatParamRendCom->subframe_nbslots[subframe];
+ move16();
+
+ /* Use diagonal mixing matrix as the instant mixing matrix, to slowly fade away the editing during dtx */
+ FOR( ch = 0; ch < 2; ch++ )
+ {
+ ismPreprocMtxNew[ch][ch] = ONE_IN_Q28;
+ move32();
+ ismPreprocMtxNew[sub( 1, ch )][ch] = 0;
+ move32();
+ }
+
+ /* Determine the highest band */
+ max_band = 0;
+ move16();
+ test();
+ WHILE( GT_16( sub( MAX_PARAM_ISM_NBANDS, max_band ), 0 ) && GT_16( sub( nBins, hParamIsmDec->hParamIsm->band_grouping[max_band] ), 0 ) )
+ {
+ max_band++;
+ }
+
+ /* Init out array */
+ FOR( slot = 0; slot < nSlots; slot++ )
+ {
+ FOR( ch = 0; ch < BINAURAL_CHANNELS; ch++ )
+ {
+ set32_fx( outSlotRe[ch][slot], 0, CLDFB_NO_CHANNELS_MAX );
+ set32_fx( outSlotIm[ch][slot], 0, CLDFB_NO_CHANNELS_MAX );
+ }
+ }
+
+ // /* Perform the processing in frequency bands */
+ FOR( band_idx = 0; band_idx < max_band; band_idx++ )
+ {
+ bin_lo = hParamIsmDec->hParamIsm->band_grouping[band_idx];
+ bin_hi = s_min( hParamIsmDec->hParamIsm->band_grouping[band_idx + 1], nBins );
+ move16();
+ move16();
+
+ /* Determine transport energies */
+ totalTargetEne = 0;
+ totalTargetEne_e = 0;
+ move32();
+ move16();
+ FOR( slot = 0; slot < nSlots; slot++ )
+ {
+ FOR( ch = 0; ch < 2; ch++ )
+ {
+ FOR( bin = bin_lo; bin < bin_hi; bin++ )
+ {
+
+ Word32 instEne_fx;
+ temp64 = W_mult0_32_32( inRe_fx[ch][slot][bin], inRe_fx[ch][slot][bin] ); // 2q-3
+ temp64 = W_add( temp64, W_mult0_32_32( inIm_fx[ch][slot][bin], inIm_fx[ch][slot][bin] ) ); // 2q-3
+ exp1 = W_norm( temp64 );
+ instEne_fx = W_extract_h( W_shl( temp64, exp1 ) ); // 2*cldfb_buf_q - 32 + exp1
+ exp1 = 31 - ( 2 * ( *cldfb_buf_q ) - 32 + exp1 );
+ move16();
+
+ BASOP_Util_Add_Mant32Exp( totalTargetEne, totalTargetEne_e, instEne_fx, exp1, &totalTargetEne_e );
+ }
+ }
+ }
+
+ /* Get increment value for temporal interpolation */
+ FOR( inCh = 0; inCh < 2; inCh++ )
+ {
+ FOR( outCh = 0; outCh < 2; outCh++ )
+ {
+ temp = L_sub( ismPreprocMtxNew[outCh][inCh], hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][band_idx] ); // Q28
+ ismPreprocMtxIncrement[outCh][inCh] = L_shr( temp, 2 ); // Divide by 4
+ move32();
+ }
+ }
+
+ /* Mix signals */
+ hMasaIsmData->preprocEneTarget_fx[band_idx] = Mpy_32_16_1( hMasaIsmData->preprocEneTarget_fx[band_idx], STEREO_PREPROCESS_IIR_FACTOR_Q15 ); // Q = preprocEneTarget_e
+ move32();
+
+ hMasaIsmData->preprocEneRealized_fx[band_idx] = Mpy_32_16_1( hMasaIsmData->preprocEneRealized_fx[band_idx], STEREO_PREPROCESS_IIR_FACTOR_Q15 ); // Q = preprocEneRealized_e
+ move32();
+
+ hMasaIsmData->preprocEneTarget_fx[band_idx] = BASOP_Util_Add_Mant32Exp( hMasaIsmData->preprocEneTarget_fx[band_idx], hMasaIsmData->preprocEneTarget_e[band_idx], totalTargetEne, totalTargetEne_e, &hMasaIsmData->preprocEneTarget_e[band_idx] ); // Q = 31-preprocEneTarget_e
+ move32();
+
+ FOR( outCh = 0; outCh < 2; outCh++ )
{
- normEnes_fx[0] = BASOP_Util_Divide3232_Scale( Enes_fx[0], EPSILON_FX, &temp_q );
+ FOR( slot = 0; slot < nSlots; slot++ )
+ {
+ FOR( inCh = 0; inCh < 2; inCh++ )
+ {
+ hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][band_idx] = L_add( hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][band_idx], ismPreprocMtxIncrement[outCh][inCh] ); // Q28
+
+ FOR( bin = bin_lo; bin < bin_hi; bin++ )
+ {
+ temp = Mpy_32_32( inRe_fx[inCh][slot][bin], hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][band_idx] ); // Q = q_cldfb* + 28 - 31 = q_cldfb - 3
+ outSlotRe[outCh][slot][bin] = L_add( outSlotRe[outCh][slot][bin], L_shl( temp, 3 ) ); // Q = q_cldfb*
+ move32();
+
+ temp = Mpy_32_32( inIm_fx[inCh][slot][bin], hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][band_idx] ); // Q = q_cldfb* + 28 - 31 = q_cldfb*-3
+ outSlotIm[outCh][slot][bin] = L_add( outSlotIm[outCh][slot][bin], L_shl( temp, 3 ) ); // Q = q_cldfb*
+ move32();
+ }
+ }
+
+ FOR( bin = bin_lo; bin < bin_hi; bin++ )
+ {
+ Word32 instEne_fx;
+ temp64 = W_mult0_32_32( outSlotRe[outCh][slot][bin], outSlotRe[outCh][slot][bin] ); // 2q-3
+ temp64 = W_add( temp64, W_mult0_32_32( outSlotIm[outCh][slot][bin], outSlotIm[outCh][slot][bin] ) ); // 2q-3
+ exp1 = W_norm( temp64 );
+ instEne_fx = W_extract_h( W_shl( temp64, exp1 ) ); // 2*cldfb_buf_q - 32 + exp1
+ exp1 = 31 - ( 2 * ( *cldfb_buf_q ) - 32 + exp1 );
+ move16();
+
+ hMasaIsmData->preprocEneRealized_fx[band_idx] = BASOP_Util_Add_Mant32Exp( hMasaIsmData->preprocEneRealized_fx[band_idx], hMasaIsmData->preprocEneRealized_e[band_idx], instEne_fx, exp1, &hMasaIsmData->preprocEneRealized_e[band_idx] ); // Q= *cldfb_buf_q + *cldfb_buf_q - 31 = Q-19);
+ move32();
+ }
+ }
+ }
+
+ test();
+ IF( hMasaIsmData->preprocEneTarget_fx[band_idx] > 0 && hMasaIsmData->preprocEneRealized_fx[band_idx] > 0 )
+ {
+ temp = BASOP_Util_Divide3232_Scale_newton( hMasaIsmData->preprocEneTarget_fx[band_idx], L_max( 1, hMasaIsmData->preprocEneRealized_fx[band_idx] ), &temp_q );
+ temp_q = sub( Q31, sub( sub( Q31, temp_q ), sub( hMasaIsmData->preprocEneTarget_e[band_idx], hMasaIsmData->preprocEneRealized_e[band_idx] ) ) );
+ temp = Sqrt32( temp, &temp_q ); // Q: 31-temp_q
+ temp = L_shl( temp, sub( temp_q, 3 ) ); // Q28
+ temp_q = Q28;
move32();
- normEnes_fx[0] = shr( normEnes_fx[0], sub( sub( 15, temp_q ), Q12 ) ); // Q12
+ }
+ ELSE
+ {
+ temp = 0;
move32();
- normEnes_fx[1] = BASOP_Util_Divide3232_Scale( Enes_fx[1], EPSILON_FX, &temp_q );
+ }
+
+ IF( GT_32( ONE_IN_Q30, temp ) )
+ {
+ eqVal = temp;
move32();
- normEnes_fx[1] = shr( normEnes_fx[1], sub( sub( 15, temp_q ), Q12 ) ); // Q12
+ }
+ ELSE
+ {
+ eqVal = ONE_IN_Q30; // 4 in Q28
move32();
}
+ FOR( ch = 0; ch < 2; ch++ )
+ {
+ FOR( slot = 0; slot < nSlots; slot++ )
+ {
+ FOR( bin = bin_lo; bin < bin_hi; bin++ )
+ {
+ temp = Mpy_32_32( outSlotRe[ch][slot][bin], eqVal ); // Q = (cldfb_q) + 28 -31 = cldfb_q - 3
+ inRe_fx[ch][slot][bin] = L_shl( temp, 3 );
+ move32();
+
+ temp = Mpy_32_32( outSlotIm[ch][slot][bin], eqVal ); // Q = (cldfb_q) + 28 -31 = cldfb_q - 3
+ inIm_fx[ch][slot][bin] = L_shl( temp, 3 );
+ move32();
+ }
+ }
+ }
+ }
+ }
+ ELSE /* Other processing modes */
+ {
+ Word32 subframeEne;
+ Word32 subframeEneCh[2];
+ Word32 normEnes[2];
+ Word32 ratioAccOrig;
+ Word32 ratioAccNew;
+ Word32 ratio;
+ Word32 ismEneThis;
+ Word32 ismTargetEneThis;
+ Word32 ismTargetEneThisCh[2];
+ Word32 totalTargetEneCh[2];
+ Word32 totalTargetEne;
+ Word32 masaTargetEneThisCh[2];
+ Word32 ismPreprocMtxNew[2][2];
+ Word16 ismPreprocMtxNew_e[2][2];
+ Word32 ismPreprocMtxIncrement[2][2];
+ Word16 ismPreprocMtxIncrement_e[2][2];
+ Word32 eneMove[2];
+ Word32 enePreserve[2];
+ Word32 ismRatioAcc;
+ Word32 remainderNormEne;
+ Word16 centeringFactor;
+ Word16 eneMoveThis;
+ Word16 enePreserveThis;
+ Word32 normVal;
+ Word32 eqVal;
+ Word32 outSlotRe[2][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX];
+ Word32 outSlotIm[2][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX];
+ Word32 newRatios[6];
+ Word16 gainIsmThis;
+ Word16 gainMasaPow2;
+ Word32 tempDivisor;
+ Word32 masaEneThisCh[2];
+ Word32 ratioAccNewDivisor;
+ Word32 temp;
+ Word16 temp_q = 0;
+ Word16 temp1;
+ Word64 temp64;
+ Word16 norm, shift = 31;
+ Word16 exp, exp1;
+ Word16 subframeEneCh_e[2];
+ Word16 subframeEneCh_Q[2];
+ Word16 subQ = 0;
+ move16();
+ move16();
+ move16();
+
+ set16_fx( subframeEneCh_e, 0, 2 );
+ temp = 0;
+ move32();
+
+ gainMasaPow2 = ONE_IN_Q9;
+ move16();
+ IF( masaGainEdited )
+ {
+ gainMasaPow2 = hMasaIsmData->gain_masa_edited_fx; // Q12
+ move16();
+ gainMasaPow2 = mult( gainMasaPow2, gainMasaPow2 ); // Q = 12 + 12 - 15 = 9
+ move16();
+ }
+
+ nSlots = hSpatParamRendCom->subframe_nbslots[subframe];
+ move16();
+ dirac_read_idx = hSpatParamRendCom->render_to_md_map[subframe];
+ move16();
+
+ /* Determine panning gains and energies for each object */
+ FOR( ismDirIndex = 0; ismDirIndex < n_ism; ismDirIndex++ )
+ {
+ /* Get input and output panning gains */
+ ivas_get_stereo_panning_gains_fx( hMasaIsmData->azimuth_ism_fx[ismDirIndex][dirac_read_idx],
+ hMasaIsmData->elevation_ism_fx[ismDirIndex][dirac_read_idx],
+ panGainsIn[ismDirIndex] ); // Q15
+
+ IF( ismDirEdited[ismDirIndex] )
+ {
+ ivas_get_stereo_panning_gains_fx( hMasaIsmData->azimuth_ism_edited_fx[ismDirIndex],
+ hMasaIsmData->elevation_ism_edited_fx[ismDirIndex],
+ panGainsOut[ismDirIndex] ); // Q15
+ }
+ ELSE
+ {
+ /* When not edited, input and output pan gains are the same */
+ FOR( ch = 0; ch < 2; ch++ )
+ {
+ panGainsOut[ismDirIndex][ch] = panGainsIn[ismDirIndex][ch];
+ move16();
+ }
+ }
+
+ /* Determine pan enes */
+ FOR( ch = 0; ch < 2; ch++ )
+ {
+ panEnesOut[ismDirIndex][ch] = mult( panGainsOut[ismDirIndex][ch], panGainsOut[ismDirIndex][ch] ); // Q15
+ move16();
+ panEnesIn[ismDirIndex][ch] = mult( panGainsIn[ismDirIndex][ch], panGainsIn[ismDirIndex][ch] ); // Q15
+ move16();
+ }
+ }
+
+ /* Determine the highest band */
+ max_band = 0;
+ move16();
+ IF( masaIsmMode )
+ {
+ test();
+ WHILE( GT_16( sub( MASA_FREQUENCY_BANDS, max_band ), 0 ) && GT_16( sub( nBins, MASA_band_grouping_24[max_band] ), 0 ) )
+ {
+ max_band++;
+ }
+ }
+ ELSE
+ {
+ test();
+ WHILE( GT_16( sub( MAX_PARAM_ISM_NBANDS, max_band ), 0 ) && GT_16( sub( nBins, hParamIsmDec->hParamIsm->band_grouping[max_band] ), 0 ) )
+ {
+ max_band++;
+ }
+ }
+
+ /* Init out array */
+ FOR( Word16 k = 0; k < nSlots; k++ )
+ {
+ FOR( ch = 0; ch < BINAURAL_CHANNELS; ch++ )
+ {
+ set_zero_fx( outSlotRe[ch][k], CLDFB_NO_CHANNELS_MAX );
+ set_zero_fx( outSlotIm[ch][k], CLDFB_NO_CHANNELS_MAX );
+
+ norm = s_min( L_norm_arr( inRe_fx[ch][k], nBins ), L_norm_arr( inIm_fx[ch][k], nBins ) );
+ shift = s_min( norm, shift );
+ }
+ }
+
+ /* Perform the processing in frequency bands */
+ FOR( band_idx = 0; band_idx < max_band; band_idx++ )
+ {
+ ratioAccOrig = 0;
+ move32();
+ ratioAccNew = 0;
+ move32();
+ ismRatioAcc = 0;
+ move32();
+
+ set32_fx( eneMove, 0, 2 );
+ set32_fx( enePreserve, 0, 2 );
+ set32_fx( subframeEneCh, 0, 2 );
+ set32_fx( normEnes, 0, 2 );
+ set32_fx( ismTargetEneThisCh, 0, 2 );
+ set32_fx( totalTargetEneCh, 0, 2 );
+ set32_fx( masaTargetEneThisCh, 0, 2 );
+ set32_fx( ismPreprocMtxNew[0], 0, 2 );
+ set32_fx( ismPreprocMtxNew[1], 0, 2 );
+ set16_fx( ismPreprocMtxNew_e[0], 0, 2 );
+ set16_fx( ismPreprocMtxNew_e[1], 0, 2 );
+ set32_fx( ismPreprocMtxIncrement[0], 0, 2 );
+ set32_fx( ismPreprocMtxIncrement[1], 0, 2 );
+ set16_fx( ismPreprocMtxIncrement_e[1], 0, 2 );
+ set16_fx( ismPreprocMtxIncrement_e[1], 0, 2 );
+
+ IF( masaIsmMode )
+ {
+ bin_lo = MASA_band_grouping_24[band_idx];
+ move16();
+ bin_hi = s_min( MASA_band_grouping_24[band_idx + 1], nBins );
+ move16();
+ }
+ ELSE
+ {
+ bin_lo = hParamIsmDec->hParamIsm->band_grouping[band_idx];
+ move16();
+ bin_hi = s_min( hParamIsmDec->hParamIsm->band_grouping[band_idx + 1], nBins );
+ move16();
+ }
+
+ exp = sub( 63, shl( *cldfb_buf_q, 1 ) );
+ Word16 guardBits = 5;
+ move16();
- /* For each ismDir, formulate a mix-matrix that moves object audio signals between
- * left and right channels when needed. Make a combined matrix by a ratio-weighted sum */
- FOR( ismDirIndex = 0; ismDirIndex < hSpatParamRendCom->numIsmDirections; ismDirIndex++ )
+ /* Determine transport normalized energies and subframe energy */
+ FOR( ch = 0; ch < 2; ch++ )
{
- Word16 panGainsOut_fx[2];
- Word16 panGainsIn_fx[2];
- Word16 ratio;
- Word16 panEnesOut_fx[2];
- Word16 panEnesIn_fx[2];
- Word16 centeringFactor_fx;
+ FOR( slot = 0; slot < nSlots; slot++ )
+ {
+ FOR( bin = bin_lo; bin < bin_hi; bin++ )
+ {
+
+ Word32 instEne_fx;
+ temp64 = W_mult0_32_32( inRe_fx[ch][slot][bin], inRe_fx[ch][slot][bin] ); // 2q
+ temp64 = W_add( temp64, W_mult0_32_32( inIm_fx[ch][slot][bin], inIm_fx[ch][slot][bin] ) ); // 2q
+ exp1 = W_norm( temp64 );
+ instEne_fx = W_extract_h( W_shl( temp64, exp1 ) ); // 2*cldfb_buf_q - 32 + exp1
+ /* exp of instEne_fx = 31 - (2q -32 + exp1) = 63 - 2q - exp1 = exp - exp1*/
- ratio = extract_l( hMasaIsmData->energy_ratio_ism_fx[ismDirIndex][dirac_read_idx][bin] ); // Q14
- ismRatioAcc_fx = add( ismRatioAcc_fx, ratio );
+ subframeEneCh[ch] = BASOP_Util_Add_Mant32Exp( subframeEneCh[ch], subframeEneCh_e[ch], instEne_fx, sub( exp, exp1 ), &subframeEneCh_e[ch] );
+ subframeEneCh_Q[ch] = 31 - subframeEneCh_e[ch];
+ move32();
+ move32();
+ }
+ }
+ }
- /* Get input and output panning gains */
- ivas_get_stereo_panning_gains_fx( hMasaIsmData->azimuth_ism[ismDirIndex][dirac_read_idx],
- hMasaIsmData->elevation_ism[ismDirIndex][dirac_read_idx],
- panGainsIn_fx );
+ // Align subframeEneCh Q values, shift 1 bit right to avoid overflow from sum
+ IF( EQ_32( subframeEneCh_Q[0], subframeEneCh_Q[1] ) )
+ {
+ subframeEneCh[0] = L_shr( subframeEneCh[0], 1 );
+ subframeEneCh[1] = L_shr( subframeEneCh[1], 1 );
+ subframeEne = L_add( subframeEneCh[0], subframeEneCh[1] ); // subQ
+ subframeEneCh_Q[1] = sub( subframeEneCh_Q[1], 1 );
+ subframeEneCh_Q[0] = sub( subframeEneCh_Q[0], 1 );
+ subQ = subframeEneCh_Q[0];
- IF( hMasaIsmData->ism_is_edited[ismDirIndex] )
+ move16();
+ move16();
+ move16();
+ move16();
+ move16();
+ }
+ ELSE
+ {
+ IF( GT_32( subframeEneCh_Q[0], subframeEneCh_Q[1] ) )
{
- ivas_get_stereo_panning_gains_fx( hMasaIsmData->azimuth_ism_edited[ismDirIndex],
- hMasaIsmData->elevation_ism_edited[ismDirIndex],
- panGainsOut_fx );
+ temp1 = sub( subframeEneCh_Q[0], subframeEneCh_Q[1] );
+ subframeEneCh[0] = L_shr( subframeEneCh[0], temp1 );
+ subframeEneCh[0] = L_shr( subframeEneCh[0], 1 );
+ subframeEneCh[1] = L_shr( subframeEneCh[1], 1 );
+ subframeEne = L_add( subframeEneCh[0], subframeEneCh[1] ); // subQ
+ subframeEneCh_Q[0] = sub( subframeEneCh_Q[1], 1 );
+ subframeEneCh_Q[1] = sub( subframeEneCh_Q[1], 1 );
+ subQ = subframeEneCh_Q[1];
+
+ move16();
+ move16();
+ move16();
+ move16();
+ move16();
+ move16();
+ }
+ ELSE
+ {
+ temp1 = sub( subframeEneCh_Q[1], subframeEneCh_Q[0] );
+ subframeEneCh[1] = L_shr( subframeEneCh[1], temp1 );
+ subframeEneCh[0] = L_shr( subframeEneCh[0], 1 );
+ subframeEneCh[1] = L_shr( subframeEneCh[1], 1 );
+
+ subframeEne = L_add( subframeEneCh[0], subframeEneCh[1] );
+ subframeEneCh_Q[1] = sub( subframeEneCh_Q[0], 1 );
+ subframeEneCh_Q[0] = sub( subframeEneCh_Q[0], 1 );
+ subQ = subframeEneCh_Q[0];
+
+ move16();
+ move16();
+ move16();
+ move16();
+ move16();
+ move16();
+ }
+ }
+
+ /* Shift subframeEnes right by the number of guard bits to avoid overflow */
+ subframeEne = L_shr( subframeEne, guardBits );
+ subframeEneCh[0] = L_shr( subframeEneCh[0], guardBits );
+ subframeEneCh[1] = L_shr( subframeEneCh[1], guardBits );
+
+ subQ = sub( subQ, guardBits );
+ subframeEneCh_Q[0] = sub( subframeEneCh_Q[0], guardBits );
+ subframeEneCh_Q[1] = sub( subframeEneCh_Q[1], guardBits );
+
+ move16();
+ move16();
+ move16();
+ move16();
+
+#ifdef FIX_2140_OBJECT_EDITING_SANITIZER_ISSUES
+ totalTargetEneCh[0] = subframeEneCh[0]; // subQch[0]
+ move32();
+ totalTargetEneCh[1] = subframeEneCh[1]; // subQch[1]
+ move32();
+ masaEneThisCh[0] = subframeEneCh[0]; // subQch[0]
+ move32();
+ masaEneThisCh[1] = subframeEneCh[1]; // subQch[1]
+ move32();
+#else
+ /* Zero check */
+ IF( GT_32( subframeEne, 0 ) )
+ {
+ totalTargetEneCh[0] = subframeEneCh[0]; // subQch[0]
+ move32();
+ totalTargetEneCh[1] = subframeEneCh[1]; // subQch[1]
+ move32();
+ masaEneThisCh[0] = subframeEneCh[0]; // subQch[0]
+ move32();
+ masaEneThisCh[1] = subframeEneCh[1]; // subQch[1]
+ move32();
+ }
+#endif
+
+ /* Gain editing */
+ /* For each object, estimate new target energy per channel based on the applied gain */
+ FOR( ismDirIndex = 0; ismDirIndex < n_ism; ismDirIndex++ )
+ {
+ ratio = hMasaIsmData->energy_ratio_ism_fx[ismDirIndex][dirac_read_idx][bin_lo]; // Q30
+ move32();
+
+ ratioAccOrig = L_add( ratioAccOrig, ratio ); // Q30
+
+ /* Calculate MASA energy as a residual of original channel energies subtracted with ISM energies */
+ FOR( ch = 0; ch < 2; ch++ )
+ {
+ temp = Mpy_32_32( ratio, subframeEne ); // Q = 30 + subEneQ - 31 = subEneQ-1
+ temp = Mpy_32_16_1( temp, panEnesIn[ismDirIndex][ch] ); // Q = subEneQ-1
+
+ temp_q = sub( subframeEneCh_Q[ch], sub( subQ, 1 ) );
+ masaEneThisCh[ch] = L_sub( masaEneThisCh[ch], L_shl( temp, temp_q ) ); // Q = subframeEneCh_Q
+ move32();
+ }
+
+ /* Calculate target energy, gained ratio for accumulation, and transports gains, if ism gain is edited */
+ IF( ismGainEdited[ismDirIndex] )
+ {
+ gainIsmThis = hMasaIsmData->gain_ism_edited_fx[ismDirIndex]; // Q12
+ move16();
+
+ /* ISM original energy */
+ ismEneThis = Mpy_32_32( ratio, subframeEne ); // Q = 30 + subEneQ - 31 = subQ-1
+ move32();
+
+ /* ISM target energy */
+ temp1 = shl_sat( mult( gainIsmThis, gainIsmThis ), 2 ); // Q = 12 + 12 - 15 + 2 = 11
+ ismTargetEneThis = Mpy_32_16_1( ismEneThis, temp1 ); // Q = (subQ-1) + 11 - 15 = subQ-5
+ move32();
+
+ ratio = L_shl( Mpy_32_16_1( ratio, temp1 ), 1 ); // Q = 30 + 11 - 15 + 1 = 27
+ move32();
+
+
+ /* Determine panning energies and channel target energies */
+ FOR( ch = 0; ch < 2; ch++ )
+ {
+ /* Ism target energy per channel */
+ ismTargetEneThisCh[ch] = Mpy_32_16_1( ismTargetEneThis, panEnesIn[ismDirIndex][ch] ); // Q = subQ-5 + 15 + 1 - 16 = subQ-5
+ move32();
+
+ /* Reduce original ism energy */
+ temp = Mpy_32_16_1( ismEneThis, panEnesIn[ismDirIndex][ch] ); // subEneQ-1 + 15 + 1 - 16 = subQ-1
+ totalTargetEneCh[ch] = L_sub( totalTargetEneCh[ch], L_shl( temp, 1 ) ); // subEneQ
+ move32();
+
+ /* Add ism target energy per channel */
+ totalTargetEneCh[ch] = L_add( totalTargetEneCh[ch], L_shl( ismTargetEneThisCh[ch], 5 ) ); // SubQ
+ move32();
+ }
+
+
+ /* If separated ism edited, apply gain directly to the separated ism */
+ IF( EQ_16( ismDirIndex, hMasaIsmData->idx_separated_ism ) )
+ {
+ /* Separated object gaining is done elsewhere with DIRAC renderer */
+ IF( NE_32( st_ivas->renderer_type, RENDERER_DIRAC ) )
+ {
+ /* Gain transport channel of separated ism */
+ FOR( slot = 0; slot < nSlots; slot++ )
+ {
+ FOR( bin = bin_lo; bin < bin_hi; bin++ )
+ {
+ temp = Mpy_32_16_1( inRe_fx[2][slot][bin], gainIsmThis ); // Q = *cldfb_buf_q + 12 + 1 - 16 = *cldfb_buf_q - 3
+ inRe_fx[2][slot][bin] = L_shl( temp, Q3 );
+ move32();
+
+ temp = Mpy_32_16_1( inIm_fx[2][slot][bin], gainIsmThis ); // Q = *cldfb_buf_q + 12 + 1 - 16 = *cldfb_buf_q - 3
+ inIm_fx[2][slot][bin] = L_shl( temp, Q3 );
+ move32();
+ }
+ }
+ }
+ }
+ ratioAccNew = L_add( ratioAccNew, ratio ); // Q27
+ move32();
}
ELSE
{
- /* When not edited, input and output pan gains are the same */
+ ratioAccNew = L_add( ratioAccNew, L_shr( ratio, 3 ) ); // Q27
+ move32();
+ }
+ }
+
+ IF( masaIsmMode )
+ {
+ /* MASA original ratios */
+ ratio = L_add( hSpatParamRendCom->energy_ratio1_fx[dirac_read_idx][bin_lo], hSpatParamRendCom->energy_ratio2_fx[dirac_read_idx][bin_lo] ); // Q30
+ move32();
+ ratioAccOrig = L_add( ratioAccOrig, ratio ); // Q30
+ move32();
+
+ /* Estimate MASA original energies and determine adjusted target energies and gained ratio for accumulation, if a gain is applied to MASA */
+ IF( masaGainEdited )
+ {
+ /* Gained MASA ratio */
+ ratio = L_shl( Mpy_32_16_1( ratio, gainMasaPow2 ), 3 ); // Q = 30 + 9 - 15 + 3 = 27
+ move32();
+
+
+ /* Calculate MASA target energies and add to total target energy estimation */
FOR( ch = 0; ch < 2; ch++ )
{
- panGainsOut_fx[ch] = panGainsIn_fx[ch];
+ /* MASA original energy per channel */
+ masaEneThisCh[ch] = L_max( masaEneThisCh[ch], 0 ); // Q5
+ move32();
+
+ /* MASA target energy per channel */
+ temp = Mpy_32_16_1( masaEneThisCh[ch], shl( gainMasaPow2, 2 ) ); // Q = SubQ + 11 + 1 - 16 = SubQ-4
+ masaTargetEneThisCh[ch] = L_shl( temp, 4 ); // SubQ
+ move32();
+
+ /* Reduce original energy per channel */
+ totalTargetEneCh[ch] = L_sub( totalTargetEneCh[ch], masaEneThisCh[ch] ); // SubQ
+ move32();
+
+ /* Add target energy per channel */
+ totalTargetEneCh[ch] = L_add( totalTargetEneCh[ch], masaTargetEneThisCh[ch] ); // SubQ
+ move32();
+ }
+ ratioAccNew = L_add( ratioAccNew, ratio ); // Q27
+ }
+ ELSE
+ {
+ ratioAccNew = L_add( ratioAccNew, L_shr( ratio, 3 ) ); // Q27
+ }
+ }
+
+
+#ifdef NONBE_1399_1400_FIX_OBJ_EDIT_ISSUES
+ /* Limit target energies to non-negative values */
+ FOR( ch = 0; ch < BINAURAL_CHANNELS; ch++ )
+ {
+ totalTargetEneCh[ch] = L_max( 0, totalTargetEneCh[ch] );
+ }
+#endif
+
+ /* due to rounding, the sum may exceed 1.0f ever so slightly, so clip it */
+ ratioAccOrig = L_min( ratioAccOrig, ONE_IN_Q30 );
+ move32();
+ IF( masaGainEdited )
+ {
+ temp = Mpy_32_16_1( L_sub( ONE_IN_Q30, ratioAccOrig ), gainMasaPow2 ); // Q = 30 + 9 + 1 - 16 = 24
+ ratioAccNew = L_add_sat( ratioAccNew, L_shl_sat( temp, 3 ) ); // Q27
+ move32();
+ }
+ ELSE
+ {
+ ratioAccNew = L_add( ratioAccNew, L_shr( L_sub( ONE_IN_Q30, ratioAccOrig ), 3 ) ); // Q27
+ move32();
+ }
+
+ /* New target total energy ratio divider */
+ IF( ratioAccNew > 0 )
+ {
+ ratioAccNewDivisor = BASOP_Util_Divide3232_Scale_newton( ONE_IN_Q27, ratioAccNew, &temp_q );
+ ratioAccNewDivisor = L_shl_sat( ratioAccNewDivisor, sub( temp_q, 4 ) ); // Q27, saturate to 16 in Q27
+
+ /* Determine and process object energy ratios based on gaining */
+ FOR( ismDirIndex = 0; ismDirIndex < n_ism; ismDirIndex++ )
+ {
+ newRatios[ismDirIndex + 2] = hMasaIsmData->energy_ratio_ism_fx[ismDirIndex][dirac_read_idx][bin_lo]; // Q30
+ move32();
+
+ IF( ismGainEdited[ismDirIndex] )
+ {
+ gainIsmThis = hMasaIsmData->gain_ism_edited_fx[ismDirIndex];
move16();
+
+ /* Gain original object energy ratio, if edited */
+ temp1 = mult( gainIsmThis, gainIsmThis ); // Q = 12 + 12 - 15 = 9
+ newRatios[ismDirIndex + 2] = Mpy_32_16_1( newRatios[ismDirIndex + 2], temp1 ); // Q = 30 + 9 + 1 - 16 = 24
+ move32();
+ }
+ ELSE
+ {
+ newRatios[ismDirIndex + 2] = L_shr( newRatios[ismDirIndex + 2], 6 );
+ move32();
}
+ /* Divide with new target total ratio */
+ newRatios[ismDirIndex + 2] = Mpy_32_32( newRatios[ismDirIndex + 2], ratioAccNewDivisor ); // Q = 24 + 27 - 31 = 20
+ move32();
}
- /* Determine pan enes */
- FOR( ch = 0; ch < 2; ch++ )
+ /* Determine and process MASA energy ratios based on gaining */
+ newRatios[0] = hSpatParamRendCom->energy_ratio1_fx[dirac_read_idx][bin_lo]; // Q30
+ newRatios[1] = hSpatParamRendCom->energy_ratio2_fx[dirac_read_idx][bin_lo]; // Q30
+ move32();
+ move32();
+
+ IF( masaGainEdited )
{
- panEnesOut_fx[ch] = mult( panGainsOut_fx[ch], panGainsOut_fx[ch] ); // Q15
- move16();
- panEnesIn_fx[ch] = mult( panGainsIn_fx[ch], panGainsIn_fx[ch] ); // Q15
- move16();
+ newRatios[0] = Mpy_32_16_1( newRatios[0], gainMasaPow2 ); // Q = 30 + 9 + 1 - 16 = 24
+ newRatios[1] = Mpy_32_16_1( newRatios[1], gainMasaPow2 ); // Q = 30 + 9 + 1 - 16 = 24
+ move32();
+ move32();
+ }
+ ELSE
+ {
+ newRatios[0] = L_shr( newRatios[0], 6 ); // Q = 30 + 9 + 1 - 16 = 24
+ newRatios[1] = L_shr( newRatios[0], 6 );
+ move32();
+ move32();
+ }
+ newRatios[0] = Mpy_32_32( newRatios[0], ratioAccNewDivisor ); // Q = 24 + 27 - 31 = 20
+ newRatios[1] = Mpy_32_32( newRatios[1], ratioAccNewDivisor ); // Q = 24 + 27 - 31 = 20
+ move32();
+ move32();
+
+ /* Set adjusted energy ratios */
+ FOR( bin = bin_lo; bin < bin_hi; bin++ )
+ {
+ FOR( ismDirIndex = 0; ismDirIndex < n_ism; ismDirIndex++ )
+ {
+ hMasaIsmData->energy_ratio_ism_fx[ismDirIndex][dirac_read_idx][bin] = L_shl( newRatios[ismDirIndex + 2], 10 ); // Q30
+ move32();
+ }
+
+ IF( masaIsmMode )
+ {
+ hSpatParamRendCom->energy_ratio1_fx[dirac_read_idx][bin] = L_shl( newRatios[0], 10 );
+ hSpatParamRendCom->energy_ratio2_fx[dirac_read_idx][bin] = L_shl( newRatios[1], 10 );
+ move32();
+ move32();
+ }
}
+ }
+
+ /* Direction editing */
+ /* Determine new energetic values after gaining */
+ totalTargetEne = L_add( totalTargetEneCh[0], totalTargetEneCh[1] ); // SubQ
+
+ IF( GT_32( totalTargetEne, 0 ) )
+ {
+ tempDivisor = BASOP_Util_Divide3232_Scale_newton( ONE_IN_Q28, max( EPSILON_FX, totalTargetEne ), &temp_q );
+
+ temp_q = sub( sub( Q31, temp_q ), sub( sub( Q31, Q28 ), sub( Q31, subQ ) ) );
+
+ normEnes[0] = Mpy_32_32( totalTargetEneCh[0], tempDivisor ); // Q = 25
+ normEnes[1] = Mpy_32_32( totalTargetEneCh[1], tempDivisor ); // Q = 25
+ temp_q = sub( add( subQ, temp_q ), Q31 );
+ normEnes[0] = L_shl( normEnes[0], sub( Q25, temp_q ) );
+ normEnes[1] = L_shl( normEnes[1], sub( Q25, temp_q ) );
+ move32();
+ move32();
+ move32();
+ move32();
+ }
+ ELSE
+ {
+ normEnes[0] = 0;
+ normEnes[1] = 0;
+ move32();
+ move32();
+ }
+
+ /* For each ismDir, determine moved and preserve energy ratio per channel */
+ FOR( ismDirIndex = 0; ismDirIndex < n_ism; ismDirIndex++ )
+ {
+ ratio = hMasaIsmData->energy_ratio_ism_fx[ismDirIndex][dirac_read_idx][bin_lo]; // Q30
+ move32();
+
+ ismRatioAcc = L_add( ismRatioAcc, ratio ); // Q30
IF( enableCentering )
{
- centeringFactor_fx = s_max( 0, sub( mult( shl( 2, 13 ), abs_s( sub( panEnesIn_fx[0], panEnesOut_fx[0] ) ) ), ONE_IN_Q13 ) ); // Q13
+ temp1 = abs_s( sub( panEnesIn[ismDirIndex][0], panEnesOut[ismDirIndex][0] ) ); // 2*sub(enes) -> Q14
+ centeringFactor = max( 0, sub( temp1, ONE_IN_Q14 ) ); // Q14
+
FOR( ch = 0; ch < 2; ch++ )
{
- panEnesOut_fx[ch] = mult( panEnesOut_fx[ch], sub( ONE_IN_Q13, centeringFactor_fx ) ); // Q13
+ temp1 = sub( ONE_IN_Q14, centeringFactor );
+ panEnesOut[ismDirIndex][ch] = mult( panEnesOut[ismDirIndex][ch], temp1 ); // Q = 15 + 14 - 15 = 14
+ move16();
+
+ temp1 = shr( centeringFactor, 1 ); // * 0.5f = Divide by 2
+ panEnesOut[ismDirIndex][ch] = add( panEnesOut[ismDirIndex][ch], temp1 ); // Q14
+ panEnesOut[ismDirIndex][ch] = shl( panEnesOut[ismDirIndex][ch], 1 ); // Q15
move16();
- panEnesOut_fx[ch] = add( panEnesOut_fx[ch], shr( centeringFactor_fx, 1 ) ); // Q13
move16();
}
}
FOR( ch = 0; ch < 2; ch++ )
{
- Word16 eneMoveThis_fx;
- Word16 enePreserveThis_fx;
-
- eneMoveThis_fx = s_max( 0, sub( shr( panEnesIn_fx[ch], 2 ), panEnesOut_fx[ch] ) ); // Q13
- enePreserveThis_fx = sub( shr( panEnesIn_fx[ch], 2 ), eneMoveThis_fx ); // Q13
-
- eneMove_fx[ch] = mult( ratio, eneMoveThis_fx ); // Q = 14 + 13 - 15 = 12
+ eneMoveThis = s_max( 0, sub( panEnesIn[ismDirIndex][ch], panEnesOut[ismDirIndex][ch] ) ); // Q15
move16();
- enePreserve_fx[ch] = mult( ratio, enePreserveThis_fx ); // Q = 14 + 13 - 15 = 12
+
+ enePreserveThis = sub( panEnesIn[ismDirIndex][ch], eneMoveThis ); // Q15
move16();
+ temp = Mpy_32_16_1( ratio, eneMoveThis ); // Q = 30 + 15 + 1 - 16 = 30
+ eneMove[ch] = L_add( eneMove[ch], temp ); // Q30
+ move32();
+
+ temp = Mpy_32_16_1( ratio, enePreserveThis ); // Q = 30 + 15 + 1 - 16 = 30
+ enePreserve[ch] = L_add( enePreserve[ch], temp ); // 30
+ move32();
+
/* Subtract object parts from normEnes */
- normEnes_fx[ch] = sub( normEnes_fx[ch], shr( mult( panEnesIn_fx[ch], ratio ), 2 ) ); // Q12
- move16();
+ temp = Mpy_32_16_1( L_shr( ratio, 5 ), panEnesIn[ismDirIndex][ch] ); // Q = 25 + 15 + 1 = 16 = 25;
+ normEnes[ch] = L_sub( normEnes[ch], temp ); // Q25
+ move32();
}
}
/* Any remaining (non-object) energy is set to be preserved at both channels */
- remainderNormEne_fx = s_max( 0, sub( sub( shr( sub( ONE_IN_Q14, ismRatioAcc_fx ), Q14 - Q12 ), normEnes_fx[0] ), normEnes_fx[1] ) ); // Q12
+ temp = L_sub( ONE_IN_Q25, L_shr( ismRatioAcc, 5 ) );
+ temp = L_sub( temp, normEnes[0] );
+ temp = L_sub( temp, normEnes[1] );
+ remainderNormEne = L_max( 0, temp ); // Q25
+ /* Normalize */
FOR( ch = 0; ch < 2; ch++ )
{
- enePreserve_fx[ch] = add( enePreserve_fx[ch], s_max( 0, add( enePreserve_fx[ch], shr( remainderNormEne_fx, 1 ) ) ) ); // Q12
- move16();
+ temp = L_shr( remainderNormEne, 1 ); // Division by 2, Q25
+ temp = L_add( normEnes[ch], temp ); // Q25
+ enePreserve[ch] = L_add( L_shr( enePreserve[ch], 5 ), L_max( 0, temp ) ); // Q25
+
+ temp = L_add( L_shr( eneMove[ch], 5 ), enePreserve[ch] ); // Q25
+ temp = L_max( EPSILON_FX, temp );
+ normVal = BASOP_Util_Divide3232_Scale_newton( ONE_IN_Q25, temp, &temp_q );
+ normVal = L_shl_sat( normVal, sub( temp_q, 6 ) ); // Q25
+
+ temp = L_max( EPSILON_FX, subframeEneCh[ch] ); // SubQ
+ temp = BASOP_Util_Divide3232_Scale_newton( totalTargetEneCh[ch], temp, &temp_q );
+ temp = L_shl_sat( temp, sub( temp_q, 6 ) ); // Q25
+ normVal = Mpy_32_32( normVal, L_min( 335544320, temp ) ); // Q = 25 + 25 + 1 - 32 = 19
+
+ eneMove[ch] = Mpy_32_32( eneMove[ch], normVal ); // Q = 30 + 19 + 1 - 32 = 18
+ move32();
+
+ enePreserve[ch] = Mpy_32_32( L_shl_sat( enePreserve[ch], 5 ), normVal ); // Q = 30 + 19 + 1 - 32 = 18
+ move32();
+
+ enePreserve[ch] = L_shl_sat( enePreserve[ch], 8 ); // Q26
+ eneMove[ch] = L_shl_sat( eneMove[ch], 8 ); // Q26
+ move32();
+ move32();
}
- /* Temporally average energy moving and preserving, and generate the transport signal preprocessing matrix */
+ /* Temporally average target energy */
+ hMasaIsmData->eneOrigIIR_fx[band_idx] = Mpy_32_16_1( hMasaIsmData->eneOrigIIR_fx[band_idx], STEREO_PREPROCESS_IIR_FACTOR_Q15 ); // Q = origIIR_Q + 15 + 1 - 16 = origIIR_Q
+ hMasaIsmData->eneOrigIIR_fx[band_idx] = BASOP_Util_Add_Mant32Exp( hMasaIsmData->eneOrigIIR_fx[band_idx], hMasaIsmData->eneOrigIIR_e[band_idx], totalTargetEne, sub( Q31, subQ ), &hMasaIsmData->eneOrigIIR_e[band_idx] );
+ move32();
+ move32();
+
+ /* Temporally average energy moving and preserving, and generate the transport signal preprocessing matrix for
+ * gaining objects and moving objects between left and right */
FOR( ch = 0; ch < 2; ch++ )
{
- Word32 normVal_fx;
- hMasaIsmData->eneMoveIIR_fx[ch][bin] = Mpy_32_16_1( hMasaIsmData->eneMoveIIR_fx[ch][bin], STEREO_PREPROCESS_IIR_FACTOR_Q15 );
+ hMasaIsmData->eneMoveIIR_fx[ch][band_idx] = Mpy_32_16_1( hMasaIsmData->eneMoveIIR_fx[ch][band_idx], STEREO_PREPROCESS_IIR_FACTOR_Q15 ); // Q = Enemove_Q + 15 + 1 -16 = Enemove_Q
+ move32();
+
+ temp = Mpy_32_32( totalTargetEne, eneMove[ch] ); // Q = SubQ + 26 + 1 - 32 = SubQ-5
+ shift = norm_l( temp );
+ temp = L_shl( temp, shift ); // Q = subQ-5+shift
+ hMasaIsmData->eneMoveIIR_fx[ch][band_idx] = BASOP_Util_Add_Mant32Exp( hMasaIsmData->eneMoveIIR_fx[ch][band_idx], hMasaIsmData->eneMoveIIR_e[ch][band_idx], temp, sub( Q31, add( sub( subQ, 5 ), shift ) ), &hMasaIsmData->eneMoveIIR_e[ch][band_idx] );
move32();
- temp = Mpy_32_16_1( subframeEne_fx, eneMove_fx[ch] );
- hMasaIsmData->eneMoveIIR_fx[ch][bin] = L_add( hMasaIsmData->eneMoveIIR_fx[ch][bin], temp ); // Q = *cldfb_buf_q + *cldfb_buf_q - 34 = Q-22
+
+ hMasaIsmData->enePreserveIIR_fx[ch][band_idx] = Mpy_32_16_1( hMasaIsmData->enePreserveIIR_fx[ch][band_idx], STEREO_PREPROCESS_IIR_FACTOR_Q15 ); // Q = enePreserve_Q + 15 + 1 - 16 = enePreserve_Q = 31- enePreserve_e
+ move32();
+
+ temp = Mpy_32_32( totalTargetEne, enePreserve[ch] ); // Q = subQ + 26 + 1 - 32 = subQ-5
+ shift = norm_l( temp );
+ temp = L_shl( temp, shift ); // Q = subQ-5+shift
+ hMasaIsmData->enePreserveIIR_fx[ch][band_idx] = BASOP_Util_Add_Mant32Exp( hMasaIsmData->enePreserveIIR_fx[ch][band_idx], hMasaIsmData->enePreserveIIR_e[ch][band_idx], temp, sub( Q31, add( sub( subQ, 5 ), shift ) ), &hMasaIsmData->enePreserveIIR_e[ch][band_idx] );
move32();
- hMasaIsmData->enePreserveIIR_fx[ch][bin] = Mpy_32_16_1( hMasaIsmData->enePreserveIIR_fx[ch][bin], STEREO_PREPROCESS_IIR_FACTOR_Q15 );
+ temp_q = norm_l( hMasaIsmData->enePreserveIIR_fx[ch][band_idx] );
+ hMasaIsmData->enePreserveIIR_fx[ch][band_idx] = L_shl( hMasaIsmData->enePreserveIIR_fx[ch][band_idx], temp_q );
+ hMasaIsmData->enePreserveIIR_e[ch][band_idx] = sub( hMasaIsmData->enePreserveIIR_e[ch][band_idx], temp_q );
move32();
- temp = Mpy_32_16_1( subframeEne_fx, enePreserve_fx[ch] );
- hMasaIsmData->enePreserveIIR_fx[ch][bin] = L_add( hMasaIsmData->enePreserveIIR_fx[ch][bin], temp ); // Q = *cldfb_buf_q + *cldfb_buf_q - 34 = Q-22
move32();
- normVal_fx = L_add( hMasaIsmData->eneMoveIIR_fx[ch][bin], hMasaIsmData->enePreserveIIR_fx[ch][bin] );
- IF( normVal_fx != 0 )
+ IF( GT_32( hMasaIsmData->enePreserveIIR_fx[ch][band_idx], 0 ) )
+ {
+ temp = BASOP_Util_Divide3232_Scale_newton( hMasaIsmData->enePreserveIIR_fx[ch][band_idx], L_max( 1, hMasaIsmData->eneOrigIIR_fx[band_idx] ), &temp_q );
+ temp_q = sub( Q31, sub( sub( Q31, temp_q ), sub( hMasaIsmData->enePreserveIIR_e[ch][band_idx], hMasaIsmData->eneOrigIIR_e[band_idx] ) ) );
+ temp = Sqrt32( temp, &temp_q ); // Q = 31-temp_q
+ temp = L_shl_sat( temp, sub( temp_q, 3 ) ); // Q28
+ }
+ ELSE
{
+ temp = 0;
+ move32();
+ }
- temp1 = BASOP_Util_Divide3232_Scale( hMasaIsmData->enePreserveIIR_fx[ch][bin], normVal_fx, &temp_q );
- ismPreprocMtxNew_fx[ch][ch] = Sqrt16( temp1, &temp_q );
- move16();
- ismPreprocMtxNew_fx[ch][ch] = shl( ismPreprocMtxNew_fx[ch][ch], temp_q ); // Q15
- move16();
- temp1 = BASOP_Util_Divide3232_Scale( hMasaIsmData->eneMoveIIR_fx[ch][bin], normVal_fx, &temp_q );
- ismPreprocMtxNew_fx[sub( 1, ch )][ch] = Sqrt16( temp1, &temp_q );
- move16();
- ismPreprocMtxNew_fx[sub( 1, ch )][ch] = shl( ismPreprocMtxNew_fx[sub( 1, ch )][ch], temp_q ); // Q15
- move16();
+ IF( GT_32( ONE_IN_Q30, temp ) )
+ {
+ ismPreprocMtxNew[ch][ch] = temp;
+ move32();
}
ELSE
{
- ismPreprocMtxNew_fx[ch][ch] = 0;
- move16();
- ismPreprocMtxNew_fx[sub( 1, ch )][ch] = 0;
- move16();
+ ismPreprocMtxNew[ch][ch] = ONE_IN_Q30; // 4 in Q28
+ move32();
+ }
+
+ ismPreprocMtxNew_e[ch][ch] = Q28;
+ move32();
+
+ temp_q = norm_l( hMasaIsmData->eneMoveIIR_fx[ch][band_idx] );
+ hMasaIsmData->eneMoveIIR_fx[ch][band_idx] = L_shl( hMasaIsmData->eneMoveIIR_fx[ch][band_idx], temp_q );
+ hMasaIsmData->eneMoveIIR_e[ch][band_idx] = sub( hMasaIsmData->eneMoveIIR_e[ch][band_idx], temp_q );
+ move32();
+ move16();
+
+ IF( GT_32( hMasaIsmData->eneMoveIIR_fx[ch][band_idx], 0 ) )
+ {
+ temp = BASOP_Util_Divide3232_Scale_newton( hMasaIsmData->eneMoveIIR_fx[ch][band_idx], L_max( 1, hMasaIsmData->eneOrigIIR_fx[band_idx] ), &temp_q );
+ temp_q = sub( Q31, sub( sub( Q31, temp_q ), sub( hMasaIsmData->eneMoveIIR_e[ch][band_idx], hMasaIsmData->eneOrigIIR_e[band_idx] ) ) );
+ temp = Sqrt32( temp, &temp_q );
+ temp = L_shl_sat( temp, sub( temp_q, 3 ) ); // Q28
+ }
+ ELSE
+ {
+ temp = 0;
+ move32();
+ }
+
+ IF( GT_32( ONE_IN_Q30, temp ) )
+ {
+ ismPreprocMtxNew[1 - ch][ch] = temp;
+ move32();
+ }
+ ELSE
+ {
+ ismPreprocMtxNew[1 - ch][ch] = ONE_IN_Q30; // 4 in Q28
+ move32();
}
+ ismPreprocMtxNew_e[1 - ch][ch] = Q28; // This may be removed
+ move32();
}
/* Get increment value for temporal interpolation */
FOR( inCh = 0; inCh < 2; inCh++ )
{
FOR( outCh = 0; outCh < 2; outCh++ )
- ismPreprocMtxIncrement_fx[outCh][inCh] = BASOP_Util_Divide1616_Scale( sub( ismPreprocMtxNew_fx[outCh][inCh], hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][bin] ), nSlots, &temp_q );
- move16();
- ismPreprocMtxIncrement_fx[outCh][inCh] = shl( ismPreprocMtxIncrement_fx[outCh][inCh], temp_q ); // Q15
- move16();
+ {
+ temp = L_sub( ismPreprocMtxNew[outCh][inCh], hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][band_idx] ); // Q28
+ ismPreprocMtxIncrement[outCh][inCh] = L_shr( temp, 2 ); // Divide by 4
+ move32();
+ }
}
- }
- /* Mix signals */
- FOR( slot = 0; slot < nSlots; slot++ )
- {
- Word16 eqVal_fx = 0;
- Word16 eqVal_q_fx = 0;
- move16();
- move16();
- Word32 outSlotRe_fx[2];
- Word32 outSlotIm_fx[2];
+ /* Mix signals */
+ hMasaIsmData->preprocEneTarget_fx[band_idx] = Mpy_32_16_1( hMasaIsmData->preprocEneTarget_fx[band_idx], STEREO_PREPROCESS_IIR_FACTOR_Q15 ); // Q = preprocEneTarget_e
+ move32();
+
+ hMasaIsmData->preprocEneRealized_fx[band_idx] = Mpy_32_16_1( hMasaIsmData->preprocEneRealized_fx[band_idx], STEREO_PREPROCESS_IIR_FACTOR_Q15 ); // Q = preprocEneRealized_e
+ move32();
- set_zero_fx( outSlotRe_fx, 2 );
- set_zero_fx( outSlotIm_fx, 2 );
+ hMasaIsmData->preprocEneTarget_fx[band_idx] = BASOP_Util_Add_Mant32Exp( hMasaIsmData->preprocEneTarget_fx[band_idx], hMasaIsmData->preprocEneTarget_e[band_idx], totalTargetEne, sub( Q31, subQ ), &hMasaIsmData->preprocEneTarget_e[band_idx] ); // Q = 31-preprocEneTarget_e
+ move32();
FOR( outCh = 0; outCh < 2; outCh++ )
{
- FOR( inCh = 0; inCh < 2; inCh++ )
+ FOR( slot = 0; slot < nSlots; slot++ )
{
- hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][bin] = add( hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][bin], ismPreprocMtxIncrement_fx[outCh][inCh] ); // Q = 15
- move16();
- outSlotRe_fx[outCh] = Mpy_32_16_1( inRe_fx[inCh][slot][bin], hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][bin] ); // Q = *cldfb_buf_q;
- move32();
- outSlotIm_fx[outCh] = Mpy_32_16_1( inIm_fx[inCh][slot][bin], hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][bin] ); // Q = *cldfb_buf_q;
- move32();
+ FOR( inCh = 0; inCh < 2; inCh++ )
+ {
+ hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][band_idx] = L_add( hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][band_idx], ismPreprocMtxIncrement[outCh][inCh] ); // Q28
+ move32();
+
+ FOR( bin = bin_lo; bin < bin_hi; bin++ )
+ {
+ temp = Mpy_32_32( inRe_fx[inCh][slot][bin], hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][band_idx] ); // Q = q_cldfb* + 28 - 31 = q_cldfb - 3
+ outSlotRe[outCh][slot][bin] = L_add( outSlotRe[outCh][slot][bin], L_shl( temp, 3 ) ); // Q = q_cldfb*
+ move32();
+
+ temp = Mpy_32_32( inIm_fx[inCh][slot][bin], hMasaIsmData->ismPreprocMatrix_fx[outCh][inCh][band_idx] ); // Q = q_cldfb* + 28 - 31 = q_cldfb*-3
+ outSlotIm[outCh][slot][bin] = L_add( outSlotIm[outCh][slot][bin], L_shl( temp, 3 ) ); // Q = q_cldfb*
+ move32();
+ }
+ }
+
+ FOR( bin = bin_lo; bin < bin_hi; bin++ )
+ {
+ Word32 instEne_fx;
+ temp64 = W_mult0_32_32( outSlotRe[outCh][slot][bin], outSlotRe[outCh][slot][bin] ); // 2q-3
+ temp64 = W_add( temp64, W_mult0_32_32( outSlotIm[outCh][slot][bin], outSlotIm[outCh][slot][bin] ) ); // 2q-3
+ exp1 = W_norm( temp64 );
+ instEne_fx = W_extract_h( W_shl( temp64, exp1 ) ); // 2*cldfb_buf_q - 32 + exp1
+ exp1 = 31 - ( 2 * ( *cldfb_buf_q ) - 32 + exp1 );
+
+ hMasaIsmData->preprocEneRealized_fx[band_idx] = BASOP_Util_Add_Mant32Exp( hMasaIsmData->preprocEneRealized_fx[band_idx], hMasaIsmData->preprocEneRealized_e[band_idx], instEne_fx, exp1, &hMasaIsmData->preprocEneRealized_e[band_idx] ); // Q= *cldfb_buf_q + *cldfb_buf_q - 31 = Q-19);
+ move32();
+ }
}
}
- /* IIR average the energy measures and determine and apply energy-preserving equalizer */
- hMasaIsmData->preprocEneTarget_fx[bin] = Mpy_32_16_1( hMasaIsmData->preprocEneTarget_fx[bin], STEREO_PREPROCESS_IIR_FACTOR_Q15 );
- move32();
- hMasaIsmData->preprocEneRealized_fx[bin] = Mpy_32_16_1( hMasaIsmData->preprocEneRealized_fx[bin], STEREO_PREPROCESS_IIR_FACTOR_Q15 );
- move32();
- FOR( ch = 0; ch < 2; ch++ )
+ test();
+ IF( hMasaIsmData->preprocEneTarget_fx[band_idx] > 0 && hMasaIsmData->preprocEneRealized_fx[band_idx] > 0 )
{
- hMasaIsmData->preprocEneTarget_fx[bin] = L_add( hMasaIsmData->preprocEneTarget_fx[bin], Madd_32_32( Mpy_32_32( inRe_fx[ch][slot][bin], inRe_fx[ch][slot][bin] ), inIm_fx[ch][slot][bin], inIm_fx[ch][slot][bin] ) ); // Q= *cldfb_buf_q + *cldfb_buf_q - 31 = Q-19
- move32();
- hMasaIsmData->preprocEneRealized_fx[bin] = L_add( hMasaIsmData->preprocEneRealized_fx[bin], Madd_32_32( Mpy_32_32( outSlotRe_fx[ch], outSlotRe_fx[ch] ), outSlotIm_fx[ch], outSlotIm_fx[ch] ) ); // Q= *cldfb_buf_q + *cldfb_buf_q - 31 = Q-19
+ temp = BASOP_Util_Divide3232_Scale_newton( hMasaIsmData->preprocEneTarget_fx[band_idx], L_max( 1, hMasaIsmData->preprocEneRealized_fx[band_idx] ), &temp_q );
+ temp_q = sub( Q31, sub( sub( Q31, temp_q ), sub( hMasaIsmData->preprocEneTarget_e[band_idx], hMasaIsmData->preprocEneRealized_e[band_idx] ) ) );
+ temp = Sqrt32( temp, &temp_q ); // Q: 31-temp_q
+ temp = L_shl( temp, sub( temp_q, 3 ) ); // Q28
+ temp_q = Q28;
+ move16();
+ }
+ ELSE
+ {
+ temp = 0;
move32();
}
- temp1 = BASOP_Util_Divide3232_Scale( hMasaIsmData->preprocEneTarget_fx[bin], L_max( EPSILON_FX, hMasaIsmData->preprocEneRealized_fx[bin] ), &eqVal_q_fx );
- eqVal_fx = Sqrt16( temp1, &eqVal_q_fx );
- temp1 = 4 << Q12; // Q12
- move16();
- IF( LT_16( eqVal_q_fx, Q12 ) )
+
+ IF( GT_32( ONE_IN_Q30, temp ) )
{
- IF( GT_16( eqVal_fx, shr( temp1, sub( Q12, eqVal_q_fx ) ) ) )
- {
- eqVal_fx = temp1;
- move16();
- eqVal_q_fx = Q12;
- move16();
- }
+ eqVal = temp;
+ move32();
}
ELSE
{
- if ( GT_16( shr( eqVal_fx, sub( eqVal_q_fx, Q12 ) ), temp1 ) )
+ eqVal = ONE_IN_Q30; // 4 in Q28
+ move32();
+ }
+
+ FOR( ch = 0; ch < 2; ch++ )
+ {
+ FOR( slot = 0; slot < nSlots; slot++ )
{
- eqVal_fx = temp1; // eqVal_q_fx
- move16();
+ FOR( bin = bin_lo; bin < bin_hi; bin++ )
+ {
+ temp = Mpy_32_32( outSlotRe[ch][slot][bin], eqVal ); // Q = (cldfb_q) + 28 -31 = cldfb_q - 3
+ inRe_fx[ch][slot][bin] = L_shl_sat( temp, 3 );
+ move32();
+
+ temp = Mpy_32_32( outSlotIm[ch][slot][bin], eqVal ); // Q = (cldfb_q) + 28 -31 = cldfb_q - 3
+ inIm_fx[ch][slot][bin] = L_shl_sat( temp, 3 );
+ move32();
+ }
}
}
+ }
- FOR( ch = 0; ch < 2; ch++ )
+ IF( !masaIsmMode )
+ {
+ Word16 obj_idx1, obj_idx2;
+
+ FOR( band_idx = 0; band_idx < hParamIsmDec->hParamIsm->nbands; band_idx++ )
{
- inRe_fx[ch][slot][bin] = Mpy_32_16_1( outSlotRe_fx[ch], eqVal_fx );
- move32();
- inIm_fx[ch][slot][bin] = Mpy_32_16_1( outSlotIm_fx[ch], eqVal_fx );
- move32();
+ bin_lo = hParamIsmDec->hParamIsm->band_grouping[band_idx];
+ bin_hi = hParamIsmDec->hParamIsm->band_grouping[band_idx + 1];
+ move16();
+ move16();
+
+ obj_idx1 = hParamIsmDec->hParamIsm->obj_indices[band_idx][0][0];
+ obj_idx2 = hParamIsmDec->hParamIsm->obj_indices[band_idx][0][1];
+ move16();
+ move16();
+
+ FOR( bin = bin_lo; bin < bin_hi; bin++ )
+ {
+ hSpatParamRendCom->energy_ratio1_fx[dirac_read_idx][bin] = hMasaIsmData->energy_ratio_ism_fx[obj_idx1][dirac_read_idx][bin];
+ hSpatParamRendCom->energy_ratio2_fx[dirac_read_idx][bin] = hMasaIsmData->energy_ratio_ism_fx[obj_idx2][dirac_read_idx][bin];
+ move32();
+ move32();
+ }
}
- *cldfb_buf_q = sub( add( *cldfb_buf_q, eqVal_q_fx ), 15 );
- move16();
}
}
return;
}
-
static void ivas_masa_ext_rend_parambin_internal_fx(
MASA_EXT_REND_HANDLE hMasaExtRend,
COMBINED_ORIENTATION_HANDLE hCombinedOrientationData,
@@ -5605,7 +6469,7 @@ static void ivas_masa_ext_rend_parambin_internal_fx(
Word16 i, j;
Word16 nchan_transport;
Word16 q_mat;
- int16_t pos_idx;
+ Word16 pos_idx;
const MULTI_BIN_REND_POSE_DATA *pMultiBinPoseData;
Word32 tmp_Cldfb_out_re[BINAURAL_CHANNELS][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX];
Word32 tmp_Cldfb_out_im[BINAURAL_CHANNELS][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX];
@@ -5716,8 +6580,8 @@ static void ivas_masa_ext_rend_parambin_internal_fx(
{
/* At mono input duplicate the channel to dual-mono, and apply gain
correction to ensure same overall level as in stereo mode */
- v_multc_fixed( Cldfb_RealBuffer_in_fx[0][slot], 1518500224 /* INV_SQRT_2 in Q31 */, Cldfb_RealBuffer_in_fx[0][slot], nBins );
- v_multc_fixed( Cldfb_ImagBuffer_in_fx[0][slot], 1518500224 /* INV_SQRT_2 in Q31 */, Cldfb_ImagBuffer_in_fx[0][slot], nBins );
+ v_multc_fx( Cldfb_RealBuffer_in_fx[0][slot], 1518500224 /* INV_SQRT_2 in Q31 */, Cldfb_RealBuffer_in_fx[0][slot], nBins );
+ v_multc_fx( Cldfb_ImagBuffer_in_fx[0][slot], 1518500224 /* INV_SQRT_2 in Q31 */, Cldfb_ImagBuffer_in_fx[0][slot], nBins );
Copy32( Cldfb_RealBuffer_in_fx[0][slot], Cldfb_RealBuffer_in_fx[1][slot], nBins );
Copy32( Cldfb_ImagBuffer_in_fx[0][slot], Cldfb_ImagBuffer_in_fx[1][slot], nBins );
@@ -5954,7 +6818,7 @@ static void ivas_masa_ext_rend_parambin_internal_fx(
void ivas_masa_ext_rend_parambin_render_fx(
MASA_EXT_REND_HANDLE hMasaExtRend, /* i/o: MASA ext rend structure */
COMBINED_ORIENTATION_HANDLE hCombinedOrientationData, /* i : combined orientation handle */
- Word32 *output_f[], /* i/o: synthesized core-coder transport channels/DirAC output Q11*/
+ Word32 *output_fx[], /* i/o: synthesized core-coder transport channels/DirAC output Q11*/
const Word16 num_subframes, /* i : number of subframes to render */
const SPLIT_REND_WRAPPER *hSplitRendWrapper, /* i : split rendering orientation data */
Word32 Cldfb_Out_Real[][CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* o : rendered orientations for split rend. real part of cldfb */
@@ -5970,7 +6834,7 @@ void ivas_masa_ext_rend_parambin_render_fx(
FOR( ch = 0; ch < BINAURAL_CHANNELS; ch++ )
{
- p_output[ch] = output_f[ch];
+ p_output[ch] = output_fx[ch];
}
hSpatParamRendCom->subframes_rendered = hSpatParamRendCom->dirac_read_idx;
diff --git a/lib_rend/ivas_dirac_decorr_dec_fx.c b/lib_rend/ivas_dirac_decorr_dec_fx.c
index bd1b4e35aafabfcce4548d7914afade13092b4ef..acbfb3bd2a5ca36e8b63b3ea9959d4c26272d66d 100644
--- a/lib_rend/ivas_dirac_decorr_dec_fx.c
+++ b/lib_rend/ivas_dirac_decorr_dec_fx.c
@@ -489,7 +489,7 @@ void ivas_dirac_dec_decorr_process_fx(
}
FOR( ch_idx = 0; ch_idx < num_protos_dir; ch_idx++ )
{
- v_mult_fixed( &aux_buffer_fx[2 * ch_idx * num_freq_bands], &aux_buffer_fx[2 * ch_idx * num_freq_bands], &aux_buffer_fx[2 * ch_idx * max_band_decorr_temp], imult1616( 2, max_band_decorr_temp ) ); // q_aux_buffer
+ v_mult_fx( &aux_buffer_fx[2 * ch_idx * num_freq_bands], &aux_buffer_fx[2 * ch_idx * num_freq_bands], &aux_buffer_fx[2 * ch_idx * max_band_decorr_temp], imult1616( 2, max_band_decorr_temp ) ); // q_aux_buffer
}
q_aux_buffer = sub( add( add( add( q_input_frame, q_input_frame ), q_shift ), q_shift ), 31 );
@@ -502,6 +502,7 @@ void ivas_dirac_dec_decorr_process_fx(
q_aux_buffer = 31;
move16();
}
+
/* compute onset filter */
max_band_decorr = h_freq_domain_decorr_ap_params->max_band_decorr;
move16();
@@ -546,9 +547,9 @@ void ivas_dirac_dec_decorr_process_fx(
FOR( ch_idx = 0; ch_idx < num_protos_dir; ch_idx++ )
{
//** this might effect when max_band_decorr is not equal to max_band_decorr_temp//
- v_mult_inc_fixed( &input_frame_fx[2 * ch_idx * num_freq_bands], 2, &onset_filter_fx[ch_idx * num_freq_bands], 1, &aux_buffer_fx[2 * ch_idx * max_band_decorr], 2, max_band_decorr ); // q_input_frame
+ v_mult_inc_fx( &input_frame_fx[2 * ch_idx * num_freq_bands], 2, &onset_filter_fx[ch_idx * num_freq_bands], 1, &aux_buffer_fx[2 * ch_idx * max_band_decorr], 2, max_band_decorr ); // q_input_frame
- v_mult_inc_fixed( &input_frame_fx[2 * ch_idx * num_freq_bands + 1], 2, &onset_filter_fx[ch_idx * num_freq_bands], 1, &aux_buffer_fx[2 * ch_idx * max_band_decorr + 1], 2, max_band_decorr ); // q_input_frame
+ v_mult_inc_fx( &input_frame_fx[2 * ch_idx * num_freq_bands + 1], 2, &onset_filter_fx[ch_idx * num_freq_bands], 1, &aux_buffer_fx[2 * ch_idx * max_band_decorr + 1], 2, max_band_decorr ); // q_input_frame
}
q_aux_buffer = q_input_frame;
move16();
@@ -750,8 +751,9 @@ void ivas_dirac_dec_decorr_process_fx(
IF( h_freq_domain_decorr_ap_params->use_ducker )
{
Word16 len1 = shl( imult1616( max_band_decorr, num_protos_dir ), 1 );
+
/* compute direct power w/o onsets for the energy ratio, signal is still in the aux buffer */
- v_mult_fixed( aux_buffer_fx, aux_buffer_fx, aux_buffer_fx, len1 ); // 2 *q_aux -31
+ v_mult_fx( aux_buffer_fx, aux_buffer_fx, aux_buffer_fx, len1 ); // 2 *q_aux -31
q_aux_buffer = sub( shl( q_aux_buffer, 1 ), 31 );
diff --git a/lib_rend/ivas_dirac_output_synthesis_dec_fx.c b/lib_rend/ivas_dirac_output_synthesis_dec_fx.c
index 574a6950ec9aa2337bfc0d825dbd0b22b89e00c9..29184695ce35ebc52a47cfc9f626e504e1ca7f34 100644
--- a/lib_rend/ivas_dirac_output_synthesis_dec_fx.c
+++ b/lib_rend/ivas_dirac_output_synthesis_dec_fx.c
@@ -724,8 +724,8 @@ void ivas_dirac_dec_output_synthesis_process_slot_fx(
{
IF( EQ_16( hDirACRend->synthesisConf, DIRAC_SYNTHESIS_GAIN_SHD ) )
{
- v_multc_fixed( hSpatParamRendCom->energy_ratio1_fx[md_idx], -MAX_32 /*-1 Q31*/, aux_buf, num_freq_bands ); /* 30 + 31 - 31 -> 30 */
- v_addc_fixed( aux_buf, ONE_IN_Q30 /*1 Q30*/, aux_buf, num_freq_bands ); /*30*/
+ v_multc_fx( hSpatParamRendCom->energy_ratio1_fx[md_idx], -MAX_32 /*-1 Q31*/, aux_buf, num_freq_bands ); /* 30 + 31 - 31 -> 30 */
+ v_addc_fx( aux_buf, ONE_IN_Q30 /*1 Q30*/, aux_buf, num_freq_bands ); /*30*/
Copy32( hSpatParamRendCom->energy_ratio1_fx[md_idx],
h_dirac_output_synthesis_state->direct_power_factor_fx,
num_freq_bands ); /*Q30*/
@@ -733,8 +733,8 @@ void ivas_dirac_dec_output_synthesis_process_slot_fx(
h_dirac_output_synthesis_state->diffuse_power_factor_fx,
num_freq_bands ); /*Q30*/
- v_multc_fixed( hSpatParamRendCom->energy_ratio2_fx[md_idx], -MAX_32 /*-1 Q31*/, aux_buf, num_freq_bands ); /*30+31-31->30*/
- v_addc_fixed( aux_buf, ONE_IN_Q30 /*1 Q30*/, aux_buf, num_freq_bands ); /*30*/
+ v_multc_fx( hSpatParamRendCom->energy_ratio2_fx[md_idx], -MAX_32 /*-1 Q31*/, aux_buf, num_freq_bands ); /*30+31-31->30*/
+ v_addc_fx( aux_buf, ONE_IN_Q30 /*1 Q30*/, aux_buf, num_freq_bands ); /*30*/
Copy32( hSpatParamRendCom->energy_ratio2_fx[md_idx],
&h_dirac_output_synthesis_state->direct_power_factor_fx[hSpatParamRendCom->num_freq_bands],
num_freq_bands ); /*Q30*/
@@ -799,16 +799,15 @@ void ivas_dirac_dec_output_synthesis_process_slot_fx(
h_dirac_output_synthesis_state->direct_power_factor_q = sub( 31, h_dirac_output_synthesis_state->direct_power_factor_q );
h_dirac_output_synthesis_state->diffuse_power_factor_q = sub( 31, h_dirac_output_synthesis_state->diffuse_power_factor_q );
- v_multc_fixed( h_dirac_output_synthesis_state->direct_power_factor_fx,
- ONE_IN_Q29 /*0.25f Q31*/,
- h_dirac_output_synthesis_state->direct_power_factor_fx,
- num_freq_bands ); /*h_dirac_output_synthesis_state->direct_power_factor_q+Q31-Q31->h_dirac_output_synthesis_state->direct_power_factor_q*/
- v_multc_fixed( h_dirac_output_synthesis_state->diffuse_power_factor_fx,
- ONE_IN_Q29 /*0.25f Q31*/,
- h_dirac_output_synthesis_state->diffuse_power_factor_fx,
- num_freq_bands ); /*h_dirac_output_synthesis_state->diffuse_power_factor_q+Q31-Q31->h_dirac_output_synthesis_state->diffuse_power_factor_q*/
+ v_multc_fx( h_dirac_output_synthesis_state->direct_power_factor_fx,
+ ONE_IN_Q29 /*0.25f Q31*/,
+ h_dirac_output_synthesis_state->direct_power_factor_fx,
+ num_freq_bands ); /*h_dirac_output_synthesis_state->direct_power_factor_q+Q31-Q31->h_dirac_output_synthesis_state->direct_power_factor_q*/
+ v_multc_fx( h_dirac_output_synthesis_state->diffuse_power_factor_fx,
+ ONE_IN_Q29 /*0.25f Q31*/,
+ h_dirac_output_synthesis_state->diffuse_power_factor_fx,
+ num_freq_bands ); /*h_dirac_output_synthesis_state->diffuse_power_factor_q+Q31-Q31->h_dirac_output_synthesis_state->diffuse_power_factor_q*/
/*Direct gain*/
-
Word16 *exp_temp_cy_cross_dir_smooth_fx = (Word16 *) malloc( num_freq_bands * num_channels_dir * sizeof( Word16 ) );
Word16 cy_cross_dir_smooth_e = sub( 31, h_dirac_output_synthesis_state->q_cy_cross_dir_smooth );
@@ -1114,19 +1113,19 @@ void ivas_dirac_dec_output_synthesis_process_slot_fx(
/*Diffuse gain*/
FOR( ch_idx = s_min( 4, nchan_transport ); ch_idx < num_channels_diff; ch_idx++ )
{
- v_multc_fixed_16( h_dirac_output_synthesis_state->diffuse_power_factor_fx,
- hDirACRend->diffuse_response_function_fx[ch_idx],
- aux_buf,
- num_freq_bands_diff ); /* h_dirac_output_synthesis_state->diffuse_power_factor_q+15-15*/
+ v_multc_fx_16( h_dirac_output_synthesis_state->diffuse_power_factor_fx,
+ hDirACRend->diffuse_response_function_fx[ch_idx],
+ aux_buf,
+ num_freq_bands_diff ); /* h_dirac_output_synthesis_state->diffuse_power_factor_q+15-15*/
temp_q = h_dirac_output_synthesis_state->diffuse_power_factor_q;
IF( NE_16( temp_q, h_dirac_output_synthesis_state->q_cy_auto_diff_smooth ) )
{
Scale_sig32( aux_buf, num_freq_bands, sub( h_dirac_output_synthesis_state->q_cy_auto_diff_smooth, temp_q ) ); /*temp_q->(h_dirac_output_synthesis_state->q_cy_auto_diff_smooth)*/
}
- v_add_fixed_no_hdrm( aux_buf,
- &h_dirac_output_synthesis_state->cy_auto_diff_smooth_fx[ch_idx * num_freq_bands_diff],
- &h_dirac_output_synthesis_state->cy_auto_diff_smooth_fx[ch_idx * num_freq_bands_diff],
- num_freq_bands_diff ); /*h_dirac_output_synthesis_state->q_cy_auto_diff_smooth*/
+ v_add_fx_no_hdrm( aux_buf,
+ &h_dirac_output_synthesis_state->cy_auto_diff_smooth_fx[ch_idx * num_freq_bands_diff],
+ &h_dirac_output_synthesis_state->cy_auto_diff_smooth_fx[ch_idx * num_freq_bands_diff],
+ num_freq_bands_diff ); /*h_dirac_output_synthesis_state->q_cy_auto_diff_smooth*/
}
return;
@@ -1254,14 +1253,14 @@ void ivas_dirac_dec_output_synthesis_process_subframe_gain_shd_fx(
/*Direct gain*/
FOR( ch_idx = 0; ch_idx < nchan_transport_foa; ch_idx++ )
{
- v_multc_fixed( diffuseness, // Q30
- ONE_IN_Q31, // Q31
- &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q30
- num_freq_bands );
- v_multc_fixed( &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q30
- L_sub( h_dirac_output_synthesis_params.diffuse_compensation_factor_fx, ONE_IN_Q27 ), // Q27
- &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q26
- num_freq_bands );
+ v_multc_fx( diffuseness, // Q30
+ ONE_IN_Q31, // Q31
+ &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q30
+ num_freq_bands );
+ v_multc_fx( &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q30
+ L_sub( h_dirac_output_synthesis_params.diffuse_compensation_factor_fx, ONE_IN_Q27 ), // Q27
+ &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q26
+ num_freq_bands );
FOR( l = 0; l < num_freq_bands; l++ )
{
@@ -1292,20 +1291,21 @@ void ivas_dirac_dec_output_synthesis_process_subframe_gain_shd_fx(
move32();
}
- v_mult_fixed( aux_buf, ratio_float, ratio_float, num_freq_bands ); //(Q30, Q31) -> Q30
- v_mult_fixed( aux_buf, &ratio_float[num_freq_bands], &ratio_float[num_freq_bands], num_freq_bands ); //(Q30, Q31) -> Q30
+ v_mult_fx( aux_buf, ratio_float, ratio_float, num_freq_bands ); //(Q30, Q31) -> Q30
+ v_mult_fx( aux_buf, &ratio_float[num_freq_bands], &ratio_float[num_freq_bands], num_freq_bands ); //(Q30, Q31) -> Q30
/*Directional gain*/
FOR( ch_idx = nchan_transport_foa; ch_idx < num_channels_dir; ch_idx++ )
{
- v_mult_fixed( ratio_float, // Q30
- &h_dirac_output_synthesis_state.direct_responses_fx[ch_idx * num_freq_bands], // Q31
- &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], //(Q30, Q31) -> Q30
- num_freq_bands );
- v_mult_fixed( &ratio_float[num_freq_bands], // Q30
- &h_dirac_output_synthesis_state.direct_responses_fx[ch_idx * num_freq_bands + num_freq_bands * num_channels_dir], // Q31
- &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands + num_freq_bands * num_channels_dir], //(Q30, Q31) -> Q30
- num_freq_bands );
+ v_mult_fx( ratio_float, // Q30
+ &h_dirac_output_synthesis_state.direct_responses_fx[ch_idx * num_freq_bands], // Q31
+ &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], //(Q30, Q31) -> Q30
+ num_freq_bands );
+
+ v_mult_fx( &ratio_float[num_freq_bands], // Q30
+ &h_dirac_output_synthesis_state.direct_responses_fx[ch_idx * num_freq_bands + num_freq_bands * num_channels_dir], // Q31
+ &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands + num_freq_bands * num_channels_dir], //(Q30, Q31) -> Q30
+ num_freq_bands );
// Scale to bring in common Q-factor
q_com = s_min( h_dirac_output_synthesis_state.q_cy_cross_dir_smooth_prev, Q30 );
@@ -1331,10 +1331,10 @@ void ivas_dirac_dec_output_synthesis_process_subframe_gain_shd_fx(
/*Diffuse gain*/
FOR( ch_idx = nchan_transport_foa; ch_idx < num_channels_diff; ch_idx++ )
{
- v_multc_fixed_16( h_dirac_output_synthesis_state.diffuse_power_factor_fx, // Q31
- hDirACRend->diffuse_response_function_fx[ch_idx], // Q15
- &h_dirac_output_synthesis_state.cy_auto_diff_smooth_fx[ch_idx * num_freq_bands_diff], // Q31
- num_freq_bands_diff );
+ v_multc_fx_16( h_dirac_output_synthesis_state.diffuse_power_factor_fx, // Q31
+ hDirACRend->diffuse_response_function_fx[ch_idx], // Q15
+ &h_dirac_output_synthesis_state.cy_auto_diff_smooth_fx[ch_idx * num_freq_bands_diff], // Q31
+ num_freq_bands_diff );
// Scale to bring in common Q-factor
q_com = s_min( h_dirac_output_synthesis_state.q_cy_auto_diff_smooth_prev, Q31 );
@@ -1356,18 +1356,18 @@ void ivas_dirac_dec_output_synthesis_process_subframe_gain_shd_fx(
/*Direct gain*/
FOR( ch_idx = 0; ch_idx < nchan_transport_foa; ch_idx++ )
{
- v_mult_fixed( h_dirac_output_synthesis_state.diffuse_power_factor_fx, // Q31
- h_dirac_output_synthesis_state.diffuse_power_factor_fx, // Q31
- &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q31
- num_freq_bands );
- v_multc_fixed( &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q31
- L_sub( L_shr( h_dirac_output_synthesis_params.diffuse_compensation_factor_decorr_fx, Q3 ), ONE_IN_Q26 ), // Q26
- &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q26
- num_freq_bands_diff );
- v_multc_fixed( &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands + num_freq_bands_diff], // Q31
- L_sub( L_shr( h_dirac_output_synthesis_params.diffuse_compensation_factor_fx, Q1 ), ONE_IN_Q26 ), // Q26
- &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands + num_freq_bands_diff], // Q26
- num_freq_bands - num_freq_bands_diff );
+ v_mult_fx( h_dirac_output_synthesis_state.diffuse_power_factor_fx, // Q31
+ h_dirac_output_synthesis_state.diffuse_power_factor_fx, // Q31
+ &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q31
+ num_freq_bands );
+ v_multc_fx( &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q31
+ L_sub( L_shr( h_dirac_output_synthesis_params.diffuse_compensation_factor_decorr_fx, Q3 ), ONE_IN_Q26 ), // Q26
+ &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q26
+ num_freq_bands_diff );
+ v_multc_fx( &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands + num_freq_bands_diff], // Q31
+ L_sub( L_shr( h_dirac_output_synthesis_params.diffuse_compensation_factor_fx, Q1 ), ONE_IN_Q26 ), // Q26
+ &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands + num_freq_bands_diff], // Q26
+ num_freq_bands - num_freq_bands_diff );
FOR( l = 0; l < num_freq_bands; l++ )
{
@@ -1391,10 +1391,10 @@ void ivas_dirac_dec_output_synthesis_process_subframe_gain_shd_fx(
/*Directional gain*/
FOR( ch_idx = nchan_transport_foa; ch_idx < num_channels_dir; ch_idx++ )
{
- v_mult_fixed( h_dirac_output_synthesis_state.direct_power_factor_fx, // Q31
- &h_dirac_output_synthesis_state.direct_responses_fx[ch_idx * num_freq_bands], // Q31
- &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q31
- num_freq_bands );
+ v_mult_fx( h_dirac_output_synthesis_state.direct_power_factor_fx, // Q31
+ &h_dirac_output_synthesis_state.direct_responses_fx[ch_idx * num_freq_bands], // Q31
+ &h_dirac_output_synthesis_state.cy_cross_dir_smooth_fx[ch_idx * num_freq_bands], // Q31
+ num_freq_bands );
// Scale to bring in common Q-factor
q_com = s_min( h_dirac_output_synthesis_state.q_cy_cross_dir_smooth_prev, Q31 );
@@ -1415,10 +1415,10 @@ void ivas_dirac_dec_output_synthesis_process_subframe_gain_shd_fx(
q_com = s_min( h_dirac_output_synthesis_state.q_cy_auto_diff_smooth_prev, Q31 );
FOR( ch_idx = nchan_transport_foa; ch_idx < num_channels_diff; ch_idx++ )
{
- v_multc_fixed_16( h_dirac_output_synthesis_state.diffuse_power_factor_fx, // Q31
- hDirACRend->diffuse_response_function_fx[ch_idx], // Q15
- &h_dirac_output_synthesis_state.cy_auto_diff_smooth_fx[ch_idx * num_freq_bands_diff], // Q31
- num_freq_bands_diff );
+ v_multc_fx_16( h_dirac_output_synthesis_state.diffuse_power_factor_fx, // Q31
+ hDirACRend->diffuse_response_function_fx[ch_idx], // Q15
+ &h_dirac_output_synthesis_state.cy_auto_diff_smooth_fx[ch_idx * num_freq_bands_diff], // Q31
+ num_freq_bands_diff );
// Scale to bring in common Q-factor
Scale_sig32( &h_dirac_output_synthesis_state.cy_auto_diff_smooth_fx[ch_idx * num_freq_bands_diff],
@@ -2715,14 +2715,14 @@ void ivas_dirac_dec_compute_directional_responses_fx(
/* Panning gains have to be computed only for the first bin of the coding band in MASA, for other bins the previous values can be used */
IF( NE_16( hDirACRend->synthesisConf, DIRAC_SYNTHESIS_GAIN_SHD ) )
{
- mvr2r_inc_fixed( &hDirACRend->h_output_synthesis_psd_state.direct_responses_square_fx[k - 1],
- hSpatParamRendCom->num_freq_bands, &hDirACRend->h_output_synthesis_psd_state.direct_responses_square_fx[k],
- hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*direct_response_square_q*/
+ mvr2r_inc_fx( &hDirACRend->h_output_synthesis_psd_state.direct_responses_square_fx[k - 1],
+ hSpatParamRendCom->num_freq_bands, &hDirACRend->h_output_synthesis_psd_state.direct_responses_square_fx[k],
+ hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*direct_response_square_q*/
}
- mvr2r_inc_fixed( &hDirACRend->h_output_synthesis_psd_state.direct_responses_fx[k - 1],
- hSpatParamRendCom->num_freq_bands,
- &hDirACRend->h_output_synthesis_psd_state.direct_responses_fx[k],
- hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*direct_response_q*/
+ mvr2r_inc_fx( &hDirACRend->h_output_synthesis_psd_state.direct_responses_fx[k - 1],
+ hSpatParamRendCom->num_freq_bands,
+ &hDirACRend->h_output_synthesis_psd_state.direct_responses_fx[k],
+ hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*direct_response_q*/
}
ELSE
{
@@ -2754,11 +2754,11 @@ void ivas_dirac_dec_compute_directional_responses_fx(
test();
IF( masa_band_mapping == NULL && EQ_16( hDirACRend->synthesisConf, DIRAC_SYNTHESIS_GAIN_SHD ) )
{
- mvr2r_inc_fixed( direct_response_hoa_fx, 1, &hDirACRend->h_output_synthesis_psd_state.direct_responses_fx[k], hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*Q_direct_response_hoa*/
+ mvr2r_inc_fx( direct_response_hoa_fx, 1, &hDirACRend->h_output_synthesis_psd_state.direct_responses_fx[k], hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*Q_direct_response_hoa*/
IF( hodirac_flag )
{
- mvr2r_inc_fixed( direct_response_dir2_fx, 1, &hDirACRend->h_output_synthesis_psd_state.direct_responses_fx[k + hSpatParamRendCom->num_freq_bands * num_channels_dir], hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*Q_direct_response_dir2*/
+ mvr2r_inc_fx( direct_response_dir2_fx, 1, &hDirACRend->h_output_synthesis_psd_state.direct_responses_fx[k + hSpatParamRendCom->num_freq_bands * num_channels_dir], hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*Q_direct_response_dir2*/
}
}
ELSE IF( ( ( EQ_16( hDirACRend->synthesisConf, DIRAC_SYNTHESIS_GAIN_SHD ) ) && ( masa_band_mapping != NULL ) ) ||
@@ -2853,13 +2853,13 @@ void ivas_dirac_dec_compute_directional_responses_fx(
FOR( dir = 0; dir < hSpatParamRendCom->numIsmDirections; dir++ )
{
- IF( hMasaIsm->ism_is_edited[dir] )
+ IF( hMasaIsm->ism_dir_is_edited[dir] )
{
- ivas_dirac_dec_get_response_fx( hMasaIsm->azimuth_ism_edited[dir], hMasaIsm->elevation_ism_edited[dir], direct_response_temp_fx, hDirACRend->hOutSetup.ambisonics_order, Q29 );
+ ivas_dirac_dec_get_response_fx( hMasaIsm->azimuth_ism_edited_fx[dir], hMasaIsm->elevation_ism_edited_fx[dir], direct_response_temp_fx, hDirACRend->hOutSetup.ambisonics_order, Q29 );
}
ELSE
{
- ivas_dirac_dec_get_response_fx( hMasaIsm->azimuth_ism[dir][md_idx], hMasaIsm->elevation_ism[dir][md_idx], direct_response_temp_fx, hDirACRend->hOutSetup.ambisonics_order, Q29 );
+ ivas_dirac_dec_get_response_fx( hMasaIsm->azimuth_ism_fx[dir][md_idx], hMasaIsm->elevation_ism_fx[dir][md_idx], direct_response_temp_fx, hDirACRend->hOutSetup.ambisonics_order, Q29 );
}
exp_direct_response_temp = 2;
move16();
@@ -2987,10 +2987,10 @@ void ivas_dirac_dec_compute_directional_responses_fx(
direct_response_fx = direct_response_hoa_fx;
IF( NE_32( hDirACRend->synthesisConf, DIRAC_SYNTHESIS_GAIN_SHD ) )
{
- v_mult_fixed( direct_response_fx, direct_response_fx, direct_response_square_fx, num_channels_dir ); /*Q(2*direct_response_q-31)*/
+ v_mult_fx( direct_response_fx, direct_response_fx, direct_response_square_fx, num_channels_dir ); /*Q(2*direct_response_q-31)*/
direct_response_square_q = sub( add( direct_response_q, direct_response_q ), 31 );
- mvr2r_inc_fixed( direct_response_square_fx, 1, &hDirACRend->h_output_synthesis_psd_state.direct_responses_square_fx[k], hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*direct_response_square_q*/
+ mvr2r_inc_fx( direct_response_square_fx, 1, &hDirACRend->h_output_synthesis_psd_state.direct_responses_square_fx[k], hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*direct_response_square_q*/
IF( EQ_16( transport_signal_type, MASA_STEREO_SPACED_MICS ) )
{
@@ -3009,7 +3009,7 @@ void ivas_dirac_dec_compute_directional_responses_fx(
}
}
- mvr2r_inc_fixed( direct_response_fx, 1, &hDirACRend->h_output_synthesis_psd_state.direct_responses_fx[k], hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*q29*/
+ mvr2r_inc_fx( direct_response_fx, 1, &hDirACRend->h_output_synthesis_psd_state.direct_responses_fx[k], hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*q29*/
}
ELSE
{
@@ -3104,13 +3104,13 @@ void ivas_dirac_dec_compute_directional_responses_fx(
FOR( dir = 0; dir < hSpatParamRendCom->numIsmDirections; dir++ )
{
- IF( hMasaIsm->ism_is_edited[dir] )
+ IF( hMasaIsm->ism_dir_is_edited[dir] )
{
- vbap_determine_gains_fx( hVBAPdata, direct_response_temp_fx, hMasaIsm->azimuth_ism_edited[dir], hMasaIsm->elevation_ism_edited[dir], 1 );
+ vbap_determine_gains_fx( hVBAPdata, direct_response_temp_fx, hMasaIsm->azimuth_ism_edited_fx[dir], hMasaIsm->elevation_ism_edited_fx[dir], 1 );
}
ELSE
{
- vbap_determine_gains_fx( hVBAPdata, direct_response_temp_fx, hMasaIsm->azimuth_ism[dir][md_idx], hMasaIsm->elevation_ism[dir][md_idx], 1 );
+ vbap_determine_gains_fx( hVBAPdata, direct_response_temp_fx, hMasaIsm->azimuth_ism_fx[dir][md_idx], hMasaIsm->elevation_ism_fx[dir][md_idx], 1 );
}
Word32 tmp = 0;
move32();
@@ -3264,11 +3264,11 @@ void ivas_dirac_dec_compute_directional_responses_fx(
/* Set computed gains */
direct_response_fx = direct_response_ls_fx;
- v_mult_fixed( direct_response_fx, direct_response_fx, direct_response_square_fx, num_channels_dir ); /*2*direct_response_q-31*/
+ v_mult_fx( direct_response_fx, direct_response_fx, direct_response_square_fx, num_channels_dir ); /*2*direct_response_q-31*/
direct_response_square_q = sub( add( direct_response_q, direct_response_q ), 31 );
- mvr2r_inc_fixed( direct_response_square_fx, 1, &hDirACRend->h_output_synthesis_psd_state.direct_responses_square_fx[k], hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*direct_response_square_q*/
- mvr2r_inc_fixed( direct_response_fx, 1, &hDirACRend->h_output_synthesis_psd_state.direct_responses_fx[k], hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*direct_response_q*/
+ mvr2r_inc_fx( direct_response_square_fx, 1, &hDirACRend->h_output_synthesis_psd_state.direct_responses_square_fx[k], hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*direct_response_square_q*/
+ mvr2r_inc_fx( direct_response_fx, 1, &hDirACRend->h_output_synthesis_psd_state.direct_responses_fx[k], hSpatParamRendCom->num_freq_bands, num_channels_dir ); /*direct_response_q*/
}
ELSE
{
@@ -3364,16 +3364,15 @@ void ivas_dirac_dec_compute_power_factors_fx(
{
Word16 i;
- v_multc_fixed( diffuseness_fx, L_negate( ( ONE_IN_Q31 ) ), direct_power_factor, num_freq_bands ); // Q30
+ v_multc_fx( diffuseness_fx, L_negate( ( ONE_IN_Q31 ) ), direct_power_factor, num_freq_bands ); // Q30
- v_addc_fixed( direct_power_factor, ONE_IN_Q30, direct_power_factor, num_freq_bands ); // Q30
+ v_addc_fx( direct_power_factor, ONE_IN_Q30, direct_power_factor, num_freq_bands ); // Q30
Copy32( diffuseness_fx, diffuse_power_factor, num_freq_bands ); // Q30
- v_mult_fixed( &direct_power_factor[max_band_decorr], &direct_power_factor[max_band_decorr], &direct_power_factor[max_band_decorr], num_freq_bands - max_band_decorr ); // Q29
-
- v_mult_fixed( &diffuse_power_factor[max_band_decorr], &diffuse_power_factor[max_band_decorr], &diffuse_power_factor[max_band_decorr], num_freq_bands - max_band_decorr ); // Q29
+ v_mult_fx( &direct_power_factor[max_band_decorr], &direct_power_factor[max_band_decorr], &direct_power_factor[max_band_decorr], num_freq_bands - max_band_decorr ); // Q29
+ v_mult_fx( &diffuse_power_factor[max_band_decorr], &diffuse_power_factor[max_band_decorr], &diffuse_power_factor[max_band_decorr], num_freq_bands - max_band_decorr ); // Q29
FOR( i = 0; i < max_band_decorr; i++ )
{
@@ -3382,6 +3381,7 @@ void ivas_dirac_dec_compute_power_factors_fx(
diffuse_power_factor[i] = L_shr( diffuse_power_factor[i], 1 ); // Q29
move32();
}
+
return;
}
@@ -3391,6 +3391,7 @@ void ivas_dirac_dec_compute_power_factors_fx(
*
*
*------------------------------------------------------------------------*/
+
void ivas_lfe_synth_with_filters_fx(
MCMASA_LFE_SYNTH_DATA_HANDLE hMasaLfeSynth, /* i/o: LFE synthesis structure for McMASA */
Word32 *data_fx[], /* o : output signals (Q11) */
@@ -3605,7 +3606,7 @@ static void computeTargetPSDs_direct_fx(
Word32 aux_buffer_res[CLDFB_NO_CHANNELS_MAX]; /* size: num_freq_bands. */
/* estimate direct and diffuse power */
- v_mult_fixed( direct_power_factor, reference_power, direct_power, num_freq_bands ); /* Q31 + Q(q_reference_power) - Q31 = Q(q_reference_power) */
+ v_mult_fx( direct_power_factor, reference_power, direct_power, num_freq_bands ); /* Q31 + Q(q_reference_power) - Q31 = Q(q_reference_power) */
Word16 common1_q = s_min( *q_cy_auto_dir_smooth, s_min( q_reference_power[0], q_reference_power[1] ) );
Word16 common2_q = s_min( *q_cy_cross_dir_smooth, s_min( q_reference_power[0], q_reference_power[1] ) );
@@ -3615,17 +3616,17 @@ static void computeTargetPSDs_direct_fx(
{
cur_idx = imult1616( ch_idx, num_freq_bands );
- v_mult_fixed( direct_power, &direct_responses_square[cur_idx], aux_buffer_res, num_freq_bands ); /* Q31 + Q(q_reference_power) - Q31 = Q(q_reference_power) */
+ v_mult_fx( direct_power, &direct_responses_square[cur_idx], aux_buffer_res, num_freq_bands ); /* Q31 + Q(q_reference_power) - Q31 = Q(q_reference_power) */
scale_sig32( aux_buffer_res, s_min( num_freq_bands, CLDFB_NO_CHANNELS_HALF ), sub( common1_q, q_reference_power[0] ) ); /* Q(common1_q) */
scale_sig32( aux_buffer_res + CLDFB_NO_CHANNELS_HALF, s_max( 0, sub( num_freq_bands, CLDFB_NO_CHANNELS_HALF ) ), sub( common1_q, q_reference_power[1] ) ); /* Q(common1_q) */
scale_sig32( &cy_auto_dir_smooth[cur_idx], num_freq_bands, sub( common1_q, *q_cy_auto_dir_smooth ) ); /* Q(common1_q) */
- v_add_fixed( &cy_auto_dir_smooth[cur_idx], aux_buffer_res, &cy_auto_dir_smooth[cur_idx], num_freq_bands, Q1 ); /* Q(common1_q) - Q1 */
+ v_add_fx_hdrm( &cy_auto_dir_smooth[cur_idx], aux_buffer_res, &cy_auto_dir_smooth[cur_idx], num_freq_bands, Q1 ); /* Q(common1_q) - Q1 */
- v_mult_fixed( direct_power, &direct_responses[cur_idx], aux_buffer_res, num_freq_bands ); /* Q31 + Q(q_reference_power) - Q31 = Q(q_reference_power) */
+ v_mult_fx( direct_power, &direct_responses[cur_idx], aux_buffer_res, num_freq_bands ); /* Q31 + Q(q_reference_power) - Q31 = Q(q_reference_power) */
scale_sig32( aux_buffer_res, s_min( num_freq_bands, CLDFB_NO_CHANNELS_HALF ), sub( common2_q, q_reference_power[0] ) ); /* Q(common2_q) */
scale_sig32( aux_buffer_res + CLDFB_NO_CHANNELS_HALF, s_max( 0, sub( num_freq_bands, CLDFB_NO_CHANNELS_HALF ) ), sub( common2_q, q_reference_power[1] ) ); /* Q(common2_q) */
scale_sig32( &cy_cross_dir_smooth[cur_idx], num_freq_bands, sub( common2_q, *q_cy_cross_dir_smooth ) ); /* Q(common2_q) */
- v_add_fixed( &cy_cross_dir_smooth[cur_idx], aux_buffer_res, &cy_cross_dir_smooth[cur_idx], num_freq_bands, Q1 ); /* Q(common2_q) - Q1 */
+ v_add_fx_hdrm( &cy_cross_dir_smooth[cur_idx], aux_buffer_res, &cy_cross_dir_smooth[cur_idx], num_freq_bands, Q1 ); /* Q(common2_q) - Q1 */
}
/* Q adjustment */
@@ -3659,7 +3660,8 @@ static void computeTargetPSDs_direct_subframe_fx(
Word32 direct_power[CLDFB_NO_CHANNELS_MAX]; /* size: num_freq_bands. */
/* estimate direct and diffuse power */
- v_mult_fixed( direct_power_factor, reference_power, direct_power, num_freq_bands );
+ v_mult_fx( direct_power_factor, reference_power, direct_power, num_freq_bands );
+
/* compute target auto and cross PSDs of current frame (smoothed) */
FOR( ch_idx = 0; ch_idx < num_channels; ++ch_idx )
{
@@ -3667,7 +3669,7 @@ static void computeTargetPSDs_direct_subframe_fx(
q_tmp = L_norm_arr( &direct_responses_square[cur_idx], num_freq_bands );
Copy_Scale_sig32( &direct_responses_square[cur_idx], L_tmp, num_freq_bands, q_tmp );
- v_mult_fixed( direct_power, L_tmp, &cy_auto_dir_smooth[cur_idx], num_freq_bands ); // (q_reference_power, q_tmp) -> q_reference_power + q_tmp
+ v_mult_fx( direct_power, L_tmp, &cy_auto_dir_smooth[cur_idx], num_freq_bands ); // (q_reference_power, q_tmp) -> q_reference_power + q_tmp
q_cy_auto_dir_smooth_local[0] = add( add( q_reference_power[0], q_tmp ), L_norm_arr( cy_auto_dir_smooth + cur_idx, s_min( num_freq_bands, CLDFB_NO_CHANNELS_HALF ) ) );
q_cy_auto_dir_smooth_local[1] = add( add( q_reference_power[1], q_tmp ), L_norm_arr( cy_auto_dir_smooth + cur_idx + CLDFB_NO_CHANNELS_HALF, s_max( sub( num_freq_bands, CLDFB_NO_CHANNELS_HALF ), 0 ) ) );
@@ -3677,7 +3679,7 @@ static void computeTargetPSDs_direct_subframe_fx(
Scale_sig32( cy_auto_dir_smooth + cur_idx, s_min( num_freq_bands, CLDFB_NO_CHANNELS_HALF ), sub( q_cy_auto_dir_smooth[ch_idx], add( q_reference_power[0], q_tmp ) ) );
Scale_sig32( cy_auto_dir_smooth + cur_idx + CLDFB_NO_CHANNELS_HALF, s_max( sub( num_freq_bands, CLDFB_NO_CHANNELS_HALF ), 0 ), sub( q_cy_auto_dir_smooth[ch_idx], add( q_reference_power[1], q_tmp ) ) );
- v_mult_fixed( direct_power, &direct_responses[cur_idx], &cy_cross_dir_smooth[cur_idx], num_freq_bands ); // (q_reference_power, Q31) -> q_reference_power
+ v_mult_fx( direct_power, &direct_responses[cur_idx], &cy_cross_dir_smooth[cur_idx], num_freq_bands ); // (q_reference_power, Q31) -> q_reference_power
Scale_sig32( &cy_cross_dir_smooth[cur_idx] + CLDFB_NO_CHANNELS_HALF, s_max( sub( num_freq_bands, CLDFB_NO_CHANNELS_HALF ), 0 ), sub( q_reference_power[0], q_reference_power[1] ) );
}
@@ -3706,7 +3708,7 @@ static void computeTargetPSDs_diffuse_fx(
Word32 aux_buffer_res[CLDFB_NO_CHANNELS_MAX]; /* size: num_freq_bands. */
/* estimate direct and diffuse power */
- v_mult_fixed( diffuse_power_factor, reference_power, diffuse_power, num_freq_bands ); /* Q31 + Q(q_reference_power) - Q31 = Q(q_reference_power) */
+ v_mult_fx( diffuse_power_factor, reference_power, diffuse_power, num_freq_bands ); /* Q31 + Q(q_reference_power) - Q31 = Q(q_reference_power) */
Word16 common_q = s_min( *q_cy_auto_diff_smooth, s_min( q_reference_power[0], q_reference_power[1] ) );
@@ -3715,11 +3717,11 @@ static void computeTargetPSDs_diffuse_fx(
{
cur_idx = imult1616( ch_idx, num_freq_bands );
- v_multc_fixed( &diffuse_power[start_band], diffuse_responses_square[ch_idx], aux_buffer_res, sub( num_freq_bands, start_band ) ); /* Q31 + Q(q_reference_power) - Q31 = Q(q_reference_power) */
+ v_multc_fx( &diffuse_power[start_band], diffuse_responses_square[ch_idx], aux_buffer_res, sub( num_freq_bands, start_band ) ); /* Q31 + Q(q_reference_power) - Q31 = Q(q_reference_power) */
scale_sig32( aux_buffer_res, s_min( sub( num_freq_bands, start_band ), CLDFB_NO_CHANNELS_HALF ), sub( common_q, q_reference_power[0] ) ); /* Q(common_q) */
scale_sig32( aux_buffer_res + CLDFB_NO_CHANNELS_HALF, s_max( 0, sub( sub( num_freq_bands, start_band ), CLDFB_NO_CHANNELS_HALF ) ), sub( common_q, q_reference_power[1] ) ); /* Q(common_q) */
scale_sig32( &cy_auto_diff_smooth[cur_idx + start_band], sub( num_freq_bands, start_band ), sub( common_q, *q_cy_auto_diff_smooth ) ); /* Q(common_q) */
- v_add_fixed( &cy_auto_diff_smooth[cur_idx + start_band], aux_buffer_res, &cy_auto_diff_smooth[cur_idx + start_band], sub( num_freq_bands, start_band ), Q1 ); /* Q(common_q) - Q1 */
+ v_add_fx_hdrm( &cy_auto_diff_smooth[cur_idx + start_band], aux_buffer_res, &cy_auto_diff_smooth[cur_idx + start_band], sub( num_freq_bands, start_band ), Q1 ); /* Q(common_q) - Q1 */
}
/* Q adjustment */
@@ -3746,7 +3748,7 @@ static void computeTargetPSDs_diffuse_subframe_fx(
Word16 q_cy_auto_diff_smooth_new, q_diffuse_power;
/* estimate direct and diffuse power */
- v_mult_fixed( diffuse_power_factor, reference_power, diffuse_power, num_freq_bands ); // (Q31, q_reference_power) -> q_reference_power
+ v_mult_fx( diffuse_power_factor, reference_power, diffuse_power, num_freq_bands ); // (Q31, q_reference_power) -> q_reference_power
q_diffuse_power = s_min( q_reference_power[0], q_reference_power[1] );
Scale_sig32( diffuse_power, s_min( num_freq_bands, CLDFB_NO_CHANNELS_HALF ), sub( q_diffuse_power, q_reference_power[0] ) );
@@ -3767,7 +3769,7 @@ static void computeTargetPSDs_diffuse_subframe_fx(
{
Scale_sig32( &cy_auto_diff_smooth[cur_idx], start_band, sub( q_diffuse_power, *q_cy_auto_diff_smooth ) );
}
- v_multc_fixed( &diffuse_power[start_band], diffuse_responses_square[ch_idx], &cy_auto_diff_smooth[cur_idx + start_band], sub( num_freq_bands, start_band ) ); // (q_reference_power, Q31) -> q_reference_power
+ v_multc_fx( &diffuse_power[start_band], diffuse_responses_square[ch_idx], &cy_auto_diff_smooth[cur_idx + start_band], sub( num_freq_bands, start_band ) ); // (q_reference_power, Q31) -> q_reference_power
}
*q_cy_auto_diff_smooth = q_cy_auto_diff_smooth_new;
@@ -3801,7 +3803,7 @@ static void computeTargetPSDs_diffuse_with_onsets_fx(
q_reference_power_min_one[1] = sub( q_reference_power[1], Q1 );
/* estimate direct and diffuse power */
- v_mult_fixed( diffuse_power_factor, reference_power, diffuse_power, num_decorr_freq_bands ); // (Q31, q_reference_power) -> q_reference_power
+ v_mult_fx( diffuse_power_factor, reference_power, diffuse_power, num_decorr_freq_bands ); // (Q31, q_reference_power) -> q_reference_power
q_common = s_min( *q_cy_auto_diff_smooth, s_min( q_reference_power_min_one[0], q_reference_power_min_one[1] ) );
@@ -3813,12 +3815,12 @@ static void computeTargetPSDs_diffuse_with_onsets_fx(
cur_idx = imult1616( ch_idx, num_freq_bands );
diff_idx = imult1616( proto_frame_diff_index[ch_idx], num_freq_bands );
- v_multc_fixed( &onset_filter[diff_idx], diffuse_responses_square[ch_idx], aux_buffer_res1, num_decorr_freq_bands ); // (Q31, Q31) -> Q31
- v_multc_fixed( &onset_filter[diff_idx], INT_MIN, aux_buffer_res, num_decorr_freq_bands ); // (Q31, Q31) -> Q31
- v_addc_fixed( aux_buffer_res, ONE_IN_Q31, aux_buffer_res, num_decorr_freq_bands ); // Q31
- v_multc_fixed( aux_buffer_res, diffuse_response_p4, aux_buffer_res, num_decorr_freq_bands ); // (Q31, Q31) -> Q31
- v_add_fixed( aux_buffer_res1, aux_buffer_res, aux_buffer_res, num_decorr_freq_bands, Q1 ); // Q30
- v_mult_fixed( aux_buffer_res, diffuse_power, aux_buffer_res, num_decorr_freq_bands ); // (Q30, q_reference_power) -> q_reference_power - Q1
+ v_multc_fx( &onset_filter[diff_idx], diffuse_responses_square[ch_idx], aux_buffer_res1, num_decorr_freq_bands ); // (Q31, Q31) -> Q31
+ v_multc_fx( &onset_filter[diff_idx], INT_MIN, aux_buffer_res, num_decorr_freq_bands ); // (Q31, Q31) -> Q31
+ v_addc_fx( aux_buffer_res, ONE_IN_Q31, aux_buffer_res, num_decorr_freq_bands ); // Q31
+ v_multc_fx( aux_buffer_res, diffuse_response_p4, aux_buffer_res, num_decorr_freq_bands ); // (Q31, Q31) -> Q31
+ v_add_fx_hdrm( aux_buffer_res1, aux_buffer_res, aux_buffer_res, num_decorr_freq_bands, Q1 ); // Q30
+ v_mult_fx( aux_buffer_res, diffuse_power, aux_buffer_res, num_decorr_freq_bands ); // (Q30, q_reference_power) -> q_reference_power - Q1
IF( NE_16( q_common, q_reference_power_min_one[0] ) )
{
@@ -3832,7 +3834,7 @@ static void computeTargetPSDs_diffuse_with_onsets_fx(
{
scale_sig32( &cy_auto_diff_smooth[cur_idx], num_decorr_freq_bands, sub( q_common, *q_cy_auto_diff_smooth ) ); // q_common
}
- v_add_fixed( &cy_auto_diff_smooth[cur_idx], aux_buffer_res, &cy_auto_diff_smooth[cur_idx], num_decorr_freq_bands, Q1 ); // (q_common - Q1)
+ v_add_fx_hdrm( &cy_auto_diff_smooth[cur_idx], aux_buffer_res, &cy_auto_diff_smooth[cur_idx], num_decorr_freq_bands, Q1 ); // (q_common - Q1)
scale_sig32( &cy_auto_diff_smooth[cur_idx + num_decorr_freq_bands], sub( num_freq_bands, num_decorr_freq_bands ), sub( sub( q_common, Q1 ), *q_cy_auto_diff_smooth ) ); // (q_common - Q1)
}
diff --git a/lib_rend/ivas_dirac_rend_fx.c b/lib_rend/ivas_dirac_rend_fx.c
index 83615cfb77fe3968a8bada855aa31b04d86f8d4d..bde35181ee7c12d7d3da54a92c1be9e4cb051725 100644
--- a/lib_rend/ivas_dirac_rend_fx.c
+++ b/lib_rend/ivas_dirac_rend_fx.c
@@ -2632,17 +2632,11 @@ void protoSignalComputation4_fx(
Word32 sq_tmp_fx;
Word32 *p_proto_buffer_fx;
Word16 min_q_shift, q_shift;
-#ifndef FIX_1985_SBA_714_HF_LOSS
- Word16 min_q_shift2, q_shift2;
-#endif
Word32 re, im;
Word16 proto_power_smooth_fx_q, sq_tmp_q;
-#ifdef FIX_1985_SBA_714_HF_LOSS
Word64 ref_pow64[CLDFB_NO_CHANNELS_MAX], re64;
Word16 sf1, sf2;
-#endif
-#ifdef FIX_1985_SBA_714_HF_LOSS
FOR( l = 0; l < num_freq_bands; l++ )
{
re64 = W_mult_32_32( RealBuffer_fx[0][0][l], RealBuffer_fx[0][0][l] );
@@ -2673,69 +2667,7 @@ void protoSignalComputation4_fx(
reference_power_fx[l] = W_extract_h( W_shl( ref_pow64[l], sf2 ) );
}
reference_power_q[1] = sub( add( shl( q_cldfb, 1 ), sf2 ), 31 );
-#else
- min_q_shift = Q31;
- move16();
- q_shift = Q31;
- move16();
- min_q_shift2 = Q31;
- move16();
- q_shift2 = Q31;
- move16();
- sq_tmp_q = 0;
- move16();
-
- set_zero_fx( reference_power_fx, num_freq_bands );
-
- /* calculate the shift possible for both RealBuffer_fx and ImagBuffer_fx buffers*/
- FOR( k = 0; k < s_max( 4, nchan_transport ); k++ )
- {
- q_shift = L_norm_arr( RealBuffer_fx[k][0], s_min( CLDFB_NO_CHANNELS_HALF, num_freq_bands ) );
- min_q_shift = s_min( q_shift, min_q_shift );
- q_shift = L_norm_arr( ImagBuffer_fx[k][0], s_min( CLDFB_NO_CHANNELS_HALF, num_freq_bands ) );
- min_q_shift = s_min( q_shift, min_q_shift );
- q_shift2 = L_norm_arr( RealBuffer_fx[k][0] + CLDFB_NO_CHANNELS_HALF, s_max( 0, sub( num_freq_bands, CLDFB_NO_CHANNELS_HALF ) ) );
- min_q_shift2 = s_min( q_shift2, min_q_shift2 );
- q_shift2 = L_norm_arr( ImagBuffer_fx[k][0] + CLDFB_NO_CHANNELS_HALF, s_max( 0, sub( num_freq_bands, CLDFB_NO_CHANNELS_HALF ) ) );
- min_q_shift2 = s_min( q_shift2, min_q_shift2 );
- }
- q_shift = min_q_shift;
- min_q_shift = sub( min_q_shift, find_guarded_bits_fx( i_mult( 2, 4 ) ) );
- q_shift2 = min_q_shift2;
- min_q_shift2 = sub( min_q_shift2, find_guarded_bits_fx( i_mult( 2, 4 ) ) );
- FOR( k = 0; k < 4; k++ )
- {
- FOR( l = 0; l < s_min( CLDFB_NO_CHANNELS_HALF, num_freq_bands ); l++ )
- {
- re = L_shl( RealBuffer_fx[k][0][l], min_q_shift ); // q_cldfb+min_q_shift
- im = L_shl( ImagBuffer_fx[k][0][l], min_q_shift ); // q_cldfb+min_q_shift
-
- sq_tmp_fx = Madd_32_32( Mpy_32_32( re, re ), im, im ); // 2*(q_cldfb+min_q_shift)-31
-
- reference_power_fx[l] = Madd_32_16( reference_power_fx[l], sq_tmp_fx, 16384 /*0.5 in Q15*/ ); // 2*(q_cldfb+min_q_shift)-31
- move32();
- }
- FOR( l = CLDFB_NO_CHANNELS_HALF; l < num_freq_bands; l++ )
- {
- re = L_shl( RealBuffer_fx[k][0][l], min_q_shift2 ); // q_cldfb+min_q_shift
- im = L_shl( ImagBuffer_fx[k][0][l], min_q_shift2 ); // q_cldfb+min_q_shift
-
- sq_tmp_fx = Madd_32_32( Mpy_32_32( re, re ), im, im ); // 2*(q_cldfb+min_q_shift)-31
-
- reference_power_fx[l] = Madd_32_16( reference_power_fx[l], sq_tmp_fx, 16384 /*0.5 in Q15*/ ); // 2*(q_cldfb+min_q_shift)-31
- move32();
- }
- }
- sq_tmp_q = sub( add( add( q_cldfb, min_q_shift ), add( q_cldfb, min_q_shift ) ), 31 );
- reference_power_q[0] = sq_tmp_q;
- move16();
- sq_tmp_q = sub( add( add( q_cldfb, min_q_shift2 ), add( q_cldfb, min_q_shift2 ) ), 31 );
- reference_power_q[1] = sq_tmp_q;
- move16();
-#endif
-
-#ifdef FIX_1985_SBA_714_HF_LOSS
min_q_shift = Q31;
/* calculate the shift possible for both RealBuffer_fx and ImagBuffer_fx buffers*/
FOR( k = 0; k < s_max( 4, nchan_transport ); k++ )
@@ -2746,9 +2678,6 @@ void protoSignalComputation4_fx(
min_q_shift = s_min( q_shift, min_q_shift );
}
min_q_shift = sub( min_q_shift, find_guarded_bits_fx( 2 ) );
-#else
- min_q_shift = sub( s_min( q_shift, q_shift2 ), find_guarded_bits_fx( 2 ) );
-#endif
/*For decorrelated diffuseness*/
FOR( l = 0; l < num_outputs_diff; l++ )
@@ -3640,7 +3569,7 @@ void rotateAziEle_DirAC_fx(
/* A reduced rewrite of the corresponding decoder side function */
static void ivas_masa_ext_dirac_render_sf_fx(
MASA_EXT_REND_HANDLE hMasaExtRend, /* i/o: IVAS decoder structure */
- Word32 *output_f_fx[] /* i/o: synthesized core-coder transport channels/DirAC output q11*/
+ Word32 *output_fx[] /* i/o: synthesized core-coder transport channels/DirAC output q11*/
)
{
Word16 i, ch, idx_in, idx_lfe;
@@ -3854,7 +3783,7 @@ static void ivas_masa_ext_dirac_render_sf_fx(
move16();
hMasaExtRend->cldfbAnaRend[ch]->Q_cldfb_state = q_cldfb;
move16();
- cldfbAnalysis_ts_fx_fixed_q( &( output_f_fx[ch][hSpatParamRendCom->num_freq_bands * index_slot] ),
+ cldfbAnalysis_ts_fx_fixed_q( &( output_fx[ch][hSpatParamRendCom->num_freq_bands * index_slot] ),
Cldfb_RealBuffer_fx[ch][0],
Cldfb_ImagBuffer_fx[ch][0],
hSpatParamRendCom->num_freq_bands,
@@ -4070,9 +3999,9 @@ static void ivas_masa_ext_dirac_render_sf_fx(
hDirACRend->h_freq_domain_decorr_ap_params,
hDirACRend->h_freq_domain_decorr_ap_state );
- v_multc_fixed( onset_filter_fx, 536870912 /* 0.25f in Q31 */, onset_filter_fx, hSpatParamRendCom->num_freq_bands ); /* Q31 */
- v_add_fixed_no_hdrm( onset_filter_fx, onset_filter_subframe_fx, onset_filter_subframe_fx, hSpatParamRendCom->num_freq_bands ); /* Q31 */
- p_onset_filter_fx = onset_filter_subframe_fx; /*q31*/
+ v_multc_fx( onset_filter_fx, 536870912 /* 0.25f in Q31 */, onset_filter_fx, hSpatParamRendCom->num_freq_bands ); /* Q31 */
+ v_add_fx_no_hdrm( onset_filter_fx, onset_filter_subframe_fx, onset_filter_subframe_fx, hSpatParamRendCom->num_freq_bands ); /* Q31 */
+ p_onset_filter_fx = onset_filter_subframe_fx; /*q31*/
}
ELSE
{
@@ -4160,7 +4089,7 @@ static void ivas_masa_ext_dirac_render_sf_fx(
DirAC_mem.reference_power_smooth_q[1] = DirAC_mem.reference_power_q[1];
move16();
move16();
- v_add_fixed_no_hdrm( reference_power_fix, reference_power_smooth_fx, reference_power_smooth_fx, hSpatParamRendCom->num_freq_bands ); // DirAC_mem.reference_power_smooth_q
+ v_add_fx_no_hdrm( reference_power_fix, reference_power_smooth_fx, reference_power_smooth_fx, hSpatParamRendCom->num_freq_bands ); // DirAC_mem.reference_power_smooth_q
}
}
/*Rescaling proto_direct_buffer_f*/
@@ -4473,7 +4402,7 @@ static void ivas_masa_ext_dirac_render_sf_fx(
IF( hDirACRend->hOutSetup.num_lfe > 0 && ( EQ_16( hDirACRend->hOutSetup.index_lfe[idx_lfe], ch ) ) )
{
/* No LFE for MASA rendering */
- set32_fx( &( output_f_fx[ch][index_slot * hSpatParamRendCom->num_freq_bands] ), 0, imult1616( hSpatParamRendCom->subframe_nbslots[subframe_idx], hSpatParamRendCom->num_freq_bands ) );
+ set32_fx( &( output_fx[ch][index_slot * hSpatParamRendCom->num_freq_bands] ), 0, imult1616( hSpatParamRendCom->subframe_nbslots[subframe_idx], hSpatParamRendCom->num_freq_bands ) );
IF( LT_16( idx_lfe, sub( hDirACRend->hOutSetup.num_lfe, 1 ) ) )
{
@@ -4506,8 +4435,8 @@ static void ivas_masa_ext_dirac_render_sf_fx(
ImagBuffer_fx[i] = Cldfb_ImagBuffer_fx[idx_in][i]; // q_cldfb
}
Word16 out_size = imult1616( hSpatParamRendCom->num_freq_bands, hSpatParamRendCom->subframe_nbslots[subframe_idx] );
- cldfbSynthesis_ivas_fx( RealBuffer_fx, ImagBuffer_fx, &( output_f_fx[ch][index_slot * hSpatParamRendCom->num_freq_bands] ), out_size, 0, 0, hMasaExtRend->cldfbSynRend[idx_in] );
- scale_sig32( &( output_f_fx[ch][index_slot * hSpatParamRendCom->num_freq_bands] ), out_size, sub( 11, q_out ) ); // q11
+ cldfbSynthesis_ivas_fx( RealBuffer_fx, ImagBuffer_fx, &( output_fx[ch][index_slot * hSpatParamRendCom->num_freq_bands] ), out_size, 0, 0, hMasaExtRend->cldfbSynRend[idx_in] );
+ scale_sig32( &( output_fx[ch][index_slot * hSpatParamRendCom->num_freq_bands] ), out_size, sub( 11, q_out ) ); // q11
idx_in++;
}
}
@@ -4524,7 +4453,7 @@ static void ivas_masa_ext_dirac_render_sf_fx(
void ivas_masa_ext_dirac_render_fx(
MASA_EXT_REND_HANDLE hMasaExtRend, /* i/o: MASA renderer structure */
- Word32 *output_f[], /* i/o: input/output signals in time domain q11*/
+ Word32 *output_fx[], /* i/o: input/output signals in time domain q11*/
const Word16 num_subframes /* i : number of subframes to render */
)
{
@@ -4539,7 +4468,7 @@ void ivas_masa_ext_dirac_render_fx(
FOR( n = 0; n < MAX_OUTPUT_CHANNELS; n++ )
{
- output_f_local[n] = output_f[n]; // q11
+ output_f_local[n] = output_fx[n]; // q11
}
hSpatParamRendCom->subframes_rendered = hSpatParamRendCom->dirac_read_idx;
diff --git a/lib_rend/ivas_efap_fx.c b/lib_rend/ivas_efap_fx.c
index 68908cfaa36eb8aef6acb6aef1964a83e79a3cd1..23ffbe0bd17bffb0c2f17d128bac4ba46e9325d4 100644
--- a/lib_rend/ivas_efap_fx.c
+++ b/lib_rend/ivas_efap_fx.c
@@ -66,7 +66,6 @@
* Local function prototypes
*-----------------------------------------------------------------------*/
-
static ivas_error poly_init_fx( EFAP *efap, const Word16 efip_flag );
static ivas_error sphere_triangulation_fx( const Word16 numSpk, EFAP_VERTEX_DATA *vtxData, EFAP_POLYSET_DATA *polyData, Word32 ***dmTranspose /*q31*/, Word16 *numTot, const Word16 efip_flag );
static void initial_polyeder_fx( EFAP_VERTEX_DATA *vtxData, EFAP_LS_TRIANGLE *triArray, Word16 *numTri, Word16 *vtxInHull );
@@ -75,7 +74,6 @@ static void add_vertex_to_convex_hull_fx( const EFAP_VERTEX_DATA *vtxData, const
static void sort_vertices_fx( const EFAP_VERTEX *vertexArray, const Word16 *numVtx, Word16 *order );
static void visible_edges_fx( const EFAP_LS_TRIANGLE *triArray, const Word16 *visible, const Word16 numSurface, Word16 *numEdges, Word16 *edges );
-
static void flip_plane_fx( const EFAP_VERTEX *vtxArray, Word16 *surface, const Word32 centroid[3] /*q31*/ );
static void remap_ghosts_fx( EFAP_VERTEX *vtxArray, EFAP_LS_TRIANGLE *triArray, Word16 numSpk, Word16 *numVertex, Word16 numTri, Word32 **downmixMatrix /*q31*/ );
static void vertex_init_fx( const Word32 *aziSpk /*q22*/, const Word32 *eleSpk /*q22*/, EFAP_VERTEX_DATA *efapVtxData );
@@ -83,6 +81,7 @@ static void efap_panning_fx( const Word32 azi /*q22*/, const Word32 ele /*q22*/,
static void get_poly_gains_fx( const Word32 azi /*q22*/, const Word32 ele /*q22*/, const Word32 aziPoly[EFAP_MAX_CHAN_NUM] /*q22*/, const Word32 elePoly[EFAP_MAX_CHAN_NUM] /*q22*/, const Word16 numChan, Word32 *buffer /*q31*/ );
static Word32 get_tri_gain_fx( const Word32 A[2] /*q22*/, const Word32 B[2] /*q22*/, const Word32 C[2] /*q22*/, const Word32 P_minus_A[2] /*q22*/ );
+
/*-----------------------------------------------------------------------*
* EFAP Utils
*-----------------------------------------------------------------------*/
@@ -90,7 +89,6 @@ static Word32 get_tri_gain_fx( const Word32 A[2] /*q22*/, const Word32 B[2] /*q2
static void add_vertex_fx( EFAP_VERTEX *vtxArray, const Word32 azi /*q22*/, const Word32 ele /*q22*/, const Word16 pos, const EFAP_VTX_DMX_TYPE );
static void efap_sort_s_fx( Word16 *x, Word16 *idx, const Word16 len );
-
static Word32 vertex_distance_fx( const EFAP_VERTEX *vtxArray, const EFAP_LS_TRIANGLE tri, const Word16 vtxIdx );
static Word32 point_plane_distance_fx( const Word32 P1[3] /*q31*/, const Word32 P2[3] /*q31*/, const Word32 P3[3] /*q31*/, const Word32 X[3] /*q31*/ );
static Word32 point_poly_distance_fx( const EFAP_POLYSET poly, const Word32 X[3] /*q31*/ );
@@ -110,6 +108,7 @@ static Word16 in_poly_fx( const Word32 P[2] /*q22*/, const EFAP_POLYSET poly );
static Word16 in_tri_fx( Word32 A[2] /*q22*/, Word32 B[2] /*q22*/, Word32 C[2] /*q22*/, Word32 P_minus_A[2] /*q22*/ );
static void sph2cart_fx( const Word32 azi /*q22*/, const Word32 ele /*q22*/, Word32 *pos /*q31*/ );
+
/*-----------------------------------------------------------------------*
* Global function definitions
*-----------------------------------------------------------------------*/
@@ -175,6 +174,7 @@ ivas_error efap_init_data_fx(
{
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for EFAP bufferS\n" ) );
}
+
/* get upper bound of number of polygons required */
polyset_size = efap_poly_limit[num_speaker_nodes - 1];
@@ -636,11 +636,11 @@ static void initial_polyeder_fx(
/* 2. attempt to create a triangle with nonzero area */
tmp = 0;
move32();
- v_sub_fixed( vtxData->vertexArray[tetrahedron[1]].pos, vtxData->vertexArray[tetrahedron[0]].pos, tmp1, 3, 1 ); // tmp1 Q(31-1)
+ v_sub_fx( vtxData->vertexArray[tetrahedron[1]].pos, vtxData->vertexArray[tetrahedron[0]].pos, tmp1, 3, 1 ); // tmp1 Q(31-1)
WHILE( LT_16( tetrahedron[2], numVtx ) )
{
- v_sub_fixed( vtxData->vertexArray[tetrahedron[2]].pos, vtxData->vertexArray[tetrahedron[0]].pos, tmp2, 3, 1 ); // tmp2 Q(31-1)
- efap_crossp_fx( tmp1, tmp2, tmpCross ); // tmpCross Q29
+ v_sub_fx( vtxData->vertexArray[tetrahedron[2]].pos, vtxData->vertexArray[tetrahedron[0]].pos, tmp2, 3, 1 ); // tmp2 Q(31-1)
+ efap_crossp_fx( tmp1, tmp2, tmpCross ); // tmpCross Q29
FOR( i = 0; i < 3; i++ )
{
tmp = L_add( tmp, Mpy_32_32( tmpCross[i], tmpCross[i] ) ); // tmp Q27
@@ -659,8 +659,8 @@ static void initial_polyeder_fx(
move32();
WHILE( LT_16( tetrahedron[3], numVtx ) )
{
- v_sub_fixed( vtxData->vertexArray[tetrahedron[3]].pos, vtxData->vertexArray[tetrahedron[0]].pos, tmp3, 3, 1 ); // tmp3 Q30
- tmp = dotp_fixed( tmp3, tmpCross, 3 ); // tmp Q28
+ v_sub_fx( vtxData->vertexArray[tetrahedron[3]].pos, vtxData->vertexArray[tetrahedron[0]].pos, tmp3, 3, 1 ); // tmp3 Q30
+ tmp = dotp_fx32( tmp3, tmpCross, 3 ); // tmp Q28
IF( GT_32( L_abs( tmp ), POLY_THRESH_Q28 /*1e-4f Q28*/ ) )
{
BREAK;
@@ -867,7 +867,7 @@ static void add_ghost_speakers_fx(
{
tmpAngleDiff[i] = L_sub( tmpAzi[i + 1], tmpAzi[i] ); // q22
move32();
- sectors[i] = ceil_fixed( Mpy_32_32( tmpAngleDiff[i], maxAngle ), Q22 ); // q22
+ sectors[i] = ceil_fx( Mpy_32_32( tmpAngleDiff[i], maxAngle ), Q22 ); // q22
move32();
if ( GT_32( sectors[i], Q22_1 /*1 q22*/ ) )
@@ -877,7 +877,7 @@ static void add_ghost_speakers_fx(
}
tmpAngleDiff[k - 1] = L_sub( L_add( tmpAzi[0], Q22_360_DEG /*360 q22*/ ), tmpAzi[k - 1] ); // q22
- sectors[k - 1] = ceil_fixed( Mpy_32_32( tmpAngleDiff[k - 1], maxAngle ), Q22 ); // q22
+ sectors[k - 1] = ceil_fx( Mpy_32_32( tmpAngleDiff[k - 1], maxAngle ), Q22 ); // q22
if ( GT_32( sectors[k - 1], Q22_1 /*1 q22*/ ) )
{
@@ -1551,7 +1551,7 @@ static void get_poly_gains_fx(
A[1] = elePoly[i - 1]; // q22
move32();
- v_sub_fixed_no_hdrm( P, A, P_minus_A, 2 ); /* Precalculate value of (P-A) q22*/
+ v_sub_fx_no_hdrm( P, A, P_minus_A, 2 ); /* Precalculate value of (P-A) q22*/
FOR( j = i; j < numChan - 2 + i; ++j )
{
@@ -1604,18 +1604,18 @@ static Word32 get_tri_gain_fx(
tmpN[1] = L_sub( C[0], B[0] ); // q22
move32();
- v_sub_fixed_no_hdrm( B, A, tmpSub1, 2 ); // tmpSub1 q22
+ v_sub_fx_no_hdrm( B, A, tmpSub1, 2 ); // tmpSub1 q22
- tmpDot1 = dotp_fixed( tmpN, tmpSub1, 2 ); // Q13
+ tmpDot1 = dotp_fx32( tmpN, tmpSub1, 2 ); // Q13
Word16 exp = Q18;
move16();
Word32 inv_tmpDot2 = L_shl( tmpDot1, norm_l( tmpDot1 ) );
exp = sub( exp, norm_l( tmpDot1 ) );
- Word16 inv_tmpDot1 = Inv16( extract_h( inv_tmpDot2 ), &exp ); // 15-exp
- v_multc_fixed( tmpN, L_shl( inv_tmpDot1, add( Q16, exp ) ), N, 2 ); // 22+31-31->22
+ Word16 inv_tmpDot1 = Inv16( extract_h( inv_tmpDot2 ), &exp ); // 15-exp
+ v_multc_fx( tmpN, L_shl( inv_tmpDot1, add( Q16, exp ) ), N, 2 ); // 22+31-31->22
- tmpDot2 = dotp_fixed( P_minus_A, N, 2 ); // 22+22-31->13
+ tmpDot2 = dotp_fx32( P_minus_A, N, 2 ); // 22+22-31->13
if ( EQ_32( tmpDot2, 8191 ) )
{
@@ -1660,15 +1660,23 @@ static void add_vertex_fx(
move32();
IF( LT_32( Q22_180_DEG /*180 q22*/, ele ) )
- tmp = Q22_180_DEG /*180 q22*/;
+ {
+ tmp = Q22_180_DEG /*180 q22*/;
+ }
ELSE
+ {
tmp = ele; // Q22
+ }
move32();
+
IF( GT_32( -Q22_180_DEG /*180 q22*/, tmp ) )
- vtxArray[pos].ele = -Q22_180_DEG /*180 q22*/;
+ {
+ vtxArray[pos].ele = -Q22_180_DEG /*180 q22*/;
+ }
ELSE
- vtxArray[pos]
- .ele = tmp; // q22
+ {
+ vtxArray[pos].ele = tmp; // q22
+ }
move32();
/* Converting spherical coordinates to cartesians, assuming radius = 1 */
@@ -1678,7 +1686,7 @@ static void add_vertex_fx(
/* IdxAziTmp */
tmp = L_abs( L_sub( Q22_90_DEG /*90 q22*/, L_abs( vtxArray[pos].azi ) ) ); // Q22
- idxAziTmp = L_shr( anint_fixed( tmp, Q22 ), Q22 ); // q22-q22->q0
+ idxAziTmp = L_shr( anint_fx( tmp, Q22 ), Q22 ); // q22-q22->q0
/* IdxEleTmp */
tmp = L_abs( vtxArray[pos].ele ); // q22
@@ -1837,20 +1845,21 @@ static Word32 point_plane_distance_fx( // returns output in Q28
}
/* Cross Product */
- v_sub_fixed( P1, P2, tmpCross1, 3, 1 ); // tmpCross1 q30
- v_sub_fixed( P1, P3, tmpCross2, 3, 1 ); // tmpCross2 q30
+ v_sub_fx( P1, P2, tmpCross1, 3, 1 ); // tmpCross1 q30
+ v_sub_fx( P1, P3, tmpCross2, 3, 1 ); // tmpCross2 q30
/* resultCross = cross(P1-P2,P1-P3) */
efap_crossp_fx( tmpCross1, tmpCross2, resultCross ); // Q29
/* Dot Product */
- tmpNorm = dotp_fixed( resultCross, resultCross, 3 ); // Q27
+ tmpNorm = dotp_fx32( resultCross, resultCross, 3 ); // Q27
Word16 exp = 4;
move16();
- tmpNorm = ISqrt32( tmpNorm, &exp ); // Q29
- v_sub_fixed( X, P1, tmpDot1, 3, 1 ); // Q30
- v_multc_fixed( resultCross, tmpNorm, tmpDot2, 3 ); // Q29 - exp
- dist = L_shl( dotp_fixed( tmpDot1, tmpDot2, 3 ), exp ); // Q28
+ tmpNorm = ISqrt32( tmpNorm, &exp ); // Q29
+ v_sub_fx( X, P1, tmpDot1, 3, 1 ); // Q30
+ v_multc_fx( resultCross, tmpNorm, tmpDot2, 3 ); // Q29 - exp
+ dist = L_shl( dotp_fx32( tmpDot1, tmpDot2, 3 ), exp ); // Q28
+
return dist;
}
@@ -2246,16 +2255,16 @@ static void sort_channels_vertex_fx(
}
/* First Base Vector */
- v_sub_fixed( P2, P1, tmpU, 3, 1 ); // tmpU Q30
+ v_sub_fx( P2, P1, tmpU, 3, 1 ); // tmpU Q30
Word16 exp1 = 2;
move16();
- normU = ISqrt32( dotp_fixed( tmpU, tmpU, 3 ) /*q29*/, &exp1 ); /*q=31-exp1*/
+ normU = ISqrt32( dotp_fx32( tmpU, tmpU, 3 ) /*q29*/, &exp1 ); /*q=31-exp1*/
// normU = L_shl_sat( normU, exp ); //normU Q31
- v_multc_fixed( tmpU, normU, U, 3 ); // U Q30 - exp1
+ v_multc_fx( tmpU, normU, U, 3 ); // U Q30 - exp1
/* Second Base Vector */
- v_sub_fixed( P3, P2, tmpV1, 3, 1 ); // tmpV1 Q30
- v_multc_fixed( U, dotp_fixed( U, tmpV1, 3 ), tmpV2, 3 ); // tmpV2 Q28 - 2*exp1
+ v_sub_fx( P3, P2, tmpV1, 3, 1 ); // tmpV1 Q30
+ v_multc_fx( U, dotp_fx32( U, tmpV1, 3 ), tmpV2, 3 ); // tmpV2 Q28 - 2*exp1
FOR( i = 0; i < 3; i++ )
{
@@ -2263,12 +2272,12 @@ static void sort_channels_vertex_fx(
move32();
}
- v_sub_fixed_no_hdrm( tmpV1, tmpV2, tmpV3, 3 ); // tmpV3 Q30
+ v_sub_fx_no_hdrm( tmpV1, tmpV2, tmpV3, 3 ); // tmpV3 Q30
Word16 exp2 = 2;
move16();
- normV = ISqrt32( dotp_fixed( tmpV3, tmpV3, 3 ) /*q29*/, &exp2 ); // q=31-exp2
+ normV = ISqrt32( dotp_fx32( tmpV3, tmpV3, 3 ) /*q29*/, &exp2 ); // q=31-exp2
- v_multc_fixed( tmpV3, normV, V, 3 ); // V Q30 - exp2
+ v_multc_fx( tmpV3, normV, V, 3 ); // V Q30 - exp2
/* Center of the first Triangle */
FOR( i = 0; i < 3; ++i )
@@ -2286,10 +2295,10 @@ static void sort_channels_vertex_fx(
move32();
}
- v_sub_fixed( tmpP, MC, P, 3, 1 ); // P Q30
+ v_sub_fx( tmpP, MC, P, 3, 1 ); // P Q30
- x = dotp_fixed( P, U, 3 ); // x Q29 - exp1
- y = dotp_fixed( P, V, 3 ); // y Q29 - exp2
+ x = dotp_fx32( P, U, 3 ); // x Q29 - exp1
+ y = dotp_fx32( P, V, 3 ); // y Q29 - exp2
// Executing azi[i] = atan2f( y, x );
azi[i] = L_shl( BASOP_util_atan2( y, x, sub( exp2, exp1 ) ), Q16 ); // azi 2Q29
@@ -2297,7 +2306,7 @@ static void sort_channels_vertex_fx(
}
/* Sorting the azi vec */
- v_sort_ind_fixed( azi, order, lengthChannels );
+ v_sort_ind_fx( azi, order, lengthChannels );
/* Updating the channel array */
FOR( i = 0; i < lengthChannels; ++i )
@@ -2445,7 +2454,7 @@ static Word16 in_poly_fx( /* Angles are in Q22 */
A[1] = poly.polyEle[0]; // q22
move32();
- v_sub_fixed_no_hdrm( P, A, P_minus_A, 2 ); /* Precalculate value of (P-A) q22*/
+ v_sub_fx_no_hdrm( P, A, P_minus_A, 2 ); /* Precalculate value of (P-A) q22*/
FOR( n = 1; n < sub( numVertices, 1 ); ++n )
{
@@ -2514,8 +2523,8 @@ static Word16 in_tri_fx(
I'll just compute the determinant and if it's equal to 0, that means the two vectors are colinear
*/
- v_sub_fixed_no_hdrm( B, A, tmpDot1, 2 ); // tmpDot1 q22
- v_sub_fixed_no_hdrm( C, A, tmpDot2, 2 ); // tmpDot2 q22
+ v_sub_fx_no_hdrm( B, A, tmpDot1, 2 ); // tmpDot1 q22
+ v_sub_fx_no_hdrm( C, A, tmpDot2, 2 ); // tmpDot2 q22
/* Verification of the non-colinearity : Q22 * Q22 = Q13 */
invFactor = Msub_32_32( Mpy_32_32( tmpDot1[0], tmpDot2[1] ), tmpDot1[1], tmpDot2[0] ); /*q22+q22-q31->q13*/
diff --git a/lib_rend/ivas_hrtf_fx.c b/lib_rend/ivas_hrtf_fx.c
index 958f38dc440db2e01d23d6aa8ff2f12d2b62b0f5..8bc3c037980dc68ea0f0efb65cd69a47a63d27bc 100644
--- a/lib_rend/ivas_hrtf_fx.c
+++ b/lib_rend/ivas_hrtf_fx.c
@@ -83,8 +83,6 @@ void ivas_HRTF_binary_close_fx(
}
-#ifdef FIX_CREND_SIMPLIFY_CODE
-
/*-----------------------------------------------------------------------*
* ivas_HRTF_CRend_binary_open()
*
@@ -131,35 +129,6 @@ ivas_error ivas_HRTF_CRend_binary_open_buffers_int16(
return IVAS_ERR_OK;
}
-#else
-/*-----------------------------------------------------------------------*
- * ivas_HRTF_CRend_binary_open()
- *
- * Allocate HRTF binary handle
- *-----------------------------------------------------------------------*/
-
-ivas_error ivas_HRTF_CRend_binary_open_fx(
- HRTFS_CREND **hSetOfHRTF )
-{
- /* Allocate HR filter set for headphones configuration */
- *hSetOfHRTF = (HRTFS_CREND *) malloc( sizeof( HRTFS_CREND ) );
- IF( *hSetOfHRTF == NULL )
- {
- return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for set of HRTF binary!" );
- }
-
- ( *hSetOfHRTF )->hHRTF_hrir_combined = NULL;
- ( *hSetOfHRTF )->hHRTF_hrir_hoa3 = NULL;
- ( *hSetOfHRTF )->hHRTF_hrir_hoa2 = NULL;
- ( *hSetOfHRTF )->hHRTF_hrir_foa = NULL;
- ( *hSetOfHRTF )->hHRTF_brir_combined = NULL;
-
- return IVAS_ERR_OK;
-}
-
-#endif
-
-#ifdef FIX_CREND_SIMPLIFY_CODE
/*-------------------------------------------------------------------*
* ivas_HRTF_CRend_binary_close()
@@ -217,28 +186,6 @@ void ivas_HRTF_CRend_binary_close_fx(
return;
}
-#else
-/*-------------------------------------------------------------------*
- * ivas_HRTF_CRend_binary_close()
- *
- * Close HRTF CRend binary handle
- *-------------------------------------------------------------------*/
-
-void ivas_HRTF_CRend_binary_close_fx(
- HRTFS_CREND **hSetOfHRTF )
-{
- test();
- IF( hSetOfHRTF == NULL || *hSetOfHRTF == NULL )
- {
- return;
- }
-
- free( *hSetOfHRTF );
- *hSetOfHRTF = NULL;
-
- return;
-}
-#endif
/*-----------------------------------------------------------------------*
@@ -375,12 +322,7 @@ void ivas_HRTF_statistics_close_fx(
ivas_error ivas_HRTF_statistics_init_fx(
HRTFS_STATISTICS_HANDLE *hHrtfStatistics,
-#ifdef FIX_CREND_SIMPLIFY_CODE
- const Word32 sampleRate
-#else
- Word32 sampleRate
-#endif
-)
+ const Word32 sampleRate )
{
HRTFS_STATISTICS *HrtfStatistics;
@@ -419,15 +361,9 @@ ivas_error ivas_HRTF_statistics_init_fx(
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
}
-#ifdef USE_REVERB_16BIT_ROM
Copy_Scale_sig_16_32_r( defaultHRIR_left_avg_power_48kHz_fx, HrtfStatistics->average_energy_l_dyn, LR_IAC_LENGTH_NR_FC, Q28 - defaultHRIR_Q_48kHz_fx ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
Copy_Scale_sig_16_32_r( defaultHRIR_right_avg_power_48kHz_fx, HrtfStatistics->average_energy_r_dyn, LR_IAC_LENGTH_NR_FC, Q28 - defaultHRIR_Q_48kHz_fx ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
Copy_Scale_sig_16_32_r( defaultHRIR_coherence_48kHz_fx, HrtfStatistics->inter_aural_coherence_dyn, LR_IAC_LENGTH_NR_FC, Q26 - defaultHRIR_Q_48kHz_fx ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
-#else
- floatToFixed_arr32( defaultHRIR_left_avg_power_48kHz_fx, HrtfStatistics->average_energy_l_dyn, Q28, LR_IAC_LENGTH_NR_FC ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
- floatToFixed_arr32( defaultHRIR_right_avg_power_48kHz_fx, HrtfStatistics->average_energy_r_dyn, Q28, LR_IAC_LENGTH_NR_FC ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
- floatToFixed_arr32( defaultHRIR_coherence_48kHz_fx, HrtfStatistics->inter_aural_coherence_dyn, Q26, LR_IAC_LENGTH_NR_FC ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
-#endif
HrtfStatistics->average_energy_l = (const Word32 *) HrtfStatistics->average_energy_l_dyn;
HrtfStatistics->average_energy_r = (const Word32 *) HrtfStatistics->average_energy_r_dyn;
HrtfStatistics->inter_aural_coherence = (const Word32 *) HrtfStatistics->inter_aural_coherence_dyn;
@@ -448,15 +384,9 @@ ivas_error ivas_HRTF_statistics_init_fx(
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
}
-#ifdef USE_REVERB_16BIT_ROM
Copy_Scale_sig_16_32_r( defaultHRIR_left_avg_power_32kHz_fx, HrtfStatistics->average_energy_l_dyn, LR_IAC_LENGTH_NR_FC, Q28 - defaultHRIR_Q_32kHz_fx ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
Copy_Scale_sig_16_32_r( defaultHRIR_right_avg_power_32kHz_fx, HrtfStatistics->average_energy_r_dyn, LR_IAC_LENGTH_NR_FC, Q28 - defaultHRIR_Q_32kHz_fx ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
Copy_Scale_sig_16_32_r( defaultHRIR_coherence_32kHz_fx, HrtfStatistics->inter_aural_coherence_dyn, LR_IAC_LENGTH_NR_FC, Q26 - defaultHRIR_Q_32kHz_fx ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
-#else
- floatToFixed_arr32( defaultHRIR_left_avg_power_32kHz_fx, HrtfStatistics->average_energy_l_dyn, Q28, LR_IAC_LENGTH_NR_FC ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
- floatToFixed_arr32( defaultHRIR_right_avg_power_32kHz_fx, HrtfStatistics->average_energy_r_dyn, Q28, LR_IAC_LENGTH_NR_FC ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
- floatToFixed_arr32( defaultHRIR_coherence_32kHz_fx, HrtfStatistics->inter_aural_coherence_dyn, Q26, LR_IAC_LENGTH_NR_FC ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
-#endif
HrtfStatistics->average_energy_l = (const Word32 *) HrtfStatistics->average_energy_l_dyn;
HrtfStatistics->average_energy_r = (const Word32 *) HrtfStatistics->average_energy_r_dyn;
HrtfStatistics->inter_aural_coherence = (const Word32 *) HrtfStatistics->inter_aural_coherence_dyn;
@@ -477,15 +407,9 @@ ivas_error ivas_HRTF_statistics_init_fx(
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
}
-#ifdef USE_REVERB_16BIT_ROM
Copy_Scale_sig_16_32_r( defaultHRIR_left_avg_power_16kHz_fx, HrtfStatistics->average_energy_l_dyn, LR_IAC_LENGTH_NR_FC_16KHZ, Q28 - defaultHRIR_Q_16kHz_fx ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
Copy_Scale_sig_16_32_r( defaultHRIR_right_avg_power_16kHz_fx, HrtfStatistics->average_energy_r_dyn, LR_IAC_LENGTH_NR_FC_16KHZ, Q28 - defaultHRIR_Q_16kHz_fx ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
Copy_Scale_sig_16_32_r( defaultHRIR_coherence_16kHz_fx, HrtfStatistics->inter_aural_coherence_dyn, LR_IAC_LENGTH_NR_FC_16KHZ, Q26 - defaultHRIR_Q_16kHz_fx ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
-#else
- floatToFixed_arr32( defaultHRIR_left_avg_power_16kHz_fx, HrtfStatistics->average_energy_l_dyn, Q28, LR_IAC_LENGTH_NR_FC_16KHZ ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
- floatToFixed_arr32( defaultHRIR_right_avg_power_16kHz_fx, HrtfStatistics->average_energy_r_dyn, Q28, LR_IAC_LENGTH_NR_FC_16KHZ ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
- floatToFixed_arr32( defaultHRIR_coherence_16kHz_fx, HrtfStatistics->inter_aural_coherence_dyn, Q26, LR_IAC_LENGTH_NR_FC_16KHZ ); /* tables from which lr_energy_and_iac is updated has Q27 for i=2 */
-#endif
HrtfStatistics->average_energy_l = (const Word32 *) HrtfStatistics->average_energy_l_dyn;
HrtfStatistics->average_energy_r = (const Word32 *) HrtfStatistics->average_energy_r_dyn;
HrtfStatistics->inter_aural_coherence = (const Word32 *) HrtfStatistics->inter_aural_coherence_dyn;
diff --git a/lib_rend/ivas_mcmasa_ana_fx.c b/lib_rend/ivas_mcmasa_ana_fx.c
index 0236b080b5da2c5179acc2aac1bc8e06b3dd945a..dbaf5b7d90079e783bb42ca5e2f5c9d995630a96 100644
--- a/lib_rend/ivas_mcmasa_ana_fx.c
+++ b/lib_rend/ivas_mcmasa_ana_fx.c
@@ -715,8 +715,8 @@ void ivas_mcmasa_param_est_ana_fx(
}
/* Y */
- v_multc_fixed( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[1][0], Foa_RealBuffer_fx[1], num_freq_bins ); /*inp_q*/
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[1][0], Foa_ImagBuffer_fx[1], num_freq_bins ); /*inp_q*/
+ v_multc_fx( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[1][0], Foa_RealBuffer_fx[1], num_freq_bins ); /*inp_q*/
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[1][0], Foa_ImagBuffer_fx[1], num_freq_bins ); /*inp_q*/
FOR( i = 1; i < numAnalysisChannels; i++ )
{
v_multc_acc_32_32( Chnl_RealBuffer_fx[i], hMcMasa->chnlToFoaMtx_fx[1][i], Foa_RealBuffer_fx[1], num_freq_bins ); /*inp_q*/
@@ -731,8 +731,8 @@ void ivas_mcmasa_param_est_ana_fx(
}
ELSE
{
- v_multc_fixed( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[2][0], Foa_RealBuffer_fx[2], num_freq_bins ); /*inp_q*/
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[2][0], Foa_ImagBuffer_fx[2], num_freq_bins ); /*inp_q*/
+ v_multc_fx( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[2][0], Foa_RealBuffer_fx[2], num_freq_bins ); /*inp_q*/
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[2][0], Foa_ImagBuffer_fx[2], num_freq_bins ); /*inp_q*/
FOR( i = 1; i < numAnalysisChannels; i++ )
{
v_multc_acc_32_32( Chnl_RealBuffer_fx[i], hMcMasa->chnlToFoaMtx_fx[2][i], Foa_RealBuffer_fx[2], num_freq_bins ); /*inp_q*/
@@ -740,8 +740,8 @@ void ivas_mcmasa_param_est_ana_fx(
}
}
/* X */
- v_multc_fixed( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[3][0], Foa_RealBuffer_fx[3], num_freq_bins ); /*inp_q*/
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[3][0], Foa_ImagBuffer_fx[3], num_freq_bins ); /*inp_q*/
+ v_multc_fx( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[3][0], Foa_RealBuffer_fx[3], num_freq_bins ); /*inp_q*/
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaMtx_fx[3][0], Foa_ImagBuffer_fx[3], num_freq_bins ); /*inp_q*/
FOR( i = 1; i < numAnalysisChannels; i++ )
{
v_multc_acc_32_32( Chnl_RealBuffer_fx[i], hMcMasa->chnlToFoaMtx_fx[3][i], Foa_RealBuffer_fx[3], num_freq_bins ); /*inp_q*/
@@ -754,8 +754,8 @@ void ivas_mcmasa_param_est_ana_fx(
Copy32( Foa_ImagBuffer_fx[0], FoaEven_ImagBuffer_fx[0], num_freq_bins ); /*inp_q*/
/* Y */
- v_multc_fixed( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[1][0], FoaEven_RealBuffer_fx[1], num_freq_bins ); /*inp_q*/
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[1][0], FoaEven_ImagBuffer_fx[1], num_freq_bins ); /*inp_q*/
+ v_multc_fx( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[1][0], FoaEven_RealBuffer_fx[1], num_freq_bins ); /*inp_q*/
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[1][0], FoaEven_ImagBuffer_fx[1], num_freq_bins ); /*inp_q*/
FOR( i = 1; i < numAnalysisChannels; i++ )
{
v_multc_acc_32_32( Chnl_RealBuffer_fx[i], hMcMasa->chnlToFoaEvenMtx_fx[1][i], FoaEven_RealBuffer_fx[1], num_freq_bins ); /*inp_q*/
@@ -767,8 +767,8 @@ void ivas_mcmasa_param_est_ana_fx(
set_zero_fx( FoaEven_ImagBuffer_fx[2], num_freq_bins );
/* X */
- v_multc_fixed( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[3][0], FoaEven_RealBuffer_fx[3], num_freq_bins ); /*inp_q*/
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[3][0], FoaEven_ImagBuffer_fx[3], num_freq_bins ); /*inp_q*/
+ v_multc_fx( Chnl_RealBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[3][0], FoaEven_RealBuffer_fx[3], num_freq_bins ); /*inp_q*/
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hMcMasa->chnlToFoaEvenMtx_fx[3][0], FoaEven_ImagBuffer_fx[3], num_freq_bins ); /*inp_q*/
FOR( i = 1; i < numAnalysisChannels; i++ )
{
v_multc_acc_32_32( Chnl_RealBuffer_fx[i], hMcMasa->chnlToFoaEvenMtx_fx[3][i], FoaEven_RealBuffer_fx[3], num_freq_bins ); /*inp_q*/
@@ -778,8 +778,7 @@ void ivas_mcmasa_param_est_ana_fx(
/* Direction estimation */
computeIntensityVector_ana_fx( hMcMasa->band_grouping, Foa_RealBuffer_fx, Foa_ImagBuffer_fx, num_freq_bands, intensity_real_fx, intensity_real_q, inp_q );
- computeDirectionVectors_fixed( intensity_real_fx[0], intensity_real_fx[1], intensity_real_fx[2], 0, num_freq_bands, direction_vector_fx[0], direction_vector_fx[1], direction_vector_fx[2], 0,
- intensity_real_q ); /* Q direction_vector_fx = Q30*/
+ computeDirectionVectors_fx2( intensity_real_fx[0], intensity_real_fx[1], intensity_real_fx[2], 0, num_freq_bands, direction_vector_fx[0], direction_vector_fx[1], direction_vector_fx[2], 0, intensity_real_q ); /* Q direction_vector_fx = Q30*/
/* Power and intensity estimation for diffuseness */
computeIntensityVector_ana_fx( hMcMasa->band_grouping, FoaEven_RealBuffer_fx, FoaEven_ImagBuffer_fx, num_freq_bands, intensity_even_real_fx, intensity_even_real_q, inp_q );
@@ -824,7 +823,8 @@ void ivas_mcmasa_param_est_ana_fx(
Copy32( reference_power_fx[ts], &( hMcMasa->buffer_energy_fx[i_mult( index - 1, num_freq_bands )] ), num_freq_bands );
hMcMasa->buffer_energy_q[index - 1] = reference_power_q;
move16();
- computeDiffuseness_fixed( hMcMasa->buffer_intensity_real_fx, hMcMasa->buffer_energy_fx, num_freq_bands, diffuseness_vector_fx, hMcMasa->buffer_intensity_real_q, hMcMasa->buffer_energy_q, out_exp ); // out_exp = Q30
+ computeDiffuseness_fx( hMcMasa->buffer_intensity_real_fx, hMcMasa->buffer_energy_fx, num_freq_bands, diffuseness_vector_fx, hMcMasa->buffer_intensity_real_q, hMcMasa->buffer_energy_q, out_exp ); // out_exp = Q30
+
/* Compute vertical diffuseness, and tune original diffuseness if needed */
IF( !hMcMasa->isHorizontalSetup )
{
diff --git a/lib_rend/ivas_objectRenderer_fx.c b/lib_rend/ivas_objectRenderer_fx.c
index 463c0315872826c42cc368498a3b7e080e00be3a..fc1acd28352267ee9c6dbcbd33625f31bceb4874 100644
--- a/lib_rend/ivas_objectRenderer_fx.c
+++ b/lib_rend/ivas_objectRenderer_fx.c
@@ -234,6 +234,7 @@ ivas_error ivas_td_binaural_open_unwrap_fx(
}
}
}
+
test();
test();
IF( EQ_16( ivas_format, ISM_FORMAT ) || EQ_16( ivas_format, MASA_ISM_FORMAT ) || EQ_16( ivas_format, SBA_ISM_FORMAT ) )
@@ -257,7 +258,8 @@ ivas_error ivas_td_binaural_open_unwrap_fx(
move32();
move32();
move32();
- if ( NULL == distAtt )
+
+ IF( NULL == distAtt )
{
DistAtten.DistAttenModel = TDREND_DIST_ATTEN_MODEL_INV_DIST_CLAMPED; // Q0
move16();
@@ -268,13 +270,18 @@ ivas_error ivas_td_binaural_open_unwrap_fx(
DistAtten.RollOffFactor_fx = ONE_IN_Q30; // Q30
move32();
}
- else
+ ELSE
{
DistAtten.DistAttenModel = TDREND_DIST_ATTEN_MODEL_INV_DIST_CLAMPED; // Q0
+ move16();
DistAtten.MaxDist_fx = distAtt[0];
+ move32();
DistAtten.RefDist_fx = distAtt[1];
+ move32();
DistAtten.RollOffFactor_fx = distAtt[2];
+ move32();
}
+
IF( NE_32( ( error = TDREND_MIX_SRC_SetDirAtten_fx( pBinRendTd, nS, DirAtten_p ) ), IVAS_ERR_OK ) )
{
return error;
@@ -290,11 +297,7 @@ ivas_error ivas_td_binaural_open_unwrap_fx(
test();
IF( NE_16( ivas_format, MASA_ISM_FORMAT ) && NE_16( ivas_format, SBA_ISM_FORMAT ) )
{
-#ifdef USE_TDREND_16BIT_ROM
*binaural_latency_ns = L_shr_r( Mpy_32_32_r( ( *hBinRendererTd )->HrFiltSet_p->latency_s_fx, (Word32) 1000000000 ), ( *hBinRendererTd )->HrFiltSet_p->latency_s_Q_fx );
-#else
- *binaural_latency_ns = Mult_32_32( ( *hBinRendererTd )->HrFiltSet_p->latency_s_fx, 1000000000 /* 1000000000.f in Q0 */ );
-#endif
move32();
}
@@ -452,13 +455,11 @@ ivas_error ivas_td_binaural_renderer_unwrap_fx(
}
/* Render subframe */
-
IF( NE_32( ( error = TDREND_GetMix_fx( hBinRendererTd, output_fx, subframe_length, subframe_idx ) ), IVAS_ERR_OK ) )
{
return error;
}
-
/* Advance subframe pointer */
c_indx = 0;
move16();
@@ -508,6 +509,10 @@ ivas_error TDREND_GetMix_fx(
Word32 hrf_left_delta[SFX_SPAT_BIN_MAX_FILTER_LENGTH];
Word32 hrf_right_delta[SFX_SPAT_BIN_MAX_FILTER_LENGTH];
Word16 intp_count;
+#ifdef NONBE_1300_TDREND_LARGE_ITD
+ Word16 currShift, prevShift, transition_len, length_in2;
+ Word16 tmp1, tmp2, tmp_e, tmp3, tmp4, tmp_e2, tlen1, tlen2;
+#endif
Word16 hrf_left_delta_e = 0, hrf_right_delta_e = 0;
move16();
@@ -544,6 +549,29 @@ ivas_error TDREND_GetMix_fx(
&intp_count, &Src_p->filterlength, &Src_p->itd,
&Src_p->Gain_fx,
Src_p );
+#ifdef NONBE_1300_TDREND_LARGE_ITD
+ /* For large ITD values at lower sampling rate, check if the transition can be done */
+ IF( LT_16( i_mult( Src_p->previtd, Src_p->itd ), 0 ) )
+ {
+ currShift = abs_s( Src_p->itd ); // Q0
+ prevShift = abs_s( Src_p->previtd );
+ transition_len = sub( subframe_length, s_max( 0, sub( SFX_SPAT_BIN_SINC_M, currShift ) ) );
+ tmp1 = imult1616( transition_len, prevShift ); // Q0
+ tmp2 = add( prevShift, currShift ); // Q0
+ tmp3 = BASOP_Util_Divide1616_Scale( tmp1, tmp2, &tmp_e ); // exp(tmp_e)
+ tmp_e2 = BASOP_Util_Add_MantExp( tmp3, tmp_e, ONE_IN_Q14, 0, &tmp4 ); // exp(tmp_e2)
+ tlen1 = shr( tmp4, sub( 15, tmp_e2 ) ); // Q0
+ tlen2 = sub( transition_len, tlen1 ); // Q0
+ length_in2 = sub( tlen2, currShift ); // Q0
+
+ IF( LE_16( length_in2, 0 ) )
+ {
+ /* Subframe too short for ITD transition -- change to ITD=0 and push the rest of the transition to next subframe */
+ Src_p->itd = 0;
+ move16();
+ }
+ }
+#endif
}
/* Render source if needed */
@@ -586,10 +614,8 @@ static void TDREND_Clear_Update_flags_fx(
{
hBinRendererTd->Sources[i]->SrcSpatial_p->Updated = FALSE;
move16();
-#ifdef OBJ_EDITING_API
hBinRendererTd->Sources[i]->SrcRend_p->SrcGainUpdated = FALSE;
move16();
-#endif
}
return;
@@ -649,6 +675,10 @@ ivas_error TDREND_Update_object_positions_fx(
return error;
}
#endif
+ if ( ( error = TDREND_MIX_SRC_SetGain( hBinRendererTd, nS, hIsmMetaData[nS]->gain_fx ) ) != IVAS_ERR_OK ) // TODO: Check Gain has correct Q-value
+ {
+ return error;
+ }
IF( hIsmMetaData[nS]->non_diegetic_flag )
{
@@ -955,6 +985,7 @@ ivas_error ivas_td_binaural_renderer_ext_fx(
move32();
hIsmMetaData[0]->radius_fx = currentPos->radius_fx;
move32();
+ hIsmMetaData[0]->gain_fx = ONE_IN_Q29; // TODO: check Q value
hIsmMetaData[0]->non_diegetic_flag = currentPos->non_diegetic_flag;
move16();
}
diff --git a/lib_rend/ivas_objectRenderer_hrFilt_fx.c b/lib_rend/ivas_objectRenderer_hrFilt_fx.c
index f5dbaea7350343b1967a31f3515a61a17a01ecc1..2a67d7a39a5277407bf20b818de4324978ac5b66 100644
--- a/lib_rend/ivas_objectRenderer_hrFilt_fx.c
+++ b/lib_rend/ivas_objectRenderer_hrFilt_fx.c
@@ -44,13 +44,13 @@
* Local function prototypes
*---------------------------------------------------------------------*/
-static Word32 round_fixed( Word32 n, Word16 q );
static void getPeriodicBSplineSampVec_fx( Word32 *BfVec_fx, Word16 *AzIdx, const Word16 NumBFs, const Word32 t_fx, Word16 *num_az_idx, const Word32 knot_interval_fx, const Word32 azimKSeq_0_fx, const Word16 azimSegSamples, const Word32 *azimBsShape_fx, const Word16 subSampFactor );
static void getStandardBSplineSampVec_fx( Word32 *BfVec_fx, Word16 *NzIdx, Word16 *num_idx, const Word16 NumBFs, const Word32 t_fx, const Word32 *KSeq_fx, const Word16 SegSamples, const Word16 *BsLen, const Word16 *BsStart, const Word32 *BsShape_fx );
static void GenerateFilter_fx( const Word32 elev, Word32 azim, ModelParams_t *model, ModelEval_t *modelEval );
static void GenerateITD_fx( const Word32 elev, Word32 azim, ModelParamsITD_t *model, ModelEval_t *modelEval );
static void SkipSmallest_ValueIndex_fx( Word16 *use_inds, const ValueIndex_t *VI, const Word16 N, const Word16 n_smallest );
+
/*-------------------------------------------------------------------*
* TDREND_REND_RenderSourceHRFilt()
*
@@ -151,21 +151,19 @@ void GetFilterFromAngle_fx(
return;
}
-static Word32 round_fixed( /* o : Output value Q0 */
- Word32 num, /* i : Input value */
- Word16 q /* i : Input q-factor */
+
+/* o : Output value Q0 */
+static Word32 round_hrFilt_fx(
+ Word32 num, /* i : Input value */
+ Word16 q /* i : Input q-factor */
)
{
-#ifdef USE_TDREND_16BIT_ROM
Word32 half;
if ( q == 0 )
{
return num;
}
half = L_shl( 1, sub( q, 1 ) );
-#else
- Word32 half = L_shl( 1, sub( q, 1 ) );
-#endif
half = L_shr( half, 1 ); // one guard bit
num = L_shr( num, 1 ); // one guard bit
@@ -330,17 +328,13 @@ static void GenerateFilter_fx(
ESynL_e = sub( ESynL_e, 32 );
ESynL = W_shl_sat_l( temp1, ESynL_e );
ESynL_e = sub( BMEnergiesL_e, ESynL_e );
-#ifdef FIX_1166_TDREND_DIV0
ESynL = BASOP_Util_Add_Mant32Exp( ESynL, ESynL_e, EPSILON_FX_M, EPSILON_FX_E, &ESynL_e );
-#endif
ESynR_e = W_norm( temp2 );
ESynR_e = sub( ESynR_e, 32 );
ESynR = W_shl_sat_l( temp2, ESynR_e );
ESynR_e = sub( BMEnergiesR_e, ESynR_e );
-#ifdef FIX_1166_TDREND_DIV0
ESynR = BASOP_Util_Add_Mant32Exp( ESynR, ESynR_e, EPSILON_FX_M, EPSILON_FX_E, &ESynR_e );
-#endif
tmp32 = L_deposit_h( BASOP_Util_Divide3232_Scale( ETotL, ESynL, &ScaleL_e ) );
@@ -565,6 +559,7 @@ static void GenerateITD_fx(
Word32 tmp32 = Mpy_32_16_1( modelEval->itdMod_fx, model->resamp_factor_fx ); // Q = 31 - ( itdMod_e + 1 )
Word16 tmp_q = sub( 30, itdMod_e );
+
IF( tmp_q < 0 )
{
tmp32 = L_shr( tmp32, tmp_q );
@@ -577,7 +572,7 @@ static void GenerateITD_fx(
tmp_q = 31;
move16();
}
- modelEval->itdMod_fx = L_negate( round_fixed( tmp32, tmp_q ) ); // Q0
+ modelEval->itdMod_fx = L_negate( round_hrFilt_fx( tmp32, tmp_q ) ); // Q0
return;
}
@@ -627,7 +622,7 @@ static void getPeriodicBSplineSampVec_fx(
tmp32 = L_deposit_h( BASOP_Util_Divide3232_Scale( L_sub( t_fx, azimKSeq_0_fx ), tmp32, &tmp_e2 ) );
tmp_e2 = add( tmp_e2, sub( 9, tmp_e1 ) );
tmp32 = L_shr( tmp32, sub( 9, tmp_e2 ) ); // Q22 (assuming tmp32 will be in range of Q22)
- d0 = extract_l( round_fixed( tmp32, Q22 ) );
+ d0 = extract_l( round_hrFilt_fx( tmp32, Q22 ) );
}
/* find segment */
@@ -695,7 +690,7 @@ static void getStandardBSplineSampVec_fx(
tmp32 = L_deposit_h( BASOP_Util_Divide3232_Scale( L_sub( t_fx, KSeq_fx[0] ), tmp32, &tmp_e3 ) );
tmp_e3 = add( tmp_e3, sub( 9, tmp_e2 ) );
tmp32 = L_shr( tmp32, sub( 9, tmp_e3 ) ); // Q22 (assuming tmp32 will be in range of Q22)
- d0 = extract_l( round_fixed( tmp32, 22 ) );
+ d0 = extract_l( round_hrFilt_fx( tmp32, 22 ) );
/* find segment */
nI = 0;
@@ -782,13 +777,11 @@ void BSplineModelEvalDealloc_fx(
IF( model->modelROM )
{
-#ifdef USE_TDREND_16BIT_ROM
- for ( i = 0; i < model->num_unique_azim_splines; i++ )
+ FOR( i = 0; i < model->num_unique_azim_splines; i++ )
{
free( model->azimBsShape_dyn_fx[i] );
}
free( model->azimBsShape_dyn_fx );
-#endif
free( (void *) model->azimBsShape_fx ); /* void* cast needed to please both gcc and Visual studio compilers. Deallocating const float** should be fine and gcc agrees, but Visual studio complains. */
FOR( i = 0; i < model->elevDim3; i++ )
{
diff --git a/lib_rend/ivas_objectRenderer_mix_fx.c b/lib_rend/ivas_objectRenderer_mix_fx.c
index 31e43f9e2e2764e7aadb38e2abc31ae0ee05a0b8..28ee13931346b1418d16bbc945f33fc3765e62a7 100644
--- a/lib_rend/ivas_objectRenderer_mix_fx.c
+++ b/lib_rend/ivas_objectRenderer_mix_fx.c
@@ -38,26 +38,13 @@
#include "ivas_error.h"
#include "wmc_auto.h"
#include "ivas_rom_rend.h"
-#ifndef FIX_989_TD_REND_ROM
-#include "ivas_rom_binaural_crend_head.h"
-#endif
#include "ivas_prot_fx.h"
-/*-------------------------------------------------------------------*
- * Local constants
- *-------------------------------------------------------------------*/
-#ifndef FIX_989_TD_REND_ROM
-#define RESAMPLE_FACTOR_16_48 ( 16.0f / 48.0f )
-#define RESAMPLE_FACTOR_32_48 ( 32.0f / 48.0f )
-#endif
-#ifndef FIX_CREND_SIMPLIFY_CODE
-#define RESAMPLE_FACTOR_16_48_FX ( 5461 ) // Q14
-#define RESAMPLE_FACTOR_32_48_FX ( 10922 ) // Q14
-#endif
/*-------------------------------------------------------------------------
* Local functions declaration
*-------------------------------------------------------------------------*/
+
static ivas_error DefaultBSplineModel_fx( TDREND_HRFILT_FiltSet_t *HrFiltSet_p, const Word32 output_Fs );
/*-------------------------------------------------------------------*
@@ -188,10 +175,9 @@ void TDREND_MIX_Dealloc_fx(
}
}
-#ifdef USE_TDREND_16BIT_ROM
IF( hBinRendererTd->HrFiltSet_p->ModelParams.modelROM )
{
- if ( hBinRendererTd->HrFiltSet_p->ModelParams.UseItdModel )
+ IF( hBinRendererTd->HrFiltSet_p->ModelParams.UseItdModel )
{
free( hBinRendererTd->HrFiltSet_p->ModelParamsITD.elevKSeq_dyn_fx );
free( hBinRendererTd->HrFiltSet_p->ModelParamsITD.azimKSeq_dyn_fx );
@@ -200,15 +186,11 @@ void TDREND_MIX_Dealloc_fx(
free( hBinRendererTd->HrFiltSet_p->ModelParamsITD.elevBsShape_dyn_fx );
}
free( hBinRendererTd->HrFiltSet_p->ModelParams.elevKSeq_dyn_fx );
-#ifndef FIX_989_TD_REND_ROM
- free( hBinRendererTd->HrFiltSet_p->ModelParams.azimDim2_dyn );
-#endif
free( hBinRendererTd->HrFiltSet_p->ModelParams.AlphaL_dyn_fx );
free( hBinRendererTd->HrFiltSet_p->ModelParams.AlphaR_dyn_fx );
free( hBinRendererTd->HrFiltSet_p->ModelParams.elevBsShape_dyn_fx );
}
-#endif
IF( EQ_16( hBinRendererTd->HrFiltSet_p->ModelParams.modelROM, 1 ) )
@@ -341,10 +323,6 @@ ivas_error TDREND_MIX_AddSrc_fx(
TDREND_SRC_t *Src_p;
ivas_error error;
-#ifndef FIX_989_TD_REND_ROM
- error = IVAS_ERR_OK;
-#endif
- move32();
/* Get unique source index */
*SrcInd = add( hBinRendererTd->MaxSrcInd, 1 ); // Q0
move16();
@@ -387,13 +365,10 @@ ivas_error TDREND_MIX_AddSrc_fx(
}
}
-#ifdef FIX_989_TD_REND_ROM
return IVAS_ERR_OK;
-#else
- return error;
-#endif
}
+
/*-------------------------------------------------------------------*
* BSplineModelEvalAlloc()
*
@@ -434,9 +409,7 @@ static ivas_error DefaultBSplineModel_fx(
ModelParamsITD_t *modelITD;
Word16 i, j;
ivas_error error;
-#ifdef FIX_989_TD_REND_ROM
Word16 azimSegSamples;
-#endif
HrFiltSet_p->FilterMethod = TDREND_HRFILT_Method_BSplineModel;
move16();
model = &( HrFiltSet_p->ModelParams );
@@ -447,7 +420,6 @@ static ivas_error DefaultBSplineModel_fx(
model->modelROM = TRUE;
move16();
-#ifdef FIX_989_TD_REND_ROM
model->UseItdModel = defaultHRIR_rom_model_configuration[0]; // Q0
move16();
model->elevDim3 = defaultHRIR_rom_model_configuration[1]; // Q0
@@ -458,102 +430,52 @@ static ivas_error DefaultBSplineModel_fx(
move16();
model->elevSegSamples = defaultHRIR_rom_model_configuration[4]; // Q0
move16();
- model->elevBsLen = defaultHRIR_rom_elevBsLen; // Q0
- model->elevBsStart = defaultHRIR_rom_elevBsStart; // Q0
-#else
- /* int16_t parameters */
- model->UseItdModel = 1; // Q0
- move16();
- model->SplineDegree = 4; // Q0
- move16();
- model->elevDim2 = 17; // Q0
- move16();
- model->elevDim3 = 15; // Q0
- move16();
- model->AlphaN = 470; // Q0
- move16();
- model->num_unique_azim_splines = 1; // Q0
- move16();
- model->elevSegSamples = 4; // Q0
- move16();
- model->elevBsLen[0] = 5; // Q0
- move16();
- model->elevBsLen[1] = 9; // Q0
- move16();
- model->elevBsLen[2] = 13; // Q0
- move16();
- model->elevBsLen[3] = 9; // Q0
- move16();
- model->elevBsStart[0] = 0; // Q0
- move16();
- model->elevBsStart[1] = 5; // Q0
- move16();
- model->elevBsStart[2] = 14; // Q0
- move16();
- model->elevBsStart[3] = 27; // Q0
- move16();
-
- model->azimDim2 = defaultHRIR_rom_azimDim2; // Q0
-#endif
+ model->elevBsLen = defaultHRIR_rom_elevBsLen; // Q0
+ model->elevBsStart = defaultHRIR_rom_elevBsStart; // Q0
model->azimDim3 = defaultHRIR_rom_azimDim3; // Q0
model->azim_start_idx = defaultHRIR_rom_azim_start_idx; // Q0
model->azimSegSamples = defaultHRIR_rom_azimSegSamples; // Q0
model->azimShapeIdx = defaultHRIR_rom_azimShapeIdx; // Q0
model->azimShapeSampFactor = defaultHRIR_rom_azimShapeSampFactor; // Q0
-#ifdef USE_TDREND_16BIT_ROM
model->elevKSeq_dyn_fx = (Word32 *) malloc( ( model->elevDim3 - 2 ) * sizeof( Word32 ) );
- if ( model->elevKSeq_dyn_fx == NULL )
+ IF( model->elevKSeq_dyn_fx == NULL )
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
}
Copy_Scale_sig_16_32_r( defaultHRIR_rom_elevKSeq_fx, model->elevKSeq_dyn_fx, ( model->elevDim3 - 2 ), Q22 - defaultHRIR_rom_elevKSeq_Q_fx ); // Q22
model->elevKSeq_fx = model->elevKSeq_dyn_fx;
-#else
- model->elevKSeq_fx = defaultHRIR_rom_elevKSeq_fx; // Q22
-#endif
-#ifdef USE_TDREND_16BIT_ROM
model->elevBsShape_dyn_fx = (Word32 *) malloc( sizeof( defaultHRIR_rom_elevBsShape_fx ) * sizeof( Word32 ) / sizeof( Word16 ) );
- if ( model->elevBsShape_dyn_fx == NULL )
+ IF( model->elevBsShape_dyn_fx == NULL )
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
}
Copy_Scale_sig_16_32_r( defaultHRIR_rom_elevBsShape_fx, model->elevBsShape_dyn_fx, sizeof( defaultHRIR_rom_elevBsShape_fx ) / sizeof( Word16 ), Q30 - defaultHRIR_rom_elevBsShape_Q_fx ); // Q30
model->elevBsShape_fx = model->elevBsShape_dyn_fx;
-#else
- model->elevBsShape_fx = (const Word32 *) defaultHRIR_rom_elevBsShape_fx; // Q30
-#endif
IF( ( model->azimBsShape_fx = (const Word32 **) malloc( model->num_unique_azim_splines * sizeof( Word32 * ) ) ) == NULL )
{
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for Binaural TD renderer\n" ) );
}
-#ifdef USE_TDREND_16BIT_ROM
model->azimBsShape_dyn_fx = (Word32 **) malloc( sizeof( Word32 * ) );
- if ( model->azimBsShape_dyn_fx == NULL )
+ IF( model->azimBsShape_dyn_fx == NULL )
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
}
model->azimBsShape_dyn_fx[0] = (Word32 *) malloc( sizeof( defaultHRIR_rom_azimBsShape_fx ) * sizeof( Word32 ) / sizeof( Word16 ) );
- if ( model->azimBsShape_dyn_fx[0] == NULL )
+ IF( model->azimBsShape_dyn_fx[0] == NULL )
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
}
Copy_Scale_sig_16_32_r( defaultHRIR_rom_azimBsShape_fx, model->azimBsShape_dyn_fx[0], sizeof( defaultHRIR_rom_azimBsShape_fx ) / sizeof( Word16 ), Q30 - defaultHRIR_rom_azimBsShape_Q_fx ); // Q30
model->azimBsShape_fx[0] = model->azimBsShape_dyn_fx[0];
-#else
- model->azimBsShape_fx[0] = defaultHRIR_rom_azimBsShape_fx; // Q30
-#endif
-#ifdef FIX_989_TD_REND_ROM
- if ( ( model->azimKSeq_fx = (Word32 **) malloc( model->elevDim3 * sizeof( Word32 * ) ) ) == NULL )
-#else
- IF( ( model->azimKSeq_fx = (Word32 **) malloc( 18 * sizeof( Word32 * ) ) ) == NULL )
-#endif
+
+ IF( ( model->azimKSeq_fx = (Word32 **) malloc( model->elevDim3 * sizeof( Word32 * ) ) ) == NULL )
{
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for Binaural TD renderer\n" ) );
}
-#ifdef FIX_989_TD_REND_ROM
+
FOR( i = 0; i < model->elevDim3; i++ )
{
if ( ( model->azimKSeq_fx[i] = (Word32 *) malloc( ( model->azimDim3[i] + 1 ) * sizeof( Word32 * ) ) ) == NULL )
@@ -578,41 +500,10 @@ static ivas_error DefaultBSplineModel_fx(
move32();
}
}
-#else
- IF( ( model->azimKSeq_fx[0] = (Word32 *) malloc( 2 * sizeof( Word32 * ) ) ) == NULL )
- {
- return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for Binaural TD renderer\n" ) );
- }
- IF( ( model->azimKSeq_fx[model->elevDim3 - 1] = (Word32 *) malloc( 2 * sizeof( Word32 * ) ) ) == NULL )
- {
- return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for Binaural TD renderer\n" ) );
- }
- model->azimKSeq_fx[0][0] = 0;
- model->azimKSeq_fx[model->elevDim3 - 1][0] = 0;
- model->azimKSeq_fx[0][1] = 360 << Q22; // Q22
- model->azimKSeq_fx[model->elevDim3 - 1][1] = 360 << Q22; // Q22
- move32();
- move32();
- move32();
- move32();
- FOR( i = 1; i < sub( model->elevDim3, 1 ); i++ )
- {
- IF( ( model->azimKSeq_fx[i] = (Word32 *) malloc( model->azimDim2[i] * sizeof( Word32 * ) ) ) == NULL ) /* azimDim2[i] = 91, i=2..15 */
- {
- return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for Binaural TD renderer\n" ) );
- }
- FOR( j = 0; j < model->azimDim2[i]; j++ )
- {
- model->azimKSeq_fx[i][j] = L_shl_r( L_mult0( defaultHRIR_rom_azimSegSamples[0], j ), Q22 ); // Q22
- move32();
- }
- }
-#endif
SWITCH( output_Fs )
{
case 48000:
-#ifdef USE_TDREND_16BIT_ROM
model->AlphaL_dyn_fx = (Word32 *) malloc( 60160 * sizeof( Word32 ) );
if ( model->AlphaL_dyn_fx == NULL )
{
@@ -622,12 +513,7 @@ static ivas_error DefaultBSplineModel_fx(
Copy_Scale_sig_16_32_r( &defaultHRIR_rom_AlphaL48_fx[30080], &model->AlphaL_dyn_fx[30080], 30080, Q30 - defaultHRIR_rom_Alpha48_Q_fx ); // Q30
model->AlphaL_fx = model->AlphaL_dyn_fx;
model->AlphaL_e = Q15 - defaultHRIR_rom_Alpha48_Q_fx;
-#else
- model->AlphaL_fx = (const Word32 *) defaultHRIR_rom_AlphaL48_fx; // Q30
- model->AlphaL_e = 1;
-#endif
move16();
-#ifdef USE_TDREND_16BIT_ROM
model->AlphaR_dyn_fx = (Word32 *) malloc( 60160 * sizeof( Word32 ) );
if ( model->AlphaR_dyn_fx == NULL )
{
@@ -637,30 +523,14 @@ static ivas_error DefaultBSplineModel_fx(
Copy_Scale_sig_16_32_r( &defaultHRIR_rom_AlphaR48_fx[30080], &model->AlphaR_dyn_fx[30080], 30080, Q30 - defaultHRIR_rom_Alpha48_Q_fx ); // Q22
model->AlphaR_fx = model->AlphaR_dyn_fx;
model->AlphaR_e = Q15 - defaultHRIR_rom_Alpha48_Q_fx;
-#else
- model->AlphaR_fx = (const Word32 *) defaultHRIR_rom_AlphaR48_fx; // Q30
- model->AlphaR_e = 1;
-#endif
move16();
model->EL_fx = (const Word32 *) defaultHRIR_rom_EL48_fx; // Q28
-#ifdef USE_TDREND_16BIT_ROM
model->EL_e = Q31 - defaultHRIR_rom_E48_Q_fx;
-#else
- model->EL_e = 3;
-#endif
move16();
model->ER_fx = (const Word32 *) defaultHRIR_rom_ER48_fx; // Q28
-#ifdef USE_TDREND_16BIT_ROM
model->ER_e = Q31 - defaultHRIR_rom_E48_Q_fx;
-#else
- model->ER_e = 3;
-#endif
move16();
-#ifdef FIX_989_TD_REND_ROM
model->K = defaultHRIR_rom_model_configuration[5]; // Q0
-#else
- model->K = 128; // Q0
-#endif
move16();
IF( HrFiltSet_p->ModelParams.UseItdModel )
{
@@ -669,7 +539,6 @@ static ivas_error DefaultBSplineModel_fx(
}
BREAK;
case 32000:
-#ifdef USE_TDREND_16BIT_ROM
model->AlphaL_dyn_fx = (Word32 *) malloc( 40420 * sizeof( Word32 ) );
if ( model->AlphaL_dyn_fx == NULL )
{
@@ -679,12 +548,7 @@ static ivas_error DefaultBSplineModel_fx(
Copy_Scale_sig_16_32_r( &defaultHRIR_rom_AlphaL32_fx[20210], &model->AlphaL_dyn_fx[20210], 20210, Q30 - defaultHRIR_rom_Alpha32_Q_fx ); // Q22
model->AlphaL_fx = model->AlphaL_dyn_fx;
model->AlphaL_e = Q15 - defaultHRIR_rom_Alpha32_Q_fx;
-#else
- model->AlphaL_fx = (const Word32 *) defaultHRIR_rom_AlphaL32_fx; // Q30
- model->AlphaL_e = 1;
-#endif
move16();
-#ifdef USE_TDREND_16BIT_ROM
model->AlphaR_dyn_fx = (Word32 *) malloc( 40420 * sizeof( Word32 ) );
if ( model->AlphaR_dyn_fx == NULL )
{
@@ -694,30 +558,14 @@ static ivas_error DefaultBSplineModel_fx(
Copy_Scale_sig_16_32_r( &defaultHRIR_rom_AlphaR32_fx[20210], &model->AlphaR_dyn_fx[20210], 20210, Q30 - defaultHRIR_rom_Alpha32_Q_fx ); // Q22
model->AlphaR_fx = model->AlphaR_dyn_fx;
model->AlphaR_e = Q15 - defaultHRIR_rom_Alpha32_Q_fx;
-#else
- model->AlphaR_fx = (const Word32 *) defaultHRIR_rom_AlphaR32_fx; // Q30
- model->AlphaR_e = 1;
-#endif
move16();
model->EL_fx = (const Word32 *) defaultHRIR_rom_EL32_fx; // Q28
-#ifdef USE_TDREND_16BIT_ROM
model->EL_e = Q31 - defaultHRIR_rom_E32_Q_fx;
-#else
- model->EL_e = 3;
-#endif
move16();
model->ER_fx = (const Word32 *) defaultHRIR_rom_ER32_fx; // Q28
-#ifdef USE_TDREND_16BIT_ROM
model->ER_e = Q31 - defaultHRIR_rom_E32_Q_fx;
-#else
- model->ER_e = 3;
-#endif
move16();
-#ifdef FIX_989_TD_REND_ROM
model->K = ( RESAMPLE_FACTOR_32_48_FX * defaultHRIR_rom_model_configuration[5] + ( 1 << 14 ) - 1 ) >> 14; // Q0
-#else
- model->K = 86; // Q0
-#endif
move16();
IF( HrFiltSet_p->ModelParams.UseItdModel )
{
@@ -726,7 +574,6 @@ static ivas_error DefaultBSplineModel_fx(
}
BREAK;
case 16000:
-#ifdef USE_TDREND_16BIT_ROM
model->AlphaL_dyn_fx = (Word32 *) malloc( 20210 * sizeof( Word32 ) );
if ( model->AlphaL_dyn_fx == NULL )
{
@@ -735,12 +582,7 @@ static ivas_error DefaultBSplineModel_fx(
Copy_Scale_sig_16_32_r( defaultHRIR_rom_AlphaL16_fx, model->AlphaL_dyn_fx, 20210, Q30 - defaultHRIR_rom_Alpha16_Q_fx ); // Q22
model->AlphaL_fx = model->AlphaL_dyn_fx;
model->AlphaL_e = Q15 - defaultHRIR_rom_Alpha16_Q_fx;
-#else
- model->AlphaL_fx = (const Word32 *) defaultHRIR_rom_AlphaL16_fx; // Q30
- model->AlphaL_e = 1;
-#endif
move16();
-#ifdef USE_TDREND_16BIT_ROM
model->AlphaR_dyn_fx = (Word32 *) malloc( 20210 * sizeof( Word32 ) );
if ( model->AlphaR_dyn_fx == NULL )
{
@@ -749,32 +591,14 @@ static ivas_error DefaultBSplineModel_fx(
Copy_Scale_sig_16_32_r( defaultHRIR_rom_AlphaR16_fx, model->AlphaR_dyn_fx, 20210, Q30 - defaultHRIR_rom_Alpha16_Q_fx ); // Q22
model->AlphaR_fx = model->AlphaR_dyn_fx;
model->AlphaR_e = Q15 - defaultHRIR_rom_Alpha16_Q_fx;
-#else
- model->AlphaR_fx = (const Word32 *) defaultHRIR_rom_AlphaR16_fx; // Q30
- model->AlphaR_e = 1;
-#endif
move16();
model->EL_fx = (const Word32 *) defaultHRIR_rom_EL16_fx; // Q28
-#ifdef USE_TDREND_16BIT_ROM
model->EL_e = Q31 - defaultHRIR_rom_E16_Q_fx;
- // model->EL_e = 3;
-#else
- model->EL_e = 3;
-#endif
move16();
model->ER_fx = (const Word32 *) defaultHRIR_rom_ER16_fx; // Q28
-#ifdef USE_TDREND_16BIT_ROM
model->ER_e = Q31 - defaultHRIR_rom_E16_Q_fx;
- // model->ER_e = 3;
-#else
- model->ER_e = 3;
-#endif
move16();
-#ifdef FIX_989_TD_REND_ROM
model->K = ( RESAMPLE_FACTOR_16_48_FX * defaultHRIR_rom_model_configuration[5] + ( 1 << 14 ) - 1 ) >> 14; // Q0
-#else
- model->K = 43; // Q0
-#endif
move16();
IF( HrFiltSet_p->ModelParams.UseItdModel )
{
@@ -786,7 +610,6 @@ static ivas_error DefaultBSplineModel_fx(
BREAK;
}
-#ifdef FIX_989_TD_REND_ROM
modelITD->elevDim3 = defaultHRIR_rom_ITD_model_configuration[0];
move16();
modelITD->azimDim3 = defaultHRIR_rom_ITD_model_configuration[1];
@@ -797,131 +620,56 @@ static ivas_error DefaultBSplineModel_fx(
move16();
modelITD->elevBsLen = defaultHRIR_rom_ITD_elevBsLen;
modelITD->elevBsStart = defaultHRIR_rom_ITD_elevBsStart;
-#else
- modelITD->N = 4; // Q0
- move16();
- modelITD->elevDim2 = 20; // Q0
- move16();
- modelITD->elevDim3 = 18; // Q0
- move16();
- modelITD->azimDim2 = 41; // Q0
- move16();
- modelITD->azimDim3 = 41; // Q0
- move16();
- modelITD->elevSegSamples = 3; // Q0
- move16();
- modelITD->elevBsLen[0] = 4; // Q0
- move16();
- modelITD->elevBsLen[1] = 7; // Q0
- move16();
- modelITD->elevBsLen[2] = 10; // Q0
- move16();
- modelITD->elevBsLen[3] = 7; // Q0
- move16();
- modelITD->elevBsStart[0] = 0; // Q0
- move16();
- modelITD->elevBsStart[1] = 4; // Q0
- move16();
- modelITD->elevBsStart[2] = 11; // Q0
- move16();
- modelITD->elevBsStart[3] = 21; // Q0
- move16();
-#endif
-#ifdef USE_TDREND_16BIT_ROM
modelITD->elevKSeq_dyn_fx = (Word32 *) malloc( sizeof( defaultHRIR_rom_ITD_elevKSeq_fx ) * sizeof( Word32 ) / sizeof( Word16 ) );
- if ( modelITD->elevKSeq_dyn_fx == NULL )
+ IF( modelITD->elevKSeq_dyn_fx == NULL )
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
}
Copy_Scale_sig_16_32_r( defaultHRIR_rom_ITD_elevKSeq_fx, modelITD->elevKSeq_dyn_fx, sizeof( defaultHRIR_rom_ITD_elevKSeq_fx ) / sizeof( Word16 ), Q22 - defaultHRIR_rom_ITD_elevKSeq_Q_fx ); // Q22
modelITD->elevKSeq_fx = modelITD->elevKSeq_dyn_fx;
-#else
- modelITD->elevKSeq_fx = defaultHRIR_rom_ITD_elevKSeq_fx; // Q22
-#endif
-#ifdef FIX_989_TD_REND_ROM
modelITD->azimBsLen = defaultHRIR_rom_ITD_azimBsLen;
modelITD->azimBsStart = defaultHRIR_rom_ITD_azimBsStart;
-#else
- modelITD->azimBsLen[0] = 11; // Q0
- move16();
- modelITD->azimBsLen[1] = 21; // Q0
- move16();
- modelITD->azimBsLen[2] = 31; // Q0
- move16();
- modelITD->azimBsLen[3] = 21; // Q0
- move16();
- modelITD->azimBsStart[0] = 0; // Q0
- move16();
- modelITD->azimBsStart[1] = 11; // Q0
- move16();
- modelITD->azimBsStart[2] = 32; // Q0
- move16();
- modelITD->azimBsStart[3] = 63; // Q0
- move16();
-
- modelITD->azimSegSamples = 10; // Q0
- move16();
-#endif
-#ifdef USE_TDREND_16BIT_ROM
modelITD->azimKSeq_dyn_fx = (Word32 *) malloc( ( ( modelITD->azimDim3 + 1 ) / 2 - 2 ) * sizeof( Word32 ) ); /* basis functions are flipped around 180 deg, number of basis functions above/below is (N+1)/2 */
- if ( modelITD->azimKSeq_dyn_fx == NULL )
+ IF( modelITD->azimKSeq_dyn_fx == NULL )
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
}
Copy_Scale_sig_16_32_r( defaultHRIR_rom_ITD_azimKSeq_fx, modelITD->azimKSeq_dyn_fx, ( ( modelITD->azimDim3 + 1 ) / 2 - 2 ), Q22 - defaultHRIR_rom_ITD_azimKSeq_Q_fx ); // Q22
modelITD->azimKSeq_fx = modelITD->azimKSeq_dyn_fx;
-#else
- modelITD->azimKSeq_fx = defaultHRIR_rom_ITD_azimKSeq_fx; // Q22
-#endif
-#ifdef USE_TDREND_16BIT_ROM
modelITD->W_dyn_fx = (Word32 *) malloc( sizeof( defaultHRIR_rom_ITD_W_fx ) * sizeof( Word32 ) / sizeof( Word16 ) ); /* basis functions are flipped around 180 deg, number of basis functions above/below is (N+1)/2 */
- if ( modelITD->W_dyn_fx == NULL )
+ IF( modelITD->W_dyn_fx == NULL )
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
}
Copy_Scale_sig_16_32_r( defaultHRIR_rom_ITD_W_fx, modelITD->W_dyn_fx, sizeof( defaultHRIR_rom_ITD_W_fx ) / sizeof( Word16 ), Q25 - defaultHRIR_rom_ITD_W_Q_fx ); // Q22
modelITD->W_fx = modelITD->W_dyn_fx;
modelITD->W_e = Q15 - defaultHRIR_rom_ITD_W_Q_fx;
-#else
- modelITD->W_fx = (const Word32 *) defaultHRIR_rom_ITD_W_fx; // Q25
- modelITD->W_e = 6;
-#endif
move16();
-#ifdef USE_TDREND_16BIT_ROM
modelITD->azimBsShape_dyn_fx = (Word32 *) malloc( sizeof( defaultHRIR_rom_ITD_azimBsShape_fx ) * sizeof( Word32 ) / sizeof( Word16 ) ); /* basis functions are flipped around 180 deg, number of basis functions above/below is (N+1)/2 */
- if ( modelITD->azimBsShape_dyn_fx == NULL )
+ IF( modelITD->azimBsShape_dyn_fx == NULL )
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
}
Copy_Scale_sig_16_32_r( defaultHRIR_rom_ITD_azimBsShape_fx, modelITD->azimBsShape_dyn_fx, sizeof( defaultHRIR_rom_ITD_azimBsShape_fx ) / sizeof( Word16 ), Q30 - defaultHRIR_rom_ITD_azimBsShape_Q_fx ); // Q22
modelITD->azimBsShape_fx = modelITD->azimBsShape_dyn_fx;
-#else
- modelITD->azimBsShape_fx = defaultHRIR_rom_ITD_azimBsShape_fx; // Q30
-#endif
-#ifdef USE_TDREND_16BIT_ROM
modelITD->elevBsShape_dyn_fx = (Word32 *) malloc( sizeof( defaultHRIR_rom_ITD_elevBsShape_fx ) * sizeof( Word32 ) / sizeof( Word16 ) );
- if ( modelITD->elevBsShape_dyn_fx == NULL )
+ IF( modelITD->elevBsShape_dyn_fx == NULL )
{
return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
}
Copy_Scale_sig_16_32_r( defaultHRIR_rom_ITD_elevBsShape_fx, modelITD->elevBsShape_dyn_fx, sizeof( defaultHRIR_rom_ITD_elevBsShape_fx ) / sizeof( Word16 ), Q30 - defaultHRIR_rom_ITD_elevBsShape_Q_fx ); // Q22
modelITD->elevBsShape_fx = modelITD->elevBsShape_dyn_fx;
-#else
- modelITD->elevBsShape_fx = defaultHRIR_rom_ITD_elevBsShape_fx; // Q30
-#endif
HRTF_model_precalc( model );
HrFiltSet_p->latency_s_fx = defaultHRIR_rom_latency_s_fx; // Q31
move32();
-#ifdef USE_TDREND_16BIT_ROM
HrFiltSet_p->latency_s_Q_fx = sub( Q31, defaultHRIR_rom_latency_s_Q_fx ); // Q31
-#endif
- HrFiltSet_p->SampleRate = output_Fs; // Q0
+ HrFiltSet_p->SampleRate = output_Fs; // Q0
move32();
HrFiltSet_p->FiltLength = HrFiltSet_p->ModelParams.K; // Q0
move16();
diff --git a/lib_rend/ivas_objectRenderer_sfx_fx.c b/lib_rend/ivas_objectRenderer_sfx_fx.c
index d5abdadba7ddf7b1248f88dac7aa2f7e9a666725..361cc403d19ccad22d98321d5b7c5da190877b9d 100644
--- a/lib_rend/ivas_objectRenderer_sfx_fx.c
+++ b/lib_rend/ivas_objectRenderer_sfx_fx.c
@@ -252,9 +252,6 @@ static void sincResample_fx(
p_backward_fx--; // Qx
}
-#ifndef NONBE_1296_TDREND_ITD_OUT_OF_BOUNDS_ACCESS
- tmp64_fx = W_mac_32_32( tmp64_fx, *p_forward_fx, *p_sinc_forward_fx ); /* Integer index always rounded down --> 4 steps backward, 5 steps forward */ // Qx + 32
-#endif
output_fx[i] = W_extract_h( tmp64_fx ); // Qx
move32();
diff --git a/lib_rend/ivas_objectRenderer_sources_fx.c b/lib_rend/ivas_objectRenderer_sources_fx.c
index 90ac586ee23437e9861127afa0d90b014bedf041..33c519c8eb5f931bcb7f01f69f2e5ff463239ff1 100644
--- a/lib_rend/ivas_objectRenderer_sources_fx.c
+++ b/lib_rend/ivas_objectRenderer_sources_fx.c
@@ -49,6 +49,7 @@ static Word16 TDREND_SRC_SPATIAL_GetDirGain_fx( const TDREND_DirAtten_t *DirAtte
static Word16 TDREND_SRC_SPATIAL_GetDistGain_fx( const TDREND_DistAtten_t *DistAtten_p, const Word32 Dist_fx, const Word16 Dist_e );
static void TDREND_SRC_SPATIAL_SetDirAtten_fx( TDREND_SRC_SPATIAL_t *SrcSpatial_p, const TDREND_DirAtten_t *DirAtten_p );
static void TDREND_SRC_SPATIAL_SetDistAtten( TDREND_SRC_SPATIAL_t *SrcSpatial_p, const TDREND_DistAtten_t *DistAtten_p );
+static void TDREND_SRC_SPATIAL_SetGain( const TDREND_SRC_t *Src_p, const Word32 Gain );
static ivas_error TDREND_SRC_REND_Alloc( TDREND_SRC_REND_t **SrcRend_pp );
static void TDREND_SRC_SPATIAL_Dealloc( TDREND_SRC_SPATIAL_t *SrcSpatial_p );
@@ -130,11 +131,30 @@ ivas_error TDREND_MIX_SRC_SetDir_fx(
}
+/*-------------------------------------------------------------------*
+ * TDREND_MIX_SRC_SetGain()
+ *
+ * Set source gain
+ --------------------------------------------------------------------*/
+
+ivas_error TDREND_MIX_SRC_SetGain(
+ BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
+ const Word16 SrcInd, /* i : Source index */
+ const Word32 Gain /* i : Gain */
+)
+{
+ TDREND_SRC_SPATIAL_SetGain( hBinRendererTd->Sources[SrcInd], Gain );
+
+ return IVAS_ERR_OK;
+}
+
+
/*-------------------------------------------------------------------*
* TDREND_MIX_SRC_SetDirAtten()
*
* Set directional attenuation for the mixer.
--------------------------------------------------------------------*/
+
ivas_error TDREND_MIX_SRC_SetDirAtten_fx(
BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
const Word16 SrcInd, /* i : Source index Q0 */
@@ -168,6 +188,7 @@ ivas_error TDREND_MIX_SRC_SetDistAtten(
)
{
TDREND_SRC_SPATIAL_t *SrcSpatial_p;
+
IF( GT_16( SrcInd, hBinRendererTd->MaxSrcInd ) )
{
return ( IVAS_ERROR( IVAS_ERR_INVALID_INDEX, "Index exceeds max index\n" ) );
@@ -254,11 +275,7 @@ static void TDREND_SRC_REND_Init_fx(
move16();
SrcRend_p->SrcGain_p_fx[nC] = ONE_IN_Q14; // Q14
move16();
-#ifdef OBJ_EDITING_API
SrcRend_p->SrcGainMax_p_fx[nC] = 32767; // TODO: make it 2, this is one in Q15, i thinki, need to change Q for that
-#else
- SrcRend_p->SrcGainMax_p_fx[nC] = 32767; /* Q15 */
-#endif
move16();
}
SrcRend_p->SrcGainUpdated = FALSE;
@@ -274,6 +291,7 @@ static void TDREND_SRC_REND_Init_fx(
return;
}
+
/*-------------------------------------------------------------------*
* TDREND_SRC_REND_UpdateFiltersFromSpatialParams()
*
@@ -284,31 +302,19 @@ void TDREND_SRC_REND_UpdateFiltersFromSpatialParams_fx(
BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
TDREND_SRC_REND_t *SrcRend_p, /* i/o: Source object */
TDREND_SRC_SPATIAL_t *SrcSpatial_p, /* i : Spatial aspects of source */
- Word32 *hrf_left_prev,
- /* i/o: Left filter */ // exp(hrf_left_prev_e)
- Word16 *hrf_left_prev_e,
- /* i/o: Left filter exponent */ // Q0
- Word32 *hrf_right_prev,
- /* i/o: Right filter */ // exp(hrf_right_prev_e)
- Word16 *hrf_right_prev_e,
- /* i/o: Right filter exponent */ // Q0
- Word32 *hrf_left_delta,
- /* o : Left filter interpolation delta */ // exp(hrf_left_delta_e)
- Word16 *hrf_left_delta_e,
- /* o : Left filter interpolation delta exponent */ // Q0
- Word32 *hrf_right_delta,
- /* o : Right filter interpolation delta */ // exp(hrf_right_delta_e)
- Word16 *hrf_right_delta_e,
- /* o : Right filter interpolation delta exponent */ // Q0
- Word16 *intp_count,
- /* o : Interpolation count */ // Q0
- Word16 *filterlength,
- /* o : Length of filters */ // Q0
- Word16 *itd,
- /* o : ITD value */ // Q0
- Word32 *Gain,
- /* o : Gain value */ // Q30
- TDREND_SRC_t *Src_p /* i/o: Source pointer */
+ Word32 *hrf_left_prev, /* i/o: Left filter exp(hrf_left_prev_e) */
+ Word16 *hrf_left_prev_e, /* i/o: Left filter exponent Q0 */
+ Word32 *hrf_right_prev, /* i/o: Right filter exp(hrf_right_prev_e) */
+ Word16 *hrf_right_prev_e, /* i/o: Right filter exponent Q0 */
+ Word32 *hrf_left_delta, /* o : Left filter interpolation delta exp(hrf_left_delta_e) */
+ Word16 *hrf_left_delta_e, /* o : Left filter interpolation delta exponent Q0 */
+ Word32 *hrf_right_delta, /* o : Right filter interpolation delta exp(hrf_right_delta_e) */
+ Word16 *hrf_right_delta_e, /* o : Right filter interpolation delta exponent Q0 */
+ Word16 *intp_count, /* o : Interpolation count Q0 */
+ Word16 *filterlength, /* o : Length of filters Q0 */
+ Word16 *itd, /* o : ITD value Q0 */
+ Word32 *Gain, /* o : Gain value Q30 */
+ TDREND_SRC_t *Src_p /* i/o: Source pointer */
)
{
TDREND_MIX_Listener_t *Listener_p;
@@ -397,11 +403,11 @@ void TDREND_SRC_REND_UpdateFiltersFromSpatialParams_fx(
move32();
}
-
/* Update total gains */
*Gain = L_shl( Mpy_32_32( L_shl( L_mult( *SrcRend_p->SrcGain_p_fx, *SrcRend_p->DirGain_p_fx ), 1 ), L_shl( L_mult( *SrcRend_p->DistGain_p_fx, hBinRendererTd->Gain_fx ), 1 ) ), 1 ); // Q30
move32();
- /* Delta for interpolation, in case the angular step exceeds MAX_ANGULAR_STEP */
+
+ /* Delta for interpolation, in case the angular step exceeds MAX_ANGULAR_STEP=0.01f */
Word32 ele_tmp = Src_p->elev_prev_fx; // Q22
move32();
IF( GT_32( ele_tmp, DEG_180_IN_Q22 ) )
@@ -468,8 +474,6 @@ void TDREND_SRC_REND_UpdateFiltersFromSpatialParams_fx(
move16();
}
- test();
-
IF( ( *intp_count > 0 ) )
{
/* Set deltas for interpolation */
@@ -490,8 +494,8 @@ void TDREND_SRC_REND_UpdateFiltersFromSpatialParams_fx(
*hrf_left_delta_e = tmp_e;
move16();
- Word32 fac = L_deposit_h( div_s( 1, *intp_count ) ); // Q15
- v_multc_fixed( hrf_left_delta, fac, hrf_left_delta, *filterlength ); // exp(hrf_left_delta_e)
+ Word32 fac = L_deposit_h( div_s( 1, *intp_count ) ); // Q15
+ v_multc_fx( hrf_left_delta, fac, hrf_left_delta, *filterlength ); // exp(hrf_left_delta_e)
tmp_e = s_max( *hrf_right_prev_e, hrf_right_e );
FOR( Word16 i = 0; i < *filterlength; i++ )
@@ -509,7 +513,7 @@ void TDREND_SRC_REND_UpdateFiltersFromSpatialParams_fx(
*hrf_right_delta_e = tmp_e;
move16();
- v_multc_fixed( hrf_right_delta, fac, hrf_right_delta, *filterlength ); // exp(hrf_right_delta_e)
+ v_multc_fx( hrf_right_delta, fac, hrf_right_delta, *filterlength ); // exp(hrf_right_delta_e)
}
ELSE
{
@@ -531,6 +535,7 @@ void TDREND_SRC_REND_UpdateFiltersFromSpatialParams_fx(
return;
}
+
/*-------------------------------------------------------------------*
* TDREND_SRC_SPATIAL_Alloc()
*
@@ -656,6 +661,7 @@ static void TDREND_SRC_SPATIAL_SetDirAtten_fx(
return;
}
+
/*-------------------------------------------------------------------*
* TDREND_SRC_SPATIAL_SetDistAtten()
*
@@ -680,6 +686,22 @@ static void TDREND_SRC_SPATIAL_SetDistAtten(
return;
}
+/*-------------------------------------------------------------------*
+ * TDREND_SRC_SPATIAL_SetGain()
+ *
+ * Set the object gain
+ --------------------------------------------------------------------*/
+
+static void TDREND_SRC_SPATIAL_SetGain(
+ const TDREND_SRC_t *Src_p, /* i : Directional attenuation specification */
+ const Word32 Gain /* i : Front-pointing vector */
+)
+{
+ Src_p->SrcRend_p->SrcGain_p_fx[0] = shl_sat( extract_h( Gain ), Q1 ); // TODO: Check incoming Q-value and fix this
+
+ return;
+}
+
/*-------------------------------------------------------------------*
* TDREND_SRC_SPATIAL_GetDirGain()
*
@@ -687,11 +709,11 @@ static void TDREND_SRC_SPATIAL_SetDistAtten(
--------------------------------------------------------------------*/
/*! r: Gain value */
-static Word16 TDREND_SRC_SPATIAL_GetDirGain_fx( /* o : Directional Gain Output Q14 */
- const TDREND_DirAtten_t *DirAtten_p, /* i : Directional attenuation specification */
- const Word32 *Front_p_fx, /* i : Front-pointing vector Q30 */
- const Word32 *RelPos_p_fx, /* i : Relative position */
- const Word16 RelPos_p_e /* i : Relative position exp RelPos_p_e */
+static Word16 TDREND_SRC_SPATIAL_GetDirGain_fx(
+ const TDREND_DirAtten_t *DirAtten_p, /* i : Directional attenuation specification */
+ const Word32 *Front_p_fx, /* i : Front-pointing vector Q30 */
+ const Word32 *RelPos_p_fx, /* i : Relative position */
+ const Word16 RelPos_p_e /* i : Relative position exp RelPos_p_e */
)
{
Word16 DirGain_fx; // Q14
@@ -712,7 +734,7 @@ static Word16 TDREND_SRC_SPATIAL_GetDirGain_fx(
Vec_fx[i] = L_negate( RelPos_p_fx[i] ); // exp(RelPos_p_e)
move32();
}
- ProjCoef_fx = dotp_fixed( Vec_fx, Front_p_fx, 3 ); // exp: RelPos_p_e + 1
+ ProjCoef_fx = dotp_fx32( Vec_fx, Front_p_fx, 3 ); // exp: RelPos_p_e + 1
ProjCoef_e = add( RelPos_p_e, 1 );
NormRelPos_fx = TDREND_SPATIAL_VecNorm_fx( RelPos_p_fx, RelPos_p_e, &NormRelPos_e ); // exp(NormRelPos_e)
@@ -772,10 +794,10 @@ static Word16 TDREND_SRC_SPATIAL_GetDirGain_fx(
--------------------------------------------------------------------*/
/*! r: Gain value */
-static Word16 TDREND_SRC_SPATIAL_GetDistGain_fx( /* o : Distance gain Q14 */
- const TDREND_DistAtten_t *DistAtten_p, /* i : Distance attenuation parameters */
- const Word32 Dist_fx, /* i : Distance value Dist_e */
- const Word16 Dist_e /* i : Distance value exp */
+static Word16 TDREND_SRC_SPATIAL_GetDistGain_fx(
+ const TDREND_DistAtten_t *DistAtten_p, /* i : Distance attenuation parameters */
+ const Word32 Dist_fx, /* i : Distance value Dist_e */
+ const Word16 Dist_e /* i : Distance value exp */
)
{
Word16 DistGain_fx; // Q14
@@ -845,11 +867,13 @@ static Word16 TDREND_SRC_SPATIAL_GetDistGain_fx(
return DistGain_fx;
}
+
/*-------------------------------------------------------------------*
* TDREND_SRC_Alloc()
*
* Allocate a source.
--------------------------------------------------------------------*/
+
ivas_error TDREND_SRC_Alloc(
TDREND_SRC_t **Src_pp /* i/o: Source */
)
@@ -882,6 +906,7 @@ ivas_error TDREND_SRC_Alloc(
return IVAS_ERR_OK;
}
+
/*-------------------------------------------------------------------*
* TDREND_SRC_Dealloc()
*
@@ -903,13 +928,17 @@ void TDREND_SRC_Dealloc(
/* Free the Src_p variable */
free( Src_p );
Src_p = NULL;
+
return;
}
+
+
/*-------------------------------------------------------------------*
* TDREND_SRC_Init()
*
* Initializes a source.
--------------------------------------------------------------------*/
+
void TDREND_SRC_Init_fx(
TDREND_SRC_t *Src_p, /* i/o: Source to initialize */
const TDREND_PosType_t PosType /* i : Position type specifier */
@@ -953,5 +982,6 @@ void TDREND_SRC_Init_fx(
move32();
Src_p->prevGain_fx = ONE_IN_Q30; // Q30
move32();
+
return;
}
diff --git a/lib_rend/ivas_objectRenderer_vec_fx.c b/lib_rend/ivas_objectRenderer_vec_fx.c
index 0d8c11aabc2d1f7bbbca125f01563c194a940636..140861539307a16b008dcd1fc0a29922d844c8b6 100644
--- a/lib_rend/ivas_objectRenderer_vec_fx.c
+++ b/lib_rend/ivas_objectRenderer_vec_fx.c
@@ -141,12 +141,13 @@ void TDREND_SPATIAL_VecMapToNewCoordSystem_fx(
v_sub_32( Vec_p, TranslVec_p, LisRelPosAbs, 3 );
/* Evalute the relative Vec in the coordinates of the Orientation vectors, */
/* which form an orthonormal basis */
- MappedVec_p[0] = dotp_fixed( LisRelPosAbs, DirVec_p, 3 ); // Q: Qy + Qy - Q31
+ MappedVec_p[0] = dotp_fx32( LisRelPosAbs, DirVec_p, 3 ); // Q: Qy + Qy - Q31
move32();
- MappedVec_p[1] = dotp_fixed( LisRelPosAbs, RightVec_p, 3 ); // Q: Qy + Qy - Q31
+ MappedVec_p[1] = dotp_fx32( LisRelPosAbs, RightVec_p, 3 ); // Q: Qy + Qy - Q31
move32();
- MappedVec_p[2] = dotp_fixed( LisRelPosAbs, UpVec_p, 3 ); // Q: Qy + Qy - Q31
+ MappedVec_p[2] = dotp_fx32( LisRelPosAbs, UpVec_p, 3 ); // Q: Qy + Qy - Q31
move32();
+
return;
}
@@ -157,7 +158,6 @@ void TDREND_SPATIAL_VecMapToNewCoordSystem_fx(
*-------------------------------------------------------------------*/
/*! r: Flag if the orientation has been updated */
-
Word16 TDREND_SPATIAL_EvalOrthonormOrient_fx(
Word32 *FrontVecON_p_fx, /* i/o: Normalized front vector Q30 */
Word32 *UpVecON_p_fx, /* i/o: Normalized up vector Q30 */
diff --git a/lib_rend/ivas_omasa_ana_fx.c b/lib_rend/ivas_omasa_ana_fx.c
index 67e72e84c0578a544a54372d4f469ae923a0bb2f..e441b3596d14dbe4d6108c0d815216e68fc8dfbe 100644
--- a/lib_rend/ivas_omasa_ana_fx.c
+++ b/lib_rend/ivas_omasa_ana_fx.c
@@ -490,14 +490,14 @@ static void ivas_omasa_param_est_ana_fx(
FOR( i = 1; i < nchan_ism; i++ )
{
- v_add_fixed_no_hdrm( Chnl_RealBuffer_fx[i], Foa_RealBuffer_fx[0], Foa_RealBuffer_fx[0], num_freq_bins ); // Q: Chnl_RealBuffer_q
- v_add_fixed_no_hdrm( Chnl_ImagBuffer_fx[i], Foa_ImagBuffer_fx[0], Foa_ImagBuffer_fx[0], num_freq_bins ); // Q: Chnl_ImagBuffer_q
+ v_add_fx_no_hdrm( Chnl_RealBuffer_fx[i], Foa_RealBuffer_fx[0], Foa_RealBuffer_fx[0], num_freq_bins ); // Q: Chnl_RealBuffer_q
+ v_add_fx_no_hdrm( Chnl_ImagBuffer_fx[i], Foa_ImagBuffer_fx[0], Foa_ImagBuffer_fx[0], num_freq_bins ); // Q: Chnl_ImagBuffer_q
}
/* Y */
- v_multc_fixed( Chnl_RealBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[1][0], Foa_RealBuffer_fx[1], num_freq_bins ); // Q: Chnl_RealBuffer_q
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[1][0], Foa_ImagBuffer_fx[1], num_freq_bins ); // Q: Chnl_ImagBuffer_q
+ v_multc_fx( Chnl_RealBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[1][0], Foa_RealBuffer_fx[1], num_freq_bins ); // Q: Chnl_RealBuffer_q
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[1][0], Foa_ImagBuffer_fx[1], num_freq_bins ); // Q: Chnl_ImagBuffer_q
FOR( i = 1; i < nchan_ism; i++ )
{
@@ -507,8 +507,8 @@ static void ivas_omasa_param_est_ana_fx(
/* Z */
- v_multc_fixed( Chnl_RealBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[2][0], Foa_RealBuffer_fx[2], num_freq_bins ); // Q: Chnl_RealBuffer_q
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[2][0], Foa_ImagBuffer_fx[2], num_freq_bins ); // Q: Chnl_ImagBuffer_q
+ v_multc_fx( Chnl_RealBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[2][0], Foa_RealBuffer_fx[2], num_freq_bins ); // Q: Chnl_RealBuffer_q
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[2][0], Foa_ImagBuffer_fx[2], num_freq_bins ); // Q: Chnl_ImagBuffer_q
FOR( i = 1; i < nchan_ism; i++ )
{
@@ -516,8 +516,8 @@ static void ivas_omasa_param_est_ana_fx(
v_multc_acc_32_32( Chnl_ImagBuffer_fx[i], hOMasa->chnlToFoaMtx_fx[2][i], Foa_ImagBuffer_fx[2], num_freq_bins ); // Q: Chnl_ImagBuffer_q
}
- v_multc_fixed( Chnl_RealBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[3][0], Foa_RealBuffer_fx[3], num_freq_bins ); // Q: Chnl_RealBuffer_q
- v_multc_fixed( Chnl_ImagBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[3][0], Foa_ImagBuffer_fx[3], num_freq_bins ); // Q: Chnl_ImagBuffer_q
+ v_multc_fx( Chnl_RealBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[3][0], Foa_RealBuffer_fx[3], num_freq_bins ); // Q: Chnl_RealBuffer_q
+ v_multc_fx( Chnl_ImagBuffer_fx[0], hOMasa->chnlToFoaMtx_fx[3][0], Foa_ImagBuffer_fx[3], num_freq_bins ); // Q: Chnl_ImagBuffer_q
FOR( i = 1; i < nchan_ism; i++ )
{
@@ -526,9 +526,9 @@ static void ivas_omasa_param_est_ana_fx(
}
computeIntensityVector_ana_fx( hOMasa->band_grouping, Foa_RealBuffer_fx, Foa_ImagBuffer_fx, num_freq_bands, intensity_real_fx, intensity_real_q, inp_q );
- computeDirectionVectors_fixed( intensity_real_fx[0], intensity_real_fx[1], intensity_real_fx[2], 0, num_freq_bands, direction_vector_fx[0], direction_vector_fx[1], direction_vector_fx[2], 0, intensity_real_q ); /* Q direction_vector_fx = Q30*/
- /* Power estimation for diffuseness */
+ computeDirectionVectors_fx2( intensity_real_fx[0], intensity_real_fx[1], intensity_real_fx[2], 0, num_freq_bands, direction_vector_fx[0], direction_vector_fx[1], direction_vector_fx[2], 0, intensity_real_q ); /* Q direction_vector_fx = Q30*/
+ /* Power estimation for diffuseness */
computeReferencePower_ana_fx( hOMasa->band_grouping, Foa_RealBuffer_fx, Foa_ImagBuffer_fx, reference_power_fx[ts], num_freq_bands, inp_q, &reference_power_q );
/* Aligning intensity_real to a common Q-factor */
@@ -563,7 +563,7 @@ static void ivas_omasa_param_est_ana_fx(
hOMasa->buffer_energy_q[index - 1] = reference_power_q;
move16();
- computeDiffuseness_fixed( hOMasa->buffer_intensity_real_fx, hOMasa->buffer_energy_fx, num_freq_bands, diffuseness_vector_fx, hOMasa->buffer_intensity_real_q, hOMasa->buffer_energy_q, &diffuseness_q ); // diffuseness_q=Q30
+ computeDiffuseness_fx( hOMasa->buffer_intensity_real_fx, hOMasa->buffer_energy_fx, num_freq_bands, diffuseness_vector_fx, hOMasa->buffer_intensity_real_q, hOMasa->buffer_energy_q, &diffuseness_q ); // diffuseness_q=Q30
FOR( band_m_idx = 0; band_m_idx < hOMasa->nbands; band_m_idx++ )
{
@@ -654,7 +654,6 @@ static void ivas_omasa_dmx_fx(
const Word16 interpolator_fx[L_FRAME48k] )
{
Word16 i, j, k, l, tmp1, tmp2;
-
Word16 azimuth_fx, elevation_fx;
Word16 gains_fx[MASA_MAX_TRANSPORT_CHANNELS];
Word16 g1_fx, g2_fx, scale;
@@ -686,7 +685,6 @@ static void ivas_omasa_dmx_fx(
{
FOR( k = 0; k < input_frame; k++ )
{
-
g1_fx = interpolator_fx[k]; // Q15
move16();
scale = BASOP_Util_Add_MantExp( 16384, 1, negate( g1_fx ), 0, &g2_fx );
@@ -761,8 +759,6 @@ static void ivas_omasa_dmx_fx(
return;
}
-/* Compute downmix */
-
/*--------------------------------------------------------------------------*
* computeIntensityVector_ana()
@@ -850,11 +846,6 @@ void computeIntensityVector_ana_fx(
return;
}
-/*--------------------------------------------------------------------------*
- * computeIntensityVector_ana()
- *
- *
- *--------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------*
diff --git a/lib_rend/ivas_output_init_fx.c b/lib_rend/ivas_output_init_fx.c
index 170581b2391c5b786729aaf3836c9f9abdfe1477..0e2b264a83e9e1f4ded222a90137b981a9f83295 100644
--- a/lib_rend/ivas_output_init_fx.c
+++ b/lib_rend/ivas_output_init_fx.c
@@ -318,7 +318,11 @@ Word16 ivas_get_nchan_buffers_dec_fx(
output_config = st_ivas->hDecoderConfig->output_config;
move16();
+#ifdef FIX_NCHAN_BUFFERS
+ nchan_out_buff = st_ivas->nchan_transport;
+#else
nchan_out_buff = MAX_OUTPUT_CHANNELS;
+#endif
move16();
IF( EQ_32( st_ivas->ivas_format, MONO_FORMAT ) )
@@ -332,6 +336,15 @@ Word16 ivas_get_nchan_buffers_dec_fx(
}
ELSE IF( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) )
{
+#ifdef FIX_NCHAN_BUFFERS
+ nchan_out_buff = s_max( st_ivas->hDecoderConfig->nchan_out, st_ivas->nchan_ism );
+
+ test();
+ IF( EQ_32( st_ivas->ism_mode, ISM_MODE_PARAM ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) )
+ {
+ nchan_out_buff = s_max( nchan_out_buff, audioCfg2channels( st_ivas->intern_config ) );
+ }
+#else
nchan_out_buff = st_ivas->nchan_ism;
move16();
@@ -344,9 +357,16 @@ Word16 ivas_get_nchan_buffers_dec_fx(
nchan_out_buff = s_max( audioCfg2channels( st_ivas->transport_config ), audioCfg2channels( st_ivas->intern_config ) );
nchan_out_buff = s_max( nchan_out_buff, audioCfg2channels( output_config ) );
}
+#endif
}
ELSE IF( EQ_32( st_ivas->ivas_format, SBA_FORMAT ) )
{
+#ifdef FIX_NCHAN_BUFFERS
+ Word16 nchan_internal;
+ nchan_internal = ivas_sba_get_nchan_metadata_fx( sba_analysis_order, ivas_total_brate );
+
+ nchan_out_buff = s_max( nchan_internal, st_ivas->hDecoderConfig->nchan_out );
+#else
Word16 nchan_internal;
nchan_internal = ivas_sba_get_nchan_metadata_fx( sba_analysis_order, ivas_total_brate );
nchan_out_buff = st_ivas->hDecoderConfig->nchan_out;
@@ -362,9 +382,20 @@ Word16 ivas_get_nchan_buffers_dec_fx(
nchan_out_buff = s_max( nchan_out_buff, audioCfg2channels( output_config ) );
}
nchan_out_buff = s_max( nchan_out_buff, nchan_internal );
+#endif
}
ELSE IF( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) )
{
+#ifdef FIX_NCHAN_BUFFERS
+ nchan_out_buff = s_max( st_ivas->hDecoderConfig->nchan_out, st_ivas->nchan_transport );
+
+ test();
+ IF( st_ivas->hDiracDecBin[0] != NULL && st_ivas->hDiracDecBin[0]->useTdDecorr )
+ {
+ nchan_out_buff = 2 * BINAURAL_CHANNELS;
+ move16();
+ }
+#else
nchan_out_buff = CPE_CHANNELS;
move16();
@@ -393,9 +424,13 @@ Word16 ivas_get_nchan_buffers_dec_fx(
{
nchan_out_buff = add( st_ivas->nchan_ism, CPE_CHANNELS );
}
+#endif
}
ELSE IF( EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) )
{
+#ifdef FIX_NCHAN_BUFFERS
+ nchan_out_buff = s_max( st_ivas->hDecoderConfig->nchan_out, add( st_ivas->nchan_transport, st_ivas->nchan_ism ) );
+#else
nchan_out_buff = add( st_ivas->nchan_ism, CPE_CHANNELS );
test();
@@ -413,9 +448,32 @@ Word16 ivas_get_nchan_buffers_dec_fx(
nchan_out_buff = s_max( nchan_out_buff, audioCfg2channels( st_ivas->intern_config ) );
nchan_out_buff = s_max( nchan_out_buff, audioCfg2channels( output_config ) );
}
+#endif
}
ELSE IF( EQ_32( st_ivas->ivas_format, SBA_ISM_FORMAT ) )
{
+#ifdef FIX_NCHAN_BUFFERS
+ Word16 nchan_internal;
+
+ nchan_internal = ivas_sba_get_nchan_metadata_fx( sba_analysis_order, ivas_total_brate );
+
+ if ( st_ivas->ism_mode == ISM_SBA_MODE_DISC )
+ {
+ nchan_internal = add( nchan_internal, st_ivas->nchan_ism );
+ }
+
+ if ( st_ivas->hMCT != NULL )
+ {
+ nchan_internal = shl( shr( add( nchan_internal, 1 ), 1 ), 1 ); /* ensure odd number of channels in MCT */
+ }
+
+ nchan_out_buff = s_max( nchan_internal, st_ivas->hDecoderConfig->nchan_out );
+
+ if ( EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) )
+ {
+ nchan_out_buff = s_max( nchan_out_buff, audioCfg2channels( st_ivas->intern_config ) );
+ }
+#else
Word16 nchan_internal;
nchan_internal = ivas_sba_get_nchan_metadata_fx( sba_analysis_order, ivas_total_brate );
nchan_out_buff = add( st_ivas->nchan_ism, st_ivas->nchan_transport );
@@ -455,9 +513,28 @@ Word16 ivas_get_nchan_buffers_dec_fx(
nchan_out_buff = s_max( nchan_out_buff, add( nchan_internal, st_ivas->nchan_ism ) );
}
nchan_out_buff = s_min( nchan_out_buff, MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS );
+#endif
}
ELSE IF( EQ_32( st_ivas->ivas_format, MC_FORMAT ) )
{
+#ifdef FIX_NCHAN_BUFFERS
+ nchan_out_buff = max( st_ivas->hDecoderConfig->nchan_out, st_ivas->nchan_transport );
+
+ IF( st_ivas->hOutSetup.separateChannelEnabled )
+ {
+ nchan_out_buff = s_max( nchan_out_buff, add( st_ivas->nchan_transport, 1 ) );
+ }
+
+ IF( st_ivas->hDiracDecBin[0] != NULL && st_ivas->hDiracDecBin[0]->useTdDecorr )
+ {
+ nchan_out_buff = 2 * BINAURAL_CHANNELS;
+ move16();
+ }
+ ELSE
+ {
+ nchan_out_buff = s_max( nchan_out_buff, audioCfg2channels( st_ivas->intern_config ) );
+ }
+#else
nchan_out_buff = st_ivas->hDecoderConfig->nchan_out;
IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_LS_CUSTOM ) )
@@ -469,8 +546,10 @@ Word16 ivas_get_nchan_buffers_dec_fx(
nchan_out_buff = s_max( audioCfg2channels( st_ivas->transport_config ), audioCfg2channels( st_ivas->intern_config ) );
nchan_out_buff = s_max( nchan_out_buff, audioCfg2channels( output_config ) );
}
+#endif
}
+ test();
IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
{
nchan_out_buff = max( nchan_out_buff, st_ivas->hSplitBinRend->splitrend.multiBinPoseData.num_poses * BINAURAL_CHANNELS );
@@ -487,7 +566,7 @@ Word16 ivas_get_nchan_buffers_dec_fx(
*-------------------------------------------------------------------*/
ivas_error ivas_output_buff_dec_fx(
- Word32 *p_output_f[], /* i/o: output audio buffers */
+ Word32 *p_output_fx[], /* i/o: output audio buffers */
const Word16 nchan_out_buff_old, /* i : previous frame number of output channels */
const Word16 nchan_out_buff /* i : number of output channels */
)
@@ -498,10 +577,18 @@ ivas_error ivas_output_buff_dec_fx(
{
FOR( ch = nchan_out_buff_old; ch < nchan_out_buff; ch++ )
{
+#ifdef FIX_NCHAN_BUFFERS
+#ifdef DEBUGGING
+ if ( p_output_fx[ch] != NULL )
+ {
+ return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Memory for floating-point output audio buffer is already allocated!\n" ) );
+ }
+#endif
+#endif
/* note: these are intra-frame heap memories */
- IF( ( p_output_f[ch] = (Word32 *) malloc( ( 48000 / FRAMES_PER_SEC ) * sizeof( Word32 ) ) ) == NULL ) /* note: 32000 == max internal sampling rate */
+ IF( ( p_output_fx[ch] = (Word32 *) malloc( ( 48000 / FRAMES_PER_SEC ) * sizeof( Word32 ) ) ) == NULL )
{
- return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for floating-point output audio buffer!\n" ) );
+ return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for output audio buffer!\n" ) );
}
}
}
@@ -509,8 +596,8 @@ ivas_error ivas_output_buff_dec_fx(
{
FOR( ch = nchan_out_buff; ch < nchan_out_buff_old; ch++ )
{
- free( p_output_f[ch] );
- p_output_f[ch] = NULL;
+ free( p_output_fx[ch] );
+ p_output_fx[ch] = NULL;
}
}
diff --git a/lib_rend/ivas_prot_rend_fx.h b/lib_rend/ivas_prot_rend_fx.h
index 68c312ff047c2cd4bbef38ab61bfedeaaf54c7ba..250fea7515e5222ce88904254b9b70510c34341d 100644
--- a/lib_rend/ivas_prot_rend_fx.h
+++ b/lib_rend/ivas_prot_rend_fx.h
@@ -49,11 +49,13 @@
IVAS_REND_AudioConfigType getAudioConfigType(
const AUDIO_CONFIG config
);
+
ivas_error getAudioConfigNumChannels(
const AUDIO_CONFIG config,
Word16 *numChannels
);
+
/*----------------------------------------------------------------------------------*
* output setup prototypes
*----------------------------------------------------------------------------------*/
@@ -87,45 +89,28 @@ ivas_error get_channel_config(
);
-/*----------------------------------------------------------------------------------*
- * Limiter prototypes
- *----------------------------------------------------------------------------------*/
-
-void ivas_limiter_dec_fx(
- IVAS_LIMITER_HANDLE hLimiter, /* i/o: limiter struct handle */
- Word32 *output[MAX_OUTPUT_CHANNELS], /* i/o: input/output buffer */
- const Word16 num_channels, /* i : number of channels to be processed */
- const Word16 output_frame, /* i : number of samples per channel in the buffer */
- const Word16 BER_detect, /* i : BER detect flag */
- Word16 q_factor /* i : Q factor of the output samples */
-);
-
-void limiter_process_fx(
- IVAS_LIMITER_HANDLE hLimiter, /* i/o: limiter struct handle */
- const Word16 output_frame, /* i : number of samples to be processed per channel in the I/O buffer */
- const Word32 threshold, /* i : signal amplitude above which limiting starts to be applied */
- const Word16 BER_detect, /* i : BER detect flag */
- Word16 *strong_saturation_cnt, /* i/o: counter of strong saturations (can be NULL) */
- Word16 q_factor /* i : Q factor of output samples */
-);
/*----------------------------------------------------------------------------------*
* TD decorr. function prototypes
*----------------------------------------------------------------------------------*/
+
ivas_error ivas_td_decorr_dec_open_fx(
ivas_td_decorr_state_t **hTdDecorr, /* i/o: TD decorrelator handle */
const Word32 output_Fs, /* i : output sampling rate */
const Word16 nchan_internal, /* i : number of internal channels */
const Word16 ducking_flag /* i : ducking flag */
);
+
void ivas_td_decorr_dec_close(
ivas_td_decorr_state_t **hTdDecorr /* i/o: TD decorrelator handle */
);
+
void ivas_td_decorr_process_fx(
ivas_td_decorr_state_t *hTdDecorr, /* i/o: TD decoderrelator handle */
Word32 *pcm_in[], /* i : input audio channels */
Word32 **ppOut_pcm, /* o : output audio channels */
const Word16 output_frame /* i : output frame length */
);
+
ivas_error ivas_td_decorr_reconfig_dec(
const IVAS_FORMAT ivas_format, /* i : IVAS format */
const Word32 ivas_total_brate, /* i : total IVAS bitrate */
@@ -141,6 +126,8 @@ void ivas_td_decorr_APD_iir_filter_fx(
const Word16 num_APD_sections, /* i : numbef of APD sections */
const Word16 output_frame /* i : output frame length */
);
+
+
/*----------------------------------------------------------------------------------*
* Amplitude Panning EFAP prototypes
*----------------------------------------------------------------------------------*/
@@ -153,6 +140,10 @@ ivas_error efap_init_data_fx(
const Word16 efap_mode /* i : indicates whether EFAP or EFIP is used */
);
+void efap_free_data_fx(
+ EFAP_HANDLE *hEFAPdata /* i/o: EFAP handle to be freed */
+);
+
void efap_determine_gains_fx(
EFAP_HANDLE hEFAPdata, /* i : EFAP structure */
Word32 *gains, /* o : gain vector for speaker nodes for given direction Q30 */
@@ -217,13 +208,13 @@ void ivas_dirac_dec_binaural_render_fx(
UWord16 *nSamplesRendered, /* o : number of CLDFB slots rendered */
UWord16 *nSamplesAvailable, /* o : number of CLDFB slots still to render */
const Word16 nchan_transport, /* i : number of transport channels */
- Word32 *output_f[] /* o : rendered time signal, Q11 */
+ Word32 *output_fx[] /* o : rendered time signal, Q11 */
);
void ivas_masa_ext_rend_parambin_render_fx(
MASA_EXT_REND_HANDLE hMasaExtRend, /* i/o: MASA ext rend structure */
COMBINED_ORIENTATION_HANDLE hCombinedOrientationData, /* i : combined orientation handle */
- Word32 *output_f[], /* i/o: synthesized core-coder transport channels/DirAC output Q11*/
+ Word32 *output_fx[], /* i/o: synthesized core-coder transport channels/DirAC output Q11*/
const Word16 num_subframes, /* i : number of subframes to render */
const SPLIT_REND_WRAPPER *hSplitRendWrapper, /* i : split rendering orientation data */
Word32 Cldfb_Out_Real[][CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX], /* o : rendered orientations for split rend. real part of cldfb */
@@ -240,7 +231,7 @@ void ivas_dirac_dec_close_binaural_data_fx(
);
ivas_error ivas_dirac_dec_binaural_copy_hrtfs_fx(
- HRTFS_PARAMBIN_HANDLE *hHrtfParambin /* i/o: HRTF structure for rendering */
+ HRTFS_PARAMBIN_HANDLE *hHrtfParambin /* i/o: HRTF structure for rendering */
);
ivas_error ivas_dirac_alloc_mem_fx(
@@ -472,17 +463,17 @@ void ivas_dirac_dec_output_synthesis_process_slot_fx(
Word16 q_diffuseness,
SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom, /* i/o: common spatial renderer data handle */
DIRAC_REND_HANDLE hDirACRend, /* i/o: DirAC renderer handle */
- const VBAP_HANDLE hVBAPdata, /* i : VBAP structure */
- const IVAS_OUTPUT_SETUP hOutSetup, /* i : output setup structure */
- const Word16 nchan_transport, /* i : number of transport channels*/
+ const VBAP_HANDLE hVBAPdata, /* i : VBAP structure */
+ const IVAS_OUTPUT_SETUP hOutSetup, /* i : output setup structure */
+ const Word16 nchan_transport, /* i : number of transport channels */
const Word16 md_idx,
- const Word16 hodirac_flag, /* i : flag to indicate HO-DirAC mode */
+ const Word16 hodirac_flag, /* i : flag to indicate HO-DirAC mode */
const Word16 dec_param_estim
);
void ivas_dirac_dec_output_synthesis_process_subframe_gain_shd_fx(
- Word32 RealBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX],/* i : LS signals */
- Word32 ImagBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX],/* i : LS signals */
+ Word32 RealBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX],/* i : LS signals */
+ Word32 ImagBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX],/* i : LS signals */
SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom, /* i/o: common spatial renderer data handle */
DIRAC_REND_HANDLE hDirACRend, /* i/o: DirAC renderer handle */
const Word16 nchan_transport, /* i : number of transport channels */
@@ -496,8 +487,8 @@ void ivas_dirac_dec_output_synthesis_process_subframe_gain_shd_fx(
);
void ivas_dirac_dec_output_synthesis_process_subframe_psd_ls_fx(
- Word32 RealBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX],/* i : LS signals */
- Word32 ImagBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX],/* i : LS signals */
+ Word32 RealBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX],/* i : LS signals */
+ Word32 ImagBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX],/* i : LS signals */
SPAT_PARAM_REND_COMMON_DATA_HANDLE hSpatParamRendCom, /* i/o: common spatial renderer data handle */
DIRAC_REND_HANDLE hDirACRend, /* i/o: DirAC renderer handle */
const Word16 nbslots, /* i : number of slots to process */
@@ -578,9 +569,9 @@ void ivas_dirac_deallocate_parameters_fx(
);
void ivas_masa_ext_dirac_render_fx(
- MASA_EXT_REND_HANDLE hMasaExtRend, /* i/o: MASA renderer structure */
- Word32 *output_f[], /* i/o: input/output signals in time domain q11*/
- const Word16 num_subframes /* i : number of subframes to render */
+ MASA_EXT_REND_HANDLE hMasaExtRend, /* i/o: MASA renderer structure */
+ Word32 *output_fx[], /* i/o: input/output signals in time domain q11 */
+ const Word16 num_subframes /* i : number of subframes to render */
);
@@ -612,7 +603,6 @@ void ivas_HRTF_parambin_binary_close_fx(
HRTFS_PARAMBIN **hHrtfParambin /* i/o: Parametric binauralizer HRTF structure */
);
-#ifdef FIX_CREND_SIMPLIFY_CODE
ivas_error ivas_HRTF_CRend_binary_open_fx(
HRTFS_CREND_DATA **hHrtfCrend /* i/o: Crend HRTF handle */
);
@@ -630,25 +620,6 @@ ivas_error ivas_HRTF_statistics_init_fx(
HRTFS_STATISTICS_HANDLE *hHrtfStatistics, /* i/o: HRTF statistics structure */
const int32_t sampleRate /* i : Sample rate */
);
-#else
-
-ivas_error ivas_HRTF_CRend_binary_open_fx(
- HRTFS_CREND **hSetOfHRTF /* i/o: Set of HRTF handle */
-);
-
-void ivas_HRTF_CRend_binary_close_fx(
- HRTFS_CREND **hSetOfHRTF /* i/o: Set of HRTF handle */
-);
-
-ivas_error ivas_HRTF_statistics_init_fx(
- HRTFS_STATISTICS_HANDLE *hHrtfStatistics, /* i/o: HRTF statistics structure */
-#ifdef FIX_CREND_SIMPLIFY_CODE
- const Word32 sampleRate /* i : Sample rate */
-#else
- Word32 sampleRate
-#endif
-);
-#endif
void ivas_HRTF_statistics_close_fx(
HRTFS_STATISTICS **hHrtfStatistics /* i/o: HRTF statistics structure */
@@ -658,23 +629,24 @@ ivas_error ivas_HRTF_statistics_binary_open_fx(
HRTFS_STATISTICS **hHrtfStatistics /* i/o: HRTF statistics structure */
);
+
/*----------------------------------------------------------------------------------*
* TD object renderer
*----------------------------------------------------------------------------------*/
ivas_error ivas_td_binaural_renderer_unwrap_fx(
- const REVERB_HANDLE hReverb, /* i : Reverberator handle */
- const AUDIO_CONFIG transport_config, /* i : Transport configuration */
- BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD binaural object renderer handle */
- const Word16 num_src, /* i : number of sources to render */
- const Word16 lfe_idx, /* i : LFE channel index */
- const IVAS_FORMAT ivas_format, /* i : IVAS format */
- ISM_METADATA_HANDLE *hIsmMetaData, /* i : ISM metadata handle */
- COMBINED_ORIENTATION_HANDLE hCombinedOrientationData, /* i/o: combined orientaton data handle */
+ const REVERB_HANDLE hReverb, /* i : Reverberator handle */
+ const AUDIO_CONFIG transport_config, /* i : Transport configuration */
+ BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD binaural object renderer handle */
+ const Word16 num_src, /* i : number of sources to render */
+ const Word16 lfe_idx, /* i : LFE channel index */
+ const IVAS_FORMAT ivas_format, /* i : IVAS format */
+ ISM_METADATA_HANDLE *hIsmMetaData, /* i : ISM metadata handle */
+ COMBINED_ORIENTATION_HANDLE hCombinedOrientationData, /* i/o: combined orientaton data handle */
const Word16 ism_md_subframe_update, /* i : Number of subframes to delay ism metadata to sync with audio */
Word32 *output_fx[], /* i/o: SCE channels / Binaural synthesis Q11 */
- const Word16 output_frame, /* i : output frame length */
- const Word16 num_subframes /* i : number of subframes to render */
+ const Word16 output_frame, /* i : output frame length */
+ const Word16 num_subframes /* i : number of subframes to render */
);
ivas_error ivas_td_binaural_renderer_ext_fx(
@@ -687,7 +659,7 @@ ivas_error ivas_td_binaural_renderer_ext_fx(
const Word16 ism_md_subframe_update_ext, /* i : Metadata Delay in subframes to sync with audio delay */
const Word32 output_Fs, /* i : output sampling rate */
const Word16 output_frame, /* i : output frame length */
- Word32 output[][L_FRAME48k], /* i/o: SCE channels / Binaural synthesis Q11 */
+ Word32 output[][L_FRAME48k], /* i/o: SCE channels / Binaural synthesis Q11 */
Word16 *exp
);
@@ -723,10 +695,10 @@ void ivas_td_binaural_close_fx(
);
ivas_error TDREND_GetMix_fx(
- BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
- Word32 *output[], /* i/o: ISM object synth / rendered output in 0,1 */
- const Word16 subframe_length, /* i/o: subframe length Q11 */
-const Word16 subframe_idx /* i : Subframe index to 5 ms subframe */
+ BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
+ Word32 *output[], /* i/o: ISM object synth/rendered output in 0,1 */
+ const Word16 subframe_length, /* i/o: subframe length Q11 */
+ const Word16 subframe_idx /* i : Subframe index to 5 ms subframe */
);
void BSplineModelEvalDealloc_fx(
@@ -737,15 +709,15 @@ void BSplineModelEvalDealloc_fx(
/* ----- Object renderer - hrfilt ----- */
void GetFilterFromAngle_fx(
- TDREND_HRFILT_FiltSet_t *HrFiltSet_p, /* i/o: HR filter set structure */
- const Word32 Elev_fx, /* i : Elevation, degrees Q22 */
- Word32 Azim_fx, /* i : Azimuth, degrees Q22 */
- const Word16 filterlength, /* i : Filter length */
- Word32 *hrf_left_fx, /* o : Left HR filter */
- Word16 *hrf_left_e, /* o : Left HR filter exponent */
- Word32 *hrf_right_fx, /* o : Right HR filter */
- Word16 *hrf_right_e, /* o : Right HR filter exponent */
- Word16 *itd /* o : ITD value Q0 */
+ TDREND_HRFILT_FiltSet_t *HrFiltSet_p, /* i/o: HR filter set structure */
+ const Word32 Elev_fx, /* i : Elevation, degrees Q22 */
+ Word32 Azim_fx, /* i : Azimuth, degrees Q22 */
+ const Word16 filterlength, /* i : Filter length */
+ Word32 *hrf_left_fx, /* o : Left HR filter */
+ Word16 *hrf_left_e, /* o : Left HR filter exponent */
+ Word32 *hrf_right_fx, /* o : Right HR filter */
+ Word16 *hrf_right_e, /* o : Right HR filter exponent */
+ Word16 *itd /* o : ITD value Q0 */
);
void HRTF_model_precalc(
@@ -753,14 +725,14 @@ void HRTF_model_precalc(
);
ivas_error TDREND_REND_RenderSourceHRFilt_fx(
- TDREND_SRC_t *Src_p, /* i/o: The source to be rendered */
- Word32 *hrf_left_delta_fx, /* i/o: Left filter interpolation delta */
- Word16 *hrf_left_delta_e, /* i/o: Left filter interpolation delta exp */
- Word32 *hrf_right_delta_fx, /* i/o: Right filter interpolation delta */
- Word16 *hrf_right_delta_e, /* i/o: Right filter interpolation delta exp */
- const Word16 intp_count, /* i : Interpolation count */
+ TDREND_SRC_t *Src_p, /* i/o: The source to be rendered */
+ Word32 *hrf_left_delta_fx, /* i/o: Left filter interpolation delta */
+ Word16 *hrf_left_delta_e, /* i/o: Left filter interpolation delta exp */
+ Word32 *hrf_right_delta_fx, /* i/o: Right filter interpolation delta */
+ Word16 *hrf_right_delta_e, /* i/o: Right filter interpolation delta exp */
+ const Word16 intp_count, /* i : Interpolation count */
Word32 output_buf_fx[][L_SPATIAL_SUBFR_48k], /* o : Output buffer same Q as Src_p->InputFrame_p_fx Q11 */
- const Word16 subframe_length /* i : Subframe length in use */
+ const Word16 subframe_length /* i : Subframe length in use */
);
/* ----- Object renderer - sources ----- */
@@ -778,6 +750,12 @@ ivas_error TDREND_MIX_SRC_SetDir_fx(
const Word16 Vec_p_q /* i : Direction vector q */
);
+ivas_error TDREND_MIX_SRC_SetGain(
+ BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
+ const Word16 SrcInd,
+ const Word32 Gain /* i : Gain */
+);
+
ivas_error TDREND_MIX_SRC_SetDirAtten_fx(
BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
const Word16 SrcInd, /* i : Source index */
@@ -796,23 +774,28 @@ ivas_error TDREND_MIX_SRC_SetPlayState(
const TDREND_PlayStatus_t PlayStatus /* i : Play state */
);
+// ivas_error TDREND_SRC_SPATIAL_SetGain(
+// BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
+// const Word32 SrcGain_p /* i : Source gain */
+// );
+
void TDREND_SRC_REND_UpdateFiltersFromSpatialParams_fx(
- BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
- TDREND_SRC_REND_t *SrcRend_p, /* i/o: Source object */
- TDREND_SRC_SPATIAL_t *SrcSpatial_p, /* i : Spatial aspects of source */
- Word32 *hrf_left_prev, /* i/o: Left filter */
- Word16 *hrf_left_prev_e, /* i/o: Left filter exponent */
- Word32 *hrf_right_prev, /* i/o: Right filter */
- Word16 *hrf_right_prev_e, /* i/o: Right filter exponent */
- Word32 *hrf_left_delta, /* o : Left filter interpolation delta */
- Word16 *hrf_left_delta_e, /* o : Left filter interpolation delta exponent */
- Word32 *hrf_right_delta, /* o : Right filter interpolation delta */
- Word16 *hrf_right_delta_e, /* o : Right filter interpolation delta exponent */
- Word16 *intp_count, /* o : Interpolation count */
- Word16 *filterlength, /* o : Length of filters */
- Word16 *itd, /* o : ITD value */
- Word32 *Gain, /* o : Gain value Q30 */
- TDREND_SRC_t *Src_p /* i/o: Source pointer */
+ BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
+ TDREND_SRC_REND_t *SrcRend_p, /* i/o: Source object */
+ TDREND_SRC_SPATIAL_t *SrcSpatial_p, /* i : Spatial aspects of source */
+ Word32 *hrf_left_prev, /* i/o: Left filter */
+ Word16 *hrf_left_prev_e, /* i/o: Left filter exponent */
+ Word32 *hrf_right_prev, /* i/o: Right filter */
+ Word16 *hrf_right_prev_e, /* i/o: Right filter exponent */
+ Word32 *hrf_left_delta, /* o : Left filter interpolation delta */
+ Word16 *hrf_left_delta_e, /* o : Left filter interpolation delta exponent */
+ Word32 *hrf_right_delta, /* o : Right filter interpolation delta */
+ Word16 *hrf_right_delta_e, /* o : Right filter interpolation delta exponent */
+ Word16 *intp_count, /* o : Interpolation count */
+ Word16 *filterlength, /* o : Length of filters */
+ Word16 *itd, /* o : ITD value */
+ Word32 *Gain, /* o : Gain value Q30 */
+ TDREND_SRC_t *Src_p /* i/o: Source pointer */
);
ivas_error TDREND_SRC_Alloc(
@@ -828,36 +811,31 @@ void TDREND_SRC_Init_fx(
const TDREND_PosType_t PosType /* i : Position type specifier */
);
-/* ----- Object renderer - vec ----- */
void TDREND_SPATIAL_VecInit_fx(
- Word32 *Pos_p, /* o : Output vector */
- const Word32 PosX, /* i : X value */
- const Word32 PosY, /* i : Y value */
- const Word32 PosZ /* i : Z value */
+ Word32 *Pos_p, /* o : Output vector */
+ const Word32 PosX, /* i : X value */
+ const Word32 PosY, /* i : Y value */
+ const Word32 PosZ /* i : Z value */
);
-/*! r: Euclidian norm value */
-
void TDREND_SPATIAL_VecNormalize_fx(
- const Word32 *Vec_p_fx, /* i : Input vector Qx */
- Word16 q, /* i : Input vector Q-factor */
- Word32 *VecNorm_p_fx /* o : Normalised output vector Q30 */
+ const Word32 *Vec_p_fx, /* i : Input vector Qx */
+ Word16 q, /* i : Input vector Q-factor */
+ Word32 *VecNorm_p_fx /* o : Normalised output vector Q30 */
);
Word16 TDREND_SPATIAL_EvalOrthonormOrient_fx(
- Word32 *FrontVecON_p_fx, /* i/o: Normalized front vector Q30 */
- Word32 *UpVecON_p_fx, /* i/o: Normalized up vector Q30 */
- Word32 *RightVecON_p_fx, /* i/o: Normalized right vector Q30 */
- const Word32 *FrontVec_p_fx, /* i : Input front vector Qx */
- const Word32 *UpVec_p_fx, /* i : Input up vector orient_q */
- const Word16 orient_q /* i : Input up Q-factor */
+ Word32 *FrontVecON_p_fx, /* i/o: Normalized front vector Q30 */
+ Word32 *UpVecON_p_fx, /* i/o: Normalized up vector Q30 */
+ Word32 *RightVecON_p_fx, /* i/o: Normalized right vector Q30 */
+ const Word32 *FrontVec_p_fx, /* i : Input front vector Qx */
+ const Word32 *UpVec_p_fx, /* i : Input up vector orient_q */
+ const Word16 orient_q /* i : Input up Q-factor */
);
-/* ----- Object renderer - mix ----- */
-
ivas_error TDREND_MIX_AddSrc_fx(
BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
- Word16 *SrcInd, /* o : Source index */
+ Word16 *SrcInd, /* o : Source index */
const TDREND_PosType_t PosType /* i : Position type (absolute/relative) */
);
@@ -874,32 +852,30 @@ ivas_error TDREND_MIX_Init_fx(
BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
TDREND_HRFILT_FiltSet_t **hHrtfTD, /* i/o: HRTF data (initialized in case of NULL) */
const TDREND_MixSpatSpec_t *MixSpatSpec_p, /* i : Mixer spatial specification */
- const Word32 output_Fs /* i : Output sampling rate */
+ const Word32 output_Fs /* i : Output sampling rate */
);
- /* ----- Object renderer - sfx ----- */
-
void TDREND_Apply_ITD_fx(
- Word32 *input_fx, /* i : Input subframe to be time adjusted Qx */
- Word32 *out_left_fx, /* o : Output left channel with ITD applied Qx */
- Word32 *out_right_fx, /* o : Output right channel with ITD applied Qx */
- Word16 *previtd, /* i/o: Previous ITD value */
- const Word16 itd, /* i : Current subframe ITD value */
- Word32 *mem_itd_fx, /* i/o: ITD buffer memory Qx */
- const Word16 length /* i : Subframe length */
+ Word32 *input_fx, /* i : Input subframe to be time adjusted Qx */
+ Word32 *out_left_fx, /* o : Output left channel with ITD applied Qx */
+ Word32 *out_right_fx, /* o : Output right channel with ITD applied Qx */
+ Word16 *previtd, /* i/o: Previous ITD value */
+ const Word16 itd, /* i : Current subframe ITD value */
+ Word32 *mem_itd_fx, /* i/o: ITD buffer memory Qx */
+ const Word16 length /* i : Subframe length */
);
void TDREND_firfilt_fx(
- Word32 *signal_fx, /* i/o: Input signal / Filtered signal Qx */
- Word32 *filter_fx, /* i/o: FIR filter Qy */
- const Word16 filter_e, /* i : FIR filter exp */
- const Word32 *filter_delta_fx, /* i : FIR filter delta Qy */
- const Word16 intp_count, /* i : interpolation count */
- Word32 *mem_fx, /* i/o: filter memory Qx */
- const Word16 subframe_length, /* i : Length of signal */
- const Word16 filterlength, /* i : Filter length */
- const Word32 Gain_fx, /* i : Gain Q30 */
- const Word32 prevGain_fx /* i : Previous gain Q30 */
+ Word32 *signal_fx, /* i/o: Input signal / Filtered signal Qx */
+ Word32 *filter_fx, /* i/o: FIR filter Qy */
+ const Word16 filter_e, /* i : FIR filter exp */
+ const Word32 *filter_delta_fx, /* i : FIR filter delta Qy */
+ const Word16 intp_count, /* i : interpolation count */
+ Word32 *mem_fx, /* i/o: filter memory Qx */
+ const Word16 subframe_length, /* i : Length of signal */
+ const Word16 filterlength, /* i : Filter length */
+ const Word32 Gain_fx, /* i : Gain Q30 */
+ const Word32 prevGain_fx /* i : Previous gain Q30 */
);
@@ -912,39 +888,20 @@ ivas_error ivas_rend_openCrend_fx(
const AUDIO_CONFIG inConfig,
const AUDIO_CONFIG outConfig,
RENDER_CONFIG_DATA *hRendCfg,
-#ifdef FIX_CREND_SIMPLIFY_CODE
HRTFS_CREND_HANDLE hHrtfCrend,
-#else
- HRTFS_CREND_HANDLE hSetOfHRTF,
-#endif
HRTFS_STATISTICS_HANDLE hHrtfStatistics,
const Word32 output_Fs,
-#ifdef FIX_CREND_SIMPLIFY_CODE
const int16_t ext_rend_flag,
-#endif
const Word16 num_poses
);
-#ifdef FIX_CREND_SIMPLIFY_CODE
void ivas_rend_closeCrend_fx(
CREND_WRAPPER_HANDLE *pCrend
);
-#else
-void ivas_rend_closeCrend_fx(
- CREND_WRAPPER_HANDLE *pCrend,
- const Word16 num_poses
-);
-#endif
-#ifdef FIX_CREND_SIMPLIFY_CODE
ivas_error ivas_Crend_hrtf_init_fx(
HRTFS_CREND_DATA *hHrtf /* i/o: Crend HRTF handle */
);
-#else
-ivas_error ivas_hrtf_init(
- HRTFS_DATA *hHrtf /* i/o: HRTF handle */
-);
-#endif
ivas_error ivas_rend_initCrendWrapper_fx(
CREND_WRAPPER_HANDLE *pCrend,
@@ -1006,7 +963,7 @@ ivas_error ivas_reverb_open_fx(
);
void ivas_reverb_close_fx(
- REVERB_HANDLE *hReverb /* i/o: Reverberator handle */
+ REVERB_HANDLE *hReverb /* i/o: Reverberator handle */
);
ivas_error ivas_reverb_process_fx(
@@ -1036,15 +993,15 @@ void ivas_rev_delay_line_feed_sample_fx(
);
void ivas_rev_delay_line_get_sample_blk_fx(
- ivas_rev_delay_line_t *pDelay, /* i : the delay line */
- const UWord16 blk_size, /* i : number of samples in the data block */
+ ivas_rev_delay_line_t *pDelay, /* i : the delay line */
+ const UWord16 blk_size, /* i : number of samples in the data block */
Word32 *output /* i/o: amples gotten out of delay line, and amplified by set gainin */
);
void ivas_rev_delay_line_feed_sample_blk_fx(
- ivas_rev_delay_line_t *pDelay, /* i/o: the delay line */
- const UWord16 blk_size, /* i : number of samples in the input data block */
- Word32 *input /* i : the samples to feed Q11 */
+ ivas_rev_delay_line_t *pDelay, /* i/o: the delay line */
+ const UWord16 blk_size, /* i : number of samples in the input data block */
+ Word32 *input /* i : the samples to feed Q11 */
);
void ivas_reverb_iir_filt_init(
@@ -1063,7 +1020,7 @@ void ivas_reverb_iir_filt_2taps_feed_blk_fx(
ivas_rev_iir_filter_t *iirFilter, /* i/o: IIR filter */
const UWord16 blk_size, /* i : size */
const Word32 *input, /* i : input buffer */
- Word32 *output /* i : output buffer */
+ Word32 *output /* o : output buffer */
);
UWord16 int_log2(
@@ -1124,6 +1081,7 @@ void ivas_reverb_define_window_fft_fx(
const Word16 transitionLength,
const Word16 spectrumLength
);
+
Word16 ivas_reverb_calc_color_filters_fx(
const Word32 *pTargetL,
const Word32 *pTargetR,
@@ -1191,7 +1149,6 @@ void ivas_shoebox_init(
shoebox_config_t *cal
);
-
void ivas_shoebox_set_scene (
shoebox_obj_t *obj,
shoebox_output_t *ER_PARAMS,
@@ -1221,7 +1178,8 @@ ivas_error ivas_er_compute_reflections(
ivas_error ivas_er_encoder_init(
er_struct_t *reflections
-);
+);
+
ivas_error ivas_er_process(
er_struct_t *reflections,
const Word16 frame_size,
@@ -1230,6 +1188,7 @@ ivas_error ivas_er_process(
const AUDIO_CONFIG inConfig
);
+
/*---------------------------------------------------------------------------------*
* Rotation Prototypes
*-----------------------------------------------------------------------------------*/
@@ -1276,7 +1235,7 @@ void rotateAziEle_fx_frac_az_el(
const Word16 isPlanar /* i : is roation planar and elevation meaningless? */
);
-void rotateAziEle_fixed(
+void rotateAziEle_fx32(
Word16 azi_in, /* i : output elevation */
Word16 ele_in, /* i : input elevation */
Word32 *azi, /* o : rotated azimuth */
@@ -1322,7 +1281,7 @@ void ivas_combined_orientation_set_to_start_index(
COMBINED_ORIENTATION_HANDLE hCombinedOrientationData /* i/o: combined orientation handle */
);
-void rotateFrame_shd_cldfb(
+void rotateFrame_shd_cldfb_fx(
Word32 Cldfb_RealBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i/o: unrotated HOA3 signal buffer in cldfb domain real part */
Word32 Cldfb_ImagBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i/o: unrotated HOA3 signal buffer in cldfb domain imag part */
Word32 Rmat[3][3], /* i : real-space rotation matrix */
@@ -1331,7 +1290,7 @@ void rotateFrame_shd_cldfb(
const Word16 shd_rot_max_order /* i : split-order rotation method */
);
-void rotateFrame_sd_cldfb_fixed(
+void rotateFrame_sd_cldfb_fx(
Word32 Rmat[3][3], /* i : real-space rotation matrix */
Word32 Cldfb_RealBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i/o: unrotated HOA3 signal buffer in cldfb domain real part */
Word32 Cldfb_ImagBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i/o: unrotated HOA3 signal buffer in cldfb domain imag part */
@@ -1341,7 +1300,7 @@ void rotateFrame_sd_cldfb_fixed(
const Word16 nb_band /* i : number of CLDFB bands to process */
);
-ivas_error ivas_external_orientation_open(
+ivas_error ivas_external_orientation_open_fx(
EXTERNAL_ORIENTATION_HANDLE *hExtOrientationData, /* o : external orientation handle */
const Word16 num_subframes /* i : number of subframes */
);
@@ -1349,10 +1308,10 @@ ivas_error ivas_external_orientation_open(
void ivas_external_orientation_close_fx(
EXTERNAL_ORIENTATION_HANDLE *hExtOrientationData /* i/o: external orientation handle */
);
-ivas_error ivas_combined_orientation_open(
- COMBINED_ORIENTATION_HANDLE *hCombinedOrientationData, /* o : combined orientation handle */
- const Word32 fs, /* i : sampling rate */
- const Word16 num_subframes /* i : number of subframes */
+ivas_error ivas_combined_orientation_open_fx(
+ COMBINED_ORIENTATION_HANDLE *hCombinedOrientationData, /* o : combined orientation handle */
+ const Word32 fs, /* i : sampling rate */
+ const Word16 num_subframes /* i : number of subframes */
);
void ivas_combined_orientation_close_fx(
@@ -1447,10 +1406,10 @@ ivas_error ivas_orient_trk_GetTrackedRotation_fx(
);
ivas_error ivas_orient_trk_Process_fx(
- ivas_orient_trk_state_t *pOTR, /* i/o: orientation tracker handle */
- IVAS_QUATERNION absRot, /* i : absolute head rotation */
- Word32 updateRate_fx, /* i : rotation update rate [Hz] */
- IVAS_QUATERNION *pTrkRot /* o : tracked rotation */
+ ivas_orient_trk_state_t *pOTR, /* i/o: orientation tracker handle */
+ IVAS_QUATERNION absRot, /* i : absolute head rotation */
+ Word32 updateRate_fx, /* i : rotation update rate [Hz] */
+ IVAS_QUATERNION *pTrkRot /* o : tracked rotation */
);
@@ -1461,16 +1420,16 @@ ivas_error ivas_orient_trk_Process_fx(
ivas_error ivas_mcmasa_ana_open(
MCMASA_ANA_HANDLE *hMcMasaPtr, /* i/o: McMASA data handle pointer */
const AUDIO_CONFIG inConfig, /* i : Input config */
- Word32 input_Fs /* i : Sampling frequency */
+ Word32 input_Fs /* i : Sampling frequency */
);
void ivas_mcmasa_ana_fx(
- MCMASA_ANA_HANDLE hMcMasa, /* i/o: McMASA encoder handle */
- Word32 data[][L_FRAME48k], /* i/o: Input / transport audio signals */
+ MCMASA_ANA_HANDLE hMcMasa, /* i/o: McMASA encoder handle */
+ Word32 data[][L_FRAME48k], /* i/o: Input / transport audio signals */
Word16 q_data,
- const Word16 input_frame, /* i : Input frame size */
- const Word16 nchan_transport, /* i : Number of transport channels */
- const Word16 nchan_inp /* i : Number of input channels */
+ const Word16 input_frame, /* i : Input frame size */
+ const Word16 nchan_transport, /* i : Number of transport channels */
+ const Word16 nchan_inp /* i : Number of input channels */
);
void ivas_mcmasa_ana_close(
@@ -1479,30 +1438,32 @@ void ivas_mcmasa_ana_close(
ivas_error ivas_omasa_ana_open(
OMASA_ANA_HANDLE *hOMasaPtr, /* i/o: OMASA data handle pointer */
- Word32 input_Fs, /* i : Sampling frequency */
- UWord16 total_num_objects /* i : Number of objects */
+ Word32 input_Fs, /* i : Sampling frequency */
+ UWord16 total_num_objects /* i : Number of objects */
);
void ivas_omasa_ana_fx(
OMASA_ANA_HANDLE hOMasa, /* i/o: OMASA analysis handle */
- Word32 data_in_f_fx[][L_FRAME48k], /* i/o: Input / transport audio signals */
+ Word32 data_in_f_fx[][L_FRAME48k], /* i/o: Input / transport audio signals */
Word16 *q,
- const Word16 input_frame, /* i : Input frame size */
- const Word16 nchan_transport, /* i : Number of transport channels */
- const Word16 nchan_ism /* i : Number of objects for parameter analysis*/
+ const Word16 input_frame, /* i : Input frame size */
+ const Word16 nchan_transport, /* i : Number of transport channels */
+ const Word16 nchan_ism /* i : Number of objects for parameter analysis*/
);
void ivas_omasa_ana_close(
OMASA_ANA_HANDLE *hOMasa /* i/o: analysis OMASA handle */
);
+
void computeIntensityVector_ana_fx(
- const Word16 *band_grouping, /* i : Band grouping for estimation */
- Word32 Cldfb_RealBuffer[FOA_CHANNELS][CLDFB_NO_CHANNELS_MAX], /* i : Real part of input signal Qx */
- Word32 Cldfb_ImagBuffer[FOA_CHANNELS][CLDFB_NO_CHANNELS_MAX], /* i : Imag part of input sig Qx */
- const Word16 num_frequency_bands, /* i : Number of frequency bands */
- Word32 intensity_real[DIRAC_NUM_DIMS][MASA_FREQUENCY_BANDS], /* o : Intensity */
+ const Word16 *band_grouping, /* i : Band grouping for estimation */
+ Word32 Cldfb_RealBuffer[FOA_CHANNELS][CLDFB_NO_CHANNELS_MAX], /* i : Real part of input signal Qx */
+ Word32 Cldfb_ImagBuffer[FOA_CHANNELS][CLDFB_NO_CHANNELS_MAX], /* i : Imag part of input sig Qx */
+ const Word16 num_frequency_bands, /* i : Number of frequency bands */
+ Word32 intensity_real[DIRAC_NUM_DIMS][MASA_FREQUENCY_BANDS], /* o : Intensity */
Word16 q_intensity_real[MASA_FREQUENCY_BANDS],
- Word16 inp_q );
+ Word16 inp_q
+);
void computeReferencePower_ana_fx(
const Word16 *band_grouping, /* i : Band grouping for estimation */
@@ -1526,7 +1487,7 @@ void ivas_create_masa_out_meta_fx(
Word16 energyRatio_q,
Word16 spreadCoherence_q,
Word16 surroundingCoherence_q
- );
+);
ivas_error ivas_dirac_ana_open_fx(
DIRAC_ANA_HANDLE *hDirACPtr, /* i/o: DIRAC data handle pointer */
@@ -1534,11 +1495,11 @@ ivas_error ivas_dirac_ana_open_fx(
);
void ivas_dirac_ana_fx(
- DIRAC_ANA_HANDLE hDirAC, /* i/o: DIRAC analysis handle */
- Word32 data_in_fx[][L_FRAME48k], /* i/o: Input / transport audio signals */
- const Word16 input_frame, /* i : Input frame size */
+ DIRAC_ANA_HANDLE hDirAC, /* i/o: DIRAC analysis handle */
+ Word32 data_in_fx[][L_FRAME48k], /* i/o: Input / transport audio signals */
+ const Word16 input_frame, /* i : Input frame size */
const Word16 nchan_transport, /* i : Number of transport channels */
- const Word16 data_q /*i : Q of data_in_fx*/
+ const Word16 data_q /* i : Q of data_in_fx */
);
void ivas_dirac_ana_close_fx(
@@ -1559,14 +1520,15 @@ void ivas_prerend_merge_masa_metadata_fx(
ivas_error masaPrerendOpen_fx(
MASA_PREREND_HANDLE *hMasaPrerendPtr, /* o : handle to the opened prerenderer */
- Word16 numTransports, /* i : number of transport channels */
- Word32 input_Fs /* i : signal sampling rate */
+ Word16 numTransports, /* i : number of transport channels */
+ Word32 input_Fs /* i : signal sampling rate */
);
void masaPrerendClose_fx(
MASA_PREREND_HANDLE *hMasaPrerendPtr /* i/o: prerenderer handle to be closed */
);
+
/*----------------------------------------------------------------------------------*
* Split rendering
*----------------------------------------------------------------------------------*/
diff --git a/lib_rend/ivas_render_config_fx.c b/lib_rend/ivas_render_config_fx.c
index 00bd26301881a84c612aca8ab5f7c1b3bdfb1087..3c43b59e1fa44312f199d2cd4af6d26c10e6229a 100644
--- a/lib_rend/ivas_render_config_fx.c
+++ b/lib_rend/ivas_render_config_fx.c
@@ -42,10 +42,8 @@
* Local constants
*-----------------------------------------------------------------------*/
-#define IVAS_REVERB_DEFAULT_PRE_DELAY 0.016f
-#define IVAS_REVERB_DEFAULT_PRE_DELAY_FX 2147484
-#define IVAS_REVERB_DEFAULT_INPUT_DELAY 0.1f
-#define IVAS_REVERB_DEFAULT_INPUT_DELAY_FX 13421773
+#define IVAS_REVERB_DEFAULT_PRE_DELAY_FX 2147484 // 0.016
+#define IVAS_REVERB_DEFAULT_INPUT_DELAY_FX 13421773 // 0.1
#define IVAS_REVERB_DEFAULT_USE_ER 0
@@ -156,11 +154,7 @@ ivas_error ivas_render_config_init_from_rom_fx(
move32();
( *hRenderConfig )->split_rend_config.poseCorrectionMode = ISAR_SPLIT_REND_POSE_CORRECTION_MODE_CLDFB;
move32();
-#ifdef FIX_HRTF_LOAD
( *hRenderConfig )->split_rend_config.rendererSelection = IVAS_BIN_RENDERER_TYPE_DEFAULT;
-#else
- ( *hRenderConfig )->split_rend_config.rendererSelection = ISAR_SPLIT_REND_RENDERER_SELECTION_DEFAULT;
-#endif
move32();
( *hRenderConfig )->split_rend_config.lc3plus_highres = 0;
move16();
diff --git a/lib_rend/ivas_reverb_fx.c b/lib_rend/ivas_reverb_fx.c
index b0c2210f387ef1fe22f3ae8b7276d56b81e5c8da..6ab0c7a6355243b49f77be91ab4511707aec6c93 100644
--- a/lib_rend/ivas_reverb_fx.c
+++ b/lib_rend/ivas_reverb_fx.c
@@ -78,10 +78,8 @@
#define MAX_NR_OUTPUTS ( 2 )
-#ifdef FIX_1942_ASSERTION_LOWSHELF
#define M60Q9 ( -30720 ) //-60 in Q9
#define M120Q8 ( -30720 ) //-120 in Q8
-#endif
static const Word16 init_loop_delay[IVAS_REV_MAX_NR_BRANCHES] = { 37, 31, 29, 23, 19, 17, 13, 11 };
static const Word16 default_loop_delay_48k[IVAS_REV_MAX_NR_BRANCHES] = { 2309, 1861, 1523, 1259, 1069, 919, 809, 719 };
@@ -132,12 +130,12 @@ static ivas_error calc_jot_t60_coeffs_fx( Word16 *pH_dB_fx, Word16 pH_dB_exp, co
/*-------------------------------------------------------------------------
- * wrap_rad_fixed()
+ * wrap_rad_fx()
*
*
*------------------------------------------------------------------------*/
-static Word16 wrap_rad_fixed(
+static Word16 wrap_rad_fx(
Word32 angle /* Q13 */ )
{
Word32 L_tmp = angle;
@@ -192,9 +190,9 @@ static void ivas_binaural_reverb_setPreDelay_fx(
return;
}
- IF( GT_16( delaySamples, REVERB_PREDELAY_MAX ) )
+ IF( GT_16( delaySamples, IVAS_REVERB_PREDELAY_MAX ) )
{
- hReverb->preDelayBufferLength = REVERB_PREDELAY_MAX;
+ hReverb->preDelayBufferLength = IVAS_REVERB_PREDELAY_MAX;
move16();
return;
@@ -260,7 +258,7 @@ static void ivas_binaural_reverb_setReverbTimes_fx(
tmp = add( mult( EVS_PI_FX, tmp ), EPSILLON_FX ); // to avoid divide by 0 issue
tmp_exp = sub( add( binCenterFreq_exp, 2 ), norm );
- sine_inp = wrap_rad_fixed( L_shl( tmp, sub( tmp_exp, 2 ) ) ); // Q13
+ sine_inp = wrap_rad_fx( L_shl( tmp, sub( tmp_exp, 2 ) ) ); // Q13
sine = getSinWord16( sine_inp ); // Q15
div1 = BASOP_Util_Divide1616_Scale( sine, tmp, &scale );
@@ -659,19 +657,12 @@ static ivas_error compute_t60_coeffs_fx(
{
Word16 bin_idx, loop_idx, tf_T60_len, len;
ivas_error error;
-#ifdef FIX_1942_ASSERTION_LOWSHELF
Word16 loop_delay_sec_fx, tmp, tmp_e;
-#else
- Word16 loop_delay_sec_fx, tmp;
-#endif
Word32 freq_Nyquist_fx = L_shr( output_Fs, 1 );
Word16 target_gains_db_fx[RV_LENGTH_NR_FC]; // Q8
Word16 norm_f_fx[RV_LENGTH_NR_FC];
Word16 *pCoeffs_a_fx, *pCoeffs_b_fx;
Word16 e;
-#ifndef FIX_1942_ASSERTION_LOWSHELF
- const Word16 min120q8 = -30720; // -120 in Q8
-#endif
error = IVAS_ERR_OK;
move32();
tf_T60_len = nr_fc_fft_filter;
@@ -697,17 +688,12 @@ static ivas_error compute_t60_coeffs_fx(
IF( EQ_32( pParams->pRt60_fx[bin_idx], 0 ) )
{
// If RT60 is 0, target gain is -120dB
-#ifdef FIX_1942_ASSERTION_LOWSHELF
target_gains_db_fx[bin_idx] = M120Q8;
move16();
-#else
- target_gains_db_fx[bin_idx] = min120q8;
-#endif
}
ELSE
{
tmp = BASOP_Util_Divide3232_Scale( L_deposit_h( loop_delay_sec_fx ), pParams->pRt60_fx[bin_idx], &e );
-#ifdef FIX_1942_ASSERTION_LOWSHELF
tmp_e = add( e, sub( 0, 5 ) ); // L_deposit_h( loop_delay_sec_fx ):Q0.31, pParams->pRt60_fx[bin_idx]:Q5.26
tmp_e = add( tmp_e, 6 ); // + Q6.9(M60Q9)
@@ -737,24 +723,6 @@ static ivas_error compute_t60_coeffs_fx(
}
}
}
-#else
- IF( LT_16( e, -1 ) )
- {
- target_gains_db_fx[bin_idx] = min120q8;
- }
- ELSE
- {
- tmp = shr( tmp, sub( 5, e ) ); // scaling tmp to Q15
- target_gains_db_fx[bin_idx] = mult( shr( min120q8, 1 ), tmp ); // Q8
- }
- }
- // gain < - 120 ? -120: gain
- IF( LT_16( target_gains_db_fx[bin_idx], -30720 ) )
- {
- target_gains_db_fx[bin_idx] = -30720;
- move16();
- }
-#endif
}
pCoeffs_a_fx = &pParams->pT60_filter_coeff_fx[add( shl( i_mult( len, loop_idx ), 1 ), len )]; // Q14
@@ -1038,13 +1006,11 @@ static ivas_error calc_jot_t60_coeffs_fx(
L_tmp = BASOP_util_Pow2( L_deposit_h( tmp_fx ), exph, &e );
lin_gain_hf_fx = extract_l( L_shr( L_tmp, sub( 16, e ) ) );
-#ifdef FIX_1942_ASSERTION_LOWSHELF
IF( EQ_16( lin_gain_hf_fx, 0 ) )
{
lin_gain_hf_fx = 1;
move16();
}
-#endif
/* call low-pass iir shelf */
calc_low_shelf_first_order_filter_fx( pCoeffB_fx, pCoeffA_fx, f0_fx, lin_gain_lf_fx, lin_gain_hf_fx );
@@ -2196,8 +2162,8 @@ void ivas_binaural_reverb_processSubframe_fx(
/* Add the data from the end of the loop to the beginning, with an attenuation factor
* according to RT60. This procedure generates an IIR decaying response. The response
* is decorrelated later on. */
- v_multc_fixed( hReverb->loopBufReal_fx[bin] + hReverb->loopBufLength[bin], hReverb->loopAttenuationFactor_fx[bin], hReverb->loopBufReal_fx[bin], numSlots );
- v_multc_fixed( hReverb->loopBufImag_fx[bin] + hReverb->loopBufLength[bin], hReverb->loopAttenuationFactor_fx[bin], hReverb->loopBufImag_fx[bin], numSlots );
+ v_multc_fx( hReverb->loopBufReal_fx[bin] + hReverb->loopBufLength[bin], hReverb->loopAttenuationFactor_fx[bin], hReverb->loopBufReal_fx[bin], numSlots );
+ v_multc_fx( hReverb->loopBufImag_fx[bin] + hReverb->loopBufLength[bin], hReverb->loopAttenuationFactor_fx[bin], hReverb->loopBufImag_fx[bin], numSlots );
}
/* 2) Apply the determined pre-delay to the input audio, and add the delayed audio to the loop. */
@@ -2228,13 +2194,13 @@ void ivas_binaural_reverb_processSubframe_fx(
{
IF( s_and( ch, 1 ) )
{
- v_add_fixed_no_hdrm( hReverb->preDelayBufferReal_fx[idx], inReal[ch][sample], hReverb->preDelayBufferReal_fx[idx], hReverb->numBins );
- v_add_fixed_no_hdrm( hReverb->preDelayBufferImag_fx[idx], inImag[ch][sample], hReverb->preDelayBufferImag_fx[idx], hReverb->numBins );
+ v_add_fx_no_hdrm( hReverb->preDelayBufferReal_fx[idx], inReal[ch][sample], hReverb->preDelayBufferReal_fx[idx], hReverb->numBins );
+ v_add_fx_no_hdrm( hReverb->preDelayBufferImag_fx[idx], inImag[ch][sample], hReverb->preDelayBufferImag_fx[idx], hReverb->numBins );
}
ELSE
{
- v_sub_fixed_no_hdrm( hReverb->preDelayBufferReal_fx[idx], inImag[ch][sample], hReverb->preDelayBufferReal_fx[idx], hReverb->numBins );
- v_add_fixed_no_hdrm( hReverb->preDelayBufferImag_fx[idx], inReal[ch][sample], hReverb->preDelayBufferImag_fx[idx], hReverb->numBins );
+ v_sub_fx_no_hdrm( hReverb->preDelayBufferReal_fx[idx], inImag[ch][sample], hReverb->preDelayBufferReal_fx[idx], hReverb->numBins );
+ v_add_fx_no_hdrm( hReverb->preDelayBufferImag_fx[idx], inReal[ch][sample], hReverb->preDelayBufferImag_fx[idx], hReverb->numBins );
}
}
idx = add( idx, 1 ) % hReverb->preDelayBufferLength;
@@ -2264,20 +2230,20 @@ void ivas_binaural_reverb_processSubframe_fx(
SWITCH( phaseShiftTypePr[tapIdx] )
{
case 0: /* 0 degrees phase */
- v_add_fixed_no_hdrm( hReverb->outputBufferReal_fx[bin][ch], tapRealPr_fx[tapIdx], hReverb->outputBufferReal_fx[bin][ch], numSlots );
- v_add_fixed_no_hdrm( hReverb->outputBufferImag_fx[bin][ch], tapImagPr_fx[tapIdx], hReverb->outputBufferImag_fx[bin][ch], numSlots );
+ v_add_fx_no_hdrm( hReverb->outputBufferReal_fx[bin][ch], tapRealPr_fx[tapIdx], hReverb->outputBufferReal_fx[bin][ch], numSlots );
+ v_add_fx_no_hdrm( hReverb->outputBufferImag_fx[bin][ch], tapImagPr_fx[tapIdx], hReverb->outputBufferImag_fx[bin][ch], numSlots );
BREAK;
case 1: /* 90 degrees phase */
- v_sub_fixed_no_hdrm( hReverb->outputBufferReal_fx[bin][ch], tapImagPr_fx[tapIdx], hReverb->outputBufferReal_fx[bin][ch], numSlots );
- v_add_fixed_no_hdrm( hReverb->outputBufferImag_fx[bin][ch], tapRealPr_fx[tapIdx], hReverb->outputBufferImag_fx[bin][ch], numSlots );
+ v_sub_fx_no_hdrm( hReverb->outputBufferReal_fx[bin][ch], tapImagPr_fx[tapIdx], hReverb->outputBufferReal_fx[bin][ch], numSlots );
+ v_add_fx_no_hdrm( hReverb->outputBufferImag_fx[bin][ch], tapRealPr_fx[tapIdx], hReverb->outputBufferImag_fx[bin][ch], numSlots );
BREAK;
case 2: /* 180 degrees phase */
- v_sub_fixed_no_hdrm( hReverb->outputBufferReal_fx[bin][ch], tapRealPr_fx[tapIdx], hReverb->outputBufferReal_fx[bin][ch], numSlots );
- v_sub_fixed_no_hdrm( hReverb->outputBufferImag_fx[bin][ch], tapImagPr_fx[tapIdx], hReverb->outputBufferImag_fx[bin][ch], numSlots );
+ v_sub_fx_no_hdrm( hReverb->outputBufferReal_fx[bin][ch], tapRealPr_fx[tapIdx], hReverb->outputBufferReal_fx[bin][ch], numSlots );
+ v_sub_fx_no_hdrm( hReverb->outputBufferImag_fx[bin][ch], tapImagPr_fx[tapIdx], hReverb->outputBufferImag_fx[bin][ch], numSlots );
BREAK;
default: /* 270 degrees phase */
- v_add_fixed_no_hdrm( hReverb->outputBufferReal_fx[bin][ch], tapImagPr_fx[tapIdx], hReverb->outputBufferReal_fx[bin][ch], numSlots );
- v_sub_fixed_no_hdrm( hReverb->outputBufferImag_fx[bin][ch], tapRealPr_fx[tapIdx], hReverb->outputBufferImag_fx[bin][ch], numSlots );
+ v_add_fx_no_hdrm( hReverb->outputBufferReal_fx[bin][ch], tapImagPr_fx[tapIdx], hReverb->outputBufferReal_fx[bin][ch], numSlots );
+ v_sub_fx_no_hdrm( hReverb->outputBufferImag_fx[bin][ch], tapRealPr_fx[tapIdx], hReverb->outputBufferImag_fx[bin][ch], numSlots );
BREAK;
}
}
@@ -2382,7 +2348,7 @@ static ivas_error ivas_binaural_reverb_open_fx(
hReverb->blockSize = numCldfbSlotsPerFrame;
move16();
- FOR( k = 0; k < REVERB_PREDELAY_MAX + 1; k++ )
+ FOR( k = 0; k < IVAS_REVERB_PREDELAY_MAX + 1; k++ )
{
set32_fx( hReverb->preDelayBufferReal_fx[k], 0, hReverb->numBins );
set32_fx( hReverb->preDelayBufferImag_fx[k], 0, hReverb->numBins );
@@ -2504,11 +2470,7 @@ ivas_error ivas_binaural_reverb_init_fx(
}
ELSE
{
-#ifdef FIX_1995_REVERB_INIT
FOR( bin = 0; bin < numBins; bin++ )
-#else
- FOR( bin = 0; bin < CLDFB_NO_CHANNELS_MAX; bin++ )
-#endif
{
revTimes[bin] = defaultTimes[bin];
move32();
@@ -2518,11 +2480,7 @@ ivas_error ivas_binaural_reverb_init_fx(
preDelay = 10;
}
-#ifdef FIX_1995_REVERB_INIT
FOR( bin = 0; bin < numBins; bin++ )
-#else
- FOR( bin = 0; bin < CLDFB_NO_CHANNELS_MAX; bin++ )
-#endif
{
/* Adjust the room effect parameters when the reverberation time is less than a threshold value, to avoid
spectral artefacts with the synthetic reverberator. */
diff --git a/lib_rend/ivas_reverb_iir_filter_fx.c b/lib_rend/ivas_reverb_iir_filter_fx.c
index e09ec70055ccf358879a06134430ec4765136b78..981a40466474a3b428557c4682243db0234cb885 100644
--- a/lib_rend/ivas_reverb_iir_filter_fx.c
+++ b/lib_rend/ivas_reverb_iir_filter_fx.c
@@ -116,6 +116,8 @@ void ivas_reverb_iir_filt_set(
return;
}
+
+
/*-----------------------------------------------------------------------------------------*
* Function ivas_reverb_iir_filt_2taps_feed_blk()
*
@@ -126,7 +128,7 @@ void ivas_reverb_iir_filt_2taps_feed_blk_fx(
ivas_rev_iir_filter_t *iirFilter, /* i/o: IIR filter */
const UWord16 blk_size, /* i : size */
const Word32 *input, /* i : input buffer Q30 */
- Word32 *output /* i/o : output buffer Q30 */
+ Word32 *output /* i/o: output buffer Q30 */
)
{
UWord16 i;
diff --git a/lib_rend/ivas_reverb_utils_fx.c b/lib_rend/ivas_reverb_utils_fx.c
index d527bb66385ba5a41e7d0aa03a4fd40c519a827b..6433da8195e7deba7874d9b3b325bf6cc9b350f2 100644
--- a/lib_rend/ivas_reverb_utils_fx.c
+++ b/lib_rend/ivas_reverb_utils_fx.c
@@ -153,10 +153,10 @@ static void ivas_reverb_set_energies(
{
Word16 freq_idx;
Word32 input_fc_fx[FFT_SPECTRUM_SIZE];
- Word32 output_fc_fx[CLDFB_NO_CHANNELS_MAX];
- Word32 avg_pwr_left_fx[CLDFB_NO_CHANNELS_MAX]; // Q28
- Word32 avg_pwr_right_fx[CLDFB_NO_CHANNELS_MAX]; // Q28
- const Word32 cldfb_band_width = 26214400; // 400 in Q16
+ Word32 output_fc_fx[IVAS_CLDFB_NO_CHANNELS_MAX];
+ Word32 avg_pwr_left_fx[IVAS_CLDFB_NO_CHANNELS_MAX]; // Q28
+ Word32 avg_pwr_right_fx[IVAS_CLDFB_NO_CHANNELS_MAX]; // Q28
+ const Word32 cldfb_band_width = 26214400; // 400 in Q16
Word16 s;
Word16 temp;
@@ -168,17 +168,17 @@ static void ivas_reverb_set_energies(
input_fc_fx[freq_idx] = L_shl( L_mult( temp, freq_idx ), add( 15, s ) );
}
- FOR( freq_idx = 0; freq_idx < CLDFB_NO_CHANNELS_MAX; freq_idx++ )
+ FOR( freq_idx = 0; freq_idx < IVAS_CLDFB_NO_CHANNELS_MAX; freq_idx++ )
{
output_fc_fx[freq_idx] = L_add( L_shr( cldfb_band_width, 1 ), L_shl( Mult_32_16( cldfb_band_width, freq_idx ), 15 ) );
}
// Avg Energy Left
- ivas_reverb_interp_on_freq_grid_fx( avg_pwr_len, input_fc_fx, avg_pwr_l, CLDFB_NO_CHANNELS_MAX, output_fc_fx, avg_pwr_left_fx );
+ ivas_reverb_interp_on_freq_grid_fx( avg_pwr_len, input_fc_fx, avg_pwr_l, IVAS_CLDFB_NO_CHANNELS_MAX, output_fc_fx, avg_pwr_left_fx );
// Avg Energy Right
- ivas_reverb_interp_on_freq_grid_fx( avg_pwr_len, input_fc_fx, avg_pwr_r, CLDFB_NO_CHANNELS_MAX, output_fc_fx, avg_pwr_right_fx );
+ ivas_reverb_interp_on_freq_grid_fx( avg_pwr_len, input_fc_fx, avg_pwr_r, IVAS_CLDFB_NO_CHANNELS_MAX, output_fc_fx, avg_pwr_right_fx );
- FOR( freq_idx = 0; freq_idx < CLDFB_NO_CHANNELS_MAX; freq_idx++ )
+ FOR( freq_idx = 0; freq_idx < IVAS_CLDFB_NO_CHANNELS_MAX; freq_idx++ )
{
avg_pwr_left[freq_idx] = avg_pwr_left_fx[freq_idx];
avg_pwr_right[freq_idx] = avg_pwr_right_fx[freq_idx];
diff --git a/lib_rend/ivas_rom_TdBinauralRenderer.h b/lib_rend/ivas_rom_TdBinauralRenderer.h
index 7c6fdc5b20ad60da44f1c941b53b7a6cca34b2d5..ed4ece7b68432695c1a93c241c62a93bc2733b81 100644
--- a/lib_rend/ivas_rom_TdBinauralRenderer.h
+++ b/lib_rend/ivas_rom_TdBinauralRenderer.h
@@ -43,8 +43,6 @@
*------------------------------------------------------------------------*/
/* TD renderer default HRIR model */
-#ifdef USE_TDREND_16BIT_ROM
-
extern const Word16 defaultHRIR_rom_latency_s_Q_fx;
extern const Word32 defaultHRIR_rom_latency_s_fx;
extern const Word16 defaultHRIR_rom_model_configuration[6];
@@ -98,50 +96,4 @@ extern const Word16 defaultHRIR_rom_ITD_elevBsStart[4];
extern const Word16 defaultHRIR_rom_ITD_azimBsLen[4];
extern const Word16 defaultHRIR_rom_ITD_azimBsStart[4];
-#else /* USE_TDREND_16BIT_ROM */
-
-extern const Word32 defaultHRIR_rom_latency_s_fx; /* Q31 */
-#ifdef FIX_989_TD_REND_ROM
-extern const Word16 defaultHRIR_rom_model_configuration[6];
-#else
-extern const Word16 defaultHRIR_rom_azimDim2[15]; /* Q0 */
-#endif
-extern const Word16 defaultHRIR_rom_azimDim3[15]; /* Q0 */
-extern const Word16 defaultHRIR_rom_azim_start_idx[15]; /* Q0 */
-extern const Word16 defaultHRIR_rom_azimSegSamples[1]; /* Q0 */
-extern const Word16 defaultHRIR_rom_azimShapeIdx[15]; /* Q0 */
-extern const Word16 defaultHRIR_rom_azimShapeSampFactor[15]; /* Q0 */
-extern const Word32 defaultHRIR_rom_elevKSeq_fx[13]; /* Q22 */
-
-extern const UWord32 defaultHRIR_rom_AlphaL48_fx[470 * 128]; /*Q30*/
-extern const UWord32 defaultHRIR_rom_AlphaR48_fx[470 * 128]; /*Q30*/
-extern const UWord32 defaultHRIR_rom_AlphaL32_fx[470 * 86]; /*Q30*/
-extern const UWord32 defaultHRIR_rom_AlphaR32_fx[470 * 86]; /*Q30*/
-extern const UWord32 defaultHRIR_rom_AlphaL16_fx[470 * 43]; /*Q30*/
-extern const UWord32 defaultHRIR_rom_AlphaR16_fx[470 * 43]; /*Q30*/
-extern const UWord32 defaultHRIR_rom_EL48_fx[HRTF_MODEL_N_SECTIONS * 470]; /*Q28*/
-extern const UWord32 defaultHRIR_rom_ER48_fx[HRTF_MODEL_N_SECTIONS * 470]; /*Q28*/
-extern const UWord32 defaultHRIR_rom_EL32_fx[HRTF_MODEL_N_SECTIONS * 470]; /*Q28*/
-extern const UWord32 defaultHRIR_rom_ER32_fx[HRTF_MODEL_N_SECTIONS * 470]; /*Q28*/
-extern const UWord32 defaultHRIR_rom_EL16_fx[HRTF_MODEL_N_SECTIONS * 470]; /*Q28*/
-extern const UWord32 defaultHRIR_rom_ER16_fx[HRTF_MODEL_N_SECTIONS * 470]; /*Q28*/
-#ifdef FIX_989_TD_REND_ROM
-extern const Word16 defaultHRIR_rom_elevBsLen[4];
-extern const Word16 defaultHRIR_rom_elevBsStart[4];
-#endif
-extern const Word32 defaultHRIR_rom_elevBsShape_fx[36]; /*Q30*/
-extern const Word32 defaultHRIR_rom_azimBsShape_fx[21]; /*Q30*/
-extern const UWord32 defaultHRIR_rom_ITD_W_fx[658]; /*Q25*/
-extern const Word32 defaultHRIR_rom_ITD_elevKSeq_fx[16]; /*Q22*/
-extern const Word32 defaultHRIR_rom_ITD_elevBsShape_fx[28]; /*Q30*/
-extern const Word32 defaultHRIR_rom_ITD_azimKSeq_fx[19]; /*Q22*/
-extern const Word32 defaultHRIR_rom_ITD_azimBsShape_fx[84]; /*Q30*/
-#ifdef FIX_989_TD_REND_ROM
-extern const Word16 defaultHRIR_rom_ITD_model_configuration[4];
-extern const Word16 defaultHRIR_rom_ITD_elevBsLen[4];
-extern const Word16 defaultHRIR_rom_ITD_elevBsStart[4];
-extern const Word16 defaultHRIR_rom_ITD_azimBsLen[4];
-extern const Word16 defaultHRIR_rom_ITD_azimBsStart[4];
-#endif
-#endif /* USE_TDREND_16BIT_ROM */
#endif
diff --git a/lib_rend/ivas_rom_TdBinauralRenderer_fx.c b/lib_rend/ivas_rom_TdBinauralRenderer_fx.c
index 0e9d8180874fdad64e7b280a61c3855514bfd22e..531c45f83ff655c5775f70eada06f56194777f4d 100644
--- a/lib_rend/ivas_rom_TdBinauralRenderer_fx.c
+++ b/lib_rend/ivas_rom_TdBinauralRenderer_fx.c
@@ -40,13 +40,9 @@
#define WMC_TOOL_SKIP
-#ifdef FIX_CREND_SIMPLIFY_CODE
#ifdef DEBUGGING
/* Generated on 31-Jul-2024 with Matlab version 9.9.0.2037887 (R2020b) Update 8 by tmu on MACI64 */
#endif
-#endif
-
-#ifdef USE_TDREND_16BIT_ROM
/*-------------------------------------------------------------------------
@@ -10210,10173 +10206,7 @@ const Word16 defaultHRIR_rom_ITD_elevKSeq_fx[16] = {
-23040, -19968, -16896, -13824, -10752, -7680, -4608, -1536, 1536, 4608, 7680, 10752, 13824, 16896, 19968, 23040,
};
-#else
-
-/*-------------------------------------------------------------------------
- * TD Binaural rendering related ROM tables
- *------------------------------------------------------------------------*/
-/* TD renderer default HRIR model */
-const Word32 defaultHRIR_rom_latency_s_fx = 44741; /* Q31 */
-#ifdef FIX_989_TD_REND_ROM
-const Word16 defaultHRIR_rom_model_configuration[6] = {
-1, /* UseItdModel */
-15, /* elevDim3 */
-470, /* AlphaN */
-1, /* num_unique_azim_splines */
-4, /* elevSegSamples */
-128, /* K_48k */
-};
-const Word16 defaultHRIR_rom_elevBsLen[4] = {
-5, 9, 13, 9,
-};
-const Word16 defaultHRIR_rom_elevBsStart[4] = {
-0, 5, 14, 27,
-};
-#else
-const Word16 defaultHRIR_rom_azimDim2[15] = {
-1, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 1,
- };
-#endif
- const Word16 defaultHRIR_rom_azimDim3[15] = {
-1, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 1,
- };
-const Word16 defaultHRIR_rom_azim_start_idx[15] = {
-0, 1, 37, 73, 109, 145, 181, 217, 253, 289, 325, 361, 397, 433, 469,
- };
-const Word16 defaultHRIR_rom_azimSegSamples[1] = {
-10,
- };
-const Word16 defaultHRIR_rom_azimShapeIdx[15] = {
--1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1,
- };
-const Word16 defaultHRIR_rom_azimShapeSampFactor[15] = {
--1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -1,
- };
-
-const Word32 defaultHRIR_rom_elevKSeq_fx[13]/*Q22*/ = {
--377487360, -314572800, -251658240, -188743680, -125829120, -62914560, 0, 62914560, 125829120, 188743680, 251658240, 314572800, 377487360
-};
-const Word32 defaultHRIR_rom_elevBsShape_fx[36]/*Q30*/ = {
-1073741824,452984832,134217728,16777216,0,0,532676608,637534208,490733568,268435456,113246208,33554432,4194304,0,0,85284184,279620256,490733568,626349376,619358912,503316480,336942432,178956976,75497472,22369622,2796202,0,0,2796202,22369622,75497472,178956976,338340512,514501280,657107648,715827904
-};
-const Word32 defaultHRIR_rom_azimBsShape_fx[21]/*Q30*/ = {
-715827904,705627328,677173184,633686656,578388928,514501280,445244928,373841120,303511008,237475904,178956976,130459632,91625968,61382240,38654704,22369622,11453246,4831838,1431655,178956,0
- };
-
-const UWord32 defaultHRIR_rom_AlphaL48_fx[470 * 128] /*Q30*/= {
-0x08946b90,0x01b51044,0x0a3be7e0,0x08059140,0x08956970,0x08977810,0x0902edf0,0x092d8070,0x09514fc0,0x09037030,0x08d22420,0x089c8890,0x086fde70,0x084b4aa0,0x0835ecf0,0x08249b70,0x08116dd0,0x08085020,0x07e77410,0x0773bf10,0x095b7f10,0x01583d2c,0xfee45aca,0xfbd573d8,0x02d72514,
-0xff01b3a9,0xfc39200c,0xfc096278,0xfc3dc844,0xfd17e024,0xfc2228c0,0xfbd986e0,0xfc0bded8,0xff02a7ec,0x03e2cc90,0xfc372258,0xfe92ec80,0xfe04a288,0x08e19d20,0x0a0943f0,0x09fe5830,0x0a947bb0,0x0bc07e70,0x0c4e2300,0x0c63c590,0x0ba72080,0x0af61460,0x0a475af0,0x09bd4da0,0x09633a90,
-0x0933ee10,0x0906f870,0x08c19050,0x08b9f000,0x08125690,0x0850f510,0x06f136a8,0xfecea9ee,0x041a5f78,0x0324e7d4,0x0320b0d8,0x02092f50,0x03aa0f60,0x0410f470,0x037ff800,0x01f8011c,0x03dc8dbc,0x05a77198,0x03c94958,0x04436480,0x0298d478,0x0237f498,0x068949c8,0x0242ea64,0x07d952a0,
-0x0bc0ce10,0x0af51ad0,0x0c4fe4f0,0x0e9011e0,0x0f9b6ef0,0x0fead610,0x0e81c550,0x0d28b5b0,0x0c0f8f00,0x0b0412a0,0x0a497200,0x09dcd440,0x097ea8e0,0x08fd84f0,0x08f109b0,0x07943bb8,0x082c0b40,0x04a0e558,0x012e894e,0x0194b69e,0x01c456cc,0x01e917c4,0x00335c69,0x01f3984c,0x00231440,
-0x033aa9a4,0xff7bfc4b,0x02c45048,0x0018472a,0x01678198,0x019671c0,0x01f7255e,0x0127b1ee,0x03fe3df0,0x00f2d39b,0x076a9240,0x0c463f20,0x0bff3570,0x0e2d9980,0x11ec3260,0x13b00d80,0x13ea7640,0x115b7da0,0x0f0a50a0,0x0d191820,0x0b770370,0x0a667dd0,0x09fa3600,0x096cc8d0,0x08c2d510,
-0x08a2b6d0,0x07337980,0x06f2c640,0x03c058b0,0xffde1337,0x025052d4,0xffab3160,0x00cee703,0x00c07aaa,0x00a76d4d,0x0024fb1d,0x00153dfb,0x01085b52,0x0039fecd,0x011c03a8,0x015e7096,0x018cbf10,0x0101a0aa,0x01a361ba,0x03b8e424,0x027a2360,0x0bb7e9f0,0x10b37e20,0x108bc1c0,0x120a9fe0,
-0x1380e3c0,0x14a9f8a0,0x15700da0,0x15fb32a0,0x1534eec0,0x12087ea0,0x11f01060,0x10b22c80,0x0ec06bd0,0x0e1a7220,0x0cd29110,0x0bd71ed0,0x09003290,0x08a0aa70,0x049ce3e0,0xffd0204e,0x0253e3c8,0x009803e4,0x00abe363,0xffee6f01,0x00446d53,0x0044b542,0x00a877b4,0x00feb38d,0x008cda38,
-0x01119fce,0x009ed653,0x022c9e80,0x00f7d604,0x028b8cd8,0x028ca24c,0x00af1521,0x085fe240,0x131ca2a0,0x125352e0,0x1524cac0,0x15eea660,0x167a9380,0x15ee4020,0x154e59a0,0x13f58880,0x11c53960,0x11526880,0x11159c20,0x11404760,0x0ffab710,0x0e6d64d0,0x0d9166d0,0x0a346f10,0x09e064b0,
-0x04d14758,0x00d78178,0x01923ea6,0x00ee1a29,0x01fe1452,0x01763f46,0x008059e0,0x00b5024a,0x007553d5,0x0056ff43,0x007311a7,0x00737e12,0x01b04bca,0x011abb0a,0x03bfe704,0x02a67180,0x051c26f0,0x00f211c4,0x0b770940,0x18d6e840,0x1902d140,0x1c8db540,0x19769cc0,0x17f3d460,0x1669cde0,
-0x142074e0,0x13de3e00,0x16240ce0,0x17a20620,0x17aae800,0x1667c700,0x13665540,0x1020e260,0x0d78f260,0x0a1b0900,0x0a4cd990,0x048af5c0,0x0235c8ac,0x02f6ec08,0x00bba57d,0x01303cdc,0x011f69ec,0x0092a8a4,0x007b26f6,0x00b5e6bf,0x01173c5a,0x00f1f25d,0x009d3070,0x009fb5cb,0xfedf9bb6,
-0x037b95f8,0xff3b0da5,0x0560ec28,0x01eb9f56,0x0f331a20,0x1a9f83c0,0x189837e0,0x1825dfe0,0x1646a240,0x15ea4b60,0x159ed820,0x15d68e20,0x15c66dc0,0x14fa2c00,0x14b897a0,0x13c58560,0x11f1b780,0x10602480,0x0e268370,0x0bf04910,0x096eae30,0x09833c80,0x054f9fd0,0xffa84895,0x022e24c8,
-0x01c6514a,0x01791232,0x013b7744,0x008d359a,0x015592bc,0x00351d23,0x01e6ce3a,0x013d1738,0x00abcfc6,0x0281b798,0x00faa108,0x0434bd00,0x0115c04c,0x05890da0,0x03a74e24,0x107e8300,0x17e2adc0,0x15fc8220,0x15d474a0,0x137da700,0x12cefbc0,0x139df000,0x1298cbc0,0x135b8ba0,0x14ff5c20,
-0x137ddf20,0x11cee600,0x0ffe7720,0x0cfa9ec0,0x0a8b0220,0x094d67c0,0x08698430,0x0985a4a0,0x068c82c8,0x00ad00b2,0x03c59b54,0x0126c60c,0x011c57b0,0x01b6a31c,0x017121c0,0x00d7b628,0x017d830a,0xffbc0bd5,0x013191b8,0x01420536,0x0206d550,0x022b0974,0x01d8dffc,0x01dd2cc4,0x07038a58,
-0xfe2ce4ca,0x0b86ba20,0x1132ed60,0x0e73a6c0,0x0ef214f0,0x0f1a15a0,0x0f87d1b0,0x0fd13bb0,0x0ed18060,0x0da3fe70,0x0d034f00,0x0d1f7f90,0x0d2b48e0,0x0cb57cf0,0x0c2203e0,0x0afae720,0x09f084e0,0x090a2920,0x0a546dc0,0x053abae0,0x00a94def,0x04378cd0,0x00f82adc,0x02075c5c,0x01e3ac92,
-0x01271768,0x00ebc881,0x0065d20c,0x034aa6f8,0x0180a24e,0x01796fc4,0x026a3ce4,0x01c6f980,0x02f6eda0,0x02f9b12c,0x05b79388,0x040690a0,0x089ba980,0x0ca6f1a0,0x0b89dec0,0x0d4bc220,0x0d80e4c0,0x0e2ae150,0x0e9a8870,0x0e4ca0d0,0x0e1bb610,0x0dbf1bb0,0x0c787110,0x0b2c2240,0x0993fcc0,
-0x0926f660,0x08578350,0x07fae140,0x072cd620,0x09034bf0,0x062e11f0,0x0196d54e,0x02254604,0x021e71c0,0x025e5f60,0x00085956,0x023db8b0,0xffd8b3a5,0x040a9df0,0xfecd207c,0x02f06a5c,0xfff01789,0x0163fee8,0x01f5fb5e,0x01fad2f6,0x014021be,0x04d85d78,0xfccb9c64,0x08e0b770,0x0a1fbb10,
-0x09d45cc0,0x0a8e3d00,0x0ac5a0d0,0x0b443700,0x0bc4bf20,0x0b287610,0x0a979700,0x0a1ab520,0x09728aa0,0x08dcd070,0x07e52a98,0x07f79a88,0x07db4db8,0x08002210,0x07a8f1c0,0x082457b0,0x0723dd38,0xfe767a60,0x04cfb048,0x03ed0d5c,0x03fcfea0,0x02b49400,0x04db9ee0,0x05742028,0x04813318,
-0x02a0ef70,0x0507adb0,0x06de3210,0x04648ed8,0x050089e0,0x032d1c8c,0x02ce98f8,0x07018828,0x021fd1c0,0x0c114600,0x096fda30,0x0a0795b0,0x0a220240,0x0a45bb90,0x0a63cc70,0x0aa360f0,0x0a48a4c0,0x0a0f7330,0x09cb8460,0x099d3030,0x09725c60,0x09342810,0x0950f220,0x094bc550,0x094f6910,
-0x09482980,0x08edaa30,0x0b5c5880,0x018d9b3c,0xfe8485dc,0xfabe30f0,0x037817a4,0xfea6dc00,0xfb16e458,0xfad06e18,0xfb236ce8,0xfc3abd04,0xfb03c990,0xfacf8b20,0xfb2941a8,0xfea30fb0,0x0482fda0,0xfb39a4b0,0xfe413b62,0x0aff1bf0,0x17a7dac0,0x10bfe4a0,0x18efece0,0x1622da60,0x177e13c0,
-0x17a5bac0,0x18a7c400,0x1908c3e0,0x1963dea0,0x18963540,0x18172340,0x1791eb60,0x1724cf00,0x16c37600,0x16784b20,0x163c4240,0x1602f2c0,0x15d2f980,0x159569c0,0x14824260,0x17057c40,0x0f5924e0,0x09b28ef0,0xfe9e5720,0x11733020,0x0a146630,0xff92565e,0xffa02c9b,0xffdf126c,0x0143992e,
-0x005ee753,0x0054f3ee,0x00cf1d3d,0x0a847f30,0x135ff400,0x0014e039,0x0a0848a0,0x086be5f0,0x1a5ca300,0x1a8672a0,0x1c11dc20,0x1d601320,0x20669b80,0x219b6180,0x21cd0500,0x1fb48e40,0x1df1efa0,0x1c570840,0x1b054da0,0x19fd2ca0,0x194479c0,0x1894dde0,0x17e2c3a0,0x17783800,0x1652f0e0,
-0x1597c9a0,0x14d1d4e0,0x07066c30,0x0f3cb530,0x0eddf350,0x0d14c0d0,0x0b695e70,0x0ed060c0,0x0f40a6f0,0x0f967b60,0x0ce97980,0x100fb860,0x1182c620,0x0ec4d120,0x105d5cc0,0x0d9504e0,0x0e19e630,0x14f48d00,0x10468980,0x187e1ce0,0x1d938ca0,0x1f1a9980,0x2244d980,0x284b8180,0x2a8acb00,
-0x2b4b7b80,0x27760a80,0x24037d40,0x21461c80,0x1eba1940,0x1cc79880,0x1b472b20,0x19efd960,0x188cf900,0x17c6c060,0x150fdfa0,0x146654a0,0x0f322990,0x0a5710c0,0x0914bd50,0x0997a720,0x0940d1e0,0x05b4e140,0x08fb2220,0x04e92bc0,0x0ad57c30,0x053bf0e8,0x09bd1f70,0x0646b330,0x090db410,
-0x099f3960,0x0ae0a330,0x0ae39260,0x10c80880,0x0cda63d0,0x18e297c0,0x1efc6600,0x2227b900,0x27d1b780,0x31c6ad00,0x35b0d2c0,0x35e39340,0x2ebcefc0,0x28bf7480,0x24120e80,0x20426640,0x1d2eb660,0x1b5b75c0,0x197049c0,0x17864b60,0x166f3920,0x13361120,0x10ed2d80,0x0c025580,0x045c6c98,
-0x06fdc7d0,0x01eded1e,0x0380db50,0x02d0e9b0,0x02486b94,0x01988354,0x00cc10e4,0x036486a4,0x01fa2aac,0x042922f8,0x05409b78,0x06c109e0,0x07950d78,0x0856df60,0x0e9127d0,0x143204a0,0x2106bc80,0x28fc15c0,0x2d87dc00,0x326ba300,0x3626a000,0x39741b40,0x3c8ed040,0x3e03d140,0x3b9dd580,
-0x32511840,0x319c3e40,0x2ea41e40,0x2ad5f380,0x2800b880,0x248b69c0,0x21620c00,0x1b200020,0x176d48a0,0x0ffff7b0,0x06350618,0x082122b0,0x0562e190,0x03daa080,0x021433b8,0x01d013d0,0x01e80ab0,0x0290fb6c,0x03ec6fa4,0x0368c8f4,0x051ca0e8,0x0555e5e8,0x08f08280,0x08f41620,0x0c4b5070,
-0x106eb860,0x106621a0,0x1f682ea0,0x317c0240,0x3539a9c0,0x3b79a800,0x3e8b4040,0x40901900,0x4068ab00,0x402b2500,0x3cf7f500,0x36ecb280,0x359f3240,0x339c24c0,0x31d71300,0x2cefe940,0x27f57400,0x244c0200,0x1d3a9f60,0x1a5e3cc0,0x118b28e0,0x09ffbad0,0x08ee18c0,0x06fc4e38,0x070deaa0,
-0x05808c10,0x03460084,0x033a127c,0x02e2e5c0,0x02904020,0x03a7faa0,0x03970e20,0x075d4588,0x07525378,0x0e52c850,0x0e1e9fc0,0x15098460,0x130a3f40,0x29259200,0x3d381700,0x4083f980,0x43ba3c00,0x3ff338c0,0x3d6b56c0,0x3cb0ac40,0x3a31b040,0x3b12f680,0x3ef90580,0x3ecfdb80,0x3c044900,
-0x3746bd00,0x300cf2c0,0x2932d100,0x23f60900,0x1c834c80,0x19e0b200,0x10ab6060,0x0ccb6a10,0x0b6976c0,0x07f4c5a0,0x0718ef38,0x05dab248,0x04597728,0x035d91f8,0x0405c138,0x05de4d18,0x04404bc0,0x0457be50,0x051ef350,0x041e3670,0x0e19ee30,0x0a9208f0,0x156426e0,0x17de4c20,0x2f746e00,
-0x3b573500,0x3b901840,0x3654b700,0x38522480,0x3b4fb440,0x3ec0e200,0x3eda5000,0x3dfc67c0,0x3a610f40,0x39318d00,0x3627a800,0x30f655c0,0x2c90f380,0x26aeb0c0,0x1fbfdd20,0x1a247d40,0x17e5e6c0,0x12ca56c0,0x0825b1f0,0x0bc35e00,0x0a68af50,0x07f4d4e8,0x06ef3180,0x04acfd78,0x0547b238,
-0x03c0d7f0,0x0a3c5410,0x066cf258,0x04fb7748,0x094d7600,0x067e9418,0x0f5c01b0,0x0b231300,0x148b7040,0x1a6dba60,0x2e9b5640,0x38935d40,0x39a60000,0x385ba200,0x36f5cc80,0x367ea5c0,0x398dbe40,0x36b74e80,0x377a01c0,0x393fdc80,0x354b2340,0x309e7d40,0x2bcac480,0x2431fcc0,0x1e80cd80,
-0x1ab117c0,0x1a78f600,0x1b2d33c0,0x1787ea20,0x0aa05bd0,0x0f77ba30,0x08aaaab0,0x07d67298,0x09468530,0x0739b318,0x05190048,0x06f041e8,0x03b66fb0,0x0747b090,0x0816a330,0x0b08a430,0x0c033460,0x0befba10,0x0d344260,0x1ced7060,0x0fea3e40,0x26501480,0x2e15d100,0x2c1aa6c0,0x2c59ad40,
-0x2eaba540,0x2fdf0040,0x30928200,0x2f40b240,0x2ced7540,0x2af4e540,0x2949a340,0x27625300,0x24b32680,0x21f56040,0x1ed261e0,0x1c263380,0x1be56700,0x1df922c0,0x149dfe60,0x0c6bad40,0x11b83ee0,0x0bb8a500,0x0c20b020,0x09769870,0x06bedb60,0x067c7de8,0x04f171b8,0x0c559240,0x0851fd30,
-0x08b86bf0,0x0b895ab0,0x0af689a0,0x0f6d3310,0x100b2340,0x18ee0ee0,0x15f23fc0,0x1f1079a0,0x2575fc40,0x256b1840,0x28db2f80,0x2a18d340,0x2b9221c0,0x2cdb6a00,0x2b9893c0,0x2a905380,0x2941f100,0x261f3040,0x22f81700,0x1f11d020,0x1ddc1e20,0x1bf17e60,0x1a5867e0,0x18b96220,0x1b1cfe60,
-0x16b17540,0x0e52aa10,0x0d6d3e20,0x0cb42800,0x0c8898c0,0x06a2b168,0x0c062680,0x055132e8,0x0f89e3e0,0x0541c690,0x0c4e16f0,0x06b32260,0x097fde10,0x0c142600,0x0d7ee3a0,0x0dbdffb0,0x159e6d00,0x06163630,0x1f391760,0x1f9830c0,0x2012bb80,0x2151d640,0x22187f00,0x2331f040,0x2499e180,
-0x23233c40,0x21f3b780,0x20d8cc40,0x1f595020,0x1dfa89a0,0x1bdf8d60,0x1b95a4c0,0x1b0519e0,0x1ad463a0,0x1a3bdc20,0x1a288940,0x19991e60,0x06dde208,0x14436a00,0x144081a0,0x12ab6060,0x105773a0,0x15740ae0,0x16811320,0x1650c360,0x11bc48a0,0x16dec3a0,0x186e8e20,0x1367b840,0x1579b660,
-0x11872c80,0x122a6900,0x1a682e60,0x1555df00,0x224e9640,0x1da82360,0x1f30a0e0,0x1f488200,0x1fb41420,0x1ff80d80,0x208aba00,0x1fb7b640,0x1f314280,0x1e939c00,0x1e291220,0x1dc435c0,0x1d40cac0,0x1d680140,0x1d59d760,0x1d4240c0,0x1d3aff80,0x1c247420,0x207376c0,0x13c63460,0x0bd0aa30,
-0xfc5c28cc,0x176c5060,0x0c815090,0xfdd0cf70,0xfd93ba90,0xfdf2adb0,0x0034eee0,0xfe6cc8ce,0xfe84e79a,0xff53ca4d,0x0ca99e70,0x19ab31a0,0xfe207adc,0x0baadf30,0x220b2240,0x0d5be8d0,0x15c5f6c0,0x093efa30,0x0cbd7680,0x0c9c3520,0x0d3db900,0x0d329080,0x0d36bdb0,0x0d360110,0x0d1f1370,
-0x0d108c00,0x0d0ce850,0x0cf11a30,0x0cc67820,0x0c74ee50,0x0c381d80,0x0c04ac50,0x0bd15a60,0x0bb8f900,0x0bec61e0,0x093435a0,0x14f3cba0,0x1805db60,0x1843eb20,0x127bf860,0x178f7f00,0x17b74560,0x183d7360,0x180405a0,0x170c47c0,0x18b15dc0,0x194ada00,0x192e6060,0x17ffff60,0x119ee200,
-0x190fcde0,0x19af4e40,0x1bd7da00,0x0f162070,0x0db3b5c0,0x0f96a4e0,0x106dd640,0x10aae580,0x10b48f60,0x1089d240,0x10259100,0x0ffc3b80,0x101107a0,0x0fd369a0,0x0f32ca30,0x0e35f140,0x0d638870,0x0ce02580,0x0c46ddf0,0x0c59a030,0x0b0e64c0,0x0cdb36e0,0x15f29400,0x0e9e24b0,0x0fed26b0,
-0x0edbf3c0,0x0f9b5e00,0x0dc7e2d0,0x0cfd7850,0x0e4f15a0,0x10734680,0x0dc946a0,0x0b6ed830,0x0e987fa0,0x0ef4cd20,0x11e95360,0x132f1100,0x0eab2ec0,0x15a3c340,0x10ebf780,0x0cb6b860,0x11b47d60,0x1380a900,0x14221220,0x140b43a0,0x13c5e4e0,0x137d26c0,0x134d07a0,0x13178360,0x128b24e0,
-0x11998b20,0x0fcc4920,0x0e557150,0x0d323930,0x0bf9c1e0,0x0be9d750,0x095e2f20,0x0c946e50,0x0f9a8680,0x0d077a10,0x0c9b60e0,0x0b0ea830,0x0bc972b0,0x09c8e320,0x0b29cfe0,0x08104990,0x0cd5b5e0,0x089974c0,0x0ca3abf0,0x0c3a9a50,0x0d93b030,0x0e7cd830,0x1135fbc0,0x10764140,0x15fef300,
-0x13018100,0x0e2e4df0,0x13870bc0,0x1697bd00,0x17cc0a60,0x17c14ee0,0x16b62e00,0x15b06fc0,0x152cd240,0x1539d980,0x14a426c0,0x12c5e560,0x0fc54f60,0x0d8e9000,0x0be8a960,0x0a3826f0,0x098331b0,0x0799c440,0x0981f3d0,0x0ac80910,0x069309c8,0x06eff490,0x04ac2068,0x03656f00,0x029afc70,
-0x02d16684,0x02938480,0x0296dbc4,0x03a12798,0x0400e1a8,0x05db3c98,0x08401be0,0x0b935ab0,0x0bc23b20,0x0d7a5b40,0x1a2d45e0,0x0dc721e0,0x0d1f9ce0,0x158d7120,0x1a726fa0,0x1a2c8460,0x1baf9700,0x1dbb7940,0x203dff40,0x209df640,0x1f810fc0,0x1d11ef00,0x1bed2580,0x1cb602a0,0x1878ccc0,
-0x1618aea0,0x142682e0,0x13424840,0x0e8e85b0,0x0e40d170,0x0edcf1a0,0x092cc970,0x0884db30,0x0618fca0,0x0542b540,0x0395307c,0x03914c84,0x0382b4cc,0x048330d8,0x04abde90,0x05acf668,0x0829ab10,0x085e38f0,0x0d08cbf0,0x0dde8a50,0x1460e7c0,0x21d60140,0x1bf19f00,0x10a337c0,0x195d19c0,
-0x1c4196e0,0x1f47fc20,0x221d8940,0x23f8e640,0x285a4a80,0x28c5b700,0x27545dc0,0x255b8fc0,0x20cb6640,0x1a58ad00,0x15d69680,0x12a0c860,0x0fa9b9e0,0x111ce180,0x0ea84d30,0x111c2ce0,0x1299c720,0x0d84edd0,0x0b3547c0,0x0680a688,0x04e346e8,0x04a04ae0,0x03d4431c,0x046ebe28,0x052e84e0,
-0x05e34c50,0x070abe50,0x096793a0,0x0c9c2a00,0x0dfa00b0,0x13fca560,0x166e2f80,0x25027c40,0x1ef33680,0x0c76ed50,0x109e4540,0x0bcdd8c0,0x14ce7400,0x18f9bd40,0x1d77a5c0,0x249d8900,0x267ac780,0x20503b80,0x160f6860,0x0e8e60c0,0x0a3d2660,0x09e5f390,0x0b243000,0x0d538170,0x0dc9fcf0,
-0x09f8a640,0x0f987d20,0x10e40780,0x0d315420,0x0f21d190,0x0a91f8e0,0x08c73510,0x086c74c0,0x073f4ee8,0x074d7378,0x0a4d1d90,0x06d92398,0x080b7bc0,0x0a0ee880,0x106d38e0,0x105ef640,0x1b94ac00,0x163f48c0,0x264988c0,0x170fe8a0,0x04803f28,0x0e2b9670,0x0fd428a0,0x18a4e640,0x1ee22820,
-0x25f17940,0x2388f380,0x1f81ed80,0x19ec1a20,0x16c8e500,0x1404c620,0x11c8b5a0,0x10bd03e0,0x0f824a20,0x0c70f2c0,0x0c7e88e0,0x09f1bd00,0x10066060,0x14c810a0,0x109b1ce0,0x0f87a160,0x0c54a590,0x0a7e3f30,0x08b6aff0,0x06385418,0x08467230,0x10c5e2a0,0x09b28ea0,0x088d6930,0x08d66fe0,
-0x0c756380,0x0dc54300,0x15247d40,0x16618880,0x228016c0,0x133dbac0,0x0de85f60,0x189818a0,0x1a30ad20,0x22eb1ec0,0x26190740,0x2659a900,0x23da5500,0x1f153b00,0x183c7900,0x156bcc00,0x13158ee0,0x11b800a0,0x10a22bc0,0x10a3bc00,0x0f5e2f70,0x12e0de40,0x11828cc0,0x156b69e0,0x174bed40,
-0x12a28ea0,0x10bee1a0,0x0f110320,0x0de05400,0x0b361250,0x093323a0,0x0a05bc60,0x0ccd5c70,0x0c102490,0x0d24d4b0,0x0ea03ad0,0x0fe2ef60,0x119b84a0,0x15dfd1e0,0x15edfec0,0x2b24e900,0x1bdb1cc0,0x1820fc40,0x207bbd00,0x220f8100,0x26366480,0x26e98900,0x25873280,0x25f57100,0x25ad6100,
-0x23b0d740,0x1e036e60,0x18ccdea0,0x150963e0,0x11f7d360,0x1116c640,0x114c0520,0x1594d680,0x14e0b4a0,0x182145e0,0x1a735d80,0x14f9d5e0,0x16191a20,0x118fb940,0x0df5e0b0,0x0bf3ac70,0x0bdc32d0,0x0c046100,0x0dd4c4d0,0x0e08dc70,0x0e7eb530,0x0ebe66d0,0x11cde5a0,0x146851c0,0x1714b660,
-0x1a7fb9a0,0x1ede5ac0,0x1f347ac0,0x1d2b4f00,0x214ba500,0x22191440,0x21f35fc0,0x214b0bc0,0x21511500,0x1f571720,0x1d459a60,0x1b7c2200,0x1b32a120,0x1ae70480,0x1a5b63c0,0x1a26bf40,0x1a244980,0x190ab460,0x18743680,0x15739700,0x17694640,0x19d2dde0,0x16e67940,0x15368340,0x1397c8c0,
-0x12af1020,0x12134320,0x1155e140,0x10bf3720,0x133c3520,0x101267e0,0x124e4340,0x10f8ef00,0x1445b460,0x16d89160,0x1ab37960,0x1b7808a0,0x237de500,0x1daac9e0,0x1b731160,0x1cd38460,0x1cbfcf00,0x1d751b20,0x1deb16a0,0x1eac5f80,0x1ea88e00,0x1f0867c0,0x1f201920,0x1f474680,0x1f4f4360,
-0x1fbad780,0x1e6fc260,0x1d44ecc0,0x1c10a0c0,0x1b954f00,0x19e5d020,0x1a99f0a0,0x1ccd7340,0x1932b860,0x1ac612e0,0x19712040,0x19537b40,0x17f217c0,0x17758900,0x19d183e0,0x1ad93140,0x196b95e0,0x16fae320,0x18a542c0,0x19c2f660,0x1be81ec0,0x1d84bfa0,0x1bd7b6a0,0x21d2b180,0x16dfbc20,
-0x19221180,0x192f7620,0x191cd9e0,0x195ac620,0x19722aa0,0x19954c40,0x199c8b60,0x19a6f6a0,0x19b90640,0x19b88180,0x19b453a0,0x19ddf200,0x196c3220,0x193e10e0,0x18e40c80,0x18a91400,0x18456b20,0x164899e0,0x21212e40,0x22d45640,0x1e340da0,0x1efd0720,0x2274e3c0,0x1eba6680,0x1f5103a0,
-0x1ec50800,0x1e187c00,0x1f6df600,0x1ff1a1e0,0x1fa6f220,0x22e31740,0x1f0f41a0,0x1f528bc0,0x23ef52c0,0x1ae6ca60,0xfa6ff298,0xff1495c8,0xf79aa180,0xfaebdfb8,0xf98fbd48,0xf9cae1c0,0xf8f546c0,0xf8a723b0,0xf80f5b20,0xf90b5e08,0xf98f63d0,0xfa1e0348,0xfa598648,0xfa857210,0xfa89ae58,
-0xfa7663c0,0xfa78d818,0xfa869080,0xfab4a1d8,0xfbe15d60,0xf9194ef8,0x003fc415,0x0719cdf8,0x166cd440,0xfd3751f4,0x0608f400,0x149ea300,0x145d7ca0,0x13ffa8a0,0x12aa0da0,0x13370be0,0x134e7180,0x12dcf3a0,0x05ba9878,0xfb35fe80,0x15198b40,0x07106958,0x0bf00d20,0xf80775d8,0xf8dcde60,
-0xf781dab0,0xf6f8eca0,0xf460ea70,0xf3671590,0xf29b2520,0xf56d3850,0xf75f75b0,0xf9161828,0xf9fc7538,0xfa64b118,0xfa368800,0xf9e26c80,0xf9e55f00,0xfa03e968,0xfaea1228,0xfbcebc28,0xfbbe8db0,0x0af78830,0x0119dae4,0x002416b0,0x0266ad70,0x03c2bf5c,0xff025385,0xfec27930,0xfdef3628,
-0x00fe0a99,0xfd63d8bc,0xfc629440,0x004d7653,0xff15b5be,0x0319ff7c,0x0285d0a8,0xfbda7fb8,0x0109d756,0xfbc3e160,0xf77f0f60,0xf71afdc0,0xf55b5010,0xef80b4c0,0xed967be0,0xeb7193a0,0xf1180a00,0xf54a3430,0xf8219608,0xf9bb32e8,0xfa449a30,0xf9f88f60,0xf95840e0,0xf94f4238,0xf97f6538,
-0xfbc67df8,0xfc76e580,0x00cbe932,0x043866b0,0x05282e50,0x0386b7bc,0x02dcc030,0x05a93cd8,0x01b3640e,0x061e3488,0x0018258c,0x05772578,0x00decd69,0x0447caf0,0x0251f6dc,0x036478f8,0x03542938,0x03973e14,0xfed8c9f4,0x055dc140,0xfd6d4a40,0xf8db20e0,0xf6621250,0xf22c7580,0xe8174b80,
-0xe462f960,0xe2559b80,0xecdc3ec0,0xf473c5e0,0xf9907d50,0xfbe0dd48,0xfcfe52c4,0xfbae9938,0xfa4cf8e0,0xfa158458,0xfa2ecf90,0xfcb9cde0,0xff178829,0x025ed934,0x07279378,0x040b74c8,0x066a5a40,0x03a3dfa8,0x02f54a24,0x02a89d14,0x02a5a0f0,0x0359f000,0x01b76f3c,0x0275b82c,0x0173dfd2,
-0x0233fad4,0x032e32dc,0x03aaf10c,0x04345498,0x003928ae,0xfd11d630,0xf11a87a0,0xeef71d60,0xed07d340,0xeb1f81e0,0xe8a4f020,0xe677a2e0,0xe29be520,0xe22ba480,0xe58754a0,0xf3edb490,0xeffea060,0xeffae920,0xf1d02580,0xf0ec9cb0,0xf1de4020,0xf3b76c70,0xf9670c38,0xfc063a54,0x014102d6,
-0x091f2530,0x0556d370,0x04864980,0x0423c7e0,0x042c8220,0x035efd60,0x03857060,0x02e7379c,0x01fb5284,0x0150dfaa,0x009a55f4,0x01e977dc,0x000bf7f7,0x01c62b9e,0x00c30b1f,0xffb07483,0x0b7ddb60,0xf94fcc18,0xe19b9a80,0xe03292e0,0xe1b1e400,0xe2a340a0,0xe2442a40,0xdffbc580,0xe14f7420,
-0xe3d4b4e0,0xe9cecfa0,0xe6b108c0,0xe4804440,0xe1ec8f00,0xe5abb400,0xea8449c0,0xee805820,0xf7bd2a40,0xfadd64b8,0x01f8b046,0x07bd5970,0x059abf68,0x040c2f48,0x0161adbc,0x00a9a5fd,0x01907d56,0x01583896,0x02988f70,0x05646db8,0x0415edd0,0x05d57198,0x059d5048,0x072acfe0,0x02477b4c,
-0x06f2c508,0x01e69e5a,0x07efb790,0xed87fb60,0xda195440,0xdcc3fcc0,0xe35a12e0,0xebd4d1c0,0xf0b5b310,0xec244bc0,0xee6bdca0,0xe86a3360,0xdb4634c0,0xd4ed7840,0xd3df13c0,0xd7356a40,0xde355e40,0xe4f911e0,0xea4a1200,0xf38685b0,0xf7aecf30,0x016c057c,0x03d3893c,0x04f3f178,0x07963880,
-0x04993aa8,0x04c236b8,0x06a88ca8,0x07a69160,0x07193f60,0x092b33a0,0x058951d0,0x05b22b10,0x06ad2820,0x0b315fa0,0x02b37010,0x09db7f50,0x0110486e,0x019715d6,0xe9526560,0xe63d7900,0xee29b800,0x063655e0,0xfc8eabc0,0xf46b5e30,0xeb29b1e0,0xe7bb2fa0,0xe2998f40,0xe0bbdde0,0xdc7b3700,
-0xdbc82800,0xdf4bef00,0xe3135960,0xe94a4a20,0xf0d33350,0xf6f08f30,0xf9da1ec8,0xff2fddd4,0x0b560f20,0x06cf1188,0x06eb2bd0,0x06e5e568,0x05859f10,0x063affc8,0x02f1b79c,0x06778f28,0x0c63d690,0x065a8998,0x05c3a448,0x0387f4ac,0x08769c70,0x01e963b6,0x09c4d210,0x049d1ed0,0xfda81394,
-0xea02d520,0xeb5ead20,0xef5096c0,0xf6412220,0xf96d7490,0xf9b93440,0xf0340400,0xee69aba0,0xe7716940,0xe0f420a0,0xe12f38c0,0xe3d55de0,0xe78e9b00,0xef0a7380,0xf4b2b640,0xf8139a88,0xf8c45808,0xf8f8d9d8,0xfe9ba20e,0x0d8b32e0,0x05e92cd8,0x0ac7c240,0x0a3d9e20,0x0695fcd8,0x0766bbc8,
-0x07851140,0x06e7ff08,0x0d9d2dc0,0x079c7b48,0x06a5b628,0x037dec18,0x04184610,0x062a0d00,0x08019300,0xf705b580,0x0e60ff60,0xf63b7fb0,0xf204e7d0,0xf8e8b4a8,0xfdd499e8,0xfcb734fc,0xfad74df0,0xf64c9250,0xf3f6ac70,0xf37d30d0,0xf3234900,0xf1110070,0xf0e41380,0xf2c99c40,0xf4e64700,
-0xf80a8560,0xfa9eb3f8,0xfca4471c,0xf9708f48,0x03eb26b4,0x0dcfc820,0x044c9ad8,0x09980770,0x066674c0,0x07be86a0,0x094cc890,0x0957d800,0x0b81f290,0x04bb2dd0,0x09d43f00,0x090b5830,0x04be4010,0x07e50e90,0x04bf1cd0,0x0738b920,0xff81c9e1,0x0aca47e0,0x012538f8,0xfbd24820,0xff366aa2,
-0xfe665e5c,0xfad1b6c0,0xf7f31600,0xf6093ab0,0xf5ab9a30,0xf52556f0,0xf4ecd030,0xf7e71680,0xfa964378,0xfdecc8a0,0xff071f57,0x011a210c,0x029e1660,0x02ddf6bc,0xfe1b82f8,0x0226fc04,0x0b4b4ba0,0x0b07cc70,0x0a79d3e0,0x098a2910,0x0f9aa4f0,0x0824dc40,0x0ff648f0,0x039da488,0x0f3878e0,
-0x07634ae0,0x0edc1260,0x0b8582d0,0x0bb35ab0,0x0c0b3590,0x0ec72d10,0x080675b0,0x1ef9d860,0xfe3b18ce,0xfe996a52,0xfebba630,0xfe29befe,0xfe665814,0xfe52f4b2,0xfdc6af48,0xff36ebab,0x008b9cab,0x019aba82,0x034a5b54,0x04cf1000,0x07609a50,0x06804a08,0x05dd7e00,0x04f24fd8,0x046b3fd8,
-0x03557c64,0x02d48c84,0x1a591260,0x0752ef38,0x062cb6a0,0x07ad93a0,0x0956d300,0x0111f1ae,0x00651027,0x00eb92e2,0x07275a28,0x010539c6,0xff036fd4,0x05c0bb08,0x04ae5e30,0x0b877d20,0x0ba84560,0x01d54d36,0x08299940,0xf6780350,0xfd1fe580,0xfb675790,0xfb7e5d98,0xfb68bc88,0xfb6810b8,
-0xfb409928,0xfc255cd4,0xfcd7bd04,0xfda6dca4,0xfe1cafb4,0xfe8680d0,0xff4366c7,0xfe63eed4,0xfdfd9f50,0xfd9378c8,0xfd33b834,0xfe2b15a2,0xf7f34360,0x08fac000,0x13b14760,0x28d59480,0x02ac0684,0x119fe480,0x25c37b00,0x2636c4c0,0x25a6bf00,0x22f210c0,0x2521c740,0x25461f80,0x2420bb80,
-0x121420a0,0x00637eba,0x27bcf1c0,0x15224240,0xf9ec1880,0x044c6aa0,0xfd6c3a00,0x07467e60,0x03ffcb58,0x04555230,0x038ac674,0x041c7168,0x042bde70,0x03de0854,0x03cb65dc,0x03a53318,0x0382cdc8,0x03700ed8,0x0376f240,0x03c0949c,0x03c33ec0,0x03e8da84,0x04189ba0,0x045de130,0x04178e58,
-0x066347f8,0xfdad3c78,0xf9a5d760,0xf7292f30,0xff74d465,0xf9dca088,0xf766b5b0,0xf711fdc0,0xf726c4d0,0xf82447a8,0xf68ca010,0xf62481b0,0xf6667f90,0xf9a0b328,0x0082a60d,0xf66a9b10,0xf842e588,0xf70432a0,0x05307eb0,0x058789a8,0x046d4180,0x0346cdcc,0x04299088,0x04056678,0x034e57e4,
-0x03b0de08,0x03947fc4,0x0344f4ac,0x02ff4c34,0x03401b7c,0x041c2558,0x042d1ae8,0x047d2ca0,0x0507b8b8,0x055ee218,0x0630d100,0x04f29898,0xfba5f1b8,0x01f46b0c,0x00a3a8a7,0x00b38a62,0xffe63da5,0x0163ce38,0x025429e8,0x01b0a35e,0xffa9f11a,0x01e14d26,0x036f2da8,0x00ecdf88,0x012978b2,
-0xfe8de1ba,0xfe09d5e8,0x036aefac,0xff0b35f1,0x05dfa9f8,0x09cc0cb0,0x059af5b8,0x02c7a430,0x03e8e400,0x0417e648,0x0251efb8,0x029ac130,0x021b81b4,0x01f6abbe,0x0183e52a,0x0171e36c,0x02d4a520,0x02c67644,0x038ea84c,0x04baa218,0x057fc580,0x078a0940,0x04887d08,0x010bb814,0x022b68dc,
-0x014f937e,0x02434fcc,0x00c96a1c,0x020b2628,0x00c29f99,0x0446c0d8,0x00059c1f,0x02c3e0f4,0xfef85422,0x005f992f,0x00026ec2,0x008afecd,0xfe8cf038,0x01c01716,0xff48782a,0x06c01ce8,0x0b535dd0,0x070cf808,0x022f4274,0x024263ac,0x019de66e,0x0018c6f8,0x02af6ce0,0x03cfcd90,0x03a0bebc,
-0x0300800c,0x039f39b0,0x05c522a8,0x056411b8,0x05fb32a8,0x07681c80,0x089acb80,0x09a215e0,0x074aa698,0x03492fc0,0x04d9ecb8,0x02f9f0b0,0x03d0c6dc,0x03d6cb48,0x03556568,0x031000cc,0x02ac1014,0x041dab20,0x02387708,0x02dd20ec,0x029ed9ec,0x0228a6d4,0x00b078f9,0x018b8678,0x055d4290,
-0xfef8a2da,0x12963d20,0x151e6340,0x0ca14aa0,0x082faa60,0x0c187bb0,0x0a69c510,0x05c69890,0xfa41ffa0,0xf3bc7560,0xf3446150,0xf2a6e7c0,0xf1add7d0,0xeefeeec0,0xf2cbbe70,0xf6267970,0xf9391450,0xfcc65af0,0x019bb29a,0x028a7194,0x019f424e,0x042f4620,0x0387cf60,0x02d95518,0x02013e84,
-0x0267c99c,0x031021cc,0x0320f690,0x024c2644,0x0172a6b2,0x01f82946,0x01ab3378,0x05984978,0x03239038,0x04d24170,0x0262cb28,0xf5726b80,0x0179aba2,0x1487cda0,0x0da31100,0x0f31bef0,0x0addd2d0,0x04374828,0xfe58bf96,0xf1249070,0xebefbfa0,0xeaf0ac60,0xea0a3e60,0xedf4fae0,0xf5dc64d0,
-0xfc22a4cc,0x00d8ad49,0x0462ff48,0x04929bf0,0x06597cf8,0x0331bcec,0xfe558380,0x0044a4bb,0x0027580b,0x02e9ebd8,0x02cc8fa8,0x00e2d560,0x01ce274c,0x02600240,0x05158c88,0x043d4c48,0x0444b3a0,0x05253168,0x025b2790,0x04cf3e08,0x00d3218c,0x0213e1fc,0xf4269510,0x03bbcdac,0x2450e980,
-0x22ae3840,0x2915e380,0x1ed5e900,0x19577060,0x0e4822a0,0xfed9388c,0xf51d5b80,0xf5ba6a90,0xffe87880,0x077c3bf8,0x0c487c40,0x0c7e34c0,0x0b6f4390,0x08ced890,0x0a18b1c0,0x0e2f5210,0x06858e78,0x02afc9dc,0x046ae040,0x001a2269,0x0222b838,0x023e97c8,0x02a6f92c,0x04da4a90,0x056b9238,
-0x075025a0,0x045e5858,0x03037df0,0x02cb2674,0xfd609e80,0x00e8f164,0xf5e32ae0,0x02f35dcc,0xf95fde80,0x155a5760,0x29ea36c0,0x225dc2c0,0x26639f80,0x1993eda0,0x0e1ef750,0xfebe0832,0x00395cba,0x024f980c,0x062946e8,0x0732be00,0x079cdca0,0x0804e440,0x0662b588,0x07079ab0,0x0bd98b30,
-0x0bc87680,0x0debe920,0x06331310,0xff68b79c,0x03712a6c,0x029bf504,0x036449fc,0x0328d278,0x03fa1aa0,0x02fef090,0x03dd5104,0x080c4c30,0x0520e878,0x049f1728,0x0731d748,0x03890160,0x06cf4ee0,0x008e8865,0x049e3020,0xfd64741c,0x0e289270,0x140a16a0,0x0b417cf0,0x0c0cfbf0,0x00ffc1b9,
-0xfa7545b8,0xf4e4d710,0xf4e4b7f0,0xf90e2618,0x03178cfc,0x06bd3710,0x09705850,0x09ea9fb0,0x0ba6af50,0x0b033010,0x0b3bdf60,0x03f1ca68,0x02fea038,0xff4caefb,0xfdaacb08,0x00234aaf,0x011ca32a,0x01508b70,0x00c850d4,0x031ca6c0,0x0531b6c8,0x0532c630,0x05dca930,0x0350f770,0x0245e640,
-0x00c921b8,0x0352aa30,0x046288d0,0x01dede3e,0x08c86ab0,0xefc09f80,0xff2ae907,0xffd58986,0xfa666af8,0xfa7f8f10,0xf62ffb90,0xf41221c0,0xf32fb3d0,0xf2ae4ab0,0xf23d4550,0xf4468bc0,0xfa9afe28,0x0174eabc,0x0677e530,0x0aa13790,0x0b2051f0,0x08cbf190,0x011ac0da,0xfe54fbf0,0xfae4b5c8,
-0xfb9f56d0,0xfe1a2352,0xfcf03268,0x005f30ab,0x02fdbb04,0x049a12d8,0x04f7a8e8,0x0502b478,0x008133ed,0x02cf17f4,0x0284666c,0x0232a058,0xff336cd2,0xfdcc9ecc,0xfdecf054,0xfc3f81a4,0xfcfc4cc0,0xf7a53280,0xf7cb89c0,0xf6cf88b0,0xf6555ae0,0xf6fd2a90,0xf8579cd8,0xf95858b0,0xfcaf9b48,
-0x002281cb,0x036d3364,0x039f2c80,0x03ae8c04,0x0454d3d8,0x02efa348,0x01df2c00,0x021600e8,0x011001bc,0x00cfc6a9,0xfdea8fd4,0xfc6800b8,0xfe0e1d70,0xfe9d4166,0xff71dd07,0x015d4bd6,0xffbab902,0x021e7fec,0xffe5c1c9,0x00eeb628,0x01ef0792,0x02843398,0x0369b7dc,0x023ed2e8,0x01a3f6cc,
-0x0068da9a,0xfd92aa5c,0xfa91ce50,0xf54e3800,0xf789fa40,0xf7068d20,0xf73bc950,0xf711ef40,0xf6d06250,0xf6536920,0xf65c2640,0xf5f702e0,0xf5e92a90,0xf6098a90,0xf6687f80,0xf69e5a20,0xf75e2750,0xf8348ea8,0xf8c61ea8,0xf8ba8548,0xf9412a28,0xf8fa1338,0xff55d470,0xfc3651c4,0xfaa08048,
-0xfb3e6360,0xfbe9e1a0,0xfa651c20,0xfad9ba40,0xf942f568,0xf99c72f8,0xf94ef0f0,0xf9e9e348,0xfa26ad98,0xf972e6d0,0xf988c298,0xf947cd68,0xf7730260,0xf5b514a0,0xf6e55940,0xf76a7000,0xf71080a0,0xf750a8b0,0xf747c3d0,0xf7653960,0xf7803cb0,0xf7a5d4f0,0xf7d638b0,0xf7f80c50,0xf833ad50,
-0xf861f880,0xf88ac048,0xf86c2e08,0xf8308fd0,0xf81fad38,0xf82cc668,0xf8a7b9a8,0xf7f72540,0xf6615fa0,0xf6c34ab0,0xff98c4c3,0xf5e4afe0,0xf64c4410,0xfd1a37a0,0xfcd3dde4,0xfd21aa64,0xfd261354,0xfcc74ca0,0xfcaf90a4,0xfcb5f21c,0xf6157650,0xf4f084d0,0xfea5f228,0xf675f180,0xf637e150,
-0x067405a8,0x09947d60,0x06622800,0x06ab5630,0x06d99208,0x06b44398,0x0695f580,0x066a90d0,0x067659a8,0x05ab8058,0x0541dce0,0x04fca950,0x0513e080,0x0535d4f0,0x0575b870,0x05a68ff8,0x05d1dcd0,0x05eef0b0,0x05f23820,0x05c09d10,0x05416860,0x08530060,0x07b420d0,0x021162b8,0x084e5b20,
-0x07f2ecc8,0x028980e8,0x031993a8,0x03394de0,0x0321ac24,0x03b00618,0x03c9792c,0x03dd038c,0x081ac800,0x08c4a380,0x02a6c01c,0x08be67f0,0x083961c0,0x09709660,0x08772560,0x0955aa60,0x08ed8050,0x089fba00,0x07cef738,0x07bbc260,0x058f9988,0x04a5bda8,0x04582e00,0x048a4068,0x04e53be8,
-0x05a3c6c0,0x062e1190,0x0698b348,0x06a242c8,0x06c5bcf8,0x05e34670,0x06ad7688,0x06583140,0x05b22420,0x06ed0b88,0x05bba010,0x05b8b628,0x06514660,0x063f36d0,0x073aa408,0x0796eef0,0x06f78ec8,0x06230ca8,0x063fce40,0x066bf418,0x069065a8,0x07b68ff0,0x08490a40,0x0cf3a020,0x0b36fcb0,
-0x0a2ac460,0x0b057170,0x0a480b00,0x0ab5f730,0x096083b0,0x099a0320,0x049ea848,0x0187d248,0x00901a2f,0x00d8ebe4,0x020ad1ac,0x03a475cc,0x0505c900,0x063d26d0,0x0682f5e0,0x06cf7a88,0x054dad88,0x05e8d590,0x06ac0a08,0x04a44308,0x04f92608,0x04e63600,0x04d268e8,0x04398fd8,0x04a9fa98,
-0x04de9f98,0x06163ab0,0x049f0ca8,0x055ffd48,0x05f978d0,0x05a53ae8,0x0668e5c8,0x08b1b340,0x0acceba0,0x0cbc3c50,0x0b92f740,0x09fdfcf0,0x0c4040c0,0x0bf55f30,0x0c62b660,0x0a8089a0,0x0a7522f0,0x03089720,0xff5953eb,0xfed07b00,0x00295cba,0x0136a55a,0x03e85a14,0x05fe53c8,0x072e3ff8,
-0x0726b388,0x070219e0,0x0534e098,0x05826e78,0x063a2ab0,0x0366460c,0x03a2241c,0x0350976c,0x03625a38,0x025bbef4,0x0325a808,0x0303dca4,0x03beecf0,0x0354a3b0,0x0344e824,0x04400d38,0x03b8ef98,0x05a13558,0x06fb6098,0x0aedbdf0,0x1bb10a40,0x1fc7d980,0x1ae0a0a0,0x1ae8bfe0,0x19916340,
-0x1529fc40,0x10cbe820,0x0f6b7560,0x07443a00,0xff3efdb7,0xef0f8ee0,0xf3aba9d0,0xf6e4b1e0,0xfab02ab0,0xfe433b86,0x02997890,0x06658190,0x06ec7d98,0x05a93920,0x0467e478,0x0385d428,0x029a1360,0x0474f1f8,0x030645c8,0x02950de0,0x01f3f0e4,0x02aaa4c8,0x03580090,0x0427ea58,0x049dd688,
-0x06949c38,0x08fc18d0,0x0c68b910,0x0f8ec760,0x111a7f00,0x14e10b00,0x0e448290,0x1a3996e0,0x279b7740,0x297dde80,0x1c46c400,0x13247ee0,0x0f5eb7d0,0x15eb33c0,0x0f5a93b0,0x0c6e8800,0x0784de00,0x0c875370,0x104e6100,0x1465b2a0,0x1425d980,0x11d5d7c0,0x0ea1a790,0x0a9c0570,0x08496200,
-0x085ae010,0x056db9d0,0x03dcc728,0x04a878d8,0x046ebfe8,0x047039f0,0x0304dbe0,0x041416c0,0x041cb9f8,0x04e212e0,0x04f9d590,0x04cc13b0,0x043739e8,0x05223a28,0x07fbeb78,0x0865ed20,0x0e2e8810,0x166e6ce0,0x2348cd40,0x14bd9780,0x09505bc0,0xeef9e560,0xf5eff860,0xfa5d4330,0x07ccda30,
-0x09a29da0,0x0e75c700,0x1467e620,0x16805820,0x16548dc0,0x153fcbc0,0x15e66b80,0x16fbc940,0x17f24a80,0x14acfc80,0x0f9fd120,0x0ce2e830,0x0c03d990,0x08269d90,0x04f38518,0x054e16c0,0x03b1d530,0x013c241c,0x01ed2b18,0x035b94e0,0x074acb58,0x051cc870,0x04fe8a08,0x05646320,0x066d5dc8,
-0x09edfb50,0x0dd7a8c0,0x0cf6f180,0x18ba7b00,0x0d4435a0,0xeb663c40,0xe66a69a0,0xcdfc5940,0xe39821c0,0xeff03660,0xfd9d12a4,0x00534d2a,0x06459858,0x0ad70940,0x11985ce0,0x159b3860,0x169056c0,0x16761360,0x14f08360,0x12c46a20,0x120fd080,0x0fd7d1c0,0x0df926f0,0x08d44f80,0x06a28808,
-0x05a4b170,0x05068518,0x05354ff0,0x049f2988,0x051e7618,0x054ba668,0x055dae48,0x0547ed88,0x0634b698,0x05498690,0x06b95bf8,0x06308f48,0x095e72e0,0x09867250,0x0f754990,0xffdbc05e,0xe86e10a0,0xe9ac8600,0xe4a65e40,0xeaac9b60,0xee73b1e0,0xf89f2348,0xfe105f3c,0x04ddd628,0x08ef99d0,
-0x0dae2af0,0x10896960,0x126cc440,0x12d8fc20,0x1359f1a0,0x1453bb60,0x113f41c0,0x0c4c1db0,0x06d68488,0x01b308d6,0x028d6c40,0x02b82c10,0x0151780e,0x021c8518,0x01ba146e,0x04b2e0f0,0x04417db8,0x027c207c,0x033494f4,0x04080d78,0x04163118,0x06b05260,0x07fdd2c8,0x089dbbb0,0x08ad1670,
-0x0a1e3f10,0xfc8c83e0,0xf41752b0,0xf43852f0,0xef9ff4a0,0xf4012b30,0xf735b710,0xfce8edbc,0x05b72d08,0x0ba3c2b0,0x0f4ea1c0,0x113b2400,0x114f4a60,0x108e1dc0,0x0ff8ac50,0x0e9b6500,0x0d523230,0x08850ee0,0x06ddf1d8,0x03051744,0x0040190b,0x02267974,0x00b16614,0x021743d4,0x020e3db4,
-0x02415734,0x02a81a34,0x01b65140,0xffeef682,0xffbd2304,0x012e4b02,0x049ad298,0x02389e90,0x01c97dd8,0x01f0f848,0x029d6740,0xf9bd5f28,0xf9e62d90,0xf767bfd0,0xf5d1c4c0,0xf283d820,0xf7ea9c50,0xfbd141f8,0xff07d6f3,0x0235da3c,0x051b4848,0x085eb170,0x08e78a40,0x0a1615f0,0x0b96b470,
-0x095305f0,0x07259ba0,0x051710f0,0x0437f0e0,0x0371c2b8,0x029abd2c,0x01e551c0,0x01357394,0x01019b46,0x00f4d904,0x001b9668,0x00fee226,0x0008e4cd,0x00e857a6,0x0123150e,0x00d1067e,0x007559af,0x00769cf3,0xffae672e,0xffd4df85,0xfec59ffc,0xfc091b7c,0xf904da48,0xfa2d46c0,0xf90069b0,
-0xf8f4bfe8,0xf84319e8,0xf75fd510,0xf6192b10,0xf547e5a0,0xf588d0c0,0xf5d729d0,0xf654a5d0,0xf6a285c0,0xf6ee0bc0,0xf75ee860,0xf7bd61b0,0xf882d388,0xf9069d00,0xf9d28550,0xfa3ea578,0xfb2b6840,0xf9ced8d8,0xfc23ca1c,0xfd6cab04,0xfd266ac0,0xfddd0b34,0xff5898ac,0xfed72270,0xff32f46c,
-0xfe5640c6,0xfe41b648,0xfe039102,0xfd1510cc,0xfc7bcd44,0xfac393d8,0xfaee93f8,0xfb5c39e0,0xfa706478,0xfae8dc18,0xfa823da0,0xfa7df858,0xfa6b1250,0xfa10d768,0xf9d88ec8,0xf95fa050,0xf974c968,0xf95826f0,0xf92f3700,0xf947f2e8,0xf959ca50,0xf9568398,0xf9d38f88,0xfa3027e8,0xfa894800,
-0xfacf9800,0xfaf29ae8,0xfb9f5270,0xfbd9d740,0xfaa7a270,0xf63cc310,0xfcf97554,0xfb71c968,0xf73b8380,0xf7345410,0xf714abf0,0xf7139ea0,0xf723d7c0,0xf6f19ee0,0xf70c5950,0xfae55518,0xfcb57ccc,0xf57680f0,0xf954cda8,0xfafcb998,0x0246f2bc,0x017182e0,0x0128ccda,0x023e49a8,0x01c94ca6,
-0x022272b0,0x011a7690,0x00d04aa2,0x00e5aa34,0x0173085a,0x01cf46d0,0x0217174c,0x02553e24,0x0282afb0,0x0288c310,0x0295f5ec,0x02852cc4,0x026c0274,0x022099b4,0x023e24bc,0x01c11050,0x015159be,0x0333b81c,0x0832f670,0x00df7d0c,0x02e1ab58,0x07ab0df8,0x079cd860,0x07a2be48,0x0793d418,
-0x076a01d0,0x0771d448,0x07652940,0x02e92478,0x00763b8d,0x08cddf90,0x03fd8610,0x07896060,0x00a57fb1,0x01cad916,0x01033d02,0x012d3648,0xfec432fa,0xfe731606,0xff449fcd,0x0063cc16,0x0163e37a,0x021a21b4,0x02ee99b8,0x03512454,0x0343cc1c,0x038677e0,0x034de120,0x02ed1ae4,0x0236e110,
-0x024a20ec,0x01728264,0x04c2fc70,0x0317621c,0x025a483c,0x034acd18,0x035b31c8,0x020f23bc,0x02687854,0x01d1f846,0x02780d88,0x01951000,0x01917d8e,0x02856370,0x026b443c,0x03e40f1c,0x04319088,0x021a8dcc,0x04090c40,0x00f042bf,0xff49870d,0xffa9611d,0x008f3324,0xfbf99430,0xfaa80298,
-0xfc939e14,0xfec20c6a,0x009c1a97,0x013abdf0,0x02a6d8f8,0x03e955c4,0x044a1930,0x0515a690,0x04cdbda8,0x0425cc58,0x0300cb5c,0x0283a7c0,0x0232368c,0x02f15db0,0x032e0064,0x037b2cd4,0x03113988,0x03419a30,0x025c604c,0x03af8c1c,0x0305f13c,0x039d3d98,0x029ddd7c,0x02f6e81c,0x02ebc878,
-0x03805a8c,0x03b52808,0x055f2090,0x0359f348,0x04e425e0,0xff7370cf,0xfcd47008,0xfc8488a8,0xfe0a50e6,0xf90b01d8,0xf874b078,0xfb4d3ef0,0xfd58494c,0xfeb6ef2c,0xffe28b68,0x01a4e470,0x030d5d48,0x036d1550,0x04d10938,0x04b6dd68,0x03a82768,0x0250ebec,0x023cec40,0x01a7cdb0,0x03cd306c,
-0x047374f8,0x0356ffcc,0x038e0ba8,0x0356daf0,0x02bca7f0,0x03234438,0x035c7f14,0x039706a0,0x020ab478,0x0160794e,0x01ff0bc8,0x02f2ff10,0x0475dea0,0x05d57158,0x011cb25a,0x0b58ac80,0xfaf730a0,0xf548a9f0,0xf6e0d0a0,0xf2288f70,0xe7dfeca0,0xe5392760,0xe8bdc980,0xf6972b00,0x012dc0d8,
-0x05b344f0,0x0754bc28,0x09f44cb0,0x0dddb7e0,0x0e6678c0,0x0d6f7300,0x0c6c49b0,0x086fb760,0x06b4a7a0,0x04dfa8d8,0x036ed6cc,0x047cf180,0x0343a034,0x039ab2e8,0x032b77a0,0x01e494da,0x030d5108,0x0382cea4,0x0438d5d0,0x03f63214,0x04887340,0x06884bd0,0x03973670,0x0630e010,0x06553398,
-0x084df2b0,0x128e2860,0xfe81683a,0xdd7a75c0,0xdca0d740,0xd2d690c0,0xdb5f7100,0xe47ba440,0xed775000,0xfb8bc8d8,0x03c1026c,0x096b15b0,0x0b930df0,0x0b490750,0x08810960,0x06cecd08,0x05706998,0x04d71998,0x0372549c,0x033a18c0,0x04877940,0x06888080,0x05651278,0x04add5a8,0x0377fb98,
-0x02f4e054,0x0311add0,0x042a6870,0x04247f70,0x044ff328,0x037814f4,0x03ec63e8,0x01e35a4c,0x0508c1c0,0x0140496c,0x0612a5e0,0x02940fc4,0x07b038a8,0xe771f860,0xbba4bf80,0xbe9a8b00,0xc0f2e540,0xcddaad00,0xd46a6e40,0xdbc3f1c0,0xeaac4e40,0xf39d2ba0,0xf69c6e20,0xf4c78460,0xf5bbfab0,
-0xf871b8a8,0xfb6bfa88,0xfd7ef248,0xfef6c6b2,0x00257479,0xfffb0c6b,0x04d11388,0x071d5a88,0x065ba260,0x0603b400,0x04a95778,0x03e166b4,0x01afc4ca,0x0122cd40,0x0265da54,0x069f56d0,0x04911a60,0x0492a838,0x041edf10,0x09e94a70,0x00fcf4fa,0x0bc39190,0xf9d8cc78,0xf11cca10,0xc8f3f980,
-0xc4cdc540,0xcb91bdc0,0xd5ddb840,0xd54ba500,0xd7664d40,0xde00b240,0xdefda340,0xdf6cf640,0xe15a6d20,0xe27eeac0,0xe7569e60,0xee77b340,0xf719c2b0,0xfc9cf818,0xfd1a2198,0x00e55b7c,0x0186ef8e,0x03ea9198,0x06eda710,0x026dbf94,0x031f5558,0x0399fd18,0x03ce5728,0x02e8eb54,0x059b75b0,
-0x048f4970,0xfec7dbce,0x01d11836,0x02cc2750,0xfdc791a8,0x03414b1c,0xfaa591e8,0x0097cb1f,0xf61d9820,0xe78e06c0,0xda1ed800,0xdba55d00,0xdce76100,0xdf57e180,0xe8346640,0xf09e0420,0xf59c8c10,0xf867b3f8,0xf4e8c8b0,0xec2ead80,0xea16eee0,0xeb03a860,0xefa3fb20,0xf1e7df70,0xf6b319c0,
-0xfbe8fdd0,0x01d67444,0x034afb1c,0x02acb8ec,0x051fbbd8,0x03b0c048,0x0477ce10,0x0357a478,0x02cd3bb8,0x01f88e22,0x02d33194,0x02245d4c,0x00986328,0x0162ebb8,0x0064fc4e,0xfdfc31a0,0xfa2eeb60,0xf8ec0260,0xf7d674f0,0xe581eac0,0xf91aa870,0xead75940,0xec3c5500,0xecfd1600,0xeed23ee0,
-0xf3745130,0xf802b188,0xfb7b28e0,0xfb1d5528,0xfd1093c0,0xfe25d568,0xfb773c18,0xf90f3ca0,0xf93923f0,0xf7d3e870,0xf8d5cc78,0xfb55e828,0xff9f33e9,0x008b2f5c,0x0326a1c8,0x025657e8,0xffe69cd2,0x00d4d5c2,0xff41fad4,0xffe1d4ce,0x00ca2872,0x0098bf9f,0x00b75be5,0x008ca086,0x0063e458,
-0x008e8554,0xff5317ac,0x001c37b2,0xfd370734,0xfb917520,0xf6c5b130,0xf50b2d40,0xf6e41320,0xf7675d50,0xf620b4c0,0xf5c6aa50,0xf4d82580,0xf3832680,0xf2743020,0xf0fbe0f0,0xef4af7c0,0xed7477e0,0xeeb02f40,0xf00e6d30,0xf1619fb0,0xf2eedd40,0xf4934e60,0xf5503000,0xf69f6d60,0xf6bf6290,
-0xfa9de7f8,0xff508c6d,0xfe7fcc7e,0xfeefb2b6,0xff6738c8,0x00acff40,0xff72c902,0x0060095e,0xfe9f3892,0xff26f3c4,0xfe61ced6,0xfe4365fa,0xfdcc8eec,0xfb490398,0xf97f4848,0xf74a7810,0xf6e7cc60,0xfb165968,0xfbfb9220,0xfbd3a688,0xfb26c870,0xfad60f48,0xfa832c88,0xfa674180,0xfa11d398,
-0xfa670a68,0xfae552a0,0xfb37ae38,0xfb7b9af8,0xfb867208,0xfbf7a760,0xfbb3b030,0xfb4dee18,0xfb23d848,0xfb7f6a10,0xfbd0b1e8,0xfb1e0da0,0xfbc05208,0xfbaf1ff8,0xfb88e9c8,0xfbf0ea28,0xfc560e58,0xfc98a810,0xfcdcb284,0xfc723a7c,0xfcfda104,0xfd2dc100,0xfe54355c,0xfe63dd12,0xfde5837c,
-0xfd603394,0xfc6f4664,0xfd129638,0xf930d708,0xfdab6fb0,0xfcfcc778,0xfcc2a7e0,0xfc9b10a0,0xfc542664,0xfc12d638,0xfbc85be0,0xfbaefa48,0xfb7b9868,0xfb59e4d0,0xfb129130,0xfad3d950,0xfa82dfc0,0xfae10a10,0xfb53c798,0xfbb16e88,0xfbb79418,0xfc084cc0,0xfc55c508,0xf960f570,0xf9ee97a0,
-0xfbe72770,0xfa6a3500,0xfa47a8b0,0xfc8417cc,0xfc5b2434,0xfc76b6c8,0xfc4d708c,0xfc0c9c1c,0xfbb09f28,0xfbb97a28,0xfa784c98,0xfaf80f40,0xfb016ac8,0xf99a7cd0,0xfce0edcc,0x07ba81d0,0x05b05de0,0x069cf248,0x05c6f190,0x0609be80,0x05d4dc10,0x06c63e38,0x07754708,0x0843b750,0x08f36610,
-0x094b6c60,0x094471f0,0x08e2a680,0x08908bc0,0x084ff880,0x07f9c878,0x07b07138,0x0773c778,0x0738e738,0x06c481a0,0x07901140,0x06480118,0x03a14b70,0xff0fc01e,0x06fdb2e8,0x03c50904,0xff4aa18a,0xff69aba3,0xff7617d2,0xffed158f,0xff6da35f,0xff69fc07,0xff8f2af4,0x03e2ecb4,0x070eafc8,
-0xff912b82,0x03175104,0x02045cbc,0x05691a68,0x04152f00,0x04629f30,0x0479c928,0x0711ee88,0x097c6b70,0x0b97b560,0x0d93af60,0x0ded3580,0x0ce4dde0,0x0b9e56b0,0x0ab2da50,0x0a2ac8c0,0x09684f20,0x08dade90,0x088209b0,0x07c11008,0x0736f520,0x0773f978,0x02f115e0,0x0624b650,0x0640fa70,
-0x05233068,0x04cba5c0,0x05fea570,0x0664d920,0x06cb0290,0x05c13018,0x066a79e0,0x062fee30,0x04e25a48,0x0564ed68,0x0448b918,0x04f0cfc8,0x058fac80,0x01915b2e,0x0192c51e,0x003b5a05,0x00afec0a,0x00dd4d60,0x05578a38,0x09de5880,0x0ddd0030,0x129b42a0,0x14a22f00,0x13b8e680,0x11d91d40,
-0x0fa60a40,0x0e6bc750,0x0c54c270,0x0ab9ba10,0x09acc1f0,0x07c31368,0x0756cdd8,0x06071a40,0x056867a0,0x0599ae50,0x054c6b98,0x05050000,0x03f1240c,0x04b667a8,0x03e952f0,0x05c2a210,0x046837a0,0x042252f0,0x02b1254c,0x02fc3db4,0x03636e94,0x03781abc,0x032030e0,0x026b55d0,0xff73eec4,
-0xffc4a00a,0xfdc61d64,0xfe4ad58e,0xff48c76c,0x071c7b30,0x0e3e3d20,0x14550060,0x1a3b9be0,0x1b0abb60,0x16f4cea0,0x12905a00,0x100398e0,0x0e8cb140,0x0c3d7ba0,0x0a9bab60,0x09f9b140,0x07e5a508,0x06bc30a8,0x05a7ffe8,0x03fed574,0x0522c340,0x04392c98,0x04506760,0x03b503ac,0x032810c8,
-0x03afedbc,0x03307a24,0x03fb1734,0x01ebf874,0x01a494f0,0x011d06a8,0x022bf620,0x02e8445c,0x026e7cf0,0x0011f4bf,0xf77a2340,0xedcf3fc0,0xeaee8fe0,0xea72cf40,0xe89231c0,0xf212ec30,0xfb6981c0,0x05024d48,0x0fed19e0,0x1a348b40,0x27676e40,0x256ca300,0x227b12c0,0x1c96eca0,0x18f91420,
-0x138883c0,0x0dc7f960,0x0962a5c0,0x07d36670,0x08f94920,0x07b0e9c8,0x073bf3c8,0x05c39b88,0x04f6fd30,0x042b01f0,0x02b9566c,0x040a3df0,0x041c4080,0x03d0a938,0x033080ec,0x02475c68,0x01eacf4a,0xff42f683,0xfd89b234,0xfce19ac0,0xfcb98ce8,0xf2a96e00,0xe6eb88a0,0xe05d75a0,0xe01d7ca0,
-0xee0a0de0,0xf9978d68,0xfcc9930c,0xf3fc1f20,0xfc3bfc6c,0x02209650,0x0afce330,0x094670a0,0x0a76b0e0,0x0c7c6af0,0x0c6477a0,0x0cbfeff0,0x0cad2550,0x0ab714f0,0x093a3d70,0x06d62850,0x05dfc318,0x06441b80,0x04bdd930,0x04868380,0x03e0c498,0x02e2b938,0x03baf5f4,0x03fcd138,0x04d0c3b8,
-0x03de134c,0x0373485c,0x0300344c,0x029854e4,0x0007542d,0xfd5103d4,0xf553a110,0xe0232cc0,0xdfcbabc0,0x089a5e90,0x15bad4c0,0x2e52fa00,0x134b9a40,0x0156db6a,0xed501460,0xe9bbb9a0,0xebe4a8e0,0xf62f3810,0xfecc777a,0x069e3108,0x0bba1020,0x08cfee30,0x06de53d0,0x05eafc68,0x06d0c4a0,
-0x0917e6c0,0x065254d8,0x04d92458,0x0550dbc0,0x05362a40,0x04f11ef0,0x047c77a8,0x039779a8,0x02f5ee88,0x039020b0,0x0598c1c8,0x027401e4,0x00ee9613,0x00a3c51e,0xfc03fe6c,0xf8840fc8,0xef37c000,0xf4d96240,0xe43c72e0,0x0a8392b0,0x331958c0,0x2b9b1b00,0x2e9316c0,0x1ae6d180,0x115d8400,
-0x0464bae0,0x05c40538,0x053e1c40,0x04145480,0x03dd0ec8,0x04081b58,0x046a44e0,0x04f878b8,0x05aa4670,0x0616dc58,0x04617f20,0x041b2910,0x044f25e0,0x026171d0,0x03ac4bc8,0x0369007c,0x033d492c,0x02fc5274,0x027323ec,0x05092ea8,0x04246000,0xff8edaf2,0x02a30700,0x0149206c,0x00e73808,
-0xfd1cf110,0x00fa50d1,0xf6e60f80,0xf6104bf0,0xf6bc5160,0x147f1120,0x24c3f3c0,0x1cc91b00,0x1d965c20,0x12e38040,0x0def7e70,0x0a857d30,0x075cca88,0x07e109c8,0x0d157810,0x0c0b7a70,0x09ad02c0,0x06799ac0,0x02c30420,0xffbdad8f,0xfcef8d18,0x00fee6ba,0x04621880,0x067ddf10,0x04dd7550,
-0x04ccfe70,0x02a1bd38,0x038db578,0x03f64d3c,0x037746dc,0x02b40a54,0x02bdbf7c,0x004c6f32,0x00f38d38,0x0011e55c,0x01e53b66,0xfe2f437e,0xfb94f480,0xf82fbb68,0x07353190,0xecc1be00,0x0caa8760,0x12355000,0x0b898940,0x0c4509f0,0x06e91340,0x0531b648,0x03ccfff8,0xfed3e9a0,0xfb0f4570,
-0xfa324168,0xfc103470,0xfed3ef22,0x0092f42b,0xff6e85fe,0xfe61d88a,0xfcaa39cc,0xffd95673,0x01e220b0,0x017fea28,0x016f866a,0x0318c394,0x039098c8,0x02270178,0x01738f98,0x0219a360,0x01006b90,0x007ae847,0x02f44b30,0x027315f0,0x01d4bb74,0x006d4881,0xff5f43c0,0x00902cad,0xfdb6407c,
-0x00aa2e2e,0x02d6d6f8,0x03a4fc98,0x07e1a8e0,0x07cafdb8,0x0a81a000,0x07dd2978,0x05abace0,0x032bf4b8,0x01c5ee2c,0x009cd737,0xff161482,0xfc642220,0xf9442f38,0xf5c0cb30,0xf76d9a50,0xf8a4ca58,0xf9d2d508,0xfaa89110,0xfd4326bc,0xfc8c3838,0xfac47e70,0xfb79c238,0xfc54cd88,0xfdfd970c,
-0xfd755e18,0x001446c8,0xfe06ab2a,0x028aee7c,0xfe44bb90,0x0114743a,0xfe2efb62,0xffc91f7a,0xffbe9a63,0xff7d7377,0xfeb84dd6,0x02c37930,0xf91b13f0,0x08680d50,0x08ef2cf0,0x08d098a0,0x095c72a0,0x09b50420,0x0aa0abc0,0x0b740e30,0x0a500770,0x08edf250,0x07a683f8,0x0633d240,0x05078a70,
-0x02dbe204,0x035651e8,0x0339261c,0x0380e0b8,0x037b1a34,0x03f35fb4,0x03ddf52c,0xfafcf258,0x02c42c78,0x033a11e0,0x028c62c8,0x020f07f4,0x05c3d660,0x0642c678,0x05e611f0,0x03ba2fc4,0x065552a0,0x06dbb9e8,0x0494c868,0x050f8478,0x02a2c844,0x028245d0,0x05f00dc8,0x051ab678,0x0b1e8290,
-0x081941f0,0x08f73390,0x08ee3290,0x09402d20,0x096141e0,0x09cacf60,0x092349b0,0x08d217d0,0x08793030,0x082ad510,0x07e38550,0x0778d930,0x07a66ba0,0x079d6e68,0x0799b6c8,0x079da338,0x071dfa80,0x095351c0,0x0278abcc,0xfde87364,0xf5c07800,0x0590e1f8,0xff36fd2b,0xf6e56340,0xf6cde1e0,
-0xf7588780,0xf8837d98,0xf7dd4400,0xf81b3dc0,0xf8b7d738,0xff847e54,0x06fc4660,0xf72aaa10,0xff038515,0x09e39a10,0xfc6c7a58,0x01f476ae,0xf94c0af0,0xfba44860,0xfb0d3c68,0xfb57d2e8,0xfbd310c8,0xfc33de14,0xfc8fbf28,0xfc7ebc70,0xfc954cd4,0xfcbfc230,0xfca007f8,0xfc8bd7dc,0xfc6cc0bc,
-0xfc7ad904,0xfc7d7fd8,0xfc81725c,0xfc7cc660,0xfd1a53a8,0xfac42ee0,0x02f790ac,0x076c3920,0x0cc7afb0,0x00d2e033,0x06f3b5e0,0x0c068b10,0x0c589aa0,0x0c36df90,0x0b14cb80,0x0bfd80e0,0x0c006590,0x0b9e57c0,0x06bfa818,0xff64568f,0x0bbfd2b0,0x07338c00,0x069564d0,0xf98655c8,0xf926f6f0,
-0xf9a2b428,0xfa373fe0,0xfb3baf90,0xfbd560b8,0xfc5acfdc,0xfc337020,0xfc54a8f8,0xfcb82580,0xfc74daf0,0xfc47b150,0xfc09d038,0xfc127f84,0xfc3721d4,0xfc3a896c,0xfc8daf84,0xfc4e2a30,0xfd6a8dac,0x07e058a8,0x00994afd,0x0184821e,0x01c5b030,0x02e1572c,0x0092a72f,0x0032354c,0x00a01bfd,
-0x02f09cf0,0x0035dd31,0xfee81c9c,0x01136dee,0xff86cbc2,0x01944744,0x01bae7bc,0xfd136eb8,0xfefb541a,0xf8ac8010,0xf5903610,0xf6791920,0xf6c64b30,0xf95ecd18,0xfb222450,0xfc38cd10,0xfc039a4c,0xfcdfd100,0xfe5294a6,0xfdfa5d10,0xfd60c9d0,0xfc689528,0xfc34be84,0xfc291c08,0xfbf67958,
-0xfcd205d4,0xfbf2ff10,0x001f3a00,0x0349ae4c,0x02eb1e30,0x024e2a24,0x017776ac,0x03ba7d8c,0x011c625c,0x0490e480,0x006885c9,0x0547b9a0,0x0185ecfa,0x04497160,0x02932860,0x0164585c,0x00b78e3d,0x010e3fb4,0xfe110ce8,0xfef23fd8,0xf7a7d580,0xf5e49200,0xf6dc5050,0xf6d0f120,0xf922e1e0,
-0xfae18838,0xfc271bf0,0xfc27108c,0xfd9931d0,0xff60e083,0xff4ce6cd,0xfe638dbe,0xfd1fcdb8,0xfcb88618,0xfcaa7fd8,0xfc7b89c8,0xfcb7b304,0xfcfcd3c0,0x00bcf998,0x048f5aa8,0x012a8170,0x04ce42c0,0x020bfb94,0x01e37fac,0x01be445c,0x02d49b90,0x03b8b5a8,0x02831904,0x030e8d90,0x020cf398,
-0x02237c44,0xff208593,0xfe90feaa,0xff047650,0xfecb75c8,0xf49de350,0xf4e40590,0xf57c5640,0xf36ebe30,0xf9796f78,0xfeea81d4,0x00e0f0f4,0xff48a4ae,0xfac51900,0xf78dd350,0xf97c0c88,0xfbba5dc0,0xfc58782c,0xfca19184,0xf8b16ff0,0xf86ba400,0xfa18a1f0,0xfd0b41f8,0xfcb0b1bc,0xffa523a0,
-0x05e69018,0x02017098,0x03710564,0x0300b650,0x038525f8,0x02b1c4bc,0x036ae114,0x0338d038,0x02a99dcc,0x022e590c,0x013cb378,0x00c0c1fa,0x015480ae,0x008a2668,0xfdb9d468,0xf904d3e8,0xedfe6d80,0xf9df3688,0x1630b040,0x1903f760,0x18ac6e20,0x059394b0,0xf9988078,0xf2884a60,0xee9d1640,
-0xee278fc0,0xedc4c780,0xf3e10230,0xf7e07290,0xfa23e5f0,0xfc8454a8,0xfdd2be98,0xfd2f698c,0xffe49bed,0xff08538d,0x021ee168,0x055f6a38,0x03f572c4,0x03c61e98,0x02898e28,0x0297fb58,0x023d8dbc,0x02ea33c0,0x037c54a4,0x0460bd88,0x02c756a0,0x01c995e0,0x0072ea4f,0xfe3573ce,0xfc755068,
-0xf8d822b8,0xf8cac6b8,0x0005a212,0x174bdda0,0x215add40,0x11069100,0xf707b180,0xf4daaef0,0xf5482860,0xfc79ab04,0xfab5add0,0xfc677b18,0xf9ebd908,0xf62a0230,0xf172ba30,0xed6e0060,0xf02e29a0,0xf5a2ee30,0xfdb0a51c,0xff22ecb0,0xfcc29b80,0x01b2d2f4,0x02e9d3c4,0x0147472c,0x0484a808,
-0x039656a4,0x03eb82b0,0x036b34b8,0x04642498,0x03e06120,0x02ed12d0,0x012e10a8,0x00656672,0x008e5652,0xfd397cdc,0x00ebe1c2,0xfcb1fdbc,0x02905ce0,0x1770a080,0x1e0d2160,0xf9fcc1b0,0xf26311b0,0xd9a4ca40,0xf16f2620,0xff5d52e9,0x0d5fd710,0x0a45c9a0,0x0af24030,0x09aae7f0,0x0dbb3ff0,
-0x0c28b050,0x06086870,0x0225acac,0xfeeb8fb4,0xfde93218,0xfc9d9388,0xfa3e4a70,0xfe7c5f06,0x05c61c68,0x01e33288,0x015a620e,0x00bc40c6,0x0079ec06,0x00b8f5fa,0x02bab138,0x04940ac0,0x0353443c,0x04bb0c40,0x03c8d510,0x01b48382,0x00f11382,0x023e7264,0x022870c8,0x07149598,0x18283c80,
-0x0a9414c0,0xf6116a90,0xf81e4c00,0xf25d4100,0xf7de09c0,0xf8cd43a0,0xfe5c6e02,0x016069f2,0x077268d8,0x0c7b99b0,0x0fd42e70,0x10228c60,0x0d4fa0f0,0x0b6df7b0,0x07684be0,0x01686fbe,0xfe4cdf96,0xfa782a80,0xfd1349b4,0x0319706c,0xfe461dec,0x00a23987,0x02052b80,0x0206bdbc,0x020b6474,
-0x02e4f434,0x02d41c78,0x03308ae0,0x01c21a78,0x02c2984c,0x05110968,0x06d5f848,0x078471f0,0x0a8d6190,0x0f8f27c0,0x1311e8e0,0x07380f48,0x002b66b6,0x032b16bc,0x00b92c76,0xfefdc7ec,0xfcd75980,0xfcd7e218,0x045c0990,0x080fc320,0x094c3f20,0x0917d200,0x070bc840,0x0396eeac,0x0131743a,
-0x000ef052,0xfffe551d,0xff5bc043,0xff04fdaf,0x006d1ee9,0x0329b7a4,0x0250f8c8,0x02ee1798,0x02ad2e60,0x02d93be4,0x02d37740,0x01b11fa6,0x01493e20,0x018024aa,0x0120628e,0x0140414a,0x0265cb58,0x038c6904,0x04cb5340,0x05525e80,0x06d9eb38,0x05c49e38,0x05545e50,0x02bcebe8,0x0353b0fc,
-0x01beeaa4,0x03295510,0x04952ce8,0x0585e498,0x0688f048,0x07a969d8,0x09ade2a0,0x0a0bb9f0,0x0ab6cf20,0x0b6f6450,0x0aca27d0,0x09d8e7d0,0x09367f60,0x0852ecd0,0x087f2d60,0x056c4578,0x022ff68c,0x046f03b8,0x04855348,0x03d35c78,0x02a1d410,0x04026d08,0x035c4e0c,0x0326f668,0x0476d2e8,
-0x029a06e8,0x03a80f20,0x023eb538,0x041491b8,0x056d5760,0x07cc6458,0x05d4dd40,0x0ae371e0,0x04284f58,0x02eaaa04,0x03651514,0x030edfac,0x02e0dca4,0x02450dcc,0x020055b8,0x029115ac,0x030da5b0,0x037e7ac8,0x03fd67a8,0x046af1f0,0x04a72648,0x050a0538,0x05b3dda0,0x0640aab0,0x065f65c0,
-0x06b53bc0,0x07b59820,0x05b0e7f8,0x0551a560,0x05daeb40,0x069b37d8,0x061cccc8,0x055fe668,0x043b1ca8,0x05423a68,0x06157628,0x04682038,0x03015624,0x046c35b8,0x0426a588,0x05bd7e58,0x0624f4b8,0x0430fad0,0x08273fb0,0x0142ff52,0x02fdfccc,0x02ccce7c,0x02c70fd8,0x02c6d124,0x02d45de8,
-0x02ae47f0,0x03435590,0x03aec99c,0x0411ab00,0x048731b0,0x05008180,0x0599ec50,0x0560af68,0x05231cf0,0x04ef7dd0,0x0501c290,0x04aeb9f0,0x047c88b8,0x091285a0,0x0b017640,0x09c860c0,0x074a6f28,0x0aa1c6b0,0x0b3df5a0,0x0b8aaa80,0x0b1e7140,0x0a83aab0,0x0b499420,0x0b73b000,0x0b0e3720,
-0x0a787e00,0x063c1970,0x0af018a0,0x0b10b860,0x03500718,0xfe36a842,0xf9f51b00,0x00a4f90d,0xff3fd414,0xff86b52b,0xff8b93e6,0xfe5ea85e,0xfd806920,0xfc4f2e08,0xfc44c938,0xfc4d0dfc,0xfca5297c,0xfd29c218,0xfd90a988,0xfdd8da54,0xfe1aa53c,0xfe456788,0xfe577c2c,0xfe824f82,0xfe97b036,
-0xff8c5318,0xfa2fb838,0xf95a9098,0xfcee2b18,0xfad159d8,0xf9582ea8,0xfcb11684,0xfc5b85f8,0xfc66dba0,0xfcd2b908,0xfbfc3000,0xfbb8e508,0xfbcb8298,0xf90fc050,0xfb74df68,0xfbbefba0,0xf8709db0,0xf7a3c6b0,0xff6f7caa,0x022a9bb0,0x011d077c,0x0106f84a,0xfde5cdfc,0xfb51a450,0xf85d0d48,
-0xf7a9b3d0,0xf806aea0,0xf9b6cbd0,0xfb7dcc18,0xfcb61d18,0xfd2ccc00,0xfdd55dd0,0xfe170a1e,0xfe302e62,0xfe718a12,0xff57ee65,0xfe30ef00,0xfbc54408,0xfde75f08,0xfcb38f94,0xfda57eec,0xfd80e510,0xfd8bbc84,0xfe5d5114,0xfd9920bc,0xfcd935e0,0xfe0fa272,0xff17bc0d,0xfe326dd6,0xfda82940,
-0xfc79a21c,0xfb553a70,0xfe68ec74,0xfb31b2d8,0x000a689c,0x07ead398,0x04db8700,0x04d3d328,0xfe43a3a8,0xf8e9aa10,0xf3229bb0,0xf1c3f740,0xf29629c0,0xf51bf350,0xf7ea3c40,0xfa594958,0xfb4266b0,0xfcdbae14,0xfd78add8,0xfde3df0c,0xfeb9079e,0x00288551,0xfecc9bae,0xfd64fe24,0xfe8cd81a,
-0xfe2b555e,0xfebecc80,0xfead8dea,0xff359b5d,0xffaeacc5,0x012572ce,0xff4232c9,0x014ea19a,0xffa7a06c,0x00303adf,0xfe61290a,0xfe090598,0xfc900f6c,0xfec78888,0xfc0eb394,0x025c8bf8,0x0c810dd0,0x08a9dc70,0x07728588,0xfd3a0d64,0xf538bbf0,0xec7b5f20,0xea728c00,0xecef57c0,0xf35ed580,
-0xf88864e8,0xfbcea088,0xfc6e365c,0xfd997a04,0xfe5716ba,0xfe69b0bc,0xff94fb92,0x00cc20c0,0x00a05ddb,0x008b6cd6,0x01e4cb8c,0x018b4a20,0x01a7560e,0x01dcf3ec,0x01e6314e,0x0291622c,0x0333396c,0x03cd166c,0x029d4b68,0x02cc17a0,0x02b74578,0x00465ba4,0xfdec6a10,0xff96eede,0x01aba3be,
-0xfc446a0c,0x0b93da20,0x1249a820,0x101c04a0,0x0e5b5f30,0x02e13e54,0xf9a31d70,0xeff2a360,0xedafddc0,0xea1b4ea0,0xe734efa0,0xe9f6ce00,0xecf49240,0xf238af50,0xf5dece50,0xf85b5450,0xf9a8d808,0xfce15518,0xff70f3cf,0xfeb0038e,0xfde2fe10,0xff7f6f78,0xffdc5629,0x00fbc3d0,0x01bea892,
-0x01f7b8c2,0x02c97988,0x02a1c200,0x0240beb8,0x02215ebc,0x02793548,0x01d65a12,0x03af5104,0x0222c544,0x012ba97c,0xfc2b966c,0x026726d8,0x0868d980,0x01dcaee8,0xfcd6f920,0xf14616c0,0xf02b80a0,0xf33f7f70,0xfc39a344,0xf6813760,0xf01d1880,0xe59c16c0,0xe83cdb20,0xe81da0c0,0xe79a7040,
-0xec95c6c0,0xf1f0e480,0xf7be2300,0xfa52e970,0xfbe86620,0xfc7ba56c,0xff2acc66,0x003c7575,0x0111514c,0x01bac3a2,0x0227d9dc,0x02415b94,0x031582ec,0x0347b8a8,0x032e27c8,0x00f47a3e,0xff737101,0xfe17eba0,0xfc7660dc,0xfd456f30,0xfdd459c8,0x01da1292,0x0dbaf1f0,0xff003b8d,0xd5644e00,
-0xd3772b80,0xd3dd7780,0xf3734690,0x06cbce48,0x167468e0,0x15d1f520,0x102a1480,0x06092a78,0x035abd54,0xffbf1eb7,0xfc2ee5c4,0xfd483c90,0xfb7b5228,0xf7f771c0,0xf5fadf70,0xf5d0da40,0xf89115a8,0xfa3ab0e0,0xfbd87d10,0xfddb0558,0xff758949,0x01583d64,0x00e7767d,0x044b1908,0x0421f6c0,
-0x00aa0f14,0x02c470cc,0x031a9790,0x00a6d5bf,0x0427e448,0x034850a8,0x08465340,0xff8cd24a,0xfc915554,0xd96d7200,0xd9473880,0xe92ec6e0,0xfb352758,0xfc79cfc0,0xfd513d78,0x03d9157c,0x078068b0,0x0a6b0370,0x0e52b3c0,0x08c494b0,0x0545d618,0x03a2848c,0x02edc4a0,0x0130418c,0xff0600e4,
-0xff41cd37,0xfe3f6648,0xf89559c8,0xfaad2620,0xfb3059c0,0xfb5121c0,0xfcf4c44c,0xfddf47d4,0xfe0e25da,0x0223af48,0x03144f10,0x00af47f1,0x02b2348c,0x02be1460,0xfeb649e4,0x0190ead6,0xfc6ca998,0x009520eb,0xfd1ca160,0xf26f5600,0xed622440,0xf80b2c80,0xf8efa438,0xf6cff2e0,0xfc056ac8,
-0x0191f846,0x04946788,0x09dc42c0,0x0a106020,0x068a82b0,0x047c0018,0x04b52038,0x05a32790,0x0533d6f8,0x0424e760,0x03b5c1dc,0xfca50ef4,0xfa888430,0xf7db3c30,0xf9e5b420,0xfc18be98,0xfe1c96a4,0xfead3112,0xff61fdde,0x01bf9ef6,0x0243291c,0x02bbeaac,0x0371327c,0x034f5fd4,0x0291b8ac,
-0xffab4e23,0xfec5a10e,0xfe101f78,0xfd920a58,0xeebe2680,0xff90d134,0xf458d4b0,0xf913f828,0xfa6d48d8,0xfadd7020,0xfe2467c0,0xff526493,0xffbf18fb,0xfd8cf4d8,0xfe7253f2,0xff93cafd,0xff849fb7,0xfff02d5e,0x01f2e574,0x03eb5bc0,0x052b6010,0x065477f0,0x0300ba54,0x01bb726a,0x00194e9e,
-0xfe819b26,0xffd252df,0xfe942282,0x01f30e20,0x0372685c,0x029bb100,0x031da6b8,0x03034354,0x02850110,0x0136d128,0x007c38fd,0xffd15dff,0x017de79e,0x0095b3cf,0x0134b7c8,0xfde99bf8,0xfd46f2a0,0xfded3424,0xfdf23940,0xfdf96bcc,0xfe8ba8c6,0xfe0cda0e,0xfe4b0012,0xff4b96f9,0xff18ced0,
-0xfeee3c04,0xfe8cb26a,0x00c9a137,0x02f2ce64,0x052f4ab8,0x05117970,0x054e6860,0x05f6ae18,0x06ee4eb8,0x079d5dd0,0x08637f10,0x0792a148,0x07cad338,0x07b45d90,0x062b1818,0x0558cfa8,0x0379820c,0x03d36650,0x0154fe86,0x016d47d4,0x01325daa,0x01d95de0,0x014bacd8,0x00075274,0xfec9a6e4,
-0xfdb05164,0xfcfc61b0,0x03130c24,0xfd8497e4,0xfe42095c,0xfe2fd624,0xfe5f4454,0xfea91ba0,0xfec78404,0xfe87895c,0xff1ca81a,0xffd60e55,0x006c5d5c,0x01388a3a,0x01cf8c08,0x03152df4,0x03420fd8,0x038f5ac0,0x0388d870,0x03533988,0x02f89514,0x031573d4,0x064366a0,0x029c0d00,0x010724ca,
-0x00f0637f,0x00902ca0,0xfe5d8700,0xfeacb780,0xfe14d90c,0xfea854aa,0xfe6bbcd2,0xfecb7a60,0xff7d6bdc,0xff6c290e,0x00562cb0,0x003dd471,0xff54fa45,0xfd5e4b9c,0xfe8151e8,0xff76ed75,0xff22ecf5,0xff3d358a,0xff310cb9,0xff3f972d,0xff4f3489,0xffa258c4,0xffd91251,0x001ccaeb,0x002f1448,
-0x00428bf8,0x0054f012,0x0024a684,0x0016c86e,0x001edcfe,0x00383ac4,0x0089f855,0x00057aaf,0x000621e8,0x00e055b3,0x0672c540,0xfe3f095e,0xff5a04e0,0x04a383b0,0x0494cbe8,0x048632b8,0x045ad510,0x041324e0,0x03e6edf4,0x03ab4a60,0xfef187ca,0xfd06cb08,0x04fee3f0,0xff208804,0xff31d98d,
-0x0260f998,0x0545d798,0x038c21bc,0x038e8158,0x03d960f4,0x037c7288,0x029671a8,0x0212ad24,0x01c390d0,0x01aef44c,0x0190bc68,0x017469fc,0x01981d68,0x01b238ca,0x01d64e86,0x01bb400a,0x01ba8de8,0x01b3d986,0x01d35ef0,0x01a621a0,0x019fdd1c,0x03a7d6e4,0x01e5cfda,0xfbb895b0,0x042818a8,
-0x026328d0,0xfc6ccf7c,0xfce0b978,0xfd067568,0xfd15bdf8,0xfd9032a8,0xfdb039c4,0xfdc0bb64,0x02b92148,0x052d9250,0xfc3eb580,0x02da5cf0,0x030419dc,0x074c4ad0,0x06319108,0x06ccd000,0x05cd8b50,0x03875830,0x02087228,0x016af514,0x00c79d1a,0x00992ec0,0x0086290f,0x00c161e1,0x00e3c845,
-0x012bc908,0x00f88429,0x0102e91e,0x00f31bf4,0x015d7788,0x00c42f73,0x01d8beb6,0x005fee72,0x01325e3a,0x0276881c,0x014f0d46,0x016f00f8,0x02afe1a4,0x02ce9120,0x03cca1fc,0x0377f338,0x03ad6df0,0x02fb7224,0x026d3c7c,0x03625ba0,0x0323fef0,0x03e11150,0x04f51f00,0x08c67ad0,0x09155640,
-0x09a8f4b0,0x0aac79a0,0x0949fa30,0x04564300,0x0193b0ec,0x0022ee0b,0xff269554,0xfe247d50,0xfd77117c,0xfdee3110,0xfe95040e,0xff86a57c,0xff534b52,0xff976eef,0xff94ad4c,0x00099c5b,0xff44792a,0x0028ef90,0x017e61cc,0x00716b35,0x005c6ca4,0x010b76a6,0x01611108,0x01943bb6,0x01bb36cc,
-0x025f26e0,0x02dc1f8c,0x023d6438,0x02c6d1a4,0x02cee6f0,0x0349bbdc,0x03ac6974,0x055c2e88,0x074327d8,0x0bcb9630,0x0d689b20,0x0c435e40,0x0ef44ce0,0x0ddfd410,0x067a2178,0x00fd6f75,0xfeb89c36,0xfc7ffcf0,0xfc088fc8,0xfbfdad68,0xfc787b34,0xfcfd30e4,0xfe2b5fae,0xfde1ef18,0xfe245884,
-0xfe4d5efa,0xff0ad850,0xfd8bb7a8,0xfeb497ec,0x0168a5f6,0xff124242,0x00d3cda1,0x00c93318,0x012a722c,0x007b119f,0x022914e4,0x029fb138,0x02b3b1ec,0x026a20b8,0x024678f8,0x028cc708,0x04404468,0x06b8ed48,0x06fc75e8,0x08a30a60,0x098532e0,0xffe685bb,0xfad131d0,0xff54dfd2,0xfc011a60,
-0xff86b8d4,0x03d356d4,0x09b1a8c0,0x03e286d0,0xfec60028,0xf6584da0,0xf54aaf10,0xf5c01a50,0xf6759ab0,0xfaef86b0,0xfccc98c8,0xfb38bff0,0xfd23618c,0xfc543018,0xfe3965aa,0x00502444,0xfe1e10ae,0x00d5975d,0x006a101a,0x01966648,0x020a65fc,0x027bcab4,0x02a714e8,0x02944ba4,0x0398e0c4,
-0x0415a200,0x0460c578,0x024cb0e8,0x02e67fac,0x025ac958,0x06232310,0x048b6d28,0xf8643ad8,0xe3a959a0,0xe62b2b60,0xf23ca950,0x041eede8,0x0ebdd2e0,0x16ef7820,0x161a1a20,0x13fc83e0,0x12f1d380,0x0a675830,0x05ab41c8,0x0411a848,0x01939730,0xff70fb3a,0xfd733de0,0xfba03750,0xfa9e2240,
-0xfca502b8,0xfd529c0c,0xff20620d,0x009ae868,0x00ace122,0x01cd080e,0x02894184,0x03a20c1c,0x03b4c77c,0x0260d7d0,0x01866af8,0x0070abcb,0xff5b7e9e,0x019d9a50,0x0151f3ea,0x01f2614a,0xfe086080,0xef6e3620,0xe46323e0,0xff4316ed,0x13ac25e0,0x2c9cf940,0x1fc18aa0,0x1850c540,0x10edf720,
-0x13acfce0,0x1520bf60,0x1da05aa0,0x22c59f00,0x26e3bb80,0x28530640,0x23be7f40,0x1c64b760,0x11b35160,0x0a690950,0x068e8e90,0xfe250a2e,0xfb42ef70,0xfb3fac68,0xfa8e1ba8,0xfd432084,0xfe3a53fe,0xfeba7502,0x02ba6cc4,0x03ab3f24,0x00219385,0x03952edc,0x03362064,0x001bed64,0x00ad6336,
-0xfcf14364,0xfb6499a8,0xf9e35300,0xec24ed80,0x0440e0f8,0x29a647c0,0x278c7580,0x2e3e76c0,0x1a645560,0x12e384e0,0x0aa09230,0x135d96a0,0x18ba5920,0x1ba9e8e0,0x19c14a20,0x19939ca0,0x1b206620,0x15daad00,0x11e04d20,0x0f7076b0,0x0b2bd8e0,0x096058e0,0x03c7cfdc,0xfb6f7d88,0xff8969da,
-0xfeeac800,0xffe3fff5,0x010347dc,0x00bc390c,0x02f56d24,0x02df0758,0xfef31cbe,0x01a0915a,0x00e05c52,0xffa23964,0xfe7ed032,0x006058b5,0xfc33f2e0,0xf8885e68,0xff75b4aa,0x105493c0,0x19f8e420,0x185eb780,0x1943b800,0x0b7e74a0,0x0533af08,0x017db87a,0xffdf7354,0xff801a3d,0x01cf60fc,
-0x0607cd98,0x0787d970,0x07560688,0x0961eb60,0x0a577710,0x0b1d0000,0x092baf60,0x08a6fdf0,0x05cff428,0xfe261456,0x02713340,0x01708fd4,0x0050ba0b,0x018459b8,0x01f6e078,0x02636f1c,0x02513d08,0x03033a2c,0x03ba93f8,0x0312b6cc,0x01fbbc90,0x0102515a,0xff7cac24,0xfc4f52f4,0x05903178,
-0xf9427078,0x0a8440d0,0x0b3312b0,0x07826e38,0x04826710,0x03797d8c,0x035f2d70,0x023b73fc,0xfd86b2d0,0xfa951640,0xfa4ca498,0xfbe87bd0,0xfeea4292,0x0185a03c,0x03ead17c,0x0432d930,0x0396312c,0x03a095bc,0x03ed06b8,0x03c5a058,0x032a6600,0x043e6c60,0x04db7fa0,0x04ad9370,0x030107bc,
-0x02780154,0x039f42f8,0x03b29c30,0x026c599c,0x0271eacc,0x01f623da,0x013c3026,0xffc7c1f6,0x00ae09f5,0x0123a332,0x02d720f0,0x02902ee4,0x00499826,0x00beca95,0x01401fda,0x020193b0,0x022c2390,0x01571cd0,0x0081fd31,0x0112f6dc,0x014dbfd8,0x0116ec48,0x0035a36a,0xff1fdd9c,0xfdeafc38,
-0xfe532e8a,0xff0b6b19,0xff4fa5e4,0x005d0829,0xff6619bc,0x02713370,0x059ae230,0x02bbba54,0x021aa6a4,0x01e3836a,0x0298b038,0x0100b22a,0x013c65ac,0x012cc066,0x0130e6de,0x0129f040,0x00a98c2e,0x00fe2c80,0x011dc2b0,0x0159b264,0x013a0a9a,0x01f99c58,0xfd3312c4,0x01b58fd0,0x01cc7e4a,
-0x01c40a40,0x01a86be0,0x018e62de,0x01ee0a88,0x0241c0b8,0x01f712de,0x0194324c,0x013c25a2,0x00cf2489,0x009f2040,0x006db07b,0x005beca1,0x001f1103,0xffda2b78,0x000ecd8d,0xffa81f30,0xffc1ac84,0x02513844,0x01ba1324,0x029bfb6c,0x015cc4b2,0x021a7bb0,0x02d92c0c,0x02e24d4c,0x02e05158,
-0x02327464,0x0238aa1c,0x0199aa68,0x00d66cb6,0x00ee6e4e,0x001f62b5,0x004a35bf,0x0093a155,0x030c5ec8,0x022c6d00,0x0163abee,0x01a6c77a,0x01a26346,0x01b6b844,0x01a1792a,0x019e40f8,0x01329afa,0x00f0683d,0x00bd9855,0x009e3ee7,0x00723707,0x00341b81,0x00619ff6,0x008d9d33,0x00af1b70,
-0x00b1e137,0x00f05de9,0x006f4fcd,0x0232cd0c,0x01552c38,0xfea0d066,0x03118e40,0x01ea77ec,0xfdbb894c,0xfdb415c8,0xfdd0b920,0xfdeb7fc4,0xfe094ca2,0xfe2a26e4,0xfe4cfc24,0x013a0ad4,0x031179a0,0xfd848560,0x0125f330,0x020f845c,0xf9e29458,0xfc4f0404,0xf7c09870,0xf9b8f618,0xf8a618b0,
-0xf8c931f0,0xf8e5a5d0,0xf94aa6f0,0xfa080148,0xfa2350a8,0xfa459008,0xfa582270,0xfa3e7258,0xfa2d1078,0xfa257478,0xfa1c1188,0xfa1f5d08,0xfa364d20,0xfa041f98,0xfa7be368,0xf9574b48,0xfc25df14,0xfff5fa0b,0x06ac7a30,0xfb229a88,0xffc78157,0x064b84d8,0x0655d250,0x064aefa0,0x05a1c918,
-0x060af618,0x061f7ce0,0x05cc4da0,0x0010f08f,0xfa4a5b60,0x0782ef50,0x013569a2,0x05eeba10,0xf69efe10,0xf6596d20,0xf5b53250,0xf58ae4e0,0xf592b770,0xf677f220,0xf8ad2310,0xf9396338,0xf9c29078,0xf9ddb0e8,0xf9c08af8,0xf9d47f70,0xfa0bf530,0xfa05c368,0xf9e0ec48,0xf9d708d0,0xf9663b08,
-0xf9a6d890,0xf97e9fb0,0x007f3d7e,0xfc5fcd74,0xfc3b9778,0xfdb0f328,0xfe75347c,0xfcbddd70,0xfcb26464,0xfc62e088,0xfdc03ba8,0xfc6ae920,0xfc1163cc,0xfd906f20,0xfd06eda4,0xff382d4c,0xffb96b87,0xfb544f30,0xff45ac41,0xf764db30,0xefe1e7c0,0xf0b9c770,0xf069ede0,0xf1924bf0,0xf442c2c0,
-0xf8dbe690,0xf8b0db80,0xf87a8cf8,0xf85f4d98,0xf81d6838,0xf80aa000,0xf887f588,0xf8a90e50,0xf8ef1d18,0xf952fba8,0xf8e70ed8,0xf8ee0e80,0xfac98c18,0xfc43e2b4,0xfd5c286c,0xfda3f044,0xfdb8ebc0,0xff70ba0a,0xfe9d863a,0x00cd8ac9,0xfe4a455c,0x0085c7c4,0xff6497eb,0x0102111a,0xff5d71ff,
-0xfff62070,0xffd0173f,0x014e6556,0xfcb819e8,0x02abbcec,0xf4890120,0xeb946a80,0xec9319a0,0xebd6f0c0,0xec9531a0,0xef8ff780,0xf71611b0,0xf78b9150,0xf72db0b0,0xf682c860,0xf6c98270,0xf7b9e1a0,0xf980e5c0,0xfa495d88,0xfa2a7608,0xfa218298,0xf8f8f580,0xf9e26788,0xfa7ccc38,0xfcfe80dc,
-0xfd65c458,0xfe908c6e,0xff292a9a,0xfff78b10,0x00382e16,0x015c1440,0x02c15c48,0x01bcdd60,0x02359b80,0x01aa433c,0x0158234c,0x0180a420,0x02b42450,0x02bfa0e0,0xfe70f94e,0xf39c5700,0xe60192c0,0xe3b04220,0xe2aecb20,0xe81eaea0,0xf152e2f0,0xf781bea0,0xfc3fe1d0,0xf978a1c0,0xf9232508,
-0xf920bfd8,0xf554c670,0xf363d070,0xf199fe30,0xf0f972c0,0xf285e090,0xf604d470,0xf6759260,0xf7923950,0xf7a1a9c0,0xfbe48e58,0xfdddaa2c,0xfeaa7dbc,0xff9e3f0a,0x00a0cfc5,0x01d534de,0x02491c34,0x025c9aa8,0x01fc7800,0x0179f266,0xffd12801,0xfe35ecf4,0xfa84e730,0xf9f05408,0xf77e35a0,
-0xf6c9a010,0xf364f3f0,0xf2082710,0x04245160,0x097369d0,0x0fae3580,0x01b194d0,0xfa4f1ce8,0xf6e69d80,0x023a3524,0x0e8f81f0,0x1c367000,0x1d408b60,0x1d7e15e0,0x1aa3c280,0x13a6f7c0,0x0b442d50,0x02e179b8,0xff0d885d,0xfe41934c,0xfd2cf2d0,0xfae04cb0,0xfc311938,0xfd13f388,0xfee74fdc,
-0x0063d583,0x00cec50d,0x02ba5588,0x02f58e1c,0x0180e486,0x0140c9de,0x00d296d1,0xfffaeb08,0x0085cf87,0xfda5e07c,0xfbbc44e8,0xf8935ad8,0xf7d159e0,0x09141f70,0x1a0f52e0,0x0d5ff480,0xfd9d90d4,0xf1b358c0,0xf0a85420,0xf3a912d0,0xfbf0b5e0,0x03cfa4ec,0x0541dcf8,0x0162da9a,0xffa5812f,
-0x005f81e8,0x03d211a8,0x0670a7c8,0x0860b8d0,0x05a8eb18,0x0367c8e0,0x028cc180,0x001cbd11,0xfeaf402c,0xfc761ef8,0xfcb4ad0c,0xfd04e6c8,0xfd5edb44,0x00ffca3c,0x021a9cbc,0xff0ee6a1,0x022a6b90,0x00feb3c2,0xfe5f740c,0xfc3c61ac,0xfd8f92a0,0xf9ec8880,0xfd6f87bc,0x0eda6960,0x11f9f2e0,
-0xf2b9e2d0,0xe6a944c0,0xd73f70c0,0xe24fa600,0xe7f2ee80,0xee84b020,0xe760aca0,0xe3e3c200,0xdfbbb180,0xe99779c0,0xef473cc0,0xf1a78a00,0xf3ba88a0,0xf6d83130,0xfafa1528,0xfbd4da68,0xfcc59498,0x026eeac0,0x0385d3e4,0x00d81af3,0x024711d4,0x01b5d0aa,0x02465844,0x02286c84,0x0293cc74,
-0x024cf704,0xfeacf974,0x0190ebfc,0x01b7b610,0x0144ac22,0x00ec8e32,0x004e78c9,0x0182190a,0x05a4d420,0x093af830,0xf6967240,0xe47ae380,0xe9156d20,0xec31a720,0xeeb9f840,0xed0054c0,0xeabf0480,0xe824ad80,0xe72f31e0,0xe591ed80,0xe68f24a0,0xe8584ac0,0xec3b7940,0xf0862c00,0xf4ebc130,
-0xf8061530,0xfce64958,0xfdeec810,0x01d7a08a,0x056730a0,0x0256a444,0x0331faa0,0x0226a234,0x00ac6960,0xff290d88,0x00695748,0x0073f304,0x0160b7b2,0x00d3fc4d,0x001dab61,0xff1292dd,0x0156032c,0x02991124,0x04945b80,0x02451b88,0x0a37c250,0xfb734de8,0xf59bf610,0xf8a49bc0,0xf9965fa0,
-0xf836ec10,0xf7deac40,0xf84638b8,0xfdcf2588,0xff3f503b,0xfdb56800,0xfb4d8900,0xf77d5be0,0xf34fce60,0xf25cfb00,0xf3682eb0,0xf60243f0,0xf9f51760,0xfa51ea60,0xfe6bf7de,0x02ab4858,0xfdf69adc,0xff0a5e22,0xfd9dbd58,0xfeb0c54a,0x002b1396,0x007c025f,0x0105728a,0xff6c20e9,0x00e75f31,
-0x011be104,0x009cdf39,0x0004dff7,0xfeb6e920,0xff64fc14,0xfe7a5510,0xfe12223c,0xfe8e6dde,0xfbf51f38,0xfa0aed80,0xf7144d70,0xf7d4d730,0xf82f8240,0xf803fd38,0xf8a9fe98,0xf96a4bb0,0xfaad6440,0xfb375cb8,0xfc14aed4,0xfd0f2860,0xfd8c4ea8,0xfdd5e254,0xfdbe0d00,0xfc171cb4,0xf9bd75f0,
-0xf9605598,0xfc831728,0xfd4529a4,0xfd601280,0xfdd45290,0xffd85fc2,0xfeaa85f8,0x00d9f9a3,0xff09354e,0x01d7ccac,0x001edb6a,0x00df3e95,0xffd5c607,0x00822257,0x00fb1165,0x021f4358,0xffc7834f,0x02bfcf58,0xfc0a4c18,0xfbb08b00,0xfba8bd78,0xfb5bfbe0,0xfb083fb0,0xfa7e22e0,0xfa2891f0,
-0xfaaa9c80,0xfb1622d8,0xfb955648,0xfc12c4b0,0xfc844404,0xfcf4b0f4,0xfc8ffbc8,0xfc577484,0xfc608364,0xfcbfce7c,0xfd5dc760,0xfd1e4f60,0x010d5eee,0xfdabd848,0xfda2463c,0xfed5abe4,0xff4bcfe6,0xfdd4ccf4,0xfd3862d8,0xfd2d00a8,0xfe848d92,0xfcc37fa8,0xfcb53650,0xfdbc0e30,0xfd58e338,
-0xfe998ae6,0xfdfb9dd4,0xfc936598,0xfd60f38c,0xfa201900,0xfb672560,0xfafe9630,0xfafb4370,0xfabfd7d0,0xfa9abdc0,0xfa48bc18,0xfa903090,0xfab239e8,0xfac87900,0xfaec8398,0xfb0f8d88,0xfb54c488,0xfb67fe78,0xfb8635b8,0xfb8636b0,0xfb669658,0xfb841fe0,0xfa78fd00,0xfd4c875c,0x0083856f,
-0x05b98968,0xfc603804,0x00850cfb,0x065a2508,0x06280918,0x05bfe3c8,0x04e632e0,0x052dacb0,0x04f14918,0x048520a8,0x00671b2a,0xfc0f5698,0x05530ed8,0x00e48ea8,0xfa4738e8,0x03854534,0xfd02bc50,0x04a269f8,0x02422a60,0x02ca241c,0x024db14c,0x036343fc,0x03bc8ba8,0x03d8cd84,0x03f28d18,
-0x04156a28,0x042141f8,0x04484c20,0x0451ce58,0x04719220,0x044a6da0,0x042cfe98,0x04083778,0x03e0a138,0x0334d938,0x057c6398,0xfdf28f94,0xf9e60308,0xf5cd93b0,0xffa4876f,0xfa4b1e58,0xf6954f30,0xf65875e0,0xf67be880,0xf754f560,0xf6745b70,0xf64c0690,0xf6766840,0xfa4aece8,0x0040dd80,
-0xf665bfe0,0xf8e400a0,0xf640f080,0x00afc61c,0x0141de8a,0x00788988,0xfff54631,0x030aa214,0x0476be48,0x04b79098,0x051a7380,0x051ff6d0,0x0509a168,0x059fafa0,0x0622e120,0x0695c0f8,0x06699b98,0x060f6800,0x05cbff88,0x04f3c688,0x0505aa60,0x04037218,0xf99a7850,0x00953eec,0xff991228,
-0xff37f231,0xfe7f4530,0x00f6aed5,0x0165b81a,0x01303f0a,0xff18d68c,0x01acf9d2,0x0293ec24,0xffd6fd06,0x0004e873,0xfd4751c4,0xfd030fe0,0x00ad50f9,0xf8c3f048,0xfcc0c0d4,0x00edd085,0xfead07c6,0xfdadbb44,0x03fd52d0,0x063af570,0x06e97cf8,0x073b3630,0x07c89e70,0x07e48688,0x08fdd260,
-0x0957f170,0x09f7a4b0,0x094332a0,0x085f72c0,0x07bec9c0,0x05d5eef8,0x068c2eb0,0x0274f6f0,0xfe519c0c,0xff5e1f34,0xffad5ea8,0xffdee726,0xfe4045ec,0x017e74d6,0xfefa6a1a,0x02695f60,0xfe7d84ee,0x01a63e1c,0xfebb7904,0xfed2194c,0xfe32fc54,0xfe40ae02,0xfbce0118,0xfc820180,0xf422c020,
-0xf84c6a38,0xfd86a914,0xf8981768,0xf661ab70,0x00e43d9b,0x068af370,0x07c9ed38,0x083f9e40,0x071ff5a8,0x061f1718,0x083db6c0,0x0a83af50,0x0c453830,0x0bb9cac0,0x0ac79360,0x0a1a6e70,0x0840cda0,0x07e415d8,0x043ab780,0xfd46ca8c,0x01a50b9a,0xfe351b52,0x00719a00,0x00c13e13,0x01b796b4,
-0x01dc17a4,0x01fcbe3c,0x02b66818,0x02372d0c,0x028dd1c4,0x0043fde8,0xff350a5c,0xfc8d2a60,0xfbc92098,0xfbaaf2f0,0xf62d5940,0x08b77ad0,0x11535400,0x102e2540,0x13f7cc80,0x128b6700,0x0f1d5910,0x09eafe70,0x11070c40,0x16d24f80,0x1dd32560,0x1c791ba0,0x19f28fa0,0x16c13500,0x13fd4900,
-0x0ff1f050,0x0bb8f770,0x06dd4bd8,0x072468e8,0x03ee5e38,0xfcbf08e0,0x01e45d90,0x002d5b10,0x0131e290,0x0135996e,0x0208b4a0,0x02f0d53c,0x02af55c4,0x017c593c,0x00f862b8,0xff53a7e6,0xfc9e43f4,0xfeef6e7a,0xfc603364,0xfcbaa3d8,0xf9a0f788,0xfb383510,0x093228c0,0x16ebf800,0x11f9c260,
-0x09d80f90,0x08023d90,0x0771d490,0x02c12680,0x031d0d08,0x04a3b168,0x04dd13e8,0x0cf49600,0x10dc0220,0x129966e0,0x110f1a20,0x0ff47b20,0x0ec56ab0,0x0c5f6560,0x0b2aee40,0x05b3dae8,0x00ad07b5,0xfff95bec,0x001900cb,0x01bb1074,0x02420ddc,0x01421cd0,0x0289b828,0x02bd82c0,0x01d8a62e,
-0x0135a106,0x007e10f6,0x0133123c,0xfe6c2f64,0x00c99239,0xfef79e26,0x0313580c,0x0d100260,0x0f2dc1e0,0xf5fc8aa0,0xf08a2470,0xf2cf3ff0,0xfe3c3244,0x042ed768,0x05730a10,0xf93512e0,0xf17a70d0,0xeaba6c00,0xed4ee7e0,0xf00e4c40,0xf48d99e0,0xf4bdb620,0xf5b0a4e0,0xf6f9ea40,0xfac82390,
-0xfdde9434,0x01f46256,0x02d2dc84,0x02be4b14,0x01b5a6de,0x010e3030,0x00c6da9d,0xff5b2b9e,0x0182514c,0x025255c4,0xff2666e1,0x02b42338,0x024b8a9c,0xffb861f4,0xffc85614,0x03195e18,0x02cb7cb0,0x0548ade8,0x00485134,0xf0cc1bd0,0xf72b2e00,0x025715f4,0x0be68660,0x081419e0,0x0157407a,
-0xfad734e8,0xf8463ff8,0xf4c5e3d0,0xf31171e0,0xee2e2480,0xeb98a220,0xebac7240,0xef689be0,0xf3141dd0,0xf4ee98d0,0xf7a55010,0xf97094e0,0xfc4fe398,0xff6adb7b,0xff24f85d,0x00d005dd,0x0071121a,0x00b9095a,0x0142629e,0x01c17e80,0x01abb2a4,0xff2e0645,0x01dd75d4,0x023f1a34,0x022bf62c,
-0x01d3d196,0x01011802,0x002a517c,0x01d3a990,0xf1b4a390,0xfa500610,0x08a804c0,0x060326c8,0x05cb27c8,0x09eb3ba0,0x0baf5f10,0x09da99f0,0x0a5bdd90,0x09436b70,0x0827dd60,0xff13c844,0xfa80ebe8,0xf955c230,0xf50c98c0,0xf3d9c7f0,0xf4665560,0xf6d87e80,0xfa278f20,0xfc2aec4c,0x00192a9b,
-0xff615777,0xfe54996c,0xff421d79,0xfef1d2ba,0xffdea94b,0xff993381,0x0094a1f4,0x00474685,0x0147c98c,0x00aeb965,0xffc0a997,0xfe4e54de,0xfd792ce0,0xfc914884,0xf72fd080,0xf6c786e0,0xfbb87388,0x01d18d52,0x007ed9b9,0x030837d4,0x025a54d8,0x015964ca,0x012e19f0,0xff1dd817,0xfe4e3108,
-0xfddaa8b0,0xfe4f5b1e,0xff9e5479,0x01b31ab2,0x02200510,0x0199568e,0xfefe2798,0xfcd83d74,0xfc1a7ecc,0xfa97c8a0,0xf98785e0,0xfb1959b0,0xfb5f4310,0xfce6f92c,0xfea37b2e,0xff92ab7e,0xffc4200a,0xffc731c5,0x00c7ca4a,0x01066688,0x01006944,0x006516ff,0xffb3b1fb,0xfefa42f2,0xfdb673dc,
-0xfda66780,0xff40080d,0x01001436,0x0254bd24,0x01b8cf48,0x0290b2d0,0x015e08a0,0x01673e28,0x01cb3e86,0x007547e3,0xff9740ca,0xfe6ea5c6,0xfe455682,0xfdd6914c,0xfd927e60,0xfd30c924,0xfcf0113c,0xfd62e014,0xfd65eb58,0xfe8a8572,0xfd27e70c,0xfb47f690,0xfc40de9c,0xfcbca52c,0xfda5c718,
-0xfd738240,0xfe816fe8,0xfe7b615c,0x006bbfdf,0xff83ab63,0x00bb02e0,0xffc37a0d,0x00b781b1,0xffaa791d,0xfeb71370,0xfcf6e5d4,0xfeb0f0ae,0xfa9e8af0,0xffbd2a9d,0x0065f34e,0x00b03f4b,0x014d79a6,0x01df84ac,0x023000a0,0x026c762c,0x01940724,0x00df2d72,0x00359401,0xffa9225a,0xff1a24a3,
-0xfe7a4bfa,0xfe8f9e1c,0xfe76b3f2,0xfe3b2c42,0xfde2a4a4,0xfdb37320,0xfdb96d44,0xfc0d8710,0xfe5177ae,0xfdd900f0,0xfd6cf5e4,0xfd727658,0xfe72b64e,0xff154288,0xfe885e92,0xfdb4f368,0xff45af48,0x004d5589,0xff338455,0xff941279,0xfe457302,0xfe6dca20,0x00299e4e,0xfcb72434,0x01bd4b2c,
-0x00b5fa8a,0x0103f432,0x011a1f4a,0x013fc6bc,0x017680f2,0x01e6b09c,0x019c5ee2,0x0174a0ac,0x013c1ea6,0x00e642d9,0x0094a79e,0x002a63e4,0x001a818b,0xfffd5f77,0xfff1efe4,0xffeef33d,0xffc0695e,0x00614457,0xfc67c190,0xf9eb2558,0xf8b2bc08,0xfd98fdb0,0xfa08e8e0,0xf85f25c0,0xf84569d8,
-0xf8885fe0,0xf90de178,0xf8826368,0xf8668d10,0xf8b40ce0,0xfa8a6bd8,0xfe74b6b2,0xf889c3a8,0xf9daf570,0x00c663da,0x033115cc,0x05938a80,0x027a8f34,0x031bc1e4,0x03795c80,0x036852d8,0x03ae4098,0x03d73e10,0x04557510,0x03db0c80,0x03a9901c,0x0372d8f0,0x03658ebc,0x035594d0,0x03345f50,
-0x0325057c,0x030353f0,0x02cdf3e0,0x02d5c404,0x02cc7f5c,0x01f2f160,0x05957368,0x06046078,0x02c99d44,0x0503f0d0,0x05fbbbd0,0x033332d0,0x03724d14,0x0383e2f4,0x032636d0,0x03e8a8fc,0x03e6827c,0x039eddf0,0x05daf480,0x04f76e30,0x028236b0,0x05e16020,0x032434ac,0x0453b478,0x03a97980,
-0x04846960,0x04794678,0x052160d0,0x05927c28,0x068815c8,0x059478e0,0x04ffff68,0x04296720,0x03a3bbdc,0x02fca5cc,0x027c71b8,0x02580ad8,0x025c37b8,0x0219ad50,0x028bd168,0x01f467d8,0x02fc9854,0x04fe0090,0x02ded180,0x0405bc78,0x02e14038,0x0319a2b8,0x03d4bb78,0x0337b2c4,0x03dcb398,
-0x0442cab8,0x03d25fac,0x033325f8,0x02f6748c,0x0300ccd4,0x03354194,0x034e972c,0x02998f40,0x03331298,0x03f06294,0x060aea80,0x07723258,0x07256bc0,0x0841a950,0x087dc070,0x0a5fa5b0,0x0922d6d0,0x08be97a0,0x079fa118,0x06e91df0,0x063a36e8,0x051c82f8,0x0456abf0,0x03a45f44,0x024dc160,
-0x02c7fb30,0x01310fcc,0x02d87a74,0x044376a0,0x022c6b7c,0x02600684,0x01778b26,0x02173684,0x02805cd0,0x025eea98,0x0154a7a6,0x02a8e9f0,0x020a504c,0x02ffdc54,0x0195d994,0x01e12afa,0x01a96520,0x021f272c,0x02d3c268,0x017a6768,0x05691888,0x0732a040,0x07f798d0,0x07b5e9a0,0x08fb6270,
-0x0a4670d0,0x0c7af4e0,0x0aea80e0,0x0a59e1c0,0x0810f400,0x05b67c48,0x0306cc58,0x010dd9e4,0x00746a47,0x0031fb74,0xff333ce0,0x000ad9c0,0xff1dc982,0x0156af7e,0x0345ee94,0xffff075e,0x01684ba2,0xffa3c56e,0xfff3e81d,0x00ebfc2b,0x013a4cae,0x01b258f2,0x00bdf5e8,0x02553fd0,0x01ad141c,
-0x005d8f58,0xfff604df,0xfffc1748,0xfffebf76,0x011a3ee4,0x0c1b0180,0x0f0fef60,0x0e372790,0x147ec200,0x15b28b00,0x13928920,0x12af4fa0,0x1238be60,0x12aaea00,0x12171b80,0x104f1840,0x167360a0,0x18526dc0,0x18231680,0x128d0180,0x0edcb960,0x0be22440,0x0955c0c0,0x047042d0,0x04161c80,
-0x04521178,0x007791e0,0x01a2b752,0x00fc5fd0,0x01b7c600,0x020aa16c,0x0243da10,0x0207fbe4,0x00ea229f,0x01566c96,0x01bea08e,0x0292aa58,0x04896bc0,0x060f4c70,0x075bc3c0,0x08708310,0x0b6b3ac0,0x07f11a68,0xf58ea4e0,0xf30c0450,0xf3237400,0xfe788706,0x058dbc90,0x0a7926e0,0x0178c25a,
-0xf8fed808,0xf2ac4340,0xef988e60,0xee668be0,0xf0ef12c0,0xf23ca4d0,0xf3fc4210,0xf3565460,0xf86ccca0,0xf9fdf9b0,0x013ecaa8,0x069f7508,0x0401fe08,0x03dee2d4,0x014c1f7e,0x01544832,0x02180d8c,0x0226637c,0x02808b88,0x01949b66,0x0161a47e,0x0135ea84,0x0084e734,0x018f94ea,0x023881f8,
-0x0434fb28,0x04608b88,0x03c743e0,0xf66ee320,0xf83facb8,0x026fd6d4,0x0808c4a0,0xfcd8af50,0xf329e050,0xefdde660,0xf1498c50,0xf1715910,0xf5fcfe20,0xf5594db0,0xf56624d0,0xf5f06e00,0xf23f8d00,0xf32c5080,0xf6043590,0xfa301da0,0xf9ec93a0,0xfc89cb08,0xffa0a9c2,0x0035fd86,0x03473bec,
-0x02220048,0x020fecac,0x01d9cea4,0x0251d36c,0x02913088,0xff84d3b2,0x034a7bb4,0x0382304c,0x0191487a,0x046fe0e0,0x02ce63a4,0x05ee3a48,0x03bae2cc,0xf9a0e180,0x03cd13d0,0x0ee8b080,0x0cdfe9a0,0x0951e320,0x04651d38,0x0611bbf8,0x05799dd8,0x0b155fe0,0x0ef59570,0x119dfd60,0x0c2fb510,
-0x0821e350,0x05612e48,0x020bbc74,0xfed19058,0xfbd6c790,0xfadf0680,0xfab9e328,0xfc68cc84,0xfecf3be6,0xfef7005e,0xfe1ed00c,0xfe54cc02,0xfeea81cc,0x009ca3a1,0x002f9b40,0x012b6bea,0xffdade82,0x01bb3848,0x01817290,0x003dfc8c,0x0092d04d,0x00d73c38,0x008b1696,0xfc333134,0x06931c40,
-0x09095f40,0x074ee110,0x06c0c780,0x038140a0,0xfe50b900,0xfcb80d38,0xffcfa08d,0x00964191,0x01f130d2,0x0331bd9c,0x0900f110,0x09dd9900,0x056fb1d0,0x056c25a8,0x042b1db8,0x02036f40,0x004fc6a7,0xfebcfbcc,0xfcfebdc4,0xfc226258,0xfbf5d740,0xfd6b2d4c,0xfe908b70,0xffe0fa46,0x009ebbda,
-0xfff88646,0xffa9a745,0x009042b1,0x016ab9f2,0x02cb3d40,0x046fc6c0,0x02a0bf68,0x0158a306,0x01123b5c,0x05faccb0,0x014f354c,0x06b64950,0x04c84740,0x03e60858,0xff7d3593,0xff3be60c,0xfedc1dd8,0xfe7649cc,0xfdfacb00,0xfeb827d8,0x00fe0c14,0x01e57eb8,0x032f538c,0x04012100,0x02a539a4,
-0x00c61ae6,0xfe8dda06,0xfd7623ac,0xfe5c5cde,0xfef7e720,0xfd98bcb4,0x0015b313,0x01d48a42,0x007f7042,0xff833ea3,0xffc77af5,0x001de23b,0x006da5ba,0x001698c6,0x0038cad2,0x00547a5f,0x00c080e3,0xffeeea15,0x003125aa,0x0070cfbb,0x00e51462,0x027e8538,0x00075633,0xff761ec7,0x010651ae,
-0x018ad230,0x01fa1722,0x018f8d52,0x0104237a,0x00d7170c,0x004a90f1,0x00099929,0xff95323c,0xff4c288c,0xff407365,0xfe807e24,0xfde175e8,0xfcfc3754,0xfdf9e2e0,0xfe64e95c,0xff3a5c02,0xff7612c9,0xfefe4016,0xff20a4ad,0xff52d6c9,0xff37f846,0x00399262,0xffd15d50,0x0016c97a,0x011d203e,
-0x0039dc60,0x00fa7837,0x00b4d81f,0x011d8dd6,0x0199af9c,0x022ed664,0x01cc6c8a,0x014f4602,0x002653f8,0xff8eb712,0xff87d698,0xff2ea219,0xfed6a43e,0xfebd3e70,0xfec35d1c,0xfeea8032,0xff14c39e,0xfefdcbbc,0xfed65142,0xfe983aa2,0xfe57be98,0xfe5eff10,0xfe882884,0xfe934f20,0xfe7cd4a6,
-0xfe46015a,0xfe2c0d5a,0xfddf0268,0xfe95f3da,0xffb0fb91,0xffe2ec47,0x002de825,0x00e3f68f,0x009459e2,0x012d30ec,0x015b9ef2,0x00d0df81,0x00165a9d,0x00b9eb03,0x005fb42d,0x00b3a30b,0x00fd87f6,0xffd4835e,0x02d173d8,0xff2ea3d9,0xff876bad,0xff7d11ec,0xff633097,0xff714a07,0xff646885,
-0xff429bb0,0xff40aff9,0xff3f1ca3,0xff59b020,0xff831804,0xffb3e102,0xffdef3d7,0xffdb2975,0xffcc0eb7,0xffc7ef7a,0xffc53ba7,0xffc4c265,0xffa46774,0x01fc5382,0x02908a00,0xfffc7e98,0x021819a0,0x03203fc0,0x00b753f3,0x00ff657d,0x0111d512,0x0104a24c,0x019e9138,0x01d6ff0a,0x01ea93ec,
-0x03681b94,0x02378f18,0x0100df3e,0x0374aca0,0xffc43696,0x0197891e,0xffdc543f,0x01e02b66,0x01b9eb4e,0x01cafe46,0x027d7334,0x020f5c90,0x0201a738,0x0228886c,0x019bfe9e,0x014f23c8,0x0121780c,0x00de3b2e,0x00c19324,0x00a2f823,0x00d234cd,0x00e5ed6d,0x00ed9119,0x010c3622,0x013ac4b2,
-0x013561c8,0xffb69527,0x00634a69,0x03cf2810,0xffb151e8,0x003986d2,0x03980ee0,0x0337d0b4,0x0320d648,0x032fcc70,0x02fec424,0x02f293c8,0x02bcf2d4,0x001c6c89,0xffb7ca92,0x037738b4,0x00487987,0x01700aa6,0x01d3a6b4,0x03395d54,0x03817e3c,0x04ec18b0,0x037894b4,0x0336be88,0x03aa5bec,
-0x02a3b358,0x01fd615a,0x0182cf92,0x00975188,0x0012dcd5,0xffb47e7a,0x0000f222,0x000a7bdb,0xfff12f2b,0x00212780,0x00ad32fd,0xffea0f04,0x014e9e6c,0x00fe595b,0x005869ce,0x0106c228,0x0117bc06,0x00ff6422,0x01126486,0x008c4544,0x003f6d53,0x00efe419,0x0154ad6a,0x01086d08,0x014cf33e,
-0x017aaf4c,0x00ed3f82,0x0133ee04,0x015f9362,0x030289a4,0x04414310,0x0487b1b0,0x07a861b8,0x04da5be0,0x048f3c80,0x0593da50,0x03338eb8,0x01b92646,0x00b739a7,0xfec890e0,0xfdf622f0,0xfd451d78,0xfdfab064,0xfe4b81bc,0xfe5df51c,0xff392af2,0xfff84e87,0xff6411b3,0xfff8ebeb,0x007eb5f8,
-0x005fbc6f,0x003fba49,0x005d7b72,0x016ddc90,0x00faf9bb,0x0165a108,0x002c9293,0x01f18e56,0x015c9ca8,0x008a7141,0x00c4e759,0x008becbe,0x00cdd1cf,0x016603ce,0x02d8d46c,0x048f8cf0,0x074ba530,0x0946b230,0x0d70eb90,0x08529190,0x078457a8,0x09752c40,0x06ccf4d8,0x0513c288,0x040e8da0,
-0x008d57df,0xfe7c45e4,0xfcf7ceb4,0xfd70da60,0xfd4b9398,0xfcadb598,0xfd8e9dc8,0xfebe8458,0xfe524b86,0x00108e3d,0x00c538ff,0x0051a632,0xffe4fcb3,0x004ad333,0x01af90da,0x013ad4fc,0x0191ff5a,0x01518832,0x01ffa354,0x01e4495a,0x00c9e794,0x01a6e87a,0x01c31b7a,0x028e06f4,0x023ca1ac,
-0x049b2818,0xffa7b2c8,0xfd8809c4,0xfad5aec0,0xf99d0498,0xf8042f28,0xf789faa0,0xf5cad390,0xf5afb330,0xf55b7180,0xf4f5ed50,0xf5256610,0xf4b3d3e0,0xf403ba70,0xf5134f80,0xf71dcb40,0xfa916b98,0xfc3f8fa0,0xfdf458f0,0xff211b55,0x00e5755a,0x0105d144,0x005e82bd,0x007eef3f,0x00d3fcec,
-0x018e17a0,0x01a5de7e,0x01881928,0x00fc240d,0x00c973c6,0x01601e7a,0x0206e004,0x0078bbb8,0x00bef736,0x01bdf4fa,0x03384f44,0xffd731b2,0xf7ace0c0,0xf30d9210,0xf52c8dc0,0xf6e03e90,0xf3167570,0xf0b8fdd0,0xf0792c30,0xf62ee460,0xf72ded90,0xf75d14e0,0xf1f65790,0xeeec7640,0xec3aa740,
-0xeccb36c0,0xee6abe60,0xf23cfd50,0xf4e393c0,0xf8bea1d0,0xfb014bb0,0xfe687d4e,0x00983820,0xfffbd6e1,0x00414216,0x0072869b,0x015a29ba,0x01acf37c,0x023a00e4,0x016402f6,0x023a001c,0x023646a4,0x01fd44e8,0x020f528c,0x00c1a7ad,0x00ff0ebd,0xfef04bf2,0xf82d6a20,0xfbcca488,0x0109f2b8,
-0xfd251c7c,0xfae546a0,0xf972d428,0xfb221848,0xfab9a728,0x05440a78,0x0ae38530,0x0b1c5070,0x07a759b8,0x038e46f4,0xfda2d820,0xfd7b8290,0xfc32b880,0xfbb767f8,0xf9b4ccb0,0xfac29038,0xfb62ce70,0xfc369844,0xfe6ae098,0xff525baf,0xffc60632,0x00d87006,0x0263a6d4,0x02b980f8,0x02bd3008,
-0xffb800c3,0x02ae2fe0,0x020ead74,0xffe755cf,0x00a06710,0xff355ce0,0xfe432a42,0xfc350710,0x03b668f8,0xfef2001a,0xebd9c040,0xe88aab40,0xefebb900,0xf18f51d0,0xf33bd3e0,0xf5386420,0xf2703ee0,0xf118d220,0xf15b45c0,0xf80085f0,0xfb3a1ab0,0xfa000c70,0xfd1e90d0,0xfe67276e,0xff8ab5a4,
-0xffb7d504,0xff714ffc,0xfd070f74,0xfc084e54,0xfcb7004c,0xfc5b7a58,0xfd96bdf0,0xfef0aea2,0xffdf5dd4,0x008b2b2c,0x00368558,0xff30e5bb,0x010766e2,0x01a54fc2,0x01b8b45a,0x012f53c0,0xff94de17,0x00e7f561,0x01ef0db8,0xff78be72,0xf4595270,0xf0b06280,0xf437cfa0,0xf7afe380,0xf7723120,
-0xf775d8d0,0xf5bc1490,0xf533bf10,0xf45a87d0,0xf2ee5450,0xf4772150,0xf7104930,0xfa66e460,0xfc0b2670,0xfce3d4c4,0xfdd5ca0c,0xfcc8d88c,0xfd37fde4,0xfd9e9198,0xfce244f8,0xfe9c4c32,0xff122086,0xffe891c8,0x005e37ee,0x0075a25a,0xff98f070,0xff5ea2f5,0xff1471ec,0x00291d21,0x001c4cab,
-0xff9641d3,0xffdf3462,0x00638a80,0x0111e27c,0xfda1d970,0x01b86c16,0xf9c1d888,0xfb11b740,0xfcdcb34c,0xfda6e230,0xfd4d07d8,0xfe398bfe,0xff3735bb,0xff40930e,0xff260e32,0xfea0cc50,0xfde748ac,0xfb33ed80,0xf836d430,0xf6631ea0,0xf7bc89e0,0xfc01bc3c,0xff3b764c,0x009f6d53,0xffc94a24,
-0x001e65dd,0xffe37fa7,0xfe528c04,0xfef65270,0xff887664,0xffeccd8d,0x0057c44f,0x0094f1d2,0x0058ca93,0x001b296e,0x0017591e,0x003243a1,0xfff90d5c,0xfeff2a5e,0xfed13c86,0xfd518ee4,0xfdbe0d80,0xfffc619e,0xffdf6bfe,0xfe223c90,0xfd3af828,0xfccd6160,0xfc42cf58,0xfb8e9fb8,0xfbee9f70,
-0xfc4fe940,0xfc7a4dd4,0xfce0e2f4,0xfd8e053c,0xfe1470f0,0xff045e54,0xff4389f7,0xff0f06b1,0xfef94a8e,0x0025be22,0xfffc9f91,0xfee3c342,0x0063ec83,0x0110fa7a,0x0114eda4,0x00e6f3c2,0x017a9d50,0x00b1a9a1,0x004781f2,0xfef8b98e,0x000e099a,0xffcad24d,0x001b97b2,0xffe325c1,0xff872db3,
-0xff783b75,0xff30c228,0xfede45aa,0xfce93db0,0xfd20ea58,0xfcaf4870,0xfc9836a4,0xfc55bca4,0xfc2de92c,0xfbd079e0,0xfc4af860,0xfc9f1df4,0xfd209c24,0xfd8359f8,0xfdc1b77c,0xfde8ba20,0xfe2ee6c2,0xfe9eb264,0xff60bb06,0xffc6fea6,0x0062204c,0x0062b2d7,0xfef5c53a,0xff051021,0xfe155114,
-0xfeff34ea,0xfe56179a,0xfd937dbc,0xfdb357d0,0xfd7544d8,0xfd7d3338,0xfda6b424,0xfe3345f0,0xfe30b73e,0xfe054ac6,0xfe38b200,0xfd721300,0xfd9766e8,0xfc0757cc,0xfd86cf94,0xfda09e64,0xfd637b1c,0xfd5298c0,0xfd1e8740,0xfcf93d48,0xfcc012e0,0xfcfce844,0xfd1abff4,0xfd2f1ea0,0xfd4719e0,
-0xfd6dc264,0xfd9a435c,0xfdce4ff0,0xfdef467c,0xfe0683ec,0xfe27a682,0xfe477e0e,0xfeebcaee,0xfd2f48e8,0xfdca2e00,0x00fe7a55,0xfc67d6d0,0xfd2acf98,0x01067996,0x00d94125,0x00bfdb6b,0x00d7f17d,0x00747ccc,0x005887ca,0x004b1322,0xfd29517c,0xfc074cec,0x0149a62a,0xfd3ebb44,0xfd20766c,
-0x01cce832,0x04b8edf0,0x023d8df0,0x0292cfc4,0x02b91f20,0x02b55660,0x01d8d8ae,0x015d57fc,0x00ec139b,0x00f5e01c,0x00fad390,0x0114f684,0x0122051a,0x012cf3fc,0x014f619a,0x01309f18,0x01352f3a,0x013c9144,0x0168adbc,0x01624e00,0x0102814e,0x03e55af4,0x03551fcc,0x00bcc3e4,0x03caab48,
-0x0390cd70,0x0128e5ce,0x01474768,0x01397b0c,0x0101afdc,0x0197a860,0x01b6c730,0x018bde22,0x03a77680,0x041931f0,0x00e01178,0x03c88bf4,0x0375b584,0x049801c8,0x042bcb38,0x04a4d8e8,0x049223f0,0x02f330d8,0x01f1ee0e,0x00e1bbfc,0x00745571,0x0055f40e,0x00d5b4a0,0x0123fcf4,0x017026b2,
-0x01ad60dc,0x0140e960,0x01402292,0x01510010,0x01c6a62a,0x01537a68,0x01c0ca3c,0x01fc8d48,0x01bbf234,0x02709d94,0x01d59b60,0x02243fc4,0x02bd3d30,0x026bbb2c,0x03116098,0x03180ea0,0x02e37000,0x020c4564,0x01e0ffec,0x02a0c3f8,0x02cb1f94,0x02ffc48c,0x0355fb78,0x05b8c650,0x060b0810,
-0x060edd18,0x068a6788,0x06c98258,0x03285b18,0x00fea198,0xfe54b0e0,0xfd9ccf1c,0xfd6cb9ac,0xfe1e6bb2,0xfeae10aa,0xfef23afa,0xffc5b2c2,0xff4e1f7c,0xff7c0172,0xffd350ee,0x008f7315,0x00893ef2,0x008f7e5c,0x01b0629a,0x019e447c,0x01180700,0x01734f5c,0x01f96af2,0x0259c6dc,0x022913ec,
-0x01a54e32,0x02633a78,0x019c6798,0x02636398,0x01537770,0x026f7c34,0x0315fcbc,0x037b0c4c,0x04c0b208,0x0554de70,0x06fc1070,0x06f567b8,0x0880cee0,0x09899cb0,0x05c7a3b8,0x0294a034,0xfe6f0772,0xfcb7ee94,0xfbc48f60,0xfd742c40,0xff64d91d,0x00e6b07f,0x019c7f96,0x005b8fcc,0x00691428,
-0x00fda276,0x022528ec,0x01164f24,0x00477d39,0x00b507bd,0xff8727e3,0x007d8609,0xffcbc3b5,0x00030948,0x00e1d8ee,0x013c24a2,0x01500c46,0x007c5fc2,0x01b7c9a8,0x0148cf5e,0xffa7a63d,0x021f2684,0x038d5390,0x0298b3b0,0x03d62874,0x0632ef40,0x002b7c13,0xfd5d7dec,0xfd1dcf44,0xff5dd79e,
-0x005eee46,0x00ac62c9,0xffb87b96,0xfeb20dc4,0xfdf33988,0xfce6b548,0xf5e81c60,0xf318b0a0,0xf2e78360,0xf7097b60,0xf7e3ec30,0xf54bf3f0,0xf83661c0,0xfa9f33b8,0xff062d26,0x01064f02,0xff8f6996,0x008e4f56,0x004b8fd4,0x01015a54,0x01f65cb2,0x014ac4d6,0x016fb98c,0x01769942,0x02729150,
-0x02067770,0x0124368e,0x00c1b06f,0x0160f1ce,0x02082f1c,0x06c1fcd0,0xf9f2d580,0xfcb3e2bc,0x053a2f68,0x08aaf0f0,0x0ccd1d70,0x1128e9a0,0x120cf840,0x0be5eca0,0x0d75a820,0x0bfe5270,0x06d24c70,0x06ff0df0,0x04cb3fe0,0x003d03d6,0xfddc2684,0xfe5ee28c,0x02bd88a8,0x00cdd569,0xff474612,
-0xfe6e7576,0xfcff5a60,0xfe8ed196,0xff47cba6,0xff868ec9,0x003cf85f,0x01604082,0x01ae58dc,0x02568e44,0x01d55788,0x0317a07c,0x03429688,0x038a7550,0x0219a308,0x011ba8cc,0xff2eb7d1,0xfdf3b420,0xffceadf0,0x0471e218,0x0333c608,0x05653a30,0x0bdeb360,0x14e85820,0x158901a0,0x0bfa0650,
-0x05e3cfd8,0x02d71b18,0x022ebcd4,0x084ddf90,0x0b5284d0,0x0bbec2b0,0x0bc74bd0,0x096c2e40,0x061a9560,0x036b2204,0x02f849ac,0x00b40440,0xffe700ef,0xff7dbb28,0xff6d2efe,0x004cdd66,0x00e70dd3,0x02c74408,0x0243311c,0x020adb68,0x0037512a,0x01fc6c6a,0x01368e72,0x008b5509,0xff4b5c08,
-0xff436aba,0xfe29bdd2,0x000d828f,0xfe131070,0xffad231d,0x0b42b500,0x11ba3cc0,0x180687e0,0x156409e0,0x0f3d1fa0,0x04a5d530,0x05ffbcd8,0x04c48460,0x054ef0d0,0x02f81968,0x02dc2e44,0x04c2f408,0x03d88b18,0x03d04704,0x03ffd978,0x032044a8,0x02a112e4,0x00d554b7,0xfe046244,0x00495477,
-0x00c79bfc,0x00f596d7,0x016c5d64,0x01b422f4,0x0127caf4,0x00b761ff,0xff7c8a44,0x00ef8a4b,0x01576ff0,0x02b620f4,0x00fe441e,0x0163cc7a,0xff698c4d,0x00b7cc0c,0xfc9aac60,0x089f0150,0x0fa4a410,0x0e960350,0x12996660,0x118498c0,0x0f984020,0x0a496fa0,0x0a5d78d0,0x0aafa0d0,0x0ddbfec0,
-0x06ee56c0,0x03881e0c,0x03e3559c,0x01156078,0xffc775c9,0x003407a7,0x01ac83c8,0x036928a0,0x03d1e20c,0x01476334,0x02b7bda4,0xfff608e9,0x005d2df1,0x011463cc,0x01e84f30,0x01344fa0,0x0118e532,0xffad1f8d,0x00f5939d,0x010a6ea4,0x011e1f40,0x00a0d0e3,0x0058442c,0xfeee6ebe,0x01f805be,
-0xfb662228,0x0359e6e4,0x06509c10,0x06275428,0x083f2af0,0x06c6b300,0x046c0198,0x016a597a,0xfec86656,0xfca289f4,0xfbaee248,0xfc8b00f0,0xfe8b8e1c,0x0068a8f9,0x02b760c4,0x03e44af0,0x04294bb8,0x03e5a868,0x039fa128,0x01968dbe,0x00b0e7b6,0x020a2c70,0x0188eaf4,0x023666c4,0x015ef154,
-0x00f13aa5,0x00beca96,0x009d7a60,0x015fd2e2,0x01441230,0x01781cea,0x015652ea,0x01390f7c,0x01c81cd8,0x00989bb0,0x01e6b274,0x03df5ef8,0x03cca824,0x03efa12c,0x04345e80,0x04dd0ac0,0x03885808,0x02d56270,0x024e56fc,0x0274593c,0x02742920,0x01d72cd2,0x0180e8c2,0x00b00cc8,0xff6ac0be,
-0x00143bf4,0x00b86ebf,0x019ac58a,0x02283d80,0x030196dc,0x039fa8c4,0x02787324,0x0174f090,0x00e26aba,0x01418f72,0x0124195e,0x01634ace,0x00e23745,0x0223baa8,0x00fad36f,0x01bd0c5c,0x00e923b8,0x01be660c,0x01582112,0x015e130e,0x009e6978,0x025c209c,0xfd278460,0x03ea5034,0x039347f8,
-0x036ea010,0x034b6bf4,0x033e78a4,0x032f3580,0x02fa71a4,0x02492508,0x019b7504,0x012854b6,0x00b9b83c,0x00877d3f,0x00343e23,0x0094fc47,0x00aaf78a,0x00b26270,0x00e55bf0,0x00bdfd92,0x01684066,0xfff510bb,0x01f98880,0x0253b1ac,0x01136164,0x01215098,0x0236f5dc,0x029a1c98,0x02db4e20,
-0x021d4044,0x03368130,0x035a7698,0x02418528,0x02ac9be4,0x0143d77c,0x018ec11e,0x031ebbb0,0x02049970,0x049fb368,0x033ec1a0,0x038395ac,0x0364a8e4,0x036b79f8,0x03690d84,0x0384f3f0,0x0340f620,0x0310d16c,0x02d19924,0x0282d8b0,0x022a90e0,0x01b852a0,0x01d998b4,0x01f2093c,0x020c4188,
-0x022ea6b8,0x02293a4c,0x02a44798,0x0171ae96,0xff2b6686,0xfae70fe0,0x0299276c,0xff933904,0xfaa0c7b8,0xfab2d1a8,0xfada84a8,0xfb371630,0xfb1001b8,0xfb1edd08,0xfb705770,0xffb22b3f,0x037e7a14,0xfa65d338,0xff07d0f8,0x03d0d4e8,0xf9b08e40,0xfc5d6d70,0xf86f2370,0xfa35d8f8,0xf952cde8,
-0xf93f2c80,0xf8eb40a8,0xf8f68600,0xf9343c08,0xf9a38ea0,0xf9dfd2e8,0xfa0704d0,0xfa0fed20,0xfa0f6a60,0xf9efd218,0xf9f66678,0xf9fc1148,0xfa235c20,0xfa094728,0xfa8aed38,0xf953f100,0xfc2553d8,0xff9c8745,0x0622afa8,0xfb2343f0,0xff70d3ee,0x05c00e20,0x05a33f18,0x05824c10,0x04d8fb98,
-0x0527d348,0x051f34e0,0x04c00968,0xff84438d,0xfa5b9508,0x063134c8,0x007ca5fe,0x040518f0,0xf7a4a7c0,0xf6ef3a50,0xf61ab9e0,0xf5cb2a60,0xf52c62a0,0xf53d22f0,0xf5fa3a30,0xf748f1c0,0xf840cdf0,0xf8b2c490,0xf912b920,0xf90e4e48,0xf8cc8c40,0xf8f1a070,0xf926ab98,0xf99045c8,0xf98dc7b0,
-0xf9e10d20,0xf9d308e0,0x00b74891,0xfc5de854,0xfc4d93b4,0xfda83f08,0xfe6255c6,0xfcb7ff14,0xfc783d8c,0xfc071a30,0xfd4817ec,0xfbe86878,0xfbb1d688,0xfcef8eb8,0xfc4dac90,0xfe153a52,0xfe3366c2,0xfaf566f8,0xff47fc3c,0xf9fbd3f0,0xf47c3a90,0xf4cfa940,0xf3774030,0xf219dfb0,0xf21d1f30,
-0xf3221700,0xf5ac3d30,0xf71bfcd0,0xf7c302e0,0xf84c0de0,0xf85e5100,0xf7e36340,0xf83eb820,0xf89baf30,0xf96e6840,0xf9a2e030,0xf99f4920,0xfbb8edc8,0xfd08385c,0xfd8deec0,0xfdde76c4,0xfe17dc4c,0xffc94f0b,0xfed695fc,0x007b33dc,0xfde82ae4,0xffbc23e6,0xfece39d6,0xffff54cb,0xfe8469f4,
-0xff52534b,0xff40f0c0,0xffcf24f8,0xfcf12c04,0x00e5eba4,0xf68c1580,0xede05800,0xed42a780,0xebe28880,0xea2a5100,0xe9d6aee0,0xeba2cea0,0xf08a5c40,0xf4244ba0,0xf56b0d00,0xf6a4a120,0xf662b020,0xf5e9d7e0,0xf713f160,0xf830e468,0xf95fb498,0xf93a5090,0xfa10d7e8,0xfb8b73c0,0xfe7845a6,
-0xfd5d5170,0xff17a06a,0xfeb6dc5e,0xff86d7ac,0x006205ac,0x00a53e16,0x015f1e02,0xffec73b9,0x01267e6a,0x004e0f2d,0xff223528,0xfecd69ba,0xff3893e5,0xfeb7d85e,0xfd34e260,0xfb7bc568,0xfacb3270,0xfe252ec2,0xffcd3c8c,0x02075abc,0x0351a714,0x02d95f9c,0x01cdbefa,0xfba63b50,0xf7361e40,
-0xf3f3bc10,0xf467d180,0xf56e3760,0xf65a3510,0xf4763fd0,0xf4eedac0,0xf7fb6f00,0xf9d1a360,0xfa0ed880,0xf887d7c8,0xfc58532c,0xfcb53300,0xfe0bacac,0xfebadc7a,0xffccc590,0x01a6be54,0x00761a12,0x00b9f008,0x0163b7e8,0x0111e71e,0x0061d43f,0x001d58eb,0x00a77265,0x010159bc,0xfff9562f,
-0xfd917d40,0xffac928a,0x0405b248,0x03ea8094,0x023aea94,0x0518efa8,0x010d4bb0,0x0048a308,0x02433b34,0xfde6ccb0,0xfda4a068,0x00942090,0x00580ded,0xffc7a0b4,0xff647c73,0xff1ee398,0xfe07cfa6,0xfc1f64b0,0xfa48ced0,0xf95dacc0,0xfaf952e8,0xfbe51e10,0xfbec37a8,0xfd56ed74,0xfe38a186,
-0xff611f5e,0x0188622e,0x0117d778,0x0140916c,0x00ec771a,0x025aba44,0x029952a0,0x00ef9289,0x00450e2c,0xfebe4294,0xfe742b5a,0xff54af1a,0x030f1bcc,0xffdf965b,0x00ca3566,0xfdeb9614,0xf29199e0,0xf0b705e0,0xee507b80,0xf04d37a0,0xf4967b10,0xf6eda680,0xfa2a4148,0xf8380df8,0xf8015970,
-0xfa212278,0xfad05250,0xfcfbb314,0xff6a5968,0x01efb762,0x01b0bb40,0x006c9cac,0x00803361,0xffe02f73,0xff7b03e3,0xff25274b,0xffdfba98,0x027196f0,0x00b95de6,0x005af0f4,0xffd6f053,0x013afae8,0x00fa50d2,0x016053ea,0x0075b661,0x00cf1d76,0x01c8c4dc,0x01e8c360,0x01c369a4,0x05b7d0c8,
-0xff3ed372,0xf7681f70,0xea512a00,0xf50d6750,0xfc51740c,0x02f73dec,0xff50e344,0xfeb08046,0xff9b47af,0xfd42cb8c,0xfd60f614,0x0037675c,0xfdf8b348,0xfcf8f7b8,0xfcb9f408,0xfca18118,0xfe07ba12,0x00bc5dd8,0x01f02692,0x01a6b11a,0x02e40010,0x016aed78,0x0141cf7a,0x0301b2f8,0x005c556b,
-0xffec494a,0xff5cd85c,0x002b63a0,0x00981011,0x0155d760,0x007b7c03,0xff8cce3a,0x011fbfbe,0xffc8628a,0x06c806b8,0xff2f9518,0xf13aa730,0xf13ddf60,0xf2668830,0xf61190a0,0xf718ff70,0xf9694ad0,0xf6d08e20,0xf60d06d0,0xf524e020,0xf9adf370,0xfb3c8730,0xf9711840,0xfd90db1c,0x00128b30,
-0x01ea7b98,0x02f28cd4,0x019bc2da,0x016a233e,0x01bae932,0x000521db,0x0158b430,0x00e3cd17,0x011087e6,0x014ba90c,0x01cd846a,0x0180cee0,0x0054d258,0x003dc092,0x00858c81,0x01294d62,0x01bfbc28,0x01c35514,0x0278bd94,0x017660ea,0x04350d88,0xfccc70cc,0xf91b3a10,0xfbd261e0,0xfc58b528,
-0xfd5ae92c,0xfd48fa0c,0xfc4729c4,0xfd7e0cc8,0xfdde2c8c,0xfda5d640,0xfcce4110,0xfc83b45c,0xfbfb2f38,0xfdfb3564,0xfe8cd450,0xff55f04b,0xff4ceb4f,0xff409860,0x01813402,0x02ac7764,0x0159752a,0x02250dc0,0x00ec7f80,0x009a24e2,0x005905c8,0xffc82cab,0xfff00170,0x0067fed0,0x007c1982,
-0x0070e0f9,0x000e0eaa,0x011987e0,0x007fcd67,0x005c2f83,0xfe7e0164,0xff8d2da2,0xfd702c4c,0xfc7c0c90,0xfd6ed80c,0xfd015240,0xfd618030,0xfd7f6d9c,0xfda589a8,0xfda189d0,0xfd6f0b18,0xfdc71030,0xfe82b73a,0xff4d0983,0x001bc06a,0x004cd29a,0x00c77a98,0x016fb266,0x00f806cc,0xffb60002,
-0xffc2c9c7,0x01305324,0x008f5726,0x00008073,0x000fbac0,0x00c874c5,0x0065f776,0x017b3692,0x00957cca,0x02519020,0x00848cdb,0x01190860,0xffbda2d9,0xffc3fe75,0xffe05398,0x00971922,0xff30754a,0x05aaadf8,0x007ee223,0x00078e85,0xffdc39a7,0xff750c26,0xff2bb32f,0xfedb96f0,0xfea0e53c,
-0xff40a34c,0xffe601aa,0x003a51a2,0x0092b966,0x00dcf55d,0x015408d0,0x01155a18,0x00dd4127,0x009d1f26,0x0093088a,0x00c24869,0x0066f4c1,0x019ebed0,0x0036dcf4,0x007b738b,0x0122ac52,0x0128f52a,0x00b8af49,0x006a0322,0x007cd618,0x0161c880,0x006f8874,0x00098771,0x0156e274,0x00f8230e,
-0x024274b0,0x0251beac,0x00abfb93,0x01a81242,0xfe84526c,0xff78c880,0xff28a6a9,0xff1d3d61,0xff07e54e,0xfef2ef74,0xfeb5153e,0xff011c30,0xff2c944b,0xff73f2f0,0xffba455b,0xfff94052,0x0046dc09,0x00245ad2,0x001ca870,0x000e478a,0xfff08649,0xffedf3e4,0xff59e699,0x013c2ab0,0x033b88ac,
-0x04f633b0,0x00da526d,0x037954e0,0x057e0c60,0x0598a480,0x05971e10,0x053e8590,0x05b87278,0x05d42640,0x05ad84e8,0x03ab1044,0x008d32de,0x05bb3008,0x04206200,0xff1f1a16,0x0187f8c2,0xfc772e98,0x0277bc20,0x007c34bf,0x00ea8e75,0x00f8bd88,0x01f347c2,0x023db614,0x01f7e9fe,0x021e3344,
-0x020a6a2c,0x01d10dac,0x01c0880e,0x01ae3e54,0x01a49d2a,0x01bf545a,0x01cf4b7e,0x01ee36dc,0x01c736ba,0x01501b26,0x03338d7c,0xfd33a770,0xf9df7178,0xf69fbd50,0xfed951e8,0xfa6c5c48,0xf7430930,0xf705cdf0,0xf711b7b0,0xf7c95b10,0xf7017940,0xf6eb6030,0xf7258b00,0xfa3e65d8,0xff13af81,
-0xf6e53d40,0xf9131828,0xf7132770,0xfeeb453e,0xff7a2f15,0xffa72991,0x00671892,0x03095580,0x03dd6d28,0x02f85e3c,0x03ab6aac,0x03378ba4,0x024bd534,0x01e1ef4e,0x01d2d4de,0x02043310,0x027bb3e0,0x02926004,0x02c6b2bc,0x01ffe266,0x02315cd0,0x01bd1398,0xf9b29488,0xff528652,0xfeb02262,
-0xfeb7f024,0xfe37dd1a,0x00097cf0,0x00508d27,0x0018c18c,0xfe80121a,0x0071699f,0x010ca7cc,0xfefe3c7c,0xfef696ea,0xfc9b32fc,0xfc388200,0xff1b04f8,0xf9b72eb8,0xfcad5f2c,0xff1747c8,0xfdf1d9c4,0xfef3a834,0x03dac260,0x058e7990,0x0419d1c8,0x059f80f8,0x04e8f010,0x039cfa88,0x02de2a48,
-0x02868b14,0x029ae564,0x0325ce2c,0x035e35d0,0x03f98930,0x025c02d4,0x031f7878,0x00931696,0xfd8ae528,0xfe78f5e8,0xff101882,0x00088fa1,0xfed323e0,0x013b5624,0xfebd2aa6,0x01a84c72,0xfe744b36,0x00ee23ba,0xfe5f1e96,0xfee031f6,0xfdd1bdf0,0xfd356268,0xfb20e3d8,0xfc26ad24,0xf58c0d00,
-0xf82b8620,0xfd0244a4,0xfc2cdfc0,0xfde1d094,0x05bd7510,0x08bf25a0,0x071e0ff0,0x0967e680,0x07be9758,0x04609908,0x0268a988,0x023baa84,0x032c2914,0x0471d930,0x04bb07e0,0x0520d288,0x031057bc,0x02fd4430,0x0101fa4a,0xfcb17160,0x001a793e,0xfdebcfa0,0x0058a58f,0x00d9c319,0x01ca4350,
-0x01474cba,0x00db5bc1,0x01c33890,0x016d9d96,0x01379ba8,0xff57e2a0,0xfdefb624,0xfb7d0fa0,0xfa8c4aa8,0xfb05b348,0x01664f2e,0x0fc7c310,0x14983220,0x0e5ecd90,0x021343c4,0xffa12102,0xfb7ecbb8,0xf6e2c7d0,0xfa647f80,0xfc9cd564,0x0049584d,0x030a3e44,0x03c301a4,0x020e2e9c,0x03bbccdc,
-0x0401b340,0x04a0d028,0x02dc2520,0x03f85aa4,0x0129d444,0xfc618b78,0x008afafa,0xff9c5614,0x0069861d,0x0041629b,0x014dc0f8,0x00ba7846,0x00ccbbb7,0x0154ad5e,0x001790db,0x0089bd48,0x01ca6d3e,0x027d4ed0,0x00c85d71,0x020f8cec,0x002b0c53,0x0409dfe0,0x063f9d50,0x03665978,0x012629d4,
-0xfcefc45c,0xfc0603a4,0xfa062498,0xfa2872c8,0xf94ef400,0xfaf81870,0x01d7b236,0x01a1b450,0x03634314,0x059704b0,0x077ff788,0x07e67900,0x0798dc78,0x0635cba8,0x0640eb58,0x00c6cf16,0xfda4e1d0,0xfe7c15a0,0xfec24fea,0x00df0556,0x0160b2f6,0x024c54dc,0x01496d7c,0x010f5722,0x00f412bf,
-0x02843894,0x0230d34c,0x0182b6a8,0x00978f01,0x0362e1a0,0x03e6420c,0x05a606e0,0x016973d6,0x04587c28,0x0075708e,0xfe28cd58,0x014e8b20,0x04a8f700,0x09acfa20,0x0e1a42c0,0x087fb3d0,0x05dfa758,0x056d7348,0x03950514,0x034d7a58,0x02c7b9bc,0x01e0c4fe,0x00015d56,0xfdceb4a8,0xff2aa8cc,
-0x013bed86,0x01b003c4,0x01d69ada,0x0232d0f8,0x01077086,0x00b6f92b,0x011551be,0x0371d324,0x003aeab6,0xffddc0fe,0x004b02e3,0x01a62734,0x01fe142c,0x02ddc464,0x00f4505f,0x01d4b76e,0x0179580c,0x0223e6dc,0x01e246fc,0xfd55c594,0xfce65150,0xff56dfe5,0x069d6360,0x0428d6d0,0x0164b334,
-0x0110a48c,0xfd1a8f34,0xf9f7a160,0xf792a5c0,0xf9445558,0xfa97a480,0xfa5abec0,0xfea425c2,0x00ff87f9,0x01a38988,0x022cec1c,0x021e0294,0x012cd434,0x005cdc38,0x00cedace,0x01511a12,0x010e6af6,0x0198bcf8,0x034ed168,0x00e9eea4,0xfff701ac,0x003eba12,0x001fa0b1,0x01023090,0x036b0784,
-0x013a98e4,0x01686a7e,0x00e2991e,0x02a98290,0xfa94ed60,0xfd88f164,0x048ed4f0,0x029c67f8,0x00fc8d46,0x042fa1d8,0x0548caf0,0x03657028,0x006b0b2a,0xfde4d94c,0xfc3b93ac,0xfb94c438,0xfc95c0c4,0xfe66ebf8,0xfdfc9814,0xfde53690,0xfe4c998c,0xfe35f7ee,0xff8b99f9,0x0053a704,0x00c9c8be,
-0x01990bba,0x0126bdb6,0x0132e6ec,0x00f6318e,0x0141f686,0x0157b4ea,0x01acd3ae,0x0103697e,0x0118501e,0x004cbe57,0xffe81340,0xffe009a2,0xfff18baa,0xff11f9d0,0xfe034114,0xfaa160e0,0xfc9afc4c,0xff7ed5be,0xfe254362,0x0040d7a2,0x00289e28,0x022552c0,0x05705060,0x0339305c,0x016b6d02,
-0xff51778a,0x002a536c,0x009841e2,0x0184beb4,0x01b7b1d4,0x01b25fb8,0x01583c94,0x00b1fafe,0x00464b4d,0xff6b2c90,0xffffe78d,0x00286c22,0xff5eaac7,0x007e0850,0x010fc0b8,0x00c57607,0x010ce10a,0x00f50090,0x017f9e08,0x01791fbc,0x0151b958,0x01389efc,0x01265720,0x01174a1a,0x0027e8ae,
-0x0037f771,0xfde38ccc,0xffa0d634,0x019d4e14,0x00f14936,0x018bbcf8,0x01acb76a,0x021f4814,0x029d6d30,0x02790ab4,0x02f982b8,0x0326a58c,0x02348768,0x01394d7e,0x00612b2a,0x00a2bec4,0x00d3f749,0x01511bd0,0x012a95ac,0x01a32e5e,0x00d58d55,0xffe4be3b,0x00659485,0x00bc9bad,0x00d0f42b,
-0x00538778,0x013c5ff2,0x006cae02,0x015fbedc,0x0021c0a0,0x00bc851d,0xffa938ee,0xffc4318c,0xff4f9297,0xfe8e22f0,0xfdb44284,0xfe88191a,0xfea498fa,0x004a2b23,0x00e307ed,0x012e5ec4,0x01ba6e22,0x02379a00,0x029ccc4c,0x02ed851c,0x02a73924,0x0239b2fc,0x021251d8,0x01f0b6c4,0x01f1e1ce,
-0x01c320ce,0x01dbb08e,0x01d1cf02,0x01d05d9e,0x01addf28,0x019de80a,0x01c3606c,0x00aa02e2,0x019f68de,0x01585ab6,0x01667a32,0x012e5dec,0x017e937c,0x0193f3f8,0x011f169c,0x00424f5d,0x00fd1c88,0x016fd2f4,0x009c098e,0x00d1e7c8,0x0031fb11,0x0014632c,0x00d89448,0xff179412,0x0156313e,
-0x0112d22c,0x01402d74,0x015d4e92,0x016cdc22,0x018b21e6,0x01ca9444,0x01ba6066,0x01c4677a,0x01b51574,0x01afe0fa,0x01a5e160,0x019dba14,0x0189fa52,0x0176253a,0x01660014,0x016ac78a,0x014fea74,0x01b10dda,0xffd995f9,0xfebbdf30,0xfeb18cd4,0x0002179f,0xfe76c4c0,0xfe5971b6,0xfe287eda,
-0xfe354334,0xfe88a510,0xfe17939c,0xfe029cb6,0xfe124218,0xfe0dafee,0xff93fe83,0xfe9f4878,0xfde91b4c,0x010de9e2,0xff7e755b,0x02e22a2c,0xff2e0c65,0xffbd708c,0xffca6377,0xffaa3ad1,0xff409a95,0xff07c424,0xfedcf81c,0xfeeca708,0xff0190ab,0xff369e38,0xff445b1c,0xff599e62,0xff648800,
-0xff7aab26,0xff84c84c,0xff8d7834,0xff7ecaf1,0xff9015d5,0xfebccff6,0x02d41650,0x03dc7f8c,0x020e4e0c,0x0247ed8c,0x03ffeab0,0x0276c8a0,0x02a9c3d4,0x02aef35c,0x024c1994,0x0305a340,0x03049b24,0x02c9a058,0x039dad04,0x020f3178,0x017d7d9a,0x03bead7c,0x0117d2e4,0x01978ba0,0x0143ab58,
-0x01d71632,0x016ea124,0x002d05e0,0xff4b6255,0xfe9ef9de,0xfe508a68,0xfe4fea7e,0xfec434b2,0xfea47a14,0xfea81fce,0xfeae2e22,0xfecac32e,0xff0fd30a,0xff53c6e6,0xff847fe2,0xff0d1de2,0x0025a6ab,0x02bec3ec,0x006f4304,0x017bbfb4,0x010c8dde,0x01711184,0x0183b8b6,0x00c9ebb5,0x014a2cb0,
-0x0244eca8,0x00fbcd0d,0x0032e44b,0x00ad3dd5,0x00ab5fe0,0x015e9168,0x011b5598,0xffebfb73,0x01553a30,0x01b00036,0x02b5bc18,0x02bdf39c,0x01f1db74,0xfef40aee,0xfd789244,0xfc668a28,0xfc7815b0,0xfd122b98,0xfe6f303c,0xfee205f8,0xff4398c4,0xff529910,0xff93b936,0xffc3ac63,0xffbd215c,
-0xffb387ea,0xfeabd672,0x009fffba,0x01caa740,0x00a87618,0x00fd349d,0x00ee934f,0x01df31ee,0x01959ed2,0x019236be,0xffe64505,0x0230d42c,0x0055d5f5,0x01adcf5c,0x00988445,0x00bf8e9b,0x004f3cde,0x00e3ded2,0x017f25b4,0xffd5ef70,0x056859e8,0x07ed3908,0x089e5230,0x07700d08,0x02a101f4,
-0xff93c316,0xfcbfc3ec,0xfb9862d8,0xfb69fbc8,0xfd03a00c,0xfd2f7380,0xfd4c3230,0xfd276f68,0xfd4e6d38,0xfdf9e154,0xfeda99e6,0xfee83614,0xfe4e97a2,0xfff1ac11,0x0091f3d7,0xfebdf290,0x0056d391,0xffcbdc80,0x0027d6d9,0x01247d56,0x00cb77f2,0x00d45560,0x0050a033,0x013e312c,0x001f30e3,
-0xff3eb7a6,0xffb1317a,0xffdec5e2,0xffa25b14,0xff761257,0x0f966d90,0x0599f528,0xfc7d4a2c,0xfd0c8dd8,0xf8631a80,0xf71deba0,0xf7dcb690,0xfb0ae600,0xffcc12a0,0x0419b610,0x078dddf0,0x0865e580,0x09791f80,0x0af9a800,0x09545e90,0x07683428,0x04b39be0,0x029a3ab0,0xffdc4ba3,0x01411fba,
-0x02236c4c,0xffb76fe2,0x00480236,0x008ac37c,0x00f68f11,0x017319c8,0x005d3b07,0x008821c8,0x013ce9e4,0x01b362da,0x02cf6cc4,0x0414a0e8,0x02e5f528,0x0484aff8,0x0614dc60,0x0bba2760,0x04655b68,0x008b27c5,0xfe5a40a8,0x0140aee2,0xffe8c131,0x0b781fc0,0x0ed32ee0,0x0d73dbd0,0x091caf40,
-0x044ac3c0,0xfe4a9980,0xfdb4ab88,0xfcfa15fc,0xfb722328,0xfbc45550,0xfb06f870,0xf90b8d60,0xfd7334ec,0xfe9dcb46,0x01d2751a,0x040a7798,0x0283bf78,0x02244640,0x00cd9ac2,0x00b15fac,0x0241a030,0x017e5822,0x0162f196,0x00abd4b5,0x02061b08,0x022a1e14,0x01cffa80,0x03942f18,0x0374a994,
-0x041553b0,0x012bf5d8,0x03cc9afc,0x001a5303,0xfe816a36,0x03595edc,0x05312008,0x0556bce8,0x03611830,0x0276fa0c,0xfd9683c8,0xfb820700,0xfa611d28,0xfa510d38,0xf9df4be0,0xf8e90b18,0xfa3e3a10,0xfc80a7ec,0xff4657c7,0xffdb139e,0xfe99ae2a,0xffc5dc90,0x0069bd9f,0x00185966,0x01b13388,
-0x00ebd97e,0x0173c41a,0x04a4e498,0xffef317d,0xff080ee7,0x00706818,0x0124c7de,0x021ccc54,0x04b029f8,0x02e78d4c,0x00a2a558,0x0403e990,0x02ccb6f8,0x0073ab2f,0x02813478,0x088b8ab0,0x0a12fb50,0x0258e5f8,0x034883c0,0x02d1b468,0x001be7f6,0x0428b548,0x05357f08,0x03d05178,0x0441a408,
-0x04828678,0x04b93a10,0x03150504,0x0170c434,0xffee41f9,0xff151f36,0xfea5e2c6,0x0087e5c7,0x0254e4b0,0x015992d0,0x0061e4b1,0x011dc770,0x0170d0f6,0x033a8584,0x0102dbfe,0x00eef3c5,0x01786d02,0x0025c035,0x006928cc,0x01b16c9c,0x01478204,0x0108be34,0x00d3a72e,0xff80b575,0x045a1e68,
-0x06855ce8,0x068c3e48,0x05d9cc48,0x01711210,0x0192a878,0x0080b77c,0xff84aecc,0x01730e70,0x027ec7b0,0x03a342ac,0x03cd5b34,0x03b9c47c,0x04d39100,0x03ad5d18,0x02cd429c,0x00b5a5fd,0x00ee86b4,0x00db4016,0x00b18d31,0x01411392,0x008d2005,0x00933a3c,0x00c42669,0x00948eaf,0x00ac7ad4,
-0x00c8615c,0x006b3f09,0x017342b2,0x010378ea,0x01a074de,0x027cfdc8,0x01aab3ce,0x0194beaa,0x017e9db8,0x040d5638,0x03497944,0x0596eda0,0x01aa72a4,0x002b4d25,0xfecaea2a,0xfede1a40,0xfde5fcdc,0xfc147bc4,0xfeb955cc,0x0050a9e2,0x01d4562e,0x015d3e2c,0x023ba2a4,0x03e7bca0,0x03f058d4,
-0x031769c4,0x004f8c72,0xff399f16,0xff26a040,0x00a15a72,0x00782520,0x00fd088c,0x01ffcc42,0x0159a15a,0x00e7951f,0x011fef70,0x0139c99e,0x0169b3a8,0x0064966c,0x014f66aa,0x01a5f5c8,0x01db42ea,0x017446b4,0x01df905c,0x024cf324,0x0358c814,0x01bfa18a,0x0038ff46,0xffe2e33d,0x012b552e,
-0x01871e3a,0x0115ab8e,0x00a5357f,0xffd4070e,0x00806cf0,0x00beceab,0x01405566,0x016442f8,0x0177b9b2,0x016badc2,0x00abd0da,0x003f64ad,0xffc7e458,0x00412d03,0xff8eb3d0,0x0035113c,0x0198a692,0x01255c56,0x0140310c,0x01241f2c,0x0185cda0,0x0123c920,0x0169dd88,0x007b40e0,0x01a38a28,
-0x0083cd69,0x0108011e,0x00a7622c,0x010a2a56,0x0186e194,0x01e1eaca,0x01784d24,0x01a0fe24,0x016f6c32,0x00bf4726,0x005871bb,0xffdd882a,0xff70a46c,0xff15566d,0xfec453fc,0xfed7b032,0xfee9d3de,0xfefd7aa0,0xff17e96c,0xff394a0b,0xff772b51,0xff7316ab,0xff79f411,0xff50f0dc,0xff3e7bc7,
-0xff00b2f4,0xff121dcd,0x01baa9a0,0x00a3b72b,0x0176c4a8,0x0140de9e,0x01f66a9e,0x01de8c44,0x01a9f906,0x02297d2c,0x02b3d02c,0x0215734c,0x01d71816,0x0214463c,0x01fbe602,0x01d32312,0x01dbbdc6,0x0154b3d8,0x024226c4,0x007c544c,0x007acda1,0x00686a2d,0x0040a2b4,0x00359d34,0x001ec9e3,
-0xfff0db73,0xfff71bb8,0xfff1716b,0xffeedddd,0xfff0503b,0xfff2f075,0xfffdd2d1,0xfff29ab7,0xffef2ef5,0xfff3e42f,0xfff35581,0x00123bed,0xff6fac94,0x01c59048,0x026590f0,0x01b66cf0,0x01c0e6b2,0x02b0fb18,0x01e94552,0x020070a8,0x01d4058a,0x017032ae,0x01bf5922,0x01a62ab0,0x01928760,
-0x02a646c4,0x0221c71c,0x00eabb5e,0x0286d378,0x00a859fe,0xfee1050c,0xfca46518,0xfeeb26b0,0xfe966f24,0xfe543e48,0xfe50b556,0xfe6c34b6,0xfe9274fa,0xfeba2a5a,0xfeea72b8,0xfefd81c8,0xff156a70,0xfef1fcca,0xfee643c4,0xfebaf538,0xfefa2dac,0xff0daef1,0xff2a0c9e,0xff1c37f9,0xff2c8e96,
-0xff8dbc7a,0xfcbf876c,0xfd0ca5e0,0x005371a9,0xfcf8be50,0xfcfdfd2c,0x00390839,0xffca68be,0xffbb1811,0xfffa877b,0xff706670,0xff47f483,0xff3c885e,0xfcf568dc,0xfcf41460,0x004d5d56,0xfd0ba7fc,0xff73216c,0xfdcf3e50,0xfd61426c,0xfc5cf54c,0xfc1a8a10,0xfbee3110,0xfc5b8bd4,0xfd178a0c,
-0xfe041ec4,0xfeb11982,0xff10a4ce,0xfed97b78,0xfe95ac46,0xfe1bec46,0xfeab89f2,0xfee5eec8,0xff3827c4,0xfef4e0ba,0xff7f8c64,0xfeaf4dec,0xfe5f4f92,0xff0f3199,0xfe1e576a,0xff17f9bd,0xff06b5ba,0xfee13f9c,0xfee95374,0xfe24fdd6,0xfdda992c,0xfe40cf80,0xff078707,0xfee51d7a,0xfeffca06,
-0xff0d1b11,0xfeff1588,0xfef39888,0xff39b697,0xfe3931ea,0xfb84c450,0xfb10f6f0,0xfa8cd660,0xfa67f2e0,0xfb4c3c40,0xfc892684,0xfe188c10,0xfef3e110,0xff49ccef,0xfecf566a,0xfe620260,0xfd5c9e80,0xfea66fd2,0xff0f5eee,0xffb35ab2,0xff92660b,0x003e1298,0xff4f68c4,0xfe88a12a,0xff448935,
-0xff683513,0xffae45ed,0xff90da60,0x0076b72a,0xffa9c216,0x0022e2a7,0xfeea8cca,0x0019d30c,0xff489b6a,0xff893805,0xffa03e7e,0xff80c367,0x0004cca0,0xff2622ec,0x02e216a4,0xfe7232aa,0xf81f8a60,0xf6b3cc00,0xf549c4b0,0xf4493320,0xf58b9d60,0xf7dae190,0xfb8f5f30,0xfea424e6,0x0008a559,
-0xff611d24,0xfe2d45c2,0xfc6c085c,0xfe4e6068,0xff1d5e1c,0xffe692bd,0xff63a0a0,0x006f4550,0xffef9b1d,0xff251d0c,0x0123a2a2,0xffec2199,0x00c3c0c1,0x01118dc2,0x02542ce0,0x010e63f0,0x00ba8fc0,0x00d52e16,0x008918a1,0x00884231,0x00b9b66e,0x012b1d50,0x01d39ca6,0x02b50aec,0x01b3233e,
-0xfb5ff120,0xf79d5ea0,0xf79c9680,0xf9104460,0x01243f50,0x00f0a2cd,0x02d42210,0x066a0550,0x028fb7ac,0x015ae45a,0x01386fbc,0x007e0b70,0xff82fdbe,0xfe209390,0xfbcd2198,0xfc66e5e8,0x00bbf5db,0x00d38016,0x021d73f8,0x0050d0d1,0xff3e4fca,0x01376148,0xff49f835,0x007882bd,0x00764f62,
-0x013f16d8,0x0063e8dc,0x00a8c8ff,0x01cc6b3e,0x020f69a0,0x01e64220,0x0057b636,0xfed5bd78,0xfed78190,0xfe7a12f0,0xfdd718c0,0xffbdf43f,0xfeef9ada,0x02082510,0x01cd61ea,0x01c417e8,0x00521f60,0xfee18b0c,0xfe5591c2,0xfcfd9c3c,0xfb313990,0xf6aa0a10,0xf573db70,0xf5526480,0xf608d550,
-0xf89d84c8,0xfa1936f0,0xfb808008,0xfbed24d0,0xfe1b9312,0xfe9cfc3c,0xffef513f,0x00ed010b,0x0044f9d0,0x01117f5c,0x00fe8cd3,0x02208528,0x014bfb00,0x0102fdaa,0x002f4c50,0x01e43de2,0x01f04d36,0x0195ae6c,0x0274e0d4,0x013f3e32,0xffe98827,0x004e8d1c,0xfd728278,0xfc9b526c,0xfe943d46,
-0xfa26ea80,0xf199b1c0,0xf1d0acd0,0xf4665c00,0xf9e82f00,0x009818dd,0x030524bc,0x01c5f930,0x007aa1b1,0xfe33be9c,0xfbee0528,0xfb148c68,0xfaddefd8,0xfbc7a108,0xfc948ed4,0xfe40994e,0xfe77d684,0xfe5893e8,0xff554b92,0xff2fd75c,0xffc00759,0x00e70950,0x04250160,0x006ac2fa,0xff61230f,
-0x000d98fc,0x004e7c48,0x010d41be,0x035db514,0x001c551b,0xfeb273cc,0xfedc0a44,0xfdbad5c4,0xffefd214,0xfe42c784,0xf6433250,0xf1580ce0,0xecd33c00,0xf171cb90,0xf4664ef0,0xf89d0e60,0xf5039590,0xf59a1e80,0xf85aa5d0,0xfc4d4fe8,0xfedcd7fa,0x0058beac,0x00d0b45e,0x007f85da,0xff9ffb2b,
-0x00ba03df,0x015b250c,0xffee40df,0xffa0f1c2,0xff92af21,0xff87b07e,0xffac2d30,0x0026d389,0x0269cf94,0x00ea8e02,0x00375bad,0x0155fe82,0x00227aad,0x0047d037,0x01583c64,0x00991aff,0xff7ab0c3,0x0036cb50,0xff6cbedb,0xff929879,0xf8367240,0xf3b31d10,0xf42146d0,0xf25bc550,0xf4f7dff0,
-0xf71036c0,0xfa5912f0,0xfa263810,0xf987b9d8,0xf73fa5f0,0xf95e7730,0xfb238090,0xfc09b1e0,0xfe5a322a,0x00000fb8,0x01087f56,0xffe5b0cc,0xff276e6c,0xff02930b,0xfedca636,0xff5f449e,0x00b238d7,0x008e72cc,0x00729292,0x005e7d8c,0x004e9196,0x004ad8d0,0xffd44270,0xfff05833,0xffe5144a,
-0xffe26801,0xffb14028,0xffc42528,0x008d5bf2,0xfd778f28,0x0188ca14,0xfc872920,0xfb2585f8,0xfba8d1b0,0xfbdc5b10,0xfede4560,0xff8aea08,0xfe6bb2d8,0xfefeb3c4,0x002622a2,0x018b877c,0x0074f9df,0xfe9c0306,0xfc5c9dc0,0xfc9025e4,0xfd632a98,0xfe76ea04,0xff9a7789,0x002edef8,0x006c7f24,
-0x001dd80d,0xff9e13d9,0xff1d12f0,0xff6ad97e,0x003c62af,0x009bab23,0x007bb8fc,0x008585d1,0x0098dfdc,0x00eb9afd,0x00cbce1c,0x002ba906,0x005dfbfd,0xff9475c1,0x00098130,0xfe0e63de,0xfd68c71c,0xfd957840,0xfdf4edc0,0xfdedc0e8,0xfddd7d1c,0xfdc4fc48,0xfdc68bb0,0xfdee46e0,0xfd55bfb0,
-0xfc6d14b0,0xfbb9d410,0xfd33588c,0xfefda89a,0x00b9366f,0x007e85cd,0x000d1d58,0xff70a582,0xfef5adde,0xfee266d6,0xfe6139b8,0xfecdb7e6,0xffdd5ccb,0x00928dae,0x00ab7075,0x00b9a998,0x008be389,0x008e647f,0x001d6b72,0xff94caee,0xffdf7ada,0xffce7d79,0xffbeaacf,0xff868e9b,0xff283f18,
-0xff30644f,0xfe744e8a,0x013e6df0,0xff92e656,0xffa1eb8c,0xff2592a7,0xfef679d0,0xfec6b8e4,0xfea30926,0xfe7fbd9e,0xfed8775e,0xff6c9db2,0xffaa0494,0xffc3530a,0xff764151,0xff6c7010,0xff39833b,0xff519c58,0xff8d1e11,0xffad1b0c,0x00192a9f,0xffbc516f,0xff10a1d8,0xff4daa5c,0xfec69faa,
-0xff567c8c,0xff3d28f2,0xff2ac42a,0xff5f5836,0xff136c45,0xff56c9f2,0xff891d78,0xffca4131,0x005954dc,0xfffb2817,0x006484f4,0x001dbeb1,0xfff54c92,0xfe7b7332,0xffb696ec,0xffc01709,0xff9a4427,0xff96f124,0xff7e33e4,0xff68622d,0xff3f1a27,0xff512d46,0xff43fb00,0xff50fca3,0xff55094a,
-0xff709278,0xff8116f5,0xffb1621c,0xffcb8943,0xffd9f33f,0xffd9e960,0xffe4220e,0x003bf950,0xfe7f7378,0xfeb4ec86,0x00c408d1,0xfe91a534,0xfeb13312,0x0104ef10,0x00fd8962,0x01195e92,0x0130fc54,0x0110eba8,0x011a667a,0x01108080,0xfefca6fe,0xfe7b69c6,0x0160255a,0xff1e6f2b,0xffe54909,
-0x028d9334,0x02a4b6a4,0x022d1ac4,0x0219cec0,0x028eaf08,0x02bd07bc,0x034565bc,0x034d6d0c,0x02f2c388,0x02e69a14,0x02bd2e14,0x026ecd40,0x0268f048,0x02560010,0x025c1c2c,0x024ddd4c,0x024de458,0x02439dd8,0x0264527c,0x022f8a78,0x026a0b70,0x030853a4,0x0158267a,0xfcd5e3a0,0x0373cb20,
-0x01a7840a,0xfd66ceac,0xfd7a6ca4,0xfd7d08c4,0xfd958d84,0xfdbfee8c,0xfddba548,0xfe11feec,0x01af5a68,0x037d25fc,0xfd42a714,0x011b4b38,0xff94813f,0x0166b0d6,0x01580458,0x02469998,0x02ef4b04,0x051367c8,0x05b684c0,0x04cfcbd0,0x0495d8c8,0x03db3dec,0x03107814,0x0312c024,0x0316177c,
-0x0324571c,0x02f9af88,0x02e4b490,0x02afea54,0x02f3dc2c,0x0274f7e0,0x02dc9ff4,0x0063e616,0x01cf19ca,0x0243be8c,0x01975440,0x01909d04,0x029d0548,0x02546688,0x02c7b094,0x02527898,0x029c8f34,0x0240e4cc,0x01dfdc2e,0x01fb2d26,0x0116e4c8,0x017c0a08,0x020dd34c,0x000ff476,0xff55edd4,
-0x003baf5d,0x01bd64ea,0x02f26270,0x07951388,0x085faa10,0x06442a08,0x06269580,0x04a49958,0x02df90f4,0x027b9884,0x021b3608,0x026d5250,0x0236927c,0x024904b0,0x0221ca14,0x0289ac80,0x025c6410,0x01f0ef82,0x023d7a04,0x01b62156,0x011483a4,0x01dd8c7e,0x01c9de28,0x0235ec9c,0x0141a922,
-0x01a72a00,0x0163d594,0x011a62d2,0x010eab10,0x0186425c,0x013ae0b6,0x013991e0,0x00a05606,0x007f0499,0xfd947ef0,0xfa66c5e8,0xfbe506f8,0xfe20400e,0x011c74ba,0x0a80d1d0,0x0d18b350,0x0a529e20,0x09937bb0,0x07059cb8,0x03ee9978,0x03e1f584,0x041ca658,0x044ff388,0x03cc98cc,0x0383895c,
-0x031c9d64,0x03f04400,0x026d2018,0x020c05d8,0x019a10e6,0x00bbd535,0x00b1418b,0x01061ec0,0x013c8cb6,0x01cae37a,0x01321bcc,0x00787000,0x006cf154,0x00d7e136,0x00d7a6f7,0x00b27416,0x00c26917,0x00b5ca71,0xff7c96a4,0xff7fd129,0xfe64466c,0x053e6b08,0x0823c980,0x06cc51d8,0x05a28f48,
-0x02c21e6c,0x0139ed92,0x0217fb60,0xffd026dc,0xfdf7f1cc,0xfc800860,0xfb1ca268,0xfa780170,0xf9b40010,0xfe97d7fc,0xff5c6489,0xfc0d5ce8,0xfe4a5ad4,0x002a0d04,0x04404468,0x02dc702c,0x0159d216,0x017ac02c,0x015788fc,0x014cde8e,0x01973f06,0x00e31600,0x0104fcac,0x01bd76de,0x01d67876,
-0x011c432a,0x0001f2b8,0xfff5f53a,0xff3b3ffd,0xff5c52bc,0xfe33ab6a,0x0218c90c,0x039db348,0x07d25818,0x07ec50f8,0x051e5d20,0x03abc51c,0x031935b4,0x0234b240,0x0116a4cc,0x0197b2b8,0x03876370,0x03eda404,0x046552a0,0x0560e170,0x044a9508,0x057614b0,0x085e5bc0,0x063f77f8,0x04310a00,
-0x02cba5fc,0x00fdef07,0x013dd3a4,0x00fbb65c,0x0132cd58,0x01696c14,0x026560d8,0x00f13caa,0x00c341cd,0x00f46665,0x021e99a0,0x0210a088,0x023350b8,0x024d1c60,0x035fc2b4,0x02cac964,0x041e9018,0xff8b1c2e,0x04214510,0x065134a8,0x043c7ea0,0x069130d8,0x08665270,0x09b031d0,0x0a333e50,
-0x052ae7d0,0x044dd0b8,0x0536f1f8,0x083a5c20,0x0a2f4eb0,0x0a613fd0,0x082ef220,0x049bb278,0xffc059eb,0x0044f623,0x00ccc5d5,0x0046bd99,0x00d1aaf3,0x007fa88c,0x015743a0,0x015d6a86,0x017a9afc,0x03c91c38,0x010c50ca,0xfffd88b0,0x0036177c,0x005423b8,0x01067fe0,0x03452794,0xffaec9bf,
-0xffdf61be,0xfe075cae,0x00065761,0xffddf124,0x00c72113,0x071f9020,0x0b92b650,0x13bce140,0x0a73a9b0,0x04c51b08,0x016c44b6,0x020077f8,0x02cdb1a0,0x046450b0,0x04992e88,0x04d116a8,0x04468498,0x0534bfa8,0x059726f0,0x04d36098,0x05ed2610,0x04d958d8,0x0234cda8,0x00763e99,0x00d7d780,
-0x00cc5762,0x011b9394,0x017cd2c2,0x027c3ff8,0x009aff7c,0x002c80a4,0x017e2654,0x00ace9be,0x00c4b87e,0x024300a0,0x00a0e77f,0x01c5e96a,0xfffcc81c,0x018e108e,0xfdc9a4b0,0x05a474a8,0x0c627de0,0x0adb16f0,0x0a3dc070,0x07ed3ca0,0x07e0a408,0x08402f40,0x08409af0,0x07f647d0,0x08ad1620,
-0x051c7748,0x0360233c,0x0317469c,0x01d0e724,0x00f0db0e,0x009db0a8,0x014585be,0x0186c49c,0x01a5a866,0x00d97d4e,0x0198b2f6,0x007721ee,0x00ce3086,0x011a970e,0x014848dc,0x0140636e,0x01105a06,0x008293a2,0x00d1350e,0x010059ba,0x0166ddd0,0x00d33d99,0x00796a0f,0xffa36c2a,0x01d5de90,
-0xfd63b760,0x0350b04c,0x05a409f8,0x03c56f70,0x028ba1c8,0x0285ffec,0x02c9ced0,0x043efc08,0x00ce9d43,0xff2119da,0xfebfa70c,0x00efb0be,0x022335c8,0x0253f48c,0x01c4c004,0x01afe198,0x01d8d58c,0x01e70332,0x020df7a0,0x00fc9db6,0x00420abb,0x00e6d45f,0x01195f78,0x01c5b64e,0x0144500c,
-0x0094c70c,0x00b7aefc,0x00b843f2,0x00d2508d,0x00e85e35,0x00e0f562,0x011def16,0x00a2b8a5,0x015d95f8,0x015c8cee,0x02800340,0x015b72b2,0x01578fe0,0x019eb8ba,0x01548c66,0x018acc1e,0x02575410,0x03140b84,0x043fba20,0x03e3ec94,0x03c20d68,0x02e24114,0x01bddcdc,0x008f9d1a,0xffa46c0e,
-0xffc6d41e,0xffb3e713,0xff7c6170,0xffc4b558,0x0062adf5,0x00d615e6,0x00516fbc,0x00375d10,0x002f75fb,0x0078a11a,0x007861e3,0x0113bcb4,0x008c2222,0x011986c8,0x009969ba,0x0114a846,0x00ee4929,0x01854d90,0x018c66fa,0x01620662,0x0113b8ee,0x01674184,0xff030d74,0x01d91ec6,0x01fff540,
-0x028b0c84,0x02d11348,0x0321181c,0x035922b4,0x03a01994,0x02d42878,0x022bdf1c,0x01c68b78,0x0176a626,0x0142221c,0x00da4f88,0x00fdcb0a,0x010bd44a,0x011d960c,0x01442f9e,0x0110d052,0x01716f08,0x0032d109,0x018a8f62,0x01e5a468,0x015479b8,0x0171f352,0x02234cb8,0x01f19f4a,0x02208de8,
-0x0185e44c,0x01b85704,0x015db4dc,0x00d645cf,0x00e9061e,0x0073d7a2,0x00d71031,0x0169fe3a,0x0271c9f8,0x029adb94,0x024abaf0,0x028f36b0,0x02ab1c9c,0x02cedb04,0x02ed4160,0x03355cb8,0x02eeb1e0,0x02c815a8,0x0287fc60,0x02425a50,0x01f922a0,0x01a2105e,0x01c0830a,0x01cdd970,0x01d7d644,
-0x01e6a412,0x01d91b24,0x0221d810,0x024792cc,0x0118e2ce,0xfe2d2d22,0x02cf6990,0x0156793e,0xfe4d62fc,0xfe5b4400,0xfe6602b8,0xfe8a6afc,0xfe8d9104,0xfe9f9790,0xfea47a5e,0x00fa5869,0x02b16838,0xfe36e32c,0x00dcaac8,0x02ee9d94,0xfc94bb3c,0xfe4e5c56,0xfbfcd1b0,0xfd08b710,0xfc9133bc,
-0xfc7f3adc,0xfbdcdbe8,0xfbc3d798,0xfc12a6c8,0xfc1206cc,0xfc2f5680,0xfc5bc178,0xfc76a2bc,0xfc8bb9f8,0xfc9b9888,0xfc9dfd90,0xfca2728c,0xfca053dc,0xfca8b280,0xfd0dbab8,0xfbff3220,0xfe6b8798,0x01231854,0x0580ab30,0xfda72e68,0x00f838f8,0x0543c628,0x05300318,0x05158498,0x049c6280,
-0x04dbd100,0x04db97a0,0x04b5a670,0x00cbdbac,0xfd276030,0x050124d0,0x0120bda6,0x01383980,0xfc2b0c0c,0xfcf35ca0,0xfcc26a18,0xfc8ece40,0xfacbd940,0xfa017608,0xfa9f5950,0xfa567928,0xfac11518,0xfb4b1da0,0xfbbc9c68,0xfbfcf5b0,0xfc0c1a5c,0xfbfc7308,0xfc03287c,0xfbf8b7c8,0xfc54b9c0,
-0xfc89ae00,0xfc60d144,0x01e4fbd6,0xfe559aea,0xfe52abca,0xff680c7a,0xffe847c2,0xfe80379a,0xfe4bee52,0xfdf43228,0xfef24b6a,0xfdcf1724,0xfdb0cebc,0xfef15632,0xfe581952,0xff8b7c20,0xfeffafd6,0xfcc7f5b8,0xfd2ee638,0xfc5c9018,0xfc7b4c28,0xfbbfa220,0xfb12cd68,0xf7efed60,0xf6ca2f20,
-0xf84e2ed8,0xf7b3caf0,0xf85999e8,0xf9803488,0xfa41d270,0xfaeee588,0xfb326948,0xfb4fb728,0xfb6e0ab0,0xfb685548,0xfc30172c,0xfc2686dc,0xfda6041c,0xff066f31,0xff235570,0xff0f8b6b,0xff947998,0x00c01bc9,0xff7a4877,0x00e3975f,0xfef89e5a,0x005baa0c,0xff80f1bf,0x0083dd61,0xfff16f31,
-0x0001620d,0xff6bf8a8,0xff3ac336,0xfd5fbf14,0xfb620618,0xfbc318d0,0xfd55b6dc,0xfd25faa8,0xfd0fc888,0xf81f8250,0xf4fa3010,0xf6280980,0xf4c832b0,0xf5f3ebf0,0xf7d61640,0xf9563408,0xf9f62690,0xfa1cfff8,0xf9fe4e48,0xfa5e51d8,0xfa893278,0xfbaa8e08,0xfc61e17c,0xfd31bf30,0x00174073,
-0xfecb0334,0xffdd06d6,0x000ef053,0x00d2029d,0x0114f1c6,0x00c2c319,0x00d0ccae,0x003ade71,0x00bdcc3c,0x0044516a,0x00264bed,0xffb16d21,0xfeba98f6,0xfe4109e6,0xfb83c4e8,0xff96b3bd,0xfcbd70f4,0xfc2cff3c,0xfae48ce8,0xf6462880,0xf3d68170,0xf3da44b0,0xf834c050,0xf777ab80,0xf6cc0700,
-0xf57700e0,0xf76aedd0,0xf9f78f50,0xfd2e5cac,0xfcd4d450,0xfc572c64,0xfb356fe8,0xfca30014,0xfbeee6d8,0xfc7ecb5c,0xffd25d7d,0xfe7b6c46,0xffc1adfb,0xffe78ef8,0x00608534,0x016cbe7a,0x00c76360,0x00b813a6,0x00e9c193,0x009779c7,0x00880798,0x0086fb12,0xffb8179d,0xff5acfd5,0xff05211d,
-0xfe2749a2,0x0420b8c0,0x04d02f20,0x056d6ce0,0x037ba0d0,0x011a67c6,0xfc448c94,0xfbcd6310,0x00d4c3ec,0xff465a90,0x00668f95,0x019c2f40,0x012f9154,0xffe0e4e3,0xfe56f3ca,0xfda4a18c,0xfc7158b0,0xf9d7caf8,0xfa74f398,0xfa14c728,0xfdc9e358,0x00158138,0xff47d77d,0xff821329,0xffa13d03,
-0x000b5fbb,0x018ce192,0x008f3c03,0x005becf9,0x0093a0b9,0x00fd63eb,0x011dd0a4,0x017ae040,0x019ba718,0x013fc44e,0x02aac818,0x024f1b14,0x03a4357c,0xffdb4123,0xff7069e6,0xfff89f2f,0xfab12e68,0xf7e6bfc0,0xf4a95840,0xf6ec3750,0xf9416880,0xfa392738,0xf8167d00,0xf61b9c60,0xf55b8e70,
-0xf6267840,0xf94d60a0,0xfc21c468,0xfe162754,0xff45a34c,0xfef61b4a,0xfe9c1a70,0xff515865,0xffb53593,0x009f43a6,0xffe681a7,0x007da0f5,0x02d97534,0x00e087d3,0xffe2d673,0x005c306e,0x0002912c,0x00d3cfa2,0x0320d170,0x01de84fc,0x01845f82,0x019247da,0x015fb3e4,0x01b6eef2,0x0177be38,
-0xfe811844,0xfbe8c6f8,0xf48aa950,0xf6b61c50,0xfa3de3b8,0xffa67330,0x00b9d495,0x01e35e36,0x013f5f0e,0x00721b1e,0xff9b310b,0xff6193ea,0xfd7a93e8,0xfccdc9dc,0xfd343c94,0xfd3fd9f4,0xfdf8e4c0,0x002a0d94,0x021edcc8,0x01250d1a,0x017868ec,0x01c7607a,0x015eb6e4,0x01b462f4,0x001c98f9,
-0xffc568bd,0x00cd47b4,0x002a4df2,0x006cf013,0x009c07bc,0x00e8c6f4,0x007059dd,0x01107bde,0x002f653d,0x03f99290,0xfea5df8a,0xf70fa4e0,0xf7c61920,0xf98049e8,0xf82f7358,0xf809b188,0xfa1f7250,0xfab336d0,0xfbc074e8,0xfc16b964,0xfde748b4,0xfdeea6d0,0xfd1f4334,0xff239284,0xffcec4f6,
-0xff0c5089,0x010c62c6,0x00439798,0xff64d76f,0x00878f6c,0xff2aefbb,0x000264ff,0x006d88f5,0x00880ea8,0x008a7f84,0x00f4ba97,0x007035f6,0x0048569e,0x00329e2c,0x00d8ac06,0x0184cc46,0x014eaf28,0x011d1d54,0x01951092,0x001ba376,0x0509a288,0xffd61a7b,0xfdbb5c14,0xfe5d8076,0xfc1d0e88,
-0xfba6b1d0,0xfb708d98,0xfbded218,0xfded68d8,0xff5c0f39,0x0022fb1c,0xffadf6f8,0xff671eb2,0xff3706af,0xfdf16b2c,0xfd7a0854,0xfe2d0db2,0xfea65238,0xfee952e8,0x00a76568,0x01213642,0x002f450e,0x00ce3603,0x00467cb5,0x004dccff,0x00299d91,0xfff57495,0x0036d2b3,0xffe7bcd9,0xffacec9b,
-0xffb33ab7,0x007fde04,0x004f0391,0x00174209,0x00bada9a,0x00626834,0x0030d38b,0xffa18bc8,0xfe327db0,0xfda4c898,0xfc921ed0,0xfd25a824,0xfd53eeac,0xfd7aca3c,0xfdb97a40,0xfdf8b494,0xfe8bb0d0,0xfeb8f65e,0xfedf5de0,0xff2a1af0,0xff1f2c21,0xff43d039,0xff6abbfb,0xff65ad44,0xfef64f18,
-0xff1060d0,0xffc9fab9,0x0009140d,0xffecbb51,0xffdb790d,0x00a02d55,0x002d1a25,0x010b5c90,0xff9cb147,0x00f69206,0x00743ef9,0x0190da8c,0x013bf89e,0x015ff1b6,0x018f5364,0x0204607c,0x00b01709,0x022df514,0xfe5bab32,0xfe671668,0xfe7f04b2,0xfe724fba,0xfe444fe2,0xfe14b0a8,0xfdf0674c,
-0xfe31752a,0xfe688d1c,0xfe8c93ae,0xfed5935a,0xff278eba,0xff768f4f,0xff861ed1,0xff8ca8d9,0xff7fde92,0xff7611f8,0xff88e41c,0xff514569,0x0157ef4e,0xff4cd86c,0xff23fcf9,0xffa794e5,0xffa9a059,0xfea9a674,0xfe6f53c8,0xfe7fc1d4,0xff59be2d,0xfe5bb9b6,0xfe20f652,0xfedb6b90,0xfeb475d4,
-0xff9c4a32,0xff7c9e71,0xfe82f590,0xffff52db,0xfde8c164,0xfeb775ce,0xfe83a2ba,0xfe8900a8,0xfe832c1c,0xfe81804c,0xfe6b0b84,0xfe9815a0,0xfeb91c9a,0xfeddf426,0xfef9bcee,0xff0fdc8d,0xff36f11a,0xff100c9a,0xfefbe12c,0xfef2b746,0xfee12ac0,0xfef624a0,0xfe5ea528,0xfff40da3,0x01c00046,
-0x04834568,0xff37a72d,0x019bf662,0x04b33ce8,0x04aa0440,0x04745b00,0x03fe0d24,0x042cab38,0x041402d8,0x03d5ab5c,0x019d9f46,0xff0855b8,0x043fd588,0x02018928,0xfe890560,0x01d64aca,0xfed8d6f0,0x02d68e60,0x014b8666,0x01810860,0x01465584,0x01af9e34,0x01d35ef2,0x01b8bcf0,0x01f20844,
-0x01efe440,0x01c0e0bc,0x01d72074,0x01dc095c,0x01e6b91e,0x01e6d8b4,0x01efc982,0x02044f28,0x01fe505a,0x01a9c636,0x02e58ac4,0xfef5fd7a,0xfc918ce0,0xfa4faa58,0x0016a7e4,0xfce82a28,0xfaaed890,0xfa915378,0xfa961a90,0xfb173058,0xfa8dc7e0,0xfa806dd8,0xfabaa698,0xfce6d82c,0x007da463,
-0xfa797308,0xfc24ce28,0xfb793b60,0x01f87b42,0x019adfe2,0x01314984,0x00aef15a,0x011ccc5a,0x013e2c4a,0x01229572,0x0230bdd0,0x026d1e54,0x01e04538,0x01ef58be,0x01fea8f2,0x025018cc,0x027b1fd0,0x028de438,0x02b74c8c,0x02604aec,0x0283a3dc,0x02070720,0xfc6ad094,0x005c92f0,0xffe9b028,
-0xfffe625c,0xff9ca7f4,0x008f8684,0x00e70d4c,0x00c4ce35,0xffa25feb,0x00dbfd99,0x0160b3d0,0x0058bdf2,0x00baddad,0xff4cbed0,0xff1f8588,0x01186124,0xfe59090c,0x01250c46,0x01dc7fd4,0x0086b8fd,0xfff871d0,0x00c1bebb,0x015d3ed0,0x00e9b0c9,0x02afae7c,0x0302f6d0,0x02178024,0x028436ac,
-0x028225f0,0x02d8c160,0x02c9f1b8,0x02e670c8,0x0386f988,0x02babaf0,0x0360b098,0x0131de6e,0xff20f61d,0xffede310,0x00268525,0x00fe4f58,0xfff63af9,0x00fbc8d3,0xffbbe72a,0x01b7d37c,0xff916deb,0x00e3fbd4,0xff6bf86e,0x006a614b,0xfff556c8,0xffb01eb2,0xfed889e4,0xffa1c60f,0xfdc44c88,
-0x01f2636e,0x02f1a8e4,0x015d523e,0xff40c624,0xff032bca,0xfef684da,0xfef7432a,0x02b2e3c8,0x040f5538,0x02924e4c,0x029a99a8,0x02c9967c,0x03d9bb04,0x040e19e8,0x0433d628,0x04bc51f0,0x03a05524,0x03ac9e54,0x01d51450,0xfec4e466,0x0139fac8,0xff697217,0x01b55836,0x01e11a3c,0x01d453c6,
-0x01568ba0,0x00ac757c,0x0192d352,0x00bd285d,0x00fa0bf3,0x011d01f4,0x01397bb8,0x0046915d,0x0057bb2e,0x007c8546,0xfe8f13ae,0x03170cb4,0x04e150c0,0x01c57a06,0xff89ae83,0x0077790c,0x01be118e,0x0268ae3c,0x009460bb,0xffe31073,0xff7dbcfd,0x00141504,0xffafe884,0xfec9c0ba,0xff4bffc6,
-0x006e649a,0x020db4ac,0x0284d768,0x03cdcfc4,0x012194b8,0xfe27ee2e,0x01009842,0x005fe9f0,0x00ec8330,0x00bb70f5,0x012004ee,0x0157f276,0x0130653e,0x00d135a0,0x01255b4c,0x013b2170,0x00703620,0xffe7a6b5,0xfeba51fc,0xfecd6e84,0xfeb96a44,0x057f1168,0x054d8e68,0x03678138,0x037da814,
-0x0684da90,0xfe5eddae,0xf983ed38,0xfab514b0,0xfbddcbd8,0xfc901ec4,0xface6a98,0xfc0ab324,0xfe110b8c,0x007e96e0,0x035e8ef0,0x047e9788,0x04780f10,0x031477d4,0x0294a82c,0xfee396e2,0xfd5c24cc,0xfea0c994,0xfeff9f40,0x00d45f10,0x011cd3c8,0x015bddfa,0x00e37192,0x0073a51f,0x0054ff09,
-0x00fb15ba,0x01164a9a,0x02b3975c,0x00fac10d,0x026305e8,0x03fdf9e8,0x059e4150,0xfd7b9fc4,0xfe0f310c,0xff0e6d23,0x00ad856c,0x04a83d88,0x0612a598,0x0a296800,0x0be57a50,0x0aace710,0x06ee4cd0,0x02eaa594,0x01c00698,0x00b2b53b,0x00619298,0xff2da4ba,0xfe0036d8,0xfd8934dc,0xfd49e970,
-0xff3d1fd3,0x00c8bed4,0x00ddf874,0x01554b24,0xffaa366b,0x0137184c,0x0199bc9a,0x01d420ac,0x0113747a,0x006ad36f,0x00e55344,0x001f472a,0x00e8dead,0x02ed53a8,0x02486290,0x01b5b910,0xff5a3125,0xfe335b2e,0xfef51170,0xfdc1c134,0xff4f9bcb,0x003c4853,0x049004b8,0x03926214,0x028390c0,
-0x02316584,0x017f5046,0x01ed5b72,0x02c3d8ec,0x025dedf4,0x012abc2e,0xffdc1547,0x0107c9ee,0x01cd4d32,0x01c2e034,0x016a877a,0x011092f2,0x001ba5b9,0xff4e8baa,0x003e65f9,0x00d2ea02,0x015a6410,0x01296584,0x010dfccc,0x00c68a0f,0x00403241,0x00f01f42,0x0080ccca,0x00c9eac5,0x01467674,
-0x00ea0e21,0x01616b02,0x0099da25,0x008256e8,0xfc661434,0xfeb1ada0,0x02d0c074,0x0223f218,0x02e5867c,0x02ebe138,0x03560f74,0x03a6fa28,0x01cc2a04,0x0174d8da,0x0222e508,0x01ea5da0,0x023742d0,0x01c7c784,0x008c535e,0xffce0c66,0xff8c394a,0xff4cd09a,0xffbf031f,0xff4043ad,0xff3652fa,
-0xffdb80df,0xffbfcbe1,0x000a1eda,0x00606f70,0x01062508,0x00aa71c4,0x00c53b6b,0x002e0a29,0x009dbb1b,0x008b6a67,0x00a6ab98,0x001998a3,0xffb2b475,0xfefa0d84,0xfeb52192,0xfcd56ed4,0xfe642152,0x00ad880f,0x008eaece,0x01d28f76,0x01fe48f2,0x030aa798,0x05245910,0x03d9ca10,0x02ee7bf0,
-0x0163c464,0x017c332c,0x01743cca,0x01ba0268,0x02105658,0x0217302c,0x0205409c,0x01db2710,0x01298d9c,0xff53a041,0xff980c32,0x000956e7,0xff63373c,0x0022d18d,0x00c9bf72,0x0124c592,0x00caa4c1,0x007fe078,0x011fed14,0x009857ce,0x0076d7c6,0x007b6313,0x003fe9bb,0x002b5feb,0xff84c2fd,
-0xff92849d,0x0078b84f,0x01c6f7f6,0x026ba578,0x01a44102,0x01884a9c,0x01dc835e,0x02221450,0x0272b900,0x0184ad9a,0x011fb6b6,0x00a9ab48,0x00b4c0ba,0x009f9333,0x007967d5,0x00768f41,0x00680b5a,0x009edd9b,0x00d31cf8,0x01d70dee,0x015fd55e,0x00123fdd,0x006f2908,0x00a675dd,0x00890210,
-0xffc7c1ee,0x0002b7c0,0xff83a189,0x00e1e55a,0xff8593f0,0x00e1045d,0x004a45d7,0x010e7fde,0x0087ee33,0x003756f3,0xff8b1274,0x007389ee,0xfd361638,0x004ec701,0x00f73493,0x01622430,0x01fcf15a,0x02841574,0x02fa7084,0x038e544c,0x03232500,0x02b07a00,0x0220d228,0x01685ab8,0x00b2ee13,
-0xfff710c7,0x00348913,0x005b8feb,0x007acc47,0x00713126,0x007d33ab,0x00b0f3fa,0xfeadd830,0x0046e82f,0xfff9f639,0xffc15fa0,0xff847fed,0x003d378c,0x007ca868,0x00010e68,0xff179910,0xffec7105,0x0006d24a,0xff40ca2b,0xff7cfc6c,0xfeeca0b4,0xff051a44,0x00202362,0xff4dd0b0,0x01f1543e,
-0x0170d29c,0x01b0f6b4,0x01d41a0a,0x01eb46be,0x020a0ac4,0x024b9944,0x0203b084,0x01e465a6,0x01cb5926,0x01ba9df0,0x01ad46f8,0x017a8982,0x018cfa14,0x0184e6aa,0x01891048,0x0198410e,0x01816a7a,0x02186ef4,0xffac1c84,0xfe215242,0xfd05f270,0x00310d82,0xfe10592a,0xfcab15f8,0xfc8d47c8,
-0xfcbe2930,0xfd31a804,0xfcd8180c,0xfce88b3c,0xfd0e1380,0xfdec9d90,0x000f6624,0xfd232f18,0xfdb2c684,0x01d28f64,0xfe98c106,0x01fe36c0,0xfdebeae8,0xff0c99ce,0xff006305,0xff02f1f5,0xfeb4c684,0xfe72bdd2,0xfe094c12,0xfe61ca44,0xfe6c7c90,0xfe35a558,0xfe6c0f12,0xfe7c97f8,0xfe97c0de,
-0xfe7c265a,0xfe7bd4e0,0xfe7eebbc,0xfe856d5a,0xfeb98344,0xfdc255fc,0x01e690c4,0x035e85f0,0x032cf4ec,0x01393e2e,0x035c9a14,0x0328d100,0x036a056c,0x036afafc,0x02f6610c,0x038ed174,0x03a16c48,0x03931bf4,0x034a6678,0x00e72f7f,0x0305d1f8,0x039cae54,0x032d14f4,0xffa97a1c,0xff82d08d,
-0xffd135a3,0xff5d131f,0xfeb2dbf8,0xfe56e9e6,0xfd65a16c,0xfe074d92,0xfde508d0,0xfd4399b8,0xfdb5e4e4,0xfddb3320,0xfe252bbc,0xfdd0f5c0,0xfdd97588,0xfdf22218,0xfe535126,0xfe0daf36,0xff12c5ed,0x02d6b7c8,0xffebe5c7,0x00df0384,0x00ac9fb7,0x01225a86,0x00740e16,0x001db032,0x00741a59,
-0x016c9c88,0x00115610,0xff744a2b,0x00a0a3b2,0x007edd09,0x0180acde,0x01a7d0ac,0xffcbbc87,0x021f1ac4,0x0077b591,0x009c522d,0x019d87aa,0x010df3e4,0xfef70efe,0xfdef51a4,0xfbbd7360,0xfd9f1018,0xfdc76d60,0xfc81bc88,0xfd8168d0,0xfdc90bcc,0xfe6477c8,0xfdc532cc,0xfdd4ce6c,0xfdc97e44,
-0xfe3569b8,0xfd7b9604,0xffdbb098,0x0163105a,0x0092fac5,0x00be2fd1,0x00b7f7eb,0x01b2d58c,0x005499a2,0x0181b014,0xff9fe979,0x01dcece0,0xffc4f587,0x0151642a,0x011d4744,0x014485a4,0x0149c9f4,0x02023d6c,0x014a1016,0x035041f4,0x02909604,0x037f1b2c,0x0457cae0,0x023f3b64,0xff9f393f,
-0xfe772154,0xfb6ea588,0xfd85e0bc,0xfd139ccc,0xfafeafa0,0xfc52baf4,0xfcf0679c,0xfdceeccc,0xfc9f941c,0xfc92c980,0xfcff59b4,0xfda832c0,0xfd583c20,0xffa1de46,0x01395742,0xff0022c4,0x00fcc598,0x007b2a43,0x00b86657,0x00a4a8ab,0x00c80a49,0x00bd14a6,0x0042ad5b,0x007af45b,0x002ac568,
-0x012426bc,0x0194d268,0x024434c0,0x026a3d14,0x02018634,0x03a47cb4,0xfed0c2d6,0xf9d9ffd0,0xfb562580,0xfcbb2f7c,0xfbca8888,0xfc2cba4c,0xfb0b1b78,0xfcd382ac,0xfe032288,0xfd942a34,0xfe663d1a,0xff1b4372,0x01157070,0x01fc23de,0x01f898f2,0xffc9214b,0xffaa374a,0xfe3cc6e2,0x002ef3fe,
-0x018d8d78,0xff4ae403,0x00cee549,0x00f76a1d,0x0135261c,0x00eed605,0x0132a0da,0x01319d2e,0x00bcb787,0x01df13f2,0x01a84132,0x0065f67f,0x007a6383,0x0178c630,0x0134e25c,0x02643fd4,0x03453b50,0x00b62144,0xfff77ac5,0x021159a0,0x03ecb7f8,0x00e6ed17,0xff956edd,0xfdbbda10,0xff4ae2e0,
-0xfeefa684,0xfda8d648,0xfef882d4,0xff8d9074,0xffbcbbd4,0xfdaec32c,0xfcaf2b0c,0xfbf8f568,0xfec1b5f0,0xfea1cc8a,0xff9b3d20,0x009c7950,0x00124bb9,0x00427c77,0x003d1635,0x008225cf,0x01020370,0x00bcd7c3,0x005df969,0x00389a0d,0x008a00e3,0x013ee3a0,0x02a7d1f8,0x01d51ec0,0x013c7534,
-0x02c095c8,0x01903484,0xfee18bc6,0x0047f8e1,0x00c515db,0x01abed5e,0x04730500,0x02f5decc,0x036af7ec,0x017967fa,0xff8ed957,0xff065ef4,0xff58a1ef,0xfe7c04a0,0xfd3ce9e8,0xfc212954,0xfb4ed230,0xfc46cb18,0xfe06f782,0xfdffa41c,0xfcf85598,0xfebe82a0,0xffaa1b86,0xff667abb,0x00283318,
-0x01d0927c,0x01b529c8,0x008aa973,0x0064d697,0xffc26cac,0x00710a60,0xff9a3999,0x007b78c4,0x02b15e94,0x02a2fcf0,0x018a6ed6,0xfff0661c,0xff7a6ad8,0x00f8a62c,0x02a53ce4,0x03684a00,0x04016850,0x0370cf24,0x01c0ab74,0x02287430,0x02dc54cc,0x07d8a4d0,0x0a27a490,0x099e0cf0,0x07a87020,
-0x061c3b00,0x055cb820,0x02c19a90,0x012740fa,0xfff901ca,0xff5faea3,0xfea8d766,0xff56c883,0x004c032e,0xffdcb0db,0xff83498b,0x014dec7c,0x014d31c2,0x00691f9d,0x00cf7c48,0x010526de,0x014d98ca,0x01249bce,0x00f7076c,0x001a484f,0x00625786,0x00c3a236,0x00d88c81,0x00c56ecb,0x0301fa5c,
-0x046046f8,0x04032de0,0x03d913ec,0x018e5ca6,0xff92f20e,0xff8fb382,0x016d5ba8,0x02be2f34,0x03d14558,0x04d06238,0x0528a130,0x04fc26e0,0x0504b2e8,0x0310d720,0x0226fb64,0x013d18aa,0x00754d28,0xfff3d828,0xffa5825a,0x002d6a36,0xffbb225c,0xffd5db0d,0xffead439,0x0022b68c,0x009eeff2,
-0x0081df55,0x002ade12,0x00e1af46,0x005dc053,0x012374fa,0x0215b390,0x01f4f594,0x01a3577a,0x0132098a,0x027e0d0c,0x01ea0b86,0x02a9b1fc,0x00a888af,0x0057678d,0xffddfaee,0xfede1b1e,0xfe8ab9aa,0xff02e1dd,0x00cfc0a5,0x01428858,0x00713d99,0x008726d0,0x00fa5240,0x01c46358,0x02911740,
-0x0222fbbc,0x00a951c7,0xfff74210,0xffc875da,0x0059dc77,0x008380ac,0x00e2d252,0x018a487c,0x00e54210,0x00966471,0x013dcd80,0x00d4595a,0x00a55969,0xffc70e0d,0x00266748,0x0047c4d7,0x003a17f8,0x0034f8f6,0x00812675,0x0092428d,0x0173509a,0x01e4a224,0x006fab48,0xff8ffc38,0x003b863b,
-0x001dfdc2,0x00a939a1,0x00f90027,0x01004866,0x013764ec,0x015a9b42,0x01941d30,0x011fbb7e,0x00a49e3e,0x001ddc08,0xffdf7fb0,0xffcb4c98,0xffa6e3d7,0x005b46a4,0x005eef5d,0x015f168a,0x01d03ed6,0x011e2a92,0x00affd1b,0x007fe02f,0x007c1577,0x0027316e,0x00a74df3,0x00ad57e8,0x01bb19f2,
-0x00dbaf02,0x0121f3e8,0x00be17b0,0x00f95ad1,0x016150b4,0x01c179d6,0x014b9368,0x018d6686,0x00b27946,0x007b1531,0x00b7630a,0x008fc57b,0x00911a8a,0x00809245,0x009e70bf,0x00c0ccf5,0x00e03463,0x0109ca46,0x01206170,0x014d63a4,0x0171fa98,0x01603cee,0x014bfe40,0x01197eb4,0x0102e308,
-0x00cbe6f2,0x00b950fc,0x011cfee2,0x00c7ff40,0x0154b96e,0x014fc0b6,0x01886d8e,0x01791d5e,0x00fa1d2c,0x0125fd6a,0x0147666e,0x008ac874,0x0017af52,0x001e1106,0x00396640,0x0079103e,0x00b7cfc1,0x0037bbcb,0x0242697c,0xfff1e17f,0x00465a84,0x003ec8e7,0x0043bd0a,0x0049a81c,0x004af706,
-0x003f5c5b,0x00492e99,0x004fa668,0x0052cb4a,0x00672ee6,0x00740565,0x008739c7,0x007d24f2,0x007e96fb,0x0082f68a,0x007cae9c,0x007bb82b,0x0028f951,0x0249e518,0x02fbfd94,0x020c2250,0x01fa70c6,0x0312fafc,0x02551b78,0x025963b8,0x023356c0,0x01e7b668,0x022ae87c,0x0220fac8,0x02039c88,
-0x02cf77fc,0x01d4a24c,0x01c44336,0x02e8174c,0x0044432d,0xfe8d152c,0xfc56c9a4,0xfee4dfea,0xfe79ebe2,0xfe2dd7d8,0xfde542d8,0xfdf4d458,0xfe141f32,0xfe2ed716,0xfe820f2c,0xfea10600,0xfeaa4b4a,0xfe9eeb26,0xfea6a510,0xfeb7de3c,0xfeca69fc,0xfed0b088,0xfed38cde,0xfecc1bc4,0xfed154d6,
-0xff49ca2d,0xfc6b5f50,0xfc795ee0,0xff3a4cbb,0xfcc9e8c0,0xfc7a03a8,0xfeff14ae,0xfec164c2,0xfebb40fa,0xfef59922,0xfe69d3bc,0xfe56e9d4,0xfe74d706,0xfc86e200,0xfcd62b60,0xff43f20b,0xfc6b8048,0xfe1aca58,0xfdbb0f70,0xfddc3940,0xfcf68d6c,0xfc6b770c,0xfc4fed3c,0xfc6e0768,0xfcae8944,
-0xfd83f208,0xfe182490,0xfe52d208,0xfe637ca4,0xfe75b600,0xfe8d7ef6,0xfeb5bc76,0xfeb780ac,0xfec0e95e,0xfe88d1d6,0xff133b8e,0xfe61dab0,0xfd8634b0,0xfe94e2f6,0xfdda90b0,0xfeaf36ac,0xfe9bf2ca,0xfe4d71de,0xfeaec7be,0xfe0b8d76,0xfd8e5d90,0xfe16c5b8,0xfebe74cc,0xfebe2c04,0xfea6b862,
-0xfe7c437a,0xfe5adeee,0xfe78060a,0xfdee46c4,0xfe177e3a,0xfd1fa7f0,0xfbd73fb0,0xfa2300f8,0xfa420430,0xfae64850,0xfbd2b238,0xfd1a4dd4,0xfde577a8,0xfe348a78,0xfe16a376,0xfe52b85e,0xfe81d2e4,0xff118799,0xff36566c,0xff46bbdb,0xff2d19a9,0xffd09408,0xfed9a1ee,0xfdb72d6c,0xfea6fb76,
-0xff0ea0ef,0xff5f1044,0xff0c5b9c,0xff6f2843,0xff6884a6,0x002048fc,0xfeb3021e,0xffbcddcc,0xfee6a210,0xff8792ab,0xff59adb9,0xff5a2836,0xff4d97b2,0xfe36a6ac,0x0079db00,0xfe4db8ae,0xfb9fd3d8,0xf98f8010,0xf791a4c0,0xf73e9380,0xf7ec6c20,0xf8f1c600,0xfad56b80,0xfcc53248,0xfde3fe5c,
-0xfdeb68a0,0xfe15773a,0xfe23abaa,0xfefafdc2,0xff213d91,0xff14979b,0xfed9065a,0x00281501,0xffb4c73d,0xfeacd614,0x00c7ecec,0xffd4dcc1,0x00f87af4,0x01584a6e,0x018fb554,0x012d5ec4,0x00d1b201,0x00f560fd,0x0030f63c,0x008601a7,0x012050c4,0x014bca32,0x013fd0fe,0x01c5b912,0x006a20f1,
-0xf794b1a0,0xf91985e0,0xf9eb4808,0xfb4a6680,0xfe6b9164,0xfcbe1e4c,0xfc9c0048,0xfd478058,0xff3217b5,0xffd40259,0x0072fbe7,0x012e8018,0x0166de30,0x013488f0,0xff185998,0xff890122,0x02d4141c,0x018b1376,0x01a05af6,0xff3bd588,0xfe30232c,0x00589d9b,0xffad8344,0x00bb94ed,0x0075b084,
-0x002d3b0a,0x01265412,0x01436526,0x00cd03cc,0x0146d600,0x0083f578,0xfe89f0ba,0xfefca836,0xfe58fa1c,0xfd0c1cc0,0xf98f0380,0x009906e0,0x035683a4,0x03da90ec,0xfeb37aec,0xfa6c8f10,0xf83db3a0,0xf85f4d00,0xf741c3c0,0xfc29c4dc,0xff092ab0,0x00183dea,0xfdfc1028,0xfc3562c0,0xfbe21e30,
-0xfb75e008,0xfb487e00,0xfb250ea8,0xfc2064a8,0xfe276474,0xfdf3abac,0xfe881e30,0xff7ca14d,0xff972b92,0x0143321e,0x016bfb7e,0x01151c6c,0x008762fb,0xfff71bad,0x001685ce,0x004f489a,0x00cb80cf,0x01fb28b8,0x009a4f11,0x00094a54,0x0015ee1d,0x014556d2,0xff7e4c97,0xff5c96bd,0xfe638368,
-0xff5286dc,0x01f5b4d6,0xff41d394,0xfde36fa4,0xfe27bbf2,0x01a1c624,0x0292bbb4,0x0109aff0,0xffd6b2aa,0xfe6a45a6,0xfd414870,0xfdc42f5c,0xfe530fea,0xfec8e2d6,0xfe2e515a,0xfe9c731e,0xfe2bf248,0xfdc934e4,0xfef322ca,0xfe612f56,0x00ad4036,0x00de2512,0xff0cc825,0x002c4f83,0xffdbff35,
-0xfff1a8a2,0xff5c3246,0x002190d7,0x015a4cd4,0x019e83d6,0x022f5508,0xffa07cb8,0xff8ff5b8,0x00e026ba,0xfefbb5e0,0xfabe9778,0xf853e770,0xf82d7720,0xf9194e58,0xfbe957b0,0x00d73727,0xffe9fcae,0xff452735,0xfd05fcc8,0xfe46a1de,0xfeadbdc6,0xfec22126,0xfd8ab134,0xfd5a24b4,0xfe645386,
-0xfe9d0208,0xff5ab7dd,0xfeffac76,0xfe7a744e,0xff1706d6,0xff3521dd,0x00eb008a,0x00f8a725,0xffcb48a2,0x00e75c51,0x0097104a,0x00e293b2,0x014a17ae,0x016079c6,0x0052ea88,0x0042b295,0xffcee828,0x0034a62a,0x009ef78f,0xff0016a4,0xfb550490,0xfa2ceff8,0xfab88560,0xfb2ea2a8,0xfb022728,
-0xfbf9d568,0xfdbecdd0,0xfda34a34,0xfd343e2c,0xfade9f80,0xfcc137c0,0xfd95227c,0xfedc61bc,0xff64ee9a,0x00090217,0x007912df,0xfef8afea,0xfebe8b78,0xff42e67a,0xff20d0df,0xffd85830,0x004c6266,0x001af9b5,0x000f506e,0x001f3964,0xffdcfea0,0xfff5bf66,0x000bc342,0xfffd9211,0xfffe2311,
-0xfffc1f39,0x00c89b88,0x00ce3177,0x006377a6,0xfe001b5a,0x008152b0,0xfe3d09ae,0xfea9abfc,0xfe9f62ac,0xfea5dd28,0xfe18eb30,0xfe4035ca,0xfe92733e,0xffa7a79f,0x00362208,0xfff9db5b,0xff323ab9,0xfe557960,0xfd972720,0xfdaf5514,0xfdffc588,0xfe7a7ce2,0xff88817c,0xffe6274d,0xfff0df33,
-0x001734f8,0xff890d02,0xff0878b4,0xff549d86,0xffefc818,0x0085386d,0x007c6f3c,0x0041f2bd,0xffe872b6,0x000831db,0xfff954e4,0xffe8d74f,0xffdc7c06,0xff618501,0xff4f8faa,0xfef988d2,0xfe4c57cc,0xff1afae6,0xff2e4725,0xfe7b2d44,0xfe60b206,0xfe0977d2,0xfdcf03f0,0xfd74b0a4,0xfddafc80,
-0xfe36c854,0xfeda4ae4,0xfee01ef2,0xfef9a69a,0xfee6626c,0xff8fe90f,0x00298411,0x00aa09cd,0x005ce482,0x00393461,0xfff69817,0xffdbac40,0x0037c4d4,0x004b2f18,0x003946e6,0x003f482e,0x000d04e8,0x006e3bfa,0x005ce54b,0x006d4e12,0x0061fd64,0x000f1542,0xffc7bf21,0xffb0da97,0xff779b53,
-0xff6a5f75,0xff22249a,0x001d127f,0xfeb05b06,0xfef8ea1a,0xfecbf016,0xfec46a8e,0xfeb521ee,0xfeb9a100,0xfe98697a,0xff311646,0xffad0ca9,0x002d9c4d,0x00b37055,0x013ca226,0x01be8cc6,0x017b179e,0x0133ef4a,0x0120e06c,0x01053b26,0x01227d7a,0x00d88fa5,0x00e6edc8,0x001ff378,0xff799fcf,
-0xffcaa038,0xff6cabff,0xfeb7de50,0xfee073b6,0xfe911888,0xfebe43c4,0xfed9258a,0xff536bda,0xff521e42,0xff6f647c,0xff88cf30,0xff2530d2,0xff1f68b6,0xfe11fd32,0xfe8b97fc,0xfeb07abe,0xfe9379b4,0xfe97546e,0xfe89050c,0xfe7f8ebe,0xfe64d534,0xfe9ad4a2,0xfeb92072,0xfed7489c,0xfef9b9ca,
-0xff18244d,0xff55defd,0xff41b13a,0xff45ae9e,0xff398d6d,0xff2dcf04,0xff28a77b,0xff256908,0xfe86a53c,0xfefd8328,0x01696b48,0xfdfc47e0,0xfe9239ec,0x012ad468,0x010c76a4,0x00ff3fdc,0x00f821c2,0x00c494b2,0x00ac7f3c,0x00b03130,0xfec9b114,0xfdf33294,0x01530c66,0xfed608ec,0xfe32531c,
-0x01ceef10,0x01eabdc6,0x019d24fc,0x01587e70,0x01a04d0c,0x019aa13e,0x021afcc4,0x022ee444,0x01eec284,0x01fc1afe,0x01f0ca1a,0x01e2d6bc,0x01ca9d0a,0x01c7164e,0x01ee2fe4,0x01cc42be,0x01c45922,0x01b14870,0x01d3cc32,0x019e1a08,0x01d494fc,0x023769c4,0x00c785b3,0xfccdab60,0x02962098,
-0x01090f66,0xfd347618,0xfd6d1464,0xfd7c433c,0xfd824b4c,0xfdafb8c4,0xfdc26f74,0xfdef5034,0x010f080a,0x02a54b30,0xfd277024,0x009a29fe,0xff28e4f1,0x017f5540,0x012f8eb0,0x01d07a98,0x01f06e02,0x035aa6e4,0x03991ec8,0x02fc3a3c,0x03232a84,0x02e7c774,0x02aae844,0x02380ee4,0x02308580,
-0x029cef30,0x0260b570,0x02574394,0x021e6698,0x0266df14,0x01fa1c38,0x02502f94,0xffd8e076,0x012f67b4,0x01c69a8a,0x0113686a,0x00fac45b,0x01b74f16,0x01aca7e4,0x02170724,0x01a1180c,0x01da4b44,0x01928402,0x01425f80,0x015e1042,0x00a83013,0x0101e4ce,0x0141696a,0xffde220c,0xffa57313,
-0xff898482,0x0070b6aa,0x00cfd97a,0x048e0f88,0x04ea4bd0,0x036f5568,0x0374ce58,0x031c0ea0,0x02f6d758,0x02568a38,0x021d50dc,0x02fa40d0,0x02563814,0x025207f0,0x01ea8058,0x02758ea8,0x022d61dc,0x01a724f2,0x01855dec,0x010e4574,0x00f07bf3,0x014f7166,0x0117f988,0x01116624,0x00d6b637,
-0x0122898e,0x00e51af5,0x00759b55,0x007988e3,0x00ec6dad,0x00b73429,0x00acb9a7,0x006dd125,0x00100da0,0xfe024cec,0xfd9aae28,0xfe15b5f4,0xff5c93ef,0x00c6b6d8,0x06ad70b8,0x07b1b0a0,0x05b46398,0x059ad500,0x04c60fa8,0x03f518dc,0x02c26598,0x02efbc34,0x041dd998,0x039a8cec,0x033e59b4,
-0x028690d8,0x037a36e8,0x0277a884,0x0211e590,0x013b4aa6,0x0099eace,0x00e3f3c2,0x012cf764,0x013eb558,0x00fab1f3,0x0145675a,0x00bf28f8,0x0080c388,0x00824bf9,0x00706e4a,0x00a72674,0x00b3fe70,0x008b62a6,0xffc64454,0xff2cb3b4,0xfdf577c0,0x02a6321c,0x02eea17c,0x027be018,0x02bf7ea4,
-0x024bd200,0x01f8f990,0x011c9fc4,0x016f99a8,0x014b8c42,0x023aff8c,0x003f2c33,0xfed1d8d8,0xfd412eb0,0xff37eb40,0x004814f4,0xff811a14,0xffdb57c4,0x00138a85,0x0264929c,0x01bc5974,0x00907e8c,0x00a96992,0x012dc582,0x011c9ace,0x00090ff0,0x0126b2ae,0x015267c4,0x0072caec,0x013ff7b0,
-0x00751a78,0xff85793d,0x00289a1d,0xffa37fe8,0xfef5497a,0xfdcf7f28,0x046dd3f8,0x0378888c,0x005aba49,0xffe1807e,0xff3949ed,0x01a500ac,0x01746462,0xfe1d165a,0x0145bc70,0x02193c88,0x00fba3c1,0x01bb6aa2,0x026219dc,0x0374e58c,0x032211c4,0x03ade42c,0x04588d98,0x0379f7f8,0x02d1bf70,
-0x01d9f186,0x00693f99,0x01081ad6,0x01429c58,0x018c5456,0x01aa4564,0x01831174,0x00788b9e,0xffd74370,0x006e9165,0x003c6962,0x00c01c81,0x01c5b948,0x00cbffe7,0x012ed0e4,0x018f7db2,0x0366f150,0xfecc2e5e,0x011ae4e6,0x041c6988,0x082b2de0,0x0f34b620,0x0ec8c6a0,0x0cb70750,0x086eb910,
-0x0413ca90,0x01795a7e,0x015096b4,0x01e207b0,0x03544920,0x05727098,0x0436da48,0x02f26e84,0x013092ba,0x007017fd,0xffc96e6d,0x00089f6a,0x0033486f,0xfff452fe,0xff991d4f,0x022bcb20,0x01a13f78,0xfeb4c8d0,0x003d95af,0x0008f105,0x00023ddd,0xffad27ad,0x005eff86,0x011eafde,0x028101c0,
-0x02ea56b8,0x0144de56,0xffdfaf5f,0xff80df88,0x00f652c2,0x06005370,0x081147b0,0x0af89ae0,0x079b9b20,0x05c18038,0x03428efc,0x053afe58,0x04c23fc8,0x036edde0,0x02c817a0,0x014c5370,0xff8b6a22,0xff766369,0xffbf2576,0x005dfa31,0x009ba510,0x0051a55e,0x004e5d2f,0xffb8b7aa,0x0046a5a9,
-0x002fd789,0x0180a5d4,0x01a2b33c,0x004e7bf3,0x00de4a36,0x00d58ffc,0x00ede9b3,0x0176bc30,0x01986fbc,0x00d39f0a,0x00d4d93b,0x013783d2,0xffbfe080,0x0046c97b,0x0002dda2,0x0490ff78,0x08c0f1d0,0x088925a0,0x09271450,0x082b3b10,0x06c5d4c0,0x03d2c2bc,0x04de1e88,0x04e9a6f0,0x04ade648,
-0x039af6cc,0x031d19fc,0x03721ddc,0x02433b60,0x01651ab6,0x00cbad76,0x003739f0,0x004a49ac,0x00deaf70,0x00df6b34,0x015c9bba,0x0074369b,0x008ce1bc,0x00a9eae8,0x00b7ed5c,0x0029184d,0x001232ac,0x006eea8e,0x0086f76f,0x00ae03bc,0x00b578ca,0x011fda7a,0x0131ebd0,0x003363e1,0x026f38cc,
-0xfee8fe8a,0x0324fe3c,0x04785c30,0x0393aa4c,0x02ed0c4c,0x01b40410,0x0130f046,0x01026ac6,0x00092dc6,0xff5a562b,0xff129054,0xffdd1de9,0x00d008a4,0x01d37154,0x01671c4c,0x011ab3ec,0x005af83f,0x00cea220,0x00e69783,0x0002b34f,0xffc688c3,0x002c1f68,0x009b73e1,0x00e2290b,0x009195de,
-0x005a2efc,0x0097c366,0x008482e8,0x00764a61,0x00bcda02,0x00e3a2d7,0x00eb3b78,0x00b81a04,0x01061ef2,0x00a29caf,0x016f3f3c,0x01f7351a,0x02177d74,0x0219a7e8,0x0216f5d8,0x0247896c,0x01d01af0,0x014692ce,0x00a642b1,0x00f699ee,0x014ebb7a,0x01820d46,0x00d65b4a,0x000ef79d,0xff473e7e,
-0xffc0f49f,0x00367aac,0x00832637,0x005fe24b,0x000dd7b0,0x005af066,0x00d45547,0x00603c46,0x00763720,0x00636cf7,0x003e88d0,0x0050623d,0x0035bea6,0x00b3aef0,0x00c5d7c2,0x00b5c002,0x0085ac17,0x00b61de7,0x00dbb769,0x0113e00a,0x010cc69c,0x01a93054,0xfebafd28,0x01424d7c,0x01108ad4,
-0x010adcd6,0x0101673c,0x00f52251,0x00ffd79b,0x00f7480f,0x00c37ab8,0x006b9b6b,0x003f46ea,0x001b5e76,0x00296549,0x001e2ace,0x002e3429,0x001b9164,0x0026a13b,0x00405540,0x002b97bd,0x0073f814,0x008a21d6,0x00cb39e9,0x0105c2b8,0x0068c64f,0x0096de93,0x00e4822a,0x0102c12c,0x013a1380,
-0x01034dd8,0x014e2968,0x015142ea,0x0112eda2,0x01201e94,0x008cb6cc,0x009a4bf5,0x010afc32,0x00a65602,0x010e15de,0x009c3c07,0x00bf86e9,0x00b301ca,0x00b94f66,0x00b7d470,0x00c15e7f,0x009cd936,0x008bfc21,0x0073b4ed,0x0061f146,0x0047b591,0x002e1505,0x0037c6f6,0x00416623,0x0040b5ef,
-0x004cde90,0x00536ff3,0x0059f3f1,0x007071f9,0xffaa5b26,0xfdce4738,0x00d2d2dd,0xffc4b856,0xfd80eb94,0xfda11fdc,0xfdb7a0ac,0xfdd7f86c,0xfdf00d68,0xfdff3c68,0xfe25ba80,0xffcd5e3d,0x011c4b70,0xfd8a1900,0xff7edf4d,0x008cbfbf,0xfdcd677c,0xfe8d58f2,0xfd6b2f7c,0xfe2c3a56,0xfe0276ba,
-0xfe18671a,0xfd8b36b4,0xfd5aa618,0xfd8acd74,0xfd6eab64,0xfd896764,0xfdd05e8c,0xfdbed32c,0xfdc669e8,0xfdcf6d84,0xfdcaa024,0xfdc562c8,0xfdaf3c6c,0xfdc5e7cc,0xfe11ed7c,0xfd536448,0xfeaaff94,0x00976503,0x03e316e4,0xfe2e0bae,0x00682664,0x038df9c4,0x03880d48,0x03798f78,0x0327f020,
-0x033fc814,0x0338ca9c,0x0323e7c0,0x004b22d4,0xfdd24f48,0x0383bb94,0x00822322,0x00a53634,0xfdd6672c,0xfeacb02e,0xfe650652,0xfe23a344,0xfcafa2e4,0xfc5191b8,0xfcf9dc0c,0xfc745fb4,0xfc9aba4c,0xfd490138,0xfd2d9bbc,0xfd373a90,0xfd43550c,0xfd287e74,0xfd278058,0xfd00c950,0xfd772f84,
-0xfdace4d4,0xfd61ca9c,0x0156a76c,0xfedd59e0,0xfef34b7c,0xff9cd264,0xffdda733,0xfebd3dfa,0xfece136c,0xfe7cf0c8,0xff032446,0xfe5ab91a,0xfe6cfd82,0xff45fc32,0xfed68566,0xffae726e,0xff618e2e,0xfdbf7824,0xfda83ca0,0xfd93ea18,0xfeb7a49c,0xfeb4bd02,0xfed3c72e,0xfbe2c270,0xfa9e7130,
-0xfbefd0a0,0xfae34ae0,0xfb787040,0xfcc9d04c,0xfc7a4998,0xfcb11a60,0xfcd57eb8,0xfcbb3234,0xfcae0924,0xfc2d65f4,0xfd34fd5c,0xfd291b04,0xfe141ee2,0xff428c08,0xff3e6854,0xff9a733b,0xff9797f0,0x003fc533,0xff157ced,0x006d798b,0xff3942b8,0xffdf65af,0xff6f7725,0x00047e5c,0xffed4bcd,
-0xffbdc9e1,0xff5c8de0,0xff781f33,0xfdfc8fa0,0xfd004388,0xff00282d,0x01420a0a,0x0089ea34,0xff9b4435,0xfaf0efe8,0xf9adc258,0xfbc7ab40,0xf9d0abd0,0xf9f6b360,0xfc0975a8,0xfb92af58,0xfb8c7de0,0xfbb28590,0xfb5de328,0xfb87d2c0,0xfb283090,0xfcc719a4,0xfd730cc4,0xfdcb3d94,0x003b9143,
-0xff4c4aaf,0x007029dc,0x0048d4df,0x00b05654,0x0040a022,0x00dc65c6,0x00f36701,0x00370d23,0x00475a19,0x00149fe0,0x00a48b82,0xfff3db56,0xff2d9038,0xff7dee28,0xfd0473fc,0xfe8c6970,0xfbcb20a8,0xf9298078,0xf9fb5878,0xfc6d5974,0xfbde9ef0,0xfa9a0190,0xf8532df8,0xfa5845b0,0xfba39b68,
-0xfc87613c,0xfca91250,0xfd40a814,0xff4e4121,0xfe3bdf80,0xfd5bc8b8,0xfcb4d294,0xfccd45a8,0xfbf9bf40,0xfc46d970,0xff2848c8,0xfe6dfc68,0xff24617c,0xfff27378,0x005aa3de,0x000c9dca,0x00b30781,0x00d83316,0x00242c13,0x009836ca,0x0046d429,0xff9d58b6,0xffb232c3,0xffb38d3f,0xfebc05a8,
-0xfe04e55a,0x0098a8e6,0xff033cf7,0xfe8b07ca,0xfe3bd620,0xfc91f0cc,0xfc186f0c,0xfc4d0a60,0xfc1ed084,0xfd35e57c,0xfcc34178,0xfcf006a0,0xfe10e4e8,0xfe336f74,0xfd41e8c0,0xfc1e5a08,0xfbdafd30,0xfbf3b0c0,0xfc0f2b28,0xfc76513c,0xff3030af,0x006e4a05,0x003b2a9c,0x002e6115,0x004d4a8d,
-0x008a7fed,0x00eb111c,0x006a4926,0xffcc51a4,0x001f584b,0xff8cf778,0x004b7be7,0x014abe34,0x00c3d01d,0xff518966,0xfecee198,0xff1068a6,0x0086a14e,0x0185b45a,0x027a1ca0,0x0168210a,0xfc517d58,0xfb1315f0,0xf8357a38,0xf516cdd0,0xf88bd250,0xfa83b8f8,0xfabf1010,0xf923db18,0xf88ce8e8,
-0xf98531d8,0xfaed72a8,0xfce2d8fc,0xfefc2214,0xff5c90e5,0xfec996ca,0xfe3cbfae,0xfe914baa,0xff3317df,0xff85ea15,0x013862e8,0x0105cc54,0xfebb47da,0x00083ccf,0xffd97508,0x0001bf42,0xffa24560,0xfff6e1ef,0xffcf0f6d,0x023ecf4c,0x02f40204,0x024150c4,0x00ca9a81,0x010c26f2,0x010e35aa,
-0xfd162668,0xfa000978,0xf484e420,0xf82bb168,0xfb8d0948,0xfe289f3a,0x004c0bc3,0x00431210,0xfe6d5b22,0xfcfb3358,0xfbb3e478,0xfb8f6dc8,0xfadbee28,0xfacc4840,0xfb8b00b0,0xfba69840,0xfca3cf64,0xfe9dcc8c,0x0047724a,0x0022f332,0x00118279,0x01485054,0x01353332,0xfff2939a,0x00b5e986,
-0x0087c56b,0x0035e8ff,0x00f13ffb,0x01439340,0x004fb857,0x01094f0a,0x00429c90,0x004a920b,0x0025a821,0x02b500ec,0xfe2bbb3c,0xf90f37c8,0xfa022108,0xfabecb00,0xfaa01a28,0xf9d66f70,0xf8ae0978,0xfb94e080,0xfd0fd008,0xfd21e0e4,0xfec2da30,0xff55a1ad,0xfef5a592,0xffe1f71a,0x0026fabb,
-0x0077ea99,0x00b44552,0x005160c3,0xffd937fa,0x00496167,0xfffb2a82,0x0054145d,0x00aa2913,0x00a8dfc9,0x0047e96d,0xfff8c04b,0xffac8fc8,0xffcd5aa1,0xffb3f9ad,0xffffe152,0x000e7f85,0x00d41f51,0x01165a46,0x01474512,0x0027b4ae,0x02c52f10,0xff42e6b7,0xfe0a1498,0xfee9dff0,0xfdf151f0,
-0xfdf26ee0,0xfd5635c4,0xfb7359b8,0xfe1d43f6,0xff6581e4,0x006702a6,0xff45f216,0xfe62e458,0xfdf29564,0xfda16740,0xfdc02bb4,0xfe20c408,0xfe353d7a,0xfea8c8de,0x000961b3,0x001c9772,0xffaf8702,0x000c2908,0xffeb959e,0x000514ed,0xffe2e643,0xfff88fd6,0x00247502,0x00463b77,0x003bc7b1,
-0x0054a0bc,0x00801b3a,0x00a612e5,0x002bb912,0x0043e962,0xff697c3f,0x0013647c,0xff996b1a,0xfef232aa,0xff052a62,0xfe92082a,0xfe426bf6,0xfdeb0224,0xfd72cee0,0xfe04714c,0xfe44c484,0xfedc2638,0xff540723,0xfff5337b,0x009e8166,0x00195b25,0xffa6c2c0,0xff397456,0xff1d5cba,0xfec04d32,
-0xfe80666c,0xff487997,0xffd12d04,0x002854b2,0x001da18a,0x006537f6,0x0046e83f,0x00902dbc,0xffe36c73,0x006818ec,0xfff9fe48,0x0059f44a,0xfff0740c,0x001e155c,0x004d6944,0x00b0a708,0x00082e76,0x01da5836,0xff57743f,0xfef62308,0xfe99927e,0xfe442c02,0xfde2c6e8,0xfd914b50,0xfd2f910c,
-0xfdae97f8,0xfe251c76,0xfe89732a,0xfef1eb66,0xff3b9cbd,0xff8fe456,0xff9c683d,0xffcaf8ba,0xffe6f659,0xffe4c24b,0x000f13ce,0xffd09c02,0x0051e486,0xff72517c,0xff346e7b,0xff89fcaf,0xff738d05,0xfef87442,0xfef6d2ec,0xff08f5bd,0xff9bdece,0xff4b24c5,0xff61e97c,0x0012e5f3,0xffcb6ecb,
-0x0054ee79,0x00419e68,0xff94dc2d,0xff4b717c,0xfe7b4258,0xfed4d540,0xfe9fdcde,0xfe87f3b2,0xfe703be0,0xfe5868b6,0xfe1df80a,0xfe6342ce,0xfe865f88,0xfeafd26c,0xfed8cc88,0xff06af6f,0xff422419,0xff2ed35e,0xff215dac,0xff1b94ba,0xff125d5e,0xff1e2a1b,0xfefb074a,0xff3e6b2b,0x002957f1,
-0x01a2a9e0,0xfee534c8,0x000be48a,0x01c65834,0x01d9ef64,0x01d1b81a,0x01a96fd4,0x01c90052,0x01c61c70,0x01b282f4,0x004f4593,0xfef00696,0x01cfce38,0x007f3a4a,0xfe8bb0e8,0x01f44d9e,0xfff48051,0x0297eb84,0x01a9ba40,0x01e6e00c,0x01af010a,0x020e5914,0x022cb900,0x02346938,0x021939bc,
-0x020f381c,0x0224b634,0x0209c63c,0x02044834,0x01ee9714,0x01fe1586,0x01fdbc80,0x01faf09e,0x01fb9b5c,0x01b1b4d6,0x02853188,0xfff95dfd,0xfe155ba8,0xfbe5be20,0x00d4dbef,0xfe54ee90,0xfc115670,0xfc14d850,0xfc1b7094,0xfc6efa40,0xfc206230,0xfc1f4cb8,0xfc578770,0xfe58428a,0x010cb73e,
-0xfc0fa8c4,0xfdc81a8c,0xfd6e6518,0x02378c94,0x01cd3bfe,0x019f7f40,0x01372d72,0x020d9254,0x0253f778,0x0265c048,0x0247c7fc,0x0269ec88,0x02da89ac,0x02a5cdd0,0x0285ad24,0x024833f4,0x027d9474,0x027ffce0,0x0277f650,0x02486a38,0x02458e78,0x01d30460,0xfdba3c14,0x00c81439,0x00a500a2,
-0x006e9ae0,0x00123f0c,0x00bfb60a,0x0116edaa,0x011dd6c0,0x00265932,0x01206b7a,0x016b523a,0x00b26e58,0x00dccd59,0xffbff1a7,0xffdc7975,0x015d2c76,0xffa5a203,0x01d30286,0x028e0798,0x01df26c6,0x0106cf82,0x02fbaef0,0x03b664a0,0x04019ce8,0x034de040,0x03260eac,0x03c79224,0x0341ccc4,
-0x03362f40,0x02c4c8b0,0x02f789f8,0x02dbcc64,0x02e9aaf8,0x02699740,0x02b53cbc,0x00b39622,0xff9baded,0x0037b5c6,0x009ec173,0x00f1d960,0x000bd93a,0x0094faff,0xffe1fcc1,0x014fa176,0xffa71676,0x00a4260c,0xffb0118c,0x00a67ac5,0xffeb91c6,0xffd3cb93,0xff7dc92b,0x002661c2,0x003bad64,
-0x02fbbf14,0x026bb200,0x01366926,0xffae3ab3,0x01e18bf6,0x03419f18,0x03ee28dc,0x0345a88c,0x03a29a00,0x05468968,0x04788348,0x041f4a08,0x038ba484,0x03f9250c,0x03ff2164,0x03c24c40,0x0328e058,0x02d97a04,0x00ed5fc8,0xff45b3d9,0x012e64a4,0x00305106,0x018b077a,0x014ebae6,0x0090f926,
-0x012a0994,0x00cafe69,0x00d33ed3,0x0051e581,0x00a12c3b,0x012b17e0,0x00b7f77e,0x00531849,0x00bdc052,0x01246940,0xfda5a984,0x00593196,0x01372d04,0x01bc7ce4,0x02f2e2ac,0x05491780,0x04ac0178,0x0247e2b8,0x02145048,0x017e9702,0x01e11426,0x01faaa06,0x01e70264,0x00f0fa2e,0x005af55d,
-0x004d6c52,0x012772e8,0x0176aef4,0x029b83b8,0x00870862,0xfe3670b8,0x005de2e6,0xffda4a78,0x00765090,0x0091af82,0x006c7f9b,0x00ebecd1,0x00f2a7d6,0x00758e37,0x01003ea2,0x0098813a,0xffb3c01a,0xffba95b9,0xff42c6a3,0xfec69972,0xfe8fc4e0,0x00016a3c,0x018a5ff0,0xfffaff09,0xfdea9b38,
-0xfb74bcf0,0xfc7ec2f4,0xfcbfb9d0,0xfbeb32e0,0xfb7cba08,0xfbf79a78,0xff0f4076,0xfe22609a,0xfe389c04,0xff23163d,0x0001ada0,0x01be786a,0x04df1ff0,0x02edb35c,0x02837b60,0x0075a9c6,0xfeeb94a2,0xffc17d06,0x0011d4f0,0x014df762,0x015cd85a,0x009954ad,0x00932fd8,0x001f606f,0x0034667d,
-0x0005dd1d,0x00977c74,0x01b4a01a,0x00a69bd0,0x00a76f44,0xff49445b,0x00de0eaa,0x015b8c70,0x03714d24,0x03a16388,0x04ce9590,0x078d4cd0,0x091a2100,0x08511160,0x0422d490,0x044fff60,0x02f0222c,0x02376d0c,0x03ad5abc,0x0465d248,0x04683028,0x037a439c,0x01cbb8f8,0x00317797,0xff5b0a49,
-0x003ecd89,0x007e6d25,0x000dabc0,0x00a6c6d6,0x00188890,0x01d15fa2,0x01865236,0xff572ca6,0x008bc7ae,0x006ca5ce,0x00755c1a,0x00349ff3,0x00640a5e,0xff73bcf8,0x01be976c,0x032ad82c,0x020977b8,0x01f0c46e,0xffdc399f,0xff00f34d,0x014528ca,0x033f9114,0x081795b0,0x0791f620,0x05b68398,
-0x01ddada8,0x011534da,0xffacf039,0xfeae65c4,0xfd23b790,0xfc574e70,0xfc3aa070,0xfe2ec276,0xff8fff68,0x00530bef,0x008512bb,0x00825936,0xffbf6434,0xfefcb974,0x005bb4a6,0x007524f0,0x011a01f6,0x00f41387,0xffac6cf3,0x00d91398,0x00a48c05,0xfffd3571,0x00c2accd,0x01513656,0x018f168c,
-0x0142564c,0x01373994,0x0015ff81,0x00a4537c,0xfdaf0b08,0x00f033ed,0x04fbc4d8,0x04b083b8,0x05152d88,0x051f87d0,0x048881f0,0x027b2ffc,0x025867dc,0x02cd0918,0x04de4df8,0x03d70120,0x035526bc,0x0253a554,0x00f110a8,0x0002c50a,0x00940449,0x0066b120,0x01192044,0x0156e7e6,0x0075048b,
-0x0122a6e4,0x008240f6,0x0104fd2c,0x012772ea,0x00ee6998,0x005dce2c,0x0069a784,0xfff29eb7,0x0088e9fb,0x0042e3ce,0xfff03a6a,0x006df656,0x009a8da4,0xfff45b46,0x0006ddff,0xfdd17e10,0x00200b4f,0x025d3f8c,0x02644b28,0x03426e50,0x035d01e4,0x0373dc10,0x03663c8c,0x0205812c,0x011acf42,
-0x00f77fcf,0x00a268ff,0x00219422,0xff4908c8,0xffc92d3f,0x00814bdf,0x015a97ea,0x00efff81,0x00895ca0,0xff632c00,0xff561849,0xffdb7b1f,0xff863a69,0x00762ca4,0x00c39602,0x00a7abf4,0x00b7cc0e,0x009ce07d,0x0136acf0,0x010880ac,0x011e585a,0x013b572c,0x00fdbce4,0x00eb7074,0x004f682d,
-0x00b1126a,0x006e8536,0x018cb4ba,0x022802b4,0x01a07f6a,0x01c6427a,0x01b06ac4,0x01d0ecde,0x02227b24,0x01f65a7e,0x020d6748,0x02104d50,0x01fb26bc,0x01ea5948,0x01c062ea,0x01879b04,0x011775e2,0x00d3b574,0x00f61912,0x01ddea34,0x016aada6,0x001dfff7,0x00935ac6,0x00bddaf5,0x00c984bc,
-0x00503383,0x00be17d8,0x001586e7,0x0105ddae,0xffd14a8a,0x0098abd1,0xffe245a6,0x0054871d,0x0023d016,0xffee750d,0xff73f139,0x004986da,0xfe67ea2c,0x00687c99,0x009fd97c,0x00d3b60a,0x011a5a74,0x015b444a,0x019669f6,0x01c71a6a,0x017f56e2,0x0133b688,0x00eebf4d,0x00b49bfc,0x0082414e,
-0x0061f422,0x0078f585,0x009cf4eb,0x00b507cf,0x00b0add3,0x008fbad6,0x00d7a8b4,0xff8f487b,0x00b48417,0x00996811,0x004b7984,0x001bb8d5,0x00aba193,0x00e8d507,0x00bfc0e4,0x001bf9a5,0x00e0eb0a,0x010e93f6,0x007cf4dc,0x008b22e9,0xffef2be6,0x0000e6bb,0x00a4b104,0xffd12da8,0x015ff5c8,
-0x0101c860,0x0127aaa4,0x013238d4,0x013d78a4,0x0148d56c,0x016a65b0,0x014d50f2,0x0144448c,0x01375afe,0x01283fa8,0x0115d75a,0x00f48c09,0x00fbfec1,0x00f862e2,0x00f92290,0x0105dfae,0x00f46e43,0x01584e64,0x0012b05c,0xfed877ae,0xfd75d6ec,0x00729845,0xfed43b50,0xfd258524,0xfd257514,
-0xfd501994,0xfdafcf44,0xfd786ba0,0xfd8d0770,0xfdb980e4,0xfed1c4be,0x0072b226,0xfdb73c24,0xfe91de92,0x01508b02,0xfec08582,0x013ea166,0xfe21b562,0xff1eca5e,0xfeff50e0,0xff2257c8,0xfee1b7f0,0xfeb5cf0e,0xfe76c7ec,0xfe77636a,0xfe7fdbda,0xfe9e4d60,0xfeb4a6be,0xfeb6f43e,0xfe9f9020,
-0xfe9b3af2,0xfe9ca62e,0xfea86dc6,0xfea908ba,0xfedbfae0,0xfe06e76e,0x013e6ad0,0x02b89008,0x035eb7e4,0x009cb4da,0x02a04c84,0x032e5d80,0x03625be4,0x035de5ec,0x02ede004,0x03697a54,0x03796014,0x036e1240,0x0284600c,0x00328cd3,0x03207dbc,0x02dff340,0x02bd1a8c,0xfef4985e,0xff105940,
-0xff994b7c,0xffe36707,0xff6fc175,0xfeecb54a,0xfe402adc,0xfe0ee52a,0xfe117958,0xfe63ce4e,0xfe9dbb20,0xfe9abf66,0xfe424724,0xfe1aa124,0xfe12d3ae,0xfe2af592,0xfe5e4810,0xfe3773cc,0xfedc2abe,0x026f4b88,0xfff4a376,0x00a25da9,0x00848ec8,0x00cc556f,0x0009db8e,0xffce6750,0x0001b3d5,
-0x00c9f021,0xffc1f2e4,0xff59cac1,0x005a2e46,0xfff45769,0x00bee6b0,0x00c6751e,0xff413132,0x014d1408,0xffbb5559,0xff1b5c59,0x003480f0,0x00cf24b8,0xffb70341,0xfea05752,0xfd1be314,0xfcd06fc0,0xfd05477c,0xfdd9f6f0,0xfe65f05e,0xfe7439b4,0xfdea5a34,0xfdb006c0,0xfdac00f4,0xfdd36830,
-0xfe0fa36e,0xfd9a72f4,0xff58bd46,0x00dc0c2f,0x007ae1d3,0x00b62f48,0x006304d9,0x0124247c,0xffe80491,0x00fe814a,0xff568bef,0x010023bc,0xff9e426b,0x00d676df,0x00c6db5c,0x00869e29,0x00608d06,0x00e2e250,0x004a13e2,0x01a4f034,0xffa49f9d,0xff9924fe,0x01d71ba8,0x034402a0,0x01af1220,
-0xffbb42bd,0xfd456be8,0xfc9582b8,0xfca79f8c,0xfdd3d174,0xfeb9680e,0xfeab0930,0xfd9859f4,0xfcf37d50,0xfcbbe36c,0xfcfeb688,0xfd3b50b8,0xfd13fea0,0xfea21db0,0x00ab4c62,0xff2ca945,0x011a960e,0x0054eca7,0x002145e5,0xff89f462,0x006dda42,0x00c71e19,0xffd940fb,0x00373bef,0xfff79ed8,
-0x00e4cda0,0x0047327d,0x0081c8ce,0x00614674,0xffefcbf7,0x0146ada4,0xfd7610a8,0xfb5fa340,0xfbaa4ce0,0xfa7673c0,0xfcad27d0,0xfd7f56cc,0xfca97ff0,0xfc1685c8,0xfbec2e28,0xfc8ff404,0xfcc6e94c,0xfdfd026c,0xfeea38da,0xff6fa173,0xff59e480,0xfe3783c6,0xfe71c056,0xfd654424,0xff01a62c,
-0x00c627ce,0xff030f20,0x00376e55,0x001b68fc,0x00be0656,0x01016000,0x00b7d027,0x00a2b541,0x0065ab22,0x00e31e80,0x004b04f5,0x0003b43d,0xffa0ffb6,0x0041a31b,0x003c84a0,0x01040820,0x002f9578,0xfe245fae,0xfadc8d38,0xfc3bf1a4,0xfe3b3928,0x00423b0a,0x00d7804f,0x003344d5,0xfe103798,
-0xfe169930,0x007e0bfc,0x00063cd9,0xffbc371d,0xff5344a1,0xfe28c37a,0xfd751b9c,0xfcc3d30c,0xfe5a21ea,0xfe4fead8,0x000bf427,0x00c0baf4,0x002d0dda,0x009a875b,0x0072d237,0x006137d3,0xffe6794a,0x002b7937,0x00187dc8,0x002de722,0xffdf4819,0x008377b2,0x006981c2,0x012571d6,0x002cbd51,
-0xff5327fe,0xfe9fb3c8,0x034738cc,0x031d7688,0x04b20a20,0x04f87c48,0x01ec4d00,0x01e8ee7c,0xff0dda74,0xfaafa820,0xfa4bccf8,0xfa8c8f80,0xfce26168,0xfbd14728,0xfbd535b8,0xfc62eb18,0xfc64954c,0xfdac6e80,0xff76ae4b,0xff59a822,0xfe5377f4,0xff1e3041,0xff72d719,0xff81390e,0x00c2adc7,
-0x0191bbc6,0x01568a14,0xffdc6b85,0x005bf4d9,0x000695bf,0x00320120,0x003d3685,0x008fbc44,0xffe3f57f,0x02269200,0x029a8c04,0x03ddfb14,0x032b97dc,0x00518bf3,0x0104c872,0x013063a2,0x01ddb224,0x00289594,0x026ce770,0x02d20778,0x00c0c989,0x02d7d2cc,0x02cd21e0,0x02f77cb4,0x0014a157,
-0xfebfa0da,0xfe84b702,0xfd534524,0xfcc28c84,0xfcecaa40,0xfd72e670,0xfdc9cc00,0xff2d4dc9,0x00a7c24a,0x004341fe,0x00207617,0x009a2c57,0x006c17c2,0xff7504b5,0x00431d46,0x00a1416d,0x0014a3c0,0x007e7448,0x00d696df,0x00efb6d6,0x01508756,0x00c63ce8,0x0062f9c4,0xffd92455,0x031cad80,
-0x0296334c,0x004476db,0x0089c4cd,0x008037c4,0xff8783c9,0xfecf94ca,0xfe91dcaa,0x0038c7a7,0x018d74a6,0x03a860c8,0x02e8caa4,0x0250edc4,0x016e78b2,0x0178a9a0,0x01466b34,0x00b41100,0x01118b78,0x00aeb6ee,0x0082a522,0x00fece95,0x001f1278,0x00800111,0x01249e10,0x0133940a,0x00a99d87,
-0x00ac28c9,0x0056c03a,0x009143f1,0x00878987,0x00c06f7b,0x0101fb54,0x01522db8,0x019087a0,0x01b31d72,0x0200a2ac,0x025b070c,0x0192c536,0xffd7c2ca,0x00472d77,0x0097df18,0xff95e4ee,0xfec14baa,0xfe0f9efc,0xfe391738,0xfebfa43c,0xffeab174,0xffcd8bf6,0xffe78bf5,0xffb0764b,0xff463f10,
-0xff35c590,0x00154e2f,0xffcfaa4f,0xffed9be7,0x006bda65,0x00388245,0x00973f30,0x012f6712,0x00ae117e,0x00723f8c,0x00b3febb,0x00ac04d0,0x00c581fe,0x00467caf,0x00d03dc1,0x01158b24,0x00d3595f,0x00f01d31,0x00d1872a,0x00cc620e,0x00eafa78,0x0183b064,0x00a8288f,0xffed7809,0x00557ca1,
-0x00209306,0x000da87b,0xffe1c5f1,0xff892cb9,0xffd4f726,0xfff3171e,0x00135736,0x00572995,0x00909b1a,0x00c08c4e,0x00dd0b65,0x00eeb9ec,0x00da5fa3,0x00d9390c,0x0081bac8,0x011c05ce,0x01a87ea2,0x010fd842,0x00be8100,0x00b1135d,0x00e5c55a,0x009a0627,0x00ec927e,0x00829ea2,0x014b18a0,
-0x0089cd5f,0x00d4e9fd,0x0089e52a,0x00ae4453,0x00f90a45,0x0145db62,0x01108b90,0x014365ec,0x0035e0bd,0xffe3f082,0xffc71ae7,0xff81dad0,0xff508132,0xff193a98,0xfee91722,0xfef38868,0xfef56716,0xfef55942,0xff037bc8,0xff1d8735,0xff50a4f4,0xff46fd61,0xff44d927,0xff374b7b,0xff60b580,
-0xff58b242,0xff637130,0x00d31e0e,0x00295662,0x00a0f467,0x00bf5d69,0x011c2980,0x0106333a,0x00cf92cc,0x01054bb0,0x015d1f70,0x00dba979,0x00b07356,0x00e6e6f6,0x00c4dc0f,0x00de3369,0x00c9ecde,0x003b2486,0x013337ee,0xffbff00f,0xfff53d49,0xffdc3011,0xffcd5e47,0xffbfe45a,0xffb19025,
-0xff98f8f9,0xff9baec3,0xff9e08d2,0xffa5fa1d,0xffa73fcc,0xffa356d6,0xffa0974d,0xffa7cd62,0xffb6a18a,0xffc474cb,0xffc1c66b,0xffd90ef4,0xff7f1820,0x010504ae,0x01cc2cc8,0x01d52af8,0x00f15b5d,0x0206318c,0x020da894,0x021394ac,0x01f99b90,0x01ba3534,0x01eda0c0,0x01e0b01a,0x01ce34a0,
-0x01e77c3e,0x00f976ab,0x0195c69e,0x01e919f4,0xfffcfc12,0xffce8c27,0xfdc01f08,0x004ca9d3,0xffa7bccd,0xff98bac1,0xff98b5f1,0xff89c34b,0xff92335c,0xffadd4c3,0xffb0e621,0xffc50a35,0xffe66159,0xffe6ea4d,0xffe2d7fd,0xffcaf787,0xffde7db1,0xffe551e1,0xfffa9244,0xffe5ae12,0xffd93ebd,
-0x0077f2b0,0xfdccdb18,0xfd575e50,0xfeadc774,0xfe393ae8,0xfd56e1a0,0xfe7dd62e,0xfe4bd09e,0xfe459816,0xfe86a536,0xfe130cf8,0xfe08a634,0xfe301b62,0xfd570f00,0xfe4da75a,0xfe8b86c4,0xfd24fd80,0xfdbcfd8c,0xff4f00a9,0xff8392c9,0xff15c4cc,0xff23cc72,0xfee37b42,0xfef49150,0xff310088,
-0xff180086,0xff433de3,0xff95c740,0xffce730b,0xffe4b3fc,0xffb6f21c,0xffe821e0,0xffeb513d,0x002665c8,0xffb59fe1,0x001bbba7,0xff9e0c73,0xfdf3109c,0xff8d25e4,0xfef5fd9a,0xff57b084,0xff1bf415,0xff29df22,0xff6902ba,0xff01ad15,0xfe79606a,0xff26fe40,0xffaece8b,0xff720ebb,0xff4e118f,
-0xfec83dd2,0xfe78008a,0xff3265b5,0xfe4b4e98,0xff4d1e73,0xff513e29,0xfe90df3a,0xfea88cf8,0xfdbc6314,0xfe059fa4,0xfee19b10,0xfecb8c54,0xff3ee823,0xffc05fe3,0xfff1c76f,0xfff4a3d3,0xff636880,0xffef9b35,0x00023ca8,0x008add48,0xffee7686,0x00939da7,0xff94440c,0xfe91e328,0xff811183,
-0xffe3014d,0xffd942a6,0xff416ef0,0xfff0800e,0xff5d7ed4,0x00449130,0xfee80f80,0x00009ffb,0xff328f9a,0xfffce0b3,0xff63e3ef,0xff2a8546,0xfeb5302c,0xfec7cc08,0xfe30856a,0xff0865dc,0xff235d09,0xfe47a0b2,0xfe2e4e3c,0xfc9b6538,0xfccb8e38,0xfdf9ea9c,0xfd983c88,0xfe3dbdb8,0xff206837,
-0xffc77a01,0xffc9c511,0xff3770b0,0xfffb551f,0x00371fb9,0x00dd3f73,0xffb07fce,0x00af61b2,0xfff315ea,0xfe97f4b0,0x00ea4101,0x001563a5,0x00d82098,0x00b0458f,0x008c8d47,0x00a92d42,0x00a9169b,0x009627e3,0x001e81be,0x00672bca,0x00f6c49b,0x0046f44f,0xff8f6aac,0xff612d1c,0xfeaeec28,
-0xfbe7c718,0xfcb26e48,0xfda0156c,0xfd2a64bc,0xfced4744,0xfe216828,0xfebe3212,0xfefe12c0,0xff640e89,0xffcba926,0x00484445,0x01047c50,0x014809a2,0x0101693e,0xff3beb8b,0xff1e2e02,0x02218a5c,0x0137f852,0x01878b52,0xfefac3fc,0xfe456a0a,0x00b46055,0x004b5810,0x004f584c,0x004ea3f6,
-0x01039398,0x00c6a335,0x008f7577,0x0074c412,0x004d2a54,0xffbebddf,0xff8466c9,0xfeeafa18,0xfe30873c,0xfe2c68fa,0xfd1ebcdc,0xfd8c69ec,0xfed1e504,0xfee373da,0xfdbe445c,0xfe2b3574,0xfdd4fbb0,0xfdb46d94,0xfe30f788,0xfd7b4c1c,0xfd747950,0xfecd619e,0xfdc81820,0xfd6e9034,0xfd1cbe38,
-0xfea92834,0xfefeb6aa,0xfe924424,0xfe477332,0xff3f9fa2,0xfed150de,0xfee4d8f0,0xff813fef,0xffef8bc9,0x013b18d0,0x01085bdc,0xffae03aa,0xfff96304,0xffe698ca,0x001c2ba4,0xffcedc76,0xfffda97b,0xffcb43bc,0x0097e66b,0x006ef8e8,0xfea13f1c,0xfed8f7ac,0x0273312c,0x03a33d9c,0x032ed9e8,
-0x01346590,0xfe1f565a,0xfd457b00,0xfcec6ec4,0xfd472500,0xfee2aaaa,0xfff440f0,0x017ada4c,0x006ffcd8,0xff963e01,0xfe1a68c6,0xfdc5ee88,0xfdbb477c,0xfea97b4e,0xff3ae238,0x0031ea95,0xff679796,0xfeef779c,0xffeed8ee,0x000c47c6,0x009f4725,0x00b6bf7a,0xffe73874,0x00666efe,0x00388931,
-0x000ee5c8,0x00463fcd,0x007d7940,0xff991b27,0x00e8c578,0x020b9330,0x025f5b18,0x02a527d8,0xffc1f099,0xfe9262e6,0xfc6555fc,0xfc23f678,0xfd370b74,0x0064ca4a,0x012ef7e0,0x00e73b13,0xfdfc03a0,0xfc42a10c,0xfc7fb9dc,0xfc42ee10,0xfcb04450,0xfcfce764,0xfd2a69b8,0xfd5f3cf8,0xfe00784a,
-0xfe5b0cde,0xff39a20c,0xff03f532,0xfee57898,0xffad8dc7,0x00483644,0x0023237f,0x0017f8b1,0xffa8b8ad,0x002a05ea,0x0021941f,0x00276ca0,0x0042ec8f,0x00b6e445,0x0179d08e,0x015ee3dc,0x00ffd27d,0x0080479d,0x00597b4c,0xff1d9196,0xfd37b3a8,0xfcdf2ee0,0xfcb79cc4,0xfd637f84,0xfdde6f1c,
-0xfe674390,0xff681ba6,0xff0a3525,0xff3b325f,0xff8e4208,0xff259614,0xff181118,0xfee9df3c,0xffb26a98,0x00432866,0x00970c63,0x001d469d,0x0029192a,0x0022d62c,0xff78d105,0x00179a29,0x00a754e3,0x012445e2,0x012a007e,0x006922f3,0x00854bda,0x00b76005,0x008829a4,0x007c2d93,0x00094a61,
-0xffdfab17,0x004d8d00,0x007a2085,0x00793c08,0xff453e31,0xff4f7136,0xfe4ad868,0xfee96c7a,0xff33f662,0x0049f345,0x0049c1b3,0x00521f63,0x00731e13,0xff073ce5,0xff0dd0f5,0x0048b34d,0x005b1606,0x00339f67,0xffacebbd,0xff3c0e45,0xff3da8b5,0x00404ed0,0x00ae8989,0x00c9fcd4,0x007bb250,
-0x006fd311,0x005fbbab,0xffe3d4fa,0xffc83769,0x0009cf9e,0x005d7f5e,0x00a66724,0x00a87ecc,0x00cc2d0b,0x01017bb2,0x00fbe85f,0x00880e42,0x00c2084c,0x005846de,0xfffa6285,0xff3712e3,0xff2d133b,0xffaaef15,0x0034e6fa,0x0011a0c9,0x00316587,0xffce0d4f,0xff90cbd2,0xff6d1683,0xff567369,
-0xff18579b,0xfea83ac4,0xff4c40b0,0xfffe7394,0x00ae67ca,0x00e9a450,0x01149b8a,0x0145233c,0x00fbfab6,0x01165832,0x00968170,0x0018be20,0x004bda43,0x005cdb58,0x00993853,0x0097e7e3,0x00cca44a,0x007c2823,0x008c700d,0xfffac6b2,0x0041ada4,0xfff83577,0x0004d3c0,0xffc57ec4,0xff6e2bf7,
-0xff2a104c,0xff68cb39,0xffe881e6,0x000dcdbb,0x0024dbe2,0xffe3bf93,0xffdeca56,0xffd811fc,0xffd433a2,0xffacc39a,0xffb76feb,0xffce518b,0xffd5fa8b,0xffcdf3fe,0xff95ae96,0xff59e04c,0xff5d6b23,0xff694470,0xff83af3a,0xff9e04de,0xffdadb39,0xffda297e,0xff7ef586,0xfff36253,0xffb0b5f6,
-0xfff9e77c,0xffe53ac0,0x00062c25,0x003a49bb,0x000ac35f,0xfff95ff0,0x005aa04a,0x00b0a1f1,0x00a73f84,0x00936005,0x006c87db,0x002d0bbc,0x005b7ecb,0xff2bc16c,0x0068d2c3,0x003ccf11,0x0035b597,0x0030caa6,0x00222623,0x001b1e9c,0x001a2e91,0x00216d73,0x001e81d8,0x00218548,0x0018d476,
-0x001ec2db,0x001e9288,0x002e47c9,0x00334d2f,0x0036ddc6,0x0035fbd9,0x002f5b0c,0x0063b830,0xff384047,0xfeff3396,0xffe7f49a,0xff604914,0xff00a2af,0xfff44d08,0xffdf6403,0xffe9c9bb,0x0008411d,0xffd78311,0xffce4752,0xffdb23bc,0xff273575,0xff746099,0x000daa2d,0xff13bd76,0x00473706,
-0x01086892,0x01fa8470,0x00a69387,0x00cc0b8d,0x00fe7258,0x0123fd38,0x01632c34,0x016d26a8,0x014a1560,0x0123ec16,0x010ac728,0x0103ccda,0x01024798,0x01035882,0x010b3a0e,0x00f538d3,0x00f3910f,0x0100bcd0,0x0102175a,0x00eb9c0f,0x00ecaf75,0x022d7cd4,0x019c856a,0xff0b6e6d,0x022a6498,
-0x01b51916,0xff3da98c,0xff655e99,0xff6c8b7c,0xff55c240,0xffa0eacc,0xffb5b77c,0xffcff651,0x01a8c1fc,0x0211d0c4,0xff10a237,0x01836ed8,0x0074ab94,0x00d04ac6,0x0079c2dd,0x0110e6d6,0x01601cec,0x02276b14,0x0241e920,0x01c72f38,0x01629dfe,0x01283f02,0x01328714,0x0123610a,0x01262e9e,
-0x014b474e,0x012ad106,0x0139f230,0x0164b306,0x01667bd0,0x0117e73e,0x01b15108,0x00e57b46,0x01275e20,0x01a964ba,0x010362f0,0x00f899db,0x0168a7f4,0x0115ee0e,0x0172cd40,0x017908c0,0x0150bd90,0x00fe66ee,0x011284fc,0x010b835c,0x00c190e4,0x00d06976,0x00bfa8d6,0x00c69920,0x00187482,
-0xffae2db5,0x0091158d,0x0159127e,0x038bcad4,0x03fe76e4,0x02fafadc,0x021b81e8,0x01614244,0x0147f91c,0x0135fdb4,0x01410198,0x017fdcea,0x01128e10,0x011e468e,0x016bcab6,0x015b519e,0x011d70e4,0x0182e5f2,0x01c2c140,0x0168d320,0x0146ec3a,0x0126256e,0x011bf6da,0x012c34ec,0x00b8d78b,
-0x005fa088,0x00e3b378,0x003789f3,0x00b7601d,0x00fd8c9d,0x00b0dbe7,0x00809018,0x00420cb8,0x0075d860,0xff3ee95c,0xff0dd68a,0xfecc9674,0xffde1d37,0x0113c72e,0x04af89b0,0x056bd9d8,0x03c62664,0x025154b0,0x0166189e,0x01485454,0x013ebcf0,0x0167e7de,0x01fec57c,0x01af78e4,0x01b982c6,
-0x022e9d68,0x021a6b24,0x016fc418,0x01ef7902,0x016493c8,0x00bc01ad,0x0144b1d4,0x00ca8687,0x0072b081,0x006cbf08,0x00880a6f,0x0081b6dd,0x00032346,0x0047b866,0x002eded9,0x00a92b0a,0x003ff824,0x000d5fa3,0xfefa9f08,0xff16bbc4,0x01d170fe,0x019d2104,0x009b2f1f,0x00e58c48,0x00bb1f73,
-0x017b0390,0x01de50c4,0x022b1550,0x01825fc8,0x007a65de,0xfee3b0d6,0xff45b745,0xfeb99340,0xfdc2dd78,0xfee73902,0xffa9828d,0xff8cc44f,0xffea76ba,0x00175697,0x018101d2,0x01876a9a,0x00d5e291,0x0158ef16,0x00cef13b,0x00e4b374,0x0122f616,0x00c313f4,0x007f3bfe,0x0046f9bd,0x007566e5,
-0x002a0bd1,0x008dada2,0xffcf132e,0xffcc17a2,0x00547c2a,0x017ccea4,0xff3a33aa,0xfea57144,0xfd548190,0xfe909f62,0x00032bf6,0x032ec730,0x03621fc8,0x026dff50,0xff537109,0xfe48a16a,0xff0d4f42,0x00840a94,0x01a4fb9a,0x019ab50a,0x021b03e8,0x022fde38,0x029565c0,0x024beb60,0x0196be1e,
-0x01086e4e,0x00806dbe,0x00a4b9e7,0x011a8edc,0x0144bbdc,0x01143e56,0xffdde7d0,0xffe4446c,0xffe0220b,0x00406e1f,0xffc339be,0xffef2c64,0xffab80c5,0x00f587cf,0x01350d10,0x00612aa3,0xff647215,0x03afe318,0x056e2668,0x0474fa88,0x04b8b298,0x0671c378,0x03edc2e8,0x0341317c,0x03f6b670,
-0xff35ba77,0xfe47aa10,0x00760114,0x01a67e0c,0x0274561c,0x01b3ac08,0x00ea5213,0x000a9b95,0xffa9ee95,0x00324b51,0xffff1bc7,0x003983a5,0x00840038,0x0058c58a,0x016c4b3c,0x0104579a,0x009b4189,0xffe9d352,0x0030de26,0x001b90a7,0x0005b5a2,0x00390216,0x007befd9,0x0013d4bf,0x013a9f38,
-0x01de91f8,0x034b6aa0,0x0357e750,0xffcc910e,0x009b0e6c,0x0336cb18,0x0643cae8,0x0a065000,0x09204650,0x06e49908,0x0324c154,0x00b21c6a,0xff84ab0a,0x009246e1,0x00469670,0x00aaee4d,0x0000e891,0x00cfe9dd,0x00b82e81,0x00181934,0x00118b66,0xfff0fb18,0x0023746e,0x0002a868,0x00810b4b,
-0x013b7f48,0x00a093bb,0x009a4fc4,0x0077e126,0x00117043,0x004c9c0d,0x00728653,0x002612e5,0x006bac19,0x0154da3a,0x018473c2,0x01c4951a,0x00e61626,0x00a04499,0x011c2e08,0x0423c7f0,0x06127e90,0x05376858,0x0405de38,0x04a4e4b0,0x047ddfc0,0x048b5f60,0x0376a7ec,0x0393f4cc,0x05632190,
-0x03e1df74,0x02e38934,0x02067190,0x00bb678e,0x003b2bc1,0x0049d286,0x0071f276,0x00893c43,0x00f2a92d,0x00f1a595,0x00f4200a,0x00b70a9a,0x0112bf42,0x01184d84,0x00b28a46,0x00d02e57,0x00e1df65,0x01911210,0x01094712,0x00ecbab8,0x00ee5d8b,0x00eeac91,0x011791d0,0x00f7cdc4,0x026dab0c,
-0xffc1518d,0x018a90f0,0x01d6bb8c,0x01a8e6aa,0x016d19a0,0x01bd31e6,0x01acb110,0x01a50604,0x001b6cca,0xff79d460,0xff84a4df,0x00e3d973,0x023b2824,0x03121384,0x035f7d88,0x02d81ca4,0x01658d2c,0x012ba342,0x00f49b1f,0x0099f09e,0x00c183b0,0x011a1962,0x0178b6ba,0x010a5736,0x00853f10,
-0x005f7b09,0x00a9e880,0x00cca34d,0x00d64630,0x0107b3da,0x011f3f50,0x010e3832,0x01300100,0x01760014,0x013c44e6,0x01731712,0x014790ee,0x00da1e90,0x011d2cf0,0x0199ee76,0x0200d954,0x01e46034,0x01d128da,0x01ea35b0,0x01b28624,0x0181bcea,0x010df918,0x00d9aacd,0x00923c74,0x007a8dfe,
-0x00747d54,0x008f78f1,0x00a7411a,0x00f090ce,0x00f31fb2,0x015a065a,0x0141eb20,0x00a309a7,0x0043db9b,0x0098c513,0x00d8947b,0x01291530,0x00c99da1,0x00b5be4e,0x00a34aaa,0x008cf621,0x009fef66,0x00c2dd68,0x00cd5c9a,0x00dc0c0a,0x00de33c3,0x010ac558,0x00667e50,0x01a22dc0,0x0172b004,
-0x0178ec82,0x0172b218,0x0171ea7a,0x01706362,0x016ec8e6,0x010be8ca,0x00b5cd45,0x006f94f2,0x003a7667,0x000ec440,0xffe0aa4c,0xffed1ec2,0xffef9812,0xffebb0ee,0xffeca896,0xffcf26d2,0xfffd1ce9,0x001bd4ed,0x009fd951,0x0114ba4c,0x00e7e461,0x01273cc0,0x018fb842,0x0182a934,0x01cb1252,
-0x01b754b2,0x01b61abc,0x0185d7ce,0x0176c1ee,0x016b9b92,0x01354412,0x014946b8,0x0163f7aa,0x01b95f6a,0x01681586,0x0139498a,0x01495a10,0x013cf986,0x01430814,0x01437970,0x01510ce0,0x01349fb0,0x012560de,0x0110bc26,0x00f301b7,0x00d38190,0x00a92643,0x00b537ad,0x00b78eca,0x00b8270e,
-0x00bfbb8b,0x00c00ac3,0x00aec36c,0x0154f772,0x011518de,0xffb2c56f,0x01adf2ec,0x01629d32,0xffd93404,0xffea0b7d,0xffee32f8,0xfff12ffa,0x00105a52,0x001ba8f9,0x00250c46,0x0151387a,0x01d75a92,0xffb4f31e,0x0135c472,0x01517b2c,0xfe6cd792,0xfe613c7a,0xfe436a9c,0xfe90e00c,0xfe635334,
-0xfe796f80,0xfe2c6086,0xfe1a4f26,0xfe43af74,0xfe168db8,0xfe20f13e,0xfe5c6bd8,0xfe522e4c,0xfe5b0f68,0xfe5ffcb0,0xfe694f8e,0xfe700de6,0xfe785810,0xfe72296c,0xfea87060,0xfe630626,0xfe8e20e4,0xffca77a0,0x029332f4,0xfe3ad22a,0xff98ac75,0x024bba0c,0x021bb2b0,0x020aa3a8,0x01eb0ee4,
-0x01dcce2a,0x01d5f26a,0x01ce5ac4,0xff83dcd4,0xfe05b828,0x0224f200,0xffa42ce6,0xffeabc99,0xfdee3040,0xfe71ff68,0xfe3818ae,0xfe61ec82,0xfd939bc8,0xfd570770,0xfdc75174,0xfd4ac6fc,0xfd6a0874,0xfdfd5360,0xfde7b8ec,0xfdf2ceb4,0xfdeb1fbc,0xfdedb998,0xfdf5ad00,0xfe14a5a0,0xfe29a8c6,
-0xfe7eb462,0xfe6683e0,0x00b97c8a,0xff583217,0xff18768f,0xff9243bb,0xffa8fff3,0xff103316,0xfee5a224,0xfe844f92,0xfed8e686,0xfe94b304,0xfed5e04c,0xff5a69bf,0xff1602d6,0xff7e49cc,0xfef08fdc,0xfe455b24,0xfe348abc,0xfe0c8384,0xfe286f7a,0xfde93cc4,0xfe654c36,0xfc880058,0xfbe553e8,
-0xfce50638,0xfbd81210,0xfc1c6350,0xfd627fe0,0xfd14d58c,0xfd5b860c,0xfd722a10,0xfd9e30b4,0xfdbd66c8,0xfdd37ce0,0xfe127036,0xfe4e2b64,0xff26ad67,0xffaa5417,0xffd6ef9a,0xfff44e96,0xffbb0e24,0x0000d44c,0xffda8345,0xfff40b1a,0xff44cdaf,0xff84ddc2,0xff954800,0xffe0739e,0xfff7c53f,
-0xffd5adae,0xff7bd79b,0xff086fad,0xfe85cc96,0xfdebd774,0xfe26bba6,0xfeb1cf78,0xfe697f76,0xff08e855,0xfc0f8788,0xfaf91be0,0xfc429864,0xfaab1880,0xfb1a2a30,0xfd2472ec,0xfcafcdc0,0xfcaa77f0,0xfcb79e10,0xfc99b038,0xfcc15be0,0xfd1880b0,0xfd9f0e68,0xfe796bc6,0xff49692b,0x00a8ff2c,
-0x00647bd6,0x00c10b87,0x00474de7,0x005d0b2d,0x00acbe5c,0x005d8316,0x007d3cc5,0x0006a4d8,0x000dbacd,0x001cfd25,0x00c510db,0x0028369e,0xff69d07e,0xfed53b84,0xfde19b14,0xff6bb8ef,0xfcb402bc,0xfb920380,0xfb312dd8,0xfbc36d28,0xfbff7088,0xfc56efc0,0xfcdb023c,0xfdaa6504,0xfd8d26b4,
-0xfbd9ea18,0xfd0508bc,0xfd9dae18,0xfe87d314,0xff06a4d7,0xfedd0c3a,0xfeb07602,0xfe3cf2be,0xfdb862f8,0xfdc2b164,0xff70b691,0xffbe2f17,0x004bdac0,0x001be76f,0x0040ff77,0x00fef376,0x0074b0b1,0x00285822,0x0023b34f,0x000b6998,0x0001d02a,0x000ce38c,0xff6a48fd,0xff566be0,0xff4f0976,
-0xff90ebb6,0xfcf4d364,0xfcddbf04,0xfd8a2f58,0xfde30208,0xfe4031ac,0xfe465ade,0xfe4e6826,0xff0b49bd,0xfcf9de18,0xfd172ca0,0xfd2c8a8c,0xff623f5e,0xffd84391,0xfeb81036,0xfe11ef08,0xfcf868bc,0xfc4b935c,0xfd080ea0,0xfdc1aef4,0xff1e9e47,0x00591d14,0x003ea533,0x0040bb1f,0x00aacf2e,
-0x00ac2722,0xffe3b9ad,0xffdfa427,0xffecce99,0x000eb49f,0xffa80c51,0xffc9ee80,0xff5902b9,0x00aaff0c,0x0014891c,0xff483901,0xfd696970,0x043aa290,0x0375af28,0x02023478,0xff3b4de8,0xf97cc998,0xf6317250,0xf55e4860,0xf9498e18,0xf9042928,0xfa6e3d08,0xfb1ba4a8,0xfb47f858,0xfafacbf0,
-0xf9f72118,0xfbd85580,0xfd5c1e28,0xfeb77f5c,0xff616165,0xff89b364,0xfeae7682,0xfef65378,0xffcccd27,0x01330d2a,0xff9c3622,0xff731f49,0xffc5ef65,0xffbe1790,0xffe2804c,0xffd8c0eb,0xffd5b857,0xfff8ae06,0xffb751ef,0x008f6c0f,0x0158a75c,0x03805ed0,0x03595fe8,0x0098acd2,0x007ed086,
-0xfd5d0ca0,0xfc05c274,0xfa87d170,0xfc61bf18,0xfdae057c,0x0012bec9,0xfc230a00,0xfb8e2548,0xfc8b1628,0xfd6899dc,0xfe4847b6,0xfe3d4586,0xfda7905c,0xfd0a7c98,0xfd421a50,0xfd300444,0xfdff01d0,0xff37f584,0x0008a4b6,0x000d3a38,0x0136cda0,0x005fed30,0x0037e351,0x00721937,0x000da550,
-0xfffb9a9c,0x001b88a8,0xffca489c,0x00069c6e,0x00c31f96,0x016236a6,0x010dd282,0x014fed5c,0x009aa998,0x01a89918,0xfe615f58,0xfab791e0,0xfab803c0,0xfa785c00,0xfb04f098,0xfc142cc8,0xfe6d1aac,0xfe1f3964,0xfe2aded8,0xfd4a58e0,0xfe1546ac,0xfe02ac42,0xfd36d264,0xfddb4300,0xfe6978e8,
-0xff2c492d,0xff8c2cfd,0xff6b2980,0xff664ccd,0xfff7fc45,0xffcd4cf9,0x009a5554,0x00a95f32,0x009e1071,0x00443eb0,0x007865a5,0x0090f1bf,0x012038d4,0x00a2758f,0x008d6152,0x00501cb6,0x007b728f,0x00ae5085,0x01420c8c,0xffe93ab5,0x012e890a,0xfe621dfc,0xfd563c18,0xfdd04698,0xfdb50864,
-0xfeb408f2,0xfed260a6,0xfdc67714,0xff2d938b,0xffe6ff9f,0xffdb53ea,0x005dda99,0x00b38257,0x00fd04d3,0x00f1d526,0x009accc5,0xfffa8498,0xffc04d5e,0xffea87fc,0x00c45af7,0x00ec14f6,0x00a2d3c5,0x0096f5c9,0x00541dd5,0x004816ab,0x00198fe9,0x002625a3,0x0059d4af,0x009dfca5,0x0053fdfe,
-0x005a6ca0,0x00889082,0x00bd19d4,0x005de957,0x006c15a7,0xff5f3735,0xff851e24,0xff54060f,0xff51b874,0xff69a9c3,0xff56a653,0xff32af9d,0xff387b13,0xff3a333e,0xff32eb63,0xff09f8ab,0xff0a29d6,0xff436864,0xff78e9dd,0xffd4b8cf,0xffc1b188,0xffd9e770,0xfff4a1d2,0xffdc3ab8,0xff74a1de,
-0xff6977d6,0xffe5b550,0xffd3a50b,0xffb1a12a,0x000e12db,0x00a81a73,0x00db0bd6,0x00e86af6,0x002f3451,0x0048691d,0x0033cd57,0x0081ec26,0x005de5c2,0x0043bf5f,0x00333a37,0x005941e6,0xffdbf740,0x01c40132,0x00079fcd,0xffe6af7b,0xffa56122,0xff7ddcee,0xff49377b,0xff10e21a,0xfedb0a10,
-0xff1b9ad3,0xff6a1b6f,0xffaa8a96,0xffed77ee,0x002464db,0x0056a016,0x00465968,0x00391f59,0x002ede54,0x001abadf,0x00367a08,0xffeeb910,0x004481a5,0xffd7076a,0xffb88ca4,0x001e4541,0x00018780,0xffb0fc02,0xffb30a00,0xffb99c5b,0x00190fd7,0xffe564cf,0xfff5ea62,0x005c7676,0x00440b43,
-0x00af9c33,0x008a2005,0x00299c2d,0xffe10f75,0xff8acf43,0xffc28dc0,0xff9ca7c9,0xff8c5339,0xff7c84ed,0xff70384d,0xff4d29db,0xff7c5432,0xff913684,0xffa7410a,0xffb97016,0xffcb86ba,0xffe83be2,0xffdaddb4,0xffd59a54,0xffd047c6,0xffc7f321,0xffce56db,0xffb622cf,0xffae7462,0x00611c9d,
-0x01ec8890,0xff795c7b,0x005bd82c,0x022bc07c,0x0223f3bc,0x0215d514,0x01f80a8a,0x01f82256,0x01eeae4c,0x01d86afa,0x0080fdc3,0xff7d19b9,0x0226fc8c,0x00bdf76a,0xff85b6b1,0x01b0f3fc,0x009daf8e,0x020b64d0,0x01366086,0x0160802e,0x01432a26,0x01b14906,0x01dc169c,0x01f156c4,0x01d2f204,
-0x01c96282,0x01d0bb18,0x01b605fa,0x01b0ca2c,0x01b0b3c8,0x01c13166,0x01c5c84a,0x01c81b44,0x01bfe892,0x01869872,0x02238838,0x00bb7656,0xff36e2eb,0xfce3eb8c,0x014097c6,0xff5eb3ae,0xfd20f248,0xfd1148f4,0xfd143a10,0xfd4f6c04,0xfd339bfc,0xfd3d2ce8,0xfd6ab4dc,0xff678d07,0x016bb0ae,
-0xfcef5e00,0xfef78768,0xfe4f99bc,0x01c67404,0x00ebb16a,0x00efcf32,0x010683c6,0x023b801c,0x02b66be8,0x02c2fd54,0x0272242c,0x023b5ec0,0x024d9c14,0x0209264c,0x01fd1e22,0x01ff5994,0x02361648,0x02483544,0x024c63fc,0x021d1d74,0x02057068,0x02092854,0xfef62702,0x011821e2,0x01027358,
-0x00a18ef5,0x005d0cfc,0x0123d5fe,0x0105434c,0x0119f55e,0x007ff536,0x012f629c,0x01518ada,0x00d001c4,0x010166d6,0x0021ba92,0xfff7ce70,0x013b20c8,0x0025d0a6,0x015270b0,0x00beb6b8,0x003f7d5e,0xffda5112,0x021d7780,0x033f3368,0x03bbb648,0x0355cb04,0x02f9d154,0x03188d54,0x026dabb4,
-0x025707c8,0x027e3f20,0x02c5705c,0x02d135c4,0x02e16860,0x02589d14,0x027e5cd8,0x01777fb0,0x00c58966,0x00fadd1c,0x00e3ffda,0x01105036,0x0069a521,0x012822a0,0xfff5e518,0x00c58656,0xffe3e19e,0x007cd6e3,0x001c5e32,0x00bbc2b2,0x0065633a,0x00487991,0xff81e4b7,0x0092de60,0xffdc9754,
-0x016d4316,0xffeb5a97,0xff411c71,0xff4e589e,0x02b5bc90,0x04a04eb8,0x05368480,0x04505340,0x039d92d4,0x03e12a2c,0x02fe0944,0x02e1b4b4,0x0326362c,0x03a05a4c,0x03c86380,0x03bdd588,0x0329e6c8,0x02c389e4,0x01e9bf50,0x00ab675b,0x01af9338,0x00c254cb,0x014387be,0x0100cdde,0x012c9344,
-0x00a82592,0x004383c7,0x003d9a4e,0x00260307,0x007d201c,0x00e345d8,0x00c4ba54,0x0073d9f0,0xff85cd5c,0x00a580e3,0x00548592,0x00de0042,0x01672078,0x00e4ac70,0x006ed4cd,0x01ea4278,0x027af150,0x02c81390,0x03c49038,0x03669330,0x01949f0a,0x010563ac,0x00b80255,0x004c88ce,0x0139efa6,
-0x013d9af4,0x00b8bccb,0x00f94957,0x01f53422,0x01701f70,0xffcbe1d5,0x011481a6,0x00e64100,0x00a3a912,0x00874ace,0x00e951df,0x007f1704,0x0037e2fc,0x00466f15,0x005b337b,0x002775c7,0x002b1b5a,0xffe74cd9,0xff8bc6cf,0xff672758,0x00b7c811,0xfe7a91fc,0xff30546f,0xffce32be,0x0095d62b,
-0x0038cfac,0x00a72ec3,0x00f5d7b8,0x013e16a6,0xffd38c91,0xfee888c0,0xfd87ad90,0xfece85fc,0xff710f4f,0x0083acbf,0x015d94bc,0x026fa454,0x042f3f40,0x02f69314,0x0259cc04,0x00aafd7d,0xffeee48e,0x007021a7,0x00d91a4f,0x013e6b76,0x013ada50,0x004ab3df,0x000d559c,0x00219b8e,0x00339755,
-0x002c9166,0x002ba867,0xffcf3482,0x008b007b,0x010a18a8,0x008f982d,0xffcf6b21,0x031256f0,0x02f34880,0x01e10868,0x00b89b87,0x01c67b48,0x02039918,0x03070d48,0x056f7920,0x02210744,0x00df55fc,0x003b4b31,0x02ded294,0x03e0ec30,0x03374010,0x033419e0,0x01bd5f9a,0xffdd077a,0xffb2a144,
-0x007eb405,0x00a7fa42,0x00ad07d8,0x0122e9a2,0x01e74e5c,0x00278845,0xffabcc43,0x0012ff7e,0xffe82d0f,0x004299a8,0x0025e377,0x0009815c,0x001bc7c5,0xffe74d26,0x002a015b,0x00f17657,0x02c6f6e0,0x02dff798,0x009ad9d5,0x00e02e1d,0x03fa4abc,0x065b43c0,0x0a8abf40,0x07cf1338,0x04e44108,
-0x0276fefc,0xfe72da66,0xfdaae074,0xfe60545a,0x00913df3,0x011ac7ca,0x0007586e,0x00b88d76,0x0113cf70,0x017e185a,0x012649b4,0x00a516ae,0xffff54c9,0xff329035,0x001bc6ee,0x018f6fd2,0x005d5469,0x003e6cd9,0x008acc99,0x00327a26,0x0020a02d,0x001f0f14,0xffe358e3,0x00228785,0x013a7346,
-0x016c1f22,0x01fe0928,0x018fee1e,0x014ff750,0xff2921a9,0x02182d64,0x0564b8d0,0x04cd1318,0x04540a28,0x052af428,0x063f2a58,0x06d3f8c0,0x04f3e600,0x03aefc14,0x02605990,0x016be470,0x00df7ad0,0x00742afb,0xff68d6a9,0xfec35b4e,0xff0492fa,0xfefb62a8,0xffa67545,0x0045f8d4,0x001dbd99,
-0x00cbb13c,0x00d0023e,0x009f104d,0x00a40c5c,0x009979c4,0x00a11b3d,0x00ebbf7d,0x01300b36,0x0145aca0,0x010598dc,0x00ae7863,0x008e0899,0x00968add,0x00713be8,0x011ed1ea,0xfe456e50,0x00a3d246,0x01b32ee0,0x015ad804,0x02121e18,0x0259f1a4,0x028ae76c,0x03531408,0x022d300c,0x0160f72a,
-0x00aa6a86,0x01c180fe,0x026bf260,0x02ff100c,0x02febff0,0x02f2428c,0x0268c50c,0x01e001ac,0x0144627c,0x0069f9a9,0x0079fff4,0x00a9db9d,0x006eee76,0x01009056,0x00f754d0,0x009517e5,0x00896e86,0x008c6b74,0x0102d1ac,0x00ac976b,0x00b6f78d,0x00ffa694,0x00fe5bb8,0x012c28e2,0x00d7fe39,
-0x00e447b1,0x00a742b4,0x01156f5c,0x0185d3d6,0x0156a358,0x017c7776,0x01a47ff6,0x01f005aa,0x024b8fbc,0x02028740,0x01daa56c,0x017419d4,0x00f197bc,0x005fb0cf,0xffdd9a34,0xffebeaaf,0xfffb9832,0x001dd61f,0x0021bcf6,0x005bb03a,0x002eee85,0xffee4856,0xfff06049,0x000c678f,0x00485122,
-0x0050a631,0x00d11d52,0x006b4386,0x00d0c462,0x002c2cd7,0x00a8b1e2,0x0063f741,0x00bf5587,0x0086d5e2,0x005979f1,0x00071c38,0x0090ad35,0xff823c41,0x011a4606,0x01346548,0x015acd50,0x01822822,0x01acce14,0x01c56a2c,0x01e69022,0x019c7332,0x01627d8a,0x014043c8,0x01060bd0,0x00dd29ec,
-0x00a29489,0x00b0e585,0x00a734ad,0x00a2cb85,0x009a82db,0x008535a5,0x00b1bfcc,0x0010f508,0x00d8d82e,0x00fd9787,0x00b9fb40,0x00b179e9,0x0120200c,0x01303b1a,0x012c37c4,0x00c15da1,0x0123b670,0x01166a2c,0x00c3a908,0x00d9cf41,0x0086e917,0x00aa4a24,0x01128f9a,0x00b3f206,0x01874cb0,
-0x013e9b6e,0x015ac3b6,0x01620382,0x0169e73a,0x01750286,0x0191ee0a,0x0174de8e,0x01608548,0x01449624,0x01342cd4,0x012338c2,0x0109ba5e,0x010e36da,0x010ec5c8,0x010f2854,0x0118a62c,0x010e4790,0x013f262a,0x00aa616b,0xffd90e84,0xfea1e9d8,0x00ff711b,0xffeb7bba,0xfe8681fe,0xfe886f70,
-0xfea0bb06,0xfed49816,0xfebef666,0xfecfb104,0xfee3c492,0xffd94ec9,0x00ff63f7,0xfecc73ec,0xffbe1525,0x017d792e,0xfeb83ffc,0x00561dab,0xfe3ba3cc,0xfee53c48,0xfec13588,0xfeff15b2,0xfebca082,0xfeaaa6f6,0xfeb0f0c2,0xfe999ee8,0xfe955d58,0xfe9e932e,0xfe9984fe,0xfe996530,0xfe99cef0,
-0xfea013b4,0xfea4b160,0xfea4f0d6,0xfeaa3e34,0xfee28088,0xfe3f83ca,0x007b7a72,0x01ddaf76,0x031dfba4,0xffe79bc1,0x01b4bac2,0x02f9a9f4,0x02f6f518,0x02ea83e8,0x02979da4,0x02eec3bc,0x02fbc844,0x02e9c888,0x019c127e,0xff91b0bb,0x02ca139c,0x01e5177a,0x01dc586a,0xfea72006,0xfe9aff12,
-0xfed11332,0xff59293b,0xfec4a450,0xfe82e9e0,0xfe7d13b0,0xfe37324c,0xfe23abc0,0xfe4511bc,0xfe499f14,0xfe47290e,0xfe36ca2c,0xfe318740,0xfe3704a6,0xfe320f7a,0xfe71c7d6,0xfe754e38,0xfeed0d34,0x02213fe8,0xffed5589,0x003202e3,0x004a0b52,0x007f6ce7,0xffde1c17,0xff7e3818,0xff76785b,
-0x001fc903,0xff6c8a40,0xff411e2c,0x00066833,0xffc706a7,0x0070d6b9,0x00124f27,0xfef418c0,0x004c6e21,0xff2b3e30,0xfe043c84,0xfe89f448,0xffc675ad,0xfeccd6c8,0xfe4183d8,0xfe35e3e4,0xfdb1cea8,0xfd87b1d8,0xfdc9ab58,0xfdb474e0,0xfdb62894,0xfdbd82fc,0xfdcf181c,0xfde63984,0xfdda04cc,
-0xfe3f48d4,0xfe15d2b8,0xffb86a7a,0x00f1a7c1,0x00996ed9,0x00774278,0x00445e43,0x00e4a1d4,0x0014175a,0x0082616e,0xff221274,0x005c9f74,0xffa12633,0x009d00a0,0x005f1251,0x0074028c,0x0038ce51,0x001da54c,0xffd877a1,0x0044edf4,0xfefc7fd6,0xfdcbdda0,0xfee44dc2,0x0116cbb8,0xff9e3d00,
-0xfe9aeae0,0xfe2895d6,0xfd3e5bf0,0xfcc178b8,0xfd571968,0xfd94efd4,0xfd7be05c,0xfd459e50,0xfd12b98c,0xfd1b8e68,0xfd281ee4,0xfdd03b3c,0xfe08c514,0xff9b223e,0x017a4742,0x002fdae5,0x0139b712,0x0053ad2e,0x003fa685,0x00824c6c,0x0028b794,0x003e6a98,0xffa75f32,0x000f1de5,0x00161705,
-0x009737bf,0x00641a2d,0x0060bc71,0xff5729c3,0xff241e27,0x01c54b92,0xfcc873c4,0xfc1e9100,0xfbeadef8,0xfb224ed0,0xfbaaa678,0xfc5e0f08,0xfc800e00,0xfe6d1174,0xfeb40578,0xfcf000d4,0xfc5dd814,0xfcd994bc,0xfe960102,0xff932470,0xff94f26e,0xfdcba46c,0xfe2ec49e,0xfda0f9c0,0xff3efd0f,
-0x00dd7126,0xff750ba0,0x00577c2c,0x002e778a,0x0089726d,0x00e800f8,0x0029a758,0xfff18a79,0x00369ede,0x00010a95,0xffc01cf6,0x003ea0ba,0xffc750cd,0x00175a91,0xfff258bc,0x019e0610,0xfe52fcea,0xfcddb004,0xfddb9968,0xfff57bec,0x01bb010c,0x00ff7dce,0x00eb30d9,0x01d7c998,0xffe813c6,
-0xfe94bc26,0xfdfa2570,0xfed273aa,0xff3526ce,0xff720f53,0xfe3399a4,0xfd9ed674,0xfd306474,0xfe585056,0xfe5cc5b2,0xffcacd38,0x0106ed4e,0x00b5caa0,0x01247618,0x00227847,0x000f97c4,0x002a1190,0xfff291c4,0x000e66b4,0x00131317,0xffe2cb0f,0x000bebaf,0xff8508f3,0x00715cf2,0xffe1de0b,
-0x00258db1,0xfde90188,0x034e8934,0x00cf004f,0xff4809a8,0xfce4daf8,0xf87c8010,0xf8b24aa0,0xf8bb92c8,0xf9d40b38,0xfa73ca30,0xfb80cab0,0xfba17288,0xfb6130e8,0xfb858ad8,0xfc89b5dc,0xfd8159b0,0xfe8b781c,0xff7b9ccf,0xff78d035,0xfed1475e,0xff47daa4,0xffcffeb6,0x0021a6e4,0x01e80ec0,
-0xffedb90e,0xff899415,0x0040f6d0,0xffaf60c6,0x0002b126,0x000eb641,0xffeb34f5,0xfff23f49,0xfff92849,0x00273813,0x00545cbe,0x02c6afcc,0x02b7395c,0x01a3d554,0x02874a7c,0x02de6900,0x029534d4,0xff9e8771,0xff4a93f0,0xfec91be8,0xfe9fd94a,0xfe9063ec,0xff1f921c,0xff5d3072,0x00a55a6e,
-0x00a19518,0xfff6cd27,0xfece9434,0xfe24db70,0xfe01860a,0xfe0c7b06,0xfe273932,0xff35cc82,0x000e7efc,0xffce70e5,0x00fffb5d,0x001d9fa8,0x000ac5f6,0x005ad02f,0xffec16f2,0x0010fc8e,0xffffc467,0xffe992e9,0x000844c3,0x0080578d,0x01336cea,0x0144786a,0x02028ad0,0x01230b3c,0x0288507c,
-0x00c5aea8,0xfe0a30c0,0xfe39d890,0xfdd56b18,0xfee32a12,0xffe05a44,0x00ff8bb8,0x00e82ae9,0xfffec178,0xfe22dd72,0xfe62a400,0xfe7f533c,0xff003446,0xff3d1610,0xff36a761,0xfe99635c,0xff3bfed8,0xff39f5c5,0xff545293,0x004632a0,0x00044788,0x00bc52f0,0x00759912,0x0048af52,0x00324e8a,
-0x00b99a23,0x00b8644b,0x01035828,0x00e1dd00,0x01218918,0x01568d54,0x010f8d2c,0x010a4b66,0x018e9b8e,0x01174802,0x023eaf28,0x00a1405c,0xff56a9b1,0xff9520eb,0xff5c3a7c,0xff027ea9,0xfeb4e8e0,0xfeeedb06,0x002feb10,0x00fc89eb,0x016c1372,0x010be996,0x00ec9063,0x016a709e,0x01213c84,
-0x01038d9a,0x00d09320,0x0071a707,0x0057ca55,0x00cc46e3,0x00af1776,0x0093acc2,0x00ce361d,0x00bfd9f7,0x00ba6d6a,0x00a0f912,0x00516995,0x005b87ad,0x000da032,0x0018e073,0x0035cb20,0x006458b4,0x00b39a5d,0x00c7573d,0x011e7900,0x00cd6121,0x008c8053,0xffb52c34,0xff21b57e,0xff56916f,
-0xff2e5cce,0xff5bd7c6,0xff6cd355,0xff46c99f,0xff70047d,0xff6a787e,0xff7e3d7c,0xff6d9f1f,0xff6c285c,0xff667154,0xff491f82,0xff39a9e8,0xff1d99a8,0xff3118bf,0xff00fab3,0xff4b1724,0x000602bc,0x001f8187,0x00481ab1,0x0035a9ec,0x007b1736,0x005243da,0x00c14364,0x0043b869,0x00fb4d05,
-0x00886d31,0x00e3763e,0x00a35c7a,0x00aa4218,0x00c32e2c,0x01052ea6,0x00806358,0x01a4a8d8,0x005d9b23,0x002ce96c,0x0014e561,0xffd166e3,0xff984015,0xff5a1029,0xff284253,0xff58861b,0xff8cf000,0xffc040ab,0xfff1663b,0x001fd5e7,0x0052612f,0x004a8085,0x0042d32c,0x00308d86,0x002a95e4,
-0x0020e61e,0xfff0b7ac,0x00cbe4ee,0x00289bc5,0x0055b911,0x0086ec40,0x00b977ac,0x0078db7d,0x0045d7a7,0x005f7d7e,0x00b6d747,0x00379793,0x000f58de,0x0058da97,0x004bddc6,0x00a73107,0x00acaad7,0x003e107e,0x00d51de3,0xffdbdbaa,0x000edba2,0xffec9767,0xffe350f4,0xffd6cee2,0xffcbbfc5,
-0xffb012db,0xffc16d2c,0xffc470c7,0xffca69c9,0xffd44a20,0xffdf7bfb,0xfff4cf6e,0xffec5016,0xffee1900,0xfff29254,0xffed5d17,0xfffc6f23,0xffc20703,0x00a5bbcf,0x0160ab18,0x01f5795e,0x007c5a6e,0x0179271e,0x023ba7d8,0x023b088c,0x0220b08c,0x01e5b34e,0x02080744,0x01fdba66,0x01df6332,
-0x016e7232,0x007e5c38,0x01dd0ba8,0x01933f7e,0x00123e68,0x008e40fb,0xfed05124,0x0123d992,0x00566f94,0x005bbf51,0x0055a0c7,0x0050d363,0x006457e5,0x00a12b27,0x00925ff6,0x0095951c,0x009c0cc6,0x00890174,0x00833f65,0x007de490,0x00971686,0x009de039,0x009d07c3,0x0099d613,0x0082dcb6,
-0x011fe5a0,0xfedd57e2,0xfe07c3f2,0xfe1b3e00,0xff52cbf0,0xfe10539e,0xfe18c6fc,0xfde57224,0xfddf7f14,0xfe22aa0c,0xfdd259a0,0xfdce6e70,0xfdebd28c,0xfe19e1bc,0xff822c89,0xfe00e598,0xfdc9b73c,0xfde4a4e0,0x007dd465,0x00503ed1,0xffea4ef4,0xffe8fbf2,0xffae3c33,0xffe7e5fa,0x008aa268,
-0x0090e716,0x00a8f07a,0x00a8f646,0x00911c3f,0x008c9cfb,0x0085b653,0x00c9c9fd,0x00d00f76,0x00ca581d,0x009419d7,0x00d7a056,0x0087c55c,0xfe74c23a,0x003191ff,0xffb57a70,0xffdc10e2,0xff991016,0xffe1892f,0xfff96fec,0xffb6f963,0xff2d5e5a,0xffed429a,0x005b0eed,0xffed7440,0x00110b44,
-0xff69a8d0,0xfef95e96,0x000e426a,0xfedd8fd4,0x0050a0d2,0x0042df63,0xff83ce77,0xffc63516,0xfed1e460,0xff3d6aa1,0x00c60464,0x00a5e205,0x00dae71a,0x00e30d13,0x008185e6,0x006536e3,0x0035cd05,0x00dc52e6,0x00f64008,0x010e1b5a,0x00baffc6,0x01448480,0x006aaed3,0xff8f145a,0x002234ae,
-0x0037849e,0x00530acd,0xffb7e6c0,0x004eeb7c,0xff6c1ec4,0x0056a0d1,0xff272bc4,0x0037a56b,0xff9c27c2,0x001e55d2,0xfff3d1dc,0xffca3981,0xfefbf3f8,0xff858861,0xfe75cac0,0x001146a4,0xfff83a83,0xff0a1638,0xff0e86b9,0xfd634674,0xfdf2e8bc,0x003e49e4,0x005b1451,0x00c888c5,0x00f2d2b9,
-0x00aebf4d,0x006f8674,0x00334d67,0x011c3f68,0x01522774,0x0154c84e,0x00bc5da1,0x01583180,0x00e6785a,0xffe7bb8e,0x019fe69e,0x0083286b,0x00fef21a,0x00d79f9a,0x01199206,0x00791026,0x001e472f,0x0047fa08,0x00103170,0x008bc7b9,0x00bbba83,0x00a7b4c9,0x00135736,0xff0abf7a,0xff291cec,
-0xfe869162,0xfde86540,0x001e845e,0xff4c704d,0xfec16f44,0xffe254bd,0x009862f2,0x009d0f95,0x02907444,0x02bc6420,0x015372ec,0x00e09887,0x004796d1,0x0051fbfb,0x002ea9f5,0x00586b5c,0x01af29e6,0x01877a84,0x022a7598,0x0066280e,0xff0cf8c2,0x00c5f4b2,0x0049b332,0x00880c7f,0x006f4f05,
-0x00ab08e4,0x0030a709,0xfffc961a,0x005864c6,0xffa58250,0xff90be52,0x00249e92,0xffbfda35,0xff3284ee,0xfeeee9de,0xffa905af,0xfda781f4,0xff210e56,0x0137e292,0x00d898a6,0x00942b67,0xfe912f72,0xfd948094,0xfdf2c4b0,0xff00b3f8,0xff60c6d6,0xfeff70c0,0xfe1278ee,0xfdffc340,0xfefd7e3a,
-0xffc83baa,0x005e658c,0x00cc86f7,0xfff8bd1d,0x00489d3d,0xff69b792,0xff8c4f6e,0x0048a21f,0x00dae1a8,0x009cf707,0x0063941e,0x002f0778,0x00037cd1,0x0001e500,0xfff5f84e,0xffdeb9bc,0xffca6e88,0xffc90556,0xffad83c8,0x000e2881,0x001ba8bd,0xff43bf24,0x0175d862,0xff63ee2a,0xfd2ebc78,
-0xfb8177a8,0xf9f52330,0xfc39b328,0xfe7867fa,0xff9be266,0x01f69a76,0x01f2a33c,0xffe34129,0x005a7024,0x00cb27b5,0x01d893da,0x018554b0,0x00e15315,0x0010e7c0,0x000e361a,0x00dcb7c1,0x004af911,0x0010aae2,0x00c66bd7,0x011df30a,0xffd0c5f1,0xff8da5f9,0x004157f4,0xffe9a139,0x005615c5,
-0x0021e25a,0x000efc97,0x000187e3,0xffe83d8a,0xff885b2b,0x0001085f,0x00cf153b,0x0191116c,0x01a65478,0x01e86cf0,0x0389fef0,0x037ed4e8,0x033595b0,0x01df4548,0x0022766e,0xfead1732,0xfde5f594,0xfda7d56c,0xfd2b61d8,0xfe402b14,0xfecccdc4,0xffb1a162,0xff838471,0xffc83c50,0xffeb9f16,
-0xffda62c8,0xffeffad4,0xff70c522,0xfedf1950,0xffb89606,0x00dd1946,0x0018fd0d,0x00174d5a,0x0064edaf,0xffff85a0,0xffe21c98,0xfff4c70d,0x001ec8ea,0x005b3a17,0x00fd348f,0x01113134,0x0192b07c,0x02025d54,0x01bcffb4,0xfeca25c8,0xfe952ab6,0xff8e1816,0xffb7ab08,0x00dcb9b8,0x01f5d5ac,
-0x02f6a0b4,0x0344f9d8,0x02050a30,0x0052abf9,0xfe077584,0xfd9a756c,0xfd9bb1c8,0xfe7e126c,0xfedb1518,0xff35ef58,0xff0b34c9,0xff3b4e28,0xffb5726e,0xffc62ed3,0xff89baac,0x006f090b,0x00d42023,0x00677bb7,0x00422b67,0x0027e74a,0x00b655cc,0x010fb78a,0x009181c6,0x00e62cef,0x00cc08aa,
-0x00eb9857,0x00983255,0x00623900,0x0068109f,0xff9dc2ca,0xff951bce,0x00045062,0x011347b2,0x00bda297,0x00d0c87e,0x00db573b,0x01759eb6,0x0281d9f8,0x021510a8,0x0234f024,0x026d7ecc,0x01b4ba16,0x0112e4f8,0x00ccb760,0x00b354e0,0x00dc7cbe,0x014ba37c,0x014e7478,0x0121c006,0x0094f713,
-0x00704972,0x00503842,0xffe372b4,0x005c498f,0x00c1aba0,0x00ce187b,0x00a0b530,0x0056757d,0x00443bc9,0x003464fc,0x0036530c,0x006fd365,0x0085e4a4,0x00a60f7c,0x00b147d3,0x009972f2,0xff862fab,0xffe8ef82,0x0041f1bc,0xffe4fd61,0x0002d54a,0x002e2d1a,0x00551980,0x00841ff0,0x005b7a2c,
-0x00359044,0x000d4668,0x00116600,0x002aa104,0x0024c521,0x0032326c,0x0020973b,0x00262434,0x0023316d,0x009afe34,0x00343968,0xffa5cdfe,0x00452843,0x009af609,0x007e37d5,0x002fb111,0x003a641d,0x00263041,0x0094b43d,0x003876f9,0x00a58b7e,0x006379c8,0x008f6f61,0x005988c5,0x000e197a,
-0xffc3bc8f,0xffe2ae5b,0xffcd4987,0x007e1b4c,0x00b1a779,0x00be93b5,0x00d69ddf,0x00e6c2fd,0x00f8b849,0x010738da,0x0101323c,0x010482b8,0x0100623e,0x00f578c0,0x00d38cd2,0x00a9253e,0x00a6f2e0,0x00a86fbe,0x00adf51c,0x00a1b0ee,0x00a36733,0x009f36f0,0xffdc5e83,0x005ccbb7,0x00237833,
-0x00295b90,0x00101a83,0x003f32aa,0x006273c1,0x002cc4a6,0xffeef4da,0x0042dcf3,0x00706f75,0x00376aea,0x00514a03,0x002c3705,0x0031a25a,0x00882d48,0xfff5e390,0x00f85bef,0x00cb628d,0x00d5616b,0x00deb6f5,0x00e25038,0x00e93758,0x00f74b2b,0x00ecde58,0x00e30304,0x00d9661e,0x00cf198e,
-0x00cdb6e7,0x00cc4574,0x00ceca86,0x00cb3a31,0x00c9563a,0x00ca45bb,0x00bd4185,0x00fa25e1,0xfffe3dbd,0xff79bcc9,0xff80808f,0x0023f41f,0xff6f39f5,0xff7d4ff9,0xff6fd049,0xff7fbc4e,0xffa4d450,0xff7d80de,0xff7d82d3,0xff885f9c,0xff863696,0x002a25f3,0xffb25f0b,0xff7de029,0x01040652,
-0x0032262f,0x0193a406,0xffd10a9e,0x001bbcee,0x00227cb3,0x003e41c8,0x00469230,0x004ba1aa,0x004390c9,0x00442a42,0x003c4b5e,0x002a23ac,0x002d96e4,0x002a682d,0x0027b2ec,0x001f4caa,0x001cc059,0x001ae4ca,0x0025f36a,0x002d953b,0xffe7ce8d,0x01a61542,0x01cfbfa8,0x00967f6b,0x016f5862,
-0x01d1bd02,0x00a4439f,0x00c10fad,0x00c2c47b,0x00942d97,0x00eed9d6,0x010284ca,0x01022294,0x01cd724e,0x014f3bd8,0x00845be7,0x01d78110,0x0154da98,0x004ebce0,0xffdd1bcc,0x003ddc4d,0x00773235,0x00bceeba,0x00d000a5,0x009622bd,0x008cc35a,0x005efb65,0x00225eb9,0x001db203,0x001308cc,
-0x001a00a8,0x0019c180,0x00262577,0x001f85b1,0x00483f00,0x00124d30,0x00a8287c,0x016cc5ba,0x00b67a47,0x012c04aa,0x00cd34cd,0x00d6eee5,0x00ca80fc,0x007cc11b,0x00b99cd8,0x01045b56,0x00ad0924,0x00679ac7,0x00b36ac7,0x00bdb9e2,0x00db9ff6,0x00b79cb9,0x005f9d2a,0x0106584c,0x004ceb06,
-0xff69387c,0xffe87557,0x000bcc3e,0x00d4178b,0x012d7216,0x00b5285f,0x00e504c5,0x009d064a,0x00196ec1,0x003a38b7,0x0016660c,0x00178529,0xffe93c79,0xffedc527,0xffed3ac1,0x00266e40,0xffe90bc7,0x00e0e0bb,0x018643d2,0x0121e086,0x00fb775f,0x00e5e2b8,0x011a4b5e,0x00930ba3,0x00832c5f,
-0xffc5ff6a,0x00a020c6,0x0002b161,0x00cd4aab,0x00ae98fb,0x00dcb10f,0x00c3ae3c,0x00789ef2,0x00979f63,0x004cd5ce,0x0014a9fd,0xff596bd9,0xffe0255d,0x0041b88a,0x01f04266,0x026b6b0c,0x017449dc,0x0170bab2,0x00bd0790,0xffb8f67d,0xfff4d97e,0xffefe664,0xfff59be1,0x000bfe34,0x0011a52a,
-0x000898c1,0x004a0ea4,0xffdf4fac,0x0108a39c,0x01a14456,0x00b6d201,0x01607a52,0x00a7af84,0x00684708,0x008850c3,0x0038a7f8,0x000e3703,0xffb6b862,0x0021a569,0x003d62f3,0x007e4c37,0x0087ab57,0x0085b888,0xff2f719f,0xffa3c241,0x0287c32c,0xff477015,0xfea804d4,0xfeec1b32,0xfe26e4a6,
-0xfe9ff69e,0xff3b6cb2,0xffa79f8c,0x00a81933,0x00a6899e,0xff9b2ebd,0xff0394db,0xfe6bee72,0xfdd3a938,0xfebdd2d6,0xff57e0d7,0xfecdc924,0xff78e755,0xffa21995,0x015a9cca,0x01b4e65c,0x0062e5a5,0x00c6ef93,0x00d6ec98,0x00f6fd01,0x00a0bb9e,0x00217b7a,0xfff391a7,0x0028ed63,0xffbd2572,
-0xffdab085,0x00e107a9,0x006851ff,0x00a131f1,0x00971576,0x02a7916c,0xffaff66d,0xfe70c3ec,0xfef227d4,0x008409c8,0x00fd7e01,0x0178b7b8,0x013cf84c,0x0062fcaa,0x00e0c018,0x00864ded,0xff0eebe6,0xff27ccf6,0xff7f93ca,0x0074d3ce,0x01208154,0x0170a496,0x013a19b2,0x01342a1a,0x008c76b8,
-0x0087eb3a,0x00945298,0x00c2b60e,0x0186dcb0,0x00226fd9,0xffdb20d1,0x00085b99,0xffef3e92,0xfffa6faf,0xffde573e,0xffb3d5c0,0xffae84ab,0xff691386,0xff7e45a7,0xffe9526b,0x0138ef6a,0xff7b3eba,0x00acca70,0xfe4dfc3c,0xfca0df10,0xfce4443c,0xfe50a488,0x0027ccfc,0x0162a8ce,0x008f5e56,
-0xffe19e44,0xff002cb1,0xfe367b3c,0xff137681,0xfffc7828,0x01740da0,0x00b926b3,0x008ad028,0x003ee5c6,0x007fedc5,0x000b292e,0x00873a7c,0x011a6024,0x00beb2d8,0x01819ae4,0x005e47d0,0xffe14ff3,0x0030bf0b,0xffd33714,0x001728ef,0xfff79064,0x0016712c,0x002d28c9,0x0063e62d,0x001a5559,
-0xffa6dbfa,0x00afb41e,0x00ad56f5,0x02985848,0x03f3aca0,0x06cb29b0,0x07a748d8,0x06198d00,0x036ce0e8,0x012d8ea2,0xfe8b3b7a,0x00f50550,0x011e8284,0x000666b9,0xff9018cf,0xffab784a,0x00e521d1,0x011002bc,0x011001c4,0x00041a4f,0x00020cac,0xff9b857b,0xffcc118e,0x003ff01f,0x0066ba5a,
-0x00da9df3,0x005a8ec4,0x00591a6c,0x008597ce,0xffe3ea1d,0x001075ab,0x00120b40,0x0042f04a,0x005fbf73,0x007f6f34,0x0116cd66,0x01c4a65c,0x023b478c,0x0215ea5c,0x015e607c,0x0277b658,0x02ace794,0x03126450,0x03bb1a40,0x04b73460,0x04c7f708,0x03a54e7c,0x02d7c46c,0x01a874da,0x012746e4,
-0xff64461f,0xfeb0944e,0xff65a5cd,0xff260cc9,0xff76c332,0xff5eadfe,0x00093b84,0x00296eed,0x0037cec7,0x00a433eb,0x00989f92,0x00dac42b,0x00610da1,0x003483a5,0x0037330c,0x00d8a7a9,0x00f037bd,0x00e3dd17,0x00f826db,0x014407ce,0x01a4db5c,0x0139dd14,0x011a673a,0x0145913c,0x01c6c8b2,
-0x01b8d77e,0x02470f70,0x01ec6d92,0x01aeff5c,0x00d03b13,0x006e3522,0x0096a1de,0x017165de,0x01a83ace,0x01cbbcb8,0x01c8e15e,0x01aa0988,0x018dea96,0x012cd05c,0x015f93de,0x01150546,0x007b3519,0x007a4441,0x006f3fdc,0x0082ffc8,0x008d8f45,0x008c2e35,0x010571de,0x00e4f6b1,0x00d67fe3,
-0x00d02669,0x00a5aaf7,0x0066ac84,0xffe47f51,0x0023e0f6,0x004d8aa5,0x00a560f5,0x00acde12,0x0116e6a0,0x017209ee,0x01e9861e,0x01128200,0x0081df86,0x002bc8d1,0x0048ac59,0x0040a402,0x008a3040,0x00a02b22,0x00a7489d,0x00b8b7ac,0x00d66177,0x00f26761,0x00abc90e,0x00754d60,0x003fbd62,
-0x0061afc5,0x007c20fc,0x0093f36a,0x00b249d4,0x009af652,0x00e9216b,0x011e9d3a,0x00f8b22c,0x00e5255d,0x00a453ed,0x007a01a1,0x00414d57,0x0073289d,0x00825150,0x00f77910,0x00cbfa3c,0x0101a596,0x00fee156,0x01153510,0x0136f302,0x0156907c,0x0112278c,0x00c5b08a,0x00dd9ead,0x00cd0ecb,
-0x00ead5cf,0x00e2eeaf,0x00dcb835,0x00da252c,0x00e8fa85,0x00bf8f78,0x008fd833,0x006bd738,0x004f6621,0x0042677c,0x0038bd55,0x00341e4a,0x002e77ad,0x0027ceec,0x002e91a7,0x00258a4f,0x003fcf4a,0x0095e771,0x006d9266,0x00b63c86,0x00aa1604,0x00e41a2f,0x00f30416,0x00cd6cd1,0x00ed142a,
-0x00f82da6,0x00b8cbe3,0x008bba73,0x009a6bc0,0x009ffbf7,0x00a9e2b8,0x00c324c9,0x00a341ee,0x016c0eb6,0x008a30ea,0x009db5d7,0x00a37acc,0x00a6715a,0x00af21e3,0x00b372c7,0x00bb82ca,0x00a390d0,0x00984818,0x008a455d,0x008054d3,0x0072e25b,0x00628726,0x006bd3a8,0x0072311d,0x0076cb58,
-0x007ca122,0x0082ddde,0x0061419c,0x0144f870,0x01798512,0x00df55df,0x0145f5ca,0x0194de88,0x00f50aa1,0x00ff78cc,0x00f8f309,0x00e3bee5,0x0105892e,0x0106b066,0x00fe6b53,0x017ea96a,0x014653dc,0x00c80f3e,0x017d4bc6,0x00bc7944,0xff1ac093,0xfe700792,0xff3bdf47,0xff27e10e,0xff08e546,
-0xff1d3bae,0xfee282da,0xfeda0b1c,0xfef34fb8,0xfef7d536,0xff03b1a5,0xff11ba4d,0xff1636f6,0xff149ccc,0xff071087,0xff159c27,0xff180de2,0xff150b91,0xff16ddad,0xff35bbeb,0xff3c7b01,0xfe7edf8e,0xff0ae12e,0x0107118e,0xfe7db1c4,0xfef18e32,0x00c63f5d,0x0098f083,0x008caab3,0x00913817,
-0x006ca8f7,0x00686dd5,0x00649ba6,0xfef04ce2,0xfe77048c,0x00bc46bf,0xfeefcc7e,0xff68bc2d,0xfeddb5d0,0xff284231,0xfed5d1f2,0xfefd482a,0xfe42e95a,0xfe1149f8,0xfe5c7798,0xfe6ba46e,0xfe93161c,0xfeb4ecd4,0xfed8f118,0xfee04c32,0xfeb7bed0,0xfece3d46,0xfec848aa,0xfec6b782,0xfecc5054,
-0xff1f6c36,0xfeeeb1fa,0xffcb60cc,0xff7c5b9f,0xff2f9cbb,0xff9c8a01,0xff90b74b,0xff22b251,0xff277fd4,0xfecf0a2c,0xfed6ba90,0xff008b90,0xff589c15,0xff75917c,0xff786dbc,0xff8dbcd0,0xff03f4ff,0xff1277d7,0xfecaef02,0xff1af4fd,0xfefa87b6,0xfe7dbfe6,0xff01f632,0xfd9baa28,0xfd2bfda4,
-0xfdafa8a8,0xfdc9a740,0xfe17923a,0xfe5c67ca,0xfe90bc06,0xfe8b5a9a,0xfe399e80,0xfe84b362,0xfe8e263c,0xfe827572,0xfeb222f0,0xff0e2cf1,0xff5f647e,0xff674a18,0xffc39c7d,0xfff0a5d6,0xffefbd05,0xffe1fd96,0xffb324be,0xff8fb232,0xff8093b9,0xff3e64ba,0xffd960f2,0xffd5c146,0xffdf757d,
-0x0008696b,0xffdb4e76,0xff3690f3,0xff2ea60e,0xff3ce661,0xffacdd87,0xff781610,0xfed157a4,0xff6966bb,0xfcffdfe4,0xfbedf8d8,0xfc9bd94c,0xfcc4f3c4,0xfd3ebb64,0xfdbaade8,0xfe2bd984,0xfe2daabe,0xfdb362a4,0xfdef3fb8,0xfdeccc14,0xfdf949a8,0xfe3e608e,0xff1ea0ef,0xff9ec039,0x0037aabe,
-0x00b5862c,0x009a897f,0x007f452d,0x008cafb2,0x00b2c325,0x002ea274,0xffffb964,0xfffffda4,0x0002d881,0x0069d4ef,0x00a7f779,0x009bdd32,0x00274ef8,0xff687a94,0xff641b37,0xfe724a2a,0xfc8a02a4,0xfce8b9f4,0xfc6cdc34,0xfc980e74,0xfc536b5c,0xfcd79e3c,0xfde19adc,0xfed7b3f6,0xff98851a,
-0xffa61f57,0xffa7f694,0xff9a5807,0xff25fd70,0xff26b837,0xff3df091,0x000092b8,0xff6428eb,0xff2a8edd,0xfed808e6,0xffae36cf,0x0037325d,0x001aca7d,0x00a230c0,0x009ad347,0x0071b73e,0x000b0c65,0xffd3e2d9,0x00029b5e,0xff7fe95c,0xffaf6c38,0x00414e84,0x00226a46,0xffe6319c,0xff7a33de,
-0xff719208,0xfdde8fa8,0xfe0cc6fc,0x0073f749,0x0021d36e,0xfffe58c6,0xfea807a2,0xfe448338,0xfe5f827c,0xff6c0d3d,0xff94806b,0xfecc4bfa,0xfeb3857a,0xfe7486ae,0xfdfd3298,0xfedd9512,0xfece0e7a,0xfde568bc,0xfe4a1fda,0xff04aef1,0xff789030,0x000eef45,0x004d9297,0x00aec3a0,0xfff204c8,
-0xffb3770a,0xffe90d81,0xfff2ae79,0xfffdddf0,0xffa91c56,0xff9e3781,0xff7be1a7,0xff1ea989,0xff17ead6,0xff684779,0x00266739,0xfec12cb6,0xff3901d7,0xfcb4417c,0xfb03d540,0xf9e1df50,0xf8cfaee8,0xf93fc418,0xfa42cfd0,0xfb1559a0,0xfdf73014,0xfebfcdea,0xfe02127e,0xfd81b76c,0xfd1e7b7c,
-0xfd61c160,0xfe43060c,0xff32b507,0xffce2a81,0x000cfc1c,0x0031248d,0xff93f05a,0xffe85426,0x005b4042,0x0085496c,0xffb2b46b,0xff97590e,0xfff59c99,0xffae6520,0xffe76a96,0xffc44454,0xfff4c7eb,0xfff74d78,0x00085efc,0xff8387ad,0xff535e67,0xff57fd1d,0xffaa77d3,0x033104e8,0x03c072e0,
-0x02015920,0xff705e96,0xfc028ba4,0xfad1f7f0,0xfb303580,0xfd6cef1c,0xfe63b36e,0xfe498bd6,0xfcf247e4,0xfc53f294,0xfcbbac18,0xfe7d3e78,0xfef25bec,0xff334100,0xfec46422,0xff0cb582,0xff7bf70c,0xff801333,0x0019d7b9,0x004f2158,0x0074c3d7,0x002c7083,0x0018a24f,0x002de377,0xffffdaca,
-0xffea61a8,0xffeb7a6b,0x0030e8f0,0x005ca715,0x004f1791,0x0108902c,0x0186820e,0x0254d950,0x029c8470,0x00659322,0xfe0cde6a,0xfc397568,0xfd0f817c,0xfec011be,0xff196e64,0xff57df09,0xff4c4288,0xfe78f040,0xfd823520,0xfc614c00,0xfbd14c30,0xfbcfedc8,0xfc8c8378,0xfd6b5614,0xfe5d6ce8,
-0xff273871,0xff739cf3,0xff7f7098,0xff7184a8,0xffb9eec4,0xffef4b67,0x00ac62cd,0x0025f1ac,0x0005c64b,0x0011dac8,0x007f3e4d,0x00a92c8b,0x0056aebf,0x0088e5db,0x00a2f1ce,0x00be35e8,0x00af4cd0,0x00a7b8ee,0x010abff4,0xffc32797,0x014c4d34,0xff99242f,0xff5d5565,0xff5f4a29,0xff2657e2,
-0xff71d426,0xffc81b94,0xfff6e8da,0x014f6f92,0x01e94708,0x01f4be20,0x015573ec,0x00792923,0xff575b53,0xff60e3c7,0xff2ce942,0xff0b31cb,0xff652792,0xffc3c0d5,0x004778d9,0x0061d256,0x00284d54,0x003b257e,0x003c65d1,0x007c03f6,0x00752eb8,0x004f8cc3,0x001d9787,0x0018e54f,0x000a955f,
-0x00160513,0x0051ca2f,0x0058797b,0x003f40a9,0x008a0e13,0x0033df6e,0xffad348f,0xffcca551,0xffc16399,0xff7eebc5,0xff50cb9a,0xff4097da,0xff269b3a,0xfef099bc,0xff2a01af,0xff63763f,0xffcaad3d,0xfff4b9b9,0x003e6089,0x007a7930,0x00a5778d,0x00c7750c,0x00f4e691,0x00bf5a93,0x0085d4b5,
-0x002982aa,0x0043baca,0x008fbaab,0x00af24a6,0x008a3ac9,0x006a513f,0x0051df1f,0x0074ecec,0x00790cba,0x006ef13d,0x009dc17f,0x00a54516,0x009ec68d,0x0088035e,0x007017a2,0x0071e1d0,0x00168181,0x00b3d127,0xffe7935d,0xfff92544,0xffdda716,0xffd5ddaa,0xffc2e2bc,0xffbcef9e,0xffb125aa,
-0xffe48d68,0x0005ad4c,0x001e67f0,0x00309eaf,0x00385afd,0x0037218f,0x003a5e17,0x00430f93,0x00594a4e,0x005e8fdc,0x009c629d,0x008bb1bc,0x003fd383,0x0010b455,0xffc1f2d5,0x00027589,0xffdbb8d4,0xff9d1183,0xffab4b4c,0xff8a8a78,0xffa4b738,0xffae6f5d,0xffd309de,0xfffcc77e,0xfffcb399,
-0x002aba72,0x000e6ec2,0xffff527a,0xff949dac,0xffc38afd,0xffdbb9be,0xffcdf9f9,0xffcfe8d3,0xffcaff60,0xffc6978a,0xffb93275,0xffc7b2c1,0xffcf24fb,0xffd884ab,0xffe5759f,0xfff31671,0x0000e83e,0x000ac9a9,0x0010d2f2,0x0015ff94,0x001d8365,0x00228a0a,0x004043f1,0xffb77eff,0xfff5133c,
-0x010bcf88,0xff80f2f3,0xffc6d507,0x010d12b2,0x01039af6,0x00ffb1a9,0x01005162,0x00ec2fd7,0x00e5b939,0x00e02648,0xffeb65d9,0xff793602,0x011dcf2e,0xfffdaec5,0xffcb1010,0x0137f82c,0x010c429a,0x0159daee,0x00f13489,0x01146f5a,0x01040f6e,0x0147b5f4,0x015d3092,0x0158ad7c,0x0158d0de,
-0x01543950,0x0148cfec,0x014b0bb4,0x0146763c,0x01396152,0x013e67f8,0x013bb0e4,0x0134c58a,0x0137f8d4,0x0111c1a0,0x0159ea60,0x010d5ca8,0x0015c94b,0xfe0c0866,0x0162821e,0x003bdc4c,0xfe2f56d8,0xfe39eaa2,0xfe40b880,0xfe5a17a8,0xfe6e712c,0xfe7c2a44,0xfe8f5be0,0x0049b73c,0x017dbd60,
-0xfe18087a,0x00028ec3,0xff938574,0x018626fe,0x00e00f46,0x00f09dc8,0x00e650e2,0x018d9082,0x01ce8878,0x01bfcc80,0x01c33ae2,0x01b1f960,0x0198591a,0x019ae010,0x01927ff4,0x0173e43a,0x018c3492,0x018e53de,0x0183475a,0x017ba00c,0x01509b5c,0x017428e2,0xffa4091c,0x00dc341a,0x010da814,
-0x00b5e449,0x0088f192,0x00e9f79f,0x00d144e9,0x00fc4dcd,0x00b1535c,0x01186400,0x0114c78e,0x00bdc6db,0x01055410,0x0088e719,0x006aad7c,0x01320678,0x00d28552,0x012edf20,0x00ce3141,0x00d39af5,0x00a01b26,0x01d0d406,0x026af75c,0x025b6ee4,0x027758a4,0x025e2594,0x02274ea0,0x022e1c20,
-0x02108354,0x01d32e48,0x01e8c0ce,0x01de846e,0x01c25118,0x019895aa,0x01880378,0x010dc98c,0x00c934dc,0x00d09776,0x00d76f9a,0x010f9344,0x00ac5207,0x00ab1ac5,0x00005354,0x00545d37,0x0013ea9e,0x0066e1e4,0x0073e3d0,0x0096960e,0x00bb8eda,0x00b7023d,0x0004d14b,0x00e52a03,0x010a0112,
-0x0190d538,0x00a8fba0,0x007e9e58,0x003f808f,0x01f03748,0x02e89674,0x02e8e964,0x02fe8c34,0x02d8aadc,0x0273da8c,0x02883490,0x028d9ee8,0x0245741c,0x0289a484,0x0281fd84,0x025365e0,0x02242240,0x01b2fe68,0x016165fe,0x00b71512,0x0119f33e,0x00d3d242,0x01243fa6,0x00ec0939,0x00afd444,
-0x0043ba6c,0xffd54127,0xffe45144,0x002af468,0x0097fd29,0x00a2e80e,0x00eef202,0x00ed0524,0xffe5811f,0x0134f188,0xffe5b0fb,0x005ae310,0x00d1c315,0x00c86373,0x011be0fe,0x01ae57ba,0x0214d1fc,0x02bd4c90,0x025216fc,0x0245c860,0x027e3374,0x01c23284,0x01174df0,0xffe8cf2f,0x00895784,
-0x00c3fefc,0x00c1c854,0x00e8d754,0x0173dbfa,0x017eb2cc,0x00b8043a,0x0102b926,0x00a7c3d7,0x0118487e,0x00f7b085,0x0065800f,0x002116dd,0xffe6dca6,0xfff33feb,0xffc2dbe9,0xffdcc1f4,0x0059e9bd,0x00a7b8a0,0x009a2f4e,0x0030415d,0x008396a1,0xffd9ca4d,0x0023aca8,0x00abb2e6,0x00c8b1f1,
-0x006401cc,0x00f184d8,0x00f837ba,0x0026cfbb,0x00f275f9,0x00cec3d6,0x00758bc1,0xff897a8b,0xff5bdd0a,0xff96dd87,0x00c1a91f,0x01d9b2ca,0x02cd65e0,0x023f7378,0x01c68d48,0x00e30712,0x005e77aa,0x00ab9661,0x0126f0fc,0x00569593,0x0013ff79,0x001659df,0x000f4362,0x0016ce40,0xffba54aa,
-0xffd10d90,0xffae64a6,0xff739e75,0xff77eb4f,0x002e2654,0x00b6433c,0x0086ace0,0xfe3e791a,0xfd55653c,0xfc46c048,0xfd501720,0x025d80cc,0x033c6c2c,0x0433efe8,0x04150510,0x02f4c1d0,0x01cf4138,0x01772e8c,0x01f1fb60,0x026ce5d4,0x029051bc,0x0282cbfc,0x01c2b726,0x0062ddf9,0x003beedd,
-0x00659735,0x00d40d4f,0x01292dac,0x00e649b0,0x00955ed4,0x00354fe9,0x00029f91,0xfff2cded,0xffd5e1ae,0x0000aafa,0xffe5637f,0x001e32cf,0x001489f4,0x001fad99,0xffae5588,0xff645bfd,0xff2255a0,0xff188b06,0x039a6270,0x0437c1f8,0x05960a50,0x05e113c0,0x07328140,0x02f14ca0,0x00cfd588,
-0x0016f1a7,0x0052dcc7,0x003e6974,0xfff68e88,0xff496a32,0xff2eef04,0xff99278f,0x00bb2f7f,0x01865e50,0x018d485c,0x01b711b4,0x013bf926,0x004d4a2c,0x005bb4b6,0x00c635d7,0x009b12c0,0x0054f488,0x003118ca,0x00233f97,0x00174722,0x002715e7,0x000578be,0x0036d382,0x0065285b,0x006e9785,
-0x011ecd54,0x021c6c94,0x0279883c,0x03207334,0x0029e45e,0x02980904,0x058559e0,0x05f3c610,0x06c84320,0x066784e8,0x058ac3d8,0x03d40cb4,0x01ea7820,0x00c40365,0x00acd514,0xfff075ce,0xffb37d9c,0xff974837,0xff3ce47f,0xff06b7b4,0xff5b64ec,0xff220a98,0xff69ae36,0x00116c53,0x005f43ca,
-0x00a3318a,0x00808e02,0x001beadf,0x0027263c,0x00898c94,0x007fd6d3,0x00a00556,0x009d87e4,0x00e823d5,0x00fd28f7,0x010ad17c,0x00f7abeb,0x00fc5b30,0x00e07ffc,0x01b8c314,0xfffc7ae4,0x01b7170c,0x022d41f0,0x01b1ab92,0x01b8e3fe,0x01e04c74,0x0257b9d0,0x034873f0,0x02b7d590,0x02281b84,
-0x01870b02,0x01a0fd62,0x017648ac,0x00e68506,0x00ddb5c3,0x00a57365,0x000b17fb,0x002d774e,0x002151e1,0xffe330d1,0x00218a71,0x0071b682,0x00f14a26,0x00fceb75,0x00cf9147,0x00826690,0x006f9ac0,0x005a6225,0x00899e0e,0x008af4dd,0x00992f80,0x00b98f6b,0x00a5129e,0x00f4a682,0x00ecace2,
-0x0184b2d2,0x012bb444,0x015650da,0x01611636,0x013d71a8,0x01348054,0x015bcaec,0x015f56c4,0x01655284,0x017800e8,0x01b6f516,0x01e5474c,0x019f67e0,0x0159cc58,0x010f0c04,0x011d4cd4,0x0124f200,0x012ddbf8,0x01385194,0x0141f3c4,0x01240ace,0x00ef1fd6,0x00d8e36a,0x00cfe77c,0x00c2a13c,
-0x008db9a4,0x00ac37b4,0x00863120,0x00f81114,0x00babcbf,0x00e9b81a,0x00c64a9f,0x00f555f3,0x00f80177,0x00fffa67,0x00e7be49,0x011b4edc,0xffaf6304,0x00bc0699,0x00d0b1d8,0x010416ee,0x012a13a8,0x0152a51a,0x0181b4fa,0x01b6f9b6,0x01813508,0x013b5572,0x010474f8,0x00c5ee13,0x009d66e5,
-0x006d73ed,0x008be7cc,0x009fa2f0,0x00bb9e4f,0x00cbf255,0x00d8643b,0x011fdde6,0x00874f21,0x00f67ccc,0x010a4412,0x00c16353,0x00b2e9e9,0x00ea6bc1,0x00e7953b,0x00eb5a80,0x00a624a1,0x00d21667,0x00b3871c,0x00830ca5,0x008c55c6,0x005463bd,0x00740e77,0x00a9ec0f,0x00cb9563,0x00e79f54,
-0x00cb9247,0x00e720f4,0x00f2751a,0x00ff0ec8,0x0106feb0,0x011d7c3e,0x00fc3b63,0x00eeb45c,0x00dd1947,0x00d432fb,0x00c63bf7,0x00aab724,0x00bfcc4a,0x00ca1be7,0x00d2866c,0x00e668b3,0x00e73a58,0x011014f0,0x00f7eae3,0x0074c07c,0xff4bceac,0x01112e38,0x006b87aa,0xff1c199f,0xff2a7a46,
-0xff3c562e,0xff5bb18d,0xff5f9f04,0xff704af9,0xff80aaed,0x00551a56,0x00f8766b,0xff491bca,0x0034dbeb,0x00f2a51d,0xfee111be,0xffaa988a,0xfe963156,0xff16220e,0xfef21f76,0xff0d92f8,0xfec69a24,0xfeb31640,0xfeb8cbf8,0xfeb27b30,0xfebba53a,0xfed00b4e,0xfee0a0b0,0xfee13024,0xfeccb758,
-0xfeccc6ce,0xfecb3920,0xfec80d30,0xfed24c14,0xff00dba4,0xfe8dd6d6,0xffb41be9,0x00d5aacf,0x02709c08,0xff602ab4,0x00b91ff9,0x0234d810,0x022b612c,0x022179ac,0x01eee3f4,0x021d5604,0x02238eb0,0x0209673c,0x00ae3265,0xff294333,0x022971d0,0x00e2527b,0x0146bc76,0xfece6af0,0xff0a8ba0,
-0xff0a1d17,0xff48d011,0xfea97b62,0xfe64f53e,0xfe666678,0xfe3861a4,0xfe4a14ae,0xfe7af6de,0xfeae743c,0xfeb34dc4,0xfe74feac,0xfe6b1984,0xfe5e0fea,0xfe51555e,0xfe876e36,0xfea294c6,0xfebee756,0x012c803a,0xffa4ba40,0xffcbc2a1,0x00137435,0x002edcd9,0xff77e7dc,0xff540205,0xff30b6aa,
-0xff9cd2c5,0xff506c72,0xff572e8e,0xffc27ed0,0xffb400f9,0x003738e3,0xffd5ee6f,0xff2c7a83,0xfff578c3,0xff2aea0e,0xfee7472c,0xff1aeaa0,0xff6fa5b3,0xfe34728a,0xfdb22ab0,0xfdb3dedc,0xfd663aa4,0xfd9f2d64,0xfe0be856,0xfe82d31e,0xfe8d1f1a,0xfe031216,0xfe02c934,0xfdf8ec04,0xfdd9719c,
-0xfe548712,0xfe4d3e46,0xff487007,0x001e4836,0x000cd10d,0x003708e7,0x002e06c8,0x008c8c94,0xffa35e4d,0x000ffd82,0xff34ec8d,0xffd6a13a,0xffd10075,0x006a1e82,0x0005991d,0x00641480,0x0040f134,0xffd8666d,0xffb46db4,0x0098a6b8,0xff74d650,0xff369dc4,0xff99f471,0x0063b888,0xfeba0902,
-0xfdcfd25c,0xfd76bab8,0xfcd76c94,0xfced03a4,0xfd7ad6b0,0xfe3ecf4c,0xfe57af92,0xfd6f9134,0xfd4ffee8,0xfd2d5ab0,0xfd02a7bc,0xfdbc2bb0,0xfe192d6c,0xff0d5314,0x00a252a6,0xfff9a7df,0x00d2b5f8,0x0089a350,0x0086b45d,0x003606d9,0xffeb0b72,0xffd7a0ba,0xff9d5126,0x002203b5,0x00701606,
-0x007931e3,0x00a0740b,0x006f3a3a,0xff9c267a,0xffbb3f87,0xfeefb294,0xfce7fa98,0xfce12be0,0xfd17900c,0xfd0cf37c,0xfc1ebe08,0xfbfbee10,0xfc8b5c54,0xfd03ad1c,0xfdf757a8,0xff22971e,0xfee64c12,0xfeec8742,0xff473f9a,0xff4e4739,0xff46a5f1,0xfea79498,0xfe9121f2,0xfe3094b6,0xff3ec1cc,
-0x00990dff,0xffd518dd,0x00170307,0x009eca05,0x00c04265,0x0060e3f6,0xfff764c0,0xffbb456a,0xffd1efa0,0xff7cb77d,0xff9d8a14,0x00019c60,0x00499ace,0x008eb3b2,0x00397bb6,0xff7f99be,0xffa73177,0xfecd44b4,0xfeecf51e,0xff15fca9,0x00052ec4,0x000f9e1a,0x00372d4a,0x0028d5bf,0x001c45c6,
-0xffe40174,0x0002b36e,0xff4664af,0xff175d0d,0xfec07090,0xfdfe98e4,0xfd70ceac,0xfcceb488,0xfde992c4,0xfe66bf26,0xffc21cb7,0x00ca7c09,0x00993379,0x0095e745,0xffacd09b,0xff87ab21,0xffef94e1,0x000e8937,0x000f9b18,0xff9c8dd8,0xff955b56,0xff967b60,0xff725d58,0xff98bb03,0xff2b558c,
-0xff899d83,0xff2a881e,0xfe2c1992,0xfc7788f0,0xfc36a9dc,0xfc4bb838,0xfbf75650,0xfafa51d0,0xfa217648,0xfa61f7e0,0xfbcef9b0,0xfd2f8f5c,0xfe1da222,0xfc395ca8,0xfb666538,0xfb9ab300,0xfcb3ad94,0xfe34c186,0xff7efcf4,0xff86f829,0xff329a7a,0xff693a73,0x00020110,0xffec11cb,0xffe32749,
-0xffb242b0,0xffd5d778,0xffe215fa,0xffbc2541,0xffcf05f1,0xffcf576a,0x00020355,0xffdfa03b,0xffd17ffc,0xffb72f78,0xff625f5d,0xff6e5eb2,0xfeb40db4,0x03c52850,0x036ef7ac,0x00bec36c,0xfe22875e,0xfacf76f0,0xf9cd4040,0xfaebc308,0xfe0becf0,0xfe4d813a,0xfe9345c2,0xfeecd266,0xfea27e88,
-0xfe8636de,0xfe75d2d8,0xfe43b91c,0xfe27b82c,0xfe757a40,0xfed2ccee,0xff3a7af0,0xff8d38af,0x00edffcd,0x0084e88c,0xffff1b34,0x0007809a,0xffeb7c19,0xffda518c,0xfffac7b6,0x000ec29f,0xffe330af,0x0009643e,0x002f053e,0xffe5f54e,0x00e4b599,0x0144295a,0x0279059c,0x02cb88d4,0x0255b678,
-0x00ac223f,0xfeffe182,0xff9d754d,0x0011e657,0xff5cafda,0xfe4335e6,0xfd2c0980,0xfcdd1fe0,0xfca1a448,0xfc19b004,0xfd7d11d4,0xfdeecb58,0xfd78dfb8,0xfe9490c6,0xfedaf4a6,0xfecdfe34,0xfedbb44e,0xfeb2f242,0xfeeaf0c4,0xfffeb90f,0xffc3eb07,0x00255785,0xfffb403d,0x000809f0,0x00680554,
-0x0048409e,0x002c20f9,0x00566339,0x007a146d,0x00c99002,0x00ecd5c6,0x0100e880,0x0120256a,0x01803468,0x0105774a,0x01ff33fe,0x002a758c,0xff16db9c,0xff5cfb12,0xff3ddd53,0xff7ad893,0xffc0ffbd,0xffb0f33d,0x00e0a98c,0x01468176,0x01020e84,0x0063648c,0xffbdb60e,0xff1f9ac6,0xfeaaef16,
-0xfe8b2416,0xfeac6ab0,0xfee40680,0xff49cb62,0x000868fc,0x003feace,0x0067792e,0x00de2f5a,0x009aa402,0x007a6ee3,0x004d5aa0,0x002b8bf5,0x004910b1,0x0052833e,0x0066eeec,0x0064d0ab,0x00425046,0x006ab6f1,0x0052e72a,0x00829e2f,0x005f1f66,0x009e0969,0x004dbfed,0xffdf4af3,0xffdb8afd,
-0xff8ea740,0xff8ead88,0xff71dd01,0xff3d0984,0xff8b1919,0xffd444bf,0x0052ecb2,0x00899288,0x00c8d8bb,0x010825b2,0x00e82bab,0x00d21868,0x00a89577,0x008986e0,0x003bef98,0x00413966,0x009b37d0,0x0096a492,0x008d9052,0x0087bc68,0x00b882b8,0x0098bda1,0x00e6bca4,0x0096970d,0x00fb3910,
-0x00a55e6b,0x00d7817c,0x00989c85,0x00b709e4,0x00e1684e,0x012acce2,0x00b83860,0x00ffd200,0xffd42591,0xffc447fd,0xffaac1cc,0xff8e5fd5,0xff735ad4,0xff607329,0xff4c779d,0xff995274,0xffcfd98c,0xfffc3237,0x0028fe61,0x00572514,0x008a64c9,0x00940412,0x00a51c1d,0x00b6dc43,0x00cefff8,
-0x00f4a238,0x00e4b32b,0x0122fc5a,0x00924ec1,0x006edeb6,0x008e8a99,0x006f0c26,0x0009a397,0xffe82de3,0xffe28fa4,0x0020a373,0xffd2c359,0xffc9af12,0x000080e6,0xfff5913d,0x00387b54,0x0022157a,0xffd59390,0x0004b999,0xff71cb5c,0xffa6ed53,0xff91cf78,0xff8ef074,0xff84f67d,0xff7a8e99,
-0xff5f59ad,0xff788d5a,0xff892656,0xff9eb38e,0xffb7890a,0xffcd3568,0xffe7346c,0xffe8959b,0xffef8dec,0xfff62c3f,0xfff5471a,0x00005ede,0xffef2375,0x00433f09,0x00d5f14d,0x01a999e8,0xffee3b7f,0x00b4dacb,0x01b04194,0x01ade206,0x019b12f8,0x0174e512,0x018035cc,0x017467fe,0x015f9cc6,
-0x009dfe3b,0xffc37339,0x0177d1c8,0x00b82172,0xff7c0b49,0x0102262c,0xffc9e9e2,0x016aede4,0x00d20a4b,0x00e6915a,0x00cb5bfb,0x00e4df91,0x00f35cff,0x010d8474,0x00fd2b01,0x010081fa,0x010891e2,0x01132328,0x0111afb0,0x00fe804c,0x01092272,0x0106d9aa,0x00ff98c4,0x01030070,0x00e0e88a,
-0x015b4942,0xffbf2f4f,0xfec9cd44,0xfdfcd3cc,0x003a58d9,0xfee3d000,0xfdfdaca4,0xfdeb58cc,0xfdec6098,0xfe23390c,0xfdfc5524,0xfdfe5f94,0xfe0d1bea,0xfef59cca,0x0069890f,0xfdf59aa8,0xfea6c232,0xfeafd5c2,0x011ec2de,0x00f0b5dd,0x00c42fa5,0x00a9f6e4,0x00e17015,0x010bc908,0x0150455a,
-0x012b5f46,0x0132f8ea,0x013f190c,0x015e249a,0x0163174e,0x012f83c0,0x01516f92,0x01471c06,0x01366dec,0x0115cb8c,0x01246d62,0x00db0c18,0xfebb3274,0x006ee4cd,0x004ad62e,0x004210dc,0x0004f0d0,0x0044bac9,0x00628b0f,0x005182b3,0xffd1cfc1,0x008ef8a5,0x00cf75e7,0x0043a2ae,0x00897ada,
-0xffebcfe5,0xffab55bd,0x00ca3194,0xffdaa5d2,0x00b4baef,0x010e8436,0x00a9e40b,0x006caae6,0x009efbf7,0x00edf1db,0x01863b14,0x012691fe,0x014daaec,0x0173b022,0x01bbf4ea,0x01b78ac0,0x013252ee,0x0183f84e,0x01710ee0,0x015bf764,0x012bb8ca,0x016f43dc,0x0063c900,0xffc8d2c2,0x0039dd4e,
-0x007d24e5,0x00aa311f,0x00129967,0x0038e26e,0xff995bfd,0x0069bbba,0xff72dab6,0x007736cd,0x0009da74,0x002d57be,0x005204fa,0x004e9f68,0xff679c2c,0x003ceba0,0x001664dc,0x00c8caad,0x00cdbf76,0x005b1db2,0x00319c38,0x0086d104,0x0107d8f0,0x01eba942,0x016c837a,0x0188ab62,0x01a3aaa4,
-0x021852e8,0x02301e54,0x0168eef8,0x01f69566,0x01ecc4c2,0x01af8010,0x015120f4,0x015f8492,0x0073b8c2,0xff9e0049,0x0103870e,0x00687e1b,0x013470aa,0x010b5f74,0x00867780,0x002e25d2,0xffbff159,0xfff336bc,0x003e3360,0x00ce5efe,0x00836796,0x00e72ec7,0x00759c10,0xff8ab372,0x009271a5,
-0xfd5a02b4,0xff997d3d,0x01afc04a,0x016bc8d8,0x00ac10b9,0x007d609b,0x007d9c64,0x011854b6,0x00ec32a0,0x01a140bc,0x0300c120,0x025c090c,0x01b7ef20,0x00cf8da3,0x0058426a,0x0050725e,0x015a38b0,0x014e3036,0x01fca580,0x0113fc70,0xffbbeee5,0x0105bdce,0x008dee34,0x00e61534,0x00a364b4,
-0x00428ee4,0x00172984,0xffdd70f1,0xffdf438b,0xff8c4e4c,0xffad1777,0xffee23b6,0x00514b46,0x0026c5bf,0x000dc1a9,0xfe83bd70,0x00260bca,0x00ec0848,0x00833b15,0xfface98e,0xfffc1a1b,0x00592171,0x005c11fd,0x00011b9d,0x00660d72,0x005cf496,0x0074798c,0xff5fe9f1,0xff297a0c,0xff98265f,
-0x001f056b,0x00ab3a7e,0x0137be2a,0x0096fd27,0x00cd5e79,0x0024035a,0x00060de8,0x0063e5ff,0x002db099,0x003f67fe,0x002937c9,0x000743c6,0x002735da,0x001726cb,0xffaadc9f,0xffc73231,0xffae3d85,0xffe1a49d,0xff5911db,0xff818c50,0xff7bb636,0x00b8c0fb,0xfd45b494,0xfd0a7ce0,0xfe48fbac,
-0xff754e04,0x0159eaee,0x0159167a,0x01510658,0x0160e07a,0x01c91c7c,0x01d9de06,0x01f11552,0x01cfcb24,0x0194fc22,0x01234fd6,0x00df903c,0x0050ea45,0xffbebcc1,0xffb37148,0x00787334,0x007032c3,0x00a30e9f,0x00a0d6b2,0xff80f2f6,0xffd94f26,0x000dcb4b,0xfff13fe2,0x000eb78b,0x0026398d,
-0xfff9a94c,0x002c3b5e,0xfff7c302,0xffba5054,0xffab4266,0xff9cfe79,0xfebe4738,0xfe4caea2,0x02fb4ea8,0x01de9b0e,0x019521b4,0x009be4c3,0x0107cf1c,0xffff2ddc,0xffb6f662,0xfff8d231,0xfec372ba,0xfe4ad43a,0xfe807e88,0xff1753d5,0xff49063f,0xfee76502,0xffb60b0a,0x003ea76b,0x00dbbd06,
-0x00cd0bfb,0x00c5eb7e,0xffed27c6,0x0026369b,0x008bb4ef,0xffdb3d11,0xfffec06e,0xfff4f749,0xffd97b77,0x000c24cf,0x0009a162,0xffea9f91,0x000ece42,0x00456fa7,0x004c942f,0x00ae97f2,0x017060b4,0x022cccec,0x02d247dc,0x005cd169,0x01ec811e,0x0491b568,0x0494cee0,0x04b22e78,0x03839a40,
-0x0210ef3c,0x003013b6,0xff5c1155,0xff24d3ea,0xff07fd9c,0xffdf9727,0xffdf6826,0xfefe5982,0xff2b1add,0xfee7e712,0xfeb8d198,0xfe9d5c56,0xff208936,0xff7bcc5b,0xff9c976e,0x00412492,0x001900fb,0x001decea,0x0044aef1,0x00a3042a,0x0035c6c4,0x003a528c,0x00243ee9,0x00a417e3,0x00bb676a,
-0x00c7929f,0x00df73e3,0x00f055e2,0x00bf6b03,0x014300aa,0xff555113,0x008dfbb8,0x01777a78,0x01524876,0x01d3ce98,0x02778cd4,0x030cf210,0x03595d70,0x02541b24,0x016fe6a8,0x00944d18,0x004e0203,0xffee0f98,0xff810a34,0xff32859a,0xff6d37e2,0x0020b677,0x002fe575,0x0020fe71,0xffcc98ea,
-0x0025cfb9,0x00715ed2,0x005a1302,0x0093c2a2,0x00916201,0x00776940,0x0089daf0,0x0092d3ec,0x00d62f20,0x00dd6507,0x00c8d7b4,0x00a579b1,0x00945d3f,0x009e4a39,0x005f423e,0x00a2b417,0x00a2790c,0x01159e0e,0x0162f25a,0x012e1c98,0x012b9a6e,0x0137b282,0x014bd648,0x018b8962,0x018a9da4,
-0x01b7b188,0x01ddf1e4,0x01cbd47a,0x01b49dfc,0x019c686a,0x018906e4,0x015f7f3c,0x0141ddbc,0x0125ff8e,0x0166e880,0x011a1ca0,0x007daa21,0x00988cf1,0x00a03d7d,0x00aa41f5,0x008e9e4a,0x00aa66da,0x00877c93,0x00d8ddb9,0x007bc797,0x00a7c6cb,0x0063ce20,0x007a31e0,0x0084432e,0x00835a3d,
-0x006b0c54,0x00b0b3ae,0xff78c42f,0x008a9dd5,0x00a7356e,0x00b4fd2b,0x00d868b4,0x00fc946c,0x01208e0a,0x0138fa5e,0x0132b946,0x012136a8,0x0113ceb6,0x01029494,0x00f4f8f3,0x00de2bb4,0x00f3ea82,0x01084b82,0x0118e502,0x012af356,0x012b9086,0x0156db92,0x00c6b02f,0x01243e92,0x00f3ef4d,
-0x00b3d7da,0x00812c1c,0x009c2a23,0x00acb81d,0x0089c312,0x0043c4a7,0x008f5061,0x00a4f4ca,0x005b5c38,0x006ff78c,0x002905c6,0x00339875,0x008f5011,0x000189e8,0x00e0c691,0x00ae4f85,0x00c56980,0x00cd2e69,0x00cfd5c7,0x00d367d0,0x00df0efa,0x00d8f3eb,0x00d947cb,0x00d805b9,0x00da7ef6,
-0x00dd2ae2,0x00dc7fc2,0x00dbc7b9,0x00d857a0,0x00d6c9f9,0x00d68288,0x00c97970,0x00f4362c,0x00498d86,0xffadcdb9,0xff2ee4ec,0x005f45c9,0xff923e66,0xfef1d51a,0xfeef3cd8,0xfefe52c2,0xff1e6314,0xff039835,0xff054855,0xff15d662,0xff8130be,0x004d7f1a,0xff100ca0,0xff6385ff,0x00c706f4,
-0xffbb9bb7,0x00ff19d9,0xff4823db,0xffcbb029,0xffc60179,0xffdefe39,0xffcc7813,0xffc0de2a,0xffb688f2,0xffa7f6fe,0xffa4ab61,0xff9ea106,0xffbecfef,0xffc5560f,0xffbc8856,0xffae1fe4,0xffa73d6b,0xffa2ce2a,0xffacf43d,0xffc172a3,0xff5880a6,0x01041922,0x01a07170,0x018a956e,0x00bc5e1e,
-0x0194894c,0x016e4448,0x0189a18a,0x018954da,0x0153a10c,0x01a73a8c,0x01b4e552,0x019d7dfa,0x0190ca48,0x008f3306,0x016164e4,0x01b741f2,0x01b6fade,0xffc2f1d4,0xffb9a845,0xffffb942,0x00247d20,0x0020398c,0x000a4531,0xffe4ce9f,0xffa07b0a,0xff855a99,0xff79a839,0xffbbff52,0xffc5f96a,
-0xffa7bf90,0xff833b0a,0xff7a4861,0xff751974,0xffa51900,0xff831ad1,0xffd379a6,0x015f4118,0x0048bbfd,0x00bafd69,0x0093635f,0x00a812c0,0x0043bb79,0x00138da4,0x0035064d,0x0093cf13,0x00407980,0x000c1860,0x00574c95,0x0058a2fe,0x00af8a90,0x008a0f65,0x00114451,0x00dd416d,0xffb7b609,
-0xff73a607,0x0000ecdd,0x00254ec9,0x004bf0b8,0x0021239c,0xffbc10c2,0xff574fbe,0xff3f839b,0xff1cc574,0xffca7b50,0xffe8b1d6,0xffb4e7c7,0xff5f2503,0xff3f16d0,0xff2b6d31,0xff7f79af,0xff42317f,0x0004d14b,0x00d6bdd7,0x00a0e83b,0x00c33522,0x009abe9b,0x00db2075,0x00014a19,0x005d8573,
-0xff94e0ca,0x005888e7,0x000d4e0b,0x00bc9b39,0x00478fe9,0x00ae7a2c,0x00a627a8,0x00409aac,0x006cf51b,0x01258cf0,0xffd49ab2,0xffa6bb67,0x004de905,0x009e26de,0x014a2766,0x0125a19c,0x0075a99b,0xffa11896,0xff1e9739,0xfec3a61a,0xffa9f3bb,0xffe9544e,0xff837056,0xff223cd9,0xfef6f572,
-0xfee0f018,0xff56c967,0xff1330f8,0xffc05fee,0x00c7be96,0x000e31b6,0x010c1d16,0x00aafe0c,0x0082de6d,0xfffb7700,0xffe4302b,0xffc8c23a,0xff7c3801,0x00493481,0x007ae993,0x004902f6,0x0098e64b,0x0075fc49,0xff7ea3d7,0x00503cac,0xffbd16f5,0xff0ea8f2,0xfeca3762,0xff591c39,0xfed79afa,
-0xfe3defb4,0xfdfd62b4,0xfe2faa86,0xfda38c70,0xfe3133a2,0xff75879f,0xff1678ef,0xff2f43b3,0xff44423f,0xfefce43e,0xff002643,0xfe92a884,0xff17abcb,0xff1b36ae,0x00b646ce,0x015870fe,0x003eb2a2,0x00d686b6,0x00b537f5,0x00afbd39,0x003cfe23,0x000c2805,0xffdba084,0xffbe1596,0xff970c79,
-0xffbace95,0x0034f161,0x00603ea9,0x00e4f037,0x01303338,0x000c7ee5,0x01234d60,0xff66b5dd,0xfe2a21aa,0xff1b98fa,0x00555aea,0x01402960,0x0182ee94,0x010569d4,0x008ac1e0,0x00382759,0x0076ac2b,0x0028c26e,0xfff736c0,0xffb6b6d4,0xff7c7dad,0xff5610fd,0xfee80444,0xff80ec28,0xff6b2d23,
-0x00409f1a,0x00d9be6b,0x008fa2d4,0x0033ff42,0xffb90e4a,0xffb902cf,0xffe112fd,0x0006c7da,0x0005c11c,0xffab9583,0xffb1bab5,0xffab1558,0xff8391b0,0xff35b991,0xfed3557c,0xff6ac5e6,0x00067494,0xfdf9c564,0xfdd56b24,0xffd9a93d,0x008e4c49,0x000119a3,0xff7edaf9,0xfe6f06f0,0xfd99be68,
-0xfd3f0960,0xfd880344,0xfe41eaa2,0xfe31f41e,0xfe4ecec4,0xfe3c1c98,0xfe3da0aa,0xfe96189c,0xff24aec9,0xff6a7f87,0xff2d1217,0xffd86257,0x00bd7f18,0x0044ab5f,0xffb012e6,0x00083960,0x003bdcab,0xfffc7336,0x0003d12c,0xfff9a296,0xffe97d5f,0x001d03eb,0xfff68752,0xfff4ca50,0x003b925f,
-0xff9dc269,0xff4ba366,0xfe64216e,0x02a7ecec,0x015f7cbc,0x001d932e,0xff406c96,0xfd4512ec,0xfe7e4948,0xff05794e,0xfe6d1250,0xffd111f4,0x00137749,0x00083e6d,0x000093f8,0xffbdc915,0xff20193a,0xff61dcd0,0xff59cfbc,0xff599428,0xff3b65bb,0xff4709b1,0xffb381b2,0x00f75acb,0x009d2038,
-0xffa0e6ef,0xffe9e8b8,0xffdef821,0xffc2be31,0xffdbaf55,0x000a6d83,0xffe1ea3c,0xfff7c433,0x000e8d31,0xffc1c847,0x005e912b,0x00cba5df,0x01eb9420,0x0231b654,0x03336828,0x03bce104,0x03749da0,0x035e627c,0x022f29d4,0x012cb6d4,0xff769c9d,0xfd9990e4,0xfe39cba4,0xfecc0e78,0xffaa6f44,
-0x003c5ef7,0x0034992d,0xffa8b1a0,0xff57f446,0xff0eef59,0xfebb39ba,0xff147d5c,0xff419dea,0xff598cf0,0x001cfc0e,0xffe71431,0xffe81eaf,0x0029f1f1,0x00403221,0x0087846c,0x003936e0,0xfff4fd7f,0x003818fc,0x0079c653,0x00e62ad2,0x0138efe2,0x015e3e68,0x0186d89e,0x01a95722,0x025b753c,
-0x01ae4862,0x015a823c,0x00e88912,0x015295b4,0x01646f04,0x01b2d7d2,0x019c5b5a,0x011c96c0,0x00d4725c,0x0029b615,0xff71feb8,0xfeea076a,0xfec22114,0xfed6b2d6,0xfedc3660,0xff0251f9,0xff64239d,0xff5b1e91,0xff79a045,0xffe08551,0x00408876,0x0073840a,0x00bf8727,0x0079985e,0x004e8456,
-0x005d8166,0x00834d05,0x00b5567f,0x00890c15,0x00c32484,0x00cc524b,0x00b9a09e,0x00ba8294,0x00c9de56,0x00e06c94,0x0119b03c,0x0139ad8c,0x00cf6977,0x0088d0ce,0x00b919c8,0x00970728,0x00bc1204,0x00ce2838,0x00eab72f,0x011587dc,0x0152eb46,0x01a2b934,0x01854f12,0x01610ab4,0x0148d886,
-0x01207668,0x00f9fa12,0x00cdfe4f,0x00d7c86a,0x00b0de6b,0x00fc3292,0x012cbf52,0x00d30c93,0x009cd540,0x008cb035,0x00b0ad56,0x00721beb,0x00b3cc81,0x00646cfd,0x00d61630,0x007129f1,0x00a1d24a,0x00711eb0,0x00b72bde,0x0103cea0,0x0157a0fe,0x011568fc,0x00e82652,0x008606b1,0x0067e5d3,
-0x006992f8,0x005ae7a2,0x004efa6e,0x00408905,0x00358c07,0x0038a50d,0x0032dbba,0x00347702,0x00449482,0x0067e0fd,0x00962ff6,0x0093aeec,0x0095fb55,0x0087825a,0x008ca570,0x0072b1b4,0x00704791,0x012c4806,0x00b8c027,0x00dc34e6,0x00ca4c82,0x00e8e3fe,0x00c58737,0x00a05ced,0x00b4708c,
-0x00df2463,0x009088f7,0x007493f6,0x008734a1,0x007cf697,0x0091ddbd,0x009d7687,0x006b795d,0x00d7568b,0x003800a4,0x0054171d,0x004e67c2,0x004aa91a,0x0047c9da,0x00432c06,0x0038be84,0x0041a282,0x004b750f,0x00543a97,0x005f452a,0x0063f2fc,0x006db122,0x005f1be0,0x0058b4f3,0x0054f984,
-0x004a8237,0x004f13a2,0x0014162a,0x00cdc2d5,0x01257f6a,0x011725a4,0x00bf4ccf,0x013560de,0x011a7806,0x0121dbca,0x01158582,0x00f212e5,0x010da00c,0x01072cf2,0x00fab787,0x011920fa,0x00b923b5,0x00d76668,0x011dacdc,0x0055e1bb,0xfff65cd9,0xfef0b8dc,0x002843c5,0xfff0f474,0xffedef30,
-0xfff40847,0xffd67658,0xffd10044,0xffe74bf0,0xffd69c0b,0xffd844aa,0xffd6d7b4,0xfff2673d,0xfff92902,0xfff73210,0xfff49ae7,0xfff3e0c2,0xfff34633,0xfff45c89,0xfff69271,0x002ff8e6,0xfef95eec,0xfee6d11c,0xffdd31d9,0xff2996b4,0xfedad97c,0xffa9c255,0xff8c5446,0xff86aea7,0xffa41b46,
-0xff774f4f,0xff720d33,0xff6dcc37,0xfee2d2ba,0xff3bced3,0xffa57b4c,0xfec4c49a,0xff2d573a,0xffc38c1e,0x000f3950,0xffd5e147,0xffe468f2,0xff8dd2e5,0xff7acaa1,0xffbee53d,0xff906587,0xff97cfda,0xff9c18b3,0xffe77e66,0x000912ec,0x0002f60f,0xffece09f,0xffd68078,0xffd97668,0xffc9367c,
-0x0005c995,0xffb7c235,0xff4b1efe,0xffe4cc0c,0xffad17f4,0xffd946d7,0xffb662c0,0xff90da62,0xffad5afc,0xff75957d,0xff46380b,0xffb2b3bc,0xfffcd489,0xffbf8f40,0xffd9bd01,0xffa8cf35,0xff54d213,0xffddacb2,0xff2b99a4,0xff9d49d7,0x001d8989,0xffba2afb,0x0004ca33,0xff412fea,0xff02b33e,
-0xff861997,0xff16f316,0xff2bb002,0xff32eff7,0xffc555e2,0xfff887d6,0xffdfae7e,0xffd43a20,0xffbd889c,0xffc23505,0xffc3ead2,0x001d753e,0xffab5c1b,0xff6cefd8,0xffeb7707,0x0040e920,0x00248628,0xffc8c775,0xffcaab9c,0xff8eee60,0x00004824,0xff623e6b,0x003aa758,0xffe16521,0xffd7034c,
-0x00098b00,0xfffcb157,0xff3d9c14,0xff99fac9,0xfff2bf77,0x00034fc2,0x005cd8c7,0xffd9b692,0x0012fd31,0xfef88154,0xfe7c979e,0xff53b4c7,0xfeb48b0a,0xfeb9bb32,0xfed03200,0xff9501ea,0x000241b7,0xfffbba6c,0xffac6b0a,0xff73e947,0xff73c5b9,0xff72a2b5,0x0005f1ab,0xffac675e,0xffa1056a,
-0x00a5d9f4,0x007b1ac4,0x00bc9c30,0x00b1af49,0x004b5fee,0xffffc535,0xffc1ec50,0xffe9ce83,0x00456ce9,0x00b04d81,0x0066d5e2,0x00a801fc,0x00177ebf,0xff93b644,0x0041d4db,0xfca5af9c,0xfe758fd2,0xffaa4b22,0xffa57da7,0xff3dd584,0xfec1472c,0xfe8503fa,0xfed81a5c,0xfe79143a,0xff208c80,
-0x00cb491e,0x00e637f0,0x00f1373d,0x00c8a4a7,0xffe4b3b2,0xffb9bcc9,0x00c55121,0x00662a00,0x007bf97a,0xffc71fa9,0xff8dfdea,0x0096b368,0x00be12df,0x0092d6f4,0x00452c93,0x0014e7ef,0x001aeedc,0xffeb87b5,0xffc276ea,0xff80fa4b,0xffa542de,0xffdc8b51,0x00187462,0x001796ca,0x00695e54,
-0xfdb77f10,0xffd00b71,0xffc5dc1a,0x0052c4b2,0xff8f8544,0xff6cddce,0xff298736,0xff0e67d6,0xfee0ac80,0xff85faf1,0xffffd2f8,0x003dbfab,0xffe2c088,0xffa136e9,0xfee037d8,0xff3a3217,0xff26fd04,0xfecbdd4a,0xfed9f212,0xff8f995e,0xffa6408a,0x00283851,0x00327900,0xff7e61fa,0xffe682f4,
-0xfff7e645,0xffe1e47c,0x0005cc7f,0xfffb8afc,0xffaa8650,0xffc62e83,0xff90cb78,0xff71ced1,0xfedabdc2,0xfec0f8de,0xfeae9106,0x0016dbf5,0xfe321fd2,0xfeb62f56,0x004b25d9,0x00137e9f,0xfe1f0c20,0xfdaabf0c,0xfd43da34,0xfd1a66e8,0xfed82308,0xff5e4752,0xfef3e6b8,0xff6ab44b,0xff564cb6,
-0xfe9b10c6,0xfed47ffc,0xfef0b132,0xff39a736,0xff67a733,0x0002c491,0xff9a9286,0x00089f30,0x00531c41,0xff34be2e,0xffc27109,0x00256dfe,0xfffb5049,0x000ca982,0x000b5ae2,0xfff586e2,0x000a8fb2,0xffd2e688,0xffcc3b77,0xffd7a2a3,0xffa4369f,0xfeade9b8,0xfe8f0ae4,0x0170be70,0xff90abde,
-0xfcef64a4,0xfb45e670,0xfa4961e0,0xfcc34590,0xfdf5840c,0xfe3ad004,0xfe8a8816,0xfe9853d8,0xfe775dec,0xfe925238,0xfe99797c,0xfe917eec,0xfee29dc2,0xff0679fd,0xff5887ce,0xff2cc29b,0xffaa646a,0xffbf885a,0x002b62ca,0x00560b4e,0xff8f1b6d,0xffb8fdec,0xffb0fdfd,0xff9c8c57,0xffedcf16,
-0xffdb0357,0xffbef91e,0xffe366ab,0xfffc9001,0xffc9df14,0x00005ee3,0x0061ab47,0x015595f6,0x01b787a0,0x01b241e2,0x01952aee,0x01430608,0x00b7ffa5,0xfff12c01,0xfe8641ea,0xfd68a0c0,0xfcc7f0a8,0xfd86225c,0xfe023dc8,0xfe2bd52e,0xfe9f5138,0xff0bb175,0xff511a1d,0xff12bd52,0xff005d6d,
-0xff42a0d0,0xff2ffe8c,0xff6b1824,0xff5293b8,0xff44c1a8,0xffa22432,0xffce0baf,0x0017fff8,0x003a6d95,0x00586cc8,0x001411f8,0xfffeeeb3,0xffdaa542,0x004b70b4,0x007f3e5c,0x00bcc6e1,0x0122b3c8,0x0143c768,0x013e6f10,0x01349a74,0x005591cf,0x000ca3de,0x00cb0b6b,0x0136ef44,0x01f75f4e,
-0x027f52fc,0x02815c78,0x01b221ba,0x00d7382b,0xfff30752,0xff4a10a1,0xfe654bd8,0xfdf05870,0xfdf97500,0xfe49e720,0xfea15be8,0xff356f9e,0xff6e5e17,0xffb9c7e1,0xffdf7673,0x0028ae14,0x003895ef,0xffd4517e,0xffdcd521,0x0002ebbb,0x003144f6,0x00863b73,0x00b06882,0x00d7bdc3,0x00cce68f,
-0x00c554ca,0x00b45cf3,0x00b7433d,0x00993ead,0x007a55c9,0x0063ab76,0x0044295a,0x00b536f4,0x010974c6,0x00e00fc7,0x00e20dff,0x00d9c4fc,0x00f11451,0x012b96e8,0x012f2562,0x0144ae40,0x0167a97c,0x015d8e68,0x014f4d6a,0x012b9b3c,0x0110b8e2,0x00ee5af4,0x00d83635,0x00c528ce,0x00d178fd,
-0x009fcd34,0x006c4fce,0x00733edf,0x00771d86,0x007cd753,0x007122fe,0x006b7fd5,0x005b92c8,0x006a0e91,0x0025f290,0x0053699d,0x002ab17a,0x0032b4b0,0x003e9b58,0x004228ec,0x00462869,0x005e6f3e,0x003b81ba,0x006bc29c,0x0088da2f,0x00874fd1,0x00a3b8f2,0x00b869fe,0x00c89a7b,0x00cc68d3,
-0x00d1a1ce,0x00d7728c,0x00daca28,0x00e09ea7,0x00e5e122,0x00ebb5ca,0x00dc8c0a,0x00d00c08,0x00c0516a,0x00ac000c,0x00a1c325,0x0083d6d3,0x00556adc,0x007a1953,0x004bc8cc,0x00572164,0x003ec448,0x004277ad,0x005aee87,0x003ce155,0x002db5fa,0x005df322,0x008d3414,0x0070af21,0x007960cf,
-0x00614bd7,0x0053ee06,0x008393d0,0xfff83ba5,0x00b0b254,0x00a0a05b,0x00a5e6c8,0x00a8aed6,0x00a73aea,0x00a8f165,0x00acc315,0x00b87395,0x00c1397d,0x00c8d72c,0x00d11cbc,0x00d86daf,0x00e37a5c,0x00d39742,0x00c7eaef,0x00be808a,0x00b22407,0x00a671c4,0x00b2a39b,0x00012539,0xffd22b8d,
-0x0031b273,0x000f62cc,0xffc49785,0x002ab07d,0x001fcc17,0x0022955c,0x0030c7a8,0x00135321,0x000c487b,0x00119951,0xffd6dd06,0x001a81cf,0x003733fb,0xffd481e4,0x00b445b2,0x00b35a32,0x012f5f28,0x008130e0,0x00928495,0x00ab908f,0x00ae7e83,0x00d05b0e,0x00d529a0,0x00c79714,0x00bbbad2,
-0x00b0dc9c,0x0096bea4,0x00b2490d,0x00baaacf,0x00c9dcce,0x00b3a34e,0x00ae83ed,0x00ae5154,0x00b246e2,0x00a1ca75,0x00a0448a,0x013c3940,0x00e37589,0xff89f7b3,0x0142ed98,0x00eb54fe,0xff8c69f8,0xffa6899f,0xffae41c7,0xffaad39f,0xffd78ca2,0xffe1a019,0xffdde85c,0x00f37b38,0x01420066,
-0xff7e5c54,0x00dc063a,0x009594f1,0x00c32957,0x00799701,0x00ba2d42,0x00c5ef5d,0x01377ce8,0x0157988a,0x01301696,0x01043a9a,0x00d1a016,0x0095d95f,0x00c2fdcd,0x00df6784,0x010d9d80,0x00dd5c6d,0x00d74aa8,0x00debf26,0x00e867aa,0x00bbf6b1,0x00f31ebb,0x0074fd35,0x00be6823,0x01148920,
-0x00aba085,0x0099a9e1,0x00bb7288,0x009a3c31,0x00d02ed9,0x00db5970,0x00df8045,0x00b3c9a4,0x00991d4f,0x00b90a4e,0x009d320b,0x00aa48a0,0x00d754bc,0x00df6a9c,0x00717a62,0x00649b66,0x00d21b23,0x00d640af,0x01a04f14,0x01e9f538,0x0182004a,0x01476074,0x00fa7eef,0x0083f3ba,0x010566b4,
-0x01305540,0x018ca8b6,0x01154ffa,0x00fadb19,0x00ffa01a,0x00f7870f,0x00d350b8,0x00bf3f9b,0x00eb9d02,0x00e0a389,0x00f8349c,0x00cff75a,0x009df76f,0x00620e7d,0x0034cf7c,0x00273ebd,0x006e9db7,0x0053c4b8,0x008dc807,0x005c5007,0x009c4596,0x00aa596a,0x00466fd8,0x00b17e6d,0x013c0ca2,
-0x006f5766,0x0035e6f2,0x00c4dd71,0x00ceb64f,0x0243f244,0x02cfc994,0x0262b00c,0x01ec4868,0x013279be,0x0050fba7,0x00e0a936,0x01719ad4,0x021826a4,0x017fe2cc,0x0152abe0,0x01576232,0x014f88de,0x00e34394,0x00c474e6,0x00a72e23,0x009a4136,0x00ffcb1b,0x00d6d306,0x009a5030,0x0023cea3,
-0xfff298fb,0xffb88cc8,0xffb4cb8b,0x005d1100,0x008672a0,0x0036abbb,0x00976810,0x008970a4,0xffe5ac6f,0x00ffa741,0xff3a733d,0x00c093a2,0x00d6794e,0x012df00c,0x00b427e4,0x011684e0,0x010bb410,0x010bd532,0xff87d7f1,0xff7f2b88,0x0118c722,0x00b9a8b6,0x0075cf11,0x0015c739,0x00237b45,
-0x00333f1d,0x000dda08,0x0097a20a,0x00d368c4,0x013785a4,0x00f2f290,0x00c2c1b3,0x0145488e,0x00b87383,0x0071ee7d,0x000c08cc,0x00274dad,0x00045546,0xffba3be4,0xffbeb295,0xffdb53b3,0x0035818e,0x006887b9,0x00c5bfa7,0x0140203e,0xff851cc7,0x0158b67e,0x004bb971,0xff8a6579,0xffbfd78f,
-0xff2deab8,0x00bdf980,0x010e2cec,0x0017d747,0x007b344f,0x0061986f,0xfff9c763,0x0041be65,0x006cb0f5,0x001ebdfb,0x0078b507,0x00d7e11a,0x0159910a,0x012176f4,0x00d528fc,0x00a2da4a,0x009f7e64,0x007888ab,0xfff51446,0xfffe6c56,0x00160209,0xfffdac86,0x0004018f,0xfff21c9e,0xffc3d74d,
-0xffd5d94c,0xffa557a5,0xff7c25e9,0xff2c17c7,0xff394db7,0xff758cee,0x00da7a90,0xfefefba0,0x0000fd76,0x0123ae32,0x020d76e8,0x03332438,0x03541674,0x02f6ff5c,0x0192c450,0x00665c6e,0xff9f40a2,0xffb8c268,0x00ffedaa,0x01878614,0x01233e96,0x00b34f13,0x00141325,0xff8e7a3e,0xff9be69c,
-0xffb381ef,0x00401581,0x00d1d13a,0x008334c8,0xffc8307c,0x002c7bb1,0x005a9124,0x0008ba6a,0x000bfc42,0x00071054,0x00101d1f,0x000dbe60,0xffe03008,0x00006791,0x002cf573,0xffb42207,0xff5a255f,0xff001974,0x00a19b6b,0xff402107,0xfe5c4db8,0xff33ab70,0x00fff314,0x01ea6df2,0x01a18d62,
-0xff729ea4,0x00621b92,0x009d22b0,0x00addc1d,0x0095cdac,0x0071c346,0x0020ca19,0x007a70a4,0x00973e04,0x0078ab45,0x004e297f,0x0025c6ef,0x004c418e,0x00708951,0x006c586a,0xffcc31a3,0xffd8f649,0xffd49dde,0xffbf1874,0xfff096a6,0xfffb4674,0xffbe699a,0xffd21940,0xffcf0781,0xff79cb86,
-0xffbaa7fc,0x00272d66,0x00d5c986,0x00f0d8fc,0x02ef1214,0x050ad928,0x05dda918,0x04f5fd90,0x037dd9a0,0x01b7ceda,0x0078c6d1,0xffc65c91,0x0030d5aa,0x0081fbde,0x01373270,0x00b9e1c6,0x00ce8dae,0x0132f376,0x005b0d2f,0xffd618a4,0xffc45907,0xffb08029,0xffc3a060,0xffef627b,0x000ebdba,
-0x000f1b34,0xffce1f2a,0x0018ad4b,0x0035bc77,0x005009e9,0x00257f6c,0x000cc560,0x003e6469,0x00828165,0x00dcf488,0x0146389a,0x01c154ea,0x01f45b7c,0x01bc1242,0x03159a3c,0x00ed7da4,0x020a8138,0x027ab848,0x02b05610,0x030c4a40,0x0326d964,0x02cd46d8,0x02225f88,0x0078380b,0xff42f097,
-0xfea042c4,0xfe575cc2,0xfe878b16,0xff0a14cb,0xff6f31c4,0xffa1ae38,0xff819bec,0xff9ff524,0xffbdbf5a,0xffd95dff,0x00365843,0x005fc13d,0x005ee5a9,0x002f5ee6,0x0010cdc2,0x00388073,0x009ed5da,0x00dba3e5,0x00db720b,0x00ee8ef3,0x00f7f5e4,0x00ef79b8,0x0109ed3e,0x01499046,0x013101c6,
-0x01aea136,0x0181aa7a,0x0190ae54,0x01b67ac8,0x01e93fac,0x0205e04c,0x022a8cd0,0x02596b18,0x02b8b414,0x02985120,0x02895c90,0x02642570,0x01f11558,0x016cdefc,0x00dd1414,0x00b68de8,0x0093d7a5,0x0068cba1,0x00926a9e,0x008f7930,0x00cdc29b,0x00ee167d,0x00a240af,0x0092c8c8,0x00981adc,
-0x00936bcd,0x00921938,0x00737157,0x0082e66a,0x0084bb72,0x00795398,0x0076c475,0x008383f5,0x00af2392,0x00dcb80d,0x00f6af3c,0x01343ea4,0x00852402,0x013da08e,0x013fd1de,0x0165682c,0x0186698c,0x01ab1070,0x01c53938,0x01e48958,0x019d473e,0x0163e522,0x01372d22,0x011334a4,0x01048fac,
-0x00fb04cf,0x00e7b0a7,0x00cda6ea,0x00aea902,0x0095e915,0x006492ef,0x006140c7,0x008e256f,0x00b794d6,0x00f7401a,0x00d03249,0x00f3c9d6,0x012795a8,0x0124bebe,0x0144129a,0x0134a560,0x0136f8ac,0x01273b52,0x010fc866,0x011479ec,0x00f05cba,0x01042740,0x011f02ce,0x01648322,0x01447386,
-0x01385e2a,0x014ba8b2,0x014f241e,0x01581190,0x015f78bc,0x017441d4,0x0160d216,0x015957ee,0x014cf4b8,0x01431996,0x01346e28,0x0125ae78,0x011b367a,0x01135496,0x010b3bac,0x01027636,0x00fa4dfe,0x00dde90e,0x013733e6,0x011025ca,0x0040448e,0x015ecbf0,0x012d68ae,0x0040b328,0x0049b7fb,
-0x004cc06e,0x00502e94,0x005f5c18,0x0065178a,0x006ce1e8,0x01270bda,0x017aa2e8,0x00399061,0x011628fa,0x015d346e,0xff3e0093,0xff3d7c27,0xff12382c,0xff5b6f63,0xff4652d7,0xff5b2ed8,0xff2d79dc,0xff1fcead,0xff224f35,0xff19d228,0xff1a667b,0xff19bf1d,0xff2c9615,0xff356185,0xff44eb7c,
-0xff32c924,0xff31c8a9,0xff373b15,0xff3b1b86,0xff5ae883,0xff2e5b3a,0xff5931d2,0x000d4ff4,0x01962022,0xff2669e8,0xffe83dd6,0x0152887a,0x01417c8a,0x013af540,0x01301ac0,0x012a48ba,0x0125f356,0x0111c9b4,0xffe1bf0a,0xff0b9c0d,0x01552bf2,0xfffdda1d,0x005f9104,0xfee2e88a,0xff4a4ea0,
-0xff3b4457,0xff649262,0xfef688a8,0xfeca27ea,0xfecca762,0xfea61e30,0xfe9f5d86,0xfea59e9a,0xfed37d3e,0xfef6342c,0xff20b92f,0xfeef4b7c,0xfee3dce2,0xfef164e0,0xff0802f8,0xff3a68c3,0xff291a33,0x0083fc16,0xffc16f7e,0xffb4a062,0xffe21868,0xffe54f37,0xff71d30d,0xff6bb22b,0xff41f46f,
-0xff82a453,0xff63e2a1,0xff7c9481,0xffa7f38f,0xff9295e2,0xffdd90a8,0xffb00846,0xff57683b,0xff65e390,0xfeefece8,0xff3311bd,0xff442054,0xff986f3b,0xfebfe0e4,0xfe6632a4,0xfe584b38,0xfe1731a6,0xfe15cb4c,0xfe1868e4,0xfe82c662,0xfeb8d3d8,0xff033c55,0xfea6dd3a,0xfe9b588a,0xfeb4661e,
-0xfef48d3c,0xff20ffa3,0xff8a089c,0xffeb4253,0x0015c0d9,0x00456cc5,0xfffe17ec,0x00075b58,0xffab9637,0xffdf7a92,0xffa318e9,0xffd8d708,0xfffc9373,0x000db76e,0xffcd334b,0x0001db9f,0xfff9f715,0xffc1dcb1,0xff7a5c18,0xfff248d1,0xfee54d34,0xff3b5e97,0xff75fe17,0xffef020e,0xfeb6b0e8,
-0xfe13cafa,0xfdf217e4,0xfd85fe70,0xfd44f83c,0xfd43ef60,0xfdc6c148,0xfe4ae456,0xfec13564,0xfe228e2a,0xfdf9a5cc,0xfe22b7b0,0xfe8bd816,0xff1a687d,0xff7a34d1,0x004a506b,0x0041c41d,0x00c8fe4d,0x006e2185,0x005e1e34,0x001629bd,0xffd1052f,0xffc81698,0xffdb3c74,0x00468260,0x00679669,
-0x002a1659,0x004deacd,0xfffe0417,0xffd2e1ea,0xffcc1ba2,0xfdcb0324,0xfe5a2e50,0xfe4e7486,0xfe53270e,0xfe711e60,0xfe183d2e,0xfdbfc4ec,0xfd881308,0xfd1a1fe8,0xfdd18cb8,0xffcc8bd6,0xffbb1e31,0xffdba435,0x0039cc3a,0xffcb2a46,0xffaf9d86,0xffa8a82e,0xff7e0683,0xff2575b9,0xff2a98e8,
-0x001ca234,0x002d6fd6,0x00b6e9d4,0x00572185,0x0026639b,0xfffdf737,0x0011d2b6,0xfff8654d,0xffb505a2,0xffa1d5a1,0xffc5217b,0xffe60907,0x001968c0,0x0049c4df,0x009b500d,0xfe3512ce,0x0032b56d,0xff4d44b8,0xffa842f1,0xff3122d7,0xfe99df64,0xfeee79aa,0xff0f0523,0xfecf26b2,0xff148e37,
-0xff178917,0xff19162e,0xff80479a,0xff9e457d,0xff441e40,0xfec94fcc,0xfe2e0bc2,0xfda69864,0xfe4c4866,0xfef8da7a,0xffc3cece,0x00687787,0x002ee878,0xff8f7249,0xffc3516a,0xffeae57b,0xfffd77f3,0x0006080b,0xffea3b4d,0xffbfba11,0xffbc0182,0xff914f70,0xff7c90e0,0xff32b03f,0xfed65c8c,
-0xfef80048,0xffd9d395,0xff6d5ecc,0xffddb789,0x005da658,0xffce74d6,0xfd543a34,0xfca63014,0xfbf04110,0xfb669fa0,0xfcb43d38,0xfda2fa10,0xfe2a3796,0xfdc67770,0xfd539c3c,0xfd37c08c,0xfdac6f24,0xfe742aa2,0xff6cafff,0xff62e09d,0xff6d0c1f,0xff58725d,0xffb13d66,0xffe56c51,0xff814583,
-0xffb5c161,0x000d71e2,0xfffeddd3,0xffe5e186,0xffe7a682,0x0003ca18,0xffeb9cfc,0xffaec1e9,0xffa791c5,0xffdc2c19,0xff95dd55,0xff64db2d,0xff28530e,0xff8bad8b,0xfdee0ccc,0xfa3f7498,0xf91bdd80,0xf8f9b640,0xfaef5d80,0xfcbb3a2c,0xfe6c61e6,0xfe994692,0xfec272b2,0xfedcca8e,0xfee5d8a2,
-0xff12027e,0xff4cd55e,0xfed92f76,0xfe85c7e4,0xfe90ad60,0xfeb17f56,0xff49a6f7,0x000374c9,0x003485d5,0xffed6fee,0xff9f1337,0xffb37098,0xffb9b624,0xffba7928,0xfffd6a93,0xffdfeb91,0xffa0bae8,0xffaa6b96,0xff970eee,0xff1c8e18,0xff569242,0xff432c69,0x002340d6,0xfff70c0c,0x033ab0ec,
-0x01eb9772,0xff80fa06,0xfe8bd368,0xfd6f09f8,0xfbc5f0a0,0xfb5a6c68,0xfc63b890,0xfd38e124,0xfd9d7e28,0xfd687450,0xfdaff8b0,0xfe1cab26,0xfeb4d524,0xff6403f8,0xffb5bbe7,0xffc8893c,0xffba2171,0xff881fff,0xff6cd343,0xffb9d657,0xffaf1779,0xffb1ba63,0xfff7bad3,0x00008778,0xffede6c2,
-0xfff20224,0xfff115dd,0x00118343,0x002f2527,0x00861b82,0x00e2f7a9,0x01b01340,0x01f900d8,0x01fe9d80,0x01d98d5a,0x01c47c30,0x00775bf8,0x00549ee8,0x00ca03a3,0x0101c762,0x0116f60a,0x0070dc9e,0xfee030c8,0xfec9923a,0xfeb23336,0xfec14248,0xfe20ec4a,0xfde689c4,0xfe0e5b92,0xfe11cc9c,
-0xfe4633b6,0xfe8ad21c,0xfed90f98,0xff4e4e54,0xfff38f28,0x002c498e,0x0016abf3,0xffddbd17,0xffb74aeb,0xffdad61b,0x0023ae0a,0x006f7eb6,0x00af5719,0x00cd1475,0x00c27245,0x00bd596f,0x009e49f1,0x00dda5d5,0x00cc06bb,0x00da03f3,0x00b1e708,0x00a88bdf,0x00d34da5,0x01037d4e,0x012b990e,
-0x01495890,0x0125d548,0x012dc488,0x014376e4,0x0116b11c,0x00cb2774,0x009ee212,0x009576c2,0x008c8146,0x00791bbc,0x0049c647,0x001fb35b,0xffe5239e,0xffdad329,0xffb02460,0xffb42c69,0x001a4cda,0x00335494,0x006092f9,0x00752f41,0x00957758,0x00952565,0x0091f1c2,0x005e8baa,0x005fb2f3,
-0x00613991,0x006d9902,0x005b34d6,0x0073d7be,0x0082f9bc,0x00abe362,0x00a5fa9e,0x01560d9a,0x00df7535,0x00dad6b8,0x00be096a,0x00b7538e,0x00a8b99d,0x00946347,0x007eda85,0x008f419d,0x00b2ab09,0x00c622bd,0x00e22902,0x00f1c503,0x01027726,0x00e45e05,0x00cd35fd,0x00b8ffe4,0x00a3b0ff,
-0x009e8f1b,0x005dbfaf,0x00816582,0x00524e0b,0x003c41d0,0x006d138a,0x00674a83,0x00460aab,0x00592ce5,0x005fd34c,0x008c99be,0x008659a6,0x00a7a353,0x00ca2867,0x00cc232a,0x00f36a12,0x00daa4f2,0x00d5d0e6,0x00924c2c,0x00a76114,0x00b3c8b7,0x00a71310,0x009fedc1,0x009b6e2a,0x0098d333,
-0x008ef6bf,0x009fc890,0x00a588e7,0x00adad5f,0x00b0d864,0x00b6888e,0x00c58057,0x00b8a204,0x00b0feec,0x00a8efc2,0x009879b1,0x0093c98e,0x00838a42,0x00610c5c,0x00af7884,0x016e22c4,0x004d8624,0x00ae0912,0x018c3e8e,0x0185630c,0x017c5d00,0x0172e45c,0x016dc446,0x0167db46,0x01639fb6,
-0x00d46e1d,0x0076b866,0x018b9394,0x00ec5899,0x00a0106a,0x00fed772,0x0069d85f,0x0124d6aa,0x00c7d8be,0x00e4097f,0x00ce689f,0x0108da4c,0x0118ffa0,0x0113ee4a,0x010a5da0,0x0101120e,0x00f42772,0x00f6d082,0x00fc648a,0x0111746c,0x01062c0a,0x01054254,0x0107888c,0x0107f36a,0x00e9479c,
-0x013be6e6,0x00789966,0xffa6ca3b,0xfe72b526,0x00bb690c,0xffb20a65,0xfe78d270,0xfe7b1bae,0xfe81c694,0xfead501c,0xfe9881e2,0xfe9898ce,0xfea41f34,0xffbb5c45,0x00db769b,0xfe777942,0xff859d80,0xff417d73,0x010028a4,0x00bee2b7,0x00c020a9,0x00a2015c,0x012f49d4,0x015f5fa8,0x014f57c2,
-0x0141e6b2,0x01267dda,0x010ec1b0,0x0104973c,0x0119684a,0x01587fb4,0x014a9510,0x014e661e,0x0157e68e,0x01428a28,0x01395424,0x0127ca60,0xff7cc919,0x00b038c9,0x00ad21dd,0x006691f2,0x0038a809,0x008bbc4a,0x0092dd1b,0x00ab4533,0x006fa70f,0x00c4c09d,0x00c95275,0x006a936a,0x008b1386,
-0x0022ad7d,0x003e1f9e,0x00ddcf91,0x00272776,0x006ad4c7,0x00a7437a,0x009afdf0,0x0065369d,0x017a113e,0x01e69cf2,0x01c0da14,0x019faa70,0x01648b96,0x01286874,0x0127ce08,0x014409be,0x01b98c26,0x018df7ba,0x018acc9c,0x01a00592,0x016e9d02,0x0189b566,0x00d3fca9,0x007982f1,0x00a9cae7,
-0x00b914af,0x00a31205,0x00294cdf,0x006037d9,0xffe8fa30,0x0083304c,0x00297c65,0x006fadd5,0x001e9a35,0x003ab8dc,0x00360a0f,0x004fa3ea,0x00116644,0x0073787b,0x001a02ea,0x0032cd7d,0x002b2201,0x001bf443,0xffd5ba8d,0x015ae00e,0x020aaa0c,0x01fc5ed2,0x01e958b2,0x01835a62,0x011954d4,
-0x00f6e6b1,0x0160f3ac,0x022317d0,0x020e5044,0x020f3db8,0x02221d68,0x01d4059a,0x01b4e586,0x01053d70,0x0040b1c4,0x00f90438,0x00ba1a78,0x00e2f873,0x00a1ee68,0x0044996a,0x0004ca9c,0xffc50f92,0x0010d471,0x005391a7,0x007a8a92,0x0028a692,0x006107fa,0x003aab02,0x00165a80,0x00b53b63,
-0xfe90e6d8,0x010ab784,0x019e5e78,0x01a87162,0x018ef916,0x02619648,0x02702808,0x022a0194,0x011cf0ec,0x01179f1c,0x028f776c,0x01c3717a,0x0142decc,0x00ccad3b,0x00a5bc65,0x00b542f9,0x01308ad0,0x015b01d6,0x01c49db0,0x010d6d98,0x00474787,0x0116c624,0x010a4e70,0x00a34148,0x0043b171,
-0xfff4b0e0,0x0025eb08,0x001c3600,0xffd02094,0xffea1837,0x0001d291,0x00115e67,0x0074dfa8,0x00774b60,0x00aa3ad5,0xfeecf028,0x00bdb18b,0x00f4529d,0x00c1da52,0x0015d5ba,0xfeb9dca6,0xff96dee4,0xffc22351,0xff58eb37,0xffa140a2,0xffa28c08,0xffbc66d2,0xff84fd73,0xffbea0e2,0x007b95e1,
-0x00bf12f6,0x01260ea8,0x01dd8eca,0x01536862,0x014cebb6,0x00a450f4,0x001aeda8,0x00313618,0xffe82464,0x004713d5,0x006843d3,0x002a4854,0x0015fd68,0xfff40b1f,0xffe1cb6a,0xffecbc8d,0xffbe7b92,0xffd25a88,0xff56a9e6,0xff8c50c5,0xffad178e,0x00f3e5b3,0xff764363,0x009e712f,0x00f65842,
-0x018081f0,0x0321e0e4,0x0386fd68,0x03a41324,0x02d45a48,0x01c9b630,0x010ffe26,0x0106770c,0x01e020c6,0x0244deb4,0x0263d664,0x01aafea6,0x00da2817,0x0036ce44,0xffea44bb,0x00577601,0x0097d2a0,0x0080d0ed,0x007ce25d,0xffe12dfd,0x001054a1,0x002dd220,0x00148dfb,0x00115fa1,0x001932e3,
-0x001e60a8,0x0002fe83,0xffc28759,0xff9b30b1,0xffc8b26b,0xff9e7de0,0xff2ffb6b,0xff56bf35,0xfe9937cc,0xfd784108,0xfd454cc0,0xfe7be5ac,0x022122cc,0x01831334,0x011c4ba8,0x00a8477a,0xffd8ebf3,0xffc59700,0x002dc839,0x003350a1,0x005149a4,0x006d6372,0x008b2524,0x00b288db,0x00e3e9b1,
-0x00de0c84,0x00ccaa23,0x00b25591,0xffd02553,0xfff717f8,0xffe44f07,0xffe88881,0xfff6f5d6,0xfff5367e,0x0014edcf,0xffffce66,0xffc59c98,0xffb42f73,0xff99675d,0xff59e1b9,0xff385c03,0xff62a23b,0xff7c1f02,0xff64c099,0x020e3170,0x037ec61c,0x0495bae8,0x034c7a0c,0x01de6e88,0x008b9b33,
-0x004f96b2,0x00efefda,0x009448e4,0x0077fcc5,0x00867df1,0x001e6bed,0xfffa79de,0xfffdd0f9,0x00173e4f,0x001dda87,0x00091e95,0xffc52d4b,0xfff77df6,0x00499460,0x00238107,0x00725355,0xffd1715d,0x000a03d2,0x0015e7e8,0xffffae58,0xfff70f14,0x001d669b,0x0046eeb8,0x006ac69f,0x009efc68,
-0x00e7fbd2,0x01c59228,0x021b5a5c,0x01bc14ec,0x02b12458,0x0075747d,0x01cd7904,0x029d3570,0x026d8a6c,0x028a0728,0x0262eb3c,0x01b6369c,0x00c1f522,0xff7ebdd2,0xfef165f2,0xfeddc2a4,0xff10a861,0xff4f1a09,0xff8bfba7,0xff641c02,0xff8214a1,0xff9acee7,0xffc8b60c,0xffcf17cc,0xffb6d0f0,
-0xfff80457,0x00129443,0xfffb84b2,0x00270267,0x003b9abe,0x0070fd55,0x00ac20f4,0x00ce6d5b,0x010e03bc,0x010e28d0,0x0114024a,0x010e4d94,0x0110fd62,0x013e53a4,0x011d860a,0x01964c1c,0x01676d0a,0x01d36bc6,0x02507ed0,0x027c4e50,0x02df5960,0x02c9bc20,0x02e17c60,0x0319475c,0x02875b60,
-0x01f4e7da,0x014eb7e0,0x0108f8be,0x00b78cf2,0x006b1bec,0x0059ccde,0x003d5c70,0x00169a35,0x001f91db,0x00451a2b,0x0033afec,0x0023da1e,0x0048520c,0x007dd9df,0x0099467f,0x008de567,0x00be207c,0x0078ca06,0x00bbdf8b,0x00684be8,0x00aad182,0x00861b2b,0x00bbc29c,0x00d3a53c,0x00d788d9,
-0x00c7662c,0x013aa6fa,0x00ad9793,0x01bcde28,0x01c238f6,0x01d30738,0x01ebf990,0x020483d8,0x021356e0,0x022a333c,0x01eac4b8,0x01c92d8c,0x019f2180,0x01784cb4,0x0149c460,0x01118f8e,0x01074b42,0x00f8e661,0x00ef3e89,0x00e3d01b,0x00ca8ad7,0x00d25900,0x00785d0d,0x00e932d3,0x00fc6943,
-0x00d5f8bd,0x00d99695,0x0120c2dc,0x01428f72,0x01534152,0x01287976,0x016ba5a8,0x01785ed2,0x014cce80,0x0162b0f8,0x0134cbc8,0x014be20a,0x019d66e2,0x0157d302,0x01caafee,0x019d8528,0x01b09a32,0x01b07956,0x01ba6ef0,0x01c3248e,0x01d72f28,0x01c30a3e,0x01b459d6,0x01a49c42,0x018f1f26,
-0x017e3436,0x016b37c6,0x0169fcd8,0x01636cfa,0x015b9a92,0x01553614,0x01459c4a,0x01559dc8,0x0117ffd4,0x00a4040f,0xffe36bf7,0x014d5f24,0x00b54fae,0xffd60a4d,0xffdc1b15,0xffec7389,0x000d4c29,0x0008b663,0x0015c803,0x002a306b,0x00d1a7f8,0x017f44b8,0x001e6e27,0x00c82262,0x01baca30,
-0xff6c910a,0x003cebde,0xff0ad616,0xff7e0bd3,0xff6f70d2,0xff8529a0,0xff74731a,0xff6890a1,0xff561d6d,0xff53c1d8,0xff4f96bd,0xff4b6977,0xff53c14b,0xff5cb386,0xff72a9b4,0xff613801,0xff60ba53,0xff65c221,0xff6b6473,0xff88a394,0xff2f01a8,0x0059d406,0x0116aeec,0x01c54076,0x00020af7,
-0x00f5855a,0x019b3f04,0x01a63d2e,0x01a54606,0x01866f3c,0x01a70c08,0x01a79f4e,0x0194aba0,0x00e7a86b,0xffd77c8b,0x01a52618,0x011c4cee,0x012d8300,0xff3fe958,0xff6108db,0xff7ffcc2,0xff97228f,0xff812047,0xff629662,0xff2c7ef9,0xff1af6cc,0xff053880,0xfeff8fb4,0xff013d21,0xff11b37a,
-0xff4b5ec7,0xff2101f6,0xff27b0a4,0xff370221,0xff60d25b,0xff64f6c0,0xff92a4f1,0x013fb176,0x0015bc01,0x003d6460,0x003a00ee,0x004bf013,0xffe36960,0xffc80f09,0xffd00fc6,0x00400e50,0xffce6062,0xffabd5dc,0x0003245d,0xffd95b78,0x00492bf1,0x005fb45f,0xffa6f6e6,0x001c1271,0xff2fd09f,
-0xff0e2f80,0xff5f37e1,0xff8d8748,0xff937392,0xff56257a,0xfed44ec2,0xfec37c52,0xfe9f1758,0xfe872850,0xfeaa3072,0xfed46376,0xff55e8f4,0xfef30406,0xfef5205a,0xff0b02dc,0xff59421d,0xff459664,0xfffea12c,0x00af2d3c,0x0083a839,0x007bb15b,0x0035889e,0x006db854,0xffdf03ef,0x00404e35,
-0xffb4586a,0x00765e67,0xfff941ac,0x00502b2c,0x0011b178,0x0026b004,0x0030b825,0x007987df,0x0003221b,0x003311e2,0xff27ab6a,0xff2a6fbe,0xff8543c0,0xffaf5d92,0xffda3316,0xff851a7e,0xfeb9f824,0xfea55bc0,0xfe3737f8,0xfdfc9924,0xfe05effe,0xfe539068,0xff01bff4,0xfe83087e,0xfe842976,
-0xfeb3d4f0,0xff3332f8,0xff523a7f,0xfff0579e,0x00e74271,0x0039b01d,0x00f71e87,0x005a87b5,0x002f5903,0xffec7e2e,0xffd20138,0xffe6634a,0xffeed5d5,0x004266e5,0x002b2747,0x0010d034,0x00011242,0x0000f26f,0x003130bb,0xffecceb4,0xffb0a808,0xfefc2764,0xfe3a0644,0xfec383bc,0xfef274de,
-0xff25f12c,0xfef30386,0xfe642788,0xfdad50b0,0xfde2b58c,0xff396018,0xfeb2b4ac,0xfee548e0,0xffc93677,0xff8be8e3,0xff7fee0f,0xfefab014,0xff395fd4,0xff07aca5,0xffef1f5c,0x010dcad6,0x0053bf48,0x00b73875,0x005e7df4,0x0042d5b9,0xfffdc6e6,0x00105525,0x00106187,0xffcfc865,0xffe83981,
-0x00010855,0x00214e04,0x007396eb,0x00beb5e3,0x00d0d445,0xffa2ee38,0x0072a0ed,0xffd94570,0xff80c94c,0xff66d501,0xfec15aa6,0xfee2f00e,0xff3ccfba,0xffdae250,0xff6cfe06,0xff549ee3,0xff925ae5,0xff815ed6,0xff9a3686,0xffc12eb2,0xff3c0725,0xfed68826,0xfe6fbb08,0xff305ff0,0xff6ae836,
-0x005488c3,0x007e0ab2,0x002f86c5,0x00064f15,0xffe1a605,0x00047f72,0x000f1d5c,0xfffe0329,0xffe71940,0xffe2fac2,0xffd47f11,0xffbbb0e6,0xff9656dd,0xff70c7c8,0xff1a38f2,0xff810ae9,0xffaadfc7,0x00332704,0x0071c16e,0x0049d426,0xffdd11ce,0xff0f0bca,0xfedaad0c,0xfe3d28c0,0xfd9ba230,
-0xfd2f58c8,0xfd874348,0xfe36e2d0,0xfde32ae8,0xfde83bac,0xfe3e9698,0xfe7bf006,0xff18683c,0xffe5c319,0xffca5104,0xff7dded5,0x000d42bc,0x00158550,0xfff53d33,0x000d1d0e,0xfffaf50f,0x001248cb,0x001681ec,0xfffbc319,0xffed5f79,0xffffe889,0xffe1e7e3,0xffa92d34,0xff8b6184,0xffdc43dd,
-0xff8adc49,0xff70769d,0xffa78ad2,0xfe2e91f6,0xfd4ed268,0xfc455154,0xfc623188,0xfc7b6208,0xfcfc4480,0xfdc61980,0xfef99a38,0xff5ed78c,0xffcc39ad,0x0021d71f,0xffda96aa,0xffb6db39,0xff9e817c,0xff545518,0xff0db433,0xfee2f6cc,0xff303213,0xff802e1e,0x00577bac,0x004d0938,0xffccc0b0,
-0xffbf3342,0xffe5baa9,0xfff60385,0xfff1e8b5,0xffff7e3e,0xfffe15a3,0xffd10252,0xffa61538,0xff7a4e70,0xff1853f7,0xff314a61,0xfed834e4,0xff027df5,0xfe964a04,0x03552bac,0x01e34fec,0xffa1bfe3,0xfeb9f358,0xfd20bbdc,0xfcdc33dc,0xfd13a80c,0xfde1deb8,0xfe408cae,0xfe6f6292,0xfe72abfc,
-0xfee19f5e,0xfef84ae0,0xfec30aa6,0xff53d41e,0xffccf484,0xffd2fa08,0xffe3216d,0xffd515bd,0xfff8af76,0x0055b498,0x000a6f91,0xffcdfec2,0x0007be30,0xfffb290f,0xffc98101,0xffeca7e5,0xffef659f,0x00410918,0x00201cac,0x007124f4,0x00bc5dc8,0x01a9b934,0x02239478,0x02462724,0x023d8db8,
-0x02844ae4,0x01880f56,0x00eabdde,0x00f78d08,0x0072d7a5,0xffb9f389,0xfea65548,0xfd713b70,0xfe02f61c,0xfe73170e,0xfebf6a88,0xfecae780,0xfedc3e52,0xff10d790,0xfeb1b55e,0xfe987fb0,0xfec0ca50,0xfed904a8,0xff1763e2,0xffb3c4f1,0xffd5e358,0xffdb437b,0x001a2bb7,0x0018dff7,0x003e69ea,
-0x0086e0c3,0x008a65ca,0x00b04805,0x00bacc6e,0x00df0466,0x00fb97ad,0x010b85aa,0x00fc815a,0x00f0d6d4,0x013bc360,0x015c26ac,0x015e80be,0x012a16f0,0x0119891a,0x0169cef2,0x019e2872,0x0178fd5a,0x016c0d48,0x01466276,0x00c1d207,0x001f997a,0xff92db98,0xffa10acc,0xffa74f21,0xffbe873e,
-0xffb9ee05,0xffbb4190,0xffa2591b,0xffab934f,0xff89ebb3,0xffb60edb,0x002b806d,0x0042e1ae,0x005d0f23,0x0067976d,0x0099b89e,0x00894b47,0x00b4be74,0x0077219d,0x00c2ff4e,0x00a98294,0x00e12cbb,0x00db8a9a,0x010a0030,0x01303b2c,0x01675770,0x0144dea6,0x01fd1f82,0x0142184a,0x011e7d88,
-0x01021f6a,0x00dac0b8,0x00b7a7b8,0x0090286f,0x007b15f0,0x0088f302,0x00aee5d3,0x00bcbdcf,0x00d05711,0x00d751f3,0x00e197de,0x00ca4dad,0x00b727c7,0x00a46044,0x0098db70,0x008ba83e,0x0063cce9,0x00e58091,0x0088879f,0x009e744f,0x00c4a718,0x00e2ef72,0x00c3c8ce,0x00c3c5d7,0x00e280da,
-0x0120a0cc,0x00f10b50,0x00f18342,0x0121a10e,0x011fac2e,0x01567892,0x01582312,0x01293d28,0x0147cee6,0x00c1211c,0x00de71e7,0x00cc024f,0x00c2931e,0x00bfae91,0x00bae732,0x00aad2e8,0x00b46a0a,0x00b450d6,0x00ba5a34,0x00b79dc3,0x00b80fa2,0x00bf13a9,0x00b50a26,0x00afa477,0x00a9dea0,
-0x009d9d77,0x009e0106,0x0072238c,0x00f4d878,0x0167c5ba,0x01d5195c,0x00e1e145,0x017a50d8,0x01f6056e,0x01f86536,0x01ee9192,0x01d79f60,0x01eb428c,0x01eaeb98,0x01e2d70a,0x0198d088,0x010d1a3e,0x01f9adae,0x01b8b3d6,0x00d19c0a,0x00848aef,0xff847f3f,0x00be4e05,0x00611031,0x006e1b38,
-0x00614d55,0x0076d298,0x007d6296,0x0082f4b1,0x007de162,0x00787b1b,0x006f052a,0x006d0fc4,0x0071b695,0x0085f27d,0x00858ed4,0x0089599f,0x008c3c28,0x008c938d,0x007e8d31,0x00d143dc,0xff97ccc5,0xff17c98b,0xff0b98b0,0xffd0c346,0xff129849,0xfefa46de,0xfeea283e,0xfeebe084,0xff1efcaa,
-0xfee30d6c,0xfeda60c2,0xfee77504,0xff1555f3,0xffef3d77,0xff0dd489,0xfef0c142,0xfef5d37c,0x0069599f,0x0074a5d4,0x00485fd2,0x002ca32b,0x00551951,0x0067efa3,0x0078b91c,0x007af78b,0x006eefdd,0x0059875a,0x00501707,0x0064d7c9,0x00a29ced,0x00a45655,0x00a863e6,0x00af609c,0x009bbdaa,
-0x00bf16ae,0x00838485,0xff5a3998,0x0050b33a,0x000b5974,0x000bf147,0xffe0711b,0x000254e8,0x0023ccad,0x0012ffd5,0xffe358e7,0x002efdc9,0x00585ce0,0x001088b2,0x00132566,0xffcae662,0xffeb6d91,0x005a5b1d,0xff7bd108,0x001544c4,0x006c21e3,0x0014c4c6,0x000c7857,0x004d23a8,0x0064e19b,
-0x0090a728,0x008890ba,0x00668344,0x003117f8,0x001b7e0f,0x00393e3f,0x00ad5112,0x00b33bf3,0x00bfafff,0x00d41b36,0x00bcf771,0x010616b6,0x0068ccd7,0x0008db95,0x0054b8a4,0x005b139e,0x004782d0,0xffd99b9f,0x001b1e71,0xffc293d5,0x0071fd64,0x0002a554,0x0056ac2a,0xffd51997,0x001964b0,
-0xffe5c9d2,0xfff98fd6,0x001848a2,0x0006157c,0xffa64cc0,0x004675ea,0x006b82a3,0xffd6cf05,0xff885625,0xffd92c36,0xfffaf059,0x004fc941,0x0073f3be,0x004681b1,0xfff7619b,0xffc5216b,0x000d276a,0x00d3e946,0x00db2884,0x00e67243,0x00fa3fb0,0x00d9301e,0x012fe8b2,0x00a04bcf,0x00258d29,
-0x00ff095a,0x00802154,0x00a84929,0x00790769,0x003d3894,0x0007538b,0xffef74ab,0x0067f13e,0x00449436,0x005bfa85,0x003cddf8,0x001e88ad,0xfffd2567,0x0098dceb,0x006967bd,0xfe242780,0xffa5d972,0x008c9297,0x00c07271,0x00e5a827,0x0139ebc4,0x0122e234,0x01163ab8,0x0082b919,0x0090411f,
-0x01726894,0x0114db38,0x00e8fc64,0x010143c2,0x0085bdbf,0x0072c87e,0x012cec8c,0x00f4250f,0x013289ba,0x005857c5,0x001198f5,0x010b8d40,0x00a9fdc3,0x007c9419,0x002b2a4f,0xfff9aeee,0x00264169,0x002495b4,0xffea9855,0xfff50f1d,0x00137520,0x001ebe99,0x0082970d,0x0041755b,0x00116057,
-0xfeabe210,0xffbe8f0b,0x017b5e44,0x017f9cf4,0x000a6d02,0xfecc0c10,0xfe1d3f0a,0xfe46ef8a,0xff6ab350,0xff8ca2e4,0xffd2f0aa,0xfff129e1,0xff717fe6,0xff633422,0xffa6bd32,0x000d018d,0x0046b38a,0x0085815c,0x004cb9c3,0x00aa9635,0x0066523b,0xffe74154,0x0005eef7,0xffef98c4,0x004a62f3,
-0x00618ab3,0x001d1592,0x0001fed6,0xffe82420,0xfff29478,0xfff85cbd,0xffc359af,0xffba871b,0xff62c7ac,0xff9280d3,0xff84b771,0x00140875,0x0023e50f,0x008caec6,0x001d7807,0x00064646,0x007320da,0x00f7c3ea,0x01336d44,0x00f7b29d,0x00faa3ae,0x00da78a7,0x009bbb6b,0x00ea52e0,0x010319d0,
-0x00c463fc,0x00fce4a0,0x00c0c9f5,0x00632df2,0x0033c886,0x00ad4900,0x00bd1de2,0x0017f37a,0x0049c0c3,0xfff80339,0x0008b2d9,0x00176834,0x001a89e6,0x001f6d05,0x0015b6c2,0x000d9af2,0xffe42d5c,0xffa89b66,0xff78df4c,0xffa101b1,0xffa31d4a,0xfee31266,0xffe14d04,0xfd952d7c,0xfd1c6bfc,
-0xfe21efd6,0xfe716c66,0xff45613e,0xff2d1aa5,0xff3ad05c,0xffd00677,0xff4108f1,0xff53004b,0xff71a19b,0xff648ba4,0xff6055d0,0xff4f4dcd,0xffa594f2,0xfff2f12f,0x002852a1,0x005ceb46,0x00978908,0x00995617,0xffa8714a,0xffc869ec,0xffe648e3,0xfff44910,0x00076acc,0xffff0df2,0x00172712,
-0xfff7e398,0xffece83d,0xffb9ec93,0xff9ea5f0,0xff8be823,0xff5b9c2f,0xff22b32c,0xfe9a72fc,0xfe66b410,0x00d475be,0x004dad15,0x000234b0,0xff264009,0xfe6cc966,0xfeba637a,0xff4a093a,0xffab62d3,0xff6c0992,0xff569767,0xff3bd949,0xff682587,0xff8519e5,0xff683a5d,0xff52e9db,0xff84e85c,
-0xffe89246,0xffbf62f0,0x00128523,0x005e02fa,0xffda66de,0x00265152,0xfff9f3e8,0x0019b609,0x00179c1d,0xffd80602,0xffed6b8c,0x00154916,0x00083056,0x00172945,0x001c4393,0x002d974e,0x010906f6,0x0178268e,0x016ea63a,0x013ed14c,0x00f84376,0x017d3f82,0x01f9d394,0x017b2040,0x01319b6c,
-0x0038f8d5,0xff7cfe92,0xff0c1b0f,0xfef0e618,0xff05eee0,0xff282911,0xff537ea4,0xff50fc58,0xff68decd,0xff375c45,0xff37769c,0xff95b1cd,0xff8ccfb0,0xff982419,0xff8fc6d6,0xff979c54,0xffb9e08c,0xffa341bf,0x001886d4,0x006f1ce9,0x00b46f1a,0x00af7519,0x00ae43d2,0x00fa676e,0x010c7e3c,
-0x012e7dc4,0x01649a00,0x011390c0,0x0104c780,0x0131a544,0x016cf0f0,0x00fd1fbe,0x01626fe6,0x01b6ad16,0x01ade76c,0x01fb4ef8,0x01bf92b6,0x01a904b8,0x0187db9e,0x00e409f7,0x00400781,0xff8e7301,0xffa14a56,0xffa7447c,0xffa791d5,0xffc71162,0xffdc1eac,0xfff11b81,0xfffd6059,0x003d752d,
-0x00176a08,0xffe04e19,0x00242864,0x00487d93,0x005e8514,0x0056ff61,0x00769303,0x006cd5a9,0x00b93ac3,0x007eae8a,0x00dae420,0x00c0b33f,0x00ff6ca0,0x00fc45a5,0x00e81f5f,0x00c08af8,0x0103c6ac,0x00f65b3c,0x015ca9a8,0x015fe508,0x0153cbac,0x014d6cfc,0x014c52be,0x01492e7c,0x014e2104,
-0x0145a8f4,0x015008b0,0x0146d86a,0x0133b9c2,0x01108170,0x00eb7457,0x00df67c8,0x00cfa474,0x00c2431f,0x00ad2b9c,0x00982acc,0x008f470a,0x0064f21e,0x00aaa55c,0x00a00fc0,0x00a5a4d0,0x00aa7861,0x00d2cbbe,0x00fc5142,0x00f6849d,0x00e02d36,0x012470a2,0x014857ea,0x01321af8,0x01411896,
-0x012830a4,0x01321ed4,0x0166eb4a,0x00dea49d,0x016fb378,0x01502cae,0x0153e3fa,0x01539de4,0x01562368,0x01583a8e,0x015c3e2c,0x0153f12e,0x0149838a,0x0143cae0,0x013746c6,0x0130479e,0x01272eba,0x01211734,0x01196802,0x01130626,0x010efeda,0x010555b6,0x01144f88,0x00a494f8,0x00568fb3,
-0x005078f4,0x00c9148e,0x005d6d48,0x004b21b7,0x0048e40b,0x0055caf5,0x00729f1b,0x0062025d,0x0069e03f,0x0079c09a,0x00920023,0x00ff38d7,0x00970575,0x008f6939,0x01775a88,0x002f71a0,0x00f25054,0xffdf7eef,0x00221dcf,0x00299c2c,0x002dc7a7,0x004817d7,0x00486fab,0x0030583e,0x003172d2,
-0x002678d9,0x000fa358,0x0015d21e,0x001cc11e,0x0032cffa,0x0029f939,0x002ab7fd,0x002b6856,0x00304a50,0x00350bc5,0x000551eb,0x010916c6,0x012dd9ae,0x0097e4c1,0x00d83e05,0x0121a63c,0x0091c310,0x00ac688e,0x00b39d57,0x00a76e9e,0x00c6cea6,0x00ca3b1d,0x00c91baa,0x011a8562,0x00c25106,
-0x00a8a98c,0x0132e77e,0x00fcf197,0x002b11f1,0x000a0b7a,0x003b0bc2,0x0030c8a7,0x008515cb,0x009140f6,0x004ebbe7,0x00512176,0x00289bc8,0xfff01b64,0xffe9b25a,0xfff57e85,0x00346224,0x00294336,0x00397a01,0x003e2c55,0x005aeba0,0x003bb4e6,0x00781455,0x0106990a,0x008bea2c,0x00bdef35,
-0x0084a8c5,0x0087aab2,0x00712e97,0x00576e2f,0x00857f56,0x00d61ec0,0x00777b5e,0x003fb5ec,0x00735252,0x0052dbdd,0x008a9417,0x00e7a643,0x0064df8b,0x00ba8779,0xfffe90df,0xffd0aab7,0x003ed444,0x00226714,0x00dd1b5f,0x00fef2d9,0x0062b54f,0x007f1bb3,0x002c0d8b,0xffaeaa2a,0xffbfa95a,
-0xffe0b255,0x006bae62,0x003a0259,0x00478a0c,0x004ab7c7,0x006a830c,0x00432ab6,0x00a50dab,0x011575a0,0x00d98a38,0x00ae475c,0x0086479d,0x00947621,0x00384a26,0x005e5cdf,0x001543cd,0x00d408cd,0x0027f714,0x006f76a4,0x006cc927,0x004f9a56,0x00690661,0x0109a2f2,0x00950708,0x00c6e0c7,
-0x00026d2e,0xffdbcbe1,0x003cc159,0xfff5f5b1,0x012b7f74,0x01736648,0x00a0ea00,0x00cfacac,0x0040f072,0xff62e313,0xff5a7e8e,0xff9ff8db,0x0072e1ff,0x00559895,0x0071957e,0x00802d34,0x00b1f9eb,0x0072574c,0x00b70f04,0x011c3e0e,0x008faed8,0x00ea035b,0x007d552c,0x003ce525,0xfffceba5,
-0xffe87abd,0x00040053,0x003c50ac,0x004be86a,0x001f02ca,0x002b2eae,0xffed888c,0x004655be,0x00f5963f,0x009e86b4,0x00681fae,0xfff0b474,0xffa05a5a,0x0054be31,0x00976682,0x00ef1734,0x00eea18d,0x00daac06,0xffb1d6a0,0xff45744a,0xff839867,0xff5fff82,0xff69fcbd,0xffab0de6,0xffd1b8d4,
-0xffdb9eed,0xff6ea810,0xfff84a0b,0x0016ebba,0x00ca85d7,0x01702994,0x00cc5904,0x00c736dd,0x007d1e71,0x005ec6aa,0x000f4e81,0x0026cbbe,0x00241d99,0xffe3ee05,0x000bbcb0,0x0033942e,0x0082abe2,0x00b45a91,0x00c32a5d,0x0076161c,0x00498da7,0x00b6c5f9,0x016e2410,0xfff5f856,0xffa4a7f1,
-0xff2dd5e1,0xfefde7b2,0xff6430d5,0x008dc966,0x002738d4,0x001cca72,0x0012c852,0xfff46166,0xffe95a67,0x000982a0,0xfff6d3f0,0x002296bb,0x008846c6,0x00ad080a,0x006cc3d4,0x00c675a4,0x0069071c,0x0037ebb5,0x005ebd79,0x00209748,0x002e1014,0x00143c3c,0xfff1efd3,0xffdf5f76,0xfff722ae,
-0xffefef27,0xffd3531a,0xff9fb000,0xffa787f8,0xffacfc29,0x00001887,0xffd6cca2,0x0085ec6d,0x0057d423,0xfff52c93,0x005926a4,0x0139425e,0x01f5ac44,0x01e90fc0,0x00ffe5c6,0xffc28531,0xff44b8f0,0xff62cc88,0xff75be02,0xffcbf2e3,0x0024f2d2,0x0037d221,0x003ec914,0x003c35a5,0x003420d7,
-0x000f7737,0x00f50433,0x0083d9fb,0x002e69ca,0x006fda1d,0x004ca4e7,0x00310961,0x001b1ef7,0x001730d9,0xfffbeb76,0x0005a392,0xffd9c84a,0xffb3e7b9,0xffac62fe,0xfff62b2a,0xff953285,0xff6a41f7,0x0011f50b,0xfddd9af0,0xfe37eeb2,0x0003fa9e,0x00e5ce7e,0x0067dbfc,0x005086bd,0x000219fd,
-0xff538f10,0x0046a99b,0x00b25029,0x00beac12,0x00546ba2,0x00092f48,0xffd0965d,0xffb56853,0xffe60873,0xfffccad1,0x003a2bdd,0x00325d93,0x00a38ea0,0x003bcee1,0xffec94e4,0xfffccc9b,0x000756f1,0x001a5f03,0x001179d0,0x00027e1e,0x000b913c,0xffffbf5c,0xffc2ba8e,0xff9c51ad,0xff6c585a,
-0xff908085,0xff286fc1,0xfe8ac168,0xfe1c1112,0x018839d4,0x00db6e20,0xffcba9c7,0xff83c0f2,0xfef19fa8,0xffdd91fd,0x0035c8b6,0xffece4f9,0xffe9955a,0xfffd5053,0x00879a8a,0x00456798,0x003a39d5,0x004d6652,0xffce8f6f,0xffa38835,0xffaa84c9,0xffdf6eb2,0x0003aeca,0x0063eb27,0x004fa62d,
-0x00144416,0x001dcc86,0x00278542,0x00140e31,0xffe14346,0x000c1c31,0x000b5b41,0x0029ecf9,0x00047cbc,0x00247120,0x003f4b5d,0x00d84a09,0x014de984,0x018a310c,0x019845b6,0x028a326c,0x02a71bc0,0x02138bf8,0x0182c12e,0x009405a4,0xff2bb5ee,0xfe633282,0xfe605db6,0xfe93d26e,0xfec79a82,
-0xfee832de,0xff44f5e9,0xff81a5a2,0xffb3a0cb,0xffb127b8,0xff96dc00,0xff94f5b6,0xff643897,0xff6752f2,0xffaa735d,0xff9b35b2,0xffc11820,0x00167f79,0x004aef03,0x00777cdd,0x00b62406,0x00a632fe,0x00b262bf,0x00b46140,0x010677f8,0x01475996,0x018bc57c,0x0149ae20,0x016144fe,0x01d0a6b0,
-0x02340440,0x0198a74c,0x015c2d92,0x011f7a46,0x0144164a,0x015efaa0,0x013667ee,0x00fce0b9,0x00a350bf,0x003f282e,0xffd82ec4,0xff5e1a93,0xff5bb172,0xff4a0f0a,0xff39c4bb,0xff58bedf,0xff79f629,0xff95043e,0xffcc3cd0,0xffdb3e57,0x00316f96,0x00727de3,0x005876b8,0x004887e2,0x004c444c,
-0x00634ff0,0x00545c2d,0x009450ca,0x00a101e8,0x0101a082,0x00f577f7,0x0129a1ba,0x0141f6a0,0x01594704,0x0173fa12,0x01822390,0x0177ea34,0x018f853a,0x0147efe2,0x012751f2,0x0122ef10,0x010174c6,0x00eb1f3c,0x00d99ee9,0x00d7705e,0x00bfe193,0x00aea97f,0x009a02e9,0x00821dc2,0x006fb34f,
-0x0069c7bc,0x005d5e40,0x004cbd36,0x00354b1f,0x00246057,0x0000c012,0xfff4ee26,0x00930a66,0x0068f3a5,0x00afa644,0x00beabaa,0x01013ea2,0x0112bc96,0x010f9b3e,0x013327a2,0x01573c82,0x0137cff6,0x012a7f2e,0x014c9a9c,0x0144042c,0x0155c64c,0x01669a70,0x013d3046,0x0190b3e6,0x00fed278,
-0x010f6022,0x01084496,0x0104ec44,0x0107628c,0x01057c80,0x010382f8,0x00f42f14,0x00e9578a,0x00e16a99,0x00d60cd5,0x00c9be3f,0x00ba55c3,0x00b5a235,0x00b254d8,0x00b03d42,0x00adbf71,0x00b37fb3,0x0085ace3,0x01316ed6,0x01696018,0x0140be36,0x01433cd6,0x018fcc30,0x015bdf74,0x01670648,
-0x0166ea82,0x015b9186,0x01778ccc,0x017f13cc,0x017fbcf4,0x01afd9d2,0x017726e6,0x01688d66,0x01b3b16c,0x013618c2,0xffd27e5a,0xff4616aa,0xffde0aba,0xffd47451,0xffcc0fa6,0xffce3cb2,0xffc122a4,0xffbc2118,0xffb8afc5,0xffbe73f9,0xffbc4431,0xffb136f9,0xffb2add0,0xffb6ac08,0xffc28fae,
-0xffc95596,0xffceb70a,0xffd0f199,0xffd34bb0,0xffe12105,0xfff2812f,0xff5ed4c1,0xff8de43f,0x008198f0,0xff58c134,0xff74dbee,0x0059b930,0x00485d11,0x0046dee8,0x005f84b6,0x002f01dd,0x002596ea,0x002a5b9d,0xff6e7a81,0xff5916e7,0x008026e3,0xff774e47,0xffb37503,0xff993a5e,0xffe24034,
-0xffb51908,0xffb12d1d,0xff811a7a,0xff70a705,0xff6f3bd3,0xff861616,0xff82b784,0xff6416b0,0xff669446,0xff7486a3,0xff99c034,0xffac28d7,0xffb5c1cd,0xffb84aad,0xffbc67a1,0xffee99f8,0xffc6a56b,0x00077d4e,0x000145ce,0xffbc032a,0xffeaf5a5,0xffdb97f0,0xffaa2af7,0xffc1ca01,0xffa0557e,
-0xffb8827c,0xffb35907,0xffd5ec68,0xffe0b199,0xffbaa0b4,0xffd089a2,0xfffe0b8d,0xffcf92c2,0xff66d6eb,0xff87dd62,0xffde6a9c,0xffa72d61,0xffb9762c,0xff5c3e83,0xff2ea0f6,0xff1e64af,0xff4b4100,0xff3c6955,0xfef47efa,0xfef799e6,0xff136f20,0xff55e028,0xff7e4de6,0xff981f83,0xffa5212d,
-0xffc06e6e,0x0002f1f6,0x00078f64,0x00065557,0x003191c1,0x0025b59c,0x000ae18b,0xffe7c080,0xffe1faa8,0xffe050a3,0x001dc11c,0x0020b964,0x0024d0a2,0xffe42a2e,0x00180284,0xffd84cfb,0xffe30509,0x00645813,0xffc9176e,0xffacd672,0xffad172a,0x000cd783,0xffa453ee,0xff8dd8a2,0xfee713c8,
-0xfe93dcfc,0xfe8bd0c6,0xfee81116,0xfedf47e0,0xfe721862,0xfe626370,0xfe895c38,0xfefbec14,0xff30b5eb,0xff57f6aa,0xff6c8c8f,0xff9670b2,0x001d37a4,0x0028326a,0x006cb6d4,0x00b7d9f4,0x0080555d,0x006b1e7c,0x004e4519,0x002ce86b,0xfff23f2d,0x0014e1ff,0x00985f21,0x004074f0,0x0037269d,
-0x0055d5a1,0xffe85d90,0xfff7996e,0x0105377a,0x002058d5,0xfe7d249e,0xfed1e4d4,0xff616a15,0xff9e142c,0x003731a0,0xffce2fba,0xff8bbac7,0xff981967,0xff57702f,0xff6aa439,0xffa6cbc1,0x0017943c,0x00480681,0x0081250d,0x00220dfe,0xffff15aa,0x0044b29c,0x0011d7be,0x0018f832,0xffbd7357,
-0x0055f210,0x00c22d27,0x00674598,0x00590e91,0x0032b4e3,0x0014ec32,0x002bd42e,0x001efc81,0xffe982bf,0xffebb969,0x0022f884,0x0059ce10,0x008086ee,0x001ccf76,0xff8e9b1c,0xfecd9316,0xff9c4a26,0x016efd88,0x00bee600,0xff742a2b,0xff2c4a39,0xfdc2ccdc,0xfdec899c,0xff9cc6cc,0xffa02227,
-0xfff42b26,0x00123344,0xffc7cdfa,0xff875177,0xff5d3df9,0xff333213,0xff084430,0xfef95f4c,0xff3b3626,0xffbd2af2,0x001b612f,0xfffa8c9f,0xfffc54f2,0x000b21d4,0x0028dc6c,0x00326997,0x0016d4b3,0xfff81506,0xffe36c21,0xffeff600,0xfffac18f,0xffd87506,0xffb3622a,0xffa9bd4f,0xffad0aee,
-0xff9965bd,0xff65677f,0x0026bb2c,0xffc74b8a,0xff82a308,0xff2d13c2,0xfdeecd48,0xfe5a8830,0xfe709296,0xfe479f6e,0xff3ac4d6,0xff95104c,0xff5c08de,0xfed02388,0xfea48746,0xfef6de94,0xff24587d,0xff8d2807,0x002233e6,0x002b2112,0x0076d438,0x00966d3a,0xffda8809,0xfffd6d7b,0x002c3ed3,
-0x000c2c96,0x000a9b14,0x001240f4,0x0011831a,0xfffbb01c,0xfffebbcb,0xffc76b56,0xffa1e0fd,0xff8e87e1,0xff8fd422,0xff705759,0xff0b35fb,0xfff5fa5e,0xfddf25b4,0xfe9405a6,0xfed64808,0xfe07132e,0xfc3aca30,0xfce7e9d4,0xfda3cd80,0xfec98628,0xff1575f6,0xff3be649,0xff29a0f5,0xfeff5a3e,
-0xfefb160a,0xff382a3a,0xfedde3ce,0xfef8535e,0xff4935ae,0xff9e4d50,0x00113b95,0x00622bb8,0xffebcd51,0xffc72fa5,0xffe8eb93,0xffed73e2,0x000733f1,0x000bfbc9,0x000a7fd9,0xffef46e1,0xfff71d35,0xffd07be0,0xffb4b046,0xffa32aee,0xffa58b10,0xff1bf8ce,0xfe7aa4a6,0xfe21e29e,0xffb903dd,
-0xfd708588,0xfb9eeac0,0xfbbda778,0xfc7c5c60,0xfd758204,0xfe1a627a,0xfe63b644,0xfe968b5e,0xfea81260,0xfe8aee34,0xfe8a9ff8,0xfeb15504,0xff0ecce8,0xff526e42,0xff7b2997,0xffa1bdfa,0xffda12b8,0xfff45a8b,0x00052fba,0xffa370da,0xffc61b55,0x00339104,0x001a8e21,0x00057b37,0xffd6548b,
-0x000388e2,0x0016cca9,0xffd93674,0xffbcd246,0xffa709b5,0xff965773,0x00046530,0x00607c97,0x00c54601,0xffbddaf9,0x021c1784,0x01632a44,0x01062078,0x005ae67a,0xff7e1c3a,0xfe7c3020,0xfe147bfc,0xfdf9ff3c,0xfeb7567e,0xff2d2d5e,0xff5575de,0xff6af368,0xff4e8a5d,0xff2debef,0xff214395,
-0xff25b4f1,0xff6d85cd,0xff673377,0xff952f70,0xffd7330a,0xffa147c6,0xff9f29ab,0xff8eb3e3,0xffed270a,0x004d2014,0x00899c16,0x008a6be6,0x0091e7fa,0x00bcf261,0x01037006,0x01396876,0x01646c22,0x013cbd46,0x012673ac,0x01882a4a,0x0174c094,0x00b2730a,0x00db7afe,0x00bfeb73,0x00911997,
-0x008be5cb,0x0027ca16,0xffbf920f,0xff363926,0xfefdd1da,0xfebc9552,0xfe7cf6fa,0xfeb99e68,0xfef007ae,0xff1b02c4,0xff39334d,0xff5335b2,0xff727bcd,0xff85bc30,0xffa122eb,0xffac47dd,0xffd389ca,0x000887e2,0x00282c5e,0x00391fc0,0x0042e1c8,0x00511219,0x00808090,0x00ac01aa,0x00c027c6,
-0x00f08bf8,0x00fe8f84,0x012067be,0x01101f08,0x00fdd520,0x00ee6374,0x00e39fc4,0x012caff8,0x00c08a1c,0x00bc03f3,0x009b6824,0x00816791,0x00661a20,0x0058b483,0x0047b79c,0x0057e1a8,0x00634f39,0x006469ba,0x005c34b5,0x0048c02e,0x0037a78f,0x002f45be,0x0028007a,0x002023db,0x0015c511,
-0x0018f752,0xfff6dbc8,0x000bd688,0x0007c2b1,0xfffeec8b,0x0038eb1c,0x0049e608,0x0046b5e7,0x00653c67,0x00645196,0x0082cae5,0x009fd876,0x00cb0a2c,0x00ecf7a3,0x00ea1065,0x00f96314,0x00e54b94,0x00db6a63,0x00896dd5,0x00aa3ab4,0x00af4685,0x00a3229f,0x009fceb1,0x009cb23d,0x0097f9e1,
-0x008fa105,0x008f1258,0x008b32fd,0x008b4159,0x008734ff,0x00863444,0x00831419,0x00828e88,0x008082aa,0x00801de4,0x007c9585,0x007dfbe9,0x007f4e77,0x004a9f2f,0x006afedb,0x010f6f00,0x004c486a,0x00701501,0x012c0598,0x012921fe,0x012b3bc0,0x0131a33a,0x0129d8a0,0x012b0b38,0x01310d92,
-0x00b1c8fc,0x008228b3,0x0155486a,0x00b8eb5d,0x00c4b3a9,0x00d2479d,0x00de6b5c,0x00ce2c53,0x00aa23f3,0x00bfe1c9,0x00b10173,0x00e49008,0x00eeaad5,0x00da0835,0x00e306a3,0x00d81a86,0x00ba0f4f,0x00bb8261,0x00bdcd67,0x00c83d63,0x00d07a2f,0x00d42b69,0x00d33640,0x00d5a5aa,0x00c3d39a,
-0x00e36763,0x00eacc4c,0x006f2332,0xff4514a4,0x00fbc174,0x007475e2,0xff5467b3,0xff664b74,0xff703830,0xff8725a1,0xff847037,0xff85fb6c,0xff963c67,0x00767516,0x0108886a,0xff72a777,0x006566df,0x001e6ca3,0x00f63b7a,0x00a6dff5,0x00b6c905,0x0099400f,0x011b6d78,0x0144ff7a,0x0111103c,
-0x01329012,0x010fff56,0x00c1df90,0x00b2e6cb,0x00b415a3,0x00d8bbeb,0x00fc09b0,0x0113f14e,0x01140692,0x01129518,0x00f861d1,0x01159afc,0x003d1124,0x00c05a08,0x00c902b1,0x00886265,0x007318a7,0x00a86fa7,0x00a50504,0x00d04a3c,0x00d559c3,0x00cbda0d,0x00adb131,0x009b4446,0x008fcca1,
-0x00710d33,0x00dea9f8,0x00e62531,0x00a6e96b,0x009f2e8b,0x008cdb51,0x00b5352a,0x007bccfe,0x0175e8fa,0x01c88f3e,0x015255a0,0x01a46b6c,0x015babfa,0x00b711dd,0x00a6f124,0x00add887,0x00f75697,0x0128ec60,0x014856fa,0x01487c4a,0x013496b6,0x012e4cea,0x00fcf41a,0x00e9dd58,0x00d56100,
-0x00a1c841,0x009fb9bf,0x00698fba,0x006d1668,0x003b341b,0x0075bb33,0x00b4c4ee,0x005994d8,0x00518c06,0x008c529e,0x0049c923,0x006acf67,0x00ff565f,0x00c270b2,0x009e922a,0x00a7c523,0x0066f234,0x005e8726,0x0002c041,0x017bb686,0x021a9558,0x019201d4,0x02113600,0x01b07f54,0x009f0cd5,
-0x006b2eb6,0x00809a13,0x01026750,0x017e732a,0x01c76e16,0x01cb65f6,0x019fa892,0x015ea5ee,0x012b0a2e,0x00d8a078,0x00eb3949,0x00aa7a7a,0x00a74e78,0x006ad4ae,0x0031a26a,0x0004fbe2,0x0016f36c,0x0090f733,0x004fd7c8,0x003619d2,0x005690ae,0xfffee001,0x005ce85b,0x01439644,0x00fa16de,
-0x00038fae,0x00e38884,0x012af634,0x01a9a9fa,0x0233bb2c,0x02285364,0x02169a38,0x02396da0,0x018845ca,0x0111aaf0,0x00b82bfc,0x00cd4245,0x009839e0,0x002d6c83,0x0051449c,0x005a7f17,0x00699e70,0x00d2a227,0x01459afe,0x01502a58,0x011021aa,0x011ed500,0x00bcd6cf,0x00968840,0x006e74d9,
-0x0024ad4a,0x003cd930,0x002dc8ae,0xffed95f3,0x001598a5,0x0051ed00,0x00aff537,0x00ce4532,0x007fd283,0xffe44a84,0xfff32850,0x0091c43c,0x0246d074,0x00528b07,0xffa3838e,0xff69fd77,0xff3244fb,0xff9f3b0b,0x00b7ce2a,0x0085dca1,0x00821510,0x007d8f50,0x0044b608,0x00286314,0x0052e36e,
-0x00795113,0x00e43b2f,0x01884392,0x014250d4,0x00ffc71a,0x00c1599f,0x0024647b,0x003077cf,0x0073c0ca,0x005e9109,0x0057e7db,0x00308dd2,0xffff1763,0xffed63f4,0x00031971,0x0023323e,0x0008c825,0xffe035f0,0xffe887e6,0x001f9153,0x003591cc,0x0012fa53,0xfff57509,0x0006f63f,0x00173541,
-0x00dc0262,0x025f4d88,0x03639798,0x03a77978,0x02f01740,0x01de1408,0x01064e9a,0x00bfe6b1,0x011557e0,0x017d2040,0x01e2b8cc,0x014a3c56,0x00b6ccde,0x00412c04,0x0060099a,0x00983734,0x01443fc4,0x00a0d3a2,0x0053578d,0x008ae211,0x006b3a02,0x0038ce2b,0x0019f7e1,0x002897cf,0x00105594,
-0x00094f86,0xffd417e9,0xffc1e40d,0xffca8140,0xffa6463e,0xff662807,0xff4ac1a0,0xffe9ca4a,0xfe701360,0xffdf1058,0x019ec4a6,0x02537b64,0x029b4570,0x01c4f750,0x010b212e,0x0002a852,0x005accf3,0x0070df08,0x008f39a2,0x004f3177,0x0030d066,0x00452572,0x006bdaf7,0x00af189c,0x00b0854f,
-0x00d6737e,0x00a6c403,0x009675e2,0x002015de,0x0019216a,0x00213487,0x00190b94,0x002fa8a2,0x0034e520,0x0004aefc,0x00064e76,0x0010daac,0xfff2a5cf,0xffd07a39,0xffd3dad6,0xffc78b02,0xff75d9fc,0xfea893a2,0xfe5b8036,0xff1164e9,0xfef1baa6,0xff7a0012,0xffdeffe5,0x00c62a7e,0x01821b8c,
-0x01be6b88,0x0157d7c4,0x011760f4,0x00f99bb0,0x0144b9e2,0x00a7e4ec,0x005c7e9c,0x0079f6fc,0x0016353b,0xffde6f1e,0xffcf177d,0x001f06c3,0x004fd260,0x007e38c0,0x0016a21b,0x002db956,0x0053e67b,0x00252ac7,0x0014b861,0x0009ab12,0x002a8429,0x00332464,0x00079aab,0xffd7ff70,0xffbfce11,
-0xffb9dbba,0xffd0b43e,0x0013c4b1,0x005433e9,0x004c739c,0x01c94870,0x0288c8e8,0x0228dbc8,0x012b2556,0x001c3286,0xff603fda,0xff3b7754,0xffa4c848,0xff7b127a,0xff6a0f92,0xff4bc1c5,0xffd50ecf,0x0024f7da,0x003ce5a2,0x0043437b,0x003fd99e,0x000b2e5a,0xfffd0c68,0xffe37c89,0xffd3b9e4,
-0xffc15c11,0xffd71db1,0x000728c5,0x0047f483,0x0067392c,0x00799bee,0x009383dc,0x00a6bd0e,0x00bb6f08,0x01281150,0x0166ae30,0x018c7920,0x016c2a50,0x019ca122,0x01e1f59c,0x023542f0,0x01769f78,0x0171a084,0x012fd02c,0x01143de6,0x00fb311e,0x00af9b7e,0x00461c08,0xffd83b93,0xffab09ab,
-0xff874a9c,0xff442f3d,0xff3b0497,0xff262dc5,0xff13b9fb,0xff28e931,0xff3a616c,0xff4dc984,0xff84ff5f,0xffb08e88,0xffedca23,0x00189aaf,0x0028ce1a,0x00440eb6,0x0057fc5e,0x005d4863,0x007d23c8,0x00944da4,0x00d4b9f7,0x00fa7ef6,0x010bca26,0x012304aa,0x01529e28,0x015c101e,0x016a3560,
-0x01669f02,0x01791d96,0x00c41cfe,0x010a2442,0x00fba1ff,0x00feae2a,0x00f84601,0x00f6fee1,0x0102f6bc,0x010da49e,0x00dd510a,0x00a75cc4,0x0079a5c0,0x00477968,0x001a74a6,0xffee179b,0xfff8549b,0xfffc86d3,0xfffc8416,0xffffe116,0xfff5519d,0x0007313c,0x001957b1,0x003af15c,0x006b01c1,
-0x0065fb36,0x008cbec5,0x00b62cf2,0x00c88e81,0x00ebb0d9,0x00f48ed2,0x010f0126,0x011291da,0x0123ac4c,0x011e13e2,0x0107265c,0x010d7c10,0x010a5e68,0x0123cc66,0x00e39eef,0x00de1d39,0x00e48c3d,0x00e40a86,0x00e85d03,0x00e7941d,0x00f06202,0x00d63b7f,0x00c778b6,0x00b760be,0x00a5e9fd,
-0x00954589,0x007b80ae,0x0085971a,0x0088a65a,0x008ce2d2,0x009213c2,0x0094a6b1,0x0090172d,0x00e009b4,0x00c8d4e8,0x005b0544,0x00fb63ad,0x00e0695b,0x0060e91a,0x007045ae,0x007bb5df,0x0087d31c,0x009a1089,0x00a7cf67,0x00b8af5a,0x010aff72,0x012c7eb2,0x009397ad,0x00f9ec9b,0x00fc198e,
-0xff8c2304,0xffd254b5,0xff5d4bb4,0xffa03bb6,0xff8f8383,0xff9bfeca,0xff86a266,0xff7bd641,0xff6bb4cf,0xff786b7a,0xff75da88,0xff65f78c,0xff6ba2dd,0xff6e45ff,0xff70f400,0xff7b56ee,0xff8119bd,0xff839035,0xff884dd9,0xffa4168c,0xff73e900,0xffe6ff45,0x007faf78,0x01795666,0xffa79af6,
-0x00607c20,0x0154d18c,0x01525b0a,0x015136b8,0x0146f1c0,0x01419a2e,0x013e119e,0x01398716,0x00555283,0xff8d79a5,0x017bec80,0x0083058c,0x00c5f457,0xff70e658,0xff9edcfb,0xff90bbae,0xff9b88de,0xff670884,0xff4c13cc,0xff24db4c,0xff45a206,0xff3cb9d5,0xff0f011f,0xff165944,0xff171858,
-0xff21c5a0,0xff3c2d73,0xff4f10b5,0xff551560,0xff71b3d1,0xff8e92a6,0xffa20c5f,0x00db9fea,0x00064346,0xffef8d20,0x0013ce10,0x00207a65,0xffc88d54,0xffc765bd,0xffb89c63,0x0007befe,0xffb915c2,0xffb454cc,0xfffd9084,0xffc64f57,0x0024aa64,0x0061dfbb,0xffc39c82,0xfff763cb,0xff868dd0,
-0xff85d983,0xff9e30b1,0xffb0188b,0xff5bc6f8,0xff15e7c8,0xfebaf8a6,0xfeffb35a,0xfeee26e8,0xfe9847a6,0xfea54d7a,0xfeb02100,0xfec86268,0xfef8f026,0xff1e7547,0xff28caa1,0xff694581,0xff7fbf7d,0x00125b80,0x006bdf3a,0x0056778d,0x002c31f1,0x00110e88,0x0037fd9a,0xffe44ea4,0x002d0ae3,
-0xffe615dc,0x0064ca75,0x0009488c,0x002b668b,0x003268ab,0x0006e8ca,0x0012b99d,0x00c2fbf9,0x0005897b,0x0047c611,0xffbc8556,0xffcf6e8d,0xffb2fd58,0xffb164cf,0xff37c982,0xfee2440e,0xfe50b05c,0xfebb6d4c,0xfe9c5a56,0xfe10158c,0xfe0f7db6,0xfe0103aa,0xfe26fa30,0xfe7433d2,0xfeb769a0,
-0xfed9c8a2,0xff3b4015,0xff9206c1,0x0022c6e0,0x00d77c5a,0x0075692c,0x0093cac8,0x00458c08,0x0035360d,0x001837a8,0xffebcafd,0x002cfcde,0x00915bbd,0x0041aa3e,0x0020e215,0x0059386c,0xffd74637,0x001b0e2b,0x01338304,0x004bba45,0xff77a32a,0xfef38d46,0xfebcabda,0xff526ee1,0x0049f15d,
-0xff529fc9,0xfed7b9d6,0xfea30c4e,0xfedf58aa,0xfef6523c,0xfea5aca2,0xff3913b9,0xff83bb6e,0xffd3fcd4,0xffb251b7,0xff9869e6,0xff58c0cb,0xff5e1a62,0xff57a91a,0x00001697,0x00d528db,0x006eb123,0x00614ee6,0x005c22df,0x005c650e,0x002e92f0,0x00303588,0x001a2577,0xffe2c8e4,0xfff3d2ee,
-0x0040b248,0x00980607,0x00a10104,0x004cd01b,0xff936c2b,0xff58cd52,0xfff72e66,0x01220dae,0xffb8756e,0xff0a306e,0xff42026c,0xfe7e5930,0xfeeb81e2,0x006fd32a,0xfff56ed8,0xfff37f1a,0x0053f0dc,0x00481e36,0x000a8dca,0xffae395d,0xff28fb75,0xfec24780,0xfe5990b2,0xff016e22,0xff55fc11,
-0x0017a508,0x003edb31,0x0025ece5,0x004224b7,0x00165f28,0x000b95e5,0x00223e1e,0xfffcda30,0xfff0d462,0x00035273,0x001d1d99,0x00067910,0xffca12c7,0xffddb43b,0xffa0f977,0xffd4c909,0xff310e53,0xfff372a5,0xff965cb2,0xff8a0855,0xff3fa432,0xfde5229c,0xfe0a7022,0xfdbea61c,0xfdb31eb4,
-0xfe475b5c,0xfebc0a06,0xfef441b8,0xfe099ee8,0xfdca4700,0xfe36a902,0xfe8c2dbe,0xff31ae9b,0xffe0e4a4,0x0021feb5,0x000cd80c,0x00584286,0xfff7b434,0xffde11d5,0x00502bc4,0x002db19e,0x0017ec27,0x000cc2cb,0x0015ee23,0xfff93551,0xffef72bb,0xffbbe98d,0xffb0aacc,0xffbef351,0xff7729f8,
-0xff4f1410,0xff6dd6bd,0xffce77f9,0xfef0dfca,0x00254e1c,0xff4d32ed,0xfe36698c,0xfc447610,0xfcaea470,0xfd7af940,0xfebf7084,0xff34ad70,0xff635c5a,0xff8c92c5,0xff3558bf,0xff2c00fa,0xff8ff618,0xff5bd71f,0xff38963b,0xff11d907,0xff5dc3aa,0xffa91b87,0x000b3840,0x00545e12,0x000f5072,
-0x00034c09,0x000d260a,0x001aefad,0x00263226,0xfffbdbd9,0xfff0f188,0x000b0cba,0xfffb666d,0xffd4066d,0xffc7e841,0xffc78ff5,0xff331b1a,0xfed99938,0xfe80e7a0,0xff1ab207,0xfc951114,0xfb079c48,0xfbc0c840,0xfce7dbf0,0xfd6ed0ac,0xfdd35f40,0xfe3951ea,0xfeab9ba4,0xfeccb198,0xfe940db4,
-0xfedcb5fa,0xfee67b74,0xff0252c8,0xff52313e,0xff98bd19,0xffb5081e,0x002bc2ba,0x00275dc9,0xfffdc3c9,0xffeb4ca8,0xffc8cf05,0x003d3bfe,0x001080a6,0xfffc7acf,0xfff50a78,0x00230994,0x001499c3,0xffd5efca,0xff84dc07,0xff72cd0b,0xff7455cd,0xff5bfb5b,0xff8f013a,0x00253f23,0xff09ff39,
-0x0263d85c,0x00efefcd,0xffc10b09,0xff31e17d,0xfe3ca9d2,0xfdf32a08,0xfde4dadc,0xfdd0581c,0xfecdbd92,0xff4e76ae,0xff62e144,0xff745969,0xff6cc5bd,0xff644a79,0xff55005b,0xff5aba74,0xff520f2e,0xff6786bd,0xff939118,0xfff3a1fc,0xffdcbb66,0xffd45f49,0xfff5a2fc,0x0006f14e,0x0031a7a9,
-0x003bf384,0x005369a1,0x007c4f0c,0x008a0470,0x00eb4be2,0x011c7270,0x0129bc8a,0x0127ad5c,0x01123210,0x016865e6,0x01254616,0x00e46eac,0x00b286b5,0x003205d9,0x00020883,0xffa650bc,0xff36dd23,0xfeaf416e,0xfe0f35be,0xfe1c431c,0xfe152a40,0xfe1c8220,0xfe5856b4,0xfe95adee,0xfed7895a,
-0xfedd7dba,0xfee7ac0c,0xfeee4930,0xff0abd03,0xff0b4231,0xff3a304e,0xffab372e,0xffe95026,0x001cbce1,0x0039ec89,0x006d828d,0x007f222f,0x00bc1b75,0x009d76a4,0x00e7425f,0x00daced4,0x0114b8d2,0x011939bc,0x012ac094,0x01459ece,0x01772b4e,0x011f55d8,0x012f3f20,0x0047e118,0x002c43c2,
-0x0000317d,0xffdb140a,0xffb36714,0xff9bfa13,0xff7af83b,0xff93a787,0xff9fd63b,0xffa7766b,0xffaec26c,0xffae9f03,0xffaf881c,0xffbafc9a,0xffc9ca7d,0xffd5aaaf,0xffe1b6fd,0xfffa3f6b,0xffe677a8,0x0025472e,0xffd25ce2,0xffc74252,0xfffde0ca,0x0005eeff,0xffd74b33,0xffe89be5,0x0002c54d,
-0x004c17d9,0x003e9580,0x005735b5,0x00a230cb,0x008cc77f,0x00b5101c,0x00961cfe,0x0058b79a,0x0040130c,0xffd8b414,0xfff7fddd,0xffe2820e,0xffd8d304,0xffce2d4f,0xffc15dac,0xffacc714,0xffb3ffaf,0xffb5d6a9,0xffba7c1b,0xffbb8126,0xffbe7ff8,0xffbfd5ca,0xffc7f1a6,0xffcdc6cf,0xffd5880e,
-0xffd7d526,0xffe37226,0xffd95103,0x001356ef,0x007f2ecc,0x0142f824,0xfff0ba07,0x007e82cc,0x015c6606,0x01632672,0x015f9bda,0x015296b4,0x015fe9d2,0x01622d7a,0x0163f3d8,0x00b34fdb,0x00151c51,0x0173d13c,0x00c11f3c,0xffd6df98,0x00d64f91,0x0038f79a,0x010971f6,0x00b22f42,0x00c4600e,
-0x00afda90,0x00d67188,0x00dfb768,0x00d84c8d,0x00dfe804,0x00d8b021,0x00c264c1,0x00bfc2d6,0x00be5c9a,0x00bf8554,0x00d13700,0x00d7de21,0x00d84209,0x00d9d3ed,0x00c699e0,0x0112c660,0x003e4471,0xffa12b78,0xfeef9e8c,0x006ed44f,0xffa5ef3d,0xfefa2800,0xfef821b6,0xfefd980e,0xff25aef5,
-0xff0136f4,0xfefeb03e,0xff121bb8,0xffabe40e,0x008c4626,0xff18d48e,0xff8cc992,0xff80c8de,0x00f9913b,0x00c88e2b,0x00aaaffe,0x00861ada,0x00db9f7a,0x00fd682e,0x00ed8673,0x0113aa6c,0x0103475e,0x00c3d01c,0x00b7ecb7,0x00b68b38,0x00c4ee9a,0x00fac615,0x010f7782,0x0110dd0c,0x0101f5d4,
-0x010af48e,0x00ff6d27,0xffad67c9,0x00944630,0x0065cecd,0x004a3703,0x002aa9b7,0x006ae090,0x008404cc,0x008f0655,0x005d356e,0x0099ea8e,0x00a3e030,0x00660462,0x00654e45,0x00251f30,0x0077f324,0x00d480bf,0x0040cd82,0x00b9d750,0x00de9e52,0x00af9f24,0x0073e612,0x010c012a,0x013aab22,
-0x01268862,0x0161fe18,0x01393248,0x00cb6afa,0x00a22fa8,0x00993778,0x00abb1b2,0x010dcce0,0x01371630,0x013d5e54,0x0122dc0a,0x014f66d6,0x00de9131,0x0070469c,0x008a7feb,0x005ed4bc,0x006e1358,0x001a9402,0x0058064e,0x000c6056,0x0094c927,0x004fb998,0x006aa59c,0x001b555d,0x00680340,
-0x001dd324,0x003861e6,0x00a59e40,0x008d4552,0x0073b619,0x00faaa06,0x00d7f5b0,0x004c9528,0xffddc328,0x00b22f3b,0x01263dbc,0x0116cace,0x0188e1b6,0x016b97a2,0x00b8bb01,0x00749495,0x005f04ea,0x009eef70,0x014bd7ec,0x0195e758,0x019ec586,0x016ef37c,0x01834558,0x012dbbac,0x00847cc4,
-0x0106164e,0x0058879e,0x0098fbd8,0x007c492e,0x004fd7b7,0x001edb45,0x002a023f,0x00bc3455,0x00508ce1,0x004ed810,0x00652d38,0x00087c4c,0x004ec2e0,0x0154c650,0x0114fdb0,0xff260342,0x009f0731,0x0155a424,0x01d97acc,0x02ab32d8,0x0210345c,0x01b00772,0x01a8dc34,0x01de1f6a,0x01a37c7a,
-0x00e622ef,0x016a3306,0x013c3cd6,0x008e205b,0x00825e4c,0x008563be,0x01056c3e,0x00ee5601,0x0153f55a,0x010ead24,0x0063291a,0x00f423a7,0x0096f9b9,0x00966494,0x006f47fb,0x002f29d7,0x0042ad74,0x0028c5d9,0xffe9d57b,0x0010f532,0x006746e6,0x00b69c63,0x00cca024,0x00329b8f,0xff5ff675,
-0xff2bbe64,0x0033d566,0x021ccce4,0x00b1504f,0xff9ddb45,0xff4595f6,0xff279f02,0xff8fe768,0x0090cab3,0x0066c742,0x00701da0,0x00bb674f,0x005ea5c9,0x0032642c,0x00634710,0x0094f79b,0x00d791e5,0x01349200,0x00ecab54,0x00f16d0d,0x00833d4c,0x001387e1,0x00418617,0x005cd5b8,0x00740f78,
-0x0058cc6e,0x003af24f,0x000f610b,0x0003aefe,0x002217d9,0x00454b57,0x001b049e,0xfffdf9bf,0xffc42ddd,0x000035cb,0x0034c3b8,0x0025b122,0xffafaded,0xfff1f943,0xffe74581,0x0064513c,0x016f9a12,0x02113f14,0x02639960,0x0280d1b4,0x0221095c,0x0198f666,0x0144eb86,0x014940ec,0x01768ec4,
-0x01a465f6,0x01645c98,0x00f1b7c0,0x005de3c2,0x00846a64,0x00d6bebc,0x00d985fa,0x0064768d,0x00519824,0x005156fe,0x00608783,0x0036ab1e,0x00122c67,0x003a6a85,0x00264b26,0x00009247,0xffd1c618,0xffc96f23,0xffd8c6d6,0xff639306,0xff70c039,0xff518d79,0xffc834cc,0xff3b3c39,0x003c447c,
-0x010755e2,0x0128e4a0,0x01d92bf0,0x010c5190,0x008559cd,0x00352848,0xffccae98,0xffbc6f63,0x000f18d6,0xffda6e29,0xffe5c67a,0x00465c60,0x009bb4f1,0x00d3d46a,0x00dab0ac,0x00ec3c0d,0x00cce40b,0x0057f25b,0x000d1a6a,0x00506abd,0x0048a482,0x003b5683,0x003b3004,0x003bfb5a,0x000f39b1,
-0xffff6dfb,0x002696d6,0x001c8701,0xfffedbca,0x0031eecd,0xffda6d25,0xff9fb1dc,0xff149385,0xff0298b1,0xfda35e64,0xfd8cdf30,0xff1f0702,0xff864760,0x006cfd52,0x008c823a,0x00c20046,0x00e07b16,0x00c1c671,0x00a7f549,0x006c72fe,0x007242e2,0x004fd77f,0x001ccd88,0xffe95fd1,0xffdfe7a3,
-0x00023027,0x002a44f2,0x006d4c2e,0x0078ab16,0xfffc363c,0x0036e3d4,0x00493753,0x001baf1b,0x001e83a6,0x0028a074,0x00323dcb,0x002f21b9,0xffd1ad91,0xffa07672,0xff6e4f17,0xff6af1b4,0xff154b4d,0xff2800d9,0xff6b0866,0xff108131,0x00750b49,0x00d40af7,0x0093c73e,0xffdffc82,0xff847504,
-0xff9c6b07,0xffe62ffc,0x004aaeaf,0x00063b75,0xffd1ffff,0xff8dc088,0xffd8a248,0xfffd897c,0x000da154,0x001b7aa3,0x00366e6d,0x003a3c5e,0x0040b622,0x002547c5,0xffde6854,0xffe3f3c6,0x0003c58f,0x0011ddf2,0x0045f300,0x00578f8f,0x0043b31d,0x00664427,0x00835636,0x00b085c8,0x00f42645,
-0x011ade8c,0x01311424,0x0113ee86,0x01156fde,0x010b5cb6,0x0112af26,0x010e9368,0x012b15ca,0x00ee0231,0x0094d903,0x0041d786,0xffe75bba,0xff811072,0xff232354,0xff25e3a4,0xff2df7da,0xff217dd7,0xff217c75,0xff1b70a2,0xff142162,0xff251ebd,0xff2de6d5,0xff3ec30d,0xff637864,0xffaca699,
-0xffb1689e,0xff9e9256,0xffe62adb,0x001edaf8,0x004c4d41,0x00602d5b,0x00a209a9,0x0097ef01,0x00d3da70,0x00b49a46,0x00e842e3,0x00e5df83,0x011ad8fa,0x012347be,0x01329342,0x013497a8,0x01351536,0x001ccbc5,0x007c15ed,0x00752a01,0x006d7932,0x006fa464,0x00717464,0x007ae500,0x0076e092,
-0x005a718d,0x00332b4d,0x0013c056,0xfff0138e,0xffcdf886,0xffa334f6,0xffc3116f,0xffdc0cea,0xfff385c6,0x0005b157,0x00128ac0,0x0037995f,0xfff33ec9,0x002b9008,0x0024b83e,0x00135153,0x0008fe3f,0x0024a213,0x0047a88f,0x00595ea4,0x00521633,0x0090192e,0x00a3b5e6,0x00a7a2f1,0x009eabcb,
-0x0077f880,0x0074a845,0x008a1f35,0x003350dd,0x006b341a,0x00548f60,0x0058ad1b,0x0055184e,0x0050e4bc,0x004bdb4a,0x004e79ce,0x004048b6,0x00378c56,0x002cde03,0x00216d80,0x001763c6,0x0003d630,0x00133522,0x0019d168,0x002270c9,0x002d832f,0x00300c5a,0x004ccae0,0x001f514c,0xffd9de1b,
-0xff97e654,0x00329daf,0xffdaaca2,0xff84523f,0xff9057f8,0xffa125b5,0xffbb22a2,0xffbb61ef,0xffc95df0,0xffdf4816,0x0000e2d0,0x00508945,0xffcf0c3a,0xffefb642,0x004c62f9,0xffdafada,0x0094ccfb,0xff95f19e,0xffe80d1c,0xffdfe703,0xffe88576,0xffe49248,0xffdcfd44,0xffc8ebdc,0xffd270c6,
-0xffcd6a95,0xffbc14a8,0xffc12539,0xffc27b5f,0xffc39b29,0xffcb8215,0xffd00f77,0xffd1c7a8,0xffd71e4c,0xffea202b,0xffaea8e1,0x00a02148,0x011176fa,0x013ba61c,0x005b82d7,0x00fc5754,0x012f1868,0x013f79fe,0x0141b1de,0x01281a3a,0x01452f26,0x01484b3c,0x01416e7a,0x00f486cb,0x003db463,
-0x014b780c,0x01224190,0x013e7ede,0xffe26307,0xffdcbece,0xfff0cdaf,0xfff54a15,0xfff8de3c,0xffeeaa50,0xffb97388,0xffcef1f2,0xffba6720,0xff85aced,0xff87f36d,0xff83b03c,0xff8a73ad,0xffa381d1,0xffb9da0f,0xffc1164f,0xffe3b760,0xffde2802,0x001d4076,0x012463ae,0x004b3039,0x0063b491,
-0x0054ba15,0x00678ab1,0x0030b74a,0x0023ef31,0x0038ae0b,0x008152a1,0x002b9525,0x00015a90,0x004298be,0x0018dea0,0x0073a777,0x00c150e5,0x00295b98,0x00b03ce3,0xfffb1d87,0xffc77b89,0x0017e5ed,0x000e9cb1,0x001f4c92,0xfffa92c9,0xff8ab5f9,0xffbdc8cf,0xff97d4b5,0xff41974e,0xff4a69db,
-0xff4abe0a,0xff5f1e96,0xff80410f,0xffa6b711,0xffab590d,0xffe3bc99,0xffd04ee0,0x0079b53d,0x00d3d4bb,0x0092f5bc,0x005b7830,0x00427ed0,0x00774a8e,0x00153172,0x006cdf03,0xffffc911,0x009af8ae,0x00202060,0x006f1674,0x0057875d,0x003b70f4,0x0049d941,0x00f3d655,0x0073633e,0x00fb26cc,
-0x00240d24,0xfff405d6,0x0019de02,0x0006dc52,0x003d1073,0x003b6101,0xff898fab,0xffc983c3,0xff885c98,0xfee5d28a,0xfee175ce,0xfec95adc,0xfeef1f68,0xff3fb611,0xff82a6cd,0xffa0560b,0xfff63f65,0xfff9d46a,0x00a596ad,0x011cb83e,0x0067e20c,0x009792a5,0x00420b4b,0x0034b1ad,0x000d1023,
-0xffff79e9,0x003bab82,0x007b8f70,0x00518740,0x00214f5f,0x00413e7f,0xffd874cd,0x004acdfe,0x0131ee4e,0x00ba7c0c,0x0051bfd5,0xffb0e19b,0xff5a72e7,0x0031cd00,0x0119672e,0x001a53e1,0xff8d46a5,0xff402dad,0xff7bca5d,0xff5574eb,0xfe90fb10,0xff6dc966,0xffa63508,0xff78080d,0xffa110f6,
-0xffa5df24,0xff474a17,0xff7ac5a1,0xff70e674,0x007cde89,0x0104a356,0x00455a1b,0x007c4f6a,0x0071ee00,0x00821db6,0x003b30bd,0x00329a1a,0x0018222b,0xffd9345b,0x0012bfe1,0x00752cf9,0x00d85087,0x00c133f9,0x006d3852,0xff99184b,0xffdc877b,0x009a68c8,0x00c15cfa,0xff0c8593,0xfef4509c,
-0xff2dccbc,0xff6f9b1d,0xfffc1b0f,0x00d36dc8,0x0049fcfb,0x001bbb7b,0x004a7363,0x00773df1,0x0061cc3f,0x00330233,0xffd1d81a,0xff9961d9,0xff635bdd,0xffeb2f91,0xffdc11fb,0x0061e42d,0x0091f6d3,0x006b916d,0x007dd6cb,0x00276ce5,0x000702cb,0x0028c49f,0x000a2f43,0x00089c90,0x002adc24,
-0x002dea9a,0x0010c8dd,0xffcf35e1,0xffc0fecb,0xffb0ded6,0x004acac7,0xffbfadbb,0xfffe06e3,0xffc6ae87,0xff9b613e,0xffb1db1c,0xff7c2e78,0xffabc69a,0xff7fda7a,0xff9cdb3c,0xff30b821,0xff23d45a,0xff548bb5,0xfeae7c16,0xfead3e86,0xff19d718,0xff487fad,0xffb3636f,0x000b62b1,0x005a65ef,
-0x000ae385,0x00409c2d,0x0046594e,0x000619ae,0x0062c765,0x005d0720,0x003083e2,0x000ea653,0x00277ef3,0x000ac653,0xfff24762,0xffca535d,0xffcd5b2e,0xfffb44e3,0xff9a6e33,0xff79dd7c,0xffd33a9f,0xffcf919e,0xffb4e07e,0x003513d1,0xfffffdb4,0xffe34089,0xff03f1a1,0xff1417c2,0xff1c9b29,
-0xff1a675d,0xffae46fb,0xfffa0924,0x00537f0a,0x0014acbe,0xfffff30f,0x0022ffaa,0x00214963,0x00008ed7,0xffc76196,0xfffb474b,0xfffa57b7,0x001d2a54,0x009282e4,0x00625bbc,0x0047090e,0x0047f30d,0x003a33ab,0x0033edbc,0x00025ad3,0x000882b5,0x002920e8,0x001ecc9b,0xfffb0c98,0x000e7f12,
-0xffd5069f,0xff6cebcb,0xff5d33ed,0xff2ef3a2,0xff008cdb,0xfe0d36e8,0xfdf531dc,0xfe5b2eb8,0xfe74684e,0xfeae7378,0xfecaa8be,0xff007df8,0xff903467,0xffc2b549,0xff9448c5,0xffe97633,0xffe5fc67,0xffb11267,0xffd0a17c,0xffee91bd,0xfff72d46,0x00445c36,0x003eec1f,0x002c591e,0x0053d7d9,
-0x000e61f9,0x00395d03,0x001bde20,0x0016a581,0x0022898b,0x00311173,0x0000ef62,0xffd52e88,0xff7ee21a,0xff766deb,0xff8e16b1,0xff1ff34a,0xff2cd637,0xffa1de95,0xff142a83,0x0145f35a,0x0028fc65,0xfef9c988,0xfedc4168,0xfe9e32fc,0xfebb9c30,0xfee54396,0xff1b9dca,0xff612982,0xff76c24b,
-0xff5a379f,0xff78fa10,0xff903b50,0xff9a91a0,0xffaf9d9c,0xffb8ce48,0xffc8dac0,0xffc8e373,0xffcf2afc,0xfff626cd,0xfff59980,0x000be9fa,0x0067368e,0x0047b6d1,0x00417dc9,0x003944b1,0x0043b6e3,0x006b22be,0x00569243,0x00961a70,0x00bc3bc1,0x00ceebf9,0x00d20a27,0x00b64c15,0x00b756d9,
-0x008f1526,0x010a979c,0x0099fcfe,0xfff611e2,0xffc26522,0xff3f585e,0xfefa8a78,0xfe9cb2ba,0xfe356154,0xfe72501e,0xfea0a296,0xfecea6d4,0xfed55e54,0xfedd7810,0xfee9ec74,0xfef54738,0xff02eda5,0xff0c8c33,0xff376eed,0xff46fa56,0xff8f2fa2,0xffddeaa9,0xfff6299c,0x000d828c,0x002ed135,
-0x0072659e,0x0084aa0e,0x00bd331e,0x009290b3,0x00ea16e0,0x00c3efb7,0x00ff8139,0x00fa7a09,0x01185a28,0x014dd60c,0x018d4e8e,0x0122dd86,0x00bae352,0x000acbda,0xffe4ae5b,0xffcbab06,0xffab3b6c,0xff8d6ba3,0xff736c28,0xff4fd8fe,0xff532750,0xff4753f5,0xff45988d,0xff48a8a2,0xff53fad6,
-0xff6026a1,0xff77b727,0xff8ddc2a,0xff9e6b41,0xffb2ed2d,0xffc10e5a,0xffcba17a,0x003889e4,0xffe3f249,0xfff486a0,0x0007e142,0x0016a394,0xfff3b340,0xfff16e4b,0x0010f598,0x004ab281,0x00276e4a,0x002097cb,0x005ad3d3,0x003fa5b8,0x0058f576,0x004e5df5,0x000baef2,0x00251eb8,0xff95536e,
-0xffb0045f,0xff9cfc03,0xff924e48,0xff84badd,0xff777dd5,0xff662872,0xff69d1ab,0xff6bc35d,0xff6ce4e6,0xff6db7c8,0xff6c373e,0xff67d5aa,0xff714c00,0xff793d86,0xff82fa68,0xff898844,0xff97fde7,0xff81ce2b,0x0006c3a5,0x0061c8a5,0x00aba52a,0xfff06850,0x006e942e,0x00b89004,0x00c361af,
-0x00c07435,0x00ae9c49,0x00c63a9c,0x00ca5198,0x00c96e28,0x007e7edf,0x00002de4,0x00bc148e,0x008730fa,0xff7f3498,0x0052ab80,0xffa1aff1,0x0081a19d,0x004b47b8,0x004cc658,0x00425ba0,0x0042fd97,0x0042d221,0x00447fb3,0x0048cf98,0x0046e6c3,0x003ce76c,0x003bc14f,0x003a64cd,0x00388df6,
-0x0048c8a0,0x004fa497,0x00514ae3,0x00534183,0x00515d78,0x0087d07c,0xffa7a99a,0xff6f93e0,0xffb552f8,0xffc1c7f4,0xff659be8,0xffa93065,0xff9c8a46,0xff9bfc27,0xffb6edb3,0xff8dc1e0,0xff883882,0xff8f37d0,0xff67fc5d,0xffd27d11,0xffc488d6,0xff5d27cc,0xff92c1c3,0x004cd52f,0x0067c18b,
-0x00398b9d,0x0028c4c2,0x001b01d2,0x001d3e69,0x002948f8,0x003ec9d5,0x003d5f81,0x001aa69c,0x001af032,0x001c86c5,0x001f325d,0x004935c6,0x0055b619,0x0059442f,0x00541fba,0x007b2f06,0x00603238,0xffc297cd,0x0037b683,0xfff8563b,0x00065f2e,0xfff17809,0xfffe3a09,0x0024c6c0,0x0012a0d8,
-0xffe72b2b,0x00234649,0x003f5472,0x000f42de,0x0007e38e,0xffeb9624,0x00143de1,0x004e8a42,0xffdb9c39,0x0044e3ef,0x00921841,0x004d10a8,0x0037018e,0x0009f03b,0xfff463f0,0x0017c02d,0x00300ba6,0x00276cf8,0xfff7809b,0xffe71254,0xffdfbc5c,0xffd59858,0x002e1e99,0x0053d784,0x005dc92c,
-0x0062d33e,0x00a340bf,0x00749f30,0x0014a227,0x0037b987,0x0026d5fd,0x001fada2,0xffe9e781,0x00149571,0x0001bf02,0x006ae887,0x000aa6ea,0x005a447e,0x0005a2d6,0x002a9767,0xfff2c7f2,0xfffc3987,0x004ac6a9,0x00204cb3,0x002c17ef,0x00784560,0x00a647d4,0x001bfb0c,0xffec4772,0xff93cf53,
-0xff9490e0,0xffcfbe38,0x0003381d,0x000dfd49,0xffb8ffb5,0xff97e27b,0xff7d82d2,0xff8db0b0,0x0010ae84,0x00468442,0x005a1e38,0x0064c8ca,0x00cf36c2,0x00cdd74b,0x006bd5a0,0x00caff3d,0x003b889f,0x00639b41,0x00636994,0x00409dcc,0x0025e7ca,0x003eb830,0x00b56d2e,0x00579d15,0x00526e13,
-0x004ecb4a,0xfffac5bb,0x00257168,0x0106e262,0x00ad62bc,0xfedd2abc,0xffe55386,0x00b800f0,0x01115d5e,0x01d936ca,0x00c539e5,0x002fc59f,0x001528c4,0x00948d22,0x00aa4f13,0x00257b83,0x013715e6,0x014a1c6a,0x00a5343e,0x006cdc77,0x00592de6,0x00d7eda3,0x0073c955,0x0081b5db,0x0031d767,
-0xffebc86a,0x007b3e55,0x005c0e00,0x007438e1,0x0066d676,0x00396674,0x00382968,0x001a1724,0xffe12f24,0x00178704,0x00815767,0x00b32441,0x009b0274,0xffe6ca4a,0xff00de1b,0xfece6dfc,0x000617aa,0x00b924a0,0x001daa0c,0xff4800be,0xff17f7ff,0xfef99f08,0xff44dddd,0xffe6b892,0x00110544,
-0x0031d19f,0x0024120e,0x004fb18b,0x003853dd,0xfffb688a,0x001449fd,0x001082b5,0xfff90811,0x0017b710,0x00632792,0x002c982a,0x00356c33,0x005620fe,0x00476115,0x005f2751,0x003a80f1,0x00337f3b,0x001a2345,0x0019dbe1,0x003b1f60,0x003fd698,0x000b6ae6,0xffe0511f,0xffac03e9,0xfff52c91,
-0x0022bb33,0x003e8872,0xffbfb854,0xffcf5172,0xffa3e628,0xff961123,0xff4c343e,0xff8b53db,0xffd749c9,0x00769c43,0x00fefa2e,0x00fe2ab5,0x00983d46,0x004f431f,0x00296b67,0x00224538,0x00590bdd,0x006a9f60,0x00494fdf,0x008ad58e,0x00c09c69,0x003461c5,0x00021195,0x0027f5ff,0x001c33e5,
-0x00422e98,0x0024060f,0x0010d9f1,0x003196e9,0x002357d3,0x00001e8f,0xffd69110,0xffd619f2,0xfff83cb2,0xff634e0e,0xff93881e,0xff8f237f,0xffc8505c,0xffa142ea,0xff9e563d,0xffb5ca7c,0xff69369e,0xff3b16fb,0xff5d8866,0xff5b7007,0xff872eb8,0xff3195cc,0xff2b38ed,0xff62972c,0xffa23b08,
-0xffc53f4f,0xffde92c3,0x0035f8c5,0x004ac1b1,0x004cfaa7,0x006cfffe,0x00892ee7,0x0035487a,0x002a3740,0x005e24ec,0x0058553b,0x004d6ad0,0x0039fea3,0x003297b6,0x0018faa9,0x00058360,0x002d1299,0x002ce6ee,0x00187483,0x005976ca,0xffce4ae5,0xff9932ec,0xff7fc886,0xff99bd09,0xfde4af00,
-0xfdac5210,0xfe7d715c,0xfe7ea966,0xfea1baac,0xfe9b6360,0xfed70704,0xff414306,0xffbd3116,0xffdc46c8,0xff50a0e0,0xff93ac63,0xffa07eec,0xff8d17cb,0xffbd4e35,0xffe752fa,0x0030b47d,0x003e0890,0x005744ea,0x00309ddd,0xfff8b76d,0x002855ad,0x0040f89d,0x0022f8eb,0x002862a5,0x00304e75,
-0x001cab36,0x0001b16e,0xffa3cbfb,0xff7e8824,0xff5167a7,0xff4cdf32,0xfeeea720,0xfedd56e2,0xff03b2ed,0xfe697546,0xff76fdc9,0xff048dec,0xfed9039e,0xfed5b400,0xff482d9a,0xffae2163,0x001196d1,0x0058fda1,0xfff9f8cf,0xffc54ecf,0xffb10499,0xffbd0e6d,0xffadbf35,0xff909e0b,0xffb02dbe,
-0xffd46098,0x0032a17b,0x003be0ab,0x00385ffd,0xfffad207,0xffeb7657,0x0001ebad,0x000fd490,0x0027daba,0x0042f01c,0x0048c2a1,0x00564637,0x005cb82e,0x0061ce40,0x006810ab,0x007834e6,0x00859017,0x008e3039,0x005adc84,0x000828ca,0xffc2cb76,0x00580a84,0x0059b9f7,0x00209455,0xffb7212b,
-0xff4f543a,0xff0ba5cc,0xfecd2d38,0xfe9ac428,0xfecf4f90,0xfeffd7d4,0xff239882,0xff28392f,0xff33a287,0xff330dd8,0xff4ba488,0xff582f8e,0xff6d603d,0xff8441bc,0xffc5b62c,0xffbee408,0xff9c380b,0xffdb5430,0x000496e8,0x002a6ee5,0x004718fb,0x00771bfe,0x007fa551,0x00a5951d,0x00910778,
-0x00b5ef00,0x00a8ac87,0x00bf6432,0x00b233e9,0x00b679f2,0x00b57d20,0x008c75bf,0xffe6ecf1,0xfff38fc4,0xffeaa97c,0xffd501e8,0xffcd229a,0xffc37a68,0xffb81173,0xff98044c,0xff99a622,0xff8d7063,0xff8a2f9b,0xff851ebd,0xff7e46c8,0xff6f04e3,0xff877c7d,0xff9dafff,0xffb3de7f,0xffc32fcb,
-0xffd4dbd5,0xffe7b463,0xffc64645,0xffe4ce55,0xffcc8ec0,0xffd6f427,0xffc6988d,0xffcc9f78,0xffe6b64e,0xffdf9ef9,0xffdc7d26,0x00090704,0x0023f922,0x002591bc,0x001dad1c,0x0005f372,0xfffaac9c,0x00072589,0xff83d2cd,0xffe08c82,0xffcd8860,0xffc5f7dc,0xffbec639,0xffb15c1b,0xffa84dd3,
-0xffa108cd,0xffa327f2,0xffa2c34c,0xffa0d057,0xff9ee886,0xff9de968,0xff9888ba,0xffa29cfa,0xffa7a57d,0xffae7e0f,0xffb60b49,0xffba53ee,0xffd30c60,0xff7e4955,0xff5b9f9f,0xff8f89a6,0xff898c71,0xff5b4979,0xff8ac7d0,0xff89d5fd,0xff922bb0,0xffa1595a,0xff95fe5c,0xff99c4db,0xffa5a0a2,
-0xff76ac08,0xff9c5901,0xffb1a137,0xff6f53ee,0xffa97b26,0x00697190,0x00e6c12f,0x00454d5c,0x00612290,0x00686111,0x006228fb,0x00785687,0x00797668,0x006966c8,0x006d5137,0x006696d3,0x0055651e,0x0058e5fb,0x0059a8d4,0x005c2317,0x00621ebc,0x0065142c,0x0064641b,0x00685055,0x006628ef,
-0x00551e98,0x00e98b10,0x00d97111,0x002ce9c8,0x00d10b0d,0x00d53df6,0x00355e58,0x004d383f,0x00530fb9,0x0046b2b1,0x0063b786,0x0068199a,0x00656bee,0x00d57d42,0x00c84d00,0x00455578,0x00e24109,0x00cb7d79,0x008aa507,0x005cc1b0,0x0078bcd3,0x00688fc5,0x00a7e9f0,0x00b786ca,0x008ff969,
-0x00998836,0x0081ef44,0x0050e73a,0x004cecdd,0x004a1d88,0x00548270,0x006b779e,0x007d1ab5,0x007f0c41,0x009272ef,0x007a2d02,0x00b22b44,0x00b77f56,0x008a59ac,0x00afaac5,0x0073e50d,0x0076643e,0x00833ec5,0x0082f141,0x00ac151b,0x00bb8c29,0x009e01d2,0x006ed390,0x00715bdc,0x00684fcb,
-0x007e2f55,0x00c5e97b,0x0098dbc3,0x00e2ea05,0x007f7290,0x0059032c,0x00a07ea3,0x006e2935,0x00eca9d4,0x01055c42,0x00ac0792,0x00c8b923,0x009a6d1e,0x0048f791,0x004b019a,0x00451ce6,0x005a312c,0x007901d8,0x009689d3,0x00905755,0x00a48bc3,0x008901ca,0x00cc8aeb,0x00e0446c,0x00a7ba8f,
-0x00842557,0x00695367,0x0072b281,0x004522b3,0x0074c533,0x004f8948,0x00995622,0x0051d61f,0x007cee05,0x0062e1fb,0x004e4a2b,0x005e65b3,0x00cbdba2,0x00a93982,0x00feb585,0x0085fd36,0x004b831c,0x007a8cf5,0x003ff6d0,0x010dcd50,0x0165e4b0,0x00f49fdb,0x01107538,0x00d1f98e,0x00321632,
-0x001bfb2e,0x000e8528,0x003ce235,0x0092d4e4,0x00c566bc,0x00cb77ca,0x00ea560f,0x00bd1de1,0x0110d3ae,0x00feea37,0x00893de7,0x008ce6e2,0x005930b9,0x00446bdd,0x000dd420,0x001fd1fc,0x0045dbf5,0x0072b69d,0x006539d3,0x00368f5d,0x0027b9a3,0xfff3a4d8,0x005c06a9,0x00ed7778,0x00e6649b,
-0x00a46df7,0x00beb298,0x00c0c3b4,0x015713a6,0x01e992ca,0x013d9ac0,0x00e5b531,0x00d12598,0x0084b003,0x003a9df9,0xffb0b11a,0x008b419d,0x00944d46,0xffdf0af1,0x001787ff,0x0022d773,0xfff8706e,0x00336cbd,0x003d9bbc,0x00c25ec3,0x00be5511,0x00590ec6,0x00852221,0x007ff687,0x008f3c83,
-0x0049533e,0x0032440f,0x00176af4,0xffdd1f92,0x0040b78b,0x00a99086,0x00e1ec15,0x00aa4843,0x004a61e6,0xff86ae53,0x001bc5a7,0x00f80584,0x001c4490,0xfefc7e1a,0xff3bac09,0xff3bbf0d,0xfff0dfe2,0x004a442d,0x00325330,0x0067c606,0x0050aa07,0xffeca21a,0x0086d024,0x009e6e66,0x0071579e,
-0x00679b9b,0x008aecef,0x00c1de31,0x00f4e499,0x00ad3f2c,0x008853a2,0x00905d46,0x00834174,0x0093ed80,0x0056ee31,0x002d3f34,0x0034978d,0x001699ab,0x00202d41,0x004d7fa2,0x003e4064,0x00113ffb,0xffcb9b9b,0xffe321fa,0x002653ad,0x006d514b,0x00a87058,0xfff31a6e,0xfff30d76,0xffe3f3f1,
-0x004bc2a7,0x0131bee2,0x01a0e180,0x01dc676c,0x01f0a4ca,0x011acea6,0x00878bdb,0x004f4d62,0x007539bd,0x0091af9d,0x009a70c7,0x00a70fcf,0x008c556c,0x00368b4d,0x0089d888,0x005e788a,0x005f45e4,0x006d6788,0x00327e78,0x0058abbc,0x0070f8ee,0x00383792,0x001ad6ab,0x002c71df,0x001ade5e,
-0x0006be62,0xffe478a3,0xfff2b690,0x002956d7,0xffa8b84d,0xffaef8e1,0x001657e1,0xffdc9e69,0xfff6cb30,0xffe3a23c,0x00ceb43b,0x019117fe,0x01dd5ef4,0x01a42236,0x00fa30f8,0xffac9da4,0x000913b3,0x002ae4b5,0x0053e841,0x0094c787,0x009520a5,0x0051f82e,0x00b758ce,0x00ce0828,0x00a8556c,
-0x00b0522e,0x00713f6a,0x0051648b,0x0089db11,0x00809165,0x006df4ed,0x00654d63,0x004b2fa1,0x004049cc,0x000fb6b8,0x001cbe74,0x0035ecbb,0x002f1f58,0x0012f694,0x003b9892,0xffd76f22,0xffb81c2d,0xffb7634b,0xffcbcd1e,0xff1ad580,0xffffc482,0x00de3a2b,0x00cd460d,0x004c6cc8,0x005a516d,
-0x004a4096,0x002e5996,0x00a842a9,0x00d00400,0x00ca8f22,0x00a8c8e9,0x0086b67c,0x00728a72,0x003351c5,0x001fcfe6,0x003534be,0x00654819,0x0062f9ca,0x004bd043,0x007b2ab7,0x00571eaa,0x0048c516,0x0031c9a5,0x002f18ba,0x00435f3a,0x002076ac,0xffea2385,0xffce1f3e,0xff9e041f,0xff9687f4,
-0xffa09114,0xff4c6efe,0xff32754b,0xff2b4385,0xff5b263b,0xffa0d9ec,0xff91e5c1,0xff28ff15,0xff57c086,0xffb23c22,0xffffeaf0,0x0039f602,0x0091b01a,0xffceb273,0xff789861,0xff89a4a7,0xffb99bf7,0xffeebf9c,0x000e82b2,0x0036906e,0x0047b213,0x004f0c8a,0x004dbb94,0x00314d4f,0x000072ae,
-0xfffc97c9,0x00168ef1,0x00718d1d,0x005831ea,0x004b5538,0x00579499,0x0061ba0f,0x00614e19,0x001da629,0x002cc879,0x003e9034,0x0048e83a,0x0071b420,0x00665b14,0x000e815e,0xfff7b912,0x00abd73a,0x0042f3ad,0xffddd405,0xffb65337,0xff597928,0xff4ebcbe,0xff3598e0,0xff2d624f,0xff632595,
-0xff94d961,0xffae2ff2,0xff871c34,0xff664b65,0xff430476,0xff587b99,0xff698fd6,0xff79b4b5,0xffa74452,0xffc6a51c,0x0008fd03,0x0022ac60,0x00184971,0x001a8b77,0x002bab83,0x0050a56b,0x005d5f37,0x00837016,0x0085bd06,0x00ced4ab,0x00a40e8f,0x00b89058,0x00aed0ce,0x00b29c5b,0x00d2208c,
-0x00ea4553,0x00ab6dfc,0x00208802,0x00129998,0xfff1e950,0xffed08f0,0xffdb9101,0xffcdf7af,0xffb9f680,0xff9ca8ff,0xff80d5a4,0xff5cc259,0xff492e04,0xff3bc391,0xff37d5b8,0xff32c12a,0xff488b41,0xff593aa4,0xff669bc9,0xff7638f3,0xff755b57,0xff908be9,0xffe62a50,0xffd9ff17,0x00066924,
-0x000447c8,0x00234480,0x0031c12b,0x002aa809,0x003f4229,0x004ea4fe,0x003c0c5f,0x002d44b3,0x003d4eab,0x002e91ec,0x00247570,0x002bf534,0x000c97db,0x001a583d,0xffc4f723,0xffc55afa,0xffbd7677,0xffb4f143,0xffaa6b6d,0xffa24733,0xff9d8613,0xff9650c1,0xff920f70,0xff8affea,0xff84b515,
-0xff7ce490,0xff70cdbf,0xff7a715b,0xff80c933,0xff87f07a,0xff901245,0xff9ab605,0xff8be919,0xfff91780,0x000cd74c,0xffced28e,0x00093e3f,0x0028594c,0xffd96ec7,0xffe1a968,0xffe42382,0xffdc97c3,0xfff0a4c5,0xfff5cf14,0xfffa181a,0x002b62ee,0x0018debd,0xffd68468,0x00227f33,0xffa0fe3b,
-0xffc99d25,0xff963661,0xffc81cf2,0xffdcc66e,0xffcfbb4d,0xffd15179,0xffb9a560,0xffb15829,0xffb1851a,0xffb40fa8,0xffb528a5,0xffb47b8e,0xffb5fe79,0xffb65e19,0xffb52392,0xffbd9436,0xffc1dfb4,0xffc2aaa5,0xffc5bbe7,0xffd6272d,0xffced4ce,0xff9efac9,0xffeb50d4,0x00c9d05c,0xff882660,
-0xffd4c6bc,0x00ab593c,0x00a53939,0x00a225c3,0x009efe97,0x008f8db4,0x008a7a3d,0x0080c5e3,0xffd150bc,0xff7fd146,0x00bf90ed,0xffe5cf7f,0x00352e47,0xffac73c5,0xffecbd04,0xffcf1e6a,0xffcd3537,0xff88dcf5,0xff71707e,0xff7afe4d,0xff82176a,0xff89229a,0xff81415c,0xff8715c3,0xff89dc20,
-0xff875877,0xff9a05d1,0xff9e7d10,0xff9e1bf0,0xffad1034,0xffd291cd,0xffc86ea1,0x004d1fb0,0xfff9ce73,0xffd9ea42,0xfff32340,0xfff4041c,0xffc54f70,0xffe56243,0xffd0027f,0xffd138a9,0xffd4b5c9,0xffe0b46a,0xffdfee2f,0xffce5f82,0xfff298a6,0xfffef971,0xffd89137,0xffd381f4,0xffcab9f7,
-0x000881e5,0xffec7512,0xffe772da,0xff648c6c,0xff2403f3,0xff3197ec,0xff3852b0,0xff427795,0xff44186a,0xff47bbab,0xff472d25,0xff38e427,0xff643a20,0xff7c2a86,0xff7bcb7a,0xffa8eaef,0xffce12ec,0x000f2319,0x00113c5c,0x0017a1d8,0x001c0840,0xfff24ab8,0xfffa6500,0xffe1d85d,0x00287941,
-0x002bb824,0x000f8454,0x0038ed12,0x001caf52,0x00020adb,0xfff1ec5d,0xffefb5ec,0x0031a53b,0xffe462c4,0x0025391f,0xffe8c53f,0x00319b15,0xfff56c4d,0xffe170ed,0xff124368,0xfebf23b4,0xfedb2300,0xfeea2058,0xff0cd773,0xff00984d,0xfef1c462,0xfedd6ef2,0xfecfcfc8,0xff0a247e,0xff1ff301,
-0xff27a3c2,0xff77bb52,0xffe78f73,0x00491382,0x00861fcd,0x006b8d1b,0x00561644,0x002b5628,0x0033ad1c,0x000edb9f,0x0023362d,0x00549310,0x00873412,0x005c9ace,0x003f008d,0x0025eb53,0xffed437b,0x0009c88b,0x00a7442b,0x00429dbe,0xff5f3aaf,0xff75f65b,0xffdb7bc3,0x00190f88,0x00affe7e,
-0xffa62ae7,0xff272137,0xfefe298c,0xff1ba606,0xff4adccf,0xff411130,0x005e2b4f,0x00a6a8eb,0x004b23a4,0x0023a7c9,0x000f8f60,0x002328af,0xffcec6b9,0xff91bdb3,0xff92e8c0,0xfff7a127,0x0010dca4,0x00353844,0x005295db,0x0067a5d9,0x0051a42f,0x002758b8,0x0008a19b,0xffe12c0f,0x0038e287,
-0x00a18c1a,0x009af9a3,0x005ae372,0xffda03d2,0xff25aab4,0xff20f055,0x003f1d0c,0xff212127,0xff6379ed,0xff31aae6,0xff307ce3,0xfefbc342,0xfefcb94a,0xfefdf95c,0xffcc2ca6,0x000b50f0,0xffaf33c4,0x00464c2c,0x0048ddc4,0xffebef80,0xff9fa1b9,0xff47ddf0,0xfeeb4c1a,0xff7eb3d7,0xffd9399d,
-0xffee3bd3,0x005200cb,0x0054a1cb,0x00419a08,0x004a1778,0x00246c00,0x002d7b8e,0x001759ff,0x0025b0c5,0x00539318,0x00348087,0xfffd11c2,0xffbd4a5f,0xffe7efb9,0x00056264,0xffe3ba8f,0x006eeb8a,0xffd975bc,0xffaa001e,0xff8bf5c8,0xff24f1bd,0xfe187908,0xfdf26bec,0xfe17e612,0xfeae4b64,
-0xff8da357,0xffe61e71,0xffacca86,0xff4480b6,0xfed996b2,0xfeb49992,0xff3d717d,0xffc41ecd,0x0014b6dd,0x00618071,0x005c7261,0xffd1036e,0xffcad9f6,0xffeb114d,0x00014a8a,0x00239a01,0x000f66d2,0x001b44d4,0x001dae75,0x001097f3,0x00039cb1,0xffe039d0,0xffedff3a,0x000e4a03,0xff81336d,
-0xffca932f,0x00060a6f,0xffd86ad9,0xffe9890a,0xff89b43c,0xff061991,0xfe6eb9aa,0xfd88796c,0xfe2dc17c,0xfe98fa30,0xff10b25d,0xff0e688a,0xff0e5550,0xff017327,0xff6e3ace,0xffa3ea63,0xffa8777f,0xffb8df02,0xffaec8bd,0xffba5c77,0xffd6b7c8,0x0009215d,0x000f8409,0x00576684,0x004b73f2,
-0x00461c18,0x004c5f7b,0x00326814,0x002ac0fc,0x001589ee,0x0007f016,0x00251317,0x002462b5,0x000e095a,0x002f5136,0xffd5a6ee,0xffa6f010,0xffc4a2b8,0xfff44777,0xff0e2394,0xfe8f846c,0xfdeed0e4,0xfdd8fc60,0xfdae9f80,0xfdac6bc0,0xfdda9178,0xfe5315fc,0xfefa41d2,0xff2c5a75,0xfecd2c24,
-0xff233d10,0xff502dd3,0xff69b495,0xffb86a97,0xfff90f1d,0x002d4ea3,0x0050ca81,0x003852ef,0xffe60365,0x00171c75,0x0016524c,0x0037fa41,0x0027c1e7,0x0022261c,0x002fba77,0xffffbc17,0xffd2388d,0xff9b49f0,0xff8223fd,0xff70a20d,0xff6049f3,0xff375ac3,0xff0de2a5,0xfef7bb38,0xfe7feec2,
-0xff34b2b5,0xfe4603c8,0xfe14d19a,0xfe80f1b0,0xff0ce1fc,0xff8adb6b,0xffb89c06,0xff82f66b,0xff6df085,0xff806263,0xffd3ecb4,0xff9f196d,0xff8532da,0xff82e155,0xff925d35,0xffb61af4,0xffeffc18,0x0016bcee,0x002e4f6e,0x001cb176,0x000427d2,0xfffd926d,0x0005c89e,0x000569ce,0x00242679,
-0x0043fe9a,0x004c0c13,0x003bdc6d,0xffff3654,0xffe66efa,0xffe0737e,0xffd5f630,0x001920d9,0xffe0d7d8,0xff867167,0xfefc3382,0xffbc0efc,0xff8a8dbc,0xff5e7cf2,0xff29959f,0xfee5e7a8,0xfecaaef2,0xfebb1716,0xfeb21c70,0xfee1c34a,0xfefc5e90,0xff1d8fda,0xff2f6731,0xff4f3932,0xff64f82c,
-0xff785dfd,0xff878a19,0xff980f39,0xff9c1622,0xffa96302,0xffb16c6e,0xffc849d2,0xffea5e6d,0x000150e0,0x0012ae20,0x0031f5b6,0x003ca877,0x0061fd69,0x005c18bf,0x00845dd4,0x006e9382,0x0069837e,0x004d766c,0x00343309,0x002f50d5,0x003763ce,0xffeced56,0x0019d1ca,0xffae8f4e,0xff9ab086,
-0xff77f147,0xff5e9763,0xff41055c,0xff1e9c07,0xfeef1d68,0xff018b11,0xff0fd542,0xff1cffa2,0xff2d6c15,0xff346cb7,0xff353421,0xff443f66,0xff52f0b3,0xff6477cd,0xff71d3b6,0xff89c322,0xff846065,0xff997805,0xff90d55a,0xff8588d2,0xffb051aa,0xffb29783,0xffa6fd35,0xffb068ed,0xffa7fdea,
-0xffbf26f6,0xffc13c87,0xffd9e14f,0xfff0d503,0xffe71bb3,0xffedfed1,0xffda8fae,0xffc3c653,0xff59f434,0xff72247b,0xff71ecff,0xff5fee63,0xff555cbd,0xff461001,0xff3b75b4,0xff2af469,0xff3743b1,0xff3a9366,0xff3ef7de,0xff4163ad,0xff468679,0xff4c0819,0xff52b132,0xff57a84c,0xff5d5500,
-0xff614757,0xff6962f8,0xff723230,0xff49e8af,0xff6e80fa,0xfff362ae,0xff481053,0xff7490cb,0x000bbcde,0x00061275,0x00049484,0xffffa6a9,0xfffbba5a,0xfff80ab1,0xfff92dff,0xff8d3241,0xff583a10,0x000aa1b8,0xff8fd693,0xff3b1f15,0x00ba2c97,0x00975382,0x00cb069c,0x00a3b6ce,0x00b27565,
-0x009e150d,0x00bfc9ea,0x00c75977,0x00c2f38a,0x00c0feae,0x00bc337d,0x00b56595,0x00b28620,0x00b20a47,0x00b42882,0x00b9ec62,0x00bb79dd,0x00b8f883,0x00b9e718,0x00a8bbff,0x00cc6f8f,0x00959e40,0x00227f75,0xff4a7f76,0x00b099d0,0x00294793,0xff56e276,0xff6725fd,0xff6ce827,0xff7789c9,
-0xff794a7b,0xff79a807,0xff7bde47,0x002fab42,0x00c00ced,0xff5e1d6d,0x001a03b2,0xfffbef1d,0x00dbc19c,0x00acf798,0x00b019f1,0x008b28fb,0x00db62bc,0x00f73fdf,0x00f2ef15,0x00f63f39,0x00ecedc7,0x00d828ff,0x00c8b5e0,0x00c8091a,0x00d0cef1,0x00e8302d,0x00ef93aa,0x00e8baa4,0x00e2af56,
-0x00d27a97,0x00dddc26,0x0003e0c7,0x008b57f8,0x009704a8,0x005959b7,0x0048413d,0x0081de1d,0x009cc84c,0x00bc2d12,0x008b3aa6,0x00b2f0b2,0x009dd8d4,0x00611399,0x0073b913,0x0046359a,0x007321bb,0x00b96d6a,0x008970e3,0x00b3e4b6,0x00cb02d6,0x00caa48f,0x007848f2,0x010f6956,0x0143f472,
-0x0136e308,0x0137e614,0x011b7e48,0x0101ae5c,0x00e4f40b,0x00ddcb5b,0x00e7f3f3,0x010c0e7c,0x011a9620,0x010c1c8c,0x00faf32d,0x00f59b4d,0x00b93c47,0x0084d27e,0x007d41e7,0x007a9857,0x00613111,0x0037283f,0x004ed2e2,0x0053ac79,0x0094edc0,0x005c4d9e,0x0070c1e9,0x004ff379,0x00487b7b,
-0x00360af5,0x004184da,0x0064c19d,0x0086fcff,0x0099cefb,0x00b99474,0x009fb8c5,0x0082a169,0x00150b3d,0x00f1acf1,0x015ea31a,0x017046f0,0x017b7f82,0x0178336e,0x013381e2,0x00f21b1f,0x00ea0059,0x0107cac0,0x01604498,0x01735e90,0x015a6186,0x013f611c,0x011d5fc2,0x00fad8f2,0x00902cf0,
-0x00a59928,0x00696383,0x0062f6b9,0x004d2dda,0x00102bb9,0x0040991b,0x00549e12,0x00747d83,0x0066e5ec,0x00458af8,0x0013cd99,0x000c3091,0x00442dda,0x009eb772,0x00d0a417,0x00185995,0x010ed0bc,0x01a4fec6,0x01e4b972,0x021a4b14,0x01c5b180,0x01a0a600,0x01b9a6c8,0x01194138,0x00c94342,
-0x009ca87b,0x0149d2c6,0x013eb968,0x006afa83,0x00877c8a,0x00981be7,0x00cd69cd,0x00cfa263,0x00e31e94,0x009fa120,0x00308bd5,0x006ee41c,0x00771be6,0x007d3f9a,0x0081525c,0x005f2431,0x002d69c5,0x00103334,0xffee8e3d,0x006d7e1c,0x00c82d26,0x00acaff6,0x00738922,0x00079acc,0xff731f1c,
-0xffc130f7,0x00f4b4f7,0xff8f256b,0xff9fd442,0xffaee4f0,0xff6326dc,0xffde1420,0xffcc7d71,0xff28ae0e,0x00575938,0x00914029,0xffe91801,0x00532f11,0x0077100f,0x00a74709,0x00ca79b0,0x0103882a,0x015724a6,0x0143a144,0x0115cfa6,0x006c42ea,0x004c5979,0x0066b3c0,0x00732ab3,0x008b755c,
-0x005f142a,0x003d3375,0x001d3c35,0x002fd1ac,0x006bfafc,0x00469942,0x000cde0c,0xffd6f997,0x00115af5,0x006e35f7,0x0033399d,0x0152b558,0xffc60b67,0xfff76755,0x0000e7e5,0x0081b0a3,0x01de9db0,0x0219735c,0x028feefc,0x02bc5b30,0x02221dec,0x017aff64,0x01060d28,0x0190e046,0x01a42a82,
-0x0174a09a,0x01423b06,0x00e3baa5,0x004cf930,0x008176bf,0x00970c66,0x0060154b,0x0050505b,0x0033ca0e,0x002442bb,0x00514867,0x00270765,0x0028e0c3,0x002f844b,0x0022d547,0x0017fcdc,0xfff88707,0x0010aa9c,0x0032e8d1,0xffc23c14,0x00050de8,0x002934e9,0xffe16012,0x000f8123,0xffee2948,
-0x00fc1a21,0x01bc7670,0x02e0acb4,0x0258a434,0x018d2608,0x0043f766,0x000bafdb,0xfff294d3,0xffdd2808,0x0053691c,0x00854d75,0x0072db40,0x00bd54c5,0x00eee955,0x01065992,0x00f1dbba,0x00ad9573,0x00576190,0x00421acf,0x0062f5f4,0x005e6d18,0x0062f09b,0x0048193e,0x00385a18,0x0018474a,
-0x0017f621,0x002ee3c3,0x0025f17b,0x00114d87,0x00340e21,0xffec9d2a,0x00053eeb,0xffe21eed,0x002d0f02,0xff013410,0x00716508,0x01a698d0,0x017b3bc0,0x01334e82,0x010c414e,0x00ffd8f5,0x00ec3450,0x00dfb1ee,0x00d222a7,0x00dc1a9e,0x00c909a0,0x00be34aa,0x00a62e3e,0x007185e5,0x005a3b56,
-0x005ecd6d,0x00569e16,0x005d6b4a,0x00492e8b,0x0058ebff,0x006eac7c,0x003dc4b4,0x0032d336,0x003358b8,0x004ff72e,0x00057ab4,0xffde2c48,0xffc4a10b,0xffc0c722,0xffb0aed4,0xff98e66f,0xff6fed99,0xff3afe7a,0xfecf6e30,0xff5aa74d,0xfe78c7e8,0xff32425b,0xff8b3a25,0xffb5a1a6,0x002bf1fc,
-0x0095fd9d,0x00b85879,0x00b5f4f7,0x0003b3ac,0xffc063b8,0xffdcae5b,0xfff72a57,0x0024ecbd,0x0050940a,0x00695b91,0x0088265f,0x007f6771,0x00980b05,0x00771f7e,0x00133f58,0x00182c5e,0x00227039,0x00315630,0x003cf8d6,0x003bcdca,0x004ed016,0x0059bc6c,0x003e6ee4,0xfffb46db,0xffe146b3,
-0xffd7ebbd,0xffd53b25,0x000a7014,0x000d4dff,0xffa5a365,0xff77db5b,0x00071761,0xffe1c2bf,0xffe013c1,0xffd0b4ef,0xffc2293b,0xffd4e9a3,0xfff07cf7,0x00215f68,0x00244446,0x00240306,0x00146da3,0xfff2ec9e,0xffd39204,0xffaf01a5,0xffc62b3b,0xffd6a974,0xffe79e99,0xfff32b79,0x000bd622,
-0x0015e3d7,0x0006e809,0x00077fe7,0x0010e297,0x0020bb96,0x0027b3c0,0x003ee580,0x0040f9c4,0x0067f88f,0x007dec41,0x0065b66f,0x004a0bb9,0x003b9c59,0x0026a6ee,0x00208bf4,0x000f4cbd,0x00078ad3,0xffad3ccb,0x000e0c1e,0xfffe7318,0xfffdb14b,0xfff8f1d4,0xfff5e30c,0xffea25f5,0xffdd3b72,
-0xffbc08ff,0xffa06679,0xff894ae9,0xff7391de,0xff5f1dcc,0xff42d89d,0xff576b29,0xff63f76e,0xff7458b6,0xff82be72,0xff88f352,0xffa91a0e,0xff95be10,0xffd8e023,0xfff8c219,0xffeceeb4,0x00002be9,0x002fc7fc,0x00350e01,0x003b52f5,0x002918be,0x003dfbf0,0x003ed69f,0x0033e5b8,0x002f1b8b,
-0x000a6b46,0x001235d8,0x001978ea,0xffe216aa,0xfff5694e,0xffdef6a3,0xffe16ddc,0xffdcfc3c,0xffd8e86f,0xffd6aae2,0xffd8ebe8,0xffcf74ae,0xffc79e7d,0xffbe248d,0xffb4b5b4,0xffaccbb0,0xffa00c44,0xffaa5dae,0xffaf8be1,0xffb44b88,0xffbcd828,0xffbfba1c,0xffcd7395,0xffceaada,0xff9a4a7d,
-0xff25bb3e,0xfff2e84b,0xffaee2d3,0xff2a2575,0xff2f764d,0xff399aeb,0xff43f922,0xff4b1cd3,0xff515a7d,0xff5d3060,0xffb79a87,0x0000d3b2,0xff3b804c,0xffa2de8d,0xffc923af,0xffaaccd6,0x000d6565,0xff7a783a,0xffc3c328,0xffb44b23,0xffb907e7,0xffa4a4fa,0xff9c1851,0xff97b2b4,0xff97bac6,
-0xff99256f,0xff9f1bff,0xff9f8ab9,0xffa10bdc,0xffa1e3f4,0xffa20e4d,0xffa27ab5,0xffa20f14,0xffa3a897,0xffb7887c,0xff824e1d,0x0014f0d2,0x0094b8d8,0x013e272e,0xffe02e6f,0x007fc860,0x012339c8,0x012ea1c6,0x012d4af0,0x011195ba,0x012378a8,0x01219474,0x010fda50,0x007926ea,0xffc6cd4f,
-0x012c58ea,0x009cd33b,0x00cfd9af,0xff8ea741,0xffbaa995,0xffbf090b,0xffbf6e98,0xff8ff598,0xff7922b1,0xff74a53a,0xff70b0b7,0xff7763fa,0xff82c98d,0xff7f6f69,0xff7f1f57,0xff7d0922,0xff7d3dfc,0xff7f13b3,0xff7c8d76,0xff90c098,0xff988b12,0xffae2886,0x00c47309,0x0002b332,0x00157d90,
-0x00159b28,0x002615ae,0xffe8eee0,0xfffa1182,0xfffa3e8d,0x001af3c0,0xffe89aed,0xffd3f348,0xfff4e5a5,0xffe2ae93,0x002a1927,0x0033b260,0xffcb6c17,0x0028d0c1,0xffb8dd54,0xffc42f19,0xffe14cab,0xffce39c4,0xff7e386a,0xff4d1dd2,0xff3570c5,0xff2d9a30,0xff359b0b,0xff5a1920,0xff583b5f,
-0xff5e4449,0xff5cab2d,0xff5a4a21,0xff608a86,0xff574289,0xff835eb2,0xff762ee0,0xfff39907,0x004b9696,0x002f84ab,0x003b4379,0x0000bbb0,0x003363f0,0xffe9cfe5,0x0066febd,0x001649f3,0x0045c829,0x00258113,0x00483c33,0x00089db6,0x00135039,0x000bce46,0x00466c0a,0xfffa481e,0x005b2608,
-0xffb608e4,0xffd15e5a,0xfff16008,0xffda538c,0xff6b18ae,0xff2a6468,0xff11bf60,0xff088d59,0xff27f1a8,0xff484c12,0xff2c3bba,0xff1e0815,0xff0db3bd,0xff131f2d,0xff153e97,0xff107055,0xff582f01,0xff7a4a58,0x0000b28c,0x00a09b71,0x002728e5,0x007fe72d,0x0012c975,0x000f5858,0xffe396dc,
-0x002b424e,0x00674b6e,0x004fcb53,0x0056653e,0x00222a31,0xffff3c20,0xffe9085f,0x000dd881,0x0061b2aa,0x001dfbbc,0x000af25b,0xff9b0de9,0xffa3bf47,0xffdf739f,0x002107bb,0xff7991a3,0xff32ad84,0xff134167,0xfea6a020,0xfe9d7ce0,0xfeac9dbe,0xff7f4a31,0xffe9d575,0xffe8a6d0,0xffe3bd0b,
-0xffdd84d1,0xff9c671f,0xff926881,0xff45ddae,0xff9e8f13,0x003fe4f1,0xffe00192,0x00385c09,0x0044fb2f,0x006ca7f0,0x006e3f7b,0x001b6a7a,0xfffcb929,0xfff2ef42,0x006b43a3,0x00ba26c4,0x007e8d15,0x00397e6c,0xfff29d2a,0xff6e0e09,0xff96923b,0x00c06385,0xfe586132,0xfee16e8e,0xff42030f,
-0xff6f2d2f,0xff684401,0xff40af0b,0xfedafd44,0xffeedbc0,0x0032f52c,0xff9a0003,0x00361810,0x0051ad7c,0x002b6ca3,0xffc5fad4,0xff6c9851,0xff0a4215,0xffa53e2b,0xffc894a7,0x00006f43,0x00666d85,0x00509cfc,0x004b719c,0x004fc97c,0x002955b7,0x002c05b4,0x001a02d0,0x00329577,0x0069ed2d,
-0x002debb1,0xffffaf5c,0xffb9fc70,0x001b5796,0x001c8019,0xffe6d147,0x00c75f80,0xffd62421,0xff96d9c1,0xffb2fcf2,0xff8148fc,0xfeda398c,0xfe60f5f6,0xfe57fb88,0xfeadf394,0xff092a23,0xff51dbdb,0xff462c54,0xfefe2888,0xfea81592,0xfe987b64,0xfedd4faa,0xff6f0e02,0xfff58491,0x002774f1,
-0xffe90077,0xffba4486,0xffd941d6,0xffc92f53,0xfff8d970,0x001371c0,0x00062889,0x0024b86d,0x00194d65,0x000619b7,0x000d4125,0xfff23422,0x000ecc0b,0x002c9875,0xfff1a3dd,0x001a529a,0x004a8fba,0xffcf0119,0x0036a3b0,0x00089566,0xff5692de,0xfef19ae4,0xfe4a9316,0xfea503ec,0xfeecb320,
-0xff2d9275,0xff6413b1,0xff762d99,0xff3e35f0,0xffad4dc2,0xffe22384,0xffe563b9,0xffbd38f4,0xff9e252d,0xff979331,0xffae9292,0xffc98287,0xffff6ac8,0x0063e10a,0x002f1443,0x00255275,0x00468fba,0x003031f6,0x00201b71,0x000d39c6,0x0009773e,0x001c27d1,0x000ed60b,0xfff75961,0xffe81f73,
-0xffe9b5f6,0xffd1cb16,0xfff5528a,0x00229a94,0xffe20f91,0xff69cb28,0xfe7ff86a,0xfe8f1cea,0xfe590ca4,0xfe537ea6,0xfe6b488e,0xfeb660ba,0xfefec186,0xff168ab6,0xff01e1e5,0xff67893d,0xff9d10d0,0xffa753cf,0x00026ed3,0x003d2a39,0x00489adc,0x004b2435,0x00193ddb,0xffe425df,0x00470739,
-0x0019b3c3,0x001b9692,0x0023a9f1,0x001b013d,0x003001bd,0xfff38e8f,0xffbfd42d,0xffbdbb4f,0xffaa7f97,0xffad689d,0xff90ce29,0xff72d828,0xff3f6fb5,0xff0926f0,0xfefcbac4,0xff6e7df2,0xfea27ee0,0xfe5fcaca,0xfec582ce,0xfefbfe16,0xff3e8851,0xff23c2ac,0xfeb0b200,0xff3ef1f1,0xff9e1b94,
-0xffdf5099,0xffa9c7f5,0xff9c0c84,0xffb1bf66,0xffbaac5f,0xffcdb597,0xffdfa330,0xfffcbbe0,0x001777db,0x002f2ac5,0x002a6190,0x0018a707,0x001affad,0x0005e606,0x00100d34,0x003043d9,0x00208eda,0x000d2497,0xffc0eac1,0xff9f867c,0xff8ee058,0xff82dade,0xffc4c6dc,0xffaa3529,0xff89a975,
-0xff037044,0xff8b4cd7,0xff32b4bd,0xff0ef228,0xff202313,0xff11c460,0xff25396c,0xff43d5ed,0xff58361f,0xff61ee24,0xff55116f,0xff6119ac,0xff7821cd,0xff94ca8f,0xffae7626,0xffbe2aa0,0xffd05770,0xffdba448,0xffc9401a,0xffa2c581,0xffa76b5a,0xffe45ec4,0xffeac45e,0xfff450dc,0x0001f1a4,
-0x00256731,0x0023761a,0x004a9df7,0x0023d464,0x006d83c8,0x002ae18a,0x002fad8c,0xfff4e7d1,0xffe38834,0xffde6f3e,0xffecf294,0xff9e3f70,0x003e3a38,0xffa353bd,0xff885ed4,0xff67d4a6,0xff44f80a,0xff214d70,0xfef7cb70,0xfed3f622,0xfeeb30c6,0xff08a28e,0xff1c624b,0xff32d4cb,0xff435a69,
-0xff51ab86,0xff598493,0xff61927a,0xff6ee910,0xff7bfee2,0xff940886,0xff8d49b2,0xffbe5909,0xff9cac7d,0xffa4851d,0xffc97c51,0xffd87e8b,0xffc9add0,0xffc1fe23,0xffc51713,0xffe7f9a6,0xffc9f43f,0xffd116ea,0xfff7e80c,0xffe65520,0xfffc5c94,0xffec7172,0xffb9f7fc,0xff91cf25,0xff56e746,
-0xff6548a1,0xff536ea0,0xff4ad24d,0xff409f68,0xff387fb1,0xff255cab,0xff33d212,0xff37b746,0xff3e3777,0xff433214,0xff49a860,0xff52a310,0xff562dd1,0xff5a8446,0xff5df34b,0xff605000,0xff6848a9,0xff6246df,0xff83e534,0xffc9b82a,0x002b9f65,0xff7c30a0,0xffd51d35,0x004a69f6,0x0049e095,
-0x00458a4b,0x0035a9ac,0x003ff670,0x003bed9a,0x0036f653,0xffdf5e69,0xff804e86,0x00357136,0xffe37d83,0xff37d6c0,0x008c1692,0xfffa5c6a,0x00b7825f,0x007ba372,0x0083b7c2,0x006eb826,0x008104eb,0x0087aa7b,0x008fba9f,0x008b2a63,0x008aa47e,0x008ed580,0x0088042f,0x008726d7,0x008861b4,
-0x008dbc6b,0x008ea08e,0x008d053c,0x008a3512,0x007b7788,0x00b06055,0xfff9132f,0xff90c951,0xff4924f7,0x00242b77,0xff960b4e,0xff48fb1c,0xff4c311b,0xff4e36fb,0xff613dc0,0xff4901fd,0xff4414dc,0xff467dcc,0xff9ba17b,0x003a74f7,0xff4ba8cc,0xff7e52ff,0xff79e9c8,0x0089b96c,0x0088f4a3,
-0x0070d589,0x004d0e74,0x006d8e29,0x00804ade,0x009f1e37,0x009f51ab,0x00a72856,0x00afbcd9,0x009d4a57,0x009df178,0x00a2157b,0x00b3660e,0x00b25eb9,0x00aba363,0x00947f78,0x009baa34,0x007f81d4,0xff9efd96,0x004c4808,0x00376f45,0x001d3b3a,0x000788a1,0x003751e7,0x006545d2,0x00684a49,
-0x001fc1cc,0x00624ea0,0x006d4344,0x00233e28,0x003a3bcb,0xffff50bf,0x000846b0,0x006a76b7,0xfff94d64,0x0070d04d,0x00baaa3a,0x007af45c,0x0035ebc8,0x006a7487,0x008b3839,0x00ca1a65,0x00b8b422,0x00ba3708,0x00d81187,0x00a9d660,0x00a8438e,0x00a60f54,0x00caa411,0x00ccc2c7,0x00c3ec60,
-0x00a0859d,0x00b6c77f,0x005045dc,0x000a1478,0x00300176,0x004a4cbb,0x002f4402,0xfff9d464,0x00315d3b,0x0032f528,0x009cc32f,0x00172a8f,0x006859f6,0x00177fef,0x001dc154,0x000c2a02,0x000b00b2,0xffff8280,0x0023de67,0xfffc8679,0x006829f5,0x008850e3,0x0033dd55,0xffd0ab39,0x0008cb6f,
-0x00428f55,0x00c31352,0x00c53303,0x00f7f76d,0x011bf166,0x00c6e2c7,0x00b92774,0x00bd4c10,0x00fcbfe0,0x00fd2b8c,0x00e560fb,0x00acadb1,0x00bc422d,0x0072d29b,0x001e52df,0x0092053c,0x005171bd,0x00538654,0x0040b6b5,0x0010f672,0x0055b614,0x0065bb88,0x006c1dde,0x0054ef9e,0x0042ff75,
-0x000b87a6,0x00177124,0x001bdbd6,0x005857c2,0x0067bf04,0xff64ec31,0x00ae39e5,0x0187879c,0x01708122,0x0176ca14,0x014327bc,0x01284de2,0x013e7e14,0x00b9dfba,0x0086092b,0x00808021,0x01127d8a,0x013a4720,0x00da73f9,0x00ad9ee1,0x00a57b71,0x01105476,0x00d144b8,0x00d98730,0x002be3e1,
-0xffb6a876,0x0051c302,0x004e7683,0x005ddb23,0x0060208d,0x007297cb,0x00257bd6,0x00060161,0x000d6efc,0x0089500c,0x00c46e0e,0x005d264d,0x0039c866,0xffbe2d18,0xff34478a,0xff2ecd5c,0x00a1551e,0xff02dbe2,0xfffdbdf6,0xffdcdf87,0xff987cd8,0xff8e763f,0xff5701b9,0xfee649e4,0x003c3d60,
-0x009eb2b2,0xffe8d9f9,0x002d99bb,0x00442883,0x0070d85c,0x00a1db2e,0x00c5d1e2,0x00f1338f,0x00c40177,0x00d2e78d,0x0036525a,0x0019e8de,0x003f0883,0x0036f4e3,0x0098888f,0x00737e3d,0x003d59c1,0x002cdf83,0x00431355,0x00763c00,0x0040ff40,0x000b803c,0xffeda9fc,0x00215386,0x007791a4,
-0xfffcc35e,0x016a98f4,0xff8a27f1,0xffbe45d4,0x0018c92b,0x005f7a44,0x011251de,0x00dd6234,0x0135745c,0x0183d68a,0x01b476b8,0x0182f7e2,0x00f4f19e,0x016902a2,0x01462db2,0x00e4c0c4,0x00c0324d,0x0087a2c6,0x004727a3,0x004a8546,0x007a3605,0x001a1ad8,0xfffc112e,0x0007bff6,0xffdb6d2e,
-0x0012cb7a,0x000ba546,0x002ab44d,0x002d999d,0x0022a63a,0x0020bfc2,0x000bd685,0x0022732d,0x00279228,0xfffafaea,0x0039f6d1,0xfff896ec,0xffb9ae6a,0x002f2e23,0x0027d6b1,0x007123d7,0x00952708,0x018b123e,0x0110e284,0x00a0e06b,0x003e87ca,0xffb55fbf,0xff83558a,0xff3f397f,0xffcc82ee,
-0x001a373f,0x002d3267,0x0058e696,0x00874532,0x00b143bb,0x009f7f1a,0x008baba5,0x00358b7c,0xfffaafbd,0x002a6500,0x002d865e,0x004936a0,0x00384cf0,0x0023dc10,0x001ba394,0x000cc06b,0x001ead7a,0x000fcd8a,0x00028e3b,0x0008f915,0xfff44290,0x001d5af9,0xfffb9cb7,0x0052846c,0xfee2c2be,
-0xff9ede37,0x008f0f43,0x008001dc,0x00832a87,0x005050e9,0x00644e79,0x008ced6d,0x00360376,0x00155da2,0x000dd1a1,0x001b9f08,0x002d86cd,0x00371d18,0x0045c2c2,0x004f434a,0x00724ae6,0x002e6013,0x003470bc,0x0034da09,0x001cb114,0x004aa747,0x0015e7e9,0x0024823d,0x00288279,0x003b73f9,
-0xfff1a677,0xffdb5b7a,0xffc79242,0xffd78861,0xffb95619,0xff84e540,0xff5ab464,0xff18978c,0xfea8dcbc,0xff12a61a,0xfe5c68e4,0xfef8fd3a,0xff8b41e8,0xff94cc87,0xffed3491,0x0014648f,0x00166371,0xfffbf506,0xffff3562,0x0007c3d0,0x00027bb8,0x00053f6d,0x000bbd08,0x001bd29c,0x003856cb,
-0x0053f2b9,0x007a779d,0x007be77d,0x006da6a7,0x0026ff20,0x002e74b2,0x002e5839,0xfff9bad0,0x0016fb43,0x001fa30e,0x0034be9e,0x001d240a,0xfff9e4fb,0xffe06856,0xffad1972,0xff95d3e5,0xff922728,0xffb4ca29,0xffb9a5a4,0xff8b68b8,0xff3807d4,0xff5fa462,0xff667eda,0xff9fd06b,0xffa3df23,
-0xffc9ddf6,0xffeccadd,0x00268dc8,0x00629b49,0x0043f50c,0x0027580d,0x000e8904,0x00112a0e,0x001146c4,0x000990d8,0x0020c935,0x003080e3,0x0046909e,0x0028ee92,0x002e9a1d,0xfff50bd9,0xffc84c9a,0xffe1f3e2,0xfff5ca14,0x000eda88,0x000da9d5,0x00343644,0x001bc17b,0x0041e655,0x0025ef7c,
-0x002234e1,0xffeff47e,0xffddf982,0xffb72737,0xff8ed97b,0xff624973,0xff6b8179,0xff8724ea,0xffdfc7d9,0xffdefa6c,0xffd6b122,0xffd2a9ce,0xffcf1c7c,0xffc3c975,0xffbf5d8b,0xffbc3929,0xffc1dba0,0xffc044b3,0xffb9b237,0xffade28e,0xff99c840,0xffa4ff07,0xffac83d2,0xffbb243a,0xffc43c33,
-0xffd2873d,0xffe94418,0xff9cd4ea,0xffeeb9fb,0xffed58ad,0xffe505b0,0xffe27810,0x000e36d8,0x00184fdd,0x000c3e3e,0xffed5cb9,0x001476be,0x0022893c,0x0011e3c9,0x000d6cf3,0xffeae416,0xffeaff8b,0x0000097d,0xff9b33e9,0xfffc8f16,0xffe1ad1b,0xffe59f56,0xffe5073c,0xffe3dfd5,0xffe49fc6,
-0xffe450d7,0xffe4245c,0xffe0828c,0xffdd7bdf,0xffda821b,0xffda0407,0xffd7a82a,0xffdc998e,0xffdde797,0xffde1275,0xffe34a98,0xffdfbdc7,0xfffbf82e,0xffa23bc5,0xff5a3534,0xff16f118,0xffc43e0c,0xff615032,0xff1779cd,0xff17d7ad,0xff232d79,0xff352094,0xff2db66e,0xff3099cc,0xff3a6eea,
-0xff687bcc,0xffc4d24e,0xff2c8467,0xff5511c7,0xffe21c41,0xfff9933e,0x008be48d,0xffc50a1a,0x00021741,0xfffc2ff2,0xfff991d3,0xfffcd95f,0xfffb413e,0xfff607a0,0xfff3d256,0xfff314a9,0xfff7a116,0xfff4bf25,0xfff6687e,0xfffa4442,0xfff7419d,0xfff5de3d,0xfff5120b,0xfff3be3f,0xfffaeccf,
-0xffcb0a3f,0x008e38ba,0x00d10b54,0x00c32bfa,0x006588e6,0x00cac706,0x00bca6ef,0x00d4dd3e,0x00d7604d,0x00ba14d1,0x00d9ef08,0x00dae3f9,0x00cdfc66,0x00c70ae6,0x0052ec37,0x00bbd5ea,0x00dcc9e3,0x00d03b90,0xfff12feb,0xffed204b,0x0007134c,0xfff9606d,0x0008963c,0x0008a5ba,0x0000004e,
-0xfff87c81,0xfff71a89,0x000235a0,0xffefcc79,0xffeb5ac0,0xfff178fe,0xffed68aa,0xfff1bf7f,0xfff07b02,0xfff97c8a,0xffe3a7ac,0x0009c2bf,0x00bb7f96,0x0035ca80,0x00653c83,0x0042c839,0x005249b7,0x003bb0df,0x0043c409,0x005bfd70,0x0072b1a2,0x003cd49d,0x001553f5,0x002ddfb5,0x00287347,
-0x00588a37,0x006a6ced,0x00148a5d,0x007c7be0,0x00071a36,0xffea9c8b,0x001bb59b,0xffeab19c,0x0018dcd4,0x001db22e,0xfffd208c,0xfff12f32,0xffe87e15,0x0007b0f2,0xffed1b59,0xfff40eb6,0x00077d46,0xfff78ff7,0xfff5d9da,0xffec3cb7,0xfff40349,0xffc879b4,0x00219fca,0x0079c805,0x00545c8f,
-0x005ba14d,0x002d8b6b,0x005c6bbd,0x001eebc1,0x008a07c9,0x00399288,0x0073bace,0x0030f41f,0x0063acd1,0x002aba45,0x003be07a,0x0036f362,0x005d5ae0,0x0039f35f,0x006ccca4,0xffe39c82,0xffcbaee0,0x000f9290,0xffd3a3a7,0x001f9a54,0x003778aa,0x001e57ed,0x001136da,0x0016a275,0x003394ee,
-0xfff29830,0xffdfd6dc,0xffea4b93,0xffe9abdc,0xfff19694,0xffe8543d,0xfff1c9b8,0xffbea2b8,0x001269d9,0x0089b9e2,0x001d90af,0x0094d823,0x0024d119,0x000c3130,0xffe23c89,0x00419fee,0x0070239b,0x002a6bc3,0x004b6321,0x00197ec2,0xfff58620,0xffffa95f,0x002a5a1b,0x00435ed1,0x003149c9,
-0x009ee111,0x00655e96,0x002cd0b5,0x004e0a75,0x00603de2,0x005116f4,0x0045c332,0x0027381d,0xff62fc76,0xff0acba5,0xfef37252,0xff5e8334,0xffca4feb,0x0015879a,0x000f8126,0x0007f316,0xffb9295c,0xffe7c51c,0xffc81f90,0x0022de60,0x006c9423,0xfff6b997,0x00482741,0x0041e5a3,0x0067d337,
-0x007db741,0x001b079e,0xffff339d,0x0018f4bb,0x009a6676,0x00c175ca,0x005bc980,0x0038743f,0x000e01d2,0xff907f6a,0x000861bb,0x00f0b177,0xfe599244,0xfefaa488,0xffa3c771,0xffb2b8bc,0xffe12099,0xffda61f3,0xff8cc903,0x00549a5c,0x0078edd3,0xffcebc8b,0x00435402,0x00627f39,0x006b3ec6,
-0x003d0137,0x00287203,0x002613e1,0x0058558d,0x002b18ad,0x0042faca,0x00673bb6,0x004a398f,0x004f4e0a,0x00644642,0x004762d7,0x0032ef04,0x002e54d1,0x00484ee5,0x00734228,0x00289b56,0x000c3f42,0xffe98580,0x003f8cc5,0x004bb698,0x000c4148,0x01076d1a,0xffbb0cf0,0xffa1250c,0x002522d3,
-0x00585421,0x009b0664,0x00350ab5,0x001b9450,0x000be381,0xffdc8ffd,0xffdbadd8,0xffb773ed,0xffd4d02d,0xffac40cb,0xff7db69b,0xff7f510b,0xffb8e6dd,0x001248fd,0x0010208a,0xffc70cfe,0xffe395d8,0x0008f6f9,0xffd53a51,0xfff36ede,0x000a89fc,0x000a319d,0x002ccbf6,0x00201211,0x000e0ecd,
-0x001aa99a,0x001229f7,0x0029026b,0x002b934d,0x00403e4f,0x0040392e,0x003e02c7,0xffb85068,0x0070b4c3,0x007d94c8,0x004a49cb,0x0073f8fd,0x007f4bc4,0x00532794,0x001a9fd9,0xffaff4ae,0xfff6e2a5,0x00040d57,0xffc2cd8e,0x000d8f35,0x00322af2,0x002fa64c,0x00141269,0x001553f9,0x001c35d5,
-0x0014ba86,0xfffd043a,0x0018eb82,0x004ac2c3,0x0020eedf,0x00177551,0x003e47b4,0x0030dca9,0x001cf75f,0x000e8ff3,0x00148e3c,0x0017bfc2,0x0003941b,0xfff02c58,0xffc9878b,0xfff666b8,0xfffdd0c6,0x000a0cfa,0x0039664d,0xfffb7835,0x0014c229,0xfff6b8c6,0x001a76ca,0xffd9de44,0xffe1ba2b,
-0xffda8884,0xffdd9850,0xffad2675,0xffb03057,0xfffaba1f,0x00071668,0x00107c7c,0x0020bacb,0x003cfd89,0x0046dd48,0x00419108,0x0024a917,0x00050c47,0x0016518c,0x005a3966,0x002384e0,0x0003d6f5,0x001e7bda,0x00182a93,0x00249945,0xfff57759,0xffcd1a0d,0xffee1620,0xffdd7262,0xffd9c844,
-0xffb281d3,0xff767327,0xff3d85c6,0xff05c73d,0xff7a77f4,0xff97c7b1,0xff6f64c7,0xff4157d5,0xff61a9ec,0xff565bfd,0xff25df3d,0xfefe6e54,0xfefffcce,0xff72dcbf,0xffb1ebc0,0xffb3c1b5,0xffc604aa,0xffe31906,0xffff919a,0x001fd56a,0x0024bd71,0x003058e3,0x0016d6f1,0x001584a8,0x0033926d,
-0x003d03f6,0x0036c94b,0x003a7450,0x0022731f,0x00104ea5,0x0022c48f,0xffef8b9e,0xffd7eaf3,0xffa41710,0xff8a2c1e,0xff7c6687,0xff792335,0xffa3e37f,0xffb8c222,0xffcf8924,0xff80c281,0xff7c7b10,0xff22fc42,0xff185ea9,0xff4f6a6c,0xff6cf600,0xffa76509,0xffde9a21,0x0004d504,0xfff920f4,
-0xffeb9aaf,0xffe8fa64,0xfff1cfa9,0xfff63350,0xffff0ed7,0x000f28e6,0x0021a7c3,0x0033968b,0x001d6657,0xfff576ae,0xfff34a04,0x00119a56,0x0000e1ac,0xfff7c5fe,0x000659d3,0x00228e5e,0x00296716,0x00387bf0,0x00118128,0x00490f8c,0x00027d2e,0x00057c1b,0xffd255d2,0xffbde2a3,0xffac4387,
-0xffa6c235,0xff73d996,0x001564ee,0xffbc1dae,0xffa959de,0xff9ee51f,0xff872af1,0xff733fb4,0xff5b1422,0xff524f39,0xff5cb60e,0xff6c7055,0xff77c601,0xff83a6a3,0xff9262cf,0xffa2948f,0xffa2a9ff,0xffa326fa,0xffa6112a,0xffac7a0a,0xffb2f068,0xffb76be3,0xfff224c1,0xffdd9edc,0xfffaaad3,
-0x00045647,0x001c86c8,0x00220b7a,0x000bf8e1,0x00126860,0x002121bb,0xfffd428a,0xffeea495,0x00060466,0xfff38cef,0xffffb506,0xfffe18f9,0xffd1559a,0xfff405f4,0xffa104e1,0xffaea89b,0xffa7b291,0xffa5c847,0xffa42799,0xffa25ed1,0xff995686,0xff9eecf9,0xffa09b94,0xffa38910,0xffa6c20c,
-0xffa93ac5,0xffae00ad,0xffadaa9f,0xffaed5af,0xffae755c,0xffafadb7,0xffb36fa0,0xffa40ac6,0xfff0d849,0x001bc407,0x00100c1c,0xfff74529,0x002f25ee,0x002644c9,0x0029b20a,0x0027913d,0x0019a0ed,0x0028a76e,0x00264c14,0x001f6879,0x0020b48f,0xffea93db,0x00069b00,0x001ca970,0xffadea22,
-0x00102e0a,0xff95da4e,0x002cf0b0,0x0012397f,0x000c4b5d,0x0001b511,0xfffb2713,0xfffb6df9,0x000740c1,0x000412fa,0x00074b02,0x0013285a,0x0008ea85,0x0007fb60,0x0008ed02,0x000dce17,0x000f63f4,0x00105bbe,0x000cc2a6,0x000d106a,0x00259732,0xff9791b6,0xff8f253e,0x0003220f,0xffa79dbb,
-0xff8be98e,0xfff4e8b3,0xfff0e3e4,0xffef08ea,0xfff619dd,0xffdbd68c,0xffd4fc6e,0xffd1ac90,0xff8d017d,0xffb2ef35,0xfff6addd,0xff826f7e,0xff9ce58a,0xfff18164,0x001b2b8a,0xfffa359e,0xffe52286,0xffc5cf8a,0xffc3a63f,0xffed05c9,0xffeca492,0xfffcb4df,0x00186abb,0xffff3e07,0xfffc2885,
-0xfffee1bb,0x00090d13,0x0008bde0,0x00084760,0xfff7f3c4,0x000fa740,0xffed350a,0xffc4b8fe,0xfffe1051,0xffde2c66,0xffee3b74,0xffe714ba,0xffe8a71e,0x00136f2e,0x00005e96,0xffd33e53,0xfff87d9e,0x000e994e,0xffe9fca3,0xfff2b8fe,0xffe12ef1,0xffd0a2e2,0xfff3ad46,0xffaac3fa,0xffff1806,
-0x0042ac58,0xfff73896,0xffd14157,0xff964df7,0xff889f66,0xffdb4831,0xffc8d66c,0xffdf5b9e,0x002069ad,0xffe3fc20,0xffe40912,0xffe10c33,0xffff0917,0x0001bb4e,0x00054965,0xfff41104,0x0010eeae,0xffe73a9c,0xffcad975,0xfff47a30,0x000fca9f,0xfff8b42d,0xffea61ff,0x000c7695,0x0030a141,
-0x006d881b,0xfffe757d,0x00476add,0x0004974f,0xffff28be,0xfffb9c16,0xffeff195,0xffdc704d,0xffd5b1cc,0xffa77daa,0xfff212ad,0x0031f1d4,0xffdd328c,0xff9866d0,0xff1efbcc,0xff0af770,0xff9fe4eb,0xffa0b7e0,0xffe24aa1,0x0049fdbe,0xffe1fad9,0xffbd9cce,0xffb41118,0xffd4a88e,0xffdef2b7,
-0xffdd0b75,0xffc56c78,0xfffba686,0xffe34b85,0xffee1f9c,0x004dc56e,0x00474f98,0x003215b5,0x00278169,0x0011ac86,0x0059e266,0x0072f3a0,0x0052aea6,0x00400540,0x00368186,0x000dcd44,0x0017f391,0x000226a1,0x002c53e5,0xfffbe8d7,0xff68956c,0x001df49d,0x00814633,0x00481ada,0x006b1e5d,
-0x0051b164,0x00311dde,0xfffeb258,0xffc24a83,0xffab8619,0xffb8fa7d,0x0020406b,0x008b338d,0x00fab850,0x0092c7a8,0x006ed5cd,0x00ad6605,0x005a2e97,0x0046d9ae,0xffc9aed9,0xffad8b98,0x0019bb15,0x001ec906,0x00304923,0x003f7f3a,0x00786fba,0x001e78b8,0x0003fe38,0x0035717f,0x00998ded,
-0x00ad32ca,0x001fb7e8,0x001add02,0xffb5f18a,0xff310f67,0xff347392,0x000c7711,0xfe8ce14a,0x0015c00b,0xffff28be,0xffb50b54,0xff4eb755,0xff2b2bdc,0xff2ae670,0x0021ebd0,0x007a9aea,0xfff45b2f,0x0019ca4e,0x00218d79,0x002c4bc0,0x0033ef66,0x0019f205,0xfffbf393,0xffefb519,0x0025a2b5,
-0xfffff7d5,0x000f874f,0x001f3d31,0x000c2daf,0x00773989,0x00658674,0x00370336,0x003f9056,0x00554760,0x006fdd6b,0x0024544e,0x0008b389,0x0014add2,0x0031fd73,0x004e5b12,0xffd0ef8b,0x00d287ac,0xff944754,0xff9af620,0x002d720a,0x0015d23d,0xffa1b506,0xff23afa4,0xff233d93,0xff60475c,
-0x0048aae7,0x00a7e34d,0x0052d223,0x004d8622,0xfff62d73,0xffa10447,0xffa705ad,0xffd9697f,0x00437f94,0x001333c5,0x00208d90,0xffc396a9,0xffb3059f,0xffd425b0,0xffb65464,0xffd8f90a,0xfff96178,0x002fb694,0x0024d7ca,0x001b2906,0x001f20a0,0x001a5bf4,0x0022bdd3,0x0003028e,0x001c1314,
-0x004e3ced,0xffec3817,0xffbb253d,0x0043c2c2,0x003ffec4,0xffc36bb2,0xff4d8279,0xff314777,0xff4129a0,0xff6dbcec,0xffe1e606,0xff84c38c,0xff5d3c64,0xff1a4f56,0xff6874ff,0xffa3f34a,0xffd77733,0xffc13dd4,0xffd49ec1,0x001757dd,0x00126fec,0x0035cb6c,0x0015702f,0xffeda51e,0xfffe2c0c,
-0x00084a83,0x00269ceb,0x00204e7c,0x00132f81,0x001e5a64,0x000c12d3,0x000f9719,0x000613c5,0xfffe59f9,0xffe7d900,0xfff0a20e,0xffff224b,0xfff360b9,0x00413467,0xff1719e9,0xfee8a0fc,0xfee5b35e,0xfef94ee4,0xff35caf7,0xff215655,0xff3e111e,0xff80b84f,0xff3378c0,0xff2f1646,0xff38cbac,
-0xff5f42d0,0xff873d1b,0xffa77547,0xfffb8ce2,0x002215c3,0x003abc73,0xffff6c66,0xfffa12cc,0x000417e9,0xffead21e,0x0006c112,0xffff20c0,0x0015a7a5,0x0012c80e,0x000e2c6e,0xffe978c3,0xffdf1877,0xffd4567c,0xffd9d2c6,0xffb1d337,0xff732c45,0xff37dbb5,0xfef85d7c,0xfec64664,0xfed99598,
-0xff074484,0xfef20776,0xff3a3945,0xff37a6b5,0xff523326,0xff33d9af,0xff391329,0xff4f4886,0xffa4a581,0xffd82aa2,0xffe2e39c,0xffdc6bf1,0xffd15892,0xffc99ff2,0xffe6c5c7,0xffffbdd1,0x00436f3b,0x002bf050,0x00334f93,0x00377236,0x00335c75,0x002945cf,0xffea557b,0xffffa3cc,0x00077301,
-0x0013475b,0xffd7950f,0xffb2e6ee,0xffb34d83,0xff87315a,0xff713ddb,0xff692f03,0xff856bc3,0xff8d1a54,0xffa1b3f2,0xff3a3314,0xfef2eb6c,0xff005461,0xff3ac765,0xff44f084,0xff7162cb,0xff976c75,0xffc7abfa,0xffeda5b2,0xffdd7c64,0xffd12796,0xffccbb3b,0xfff130ca,0x0011f6e8,0x002d98a5,
-0x0040950b,0x004e71e8,0x0065209f,0x003e71f0,0x00382457,0xfffcf094,0xffd31ea5,0xffe9e100,0xfff09521,0x00057644,0x000c201e,0x002abda0,0x001722e9,0x0015592f,0xfff57441,0xffef2069,0xffcb99d0,0xffb42195,0xff8206c3,0xff47c5bb,0xff178979,0xff0e1879,0xffa7e8a0,0xffa1d7b0,0xffa9ffd1,
-0xff9e3038,0xff99251a,0xff926c21,0xff8a9a98,0xff88e624,0xffa105ea,0xffbc2c39,0xffce949c,0xffdb98da,0xffe15138,0xffe3459e,0xffdfb79d,0xffde6c33,0xffe26067,0xffe36090,0xffefa034,0xffed93d3,0xffbcd428,0xffe72e85,0xffd70152,0xffe5621b,0xffdda10d,0xffed5ede,0xffecc734,0xffd737fd,
-0xffc63ed8,0xffd8dbaa,0xffe79365,0xffe1410b,0xffdab783,0xffd101c9,0xffc4b736,0xffcaec83,0xff88fa8d,0xffda6696,0xffd12b1f,0xffd0cb8d,0xffd2a489,0xffd25a42,0xffd36574,0xffcf595f,0xffd7db7b,0xffdae2d5,0xffdfb602,0xffe3f6c8,0xffea01c6,0xfff23ea4,0xfff0fc12,0xffefe101,0xffed892e,
-0xffed3409,0xffe953c7,0xfffb8610,0xff9fc1fb,0xff85a48b,0xffa99193,0xffaed2f7,0xff86f04e,0xffb603c2,0xffaf47f9,0xffb211c1,0xffb888f5,0xffaae7ee,0xffa5cd82,0xffa4ade8,0xff82d554,0xff9ffa68,0xffab712a,0xff7995b5,0xffe43f41,0x0060eae7,0x00a42fae,0x0054a5fd,0x00546ba1,0x00596ecc,
-0x004c1ec8,0x006446fd,0x006a7488,0x006a07f6,0x0066dca5,0x0064c20d,0x0067eef4,0x005cd02c,0x005bfebb,0x005fb0d4,0x00615cde,0x0061aabd,0x0062096a,0x005f76c8,0x005641ba,0x00520333,0x00a01895,0x007663cc,0xffd63b74,0x009eb4d5,0x008029dc,0xffe600ef,0xfffc07a9,0x0000bf8f,0xfff670dd,
-0x0008eea2,0x0009f94e,0x000744b6,0x00832e8a,0x00a33117,0xffdf363c,0x007b5fec,0x00488025,0x007518b6,0x00474375,0x00585be2,0x003b24d4,0x0076fe26,0x008ecc4e,0x0093327a,0x00905825,0x0089e098,0x0090e6ae,0x00685a81,0x005d9f79,0x00696a82,0x00724051,0x007d8aa3,0x0080ba49,0x007af079,
-0x005e40db,0x00747944,0x0040a6ce,0x00583153,0x0078c796,0x004c505c,0x005050db,0x00722fc1,0x007ded3c,0x009c10c3,0x0089dd00,0x007f5d0e,0x00605508,0x00500a5a,0x005e0295,0x0055a478,0x00678262,0x0066b2e8,0x00880088,0x007312e5,0x004f6b15,0x005b4178,0x0015e878,0x0093c404,0x00c64d89,
-0x00c69d4d,0x00bf5827,0x00ac97dc,0x00c0381e,0x0078b76a,0x007327fe,0x008ca7e5,0x00976908,0x009dffe3,0x009e60df,0x0085085d,0x00627c68,0x0058cda0,0x006ae0e9,0x0056e696,0x0051142d,0x00461c2c,0x00528bc1,0x0053530d,0x007e41e7,0x0077a33d,0x00725ebc,0x004ed3b7,0x005a306c,0x00417906,
-0x004bc2cc,0x00498362,0x004c6199,0x0064b39e,0x0052b36b,0x004f4d65,0x001e3de5,0x00318a82,0xffcf6019,0x007d45b8,0x00e0b5c4,0x0107b91a,0x0108df12,0x00fea72e,0x0111d95e,0x009401a9,0x006c45a4,0x008aa6e1,0x00b12bba,0x00d4cbc3,0x00d61d91,0x00ab30f7,0x005c67e7,0x004a0e80,0x0044d289,
-0x0035ebf1,0x006ac156,0x00404520,0x0024668e,0x0009952e,0x005f50bf,0x0073b8ab,0x002bff91,0x00434025,0x00290251,0x0004ba2b,0x00211524,0x00402f15,0x0038815c,0x0056f905,0x00bf01a1,0x010a89b0,0x00cf6939,0x00ced828,0x00dda908,0x014d6058,0x0165cdc0,0x01267d24,0x0083ed5b,0x0005f4ca,
-0xffce1b8a,0xffd482bf,0x00204f0e,0x0097bb62,0x00785b46,0x006ccd13,0x0055b357,0x00808704,0x009317f8,0x009b7be0,0x005ff4e5,0x003974c7,0x004e0008,0x003ff57a,0x00536820,0x0077bf10,0x002053ff,0x000fef48,0x004befa3,0x00b64556,0x00b3092e,0x00418f9c,0x003dc9a9,0x00115619,0xffa5b30e,
-0x00494026,0x006524e7,0xfee2a81a,0xffbae62d,0x0032b08a,0xffc95f99,0x001e7caf,0x002a4628,0xffe0d844,0x008a62ea,0x00a886c2,0x001d2604,0x003379ed,0x0051e971,0x009e1774,0x00be7d9b,0x00f2b929,0x01353c9e,0x00e799bf,0x0095e981,0x0063fb6c,0x003b425c,0x003564a1,0x00453049,0x00743695,
-0x00684e86,0x00397c19,0x00489eeb,0x005e8a7c,0x00712936,0x001f6002,0x0017f86c,0x00304cf5,0x004d5257,0x0067ae6b,0x00394d7d,0x00c5fe72,0xffce84a8,0xffeaa3e0,0x00804835,0x00efe1e6,0x01cde57c,0x01a15cd0,0x0190ec88,0x0151e380,0x00e7a7f5,0x00ae2e85,0x009769f1,0x00e9780d,0x00f53d28,
-0x00cc9f3e,0x006aaf47,0x00359cb4,0x004d1206,0x00155ec2,0xffef4dc8,0x0015c496,0x0020c6ad,0xfff8efcf,0xfff616fa,0xffffc02c,0x0011e101,0x00397baa,0x002a0dc6,0x001da75a,0x0024708b,0x00268cda,0x002f29f5,0x00159ab7,0x0058cc3f,0x005cfce1,0x002e761e,0xffe0c40a,0x005ebca9,0x0087fd74,
-0x0106a3ac,0x0194f05a,0x022ca17c,0x01c3acbc,0x0145927c,0x006b01bb,0x006219fa,0x00510ee7,0x002fd67a,0x003bb3d0,0x00476274,0x00490d9b,0x005979d4,0x007e189b,0x00a6c00c,0x008f8459,0x005e6a93,0x003e523e,0x001ae242,0x0013c3a9,0x0019ee1f,0x002b96bc,0x0027b8bb,0x001e65b2,0x001dec6e,
-0x0022fe27,0x0016217f,0x000edf99,0x000413aa,0xffdbb543,0xfff2dd7b,0x000cfc1d,0xffefad99,0x002db745,0xff8c3519,0x0068dd7c,0x010adf2c,0x0128f602,0x0132c94c,0x0127c922,0x00fdd3ca,0x00b5dd62,0x003e69bc,0x0036b414,0x00a853e1,0x007b7296,0x0078dd37,0x00787c19,0x006002be,0x0043b121,
-0x0029ef04,0x0008df59,0x00095c2a,0x003af3ab,0x0038a1e6,0x00296b5a,0x0008c1e6,0x0019ef65,0x00116883,0x000a1d89,0xfff7abb0,0xffea1d36,0x000387a9,0xfff7e6b0,0xffdbae3e,0xffabcc9b,0xff60a078,0xff2d1e22,0xff08aaae,0xffa22c4a,0xff6f3bb1,0xffea633a,0xfffaeb34,0xffd8a95a,0xffb3d994,
-0xff810514,0xff86c1b0,0xffe2dafc,0xffbb9aad,0xffb3e41b,0xffb732ba,0xffecaa46,0x001e6788,0x0039a337,0x0061a449,0x006e6483,0x0065ced1,0x003faf49,0x00275ade,0x002aa14e,0x003537f0,0x0039a4d3,0x003cbf58,0x0036e355,0x00178c7d,0x000c686d,0xffcbdffa,0xffacabad,0xff9b4c3e,0xff8c4cc9,
-0xff829ac9,0xff80d2bb,0xff91c33c,0xffc58450,0xffee4f62,0xffde7dab,0xff79616f,0xff56dcf6,0xff691ff2,0xff8dda10,0xffb0d6fa,0xffee7dce,0x001ff731,0x0051ee39,0x00498203,0x004bf6f5,0x00427211,0x0044e2ee,0x003e6697,0x003970df,0x0043940a,0x004dc88d,0x005b7f4c,0x00562007,0x004e96b4,
-0x00507d26,0x003d430b,0x001fcfdb,0x000a42db,0x0011a652,0x001a778c,0x0029459e,0x001cef1d,0x0008d8c3,0x0012b327,0xffec2da2,0xffe796c0,0xffd3b7dc,0xffb534b0,0xff9254ed,0xff703644,0xff6c1aa7,0xffb732af,0xffd2423b,0xffd23b6c,0xffe159fa,0xffe52e3a,0xffebb5f0,0xfff169aa,0x0001fc68,
-0xfff8c7f1,0xfff309b3,0xffef511a,0xffea4882,0xffeacee3,0xffef48c4,0xffeae09e,0xffe60402,0xffe14d8a,0xffe12e53,0xffd94fe1,0xffe54068,0xfff29a92,0x000bff34,0x002c5db9,0x0020a96e,0x0033ba2b,0x004ec73b,0x0039271c,0x003b8d05,0x002e171e,0x001ed664,0x000a89cc,0x00056b16,0xfffa8187,
-0xffef5502,0xfff497d2,0xffe768dd,0x002a01f3,0x00003699,0x0002940e,0x00094de2,0x000d7d9b,0x0013175b,0x00174bbb,0x001ca447,0x0017f275,0x0016b561,0x0014ff62,0x00141b75,0x0011dbd6,0x000f6ba2,0x000ec25c,0x000ee69a,0x000d8af9,0x000e4c19,0x000cc78c,0x0005ec96,0x0035d050,0x00282201,
-0xffc9a72a,0x0049b21d,0x00397c38,0xffd4c8cc,0xffd7832f,0xffd93ae5,0xffd56c5e,0xffdd3941,0xffdbd9be,0xffd82dc0,0x001ef705,0x0033ee93,0xffb664c9,0x001083c1,0x00285c81,0xffaf3086,0xffb152d8,0xffa83675,0xffc06f81,0xffb031ff,0xffb19e24,0xff9d74f5,0xff98f1f5,0xffa0e111,0xff9f35ef,
-0xffa290e5,0xffaf84ce,0xffa2da8b,0xffa13a9b,0xffa0f5b6,0xffa61e24,0xffa92fe0,0xffad6064,0xffabf77f,0xffb9b7a8,0xffa32b76,0xffb31bb7,0x00062091,0x00bff555,0xff9972b5,0xfffcb395,0x00b239a4,0x00b2013e,0x00af1b91,0x00a134b8,0x009bd224,0x00974d74,0x008cc242,0xfffa1674,0xff93dd9e,
-0x00b0f658,0x0009b22d,0x002ebeab,0xff931055,0xffbaf401,0xffa7d2c2,0xffa427ba,0xff695424,0xff5b89f1,0xff77bae7,0xff76fa6b,0xff8261cc,0xff9fd67f,0xff7d9704,0xff7242bf,0xff723e0b,0xff78ba31,0xff81cf56,0xff8cfb36,0xff91e565,0xffa4af18,0xff98021e,0x003a24aa,0xffd7fdb3,0xffc81555,
-0xffe8a274,0xfff7b70b,0xffd61133,0xffec2128,0xffda72b5,0xffdcce20,0xffca6982,0xffd00bc2,0xffdd84e6,0xffd8fcf5,0xfffd9d42,0xffe69ca8,0xffb3a45d,0xffd50e14,0xffca64b6,0xffcc6be2,0xffa4e30a,0xff9d40e9,0xff3524c8,0xff121ed6,0xff453855,0xff384dbd,0xff4a66fb,0xff8ac4e0,0xff461bd0,
-0xff3f94b5,0xff3e7f43,0xff552b11,0xff63cb9f,0xff77583b,0xff86e770,0xff909aa2,0xffbff3f4,0xffe70734,0xffec25a2,0xffee7809,0xffe1556c,0x000b0075,0x0003f180,0x0050e6c3,0x0039c604,0x00203fd8,0x002a0ab4,0x001fede5,0xfffed979,0x000ee458,0xfffd9d28,0xfffa450a,0xffd326fe,0xffc90b39,
-0xffb90adf,0xffd6fb81,0xffb43bfd,0xff95f70b,0xfedcdb34,0xfeab3c54,0xff09a1f2,0xff0b0f60,0xff2f3e06,0xff98194c,0xff248d5d,0xfee5e596,0xfed4fcaa,0xfee346ae,0xff0b82be,0xff304f25,0xff4e54f5,0xff7b1a4d,0xffa62c23,0x000a263b,0x000039d2,0x00372f7e,0x000ed053,0x0012b0e4,0x0016daa7,
-0x005ca808,0x007ef2d4,0x003c906c,0x0038325c,0x002a3ccb,0x0010b4be,0x001ab317,0x00105093,0x001a629d,0xffd160db,0x0013af90,0xffdc2d2f,0xff87c41f,0xff600a9c,0xff9969b5,0xffc12b6a,0xffa5b42a,0xff1750f5,0xff172168,0xfef9a59c,0xfee9e4e2,0xff1a71ea,0xffabb6b7,0x00af549d,0x004dfb8a,
-0x00261beb,0x000c9a50,0xffdea651,0xffb5ffae,0xffc01e70,0x0011405f,0xfffd8f24,0x001271cb,0x00149922,0x002d6f49,0x006def05,0x001827b8,0x000f2bb8,0x00618f9d,0x009e1393,0x008c3bf3,0x0018b55e,0x000b7982,0xffcdca6b,0xff73f3a9,0xffca8524,0xff6c3c9c,0xfe75beae,0xffe26336,0x00133069,
-0xffbcc3b8,0xff78f57e,0xff6f3325,0xff82e651,0x000ce888,0x00470a54,0x000a40e5,0x000f2693,0x001215ce,0x001abd43,0xfff5ad00,0xffbf6c0c,0xff725587,0xff84fdc7,0xffa74fc6,0xfff02f89,0x0019f1f8,0x00100947,0x000b5e0d,0x0044c24a,0x00464d08,0x002d7e19,0x00525a18,0x0067066b,0x0063b48b,
-0x0011039d,0x00114fd8,0x0036cf3f,0x0037ce30,0x002099ec,0x000bf072,0xffe4a65e,0xfff92724,0xffd686c7,0x00498006,0xfffc1f29,0xfef3a758,0xfe527834,0xfdf79444,0xfe190fb8,0xfed9b300,0xff78d50c,0xffb88158,0xff4b9523,0xfefea034,0xfede70e8,0xfef949e8,0xff6259fb,0x001f9828,0xffe6500d,
-0xffbf4aad,0xff9edbe4,0xffa4b887,0xffbdfbab,0xffcdf6ef,0xffc804be,0xfff9b790,0x0037780f,0x001cfb0d,0x001238e6,0x001a2b9c,0x001d7375,0x001bfb07,0xfff5d664,0x003e9574,0x00561163,0x002076d8,0xfffe7786,0x002fa4db,0x00392de8,0xff7ac086,0xfee985a8,0xfe1c7a5a,0xfe96c2ca,0xff1e7bf9,
-0xffd639e4,0xffafab86,0xff9a2e6d,0xff7ebb94,0xff6ee6c0,0xff8127af,0xffa0d953,0xff81e5f0,0xff7c0bf8,0xffa90a95,0xffb88696,0xffeab9f9,0x00054292,0x000a0a45,0xffe97c74,0xfff93e84,0x0008204e,0x0009905f,0x000cc4e9,0x00243784,0x001b66ce,0x000a8b13,0x00102be7,0x0006f35e,0xffce8249,
-0xffe0591f,0xffd18320,0xffd7c5f3,0x00078935,0xff8ed9b1,0xff03dfc8,0xfe35ed2a,0xfe62a948,0xfeb375d4,0xfead8278,0xfea6c120,0xfebbc0ca,0xfeb3da30,0xfed0cc30,0xfeef044a,0xff285f7d,0xff6421af,0xff86bfe2,0xffdec3cd,0x0005e114,0x00033698,0xfff8118b,0xffe4f934,0xffe85da3,0xffecd5ea,
-0xffe02244,0xfffce16c,0x000b1e46,0xfffc861e,0xffe1a4b3,0xffe8ecdd,0xffe33873,0xffe1e590,0xffd22c3a,0xffadae41,0xff7950e9,0xff3fb5c0,0xff170297,0xff30be63,0xfefa9d88,0xffc9100f,0xff27795c,0xff03121b,0xff06dfab,0xfee23a28,0xfee14fba,0xfeecff84,0xfee884a8,0xff6123c9,0xffaac577,
-0xffd57dc5,0xffbb8d5e,0xffaaa450,0xffa96e5d,0xffc03ac1,0xffd20ed5,0xffe4cad8,0xffddba82,0xfff7d76d,0x00342a37,0x002b8af7,0x001dd5c1,0x0002cf2b,0x0000d57b,0xfffa8b64,0xffea0942,0xffa5a23e,0xff8a78be,0xff8babee,0xff7470fe,0xff644528,0xff550812,0xff64c1bc,0xff6ea7b2,0xffac9822,
-0xff610231,0xff123ea1,0xff082d65,0xff13912a,0xff19a3a1,0xff22595a,0xff3a8dcb,0xff500a57,0xff5d39da,0xff6e286b,0xff7b44aa,0xff94d39f,0xffcd2592,0x0002d82c,0x00341b3d,0x002f90f6,0x0030e891,0x003539ca,0x002484e2,0x0011e4cb,0x00046c2c,0x000811ff,0x00093b7d,0x00035b2a,0x0003039c,
-0x001001f6,0x00127704,0x001321eb,0xffdf2513,0xffde6858,0xffca0af7,0xffd0fea3,0xffbaec2b,0xff9562ce,0xff6a4a67,0xff523241,0xff2e2edc,0xffdb342e,0xff745bc0,0xff7ca485,0xff774663,0xff768b1e,0xff713d48,0xff6f6246,0xff706213,0xff91a6f5,0xffb2a853,0xffcc416c,0xffe4126a,0xfff68987,
-0x000ef6ce,0x00050a9c,0x0000965d,0xfffc7025,0xfffa2001,0x00036266,0xfff07b0c,0xffec8056,0xffdd8531,0xffcfc328,0xffe9fc87,0xffe3cef5,0xffd1c745,0xffc3e9b3,0xffb6b204,0xffc08c97,0xffaee5df,0xffb166ea,0xffbe4ade,0xffb287c5,0xffc25a85,0xffaef295,0xff96dc6a,0xffabfc04,0xffa4f008,
-0xffb557db,0xffb098c6,0xffb2789b,0xffb2f7cd,0xffb38536,0xffad91ef,0xffba977d,0xffc293bd,0xffccc4c0,0xffd61ae6,0xffdf7fe3,0xffec6798,0xffe8738d,0xffe83477,0xffe7504a,0xffe3f341,0xffe34517,0xffe38c5e,0xffca14b4,0xffed860b,0x004cab84,0xffbd7a9a,0xffea0c18,0x00622d5e,0x005aef6d,
-0x0054df3e,0x004a49d1,0x004389de,0x003a0fed,0x002fac55,0xffdb3758,0xffa353b3,0x003a33de,0xffdcbc5e,0xffc9ea83,0x007e7070,0x00485ceb,0x00a19a1d,0x006b3c25,0x007235c7,0x005fac21,0x0078ad8f,0x0081be99,0x00899db5,0x00852f48,0x00833f71,0x00874fd8,0x007662c4,0x0072b588,0x0073223e,
-0x007b8bd6,0x007f6904,0x00835e67,0x00817b87,0x0071fe05,0x0094c9d0,0x003fc3ae,0xffdae755,0xff42a615,0x005d8e04,0xffe9d1e7,0xff5b8085,0xff63c2b9,0xff674607,0xff70f887,0xff6938c6,0xff67ba9c,0xff6b12e1,0xfff1e9da,0x0075f4d3,0xff529535,0xffd77ab2,0xffae303c,0x009bfc0a,0x006cf92e,
-0x0061f55e,0x0040269e,0x0073ed6c,0x0090c465,0x00aa5f74,0x00ac6213,0x00a97f1d,0x00b10718,0x00801b15,0x0070e9b6,0x00779b0e,0x008c32ba,0x009c51f1,0x00a9462e,0x009c8296,0x00920a34,0x0084cbb8,0xffbc608c,0x00438ff9,0x003af17b,0x002510d9,0x00205bb6,0x006047eb,0x00757c08,0x00843667,
-0x00500df0,0x00740b4e,0x006ea43b,0x003b4b45,0x00579715,0x0027fab1,0x0028cff2,0x007072ff,0x00463a8e,0x009d5bc3,0x008a1da2,0x0057e4cc,0x0019ac0b,0x007a6012,0x00b17c7d,0x00e7b9bf,0x00dd1395,0x00cf6840,0x00e30702,0x00820538,0x006e2469,0x0077283c,0x00a37fac,0x00b989de,0x00d098a5,
-0x00b056a6,0x00b19596,0x0055daf2,0x00244728,0x002c291d,0x001c350b,0x002e8881,0x001eb113,0x005fa946,0x0055d11d,0x00998b61,0x0047afab,0x005f8342,0x0034fd6e,0x00355f85,0x003ad413,0x00371794,0x0018f14e,0x00530164,0x0009b942,0x008a0e93,0x005f0dda,0x0022935d,0xffc18102,0x002d99a7,
-0x0092c994,0x010822ba,0x0113007a,0x0114e6a4,0x01357b24,0x009e0f27,0x005c7a92,0x006a165e,0x00ab750f,0x00e714e6,0x010b137e,0x00d97813,0x00b546fa,0x00571eb2,0xfffb887e,0x004305c7,0x0018eae4,0x0040404d,0x003a0d13,0x003b74ad,0x007b868e,0x007c5d1f,0x004af705,0x004287d4,0x003fc325,
-0x0017d6d8,0x0043ec11,0x004ce2be,0x00318210,0x005415e9,0x007dbe97,0x012cf7b4,0x010d540c,0x00de348b,0x00e7c186,0x0191ed2a,0x01a69928,0x01345a98,0x01058c4a,0x0094baa2,0x003b973f,0x002205f5,0x0060bfb8,0x00f1bbbd,0x00c0afb5,0x00b1c13f,0x00de56df,0x00d0a3f9,0x00f40285,0x00a312e1,
-0x002c06fe,0x00700645,0x004c5553,0x0039edb0,0x003421e5,0x0062a2f6,0x002053c8,0x00242e0c,0x007f8b91,0x00af3ede,0x008befec,0x0031a804,0x00214813,0xffdb2ebf,0xffa2855c,0x003a5cef,0xff5d5937,0xff559426,0x0065a64a,0x0086110f,0xffd0764e,0x0019da88,0x00174868,0xffd512d6,0x005f4e7f,
-0x008dd3f6,0x005e59c7,0x0020b7f7,0x0026d2b9,0x0080c912,0x00d75572,0x01253462,0x016d0ee8,0x00e1c75c,0x00a89778,0x004fe1e9,0x00025500,0x0017685f,0x0029b6df,0x00676485,0x006bebd8,0x0037e762,0x0061a9be,0x0073ffe2,0x006641b9,0x0023c586,0x0025614f,0x00603aea,0x003b1047,0x006b5aa8,
-0x00800c28,0x0012e46b,0x001cafba,0x0053eaa7,0x00bbedd9,0x0101b8a8,0x01b341b6,0x018914da,0x0172bdf2,0x016088e0,0x0108570a,0x00e02c45,0x0101b60a,0x01449bf2,0x0167e682,0x0133eeea,0x00e30e1a,0x007f55c6,0x005055a5,0x000d8549,0x001b8af2,0x0022edb6,0x000ab9a0,0x000e12f5,0xfff7c29e,
-0xfff3011a,0x001369dc,0x003f491a,0x002e5c93,0x0027956f,0x00250cc7,0x002e5bd2,0x00284ab4,0x0000081f,0x004693ae,0x005fd01d,0x0023a120,0x0030ec4a,0x00113a7f,0x0042195d,0x00e741f4,0x01617c8e,0x022dd0f0,0x01db579a,0x017fc48c,0x00ff05d0,0x006f0b3e,0x003335ca,0x00412157,0x00110339,
-0x0012e075,0x001ba23c,0x005986c5,0x0091996c,0x00ccbf67,0x00ba9514,0x00942e0c,0x0048d466,0xffeb0853,0x000307ab,0x0018d185,0x000feb77,0x0011f423,0x0017f719,0x002e405f,0x00303d85,0x00181848,0x0021ed81,0x0018ff50,0xffef3244,0xffe399de,0x00036271,0xffcfb0b2,0x0003fb31,0xff23b98d,
-0x002479e3,0x0107061e,0x0117659a,0x0158659e,0x012d56d6,0x00f2d5db,0x0094fdef,0x00429ef9,0x003ec9be,0x008b41f1,0x00627912,0x00666e47,0x006f5e84,0x0047c9c5,0x00245e11,0x0014218c,0xfff76397,0x000f5137,0x003cf34c,0x000783b6,0x0021a75f,0x0009d2aa,0x00104fa2,0x000823bc,0xffeab03a,
-0xfff1e175,0xfff84dbc,0xfff3784e,0xfff15289,0xffc362b5,0xff9369ea,0xff5971c8,0xff36bf0a,0xff30770d,0xff8426a6,0xff31bafb,0xffdcf747,0x002a1afb,0xfff1b9cb,0xffdbcb8d,0xfff2bf63,0x001a17eb,0x00517a56,0x000e00bd,0xffe67c88,0xffd84b9f,0xffffccb4,0x00222269,0x003fd486,0x005edfc0,
-0x006c1554,0x00502ca3,0x0046a913,0x0033a6d8,0x001cd686,0x002684cd,0x002e6278,0x00208ec4,0x002e7da1,0x0011b0a2,0xffe827f3,0xffb3409a,0xff968b6f,0xffa365a3,0xff921513,0xff830d64,0xff782a00,0xff6f12e1,0xff9931f0,0xffb683e9,0xffd0ea5d,0xff81cdde,0xff96fe84,0xffb8fb5b,0xffb5eee4,
-0xffc639c2,0xffe4ed8f,0xfffe8e21,0x0025090d,0x0026bd37,0x00361bcc,0x0038914f,0x004a0794,0x0053444a,0x005a2a4e,0x004e68ef,0x00471cfd,0x004592ee,0x004c0a3d,0x005d60b4,0x005641bc,0x002efb65,0x00267977,0x0022538f,0x0017fe93,0x00085ff9,0x0011e1a2,0xfff23f2d,0xffeb4f4f,0xffc4ef6e,
-0xffceb248,0xffcac454,0xffdb1e3a,0xffbcab58,0xff98d7df,0xff6e98c8,0xff8424d2,0xff61d6c1,0xffb9e412,0xffce711f,0xffe9cace,0x00057836,0x001f8184,0x003aba83,0x00589143,0x004ef7bc,0x0046f9b4,0x0040762f,0x00371aeb,0x002f7406,0x002d1d95,0x002c04fa,0x002b4e06,0x002840f0,0x00264593,
-0x001ff65a,0x002d5898,0xfff53147,0x0024e607,0x002a52fd,0x001301eb,0x000e09fe,0x0025a654,0x001cd204,0x0016ef65,0xfff9ddbc,0x000537e1,0xfff82aca,0xffe0effa,0xffdb648d,0xffc0e6fc,0xffc2cbce,0xffd04412,0x00019df0,0x001b676f,0x00157232,0x0022df84,0x002a10c6,0x003286f6,0x0039bd15,
-0x0046202a,0x0040b8da,0x00408c5e,0x003f803f,0x003f382d,0x003e5ff2,0x003b6cc0,0x003b2b8e,0x003abb34,0x003a1970,0x003b0f81,0x0035c5c9,0x0040f340,0x00276606,0xfff0cde9,0xff92d042,0x00358229,0xffefeb41,0xff8d6734,0xff8db864,0xff925ef2,0xff997870,0xff94f425,0xff944e06,0xff955610,
-0xffd77e9e,0x0019d3a9,0xff7e8d38,0xffc5ac48,0x00447569,0xffad68b9,0x001e4f31,0xff90d9bf,0xffbecbc2,0xffaf3db2,0xffb2e138,0xffa5d604,0xffa24790,0xffa55045,0xffa2f0c2,0xffa38ad8,0xffabba29,0xff9f8813,0xff9d1f01,0xff9bbe25,0xffa06011,0xffa4a617,0xffabf490,0xffad4e31,0xffbba571,
-0xff8c376f,0x001b3857,0x0079b34a,0x00d8867c,0xffeed333,0x0072f78f,0x00db2ce0,0x00e42517,0x00e395f7,0x00ca05fb,0x00dbdacb,0x00db52d6,0x00cde677,0x0071e06c,0xffe3e1b4,0x00d569cb,0x008b81e1,0x009a6009,0xffaf0aeb,0xffaf3d37,0xffb0ece3,0xffafc528,0xff8f1ae7,0xff86531f,0xff9012d5,
-0xff8c59cd,0xff8d2948,0xff9e07b6,0xff7a65e1,0xff68eac3,0xff65b725,0xff69bf50,0xff7be4c9,0xff928a99,0xffa747a1,0xffa6a1c6,0xffb3604a,0x0085fa90,0xffe86cc2,0xfff27425,0x0002caf5,0x001e1f3b,0x00045d13,0x00047183,0x000655ec,0x00233943,0xffef69e2,0xffdb5acb,0xfffbf9e6,0xfffa5510,
-0x00325d63,0x00243076,0xffce817d,0x00427b5c,0xfff6615c,0xffaf8388,0xffb0e3d7,0xffa66371,0xff746cdb,0xff614b46,0xff6fc708,0xff629d83,0xff6272e0,0xff86f7e6,0xff47df4c,0xff382d9b,0xff382c68,0xff4554eb,0xff604200,0xff84adc7,0xffa56620,0xff95cfc5,0xffe43eae,0x002affac,0x0008a353,
-0xffef6828,0xffef1cf9,0x0035145e,0x001dbd12,0x007218c4,0x0029b52c,0x005653b3,0x0023e4da,0x00496464,0x001260a5,0x00358150,0x00296c8d,0x00319a23,0x00138163,0x00263a04,0xffe8c1e0,0xffb9f898,0xffc59987,0xffb04b40,0xff51fa55,0xff40018a,0xff60b72b,0xff5a6108,0xff59ab70,0xff92eb38,
-0xff2dded7,0xfee23c9e,0xfeccbb82,0xfed0bb7c,0xff1050e9,0xff5889ef,0xff91db80,0xff919008,0xffcb0c49,0x00394fea,0xffd62adc,0x001e0ece,0xfffc3a5c,0x000d92f6,0x0024dd9d,0x00695105,0x0089cadd,0x003541c3,0x003e3c65,0x00278542,0x000ee3f3,0x002ea801,0x0041d302,0x001fb90b,0xfff377d4,
-0x00f40a62,0x003c7b46,0xff639d8e,0xff512435,0xff724c49,0xffe318b7,0xffda216c,0xff2544e9,0xff33c98c,0xfee989f4,0xfe932a36,0xfe9e3354,0xff24d11f,0x0038d75a,0x00219646,0x000f7ae2,0xffbae23b,0xffc3db53,0xffa09f9b,0x000e6ecf,0x00818786,0x00135ebb,0x00314a32,0x00174749,0x00283837,
-0x005b44b3,0x00121f3f,0x002276b8,0x0090d5d7,0x009967de,0x006b888f,0x002de4bd,0xfffcb049,0xffe2b9da,0xffd4ca50,0x00884831,0xfef79a64,0xfeb94b9c,0xffa3222e,0x00244f3f,0xffd269f3,0xfff9dc01,0xfff5a8a6,0xffca69f8,0xfff83af8,0x0018adca,0x0036f595,0x001dfd57,0x0017eda1,0x001d857a,
-0x000bc18c,0xfff19b4d,0xffb86077,0xffbf5e82,0xffa86ade,0x00112278,0x002a4440,0x001117af,0x002074f5,0x001d0ba4,0x002a117b,0x0025b442,0x00610859,0x0075383d,0x0056fb8d,0x001374ef,0x00227924,0x0049b924,0x00399f13,0x0029646d,0x008a400b,0xff339b47,0x007fce0a,0x00606c45,0x0098bf05,
-0x004fefc7,0xff9a3b1e,0xff1856fb,0xfe98ff84,0xfe938900,0xfe8758ae,0xfeee0bf4,0xff94ce80,0xff28971f,0xff1b09e1,0xff1a3119,0xff3320aa,0xff7c80f5,0x000189e7,0xffd6942c,0xff94e846,0xffc101d2,0xffd55e05,0xffd0d4a4,0xffff2465,0xffde6604,0x0008870e,0x003b32c8,0x001d13fc,0x00115215,
-0x0015bfe3,0x0026ee89,0x001f72e9,0xfffa2b1f,0x00504732,0x0053665a,0x005f2dc9,0x005ece53,0x00038bc6,0x0019fe7c,0xffbe2a37,0xff9cae24,0xff049289,0xff7b5849,0xffdf18f4,0x0044fc94,0x0022d4c7,0x000b3ba3,0x002f2efc,0xffc50e3d,0xffafb884,0xffc19f6a,0xffbcaeca,0xffb5b516,0xffca72ca,
-0xffdd057b,0xffecbe7b,0x0013a67a,0x00264f80,0xfff1927e,0xffffde6b,0xfffa624b,0xfffc6c9d,0x0006b962,0x002575d4,0x00314304,0x00135193,0x001ebc29,0x000de666,0xffc7dbcf,0xffdce0f4,0xffccae28,0xffcb7ada,0xffd15ad3,0xfff7adb1,0xffac501b,0xfeff1664,0xff30374a,0xff490c46,0xff432bf4,
-0xff0ecf14,0xfed314c2,0xff0a76ce,0xff38dcc2,0xff762443,0xff9a338b,0xffb7c701,0xffd27a7b,0xffef2722,0xfffa4940,0xffe76381,0xfff7e332,0xffe73da1,0xfff1a88e,0x00121f58,0xffe80e0c,0xfffbde77,0x00061164,0xfff5f116,0xffcc626d,0xffe95aeb,0xffdeaa52,0xffe7ea31,0xffd1305e,0xffbbc8d0,
-0xff9ce946,0xff7355be,0xff61c96f,0xff960e27,0xff70e167,0x0025362c,0xff9d4eaa,0xff473260,0xff500acb,0xff1d06f9,0xff256de3,0xff2a6518,0xff1963b9,0xff870711,0xffb3248f,0xffbcf74f,0xffbbbbe0,0xffc4de85,0xffdea3b0,0xffe96d38,0xffe3ec58,0xffc6c23c,0xffcd1179,0xffe37e12,0x0024e452,
-0x0024bb7d,0x001dc9bd,0x002c1357,0x00102013,0xfff2f285,0xffca4b89,0xff9656bd,0xff891adb,0xff7f8451,0xff760251,0xff64c3bf,0xff4e199f,0xff5383b2,0xff612c7a,0xff99f8aa,0xff99858f,0xff8276d7,0xff59be41,0xff3fe040,0xff494914,0xff3af9a1,0xff48158e,0xff4a910b,0xff482b98,0xff640988,
-0xff7e84fb,0xffa1e33a,0xffd0067b,0xfffc2313,0x002df474,0x00160e30,0x000bda0c,0xfffe42ae,0x00056d41,0xfff1819b,0x0009e84f,0x00315830,0x002867f4,0x00258fd1,0x0008c912,0x000bddaa,0xffed4983,0xfff74b01,0xffad9f3c,0xffc28352,0xffab964e,0xffd6073f,0xffcf5192,0xffc2f852,0xffb9f1df,
-0xffbde99d,0xff904b52,0xffdbd2f5,0xff6d5b05,0xff76567b,0xff7edd86,0xff85d599,0xff8a8861,0xff92b833,0xff9d3c43,0xffb441c4,0xffc962c4,0xffdc21c8,0xfff0d61e,0x00050f9d,0x002444bd,0x001dc7db,0x001ddb16,0x00198504,0x00187076,0x001ab8f0,0x000d62e4,0x002c059f,0xfff472c2,0xffefe684,
-0xfff92bce,0xfff6f682,0xffd5b6ab,0xffc06a80,0xffc00289,0xffd3d524,0xffaacc23,0xff989c56,0xffa9b633,0xff99aa07,0xffaf06ac,0xffa225b8,0xff7bce97,0xffddeca4,0xff92f478,0xffae62ce,0xffab555c,0xffae2cdb,0xffb09c89,0xffb20341,0xffaf939d,0xffb909dc,0xffc1472a,0xffca9f70,0xffd3a58b,
-0xffdb6673,0xffe5a981,0xffe204de,0xffe22af0,0xffe29576,0xffe01343,0xffe27fb6,0xffd55bd3,0x00043d3f,0x003bb9ec,0x0078be5d,0xffe9b06f,0x0034f53c,0x0083ac9a,0x00816d95,0x0078d5ff,0x00669ef1,0x006aabed,0x006374ec,0x00572325,0x001a9ec4,0xffc8a523,0x005296d6,0x001d70aa,0xffc15c14,
-0x003bd8a5,0xffcd75b4,0x0070efaf,0x00338ff0,0x00325be3,0x002540ec,0x002b63a6,0x003105dd,0x00404be0,0x003a4c92,0x0039f011,0x00400ff9,0x003018ee,0x002b200c,0x00273c56,0x00322425,0x00388c74,0x00408745,0x0040f729,0x00393166,0x005ee610,0xffc3d75a,0xff7efc35,0xff6d40ec,0xffe0f382,
-0xff8749b4,0xff7f8f4a,0xff79fb76,0xff7a65df,0xff88c491,0xff71560d,0xff6d0fae,0xff6d4985,0xff906d86,0xfffbee64,0xff78b421,0xff7af1ca,0xff7c8afc,0x0050d678,0x003df29b,0x001c0c9e,0x00060ce9,0x0005c8eb,0x0013a2b9,0x003efe5f,0x003df1e1,0x0042b04c,0x004e3728,0x0028ef12,0x00193cb9,
-0x0013e443,0x0027b799,0x00378526,0x004dbd93,0x00486b08,0x00570710,0x003153f0,0xff90e33d,0x000462e2,0xffde2d57,0xffec12c9,0xffe9fb16,0x001b873b,0x0033caee,0x002c2af9,0xfff9ab43,0x002812c3,0x00379beb,0x0002731c,0x001ff466,0xfff724f0,0xffe12898,0x002c785b,0xfff70e34,0x00722944,
-0x00638e49,0x000b70d8,0xffed6034,0xffe51cb2,0xfff962e2,0x005ba0b7,0x0042d860,0x004497b9,0x005d8f6b,0x000c367c,0xfff22ebe,0xffe0d9a6,0x0014a4a3,0x0034be5f,0x00616798,0x005ae0f5,0x007a580c,0x001aba89,0xffd86358,0xffedef0f,0xffdee7e9,0xfff7dc6a,0xffec805a,0x004080e0,0x0030b4b4,
-0x00823952,0x00193ee6,0x00548e07,0x001467c0,0x000f9ff4,0x001ed9f0,0x0017ee58,0xffeb7e0a,0x001b1b7e,0xffd8b0f1,0x00784628,0x00546ede,0xffe9f33e,0xffb2917c,0xff797f85,0xff9d43da,0x00444c84,0x003e9ad3,0x0056af41,0x008bcd3b,0x0017ede3,0xffcb721f,0xffb034af,0xffe0f968,0x001fb7bf,
-0x00669746,0x00643426,0x008384aa,0x002354c6,0xffd1c314,0x00244fbb,0xffd58e67,0x001ded7c,0x0036fa41,0x005720fb,0x0088332f,0x00889c0f,0x00617c59,0x00432d25,0x004a1faa,0x0020796f,0x0055079c,0x004abbd7,0x0023bf96,0x002853a4,0x004a5296,0x00c8227a,0x00a53f1f,0x0054598f,0x004a538b,
-0x00e68766,0x00e8e07d,0x004fbf8b,0x0098ffec,0x005112b0,0xffe25ada,0xffe70216,0x002e543b,0x00c8928c,0x00acb98c,0x00a2df8d,0x00dea682,0x00a05257,0x00acf432,0x0046a05e,0x0004851e,0x006fc62c,0x003f5e19,0x002bc664,0x0016f917,0x004bce31,0x0015b65f,0x00317800,0x00afed0d,0x009224c9,
-0x0059a63d,0x001f141c,0xffecc2b6,0xffa4caa6,0xffb54435,0x00284bc8,0xfe725de4,0xff6d87be,0x00845245,0x007a0225,0xffebef25,0xfffc82df,0xffd3cdb0,0xff7dc2a2,0xffe119d5,0x002ca9d0,0x0076fb19,0x00136955,0xfffe889b,0x002b049f,0x00800940,0x00af0a2d,0x00b8c6e7,0x004a65ec,0x0048873a,
-0x001aff73,0xffe91dfc,0x000274d6,0x000aa808,0x003d20a6,0x004c3c63,0x002d125c,0x006c9827,0x007b9b9d,0x00523232,0x0025276f,0x002a50c7,0x00608fec,0x002ecc10,0x0065bb58,0x00ac4812,0xff47d381,0x008d7c79,0x00bbd141,0x00d090e3,0x00aed8db,0x0097ad26,0x005a4313,0x002dcabe,0x003c2ccc,
-0x00409ca8,0x005f13a8,0x00bbb658,0x00aef322,0x00c48ca9,0x00a798a9,0x0083f3e2,0x00465d98,0x002c2dbb,0xfffccb2c,0x001d50c6,0xffff56a3,0xffe11035,0x00054b86,0xfff1e881,0xffe58b1b,0x000f2702,0x003bdfe1,0x002a0b67,0x0025c5d4,0x001cdc6a,0x0032c910,0x00268c46,0xfff5f61b,0x00320fb7,
-0x005a3878,0x003172c6,0x0087de33,0xffc0cd3b,0xffd5cb66,0x0025b233,0x003de771,0x009cc151,0x00bb05fe,0x00cfa866,0x01066068,0x0038b70b,0xffe784f6,0x001c2a7b,0xffb9752b,0xffb08802,0xffdd3064,0x00190729,0x004081b5,0x00733238,0x00729069,0x00722acd,0x0035daa9,0xffddcd08,0xfff5d045,
-0x000b8d96,0xfff8c78d,0xfffb6c16,0x000427fd,0x002f040a,0x0032e0a6,0x001af81b,0x0027f398,0x001c9fc5,0xfffad066,0xffe3553c,0xfffa3b6d,0xffc686a2,0xffda3730,0xff2ac7e1,0xff8f5a07,0x000accf5,0x00119635,0x004fe67a,0x0022f396,0xfff5adcf,0xffb60028,0xffbfd740,0xffd281de,0xffea5dd8,
-0xfff3c94d,0x00018ae0,0x000eda82,0x000530b4,0xfffd8e6f,0x000092b0,0xfff05473,0x000885dc,0x0017f589,0xffe21dc3,0x0008a9ad,0x0002d21f,0x0005ffbf,0xffffda1e,0xffd1ddaf,0xffe22c51,0xffe9a786,0xffd1a7a3,0xffdac369,0xffb30d5d,0xff8f2182,0xff73c8e2,0xff5e01be,0xff60312e,0xff6072ec,
-0xff484640,0xff9a40d0,0xffe7a69b,0xffca70e2,0xffe08429,0xfffb1395,0x00205b38,0x002ecef4,0x001aa210,0xffff3021,0xffeb3664,0xfffbb760,0x00065332,0x001c1d39,0x001e4647,0x001e5af7,0x001916e6,0x0024e3cb,0x0025fe88,0x0016474c,0x00189ef2,0x001c8c43,0x000748ee,0x000b245b,0xfff53f17,
-0xffc5f766,0xffa65777,0xff91752a,0xffa48d2b,0xff8b6d61,0xff711159,0xff5888ca,0xff4f8ccc,0xff5f3b83,0xff6a660a,0xff964936,0xff7b241d,0xffa70134,0xffcb4527,0xffb25f77,0xffb65af7,0xffb3b441,0xffb56cea,0xffc10ae7,0xffcbb616,0xffe0b050,0xffefb8dd,0x000d307f,0x0027ce79,0x00442a34,
-0x0035061b,0x002a08ec,0x00214c4d,0x00259ff1,0x003c966d,0x002b5f55,0x000a8acf,0x001ea8bd,0x002f6a4e,0x000faf71,0xffefabf2,0xffdf49b1,0xffc28796,0xffb8f102,0xff8198b8,0xffa77ecf,0xffaa4711,0xffc87eea,0xffb3e534,0xff9e4f7a,0xff82bdb9,0xff9123c0,0xff4d7f5d,0xff9404bd,0xffb0d5b3,
-0xffc4f2ed,0xffe1fcc3,0xfffd0fbb,0x00199d59,0x0031ad76,0x0035a39e,0x0037fa03,0x003a1616,0x0039fbff,0x0036bdaa,0x00367999,0x0037b40b,0x003bec37,0x003e7352,0x003dfafc,0x003e70c2,0x0045a65e,0x000333b1,0x001a9a14,0x000224e4,0xffef51d6,0xffda2d80,0xffdb82f4,0xffdca22b,0xffcd7e2c,
-0xffb4232e,0xffc5137c,0xffc0b8d7,0xffa725aa,0xffa4e2a3,0xff8fdcb0,0xff8af009,0xffa222c6,0xffb5ffbf,0xfffa3de9,0xfff2e1ae,0xfffd601a,0x0004074b,0x0009a79d,0x000f4fb6,0x00195946,0x001903d4,0x001b8600,0x001da0da,0x001fc193,0x0022716a,0x0023e9e1,0x0023f51d,0x00235168,0x00234840,
-0x0024091f,0x00202fb4,0x00321131,0xffeaef47,0xffb9f716,0xffa41a6c,0xffe937d9,0xffa98567,0xff94e576,0xff90cbfb,0xff931adf,0xff9b4b3b,0xff8deff1,0xff8bb1a4,0xff8c7617,0xff969553,0xffcdce61,0xff89c7ba,0xff8a751a,0x0015f5ab,0xfff7bb39,0x00720975,0xffe69241,0xfffb8e59,0xfff4e710,
-0xfff2eff2,0xfff79034,0xfff985ac,0xfffd3bdb,0xfff81a14,0xfff5a2c2,0xfff70095,0xffed8b6b,0xffea8111,0xffe7660a,0xffebad6d,0xfff033c8,0xfff82f2b,0xfffbc447,0xffff582f,0xffdf0207,0x006861bd,0x0082e1ec,0x00462526,0x004cdb24,0x0085c880,0x005c4057,0x0069fc5e,0x006cd9b4,0x0059c810,
-0x00722c30,0x0073d037,0x006902ff,0x008ac60c,0x004c1049,0x00526044,0x00970bbe,0x00883a0d,0x001aadc9,0xffeb71d2,0xfff5fb93,0xffecef61,0xfffb1b24,0x0004207d,0x000be77e,0x0003046b,0xfffbc0c2,0xfffd0ef3,0xffe0a16e,0xffce1248,0xffc69ebc,0xffcb89fd,0xffdfaf95,0xfff93352,0x00104121,
-0x0000077c,0x0012cf18,0x0063f507,0x000ed4dc,0x002634ce,0x001a3b70,0x00311d39,0x0041d279,0x00383feb,0x004c60c9,0x005e75ed,0x00377d3d,0x00188843,0x00218ff8,0x00311690,0x004ce30e,0x00472284,0x001b824e,0x008e286d,0x005583c5,0xffe8718a,0xfff33482,0xffdac74b,0xfffc549a,0x0010b119,
-0x001ff64b,0x0009f4a6,0xfffa0681,0xfffa47f4,0xffcb1ebd,0xffb5af3e,0xffaf0948,0xffb916b4,0xffd7f7a2,0x00015769,0x001f49ab,0x0007838e,0x0026b43a,0x004cdeec,0x001ed4ec,0xfffea29c,0x0007dcea,0x003e41b4,0x004124bb,0x00713dab,0x003e8798,0x006df9e0,0x00351967,0x005be9f1,0x00236e5e,
-0x004e536a,0x004977f2,0x0045dd5f,0x005446e2,0x006c32d4,0x004bbb90,0xffdd697f,0xfff0a0f9,0xffcf9b5d,0xfff4bc56,0x0022a1cb,0x0046ec94,0x002d54c4,0x001709d6,0x001bc292,0xffd52682,0xff90570a,0xff75c2cc,0xff7b64c2,0xffbb27fe,0x00094822,0x003e52b1,0x0017bbf4,0x001ba8b4,0x003a5de9,
-0xffd5a44f,0xfffc8984,0xfffae5de,0x0014d1ac,0x003991fd,0x00795eb5,0x008d45eb,0x003a0e4b,0x00464a2d,0x0031256d,0x00102357,0x004954df,0x006af91a,0x00213f6a,0x0030b25b,0x0168266e,0x00cce2e7,0xfff59832,0xffdcc9c9,0xffbc08f7,0x00779379,0x008e18fa,0xffe5c7ec,0xfff87541,0xff896e5a,
-0xfef1b858,0xfeeae562,0xff3d282f,0xffe88d89,0x00259f54,0x0033ec6b,0xffe77358,0x001666dc,0x0011a506,0x006f92cd,0x00a6e79e,0x0044f3d7,0x00512b49,0x0028bf76,0x00246e67,0x0044ecb7,0x000a4149,0x0033e4c9,0x00beb14c,0x008ada20,0x004a77a8,0x0035b8d4,0xffe56636,0xffe15fce,0x001e358a,
-0x0100aca0,0xfec329c6,0xff3e318d,0xff906e24,0x002f8f27,0x0006badc,0x00718d2b,0x00612641,0xffd8ceb0,0xffd78d56,0xfff825f6,0x006c1400,0x002b2160,0x001e4b7b,0x003f4d3f,0x00577693,0x00777ba6,0x00797ca5,0x004b7c7e,0x00045b12,0x003870cc,0x002bb016,0x0019bb9f,0x00325f8f,0x001345f9,
-0x002358e1,0x00251ac4,0x0068454a,0x00764d2f,0x00467467,0x001e5feb,0x002d7c8f,0x004503fc,0x004482ef,0x005ca59c,0x00e0c431,0xfeffd006,0x00e910ec,0x00eca64c,0x00da3058,0x00c93245,0x00dff4b1,0x00bf1e6d,0x0060166f,0x0004586c,0xff588b0c,0xff4f9fbe,0xfff6e774,0xffd86ba8,0x00118975,
-0x00365108,0x001417c3,0xfff5b555,0xffefe5ce,0xffe44804,0xffb49340,0xfffa872d,0x00132d6c,0xfffa8a63,0x001ef8c8,0xffff2d80,0x001a677b,0x0038eff5,0x0020b72b,0x00178a7e,0x001692c8,0x00340481,0x00313d23,0x00140f42,0x005d346e,0x00536cc3,0x008121d3,0x00b189f2,0xffc894bc,0xffe55dce,
-0x003e4780,0x00b4c83c,0x00d4a117,0x01079a6e,0x01088650,0x00c4f6b8,0x009bd83c,0x007a4945,0x00b09020,0x002bfff5,0xfffc8de0,0x00047e7e,0x002e77b5,0x003c3d1d,0x0039a3eb,0x0039c30b,0x001a55b9,0x0029094a,0x0027ccfc,0x000337c8,0x0004d1ed,0xfff92234,0xfffaeb52,0xfffff252,0x001f19c4,
-0x0038f4d9,0x001dcbff,0x0022733c,0x000fd09a,0xffe1bd20,0xffeb6e57,0xfff2f2f5,0xffda36b6,0xffbb3107,0x000b5a32,0x0058cbc8,0x005bf886,0x00729054,0x005a497c,0x00540db8,0x000d99b4,0xff9e6747,0xffd76ced,0xfffc59c5,0x00431a1a,0x00462bbf,0x00448daa,0x0042963d,0x001e9267,0x000b6d8c,
-0xfff1276d,0x00075fb4,0x0006583c,0x00126f4f,0x002a130e,0x0008224d,0x0004224a,0x0003fc84,0xfff6e8c0,0xffcec00d,0xffe17f5a,0xffd4839f,0xffe34917,0xffdc083c,0xffd61c1b,0xffcbd9cd,0xffb4f819,0xffa8b033,0xffb36333,0xffe5a154,0x000e4e3a,0x000d694a,0xffde842d,0xffe1dd18,0xffd0e648,
-0xffbe9262,0xffc24d4e,0xffd8c6fb,0xffd46da3,0xffc995a1,0xffc50528,0xffe56750,0x000a9993,0x0030562f,0x002749be,0x0013c2e8,0xffeb780e,0xfff2f1a0,0xfff5e05d,0x00127e0a,0x001a096a,0x001f0e89,0x00462538,0x00157667,0xffe7cf6c,0xffba8caa,0xffa13b8a,0xff98fc41,0xff85c3a1,0xff7f9574,
-0xff6b2f8e,0xff52af25,0xff522af2,0xff6bc455,0xff8a4571,0xffd9eae3,0xffdde324,0xffbd9dd2,0xffa4d510,0xffacf3b1,0xffa15793,0xffa7d09a,0xffa207bb,0xff9ed158,0xffb88540,0xffd69437,0xffef5af7,0xfff80c77,0xffffa7df,0x001282c1,0x0006bce1,0x00035dff,0xfff9bbdf,0x000bde82,0x0006a5ca,
-0x002a81d0,0x00461a97,0x00370207,0x0035d873,0x0005e3dd,0xfff2776f,0xffbdb357,0xffc36614,0xff91be21,0xffa325aa,0xff9830af,0xffc0d802,0xffc8d3b7,0xffd2fdd6,0xffe3cf17,0xfff37159,0xffdaf2e4,0xffb2b937,0xff9ebbd9,0xffa6daee,0xffb9b691,0xffc5ea79,0xffd4d459,0xffe55b3a,0xfff56eb4,
-0xfff3bd9d,0xffeeac0f,0xffee829e,0xfff23deb,0xfffadd14,0x000a465f,0x000a1ad8,0x000c5ea7,0x000ac75f,0x000cac05,0x0006ecf7,0x000aed0a,0x0034d27d,0x0005641c,0x000d3c57,0xfffe6d38,0x0003ef9d,0xfff199a4,0xffdf5896,0xffe3916d,0xffe9be9f,0xffc5ea7e,0xffaa57d1,0xffa9dc3f,0xffa0aa40,
-0xffa6a8c2,0xffa78d57,0xff953e9e,0x0008b001,0xffc196bc,0xffd120ac,0xffd47ba1,0xffd845c9,0xffdc16ec,0xffdeb40a,0xffe3d59e,0xffe26dfa,0xffe54f72,0xffe77326,0xffe9ddea,0xffea9551,0xffeb7160,0xffeb05f2,0xffebff22,0xffed3644,0xffed8b91,0xfff0f70b,0xffe21f09,0x00291cfd,0x0042d324,
-0x002d9c0b,0x00185934,0x003ee9f0,0x00285149,0x0029483c,0x0023d1e1,0x0016df07,0x001e9759,0x001be7d1,0x00146d2d,0x002122e6,0xfffe0cab,0x00011334,0x001e6a27,0xffe57d9e,0xffd44bb2,0xff96427d,0xfff45f4d,0xffdd24ed,0xffd1452a,0xffcfb8f6,0xffc05690,0xffbfef4f,0xffd05f8d,0xffca6929,
-0xffcbafa5,0xffd26c80,0xffc8f068,0xffc4d82c,0xffbdd45c,0xffc5e42c,0xffcbf932,0xffd4b5d9,0xffd8caf7,0xffdef4f8,0xffe5e1d2,0xff8e87dd,0xff9deb18,0x00119f72,0xff8f53cf,0xff9b7bac,0x0017eba2,0x000dcb23,0x000c0043,0x000ed72a,0xfffe1ef2,0xfff97ae0,0xfff0c5d9,0xffa248e4,0xff9cc42f,
-0x00120451,0xffa2029b,0xffc90509,0xffd8b4fd,0xffe19146,0xffbfc7ab,0xffbc9567,0xff8b9945,0xff86ed26,0xffb2fd7b,0xffac4fed,0xffb5cb16,0xffc42fe9,0xffb3cba9,0xffa5631a,0xff934b85,0xff9bc4a6,0xffa7248a,0xffbea008,0xffccc1e3,0xffe72466,0xffc4ff27,0xffcc7553,0xffc95c0b,0xffa6a6cb,
-0xffc8e113,0xffd31514,0xffe051fa,0xffed8c87,0xffdb4435,0xffcbec41,0xffdc2975,0xffec78f8,0xffd46baa,0xffe925c5,0xffe835fe,0xffc1829c,0xffd56eb3,0xffda057f,0x0019a65d,0xfffacaaa,0xffb12910,0xffb6c300,0xff518d6a,0xff3f6ee1,0xffa19d82,0xff819f71,0xff90ec80,0xffab0e6c,0xff8257ea,
-0xff6bd88f,0xff469623,0xff65ac1b,0xff839046,0xffb2f524,0xffd643be,0xfff97d4d,0xffdb016c,0xffbdb06b,0xffc5e4c6,0xffbe2642,0xffc856d9,0xffdc8227,0x0017287b,0x00230e7e,0x0042ca65,0x000a7034,0x0038abde,0x0011ca91,0xffef8d53,0x00103357,0x0003ae71,0xffdbcc5f,0xffea9a8c,0xffd8715f,
-0x002114fc,0x00046418,0xffb42d58,0xffad996b,0xfef81060,0xfed904e8,0xff6fff3e,0xff55ab0b,0xff76f7ef,0xffb674b5,0xff82e2ef,0xff3b557d,0xfef82e88,0xfefd1dce,0xff2ac425,0xff79c602,0xffbdb66f,0x000250c7,0xffdc0df4,0xffd3dff1,0xffe4be6b,0xffbfccff,0xffeb9382,0x001a98a1,0x00545fe4,
-0x0080216c,0x008d6bb6,0x005c9607,0x0042c07a,0x0045573f,0x001f00ac,0x0055e495,0x00457b4f,0x0008c41c,0xffeea4c1,0x00684391,0x00413aef,0xffe80581,0xff8ab6e1,0xff635b39,0xffe2ae98,0xffda784e,0xff30938a,0xffbd6126,0xffa15cc1,0xff2edc74,0xff52d39f,0xffa62dfd,0x003e3ecd,0x00514b98,
-0x00545bb8,0x005c14f4,0x00272151,0x0015e316,0xffeaf562,0x00114b36,0x0042ee14,0x0028ea5e,0x0019f06e,0x000660cc,0x0034dc50,0x000457fd,0x0034f571,0x00ce8a58,0x006c3ea7,0x002919a0,0x0009687c,0xffb15358,0xff885c2f,0xffdb491d,0x004df13a,0xfe27dff0,0xff3d1496,0xfffe9263,0x0023b470,
-0x001c31ac,0xfff2e1d1,0xffbd94ce,0xff6b4f30,0xff7b0914,0xffc63626,0x0072e6d9,0x00119828,0xffee57ab,0xfff1592c,0x000cdcc5,0x00022abb,0xffc15428,0xffa623a9,0xffc5c190,0xffeb05b1,0xfff9c197,0x00046b76,0x00028d17,0x0010b162,0x0023d5ac,0x00261388,0x006c94cf,0x0073e6be,0x003918fa,
-0x00221f5f,0x0026315e,0x003e8eae,0x00399713,0x0059a33e,0x009fad32,0xfeca67d0,0x00ef5ba0,0x00f30920,0x00bee3e2,0x004e4c92,0xff7f3aa2,0xff52fc66,0xff007cee,0xfec3e7f8,0xff232794,0xff7edaf2,0xfff7a111,0xffb2db09,0xffb905a3,0xffca399e,0xffe1a87d,0xffe99d5c,0xffeed06d,0xffe522e0,
-0xffee9235,0xffc3fb04,0xffc0c065,0xffecb306,0xfff0dfc8,0xffe3dba1,0x000dddeb,0x00318895,0x001c12c3,0x0018d70c,0x00150483,0x0032219a,0x002fa061,0x00113de4,0x003431fe,0x0047f430,0x004d3bcd,0x00c35e22,0xff88045c,0xff8fb0be,0xff6139d1,0xff2c51ac,0xfef1383a,0xff777612,0xfff2d980,
-0x008ff7ee,0x0027ed18,0xffee3c79,0xffff68f7,0xffa6df07,0xff8e3391,0xffb0748a,0xffd5e848,0xffe0ac4a,0xffebf7e4,0xfff30e1f,0x000df2ce,0x000dcf97,0xfff3683e,0xffedf314,0xffeefd2e,0xffe7a3c7,0xffecdeb4,0xfff31838,0x001e38da,0x00268f0a,0x001763d4,0x001bfc08,0x000fa1bb,0xfffc7feb,
-0xffeab912,0xfff0b172,0xffdb1386,0xffb61c03,0xff9b7b88,0xff597b7c,0xff013cc5,0xfefd1688,0xff2b073d,0xff130f1a,0xff03de5f,0xfef93afa,0xff477da9,0xff65bc5d,0xff4f3a84,0xff8b6fb6,0xffad56d0,0xffbc7296,0xffdb1678,0xfff236d1,0xfffe7807,0x0005d7e7,0x0008e0e4,0xfff23afa,0xffdd4dbe,
-0xffee417d,0x0005304a,0xfff94e22,0xffedff90,0xffc8718d,0xffcef00a,0xffceaf42,0xffbea715,0xffcda174,0xffbcf45b,0xffacfb49,0xffa84696,0xff97b71b,0xff98c730,0xff6b4897,0xffaee64e,0xff735d1f,0xff8edca3,0xff9db487,0xffbeea6e,0xffc3b6b5,0xffd4bf61,0xffc73058,0xffe0ae46,0xffee7a3d,
-0xfffdb671,0xfff4fbd1,0xffeba072,0xffef90c1,0xffd36102,0xffccee60,0xffda08d0,0xfff04bcd,0x00081589,0x001608b9,0x001296b6,0x000e8d77,0x00014443,0xffe4b509,0xffd242bc,0xffaed87d,0xffa0cf30,0xff93bf1e,0xff96770b,0xff7cc780,0xff5fcc5f,0xff4280b9,0xff3c45eb,0xff38b27a,0xff49f372,
-0xff73b685,0xff89b4ec,0xffa999f2,0xffb704aa,0xff9d74cf,0xff95f780,0xff82ada6,0xff72f401,0xff64abc9,0xff7cc78e,0xff94d37a,0xffb07ce6,0xffca348e,0xffe72a40,0x00073de6,0x0005f908,0x0006d3bc,0x0006b189,0x00059fae,0x000e01e5,0x000545cf,0xfffd4662,0x001207f9,0x0023948b,0xfff60b25,
-0xffd2a8e0,0xffa4f0a0,0xff9ddf52,0xff8a5df6,0xff6c1f2a,0xff89b27b,0xff9421cb,0xffa46c87,0xffa68e4e,0xffa98365,0xffad890f,0xffa3ea89,0xff8df344,0xff90b6a3,0xffa1a3d5,0xffa44374,0xffafd55e,0xffba348f,0xffc73dad,0xffcc10c7,0xffdd201b,0xffe8c401,0xfff31c9a,0xfffde297,0x00044126,
-0x0009cebe,0x00096722,0x000b8c77,0x000dfbb9,0x000ea0c5,0x001472a9,0x000f552d,0xfff9e70d,0xffe86dae,0xffcabf9d,0xffcb973b,0xffbb4951,0xffa80fad,0xffaaa995,0xff9ab726,0xff94c401,0xff963be0,0xff9889af,0xff8b2c80,0xff8cbaa2,0xff8b1c8e,0xff80f837,0xff8ec226,0xff984592,0xffc56dfb,
-0xffc4fa5a,0xffc684cc,0xffc923e1,0xffc95cb0,0xffca5a92,0xffcbf148,0xffd128c4,0xffd5d2e7,0xffdb0d6a,0xffdf922c,0xffe4c6ba,0xffeb2c67,0xffea9cb7,0xffeaad7c,0xffeb23a2,0xffea8669,0xffea755b,0xfff28d0d,0xffbea0a7,0xffbb0816,0xfff650ae,0xffadbab4,0xffa9006f,0xffed17f5,0xffe5b21f,
-0xffe2519a,0xffe2285d,0xffd5b64a,0xffd0ce94,0xffce029d,0xff9ee4eb,0xff9d6354,0xffdc145c,0xff9ec8b3,0xffce2f18,0x003fb43e,0x0064c7d5,0x004ece34,0x00356a8a,0x00379eec,0x002f0409,0x003e8dbd,0x00454b4f,0x004e1794,0x0046f6f2,0x0043c257,0x0041ee14,0x003b78ff,0x00382132,0x0032cfc2,
-0x00374d20,0x003b1257,0x00410489,0x00462d80,0x003e69f3,0x0043e0be,0x0057a02d,0x00203c7c,0xff8e5e10,0x005d90a8,0x002b1f81,0xffadd716,0xffb5f6ad,0xffba543d,0xffb9c6cb,0xffc4d3ab,0xffc5b4e8,0xffbfdc22,0x0036034c,0x006d8dc8,0xffa0b708,0x002bf2f5,0x000f4d2f,0x006d5680,0x002dedbd,
-0x002f29db,0x001ef2e1,0x00453962,0x005b6721,0x006f7c87,0x00658a3b,0x005f6a75,0x005b2086,0x004a9329,0x003aa76c,0x002c4402,0x00330dae,0x0041238a,0x005444c3,0x0064364f,0x00569b80,0x005923d1,0xfff614d3,0x001fb680,0x002b9266,0x0012eae5,0x001bfe22,0x00579b51,0x00502300,0x00660557,
-0x005af399,0x005d878d,0x004a0548,0x0029f3aa,0x004af4c0,0x0037132d,0x002b7aee,0x004dafb1,0x007a50e8,0x008c1c8d,0x003476f9,0x002495d8,0x0008d9ee,0x004ac7c7,0x00787315,0x00a77e7c,0x008b89d4,0x007cb22b,0x006ea452,0x004ea803,0x00378d4f,0x0020faec,0x002f5322,0x0047e54f,0x006a13ee,
-0x007d5595,0x0077560c,0x004933cd,0x002f1d7c,0x0013df79,0xffff0171,0x000bb7db,0x001a901f,0x0052c128,0x0047cea1,0x0056c77d,0x0055fefd,0x004a2997,0x004a5a91,0x001fb58d,0x00462ca8,0x0043f910,0x00216ff3,0x005ee079,0x0054612e,0x0081cf10,0x00150c82,0x00089c8e,0xffe217fd,0x0039c0a7,
-0x00893a62,0x00dd11d5,0x00be13e4,0x00b11984,0x00a98a05,0x008251a9,0x0048bb7c,0x001b44c5,0x00263904,0x00517be8,0x008c0ff1,0x00affd63,0x008f7d1c,0x004e229b,0x00077023,0xffebaa7d,0xffd90bd9,0xfffb2c95,0x001a63c3,0x004e9968,0x00800683,0x00843a08,0x0047f097,0x004b6021,0x0042cb02,
-0x0015b95b,0x0063041c,0x00758518,0x000d8c61,0x004646b8,0x013ed9ce,0x011f1e1c,0x0098ce29,0x0057d376,0x0002f82f,0x00d66031,0x0102872e,0x0088224b,0x00b14c98,0x004b6a20,0xffa6f78d,0xff903c7b,0xffa9d704,0xffe41aa6,0x00472431,0x006a129a,0x0054d49e,0x007d460a,0x009859ff,0x009ce61e,
-0x007422f2,0x0067238d,0x004faa68,0x0032c50c,0x001a3280,0x002ad48b,0x0002fa73,0x003bd3a9,0x00d2fc22,0x006f27ad,0x0027eee4,0x001df7e3,0xffb8b15b,0xffb773a6,0x002f3d47,0x0100dde8,0xfeb0659e,0xff938b0a,0xffa31a9c,0x002cbc2f,0x0041289c,0x0092da21,0x0073068d,0xffdff03d,0xffc76a24,
-0xffec13d1,0x008fb692,0x002a37d7,0x001654e4,0x004a422e,0x0091ec91,0x00d2d081,0x00f103e0,0x009d55ab,0x00584dc6,0x003cca73,0x001bb1f6,0x0023cc41,0x00351c1c,0x001d3328,0x002cf076,0x002f4abe,0x006bd866,0x006e57ee,0x0034b3ae,0x002939cd,0x002e2812,0x003ed096,0x00560ffc,0x008a47ef,
-0x00cb3483,0xff18b398,0x01135984,0x013217e6,0x00f6d315,0x0105238c,0x0188ee68,0x01ecbeae,0x01bf0432,0x00e9eda2,0x0051f601,0x0004aad6,0x0053028f,0x00a90500,0x0108796a,0x0125c6fc,0x00edbf02,0x0082480d,0xfffafc56,0xfffaaa02,0xfff689a8,0x0016143e,0x001f95db,0x00170111,0x001d2018,
-0x00157595,0x0025fec8,0x002f2d15,0x001f43a2,0x001bfb7b,0x001ad2e6,0x003bf0c4,0x0043d661,0x003d9702,0x00509af8,0x003e1cde,0x0068703f,0x00d9f239,0xff89c736,0xffb778ff,0x006c0506,0x0124ad24,0x01ebcbea,0x01d03ae0,0x0190ccaa,0x00ec02a1,0x00dd5711,0x00b74eb0,0x00b96305,0x00691edb,
-0x00397c36,0x002f85c1,0x0076d900,0x009ce63f,0x00954143,0x007df2cc,0x00469bad,0x002df00a,0x000bf871,0x000a3a67,0xfffb86f9,0xfff2babc,0xfff87b95,0xfffba07b,0x0010c7eb,0x0028b41e,0x001b98ad,0x00170625,0x00096e90,0x0003e8e4,0xfff3fec0,0x00112018,0xffef4379,0xffafabd9,0xffe33a01,
-0x00abe504,0x01285196,0x01148c18,0x010b01d2,0x00f3a8c5,0x00c98287,0x0074888e,0x007a8932,0x0078d7c3,0x009a81da,0x008f84bc,0x00853693,0x00779bc1,0x003d05da,0x001d7c71,0x00118102,0x001aaeb1,0x0026147f,0x002b4546,0x001d9455,0x001d4922,0x00138eca,0xfffb5fd0,0xffeef19f,0xffdcc64d,
-0xffd48eb1,0xffd04711,0xffde1d10,0xffee0ad0,0xffec9f21,0xffebbf4c,0xffe409ca,0xffd7d082,0xffc0c89d,0x0021860d,0xffa666e7,0x0028fa05,0x004f694c,0x0048c29e,0x005298f9,0x00466da8,0x00504f41,0x007afeb6,0x001b1e31,0xfff1ca8e,0xffef27e2,0x0019a8bc,0x00410cfe,0x005e6bdd,0x004506e1,
-0x0038dbab,0x002062f7,0x00268186,0x001cc724,0x000a90d3,0x0018dc7c,0x001eba52,0x0031ab05,0x0005ace0,0xffdbe287,0xffb6d9c4,0xffb2cc73,0xffa84691,0xff96eb2f,0xff8b2f78,0xff764599,0xff640adb,0xff519922,0xff6b02e6,0xff77e5c3,0xffdec8ae,0x0004f9c6,0x0008c6c6,0x0005f994,0x00034a63,
-0x0001ae28,0x0004ed85,0x0000083e,0x00045ae3,0x0010f722,0x0024697e,0x002be305,0x001ad3a0,0x00085e27,0xfffd01bd,0x0001ed47,0x000812bf,0x000ba5f0,0x001be5d0,0x00283024,0x003d2a0e,0x003437d2,0x002742b8,0x0028371c,0xfff7500d,0xffcd8805,0xff9c4821,0xff92e113,0xff8ea89c,0xff86d689,
-0xff91076d,0xff9e8f09,0xffafcae1,0xffc85570,0xffe2c447,0xfff1be85,0xfff9d53d,0xff92cfb7,0xffdd0ccb,0xffe2aa93,0xfff4c539,0x0001cfb7,0x001288e1,0x0023f5cb,0x00325baf,0x002394e2,0x00116640,0x0005314b,0xfffb6af8,0xfff718bf,0xfff24d07,0xfff4bff9,0xfff49464,0xfff34999,0xfff3f798,
-0xffeafc4b,0xfff829cd,0x0000c9ba,0xfffd2c93,0x000752da,0xffef89fa,0xfff6936f,0xfffdc976,0xfff8e29d,0xfffaa86b,0xffed118c,0xffe61bd3,0xffd4c83a,0xffc06336,0xffc2ecb0,0xffb3c610,0xffbc1a0a,0xffc95007,0x0009cc0d,0xfff97cd1,0xfff58828,0xfffdb08d,0x0000ed10,0x000481fb,0x000739a2,
-0x000fc2cc,0x0008380a,0x0006b94f,0x00040f99,0x0001e39f,0xfffeb547,0xfffa6573,0xfffb34dc,0xfffbb902,0xfffc33b5,0xfffdd045,0xfffe1668,0xfff993a2,0x001ae43f,0x00068b89,0xffbd0abc,0x001a95be,0x0003de06,0xffad4dd4,0xffaea2be,0xffaf2cf6,0xffafc0f9,0xffb2b714,0xffb40671,0xffb559bb,
-0xfff35b97,0x00112c6a,0xffa313f7,0xffebd164,0x0001ff2b,0xff9bf061,0xffc2aff6,0xff985b6f,0xffad3f89,0xff9d8f6e,0xffa48ed0,0xff8e4e3e,0xff8aaeaf,0xff964442,0xff910038,0xff925b7a,0xff978bd9,0xff95560f,0xff92fc2e,0xff8adb09,0xff8d8fa5,0xff9112f0,0xff97cd19,0xff9e4e89,0xffacb122,
-0xff91d561,0xffbc8df4,0x000781f6,0x008f8c57,0xffa0383a,0xffffc667,0x009282f5,0x008cafe7,0x008b4c43,0x00803aa6,0x0083b395,0x00813e68,0x00715f11,0x0003fd3a,0xff9e9b38,0x0089d0ca,0x00163b09,0x003e7561,0xff9b1cce,0xffa5298b,0xff967df1,0xff9fee4b,0xff67c49a,0xff5b41ce,0xff76d673,
-0xff6bf272,0xff7423a5,0xff818304,0xff82ea32,0xff75c8a8,0xff5b22ae,0xff56c56d,0xff5d54de,0xff707ca0,0xff8dc005,0xffa05a8c,0xff98a6d6,0x0029af26,0xffbb2a14,0xffb29ea7,0xffce2f6c,0xffe3e849,0xffdc3273,0xffd4465a,0xffc9f8c3,0xffe3ed77,0xffcaac49,0xffca38dc,0xffd191d7,0xffdd3b5c,
-0xfffedb0c,0xffd5d182,0xffb0b828,0x0000b109,0xffe39f30,0xffa67101,0xff8c14c6,0xffa48db0,0xff357a01,0xff18c59c,0xff552079,0xff362a91,0xff460d38,0xff5b1bb5,0xff588c8e,0xff4820e1,0xff1b3a73,0xff1b901b,0xff2e395a,0xff538394,0xff8ea34b,0xff9f6506,0xffca3599,0xffde8f86,0xffca69ba,
-0xffc382c6,0xffbdf5c6,0xffefbf7a,0x00099b82,0x0028049f,0x0008367d,0x00225429,0x0022bdb9,0x0029e6bc,0xffe85464,0x0017aa00,0x000a1b61,0xffec473f,0xffebbca8,0x0001ce4f,0xffe1f02d,0xffb4fca6,0xffa52a93,0xffbebc4e,0xff1225ab,0xfee03282,0xff309315,0xff0d07ed,0xff258b23,0xff5d60ca,
-0xff64f959,0xff292aaf,0xfecc81c4,0xfeaad70a,0xfec21634,0xff053849,0xff6ddc0e,0xffa58e14,0xffc12b38,0xfff46be8,0xffb3d6fb,0xffce8861,0xffc7e54b,0xfff98acc,0x0044413c,0x0069d056,0x00818177,0x00481ff9,0x00464eaa,0x003d5929,0x0016e59f,0x00528b56,0x0046e3d6,0xffe7e1c2,0xffd14f70,
-0x00d67d0b,0x000d3aaf,0xff6944fe,0xff15e88e,0xfede4880,0xff4b76ae,0xff5441c8,0xfec70e12,0xff46403b,0xff331f78,0xfec18f18,0xfeda19f6,0xff27284c,0xffac2f48,0xfff2bae7,0x000714c3,0xffccea26,0xffc80015,0xffac490f,0xffe25154,0x00467cbe,0x0014a6b5,0x001741dd,0x0011600e,0x0006d118,
-0x001f65ba,0xfff8bf59,0x00323107,0x00c9c55a,0x004c6f6b,0x0007f734,0xfff4b2d6,0xff8244a6,0xff8ca861,0x001b2743,0x00aec17c,0xfe61b3b6,0xfefce194,0xff54eb87,0xffdad0c0,0x00548083,0x00160ecb,0xffe2b810,0xffa4e01b,0xff69bf7c,0xff9a79d2,0x0069f0c5,0x00160a7b,0xfff22fff,0xffe31bad,
-0xffd79924,0xffafe334,0xff4ca3af,0xff741e72,0xff8917f0,0xffdfd985,0x001d5246,0x0019b9ee,0x0013cf9d,0xfff5c70c,0x0009ad3a,0x002a2e82,0x0065a20b,0x0063c781,0x0024cf61,0x001b2724,0x0020fecd,0x002d814b,0x005b3606,0x0055100d,0x00609ee2,0xfeaa4f5a,0x0123b1f6,0x00fd5f2b,0x00adeeb9,
-0x0027575e,0xff1eaccf,0xff5a7ce2,0xff0084d2,0xfe346a90,0xfe9ceb6a,0xfeeed9d2,0xff499928,0xff2aa273,0xff3e81c2,0xff659b1f,0xff9224d7,0xffc0ac75,0xffd4971d,0xffdc3d4c,0xffc1f48d,0xffade780,0xffc0b015,0xffdc0f34,0xfffb92b7,0xfff832ea,0x0015910a,0x0021cd06,0x000dde37,0x000afb68,
-0x00104fea,0x00338b9d,0x003ef20f,0x00429a90,0x0035ab78,0x001e37f5,0x0056d331,0x00d8b977,0xff707a59,0xff86871d,0xff1c5f3e,0xfef35bc0,0xfe87ae2e,0xff0b6bcd,0xff8d42ac,0x00075c30,0x00506eac,0x0045c194,0x0023dd59,0xffe9fef3,0xffc35bcc,0xffce8848,0xffc9a84b,0xffc090e2,0xffaef08f,
-0xffb3c97e,0xffc6cabe,0xfff1861b,0x00143ce8,0xfff0a3c3,0xffd9a0bb,0xffdc0032,0xffe538e4,0xffed3434,0x00028762,0x000fd151,0x000bda9c,0x0005d184,0xfff9c736,0xfff44d64,0xffece074,0xffe59478,0xfff31e89,0xff964ab0,0x0034f255,0xffc33068,0xfee725f4,0xfed94a0c,0xfee5d0c8,0xfee1917a,
-0xfeee04f0,0xff09d9b6,0xff49fd7a,0xff581133,0xff399b77,0xff837736,0xffa5ceea,0xffb03ddd,0xffdd342f,0xfffbac7a,0x0004f328,0x001bbcd7,0x00092e7c,0xffe50cf2,0xfff64790,0xffe53a0b,0x000b8aa4,0xffee7f53,0xffdbe3bf,0xffceabf3,0xffc6b91e,0xffc1ab38,0xffce6dd0,0xffd8829a,0xffddf58f,
-0xffe08b06,0xffe86315,0xffe395e4,0xfff4c512,0xffc6b46d,0xfffff66c,0xff8f88c6,0xff724498,0xff9ab15f,0xff9cb5d9,0xff9e16ef,0xff97c2d3,0xff79dcfd,0xffb5823a,0xffe1af9a,0x00011791,0xfff1af7d,0xffe7116d,0xffe82b0d,0xffc1c828,0xffb8a78d,0xffc8d332,0xffd86f8d,0xfff5aebd,0x0019c6dc,
-0x001b34a8,0x000c65cf,0x00024b1f,0xffd1d018,0xffc002fd,0xffabbea2,0xffa64cec,0xff9f07c2,0xff8affb0,0xff7880c5,0xff61c899,0xff4d4c5f,0xff3d1230,0xff304cf2,0xff4f3e15,0xff6c69b1,0xffc02dc5,0xffbd2929,0xffad180c,0xffa6da8d,0xff9b2781,0xff8c0e00,0xff7af9eb,0xff63a3fd,0xff7aefdf,
-0xff8a316a,0xffa49339,0xffb4d6e5,0xffc898c7,0xffe05663,0xffe5b421,0xffedff41,0xfff1d16f,0xfff1a6ce,0xffe96d82,0xfff2fb99,0x0003f64f,0x000790ba,0x000de899,0xffe099bb,0xffc23931,0xff8a3a06,0xff92c2fe,0xff7559f3,0xff7a10d1,0xff7e6517,0xff90a39d,0xff8e3daf,0xffa9fa32,0xffc681db,
-0xffe90413,0xffcc656e,0xffe5cb60,0xffa76cf7,0xffa70142,0xff9eceee,0xff994120,0xff938a57,0xff90fa65,0xff897bf9,0xff9f49ac,0xffb00bf5,0xffbe2c73,0xffcec97c,0xffdd8ad4,0xffeb65df,0xffe772eb,0xffe52210,0xffe39765,0xffe29bdb,0xffe6d7bf,0xffd981de,0xffeeea7d,0xffc3e8a0,0xffb471db,
-0xffc2a1c7,0xffc13ff7,0xffa7cf36,0xffa6ca6a,0xffa179fb,0xffaf259d,0xff9d9d62,0xff9edee6,0xffa2c472,0xffa262a2,0xffaee1ca,0xffa50192,0xff9d43a3,0xffb01b50,0xffa01a11,0xffa9fc1c,0xffa482cf,0xffa360df,0xffa09ce2,0xff9e108e,0xff983332,0xffa0460f,0xffa5b518,0xffaca777,0xffb2c4c5,
-0xffb8c6ba,0xffc20a95,0xffbf6dac,0xffbf6a72,0xffbf7363,0xffbd7172,0xffbfb18b,0xffb9a8b8,0xffbd1d4d,0xffe2df25,0x0033c45b,0xffa65421,0xffd7d901,0x0033b775,0x002ee3b3,0x0028a0bc,0x002076cc,0x001dd5eb,0x00197517,0x0014f39e,0xffd68e92,0xffa227a9,0x0023d8f4,0xffde9d12,0xff9ab126,
-0x0045d259,0x000aa477,0x006db62f,0x0038a033,0x003c67af,0x0032623f,0x003df3aa,0x00452eab,0x00531102,0x004bc5b1,0x004a2145,0x00499fb1,0x00466edc,0x0043248f,0x003b37e0,0x003f74c4,0x00421474,0x00466bce,0x004b1daf,0x004118a8,0x006234e0,0xfffe3aba,0xffabb1d2,0xff45c890,0x0018c7fe,
-0xffb6b612,0xff611ecf,0xff5c4674,0xff5f3abe,0xff6ee2a4,0xff65c241,0xff63dc99,0xff605b6f,0xffc31aeb,0x003215ab,0xff52aba3,0xffadf160,0xff9f8d45,0x0064b7d7,0x003b33fd,0x002a79d4,0x001b5a45,0x00329f47,0x0045f660,0x0066e579,0x005ef55c,0x0061bae4,0x0062b5f1,0x00613591,0x005553ad,
-0x003d9d58,0x0042e100,0x004798b6,0x0054c459,0x005ac016,0x005eb671,0x004ddcf6,0xff9b4233,0x0009c45a,0xfffba6c9,0xfff0f10c,0xfff00c30,0x0036e69c,0x0033eef4,0x003bb7c3,0x00218ca9,0x0043c42d,0x00469333,0x000f4b03,0x0033aeee,0x0004ce5a,0xffe8f511,0x003cc507,0x00275ed2,0x007401b1,
-0x004a350c,0x0017757f,0x000850c9,0x0025e87a,0x004bd1b4,0x009a82a9,0x007d8848,0x007d822c,0x007881dd,0x006b6c7e,0x0055ad4f,0x0029dc76,0x0039fee2,0x00473296,0x00644d4b,0x006e4609,0x0084d45e,0x00335c81,0xffed8a15,0xffee5cd9,0xffe727ee,0xfff3ab22,0xffe68601,0x004793d8,0x0010635f,
-0x00527aa4,0x0027f92f,0x004fac1a,0x0026a998,0x0007d5f6,0x00254ddc,0x0020e16b,0xffe284de,0x00349cbf,0x000ba8b4,0x0070117f,0x002b5c7c,0xfff54cf7,0xffdb92e6,0xfffc03e2,0x0031a5df,0x00a8d0dc,0x0090b360,0x00a34ca3,0x00b41d39,0x00b292b0,0x0080bd36,0x00323b15,0x0036f1e5,0x0046dfd8,
-0x007240bc,0x00897715,0x00966d93,0x0042ef2c,0xffce9cd9,0xfffb6f71,0xffbeafa8,0xfff0bb6e,0x00135e8d,0x005bc580,0x007231c4,0x006ec3bd,0x0056b629,0x004ff0d2,0x0053f168,0x001e37f0,0x006c9f93,0x005ad50d,0xffe62acd,0x0025b237,0x00c58d74,0x00e570a8,0x00b7728b,0x00517b75,0xfff959f4,
-0x009b3f5e,0x00cf2255,0x00926b93,0x00d978bb,0x009ae77f,0x00108ee2,0xfff6d965,0xfff8cd24,0xfffd2707,0x0054f812,0x007a999a,0x0099869c,0x00958b03,0x00b620d0,0x0075d9c3,0x001f921f,0x005ec778,0x002e56e2,0x002f6aba,0x000e39eb,0x001279fd,0x0000be84,0x00399ad3,0x00bfee95,0x004c23d7,
-0x0008573c,0xffecf318,0xff85fa75,0xff8acbce,0x002a0da9,0x00bdc019,0xfe99d882,0xff91f506,0xffc71608,0x0023a9e8,0x007bd0ae,0x0063956f,0x0028a9d6,0xffcc6884,0xffaaa4f1,0xffddcc91,0x009ad46c,0x001bd0bb,0xfffc965f,0x0031210a,0x007a5205,0x00afd64b,0x00bcd797,0x00749ca3,0x005dd378,
-0x001b3861,0x00048a88,0x00246b77,0x002336f2,0x001fdf66,0x0031206a,0x0039e4e0,0x0064add8,0x005c80a5,0x00234cd2,0x00247589,0x0025eb26,0x0048a66c,0x006eafcf,0x00924e6c,0x0051b79d,0xff218931,0x0104c0f0,0x01272afe,0x00d7f662,0x00bd38df,0x00f19890,0x01b1094a,0x01bc6f66,0x00c7ae74,
-0x00b55c0b,0x006b43fc,0x00535a46,0x00e254ba,0x013b8a60,0x0145353a,0x01114d8e,0x00a38222,0x00091c2a,0x0006c309,0x0027c272,0x000e9112,0xfffe555f,0x00149d1b,0x000683dc,0x001b9d3e,0x002787ad,0x001c76f2,0x001766b9,0x0019b24e,0x001830aa,0x003fe5ea,0x004e8afc,0x005a8d9d,0x0022aa3a,
-0x000ad198,0x002edc71,0x00d41bb1,0xff6349c9,0xff8dd964,0x0016fe31,0x009a58f8,0x016dbe6a,0x013a4766,0x0104cddc,0x009b7f6b,0x00b770d0,0x009eb1a6,0x0075f61f,0x005a011c,0x0037f35b,0x003a9fe1,0x0063a77e,0x0089e6a2,0x0089e2ad,0x0070be15,0x004740ae,0x001630c1,0xffec6edf,0x0001ccd7,
-0xffea0802,0xffe2db46,0xffedabe9,0xfff7380d,0xfffd4a12,0x0008aadf,0x000c9212,0x000383f9,0xfffd61ef,0x0014cc49,0xfff56ff3,0x001391b9,0xfff88532,0xffa5c6a6,0xffcba90c,0x007ba612,0x00f90254,0x00cc71cb,0x00d6f5de,0x00b7511d,0x00bd5670,0x00b72888,0x0081babf,0x005f6689,0x004de344,
-0x0051312a,0x0051cba6,0x0046f803,0x002acb67,0x001d1bb2,0x0026d831,0x001f1d24,0x002c9048,0x00254bd6,0xfffd5e08,0x00184dd3,0x00160fc3,0xfff2915d,0xffe5201a,0xffe3a9be,0xffcbe011,0xffd5c143,0xffe3a951,0xfff9f364,0xfff5ab87,0xfff8e3f9,0xffff7b3c,0xfffb525f,0xffe6c708,0x0021ec60,
-0xff4ebfa6,0xffef1d06,0x0044e855,0x003d4ede,0x00527a9e,0x006518ab,0x007557b2,0x008dd211,0x0038b1a6,0x00180cad,0x0011ca11,0x0030b502,0x0041b230,0x004b7f4c,0x00325efa,0x002e77a4,0x003ae5e8,0x003c7090,0x003321e1,0x000ec4f8,0x001d81d3,0x001805d5,0xfffa1b04,0xffe54b82,0xffd119a2,
-0xffbd7bf4,0xffc17c37,0xffb23373,0xffa84b18,0xff942dee,0xff80ff4c,0xff78df5e,0xff526556,0xff57e40c,0xff58d32a,0xffa0fcef,0xfff4a42e,0x001a2713,0x002f74b9,0x002527e8,0x002f6c1e,0x002adc92,0x0028003f,0x002cf2a6,0x002d28ec,0x0031bef9,0x002efa0f,0x001f5370,0x000df2a0,0xfffd72ec,
-0x000a3628,0x0012ee52,0x001b3077,0x0020a157,0x0036945c,0x0030d092,0x000964bc,0x0008d9ec,0x000c7f96,0xffe8bf74,0xffb756e9,0xff971c5f,0xff7f4108,0xff95b364,0xff71e085,0xff8f1c4e,0xff83a5e8,0xff96fe14,0xffb22cf2,0xffc9cd56,0xffd3bc96,0xffedd2ed,0xff8dd914,0xffecd040,0xfff44629,
-0xfffe5197,0x0009f55c,0x00175e4f,0x00257e87,0x002fdf8a,0x00266650,0x001b462c,0x001242c5,0x0008a14e,0x000177ec,0xfff5df15,0xfff73432,0xfff55983,0xfff53842,0xfff3f855,0xffee522e,0xfff9bffc,0xffd2e6ab,0xfff13476,0xffedb9c8,0xffdb620e,0xffdaebab,0xffed8422,0xfff668ac,0xfff319f8,
-0xffdd79dc,0xfff0a5a7,0xfff0a7c6,0xffd71748,0xffdc90c3,0xffc292d7,0xffc7e369,0xffe43e37,0xffdec620,0x000b381e,0xfffca867,0x000494ec,0x0006bcf5,0x00092855,0x000b3cac,0x0011f5af,0x000c62c4,0x000a5c19,0x0007d4fa,0x0005bd88,0x00037a01,0x00007a7f,0x0000c4de,0x00005540,0xffffbef4,
-0x0000ff1e,0xfffdf9a3,0x00078f1c,0xffe853ed,0xffb9b360,0xff7b5322,0xfff06a43,0xffb343dc,0xff69c248,0xff6a0a0e,0xff6ea960,0xff79c99d,0xff753ec5,0xff7847d4,0xff7f5c26,0xffb45423,0xfff2a383,0xff79af38,0xffac1376,0xfffe4611,0xffb67a9e,0x001d81a5,0xff9f4f83,0xffc20219,0xffb78fa0,
-0xffbdf3c6,0xffb2c469,0xffb10e46,0xffb6b9ee,0xffb25cdd,0xffb278ad,0xffb45330,0xffb7080c,0xffb5c57f,0xffad91fe,0xffac0253,0xffacb60d,0xffb132c7,0xffb6fcea,0xffc21494,0xff9f52fe,0x00167a76,0x00569e79,0x007f358f,0xfff4957e,0x0052ba10,0x008b0002,0x008b3e32,0x008c41e2,0x007eef33,
-0x00915e99,0x00916fed,0x00819461,0x005696cc,0xffeeda1b,0x007cf5e2,0x006a88fb,0x00775ffb,0xffbd66d1,0xffb1e9cb,0xffb7bb51,0xffbf629f,0xffa99823,0xffa3c2fc,0xffacc712,0xffa18398,0xffa57c44,0xffad6ab9,0xffb8c9a7,0xffacba97,0xff8eba18,0xff833067,0xff862754,0xff9523a1,0xffb14f15,
-0xffb27ef9,0xffc5ec50,0x00530c22,0xffd98b3a,0xffe8424f,0xffecbb21,0x00044215,0x00082132,0xffeed89e,0xfff64442,0x0022b162,0xfff71826,0xffe5375b,0xfff4c7ad,0xfffd4060,0x001efe2e,0xffffdd58,0xffd35ffc,0x00436a26,0xfff0b8a1,0xffa28205,0xffb01940,0xffbdf960,0xff94596a,0xff8cded3,
-0xffa1173a,0xff8abb34,0xff91e0f7,0xff98c072,0xffaddefb,0xffa021ac,0xff72f3d5,0xff5efe78,0xff64d84c,0xff7fbeb9,0xffafc878,0xffab6430,0xffeed9f3,0x00125447,0xffea8b46,0xffdcfbf4,0xffd6259a,0x000ac160,0x001d9f23,0x002cd07f,0xfff6de48,0x004784a8,0x00221e74,0x0043dedc,0xfff9a3ea,
-0x0027b8f3,0x001da2c7,0x00023cae,0x0015cd0d,0x0037b18a,0xffe2d816,0xffa38cf4,0xffc4124d,0xffd74448,0xffa32f78,0xff9011b3,0xff9e335b,0xff8119f6,0xff8d1339,0xffaaf14a,0xffd9500e,0xffaac89f,0xff4630f8,0xff16f95e,0xff1c1925,0xff4e9cdd,0xffa3566c,0xffb18ccd,0xffe85d40,0x0012cd46,
-0xffaf1105,0xffe14d34,0xffc233c2,0xffe7c05a,0x003c06d5,0x00503b5b,0x0066c43a,0x003bb302,0x00505829,0x003f3716,0x0015c9a2,0x005200d2,0x00479ae9,0xffcc79f8,0xffe32ca2,0x01344bb2,0x00343596,0xff8201b3,0xff4377b5,0xff07b052,0xff69a494,0xff977955,0xff597ad2,0xff8cdfbd,0xff6401c6,
-0xfef19962,0xfedce520,0xff0b587e,0xff63ef9d,0xffcc099f,0xfff0a3b5,0xff9f6340,0xffc39bd4,0xffb4278c,0x001e6c6d,0x006d2cb6,0x00067f79,0x0012a4e3,0x001a6e4d,0x00129e34,0x000acf7f,0xfffadfa6,0x0030e7ab,0x00a38f8e,0x00383a5d,0xfff9f1d3,0xffde221c,0xff700650,0xffaa9452,0x005a2988,
-0x010919da,0xfec9a732,0xff071362,0xff0945be,0xffcfd2e6,0x00962765,0x00580432,0x00247f0e,0xfff6e21f,0xff8afb32,0xffa40e5a,0x006c1ea0,0x0022a115,0x000493ec,0x0006a167,0xffea259a,0xffd22f4f,0xff9524f3,0xffc5dc98,0xffb83545,0xfffd6dc7,0x0030101d,0x002a07b4,0x0027b8d2,0xfff41300,
-0x0007ca9e,0x003370af,0x0056603f,0x004c27f9,0x00159f5a,0x000dc1d6,0x001b2dbe,0x0039f43d,0x00865906,0x005f9710,0x0006f23a,0xfecd82d8,0x0113092e,0x00fce58f,0x0096c680,0x0024dfa4,0xff8b7f9c,0x00225ad3,0x0002ced6,0xff21fd35,0xff25ba27,0xff20d68d,0xff39227c,0xff6b6f34,0xffa3dd8f,
-0xffd2a5c4,0xffdb9dcb,0xffe9f201,0xffd8823c,0xffe1c9ff,0xffba8b58,0xffd19d67,0xffe73d34,0xffe589cc,0x000cdce4,0x0019173e,0x00232bf9,0x0010bd9f,0x0005e808,0x0004aba2,0x000b9388,0x0039c382,0x004da8b2,0x0065136f,0x001e859b,0xffe4cfd1,0x0046b83b,0x00c30dae,0xff7b49e0,0xff902dcb,
-0xff6b33e4,0xff9afb09,0xff781967,0xffa84a37,0xffd13e40,0xffd14e95,0x008a912c,0x00ac669c,0x0074b59a,0x0054e7c0,0x00279070,0x001c24bf,0xfffd5887,0xfff2bdf9,0xffd33625,0xffce9d74,0xffc05082,0xffe38da4,0x001d0b59,0xfff61684,0xffd4b954,0xffd632c2,0xffe21460,0xfff17557,0xffea5c71,
-0xfffa1308,0x0000b34b,0xfff53086,0xffedd8c4,0xfff3551e,0xfff7540d,0xffef6c99,0xfffc4d38,0xff9075f1,0x008e763d,0x006c6934,0xffdaa02d,0xffccbcf3,0xffa999ae,0xffaf5119,0xffbf27ee,0xffd9062f,0xffd036ab,0xffc0c46c,0xffb0b8ad,0xffd60e1c,0xffe8ca10,0xffebc809,0xffff9dcc,0x000ff1fa,
-0x000fbeb2,0x002611eb,0x00112abe,0xfff789c9,0x0019cc82,0xfff5d9b8,0x000a4354,0xffed997d,0xffd7c361,0xffd807d2,0xffcbfe73,0xffcbbe63,0xfff53f08,0xfff15c27,0x00013fb7,0x00121427,0x001c5246,0x0024a213,0x003929ae,0x003700c3,0x0003b1eb,0xffd189c0,0xff9d8460,0xffc28c11,0xffaf149b,
-0xffb4eb69,0xffa95f41,0xff9df12a,0xffc60ca7,0xffe8fbd7,0xfffca2bc,0x00025458,0x00037f77,0x0005e5a6,0xffee8619,0xffe2a1d3,0xffee0d67,0xffecdff7,0xfff9d217,0x00199148,0x0021eeaa,0x000eb047,0x0000fbcf,0xffd1c770,0xffc09622,0xffbc1171,0xffb8b67c,0xffb0f6db,0xff8fc519,0xff84fe0c,
-0xff77f711,0xff71c4d7,0xff51823c,0xff46ecfd,0xff625d20,0xff8399d0,0xfffd81db,0xffe9bdc4,0xffceaaa3,0xffdc488d,0xffd767e7,0xffd48455,0xffcc4d15,0xffbd3de3,0xffcaf964,0xffd166eb,0xffdf8380,0xffde29d7,0xffde6f17,0xffe2ab41,0xffec1b62,0xfff69324,0xfffaf24c,0xfffe8ae1,0xfff2edbb,
-0x0008a707,0x00179f25,0x00060efe,0xfffb8154,0xffda1198,0xffc1e8a4,0xff925354,0xff98fd54,0xff7e5b88,0xff91e136,0xff866e4a,0xff989471,0xff8f02a4,0xffb5cfec,0xffdd4c07,0x0006036d,0xfff1c6d3,0x0004a214,0xffc9432c,0xffc1bdbd,0xffbd3321,0xffb4a19d,0xffad9fa8,0xffa87b66,0xffa375a4,
-0xffae07ac,0xffb6551e,0xffbe39b6,0xffc8d477,0xffd6811f,0xffe4b8a8,0xffe06971,0xffdca7be,0xffd962bd,0xffd8f8e0,0xffd7d09a,0xffd10b7e,0xfff4476b,0xffcd3e0f,0xffcf4952,0xffd63290,0xffe04fcb,0xffd11173,0xffccea20,0xffd3465a,0xffe4b4d2,0xffcc6bc2,0xffc6379a,0xffd12c74,0xffcb6f17,
-0xffd6255a,0xffd29b27,0xffbfd96e,0xffe67cfc,0xffb25899,0xffbde0dc,0xffb8bc4f,0xffb6c861,0xffb4e681,0xffb269a2,0xffad14cd,0xffb14224,0xffb44753,0xffb82fed,0xffbc0448,0xffbe84ae,0xffc3aa15,0xffc17433,0xffc1d38d,0xffc1dea5,0xffc08463,0xffc336ed,0xffb6c647,0xffe3c5d0,0x000b90fb,
-0x00299a9f,0xffd4c993,0x0008eff4,0x002ad427,0x002bbc70,0x00273331,0x001e1fa8,0x00252fbd,0x002453e4,0x00212f36,0x000936fa,0xffd61478,0x0021170a,0x000fd908,0xffaba5ac,0x000ae1bf,0xffb3f3d2,0x002fe98d,0x0006e1e4,0x000511e3,0x0000abcf,0xfffd4cef,0x000065b9,0x000e502c,0x0009983c,
-0x000ade3f,0x000e2f76,0x000e405a,0x000b6431,0x00016305,0x0003be44,0x0005115f,0x0008dd0c,0x000c62f4,0x000a02be,0x0027d81a,0xffaaf3c2,0xff82ae5e,0xff93eb85,0xffbedbe9,0xff86feca,0xffa3a5a6,0xff945832,0xff949def,0xffa76f59,0xff94262a,0xff900e7d,0xff8b04da,0xff8fecc6,0xffd33d51,
-0xff958b11,0xff830c74,0xff90f271,0x000e46ec,0x000c7c8a,0xfff29848,0xffee269f,0xffde962c,0xffe1d4bf,0x00035307,0xfffea848,0x000b5afb,0x00174428,0x0022fe75,0x001a54df,0xfffa574c,0xfff83977,0xfff4c711,0xffff60b3,0x00028da4,0x0017b251,0x00022f70,0xff96db54,0xffdf14de,0xffbf8312,
-0xffcf0c64,0xffcf9779,0xfffe309d,0xfffac5f3,0xfff29ce1,0xffe6c8c9,0x0004ff87,0x0015e432,0xffeb5234,0x00020fd0,0xffdec635,0xffb591df,0xfffd0674,0xffdd50bd,0x001fa6f4,0x001c5611,0xffdf37ed,0xffe4bc95,0xffb9e894,0xffbf21ab,0x000e9958,0xfff9f884,0x000dd1f4,0x001c6baf,0x00248f10,
-0x0012366f,0xffd4bf7d,0xffdc6e19,0xffde23c5,0xfff8b77b,0x0005ca79,0x002c15b6,0xfffb9d20,0xffbc8c6d,0xffc9313c,0xffc7ea97,0xffd20b5c,0xffc7c12d,0x00295a15,0xffee6a3f,0x002ef531,0x000c24b4,0x004177e8,0x000e9b52,0xfff11105,0x0004e02e,0xfffbaa1d,0xffb917a2,0xfffc1d28,0xffd396ef,
-0x001ca460,0x001236d1,0xffd26c99,0xffd1f833,0xff894147,0xff7da2cb,0xffe77f27,0xffdc7829,0x000d60ed,0x0041a84a,0x0065d0d2,0x0039f7a4,0xffca6903,0xffb8362d,0xffb04468,0xffd511f4,0xfff3d3cd,0x002fa231,0x000c7259,0xffbcd6ef,0xfff08678,0xffb5d849,0xffdabb95,0xffff3547,0x005a9765,
-0x0054c06f,0x00562d45,0x005ff761,0x0055a01a,0x005b0ca4,0x0028369c,0x006330b0,0x003155a7,0xffc304d5,0xffeef88d,0x0060f218,0x004f5fa6,0x00453d6e,0xffd9bf79,0xff9bf63e,0xffe46537,0x0015d922,0x0011b255,0x0060355d,0x0053ff09,0xfffe9cef,0xffd9dc1e,0xffe093fa,0xfff8d491,0x00321bf8,
-0x005063af,0x00781844,0x004c4fc4,0x00543440,0x0015fc6b,0xffe6bea8,0x002f3c88,0x0003e5a5,0x0024f94b,0x0008676b,0xfffbf35a,0x0005206f,0x0034e8fe,0x008cc6d8,0x002bca5d,0xfff3198f,0xffbc11d2,0xff64c4ae,0xff7e679f,0x002a8627,0x007ec560,0xfe9591a6,0xff6816cf,0xffc2edb9,0x000b62e6,
-0x00b94c79,0x0028bbdf,0xffd93592,0xffd07917,0xff903032,0xffc47cab,0x007e652c,0x0015f0cb,0xfff02f01,0xfffff4f7,0x00199638,0x001d3205,0x00015c05,0xfff55ac1,0x001588a0,0xfff51cd0,0xfff868f6,0x00194673,0x000bd0e8,0x0013ff0c,0x00284960,0x003d7c10,0x00534703,0x00423d10,0x000e77b0,
-0x000d61a6,0x0016ea0a,0x0055fee9,0x008d0243,0x00784134,0xffb93f02,0xff057fb9,0x00d25295,0x01040332,0x00897762,0x000ed79e,0xffa0772e,0x003bd2e5,0x007222f2,0x0006c090,0x005963d4,0x003e83f7,0xfffcf0e9,0x0064cdcd,0x0096ff37,0x009b2a8a,0x0090d2c3,0x00604dda,0x0008b58a,0xfffc1076,
-0x001d24bc,0xffee8766,0xffd80c18,0xfffe7a14,0xfff1834a,0x00177e3c,0x00226820,0x0009f177,0x0008f219,0x000e6eb4,0x000db26d,0x003e6239,0x004e986c,0x005aa3fa,0xffe7e423,0xffcba69d,0xfffd1fcf,0x00a339fa,0xff671efe,0xff69327d,0xff83b97a,0xff9c077d,0xffe7ff8b,0xffe0e90a,0xffedc98d,
-0x001a4491,0x006016db,0x006868fe,0x00256067,0x00324b5d,0x00217ac8,0x0022595f,0x001518dc,0x0021fe35,0x0024910b,0x001503eb,0x000eddfc,0xffe80a91,0xffd84529,0xffec9d98,0xffd71005,0xffd0e9b6,0xffde0808,0xfff30265,0xffebc4bf,0xffebf8bc,0xfffc4df6,0xfff4842c,0xfff80b70,0x0015e853,
-0xffff7b6b,0x000974ea,0xfff2a6b5,0xffa9ec36,0xffeee742,0x001807a3,0x0037bd9e,0x001684d8,0x00251795,0x00066866,0x0028547d,0x006690bb,0x0021f809,0xfff4dfa8,0xffb6323c,0xffc9a247,0xffdcf0c5,0xffe8db1d,0xfffdcbe5,0x000dd4cd,0x0023bacd,0x001c453a,0x0021ff60,0x000a4313,0xffeb1554,
-0x0003897d,0x0007160f,0xffeceebd,0xffdda0de,0xffdcbbd1,0xffcc3dbc,0xffe1324a,0xfff2b56a,0xfffc39f0,0xfff6e2fd,0xfffcdc30,0x000af886,0x00109efc,0x000c16be,0x0004d498,0xff4c538a,0xff94abd2,0xffd2194d,0xffdaca6e,0xfff741b7,0x001acec0,0x002cf68b,0x002f310f,0x0021425f,0x0025a5a1,
-0x002b4762,0x002f9d9b,0x00201f91,0x001000c7,0x000005b0,0x00031bd0,0x002ae226,0x0029cc92,0x002b4a61,0x0017907d,0x001b721d,0x0008bb87,0xffcc09db,0xffc3e810,0xffc530d3,0xffc7e2b5,0xffc8ff47,0xffb76489,0xffb256be,0xff98ffc4,0xff894e46,0xff87e4d2,0xff5a2799,0xff489e90,0xff45f3a3,
-0xff5caf2c,0xffd178ce,0x000249eb,0x001acad4,0x00102273,0x001ba15c,0x0011ed4c,0x001138ae,0x001233fd,0x000fc662,0x000ceebe,0x000c412c,0x000a5bef,0x000a40c8,0x0006b2bc,0x0014584c,0x001c0039,0x00254f75,0x001f6ae1,0x002f731c,0x001cb132,0xffedd637,0xfff0662d,0xffed757d,0xffdbdbe3,
-0xffb63188,0xffa4d462,0xff8ad3ce,0xff9d2f16,0xff72c06f,0xff914738,0xff7ef166,0xff890c6f,0xff9d7410,0xffac9b2f,0xffb3452c,0xffcdcdf3,0xffad6266,0xffdf89db,0xffe66260,0xffe51bcd,0xffea4649,0xffeeddac,0xfff3aafb,0xfff529df,0xfffa7080,0xfffef7ec,0x000182de,0x000241fc,0x000120a0,
-0xfffb4e0f,0xfffa8000,0xfff8e6d3,0xfff9d5c1,0xfff930a6,0xfffa718b,0xfffde978,0xffcba403,0xffe655f6,0xffd397be,0xffce676d,0xffc5bbdf,0xffcebc02,0xffdc499f,0xffd542fc,0xffc7b455,0xffde519f,0xffe8e9ab,0xffdaba94,0xffdd5406,0xffcd11ff,0xffcadeb1,0xffe161ae,0xffbc9b79,0xfffeb4fc,
-0xfff16d19,0xfff3c51c,0xfff3af20,0xfff33472,0xfff344ae,0xfff3f162,0xfff4f27d,0xfff52b33,0xfff5bbc9,0xfff64dcb,0xfff74f82,0xfff8dd3c,0xfff89528,0xfff827be,0xfff792fe,0xfff7bde4,0xfff4bceb,0x0002ea38,0xffc2dfdf,0xffa0bd4e,0xff9be8d6,0xffc66bf3,0xff966284,0xff901022,0xff8e93f6,
-0xff921344,0xff9d18ab,0xff94b641,0xff965cf8,0xff9bf967,0xffa03fab,0xffcbb8a9,0xffa457d7,0xff9e79da,0xffec101e,0x00012b2a,0x0053a27b,0xfff355cf,0xfffefcfe,0xfffe324e,0xfffe5425,0x00035391,0x0005d328,0x0007e979,0x0005876f,0x0004f172,0x00047d91,0x0007f001,0x00067953,0xfffe61f9,
-0xfffb7ed8,0xfffa7a07,0xfffccb05,0x0000c24e,0x0001748f,0xfff3f1ba,0x004a1d7d,0x004b2470,0xfffd3b16,0x003c8eee,0x005018d0,0x001540e2,0x001709fa,0x001a6e28,0x0018c205,0x0028da0f,0x0029c64d,0x0020c917,0x0055d828,0x003f7cab,0x00040222,0x005bbcd9,0x004a4832,0x001390b7,0xfff15411,
-0xfffd84a4,0xfffcc6d5,0x000f0517,0x00154d5a,0x0014f91c,0x000f52f1,0x0011ce9f,0x0016169c,0x0022279d,0x0017b38f,0xfffadb4d,0xffef18a7,0xffee53d6,0xfff82385,0x0007963d,0xfffdd919,0x00180a39,0x002999a1,0x0001d1c0,0x0012e29b,0x00051d60,0x001425d5,0x0036698a,0x001aa749,0x002e502d,
-0x004f4357,0x00327f97,0x001d1e6f,0x001c382f,0x0026cf34,0x00298964,0x0016fa27,0x001508de,0x0061a2dc,0x0023baaa,0xffe3ead2,0xfff5e511,0xfff20665,0x0012aa21,0x00288ab8,0x0029ee16,0x0023adea,0x0026778c,0x00228200,0x0039cdbb,0x002b162d,0xfffcb6c0,0xffe7d0da,0xffe39b9f,0xfff44498,
-0x00085b64,0xfffea05f,0x001efe17,0x0025fd7d,0x0001d13d,0xffef63c0,0xfff50a54,0x00107374,0x003acbdc,0x00226657,0x000d1392,0x005ac31f,0x0031f88c,0x00486b9b,0x0011fe95,0x002de123,0x00298e63,0x0007b3ac,0x003eb654,0x004943f5,0x0010d96d,0xffd2aff1,0xfff3b4f5,0xfff353fd,0x00321e47,
-0x0046e0a0,0x003c4a13,0x0036442f,0x0042e024,0x004eacb8,0x008447fe,0x0062a437,0x0000e5ac,0xffdac322,0xffd1e2de,0xffedc9e0,0x0011fd1e,0x00031af7,0x00230cc8,0x0011b1ec,0xffcd6644,0xffe13faf,0xffd2a067,0xffe9a7a7,0x0041e3ba,0x003ee1b1,0x004a7053,0x004618d3,0x005ccc73,0x004af9e4,
-0x00201da0,0x0054c676,0x00433a01,0xffc579e5,0x000d35b4,0x012710b4,0x0078c1b7,0x00028b34,0xffd0f1b0,0xff954a4c,0xffea7edb,0x003a2c2f,0x0057edfa,0x00426d92,0x000a09e8,0xffabaa26,0xff553d43,0xff54858f,0xff7a1b81,0xffdd6ea5,0x00096cf5,0xffe0446e,0x000992ec,0x000f2949,0x0055bc2c,
-0x00578421,0x00123bd4,0x00105789,0x002b5e4e,0x001de73d,0xfff55780,0x0009d5d9,0x0035ca16,0x006ace44,0x002bd849,0xfff82b82,0xffc94b22,0xff769538,0xffc6c6a7,0x007a9959,0x0115fe9a,0xff1f2375,0xff648985,0xff32db19,0xfff1f127,0x00d77686,0x008e4618,0x00555a85,0x0040da58,0xffc13dea,
-0xffc82a68,0x0061aa61,0x002a91ed,0x00162b09,0x0021d0af,0x001e9464,0x002b6d6e,0x003125be,0x003c67b5,0x00182a30,0x002377e2,0x0023e078,0x00274977,0x002e4b92,0x0007aeea,0x001b2a4e,0x003cf91b,0x00466534,0x0032baef,0x0004e042,0xfffed0de,0x00172b38,0x0058f39b,0x00aa6b77,0x006c6ff7,
-0xffa9a0fd,0xff142b4d,0x00cae568,0x010c56a0,0x007a0756,0x001d47f2,0x0028529b,0x00bd159d,0x00fec929,0x00b9bc7a,0x0039abd6,0xffd7b619,0xffb46cca,0x00281c6d,0x0077592e,0x00953953,0x00798707,0x004971a3,0xfffb5e6e,0xfff1ac97,0xffd97014,0x000967e5,0x0014344b,0x000241cd,0x0014cda3,
-0x003226e2,0x002c3901,0x000629aa,0x00013f52,0x0003a210,0x00094c50,0x003f4479,0x00526d77,0x0063095d,0xfff29dd5,0xffb3b8ce,0x001b6e32,0x0082ab5d,0xff949070,0xff917c3f,0xffe98218,0x006dc3a8,0x00c6637e,0x0094ebd8,0x005dd5b3,0x0005afb4,0x00a9f401,0x00dcae07,0x00a37718,0x00a84b71,
-0x00872080,0x00602759,0x0040dce5,0x003e1e29,0x00297a3a,0x00140b23,0xffe9c7ff,0xffe3d119,0x000104aa,0xfff39ef6,0xffda9993,0xffd4f30c,0xffe05abd,0xfff7287c,0xffdf3f0b,0xffeca149,0xfffad0ef,0xfff0bde2,0xfff47ddf,0x0002b1a0,0x000b7568,0x000ba0e1,0xfff89317,0xffad1e56,0x0082dc89,
-0x00e1df16,0x010a2b2c,0x01043ec0,0x00d55db1,0x00c6f430,0x00c53b77,0x00ca9be3,0x0082622e,0x0055b50a,0x004662a5,0x0031a418,0x002ab11c,0x0030e511,0x00244600,0x001d6730,0x00162782,0x002470f2,0x001f2c59,0x00172759,0x002aed70,0x000e431e,0xffffd9d4,0xffee795d,0xffdca282,0xffdf0f6a,
-0xffda3773,0xffe6ede2,0x00162928,0x000a2846,0x00154167,0x0026677d,0x002d9880,0x003b9d68,0x0041ec99,0x0076d8ea,0xffb650f9,0xfffbeb8d,0xffe32d48,0xfff268e1,0xffeba316,0xfff85646,0xfffbe976,0x0016ad3b,0x000600fe,0x00094982,0x000e13ae,0x00264ce7,0x0031b9c1,0x00314d37,0x002aa9c6,
-0x002648a9,0x00275947,0x001cbe2a,0x00143087,0x0016b1e5,0x001b6f57,0x000a0872,0xfff7076b,0xffd84232,0xffc95e66,0xffd009de,0xffcd3591,0xffc22cca,0xffa79f8b,0xff9df927,0xff973b1f,0xff9cb226,0xff73c556,0xff6f80a8,0xff7494f1,0xff9b5ea7,0x001b2a72,0x00141fe0,0x00055e05,0x0018d6e0,
-0x001d5c60,0x0026fb01,0x002ce881,0x00328769,0x00338860,0x0033f104,0x00337b33,0x00211abf,0x001006d2,0x0001c432,0x000aa4b9,0x00121ec9,0x0017ccb8,0x001e6e80,0x001bbc17,0x0031006e,0x00247f8c,0x00037569,0xffea9090,0xffdbbe6a,0xffc8dcb4,0xffb1c726,0xffa6fa47,0xff9d41af,0xffa15d18,
-0xff9816ac,0xff9dae36,0xff97a564,0xffb823a8,0xffd8a581,0xfff1e74f,0xfffcfd58,0xfff05096,0xfff3b401,0xffecf4fe,0xfff0f36f,0xffee9270,0xffee7b18,0xffed7c01,0xffef2d2c,0xffe9c876,0xffe4d45d,0xffe26d62,0xffe21427,0xffe64def,0xffea9d4b,0xffe9bad2,0xffe7a484,0xffe51796,0xffe60889,
-0xffe07cc6,0xffe699de,0xfff79b84,0xffed4559,0xfff817ef,0xffee9181,0xfff8a7e9,0xfffb7889,0xfff86734,0x0002361e,0x0006163d,0xfff9564e,0xffeed4ef,0xfff1c4f2,0xffedb573,0xffece5f4,0xfff252c9,0xffe9d6e1,0x0017e961,0xfff1d60e,0xfff3c86e,0xfff35358,0xfff1ea9b,0xfff1c57c,0xfff103ea,
-0xfff06d61,0xffeea1f4,0xffee21fe,0xffed204f,0xffeca573,0xffeae969,0xffe9c7dd,0xffe974bf,0xffea1bb5,0xffea69ff,0xffeae957,0xffec2b7c,0xffe4262b,0x000f9e94,0x0017756d,0xffef57b5,0x000ec343,0x00193286,0xffea15b0,0xffee7035,0xffee3992,0xffebf027,0xfff48d7b,0xfff718f7,0xfff74845,
-0x0016e75c,0x0010ed65,0xffec4191,0x001968cc,0xffeea09f,0xffc5de19,0xffa42252,0xffd0b9d7,0xffcdd3fd,0xffc5a203,0xffc93b81,0xffb8f797,0xffb6f4e8,0xffbf2003,0xffbed3f4,0xffc23db2,0xffc81a7b,0xffca7169,0xffc849ea,0xffbe4841,0xffbd5939,0xffbd3233,0xffc00472,0xffc344eb,0xffcb031b,
-0xffcdefbb,0xff9e1d13,0xffb9fc37,0x0022c544,0xff9a2c0c,0xffb799aa,0x00296ca4,0x001962de,0x001845ce,0x002256e0,0x0014f444,0x0011016f,0x00092677,0xffbb7f84,0xffa12770,0x001d90cb,0xffc0d888,0xffe08cdc,0xffb7f99a,0xffceee0c,0xffbbc7ce,0xffc3894f,0xff974707,0xff8aabcf,0xff9dbf65,
-0xff9dd5cc,0xffaeff3d,0xffc23d4c,0xffd37c76,0xffcc9122,0xffab2502,0xff9eddca,0xff96d9d4,0xff9ecbca,0xffa7b9b1,0xffbfd9b7,0xffb7d96a,0xffdc6b3d,0xffc194bf,0xffa7173c,0xffc6dbde,0xffd0ee9c,0xffdb2de6,0xffd13f40,0xffc4c3a4,0xffd9ef55,0xffd68861,0xffe36164,0xffdca1b4,0xffdfa2e2,
-0xffdefee7,0xffb6ceb9,0xffc631ba,0xffd0d1f9,0xffd282bf,0xffd4ca15,0xffaf47d9,0xffc55be0,0xff6a2e57,0xff52d88b,0xff7f6741,0xff7cc20f,0xff9bcf4a,0xffb60cae,0xffcd7dd6,0xffbfac76,0xff7f6d4b,0xff759e62,0xff6e2a20,0xff8197d3,0xff9b141a,0xffb9b335,0xffce1ca8,0xffbad2a5,0xffbc5aa0,
-0xffb8a98b,0xffc148cb,0xffcfc75b,0x000f97fa,0xffefaec3,0x0002c5be,0x0017b00e,0x002a172c,0x001136b1,0xffed2052,0xfffb8970,0xfff0e07f,0xffc10810,0xffe22d3d,0xffd7759c,0xffd0a1ca,0xffe19041,0xffbf8b85,0xffd7cede,0xff506e2e,0xff0ffe8d,0xff3cf940,0xff44aa41,0xff7f4ba7,0xffc4b786,
-0xfffecffe,0xffdc9019,0xff62f3fd,0xff3329a1,0xff1b44e7,0xff3629fe,0xff667dcb,0xffad995c,0xffd2e564,0xffd2dcc0,0xffd1a4e4,0xffc02c21,0xffc66ae5,0xffe835b2,0x004d3c5e,0x0035b86d,0x00423968,0x00628daa,0x005c47bc,0x0055b546,0x002ef719,0x004ef393,0x00164b1e,0xffb81d52,0xffcde061,
-0x004b5b31,0xffc9c27b,0xffa96fd0,0xff5a3614,0xff3a747c,0xff3858e1,0xff69de5e,0xff90b0ec,0xffc65a82,0xffd6cedd,0xffb4b548,0xff6eef5b,0xff7e8abd,0xffc7c93f,0xffeca014,0x00049f8d,0x000e564a,0xffe3c74a,0xffcdd03b,0xffc8ae23,0xffe3d2ed,0xfff50746,0xffe6125e,0x001b8106,0x000d427d,
-0xffea983a,0x0011438f,0x00352f53,0x004db742,0x00168237,0xffe9c5e6,0xffa5c314,0xff6457d6,0xff9e27f4,0x004529f5,0x00750299,0xfecef808,0xff546d66,0xff903665,0xffef2e23,0x00eb1676,0x0020f0da,0xffcc7b03,0xffff7e1f,0xff8c4ac5,0xffabb150,0x0044809d,0x00197bc9,0xfff9df40,0xffd66236,
-0xffbdb609,0xff95fc3f,0xff5f1e10,0xff8d0dfd,0xffbe9d4e,0xffe0a4fe,0xfffc1f9f,0x000b1343,0x0003fe67,0x00040d72,0x001ac5dd,0x003a82ce,0x003e8561,0x0025d63d,0xfff65fc2,0xfff4360a,0x0010067c,0x0063c9b6,0x00a3756d,0x0046dd09,0xff48ac9e,0xfef30f16,0x0090e9d2,0x00ed2e74,0x003cad64,
-0xff73c637,0xfe8acb20,0xfeb999dc,0xff119347,0xff8b34a7,0xffb6df88,0xffbd7e37,0xff994d55,0xffb0dca6,0xffbc9454,0xffc8932a,0xffe7f7c4,0x0000c5cd,0x0005b13d,0xffecac2c,0xffee6693,0xffd78a17,0xffd1180b,0xffede773,0xffef2dbd,0x001529ff,0x001aefcf,0x00006634,0xfff868d7,0xfffe1032,
-0x00040999,0x0039688f,0x00445ba0,0x0041381f,0xffc2f2d3,0xffa1f29c,0xffe66b21,0x00520e77,0xff8e0698,0xff61a05a,0xff229e48,0xfef540ec,0xfeaedfe0,0xfedb009a,0xff23a541,0xffc8d5f2,0x001e9301,0x0047d0d5,0x000e213f,0x002dd6cb,0x00263760,0x001559a9,0xffd63a06,0xffbafa7c,0xffb8d5af,
-0xffb27756,0xffc62b30,0xffc53941,0xffd8bc62,0xffd85dc0,0xffcb81b3,0xffc84a44,0xffd42dd2,0xffee6f49,0xffe0f487,0xffde3566,0xfff24287,0xffedeecf,0xfffa04b6,0x0009cd7e,0x000e1a8b,0xffffddf3,0xffeef69e,0xffbed0f3,0x0040bd65,0xffef5d6e,0xffa738b3,0xffa78a04,0xffadf3cd,0xff90af91,
-0xffaa6bc2,0xfff71a2b,0xffd5ec9b,0xffb3159d,0xff622241,0xff778ff3,0xff892330,0xffa2eb60,0xffde5c43,0x00007220,0x0011e1af,0x0017de08,0x0010c56b,0xfff34849,0xfff1b058,0xffee0f5b,0xfff1a719,0xffe654b9,0xffd81694,0xffd48153,0xffd9fce3,0xfff1e04f,0x000589ce,0xfffc6bfa,0xfffa066c,
-0xffff488a,0x000f47eb,0x001d25d7,0x00307e4e,0xfffea5ce,0xff89201c,0xff6b65e9,0xff667590,0xff817895,0xff97eda9,0xffbb3e23,0xffcad00c,0xffbfc8e1,0xfff8207c,0x001e9599,0x00331acb,0x001ed464,0x00022970,0xffe88138,0xffdf11fb,0xffe651e6,0x0007ee25,0x0008d209,0x001533f5,0x001f91ad,
-0x00111fda,0xfff54bc0,0xffbe5c33,0xffb6b188,0xffc00b91,0xffce4674,0xffca0029,0xffbca1fa,0xffb7abe6,0xffa12c0c,0xff9671a6,0xff99a8c6,0xff76665c,0xff5652c4,0xff4ece1a,0xff3d6df7,0xffc1b74e,0xffdfc5d9,0xffe7ce7f,0xffe6d0b7,0xffeada5f,0xffe4986c,0xffe6a9c1,0xffe4f6c1,0xffe88e6d,
-0xffe678de,0xffee2501,0xfff66de1,0x0003e8c4,0x000f008a,0x00151543,0x00189cf5,0x001dec5d,0x0014b536,0x00132577,0x0009e65d,0xffef2edc,0xffe6a0a3,0xffd7cb98,0xffd487f9,0xffc60b78,0xffbe7d3e,0xffac3aa7,0xffa5c420,0xff8a9a66,0xff95fcda,0xff8b386c,0xff84ac1c,0xff945a84,0xffa171db,
-0xffae5997,0xffbca7b3,0xffe9e54e,0xffd5017b,0xffd54012,0xffcb6ea8,0xffc78455,0xffc16874,0xffbae382,0xffb292cb,0xffc2a1a5,0xffd2bd60,0xffdf89f7,0xffec1881,0xfff42e93,0xfff98110,0xfff7cae3,0xfff78f2b,0xfff8ac4c,0xfff94b5a,0xffff4eb5,0xfff9e65c,0xffe1b079,0xffdf848c,0xffcad86c,
-0xffd244bf,0xffc7a707,0xffbf08f8,0xffc68919,0xffc15ddc,0xffc37b7d,0xffc9bbdb,0xffd35862,0xffd5742e,0xffd5d5e6,0xffd981c1,0xffd338e3,0xffd65435,0xffc508ec,0xffe68f5b,0xffe38083,0xffdec276,0xffdbef80,0xffd888bc,0xffd6368b,0xffd0795b,0xffd7b8d0,0xffdab71b,0xffde5670,0xffe185db,
-0xffe57ef9,0xffeb8871,0xffea9989,0xffeaa6e4,0xffeaa73a,0xffe9e982,0xffe99497,0xfff0b415,0xffc6888f,0xffca0968,0xfff9c779,0xffbf2973,0xffc03dce,0xfff6c9b7,0xfff43172,0xfff320b9,0xfff5a2be,0xffefa2ec,0xffee9dc6,0xffee6fc6,0xffc7be57,0xffc16012,0xfffff541,0xffd00ac5,0xffda70b8,
-0x00385c37,0x003bc623,0x004355d9,0x002c90a0,0x00321dc9,0x002bd64e,0x00389b74,0x003dbca6,0x003ff6f0,0x00405598,0x00407dd4,0x00401120,0x0041adda,0x003f7ee8,0x0038558a,0x0035e714,0x00345efc,0x0034ea6c,0x003737d2,0x002fadb6,0x004067f4,0x00309feb,0xfff84503,0xff803127,0x003e96b1,
-0x0003f910,0xff9cf821,0xff9a2c70,0xff9e2526,0xffacb8b5,0xffac31d4,0xffabbf52,0xffab0087,0x000bae9a,0x004dd689,0xff8d9cd0,0x0000d1f6,0xffe85bfd,0x004e2d06,0x002ace4d,0x002c937c,0x00236c23,0x0042e6b1,0x004ed150,0x0051825c,0x0054be39,0x005aa2df,0x005f4f57,0x00682d43,0x0060f351,
-0x00494ba6,0x003f1198,0x00397b9f,0x003d4b18,0x003e2267,0x0037a81a,0x0043c71f,0xffd55ec3,0x000f2eb1,0x000f0b1a,0x0003dafc,0x00079da7,0x003daf18,0x002cfd9e,0x003e3206,0x0046fe1d,0x00487084,0x003f5318,0x00282418,0x00353f17,0x00162ae1,0x0009517d,0x003b9134,0x00419bb6,0x0043f99c,
-0x002aae5b,0x00229779,0x0012ef84,0x0047cb1b,0x0069135c,0x00732449,0x007d55ca,0x0085523a,0x00808c0a,0x008eb9a5,0x007f7329,0x00537e11,0x0045cee6,0x003b033a,0x0043001b,0x003f2210,0x0041dc36,0x002c9914,0x00075822,0xfff98651,0xffe948a0,0x0000ab38,0xfffc8f40,0x0044551f,0x0009a711,
-0x002a9297,0x004f60b1,0x003f1992,0x00330b9c,0x001c4685,0x00231f7e,0x0022f121,0xfff64804,0x00419150,0x002f7a4b,0x003d0d48,0x0017a2f7,0x0011c4bc,0x000022f6,0x00557ac1,0x0074067f,0x007af16b,0x009040f6,0x00abbc50,0x00b8a656,0x00e3590a,0x00d00cff,0x007c514b,0x005d0c6f,0x00465fd6,
-0x004c6bda,0x00469e65,0x003ca161,0x0034c074,0xffec2d6e,0xffec94bf,0xffce15b5,0xffe53b24,0xfff52387,0x004d2bc6,0x0034e8a1,0x00353922,0x0060a59b,0x006628cf,0x005843e4,0x00301e2b,0x0055ceaf,0x00356d00,0xffcceba4,0x00278780,0x00abd9b6,0x007c6cd5,0x006a4dbb,0x00386913,0x000539a1,
-0x00374be6,0x00922cb7,0x00f3d427,0x00cc588d,0x00a0a6dd,0x0069040f,0xffe0f80d,0xffba0d9c,0xffbe3ad2,0x000600ff,0x002fe55e,0x0046d463,0x0053d378,0x00647479,0x005611f3,0x0010f70d,0x001c923b,0x00069d1f,0x00335c52,0x00207372,0xffe52c71,0x00204f2b,0x003fa35f,0x0034aa10,0x001f74d5,
-0xfff496d5,0xffb9ccaf,0xff896025,0xffd47444,0x0074ecfc,0x00ca715a,0xff4f9060,0xffd51d2a,0xff9c79a5,0x001ce282,0x01012592,0x009d827e,0x00562f81,0x00560492,0xffd9fd2d,0xffde7ae7,0x004963ed,0x00303093,0x0021dfa5,0x001e8ff9,0x0036cb13,0x005982e2,0x008c8f11,0x006bf65f,0x004da49a,
-0x002324ef,0xffff3978,0x0011fcc9,0x0023efc2,0x001bb430,0x002fadfc,0x003e83e2,0x0035e1f9,0x0019c76c,0xfff07610,0xfff61d18,0x001a8b7b,0x0076a7ee,0x00ab2fa0,0x005b6af2,0xff64bf5e,0xff5846ab,0x00695a93,0x01160b64,0x00565d25,0xfff2a93d,0x0034f88f,0x008b6760,0x0124bf44,0x01d37654,
-0x01017de6,0x0077e6e6,0x00449e64,0x00b7e1c4,0x00fdcdb5,0x010798f0,0x00dac89c,0x008861e7,0x00253fad,0x0005af17,0x000b7dd6,0x002eb00b,0x0027b115,0x001d1925,0x0010e24c,0x0035eda5,0x00276797,0x0002d9b4,0xfffc0116,0x00022bbd,0x000946b8,0x003e65f1,0x004551d1,0x003bf676,0xffccbccc,
-0xffa3803f,0xffeaae1a,0x002b5ed7,0xffb07ac2,0xff873077,0x001dcd63,0x00aa6d49,0x01459718,0x00f0553f,0x009b15b0,0x00580da9,0x008b9260,0x00b594fb,0x009a3f8d,0x00b6392c,0x00a63ff7,0x00792feb,0x0060370e,0x00583495,0x0053742e,0x00360f38,0x000c6380,0xffe74799,0xffd683d8,0xffe77832,
-0xffdee477,0xffd70985,0xffe0afb2,0xfff78dda,0xffe10fe6,0xffe674d0,0xfff723e4,0xfff1ea8d,0x000160bb,0x0010eaea,0x0019155e,0x00207d50,0xfff4ed89,0xffda835e,0x003a4429,0x00ccedbc,0x0184571a,0x0189aea4,0x01705e50,0x0149524e,0x01387618,0x012fa50e,0x00dbaba1,0x00a8980e,0x008b308c,
-0x005655e2,0x003aea13,0x0038f330,0x0028f60a,0x001d6c8c,0x001e1ac4,0x001b888a,0x0024cd54,0x0029b92b,0x001bb90e,0x0015a0f4,0xfff24189,0xffe9019f,0xffe0812f,0xffe2f451,0xffed7e29,0x00074d85,0x00215d04,0x0015d1fc,0x00135ab4,0x0019bc63,0x00239914,0x00337af2,0x0030a5f3,0x006d90d3,
-0xff5abcf8,0xfff270cb,0x000dab80,0x0009c3b5,0x0018a0b2,0x00330b95,0x0049b2bd,0x00750845,0x003fb168,0x002a4ecf,0x00257550,0x003c6053,0x004a6244,0x004754fc,0x004ad9f4,0x004f0c97,0x004b4c9a,0x0041f2d3,0x002df4ea,0x001462b0,0x000b992b,0xfffa6b1f,0xffddd8ca,0xffdbf8b1,0xffd51594,
-0xffda4fbd,0xffd96415,0xffcd26f0,0xffc6ff59,0xffbb00bf,0xffb74d34,0xffc2d4bf,0xff9fa65b,0xff97d85f,0xff7bcd6e,0xff97ba3c,0x0008c6bf,0x001eaab6,0x00270a31,0x0032445e,0x003d51e9,0x004a8218,0x005993b2,0x006f9601,0x006a420a,0x006843c8,0x005f3b00,0x004a45e1,0x003638ba,0x00236fc8,
-0x0027a1c4,0x0028e857,0x002b9444,0x002efad1,0x00350e01,0x003b21c1,0x0016fb8c,0xfff9483d,0xffdfa6e9,0xffe00652,0xffd17e95,0xffd3ab73,0xffb76c8b,0xffbe74d8,0xffa4fb08,0xffa7a1db,0xff999c5d,0xff98ec5f,0xffab2c4f,0xffbc383a,0xffc153ba,0xffe9fcb7,0xffcfb95e,0x000d1349,0x000bb68c,
-0x0013cacc,0x001939b7,0x001f6714,0x0022afa0,0x00275e02,0x001a426d,0x000ffc61,0x000972c8,0x00035f78,0xffff8bf2,0xfffa27bb,0xfffcd0b1,0xfffdc3f8,0xfffea386,0x00005a75,0xfffbca3d,0x0008fc61,0xfff510ce,0x00090489,0x000f057f,0xfffc49e8,0xfffc2b71,0x000ae08d,0x000c5df6,0x001146b7,
-0x00049e8c,0x000bba10,0x000506ca,0xfffa82a3,0xfffd00ca,0xfff14fb1,0xfffa91fc,0x00048765,0x001fca5e,0x0026913a,0x001d0e48,0x00206c3e,0x001f8276,0x00202b02,0x00210061,0x00245dec,0x00205fb3,0x001e0c59,0x001a3996,0x001712da,0x0013c80d,0x000faade,0x00110858,0x001195c3,0x0011de02,
-0x0013ccea,0x0012e932,0x00163bc6,0x001b58fa,0x00005f5d,0xffba2a2b,0x0023fa22,0x00006903,0xffae7104,0xffb1c2ba,0xffb4e97f,0xffbaf706,0xffbd31dc,0xffc0d1b4,0xffc400b2,0xfffca271,0x00240d2f,0xffbc2e9e,0xfffc8b67,0x002318a1,0xffb08c31,0xffdd9b88,0xffa033e3,0xffbcd52a,0xffb3549c,
-0xffba3cf7,0xffa99f04,0xffa5bf55,0xffa6b702,0xffaa46c5,0xffade22b,0xffb29b10,0xffb60ff2,0xffb4c509,0xffadb22e,0xffa8f2aa,0xffa74005,0xffa88ab2,0xffab5ba7,0xffb6d3ff,0xffa1380d,0xffd81483,0x00171146,0x00741309,0xffc2233f,0x00143dbd,0x007ad8df,0x0072b00c,0x00728a9f,0x00721bec,
-0x0072dbdc,0x0070d1c2,0x00687fd7,0x001504fa,0xffbe61a3,0x0071a2ef,0x0026375f,0x0041709b,0xffa5e8e2,0xffb88dca,0xffb57162,0xffc0106f,0xff9782d6,0xff86e135,0xff87ac02,0xff8c864d,0xff9ab497,0xffab387b,0xffbb763c,0xffb64d43,0xff9c7292,0xff8732e5,0xff7dccc1,0xff823a74,0xff8fab42,
-0xff9b3e0d,0xffa84c04,0x002650e0,0xffc60533,0xffbfbfcf,0xffdce186,0xffeefc73,0xffe41f58,0xffd384d2,0xffd01cc0,0xfffe45af,0xffda1e93,0xffd7a360,0xffee8a88,0xffe54925,0xfffe79b6,0xffe4b441,0xffc4c990,0xfffea60f,0xffc01ffc,0xffb129c4,0xffb163f8,0xffc3fa05,0xff767dd3,0xff5cb1eb,
-0xff5e0c4a,0xff6e18de,0xff8a19ae,0xff9cce10,0xffba739d,0xffb1bd15,0xff83d8bb,0xff6505a8,0xff570be6,0xff604d2e,0xff7bd4d8,0xff83329b,0xffc94685,0xffdea7b7,0xffcc24f0,0xffc02743,0xffcf90bf,0xfff31b97,0x0009c81e,0x00073c89,0xffebe23e,0x003b3fe5,0x0018fda2,0x0024d60c,0xfffdf6a4,
-0x000a4347,0x0003290a,0xffea9952,0xfff49e18,0x000fbab6,0xffc37396,0xffcaa29d,0xffd4376c,0xffed40c2,0xff825d4e,0xff3d86f4,0xff2a5566,0xff4388ad,0xff70031c,0xffa2b544,0xffe21da7,0xffd2a83b,0xff72dc69,0xff290cdc,0xff079dae,0xff147c59,0xff42c8fa,0xff6a90a1,0xffbc5b12,0xfff0de70,
-0xffb6941d,0xffce59ac,0xffc3f0dd,0xffded109,0x003c1dfd,0x0020580f,0x0033e8c4,0x0061135b,0x00636332,0x004d2ed9,0x00339d7b,0x003fced2,0x001572c7,0xffc6898d,0xffdc6519,0x0065762c,0xff99a7f4,0xff5b2ad8,0xff343842,0xff213ec1,0xff037fae,0xff3f40ce,0xff89d916,0xff91bb32,0xffa0539e,
-0xff9b200d,0xff294d93,0xff2e68c3,0xff87f4ab,0xffb9b539,0xffd52da1,0xffb8b33c,0xffb38ec6,0xff919e72,0xffc57b6a,0x00062f8d,0xffd4d6ec,0xffe48f1e,0x001858cc,0x0017e1b4,0xffe2785c,0x00254662,0x003db923,0x001b36cd,0x000ba332,0xffe4aff8,0xffaa35c0,0xff817321,0xffd676e7,0x00690e9a,
-0x00882495,0xff4196b1,0xff7b22ce,0xff612d91,0xffe85b79,0x010214ec,0x00580683,0x000b709c,0x003cdb35,0xffa4cb98,0xffa6008d,0x00120706,0x00348146,0x0021f90d,0xffcfa2f0,0xff9dbb8f,0xff6c7ad8,0xff469995,0xff84543f,0xff9b03c8,0xffdcf0d3,0xfffecb22,0xfffdf0c6,0x000e4472,0xfffb22fd,
-0x00120edd,0x003202d1,0x0028915d,0x000ad656,0xffe06fbe,0xffe85503,0x00162573,0x0069de81,0x00996dc7,0x0014f032,0xff301334,0xff122c4c,0x004f2a65,0x00e427c6,0x0009371f,0xff396a6d,0xfe59deba,0xfe3fe64c,0xfeb09850,0xffd7c67e,0xff7a36da,0xff7127c6,0xff84641c,0xff6131e8,0xff60aa72,
-0xff7e5cd8,0xffa434dc,0xffd66d22,0x000a8023,0xffecc105,0xffcf5ef4,0xffe5d591,0xfff043d1,0xfff2a66c,0x0001d18f,0x0019c12b,0x00143aa2,0xffff6ae8,0xffecfd32,0xfff18209,0x0001828d,0x0030bea7,0x002f5c26,0x001a7583,0xffc43233,0xffa061f3,0xffeddbd3,0xfffec3d6,0xffc203a3,0xff763fda,
-0xff383c93,0xff1b4f9e,0xfea7209c,0xfee8c9ae,0xff2fa8bb,0xffcd5d7a,0x0014a473,0x0051fb1e,0x00445f13,0x00572c6e,0x004b02bf,0x00293b44,0xffdafc6a,0xffa0a44b,0xff8d350d,0xff89f92e,0xff9ba02b,0xffbcc785,0xffe27b13,0xffcf36d1,0xffcade35,0xffcda6dc,0xffd73d80,0xffed4699,0xffe01690,
-0xffdf9b11,0xffedef0d,0xffeb71c2,0xfffcf473,0xfffb13cc,0x00139f4f,0xfffbed2a,0xfff6493e,0xffde8b90,0x007e8679,0x00095de9,0xffbc35ce,0xffdf13a0,0xffcfd7dd,0xffc00858,0xffbec851,0xffe5626d,0xffe377eb,0xffd2384d,0xff9e5a30,0xff9df0e2,0xff9c703f,0xffa62aa9,0xffdf0860,0x0001915f,
-0x000ab967,0x0017a687,0x0007b33b,0xfff504c6,0x00088e3c,0xffe6b6d2,0xffe24d22,0xffde5f55,0xffd5982e,0xffd4d1e7,0xfff22313,0x0006f8f4,0x001788c1,0x0000fa14,0x0002ed5b,0x0007d42f,0x001bb8d7,0x002f9d83,0x004a8274,0x001be39a,0xffcf73c4,0xff8c023d,0xff5fc82c,0xff830d47,0xff854216,
-0xff9c694e,0xffa34c90,0xff9abf1f,0xffe2c739,0x000d6a40,0x00244177,0x000cd22f,0xfffd18e1,0xffee264c,0xffed3a7b,0xffeed80b,0xfff75dea,0xfff890d9,0x0001f6a2,0x001bd7e9,0x00026664,0xffe4da4d,0xffc9449c,0xffc394a2,0xffc98b43,0xffd10999,0xffcac14d,0xffc5481d,0xffc08ec1,0xffb5fdff,
-0xffb331a9,0xffb923d7,0xffa7a877,0xff87179c,0xff75134e,0xff5dea95,0xffcec890,0xffd2f4f5,0xffc6c43a,0xffd18fdd,0xffcee4b3,0xffd1a263,0xffd7bb39,0xffd9670c,0xffe4284e,0xffe70480,0xfff2d6cf,0xfffad51d,0x00073c29,0x0015259a,0x00135e26,0x0012d9b2,0x00109207,0x0009304b,0xfff794ed,
-0xfffd6cf4,0xfffef741,0xffeb06f0,0xffd4c1ea,0xffd5f3cc,0xffd96aed,0xffd3cb4a,0xffcd15d9,0xffb1d752,0xffae4731,0xffa091ea,0xff9f0c8a,0xff8b0c2e,0xff991634,0xffa7df85,0xffba78cc,0xffc0a6b0,0x00196793,0xffdcc473,0xffd685ad,0xffcd8725,0xffc57c29,0xffbb283b,0xffaf7c61,0xffa3cbc2,
-0xffb19dff,0xffc0cd62,0xffced51d,0xffde8be4,0xffebcb99,0xfff974a0,0xfff819df,0xfff94091,0xfffab6a4,0xfffca9af,0x0002a3f7,0xfffb5e4d,0x00054d81,0xffe8fc32,0xffdf4892,0xffe8ba50,0xffe2a95f,0xffcfc6da,0xffcd1eb9,0xffce15a7,0xffdb1bb9,0xffcdd8d6,0xffce2a0d,0xffd9dc81,0xffd97f07,
-0xffeab103,0xffe64dc0,0xffd80453,0xffeca5c5,0xffd8d8df,0xffdfc715,0xffd80e85,0xffd41054,0xffd03e0a,0xffcd7438,0xffc65f4c,0xffce7ce7,0xffd20e64,0xffd5d25a,0xffd9422d,0xffdcf013,0xffe2fcce,0xffe24ad3,0xffe30e9a,0xffe3a337,0xffe316d9,0xffe579d4,0xffe2154c,0xffea824a,0x000af963,
-0x00400ffe,0xffdc594f,0x00058172,0x0042616c,0x0040a979,0x003bebd2,0x00357caa,0x0035dcec,0x0033ac8e,0x002ec54a,0x0003dd98,0xffd8c734,0x003dc1ee,0x00117134,0xffd528c9,0x00331c75,0xfff36670,0x004e5ea6,0x0028e9f4,0x002d5fb6,0x0025cd44,0x002c7902,0x00308e60,0x003517da,0x0037f5ca,
-0x0039f5cd,0x003b3293,0x003b6de1,0x00391756,0x0033dcda,0x00315106,0x002fbd5a,0x002f7bac,0x00305409,0x0028c093,0x0047db0f,0xffe8f501,0xffaae613,0xff6c1bb3,0x0003f0fd,0xffb6b610,0xff82afd5,0xff79e51b,0xff7c608f,0xff92ca81,0xff82133f,0xff7f67f3,0xff83192f,0xffbdb602,0x001783db,
-0xff79616c,0xffad8576,0xffa87e24,0x0040796d,0x0033bd6d,0x00260e2c,0x001b2095,0x0024a846,0x002a96af,0x00367d00,0x004091bc,0x004c19b3,0x0053f0dd,0x005c770d,0x0059c3cd,0x0048ba3d,0x003c625d,0x0031b831,0x0030fdf7,0x00290b33,0x002eac17,0x00289802,0xff9e8784,0xfffa75bb,0xffe566a5,
-0xfff00245,0xffee67cf,0x001a1692,0x0018375b,0x001bdedc,0x0016603b,0x002a49be,0x0032736c,0x001644dc,0x001fa43f,0xfff767eb,0xffe93a61,0x002d678f,0x0001486c,0x0030ef93,0x00401081,0x001b55fe,0x000d28bc,0x0015b6b8,0x0028b31f,0x00471665,0x005b980b,0x006f0947,0x00704ea4,0x0079e030,
-0x006dfed9,0x004aa519,0x003d11e0,0x002dbd4a,0x0030f9d3,0x002391e2,0x003644d2,0x000bda81,0xffd28d34,0xffdbe473,0xffd1106a,0xfff711b6,0xffe486d5,0x002fecb7,0xfff39044,0x00311b26,0x0030e1d8,0x00398b00,0x001410b9,0x00164ff9,0x000eb09c,0x000f80ff,0xffe0c8c5,0x001f9646,0x00080e47,
-0x003e884c,0x004198f0,0x001594d7,0x000014f4,0x00083e4a,0x000888b0,0x002e0bd9,0x0055d67f,0x00816f95,0x009a317f,0x00bed678,0x00bc9ec9,0x007cbb76,0x0050d2a5,0x002c2180,0x00256bda,0x000ec901,0x002056fb,0x000c7a99,0xffbfca2e,0xfff17476,0xffb59f66,0xffedccd7,0xffff9779,0x004e94d0,
-0x002c2795,0x002a0ade,0x00777a15,0x0068e615,0x005edfa0,0x00411351,0x0051c6d7,0x0023b63a,0xffde1fae,0x00249795,0x00092952,0x00233579,0x005a135e,0x0024c0a4,0xfffab18f,0x000492d4,0x00547966,0x00cf3786,0x00c2bfbe,0x00bcabad,0x00b6c6f1,0x0021efcd,0xffecc32b,0xffeae401,0x001b7d7d,
-0x003d6298,0x00770c0b,0x00636c8a,0x006b4c0a,0x001f2d46,0xffce8b3e,0x00145dfa,0xfffc3b22,0x002b4dda,0x00199126,0xffde8d62,0x00377472,0x004a6620,0x000f2f86,0x000dac20,0xffe646e1,0xffad20a8,0xff9e2bec,0xffdaa74d,0x0058a501,0x004df328,0xff6d0d20,0x00144abb,0xfff82d4b,0x0034fa9d,
-0x01044bda,0x00879f8a,0x0037521b,0x00439aa4,0xffd7a9c0,0xffde6ac9,0x002615c5,0x00401d43,0x00332cc9,0xfff7f7ec,0x0013f0f9,0x0027af3d,0x00559c60,0x0030145f,0x002f6cd5,0xfff7cd59,0xffd6ac72,0xfff40017,0x0010907a,0x001f1676,0x00336165,0x0035d804,0x002353f1,0x0001a129,0xffdbcac5,
-0xfff45e30,0x00209717,0x0079986a,0x0085dd95,0x002b775a,0xff440c08,0xff7e4e05,0x0012db4d,0x00ebe14b,0x000b0f6e,0xff95fe08,0xff9e73aa,0xff9e4a01,0x0053f794,0x01ac86b0,0x0101c064,0x00a18c92,0x00815ae2,0x00ad2c08,0x00cab5d5,0x00cfe189,0x00bb91d7,0x007f2592,0x003da636,0x00141960,
-0x002b8097,0x002e4b87,0x0019b57c,0x00216497,0x00064e6e,0x002526c0,0x00172d0a,0x0002c9e2,0xfff4c45f,0xfffd2f7d,0x000b546b,0x00305f5c,0x00257cfe,0x0004640c,0xffbec4e2,0xffb1e708,0xffd47745,0xffdb7752,0xffc78f0a,0xff8458d0,0xfff54d08,0x003c5827,0x00a43d50,0x00807f46,0x0057580c,
-0x006e988a,0x003fa369,0x005f6538,0x006cfecc,0x00856713,0x0081c054,0x006196f0,0x00440e6a,0x0029c8ae,0x0028ea02,0x0011bc28,0x000257d1,0xffdf71f0,0xffb6f6f9,0xffd524fe,0xffdb3157,0xffd9e02d,0xffe2d391,0xfff327b5,0xffeaf7fa,0xffe5c4cd,0xfff0d21d,0xfff071a9,0x00083471,0x0015038f,
-0x0014c313,0x001c8d9a,0xfffd112d,0x00003813,0xfff0e3bd,0x00384c10,0x00f8a0b0,0x010f58ce,0x011811ac,0x00f548de,0x00e82e57,0x00e9b5a8,0x00b048cb,0x008a1f2a,0x00667625,0x0031264b,0x00156a50,0x000bdcee,0x000fa6e0,0x0014a36c,0x002260cd,0x00136a1f,0x001f908d,0x0024fc3a,0xfffeec2d,
-0x00064429,0xffe39a31,0xffdda277,0xffdf2352,0xffe2b889,0xffff28b9,0x001e6991,0x001b3670,0x00133735,0x00075dd7,0x0004c60c,0x001a2a94,0x002885c7,0x001aca98,0x002b81bb,0xff497d79,0xffbfafde,0x00058d43,0x00041419,0x001e3491,0x003c8a5c,0x00566bc6,0x007266d3,0x0049f0ca,0x0035d1fa,
-0x00327300,0x0034831d,0x0037c430,0x003267ce,0x0039f61b,0x003f7113,0x00425cd5,0x003ffbc5,0x002d9305,0x000bdcff,0xfff6c33f,0xffe44204,0xffc2270b,0xffd8e779,0xffdd78b9,0xffd9b07f,0xffd9ea1f,0xffd10d11,0xffe197b3,0xffd6e450,0xffd5eb64,0xffdf4c86,0xffc9e69a,0xffb793e1,0xff87a89f,
-0xff92d49d,0xffd7d4e2,0x000579e7,0x001b7520,0x0018ce79,0x0023ed0d,0x002c2af3,0x003c1f8d,0x0054296f,0x0052b55e,0x005353a4,0x004e3f81,0x00448f8a,0x003b742c,0x0031672f,0x0031da7e,0x002f4809,0x002f005b,0x0028ba9d,0x002ed7ad,0x0020cbba,0xfff8ea79,0xffecd73b,0xffdcc5f4,0xffe197a7,
-0xffd696da,0xffe28a05,0xffc51a3e,0xffd1a003,0xffa891a5,0xffb245e1,0xff978e3c,0xff964821,0xff998232,0xff99eaec,0xff907839,0xffc2795b,0xffc7a06c,0x000a75c2,0x000ea070,0x0014d3d7,0x001d74c4,0x00242710,0x0027a645,0x0029e374,0x00218eee,0x001c6f5b,0x0019902a,0x0015b786,0x00110db4,
-0x0009d5a8,0x000d8542,0x00105104,0x001436cd,0x00161d38,0x0016cd69,0x00218724,0xfff71f5c,0x00121379,0x000ab0a1,0xfffb7fe4,0xffeff3fc,0xfffa66f9,0xffff9ec2,0xfffc8d85,0xffeb4a94,0xfffdb7c2,0xffff19a9,0xfff01321,0xfff7b24a,0xffec8d66,0xfff2a892,0x00063826,0xfffe49e7,0x00295439,
-0x001c679a,0x001fc0ef,0x001f2e4a,0x001fba3e,0x00215df7,0x002563b3,0x00239e80,0x0021ec8f,0x001ee4b5,0x001c5c18,0x001a7e9f,0x0017ba49,0x00198d35,0x0019ed6f,0x001a2062,0x001c33d7,0x001a524a,0x002606ab,0x0002ca4e,0xffddd83d,0xffb42754,0x00094881,0xffd7f551,0xffa72e32,0xffa6fb01,
-0xffa9f2a7,0xffb2ad94,0xffad3665,0xffaf38e7,0xffb24000,0xffd491a6,0x0005a99d,0xffb71357,0xffd5fcdc,0x0021e705,0xffd7c631,0x0028ef24,0xffbf9688,0xffde4886,0xffd98144,0xffdcce2f,0xffd6b532,0xffd4f8b2,0xffd222c3,0xffd78eb9,0xffd9fef1,0xffdb0f56,0xffde7be7,0xffdde1a2,0xffdb14d4,
-0xffd3bccb,0xffd0d251,0xffd04af0,0xffd1f906,0xffd842a4,0xffc08d71,0x00217224,0x004ab51a,0x004e69aa,0x000eb6a3,0x004daf1e,0x005c18d1,0x005d7615,0x005f6e4f,0x005bc2dc,0x0065b704,0x0065d0c9,0x0061d9e3,0x004e4dc7,0x0009e0ca,0x005602fe,0x005cbaed,0x0063ebf1,0xffde0eb2,0xffdb3623,
-0xffe42686,0xffe64310,0xffd93749,0xffd08155,0xffc7c88c,0xffd0434e,0xffd8445a,0xffdfa07d,0xffec092e,0xffe99add,0xffdc21fa,0xffc33414,0xffb97c19,0xffb92d01,0xffc2cc60,0xffbd8dff,0xffd6ee7a,0x00377ce9,0xffe5b736,0xfff0127f,0xfffeb569,0x00102e02,0x00095510,0xfff913bb,0x000296bb,
-0x002ea765,0x0004767c,0xfff62c5e,0x0012f528,0x00083d3e,0x001ed11e,0x0018d68b,0xfff562df,0x00381c2e,0xffe8303f,0xffcec7db,0xffe446a8,0xffe2a6f8,0xffccabe5,0xffc7671e,0xffb2e6aa,0xffcf7d75,0xffe0c697,0xffe01291,0xfffb85cd,0xfff71d96,0xffe48ed2,0xffb8686b,0xffa60a2c,0xffa46669,
-0xffb164b7,0xffa4dcdb,0xffe693d9,0x0003ff2f,0xffe912f8,0xffd611e3,0xfff32df6,0x00143e9e,0x00152bf7,0x001bfb69,0xfff5dd56,0x0054120b,0x001446f4,0x00322ecf,0x00196d87,0x001e0f0a,0x001e81ac,0x0015397e,0x001f3e02,0x004bf24d,0xfff3357a,0xffe946e7,0x0008f2d9,0x000956fa,0xfff22679,
-0xffd053ff,0xffa2fefe,0xffc8dab9,0xffdfc80d,0xffed5ccc,0x00261dc7,0x002e58fd,0xfffc601a,0xffa8038b,0xff801bcf,0xff7ac089,0xff8bfd1b,0xff857f4c,0xffcea84c,0xfffa9324,0xffb539d0,0xffd2b7a5,0xffd7d402,0xffe9fbce,0x002fe587,0x0019095f,0x002a678b,0x0061017e,0x0066d348,0x0049eacd,
-0x003cfa88,0x003bb905,0x0024f24d,0xffe72f0d,0x001018fc,0x006b1c66,0xffbea518,0xff81a24d,0xff76f79e,0xff592b46,0xff516825,0xff9b45dc,0x000554f3,0xffe1ed40,0xffdd2a37,0xffe7cedd,0xff52f6ca,0xff3696eb,0xff6b18b9,0xffb7efb4,0xffdbfff4,0xffb5fbd7,0xffd955b7,0xffc39db3,0xfffcac52,
-0x0023500e,0xffdf6f6b,0xfffdd3b3,0x001c03b1,0x001f6106,0xffe12a78,0x003ce469,0x004b9e7a,0xfffeee24,0x00044a32,0xffdce756,0xffb67dd2,0xffad1e42,0x000b8b0c,0x007c4f7f,0x0086acd6,0xffbc5c60,0xffd2ff7c,0xff7a4f59,0x00088714,0x00f566e0,0x00a2d7e8,0x00663e88,0x0068c0e3,0xffd32225,
-0xffbe1cca,0xfffa55aa,0x005327f6,0x0050e889,0xffe690ad,0xffc3b4b9,0xffab635d,0xffb2f600,0xffd39ffc,0xffc03715,0xffe5bac0,0xfff56ecd,0xfff2fcd7,0x001bee8d,0x0000317c,0x001437c2,0x0029b673,0x00150fdc,0xfff37330,0xffd14cbc,0xffee751d,0x002425da,0x00619bd2,0x00769deb,0xfff3f4e2,
-0xff47c7af,0xff5b5656,0x000d54fc,0x00a662e7,0xffc5262f,0xff47b742,0xff0b146e,0xfeca8714,0xff48c78b,0x00a19096,0xffe261e7,0xffb2ee62,0xffd5f849,0xffab2383,0xffb1a95b,0xffd7c9e1,0xffedd93f,0x0004345e,0x001f2a5f,0x0002e162,0xffdbfadd,0x000eb010,0x001c1481,0x0006bd6a,0x0016afca,
-0x001f8a93,0x000f5cfa,0x0001f990,0xffe9f370,0xffeead2f,0x00087ebb,0x0021bfc9,0x0012941a,0xfff2b7c1,0xffd9c7e9,0xffbc8c64,0x0000cd18,0xffc36748,0xffeb7e01,0xffabe4b9,0xffbe7b5d,0xffe79b80,0xffb76b30,0xffdb7d44,0xffe2dd34,0x000a20df,0x0031d642,0x0072a233,0x00937498,0x008df8fa,
-0x007b3a05,0x005026d7,0x0011cf1b,0xffd5d2ea,0xffb56927,0xffacd6af,0xffa78b6a,0xffc9b2d5,0xffe230aa,0xffcf8d90,0xffd22ad0,0xffdbb56a,0xffe46160,0xffef6da0,0xffe97f28,0xffeaaa46,0xffec1975,0xffeba619,0x00007f9c,0xfff86a74,0x000ef879,0x000280d6,0x000c347e,0xfffc0e7b,0x006b681f,
-0x00334e91,0x004073dc,0x007492a5,0x006135a4,0x0068074d,0x0058116a,0x0050c8ac,0x004d8966,0x0040585e,0x003c4f4b,0x00145a7f,0xfffabdea,0xfff04255,0x0000ec9d,0x00100b05,0x000fefaf,0x0018e680,0x000c5e2e,0x000c8bc6,0x001c3dfa,0xffee5392,0xffd91874,0xffd7187d,0xffd78480,0xffde7017,
-0x00082e75,0x001960d3,0x0022fe19,0x000cd2bb,0x00119af5,0x00171cf6,0x002e3b00,0x003fb4c2,0x00439203,0x0039e241,0xfff0f7de,0xffd3d732,0xffbe1146,0xffdc2c9f,0xffd2927a,0xffd4da98,0xffd28332,0xffd897bd,0xfff788be,0x00086778,0x0012d334,0x00092d5f,0x000e9def,0x00120b08,0x00186464,
-0x00136886,0x0004e7a8,0x0002d29e,0xfffc4b97,0x00081ea4,0xffef86fa,0xffdab1c9,0xffdce5e8,0xffdbe3a0,0xffd9b987,0xffd43c62,0xffcfd80a,0xffd1cd46,0xffd4e460,0xffd8c3f5,0xffdddfec,0xffe48a46,0xffde7d95,0xffcab433,0xffb0045f,0xffb0fe80,0xffe4dd3f,0xffde84a6,0xffcb110e,0xffda6fb5,
-0xffd7e069,0xffe5922f,0xfff196c8,0xfffbd539,0x00091727,0x00111e7b,0x001b5ebb,0x00180d2b,0x001628f8,0x0017f13a,0x0013d450,0x0012e775,0x000f89a1,0x000ac0ca,0xfff594aa,0x0001c781,0x000e3f06,0xfff5a1a3,0xffdf39b0,0xffdd1e77,0xffe397f6,0xffdcb124,0xffdcd964,0xffc2d755,0xffcc63df,
-0xffb1408d,0xffb152d7,0xff9af039,0xffa50650,0xffb04687,0xffbc9f76,0xffc9765f,0x001ee4ea,0xfff577c5,0xffeec325,0xffef749e,0xffeb4924,0xffe5933c,0xffddc918,0xffd7f15d,0xffd917e6,0xffdc628c,0xffe1ea2e,0xffe98c53,0xfff2f499,0xfffe143b,0xfffe2fd2,0xffff0e3c,0xffff902b,0x000198c1,
-0x000331e2,0x0001d812,0x001c505e,0xfffcdcc0,0x0000484a,0xfffff9f5,0xffffb617,0xfff00005,0xffe74e11,0xffecae47,0xfff81f00,0xffe48f8c,0xffdbef04,0xffe5eb30,0xffe74f15,0xfff88fb2,0xfffb5664,0xffeaec41,0x00119d93,0xffe27a10,0xffeb852d,0xffe6e76d,0xffe49967,0xffe39660,0xffe31ee8,
-0xffe0d9fa,0xffe3c0fb,0xffe50a2f,0xffe5b44d,0xffe6ccad,0xffe7537f,0xffe90ad9,0xffe90d02,0xffea187a,0xffeadc0f,0xffeb5b3a,0xffee53fa,0xffe5718d,0x00101b33,0x002dc480,0x003a4209,0x0003f408,0x002bf58b,0x0039de49,0x003a702c,0x0035c450,0x002d00fb,0x00323533,0x003107b0,0x002b59d9,
-0x0021861c,0xfffbc8ef,0x0030016d,0x002d1c72,0xffe3d311,0xffffba30,0xffbc986e,0x0014edef,0xffffacb8,0xfffe069d,0xfffa94b6,0xfff3a6a3,0xfff3e13a,0xfff9301c,0xfffe5d16,0x00022789,0x0004af6d,0x00056e77,0x0003ecf9,0x0001869f,0xfffd3ecc,0xfffb53bf,0xfffa58c6,0xfffab4ab,0xfff9fa4c,
-0x000e113e,0xffb486b0,0xffa2be59,0xffc50ccb,0xffc6e002,0xffa93a1f,0xffcf53d0,0xffc4efab,0xffc51f5b,0xffd575a8,0xffc17f40,0xffbe1bc9,0xffc1f53b,0xffac5645,0xffd2c44d,0xffcda211,0xffa5cc4c,0xffbbddaf,0x0000253b,0x001124a0,0xfffd1f0a,0xfff6d342,0xffdbc477,0xffd4b76b,0xffe45c25,
-0xfff1a2e9,0x0000ccba,0x000af866,0x00169c99,0x00184a2b,0x000e7f28,0xfffbe8f1,0xffed6e63,0xffe8d620,0xffe22317,0xfff0c263,0xffe48197,0xffadcd44,0xffdac756,0xffbeef19,0xffe019c7,0xffe1bc1c,0xffebd6d0,0xfff26362,0xffe939c0,0xffe85ebe,0xfff57179,0x0005b500,0xfffd2833,0xfffb1317,
-0xffe73333,0xffd899cf,0xffff7acb,0xffd7b06b,0xfffa9730,0x001e60ad,0xfff489bc,0xfff05f1f,0xffb786e0,0xffaf0137,0xffd2d4a5,0xffee964d,0x000bb87d,0x0011d4df,0x00207871,0x001b32c6,0x00073853,0xffee183f,0xffdb1b2f,0xffd864dd,0xffd2f48e,0xffe9c5f7,0xffd8917e,0xffb40146,0xffc587e4,
-0xffbf637d,0xffe9a08c,0xffe00765,0x000dc1a8,0xfff077b8,0x001b8f2b,0x001639ed,0x0020670c,0xffffabe5,0x000c5dcd,0xfffe4060,0xffff4527,0xffdfad40,0xfff9f4bd,0xfff86ea8,0x001760e8,0x004006c8,0x000f3cd7,0x00020510,0xffa27730,0xff74250a,0xff9d7869,0xffcd6164,0xfffeee18,0x001f5c75,
-0x0049b8f5,0x0058919f,0x00307464,0xffe94b71,0xffb7ba59,0xffa7b972,0xff9cedf9,0xffc41361,0xffc985b7,0xffafa1a9,0xffdd178e,0xffadb7f9,0xffece5f3,0x00036979,0x0041282d,0x00221eaa,0x0026a619,0x007b0a5f,0x00636d57,0x0059377a,0x004d8a5c,0x0043c142,0x00149921,0xfff239d1,0x001196d6,
-0xffa659e5,0xffaa3b8a,0xffe19485,0xffb36a1e,0xff946f94,0xff7f8243,0xffba2ee2,0x00307051,0x0044343b,0x0060ea36,0x00890dd4,0xfffe4e81,0xffcc3d9a,0xffdb76ca,0x0004bd33,0x0021a7dd,0x005034f2,0x0032252f,0x002659f4,0xffdd32ec,0xffbdada7,0xffff34be,0xfffc3b50,0x001af75a,0x00110ca5,
-0xffde8c54,0x00497219,0x0052c4cb,0xfffac5d5,0xfff8849f,0xffd050a7,0xffa5729b,0xffb48545,0xffeba808,0x0040f8bb,0xfff459f4,0xff8da1fe,0x0017afb6,0x0024e261,0x003caee1,0x00e2178d,0x006f9eb9,0x00263620,0x00289ff5,0xffcabcb3,0xffcf6a90,0x000169e8,0x004dea6b,0x00482f4c,0xffd8261b,
-0xffd4c8c8,0xffc283b5,0xffcdca81,0xffc84221,0xffe11bf0,0xffc60815,0xffc6c2ba,0xffdf4d60,0xffff5d1c,0x00113586,0x00248f87,0x0028bdb9,0x00102354,0xffeb911a,0xffccd582,0xfffb4821,0x002a146d,0x0062090d,0x00532578,0xffe9325e,0xff35eea8,0xff7ed96e,0xffd7d087,0x0062f42a,0xff93a706,
-0xff262a14,0xfeeb64da,0xfe8ab714,0xff163884,0x008f5dae,0x006bc49e,0x00638614,0x00565f52,0x002a5417,0x001683e1,0x001ee99b,0x003c7edb,0x003fa495,0x003f6cc3,0x001c2d8b,0x00279c9e,0x00103328,0xffff5d67,0x00108cc7,0xffff0ebf,0x000d7a28,0x0003fd5e,0x00017e56,0xffed13a6,0xfff67819,
-0x000ee8cb,0x0017aebd,0xffff0ef8,0xffd3d09e,0xffc99c20,0xffcf715d,0xffd97570,0xffb3dac9,0xffe2e7d2,0xffabf430,0xffbbd797,0xffa64328,0xff9a47c8,0xffbbd938,0xffd3c4bf,0x003934f4,0xfff8085a,0x00179017,0x00401da7,0x0047a532,0x00488535,0x0037f1f2,0x000995af,0xffdc8f62,0xffd0c762,
-0xffc71166,0xffd50d7a,0xffcf00eb,0xffb37688,0xffc60734,0xffd21409,0xffdd8fb3,0xffe7b866,0xffedbb45,0xfff6572b,0xffea83ec,0xffe9b743,0xffee3524,0x0007b055,0x000cf4fc,0x00097793,0x000c6bbf,0x00129ee5,0x00117179,0xffd5b925,0xff9c77eb,0xffe53c9d,0x00094302,0x00315ce9,0x0030f442,
-0x003d6c3e,0x005a0d6a,0x004cf442,0x0039a919,0x001864bf,0xfff8b3ea,0xffe5e757,0xffdada5f,0xfff612d1,0x000a3035,0x001ad529,0x001009c1,0x0012a4cd,0x000e7292,0xffeae351,0xffe9cc5d,0xffd58786,0xffd1b392,0xffdaae1b,0xffe397ed,0x000963ba,0x00244762,0x00112517,0x000deea6,0x0003f0ba,
-0xfffe5978,0x001a52b7,0x00228560,0x000fb41f,0xffe784bf,0xff8f0894,0xff9e49e8,0xffe3ed4b,0xfff4d53e,0x000d61e1,0x001a9f5f,0x0023aaaf,0x002018b8,0x0027e715,0x0029f434,0x002cb31b,0x0017782c,0x000cfb58,0x00081d34,0x000d4b44,0x00113bcd,0x0019468b,0x001c433e,0x001374d3,0xfffde18f,
-0xffe2f3b9,0xffd196fc,0xffba60c5,0xffd22b76,0xffdceb47,0xffd5504a,0xffd58f26,0xffd51c4c,0xfff27af9,0xffeee8d6,0xfff188e0,0xfff60e0b,0xffef78e6,0xffd702d3,0xffae7f8f,0xffa3419c,0xffac9d2b,0xffd76213,0xffe9626f,0xffe194e8,0xffe8ea95,0xffed900d,0xfffac721,0x0009b7db,0x00104b37,
-0x001454b0,0x00192604,0x001d381e,0x00222b39,0x00253fe7,0x0023d6a1,0x00227768,0x0023dc58,0x00144746,0x000fd22a,0xfff97268,0xffe438de,0xffe56275,0xffdeb6e5,0xffe00f9b,0xffd9fec1,0xffe0955d,0xffd0af13,0xffd48e6c,0xffb49089,0xffb84e3d,0xffa0285c,0xff97d670,0xff9146f9,0xff86e122,
-0xff7a4f46,0xffa01376,0xffe1adae,0xfff752ee,0xfffd48a2,0xfffe9b6d,0x0003e54d,0x00055ef9,0x0004c887,0x0002a555,0x0005f701,0x000b6d65,0x00107d1a,0x0013dab3,0x001458e3,0x001255b8,0x00139640,0x0014839f,0x00172d47,0x00179fbf,0x001c86de,0x001d3898,0xfffc892a,0x0004d43b,0xfff3bdac,
-0xfff00f8f,0xffe03db2,0xffdb4be3,0xffdfb854,0xffd7e0ce,0xffcfb311,0xffdd0e01,0xffe391e3,0xffdc17da,0xffe54040,0xffe6f513,0xffe7f226,0xfff54974,0xffd71e0f,0x000174bd,0xfffb442a,0xfffb73fd,0xfffb5bc0,0xfffbb96b,0xfffd802f,0xffff3c56,0x00016751,0x00019391,0x00015ac5,0x00017ec7,
-0x00028ead,0x0003eab0,0x000467a3,0x000487e1,0x0004886e,0x0005735b,0x00045a71,0x000eb576,0xffe1fada,0xffd07b2e,0xffded1ce,0xffddbe7e,0xffc5c53e,0xffd5d455,0xffd2b977,0xffd27696,0xffd69326,0xffce465e,0xffcd50a8,0xffcccbfc,0xffc2595f,0xffd673fa,0xffdd825a,0xffc8f92b,0xfff8bbac,
-0x0015fa2a,0x0047e7bb,0x000bdab3,0x0012accb,0x00148cd6,0x001132d5,0x0016371f,0x0017f5f4,0x001606b3,0x001bc6b8,0x001d2053,0x001aadda,0x001d3a95,0x001d0c74,0x001e5804,0x0016736c,0x0012fb88,0x001059ad,0x0011053d,0x000e4801,0x00095b1f,0x003e464a,0x0032804c,0xffe22b42,0x004024fb,
-0x003c9d7f,0xfff53040,0xfffad459,0xfffde990,0xffff0e46,0x00062f2b,0x00073d19,0x000a929d,0x003e1844,0x0041cc1e,0xfff2d814,0x003fd63f,0x00366402,0x002b95c6,0x0018fe30,0x00216e32,0x001794eb,0x00229e2c,0x002496b8,0x001f0ca3,0x002a6a1b,0x002e4696,0x002cbe0b,0x0035eef5,0x00377a38,
-0x0036ea84,0x001f7a01,0x00145d7f,0x000d6f15,0x000da20d,0x00004aaa,0x001458b5,0x0009965b,0x000539a1,0x0010d89a,0x001416bc,0x001d19dd,0x0027052f,0x001fb9eb,0x002e2a75,0x003fda25,0x002c0408,0x001efde8,0x002cd87f,0x00274dab,0x0025be16,0x002dc179,0x002cb422,0x004abdb8,0x001f60db,
-0x00119a9a,0x001ff4bf,0x000b6456,0x0022bc05,0x00337da4,0x0026295c,0x0048bfaa,0x0051ed40,0x003fc76f,0x005393c6,0x005269bf,0x0058e7ce,0x002bc6c7,0x0016bb94,0x0009abcd,0x0003a336,0xfff3c477,0x000578d1,0x000b1b1b,0xfffbe9af,0xffea59f6,0x0014643d,0x001ddf33,0x00221020,0x001e070a,
-0x00124565,0x00496705,0x0015468f,0x0027f3ea,0x002ace6d,0x00223e4f,0x002a0cb7,0x0024ca89,0x003bf2a1,0x005dbbd3,0x00345ac8,0x002b17bc,0x003e20c0,0x0022abcd,0x0046955c,0x004a00bb,0x002e5444,0x005c8c86,0x0067a460,0x005790dc,0x0085116d,0x00a1c11c,0x009f09fb,0x004edc30,0x001f59d7,
-0x00036ca4,0xfff1eec1,0xffd1dc73,0xffeb8dc4,0xffe80fd9,0xffcca32f,0xffce05b0,0xfff77302,0x00037fea,0x002d2b80,0x001cf512,0x00245eef,0x00619309,0x0061a632,0x004a3ff4,0x0048104e,0x003a7b2c,0x002e2723,0x00072019,0x004006ab,0x003b8f47,0xfff95df9,0xffdfdc52,0xffda037e,0xffb3c877,
-0xffcc7291,0x001b9c1c,0x009dbec9,0x006c0960,0x005a6358,0x006f70ea,0xffc92e23,0xff852937,0xff8415a5,0xffd84fee,0x0005df4e,0x00028904,0x002ef5ed,0x002f1afc,0x0034a0e3,0x001f71b0,0x0005d9bb,0x001dac74,0x0020ccd4,0x001e54cb,0xffe1c7f8,0x00502d9a,0x00581a7b,0xfff55008,0xfffad573,
-0xffcfb232,0xffbb56b7,0xffd5735a,0x00271e76,0x006dc2f9,0x005de959,0x0000bc30,0x003399d3,0xffe5c27c,0x0043a5be,0x00c8781e,0x00cadfe9,0x00a05780,0x006a9bc0,0xfff98534,0xffddcffe,0xfff93d0a,0x0063c4c7,0x0070ffeb,0x000d1cba,0x0000fa39,0x00062b4b,0x003b1236,0x002df0c6,0x00051072,
-0xffec68a3,0xffe5e293,0xffec37b5,0x001a9dfe,0x000b28dc,0x001b86b0,0x00245121,0x000597e2,0xffe1d219,0xffcc3c84,0x000359d0,0x00353432,0x0052a7b2,0x00442644,0xffda0dd1,0xff63e4ad,0xffa1a0e2,0xffd835bf,0x00269366,0xff7985bc,0xff672b29,0xffe48dfd,0xff9fcda4,0x000b4bc5,0x0117bcc8,
-0x0094e769,0x0059b548,0x004f08f5,0x00447e67,0x004ed16d,0x00661ef0,0x006949dc,0x0053e9d5,0x003886b2,0x002346cd,0x0009fff0,0x002cdca1,0x0033dd4c,0x001a84d8,0x001ef3d0,0x001d34cd,0x0007b5c0,0x0001c4bb,0xffed8f02,0xfff55b64,0x0012779d,0x000f25c9,0xfff5d1ba,0xffd2ba1d,0xffee4b57,
-0xffe236ce,0xfffd9de7,0xffb93506,0x0009e47d,0xfff4310f,0x0054edfa,0x00acc5cc,0x00ea3e18,0x00d17e72,0x0096cc3d,0x004a33b5,0x00443f32,0x00704cc9,0x00aa6249,0x009ff77c,0x009129dd,0x006e2cc4,0x0047c405,0x001ff177,0xffff2df9,0xffee97d1,0xffd440fa,0xffdb086b,0xffd505bd,0xffd2e9bd,
-0xffd9f296,0xffea34ac,0xfff42fa3,0xfff30c50,0xfff72694,0xfff668c0,0xffebf478,0xffef68a9,0x00041c87,0x0001013f,0x00089181,0x0012509a,0x00265419,0x0015b863,0x0016b28f,0x00347e8d,0x00a0afea,0x00cb617c,0x00cdd1ed,0x00f1d736,0x00ef4f3b,0x00d255d9,0x00be97d4,0x00adf3e9,0x00c3e7ff,
-0x00857192,0x005b9e15,0x003d2a37,0x002917f3,0x001e831f,0x001416b6,0x001712fa,0x0014c2b2,0x001f807e,0x0016a41c,0xfff4d877,0xffd4f018,0xffd1cf2b,0xffdcb175,0xffef1935,0x0013ae10,0x00239427,0x00235c9d,0x001c5f9e,0x001f5c3c,0x0020fc08,0x00351fea,0x003bd3e3,0x0022b385,0x003a5f80,
-0xffe2feff,0x00193b4c,0x0039c3ca,0x00483386,0x0044c78d,0x003495b1,0x002acd6e,0x003b9f52,0x001fb37e,0x000f5eea,0x00082e5b,0x000e292d,0x00221a71,0x00327430,0x003cc080,0x00383e6c,0x001ecf3c,0x0019ccd0,0x000302e7,0xfff01119,0xffdef882,0xffd6bdfe,0xffe8b28d,0xffeb3c36,0xffe3fbf7,
-0xffd8c115,0xffda4229,0xffe21708,0xfff24ccb,0xffff128c,0x00093e95,0x001096f5,0x00106388,0x000d53c4,0xfff16cb0,0xffffe865,0xffe8eaaa,0xffe9e136,0xffe3d572,0xfff1be04,0xfff91278,0x000c95c6,0x001d83f8,0x002fac45,0x0036801f,0x003cf137,0x003d9c53,0x0030ef3f,0x00227a3e,0x001736bd,
-0x0014daf3,0x00162778,0x001771cf,0x0011ac3c,0x00033df4,0x000801a8,0x000c19c3,0xfff7e582,0xffe8297b,0xffe46fc9,0xffe49626,0xffe0bbad,0xffdd05db,0xffd42b30,0xffd640be,0xffc0246a,0xffb93802,0xffaade06,0xffad4c0f,0xffae930d,0xffacfa7e,0xffc91ac8,0xffff855f,0x000b48ef,0x000a6d79,
-0x00147e1e,0x0017cf7d,0x001a8dc0,0x001b56ec,0x001f521d,0x00159770,0x000e6288,0x000af399,0x0007face,0x0008a348,0x000a1213,0x000a836f,0x0008e066,0x000759a3,0x00074a4c,0x0003ca42,0x0008a8f9,0x0016fbf2,0x000b502e,0x001380ad,0x00071ec7,0x0007c092,0x000415a1,0xfffcb5ee,0x00013eae,
-0x0000fab8,0xfff766a5,0xffecb041,0xffec2d8f,0xfff1ea19,0xfff969a0,0x0002c2ad,0xfffed00b,0x0018d27a,0xfff99fed,0xfffccae5,0xfffe62d6,0xffff6e24,0x000260a7,0x00054d1d,0x0009ae6d,0x00063977,0x00046c0b,0x00019415,0xffffc38b,0xfffd5d35,0xfffac7b7,0xfffb01c0,0xfffb9281,0xfffbb604,
-0xfffd0f81,0xfffe3c2b,0xfff885db,0x001c1de3,0x001df142,0xfffae830,0x0017c463,0x001c84f1,0xfff34550,0xfff52529,0xfff37470,0xffef95c3,0xfff40b17,0xfff49c1c,0xfff182b3,0x000e6ac3,0x000d66ce,0xffeedfcc,0x00145eee,0xfffba15c,0xffcf8fd7,0xffc24a4f,0xffcf3d4b,0xffd907d7,0xffd248a7,
-0xffd45b0b,0xffc41e26,0xffc0de79,0xffc40228,0xffca926c,0xffcebd2a,0xffd07a98,0xffd2fdab,0xffd2fc71,0xffd44dce,0xffcd4ce8,0xffca9a7f,0xffc85bf6,0xffc9106f,0xffcf48d7,0xffcacc76,0xffbc8fbc,0xffdf3d61,0x00376495,0xffbc0069,0xffe0b3a7,0x0037fb82,0x00325a4a,0x00310565,0x0032a0df,
-0x00294c27,0x002747be,0x00295763,0xffde8b6e,0xffba5109,0x003ba6be,0xffe73958,0x000a2df0,0xffca5b28,0xffe94522,0xffdc7f62,0xffdc43f7,0xffac8784,0xff9c5a6b,0xffa5ed54,0xffb2cc78,0xffbfe940,0xffc77284,0xffd6395d,0xffdb5e98,0xffdaaea9,0xffc18521,0xffb1cef8,0xffa8f3db,0xffa93e60,
-0xffb5625d,0xffb1fcd4,0xffed6266,0xffcc9ac7,0xffbd9795,0xffe57f4e,0xffee7f37,0xffd7b149,0xffdd7626,0xffd146af,0xffde0bf3,0xffd4bfbb,0xffdf62a5,0xfff3d22f,0xffe60c12,0xfff102f0,0xffe88410,0xffddaa66,0xffe07b68,0xffd06e85,0xffec2e36,0xffd8e018,0xffde0863,0xff84cc1a,0xff6a946d,
-0xff7d47e8,0xff9d56a0,0xffb98a90,0xffbbc650,0xffd2f929,0xffd55191,0xffd83a5b,0xffae0c87,0xff987969,0xff8c9e46,0xff94ad19,0xff9ee987,0xffbad415,0xffbfe6a2,0xffc96280,0xffc5c2e6,0xffec211b,0xfff68b5e,0xfff68a07,0x000216b3,0xfffd4d9d,0x000c0a2b,0x0000d778,0xfffcc8d8,0x00083b86,
-0xfffb00a8,0xfffdd865,0xfff8cc88,0xffee268d,0x000ddcee,0xfff2d77c,0x0025dd0f,0x00130cce,0x0010dbf9,0xff82fd80,0xff3c96a0,0xff472e27,0xff764223,0xff9b7c5c,0xffb05ea6,0xffe4fb6a,0x00033089,0xfffbd88c,0xff9d2ada,0xff636d37,0xff4773fd,0xff4f21c3,0xff7032d0,0xff9af955,0xffc07703,
-0xffc3a332,0xffbdea3a,0xffef5d6c,0x0006c0b6,0x002cb3e7,0x001aecd5,0x0026114c,0x0065e80f,0x00562009,0x00482fda,0x004f09f0,0x002f35e2,0x000e3985,0x00065d6d,0x0006619b,0xffa7488d,0xff6182c6,0xff61c561,0xff476339,0xff3969a1,0xff1bcfaf,0xff475664,0xffb4ec05,0xffcb7424,0xfff36715,
-0x00311da9,0xffb09305,0xff833e8c,0xffa65e34,0xffd14a57,0xfff2c186,0x0002f836,0xfff98d9b,0xffe007ad,0xffc612c5,0xffe4d792,0xfff2a434,0x000abd15,0x000cce30,0x000c56e5,0xffe2ab40,0x005190c6,0x005630c3,0xfff42ea0,0xffe91d87,0xffbd63aa,0xffa61e7e,0xffcee92d,0x000a20fe,0x0039db02,
-0xffe41569,0xffc1126c,0x000a248d,0x00277b03,0x003bff34,0x00a3f277,0x006d147a,0x003efa9c,0x0027e9e4,0xffcbdeee,0xffc06ce3,0xffe6d603,0x0059b8a1,0x006246e9,0xffdcbce8,0xffabfa1e,0xff78cdf3,0xff663b73,0xff889896,0xffa48c6d,0xffafc627,0xffd53f70,0xffdcb427,0xfff70369,0xfffbebd1,
-0x000d91b5,0x001ca2a3,0xfffd9625,0xffda1f84,0xffc8c6f0,0x00084211,0x00345cf9,0x0040cba8,0x001de92f,0xffaa65ab,0xff3f5628,0xff78b647,0xffc5764b,0xffb6ef0e,0xff2eaf58,0xfeed8e56,0xfea4f976,0xfe2d3978,0xfe63310a,0xff592187,0xffd6b039,0x00192ca0,0xfffeeb1c,0xffa70b0a,0xff76de08,
-0xff85b4fb,0xffc4055f,0xfffdc079,0x00306475,0x001f1a44,0x000bbebb,0xffed2623,0xfff11590,0xfffce3b3,0x0003ce8d,0xfffd506a,0xfff4bce1,0xfffc65b1,0xffea3488,0xfff46f34,0x00103be2,0x00004305,0xffe1998b,0xffba6321,0xffe534d9,0xfff064b6,0xffe82135,0xffc01903,0x000b21f4,0xfffb237d,
-0xffbea609,0xff749018,0xff0f866e,0xff4ceafb,0xff874fac,0xfff0bc28,0xffd3448a,0xfff19373,0x00299f39,0x002b3cb6,0x002bf815,0x00259523,0xffe4e504,0xffad8cae,0xff8f4a5a,0xff90ece2,0xffa9273e,0xffc0e9f0,0xffc749aa,0xffc1899f,0xffcc146b,0xffe4141c,0xfff051e9,0xffece3fd,0xfffcd1d5,
-0xfff1ed71,0xffe691ff,0xffee9000,0x0002913e,0x0001022e,0xffffb1a6,0xffff9d29,0x002d0d80,0x001a3430,0xffea6385,0xff59da55,0xff1c47fb,0xff430e61,0xff6fbf6a,0xffab02c5,0xffd14ac4,0xfff01907,0x000ace3f,0x000be83f,0xfffb5f0a,0xfff06d6d,0xffe414c5,0xffd2e521,0xfff4c809,0x0009a833,
-0x000bb334,0x000ff235,0x000381cb,0xfff485a5,0xffe63d78,0xffd03f90,0xffcd293b,0xffcaa581,0xffd89000,0xffec810f,0x000e02d2,0x001de889,0x000dcea7,0x000f9d9c,0x000e1b06,0x0008f017,0x00204dcc,0x0021155c,0x0012e641,0xffd11f5e,0xfffcfa07,0xffc00584,0xffdeaefc,0xfffd73fc,0x0006aad4,
-0xfff8fb2d,0xffe920e7,0xffce09de,0xfff89496,0x000bd9d8,0x001245ad,0xfff6836d,0xffea9f13,0xffeac483,0xffefb04d,0xffeff995,0xfff0732f,0xfff437c0,0xfff27520,0xffef71b7,0xffd81079,0xffcb057c,0xffca5f58,0xffd0525f,0xffd7e430,0xffd25c54,0xffd536f0,0xffe04ffc,0xfffc67a3,0x000435f5,
-0x000c323c,0x000e2fb4,0x001633fd,0x0002e296,0xffefe38d,0xffd19b9e,0xffa1b92d,0xffb1d87d,0xffb7b2fa,0xffba49a3,0xffc2f046,0xffc6d9b0,0xffceafa9,0xffd080be,0xffda9c32,0xffdf687b,0xffe8e707,0xfff4919d,0x0000ed82,0x000cc0e2,0x000a42bc,0x000bdd61,0x000ee9e2,0xfffbdfa5,0xffe97062,
-0xffd97195,0xffdfde22,0xffe19189,0xffde2db6,0xffdcbeec,0xffdf282a,0xffdb4971,0xffdbb19f,0xffcecbee,0xffc61fb7,0xffbbb408,0xffb0d224,0xffa112d6,0xff999214,0xff8eab25,0xff8a4d01,0xff999f88,0x0005c971,0xffe5084e,0xffe96ef7,0xffe72dd0,0xffe65058,0xffe27be3,0xffdf0981,0xffdc0dad,
-0xffe79fb4,0xfff3ae0c,0xfffdde60,0x0006de1e,0x000d2327,0x0012ca43,0x000fbe3a,0x000cc7ab,0x000b95c9,0x0009bb5e,0x000e43ba,0x000572c6,0x0003898c,0xfff1463d,0xffe1d7ca,0xffe72a94,0xffdba13f,0xffc9659a,0xffc85017,0xffc2331b,0xffc76cfa,0xffc494bc,0xffc86ec2,0xffcc5998,0xffd3d083,
-0xffe41147,0xffe26380,0xffe0c224,0xffcac207,0xffd2e9fe,0xffd7b091,0xffd52d73,0xffd611f6,0xffd735ae,0xffd8f3a9,0xffd871bd,0xffdc6386,0xffddf538,0xffe01113,0xffe25838,0xffe53a3c,0xffe9b7a3,0xffe84cfd,0xffe81e5a,0xffe79c02,0xffe70cf3,0xffe78fcd,0xffe8dc89,0xffd6a4e1,0xffe32457,
-0x001542e3,0xffc86bea,0xffd8ac4d,0x001205a3,0x000e615d,0x000a5e20,0x00067a2c,0x00018362,0xfffe7b6f,0xfff985a1,0xffd223e5,0xffbdb0bb,0x000cf84f,0xffdd8a27,0xffce538d,0x00373f73,0x0027efb0,0x00420026,0x002f02d2,0x003429fd,0x002c802a,0x003439de,0x00378df3,0x0038e123,0x003e8686,
-0x003fb0d0,0x003bab11,0x003d66f8,0x003d85d2,0x0041d324,0x003add18,0x00378d5b,0x00335ea3,0x003350a3,0x002b2440,0x003b94ad,0x001e22c3,0xffed9618,0xff92995e,0x0034928d,0xfffad94a,0xffa31d84,0xffa66f51,0xffa86562,0xffaf661b,0xffabfc52,0xffac5f07,0xffb56a52,0xfffbc7b2,0x003c6e05,
-0xffa4b9c4,0xfff2c7b2,0xffea143c,0x004ed4df,0x0040eb01,0x003f0560,0x002e79f6,0x003afec1,0x0040d4a6,0x0044a284,0x00527298,0x005602a1,0x004f8cfd,0x00582c00,0x005e5920,0x0068003d,0x005477e7,0x004723e4,0x0039ca65,0x0030b585,0x00279289,0x002a939e,0xffc93f93,0x000c47a9,0x000d1f1c,
-0x00123563,0x00120d36,0x0023f4f0,0x00292a76,0x00302b21,0x00230471,0x002d7fa3,0x002d2e98,0x0029ddb6,0x0028709c,0x0010fce2,0x001cadae,0x003f79b5,0x002a1acf,0x00363340,0x00440754,0x003ac376,0x002104c6,0x0038b59c,0x004df7fa,0x0055ab75,0x0079c837,0x008198c0,0x0068dd06,0x0075e90e,
-0x00778208,0x008edc64,0x0068cb11,0x00531e2d,0x003da16c,0x002becb8,0x00269e58,0x0009065b,0xfff091bd,0xfff8abb2,0xfff1d2a3,0x0020ceb0,0x0011df35,0x00208a8c,0x00106500,0x0025acce,0x001da81d,0x000fb6b5,0x0008e72b,0x00266b12,0x001202d8,0x001df266,0x00199f47,0x0033f001,0x0040f616,
-0x0054e383,0x0062f946,0x005702eb,0x002eacd6,0x004900e5,0x005455f6,0x0059175b,0x008cfb30,0x0098e089,0x007d0ff7,0x00a2954c,0x00cc6c5f,0x00ed7758,0x00a7b0c3,0x00711d06,0x0041ef80,0x001a4cf5,0x0000df1c,0xffeef91e,0xffc59f5a,0xffe64e28,0xffc8f555,0x0013affe,0x001e76e6,0x002ee1b3,
-0x00256535,0x0021128f,0x0058180d,0x00517d16,0x0046ca50,0x004d2881,0x0033fa89,0x00266f99,0x001de237,0x004d780e,0xffdcc421,0x0003f2be,0x0016e6d7,0x00077795,0xffe9b63e,0x0007f8e4,0x004cae81,0x00dc6ef1,0x00b90034,0x00b18b36,0x00d681e4,0x00387c67,0xffdc70ff,0xffb6b3ae,0xfff4ba1b,
-0x0026e465,0x0058f3f1,0x0073f1d8,0x00838ee4,0x00465264,0x00064a50,0x002be3b2,0x00317146,0x001d3da9,0x0012ff61,0xffe5e1be,0x00563172,0x005b5d04,0xfff80312,0xfff0fd4a,0xffc2329e,0xffb5c75b,0xffeedcb4,0x00265ca2,0x0047b87d,0x000ffca4,0x00119f5f,0x0070bbf7,0x005fb1c6,0x006a9f68,
-0x0082026b,0x00b80532,0x009fb6f9,0x004d9790,0x0007b88b,0xffee04ca,0xfff9b6e0,0x00600c94,0x0078f85a,0x00286781,0x00226896,0x002d7ab3,0x006724d2,0x0042c5fd,0x002994c9,0xffe53dc7,0xffda168b,0xffe8e161,0x00070795,0x000e5109,0x001c41db,0x001ea15a,0xfff794e9,0xffd4f75e,0xffcea95e,
-0x0016abbf,0x003d43b0,0x003cfa43,0x0009783c,0xffbb3da7,0xff6c951a,0xffce196b,0xffb8cf17,0xff84ef3e,0xff3416a9,0xff7141d9,0x002f6504,0x0009985d,0x004aab9a,0x00cc89dc,0x0105e54a,0x00eb691c,0x008e1a0b,0x009eebbc,0x009ff1de,0x00a3a651,0x00a1de95,0x007bde7d,0x0043f333,0x0037e464,
-0x00332d13,0x002524aa,0x00253c8a,0x001e9f46,0x00197960,0x00105ab2,0xfffbe48c,0xfffb893f,0xfff4f04b,0x0001901a,0x00161ba2,0xfffebc21,0xffe02bc1,0xffbe3c97,0xfffb3f1c,0x000774bb,0xffe78bc8,0xffd2ce2d,0x0024fe99,0x003df60f,0x00a668a4,0x00e15e84,0x01428cba,0x010756da,0x00be2a89,
-0x00563c9f,0x0021f027,0x002fd1de,0x00757d23,0x007c962e,0x007b9743,0x006d67ba,0x00555568,0x003fbb99,0x00225078,0x001066c4,0xfff5baa3,0xffdfa05f,0xffc31919,0xffd1eb05,0xffdcbe22,0xfff1fa43,0xfffe8458,0xfff67ba4,0x000094b1,0xfffb747b,0xffec82d5,0xfff52984,0x00066d64,0x000e0fb9,
-0x00012659,0x001a64fa,0x0039a690,0x002ab061,0xffb8cadf,0xffecd947,0x00712ca3,0x0089ce1e,0x00abd787,0x00f1d2d1,0x010b3170,0x00ee0192,0x00d8f29e,0x00ca9939,0x00e16e16,0x00a535e0,0x007eb8d5,0x005d11df,0x00381f8d,0x00229131,0x00168d15,0x0010f62d,0x0013069f,0x0017e088,0xfff6db64,
-0xffecb1ac,0xffd2f4ab,0xffce8101,0xffe1ddd7,0xffffd7c9,0x0013f3ef,0x00229e85,0x0019d00c,0x002527ff,0x0022ded8,0x001e7178,0x002abb52,0x002698bd,0x000188ec,0x001688d1,0xffd61c0f,0x003aa754,0x0084bbd7,0x00846ea9,0x008c0c9a,0x007371b5,0x0066a91f,0x007330cd,0x0037f0da,0x00153c9a,
-0x000420b2,0x000ee97f,0x00209c94,0x002ff357,0x003db1b4,0x003d5ba7,0x0029729b,0x00239b29,0x0007ea58,0xffdfbeee,0xffd6caa6,0xffd6c17a,0xffe4ceca,0xffea35ad,0xffe435c6,0xffda263b,0xffe4bc09,0xfff20b50,0x000e6040,0x001dc981,0x002a4178,0x00311cab,0x0035d25e,0x003b78fb,0x0021d485,
-0x002b57aa,0xffd3689c,0xffe4900e,0xfff585d2,0xffff94fd,0x00154254,0x0023e9ca,0x0031c879,0x00417adb,0x003ec0f9,0x00405578,0x0038a738,0x002dedf7,0x00205d23,0x00135430,0x0012b4e2,0x00147b57,0x0019300e,0x000ebe5b,0x0008f58e,0xfffdabd1,0xfff2cc7f,0xffea7a16,0xffe42e31,0xffe36e57,
-0xffdec906,0xffdfa2cc,0xffd665a0,0xffddbb07,0xffcf5517,0xffc930ed,0xffb9c4a4,0xffb65ee1,0xffb066b0,0xffa63d35,0xff98a087,0xffbcdb7f,0xffd8ddb0,0x000ae2fd,0x0012804f,0x001f17a6,0x0027cb4f,0x0030d17c,0x0039f626,0x0045df6e,0x003ae3b0,0x00314cdf,0x002a43da,0x002192a2,0x001ad86d,
-0x0013b7b3,0x0012b388,0x000ec859,0x000be790,0x00094750,0x00041659,0x000a12d8,0x00000331,0x000a3825,0x000c575e,0xfffb7f43,0xfff7adaa,0xfffcd3ff,0xfffa9963,0xfff9cb50,0xffeeb169,0xfff3b9f4,0xffed9dff,0xffe32595,0xffec976f,0xffeb155f,0xfff576c4,0x0000e80b,0xfffdaef8,0x000539a7,
-0x00018ba0,0x0007dbfd,0x000bfff8,0x0011bbbf,0x0016cafe,0x001f0ef6,0x00187f8d,0x0015509a,0x00116099,0x000e65bf,0x000b7158,0x00078f8b,0x000770cb,0x0006ff4d,0x0006109b,0x0007329e,0x0005ca2a,0x00076c72,0x0007c10d,0xffef5b44,0xffbf28ad,0x00093dd9,0xffeb1503,0xffb276fa,0xffb339bd,
-0xffb41836,0xffb66635,0xffb59bf2,0xffb6c636,0xffb63597,0xffde5b0b,0xfffe4796,0xffb59a9a,0xffe04181,0x0005255a,0xffcab509,0xfff88641,0xffb7f42a,0xffd5e8d1,0xffcf59ed,0xffd35306,0xffc50fad,0xffc138e7,0xffc05928,0xffc7c66f,0xffcabfb9,0xffc93943,0xffcd658f,0xffceba35,0xffd3c735,
-0xffcac995,0xffc74cf1,0xffc38895,0xffc4593d,0xffcb958b,0xffb64470,0xfff3b2b0,0x0027f751,0x006578a4,0xffe80091,0x0029116a,0x00642a9c,0x006668c2,0x0064eeb6,0x0059d796,0x005f4cce,0x005fb6f5,0x0061a9c7,0x00233906,0xffdcd3bd,0x0069ef7a,0x003415bc,0x004dd193,0xffca8de1,0xffe1b17e,
-0xffe31d44,0xffe3de12,0xffbd87fe,0xffae2720,0xffabb879,0xffb8650d,0xffbefc80,0xffbddc16,0xffcd2a3c,0xffd4db2b,0xffde71c7,0xffc354fa,0xffb4dc53,0xffa7c263,0xffabd0d0,0xffab77e4,0xffb58f6b,0x00229a2c,0xffdaa7f9,0xffe202c3,0xfffda8d7,0x000aa0f7,0xffe87aba,0xffe93d33,0xffe361bd,
-0xfff5308e,0xffdbc2ae,0xffda803f,0x0000c840,0xffed6649,0x0008e4e2,0x000e1cb8,0xffe3a905,0x000c4fbe,0xffd147a1,0xffd9b211,0xffe4c405,0xffe7b19a,0xffa69c6c,0xff902414,0xff8611a9,0xffabd680,0xffbccb32,0xffb0c151,0xffccbd7d,0xffd404e9,0xffef085a,0xffba591f,0xffa42808,0xff8e1f8e,
-0xff99be7e,0xff90281a,0xffc4389e,0xffe62a78,0xffe384b2,0xffe2d74d,0x00021da8,0x001846e1,0xfff632c2,0x001966c0,0xffed84e9,0x000b34e1,0xffe98919,0x00021b7e,0x000dcc48,0x00019765,0x00093cc8,0x001e282b,0x00010bbd,0x0035e804,0xffefaf9c,0x00173b84,0x002ab809,0x0027f43a,0xffc3bcd1,
-0xff8a4971,0xff68d768,0xff98e6d4,0xffa6e986,0xff9c3d27,0xffd50064,0xfffff2d3,0x001eea0b,0xffbd9ca7,0xff82ab27,0xff57d0e5,0xff5f7108,0xff5f9d27,0xff980bb9,0xffd96885,0xffbacae7,0xffdbe7d6,0xfffe9d2f,0x00105a6e,0x001c188f,0x001b552b,0x002446ad,0x003e5679,0x00423c25,0x0032a3b2,
-0x0045ed30,0x001b68b5,0x001006d9,0x001be8ab,0x00122dcc,0xffd9ab39,0xff6f2a2f,0xff38aeec,0xff3679b1,0xff34d3bd,0xff268928,0xff500b97,0xffbe15c8,0xffb7a2cd,0xffd356fe,0x001207a2,0xff9517d7,0xff5d2322,0xff75bad2,0xffa5d7bb,0xffd2c597,0xffd24522,0xfff1beea,0xffe1dba2,0xfff5a5ee,
-0x0026755b,0x0000b118,0x0023b715,0x0005c393,0x0009a597,0xffebcbd0,0x004d8823,0x0052b84c,0xfff79c59,0xffe6453e,0xffb7e8ab,0xffafd4e1,0xffeb006a,0x0029bd05,0x00408eeb,0xfffc4ae8,0x000e2acb,0x00144c11,0x001f117e,0x00376dbf,0x005ae4a1,0x00842e54,0x00794957,0x003d23a4,0xffe45a78,
-0xffc1549d,0xffd507b0,0x0057422d,0x0075f175,0x000d08af,0xffbcb7fd,0xff842f70,0xff71250f,0xff9d4d6c,0xffa67bf7,0xffbef2c5,0xfff12216,0xffe8cceb,0xfff72d49,0xffed621a,0xfffc2ee6,0x00140d43,0xffed5ba9,0xffce1cb3,0xffcdd2c1,0x0011b6b3,0x0036c421,0x00208859,0xfff00cb7,0xff8549dc,
-0xff57a36b,0xff94c5e3,0xffbfda6a,0xff14799f,0xfef64ca6,0xff09e64d,0xfefecd8c,0xfeb2307e,0xfea9bc0c,0xfef48e5c,0xffca8c77,0x00197b46,0xffcd2158,0xff87d9e4,0xff5d91e3,0xff714a80,0xffa991df,0xffeaa68a,0x001f91c1,0x001fbde2,0xfff5fbe1,0xffdf9ee6,0xfff675da,0xfff6a9ee,0x0012b969,
-0xfffbdeff,0xffeece3b,0xfff4b437,0xffef87a0,0xfffb85dd,0x000e87b7,0xfff1d228,0xffd46132,0xffb6abde,0x0007c28c,0x001250f9,0xffee55a3,0xffe1b177,0x003ebeda,0x006207a9,0x002057d9,0xffdb6502,0xff676aa8,0xff8b7fb8,0xffade31e,0xffcac819,0xffd41f4b,0xffeebedf,0x00300348,0x00360001,
-0x0036f664,0x0033ea25,0xfff5d8e2,0xffc3c321,0xff94541c,0xff961800,0xffa05774,0xffbf8cd6,0xffdb9ff5,0xffc6bdce,0xffcf4212,0xffec4584,0xfffa0f4a,0xfff2977c,0xfffd8682,0xfff84b75,0xffe897b7,0xfff3f83b,0x00000cba,0xfffcea0c,0xfffb19f1,0xfffd7e9c,0x003e40dd,0x0024c996,0xffff2531,
-0xff7a20cb,0xff1105c6,0xff359ab5,0xff597aad,0xffc089da,0xffee5b01,0xfff2fd5d,0x001c955d,0x00280cee,0x0033610d,0x00262e5b,0x001921b5,0x0009391b,0x000d468f,0x00111ade,0x0003f1e2,0x000ede0d,0xfff84a60,0xffe4ee8b,0xffea2170,0xffc64328,0xffcac444,0xffc9f087,0xffdb2253,0xfffb8718,
-0x000e3180,0x0012c7b1,0x00111f04,0x0016ff2a,0x001d2039,0x001c0be9,0x0024fce7,0x0021a08d,0x001ac038,0xffe78896,0x0057813a,0x00129eba,0x000f83b3,0x002b2b54,0x0020306b,0xfffceb4f,0xffdda31b,0xffc1df29,0xffe6311a,0xfff569fa,0xfff7f84f,0xffe772c4,0xffe369f0,0xffe8e994,0xfff2549e,
-0xffef95a9,0xffe4993e,0xffe30098,0xffdf3473,0xffe3b98e,0xffd7aa04,0xffd16186,0xffe3ec2a,0xffd7c178,0xffd5d66e,0xffd2790f,0xffdcc593,0xfff2332e,0x000715c2,0x0019d9b6,0x00272cae,0x00297b9c,0x00389475,0x0032706e,0x002ef7bd,0x00185a7c,0xffb74098,0xffaddb09,0xffaae61f,0xffbc9533,
-0xffcb3d42,0xffd13505,0xffd3ac93,0xffccf12a,0xffd2d844,0xffd5d345,0xffdc52d3,0xffe5e5f2,0xffefccf8,0xfffaf7b7,0xfff6ff1d,0xfff8bedb,0xfffb312f,0xffebce8b,0xffd391f2,0xffcf8a13,0xffe4cbb9,0xffdedb53,0xffd9590f,0xffd71f15,0xffdf9af8,0xffd42044,0xffe01b11,0xffcb3864,0xffd777c0,
-0xffc36dbc,0xffc577f7,0xffb569d7,0xffb0eb69,0xffaa2dfe,0xffacb6f6,0xffad2e41,0x00129d2c,0xffdf066a,0xffe1e3f2,0xffe17e09,0xffddf886,0xffda358b,0xffd96a61,0xffdba930,0xffe55f4d,0xffee4139,0xfff5b3b8,0xfffcdbe7,0x00032a59,0x000b7cd5,0x00055c91,0xffffa736,0xfffa8fc2,0xfff7297a,
-0xfff76e6c,0xffece87f,0x0005a302,0xffe604dc,0xffe0e694,0xffe5e34b,0xffe2c88d,0xffcebe98,0xffc76b7f,0xffc63e33,0xffd1e005,0xffc13eab,0xffbd6129,0xffc68141,0xffcb6f4c,0xffe1207c,0xffe1a1d0,0xffd61c39,0xffdafc6e,0xffbe38d8,0xffc9e54d,0xffc808b7,0xffca79f7,0xffcd73e2,0xffcf7e03,
-0xffcf58cb,0xffd10e06,0xffd25b5c,0xffd476f4,0xffd6b54f,0xffd8f177,0xffdcd989,0xffda6ec8,0xffd9e66a,0xffd8ee26,0xffd77e52,0xffd8b06b,0xffd0b753,0xffe410c8,0x0000000d,0x0029109c,0xffd4005a,0xfff9cbac,0x00289591,0x00267a78,0x0020e00f,0x0017b6c6,0x001873c6,0x001569f9,0x000e1e94,
-0xffee6377,0xffc76e82,0x001ad7f4,0xfffa60dc,0xffc05fd7,0x0026ed9e,0xffec1fb2,0x003aed26,0x00222dcf,0x002567db,0x001f27da,0x001fb163,0x00216301,0x00248b73,0x002b0f7c,0x002cedc2,0x0028dd2e,0x002af361,0x002b87a5,0x00315bf4,0x002b6b0e,0x00288a0e,0x0023c464,0x002341c7,0x001cb3fb,
-0x00332059,0xffe4c7f1,0xffbb88ce,0xff9e876c,0x00006bcb,0xffc5efee,0xffa524f9,0xffa39df2,0xffa2d012,0xffa96616,0xff9e081a,0xff9d71d5,0xffa84396,0xffc3f35b,0x0007480b,0xffaab929,0xffbb1e69,0xffc17d51,0x00331682,0x003a840e,0x002f541e,0x00223ee0,0x0019f648,0x0019cf91,0x0022d0a4,
-0x00333d42,0x0038fc38,0x00314920,0x003ca801,0x00469c4e,0x0055be41,0x0045113a,0x0035e687,0x0024a263,0x0017c594,0x00182e90,0x000c14bc,0xffacb077,0xfffb2c11,0xfff2dac8,0x00029dcb,0xfffea698,0x0005ad13,0x00131ecc,0x000c6a22,0xffefd6a1,0x0008a6ac,0x00156e07,0x00110b6b,0x000c5d9f,
-0xfff448f7,0xfffeb0a2,0x002514d9,0xfff548ed,0x001d835b,0x00446ced,0x002a44fb,0x001bf58c,0x000c36c6,0x001189aa,0x0024850d,0x004b3986,0x005748e7,0x00402a66,0x004dd633,0x00521075,0x0070a524,0x00518e28,0x003cc544,0x0022bb68,0x00125db0,0x0018ab4f,0xffef08b7,0xffceeba4,0xffe91385,
-0xfff1b8b4,0x0018d271,0x00025a58,0x000eb844,0x0001dcc8,0x001f0f80,0xffea397e,0xfffcc29f,0xffe6e3ef,0x001368e6,0xfff7fd1f,0x0004b68c,0x00096110,0x0010fc4b,0x00133ee7,0x003fcd9a,0x006ec2e7,0x00504166,0x003345c7,0x000d48a4,0xfffeca04,0x00108837,0x0049a0ce,0x005bd7af,0x00420548,
-0x00684bcc,0x0097b893,0x00ca315e,0x008cac8b,0x0051b86e,0x0017a09a,0xfff02d0d,0xffecc0b9,0xffced953,0xffab8aa9,0xfff010be,0xffd1c863,0x002200b7,0x002dc371,0x002c4b36,0x002b1add,0x001f59b7,0x003cc4ea,0x0037401b,0x0037b227,0x0046d233,0x0021cb61,0x00105229,0x002adaaf,0x0037026f,
-0xff848663,0xffd4694c,0xfff57126,0xffdf87eb,0xffd64ecf,0xffe2c432,0x0011d810,0x00965c4b,0x009195c4,0x00a6075d,0x00defd1f,0x005d7bc4,0xfffda844,0xffd12678,0xffecc49f,0x001ee790,0x0072f032,0x007a8c6d,0x008f9ed2,0x003c816a,0xfffc8aa2,0x003c9aba,0x00343f8c,0x000f0d83,0x00029a01,
-0xffeff4b1,0x004bdd2c,0x005192b4,0xfffe070c,0xffeb178b,0xffbcede3,0xffb0f6ce,0xfff8e7fc,0x0018957e,0x00225694,0xffc0b413,0x00127f0e,0x0073257a,0x009ee582,0x00640689,0x003b1d1f,0x00857af9,0x007efa2f,0x002c6469,0x0001d689,0xffe62c93,0xffe5ac01,0x0046964f,0x006d5d41,0x003bcf6a,
-0x0017d601,0x0009e21f,0x002651f6,0x000bf564,0x0015bf29,0xffd65837,0xffdd79b3,0xffeb81d8,0xffed88ba,0x0003d144,0x000fedb6,0x001740b9,0xffeb621d,0xffcdd504,0xffd5f5c2,0x001bad06,0x0035ed5a,0x00212cf0,0xffd933a3,0xff99f633,0xff6690f3,0xffe167fd,0xffa07783,0xfee0f890,0xff003bc2,
-0xff5e9525,0xffd435aa,0xffbc7c49,0xffd16975,0xffe9d339,0x00e83f2a,0x010b144c,0x006d9e35,0x0078767d,0x00639a27,0x005c5809,0x006a0598,0x005d529f,0x00399ea8,0x00350fa2,0x003b8c24,0x0002cd7b,0x00009bec,0x00124177,0x000f2662,0xffffdca5,0xfff046a2,0xfff1a88b,0xfffb630b,0x000befab,
-0x001190c7,0xfff1dee5,0xffd4ae05,0xffb69fb3,0x00075183,0x002460f5,0xffc8b7bc,0xffedbc46,0x004af327,0x008624dc,0x00a3d8c9,0x0082f2ad,0x009f9a4e,0x00734a0f,0x0052323e,0x00283195,0xffe31909,0xffdc9cd2,0x001a75f9,0x003745a8,0x0047290d,0x00504d7a,0x0037ce4b,0x00269ab8,0x000b239c,
-0xfffd23e7,0xfff348eb,0xffd6744b,0xffba13f2,0xffcd7aa9,0xffdc26a3,0xfff305d7,0x00012fbb,0xfffa12ec,0x0002b394,0xfff98eef,0xffed6319,0xfffc4a79,0x000839e7,0x0014cffc,0xfffd6c40,0x0015c031,0x003d03d2,0x003b61d0,0xff8835d8,0xff8902dd,0xffc60ce6,0xffd57dcf,0x00168cf2,0x0068bc8b,
-0x0098d3b5,0x0095cb61,0x0096d983,0x00919363,0x0095c8b1,0x0073e70f,0x005efa9a,0x004ca4f1,0x002e35b3,0x001ba15c,0x0012a073,0x000698cc,0x00030ddd,0xfff78ccc,0xffd2031b,0xffd7a781,0xffce5563,0xffccd2d3,0xffe3a27c,0x00085bbd,0x000bc959,0x00170dc5,0x000ca801,0x00219410,0x001c6864,
-0x00167949,0x0016dd9e,0x000dea3c,0xfff3af26,0xffe33351,0xfff3e0eb,0x00336746,0x007fff00,0x007bbecc,0x0086b352,0x006ed2fd,0x006155ae,0x005b2e0c,0x00322972,0x0016f277,0x0006a7d9,0x000673eb,0x0006f144,0x000b6c99,0x0018871f,0x001cb894,0x0018b388,0x00144a4a,0x00016997,0xffdb7912,
-0xffd81e7e,0xffd984eb,0xffd9df7e,0xffdea6eb,0xffdd9cce,0xffd8dc03,0xffec5cbd,0xffff4607,0x0021b747,0x002fc198,0x003b7b98,0x003f92b3,0x00469d59,0x004a8029,0x0038129e,0x00378188,0xffb72efd,0xffd1d941,0xffefaf62,0xfff6c8c3,0x00139b59,0x0018038a,0x001d09b1,0x002191c7,0x0018e0a4,
-0x0015a499,0x000d2638,0x000dd5ab,0x000d086d,0x000a5e33,0x00091697,0x0008fa21,0x000db60e,0xffff081f,0xfffd2aa9,0xffe6a812,0xffd45c56,0xffd74747,0xffd7f1c2,0xffd9da31,0xffd4ca9f,0xffd6cd4f,0xffd010b8,0xffdd993f,0xffc877aa,0xffcfd679,0xffbf583b,0xffc2c322,0xffb5ff14,0xffa3b650,
-0xff90b52b,0xffaeefad,0xffc7453e,0xfff37542,0x00001b14,0x00085126,0x00110071,0x001a4e61,0x00267bbe,0x003421c4,0x00312cea,0x002e18be,0x002a5a44,0x0023e633,0x001bfe8e,0x00137dee,0x000fbae7,0x000a845d,0x00068440,0x00025e29,0xffff27e9,0x00006728,0xffe8d65c,0xfff8595b,0xfff016f2,
-0xffe53481,0xffdc5dc0,0xffdfe5fa,0xffe17ac0,0xffdad1da,0xffce2d74,0xffd9986f,0xffd9fba4,0xffcdcbb0,0xffd80cf0,0xffd62fc5,0xffdc7f15,0xffedcc13,0xffd51308,0xfff6ca09,0xfff1f25f,0xfff89301,0xfffdd937,0x0003c4e6,0x00087f2f,0x000fa0e9,0x000aea83,0x0008dc79,0x0006ddf9,0x00053b95,
-0x0004419c,0x0002b838,0x0001b1ac,0x000071b1,0xfffed79c,0xfffea300,0xfffba8dd,0x0001834d,0xffe356ff,0xffc77177,0xffb338b3,0xffe3fc97,0xffbfd38d,0xffa7979f,0xffa5bbb0,0xffa67a5e,0xffaaa980,0xffa4bfac,0xffa4b85a,0xffa42f80,0xffb6d062,0xffd99027,0xffac7245,0xffb916e8,0xfff567e8,
-0xfff24fb0,0x002ebecd,0xffde10ce,0xfff70224,0xfff58266,0xfff743d6,0xfff2a3b0,0xfff0f0d0,0xffed18c6,0xfff53963,0xfff6818e,0xfff0b593,0xfff5d04a,0xfff7c4c0,0xfffeec0d,0xfff628f6,0xfff26416,0xffed6453,0xffed8fe8,0xffef5a33,0xffdcf5d7,0x0029dd16,0x00439382,0x00369f82,0x0023b99d,
-0x00485dbb,0x0038a851,0x004065dd,0x003f767f,0x003137c0,0x003dec90,0x00404610,0x00456c4c,0x00417af4,0x00183b8b,0x003edf25,0x004e6c2b,0x0052597a,0xfffc7e5d,0x0000d5a2,0x000c4a17,0x0009fca5,0xfffe2a7b,0xfff7417c,0xffebce87,0xfffa9043,0xfffabfcf,0xffeeae6d,0xfffcde23,0x00062302,
-0x00173c8a,0x0000f430,0xfff49ede,0xffe412ab,0xffe44c5a,0xffd7096e,0xffe5e91b,0x00252b87,0xfff9e218,0x00116996,0x00181c3b,0x00213d85,0x000b462d,0x00099540,0x000b931f,0x0011a56b,0xfffb8fd2,0xfff31756,0x0016d97e,0x00055590,0x00196d65,0x002e73ff,0x0008a76f,0x0030928b,0xfff76be2,
-0xfff54f49,0x000fb034,0x000b5955,0xfffe3a83,0xfffa1c96,0xffdc9831,0x00095e3a,0x000dd87e,0xffeedb9c,0x000aaa69,0x00130d4b,0x003c60bc,0x000c2d39,0xfff762af,0xffd96151,0xffdaf160,0xffc4b98c,0xffe67d81,0x0006a720,0x0001c617,0x00079e18,0x001f0fee,0x002df698,0x00055257,0x00240d4c,
-0xfff3d1b4,0x0004855e,0xffdfbbc6,0xffffb45d,0x00164a4e,0x0005cd4c,0x00135309,0x0038ba7a,0x001d2508,0x004ac916,0x000eca6b,0x00260b9d,0x004c198f,0x00435b3b,0x002fe06b,0x001947df,0xffdeceb2,0x0014f087,0x000fc723,0xffe1905f,0x0016aea8,0x00490f4a,0x0084bea0,0x003a8ab1,0x00038196,
-0xffc97fa6,0xffbc0c7a,0xff983a20,0xffb5d833,0xffe22afe,0xffcd11a1,0xfffbe68f,0x0019141d,0x00204fe8,0x00159fea,0x002252b8,0x001fa24f,0x0013f780,0x0027e624,0x001c297c,0x00363506,0x000a4e90,0x00110fa7,0x0031f931,0x002a0261,0xfff8ddc2,0xffb88554,0xff717a7c,0xff7eb03d,0xff843a04,
-0xff90a82f,0xffbd86f0,0x002c3b57,0x000bbaa3,0x0016e465,0x004a4b4f,0xffcea4d9,0xff7d6896,0xff6efd6e,0xff9a1e18,0xffd26bec,0xffe608f1,0x0022d6e9,0x002f3afb,0x00502b66,0x0059e8aa,0x00244d8c,0x0039506b,0x0003fdd7,0x0005944a,0xfffa0832,0x003f4b38,0x00468504,0xfffd4ae5,0xffee2159,
-0xffc26fff,0xffc226e6,0x00025004,0x0037da9d,0x003f30eb,0x000a22f6,0x005836e1,0x003ee737,0x002b6b7c,0x00323985,0x001c18a3,0x009ee4f7,0x00b34e67,0x005641f4,0x000ac8da,0xffd116d8,0xffc5ed02,0x0040256c,0x00771b1c,0x00534fbd,0xfffacddb,0xffd370ab,0xffdbd2f5,0xffec7f6f,0xffdfe4fb,
-0xffe452bf,0x0007bdd1,0xfffae9ba,0xfff87560,0xffec10e0,0xfff64a25,0x00100910,0xffe3743a,0xffcb4b81,0xffda2ef8,0x00144ab1,0x002f1be5,0x000a2f7e,0xffd0ed09,0xff80dd66,0xff7903c8,0xffd9251b,0xffa59044,0xfe9d4280,0xfef96dc2,0xff65d68e,0xffb53d8f,0xff9cac92,0xff82ba47,0xff52feba,
-0x00392f3d,0x006ae286,0xffe5c22f,0xffd7b7d4,0xffc35979,0xffd2e706,0xffec412a,0x000b6e76,0x00194c2a,0x0020144c,0xfffa49d3,0xfff0c1de,0x00097b3b,0x0001d26f,0x0020116f,0x00029c13,0xffefccc7,0xffecea2f,0xfff9e606,0x0008901c,0x000c911b,0xffebfba0,0xffd4d573,0xffc2c6b9,0x0022f2d1,
-0x002ac7f8,0xffdd9446,0xfff31c42,0x0076e115,0x00c0832d,0x00a61493,0x007e6dad,0x004774ef,0x0030891c,0x001e1acf,0xffe0f5fb,0xfff0c9e3,0xfffc9a3c,0x0030c244,0x0049b6c7,0x00525180,0x00519c4c,0x00289058,0x0007bc7b,0xffd95141,0xffcf70dc,0xffc01a43,0xffcc86cd,0xffe14841,0xffd2a621,
-0xffdcd304,0xfff5a914,0x0002cde5,0xfffd7323,0xfffc2c5d,0xfffb24f4,0xffef1951,0xfffdccd2,0x0002ec84,0x00022d4e,0xffff57a4,0x0008b0de,0x003d4b63,0x003aba20,0xfff0da7e,0xffc5da3b,0xff91141b,0xffadfb7e,0xffcf055d,0x003270f2,0x0058c766,0x0048f898,0x006818f3,0x00732002,0x008dd3f7,
-0x0075631c,0x0061d670,0x0053572b,0x00325cbb,0x001cf107,0x00037a49,0x00074b3d,0xfff116a5,0xffe15d73,0xffea1da7,0xffcb855f,0xffc9e02b,0xffcdf230,0xffe0de96,0x000804d3,0x000a34db,0x000957d6,0x001456fe,0x001d8319,0x0025e78e,0x0029b5cf,0x002020b6,0x001b19d1,0x001798c3,0x0006eaa3,
-0x00722d03,0x0060dd9e,0x005b5f91,0x0065202b,0x0051d0fc,0x002a0e27,0x000d21e8,0x000182bc,0xfffe41b9,0xfff6f75c,0xffee3914,0xffee16cc,0xfff3aaf8,0xfffcf8f3,0x00093902,0x0006a3d1,0xfff3ae6d,0xffecc03e,0xffe254a6,0xffde5a84,0xffde50fe,0xffdf0edb,0xfff5aaa6,0xffe33e60,0xffd9a2d6,
-0xffd860b7,0xffec7044,0x00070958,0x001802a1,0x002e9e40,0x003cb67a,0x003f8ac2,0x004bd704,0x0053a7e3,0x0055499f,0x005805e4,0xffd6ac5f,0xffc5f92d,0xffc50fff,0xffdebadd,0xfff3a8e7,0xfffc1023,0xfffc019d,0xfff5fe1f,0xfff3159c,0xfff2a8cd,0xfff159f8,0xfff27cb6,0xfff2cfe0,0xfff55368,
-0xfff0e301,0xfff0fef9,0xfff1fc2e,0xffe9d7f6,0xffd7fa21,0xffdb4788,0xffea1f12,0xffdd5607,0xffd57564,0xffd3ab98,0xffda2cb1,0xffcf40a4,0xffdc13a8,0xffd0d187,0xffe273ec,0xffd23c2e,0xffd91273,0xffd1daf0,0xffcdac2f,0xffc7b7d9,0xffc6e175,0xffc8b734,0xfffc6717,0xffe2a75f,0xffe614e0,
-0xffeb3011,0xffea9002,0xffec787f,0xfff286f6,0xfffca226,0xfffd4b18,0xfffd03a2,0xfffca948,0xfffc9b3d,0xfffdd5a8,0x00022210,0xfffb8257,0xfff4ee7e,0xffede4ad,0xffe9fe31,0xffe5205e,0xffe0225f,0xfffc69e8,0xffe5683d,0xffea2b0f,0xffe75743,0xffea3c75,0xffe012b9,0xffd6cb85,0xffd8963c,
-0xffdedf59,0xffcd5b4b,0xffc3280f,0xffc7d530,0xffcbb211,0xffdb0c47,0xffe0819b,0xffd76c32,0xfff097c6,0xffc9a2e0,0xffd4105e,0xffd5de11,0xffd9cf93,0xffde86ed,0xffe11e9f,0xffe3b7d5,0xffe15aa5,0xffe147ef,0xffe194ed,0xffe20478,0xffe1f658,0xffe2a508,0xffe057f2,0xffdf819e,0xffde370f,
-0xffdcbdd3,0xffdcfdac,0xffd23edc,0xfff6e553,0x00094002,0x000a0b96,0xffeddb14,0x0007da39,0x0007d3bb,0x00079b0f,0x00038402,0xfffba1f5,0xffff75cf,0xfffe14aa,0xfff7ed8f,0xfff96dcd,0xffe1c4a3,0xfffad9a1,0x00012651,0xffd1925f,0xfffb4e2f,0xffca1e16,0x000633af,0xfffe738b,0xfffd3bcb,
-0xfffcec6b,0xfff2e2db,0xfff135a6,0xfff31c80,0xfffb3bab,0xfffde5f0,0xfff9f385,0xfffdaa88,0xfffed83e,0x00049cbd,0xffff61e1,0xfffcdb1f,0xfff84395,0xfff76f54,0xfff6e2ac,0x0000635c,0xffc6af6a,0xffc5b58d,0xfff50adc,0xffd685ad,0xffc9ddd8,0xffefea98,0xffec5706,0xffe8f1dd,0xffe7a933,
-0xffddb8ea,0xffdd1a5e,0xffe647fb,0xffc3b297,0xffd4fb41,0xfff8f34a,0xffc4dde9,0xffd93e9d,0xfff92889,0x00147e81,0x0009e53c,0x0007eab5,0xffe70df8,0xffdd35cc,0xffe2aa87,0xfff4bf3b,0xfffb6e3b,0xfff2d63f,0x0002271b,0x000dab49,0x001d6695,0x000ee843,0x00002732,0xffee21b4,0xffe3aa16,
-0xffe8dd82,0xffd9e772,0xffc8d861,0xffe74518,0xffe22a4d,0xfff92167,0xfff77ead,0xffe80db9,0xfff4c0da,0xffe4780b,0xffcdd464,0xffdbfebd,0xffec4064,0xfff8d917,0xffeb8641,0xffe784da,0xfff34594,0xfff906a3,0xffd69455,0xfff03c5e,0x001bd411,0x0007b593,0x000d63dc,0xffd1c19c,0xffc11054,
-0xffcb35b9,0xfff60f44,0x00062425,0xfff119a3,0x000629e0,0x000c9f3a,0x002ae3fd,0x00101a80,0xfffd7b4c,0xffe1f3f2,0xffdb166e,0xffe1f217,0xffd075f3,0xffc5378c,0xffe1ddfa,0xfff71a23,0x000cabfe,0x00015097,0xfff917f9,0xfffe9459,0x0002dcd6,0xffcb601b,0xffe10959,0xffd31f3a,0x00010b4b,
-0xffe52274,0xfff0f752,0x000a2ad0,0xffefc91a,0xfff6951c,0x000f7ee3,0x0050784b,0x003dd612,0x003cd022,0xffd7b149,0xffa89499,0xffa8a7fd,0xffe38df6,0xfff58d86,0xffdd04a2,0x000a11d8,0x00392b07,0x006d73e9,0x00392f71,0x00004734,0xffc39be0,0xffaa6cc8,0xffb31519,0xffa65fce,0xffad517b,
-0xffeaf317,0xfff0500c,0x00255cc7,0x002f01e3,0x002229d7,0x0029b0f6,0x001c79b9,0x001350b6,0x0015ef1a,0x001a002b,0x00355d5e,0x0005bd77,0xfff90ad2,0x0035594f,0x0011eeb5,0xff684867,0xff965f4d,0xff993189,0xff8b1a7d,0xff9ca301,0xff8f8940,0xffa74ca3,0x000b8c04,0x0025aae2,0x00568189,
-0x009ac72e,0x003a05bd,0xffe44256,0xffc4dd97,0xffc377fa,0xfff2adab,0x0047b6ff,0x004d80a0,0x005ef8aa,0x00325633,0x00184a3b,0x003723ea,0x002ad0cb,0xfffb79d1,0xfff51a74,0x0000661b,0x0035e78d,0x003c10e8,0x0000d270,0xffec3071,0xffc5203a,0xffbbc31f,0xfffd6bcc,0x000ff769,0x000b80f0,
-0xff9b3d46,0x0027c9df,0x005370a2,0x0089664d,0x00343f50,0xfffefec0,0x005ce5f6,0x006d0182,0x0025443c,0xfffbc0fb,0xffd0a0ad,0xffbee8ff,0x002055ab,0x005771fc,0x004ca782,0xfffb6ca5,0xffc95388,0xffbe5093,0xffc04144,0xffe437bf,0xffd3627f,0xfff35bec,0xfff62593,0xffddfe56,0xfff2912b,
-0xfffaed38,0x000e76ef,0xffe2aba6,0xffce4788,0xffdff443,0x00146f4b,0x00257c22,0x00056329,0xffbadd89,0xff7f1ffb,0xff6a642c,0xfff05c05,0xff79bde0,0xfe6e069c,0xff033d7c,0xff622bb1,0xff524ec1,0xff2d226f,0xff16e22d,0xfef609f6,0x005a8f83,0x00b85951,0x00141357,0xffffe498,0xffd455c9,
-0xffcf8f53,0xfff1c128,0x001371b7,0x00223d69,0x0022870f,0x00232f75,0xffe514c1,0xffe73f70,0x0001e994,0x00094e0b,0xfff32af9,0xffe89555,0xffe884f4,0xffff0e55,0x0010c09e,0x000b2607,0xffe916dc,0xffd335ec,0xffc2ec9b,0x00145b56,0x002ec6e3,0xffb3a274,0xffe6be35,0x007ed9c9,0x00c6aabe,
-0x0074c207,0xfff4e815,0xffa9ef2d,0xffa2b21b,0xffbcb241,0xffe6ac38,0xffb7b073,0xffa8822d,0xffc7dcf0,0xfffc1bcb,0x001a3e59,0x002fd151,0x000ebb2c,0xfff50081,0xffdbd7c7,0xffd1b9e9,0xffd88e34,0xffcc3212,0xffc4043f,0xffceb698,0xffdf935d,0xfff41e14,0x0000a0a1,0xffff0874,0xffff62b2,
-0xfff53d9a,0xfff0bee5,0x0002605a,0x0007c340,0x00107c82,0x0001cdd2,0x000d0f70,0x00324a59,0x004dd65a,0xff96baa0,0xff515fa5,0xff1d1732,0xff2c9fc3,0xff745636,0xffbd9ed4,0xfff4daf9,0x0010c664,0x00311314,0x003cdc38,0x003274cd,0x003080d7,0x002c2e86,0x0028bff3,0x001c705f,0x00122845,
-0x0007e579,0xfffaf771,0xffead615,0xffd0d547,0xffbd4ac4,0xffc22e0f,0xffc72f29,0xffce6365,0xffe34c5c,0x0006fce4,0x0001c41a,0x00073bc7,0x0002f384,0x0015403e,0x00135074,0x0012112d,0x000530f8,0xfffca59a,0xfff8e05f,0xffc1c291,0x00338411,0x00246cb6,0x004a80be,0x004b2996,0x004ff185,
-0x003dc510,0x0030d3d3,0x0019cdb7,0x00194f8a,0x00114c5d,0x0008f34d,0xfff95046,0xffea1db3,0xffe47481,0xffecfe94,0xfff1f370,0xfff63590,0xfff4f44b,0xfff224e9,0xffe2af1a,0xffe09a6d,0xffdf5b93,0xffd7148a,0xffd515e9,0xffd80f7c,0xffdaeff4,0xfff440f8,0x000bdb7e,0x002a0a73,0x0035a708,
-0x003d887f,0x003cadb2,0x004516c7,0x00445e55,0x003ff7b4,0x0034e1a7,0xffac7578,0xffbee295,0xffd7fb51,0xffe06826,0xfff97d2d,0xfff63652,0xfff2bfe3,0xffebecd3,0xffe470cc,0xffe0cff3,0xffdedd2f,0xffe9ad57,0xfff4b19b,0xfffd8028,0xfff9f383,0xfff78e3e,0xfff8dae2,0xffea88b9,0xffe5922c,
-0xffd14673,0xffc6228c,0xffcc0d94,0xffce1b0b,0xffd0ed65,0xffcfc97d,0xffcf9fea,0xffd115cb,0xffd9b0f3,0xffcdcecb,0xffd8998c,0xffd162e7,0xffd615a6,0xffc6cde6,0xffb2cba6,0xffa2b308,0xffafa58c,0xffcfb356,0xffd39012,0xffdedf3b,0xffe026e3,0xffe43e1d,0xffe9643a,0xfff2e74e,0xfffc8935,
-0x000351af,0x0008b05e,0x000b0d41,0x000bd09a,0x000957ee,0x0007275d,0x000115b4,0xfffbc3a9,0xfff7533b,0xfff2fde1,0xfff293c4,0xffecde2d,0xffdd6a0b,0xffe06a98,0xffd3106b,0xffd2f8b5,0xffc97f17,0xffc4d121,0xffc5bf44,0xffbcdef9,0xffb6f678,0xffbbfd75,0xffbe64aa,0xffb870d6,0xffc00ee5,
-0xffc5a99b,0xffc6b19c,0xffd10987,0xffbb86cd,0xffd742d4,0xffd7b46a,0xffdb21f1,0xffdf78b1,0xffe358ac,0xffe5e277,0xffe8b38d,0xffe8a0d7,0xffe94b42,0xffeaa851,0xffeba084,0xffed3504,0xffef59de,0xffed38be,0xffebaf8c,0xffe9e537,0xffe81ee2,0xffe5834e,0xffe8f9be,0xffc9381a,0xffc04b30,
-0xffd50abb,0xffc4e351,0xffb8a9b9,0xffcfca11,0xffcbdf87,0xffca4926,0xffcb3d70,0xffc45fe0,0xffc2863f,0xffbfa9e4,0xffb1e44b,0xffbb115e,0xffceb3a1,0xffb6dfd6,0xffd89411,0x00220d41,0x003a2ccd,0x001b8599,0x001e868d,0x00229ead,0x0020c680,0x002454d5,0x00252c2c,0x002155bb,0x0029aa91,
-0x002a12cb,0x0021e71b,0x0026adaf,0x00286146,0x002f3cae,0x00292b7d,0x0025f52d,0x0020b466,0x001f80a6,0x001a49dd,0x0018e443,0x00358b85,0x00249314,0xffe1e565,0x003f256f,0x002d0da2,0xffe5c919,0xffed341e,0xffec629b,0xffe3c63c,0xffebf169,0xffee9c0c,0xfff88c00,0x0026fd10,0x0039dae4,
-0xffecd3b4,0x00290595,0x001c1860,0x0031d266,0x002a8e12,0x0035b730,0x0030680c,0x00381d84,0x0039a6d7,0x002e4c8b,0x003f782d,0x003cd6fb,0x0029eb22,0x0035c92b,0x003fc89c,0x0053473c,0x00474920,0x003d3dac,0x002b6176,0x00227151,0x0010ac83,0x001784e6,0xfffc64f4,0x00126b39,0x002b2464,
-0x00239aea,0x0023d45d,0x00214ce6,0x0021cdcc,0x0025112e,0x0016abb7,0x00125f59,0x000d4443,0x0021c43c,0x00159b7a,0x0015162a,0x00341666,0x0029a558,0x002db61b,0x001f07ae,0x00255774,0x0038ed77,0x00303e18,0x00450881,0x004fddf6,0x00349fc7,0x00644f4e,0x00636dd2,0x003ae4b1,0x00509ae8,
-0x00570614,0x008000ef,0x00626b20,0x00512e20,0x00312833,0x00225812,0x000d5717,0x0003e4bf,0x000a7169,0x0010c1cc,0x00206a99,0x0030058c,0x002b9236,0x001209e2,0x001a0f8b,0x000264a6,0xfff022ab,0xffdd3ca5,0xffee1db1,0x00180045,0xffff4796,0x00105a5e,0x003b5df0,0x0026cb35,0x0037f470,
-0x0032af6e,0x00464a1f,0x00631b77,0x0057a120,0x00746734,0x007a0d00,0x0048d7d0,0x0081fa94,0x0076be1d,0x00375e42,0x005fceb4,0x0091fbe9,0x00d8891d,0x00b5aad7,0x00871247,0x004584b0,0x001b5581,0xffe87a93,0xffd7c434,0xffd6acc9,0xffee4ac9,0x0014cdbc,0x0033a5ca,0x00307c47,0x00181fed,
-0x00282ddf,0x0016f9c2,0xfff27ebd,0x0007dce2,0x00056090,0x0025915e,0xfffa83e1,0x00092713,0x004453dd,0x00351a6d,0xffe05305,0xfff9d740,0xffcc4474,0xffdb2804,0xffe8dd8f,0x0000184e,0x002800c9,0x008dac8c,0x0076da43,0x00830528,0x00ab3eb7,0x003fb858,0xffd86d5b,0xff9943d1,0xffad366a,
-0xffe54458,0x0024b37a,0x006276e5,0x0088e530,0x0091cf79,0x00663937,0x004729d0,0x003bf5cf,0xffff054d,0xfffc2c8d,0x000a84e3,0x002b43c4,0x0031f9cd,0x00010c8d,0xfff8f847,0xffd65e8f,0xffd95d1c,0x0012a5d1,0x0030e741,0x002a2649,0xfff22e4f,0x008348e8,0x00721462,0x0049dd09,0x00249436,
-0xffe4a1d7,0x009d7f9f,0x00c78e66,0x005edb48,0x00276ed2,0xffe0171a,0xffb34246,0x00157b9a,0x005e3e98,0x0085b31b,0x003b3230,0x00277a00,0x004745d7,0x002eefb7,0x001e4892,0x0009016c,0x00116426,0x0009cd68,0xfff5cf6f,0xfff515d8,0xfff803bb,0x000bdb5a,0xffdfa19e,0xffd1a430,0xffe75dde,
-0x0011eb4b,0x00212833,0xfffbecbd,0xffb8659f,0xff8ada9d,0xff988e55,0x00272a3d,0xff6330fc,0xfe6b80f2,0xff37e8bc,0xffd89ffe,0x0045f3e1,0x00491f76,0x0033e1dc,0xffdfbfe8,0x00aa5684,0x00c2237c,0x002cbb8f,0x00466787,0x003ef769,0x00434fbd,0x003c8ab5,0x0033eab6,0x001a4e8d,0x0020abc9,
-0x0013d4e8,0x000d65a5,0x001934f7,0x00132340,0x002021ed,0x0004e8a0,0xfff19806,0xffe782b5,0x00047f2b,0x00140d29,0x000ab5d5,0xffeb09f6,0xffdc14a6,0xffdc16e4,0x0029a27a,0x002e775f,0xffc4458d,0xffd2b74e,0x00a7089d,0x00f8719c,0x00f225ed,0x00d3ef77,0x00e5c1b4,0x00a1da95,0x006d70e9,
-0x00099b3d,0x0000cc1a,0xfff6d309,0x000ee853,0x00427f35,0x005a55f9,0x005eed95,0x00525276,0x0043a6bb,0x00262329,0x000eaf68,0xffeef134,0xffdf14e2,0xffdb30b3,0xffe10d3c,0xffef4d34,0xfffe8e3e,0x00081477,0x0007781b,0xfffb8bf1,0xfffa2465,0xfff661da,0x0005ea96,0x0006ebc1,0x000c9c77,
-0x000b6791,0x001a59f9,0x0030df8d,0x005ae5de,0xffc3294e,0xfff24449,0x000e96ed,0x001fe18d,0x00405e0d,0x0085ca1f,0x00a26f6b,0x00905d15,0x009dd526,0x00a7c070,0x00c1e6b7,0x00a2b0f0,0x008b9bf4,0x007f3fde,0x004630c4,0x00208974,0x00059573,0xfffa1b36,0xffea6568,0xffdfb987,0xffdd1a58,
-0xffd36e1a,0xffc8b18d,0xffd4d807,0xffe7ee40,0x000c004d,0x0003aeb5,0x00033273,0x000f9cc5,0x001b63a2,0x0021b03e,0x00291891,0x00104fbc,0x0009f0c8,0x00052cbf,0x000bebde,0x00522274,0x00807e98,0x008de451,0x00837b84,0x0077b06b,0x005fa03b,0x0052fbdf,0x00594c80,0x002b4c46,0x000bb6a8,
-0xfffab4ea,0x000358d4,0x000b3a4b,0x001074a6,0x001c980a,0x001c13e8,0x0007bf3b,0x0000b22a,0xfff30377,0xffe2307b,0xffe78783,0xffeb95b7,0xfff71e61,0xffea4e69,0xffe10da6,0xffe3b065,0x00001799,0x0019decd,0x0029e5a0,0x003b9fa0,0x00448287,0x00451ccb,0x004be461,0x005ba841,0x005c1f28,
-0x006f2d33,0xffe91e0f,0xffe2d7e2,0xffed6e10,0x0002bee4,0x00192298,0x00204d20,0x002028e6,0x0020ade0,0x0017cd8d,0x001687c7,0x00108c08,0x0009f2a4,0x0001ed50,0xfffb32e9,0xfff612b8,0xfff2a9c2,0xfff0cf1a,0xffee5806,0xffe8e1a0,0xffe9e397,0xffe69831,0xffda75d4,0xffd35701,0xffd48bd3,
-0xffd5554e,0xffd26f31,0xffd6f128,0xffde5981,0xffe58914,0xffe57dff,0xffe99549,0xffeffb61,0xffe847d4,0xffde1d66,0xffd3ae0c,0xffdeaa58,0xffd1ac87,0xffe33cad,0xffe91e60,0xfff232fe,0xfff74235,0x00001ebe,0x000c37e4,0x001a99be,0x0013458d,0x000b2ee1,0x000443d5,0xfffe0619,0xfff9edd7,
-0xfff84735,0xfff3b535,0xffeed944,0xffe93a5b,0xffe5d77a,0xffdefa92,0xffe0c70f,0xffea23bc,0xffe93dee,0xfff0383d,0xffe631bc,0xffe8dd76,0xffebf615,0xffe58a06,0xffe5b9e5,0xffdfdabc,0xffd87c71,0xffcd761c,0xffc7e14d,0xffcc5711,0xffcf8f15,0xffd7da73,0xffda6182,0xfff445ac,0xffe28e76,
-0xffe5fff3,0xffeb933d,0xfff004f8,0xfff4eb3d,0xfff7b872,0xfffd06ba,0xfff84841,0xfff75337,0xfff60879,0xfff4c67b,0xfff2dbd2,0xfff08964,0xffeef972,0xffedd6ca,0xffec5906,0xffeb53f5,0xffe9c683,0xffe3ebe9,0xfffa6d3d,0xfff56363,0xffd3615e,0xfffb9b1c,0xfff696d4,0xffce5178,0xffce75e6,
-0xffcd5094,0xffcb5bbe,0xffcd6c87,0xffcdaf11,0xffcaa3d1,0xffe8f7e4,0xfff18dae,0xffc7f8e5,0xffea459e,0xffec82f4,0xffdc81d0,0xffda4654,0xffd56112,0xffe54b02,0xffe16cdc,0xffe6631a,0xffd76926,0xffd35a8e,0xffd1cd84,0xffdad9e4,0xffdd8daf,0xffd95ac2,0xffde78d8,0xffe02243,0xffe52df2,
-0xffe07bcb,0xffde2e38,0xffda54f1,0xffd8db2c,0xffdcefd5,0xffd321b6,0xffd9e297,0xfffd9585,0x0049e976,0xffd8ca9f,0xfffd14a7,0x003e0e93,0x003cba92,0x00386c60,0x002d9ddd,0x002c8134,0x002d2019,0x00342f87,0xfff3f49e,0xffcdd487,0x0048f3a5,0xffffcda9,0x001436cd,0xffd3f57a,0xfff368c4,
-0xfff2b6ef,0xfffa2d9a,0xffd206e3,0xffc34a56,0xffbf117e,0xffd04176,0xffd4828a,0xffca06c4,0xffd9e94f,0xffe4bac4,0xfff372f8,0xffe8432b,0xffdcf49d,0xffcd306c,0xffc697b1,0xffc70b7b,0xffc0d234,0x00017427,0xffe41064,0xffed6068,0x00000979,0x0002cf8d,0xffe2a523,0xffe73bba,0xffd724c5,
-0xffd0e61a,0xffc80027,0xffd139fd,0xfff2e17d,0xffddf26f,0xfff0ff62,0x000396d7,0xffdfd4a6,0xffe06fa5,0xffd5694b,0xfff35dc4,0xfff6f5c9,0x00086153,0xffc28ad8,0xffa7558d,0xff9ac938,0xffc70341,0xffd58ba2,0xffc102f8,0xffdaf01d,0xffe25d0b,0xfffe9544,0xffe72f02,0xffd7ff1b,0xffbe379b,
-0xffbd1972,0xffb84062,0xffc8926c,0xffda8823,0xffec308b,0x0006af4b,0x000a7539,0x00103c6b,0xffee88dd,0x000547a7,0xffe49f4e,0xffc99fca,0xffc8dbf6,0xffd1ca84,0xfffb1221,0xffe25598,0xffed986d,0x001da502,0xffe6dec5,0xfff8ffed,0xffecfe5e,0x00282c51,0x0035d512,0x004ab00d,0xffdd7f93,
-0xffa4eb30,0xff82b113,0xffb6d55e,0xffbe21ee,0xffa0ce04,0xffccbdaa,0xfff7c435,0x002b3eab,0x00071bb2,0xffd9286f,0xffa25b94,0xff9166c6,0xff8e2d73,0xff990b98,0xffc77a29,0xffe2e2d0,0x0018e9c8,0x0026d943,0x0029ac6d,0x0015cd21,0x00213466,0x0014611b,0xffe7711c,0xfff38d12,0xfff62911,
-0x001e710d,0xffe8c61a,0xffeb04c3,0x003e9552,0xfff8ed2e,0xff8c6116,0xff7fe8fe,0xff5411b1,0xff598c58,0xff7cad45,0xff606c92,0xff67e594,0xffa79571,0xffd2f806,0x0011c4af,0x0050d41b,0x00168ceb,0xffcc75e0,0xffab64a6,0xff9b2d46,0xffc13d3e,0xfffcd1e9,0x001759eb,0x0026e79e,0x00395784,
-0x004a0fcc,0x002a53a8,0x001cadcf,0xffe858b1,0xffec1224,0x0011e295,0x001d12fd,0x00212893,0xffff3cd0,0xfff33395,0xffd861cc,0xffd88f3e,0x0008f481,0x001740cb,0x00070687,0xffa92768,0x005a509a,0x0037e0b3,0x003e97c0,0xfff812f1,0xffca95f4,0x004e1bb8,0x0076dfe0,0x0039a5e0,0x0002f928,
-0xffc097fd,0xff948c88,0xfff741c4,0x003dbf5e,0x005dddcf,0xfff3d32a,0xffae8b61,0xff8ed107,0xffa1b9c4,0xffc49e17,0xffe89abe,0x001241c7,0x000665e6,0xffe14c98,0xffe88569,0xffe92c93,0x000367ac,0xffde2649,0xffd5ff21,0xffe9773f,0x00091b50,0x00130cdb,0xffec997c,0xffa77471,0xff71b707,
-0xff857f2d,0x000cbd4d,0xff3c0c7c,0xfe4b708e,0xff40ce0f,0xffa0e630,0xff2d56a0,0xfeff93e0,0xfecd1a6c,0xfe9f59b4,0xffccc518,0x003d8941,0xffd5a0a7,0xff9edf94,0xff6aa98f,0xff6ff817,0xff95763b,0xffd3854d,0x00080571,0x000f4de9,0x0003f1c2,0xffe28796,0xffec0c85,0xfffb5ca4,0x0009b620,
-0xffeee6ff,0xffe7a64d,0xffe3678c,0x0001a7fd,0x0010fc7c,0x000645cc,0xffe67a33,0xffdabc5a,0xffe1c7ed,0x001a9ff7,0x0022cd53,0xffb9cf2f,0xffadf628,0x00b2c108,0x00eb4d68,0x005049c7,0xffb25f7e,0xff2d81e4,0xff3f5748,0xff730167,0xffb73af7,0xffb125de,0xffa56c39,0xffabacac,0xffe6fb7e,
-0x000a740a,0x001eb0a7,0xfffde1ba,0xffdd86c6,0xffc71f5e,0xffbbbaae,0xffc44a47,0xffcd257f,0xffdc00cb,0xffdad9a2,0xffeb0ba3,0xfff9a0bd,0x00011676,0x00041f17,0xfffa827f,0xfff35544,0xfff6028b,0x00041f2c,0x0004654c,0x0008f1b7,0x000fb4f2,0x000ce807,0x0028a33c,0x00640f89,0xffc689ac,
-0xff6a127b,0xfef48644,0xff075549,0xff34a857,0xff72455b,0xff9ed3cb,0xffc00b26,0xfff63e41,0x00116678,0x0009d587,0x0017d428,0x00195e11,0x001cdafb,0x00141a41,0x000b1564,0xfffbe2b3,0xffeff6eb,0xffd55d7f,0xffb8f889,0xffbddb7c,0xffb7b964,0xffc1fec9,0xffd48928,0xffe51c87,0x0000af10,
-0xfffafb07,0xfff98299,0xfffd8826,0x0006ee67,0x000d4210,0x00150c44,0xfffc2afd,0xfff6664a,0x00034f87,0xffc2dfd1,0x006cba71,0x0029a019,0x001c4549,0x00236b5f,0x001ee012,0x00150011,0x000b6ca5,0xfff3afe0,0x000ad911,0x000e749b,0x000d6a34,0xfff7c2d7,0xffe4468e,0xffd7b8a4,0xffdcb241,
-0xffdd8bec,0xffdb8ea3,0xffdd4a48,0xffe57365,0xffee2c10,0xffeb2e9e,0xffe6c76a,0xffe05f72,0xffd5d11d,0xffd9b976,0xffe3d01c,0xffffb2c8,0x0018f9e8,0x0028ead7,0x00322c3e,0x0034fa1a,0x002fe3c9,0x003a0a02,0x00393a99,0x0041bfb9,0x003403c5,0xffc1ea5c,0xffc0a363,0xffcaee02,0xffd62b52,
-0xffe38a06,0xffddf871,0xffd66d1a,0xffcaf9cd,0xffc9daf1,0xffcad681,0xffd1a504,0xffdcc490,0xffe9909f,0xfff5b76a,0xffee113c,0xffe859ae,0xffe3d4cc,0xffdb1017,0xffd0f0f3,0xffc9471c,0xffcc4806,0xffcceea6,0xffcb813d,0xffcea856,0xffd39161,0xffd052e2,0xffda58e9,0xffdaa2b7,0xffe0c170,
-0xffe83198,0xffeee377,0xfff33544,0xffe6f6e7,0xffd80aef,0xffd06fb0,0xffcade1e,0xffdf0cd2,0xffbe5afa,0xffc3f111,0xffc13fed,0xffc0ecb0,0xffc225dc,0xffc6e77b,0xffcac12c,0xffd528b9,0xffdd5d41,0xffe2fd0e,0xffe97549,0xffedad93,0xfff3cc31,0xffedca0d,0xffea17a5,0xffe6256f,0xffe301e7,
-0xffe3bc9b,0xffdaad7b,0xffdf8276,0xffd2144d,0xffc8c16e,0xffcf7e1b,0xffca585e,0xffbf5024,0xffbc090f,0xffb59094,0xffb7763d,0xffafaaeb,0xffae5f17,0xffaf8c4c,0xffb3051d,0xffbf5e3a,0xffbd8572,0xffbc49a4,0xffbfb828,0xffbf5ff7,0xffc63b51,0xffc64209,0xffc8854d,0xffc9c43a,0xffca0245,
-0xffc918a4,0xffcc8143,0xffcf6893,0xffd2f6a7,0xffd5cb3e,0xffd88a03,0xffdc95f4,0xffd9e98c,0xffd88e91,0xffd70fab,0xffd4793e,0xffd347fd,0xffd06156,0xffc8ff56,0xffd70d22,0xfffedaed,0xffc13dbd,0xffd338c5,0x0000c139,0xfffcb90f,0xfff8c6bb,0xfff4c14e,0xfff13574,0xffee5f6d,0xffe91b76,
-0xffcc48fa,0xffb881a8,0xfff66807,0xffd23dd8,0xffc58fd3,0x00340a60,0x00181dd6,0x003d2b80,0x002d8860,0x0033938b,0x00304a00,0x0034429f,0x0035bbc2,0x0033ed2a,0x003b950d,0x003c409a,0x0034f8dd,0x0038a5f0,0x0039d34a,0x003f1f52,0x003c5176,0x003a2de8,0x0035f3b1,0x00330f37,0x002ac65f,
-0x00388545,0x0014c975,0xffed9001,0xffb3492b,0x002a2abc,0xfff61d17,0xffb3f05e,0xffb63927,0xffb48f44,0xffb38425,0xffb1098a,0xffb2c90e,0xffbfdd0f,0xfff0f9a4,0x002a93b2,0xffbc92fa,0xffeb0237,0xffdd57ec,0x003fc205,0x003d25fc,0x0040a526,0x003c1dfb,0x0042a554,0x0045f0a3,0x0040cfec,
-0x0051f252,0x00508013,0x003e3ae7,0x0047a8dd,0x0051d8b7,0x0063ddbb,0x0061f76e,0x0059f1be,0x0049ddb8,0x00387059,0x002b8449,0x00246738,0xffd1477f,0x0014eb44,0x0023603f,0x001c056c,0x0014b7b4,0x001abcbd,0x001f1f70,0x001bb73b,0xffff3f05,0x000b5776,0x001059cc,0x0018436f,0x000f5db5,
-0x0000793a,0x001fe0b3,0x002bba2b,0x00089717,0x00287ddf,0x00425874,0x0043bc4d,0x003f157c,0x004d8919,0x0057589e,0x004b770b,0x00761ce0,0x007837c9,0x00561150,0x0063d58d,0x006839b3,0x0087cbc1,0x007ef2f0,0x00724e83,0x005756ab,0x003c45f1,0x00317999,0x0007bbfb,0xfff5d99a,0x000b1574,
-0x0023f2bd,0x002bb9ed,0x001812e7,0x000fa91d,0x000342ea,0x0006910a,0xffd48f89,0xffd9413b,0xffd4e73e,0x000f0b4c,0xffefaeb4,0x00001626,0x0029ece6,0x00153d1e,0x000aea7c,0x003b4bdf,0x005abcef,0x0061969b,0x005cf16a,0x006c16c6,0x00737ffd,0x005cd396,0x008ecaf2,0x00893608,0x00532594,
-0x006a58be,0x009671d6,0x00d93c04,0x00da049c,0x00b675f5,0x007aafa7,0x003db58e,0x0014492c,0xffe48387,0xffc65bd9,0x0008dee5,0x0022cb09,0x0041ba1d,0x0038f6ed,0x001d2fbe,0x0025d447,0x000aa49f,0xffdcbc62,0xffe746d1,0xffef3b24,0x0015e578,0xffe9e118,0xfff70513,0x004ab7ee,0x0026f83f,
-0xffa57fab,0x0005610d,0xffff625f,0x0007001f,0x00197284,0x0023b38d,0x0039d0c3,0x008575a3,0x00998469,0x00bda8fd,0x00e2f774,0x00a8ccaf,0x003f42d6,0xffd53489,0xffc9b7cd,0xfff067dc,0x004ce0e1,0x0076aca8,0x00a7922b,0x0092b21d,0x004f7612,0x00510201,0x00274075,0xffefefe9,0xffec674a,
-0x001820df,0x00163930,0x001832a8,0xffff518e,0xfffe2ba8,0xffea1100,0xfff17f4f,0x001d9774,0x001f95b9,0x00083671,0xffc0c18d,0x008c76f0,0x0083ff0a,0x005b77f4,0x000928a3,0xffb4dd7f,0x0071b049,0x00a49407,0x005162af,0x002db545,0xffe2df8f,0xff99d425,0xffe57ae7,0x00345a21,0x0089ca13,
-0x00572718,0x0048182e,0x00656519,0x0034c823,0x00331fe6,0x001b27bf,0x0012a7e8,0x00123129,0xfff0ddd0,0x000020b4,0xfffa2da6,0x0003738f,0xffe04dc8,0xffdd7dc6,0xfff09da4,0x000b5b88,0x000e76bd,0xffece102,0xffa15053,0xff90cc6a,0xffb0a81b,0x005dee22,0xff0c5c22,0xfe6b1416,0xff86700f,
-0x002931c6,0x00505db5,0x005f5730,0x005215ff,0x000ee211,0x00af2321,0x00cce38e,0x00679b9f,0x00736a6e,0x00630bc7,0x005cc3a2,0x004b0241,0x00366939,0x0015c71a,0x001c3290,0x002be68b,0x001e1063,0x0019bfb2,0x001bdca3,0x001192a7,0xfffd742d,0xfff0d936,0xffe41af9,0x0009be9e,0x0016d943,
-0x00070f56,0xffeca67a,0xffe5ff9e,0xfff72431,0x0016ee56,0x001a76e4,0xffbb8e40,0xff88774f,0x00c387a0,0x00f176ba,0x00d1106d,0x00a10610,0x00c92259,0x00841eb0,0x0056dab7,0x0016f682,0xfff13e04,0xffd875c2,0xffdd13a3,0x001a6b42,0x003f11c0,0x004b75cf,0x0051ff73,0x004e27de,0x00476eec,
-0x00286d41,0x000bdaef,0xffec87b1,0xffd5ccf4,0xffee060f,0xffffd7a5,0x0004b7d8,0x00088067,0x000b4be3,0xfffc15e5,0xfff6d59c,0xfffa908e,0x000675a7,0x00079b45,0x00170d80,0x001cd7b8,0x0029a33b,0x0028b166,0x007b7ca4,0xff992e6c,0xffe34bc5,0x00253930,0x002bdfae,0x004a3170,0x006fcbd1,
-0x0086f8be,0x008427f6,0x008dabeb,0x009a1767,0x00a495a3,0x008f95c6,0x007cdb0c,0x00738958,0x003e1f2c,0x001890f5,0x0004c878,0xffe986ca,0xffdee0df,0xffd73745,0xffc6ef97,0xffd254db,0xffc6a1ce,0xffdc594a,0xffee49ec,0x00065163,0xfffc1ba1,0xfffd72e9,0x0000dcfb,0x000dd21a,0x0012729a,
-0x001ca9a9,0xfffc526a,0xfff5899a,0xffeebb3d,0xffef9824,0x00247c8b,0x006522f3,0x008111e8,0x0070ae83,0x00768efb,0x0075390b,0x007bbe12,0x008a22cd,0x00503835,0x0028d890,0x00160cf1,0x001a7401,0x001a5b75,0x0013aa7e,0x001b69dd,0x001b6dd7,0x000c9725,0x000a53ae,0x0000551f,0xffeb56df,
-0xffee94d4,0xfff079f6,0xffeaa1a9,0xffe8b99a,0xffe7dd8e,0xfff096c7,0x001081a6,0x00254c37,0x00331e95,0x003a21ce,0x003acbcb,0x0038748e,0x003b780d,0x00491f9f,0x0047525f,0x005867c4,0xffedda8d,0xfff6dbbf,0x000c3853,0x0013ebf3,0x00237bd4,0x002457fa,0x002390de,0x002854b5,0x00204d9f,
-0x00213a09,0x001d9613,0x001549c6,0x000c71f5,0x000398af,0xfffc8472,0xfff4e81c,0xffef989f,0xffeedb86,0xfff322fd,0xffec70c0,0xffda9a16,0xffd61090,0xffd2a71a,0xffd77f61,0xffd467e0,0xffd91da2,0xffd758eb,0xffedeb1d,0xffe8d101,0xfffb772f,0xfffbd4e3,0x000d4879,0x0001534f,0xfff23fa3,
-0xffe0ca8d,0xffef37d9,0xffb0b73c,0xffdb7bfd,0xffe2d19e,0xffead98f,0xfff3b259,0xffff5ac8,0x000c209d,0x0017c677,0x00101897,0x00077d29,0x00004cb6,0xfff9ecdc,0xfff4b2e9,0xfff07f1b,0xffee61fc,0xffec4f0d,0xffe96f11,0xffe6f211,0xffe1f0aa,0xffe61dd2,0xffd94dc4,0xffe91e9b,0xffea600f,
-0xffdfecb8,0xffde0edc,0xffe75780,0xffe5f221,0xffe1cb23,0xffd36b15,0xffd782d0,0xffd15f63,0xffc467a9,0xffc9b325,0xffc4075f,0xffca3ddb,0xffd7da61,0xffe39108,0xfff1e67a,0xffee8e51,0xfff4f283,0xfff83c4f,0xfffb4f28,0xfffd735c,0x0002e3af,0xffff8d19,0xffff33b7,0xfffe1a7e,0xfffce7fb,
-0xfffb3a74,0xfff8c3db,0xfff7a69b,0xfff64636,0xfff4cb7f,0xfff3e8db,0xfff0e420,0xfff20bf4,0xffeafcc5,0xffd5739b,0xffb12ece,0xfff1b930,0xffd5da6b,0xffab4e43,0xffaa417f,0xffab17c2,0xffae954e,0xffac3f34,0xffacece4,0xffac9bdc,0xffcd78f9,0xffeb6f70,0xffab0622,0xffca1760,0xfff8e775,
-0xffe38528,0x0009f80a,0xffd0db0b,0xffeb5540,0xffe8eec0,0xffef330b,0xffe418b6,0xffe03b1e,0xffdb8fbf,0xffe3c184,0xffe59128,0xffe101ef,0xffe62610,0xffe7fd22,0xffec7444,0xffe8a32c,0xffe68fc7,0xffe397e5,0xffe0e25d,0xffe45033,0xffd0d03a,0x000a64e8,0x003228a6,0x005bc740,0x00012625,
-0x00312a33,0x0050e22e,0x00539f08,0x0050366d,0x00416081,0x0048ae51,0x004af671,0x0051ae54,0x0027e62d,0xfff2829e,0x005b9b2e,0x0036bca6,0x003d620b,0xffdf1a0d,0xfff1f354,0xfffce575,0x000719ce,0xffed77cb,0xffe1ed3b,0xffd4ae81,0xffe26141,0xffe22703,0xffd5c2ed,0xffe1faf8,0xffeb3924,
-0xfff962b3,0xfff3db47,0xffed618c,0xffe0e7f4,0xffda3ed9,0xffd008f9,0xffd4378c,0x00285ceb,0xfff625a1,0x000da249,0x00127732,0x0016587a,0xfff6cf80,0xfff2b9c8,0xffea3150,0xffeeb04b,0xffd63eb8,0xffd511ce,0xffff5147,0xffe96b9e,0x0004a040,0x00202892,0xffea947f,0x000390a8,0xffe0a18d,
-0xffec8e88,0x0006d1ea,0x00178a19,0xffeef094,0xffda79e8,0xffba119a,0xffe0d553,0xffe8aa9a,0xffd47287,0xffeb73a4,0xfff2c612,0x000da52a,0xfffc8dd3,0xfff174f5,0xffdb2bd9,0xffd42980,0xffc08aca,0xffdd0a86,0xfffe1de2,0x0002c815,0x001af42f,0x00147c39,0x0021d28b,0xfff2e2d1,0x000b9861,
-0xffd734a2,0xffd91790,0xffbe5fe4,0xffd97da3,0x0000ae06,0xffeae84d,0xfff6c5f7,0x00336655,0xfff75194,0x000cee05,0xffee6550,0x00148731,0x003f33f7,0x005a2985,0x001fcede,0xfffab662,0xffbea780,0xffe3fcc9,0xffdc8326,0xffb888e7,0xffd7967c,0xfffe8ebb,0x0033eae1,0x0028abd6,0x000a766f,
-0xffdca9cf,0xffc20132,0xffa24a08,0xffb1959f,0xffe79d94,0xffe87304,0x00390dc4,0x002cd0e9,0x0026182e,0x000dfed0,0x0016190b,0x0006947b,0xffc7ddca,0xffd6761f,0xffd76e43,0x0008b434,0xffd3cbc2,0xffe76131,0x004383e7,0xfff8eb92,0xffcabb7e,0xffa6ca18,0xff62a8cb,0xff790fd4,0xff96f38b,
-0xff80f1c9,0xff823f4b,0xffa3d88c,0xffd15a6b,0x000ec2b6,0x003bfd8b,0x002c78f9,0xffe5f368,0xff9f33a6,0xff91484e,0xffa9e790,0xffc8b8b1,0xfffd6972,0x00139499,0x005176f7,0x006b9e58,0x001fbcf7,0x000de66b,0xffd9a3ac,0xffe59309,0x001f3acb,0x0008b7fb,0x00072fbc,0xfff92935,0xfff98d28,
-0xffef4729,0x00006770,0x001cf672,0x00265f7e,0x000a9df0,0xffd0a02e,0x009439af,0x0030ca7a,0xfff9b2bc,0xffced891,0xffa08883,0x004aff95,0x008655c0,0x0054a7de,0x00197e38,0xffc21c27,0xff7680f6,0xffd43d12,0x0023d4c9,0x0067f384,0x0012b673,0xffd8c649,0xffbf81af,0xffc7b950,0xffd310f7,
-0x000ddfca,0x0029f131,0x00172a17,0xfff260dc,0xffee28e5,0xffe51239,0xfff8d80d,0xffde43ab,0xffe1eb5e,0xfff1a5b5,0x00008802,0x00014aaa,0xffd78f1f,0xff99871f,0xff767237,0xffb3842f,0x003b6bed,0xfef6b252,0xfe650294,0xff93475f,0x0000782c,0xff848174,0xff779f9e,0xff423b4c,0xfeff6694,
-0xff99f077,0xfff630b5,0xffe7cb22,0xff9f9ba4,0xff706e35,0xff7b9cd1,0xff8e2fa5,0xffc1f72e,0xfff52500,0x000416f1,0xfff7230b,0xfffc8725,0x0008115a,0x00025c34,0x000b240f,0xfff171d2,0xffec1277,0xffe1756c,0x0003d95a,0x000ea822,0x00037fe5,0xffeb1e7e,0xffe8d2d1,0x00029f0a,0x000fc99b,
-0x00071c2f,0xffd8bad0,0xff61df0a,0x00d2bc1d,0x00dc9876,0x0049e41c,0xffdf94db,0xff809a44,0xff7fa122,0xff9a989b,0xffbb4baa,0xffd19a30,0xffca2b55,0xffc4a029,0xfff5c18e,0x00169cd0,0x00218a58,0x000ee444,0xfff4d261,0xffe6be5f,0xffd325a0,0xffcd86b8,0xffdd74f2,0xfff39e41,0xffef7c3e,
-0xfffe0db1,0x00032de4,0x0003ae29,0x000708be,0xfff81ae5,0xfff49813,0xfffa3fcd,0x0001c059,0x00009c05,0x000991e2,0x0023b061,0x001ae2c8,0x002b5611,0x007eaae0,0xffea2437,0xffbdebbd,0xff64e69e,0xff74fc54,0xff7dc96e,0xffa9aba8,0xffc0edaa,0xffd24a77,0x000554d2,0x0025ed31,0x002d38a5,
-0x0036e874,0x00313b75,0x002ee808,0x001cdf40,0x000aa834,0xfff423f0,0xffe55b09,0xffc9ab4f,0xffb85817,0xffc933ba,0xffbbc20e,0xffc16781,0xffddd0df,0xffeb0d86,0xfffac059,0xfff7efbf,0xfff1f5b0,0xfff995c2,0xfffc09dd,0x000aab7d,0x001b7624,0xfffb1c69,0xfff7e966,0x00043af4,0xffdb0d64,
-0x0077b61c,0x003b0383,0x00117ed2,0x001c28b6,0x0017a418,0x0014a7ad,0x00137703,0x000ecfb1,0x001c27ad,0x001a36aa,0x0016b5c5,0x0008a652,0xfffd231f,0xffef5468,0xfff0353a,0xffea2205,0xffdaac61,0xffdcc1c1,0xffe43572,0xfff501a2,0xfff19cf0,0xffec860f,0xffece714,0xffdff80c,0xffe32e46,
-0xfff2011c,0x000d7aad,0x00238720,0x0023c92f,0x0029d871,0x0027f90d,0x00226537,0x002b15bd,0x002ea92a,0x003c9170,0x00384edc,0xffeff17a,0xffdfc72c,0xffde5c3a,0xffe8cda0,0xffe94664,0xffe5bbbc,0xffdf6738,0xffd7e0ad,0xffdb6c33,0xffe1404c,0xffeb8441,0xffecb6e4,0xffefa047,0xfff4af9a,
-0xffea3ed7,0xffe21e94,0xffd92e74,0xffd83780,0xffcd845e,0xffd2ab79,0xffdd49ef,0xffd660a5,0xffd0a679,0xffd403cf,0xffdb9168,0xffd7171c,0xffe62068,0xffe6a200,0xfffb682a,0x0000db9c,0x0011b4d4,0x0018c997,0x0010d68f,0x0008de33,0x0007114e,0xfff889dd,0xffe4261b,0xffc06f84,0xffbfde2c,
-0xffbe51e2,0xffbd3b64,0xffbdc30c,0xffbf4141,0xffbf66ca,0xffc55ddb,0xffc9261f,0xffcd05fb,0xffd3baf0,0xffdafa01,0xffe4cfe7,0xffe098c3,0xffdea9c4,0xffdb4319,0xffd944b2,0xffd83984,0xffd1583a,0xffe56ef4,0xffd21ae5,0xffd1e520,0xffd74ae3,0xffd83310,0xffce25ad,0xffc7e60d,0xffc6135f,
-0xffca7472,0xffbb3463,0xffb4f970,0xffb88793,0xffb952ed,0xffc516b4,0xffc3fec8,0xffbd2cb0,0xffd949f4,0xffc0d01c,0xffc9641b,0xffc84c26,0xffc8944d,0xffc81af6,0xffc74b90,0xffc5968e,0xffc93e74,0xffcc8ade,0xffcfcfbb,0xffd293ac,0xffd4740b,0xffd79c72,0xffd514a0,0xffd403ea,0xffd2ed34,
-0xffd088a9,0xffd04be8,0xffc83ba9,0xffdc7609,0xfff2cd13,0x000bc9f1,0xffd5f7c8,0xfff382a5,0x00100986,0x000de367,0x0009cce7,0x0003dcbd,0x0004f280,0x0002ee80,0xfffde2df,0xffed2d47,0xffd0bd0c,0x000226e3,0xfff062fc,0xffc8b30b,0x001fc002,0xffeb87bc,0x002d38c6,0x001d02bc,0x0020cb70,
-0x00203400,0x001d5837,0x001d0e7a,0x001cc2f7,0x00231352,0x00249e65,0x0020bb12,0x0023270e,0x0023f4e2,0x0027524b,0x00271bf9,0x00260c86,0x0023675f,0x001f24d8,0x001953ba,0x0027ef4c,0xffea55d3,0xffd083da,0xffce22e1,0xfffde20c,0xffd4d0b8,0xffc7adeb,0xffc4bac3,0xffc1d3d3,0xffc3a391,
-0xffb9c8ae,0xffba8064,0xffc70e07,0xffcf90d1,0xfffe3f6d,0xffd217ca,0xffcadeab,0xffc8f75d,0x0020950c,0x002d151f,0x002a8693,0x002c8d68,0x0021ce2c,0x001f7480,0x001ec306,0x002c9e59,0x002e1768,0x0022d292,0x002a4711,0x0033fa60,0x0041afd0,0x0046b1c9,0x0040aa59,0x0033fb26,0x001f9f01,
-0x001a7427,0x000a4191,0xffcaf982,0x000708b1,0x000a8301,0x000c9cbb,0x00036d92,0x0000d899,0x00069a4d,0xfffa7896,0xffe08972,0xffed623f,0xfff9fbd8,0x000255b1,0xfff86ade,0xffed0f6c,0x00065a57,0x001083fe,0xffe2238c,0x00109eb8,0x0038a2ca,0x002fc811,0x00381ff6,0x0023e100,0x001e20b2,
-0x001d12c8,0x003c2bdc,0x00450d9c,0x00356d1a,0x003d2f0b,0x00411964,0x0053cb0f,0x0059a1ca,0x0051a891,0x003e752e,0x002121ca,0x001e72e2,0xfff4f442,0xffe1be73,0xfffdeb8a,0x001970cc,0x00196992,0x000572d1,0xfffe9986,0xffef5eee,0xfff86e24,0xffc27081,0xffcf1f0a,0xffc1f295,0xffffdb83,
-0xffe09e12,0xffed7456,0x0016149b,0xfff7dba1,0xffe377b4,0x00217f5c,0x0050c986,0x004dddbb,0x005bc742,0x0036cd5a,0x0027f950,0x00209727,0x0041de8b,0x00453ec1,0x002b006b,0x00349786,0x0058856e,0x008c1f3a,0x00a2a8eb,0x008a8e28,0x005c9b5f,0x001f5cca,0x0008ad8e,0xffda94ce,0xffc75882,
-0x001380bd,0x002b890c,0x003f5743,0x00350120,0x001c06e6,0x00194974,0xfffc5dc9,0xffd0a337,0xffca8d83,0xffd7c58d,0x00065b56,0xffd79b4e,0xffe1e214,0x0043eaf5,0x0007b6e3,0xff8100c1,0xffe44040,0xfff3b747,0xfff3e876,0x0000cb7e,0xfff513f2,0xfff441fd,0x0016df14,0x005c039a,0x009eb83f,
-0x00c480ed,0x00ca479d,0x0072afd6,0xfff2020d,0xffd3d6c9,0xffe28140,0x00365214,0x004b02fa,0x007281f9,0x005be738,0x002c577d,0x0035f2a1,0x0003f7ec,0xffd913c2,0xffdc4771,0x0021ecd3,0x0004092d,0xfffe4b24,0xfff77f5e,0xfffa7b40,0xfff994e8,0x000c73f3,0x00260a37,0x0013221c,0xffee20ad,
-0xff9ea500,0x00804c1c,0x0063aa80,0x00481fbf,0xffe3a9d1,0xff903496,0x002c3f74,0x0061e279,0x003b5193,0x002539b4,0xffd97191,0xff7e8aef,0xffbbe0d7,0x000777dd,0x0065ed64,0x004d054a,0x00342830,0x003197b2,0x00074fd0,0x00198e90,0x001c9ed0,0x001535a2,0x00171e65,0xffef8873,0x000693b6,
-0xfff8b95b,0xfff7b756,0xffe2cfe1,0xffe98926,0xfff5d558,0x0003d005,0xfffa9d52,0xffd775f9,0xff8d9080,0xff8cef05,0xffc3df7a,0x006cd061,0xfec8d81c,0xfe85c470,0xffbac2a4,0x00389de8,0xfff4e4ce,0x000764b2,0xfff162a8,0xffb80494,0x0035d10e,0x007b4e09,0x00747d9e,0x004648a1,0x001a9081,
-0x001096a5,0x0007bc64,0x0006bd02,0x00037b94,0x000ef913,0x002d1af7,0x001aaff0,0x000e4436,0x001579dc,0xfffcf4dc,0xffef891e,0xffed70ea,0xffe2926d,0x0007c1ad,0x00110c2f,0x000327e4,0xfff016ab,0xffef4c83,0x0009b03e,0xfff56a3e,0xfffaa6f2,0xffd351bd,0xff402ee7,0x00c86038,0x00b0dfda,
-0x005c3c8b,0x001482ad,0x0027cee2,0xfff57026,0xffed61a9,0x00036627,0xffd99b16,0xffbcaf81,0xffb0fd76,0xffe92fcf,0x00132caa,0x0024faa9,0x002e09ed,0x002b98e8,0x0034d381,0x0016c015,0x0009ffa5,0xfff21b8a,0xffdda5bf,0xfff91ac1,0x000ba04f,0x0008771b,0x00056869,0x000769ef,0xfffc5433,
-0xfff472a4,0xfffc64cb,0x000215b5,0x0004f325,0x001ee3f8,0x002c7152,0x002fcbb4,0x002f7a50,0x0094d34f,0xff9599c2,0xffbc486e,0xffe0ca88,0xffde8ecd,0xfff50f04,0x00039db0,0x00196e35,0x002f4d6f,0x00414a47,0x0056788a,0x0052e1f3,0x0051c20c,0x00473b0b,0x003f9968,0x00256fc8,0x000b81c1,
-0xfffc2f26,0xffdb584e,0xffd0b204,0xffc89f88,0xffb515ef,0xffc897d0,0xffc54b5d,0xffe2fcb3,0xfff2b27a,0xfffb9796,0xfff5961a,0xfff6471e,0xffefa35f,0xfffac89d,0x00019853,0x000ec8f4,0xffef5903,0xffe8ef90,0xffe08fb0,0xffc8c68f,0x000e7d2f,0x00266d5e,0x0039fad2,0x0035ac53,0x004c6976,
-0x005d0b52,0x00704c17,0x007d4609,0x005ba490,0x00403dec,0x00321476,0x002ac9aa,0x001f3e90,0x000c7d1c,0x000aa847,0x00075143,0xffff2739,0x000231b7,0x00001ed5,0xfff35548,0xfff05160,0xffed6732,0xffdc77f0,0xffe2f82b,0xffeca70a,0xfffbbcd5,0x0018dec8,0x00273db8,0x002ec620,0x002bf982,
-0x00257dc7,0x0020bc35,0x0022b76f,0x00277cdb,0x0027a7e1,0x002a5801,0xfff25c78,0x00029cdf,0x001905c3,0x00134fd8,0x0016602f,0x000f93b1,0x000d112f,0x00108a5e,0x000db0d8,0x00114a2c,0x0013c1b5,0x000dd5d3,0x0008b032,0x000389cf,0xfffb5fc1,0xfff1f785,0xffea4d41,0xffe8be17,0xffeecc5c,
-0xffe375b3,0xffd0c5fe,0xffd3edac,0xffd3eb33,0xffdb6665,0xffd90014,0xffe07ae3,0xffe0e20f,0xfffc0532,0xfff5e07d,0x0011bf54,0x00133f83,0x00281997,0x0019a6c7,0x00098cf2,0xfff85ffb,0xffff8734,0xffb107b5,0xffd12159,0xffd62d13,0xffd8c11f,0xffe04cbc,0xffe8574c,0xffef5fad,0xfff2a87e,
-0xfff1a828,0xffef30d1,0xffedaa0e,0xffed269d,0xffec5e38,0xffeb2b49,0xffe9e8a2,0xffe97c6b,0xffe882ac,0xffe666df,0xffe4c0f8,0xffe56544,0xffd100ba,0xffe0c361,0xffda7bb9,0xffd6948e,0xffd0b4c7,0xffd5da22,0xffd8a8e6,0xffd1f13a,0xffc53a96,0xffcdea91,0xffceb525,0xffc374f9,0xffc8801f,
-0xffc28d18,0xffc3646a,0xffd2e3bc,0xffce5cb2,0xffecac96,0xffe795a7,0xffeb1ae2,0xffebf5e9,0xffec19c9,0xffecc7f6,0xffef489b,0xfff016e0,0xfff1726b,0xfff220e7,0xfff298cf,0xfff2c6bd,0xfff2f0b5,0xfff195ee,0xfff02941,0xffeed62a,0xffed9a7b,0xffea916d,0xffeef20c,0xffd4b975,0xffc21420,
-0xffb98a18,0xffd92f8d,0xffbffb45,0xffb5940c,0xffb35c07,0xffb43c8f,0xffb9309d,0xffb426f6,0xffb449cb,0xffb53278,0xffbfc447,0xffd86ee2,0xffb81f1f,0xffbb806f,0xffed183a,0x0006c6cb,0x002f9bcb,0xfff74e20,0x00088fd4,0x000a7137,0x000e9f00,0x000bb0e2,0x0009deae,0x000447be,0x000a3970,
-0x000af33c,0x0006f8bd,0x000a590b,0x000bc9c2,0x000f396a,0x000dab6a,0x000c266c,0x0009dfaf,0x0005b212,0x000430b8,0xfff697f5,0x002f1e68,0x003bc34d,0x00287f8d,0x002ae2ab,0x003d26a2,0x002277a4,0x00276fb3,0x0025aa83,0x001af923,0x002336ff,0x00264bee,0x002e8cea,0x00362364,0x00201130,
-0x002bf776,0x003f2481,0x003516b9,0x000afa63,0x000c59cb,0x001c8d34,0x0024d489,0x0021c187,0x001dbc73,0x000d7456,0x0016d4df,0x00136bf3,0x0007fa0c,0x000dcb66,0x00154bdf,0x0021c8ec,0x00251229,0x0022fa0b,0x001913d4,0x000d6cf4,0xfffb0b22,0x0001ae08,0x002519d6,0x0010393e,0x002a7007,
-0x0021c75f,0x002196c8,0x00105873,0x000913ee,0x00081ba9,0x000a9df2,0xfff3d4e2,0xffed5e19,0x000e8ef0,0xffff11a2,0x000fe57f,0x002fd082,0x000a3d05,0x001ec270,0x0004b007,0x0008d2b2,0x00294ed5,0x00343c56,0x0034037c,0x002ea546,0x0009a6a0,0x00255a31,0x0026a5d8,0x00177bcc,0x00237a64,
-0x00292e6e,0x003e60bd,0x003b649b,0x0034f56a,0x0022922b,0x000d1ba1,0xfff29700,0xfffc6ff8,0x0015d8c8,0x0016c15a,0x0027d7a4,0x00209ce0,0x0026a3bc,0xfffc9677,0x0007686b,0xffdca861,0xffe65fc0,0xffc0ef7a,0xffdc07fb,0x0006bee3,0xfff2fa88,0xffffe897,0x0038b676,0x000e13ad,0x0018667d,
-0x000b42ea,0x001d1d70,0x004f50b7,0x006814ad,0x006d7d1e,0x0065f27a,0x00288b6f,0x003cb5b6,0x002d8feb,0x000ce539,0x0017a710,0x00399c97,0x006b53c0,0x007fdb06,0x0071bb14,0x004c0b50,0x001b2690,0xffe48716,0xffdfdfef,0xfffce6b6,0xfffffaeb,0x00458e39,0x00359357,0x00262926,0x000b5208,
-0x000a7740,0xfff51786,0xffbd85f9,0xffbf5ba7,0xffc1f1e4,0xfff6e2be,0xffc8f6e8,0xffe7320a,0x003f8274,0x0006de6a,0xfff62040,0xffef56d4,0xffbedb2c,0xffd693ee,0xffd9687a,0xffd72e7d,0xffd82f63,0xffe4be6f,0x0011c307,0x0044b68b,0x005a83fc,0x006ecc5d,0x0025fc68,0xffab080b,0xffa5d6a0,
-0xffb0dd9d,0xffc4aee5,0x0003805b,0x00219b03,0x005c02f8,0x005dc7e7,0x0013d4d1,0xfffc63ff,0xffcf8fd2,0xffdfb21e,0x002771ef,0xfffbfe9c,0xfff3c50b,0xfff1bd97,0xfffb5797,0x00045fc7,0x002878fa,0x0033767e,0x003170ae,0x000c648a,0xfff0e1db,0x00b03031,0x003a118b,0xffe12caf,0xffc150f5,
-0xff84f648,0x003a79ad,0x007eecd2,0x005cfe62,0x00321262,0xffd34b43,0xff6dc89e,0xffb631f0,0x0005727e,0x00628603,0x00493149,0x003084ca,0x00268aac,0x0011b834,0x00052241,0x0032796a,0x00315ba4,0x0022fa2f,0x0004d982,0x0000882d,0xffeecb36,0xffefe12f,0xffe1ff2b,0xffee1eae,0xfff758ee,
-0xffff50fd,0xfff42dfe,0xffc6d3d8,0xff8c7541,0xff86935c,0xffe20751,0x0068ac5d,0xfec5c292,0xfe9e0f62,0xffcaf677,0x0048a902,0x0020455c,0x0038018a,0x000a2c4a,0xffb32a01,0xffbd3382,0xfff9cc6a,0x003fef09,0xfff7465e,0xffcf0ca7,0xffd52c4d,0xffc96729,0xffd694e3,0xffe97301,0xffff7b49,
-0xfffff7dd,0x001c9f3a,0x002314d3,0x000e0c8c,0x00062a1a,0xfff3a123,0xfff093ab,0xffe3362f,0x0004d1f8,0x000aec4e,0x00024b9d,0xfff308d2,0xfff583a1,0x00164aa1,0xfff653b0,0xffeb8952,0x0001b95d,0xff2a1132,0x00cf7321,0x0098d9d8,0x004dda81,0x003abd7a,0x0049f7b9,0x00114627,0xfffaec62,
-0xffe7e881,0xfffda24c,0xfff3fe96,0xffe71fbf,0x000c17af,0x0028b34d,0x002a9528,0x002f3c50,0x0027d180,0x00256179,0x0008957f,0xfff0ed33,0xfff51648,0x00013d45,0x00053abf,0x001242c1,0x000d58f2,0x00067414,0x00051cbe,0xfff8f749,0xfff73c48,0xfffd3782,0xffffa3a0,0x000097cc,0x0017179d,
-0x00321c1d,0x002cfa2c,0x003d013c,0x00962742,0xffeb9a46,0x00130c3a,0x0012d68c,0x0016466b,0x000482fc,0x001a70d4,0x0020e1a9,0x0020eaaf,0x003a9eb0,0x0057b6d0,0x006edb04,0x00688cc0,0x00580e8e,0x004b8d01,0x002c182b,0x000d6f94,0xfff02719,0xffdc3026,0xffc995a6,0xffc75e96,0xffd0fcbb,
-0xffc8bcdb,0xffc69331,0xffe793cc,0xfff3bcf2,0xfff828aa,0xfff6e0ac,0xfff05b4b,0xfff42b63,0xfff6853b,0x00085b7f,0x001ce04f,0xfffd632e,0xfff9d129,0xfff5a3b0,0xfff06f3f,0x004a9a4b,0x003ec11b,0x001baf89,0x002537a7,0x002c4164,0x0036c46e,0x0043259a,0x0056d8bb,0x0045a1e1,0x0034729d,
-0x002ac851,0x00294b32,0x0027f839,0x001ae452,0x00163934,0x000a110e,0xfff08b91,0xfff0ef67,0xffeeabdc,0xfff445c4,0xfff10088,0xffee2f3d,0xfff290be,0xffecf7b1,0xfff0c5b0,0x00011e72,0x00195e65,0x0027e642,0x001ea6c0,0x0020b153,0x001b78ec,0x00173e6d,0x001c408f,0x00248d3b,0x002f3ccf,
-0x00367325,0x001f0e13,0x0010824a,0x000e8c06,0x001369ec,0x000c4471,0x000a3b71,0x00076e54,0x00083d9a,0x000b522f,0x0012402d,0x0018a99a,0x000bbb15,0xffffa38d,0xfff74f4c,0xffedebb0,0xffe5bc64,0xffdbf6c0,0xffe08eff,0xffdbbd52,0xffe54b84,0xffeb2e0a,0xffe0d239,0xffd95b03,0xffdec7dd,
-0xffe4a2f4,0xffe438b8,0xfff1b535,0xfffce753,0x0013f3b2,0x001bfd04,0x002d33c2,0x00396799,0x00339cbb,0x00301729,0x002db83d,0x0023aad1,0xffdbf8f1,0xffd44366,0xffd082de,0xffd28be9,0xffd4262b,0xffd6b881,0xffd78f91,0xffd6ca41,0xffd4b319,0xffd1204a,0xffd0947c,0xffd32600,0xffd8cbf8,
-0xffe0087f,0xffde3832,0xffdd5b48,0xffdae543,0xffd95993,0xffd5940b,0xffd3ea1b,0xffe4e171,0xffdb434f,0xffe17c39,0xffe01b6a,0xffe3c77b,0xffe0d7b1,0xffdc95af,0xffdeb2e3,0xffdf985c,0xffd4fd14,0xffce25ac,0xffcf2dbb,0xffcfb837,0xffd38165,0xffd4e451,0xffd1d25d,0xfff0eded,0xffd7fafc,
-0xffdc31a9,0xffdc4de2,0xffdb6f2d,0xffda95c8,0xffda1765,0xffda1c08,0xffdb6738,0xffdd43f6,0xffde4b8f,0xffdf68cd,0xffdf4182,0xffdfcb26,0xffde0f27,0xffdd4145,0xffdc7294,0xffdb0f3a,0xffdac240,0xffd350f8,0xffeec966,0xfffa01c0,0xfff284b0,0xffed5f81,0xfffce499,0xfff3b97e,0xfff446b3,
-0xfff2a18a,0xffefc25c,0xfff372a9,0xfff3a0ce,0xfff202bc,0xfffae87e,0xffee630f,0xffec6f46,0xfff8d40c,0xffdb9ef7,0xfffb9984,0xffda664e,0x00006de0,0xffff6ff8,0xffff71d6,0x0003b1ce,0xfff94f0a,0xfff66f5c,0xfff56c1d,0xfffa2177,0xfffc49e5,0xfffc3e6e,0xfffdb06c,0xfffe5961,0xffffca8e,
-0x000133fe,0x0000dc7a,0xffff8d70,0xfffab07c,0xfff9f7ab,0xfffc29f6,0xffdafc19,0xffe2917a,0x0014ce47,0xffe16d33,0xffe1513f,0x000811c0,0x0003c11a,0x00003844,0xffff0d46,0xfff612de,0xfff68f78,0xffff95a2,0xffdb4bcf,0xffdcd54d,0x001335c6,0xffded88a,0xffe84784,0xfff3adca,0x000b11e7,
-0x0009c809,0x0014b76d,0xfffa20c5,0xfff05729,0xffed752f,0xfff5fa2c,0xfff91a7a,0xfff6b4a9,0xfffbecb5,0x0003f05b,0x000bccaf,0x0014a8d5,0x00115b60,0x00087a04,0xfff73d2e,0xfff59623,0xffe71795,0xffed87a9,0xfff9a0b8,0xfff9a307,0x0003c6bb,0xfffdddef,0xffea18fe,0xffed0a33,0xffdd7a15,
-0xffd37941,0xffd1a47e,0xffdd251a,0xffefa0e9,0xffe3c438,0xffe91e37,0xfffae87a,0xfff0547c,0xffd86a2d,0xfff17208,0x0015c263,0x001398cf,0x0029ce74,0xfff7eaf6,0xffe1d7bb,0xffdc185d,0xffee101b,0xfffb04bf,0xfffff32d,0x00046c3c,0x0008af5a,0x000ebf26,0x001c00c7,0x0018328b,0x000bbc8d,
-0xfff3d815,0xfff03091,0xffe142e3,0xffe21857,0xfff88eba,0x000d9e40,0x0008415e,0x0000eec2,0xffea4484,0xffe897f3,0xffdfa892,0xffc3513d,0xffc21f69,0xffbe511e,0xfff1aeb7,0xffdbf5d0,0xffe52814,0x000d39c2,0xffe5c4c1,0xffd9fe47,0xfffd8a2d,0x002e0142,0x00372566,0x005bb110,0x000f67c4,
-0xffe91e57,0xffd88f4f,0xffe58c97,0xffecabf4,0xfff041ca,0xfff1bf37,0x000c9681,0x002af225,0x004bd3fc,0x003ffd77,0x00220bef,0xfff12eb9,0xffe4c554,0xffd0860e,0xffe143af,0x001123d0,0x003294c4,0x003299c6,0x0027c042,0x0010bc4d,0x000517bf,0xffed4328,0xffcae733,0xffb3bcba,0xffbf87fe,
-0xfff3b954,0xffc6b1cc,0xffd3f7fd,0x00320cb2,0xffeb0fe1,0xff9a34ef,0xffc42c3e,0xffd0b6d3,0xffce566e,0xffc83704,0xffaf49a1,0xff9cfdea,0xff95b7ad,0xfff55075,0x00466554,0x00672702,0x009e0e2c,0x00627c8d,0xffe32d7e,0xffc4e926,0xffbf70d3,0xffeb0b71,0xfffa2f37,0x000cbba6,0x000f5acb,
-0x000eb4da,0x0002ab96,0xffe07817,0xffc38e40,0xffd2c719,0x00287ef6,0xfff76fe9,0xffebaffd,0xffeeaaa4,0xfff3bf8e,0x0006d9fe,0x002bca22,0x00316acc,0x00179060,0xffeaff00,0xffacab13,0x0072829b,0x0029d562,0x0011b3c0,0xffbedcaf,0xff7e4d05,0xffee3b53,0x00276d8a,0x002d7cef,0x001deb57,
-0xffd24b47,0xff6e10f3,0xffa05d4b,0xffe33ba7,0x0034c7be,0x00364e23,0x00163e39,0xffed2b10,0xffdb987a,0xfff536c1,0x001e7d92,0x001eba87,0x001b9e02,0xfff76746,0x0008bd27,0xfff53a8e,0xffeaa34c,0xffe5c696,0xfff39d20,0xfff904ea,0x00011516,0xffed5c91,0xffbfee45,0xff7d7f0c,0xff844ae5,
-0xffd9f046,0x00602ae7,0xfeb36860,0xfeb24d1c,0xffc50d5c,0x0018e280,0xffaef063,0xffa9ee53,0xff77b299,0xff433c78,0xff8ccfe0,0xfff86750,0x005eb775,0xfff20518,0xffad255a,0xffa4413d,0xffa92cd4,0xffc4004e,0xffe6b44e,0xfffb79bc,0x0013b500,0x00087a86,0x000243ab,0x00051f82,0xffece046,
-0xffe30b31,0xffe9a5b5,0xffe45027,0x0002aba2,0x00087188,0x0000d70e,0xfff4999a,0xfff57009,0x000f41fc,0xffd8dc12,0xffdfbd99,0xfffda4a8,0xff19f1b0,0x00b381c7,0x0054b40d,0xffea213a,0xffa36cf5,0xff9a7c10,0xff7a7c43,0xff917ce1,0xffe08a0d,0xffcfd90a,0xffbb64e1,0xffa842b3,0xffced1d5,
-0xfff32e82,0x00018de3,0x0006e0ee,0x0003ada5,0x000f1077,0xfff7b578,0xfff866ee,0xfff42925,0xfff42f5a,0x00045cae,0x00138561,0x000babf3,0x0001e202,0xfffeda69,0xfffb7319,0xfff5d302,0xffff1f76,0xffff9529,0x00039bac,0x0023e80e,0x0031dffa,0x002b7356,0x00450252,0x009d747a,0xffbd647c,
-0xffb2423e,0xff9c1681,0xff93bff8,0xff95a921,0xff9b00be,0xffaf8ce7,0xffd37ecc,0xfff1811f,0x001006f0,0x000c1cdf,0x001aeba4,0x00185f56,0x0011eb51,0x000f4858,0x0000a6ed,0xffef4e0a,0xffd46d22,0xffc6867b,0xffbd5007,0xffb33b27,0xffc03eb8,0xffc8d2a9,0xffe9630c,0xfff61fcd,0xfff32e08,
-0xfff2635e,0xffef8e26,0xffe676a9,0xffedc63b,0xfff7f8a4,0x0006759e,0xffef7330,0xffe91361,0xffdf234b,0xffb5e216,0x00125b1b,0xffee411f,0xffe517fa,0xfff401cb,0x00115fca,0x002fe10a,0x004749f7,0x004d9660,0x005240d7,0x004cfbaa,0x00496c96,0x003780da,0x00241243,0x000a8c82,0xffffee0a,
-0xfff6257a,0xffedbffe,0xfff2d78c,0xfff5c1ee,0xfff5c657,0xffed6fd3,0xffe778ff,0xffd8dd4a,0xffe20b24,0xfff1dc6f,0x00047fad,0x0019d572,0x002208bf,0x001eba71,0x001863bb,0x000fc7fe,0x000993f1,0x000d581d,0x000a1722,0x000f2637,0x0001fd85,0x00050ab2,0x000fdaef,0x001cc5c2,0x0012490c,
-0x0009ae46,0xfffd473a,0xfff829b4,0xfff6cbcf,0xfff9ac01,0xfffe62cc,0x0005f621,0x0000b342,0xfffda28b,0xfffb0ecc,0xfff3556c,0xffeb032e,0xffe2b8d9,0xffe0a3aa,0xffe1e77d,0xffda031f,0xffd30cc2,0xffd7e7a7,0xffd82edf,0xffe1bf7b,0xffe4c687,0xffeb9587,0xfff3929f,0x00086a5f,0x000d90e3,
-0x0023d2fb,0x002a55ac,0x0039e4c0,0x002e152b,0x00235de4,0x001a4dab,0x0015437f,0xffce7533,0xffcdde69,0xffcdfc6c,0xffcafd47,0xffcdfdf8,0xffcf64bf,0xffceadcb,0xffc9b922,0xffcf5b82,0xffd3583c,0xffd7fff5,0xffdde1fd,0xffe32461,0xffe77f9e,0xffe617a3,0xffe5f6fc,0xffe5a575,0xffe3cda3,
-0xffe48fea,0xffdfcceb,0xffd40b2c,0xffd71c26,0xffcdcd18,0xffd1122b,0xffca7ba0,0xffc644a9,0xffcac20c,0xffc657a4,0xffc39d36,0xffc8f831,0xffceb6e1,0xffcd1a0d,0xffcfcd1f,0xffcf728c,0xffcba855,0xffd32ebc,0xffc838e6,0xffdd61ba,0xffdb8957,0xffdaccb0,0xffd94037,0xffd72903,0xffd66c2b,
-0xffd54191,0xffd95664,0xffdbd219,0xffddea4b,0xffdff6f5,0xffe1b6d3,0xffe47941,0xffe2dc93,0xffe1cfbf,0xffe0e154,0xffdf5d3c,0xffddbf56,0xffe06564,0xffc9c2cb,0xffc7b43c,0xffdd2828,0xffc7d986,0xffc42894,0xffdca138,0xffdb0ca7,0xffdaf5a1,0xffdd952c,0xffda1ea2,0xffd9c4e7,0xffdabd4f,
-0xffcbc8f6,0xffcd4925,0xffdf6e6f,0xffc92206,0xffd7b149,0x00268399,0x002f01a2,0x0024c07d,0x0022d5f1,0x00282252,0x0029717a,0x002c359e,0x002c42bc,0x0027c331,0x002b266d,0x002b741d,0x0029b448,0x002a87be,0x002b38d3,0x002cfb07,0x002e739c,0x002dc4c4,0x002c0bc5,0x0026e457,0x00209eca,
-0x0021722e,0x002d454f,0x0019991d,0xffe40131,0x003447fa,0x001d0a4a,0xffe13ee3,0xffe4db33,0xffe407d4,0xffe1c2c9,0xffe3852d,0xffe61ac4,0xffef8ea2,0x00190a88,0x003105d5,0xffe983e0,0x00191941,0x0007ef55,0x002f913c,0x0027e7f3,0x0034874b,0x003a4720,0x0044abe3,0x0045f369,0x0038b836,
-0x003e76eb,0x003b57d3,0x003540ba,0x00351c99,0x003b1fef,0x0043f4ec,0x005016db,0x0050b41e,0x0048a609,0x00373399,0x00251a1d,0x0024d301,0x0003fe55,0x001f12db,0x002e807c,0x00225ff9,0x001bf21b,0x00188a15,0x0014ca83,0x0015bf49,0x000e1105,0x0005b7f7,0x0001ff7f,0x000fe768,0x000b0324,
-0x000a24ce,0x0024dcc7,0x0020ef8d,0x001d2991,0x0023966e,0x002c2bc7,0x004130df,0x0048bad0,0x005d4911,0x00619676,0x0045ae00,0x00546f99,0x00546f5e,0x0051fa7f,0x0050faa6,0x005471fa,0x005e82e2,0x006cef80,0x006abd81,0x005ca876,0x003adc01,0x00255050,0x000ff63c,0x0013f802,0x001b0e9a,
-0x0024123c,0x00227abe,0x001a8dd7,0xfffe41f4,0xfff84427,0xffe81722,0xffe3ea7a,0xffc886fe,0xffd4d0a0,0x00020b4a,0xfff38c26,0x00004e27,0x00270c09,0x00165570,0x000da661,0x002607d3,0x002e47cb,0x0052cd76,0x006ab7c6,0x008dd3ca,0x009672bb,0x006b7c7f,0x00715d0a,0x0066bcf5,0x005943c6,
-0x0050bb45,0x006b45f0,0x009020c4,0x00c01529,0x00bec387,0x00a11b8f,0x005f023d,0x0027f6ea,0x00086dc7,0x00030ee7,0x001be79a,0x003cca7a,0x0039e813,0x0026cda8,0x00087ba1,0xfffdc6a3,0xffe4186e,0xffc47f72,0xffae19b2,0xffb4fce5,0xffe6c614,0xffc624e0,0xffe4c70b,0x002e4d8f,0x000e13bc,
-0xffffae65,0x00292301,0x002c85e0,0x003473c8,0x0012c3bc,0x0021f55a,0x00206260,0x001af09d,0x004dfa25,0x00792701,0x007f62d8,0x00adb8a4,0x0068bfa7,0xffcacdf2,0xffc5cafc,0xffc287ee,0xffd9420c,0x000c1a81,0x002afcdb,0x003bb1bd,0x0021eacc,0x0000df52,0xffe57d7d,0xffc88bfe,0xffd9ff0e,
-0x002aba7b,0xfff58ad5,0xffe99006,0xffedd457,0xfff9da94,0x0014cd0a,0x0047c200,0x00463cdf,0x0033fb81,0x000804ce,0xfffd1301,0x009d1fa0,0x003e6b11,0xffed4fe8,0xffc37a41,0xff7d1449,0x000f4457,0x005335bb,0x004cf731,0x00409121,0xffebdf4d,0xff786791,0xff9e5d35,0xffe207cd,0x004497aa,
-0x006f5352,0x0079dd1c,0x0076baf5,0x004a288c,0x0036a3e1,0x0047d4eb,0x002af2e9,0x0025a997,0x000fdd6c,0x00148e05,0xfffd4150,0xffe854a3,0xffe7936f,0xfff8374a,0xfffb2986,0x000347fb,0xffecf296,0xffbab38a,0xff7be63c,0xff959dfc,0x0003643b,0x007ed070,0xfebe6552,0xfee70888,0xffd877e5,
-0x0054ef17,0x009a9a66,0x00b182df,0x00850a86,0x002d59a0,0xffe983b7,0x00154bf1,0x009a7c66,0x00562fd3,0x002ed152,0x00244536,0x0005504e,0xffef0fbd,0xffe12b31,0xfffb1ee9,0x000de783,0x0025ce07,0x0026e6b7,0x00119fd0,0xfff88b3b,0xffef6cd0,0xfff0937f,0xffe82848,0x0003c18d,0x00068b3a,
-0x0000bdfe,0xfff9e548,0xfffb087a,0x0014f7ac,0xffdb164a,0xffdab533,0x0016b300,0xff19b110,0x00a861f7,0x0039eab6,0x0043dc44,0x006fb60e,0x00db9e85,0x007fbe3e,0x0047d488,0x00106e5f,0x00121c10,0x00036e4d,0xfff7f7ce,0x000ecf24,0x0026f636,0x00246430,0x003ffef8,0x004e8eeb,0x0056a35f,
-0x003708c9,0x0018cc89,0x00090e44,0x0004dcff,0x0014d4fb,0x00206a20,0x0013fdf3,0x0006ddc1,0xfffee241,0xfffaae20,0xfffa1fb4,0x00007f7d,0x00006498,0x0004c30f,0x0027d451,0x0032843a,0x0034fa5f,0x00536c44,0x009e5a56,0xffd7d47e,0x00371b4f,0x00838b20,0x007672a8,0x0058179c,0x005a06d6,
-0x005ad54f,0x00559f4d,0x00590ee4,0x006ecae2,0x008974cb,0x007b2540,0x00683f5e,0x005637e5,0x0030b049,0x000c412e,0xffeecfaa,0xffd6684d,0xffcf554c,0xffd5ce12,0xffcecc95,0xffd52d7e,0xffd196f3,0xfff03a87,0xfffc425e,0xfff8a77d,0xfff633f8,0xfff1600d,0xffeea0b3,0xfff4caab,0x0002b799,
-0x00136817,0xfffe4545,0xfff807d8,0xffe148cb,0xfff12282,0x00025ef2,0x00225e06,0x0018fd87,0x00211a26,0x003a0e74,0x005741d4,0x00703f51,0x008ffd34,0x006b66c9,0x00532ad3,0x00488869,0x004c32fd,0x004c8671,0x003d26d2,0x0034fa34,0x0025f868,0x000a35ce,0x0008a968,0xfffbb9d6,0xffee8def,
-0xffeb7ff5,0xffebb2e6,0xffeea165,0xfff64106,0xfffd7462,0x000cec48,0x001ee8d7,0x002403d3,0x0018437e,0x00170a0c,0x00112235,0x000dcf95,0x000f39b5,0x0017a002,0x001a0578,0x0022f31e,0x003b5e7a,0x003acece,0x004054e6,0x003d0bed,0x00343914,0x002fc5e0,0x002f1485,0x0035c431,0x00353f97,
-0x00391ac1,0x00390edf,0x002323d7,0x000dd7a6,0xfffaf122,0xfff475d5,0xffed7412,0xffe59a89,0xffeb1687,0xffee72da,0xfff34325,0xffee397b,0xffe7216a,0xffe1978d,0xffeb5e70,0xffeee1d8,0xfff6780e,0xfffdb736,0x0014e717,0x0022cab5,0x002fb440,0x0038ee21,0x00487826,0x00438eb2,0x00416687,
-0x003bc6e8,0x003c8379,0xffd13aa6,0xffea060d,0xffe73bd2,0xffebcf93,0xfff12e6b,0xfff6201c,0xfff7e25f,0xfff7bfd6,0xfff00616,0xffe7ef4a,0xffe402b3,0xffe1da1f,0xffe33a48,0xffe4810e,0xffe4cf19,0xffe481aa,0xffe35b7d,0xffe1e16f,0xffdd1255,0xffdf7d3a,0xffdee26d,0xffe5406a,0xffea75b8,
-0xffe2a7d8,0xffe39bf6,0xffe76b2a,0xffe949d8,0xffecc6f8,0xffe8f471,0xffeb4721,0xffe9b283,0xffe7b17b,0xffe8c125,0xffe333e6,0xffe5f155,0xffeb119c,0xfff82757,0xfff462c5,0xfff1d857,0xfff39884,0xfff26b49,0xfff20349,0xfff26893,0xfff494a8,0xfff32b3e,0xfff2f00b,0xfff178c9,0xfff0b259,
-0xffeeed94,0xffed116d,0xffec697e,0xffebd468,0xffeb3bd5,0xffeaed14,0xffe9e5d4,0xffe80fb0,0xfff2f3c3,0xffeadc8a,0xffcc8681,0xfff65eda,0xffec7a41,0xffc8aff8,0xffcb743c,0xffcd51f1,0xffd02313,0xffd3494a,0xffd59b24,0xffd87f0c,0xfff22205,0xfffe5f50,0xffce5eb0,0xffebbd3b,0xfff05c75,
-0xffe70f08,0xffef0f2d,0xffdf63aa,0xffee9afd,0xffecacda,0xfff44dd0,0xffe8393b,0xffe40376,0xffe04808,0xffe37367,0xffe57f81,0xffe84706,0xffe8d3de,0xffe978c8,0xffe9a470,0xffeba7c9,0xffeb88a3,0xffead04b,0xffe6265c,0xffe8a670,0xffdceb46,0xfff00319,0x000f30e3,0x0048ddc5,0xffe908ab,
-0x000ade1b,0x003ae94c,0x00398665,0x00366507,0x003031cc,0x002e8152,0x002fc39e,0x0034665b,0x0004e692,0xffdfdb8b,0x0044fd22,0x000fcf7d,0x001a14a4,0xffde2713,0xfff2a85b,0xfff8d3c6,0x000983b8,0xffef20bc,0xffe24177,0xffd786f6,0xffdb255a,0xffdda196,0xffe248f9,0xffe409e0,0xffe9a2aa,
-0xffecfd81,0xfff78a50,0xfff76595,0xfff16ea5,0xffe5ed2e,0xffe15257,0xffdc1359,0x001b1f97,0xfff9bf61,0xfffd6be7,0x000751f5,0x0005ae79,0xffe66bef,0xffe52635,0xffda297e,0xffdfd497,0xffcdca97,0xffd0c739,0xffea62bb,0xffe0fe4c,0xfff517d2,0x0000da5b,0xffe43d75,0xffef6177,0xffe6a507,
-0xfff81e29,0x00071050,0x00232fe6,0xfff32591,0xffd8a5aa,0xffc15deb,0xffc91935,0xffd4820a,0xffe86ee2,0xffe9d813,0xffee71a5,0xffed227e,0xfffb776e,0xfffa841f,0xfff18a59,0xffdfe772,0xffd42e53,0xffe0b26b,0xfff74480,0x00000cb6,0x00086553,0x0002c0f1,0x00098636,0xffde5113,0xffed5aa0,
-0xffcc8096,0xffd12c11,0xffba8999,0xffc9276a,0xffe9417d,0xffe47736,0xffebea07,0x000f0109,0xffeabbc1,0xffec0a94,0xffe90fe1,0x0007c7ec,0x00297abf,0x005c4392,0x0019a8c9,0xffee7a13,0xffc41dd5,0xffc1bb0a,0xffc626be,0xffdd7ac9,0xffd873c0,0xffeb4cfb,0xfffa57e7,0x001f01a8,0x001ebbf2,
-0x000cceb8,0xffe8d62e,0xffd727c7,0xffdb9e40,0x0007558c,0x000c970b,0x00349553,0x0025ab1d,0x0019e4f0,0xfffe1647,0xfff084a3,0xffdfe704,0xffc85457,0xffa563fd,0xffab6414,0xffddd203,0xffbdae38,0xffd389ca,0x0019737c,0xffe072aa,0xffe81986,0xffd08a64,0xffd0d34d,0xffcdbd0d,0xffa96eff,
-0xff9a1a8c,0xff834afa,0xff5dba1f,0xffb3bb8d,0xfff994f9,0x000f344a,0x005c4105,0x0039a673,0xffc42178,0xffb03349,0xff9dedd0,0xff984c2f,0xffb3b21d,0xffb61fea,0xffd49aa6,0xfffa0e1c,0xffd2904c,0xffc7c165,0xffb9396f,0xffd30394,0x002b0040,0xfff166d0,0xffe53d9d,0xffed52b3,0xfff387d7,
-0x00156b4e,0x004b4903,0x00424545,0x002bc1a7,0xfffe0939,0xffe7903e,0x0067c61a,0xfff94062,0xffd3752c,0xffa85d03,0xff7f82c5,0xffca7786,0x0008aaca,0x002f6b34,0x00260879,0xffdcfdf2,0xff72c9e0,0xff933c8d,0xffc9a405,0x000b7d88,0x002b4548,0x00171368,0xffdd2d58,0xffdfe28a,0xffedc5e4,
-0x002bdc06,0x002aacf7,0x001f1aa4,0x00074436,0x000aef4b,0xfff41244,0xffe1711b,0xffe93c2c,0xfffb3bce,0xfffc21c6,0x00018b1e,0xffe6f3d9,0xffae9643,0xff7133cd,0xff82aade,0xfff82c31,0x004d7833,0xfed4a742,0xfefa565e,0xffbcc577,0xfff93cf1,0xffce7a0b,0xffaf02e8,0xff6145e6,0xff1edee4,
-0xff2009a0,0xff907cf0,0x00469dc9,0xffc51b2a,0xff7c21fd,0xff6f6df8,0xff77bdbf,0xff9b83fe,0xffcd44e0,0xffe9a56e,0xfff18310,0xfff4b677,0xfffda7dd,0xfff5d946,0xffe66e25,0xffdd45eb,0xffe7ff4f,0xffe9a86b,0xffff99af,0x000320f3,0x00003a30,0xfffa31bf,0xfff8fa84,0x00084433,0xffcee803,
-0xffd482a7,0x001785a5,0xff1f9dfe,0x008abfbf,0x0004bf93,0xffc06264,0xffa0a441,0xff954183,0xff82e8fd,0xff971e13,0xffcbc6ea,0xffde5636,0xffd651eb,0xffc92c3d,0xffd577d4,0xffec905a,0xfff0c6dd,0xfff95641,0xfffadc16,0xffff465f,0xffefd314,0xfff25347,0xfffbbbd6,0x000ea2f2,0x00103d18,
-0x001a0509,0x000f3996,0x000037fa,0xfff73293,0xfff9f0e5,0xfffa3214,0x0002c198,0x00009935,0x00052f28,0x0022cac1,0x002931b9,0x001fe873,0x00595968,0x00922c37,0xfff54035,0xffdb0ba0,0xffa81b30,0xff9b7966,0xff7fa87c,0xff8275d0,0xff90166e,0xffacc6f2,0xffd11c4f,0xfff2873d,0xfffae998,
-0x000d9d93,0x000e4c85,0x0006b7cf,0x000984cc,0xfffcd7cb,0xffe52ef0,0xffd578b1,0xffc5a591,0xffbdd224,0xffc148f0,0xffc35bab,0xffd43294,0xfff12eca,0xfffa83a0,0xfff1fe95,0xfff34a85,0xffed58de,0xffe9ae8a,0xffec91a2,0xfff7c316,0x0003510c,0xfff952d8,0xfff340e0,0xffe71ceb,0xffc3f4ac,
-0x0017e6d2,0xffd4247e,0xffb0b124,0xffcd3755,0xffe9c598,0x000d1680,0x0021e1ae,0x002661f6,0x004498a2,0x0051467b,0x0057456b,0x004425f4,0x00314e4c,0x0017e411,0x000abcdc,0xfffaaf70,0xffe9c7f0,0xffeb46db,0xffeb2d36,0xfff1310c,0xffe83beb,0xffe3912f,0xffe1e897,0xffea70e6,0xfff9c61d,
-0x000bd9a6,0x00167f55,0x0018cf12,0x000b2f0c,0x0007a7f1,0x0001eb2e,0xfffc2a8d,0x0001204d,0xfffb5720,0x00031292,0xffef9741,0x0025a53f,0x0023ede2,0x0023aebf,0x001c827e,0x000e1e5f,0x00010901,0xfffac8a3,0xfff5eeff,0xfffa883a,0xfffd747a,0x000503ca,0xfffc6bfb,0xfff6bd1a,0xfff1ca32,
-0xffeb333f,0xffe50a0e,0xffdd7dfc,0xffdd4a6d,0xffd98612,0xffda9788,0xffe1448c,0xffe207c7,0xffdfe75b,0xffeb727c,0xfff53e00,0xfffb93b8,0x0009957d,0x0014b88a,0x0026be15,0x002f86e5,0x003a5e0c,0x00417a20,0x003c9eae,0x003b1579,0x003c6a5a,0x002f30fa,0xfff13240,0xffd88c04,0xffd48b03,
-0xffcff0e3,0xffcf2a3e,0xffcbdb3b,0xffc64397,0xffbe0fa7,0xffc421d8,0xffc93c9d,0xffcf59ff,0xffd6c5ff,0xffde962f,0xffe61cc3,0xffe4a38a,0xffe41223,0xffe3416f,0xffe196ed,0xffe1fd36,0xffdac10a,0xffdeda52,0xffd47bc0,0xffcea877,0xffd3eac7,0xffcfd9bf,0xffc557b1,0xffc91bb4,0xffca3c27,
-0xffd18de1,0xffd0ebc1,0xffd72c3a,0xffdfc032,0xffdf3ac1,0xffe43e3c,0xffdf9c8b,0xffdd0235,0xffd93234,0xffd78844,0xffd9bf12,0xffd64b81,0xffd38313,0xffd0f1db,0xffcfa392,0xffccb5d7,0xffd0ae43,0xffd29cc6,0xffd44f1c,0xffd65c52,0xffd7ee99,0xffdad424,0xffd96790,0xffd8eb7b,0xffd87f26,
-0xffd72597,0xffd73aec,0xffd5665e,0xffd39c68,0xffe0cd43,0xfffdf7c1,0xffcd3e5b,0xffde346e,0xffff3401,0x00001ee1,0xffffb6bc,0xffff5fc9,0x00007680,0x0000a474,0x00019efc,0xffea3474,0xffd79ce3,0x0002fd05,0xffe97511,0xffce0fc7,0x0029d8cd,0x000e6c7c,0x00344a82,0x00258023,0x002ad5ff,
-0x002b7775,0x002da66f,0x002dd681,0x002ab2b8,0x002c45d6,0x002d0b7b,0x002f11f3,0x002d8031,0x002d84e5,0x002d8a9c,0x00315251,0x00316ad2,0x00302430,0x002b0608,0x0023f482,0x002efb25,0x000c699c,0xffed97e9,0xffc78ba2,0x0019cef8,0xfff052ce,0xffc3a7f2,0xffc3e48e,0xffc2c192,0xffc661f6,
-0xffc09b70,0xffc21185,0xffca24c9,0xffee7de6,0x001c0efc,0xffcb2dbf,0xffe9cda3,0xffde6243,0x002fccf1,0x002c067a,0x00310a3c,0x003796d1,0x003ef98a,0x003f3790,0x003626ce,0x0039a037,0x0039fe5d,0x003d47b6,0x0038ffd3,0x003db2e9,0x0042126f,0x005330ea,0x0054c150,0x004e0687,0x003b01a1,
-0x00306dd7,0x00269e4d,0xffe73f8e,0x001a6b1e,0x00199267,0x0014f04b,0x000ac189,0x000937c4,0x000c3cb6,0x0009a435,0xfff9d59a,0xffffdfb0,0x00029733,0xffffdcde,0x0004a9ed,0xfffa010a,0x00076cc7,0x001c68e4,0x00047584,0x0026faf2,0x00382d4a,0x003c4f51,0x00478777,0x0052bb27,0x0053ba78,
-0x0042cf7b,0x0046dd4d,0x004af36a,0x005beeb3,0x0050c51f,0x0052af29,0x005124e7,0x006af989,0x006ba8c2,0x00616a79,0x003e3f04,0x00342516,0x000dd7f1,0x00010106,0x000fdca2,0x0011ebdc,0x00164b99,0x0006808f,0xfff29f59,0xffe703c3,0xffeb2c87,0xffd45646,0xffcced80,0xffca8229,0xfff152c9,
-0xffee4bdf,0xfff8e233,0x00092fb8,0x000ae459,0xfff311dc,0x0025a1f2,0x002fd3da,0x00417565,0x005fbb05,0x00729f9c,0x0072ec9d,0x0059cda6,0x00574062,0x005a4328,0x006c8178,0x00568267,0x0067c245,0x007c1e1e,0x00b73020,0x00bd79a7,0x00a7c1e8,0x006763c0,0x00445db4,0x001943d4,0x0003250f,
-0x002c0a97,0x0027f70f,0x0033cbd9,0x002342a1,0xffff464c,0xfff08295,0xffd816ca,0xffcfc3d4,0xffa41de6,0xffadda46,0xffd5afc8,0xffc7ae76,0xffdfb3a7,0x0012455e,0x00031e63,0xfffa17c4,0x003b8c6c,0x006cd877,0x005e1e9e,0x001d93c3,0x0031ae72,0x0029c5f4,0x0012f44e,0x004d59f4,0x00759bc4,
-0x0079860c,0x00bac085,0x0087524e,0xffea3682,0xffda4934,0xffc83eaa,0xffdc52fc,0xfff881ce,0x000e5d38,0xfff5f096,0xffd8174a,0xffe3f74d,0xffcaedf1,0xffc47a14,0xffd74a91,0x00298e0c,0xfff38c53,0xffe9199d,0xfff188aa,0xfffb1694,0x00214049,0x005a670f,0x0052231e,0x003285b4,0x0004dff2,
-0xfffe8d24,0x0065012f,0x0029f4cc,0xfffc2c50,0xffc55032,0xff84791e,0xffd27622,0x000ee838,0x002f33f5,0x00419252,0x0002d67b,0xff8e72e2,0xff8df605,0xffbdf4a4,0x0014039a,0x006be330,0x008acf19,0x007deca0,0x00524d9c,0x00491cb1,0x00497334,0x002044dd,0x001ffeec,0x0011b9ea,0x001f0909,
-0x00064ccb,0xffe37d40,0xffeca10d,0xfffe9423,0xfffde13b,0x0004b002,0xffe71a10,0xffb28f5b,0xff6e29e8,0xff9def90,0x0014cd0c,0x0070ee30,0xfee9d05e,0xff368416,0xffc974c4,0x002c4c4f,0x00aeac57,0x00a8ecbb,0x00779bbb,0x002c3a99,0xffdf165e,0x000f0b08,0x00b5814b,0x0076d1da,0x004a2cff,
-0x0028e083,0x000c3957,0xffed8df3,0xffd80e7a,0xfff238c6,0x000ea783,0x000fe92d,0x0010f9b3,0x00074e54,0xffe779ef,0xffe4e751,0xffec2a34,0xffeeb193,0x00022354,0x0003277e,0xfffeb5d6,0xfffe53bc,0xfffae74b,0x0002bf24,0xffce4eeb,0xffd90054,0x000a4325,0xff2fcb87,0x006b95b6,0xffec1c00,
-0x0024dfb8,0x00596f20,0x00cff967,0x008927ed,0x0053b19f,0x0018df09,0x00087b3a,0xfff5a212,0xfff100ea,0xfff86b3e,0x000cd424,0x000c3f71,0x00335f04,0x004e20a5,0x005a5a32,0x004305a1,0x002ec995,0x001405d4,0x00069ace,0x001b5e04,0x00252784,0x001531b4,0x00041b32,0xfff80017,0xfffb26bc,
-0xfffd234b,0x0003cc77,0x00022496,0x0008f479,0x002b7f77,0x00220c50,0x00297375,0x005c39cf,0x008b79bf,0xffcdb1dd,0x002506ee,0x007cf166,0x006478d8,0x0043f428,0x0036a9c9,0x00398b8c,0x003d4c7f,0x003c6a55,0x004dd317,0x0062486f,0x005a702a,0x004f99e1,0x004063df,0x00254a72,0x00065a60,
-0xffed8233,0xffd61bc4,0xffd54fb8,0xffda0027,0xffc85ddb,0xffdc2c70,0xffe0718f,0xfff7b0ea,0x00024b95,0xfff96d59,0xfff59666,0xfff2e5fe,0xffee13c5,0xfff5229e,0xfffb4a68,0x0001c093,0xfffd7416,0xfff58728,0xffd79f2c,0xffe2b1a5,0xffc9ff22,0xffeb82e6,0xfff66c30,0x00014e7a,0x0028c2bb,
-0x0050b412,0x006ea7f0,0x008b1726,0x00725659,0x0064ad62,0x0060e185,0x006073b5,0x005a2372,0x00461fa0,0x003c22ec,0x002cd23a,0x0016021b,0x0011120c,0xffff7dd3,0xffe7d0f7,0xffe47513,0xffe6a8c1,0xffe66ac0,0xfff9685f,0x0005728d,0x00136b02,0x001b9ae9,0x0017c963,0x000e2e98,0x000b1eed,
-0x000747df,0x00046088,0x00034c77,0x0005c0d1,0x0000f45a,0xffffc995,0x003f1ed4,0x004b9c77,0x00570260,0x004d5b6f,0x00463fa3,0x003dce4a,0x003d0481,0x00437ef3,0x003ee1d9,0x003d2ccf,0x003861f3,0x00232fb8,0x000f28ed,0xfffacaea,0xfff7501a,0xfff1e415,0xffecd7ca,0xfff01fb7,0xfff89615,
-0xfff5b18d,0xffe97c66,0xffe977d9,0xffe7865d,0xfff5e5e6,0xfff9ed42,0x00091e2c,0x000b5dc0,0x0026fcd3,0x00296f86,0x00387c87,0x0037fbc0,0x0045a9a5,0x004184a4,0x003f8532,0x00387794,0x003fa842,0xffd3ba9e,0xfff933ae,0xfff8f304,0xfffc3854,0x0002540d,0x0006888d,0x0007acd7,0x00070341,
-0xffff68e6,0xfff87656,0xfff48299,0xfff07fba,0xffee850b,0xffeb2e03,0xffec39d5,0xffec0046,0xffebc1ff,0xffe9f523,0xffe63300,0xffe88353,0xffd93dc5,0xffe819ff,0xffe75020,0xffdf25fd,0xffdb2b16,0xffe03fa8,0xffe78a36,0xffe9a554,0xffe490dd,0xfff1bc7f,0xfff786ff,0xfff59301,0xfff755ee,
-0xffee8cf8,0xfff06f4d,0xfffba169,0xfff0bb59,0x00043fb7,0xfffd1bfc,0xfffed0c7,0xfffd89f0,0xfffd44a4,0xfffdf341,0x00005c90,0xfffe0765,0xfffc6ccd,0xfff9d0be,0xfff827d9,0xfff62364,0xfff3a580,0xfff3b14d,0xfff33874,0xfff2cba2,0xfff2fb89,0xfff188e8,0xfff50c55,0xffe964d4,0xffd7126c,
-0xffbd220b,0xffede9cd,0xffd5f601,0xffb66366,0xffb9c51a,0xffbdde87,0xffc4a507,0xffc577df,0xffc89206,0xffce230d,0xffe2adc5,0xfffb1039,0xffc709a8,0xffdc31ed,0xfff70b8e,0xfff023cb,0x0013c470,0xffe34805,0xfff5f4dd,0xfff54489,0xfffcbba0,0xfff5c6a1,0xfff24d47,0xffebbb78,0xffedbbf2,
-0xffef1c42,0xfff362de,0xfff2a26d,0xfff325e9,0xfff2afed,0xfff515d5,0xfff4f09b,0xfff40ae0,0xfff004ec,0xfff19c7f,0xffe1e07c,0x0013bd68,0x002ef483,0x0042dc5a,0x000892db,0x002b5210,0x0038cb99,0x003ba94a,0x0039a439,0x00313f02,0x0036b351,0x0038fea8,0x003a7ea1,0x00270da6,0xffffbebb,
-0x0040843c,0x003269f0,0x003303f0,0xffed6997,0xfff3c771,0x000119a1,0x0011a559,0x00073432,0xfffd44aa,0xffea892b,0xffebb606,0xffecb478,0xfff5aaf6,0xfff25ac3,0xfff5690b,0xfff69d0f,0x0002e033,0x00058de0,0x0000d6ec,0xfff949e4,0xffeeea47,0xfff21846,0x0030e257,0x0006e5ab,0x000ea292,
-0x00111c38,0x0010ad17,0xfff3c952,0xfff12e42,0xffef0c4e,0xfff85c7c,0xffe2cbad,0xffdcc142,0xfff07bc7,0xffefa60c,0x0004dba9,0x000c19d2,0xfff1b956,0x0010ae93,0xfff85e46,0xfff5adee,0x001120a0,0x00292ddc,0x0017d26c,0x00065105,0xffde21a1,0xffe0a9fe,0xffe6b89e,0x000293a0,0xfffda994,
-0x00018302,0xfffe1557,0x000cd222,0x000dbecd,0x0004c411,0xfff4dd9f,0xffe1d632,0xfff5171c,0x00106cb5,0x000d58e0,0x0008ba3e,0x00074598,0x0012d8f0,0xffddeb35,0xfff37f66,0xffc9a753,0xffdd73c2,0xffbd4766,0xffd7e7a4,0xffe58c74,0xfff2dbcd,0xfffa889e,0x00113584,0xffff2bc0,0x00036b1b,
-0xfff04a86,0xfff4c067,0x0026e60b,0x0059ab2b,0x004a2ad9,0x002dc78e,0xffed568e,0xffe5607b,0xffe6b16b,0x00075b81,0xfff83be4,0x0003f19e,0x000d7254,0x0036a155,0x003ff1f4,0x0032c5af,0x00139436,0xfff4bfac,0xfffde554,0x00254cc3,0x000ff743,0x002d20ba,0x001e1a3c,0x0011646f,0xffeb21d8,
-0xffe2ae85,0xffd6dd0c,0xffc895c9,0xffa16513,0xffa28569,0xffc79040,0xffbffe5e,0xffdd728f,0xffffbaa3,0xffe7dca6,0x003b048d,0x000c27e4,0x000a7535,0x0003dce5,0xffc09c8e,0xffc842a1,0xffb919d9,0xff8c065f,0xffbe4268,0xffe5834c,0xffecb121,0x003797fc,0x00235dce,0xffb6016a,0xffaaeda8,
-0xff927600,0xff6c9cdd,0xff97021c,0xff969561,0xffbc4f35,0xffe4f93c,0xffb73b60,0xffbb778c,0xffbd97ce,0xffdba792,0x0028eab3,0xfff2cc8b,0xffeb18e7,0xfff5ae37,0xfffd4a47,0x00263d0f,0x0062850f,0x005403cf,0x0042a99b,0x001a2da5,0x002b163a,0x005855dc,0xffe6056b,0xffb02630,0xffa7601b,
-0xff8cf0ce,0xffbe3a88,0xfffccc0a,0x0033a322,0x00373faa,0xfff93321,0xff8c966c,0xff903377,0xffb87c3d,0xfff4d612,0x0033826c,0x003e0f52,0x001201a1,0x00170879,0x000eaba7,0x004036fa,0x00302e24,0x001f528f,0x0016ab2d,0x000ff85d,0xfff8c504,0xffdf8041,0xffec63ed,0xffffb658,0xfffe4c73,
-0x000074bb,0xffe2d9a0,0xffa99c98,0xff6fd6c9,0xff8fbcde,0x0019aa16,0x0040cdf5,0xff1b39c8,0xff5121e3,0xffb1a832,0xfff0b262,0x0045986e,0x0019b7f8,0xffcadbe2,0xff81f503,0xff2bcbf7,0xff75d0cd,0x0043e017,0xffe56ca7,0xffae00f9,0xff91ad24,0xff9081b2,0xffa17f57,0xffc05957,0xffdf4341,
-0xffdc458e,0xffea2d67,0xffff3885,0xffef2239,0xffe6fb90,0xffde3f09,0xffe9bab3,0xfff1579b,0x00010506,0x00024ff5,0xfffeee83,0xffffec66,0xfffb8f3c,0xfff8eb76,0xffd9f051,0xffdb1890,0x000d99fc,0xff461bb8,0x0052cff5,0xffe274e5,0xffef7d14,0x00056a90,0x00116f03,0x000764df,0xfffabdb5,
-0xffdbf6b6,0xfffc4a42,0xfff93649,0xfff7df1a,0xffef0c40,0xfffa3cea,0xfff4ce13,0x0009e3d4,0x0014c862,0x0011b808,0x0009327f,0x0003ddb2,0x000b0995,0x002086ef,0x001ad9ed,0x001ff29d,0x00127aad,0x0000f57c,0xfff40321,0xfff9542b,0xfffef1fe,0x0003dc50,0x0001cd1b,0x0006d1eb,0x001b24a3,
-0x0014faf9,0x0011a82f,0x0058dc80,0x006c740c,0x001a8ab8,0x001d24c4,0x0003437e,0xfff403c1,0xffc14ec0,0xffbdc6eb,0xffbf282d,0xffc82fba,0xffe39ae3,0xffffdb2d,0x001a4402,0x0022c198,0x0021d785,0x001a1b4c,0x001214c0,0xffffc062,0xffe3b070,0xffdc3a28,0xffcf26f8,0xffcb1390,0xffd5f450,
-0xffd40d8c,0xffe5b082,0xfffa0f28,0x00000ecd,0xfff6f525,0xfff5f3b2,0xfff0f22d,0xfff484eb,0xfff3de04,0xfffc1203,0x000125f3,0x0004a62d,0xffffdebe,0xfff250fe,0xffe808a9,0x000714ed,0xffd3a453,0xffae4bf4,0xffcaa616,0xffe2f9bf,0x0000da96,0x0011d660,0x001eced2,0x003d807d,0x004faa10,
-0x005a4b63,0x0050a556,0x0045d298,0x0031a260,0x0025722b,0x0011bbed,0xfff78f58,0xfff03e7a,0xffe72716,0xffe8629a,0xffe2a9af,0xffe33af7,0xffef97fb,0xfff8b31e,0x000368fd,0x0011b296,0x00117c9e,0x000e0af1,0xfffce166,0xfffe31ef,0xfffd287c,0xfff979f3,0xfffc7a6a,0xfff89831,0xfffd31ad,
-0xffee1cd5,0x0042c95e,0x003829ff,0x002f6147,0x002e5c4d,0x00223898,0x001a3671,0x00165327,0x00132133,0x00138597,0x0011c4a7,0x00131597,0x0004644f,0xfff83b4a,0xffecc727,0xffe8a678,0xffe4cd7c,0xffdf38f3,0xffe2bd20,0xffdf0786,0xffe77751,0xfff2bc74,0xffee190f,0xffe911e9,0xfff68db1,
-0x000470c3,0x000da665,0x001bb169,0x00221d92,0x003837a5,0x0034ef46,0x003e2f03,0x003eabfe,0x00408e29,0x0046aefe,0x004d6a78,0x00418655,0x000715ad,0xfff37c6f,0xffedd081,0xffeae55f,0xffe84c1a,0xffe3a6f2,0xffdd198b,0xffd67e4f,0xffd6637a,0xffd6b759,0xffd8c039,0xffdb9e6a,0xffe06346,
-0xffe56989,0xffe484c4,0xffe38bdc,0xffe219b8,0xffe06611,0xffde5e06,0xffd91eb7,0xffe72e34,0xffda5edd,0xffdba2a7,0xffddd32a,0xffdd7f09,0xffd4f46d,0xffd728aa,0xffdcdf48,0xffe729e1,0xffe4766e,0xffe8c9c9,0xfff44234,0xfff30822,0xfff899de,0xfff755b4,0xfff1e342,0xfff5218c,0xffe40e6e,
-0xffe662a7,0xffe2f649,0xffe040e1,0xffde7bfa,0xffdd5834,0xffdb0244,0xffdbd719,0xffdbaf8b,0xffdb32be,0xffdb84bf,0xffdb3f62,0xffdbaa42,0xffdb04b6,0xffdaf47e,0xffdaf086,0xffda502a,0xffdb5dd8,0xffd690fe,0xffe81224,0xfff7af23,0x00040ba4,0xffe32e43,0xfff81bc6,0x000487de,0x0007ea0f,
-0x00086dd6,0x00074bdc,0x000c235d,0x000d8132,0x000f50db,0x0004b820,0xfff0db82,0x000bd5da,0x0004c6b8,0xffd62193,0x0011df09,0xffeca91d,0x001e3f98,0x001197cc,0x001405b0,0x0016a030,0x0013ca35,0x001273b7,0x000f454f,0x00104ee6,0x0011ebae,0x0017a589,0x0014b4da,0x00146d46,0x00130867,
-0x0017ccf2,0x00185433,0x0017483c,0x00131914,0x000f5b0e,0x0018e634,0xffeb7194,0xffdc3b27,0xffe35390,0xfff4c8ce,0xffdbb18f,0xffdb68bc,0xffd9414b,0xffd71ec2,0xffda3b31,0xffd26e0f,0xffd31aae,0xffd6f970,0xffdaa548,0xfff78229,0xffe283ce,0xffd84c36,0xffd87604,0x0010a0fa,0x0016e308,
-0x001709d4,0x002188c0,0x001c35d7,0x0016a114,0x000dffb1,0x001092ec,0x0014fa1d,0x0021a7c9,0x001b24dd,0x001e3875,0x001e60b9,0x00303de1,0x00322f29,0x002c7f4f,0x001dbf19,0x001b6a7f,0x000da91c,0xffe80dd4,0x0009d20f,0xfffe34f8,0x00043034,0xfffb087f,0xffefb347,0xfff80171,0xfff13e83,
-0xffe20b2f,0xffec6f1d,0xfff2aca7,0xffe99aed,0xfff41c44,0xffede0cb,0xffecaba8,0x0002f75a,0xffece656,0x00134ee0,0x0025d6ad,0x0021da2a,0x0034ad37,0x0027545b,0x001c4aaf,0x000ce353,0x000befab,0x00154a28,0x00387400,0x0028825d,0x0029c5f7,0x001fdae3,0x003c9e37,0x003ee709,0x00369b48,
-0x001d2c6d,0x001b735a,0xfffea58a,0xfff12fd4,0x0000779a,0xfffd058c,0x000315e6,0xfff7be22,0xffdfded9,0xffdd863a,0xffe1b3ca,0xffc3ef97,0xffcbaf82,0xffc6d2ee,0xffdc6777,0xffea5204,0xfff1cfb7,0xfff14b72,0xfff7bc21,0xffddca1b,0x000db6ac,0x001b284a,0x0024d72a,0x004de789,0x003c86e2,
-0x0025fd07,0x000db986,0x0008ff10,0x00198af7,0x0049be01,0x002d0124,0x00339cb7,0x0038ba63,0x00713179,0x007c17b8,0x006cead8,0x00406c1c,0x0034d05d,0x0015bf26,0x0009394c,0x002a1699,0x0013a47f,0x00230b02,0x0018ac4c,0xffee9b45,0xffe4d005,0xffd3b16f,0xffd5dc61,0xffa3d941,0xffac7236,
-0xffc340ee,0xffcb2d9d,0xffdc29fc,0xfff31b37,0xffec3858,0x00029a5d,0x002fe3ec,0x006e348a,0x00500b0e,0xffffe65a,0x000bc0b0,0xfffcc436,0xffda0f4b,0x0011a64b,0x0035d0e7,0x003d6e8e,0x0087a05a,0x00704523,0xfff7f78d,0xffd94d87,0xffbacbaf,0xffbb9536,0xffc5a3b2,0xffccfc8d,0xffab54bc,
-0xffa37d75,0xffc11b8a,0xffb39740,0xffc5c3e1,0xffdc2b37,0x00248aa2,0xfff6663f,0xfff0ec68,0xfffb770f,0x00023cfa,0x002b32c3,0x005f9404,0x005665c7,0x0034a075,0x000c8998,0x0007f99e,0x002669b5,0x0000301a,0xfff567e4,0xffc078f4,0xff946af9,0xff9e73ef,0xffd108fb,0x001488f1,0x0037ceca,
-0x0011239f,0xffa68632,0xff890ade,0xffa4978b,0xffe53649,0x0043a08e,0x0065ea1a,0x004b28ff,0x00384043,0x003c693a,0x003e195c,0x001a7ab7,0x001739bb,0x000f1adc,0x001c9dd2,0x0005f25b,0xffe1bdc6,0xffefe6be,0x00013698,0xfffe91a0,0x000106c1,0xffe23112,0xffb0f835,0xff6f511f,0xffa1f688,
-0x001cbd43,0x00474288,0xff35bfed,0xff7c1360,0xffabcb91,0xffec47de,0x007798c5,0x0047ffc4,0x00127471,0xffe4f791,0xff9fce46,0xffd6b035,0x008654ec,0x0050dc63,0x001f247e,0xffe7a045,0xffdea287,0xffd13e15,0xffcc3a8f,0xffe4ef9c,0xfffc7589,0xffea188f,0xfff19bf7,0xfff46afc,0xffdb5691,
-0xffdadd7e,0xffe8cf66,0xfff60641,0x0002aec8,0x0001d890,0xfffded0e,0x00018771,0xfffb4949,0xffed2d36,0xffd8f57b,0xffe43e8e,0xffe729a3,0xff5d80d6,0x00296acf,0xffd800d4,0x000f9e99,0x002076a3,0x004f48c3,0x00457a56,0x002f62b2,0x000c01a4,0xfff3a4c1,0xffdf420e,0xffe1281e,0xffdc51a2,
-0xffed6841,0xfff0c449,0x0014c5b1,0x002cb6ba,0x003594df,0x002dfd36,0x002c0892,0x0016fd73,0x000deb86,0x001bc0f0,0x0022da25,0x00124cd6,0x00005ee3,0xfff49c13,0xfffaec09,0x000053bd,0x0003df63,0x00019f3f,0x000917c4,0x001f0be1,0x000a0a45,0x00103b89,0x004b4511,0x00555543,0xffe0eb57,
-0xffff5a13,0x0025c505,0x000dd5ac,0xffedbb29,0xffd7f91d,0xffdbb21c,0xffed0007,0xfff5f088,0x0007ebbc,0x00158371,0x001ba56c,0x001e0613,0x001981e2,0x00103a83,0xfffe84d9,0xffecce06,0xffdc4b09,0xffda6693,0xffd690e0,0xffc9164b,0xffe052ad,0xfff00233,0xfffdc71d,0x00047f4c,0xfff9cd6f,
-0xfff64905,0xfff5d119,0xfff53cba,0xfff84295,0xfff7e27e,0xfff3522d,0xfffc71fc,0xfff6bb8d,0xffe2b291,0xffda5346,0xffb9e4c0,0xffb780fa,0xffc5816d,0xffd4ac7d,0xfffabecd,0x001fbb2a,0x00396354,0x004a613f,0x0055f541,0x005faa29,0x00685910,0x0060acad,0x00525c90,0x003b102e,0x002ecc90,
-0x001f6d12,0x000f123d,0x000586f5,0xfff6a32f,0xffe38e5f,0xffdf3acd,0xffe28aad,0xffe2fcf4,0xfff9c9a6,0x00088cb4,0x0013cab1,0x0010f485,0x0007d3e1,0x00010e7e,0xfffe53c7,0xfffdcde6,0xfffabbbf,0xfff95034,0xfff2fb4e,0xffeb374a,0xffdbe8bf,0x0031b354,0x003f523a,0x0047f047,0x003e53a2,
-0x003a1bf5,0x003146fc,0x00305fe7,0x00331c82,0x002c693f,0x0025c855,0x001ff49a,0x0011345a,0x0004b672,0xfff5f97f,0xfff49bf8,0xfff0d613,0xffede965,0xffeef60e,0xfff69e01,0xfff057bd,0xffe6a0b7,0xffeb685b,0xffeba1db,0xfffc85d2,0x0004b72a,0x00181079,0x0019ea80,0x002ed0d8,0x002d3948,
-0x0036266d,0x002f75c3,0x0034d36c,0x00329fdb,0x00324917,0x002e2dd4,0x0032e233,0xffed16ee,0x00054eb4,0x000568dd,0x0003c791,0x000595df,0x0004e8de,0x00026591,0xffff00df,0xfffb465f,0xfff8e26e,0xfff74e6c,0xfff476bb,0xfff1ab71,0xffed0dff,0xffedbb15,0xffed71ac,0xffed9097,0xffeb8703,
-0xffea0742,0xffe8ce82,0xffd87fd5,0xffe46fbb,0xffdf1a90,0xffdce9e0,0xffd66527,0xffd7d0d2,0xffe079da,0xffe12dda,0xffe01184,0xffef58d4,0xfffab2b7,0xfffbe795,0xfffeabd1,0xfff9b114,0xfff9f837,0x00050edb,0xffe7ccf2,0x00027703,0xfffb282e,0xfffac9cc,0xfff92ad5,0xfff84123,0xfff81921,
-0xfff84f1b,0xfff6ecec,0xfff5037a,0xfff2a980,0xfff137e2,0xffeff8c0,0xffee5aba,0xffeeae42,0xffee56f0,0xffee2c4e,0xffee51de,0xffed6d3f,0xfff27185,0xffdca253,0xffd00c1b,0xffce0c1e,0xffdf3a3d,0xffce1eee,0xffc988d6,0xffcc1cc0,0xffcff82c,0xffd6505d,0xffd57fa8,0xffd7b95c,0xffdd2ce3,
-0xffdebf26,0xffef5a76,0xffdd5ad7,0xffdbe738,0xffed0935,0x000aa691,0x0028d2a3,0x0003bf30,0x000b84b1,0x000daa32,0x001219d8,0x0012a674,0x00111980,0x00096c64,0x000aafd2,0x000b789f,0x001096b3,0x000e33c7,0x000e62c4,0x000d7246,0x0010a88f,0x001091d3,0x000f2aa0,0x000bdab3,0x0009d98b,
-0x0001dc02,0x00276074,0x002a0201,0x000f1248,0x0022213b,0x00290575,0x000a3007,0x000f2b2a,0x000e2282,0x0007f89e,0x000f5d32,0x0012043f,0x00120c38,0x0027a926,0x001ecdbb,0x000faab3,0x002ce02b,0x00224c47,0x000f9820,0x000788b8,0x0015e98f,0x0021d12a,0x002a4496,0x00261ec6,0x0010ab80,
-0x0011be1c,0x00125b12,0x001e0e34,0x00155557,0x001638be,0x0016af95,0x0025a3b8,0x002a1f5a,0x002575e6,0x001e8987,0x00114803,0x001591b3,0x0023234e,0x001512b3,0x001b5824,0x0015d06e,0x0012dc44,0x0002c4dc,0x0003beba,0x000851d6,0x00082ab3,0xfffeb8e5,0xfff5a32e,0xfff799ac,0x000226e7,
-0x000b68f8,0x000dd922,0x0008f43c,0x00219cea,0x001721a7,0x000ab585,0x002478b7,0x0033438e,0x004421a8,0x00403348,0x0013685d,0x00146329,0x00161d36,0x003613c1,0x002811bf,0x002a026d,0x0025b2e8,0x00388b3d,0x003ac7dc,0x00305028,0x001e4f48,0x000b28d5,0x000e9589,0x001acdaa,0x00145ef4,
-0x00084754,0x000bb09d,0x00112f69,0xffe2a803,0xfff2534f,0xffd4f2e3,0xffdbd469,0xffc81a00,0xffdfc401,0xffe12733,0xfffd51ac,0x0005d9d8,0x000a8f7e,0x00109102,0x000adf4a,0x00082bac,0xfff90ecb,0x00278d74,0x00500c21,0x00747835,0x006ca38e,0x0029bd14,0x002389c6,0x00272365,0x004daf65,
-0x0030bc27,0x0034390f,0x003cf117,0x006ec252,0x007f2ff8,0x0071aac3,0x00511b22,0x002b4a25,0x00254f18,0x002df78c,0x001a8ab3,0x001be35a,0x00190f96,0x000ce3c8,0xffde1ecf,0xffdeb5e3,0xffd4c08c,0xffcca916,0xffa8b58c,0xffa903b3,0xffb65dd4,0xffcb4542,0xffe9115c,0xffe918a1,0xfff4328a,
-0x00664c1f,0x00525a34,0x0060b449,0x0051ca22,0xfffbfa88,0x00150a47,0x000f3cb2,0xffee5c22,0xfff9cc73,0x00015597,0xfffd0375,0x003a2307,0x002da3b0,0xffcced8a,0xffbc9773,0xff9fb93a,0xff7543a9,0xff9ff5e3,0xffa619ba,0xffb94340,0xffc6d55a,0xffb04679,0xffb6bcef,0xffcd75a5,0xffe9cd56,
-0x0021ed65,0xfff95205,0xfff7ada1,0x0002eea3,0x000a9a03,0x00331520,0x0066c6d9,0x005e2c1d,0x004fbdad,0x002fab14,0x0052cba9,0x003b0e7f,0xffec1a1b,0xffb7269f,0xffb77aab,0xff9df00d,0xffb90434,0xfff23a44,0x002f6b86,0x00452e3b,0x001a43de,0xffb112bf,0xff92a9c4,0xffab2485,0xffe9a9ec,
-0x003d1152,0x0069b33e,0x005f34ee,0x005a3223,0x004185c9,0x004d211e,0x002a52e3,0x001b01c0,0x001d3161,0x00161e0f,0x000032e2,0xffe275a1,0xfff0a32f,0x0001b921,0xfffcc87f,0xfffd323e,0xffe12365,0xffb1a8a3,0xff7c11c2,0xffa8ab2b,0x0031da7c,0x00386c3e,0xff665081,0xffa15f1b,0xffa7e6f8,
-0xfff45f9a,0x00c4b83b,0x00942380,0x005a7a34,0x001ea66a,0xff870dbd,0xff9aecb6,0x005399f8,0x00380d60,0x0019fb06,0xffe33690,0xffd56790,0xffc71b17,0xffc1904b,0xffdc507d,0xffdb7f8f,0xffe7feb3,0xffff14a5,0xffeffa1c,0xffe7c2c4,0xffe285c7,0xffeda967,0xfff9dce1,0x00049299,0x00016422,
-0xffff5c60,0x0003c1a7,0xffffc07d,0xffeaa729,0xfff083bf,0xffed3816,0xffe40f4c,0xff775dd9,0x00159449,0xfff73218,0x004802c7,0x007a4d39,0x009b716e,0x009bd413,0x00725881,0x000df636,0x001661f1,0x000b832a,0x0014621a,0x0001ebb3,0x00082663,0x0000ebe5,0x0022aef9,0x00361c21,0x0032bc21,
-0x002ff84b,0x00235ec1,0x001cc775,0x0024aea9,0x0021cbbb,0x0024728f,0x0013a197,0x00023766,0xfff546f8,0xfffb0a06,0x00014350,0x0000e728,0xffff76a2,0x0005f865,0x00104e45,0x00012173,0x0004865c,0x003b92dd,0x002d462d,0x002010ee,0x004a5297,0x0066924d,0x00587f99,0x001eaee9,0x000feb34,
-0x0003ce90,0xfffbc396,0x00056125,0x00179f96,0x003b7651,0x0038393d,0x0035fc70,0x003177d8,0x001af80a,0x0003e85e,0xffeb27b4,0xffe51872,0xffdebdaf,0xffde887b,0xffe6e0b9,0xffeb71d7,0xfff8793c,0x00023649,0x000516b6,0xfffcde71,0xfff8d3a0,0xfff8640d,0xfffe4ea4,0xfffcc9ba,0xffff5a1e,
-0xfffcb403,0x00080431,0x00070cd4,0xfffd8709,0x000c0186,0xffe0d2aa,0xffda3afe,0xffcda47d,0xffdd0b9c,0xffee3158,0x00033e39,0x0012b776,0x002aafe8,0x003b63de,0x004a4d80,0x00561e96,0x0058ad91,0x005658e2,0x0047da1b,0x003d14d6,0x00295448,0x000b513d,0xfffc0971,0xffea95d5,0xffe0d018,
-0xffdefdac,0xffe5b35a,0xfff8ce61,0x0005865e,0x000bd3e0,0x0013849b,0x000ba967,0x0003b262,0xfff774ed,0xfffb03cc,0xfffd6791,0xfffba0e7,0xfffae287,0xfff8be09,0xfff52cf1,0xffeed489,0x004887c8,0x003e4176,0x0035857c,0x00388c11,0x0034000a,0x00341f00,0x003575cf,0x003837bf,0x0032a16d,
-0x002c7e89,0x00268b04,0x0012a770,0x0000a99f,0xffeeb4cc,0xffed1096,0xffeaa3e2,0xffe759d5,0xffed97d3,0xffee8f15,0xfff7956a,0xfffd9d02,0xfff72f7e,0xfff1c38b,0x000078ad,0x000e6351,0x001d9634,0x002545ec,0x002c8e5c,0x003b32aa,0x00324201,0x00332683,0x002faf51,0x00352318,0x003e0a66,
-0x0043876a,0x003ff882,0x000f44ee,0x0014a030,0x000fb3d4,0x000efbe8,0x000c387d,0x000891e4,0x0003a685,0x0000a37f,0xfff88e8b,0xfff24933,0xffee2c61,0xffea0539,0xffe8754f,0xffe6c364,0xffe72b50,0xffe65baf,0xffe50a86,0xffe35196,0xffdf56bf,0xffde54e1,0xffe8a802,0xffe6437e,0xffecda0a,
-0xffeab1d7,0xffec65c4,0xffebfdbc,0xffee35fa,0xfff5932d,0xfffc2923,0xfffe10ab,0x00020821,0x00093b9f,0x0009c917,0x000a8c39,0x000dd5d6,0x000d7935,0x00099937,0xfffbdb50,0xfffa625b,0xfff8dd98,0xfff70eaf,0xfff65e47,0xfff5a774,0xfff511a5,0xfff228db,0xffefa6b4,0xffec8ad8,0xffea8d8b,
-0xffe82050,0xffe54765,0xffe5ae42,0xffe5c415,0xffe5fb04,0xffe6487a,0xffe731db,0xffe3b48c,0xfff71fed,0xfffc268b,0xffef954d,0xfff8a712,0xffffeafd,0xffeef662,0xfff37560,0xfff5b12e,0xfff67e44,0xfffbe748,0xfffe4fab,0x0001c805,0x000c4251,0x00089566,0xfffbde3f,0x000b8425,0xffe9047d,
-0xfff4f06d,0xffe48f06,0xfff9a17c,0xfff98a0d,0xfff8b376,0xfffddaa7,0xfff6fe68,0xfff3f71f,0xffef25e1,0xfff0643a,0xfff28863,0xfffab271,0xfff72fc5,0xfff6f2fd,0xfff4e197,0xfff94f8d,0xfff9dd48,0xfff8eaa8,0xfff5fd65,0xfff69901,0xfff609aa,0xffe4555b,0xffeed7df,0x0017c1bf,0xffe2e9fb,
-0xffead138,0x000c94bd,0x000afa06,0x00083a32,0x0005d764,0x00031b62,0x0003d787,0x00027423,0xffe9efc3,0xffe2b4cf,0x00133dae,0xffedc0bc,0xfff502ff,0xffeedaab,0xfffa92fb,0xfffbdeec,0x0009f0e9,0xfffc3926,0xfff18e51,0xffe4e22b,0xffe6c8da,0xffed2adc,0x0000287c,0xfff772f6,0xfff853a6,
-0xfff62bb0,0x0005cbbf,0x00089d67,0x00045196,0xfffd04d8,0xfffddc66,0xfff454bb,0x00030676,0xfffc14f8,0xfff0b51e,0xfffaf0b4,0xfff62d77,0xffdfe3fa,0xffe99301,0xffe2aa1f,0xffda9269,0xffdfd695,0xffe38a5f,0xffdc723d,0xffe90f6e,0xffef27b5,0xffe4a061,0xffeaa4e8,0xffea2f70,0xfffdae67,
-0x00063286,0x000787a8,0x001ea868,0x00034f61,0xffeeef14,0xffd6110a,0xffd44ffc,0xffdfbcbd,0x000e38b8,0xfffc750e,0xfffd8390,0xfff11d20,0x0009b8c7,0x000ca3fc,0x00050b51,0xfff9056a,0xfff75d39,0xfff3f219,0xfff1ff82,0xfff877a1,0xfff15d23,0xfff40d78,0xfff4e5a9,0xffd1336d,0xffdf2272,
-0xffd3f866,0xffbcd335,0xffc90534,0xffcdf057,0xffcce873,0xffed7410,0xfff2a759,0xffea3e2a,0xffed6a90,0xffdbd14e,0xfff285c7,0xfffbf843,0x000c9eea,0x003c2826,0x00197a30,0xfff33d4c,0xffcb3b1c,0xffc62b89,0xffdcd20b,0x001e7245,0xfffd16b6,0xfff8c8c6,0xfff5ed65,0x00255843,0x00346c7c,
-0x002ae662,0x0017792b,0x001699a7,0x000fcd2d,0x00172e7a,0x001b71ec,0x00070741,0x000d4545,0x00089fb0,0xffdcd914,0xffdf907c,0xffd7ff17,0xffd7224f,0xffaebea5,0xffb2ce30,0xffb4381e,0xffd0549e,0xffde9fce,0xffda1a4f,0xffd945c4,0x0025ee46,0x00260770,0x0050d2a7,0x0030d092,0xffe192c3,
-0xffdf8796,0xffcbf9d6,0xffa94afb,0xffcc0ef8,0xffe47023,0xffedbe32,0x0035b308,0x003bbb4b,0xfffaec22,0xffcdefe6,0xffa65591,0xff8960b3,0xff8df7b6,0xff89770c,0xff7ee999,0xff93aa51,0xffa476e6,0xffa7727f,0xffd008d7,0xffeaf7bd,0x001c5772,0xfffcbb75,0xfffc9809,0x00075ce7,0x000c2892,
-0x0030e7f4,0x00582d44,0x00542df5,0x003e2802,0x00204df7,0x00238b19,0xfffc50cf,0xffd83c73,0xffdafd18,0xffb991e7,0xffa5b483,0xff87f6e5,0xffb57456,0x000ce787,0x0030818a,0x001b3596,0xffbf510c,0xff8e3e5c,0xff97b17a,0xffc7406c,0x00115c68,0x00308b1f,0x00146175,0x00207c83,0x0027f456,
-0x0031ead5,0x001aac9f,0x00100456,0x000d68ab,0x00124c28,0xffffdc44,0xffe3a0b2,0xfff43f0c,0x0001f2bb,0xfffbe891,0xfffc3fbe,0xffe1cfca,0xffb83800,0xff82b9f3,0xffab3078,0x0021fe58,0x001962ed,0xff810a79,0xffb48698,0xff9627a1,0xffc0199d,0x0047b5cc,0xfff671f6,0xffbd322e,0xffa58e35,
-0xff5a273a,0xff8caf2f,0x003553a8,0x0016d63b,0xffeada62,0xffa35a0f,0xffabdcb7,0xffb43756,0xffc403e3,0xffd836b9,0xffe0f2ee,0xffccba2b,0xffdd427a,0xffe4671a,0xffd89730,0xffd8f30d,0xffeb5e38,0xfffd7635,0x0004ce24,0x0000896b,0xffffe84e,0x00049150,0x0001fcee,0xffe2b10f,0xfff3094e,
-0xfff4b548,0xffc03e0d,0xff8b41bf,0xfff1affa,0x0003461c,0x00148619,0xfff75fa8,0xffc90e2b,0x000336c8,0x0014188b,0x0008cd77,0xffee647e,0xffd86e2f,0xffdf7ced,0xffcfaa84,0xffdc092d,0xffe2fbc0,0xfffa278c,0x00064427,0x00096060,0x00118772,0x001db8ef,0x00189457,0x001b52d9,0x001b9c8d,
-0x001ef9ee,0x000e2160,0xfffeb3b5,0xfff5a3a9,0xfffc86fa,0x000150e1,0x00008c43,0xfffe0aca,0x0005214b,0x000b8058,0xfff92044,0xfff5c804,0x00203575,0x000675a0,0x000d36ba,0xfff0856b,0xffda515f,0xffce5b6b,0xffa9cc7f,0xff92569c,0xff8dd702,0xffa19cb3,0xffb6a7e0,0xffcab737,0xffd76c4a,
-0xffe9d4b2,0xfff65b8f,0xfffc7dd6,0xffffbfd8,0xfffabfda,0xffef9b14,0xffe73775,0xffe0869f,0xffd6b50d,0xffd7e833,0xffe85934,0xfffea191,0x0003642e,0x0004c36e,0xfffb4319,0xfff98830,0xfffb8324,0xffff5988,0xfffe268c,0xfffb0754,0xffefb316,0xfffc8947,0xfffd12a1,0xfffec8df,0xffeb31f9,
-0xffcbc6fa,0xffa404c3,0xffa82625,0xffb73d41,0xffcbe087,0xffe2e1de,0xfff352ff,0xfffb1bf4,0x0029871e,0x00486764,0x005bbcc7,0x00511563,0x00414fdf,0x002c7454,0x001ee936,0x000e7a68,0xfffede98,0xfff2118b,0xffe91088,0xffe2c0f6,0xffddee69,0xffe28977,0xffe949e9,0xfffc4f97,0x0009149d,
-0x000f12e7,0x00045e9d,0xfffb207e,0xfff66874,0xfff5b554,0xfff74cd7,0xfff311d5,0xfff2891d,0xffe66725,0xffdf7a80,0xffc8bc32,0x001fe9a3,0x002278a8,0x00214647,0x001dbfa3,0x001bcd8d,0x00185c28,0x0018ebad,0x001898e2,0x0013a94e,0x000c4cfb,0x00096ecd,0x00001ef1,0xfff9ca57,0xfff10716,
-0xffefe582,0xffed6217,0xffeb3a3a,0xffebd5a1,0xffee390d,0xffeae70a,0xffec0cef,0xfff0f078,0xfff1bca5,0x00017a8a,0x000ec504,0x0021e46c,0x0025899d,0x002c4551,0x002e23c0,0x002af3b1,0x00235ad1,0x001dd041,0x001f77f6,0x0022925c,0x00246fe3,0x002109bc,0x00134a51,0x00112fe5,0x000f1b6b,
-0x0008dc40,0x00046efd,0xfffe401a,0xfff7a606,0xfff1b203,0xfff0f426,0xfff1b80b,0xfff1f429,0xfff0facb,0xffef4334,0xffebfed8,0xffec15ec,0xffeba5fa,0xffeb868f,0xffe99135,0xffe9c57f,0xffe4eb2f,0xffdfeffc,0xffe27bb8,0xffde462d,0xffe329ee,0xffde7aa1,0xffdbce4b,0xffe23fc4,0xffe42c74,
-0xffe9e94a,0xfff38afb,0xffffb122,0x0005cc3e,0x0007f7d1,0x00093ea2,0x0008a5d1,0x000d5bd1,0xffea8004,0xfff8a46c,0xfff503d6,0xfff2492f,0xfff06e0b,0xffeeb563,0xffed4fbb,0xffeadccc,0xffeaab82,0xffe90f57,0xffe7642b,0xffe67d4d,0xffe5eba4,0xffe545f6,0xffe59052,0xffe564f5,0xffe5831e,
-0xffe56b10,0xffe5a7ee,0xffe816f8,0xffda71a0,0xffdc7614,0xffef418f,0xffdb22e7,0xffdcfcdb,0xfff0a7c0,0xfff26dfe,0xfff48987,0xfff748a3,0xfff732fe,0xfff836ff,0xfffbda9e,0xffed995b,0xffebdccc,0x0000d359,0xffeec121,0xffe07f64,0x001dc866,0x001f4ccd,0x00223be1,0x001af4e8,0x001ed6e6,
-0x001fed1e,0x0024e50a,0x0024cc65,0x001df292,0x001ec5a0,0x001f86de,0x0025e68f,0x0021af74,0x00217250,0x00202651,0x00243f76,0x00247347,0x0022f299,0x00202603,0x001b4f1d,0x001f1fee,0x001d1380,0x0008ece7,0xffdc59c1,0x0020ad1f,0x00099238,0xffd9c650,0xffdda8cd,0xffdcde4c,0xffdac837,
-0xffdf130a,0xffe1212d,0xffe0382f,0x000b023b,0x00241d03,0xffde2095,0x00090047,0xfffa9862,0x0025b418,0x0018c6c0,0x0021cb63,0x00287698,0x0039d0a3,0x00397bfa,0x0027111f,0x0028ba50,0x002aee06,0x003a191f,0x002c80dd,0x002bb7fc,0x002c402c,0x003d1458,0x004233cc,0x003e1492,0x00360e8e,
-0x002b9efc,0x002a555c,0x0003181a,0x00180b96,0x001779ce,0x000f0379,0x0008b2f6,0x000559a6,0x000c92bf,0x00120162,0x00043d98,0x000d4efc,0x00080066,0xfff6edab,0x000a630e,0x00055205,0x000178e2,0x001494b6,0x0017e8bd,0x002a29d8,0x0020ee37,0x002d60a4,0x00342abe,0x005377a0,0x0056bc08,
-0x0031da4c,0x0031c23b,0x0033470e,0x0058ecf5,0x00411618,0x0040f7ca,0x003b7e2e,0x005383a2,0x0056cd17,0x004cdf9f,0x00393581,0x002d2dfb,0x001b8d39,0x00112646,0x000e96d0,0x0002f4d7,0x00074fb7,0x0002f729,0xffe4029c,0xffe9de00,0xffe30a1e,0xffcc97df,0xffd49012,0xffde9bae,0xffd84b6a,
-0xffff0afd,0x00077f24,0xfffae135,0x0011b909,0xfffcc923,0x00191da0,0x00067b90,0x00211b0c,0x003d2ec5,0x0074e701,0x00777c0f,0x004316e8,0x003f5ed5,0x004b7ce5,0x007c752c,0x0050b519,0x004a579c,0x005329bf,0x008af5ea,0x009fe23a,0x00939c87,0x0073297e,0x00547cc2,0x003cdaa8,0x002370eb,
-0x002265a9,0x0006859f,0x00100279,0x00072861,0xffd92ad7,0xffe2f9cb,0xffda6d75,0xffd65650,0xffb91fe2,0xffbb3ecd,0xffaf741e,0xffd985f8,0xffefcd19,0xffd80870,0xfff72565,0x0061983c,0x007adae4,0x00a0632b,0x0088583d,0x00333877,0x00474a7f,0x0042d663,0x0036b19f,0x002ac6d4,0x00201a1a,
-0x00180e26,0x0049f70d,0x0048256f,0x00028954,0xffdbc322,0xffb7a6ef,0xff9a042d,0xffb211ec,0xffbd7e4e,0xffb4b4b3,0xffa50c88,0xffb3571e,0xffb50deb,0xffe33156,0xfff9a9be,0x001775b6,0x0000ebf0,0x00039f0c,0x000ca1fd,0x0012dbf4,0x0034bb53,0x0056f81f,0x005a04b3,0x004fb37c,0x0038a8ab,
-0x005581c2,0x0010a8fe,0xfff775b3,0xffd77882,0xffc9f5ee,0xffac983c,0xffacabd7,0xffddc14a,0x0022be19,0x0047635d,0x00338975,0xffd6f495,0xff964aa9,0xff9bf39f,0xffdc9bda,0x00339a09,0x0073d9d7,0x0087b7a0,0x007afd9d,0x00621dec,0x0048f8bf,0x001b7bde,0x0012023f,0x0018b43d,0x0017530c,
-0x0003e093,0xffe7f4e5,0xfff77296,0x000023c9,0xfff94298,0xfffa5f9a,0xffe4aed1,0xffc1bd07,0xff92a68a,0xffc4210e,0x00386eb4,0x0029fbdb,0xff9d0ac0,0xffded32d,0xffa80593,0xfff83af2,0x00fcad29,0x00c669d6,0x00a24c75,0x007cc3ed,0xffd8c893,0xffc9af17,0x0057028b,0x007c7337,0x00739508,
-0x0022f3b6,0x000e28a7,0xffeabf06,0xffcbe9e5,0xffdc7430,0xffe585f2,0xffe721f0,0xfff8387b,0xfff26b9b,0xffe54ce8,0xffe6a2b6,0xfff23a78,0x00017fca,0x0004db85,0x00009b44,0x00023516,0x0004e1e9,0x00075033,0xffe6e8f7,0x00037d87,0xfffe7a7a,0xffb3c64e,0xff9f23a3,0xffdfe00e,0x00336336,
-0x007ce63b,0x00990c34,0x00b12d5f,0x00ce1595,0x00aedb2a,0x0048b2d2,0x0021f73e,0x00062945,0x001226f0,0xfffe31f2,0x0004f207,0x00056f3e,0x00291a96,0x003e4575,0x00421ff6,0x0045af0f,0x003bbc9f,0x0029a7c8,0x00202d6d,0x0023fa1d,0x00255b55,0x0010bc68,0x0001e8db,0xfff9107d,0xfffdd70d,
-0xfffff775,0xfffeced8,0xfffbe3d4,0x00022042,0x0005be35,0xfff79c52,0xfff8b694,0x0003e4e0,0xffe069e1,0x00177c4a,0x004a84bc,0x00895271,0x0081626f,0x00507137,0x00362967,0x001e2439,0x000f6746,0x000c0990,0x00162ec2,0x0035f420,0x003140ab,0x0031b483,0x0032b627,0x0019abc6,0x0006332f,
-0xfff849e6,0xffee706b,0xffee14fd,0xfff018ef,0xfff10b61,0x00007b89,0x0009067b,0x0008c6dd,0x0008178a,0xffffd8dc,0xfffc7310,0xffff7d8e,0x00026f6f,0x00020bf0,0x0000ba75,0xfff77b03,0x00024894,0x00076ab1,0x0009c00d,0x00247ae5,0xffbc8e34,0xffda299e,0xffed171e,0xffebb834,0xfff51a96,
-0x00011d98,0x00110ac6,0x002d8b43,0x0034bce0,0x003fcf06,0x004a7b2e,0x0053c2f2,0x00559e5e,0x004baf8d,0x0041ed95,0x003037d3,0x00148999,0x0002d884,0xffeff05f,0xffde7bc5,0xffdeb635,0xffe909a9,0xfff9f305,0x000b1745,0x000f78fb,0x000fa1f0,0x00044889,0xfffb06c0,0xfff7af58,0xfffa327c,
-0xfffcf263,0xfffa9f9a,0xfff794a5,0xfff48c3f,0xffe94469,0xffe742e6,0x00324d0c,0x002e6d2c,0x002b32f7,0x002e4a29,0x0030ef23,0x00382821,0x003eb9ff,0x004746d4,0x003f45fb,0x00386aac,0x003028b3,0x001c7244,0x0009f18a,0xfff66c28,0xfff5c3f3,0xfff3b569,0xfff20bf6,0xfff79c30,0xfffce4d5,
-0xffff82e6,0xfffe7ca4,0xfffc6872,0xfffabaf6,0x00089590,0x0013c6dd,0x002817cb,0x0026cce1,0x002f7afb,0x00305080,0x00286f04,0x001f6105,0x001a0fec,0x001f3a97,0x00259bc7,0x002645d7,0x002a571d,0x0011029b,0x002aea7d,0x00285c03,0x0028279e,0x0025e28c,0x0023e774,0x00213547,0x0020f2b2,
-0x0014cc7d,0x000af4d3,0x0002ff4b,0xfffa3a92,0xfff38680,0xffeb9f6a,0xffed2b1f,0xffecc91c,0xffec34bc,0xffea7d11,0xffe6c33f,0xffe881b6,0xffe71232,0xfff24de6,0xfff96782,0xfff604a8,0xfff753e1,0xfffedfa5,0x0002c02a,0x0008da4b,0x000a0c51,0x0012fe40,0x001879dc,0x001a11d4,0x001bf706,
-0x00174591,0x001c8fa0,0x0022df67,0x000d0f09,0x000f815b,0x000a0f7a,0x000a7d17,0x0009d343,0x0009a492,0x000930e3,0x0009f51a,0x00052f25,0x00018284,0xfffd0dd5,0xfff9baf4,0xfff64cbb,0xfff1aa75,0xfff2bc6e,0xfff2b2d0,0xfff2e96c,0xfff3c122,0xfff3d8e5,0xfff47297,0xfff99a9c,0xfff18ac8,
-0xffd8ab6a,0x0001b683,0xfff74a23,0xffd88f76,0xffdc6742,0xffdfe892,0xffe37811,0xffe6ad6e,0xffe97853,0xffee2901,0x00034019,0x001194f5,0xffe9aecf,0x00016089,0xfffa7c2b,0xffe96be2,0xfff7ec60,0xffe4feee,0xffefc823,0xffedc62d,0xfff3a8d9,0xffed9a9a,0xffea1c52,0xffe32adc,0xffe49512,
-0xffe691b3,0xffef92b7,0xffeb7ca9,0xffeb6d82,0xffe9b696,0xffed1935,0xffed7ab2,0xffecbe8e,0xffeaa204,0xffed33d8,0xffe38211,0xfff7f63a,0x0010280e,0x00361c4e,0xffedb6a8,0x000a9b61,0x002b1cc5,0x002c6bda,0x0029fc54,0x00220440,0x00276589,0x0028bea6,0x002348df,0x000a713d,0xffeb48a1,
-0x0030e13e,0x00127354,0x00172b30,0xffe4891a,0xffebe603,0xfff20b19,0xfffff6ff,0xfff67eaa,0xffeb9a01,0xffd95fcf,0xffda41d8,0xffdff57d,0xfff55c1a,0xffe8e6a2,0xffe76079,0xffe5e572,0xfff28975,0xfff6fd3c,0xfff4de2f,0xfff357f6,0xfff17603,0xfff04d78,0x001f2aa6,0xfffa5bc8,0xfff718ff,
-0xfffbc398,0xfffb5b97,0xffe370f2,0xffeae33d,0xffe8aaa0,0xffe70645,0xffe5ef45,0xffe37435,0xffdf0895,0xffecd034,0xfffb2729,0xffee90e9,0xffe52b42,0xfffbd068,0xfff90488,0xfff22860,0xfffef86d,0x00126269,0x0001543b,0xffedb839,0xffc7ec7b,0xffc6b064,0xffcf70a8,0x0001583c,0xffec3254,
-0xffed1961,0xffe46be1,0xfff6912a,0xfff9eb2a,0xfff38370,0xffef514e,0xffe78ead,0xfff89a7b,0x0000a9a9,0xfffad250,0xfff309ef,0xffef2a35,0xfff9592d,0xffce9131,0xffe76a86,0xffcddc5a,0xffc002e7,0xffcb864e,0xffdc5bad,0xffc7885e,0xfff6db92,0xfffbcc8b,0xfff0f471,0xfff2d576,0xffea6bd0,
-0xffe867f9,0xffe5afd1,0x0001b856,0x002cac81,0x001e7526,0xfffc47a5,0xffc10254,0xffba8141,0xffcf5431,0x001477bd,0xffeb5d11,0xffdd936a,0xffdce1dd,0x0004af1d,0x001910a5,0x00156c83,0x00112104,0x000ac2d8,0x0015fa1c,0x0024f40a,0x000bf4a9,0x0001981f,0xfffa18dc,0xfff8f819,0xffd37a39,
-0xffe2e332,0xffe2eb50,0xffdb79bb,0xffc2a2ab,0xffc1a696,0xffaf9baa,0xffd8d892,0xffe7c3f2,0xffcc4b65,0xffd57d89,0x0054f72e,0x0034e8e9,0x004390a0,0x002d0403,0xffe96302,0xffd8ba63,0xffc447ce,0xffafe673,0xffb16d98,0xffb63673,0xffba778c,0xfff88018,0x00142bf5,0x00050dbe,0xffcc3b23,
-0xff9e55e3,0xff69a70e,0xff712e3b,0xff69344a,0xff7d9edd,0xff9fc7ba,0xff9ae021,0xffaa4d5f,0xffe4e35e,0xffff8aaa,0x00127387,0x0003f3b0,0x00062fb6,0x000e42ea,0x00120fba,0x002e997c,0x0046e654,0x004ccce2,0x004acf3b,0x0039d99d,0x0048639e,0xffed5093,0xffc7f2c5,0xffc166fe,0xffb7dee1,
-0xffb38e2f,0xff8e05a3,0xffba45e5,0x0016d4cd,0x00300b55,0x0025ba24,0xffdbab47,0xff9a8277,0xff9419f1,0xffbd5d2d,0xfff02500,0x0011a3ef,0x0008eaa6,0x0024cc1a,0x00225405,0x002c6f28,0x001a9e02,0x000aa75d,0x000e1438,0x0008ebc9,0xfffa433b,0xffe97df4,0xfffa6398,0xfffea7f7,0xfff8b758,
-0xfff9a51d,0xffe92834,0xffc74c52,0xffa10322,0xffbdbd65,0x00280a2d,0xfffb4462,0xffb865e6,0xffe9d902,0xff9e5aab,0xffc3d1fc,0x0055afbc,0xfffd0c04,0xffc6298d,0xffb5b230,0xff49f7e8,0xff639ba6,0xfff3cc47,0x00018a21,0xffeaa36d,0xff9ae2a7,0xffa31fd1,0xffaf8449,0xffc4acda,0xffd194c3,
-0xffcd8560,0xffc7ccdb,0xffde6bd3,0xffe0ab0e,0xffdf1997,0xffe18468,0xfff34af9,0x0003c842,0x000430ca,0x0000a5b7,0x0003ce89,0x0003647d,0x000c2222,0xffe89bd8,0x0009d1f5,0x0002a329,0xffa8dcc9,0xffae6cb5,0xffccc42d,0x0053ce74,0x002be50c,0xfff2b98c,0xff933ced,0xfff3a661,0x00219b8d,
-0x0025f32f,0x000444a4,0xffe911e9,0xffef2305,0xffd8f85d,0xffdf754e,0xffe78922,0xfff2255c,0xfff45549,0xfff51ad6,0x00068a9d,0x0015db4b,0x001e019e,0x00286df4,0x001dcca8,0x001c9d21,0x000a0acc,0xfffeb53a,0xfff9835c,0xfffea7db,0xfffede73,0xfffddb9e,0xfffb4705,0x0000833b,0xfffc8d78,
-0xfff5e210,0xffe651db,0xffe1cb38,0xffb457db,0x003e594d,0x0009da0c,0xffd9f9d6,0xffdc07b8,0xffb269a3,0xff9cd512,0xff8786c8,0xff8c7a97,0xffa367a1,0xffb757e6,0xffca201a,0xffde1ce5,0xffeca01e,0xfff86d11,0xfffd764a,0xfffe5991,0xfff78da1,0xfff460a8,0xffeaf363,0xffe2ec8f,0xfff1e09d,
-0xfff8bb78,0x000c5b06,0x000962b5,0x00058ee1,0xfffe2b34,0xfffea95f,0x0001a283,0x0005055b,0x000322dd,0x00012472,0xfff4fcfe,0xfffdea24,0x00069deb,0x001e698b,0x00189d5f,0xffe494f5,0xffb7e581,0xffb3137b,0xffbaa1b0,0xffb9563a,0xffbe2ce1,0xffc6738e,0xffcdd26e,0x000750c8,0x002bb888,
-0x003fe7ff,0x003b3f10,0x0032d4cb,0x0025c3eb,0x00198beb,0x0007a5a2,0xfff31b48,0xffe5144f,0xffe044df,0xffe4225b,0xffe06c44,0xffe6f24a,0xfff5fde0,0x00020592,0x0008a004,0x00081049,0xfffaea7c,0xfff53476,0xfff23bb8,0xfff3e141,0xfff5025c,0xffef9af1,0xffef59bb,0xffe34503,0xffde4d01,
-0xffcaca9a,0x00121191,0x000655b9,0xfffb81c9,0xffff9335,0xffff0cd4,0x000523d0,0x0009a510,0x000abff0,0x0009529e,0x00054da3,0x0006509d,0xfffec31b,0xfff9951e,0xfff334d6,0xfff0dc5a,0xffeecb01,0xffec50e1,0xffed99a5,0xffea5e16,0xffebc506,0xfff82c45,0xfffad0b5,0xfffbe561,0x00079834,
-0x001748de,0x0027193e,0x002abf08,0x0024a96e,0x002b35d5,0x001d34bf,0x0017c5c9,0x000a92fe,0x000fceea,0x0015d6c7,0x001bf905,0x00122fb4,0x002fbfda,0x001d0590,0x0018caa2,0x001180fb,0x0009478e,0x00010f70,0xfff90710,0xfff32c06,0xfff190d3,0xfff13ad5,0xfff08437,0xffef65c3,0xffee561a,
-0xffec4f88,0xffec34bd,0xffeba731,0xffeb0aa3,0xffe96791,0xffe9c96a,0xffe413fa,0xffec620b,0xffe86de3,0xffea3cef,0xfff27781,0xfff2ae55,0xfff035e0,0xfff2ce7d,0xfff7618d,0x000129f6,0x0002e9c9,0x000abd78,0x0013bbe5,0x0013ca01,0x0018a77c,0x0018b862,0x001667aa,0xfffa3b2e,0xfff51e38,
-0xfff57bdb,0xfff21c8a,0xfff0a92d,0xffeeb102,0xffecab6a,0xffe94b31,0xffe90d48,0xffe7a9cd,0xffe631b6,0xffe56621,0xffe4ab2b,0xffe3e6c9,0xffe42998,0xffe41f8d,0xffe466ef,0xffe43c86,0xffe5505a,0xffe3f53e,0xffe782ad,0xfff43463,0x000877d5,0xffe8f102,0xfff90780,0x000f5700,0x0010bbe2,
-0x00112fb7,0x00104ec4,0x00126773,0x0012ea21,0x001487c6,0x0005407a,0xfff6f8b8,0x0018dcd8,0x0008510f,0xffe0ba17,0x0019d2cb,0x00024851,0x0025e1a9,0x00176712,0x001a82f4,0x001a4e06,0x001e4fdf,0x001e1f1b,0x0018a85e,0x00194b79,0x001a8659,0x0022b0fc,0x001cec9c,0x001c7356,0x001b39b0,
-0x001f8079,0x0020136a,0x001f3712,0x001ca309,0x001811c9,0x0021f8e4,0x0000527c,0xffe8e6a9,0xffd17a20,0x000764b9,0xffe87f39,0xffcd4b69,0xffce3fec,0xffccebce,0xffcd08d8,0xffcd7488,0xffce8157,0xffcc0d77,0xffeba004,0x000e9272,0xffd1679d,0xffe6c9e5,0xffddb7d4,0x001edf6b,0x00177480,
-0x00193f21,0x001d99ea,0x002a6bf8,0x0029722a,0x001ba943,0x001d3c92,0x00220344,0x0035975e,0x002472f2,0x00225ef5,0x00237d8a,0x0033896a,0x0038ac1e,0x0036ad38,0x002e7345,0x002a548f,0x0022b59a,0xffecab80,0x000d4190,0x00060c98,0xfffff18f,0xfff8e1be,0xfffa12a5,0x00057302,0x00077806,
-0xfff2946a,0x0007ef9a,0x0008ac8d,0xffee13a8,0x00048957,0xfff9853b,0xffef19e3,0x000b9936,0xffff4911,0x0025615e,0x0023fa8b,0x0022c214,0x002755a6,0x003c7ec3,0x003c28c2,0x0021ea24,0x00201286,0x00249845,0x005250f2,0x0032cef5,0x0031c740,0x002bdd78,0x0045723b,0x00499da7,0x004396cf,
-0x00320728,0x002e77bb,0x0015bcd7,0xfffdd826,0xffffc09c,0xfffab7be,0xfff96fc0,0xfff03034,0xffdffec7,0xffe0e8c2,0xffe871b0,0xffbb5287,0xffdc9ef0,0xffdae105,0xffcd7abe,0xfffaab3c,0x0001dd31,0xffea9ed9,0x0003dbd6,0xffe6b7ed,0x0015717a,0x000a910f,0x001023b4,0x002573a5,0x004cb75e,
-0x004a200e,0x00252119,0x00208ef1,0x0036b8ab,0x0075f2bb,0x003e6302,0x002dc949,0x0035d36b,0x006b8aa0,0x00836641,0x007dfc75,0x0064806f,0x00561f9d,0x003af8ec,0x00131753,0x001e9697,0xfff5d00c,0xffffeedc,0xfffd3860,0xffdb3820,0xffeaeae8,0xffe6e601,0xffe508bd,0xffceba82,0xffd1b7f4,
-0xffb4d803,0xffe5b701,0xfff0eda3,0xffccfe37,0xffed1bc9,0x00449b7f,0x0076bc34,0x00a936bf,0x008e99ab,0x004b745b,0x00412690,0x0033a4f7,0x0039e6fd,0x002875a7,0x001b850c,0x0016112a,0x004874f8,0x00599322,0x003c34ce,0xfff913f0,0xffca2ced,0xffb6d768,0xffb34616,0xffbc41fc,0xffa5a0f2,
-0xff8f51e8,0xffb6db96,0xffb6518c,0xfff90e76,0x00073e2c,0x000c6e5c,0x0006dfc0,0x0007be51,0x000d3a5a,0x0011efa6,0x002a4a29,0x003a8004,0x0049c264,0x004770ed,0x003afd5f,0x0042a5df,0xffe71b86,0xfff796f2,0xfff25e72,0xffd1ee0b,0xffb6a0cf,0xff98e5c7,0xffc055fb,0x00137aee,0x0039de9b,
-0x003b48a5,0xfff6ee9c,0xff9db6b6,0xff8ea3e7,0xffc791c5,0x0010d443,0x004fd145,0x00716e79,0x0069437a,0x005c1ce8,0x0034b808,0x000b0ac1,0x00064199,0x000e4bc2,0x00108d7c,0x0000f50a,0xffef1443,0xfffce430,0xfffc68b2,0xfff96c2e,0xfff8c7b8,0xffef62ca,0xffd51034,0xffaeb737,0xffd73afc,
-0x002ee665,0x00111195,0xffc3e97d,0x00109251,0xffb7f9e4,0xfff6b9d3,0x00d60ad1,0x009c0656,0x00831e83,0x00760fcd,0xffeb2a34,0xffd414fb,0x00365d53,0x00843833,0x00881075,0x002baa7c,0x0016b444,0xfff35d25,0xffd668f0,0xffdbfeb4,0xffecbbd2,0xffe40813,0xffeec052,0xfff32441,0xffe2bb6d,
-0xffeb5137,0xfff7fec7,0x000556b3,0x0002d572,0x00018b1b,0x00042c53,0x00025a9e,0x000c96b1,0xfff0c702,0x000bbbcc,0x0008b5be,0xff9a5579,0xffbbf524,0xffbcf434,0x0074e1da,0x0067f7f2,0x004a720d,0x003c488f,0x00797ccd,0x008c1ee7,0x00734cdc,0x0021ea3b,0xfff65371,0xfff925e3,0xffe9bec5,
-0xfff1edef,0xfffc3309,0x00143f5c,0x0023b5ca,0x00304001,0x003b817a,0x003e2609,0x002d5b01,0x001bdb45,0x00221da5,0x00203f5c,0x0009cf1d,0xffff9dd9,0xfffce1ab,0xfffe6247,0xfffdfd57,0xfffe11a6,0xfffba8b3,0xffff1beb,0xfffe0fdf,0xfff7ffb3,0xffee2c6e,0xffc0af88,0xff97cdd5,0x001e28fc,
-0x002e6f0f,0x005cb72a,0x005a8ffe,0x003b8d71,0x001bbfb7,0xfffc9846,0xfff0446c,0xffeacdcf,0xfff2f045,0x0007248e,0x000a4c4b,0x0011725d,0x001ae081,0x000e9677,0x00069f0d,0x00045054,0xfff8328c,0xfffa37f5,0xfffc0e67,0xfff96faf,0x000ebafc,0x00154565,0x000d0725,0x000891a4,0x0000573d,
-0x0000bb96,0x0003636e,0x00033ba5,0x0003b342,0x0001e7bf,0xfff69890,0xfffaea14,0x0005b8a9,0x0019a79b,0x0036c6da,0xffb20ba9,0xffd3da41,0xfff73aa3,0xffeb4cef,0xffeca524,0xfff05532,0xffff6d9b,0x0016026d,0x00238972,0x002f6901,0x0037e040,0x00409fc6,0x00413a9d,0x00392e3e,0x0030098a,
-0x00210c2d,0x000c3f2e,0xfffd87a5,0xfff0d729,0xffe1a82a,0xffe1a9c1,0xffebe65a,0xfff6f225,0x0008ea9d,0x000c7d7b,0x00071d91,0xfffc36b8,0xfff577a2,0xfff85dd8,0xfff8d537,0xfffa143e,0xfff503b2,0xfff1831c,0xffeae1e7,0xffdd63ec,0xffd870da,0x000d1df2,0x000dceb9,0x000ed120,0x000fcd1e,
-0x0015234f,0x0021068d,0x002b394d,0x0036976c,0x003117c2,0x002d800a,0x002930c2,0x001c25d4,0x000fc4f5,0x00019e5a,0xfffffd63,0xfffd3f71,0xfffbb42f,0xfffd6206,0x00027a71,0xfffca691,0xfff9f8a5,0xffff495e,0x0002f5e4,0x000df046,0x0016c74a,0x002aa2e0,0x0023b9df,0x00293cb7,0x0020a053,
-0x001b4620,0x000cb34f,0x0005ae6d,0x00089709,0x000a5dce,0x00073b09,0x000c07fa,0x0014d69c,0x002f7967,0x002f36f1,0x002d82ae,0x002b15c9,0x0029c221,0x0027f084,0x0028247e,0x001de0a6,0x00154f3f,0x000d9453,0x0004ccd8,0xfffccf62,0xfff2d7e0,0xfff487a7,0xfff48af3,0xfff4ba96,0xfff33246,
-0xfff1bb29,0xfff2d90c,0xffe8a9c9,0xfffa740c,0xfffea1f6,0xfffe9034,0xfffe9ba1,0x00093da3,0x000e0319,0x0010fda6,0x000f3bc6,0x001ae861,0x0021c251,0x002098ce,0x002246b2,0x001c3625,0x0020408f,0x0029593b,0x0004a3b2,0x00152dbf,0x000ec9f2,0x000fd0ee,0x00100157,0x000f84f9,0x000ef5e0,
-0x000fae7a,0x000bb22b,0x00088a7a,0x0004b743,0x0001bab7,0xfffee634,0xfffac993,0xfffbf1d8,0xfffbb8f3,0xfffbd311,0xfffc8fa2,0xfffc0009,0xfffff622,0xfff4944a,0xffe7e2ef,0xffd7192a,0xffff2742,0xffedccaf,0xffd9a0e0,0xffdb4348,0xffde7591,0xffe2d7f9,0xffe31227,0xffe50c77,0xffe91d48,
-0xfff7ae19,0x000b8ec0,0xffe94452,0xfff64c81,0x00022639,0xfff44ccb,0x0011dcde,0xffed754f,0xfff87737,0xfff7cea7,0xfffbce1f,0xfffadf16,0xfff85ed5,0xfff040e2,0xfff163cc,0xfff2c268,0xfffb89d1,0xfff677f7,0xfff68161,0xfff5dbfe,0xfff8277a,0xfff8651a,0xfff828d1,0xfff6262d,0xfff748e2,
-0xffecbd17,0x00113a84,0x0021dd37,0x00280212,0x00060c75,0x001d3cab,0x002083c2,0x00243026,0x0022a63f,0x001960f1,0x0023eb21,0x0025caad,0x001f08ac,0x001ed036,0x000504e4,0x0024a64a,0x00258667,0x00218c81,0xfff55e93,0xfff2240f,0xfffb9bfb,0x0005213b,0x000987b3,0x00033261,0xffedefea,
-0xffed9e46,0xfff158dd,0x00065c7e,0xfff540b3,0xfff1bbcd,0xfff2eef5,0xfffd3e26,0x00035b8a,0x00041b17,0x0003d446,0xfffd3aff,0x000180e3,0x0024d98e,0x0001f456,0x0006ec7d,0x0000a7ea,0x00018ef5,0xfff3acfd,0xfff7fb38,0xfffbe53b,0xfffa1686,0xfff9bb12,0xfff2b521,0xffeb614f,0xfffb2cf8,
-0x0006cebe,0xfffcb82b,0xfff2915b,0x0010532e,0x00074a37,0xfff57d66,0x0008fa1e,0x00129ba5,0x001c16c5,0x0011e48a,0xffe55ebc,0xffe3ef69,0xffe78276,0x001782ea,0xfffc4c05,0xfffcde56,0xfffaac01,0x000802e1,0x000be548,0x0008723f,0x00034d6b,0xfff5e8aa,0x0007eb38,0x000e85ee,0x00010247,
-0xfffc7619,0xfff0fd6d,0xfffb0a1e,0xffd87fd4,0xffeda22a,0xffd3e3f2,0xffc7026f,0xffd55bd8,0xffe9a3ee,0xffcb6e30,0x00006051,0x00067708,0xfff97685,0x0000a166,0xfffac94a,0xfff39541,0xffe3a05d,0x00025372,0x001f2179,0x003c61b7,0x002e16a9,0xffea95c8,0xffe148c2,0xfff1577e,0x00310d34,
-0xfffd472b,0xffe858a1,0xffef8125,0x00145ff2,0x002e3351,0x00317365,0x002d907c,0x001ac234,0x00257459,0x0027715a,0x0003c7be,0xfffe4537,0xffedf6c8,0xffef6db8,0xffd6cce5,0xffec4448,0xfff0a137,0xffe72701,0xffd99ac4,0xffd61199,0xffb8e57b,0xffe4a034,0xfff359a3,0xffc91c2b,0xffdf5f78,
-0x0071770a,0x005694af,0x0059107d,0x004f6408,0x001caef8,0xfffc69bd,0xffe81531,0xffeafb53,0xffcd7169,0xffbe618b,0xffb9d51b,0xfff04252,0x00174e38,0x00230ee0,0xffe0d14c,0xffadd2c5,0xff748ad1,0xff7ba35a,0xff78a153,0xff9ae75e,0xffb29f7a,0xffa65e5c,0xffba529b,0xfffef14c,0x000fe498,
-0x0009369c,0x000886fd,0x0006f554,0x000d4196,0x000f28b6,0x00245ce1,0x002e2d2a,0x0040416c,0x004fdfb4,0x004d526d,0x006058f0,0xffede885,0xffd4fd78,0xffbddc9a,0xffbf5b96,0xffbc82ba,0xff9ec607,0xffc80e3f,0x00217336,0x002fe7be,0x002f472b,0xfffc1e8f,0xffa9c01f,0xff93a2d7,0xffbd305d,
-0xffe62e69,0x00124ebf,0x0029b4e0,0x003fadac,0x002e147b,0x002925e5,0x0013bf29,0x000503ec,0x000f3317,0x0003eb67,0xfff7e201,0xfff274ad,0xfffdc3b1,0xfffb703d,0xfffa2238,0xfff7c078,0xfff4b798,0xffdd1fbd,0xffc01549,0xffd494eb,0x002acceb,0xfff1f3cb,0xffdfe6d0,0x0021b25d,0xffc1dd94,
-0xffebcfc8,0x008f370e,0x00503769,0x00270f18,0x0015f05a,0xff829257,0xff7462ba,0xffdb2316,0x001fede9,0x00278ed6,0xffda5376,0xffcddc7b,0xffc78ead,0xffce5c8e,0xffd3859e,0xffce6f0c,0xffda282c,0xfff027d5,0xffead7dc,0xffea8161,0xffef3201,0xfffcaa84,0x0005a9b7,0x00022635,0x0001fbbb,
-0x0004c7fe,0x0001a8f3,0x000c81af,0xfff8d3f9,0x0011bb8d,0x0009a3e5,0xffa96e63,0xffc8cecb,0xffbaea1d,0x0091314b,0x003a8b02,0x00024268,0xffb33073,0x000a7609,0x0044abf3,0x005d85d6,0x002a586d,0x0006c5b7,0x00008932,0xffed02b5,0xffee024e,0xfff40d2d,0xfff89548,0xfff9d356,0xfffe4dd7,
-0x00116989,0x001b9bf0,0x0026644a,0x002d7d20,0x0020abf1,0x0019bb05,0x00056ca0,0xfffea20b,0xfffd0463,0xfffe7c6d,0xfffd5292,0xfffd653d,0xfffb74ee,0xfffea804,0xfff83a65,0xfff96213,0xffe2a69a,0xffa33480,0xff756852,0x0061a463,0x003ca7cd,0x001b3ccb,0x0020adba,0xfff9bb22,0xffe5d513,
-0xffc0d366,0xffaee2e8,0xffba3895,0xffca5ae8,0xffe45240,0xffeec93a,0xfff9a843,0x0008bc6f,0x00070ff3,0x00072859,0x000283e5,0x00009ecf,0xfffa4bbb,0xfffa0fb0,0x000d4bf5,0x000f32c8,0x001790c1,0x000e0961,0x00066b09,0x0001334f,0x00025ed7,0x0003fc9a,0x00052f06,0x0003ec63,0x00049ddd,
-0xfffc4729,0xfffe98b2,0x000ec0f7,0x0034ad1e,0x0051fbe0,0xffedcb31,0xffdf4dff,0xffdd3ff8,0xffd8fa75,0xffc92179,0xffc01373,0xffc4efb2,0xffd25215,0xfffced8b,0x00163ace,0x002230da,0x0027b7f5,0x0029574d,0x0024d5d8,0x001befaa,0x000ad590,0xfff246aa,0xffe56ace,0xffe14cc9,0xffe631dd,
-0xffe4e7af,0xffed99bc,0x0001db5b,0x000834b6,0x000779bf,0x00011c97,0xfff71759,0xfff507d0,0xfff397f3,0xfff70241,0xfff686dc,0xfff0ab5d,0xffeef2ea,0xffe6c441,0xffe1c0cc,0xffd99ac6,0x000794db,0xfff44d47,0xffe6d323,0xffeeedb2,0xffef8d0a,0xfffed98b,0x00083ac0,0x000e96a4,0x00103913,
-0x00119e8e,0x001568c4,0x000d8f17,0x00068d98,0xffff8286,0xfffb78f8,0xfff8ade8,0xfff55981,0xfff6c981,0xfff15678,0xfff4140c,0x0003e79a,0x0004ff24,0x0006bd25,0x000daf79,0x001b7287,0x00263c2d,0x0026df9c,0x001c0fe3,0x00230bd7,0x0011a52a,0x000db5e5,0xffff00b3,0x0005509c,0x000ba311,
-0x00119095,0x00073e2b,0x0035736c,0x002711aa,0x0022ccb6,0x001e4a83,0x0016bfb6,0x00110339,0x000b3e90,0x00087393,0x0003155b,0xfffe5c11,0xfffa3a00,0xfff67b9d,0xfff4231d,0xfff1436f,0xfff18338,0xfff11d7d,0xfff05432,0xffef3a6a,0xffeed02b,0xffeb5c3e,0xfff84826,0xfff693ef,0xfffec106,
-0x00056d55,0x000a24e5,0x000d0534,0x000c7e22,0x001203f6,0x0019a9e3,0x001699a6,0x00184bd3,0x001f1f89,0x001dc12f,0x00215bcc,0x00235dde,0x001f1a04,0x000d5234,0xfffe6517,0x00001585,0xfffe40ae,0xfffdde54,0xfffc6d25,0xfffac5ab,0xfff8b810,0xfff71cbc,0xfff5a094,0xfff3c86d,0xfff288b3,
-0xfff0fafa,0xffef02ef,0xffef7ebe,0xffef81aa,0xffefc8f1,0xffefce44,0xfff0d85b,0xffede08b,0xfffc5e9a,0x00081ae5,0x000c5a50,0x00010a18,0x001025bc,0x001515c9,0x0015f632,0x0015d21f,0x00139b12,0x001715fe,0x0017b5b6,0x00181200,0x00157406,0x0009be02,0x0018f9de,0x00182194,0xfff14c89,
-0x00059d66,0xffeb0619,0x0010e680,0x0006cb5d,0x00078d3b,0x00083584,0x0008571f,0x0006eb01,0x00021ebf,0x00029c5e,0x00044ba2,0x000dec31,0x000758d5,0x0006e04c,0x00061e36,0x00096de7,0x000a3177,0x000a84c7,0x00080793,0x0006401f,0x000d09fc,0xffe9d803,0xffe1a8bf,0xffeec688,0xffec96f0,
-0xffde5d5d,0xffe7c103,0xffe64322,0xffe46fca,0xffe38f65,0xffe30c43,0xffe35233,0xffded51d,0xffe1fa02,0xfff3517f,0xffeb64e7,0xffdfae12,0xffdf5a60,0x0005bc37,0x00078fe8,0x000576b8,0x000a507d,0x000d0e5a,0x0008d636,0xfffd4a33,0xfffd6e90,0x0003ba89,0x001a9cab,0x0007c8e7,0x00046905,
-0x0005f421,0x0011ef68,0x0016f948,0x0018ad84,0x001276bf,0x00137a9b,0x0009d13c,0xffeeaadc,0xfffde09d,0xfff5b5b9,0xfff2ed47,0xffee09b3,0xffec50f9,0xfff65bf7,0xfff47f30,0xffe29e0d,0xfff8c62a,0xfffd15eb,0xffe5117b,0xfff9572f,0xfff30840,0xffe47640,0xfff84fd5,0xffed9ecf,0x001200e4,
-0x0014e662,0x000f7f5f,0x0015f4c9,0x0017fefa,0x000eadad,0xfff90f9f,0xfff49fd1,0xfffb83dd,0x002f2fe9,0x000ccc9c,0x000bf07b,0x0006d60e,0x001b3b88,0x001fcbf7,0x00202331,0x00142173,0x00147ba7,0x00061047,0xfff0f070,0xfff27889,0xfff583ea,0xffe9105b,0xffe3495c,0xffdc723a,0xffde7628,
-0xffe517fd,0xffb70d39,0xffe0f35a,0xffdcd5ba,0xffc888d0,0xfff6d759,0xfffc3e1a,0xffe379e5,0xfff45e25,0xffdb13f6,0x00037595,0x0002e0e7,0xffff5f0a,0x0013389d,0x001fd1fd,0x0011f1ad,0xfff146f4,0xffe793c3,0x0002338b,0x004a8ec2,0x000e792e,0xfff55964,0xfffadc2d,0x00249623,0x003e10fe,
-0x0044beb4,0x0037dff3,0x0036fd63,0x002724eb,0x0008edc0,0x000f4951,0xffeee3e3,0xffed5453,0xfff27f61,0xffe238a1,0xfff3a1e6,0xfff5517d,0xfff4f8af,0xffe481c9,0xffe590af,0xffc4e1f9,0xffee95a2,0xfff0c313,0xffc9454b,0xffdf29ce,0x00309be8,0x0058cb27,0x0086a66f,0x0073b851,0x004abd72,
-0x0018cc3e,0xfffdde95,0x000e267d,0xfffe866f,0xfff66205,0xfff4a618,0x0030b311,0x0058f72b,0x0064caae,0x000e4dbb,0xffd4eb62,0xffbe79ff,0xffa46418,0xffa4fa6d,0xff988315,0xff91e818,0xffb8916a,0xffbf4cc2,0x000ab147,0x000fe856,0x0004823c,0x00085a7f,0x0004cd15,0x00092739,0x0009a1b3,
-0x001b2f85,0x001d9def,0x00348a69,0x003d6a71,0x003c67f0,0x00335397,0xffcedea0,0xffee8709,0xfff9d97b,0xffd267f8,0xffc1dd3a,0xff8cc007,0xffab1756,0x000c255c,0x002732ec,0x003790b8,0x00141736,0xffade0fa,0xff8afb9e,0xffb383e4,0xffe66eb7,0x0016de8b,0x0036cfb9,0x003c49e9,0x0039f4ab,
-0x0019ce6c,0xffff4277,0xfffbc800,0x00060411,0x00051e11,0xfffaf6dd,0xfff720d4,0xfffe7268,0xfffbdd11,0xfffc506a,0xfff9878f,0xfff8b36b,0xffeb7379,0xffcb3009,0xffe2af06,0x001e2cca,0xfff49218,0xffe838cf,0x0039ec4f,0xffd822f1,0xfff7f01a,0x007f5e83,0x004e0d55,0x00361986,0x0037ab5f,
-0xffcf0175,0xffbdc4a5,0xfffc4f48,0x0058878f,0x0065b2b1,0x001413a9,0xfffd4061,0xffe6bb13,0xffdf1683,0xffdc9a67,0xffed8892,0xffe41549,0xffebdae2,0xfff41bce,0xffe5b7db,0xfff2c7dd,0xfffe9705,0x000493f2,0x00016ffd,0x00021ff9,0x00032d5d,0x0001c01c,0x00078029,0xffff0b40,0x000b392b,
-0x0009ec50,0xffa342df,0xffd3b887,0xffb01791,0x008eafe2,0x001ec61a,0xffcf48d7,0xff94935e,0xffe2eaa8,0x003171c0,0x0084ab75,0x00280ee3,0xfff6a3be,0xffe2b625,0xffdab970,0xffe03623,0xffedaaf1,0xfff362de,0xfffa3964,0x000b267c,0x001d22b5,0x002e2bc9,0x002a6032,0x001cb56f,0x001e4b23,
-0x00158ffc,0x0001f707,0xfffd5d7c,0xfffe922d,0xfffdf1f3,0xfffd9846,0xfffe0db5,0xfffcae1e,0xfffef5a6,0xfffbfe34,0xfffaf7ab,0xffe5a9df,0xff8919d2,0xff66c4f1,0x004311db,0x0021211c,0x00154e95,0x00114e9f,0x000317d5,0xffe60246,0xffc50ead,0xffbbbdcf,0xffbc801e,0xffc7ea88,0xffd2dd61,
-0xffdf3d20,0xffed7043,0x0000708c,0x0004b409,0x000905dd,0x000d113b,0x0003d92d,0x00054928,0x0005bab6,0x000682a0,0x00187070,0x001bbb94,0x000eb837,0x0007406e,0x0000be52,0x00036d76,0x0004108a,0x0003814e,0x0003108c,0x0003c6ef,0xfffadf67,0xfff9030a,0x0008bb88,0x002c5ae6,0x004f2ac9,
-0xffc6892f,0xffd458e5,0xfff1f182,0xffe4a006,0xffde7c24,0xffda4db2,0xffe5721f,0xfff082c1,0x000ddd43,0x001d791e,0x0023b6e0,0x00267250,0x002328cf,0x001c5de0,0x001406a0,0x00080ee4,0xfffa6ce6,0xfff15d73,0xffee74f0,0xffe8b0ac,0xffe6f2cc,0xffefb7b5,0xfff71546,0x0004533d,0x000652fa,
-0xfffea9e9,0xfff72da1,0xfff489c1,0xfff8d664,0xfff8c42c,0xfff871c2,0xfff11e97,0xffed6e11,0xffe2a8ea,0xffd7f225,0xffcfac26,0xffed7619,0xffecbd7a,0xffee27a9,0xffedd51b,0xfff1b792,0xffff4638,0x000a14de,0x0013dc3a,0x0014e338,0x00178bbb,0x001b7908,0x0017df37,0x0014a073,0x000f6ed3,
-0x000b4ade,0x00070c23,0x00041060,0x00012933,0x0001e181,0xfff71419,0xfff88392,0x0002a327,0x0009ba08,0x00103d6f,0x00173bd6,0x0024130f,0x001d30ce,0x001c5247,0x001371a4,0x000e792a,0x0000ef09,0xfff80ad8,0xfff8e257,0xfff7e207,0xfff4eb5e,0xfff3e63d,0x001d4e54,0x0027cc89,0x00286622,
-0x0024c46b,0x00218b26,0x001fc748,0x001dc06e,0x001d0d66,0x00185d5e,0x0013d49b,0x000f08cd,0x0009a004,0x0003f615,0xfffc6eca,0xfffd5ada,0xfffd94b9,0xfffe162d,0xfffcf80b,0xfffe2e5d,0xfffc47d7,0xfff16152,0x0000c149,0x00023585,0x00078160,0x0007770b,0x0010af39,0x0013f545,0x00138ce2,
-0x0011f3ac,0x0019bbc6,0x001ff3a3,0x001ebe71,0x001f706d,0x001c12d6,0x001d5cc8,0x0023f908,0xfffdf3d1,0x0010a9e1,0x000cb922,0x000d19b1,0x000da98e,0x000c92e2,0x000baf9e,0x000b5053,0x000998ea,0x000814b2,0x00063810,0x0004c729,0x00037e3e,0x000162f6,0x000229bb,0x0001daa6,0x0001dc56,
-0x000205bb,0x00015d05,0x0005f78e,0xfff35d89,0xffec4b02,0xffed712b,0xfffc0abe,0xfff152d0,0xfff36bf0,0xfff27045,0xfff3ed61,0xfff679e1,0xfff4cf52,0xfff520f4,0xfff6e13f,0xfff6ec50,0x0002a8cd,0xfffbd469,0xfff79d58,0x0003e654,0x000b8346,0x001e9a40,0x000a512f,0x000bcc64,0x000d91b0,
-0x000e4c45,0x00130165,0x00121ca7,0x000aa7a1,0x000b04fd,0x000bbbe4,0x0013db76,0x000dac8e,0x000d84b3,0x000db93a,0x000f5194,0x000f9569,0x00102755,0x000dc42c,0x000bbfb6,0x000863ae,0x001cb917,0x0018ee73,0xfffe72f2,0x0017a493,0x00163535,0xfffb2df4,0xfffe8b5a,0xfffe45be,0xfff8a611,
-0x0001df1e,0x00039815,0xfffe2ebe,0x001a1694,0x001b2861,0xfffd82d3,0x001b5b9a,0x00104f05,0x0012ce08,0x0007579d,0x000f9a14,0x0012ecc8,0x0024abe8,0x00243bfe,0x0010dce4,0x000f3947,0x00115fa1,0x0024bdce,0x00105429,0x000b5c61,0x000e64cd,0x0016d181,0x001d9377,0x00217d9d,0x001ea4a8,
-0x00160295,0x00191460,0x0012e301,0x000b8413,0x00131d09,0x00038c9b,0x00025c01,0x0004c109,0x000681d5,0x000ca682,0x00050a1b,0x000e696f,0x000806f4,0xfff878f8,0x000aace2,0x000b57f6,0x000419fb,0x0007921e,0x00196eaa,0x001de051,0x000cb126,0x001cdd19,0x001c79c6,0x003d3168,0x003d9be8,
-0x00162110,0x001247be,0x00116840,0x003d01c1,0x001be953,0x001b688b,0x001cdaf1,0x0027e0e1,0x002c1f21,0x002dbadf,0x0022457c,0x0014cdbb,0x001648ff,0x00115f97,0x000471cf,0x0005e9d2,0xfff33a89,0xfff55c3c,0xffe82a19,0xffecd751,0xffe3b0f1,0xffcf7f77,0xffe38935,0xfff03c60,0xffd5e903,
-0x0005c1df,0x000cf204,0xfffbf76f,0x000ca6f7,0x000208ec,0x000aedf7,0xfff6c7a4,0x000b18e8,0x001765c2,0x00586e29,0x005f81a3,0x0025771d,0x0017ebbe,0x00248d2e,0x005c4a19,0x0020eccf,0x0006a6a2,0x0011b4ac,0x0033f915,0x0050ce5f,0x005c71df,0x0050723a,0x0036fecc,0x0031c46a,0x001c3549,
-0x0003e644,0xfff9e947,0xffe8c6cd,0xffed46bf,0xffe32ff0,0xfff79bfe,0xfff8a9bf,0xfff3e48d,0xffeea4a8,0xffea301f,0xffccd663,0xfff17c21,0xfffcdf4f,0xffceea1f,0xffee83b2,0x006e4797,0x00758d43,0x0084e928,0x0085cec7,0x00647849,0x00348eab,0x001eb72a,0x0036baeb,0x000a2b89,0xffef366d,
-0xffe28e1d,0x0015c291,0x00412b44,0x0056230b,0x000ceb54,0xffd5aef8,0xffa98b08,0xffa46ac9,0xffa7946b,0xffbf29e0,0xffbd90ea,0xffbee1a6,0xffd28050,0x0013d896,0x00162de3,0x000314b2,0x00079f17,0x00035255,0x00090f18,0x0005917e,0x0015874f,0x00176926,0x002e4c59,0x0046f216,0x0050a2c0,
-0x006141a0,0xfff106fe,0xfff6f85a,0xffdb51e4,0xffd4b91c,0xffca951a,0xffb0f36e,0xffd274a4,0x0026fdef,0x0031e12c,0x003d807d,0x0025b6b5,0xffc20618,0xff9b5682,0xffc2f83c,0xffeece48,0x0025b786,0x00572067,0x005a08dd,0x003ed604,0x0021db05,0x00067e77,0xffff4eb3,0x000ea1e5,0x0000e0e4,
-0xfff8841c,0xfffa8ebc,0xfffe334d,0xfffc9be6,0xfffc8fd9,0xfffb37a8,0xfff958a8,0xfff40b85,0xffda43f0,0xffea2418,0x00258d8e,0xfff8091d,0x000281f9,0x00559cb6,0xfff79f5f,0x0020792e,0x00c11034,0x00ad883f,0x00989f03,0x0087cb29,0xffe89b3f,0xffb7d9ba,0xffe8bfd8,0x005a9224,0x007e2dbf,
-0x003e7c08,0x00137400,0xfff09f56,0xffe2a0a7,0xffdfa746,0xffe47541,0xfff8a417,0x00063be5,0xfffd9fa2,0xfff5436a,0xfffbe901,0x00027c4f,0x00035f10,0x00013807,0x00020f22,0x0002850b,0x0001f7ec,0x0004ebbe,0x00028757,0x000de356,0x000886c5,0xffbd5aa3,0xffe34603,0xffb9f7f3,0x00921fb0,
-0x002a61e0,0x00052249,0xffe8e364,0x001b5107,0x0059d817,0x00945f0e,0x0055718f,0x002b48d7,0x000b62bb,0x0001d1d8,0xfffda247,0xfffff0c2,0x0003d249,0x000aef92,0x001659dd,0x00261894,0x002aa962,0x002f59e5,0x0029cdd6,0x002285f1,0x00140fd2,0x00010c42,0xfffe0750,0xfffe15d4,0xfffe66a5,
-0xfffdc0c2,0xfffe0e9e,0xfffd701a,0xfffec0ac,0xfffb33d8,0xfffcafc7,0xffe68025,0xff7c1069,0xff5d4090,0x0077dae5,0x0071ec8d,0x0067cdcc,0x00621a38,0x0048b823,0x0034bffa,0x000a5cb3,0xffe885d9,0xffe324a3,0xffedaced,0x00089e3e,0x0008329f,0x000ee325,0x001fc8a7,0x0016d0aa,0x0013bb25,
-0x0010b71b,0x000df088,0x000f1192,0x0016aa4d,0x002267e9,0x00267fe4,0x001ee601,0x00101726,0x0006c878,0x00021759,0x0002b6b6,0x0003bd61,0x00038e11,0x00025114,0x0003379b,0x0000f5a6,0xffff49f6,0x0014fab4,0x003d1bb0,0x0084b40f,0xffe913e3,0x00054167,0x000fc723,0x00019898,0xffefe2ca,
-0xffe20034,0xffe76abe,0xfff925b7,0x000a0956,0x0011727c,0x001239e1,0x001cfccc,0x0023a18a,0x002443bd,0x001f07c3,0x00122656,0xfffbc3bf,0xfff294cd,0xffedffc7,0xffebd816,0xffec4fad,0xfff70ec4,0x0009a2a1,0x000c7bb1,0x00068ff5,0xfffd6d63,0xfff860f5,0xfff713ca,0xfff80372,0xfffb1cdc,
-0xfffafccd,0xfff5b352,0xfff201bf,0xffeeafd5,0xffe85284,0xffed0fca,0xffff3546,0xfff0181e,0xffe910ce,0xfff03267,0xfff2971c,0x00057d06,0x00116aa1,0x001c3565,0x0020415c,0x0026e4f7,0x002ca2d9,0x0025ad1c,0x001e1448,0x00168584,0x0010b51d,0x000bfc2d,0x000759d1,0x00074dcd,0x0003a41d,
-0x00025bc4,0x000c2bb1,0x000ddfeb,0x001122b3,0x0013ee93,0x001a6a5c,0x00202dcd,0x001bbefe,0x0015c7c5,0x0016d1b3,0x000ad402,0x00052c6f,0xfffab95a,0xffff05fb,0x000295d6,0x000435fc,0xffff6d4a,0x00289291,0x002d59a8,0x002b330a,0x002ae411,0x00276d5d,0x0026b222,0x0025949e,0x0026f9d0,
-0x001ef510,0x0016a44d,0x000f9aac,0x00092886,0x0004c0d5,0xfffff3b5,0x0000adb7,0x0000b411,0x00003e77,0xffffa085,0xfffe8ee4,0xfffe5154,0x00026238,0x000b0f63,0x00159882,0x00184010,0x001ea4fd,0x00292368,0x00276bb5,0x002a95c9,0x002b0d8d,0x0028c3ea,0x0026a2b0,0x0026a71b,0x00258d44,
-0x0023f48d,0x00279a60,0x00270394,0x001be826,0x0013188c,0x00130c77,0x0013e06d,0x0014b10f,0x0014372b,0x00138bf1,0x0013d51c,0x0010e2e2,0x000f5f33,0x000d49c0,0x000bb5fc,0x0009a2d4,0x0006aa8e,0x00075d1a,0x000746aa,0x0007607a,0x00079d6f,0x0007af76,0x0006d51b,0x0010f1b4,0x001189ac,
-0x00012c2e,0x0019642f,0x0019cf9e,0x00085cb7,0x0008523a,0x0008aff8,0x0007dad9,0x000a5afe,0x000b0d95,0x000b3d38,0x00193150,0x001c4c07,0x00096c2c,0x0019d23b,0x000e794f,0xfff09e11,0xffebf4de,0xfff3c74e,0xfff58b4c,0xfff41299,0xfff62bc4,0xfff39694,0xfff100f3,0xffebd096,0xffec2cd3,
-0xffedea1b,0xfff7ca93,0xfff1650a,0xfff1131d,0xfff0d0d2,0xfff27707,0xfff3271b,0xfff4b91c,0xfff25cf1,0xfff3ae0d,0xfff0f0fa,0xffeb5c67,0xfff783ec,0x001b1239,0xffe52739,0xfff19efe,0x0012cc7d,0x0010fc41,0x000f9c01,0x000bc708,0x000df0c4,0x000e1858,0x00080df0,0xfff53cfe,0xffe87879,
-0x001554ad,0xfff7ee55,0xfffd3d09,0xffee7590,0xfff45784,0xfff39280,0xfff8fc27,0xfff649cc,0xffefd24f,0xffe343a7,0xffe17b14,0xffe76a10,0xfffecde8,0xffec78fe,0xffe7bd0f,0xffe8bc6d,0xffeee39e,0xfff4187f,0xfffa02dd,0xfff75aa7,0xfff8fe4c,0xfff3692f,0x00058fcb,0xfff4e2a0,0xfff31ce5,
-0xffef396e,0xffedef6b,0xffe89844,0xffeb22f7,0xffe785b6,0xffe0a311,0xffeec627,0xfff15c84,0xffe43013,0xfff367de,0xfff7bbe6,0xffe9b07a,0xffea3d84,0xfff1428d,0x0000659e,0xfffe1565,0xffffd96d,0x0006a0c9,0xffff65fd,0xfff04df1,0xffd7da80,0xffd166cf,0xffd7ec87,0x000b373d,0xffeb6dd7,
-0xffeafa81,0xffe72b9c,0xfff1c5d0,0xfff63bd9,0xfffd59b8,0xfff743a3,0xfff4ea1a,0xfff96969,0xfff40398,0xffefd2f5,0xfff806ef,0xffdf3a75,0xffe2b8ae,0xffe0633f,0xffe48477,0xffe23871,0xffc93523,0xffe51147,0xffe81096,0xffd00a03,0xfff95691,0xfffcddbd,0xffe999bf,0xffefa396,0xffe49e5b,
-0xfff2cdd5,0xfff31aa9,0xfff426eb,0x00055d73,0x00086a73,0xfff607c8,0xffcf15e7,0xffbfc28a,0xffd765de,0x001df6d2,0xffe6bad4,0xffc89131,0xffc8e102,0xffe0d474,0xfffb279b,0x000f71de,0x000eabeb,0x0010385e,0x00114a0c,0x0009d31d,0xfffd0319,0xfff2c2b8,0xffe0e04e,0xffec7e2c,0xffec2203,
-0xfffb751b,0xfffcd910,0xfffc0cfc,0xfff6b915,0xfff2f486,0xffd9a8d8,0xfff53f62,0xfff558d0,0xffce6ee4,0xffd94525,0x0036c0bb,0x003a01e1,0x00578c5a,0x00555ee3,0x0042e9b4,0xfff3621d,0xffce6efd,0xffe1d800,0xffcff98a,0xffc9c2a3,0xffca77f7,0x00096977,0x0044037a,0x00714183,0x001ac3bb,
-0xffdcf60a,0xffb8442d,0xff96d6e2,0xff8e8fa8,0xff9bf272,0xffabfc70,0xffbd6a82,0xffd4381f,0x00150ed8,0x00132568,0x0000afd8,0x000664ca,0x0000ea7b,0x0005514d,0x00027ac2,0x000c4dc9,0x000c5c76,0x001eed07,0x0033ed5f,0x003cf211,0x00355f4d,0xffd41cee,0xffe9aebc,0xffeb9dac,0xffccd669,
-0xffc785c1,0xff8b9886,0xffa287ee,0x00078ce1,0x0013c065,0x002cfc5e,0x002b9a3d,0xffc40608,0xff91052b,0xffa46346,0xffc52371,0xffe8c916,0x00038563,0x00159796,0x00134a22,0x0003c3b5,0xfffb281a,0xfff72147,0x00046038,0xfffb1d3b,0xfff80e98,0xfffd2467,0xfffe31da,0xfffe1d21,0xfffdf9d6,
-0xfffd6e66,0xfffb761e,0xfffb1617,0xffe64749,0xffeb0d2e,0x001124cc,0xffe2a67b,0x0012c7e4,0x0057e037,0xfff74a82,0xfffa25b2,0x002ece57,0x00196547,0x00029f09,0x0005899a,0xffb2f8d5,0xffa1dcf2,0xffbd6c3e,0x0019f356,0x00336679,0xffffc58d,0xffdfc2d1,0xffd3db7a,0xffe29e7a,0xffdd46e3,
-0xffe7f11a,0xffed4886,0xfff5c1b6,0xfff94c36,0xfff10e41,0xfffc6e12,0x00030969,0x000237f1,0x00011ae4,0x000185b9,0x0001668e,0x00019548,0x000297dc,0x00022ccd,0x00099010,0x00051de9,0xffc5cc76,0xffedcc97,0xffb6e42e,0x00654ee3,0xffbfbcee,0xff6bd307,0xff218b61,0xff66aff2,0xffd71005,
-0x00758336,0x00379657,0x000cb541,0xffd97b52,0xffd6e8df,0xffd3f5f8,0xffdd1e65,0xffd57c81,0xffd8118a,0xffe89764,0xfffee796,0x00167698,0x0024827b,0x002412d6,0x001aca69,0x000a5632,0xfffd0667,0xfffcb73d,0xfffebfb5,0xfffe4e89,0xfffe2d94,0xfffe9a69,0xfffe1c92,0xfffed01a,0xfffd32dc,
-0xfffdc349,0xffe181da,0xff746d85,0xff5d4433,0x007cb7b8,0x0035b86c,0xffe6d877,0xffd95cc1,0xffd5bb1f,0xffc2ee87,0xffa5b35d,0xff99e820,0xff9fc7ee,0xffad5727,0xffb4ae5b,0xffc5847a,0xffd73399,0xfff020a9,0xffffc53e,0x000b8b48,0x00101a82,0x000ecdc8,0x000ef07f,0x0011411f,0x001c00ba,
-0x00219041,0x001e2a2b,0x000f0507,0x00054639,0x00017abe,0x0003586a,0x0003217a,0x0002c67e,0x0001efde,0x00035033,0x0000de91,0xfffd3c03,0x0011f9dd,0x003c9b0d,0x006f3e43,0xfff0d633,0xffe2dab9,0xffea74f0,0xffe3b9a8,0xffd7cf9c,0xffce0514,0xffd29493,0xffd272ed,0xfff9d3b7,0x000aefae,
-0x000e63fd,0x000acc41,0x0004c6d8,0xffff8179,0xfff9c62b,0xfff1d969,0xffe95e18,0xffe6a4ab,0xffea9273,0xfff0fef5,0xfff0e347,0xfff6a931,0x00003880,0x00036fa6,0x00022377,0xfffaf671,0xfff79cb2,0xfff8737b,0xfffa62f3,0xfffb70ef,0xfffab364,0xfff3655c,0xfff01929,0xffe595d6,0xffe017b5,
-0xffd7e6b6,0xffe18fdd,0xffd921d9,0xffd65939,0xffd869c4,0xffd937ba,0xffe57fd9,0xffedb9cb,0xfff30e15,0xfffae03a,0x00037bfb,0x000ef2cc,0x00138b88,0x001838ce,0x001ba986,0x0014fe9c,0x000f7910,0x000a48e6,0x00053251,0xffff772a,0xfff6f921,0x00011e07,0x000a0c9d,0x00112101,0x00122b7b,
-0x00176fb0,0x00197d22,0x0016ccd3,0x000dfe9a,0x000d5748,0x0004bfd7,0xfffe8472,0xfff3df23,0xfff3b44a,0xfff2082d,0xfff241a5,0xffe9676f,0x002a0245,0x001a6eaa,0x0019f132,0x00163aa1,0x00125548,0x001050e8,0x000e3f14,0x000cef4d,0x000dea43,0x000d7d23,0x000c392a,0x000b2b81,0x0009ae99,
-0x0007af6c,0x00076bfb,0x0007bfa1,0x0007f26a,0x00077880,0x00099568,0x0005abeb,0x00054ee6,0x0009cbb1,0x000bb213,0x00146ed5,0x0016dc63,0x001b8575,0x001b0865,0x001974c4,0x001ab115,0x001935ac,0x001ad275,0x001c01b1,0x001af3c6,0x001c9b6b,0x001bf56f,0x001a0e44,0x000525fb,0x0007ebc6,
-0x00099346,0x0008d242,0x0009673e,0x00081723,0x000704b4,0x00059479,0x00061602,0x00066723,0x0006bd7b,0x000724b6,0x00076c5d,0x00077ef6,0x00079746,0x00074955,0x00072f57,0x0006c0e5,0x00069438,0x0007cf4c,0x0000a72e,0x0005063f,0x001382b7,0x00043e3f,0x0008e64f,0x001b9e50,0x00194928,
-0x001890b2,0x0017648f,0x001689a4,0x0015a0c6,0x0014a0e9,0x00095370,0x000437ce,0x001a7e8d,0x000bc879,0x0005b7a0,0x001175d1,0x000ecb25,0x00182da6,0x00103d40,0x0012bbce,0x0010df89,0x00178d48,0x0017819c,0x0011d86e,0x00119bcb,0x00123989,0x001a0126,0x00138251,0x00132553,0x001391f1,
-0x0014bee6,0x001539c8,0x0016ed2c,0x00144bcc,0x0010c757,0x0014c874,0x000ca79e,0xfffc2e5a,0xffe014bc,0x000d900c,0xfffa2472,0xffde9216,0xffdefaf2,0xffdfa313,0xffdee383,0xffe2bab4,0xffe34137,0xffdfc979,0xffff8a8e,0x00148597,0xffdf0fa3,0xfffc02d1,0xfff252ef,0x0019d1a5,0x000e7bc0,
-0x0010e621,0x000f002c,0x0023923b,0x0025f52a,0x001804c5,0x0015dbad,0x00186f40,0x002afa94,0x00173462,0x0011c86f,0x001443c1,0x001a3dce,0x002095b6,0x0027f830,0x0022a9bf,0x001d17cd,0x001a5684,0xfff79d67,0x0008191e,0x000ce333,0xfffb0f83,0xfff770f8,0x00053cb5,0x00035d33,0x000654f2,
-0xfffb5e2e,0x000dc3f8,0x000d1e07,0xfff8627d,0x000a2673,0x0002237f,0xfffafc42,0x000ac446,0x000b82f9,0x00213ab8,0x00178608,0x001cc39c,0x0015a207,0x0038fb24,0x003cd518,0x0021fb4e,0x001bae37,0x001af56e,0x00435fba,0x00222246,0x0020d33c,0x0021598b,0x002a83a5,0x002f0e1b,0x0037d05d,
-0x00288e94,0x00211d80,0x00120a27,0x0003ec7c,0xfffdfe2c,0x0005b9d4,0xffecabfd,0xffe8d58b,0xfff10aaf,0xffe74e89,0xffee2b51,0xffd7c28e,0xffedb6bf,0xffeee2d5,0xffde40ba,0x0001769c,0x00078030,0xfff2f437,0x0007300f,0xfff8fab8,0x0012666f,0x00029fa7,0x000373ce,0x00018803,0x0044c13f,
-0x0053e9f2,0x002e1663,0x001ee548,0x002d701a,0x00617abc,0x00296eb6,0x000ca77d,0x00128b67,0x002ce329,0x0049d15a,0x00608078,0x00509b43,0x003dbb98,0x002a2155,0x0008b64e,0x0003c64a,0xfff58143,0xffe6b493,0xffef2d31,0xfff2c636,0xfffdfbf1,0xfffccfa5,0xfffdf59b,0xfffaf2da,0xfff930c9,
-0xffe2c01a,0xfff9d8da,0xfffe926b,0xffd648d5,0xfff215e1,0x00494759,0x006ba4ed,0x00921bdf,0x00975397,0x00841b92,0x0042b69a,0x0026d2cb,0x0048557a,0x001da55a,0x00041ba2,0xfffb3f4b,0x002a520f,0x0059eaf9,0x007740f3,0x002f2ead,0xfff6c454,0xffdab609,0xffc3c181,0xffc91ebb,0xffce1788,
-0xffbcfaf6,0xffd580b8,0xffe86c9c,0x001b9aa9,0x00125af1,0xffffc9f0,0x0004951b,0x0000e673,0x00036fb7,0x00018742,0x0006c9de,0x00083e46,0x0017f431,0x002fe717,0x003da250,0x00454e61,0xffea7180,0x000c0dc3,0xfff36494,0xffd74eb6,0xffc32458,0xffa131fa,0xffb5fb26,0x00074524,0x00143a0e,
-0x002ea6ba,0x0035f49a,0xffc84d31,0xff927900,0xffad9bc4,0xffe145ec,0x001db25c,0x00583983,0x004f348b,0x003721a3,0x000ca5d1,0xfff4ee85,0xfff796a1,0x0008daa4,0xfffc2b29,0xfff9d7df,0xfffe6369,0xfffe8d75,0xfffeacf6,0xfffe7ff5,0xfffec05e,0xfffca730,0xfffe086f,0xffefb7f0,0xfff677d0,
-0x0013d3ed,0xfff82694,0x001d0a83,0x0068cdcd,0x00119f62,0x00285f05,0x009ec06d,0x00b6f4a6,0x00b52c5d,0x00a537e6,0x002538aa,0xffe3a839,0xffdc66fe,0x00607caf,0x00970c5b,0x0072db0c,0x0033069c,0xfffffe4e,0xffe9ca20,0xffe41aa1,0xfff69548,0x000bb5cf,0x000f8c41,0x0009d08e,0xfff9ee62,
-0x0002ec67,0x00028943,0x000170a9,0x0000c7c5,0x00012b2a,0x0000e722,0x0000f960,0x00018c37,0x000150c1,0x0007109b,0x00027620,0xffd1a13d,0xfff7e57d,0xffb5c094,0x003bfe0d,0xffe0a1cd,0xffd058d6,0xffe06306,0xffea20ca,0x0028cf89,0x008b1caf,0x005a11ab,0x00318f7a,0xfff25370,0xfff2cc3a,
-0xffe9cf18,0xffeb52ba,0xfff13c09,0x00013daf,0x00155a7b,0x00244438,0x002a12eb,0x002a4027,0x001ee556,0x001b5679,0x0007c3bb,0xfffd0571,0xfffd23ec,0xffff3dd2,0xfffed2aa,0xfffeaa64,0xfffef754,0xffff18f8,0xffff072d,0xfffea070,0xfffdd685,0xffe824ab,0xff7604e9,0xff68bcf6,0x007bbcd8,
-0x007d3da1,0x006c61ba,0x005174cd,0x004dffb9,0x003a648c,0x001866ac,0xfff5aee0,0xffe4e403,0xffe97574,0xfffc67ec,0xfffa291e,0x00023720,0x00165e1a,0x00125567,0x0011d614,0x0013473f,0x00104b57,0x001877f8,0x0024985b,0x002a9470,0x002fde4f,0x001dc24e,0x000da111,0x0003ad69,0x0000f6df,
-0x00022d5c,0x00025f58,0x0001cfd8,0x00011af2,0x00015267,0x0001f73f,0xfffec9d6,0x0016b48a,0x0035707b,0x0091386c,0xffdeaca8,0x000a5eac,0x001dac97,0x000db655,0x0002716d,0xfff604aa,0xfffb1f5b,0x00076a9d,0x0006f1e8,0x00028c32,0xfffc51b5,0x00056fcf,0x000a75e4,0x000b5f4a,0x000b0d2c,
-0x00062d40,0xfff9ceab,0xfff5f186,0xfff1e985,0xffed0c0b,0xfff1b6d0,0xfffb0cae,0x000809a9,0x0008c277,0x0003731e,0xfffc2889,0xfffaef8e,0xfffad20d,0xfffc2f50,0xfffe09f7,0xfffdfd4d,0xfff965d0,0xfff46413,0xfff22515,0xffeaeb67,0xfff2a8e0,0xffed2a31,0xffe4d196,0xffe5ca7c,0xffe9a135,
-0xffed2d97,0xfffbf8f3,0x0005cbf3,0x00100823,0x00161c6c,0x001ff57f,0x0027a7ac,0x0026a0d7,0x00244382,0x002197de,0x001b3547,0x001556db,0x0010346c,0x000e0662,0x000c2de3,0x00062ac5,0x000a39f8,0x000eb0f7,0x0013fb40,0x001311c5,0x0013c6af,0x00135af7,0x000e7d45,0x000a9da7,0x0008c228,
-0x000203be,0xfffc3f22,0xfff5a9af,0xfff50137,0xfff338db,0xffef94c6,0xffee4156,0x00157932,0x001d60ba,0x001e8cec,0x0020b9d7,0x0021393f,0x00246193,0x00271f40,0x002ace20,0x002504e5,0x001df0ab,0x0017c48b,0x0011fd27,0x000d9dcb,0x00096146,0x000a29e4,0x000aed70,0x000b2e8d,0x000b0c82,
-0x000a5643,0x000bcda3,0x000b146b,0x00168e59,0x001df987,0x001f2363,0x0024dc2e,0x002fdcd1,0x002df93b,0x002cecc7,0x0028fd3d,0x0027aac1,0x00247bf2,0x0020afd5,0x001f9895,0x001b6356,0x001e253a,0x001e1ad1,0x00178be5,0x00177c23,0x001761a5,0x001963db,0x001af7c2,0x001b2e08,0x001b5a35,
-0x001d01ac,0x001a9306,0x0019db70,0x0018b85b,0x0017d68e,0x00167f93,0x00142db5,0x0014aea9,0x0014629f,0x001437f0,0x00146a80,0x0013e06a,0x0014aa0e,0x0015b330,0x000f08cf,0xfffe5617,0x001d2ffe,0x001406df,0x00022c3b,0x00012067,0x0001e249,0x000205fb,0x0002b537,0x0002f48c,0x0002de4e,
-0x00103cb5,0x001a5393,0x00016637,0x000f5644,0x001b0866,0xffea7cc9,0xfffa1b67,0xffe857f3,0xfff07fcc,0xffeee849,0xfff0c282,0xffef9d02,0xffed147d,0xffe75ade,0xffe7179b,0xffe8331b,0xfff099a6,0xffeb3a15,0xffeb065d,0xffeb1d06,0xffeafe95,0xffeb7403,0xffee275c,0xffebf8d6,0xffee04f4,
-0xffe5aeae,0xfff9559f,0x000b559b,0x0025b1be,0xffeebf53,0x00050c47,0x001f84aa,0x001e4e85,0x001dde2a,0x00199519,0x001e4c20,0x001e8a58,0x00187ad7,0x0008e8e1,0xfff035c9,0x001fce74,0x000d896c,0x0010c4e2,0xffeb006f,0xffedd6a0,0xfff03ccf,0xfff38661,0xfff5c229,0xfff0d229,0xffe2a810,
-0xffde7adc,0xffe1d0c2,0xfff5a185,0xffe5b200,0xffdfdee2,0xffdfadd8,0xffe024c1,0xffe59e84,0xffefc700,0xffefaffe,0xffeee85d,0xffee4c97,0x00124958,0xfff3ef13,0xfffa5238,0xfff017e1,0xfff1062b,0xffeff8f4,0xffe8be1e,0xffe6fcd6,0xffe9010b,0xffefe2db,0xfff00670,0xffeb3337,0xfff4eea3,
-0xfffdb4ad,0xfff38aab,0xffea978a,0xfffe97aa,0xfffd5572,0xfff4ce3f,0xfffeb464,0x00006663,0x0003965f,0xfff79ee1,0xffdb0363,0xffd1a328,0xffd3a3a1,0xfffe03c2,0xffe4ed83,0xffe45746,0xffe1e6dd,0xffe1c1cc,0xffe5b225,0xfff3bf52,0xffef74a5,0xffe8fab8,0xfff5d23e,0xfffc6f30,0xfff2c51b,
-0xfffd57e7,0xffdd7847,0xffe620f1,0xffea2b75,0xffea8324,0xffe3c91b,0xffdf48a0,0xffec08fa,0xfff24e43,0xffde0239,0xfffcc660,0xffff054f,0xfff18932,0xfff40f22,0xfff46d9d,0xfff00e7e,0xffec9eea,0xfff3d116,0xfffbedcf,0x001182a8,0x0008b9ec,0xffdc57ef,0xffc6fc68,0xffd450b8,0x000bd2d0,
-0xffe0b964,0xffc1bdb1,0xffbc537d,0xffc23290,0xffdc7780,0xfffe23ec,0x000286b1,0xfffd8ec1,0x000529ae,0x000a9835,0xfff0a953,0xfff8ecc8,0xffde6f66,0xffedab47,0xfff7a94a,0xfffeac40,0x0002640a,0x0002ac11,0xfffe77bb,0xfffc7316,0xffeccdd4,0xfff961d1,0xfffa62cf,0xffd7d1da,0xffdf435b,
-0x00449e16,0x00330832,0x0046df95,0x00530bec,0x004e1163,0xfff6b31c,0xffcf7766,0xffe3aa48,0xffc55cd1,0xffb8ec48,0xffb7b8e4,0xffeda010,0x002f2296,0x006b953c,0x00283aa8,0xffed3f35,0xffb9d41e,0xff9b1024,0xff905d3f,0xffb1109f,0xffc81230,0xffcac69f,0xffed7625,0x001688ed,0x000f556f,
-0xffffec05,0x00035d91,0xfffec0b6,0x00007035,0x00008d4f,0x0003e9db,0x00037dd1,0x000e2bc6,0x00259112,0x0035e652,0x003b442f,0xffe1d647,0xfff205af,0xffe7b5a9,0xffd3765e,0xffd03e0d,0xff9b154f,0xffa9885c,0x00041ca6,0x0003e13b,0x002027c1,0x0038d50e,0xffd5abf1,0xff99cf2b,0xff9d72e1,
-0xffb9de22,0xffdd468a,0xfffa45f0,0x000c1f7a,0x0000b884,0xfff68246,0xfff5c8c3,0xfff534f7,0x0003d7d8,0xfff6e578,0xfffa3967,0xfffec28f,0xfffeec26,0xffffe21a,0xffffe4b4,0xffff545f,0xfffe2289,0xfffea92e,0xfff892bf,0xfff45e51,0x0007545d,0xffe06330,0x003067a8,0x006aee0a,0x0020cfe6,
-0x0010ada7,0x001c9582,0x002f91a7,0x001f473a,0x00109334,0xffc1a897,0xff9eb138,0xff974ad1,0xfff9e9b6,0x0028d685,0x001dd655,0xffebae9d,0xffd973f5,0xffea77de,0xffe49d08,0xffeab755,0xfffe11bb,0x00051488,0x00004eca,0xfffb416c,0x0002aeee,0x00034296,0x0000e9d7,0x0000bdde,0x00005a77,
-0x00004266,0x00006922,0x000156d4,0x00003726,0x000579eb,0x0001782f,0xffdddf45,0x00034d3e,0xffb959b1,0x000b5015,0xff914fd4,0xff63ead9,0xff2cd3c1,0xff4ad579,0xffae7728,0x0051d578,0x004f1222,0x00358e2c,0xffe698e5,0xffe6e8e2,0xffd8b29d,0xffd8d63b,0xffce40b9,0xffd28617,0xffe01381,
-0xfff4d695,0x0008cd56,0x001c8cb1,0x00229031,0x001248f5,0xfffee4ae,0xfffb3413,0xfffddd77,0xffff1a3f,0xfffefff8,0xffff529a,0xffff8c4d,0xffff67f0,0xffff2487,0xfffeaf7f,0xffff6a55,0xffe4b116,0xff7f072e,0xff787b7f,0x00a35613,0x00679ac1,0xfff6e311,0xffd4e856,0xffd62534,0xffc9dee5,
-0xffb2fe90,0xffa23126,0xffa47e9b,0xffb1b596,0xffbf7fdf,0xffcd387d,0xffddacb5,0xfff71dbe,0x00065035,0x0010d3a8,0x00133a59,0x00174fd4,0x0018c20a,0x001c5ed3,0x002ae9cb,0x00257033,0x0018197e,0x000a734b,0x0001a713,0x0001ac6e,0x0001e4e0,0x0001459a,0x00010efd,0x0000bb19,0x00016526,
-0x0002222e,0x00009206,0x00183666,0x003bd6ae,0x00878ceb,0x00063447,0xfffbd4f4,0xfff3acbe,0xffef9f3a,0xffdfd6dd,0xffd157cd,0xffcea6d3,0xffc91a24,0xffe9d4ec,0xfff5c7a3,0xfff60f22,0xfff422b0,0xfff11d58,0xffee2847,0xffedc8f7,0xffea624b,0xffe426a4,0xffe31fb9,0xffe908f3,0xfff2779f,
-0xfff3b29d,0xfffb7194,0x000665f7,0x000271a3,0xffff57c6,0xfffb17ae,0xfffbb2d3,0xfffd9cd5,0xfffd9901,0xffff0898,0xfffe1cd3,0xfff9dd2d,0xfff4d334,0xffee5506,0xffec1412,0xffea36c6,0xffdd53c7,0xffcf8757,0xffcbc7cc,0xffd03eac,0xffd080ed,0xffdadfc7,0xffe09af3,0xffe2b86a,0xffee61f8,
-0xfffa94aa,0x00094057,0x00115d2c,0x001933c1,0x0020ee1e,0x0018ffc5,0x00126e10,0x000bd26a,0x00073654,0xffff71dc,0xfffac2df,0x0006d780,0x000bb39d,0x00106cfe,0x000d21d5,0x000f6df8,0x000aa7ac,0x000a9f69,0x00003994,0x0004acef,0xfffb321a,0xfff9bd02,0xffefb9be,0xffee3cb1,0xffebf4bf,
-0xffecd7a7,0xffe1cbc5,0x001fc024,0x000753f6,0x00073f6a,0x00058011,0x0002d8c9,0x0001e284,0x00014b62,0x00012d34,0x00047f3b,0x00058c82,0x000606a6,0x00072843,0x0008793e,0x000abaae,0x000a1456,0x000af874,0x000b3550,0x000b6bc7,0x000d3edb,0x00099348,0x0010b08a,0x000f457e,0x0012f80e,
-0x001b1fe6,0x001fd5ae,0x00214fae,0x001d7ac8,0x001b5e11,0x001cce8b,0x00153f8a,0x00123f7d,0x00143233,0x00114390,0x001436de,0x0012983d,0x000adc90,0x000b0fe1,0x0001b7d3,0x00063e64,0x00057c51,0x00064317,0x00058c8e,0x0004dcfe,0x000391c3,0x0004cb21,0x000617fa,0x00079534,0x000913d1,
-0x000a1c50,0x000b2a5b,0x000af548,0x000abf41,0x000aa599,0x000a0eae,0x000a54fb,0x00090635,0x000c945c,0x0015e8ed,0x00230ed1,0x000d3296,0x00190066,0x002ac6f0,0x002862ec,0x0026988e,0x002368d6,0x00238b69,0x002221ed,0x001f768d,0x00146988,0x0007f81a,0x0021c757,0x001610e7,0x0009032f,
-0x000aa72f,0xfff8f115,0x0015df83,0x000b0b87,0x000ccdd3,0x000a3ec3,0x000f448d,0x000f10e3,0x000b87bb,0x000a4ca9,0x000ad07e,0x0011be77,0x000c4c0d,0x000bbfd3,0x000ba8a9,0x000bf825,0x000c8b02,0x000f81a5,0x000cecd2,0x000a1457,0x00109f03,0xfff67a0c,0xffe71a91,0xffddf647,0xfff97199,
-0xffe470cc,0xffdc560c,0xffd92e6e,0xffd9f293,0xffdc62ec,0xffdbce9d,0xffdb167e,0xffd8fb20,0xffea63de,0x00018e3d,0xffdb82c3,0xffe5cd71,0xffe2a2a7,0x00117ce1,0x000cdc44,0x000a44fa,0x00065cef,0x00152575,0x0016e43d,0x000f0263,0x000a95eb,0x000d22a0,0x001d8efd,0x000e88bc,0x0008ebaf,
-0x00084130,0x0009a927,0x000e9747,0x0019959c,0x001414ef,0x001395da,0x000be009,0xffe87ab3,0xfffe91b4,0x00004fa5,0xfff0697c,0xffebd65b,0xfffdac07,0xfff666d7,0xfff5386a,0xffed54af,0x00018ed7,0x000748d5,0xfff4794b,0x0001e0ff,0xfff7efad,0xfff03ef5,0x0003869b,0xfffb4b5b,0x0019c9d0,
-0x00196926,0x00164dd0,0x000e48e6,0x002609f7,0x00267661,0x0018ee3d,0x000cbfc5,0x000c008f,0x002e7eae,0x00151d11,0x00133061,0x000f2788,0x00124d6e,0x00161508,0x0026cc59,0x0018626c,0x0017802c,0x0002c70b,0xfff3f497,0xfff3ac12,0x00009591,0xffe3c27f,0xffe0309f,0xfff5c01d,0xffe5cd7d,
-0xfff2b523,0xffe2ba62,0xfff5c3fb,0xffef9251,0xffe8116b,0xfffc526f,0xffff2be5,0xffeb8bd6,0xfffcbc80,0xffeff415,0x000f9e03,0x000ac8f0,0xfffe183c,0xfff6c3a0,0x002676d4,0x0031b7a2,0x001f8906,0x000922ef,0x001533e7,0x00427d00,0x001a36bf,0xfffcbf6e,0xfff5bf66,0xfffe8f5b,0x0017e101,
-0x003bad6c,0x00304d63,0x002a70da,0x00138efe,0xfff75998,0xfffe7a2c,0xfff316ac,0xffe6f958,0xfff46a09,0xfffe56f1,0x0000467e,0x00020df8,0x0006df12,0xffffc815,0x00019284,0xfff560ef,0xfffe5a52,0xfffd9253,0xffe075fa,0xfff02e75,0x002ad9c0,0x00510416,0x0087c32a,0x0091a01c,0x008d62ef,
-0x003db073,0x001af449,0x003b456f,0x001ab7f6,0x0009220a,0x0003c793,0x003019c7,0x0066794b,0x00908bfa,0x00522d51,0x001a0a49,0x00008489,0xffd5b552,0xffd40e26,0xffcd12b4,0xffbc3554,0xffe55777,0xfff92966,0x0017fac6,0x000961f1,0xffff0f01,0x0001ad3b,0xfffeb6c5,0xfffe6f56,0xffff405f,
-0x0001c3a3,0x0000f9d5,0x00081eab,0x001a2a2f,0x0027c220,0x002877b7,0xffe74d08,0x001d45ac,0x0015ea4e,0xffec5731,0xffd1ba4f,0xff9f6c7f,0xffa63d33,0xfff6b5b2,0x0006f90f,0x002cd36c,0x004c0634,0xffe05f56,0xff9f9d62,0xffa4dd4f,0xffd5bba5,0x000af030,0x003a659b,0x0030788e,0x0021c112,
-0xfff7f4ac,0xffeb44ba,0xfff4b936,0x000309d1,0xfff95586,0xfffbf99f,0xffffb6a9,0xffff7814,0x0000485a,0x0000b5a6,0x00004e0b,0xffff053c,0x000004fd,0xfffa9758,0xfffed539,0x00056dd1,0xfff94e35,0x003c7d80,0x007a4d8a,0x002f443c,0x0024a42d,0x0047a636,0x0083ac71,0x008ee6fd,0x008063d1,
-0x003b3b8b,0xfffe3276,0xffcf3d3a,0x004901d6,0x008665b5,0x00841e98,0x003dc114,0x000a964c,0xfff9628e,0xfff1449b,0x000750fa,0x0014e00d,0x0010d325,0x000d6d03,0xfffcc80c,0x0004d9ff,0x00017c58,0x000091d5,0x00004160,0x000011be,0xffffa577,0xffffdb85,0x00006ccc,0x0000085c,0x0002dc73,
-0x00026709,0xffe1097b,0x000b53d7,0xffbae8fc,0xffc834e8,0xff955074,0xff94bf03,0xff9d43f9,0xff967dd1,0xffd7b7d1,0x005cbe09,0x0059a4e0,0x0040ec7e,0xffe88769,0xffee0f09,0xffdebd44,0xffde9575,0xffe213af,0xfff31e15,0x0006e1d0,0x0014cd61,0x001ee9b9,0x001fb559,0x0013f01f,0x000f6b16,
-0xfffca17c,0xfffc56a7,0xfffe8abc,0xffffdc89,0xffff566b,0xffffd19a,0x00001e86,0x000033f0,0xffffd283,0xffffa843,0xffffe7b8,0xffee1302,0xff8fb4c3,0xff9607d9,0x008356b0,0x007631dc,0x0039349c,0x000a723b,0x00179495,0x00090642,0xfffa2ff2,0xffea2445,0xffd87a4d,0xffdb7d18,0xffe4b195,
-0xffe853a6,0xfff489eb,0x000b30e4,0x000fdaaa,0x00143b12,0x001a4ed0,0x0019adbd,0x0023dae6,0x002c06c6,0x002aab6f,0x002cd7fc,0x0016a089,0x00080198,0x00002d7e,0x0000c43e,0x000108fe,0x0000a10a,0xffffce64,0xffffc7ab,0xffffa27f,0x0001375e,0xfffebb0a,0x0016fb46,0x002c5d0e,0x0083a70b,
-0xffe69296,0x00083cd5,0x001a18ab,0x000f6095,0x000893ff,0x000041c5,0x00024a29,0x00036c71,0x0003bcf6,0xffff2540,0xfff88f94,0xfffb2ed1,0xfff9049c,0xfff4c13b,0xfff69495,0xfff81490,0xfff76950,0xfff80d92,0xfff89da2,0xfff3791e,0xfff7667b,0x0000a19b,0x0004aa98,0x000452e4,0x0000ab5e,
-0xfffd5471,0xfffe35ff,0xfffe7d2a,0x0000b5b5,0x0000b539,0x000177b8,0xfffeeed7,0xfff9f194,0xfff7d85a,0xfff0ce64,0xfff7d5f2,0xffdb575f,0xffdc8307,0xffe44b90,0xffe45f7c,0xffe8a391,0xfff206da,0xfff8d361,0xffff800b,0x0006bc99,0x0010c5d8,0x0019d065,0x001fe598,0x00251c90,0x002974b0,
-0x00230043,0x001c1646,0x00162cd6,0x001210f4,0x0011f35d,0x00086ef3,0x0005f8aa,0x000bdd44,0x00109eb4,0x000cea63,0x0009459b,0x00069536,0x00020840,0x0000d74c,0xfffd28b1,0xfffa6322,0xfff3b649,0xffef6de4,0xffeab0d5,0xffe4815d,0xffdd2599,0xffde1c5b,0x00011ecc,0x0008f1f0,0x000c7e62,
-0x000f4f02,0x00122dc5,0x00167e88,0x001aeaf6,0x001f288e,0x001eb750,0x001c9400,0x001a3dc7,0x001799cf,0x0014fea3,0x00130449,0x00132b2d,0x00147c24,0x00155c95,0x0015aa23,0x001625a7,0x00173520,0x000dce66,0x001b38b1,0x001dd625,0x001ef712,0x0021134c,0x0028bc2d,0x002689f6,0x00220cb8,
-0x001bda46,0x001bd40c,0x001a451e,0x0014b737,0x0013a41e,0x000e5111,0x000eae82,0x000fbc3a,0x000ce9b8,0x0016fa3c,0x00166a3f,0x00189f58,0x001a5766,0x001af513,0x001b9045,0x001d215f,0x001c65b2,0x001cbd45,0x001d0aaf,0x001d78c5,0x001da348,0x001d1feb,0x001d65d4,0x001d1386,0x001cce8c,
-0x001cc122,0x001bb422,0x001ee68a,0x00139060,0x000993dc,0xffff3b3e,0x00187b56,0x000b2cd7,0x00026da1,0x0000a920,0x00012d98,0x0001bcc5,0x000040bf,0xffff5efb,0xfffec5a8,0x0005fb8f,0x00123290,0xfffd982c,0x00036fe5,0x0020d0d2,0xfff3fb50,0x000b6b6b,0xfff104e9,0xfff86b11,0xfff81271,
-0xfff81af8,0xfffae34b,0xfff984c9,0xfff45495,0xfff346e0,0xfff393c1,0xfff95de6,0xfff5e27b,0xfff5af57,0xfff577db,0xfff3db74,0xfff3f11e,0xfff76263,0xfff55d37,0xfff60556,0xffedf1a3,0x0009a515,0x0013b7a3,0x001540cd,0x000026db,0x000eb66b,0x00130353,0x0011c830,0x00125fb8,0x00104dfd,
-0x0015c13d,0x0016572e,0x0011e57c,0x00136e4d,0x00020f06,0x0011792f,0x0016cdf2,0x0015a8fc,0xfff944b0,0xfff58e63,0xfff9b9a6,0xfff87d87,0x000497f6,0x00042111,0xfff788a1,0xfff19d7a,0xfff21f2e,0xffffbe98,0xfff4eca5,0xffee986f,0xffebb646,0xffe755de,0xffec3b10,0xfff97a60,0xfff9efb7,
-0xfff67f32,0xfff833b4,0x0010cf56,0xfffa1eab,0x0005d752,0xfff4c3b4,0xfff5ca86,0xfffd9ea8,0xffeed39d,0xffef96c1,0xfff6834d,0xfffaade0,0xfff94e50,0xfff8512f,0xfffd8945,0x00036af1,0xfffe7b6a,0xfff6cf64,0x000d6c70,0x0007a6eb,0xfffab873,0x0008ab7c,0x0002303b,0x00184ea8,0x00156f96,
-0xfffbf2e0,0xffeff297,0xffecf277,0x0008b702,0xfffa9a4c,0xfff963dd,0xfff566f1,0xffebe7fd,0xffee1bb6,0x00019099,0xfffb3a9e,0xfff298b4,0xfff9be9a,0x00033b86,0xfff8436d,0x0003ca87,0xffe29d75,0xffea0bcc,0xfff62cd1,0xffeec5e1,0xffebd3f2,0xfff0b46f,0xfff4b141,0xfffa38ef,0xffee6d57,
-0x0000643b,0x00021cb7,0xfff9c74b,0xfffe4492,0x0004250b,0xfffb6ab0,0xfff0f6f4,0xfff8f912,0xfff42694,0x0025cba0,0x002efad0,0x000a289a,0xfff0d115,0xfff2b805,0x0013e033,0xfffbef9b,0xffdfa886,0xffd19475,0xffc71968,0xffde5e5e,0x0009e4b7,0x000cefc8,0x0000dea4,0x00021bf7,0x0005e7ab,
-0xffee239e,0xfffc6b25,0xffe468e9,0xfff5fb3c,0xfffeef19,0x0001a1f1,0x0006ba00,0x00039d28,0x0002dcaf,0x00000f8e,0xfffb89cf,0xfffc735a,0xffff3692,0xffe4b942,0xffed1be0,0x004cc25d,0x00362617,0x004ca195,0x006447c3,0x006838ad,0x001732cf,0xfff4820c,0x000be096,0xffe5a835,0xffd5341c,
-0xffd4b196,0xfffb35f7,0x00393723,0x0074040f,0x0048718e,0x00128523,0xffd7e8f1,0xffb9c05e,0xffafe7b2,0xffd06d46,0xffdda2bc,0xffe1493f,0x0002f068,0x00117396,0x000798d0,0xffffb479,0x00001584,0xfffd42aa,0xfffea072,0xfffebd81,0x0000d3f3,0x0001352d,0x00031f44,0x0015f16f,0x002678a7,
-0x0038b3b6,0xfffce60d,0x0008d58d,0xffe94499,0xffdc81ae,0xffd08440,0xffa97cf9,0xffb0eb99,0xfff99b51,0x00000ecf,0x0022d053,0x004c3af9,0xffefecf1,0xffae607f,0xffa2dec3,0xffc16ce0,0xffec42f0,0x0011df34,0x001a19c1,0x00051b65,0xfff44ca0,0xfff609f5,0xfff96d90,0x00033ca5,0xfff894c2,
-0xfffcfd85,0xffff718a,0x00004c79,0x0000fa03,0x0000d7bf,0x00007f00,0xffffa0f9,0xffffa170,0xfffd5c6d,0xfffc6d17,0x0006472b,0xffef71d0,0x004caf49,0x00717d74,0x002e383a,0x0016c0bf,0x0017a906,0x0060516f,0x0065a3dc,0x00470482,0x00004d69,0xffc47959,0xff959c35,0xfffaaf79,0x003c82de,
-0x00565b28,0x0015b603,0xfff284ff,0xfff2de99,0xffeea229,0xfff3ca63,0x00115d71,0x0014fce9,0x0007ddca,0x00032589,0x00035847,0x0001a602,0x0000523b,0xffffe69c,0xffff79d1,0xffff8fd0,0xffff8a4d,0x00005910,0xffffa2a3,0x00026059,0x0003cd19,0xffec466f,0x000f86bf,0xffb8d26c,0xff8b05b4,
-0xff7de8a9,0xff9277ea,0xff808867,0xff778fe1,0xffafc79e,0x0022ede0,0x005c97ca,0x0057b82d,0xfff99332,0xfff5b245,0xffdc6459,0xffd5fe44,0xffd29d23,0xffdd98ed,0xffe80485,0xfff8775e,0x00021bdf,0x00139860,0x001b48ad,0x00089684,0xfff9c0e8,0xfffd28fe,0xffff3bf3,0xffffa852,0xfffffecd,
-0x0000610a,0x00006b53,0x00005e2a,0x000057b8,0xffff541a,0x00010097,0xfff183e2,0xffa2c98c,0xffaa83cb,0x00a25d8f,0x0086f3af,0x001c9dcf,0xffebde1b,0xfff1074a,0xffed788d,0xffe3c3ca,0xffd2e69a,0xffc98a87,0xffcdb515,0xffdbe6a7,0xffe0e99e,0xffed254c,0x0003d32c,0x000a7f4c,0x0010d9c1,
-0x00142ab4,0x001d458f,0x0022f53a,0x0029a2b7,0x00366133,0x0027468f,0x00115dfe,0x00052265,0xffff5f41,0x000112a1,0xffffe604,0xffff845d,0xffff78be,0xffff2dce,0xffff45ba,0x0000b37c,0xfffe81a7,0x0016d8e6,0x002ff3dd,0x007e68a5,0x0010c84e,0x0015d3e4,0x000c5c08,0x000b0948,0xfffcaf1d,
-0xffed78ad,0xffe5ddbc,0xffdfb18a,0xffeafa3d,0xffed3972,0xffe9fb9d,0xffea91da,0xffe941c2,0xffe65561,0xffe9914c,0xffeb37c4,0xffe8cf1f,0xffeb5803,0xfff02dd4,0xfff78cbf,0xfffbdff9,0x0003da37,0x000cf973,0x0003fc40,0xffff7d7d,0xfffe622a,0xffffce63,0x00018b9f,0x0000afaf,0x00028bb7,
-0x00017f88,0x00010c3e,0xfffd2796,0xfffc839e,0xfffacbc4,0x0002c11b,0xffe2bb66,0xffd7e200,0xffd69cdd,0xffdbf0cc,0xffde0511,0xffe5eb9e,0xffe97357,0xffea67bb,0xfff3970f,0xfffd6ee9,0x0007f1b3,0x000fe159,0x00174eb8,0x001f3fa6,0x0018fec5,0x0013524a,0x000d2af7,0x000b6c9b,0x000604dd,
-0x000684eb,0x000ec370,0x000e04c5,0x000e6da3,0x0008a469,0x0007891a,0x0000a2c5,0x0000b923,0xfff97ff6,0xfffde735,0xfff6ee68,0xfff70893,0xffefb296,0xffecda61,0xffe99474,0xffe949f5,0xffe28bb7,0x000e7c35,0xfffd80da,0xfffed244,0x00014891,0x0001e928,0x0003c258,0x00065813,0x000975b3,
-0x000c1960,0x000cf044,0x000d87ff,0x000e89c0,0x00102599,0x0013d26d,0x0012b6dd,0x00137baa,0x001352ff,0x0013bb91,0x0013bb78,0x0012538c,0x001a1c24,0x00185162,0x001d5e65,0x00205969,0x00249093,0x002462c7,0x001effb2,0x001cd70d,0x001c66fe,0x0013b453,0x000de467,0x000ee303,0x000bad33,
-0x000d5867,0x000c0876,0x00037089,0x0016177f,0x00080f42,0x000ce4a8,0x000d4184,0x000e70e2,0x000f035b,0x000f3d7f,0x000f519c,0x000feac8,0x0011360f,0x0012b763,0x00144254,0x00153a61,0x001625bd,0x0015d4f9,0x0015af47,0x0015805f,0x0014fa74,0x00151f6f,0x0012b560,0x001cc74d,0x00230fd2,
-0x002315eb,0x001cb1ea,0x002598ca,0x0028ea1c,0x00277f1b,0x0025ea11,0x0022c0bf,0x00237907,0x00223345,0x001f20a1,0x001d7871,0x0014426d,0x001bd77b,0x001cc6dc,0x00173591,0xfff86328,0xffe94df0,0x00013874,0xfffc024a,0xfffbddba,0xfff9ef59,0xfffc181a,0xfffb5aa5,0xfff95fec,0xfff79baf,
-0xfff81975,0xfffd6d44,0xfffa7cc9,0xfff9e6b3,0xfff8c42a,0xfff790aa,0xfff7e0f7,0xfffbb6f6,0xfff9c74e,0xfff961a7,0xfffbc67f,0xffe7673b,0xffe56e47,0xfff6e9a6,0xffe6803c,0xffe0e415,0xfff3ffd1,0xffee6538,0xffee6c68,0xfff124cc,0xffef7eaa,0xffeea904,0xffece5d4,0xffe66130,0xffec8bc1,
-0xfff26160,0xffe4a082,0xffe8eedc,0xfffb2561,0xfffe47a1,0xfff9c43f,0xfff5acec,0xfffcb38d,0xfffcc8ff,0xfff95be1,0xfff34aa2,0xfff5562b,0x0001b01d,0xfffaa17d,0xfff4f5f3,0xffef660f,0xffea83c3,0xffed81f2,0xfffb4a7f,0xfff90b4c,0xfffca8d2,0xfff4135f,0xffec457b,0xfff2aea3,0xfff45b4d,
-0xffe87b0b,0xffe5e846,0xfff3b1b4,0xffe6954f,0xffe2f270,0xffe43ad0,0xfff24b86,0xfff9a1eb,0xfff0da8a,0xfff65493,0xfff16286,0xffe9d62b,0xfff3da3f,0xffef8954,0x00070790,0x000a6bb4,0x00061542,0xfffe5b4d,0x000896df,0x00048c7f,0xffffadcb,0xfff03d54,0xfff00f0c,0x0008e5a9,0xfffef503,
-0xfffc67ed,0xfff1dcdb,0xffea294d,0xffeb92cc,0x0002237d,0xfffa0333,0xfffcdcf2,0xffefd0af,0xffea295e,0xffec14cd,0xfffb4328,0xffde400b,0xffe0cf02,0xfff90596,0xffebee1f,0xfff60600,0xfff19ed7,0xfffb3a34,0xfff5b065,0xfff27bc8,0xfff9793c,0xfff84487,0xffe9eeea,0xfff06f1c,0xffeb25d4,
-0x00000e66,0x0003b513,0xfff3b642,0xffe97426,0x0002ead1,0x000824fe,0x0002bd88,0xffe8a0d8,0xffef48f4,0x000f6e51,0x0000a4ba,0xffe50dbb,0xffcccab7,0xffbd5f3e,0xffcfe518,0xfffeb061,0x000088f8,0x00067081,0xfff7fda4,0xffeee481,0xfff54215,0xfff52c65,0xffeadb44,0xfffc551a,0x0002c541,
-0x000335f4,0x00049be3,0x00046e37,0x0001b85a,0x000302f2,0xffff97a9,0x00000531,0xfffc1169,0xffe95b32,0xffead634,0x0015091c,0x002304d9,0x00585ab3,0x00678df9,0x00725862,0x0020b3ae,0xfffc765d,0x0013fb98,0xfffd868f,0xfff7923f,0xffff3fce,0x0024b503,0x005f234a,0x0094135d,0x0067dd52,
-0x0031d0da,0x00094b0c,0xffd44c50,0xffc8f38c,0xffc745b6,0xffc806be,0xffef0987,0x0004c216,0x000db8c9,0x00029b53,0xfffeea90,0xfffef15e,0xfffdf18b,0xfffe2d1d,0xffff015b,0xffff1d93,0x00002281,0x00001537,0x0009457c,0x0012932f,0x001203d0,0xffe7afff,0x0014a43d,0x0015f1ec,0xffeef56b,
-0xffdb627a,0xffa0e139,0xff9baa5b,0xffe07e4e,0xfff4f9e8,0x00222c1c,0x00521c7d,0xfff488da,0xffaee675,0xff99d9c4,0xffbcf7ed,0xffe65af8,0x0006f0ea,0x00098cae,0x0004f245,0xffe937b7,0xffed8dd6,0xfff7f6bc,0xfffeb54e,0xfffa5cc3,0xfffe6848,0x000077ae,0x00008284,0x00010403,0x0000d5e9,
-0x0000cd43,0xfffffbbc,0x000117b8,0xfffd6921,0x0000c2f0,0xffffd3f4,0xfff6d113,0x004cb24d,0x0071dd2d,0x003e69b2,0x001699e5,0xffef3735,0x003fdfc7,0x00511a4e,0x0039d2c0,0x0025eb96,0xffef9a99,0xffa6f210,0x0004ab39,0x00440c66,0x00670d7e,0x002b897e,0x0005502b,0xfffe20da,0xfff8648d,
-0x00093360,0x0011a282,0x000a14a4,0x00087db4,0xffff9e2c,0x00038eef,0x000076a0,0xfffff444,0xffff9aa7,0xffff7ba7,0xffff589f,0xffff8f4e,0xffff7a01,0x00000a77,0xffff51f0,0x000800cd,0xffe6df08,0x001181ab,0xffb1b963,0xff5530d9,0xff738272,0xff83bcf2,0xff6c94a9,0xff624b52,0xff959270,
-0x000f53f9,0x004cee55,0x004d3c84,0xffecb156,0xffe8aa0f,0xffced65e,0xffcd441d,0xffca436a,0xffd749e9,0xffe71f31,0xfff583ab,0x0003ceab,0x000c241d,0x00097510,0x000206d5,0xfff77790,0xfffee449,0xffff7690,0x00003898,0x000030b9,0x0000931d,0x00009572,0x0000c619,0x000088c0,0x000095b5,
-0x00000fd7,0xfffae15a,0xffb6aba8,0xffc67b81,0x007bbce2,0x006239f9,0xfffbc81f,0xffc31983,0xffd6ded4,0xffcddf71,0xffd066e7,0xffd21084,0xffc3b366,0xffc3b5aa,0xffc60682,0xffd1c501,0xffe1dc90,0xfff7c566,0x0004ddf9,0x000eb810,0x00187534,0x001d46d3,0x002654b1,0x002a2b73,0x0029132b,
-0x0021665e,0x000d9961,0x000289bb,0xffff4a10,0x00004655,0xffff74eb,0xffff4f2f,0xfffed060,0xfffef111,0xfffe1f32,0x000031ce,0xfffc8fc6,0x0010aeac,0x00244255,0x005f0e64,0xfffbe43a,0x0009b447,0x001156c4,0x000f77ba,0x000a5770,0x00001d92,0xfff92c4b,0xffec054f,0xfff1a523,0xfff1a329,
-0xffeea3a3,0xffeaed19,0xffe394b1,0xffdbc3b6,0xffdf692d,0xffe5594c,0xffed0076,0xfff23bcb,0xfff8a037,0xfffa7be1,0xffff4bdf,0x0005b340,0x000514f2,0x0001b00e,0xffffab43,0x0000329e,0x0000e69c,0x0001b481,0x000250c2,0x0002c4e3,0x00039fd1,0x0002f089,0x0000752a,0xfffedf38,0xfffa1496,
-0xfffda96e,0xffd62854,0xffd9d657,0xffe27181,0xffe107c2,0xffe51f17,0xffe86392,0xffeae3e3,0xffeb8dd2,0xfff25d50,0xfff98ce4,0x0001d2f0,0x000ccdb4,0x0017a77e,0x0021a0d1,0x001cde68,0x00175350,0x001272ff,0x000ec815,0x000ea54b,0x00074fb2,0x0003c8ee,0x0007cad7,0x0009854f,0x0005035a,
-0x0001a580,0xfffde4e6,0xfffc6ee3,0xfffab592,0xfff9bd39,0xfff7dab9,0xfff36dbe,0xffef6c16,0xffe909b4,0xffe14734,0xffdac0ee,0xffda0985,0xfff9c165,0xfff5afda,0xfffab32c,0xfffdace6,0x00015a2a,0x0004fd37,0x00097eb4,0x000d7a33,0x00126d7f,0x0015e1a9,0x00180a10,0x00197fd3,0x0019e48a,
-0x001b78e9,0x001a7103,0x001b78ef,0x001c0eae,0x001c29b3,0x001d3035,0x001c3cd5,0x00144daa,0x001abc53,0x00189fef,0x001a294e,0x0018f083,0x001949aa,0x00162593,0x001071cc,0x000be0b6,0x000a1216,0x00090ef3,0x000652c2,0x0004e552,0x0002c34d,0x00007e66,0xfffea71a,0x0007168e,0x000effbf,
-0x00106efa,0x0011a59d,0x00132563,0x00141e99,0x0014ee34,0x0015b20a,0x0016f3ab,0x001869ee,0x001a3f44,0x001c11f1,0x001dcb30,0x001f7683,0x001f0f9f,0x001e9b1f,0x001e271a,0x001d9890,0x001cab5b,0x001f014f,0x0012782f,0x000def49,0x00121992,0x0012d71f,0x000d103c,0x0014fcc1,0x001318cc,
-0x00128ec0,0x00120be4,0x000fd61b,0x000e1757,0x000c2cb4,0x0006d87f,0x000a0d06,0x000c01da,0x0004fff3,0x001e070a,0x00004f7f,0x000de419,0x0002220a,0x000283db,0x0003ac2f,0x0000f982,0x0007a40b,0x0007def3,0x0004ae49,0x000253f8,0x0001c61e,0x000484a1,0x00037677,0x00032a11,0x00021052,
-0xffffb139,0xffff876c,0x00033a9f,0x0001c957,0x000074c5,0xfffdbc43,0x000b25a2,0x0006d20a,0xfff4902b,0x000716b9,0x0003c273,0xfff64795,0xfff39e5d,0xfff51982,0xfff6d394,0xfff9cf91,0xfffa54f7,0xfff8d1d3,0x00094575,0x000b4130,0xfff298e1,0x0008cc63,0x0003b269,0x00092c38,0x0001923b,
-0x000415d9,0xfffd836b,0x0011856a,0x001596a7,0x000e79ea,0x00068fda,0x0004b209,0x000b2f03,0x00078aea,0x0001af6b,0xfffb386f,0xfff3c2d1,0xfff73046,0x00059ff6,0x00061d63,0x0002f897,0x00028c47,0xfffe9e2d,0xfffdb5e4,0x00093623,0xfff4f7b2,0xfff3e6ef,0x00042148,0xfff2d008,0xfff3f685,
-0xfffb5171,0x000264d4,0x000283a5,0x000067c4,0x0001ed56,0x000017de,0xffff218d,0x000197e7,0x000e63d3,0x00125618,0x00091943,0x00123976,0x0003049f,0x0027ca0f,0x002de42f,0x002052cc,0x000f7797,0x00084ed3,0x00140b38,0x00136166,0x00115406,0x00087d08,0xfff9b6ac,0xfff9eba5,0x00104dad,
-0x0008c727,0x00033da0,0xfffb8d76,0xffff363d,0xfff8bdbd,0x00039d51,0xffe73d5e,0xffeb7b56,0xfffdcf5e,0xfff1f85b,0xfff77d71,0xfffab946,0xfffb7586,0xfffcd576,0xfffaf1cd,0xffff5d56,0xffff9576,0xfff90d54,0x00027b74,0x0005d1ea,0x00093dcf,0xfffe956c,0xfffded73,0xffea7383,0x002cda3a,
-0x00451bee,0x00355ceb,0x0017d5d0,0x00108bf2,0x001b79f7,0x001abbab,0x0003ccf6,0xffea8078,0xffd3abad,0xffe4f388,0x0014b620,0x00173652,0x000c1d12,0x000014b9,0xfff9e351,0xfff187de,0xfffb3d9d,0xffeef95a,0xfffef7ab,0x0001f70b,0x0003258a,0x00041ac5,0x000275db,0x00018eb2,0x0000dafe,
-0x000073ff,0xffff08c9,0xffffe7d0,0xffee8413,0xfff7e727,0x003ade48,0x003c3973,0x005fcad8,0x0079471f,0x0087abb0,0x0046cefa,0x002a2f22,0x003ff3fd,0x00135230,0xfffea04e,0xffff332e,0x00163f95,0x00499ddb,0x00789d95,0x00655445,0x00380a4a,0xfffffaed,0xffdea25e,0xffd6d671,0xffe6336a,
-0xffe50f1f,0xfff6052c,0x000d0116,0x000806cc,0x0001d55c,0xfffee4d4,0xfffed4c0,0xfffe1ecc,0xfffeb763,0xffff5d67,0xffff76cf,0x00005402,0xffff2990,0x00072cff,0x0013d47a,0x00253e30,0x00077b2c,0x0021f407,0x000caaa3,0xfffebd26,0xffe76437,0xffc117cc,0xffba1af0,0xffea5344,0xfffb3a29,
-0x0022413a,0x004f13b3,0xffff7d5f,0xffbe8a55,0xffa6c26a,0xffc7788d,0xfff8f458,0x00273a74,0x00263e11,0x00112a8a,0xfff5ca27,0xfff6fee8,0xfffd6e7e,0x00004b18,0xfffb551a,0xffff6241,0x000055f0,0x0000b4c0,0x0000ec5f,0x0000ab14,0x00009257,0xfffff592,0x0000bf87,0xfffee61f,0xfffe1fd4,
-0x0004dcdb,0x00018578,0x005b3f04,0x007d62be,0x004a046b,0x002728fc,0x001acfd9,0x008b2eea,0x00aa89bb,0x008516a4,0x004ea97e,0xfffd2c1e,0xffa875a0,0x000889e5,0x00541c5e,0x0087fec8,0x0048b2e7,0x00180e3a,0x0000ee89,0xfffd62d6,0x000417c1,0x001d3039,0x0017e166,0x00097694,0x000385a2,
-0x000159e1,0x00008433,0xffffad48,0xffff8c45,0xffff69f0,0xffff683e,0xfffface5,0xffff72e1,0x0000399f,0xfffe6980,0x00075171,0xffeff5da,0x0013623f,0xffb972af,0xff2fd3de,0xff914e1b,0xffd7b1ee,0xffd91ee8,0xffbecb6a,0xffc85e5a,0xfff8e233,0x005e3c1c,0x006f905d,0x0016c58f,0x0007c624,
-0xffe47e96,0xffdb5482,0xffdbdb41,0xffea6208,0xfff47cc6,0xfffef436,0xffff6c72,0x0007cfe7,0x000a269f,0xfffecb80,0xfff96f6c,0xfffff783,0xffffde2b,0x00005473,0x000079e8,0x0000b6ec,0x0000920e,0x0000d99e,0x000042e1,0x0001325f,0xffff6cbd,0x00006f6d,0xffcd93ed,0xffdb97ba,0x007c04ad,
-0x0085a88f,0x0036c48f,0x00014ca6,0x00069748,0x00079af4,0x000ad5a2,0x00028009,0xffecac4a,0xffe7f2fb,0xfff57d35,0xfff6f910,0x0000c2c0,0x001134ae,0x001103d1,0x001365a0,0x00196801,0x00207906,0x00288f65,0x00301a38,0x0032e44f,0x00209138,0x00091fe0,0x000010e1,0xffff21c3,0xffffd66c,
-0xfffef143,0xffff00b9,0xfffeae3f,0xfffefed1,0xfffe1036,0x000055e8,0xfffaf601,0x000c5832,0x00223a7a,0x005d3e36,0x0011bcad,0x002a6c88,0x0027ba86,0x00270ce5,0x001bcf64,0x000cf36d,0x0000e7c4,0xfffab81d,0xfff06f41,0xffea7ea6,0xffe5aaed,0xffe9f105,0xffea2bfa,0xffe5f726,0xffecce45,
-0xfff28ca3,0xfff430e8,0xfff7ac2e,0xfffa6fe9,0xfffc0b0f,0x00036089,0x000a24d4,0x000c86c9,0x0003e917,0x00004515,0x00013c62,0x0001e5c4,0x00027c85,0x00024a35,0x00030395,0x0002c4fb,0x00038799,0x0001e690,0x00070b8f,0x00059952,0x00145ba3,0xffea1590,0xffe68251,0xffe924a9,0xffebb614,
-0xffeef66b,0xfff56bec,0xfff8fe5c,0xfffb3317,0x0000bb9c,0x0006da02,0x000c12df,0x00120bbe,0x00179ea6,0x001dd01e,0x0019d4ba,0x001561e0,0x0010fc2f,0x00116363,0x0010c8f6,0x0011f4dd,0x001013b0,0x000c0360,0x00094a23,0x00039c89,0x00000719,0xfffb7341,0xfffac682,0xfff8e6ff,0xfffaec83,
-0xfff80508,0xfff74cef,0xfff4468c,0xfff04038,0xffeb9596,0xffe8ab16,0xffe85718,0xfff93a8e,0xfff5b5da,0xfff986ed,0xfffff072,0x00044cf8,0x0008d192,0x000e12c0,0x00140395,0x0015745d,0x001618a5,0x0016b350,0x00170ccb,0x0017eb0b,0x001b0028,0x0019f959,0x001ac0a6,0x001a8e18,0x001abab2,
-0x001950bd,0x001aa124,0x001cfddb,0x001dc0b2,0x0020714f,0x001d764e,0x001e5a74,0x001d3177,0x00182e04,0x00150dc4,0x00118c9a,0x000c078b,0x00068593,0x00051f67,0x0002db5f,0x000261a6,0x0001fe99,0xfffc3a44,0x00191c1e,0x000edb0d,0x001257e6,0x0013f514,0x00159726,0x00175b9c,0x00189983,
-0x001a332a,0x001a2f46,0x001b3776,0x001c61e3,0x001dbfd0,0x001eacd3,0x001f7270,0x001f0327,0x001eb68f,0x001e5572,0x001e0897,0x001daa0c,0x001c0ff6,0x0024352e,0x00234fe7,0x0018e62a,0x002422fe,0x00244170,0x001aff74,0x001a6ce7,0x0019c39d,0x00180c0e,0x00180c9f,0x0016e7ba,0x001465f2,
-0x001a75da,0x00198cd9,0x000e9001,0x0017fd9f,0x00221083,0xffe9711e,0xffea18e7,0xffecf1b2,0xfff02792,0xffeebaa6,0xffed760e,0xffedd811,0xffec9c95,0xffeb4cea,0xffe89dc5,0xffe88d1e,0xffeb3c77,0xffebd1b8,0xffeb914f,0xffe987a8,0xffe6fc6a,0xffe6eac6,0xffead9bb,0xffea0e68,0xffebc2bf,
-0xffe7b0b2,0xffe83342,0xfff327c3,0x000f78e3,0xffe27be0,0xffee677b,0x000c9410,0x000690c5,0x00059c93,0x0007a0ce,0x00076a0d,0x0007a0d6,0x0006672c,0xfff29753,0xffe57179,0x000a57e6,0xfff43ebb,0xfffb7202,0xffeb5c36,0xfff226ff,0xffef41f1,0xffeae419,0xffedac36,0xffec6602,0xffeac191,
-0xffe1c2e0,0xffe191fe,0xffe7e70b,0xffea6977,0xffe5a39a,0xffdbe33f,0xffd20ba9,0xffd35d17,0xffe1c48b,0xffe484bf,0xffe922c7,0xffe39363,0xfff9b21c,0xffec764a,0xfff198d3,0xffe802e4,0xffe746c6,0xffef4c07,0xffdeff27,0xffdd253d,0xffe776e0,0xffececb4,0xfff157e4,0xfff3552c,0xfff0f9d9,
-0xfff251c6,0xffed27ed,0xffea9753,0xfff2ead3,0xfffa8452,0xfffd9826,0xfffdfc52,0xfff4a1f8,0xfff92e9b,0xfff289ce,0xfff079a0,0xffdc049b,0xffd90d9b,0xffe3d352,0xffed401c,0xffebf5ca,0xffdce4c8,0xffcbc864,0xffcaca05,0xffe2cca2,0xffe2d000,0xffe579f4,0xffe3a898,0xffeaf2b5,0xffeb07ae,
-0xfff93e09,0xffe02afa,0xffe9b972,0xfffd50c5,0xfff7b131,0xfffc5b49,0xfffd1421,0xffffe3bf,0xfffd9b9c,0xfffce58f,0xfffad0a8,0xfff66057,0xfff00c5d,0xffeecfe3,0xfff265e3,0xfff5bdda,0xfffd17c1,0xfff2915d,0xffe4362a,0xfff3418f,0xfff603ec,0xfff51fa5,0xffd43955,0xffcfa1fd,0xffdcce02,
-0xffec758d,0xffd7ecad,0xffb265da,0xff8fc210,0xff9ab366,0xffccd23e,0xffdd8a22,0xffe7ba0a,0xffe4647d,0xffef83bd,0xffede3f4,0xfff90a57,0xfff32e1c,0x0003018f,0x00024aca,0x0002b05b,0x000347eb,0x00016140,0x0000e785,0x0000d5a7,0x0000d8bf,0x000110d8,0xfffd226d,0xfff14e30,0xffed0c9e,
-0x001a0ffa,0x000ef680,0x00346015,0x0049f773,0x0062c448,0x00161910,0xfff1736d,0xfffb1086,0xffe48b1e,0xffe0fcd1,0xffebd6fa,0x0005a7a3,0x003e2916,0x007995c7,0x006ba11b,0x003f9e02,0x0002eef1,0xffd1ce5f,0xffbebc0f,0xffc8ee28,0xffdc8d34,0xfff4ec94,0x000a5210,0x00042259,0x0000aa24,
-0xfffe55a5,0xfffef0d5,0xfffe47d8,0xffff3cbb,0xffff7303,0xffff9a3e,0xffff8d37,0xffffb0b3,0x0001e1d8,0x0008db7d,0x000de9a6,0xfffb4bdc,0x00130c72,0x0012e4fd,0xfffc66cf,0xffeaf8c8,0xffb1dc80,0xffa53677,0xffda0ddf,0xffef0d4a,0x0019f359,0x00497389,0x00052757,0xffc30f12,0xff9899d2,
-0xffa8df32,0xffc716dd,0xffdf9816,0xfff09048,0xfff16047,0xffe72dbf,0xfff81690,0xfffcba0c,0xfffd8b23,0xfffd3d3f,0xffffecb3,0x00009ff7,0x0000b6a9,0x0000d5d4,0x00007b48,0x000070b1,0x00001fca,0x0000a455,0xffffcc93,0xfffeac44,0x0001ae01,0xfffd0419,0x005e26e5,0x006e0a10,0x003958a1,
-0xfffd1d23,0xffa88398,0x0011896f,0x0030c1ac,0x001655fc,0x001ca386,0xffe75b4f,0xff8e8c42,0xffcc85c7,0x00099153,0x00481cc1,0x0022ee2c,0x000b03b6,0x000533f0,0x000094b8,0x0004385a,0x000af6b7,0x00044854,0x000160b4,0x00020c2f,0x00013d9b,0xfffff52a,0xffffa91f,0xffff71e6,0xffff7e81,
-0xffff76cb,0xffffce47,0xffff3ce8,0x00008a60,0xfffd5130,0x00074964,0xfff2ccb5,0x00102c0a,0xffaffe10,0xff02b83e,0xff66d497,0xff92bd1f,0xff63df8a,0xff5ff38b,0xff7915b7,0xffc3e3d9,0x003b281b,0x005903b7,0x0009da93,0xfff14e83,0xffcc3983,0xffc9f9f6,0xffc02ddf,0xffc6ce15,0xffcff91f,
-0xffddf9dd,0xffeacbb2,0xfff88259,0x000013c7,0xfff7eb2d,0xfffa0161,0x0000c79e,0xffffb197,0x00009299,0x00007b64,0x0000b877,0x00007f80,0x0000ca49,0x00004b9c,0x00014e3c,0xffff85e1,0x00023b83,0xffe0d8f4,0xffe93ba3,0x005cc1ce,0x003ca699,0xffccf888,0xff9b70f7,0xffa611f7,0xffa9585d,
-0xffb9f35f,0xffc919a3,0xffbeb63f,0xffbac881,0xffbaa676,0xffca040d,0xffdb9578,0xffee95c6,0xffff4b10,0x000cb145,0x001950fd,0x00213a10,0x0025bb0e,0x0024f557,0x002455e1,0x0014b905,0x00051fa0,0xffff9a1c,0xffffa0cb,0xffff60ac,0xffff0673,0xfffee805,0xfffedf06,0xfffef6e0,0xfffe5e82,
-0xffff6f0c,0xfffcac9d,0x0003bd9b,0x001e5682,0x002fd08f,0x0019a858,0x001127f3,0x0009e06e,0x000fdb34,0x0006d708,0xfffafa70,0xffec0855,0xffd8c979,0xffe04847,0xffe512f8,0xffe5b75e,0xffe0bb3b,0xffd90d90,0xffd0ced4,0xffd7f9ee,0xffdfdfed,0xffe970fc,0xffefe812,0xfff9678c,0x00023e7a,
-0x00068d9f,0x00096198,0x00064873,0x0000e103,0x00008899,0x0001be66,0x0001b125,0x0002753d,0x0001fba1,0x000284be,0x0002b13c,0x00035c3b,0x000389fb,0x000459a5,0x00051020,0x000644a4,0xffdc5c00,0xffdc369b,0xffdfe3e6,0xffdea660,0xffe09384,0xffe1f779,0xffe2aadc,0xffe01192,0xffe6377a,
-0xffea6578,0xfff0cb1f,0xfffc6090,0x00089382,0x00148efa,0x0011a9e7,0x000e7106,0x000b4dfc,0x000a16fc,0x0008a101,0x0007f6bb,0x0006b52b,0x00059d0f,0x00040747,0xffff4642,0xfffd66da,0xfffad7dc,0xfffc5566,0xfffaa6e7,0xfffbfeab,0xfffb22f8,0xfff963ef,0xfff5a055,0xffef6cac,0xffe7fbb0,
-0xffe39452,0xffe04e21,0xfff778b2,0xffe6c791,0xffebb43b,0xffeeee52,0xfff225ff,0xfff42a57,0xfff764ba,0xfffa9003,0x00024460,0x000928a3,0x000e8b46,0x00133515,0x0016a4eb,0x001c0adc,0x001a52d3,0x001af8d8,0x001af8fa,0x001b060a,0x001bc4ba,0x0019d3a6,0x001a5263,0x00155192,0x00114772,
-0x001282f6,0x000ff708,0x00098d64,0x00056757,0x0000bf33,0xfffeb4d9,0xfffa0121,0xfff7d15f,0xfff8436f,0xfff67988,0xfff84b8e,0xfff4e78e,0xffeee00c,0x00049736,0x000233d4,0x000640c0,0x000634d1,0x00074f00,0x000869cc,0x00093512,0x0009120a,0x000b8616,0x000d9117,0x001029b1,0x0012c53d,
-0x001547c2,0x00183ca1,0x00176c7f,0x00172010,0x0016c78b,0x00161046,0x0015e339,0x00155ac6,0x00124410,0x00164a39,0x0024898e,0x000dd5f8,0x0013e1b4,0x002573dc,0x0023c215,0x0021daed,0x001ff112,0x001e2124,0x001c301d,0x00193074,0x000c3051,0x0003766a,0x0019ae4f,0x000b771b,0x0013d808,
-0x0005075c,0x00018c74,0x000c9ab2,0x0006cc7b,0x00086493,0x0003e1e0,0x000af8d3,0x000c0974,0x000bbec7,0x00083a77,0x00072a10,0x000729c7,0x0008d13c,0x000886eb,0x00066153,0x0003d370,0x00037a67,0x0006bc21,0x00062e12,0x00040152,0x0006d737,0xfffe1064,0xfff0fbea,0xffde61ff,0xffff7e68,
-0xffefb8ce,0xffe28f22,0xffddf097,0xffdf0c37,0xffe34299,0xffe3a886,0xffe3e231,0xffe51a02,0xfff4ff8d,0x000545df,0xffdd79cb,0xfff1c9e3,0xffee4275,0x000e4f53,0x00090ed6,0x0007b705,0xfffdc31c,0x001065f6,0x001632bb,0x00171b6e,0x000d799b,0x000a660e,0x000a6432,0x000efc77,0x000aa26f,
-0x0000c4f9,0xfff7b16c,0xfff8b016,0x0005a3e1,0x0006c3c6,0x00070a49,0x000290d1,0xffea8c5b,0xfffbb446,0x0002bf04,0xfff12c9c,0xffedfa90,0x00013c80,0xfff1fd0a,0xfff366dd,0xfffa7b30,0x0002557c,0x0005597d,0x0002aba8,0xfffff439,0xfff83f38,0xfff905da,0x000373ec,0x00047f4c,0x00148c05,
-0x00144f47,0x0014c213,0x00015dee,0x00230ca8,0x002ba4b2,0x002f6678,0x00199b54,0x0010e62f,0x000e272e,0x001bca24,0x001a06a8,0x000b9c76,0xfffb2c3e,0xfff9153b,0x000e5311,0x0008ddfc,0x0009bf1b,0xfff62e4b,0xfff37737,0xfff4a450,0xfffdd236,0xffeac6d1,0xffef498e,0x0000eefc,0xfff83ff0,
-0xffffa8f1,0xfffe0c1b,0xfffeff5b,0xfffd089d,0x000082a5,0xfffd757b,0xfffb4f3a,0xfff544c9,0xffffcd76,0xffff0e78,0x000f86c6,0x000c01b7,0x00000cf8,0xffe45b43,0x001bdc69,0x0037847f,0x0042fd24,0x00218d8a,0x0013dd3e,0x000cad23,0x002358ae,0x001442eb,0xfff0b437,0xffd185c1,0xffd9d9a9,
-0x00063f02,0x000d40a9,0x000c3070,0xfff73779,0xffecb384,0xfff568d7,0xfff8ecde,0xfffa03ed,0x000429fc,0x00012e13,0x0002895a,0x00011d6b,0x00008cef,0x0000b517,0x0000be48,0x00001d37,0x00009a41,0xffffff51,0xfff64573,0xfffb8ac8,0x002015ab,0x0031a379,0x005b42f4,0x0071c17b,0x008b6a0d,
-0x00577cba,0x003fbcb4,0x00516569,0x002e738d,0x001f7c09,0x0022bb3b,0x002c3078,0x005337b8,0x0077fada,0x007bc9ee,0x00591815,0x0024f52d,0xfffc046d,0xfff1863f,0xffeb6289,0xffe3e105,0x000361bf,0x000abf3f,0x000149de,0xffff9aa8,0xfffeb4e1,0xffff2216,0xffff3d82,0xffffc2f1,0xffff97d9,
-0xffffb891,0xffffcb3a,0xffffc005,0x000054ec,0x000588fd,0x001108b4,0x000b3f1b,0x002a47bf,0x001f4491,0x000e6cf0,0xfff415da,0xffce2e74,0xffbf7b5d,0xffddd7ac,0xfffc3f4b,0x00260e8d,0x004fa81a,0x00114e96,0xffd506b2,0xffb0195a,0xffc77668,0xfff2493d,0x001e5913,0x001cb98d,0x00133f0d,
-0xfff734b1,0xfff97603,0x000035c1,0xfffd0764,0xfffe9d22,0x000074dd,0x00009337,0x00008d09,0x000069ba,0x00003141,0x00004ef4,0x00002320,0x00005162,0x00004425,0xfffef718,0x0001499a,0x000c58de,0x00569ac8,0x006f298c,0x004734f9,0x001e4590,0x00047971,0x007d7812,0x00acdbcd,0x0087fbdc,
-0x0076a58c,0x00263981,0xffbf64dc,0x000b929f,0x0053c631,0x0095b769,0x006c0eab,0x003cf6d4,0x00149aea,0x000ee6c0,0x0014b82b,0x001c28b9,0x000d49ba,0x0005d9dd,0x0001244f,0x0000c1e9,0xffff87ae,0xffffa658,0xffff822a,0xffffb6af,0xffffaa19,0xffffe125,0xffff51ac,0x0000937f,0xfffd6eca,
-0x00056e63,0xfff59171,0x000d8c04,0xffadcb0c,0xfefda60e,0xffab1190,0x0002c523,0x000b376c,0xffe947c8,0xffd06593,0xffcaf947,0x0041ec55,0x00670215,0x002ab364,0x000a8d6e,0xffe28d3e,0xffde56d5,0xffddcd90,0xffeb4fc9,0xfff5fdbe,0xfffc6021,0xfffac9e0,0xfffa8944,0xfff75f94,0xfff8ab25,
-0xfffc86f8,0x00010afb,0x00001605,0x0000ab5b,0x00008319,0x00008533,0x000057e7,0x00009e4c,0x00004fd9,0x00011135,0xffffcbbc,0x0002e0b7,0xfff00516,0xfff57bb8,0x0032c68c,0x004b4744,0x0027e4f2,0xfffb7c03,0xfffe419c,0x0000a1b9,0x000e73c9,0x0012ed62,0xfff784dc,0xffea9244,0xfff0993c,
-0xfff3c287,0xfffe4582,0x000a5206,0x000bd612,0x0010ccf4,0x001d452a,0x00228407,0x002ba38e,0x002fd0c4,0x00258e6b,0x001639c8,0x00025e0a,0xfffe7bbb,0xffff6cd4,0xfffefd54,0xfffeee7f,0xffff2d87,0xffff1e91,0xffff316c,0xfffe8e26,0xffff57ac,0xfffd9f3c,0xfffeb95e,0x00127d0f,0x00297a99,
-0x000b5ceb,0x002e33a8,0x00340b73,0x00320410,0x002961a5,0x001cfc74,0x000f3c40,0x0007c150,0xfff0d17e,0xffe6f864,0xffe1ced5,0xffe6d27d,0xffe6f49d,0xffe1e893,0xffec53ac,0xfff4eba8,0xfffa8968,0x000091d2,0x00042c45,0x0003cd20,0x000a15fe,0x000d4b6a,0x0007ffcb,0x00026e38,0x00014759,
-0x0002501a,0x00022e60,0x0001cb11,0x0001ad57,0x0001f8a4,0x000265b9,0x0002f9db,0x00025c3c,0x0007d294,0x00098844,0x00168fd1,0xffeb6e51,0xffeefc0f,0xfff565c0,0xfff3d941,0xfff7aec7,0xfffb6a14,0xfffe0acf,0xffffcf2d,0x000205b8,0x0003fc9e,0x00047864,0x00082bbc,0x000be24f,0x000fa104,
-0x000ed53a,0x000cfc9d,0x000b8b69,0x000d3a52,0x001012d1,0x001165de,0x00091775,0x000487ed,0x0001a470,0xfffe1dec,0xfffaccbd,0xfffa800c,0xfffa6e76,0xfffc07e4,0xfffc3cc9,0xfffbf99e,0xfffa67ff,0xfff98802,0xfff4652b,0xffeedfc3,0xffe79312,0xffeb7148,0xffe6b1c2,0xffef1f26,0xfff50565,
-0xfffc245d,0x00023e78,0x00074852,0x000d3baf,0x0013a9b2,0x00152349,0x00169e89,0x0017fd8b,0x00185dd1,0x0018c21b,0x001ac610,0x001a346e,0x001aeac0,0x001b10dd,0x001b5090,0x001a240a,0x001caac4,0x001841bd,0x001a604e,0x0018b380,0x0012e142,0x00109b09,0x000e9aff,0x000adadb,0x00070489,
-0x00027614,0x0000666d,0xfffd32e6,0xfffa06f2,0xfff8aa91,0xfff5e85a,0xfff5ca14,0xfff4b8da,0x000ef608,0x000f4c90,0x001026c8,0x0012338b,0x0013d05c,0x0015f4a7,0x00179440,0x0019a5b0,0x0019815e,0x001a34c0,0x001b0822,0x001c303d,0x001d2d6a,0x001dfbd1,0x001dc028,0x001d9600,0x001d4fcd,
-0x001d43a0,0x001cb13a,0x001d0740,0x001c49ce,0x0015c3ff,0x000b3f58,0x001bb3de,0x00144c7d,0x0009d7aa,0x00096345,0x000919fa,0x0008623c,0x000751bd,0x000625c4,0x00048a61,0x000b27b1,0x00117a39,0xffffc76c,0x000833e2,0x0020994e,0xffe8e645,0xfff7ed02,0xffe76869,0xffef42e8,0xffedd6c7,
-0xffec473c,0xffedff23,0xffed934e,0xffed9394,0xffea0553,0xffe927c7,0xffe89708,0xffec21d7,0xffec24d9,0xffe98df6,0xffe6481f,0xffe5ba14,0xffe8bd18,0xffe9015c,0xffeaf3f8,0xffe3b434,0xfff5ddc4,0x0002f7d3,0x0013bf86,0xffeeb748,0xffffba8f,0x001259d1,0x000cf9bf,0x000c090a,0x000eabc7,
-0x000fb1f6,0x0010fd3c,0x001109db,0x00027cfc,0xffef3d0d,0x0010aa60,0x0005b240,0x000a9c9a,0xffeb0d28,0xffef0754,0xffef1e8f,0xffe98987,0xffefb0d1,0xfff0e468,0xfff2487d,0xffe75f99,0xffe425f6,0xffe2b347,0xffec6617,0xffe8d286,0xffdd00c4,0xffd10edd,0xffd0c033,0xffdcbc01,0xffe2d654,
-0xffe5c722,0xffe499d6,0x000381e6,0xffef9b0a,0xfff7f137,0xffed3660,0xffec8b9b,0xfff30026,0xffe5a9f2,0xffe6b977,0xfff28f4f,0xfff3bdd9,0xfff45da7,0xfffbaadb,0xfff3e7a2,0xfff7625e,0xfff6e971,0xffed8499,0xfffecb18,0xfff7c295,0xfff5e8bc,0xfffc1f67,0xffef4d11,0xfffc438e,0xfffb6f55,
-0xffff0f62,0xffe79fa8,0xffe05dc0,0xffda6646,0xfff265e9,0xfff219b4,0xffe186bb,0xffcba5fa,0xffc81ed2,0xffdbd46b,0xffe09716,0xffe13784,0xffe48f21,0xfff2e158,0xffefd6c2,0xfffa43b2,0xffe9bf64,0xfff5d577,0x0001d66f,0xffff504f,0x00024daa,0x00023f39,0x000189b8,0x00011326,0x00020dc8,
-0xfffe3a55,0xfff84d43,0xfff80357,0xfff4c088,0xfffd5517,0xfff294f8,0xfff4a9e5,0xfff2288f,0xffde90b2,0xfff77725,0x00047142,0x000cef13,0xffe86e87,0xffd6c2dd,0xffcb9cbc,0xfff15a0b,0xffe6123b,0xffbc193b,0xff916dc2,0xff943fec,0xffbefde9,0xffd70f04,0xffdeedb8,0xffe07031,0xfff28e5a,
-0xffed187f,0xfffcc0ce,0xfffc4378,0x00052b6c,0xffffb16e,0x0000b0bb,0x00000510,0xffff501d,0xffffb88b,0xffffac4a,0xffff5a0c,0x0000ef1b,0x00003355,0xfff758ee,0xfff3823b,0x002078e3,0x0009913f,0x0018e8cb,0x0031c767,0x0056c4dc,0x001f89f6,0x0003f899,0x000632c3,0xfff03573,0xffec64be,
-0xfff5f7b6,0xffff2ba7,0x002a0947,0x005c57fb,0x006b1292,0x004cb64b,0x0005c5fd,0xffdf561f,0xffc9c080,0xffd91108,0xfff0f54d,0xfffccff0,0x00096152,0xffff36a1,0xffff7975,0xffff19ee,0x00000399,0xffffafa7,0x00004ea3,0x000007a3,0x00003203,0x00001437,0xffffac59,0x00004cd0,0x0003122e,
-0x000d1ca6,0x000b138f,0x000f015d,0x000f904b,0x000f0915,0x000332ec,0xffd2d746,0xffc05995,0xffdacaa6,0xfff336b2,0x0019a98f,0x004329c8,0x001b3e50,0xffe534bd,0xffb1e34d,0xffb014d4,0xffc4109b,0xffdb18af,0xfff0e92e,0xfff24d69,0xfff29672,0x00029e56,0x000008c5,0xfffdb2dc,0xffff25d9,
-0x0000d5da,0x000038a7,0x00003955,0x000019e0,0xfffff491,0xfffffcae,0xfffffa28,0xfffff78e,0x00009bdf,0xfffea5d2,0x0001895d,0x0002adc7,0x00576589,0x006697e3,0x003df700,0xffff64d1,0xffacabb3,0x0013cd23,0x003a1153,0x001ae96d,0x00241c4b,0xffeddf11,0xff9452e8,0xffba45e0,0xfff3201e,
-0x003d6d32,0x00319504,0x002306af,0x0013eb5d,0x000f511d,0x0007182b,0x000b5d47,0x00041e7a,0xfffe6d0f,0x0003027f,0xffff6179,0xffffe85b,0xffff9342,0xffffd84b,0xffffda6f,0xffffef17,0x00000761,0xffffb7a5,0x000056b0,0xfffe5c87,0x00030817,0xfffaaeed,0x000ab0d8,0xffb24238,0xff0065b9,
-0xff900d82,0xffd0d2ec,0xffa3fc8d,0xff9f8225,0xff95ee25,0xff9b2860,0x00221e5f,0x0053a0f7,0x0029ded9,0xffff4cf3,0xffd48c54,0xffd07ac4,0xffc4d6b7,0xffc82c3e,0xffcd1a09,0xffd7f903,0xffde5166,0xffed1612,0xfff9a8f5,0xfff5b569,0xffff9eff,0x00005bb9,0x000067bc,0x00006bb8,0x000059bc,
-0x00003b26,0x000024be,0x000021f3,0x000041eb,0x0000562e,0x0000b29c,0x0000daad,0xfffa88e2,0xfffa3dc1,0x002b70af,0x00162429,0xffd18ce0,0xffb40ba6,0xffae26ad,0xffba614d,0xffccebb5,0xffdb5395,0xffcfd4a7,0xffc71dcb,0xffc92699,0xffd4cba0,0xffe374a8,0xfff066b5,0xfffd2203,0x0009b101,
-0x0016c1f4,0x00215fd9,0x0023acca,0x002393eb,0x00216762,0x000cdf4b,0xffffefed,0xfffec8b5,0xffff82cc,0xffff10f0,0xffff6cb4,0xffff76e9,0xffffc9a4,0xffff969d,0xffffb76b,0xfffea75a,0x000027d2,0xfffa1591,0x001265e3,0x000dd5f3,0x002a8719,0x0023f57d,0x00142a3e,0x001ae35f,0x000d6d77,
-0xffff0f07,0xffebf96f,0xffdc4b01,0xffdc751e,0xffdf5017,0xffdf49bf,0xffde0132,0xffda2c1e,0xffd3c1a3,0xffdddfc1,0xffe57a04,0xffeb9901,0xfff39870,0xfffd306d,0x00091d36,0x000d1dea,0x000bb012,0x0006af3e,0x00012f9f,0x0001ae6a,0x0001be0d,0x00013146,0x00010417,0x00006610,0x00008bd2,
-0x00010cfe,0x00018b9f,0x0002efce,0x0003e2cf,0x000b7258,0x000f7ac2,0xffeade7b,0xffe75099,0xffe677eb,0xffe64e1e,0xffe699e4,0xffe84155,0xffe8943e,0xffe54f04,0xffe9aff7,0xffeb63d8,0xffee9fb9,0xfff4d249,0xfffbf181,0x00034987,0x0002e8d2,0x00026a2b,0x000194b5,0x0002c136,0x0000e6a7,
-0x00058941,0x00058d79,0x0000de45,0xfffe8661,0xfffb1f15,0xfffb3615,0xfffc4d51,0xfffde1a4,0xfffe6cb5,0x00001b60,0xffffa1e4,0xfffe924f,0xfffd26a4,0xfff7d5b4,0xfff2f493,0xffefe393,0xffecf182,0xfff4fe49,0xffe5ba20,0xffe99334,0xffed49a3,0xffeff476,0xfff100eb,0xfff339c4,0xfff61cf1,
-0xfffc3493,0x00021a08,0x00074b9e,0x000bd91b,0x000ff0a2,0x0015d3d2,0x0014bcd3,0x00154ee4,0x001560fa,0x0015e563,0x001665aa,0x0015ad13,0x001a98bc,0x00102bd2,0x000cdea5,0x000bf6b1,0x0008d9bd,0x0000e72a,0xfffd30e1,0xfffa9877,0xfff93ffc,0xfff4cf9a,0xfff17e11,0xfff1fdb4,0xfff06143,
-0xfff322b3,0xfff0c6ac,0xffea56e6,0x0006b5a4,0xfffc4d3c,0x000096fd,0x000048e5,0x00010ed8,0x00024c33,0x00031984,0x0002e512,0x0004de25,0x0006895f,0x000898da,0x000ae200,0x000d044e,0x000fa3c8,0x000f14fa,0x000f2019,0x000f0c16,0x000ea609,0x000f00dc,0x000cca25,0x00131bd4,0x001a7024,
-0x0024e93e,0x000d8b10,0x001837a2,0x0023fa1e,0x00228cd3,0x00201f6c,0x001de28e,0x001c7558,0x001af555,0x00182cde,0x000f60ad,0x0003856b,0x00180a45,0x000f3ce5,0x000c4a66,0xfffda08b,0xfff0dfc3,0x0006106f,0x000041aa,0x0000fd53,0xfffcb02f,0x00016f9d,0x000285b9,0x0004bc79,0x00007c36,
-0xffff450f,0xfffd5974,0x00015d26,0x00014b7a,0xfffe8bbd,0xfffc26e7,0xfffba381,0xfffdd120,0xfffe4724,0xfffd2054,0x00011d94,0xffee64da,0xffe4fc60,0xffe320b9,0xfff1b32f,0xffe50021,0xffe63f2b,0xffe038ee,0xffe08762,0xffe52459,0xffe4692e,0xffe48759,0xffe750c0,0xffe890e3,0xfff60e42,
-0xffe1d2be,0xffe4e048,0xffe57d71,0x000209cf,0x000381de,0xffff5c20,0xfff5f070,0x00012aac,0x0006240d,0x000d6a43,0x00029091,0xfffefd50,0xfffa5e97,0x0005ffd6,0x0003ccc0,0xfff836eb,0xffeed21b,0xffed5acd,0xfff697cb,0xfff99c2c,0xfffdfadf,0xfff79655,0xffe492e1,0xfff667f7,0xfff89b97,
-0xffed0c6d,0xffea4573,0xfffa4bff,0xfff04984,0xfff16035,0xfff7d874,0xfffcefdb,0x000148e2,0x0001087d,0xfffa364c,0xfff1bfcd,0xfff22149,0xfffb398b,0xfff5dcec,0x0006b466,0x000f44af,0x0009b658,0xfff88fdf,0x000cba5b,0x0012843f,0x0023dce7,0x000acd22,0x0002f22b,0xfff6797e,0x000fd518,
-0x000fbad1,0xfffe2a31,0xffee39ec,0xffe9fee5,0xfff9d092,0xfffa09df,0x000061d5,0xffed57b6,0xffeac680,0xfff14c1d,0xfff82cde,0xfff0b757,0xfff8516c,0x000265f1,0x00003ad5,0x00039577,0x0000fbda,0x00014966,0xfffe8597,0x00018bdd,0xfffd72b0,0xfff88481,0xfff21ec0,0xfff7e683,0xfff3ae6d,
-0x00031404,0x000b371d,0xfff91ef1,0xffde7563,0xfffcedc5,0x001373bb,0x0031bbb9,0x000de007,0xfffc32eb,0xffe98faf,0x0012a32f,0x000c9deb,0xffe42cea,0xffc147aa,0xffc0310e,0xffe1f0b4,0xfff1b4fa,0xfffd51fb,0xffeb7891,0xffe73ddf,0xfff77169,0xfffa4e9d,0x00015f7e,0x0003f457,0xffff9b22,
-0xffffefdd,0xffff1040,0xffff6e04,0xffffc3a4,0x000032e8,0xffffacdb,0x00011ea2,0x00019971,0xfffa7231,0xfff925bf,0x0008cb75,0x001b68b9,0x003eb753,0x004f24bf,0x00759f0e,0x0049968e,0x00325f1c,0x00365935,0x00290261,0x0026333f,0x002d2351,0x003006d6,0x004c6dcb,0x006b8ff2,0x007ea366,
-0x00666bfb,0x0034fc3e,0x0008997a,0xfff89b10,0xffe81012,0xffe7ace9,0x00086101,0x0003bc3d,0xffff8aae,0xfffe6fa0,0xffffd433,0x00002038,0x00004b15,0x000049c9,0x0000129a,0xfffff2b3,0x0000218b,0xffff30bc,0x000059f4,0xffff8aa8,0x0003b9a3,0x0006ada3,0x002368cc,0x002db5cc,0x001f8558,
-0x000817fd,0xffdad176,0xffc59e36,0xffd4c4d4,0xfff65d88,0x001c0d5d,0x003c02ca,0x00192e99,0xffe920ac,0xffbb67d6,0xffbff630,0xffd8e786,0xfff9be39,0x0001d481,0x000837c4,0xfff95b18,0xffff3a83,0x00013051,0xfffca27d,0x0000d044,0x00007ce8,0x00004fc7,0xffffe5de,0xffffece6,0xffffd57b,
-0x00000b74,0xffffe45f,0x00004524,0x00000089,0x0000ba1c,0xfffe3b3a,0x000bb77a,0x004ca3bf,0x00616868,0x00366576,0x00031fe0,0xffccdfc5,0x0036f95f,0x006ade24,0x0053d98e,0x0062ebec,0x00255936,0xffc16239,0xffea5ce6,0x00211fc6,0x00640b70,0x005de88b,0x00444279,0x001ed8df,0x0018b2ef,
-0x001911f3,0x0011c73b,0x0001247a,0x0001d0f3,0x0000cd7c,0xffffd2be,0xffff7ae9,0xffffd1ae,0xfffff0ce,0x00000d4a,0xfffffeac,0x000015c0,0xffffc354,0x000052ee,0xfffe915f,0x000224a8,0xfffad57c,0x000823b4,0xffb0553e,0xff0828f5,0xffb1d6e1,0xfffd2eff,0xfff900b5,0xffe7981a,0xffc7b45d,
-0xffac2813,0x0015ee81,0x00464aa8,0x00339a3f,0x0004869f,0xffdb2f8c,0xffd83e4e,0xffd3407d,0xffdb2b65,0xffe3fdfb,0xffea3241,0xffec206e,0xffebb9ee,0xffedae15,0xfff84e4e,0x000057fe,0x00007475,0x000076f3,0x000059a6,0x00001e52,0x00000c18,0x000005b4,0x00000645,0x000019eb,0x000040a9,
-0x00009231,0x0000ea82,0xfffefeff,0x0000937a,0xfff4789f,0xfff56014,0xfff9fa03,0xffe4212b,0xffde56a3,0xffe5d74a,0xfff80f2d,0x00059e52,0xfff18ada,0xffe2dbc1,0xffe08093,0xffe63b2f,0xfff1c3e0,0xfff9c375,0x0000c6ce,0x0009c3a5,0x00190863,0x001d74b7,0x002452c2,0x00251bca,0x0017d352,
-0x000acb15,0xfffe7064,0xffff30a3,0xffff29bf,0xffff5b7e,0xffffbe36,0xffffd7f9,0xfffff57f,0xffffd9ff,0x000006ed,0xfffef932,0x00001c95,0xfffb3a26,0x00073ab2,0x00006f18,0x001044d9,0x0024d041,0x002a90d5,0x002933ef,0x0021e0f6,0x00186080,0x000a3408,0x0000e6fb,0xffed830d,0xffe6d1a5,
-0xffe3652e,0xffe59b0d,0xffe404cf,0xffdf3c3c,0xffeacbe2,0xfff3a54a,0xfffaabcb,0x000246f8,0x00084a9b,0x000a9c80,0x000d8928,0x000c3d28,0x00032d56,0x0001b681,0x0001e83d,0x000136af,0x000089cd,0x00003d35,0x0000282b,0xfffff906,0x00006397,0x0000da40,0x0002922c,0x00034636,0x0009467d,
-0x00119b71,0xffec15ed,0xfff25915,0xfff8e4b6,0xfff54dcd,0xfff8095f,0xfff8da08,0xfffa414a,0xfffa78d6,0xfffb224b,0xfffa82ff,0xfff93ea1,0xfffb9485,0xfffe7fff,0x0000be9b,0x0001fe1a,0x000240a6,0x00032ce7,0x0004a4c9,0x00082350,0x00086230,0xfffefd9e,0xfffd5d63,0xfffc4b31,0xfffb0c04,
-0xfffac652,0xfffe1812,0xfffef2eb,0x00000c8a,0x000013fd,0x0000f004,0xffffab4e,0xffff24d4,0xfffa25d0,0xfff510e0,0xffecfc4b,0xffeefd83,0xffe45d5d,0xffec1dbf,0xfff1e8f3,0xfff6e8c5,0xfffc1848,0xffff8da9,0x0003cd74,0x00083ffe,0x000af835,0x000dfea3,0x0010ab7d,0x00122b8a,0x00131ad9,
-0x0014da55,0x0015127f,0x00160641,0x0016dc05,0x001767ad,0x0017ac5d,0x0019e7b6,0x00126b17,0x00123dc1,0x000ce418,0x000808d8,0x0003b90a,0x00008c59,0xfffe5073,0xfffb9953,0xfff88d83,0xfff794cf,0xfff6809b,0xfff3793d,0xfff274f6,0xffef9aae,0xffeecf5b,0xfff059c1,0x00014556,0x0007b8b8,
-0x00078a7d,0x0008e835,0x000a0dd8,0x000bbcad,0x000d1c02,0x000e8379,0x000f02ce,0x000fb894,0x00109860,0x0011c72e,0x00130afa,0x0014463f,0x00143955,0x00143e64,0x00142e37,0x001450e7,0x0013ead7,0x001576e4,0x000e801b,0x0008b4ee,0x00070b13,0x000c617d,0x0005a971,0x00041252,0x0003169d,
-0x0002267a,0x00016994,0xffffe471,0xfffea94c,0xfffdbc20,0xfffe5322,0x0003d237,0xfffc6d85,0xfffc2f5c,0x00140bf2,0xfff452f9,0x0003946a,0xfff30228,0xfff87675,0xfff85b0d,0xfff5d6b4,0xfff980f7,0xfffa1c43,0xfffb85cc,0xfff73748,0xfff59e30,0xfff27add,0xfff7b8b7,0xfff803f8,0xfff57e81,
-0xfff28bba,0xfff1b356,0xfff322dd,0xfff44002,0xfff4e712,0xfff0373c,0x000176d0,0x000580f4,0x0001fd24,0xfffd401f,0x0003e80e,0x00030d98,0xfffeea68,0xffff0426,0x0002dc35,0x00041aea,0x000591d2,0x00073352,0x00061b4a,0xfffd8149,0x00011382,0x0007f349,0x000746b1,0xfff871e1,0xfff87408,
-0xfff9f8ab,0xfff30a2e,0xfffd59cd,0x000157d2,0x0005b485,0xfff9d3da,0xfff4507a,0xffeccf20,0xfffa7041,0xfff89e18,0xffed457c,0xffe2ceaa,0xffe12df8,0xffe874bb,0xffef5b2a,0xfff0c6f3,0xfff1f999,0x0000bcc2,0xfff78af5,0xfffea78f,0xfff236ca,0xfff1cd9f,0xfffac0a7,0xfff2f612,0xfff5aa33,
-0xfffcfe9c,0xfffd86a9,0xfffcff17,0x00039f32,0xfffa19db,0xfffa179d,0xfffd8d5c,0xfff7e2eb,0x000657e1,0xfffefc8f,0xfffebea9,0x00056cdf,0xfff6699c,0x000b12da,0x00100ea9,0x001a37ad,0x00015375,0xfff713c4,0xffe4a1f5,0x00033f43,0x000492b5,0xfff563d6,0xffe1fc1d,0xffdcd9c6,0xffe83fe5,
-0xffee5711,0xffeeaa43,0xffee5f80,0xfff9a79e,0xfff5c654,0xfffb250c,0xfff5f016,0xfffe949d,0x00021697,0x000174c9,0x00023338,0x0000cb07,0x0000996e,0x00002444,0x0000fc90,0x0000305e,0xfffb8522,0xfffb0b8e,0xfffc45dc,0x0002146c,0xfffab38c,0xfffc39be,0xfffbf9ed,0xffe548d6,0x000648d9,
-0x001c6b00,0x002ea078,0x00094336,0xfff00806,0xffd3b360,0x0003515c,0x00014e7c,0xffdadf0e,0xffb5033f,0xffb12ae9,0xffcc3f89,0xffe3e7bb,0xffe9561b,0xffe88cbe,0xfff43a8e,0xfff33289,0xffff30b4,0x00015647,0x00021f84,0xfffee943,0xffffbfb2,0xffff4a6c,0xffff9f8e,0xffffd7cb,0xfffff49a,
-0xffff7500,0x000024ba,0x0001ad22,0xfffc789d,0xfffa0204,0x001f906a,0x00182c23,0x001aaafa,0x0031c253,0x005b21a6,0x0037cecc,0x0024344c,0x001f9731,0x001120b7,0x000c3de7,0x000e04b5,0x000cac37,0x00261a90,0x00477050,0x0067e4fe,0x00578289,0x00188c39,0xfffc9783,0xffe949f0,0xfff0a2c0,
-0xfffd3bc3,0x000365ac,0x00035114,0xfffe68a6,0xffff83d2,0x00001b7f,0x00004309,0x00003328,0x000037f4,0x00000d56,0x00000831,0x00004c07,0xffffb202,0xffffd4bd,0x00006b98,0x000a1544,0x00155ebd,0x0013cb07,0x000f3480,0x00199bba,0x000eb2b4,0xffee6b30,0xffdca399,0xffe2866d,0xfff9dbfb,
-0x0015302a,0x002ec24e,0x001d01ec,0xfff58dd5,0xffc63c57,0xffba5db1,0xffc859a1,0xffe4258e,0xfff711c2,0xfffa580d,0xfffefbf0,0x000778a1,0x00006a2e,0xfffe3f65,0x0000a29e,0x00006467,0xfffff11a,0xffffebad,0xffffe665,0xffffe4b0,0xfffffbd8,0xffffeba5,0xfffff1b5,0x00001677,0x00003f30,
-0xffff37be,0x00033041,0x0044bf8c,0x00548928,0x0031c02d,0x00033038,0xffcfeb02,0x00297d89,0x00544171,0x003bd92a,0x003daba8,0x0007af1d,0xffb68c09,0xffccba91,0xfffcaea6,0x0040b791,0x00491c72,0x003e2db2,0x00215b78,0x001b0b3f,0x000da396,0x000c7f25,0x000362ac,0xfffe89e8,0x0001cb3d,
-0xfffefb06,0x000001d6,0xffffd186,0x000011bd,0x000004e3,0x00000d0d,0x00001252,0xfffff5e8,0x00004625,0xffff5201,0x0001047e,0xfffd3762,0x0004e127,0xffb8079f,0xff298e52,0xffc2591b,0x000c6228,0x00020a2c,0xfff5eb73,0xffd23155,0xffa1e1ac,0x000fbb17,0x0048391d,0x004bfb02,0x0016ae67,
-0xffeb3525,0xffe1b8b6,0xffd83e06,0xffd99181,0xffdaab79,0xffe0f305,0xffe07868,0xffe78f53,0xfff2b2ed,0xfff939ef,0x0001f0ab,0xffffe809,0x00008cc1,0x00001138,0x000018d7,0xfffff962,0xfffff8f7,0xffffe8d1,0xfffff7fd,0xffffde8a,0x000059b2,0x00004e27,0x00008128,0x00014519,0xfff4369c,
-0xffedc927,0xfffbad45,0xfff5ee39,0xffe18e43,0xffecd3d5,0xfff88907,0xfffe2d21,0xfff0fd8b,0xffe49bb7,0xffe8538b,0xffed3afa,0xfff7612b,0xfffcaccc,0x00030ab9,0x000b4e52,0x0016386c,0x001df843,0x00201150,0x00212587,0x00198de4,0x0006aca7,0xfffd5c8a,0xffff7a01,0xffff5f2e,0xffffa5f1,
-0xffffe208,0xffffee54,0x00002421,0x00000216,0x000069e3,0xffff8a7a,0x0000dd75,0xfffc34d4,0x0004408b,0xfffadcbe,0x0026a9c7,0x002fd396,0x0023215f,0x00245118,0x00169a66,0x000a2251,0xfff94c0b,0xfff1d777,0xffe4e1c9,0xffe1b474,0xffdfb0a9,0xffe317ff,0xffe4bc37,0xffe32445,0xffef13fc,
-0xfff5aff4,0xfff79fbf,0xfffeeed6,0x0005d3ff,0x000e4864,0x000fd7f3,0x000c3663,0x00041db2,0x0001323b,0x000172e3,0x00008f3e,0x00004a9e,0x00000868,0xffffcf0c,0xffff9928,0xffffc121,0xffff44db,0x0001867a,0x00006e4d,0x0008b4e4,0x00141596,0xfff7b31f,0xfff55401,0xfff3f8bb,0xfff47e12,
-0xfff49ae8,0xfff69276,0xfff741e5,0xfff5b09a,0xfff7556a,0xfff6f89b,0xfff66577,0xfff65f2d,0xfff70c16,0xfff7ca4e,0xfff92c1d,0xfffa76f1,0xfffb73d7,0xfffe7861,0xfffe4e97,0x0004b4e6,0x0002cc89,0xfffdb0cd,0xfffcc43a,0xfffb26c6,0xfffd08f4,0xffff37f9,0xffffcefe,0x00004a69,0x0000dc43,
-0x00015e2b,0x00016701,0x00023916,0xfffe2fb8,0xfffb85ce,0xfff9ae8d,0xfff807f5,0xfff19f7b,0xffed8587,0xfff06b32,0xfff4490a,0xfff6e51a,0xfff831cc,0xfffa3fb6,0xfffd325d,0xffffbe9e,0x000285e2,0x00056c6e,0x0007ccc5,0x000a6fca,0x000e3655,0x000e7b0f,0x000f4d4c,0x000fda28,0x0010bff2,
-0x0010d1eb,0x00125965,0x001608c6,0x000c877c,0x0009ea89,0x0005e188,0x0002a806,0xfffddd35,0xfffbebb2,0xfffb4027,0xfff9e138,0xfff76ebc,0xfff43cb9,0xfff37642,0xfff1b691,0xfff2b132,0xfff199d9,0xffee99c4,0x00078745,0xfffdd122,0x00003dc3,0x00008846,0x00012c01,0x00026e0d,0x000347be,
-0x0003b1b3,0x0004509e,0x000518cd,0x00060915,0x0007526b,0x00087aac,0x0009cffd,0x0009c6bf,0x000a1158,0x000a3cba,0x000a6220,0x000ae582,0x00090622,0x0011a497,0x001593ed,0x0015ea72,0x000d70bb,0x001359d9,0x0012d724,0x0011c3aa,0x000fd8e4,0x000e393b,0x000d377c,0x000c5b9b,0x000a93b3,
-0x000aab2f,0x0004db36,0x000a01ff,0x000aef53,0x0009446d,0xfff36a5a,0xffec3a8a,0xfff7e84f,0xfff76cc2,0xfff70213,0xfff45e48,0xfff5d84f,0xfff65ef3,0xfff9aeb7,0xfff537f3,0xfff3e3e1,0xfff0d405,0xfff60fa0,0xfff65215,0xfff3b4b5,0xfff1b5a4,0xfff11502,0xfff1e5c9,0xfff33b99,0xfff3dea9,
-0xfff4c8ef,0xffead387,0xffeb7d31,0xfff80cc8,0xffec5687,0xffeb3053,0xfff71b06,0xfff1850f,0xfff10741,0xfff528b4,0xfff4e07d,0xfff5b572,0xfff8fb76,0xffed73ce,0xffedfc23,0xfff6736f,0xffebae0a,0xfff00bc8,0xfff3e742,0xfffa3477,0xfff6aae3,0xfff056d0,0xfff33003,0xfff5e080,0xffff47b6,
-0xfff3e17d,0xffefcce2,0xffe889ef,0xfff75fc9,0xfff6f595,0xffebf776,0xffe3a605,0xffe0b6ab,0xffe53eff,0xffea9cd6,0xfff0ba33,0xffecaf41,0xffef19c2,0xfff3f6b6,0xfff35f7b,0xffed6c4a,0xffee8ceb,0xfff86af9,0xfff434f8,0xfff561b9,0xfff9d157,0xfffaf893,0xfffd3832,0xfffff80d,0xfff8041e,
-0xfff203e0,0xfff26607,0xfff449ac,0xfff354e6,0xfff8a5ec,0x0003607b,0xffff1aaf,0xfff407e6,0xfff920dc,0xfffa2e74,0x000fe81a,0xfff62ebe,0xffeede46,0xffdd1232,0xfffb2a18,0xfffd371c,0xffecf57f,0xffdf7180,0xffda46f6,0xffe245f5,0xffe8d877,0xfff06d63,0xffe87475,0xffecf616,0xfff270a2,
-0xfff800f9,0xfffaadf7,0x00011071,0x0002ce08,0x00026be5,0x00042934,0x00021d5b,0x0001ed04,0x00005f1e,0x00014f0b,0x00005ee4,0xfffc2138,0xfff5d4c9,0xfff59814,0xfff44931,0xfff65313,0x0003d81b,0xfff75eb6,0xffe49822,0xffea94e7,0xfff806ef,0x0019fd59,0xfff5a10b,0xffe12f51,0xffc8c368,
-0xfff8d956,0xfffa3256,0xffd4909a,0xffb461b6,0xffacb6f5,0xffbf84c8,0xffd6a7ed,0xffe8c080,0xffe36e23,0xffec8609,0xfff9214c,0xfffeb96c,0x0002e8a3,0x00002312,0xfffeeb85,0xfffef4b6,0xfffe60be,0xfffeeb34,0xffff4abd,0xffffb6f2,0xffff6af3,0x00001230,0x00022973,0xffff8654,0xfff997da,
-0x0004c219,0x00058ad0,0x00132548,0x001fd688,0x004b3050,0x0028a50b,0x00144c3c,0x000af5f8,0x001084bf,0x00152d33,0x00178842,0x00167f26,0x0029e02d,0x0046567d,0x0063fcd5,0x005843f0,0x002ba041,0x00077c8e,0xfff40606,0xffe80670,0xfff48e4e,0x0005f367,0x00003acb,0xffff19c5,0xffff975a,
-0x00008ec8,0x00007ad9,0x0000bc82,0x00008add,0x00005780,0x0000260c,0x00005971,0xffffb4cf,0xffff65dd,0x000009af,0x00014749,0x0006033e,0x000f30aa,0x0020af6a,0x001f1ff2,0x00142f0c,0xffe91a0d,0xffd3571d,0xffd76f1e,0xfff4ba9b,0x00119aca,0x0027cec0,0x001c51c7,0xfff9a6a4,0xffca0040,
-0xffb94f7e,0xffbd433a,0xffd0deb8,0xffe32eba,0xfff41355,0xfff930bd,0x00032029,0x00000daa,0xfffe8df4,0x0000fef0,0x0000000d,0xffffdd8d,0xffffaf53,0xffffaa32,0xffffa9c0,0xffffd997,0xffffcb61,0xfffffdcd,0xffffdb07,0x0000e508,0xfffed63d,0x00036066,0x00362151,0x0048acb9,0x00281b43,
-0xfff57bf5,0xffb0d2db,0xfff83612,0x0023bd77,0x001cc22d,0x003b2c45,0x0017bf86,0xffca5bd7,0xffd17920,0xfff33b10,0x002cd159,0x00448ff8,0x00430643,0x002966de,0x001fe377,0x00167cf2,0x00065a06,0xfffa421b,0x00008334,0x00008685,0xffff6bee,0xfffff490,0x00000cf7,0x0000308c,0x00003c05,
-0x0000392c,0x000034e8,0x00000bc9,0x00005518,0xffff658c,0x0000e40e,0xfffd5f6a,0x00016ca3,0xffbf95f6,0xff42eca6,0xffb68954,0xffe73713,0xffe0dee0,0xffdd7c1d,0xffc45d01,0xffa69cb3,0xfff289ce,0x0025882e,0x003a6017,0x0009c657,0xffe4b3af,0xffdcc3a5,0xffd3a9f3,0xffd3f7ab,0xffd7487a,
-0xffddad10,0xffe2a421,0xffe4c467,0xffed4ad4,0xfffccfaa,0x00015923,0x00000029,0x0000521d,0xffffe6a7,0xffffdd32,0xffffbb63,0xffffb748,0xffffbb21,0xffffd728,0xffffba4c,0x00005004,0xfffffc0d,0x0001195a,0x00044ce5,0xffd8d8de,0xffb92271,0xffdecb6c,0xffe2ccde,0xffd400c3,0xffda4c8f,
-0xffe5e916,0xfff06eed,0xffe5cff3,0xffd930fe,0xffd48762,0xffdb961d,0xffe7c080,0xffeda0b8,0xfffa9321,0x00064454,0x0013e17a,0x0018e43f,0x001c1e64,0x001b3db4,0x000f47b2,0x00030324,0xfffdd327,0xffffd6ff,0xffff81af,0x00001ccb,0x000034d4,0x00006c58,0x00009158,0x00006337,0x0000903f,
-0xfffff6eb,0x0000bc60,0xfffd4278,0x000324db,0xfff16848,0x001ae4a8,0x001b9ca9,0x00176980,0x0016aec1,0x000fbff6,0x0008a3ef,0xfffc11f6,0xfff3631d,0xffe9f3f8,0xffe7f671,0xffe63d53,0xffe58bba,0xffe32ca4,0xffe02854,0xffeb2270,0xfff2f706,0xfff9c661,0x000271f1,0x000a0df6,0x00106727,
-0x00102350,0x000a025d,0x00011c7d,0x00019c49,0x00007c03,0xffffe39a,0xffff8e7d,0xffff1495,0xfffeed3a,0xfffee3e6,0xffff5fcd,0xfffec7a3,0x0000c715,0x00007984,0x00054763,0x000c7995,0xfff1b653,0xfff61f22,0xfff8d9c0,0xfff564cb,0xfff51d57,0xfff448bc,0xfff45a5d,0xfff2a9f7,0xfff31746,
-0xfff1a150,0xfff06fcd,0xfff1ccf9,0xfff4022e,0xfff52f1b,0xfff7554a,0xfff8f254,0xfffac6e5,0xfffbc74a,0xfffd4284,0xfffe59d9,0xfff9ce27,0xfffa66ff,0xfffb82dc,0xfffc6016,0xffff44ba,0x0000c78c,0x000119e3,0x000256ad,0x00027f31,0x0002d0ca,0x0001c13a,0x000309a5,0x000053e1,0xfffc5fd4,
-0xfff83dc4,0xfff681df,0xffed1b95,0xffed2319,0xfff0dfab,0xfff2e946,0xfff594e9,0xfff6c597,0xfff86b05,0xfffa3011,0xfffddc59,0x0001b3b2,0x00051a63,0x00079dfc,0x00096ee4,0x000b8f4a,0x000c44ba,0x000d517d,0x000e92f7,0x000f8722,0x0010ef3c,0x00122a55,0x000e3fd0,0x0008cce6,0x0002edb9,
-0x0000274c,0xfffcd290,0xfffa8254,0xfffa0b01,0xfff910a3,0xfff7e407,0xfff71053,0xfff650a4,0xfff403ca,0xfff26d07,0xfff09519,0xffee6d3d,0xffef63c5,0xfff9847d,0xfffd6a90,0xfffdb8f5,0xfffe0390,0xfffe8b03,0xffff520c,0x00000285,0x00003c52,0x0001414c,0x0001fa70,0x0002ec0e,0x0004169b,
-0x00056c61,0x0006e925,0x00070e86,0x000754c2,0x0007855b,0x0007bedb,0x0007e7ad,0x0008d912,0x0003f622,0x000384e1,0x000a700b,0x000099b9,0x00000d4a,0x0005c422,0x0004153f,0x00024da0,0x00014251,0xffffe064,0xffff0cb7,0xfffe8306,0xfffa17e7,0xfff9c514,0x00013a0f,0xfffa127e,0x00047aa8,
-0xfffd20a4,0x00029669,0xfffe6f42,0xffff2216,0xffffe3f1,0xfffcf9d0,0x0000e2dc,0x00020da4,0x0004ba9a,0x00005fda,0xfffe9eb0,0xfffa91ca,0xffffe7d5,0x00005df2,0xfffe5a50,0xfffc79df,0xfffba7f3,0xfffb9e69,0xfffd178b,0xfffca561,0xfffcbad9,0x0000fc8d,0xfffc4287,0xfff012c9,0x00008e5c,
-0xfffb7151,0xfff2af73,0xfff010ad,0xfff17cef,0xfff54eab,0xfff5eead,0xfff7131e,0xfff9da30,0xfffe0f43,0x0001a39c,0xfff07d5e,0xfffd67f9,0xfffae2a8,0x0000d1cc,0xffffd5f9,0x00004fba,0xfff98c8b,0x000379d7,0x000885ed,0x000f8e83,0x00047cc1,0xfffec9c6,0xfff55370,0x00036025,0x00036f66,
-0xfffa6575,0xfff3813f,0xfff0f669,0xfff32fca,0xfff8afe6,0xfffa6b59,0xfffb916e,0xfff75a9b,0xfffc9aa7,0xfffe201a,0xfff5609b,0xfff664d6,0x000022c6,0xfffcb30d,0xfffdb3cd,0x0000d35c,0x00017c1d,0x00016c34,0x0004f929,0xfffd8ada,0xfff97c89,0xfffd4b83,0xfffe5258,0x0003ae2e,0x000194d3,
-0x000567e8,0x0007f0f3,0xfffafed9,0x000dbf21,0x0014c297,0x00254db2,0x000d9ea5,0x00039f03,0xffed5e60,0x000a679f,0x000d56bd,0x00018966,0xfff57e8a,0xfff036c0,0xfff358e3,0xfff89c5c,0xfffb433e,0xfff5d125,0xfffa46fb,0xfff9673f,0xfffba8f7,0xfffef7c2,0x00017e7b,0x00011785,0x00011564,
-0x00012ddc,0xfffff5dd,0xffffe90d,0xffff49d9,0xffff29e0,0x00008df8,0xfffebead,0xfffb5b7e,0xfffe531f,0xffff5ed6,0xfffda609,0x0001a118,0xfffeb184,0xffeaaf0c,0x000619cb,0x001d5c02,0x0037e214,0x00157de9,0xfffc688f,0xffdc85db,0x000ac635,0x00102777,0xfff2916f,0xffd8de98,0xffd0d6f6,
-0xffdaecbc,0xffed3e41,0xfff45f9a,0xfff06bf7,0xfff44c20,0xfffafe9d,0x00009e01,0x00011cd3,0xffff9646,0xffff68b8,0xffff7c22,0xffff8129,0xffffe703,0x0000075d,0x000045ba,0x00004335,0xffffbc38,0x0001226f,0x00004b77,0xfffd363c,0x00111a8b,0x0018bc3b,0x0018a0ff,0x0027ad64,0x004fac5f,
-0x003c55af,0x002f5bf8,0x0024fcc6,0x00264ad7,0x0023d777,0x001d5510,0x001400d7,0x001d6e9e,0x00303bcb,0x0055b02d,0x00519c71,0x00281579,0x00138885,0x00054b1a,0xffff37c3,0x00001b76,0x00043c0f,0xffff7f99,0xffff9b01,0x000005a2,0x00005814,0x00003bdb,0x00003ced,0x0000120f,0x000001fb,
-0xffffdd91,0xfffffd6a,0xffffee3f,0xffffcd72,0xffff2e5d,0x00032966,0x000f08fc,0x00131491,0x001747b7,0x00231030,0x0019d21f,0x000150e0,0xffef68e5,0xffe6ab47,0xfffe9949,0x00136b33,0x002271c6,0x00211279,0x000746e9,0xffdf8b80,0xffcce4df,0xffd1b528,0xffeb8164,0xfff6fb5f,0xfffe22a1,
-0x0002def7,0x0003a423,0xffff26db,0xffff8b1d,0x00008b3a,0xffffe0d1,0xffffe4be,0xffffd7b2,0xffffe3ee,0xffffed98,0xfffffcef,0x0000014d,0x00000192,0xfffffcbb,0x00001eb1,0x00008f86,0xfffdf40d,0x002b66a6,0x0041886d,0x0025f577,0x00049ad7,0xffe74765,0x0028dee6,0x00537ec7,0x004b7643,
-0x004b96e2,0x002037f6,0xffdd3c6d,0xffe5ed60,0x0007d4be,0x003c53ca,0x0053abc9,0x004e79a9,0x002e1dd2,0x0024091d,0x00167f3e,0x000d3a2f,0x00011426,0x00003d72,0x00002979,0xffff9d56,0x00000f93,0x00000b7e,0x00001c50,0x00001571,0x00001325,0x000011be,0x000009bb,0x000020a2,0xffffdee3,
-0x000047f9,0xffff2e5b,0xfffdb6fd,0xffcacac1,0xff699cd3,0xffda5efd,0x0018d7d5,0x00369fb2,0x0023d7db,0xfff942c2,0xffbbf898,0xfff7faf4,0x00288a90,0x004d2063,0x001eb691,0xfffb24be,0xffec2849,0xffe755c5,0xffe85b28,0xffe807df,0xffeb980c,0xffe962cd,0xffe8c9ac,0xfff13456,0xfffecd56,
-0x0001142c,0xfffffbb8,0x0000280a,0xffffe6eb,0xffffe880,0xffffe23d,0xffffe01d,0xffffdb9c,0xffffd740,0xffffce24,0x00000029,0xffffebd2,0x000037f5,0x000644af,0xffd39d6d,0xffcb5323,0x001b9083,0x00281673,0x0011a6c6,0x00166fa5,0x0018a59d,0x001390d3,0x000496fe,0xfff6b674,0xfff9e6d7,
-0xfff68a90,0xfffc8bb9,0xfffe5cfc,0x00025d6b,0x000804ca,0x00112999,0x0016b4c2,0x001aab98,0x001d9559,0x0011a5ec,0x000181b8,0xfffdc83e,0x00002f99,0xffff9a48,0x00003644,0x00001e14,0x000037a3,0x000040a1,0x000046a7,0x0000692f,0x00004bee,0x00005329,0xffff9152,0x00006ad2,0xfff84ea2,
-0x001a8249,0x00295d72,0x0022b322,0x001dcab9,0x001612f8,0x000e3658,0x000345ea,0x0002c5f6,0xfff07119,0xffe96c4f,0xffe55ba4,0xffe9da29,0xffed6d32,0xffef0706,0xfffae078,0x00014239,0x00027cdb,0x0008eb03,0x000c9717,0x00103480,0x000fcf85,0x00093913,0x000096f0,0x00012f7d,0x0000258b,
-0xffffd1bb,0xffffaaae,0xffff96dd,0xffff7540,0xffff6037,0xffff363b,0xffff1ad3,0xffffafc1,0xfffffe4b,0x00007f98,0x000fc5f3,0xfffe7ff4,0x0001616e,0x00014537,0x00006ec1,0xffffbb71,0x00007fa8,0x000128b1,0x0001171f,0xfffff9a9,0xfffe2238,0xfffae237,0xfff82c6b,0xfff5b0af,0xfff2b850,
-0xfff4f081,0xfff6e57a,0xfff8e537,0xfffb7d8d,0xfffcc19f,0x0000e3b4,0xfffd2f45,0xfffb7495,0xfffc86fe,0xfffde920,0xffffd121,0x0000861a,0x0000b849,0x0000f790,0x00014902,0x000168e3,0x0001da4d,0x000208dc,0x000195f1,0xffffb81d,0xffff2d7a,0xffff8c7e,0xffef9f3c,0xfff5636e,0xfff770d5,
-0xfffa71f6,0xfffccb29,0xfffe9508,0x00006362,0x0002d357,0x0002e757,0x00034fce,0x00041f4f,0x00047447,0x00052973,0x00064834,0x0007761d,0x000869f4,0x000968a2,0x000a78e7,0x000a9eb5,0x000d887e,0x000d8036,0x0007bd3e,0x000504dc,0x000006c0,0xfffe547d,0xfffe7dd2,0xfffddd6e,0xfffd2214,
-0xfffc5ad2,0xfffbbd7b,0xfffb68c6,0xfff95bb9,0xfff6f471,0xfff54c97,0xfff457a5,0xfff4a98c,0x0002dbdb,0x000047fb,0x00006930,0x00013cb8,0x0001ca3b,0x0002ad01,0x000364cc,0x00043b3c,0x0003d550,0x0003d719,0x0003dce1,0x0004294c,0x000472de,0x00049b62,0x00050524,0x00056b7f,0x0005b70f,
-0x00063a1a,0x00069be8,0x00062eb2,0x000a3ab2,0x000936c9,0x00042dff,0x00081cb1,0x0006973e,0xffffab23,0xffff0d1f,0xfffe61f7,0xfffd78cb,0xfffcaad9,0xfffb99ae,0xfffb261b,0xfffff62d,0x0001dc96,0xfffb02a5,0x0000ab1c,0x000615fe,0xfff020ed,0xfff265c6,0xfff017f1,0xfff3ee0c,0xfff32ef7,
-0xfff1fcef,0xfff1f5f8,0xfff23108,0xfff56297,0xfff16e5f,0xfff0244a,0xffecd1f8,0xfff1def5,0xfff260d3,0xfff07717,0xffef1437,0xffee67aa,0xffee0514,0xffef9c31,0xfff10e14,0xffef64aa,0xfff21f22,0xfff86036,0x00045809,0xfff0a11a,0xfff67662,0x0000f016,0xfffdae4d,0xfffdba01,0x0000c5ec,
-0x0000a327,0x0001cd09,0x0004e8d9,0xfff8438b,0xfff0b0fc,0x0003906c,0xfff8ab28,0xfffcc201,0xffee7b71,0xfff4a659,0xfff363a5,0xffeffe4b,0xffefc939,0xfff16050,0xfff985e5,0xffef4961,0xffeb1252,0xffe34bda,0xfff133c5,0xfff1eed0,0xffe985a0,0xffe3a2f6,0xffe08118,0xffe0f755,0xffe6d8e9,
-0xffebdf7b,0xffec0afe,0xfffbb5b2,0xfff61613,0xfff4105a,0xfff436a8,0xfff80bbe,0xfffbd69d,0xfffab8e5,0xfffb049e,0xfffd21a5,0xfffcde82,0xfffd3af8,0xffff94f4,0xfffaddb0,0xfff6cf9d,0xfff63ce2,0xfff3eb02,0xfff81378,0xfff13d4c,0xfff961ac,0xfff9611d,0xfff37701,0xfff34e05,0xfff2b9d6,
-0x0005a3fd,0xffef6fba,0xffe8dc6c,0xffd672e3,0xfff1cdd9,0xfff56a3f,0xffe9e128,0xffe085fd,0xffdb7aaa,0xffdc229c,0xffe4b542,0xffea30a6,0xffeca849,0xfff618f8,0xfff6fd2f,0xfffdae8b,0x00019879,0x00027b4a,0x0001cb35,0x0001bf64,0x0001cd29,0x000111d2,0x0001219b,0x0000b90b,0x00008bd6,
-0x0001b14d,0x000097fe,0xfffc9bf0,0xfff78a75,0xfff8ec26,0xffee4c54,0xfff993cd,0xfff5ec4e,0xffeadcbc,0xffe9754a,0xfff29fa5,0x000e0ba2,0xffee1ac8,0xffd9b835,0xffc0ef5b,0xffecb9db,0xfff2dc83,0xffd6d91f,0xffbf85c9,0xffb5946c,0xffba5266,0xffd08df4,0xffe093a5,0xffe69783,0xfff63fbc,
-0xfffc98bb,0x00018593,0xffffbc48,0xfffef935,0xffff2b31,0xffff3db6,0xffff3d85,0xffff7d18,0xffff856d,0xffffb7f1,0xffffa44a,0xffff5f40,0xfffffe37,0x0001cc61,0xfffd4894,0x00071201,0xffff84b1,0xfffad8fb,0x0005ec8f,0x002d1cab,0x0016fa71,0x00079ac1,0xfff54bfb,0x00070e29,0x000d81d8,
-0x0007d8f9,0x0002c365,0x000d1ba8,0x0024d3fd,0x0044f4a0,0x004374f6,0x00204cc7,0x0009e896,0xfff75fb6,0xfff29643,0x0000d334,0x0001f929,0xffffa391,0xffffdd1a,0x000088d1,0x00006169,0x00006157,0x0000588c,0x0000465b,0x00003672,0x00002cfa,0x00002814,0x00005dd4,0xffffcde6,0xffff7250,
-0x00011d2b,0x00068a4a,0x00055843,0x00130e17,0x001cde9f,0x001b53cc,0xfffc1e3e,0xffea1696,0xffe48e38,0xfff7ba42,0x000a0b34,0x0018c1a0,0x001f5eae,0x000a68c3,0xffe1284e,0xffc55450,0xffbba96a,0xffc4dc96,0xffd8ad4f,0xffe9993b,0xfffa4cf2,0x00035292,0xfffe6a8b,0x000054a4,0x000008c1,
-0xffffc6a6,0xffffc65b,0xffffcea7,0xffffce25,0xffffd9bb,0xffffd954,0xffffee3c,0xffffc49f,0x00001087,0xffff8201,0x000186f5,0xfffcf00a,0x00205582,0x0031080d,0x0019e28c,0xfff32f94,0xffb839aa,0xffdf02b3,0xfffe88ce,0x00047d8c,0x001b39c0,0x00088ae5,0xffd56fe8,0xffc885aa,0xffdaeb52,
-0x0008937f,0x002c9ffd,0x003a0db6,0x002d2f0d,0x00228c63,0x001309e1,0x00023e98,0xfffcd28f,0x0000c92a,0xffffc6f7,0xffffedc8,0x00002662,0x000023a7,0x0000252a,0x0000226c,0x00002315,0x00001dbe,0x0000222c,0x000021fc,0x000028a0,0xffffecb0,0x000078a6,0xfffb1dc5,0xffd7dc95,0xff8970b7,
-0xffc63a2f,0xffe456f7,0xffef3f8a,0xffe937de,0xffd4c68b,0xffbb50b4,0xffe39134,0x000f0a07,0x003b5ea5,0x0014c4e5,0xfff7272e,0xffe713d6,0xffddee87,0xffd99334,0xffd72f6d,0xffdd0681,0xffe26750,0xffe69d9a,0xfff49089,0x0000cb8d,0x0000632b,0xffffff83,0xffffe704,0xffffd4ff,0xffffd7c2,
-0xffffd476,0xffffd2e0,0xffffcec3,0xffffd086,0xffffbad4,0xffffd415,0x000008ef,0xffff0779,0x000815f4,0xffd95182,0xffaecd43,0xffede2c4,0x0001193e,0xffee96d5,0xfff08080,0xfff19755,0xfff14a81,0xffea0def,0xffdfae53,0xffdd9dd9,0xffe029cb,0xffe921ea,0xffec4cab,0xfff95bb4,0x00038936,
-0x000c80fa,0x0012de4a,0x00142537,0x0014ac7b,0x000b4c99,0xfffed827,0xfffef8c7,0x00002f20,0x00000cdc,0x0000549d,0x00003d7e,0x00004d36,0x000056d3,0x0000529a,0x000073e8,0x00005715,0x0000b657,0xffff5ca8,0x0001fe1b,0xfff911be,0x001dc6b3,0x00164cdb,0x00084bd3,0x0005f0cf,0x000015c0,
-0xfffafc23,0xfff2147e,0xffedddfc,0xffeb9769,0xffec1704,0xffeae4fa,0xffe9e702,0xffe93dfd,0xffe99922,0xfff346c1,0xfff9203e,0xfffce723,0x0003b14a,0x0009bbcf,0x00111f72,0x000ef442,0x00059a8b,0x0000231b,0x000086d3,0xffff7370,0xffff8450,0xffff6f80,0xffff66a8,0xffff5056,0xffff3fc0,
-0xffff3d02,0xfffee1dc,0xffff54c4,0xffff4fc7,0x000037e0,0x0005c963,0xfffbbbef,0xfffd76f7,0xfffc4547,0xfffaa8a3,0xfff8286d,0xfff6a9c2,0xfff5c4a0,0xfff33f95,0xfff28b63,0xfff07b22,0xffeee206,0xffef5ac5,0xfff060ba,0xfff092bb,0xfff26643,0xfff4350d,0xfff5f67f,0xfff6b42e,0xfff63b08,
-0xfff8340a,0xfff8bfd8,0xfffa8cf8,0xfffdc817,0xfffff5b9,0x00010048,0x00014ff4,0x00013ccd,0x00016d92,0x00019599,0x0001aea7,0x0001d25e,0x00024000,0x00025821,0x00010305,0x00008beb,0xffff6971,0xfff68b16,0xfff238a7,0xfff369fe,0xfff39e37,0xfff42623,0xfff42518,0xfff416b6,0xfff44abb,
-0xfff73d3f,0xfffa310f,0xfffcbd8d,0xfffed6c4,0x000080a8,0x00025b75,0x00032886,0x00040818,0x00052418,0x000624c3,0x00079b00,0x00085406,0x000938a2,0x00012830,0xfffd4a58,0xfffcc78f,0xfffca306,0xfffbf8a4,0xfffc3533,0xfffbb16b,0xfffb91ac,0xfffb14e3,0xfffb462b,0xfff9cced,0xfff892d1,
-0xfff686db,0xfff40768,0xfff2c93a,0xfff9af22,0xfff8460f,0xfff924a0,0xfff8e981,0xfff90bba,0xfff92790,0xfff95025,0xfff8eebe,0xfff9b0fd,0xfffa1f30,0xfffac9d2,0xfffb8eb0,0xfffc75df,0xfffd82df,0xfffdca72,0xfffe2cd5,0xfffe7b37,0xfffec01c,0xffff4830,0xffff0fc6,0xffff9edb,0x0002f0f2,
-0x000a6030,0xfffc6a01,0xffffb006,0x0004c565,0x00037795,0x0002431e,0x00016da5,0x000061de,0xffff8491,0xffff2ef0,0xfffb3456,0xfff7b0be,0x00032d12,0xfffd253a,0xfffb6b55,0xfffeb7bb,0xfffb0f9f,0x000175a1,0xffffab1a,0x00007fcb,0xfffe6181,0x0000ca68,0x0001d5ac,0x0004f8e2,0x00013989,
-0xffffc5c8,0xfffc47f9,0x00007d53,0x0000f44f,0xffff9165,0xfffed73f,0xfffe3bb8,0xfffd5102,0xfffeaee3,0xfffe2c6c,0x0000f7d4,0xfffac3c6,0xfff48d69,0xffec0dd9,0xfffbe4b3,0xfff3b7b4,0xffef750f,0xffede5dd,0xffef039b,0xfff1b700,0xfff1f820,0xfff2d1c6,0xfff56d2a,0xfff63fff,0xfffd7653,
-0xffecb5eb,0xfff41348,0xfff29eb3,0xffffc140,0x0000d753,0x000006c1,0xfffba0bd,0x0001214d,0x00050b3c,0x000cbd0a,0x0003b76c,0xffff31b8,0xfff7156b,0x000271e7,0x00038123,0xfffd4cb0,0xfffa08a4,0xfff750af,0xfff60a02,0xfff99a6e,0xfffc79e9,0xfffd29dd,0xfff33739,0xfffd9fc7,0xfffab2bc,
-0xfffa2db7,0xfffc8241,0x00025748,0x00014428,0x000199d2,0x0002101d,0x00021d84,0x0001b15b,0x000384ec,0xffff55bf,0xfffa1f6e,0xfffa3d8c,0xfffe921d,0xfffc22f8,0xfffd3ab1,0x00055d42,0x00040d6b,0xfffd201e,0x0006a6dc,0x000b629e,0x001ddc6f,0x000a365e,0x0002d026,0xfff016d9,0x0005cfb3,
-0x000950e8,0x0001298f,0xfffc7e34,0xfff80ff5,0xfff595ff,0xfff9cc19,0xfffe77ce,0xfff90e59,0xfff9b0fa,0xfffc7da5,0xfffec1f9,0x00021b22,0x0000f695,0xfffff0fc,0xffffecce,0xfffffc02,0xffff8f7d,0xffffa90a,0xffff8a6c,0xffff0fde,0x00008211,0x00017ee0,0xfffd8cef,0xfffd21a8,0xfffab768,
-0xfff9c033,0x0002c975,0xfffdcf60,0xfff213c2,0xfffe3fbb,0x000ea364,0x002a1375,0x000e0c59,0xfffa5ebe,0xffe0f1e9,0x00047056,0x000c18bb,0xfff83ce4,0xffeac93f,0xffe1950a,0xffdf7c11,0xffec0dd4,0xfff63356,0xfff4a120,0xfff70fd5,0x000063a6,0x000046b9,0xffff9522,0xffff6580,0xffffff37,
-0xffffeb43,0xfffff674,0x00001c33,0x00001a52,0x00002cb7,0x00005ade,0xffffa54d,0xffffbc40,0x00010e3d,0xffffa1cf,0x0003f989,0x0010a595,0x0010e9f7,0x0017d029,0x0036d98a,0x002bd7d4,0x002277ab,0x00133720,0x0025492c,0x0027fcc4,0x001d09ee,0x0013c926,0x0014f301,0x00202e9f,0x003eb1f9,
-0x0041dfd2,0x002e5476,0x001e2bbb,0x0012b09d,0x0004dac4,0xfffff3ed,0x00021dae,0xfffefcda,0x0000824a,0x00001f2c,0x00001b17,0x00000392,0x00000a69,0xfffff670,0xfffff5d6,0xffffec8f,0xffffdd71,0x00002d63,0x0000178c,0xffff6c28,0x00007c1f,0x0003eb0c,0x00102ea9,0x0017338b,0x001fb203,
-0x00196511,0x0005ec9a,0xfff5f341,0xffe8b6ad,0xfffc1611,0x000aebf6,0x00151f59,0x001cd626,0x000dc101,0xffeeaaa8,0xffda4cf8,0xffd5cb06,0xffe4cfd2,0xffecd548,0xfff82a17,0xfffef7c9,0xffff4cb1,0xffffb7d9,0x000009f4,0x0000080f,0xffffcd52,0x0000002f,0xfffff4af,0xfffffc20,0x00000273,
-0xfffffcbc,0x000015c6,0xffffe85b,0x00002e85,0xffff5bee,0x0001728c,0xfffd8f57,0x0013584b,0x00291949,0x00160db3,0xffff2686,0xffe8293f,0x000a5c32,0x002bcb4f,0x0034f16e,0x003bcae7,0x00233c42,0xfff484da,0xffee34c2,0xffff81b6,0x002301ba,0x003fc791,0x0043a11e,0x002e4e65,0x00237bb8,
-0x001851f9,0x0009edab,0xffff511e,0x00011428,0xffff5412,0x0000479d,0xfffff7ee,0x000015ad,0x000000e1,0x000008e3,0x00000362,0x00000346,0x00000457,0xfffffd78,0x00002ec5,0xffffbcb4,0x00011c8a,0xfffb1d9c,0xffe59f43,0xffa5e374,0xffdfba23,0x00058cec,0x003662fd,0x001f5672,0xfffe9b26,
-0xffd68e4b,0xffe687a6,0x0008a248,0x00392398,0x001d23fa,0x0005799c,0xfff1e885,0xffef962b,0xffeef1b3,0xffed7e79,0xfff01026,0xfff049a1,0xffece950,0xfff62cff,0x000238d0,0xffffa9bf,0x0000289d,0xffffd828,0xfffffe00,0xffffeff4,0xfffff918,0xffffef5b,0xfffffd92,0xffffdf22,0x00001959,
-0xffff74b7,0x0000e5f1,0xfffd3093,0x00090329,0xffd71e41,0xffc00d56,0x00224a57,0x0035a336,0x002605c6,0x0022d138,0x001e310c,0x0013ef58,0x00056e5e,0xfff89db1,0xfff8c6e7,0xfff34b22,0xfff7bb21,0xfff8dd7e,0xfffe7316,0x000353d4,0x0009f0fe,0x000e1285,0x00126457,0x0015d757,0x00090979,
-0xfffdd610,0xffffbd95,0x0000234f,0x00000c56,0x00001f07,0x00000dac,0x00001ae5,0x000011bf,0x000026e0,0x00000577,0x00005e92,0xffffda58,0x00011501,0xfffe762e,0x0003d2f4,0x00101ab1,0x00180791,0x0012a9e2,0x000aa653,0x00083555,0x0004d39b,0x000083d1,0x0003b872,0xfff794ab,0xfff27686,
-0xffeed471,0xfff1659c,0xfff39824,0xfff60fc9,0xfffef3cd,0x00046fd6,0x000687df,0x000ba5e9,0x000d764f,0x000eb3fb,0x000c7ff1,0x00038ff1,0xffffdf7f,0x00002281,0xffffa8ef,0xffffe5a2,0xffffd3ce,0xffffdad2,0xffffc819,0xffffd6cb,0xffffaaba,0xffffd644,0xffff1431,0x00002412,0xfffe149a,
-0x00046c7b,0x00013c5e,0x00070a68,0x00080706,0x0006143b,0x000485ce,0x000373ac,0x000329ce,0x0002c337,0xffffea3b,0xfffd3771,0xfff955cc,0xfff758f1,0xfff56169,0xfff2a104,0xfff49ca9,0xfff631f0,0xfff804b0,0xfff92e75,0xfffad5d6,0xfffb9fb8,0xfff8ff85,0xfffb9d74,0xfffee3c4,0x000096de,
-0x00007a29,0x00004455,0x00003549,0x000041ba,0x00005693,0x00004f2c,0x000074ad,0x0000977d,0x0001571a,0x0001a3ab,0x000072de,0x0002ada9,0xfff201ac,0xfff8f240,0xfffa04fa,0xfffb45dd,0xfffcb907,0xfffe355b,0xffff48f2,0x00009cab,0x00007198,0x00007036,0x000086d9,0x000028a3,0xffffc635,
-0xffff592a,0x000098f0,0x00017e0c,0x0002aab0,0x0003963e,0x00042f1a,0x0006bdb3,0x00045af3,0x0001c248,0xffff4ee2,0xfffda69d,0xfffe68ba,0x00001bcf,0x00005227,0x0000219f,0x00001e5b,0xfffffa40,0x0000369a,0xfffed2e9,0xfffcf291,0xfff9afae,0xfff853dd,0xfff91911,0xfffcc22f,0xffff5714,
-0xfffe7ae9,0xffff3a57,0xffff91c7,0xffffe1f9,0x000042d7,0x0000dd4f,0x00004e2b,0x0000036a,0xffffc3db,0xffffa3bf,0xffffa54b,0xffff713f,0xfffffe7b,0x00005820,0x00009edf,0x00012a7d,0x000161a6,0x00020e68,0x00014bd3,0xfffebcad,0xfffb537f,0x00001216,0xfffbf00f,0xfff7bcb9,0xfff73f83,
-0xfff6f635,0xfff67fdf,0xfff61fe3,0xfff59b86,0xfff5aede,0xfff88302,0xfffc9e1d,0xfff5a250,0xfff93541,0x0000b783,0xfff58dbf,0xfffba144,0xfff3e9bb,0xfff7e755,0xfff7b1de,0xfff74a6b,0xfff7318e,0xfff75fc3,0xfff9be48,0xfff6aba5,0xfff58c22,0xfff2d065,0xfff67b4e,0xfff701cd,0xfff5f9ec,
-0xfff54cd8,0xfff4be7e,0xfff3bcb9,0xfff51583,0xfff62633,0xfff47982,0xfffc0ec9,0x000096e4,0x0001ffed,0xfff91f0c,0xfffe5cd9,0x00010e10,0xfffff5c4,0x0000609f,0x000237af,0x000228d3,0x00030132,0x00053ba6,0xffff6376,0xfff8e537,0x0002995a,0x0000730b,0x00017004,0xfff4a18e,0xfff800d4,
-0xfff8b13e,0xfff73caf,0xfff74415,0xfff884f3,0xfffdea2c,0xfff5ec1c,0xfff2204e,0xffebd0e1,0xfff5999f,0xfff6abf4,0xfff1a960,0xffeea564,0xffec360e,0xffea58ad,0xffeed268,0xfff1a6cd,0xfff488a0,0x00017b6a,0xfffa461f,0xfffa0e41,0xfffceffd,0xfffe7830,0xffff2288,0xfffecdb3,0xfffed8a6,
-0xffff2631,0xfffefd6d,0xfffef380,0xffff4aa4,0xfffec00d,0xfffd19d8,0xfffb61df,0xfff8a698,0xfffda40d,0xfff47453,0xfffa0885,0xfffc9555,0xfffa6f58,0xfffa8f47,0xfffa6b0f,0x00077728,0xfff6d908,0xfff1400f,0xffe29e2c,0xfff5699c,0xfff91c20,0xfff31b76,0xffee8fce,0xffeaa9b9,0xffe6f440,
-0xffedba71,0xfff091ad,0xfff66aa0,0xfffe28cf,0xfffd5a40,0x0001ca50,0x00012448,0x0000b8f4,0x0000682b,0x0000857c,0x000080b3,0x00005311,0x00005e54,0x00005bc0,0x00002030,0x0000b079,0x0000ef9b,0x00012afa,0xfffcedb4,0xfffe2f4c,0xfff22927,0xfffa1102,0xfffc55c5,0xfff76c1a,0xfff6fd41,
-0xfffe3520,0x000fe183,0xfff727e5,0xffe6000e,0xffd26d00,0xfff0f4a3,0xfff8160a,0xffe81485,0xffdbb29e,0xffd2e337,0xffce8de3,0xffddb03c,0xffe78ae1,0xfff15f36,0xfffdc7b6,0xffff79bf,0x00004a5d,0xffff1477,0xffffd4d4,0xffffb788,0xffffcb56,0xffffbfc7,0xffffdc02,0xffffd11b,0xffffe341,
-0xffffddef,0xffffd3e9,0xffff3e6d,0x000067eb,0x0000058c,0x0006b755,0x0003f515,0xfff655ae,0xfffec2bc,0x0019d7da,0x000fecbe,0x000731c9,0xfff423fc,0x000a8940,0x00102120,0x000561ae,0xfffe4248,0x0000b719,0x000fc9df,0x002a21df,0x002ed546,0x001afbf6,0x00107cd7,0x0003148b,0x0001cd31,
-0x0004f269,0xfffef4d8,0x00007462,0x00001942,0x000043d4,0x00000da2,0x000025a7,0x0000181d,0x000018fb,0x00000f4e,0x00001b28,0xfffffa44,0x000045f2,0x00000461,0x00007355,0xfffe65d8,0x00036131,0x00047726,0x0008fb92,0x00178f68,0x001938c9,0x000a20f2,0xfffd6672,0xfff0c515,0xfffc0da3,
-0x00059176,0x000ddc06,0x001ab8cf,0x000ff55f,0xfff25ffb,0xffd8e32e,0xffcc7199,0xffd07e43,0xffde8f90,0xffea5d94,0xfffafeaf,0x00010b6a,0xfffed963,0x00008e52,0xffff9bae,0x000002f5,0xffffe4fd,0xfffff50f,0xffffec22,0xfffff7ec,0xffffea72,0x0000080a,0xffffccfc,0x000043ef,0xffff1e0c,
-0x00018120,0xfffd6a15,0x000b6f1d,0x001bb7b5,0x000e20af,0xfff88009,0xffd7e2ba,0xffe7c473,0xfffd0627,0x0009565b,0x00124f54,0x0007a5c3,0xffe9bbca,0xffd7d248,0xffe07f71,0xffff3675,0x001e7635,0x002d9c3b,0x00287c7a,0x001ebc5e,0x001050de,0x00034caa,0x0000dd8e,0xfffff8f1,0xffffebf2,
-0x00001f84,0x00000f4c,0x00000b65,0x00000d45,0x00000b7d,0x00000d35,0x00000868,0x00001261,0xfffff998,0x00003ff7,0xffff9fe7,0x00017037,0xfffbd1bf,0xfff3758a,0xffbfde95,0xffdbb470,0xfff140e3,0x00126478,0x00021ddb,0xffee76e7,0xffd8bfb0,0xffe3d239,0x00011ecf,0x002fd116,0x001c1e1b,
-0x00095889,0xfff488c6,0xffee62ff,0xffe957c5,0xffe4f2c7,0xffe8898d,0xffebae5b,0xffee6d90,0xfffc43d0,0x00012b95,0xffffc7fa,0xfffff327,0xffffea71,0xfffff27c,0xffffefad,0xfffff146,0xffffec3f,0xfffff5ab,0xffffde72,0x000012e0,0xffff8b66,0x0000c15e,0xfffd8b7d,0x0005fe37,0xffebc2ad,
-0xffc86b95,0x00105da0,0x00243034,0x001719ef,0x0013193d,0x000c7389,0x00020313,0xfff97e60,0xfff03a75,0xfff086c6,0xffed1f5d,0xfff17d49,0xfff32e32,0xfffb6fe1,0x00015616,0x00057a46,0x000b9e1b,0x000ce224,0x000fdf45,0x000651b5,0xfffd97a7,0x00009341,0x00000027,0x00002bb9,0x00001426,
-0x00001cde,0x00001d6d,0x00001bb9,0x00002868,0x000010fc,0x0000474c,0xffffe6e0,0x0000cd0a,0xffff2985,0x00037345,0x00140126,0x00110066,0x0000ee7c,0xfffc34b7,0xfff885a9,0xfff51353,0xfff0d80a,0xfff1ce5d,0xfff1fa07,0xfff2cf5b,0xfff1e1b6,0xfff1f667,0xfff300d4,0xfff5a626,0xfffc946a,
-0x0000b0dc,0x00020754,0x00066555,0x00090e8b,0x000df8e7,0x000a1de5,0x0000d9f1,0xffffe28a,0xffff98c2,0xffffd615,0xffffc516,0xffffcd6d,0xffffc4bd,0xffffc176,0xffffbf12,0xffffb7ab,0xffffbe28,0xffff964e,0xffff92ab,0xffff5653,0xfffdef1a,0x0004131e,0x00058cfe,0x00030f00,0x0002cb75,
-0xffffe078,0xfffe06b7,0xfffc6ddd,0xfff9d558,0xfff7e570,0xfff58a7e,0xfff33ebf,0xfff2fadc,0xfff2da05,0xfff22cef,0xfff37d26,0xfff4d958,0xfff6179c,0xfff6cf63,0xfff64d3b,0xfff8151e,0xfffa7b88,0xfffd546f,0x0000ff17,0x0000a302,0x000073cc,0x00006db3,0x00006f0f,0x0000795a,0x00007fd4,
-0x0000881b,0x00008eb5,0x00008d32,0x0000c257,0x00011f19,0x0001844c,0x0002f88a,0xfffa85d1,0xfff82d3e,0xfff7d738,0xfff75f15,0xfff70759,0xfff6decd,0xfff663f1,0xfff634f4,0xfff77770,0xfff8aa8a,0xfff9a61d,0xfffa7200,0xfffb1680,0xfffbd922,0xfffc9b35,0xfffd4638,0xfffe25e6,0xfffef828,
-0xffffec98,0x0000c914,0x00035320,0xfffd215f,0xfffcc224,0xfffe284e,0xffff114f,0xffff09a7,0xffff10d3,0xffff02d9,0xfffefc95,0xfffef897,0xfffee63e,0xffff04d9,0xfffea4be,0xfffcb2c4,0xfffb0f41,0xfff925da,0xfffc4fda,0xfff95257,0xfff9cb62,0xfff9a640,0xfff9998b,0xfff96ec5,0xfff95b1f,
-0xfff9018b,0xfff91579,0xfff91047,0xfff93569,0xfff95e7f,0xfff9a232,0xfff9e8f6,0xfffa4a75,0xfffaa546,0xfffaeffe,0xfffb4190,0xfffbc894,0xfffb3380,0xfffe8620,0x000186a5,0x0003db71,0xfffc2c45,0xffff3fb5,0x00005b52,0xffffcf7c,0xffff5523,0xfffeec5b,0xfffe7ec5,0xfffe1368,0xfffdbe43,
-0xfffcbe40,0xfffa1bf8,0xffff5711,0xfffe2c42,0xfff99b8e,0xfffbfe2d,0xfff7aeb2,0xfffdc2a1,0xfffcfa02,0xfffd5270,0xfffc8725,0xfffcdccd,0xfffd4ccf,0xffffc0b7,0xfffd3240,0xfffc4dc8,0xfffa2e77,0xfffcc29f,0xfffd2079,0xfffc650e,0xfffc4df5,0xfffbf242,0xfffae66b,0xfffbf02f,0xfffc0985,
-0xfffe15f6,0xfff853b6,0xfff601ad,0xfff3fcda,0xfff93c8a,0xfff67669,0xfff83542,0xfff776f0,0xfff7d340,0xfff8eab0,0xfff8d741,0xfff946a5,0xfffae906,0xfff78bf4,0xfff9d9a8,0xfff4ae23,0xfff5287d,0xfff5bf3a,0xfffb4399,0xfffde1c6,0xfffcecdf,0xfffb597d,0xfffbb775,0xfffd5b8b,0x00031a21,
-0xfffcfa2a,0xfffa3f55,0xfff56871,0xfffca111,0xfffdcbbe,0xfffa58f0,0xfff93717,0xfff71853,0xfff4b429,0xfff6f69f,0xfff9f7dd,0xfffae366,0xfff7a737,0xfffd55c5,0xfffc5dc6,0xffffffa8,0x00014bad,0x0001ec39,0x00016524,0x0001931d,0x00018c37,0x00018d94,0x00014433,0x0001d6a5,0x00015400,
-0xffff3122,0xfffc030c,0xfffcc9ae,0xfff9e5d6,0xfff8bced,0x0000a02a,0xfffeda28,0xfffda49b,0xfffd7382,0xfffe4517,0x000c3ec4,0xfffeeebc,0xfffad8f5,0xffefa0ae,0xfffc7454,0xffff7455,0xfffb1060,0xfffa6307,0xfff76f0c,0xfff32dcf,0xfff6f949,0xfffb4ead,0xfffa2d21,0xfffbafc7,0x00007fa5,
-0x0000b111,0x0000acb0,0xffff9e72,0xffff87aa,0xffff9da6,0xffffa1d2,0xffff89ba,0xffff9974,0xffff9ff9,0xffff6791,0xffffb8d3,0x0000ac2f,0x0000fbcb,0xffff646f,0xfffd19ca,0xfff6526c,0xffffb8ca,0xfffc739c,0xfff91d76,0xfff70cc7,0xfffdb55f,0x00112409,0xfffe10d7,0xfff1f9d0,0xffe3c604,
-0xfff9923e,0xffffe32d,0xfff51316,0xffef7799,0xffe7e5d2,0xffe12b06,0xffe9c0c5,0xfff38a07,0xfff723e1,0xfffc8f36,0x00015024,0xffff3341,0xffffe5db,0xffffffea,0x00003ce1,0x00001f2b,0x000026c1,0x00002c88,0x000029d9,0x000024e4,0x00004682,0x0000032e,0xffffca05,0xffff61bf,0x00015630,
-0x000007aa,0x00032efa,0x0001f193,0x00049dcf,0x00199135,0x0013f3fd,0x000e3127,0xfffea2bc,0x0015e224,0x001b12fe,0x00101cb4,0x0009ae7c,0x00084073,0x0010188c,0x00228bd1,0x00284aa0,0x00238e4f,0x0018f4b6,0x00101e43,0x00051e0c,0x0000641b,0x00003d7a,0xffffe62b,0x000045bd,0xffffe946,
-0xfffff0cf,0xffffeb83,0xfffff172,0xffffe99f,0xfffff025,0xffffe77f,0xffffee6a,0xffffe2a4,0x00005e46,0xffffb745,0x00006469,0xfffdf159,0x0008cb25,0x00103f44,0x00161c59,0x00151298,0x00084261,0xfffcba48,0xffefa0f7,0xfffb6343,0x00041ded,0x000ab54b,0x0014afd7,0x000cfebe,0xfff71672,
-0xffe54f98,0xffdbb77e,0xffdf25d9,0xffe58993,0xfff0c1e0,0xfff96c39,0xffff1fc3,0x00005341,0xffffd7bf,0xfffff947,0xfffffac0,0x00000f83,0x00000655,0x00000995,0x000009da,0x0000085b,0x00000ccf,0x000007bc,0x00000c6f,0xffffd848,0xfffff987,0x00006e32,0x00036155,0x0012d699,0x000951d5,
-0xfffa2e0f,0xffe54a8d,0xffee0aa9,0x00019f75,0x00126e90,0x001cf717,0x00151a6e,0xfffc0263,0xffed7322,0xfff25cea,0x00078e31,0x001ff244,0x002a035c,0x0023dea9,0x001b6652,0x00131d0e,0x00054a6f,0xffff80f7,0x00006ba1,0xffffb4e4,0x00003a21,0xffffe93f,0x000003aa,0xfffff5ca,0xfffffd3e,
-0xfffff915,0xfffffb14,0xfffffab9,0xfffff349,0x000013b7,0xffffd1b4,0x0000c87f,0xfffe0aed,0xfffe628a,0xffd12a03,0xffe37fbc,0xfff3364a,0x001ce7a2,0x000ad6d0,0xfff96373,0xffe9bcba,0xffe3feac,0xfff774f8,0x00206a9e,0x00175307,0x000b861b,0xfff913cd,0xfff5b2e2,0xfff2b0f6,0xfff0c285,
-0xfff29c0f,0xfff512b2,0xfff3980c,0xfffd4eab,0x0001744e,0xffff7722,0x00001fac,0xffffeeda,0x00000df7,0x00000126,0x00000751,0x00000149,0x00000b78,0xfffff66b,0x0000278d,0xffffb430,0x0000939e,0xfffe79a3,0x0002ba0c,0xfff3c91a,0xffd287d8,0x001a39ee,0x00291e2f,0x0024687c,0x001cfe7d,
-0x00165b5a,0x000c71a2,0x00012072,0xfff74b58,0xfff5239f,0xfff0c535,0xfff3b430,0xfff4d034,0xfffb43f2,0xffff9bc3,0x0003a806,0x00077148,0x000a2563,0x000d2702,0x0001def8,0xfffe7839,0x000093f2,0xffffec4d,0x00000d21,0xfffff028,0xfffffa73,0xfffffa10,0xfffff549,0x000001bd,0xffffe6ec,
-0x00001ccc,0xffffac98,0x0000e2fe,0xfffe6d6c,0x00047dd1,0x00079b4d,0x0008429f,0x00007b5c,0xfff9ed9c,0xfff9e144,0xfff8f0c6,0xfff858fe,0xfffb412e,0xfff8f1f5,0xfff8538a,0xfff72f2b,0xfff75da1,0xfff7c639,0xfff9c0e5,0xffff0a98,0x00031903,0x0005a274,0x0009434f,0x0009e688,0x000b8a64,
-0x00065908,0xffffbc43,0xfffffd5e,0xffffb405,0x00001a0a,0x00000d9e,0x0000126e,0x00000d8d,0x00000eda,0x0000110a,0x000007bf,0x000022a3,0xffffed35,0xffffcc08,0xffffbf1f,0xfffe5854,0x0002b286,0x00082264,0x00082022,0x0006a9b4,0x00049952,0x00025b53,0x0000e272,0xffff3ec1,0xfffc6927,
-0xfff9c25e,0xfff6ca77,0xfff69f1e,0xfff677c2,0xfff59a73,0xfff6e782,0xfff7e858,0xfff918e6,0xfff93f9b,0xfffa4415,0xfff98688,0xfffa0764,0xffff5882,0x0000cd2b,0x00003984,0xffffe080,0xffffbf03,0xffffd64d,0xffffd02d,0xffffd1ac,0xffffd079,0xffffd788,0xffffbbde,0xffffe7dd,0x000093cd,
-0x0000c9d8,0x00015476,0xfff8187d,0xfffab324,0xfffaf5a6,0xfffa99dd,0xfffae2c9,0xfffb6740,0xfffb880d,0xfffbad96,0xfffc1a59,0xfffc89a2,0xfffcb3b9,0xfffc8aa7,0xfffc073c,0xfffb60a9,0xfffc2654,0xfffcbf09,0xfffda6d5,0xfffe4059,0xffff1b47,0x000055d4,0xfffe565f,0xfffdbeef,0xfffe2f44,
-0xffffcd35,0x0000e81e,0x000102f8,0x0000da86,0x0000ef0a,0x0000e795,0x0000f445,0x0000dffb,0x00011733,0x0000f400,0xffff1781,0xfffcf4ce,0xfffd40f4,0xfffa1493,0xfffd57ca,0xfffc8901,0xfffccb59,0xfffcd750,0xfffcb53a,0xfffcb95a,0xfffcc76e,0xfffc8128,0xfffc3bd8,0xfffc1424,0xfffbe7d3,
-0xfffbeafb,0xfffbce00,0xfffc3c0d,0xfffc79b3,0xfffcabc4,0xfffd05d0,0xfffd24c4,0xfffde996,0xfffc073f,0xfffabac9,0xfffa3328,0xfffb6bbf,0xfff9d78f,0xfffa2b3b,0xfff9eeb7,0xfff9d783,0xfff9b54f,0xfff99e73,0xfff97701,0xfff97e44,0xfff90f68,0xfffa9332,0xfff80a21,0xfff83f92,0xfffc12d6,
-0xfffbcae7,0xffff342d,0xfffaf405,0xfffca6c6,0xfffcecc5,0xfffccd12,0xfffcf679,0xfffd2927,0xfffe91e6,0xfffcb82e,0xfffbfdbe,0xfffa5f6d,0xfffc3e77,0xfffc940c,0xfffc3964,0xfffc1547,0xfffbc455,0xfffad9d3,0xfffbae4f,0xfffc044a,0xfffbc9ce,0xffffdb4f,0xffffe508,0xfffb9717,0xfffeb321,
-0xffffb16e,0xfffe961d,0xfffe85b0,0xfffec5f7,0xffff55a4,0xffff5a33,0xffffa06b,0x000061e3,0x0000003e,0xfffe5cdd,0xfffc8853,0xffff828a,0xfffed963,0xfffb8d25,0xfffc8173,0xfffd6ae9,0xfffd07b7,0xfffdb12f,0xfffebbdd,0x0001a9fa,0xfffcf8d8,0xfffa834d,0xfff6d45f,0xfffbc793,0xfffca2ec,
-0xfffa912c,0xfff9b212,0xfff8466d,0xfff62736,0xfff85b8a,0xfff9a01d,0xfffc64f8,0xffffcef7,0xfffe5143,0xffff945e,0x00000f49,0xfffff89a,0x00009a51,0x00008f78,0x00007a40,0x00004de4,0x00004536,0x00001a0a,0x000004f4,0xffffdddf,0x00000732,0xffff7fc9,0xfffd8d9e,0xffff9980,0xfff95b3d,
-0xfffd43a5,0xffff2523,0xffff2f05,0x00003144,0x0000bd7f,0x0008309f,0xfffea9e3,0xfffb0571,0xfff29337,0xfffb93d2,0xfffe0ddd,0xfffc2452,0xfffb3857,0xfff9063e,0xfff4e78c,0xfff87480,0xfff9e857,0xfffd5c92,0x0000b87c,0x000002b2,0x00007e48,0x000002df,0xffffff65,0xffffcf76,0xffffc9e6,
-0xffffd68b,0xffffe095,0xffffe88c,0xfffff6f5,0xfffff8ca,0x0000140f,0xfffffb97,0x00009118,0x00002529,0x0000bac5,0xfff78420,0xfffc0de2,0xfffebf7b,0xfffdd03e,0xffff0525,0x00041c88,0x000de2b6,0xffff73ac,0xfff4ee92,0xffe9bc75,0xfff90707,0xfffe24e4,0xfff814a0,0xfff43a96,0xffee8d5d,
-0xffe80285,0xffeeebe5,0xfff38ff0,0xfffaf175,0xfffffcb6,0xffffe846,0xffffdbc5,0xffffe9ef,0x00000aac,0x00000f9b,0x00001a17,0x00001154,0x00000f72,0x000008de,0x0000075e,0xfffffdb3,0x00000391,0xffffe72c,0xffffde51,0xffffcb64,0x0000a9b7,0x000592df,0xfffcd1a0,0x0000cd66,0x000e46c4,
-0x000c7d4c,0x0008fd98,0xfffaf7bb,0x000ce33e,0x00100cc0,0x00060e98,0x000036f3,0xfffe9c1c,0x000528d8,0x0013fc71,0x001a023b,0x0015b81e,0x0011b622,0x000aff33,0x0008ac33,0x000094d6,0xffff95bf,0x00004547,0xfffff53c,0x000004e1,0xfffff36f,0xfffff60f,0xfffff5ad,0xfffff953,0xfffff9ec,
-0xfffffe0b,0xfffffc55,0x000006ba,0xfffff8c7,0x0000449d,0xffff934f,0xfffee8e3,0x0005fb56,0x00067e01,0x000feb7e,0x0011544b,0x000c443e,0x00048b67,0xfff7828f,0xfffda75c,0x00026948,0x0007a7bf,0x0011fb45,0x000dc871,0xfffd853b,0xffee0a89,0xffe52d6e,0xffe6332d,0xffeba1b9,0xfff19b76,
-0xfffb275b,0x00000182,0xfffffa4e,0x00000483,0xffffeeb9,0x000008f7,0x000001d3,0x0000084b,0x000004c5,0x00000598,0x0000027b,0x00000554,0xfffffd2a,0x00000805,0xfffff10e,0xfffff222,0x00003926,0x00003c11,0x000b416f,0x0006628b,0xfffd2a32,0xfff1e468,0xfff4975c,0x00011dff,0x000e9e88,
-0x000f811f,0x0009a700,0xfffb5150,0xffedb036,0xfff0b863,0x00011a4a,0x00133ffc,0x001cced2,0x001b4bfe,0x001539da,0x000cc73f,0x0004b88c,0x00008828,0xffffac3c,0x00002225,0xfffffd61,0xffffff62,0xfffffada,0xfffffac8,0xfffffa77,0xfffffbb1,0xfffffa9d,0xfffffe2d,0xfffff6a7,0x00000e01,
-0xffffdc57,0x00006b31,0xffff44d6,0x00033aa2,0xffe3f092,0xffed6d33,0xfffbedb3,0x001e59d9,0x000ef292,0x000031a8,0xfff13b6b,0xffeca334,0xfffaa7e9,0x001ac1e8,0x00177e7d,0x000f9352,0xfffece6b,0xfffb2165,0xfff79d58,0xfff4d698,0xfff6153e,0xfff6e779,0xfff86474,0xffffbd27,0x00005bc1,
-0xffffd5b5,0x00000297,0x0000034c,0x000005ea,0x00000847,0x00000769,0x00000751,0x00000879,0x0000054d,0x00000d0d,0xfffff5cb,0x000017fc,0xffffc427,0xffffe197,0xfffce522,0xffec4b02,0x001ddb1e,0x0029cc2a,0x00268b3e,0x0020632f,0x001926ec,0x000e3b9d,0x0004d6da,0xfffce817,0xfffc8eb6,
-0xfff77a23,0xfff878cd,0xfff91843,0xfffccb5e,0xffff4df3,0x000116be,0x0005556d,0x0006a3b2,0x000a2433,0x00003e7b,0xffff4adb,0x000074c9,0xffffdc57,0x00000ac6,0xffffeb88,0xfffff528,0xfffff03c,0xfffff1c9,0xfffff19a,0xffffee54,0xfffff629,0xffffe9b4,0x00003273,0xffff9944,0x000186c8,
-0x00048202,0x0008de7f,0xfffd35d6,0xfff8b954,0xfff74f64,0xfff5bb82,0xfff54c95,0xfff8d8b9,0xfff8bc8e,0xfff938f0,0xfff8e2a1,0xfff9b8d1,0xfffb116c,0xfffd86ba,0x000156bf,0x0003fc8f,0x0004afe8,0x0006fd87,0x0006c772,0x00093ae7,0x00031466,0xffff08b3,0x0000288c,0xffffd13a,0x00002079,
-0x0000126d,0x000021c9,0x00001b41,0x0000209f,0x00001caf,0x00002637,0x000015ff,0x00002c60,0xffffa93c,0x000095e0,0xfffdb0e9,0x000433ea,0x0008e442,0x00066bd7,0x0006acc4,0x00047521,0x0002e8c7,0x00014ed5,0xffff73d4,0xfffd5073,0xfffb5715,0xfff92229,0xfff8ac0e,0xfff82a90,0xfff76056,
-0xfff840b0,0xfff910a9,0xfff9de57,0xfffa59ca,0xfffa8be0,0xfffb14d2,0xfffda628,0x0000a3c6,0x00005b8c,0xffffff8f,0xffffe648,0xffffbcef,0xffffbfcf,0xffffbbf3,0xffffbb47,0xffffb74a,0xffffb94a,0xffffa971,0xffffe88a,0xfffff9ca,0x00008f1d,0x00000a0b,0xfffd294e,0xfffc91d0,0xfffc279b,
-0xfffbc3f1,0xfffb7998,0xfffb8ac4,0xfffb4e39,0xfffb3c67,0xfffb4a3f,0xfffb5028,0xfffb3f50,0xfffb19d2,0xfffae29e,0xfffaac52,0xfffb274a,0xfffb7edc,0xfffc0100,0xfffc68a1,0xfffcdeef,0xfffd9623,0xfffe9473,0xfffda9a9,0xffffcb6a,0x00000801,0x00005ee7,0x0000b84a,0x0000b39f,0x0000bd2e,
-0x0000bfb4,0x0000cadc,0x0000c634,0x0000eb3a,0x00006b9b,0x0000152f,0xffff5100,0xfffee58e,0xfffd7f27,0xfffcacc1,0xfffc96d9,0xfffc973f,0xfffc89d7,0xfffc5e0c,0xfffc47fa,0xfffc2fa2,0xfffbdf9e,0xfffb9e94,0xfffb713d,0xfffb3d05,0xfffb1f73,0xfffaeff1,0xfffb3cc1,0xfffb6f43,0xfffb980e,
-0xfffbd76d,0xfffc0d7b,0xfffbe691,0xfffe0706,0xfffe7577,0xfffd2fcd,0xfffdde84,0xfffee8a1,0xfffe4040,0xfffe2e6e,0xfffe26b2,0xfffe1245,0xfffe0801,0xfffdec90,0xfffde802,0xfffe5c69,0xfffda752,0xfffc065f,0xfffd5633,0xfffb6753,0xfffbd603,0xfffaa2aa,0xfffc4ef3,0xfffc862f,0xfffcac17,
-0xfffcb096,0xfffc3337,0xfffc3719,0xfffd5b05,0xfffc2ab3,0xfffbc970,0xfffaf36f,0xfffc00dc,0xfffc340a,0xfffc0076,0xfffc10f1,0xfffbeb01,0xfffb4ac6,0xfffbd5b2,0xfffc1ecb,0xfffcc31c,0xfffb4b62,0xfffb6005,0xfffc2810,0xfffe61ca,0xfffe2525,0xffff6224,0xffff1ec3,0xffff2d5f,0xffff62a7,
-0xffff56c7,0xffff7025,0xffffeb03,0xfffe2a29,0xfffe3fa7,0xfffc64c9,0xfffaac53,0xfffb475a,0xfffaff2d,0xfffd068e,0xfffcb149,0xfffcdc05,0xfffb7b2e,0xfffba950,0xfffe235e,0xfffb32cd,0xfff9f700,0xfff8175b,0xfffb1947,0xfffbc98e,0xfffa9e42,0xfffa5c70,0xfff95170,0xfff7bc2d,0xfff8d2eb,
-0xfffa931c,0xfffb9900,0xfffd4a50,0x00006794,0x000020c1,0x00012a30,0x0000781f,0x00006bb1,0x00004a77,0x000059a9,0x0000422b,0x00004b07,0x000027ca,0x0000410c,0x00007659,0x00011cce,0x00005b48,0xffffe97b,0xffff12dd,0xfff89c23,0xfffe534c,0xfffd674d,0xfffec8f1,0xfffbc066,0xfffae652,
-0x00011d43,0xfffaf1b3,0xfff946a7,0xfff4eece,0xfff9f0d0,0xfffb9ab3,0xfffa65c7,0xfffab83f,0xfff963db,0xfff6804e,0xfff8d5d6,0xfffb1160,0xfffc40ab,0xffffe85b,0x000085eb,0xffffcfa5,0xffffb54e,0xffffc33e,0xffffe000,0xffffdfea,0xffffe3e2,0xffffe3b0,0xffffe8fd,0xffffecf8,0xffffec17,
-0xffffc5a8,0xffffbe16,0xffffa369,0x00011af1,0x000167c4,0xfff8580b,0xfffe0ec3,0xfffdda21,0xfffeaa62,0xfff98fc2,0xfffa6650,0x000273e8,0xfff94c14,0xfff3b6a1,0xffee7ee8,0xfff76759,0xfffab2e2,0xfff73e17,0xfff59a63,0xfff198da,0xffec93c8,0xfff0ea0c,0xfff62326,0xfffb5a91,0x00005dad,
-0xffffdd86,0xfffffc16,0x000028b9,0x00001798,0x000010a0,0x00000d65,0x00000cee,0x00000c86,0x00000a69,0x00000834,0x00000b11,0x0000176b,0x000022bf,0x0000153d,0xffff7e9f,0x0000ae7d,0xffff2deb,0xfffc3c98,0xfffd4999,0x0005749a,0x0003f379,0x00016b25,0xfff71ae6,0x0006b7fc,0x000aa533,
-0x0004552b,0x00014b2e,0x00003b52,0x0004f00a,0x000c3f0f,0x00109abc,0x0011e4ae,0x000d32bb,0x0008522b,0x0003af47,0xffffd46c,0xfffff6f5,0x00000fd4,0xffffe80d,0xfffff657,0xfffff6b2,0xfffff9d9,0xfffff95a,0xfffff9e5,0xfffffab6,0xfffffbf3,0xfffff929,0xfffff822,0xffffe319,0x0000204c,
-0xffffc4ac,0xfffe855a,0x00033a95,0x000733fd,0x000a6be5,0x000bdeed,0x00072010,0x0001847d,0xfff8ac64,0xfffd173f,0x0000bc1f,0x0004bf42,0x000bd983,0x00093a81,0xfffdea0d,0xfff37962,0xffebd209,0xffe99110,0xffed4df8,0xfff319ff,0xfffa2f85,0x0000ee15,0xffffc370,0x00001397,0xfffffec2,
-0x00000c3c,0x00000236,0x00000513,0x0000034d,0x000003d4,0x00000371,0x000001fb,0x0000065b,0xfffffecd,0x00001f23,0xffffc2bc,0x00009343,0xffffe0cc,0x000437ea,0x0002619f,0xfffb6018,0xffef48b2,0xffecfcf8,0xfff46439,0x00012420,0x0006bc7a,0x00062df4,0xfffdaaab,0xfff1a6f8,0xfff1439d,
-0xfffb1f01,0x00082539,0x00108ee7,0x001268bd,0x000e7e33,0x0009b758,0x00024944,0xffffffe1,0xffffde4d,0x000014a5,0xfffff192,0xfffffd89,0xfffffae2,0xfffffd41,0xfffffc3f,0xfffffd31,0xfffffc15,0xfffffea2,0xfffff93c,0x000001e7,0xffffea04,0x000020e5,0xffffd1c0,0x0003b74e,0xfff0f120,
-0xffeec8e7,0xfff4aa4c,0x0008e419,0x000145c0,0xfffae888,0xfff73d3f,0xffefe327,0xfff77aa1,0x000c9244,0x000e0087,0x000a9bf4,0xffff8165,0xfffbc1dc,0xfff8a85e,0xfff777df,0xfff82f17,0xfff9f5b1,0xfffb7639,0x0000677b,0x00000c2d,0xffffef6c,0x00000f07,0x000004a8,0x000005b9,0x000004b8,
-0x00000453,0x000005bc,0x000002a2,0x00000942,0xfffffb25,0x00001cbb,0xffffd61a,0x00007673,0xfffec65e,0x0001a3bc,0xfff435c7,0x000df6f9,0x0015eb3e,0x0016fec9,0x0011b1b4,0x000d23a6,0x00076db9,0x0000bd4c,0xfffaef5d,0xfff8735f,0xfff61772,0xfff728d7,0xfff7efbf,0xfffbd992,0xfffe5022,
-0x00001344,0x0002a8ff,0x0003bcf3,0x00051624,0xffff1153,0x00002cf3,0x000001ce,0xffffed0b,0xfffff5b5,0xfffff60f,0xfffff7b9,0xfffff6ac,0xfffff802,0xfffff4f0,0xfffffb18,0xffffedd3,0x0000055b,0xffffd094,0x00003b19,0xffff9210,0x000110a2,0x0001216c,0xfff9abb8,0xfff695a4,0xfff65ac6,
-0xfff6130e,0xfff69da8,0xfff889a7,0xfffa9a60,0xfffc277e,0xfffca279,0xfffc54cf,0xfffc5665,0xfffd840b,0xffffa090,0x00018eac,0x0003124d,0x00049e61,0x0004bade,0x00063866,0x000090ad,0xffff8c60,0x00001b99,0x00001bd2,0x00001903,0x00001276,0x0000125c,0x0000119e,0x000013c8,0x000010c3,
-0x0000170c,0x00000be8,0x00002830,0xfffffa98,0x00005899,0xffff346c,0x0000ca9f,0x00064424,0x0004b4b0,0x00046f6d,0x0002c9a1,0x0001250f,0xffffa94f,0xfffdf79b,0xfffc6fea,0xfffaf005,0xfff991b2,0xfff9f734,0xfffa656e,0xfffa8172,0xfffb18ce,0xfffb9233,0xfffc282a,0xfffc0d11,0xfffc6de2,
-0xfffb934b,0xffff1a30,0x0000e5c6,0xffffb16e,0xffffc4b7,0xffffc692,0xffffd7ae,0xffffd6a2,0xffffd794,0xffffd547,0xffffd563,0xffffd689,0xffffce72,0xffffd707,0xffffa391,0x00000e4e,0xffffe36c,0xfffe3c8a,0xfffd25f5,0xfffcd74d,0xfffc484e,0xfffbf995,0xfffbe32b,0xfffb993b,0xfffb4acb,
-0xfffbc24b,0xfffc2c5f,0xfffc5947,0xfffc68c5,0xfffc3200,0xfffbe5cf,0xfffc218c,0xfffc5152,0xfffcaf5f,0xfffcd57b,0xfffd7401,0xfffd5ad3,0xfffd20e4,0xffffea59,0x00006037,0x0000ecd3,0x00007973,0x0000811e,0x00006775,0x000076a9,0x0000728b,0x0000794f,0x00007088,0x000088d6,0x000077ae,
-0x0000e272,0x00004a64,0x00005a9d,0xfffbc7c1,0xfffd4f08,0xfffd15cc,0xfffcfa14,0xfffce507,0xfffcafcb,0xfffc9336,0xfffc664e,0xfffc55d4,0xfffc3180,0xfffc2384,0xfffc084c,0xfffc0a47,0xfffc0734,0xfffc32ac,0xfffc49c6,0xfffc5d98,0xfffc7d1d,0xfffc80f6,0xfffcf8ef,0xfffbe7d3,0xfffbab6c,
-0xfffc9c4b,0xfffeaa4e,0xfffe538b,0xffff00d1,0xfffee563,0xfffee20f,0xfffedd00,0xfffed919,0xfffed356,0xfffedfa6,0xfffe5fa1,0xfffed085,0xfffc9bcf,0xfffbd925,0xfffbc70c,0xffff04d8,0xfffeec02,0xffff2df2,0xffff1c8a,0xffff5417,0xffff5130,0xffff589b,0xffff6b28,0xffffe0bf,0xffff511e,
-0xffff18fa,0xfffea8d3,0xffff1947,0xffff32bb,0xffff2bc9,0xffff37b8,0xffff2465,0xfffecfd6,0xffff0e08,0xffff0bd7,0xffff723b,0xffff6968,0xfffeb687,0xfffcff75,0x0000a3bc,0x0000478a,0x000045d8,0x000048cd,0x00004839,0x00004829,0x00004835,0x000048d7,0x000045b8,0x00004873,0x00009bc4,
-0xfffd38d5,0xfffe6bc3,0xfffe4940,0xfffec07d,0xffff4ce0,0xffff5efb,0xffff6fcd,0xffff832c,0xffffd80b,0x0000c387,0xffff67c0,0xfffead71,0xfffdb1d6,0xfffee00b,0xffff3231,0xfffedde1,0xfffedcd8,0xfffe7372,0xfffd9d7b,0xfffe0bab,0xfffe7cff,0xffff6730,0xfffecedb,0x0000a1fd,0x0000d067,
-0x00001129,0xffffc8d7,0xffffefde,0xffffe2f3,0xffffe702,0xffffe55b,0xffffe6d9,0xffffe36c,0xffffee93,0xffffcc59,0x000009ae,0x0000cef7,0x0000afe8,0x0000d318,0xfffd89ed,0xffff9198,0xffffc366,0x000042db,0x0000361b,0x000063a2,0x0002d0bd,0x000014fa,0xffff02a7,0xfffcc5ab,0xfffeb5b6,
-0xffff7eea,0xffff6874,0xffffb5d7,0xffff22fb,0xfffd8492,0xfffe64f0,0xfffeeb72,0xffffaca3,0x00004569,0xffffebaa,0xffffb6cd,0xfffff301,0x0000116d,0x000008bd,0x0000083a,0x000009ce,0x000008b9,0x0000096b,0x00000926,0x0000070b,0x000013e4,0xfffff063,0xffffbe2d,0xffffd800,0x0000a3c0,
-0xfffd83a9,0xfffeee18,0xffffbe44,0xfffff5c7,0xffffacc8,0x00010bca,0x000439f2,0x00001937,0xfffd11f6,0xfffa3081,0xfffdc022,0xffff6fed,0xfffeb00a,0xfffe84fc,0xfffcb1a4,0xfff9e404,0xfffb2893,0xfffcb3dc,0xffff373c,0xffffe43e,0x00001d8e,0x00000c79,0x000010db,0xfffff4d6,0xfffffd69,
-0xfffffbac,0xfffffc09,0xfffffc10,0xfffffb7c,0xfffffd2a,0xfffff9d7,0xfffffd6c,0xfffffc0d,0x00003b25,0xffffb5ad,0xffff962b,0x0001a090,0x0000124a,0x00007e3f,0x0003c53c,0x00046ce4,0x0003e99c,0xfffebfc0,0x0005d923,0x000716b0,0x00037686,0x00015a47,0x000019c6,0x00018854,0x000519ab,
-0x0007cec5,0x0009b7ef,0x00083349,0x0006dbc1,0x0003ab68,0xffff0ac8,0x00004d17,0xffffd670,0x00000786,0xfffffd95,0x000004fc,0x0000008a,0x000002b8,0x0000018e,0x0000029f,0x000000d1,0x00000450,0xffffff11,0x00000452,0xffffdfe9,0x00002dd2,0xfffef07d,0x00024b82,0x00038876,0x00055ed6,
-0x000624ac,0x00058765,0x0002f1a3,0xfffd0c8f,0xffff0e53,0x00007e84,0x000266df,0x00063f72,0x000578f0,0x00008a1a,0xfffbf164,0xfff8b2c8,0xfff82359,0xfff8ddb4,0xfffa8c7d,0xfffdb619,0x00005896,0xfffffd06,0x00000065,0x000006b3,0xfffffc54,0xffffff88,0xfffffe50,0xffffff2b,0xfffffe48,
-0xffffff9a,0xfffffd14,0x0000029a,0xfffff4e4,0x000018a1,0xffffd2fc,0x000074d7,0xffffe73d,0x00014835,0x00013402,0xffff2fb9,0xfffd02ec,0xfffbdcb7,0xffffd02e,0x00064c8a,0x00062ec3,0x00049f75,0x0000e5fd,0xfffb6c04,0xfffb7927,0x00002180,0x00056ff5,0x0008a553,0x00091374,0x00074956,
-0x00052b13,0x0001f698,0xffffae72,0x00000870,0xfffffbd7,0xfffffdc9,0x0000013c,0x00000191,0x000000eb,0x0000013a,0x0000011d,0x00000124,0x00000122,0x0000011d,0x00000223,0xfffffbf7,0x0000011c,0xfffff912,0x00015b00,0xfffaee60,0xfff9ae63,0xfffefd3b,0x000c0f98,0x00070c8d,0x00023182,
-0xfffda1a0,0xfff92e47,0xfffc4c34,0x00069a20,0x0008dbb7,0x0007cc77,0x0001d781,0x00000215,0xfffe8b5b,0xfffe0a5b,0xfffde901,0xfffe14ae,0xfffebff2,0x000013d1,0x00000f77,0xfffffa68,0x00000821,0xfffffaf3,0xffffff70,0xfffffdc8,0xfffffe83,0xfffffe61,0xfffffdca,0xffffffbd,0xfffffada,
-0x0000057e,0xffffefef,0x000030d7,0xffff8e6e,0xffffc43c,0x000070ac,0x000d50a2,0x0010be96,0x0011e927,0x000f2441,0x000c7a44,0x00089525,0x00041edd,0x00009347,0xffff683c,0xfffd5552,0xfffd41f2,0xfffd7499,0xfffe680b,0xffff0d86,0xffffc979,0x0000ecb2,0x0001d4d3,0x00025cd1,0xffff52e6,
-0x0000407d,0xffffd8a2,0x0000094b,0xfffffee0,0x00000609,0x000001d7,0x000003d5,0x000002f0,0x00000373,0x000002d1,0x000003eb,0x00000340,0x00000027,0xffffee5d,0x000013c1,0xffff4958,0x00012711,0xfffdca7a,0xfffba1d2,0xfffb74b3,0xfffb2f6b,0xfffbc6e9,0xfffd9aa7,0xfffdb2a5,0xfffe18cf,
-0xfffe43fe,0xfffebb06,0xffff3c04,0x000011f8,0x00012068,0x0002027b,0x00027624,0x0002efb2,0x0002b8f6,0x0002ca06,0xffff5a5d,0x00002eaa,0x00000b1d,0x00000b71,0xfffff289,0xfffffaee,0xfffff8bf,0xfffff99c,0xfffff8e9,0xfffff9cc,0xfffff833,0xfffffc4f,0xffffef2d,0x000013f0,0xfffff26d,
-0x0000580f,0xffff8426,0x00045e67,0x00036339,0x0003612d,0x00029bfe,0x0001e91b,0x000129f0,0x000067bc,0xffff7f14,0xfffeb3a9,0xfffdcffb,0xfffdb987,0xfffd9e54,0xfffd6b49,0xfffdbbae,0xfffdf7b7,0xfffe440f,0xfffe5d37,0xfffea332,0xfffe78c8,0x00007cfe,0xffffe7e1,0xffffb4ce,0x00000257,
-0x00001487,0x00000fcf,0x00000e31,0x00001040,0x00000e9a,0x0000105d,0x00000de4,0x00001082,0x000012f3,0x00000511,0xffffb655,0x00000cd3,0xffff4a82,0xffff83c7,0xfffede35,0xfffee690,0xfffebd11,0xfffecc21,0xfffeba3e,0xfffeb0d8,0xfffe9676,0xfffe7b37,0xfffe5436,0xfffe23a4,0xfffde305,
-0xfffd9b5b,0xfffdb683,0xfffdc3f9,0xfffde6cd,0xfffdeb2a,0xfffe2942,0xfffdefa1,0xfffeb45f,0x0000d744,0x0000ad83,0xfffff68a,0xffffbb1c,0xffffdcc7,0xffffd15f,0xffffd515,0xffffd373,0xffffd507,0xffffd194,0xffffdc19,0xffffbd02,0xfffff3ae,0x0000a2e9,0x0000a249,0xfffea459,0xffff1119,
-0xffff05ed,0xffff0401,0xfffef94c,0xfffee868,0xfffedde9,0xfffedc62,0xfffeb004,0xfffe8b7f,0xfffe6cde,0xfffe4910,0xfffe30fb,0xfffe0fdf,0xfffe2852,0xfffe31ed,0xfffe3b22,0xfffe4b08,0xfffe4c27,0xfffe89e7,0xfffe14e1,0xfffe389c,0xfffd9736,0x0000caca,0x0000795b,0x000077ad,0x00007a6e,
-0x000079db,0x000079d5,0x000079d9,0x00007a6c,0x000077c2,0x00007981,0x0000c58b,0xfffdc44c,0xfffe8035,0xfffe5828
-};
-const UWord32 defaultHRIR_rom_AlphaR48_fx[470 * 128] /*Q30*/= {
-0x08945950,0x08070b50,0x0a49d6a0,0x01bd7c0a,0xfe8e8ea8,0xfc2f2da0,0x03d9eadc,0xff0186c2,0xfc122c50,0xfbe0a0e8,0xfc206c28,0xfd11f02c,0xfc3abd38,0xfc07e728,0xfc3b9950,0xff036bd6,0x02d4bca0,0xfbdbc558,0xfef1f73c,0x015de0c6,0x095c18c0,0x0773d5b8,0x07e73000,0x080876d0,0x081163c0,
-0x0824a330,0x0835f7f0,0x084b5f70,0x086feee0,0x089c88a0,0x08d20e60,0x090371e0,0x09517940,0x092d8530,0x09028ae0,0x08987f90,0x08931f20,0x0a0e8e20,0x08b90d00,0xfdf48fbc,0x0693d930,0x02488cdc,0x02b07554,0x04443188,0x03bbc4f4,0x0594cd00,0x03e35c18,0x0205e0c8,0x0385d814,0x04150620,
-0x03a53d84,0x0201923c,0x032afa50,0x03171178,0x03f60448,0xfec67ca4,0x06ee54d8,0x0851b610,0x0812b5e0,0x08b99090,0x08c1d7a0,0x0906cf10,0x0933fa90,0x0962ff70,0x09bd4010,0x0a475770,0x0af66880,0x0ba70470,0x0c63a8e0,0x0c4da000,0x0bc22ab0,0x0a9207f0,0x0a00d410,0x0ba14f60,0x082f2360,
-0x024f3180,0x03f355fc,0x010cf4e2,0x01cd60c2,0x01981046,0x017afc6a,0x003916ac,0x02b2ca90,0xff687d95,0x0330d3e8,0x001e62b2,0x01f65468,0x00485c85,0x01d01b4e,0x01d883ba,0x01d85f22,0x01308a74,0x04ab9348,0x082685e0,0x07960990,0x08f08cb0,0x08fd7070,0x097edad0,0x09dca8c0,0x0a49ea30,
-0x0b041620,0x0c0f8ed0,0x0d283110,0x0e81e310,0x0feb4b40,0x0f9b8e80,0x0e8f5140,0x0c4e6490,0x0afdee80,0x0cc92e20,0x068965e8,0x010db3a0,0x039e2080,0x01f988a2,0x014c2dca,0x0199b6c2,0x01269804,0x00ed584e,0x006ddf1f,0x0120c61c,0x0035041c,0x001decde,0x00bbcbe4,0x0078a1e1,0x0115596a,
-0xff860e3b,0x01b69ae8,0xffefcebe,0x039ace00,0x070b9878,0x07264708,0x08a97990,0x08bfcc50,0x096e14b0,0x09f99f30,0x0a663f30,0x0b75f5d0,0x0d1af280,0x0f091a00,0x115dfe80,0x13e48a20,0x13b8bc00,0x11ddab00,0x0e4d7010,0x0bbd2390,0x11aae720,0x09e412c0,0x0291b0ac,0x0324f458,0x0162de28,
-0x009cee42,0x01bdb8d8,0x00bf5bba,0x00d40526,0x00a1cecf,0x00c21806,0x00afbff5,0x004beb76,0xffe7dbd1,0x004f60eb,0x0107165a,0x005ca611,0x01f8152c,0x00792d44,0x042ab620,0x08d36fd0,0x08ea62d0,0x0be16e50,0x0ccdf7c0,0x0e1c2aa0,0x0ec10f70,0x10b286c0,0x11f08ee0,0x1206ae20,0x15341780,
-0x15fd7420,0x15694120,0x14b4fc80,0x136a76e0,0x123cc0c0,0x101ad800,0x13457a00,0x083191e0,0x00e096cd,0x04329d70,0x04088b80,0x02054c10,0x02cc1de0,0x00e69eeb,0x010211e0,0xffff5040,0x008dafcf,0x007c5152,0x006c0afa,0x00dd5358,0x010dff1e,0x0159705e,0x00789fb2,0x0227ed80,0x00603db9,
-0x04e71d60,0x09e71530,0x0a2e4130,0x0d959060,0x0e6b5b30,0x0ffc06a0,0x113e8aa0,0x1115e020,0x1151ae40,0x11c5cba0,0x13f5a960,0x155030a0,0x15eb2060,0x1680a700,0x15e53e60,0x15368500,0x1235b480,0x191c3e60,0x0b3d4180,0xff41ac34,0x04f32a60,0xffe36000,0x03927210,0xff6bf9e6,0x01842b3c,
-0x004fa0d5,0x01825a92,0x00ca53a1,0x006e1c6f,0x00ce078a,0x00e133de,0x011fddc8,0x02407110,0x00fe8306,0x02d69d5c,0x01797798,0x04976ee0,0x0a4939f0,0x0a1dd970,0x0d771000,0x1020f800,0x13673ec0,0x166512a0,0x17accb40,0x17a1e420,0x16254a80,0x13db8bc0,0x142067e0,0x16688560,0x17f90540,
-0x1968ad00,0x1ca6fc20,0x18d5de80,0x1bad2ce0,0x0d3e71f0,0x01ede7b4,0x07d271f0,0x00a2ef66,0x03e84778,0x01ba308e,0x01214d48,0x004c4881,0x0146b67a,0x01b64d38,0x01032d86,0x009a9dd8,0x00282128,0x01509b3c,0x010dcf5a,0x0124000c,0x034d7180,0xffa615b2,0x055b0ad0,0x098ddc90,0x09666c90,
-0x0bf3dfa0,0x0e24a2a0,0x10614c80,0x11f0d2c0,0x13c67320,0x14b8df20,0x14f9c3e0,0x15c6a640,0x15d76560,0x159d63e0,0x15f301a0,0x162d72c0,0x185e23a0,0x181a5580,0x181f46a0,0x1026d560,0x01c2c274,0x03afa760,0x04675948,0x00f6d985,0x036dd6f4,0x030f0b3c,0x00a31b88,0x012e040a,0x00417cb5,
-0x00f718b5,0x015924cc,0x01220c68,0x013e4d7e,0x00e95c43,0x023a2ef0,0x02b47550,0xffa7e85a,0x062ef9b8,0x09adb910,0x085d9270,0x094ea980,0x0a8abe10,0x0cfacc00,0x0ffd6b70,0x11cf4cc0,0x137e2580,0x14ff3000,0x135b9bc0,0x1299da20,0x139c7820,0x12d14f20,0x13715e60,0x15e96900,0x15d73860,
-0x10e3d700,0x0c321240,0x00d97938,0x03524854,0x016c867e,0x00e6ad21,0x025b035c,0x0163fe78,0x022bf9b4,0x01b0d95a,0x02fc03b4,0x0097188f,0x00c50b5b,0x015ab5c6,0x020e98b0,0x0221fb60,0x0322b83c,0x031d03a0,0x019a1b44,0x05d4cae8,0x0a148c70,0x092056e0,0x09e73f30,0x0afe45f0,0x0c20cef0,
-0x0cb5ca80,0x0d2b60f0,0x0d1f68a0,0x0d03a060,0x0da3a260,0x0ed12ac0,0x0fd18650,0x0f86b0a0,0x0f1e50f0,0x0ee6fef0,0x0e916e00,0x0ccdaf70,0x082191e0,0x03154d28,0x05bff740,0x023fc88c,0x02c465c0,0x01f9a4ca,0x01965164,0xffddce8b,0x02d34a14,0xfee5bb0c,0x0405ac60,0xffdc9b39,0x0227cacc,
-0x00012c57,0x021f30a8,0x0156aaca,0x02607d54,0x0152b2b8,0x05d90690,0x09185bb0,0x072a78f0,0x07facb00,0x08582380,0x092686e0,0x099443b0,0x0b2bff40,0x0c785370,0x0dbf84a0,0x0e1b9f10,0x0e4c8280,0x0e9ae3c0,0x0e2a6920,0x0d811650,0x0d4cf240,0x0b814bd0,0x0a103740,0x0937ec20,0xfd3ac758,
-0x0690bab8,0x021c1b0c,0x02bcae70,0x04e6f730,0x04564040,0x06ddc1e0,0x05166e28,0x0298b38c,0x047de220,0x0576dc50,0x04e61518,0x02b947bc,0x0434eaa0,0x044c1b70,0x04cbd198,0xfe92de14,0x07568ca8,0x082007f0,0x07a5d7b0,0x0801c1e0,0x07da8058,0x07f7e950,0x07e50778,0x08dcdf90,0x097299f0,
-0x0a1a6b40,0x0a97a6c0,0x0b288d40,0x0bc480c0,0x0b44b560,0x0ac49e50,0x0a9034f0,0x09d34ed0,0x09710fb0,0x0beaef40,0x01fbaeb2,0xfe69af2a,0xfb881108,0x04b34468,0xfeb304a0,0xfb2d1d30,0xfad0de28,0xfaffa118,0xfc3c096c,0xfb262280,0xface25b8,0xfb13e3e0,0xfea29e1e,0x035d17d4,0xfa9d13f8,
-0xfe7cf504,0x0183884c,0x0b495460,0x08ebba60,0x094ab280,0x094eb730,0x094beca0,0x0950f7c0,0x09342600,0x09725db0,0x099d2ee0,0x09cba260,0x0a0f6f00,0x0a48a520,0x0aa36490,0x0a63bfd0,0x0a461660,0x0a20a030,0x0a0aa6b0,0x0aff1420,0x17a7cc00,0x162661a0,0x1908c9e0,0x10d15cc0,0x09f91620,
-0xfff9cc1a,0x134d7200,0x0a858e10,0x00dcc5da,0x00618203,0x005a1776,0x01398490,0xffda7e9f,0xff9e9af6,0xff982728,0x0a15c6b0,0x116a35e0,0xfea43f1a,0x09c3a7c0,0x0f60d090,0x170aab00,0x1483efc0,0x15941100,0x15d36e20,0x1602d5e0,0x163c4560,0x16785660,0x16c39100,0x1724e200,0x1791e120,
-0x1816d680,0x18963380,0x196448e0,0x1908ab40,0x18a72280,0x17a73600,0x177a1640,0x1a8b25a0,0x1a16e3e0,0x08461160,0x1516e940,0x0e5ccfe0,0x0dbe3300,0x105ac340,0x0ea57470,0x11616140,0x10214960,0x0cff18d0,0x0fa04850,0x0f44e710,0x0ec48830,0x0b5e9450,0x0d339460,0x0ecf8260,0x0f0d49a0,
-0x06ff0018,0x14bf01a0,0x15984240,0x16553260,0x1776c9e0,0x17e39d60,0x18947260,0x1944b700,0x19fcbd60,0x1b054fa0,0x1c570880,0x1df2d160,0x1fb47060,0x21cc4c80,0x219adc00,0x206991c0,0x1d5bb540,0x1c17d420,0x1d673080,0x1911ee80,0x106c7520,0x10a3d780,0x0a644bb0,0x0aab4eb0,0x099c9300,
-0x0942ac50,0x06813538,0x09932760,0x05224d60,0x0ac11b30,0x04e85950,0x09031720,0x05d98628,0x08fc4660,0x09aeb390,0x09719f90,0x0a4a8340,0x0f6471e0,0x14565740,0x1513d7a0,0x17c5fda0,0x188c9200,0x19f06ae0,0x1b468980,0x1cc89420,0x1eb9eb00,0x21460c40,0x24023040,0x27761c80,0x2b4d2d80,
-0x2a8ac080,0x2848f780,0x2244c740,0x1f23c5c0,0x1fd899c0,0x1732fcc0,0x0d060300,0x0e5fe3d0,0x09da56f0,0x07b13f58,0x070c87a0,0x04a176d0,0x03d2d7c0,0x026b77e4,0x037563f8,0x01154fc0,0x0172f86c,0x026f241c,0x024831bc,0x043775f8,0x01c801b4,0x061aa830,0x04aaab38,0x0b67c8d0,0x113d2c60,
-0x130ec000,0x1682cee0,0x177d5b60,0x19742e00,0x1b5a0cc0,0x1d2ea5a0,0x20402e40,0x2416c1c0,0x28bcd180,0x2ec1aa80,0x35d75800,0x35bff640,0x31b14fc0,0x28026740,0x21bfa840,0x2a724380,0x1e609e80,0x14903380,0x0fb9b400,0x09c40560,0x07797690,0x0896bd00,0x058b9c48,0x04c39398,0x038f70bc,
-0x03791988,0x02a53e6c,0x01e71822,0x0120b14a,0x02a4a5ec,0x04991d98,0x04416848,0x07e45448,0x07ca7a18,0x0eb464d0,0x18032260,0x1add6060,0x21819640,0x247d4600,0x280698c0,0x2ad55b00,0x2ea4dec0,0x319cf0c0,0x324b7500,0x3b9d29c0,0x3e072600,0x3c83d380,0x39863640,0x3600c5c0,0x32bd0a00,
-0x2cd6cdc0,0x3259f440,0x1da521c0,0x11603100,0x12f70e20,0x12074be0,0x0b625e70,0x0a25e960,0x059d6398,0x04ab23f8,0x0273b30c,0x030622b8,0x02edb8f0,0x02bff884,0x0408dc10,0x04c757f0,0x05e57ec0,0x069c11d0,0x0a164380,0x08a0d140,0x114f2aa0,0x1a98e2a0,0x1d19d8e0,0x245d50c0,0x27ece780,
-0x2cf4a540,0x31d2bbc0,0x339d7600,0x359dffc0,0x36ee6040,0x3cf87a00,0x402e9e80,0x40620280,0x409faa00,0x3e6e3140,0x3bb45340,0x34c72f80,0x3e4a8780,0x27a91c80,0x101f9b40,0x13fe5d60,0x0b0500d0,0x0ed69990,0x04bf2990,0x0739d978,0x03b30f44,0x05fccea8,0x0540e010,0x036fb990,0x040c1e20,
-0x04d47648,0x05ac9388,0x096f79a0,0x07f99128,0x0b440370,0x0b5113b0,0x105b4c00,0x1a0e9940,0x1c6e9180,0x23ff9780,0x292cde40,0x301120c0,0x3741be40,0x3c07abc0,0x3ecf3e00,0x3efaf2c0,0x3b0d4a40,0x3a327cc0,0x3cac59c0,0x3d7a6540,0x3fc9ce40,0x440b1480,0x3fe7d940,0x3d40afc0,0x2b96fd80,
-0x17de5000,0x198fc860,0x0a5bd130,0x0f25cd20,0x08722030,0x06e68fd8,0x03f7ba00,0x060c1fe8,0x09753d50,0x0598b440,0x03c1d2c8,0x04314e18,0x07359de0,0x06f8f8a8,0x09596670,0x0e103e30,0x08cadc40,0x120b9c00,0x1856bf00,0x19ee3c80,0x1fd66a80,0x26a446c0,0x2c95e240,0x30f43340,0x3629b500,
-0x39320d40,0x3a6080c0,0x3dfd2500,0x3edc4e80,0x3ebbbf00,0x3b5f2380,0x3824f400,0x36b88c00,0x3ab0e8c0,0x387e5dc0,0x2ef68180,0x18863f60,0x1527e5c0,0x1303ccc0,0x0a7285d0,0x0cc8cf40,0x0cf61a90,0x0691d608,0x07765d48,0x051f74f8,0x05c05ca8,0x0649db30,0x06841d48,0x078f75d8,0x07823860,
-0x0b109720,0x0c86fe60,0x08dce870,0x16a622c0,0x1b85c8c0,0x1a5de600,0x1ab22ae0,0x1e80d100,0x2431d4c0,0x2bc98600,0x309e9240,0x354bd740,0x393edac0,0x377a9940,0x36b8c940,0x398bc200,0x367df600,0x36e94a00,0x3869c9c0,0x399b0280,0x2d8c32c0,0x273fdac0,0x139b3400,0x144c6b60,0x0cb5d640,
-0x0bdc4dc0,0x0c902170,0x09434f70,0x0a305e30,0x08aa0620,0x0b9c4410,0x056fc1d0,0x05fe6798,0x078ada28,0x09f20570,0x0c1f4300,0x0fac7230,0x0f6aea50,0x0e24a8b0,0x163981c0,0x1d494ac0,0x1c25dd00,0x1c09a720,0x1edd68e0,0x21f0dd00,0x24b55780,0x2761cc80,0x2949fe80,0x2af51d40,0x2ced6b80,
-0x2f3f5940,0x30943f40,0x2fdb7180,0x2eb72780,0x2c3fda00,0x2c56f800,0x25bcf100,0x1e50b3e0,0x14b65e60,0x17876380,0x0fbcfaa0,0x0ed5f2f0,0x0bedecb0,0x09f6b500,0x068a9f10,0x0c146c20,0x05786b98,0x0f7e6320,0x056160e0,0x0bb4b7b0,0x0681b9f8,0x0c264d30,0x0b4d9710,0x0dfdcd80,0x0dcfcc10,
-0x15e646c0,0x1b4f3b60,0x18b46260,0x1a57f720,0x1bf35f60,0x1ddad8c0,0x1f126300,0x22f7a880,0x261f2a00,0x29423440,0x2a905940,0x2b987980,0x2cdbde00,0x2b917000,0x2a181600,0x28df8bc0,0x2557c0c0,0x1f7beea0,0x1fc06360,0x069ce9c0,0x19669f60,0x10cde2e0,0x10c855e0,0x15600220,0x13457900,
-0x186d19a0,0x16fcffc0,0x11aa2700,0x1647f040,0x168695c0,0x159c6060,0x106bfe00,0x130a9dc0,0x14e5a0e0,0x1428d6c0,0x0716b530,0x1a0d33c0,0x1a1ff1c0,0x1a338580,0x1ad88400,0x1b02f220,0x1b967b20,0x1bdf4d20,0x1dfab120,0x1f595e20,0x20d88b00,0x21f3b5c0,0x23235840,0x24996cc0,0x23330340,
-0x2216c7c0,0x2154d9c0,0x20126e80,0x1daacd00,0x22146d00,0x152edf60,0x0c0d30a0,0xfeb89d54,0x19fdbc80,0x0cbfaf60,0xff5be660,0xfe88add6,0xfe63ff8c,0x0037f9c4,0xfdf99bc4,0xfd8dcb5c,0xfdc38e64,0x0c74a110,0x173ccaa0,0xfc24e3b0,0x0bc9d200,0x13b1ade0,0x204899c0,0x1c1f6fc0,0x1d413040,
-0x1d40afe0,0x1d5a3f60,0x1d681460,0x1d40bfe0,0x1dc442e0,0x1e291400,0x1e93c480,0x1f314900,0x1fb7c8a0,0x208ac900,0x1ff7e4c0,0x1fb4cac0,0x1f461ca0,0x1f358b60,0x220af480,0x0d5bff90,0x0cbb9580,0x092cedf0,0x15bdc660,0x19b2c520,0x1913d000,0x11a95460,0x18040080,0x1929ff40,0x1944cc00,
-0x18b12e60,0x170f53e0,0x18049600,0x183e5ca0,0x17b76880,0x178d33e0,0x12791120,0x183d5e40,0x17fc0a40,0x14ef2fc0,0x09348420,0x0becd9f0,0x0bb8e110,0x0bd14b50,0x0c04b630,0x0c380bb0,0x0c74d060,0x0cc64b70,0x0cf0f960,0x0d0cde80,0x0d107990,0x0d1f19a0,0x0d360560,0x0d368da0,0x0d32f700,
-0x0d3c25f0,0x0c9f47f0,0x0daae820,0x0f4d6580,0x1be3d6c0,0x0ea174c0,0x132ce3e0,0x11c8ca20,0x0ef042c0,0x0ea0b110,0x0b7e5f80,0x0dc80f00,0x106ae900,0x0e4fca50,0x0cfa6090,0x0dc6f750,0x0fa19840,0x0ee1b5d0,0x0ffad3c0,0x0eb72780,0x15fb6ac0,0x0cda08c0,0x0b0d4a60,0x0c5a0180,0x0c46d7d0,
-0x0ce00130,0x0d63acf0,0x0e361ec0,0x0f332e60,0x0fd3a380,0x10111400,0x0ffc39c0,0x1025bde0,0x108925e0,0x10b5d460,0x10a90440,0x10711c60,0x0f943d60,0x0ce73880,0x1073a2a0,0x15a52d80,0x108275e0,0x112d9e40,0x0ec26b30,0x0d8ea650,0x0c3400c0,0x0c87f820,0x089fb3a0,0x0ce41f10,0x080bd730,
-0x0b3086e0,0x09cb2080,0x0bbe37e0,0x0b063510,0x0c889670,0x0cdb1660,0x0f909be0,0x0c95cf10,0x09609530,0x0be87540,0x0bfa5090,0x0d323f10,0x0e554c10,0x0fcc0600,0x1198e460,0x128ad100,0x13177520,0x134d31c0,0x137cc540,0x13c6f580,0x140a28c0,0x1421af00,0x13848a20,0x11a45520,0x0d6e8c90,
-0x1437a520,0x15ba5460,0x0d8f6dc0,0x0bd3e900,0x0ae873f0,0x0857f5e0,0x05e83468,0x0426b768,0x038a73e0,0x027acc34,0x02a1b31c,0x02c17220,0x02934838,0x037fa068,0x04bd1140,0x07142660,0x06f11518,0x0ad43360,0x0980b960,0x07931518,0x09885ee0,0x0a351bc0,0x0be9d500,0x0d8e0b00,0x0fc67b00,
-0x12c6b380,0x14a595e0,0x1538a8e0,0x152de100,0x15adc0c0,0x16ba5f20,0x17b6d6c0,0x17e52a20,0x16646fe0,0x13edecc0,0x0b8a5c90,0x10d78280,0x1a69ae40,0x12c2e4a0,0x0f56b500,0x0d2132a0,0x09231580,0x07e89ae8,0x05fa1bb0,0x048eaa90,0x04a2b738,0x037cebf0,0x0385ade0,0x03a27be0,0x04fd37b8,
-0x05fef0f0,0x081c3c90,0x099164b0,0x0ec3a4e0,0x0e5e02f0,0x0e811cd0,0x1346d460,0x14249940,0x1619b860,0x187927e0,0x1cb1e260,0x1becb180,0x1d112c40,0x1f804360,0x20a0dd40,0x20391800,0x1dc7c0c0,0x1b9d97e0,0x1a4e69a0,0x1a239fe0,0x1642c0a0,0x10ac82c0,0x1b8df260,0x21e09e80,0x171b8f60,
-0x132af4c0,0x0fb50500,0x0ae43bb0,0x09de7460,0x06c45be8,0x05cd0d48,0x0536b940,0x04609508,0x04101a68,0x046d2e88,0x0531bef8,0x06f53690,0x0bc34f50,0x0d384490,0x1287ff00,0x10d68000,0x0ebaae50,0x1117eee0,0x0fa83f60,0x12a19620,0x15d55440,0x1a5be260,0x20cb7b00,0x255dc900,0x27539200,
-0x28c714c0,0x2855af80,0x23ff7e80,0x22161040,0x1f520260,0x1c31eb80,0x196f0600,0x0c34e200,0x1efbe0c0,0x27595f40,0x168d3900,0x1a76a060,0x10a83ac0,0x0fb39920,0x09fb57c0,0x07e96190,0x076e80a0,0x0a345c00,0x07400340,0x0744fb68,0x08489680,0x089d0d10,0x0a263d10,0x0ea984d0,0x0d505210,
-0x117fae60,0x0f72aa60,0x0a0ad2c0,0x0dc1e980,0x0d571d10,0x0b2401e0,0x09e38400,0x0a445360,0x0e8950b0,0x160faf60,0x204cea00,0x267f30c0,0x249d81c0,0x1d792340,0x18f39d80,0x14dffec0,0x0bb07bf0,0x10cdbba0,0x02ab8edc,0x1a6d9260,0x26962dc0,0x1313b520,0x161bf4c0,0x0e0d5850,0x0c33ced0,
-0x09dba0d0,0x088a7780,0x0919d7b0,0x10873d40,0x0889cbc0,0x062f6ec8,0x0918e3a0,0x0a953650,0x0c6d4d30,0x0ff07e60,0x10138760,0x1518b560,0x0f9eb7e0,0x0a117c80,0x0c787a90,0x0c6fc440,0x0f83b060,0x10bacda0,0x11cd2a00,0x14021b80,0x16c89540,0x19ecf580,0x1f81f340,0x2388c900,0x25ed8e40,
-0x1ed42fc0,0x18ce8300,0x0f743ca0,0x0f059820,0x0d581ff0,0x14118ae0,0x2629c140,0x1a223240,0x13240460,0x12b4f3c0,0x0df63450,0x0dc11130,0x0d4a7190,0x0c342f50,0x0d34c060,0x09d0cb70,0x09623050,0x0b1d9730,0x0d402bf0,0x0f3c8660,0x1099b880,0x126ad520,0x18568280,0x15ab7940,0x115d2820,
-0x12ef1c80,0x0f538c50,0x10a8b640,0x109ebb80,0x11bc5a60,0x1312ac60,0x156b4780,0x183c5bc0,0x1f14f320,0x23da4640,0x26576f40,0x26153b00,0x23028340,0x1a060f80,0x18e807e0,0x18959180,0x1ad95b40,0x26b6d880,0x1d556fa0,0x184c0ca0,0x16956fe0,0x118350e0,0x0f4b4000,0x0e37d4f0,0x0e19e090,
-0x0da32360,0x0c37f680,0x0bab4180,0x0c59c4b0,0x0e034870,0x116780a0,0x14326900,0x15db43a0,0x19a008c0,0x18072720,0x14e77dc0,0x1594ff80,0x114801a0,0x111940c0,0x11f5c360,0x150c5dc0,0x18cb1a40,0x1e042d80,0x23afe800,0x25ae6e00,0x25f5f440,0x258594c0,0x26ecb000,0x263239c0,0x221e3600,
-0x2050fd40,0x1cf154e0,0x1fee6400,0x2078de80,0x1a84c300,0x19c6bc20,0x16035ee0,0x14316280,0x10e38be0,0x124dd260,0x101a5bc0,0x1342e320,0x10b91c80,0x1158a8a0,0x11f4e9c0,0x12975980,0x13d66c80,0x15e2aac0,0x16c49ac0,0x1a054260,0x178d1980,0x156a5ac0,0x18764020,0x190b6980,0x1a241f00,
-0x1a26df00,0x1a5ab5e0,0x1ae71be0,0x1b334700,0x1b7a91a0,0x1d462580,0x1f575aa0,0x215107c0,0x214b0600,0x21f24380,0x2217c480,0x215826c0,0x1b8ae400,0x1d240700,0x22b8bd00,0x1c3be8e0,0x1e34ed00,0x1c5d77a0,0x19e24420,0x18a99860,0x170040c0,0x19657900,0x1ad72600,0x19d1fec0,0x17784760,
-0x180230c0,0x19626800,0x193edde0,0x1a71e640,0x192c9180,0x1cbbe0e0,0x1a809b80,0x19e92280,0x1b958a60,0x1c0fb1c0,0x1d451200,0x1e6fc260,0x1fbb2ce0,0x1f4f3420,0x1f470000,0x1f210f60,0x1f082440,0x1ea83560,0x1eac8ec0,0x1deac0e0,0x1d770720,0x1cbcc6a0,0x1cd50360,0x191ff740,0x171bc1e0,
-0x22168540,0x23d1c700,0x1f036a20,0x1edd11c0,0x22d21940,0x1fa53100,0x1fefb580,0x1f6fbc00,0x1e199140,0x1ec52340,0x1f4f18a0,0x1eb34300,0x2270c080,0x1f13d1c0,0x1e52a180,0x22ddffc0,0x2126c680,0x16528140,0x1845ed40,0x18a839c0,0x18e49460,0x193e0e40,0x196c2540,0x19ddd900,0x19b45d80,
-0x19b88b40,0x19b8b220,0x19a708a0,0x199cb020,0x19955500,0x19721b40,0x195a1800,0x191ef500,0x192ae7e0,0x1ae6c460,0xfa6ffc40,0xfae7cb90,0xf77df160,0xfeff8266,0x0725bfc0,0x153dbea0,0xfb4a8d90,0x05b7e8e0,0x12cf8460,0x13433f80,0x133a97c0,0x12afbc60,0x1400ae80,0x145eaae0,0x149ba3a0,
-0x06071f68,0xfd3c7f1c,0x16690340,0x070f36f0,0x003a2f54,0xf9136108,0xfbdf88b0,0xfab60b90,0xfa862e30,0xfa78f958,0xfa7660d8,0xfa899ce0,0xfa853d30,0xfa597340,0xfa1e1aa8,0xf98ff2d0,0xf90b7338,0xf80ebde0,0xf8a70bc0,0xf8f5ce78,0xf9c95260,0xf9940e00,0xf8d8aec8,0xf855f6f0,0x0c20b200,
-0xfba91630,0x022af414,0x02ef058c,0xff1ba86d,0x006cd96a,0xfc7fe294,0xfd55b180,0x00f2826c,0xfdedeaa0,0xfebf0c9c,0xff076820,0x03ccd4ac,0x0253f6c4,0x002cf5e7,0x0138347e,0x0afbf120,0xfbd327f0,0xfbce6350,0xfae7c910,0xfa051c40,0xf9e48940,0xf9e2dd80,0xfa364908,0xfa657aa0,0xf9fc62b0,
-0xf9160210,0xf75df430,0xf56d3720,0xf29c5ab0,0xf36814f0,0xf45e18d0,0xf6fd97a0,0xf77b37c0,0xf7aca490,0xfb20d8f0,0x00d0a154,0xff142f20,0x04441950,0x0384b95c,0x03653d78,0x021a0ad0,0x04169258,0x0100743c,0x05832748,0x001c763a,0x06202e40,0x01b39b08,0x058b5a48,0x0306cc7c,0x037ad444,
-0x04e960d8,0x04465598,0x00977ba0,0xfc86ac34,0xfbc28760,0xf9809b70,0xf94f92a8,0xf9579e88,0xf9f952c8,0xfa42e988,0xf9bb7ca8,0xf8220578,0xf54c52c0,0xf1181c00,0xeb6f0ea0,0xed95cd20,0xef82fe60,0xf55b1ba0,0xf7121de0,0xf7f06690,0xff4cc8b3,0x054eea40,0x0046c034,0x023677bc,0x03b0aa74,
-0x02d94344,0x02e2de48,0x01b1fc14,0x0224758c,0x01b1a122,0x034194b0,0x02b7d4ac,0x02854f40,0x03596848,0x03378218,0x0671a038,0x04aea868,0x06dd4190,0x02faed20,0xfec8f76e,0xfce0b434,0xfa1a5bb8,0xfa1ec650,0xfa490898,0xfbb01298,0xfcff1ab0,0xfbe4aa20,0xf98753e0,0xf477b9a0,0xecd6b240,
-0xe2644380,0xe4541aa0,0xe82f0ea0,0xf1f8c200,0xf6d03a70,0xed58e620,0xf3f573f0,0xfca3632c,0x0162b8fe,0x03c6e45c,0x03977e5c,0x00263b39,0x01bf616e,0x00dc813b,0x0131c786,0x024d4518,0x02d82218,0x0381e24c,0x03c43368,0x03bb2534,0x0396e0cc,0x0572adb8,0x0576d950,0x07aa09d0,0x02946dd4,
-0xfb6ad448,0xf9acdb38,0xf394f450,0xf1edda70,0xf0e66fa0,0xf1ce6db0,0xeffaa920,0xeffcc400,0xf3fa1cf0,0xe5872f80,0xe2286700,0xe2a75960,0xe66399c0,0xe8d1d940,0xeac19d40,0xedcecdc0,0xe0297760,0xfc59cc0c,0x0a005e40,0x049d8010,0x01beb57e,0x05abd150,0x0455a8a0,0x0757adf0,0x04f18658,
-0x04f604c8,0x0509ff50,0x0289853c,0x01bf9402,0x00e84953,0x0161216c,0x024ad598,0x04850278,0x04554408,0x0943f000,0x0265d2cc,0xfa8a3f80,0xf7e81330,0xee680940,0xea90a1a0,0xe5a3ed20,0xe1f63320,0xe47d7ea0,0xe6b31760,0xe9cb4ce0,0xe3d3b7a0,0xe14ac0e0,0xe003dec0,0xe2306720,0xe2d3d940,
-0xe1519880,0xe0f184e0,0xd84a08c0,0xf043d5a0,0x0bd3e1c0,0x02c38068,0x098af040,0x01ab4f34,0x0a6481f0,0x04f97860,0x060e1598,0x04703bc0,0x098686c0,0x0784bd30,0x072ba2d0,0x064cc930,0x04ed83d8,0x02476a28,0x079b47e8,0x051d7820,0x057d0eb8,0x01f46fe2,0xf764c090,0xf3ab3940,0xea352280,
-0xe50535a0,0xde2ca000,0xd73fb380,0xd3d77e40,0xd4ee1700,0xdb438ec0,0xe8737f40,0xee6b7cc0,0xec27b8a0,0xf0a36a80,0xec18e360,0xe2d70f60,0xddc307c0,0xe3e00ae0,0xee365f00,0x01d5ee24,0xfe2a6048,0x0afd2e00,0x01b6b118,0x06b4e830,0x057201c8,0x068f9248,0x069bfb08,0x0cea42b0,0x053a6700,
-0x03f7f32c,0x06a36038,0x053242f8,0x07e87800,0x07ffec28,0x04539d88,0x0a4ce9b0,0x004b2c15,0xf93ae7b0,0xf73f23c0,0xf0aec640,0xe95bb560,0xe309d1a0,0xdf537a40,0xdbc2e580,0xdc79b600,0xe0bd13e0,0xe2979940,0xe7b97020,0xeb2db340,0xf45a8b60,0xfcc7bd28,0x05b73658,0xef43a5e0,0xebbc3860,
-0xe911db20,0xff1db10d,0x00aee7d7,0x01186832,0x07af0b70,0x03ddd7d4,0x0184269c,0x084a8510,0x075efa10,0x0c9bf3e0,0x07bca8f8,0x06b53f30,0x07e3d888,0x085507f0,0x0aac2560,0x0814da40,0x094fdd30,0x0fc7dd40,0xffbd012e,0xf8888008,0xf8e73ff8,0xf80f3910,0xf4b48040,0xef08e100,0xe792c320,
-0xe3d3ac20,0xe12d7c20,0xe0f6f5a0,0xe76f4860,0xee6ad020,0xf02f4460,0xf9c42e60,0xf97a8558,0xf63c7c20,0xef3bfa20,0xf2b25fa0,0xf51d7d20,0x0a57d240,0x059ffd20,0x0af58000,0x08ddbb60,0x05e0af20,0x07349cb8,0x07785500,0x0993b740,0x053b3e78,0x0b36e4c0,0x09b81e80,0x08a6e230,0x07302848,
-0x06958138,0x04b684d8,0x074f2d70,0x0b9af640,0x01c29134,0xfa5c5520,0xfc4c01c4,0xfac426d0,0xf7fc2ad0,0xf4ebc400,0xf2c7f300,0xf0e3ae50,0xf10ff8f0,0xf32303c0,0xf37c9790,0xf3f9f070,0xf6467380,0xfadfc630,0xfca7b7d4,0xfdf785e4,0xf899eb30,0xfb79ba70,0x020a90c4,0x0c14c680,0x057cbbd8,
-0x0c7767f0,0x0a87eec0,0x0bf0d140,0x0b0b13b0,0x0f03b040,0x079e3ba8,0x0f0f5490,0x03a175a8,0x0fe3eea0,0x0872b010,0x0fb22460,0x09f54790,0x0c2b3840,0x0a475ef0,0x0bf48560,0x0334d108,0xfdd935ec,0x02e527dc,0x029f41c8,0x01177728,0xff08ecfb,0xfdeb9bbc,0xfa973340,0xf7e78680,0xf4ec5180,
-0xf5256f30,0xf5ab7990,0xf609deb0,0xf7f2b6c0,0xfad25e20,0xfe604b30,0xff4fad46,0xfebc14c6,0xfd9bd238,0x1e7694a0,0x032ce16c,0x0d431a30,0x0c5b92c0,0x04c1f5e8,0x05e06620,0xff07bdd7,0x00e3ee0e,0x07341e68,0x00f5e32a,0x00632b59,0x00eac682,0x094a56e0,0x07401ea8,0x05689c98,0x077aaa58,
-0x1a0e7040,0x023b4490,0x036059fc,0x04760cb0,0x04ec7bc0,0x05e060b0,0x067f3450,0x076117b0,0x04ceb078,0x034a0b04,0x019b1db0,0x008ba8f5,0xff36b6fa,0xfdc6d720,0xfe521224,0xfe68efd6,0xfe261b66,0xfebba91a,0xfd1cca3c,0xf6bb2ff0,0x084b8760,0x149f1c40,0x27079780,0x0007f4df,0x11ff1fe0,
-0x241a3000,0x254159c0,0x252bdec0,0x22f0e000,0x259f96c0,0x263b3680,0x25cf77c0,0x11a9fde0,0x02e2e2d4,0x291626c0,0x13b738a0,0x0915e8e0,0xf82bce70,0xfe31e564,0xfd2bab70,0xfd95a920,0xfdfd1a38,0xfe63ca4e,0xff436a3f,0xfe867d4a,0xfe1cc422,0xfda6a3b8,0xfcd7aa4c,0xfc2556e8,0xfb409e08,
-0xfb681e80,0xfb679f18,0xfb814ac8,0xfb616578,0xf9ec5a60,0x044c6bb8,0x04023798,0x075cb930,0xfd7766f8,0xf8379828,0xf6571b40,0x006b245d,0xf99a7538,0xf66fdd90,0xf62e4380,0xf68a99b0,0xf81e8878,0xf7253fc0,0xf711ef70,0xf7688500,0xf9de1fb8,0xff74b149,0xf72b2e70,0xf9a8be68,0xfdafa518,
-0x06662c80,0x04186f00,0x045d63d8,0x0418cb90,0x03e8c880,0x03c34cc8,0x03c0bd98,0x03772108,0x03703894,0x0382de7c,0x03a55e20,0x03cb5830,0x03ddd564,0x042bc960,0x041bafc0,0x038cb4c4,0x04518dc8,0x0591db48,0x04ec69b8,0xf6f25c00,0x0383f438,0xfe331e76,0xfecb9466,0x013324ca,0x00d817e8,
-0x03558738,0x01ea5792,0xffb6d658,0x01b2eaa0,0x02550e3c,0x015f8ee8,0xffe1ac47,0x00b5be95,0x009e4d79,0x01ecfa32,0xfba2b530,0x04e98ad0,0x06307cd8,0x055fb9e8,0x05071148,0x047d9b00,0x042cd2a0,0x041bd760,0x033faa2c,0x02feecd4,0x0344cbc8,0x03943b74,0x03b0aa20,0x034f8234,0x040478b8,
-0x042c85f8,0x03428f34,0x047049c0,0x098efb50,0x0678c318,0xff08be0f,0x01a87464,0xfe49e5b4,0x001dd1f4,0xfffb9b63,0x007d40a8,0xff26acf0,0x02ab5f88,0xfff4dd32,0x04431ea0,0x00c14567,0x0210b9b4,0x00d3834a,0x023c4188,0x01593532,0x0239af48,0x010a8ec2,0x049da510,0x07851398,0x0580fc18,
-0x04bac580,0x038e28f0,0x02c6e4b4,0x02d51fcc,0x01729afe,0x01847222,0x01f70154,0x021bbf74,0x029b2438,0x02503318,0x041825d0,0x03e88cec,0x02c2ccc4,0x05afc9f8,0x0c577900,0x050e53e0,0xffcd4275,0x051ca800,0x025a9de0,0x01878f20,0x024655f4,0x024f091c,0x02942f20,0x027e257c,0x04319350,
-0x02b969cc,0x030d3050,0x0351f82c,0x03b9448c,0x03e62584,0x02e44ee4,0x04b51ab8,0x03601bf4,0x070a27b8,0x09bf82c0,0x088c1d00,0x076eb6d8,0x05f89378,0x056542f8,0x05c2cf88,0x039e879c,0x02fee700,0x03a073f0,0x03ce2400,0x02b35fec,0x00138110,0x01af0c8c,0x02213f98,0x02754808,0x06807290,
-0x17703b60,0x0e16f140,0xfe8c132a,0x03a359d0,0x01b805aa,0x01f2d536,0x0487e3b0,0x02263698,0x0180e896,0x01a6968e,0x020af2f0,0x03340d58,0x030fc680,0x025adf2c,0x02384904,0x02f0a014,0x0392f508,0x042f9660,0x01900bac,0x025c23c0,0x01b4ccdc,0xfcb9bc60,0xf93e4698,0xf6243510,0xf2cb40b0,
-0xef04fba0,0xf1ae13a0,0xf2a63370,0xf34abbf0,0xf3b68250,0xfa4cc588,0x05ac2c18,0x0a88ead0,0x0be73260,0x08a34500,0x0b9756c0,0x14dec380,0x012c00ea,0xf5d7d000,0x00fc5319,0x030b5110,0x02d666dc,0x04a03c98,0x043d16e0,0x04bd7e30,0x03ed1a88,0x05133758,0x02694d3c,0x018d0c06,0x01200ad8,
-0x02867368,0x026db7c4,0xfff247d5,0x0059da97,0xfe67cb96,0x03471ee4,0x06586630,0x048dfce8,0x0468ff50,0x00d5cb25,0xfc246400,0xf5da6c90,0xedf3a6a0,0xea05e260,0xeaf24860,0xebeb43e0,0xf12efa10,0xfe46ecaa,0x044ad088,0x0ac40e10,0x0f5e9be0,0x0d5b12e0,0x2546cb40,0x029bddec,0xf0c5c210,
-0x0227803c,0xf6c8e140,0x00ce755d,0xfded06b8,0x0337ee40,0x031d8988,0x044975e0,0x076c7138,0x0582a8e8,0x04e28b60,0x02ab0210,0x025a43b4,0x02a056ec,0x004618af,0x048f2160,0x01d7a45c,0x065fa968,0x0e48fcc0,0x0a0a2eb0,0x08d40d50,0x0b6b5ad0,0x0c826b90,0x0c406f50,0x0781c538,0xffe72e94,
-0xf5bfebe0,0xf5173300,0xfedb7fe0,0x0e40c500,0x1969af60,0x1eaf5880,0x29617a80,0x221f5a80,0x2cb6c900,0x0fdbec20,0xf896c3d8,0x0a1ada10,0xff36a35b,0x06c92108,0x047def98,0x06106aa8,0x041b47a0,0x05ae3fe8,0x07e96a78,0x03b4d728,0x02f5f94c,0x03bb9e48,0x0306628c,0x034c360c,0x0272c198,
-0x03c5ff60,0xff3e9af8,0x061b5f30,0x0e011cf0,0x0bb7ca90,0x0be3fb90,0x07023270,0x066699f8,0x07ff7328,0x07a031c0,0x07331a70,0x06280118,0x024f8104,0x0038c056,0xfec530ae,0x0e33cba0,0x195713e0,0x26ef5100,0x211cf840,0x144c84e0,0x0e25ec20,0xf9f3bb50,0x01b42fa4,0x06276f30,0x030ff174,
-0x045b0158,0x0199b764,0x024f04a0,0x03418da0,0x056d8258,0x0582d5f8,0x04ff2360,0x034e5c84,0x01881d34,0x014a3ff6,0x00b955f1,0x00c65ab6,0xfd0e46cc,0xff150be1,0x03270938,0x03dde78c,0x0b4f69b0,0x0af9e2b0,0x0bac83e0,0x09e51c40,0x097498f0,0x06be8128,0x031773d4,0xf90f4d38,0xf4e531f0,
-0xf4e87fa0,0xfa7a88d0,0x00ea6912,0x0c3234d0,0x0b06df00,0xff5e9220,0xffe92977,0xf3e71cc0,0xf9ce5d88,0xfcbf6088,0xfc2cc318,0xffa04e43,0x01aed5b6,0x0281cfb8,0x02832064,0x00cda622,0x04c21280,0x052f76c0,0x04232198,0x02ec5718,0x0069ad0c,0xfda1f6e0,0xfdc70f24,0xfc0365dc,0xfabc23a8,
-0xfe696054,0x01106c30,0x08d6ccf0,0x0b1ac240,0x0aa50350,0x06737480,0x0176ff94,0xfa99c008,0xf4476850,0xf23bf3c0,0xf2acbae0,0xf333aa50,0xf40d7f90,0xf638a5c0,0xfa68b420,0xfa9d5bf0,0xf80c17f0,0xf6ff4170,0xfb7bf240,0xfe75414a,0x0134ca14,0x02440050,0x02393624,0x0387feec,0x0291bbb0,
-0x01fc3a70,0x00e4af90,0xffeb13cc,0x021c14d8,0xffe0ed5a,0x0170e02a,0xff5a117b,0xfe635c20,0xfe133b8e,0xfc53a2dc,0xfded256c,0x00cf9ae1,0x010f3dc6,0x02143bf8,0x01df6fec,0x02ef81cc,0x0455b650,0x03aea4a4,0x039e729c,0x036f5738,0x0021da5c,0xfcaf55c4,0xf957e6b8,0xf8576fe0,0xf6fd40f0,
-0xf6596dd0,0xf6bcbb30,0xf76de570,0xf5c9afc0,0xfb4996f0,0xf71393c0,0xf8b0dff0,0xf9323f40,0xf9646478,0xfa1d2ff8,0xf9de0fc8,0xf94b4a18,0xf99d5fc8,0xf944aa00,0xfad56780,0xfa51a568,0xfbdc9130,0xfb507680,0xfabcf680,0xfc3d0ee0,0xff5bc548,0xf8fc4590,0xf93fc350,0xf8bbaa60,0xf8c6cc30,
-0xf834bb78,0xf75dfde0,0xf69df0b0,0xf6686f90,0xf609ce80,0xf5e7db80,0xf5f74a80,0xf65ca540,0xf6535980,0xf6d12d40,0xf70ff460,0xf73e4fd0,0xf707ab30,0xf76e67e0,0xf6adffe0,0xf5765990,0xf6922c30,0xfee9b800,0xf515a320,0xf61f7610,0xfcb92538,0xfcb457a8,0xfcc8d244,0xfd262498,0xfd2093f0,
-0xfcd6b5d4,0xfd21fea4,0xf6514630,0xf5dd1900,0xff8dfadf,0xf6be4900,0xf65fca00,0xf7f5e5b0,0xf8a82d20,0xf82c7670,0xf81f5898,0xf8307e28,0xf86c48c0,0xf88aedb0,0xf861fc90,0xf833b310,0xf7f886b0,0xf7d62d60,0xf7a5a380,0xf7802880,0xf7651a70,0xf7489b60,0xf74e7140,0xf7147130,0xf637cf20,
-0x06741600,0x06aab838,0x0662f390,0x099b2fe0,0x08b75b90,0x0293e54c,0x08bc7d00,0x081d3350,0x03e065fc,0x03ca0e30,0x03ae09f4,0x0321e028,0x0339c978,0x031900b0,0x0288e788,0x07f39788,0x084f4300,0x020fdb40,0x07b143f0,0x0851a380,0x05419620,0x05c0f3f0,0x05f23a90,0x05eecf00,0x05d1dad8,
-0x05a68df0,0x0575bef8,0x0535eff0,0x0513cbd0,0x04fc8820,0x05415400,0x05ab5340,0x0676a420,0x066ab0b8,0x06960700,0x06b41438,0x06da0d48,0x087653b0,0x097376c0,0x082471a0,0x08572b90,0x07eb34f8,0x069c5320,0x06685540,0x06366a08,0x062170c0,0x06fdbbf8,0x07950040,0x0739f318,0x06406230,
-0x0652d488,0x05b75320,0x05b899f8,0x06f0ed18,0x05b92998,0x065ae4f0,0x06ace080,0x05e26d78,0x06c5bc00,0x06a29410,0x0698a038,0x062e0ad0,0x05a3c8c0,0x04e4c888,0x048a8b70,0x04586200,0x04a6f1f0,0x058ff488,0x07bad360,0x07cee198,0x089f6090,0x08ede390,0x09552b90,0x0a317760,0x0b2b3ac0,
-0x0d1a60e0,0x0abf6420,0x084680b0,0x0669ef90,0x05a02580,0x060f97f0,0x0560f7c0,0x0493c998,0x061b5330,0x04deb8b8,0x04a889e0,0x0436ea98,0x04d3f430,0x04ecc798,0x04f21718,0x04986288,0x06a8b2b0,0x05e9bbb0,0x054f3588,0x06cf5148,0x068274f0,0x063d53d0,0x0505e098,0x03a449a8,0x020bc080,
-0x00d87543,0x008f5e80,0x018669ec,0x049e25e8,0x099bbc50,0x09608ee0,0x0ab61e70,0x0a48b3e0,0x0b034fb0,0x09eb3f00,0x0ba35cc0,0x0c7e7d70,0x0adf7030,0x082d0380,0x055abda0,0x03f09bc4,0x03f4ddc0,0x034c1fc8,0x036552ec,0x03b774ec,0x030266e0,0x032993f0,0x025f485c,0x03626fdc,0x033e9fd0,
-0x03b36974,0x03804fac,0x063d1b90,0x0581e400,0x0530c410,0x07034e90,0x07275580,0x072dcd08,0x05fe74f8,0x03e80bbc,0x01361ed2,0x0027376a,0xfed853b0,0xff5642d8,0x030957f8,0x0a71e570,0x0a7fd070,0x0c645f20,0x0bf05bb0,0x0c4a2500,0x1afc72c0,0x1f9f3360,0x1c1672e0,0x13348f20,0x101dcc80,
-0x0e7011f0,0x0cd8acd0,0x08e325c0,0x068d7c00,0x0499c108,0x0417ebd0,0x0360ce5c,0x02ad28b0,0x01f457e8,0x029eefc4,0x03028828,0x04694948,0x02aa993c,0x038c9c78,0x04645af0,0x05ac5ca8,0x06e6e148,0x066c9378,0x02972210,0xfe434bea,0xfab388f8,0xf6e23d10,0xf3abed30,0xef03f200,0xff416c60,
-0x07454000,0x0f684a00,0x10cfe2e0,0x151f52a0,0x19a097c0,0x1ad4cf40,0x28d42540,0x17b23340,0x0f0472f0,0x0bfaaef0,0x0af4cda0,0x07696d88,0x056a5020,0x03fd54b8,0x04eb5a28,0x04f0db68,0x04de2820,0x0410ffb8,0x0407c2c8,0x031829e4,0x045a2ee8,0x04762cf0,0x0485ad68,0x04393eb0,0x04f59800,
-0x080a3920,0x087039a0,0x0a8b5e60,0x0eab0810,0x11d09de0,0x142951e0,0x146099a0,0x104f5580,0x0c85d700,0x078914f0,0x0c6d8bc0,0x0f5cc340,0x15e45500,0x0f671c60,0x12fa0f40,0x1c973e40,0x28d98d80,0x15d20200,0x20e521c0,0x163a9cc0,0x0de9c610,0x0d311e90,0x0a5841e0,0x06994db8,0x05216a48,
-0x05115f38,0x04f1b2d0,0x0787ea88,0x0372b5a4,0x01f2d082,0x01211610,0x03a12778,0x05bf5700,0x04ce1cb0,0x08224a30,0x0babba40,0x0c806600,0x0fd41730,0x14905d60,0x18051100,0x16f2f640,0x15eb3260,0x153d7f80,0x165732c0,0x1680a320,0x146643a0,0x0e745150,0x09a41150,0x07ca5560,0xfa6065e8,
-0xf5d4cc90,0xef327fe0,0x08d32390,0xea302bc0,0x0f783c30,0x18ea8b40,0x0745e120,0x099fdf60,0x072461b8,0x06369a38,0x068576c8,0x061a8978,0x0551d7a8,0x058236e0,0x04cb6878,0x055ee588,0x049da840,0x055bbfa8,0x04cefa80,0x05919f88,0x070be8b0,0x0970ad40,0x0d416940,0x102c4aa0,0x11e66620,
-0x12d86920,0x14e68960,0x167bb680,0x168afd20,0x159e9c80,0x119a0220,0x0ad68b80,0x0646fd90,0x00521766,0xfd9c7258,0xefe5a200,0xe3aeab60,0xcdc81d40,0xe6e9f780,0xe7ad2980,0x011626e4,0x134ae420,0x0befe140,0x06998540,0x08d2d620,0x04c20140,0x03a017d0,0x041c5058,0x0357f81c,0x02099e30,
-0x0496bbd8,0x046e69a8,0x01f2993c,0x01c45eca,0x0144f15c,0x03520840,0x01a86aca,0x014a7b98,0x06966ca8,0x0c638b00,0x1135caa0,0x145af4c0,0x1356fe80,0x12daf2e0,0x126a5cc0,0x108a2a20,0x0daf0830,0x08ecc080,0x04e090a8,0xfe0cb232,0xf8a840e8,0xee613260,0xeabf79c0,0xe47611a0,0xea168400,
-0xf46b0720,0xfbc53430,0x06903c00,0x0371ec00,0x02f4371c,0x0305eab4,0x0245cab0,0x04f8d708,0x00ffff28,0xffa5b850,0x00295f73,0x018aae6e,0x02badbcc,0x0224e078,0x023e1b98,0x01ce1e94,0x012f0b5e,0x01a2b35e,0x00b908da,0x03b594c0,0x06911638,0x08a44ad0,0x0d476910,0x0e9f65f0,0x0ff75f70,
-0x108dfda0,0x114fa520,0x113c9120,0x0f4d9b00,0x0ba58f80,0x05b42e30,0xfceec6d0,0xf7327be0,0xf4006160,0xefa72f80,0xf41caeb0,0xf7405e80,0xfa6ffa38,0xfb1e88e8,0xfbd79778,0xfe2d59fe,0xff4b61ca,0xff93174a,0x005efc8c,0x007bd8fd,0x00da964a,0x01106138,0x00ef6026,0x000d61de,0x00fe4a9f,
-0x00182e31,0x00fed9c6,0x00dfe722,0x015cdf02,0x01b60bca,0x024de0ac,0x03846740,0x043581f0,0x05157eb8,0x0726db10,0x09523c70,0x0b9769c0,0x0a1574e0,0x08e78370,0x085db000,0x051bb7a8,0x0236b794,0xff05931a,0xfbd2da78,0xf7e9b4d0,0xf28435f0,0xf5d885f0,0xf910bfe8,0xf9c82040,0xf84df280,
-0xfb604440,0xfb55c4b0,0xfb142ee0,0xfc965788,0xfd1e62c0,0xfe02c966,0xfe3dc986,0xfe5df354,0xff32270c,0xfed26382,0xff5acb47,0xfddb27f0,0xfd27ef4c,0xfd76880c,0xfc170340,0xf9e8a368,0xfb556658,0xfa3c43d0,0xf9cf9560,0xf908f600,0xf881e630,0xf7bdb340,0xf75eb1d0,0xf6ee40c0,0xf6a2ad70,
-0xf6555070,0xf5d6c220,0xf5888de0,0xf548d760,0xf6187d20,0xf760c180,0xf840aa20,0xf8f69600,0xfa809ec0,0xfb174250,0xfab3d1a8,0xf95a15d0,0xf54ab7c0,0xfc927b84,0xfad79318,0xf708f530,0xf6f18dd0,0xf7249bb0,0xf7118250,0xf7146500,0xf7361e70,0xf73b0950,0xfb72a548,0xfcf7851c,0xf63b4bb0,
-0xfaa98498,0xfbcf94d0,0xfb8fa280,0xfaf095f8,0xfad1a5d8,0xfa8871d8,0xfa303e80,0xf9d39e40,0xf9567bf8,0xf959c428,0xf947cef0,0xf92ef960,0xf9584e10,0xf974ceb0,0xf95f6cf0,0xf9d89580,0xfa109ec8,0xfa6c9080,0xfa7a98b0,0xfafcbf70,0x0246d6f4,0x023d6eac,0x01181126,0x01680d4e,0x04119ac8,
-0x08ee2670,0x00906515,0x02ed4e70,0x075aff98,0x0768da00,0x076b3ca0,0x07961808,0x07a1d3f0,0x079c2cf0,0x07ab4168,0x02e0e3d4,0x00ddbe1e,0x0835b910,0x033b6df0,0x01539a6e,0x01bdd78a,0x023cb774,0x02212ee4,0x026bf2d4,0x028530a0,0x02960098,0x0288bcd0,0x0282a394,0x02552058,0x02170084,
-0x01cf53b2,0x01731956,0x00e5a792,0x00d0857c,0x011b5e2e,0x02211658,0x01cbbd9a,0x01c1bcb2,0x00d62f3c,0x079e0e38,0x01ece492,0x03e58670,0x03a627dc,0x0263f004,0x029dcde4,0x01a8734a,0x018e22a4,0x0273f1fc,0x01d4b40e,0x0269b204,0x020f04b8,0x035c1a04,0x035007e8,0x02551554,0x030354fc,
-0x04bdf0e0,0x017c5e16,0x024c14cc,0x0235778c,0x02edb53c,0x034d9f8c,0x03869390,0x0343d760,0x035158a8,0x02eee16c,0x021a7c54,0x0163bf1a,0x0063d182,0xff447c4a,0xfe7330a2,0xfec17036,0x013003f0,0x01021644,0xff76ecf5,0x00859112,0x03f94c94,0x03933f04,0x05e51e60,0x04145690,0x038ca08c,
-0x02c1e15c,0x02cfde74,0x02b06668,0x03a08c78,0x0301655c,0x03ae7d24,0x025b1ca0,0x0342a250,0x0306b338,0x0382183c,0x03506d10,0x02fac448,0x021d0784,0x02849dfc,0x0301de40,0x0424daf8,0x04ce6020,0x05153d40,0x044a2ef8,0x03e8e27c,0x02a67c10,0x013a185a,0x009c2da1,0xfec25ac8,0xfc9307e4,
-0xfaa95a88,0xfbfa61a0,0x00936a44,0xff98a35c,0xfc1613bc,0x00ab7cb3,0x049ad468,0x011acf3c,0x04586010,0x03e3c3c0,0x02ad69ec,0x02799f68,0x0199cc10,0x01e002ce,0x039406d4,0x0368ab4c,0x031f61c0,0x02c8ed40,0x0349dda0,0x03aaf6ac,0x034645b4,0x04335210,0x03aaf344,0x01e84766,0x0229a004,
-0x0257c778,0x03a5d7d8,0x04b76990,0x04d10e78,0x036d6868,0x030de3fc,0x01a63fbe,0xffe2b51e,0xfeb9c63a,0xfd531128,0xfb56a118,0xf8635418,0xf9237d98,0xfdd50cac,0xfcee30c0,0xf31da960,0xff1b8dda,0x0ba766a0,0x088bf760,0x09f831d0,0x07e1c570,0x04571060,0x0628a830,0x04cd94c0,0x03d50ef0,
-0x0451c6c0,0x037fa130,0x0310e9b4,0x01aa69b4,0x0334bde0,0x03c4e148,0x03377ba0,0x0415bb38,0x03e92bac,0x04bec3e8,0x06bb3680,0x08705870,0x0c6d5bc0,0x0d6f1230,0x0e676c00,0x0dda78c0,0x09f377d0,0x0755ec28,0x05abd7c0,0x013416a4,0xf68b5e80,0xe8daccc0,0xe517aca0,0xe80d4940,0xf1bce3d0,
-0xf7d7fa60,0xdc4a4c80,0x009ca63f,0x1165c940,0x04796c98,0x01b2005e,0x041b6ba8,0x0284e2b0,0x032e6264,0x035c2cc8,0x03f6dce0,0x042ee398,0x041adaa0,0x0438c758,0x031536e4,0x0312ca74,0x0371720c,0x04a99f30,0x05906758,0x066fc750,0x04cde730,0x031f6c04,0x037eeb88,0x04d19e90,0x05730748,
-0x06cd8998,0x08820660,0x0b497f20,0x0b9642a0,0x0969d6c0,0x03c4e794,0xfb808ec8,0xed8a9280,0xe45f0440,0xdb923b00,0xd277ba40,0xdd502180,0xb952cb00,0xeafcd320,0x0cb29490,0xfb7c6e38,0x0b498340,0x0042f434,0x095fe430,0x03000ec4,0x04b7a528,0x03e772c0,0x06c5a468,0x027759f0,0x0116a704,
-0x01ae6512,0x03dcdb60,0x0451bbb8,0x062c4ea8,0x0600b348,0x07eb85a8,0x0536e6e0,0xffbbc67e,0x00455693,0xfee9022c,0xfd85c8cc,0xfb683e28,0xf874dc70,0xf5b8b170,0xf4c8ca20,0xf6975260,0xf3a55f30,0xeaa9cca0,0xdbcd1500,0xd44df040,0xce2a1480,0xc0530f00,0xbfda8d80,0xc193c640,0xcfade980,
-0xf23f30a0,0xee90dd40,0x020771a8,0xfa4e8878,0x0135b55a,0xff2b39ae,0x03c178c4,0x01cbf4e4,0xff6638d4,0x03f28920,0x05ece500,0x02e0f618,0x03df5294,0x03bfc83c,0x033bd314,0x02088194,0x06a4a218,0x04a29bd0,0x012dcc22,0x010c5b40,0xfd098a50,0xfca47b00,0xf7158a20,0xee7cc980,0xe7524f20,
-0xe27cbae0,0xe15c6e80,0xdf6bc140,0xdefd4340,0xddffe480,0xd7503c00,0xd594cc80,0xd53adec0,0xcd01a200,0xdc4b6500,0xd8440500,0xe8148980,0xef41d240,0xf1a32390,0xfa35b508,0xfad05ef0,0xfd183c3c,0x00d9e2de,0x0145c2e6,0x00373a4d,0x02553584,0x02af3458,0x01ebefe0,0x02dbf570,0x0359007c,
-0x04579778,0x03e03540,0x05371b60,0x02eb7c9c,0x032bdc78,0x01e26a0e,0xfbe130f0,0xf6b7a1d0,0xf1e450f0,0xefa7fb40,0xeaff8f80,0xea134d60,0xec311340,0xf4e603f0,0xf8686938,0xf5956b40,0xf0a16260,0xe83cc240,0xdf56be80,0xdcc49c00,0xec9c8be0,0xeaabd360,0xf75811d0,0xf9642e00,0xfd92e420,
-0xfedd9e16,0xfef05868,0x0076ce0e,0x0027e63b,0x00897589,0x00acbe95,0x00a2f62b,0x00a1ec5a,0x00c0912a,0xffd910d6,0xff57998d,0x00a04003,0x004b5f39,0x021da674,0x02cc394c,0x00b2a674,0xff90297e,0xfb592298,0xf8d4d780,0xf7d3dcc0,0xf9395b48,0xf90e4ab0,0xfb770e78,0xfe25da7a,0xfd106de4,
-0xfb2147e0,0xfb726a38,0xf80ae1a8,0xf3659380,0xeef19900,0xecc037e0,0xf72f0230,0xf736ec40,0xf5984130,0xf5a84d00,0xf636b040,0xf8deb400,0xfb863f08,0xfd89d93c,0xfe4550d0,0xfe6572d0,0xff12cc84,0xfea5ad98,0x005f228d,0xff773ebe,0x00adada8,0xff666eac,0xfefaabc0,0xfe5e3938,0xff643ed7,
-0xfac59030,0xf6b5a110,0xf6a08170,0xf551b7a0,0xf49279c0,0xf2ef5850,0xf1616fd0,0xf00eb6c0,0xeeb0df60,0xed72e860,0xef4b4280,0xf0fbad20,0xf275f950,0xf382d1b0,0xf4d9a430,0xf5bf4160,0xf6379610,0xfbed21e8,0xfbbce4e8,0xfae32580,0xfdc1ae10,0xfd2c1170,0xfdb61bb4,0xfddd6d34,0xfe76d660,
-0xfe5e87d4,0xfd29c288,0xfd07b26c,0xfc7188c4,0xfcdb363c,0xfc96b8e8,0xfc560ed0,0xfbeeade0,0xfb87d178,0xfbbd44a8,0xfbb69650,0xfb088768,0xfbd20588,0xfb80fc80,0xfb225a40,0xfb4e7308,0xfbb38920,0xfbf7b9e0,0xfb8643d0,0xfb7b5850,0xfb38a4c8,0xfae56308,0xfa66af38,0xfa117038,0xfa6649a8,
-0xfa84e170,0xfad50d60,0xfb227ad8,0xfcf7aa60,0xfdc654dc,0xf93b5f98,0xf956bfb8,0xfaade488,0xfad37008,0xfa748d40,0xfbb58cc0,0xfbaaf090,0xfc0cfc2c,0xfc4aa618,0xfc75c01c,0xfc5c313c,0xfc849320,0xfa47b980,0xfa6b7390,0xfbe61170,0xf9ea8588,0xf96471f8,0xfc5d9728,0xfc093cf8,0xfbb66988,
-0xfbb1d910,0xfb53a630,0xfae0e688,0xfa82cc18,0xfad3d708,0xfb128318,0xfb597088,0xfb7b7058,0xfbaf0d10,0xfbc87c88,0xfc130fd0,0xfc532a48,0xfc9cb2d8,0xfcc09bd4,0xfce15248,0x07ba8290,0x05c985c0,0x069e04e0,0x05a8d0a8,0x031119f8,0xff94e0a9,0x071385d8,0x03e335fc,0xff9072cd,0xff6db86a,
-0xff6f20a8,0xffec9fa9,0xff7615fa,0xff6a149c,0xff4b32e4,0x03c45a94,0x06fb2830,0xff0c852e,0x039cc764,0x06479fb0,0x07943348,0x06c59188,0x07380548,0x07740220,0x07b05d38,0x07f9c7d0,0x085001a0,0x0890a810,0x08e2d2e0,0x09446e00,0x094bc920,0x08f3ac70,0x0843b6f0,0x07753038,0x06c648a8,
-0x05d4c968,0x0608f350,0x041039e8,0x056206f0,0x02189fcc,0x059fbbd8,0x04e50768,0x043d5d68,0x05661880,0x04df5848,0x0626a988,0x0667e1d0,0x05c272a0,0x06cae100,0x0663ed20,0x05fd67a8,0x04cc7608,0x052a06f8,0x06473c20,0x062fae40,0x02f38b40,0x0766c290,0x07373198,0x07c28b98,0x088144b0,
-0x08db5a80,0x09681df0,0x0a2aca30,0x0ab2a130,0x0b9dcc10,0x0ce50d20,0x0dec5ec0,0x0d9325b0,0x0b97cb20,0x097c6b20,0x07124ee8,0x04790bb0,0x04656c90,0x003e0a74,0x01a972ec,0x016b000e,0x024f7b48,0x03391e50,0x0389aa50,0x035ea3f0,0x0301c394,0x02bfd6d4,0x0424af78,0x04668118,0x05c2a110,
-0x03eb33a4,0x04b7af10,0x03f18cc0,0x04f872e0,0x05437fb0,0x05895330,0x055f6ab0,0x06250570,0x074ed1d8,0x07c45650,0x09acaa80,0x0ab95220,0x0c550620,0x0e6bbe00,0x0fa65b70,0x11da0ce0,0x13b8bca0,0x14a31340,0x129be4a0,0x0ddcc1a0,0x09deb230,0x05565670,0x00df1f12,0x00ac0b21,0xfddd5d84,
-0xff68b491,0xffd2cfce,0x00510c2b,0x022626b8,0x02c84a00,0x023dc43c,0x010a27e8,0x019180e2,0x01ebdbf6,0x03fba780,0x0332831c,0x03aa3b4c,0x03278874,0x03b1ed7c,0x04697738,0x0452cd80,0x05376180,0x0421bfc0,0x05537398,0x06e3fed8,0x07d3c568,0x0a026b20,0x0a9830e0,0x0c3ecfc0,0x0e8c5c10,
-0x10024fc0,0x12903f00,0x16f10140,0x1b0e0580,0x1a3c0220,0x145402e0,0x0e3f2fa0,0x071c42f8,0xff4ad686,0xfe454fda,0xea94bda0,0xeeaaa940,0xf6e6ae80,0xfc583704,0xfd3ab8a4,0xfe1f6b94,0xfef9bad0,0x02216010,0x0259b17c,0x034134cc,0x03cd88bc,0x041b2848,0x04023208,0x02aeaed4,0x0421b848,
-0x050459a8,0x05392b40,0x078c44d8,0x08048c40,0x0874f0b0,0x081180e0,0x094a84b0,0x0dd0ea90,0x13836460,0x18fc1240,0x1c951200,0x227e1ac0,0x256eaac0,0x276af3c0,0x1a32e220,0x0feb49b0,0x050287b0,0xfb622860,0xf220dcb0,0xe878d940,0xeaa06040,0xdf68d5c0,0xe88453c0,0xf2af1ef0,0xf8e97568,
-0xfbd19550,0x007e0ee2,0x0202b6b8,0x031294cc,0x03323090,0x03bedadc,0x04dd57c8,0x0409c940,0x03b7b3a4,0x0301f15c,0x03d80154,0x0468f130,0x04f5a678,0x06453e18,0x05a3e920,0x06b49db0,0x095164b0,0x0aaa0690,0x0cb5b140,0x0cbb8610,0x0c67fa40,0x0c7777b0,0x0a7842f0,0x09463990,0x0afa44e0,
-0x0223bad0,0xfc3ad224,0xf405ba00,0xfcc5426c,0xf9bbd9f8,0xedc70c20,0xe0a608c0,0x08c53f00,0xe0b09a60,0xddf56a80,0xf15c9010,0xefbc5da0,0xf8b472e8,0xfbdd0a68,0x0103f5ce,0x010bca70,0x02b487b4,0x056e5ac0,0x03711940,0x02ff6868,0x039fae14,0x04519828,0x052a62b0,0x05152bb8,0x05672e90,
-0x0496c130,0x062e3ce8,0x092a2950,0x06c54788,0x05f05840,0x06da4900,0x08d41bf0,0x0bb16170,0x06a274a8,0xfeca83e8,0xf6344640,0xebde73c0,0xe9b75a20,0xed597880,0x015e8512,0x1331fa80,0x2e7fb840,0x157899c0,0x371b32c0,0x0255715c,0xe2c95ea0,0xffb4b98e,0xf5320050,0x0044e066,0xfe6bfcd4,
-0xff397bdc,0x013d28a0,0x02817670,0xff4ae022,0x04b633a8,0x04c6fcb8,0x029a1a80,0x031160d0,0x03326464,0x036a62b4,0x03e1a908,0x028294a0,0x0417fde0,0x043b2de0,0x045216e8,0x0620dcf8,0x05a60728,0x04faf118,0x04688fe8,0x04091570,0x03dc27d4,0x04139280,0x053ef710,0x05c52f78,0x046807a8,
-0x1178af20,0x1a946240,0x2f50df40,0x29df5d00,0x2514f780,0x149d42e0,0xf1873fb0,0xf9d29410,0x00172ce6,0xf9d4fef8,0xffb0b7ce,0x032749b0,0xff6b553d,0x00f588ea,0x00c413ab,0x0274ba4c,0x02e8e278,0x0350a0fc,0x03b745f0,0x03730b24,0x02a23de8,0x049b2108,0x04aca0d8,0x063f1cd8,0x047a85d0,
-0x00f60999,0xfcec921c,0xffbdc367,0x02c3dd50,0x06773000,0x09af3b80,0x0c0cab70,0x0d15c490,0x07e063f8,0x075fb830,0x0a8046b0,0x0dfa5d00,0x12c45420,0x1dcc4c00,0x1c74b6c0,0x114635e0,0x0e3e6990,0xf385ad50,0xfbad8570,0xfa9a5e40,0xfce78058,0x00a363fc,0xfee96e90,0x02880c50,0x026943cc,
-0x02cbdfb4,0x0087d348,0x00e80925,0x024a8710,0x017c3882,0x0238b138,0x04680b28,0x02857e04,0x019ea606,0x01bbaf2e,0x01c9547c,0xffe12e96,0xfca42518,0xfe640b06,0xff6e2cdc,0x00914304,0xfed4ca6a,0xfc0f3f30,0xfa337b88,0xfb0dcce8,0xfed36e9e,0x03cf0a74,0x052b9030,0x06f9c9e0,0x0c193100,
-0x0bf4c830,0x0858c060,0x02686a74,0x0067e601,0x04b32778,0x00a42d0f,0x00e88548,0xffa01e46,0x0018e6de,0xfe232e36,0x00fe914b,0xfe5b4188,0x028b1220,0xfe0aba2c,0x0001c754,0xfd74010c,0xfde27b40,0xfc0a3670,0xfba24648,0xfabee5c0,0xfc6e14d0,0xfd4a6a10,0xfaa87740,0xf9d3ce20,0xf8a4cb48,
-0xf76d73f0,0xf5c186c0,0xf9443810,0xfc63ac5c,0xff179f4b,0x009c3145,0x01c4f216,0x032d19e8,0x05aa8008,0x07dd78b8,0x0a880ab0,0x07aa17f8,0x08bebfe0,0x094a08a0,0xfa418410,0x0506ed48,0x01262932,0x01db48ce,0x04f59618,0x047fef10,0x06d3b9c0,0x0663adf0,0x03b03ce8,0x05e1bde8,0x0643fcf8,
-0x05cbfb90,0x02118398,0x02a2e9f0,0x035c65cc,0x02b7b54c,0xfafbc8f0,0x03ee8f08,0x03f258fc,0x03795ee0,0x0380e9e0,0x0338dd94,0x03566644,0x02db7388,0x05077f60,0x0633f9e0,0x07a57ab8,0x08ee67e0,0x0a50b7e0,0x0b732ea0,0x0aa24180,0x09b17b30,0x0961c9d0,0x08d0ace0,0x081edaa0,0x0abb7af0,
-0x04b83048,0xff5294d6,0xf7c4e760,0x0751c5c8,0xff99b63e,0xf8bcb1a0,0xf81fb4a8,0xf7d95b70,0xf885a760,0xf75b9fc0,0xf6cc9d50,0xf6e30a90,0xff34c14b,0x05864998,0xf5b52110,0xfdea3cbc,0x0279cffc,0x094dbbb0,0x071d1d30,0x079eda68,0x0799c670,0x079d9578,0x07a68800,0x07791040,0x07e39d78,
-0x082aed80,0x0879a3f0,0x08d1f840,0x09233150,0x09caecb0,0x09612510,0x09419430,0x08ea21f0,0x08ff10b0,0x09e34710,0xfc6c98d0,0xfb9ff4c8,0xf93ec258,0x01eac9c6,0x0730a910,0x0bbed1c0,0xff6203c4,0x06bd3d58,0x0b9eeb80,0x0c00ee80,0x0bff4180,0x0b179c90,0x0c387a70,0x0c58fa60,0x0c027d80,
-0x06f311b8,0x00d9d465,0x0cc40740,0x075fcd18,0x02f1a998,0xfac09a88,0xfd199810,0xfc7d966c,0xfc80fbb0,0xfc7d9d8c,0xfc7ac444,0xfc6ca220,0xfc8bbb58,0xfca008f0,0xfcbfc61c,0xfc954314,0xfc7ec50c,0xfc8fd244,0xfc33efa8,0xfbd2de08,0xfb574a18,0xfb0fcc18,0xf92b7148,0xf9acc600,0x06a65ac8,
-0xfd1c22a8,0x01ba37a8,0x019adb34,0xff8d079a,0x01104640,0xfee81afa,0x00312d55,0x02ea22a4,0x009ca04f,0x0030fc3b,0x009a9a8b,0x02e85c4c,0x01ae74d8,0x018d444a,0x00bbac81,0x07e6da70,0xfd778d64,0xfc4c64b4,0xfc8ccad8,0xfc3ba1a8,0xfc366f24,0xfc12e8d0,0xfc09d498,0xfc480714,0xfc74b1bc,
-0xfcb80968,0xfc549420,0xfc3389ac,0xfc5a264c,0xfbd5d2f8,0xfb3af038,0xfa39ff80,0xf99c7548,0xf59bb940,0xf857a768,0xfef2a700,0xfdf80bc8,0x011a2dbe,0x00a70dff,0x015b56a0,0x029a6eb8,0x04472c00,0x018fbdfc,0x054fa560,0x00706f0e,0x048f42b8,0x01176d18,0x03a151d8,0x01aa3234,0x02406b74,
-0x02a82d10,0x034fdaf8,0xfffca534,0xfc010f4c,0xfccd4a9c,0xfbf77570,0xfc2947a8,0xfc3459bc,0xfc6897bc,0xfd602358,0xfdfabbac,0xfe52d49c,0xfce04c50,0xfc02d4c4,0xfc3ab82c,0xfb209638,0xf96087d8,0xf6c2fd40,0xf67c7fd0,0xf57f09b0,0xf8af0520,0xfec44770,0xff271068,0xfec365f2,0xfecdb7d8,
-0xff266f8c,0x0217a8e8,0x021030b0,0x02f2428c,0x0281d2b0,0x03973128,0x02efbf44,0x01a3c1ee,0x0242da54,0x0185fe54,0x04e4b3e8,0x01ca305a,0x0463e270,0x012248ca,0xfcc0c464,0xfcd7c0dc,0xfc6bdbd4,0xfcb1c8a0,0xfcb51808,0xfd2249ec,0xfe6336e6,0xff4dd50d,0xff5d9a0d,0xfd98ebd4,0xfc280f00,
-0xfc249b3c,0xfae0a088,0xf9290338,0xf6c246f0,0xf7013650,0xf5c15df0,0xf43d52a0,0xf447ace0,0xf95b7cc8,0xfd6645a4,0x00b0b0fa,0x012ee4ca,0x00c99895,0x014b7fb2,0x0228579c,0x02d5a3c8,0x032fa4d4,0x0365132c,0x030affec,0x032cd2c0,0x02773ac8,0x044c8028,0x02571714,0x047ed978,0x00d7a1a0,
-0xfc2c5c84,0xfd42e9c0,0xfa004ef0,0xf8766460,0xf8ae1d50,0xfc9dab9c,0xfc5ab148,0xfbb97260,0xf98382b8,0xf78b7f10,0xfac7d948,0xff42600d,0x00e8578a,0xfee88dae,0xf9816cf0,0xf358ff50,0x170bafc0,0xf8867538,0xee22ef60,0xf7bf9ff0,0xfa0ba3b8,0xfbacc0a0,0xfe380026,0x009eabd4,0x01aac636,
-0x03195de0,0x044d62a0,0x0370e490,0x0326bcac,0x01db019a,0x03138648,0x0334b3e4,0x03f38b90,0x0345fa1c,0x062c3908,0x02066310,0xfef76cf4,0xfff1e6cd,0xfd2787c8,0xfdd5fecc,0xfc8351d4,0xfa233508,0xf7e23070,0xf3e1cba0,0xedc30360,0xee27a7e0,0xee9e6980,0xf2889ab0,0xf9a1cd30,0x056c7bd8,
-0x18f43220,0x187d1620,0x23247f00,0x13b79320,0xfdd2cb70,0x03019d28,0xfcc6c890,0x01552288,0xfd8cf2dc,0x004001bd,0x00659a2e,0x00e8bba3,0x0313fa78,0x03f0af7c,0x042b33f8,0x03401b78,0x03d0d5f0,0x025e0670,0x04730f60,0x01615978,0x03d1d0d8,0x01aabf16,0xfcc57508,0xff1df42c,0xfdb8ca40,
-0xf5a19560,0xf02c5930,0xed750c00,0xf16fe380,0xf62a1b70,0xf9ec5eb8,0xfc654ea8,0xfab4d240,0xfc7960fc,0xf550e450,0xf4aa8b30,0xf76bb4c0,0x102d2b60,0xf9e79048,0x1e127960,0x170fb3e0,0x07112ff0,0x0201da04,0x02f591b8,0x013bac50,0x024570d8,0x03a34938,0x04b3d518,0x034782cc,0x04724fb8,
-0x0301b22c,0x01218286,0x0077f901,0x01522bca,0x01e0b1a0,0x0096ea6a,0x059ddd10,0xfe8c99a4,0xfa268880,0xfcad5f98,0xfde2c46c,0xfeee8ca2,0x0224a120,0x0607ce78,0x0c2c0180,0x0dbf27a0,0x09a86630,0x0af3c210,0x0a46ffa0,0x0d57f310,0xff5a862e,0xf1697de0,0xd9ab1640,0xf2623d30,0xf52a7330,
-0x0c5afbf0,0x1c1a8640,0x10e72760,0x09d82960,0x0811dde0,0x0517ebb8,0x04b078f8,0x02bdf4e0,0x01ddfc74,0x032a2404,0x02e83d4c,0x02a88504,0x023d6d54,0x029c6b94,0x02194f70,0xffa3cc83,0xff931414,0x048e1798,0xfd991788,0xfa37a9d0,0xfe668658,0x015e7264,0x076b1220,0x0b6edde0,0x0d4b13a0,
-0x10262040,0x0fd79540,0x0c79a3f0,0x0774d6a8,0x015da840,0xfe63c97c,0xf8c11ec8,0xf7ee2f10,0xf232f0a0,0xf885d738,0x008895a3,0x062b5758,0x0f2e8bf0,0x082802c0,0x05c99fc0,0x05cf2a90,0x03a71bf8,0x02be966c,0x010fa27c,0x011e50f0,0x0174b43e,0x015a28ec,0x01b823dc,0x02cacfac,0x0286d348,
-0x02dd1a24,0x01617348,0x02f79c28,0x024fd3d8,0x000043ed,0xff2f028d,0xff4ef42c,0x000349c4,0x000dc070,0x0131a024,0x03979a78,0x070c6ca0,0x0919f2e0,0x09498fe0,0x08123f00,0x04582cf8,0xfce08534,0xfcd29a04,0xfefe1346,0x00bd207d,0x0312bf94,0x02940afc,0x06010050,0x0740fc80,0x058f5400,
-0x075d6008,0x05099790,0x03f28144,0x0228cad0,0x03abb7a4,0x02a0d4b8,0x04794d00,0x03217f08,0x0355ed44,0x04110920,0x02b1bff0,0x03ebc004,0x050feee8,0x0456bb88,0x0270ccb8,0x05ab27b8,0x0870ba60,0x0853f1d0,0x0936cd10,0x09d85170,0x0aca6ee0,0x0b6f23e0,0x0ab61400,0x0a0b92d0,0x09ad12d0,
-0x07aa2230,0x0689e238,0x0582bc08,0x0496f598,0x03285444,0x01c0bacc,0x0357dee0,0x02f96318,0x03ae9d40,0x0a1f01e0,0x04370758,0x06783da8,0x05f6a0e8,0x04421678,0x047647e0,0x030292e0,0x04637e98,0x061401a8,0x0545af88,0x043e0320,0x05566ee0,0x0616d398,0x067c89e8,0x059a3610,0x0549b428,
-0x05935c60,0x078f1428,0x06b83378,0x0661c9b8,0x063f7a50,0x05b46bd8,0x0509d180,0x04a74c58,0x046b54a8,0x03fd8848,0x037f191c,0x030cf2fc,0x0290d680,0x0201a538,0x02446cb8,0x02e19c20,0x030bae8c,0x03690870,0x02fe32c4,0x01797124,0x08700b00,0x0b17ec20,0x0acbdae0,0x06227d98,0x0a6bfe20,
-0x0b09e400,0x0b72ea20,0x0b4b5580,0x0a847920,0x0b1ce7f0,0x0b8a5140,0x0b411e60,0x0aa52470,0x075aadf0,0x09dee8f0,0x0b0b09d0,0x091db9c0,0x048b7658,0x04b03b38,0x04fff9f0,0x04f01050,0x05231918,0x0560bfb0,0x0599f5c0,0x050070e0,0x04872640,0x041188c0,0x03af23e0,0x03436c74,0x02ae0aa0,
-0x02d46758,0x02c6d8e4,0x02c8cc18,0x02c88c28,0x034fb624,0xfe368ed2,0xff4275f9,0x00be2114,0xfa0b13b8,0xf8762a28,0xfbbb68c8,0xfb6b7988,0xf90e0850,0xfbcde198,0xfbb940d8,0xfbfb0f78,0xfcd1ae88,0xfc66f210,0xfc5bc974,0xfcb0d840,0xf957d208,0xfad26790,0xfceff7d8,0xf95bb7a8,0xfa2fcd38,
-0xff8bca63,0xfe976d5c,0xfe826d6c,0xfe579316,0xfe456816,0xfe1ab3b6,0xfdd8e744,0xfd907b2c,0xfd29a00c,0xfca53d60,0xfc4d02ec,0xfc447b04,0xfc4ef568,0xfd806be0,0xfe5e550a,0xff8d5361,0xff82d17c,0x0232d474,0xff28601b,0xf7776760,0xfe5c8b46,0xfb5b2af8,0xfc95b23c,0xfda7230c,0xfe2e74c8,
-0xff16621d,0xfe130084,0xfcdb94fc,0xfd98a6d8,0xfe5d0476,0xfd8be5f8,0xfd829770,0xfda2be84,0xfcaf42dc,0xfde4e6cc,0xfbc52bd8,0xfe326f1e,0xff587e6f,0xfe714120,0xfe30128c,0xfe17128e,0xfdd55b74,0xfd2c9a04,0xfcb6ab20,0xfb7e3d68,0xf9b67908,0xf806f610,0xf7aa1090,0xf85e4cf8,0xfb509c30,
-0xfde7da00,0x0102c1e4,0x012182fe,0x07b7e878,0x009d71dd,0xfb619780,0xfee2ec2a,0xfc874ec8,0xfdd0d8a4,0xfe6e2c2a,0x0030ad54,0xffacfffa,0x01466716,0xff3f9009,0x012669e0,0xffae7723,0xff369216,0xfea91070,0xfec40780,0xfe32a3c4,0xfe906876,0xfd65127c,0xfec9cb96,0x0027dd4c,0xfeb988f6,
-0xfde3edcc,0xfd78b95c,0xfcdb7ad8,0xfb42fbf8,0xfa583c98,0xf7e95ce0,0xf51cd3a0,0xf2959040,0xf1c401d0,0xf32027c0,0xf8eaf430,0xfe431eba,0x04d1fa58,0x04e909d8,0x0d572570,0x00dea1ed,0xfbff8018,0x013c1d34,0xffc6f979,0xfe6c8af2,0x0018b860,0x02c27dc4,0x02bc9680,0x02b62fc8,0x03cdfb98,
-0x0331b680,0x02938788,0x01e124e4,0x01ea2154,0x019bd608,0x01776182,0x01e03e5a,0x008c15c2,0x00a7295c,0x00cc91c0,0xff940ee1,0xfe69e1a0,0xfe56895c,0xfd9aa164,0xfc6c1dcc,0xfbd19760,0xf889b4a0,0xf35da320,0xecedad20,0xea73b480,0xec7b71c0,0xf541c6c0,0xfd22b4b0,0x07a44698,0x08400fd0,
-0x13abb820,0x08d8ba40,0xfc9f8b8c,0xfd990e2c,0x00154b67,0x01700b24,0x038efb74,0x01dfb77a,0x02345a30,0x022cbfcc,0x023087f8,0x02ad06f4,0x02c45864,0x02035c78,0x01ad0636,0x00f35ae9,0x0042fcf2,0xff45ec34,0xfdbd01a4,0xfeafee9c,0xff6eea7e,0xfce198d0,0xf9a74a58,0xf85b4da0,0xf5df9450,
-0xf235b4d0,0xecf4f0c0,0xe9f43fc0,0xe73a5ca0,0xea19a0e0,0xedb13580,0xeff35880,0xf9b31fe0,0x02baab48,0x0eadb480,0x0f6dcf50,0x02566c5c,0x07bf3088,0x0247140c,0xfe934266,0xfef46b38,0xfca93570,0xfd9b90dc,0xfdc67fa8,0xffccedf7,0x010a7576,0x03229944,0x033a9eb8,0x03145928,0x021a476c,
-0x02572bc0,0x01adb42e,0x011b4008,0x0019dd9e,0xff913c34,0xfcc55954,0xfbc5ff70,0xfa6030f0,0xf7baf640,0xf1f3ac00,0xec92caa0,0xe7a14080,0xe81c24e0,0xe83c4180,0xe59bee40,0xf01ae640,0xf684c2a0,0xfc2c87d4,0xf3440500,0xf01a0a30,0xf166e5e0,0xfc93e74c,0xd4289c00,0x00725f18,0x102f6fe0,
-0x024feef8,0x08339680,0x02d28ca4,0x043dd8c0,0x007998bf,0x03010b88,0x02751de4,0x00d892a4,0x04287e30,0x044c8178,0x00ec19fe,0x0191ff82,0xfeeb460c,0xfe1ff078,0xfb954228,0xfaba5928,0xf8f3cac0,0xf5966c10,0xf61ab050,0xf7e898a0,0xfb828048,0xfd4418e8,0xfc32eb60,0xffbd446e,0x035c537c,
-0x060889c0,0x102c6c40,0x15d5bd80,0x16675f80,0x06c35e20,0xf3a4a770,0xd37bfdc0,0xd433f880,0xd665a380,0xdfa93640,0xfe535c34,0xf5c75150,0x01dd8b62,0xfc62750c,0x008ec626,0xff3e8ca5,0x02fb34b0,0x02cddc0c,0x00f03248,0x02bf6ff0,0x0227ae70,0xfde04664,0xfda1f620,0xfd2ba16c,0xfb274f00,
-0xfaec1540,0xfa4db6d8,0xf9554028,0xfdec9538,0xff627a5a,0xfef6412e,0x01369538,0x02eb3708,0x03a40028,0x0544af48,0x08c4cec0,0x0e522490,0x0a6a83c0,0x07807220,0x03d83760,0xfd3ff0c0,0xfcb53494,0xfaac8e48,0xea6c3860,0xf8aa8220,0xeb730040,0xf2854340,0xf779c2b0,0xf8e17120,0xfea484e8,
-0xff5291fe,0xff6e4535,0x02820178,0x0357f1ac,0x034e2a98,0x02b39cb0,0x026b6dbc,0x018677ba,0xffcfeb8a,0xfe9c592e,0xfe34630e,0xfc797be4,0xf9853280,0xf7e0c110,0xfa893898,0xfca8ce58,0x03b9ed88,0x0423c3e8,0x0534bf98,0x05a0d700,0x04b58e68,0x047a9198,0x068cc2d0,0x0a0ed120,0x09da8870,
-0x0493f360,0x019374b8,0xfc0bb87c,0xf6d201c0,0xf8c8ee40,0xf9659878,0xf44d6a40,0xfe82d924,0xffa23b10,0x025585b8,0x01f86c1a,0x00a44b34,0x0064409d,0x005a4d6b,0x01554b44,0x028329c8,0x031b9498,0x03174ac0,0x029fc1dc,0x03581430,0x01fb2458,0xffc5c56e,0xff52ba68,0xfecf2294,0xfffc2ab6,
-0x01ca1f0e,0x02f9ce38,0x065a1bb8,0x0528bdb8,0x03ecc490,0x01f204fa,0xfff015a8,0xff8423c9,0xff932153,0xfe72250a,0xfd908488,0xffb74ae2,0xff5a0008,0xfe16bbbe,0xfafb1458,0xfa3485c8,0xfdc3a100,0xfe202d0c,0xfd97b8a0,0xfc220490,0xfd0feeb4,0xfe43009e,0x00366cdc,0x012e86c4,0x01d5788e,
-0x01333a28,0x0163d2f4,0x014ecc32,0x03d25294,0x0379379c,0x05690cd8,0x060f4630,0x0745fa58,0x07ddbd58,0x07898248,0x0861f420,0x079e5538,0x06ed3e50,0x05f647b0,0x054e4da0,0x05118438,0x052f6178,0x02f2f508,0x00c9fc94,0xfe8c8c10,0xfeee14c8,0xff189afa,0xff4d0f45,0xfe4aba60,0xfe0e2386,
-0xfe84acc0,0xfe0e8c56,0xfe5751d0,0xfd5df834,0x02f8fba4,0xffcbf4a7,0x00b27927,0x009a6b1f,0xff658bfb,0xff8204df,0xfed2e3f8,0xfe69ab56,0xfeaec862,0xfe1870a8,0xfeae5fda,0xfe5c27c2,0x00874f97,0x01095a00,0x013d13d4,0x029fd378,0x06419428,0x031949dc,0x02f749f4,0x0354169c,0x03891408,
-0x038f8010,0x03420b20,0x0315299c,0x01cf7556,0x01385e2a,0x006c8671,0xffd64055,0xff1c76ab,0xfe873ae6,0xfec6a88c,0xfeaaaa50,0xfe5ea7d6,0xfe2b1c1a,0xff722825,0xfe9170ee,0xfd621628,0xfef2cd92,0x04c93ba0,0xfcebaefc,0xfeeed600,0x03ab794c,0x03e3bd4c,0x04132000,0x04589268,0x04844b70,
-0x0493c9a8,0x04a4de50,0xff5c34cc,0xfe32e980,0x065f6358,0x00dac6e4,0x0007a4a3,0x00040502,0x0089f9ee,0x003808d2,0x001e8f5b,0x0016a930,0x00248ddf,0x0054dc4e,0x0042804f,0x002f0cf1,0x001c9eec,0xffd8ec4e,0xffa253ad,0xff4f4c59,0xff3fc913,0xff302344,0xff3e83ce,0xff21c612,0xff323927,
-0x0260fcfc,0x0392e594,0x03913e74,0x05490c68,0x02d445b8,0xfc38003c,0x0533f7f0,0x02bfbf40,0xfdc02bc4,0xfdaf6cf8,0xfd90affc,0xfd17dd38,0xfd07f47c,0xfce113b0,0xfc6b20e0,0x02642c80,0x042c2190,0xfbb32c40,0x01d8e07a,0x03a27418,0x01a05330,0x01a65a4e,0x01d36236,0x01b3cbf6,0x01ba8b5a,
-0x01bb4676,0x01d663a2,0x01b24c86,0x019803b4,0x017446f0,0x019092c8,0x01aec8ba,0x01c37bbc,0x0212a02c,0x0296ff40,0x037c1a00,0x03d86280,0x062606c8,0x073f4f60,0x02fc95ac,0x0500dd50,0x03f98960,0x030bdf80,0x035688ac,0x026ebf54,0x02fcfe18,0x03aca68c,0x037279f4,0x03c99e40,0x02cd7610,
-0x02b38c14,0x016f3906,0x0141b182,0x0282d4b8,0x01544e78,0x00690d5c,0x01d7a4ae,0x00c3cfd0,0x015d6364,0x00f34509,0x0102e572,0x00f878c3,0x012b9798,0x00e38cd1,0x00c1a067,0x00868672,0x00998156,0x00c7ed2a,0x016b42dc,0x02085a14,0x0386b3b0,0x05cc8390,0x06d22760,0x09b98810,0x0933b660,
-0x08cb4570,0x073c5000,0x051cca68,0x03ec4620,0x034e2fa8,0x02d216b0,0x02c1d89c,0x0240390c,0x02e41218,0x0264a878,0x01bb8e56,0x01915f60,0x015a1a6c,0x01284c8a,0x00490de8,0x00342220,0x01770c8c,0x0028cb08,0xff460223,0x00092ab2,0xff94afeb,0xff975672,0xff536847,0xff86eecf,0xfe956e3c,
-0xfdedd8c0,0xfd764984,0xfe23ff7e,0xff2695c0,0x00219beb,0x0195143c,0x04553288,0x094f1c00,0x0aa03d50,0x0c4c4500,0x0cd821a0,0x0bf0cc80,0x088a1890,0x07c777d0,0x05e74cf8,0x046a12b0,0x026a73e4,0x025db134,0x0255dbf4,0x02b039a8,0x028968b4,0x0235a578,0x006ea0ab,0x014f927c,0x007c24d5,
-0x00fd9831,0xff9a0024,0x0168b562,0xfebb6c00,0xfd8487c8,0xff0e81e3,0xfe4bcc70,0xfe25559a,0xfde17ec0,0xfe2a8584,0xfcfcf164,0xfc77efd8,0xfc01a990,0xfc084084,0xfc7ec1f8,0xfebd32cc,0x00f91ce8,0x067cd768,0x0dd83110,0x0eff4410,0xf9d7d300,0x02150c40,0x09b6f840,0x03c2d4d0,0x02f71530,
-0x02e26268,0x02d9af8c,0x0443c728,0x04438730,0x038a42d8,0x02a333e4,0x029f9c80,0x027d90b0,0x024697b4,0x0177c8da,0x00423a36,0x00e11216,0xfe5c70ec,0xffec276c,0xfe4acad0,0xfc49e3ec,0xfd277228,0xfb352528,0xfcce367c,0xfaed7620,0xf67b63e0,0xf5bccd60,0xf54bc590,0xf64fa4a0,0xfec77b74,
-0x03e26058,0x09ae6f00,0x03c96544,0xff9addc5,0xfbd2f1e8,0xffbd959a,0xe302a6c0,0xf8f7d828,0x0509e338,0x00aac443,0x013e0ec8,0x0225bc74,0x00cd8e63,0xff717777,0x00350903,0x0185e76a,0x025f4420,0x03b2518c,0x03ba5dac,0x02454858,0x01cad92a,0x00fd99d1,0x00bae7c7,0xfeced0da,0xfdbc26c0,
-0xfc850e98,0xfaa92848,0xfb9e0ec8,0xfd73fd54,0xff70bd7a,0x01939df8,0x0411f6a0,0x05a8c608,0x0a6542e0,0x12f4eb40,0x13fc2f80,0x161c4720,0x16e9fc00,0x0eb80480,0x043e89a0,0xf1fd5ea0,0xe6a36e80,0xfede694c,0xe6313520,0xef42b6e0,0xf72d09c0,0xfb149c10,0xfd2a16e0,0x0037bb08,0x002cc868,
-0x036a1bdc,0x0387d370,0x002c0dd4,0x03bbac2c,0x02b2f1f8,0xfe923a78,0xfe8fadf4,0xfd4b7f84,0xfa780138,0xfb8b3018,0xfa4a0940,0xfdf0f9cc,0x06b53570,0x0a563af0,0x11babb00,0x1c5ec540,0x23c49bc0,0x284870c0,0x26e9e540,0x22c5a100,0x1da16ae0,0x151df7c0,0x13abeb20,0x10f17240,0x18541780,
-0x1fbaec80,0x2ca47580,0x13b430e0,0x2c213380,0xfecf01ee,0xeae0b980,0xfee766c4,0xfb56aa20,0xfff54af6,0xff1c044b,0xff2715ea,0x00e8490d,0x01a0d7b8,0xfeee1f48,0x02bdbfe8,0x0312ed40,0x00afe059,0x00c7c1fa,0xff847091,0xfea2603e,0x005f1082,0xfc0d2b08,0x030f8fdc,0x09bec770,0x0afe3240,
-0x0f867e20,0x11d57900,0x15e1ab00,0x1b16e3c0,0x1995f120,0x19c02180,0x1baa5fa0,0x18bbd640,0x135b6060,0x0aa8e180,0x12f15ba0,0x1a35c660,0x2eab1300,0x2685b800,0x19faf620,0x10ebabe0,0xfccf0f64,0xfcc2b978,0x00e47894,0xfea4aba4,0x01509af4,0x021320e8,0x032e9d10,0x03ae249c,0x02e170ac,
-0x02813964,0x02349f68,0x0229097c,0x00fc3282,0x005a9f5e,0x025d6c40,0x0137be6a,0xfced8510,0x0533a6a0,0x08efe650,0x090f9240,0x0b29ae30,0x0a521360,0x09641f00,0x0756cba8,0x078916c8,0x06092600,0x01cc6e8c,0xff80f10c,0xffdfde26,0x017e8212,0x05366cf8,0x0b6bc4b0,0x19603440,0x1839eda0,
-0x0aa23600,0x0b4e48d0,0xfcabed54,0x0087c4a5,0x001f16f4,0xff5e5319,0x0063afa0,0x00aaf6b4,0x02250dec,0x024d3938,0x02953588,0x038db970,0x03b822fc,0x0259a6cc,0x0355358c,0x042c7a28,0x04dde0b0,0x03e400e4,0x03cca620,0x047df1c8,0x03a17ef0,0x03bbd554,0x038b945c,0x04366000,0x03e9a6a0,
-0x0185aa1e,0xfee99b3e,0xfbe6fa08,0xfa4f7310,0xfa937f20,0xfd8687a0,0x023bf948,0x035c0538,0x03868440,0x04645b58,0x07c84728,0x01066c68,0xffa390b6,0x0154a15e,0x02e20a6c,0x01e58122,0x01d52486,0x01058faa,0x011da6c2,0x00aab8b8,0x01295724,0x012c445c,0x012ff9cc,0x013ee5fc,0x00fcfc99,
-0x02890b14,0x020a6884,0x022b04e4,0x02d97740,0x0558e648,0x0220ea18,0xff778123,0x005c83eb,0xff4e3d82,0xff0cc38e,0xfe527a02,0xfdeb5768,0xff20635e,0x003564b2,0x0117fb88,0x014cb7f6,0x01123ba6,0x0083130e,0x0155e210,0x022b8a64,0x02063ed4,0x012a97ea,0x01af2be8,0x022b0018,0xfdc92e88,
-0x002b0a7f,0xffc91819,0xffdf875f,0x00eaeda1,0x00ce53ed,0x01934b32,0x023be038,0x02334f78,0x02e011b8,0x02df3c6c,0x02deb99c,0x021d5cc0,0x014bef44,0x028ae5fc,0x01af2754,0x02765564,0xffee9dd7,0xffa639bf,0x000afd9c,0xffdc3299,0x001e1c6b,0x005c3f2a,0x006d8514,0x009ed745,0x00cf34dd,
-0x013b628e,0x0194f1c2,0x01f7a2a6,0x024108a0,0x01ef5c64,0x018c8fd8,0x01ab7c1a,0x01c4fcba,0x0167b3c4,0x01f96f2a,0x02d99da8,0x0146e408,0xfdbf5e7c,0x032ca09c,0x013f55be,0xfe4ee122,0xfe2d116c,0xfe08486e,0xfdeaf05c,0xfdd10930,0xfdb4f8d8,0xfdb92a74,0x01ea8132,0x03176bfc,0xfea987c6,
-0x01578f98,0x02240f84,0x005de637,0x00ee4440,0x00b438a1,0x00ae7a16,0x008dbb24,0x0061ad2a,0x00342191,0x007252c4,0x009e4f18,0x00bdddc3,0x00f01c99,0x01326f10,0x019e5496,0x01a13b96,0x01b76bb4,0x019fed20,0x01aaf2e8,0x020f7a60,0xf9e2a188,0xf9b13a18,0xf798d210,0xfc30f8ec,0x013d65d4,
-0x079aa7b8,0xfa5d1578,0x00114eca,0x05c3b490,0x06197dc0,0x060cc608,0x05a3da50,0x064ab3e0,0x06556738,0x064aa300,0xffc91735,0xfb26ca10,0x06b066b0,0xfffc6742,0xfc28533c,0xf9529018,0xfa7a09d0,0xfa051740,0xfa35ee40,0xfa1f6ce8,0xfa1c1768,0xfa257970,0xfa2d2a00,0xfa3e69a0,0xfa581ee8,
-0xfa4576b0,0xfa237060,0xfa082b68,0xf94b03c0,0xf8e62328,0xf8c71f40,0xf8ac8fb0,0xf6584610,0xf70ef6c0,0x062c4490,0xfb431320,0xff7e2aae,0xff0cdbbf,0xfd07fbb8,0xfda4bee8,0xfc20ae5c,0xfc6361e8,0xfdbcc120,0xfc637534,0xfcb308c4,0xfcc00c54,0xfe72e0b0,0xfda4e60c,0xfc352790,0xfc50675c,
-0x0076849a,0xf98eeb78,0xf9a7abf8,0xf9648758,0xf9d83ac0,0xf9e05788,0xfa05eb58,0xfa0bcf30,0xf9d43940,0xf9c099e0,0xf9ddc828,0xf9c29708,0xf9397688,0xf8abe8d0,0xf678abd0,0xf58f0620,0xf591eaa0,0xf5a9cd50,0xf01b7c30,0xf6781600,0xff0a0942,0xfcbce674,0x01c34136,0x000baee1,0xfff76af3,
-0xff39a119,0x00e8acde,0xff7691bd,0x00877aa6,0xfe4adde0,0x00cb8ceb,0xfe9b68dc,0xff707588,0xfdd14fa4,0xfdaa18c8,0xfd73525c,0xfc5a288c,0xfaa29448,0xf8f6ef08,0xf8e51fa0,0xf952c658,0xf8ef9238,0xf8a8e640,0xf8883110,0xf80b0c60,0xf81d7940,0xf85ebb58,0xf87b0ca8,0xf8b02818,0xf8de7d28,
-0xf4415c50,0xf1965c40,0xf0675240,0xf0b20cb0,0xea56c540,0xf7378d00,0x027a0038,0xfee6d7a2,0x015105c4,0x027ab914,0x014fe89a,0x01c49fc0,0x01c8fe0c,0x020d68ec,0x01c093f4,0x02bb6048,0x0164a23e,0x00370fd2,0x00028d3e,0xfeec9ed0,0xfe84e374,0xfd44dd48,0xfcb6bce8,0xfaef8340,0xf9af9458,
-0xf9118570,0xfa165b48,0xfa2f8cf8,0xfa46b2f0,0xf981c1e8,0xf7b88aa0,0xf6c93380,0xf684ddd0,0xf72d3720,0xf788ea20,0xf719b3e0,0xef813080,0xecb02840,0xeb97a120,0xed20e480,0xe2771bc0,0xe8141d00,0xf37df300,0xf7707930,0xf9bbe348,0xfbaf4dd8,0xfabb76c8,0xfded3418,0x002221d1,0x01520baa,
-0x022b3910,0x0248c6b0,0x0254f460,0x01b71934,0x00c5cb06,0xff9c8ec8,0xff27da8d,0xfd9b8f34,0xfba4cfd8,0xf84883e8,0xf745ccd0,0xf6974e60,0xf5f73140,0xf28d66c0,0xf0f4f020,0xf19f9040,0xf360b060,0xf555c8b0,0xf91a8cc8,0xf926aa18,0xf978b678,0xfc3f3ec0,0xf7746e50,0xf177dfe0,0xe7d0c8a0,
-0xe351cda0,0x03f1b100,0xf2c2dcd0,0xf2bd9e50,0xf99e79b0,0xfa1deed8,0xfda42efc,0xffae9ded,0x008192bf,0x00944eee,0x0188075c,0x016c7fba,0x02fb6a20,0x02c18670,0x00dfc389,0x0040882a,0xfeeed124,0xfcbc87ac,0xfc26f674,0xfb0b01b0,0xfd44bc80,0xfe3314dc,0xff196b5f,0x02d73e8c,0x0b474de0,
-0x13a76720,0x1a9cd240,0x1d813ee0,0x1d445a60,0x1c363300,0x0e902fd0,0x0232d40c,0xf6f84510,0xfa479ec0,0x01afa482,0x0fae4870,0x097a3850,0x1b249740,0x06cad468,0xf6712230,0xfde02180,0xfa6345b0,0xfda16890,0xfc9164bc,0xfe28c03a,0x01056b10,0x01e461fe,0xff1b7246,0x022b9cfc,0x00d7f647,
-0xfd4e1bec,0xfd0133bc,0xfcd7a0f0,0xfc90be14,0xfec87c68,0x00032ba3,0x027aa5b4,0x03770e94,0x05a25158,0x08655470,0x066f2fc8,0x03d26c90,0x00621004,0xffa3a60c,0x0163e874,0x053c2268,0x03d5fbb0,0xfbf00ae0,0xf3ae6fd0,0xf0a91290,0xf199cd40,0xfdd3f014,0x0ce36570,0xf27811c0,0x127de2c0,
-0x0e613340,0x049de2f0,0x01873a98,0x009a534c,0x00e783c1,0x0193f162,0x01a4c490,0x01c657e0,0xfebfb90e,0x021134fc,0x02e73054,0x022aa200,0x0261fecc,0x019fa7e2,0x028c2edc,0x00a2b004,0x0367e744,0x026a7c8c,0xfcb8f528,0xfbdfec30,0xfaf71670,0xf6da1e70,0xf3b97770,0xf1a6cac0,0xef491b00,
-0xe9988500,0xdfbcedc0,0xe3e21a60,0xe7615240,0xee7d8520,0xe7f08720,0xe24f3c60,0xd73a6c80,0xe6be63e0,0xe3ff2380,0xf7a5fe70,0x0c5dfd10,0x061ac6d8,0x022c5cc8,0x03564f24,0x00916cbf,0xfe8d39e2,0x009e5898,0x00b053be,0x0123e870,0x00bc8aa2,0xfff76145,0xff8c269c,0x00ecb53a,0x025bd604,
-0x02790ebc,0x02c5ee1c,0x0628a1a8,0x025166e8,0xfdbe21a8,0xfcf3fdcc,0xf8004340,0xf4ee0140,0xf08462b0,0xec3efca0,0xe85568a0,0xe68dd140,0xe5921540,0xe72fde20,0xe82518e0,0xeac23920,0xecfc6b40,0xeec5a3e0,0xec171780,0xe9532e80,0xf612a4a0,0xfa53efe0,0x068ae5d0,0x00e27e1b,0x00a1fb60,
-0xffe784b8,0xffa17ea2,0x013f06cc,0x00c8def6,0x00e29937,0xff901703,0x00d731c6,0x00ab8e11,0xffde56a1,0xfe91cf00,0xfdd212e8,0xfcaff5fc,0xff8dc997,0x01db1598,0xfdb575d8,0xfa9ce490,0xf9d98468,0xf60ce570,0xf364fcd0,0xf25d1e70,0xf3527600,0xf77cf4a0,0xfb4ee2a0,0xfdb475a4,0xff40b44d,
-0xfdccd0ec,0xf849a180,0xf7dd8ec0,0xf832ee20,0xf9a27788,0xf87d4248,0xfbc05f18,0xff4e7580,0xff6ccf4b,0xfef2224c,0x014e0c90,0x0088b849,0x0085f523,0xffb06277,0x00e73250,0x0027f347,0x01ce0738,0xff12a7df,0x00d0b502,0xfecc3678,0xffd381eb,0xfdf996e4,0xfe2a6706,0xfcdd1ee8,0xfcb26200,
-0xf9c08ed0,0xf9a655e8,0xfc1a14a4,0xfdbe801c,0xfdd4e9f8,0xfd8d1340,0xfd0dcb38,0xfc14876c,0xfb377d60,0xfaac2630,0xf96b5830,0xf8ab2b78,0xf8023798,0xf830e048,0xf7d41300,0xf7149bf0,0xfa1390b8,0xfbc31088,0xfb861260,0x02153e38,0xfcef918c,0xfe8ed602,0xfedae3aa,0xfd647814,0xfdc8ba4c,
-0xfcb71ea0,0xfcbe168c,0xfe86ce20,0xfd2c5300,0xfd376e20,0xfdc54d38,0xff4f2f63,0xfeaa20c6,0xfd48fab0,0xfdc67974,0x00fefdae,0xfce7114c,0xfd618904,0xfcc34600,0xfc5e7064,0xfc5868cc,0xfc8f9ebc,0xfcf55740,0xfc8471e4,0xfc12b9c0,0xfb961e08,0xfb155330,0xfaa9faf0,0xfa295ae0,0xfa7d5d38,
-0xfb098758,0xfb5866d0,0xfbac81c8,0xfb672ec0,0xfa599cd0,0xfd9cbfd8,0x00c868c5,0x0512d4f8,0xfbf151f0,0x005f6e9c,0x04816aa8,0x04ef9768,0x052f6040,0x04e657f0,0x05bf15a8,0x062a7188,0x065e2f08,0x008621a3,0xfc76b09c,0x05d63088,0x0082a21d,0xfd50a994,0xfa8ce408,0xfb86eaf8,0xfb63d720,
-0xfb8718e8,0xfb861af8,0xfb67f740,0xfb54a5d8,0xfb0f7ab0,0xfaec80b0,0xfac84278,0xfab29590,0xfa906de0,0xfa48a8a8,0xfa9acb78,0xfabf9b70,0xfafd4d88,0xfaf9a6f8,0xfa471390,0x03853e64,0x024262c8,0x04b63688,0xfd105d5c,0xf8de0e38,0xf6562d60,0x002b805c,0xfa42b9f8,0xf678bb20,0xf64ddf60,
-0xf673dac0,0xf7542c20,0xf67c9da0,0xf658b470,0xf6977610,0xfa4a4cb0,0xff9e10d7,0xf5d12020,0xf9f0a7b0,0xfdfa04e4,0x0583ee18,0x0336b488,0x03df0804,0x0408cc28,0x042cd550,0x044a82d0,0x0471c678,0x0451daa8,0x04486010,0x04217d30,0x04157e30,0x03f29d08,0x03d8efdc,0x03bc8118,0x0362569c,
-0x024f69e4,0x02c74590,0x014f444c,0x00762d8a,0xf62541f0,0x00bd44ee,0xfd211ad8,0xfd81fa94,0x00112e37,0xffd29533,0x028ef1f8,0x01af2932,0xff1ac0df,0x012ddf6a,0x0165bba0,0x00f2bff6,0xfe7cba4a,0xff4ca660,0xff909f73,0x00775536,0xf9916b38,0x03ead5e0,0x05069080,0x04f65b18,0x05ca32c8,
-0x06107090,0x06690d20,0x069571f0,0x0622b1d0,0x059fb488,0x0508e718,0x05201398,0x051a1458,0x04b7a500,0x04761ba0,0x030d9a08,0xfff2195f,0x0079476c,0x00b5f106,0xfd3899a8,0xf8e0b7f8,0xfc6a40e8,0xfba82880,0xfdcebf64,0xfe304d16,0xfed220d2,0xfec7d246,0x019e51a2,0xfe7ccefa,0x026c1b20,
-0xfefc295a,0x017fb4b2,0xfe4e300a,0xffb49b96,0xffb81988,0xff9c3944,0xfe4aa07a,0x02b0cd58,0x067a01c0,0x05da1fd8,0x07be67c0,0x085ed800,0x0943bda0,0x09f84690,0x09584040,0x08fd8b10,0x07e5e348,0x07c82458,0x073bafb0,0x06e9fd90,0x063a7b88,0x03fc8ad4,0xfda8b204,0xfec15ff2,0xfe4f0e18,
-0xf7248aa0,0xf4279d30,0xfbacb620,0xfc25df34,0xfd9f9148,0xff1afb3f,0x00530aff,0x026e3a64,0x025621ac,0x02aa2b98,0x02024fa0,0x01cb2d02,0x01c9c07e,0x008b9667,0x00d4cc19,0xfe32fe08,0x00fda9ca,0xfd8a4e3c,0x038a0df4,0x083d4610,0x0815bf80,0x0a2f3150,0x0abdd1e0,0x0bbeeef0,0x0c401d60,
-0x0a857f20,0x083c6fd0,0x061f1448,0x071e9460,0x08438700,0x07c03f38,0x069a6b18,0x00cc4cca,0xf69815d0,0xf8294248,0x1381cd60,0x0469e208,0xf5f68e20,0xfb390980,0xf9e06af8,0xfafbfdc8,0xfe3588b0,0xfce3edd0,0xff0c27a3,0x010d8450,0x01705b9a,0x02b793b8,0x02ec8bf0,0x01d41708,0x015cdbae,
-0x01738364,0xff777a26,0x01cbfaca,0xfe27d746,0x029fe3d0,0x07c13990,0x069990c8,0x0bd687e0,0x0fe36690,0x1404d280,0x16bdb2a0,0x19f5f600,0x1c7881c0,0x1dd765e0,0x16cfbc60,0x110a46e0,0x09e69c60,0x0f35c610,0x12592600,0x146978a0,0x0f317e50,0x17d1be20,0x07d7cef8,0xfb84ee90,0xffbc8ce5,
-0x01b9b550,0xff26ccf8,0x0075b70a,0x00504690,0x00fa7170,0x00ff330c,0x01de3af4,0x02ca6e40,0x025d6e24,0x01ad23c2,0x02015194,0x0147b3e6,0xffedb40c,0x00d5347b,0xff483447,0x057e3c78,0x0b5c8a50,0x0c42ac50,0x0ed43dc0,0x0fec9450,0x1114eca0,0x12907400,0x10e1a660,0x0cf5ab40,0x04db9e50,
-0x04a294b8,0x03200ea8,0x02bab098,0x07825ac0,0x07e383c0,0x0a1b5080,0x11726fe0,0xf5e49150,0x0ee6d150,0x0ccfdab0,0x06bd95a8,0x03190504,0x02faac48,0x003068de,0x00393df3,0x0229f818,0x02e2f3d0,0xff24c2d5,0x023f4b38,0x018b3a5e,0xff8fee56,0x0065968e,0x01d3e958,0x019c9d30,0x0281d6bc,
-0x03161dc4,0x01ec9b90,0xfdd87f90,0xfacd8928,0xf6f4fd70,0xf5b23b70,0xf4bdb070,0xf48b9260,0xf00e1850,0xed4ca8c0,0xeabcaaa0,0xf17966a0,0xf9398708,0x05669d38,0x04322630,0xfe449724,0xf2bd8320,0xf0aad630,0xf64f93d0,0xf2fedfa0,0x019b971c,0xff4ab0c0,0x006a0616,0x010a4ef2,0x01cb3b72,
-0x01ab36b0,0x020c23b8,0x01e9e092,0xff00a27b,0x01d1b37c,0x01bcbe68,0x01211b96,0x00f987ed,0x007973ed,0x00e92ac6,0xff1facec,0xff179565,0xfca94230,0xf94aaba8,0xf7b75b90,0xf4e49c50,0xf3195fd0,0xef646240,0xebb3ed40,0xeb94d3a0,0xee2c63c0,0xf311fc80,0xf4c47a70,0xf8467030,0xfadac038,
-0x01547286,0x0822aea0,0x0bc4c5e0,0x02aa8c28,0x092afa20,0xf8d6c670,0xefe07620,0xf8bcc2b8,0xfc7d4e58,0xfd0473bc,0xff2a1fbc,0x00934a74,0x00303daa,0x01591b4a,0x0075b989,0x0074ca88,0xffcbbe0d,0xff984efc,0xff2dc180,0xff211c03,0xfdd74fb0,0xffde87f1,0x00849bf5,0xfc42dcb8,0xfa1ac058,
-0xf6dd3230,0xf462a670,0xf3dbe200,0xf50af230,0xf9569a18,0xfa7e8018,0xff1119b0,0x082c56c0,0x0941f100,0x0a5bb9a0,0x09d94760,0x0bb2f910,0x09e9ca40,0x05d74378,0x05d79f78,0x01b2c2c4,0xfc61b108,0xf8b09578,0xfc9c744c,0xfcfe1c2c,0xfe7e011a,0xffb4c19a,0xffe8f4b8,0x013b5d50,0x010746c2,
-0x00b9c9e9,0xffc8ab02,0xffb5d502,0xffad8d29,0xfe8dab78,0xfd13b27c,0xfcdd9954,0xfa9f67f0,0xf97f50f8,0xfa537890,0xfc383084,0xfcccd1ac,0xff0341dd,0x0196e960,0x0221bf44,0x01b08056,0xff9f3fba,0xfe4ee94c,0xfdd997ac,0xfe4de9e2,0xff1fb92f,0x012a6902,0x015ba21e,0x02561c4c,0x030de76c,
-0x007c3831,0x025f6150,0x009f0390,0xfe862956,0xfefa29e0,0xfd6e3ef4,0xfee7dc02,0xffbbc7fd,0x00da8af4,0xffbe2761,0x00b41ada,0xff890080,0x006e9dc3,0xfe7dabf4,0xfe78f102,0xfd7f997c,0xfd75cde0,0xfc2dd80c,0xfc4fe220,0xfb62c598,0xfd3a73fc,0xfe8740e6,0xfd6507ac,0xfd63c324,0xfcef76cc,
-0xfd31023c,0xfd9316b0,0xfdd6903c,0xfe4570f4,0xfe6f38dc,0xff976987,0x00750ad3,0x01cc404e,0x01670196,0x015f44dc,0x028df2a4,0x01bc8d5a,0x00643382,0xffffc24f,0xfafdb008,0x000e1556,0xfe1ff3b2,0xfe2514f6,0xff851102,0xff23542d,0x004ba2ca,0xff4a53f7,0xfdb2d020,0xfe855794,0xff15b3ff,
-0xfe74ee8e,0xfd6dbaa4,0xfd930a84,0xfe21bb3e,0xfe5726ac,0xfbf7d8f8,0xfdb03550,0xfdb327b8,0xfde41938,0xfe3a7c36,0xfe770a20,0xfe8f7bee,0xfe79fc22,0xff1a17e3,0xffa90d82,0x0035402b,0x00df13dc,0x0193fad0,0x026c1c50,0x022fcd50,0x01df2f6e,0x014f1120,0x00ac31fc,0x00b3c343,0x019fc81a,
-0xfc94803c,0xf9e23988,0xf8a9da60,0xfe850c14,0xfa919860,0xf8b9e680,0xf8683308,0xf880bcf8,0xf90e5670,0xf889d2b0,0xf844d2a0,0xf85f66a0,0xfa08db80,0xfd870c70,0xf897ee08,0xf9e510a8,0xfc70e734,0x00659c75,0xffc0bbf8,0xffee633e,0xfff2099c,0xfffd5509,0x001a8162,0x002a7ff7,0x0094ac7a,
-0x00e64b12,0x013c38f6,0x0174ab50,0x019c696c,0x01e6c490,0x0176ac10,0x013fb588,0x01199504,0x01066c32,0x00c676a7,0x033116e0,0x031f825c,0x02878d74,0x059e5b90,0x05dc5c80,0x0275c0b0,0x04f1d060,0x05dc91a0,0x03a1c1e4,0x03e83724,0x03e94364,0x032845cc,0x0385a264,0x0372df8c,0x0331a8c0,
-0x05fabf50,0x0504f570,0x02c6af90,0x05fd91b0,0x05916ac8,0x01f1a20e,0x02cc8b60,0x02d6117c,0x02cde47c,0x03036890,0x0324f088,0x03344550,0x03558e50,0x03659800,0x0372c2b8,0x03a98778,0x03db2bd0,0x0455c478,0x03d74e58,0x03ae536c,0x0368a198,0x03777e64,0x03a48520,0x04318640,0x030b9758,
-0x02a448d8,0x0370ad20,0x033e15d8,0x02fe93f4,0x02ee5360,0x032fd4d0,0x03d18b24,0x043d7a28,0x03d8f5cc,0x033646f8,0x03d7e1b4,0x031d7bb8,0x02dcde7c,0x040c2138,0x02f087c8,0x05055208,0x03007ca8,0x01f366de,0x028b7500,0x0219d2c4,0x025be8a4,0x025853ec,0x027ca304,0x02fcbfa4,0x03a38f40,
-0x0429a3e8,0x05001800,0x05944080,0x068762d0,0x05920108,0x052215d8,0x04773a58,0x04893f20,0x06067568,0x043556b0,0x0351b284,0x02cb5ea8,0x01d89dba,0x01a9263c,0x01dc0cfe,0x01a9a046,0x03013740,0x020cf688,0x02b0c310,0x015b4d48,0x025fece0,0x027dd510,0x020d28a8,0x01823688,0x0256a438,
-0x020c4674,0x043c9268,0x02cf1df0,0x01359fa0,0x02c6d034,0x024e4b30,0x03a49d78,0x04564a30,0x051c2480,0x063a0e80,0x06e97960,0x079f4a78,0x08be5440,0x09230250,0x0a60d230,0x087ed140,0x083fefb0,0x07289cc8,0x076e1af8,0x07753d30,0x0496c008,0x016cfa52,0x01051506,0x00cd39ca,0xffcb04d4,
-0x0026303a,0x00170a45,0x01bda082,0x02410d28,0x00b910b2,0x019b5228,0x01430134,0x00e2560a,0x001650cd,0xff85f8be,0x017aadf4,0x004612b2,0x034abecc,0x017174fe,0xff0c0082,0x00139a2c,0xff2e1d17,0x0033d7cc,0x00739f31,0x01100112,0x03061854,0x05b667c0,0x081093d0,0x0a5b1340,0x0aec4c40,
-0x0c7590a0,0x0a485600,0x08f7dec0,0x07be02d8,0x07e13020,0x0dfb39e0,0x0fc723b0,0x0c3c5f70,0x070ff910,0x06dd7cd8,0x05543478,0x04b8a9e8,0x029e42a8,0x01b6d15e,0x01576dd8,0x0100ad4c,0x02064548,0x02425e2c,0x02507eac,0x017ec882,0x00bb9153,0x01b0e102,0x009bbd53,0x03f5a0bc,0x0454bac0,
-0x04514d90,0x096451f0,0x0bdcb010,0x0edf2160,0x128e0500,0x181aa480,0x1857a460,0x16757960,0x104e8660,0x1215f360,0x12a92200,0x123af0a0,0x12af2dc0,0x13953580,0x15abd9e0,0x14923760,0xf56e3f30,0x07ae6e28,0x0bf62140,0x0503bff0,0x04836208,0x02e35cc8,0x013955c6,0x0097b113,0x0117ee88,
-0x01750896,0x018d569a,0x0276abb0,0x024b6c68,0x01d4954e,0x01963d9c,0x01c460f8,0x041c1cb8,0x03c41a40,0x06e1c068,0x013dd994,0xf9f18f40,0xf8761e98,0xf34d5110,0xf3ffb3e0,0xf23afad0,0xf0f1cd70,0xee63e060,0xef9563a0,0xf2adde20,0xf8ff7bb0,0x017c2d9e,0x0a7020d0,0x058a7940,0xfe82f9cc,
-0xf30cf750,0xf333c6e0,0xf7c7a310,0xf7d600c0,0x04afbcf0,0x027a7d18,0x054ab968,0x02f0c7e4,0x04034218,0x016d5d1c,0x03a40980,0x032d7fb4,0xff968a6b,0x029cb8bc,0x023eec48,0x01d8fcf0,0x020cf5e4,0x017306f8,0x03222928,0x003c0272,0x0011c13a,0xfca99aec,0xf9da08c0,0xfa37af20,0xf5ff9bd0,
-0xf32f64f0,0xf23d95a0,0xf5f03910,0xf565bc80,0xf557b670,0xf60056b0,0xf16d6e00,0xf145d130,0xefe7ae20,0xf32415e0,0xfcd9d7d8,0x07ff68d8,0x0292b6f4,0x0faa9df0,0x01cd0aa4,0xf905d780,0xfed5a95a,0x00569b8c,0x00c88aa2,0x00ae0998,0x00770d09,0x018d0aa8,0x01b518ac,0xffdca66f,0x00f6aa79,
-0x0064c3cd,0x00ba54be,0xfedc4890,0xfea476a6,0xfe3a3ade,0xfe85caea,0xfee48e96,0xfc4ee5b4,0xfac6a208,0xfadbabb8,0xfbd52b50,0xfed21282,0x020b3fb0,0x05622c70,0x08200d70,0x0c2ff840,0x119cec00,0x0ef868f0,0x0b1352d0,0x057f7810,0x06119718,0x045bb3a8,0x096ab8a0,0x0c9be5e0,0x07011f70,
-0x09ebff90,0x0681dc90,0x01cc8d16,0x02ec23d8,0x01345370,0x022c89b4,0x040f9d00,0x03107204,0x016ada04,0x005d7032,0xffdd6a22,0xffc9736c,0x00b8d991,0xffd3761d,0xfe85aef2,0xfd8df960,0xfc3118a8,0xfc408820,0xfce7c154,0xfec081e2,0x004fc084,0x020353b0,0x042b7a80,0x056c3bd8,0x056fd028,
-0x09e14ba0,0x0905d330,0x032d28fc,0x01f2bcec,0x00954bc0,0xffce7fc5,0xfcb513a4,0xfe4e1424,0x037f2c58,0x06d29ea8,0x049cf338,0x06c51e58,0x019fd1a6,0x007b13a8,0x00607414,0x000f71c0,0x002a535b,0x00d1f135,0x00315bb2,0x00263d7c,0x0026ce1f,0x006dc6d4,0x001e951e,0xffc7c231,0xff8c86e7,
-0x00511b36,0x01b518fe,0xffa8332c,0xfda8ee6c,0xff4cb624,0xfe386cdc,0xfd85f97c,0xfe85bb0a,0x00c8c777,0x02a4abe4,0x03ff8fb8,0x032f2c94,0x01e54196,0x00feffcb,0xfeb7fe36,0xfdf9fafc,0xfe7a0a14,0xfed96052,0xff41e232,0xff709feb,0x03ffe874,0xff8c036e,0xffeebe51,0x0264b26c,0x0207324c,
-0x0236a500,0x01a4940c,0x010751fa,0x00af89d9,0x0101b704,0x0040d3cd,0x011a2384,0x00127aa2,0xffd429a8,0x00363663,0xff395d2c,0xff64765d,0xff388712,0xff2b7d31,0xff6f8439,0xff186ecd,0xfe6c5556,0xfdf8e5b4,0xfcfc7140,0xfde1fecc,0xfe8011d0,0xff415ec3,0xff4c47a6,0xff94f743,0x0009aeb7,
-0x0049ca5c,0x00d684de,0x010380fe,0x018f4f90,0x01f9b566,0x018d2e3e,0x00fdd955,0xff85584d,0x0036e38a,0x0158cca0,0xffb6393d,0x00f2bd66,0x00b18221,0x00697fde,0x00be1be8,0x0013406c,0x00cd49aa,0x015c97f0,0x012fe290,0x009329e3,0x00e5ccc9,0x002bd02a,0xffd91a87,0xff9eb4ac,0xfe7da398,
-0xfde1f350,0xfe3d9650,0xfe45bf5c,0xfe7b56ec,0xfe93e76a,0xfe87aa16,0xfe5f28d0,0xfe574be6,0xfe981714,0xfed67610,0xfefdc17e,0xff1552d5,0xfeeb0efe,0xfec38d92,0xfebdc418,0xfed5f5c2,0xff2f4bca,0xff892b7f,0xff896cff,0xff282032,0x02cf51b4,0x037f37e8,0x01074d74,0x02377d48,0x0364e128,
-0x01e8a76a,0x01d7e668,0x019ff122,0x010463c6,0x0110e5e4,0x00ff7e14,0x00b6e19c,0x03215588,0x021c4fb0,0x00053bb3,0x0299abac,0x01fb91da,0xff9e2645,0xffc391b1,0xffc63475,0xffc7c28f,0xffcc28ed,0xffdb36f7,0xffdf16c0,0xffb3f7eb,0xff83103c,0xff59af27,0xff3edf5f,0xff40731e,0xff427d5c,
-0xff6444d3,0xff7198b1,0xff6284c1,0xff7dccac,0xffc429a0,0x01977898,0x01b9b9ae,0x01dd5a4e,0xffda0c43,0x004fde7a,0x038438e4,0xffc1ac5e,0x001f698c,0x02bbc78c,0x02f15ca4,0x02fe16c0,0x032e9c50,0x03204800,0x03385218,0x03993308,0x0039ee0b,0xffb155dd,0x03d1189c,0x0066d475,0xffb6708c,
-0x013210ba,0x0139cf94,0x010cd86a,0x00ed8815,0x00e60195,0x00d229ce,0x00a2d95d,0x00c1909d,0x00de574a,0x0121861c,0x014f2c5e,0x019c1028,0x0228c2e4,0x0201e288,0x020f8b70,0x027d6e28,0x01cb0134,0x03391e00,0x01d9e8f8,0x0177c6ee,0x012206ee,0x00ce3e77,0x01646dc4,0x01462f98,0x010c6a82,
-0x0156fe08,0x00f12b80,0x00428299,0x008d7e27,0x01114414,0x00fcc53d,0x011692d0,0x010784d0,0x00540b59,0x00f584cf,0x014e5ae6,0xfff3fffa,0x00adc366,0x001ff71f,0xfff17e65,0x000a25aa,0x00012bca,0xffb4ccb0,0x0012f02e,0x00970e47,0x0182b9fc,0x01fd49f8,0x02a3adb0,0x03a9c86c,0x03364a30,
-0x03783a00,0x04ec06b0,0x0381e738,0x044301d8,0x02f88be4,0x01509386,0x0182ce56,0x01026430,0x00ad4175,0x00d122c6,0x0080bba0,0x015ad0cc,0x01ef5ea4,0x0027afec,0x016373f6,0x00fd399d,0x017149aa,0x00609d9b,0x003c654a,0x0067b8e5,0x008c63c9,0xfffbfd6d,0xff4ecee6,0xfffc1b71,0xff3902d0,
-0xfe5e2a30,0xfe4bd05c,0xfdfa6ff0,0xfd447f98,0xfdf61314,0xfec8f616,0x00b77439,0x01b95cc6,0x03336c78,0x0594e110,0x048ff610,0x04daa948,0x07a90ab0,0x04860f00,0x074264f0,0x04ac1bd0,0x02ed300c,0x020cff50,0x020aac78,0x0188dad2,0x018201b4,0x00ebcb70,0x01df13c4,0x0207b530,0x0157c1e0,
-0x0199f7ec,0x013206e8,0x01aeb3c6,0x003d58c1,0xfff422a0,0x0039a634,0x00af9a76,0x00011d79,0xfe8c57d0,0xfea7ebcc,0xfd9824a8,0xfca81a94,0xfd4de730,0xfd6f75cc,0xfcfa8b38,0xfe7b3200,0x008db508,0x040c47c0,0x0513d818,0x06ccf7f0,0x09735e30,0x07824228,0x08536ea0,0x0d6d11f0,0x094def70,
-0xfd202378,0x0046d298,0x04ed9f38,0x03c409d8,0x02e8eb30,0x019b5794,0x00a350e5,0x01e687ba,0x0163578e,0x00cc49de,0x00ebe344,0x018b909c,0x01a64e60,0x017f7924,0x00e6f0d1,0x009a67a1,0x00847053,0x00e7f062,0x00b689f2,0xff62d2dd,0xfdd0fb30,0xfc50fe8c,0xfa89ebf0,0xf72222d0,0xf510b230,
-0xf404a4a0,0xf4b39510,0xf5252f80,0xf4fa3770,0xf55b89c0,0xf5ae5730,0xf5ce4860,0xf783e1f0,0xf80ef158,0xf984b730,0xfb08d5c8,0xf2847110,0xf8ffbcd8,0xff6130a2,0xffa13e5f,0xff9f3a6a,0x011434ac,0x01b8e134,0x0227fb80,0x02312f4c,0x021b9e8c,0x01674724,0x023a3e74,0x01a4135c,0x0159722e,
-0x005b8e0d,0x001b15c5,0x001190e6,0x0047910e,0xff0454aa,0xfb5c5b20,0xf8942188,0xf4f648a0,0xf2339320,0xee7030a0,0xecc68dc0,0xec42c620,0xeee8a640,0xf1f68e80,0xf75b5430,0xf72f2420,0xf62acc70,0xf0829c60,0xf0b08bf0,0xf3225810,0xf6c694d0,0xf567fce0,0x01164752,0xfb667d70,0xf8553dd0,
-0xfcb15da8,0xfe5c9f8c,0xff10e3e1,0x009a6e02,0xfff875fe,0x02170360,0x02bd58e0,0xffae9944,0x02b49994,0x02d1d384,0x026d1c38,0x011d2156,0xffbb2181,0xff7fef46,0xfe66fe6c,0xfc103f08,0xfb834360,0xfab17cf8,0xf9c0a5e8,0xfbb14b98,0xfc366af8,0xfd785740,0xfda75390,0x038ca59c,0x07aaf5a8,
-0x0b194440,0x0ae76080,0x05403c20,0xfac25d30,0xfb1db780,0xf97b1c20,0xfad9ef88,0xfd2f5e28,0xeb4fc1e0,0x003982fc,0x03b670c0,0x007b043b,0x01275094,0xff8680d4,0x011361d4,0x01b548da,0x01a9a78a,0x0106d7e8,0xff4a7e95,0x003929d6,0x005b7a8d,0xffb66805,0xfed1d97c,0xfd89ea10,0xfc22ff34,
-0xfcf7252c,0xfc0347ac,0xfd35b35c,0xff5e5de2,0xffbdb156,0xff890ea5,0xfe67e2e2,0xfd1e38ac,0xfa01a698,0xfb3c7518,0xf8032008,0xf159b690,0xf118da10,0xf270c9e0,0xf5340c00,0xf338f730,0xf19a80e0,0xefd149a0,0xe8c9ea60,0xf0be5070,0xf4323ad0,0x0078baa2,0x00ff968f,0xff263727,0x00d35e3a,
-0xfff969d3,0xff5d8d4a,0x0042ff96,0x001c36a2,0xff14fbe7,0xff4a4e66,0xffba6dfc,0x0066e991,0x0044bb32,0xffdd7040,0xff676d92,0xfe308b72,0xfc422f00,0xfda01c30,0xfd3ae3f8,0xfcc9d7a8,0xfdd5e988,0xfce3d240,0xfc0b72b4,0xfa64c6a0,0xf70fe2a0,0xf4762320,0xf2ef0d50,0xf459ddb0,0xf5341360,
-0xf5bca950,0xf7775eb0,0xf775c1d0,0xf7abc5f0,0xf43a53f0,0xfb546bf0,0xf94b3cd8,0x0054b142,0xfe610dcc,0xff369af7,0xff2c905a,0xffc24c01,0x0072d58f,0x001353d5,0x00317da0,0x004a829d,0x00a86b8b,0x0044a933,0x0001c384,0xff830e31,0xff26849e,0xfe7f49a8,0xffe7f92b,0x00605018,0xffd8aaf8,
-0x009807f0,0xff3c49cf,0xfc00cb04,0xf7bd6b90,0xf66222b0,0xf838f038,0xfb343548,0xfde81b90,0xfea059de,0xff263c4e,0xff40ea96,0xff3512bb,0xfe3b0994,0xfd471f9c,0xfdb3c988,0xfcbea6a8,0xffc183d9,0x0050cdae,0xfe407a8e,0xfec4f030,0xff38493f,0xff79d040,0xffefc7fc,0x0007b339,0xffc84053,
-0x000c148d,0xfef7cb36,0x004564f7,0x00b39b72,0x017650fa,0x00e3d3b4,0x00ff9a74,0x00fa6bb8,0x005db62f,0xfecb2d58,0xfff1d748,0x002908f7,0xfef978b0,0xff0f16aa,0xff4375f1,0xff0474c1,0xfe13c8ea,0xfd8d916c,0xfce0d448,0xfc79f63c,0xfc502c20,0xfbeeec18,0xfb8edc30,0xfc437e04,0xfccd8edc,
-0xfd3970d8,0xfe2a31e0,0xfd2bab74,0xfcb0532c,0xfe9f7530,0xfdc91908,0xfda16750,0xfe3f492e,0xfe024c9e,0xfe38cfe4,0xfe36c498,0xfda66848,0xfd7ee4e4,0xfd757af4,0xfdb38b88,0xfd94e7c8,0xfe59e6c0,0xff0c107f,0xfe22bc58,0xff0bd0a4,0xff029c80,0x006a4fb9,0x0060d3f0,0xffc66c87,0xff60dc90,
-0xfe9ea7f0,0xfe2ef48a,0xfde91134,0xfdc20720,0xfd836a30,0xfd20d7b0,0xfc9ef1c0,0xfc4ab6a4,0xfbd06b30,0xfc2d3884,0xfc568648,0xfc96aab4,0xfcafe878,0xfd9ff95c,0xfd9ef600,0xfc1cb45c,0xfd2ef948,0x0134483a,0xfc036dcc,0xfd29bac0,0x00488493,0x0056c5af,0x00748bc6,0x00d74bc9,0x00bfbbc3,
-0x00d9013e,0x010600a8,0xfd289fc0,0xfc627018,0x00f8e35c,0xfdc64884,0xfd2a60a8,0xfee8698a,0xfe4799a2,0xfe280d70,0xfe066dd4,0xfdef45cc,0xfdce42a0,0xfd9a1c64,0xfd6d9dac,0xfd470800,0xfd2f0558,0xfd1acf34,0xfcfcfb9c,0xfcc02a10,0xfcf962b8,0xfd1e43b0,0xfd53a13c,0xfd6152f0,0xfd208738,
-0x01ccfab2,0x02938780,0x023ef700,0x04b9f880,0x03c31ae4,0x00d82f00,0x041676f8,0x03a6c6f0,0x01893f08,0x01b44510,0x0197d326,0x0103c85e,0x013aee6e,0x014774c4,0x01271eee,0x03910d9c,0x03cdcdf0,0x00b88fc2,0x03499838,0x03e14b9c,0x01054132,0x0163673c,0x01684480,0x013c99aa,0x01351f76,
-0x0130a60c,0x014f782c,0x012ce984,0x0121f5c4,0x01150f9c,0x00fac2af,0x00f5a43d,0x00ebd4da,0x015d317c,0x01d8ec22,0x02b54a94,0x02b8e780,0x0429e938,0x0494aba0,0x03721264,0x03622f80,0x0314d188,0x02cebd7c,0x02a26fa8,0x01e73886,0x0211ef88,0x02e292d0,0x03130de4,0x030e2388,0x026b1cbc,
-0x02c1334c,0x02257984,0x01cbafb8,0x02790f7c,0x01da5e38,0x02043768,0x01b892c8,0x01522a0e,0x01c78276,0x0150a6cc,0x014072e6,0x0140b4fc,0x01ad2342,0x01703104,0x01242ff6,0x00d55762,0x005616c0,0x0074b666,0x00e25f60,0x01f2258a,0x02f31678,0x0491e4b8,0x04a5cdc8,0x0610f460,0x0612fe40,
-0x05bdbd18,0x04b07318,0x0351db8c,0x0316fc70,0x026a8bc8,0x014a34dc,0x025aa7ec,0x019f7e0c,0x026a2760,0x01ab6042,0x0228ed60,0x02557f94,0x01f2f632,0x0187b340,0x010ca822,0x0167d41e,0x01a6f0f0,0x009fa581,0x00889251,0x008eecb5,0xffd3d37d,0xff7b54fe,0xff4e95fe,0xffc616b2,0xfef233d4,
-0xfead98b0,0xfe1f1ce2,0xfd6c7d68,0xfd9ca970,0xfe533cb8,0x00feae6e,0x03282d04,0x06ca5fc8,0x06889588,0x06ff7670,0x06cf5890,0x055f51a8,0x03e6189c,0x030a6430,0x0377a4d0,0x023348d8,0xffb8bbaa,0x01540b60,0x01a7e796,0x00788ee0,0x013a71c4,0x0146c294,0x00dd150d,0x00209be9,0xff972c89,
-0x00933d3f,0xfffa2c07,0x00c98b3d,0x001bf271,0x0121ec64,0x0220aae8,0x00ff688a,0x00692e08,0x005b794b,0x019aab08,0x00e7ad34,0xff65119c,0xfd74389c,0xfbc380a8,0xfcb6bfa4,0xfe734436,0x029407b0,0x05c75258,0x098a6360,0x087e2740,0xfd629044,0x00394ef1,0x06001af8,0x0604c7c8,0x0175251c,
-0x00f66c1f,0x00ab5edb,0x01306008,0x0214a3e8,0x0277c0f0,0x01723042,0x016f4c38,0x01466e48,0x022494b8,0x00e09589,0x001e077c,0x00af6bba,0xfff4f362,0x0091c388,0xff12f54e,0xfaa06600,0xf8356800,0xf547d430,0xf7e4a180,0xf7079990,0xf2ef2e00,0xf3136ec0,0xf5e58450,0xfce92aa4,0xfdf325ec,
-0xfeb32462,0xffb77b62,0x00abccc8,0x005d379c,0xff5fb6a5,0xfd1b8ce8,0x05758718,0xfc2c1464,0xfa0c8130,0xfe4be7ee,0xff9cca31,0x013557ae,0x02045e68,0x03774124,0x032cb210,0x0305d400,0x01d87e90,0x0264f034,0x01ac653a,0x014cc684,0x003b04f1,0xffbcb03c,0xff5726b5,0xfe469d0c,0xfd2df0a4,
-0xfe1c171c,0xff686063,0x00bf2608,0x02c85558,0xfe5bfa4a,0xfddc95d0,0x003d5e04,0x04cd0b90,0x07016ae8,0x06cfb938,0x0bfe5e30,0x0d761050,0x0be489b0,0x12161be0,0x112a3e20,0x0cd4b720,0x0892d3c0,0x0372daf0,0x041b4d68,0xff21da82,0xffa78c5e,0xfe318bac,0xff4e7c9c,0xff5495d3,0x0095a009,
-0x014a8e5a,0x020adb20,0x002c75b8,0x02115748,0x024db238,0x02bfd51c,0x00fa89a6,0x006df3d0,0xff5d33f7,0xffbafe39,0xff698361,0x007458ba,0x031eb898,0x035848e8,0x06233360,0x09669b10,0x0bcb5cb0,0x0bb9e420,0x0b562070,0x084eab80,0x022f68c8,0x02d69fac,0x05e621b8,0x0bf5be30,0x159143c0,
-0x14e44340,0x0bed50b0,0x0545ae70,0x0bccc540,0xfeb454e4,0xfe230e50,0x01d8f370,0xff2bbe8e,0x01679d28,0x0113a55a,0x0291a4c4,0x016f4ba0,0x00ca8dcf,0xff800159,0x00c055b9,0x0121d318,0x01a44c9e,0x01645cca,0x00c48fee,0x009c6d37,0x00bea5c8,0xfe3d7616,0x008a9521,0x02c95ecc,0x030bdff4,
-0x040a5878,0x03cbc864,0x03dae290,0x04c0bd70,0x02dc4bd4,0x02f68ae8,0x054f0b58,0x04c40b70,0x05fdccb0,0x04addce0,0x0f4262e0,0x155a6040,0x18219cc0,0x117a6440,0x0fcb74d0,0x0845abe0,0xfb248d18,0xff6aa3a9,0x009a4a28,0xffe131fe,0x00dc7b9b,0x01845f44,0x00c54556,0x01086066,0xffc85d4b,
-0x00f1486c,0x0173dcc2,0x01ba64d4,0x00e12cc1,0x004bb257,0x004815bb,0x02337204,0x0102ecf2,0x0380083c,0x038b66c0,0x01a11eaa,0x00354e1a,0xffc6e972,0x011512b4,0x03e423e8,0x0384f464,0x06eb46a8,0x0ddeecd0,0x0aafdaf0,0x0a5c96e0,0x0a4f29d0,0x0f972090,0x118063e0,0x12a1fae0,0x0e843010,
-0x060bf618,0x03f40014,0xfd41a778,0x00877aa8,0xffd87ef1,0x0126388e,0x01844ddc,0x00e6a2c7,0x01a35760,0x013841e0,0x01610a2c,0x009874e0,0x00af93ef,0x010d408a,0x017addc6,0x020a84d4,0x0267dd90,0x018d1cd6,0x0101f1f8,0x01f1d864,0x037a4c54,0x03f24924,0x04251790,0x03e61b8c,0x02b684b8,
-0x006990e9,0xfe8b82a8,0xfc8a9340,0xfbaebe28,0xfca1e838,0xfec85c2c,0x016a5d78,0x046b9338,0x06cb86d0,0x08349820,0x064205e8,0x040dc178,0x03647480,0x03312ab8,0x02de6ea0,0x011727fc,0x019a0644,0x014f5aea,0x01daa53e,0x00e6e9d0,0x01b97390,0x00fce134,0x0226d20c,0x00e759e9,0x01544440,
-0x0121f72c,0x013c0260,0x00974129,0x0192772a,0x0261b05c,0x03741de8,0x030b9c74,0x0227b538,0x0199fe28,0x00b8e35f,0x00140189,0xff6a9879,0x00b01271,0x0180f086,0x01d80fa6,0x02742da4,0x02743788,0x024ea5e0,0x02d49fd8,0x038839c4,0x04dddc68,0x042e0168,0x0388f4bc,0x04314cc0,0xfd7c3f20,
-0x02e2ae1c,0x013a78bc,0x0121f914,0x02a8f9fc,0x02374748,0x03576718,0x0339eb8c,0x021c2b54,0x02d87c38,0x0298dca4,0x023ec498,0x01213fa8,0x011fc95e,0x0274d788,0x01f4629a,0xfffec287,0x018090fa,0x00bcabaa,0x00e36568,0x00b389e0,0x00aa913a,0x009524ec,0x0034532b,0x00878158,0x00b9a3ea,
-0x0127c070,0x019b6c84,0x02493b3c,0x02fa4814,0x032fd594,0x033dcf3c,0x034d3610,0x036d0800,0x033eb578,0x048120e8,0x01e75f62,0xff1b7f73,0xfa8aa2d0,0x038e1b74,0xffb59c13,0xfb736710,0xfb20b7b0,0xfb0ece60,0xfb3742a0,0xfadbfe00,0xfab29860,0xfa9e7610,0xff929d39,0x0292007c,0xfadc70c8,
-0xff29eec1,0x016e0812,0x029b7834,0x0227f474,0x022ff494,0x020bd888,0x01f20eae,0x01d9989a,0x01b84216,0x022a8c98,0x0282e80c,0x02d1d148,0x0310d7c4,0x0340f2b4,0x0384eaf4,0x0368ed18,0x036ba324,0x03638c80,0x038633e8,0x03d0dc38,0xf9b0a070,0xfa30b258,0xf8557588,0xfc4ae48c,0x0080d8c6,
-0x063ca0e0,0xfa61f400,0xff82970c,0x04bd69a0,0x051d7f60,0x05284618,0x04d99f30,0x05820b28,0x05a2fed8,0x05bf38c8,0xff71bafb,0xfb269ba0,0x06242508,0xff9e3f04,0xfc24f7b0,0xf94f4190,0xfa8963d8,0xfa0a38b0,0xfa22ee18,0xf9fc1c38,0xf9f65fb8,0xf9efb500,0xfa0f5c90,0xfa0fc3a8,0xfa06bdc0,
-0xf9dfd648,0xf9a39b18,0xf933f9a0,0xf8f6b4b0,0xf8ebb3b0,0xf93db7a0,0xf9572490,0xf6ee6830,0xf7ede5a0,0x0429c1b8,0xfaecbb78,0xfe15ab06,0xfe0718d0,0xfc53a68c,0xfcf3d7bc,0xfbb75988,0xfbe5b170,0xfd4736b8,0xfc07a248,0xfc789b10,0xfcb9cd04,0xfe61965e,0xfd9e7750,0xfc4b3900,0xfc5affd0,
-0x00b46652,0xf9e2bf50,0xf9e144a8,0xf98c2650,0xf99199b8,0xf9261948,0xf8f1e380,0xf8ccaa40,0xf90e7518,0xf912e770,0xf8b392c8,0xf8408a58,0xf748f8f0,0xf5fa7560,0xf53da350,0xf5297d00,0xf5d03030,0xf612ef70,0xf4a310b0,0xf95f2cb0,0xff28443a,0xfceffe78,0x000d05b0,0xff51720f,0xff478e0b,
-0xfe807fea,0xfff3012d,0xfed6bf3e,0xffbaf73a,0xfde8a74c,0x0079cd49,0xfed4f404,0xffc7893d,0xfe2a80ca,0xfde28754,0xfd8d1c2c,0xfd175ad0,0xfb92ef70,0xf9a934b0,0xf9a0ac70,0xf96e08a8,0xf89c23f0,0xf83e6760,0xf7e33b90,0xf85df8b8,0xf84c1068,0xf7c17030,0xf71caab0,0xf5abfc50,0xf321bf00,
-0xf21c67c0,0xf21d69c0,0xf374c6f0,0xf4cac910,0xed0a8980,0xf8535890,0x00b9f2dc,0xfd83bcbc,0xfdf0be88,0xff3a0f30,0xfed601e0,0xff2ce912,0x0068ab6d,0x010ce592,0xfff5c925,0x01592824,0x00abbc55,0x0061712c,0xff8f75a8,0xfe8f9b52,0xff01bf1e,0xfd7887a0,0xfe39bf36,0xfbfcf970,0xf9db6850,
-0xf9540468,0xf9548f88,0xf8364448,0xf7112100,0xf5ec2db0,0xf6620c80,0xf6a5c540,0xf56c1f90,0xf425d890,0xf08799d0,0xebaa5fc0,0xe9cb7b00,0xea3ad460,0xebb98aa0,0xeda181e0,0xfd975de0,0xfbcd3f90,0xfb38eb10,0xfe15a3da,0x01040e5c,0x019cbc42,0x00a2adf0,0x000dae5d,0x007ca6eb,0x00fa8491,
-0x017d3d3c,0x00ac0042,0x00824b09,0x01a56c52,0xffdaacf2,0xfeb028a0,0xfe985600,0xfc72ffa4,0xfbcc2620,0xf9463798,0xf9b63058,0xf9f6e4d0,0xf7eb4df0,0xf4f6ec50,0xf47241f0,0xf65b8730,0xf56cd590,0xf46979d0,0xf3ecacf0,0xf737c060,0xfba646d0,0x01cc3a70,0x02d64338,0x03630e24,0x01e5a926,
-0x00130192,0x0408eba8,0x03b6d348,0xff7eb3ce,0xff3c237e,0xfdf1aec8,0xfe96df5e,0x00115518,0x01368aaa,0x02804860,0x0298d4d0,0x00e2240c,0x014d4a12,0x0116248c,0x0185aa3e,0xff6fa962,0xfe3c77b4,0xfd22b284,0xfbc20fc8,0xfc606dec,0xfb259478,0xf93f6420,0xfa5b3858,0xfc169bc4,0xfe0bdece,
-0xff1d2f1a,0xff647614,0xffc77d96,0x0058ab91,0x00967884,0xfda42664,0xfde6a5b0,0x0242762c,0x0044b612,0x0109a49a,0x051b9660,0x0232e1fc,0x00b9bddd,0x0019d19f,0x033bd9c4,0x021525d0,0x02027c30,0x00ca443b,0x00921323,0x01314efa,0x00ed3e31,0x0103474a,0xffd1bd53,0x006a244d,0x00a7b839,
-0x02756e10,0xffda1fe7,0xfefe6f96,0xff9ec0da,0xffe82ba8,0x0086d667,0x0085751e,0x01a6c36c,0x01f1e8ee,0xff68e0d7,0xfcfccb24,0xfacf8c98,0xfa227430,0xf80031a8,0xf836d308,0xfa294c50,0xf6ee2210,0xf4963d30,0xf0511700,0xee4e3240,0xf0b4afc0,0xf29527f0,0xfde8dd7c,0xff128d8e,0x05ce39e0,
-0x018b04ba,0xff53eaa4,0x012ace7c,0xff99a4c9,0x0066e88e,0x019bd6e4,0x00a6009a,0x00441650,0xff7d0a59,0xffcc3389,0x0082c98a,0x02fb6d34,0x014cae8e,0x016c7da0,0x02ed185c,0x016f502a,0x01d8cd7a,0x00c3fd89,0xfdfeff1c,0xfca8bb40,0xfcb628d4,0xfcfaa804,0xfdf84620,0x00349315,0xfd5f5ba8,
-0xfd40c1f4,0xff9e210b,0xfeaf027e,0xff5325a3,0x02f010d0,0xfc5127d0,0xf512d280,0xea4650e0,0xf77d6750,0xf0fe9b50,0xffd2a73e,0x083b6630,0x02c0e870,0x0180416e,0x0219b4e4,0x01574e60,0x00aee752,0x00d9776c,0x002dc02d,0x00453e5d,0x0189289a,0x01aed32c,0x016d475a,0x011abd70,0x010060aa,
-0x0148d462,0x004d9c8c,0x0225b894,0x0199a210,0x0186a558,0x02f8280c,0x01e9b7ea,0x00133453,0xfd8fa05c,0xf9762c60,0xfb3d6a18,0xf9b08f80,0xf5219ce0,0xf60d3740,0xf6d2abf0,0xf9640750,0xf7196d00,0xf6168580,0xf25a8600,0xf15adb10,0xf9507970,0xfc3656a8,0x0264f4cc,0xffd5b252,0x010e96f2,
-0x012b79ae,0x00dee4b9,0x00885008,0x0033b37f,0x00855163,0x00680916,0xfff0f4ec,0xffd6f6f6,0x003cc9d2,0x0092d790,0x00f6167d,0x01121388,0x01dd9de2,0x02571f38,0x014947b8,0xff57ad3f,0xff45688d,0xff59b273,0xfe8bc700,0xfdfadf68,0xfbfd1788,0xfc823558,0xfcce2e54,0xfda7048c,0xfdde3544,
-0xfd7d4d7c,0xfc4936ec,0xfd4964a0,0xfd5a2808,0xfc5cfa48,0xfbc25190,0xfc64ce30,0xfdd0ee08,0x0036de45,0xfeb8be32,0x0020552b,0xffa19172,0xffc3d818,0xff9f548c,0x011ea3c0,0x0089242f,0x02504d1c,0x009428c7,0x0176a78e,0x00730320,0x00c4a6e1,0x00250f9d,0x0060fe44,0x0074c09b,0x0143645e,
-0xffe2e10e,0xffadf793,0x00f8d7e7,0x016f656e,0x00c74fc7,0x004d1d46,0x001ae9d9,0xff4d8e1d,0xfe82c344,0xfdc67d78,0xfd6efa50,0xfda1bde8,0xfda4aeec,0xfd7f7350,0xfd60d488,0xfd01c738,0xfd7201d0,0x000f3887,0x003c9002,0x05581518,0x00e1ab13,0x02a487c4,0x0266808c,0x0100be78,0x016257c2,
-0x000b72db,0x006b7dd3,0x01621202,0x007ea4e2,0x006ac94b,0x00b2dbdb,0x012aeb76,0x010d116e,0x004e087d,0x00388427,0x0198a21e,0x0054227c,0x00c3d992,0x00944c3a,0x009cadbd,0x00dd820b,0x01153f20,0x0154648e,0x00dcc67f,0x0092aca3,0x003aa57d,0xffe60dd1,0xff409c8a,0xfea14d92,0xfedb99ea,
-0xff2c708f,0xff735947,0xffde5a78,0xff795782,0xfea11af6,0x01c4ac46,0x040f0db0,0x059740a8,0x007c75ca,0x03a5beec,0x05a9dac8,0x05d29108,0x05b9f2b0,0x053ebdf0,0x05961958,0x05990340,0x057f63f0,0x0379bb28,0x00e530ec,0x0505d298,0x033eda98,0x013e2b04,0xff60ae39,0xffeecbd2,0xffef8487,
-0x000e7f2a,0x001c9ffc,0x00245486,0x0046c9bf,0xfff94a6e,0xffba4c0d,0xff73d746,0xff2c8f34,0xff01162f,0xfeb4ff42,0xfef2d0fc,0xff07b7fd,0xff1e270f,0xff2638ce,0xff1f1040,0x0187f130,0x007c6741,0x0284de20,0xfc7e9628,0xf90f5d20,0xf6dd86d0,0xff088360,0xfa3b8908,0xf7291fc0,0xf6ed5cf0,
-0xf7004090,0xf7c787d0,0xf711bfb0,0xf7062100,0xf7456a70,0xfa6c5438,0xfed3a9ac,0xf6a0f6b0,0xf9e705d8,0xfd38c530,0x0338037c,0x0150eb24,0x01c62a8e,0x01ee89ec,0x01cf2b06,0x01bf5a0c,0x01a4a49c,0x01ae569a,0x01c0aa4a,0x01d11b02,0x020a904c,0x021e5a20,0x01f7e122,0x023d7a50,0x01f285fc,
-0x00f9e6ff,0x00e85586,0xff83ab33,0xfec3b018,0xf70601f0,0xff24ba72,0xfc462fd8,0xfcbb4cf4,0xfef8ea98,0xfef6af18,0x01078042,0x00752b3a,0xfe846858,0x0018067c,0x00503595,0x0004f796,0xfe342036,0xfec98946,0xfead6594,0xff3ce5e6,0xf9ac3318,0x01ae3890,0x0232f18c,0x02015668,0x02c5d8ec,
-0x029301b4,0x027b65ec,0x020455e4,0x01d28762,0x01e1adae,0x024bb610,0x03376258,0x03aae5dc,0x02f8c590,0x03dd6c50,0x030bbd38,0x0064d207,0xffa84568,0xfeef2c36,0xfd01e890,0xf9bf6220,0xfc19377c,0xfb11ff38,0xfcf4958c,0xfdd939b4,0xfee741b0,0xfe6a8752,0x00e48dbc,0xfe6f5b7a,0x01a88de2,
-0xfebf80a6,0x013de3b6,0xfee1d34e,0xffe4c22b,0xff128d2a,0xfea59530,0xfd874458,0x00b7c669,0x031205ec,0x025f898c,0x03f85c0c,0x035e2318,0x03260e30,0x029a9ffc,0x0287214c,0x02de7d5c,0x039d3a84,0x04e8e4c0,0x05a03cf8,0x04198f38,0x058d8380,0x03d99490,0xfef05d66,0xfdff4c2c,0xfd916e34,
-0xf75be410,0xf5a38140,0xfb05a440,0xfaafe048,0xfc1d950c,0xfdc880fc,0xff55e189,0x011b57c4,0x018dc20a,0x01c03c04,0x00e5725e,0x0135480c,0x01d92648,0x00a39df9,0x00ae6679,0xfdf39a54,0xffa61c63,0xfcd6bfd4,0x00981f2f,0x03385604,0x02f316e8,0x05306f20,0x04b3d278,0x04752620,0x032ae22c,
-0x023b4988,0x02677708,0x0460afb0,0x07bed178,0x0969ff40,0x07186e18,0x08cb1ca0,0x05ae50c8,0xfe06e816,0xfbe10630,0x15f02200,0x0cf9f600,0x01806eec,0x00fe10c4,0x007f42bc,0x00283357,0x02453c14,0x01e7e62c,0x0057eb0e,0x0029c24e,0x01435352,0x00d0c218,0x00bd8fd7,0x0122984a,0x006c411a,
-0x00ba454d,0xfee81398,0x00729d15,0xfd859a28,0x00215b6c,0x046f3920,0x02a7b110,0x04b971b8,0x03f67a90,0x03c0bb34,0x020d0a34,0x03c5b218,0x030b3870,0x004a3c38,0xfc9b55ec,0xfa652d28,0xf6e37b40,0xfb8c1240,0xff82d328,0x025a9ca0,0x0dbcdfb0,0x03a3ef9c,0x061b53e8,0x046b74f0,0x04057f90,
-0x057e0c80,0x02482848,0x01e74596,0x00e31d4e,0x02825408,0x025475a4,0x01002df0,0x011b193e,0x0123b48e,0x02978dac,0x01202c9c,0x0064e78c,0xfeab2644,0xff365e54,0xfc9f2e64,0x00bb19a3,0x065d46e0,0x0622c0d8,0x07a362f0,0x07e12138,0x0782c318,0x05959860,0x03633ba0,0x01a02640,0x01d9c532,
-0xfaf6bba0,0xf951f380,0xfa24c138,0xfa0c1d80,0xfbf73f98,0xfd0ace24,0x00f8fcfa,0x00832d3e,0x0408fce0,0x0102bc30,0x028e1d3c,0x01944678,0x01dd69e6,0x01171f14,0x0369d6c8,0x01e7427c,0x01df9ecc,0x0035f48f,0xffd01d93,0x004faa21,0x038f894c,0x00f8565f,0x0168326c,0x00ecb22e,0x020213b8,
-0x01bc253a,0x019fea86,0x013feaf2,0xff29b580,0xfdccbd48,0x0001871f,0x01e0e770,0x02c73e08,0x034d6014,0x0394fb14,0x056cc640,0x05dcd530,0x08827ad0,0x0e0fa8e0,0x09b25af0,0x04aacb68,0x014ae950,0xfe2c7c1a,0xfccd79e0,0xfdccecfc,0x025026b4,0x025862f8,0x00d3bd8c,0x01644da8,0x0174e7d8,
-0x02f38c1c,0x00d1c304,0x001631d0,0x001b257f,0x0036b486,0x00bd2695,0x033c4d34,0x01a8701c,0x00ede9be,0x014d792c,0x0116c922,0x00690690,0x01270e9c,0x02225b18,0x022a18e8,0x01a52b70,0x00fef0e2,0xfea3fe24,0xfa5d8170,0xfa980aa0,0xf94436d0,0xf793fe20,0xf9f66cb8,0xfd1eb97c,0x0108de28,
-0x01694e58,0x04288c40,0x069c1578,0xff5ceb69,0x04d01158,0xfcdf65f4,0xf99960e0,0xfe477006,0xff64f2f4,0xffb5f3fc,0x004f870a,0x005f694d,0x0000d921,0x011be0f6,0x014271fa,0x019312a6,0x0166df14,0x013a12b0,0x00dbf6ee,0x0127e5f0,0x01314450,0x0147e62a,0x007e02de,0x0053c92e,0xff8fc41a,
-0xfe334e12,0xfe4efdac,0xfde402e0,0xfdfd71ec,0xfe64e976,0xfc95e1d8,0xfb933e78,0xfc3d6488,0xfde2034c,0x006d8044,0x035ea6ec,0x05515600,0x042f8800,0x0104b0fc,0x02825288,0xff6ad702,0xfcf0ce00,0xfbdd2400,0xff22be9f,0xff73889a,0x007e8fb3,0x01526bc0,0x00c7a7ee,0x0195e9e2,0x017fe5de,
-0x016413a6,0x01058a58,0x01030618,0x00d9c287,0x01115b6e,0x00956f87,0x0004ac29,0x000b2286,0x0020fe15,0xff5c9fa2,0x004c0c12,0x00af419b,0x0159f346,0x01b16ad2,0x01b88e7a,0x01838262,0x0098ffc5,0x0029b7a9,0xff51fa14,0x016b20b4,0x033b137c,0x056b55b8,0x0225c37c,0x0025c56f,0x004252c3,
-0xfe27f67e,0x01a7022c,0xff6914eb,0xfd73ba68,0xfee8796e,0xfe26337c,0xfec7e3ce,0xff534610,0xffdee767,0xffa16801,0x00b4ce41,0x002af1e0,0x015d6e28,0x006c921b,0x0135477a,0x00536a70,0x00ba470f,0x007c2d87,0x00628010,0xffe10757,0x00d5def7,0x01a3f2cc,0x012a136c,0x01513ef2,0x00d3d940,
-0x00a2bd9d,0x006172c8,0x0139477e,0x0234724c,0x032735d0,0x02f964d4,0x0278d794,0x029f2d5c,0x021faa60,0x01ada096,0x018afc6a,0x00f0e8c6,0x00dfc7d8,0x007206cb,0xfed905de,0x00aa99c8,0xffc832cd,0x000f369e,0x00c8af65,0x0091f960,0x016f9050,0x01018b1c,0x003ed7b4,0x011e7ea6,0x0195aa6c,
-0x01819ba6,0x012f74a2,0x01786ba8,0x0179f8f4,0x01a7d640,0x00a99102,0x01c4466c,0x019d2226,0x01ae31dc,0x01d050a2,0x01d1dda2,0x01dbab7e,0x01c2fc00,0x01f1e018,0x01f0bc94,0x0211edb4,0x0239c264,0x02a723b4,0x02ecab98,0x029c5790,0x02371d7c,0x01bb37de,0x012d1322,0x01123386,0x01447764,
-0xff063718,0xfdf95b34,0xfebfaffc,0xffa44c90,0xfe130df6,0xfe156f6a,0xfe03861e,0xfe163ee2,0xfe895ba2,0xfe35f40a,0xfe277846,0xfe589804,0xfe75883c,0xfff992c5,0xfea4e0f0,0xfeb6a094,0xffd9e962,0x01b0d14c,0x015012f6,0x016ac640,0x0165f754,0x0176268c,0x0189fe74,0x019dc968,0x01a5e3da,
-0x01afe7ac,0x01b53bbe,0x01c469fc,0x01ba784e,0x01cae136,0x018b6a42,0x016d015a,0x015ce930,0x01417f6c,0x010de28c,0xff7e6a78,0xffc262a7,0xff3b203b,0x02ed104c,0x03bca810,0x01767d26,0x02103098,0x03a15244,0x02c99eb0,0x0303f1dc,0x03066ba4,0x024df9f0,0x02afcd58,0x02a9e108,0x02756e58,
-0x03ff1778,0x02491768,0x020d6418,0x03d9498c,0x02d25900,0xfebc4a6a,0xff903faa,0xff7eec03,0xff8d5515,0xff84d47d,0xff7aa6e5,0xff647d16,0xff5998af,0xff446599,0xff36a86e,0xff018f93,0xfeec9002,0xfedceffa,0xff078f3f,0xff40d56a,0xffaa6f8c,0xffc84a59,0x013b1d24,0x0174e37c,0x0100357c,
-0xffef3f7f,0x0131ca30,0x0156e8aa,0x00a4597d,0x00ad5cc6,0x00349a85,0x00f9cf20,0x02405a24,0x0148ae6e,0x00c96525,0x0186a3ac,0x01743724,0x010863fe,0x017dd318,0x0077e4c7,0x02c1916c,0x002792db,0xff0c1833,0xff8487b8,0xff541a50,0xff0fa80b,0xfecae166,0xfeae4696,0xfea83a10,0xfea46308,
-0xfec41f56,0xfe4ff12c,0xfe50ae3c,0xfe9f4390,0xff4b6922,0x002da347,0x016c2a48,0x01dda2b2,0x02b7c2f0,0x01f794ca,0x016fc7a6,0x01839c8e,0x00aea428,0x006af4fb,0x00c32ba9,0x009b88b0,0x01a95066,0x005af19b,0x02371a60,0xffe8f0e9,0x019276d2,0x0192a68a,0x01d7282e,0x00f8143e,0x00f9f657,
-0x00987306,0x01c90a76,0x009ac7ce,0xfeaf8100,0xffb23149,0xffbd2de0,0xffc3bfcf,0xff939b6d,0xff526341,0xff4373d8,0xfee21cb6,0xfe6f7798,0xfd11fc88,0xfc785b50,0xfc6552ec,0xfd79b2cc,0xfef1544c,0x01f76e34,0x02b51984,0x082a40e0,0x047ff1e8,0xffd60533,0xff4bf3ef,0x00444b81,0xff764854,
-0xffc44a9c,0xff2b66c0,0x002cb0e1,0x0127cc82,0x004f296a,0x00c72387,0x00d28f94,0x01201f02,0x0042bced,0xffb2168f,0x005dab8f,0xfee14b02,0x00909827,0x00004f74,0xfe4217ce,0xfeeef3c6,0xfed7efc4,0xfdfb2c7c,0xfd4dbdec,0xfd288fa0,0xfd4c19f4,0xfd2f929c,0xfd029c00,0xfb69f760,0xfb971028,
-0xfcc26254,0xff929fc9,0x02a25cac,0x07711118,0x08912580,0xfbaab618,0x0778cb90,0x0fde66b0,0x0a1b8c70,0x06697c10,0x0454ed18,0x033cee54,0x04009068,0x02daceec,0x01bf1dd0,0x013a5aca,0x008c0725,0x005a2971,0x019f38f2,0x00cb145f,0x00588542,0x0067a3b9,0xffd4a10f,0x01e07620,0x017ce062,
-0xffc3e4d8,0x02a5fe00,0x04af35b0,0x0769fea8,0x09549840,0x0af62120,0x0979d150,0x086500a0,0x079067b0,0x041a5d68,0xffc9c2dd,0xfb129e80,0xf7d15eb0,0xf72a8400,0xf8408c50,0xfd6322f4,0xfe1c0f0e,0x00a79b94,0x045fac00,0x02769ff4,0x0382d5fc,0x04800c08,0x02b0e768,0x0221ba50,0x01f03282,
-0x021fd1b4,0x00abb8c2,0x015b99b4,0x0196a438,0x02142b18,0x00e673bb,0x0129e77e,0x0238cd0c,0x02735628,0x04063538,0x01a38f02,0xfea884e0,0xfd70eb38,0xf9074708,0xfb0840c0,0xfbc39228,0xfb741d60,0xfcf9fe58,0xfdb4ed88,0xfe492338,0x044a7738,0x091d9e40,0x0d6eac70,0x0ed4ea30,0x0b889f60,
-0xffcf528f,0x016b6b66,0xfe752274,0x005e15c2,0x045426a0,0x023287d0,0x03863e40,0x00b29f39,0x02a6c138,0x046bee90,0x02391c08,0x010134b4,0x00769c72,0xff1643f8,0xffdcdc66,0x04a33380,0x0161f272,0x0073864e,0x01969c2c,0x001cbdcb,0x00c15426,0xffce096a,0xfe973b44,0xffd9f8f5,0xff496024,
-0xfc803c38,0xfa3dac58,0xf8eae5c8,0xf9def470,0xfa516d00,0xfa61bc30,0xfb81e238,0xfd992d3c,0x027343a0,0x0361a78c,0x0555a4e0,0x0531fca0,0x035a2a44,0x08b9eb80,0x01f2f30a,0x001b8200,0x00465e88,0x00d89890,0x01168b3c,0x010f8dac,0x0220d2c4,0x0099c623,0x00149ab6,0x0180fd74,0x00d02299,
-0x0126bc42,0x035f0938,0x01610d30,0x01485470,0x0088828d,0x00fecd98,0x02536b9c,0x0076a7f2,0xfeab28a0,0xff14b946,0xffedcc9f,0x0170a488,0x03155e14,0x04b83d38,0x0482adc0,0x0441c6b0,0x03cf3900,0x05368858,0x0425d940,0x0021cbd0,0x02d0b1c8,0x03470e10,0x025fd71c,0x0a00a140,0x0655d998,
-0x06f8dd58,0x048c7e70,0x026cb138,0x01fca17c,0x019f3330,0x014bffce,0x023faab0,0x01c8b914,0x0100d704,0x01474642,0x009e8bde,0x0090459e,0x00d30f32,0x00bfc10c,0x00cfdfa3,0x005b3b54,0x00ed5307,0x01ab9fe8,0x00b0958e,0x00d84c2e,0x00f02d22,0x00b3a215,0x02cdc32c,0x03add7f0,0x04d19698,
-0x03b992bc,0x03ccac40,0x03a38d3c,0x02805eec,0x017134d0,0xff8a0790,0x007bba48,0x0194fca6,0x016a5ffe,0x05ec3088,0x01938bcc,0x05aed070,0x033abb88,0x0351e294,0x02948640,0x022ee2e0,0x01770792,0x01f85eda,0x01859496,0x013f8e8c,0x007c0b86,0x01557858,0x0147feaa,0x010dd2b4,0x00df6299,
-0x0133e988,0x018baa4a,0x0109f452,0x004fa37d,0x00a9337b,0xff23f802,0xff3c9799,0x004d9904,0x0317bae0,0x03f0b500,0x03e67ff4,0x023b8330,0x015cfd12,0x01d3bdfc,0x00511637,0xfeb7fe5a,0xfc188794,0xfde45cc4,0xfee2a362,0xfec3366c,0x003a2847,0xffeb7460,0x002a3465,0x01c3cf7c,0x01813180,
-0x01bafa98,0x01641eb0,0x0101ae62,0x00a378b0,0x010c8f04,0x00896966,0x019e9ed0,0x007da622,0x0169802c,0x0128b762,0x018b01e4,0x013c9c94,0x017009b8,0x012a6656,0x01a24522,0x0036cf8f,0xff8d60cc,0x004114bc,0xffc81c84,0x003f91f5,0x00ab9785,0x016c432e,0x0177ccae,0x01649380,0x014004fc,
-0x00bf0d79,0x00808340,0xffd2d49e,0x00a4db3b,0x011530c2,0x01883bc4,0x01277fce,0x00bcc3ed,0x0176f98a,0x019f25f6,0x0151368e,0x01f24450,0x01e8dc28,0x02031260,0x02152d20,0x01d5e1c2,0x021310a0,0x02b4fef8,0x0229b320,0x01a8c8f6,0x01dc5f24,0x01f23b6e,0x012f5e22,0x015cda34,0x009bd230,
-0x01b72a1c,0xff0fe84d,0xff01af08,0xff3e88ec,0xff50d069,0xff79e071,0xff732045,0xff76e997,0xff392421,0xff17c8fd,0xfefdaaf0,0xfee9ab2a,0xfed7bff2,0xfec4e11e,0xff15d69f,0xff70706f,0xffdded6e,0x0058cf46,0x007aeeae,0x0079e3f2,0x0242bcb0,0x02871ca0,0x00e20387,0x021859b4,0x02a29d50,
-0x01924d2a,0x01a67950,0x01c00816,0x01701aee,0x01d3b314,0x02012224,0x01ea0ac2,0x02b3540c,0x01c8e2a4,0x01c0854e,0x026a3ab8,0x01c6cb46,0xff709ded,0x001200d6,0xfff336a0,0xfff3f978,0xffef3422,0xfff29f32,0xfffde878,0xfff3083d,0xfff057f4,0xffeed0a4,0xfff17d3a,0xfff71321,0xfff0a20d,
-0x001e9781,0x0035b03f,0x0040568f,0x0068bd32,0x00a856f8,0xfee0f76e,0xfe9469e2,0xfedd7380,0xfc9b78c0,0xfd13bca0,0x005c1e67,0xfcfe2f60,0xfcf7b024,0xff3ca961,0xff48e7ed,0xff70336c,0xfff92687,0xffba1c70,0xffca9103,0x003b1e8b,0xfcfdedb8,0xfcf5bca4,0x0056b536,0xfd1542f4,0xfcc2821c,
-0xff8c8f5b,0xff2c1de7,0xff1c4f94,0xff2a103c,0xff0db43c,0xfefa24dc,0xfebaca3c,0xfee63534,0xfef1f86c,0xff1543a0,0xfefda1e8,0xfeea872c,0xfeba07fa,0xfe92831a,0xfe6c7cc2,0xfe500136,0xfe563430,0xfd5f4658,0xfdf50324,0xff876a50,0xfedf70a8,0xfedc7140,0xfef52492,0xfefcdec2,0xfee49574,
-0xff0534d7,0xfe417934,0xfddde144,0xfe2752e2,0xfee90930,0xfedcccfe,0xff04c1c0,0xff220d54,0xfe16fb48,0xfef857aa,0xfe5aab96,0xfeb24a4c,0xff805224,0xfef4a16a,0xff383d0e,0xfee5e036,0xfeab9936,0xfe1c6afa,0xfe95d33a,0xfed96c06,0xff112f24,0xfeb0adb8,0xfe041d26,0xfd17bcf8,0xfc5bd5b4,
-0xfbece768,0xfc1c92b4,0xfc5a37cc,0xfb992d88,0xfdedaed0,0xff1f0781,0xff45c5be,0x003e606e,0xffa85fbb,0xffa06525,0xff8b8fab,0xff4b9f45,0x001853d3,0xfee5e71c,0x001e12b8,0xffabcb61,0x007adacb,0xff99991b,0xff981796,0xff7402b8,0xff6debfd,0xfe8b7fdc,0xff4b5029,0x003cb64d,0xff932a69,
-0xffb2e9ad,0xff0f9beb,0xfea66184,0xfd5bb348,0xfe61cc0c,0xfecf9270,0xff48db98,0xfef4a4e4,0xfe185e9c,0xfc88bc68,0xfb4c0ac0,0xfa6909b8,0xfa8cd3e8,0xfb0ca328,0xf7c0c120,0xff3775a3,0x02fd7d00,0x017c4196,0x022c037c,0x017e1a14,0x01351f34,0x00af23d7,0x0087c73a,0x008f6c55,0x00d8e7b3,
-0x00cc52eb,0x00ff641b,0x025bfe98,0x00ebfcf0,0x01004d72,0xffd19b43,0x00c91905,0xff26cba7,0xfff66e1a,0x007267a6,0xff613739,0xffe82087,0xff1c9565,0xfe4e31e4,0xfc6ea6f8,0xfe2cb054,0xff6203fb,0x0007a33a,0xfea55572,0xfb8e53b0,0xf7df1480,0xf5861570,0xf451e390,0xf5359120,0xf6e033e0,
-0xf72cec30,0xf8732b40,0xfb47b338,0xfea69964,0xffde23cd,0xffa85454,0xfee2c8d0,0x003cefd0,0x01fe5838,0x0206ba68,0x01bd7ab6,0x00ac202d,0x00656661,0x01101084,0x009c9221,0x00b04d9a,0xff34e807,0x00f3574c,0xff911e02,0x0036ced5,0x022554e0,0x00d09092,0x00bf653a,0xfc66c338,0xfbcc68d8,
-0xfe20d42c,0xff82bb1a,0x007eb0ed,0x01379f42,0x015ae3c8,0x0290cb0c,0x06647130,0x02d01ad0,0x00fb78c2,0x010948c8,0xf94b0838,0x01df23e8,0xff4de4fa,0xff506663,0x006ce54e,0xfec427bc,0x01422b68,0x023b69d8,0x01c7d0fa,0x01e98806,0x01d8e358,0x0031a411,0x0105e468,0x01408d32,0x02448894,
-0x00e3f111,0x00c78981,0x0048a60e,0x00e62b90,0x0016cc58,0xfee9cd74,0xfdfed50c,0xfbf7dd70,0xfb7c4b58,0xfa1b0700,0xf89c1508,0xf60b8ef0,0xf550f820,0xf573b530,0xf6a96300,0xfb316e58,0xfcfd02f8,0xfe567670,0xfedeb0fa,0x0056e694,0x01ba6d6e,0x01e03d24,0xfe6e19f4,0xfccc2de8,0xfda14aa4,
-0xfe41949c,0xff287a3f,0xfe937b0a,0x002e6a9f,0x034cb070,0x0102a4de,0x0054c028,0x000825eb,0xff5d27d1,0x006b0412,0x0436bce8,0x00e87386,0xffe22243,0xff592e22,0xff3cdd38,0xfe559aea,0xfe92411e,0xfe2f35cc,0xfc9e4c78,0xfbc2efb0,0xfae0cbd0,0xfb12a0d8,0xfbf063e8,0xfe32ddc8,0x007b0f4e,
-0x01c69636,0x030726c4,0x009688a1,0xf9eb7940,0xf4618680,0xf1d48f20,0xf1904e00,0xfa39c5d8,0xf5d91900,0xff1e0347,0x000f34a9,0xfe3fcd9a,0x005fa54e,0xff5c4ed2,0x007f44fa,0x01548210,0x00479444,0x0030d236,0x01583306,0x0042770b,0x00d61430,0x0259a40c,0x002ccbb9,0xff9edbe6,0xff6d4150,
-0xffa633a4,0xff7bfe8a,0x001e356a,0x0146c1dc,0x00c1d8e7,0xff9b1463,0x0080fcf7,0x00d0c388,0x0056df18,0xfeddea9a,0xfc4de5f8,0xf859eda0,0xf5992fd0,0xf504c600,0xf8988e40,0xf463e6c0,0xf1795550,0xecc0c520,0xf184ce50,0xf3c85e20,0xf810fb40,0x002ae36b,0xffd3878a,0xff44c352,0x000adf63,
-0xffd8c516,0xffc3a1bc,0xfff92b41,0xffe8eb2a,0xffd7a661,0x0037efaf,0x00674f82,0x004b479b,0x0073794e,0x00915ba8,0x00bf9d1f,0xff64da61,0xfeadeda6,0xff15c4b5,0xff20ed30,0xffe86eb9,0x010a337e,0xffff9d07,0xfe5a6dbe,0xfc09aa10,0xfb241560,0xf95ee148,0xf73f0ff0,0xf987fb98,0xfa270450,
-0xfa5695d8,0xf7108210,0xf4f75a80,0xf25d3e90,0xf41b77e0,0xfb55de78,0xfc2dade8,0x00981d9b,0xff0201e2,0x00563e8c,0xffc703b3,0x00228a4f,0x007039fa,0x00b76f2e,0x00fa1d34,0x00919584,0x008c073f,0x0076bcca,0x009db50e,0x0035287a,0xff94941b,0xff1fd3dc,0xffb1ae82,0x002af4cc,0x005527f1,
-0x003861e6,0xff962348,0xfe783cb6,0xfd62a450,0xfc8fdec4,0xfc5e6e2c,0xfe9ba8e6,0x0075751d,0x018bbb5a,0x0025c582,0xfefec2d0,0xfe6bb77c,0xff8d52a6,0xfedb4a18,0xfbe54ae8,0xfb935c30,0xfddfa378,0xfdd36a78,0xfdbda7d4,0xfe1304be,0xfefb0cd4,0xff1b0df7,0xff92e6dd,0xffabeabd,0xffced5b4,
-0xffdf515c,0xff93d3c3,0x001dba96,0x008ddf44,0x008df852,0x00b838c1,0x009c075d,0x008cbf0c,0xffd4c2f3,0xfec97988,0xfe68f8b8,0xfee10218,0xfef5e01a,0xff70e73c,0x000d0789,0x007ea4a0,0x00b87fdf,0xfefd960c,0xfd335884,0xfbb932a8,0xfc6d2934,0xfd55cdf8,0xfdede7d4,0xfdc6403c,0xfdc4a0c8,
-0xfddc6c94,0xfdf35fac,0xffa94942,0xff69c565,0x01175c2e,0x00241dbd,0x0045e6a3,0x006a7804,0xfff89095,0x00605ea2,0xffccb931,0xff882328,0xff57b959,0xff132768,0xff5fa5d7,0xff29525d,0xff3f5fe4,0xff5e7089,0xfecbde06,0xff52b069,0xff129030,0xffb8fe4f,0x0018daef,0xffad7a1a,0xff8cd4e4,
-0xff51a7c5,0xff398776,0xff6cc97c,0xff765d6e,0xffc35a16,0xffaa6c53,0xff6ca58d,0xfed86df2,0xfe80056a,0xfea3092c,0xfec79418,0xfef561a2,0xff261cc7,0xffbfdc0c,0xffc7c379,0xfe8814de,0xff0ea260,0x014ddaca,0xfe781ff4,0xfefce154,0x010e6808,0x0118f2ca,0x011139d4,0x0130c274,0x01194dea,
-0x00fd9530,0x01055fc0,0xfeaff902,0xfe8ea01a,0x00c15383,0xfeb2d3f4,0xfe7ecde4,0x003cf12a,0xffe489b3,0xffd9b533,0xffda0509,0xffcb8bb6,0xffb152e8,0xff80f5fd,0xff707fe0,0xff54fcd9,0xff50d1ed,0xff43eef9,0xff51273e,0xff3f0685,0xff684774,0xff7de3d6,0xff97a758,0xff98af82,0xffe555ce,
-0x028da880,0x02181ff0,0x022c3768,0x02a32198,0x01155f4a,0xfd3bfbcc,0x0378b884,0x01ad9288,0xfe11daa6,0xfddb78f8,0xfdc06540,0xfd96e8d8,0xfd7dff48,0xfd7a39e4,0xfd659e28,0x01a784de,0x0374517c,0xfcd12110,0x014ea600,0x030534e8,0x026d1298,0x02309c38,0x0263c73c,0x0243c110,0x024dd2c4,
-0x024ddb04,0x025c289c,0x0255feb8,0x0268f33c,0x026eee90,0x02bd2f84,0x02e69cec,0x02f2a958,0x034d1114,0x0344da98,0x02bd1318,0x028f0edc,0x015c80be,0x016985ec,0xff95bcc4,0x021d3c84,0x018a9546,0x01215418,0x01feedbe,0x01dfa282,0x024191a0,0x029b6998,0x024f2908,0x02c55cec,0x0254e06c,
-0x029fb9c4,0x01913652,0x0194a64a,0x024dec3c,0x01e7230e,0x006acf38,0x02d2f660,0x027443b4,0x02f4cf28,0x02af54d8,0x02e50fe0,0x02f9849c,0x03243e18,0x031600d4,0x0312c79c,0x03100ad8,0x03db4a98,0x0495c788,0x04cfd800,0x05b77970,0x05145890,0x02efd2b0,0x02447464,0x00353149,0xff4d6a8b,
-0x0013daed,0x0061d979,0x008bc38e,0x012754dc,0x0135efe2,0x018733ec,0x010d37b6,0x011c85ce,0x0168fbba,0x01ab6d14,0x014014ca,0x0232b588,0x01c6d13c,0x01e4b3d6,0x0104b39a,0x018dcc8c,0x02319e14,0x0205f844,0x0258c210,0x028a2e94,0x02221e7c,0x0248839c,0x0236eaac,0x026d6eb0,0x021b72e8,
-0x027b6ca0,0x02e03eec,0x04a46ff8,0x06268078,0x06449e48,0x085d7b80,0x079472d0,0x02f04664,0x01c24084,0xfbe41dc8,0xfa910bb0,0xfd7c53ac,0xffc68ea3,0xffa47608,0x00e1ae20,0x00ca04ae,0x00afd0d7,0x00d9c68a,0x00d19f96,0x00645f61,0x006bf6be,0x013b25d6,0x01c93258,0x014cd70a,0x00ede314,
-0x00d83d11,0x0108020a,0x01ba865e,0x01d15bf0,0x0283e41c,0x03e5d8b4,0x03211c38,0x038202a8,0x03cd4464,0x044eb758,0x041cdbb8,0x03e18f0c,0x03eefbb8,0x070589b8,0x0994bd50,0x0a503ec0,0x0d1e6c40,0x0a818130,0x011fdf7c,0xfe1afb68,0x08ad80a0,0x041b4ae0,0xfe15447c,0xfe15a8fa,0xfe78f6f8,
-0xfedb57b6,0xffd63480,0x00170459,0x01255cb4,0x01cff76e,0x01d1c37e,0x0101ad00,0x00dee3ae,0x01b4737c,0x01354b20,0x013ab57e,0x013c5a5a,0x01bbca76,0x02c8ace8,0x03f7bee8,0x004f5e13,0xfe39fef0,0xfc10ab74,0xff595cd8,0xfe98965e,0xf9b86a18,0xfa76e470,0xfb1c1cd8,0xfc815908,0xfdf65c84,
-0xffd1762b,0x0213e678,0x013e2e36,0x02b47770,0x05be2250,0x068e5078,0x081cf770,0x031c2198,0x02816b84,0x03c772e0,0x03c61c38,0x02f43144,0x02a5dd80,0x01faf7ca,0x0210d418,0x0223d4b8,0x00ef4c91,0x00c361f5,0x00ff72ac,0x02569b24,0x015f0246,0x015f839c,0x0112f9e8,0x01382d22,0x00ca8e7d,
-0x027fa7a0,0x0454ddb8,0x062e54e0,0x086a8c00,0x0571d760,0x044c7fc8,0x055e9800,0x0465d510,0x03ecbc20,0x03887e7c,0x01973316,0x01196c48,0x0231aac8,0x031f79d0,0x03a12a58,0x0533f338,0x07c2c8a0,0x068d4978,0x03bfdc04,0xfece7a70,0xffaa7c8c,0xfe113282,0xfffd0031,0xffca14e6,0x03590650,
-0x01150c62,0x00548d00,0x003aa7ca,0x00037ab7,0x0104f1d8,0x03b4d4d0,0x018e922c,0x017ac2cc,0x01325110,0x009c8a9f,0x00a691c8,0x001f3983,0x00e35193,0x00396004,0xffc2e6e2,0x0498a6d0,0x0831e6b0,0x0a5c8a40,0x0a31f9a0,0x083a2df0,0x053748c0,0x044ab648,0x052bb130,0x0a2d15d0,0x09b5cf40,
-0x085d8ef0,0x06a2d3d8,0x041a0c88,0x079d2870,0xffe3714f,0xffea309e,0x02c2ad74,0xffb5ccf6,0x01d2a39e,0x00d45071,0x0213dd04,0x00b7c687,0x00a502d3,0x016b4590,0x002edb54,0x00aa5990,0x0293fc08,0x0171f314,0x0107ad00,0x00d2a30c,0x0109473e,0x00a2b66f,0x01fce0ca,0x04f35fc0,0x05df6648,
-0x04d93168,0x05948670,0x05362b18,0x044610c0,0x04d24a18,0x0499a410,0x04646e88,0x02ce2c58,0x020108a0,0x016f4d44,0x04c86b48,0x0a66d390,0x13d64b40,0x0b5aef70,0x0c74de90,0x05752660,0xfcc7da98,0xffc7fac4,0x0108ad88,0x001e3f02,0x00ed52fc,0x01beba10,0x00cac664,0x00df64ad,0x008cb022,
-0x010a4dbc,0x014c9930,0x013bfc90,0x00f75c77,0x00bd431a,0x008726a7,0x014f46b8,0x00a5bfce,0x017f3cf8,0x0197e35e,0x013f2c32,0x009f53c1,0x00eff949,0x01d14028,0x03170640,0x035ef310,0x051b2eb0,0x08add770,0x07f52d48,0x08403980,0x083fae90,0x07e1c978,0x07e939f0,0x0a4524e0,0x0acdac00,
-0x056f5438,0x03c2b064,0xfed025e8,0x01285598,0x00b99eba,0x00dd7463,0x00e7a717,0x00bb63b7,0x010157da,0x00d62a37,0x00d74e59,0x00b3cefc,0x00b70e93,0x009ac84c,0x01561eb4,0x01ad0966,0x0186c638,0x00a8cc01,0x00682f4a,0x012d4428,0x01f95e3c,0x01ee1f40,0x01d5de92,0x01b0fec0,0x01c49e2c,
-0x0252e5b8,0x02248d78,0x00efdb11,0xfec022fe,0xff2085f9,0x00cfe650,0x043c5468,0x02c93390,0x02886cb0,0x02843aa8,0x03d97088,0x01b6eee2,0x01082d6e,0x00dae937,0x01eb0db0,0x017c54a2,0x018f9172,0x01833022,0x019f2d62,0x00ed0b9c,0x01143792,0x009b4e4f,0x011971e2,0x008dcd91,0x010e31bc,
-0x0076f8d9,0x00767f10,0x000b78b4,0x00461f54,0x00472b2c,0x00bf5cfc,0x006823b7,0xffc46b4d,0xff7c32c8,0xffb417cd,0xffc6b259,0xffa4d379,0x008f407a,0x01bd5a20,0x02e317ec,0x03c195b0,0x03e35e78,0x04410aa0,0x0313e5c4,0x025796b8,0x018b6ce2,0x014f69da,0x01f74766,0x020f8e10,0xff3e81bb,
-0x012a83ce,0x008d34ce,0x005a5b62,0x00e6fb19,0x00cc9e8a,0x015aae92,0x01ba027e,0x018494ea,0x022048a4,0x01f1370c,0x02266408,0x0171c8f8,0x015a51c8,0x01f54f20,0x0187b4a0,0x00373752,0x017ddec8,0x01101752,0x01431638,0x011e186e,0x010ba0d6,0x00fdd4e1,0x00da2211,0x01425362,0x0176e61e,
-0x01c60624,0x022c300c,0x02d46bc4,0x039f6c80,0x03593ce4,0x0320664c,0x02d26fac,0x0289edc0,0x024aeb58,0x02838c94,0x025e6d8c,0x00f288cb,0xfe5772a4,0x02bd74b8,0x00fcc758,0xfea76a8c,0xfea169ee,0xfe8d02e2,0xfe8ab62e,0xfe66637e,0xfe5b15a0,0xfe4c808e,0x015650fe,0x02cc04e8,0xfe283852,
-0x01185f74,0x0245e268,0x021d6940,0x01d87792,0x01e75f0c,0x01d7ab5a,0x01cde000,0x01c08f38,0x01a21bfe,0x01f911ba,0x02424dc8,0x028829d8,0x02c7fb40,0x02eea3bc,0x03358be8,0x02ed5bf8,0x02cf13c8,0x02aa4204,0x0291466c,0x02ee9348,0xfc94b2d0,0xfd0993a4,0xfbfdfc40,0xfe4f79c0,0x01240d9c,
-0x05067ee8,0xfd2b8044,0x00cc3a82,0x04b4b450,0x04dad0c8,0x04dc3248,0x049c47c0,0x0514b9a8,0x052fc800,0x054358e0,0x00f86711,0xfda9c358,0x0582b0a0,0x01250308,0xfe6a9b30,0xfbfa57f0,0xfd0c778c,0xfca9be24,0xfc9fffe8,0xfca28a88,0xfc9dfd24,0xfc9b960c,0xfc8bb158,0xfc769ac4,0xfc5bc918,
-0xfc2f4e9c,0xfc11f5dc,0xfc12b6dc,0xfbc41660,0xfbdd4030,0xfc7f1afc,0xfc912440,0xfcf0bd6c,0xfc290780,0x0134ec3e,0xfcc230dc,0xfef19d46,0xff8265c3,0xfe57bdf8,0xfef34d34,0xfdb33b6c,0xfdcd5f54,0xfef2d11c,0xfdf634b8,0xfe4c6552,0xfe80b296,0xffe94c39,0xff60d640,0xfe4e404c,0xfe525ea0,
-0x01e3d3a6,0xfc70cb14,0xfc89311c,0xfc531a88,0xfbf9bf40,0xfc029450,0xfbfcbf88,0xfc0bf950,0xfbfd2598,0xfbbcaca0,0xfb4b0ec0,0xfac11e20,0xfa56a5a0,0xfa9f3e48,0xfa00f178,0xfacaeb98,0xfc8eed1c,0xfcc33ae0,0xfc822020,0xfc5c5c98,0xfd38e9f0,0xfd620324,0xff57a306,0xff774ca3,0x0002cd3b,
-0xffee0fa9,0x007f23c3,0xff855b26,0x0059f12a,0xfef5b664,0x00e25ef0,0xff7afd19,0x00bc0903,0xffa122c6,0xff18a59c,0xff22cd71,0xff1212f3,0xfd8018e4,0xfc31a434,0xfc2d8ef8,0xfb68aea8,0xfb6e57a0,0xfb4f5310,0xfb32b0a0,0xfaee7ec8,0xfa41c428,0xf9804b80,0xf859a9b0,0xf7b3ac20,0xf84e0ff8,
-0xf6cb5720,0xf7f0d460,0xfb13d800,0xfbbc0a38,0xfd3f14c0,0xfbd0a800,0xfb332c70,0xfba06580,0xfde3e430,0xfeb5be94,0xffa1c9bf,0x0034e42f,0x004a8c58,0x00b3848e,0x003f4cf9,0x00d5fa09,0x00c66ff7,0x0110cc2e,0x00dc4aef,0xfffa14ad,0xffb8eb70,0xfee42b06,0xffe4297a,0xfd9f8e88,0xfc2b7ed8,
-0xfbc4a368,0xfa7c8868,0xfa642140,0xf9fbcb38,0xfa1e25a8,0xf9f62f90,0xf956b5a0,0xf7d5a0a0,0xf5f34680,0xf4c6e880,0xf62a53b0,0xf4f57490,0xf8212e10,0xfd085538,0xfd3504a4,0xfbb01460,0xfdc3a078,0xffdeb839,0xfe1a8cb4,0xffc0c8d6,0xffbf2dd3,0xffd1f37c,0x007a5c72,0x008889b2,0x0095d0ca,
-0x00f515d5,0x00b49dc3,0x00ca7496,0x01764998,0x005ffe34,0xffcebaca,0x004f7011,0xfe51357e,0xff205e02,0xfd558ed8,0xfb8c0530,0xfccea2a8,0xfb2068f0,0xfc602b08,0xfcd1f20c,0xfd2bcd74,0xf9f7fc98,0xf76a9b60,0xf5779400,0xf6cd2bd0,0xf777f090,0xf834cf58,0xf3d491c0,0xf3dce7b0,0xf6332f70,
-0xfb14f598,0x0558bcd0,0x04d7af80,0x03d9ffb4,0x025fef24,0x0230c714,0x016ffc94,0x01369042,0x01be4c92,0x0107342a,0x0130220c,0x00922f22,0x00520e87,0x009fa3c6,0x01709b20,0x00246d20,0xffbb8c0d,0xff7452f2,0xfef09a5e,0x00bbaf43,0xfdf2e110,0xf9f2b1b8,0xfa8a1500,0xf9cb7e40,0xfc7711c8,
-0xfda1beb4,0xfe596460,0xffdfaf1a,0x012fb6b4,0x019c5602,0x00658c9b,0xff44f5ce,0x00d493e1,0xfbc849b0,0xfc445f50,0x01151366,0x03878534,0xff5641cb,0x000a25b4,0x043677a0,0x019cde56,0x0183af18,0x01868dc2,0x01f6a972,0x02edc594,0x00d57a6a,0xffd22c43,0x00599456,0xffebce32,0x00d2d152,
-0x02c61de8,0x0094c33f,0xff9091b9,0x00b883b7,0xffcb171c,0xff6e36b2,0xfec111da,0xfee5c60c,0xff4c483b,0xfe13148a,0xfc23c5e4,0xf94b96c8,0xf629cf30,0xf559a710,0xf61b9720,0xf81541f0,0xfa3c2b58,0xf9423460,0xf6edc5e0,0xf4a596f0,0xf7e6fde0,0xfaae0218,0x00011ee6,0xfe305a54,0x01f36baa,
-0x018c884e,0xff610588,0x01426a5c,0x007d085a,0x00c0a8f0,0x00e790f3,0x0085bffe,0x0040508e,0x00e84fa5,0xffaaa289,0x002fc90e,0x01ca2136,0x015df966,0x01e157bc,0x0182a4c8,0x00dc58e5,0x01f7bb74,0x00516c1a,0xfde29980,0xfd4beca0,0xfd2f8ea8,0xfcd03fc0,0xfd7970d0,0xff60cc95,0xff9aad78,
-0x007250e6,0x013f9322,0x01e316c2,0x00b86386,0xffa65389,0xfa38fe68,0xf6bc1c00,0xf47b25a0,0xfc0cf010,0xf6e44d30,0xff0a8dfe,0x050135a8,0x01612b46,0x008edf3a,0x015dd5f6,0x0109af7e,0x012a6808,0x01128d8c,0x0025e3f0,0x0026c3d3,0x008808f6,0x00d11f64,0x00a226be,0x00afa194,0x007cdb86,
-0xffd2f12b,0xff94e0c3,0x00f20b79,0xff8b0b38,0x00304dbd,0x0112b662,0xff0766c7,0xffd07995,0xff22a3a3,0xfd21be88,0xfdee9c4c,0xfde858d0,0xfc153830,0xfbc1c2d0,0xfab36780,0xfa1fd828,0xf80688c8,0xf832b270,0xf97674f0,0xf7dce800,0xfddfb71c,0xff783597,0x03ae1980,0x017e0892,0x017fb81a,
-0x00b7834a,0x0014f0e3,0x00dbd9c5,0xff886dfb,0xffb36143,0xffefe995,0x0032c506,0xfffe6f0e,0x0018d0d0,0x003e61df,0x004c14fe,0x00126420,0x0082bf10,0x00dc7b89,0x00791e66,0xfefcd63a,0xfea010e6,0xfe2f8354,0xfd79900c,0xfdf16178,0xff3693d5,0xff66cc90,0xffae605f,0x0022aa20,0xff5c553a,
-0xfdecb7e0,0xfbdfd0c0,0xfb70c150,0xfba59328,0xfc214ae0,0xfe503ebc,0xfe2117e8,0xffe367b9,0x00ada3f4,0x00460214,0x018ef7c0,0x01507aba,0x01643eee,0x0126575c,0x01940c0e,0x0077991e,0x00f28585,0xff9cdd11,0x010927f4,0x0035b5f9,0x00a12f35,0xffeb318e,0x002f7aaa,0xfff9701c,0xffdba96e,
-0xff29db4b,0xfeefd9f4,0xff663d42,0xff6ade7b,0xff43726d,0xff1f703c,0xff2a385f,0xfedf73ea,0xfeb90326,0xfe8b265a,0xfdf8fc8c,0xfdb9c790,0xfd7a480c,0xfd542180,0xfd255ec0,0xfc91e83c,0xfda85730,0xfe6d74da,0xfe2d16cc,0x01f2ec5c,0xfeb6177c,0xffcbcd4d,0xffc1198c,0xfeb99296,0xfee2cc52,
-0xfe22d872,0xfe5917b6,0xff5b6b89,0xfe80c3fa,0xfe6f470e,0xfea56b60,0xffa93d55,0xff97cf24,0xff044d9b,0xff4c68d0,0x0150f052,0xff425dab,0xff8a2f34,0xff771848,0xff7f58f9,0xff8cf81f,0xff85f682,0xff767cb6,0xff277e51,0xfed59402,0xfe8cee1e,0xfe685fa6,0xfe314b5a,0xfdf0a8ac,0xfe148aec,
-0xfe44d2a6,0xfe71407c,0xfe7fd682,0xfeb77888,0xfdfd3e28,0x0013038f,0x01efa076,0x041dc500,0xfef7909e,0x0199ace4,0x03d38fa4,0x0412b7e8,0x042d7bd0,0x03fdbdb8,0x04739e60,0x04aa7f28,0x04b46580,0x019cd3f6,0xff3f93e3,0x048e46d8,0x01c2f598,0xfff69644,0xfe641a1c,0xfef6bd74,0xfee06028,
-0xfef2ebbc,0xfefbd1d8,0xff101042,0xff36fd15,0xff0fe321,0xfef9b5f4,0xfeddd2fe,0xfeb92b32,0xfe982162,0xfe6aff10,0xfe817912,0xfe8303c2,0xfe89abf0,0xfe82111e,0xfe89089c,0x01d6405a,0x014ceba2,0x02dfba3c,0xfedf4b6e,0xfc240980,0xfa751250,0x0077fb7e,0xfce6c18c,0xfabd9a10,0xfa825430,
-0xfa8d0e68,0xfb160718,0xfa95ffd0,0xfa916c30,0xfab09590,0xfce82ff8,0x0012e9f7,0xfa4ff338,0xfc94e0b4,0xfef8d510,0x02e979ac,0x01aaaa04,0x01fd6e5c,0x020495cc,0x01efb156,0x01e6e324,0x01e6cad8,0x01dc1f04,0x01d72e36,0x01c0e4a8,0x01f0179c,0x01f21bfa,0x01b89ede,0x01d355a6,0x01af75f8,
-0x01471048,0x017f46de,0x019d98dc,0x01dca3c2,0xfb6e8e48,0x01185316,0xff2a1d71,0xff5ba52e,0x00b95dfa,0x00526e03,0x015b9d76,0x00deb611,0xffa4e195,0x00c4c3fe,0x00e72438,0x008c1915,0xff9a0544,0x000a506f,0xffe86576,0x0052c0c1,0xfc681f7c,0x01fa04f2,0x02847fe4,0x02619fac,0x02b68434,
-0x028e7048,0x027ad3f0,0x025017a0,0x01fe6cae,0x01ef3fb2,0x01e05084,0x026cc284,0x02306dfc,0x01234224,0x013dbbb8,0x011dd6cc,0x00acf813,0x0133b67c,0x01c62eb4,0x0164ebb6,0xfe5a34f4,0xffac6d7c,0xfec1f40c,0xff97b9b8,0xfff9e42e,0x00732b49,0xff75d266,0x00dcf67d,0xff8f0f08,0x01b6ffd2,
-0xffbd0aa6,0x00fe0857,0x0000ad9d,0x00e547cf,0x0028b7d7,0x000382a6,0xff1b3370,0x01515700,0x03565804,0x02bd3698,0x03865248,0x02e63740,0x02ca3f98,0x02d8c178,0x02828c84,0x02845c54,0x02176018,0x03033c28,0x02b04de4,0x00e85cd1,0x015dd870,0x00c14625,0xfff7c37e,0x008c4f4d,0x035c759c,
-0x0131f6f4,0xfe0189b4,0x002f8054,0x00ae9245,0x006a6c06,0x0136ad86,0x0107f4f2,0x00e6d7ad,0x00d1c797,0x019075ca,0x00b4d938,0x014b740a,0x01dda0d8,0x01ba1e98,0x01f32fba,0xff6af708,0x00fc2d98,0xfee964b6,0x01796e02,0x03dcefd8,0x0388e5bc,0x04c871a0,0x042e5528,0x0410aef8,0x03d802a0,
-0x02c9b64c,0x0299b2b4,0x029338ec,0x040fa370,0x02b3e088,0xfef6a174,0xfefbd4a4,0xfef7331c,0xff5a1f57,0x0128baa0,0x058ebb50,0x01bed1a8,0xfe958062,0xff190b3c,0xfe108808,0xfe57253c,0xffd09b17,0x00784435,0x012aa4d2,0x0134527e,0x00bb70cd,0x0134b66c,0x0158791e,0x01089b40,0x00dae54e,
-0x0128ea5c,0xffe60516,0x00f9f5ed,0xfedc3a5c,0x006f0397,0x041d1f78,0x026039f4,0x021eb384,0x0066eb6c,0xff4ed075,0xfeca3268,0xffb02097,0x00142f70,0xff7d2284,0xffe251f7,0x00964f42,0x02627ed8,0x01c65294,0x00676ede,0xffae8c34,0x01730386,0x0376ee30,0x054e2910,0x05b6e218,0x04ebe088,
-0x049d0308,0x020341b4,0x018565e0,0x027014d0,0x01337a76,0x00d4000a,0x00618dd7,0x00784297,0x00d2d8d1,0x0183dfde,0x00eb5c5e,0x008624d3,0xff133a35,0xfee0dc5a,0xfcf003c0,0xfef1d460,0x029e7d80,0x030b1f9c,0x047ecf38,0x047b1188,0x03605ec0,0x007de34e,0xfe111060,0xfc09e200,0xface9b60,
-0xfc9072c0,0xfbde67c0,0xfab59a80,0xf9830ee0,0xfe56bd06,0x068df800,0x037207d8,0xfef844bc,0xfe297ab8,0xfd61d264,0xfe5ca76a,0xff5b53d8,0x01b4ddf2,0x02454ba0,0x0324d088,0x00e57a8c,0x004fa90e,0x00d34698,0x0066f6ac,0x01199830,0x01cc98b2,0x01967f14,0x019780a0,0xff9f3eaa,0x0142bf12,
-0x00bfc622,0x00a86df9,0xff47d63c,0xfd478df4,0xfd8979c4,0xfdffcd58,0xff2de583,0x006138ae,0x00b27362,0x01bf1248,0x02ec78b8,0x06ece138,0x0aabc6c0,0x0be38800,0x0a298cb0,0x06163af8,0x04a0bef0,0x00bce799,0xff4ef06b,0xfde3fb38,0xff339b15,0x008712fa,0x009b5e97,0x014f9fa8,0x01052822,
-0x00ff16ac,0x00b5a158,0x006fd45a,0x00dae084,0x006f8be3,0x00a019a5,0x0112c5de,0x0140e010,0x0152b64a,0x00c554a1,0x00680cfb,0xff5e4831,0x0019a6c2,0x0115be2e,0x0166e584,0x01c4f8e6,0x01cc7644,0x0107f8a6,0xffdd38b8,0x012aec56,0x025e1610,0x02c356cc,0x01ed1db0,0x0180a8ee,0x022fccb4,
-0x0284ba0c,0x03913d34,0x04916028,0x003a6888,0x03068bc4,0xfe3a9f90,0xfba74340,0xfe980448,0xff4dcd07,0xff88a8b5,0x006efe81,0x00f362b4,0x00549821,0x00a3a199,0x005ad65e,0x00a86e30,0x00c90309,0x00e9f078,0x0046d4ce,0xfffcd4df,0xffd73d48,0xff9fd205,0xfef244ec,0xff37ea25,0xffc39670,
-0xff4af54f,0xff8ca218,0xffcda8eb,0x008cce43,0x01c63548,0x0238591c,0x01ea9186,0x0224157c,0x01740f04,0x01cd7d76,0x03a4309c,0x03591b90,0x02e839e0,0x02ee9d44,0x020d9320,0x00a1b755,0xfe9453f4,0xfda77704,0xff192121,0xff115b7b,0xffc1a797,0x00534e6f,0x0044db44,0x009aa965,0x00a0ad7e,
-0x010b8d7c,0x008d5884,0x00ba04c5,0x0142f9ca,0x00d13c1f,0x002bd854,0x00082798,0xffce6cbf,0xffbd2c98,0xff5a28b3,0x01269a50,0x01db641c,0x020544f8,0x02172b20,0x02106f00,0x01ba1b46,0x01744434,0x017bccaa,0x0163af38,0x02ee1e78,0x03da7b58,0x05216ed0,0x030b0698,0x01fc473e,0x01d40bba,
-0x008f7975,0x0271d3d0,0x01a5fba0,0x002b1734,0x009b6452,0xffcf1596,0x006288c4,0x008bc94a,0x011a51b2,0x0045eb54,0x00dbed50,0xff8af0c8,0x00e13c11,0xff85cfc0,0xfff78a36,0xffc5cf7c,0x00773c86,0x0069a0bc,0x0077bba4,0x000d31a7,0x01579c3c,0x01d9ab08,0x00d2b4bb,0x009efd55,0x0067fc14,
-0x00768b3a,0x0079585c,0x009fa03d,0x00b4c142,0x00aa3d74,0x011facaa,0x0184b8f2,0x0273bf00,0x02225394,0x01dd2514,0x0187afa8,0x01a43614,0x00f4d0c0,0x006710ba,0xfd5c5d7c,0x000e7f2c,0xfed88f1e,0xfed2aedc,0xff767bcf,0xff3cbe48,0x00070db1,0xffef1c93,0xff15e24d,0xffffbf50,0x007d4ff1,
-0x00426933,0xff8667cc,0xffd10914,0x0018081e,0x00495aa1,0xfeaddf78,0x00b649ff,0x007c56d2,0x0070fb82,0x007ae8b4,0x005b8719,0x00349527,0xfff71349,0x00b2ee44,0x01684f68,0x0220764c,0x02b079c4,0x03230718,0x038dd1f8,0x02fa25c0,0x0283c534,0x01fd7588,0x0161547a,0x0170ae68,0x01e63e74,
-0xff406828,0xfdb8a29c,0xfd35e728,0x001b1202,0xfdf05b0c,0xfd0f4870,0xfce8c8fc,0xfcd74514,0xfd31f808,0xfcbf0068,0xfc8c8964,0xfca97dd8,0xfe0ecb78,0x00295996,0xfcfb219c,0xfe1e3cbc,0xffac55d5,0x02169dac,0x01814628,0x0198880e,0x0188fa1a,0x0184e82e,0x018cf552,0x017a86ea,0x01ad4430,
-0x01baa75c,0x01cb7a02,0x01e46b06,0x0203c17c,0x024bc6d4,0x020a35f4,0x01eb5c6c,0x01d3d726,0x01b1c3a8,0x01d2946c,0xfe98ca1e,0xff0d5f11,0xfde9e65c,0x01fd3890,0x039aaf40,0x0302f980,0x00e917e2,0x034b9ad8,0x039147ac,0x03a00e54,0x038fed1c,0x02f85be4,0x036b69c8,0x0369a4e8,0x03270560,
-0x035ce158,0x013c774c,0x032ad9b0,0x03586d98,0x01e3a16e,0xfdc0efa4,0xfeb9434e,0xfe85c5ee,0xfe7ebb72,0xfe7bdcc6,0xfe7c2c1e,0xfe97d322,0xfe7c9a70,0xfe6bfe96,0xfe35acea,0xfe6c9a02,0xfe61d2be,0xfe091922,0xfe72801c,0xfeb4dc7c,0xff02905d,0xff00eb10,0xff7e23f3,0xffb0c2f9,0x032da900,
-0xffcfa11a,0x01b1d5ca,0x01786688,0x007da6e0,0x00a48533,0xff77f095,0x000e176c,0x0167ea2e,0x00738302,0x001e4a76,0x0077d048,0x0123d990,0x00a207ac,0x00e4402d,0xfffc5d98,0x02da8210,0xff17cdba,0xfe0cf2e2,0xfe52e162,0xfdf29aac,0xfdd938d0,0xfdd1073c,0xfe24e056,0xfddb35b0,0xfdb605b8,
-0xfd438e48,0xfde4ccf0,0xfe072fa4,0xfd6614a0,0xfe5781ba,0xfeb2a3e6,0xff5d784f,0xffd18c74,0x00aa9e59,0x0066b858,0x0221a960,0x014509aa,0x01eadfbc,0x01600caa,0x0140ee1e,0x0119e7c8,0x01498f0e,0xffccb1e3,0x01e2f8a6,0xffa19a07,0x017f7016,0x00517d56,0x01aadf6c,0x00ceeb6b,0x00b55af8,
-0x0073b448,0x0164122e,0xffce20d4,0xfd8134e0,0xfe33b3a8,0xfdc9c804,0xfdd4d810,0xfdc51c48,0xfe650c22,0xfdc8f1e8,0xfd813c60,0xfc81b6d0,0xfdc78360,0xfd9f7634,0xfbbc5588,0xfdef0f44,0xfef61624,0x01101266,0x0197fd0a,0x03558324,0x02b55230,0x03440118,0x0211b988,0x02a6d8f8,0x02022180,
-0x01aa3736,0x01237d8c,0x003ce7c9,0x0060cc2f,0x004147f4,0x00b0bd81,0x00d72746,0x009b9e6f,0x00daf814,0x003e4915,0x010f03ca,0xff4a2923,0x0127ed6e,0xffcb9604,0xfd3f52bc,0xfdb5063c,0xfcf93714,0xfc95a874,0xfc9e7118,0xfdce2700,0xfcf09f78,0xfc52efa4,0xfaff7b68,0xfd153770,0xfd847c64,
-0xfb72a388,0xfe743fea,0xffa6f8a8,0x0231c498,0x046fb6f8,0xf937d7f8,0x00204ec6,0x037a07b0,0x0182dc96,0x017b16e2,0x017672ee,0x00927f9a,0x005f4222,0x01c07a06,0x01dcc252,0x00ca9beb,0x012c4218,0x0133651c,0x011e954e,0x01172adc,0x00c4bfa9,0x00ff3643,0xff6bae0e,0x01122f7a,0x008ef865,
-0xfe136e2e,0xffbc5349,0xffc0ec62,0x01fbdf36,0x01fb24aa,0x0115a180,0xff1a2c94,0xfe65ebea,0xfd91af6c,0xfe04716a,0xfccfc054,0xfb12e7f8,0xfc236cb0,0xfbd914b8,0xfc9a0a9c,0xfba16378,0xffca68ff,0x00e86318,0x033e5b88,0x02d9d948,0x02230c40,0x01fac83a,0x0132e914,0x02ed3f8c,0x010d2702,
-0x00ab66e6,0x002e016f,0x005d3576,0x00d4188f,0x00d42624,0x00a57e13,0x00857544,0x00433e19,0xfffcf30a,0x00b94f4d,0xff6fa0e7,0xfeaa5488,0xfec075e0,0xfbf63ee8,0xfcb033ec,0xfdaeb6c4,0xffbab150,0xff8e8712,0xfef934c4,0xfda9496c,0xfef122dc,0xff48ddfe,0xfdc0a85c,0xff911e82,0x00eeabde,
-0x03dd1c9c,0x022e73d4,0x00de3fc0,0x00357c21,0xfee0258a,0xfee1ce14,0xffc8d5d4,0x0187f96a,0x0287906c,0x0266af0c,0x008f094f,0xff74c20d,0x007c1eb9,0xffd4bd46,0x00493803,0x006fd41b,0x01bdd8c4,0x01715df2,0x00271626,0xff5affe3,0xfff7c4f5,0xfec8c124,0xfcf58950,0xfdff880c,0xfe08a426,
-0xfc469714,0xfb4eaaf0,0xfc21cc3c,0xfd3ce1d4,0xfe7c6f12,0xff5702b0,0xff066d96,0xff8e6d0e,0x017a0414,0x036adcb4,0x02f292a4,0x047a3500,0x019d7e3a,0x03a17900,0x02190954,0x00b43bd1,0x0176fbe2,0x00c693b7,0x00da061d,0x003c76ea,0x0065dd06,0x011199f6,0x0121e5aa,0x015663f6,0x00e61e79,
-0x00f53c4c,0x008d95cf,0x0136f1d0,0x01643acc,0xff9e8bcd,0xff94b1fb,0x00536708,0xff5298d0,0xfea79220,0xff617a16,0xfff7376f,0x0127dab6,0x02c179f0,0x055bef48,0x061c01a0,0x07a888f0,0x099e4700,0x0a28f990,0x07d6d760,0x02e0a1c4,0x0227aff4,0x01bc09a0,0x037a4e08,0x03eb34a0,0x03d8a6d8,
-0x04bec3f0,0x034cd940,0x018b58b6,0x017f07c6,0x01aa2648,0x01adf14a,0x01e84cb2,0x01427c30,0x005c1866,0x00bf9614,0x004fcd5b,0x005153d7,0x00c5c267,0x003e1924,0xfff5f1d9,0xffbe8d77,0xfff156b2,0x005f6202,0xffa56604,0xfff22906,0x0076a3a8,0x013bff86,0x0227791c,0x03111870,0x0502e060,
-0x04fcc920,0x0528f1c8,0x04cf9e40,0x03d1b77c,0x02bc9dc8,0x016fd60a,0xff8bab72,0xff92d666,0x018aacde,0x03e68ddc,0x009f339c,0x02a82d60,0x01bd3380,0x0175bf5c,0x00c942b4,0x00bbebde,0x0033ea62,0x005cd2c5,0x0029143a,0x001ada65,0xffd636c8,0x009a59d9,0x00e4505d,0x0125ac9c,0x00950e96,
-0x00c75817,0x011e8b1c,0x00f6102e,0x006bd6f5,0x0061b2c6,0xffc57eff,0xfff95717,0x00a84217,0x0223205c,0x02913e10,0x01c44dfa,0x00fa24c7,0x0086f8be,0x00712dc3,0x01434b5a,0x00cef351,0xff057a80,0xfe88f3b2,0xfedfff30,0xffd9c9cd,0x005f69b7,0xff93a9ee,0x006faf8b,0x01f5dc4a,0x015090dc,
-0x01a2aa0e,0x01486e04,0x00f2d2f3,0x00b7205a,0x0125d8f8,0x00e09dd2,0x01b86262,0x00acf54d,0x00a5950d,0x002e5cd3,0x007e7eec,0x00940e06,0x00db6bc2,0x011fa1d4,0x01d3c846,0x015f9770,0x005e3453,0x005b5cee,0xffa6d90c,0xffcb7b58,0xffdf548d,0x001df61a,0x00a4adda,0x011fd458,0x019428f2,
-0x015aa95a,0x0137884c,0x00ff79b0,0x00f93b91,0x00a93f2d,0x001eba39,0x003920fc,0x0079d67b,0x00b13eb9,0x0184136a,0x00350d65,0x00c9ebfc,0x0088a2f8,0x003f4027,0x00209e6a,0x00172236,0x00884ff5,0x0147e0d8,0x01276c96,0x00f9b8d4,0x01761144,0x0185b03c,0x01412498,0x013d91ca,0x00c2ba4a,
-0x011cb544,0x00b84347,0x00cc80f7,0x0102d530,0x01197e9c,0x014bebc8,0x01604ad0,0x0171f160,0x014d5526,0x012053ca,0x0109bf14,0x00e01543,0x00c0cfd1,0x009ec5fd,0x00809f13,0x0090ccd5,0x008fdce8,0x00b7f942,0x00469bdf,0xfff2e9b6,0x0245fcdc,0x02e8b6f8,0x01bd3c5e,0x01cdc002,0x02cc7d38,
-0x0202c638,0x0220f0c8,0x022bba08,0x01e7c0f2,0x02329f50,0x0259cc28,0x02560db4,0x0314c7ec,0x02012a14,0x0214ff04,0x02ff6ae8,0x0249e150,0x00295821,0x007b9aa4,0x007ca149,0x008300d9,0x007e9afd,0x007d24b4,0x00873d40,0x00740dee,0x00673574,0x0052d441,0x004fb70f,0x00492b2d,0x003f3fe6,
-0x004af0e3,0x0049cbfc,0x0043a119,0x003ebdb9,0x00443d21,0xfe8d08de,0xfe78b714,0xfedf1066,0xfc5308c8,0xfc706338,0xff4cd50d,0xfcdb2524,0xfc86e9b8,0xfe7402aa,0xfe56cec0,0xfe69a112,0xfef46d48,0xfeba5b26,0xfec1ba0e,0xff01463b,0xfc7a43dc,0xfcc784b0,0xff3dccbc,0xfc820d58,0xfc6eb728,
-0xff48dcb9,0xfed0e19e,0xfecc37c6,0xfed39eca,0xfed0b5fa,0xfeca6a28,0xfeb7d602,0xfea6a75e,0xfe9ef184,0xfeaa437e,0xfea11ff2,0xfe821a78,0xfe2ec180,0xfe143680,0xfdf4f4b8,0xfde50504,0xfe2ed234,0xfddc8ff0,0xfdcb2690,0xfe22f5be,0xfe6d5e0c,0xfe4407ce,0xfe7226c8,0xfea6f4fc,0xfec0605c,
-0xfebe95ea,0xfe1723a6,0xfd91368c,0xfe0db74c,0xfeae22d8,0xfe488e4c,0xfe99b1d0,0xfeb76af4,0xfdd2e628,0xfe7e022a,0xfd8086ec,0xfe64558c,0xff141348,0xfe888452,0xfec0d88a,0xfeb7724a,0xfeb5c550,0xfe8d9a50,0xfe75bb98,0xfe63658e,0xfe52fb1a,0xfe17e0d2,0xfd83e8b8,0xfcaebeb8,0xfc6e003c,
-0xfc4f4554,0xfc6c822c,0xfcf49ae0,0xfd269034,0xfdf5c8e8,0xfde650dc,0xfe431a02,0xff792435,0xff658875,0xff5ac88e,0xff828c62,0xfee72e40,0xffbb979b,0xfeaf4018,0x001bb9f1,0xff6abc36,0xff74db75,0xff144eae,0xff4d1016,0xff1a3f0a,0xfed04882,0xfdbc1398,0xfed6222c,0xffcf180c,0xff2df3ff,
-0xff468d13,0xff36990b,0xff116050,0xfe81adc6,0xfe52a448,0xfe16d8f6,0xfe34480a,0xfde5e268,0xfd1a4eec,0xfbd24b20,0xfae65ad0,0xfa42f2d0,0xfa222910,0xfbd73608,0xfb758618,0xfeb0c26e,0x00709022,0x00630137,0x014f78ee,0x01392456,0x0140882c,0x01311d0e,0x00827cf7,0x003a1030,0x00f54fe6,
-0x00e33a6a,0x011fafee,0x01905c4a,0x0138efe6,0x0128f970,0xffbc5775,0x006e1382,0xfea8e686,0xffbb6620,0x002b1cd6,0xfed6a110,0xff158682,0xff204b96,0xfefb74d8,0xfe2428ec,0xfe1535f4,0xfdebb060,0xfde2e43c,0xfcc5d8f8,0xfad4b6f8,0xf8f411b8,0xf7e9c200,0xf7414410,0xf78a8880,0xf9a07ad0,
-0xf9de9090,0xf92f31e0,0xf7ad5260,0xfa4dec70,0xfdadc6c8,0xfece6e30,0xfeedcd9a,0xfe86b796,0x008420ab,0x01429aa2,0x00c90070,0x0141febc,0x012a6580,0x0013885b,0x00990e11,0x00e8469f,0xffa8380c,0x0017b07c,0xfe88316e,0xff1eda70,0x01aa3a92,0x018743ec,0x02d87a08,0xff881c94,0xff18e78b,
-0x013218cc,0x0168797e,0x012f56ea,0x0072fae5,0xffd4db30,0xff3139b4,0xfd48549c,0xfc9a2434,0xfcbf75f0,0xfe677656,0xfb53b068,0x03e4e770,0x03522154,0x004b4da6,0x00d1960a,0xffc0fc29,0xffbf1f48,0x00b472f0,0x01ff4ffa,0x00da202a,0x004bff6c,0x0014d578,0xfffc7b95,0x00795a6e,0x01338222,
-0x0150ebaa,0x00eecd0f,0xff86aa21,0xff994c04,0xfe883264,0xfe2efe54,0xfe1251de,0xfc27e274,0xfb209238,0xfb49f778,0xfb7510d0,0xfbe31d90,0xfc33fd34,0xfdfbb78c,0x0017ba3d,0xff097375,0xfc26cf4c,0xf747fe40,0xf85d3168,0xf83cd308,0xfa702830,0xfeaadc64,0xfe579b10,0xff5ec95f,0xff9a7135,
-0x000df6ac,0xffe7acfe,0x02264e04,0x01c2e40c,0x015eec9e,0x000f11b3,0xff627e6a,0xffefe248,0xffd850c4,0x002d5274,0xff157b94,0x00dd18cc,0x00eb6af4,0xfe7f2f56,0xfedbacbc,0xfdabfb38,0xfe418c36,0xfe8fd1a2,0xfe35dcf0,0xfec5867c,0xfe553892,0xfdc299ac,0xfd439b5c,0xfe696c8a,0xffd76528,
-0x01090692,0x0295d80c,0x01a1871e,0xfe2ad6ce,0xfde0c410,0xff437aa2,0x01f083cc,0xff5c85ec,0xfa73de90,0xff9e2212,0x01094d1a,0xffb7dfe8,0x003dbe55,0xffc3cf07,0x004cabb0,0x003d3960,0x0155d9f4,0x0158e920,0x00e09906,0x00a19445,0x00d885a3,0xffb25064,0x01045ff6,0x00c9fcfa,0xff184261,
-0xff45189d,0xfe655f42,0xff1cf393,0xff4f0397,0xfea1a0a6,0xfe620f9a,0xfd5b0cc0,0xfd8a7e24,0xfec11a0a,0xfeae45fa,0xfe470930,0xfd05a8d4,0xff446680,0xffea1d8f,0x00d2d768,0xfbe7e790,0xf91e10b8,0xf8208ff0,0xf8736520,0xfa3ef958,0xfb2d7330,0xff2b9f8e,0xff684388,0xffbc0f0a,0x00e654d8,
-0x00e577e2,0xffef2190,0xfff8841a,0xfff8de9b,0x00140aa6,0xffe9fd2c,0xffe6fa1a,0x001a01a5,0x0006aff8,0x001fe3ed,0x006b3b96,0xffba7d36,0xfef33ebc,0xff49a595,0xfebd9d96,0xfef99104,0x007a7531,0x00088c9d,0xff655cb0,0xfedb5112,0xfd95a274,0xfcc12d0c,0xfade08c0,0xfd34caac,0xfda45244,
-0xfdbcedf8,0xfbfa4cf0,0xfb016390,0xfb2fe638,0xfab3c6a0,0xfec17fec,0xfe17bb32,0x00256f0a,0xff5fec91,0xff5efd90,0xff5a9305,0xffcd7858,0xfff8cc4a,0x000616ee,0x00138457,0xffe37121,0x00448782,0x007dd6bb,0x0081beb3,0xffedd685,0xff7169d0,0xff19854d,0xff9b315c,0x002830e0,0xffe16420,
-0xffec904b,0xff85317d,0xfe7bc07e,0xfdff2b34,0xfdaf6c04,0xfd97e320,0xfe5526e2,0xff325ca3,0xfff9dab0,0x0036325a,0xffa78c0b,0xfe91fd7c,0xfe415018,0xfe166302,0xfeab7e06,0xfe931f06,0xff23e45c,0xff35cb07,0xfe6c4a24,0xfef6c380,0xff5eb4a1,0xff7c9ab3,0xffb5fc79,0xffc05abc,0x000bc1d4,
-0x005ece6b,0x006d058d,0x005d4822,0x006cc6a3,0x000f5ae3,0x003e1d8f,0x002d0154,0x0040c1ee,0x002eb55d,0xffd5dec6,0xfffb2077,0x0038752f,0x005d16cf,0x00aa2589,0x00297abb,0xff8ff201,0xfee617d0,0xfef9ab0e,0xfee044ac,0xfed9c8ac,0xfe37238a,0xfddb4e18,0xfd749208,0xfdcf1958,0xfe099048,
-0xfe5fe508,0xfe7e8340,0xfefc7fd0,0xfe9ed094,0x000ed3e1,0xff345210,0xff2f8ef0,0xff85359c,0xff6d3b81,0xff55c446,0xff558f96,0xfeda8974,0xfebee560,0xfe90e07c,0xfee10df0,0xfeb6a52a,0xff6e127e,0xffd1a39f,0xff80ca63,0x0025d0e2,0x00e9d1bc,0x00d6ea2b,0x01222926,0x010571c6,0x0120b434,
-0x0133f9e2,0x017b1956,0x01beb292,0x013ca232,0x00b36470,0x002de88d,0xffacd513,0xff30d787,0xfe988340,0xfeb9764a,0xfeb573da,0xfec3eef8,0xfecbee0c,0xfeb04ea6,0xfe92c816,0xfe1667d2,0xfecf23d4,0x014dea58,0xfdf46370,0xfeca7c9e,0x00aee97b,0x00ab82f5,0x00c41004,0x00f7d050,0x00ff3c10,
-0x010c62c6,0x012b2ed6,0xfe916c30,0xfdf97158,0x01662296,0xfefaecbe,0xfe858c6c,0xff25c930,0xff28f396,0xff2db337,0xff3997b1,0xff45aea5,0xff41a975,0xff55d139,0xff182227,0xfef9b668,0xfed72e0c,0xfeb93378,0xfe9aebf2,0xfe64d316,0xfe7f925a,0xfe88e62e,0xfe97ae56,0xfe92d0b6,0xfe325a3c,
-0x01cefc6e,0x0157bcde,0x019dfcce,0x01eb0356,0x0095f370,0xfd212fd4,0x02a0f4bc,0x010dd658,0xfdef714c,0xfdc253c8,0xfdb03454,0xfd83b900,0xfd7d4d70,0xfd6cddfc,0xfd332274,0x0108f424,0x0296f6e4,0xfcca9014,0x00c05661,0x02354280,0x01d79a4a,0x019f31be,0x01d34bd2,0x01b17a02,0x01c451e0,
-0x01cc417e,0x01ee4352,0x01c7307a,0x01cab80e,0x01e2e860,0x01f0c422,0x01fc15d2,0x01eeb03c,0x022eb0f0,0x021aaa00,0x019abe8a,0x01a04c3c,0x0132546a,0x017d2160,0xff2733d2,0x014ba47a,0x01109ffa,0x00b21952,0x016065ba,0x0141aab0,0x01930d68,0x01d91df4,0x019db58a,0x021476c8,0x01ad36f0,
-0x01ba579e,0x00fba128,0x01103508,0x01cd2ee2,0x014187a2,0xffde1535,0x024694c0,0x01f9565e,0x0267c3dc,0x021db014,0x02578ad4,0x0260908c,0x029ccb78,0x02303850,0x0237d2e0,0x02aaaf34,0x02e7da38,0x03232a94,0x02fc52d0,0x03999418,0x035b4fa8,0x01f07650,0x01cf9654,0xff8356a6,0xffa90135,
-0xffe2473f,0xffff128f,0x00556d52,0x009d29f9,0x00b3e66a,0x00ee4fde,0x00781305,0x0077ffc9,0x00e9ff6c,0x01278062,0x00d4c62d,0x010dd348,0x01145cbc,0x01576266,0x00e5cc8b,0x00f090e3,0x017b079e,0x01bc6778,0x0229b2f0,0x02763644,0x01eb0490,0x0251ad34,0x02567aa0,0x02fa6f9c,0x021dd968,
-0x0256dc90,0x02f739e0,0x031bec80,0x0374bba8,0x036f71ec,0x04e936f8,0x048d9a18,0x00ceadc8,0x00740723,0xfe21d8ca,0xfd993790,0xfdf9090c,0xff4eee4b,0x00009e26,0x00aa949e,0x00bb1183,0x00a166a2,0x0073dd95,0x007a3635,0x007adca1,0x00af917e,0x015064c2,0x00f8aa80,0x0150ead8,0x0112bc18,
-0x01013bf8,0x00ce9234,0x015b0b7a,0x01d56fa0,0x028f5ecc,0x036f1744,0x028abda4,0x033c71b0,0x039b72e8,0x041c9730,0x02ef2d94,0x02c15d7c,0x03f4d400,0x04c5e5a8,0x059ba368,0x05b30700,0x07b54308,0x06ac9278,0x00cb6a3e,0xff537cc0,0x034be2dc,0x01e22860,0xfdc9deb8,0xfd8dc720,0xfe3d0fca,
-0xff493607,0x001cf26c,0xff92d0e1,0x00792864,0x013e1e02,0x00842c34,0x014f6424,0x0124ba44,0x0028c73a,0x010285ba,0x0110d930,0x0085ff96,0x00df2943,0x01be97c0,0x0221b840,0x003586c3,0xffcbde05,0xff87bf13,0x0044dc56,0xff38ae74,0xfd44225c,0xfed1623c,0x003ee427,0x023d926c,0x014a7bbe,
-0x016fa418,0x011cc328,0x01fbe8b0,0x0244d368,0x02d08058,0x02537908,0x007784db,0x03429894,0x04d33ae0,0x034bdc5c,0x0220b1e0,0x0130aa62,0x00e75c1b,0x01b22724,0x00b24261,0x004b41c5,0x0067f4bc,0xffd7858c,0x0081ddcd,0x0171b032,0x01a89124,0x01c16a90,0x014e0da4,0x01137b16,0x0022e55e,
-0x019df0de,0x02ef40f4,0x036bb1e8,0x04606328,0x03aa6bac,0x0323e724,0x0372e0dc,0x02629b24,0x01bac1ee,0x00faa267,0x021a74cc,0x01461460,0xfe1f21b2,0x01774c12,0x01a33634,0xff400cc4,0xffd2d5bb,0x04292020,0x01113f28,0xfe8b42f8,0xff925cf5,0x01227cc6,0x02fdf12c,0x026b3358,0x010ecf7a,
-0x0071540a,0xffa24d33,0x000a3af4,0x000ec588,0x003b6394,0xfea886c8,0x01a58f42,0x022e9f64,0xff79de29,0x0009ac58,0x0020a4af,0xffe52623,0xffdd0e9b,0x0066dffc,0x01348d8c,0x02efeebc,0x0438c280,0x056f5368,0x0354f1a0,0x01e084dc,0x01532790,0x01761188,0x04128298,0x086e9d40,0x0cb962f0,
-0x0ec79350,0x0f385300,0x082474f0,0x064b3d30,0x0064996b,0xff7f6592,0x0123e36a,0xffa1e91a,0x013bd31e,0x00f1f488,0x00cb9deb,0x019ed8f8,0x016e254e,0x00e984b0,0x00c9280e,0x00ef6d85,0x00529966,0x01a64456,0x0182c888,0x003cba16,0x005919bf,0xffd886f2,0x0021da5a,0x006600b9,0x00921049,
-0x00622b60,0xffbd7480,0xff76d062,0xff8cb7e0,0x014cab4e,0x02c88184,0x036dcd1c,0x04c3a9d0,0x053ab118,0x0345475c,0x05c27fc0,0x07959d08,0x0b065000,0x07f0f0b0,0x08c47040,0x0485ac68,0xff69b039,0x00dc847d,0x0119b4e2,0x0101c944,0x011ef868,0x00cbf2f9,0x009e42d6,0x0089a5f1,0x006a0425,
-0x001a7295,0x00285ef9,0x00b6a874,0x008c736d,0x0080453e,0x007d3320,0x0130e7aa,0x00d5afb5,0x00ca809d,0x0053de76,0x00341fa8,0x00cd12de,0x01646d46,0x0243c8b8,0x0370a774,0x031cdc34,0x039a6dfc,0x04aea0d8,0x04e9b790,0x04dc5f90,0x03d6ca34,0x06c573c8,0x082a2200,0x0929dff0,0x08848270,
-0x04573610,0x03681b64,0xffb8196d,0x00c05f67,0x004366af,0x00c176df,0x00e42b2a,0x00b8113a,0x00f5285a,0x00b2884b,0x008188f6,0x0079b174,0x009af871,0x005a7f53,0x009e6f1e,0x00d26254,0x00d115ba,0x000de7ff,0xffd2bcd8,0x001ac357,0x00dc05b3,0x00d2049f,0x00590971,0x011b29f2,0x0167536c,
-0x01d25f0c,0x00d08637,0xffdcd0f9,0xff1270fe,0xff5a64f2,0x00092e84,0x01026ee0,0x012f9264,0x01b5e598,0x02e7c018,0x03a104dc,0x02289df0,0x01e8a7aa,0x01ac88da,0x01ee16bc,0x014689e2,0x012cc83c,0x00d3b458,0x00c370a4,0x00848fcc,0x00b4d8a4,0x00c438e4,0x00b594e2,0x0036b4a7,0x004d8630,
-0x003d3f82,0x00636d8c,0x0064ced6,0x0067d775,0x00d1aa7c,0x005042d0,0x001084ba,0x005fe71d,0x00833c1c,0x0036a069,0xffc0cb65,0xff47b00e,0x000ee78d,0x00d650ac,0x018281b2,0x014e7a7a,0x00f67611,0x00a67ae1,0x0146b1ec,0x01d04e70,0x02480d6c,0x02138bcc,0x010b37d2,0x016229b0,0xfede65c2,
-0x00e9c8ea,0x0071fbe2,0x007ee0c8,0x01208d82,0x010e4f0c,0x014fe240,0x014fd1f0,0x0103b376,0x01395d24,0x01021552,0x00e656d2,0x0096e095,0x006b2f9e,0x010d3a18,0x00c96809,0x008b1640,0x007996a1,0x002b4353,0x003fb0ac,0x0026c574,0x001b7217,0x002e3ee4,0x001df61e,0x002962d9,0x001b6044,
-0x003f01ad,0x006bbdc3,0x00c3991d,0x00f71e43,0x00ffe0ef,0x00f49d38,0x01023958,0x010a448a,0x009c6915,0x01007730,0x009a8154,0xff8a3974,0xfd9bca9c,0x0122c28c,0xffce267f,0xfe26ff9e,0xfe00143a,0xfdef5f5c,0xfdd7c5f8,0xfdb7f04c,0xfda143d0,0xfd805d44,0xffc4a389,0x00d14fcb,0xfdcbf654,
-0xffaa576b,0x00700eda,0x005806fe,0x0053212a,0x004d4308,0x0040ad26,0x00416b5c,0x0037cd2c,0x002e2518,0x0047bafc,0x0061f606,0x0073cd99,0x008bf22a,0x009ccfb0,0x00c16747,0x00b7e1b3,0x00b97cfc,0x00b27d08,0x00c0bc4b,0x008cbb64,0xfdcd5e9c,0xfe2d6164,0xfd6d70dc,0xfe8e784a,0x00849259,
-0x03880528,0xfdd54640,0x004b771a,0x0323cce0,0x0338cae4,0x033ff93c,0x0327bee8,0x03790b50,0x0387bbd4,0x038d6238,0x0067eea8,0xfe2fbe04,0x03e55614,0x009a2a21,0xfeaa7a7c,0xfd4f2b38,0xfe10ea5e,0xfdc6dc08,0xfdaf05a0,0xfdc57c70,0xfdcaa084,0xfdcf6f30,0xfdc66f40,0xfdbed050,0xfdd04650,
-0xfd8949fc,0xfd6ea38c,0xfd8afeb4,0xfd5aea28,0xfd8b7a44,0xfe18732c,0xfe022dfa,0xfeaa717c,0xfdd063d4,0x00a31e9a,0xfdbb0858,0xff56282f,0xffa82c96,0xfed6325c,0xff460212,0xfe6d5b32,0xfe59f4ae,0xff03c476,0xfe7e2898,0xfeced096,0xfebe45fc,0xffdf17a3,0xff983606,0xfeee5ff0,0xfed775da,
-0x015588f4,0xfd6f7d10,0xfdac594c,0xfd75ad74,0xfd017d60,0xfd26fddc,0xfd28bcc0,0xfd4332b8,0xfd374950,0xfd2d965c,0xfd4941e8,0xfc9aee88,0xfc747dfc,0xfcf96fb4,0xfc50e960,0xfcaf3468,0xfe233e28,0xfe66145e,0xfeba6138,0xfd9e6a5c,0xfdac3dec,0xfdffa9fc,0xff8f098f,0xff640632,0xffbeae52,
-0xffed505c,0x00033b76,0xff716a77,0xffddd811,0xff37a653,0x006bf1d1,0xff14bf40,0x003c02b0,0xff9f5b4e,0xffa3c60a,0xff43ff6c,0xff4b9cbb,0xfdf4301c,0xfd328bc0,0xfd331eb8,0xfc2df6e0,0xfcae4a98,0xfcbae310,0xfcd5c528,0xfcb0e5d4,0xfc7a69d8,0xfcc96e60,0xfb784ff8,0xfae32258,0xfbf05e58,
-0xfa9fbb98,0xfbe30750,0xfed4f3a8,0xfeb29c0e,0x013fe44c,0xfeea91ba,0xfcecb370,0xfd12d8ec,0xff365806,0xff2b7f14,0xffea96bd,0x00a805fb,0x00175338,0x004316b5,0x003b08f9,0x00f5f9ea,0x00e013eb,0x00413a50,0x00b83584,0x003e15a7,0x004f69be,0xff534a30,0x0013b931,0xfe26c362,0xfd4585f8,
-0xfcdc5c68,0xfb1cf4f0,0xfb8cc968,0xfb5bb208,0xfbb36de0,0xfb8c2fd0,0xfb9309b8,0xfc091ee0,0xf9f63b00,0xf9d030b8,0xfbc73fa0,0xf9aa5eb8,0xfaf12800,0xff987f0b,0x008d8235,0xf8c43868,0xfc9c92f0,0xfeae6d1a,0xfe0aaafa,0xff491032,0x0005e2ee,0xffb7ce72,0xff98ddcf,0x00446d78,0x0097cc3c,
-0x00255436,0x00d910ee,0x00b2f0dd,0x0009cfb3,0x00576029,0xffde1da2,0xff9362a2,0xfe46da6a,0xfea2a9a4,0xfcf22a7c,0xfbabb6d8,0xfcf00500,0xfca51e9c,0xfd62cab4,0xfe394ee2,0xff4d4397,0xfd3fc9b4,0xfca83eb0,0xfc87ab58,0xfba47df8,0xfa56d588,0xf858e980,0xfa95d8c8,0xfbe86408,0xfc5868bc,
-0xfa2a8500,0xfe50752a,0xff709689,0x004ab2cd,0xffa12fa9,0xfe12ee92,0xffa3a660,0x00744aae,0x017a02d2,0x0041804c,0xffa4ccf5,0x001e015f,0xffc4cafd,0x0070cdf4,0x00de70a2,0x009f1203,0x005d31d0,0x00159ded,0x000974f5,0x00dee961,0xff49e5e4,0xfc5f5874,0xfc1dd460,0xfbebcbb0,0xfbdeeb28,
-0xfc1c71e0,0xfd42a5b0,0xfe33c612,0xfe11fa94,0xfcef9c3c,0xfcc3ab34,0xfd335974,0xfc2228e8,0xfc4881e0,0xfc1f5828,0xfc8404fc,0xfe581206,0x0276a724,0x01826b62,0x00ba31fb,0x00d3ab63,0x024f1504,0x02e11e74,0x02423d7c,0xffa7c067,0xfff571f5,0xff863376,0x00039307,0xffda7f36,0x00070ed3,
-0xfeb92ce0,0x01085780,0x01073e38,0xffa7631a,0xff339021,0xfea6d996,0xfe5fe996,0xfeba255a,0xff62f5a2,0xfef9e9d8,0xfce49628,0xfaebf3c0,0xf9874e20,0xf88b1530,0xf923eb40,0xfabd84f8,0xfa863580,0xf88b3be8,0xf51b9990,0xf8338448,0xfb159c50,0xfc4eefa8,0x016aa042,0xfce7f220,0x015bf5d8,
-0x00ea5b41,0xff949b1a,0x00706b7d,0x0045187d,0x00edbc5e,0x0071e144,0x0152d31e,0x01059186,0x004b7c1c,0x0071dfcf,0x00ba3f95,0xfff825ce,0x0131b100,0x0150e28e,0x00113d9f,0xffffe5e6,0x002cacdf,0xfec778b2,0xfc8ebec0,0xfbb16750,0xfb865000,0xface9120,0xfada89d0,0xfb9071a0,0xfbb2a8c8,
-0xfcfb02dc,0xfe6dad62,0x0043a427,0x004a67d3,0xfe29b0a8,0xfb89ed30,0xf82f9398,0xf47c8230,0xfa135b98,0xf8f76490,0xfe65f66e,0x037b3198,0x0157e8fe,0x0076d78d,0x0146e954,0x00ba1a15,0xffdac6ca,0x0024877a,0xffab40ec,0xffb4d597,0xffb5b309,0xffeec813,0x005153ef,0x00b9598f,0x00b31178,
-0x004845f8,0x0032d885,0x006af62b,0xffea4c9a,0x0049658b,0x00b742e2,0x00768047,0x0027c423,0xffe1723c,0xfef6adca,0xff55f353,0xfec3ec9c,0xfd209418,0xfd10b038,0xfb92d1b0,0xf8b28da0,0xf9d40108,0xfaa30030,0xfab8ece0,0xfa0eff40,0xfe291286,0xfef77814,0x01ce367c,0x0028ca14,0x00b568a5,
-0x00816a63,0x007fbed6,0x00b827f9,0x003d013e,0x0043861f,0x00499b72,0x002684d1,0xfff94eee,0xffdbe565,0xfff8a27b,0xfffc8a83,0xff9d0880,0xffe2a11b,0x0002137b,0xffefd937,0xfeb40828,0xfe316336,0xfe225150,0xfdbfb3b8,0xfda158e8,0xfdf2ffb4,0xfe623f90,0xff462c12,0x0066b160,0xff665efc,
-0xfe1c3b36,0xfb768f98,0xfd56029c,0xfdf1f194,0xfdf4dd94,0xfede89d2,0xfee425c2,0xffcc9aeb,0x006d3db9,0xffc0a1c6,0x006b63c8,0x002d0076,0x002249bd,0xffe2d525,0x005b6094,0xfffafe9b,0x00655a9c,0xffe2ac81,0x008f8dff,0x004c0899,0x0065ce8e,0x002200a0,0x004e6c16,0xffc6ce2e,0xff4d50be,
-0xfe8de468,0xfebcb3b2,0xff1dc07e,0xff397bb1,0xffa6a5ff,0x0019766f,0x009e5f91,0xfff551c4,0xff543f8f,0xfedb77f2,0xfe44e2e8,0xfe04ab00,0xfd717190,0xfdeb1c58,0xfe420932,0xfe91e7fc,0xff07fc66,0xfefb1198,0xff341502,0x01af35e2,0xffb677c6,0x00712ab3,0x0067c034,0xffcd63d1,0x0017ac51,
-0xff63566b,0xff49fe20,0xff9d4dff,0xff09d221,0xfef6adb6,0xfef59f92,0xff73dc7e,0xff83246b,0xff22eec6,0xff731a81,0x0050b6c6,0xffc91a6b,0x000fb8b7,0xffe551d4,0xffe6ac53,0xffcb1aeb,0xff9c59a8,0xff8ff369,0xff3b89ef,0xfef1d46c,0xfe89e4aa,0xfe250282,0xfdae931c,0xfd303e90,0xfd915314,
-0xfde33d70,0xfe434c66,0xfe9a5122,0xfed4df64,0xfe8a9e94,0xff5a1483,0x0073edcc,0x01bb30c6,0xfee73a10,0x004d7a05,0x01b11f54,0x01c53456,0x01c95588,0x01a90b28,0x01d1317a,0x01da3ee0,0x01c72f0e,0x000c0e4a,0xfee8fba0,0x01a88a36,0x002a8026,0xff3ed1da,0xfefd9c40,0xff1e8641,0xff11ef75,
-0xff1bb23c,0xff21589d,0xff2ed194,0xff42220f,0xff06b7bc,0xfed8cd12,0xfeafaa2c,0xfe866596,0xfe6339b0,0xfe1dc356,0xfe584af0,0xfe70199e,0xfe8879ea,0xfe9e9bf2,0xfe8bb1fe,0x01f44aee,0x01aa4a32,0x029cc2fc,0xfff81ff6,0xfdc70f70,0xfc0c1eec,0x0108e00e,0xfe5828fe,0xfc590e54,0xfc200528,
-0xfc1fbaa8,0xfc6e8fdc,0xfc1bde70,0xfc14e098,0xfc11cb78,0xfe545b12,0x00d2283c,0xfbe58000,0xfe169aaa,0xfffaea6e,0x028848e8,0x01b26e8c,0x01faf110,0x01fb2ef2,0x01fda960,0x01fe1362,0x01ee8fa6,0x0204446c,0x0209c368,0x02249a2c,0x020f2188,0x021935a0,0x02348034,0x022cb8a0,0x020e263c,
-0x01af6ec2,0x01e5f772,0x01cf3fdc,0x0228beb8,0xfd681ec4,0x015e7aac,0xffe52258,0xffc9cef0,0x00dbd8fb,0x00af4252,0x01693716,0x012292dc,0x00273f0e,0x011c7b2c,0x011715ea,0x00bf1654,0x0011ef38,0x0076d4ad,0x00a50fa6,0x00c3dde6,0xfdb970b0,0x01c8b5d8,0x0246362c,0x02495b5c,0x0277491c,
-0x02806848,0x027d6994,0x02486578,0x0285a8c4,0x02a5d480,0x02dac9d0,0x026a1b4c,0x0247cbc0,0x02659ea4,0x0253bf28,0x020e66bc,0x01360e20,0x01a0933e,0x0280af98,0x01f5a060,0xffa6e651,0x002ab109,0xff6c1d73,0xffc3e4a0,0xffee9fd0,0x00aaa63d,0xffb4887b,0x009f25cc,0xffa66bf0,0x0151b21e,
-0xffe245e3,0x00940b6b,0x001019c1,0x00e14ca5,0x009e82c5,0x0042ae41,0xff9582a8,0x00cc753a,0x02ad1afc,0x026bbd7c,0x02e93c88,0x02dba150,0x02f7b8e8,0x02c46c20,0x033644cc,0x0341c18c,0x03c738b4,0x0325e768,0x034dc88c,0x0401fe40,0x03b673d0,0x02fb286c,0x01064b3c,0x01e2f69e,0x02aa2048,
-0x028f8258,0x005f36f8,0x00f8870b,0x00fd5964,0x006a1632,0x00b57365,0x0120dd4e,0x009857b9,0x005f6aaf,0x00d14b08,0x00c93e87,0x012591c0,0x009a6359,0x013c87ce,0x01b1cf6a,0x0036fca1,0x010a0522,0xff64dc3e,0x00a586be,0x02ff39cc,0x03162990,0x03cba0a0,0x03faeae8,0x03fb0888,0x038b58f0,
-0x041f8b08,0x04786b88,0x0546f108,0x03a1b4bc,0x0346e238,0x03eb1190,0x0345b6d8,0x01dac3e0,0xffbd71a5,0x01169c10,0x01b82d72,0xff59037a,0xfdb7082c,0xfebded40,0xfe2d7c76,0xfef9bef6,0xffb4f276,0xffb83e8d,0x00922e59,0x0101b0a0,0x006a7e2f,0x00f67a0c,0x00e88e22,0x00579dcf,0x0099004b,
-0x00931a81,0xff8403e9,0x005fd8e9,0xfec28dd8,0xffeed12d,0x02df3f58,0x0157d6e0,0x01349aca,0x00474d5d,0x005d8c32,0x00efe333,0x01e7bb46,0x01fb0248,0x01dff870,0x017e2df6,0x0215cd10,0x02451cc8,0x04b3a158,0x053f4880,0x030bdef0,0x018300ba,0x001e2c5b,0x015c65ca,0x00203818,0x0052087c,
-0xffec24e2,0x00410b37,0x010a90f6,0x017ab8b6,0x00b3fb08,0xffe49fb0,0x003bc021,0x002168b4,0x008cb985,0x00b33e86,0x0145e600,0x01287d7a,0x001f8108,0xffe82f09,0xfe9e6820,0x00768b49,0x02900e28,0x02e410bc,0x04e833e8,0x01bad4f4,0x00033b64,0xff22bc79,0xfe38a87e,0xfe21d670,0xff0fe767,
-0xfbf6bd90,0xfb7e1560,0xfbe971d8,0xfcc2ebc8,0xfc7a2720,0xfb7f5298,0xfdd6006c,0x03ac89f0,0x0352859c,0x0114f902,0x01ff2fa8,0x021dc544,0x033343d0,0x01bda7f2,0xffa69407,0x00586fc1,0x005bc621,0x006e3731,0x0067856a,0x00924d8b,0xff5a92b5,0x0170d034,0x0217a8b0,0x0008e922,0x00a496d0,
-0xffdeb1c0,0x005e1698,0x004bfa34,0xff567cad,0x00327e18,0x01ca9174,0x037b211c,0x0466baf8,0x04668cb8,0x03acfea4,0x02387cfc,0x02ef7acc,0x044f5e20,0x04246fb0,0x08538b80,0x091b98e0,0x078d8540,0x04cc05a0,0x0159e506,0xfef1af0c,0x000f0846,0x00d341cf,0xfffd98dc,0x012e4bac,0x0169b146,
-0x014f6fe8,0x013e44e4,0x00b724d8,0xffeef275,0x00bca1de,0x00c6daef,0xffac6c42,0x010ad326,0x01090950,0x006b4bb4,0x0090d57f,0xff16e714,0xffa5e1bc,0x00922ae3,0x007ccd01,0x00575a49,0xff8e5540,0xfe2f2a7e,0xfc3c18a0,0xfc56b6c8,0xfd234438,0xfeae3780,0xffacc6fb,0x01156a48,0x01ddbf52,
-0x05b8f108,0x0790d980,0x081c0bc0,0x0334b33c,0x051eec68,0x009ceaf9,0xfd099690,0xff8aa637,0x00835569,0x006ffcc4,0x009cd9dc,0x0038722e,0x0008b76d,0x0096158f,0x0014036e,0x004b3b0c,0x0084ddff,0x00ce2b6a,0x0107b5d2,0x00f8bac6,0x009f4e2d,0x00dc412b,0x003799c0,0x01403da0,0x0123ad7a,
-0x006263d5,0x0095e15b,0x00021672,0x00f124c9,0x02537e98,0x03555b4c,0x03d72840,0x04df41e0,0x02ccb5cc,0x02594774,0x027acfd0,0x048b4d88,0x051e4050,0x051aa318,0x04a1efc8,0x024a020c,0x0058688b,0xfe9e3dae,0x0007e4d8,0xffd5a004,0x0088ccf5,0x0120bc90,0x00f85b5a,0x01472ffa,0x010a5638,
-0x0127d446,0x00aaf1f4,0x00a62b07,0x00c5407b,0x00cb06aa,0x00782bbe,0x00107208,0xffa7aaed,0xff7c550d,0xff78e4ed,0x00809b4e,0x00f2bc5c,0x0159d4bc,0x0081bbbd,0xffc8cd4b,0xff4a0430,0x002191aa,0x00a2a20b,0x00f70427,0x011a80fe,0x0205cf80,0x0364c444,0x03743240,0x035d1f2c,0x03414170,
-0x02696b18,0x0231245c,0x01663cf0,0x00251e76,0x0087ab51,0xffbcda22,0x001494a7,0x00231c5d,0x006374e9,0xffde034b,0x0094e089,0xffd57473,0x01042386,0x00186115,0x00b3235f,0x004e9fc0,0x00bcc785,0x008b2ee1,0x009bb64b,0x0015e0b8,0x015d75ea,0x01e13a16,0x00f5b732,0x00d38df4,0x011787ba,
-0x01879360,0x01c0146e,0x01ea381a,0x01fb1f12,0x02107b58,0x020d66e4,0x01f64138,0x022317e4,0x01d0c428,0x01b093fa,0x01c61e42,0x019f5c2e,0x009c93ad,0x0083b234,0xfe8ab1c0,0x00869b6d,0xffd03d9a,0xffd88894,0x0086cf3c,0x0077dfeb,0x010e1034,0x00e33a73,0x001ab884,0x00bf2489,0x00e92945,
-0x00b0ab91,0x001d2e5e,0x00578557,0x00b219b4,0x00b62807,0xff91c57e,0x00df7d91,0x008f0ba7,0x00b037e9,0x00b55be5,0x009cd8b1,0x007905f0,0x00621af0,0x00825dc1,0x00b49b96,0x00eea82d,0x0133bf1e,0x017f5754,0x01c6d02e,0x0196769a,0x015b10f4,0x011af574,0x00d2e739,0x0101a8b8,0x0153f598,
-0xffc58e54,0xfe9c8338,0xfdcc01ec,0x007d20f9,0xfed4a378,0xfdbaf754,0xfd8db50c,0xfd77b31c,0xfdaff4c8,0xfd50b018,0xfd24cbfc,0xfd23ff04,0xfed3034a,0x006c870d,0xfd6d1a34,0xfed5eab4,0x0011d796,0x01558354,0x00f4164f,0x01064430,0x00f8fec2,0x00f866d5,0x00fbfaad,0x00f47b44,0x0115caa0,
-0x0128408a,0x01376270,0x01443ffa,0x014d5686,0x016a7a04,0x0148de12,0x013d8396,0x0131df56,0x0128a4f8,0x01508b2c,0xfec09060,0xff1def0b,0xfe1bbac8,0x013a7498,0x02df28d4,0x0320a1cc,0x0034ddc9,0x0284d984,0x036c8180,0x03783ac0,0x036a3850,0x02ef4924,0x035e5ccc,0x0361f620,0x032c5e98,
-0x02a03e10,0x009fab97,0x035d99b0,0x02b46ce0,0x013c3b62,0xfe0525de,0xfedb85e6,0xfea96e3c,0xfea83aa0,0xfe9cad4e,0xfe9b386a,0xfe9f8868,0xfeb6df7a,0xfeb49248,0xfe9e4866,0xfe7fc25c,0xfe774b94,0xfe76b25e,0xfeb5b602,0xfee1cd0e,0xff21dee8,0xff005e67,0xff0e7775,0xff068d6d,0x02c45cbc,
-0xff431079,0x00c767df,0x00b772b2,0xfff46b41,0x005d5c80,0xff5cffff,0xffbf85c4,0x00c6cf06,0x0000b0b6,0xffcf2087,0x000e3287,0x00ce57f5,0x007aeb0b,0x00a56bcc,0x000024a8,0x02718d38,0xfee24ba0,0xfe370d22,0xfe5dafd6,0xfe2b8234,0xfe128fae,0xfe1ac18c,0xfe423c66,0xfe9af3f8,0xfe9de59a,
-0xfe63cb08,0xfe11a52e,0xfe0f229c,0xfe402b4e,0xfeed34cc,0xff6f2782,0xffe49726,0xff97fddd,0xff295581,0xff9374ed,0x014981de,0x0043f11c,0x00e05da6,0x007027af,0x00838e2f,0x00c39fc4,0x00cf95b5,0xffa46679,0x01038bb2,0xff595406,0x00fc157c,0xffe37e49,0x011c132e,0x0077b332,0x00b0ca90,
-0x00640178,0x00df4a42,0xff48e46b,0xfd9fe600,0xfe0e2220,0xfdd387e0,0xfdac1ce4,0xfdafe3d8,0xfdea7788,0xfe73ddb2,0xfe65ac9a,0xfdda075c,0xfd051a94,0xfcd01c74,0xfd1bde70,0xfe9fc044,0xffb72be9,0x00cfb5e6,0x0030ae9a,0xff59427a,0x001721cf,0x018dc514,0x0013b7ae,0x005d7204,0x005ee089,
-0x0050a636,0x00e8f617,0x0007059e,0x00236ac8,0xffda9cf9,0x00b9a132,0x007ba070,0xff871783,0x0040f415,0x001f2b8f,0x0124a446,0xff66def2,0x00941d82,0xfed2a13c,0xfcf9ccdc,0xfd4876f4,0xfcf89988,0xfcbed558,0xfcf2203c,0xfd98e884,0xfeab59ec,0xfeba34aa,0xfdd36de8,0xfca7d33c,0xfc948b00,
-0xfd47e564,0xffb82330,0x01b69820,0x03347760,0x01f74c9e,0xfaedb560,0xfe50b266,0x012acac0,0x008c6f79,0x00848167,0x005e3eac,0xffba35b9,0xfffc3fb5,0x005dbb7e,0x00db4fa7,0x0075c9d1,0x009dfc07,0x00b75eba,0x0116b072,0x00a2ed0d,0xfff1c330,0x00699166,0xff0b4e1d,0x005e92d6,0xff5f97f7,
-0xfd3b2d68,0xfe847678,0xfe2ea4ea,0xff5d9d7a,0xff6e4f7a,0xfeea2f3a,0xfdfd0a6c,0xfcc751c0,0xfc8f5ac8,0xfbec7d38,0xfc155c44,0xfcac59f4,0xfd7b147c,0xfcb9b4fc,0xfa5d7280,0xfbdfa070,0xfabc6c40,0xfe50b216,0x002bca5b,0xff56fe89,0xfee8c97a,0x009c4186,0x00b6d388,0x00a1c70b,0x00604319,
-0xffffd379,0x00260a48,0x00175af1,0x003e85f2,0xffc3047b,0x00861d69,0x00b5d6c5,0x0091bc25,0x00140634,0x00e9aa88,0xfff4c6a9,0xfe50cdc2,0xfe5cab16,0xfcc05af4,0xfd76b160,0xfe282114,0xff52f689,0xffbc3d7b,0x0006408c,0x007e3e49,0xfe169200,0xfe108f7e,0x00336c9d,0x00d5af1e,0x004876c2,
-0xfe2f9a72,0xfc5130e0,0x04af1058,0x032c8a80,0x036a121c,0x02e482a0,0x03beba98,0x029b2694,0x020a478c,0xffb20631,0x00963bf9,0x001e2078,0x0037faf5,0x000f0e79,0x004d431d,0xffd50dcc,0x015584a2,0x01396d6e,0x00c6dc29,0xff822d1b,0xffab580e,0xff2cf674,0xfe4e814c,0xff5acfd3,0xff7783a9,
-0xfdac874c,0xfc644154,0xfc636418,0xfbd4b220,0xfbd0e308,0xfce27854,0xfa8bbf38,0xfa4af7f8,0xfab2b970,0xff0db7d0,0x01ea4986,0x01ec7ad8,0x04f6e8c8,0x0137b8b8,0x00dec96a,0x0029c007,0x000706d8,0x007099fc,0x00ca798d,0x013a67ca,0x012665c4,0x00f10a6f,0x007c9943,0x0024f58f,0x00882542,
-0x0061ce6e,0xff804a09,0x005fcb61,0x00b7f75a,0x00342026,0x00063033,0x009a65cd,0xff2eff53,0xfdc5c8b0,0xfd75eb58,0xfceacd08,0xfcc39f14,0xfd526ba4,0xfe85842a,0xfebe4974,0x00141a7c,0x02f78a28,0x02cdec54,0x02d6c37c,0x00c3a20c,0x02d18890,0x026ed880,0x00278827,0x01dd41d2,0x0020a1c5,
-0x02e6217c,0x037e9614,0x01bf66fc,0x0195cb3e,0x01a5e3c2,0x011f357c,0x00cfc1a8,0x00e4c117,0x0083dc6e,0x007cb526,0x0066dec2,0x0092e227,0x00c14992,0x014c5846,0x012a1806,0x0064d44a,0x005f1315,0x014e2cea,0x008ef29e,0x00a70be6,0x011497bc,0x00b1dfb1,0x014764c2,0x0177fcaa,0x016fc45c,
-0x0250a71c,0x02e935f0,0x03a8a43c,0x018dce0c,0x0037af68,0xfe94fcac,0xfeccc984,0xff898997,0x007a60a8,0x00989c54,0xffdc6bd8,0x01794920,0x01e89428,0x01476140,0x0120d1c2,0x01210e4c,0x00dac8b0,0x0101b7de,0x00f786fb,0x00ccdc58,0x004e040e,0x00c087cc,0x00b80d15,0x009ebef8,0x00721ce7,
-0x0095e4c2,0x00e2740f,0x00a16751,0x00189a2c,0x0068e2f3,0xffee9e75,0xffd03cee,0x00156132,0xff3605e1,0xff46089e,0xffb06083,0xffe780e4,0xffcddc5d,0xffe9ffc7,0xfebfcf66,0xfe3889ea,0xfe11389a,0xfec06fac,0xff97041f,0x00964331,0x00489d36,0xffeab867,0x00b97fa9,0x01ac62b0,0x00f0e9ba,
-0x01135a0c,0x00d98f9e,0x00ad301f,0x007fc8f4,0x00d830f6,0x008d57a3,0x014965a6,0x0081deed,0x00ead1b4,0x00a0b428,0x00e7b79b,0x00c09304,0x00ddebea,0x0112b7fe,0x01b13e78,0x0120720e,0x0080776f,0x00d932f0,0x00da355a,0x00eeadb7,0x00dd197e,0x00c09cf9,0x00909209,0x005720af,0x0013689f,
-0xfff2f504,0xffd4dd15,0xff88ba47,0xffe1d8a4,0x000d7c61,0x002106d7,0x0054eef2,0xffe50d78,0x0028f75c,0x01301fae,0x004a9c04,0x00eae14e,0x00f0ee90,0x00c8f8d1,0x00ea4da9,0x00b0a7e2,0x00d97463,0x015d8072,0x01068a42,0x00cf7c67,0x010351da,0x0119c90e,0x00b46526,0x00900b18,0x00243765,
-0x00cf5999,0xff603307,0xff5939c0,0xff60e689,0xff375555,0xff44e650,0xff46f34a,0xff509c8d,0xff1d8c8d,0xff037cfc,0xfef55c6c,0xfef57d5a,0xfef3ae9e,0xfee948a6,0xff19468a,0xff50869b,0xff8198d6,0xffc7bb90,0xfff558c3,0xffc5d621,0x0139ac66,0x01e35c9e,0x0187ecb8,0x00f1118f,0x01e4ebd2,
-0x01cd37f4,0x01e04cae,0x01ee6200,0x01ba3d3e,0x01f8fc40,0x0213d798,0x020e8e10,0x0207ba08,0x00f65ab1,0x01dbb234,0x01cf4cc2,0x01066d7e,0xff8068b7,0xffd90f36,0xffc1992d,0xffc47526,0xffb69bff,0xffa7d0c7,0xffa09a7d,0xffa35541,0xffa73f52,0xffa5f642,0xff9dfdbd,0xff9b9aa8,0xff98e76b,
-0xffb185dc,0xffbfe7b0,0xffcd7c08,0xffdbb59c,0xfffcfc45,0xffce7f80,0xffa7b8dc,0x004d9cbe,0xfdc0652c,0xfd27061c,0xfe8f4ddc,0xfe4eb7e4,0xfd56d414,0xfe309ccc,0xfe094b98,0xfe12ccb2,0xfe8593a6,0xfe4538c0,0xfe4c62ee,0xfe7fd270,0xfd56bf08,0xfe364df4,0xfeb09c88,0xfd5f168c,0xfdd04ed4,
-0x007828a0,0xffd91a75,0xffe584c6,0xfffaa151,0xffe54de2,0xffde806a,0xffcaed51,0xffe2c88f,0xffe6e7e1,0xffe66489,0xffc50ee2,0xffb0e23e,0xffade11d,0xff925c7a,0xff89d414,0xff98e164,0xff9882b1,0xff84cd8e,0xff4b83b9,0xfdbd60fc,0xff2e5b0a,0xfe6d2ba6,0xfec7b2cc,0xff4e0fdd,0xff713680,
-0xffad1fa5,0xff27c53d,0xfe7bfee0,0xff027c9b,0xff67d190,0xff2599f1,0xff1a68c9,0xff6142b7,0xfeefabde,0xff789dac,0xfded865c,0xff9d03ac,0x001c82a7,0xffb5d582,0x00264cef,0xffeb6a6c,0xffe816cc,0xffb7173a,0xffe4ddde,0xffce7f9d,0xff95c142,0xff4337cb,0xff180f12,0xff30f9fa,0xfef4263c,
-0xfee361d6,0xff23945e,0xff15c365,0xff4c5bad,0xff55577c,0xfe491dd2,0xfeccba36,0xfecb5bc6,0xff268c23,0xff667fe5,0xfffc8bc2,0xff363656,0xfffe27ab,0xfee4c088,0x0042502a,0xff60a2df,0xfff4e964,0xff48a031,0xffc4ea02,0xffec704d,0xffa7052a,0xfe953652,0xff98991c,0x009057c2,0xffef60c8,
-0x008a65ed,0x00025af9,0xffef933f,0xff63321c,0xfff45ea2,0xfff1ad05,0xffc07cd2,0xff3ef48b,0xfecb701e,0xfee1a61a,0xfe062654,0xfdbcfdc4,0xfea7da7a,0xfe92cfee,0xff33e858,0xfef49408,0xfe368c5a,0xfea5cd9e,0xff26da43,0xffa3f0ea,0x0039b21e,0x00fc6b43,0x005e6127,0x002a4c7a,0x00955f70,
-0x00b54f09,0x0099de3e,0x009029d8,0x00923ab1,0x010c9628,0x00047e09,0x009378ca,0xfe9c3b20,0xffe324cf,0x00bc6138,0xffa9efd8,0x00e116a0,0x00352b39,0xfffc4284,0xff37909e,0xffca53d4,0xffc7e411,0xff1f95d7,0xfe3d9a7e,0xfd988c40,0xfdf971f0,0xfccb9ec4,0xfc97d278,0xfe33be18,0xfe3ddf66,
-0xfdcf314c,0xfc53832c,0xfbfedb88,0xfda8bdac,0xfe4a2612,0xfe568584,0xfedc7904,0xff882410,0xffb58c14,0x004fe2a3,0x006c844d,0x009059b4,0x00c91afa,0x00e6e395,0x0069fe6d,0x007c7461,0x001d0b53,0x00818862,0xfeaf5e8a,0xfec52ace,0x019d5ff2,0x012e59a4,0x0228370c,0xff1bf8e2,0xff3d0346,
-0x00ff25b5,0x014983e8,0x0104c144,0x0049735f,0xffcb319e,0xff65018e,0xfefb8b9c,0xfec12a76,0xfe1e026e,0xfcf5f7fc,0xfd15faf8,0xfee9ec78,0xfedb2eac,0xfd6caf88,0xfe6a1de6,0xfea7a728,0x00198847,0x00d626db,0xffb6cf2c,0x000fdd7b,0xffc56285,0x001fb397,0xffec255a,0xffeb672b,0xffc9b62a,
-0x00f3a927,0x00f35429,0xffe874fc,0xffa27c37,0xfecfbcd4,0xfefe4350,0xff327bb0,0xfe4b5500,0xfe908352,0xfeff125e,0xfea8bc54,0xfd1e9a08,0xfd6db174,0xfdc7c870,0xfecd48d4,0xfd738528,0xfd7b69bc,0xfe304dd0,0xfdb53828,0xfdd2db7c,0xfe2f180e,0xfdb7eb84,0x032bfce4,0x03989210,0x026b11b8,
-0x02ee8888,0x0285fc0c,0x02082014,0x00f70b36,0xffb0115e,0x0071dbd2,0x0056a392,0x0005b86a,0x0031449e,0x006d39eb,0xfff59890,0x00aeb3c1,0x00df4b13,0x001d04ef,0xffddb34a,0xfecd907c,0xff6d5830,0x002c325c,0xff3ea70f,0xfea78484,0xfdbca3b4,0xfdc4d03c,0xfe1bec60,0xff95d427,0x0070f3f9,
-0x017a4150,0xfff5eb5c,0xfee3e826,0xfd46b4cc,0xfcec4aec,0xfd466b08,0xfe1cfec8,0x0138026e,0xfc455cc8,0xfee2cdc8,0xffe3a028,0xffe8aeaf,0x008d1ca5,0x00f00493,0x016ea9de,0x0158259a,0x00b382df,0x003ddf5f,0x00258548,0x00383c39,0x0014f344,0xff90ae16,0x001aff66,0x00087fe2,0x002f1458,
-0xffe179fd,0xfed9933c,0xff188016,0xff32ff66,0xfe5cffca,0xfdffaa54,0xfd5fb2ec,0xfd2a09f4,0xfcfd4bec,0xfcafc54c,0xfc42787c,0xfc802124,0xfc414858,0xfdfcf814,0x00e3d972,0x0130e5ba,0x0068505a,0xfd31463c,0xfc310dcc,0xfcf5d418,0xfd08edec,0xff0adba9,0x000057a5,0x003949b8,0x007cf76b,
-0x007526b1,0xfff2e16d,0xfff57bc1,0x007e5eec,0x00a5ec2a,0x009bfc39,0x009c565e,0x005b1bc0,0x01263810,0x0125145c,0x00c290ee,0xffefc882,0xff452594,0x0023c7e3,0x0029580b,0x001da4fe,0x009777c4,0x00430835,0xffb24b91,0xfeea8cd6,0xff182f09,0xff2598a4,0xff8ea54a,0xff3ac1d9,0xff0b52a9,
-0xff65fb1c,0xfe688bee,0xfddd3f24,0xfd66299c,0xfcafd4bc,0xfef58de6,0xfe3bfb6a,0xff4da2f2,0xff4cb3b1,0xffd4917a,0x002d8b0d,0x00c1f741,0x007f52e3,0x0109e9f0,0x010a127c,0x00bf9d84,0x00ae0a7a,0x00a4c545,0x005ed8fb,0x000b25cf,0xffd5c49d,0x0023b35f,0x00509fe5,0x0089aa59,0x007c90db,
-0x00c9750c,0x00adf347,0x00412a17,0xff3d7aa9,0xff3c0bec,0xffacee64,0x0033b07b,0x005b1ab4,0x0048eb8a,0xff0d3b47,0xff07cb23,0x0071ab54,0x00533397,0x00480b43,0x004d6196,0xff2d2a0a,0x00305763,0xffb3fee5,0xff2d644a,0xff5decae,0xff3cda61,0xff81957a,0xffc8b402,0x0004f9e2,0xfff61770,
-0x003e8b9e,0xfffddcde,0x008c9cc6,0x007b3334,0x00cc7b89,0x0097b03d,0x008e5866,0x0043cc08,0x004bc599,0x001212b6,0x00933728,0x01178862,0x00fbdb6e,0x0144f5f2,0x01148d8c,0x00e9b6a3,0x00ae59d3,0xfffe7429,0xff4c2c55,0xfea83d4a,0xff183b71,0xff564c3c,0xff6d83fe,0xff90c186,0xffce204a,
-0x0030edbd,0x00134730,0x002639d9,0x0008d958,0xffe8c672,0x0060418e,0x0022b24c,0x00608569,0x00905968,0x00a7b9d1,0x00b16763,0x005bf450,0xfff854cc,0x000a1a2f,0x003b1309,0x00062f91,0xffe59ef4,0x00021384,0xffbdc9a2,0xfff67754,0xff8191b4,0xffdcae96,0xffda4b9d,0xff9df812,0xff83d43c,
-0xff694a85,0xff5d64a3,0xff59e509,0xff95b274,0xffcdfe21,0xffd5fa93,0xffce72bf,0xffb77d88,0xffac9715,0xffd418d0,0xffd8405a,0xffde942f,0xffe3ba81,0x003cc2f7,0x006a88a2,0xff2b83d4,0xff129650,0x00118c19,0xff79722d,0xff28e201,0xffdae3de,0xffcdfab3,0xffd7258a,0x00087dc7,0xffea1f43,
-0xffdf173e,0xfff45496,0xff002cbf,0xff5c89aa,0xffe2fe13,0xfefd10ec,0xff37545a,0x0062b4a2,0x002f6602,0x00361618,0x0036ca32,0x003349f7,0x002e4922,0x001e9116,0x001ebf7e,0x0018d14a,0x0021821e,0x001e7265,0x002167d8,0x001a3f4b,0x001b27f3,0x002214af,0x0030ef6b,0x003576fd,0x004738ce,
-0x0108737c,0x00cba629,0x00a5d7de,0x01fa10c6,0x01805b16,0xff0b7e54,0x020f0cf4,0x01a8828a,0xffcfce76,0xffb5805f,0xffa16cac,0xff5701f9,0xff6d8a9a,0xff65864a,0xff3c92fc,0x01b4e1c4,0x022b50b8,0xff093072,0x0196d46a,0x022bb8d0,0x00eee62a,0x00ec6c29,0x0101a47c,0x0100cdc6,0x00f388ef,
-0x00f536af,0x010b4032,0x01035a98,0x0102470c,0x0103cefa,0x010aaa92,0x0123dc56,0x014a125c,0x016cfcee,0x0162fa34,0x0123f2da,0x00fe9b77,0x007a555b,0x00d28ea0,0x0075036b,0x00c6098d,0x00ddfd46,0x00c6cbc5,0x010c0314,0x0112bc9a,0x00ff0938,0x014f7642,0x01762134,0x0170747c,0x01158008,
-0x016b1f7e,0x00f9dfe1,0x00fff0df,0x01ae3b78,0x0135bdee,0x00e9a6c8,0x01aa4700,0x011743c2,0x01675d00,0x0164575a,0x013a2934,0x012ab6ca,0x014b40ae,0x012618da,0x012368ae,0x013270d2,0x01287f40,0x0162be2e,0x01c716c0,0x02425860,0x0227cdc4,0x01603d0a,0x01107596,0xffae0910,0x00140bf5,
-0x00c6413f,0x006e0ef1,0x0027d6b6,0x007b9ff0,0x00aed7e3,0x00fe326e,0x00b5ba36,0x003a4c1a,0x00e7a8a7,0x006417f9,0x00b8b1e8,0x012991a2,0x011766bc,0x012eb5ac,0x013e9148,0x01516898,0x01ba91d6,0x01928de0,0x011ae386,0x015b62aa,0x016bee2e,0x011e024e,0x0112c1b0,0x017fdbc4,0x01413488,
-0x0135e634,0x01481932,0x0160f272,0x021b4518,0x02fb55a4,0x03fd9c4c,0x038b3fb8,0x0158e4fe,0x0091a0bd,0xfeca9ab2,0xff16d321,0xff44a411,0xff1dde54,0xff423166,0x000c5071,0x004a6cc6,0x00a3b0ce,0x003390ff,0x003de8f6,0x00001651,0x0073234e,0x008f040f,0x006906a0,0x0087385c,0x00ae5abd,
-0x015da8f2,0x00e43f0a,0x017e9b1a,0x01c1e82a,0x01815ea2,0x0212e4b8,0x02324504,0x01b8047e,0x01b02476,0x01fe1aa2,0x016800f0,0x013e4f1a,0x0149312a,0x01658e6e,0x0251e9b4,0x03c517ec,0x056dd090,0x04b0be88,0x01138e70,0xffde3843,0x00b6099d,0x01623686,0x01b6b970,0x011bddce,0xffe01285,
-0xff86f234,0xffd57d3c,0x008f6209,0x00317684,0x00738ef0,0x00534084,0x007d8e97,0x00c1b2bd,0x013eb63e,0x00c8a882,0x00b3bf70,0x014207a8,0x010fe0b0,0x017da77e,0x0157d2c2,0x002ce4d0,0xffe03820,0xff918597,0xffa73f0a,0xfee7f1ba,0xfdc3d8a8,0xfeb98374,0xff45cc63,0xfee31b1c,0x0079f7b3,
-0x0182b894,0x0229b8f8,0x01dfc246,0x017975ce,0x00bf16fc,0x00db6556,0xfd617624,0xfe87d4fe,0xff71eb9d,0xff8cb5c7,0x00ba1b2d,0x01497072,0x00ec0791,0xffab611b,0xffdd94ce,0xffcf50e7,0x003b55c6,0xffe089dd,0xffecec2b,0xffc7a771,0x0125d7e6,0x017b4390,0x012226be,0x00a9c68b,0x0054a32e,
-0x00def5cb,0x01a9bdba,0x0242b920,0x029a5734,0x022da0fc,0x021c3208,0x0199f14e,0x01a61f64,0x0084933c,0xff0d8c24,0xfe4866ce,0xff55c949,0x0269ce78,0x0365ac40,0x032e6d28,0x00056a33,0xfe8b3dfe,0x048400d8,0x055d8d40,0x038b60c8,0x030d13ac,0x032b158c,0x01eb6d6e,0x01217598,0xfffd7c7f,
-0x00904a26,0x00293728,0x000b54f6,0x0023a3bf,0x00293f3b,0xffe2d0b8,0x0098626c,0x00eb42f9,0x0153cc6c,0x0063c33b,0x008a8ff5,0x00234ae3,0x000b0ec5,0x002bd6c1,0xfface35a,0x0008fbe4,0x00eb673f,0x01b23586,0x0275a7a4,0x01a6bdf6,0x00765ae1,0xfe453320,0xff3692fd,0x03f3a450,0x03426784,
-0x03ea3e20,0x0676aa78,0x04b06680,0x036c5ed8,0x002fb96d,0xffbeca92,0x014022aa,0x00d1b2f2,0x01ce82f0,0x0181db9a,0x016b810a,0x007d4eca,0x0018146d,0x0075145e,0x003deb77,0x0023c273,0x0082b656,0x009087d0,0x00a4b09d,0x014d8d08,0x007d93c4,0x0017c8a2,0x00006b0a,0x00004985,0x000ac852,
-0x001abfe9,0x00b6f180,0x00d05156,0x0001d59b,0x00ab1938,0x0046a791,0x0092752f,0xff84753e,0x00b33cfc,0x032484fc,0x06e7cab8,0x091d5e60,0x0a0ed730,0x062e97e8,0x060b7d28,0x042e7e08,0x00dc643c,0x0161c1a2,0x0183cf90,0x0104876a,0x00d7583f,0x00f59a38,0x00e4e68f,0x010ffc00,0x018d2cd2,
-0x00ea82cc,0x00c8f511,0x00b248c7,0x011f2688,0x0112a0dc,0x00a9aa3b,0x00e8546f,0x00fd1df4,0x00ea6b76,0x008cb93e,0x007092cf,0x004aa07f,0x003ae866,0x00bb8dd0,0x0205dce0,0x02e37400,0x03e19b10,0x0563a068,0x03936594,0x03775ca0,0x048a1110,0x047e4e10,0x04a46178,0x04066da0,0x05377710,
-0x01c21854,0x01b1645e,0x00223b18,0x01100ca6,0x01150fda,0x016ab3d4,0x0144c7a4,0x00fa04f7,0x011e46aa,0x00fbefb9,0x00deadde,0x00c30d74,0x00ae39d7,0x005e37c7,0x008564b8,0x00f97185,0x0180dacc,0x010e85ae,0x00bdbd7e,0x00a825a4,0x00ee5948,0x012e1c36,0x01642b4e,0x02d85394,0x035fcba8,
-0x03113598,0x023bbda8,0x00e39aea,0xff84f52b,0xff7968be,0x001bb139,0x01a492c8,0x01ac51fa,0x01bed1e4,0x0169317c,0x01b2496e,0x0125f06e,0x00bff3a5,0x01250490,0x0133e6aa,0x00f5ca34,0x00df0a0a,0x00c7a6e2,0x00c9a7a5,0x00a0fb91,0x008f0eef,0x00a29a3d,0x00b77765,0x00c9af59,0x0128306e,
-0x00dab568,0x009e5089,0x0042d20b,0x00a77137,0x01434e0c,0x0154df32,0x00f450bf,0x00f08760,0x00a75448,0x008f9a87,0x00745947,0x007ada23,0x00922720,0x00d980b8,0x010e6f9c,0x01818442,0x01b24d8a,0x01ea968a,0x01d0fe24,0x01e4617a,0x02013ef8,0x019799e2,0x016fbf44,0x01b36f5c,0x00766e07,
-0x014fbd80,0x01383534,0x0133cf20,0x016d84a8,0x0173ff76,0x0184878a,0x01b5a9e8,0x01b704e6,0x01ca8802,0x01825e0e,0x019047e4,0x01257f50,0x00e54535,0x011442f8,0x009da6b8,0x001b34ea,0xffff79f6,0xffcf2ab7,0xffec5603,0xffebc057,0xffef8130,0xffed2823,0xffe088ce,0x000ecae3,0x003a899b,
-0x006f4943,0x00b5f34d,0x010c0c16,0x016e946a,0x0170856a,0x0171ab08,0x0173300c,0x0178aca0,0x0139534a,0x0160e3be,0x01b44018,0x013cb0de,0xffbca184,0x01d85fd6,0x0150b7ec,0x0025e1e6,0x001c56b4,0x001075cb,0xfff167e2,0xffee6536,0xffea22b1,0xffd91a45,0x01636096,0x01aee5b0,0xffb34b84,
-0x0115e1f2,0x01552700,0x00ae0782,0x00bfd69f,0x00bfe9f9,0x00b8264d,0x00b7938b,0x00b53b98,0x00a93087,0x00d380a2,0x00f30113,0x0110d6de,0x012554fa,0x013494c0,0x01511928,0x01437a16,0x01431bb0,0x013caa02,0x014a0368,0x01517670,0xfe6cd00a,0xfe912e6e,0xfe4337ee,0xfe609f1e,0xffa66c83,
-0x022966a4,0xfe0887f2,0xff841592,0x01ce2f90,0x01d62324,0x01dce1dc,0x01ea93aa,0x020a47dc,0x021bff7c,0x024c3b64,0xff988e70,0xfe3af3ba,0x02953f30,0xffce63ab,0xfe8ea31c,0xfe6011ca,0xfea7a3b0,0xfe72beaa,0xfe782e8e,0xfe701d4c,0xfe6952f2,0xfe5fffb4,0xfe5b1788,0xfe5229f2,0xfe5c4cb0,
-0xfe20c66a,0xfe167c96,0xfe43cde4,0xfe1a7802,0xfe2c8a00,0xfe7965e8,0xfe634d32,0xfe7102f6,0xfdeea6b4,0xffec8f4f,0xfe40c90e,0xfee4f814,0xff786409,0xff15d480,0xff5ad1ed,0xfed57f74,0xfe946bc8,0xfeda2322,0xfe853d50,0xfee4e736,0xff0edfe7,0xffa96ad1,0xff923e8b,0xff1409a5,0xff4eaae5,
-0x00b75cd9,0xfe6fee58,0xfe7ea812,0xfe28bd90,0xfe152da8,0xfdf55a54,0xfdedd9d4,0xfdeb09a8,0xfdf2caa8,0xfde7bc0c,0xfdfda0b4,0xfd6a5b1c,0xfd4afa84,0xfdc70244,0xfd56b6a8,0xfd933ff0,0xfe61edd2,0xfe387494,0xfe2b08ac,0xfe0acfaa,0xfe3285ca,0xfe8a7e22,0xff1ebfd8,0xff831017,0xffd64fb9,
-0xfff6c6ab,0xffe101db,0xff95b50d,0xff82ee90,0xff4302d6,0xfff58086,0xffdc8e59,0x00006d24,0xffba0965,0xfffc15f0,0xffe50bcd,0xffb14851,0xff115aaf,0xfe53af0c,0xfe1145f0,0xfdd3a4d8,0xfdbd9af0,0xfd9e076c,0xfd7254d8,0xfd5b7d58,0xfd14e2f4,0xfd620600,0xfc1c1e94,0xfbd7bb90,0xfce58740,
-0xfbe5e210,0xfc8859c0,0xfe65c7d2,0xfde7c3dc,0xfea85016,0xfe30fcfc,0xfde588e4,0xfde4f738,0xfe95b496,0xff642af4,0x00228d42,0x00c97867,0x001c057b,0x000ecbf5,0x00087cb3,0x00835456,0x0057df44,0x00ab8286,0x0059e21b,0x004f9cbe,0x00a88e07,0x0051edde,0x008e7eea,0xff85be26,0xfe5d4e1a,
-0xfdac6d18,0xfd11e24c,0xfcc45210,0xfc984ab0,0xfcb82658,0xfcaa1850,0xfcb00400,0xfd24aec0,0xfb19a058,0xfaab1028,0xfc4246d0,0xfaf71ef0,0xfc103b28,0xff05b366,0xfe6fcf30,0xfb592330,0xfd283c94,0xff85a666,0xffc6569f,0xffbf3181,0xff9a173c,0xff651e6c,0x000b2eb6,0xfffe8672,0x000c0053,
-0x00212bbc,0x002a21a9,0x007591c7,0x00fa15f5,0x0044d61f,0x001a5a44,0x00896ee0,0xff93dea5,0xff36fa92,0xfe2621ce,0xfd8a7ec0,0xfe51fe3a,0xfea78e80,0xfee13664,0xff04f3be,0xfe884b0a,0xfd9d4f04,0xfd053280,0xfbd8b158,0xfd8dbf8c,0xfda9a55c,0xfcdc0d04,0xfc54a99c,0xfc0456dc,0xfbb7f2c0,
-0xfb4b2bc8,0xfd6a6150,0xfd1bcfd0,0xfcb57d64,0xfd8c6bec,0xfedc66e0,0x0028e458,0x008c5c68,0xff712377,0xffc9a8b2,0xffa9598c,0x000ea9d3,0xffea1d8f,0xffdcadd3,0xffe362c0,0x00bac79d,0x00a35a29,0x00286816,0x002f93c2,0x00934ba0,0xff3b41dc,0xfdaea540,0xfd12c770,0xfc44d73c,0xfcfb5edc,
-0xfe10b4b0,0xfeb7efcc,0xffd930e7,0xff63b0fe,0xfd2c4888,0xfd173540,0xfcf99170,0xff0abc2b,0xfe4c7c58,0xfe496134,0xfe390868,0xfdf257dc,0x01f2fd68,0x0389e3f8,0x046f5f98,0x037c710c,0x03913804,0x014ce614,0x009007fa,0xffa7a569,0xfff70779,0xffcc4b54,0xffd87a3a,0xffe1ad81,0xffbce135,
-0xffcf35aa,0xff6d2885,0xff8b82ca,0x014b6fb6,0xffc4d509,0xff01bbf0,0xfece6772,0xff7aff47,0xff674d06,0xfeb5497e,0xfd5da06c,0xfbd73bf0,0xf9f943d0,0xfafa9720,0xfb48ee00,0xfb1a1960,0xfa6f3578,0xf9053128,0xf9485388,0xf55be120,0xf63116f0,0xf97a20c8,0xff41d762,0xfd36813c,0x00c5aa84,
-0x0089a128,0x001cb9f2,0x016c1c5a,0x0109a9ac,0x014ebdf4,0x00d5d6f4,0x000df20e,0xffd649ad,0x00245deb,0xfff4ae4b,0x0009bc95,0x0070b632,0x0032d9c1,0x005da998,0x0130b686,0xfffec58b,0xffeb4481,0xff58109f,0xfdeed8e8,0xfd3842d4,0xfd3e7b3c,0xfd0c0c94,0xfda6dc34,0xfe3cfde8,0xfe485a38,
-0xfd68eb64,0xfc8b8b10,0xfb8d3c10,0xfc24a050,0x000e2941,0xfdae2484,0xfc649b94,0xfa807d58,0xfc174f28,0xfab00cf0,0xfe78ce72,0x021a2070,0x00e99059,0x009dfbb5,0x00cec663,0x007b04ff,0x00352167,0x009ea4a3,0x009f1e23,0x011493a2,0x00965e0a,0x0070e932,0x004925e4,0x00b4d8a6,0x00b6a907,
-0x008e9457,0xfff62057,0x00132adb,0xff788bc4,0xff631514,0xff8eeb22,0xff2bea57,0xfe69df1a,0xfddaff8c,0xfd37a58c,0xfe031252,0xfe15c9a6,0xfd49b158,0xfe2aaf32,0xfe1fb622,0xfe6ad03e,0xfc13de88,0xfb0557d8,0xfa763c70,0xfabca4f8,0xfd6d168c,0xfe2f649a,0x0092d496,0xffefb36c,0x00ba6202,
-0x0091f342,0x009dbd7a,0x00af00b1,0x004ba7e3,0x0058777f,0x009ecca0,0x005a1117,0x0027517b,0x00155136,0x003a536b,0x0062dfac,0x005626d0,0x00c2fd1c,0x00d97cf4,0x00ae1733,0xfff3e989,0xffbd53b9,0xfffb697d,0x009a521c,0x00f211da,0x00fc96fc,0x00b37c2d,0x005de1d7,0xffdb7f75,0xffe74e33,
-0xff2d5185,0xfdc7c858,0xfed3273e,0xfeb36608,0xfdb8214c,0xfdc7a538,0xff4767e8,0xff76fa54,0xffbc7368,0xffa38030,0x0029d8b1,0x00202948,0x0048f421,0x0054513f,0x0082e6f3,0x0034eb36,0x00472f9b,0x002f585a,0x00e7955e,0x00deaa5c,0x00aa6aa1,0x000f3c00,0xffc72cb5,0xffccb746,0xffea0554,
-0xff743eb6,0xff71fdc5,0xffdc57db,0xfff4dc3d,0xffd9cffb,0xffc1c2be,0xffd4d137,0xff78f6e4,0xff4362c2,0xff0a0e64,0xff0a0fb9,0xff330f2a,0xff3989c6,0xff384f57,0xff326317,0xff566aed,0xff6bd102,0xffea4762,0xffefc682,0x01aa37c6,0x0045284b,0x00aaeb43,0x00ba8989,0x004406d8,0x005fc2d1,
-0xfff6d470,0xffe44e51,0x0019a0b4,0xffb9d4fc,0xffb327f1,0xffaed2d7,0x0000dc70,0x001ac74f,0xffaf00ac,0xffd7e157,0x0042e0c6,0xffe8d1dd,0x0036db83,0x001b3f09,0x002e8f51,0x003935f9,0x00464c7e,0x00569322,0x00245c1d,0xffed7ce7,0xffaa99a6,0xff6a017a,0xff1b9062,0xfedb650e,0xff10fb73,
-0xff499f3d,0xff7d4553,0xffa5e749,0xffc28c69,0xff9503ca,0xffe980c3,0x00b462f2,0x0218a5e8,0xff77e426,0x008053c3,0x01d783f2,0x01ee1734,0x01f87f4e,0x01f7f562,0x02159a0c,0x02241ad0,0x022c7788,0x005c3557,0xff7b6f5e,0x01efa152,0x0061a9d6,0xffaf1759,0xffb8349a,0xffcea477,0xffc79b95,
-0xffd062a6,0xffd59981,0xffdade38,0xffe8423e,0xffcb8989,0xffb96cbf,0xffa73c3f,0xff91429c,0xff7c521c,0xff4d0db1,0xff701e3a,0xff7c6247,0xff8cafa4,0xff9bc299,0xff85b901,0x01b0f354,0x0136c3e8,0x020f7d94,0x00a0eb36,0xfef61932,0xfcebce58,0x0168d880,0xff676f4f,0xfd6b4c20,0xfd3d6d10,
-0xfd336f88,0xfd4f8720,0xfd14de80,0xfd119db8,0xfd215238,0xff5e76e8,0x013edb74,0xfce2dc88,0xff36158f,0x00bc1dab,0x02264fdc,0x01874a36,0x01bf4d44,0x01c8488a,0x01c5b808,0x01c13130,0x01b0b586,0x01b0d3fa,0x01b613de,0x01d0b392,0x01c94c72,0x01d2ef52,0x01f16eb6,0x01dc0808,0x01b11424,
-0x014373bc,0x015fb878,0x00ed4bba,0x01ba6daa,0xfe4931fc,0x013dee22,0x0000b12f,0x0028999f,0x0100d16c,0x00ceff49,0x0150af84,0x0130145e,0x007fbde2,0x01183fec,0x01049e08,0x012346e0,0x005c9e2d,0x00a6a23e,0x01047f04,0x01196094,0xfef68d8e,0x020009e4,0x0205cd28,0x021e0ec0,0x024bd9d4,
-0x02489220,0x0235ed18,0x01ff7110,0x01fcfa30,0x02090a4c,0x024da790,0x023b9444,0x02722afc,0x02c2c4b8,0x02b66c0c,0x023c4518,0x0105ae66,0x00f0e3f4,0x00b4bfe2,0x016d6300,0x002a8631,0x00926ea9,0xff7066a8,0x003e24b6,0x0067483b,0x00bcaf32,0x001e6cb3,0x007afe06,0xffe47df1,0x00c84a9e,
-0xfff72470,0x0127fd04,0x006c5ef1,0x0106919c,0x00e06e0f,0x00fbbc26,0x00bf6708,0x018d0bd2,0x0277e668,0x025a0c98,0x02e11a6c,0x02d0fde0,0x02c5a870,0x027e08ac,0x02575190,0x026dd0d8,0x031884d8,0x02f98f90,0x0355a1cc,0x03bc4f98,0x033eec58,0x021cc1d0,0xffda2121,0x0041af69,0x001981df,
-0x011add10,0xffed2530,0x008f1311,0xffbeabb3,0x0080e2cd,0x00c3ba90,0x00e04bd9,0x0078d109,0x002b1322,0x003b2341,0x003e8a5f,0x00a469dd,0x012f895e,0x00f76b30,0x0158467e,0x00d00f95,0x01a1b348,0x00c739ef,0x01ab9a76,0x02e2b4d4,0x031b0280,0x03c568cc,0x03c51fa4,0x03a1c2a0,0x0325bd3c,
-0x02e1906c,0x02fd761c,0x03e1632c,0x039d1480,0x0451cc40,0x05332e08,0x04a432f8,0x02b19de0,0xff58a5e1,0xff2b5fc3,0x01c3990a,0x002a1c29,0x005e9635,0x00b3d5f2,0xfef08854,0xff48f8c4,0xffe44fb6,0x00309ea7,0x0025bbc6,0x005cf300,0x0042997d,0x003a02aa,0x007dbd7b,0x00ec08f7,0x0086a235,
-0x00b095a3,0x00a3eed9,0x012d5e34,0x002b8a85,0x00fa0d71,0x022aceb0,0x00e191fb,0x00c23925,0x0138db28,0x013bdff6,0x004cefda,0x00b8162a,0x01050c94,0x0195711c,0x0365a498,0x03c4de14,0x02c655cc,0x027f1f38,0x01e1c9a8,0x0081ffc0,0x00b9b886,0xffef1a23,0xfef44a3a,0xfea954b8,0xff656c56,
-0x0117dcb2,0x00d5b1cb,0x00bd44b0,0xffad4ea4,0x00359987,0x0019b371,0x0036a3cb,0x00236c67,0x000a02aa,0x005377bd,0x012cf60c,0x01397746,0x00e4b25d,0x008a6c00,0xffab18aa,0x009fa753,0x02680820,0x02ed0e00,0x0436c328,0x026c8894,0x015f15d0,0x008297f2,0xff719b71,0xfece2d86,0xfd8759c4,
-0xfee88896,0xffd56708,0x013add48,0x00f9023d,0x00a2d2fb,0x00419c4c,0x0084f23e,0x01e396a8,0x02f25340,0x02ebe044,0x02d43738,0x02b9ecac,0x00fda1a3,0x001d9340,0x0003428f,0x001b0649,0x0020a9d2,0x00236e0a,0x0040ea93,0xffea70f8,0x0019a9b3,0xffa07671,0x0051d5ed,0x01cddd3e,0x01289b04,
-0x008d7dd4,0x0088a814,0x008c125e,0xffad2bb2,0xffde73de,0x01bbe652,0x03355330,0x0335eab8,0x03e264fc,0x02def8bc,0x003c7899,0x00dd7f8b,0x0221dd78,0x056b4440,0x0308bc20,0x02018064,0x01c8ab9e,0x00b5f8da,0x041c7eb8,0x00a73f67,0x00ae5a5c,0x01b41f64,0x017d0dee,0x01f98100,0x01808784,
-0x011b385e,0x00156f39,0xffdbf880,0x001126b5,0x002d9884,0x002a89e8,0x008a9f0f,0x0047fe9e,0x00551ae4,0x018e082a,0x003aa3c4,0xff48afc3,0xffe897fb,0x00b202a5,0x011fb6f2,0x0181d9d6,0x01124398,0x00b95139,0x00073475,0x011c29d4,0x00920ada,0xfe5fb85c,0xfdaa89dc,0xfe74d51c,0x02749620,
-0x04e70548,0x07cba128,0x0a919ad0,0x064c1258,0x057995d8,0x01e80984,0xfea82b24,0x00629791,0x0103e0a2,0x0075b8eb,0x00a4c988,0x00e1a24d,0x00e1625a,0x014e719e,0x013d956e,0x00e251a9,0x00b1df44,0x008cdaf3,0x00963ce1,0x009a5a2c,0x00db38d5,0x009cd084,0xfff8a8e1,0x00387eb1,0xffacefec,
-0xfef8db1e,0xff05cf62,0xfec2bcee,0xff693bcd,0x00737e33,0x00df80c4,0x016b7d44,0x0260f794,0x03ae1338,0x04f4b610,0x06d0a638,0x06416ca0,0x05292740,0x04588210,0x04c2c418,0x019e599e,0x00d6ebae,0xfef4da56,0x0047ccdb,0x007502bb,0x00e128ab,0x011d2f6c,0x00cf59d8,0x00cc5eab,0x00a81ce6,
-0x00ff6dc7,0x009030e7,0x008020e5,0x00a4e46d,0x00f9a942,0x00fe6151,0x00b209b5,0x0093833a,0x008d66af,0x007694b4,0x013f453e,0x01e1d352,0x0267b25c,0x02f28c14,0x02fed61c,0x02fe7ab4,0x026c75ac,0x01c150fe,0x00aac69c,0x0160bcb0,0x022df978,0x03518098,0x028b0628,0x025a4a0c,0x020fe178,
-0x01621f2c,0x018f91d0,0x00f1e89e,0x0068cb78,0x00cc2ad5,0x00429fe8,0x00764c38,0x00841fb2,0x00cae8d8,0x0062b4da,0x00a7931c,0x002dcc58,0x00d07252,0x006d5efd,0x00cb1eca,0x00508502,0x004379d7,0xfff3d66a,0xfff3666e,0xffe9ce58,0x0027c978,0x005d6b0f,0x00218772,0x001dfa0d,0xfffb9fb8,
-0xffebde64,0xffddcc1d,0x005f9ae3,0x00f1700a,0x01748478,0x01da8d72,0x02025c54,0x024c34e4,0x01efefc6,0x01a4b938,0x017c8d5c,0x0154c66a,0x0130e5d6,0x01330bb0,0xff9f7517,0x00f58ab2,0x0081e772,0x0075fef5,0x00d7a582,0x00bf968d,0x011525f2,0x0124c0e8,0x00c0bc77,0x012bb5e6,0x0130019a,
-0x0122d436,0x00b1d4b3,0x00bf0f60,0x01098bac,0x00da2e51,0x00129674,0x00b5e7b6,0x0084e79d,0x009a3bbe,0x00a2dc7f,0x00a723a3,0x00b0ea08,0x00a27c31,0x00dd343c,0x01061de6,0x013ffb66,0x0162894c,0x019c7c10,0x01e63f10,0x01c56eb0,0x01ac80fc,0x0182bfba,0x015a4302,0x013e9a44,0x017c8762,
-0x00aa559b,0xffc84e5e,0xfedde86c,0x01073d52,0xffdb118c,0xfee4f79a,0xfed082f4,0xfebea5c6,0xfed4b23c,0xfea11e20,0xfe883c6c,0xfe85bb52,0xffeb098a,0x00fccbcd,0xfe9db46c,0xffd79e11,0x00a9c507,0x013daa20,0x010e157c,0x0118e0b6,0x010f209c,0x010ecb16,0x010e3a9a,0x0109c24c,0x012335f6,
-0x01342bf6,0x0144b192,0x016085a8,0x0174e248,0x019205c0,0x0175113e,0x0169fee8,0x0161a802,0x015ba816,0x017d740e,0xfeb84516,0xfee483e0,0xfe371b3e,0x00533d31,0x01e5afbc,0x02cb8fc0,0xff941050,0x019c7102,0x02e8a354,0x02fb2c78,0x02ef47a0,0x02984400,0x02ea9bfc,0x02f6a5b8,0x02f86468,
-0x01b4ed56,0xffea322d,0x031def28,0x01db9880,0x0079d872,0xfe3d716e,0xfee200d6,0xfeaaaf22,0xfea4c36c,0xfea4bcca,0xfea00f8e,0xfe99c87c,0xfe996036,0xfe998128,0xfe9e8f66,0xfe95478c,0xfe999386,0xfeb0f57e,0xfeaaaee4,0xfebcc4e8,0xfefeb90c,0xfec1eb02,0xfe99b84e,0xfeb4c756,0x01e15cce,
-0xfef2b910,0x000f9f9c,0x0069fe32,0xffc712c4,0x0008d8a3,0xff42d2dd,0xff6ade40,0x001e735c,0xff76407e,0xff7ed20a,0xffe0d340,0x00805bf2,0x004227d4,0x0032701a,0xfff38b69,0x0222c770,0xfef3fa1a,0xfe74e36c,0xfe712538,0xfe328d0a,0xfe36bc7c,0xfe31ac7c,0xfe36c51c,0xfe473a6e,0xfe49a204,
-0xfe45159e,0xfe23d25e,0xfe375804,0xfe7ce23c,0xfe830ef2,0xfec404c2,0xff5a0c78,0xfed0573a,0xfe0ebc4a,0xff0caa47,0x004a7ea2,0xffd8185a,0x0021d645,0x0045ed74,0x0071ee76,0x005c3f5c,0x00993356,0xffa545c0,0x005da670,0xff234071,0x0080912b,0x00116ac4,0x00dfc9c0,0x005450d0,0x0076b892,
-0x008bc04c,0x00f51235,0xffa7658e,0xfe1b6cb0,0xfe3dc182,0xfdda4a78,0xfde64fa4,0xfdcef710,0xfdbd89ac,0xfdb6087c,0xfdb474f8,0xfdc9a52c,0xfd878df0,0xfdb1918c,0xfe3635f2,0xfe4170e0,0xfecd2b2c,0xffc70432,0xfe8681d2,0xfd9a9114,0xff5677f8,0x002f95d5,0xff37f11c,0xff44753e,0x004583b0,
-0x0069e9fc,0x009bbf56,0x001ef714,0x0002a946,0xffaa0485,0x00374d91,0x0031be40,0x00801ae1,0x0052e5fe,0x002d6813,0x01365c40,0x00573916,0x01649d70,0xffcd6e27,0xfdee3110,0xfddd8fe0,0xfd21961c,0xfd1eb088,0xfd11352c,0xfd467f68,0xfd7bab10,0xfd953c04,0xfd56e604,0xfcc19de4,0xfd3db920,
-0xfe29b49c,0xfe97bb5e,0xffa3d75e,0x010a36da,0xfefe956e,0xfbbceeb8,0xfd83f204,0x01bee6d6,0x016731d0,0x0049e7f9,0x003e170e,0xffd3e48c,0x0039ae40,0xffcb33fa,0xfffb4644,0x00402a23,0xffeea92e,0x002ac454,0x00f9c951,0x007bb6c4,0x0014461f,0x0098bd6a,0xff7631aa,0x0074d327,0xffa41603,
-0xfd73d3e0,0xfe434e9e,0xfdc11e20,0xff993ecb,0xff9184aa,0xfe964d2a,0xfcd89464,0xfc5d06ec,0xfcf06978,0xfeb46cac,0xfe6b51fa,0xfc8409c8,0xfc598874,0xfbb43218,0xfb0dfd90,0xfc1747c8,0xfdbb6f00,0xfd0e6524,0xfe362358,0xfe6e1f96,0xffb0be9a,0x003d29c8,0x0017355a,0xffb249f5,0xfff3fa75,
-0xfffe5a9b,0x000e6d5f,0x000b34af,0xfffdf1e8,0x000fb93b,0x002622f0,0x005198fd,0x0114a658,0x009da115,0x0139fcf0,0xffc421ad,0xfe56cbfe,0xfe5dc6b2,0xfd2c47bc,0xfda0df80,0xfe32cf24,0xff7188e1,0xff3575e7,0xfed2acfe,0xfdfa2d14,0xfe951aa4,0xffe82907,0x01d6ba98,0x00e8b140,0x01036d64,
-0x01b1a104,0x00081354,0xff3b521a,0x00eaefc7,0x03841810,0x029a1fb0,0x02b0ca3c,0x004d3f25,0x001ac6b8,0xffdcfbfa,0xfff57e3b,0xffd15514,0x00130474,0x0006bcba,0xffa84ec2,0x00402c63,0xff9426cd,0xffadb80b,0x01ed71c6,0x0024417a,0xfff77159,0xff5d3cb8,0xfec8dff6,0xff7bc917,0xff7b13b5,
-0xfe8be670,0xfd81178c,0xfc8a0bec,0xfb84fff8,0xfb60c9c8,0xfba11f50,0xfb806b38,0xfa730f38,0xf9d53f70,0xf8b9ffc0,0xf8b2cbf0,0xf87b4098,0xfce83c7c,0x02d3d728,0x028995dc,0x017d1a0a,0x010fa410,0x021568bc,0x0147a108,0x0117679c,0x00a4606d,0x000f71ba,0xfff6eaa7,0x00092485,0xffff43de,
-0xfffb1561,0x006047f0,0xfffbe8c8,0x0033e730,0x010b28d6,0xff9ded0c,0xfffda958,0xff4447f9,0xfe1dd886,0xfe120970,0xfdfed23c,0xfe261b38,0xfece2176,0xfff65b00,0x00a23d84,0x00a604cd,0xff5d28f4,0xff202f00,0xfe902cbe,0xfea0f4e2,0xfec799be,0xff4b80c5,0xff9c0911,0x029a8a78,0xfdf22ad0,
-0x00fd8476,0x02fa88cc,0x0161e5fe,0x01330cea,0x0127112a,0x00f07a24,0x0133916c,0x01434638,0x00da7506,0x00e8b047,0x00c9dc37,0x00a67a1c,0x0044bbc4,0x00636068,0x007bd529,0x00a37d1d,0x003b0e70,0x0079ee68,0xff62168b,0xff32e3a2,0xff3ee162,0xfe96dab4,0xff378de6,0xff3cced4,0xff0052d8,
-0xfe7ef4ac,0xfe627c26,0xfe2245ac,0xfffee936,0x00e79d26,0x00ff2db5,0xffdf139c,0xfee4a2b0,0xfdd16630,0xfe4410a2,0xff60a03e,0x0081a464,0x01bbfd40,0x01283a4c,0x0173aa72,0x0110e7b6,0x00984ed4,0x008f57b8,0x001a983a,0x001768a6,0x001507c0,0x005abe8b,0x0055c102,0x0094a393,0x00b3a093,
-0x00b8b8a1,0x0081e456,0x00ac0839,0x00954006,0x00bf9679,0x005d0eb8,0x00708aff,0x00d0dcc2,0x01038680,0x0121443c,0x016a172e,0x00ec6aa3,0x010bdc62,0x016c37d4,0x00fcd000,0x002fb3dd,0xfef02a2e,0xfeb46444,0xff027a0b,0xff5c7a82,0xff930596,0xff1c9c50,0xffcb82a2,0x00bc20d8,0x005f76eb,
-0x00d3f7b2,0x00a61020,0x00ac2640,0x009a31ec,0x00e64dc4,0x008b9285,0x00f8d3fe,0x0042628b,0x00c0f278,0x00575e04,0x007cf9ee,0x003f75a5,0x0064d320,0x001c9104,0x000c7847,0xff52e426,0xfefeee94,0xff312189,0xff1db75d,0xff399234,0xff492a48,0xff66961c,0xff6c3a2e,0xff6dbdfb,0xff7ddb69,
-0xff6a8747,0xff7002ee,0xff465009,0xff6cf8db,0xff5bd55c,0xff2e7ddf,0xff571084,0x002eda5b,0x004d6eaa,0x018d99da,0x004df398,0x00cce798,0x00b8524c,0x004e41dc,0x005ba9cc,0x000fa469,0x003596bb,0x00b7ce87,0x0060cef2,0x00456b95,0x0076483c,0x00b8101f,0x007eb735,0x004752fa,0x0026bbf4,
-0x00c95e75,0xffec0193,0x00216621,0x002af25d,0x00305f2c,0x0042e6f3,0x004a76dc,0x00524e8f,0x001fc379,0xfff15d17,0xffc07a76,0xff8cea4b,0xff588e37,0xff287cf2,0xff5a045d,0xff984c4d,0xffd10f67,0x0015617a,0x000ee1a9,0xffe31fae,0x00dd018f,0x018d9016,0x01cf7158,0x0076b169,0x016c94ee,
-0x01dead20,0x01fd5a20,0x0208ad18,0x01e580b0,0x02200d50,0x023b5bcc,0x023c8108,0x017a195a,0x00804d30,0x01fab99a,0x01627d14,0x00a6aa02,0xffc3c34e,0xfffc9570,0xffed1965,0xfff2a479,0xffee1626,0xffec51b5,0xfff4d7c4,0xffdf8583,0xffd4499c,0xffca55a6,0xffc46f94,0xffc1673a,0xffb00131,
-0xffcbbc6b,0xffd6cefb,0xffe3847b,0xffec05df,0x00123e5d,0x008e3865,0x0056ca98,0x012700fc,0xfed238b0,0xfdca5094,0xfe01b602,0xff814206,0xfe198678,0xfdecbd38,0xfdcf2014,0xfdd1ffcc,0xfe21e44a,0xfddf58b4,0xfde5c294,0xfe1a3566,0xfe104ede,0xff50706e,0xfe1ca308,0xfe0c529c,0xfedf93ce,
-0x0120b7f8,0x0082e987,0x00999665,0x009d230b,0x009ddb6a,0x0097164e,0x007ddb76,0x00833d8f,0x00890520,0x009c01d1,0x0095961d,0x00926603,0x00a1449c,0x00648c78,0x0050e6bf,0x0055e6f4,0x005b1e54,0x0051a364,0x00742ddc,0xfde1889c,0x000d4057,0xfef61e6e,0xff6d5ed1,0x001134c5,0xffeb7cef,
-0x00594989,0xffee62af,0xff2f2f4b,0xffb7351e,0xfff8df1e,0xffde89c9,0xff9782b4,0xffe3c0e3,0xffb228e2,0x00253db9,0xfe719dd6,0x0084cbe6,0x00d85830,0x00946c87,0x00ca193c,0x00d033e1,0x00c9ba7e,0x0085dfcc,0x008c9f88,0x009114f1,0x00a9165c,0x00a8f22e,0x0090d867,0x008a870f,0xffe74778,
-0xffae3faa,0xffe86141,0xffeb0fcc,0x003a99ae,0x0066026c,0xfedeb704,0xff87a789,0xff036d1e,0xffc0f96d,0xfff59de8,0x0020716c,0xff9fbb80,0x0034a7b9,0xff251e9e,0x00559021,0xff6df6b5,0x0051a558,0xffbe7133,0x00428a01,0x003cd6b5,0x0039910c,0xff8f62a6,0x0072e074,0x01408dc4,0x00bc1010,
-0x010dcb96,0x00f64742,0x00dc5f77,0x0035805b,0x00653ac8,0x00818f71,0x00e2e3e2,0x00dae367,0x00a5f0c1,0x00c62ffb,0xff3e4226,0xfed26cb0,0xffc5a72f,0xff85f9c7,0x001b84b8,0xffd5e00d,0xfe80875e,0xff1bbc5f,0xfefafd66,0x002c1e4f,0x00a0322c,0x00b9544b,0x00841e89,0x001b5bcf,0x00462863,
-0x002641a9,0x006e58be,0x011e19b0,0x00bd5505,0x012a0bfc,0x00793ce5,0x0168e362,0xfff0affd,0x00cd7d27,0x01686ea2,0x00b46189,0x0158e814,0x01502ec0,0x011d0d7c,0x0033949f,0x006f891f,0x00aed30b,0x00f2a65e,0x00c882e5,0x005ba883,0x003cbbff,0xfdf38ddc,0xfd5db524,0xff17ae76,0xfef88908,
-0x0064c90b,0xfd5f9f14,0xfe9da7ae,0x0005de6b,0xfecba3ba,0xff2643c6,0xffb03785,0x002d2acb,0xff859049,0xffa78d67,0x0052013c,0xfffd08e2,0x00331841,0x009b01cf,0x0085b2b1,0x00ae7038,0x001b0b14,0x00abd4fc,0xff6c83f0,0x001f1619,0x0248bbd4,0x017a0152,0x01b5cb12,0x0055c10f,0x002f9362,
-0x0051ed78,0x00475ed3,0x00e03229,0x0153b6d8,0x02bc4e80,0x02908410,0x009c22ad,0x009beb13,0xffdc0253,0xfed0986e,0xff2ab3d3,0x014c858c,0xff03ce93,0xfda3e380,0xfebd9696,0x005d39b0,0xffc6fb3c,0xffe48b86,0xffabf342,0xffdde7bd,0xffd41a2e,0xfff99a88,0x00040652,0xfffafd07,0x00431b89,
-0x004b0ae0,0x006905f1,0x00de0ff1,0x005fe5f3,0xff70b351,0xff8346b7,0x0044a378,0xfff8724e,0x00ce3696,0x005d9589,0xffc883f1,0xfefdd310,0xfdff0398,0xfe11b004,0xfeffeff6,0xff606a97,0xff006b93,0xfdf333e8,0xfd94a23c,0xfe8cf8d2,0x009b293e,0x00cbf5ba,0xfd28830c,0xff6a3871,0x0172901c,
-0x01c313c2,0x00db9473,0x00027f04,0xff914afe,0x000b59c2,0xfff5882a,0x002159cb,0x001d3a8e,0x00508ac3,0xffef87a0,0x0048416a,0xff8de09d,0x000b1cac,0x011a1940,0x00c73bfe,0xffe45029,0x0044fbcc,0x00dd990b,0x000ec731,0x000fc434,0x00e184f0,0x01858868,0x01d7c18c,0x00cb27e3,0x005a22e9,
-0xffe32b77,0x01f3da9c,0x01f6829a,0xff9bde8a,0xfe7891d6,0xfc3ab784,0xf9f37b40,0xfb852b78,0x03839fa0,0x01ff36f4,0x01bc9cea,0x01a2c69e,0x01ff6e9e,0x018737ce,0x0125e656,0x00d75a34,0x00489cb3,0x0020f2ee,0xffea5c5b,0xfff49513,0xffeecd70,0x005a5542,0x001d276f,0x00077d3e,0x00cb68b4,
-0xffe469b9,0xfee1d1ee,0xff73bf8a,0xfff185e0,0xffd92c21,0xffec637f,0xffc7e605,0xff83f3c1,0xffb085b1,0xfecd3196,0xfe3fdbdc,0xfd2ba734,0xfda74610,0xfde5ffb4,0xfead3d0e,0x0022fb9b,0x01df2edc,0x0335b408,0x037f0ed4,0xffa64139,0xfe6325dc,0xfe8a3262,0xffcac36f,0x00797c45,0x0055cb45,
-0x00baca4e,0x010ca1cc,0x00b2be3a,0x00e85540,0x00a32c93,0x00fef9dd,0x00c8c440,0x001aa0f6,0x0035963f,0x0064757a,0x00eae11e,0x00443a7c,0xff577e7b,0xffbdc5ae,0xffb9959a,0xff39e959,0xff0afbc6,0xff35d34f,0xfedb1a4c,0xfe7e2654,0xfd9b5164,0xfd99c0c0,0xfe07d658,0x00527003,0x0205fde8,
-0x0341f124,0x02f8c3c4,0x01f49962,0x00e06017,0xffae5204,0x0110aa98,0x001308ad,0xffe06b2f,0x005f64a3,0x0078bb7f,0x006de6ba,0x00934b31,0x0053ae1c,0x004acde6,0x0037e42c,0x003baf9d,0x005ed3c8,0x00997a59,0x00d82afe,0x00c542a4,0x00638a7e,0x0026b778,0x003ca650,0x008ab48d,0x009d82df,
-0x011e3f74,0x014f380c,0x014be228,0x00dc921c,0x00b32e9f,0x00cd0b19,0x0112b6b2,0x01b4b0a2,0x026dadec,0x02349744,0x0215a014,0x02807b48,0x0176105c,0x00da39e7,0x00d1f666,0x00bc9f10,0x0043bbc9,0xffde65c1,0xff6b595b,0xfff64de4,0xffe5762c,0x002490fa,0x005a9f5e,0x0094ed53,0x006101b5,
-0x00a31a07,0x003a7fe2,0x00936dcb,0x0027100b,0x0036e324,0x002e840f,0x0075787c,0x0081824e,0x00468cac,0xff9ed16e,0x002e08ea,0x009cac20,0x00230467,0x0025f37a,0x00209514,0x00323869,0x0024ab13,0x002aaa90,0x00117ccd,0x000d0303,0x0035ac13,0x005b61a7,0x008499ae,0x0055234c,0x002e6c68,
-0x00028e90,0xffe5423a,0x00b0d99c,0x008623c7,0xffda0983,0x007e9e44,0x001ba8de,0x001ede59,0x004e5967,0x0035cd0f,0x00709465,0x00443218,0xffee797b,0x002cbcf6,0x0062be12,0x0040c372,0x00111e65,0x003095dc,0x00305286,0x005f3a82,0xffdf4066,0x00a328b5,0x00a2eacd,0x00a1819b,0x00ae2972,
-0x00a86bb3,0x00a6f451,0x00a930fc,0x00d38701,0x00f5712f,0x0100866e,0x01048218,0x01012b0e,0x010702f6,0x00f89c3d,0x00e6ae28,0x00d6c262,0x00be3fd3,0x00cb5e89,0x00f4a4a6,0xfff199df,0xff81706b,0xffbb9b24,0x003011f0,0xff88015f,0xff88caf0,0xff7da15c,0xff7d162d,0xffa4d1d9,0xff7fe678,
-0xff6f8236,0xff7cd8f7,0xff6e7ff5,0x00207c3d,0xff7bc5fa,0xff77cdb7,0xfffd2c73,0x00f8a56c,0x00bd29fb,0x00ca73a0,0x00c93f19,0x00cb38a0,0x00ceca3a,0x00cc4132,0x00cdb952,0x00cf19df,0x00d95965,0x00e2fef2,0x00ece65f,0x00f75d7c,0x00e947de,0x00e25547,0x00dea555,0x00d5a8f4,0x010406e0,
-0x00322f71,0x001b9545,0xffcf8ec4,0x0192ac44,0x01d5c83c,0x00816736,0x014e1660,0x01cd7cfe,0x0101b840,0x01021abe,0x00ef46f0,0x009537a2,0x00c3661c,0x00c0d47e,0x00a2ef7d,0x01d1ea80,0x01712422,0x0094737e,0x01ca7470,0x01a41d1a,0xffe87a3e,0x002dd6f0,0x0025d888,0x001ae33e,0x001cc055,
-0x001f47c1,0x0027aea8,0x002a63e0,0x002d9501,0x002a2be3,0x003c4976,0x004429e8,0x00438817,0x004b84bd,0x0046841c,0x003e1cf4,0x0022bbe1,0xffdc5d74,0x00534122,0x01566b16,0x0062ee98,0x00bfe604,0x00dd1aca,0x00bdcddb,0x00b43647,0x0068c845,0x00abce8d,0x0101fe06,0x00b8123a,0x007d39f6,
-0x00cd84d7,0x00d78c21,0x00c744d2,0x0130b1d8,0x00c448fb,0x017034d6,0x00a63fa1,0x0011f2ee,0x004879df,0x001f7719,0x0026283a,0x0019c300,0x001a0940,0x00130886,0x001db839,0x00224320,0x005f0333,0x008cc157,0x009622c8,0x00d0516d,0x00bcfd2c,0x00777155,0x003dae06,0xff6d0e82,0x00437cbd,
-0x0104e3f8,0x0093ba5d,0x0067f94f,0x00c45cdf,0x00db278e,0x00ae5ef1,0x00ca8bb4,0x0005b4c2,0x00a308c0,0xffc95891,0x008181e0,0x008f9f9a,0x011665aa,0x00f2e67d,0x00f3b5ab,0x01097d38,0x0182d2dc,0x00e41ed4,0xffe94c07,0x00260d87,0xffed6bcf,0xffedac61,0xffe94c66,0x00176aa7,0x00167504,
-0x003a24c4,0x001996d0,0x009ce8fd,0x00e509f4,0x00b52f77,0x012d0324,0x00d3b479,0x000c2e81,0xffe72aa8,0xff4b30e4,0x002aaf0f,0x004f8210,0xffa9c714,0xff5b7467,0x007c4b1a,0x008f9277,0x007b6dd3,0x00449da8,0x0016cdf3,0xffb606d2,0x0001c906,0x00426fb2,0x0086c3f2,0x007ae4f0,0x0083af1b,
-0x01732e50,0x00e9eeb1,0x01a5fcc4,0x01012c86,0xffdfed2d,0x004a7840,0x000837c2,0x0011f033,0x000bc4c1,0xfff5d6b0,0xffefd1ef,0xfff4cd2a,0xffb952f5,0x00bd5fcd,0x0170b66e,0x01746e08,0x026b7d2c,0x01f2db3c,0x003da21c,0xffe7e78e,0xfe8e6b68,0xff7a0a47,0x026c2d70,0x02466738,0x00747e54,
-0x007bf8ea,0x00726a24,0x00e1c3ef,0xffdfc94b,0xffbb3ee5,0x0034c533,0xfff0a961,0x0021ffbe,0x00b6c20d,0x00e52c4e,0x00c0d9b4,0x00ca90e5,0x00898f44,0x018bcc6e,0x015fa4e0,0xffa1285b,0xff792d8f,0xfecd1860,0xff581104,0xfebd6418,0xfdd533fc,0xfe6b3420,0xff03b92d,0xff9a9d93,0x00a6b917,
-0x00a6e445,0xffa9b4bc,0xff397cbf,0xfea295b0,0xfe2184d2,0xfef7f1c2,0xfeedeebc,0xfe68878a,0xffd2addd,0xffc519d3,0x01411bde,0x00237e8e,0xff4e6cae,0xff7e74b4,0xff9bd2b9,0xffc6706c,0xffd871e8,0xfff93da5,0xfff9eb12,0xfff1e3aa,0xffe78e94,0x00544a1c,0x018e66ba,0x00b579ad,0x0090208f,
-0x006a4c81,0x00976933,0x012fdb9c,0x013c2e3a,0x016fc54a,0x0120e4fa,0x0074c160,0xff7f41df,0xff274cd3,0xff0f0819,0x0086d365,0x00e0b19b,0x0063b4fc,0x013ca856,0x017a5460,0x00fac8b8,0x00882141,0xfc9e6520,0xfe5f7aae,0x00bbdb01,0x0071167b,0x0088c849,0xffac5de4,0x0005efb3,0x0047f4bc,
-0x003611de,0x0003003a,0xfffed785,0x001e7273,0xffcb79d3,0x0025174e,0xffea90ca,0x0034a74b,0x016dd838,0x00ceb5f9,0x01289c42,0x007d9243,0x00110854,0x007c84c5,0x004078f2,0x0089dbcd,0x00b9fdeb,0x01724c6a,0xfffce642,0xff12b981,0xfe376d48,0xfeff7028,0xffe107ac,0x008f7da7,0x0162e918,
-0x00281322,0xfe5112cc,0xfce4429c,0x06e43dd8,0x03b48094,0x028133fc,0x027c9ff0,0x0237c3e4,0x01c96774,0x010e45d6,0x00a1ad95,0x006c3e4f,0x003fe064,0x00175a1e,0xfffe4176,0xfff76b97,0x0093473f,0x005261c4,0x006b769a,0x00eb5eb0,0x004d05eb,0x004a69b5,0xffb98325,0xffa2ab5c,0xffff84ed,
-0x00047db4,0x010fa24c,0x011058a2,0x00e4c970,0xffab1e05,0xff8f5a0b,0x00065e75,0x011f2020,0x00f3cc60,0xfe8fb04a,0x012cbadc,0x036b40a4,0x061dad50,0x079c9d38,0x029f48fc,0x02955b28,0x015f2dc8,0x0128434e,0x017e5700,0x011aa342,0x011b2254,0x0190825c,0x0151f506,0x00f63f5f,0x00d4efa7,
-0x0100b552,0x00c6b841,0x0040f786,0x003c976a,0x0061031e,0x00c88a46,0x00a99a63,0x00c10976,0x0035f4d3,0x0029b7f8,0x0008cede,0xff5e4612,0xff76f858,0xff25c5db,0xff65ebcd,0xfeaf6c88,0xff6344b1,0x01283b32,0x01a84f64,0x02d7afe0,0x03a5067c,0x04c82bb8,0x04b87598,0x03b93a2c,0x03175770,
-0x01e2c51a,0x02538f24,0x01c2e31c,0x01d64b9e,0x0180d846,0x012f7eaa,0x00b03853,0x00ac4852,0x0043f72c,0x001d7ee7,0xffedc316,0x005f145c,0x00ac2e65,0x00c91a47,0x00d6fef2,0x00d86588,0x00e61b6d,0x00938782,0x007e0ff2,0x0085332b,0x006e4ec6,0x007abcb2,0x007b1403,0x01150d92,0x015f9288,
-0x012d158c,0x018e1abc,0x01aa49b6,0x01c881da,0x01cbc8ca,0x01a84a54,0x01717232,0x0095d618,0x006ee2d5,0x00cdebd8,0x01b405d6,0x002f83d9,0x0079f057,0x010eebb0,0x011c13d8,0x014eb7ca,0x012c02cc,0x0111c10a,0x00fe5429,0x0102ed34,0x00cdf70e,0x00f56bc5,0x00831cbf,0x00729b73,0x0042f323,
-0x007ace62,0x00aba8ff,0x00f20334,0x00f8e092,0x0122d468,0x00e9fb3a,0x009a9797,0x00b26eb4,0x0093dad1,0x007c2f43,0x0061a50e,0x003fa452,0x00752c16,0x00abc62b,0x00f25d10,0x00d67767,0x00b89ec6,0x00a76826,0x00a04b8e,0x008a5248,0x0040f255,0x00477146,0x00cbe1fe,0x00e23d0f,0x00c72f22,
-0x009e8d43,0x00c730c2,0x00b0a6a6,0x00a2979d,0x009a7870,0x008b53c4,0x00b80ff4,0x00f8bbbc,0x00ed45b4,0x00cd2daa,0x00f2711d,0x00e32004,0x00a51069,0x00af545b,0x006bdde4,0x00943ed4,0x003ed203,0x0025d164,0x002e822c,0x0027d5c6,0x002e74ac,0x0034226b,0x0038ceda,0x0042798e,0x004f69ae,
-0x006bdfcb,0x008fcee9,0x00bf9872,0x00e8e6a6,0x00da1ab2,0x00dc8103,0x00e31942,0x00ead2c9,0x009dc499,0x008878e7,0x016ba626,0x017eaa96,0x00c6a6f3,0x01437e86,0x017d6042,0x00fe66c7,0x0106d116,0x0105b7e4,0x00e3a7c5,0x00f8c613,0x00ffa671,0x00f535e5,0x01957d68,0x0148329a,0x00e2023e,
-0x017ab0a6,0x0145862c,0x0061b5be,0x0082d191,0x007c9c10,0x0076ce36,0x00723061,0x006bd271,0x00627fb6,0x0072dba3,0x00805238,0x008a42bc,0x0098499c,0x00a39120,0x00bb87ef,0x00b37c76,0x00af3629,0x00a6554e,0x00a3b18f,0x00bc7826,0xff1ab962,0xff282875,0xff3c5d49,0xfe7017fc,0xfef1adb4,
-0x00bf903c,0xfe789ee0,0xfef05344,0x0064ae2c,0x0068d4dc,0x006c995b,0x0090998f,0x008c53c9,0x00990ca8,0x00c6f8f6,0xfef19770,0xfe7cfca4,0x010893b0,0xff0ecb59,0xfe7ff73e,0xff3ac20f,0xff352e61,0xff173586,0xff14fc84,0xff1818e1,0xff159e00,0xff070d5a,0xff149962,0xff1634b5,0xff11bcb8,
-0xff03b900,0xfef7d49a,0xfef353b0,0xfeda2566,0xfee2a50c,0xff1d45e1,0xff08b55f,0xff27ee42,0xfedbf804,0xff695dcf,0xff0e5de1,0xfefb4b42,0xff8ad550,0xff785c57,0xff759843,0xff57877f,0xff00c8a2,0xfed842a8,0xfecfc5c6,0xff275365,0xff21120a,0xff901927,0xff9f16d7,0xff2c535a,0xff7280c9,
-0xffc8afec,0xfef42cce,0xff1fa93b,0xfecbb8b0,0xfec6f74a,0xfec81544,0xfece512c,0xfeb7bf04,0xfee05d94,0xfed8f804,0xfeb4eb98,0xfe9306ca,0xfe6ba6c6,0xfe5c8022,0xfe110406,0xfe42ab6c,0xfefd1f2e,0xfed6511e,0xfefa2770,0xff1ee522,0xfec8e34e,0xff346902,0xff46febd,0xffddd20c,0x00094a5b,
-0xffdeb092,0xffd7e76a,0xffd87531,0xff3c48a0,0xff7f1033,0xff9075ad,0xffb4d473,0xffe4c4ff,0xffe97283,0xfff686e6,0xffd3708c,0xff6cfabc,0xff5327bc,0xff10bf76,0xfeb1bb00,0xfe828cdc,0xfe8e5492,0xfe84950c,0xfe39a306,0xfe8b3a04,0xfe90afee,0xfe5c6ff8,0xfe17a5fc,0xfdc9b270,0xfdaf797c,
-0xfd2c86b0,0xfd9bfe50,0xff023278,0xfe7d3320,0xff7bb3d7,0xffa35d82,0xff40c6d7,0xff5af389,0xff3d2396,0x0028584f,0x00972cec,0x00ab6073,0x00659953,0x0007c618,0x0000bbb5,0x00065faa,0x0028a829,0x00b58fa8,0x007efae0,0x00941efe,0x00882323,0x009b4d8d,0x0024eb3c,0xffc1c183,0xff0fb834,
-0xfe454c68,0xfdf5a288,0xfdee42c0,0xfdee8f50,0xfdb3d464,0xfe2d9d56,0xfe2c3480,0xfdba4348,0xfd3ec0b8,0xfcc4997c,0xfc9c8d10,0xfbecc438,0xfcff09c8,0xff699d8c,0xfed0e458,0xfcd5d308,0xfcb408e8,0xfe78d390,0xffbeb751,0xffc101f5,0x000eb0df,0x0013bb6a,0x0043db93,0xffa8eed7,0xff81ee7e,
-0xfffe6a32,0xffd54ae7,0x000ca283,0x00647d0e,0x00a8dee7,0x00b2a5b0,0x002eed23,0x00107a98,0xffa74030,0xff07c46a,0xff140909,0xff6ebd93,0xfffced76,0xff401d51,0xff2581cb,0xff26f2dc,0xff9a4862,0xffa8865e,0xffa611cc,0xff991e52,0xfed789b4,0xfde1dc4c,0xfcd659f8,0xfc5457f0,0xfc950c58,
-0xfc748b28,0x0063a636,0xfe2f0c8e,0xfdb331c8,0xfebc4104,0xffe07652,0xff618f18,0xff255de1,0xff2277b9,0xff838145,0xff9a9919,0xffaa78b0,0xfffd4ad8,0xffecab5a,0xfff40dfa,0xffb009d0,0xffd2cca8,0x00a4a2f1,0x004eff59,0x002922fd,0xff91b1a1,0xfef7477c,0xfe51207c,0xfde0c0c8,0xfecfea5e,
-0xfedc8322,0xfdfe87b4,0xfe73df48,0xfeb3c99c,0xfecbdf52,0xff948ec5,0xff6aacf8,0xfe61812e,0xfe42baac,0xfea91cb8,0xfffb774c,0x00283506,0xfaf97a30,0xfcc332d4,0xff5738ee,0xffcdcbe0,0xff6a46e0,0xff4a6321,0xff8d8c44,0x000862e8,0xfff095d1,0xfff5c2b8,0xffc276d7,0xffe43ca0,0xffb0d9a6,
-0xfff8fd24,0xff97b4bf,0xffbcae81,0x00930693,0x00552cab,0xffe11668,0xffa9eb9b,0x00271c1c,0x00118bd0,0xffcc5621,0xff33f9a0,0xfe422060,0xfd62ff80,0xfd1db934,0xfd81d53c,0xfe01c1aa,0xfec19cd6,0xfdf70af8,0xfb16c3e0,0xfa417160,0xf9415e90,0xf8cc6f80,0xf9e86938,0x01e7d5be,0x03f22c5c,
-0x0331ca54,0x024cc2cc,0x0264c228,0x017fdd2c,0x0106ff18,0x004d4639,0x005da24a,0x0036ab11,0xffee7089,0xffee1ae7,0xfff6bc8e,0x002ba9a4,0x00197aba,0x0027a1f6,0x006b9116,0x0054abe2,0x000b0e95,0xff92e9e9,0xff72b33e,0xff112cb2,0xfec1a564,0xff3431b0,0xfef1fa68,0xfe7d1a82,0xfcbac644,
-0xfc530ca8,0xfcf2bd14,0xfe4934dc,0xfe630daa,0xfd6d2b94,0xfb2e4360,0xfad2c708,0xfbfeddf0,0xff79f53a,0xfc3e7a68,0xfe0a08e0,0x008cdf11,0x006bfbfa,0x00aa4869,0x00b566bc,0x00be0509,0x00b31923,0x00a8737f,0x0084c5c7,0x005834bc,0x00a78929,0x007e1b38,0x000ed3e9,0x000c450e,0x00290b10,
-0x00ab6861,0xfff907f4,0xffb398ff,0xff7a134a,0xff7c77a3,0xff746bcd,0xff279aaa,0xfe5d94fc,0xfd6afb50,0xfc8d5cd8,0xfbcf3190,0xfbd0ce80,0xfc617b9c,0xfd822de8,0xfe796892,0xff4aea4a,0xff58a722,0xff19c105,0xfebfe54a,0xfd0f48f0,0xff6bb913,0xff7bc0df,0x01059b4a,0x00872c3e,0x00abb24a,
-0x004a899c,0x0049847a,0x0062419e,0x00163f75,0x00120611,0x001682e9,0x001cead7,0x0051c052,0x0072d656,0x0077cfa7,0x00490eba,0x0038d54e,0x00329d88,0x00602fe2,0x003ac1de,0xffc8f2ea,0xff630e9a,0xff0c0529,0xff2c8f0f,0xff60d9ce,0xff580b6d,0x0079194d,0x0155e5b0,0x01f46a06,0x01e97d1e,
-0x014f4702,0xfff7596b,0xffc87a07,0xff70cbc0,0xff28e3da,0xff58eac1,0xffbb4806,0xffe0476f,0xffc5ce4e,0xfff4717a,0x005d5670,0x006cb60b,0x008bb024,0x00997625,0x00a47d21,0x009c36fc,0x006eab89,0x0079f1fd,0x0073c2d0,0x00537a68,0x006ad43f,0x0085f539,0x00ae54a5,0x008bbd53,0x00449f71,
-0x002e6bb3,0x0084d5fb,0x00bf6c7b,0x00f4f902,0x00c76c84,0x00a58499,0x007a30e4,0x003e4699,0xfff4bd9e,0xffca55b5,0xff63b127,0xff2a1db3,0xfef05372,0xff26a1b2,0xff408ef3,0xff5093e1,0xff8079c5,0xfffb1d89,0xffdaab18,0x00a8c694,0x00105509,0x001d17bb,0x002c9e6b,0xfffba87a,0xfffef6ad,
-0xffd4086b,0xffaef298,0xffa50953,0xff8a28b2,0xffabb33d,0xff9c3374,0xffdbcd4a,0x000472aa,0xffc33e12,0x0012abd9,0x003f43a6,0x008937d4,0x009c5f1a,0x005ecd2d,0x0059299a,0x004317ac,0x003a5d11,0x003747f2,0x00386e1d,0x0030a1c9,0x001ea0b3,0x00058975,0xffe4791b,0xffb14dda,0xffbce576,
-0xffc3140e,0xffd57e18,0xffdde2ba,0xffdbc789,0xffc8e67e,0xff980b53,0xfff7b826,0x01174070,0xff780c63,0xffeb9b59,0x00df7a35,0x00e530cd,0x00ec015d,0x01003300,0x00ffbf0d,0x010393ce,0x010d578c,0xffc6b772,0xff8040e0,0x010b0a3e,0xfff46213,0xffb7bc3d,0x00412122,0x0022b945,0x001d5ed8,
-0x0016086c,0x0010d33c,0x000ac462,0x0000d9b5,0xfff30cfd,0xffe56e71,0xffd8700e,0xffcf2fb5,0xffc7b973,0xffb92729,0xffc6917d,0xffcaef85,0xffd0220a,0xffcd7bb8,0xffcb1493,0x0137fbac,0x00f15c25,0x015be83a,0x010e0e9e,0x0000ea42,0xfe14ad44,0x017ba95c,0x00498681,0xfe8f66d8,0xfe7c26f0,
-0xfe6e8534,0xfe5a9144,0xfe415392,0xfe39f1c0,0xfe2f12f6,0x003bb153,0x0161d384,0xfe0a589e,0x0013155d,0x010d029c,0x015c14bc,0x011258b8,0x01378c0c,0x0134e7a0,0x013ba79a,0x013e65d8,0x01395de2,0x01467092,0x014b0cbc,0x0148d870,0x01543da6,0x0158d362,0x0158aedc,0x015d1f14,0x01479896,
-0x01042e84,0x01141572,0x00e0ce48,0x018066de,0xff8f7b69,0x013588dc,0x00734c73,0x008d5be5,0x010564a0,0x00bdd71f,0x0114ad8a,0x01184cf4,0x00b04508,0x00fab001,0x00d1510c,0x00eabb68,0x0088fd91,0x00b79d4c,0x01112392,0x00e2b8c1,0xffa5a74d,0x016d346e,0x0150aa74,0x017c4a26,0x0182db6a,
-0x018e8ed2,0x018c1b1a,0x0173faa8,0x01928150,0x019ae3f6,0x01983d36,0x01b1f52e,0x01c33090,0x01bfca52,0x01ce9ef2,0x018df2cc,0x00e5f45a,0x00f116c1,0x00c9aa64,0x013b7a48,0x00d6b62a,0x00e1d993,0xfff41ecb,0x00b16a3a,0x00bb7254,0x00966dd3,0x00743939,0x0066f84c,0x00156a1e,0x00575fbb,
-0xfffffcd2,0x00a9ae28,0x00acc145,0x010cb458,0x00d1f774,0x00c6ebad,0x00c3e94d,0x011d96d6,0x0183dee6,0x01997ab6,0x01c2409c,0x01de5ce6,0x01e8e6c6,0x01d2ffe4,0x02109094,0x022e0704,0x02278344,0x025e202c,0x02776304,0x025b86b8,0x026ab788,0x01d073bc,0x009fff79,0x00d4a0ed,0x00bea679,
-0x0168d882,0x010f886a,0x012ebe56,0x0016c404,0x00f12b1e,0x00f292ab,0x00a179f5,0x0097a8b4,0x0029be64,0xffe27d3d,0xffcd604a,0x0045ecc7,0x00b1d287,0x00eb902d,0x01287f84,0x00e2e036,0x01271bda,0x00ca9752,0x0134efc8,0x01c7c98a,0x021a42dc,0x02581c84,0x027fe24c,0x028a8f6c,0x02452fec,
-0x028dd230,0x028825cc,0x0273d2d8,0x02d887bc,0x02ff0d7c,0x02e7c07c,0x02eaa5f8,0x01ee5f0c,0x00446494,0x00745a95,0x01033060,0xfffc8848,0xffd8a022,0x005eed35,0xffdaf075,0x006261c5,0x00a72ae2,0x005c0d3c,0xffdede18,0xffc21030,0xfff670fa,0xffe7497a,0x002019a2,0x006ddb3e,0x00eff22d,
-0x01182f6c,0x007e2e07,0x0122af88,0x00e5d025,0x0133eea0,0x0196a24a,0x00d9345a,0x00c88753,0x00c0e3d9,0x008a59a9,0xffe9c48a,0x011741f4,0x01c2593a,0x027e86cc,0x0245742c,0x0252bdec,0x02bbbf6c,0x0216d944,0x01a92c7a,0x0126afd6,0x00b0f031,0x00c7fe8b,0xffe88215,0x00092c40,0x005ac6b8,
-0x010b91e6,0x0023cb6d,0xff8fc098,0xff636b08,0xffae54a2,0xffcde011,0xffb9fb6e,0x0016c2d4,0x00115975,0x00148451,0x0010cf50,0x0061f7c9,0x0139dc4a,0x00b3ee48,0x00329520,0x00cf7ab8,0x01d40348,0x0237a4ac,0x02d2ad88,0x01d77442,0x00c276bd,0xff973c3a,0xff5b8924,0xff8921b1,0x0075906e,
-0x00cec191,0x00f306d5,0x00266cd5,0x00fa6b64,0x00ef238d,0x006a156e,0x00bb6d0b,0xfc501eec,0xfd4d41a4,0xfe1f593e,0xff009e0c,0xff0f9536,0xff6cfbc4,0xffa712eb,0x00228e05,0x001955ae,0x00224809,0xffe7477c,0x00024323,0xffd4a950,0xffef640c,0xffff37d9,0x003929fe,0x007cc781,0x00f14960,
-0x011c023c,0x00bbdd14,0x0070fc8a,0x00372708,0x006467ed,0x01c196be,0x02838294,0x028fa8d8,0x026d3190,0x01f1af6a,0x0177e7ea,0x01ce5a06,0x02f4aad4,0x04140788,0x04353208,0x033b4c38,0x025fb4c0,0xfd4c49d8,0x05b2f738,0x040145e8,0x03a6bb34,0x038853dc,0x02666100,0x022179c4,0x0124cba0,
-0x006b6bbf,0x00687de4,0x002eab46,0x000014c5,0x0027310a,0x001ba3e6,0x0029a4b3,0x0035a467,0x0059b0a6,0x00a45412,0x00cc7d0b,0x00712b6b,0x003365a7,0x0148385e,0x01b0e6be,0x018ff3f0,0x01852952,0x00bb9eaa,0xff999348,0xff2eaa64,0xff490cf9,0xfff69ada,0x003e8892,0x0052c1b4,0x0018339d,
-0x00cf8bda,0x02eda288,0x07387bf8,0x05d42650,0x058c8c38,0x0284df6c,0xffcf1005,0x00f29c98,0x015ac66c,0x00e511d8,0x00f76890,0x01202502,0x00ea58e4,0x00ec9460,0x00a25bf7,0x00a18362,0x00819981,0x0081b42b,0x001fda18,0x001507a4,0x007c0d93,0x008c9b1b,0x0052d2d6,0x0009fc52,0xff6d9062,
-0xff20927e,0xff5cbf50,0xff06433a,0xff3d0372,0xff97368d,0xffb34061,0xfff03cdf,0x00ad207e,0x00c3bf8f,0x01eaefbc,0x03d34e08,0x058c3328,0x06673900,0x06c9f528,0x05eff3b8,0x021c58f0,0x01dcd9f6,0x007268e7,0x012215da,0x00b7b124,0x00cf75a1,0x00bb4554,0x009e06dc,0x00a57f13,0x00880f8a,
-0x008b6210,0x00566e33,0x006f2a57,0x008817ae,0x00d2facf,0x00f73a22,0x0113cf42,0x0064879f,0x0025f8d1,0xffeb99b3,0x001d9fa0,0x002ec9e4,0x0009e803,0x00a5c1e7,0x00dda373,0x00e69feb,0x017691a0,0x01a12db2,0x0186ea70,0x022808f8,0x02b819c0,0x03475aac,0x02576344,0x01e0df28,0x01b68394,
-0x01b8218e,0x0168acb0,0x013c67da,0x010136a8,0x0141797c,0x01081dc2,0x010d76e2,0x00f4820a,0x00fbed92,0x00c57f10,0x00e89b3e,0x00bacc0b,0x00f9512a,0x00869bad,0x00a9445f,0x008d97e9,0x00c1a718,0x00c3efd6,0x00db632e,0x00eefdda,0x012005f4,0x0142f7fe,0x01384604,0x012e1192,0x01250040,
-0x011d3e7a,0x010f05da,0x0159a8ae,0x019f4c0c,0x01e56e86,0x01b6f7d8,0x0177f2ca,0x0165d776,0x015f5d80,0x015bf428,0x0134b32c,0x013bd622,0x00ce0bfb,0x00cdc0cb,0xffc38607,0x0097af82,0x005d8a8f,0x004cbb09,0x008c3b57,0x0080d637,0x00b2d7f0,0x00d31f32,0x00a60c3d,0x00ea9efd,0x00e78463,
-0x00ebf67b,0x00b2e36a,0x00c33fe4,0x010fd902,0x00f67598,0x00870d67,0x0121f300,0x00d84817,0x00cbb544,0x00bb9897,0x009f8fa6,0x008bf1d5,0x006d7995,0x009d7c8c,0x00c5fc7c,0x01045d3c,0x013b546a,0x01813058,0x01b6b480,0x0181b01c,0x0152626a,0x012a80c6,0x0103b6ba,0x00cb9445,0x00e000dc,
-0x00c4daad,0x003b0d2f,0xff52f61e,0x00fc19ce,0x00559afb,0xff81471c,0xff70b8cb,0xff5f3faa,0xff5bae68,0xff3ca7cf,0xff2a694c,0xff1b9ede,0x006b6cd1,0x01101ad6,0xff49ec6d,0x00745c9a,0x00f7ff73,0x010f6a2e,0x00e7178a,0x00e69088,0x00d28963,0x00ca2260,0x00bfcaf0,0x00aab327,0x00c633a2,
-0x00d42ed7,0x00dd21ec,0x00eeb5c4,0x00fc4371,0x011d9142,0x01070ca0,0x00ff2449,0x00f23132,0x00e7c929,0x00f2a347,0xfee113a0,0xff15bdbc,0xfe92f678,0xffa84885,0x00e365c3,0x022be408,0xff2b8853,0x00ae5d48,0x0208a850,0x02234890,0x021d8c90,0x01eef9cc,0x022147bc,0x022b159c,0x023434b4,
-0x00b93aaf,0xff619b8a,0x0271053c,0x00d58c09,0xffb344d5,0xfe8bacd6,0xff004a88,0xfed2c79c,0xfec7ec6a,0xfecb45ea,0xfeccc32a,0xfeccab2c,0xfee11cf8,0xfee090e8,0xfed00c0a,0xfebb9c84,0xfeb27302,0xfeb8caaa,0xfeb31be4,0xfec6b712,0xff0d53b2,0xfef2a698,0xff096e7b,0xfed7f334,0x014b326a,
-0xff2a328f,0xffd0259c,0x0031824d,0xffb42d27,0xffc42b99,0xff57e814,0xff4fb024,0xff9cbc2f,0xff3120ae,0xff54ad9d,0xff793031,0x002f645d,0x000f28d9,0xffcb0c24,0xffa5b71f,0x012cc0b2,0xfec5fff0,0xfea2622a,0xfe86a49e,0xfe51bdd8,0xfe5dc6a0,0xfe6b3e2c,0xfe750816,0xfeb3807a,0xfeae98c8,
-0xfe7aeed8,0xfe4a2392,0xfe387a38,0xfe66546e,0xfe650e0a,0xfea902ee,0xff497030,0xff0986c3,0xfeeee838,0xff15af77,0xfff27ff1,0xffb5828f,0xffe34971,0x004a278f,0x00631997,0x000323a3,0x006896e2,0xffd2d04a,0xffd6440a,0xff34b3df,0x000e76c6,0xffa2329f,0x008a1073,0x003647ca,0x0038b205,
-0x00087364,0x0022b3bf,0xff377739,0xfe523838,0xfe537a70,0xfdd9b558,0xfdf9133c,0xfe02a1c8,0xfe030580,0xfe8ccbe6,0xfe8295e4,0xfe0bfa76,0xfd9f1ff0,0xfd661db8,0xfdb3f09c,0xfdb22424,0xfe34bede,0xff6ffd00,0xff18a7c2,0xff136fdb,0xffb42b96,0x008bcaf1,0xffc8ff73,0xff788a4b,0x0060ddbb,
-0x00a09da1,0x007f3b9c,0x007370c5,0x001d0c8f,0xff9f9276,0xffd64c85,0xfff0231c,0x00358f82,0x008f0e44,0x0078597b,0x00c912ad,0x000dac1b,0x008b84da,0xff3f6734,0xfe003eca,0xfdc805a0,0xfcfc8184,0xfd301c70,0xfd4eaebc,0xfd707fa8,0xfe57e9de,0xfe3f884a,0xfd7a9b68,0xfced14c4,0xfcd6b438,
-0xfd780760,0xfdcd72e4,0xfebdda40,0x005b0f22,0xffac085a,0xfc97ede8,0xfd76c620,0xfee80842,0xff7b9955,0x0091e4a6,0x00baa7c6,0x004e788f,0xfffd1e75,0xffa03c2d,0xff7a52b0,0xffd57700,0xffbb0bc5,0xfff79755,0x00657fc7,0x00bb97d1,0x0091166f,0x004b169f,0xffc5f0b1,0x004c85fd,0xff95746d,
-0xfe094894,0xfea366de,0xfe9efabe,0xff4a8835,0xff4caeb7,0xff477677,0xfeec07c0,0xfee65540,0xff222371,0xfdf7d424,0xfd0318d0,0xfc8d4738,0xfbf84100,0xfc2500c8,0xfcfe3a74,0xfd38b214,0xfed63bb8,0xfef400ca,0xff86cbcc,0xff793d0b,0xff202230,0xff617ea2,0xff66c352,0xff8e5d5a,0xff8dd572,
-0xffa2b425,0xff9a6367,0x000c6a2b,0x00127f22,0xffe51ee9,0xff956320,0xffbd3dba,0x008e0d04,0x00861d68,0x00f9a907,0xffc89d44,0xfe5d03ca,0xfdf02f10,0xfcc9b210,0xfd731e94,0xfdfd6ef4,0xfec0ebc6,0xff170026,0xff469450,0x0002ea60,0xffe436c7,0x001b7d04,0x0029f835,0x00353514,0x00132311,
-0xfffe3947,0xff231ab8,0xfc2da19c,0xfc86bd88,0xfe51094a,0xfeb95054,0xff6eed06,0xff5810df,0xffbca1d2,0xffbd7de5,0xffe0382d,0xfff276c1,0xffd1ef95,0xffcf51ec,0xffbaaeb6,0xffe1a1ea,0xffdce6b1,0xff86890c,0xffeebb23,0xffeb71dc,0x001c3729,0xff80c156,0xff28a895,0xff8b2f1a,0xff7dd9be,
-0xfe35c120,0xfcb2b8bc,0xfb9c75e0,0xfb653530,0xfc3940e4,0xfe1ce0fc,0xfd3003cc,0xfbce7d88,0xfa63d508,0xfa1fca40,0xfafb4838,0xfbf509f8,0xfc50505c,0x00a31a03,0x039cdc50,0x03bd5994,0x028a3b28,0x0289a16c,0x0147390c,0x00cbfacd,0xfffcc090,0x003892e9,0x00131211,0xffea90b0,0x0004393f,
-0x0000d3c1,0xffdb6a32,0xffe3ad95,0x0016fd08,0x0004516b,0x0062c38d,0x00dc4c8d,0xff9fa88d,0xff2fb1c2,0xfed815da,0xfe72dca4,0xfe28ef60,0xfe430668,0xfe761a8e,0xfe85cdc2,0xfea2a85a,0xfeed0c70,0xfe9384d8,0xfe4d101c,0xfe0bd910,0xfae8c868,0xf9ce2068,0xfacab388,0xfe2ec088,0xfef1cc18,
-0x00cc2ddb,0x02a6d7b0,0x017930e6,0x011c96ee,0x0135adb6,0x00f5e726,0x00d1d51a,0x00df8e51,0x0073a3b3,0x0046854a,0x003814c3,0x003b1a9f,0x0070d0a5,0x0015e81f,0xfffe49df,0x00148524,0xfff1e89d,0x00242dd9,0xfef856c4,0xfeacd708,0xfede69f6,0xfecceaa4,0xfedb7fec,0xfe943a44,0xfd79d39c,
-0xfdef21ec,0xfd7dea44,0xfc18b3cc,0xfca2136c,0xfcdca640,0xfd2d7108,0xfe427cf8,0xff5e361c,0x000ec0e6,0xffa471e6,0xff24e84f,0x0008b04c,0x018b7e00,0x00cdcd9c,0x00cd521a,0x0087b576,0x0052c047,0x0062f2fa,0x00561848,0x006b0c77,0x0055b2d8,0x00480731,0x002f2155,0x00461789,0x007549c3,
-0x009e1743,0x00a41583,0x0079898c,0x002b6add,0xfffa8363,0xff4f7387,0xfee275ca,0xfeac6f56,0xfe8b2a5e,0xfeaacb76,0xff1fbf84,0xffbd6fd6,0x00639fda,0x0101d4b8,0x0146f01a,0x00e03725,0xffb1b66e,0xffc0e404,0xff7a92f1,0xff3f4081,0xff58565d,0xffd8ab7a,0x006561ab,0x00c6eb32,0x008d808a,
-0x00fedca9,0x00ccecc9,0x00b9faf0,0x0090f9ac,0x00d875fa,0x00a5dcfa,0x00f982a8,0x00965d65,0x00e5f041,0x009c2458,0x00b91498,0x008bc59e,0x00a2c585,0x0094ae02,0x00a0d454,0x0048bc62,0x003a151f,0x00899faa,0x00a8dad9,0x00d201fb,0x00e83be3,0x01081e06,0x00c8e03e,0x00899fb5,0x0052a72b,
-0xffd45f49,0xff8b47ea,0xff3caf3f,0xff71f5c3,0xff8e8a9d,0xff8ea138,0xffdcb625,0xffc6b02e,0xffc3abfe,0x00ece830,0xffeae0d3,0x003f912d,0x004498e2,0xfff6804e,0x000308d4,0xffca7fa6,0xffd22f74,0x002179d3,0xffe31688,0xffe828eb,0x0007f143,0x006ecbc7,0x008a16fa,0x00648fc5,0x0090b381,
-0x01208498,0x00e05445,0x00f4ff68,0x00cf4f09,0x00b69aec,0x00a52913,0x0093fe47,0x008a671d,0x00572117,0x0028fa5b,0xfffc60a4,0xffcfc2f5,0xff993c20,0xff4ca34d,0xff60691f,0xff738b44,0xff8df750,0xffab295f,0xffa6e74f,0xff78f2a0,0x000ad87f,0x00b07489,0x016b2276,0xffbdd2bf,0x009cf892,
-0x015eedbe,0x0173ded8,0x01805ce6,0x0174a956,0x019abda2,0x01ae0d2a,0x01b0c266,0x00b52774,0xfff08e55,0x01ad4094,0x00d764ff,0x004437ba,0xfff0bd75,0x00008af5,0xfff50d42,0xfff6438f,0xffef8e98,0xffe89390,0xffe73432,0xffcd36cd,0xffb78665,0xff9ea28d,0xff892e08,0xff78930e,0xff5f4e5f,
-0xff7a87dc,0xff84e88c,0xff8f2e4e,0xff91323c,0xff7c0e56,0x01022282,0x00d26275,0x016ddd20,0xffcbcad4,0xfea65cd4,0xfdf4bba0,0x00681289,0xfef550de,0xfe0db2c2,0xfdfea9fc,0xfdfc0668,0xfe22d9f6,0xfdec68f0,0xfdeb8724,0xfdfe8050,0xfee39e0c,0x0038690e,0xfdfd1704,0xfecbd8f8,0xffc08d95,
-0x015c991e,0x00e12939,0x0102b728,0x00ffb9fa,0x0106d2b2,0x01092266,0x00fe77ed,0x0111a120,0x01131e7c,0x01089af0,0x01008560,0x00fd2c9a,0x010d941c,0x00f36ac4,0x00e4d2bc,0x00cb97ad,0x00e6062c,0x00f1e05f,0x0115e576,0xfeac7ee8,0x00cb35a4,0xffacc288,0xfff02aa3,0x00897e2d,0x004277c6,
-0x00ce9c60,0x008feba2,0xffd2a379,0x0051551c,0x00624466,0x004300c5,0x00044752,0x00480c5f,0x004a07f4,0x0069102b,0xfeb9a432,0x00d6a0d0,0x0124e58e,0x01162ad2,0x0136182e,0x01474a08,0x01515a44,0x012fa6f4,0x01633208,0x015e3b5a,0x013efafe,0x0132fb0e,0x012b5746,0x01503160,0x010b8cac,
-0x00e1bad2,0x00a96740,0x00c4d3bc,0x01071800,0x00c88f52,0xffdc38c8,0x003cb314,0xff65b63a,0x0045e593,0x0053a2e4,0x002e4c6c,0x000bf116,0x0074dc2d,0xff72263f,0x0069a339,0xff9a4a6e,0x003a6700,0x001654b2,0x009de93e,0x007e62a9,0x0045eb21,0xffc73d7c,0x006ec0b6,0x016b3958,0x012ce0b8,
-0x015bc2c8,0x017104e8,0x01840fc4,0x013213fe,0x01b76dc6,0x01bbbd5a,0x0173f0ae,0x014d9f56,0x01269c22,0x01866a36,0x00ee24b5,0x009f01c5,0x006c3cc0,0x00abed9c,0x00eef171,0x008ed0e7,0x0022f23d,0x00870323,0xff945298,0x008934ac,0x00e14aef,0x0083485d,0x00c8e16e,0x0045dabd,0xfff10db4,
-0xffc34ae4,0x00288fb8,0x0088e615,0x00fc2a9b,0x0152c7c2,0x006888e2,0x00e370c3,0xffaaae8d,0x0053aa21,0x0171792a,0x0148105a,0x01b3e45c,0x01eaae0c,0x01f780d2,0x0168dce4,0x02309c94,0x021893d0,0x01a37880,0x0188487a,0x016d1104,0x01ea1270,0x0109c1ce,0x008295e2,0x0039f7a0,0x004a74fe,
-0x01f3e34a,0xff14bae5,0xfd60392c,0xfeb17792,0xffcfbf00,0x00089d5f,0x004c25bf,0xfff267ee,0xffa632e0,0xff8e8c16,0xffda54df,0xffdf2d22,0x00171255,0x003d0586,0x00ac330f,0x00f81b0b,0x005c3a3f,0x00ffd751,0x000ca87d,0x00c7ca49,0x021e4a48,0x013f4d2a,0x01612ca4,0x004d8768,0x00594598,
-0x00cfcdf0,0x01b81e66,0x025c0f4c,0x03015ad8,0x01a0d112,0x00ed8df3,0x0115a3b2,0x0080e1f9,0x007649ef,0x00bb2b25,0x014ad4a2,0x009eb7ef,0x00c00b2e,0x0039f4a7,0x004f1bf3,0xffcb1307,0xff50dcb5,0xff819845,0xffc85abb,0xffbbbad3,0xffb9a1a6,0xffad6d0e,0x00183546,0x00222ea6,0x00152034,
-0x0018af1f,0x0022f0a2,0x003c1b71,0x007505e4,0xffe1f620,0x002afbd0,0x00d1000b,0x00937678,0x013a91aa,0x00a9f30f,0x001f8276,0xff9824fa,0xff28fbdb,0xff5f4586,0x0074b323,0x005c7f76,0x006643d8,0x0000e68a,0x005dd335,0x0055be3f,0x0003455d,0xff9ed223,0xfe4d2d24,0xfcffa5bc,0xfd273d9c,
-0xfe673d66,0xfec2a6ec,0xffa01829,0xffb40a6e,0xffd0c441,0xfff3a070,0x003d04a1,0xfff7cc8a,0x0023421a,0x0012a847,0xfff3a05f,0x0008f44b,0xfffe90f9,0xff771b95,0x00a40d39,0x0083bb5f,0x00621804,0x007dcf75,0xffb1dad1,0xffbec7fb,0x0050a0d6,0x00dfbaaf,0x01235c96,0x01952198,0x01cff822,
-0x01f12cee,0x01da0726,0x01c9617e,0x01605f0e,0x0151d9da,0x0158c436,0x015a7e90,0xff740bf0,0x0198b412,0x01e2b4e6,0x031b04ac,0x02e38d84,0x021f0588,0x016e7eea,0x00b82b00,0x003381b9,0x003ce5a5,0x000a9b69,0xffe1845f,0x0013e4cf,0x0004c7a0,0xffd56e7e,0xfffd3cbf,0xfff5be22,0xffd5a767,
-0x00a8ad02,0x00326b27,0xffe4b8c0,0x00cbcb18,0x00c976ca,0x00ddfa5c,0x003ddaf4,0xffb650c6,0xfee790de,0xff494be2,0xff17a815,0xfe8048f2,0xfe4a93fa,0xfec3a58e,0xfff7fcf5,0xffb71e22,0xfffde75b,0x01099222,0x00990155,0x04a29de0,0x01c379ae,0x000501e7,0x00fa8b97,0x010ad744,0x00db17f4,
-0x00f849d9,0x00e7775b,0x00a34985,0x00a84b4c,0x00310bdf,0x00319f23,0x004205d5,0x00989bbe,0x003391fa,0x00183492,0x0025c06d,0x001f64f4,0xff77327f,0xff72407c,0xff254d8e,0xfe9bef6e,0xfeb90586,0xfee7a79c,0xff2b2bd4,0xfefea94c,0xffe005cd,0xffe050db,0xff0793bb,0xff24f4c7,0xff5c5a8a,
-0x00305ac9,0x02124804,0x0382c560,0x04b50a28,0x048d55d0,0x016f1876,0x00a7f3b9,0xffbf3c00,0x00536e75,0x001d632d,0x00626e8c,0x00aa755e,0x00819473,0x00dd4514,0x00de184c,0x00d14a97,0x00970967,0x00850cdc,0x007ffe7c,0x009723bb,0x009573ff,0x008754eb,0x006129f6,0x00385012,0xffd6d019,
-0x001cc0df,0x00312dc9,0x00204b1e,0xff6d8a91,0xff32482d,0xff81419b,0xffedece9,0x004df545,0x00945fcd,0x016fc196,0x02545b80,0x0357dc24,0x030d5870,0x02779e10,0x01d35c2e,0x015476b2,0x01673c8e,0x0103279e,0x007c41c2,0x00cd8be0,0x0091fff2,0x009ac353,0x0082c86c,0x00824f4e,0x0061b8af,
-0x00a5721a,0x007d5e6e,0x00d83ff1,0x00884564,0x00a6ef2e,0x008cd920,0x00a55497,0x008fb730,0x009ab273,0x0078aa7b,0x011439ee,0x0168649a,0x0125dfc6,0x0141cd72,0x015f7d8c,0x01890c34,0x019c5bd6,0x01b4a77c,0x01cbce90,0x01de14cc,0x01b7acc8,0x018aa8b2,0x018c14be,0x014bc078,0x0137b258,
-0x012b90b4,0x012d890e,0x00a598cb,0x0097ef97,0xff8b0d68,0x00816be0,0x0019ba47,0x001b6845,0x006deb62,0x0058b345,0x00a49d32,0x0090d441,0x00434f05,0x008994ba,0x00acdbd1,0x009de20c,0x008251c3,0x00b84c92,0x00fc056b,0x01253d54,0x00c8d489,0x015a5e40,0x012b3eec,0x012ab830,0x0119097a,
-0x01084336,0x00f3ecc5,0x00de2e6a,0x00f4f7eb,0x01029404,0x0113b7c8,0x01213932,0x0132a554,0x0138b63c,0x01209026,0x00fc8809,0x00d8adf6,0x00b4a641,0x00ae479a,0x00dad3f4,0xfffb59ee,0xff6878f8,0xff1b0d8d,0x00539374,0xff82c27f,0xff168f92,0xff05a476,0xff03197f,0xff1e625c,0xfefe880c,
-0xfeef0452,0xfef143d6,0xff919672,0x005d120f,0xff2bffd9,0xffacbecd,0x0048bee3,0x00f2e76c,0x00c9592c,0x00d6b10f,0x00d6bb3f,0x00d8588d,0x00dbc882,0x00dc7f24,0x00dd2ad5,0x00da818f,0x00d80e75,0x00d948fe,0x00d90086,0x00df2579,0x00d36ef3,0x00cfd7ee,0x00cd0393,0x00c5deaa,0x00c704ff,
-0xffbba219,0xffcb5fe6,0xff45b019,0x00fd8360,0x01b6bba2,0x0160a20a,0x008f8bdb,0x0190f4a4,0x019cecbc,0x01b464b8,0x01a774e0,0x01542e70,0x0189808a,0x01895e46,0x016d26b4,0x0194a2b8,0x00be3ea9,0x0189bd28,0x019d2bc8,0x01028b30,0xff5817ff,0xffc16fc1,0xffad155f,0xffa2c0c8,0xffa74168,
-0xffae1d5b,0xffbc85c9,0xffc5467c,0xffbec5ec,0xff9eb677,0xffa4aa19,0xffa7f3e5,0xffb68a9c,0xffc0cf1c,0xffcc771b,0xffdeca4e,0xffc671b6,0xffb8be26,0xffca54ae,0x01b9bec0,0x00122f3b,0x008cb2a9,0x00adc723,0x00589e24,0x0058754c,0x000d7475,0x003fa71c,0x00929259,0x00349e25,0x0014164f,
-0x00461ce8,0x00a8f85a,0x008d6f4b,0x00bd07d5,0x00518e69,0x016189d8,0xffd4feed,0xff82ad94,0xffa4f1d0,0xff753443,0xff7a31b2,0xff8347eb,0xffa7b894,0xffc61b2a,0xffbc1f67,0xff79665a,0xff85625f,0xffa08508,0xffe4ae93,0x000a8752,0x002014ad,0x0024f45b,0xffff37e8,0xff799553,0xffa78530,
-0x00db9eaf,0x006b0bce,0x003b0e16,0x00aae0db,0x00ad6237,0x00466c49,0x00b9c62a,0x000fa167,0x0059c769,0xff963d8e,0x005bd75f,0xffff0843,0x00d6b772,0x00a766db,0x00bfb9ac,0x009070b6,0x00d606de,0x00007155,0xff44752f,0xff7ecd1e,0xff2bb16a,0xff3f0f32,0xff5f1daa,0xffb4f54e,0xffe87fcc,
-0xffca38c7,0xff1d3142,0xff3f6f74,0xff574210,0xffbc4f37,0x0020c891,0x004bceca,0x0025a330,0xffff43d9,0xff8cdf72,0x00019102,0x011f338c,0x005b2c72,0xff8970d7,0x0069f30a,0x009c4475,0x004aa6b7,0x0080e121,0x0040c0fe,0xff7da7af,0xffc179e3,0xffed1859,0xfff82d04,0x0095b356,0x0089ad4b,
-0x0113d0fe,0x0033d5ac,0x00c3ba60,0xffcdd5f6,0xff0a0ffa,0xff5b76b8,0xfede5ce4,0xfef82878,0xff21befe,0xff838197,0xffe9c387,0xffaa3cf0,0xfec3a482,0xff1e8564,0xffa0d19c,0x0075e33a,0x0124cc22,0x014d95ec,0x0097a66a,0x005b0595,0xfe97d494,0xff6ebd61,0xffa87e9b,0xffca1c78,0x0142fbcc,
-0x00e5695d,0x006f5947,0x002fe4fe,0xffc1917a,0xff949321,0xffc51ea3,0xffda2c9a,0x000be95d,0x004e19ac,0x00a0905f,0x009b1a11,0x00effba5,0x0050d665,0x011b6e12,0x00ded96e,0xff09cfb8,0xff1f7743,0xfe8ea42e,0xff01d95e,0xfefc3670,0xff4441aa,0xff2f10b3,0xff165fd0,0xff75d220,0xfe31391c,
-0xfda377e0,0xfe30bdc0,0xfdfaf71c,0xfe427486,0xfecd3190,0xff7038bd,0xfe1daf20,0xff778de2,0x012b52ce,0x005b19ca,0xff3ce125,0xff1371ff,0xfefab764,0xffa18b76,0xff99b6ec,0xffc067c2,0xffa71363,0x000421d2,0x000ea768,0xffceac8d,0xffc78e2c,0xffe2cec9,0x0035c818,0x007da0ac,0x00eda40f,
-0x00307c39,0xff6de15e,0xff812fc4,0xfee6e086,0xff569b7a,0xff7c4028,0xffb6db74,0xfff7345b,0x0028d057,0x007693f8,0x00384c63,0x008aa7b8,0x0105b4cc,0x01825f58,0x0142c612,0x0050ae49,0xff241d2f,0xffdacc60,0xfdd44198,0xfe009114,0xfe4c314c,0xff38d00d,0xff98b609,0x0033a992,0xffd892d9,
-0xfffd45ee,0x000b8819,0xffee8af0,0xfffef89b,0xfffe7413,0xfff5843e,0x00417a10,0xffd857a4,0xffae869b,0x004a28e3,0x00d9643b,0xffdb95ea,0xff2c852a,0xff6a4910,0xff250a65,0xfe960462,0xfe3d9688,0xfe3c1800,0xfe4ed99e,0xfe3216f4,0xfe41daec,0xfd8799b0,0xfd3e9fc8,0xfd9aa7e4,0xfe6e99b0,
-0xff7eef1b,0x00019aae,0x008cb32d,0x00189f38,0x0161d67e,0x029fef94,0x023b6cb0,0x01ece1d6,0x00d3f0e5,0x00449016,0xffe44d2c,0x001cda0c,0xfff8f101,0xffe9f195,0xfff87726,0xffec299d,0xffc9baff,0xffda0e01,0xfffba65b,0xffae702c,0x007b7c62,0x00f576ef,0xffb24b2d,0xff45fcbf,0xff3c72e1,
-0xff5939ea,0xff5a11a7,0xff61a70b,0xff20b179,0xffbdd0c4,0x000105cd,0x0007d9c7,0x001428bd,0xffd025ed,0xfe6f3b58,0xff0469a0,0xfe7f774e,0xfd438d24,0xff434dd4,0x0363301c,0x03dd24dc,0x035dc870,0x02343938,0x01a132d8,0x0190c046,0x01496730,0x0120e788,0x00faa3cf,0x007653c9,0x002729c4,
-0x000375ee,0x0029c06c,0x0094676b,0x004c7590,0x002aeee9,0xffd29453,0x000c8d57,0x00409ac2,0xff5dfa97,0xff3f1bae,0xff1576c4,0xfeba13a4,0xff0f5557,0xff57c444,0xffa8afc0,0x0034cd6f,0x003ce88b,0xffa9ff9a,0xfecc7e6c,0xfe39024e,0xfd9c4ff0,0xff75759c,0x012e6322,0x022c09d8,0x036554c4,
-0x00e99f53,0x01535524,0x017fcd42,0x0137bd4c,0x0103fc1e,0x00e9d344,0x00b42357,0x00c93009,0x00bf7513,0x00bff890,0x008ffe69,0x00b1185c,0x0089e877,0x0051e3d1,0x004da7c1,0x0071dc4f,0x0086e979,0x0083b555,0x002e0195,0xffdb6dcf,0xff7bd67b,0xff5aa270,0xff649291,0xff024af2,0xfedc2516,
-0xfed6f74a,0xfec1d468,0xfee9df04,0xff71ed4a,0x0029de4f,0x00d431ef,0x011cbfe2,0x019c2e2e,0x01b39728,0x0163950e,0x015371a2,0x0087d062,0x00d4fb84,0x014a8d7e,0x010b95a8,0x01431c50,0x00f6bd82,0x00b5fb01,0x006e837f,0x00a33e3f,0x0072cf6a,0x00d475db,0x00642e9c,0x00b2fbea,0x00761817,
-0x00b11c80,0x00946848,0x00b2a8ed,0x00d195e3,0x0131315c,0x01005894,0x00afaca0,0x00d7e730,0x00cddf9d,0x00f9f45a,0x01207a80,0x0148c360,0x016124d2,0x01856876,0x01a2bb62,0x0152e870,0x01159efe,0x00eaab0a,0x00ce2286,0x00bbe1c3,0x0097370a,0x00b8ec57,0x00686f61,0x008190f1,0x00dffab8,
-0x00703510,0x00aa8c59,0x0099d60a,0x007edb8f,0x0087e205,0x00747d8f,0x008fbacb,0x00dfa24a,0x00b526bf,0x00a028c6,0x00c3c00a,0x00e82dfe,0x00c41b43,0x00d11754,0x00b6f718,0x012aae1a,0x006d9871,0x00730ff8,0x008ccb82,0x00877e4e,0x00960630,0x0093ad4b,0x00963820,0x0067d419,0x004483dc,
-0x003475af,0x0032d8f4,0x00389aa5,0x00358f26,0x0040946f,0x004f0c91,0x005ad2d2,0x0069bca3,0x00540bb6,0x003a21a8,0x00da2256,0x011be90a,0x00d1fa1c,0x00b58f69,0x01180c86,0x00fa8d5c,0x01071eae,0x010ddcc4,0x00f1f9cc,0x011526f8,0x0122174a,0x011b00cc,0x0135fcd0,0x00c240ba,0x011b3e02,
-0x0127011c,0x00ce5287,0x0015178e,0x004f22d5,0x004a5daf,0x0054ff21,0x0058b1ae,0x005f1b1e,0x006db05e,0x0063f805,0x005f4c83,0x00543c6d,0x004b778b,0x0041a699,0x0038be64,0x00432641,0x0047c4f8,0x004ab372,0x004e4292,0x0055df71,0xfff656a2,0xfff1322c,0x0029963a,0xfef17996,0xfec5da6c,
-0xffa71cad,0xff3c113b,0xfee2bd36,0xff6e2689,0xff7252df,0xff76fd06,0xffa361e4,0xff865756,0xff8c83cd,0xffaaa8ad,0xfedac662,0xff28602e,0xffde9a8e,0xfeea8352,0xfefabe70,0x002f7539,0xfff65ee1,0xfff472e6,0xfff34bd4,0xfff3e2df,0xfff49feb,0xfff73947,0xfff92452,0xfff26238,0xffd6e746,
-0xffd84b9a,0xffd69e54,0xffe75bec,0xffd118ac,0xffd6822d,0xfff427dd,0xffeda8ad,0x000fa00c,0xffbf5da2,0xff2c7586,0xffdb5080,0xff501f3e,0xffa936fa,0xffd98e8d,0xffbef49a,0xfffc0697,0xffb397ff,0xff47e8bf,0xff76590b,0xffad0350,0xff8ed316,0xffb5d29d,0xffdd509c,0xffa9e879,0xffdb2964,
-0xff48aeb4,0xffb93f80,0x00060c83,0xffc909da,0xffd97209,0xffd67b12,0xffecde88,0x0002e1c5,0x000922f4,0xffe795e9,0xff9bef58,0xff97ca3e,0xff905f39,0xffbece47,0xff7a854e,0xff8dcf3c,0xffe41eb0,0xffd64291,0x001a3cd7,0xffa6b65b,0xff2aff7d,0xff9dcfdc,0xff47087d,0xfff9b4d7,0x000b4751,
-0xffd6fa92,0xffe366f6,0x00388124,0xff601ea5,0xfffe96c3,0xff90017d,0xffccf74d,0xffcbb86a,0x001ba251,0x0046244d,0xfffc7057,0xff6f88c5,0xffa8b54a,0x001d60ed,0xffc41dee,0xffc23a93,0xffbd972f,0xffd42eb2,0xffdfddc8,0xfff866bf,0xffc527ff,0xff3333f3,0xff2bb258,0xff17019f,0xff8639eb,
-0xff031252,0xff416dba,0x0004a188,0xffbafa93,0x006badf0,0xffe9755c,0xfff95e9d,0x0036fa49,0xff7c2224,0x00231c37,0x00a06761,0x0069ea49,0x00aaa597,0x004d2ccc,0xffe9fed3,0xffc92c31,0xfff9583d,0x004c5fda,0x00a44c44,0x00d54a37,0x006ea9b5,0x00828b09,0xff9cdd89,0xffb2c91d,0x0004ef3a,
-0xff72cab7,0xff737a90,0xff73d40d,0xffaca473,0xfffb2609,0x0002c141,0xff9514d9,0xfed043d2,0xfeb94e46,0xfeb4a754,0xff530a1f,0xfe7cd008,0xfef623f6,0x0016bc81,0xffd260f9,0xffbdf2ac,0xfe4fa72e,0xfcb004ec,0xfe002f10,0x0077e5ac,0x0026343c,0x000fd658,0xffddafa9,0xff9f573f,0xff835414,
-0xffbb819a,0xffed2cbd,0x001bb0b5,0x000a4e33,0x0051f3ff,0x00a21044,0x00b572f3,0x0079341b,0xffab4a46,0xffc6ab8a,0x007b4e59,0x0066aa3d,0x00c5ea62,0xffb9d565,0xffe4b171,0x00c7ff23,0x00f1971c,0x00e66714,0x00cb63b5,0xff20999d,0xfe7a3016,0xfed6581e,0xfe863b4e,0xfebef91c,0xff426e44,
-0xff9baf99,0x0054f2fb,0xffccd2a8,0xffbad819,0xffde67ef,0xfeab891a,0xfe9b6ef0,0xfefecbf8,0xff66222a,0xff9c3e3e,0xffbb7456,0xffad4d19,0xfffce215,0xfffe126d,0xfff00445,0xffedce42,0xffc4ea6c,0xff7b27fa,0x003dadcd,0x0029ae87,0xffba7984,0xff880f63,0xfedd31ee,0xfec9dbd0,0xff27b3c4,
-0xff39c2b0,0xfee12326,0xffa110ae,0xffe316dd,0x003d7747,0xffff8bbd,0xff853d36,0xfee1bdb8,0xff0e7d21,0xff28a9bc,0xff6eba0e,0xff8ca146,0x004c6018,0xfea95872,0xfe270226,0xfebcc1d0,0xfec67e62,0xff9d15f4,0xffe32a35,0xffd5e2b2,0xffce4e72,0x0013b164,0xfff20ceb,0x0007d5ec,0x001170b4,
-0xffffa30f,0x00228ad3,0xffde5e41,0xff4034ef,0x004ae5ff,0xfffaba76,0xffa2179e,0xfffea43d,0xff69ec63,0xff387225,0xfef165a2,0xfed4075c,0xfe9b8c5a,0xff565a35,0xff6b567d,0xfef36fde,0xff5f95e6,0xfed83838,0xfd1b3264,0xfd4371d0,0xfdab3620,0xfe1e6922,0x0013b4e2,0xfcdc1610,0xffc0cbe3,
-0x01882b5e,0x0176869a,0x015181aa,0x00601ebe,0xfffd0bd6,0xffbdc77b,0xfffb583c,0xffe31f94,0xffbe429a,0xffe2d13c,0xffe3ad91,0xff949f88,0xffb5a6f1,0xffaeb9fc,0xff84236c,0x00695013,0x002687e6,0xffc8f257,0xffa73cd3,0xff2e12a4,0xff584870,0xff069532,0xfee2937e,0xfe91b5a6,0xfe998160,
-0xfe927f32,0xfe772af4,0xfe982034,0xfe8a2ca4,0xfe3a8bc0,0xfdf5c42c,0xfcc57950,0xfa4614a0,0xfb4d88d0,0x014ce95a,0x017e808c,0x01a26e4a,0x0180a8c4,0x012df2e4,0x013fa602,0x013d06b4,0x00ca2cc0,0x00752a86,0x004c643f,0xffe340e4,0xfff5efaa,0x001b9dfa,0x00561db8,0x003822ee,0x00185f5d,
-0xffd6b3e1,0xff9a0612,0xff2bfed3,0xff5124c6,0xff6c4918,0xff2f7db1,0xff42f3aa,0xff003ff5,0xff12d668,0xff50907b,0xff0be6b7,0xfe9f560a,0xfe2bc2ba,0xfe026da0,0xfd8606e0,0xfcc90e58,0xfd6871b8,0xfe85ca1a,0xfff23b38,0x00b49b32,0x00d03a7f,0x0007aa23,0x005fdbb7,0x00654dfc,0x006531cf,
-0x0078d93b,0x00bb0841,0x00aa134b,0x00cf15f5,0x00d0ff6e,0x00d2a049,0x00b3e737,0x0085dcc0,0x002fd7d7,0x00042771,0xffe2b73b,0xffe7f962,0x0033a667,0x0034ce64,0xffdf988a,0xffb9c6b7,0xff6e1082,0xff361639,0xfea13420,0xfe49d250,0xfdfa1720,0xfdefe564,0xfe64fc16,0xff4a3bfe,0xfff2e72d,
-0x00d74df8,0x01b172ec,0x0282340c,0x027f0c1c,0x01f8c63e,0x0133dedc,0x0107adc4,0x00b7dee5,0x00406a81,0x005bfb8f,0x00521609,0x004fccb2,0x003ffcd6,0x0034380c,0x00297ce3,0x0051872b,0x00273d25,0x00697bfd,0x005b2d44,0x006c3324,0x0070b624,0x0078a87b,0x006f7761,0x0072ed39,0x0068cf50,
-0x009e82fa,0x00d1e5e3,0x00c5197c,0x00d806e2,0x00ee5dcc,0x0110bbee,0x012b6190,0x014f766e,0x015db4c2,0x0167a0f8,0x0144afa8,0x012f39de,0x012bb954,0x00f0e7c1,0x00d9946b,0x00e1e321,0x00e0ca70,0x008955b1,0x006aa551,0x003d7281,0x0084bb51,0x004ca4e3,0x00595590,0x00776a48,0x00706d23,
-0x008d6b3c,0x005ed9a0,0x002d5d8d,0x003cf209,0x005b3b3b,0x004219ce,0x003f1533,0x005a1d5d,0x004fd2d0,0x007b5527,0x0056f5d8,0x0084e4d8,0x00a189f3,0x00ac0247,0x00c06d2f,0x00d00bd9,0x00dc906c,0x00ebce26,0x00e5cf50,0x00e08689,0x00dacbad,0x00d7731a,0x00d1903a,0x00cc5d86,0x00c8aa1c,
-0x00b89c0d,0x00a3a2ed,0x00874472,0x00a09c45,0x00b0f454,0xfff780d9,0xffd450d8,0x003a22b8,0x001dcee7,0xffd80608,0x0011a136,0x000c3bdf,0x001310c2,0x0030cae5,0x00229bd8,0x001fb164,0x002ad0b3,0xffc46113,0x000e0f76,0x003020fe,0xffd15ede,0x00009658,0x00b22f64,0x00a6786c,0x00b22ab6,
-0x00be74e3,0x00c7ea05,0x00d3940f,0x00e373a1,0x00d8736d,0x00d126cc,0x00c8d80d,0x00c13a04,0x00b87af8,0x00acc7be,0x00a8e989,0x00a72890,0x00a8bb83,0x00a5d5b0,0x00b444b3,0x00b35fac,0x00925998,0x0080d9d3,0x012f7d5e,0x00dad2d5,0xff7bdcd2,0x0140c0ae,0x00f36d20,0xffdd8f77,0xffe125b7,
-0xffd795f4,0xffab476c,0xffae98c5,0xffa67b07,0xff8bd6c9,0x00eb48fa,0x01436322,0xff88b77c,0x00e071c0,0x013b6a28,0x00a19708,0x00a235d4,0x00b20691,0x00ae603c,0x00ae7c69,0x00b3a63f,0x00c9ea26,0x00baac1e,0x00b24822,0x0096d524,0x00b0e205,0x00bbbf4c,0x00c7998c,0x00d51506,0x00d04324,
-0x00ae75c4,0x00aba868,0x0079b7e0,0x00c458ce,0x0094e5bd,0x00d9acec,0x00b10da8,0x009f76c5,0x00b901c7,0x0099f780,0x00b4eb56,0x00df455a,0x00da5329,0x00cf52e5,0x009a5ce3,0x00bcbefc,0x009a2057,0x00a9eae3,0x01173c6c,0x00c60741,0x0076ee44,0x00eef503,0x00bbc437,0x00e8d9b2,0x00de826b,
-0x00d771e3,0x00dd4706,0x010d7dfc,0x00df5d0d,0x00c30b1e,0x009598f1,0x00d19d7e,0x01042df4,0x013001f4,0x0157d100,0x0137aae4,0x00c604a6,0x00b9f999,0x0064eef4,0x006f1a89,0x00e0a4d2,0x00af1062,0x00392307,0x00a87505,0x009c050c,0x005b1d9e,0x008bdf6f,0x0054a74d,0x006fd72c,0x00291aca,
-0x00341b42,0x0060aab6,0x009bff41,0x00d43869,0x00f39606,0x00d43be1,0x00e7a05e,0x00c86db7,0x00d17894,0x00f7c54c,0x00ffb08d,0x00fab0e5,0x01156aa2,0x018ce31c,0x013066b8,0x01054642,0x00845152,0x00fa7614,0x01476da0,0x01823a82,0x01e98636,0x01a00aae,0x00d62fdc,0x00d23a8f,0x00347739,
-0x0072e20d,0x013cce04,0x00ffdd4a,0x000a1406,0x0087e424,0x0099c8c4,0x00389b11,0x00898044,0x0058ce43,0xffb4dbfa,0xffb1bd2f,0xfff7922d,0x0021f905,0x00a3f313,0x00c8b9ac,0x010d5668,0x00af96cf,0x00b4304b,0x00aa63fe,0x00ee1d7e,0x014aa4c4,0x0159b4dc,0x0151a8f6,0x018085ce,0x02170b18,
-0x017206de,0x00e04654,0x00518aa5,0x01322d86,0x01ec89d0,0x0261df1c,0x02d0e8e0,0x02447b0c,0x00ce909c,0x00c530ab,0x00e24aa7,0x00a7151a,0xff2d0fe8,0xff4f0ac8,0x0110e6b8,0x00a59fc5,0x006ffbfe,0x0032ee55,0xffdfeac4,0xffbd9c2d,0xffbe6820,0x00034a83,0x0026d66e,0x0018d66b,0x00668192,
-0x00ab10e8,0x0136ae3e,0x00df2ffe,0x00f7219a,0x0117f468,0x00e29592,0x00904e3c,0x0010b535,0x0031c563,0x00241e06,0x0015c7a3,0x0075d09b,0x00b999fd,0x0118e012,0xff7ed381,0xff88cf70,0x010a8146,0x010c871e,0x0115699a,0x00b690b1,0x01286fc8,0xff97cd85,0x002de5fe,0x017ae026,0x00db3fbd,
-0xffa2a876,0xff42ab9e,0xff29145b,0xff7d0e4c,0xff9e51ce,0xffd98b7c,0xffc201ce,0xfff2a091,0x00077c07,0xfff4832e,0x001a936b,0x00167d03,0xfffebdaa,0x007645de,0x008dc7ae,0x008e8b50,0x00df87a4,0x011c57b4,0x015cc394,0x00d68beb,0x00794376,0x001ecfa8,0x006d0c71,0x0041ef3e,0xfff98fcb,
-0x0061b325,0x007b67c0,0x0017d833,0x010fd2ac,0x00bdb92d,0xff304628,0xffb9fea8,0x012aff9e,0xfff5ef33,0xfeec377a,0xfeeecb62,0xff4c6403,0xffb63539,0x00231e63,0xfff03f71,0xffe8041d,0x000782b8,0x0012a369,0x000a5035,0x0009c346,0x00049107,0x005ad017,0x001edee4,0xffbce851,0x0088234e,
-0x00d9b487,0x002f15a8,0xffbbab6a,0xff9828cf,0xff8fdf65,0x001327c5,0x00b3f419,0x01224be4,0x01883dd6,0x0100229e,0xffb91600,0xff9ea977,0x00663ee9,0x0192a732,0x02f7a6b8,0x03539e74,0x0334c470,0x02099c10,0xfe683aac,0xff29be01,0x00a80761,0x01245d1e,0x00c32ccb,0x00310bc3,0xffabd298,
-0xff8dc61a,0xffdb8513,0xffca1e4e,0xffc1afe1,0xfff3bf23,0xfffa03ee,0xffc21402,0xffd38bb6,0xffdfd59e,0xffd67829,0x0063cf36,0x007f0625,0x003a740f,0x002e108e,0x004a8136,0x007a8100,0x00967003,0x007ad0d2,0x0021094f,0x0071fce4,0x0095f5ed,0x00ad78fb,0x009d83c3,0x0061aae5,0xff74537a,
-0x01a263d6,0x01eb20a0,0x0100cf4c,0xff3045ff,0x05d87000,0x050e9558,0x02d1ad80,0x028980f4,0x020c1e4c,0x01eb1e88,0x01b57534,0x0147963a,0x00da67f4,0x00851f54,0x003ba6eb,0x001184a1,0x001f1495,0x005701b5,0x0038db1f,0x0016cf10,0xffc6262a,0x000ca466,0x000f5ccc,0xffeae857,0xffc5a55f,
-0xffafaf83,0xffc49d42,0xffd5ecae,0x005b4007,0x01321752,0x00ce52c4,0x00b9717e,0x0137a20a,0x0081f986,0x00306b8a,0xffc800fa,0x0077a3aa,0x01b7afa0,0x037d5cb4,0x04f75f78,0x02708ea4,0x021f663c,0x0120f89e,0x01745916,0x01178404,0x013c9e1e,0x0117034c,0x00e5a349,0x00f86c33,0x00ea4cb9,
-0x00ded5c1,0x00d81642,0x00a1b0dc,0x00348df1,0x001243f7,0x0026b050,0x0058d97b,0x005fa2f1,0x0034c59a,0xffdf2329,0xffbb5695,0xffa0e0be,0xff8151e4,0xffa1c856,0xff6f2cc4,0xff0a46f2,0xfe876fd4,0xfe56fcdc,0xfea07126,0xff42b3f4,0x00786f4f,0x02219594,0x02cd7890,0x0327e354,0x030a6884,
-0x02b4bed4,0x01bad0dc,0x01829eaa,0x016fa240,0x014c4666,0x01060202,0x00e13267,0x00abad74,0x00865eb7,0x0077464e,0x0079cc7f,0x008489d6,0x00833946,0x00736511,0x0092d4cd,0x0093de52,0x009bba51,0x0095fdb9,0x00a2d942,0x00ee2c33,0x00cbd9ca,0x008fd89c,0x00926eb5,0x0068b62d,0x0093e561,
-0x00b68271,0x00dd0461,0x016cf6e6,0x01f12482,0x02646110,0x02893868,0x02983dc0,0x02b90bd8,0x02593d28,0x022a68dc,0x02061068,0x01e83082,0x013e6a2e,0x0146e962,0x008d48d7,0x011305f0,0x00f92ed0,0x00edf989,0x01158a6e,0x010ecdfe,0x01269728,0x0136fa62,0x013487c6,0x014414b8,0x01248cca,
-0x012759bc,0x00f3281b,0x00ce1b62,0x00f53eae,0x00b6f8c0,0x008e57c7,0x00621b38,0x00649e03,0x0095ca49,0x00aebbd0,0x00cd9ee1,0x00e7b7d1,0x00fb0a7b,0x01048442,0x0113268c,0x01370594,0x0163fdec,0x019d4f6a,0x01e45e1a,0x01c5548c,0x01ab0750,0x0186aa84,0x016536b0,0x013854b8,0x0140961c,
-0x0161f56e,0x011a5e52,0x003e7d25,0x017bd3bc,0x0126d318,0x006d220c,0x0065663f,0x005f5c68,0x00503b60,0x004cc15e,0x0049d0b0,0x0040c9e9,0x012dc5f2,0x015fa88a,0x0041206f,0x01107ac2,0x0137130c,0x00dda0b6,0x00fa3ab6,0x01028556,0x010b384c,0x011355ca,0x011b35a4,0x0125adc8,0x0134729e,
-0x0143237c,0x014d03e2,0x0159504c,0x0160d180,0x01744dde,0x015f75f4,0x015812ca,0x014efb78,0x014c0618,0x015d305a,0xff3dfedf,0xff5b3a16,0xff107ddd,0xff3c3352,0xffff41df,0x01579af6,0xff0cfeb8,0xffe1b59d,0x01117c2e,0x0125d44e,0x012a214e,0x012fa7bc,0x013a85bc,0x01415d2c,0x015299b0,
-0xffe85f0d,0xff26eff3,0x01973db8,0x000f1941,0xff596177,0xff2cce5e,0xff5a7cd8,0xff3b6dc2,0xff3725f3,0xff31cf50,0xff32cdce,0xff44f5eb,0xff3563cd,0xff2c9380,0xff19cc41,0xff1a6b0a,0xff19d256,0xff2250c2,0xff1fd5aa,0xff2d8a06,0xff5b1411,0xff4698c4,0xff49de70,0xfee7c7e8,0x00626f17,
-0xff543e20,0xffa9da2f,0xffdaa55b,0xff92cfcc,0xffa8b0df,0xff7cd320,0xff642a43,0xff83b71f,0xff42fc17,0xff6bf713,0xff719153,0xffe537ba,0xffe0c827,0xffb24c8e,0xffbd30a0,0x0082e825,0xff2e19ec,0xff3a5986,0xff0780b6,0xfef1a7f4,0xfee3b3dc,0xfeef58c6,0xff209157,0xfef63732,0xfed387c8,
-0xfea57e28,0xfe9f55c2,0xfea620de,0xfecc9d72,0xfeca2a90,0xfef648d6,0xff64dfab,0xff3ae6b2,0xff367f4c,0xfee558e0,0xff62fe5f,0xff7df275,0xffcdc316,0xfffd6727,0x0001d14c,0xffcbaea5,0x000d837e,0xfffc253e,0xffd72de5,0xffa1629b,0xffdf17d9,0xffac2530,0x000738d6,0x0000306e,0x00494651,
-0x001bc0e6,0xffef2763,0xff7e8fe4,0xff2413df,0xfef3e7d0,0xfeb48ccc,0xfe9b6d9e,0xfea6c56a,0xff038d06,0xfeb8c0ee,0xfe82b734,0xfe189454,0xfe15d7d2,0xfe1731e2,0xfe5853ee,0xfe663ae4,0xfec019fa,0xff988262,0xff43479a,0xff2a5f80,0xff05ffaa,0xffee2060,0xffcd84e4,0xffafc885,0xfffc9d11,
-0x004ae220,0x002f5e14,0x0066f08a,0x00483dba,0xffdd7d94,0xffcc7cdc,0xffd0ef22,0x0015bc30,0x005dc31b,0x006b870a,0x00bd5e67,0x003b3e84,0x003b3cfa,0xff9ae380,0xff0ae7a0,0xfe9331c8,0xfe1ef5d2,0xfdfb4620,0xfe21f584,0xfec0d2d6,0xfe4b0fda,0xfdc6bab0,0xfd440984,0xfd44cbb8,0xfd859f54,
-0xfdf2b1cc,0xfe1297a8,0xfeb84b72,0xffeb1652,0xff7e4c5c,0xfe2b98ec,0xfe9c6a3e,0xfdcfb07c,0xfe57dae8,0x00dba557,0x006f959e,0x001376f5,0xffe49092,0xffc270de,0xffa2ffb4,0xffb1a047,0xfff89f3e,0x001275fc,0xfff88ab6,0x002ba0b0,0x0057c0d9,0x00d80499,0x0014d94a,0xfffb1f41,0xff62e575,
-0xff0b8648,0xff89cf31,0xffa37afb,0xffb20b49,0xffca4872,0x003977f0,0xffdb94e6,0xffbaffa2,0xffccc2ac,0xfdd1a030,0xfd1a85c4,0xfd8849dc,0xfdbe8254,0xfe1b860e,0xfe69ba4a,0xfe636196,0xff97a433,0xff71196d,0x0010dae1,0xfff03291,0xfeb6c6e0,0xfeddc132,0xff2e004a,0xff85a378,0xff93aa4c,
-0xffbb6905,0xffc093eb,0xffea0d3b,0x0002f816,0xffffe3cd,0xffed92b6,0xffb88788,0xff82e536,0x002a0c98,0x008861b4,0xffd0fedc,0xfeef56f4,0xfe51ec08,0xfda2943c,0xfe2fc694,0xfec88874,0xff445600,0xff9e6093,0xff80aae3,0xff18defb,0xff17a3e7,0xff13bc8b,0xfed05040,0xff0dfbae,0xfef095f6,
-0xfe963772,0xff387690,0x00578a15,0xffe0dc25,0xff82f254,0xff47e5f5,0xff7560ac,0xff8aa06f,0xffe1e65f,0xff9d6570,0xffacf6d6,0xffe8ef8e,0x00026610,0xffe4a46c,0xffe8d90c,0x00028ba8,0x00101b57,0xffb16010,0xff932092,0xffdbcb2d,0xffbcc975,0xff6a1371,0xff654059,0xff665591,0xff6bafaa,
-0xfe74fa98,0xfdabd810,0xfd388f74,0xfd532f84,0xfdc6ad18,0xfe29ad42,0xfda3bd24,0xfcb3fb2c,0xfb684c80,0xfbef0130,0xfca76f28,0xfd51f0e8,0xffd2130b,0xfa22ede0,0xfe28550c,0xff8d7691,0xff9be021,0x002919c2,0xff440a43,0xff45d12d,0xff26633e,0xff9e335d,0xffacab69,0xffa64aa5,0xffe0f66b,
-0xfff92533,0xffb3df40,0xffb5e64c,0xffb22a16,0xff9999c9,0xffe6d582,0x0027885f,0x00139b73,0xff41abc3,0xfeb58d08,0xfe8eb994,0xfe86945c,0xfed8df0c,0xff4c952a,0xff11e52d,0xfee5cba8,0xfedcf0be,0xfec260b4,0xfe993374,0xfe6b79f6,0xfcba85c8,0xfaf25190,0xf8f3a138,0xf929c558,0xff7c5b7a,
-0x01f5b2b8,0x03750960,0x02619658,0x01ae4c84,0x02082d74,0x01b2f3b4,0x00d3d9e7,0x00912e82,0x002b330c,0x000fdbcd,0xfff111c1,0xffedf6af,0xfff4f409,0x00089ad9,0xfffb6005,0xffb0f8cb,0xffbff440,0xffbdae4d,0xff73514f,0xff8597f8,0xffbb4202,0xffc816c6,0xffb5fbbc,0xff63e100,0xfeb5255a,
-0xfe1c6752,0xfdafc79c,0xfd685d88,0xfd9da308,0xfd387b54,0xfc64c3f0,0xfb58ab78,0xfbc5ae88,0xfd6dd99c,0xfe8e9d9c,0x006114bc,0x005d259a,0x0176abf0,0x00f64c6a,0x00fdd41d,0x00df31e6,0x00d0822a,0x00af3a60,0x00b8b5e4,0x00c6b686,0x00cb5495,0x00b07d31,0x00700825,0x00207ee4,0xffd5ebe5,
-0xffbf5c8e,0xffc8b97a,0x00217b67,0x0028dbd2,0xffeaeff4,0xff51e9b0,0xfed7d966,0xfe8b3fb6,0xfe461258,0xfe11bd3a,0xfe0e8b52,0xfde635cc,0xfe20bfaa,0xfec16222,0xfeb23a46,0xfec96028,0xfee0e2f8,0x007190ce,0x0116da62,0x01038ce0,0x00c50c1f,0x00fdfda6,0x00e52a33,0x00c48b30,0x008af574,
-0x00966d68,0x007c16c2,0x00761ec5,0x0056b005,0x006d925e,0x0060ebfe,0x005fb35d,0x005e778f,0x009189d3,0x00971b0e,0x00963159,0x0074475a,0x00674d51,0x0030c1a5,0x001ac937,0xffb7fe13,0xffaf3f2f,0xffdad9d4,0xffe534c3,0x001fa6e0,0x0049d3db,0x0079094b,0x008ca416,0x0095943b,0x009ebcef,
-0x00cb2145,0x0116bea4,0x014317c8,0x012d904e,0x01258d44,0x01493280,0x012cd924,0x00dcc0cf,0x00d358a8,0x0148dadc,0x00e2e7d8,0x00e98242,0x00f77268,0x00cc035c,0x00cbd780,0x00a84cc8,0x008637c3,0x008cb179,0x005fe6e0,0x00593f4e,0x0044ef80,0x006725c4,0x006c9cb7,0x00396d76,0x0052d721,
-0x00814d31,0x005bc66b,0x009ea263,0x00a3e456,0x00b8e60f,0x00cd3ead,0x00e459ed,0x01027caa,0x00f1b26c,0x00e2189a,0x00c63940,0x00b2aff1,0x008f4262,0x007f0fd9,0x0094819b,0x00a90440,0x00b705e9,0x00be42f3,0x00b3c1f2,0x00ac8d0e,0x0096aa59,0x00e7dea7,0x01851262,0x0074af8d,0x00d43b01,
-0x01631f92,0x01677ace,0x016dd208,0x0172dfc0,0x017c4ab6,0x018573fa,0x018c9bcc,0x00ae1be3,0x004df3e9,0x016efce4,0x00af853c,0x00611b53,0x008432a9,0x0093ea81,0x009859f2,0x00a8f788,0x00b0feac,0x00b8a079,0x00c58021,0x00b68f40,0x00b0dd7c,0x00ada51d,0x00a585d9,0x009fc399,0x008ee4f9,
-0x0098be29,0x009b53c3,0x00a01d14,0x00a6a019,0x00a01200,0x00fed749,0x00c80a05,0x0126eba6,0x006b7a11,0xff84f0a3,0xfe7598c4,0x00d9a4cd,0xffbb0d34,0xfea4634a,0xfe988bde,0xfe983fd8,0xfead30c6,0xfe81d64e,0xfe7b29c0,0xfe791e40,0xffb1f74e,0x00ba724f,0xfe7254e8,0xffa6c140,0x00793345,
-0x013d7720,0x00e9a8e7,0x01079f24,0x0107a2f4,0x01053820,0x010630cc,0x01118072,0x00fc6e7b,0x00f6d8b0,0x00f433cd,0x010119bc,0x010a6344,0x0113f28a,0x0118f464,0x0108be80,0x00ce90da,0x00e3b02b,0x00bfc14e,0x00fa0852,0xff3e456f,0x00df2b7b,0x00429724,0x00274217,0x008b4583,0x006a1039,
-0x00c955df,0x00c57578,0x006fe0af,0x00ab17bd,0x0092c6f5,0x008b2c33,0x00384c5f,0x006968af,0x00addcdf,0x00afd69e,0xff7c877b,0x0122b2f2,0x01398b78,0x01430a10,0x015796d2,0x014e9cc4,0x014a75d2,0x01586eb4,0x01194ada,0x01048be2,0x010ea1b0,0x012673ac,0x0141d5ee,0x014f54ae,0x015f65fc,
-0x012faad8,0x00a19b06,0x00c080ea,0x00a2138f,0x00787ddb,0x00299437,0x007315e8,0x000923a9,0x00480def,0x003691c9,0x003b233e,0x001f064e,0x006e31ec,0x00296e2b,0x0083501f,0xffe94f5b,0x00609c83,0x002aed40,0x009db293,0x00b77ba1,0x00ac4dd8,0x0076a721,0x00e00c07,0x01860b4c,0x016f7ce0,
-0x019fd944,0x018aadf0,0x018e193e,0x01b9aa68,0x01443abc,0x0127d9a8,0x012897a6,0x01649474,0x019fbcc4,0x01c0f29c,0x01e6712a,0x0179c816,0x0064f8e7,0x009c7e6a,0x00425b1b,0x0009d5fc,0x0021cdd6,0x00ab2c4a,0x00304513,0x004814d6,0x005fe590,0x002845ea,0x00786315,0x00574ff3,0x000fd7ea,
-0xffc5aabd,0x00032fc7,0x004532da,0x009cc764,0x00edea50,0x00c1ddda,0x00ec4d08,0x004f9c8f,0x00e24128,0x01c69a8c,0x01cb6aee,0x022673a0,0x020d4728,0x020f4af4,0x02221990,0x01610f56,0x00f66624,0x0119948c,0x0182f94c,0x01e9ddb0,0x01fb2536,0x020caf90,0x01588878,0xffdb603c,0x00102fdf,
-0x01d3295c,0x00a35ab5,0xfe9642c8,0xfeef6e84,0x006954b6,0x00539560,0x006f07b0,0x0014c4c7,0xffff01c7,0xffec0a00,0xffccc8d5,0x001c8f7a,0x0025724d,0xfff4880f,0x004582d6,0x00aac973,0x00e67015,0x0120a218,0x0082b51f,0x00ca3a49,0x01e2e822,0x014d20f0,0x0136cc7c,0x00b2730c,0x00a6d060,
-0x00ccef03,0x0142e47c,0x01c3170c,0x02904e3c,0x0116f9f0,0x011e47e8,0x0227b964,0x027341fc,0x025ce6a8,0x0199daae,0x01900a4a,0x00d83b39,0x00cca081,0x00d690f1,0x00b43b1b,0xfff6e82e,0xff6dd133,0xff7814c7,0xffbecde2,0xffc4fd16,0xffe250ae,0xffe3a535,0xfff5afb9,0x00140e11,0x00305129,
-0x005e749a,0x003cd2a6,0xfff161f2,0x003ce304,0xfff8f4ac,0x009de38a,0x01550bba,0x014e1d52,0x01e1548c,0x01245bee,0x00bfeabd,0x007adc73,0xffbeae77,0xff848165,0xffbc7b3d,0xffa23c8a,0xffa1c3c0,0xff5850a2,0xffc40b6d,0xff945e01,0xfebfd642,0x0009ba08,0x00fd28b5,0x00920312,0xff5d7cd6,
-0xff5ed41f,0xff2d626b,0xffa15e92,0xffc6b235,0xffa2c5d0,0xffc3f0be,0x000d49a4,0x001d9178,0x0017b297,0x001350c6,0x00152bc2,0x0029e28f,0x002b8c44,0xffd622bb,0x007f90fb,0x006e6298,0x0084962e,0x00600347,0xffe6e4dc,0x00380051,0x00d94a89,0x01abb7c4,0x0262c87c,0x02457c20,0x01dff138,
-0x0107106a,0x010f7b42,0x01c9f1ba,0x02d3b0a4,0x03a525f0,0x03868f94,0x03230dc4,0x017dc9e2,0xfd51625c,0xfd68c864,0xfea680f2,0xff8444a4,0xff69e8c6,0xff647969,0xff41032f,0xff505310,0xff9841b2,0xffab90e1,0xffc0b0ba,0x00066dfa,0x00126f4e,0xfff38c15,0xfffb719d,0xffe06d6a,0xffe394ac,
-0x000a8675,0xffdf85c0,0x00a1db3c,0x00d5c66d,0x00d99183,0x00e625e5,0x00b19256,0x008b9e00,0x006d084a,0x005171c3,0x003326d1,0x002dcc0c,0xffc55487,0xffd977f0,0x00a761b0,0x011d6496,0x0182413c,0x0222ec8c,0xfe77d6c4,0x049dc6c0,0x03682d88,0x01d456d6,0x02527a70,0x020a1ea0,0x020d7610,
-0x01c7303c,0x00f69771,0x00919e2b,0x006da2df,0x0050cf41,0x00188cc7,0xfffcbcd6,0xfffbf392,0x000a1789,0x000700ce,0xffdb08fe,0x005391a1,0x0009a89a,0x003fefa4,0xfffc5875,0xffc38011,0x0009d43e,0x001d7fab,0x00175809,0xfffe11fe,0xfffa4b34,0x001e30c6,0x0086c698,0x0077d43d,0x009472aa,
-0x00efa193,0x004f4045,0x008a0bda,0x01e09e1e,0x0347f04c,0x0292f4e4,0x01e71aae,0x00cbc648,0x0141b5c4,0x00e853b8,0x0118463a,0x0126259e,0x00f3ceae,0x0121aca6,0x010c14fe,0x010bf046,0x00cf5a56,0x00a7be8c,0x0079c2ad,0x003d73b1,0x00274a8d,0x001b1cfc,0x000a78a1,0x00042929,0xffbf53cf,
-0xffcba035,0xffc9da2a,0xff9a113e,0xff825735,0xff640c75,0xff8bb136,0xff4f345b,0xff107ae6,0xfede01a2,0xfef118f8,0xff7ef5b4,0x00c18c3e,0x01b69d30,0x026386bc,0x0288e3dc,0x0270fe4c,0x02555a30,0x01c179f2,0x014911a6,0x015b2460,0x00e7398b,0x00e5bc0c,0x00d07347,0x00c1e6a1,0x0084dbf2,
-0x00a9e5c1,0x006955f7,0x00bc2071,0x0079c8c6,0x00bab0da,0x008d6454,0x00967bef,0x0071f675,0x0048d041,0x00204a77,0x002f4172,0x004623d6,0x001f84c7,0x0016ae7f,0x003d5ff6,0x0059cbf5,0x006b3796,0x00b795a1,0x0108ea24,0x014eee42,0x01f4c5d0,0x02874064,0x031976ec,0x02e13ffc,0x02c9ac78,
-0x02df6148,0x027b72b0,0x01c07eb4,0x01c95828,0x00bb9322,0x018d4608,0x0136601a,0x012c89b4,0x01627892,0x014ad6b0,0x0177ec5a,0x016c6e80,0x0128066e,0x0152c356,0x014278ca,0x0122613c,0x00da141d,0x00d8a6d9,0x01025310,0x00ea640d,0x007a089c,0x00d4eb53,0x00ca5e8f,0x00e39a44,0x00ef48a1,
-0x00f8dc0f,0x01074bc6,0x01117fb6,0x0149bf3a,0x01785102,0x019efe66,0x01c945d8,0x01ead4d2,0x022a1e1c,0x021379a0,0x020476d0,0x01ec495e,0x01d2b622,0x019d8008,0x01c54924,0x0153506c,0x00cdebb7,0x0027b40b,0x01831f94,0x00d23be7,0x002ab021,0x001623c3,0x00087447,0x000d645e,0xffecbdca,
-0xffdbffe8,0xffd58985,0x00b4f36e,0x014c00a0,0xffe14c20,0x00a3162e,0x0117557e,0x0154a972,0x01457faa,0x01555c16,0x015b96d2,0x01636ffe,0x0169ff82,0x016b3db6,0x017e36a8,0x018f2140,0x01a4a884,0x01b451b4,0x01c304ea,0x01d73288,0x01c31e04,0x01ba6ff0,0x01b04988,0x01b11124,0x01bac7c4,
-0xff6c9393,0xff7dc6f2,0xff08b2f1,0x003ba356,0x011ce368,0x01a5e7e6,0xffd85cc5,0x00e7c39f,0x019444de,0x01a757b6,0x01a714b2,0x01867636,0x01a50e0a,0x01a5f708,0x019a938c,0x00f5b95d,0x00039a79,0x01c54cd0,0x01158064,0x0058f780,0xff2dfffb,0xff886cf4,0xff6ba002,0xff65ace9,0xff60beec,
-0xff6139b4,0xff72b228,0xff5cb9eb,0xff53c331,0xff4b720d,0xff4f98f6,0xff53c299,0xff561787,0xff688351,0xff747721,0xff84fea9,0xff6fd3db,0xff603fc3,0xff465745,0x012fda5c,0xffa575c0,0x005e4c8d,0x00469fd3,0xffd97e91,0x0003f052,0xffac9622,0xffce1fb7,0x00400069,0xffd09e3a,0xffc898c2,
-0xffe4ce20,0x004c512a,0x00353f6d,0x003d8838,0x00192d58,0x01408c1a,0xff960780,0xff64abef,0xff607c83,0xff373b4e,0xff27909c,0xff210e89,0xff4b3dba,0xff11a939,0xff0137d8,0xfeff7b8a,0xff0531ee,0xff1af8ef,0xff2c7c09,0xff62cd83,0xff80f6bc,0xff97882a,0xff7f88fa,0xff1372be,0xff21728e,
-0x001aead9,0x00048cde,0x007bc535,0x00359bf4,0x0025a47d,0x0010e705,0x004e9551,0xfffa3931,0x00761772,0xffb3c49d,0x003f0a4f,0xffddce98,0x006afdd9,0x003f53a1,0x007b3314,0x007c64f0,0x00b0abf1,0xfff650d6,0xff487c81,0xff5886a3,0xff0b2f06,0xfef525fc,0xfef2f4da,0xff5626dc,0xfed469a2,
-0xfeaa3e2c,0xfe873d04,0xfe9f22ac,0xfec37974,0xfed45120,0xff55e6f8,0xff935cd0,0xff8ddc83,0xff5dbb8e,0xff126834,0xff522b73,0x0029e6f4,0xfff2f6b9,0x00273aa2,0xfff74939,0x00039ba9,0x00121a4a,0x002e8baf,0x003ea43f,0xfff16235,0xffe55d6a,0xffd76929,0xffea7323,0x003b2616,0x0041edce,
-0x00f72d15,0x004d6ca5,0x00dd753c,0x00089cae,0xff450d4e,0xff39a235,0xfeb097ce,0xfe85aa48,0xfe826dc6,0xff018b8d,0xfe537eae,0xfe05c064,0xfdfcbab4,0xfe373f42,0xfea4fb30,0xfebac17e,0xff83f8b8,0xffdd6a6b,0xffa93121,0xff917989,0xfe07ffe0,0xff5c845e,0xfface894,0xff8788fc,0x01011e92,
-0x00d5ff0f,0x0075faa2,0x001f124e,0x0003b813,0xffe75dba,0xffd1a68e,0x000f3b63,0x00102710,0x000256b3,0x003d577a,0x0050b792,0x00dbdbb7,0x0053ea54,0x00d8f980,0x0022b043,0xfef09cea,0xff43caf6,0xfef59eb6,0xff821d5f,0xff8b24e7,0xffc8e70b,0xfee4d9c0,0xfeb21f3a,0xff39dc01,0xfde28b90,
-0xfdad4530,0xfe6542d6,0xfef139c8,0xff2b17eb,0xfee79a0e,0xfedb329c,0xff6f14fd,0xfff7c2b6,0x005ffcf0,0xfff653af,0xff3cc48d,0xff44d9cf,0xff4d9e83,0xffaaf0b1,0xffb2eb89,0xffdc13b7,0xffe15925,0xffe63661,0x0001c962,0x0005a1fd,0x000de45f,0xfff4c8bd,0xfffd7240,0x002212b4,0x00992168,
-0x00505ceb,0xff68558d,0xff32f3b7,0xfe6d58fe,0xfed79520,0xff3b9ccf,0xffc10900,0xff9a3d9e,0xff8159de,0xff92693b,0xff54b668,0xff6cf6be,0xffdaa074,0xff3b9364,0xfee51772,0xfebcb6a4,0xff6ff3d2,0x004719e6,0x00758892,0x0049bb4f,0xffa5f335,0xff6f0665,0xff82706b,0xffdbe14e,0xff790e45,
-0xffabb6ae,0xffd725f7,0x000186d2,0xffeeab53,0xfff9e280,0x0014b73a,0x00176112,0xffdf97eb,0x00152e70,0xfff3be0b,0x002d0f99,0x0016ebe0,0xff7a34e8,0xffcbc954,0xffe5b558,0xff18b6dd,0xfe7bac4c,0xfe3ee646,0xfde7f5a8,0xfde30454,0xfe36d776,0xfd86f43c,0xfd2f17b8,0xfd9c9550,0xfe3c8336,
-0xfedb58fe,0xff0e0c01,0xffde8dc7,0xfc361b54,0xfd67a35c,0xfe1d4b70,0xfe655b92,0xff0b5e51,0xfedb53d0,0xff257775,0xff2dee75,0xff811a25,0xffa98cd4,0xffd73368,0xfff62915,0x00054e96,0xfff31827,0xfff0bb9c,0xffed4de0,0xffc31af0,0xffb4a49b,0x00428d87,0x005f7d71,0xff7b3d43,0xff3312ec,
-0xfee128b6,0xff0e6e78,0xff53f152,0xff9eb0f9,0xffb68c68,0xffda8f6a,0x0021f58b,0xffcc6f8d,0xff5ed116,0xfef9611c,0xfdc51c74,0xfcfd8818,0xfc77f93c,0xfc6a1140,0xff944e28,0x01ff1d14,0x03a2853c,0x029744f0,0x01fbd074,0x023944f4,0x019408fc,0x009b4bb5,0x008a8802,0x001970d8,0x0035dde5,
-0xfff85489,0xffe27b5b,0xffd296de,0x0002ea0c,0x000b8f5d,0xffc484c2,0x002955d0,0x00744a4a,0xfffea088,0xffd245d8,0xffe448a1,0xffd28357,0xffcd3f9e,0xff53948e,0xfec3b932,0xfef84ea0,0xfee1fa48,0xfe7239e4,0xfe6fa122,0xfe401022,0xfde2b514,0xfd121be4,0xfcdccdc8,0xfd1e7e2c,0xfebf8ce4,
-0x00f2a75e,0x01733e2c,0x022e35e8,0x019476be,0x016c7a32,0x011bd958,0x00efc42c,0x01226b82,0x00f032ee,0x00df589a,0x00be3904,0x00aede8d,0x008b769b,0x008432dc,0x00396543,0x001ba136,0xffec4117,0xffece408,0xffc63c4c,0xffa9bd28,0xff1bc421,0xfed7b8f6,0xfec106ce,0xfe986140,0xfeb1ca36,
-0xff106bc3,0xfedc31ec,0xfecadbea,0xfebf7fd0,0xfe733ed8,0xfe028e84,0xfd72b6fc,0xfea634ba,0xffba07f9,0x00737a8c,0x00f51bc7,0x011598f8,0x01391266,0x017e0d28,0x013005ac,0x014b3372,0x011edc40,0x010a3bb2,0x00d66b66,0x00e1e4bc,0x00aac007,0x00c1a937,0x00773397,0x00b4a742,0x008aeb8b,
-0x009a50fb,0x006af743,0x006d6075,0x004024bc,0x002f557d,0xffbbc037,0xff886075,0xffabb5dd,0xffa27a60,0xffbb32dc,0xffb9f8c9,0xffbeaa76,0xffa75f0d,0xffa10cf4,0xff92ca6a,0x001f91c8,0x00c1dd99,0x0145d05c,0x016c081a,0x0178e412,0x019e2190,0x016a7c96,0x0120030e,0x0137490a,0x01edd302,
-0x01330ede,0x016ae040,0x0160a702,0x01217ca8,0x012358ac,0x00f20398,0x00f041af,0x0121250c,0x00e2be81,0x00c394ba,0x00c2e640,0x00e2c52c,0x00c0fff4,0x0096a92b,0x0087e951,0x00e3fe9a,0x00607cad,0x008bffa4,0x009914cc,0x00a43480,0x00b73515,0x00ca442a,0x00e1852b,0x00d745cd,0x00d056b6,
-0x00bcc96c,0x00aee629,0x0088fd54,0x007b5d48,0x0090370d,0x00b7c3c0,0x00da8881,0x01025780,0x00de66c0,0x00c5f681,0x014d0e2a,0x01b5528a,0x01f1ad7c,0x01088fac,0x01979414,0x01e256e8,0x01ea9a60,0x01eb7bcc,0x01d787f6,0x01ee6478,0x01f88eae,0x01f64914,0x017a83b6,0x00e3c1ec,0x01d7d49a,
-0x0168a7c6,0x00f56a21,0x00735652,0x009e1f2e,0x009d708f,0x00a9ef9c,0x00afa356,0x00b50c55,0x00bf1bb1,0x00b81508,0x00b79d6a,0x00ba55ce,0x00b450c6,0x00b4605a,0x00aabb84,0x00bad99d,0x00bfa59f,0x00c2b7d9,0x00cba3f6,0x00d19c6e,0x00848606,0x0061692f,0x00c09bce,0xff8620e6,0xfef138e2,
-0xff0dfb1e,0xffee743d,0xff153057,0xfee80dd4,0xfedabaec,0xfee2b71e,0xff1e6aca,0xfeeba570,0xfeea4668,0xfefb0664,0xff1289fe,0xffcf797f,0xff0c4aff,0xff1a330e,0xff9904a2,0x00d1b7be,0x007e9b7f,0x008c7770,0x008c4c51,0x008955cf,0x00859371,0x0085fce7,0x0071c249,0x006d1875,0x006f0c48,
-0x0078858b,0x007de801,0x0082f9a2,0x007d6720,0x0076c9f8,0x00617b90,0x006db15e,0x00754faa,0x00626e82,0xfef2fd5a,0x005947b3,0xffea8a13,0xffcd8ddb,0x00130fe0,0x000f4575,0x005762e9,0x00300310,0xffe49b11,0x00138851,0x002394e3,0x0000ba0f,0xffdfcc52,0x00100848,0x0009bf9f,0x004a2654,
-0xff5877f1,0x0081eca1,0x00bf626c,0x009bdfcf,0x00af39f0,0x00a87b47,0x00a44751,0x00a28b65,0x0064bdbf,0x00500704,0x00597b14,0x006ede92,0x007ae53f,0x0078c0a8,0x0067cb85,0x00555649,0x002c2ae1,0x0048ec9a,0x0066e5e6,0x00249f7d,0xff7d4e09,0x0008e754,0x001a3d80,0xfff3d62f,0xffe70083,
-0x001acd51,0xffd73fab,0x00543df0,0x0001410b,0x0070a572,0xffc377b6,0x001cb403,0xffdc9413,0x003ef646,0x005d75f6,0x006139d3,0x0009285d,0x006d2600,0x010426a8,0x00bd90e3,0x00d3fc36,0x00bfae03,0x00b342fb,0x00ad73a6,0x003962b7,0x001b98fe,0x0031254a,0x0066970c,0x0088abef,0x009099e5,
-0x00650a26,0x004d0c76,0x000c51e1,0x001618f3,0x0083c961,0x001a3ff6,0xffae799b,0x005b4c3d,0x00977d28,0x000a330f,0x001adde2,0x003ad66d,0x0056f544,0x004c47dd,0x00678f6e,0xfff556af,0x0001f27e,0x003ee35b,0x006ce9e6,0x00bdfd9e,0x007c64c3,0x00e14016,0x002a1d50,0x0092f076,0x0138371a,
-0x00d4e0a8,0x00fc5f09,0x00e55eaf,0x00dbc35c,0x00d33d2b,0x000d2685,0xffc4b1d7,0xfff78eb1,0x0046439d,0x007448d5,0x004f0d36,0xfffc2c9a,0xffd666c7,0xff8e1109,0xffcad326,0x00b68e00,0xff55c919,0xfe335530,0xfedb8a4a,0xfffc4a96,0x003befdb,0x00776aa3,0x0023525f,0x000ceec1,0xfff7e744,
-0xffe45411,0x0025b1cc,0x00260d9f,0xffef5403,0x003588f6,0x008d038f,0x00937ace,0x00fd539c,0x0045c263,0x0034b05d,0x01420118,0x00ed5607,0x013070c4,0x0071627f,0x008655e3,0x0100d668,0x00e919c4,0x0114876e,0x01730552,0x008fd154,0x0083d232,0x011429d8,0x012569ec,0x0135dd64,0x00eeae3d,
-0x00acb83b,0x018d1a14,0x016928dc,0xffb823a1,0xffd3535f,0xffa7ff23,0xff664eae,0xff8e1ce2,0xffa55dfc,0xffcfb3b4,0xffebeacd,0xfff5c46e,0xffe9bd4a,0xfffc98b1,0x002a4b83,0x0054fe39,0x002d5c88,0xfff03c3c,0x00140471,0xffd49474,0x00703316,0x00a9f75a,0x004bef95,0x00864e78,0x0046445f,
-0x000d1f09,0xffa707ba,0xff62e3a3,0xff712b10,0xfff14572,0xffd28ccb,0xff8ce965,0xff69c53b,0xfe477cf2,0xfe1a6f7e,0xfed0c02a,0x0001f5d2,0x00214b08,0x00828c2a,0x00180683,0xfffdf10e,0xfef29002,0xffa2fa48,0xffa90384,0xff8a3798,0xffa4d358,0xfff1a767,0x000a3923,0x0012a736,0x00231bc3,
-0x001ddee7,0x00130d8c,0x002d6c3f,0xfff8fbd2,0x00469b46,0x00033acf,0x00b7e9b3,0x00af238a,0x0033a548,0x0062f324,0x00c0e14a,0x00fccf6e,0x00c49d62,0x010327e0,0x00ea70b8,0x009be7ea,0x00daaaf2,0x00faef51,0x00f757b9,0x0134133a,0x00f7a3f4,0x00737b1c,0x00056aab,0xfe21a9b0,0xfd247274,
-0xfd9af9b4,0xfe4e2906,0xfe93cf7a,0xff20af8a,0xff6abf66,0xff79b2bb,0xff957175,0xffb7df02,0xffe6f891,0x0002bf43,0x000d6669,0xfff9ebd4,0x000d89f0,0xffe6c307,0xffdc5d00,0xffe12b67,0xffaa1f60,0x0098430a,0x00999c9e,0x005ba5f6,0x0028c261,0xfff2b6cb,0xffa59934,0xff4fa181,0xff602d6d,
-0xff64770f,0xff71a926,0xff52a976,0xff4173a7,0xffceabae,0xff3b6f46,0xff2c8f3e,0xff461c31,0xfe705a3e,0x000e6e0c,0x0033a455,0x00ba6655,0x016bd5e2,0x0170454e,0x0175308c,0x0112f41c,0x0035fd4d,0x0014a2ac,0x0016d052,0x0012cca9,0x000c8772,0xfff83fcc,0xffd0276d,0x000ad0fa,0x0019354f,
-0x0009bfdd,0x000ef856,0xffc22d8c,0x00579fa8,0x0015c9ff,0xffbe2ac9,0xffe9837b,0xff8494b2,0xff530ac6,0xff6812a0,0xff856801,0xff68544c,0xff3bbdf6,0xff569b08,0xff6c4967,0xffaad1c9,0xff4a80e2,0xfeb9777a,0xfe6ef1a6,0xff21207b,0x01f7c8b0,0x01863e28,0x012190e4,0x013e1e96,0x010bf1b4,
-0x00e34328,0x01204ff4,0x01530e78,0x013b4726,0x010de834,0x00f641a4,0x00b1b8ff,0x00aa8843,0x00bcb11a,0x00712fd0,0x001d1f64,0xffc3a015,0xffb0d160,0xffa5297f,0xff93ef71,0xff969dee,0xff8d2369,0xff95c240,0xff376cd9,0xff376a50,0xff68acd6,0xff510724,0xff536261,0xff286032,0xff05cefd,
-0xfef0d814,0xff0c6522,0xff7cf712,0x00388217,0x013223b6,0x017aca52,0x01b801ac,0x015bdcfa,0x00ef3198,0x01147fa4,0x00d775bb,0x00f50109,0x00fb52e5,0x0102be26,0x00bf2bbf,0x00d985fe,0x007fb618,0x00b90bc1,0x006d9031,0x0073aa51,0x0056057d,0x0059ec18,0x003c0185,0x0024bb10,0xffdc8e73,
-0x0014675d,0x003e30a5,0xfffd4e1f,0xfff109bb,0xffdc2276,0xffc710c1,0xffa7a1d0,0xffa74ab7,0xffa14313,0xff8e8498,0x00400152,0x00e40bdf,0x0187bd0e,0x01a90ee4,0x01bfb6fc,0x01fb28ea,0x01adfb32,0x015f56a2,0x01618624,0x00fc9059,0x015e4eea,0x0123210a,0x01208b86,0x01402bfc,0x013141b6,
-0x01486424,0x01253ffa,0x00dfe790,0x00f63479,0x00fc669c,0x00d4248e,0x00ab526f,0x00a955b0,0x00a66c1e,0x00abe768,0x00668796,0x00913b63,0x0097f67e,0x00ad1518,0x00c257e2,0x00cfa0ec,0x00df66c1,0x00eb6b76,0x01107d86,0x0133bce8,0x0146cb44,0x01500b00,0x0145ad4a,0x014e2ea8,0x014928ec,
-0x014c3f74,0x014d8858,0x01539802,0x01502ab8,0x016d84d6,0x00dcb7ee,0x0092bae2,0x009d595b,0x0102abe4,0x0092bff0,0x0079eaaf,0x0069f8cf,0x0061bf7e,0x0072a2c5,0x0055ffc1,0x0048bcce,0x004ab316,0x005ce5dd,0x00c7516d,0x004e1f71,0x0055947e,0x00a40027,0x01138dd8,0x0105485e,0x010f1504,
-0x0112fd28,0x0119684c,0x01211954,0x01273244,0x0130497a,0x01374716,0x0143d030,0x014983f6,0x0153ee26,0x015c3a18,0x01583dbe,0x01562984,0x0153915c,0x01541302,0x017758e4,0x002f761c,0x0021e64c,0xffde2aa4,0x00f1b0eb,0x0132767a,0x00a79df0,0x00c21f32,0x011aa0d2,0x00c8dbff,0x00c9f689,
-0x00c6e4d6,0x00a7c4ad,0x00b3b804,0x00ac3a8f,0x009110b3,0x0121b818,0x00d94b45,0x0097033a,0x012b3580,0x010818e4,0x0005a7c1,0x003532a6,0x00303e72,0x002b65d2,0x002ab604,0x0029f92d,0x0032d7ae,0x001cc969,0x0015d790,0x000faf7b,0x00268017,0x00317838,0x00304f8a,0x00485729,0x00480a1c,
-0x002daaed,0x0029e1a4,0x0009a196,0x002f2cb0,0x00fdcb06,0x00659449,0x00eae044,0x008a48f9,0x0052dc3d,0x0073c2f4,0x00406dc3,0x00772b25,0x00d552b6,0x008546dc,0x0057c5c8,0x0072b5a5,0x0088277f,0x008138f1,0x00bff7ed,0x0092d36b,0x0108539c,0x00772386,0x003b74bb,0x005b0916,0x003e281b,
-0x00398027,0x002940d5,0x00344d92,0xfff56798,0xffe9a728,0xffeffe26,0x00288dd1,0x0051151e,0x004ec221,0x0091890b,0x00852016,0x00310b88,0x003aac59,0xffd3c7fe,0xfff5947d,0x00ba99c0,0x00943244,0x0102d25c,0x006b4bc1,0x004e8d95,0x006cc56d,0x006ddd91,0x00290151,0x00d4e73b,0x0015ff29,
-0x005d5e61,0x0036baee,0x0091e026,0x008dd64c,0x00aac012,0x00cd624d,0x0113abb4,0x00a6a8ff,0x00436e64,0x006a4d79,0x004acc5b,0x004777b5,0x003a08af,0x006bcfba,0xffe0d70c,0xffbfbbb7,0xffaec9f5,0x002c1a41,0x007f2bac,0x0062b2a5,0x00fe8810,0x00dcd9b4,0x00228ec3,0x003e1c8f,0xffce127c,
-0x001a9225,0x00c2e380,0x00a1edf6,0x0106e942,0x003d4316,0xfff2aaba,0x002936a5,0x00230aab,0x00474340,0x003d7b00,0xffff8ac2,0xffee00fb,0xfffb2b0c,0x0048a688,0x006840f8,0x00f31ef4,0x00a8a818,0x011f4880,0x00b30630,0x0072862c,0x00b22602,0x0080199a,0x0071b19d,0x00559c8e,0x0072841d,
-0xff9fdaa6,0xff5a118a,0xff6347f6,0x0040f928,0x00cf949b,0x00a12c87,0x0173797c,0x012da9d0,0xfff28abc,0x0043685d,0xff8d6b33,0x0014a2bc,0x005e847e,0x0014a54d,0x00770a3d,0x00bdfbbb,0x00ba778c,0x0080d72b,0x0037488b,0x000a50f4,0xffe863ff,0x0022dc25,0x0025f2e2,0x00178c2f,0x0054ca04,
-0x006eb77f,0x00d0a062,0x00e09c24,0x0157ee20,0x00cf880b,0x00154b18,0xfff8c15a,0xff6ddb48,0xffdbc363,0xffd1b94c,0xffab0279,0xff69dc32,0xff5fce52,0xff83aadb,0xff454e06,0xffb21348,0x00da910e,0x00ee1154,0x00f0fb15,0x0093504c,0x005dc2c1,0xfff53616,0x016979fc,0x00c20e71,0x00021cff,
-0xfff6e05d,0xffca9935,0xff90741b,0xffaa93d3,0xffcb0a68,0xfff789a3,0xfff4ecdf,0xffdeb7fa,0xfff6f241,0x00098f92,0x00363f1f,0x003b00fc,0x00603d4e,0x002dde6e,0x006b6605,0x00b796d2,0x00720163,0x00ab02fa,0x00897484,0x00223d0e,0xfff6ea68,0x000994f1,0xffe94b2a,0xfff433e9,0x0012f313,
-0x001cbbae,0x0027a9fc,0x008ca470,0xff63e378,0xfefdfb12,0xff2ce48e,0xffa64c3a,0xfff653c1,0x005a8ba7,0x008fbffe,0xffff52a7,0xff5d6fb7,0xff94f7e6,0xffed8fde,0xff9f0b03,0xffb87678,0xffd0d11c,0x00084bb5,0xffff7692,0x0013c14e,0x00174ae3,0x00330386,0x0035c1c1,0x006acd26,0x00333e64,
-0x0092ffcd,0x00eefeae,0x0012d3f3,0x00328e5e,0x003cf8da,0x003e6594,0x0038001b,0x0024bb72,0xffcbf0e7,0xff7580f5,0xff6324e3,0xff4418f7,0xffc28968,0x00ffbc4e,0x01e9820a,0x01f5a814,0x0139d5e4,0x00582228,0x0009c744,0xfe2588ca,0xfdc7a810,0xfe2a8eb0,0xfe8a93c8,0xff2eecea,0xff8772a6,
-0xff82d43d,0xffa04e24,0xffc30650,0x00031c12,0x0002510b,0x000bb0d4,0x0015b7a8,0x001798c4,0x000f5ca0,0x00052ed0,0xffdad07c,0x003cfde2,0x009d0c70,0x0034a257,0x00397340,0xfffce5ff,0xffe608ad,0xffb54f06,0xffd0fd78,0x000906b8,0x0054632e,0x00be9481,0x00b294a3,0x00466876,0xff548c20,
-0x000203e2,0x00506a90,0x00689c83,0x00e3586f,0xffc205af,0x00ef3533,0x01aad3a6,0x0192c7fc,0x01791ddc,0x015b6e54,0x00bdbee0,0x0026d4b4,0x00369a01,0x0000818e,0x0020eeac,0x00130251,0x00052472,0xffe61304,0x0019655e,0x0028f54b,0x00157ccf,0x0021da97,0x006687ef,0x0065a15f,0x00027a21,
-0xffdfcb96,0xffaa4e87,0xffa39a8d,0xffce98b8,0x004cf965,0x003a2f24,0x004555c6,0x0087b763,0xfffd64cd,0xffe95ea3,0xffed812c,0x003559c8,0xffde8248,0xfef0047c,0xff87b5d9,0x021136a8,0x02a7c6d8,0x0270a1bc,0x022f2328,0x01e23234,0x01792f4a,0x01484ee8,0x01984dd8,0x013e8840,0x0103da3e,
-0x00b92d32,0x00af6bee,0x00a8f2cc,0x00b205be,0x0077599b,0x00446aa4,0xfffc34ec,0xffc87fb4,0xff910198,0xffa91496,0xff67fd5e,0xff643bd1,0xff95265b,0xff96ccc0,0xffb14022,0xffb373df,0xff81d136,0xff44f519,0xfee83338,0xfec7a568,0xfe9393da,0xfe612ac2,0xfe625e6a,0xff2bb81e,0x009356bd,
-0x01843058,0x01200d78,0x015c9af0,0x01a2dae4,0x017b3254,0x01791218,0x0169a1a0,0x01575b82,0x013f3e90,0x012aa05c,0x00f6e124,0x01005362,0x00a12978,0x009420ee,0x00559a08,0x00639410,0x005100b2,0x0052cc31,0x0057ffe7,0x007505b0,0x00331fe8,0xffdab39f,0xffcc4340,0xff94ee02,0xff79f776,
-0xff58baf7,0xff39d24d,0xff4a04b4,0xff5ba55a,0xff5e35dc,0xffd8283d,0x003f2886,0x00a3179f,0x00fd1a79,0x013697aa,0x015f0c86,0x0143cd9c,0x012749dc,0x0146e776,0x018a1500,0x013b1826,0x016c17cc,0x015bddc8,0x01461bc4,0x014d95b4,0x012a75a8,0x01371a8c,0x0157a956,0x01336732,0x010f6ad6,
-0x01123c64,0x0100d196,0x00bb346b,0x00aa4f24,0x0067f73f,0x00921690,0xfff3bfc5,0x0000f5a8,0x002472c8,0x00354e93,0x004cc1fd,0x005d5cad,0x0069c251,0x006fb82d,0x00822363,0x0099f271,0x00aea8b8,0x00bfec22,0x00d784d2,0x00d987b1,0x00eaf699,0x01017cf6,0x0122ef5e,0x010f5876,0x00ff8545,
-0x0192c370,0x01b47e30,0x01666092,0x0174978e,0x01aeb674,0x017f6c1c,0x017f04f4,0x0177c2b4,0x015b7e78,0x0166c1f8,0x016726fc,0x015c041c,0x019021e4,0x0144d25e,0x0142c1a0,0x016a260c,0x0131c334,0x008622ec,0x00b380b7,0x00adae25,0x00b03e53,0x00b252d4,0x00b5a394,0x00ba57eb,0x00c9bcbd,
-0x00d60c09,0x00e17117,0x00e9594c,0x00f42915,0x01037d96,0x010585e0,0x01077258,0x0104eb76,0x01084716,0x013616fa,0xffd27a26,0xffd48e53,0xffde60ba,0xff462b19,0xff785d2d,0x0081f819,0xff59c2fd,0xff6e6f7d,0x002aa8ae,0x0025e967,0x002ecce0,0x005efdc8,0x00468297,0x00485ef2,0x005a3500,
-0xff74e9af,0xff585989,0x008299fe,0xff904000,0xff5f84fc,0xfff1ab38,0xffe0de25,0xffd37392,0xffd0eae9,0xffcebb00,0xffc956c1,0xffc292da,0xffb6b30f,0xffb2b29c,0xffb13c21,0xffbc4fe6,0xffbe794b,0xffb8ab51,0xffbc2633,0xffc12ab3,0xffce466e,0xffcbfc1a,0xffe24ff4,0xff98101f,0xffb3b093,
-0xffcd5b36,0xfff913b9,0xffcf9386,0xffbabf4f,0xffdffe83,0xffd51643,0xffb3fd61,0xffb9af10,0xffa136fc,0xffc1c8a0,0xffa91112,0xffdb29b5,0xffec7408,0xffb9d3b2,0xfffb40da,0x00060086,0xffc93f56,0xffeeba3f,0xffbc238b,0xffb867a3,0xffb5ad98,0xffac31f9,0xff99b71a,0xff747a8b,0xff66899c,
-0xff6411f8,0xff82a09a,0xff86081a,0xff6f53bd,0xff7093db,0xff811009,0xffb11836,0xffb5351d,0xffdd9e77,0xff8a63c8,0xff65febe,0xffcbf1c4,0x006e1e34,0xffe30cd5,0xffd88e89,0x0018db17,0xffe5c9f7,0x00233fa4,0x001f45b9,0x001bf30d,0xffe0b7f0,0xffe3348c,0xffe96d03,0x00074971,0x002955ad,
-0x003ba428,0x0008ecff,0x0001f7fb,0x00040449,0xffc04986,0xffa52496,0xff983382,0xff7e3ce2,0xff55f0d3,0xff137e9a,0xfef7af50,0xfef47c88,0xff3c832f,0xff4b5ddd,0xff1e2be0,0xff2ec9a9,0xff5c56eb,0xffb97153,0xffa75bb8,0x000fe42f,0xffa805cf,0xffadbf86,0x001c90bc,0x00eaf6ce,0xfffb9cc1,
-0xffe64d45,0x0054be04,0x0033f516,0x0045c849,0x0099103b,0x001b0090,0xffeea5a3,0x002e0665,0x0046a1e9,0x007653dd,0x00768cb7,0x00a5300b,0x006524a8,0x0037a766,0x0016f64c,0xff994401,0xff6b1f89,0xff5885c7,0xff307fae,0xfefbfa38,0xfe892bf2,0xfe6231aa,0xfe723e4a,0xfedf584c,0xfee7e68c,
-0xfe8c4d42,0xfe93996c,0xfee69690,0xff8e8970,0xffa2dc1c,0xff6069ad,0xfed4aae0,0xfe847144,0xfefdf748,0xffb0b733,0x0033ac25,0x0076f3c9,0x005c4371,0x001d32f5,0xffed8b64,0xffe4fc6d,0x001fe493,0x002bcaf7,0x00097b4f,0x003c3faa,0x0063e689,0x006f8500,0x00acc8aa,0x00580e9e,0xffd1006c,
-0x000f8490,0x00165eaa,0x0042d0ea,0x00000f6f,0x0021b728,0x0080b997,0x00484179,0x0017b735,0xffa6a063,0xff6abdf8,0xff57bb2f,0xff978ba5,0xff8bde46,0xffcdfa43,0x003741d4,0xff9e4112,0x00b94337,0x0180467c,0xff82cc91,0xff5689a0,0xff7e84c2,0xff9b48db,0xffbce6cf,0xffac7787,0xffe20038,
-0xfff2f07e,0xfff1fba9,0xffe3b3e4,0xfff352bd,0x00204ce1,0x002d899f,0x00127073,0x000359e9,0x000017eb,0x0005bbfb,0x002a8ba7,0xffb5d9f9,0xff3ecff2,0xfef730b0,0xff093e56,0xff32a93f,0xff5dc00a,0xff87083a,0xffc7c8f3,0x00125370,0xfff3f6e5,0xff9ff1b6,0xff9c6017,0xfdeb6ba0,0xfdc214b0,
-0xff2be8f1,0xff7627d6,0xff7fa544,0xffc8b020,0x0032de80,0x0012357b,0xff1bea5a,0xff6b6295,0xff95f792,0xff9a5bf1,0xff9c8100,0xffcef4ec,0xfffc4016,0xfff8760c,0x001525c0,0x00161cb2,0x0009e0f8,0x001cec31,0x0036f718,0xfff70c89,0xffd4ed93,0x00a110d2,0x0071ba38,0x002db91a,0x00212bb5,
-0xff8ddbd1,0xff23db2b,0xfef75574,0xfea41242,0xfed00cd4,0xff5bdb45,0xff95b1f3,0xff3ae01c,0xfe481af8,0xfe706c9c,0xfe5b2f3c,0xfdedc7f0,0xff2ef265,0xfecaf96c,0xfeac0d14,0xfdd5da80,0xfde51a28,0xfe821fb6,0xff1a2512,0xffa6387c,0xff9be943,0xffac3940,0xffd42d6f,0xfff558a6,0xfff5e8aa,
-0x00022777,0x00062f37,0x00083f11,0xffe5b4eb,0xffdfc863,0xffd14769,0xffe241a9,0x006e2d98,0x000bf3fd,0xffa0a578,0xff47fe79,0xfef8e04a,0xfedd9f04,0xff382338,0xfefaea3c,0xfeff3602,0xff29ca9a,0xff3ba9ac,0xff157e74,0xfec8bd70,0xfda39e1c,0xfce883f0,0xfc395d60,0xfe0aa2fe,0xfba413d8,
-0xfd6a8904,0xffd6735a,0x004afcd5,0x00797e18,0x006d3b99,0x000b247c,0xff8f2385,0xffad8975,0xffb934a1,0xffdd6aa4,0x0011034c,0x0009a78e,0xffd228e6,0x00052bed,0x001c9481,0x003bc751,0xffc3d3f4,0xff9c0f2a,0x00074590,0xfff37c00,0xffda6d0a,0xffa189fb,0xff7b443b,0xff52643e,0xff0ecf2f,
-0xfeb13e8e,0xfe8a7acc,0xfe8afe40,0xfea81546,0xfe96aa80,0xfe63667a,0xfe1ac286,0xfd75a2ec,0xfc7c94d4,0xfbbcc198,0x010d89d6,0x0154a9ec,0x01f4b00e,0x0192b780,0x0194390a,0x01292ca4,0x0135f7ac,0x016c6268,0x01397d8c,0x0107323c,0x00ba21ba,0x00941c2e,0x008a0b03,0x00890dad,0x004d6022,
-0xfff18f4c,0xff9ad99b,0xff9ba8b6,0xffa6a066,0xffd53704,0xff960c29,0xff66dc87,0xff6dfb9c,0xff25982b,0xff2143de,0xff2dfed8,0xff4e91a7,0xff6b0a29,0xff5573a0,0xff2d469e,0xfeb71840,0xfdfacba4,0xfe1436c0,0xfe7b44ba,0xff7fc1c8,0x00573548,0x00bcc75d,0x00e567db,0x00c103ed,0x00d6b74a,
-0x00e7bf49,0x00fd16eb,0x0111fda8,0x011db2de,0x00fe309e,0x00efec67,0x00c06278,0x00abcca8,0x00802e50,0x005181fd,0x0042b0a4,0x00364a27,0x00234f3c,0x0008a424,0xffd24097,0xffac60be,0xffa1309c,0xff85a4a2,0xff7266cc,0xff532fee,0xff3939f6,0xff1af8ae,0xfef00156,0xfeb999bc,0xfe7cec62,
-0xfebca524,0xfefde57e,0xff35e101,0xffbfc3d5,0x0027f014,0x008bb2f5,0x0092089b,0x00bd0ebc,0x00b9e27e,0x0125ba72,0x00e18084,0x00ea432c,0x00f9a57a,0x00e97edd,0x00ee1884,0x00cb88bf,0x009ff569,0x0082dc0a,0x00645844,0x0065707f,0x00467a3a,0x004a156e,0x003ae4a8,0x0001838d,0x000850a4,
-0x000c414c,0xfff70409,0x0018dcc0,0x0015d926,0x00202ef8,0x0028050d,0x002f432f,0x0037ac91,0x0048c4fe,0x005c37ef,0x00647066,0x0063402d,0x0057de9c,0x0047e093,0x00589942,0x00661b1c,0x00813bcb,0x009b7610,0x00af4821,0x00ad0c1a,0x008bc3d7,0x00b6f820,0x015301f2,0x0081f085,0x00b1ea79,
-0x0130b33a,0x012ac8b6,0x0129d1b8,0x013197ce,0x012b3674,0x01291256,0x012c1992,0x006ff182,0x004b6956,0x010e6cfe,0x006a9814,0x004a8086,0x007f37b7,0x007e0358,0x007c8ff7,0x00801733,0x008080da,0x00828e60,0x00831211,0x008631c8,0x00873291,0x008b3f48,0x008b3945,0x008f1014,0x008f9620,
-0x0097fe76,0x009cb36f,0x009fed81,0x00a2e6c6,0x00c4b543,0x00d249a0,0x00aa3c00,0x00cf29ce,0x00df44d2,0x006482c4,0xff70dc76,0x010764f8,0x007660d3,0xff9657bc,0xff85eceb,0xff847465,0xff876a6b,0xff706b3b,0xff66479d,0xff5440eb,0x007470f1,0x00fb9fda,0xff443244,0x006d7cf5,0x00ea8cae,
-0x00e49343,0x00c424de,0x00d56784,0x00d3453a,0x00d4256d,0x00d078b4,0x00c83e7b,0x00bdd3c8,0x00bb8a28,0x00ba18b1,0x00d82621,0x00e30e65,0x00d9ffda,0x00ee955a,0x00e47933,0x00b10f5e,0x00bfbbec,0x00a72e78,0x00f374bc,0x001c8219,0x00e80ec4,0x00e34270,0x00737ad0,0x008fda32,0x009afce3,
-0x00add414,0x00cbdcea,0x00d4aaad,0x00cfd833,0x00a509fe,0x00a8d5f0,0x00731e94,0x00889033,0x00caeb13,0x00c459c2,0x003e072d,0x0111dabe,0x00f868de,0x0112f9b6,0x0113d472,0x01141286,0x00fbfc59,0x00d8c3e9,0x00b3fe2e,0x00b2d7b1,0x00c1cad7,0x010febe8,0x013278fe,0x0111280a,0x0145258a,
-0x011bb2c0,0x009913ad,0x00b6f7a4,0x008ac579,0x00a54c1d,0x00a8db75,0x00c085ae,0x00f6771f,0x0067d0cf,0x00498626,0x008cfc05,0x00514752,0x005992c5,0x00b5d66d,0x00767c91,0x003b1961,0x006c8407,0x00695912,0x009fe65e,0x009e74d7,0x00cf79ec,0x00e6dbf2,0x01057efc,0x012c10e6,0x013504de,
-0x014864ea,0x014840e8,0x01290132,0x00f73f30,0x00ae0934,0x00a70451,0x00b729a9,0x015bb606,0x01a48f14,0x015232e6,0x01c84c92,0x017590d2,0x007bc658,0x00b5c14b,0x007131a2,0x00941c83,0x00a1a03c,0x00f7e18a,0x015d70ec,0x005f021d,0x00017d84,0x0053dca6,0x0036e94a,0x004eeae5,0x00901106,
-0x00145c5c,0x00065b1a,0x003160dc,0x006d1f95,0x00a451e7,0x00b4c380,0x00f2c54a,0x00e40fb2,0x0112abc6,0x016a1188,0x019a51c8,0x01ce24f4,0x01c63dea,0x017ef6b2,0x010241da,0x00806b2c,0x006ac41c,0x009f6b52,0x01b0a004,0x02116e94,0x0191b782,0x021bdb14,0x017b3388,0x0004fb64,0x0059879a,
-0x0142ff9c,0x00b54842,0xfffe63cf,0xffd621e1,0xffb9206f,0x006487bb,0x00d046f5,0x00b159c1,0x005267d1,0x00159b9c,0xffef8c33,0x002d6e02,0x003c126c,0x00286147,0x006a2cdd,0x009493e2,0x00a834aa,0x013376e4,0x01251d24,0x0127b1a4,0x0158489e,0x00ca0b4e,0x006d19d5,0x0058cf8a,0x0051e8bb,
-0x002d9d4b,0x00986514,0x00cd6801,0x00b8059d,0x01117448,0x01888a94,0x023895b4,0x0217a00c,0x0225becc,0x0238f6e0,0x019e5bb0,0x00606ba6,0x022a766c,0x00aa5713,0x00029599,0x006429b9,0x001c800c,0xffed8649,0xffd912bd,0x0008983c,0x00201ecc,0x00027eb8,0xffedabb0,0x0000e26d,0x002e7c85,
-0x0056800c,0x00676666,0x007bf0a2,0x0031f7b7,0x000fc101,0x00b64649,0x01073bca,0x013e176c,0x018b3698,0x00e30625,0x0079d76f,0x0052b47b,0x00286466,0x004475ab,0x007db9b4,0x0081f0b6,0x0086965a,0x00b65b1c,0xff9ffb3a,0xff30722d,0xff6cf3f5,0xff9db548,0x001c705d,0x00026289,0xffea9ce0,
-0xffdb9be0,0xff3f11ff,0xff6b7b9b,0xff9e3d36,0xffcdcfd4,0xffc3fa4f,0xffd7427d,0x000ad7c8,0x0011766f,0x0027bdf1,0x001796f9,0x0037a87d,0x006e4389,0x007f2387,0x00591503,0x009b4e6a,0x013641c0,0x009e7934,0x005d72bc,0x0041e604,0x00b6378b,0x014ab5ae,0x01e1dbfa,0x017d68fe,0x0114ff10,
-0x00c079cf,0x0105a9b2,0x01de4360,0x02ef4810,0x03a8b3fc,0x036313e8,0x0260f3a8,0x00d8dd2c,0x01b1a3a8,0xffb8f4c5,0xfe6593be,0xfe8b19e8,0xfea16164,0xff7a8c0b,0xffc90000,0xffd72035,0xffcd1e81,0xffeedfd2,0x000de5e9,0x00055a7d,0x0008326e,0x0037a796,0x0030e31a,0x001961d7,0x0025dd3d,
-0x001d4a91,0x002b4b11,0x008a40c8,0x00acc429,0x00d37f8e,0x00b1d46a,0x00ae9202,0x006c14cc,0x00452f70,0x0030dc60,0x004f173b,0x008f2dd5,0x0070eab4,0x005ad736,0x00034de6,0x010baf5e,0x01c37cba,0x029ecd10,0x024b02ec,0xff7b7894,0xfeee8e46,0xfefa406a,0x000e3ec5,0x0074c5bd,0x0011a20d,
-0xffc50510,0xffba01b5,0xffc090bd,0xffd8bd43,0x00087890,0x0033f2e7,0x002b88bc,0x000728a2,0x0011f958,0x00230c85,0x0053e986,0x001f9cd6,0x00105f45,0x00796b9c,0x0051b04e,0x001e441f,0xffcf0c3b,0xffde644b,0x00163fbb,0x0079c280,0x005c40a8,0x00a7938e,0x01451aa6,0x00f9712f,0x01177e46,
-0x01578870,0x01bf0f2a,0x01823b6e,0x00c689a5,0xffde44b8,0x02211a54,0x02985b20,0x01edf624,0x020b0e50,0x01d28854,0x019b2b70,0x0172f87c,0x01877c5e,0x0165b70c,0x0124da74,0x00bd8cd9,0x00a46094,0x0094c617,0x0079262c,0x006a7b4a,0x004139be,0x0015be87,0xffd07f08,0xffc47a77,0xffda871f,
-0xffe0b050,0xfffe22b8,0x000aa5df,0x00400a54,0x004342b4,0x003cba85,0x00253f12,0xffd51b2b,0xff4bc2f4,0xff6a04b7,0xff7b1f2f,0xffa4c142,0xff3adfc6,0xff605506,0x001b20cf,0x012e1a0e,0x01331d7a,0x0167587a,0x0169d368,0x0189f32a,0x01705d98,0x016a1ba2,0x015a0b14,0x01543f02,0x01238338,
-0x010c6982,0x00fa3ea1,0x00d51f01,0x00945716,0x007c9794,0x005d260b,0x0058fd9d,0x003f7243,0x002a3943,0x0017e787,0xffeacdad,0xffb13853,0xff84f0bc,0xff4dcced,0xff3a66e3,0xff28e20d,0xff13c9e3,0xff2617fb,0xff3aec35,0xff446051,0xff8742e4,0xffaafe5e,0xffd851a6,0x004644b8,0x00afccb0,
-0x00fb4328,0x01138cd2,0x00fa8ba2,0x0110dab0,0x00c9f16c,0x01020aa6,0x01069276,0x0107207c,0x011efa2a,0x012303f4,0x01122278,0x010ed650,0x00f4898a,0x00eb9338,0x00c87a8b,0x00b6952d,0x008c864a,0x00661ab3,0x006ceefa,0x003ac663,0x0019a767,0x0008bebc,0xfff5484f,0xffffbca4,0xfffc916d,
-0xfffc7fb0,0xfff8576e,0xffee1138,0x001a80d9,0x00478515,0x0079875a,0x00a75e19,0x00dd593e,0x010d9416,0x0102e36c,0x00f6cd13,0x00f87750,0x00fe7f98,0x00de1bf9,0x00e0d74c,0x0121f3a6,0x00fcce5b,0x0096a98c,0x012cbb42,0x010aa8da,0x00b8e08f,0x00a80476,0x009a1c85,0x0087dafc,0x007bc136,
-0x0070469b,0x0060c913,0x00e082b7,0x00fb2d2f,0x005a7083,0x00c8b79f,0x00dfe2fa,0x008f8f35,0x00948b31,0x00922b18,0x008cde84,0x0088a726,0x0085980b,0x007b81a1,0x009540c6,0x00a5e74c,0x00b76bac,0x00c779c9,0x00d63907,0x00f0674b,0x00e7a03a,0x00e86e1d,0x00e3ef03,0x00e4d2f8,0x00fc194f,
-0xff8c227a,0xffa01b65,0xff5c016b,0xffd158bb,0x0083cb96,0x017d8698,0xff8eafd5,0x00556b43,0x0139629a,0x013e1f8c,0x0141a802,0x0146d550,0x0150f700,0x01523b3a,0x0154ac8a,0x0060aa11,0xffa86aa7,0x0179c9e6,0x007ff864,0xffe6ad50,0xff72bd97,0xffa3cb4e,0xff888b57,0xff837d35,0xff8120f6,
-0xff7b5468,0xff70f067,0xff6e4745,0xff6ba4b5,0xff65fb11,0xff75e1a8,0xff786e45,0xff6baa55,0xff7bd0b3,0xff86abaa,0xff9be5c2,0xff8fbc55,0xff9e5b69,0xff74ae6f,0x00c7f67d,0xffc1fb2d,0x005deb16,0x0021c655,0xffc66a72,0xfffdd1dc,0xffb439a0,0xffb8f355,0x0007fac0,0xffb9457f,0xffc79fec,
-0xffc8cbe1,0x002076d7,0x00117642,0xffeeb46f,0x0005d7a1,0x00db9922,0xffa5d906,0xff8e718a,0xff715733,0xff554ef5,0xff4eea13,0xff3c4294,0xff21c7cf,0xff171863,0xff1652c3,0xff0efdd1,0xff3cab47,0xff459b42,0xff24f36d,0xff4c2a94,0xff66e19b,0xff9bc65b,0xff907b79,0xff890bac,0xff7e05ef,
-0xfff5e327,0x0006cf5a,0x00ca7ab0,0x00171ed5,0x00065809,0x00322c02,0x002b6fe8,0x00098bf5,0x006464e5,0xffe4f8dc,0x002ca671,0xffe4442b,0x00372ceb,0x00158d2e,0x002d9752,0x005605c4,0x006e1c5d,0x00097638,0xff825cb1,0xff68a460,0xff28ea4c,0xff1e89f6,0xfef8d9e8,0xfec85a36,0xfeb021ee,
-0xfea55aae,0xfe984508,0xfeee3110,0xfeffc7ae,0xfebabe18,0xff15e170,0xff5bc89d,0xffb04c8b,0xff9d42fa,0xffc07df3,0xffd72d60,0x0041f960,0x00510fbf,0x011c9552,0x00149938,0xffd7ef09,0x0059b506,0x00215ee9,0x00411652,0x0092947f,0x002f1fa4,0xffece1e6,0x001771f2,0x00387ed4,0x003bb093,
-0x008e89d6,0x007b1056,0x00cce1d7,0x003c4010,0xff855d3f,0xff4168aa,0xfed6b242,0xfeb8ce80,0xfe7385b8,0xfe278b30,0xfe00bd70,0xfe0f7d5e,0xfe102666,0xfe9cbac8,0xfebb0068,0xfe51c24c,0xfee12f0c,0xff39c2af,0xffad8527,0xffbaa185,0xfe9944ee,0xff38954c,0xff767449,0xff5fc048,0xffc6f0f3,
-0x0069a7ff,0x00a01622,0x0097a86b,0x003fb572,0xfff3f64a,0xffe30a51,0x0019ff60,0x00305bb2,0x002b296e,0x005e2ce8,0x0059b902,0x007cdbeb,0x006612c9,0x00abe79e,0x00302747,0xff41f1cf,0xff682bc0,0xff540830,0xff9a8948,0xffb18a00,0xffd3b20a,0xff83d7bd,0xff3949c9,0xfea53f40,0xfef69698,
-0xfede9f4a,0xfea49ff2,0xfed5c3d8,0xff55ba2f,0x004280a8,0xff631f30,0xffa852b1,0x01420406,0xffe02126,0xff584f48,0xff9dce2f,0xffb2fa21,0xffca7de3,0xffd4cc35,0x0005a248,0x001e0d27,0x0002b7ed,0xffefef4f,0xfffcb740,0x0020f1ed,0x000f7d74,0x001786e0,0x00387d85,0x001ef87b,0x00582b7f,
-0x001e6ada,0xff4f593c,0xff059de5,0xfe56718a,0xfec3ac2c,0xff285953,0xffae715b,0x000a7da3,0x00484bee,0x0054087a,0xfff38f48,0xfff56517,0x006f4710,0xfee9f040,0xfe7fa13a,0xff3e0bde,0xff12ba84,0xff858680,0xff9c7c6e,0x0006b8a3,0xffd51012,0xff73c9eb,0xff49dda7,0xff793059,0xffbcb864,
-0xffae1837,0xffb9f1bf,0xffef9928,0xfff7fd32,0x0016d9ea,0x000d9efe,0x001b750a,0x002246cc,0x005b35da,0xffd99c85,0x000314b1,0x00674d70,0x00061f25,0x0024ec3b,0xffdfd5a6,0xff326e87,0xfe8ba444,0xfe374906,0xfdc9b638,0xfe09696c,0xfef40d94,0xfebc318e,0xfe4746f4,0xfdb3c4e4,0xfdbe3b28,
-0xfe0b2bda,0xfde404a0,0xff419fa0,0xff407a63,0x003a9b53,0xfee32f2a,0xfe4f0666,0xfee8870a,0xff332283,0xffc02b14,0xffce5251,0xffd15dab,0x0000940b,0x000d3a05,0xffefdcd5,0xfffa483c,0x0024cf2a,0x001760d7,0x000f1680,0x0000df44,0x0006a838,0x00493236,0x0018f677,0xffa1d40e,0xff615279,
-0xff0fdfdb,0xff3968c2,0xff5b7a68,0xff8feaa8,0xff2bb054,0xff3529c4,0xff8cdc9d,0xff6363bd,0xff34962a,0xfebf577e,0xfd79f8e8,0xfcaf5824,0xfc4244b8,0xfe3bb952,0xfb026660,0xfca4abe4,0xff538d4b,0xff869584,0xffc91fd6,0xffa0f767,0xff5589be,0xff611bda,0xff84af8e,0xff806e43,0xffd05ac8,
-0x0017ac62,0x001f8bef,0xfff764b5,0x00033613,0x0012a6c8,0x0039bf4b,0xffd9c21e,0xfff79701,0x0003d5e3,0x00245843,0x002cde23,0xffb446c4,0xff9920e8,0xff51fb44,0xff029f2e,0xfee676b4,0xfedcd30e,0xfe93c5c0,0xfeccc71c,0xfeab6794,0xfe395e78,0xfdd331b0,0xfd6f8124,0xfce67008,0xfbc3fde0,
-0xffcbbaaf,0x00d6f84a,0x020f09c4,0x0176c3c8,0x019e94f0,0x013d9e24,0x011311fc,0x014385d2,0x010f16ae,0x00ed29ba,0x008b129d,0x007b6d8f,0x0055a479,0x00374eb5,0x002f846b,0x0009b489,0xffe60802,0xffd9a5db,0xffd69716,0xffed7e12,0xff9622fa,0xff66cd72,0xff521e8d,0xff5aaff3,0xff55005b,
-0xff643f1a,0xff6cbc32,0xff74726e,0xff62d6d5,0xff4eb54f,0xfecd7b72,0xfdd146a8,0xfde4a204,0xfdf29e90,0xfe3e1590,0xff2ddfb5,0x002d077b,0x00c415b4,0x01026802,0x00ff6632,0x01572d08,0x0134ec9a,0x012d8c9c,0x01137484,0x0115d7b0,0x00dbdb44,0x00e67641,0x009d9d59,0x00bb8cd4,0x00811e3b,
-0x006dfb1b,0x003a479e,0x00223d00,0xffe89a84,0xffad0cb3,0xff3d20af,0xff0a8b14,0xff0abde8,0xfeee6a3c,0xfee7a198,0xfedd83cc,0xfed78d4e,0xfe95ac9a,0xfe58594a,0xfe1c631e,0xfe1538b8,0xfe1c56b4,0xfe0ed03c,0xfeaf6484,0xff36e00a,0xffa63555,0x00031222,0x002e1030,0x003ba79a,0x01216e70,
-0x0068a606,0x00abd3d1,0x00bea6dc,0x008d6471,0x00a3f345,0x0057afa6,0x003dbe13,0x004c69c8,0x0002ec9b,0xffe8a27f,0xffd650ca,0x0005aa90,0xfffd0e01,0xffc4b118,0xffd2051c,0x0024624c,0xffe4d541,0xfffa5cfc,0xffe1dc16,0xffd58e87,0xffc9d09b,0xffbafa14,0xffaf8665,0xffae9f28,0xffaec36b,
-0xffa78a78,0xff9fc824,0xff93a47b,0xff7b2976,0xff9be9da,0xffb37ece,0xffdac9a7,0x00006fba,0xfff7fa56,0xffddff44,0x004486ff,0x00bb6176,0x016a66ee,0x0010c50e,0x00b28463,0x01638414,0x0161d4b8,0x01602e1c,0x01528ecc,0x015f76b2,0x01633b40,0x015cb63c,0x007eaaf7,0xfff13852,0x0143d594,
-0x007f8a95,0x0013b3f0,0xffd9e80d,0xffe38369,0xffd7bcae,0xffd59035,0xffcdc623,0xffc7f011,0xffbfd580,0xffbe7f25,0xffbb7dd0,0xffba7436,0xffb5db2d,0xffb3fc69,0xffacb861,0xffc15ad2,0xffce2656,0xffd901be,0xffe20fc1,0xffd6e4c6,0x00d64da1,0x00b275c6,0x010b8d60,0x003a5def,0xff8c55d8,
-0xff1800f6,0x008b5960,0xffabbd35,0xff127454,0xfefee106,0xff012049,0xff259e66,0xfefda5ce,0xfef83f1c,0xfefa942c,0xffa5e26c,0x006de98d,0xfeef7ce2,0xffa1a51d,0x003ed4d8,0x0113b71a,0x00c6d182,0x00d99e67,0x00d854af,0x00d7da61,0x00d135ef,0x00bf841a,0x00be621f,0x00bfca69,0x00c266e1,
-0x00d8b834,0x00dfedd5,0x00d849af,0x00dfb14f,0x00d66133,0x00b00139,0x00c403ef,0x00c93709,0x00f3594b,0xff7e1622,0x00d5ae3e,0x00799c4d,0x0027af8c,0x006554f4,0x00654c9a,0x00a35659,0x009a4c02,0x005d4990,0x008eeca2,0x0083c8d1,0x006a0155,0x002a4512,0x004cfd66,0x0065fd3a,0x0092b7f8,
-0xffacf543,0x00fc5226,0x010b24a8,0x0102477c,0x0110a800,0x010f93d0,0x00faba7b,0x00c4fe53,0x00b678bb,0x00b7dd38,0x00c3ce89,0x01033c22,0x011396a0,0x00ed9e24,0x00fd5cdf,0x00dbe934,0x0085b4c3,0x00ab236b,0x00d9e9ba,0x00c779be,0x0042d430,0x008c3b06,0x00a2e1e0,0x0033a66f,0x001e76a4,
-0x0068caf2,0x001c8f3a,0x006986ec,0x004ff67b,0x0094a129,0x000d0fa9,0x0058cf36,0x001c652c,0x0068870b,0x005e6e06,0x008e6683,0x006eabf4,0x00e611f9,0x014cf9fc,0x01236e28,0x013d4348,0x01370ce6,0x010ddc1c,0x00ab8db2,0x00995fc0,0x00a24423,0x00cb6c07,0x01393218,0x01622076,0x01265ec0,
-0x013ab298,0x010bc876,0x0073c1ad,0x00b0d93d,0x00edac48,0x00d2dcda,0x0079ab23,0x010fb434,0x015f0896,0x0058011c,0x0006e9ff,0x0063cc7b,0x004c0b20,0x00541149,0x00ba9c63,0x002bbc38,0x001bcd0b,0x0050aa39,0x00758585,0x00a5e867,0x005b8c98,0x00f94979,0x008de0a6,0x0117b644,0x018ec290,
-0x016968f8,0x01a1849c,0x01949f2a,0x014c60b2,0x009ef2d3,0x005ecbec,0x00744f67,0x00b8e690,0x016bbef4,0x01892ac2,0x01164cfc,0x012793e2,0x00b00eb1,0xffe2d135,0x0041db1e,0x017ec214,0x00505003,0xff2bd4f0,0xff3a1545,0xff37d916,0x001f332a,0x00c8c5bc,0x00ba5045,0x006386c3,0x0012cde2,
-0xffe7c0e6,0x00296dcc,0x00427c8b,0x002b5322,0x00738b45,0x009ff9ec,0x007c0472,0x00f86860,0x008abdc7,0x00e444fc,0x0167445c,0x00e5c51c,0x0109826a,0x0083a11e,0x00830792,0x008e3ab0,0x013cb920,0x016a9b74,0x00e5d675,0x01a3656c,0x01de2300,0x01a852bc,0x01b18fb8,0x020bf780,0x02b3f154,
-0x01c68326,0x00c067ac,0x0203d28c,0x0041fa32,0xffeb6aff,0x006e944e,0xffdecd6c,0xffdeb347,0xffec5cc1,0x00228f45,0x003c17c1,0x0023783e,0x000472c3,0x000cff75,0x004203c8,0x004febc6,0x0066caf9,0x00620b4f,0x004c6455,0xfffc03bc,0x0083bcb7,0x00f4a9fb,0x00ea1342,0x013670be,0x00d6b370,
-0x00955f77,0x00630fde,0x00324127,0x005e5dc3,0x00bba20e,0x006fe301,0x006769fe,0x008f85c6,0xff90c710,0xff253ff1,0xff49bc22,0xff961691,0xffebc261,0xffea678e,0xff9c5110,0xffcbf3f1,0xff534b8e,0xff765696,0xff6522f3,0xffe8f982,0xffc738b5,0xffdd2658,0xffff74bc,0x0024b827,0x003c58ac,
-0x0013057b,0x003375a6,0x00792a97,0x004aee2a,0x0052a94a,0x0051b6ac,0x00d05ed5,0x00da89c2,0x0082fcd0,0x005e150d,0x00f16eba,0x01649f02,0x01a40efe,0x0176bd36,0x0149069a,0x01454592,0x0198a14e,0x02215ee8,0x027fbffc,0x0264ad48,0x0210d240,0x0170a200,0x006250d0,0x01134b10,0x00297632,
-0xff439d9b,0xff1d931a,0xff0f14fd,0xff9f7860,0xffe57750,0x0022739d,0xfff52bef,0x001955ed,0x002011fb,0x0006a866,0x000a4f17,0x003b32ae,0x003f4cae,0x0033151a,0x0044b5e1,0x00656e7c,0x0016b341,0x004ff682,0x00d18d76,0x00e9a211,0x00dbe7aa,0x00d34880,0x009bfdab,0x004627bb,0xffe5b3bb,
-0xffda32a3,0x000f476f,0xffbc3d14,0xffccfe11,0x0034f179,0x0085ddc7,0x010addee,0x01dbe9da,0x0122ffc0,0xff28f052,0xfd77c0f0,0xfd725398,0xfeeb1052,0xff8b73f8,0xff1de72a,0xff1c51e9,0xff79420b,0xff6541cc,0xffa390ef,0xffd8c848,0x002ad661,0x0038decb,0x0021bd32,0x00143e7e,0x0018c8d9,
-0x0052cef3,0x001c111a,0xffe420b8,0x00722904,0x007056a1,0x002906c6,0x0002ab93,0xffdfb0dc,0xffe977d5,0x001cc0a1,0x00500e3f,0x00725fb2,0x006c5ba9,0x00a7d8f8,0x00c1f582,0x00dfb14a,0x00c2ddf1,0x008bb946,0x006ef264,0xff81cf57,0x008ef554,0x00e19fde,0x00a897dc,0x00f38751,0x00f5f6a0,
-0x0107ccac,0x0118f718,0x0126da5a,0x011d791e,0x00f2565a,0x00aedefe,0x0083de6c,0x0063aca3,0x00491df9,0x005b05a5,0x0044cf34,0x0035398d,0xfff798cd,0xfff00f0b,0xffe67188,0x0021eb45,0x0041cbdf,0x0039b24f,0x00369bd9,0x001b7017,0x000d8dd9,0xfffd996a,0xffd8994d,0xff8de0c1,0xffd1f16e,
-0x0006714f,0x004a2db7,0xffe63123,0xff9c5273,0xff842868,0xffe1630c,0x00f056b1,0x01219864,0x00fb93c3,0x01400752,0x01415ccc,0x0137e372,0x01230f00,0x011d9f0c,0x00e5fdd4,0x00e86a8f,0x00b54551,0x00d415c2,0x00988743,0x009fa0f4,0x005f8d77,0x004975d4,0x00120012,0xffe7d5f5,0xff9b7323,
-0xffacfa17,0xffadc3ce,0xff636194,0xff3ec8f3,0xff2dee42,0xff251933,0xff142b2c,0xff1b6e48,0xff2170ad,0xff21997e,0xff2df03b,0xff25db12,0xff2355ad,0xff8114dc,0xffe773ae,0x0041d03c,0x00947ee1,0x0074515a,0x0082d217,0x002621c7,0x00854992,0x006c1cc4,0x0074b887,0x009e1f01,0x00a68239,
-0x00a3482c,0x009017d9,0x0051c27a,0x00590807,0x00479f8c,0x0025d6a6,0x00095cd3,0x00163cb4,0x002af490,0x002c466b,0xfff489ec,0x003a2e01,0x001253c2,0x00058123,0xfff39819,0xffdc025f,0xffc31568,0xffa32ffb,0xffcdfab7,0xfff018f5,0x0013adac,0x00332f32,0x005a723e,0x0076c797,0x007aded7,
-0x00715f0d,0x006fcb76,0x006d4e0d,0x00548b3b,0x0068369f,0x00300efe,0xfff13adc,0xffd2abfb,0x00521c3a,0x000143e4,0xffdfa5c2,0xffc99ae0,0xffbb658f,0xffbb3e97,0xffa154a4,0xff904036,0xff83f258,0xffda6260,0x00311dbf,0xff95b0eb,0xffd915c2,0x001ed140,0x004bd933,0x002ff01e,0x002da6c3,
-0x00226860,0x0019d2a8,0x001334e5,0x0003d66c,0x00176214,0x00216c17,0x002ce40c,0x00378b45,0x0040494e,0x004e80e7,0x004be0f6,0x0050ea59,0x005500f3,0x0058e7d6,0x004c65ce,0xffdafded,0xffe7c67e,0xff9421a1,0x00938fc4,0x01223380,0x014bc6ae,0x003e833a,0x00f4a6fa,0x01410636,0x014813da,
-0x01455d54,0x012861d4,0x0141b03a,0x013f4eda,0x012e8650,0x00fc76d8,0x005cb620,0x013b49aa,0x010fb9f6,0x009f3563,0xffae352d,0xffea100a,0xffd73986,0xffd1ba90,0xffd013d7,0xffcb7ea9,0xffc39842,0xffc27ce1,0xffc126c6,0xffbc1695,0xffcd6c34,0xffd272fb,0xffc8e239,0xffdcf01a,0xffe49259,
-0xffe86188,0xffe03d80,0xffdc3ddc,0xffe7d29e,0x0140ab8c,0x002985a5,0x00c0e84d,0x00713618,0x0018efad,0x004374f3,0x0001ed34,0x002b0d56,0x0080aa8e,0x0038c122,0x00244005,0x0031e986,0x0067f302,0x0050ff37,0x006498ca,0x004ff5d8,0x0125a730,0x001ed30d,0xffdde484,0xffe397e4,0xffc1353b,
-0xffb9c3b0,0xffa38f8c,0xff8a765d,0xff83aaf8,0xff87ed86,0xff85a98d,0xffba6425,0xffceec80,0xffb97f9d,0xffeeda10,0xfff8c125,0xfff5a63e,0xfff0562e,0xffcb9725,0xffeefda0,0x00af31fe,0x00721156,0x00f46a14,0x004eafc6,0x003a897a,0x00568d16,0x006dd893,0x0021677e,0x009baebe,0xffffea30,
-0x006c02e0,0x00141d6d,0x0074e9cd,0x004a3ef1,0x005a0911,0x0089c246,0x00d3dbea,0x0075943f,0xffd212ff,0xffe32f3a,0xffab7de0,0xffa6b9ea,0xff8038f9,0xff5f1240,0xff4acc43,0xff4a73ae,0xff4195e0,0xff97cf1b,0xffbdd662,0xff8a9bf4,0xfffa5d28,0x001f3754,0x000ec6b5,0x0016e4f6,0xffe09cb1,
-0x00478f3e,0x00f3b3af,0x00c4aca0,0x012d2eaa,0x00406fe8,0xffdb1148,0x0042afd1,0x00245410,0x004d2e5b,0x007c8759,0x003931b4,0x0003e273,0x000b4f01,0x003ed83d,0x002e46f6,0x0099e0af,0x007dfc7a,0x01188b3a,0x00b1d69b,0xfff25bb8,0xfffa228b,0xff9e5ac8,0xff8399a8,0xff3f366b,0xfeef8f16,
-0xfec90cc2,0xfee168b0,0xfee5fd60,0xff88bf5c,0xffc92a19,0xff8a5920,0x003a88d4,0x003fac73,0x00021a0a,0x0023662e,0xff385087,0xfff1c19d,0x004aaf5f,0xffbaf058,0xffb63803,0x007ab5d1,0x00c7cad8,0x00d5d8d0,0x0077e39a,0x00118d4c,0xffdce199,0x001743a8,0x00327ff9,0x00400529,0x007bbe3b,
-0x0065dc4a,0x0093686d,0x004f1cd6,0x00d77357,0x009edc6e,0xff6234eb,0xff816c4c,0xff440f1e,0xffa73be0,0xffa0892d,0xff783107,0xffa67476,0xff6e4b51,0xfe9035d8,0xff55d28f,0xff7ac6e0,0xff425011,0xff8b0e6b,0x001d76ce,0x0111f292,0x0042599a,0xff006e70,0x00d4e66d,0x00994413,0xffedd001,
-0x002adb21,0xffcc46ff,0xffa486ae,0xffdd2b71,0x000a2110,0x0034a549,0x0028d44c,0x0007585f,0x000dd439,0x00201931,0x000f8561,0x003b5133,0x0079c4d9,0x0060c7ab,0x00a332c9,0x005ba67a,0xffdb7266,0xffec5fd0,0xff6215f9,0xff99f848,0xffd1a25a,0x0032d184,0x0061e382,0x007761e4,0x004a963c,
-0x001be2f2,0x004a2ee0,0x00d2c913,0xfffb4601,0xff713e85,0xff2a1bca,0xfefb8692,0xff983a18,0xffcdcbaa,0x000a318f,0xffc127d8,0xffccee56,0xff78b8e4,0xff97a662,0xfff1db56,0xffce9143,0xffc2e07e,0xfff44421,0x000ca5a1,0x0025480c,0x000c5345,0x00342d85,0x0044411a,0x006559f1,0x0006d36d,
-0x0056f62e,0x00465f66,0x0008bbcc,0x005aeb38,0x000b5d6b,0xffb37efb,0xff4861ca,0xff1a09d8,0xfeacfb66,0xfeae35ec,0xff54863d,0xff236f2c,0xff30c08f,0xff9ca274,0xff7fc11d,0xffac3328,0xff7b89aa,0xffb312fd,0xfffbf491,0x00371014,0xffabd12e,0xff2937a1,0xff6670cf,0xff6f92af,0xffcb13cf,
-0x001cd79a,0xfffc21e7,0x002227cb,0x002c41b4,0x000182fd,0x00080b8c,0x0036f143,0x0035de48,0x004f9772,0x004bcd51,0x00511499,0x008ead3d,0x001ff2a3,0xfff7cbcf,0xfffcaeda,0xffc67620,0x0000ed6e,0x00212005,0x00230364,0xffffc48a,0x0014a410,0x0053a119,0xfffa4761,0xffae0bce,0xff1b55ee,
-0xff1bd454,0xff147ae7,0xff02ebe7,0xffe570c3,0xfdebfaa0,0xfe21288e,0xff25548b,0xff2fb7ac,0xff763d6c,0xff374d66,0xff12b883,0xff7b6fbf,0xff87bca9,0xff7cf862,0xffcadaa4,0x0009c48c,0x00280605,0x00284876,0x001cfa2e,0x001d3883,0x0030e06f,0x0020958d,0x00688c4d,0x00315b5e,0x003c568b,
-0x00453034,0xfff6ba1d,0xffeec93f,0xffd07efc,0xffb154aa,0xffe60cf9,0xffe9b656,0xff93f166,0xffc2d68d,0xff8fcb41,0xff00f633,0xfeca2738,0xfeaf1d22,0xfe72e8e4,0xfe5ede0a,0xfefed0ca,0x001b5e6f,0x010b8056,0x00cca65d,0x00ea496e,0x00e49cd3,0x00bf7b83,0x00e94be4,0x00a9ed33,0x00946168,
-0x0059ea8b,0x00693be1,0x004589e0,0x0035d678,0x003fa05d,0x004596d2,0x004b1c7a,0x0014e3a6,0xffeb2d6e,0xfff1b1b3,0xffd0fa6c,0xffc862ed,0xffc913db,0xffb8bc80,0xffafa09a,0xff9a94a9,0xff903257,0xff79084e,0xff5a2fc5,0xff76ec54,0xff6121ff,0xff1bcc85,0xfee51cae,0xfebb96fc,0xfe9e62fc,
-0xfedb2d86,0xfff35839,0x00a41e36,0x011ec480,0x010b694c,0x016f554c,0x013bd2ea,0x0119fb10,0x00f52656,0x0101a368,0x00c63e37,0x00e8f98b,0x0092a309,0x00bd181d,0x008603c1,0x0072cb23,0x003233d5,0x001800cc,0xfff537cf,0xffe097ca,0xff920bba,0xff463fa6,0xff377f81,0xff0c89af,0xff02ea0d,
-0xfef54a58,0xfee9e9b4,0xfedd7928,0xfed55c2e,0xfecea120,0xfea09f06,0xfe7252b4,0xfe354e06,0xfe9cc3a0,0xfefa858c,0xff3f5de9,0xffc2b73c,0xffe5c95f,0x00036f15,0x00b1cc16,0x0017c72b,0x00622db0,0x00636d98,0x0040eb4a,0x005c4f18,0x00209610,0x0025fd3e,0x004b043d,0x00113795,0xfff13c34,
-0xfff30f04,0x0016545f,0x0004fe87,0xffef492b,0xffe32646,0x003775be,0xffc9dffa,0xffc13b97,0xffb3090a,0xff9e6009,0xff8de286,0xff77b515,0xff602868,0xff53fb39,0xff48a9f2,0xff459d7b,0xff47539d,0xff5327c5,0xff4fe23e,0xff73631d,0xff8d7758,0xffab13c3,0xffcbe079,0xffaff668,0xff989780,
-0x0027f6e3,0x008296de,0x00b3a13b,0xfffb87d0,0x007d6a12,0x00c91948,0x00ca29a3,0x00c6b439,0x00ae9fcc,0x00c0466f,0x00c383e1,0x00b8c14d,0x006ed2b5,0xfff1cc08,0x00ad8ccf,0x00627ef9,0x000728b2,0xff8274ff,0xff980bba,0xff896fe0,0xff82fea6,0xff793b03,0xff714aa7,0xff67d456,0xff6c35b0,
-0xff6db5f0,0xff6ce1d8,0xff6bc2bc,0xff69cf8a,0xff662583,0xff777d78,0xff84b6f5,0xff92663c,0xff9cb3fc,0xff7f3945,0x0052a7ef,0x004b7367,0x0082e6f9,0xffa2544e,0xff5d6f82,0xffc54f62,0xffd29495,0xff67e042,0xff8f78e8,0xff8875be,0xff8d9ded,0xffb69bee,0xff9bd267,0xff9c9e3c,0xffa9b8f1,
-0xff659230,0xffc0fe8f,0xffb5f442,0xff716cd1,0xffa86859,0x0087bfb2,0x00514f39,0x00534061,0x005150d5,0x004fa641,0x0048c806,0x00388c75,0x003a68a8,0x003bc573,0x003ce685,0x0046ebe6,0x0048d37b,0x0044801b,0x0042da41,0x0042fda9,0x00427716,0x004c8bc7,0x00684093,0x0048f0f2,0xff91c199,
-0x004e380b,0x0011bc1f,0xffec009b,0x0007f032,0x000ec92c,0x003ea448,0x0023c722,0xffe7db50,0x00130824,0x0024a3ca,0xfffd0bce,0xfff113c4,0x0008f1e1,0xfff6dc28,0x0032d788,0xffc1649e,0x00604cfe,0x007b5a86,0x00541d12,0x0059399f,0x0055b50a,0x00493735,0x001f3b6e,0x001c7d61,0x001ae74b,
-0x001aad47,0x003d5868,0x003ebc6e,0x002958b4,0x001d1a95,0x001b1699,0x00288731,0x0039cb02,0x008ef515,0x004d5c54,0xffdbf419,0x0020817d,0x00503645,0xfffa0d01,0xfff392ec,0x002ac036,0x00073c36,0x0058d5c5,0x000a01b3,0x0069dd0f,0x00025ae3,0x0015cf0c,0xffebdae1,0x001a113a,0x002959e2,
-0x00407a2a,0x00157fe0,0x0074d2f2,0x00a2b9f4,0x00630451,0x005dc31f,0x0053e23c,0x002e1aec,0xffd58415,0xffdfd06b,0xffe72021,0xfff774a6,0x00276e26,0x00302715,0x00179c0f,0xfff49878,0x0009fd51,0x0036d3a0,0x004df841,0x00b385fc,0x00619b41,0x002f1a17,0x00ab5332,0x00f930c2,0x002d4837,
-0xfff6f36a,0x004ff61c,0x004e7f43,0x005cc0ca,0x00b496ad,0x00433248,0x0021f963,0x0041d113,0x005acec2,0x0072e226,0x003587b6,0x00b82e31,0x006ba25d,0x00cca334,0x00d0f7aa,0x0063d503,0x005a8180,0x00463eb2,0x0010c69f,0xff8de105,0xff7d4948,0xff97c6fb,0xffb918fc,0x000e1822,0x0003409c,
-0xffcfa260,0xff94f391,0xff9220c1,0xffef9812,0x00153749,0x00cf3444,0xffb827be,0xfee66dec,0xfef69426,0xfefe9610,0xffeb2768,0x009511ce,0x00b5690e,0x007c55b4,0x00195bf3,0xffdd37ca,0x001b1a48,0x00384f76,0x00308182,0x006eee61,0x007fd7a2,0x005386ec,0x006e7dc7,0x00010799,0x0029ef47,
-0x0085100f,0x00728de1,0x00d90065,0x0058e15f,0x006cf816,0x00a52143,0x014ac68e,0x0137cdac,0x0024d2d4,0x00aa9891,0x009462bd,0x00153bf8,0x00305330,0x00c2a862,0x01de25c0,0x0106c44c,0x00205627,0x00ba7f25,0x000104ff,0x000cf5a6,0x00369b4f,0xffd27b69,0xffc9c3a0,0xffd1916a,0x0015b734,
-0x0035ffa7,0x003d2242,0x001a8c59,0x0015cdbf,0x003d9424,0x003317b7,0x0048e19a,0x0045d389,0x005ec8b2,0x0030ba4c,0x0036ed9b,0x005fcbfd,0x0018bc5d,0xfff85883,0x0010b1d0,0x0014387b,0xfffb7e10,0x00384f61,0x004fd210,0x002416b4,0x0031be8e,0x0010fa1b,0xffe67612,0xff44fc63,0xfef8a8f8,
-0xff197f14,0xff45aaaa,0xffa38904,0xffcce3fc,0xffb6bb35,0xffd958be,0xff9b8f00,0xff9513e0,0xff6a4310,0x0007d1da,0xffd16c43,0xffe1a750,0xfffdc576,0x0020b077,0x003489a1,0x00139f6d,0x0021857e,0x00593fbe,0x001fe3ce,0x0024203d,0xfff40ec2,0x0036f58f,0x00bf0d16,0x008b90ce,0x0048c3f2,
-0x006ae27f,0x0058e19a,0x00228cc1,0x00294baf,0x004f4a75,0x00981746,0x00fe7f50,0x00ff481f,0x0075f616,0xffd78bbf,0xff8b7d14,0xff4bc025,0xff96e154,0xffb45718,0xffa5d517,0xffad4764,0xff8cee27,0xff80118c,0xff964e4c,0xffd7a6aa,0x00486a40,0x000f71e9,0x002cdf0c,0x00282e32,0x000da41a,
-0x00116ab3,0x002ee122,0x003d2ed2,0x00447205,0x00502a7c,0x006fcfdb,0x002a4464,0x0037e81d,0x00889b62,0x006ce6d4,0x004d0386,0x004ab43d,0x00360065,0xffde9b20,0xffc5438f,0xffa246c4,0xff62abf6,0xff2b03ed,0xff31b596,0xff86d356,0xff5baa16,0xff5d5a3d,0xff3b68ee,0xff68ec04,0xfe8682ca,
-0xfd9a7b8c,0xfdc8f2a0,0xfe85de22,0xfefe878a,0xfed635f6,0xfefecb94,0xff58dfdd,0xff4a2625,0xff812d23,0xffa9ef39,0xfffd00c7,0x00223b77,0x002b2956,0x0020b8f9,0x00227114,0x004bc551,0x001840ac,0xffe5a064,0x002e4df2,0x00588d18,0x003d6aea,0x00312733,0xffe72b6f,0xffbd51bd,0xff8d396f,
-0xffa0954a,0xff93c1ec,0xff507d46,0xffdc4983,0xffbd3199,0xff40ee1b,0xfed77380,0xfe9a9ad6,0xfea37026,0xfe7aa79a,0xfedaf810,0xff0430c9,0xff870df2,0xffcd551e,0x000333c1,0x00525fb8,0x008a6718,0x008598e8,0x00777a07,0x0068b359,0x005e2a46,0x005fa9b5,0x0052fed8,0x004dcd37,0x00447b53,
-0x002b0b6c,0x0027cbc6,0xfffa0e0f,0xfff5ceb4,0xfffdf3d0,0x00370049,0x003c14c1,0x0032eb96,0xffd45222,0xffb0244c,0xff90d051,0xffadb853,0xffbd1602,0xffb11660,0xffc53ce2,0xfffa3734,0x00584c3a,0x0011f5c4,0xffadc865,0xff48d7c0,0xfed490c6,0x001ff0c6,0x0059ac86,0x00514558,0x0086c54f,
-0x00b7d794,0x00baaa3d,0x00b3ffd8,0x00bf3f77,0x00a9084d,0x00b61f46,0x0091e105,0x00a54a60,0x00801dc1,0x0075572b,0x00467560,0x00271271,0xfffb7e33,0xffdc2afd,0xff9969d5,0xffbc8f08,0xffc665b6,0xff843528,0xff6d3ab5,0xff5833cc,0xff4ba6ed,0xff32f8ef,0xff33a273,0xff283214,0xff239e37,
-0xfeffce5e,0xfecf47f4,0xfe9afb50,0xfecd23d8,0xff0ba665,0xff4f3a77,0xffb761b5,0xffeacf7d,0xfff40e8a,0xffeac730,0x000a982d,0xfff97b96,0x000355e0,0x001c8552,0x0025912f,0x0023d186,0x0008c281,0xffdc2fdc,0xffdf8176,0xffe6c5f6,0xffcd6fcc,0xffc7242c,0xffd9ab5a,0xffd123b7,0xffe586ea,
-0xffc76f42,0xffe93699,0xffd4a32d,0xffc31d8f,0xffb3fb6c,0xff9dae01,0xff877d4e,0xff6f0f07,0xff7e4a5f,0xff852194,0xff8a2c79,0xff8d788c,0xff99a4a7,0xff97ec8c,0xffb80cd1,0xffc38640,0xffcd1d9b,0xffd50290,0xffcd8532,0xffe02860,0xff824595,0xff6df023,0xffb2013f,0xff9d71fa,0xff773364,
-0xffa5aa2a,0xff99d1ec,0xff961f9c,0xffa172c1,0xff9242c0,0xff89ba67,0xff8a8567,0xff5aeedf,0xff884084,0xff8dda94,0xff5af888,0xff7ddd49,0xffd276ce,0xffba4e06,0xffb61bbc,0xffae7161,0xffa7a37d,0xffa29bc9,0xff988428,0xff9de612,0xff9ee718,0xffa0cff2,0xffa2bf58,0xffa328ba,0xffa11027,
-0xffa84fb6,0xffb156aa,0xffbec837,0xffc5f0e3,0xffa97efb,0x00697540,0x006100f3,0x0044c007,0x00e66f8a,0x00e179e8,0x00443907,0x00c80f83,0x00d58179,0x006518cb,0x0067cb85,0x0063d9f1,0x0047182d,0x005339fa,0x004d1b4c,0x0034e1c1,0x00d53d54,0x00d1a56f,0x002c1f8e,0x00d7511e,0x00e8d2ec,
-0x00559f18,0x0066546c,0x0068398d,0x00646702,0x006512f6,0x00621c10,0x005c21e9,0x0059ab5c,0x0058e8dd,0x0055683e,0x006698d6,0x006d54a0,0x00696158,0x00796748,0x00784aaf,0x00621bb6,0x006881ea,0x005cacaa,0x008c676c,0x00cbc79d,0x009a9a2d,0x00c8f823,0x007e4057,0x00685538,0x00721a50,
-0x006f9372,0x009d9ac4,0x00ba9c55,0x00abb831,0x00832b06,0x00845047,0x0076cd40,0x0071dc12,0x00b166d5,0x008fdd35,0x00b8e044,0x00b0a51e,0x007a09c2,0x00929d0f,0x007efbf9,0x007d226a,0x006b769b,0x005487fd,0x004a1192,0x004ce62a,0x0050def6,0x0081ec55,0x00997e67,0x008ffeda,0x00b7aff1,
-0x00a7fa37,0x0068b167,0x0078847e,0x005a3742,0x007b8275,0x00e35cc9,0x00a67355,0x00c5f839,0x005f5a33,0x004ddf8d,0x0061e154,0x007b94f0,0x0052d33d,0x009a8e98,0x00505d3a,0x007416c8,0x00440334,0x0070e464,0x006de625,0x00814972,0x009e3211,0x00de6707,0x00cfa3a6,0x00889d35,0x00a485de,
-0x009061a3,0x00967e65,0x007909e0,0x005a1fa4,0x004538ec,0x004b09d2,0x0048ff2d,0x009a69c4,0x00c8c7af,0x00ac0461,0x01051b72,0x00ec7e07,0x006e2c88,0x00a05050,0x0045d831,0x009053e6,0x00fc0c61,0x00ecf1ed,0x00fc2cde,0x0057c7c6,0xfff54e71,0x002986ce,0x00390ca0,0x006186b1,0x00727d2b,
-0x004205c5,0x0023b6ff,0x000cb208,0x004c72ce,0x004c06dd,0x00944642,0x009c2615,0x01035dfe,0x01087c96,0x00bff5cb,0x00e931b7,0x00cc005c,0x00c5344e,0x0092e011,0x003cfe73,0x000e4dce,0x001bccc6,0x003254d3,0x00d21c25,0x01106ce6,0x00f4aa8f,0x0166266c,0x010ed234,0x003ea47c,0x007d1ee6,
-0x00bcdde8,0x00c4ec77,0x009dbc5e,0xfff24873,0xff76f39a,0x003e7a10,0x00b299bc,0x00df642e,0x00acb1e0,0x003f98f6,0xffe0ab0c,0x0016c77e,0x0031c334,0x004f9477,0x00877c21,0x00763248,0x0085d4cf,0x006b21ae,0x00b24bc0,0x00bc1323,0x00410beb,0x0031b65c,0xfff909f0,0x002276ff,0x0017ab7b,
-0xffdf553d,0x0094bc02,0x008be5ab,0xffafffbf,0x003ae282,0x00845864,0x00d1bbe5,0x00e504ec,0x013dc6a6,0x01e8a208,0x01594354,0xfefd70ac,0x0015c1f6,0x010ba942,0x00b44ab0,0x007d1bbc,0x00332ae2,0xffd6ee39,0xffd001e9,0x000c47a3,0x0041c560,0x004b9923,0x001fe59f,0x001a4dd2,0x002db740,
-0x0032c12f,0x00691fe5,0x00989a09,0x007cddaf,0x008de01c,0x007cae78,0x00b1fc32,0x00f28ff0,0x00c32108,0x008a65a9,0x0067e786,0x00710538,0x009ebbba,0x00870500,0xffec8eeb,0x0050e087,0x0067dd79,0x00324555,0x004a9572,0xfff1697c,0xff3b3512,0xff3c3961,0xffe4a2c7,0xfff5e889,0xffefa873,
-0xffc8082f,0x000a92a4,0xffb2d10b,0xffa3e995,0x0021696b,0xfff593d3,0xffe03e7d,0x00091fa3,0x001d7763,0x0029b566,0x001785c0,0x0039207a,0x00616232,0x0051df4a,0x00373a4a,0x00749d68,0x0058622d,0x0061c8be,0x0087f7a3,0x003725a0,0x008be539,0x00a75782,0x009a3112,0x0091d7b2,0x00752a82,
-0x004f65b9,0x00871c2c,0x011ae3c0,0x01efd778,0x01dcc760,0x01a0bf1a,0x01322416,0x004b1589,0x00d82bf2,0xffcce903,0xfff3db5c,0xfff2612c,0xffb4d316,0xffbc689d,0xffd4ea71,0x004624ac,0x001611b4,0x002d9f57,0x0036c883,0x00166067,0x0017387b,0x00449601,0x00496ec4,0x006b876d,0x007501c3,
-0x00762a8d,0x008fb467,0x0049930a,0x00745fa9,0x00aee1fc,0x00a90a56,0x00cdbfa3,0x00b76df4,0x00524589,0x00953ff9,0x0094fde5,0x0053c123,0x002b2136,0x0008d943,0xffaddf3d,0x00fa5d9d,0x01a3d266,0x01dec226,0x018d567c,0x00d94a4a,0x0008c327,0xff1291d8,0xff18c455,0xff420db9,0xff2f2b8f,
-0xff413912,0xff9c057a,0xff9ae0f7,0xffa0187a,0xffc7e289,0xfff10405,0x0019d31b,0x0046d287,0x0030f77b,0x003169f6,0x00425831,0x005b0bf8,0x00848cfb,0x004be849,0x00629cc3,0x006531ee,0x00352a34,0x001fcfdd,0x00334c6d,0x0072795b,0x00869433,0x00a8b6b9,0x00ca9f32,0x00d00b63,0x00a7fa51,
-0x002ed7c8,0x004a0006,0x005a837b,0x004c0aee,0x00ce796f,0xff25846f,0xff977385,0xffa68724,0xfffb5b23,0x001a5d40,0x00797eeb,0x006c7e1f,0x0053e318,0x00332c3d,0x002908dd,0x0020ad7a,0x005f4362,0x0062e44f,0x00565006,0x004bb7de,0x0052e99f,0x006342fa,0x0019950c,0xfff78479,0x00020614,
-0x00308f99,0x004df826,0x004f1c69,0x0047b367,0x003692ef,0x000e8ab4,0xffeed4e0,0xffb998d6,0xff89ac67,0xff787728,0xffcef550,0x0090f768,0x0039f760,0x000051d1,0xffb13f2a,0xff59e92a,0xffdf0310,0x003fb73f,0x00a90dc2,0x00aac0cb,0x00e2f242,0x00cac382,0x00b22ebc,0x00acee34,0x00ba5f70,
-0x00a60739,0x00ce33ef,0x0085d730,0x008391fd,0x005d8e99,0x0050b918,0x002ee4c4,0x00206010,0x001875ec,0x0023d2b3,0x0008ffd0,0xffc69ded,0xffa754da,0xff799b92,0xff699461,0xff5878c9,0xff42ff5f,0xff66463b,0xff8712f9,0xffae461b,0xff94c01c,0xff630ae4,0xff2db36a,0xff3590c7,0xff4eb78a,
-0xff59975a,0xffb5d1bf,0xfff19ae6,0x00148450,0x00222adb,0x000d689a,0x00307aa0,0x0028b1d0,0x002faa17,0x003dc0a6,0x002ccc0c,0x003af548,0x004eb92f,0x003f64ae,0x002a7591,0x0031bb97,0x00230d9b,0x0002102f,0x00034438,0xffd93c3b,0xffe5cf73,0xff905b0c,0xff756ce5,0xff762eb7,0xff66a7b5,
-0xff593b4d,0xff488bfa,0xff32c48c,0xff37da03,0xff3bc72b,0xff49219c,0xff5cd72c,0xff80e02b,0xff9c81af,0xffb9f6b5,0xffcdf00e,0xffdba1f5,0xffed0ffc,0xffc553b5,0xffc43597,0x0019aeaf,0x0021e7d9,0xffd4ade7,0x001718d4,0x002ab67b,0xfffa0396,0xfff5ed0c,0xfff1053a,0xffdca75d,0xffe40e21,
-0xffe1bdf7,0xffd96d80,0x00288669,0x000a397e,0xffd00af0,0x000d5729,0xfff93191,0xff8c005e,0xff9ab21c,0xff90122b,0xff87edcc,0xff80c706,0xff7a70e8,0xff70cbf1,0xff7ce1cf,0xff84b492,0xff8b02ae,0xff92065a,0xff964e05,0xff9d918f,0xffa24ae8,0xffaa6d03,0xffb4e526,0xffbd8599,0xffa0fffa,
-0xffc99b46,0xffdcc116,0xffc7bf92,0xff95bfa9,0xffe670c1,0x00c10984,0xff80b5b6,0xffd14f7e,0x0080af3e,0x008a828e,0x008f7d57,0x009ebdfd,0x00a1e4c0,0x00a52d2a,0x00ab86a0,0xffd4d160,0xff8834b6,0x00ca820a,0xffeca530,0xff9f31f1,0xffcdef30,0xffd5e677,0xffc5eac1,0xffc2a137,0xffc1e577,
-0xffbd9345,0xffb52180,0xffb65f71,0xffb5fed4,0xffb4792f,0xffb52aca,0xffb410d5,0xffb183b0,0xffb15fcd,0xffb9afe0,0xffd14d6d,0xffcfcb36,0xffeca37f,0xffad6b88,0x0036495c,0xffd75fe2,0xfffb091e,0xfff0d042,0xffce70a2,0xffe0310f,0xffe09137,0xffd4e610,0xffd1c82b,0xffd0a4d9,0xffe57e36,
-0xffc4da9b,0xfff3ea3c,0xfff324aa,0xffd86982,0xfff68f67,0x004c5ce8,0xffcb494c,0xffd2967d,0xffacc2ca,0xff9e3e59,0xff9e60e0,0xff9a13cc,0xff875981,0xff89dc45,0xff8712cb,0xff814b06,0xff891cc8,0xff8214d3,0xff7b060b,0xff7160de,0xff88be2e,0xffcd47fd,0xffcf028d,0x00094441,0xffc87001,
-0xffd2655d,0xffe52e4a,0x00398951,0xfff18382,0xfff23060,0x00014479,0x001d278e,0x003861bf,0x000ed3c1,0x002a7ecc,0x0028758a,0xffe275a7,0xfffac4df,0xfff1dc5e,0x001ea520,0x001c831e,0x00137fc3,0x0008ae66,0xffcfac09,0xffa89f87,0xff7be016,0xff7c4041,0xff6427f8,0xff38e17c,0xff472c40,
-0xff47c3fd,0xff440690,0xff42808a,0xff385b67,0xff317ff6,0xff242591,0xff64b4b8,0xffe76ce1,0xffec564a,0x002d24a3,0xfff1c71d,0x0022c207,0x0045d51d,0x00904a01,0x000a3252,0xffea6388,0x0029199f,0x003d65d2,0x005ef5bf,0x00877a43,0x00584c38,0x0021f191,0x000f24b4,0x003132c3,0x002e4a5e,
-0x004e2a4e,0x0064dab5,0x007d9d3d,0x005b73ea,0xffdf292c,0xff7ba7a0,0xff25904c,0xff20d063,0xff09b9a9,0xfed02ac4,0xfedd387c,0xfef1d3ee,0xff00911c,0xff0ceee9,0xfee9e438,0xfedb9b0a,0xfebe81bc,0xff1282f4,0xffe08605,0xfff76c7d,0xffcf24cf,0xff8d94a2,0xff639559,0xff3c62ac,0xff450a42,
-0xffeeec67,0x0058c198,0x009a1dad,0x009f0782,0x0039981e,0xffde955a,0x0009658e,0x002761dd,0x004a9fb9,0x006cace1,0x0056c940,0x004330e5,0x000190a9,0xffe8f45b,0xffb00855,0xff84418a,0xffd51d4f,0x002099ed,0x0010d3a4,0x00232cca,0x004b0ea3,0x00a72a60,0x005ed29c,0xff406fe5,0xff4b4ffe,
-0xff1b6134,0xfefeb038,0xff2634c2,0xffa70f69,0x00ad6eaf,0x001eee99,0xff58ce9f,0xff3831a9,0x002e63ac,0x006cbb50,0xffc8e657,0xfffd308a,0xffee852f,0xffbc7b7f,0x00024816,0x0030d276,0x00543b79,0x0025c91e,0x0014eea9,0x003269e0,0x00242cef,0x003db5a0,0x003bd87b,0x0053bcc9,0x00621574,
-0xfff8bd6c,0xffd2b8ba,0xff820007,0xfee8d548,0xff48e0de,0xff9f36d2,0xffebf8ed,0x0048fb72,0x0046b03b,0xffaf04c2,0x000b9255,0xffcb700c,0xfeff3352,0xfefbd418,0xfefccb4c,0xff2e5e54,0xff3640b7,0xff881278,0xffae45af,0xffe098ff,0xffe62f83,0x001159dc,0xffc80030,0xff8a49ba,0x001187a9,
-0xffea4ae1,0xffe320f4,0x000278fb,0x000ec6d3,0x001f5974,0x001d4f38,0x000fd789,0x00264a15,0x000ab6d9,0xffe5fc40,0xffcc6f2c,0xffdbf14b,0x00574144,0x0063952e,0x0013d746,0xffc4ad67,0xff3d06c1,0xfeb55176,0xfed9464a,0xff44af18,0xffac5021,0xffe6b367,0xff8d964c,0xfeae8780,0xfe1746a8,
-0xfdf2f290,0xfe173aa2,0xff274a22,0xfefbf8bc,0xff9d98f4,0xffeb887a,0xffd02439,0xffcb8008,0xffa50d81,0xffd79ad8,0x002abda8,0x000bf669,0x0027149a,0x002512d5,0x000a7bf5,0x0011a806,0x00283e53,0x00319760,0x004a46fb,0x00411c94,0x004bb5dc,0x004f8fea,0x001a0b09,0x000413df,0xffd8fa8d,
-0xffb95cfb,0xffaf35d7,0xffb8a98f,0xffa887a7,0xffa3e664,0xff6e593b,0xff01835f,0xff0e45a3,0xff0e524f,0xff1089e7,0xfe98c480,0xfe2e962c,0xfd86d16c,0xfe72aa02,0xfdefc758,0xfe907efa,0xff1e374d,0xfec9a2de,0xfecaee54,0xff10aa48,0xff3eebfc,0xff5ef278,0xff72bdc1,0xff8274cc,0xff9b4c25,
-0xffd177b8,0xffff9463,0x002fcf48,0x0023b7d9,0x0029477f,0x0039d88d,0x001cb5bd,0x0016b50a,0xffe959b2,0x0036c807,0x0051426c,0x002d246a,0xfff92e73,0xffb850e3,0xff69ea54,0xff50321d,0xff2350f3,0xfeccfa18,0xff2c75bb,0xfefa1bdc,0xfe533f86,0xfdda5704,0xfdac4bc4,0xfdaeae54,0xfdd8cff4,
-0xfe1bb1e8,0xfe37ece6,0xff123301,0xff2bd58a,0xff9c9321,0xffef72fe,0x000c63c4,0xffe3ed8d,0xffd9af48,0xffe7fa1b,0xfffdb5eb,0x003ceb7a,0x004bcbb2,0x004380ce,0x0022f013,0x000963d7,0x0002a2be,0xfffddd30,0x0004c191,0x0019e3ed,0x002f5d87,0x0016382f,0xfff04a3d,0xffb605cc,0xff9254af,
-0xff8308b1,0xff850c8a,0xff9f14cf,0xffd3fb13,0xff8053f8,0xff6e05aa,0xff82cb95,0xffb910e6,0xff8aaba3,0xff0dd743,0xfe7e5616,0xff5b780f,0xff941b19,0xffc798f7,0xffd99c72,0x00298d30,0x002a8cd7,0x0036be56,0x0049f9f0,0x006a47d6,0x006f29b7,0x008477db,0x005c05bb,0x0061d92a,0x003d28d1,
-0x0031fb86,0x00117806,0x00023673,0xffea6616,0xffc81f03,0xffb269de,0xffa93eb3,0xff9c1ca0,0xff980894,0xff878626,0xff7863ff,0xff64e94c,0xff4f4421,0xff2f7313,0xff1d6dd7,0xfefc5a40,0xfee1bdbc,0xfeb21eee,0xfebafd68,0xfeca8ee4,0xfee5d6ae,0xff2a3649,0xff9bb178,0xffa84607,0x0014dc9f,
-0xffcdad1f,0xffe44259,0xfff094fd,0xffe6a8a9,0xfff1fd65,0xffda0b7a,0xffc0a818,0xffbf2064,0xffa8057b,0xffb07845,0xffa6b1a5,0xffb2b610,0xffb0cf6e,0xff853917,0xff90bddc,0xff997bbc,0xff83edbb,0xff89b5bc,0xff71dfe0,0xff647656,0xff52f477,0xff443df8,0xff353ab7,0xff346776,0xff2d6708,
-0xff1d1513,0xff0fdddd,0xff018c71,0xfeef2152,0xff1ea498,0xff412c8b,0xff5e69d2,0xff781cab,0xff71ef44,0xff74bd30,0xff5b67cd,0xff8c38c7,0x000657cb,0xff56f843,0xff8d2819,0xfff8e29f,0xfff7e101,0xfffbf310,0xffffb2cb,0x00048ba6,0x000612ce,0x000bd495,0xff747e1a,0xff47ebc5,0xfff37233,
-0xff6e8e87,0xff49ef6b,0xff72556d,0xff6970c8,0xff613ffe,0xff5d5419,0xff57a6d4,0xff52afc0,0xff4c05ae,0xff46878c,0xff4163bb,0xff3eeec7,0xff3a8d8a,0xff3741d8,0xff2af2a2,0xff3b6e68,0xff4601f4,0xff557604,0xff5fab61,0xff3b2273,0x00ba2dca,0x00a3d1fe,0x00cc09de,0x00980e66,0x00193f79,
-0xff5cd5ad,0x00bf4471,0x002f9337,0xff7bce59,0xff79781b,0xff7947cd,0xff77bb9a,0xff6d0cc1,0xff672a97,0xff56e0ee,0x00292f63,0x00b04077,0xff49f3d5,0x0021a7a8,0x00959807,0x00cd51e8,0x00a8f5ee,0x00b9b9c3,0x00b906d9,0x00bb75fe,0x00b9eb6e,0x00b4284a,0x00b20dfd,0x00b289fb,0x00b564b3,
-0x00bc3444,0x00c10100,0x00c2f395,0x00c751fe,0x00bfbb46,0x009e2621,0x00b24ffe,0x00ad4ebd,0x00d8dc07,0xfffa5165,0x00bb3712,0x0076457e,0x0047fe6b,0x0073b953,0x006148bb,0x009e426e,0x00b2f925,0x008abc17,0x00bbdaf9,0x009cc10e,0x0081e7be,0x004859e9,0x005a42f6,0x00981fca,0x008d53e2,
-0x0004541f,0x00db030d,0x00d28d62,0x00e2f39d,0x00e88f5c,0x00efab6a,0x00e825d1,0x00d0d75e,0x00c7fabc,0x00c8ad41,0x00d82b3a,0x00ecec8a,0x00f637c1,0x00f2f132,0x00f7481e,0x00db91e7,0x008afdc3,0x00b03dac,0x00c8c7e5,0x00ba352c,0x008b1410,0x0084c63d,0x005ef999,0x003ee9cc,0x003653f1,
-0x0047fa5c,0x004f730d,0x0070aa9a,0x005d2562,0x00956a14,0x0053b51b,0x004eb647,0x00372e3a,0x005fa95d,0x0078c67c,0x007a9247,0x0082d34d,0x00bfc571,0x00f3c526,0x00fb603d,0x010c0c26,0x011a8b0e,0x010c1c96,0x00e7e01e,0x00dde9a5,0x00e5001c,0x0101a98e,0x011b7fbc,0x0137ecec,0x0136e990,
-0x0143d6c8,0x010f43d2,0x0078285d,0x00cb5b6a,0x00aa29a8,0x00a64756,0x009c1f9d,0x00d091f5,0x00af87ee,0x0047de75,0x000b997d,0x00153761,0x0045b947,0x0066d86b,0x007328bb,0x00535349,0x0040e728,0x001009c2,0x004d68d5,0x00654890,0x006f2946,0x00a7dfdf,0x00983a88,0x00e855bc,0x012659be,
-0x013b0f00,0x015c7e50,0x01726652,0x0160ae08,0x0107b484,0x00e9da2a,0x00f1ea84,0x0133a470,0x01781b68,0x017bbec4,0x016fc154,0x015fa9cc,0x00f0a203,0x0017ad51,0x007d29ab,0x01bdc3c4,0x00ded93b,0x00172728,0xffb2f4a7,0xff4cdbaa,0xfff2599d,0x00768260,0x00ac451d,0x00c89f30,0x006d8a03,
-0xffee9e16,0x00109adf,0x002cafd4,0x006126fd,0x007eb8c1,0x007d1501,0x00645d11,0x007ad5c0,0x00471cfc,0x007df434,0x00f2878b,0x00c89055,0x00d0b96c,0x00969df4,0x00880a99,0x006b47f4,0x013f347e,0x014a5974,0x009c4c52,0x00c952f3,0x0119969c,0x01b8971a,0x01a195c0,0x01c31358,0x021f9b04,
-0x01d9381c,0xffaadad8,0xff77dea2,0x010b2c8c,0x013493d6,0x006150fe,0x00603242,0x001ce142,0xffce7a2b,0x000eb1c9,0x00436029,0x006bf3e4,0x003058c2,0x001dfe17,0x003da0e3,0x005d6076,0x008d4288,0x007b8b91,0x006939f8,0x003b87c1,0x00659798,0x011affb8,0x01403ede,0x01594cc4,0x01028cbc,
-0x00cafbf2,0x00a6d41e,0x007738bb,0x00532f9e,0xffe8fc15,0x0091782d,0x00572889,0xff298e14,0xffcd520f,0xffdd35e2,0xff65b82a,0xffa96048,0x0004b054,0xfff3eb39,0xffb7da95,0xffd8052d,0x00227fd0,0x000b30da,0xffc3c6e3,0x0035016b,0x0011daf9,0xfffbe8eb,0x0018b04d,0x002394d4,0x002ec1e8,
-0x002772b9,0x0024ea34,0x00560d22,0x001b1c67,0x0037b1cf,0x0049813b,0x0054c9b2,0x009bec0b,0x007f269c,0x004d98e6,0x00e33375,0x0142a142,0x0174376a,0x01a48dde,0x0190edea,0x0106301c,0x017ac11a,0x0222209c,0x02bb92c0,0x02906290,0x0218e1dc,0x01dfa146,0x007fe736,0x010a195e,0xffd36b5e,
-0x00136fe6,0x005a4d61,0xffd9798c,0x00076a9c,0xfff28dfb,0x00321176,0x0011770e,0x0021a96b,0x002c663a,0x00182247,0x001aa5c7,0x003acb50,0x0049c684,0x00631282,0x0061a863,0x00672036,0x004c046a,0x004d3a91,0x00b2c90d,0x00ef2eef,0x0107d498,0x00ee4ba5,0x00bd9ce3,0x0072cc9a,0x008581d2,
-0x005380e2,0xffdd0a81,0xfff29b88,0x000bbc68,0x00447315,0x018df3b0,0x0257c398,0x02e33004,0x01b65c16,0x01a9aa5c,0x0069880f,0xfed9855e,0xff063e1b,0xff046869,0xff30090d,0xff6dfa78,0xffa33708,0xffa7d9df,0xffc51842,0xffc70edc,0xffde2b39,0x00060d59,0x004e8700,0x002f87bb,0x0030c958,
-0x003dfba1,0x0062bb77,0x004f992f,0x0044d6d7,0x005f4a17,0x0055ce01,0x005f2702,0x005a0c62,0x00719c4c,0x00a61717,0x00be418e,0x00c90947,0x00dc2841,0x00d21ca7,0x00dfbe93,0x00ec178a,0x010002ce,0x010bc5ce,0x01344b98,0x017932c2,0xff83e64e,0xff426a3b,0xfeacae62,0xff4d96e8,0xff8e2e5f,
-0x00033771,0x0010cfa1,0xffce2b01,0xffd84f78,0xffddd9f5,0xfffc4091,0x003c978b,0x00597a15,0x00508ad7,0x003ddf0e,0x00392632,0x003cf042,0x001cbd7a,0x001c5c42,0x00195727,0x00747ecf,0x0098d7ff,0x007ef91b,0x00884cdb,0x006951a9,0x00508a63,0x0024f068,0xfff71169,0xffdccb4d,0xffc02e96,
-0x0003f0dc,0x00b54fb4,0x00b8902c,0x00968a4c,0x002ac3b4,0xffb8a0ef,0xffe35b59,0xffd69c36,0xfff44231,0x00181875,0x001ce4ce,0x0024803d,0x0025619f,0x003d8b5d,0x004a956f,0x006666c1,0x007e1bd6,0x006874ea,0x00414ea8,0x003dce6a,0x00278340,0x00210564,0x000d235b,0x0008bc3c,0x0005b721,
-0x0013222e,0x000c84a4,0xfff32ff8,0xffe79e8f,0xffd6b0e0,0xffc625e1,0xffaf081c,0xffd39591,0xfff2eb2d,0x00147dc3,0x0023f37f,0x00242da8,0x0021a795,0xfff057a6,0xffd4db73,0xffc2458f,0xffcff3fe,0xfffd4b1f,0x0015bb59,0xffb62b03,0x00119272,0x0008e439,0x0007f96d,0x002f4b2c,0x00332aa7,
-0x003e463a,0x003dbcbc,0x0028dc3f,0x003b0d20,0x0034eb6e,0x00306058,0x00002c56,0xffed4564,0xfffa5ca0,0xffd8bc3b,0xff9651f9,0xffaa94bd,0xff88dbb5,0xff8293d3,0xff7464d4,0xff63eff1,0xff576e10,0xff42d520,0xff5f1b87,0xff7391ed,0xff893fb3,0xffa0761f,0xffbc1053,0xffdd19ea,0xffea3935,
-0xfff5d93a,0xfff92172,0xfffd8ed7,0xffdef907,0xfff216fe,0xffdf1d0c,0xffa585c3,0xff3f8ee1,0x000216bc,0xffb7a4ee,0xff5d6968,0xff519f26,0xff4b3686,0xff4415bb,0xff39bb57,0xff2f7925,0xff29f5e7,0xffaedc88,0xfff2a675,0xff253c6d,0xff9a2dd8,0xffce6d0c,0xffcced2b,0xffbfa77b,0xffbcf19c,
-0xffb44832,0xffaf8cfa,0xffaa5e22,0xffa00d3f,0xffacccab,0xffb4b6ef,0xffbe281b,0xffc797c9,0xffcf7423,0xffd8f475,0xffd6a8f5,0xffd8e9f3,0xffdcdcdb,0xffe1b4a8,0xffc9231b,0xffaace17,0xffc38c67,0xff78d32f,0x000c3515,0x009d3f15,0x012d67c6,0xffc7d9be,0x0079408b,0x010f7980,0x01215e92,
-0x012388e4,0x01119db4,0x012d23f6,0x012e847e,0x0122f656,0x007fd9cb,0xffe0f75f,0x013e53b4,0x0094675c,0x00147426,0xff8169b6,0xffb750b7,0xffa3da53,0xffa1ff72,0xffa28010,0xffa20ca0,0xffa1e184,0xffa10c29,0xff9f8970,0xff9f176a,0xff992218,0xff97b92b,0xff97af3e,0xff9c17db,0xffa4ae37,
-0xffb8ea2e,0xffb49813,0xffba2bd3,0xff937e2b,0x00d2264b,0xffca8391,0x00313f2b,0x00276761,0xffe2b951,0xfff5bcf4,0xffd47a46,0xffe85bbd,0x001adefa,0xfffaa8c2,0xfffa4983,0xffe96a70,0x0026646c,0x00133f44,0x00152d89,0x0003d61b,0x00c4cef9,0xffb115f5,0xff98694d,0xff907318,0xff7cbc65,
-0xff7ef45c,0xff7d4df2,0xff7d0795,0xff7f215c,0xff7f6dde,0xff82d693,0xff7765cf,0xff70b7fd,0xff74a36f,0xff7935d2,0xff8fc3ce,0xffbfc112,0xffbe9cb0,0xffc7d7cf,0xffae2183,0x00272c8c,0xfffa96f2,0x004af6cb,0x00104b71,0x0012da6a,0x000764c0,0x00474263,0x002626d4,0x0045c7a4,0x0015b11b,
-0x00667aaa,0xffe9905d,0x0031de63,0x00056760,0x003bef1c,0x002c67f2,0x004d2020,0xffec916d,0xff785b05,0xff82ddcf,0xff575cf0,0xff609ba9,0xff5a384e,0xff5cad95,0xff5e3ebb,0xff5843e2,0xff5a00b5,0xff35a196,0xff2d8dce,0xff35714d,0xff4d0b6c,0xff7e57ee,0xffce4def,0xffe078d9,0xffbffad2,
-0xffd640c3,0x005548fb,0x0024c57a,0x0052a7ae,0x00063ca4,0xffe95e35,0x00023975,0x0023f2ce,0x00547ed0,0x00509385,0x0067c75a,0x002d5ad9,0xffe249f5,0x0014ec51,0x0008158e,0x007c493f,0x003214ae,0x0097cf1e,0x00155000,0xff6fc3d4,0xff5d4404,0xff0ddde4,0xff1666f1,0xff12908f,0xff0e13fc,
-0xff1dd5e9,0xff2c5225,0xff48429f,0xff2800ea,0xff084159,0xff12667d,0xff29678e,0xff6cef3c,0xffd658ce,0xfff9ae56,0xff83736d,0xffd8cd34,0x0006c81b,0xff90d800,0xff951ae3,0x00081245,0x003c505b,0x007b7283,0x00bba8c6,0x006a7ad6,0xfff3247e,0xfffcfc66,0x001b0723,0x006e9e07,0x006a63cc,
-0x003e736c,0x004ff076,0xffdc2571,0x001b39d4,0xffc539b7,0xff345d2c,0xff9a56ee,0xff98d600,0xffdf1e88,0xffe32561,0xffe89810,0xffea1298,0xff7fae67,0xfeac250e,0xfe9dda6e,0xfea65364,0xff13e8b9,0xff30fd34,0xff7c8c12,0x001a255f,0xffeeb490,0xfed33dc8,0xfe70ee32,0x00b59d03,0x00ec70bf,
-0xffbb114a,0x002e2e4c,0x0009dbe3,0xffc532de,0xfffd08ad,0x00317e7a,0x00694c34,0x0031b8db,0x001b236e,0x00286f66,0x002fd85b,0x0056d5ab,0x0046dfd2,0x0047f860,0x007ba2e1,0x00022813,0xffc4a3cd,0xffa7c529,0xff082223,0xff6d8027,0xffc5a2e5,0x002b4a98,0x0051d2d3,0x00366894,0xff99cfdb,
-0x00336a5d,0xffee04c8,0xfedcb7f8,0xff3f89e5,0xff6a3b05,0xff6b81eb,0xff492379,0xffaeb40f,0xff9e3591,0xffe5c77b,0xffcdff08,0x004b731f,0x00179f74,0xfff60473,0x0023ec39,0x000e70f3,0xffed351b,0x000dd776,0x00063604,0x0018c56c,0x00247e51,0x0008e705,0x00011bb2,0xffff86af,0xffc6feae,
-0xffe75b49,0xffc421a3,0xffe498eb,0x00290698,0xfff51bfa,0xff6f6db2,0xfedd0254,0xfe98f80a,0xfea7db94,0xfefe46f6,0xff45c7c2,0xff521d7c,0xff08d704,0xfeae8a6a,0xfe570b58,0xfe61530a,0xfed93b14,0xff8351aa,0xff4df2c3,0x0015b6cd,0x002e8ee8,0x0009d061,0xfffd7376,0xffd215b7,0xffe280d7,
-0xfff1e53a,0xfffb2c49,0x00119b48,0x001fc91b,0x0005d8ab,0x000f2da8,0x0020da48,0x002c653d,0x004cc571,0x00274c68,0x001fcc1f,0x005c18ec,0x000818f6,0xffc4aabe,0xffb0f973,0xff966685,0xff9ea13b,0xffbd0306,0xffe55670,0xffe2258f,0xffad6976,0xff3e3833,0xff765295,0xff63e52c,0xff2dcd6c,
-0xfeec3e42,0xfea5e618,0xfe48b426,0xfef5bd10,0xfe795510,0xff79bd13,0x00088791,0xff33473b,0xfeda294e,0xff495a6e,0xff6caf83,0xff8461b2,0xffb703e3,0xffa94fc1,0xffb85b92,0xffc3b3a9,0xffee0c07,0x00351690,0x0022a3ca,0x0025369d,0x0013d808,0x002e4810,0x00567a2c,0xffe94eb3,0x0016b9b1,
-0x004c1580,0x00484aef,0x003d57dd,0x0002550e,0xffa78e46,0xff9d1b16,0xff67b30e,0xff01a40b,0xff16b458,0xfefe8db8,0xfeb6c082,0xfe6aa38c,0xfe53e86e,0xfe57cfec,0xfe92152a,0xfe659f74,0xfe93953a,0xff3a7311,0xff328a2b,0xffaad626,0xffc75f90,0xffb70a28,0xff95be5d,0xff84c985,0xff9f94c3,
-0xffc2d937,0x000b07ff,0x0022a857,0x002c18e6,0x000d6c77,0x000756db,0x00048a5b,0x001f36b8,0x00229143,0x0029e77a,0x00199c06,0xfffc011b,0xffdfd65a,0xffcda13b,0xffbaaa58,0xffb1ccfe,0xff9be1ec,0xffa9c2c6,0xffdf4dd5,0xff9e3211,0xff3ec60e,0xfeb14460,0xff23eeb6,0xff3eaa88,0xfefc6cc0,
-0xfec3bba0,0xff0c238a,0xff3d2f82,0xff9dc096,0xff8c5041,0xffd90c14,0xffd367d4,0xffe52f07,0xfff08ff1,0x0030bb14,0x002c0386,0x006cd7f1,0x002442ad,0x004a47e0,0x00253997,0x0025fc52,0x0003746a,0xfffc8deb,0xffea2463,0xffe67b5f,0xffaa448d,0xffa215c0,0xffc953f5,0xffdbaefb,0xffd052aa,
-0xffbe2f39,0xffae726f,0xff94d703,0xff783397,0xff60f16a,0xff551e4f,0xff61f919,0xff57f708,0xff43bf8d,0xff251567,0xff11c6f5,0xff2098b2,0xff896218,0xff9c01d7,0x00359874,0xffc2db18,0xfff9dcbb,0x0002a92e,0xffe6e9c9,0xfff94d9e,0xffd147dd,0xffc92b81,0xffe82684,0xffc5175e,0xffc1e3f6,
-0xffc8cc50,0xffd82bde,0xffc7c4cb,0xffa0824c,0xff9bfd17,0xffbd6bf0,0xff8ba217,0xff9427d3,0xff7c194e,0xff6ed658,0xff6197e1,0xff598240,0xff51ace1,0xff43523e,0xff32cd57,0xff1c7acd,0xff089b67,0xfeeb2dc8,0xfed417ee,0xfef7dc24,0xff216dd3,0xff44cbbe,0xff6804e1,0xff6549bc,0xff5a16a8,
-0xff94a6af,0xffe04782,0x002faaf1,0xff7d7aca,0xffdec12b,0x003699dd,0x003bbc1f,0x00403a15,0x0035b00d,0x004578a0,0x004a01ec,0x004ab2b2,0xffd55196,0xff7d19d5,0x002d0b23,0xffca4d39,0xff844310,0xff62e1b8,0xff685b33,0xff603ad1,0xff5dfa60,0xff5a83a1,0xff562d05,0xff52a30b,0xff49ab9d,
-0xff4332df,0xff3e2ec1,0xff37b88f,0xff33d14e,0xff255118,0xff3873e9,0xff409469,0xff4aebb6,0xff5329ac,0xff37d856,0x008c14cb,0x007bd55f,0x00b8f0c9,0xfffb464c,0xff7e2a2e,0xff4b5fee,0x0039f096,0xff9b8396,0xff46ab27,0xff4423df,0xff48e5d7,0xff611d33,0xff4e32ff,0xff4c50a3,0xff49672f,
-0xff95effc,0x00235280,0xff493f5f,0xff91aafe,0xfff9a00f,0x00b0d58d,0x007b8b0a,0x008a1a4a,0x008d10a4,0x008e9e24,0x008dbc8b,0x00886113,0x00872a70,0x00880754,0x008ecfa7,0x008aa3b2,0x008b2b62,0x008fbec6,0x0087aff7,0x0080ff17,0x006ed51f,0x00837a6b,0x00896eac,0x0085716f,0xff783ef2,
-0x006aed10,0x0008a8ae,0x0000e827,0x003a3c3d,0x0022ebd7,0x006d0d0e,0x0062aa04,0x00200023,0x00685969,0x0065069a,0x00366329,0x00075bd4,0x001fcff7,0x003718f1,0x0049cfef,0xff9e5208,0x007df543,0x009bde66,0x0094a11a,0x00ab87bc,0x00b26ddf,0x00b35f1f,0x00a21dd2,0x009de7a2,0x009d41b4,
-0x00afcd9b,0x00a7288a,0x009f4e5f,0x009f1dd5,0x00802f90,0x006db0be,0x004cca14,0x007118ab,0x00b74b23,0x007a471f,0xfffa4a95,0x0023af17,0xffff159d,0x0007c099,0x000ccfbd,0x001de016,0x00182f09,0x0067652e,0x00171c23,0x009c610c,0x00339d84,0x00325ea2,0xfffb2c8f,0x0029fcd3,0x004aea2d,
-0x0034f298,0x0009ad55,0x005421e5,0x00b5462f,0x00a0f42e,0x00c3d085,0x00ccc540,0x00caa871,0x00a5ffc8,0x00a8550b,0x00a9e6e7,0x00d7f763,0x00ba3dd3,0x00b8b44f,0x00ca209d,0x008b503c,0x006a7866,0x0035b75c,0x007bf9cd,0x0097a2f1,0x004cd14e,0x000169d5,0x0062f817,0x005bacb5,0x0022fe80,
-0x00154774,0x000c0fba,0x0040d59b,0x00582d15,0x006abf62,0x00680ea4,0x0052af0c,0x001142c8,0x003acb6e,0x0060b32a,0x0050bb04,0x00857bbb,0x00224c44,0x0067a795,0x00c2b76d,0x00a96acc,0x00e7053b,0x00fc5d42,0x00fd1b3f,0x00bd42fe,0x00b90bed,0x00c6c5a6,0x011bf54a,0x00f7c69c,0x00c575c5,
-0x00c283f0,0x00436aba,0x0006ce22,0xffd49e38,0x002be6c4,0x01a6407c,0x0072ea9e,0xff69611a,0xff44a42e,0xff1b09ee,0xffb37036,0x0035ad34,0x005e6c62,0x00c23752,0x008a719f,0x0009e369,0x00075154,0x0024e823,0x006f647e,0x006371ee,0x00652afd,0x003c6693,0x004eb1c2,0xffd6c293,0x000fdbdc,
-0x00e5f336,0x00cbb457,0x01133774,0x00a4494c,0x00ae1c88,0x00da51c2,0x013ab504,0x0112ca60,0x00805b5b,0x008609fd,0x00ba7198,0x013cf6bc,0x0129c2ca,0x01400d20,0x017d63c2,0x01621790,0x00071e1d,0xfef34236,0x00a9e247,0x013ebdb4,0x001fb33b,0x005c3110,0x003a8ba2,0xffe02fb3,0x00123b5c,
-0x0039d519,0x00782645,0x0043a58c,0x002a5243,0x0043c9d5,0x006dc23e,0x008b336a,0x003bc03d,0x00468e36,0x000b3954,0x003929e2,0x00d4268a,0x00c2772e,0x00f24e8e,0x00c54064,0x00a224d5,0x0070ad5b,0x00442d65,0x002d94e1,0xffe8ba53,0x009ed9ec,0x003bce35,0xfee76a88,0xff578248,0xff8d29fb,
-0xff9b727b,0xffd728cf,0x001b6c2d,0xffb904b0,0xff7de54c,0xffc070c6,0xfffbf78d,0x003d8a90,0xffff8a18,0x00311434,0x0020d0c9,0x001426b2,0x001f433f,0x0020f973,0x002f6939,0x002c416d,0x0008719a,0x0023f2f3,0xffd80947,0x0007d595,0xffeee8d8,0x0014d881,0x007c2cd0,0x0049b1e3,0x00475aad,
-0x008777b7,0x00c05242,0x00e4adec,0x01466f6a,0x01693c1a,0x00f4dd60,0x0183367a,0x01b466c0,0x018395de,0x013587aa,0x00dcdfb0,0x0112f5c8,0x005e6bae,0x00786cc8,0x001df4f6,0x0036a89c,0x00637b78,0xfff5082e,0x001c0a77,0xfffcc9e9,0xfffd3041,0xfffef464,0x000c923b,0x001ae661,0x0012f007,
-0x001737a1,0x0022e5d9,0x003b4205,0x00445bb1,0x002ac6ad,0x00376559,0xffffd781,0x0031aff2,0x008e59bb,0x009de6f8,0x00b22a39,0x0086dc76,0x00591b8e,0x002d0df0,0x001a643d,0xffcc8bad,0xff3f29b7,0xff832d82,0xffb58c50,0x003e1dd9,0x00a19026,0x01102c66,0x018ca662,0x0091b22b,0x0096793f,
-0xff8ee7d0,0xfebce386,0xfef1de70,0xfeca7956,0xff0fa63a,0xff62ea79,0xff93314e,0xffad5456,0xffdaf845,0xffcf27e4,0xffd62667,0xfff71724,0x0037f9e4,0x0022d4de,0x002285c6,0x001b7df9,0x003b832e,0x000b5c40,0x00300fa5,0x0036cd48,0x002d87ce,0x0072f6d0,0x004efb0f,0x0045e58d,0x00370437,
-0x002d9b73,0x001b9723,0x000de98c,0x001554be,0x00364aff,0x008c614e,0x0064a471,0x004f839e,0x0084b8e3,0x007c847a,0xff86e691,0xff049dab,0xfe8cecb8,0xff0f9821,0xff6cd2cb,0xffa2abcd,0xffbcd905,0xff85d989,0xff9c6236,0xffabf668,0xffdef756,0xfff98a7e,0x001ba464,0x0037d0ec,0x00216137,
-0x00178950,0x00125cd0,0x00252f07,0x003773b4,0x002c62be,0x006b693a,0x007c7df2,0x007a5c9a,0x0053fc4f,0x00384fdf,0x001be44b,0x000bb6d5,0x000532d4,0x000288e9,0x0007ad5f,0xffff3ed5,0xfffbd53d,0x001697bc,0x00148d7f,0xffecd8c7,0xff9616b0,0xffa20c12,0xff5e04d9,0xff4e5953,0xff7a9783,
-0xff742ec3,0xff980154,0xffb69f55,0xffe09af1,0xffef8e4c,0x0021db76,0x0026aa4a,0x00425efd,0x001c1b44,0x0032d637,0x000d6f93,0x000c5c14,0xffecd26d,0xffe34cc6,0xffc5fa06,0xfff1fa91,0x002f62e2,0x0028e576,0x00467e37,0x0030898e,0x0020c5da,0x00098c22,0x0011490a,0x00112cd1,0x000e8d13,
-0x002761f4,0x0043f7c6,0x0062a634,0x0026733d,0xffecc798,0xffc9df03,0xffa3834d,0xffde1ab5,0xffe5e95e,0xff8f4064,0xfff8a936,0xffdf1ed8,0xffe56795,0x000cb6a5,0x00110fae,0x00223aa3,0x0014be0b,0xffecfef0,0x000bd293,0x0018475c,0x000ee1e9,0xffe2a581,0xffe74c7f,0xfff1b966,0xffef24c9,
-0xff9dc826,0xffeb136d,0xffd25bbb,0xffc41a62,0xffbb3a79,0xffac7cea,0xffa50147,0xff99ca7f,0xffade181,0xffb9b0a6,0xffc0401b,0xffc1d5f0,0xffbc34c6,0xffbf59a8,0xffc3d91c,0xffcf15c9,0xffd2cc12,0xffd68e4e,0xffe1b3b2,0xfff9d45b,0xff988805,0xff57b40a,0xff31955e,0xffc7584f,0xff6906a8,
-0xff3aa8b6,0xff30cbd1,0xff2da49a,0xff353d89,0xff2362bb,0xff17cdef,0xff17481b,0xff612211,0xffc31f72,0xff1561b3,0xff59b00d,0xffa1e0ee,0xfffb4e17,0xffdfad23,0xffe3639a,0xffde0a3e,0xffdde85e,0xffdc99ff,0xffd7a742,0xffda049b,0xffda8326,0xffdd7e63,0xffe0852f,0xffe4275f,0xffe450da,
-0xffe49c24,0xffe3e10b,0xffe4f16e,0xffe5d692,0xffe21b3d,0xfff9965f,0x0001e4c3,0xffc3b0ce,0x008b0cbc,0x00dc9877,0x00bb9829,0x005337f4,0x00c72097,0x00cda20f,0x00da9ffe,0x00da1063,0x00ba550d,0x00d76a56,0x00d4cbe9,0x00bc3a07,0x00cad16a,0x00665a14,0x00c2b4c8,0x00cf73b7,0x008d7fce,
-0xffcae2be,0xfffae817,0xfff3c99d,0xfff5098a,0xfff5df24,0xfff73f64,0xfffa41d3,0xfff66989,0xfff4bf48,0xfff79b9a,0xfff30fac,0xfff3d186,0xfff605b9,0xfffb3ab0,0xfffcd929,0xfff977d0,0xfffc72bf,0xffecb922,0xfff53e0c,0x00d1aeac,0x0014d96d,0x006b6eae,0x005755e4,0x0028787e,0x002ea05b,
-0x0016064b,0x003c650d,0x00721c15,0x005bf301,0x0043dcb6,0x003c8f86,0x0052bdf3,0x0040246c,0x00665370,0x003a1636,0x00bc8a8e,0x000a5d0b,0xffe38528,0xfff96d91,0xfff09029,0xfff1b53d,0xffed700b,0xfff17b95,0xffeb57c4,0xffefc70b,0x000243ba,0xfff71efa,0xfff88223,0xfffff73e,0x0008c51d,
-0x00087ed0,0xfff9a4b2,0x0006b3d7,0xffeda307,0xfffe3546,0x007bb75f,0x00392f89,0x005b0e20,0x0039ed74,0x003b2ec3,0x0029e449,0x00624254,0x003217cf,0x00745fb3,0x0039da4c,0x00898fd2,0x001e40b9,0x005a4ab8,0x003334c5,0x0059ddec,0x004c51d1,0x00798892,0x001fc6bf,0xffc95d6c,0xfff3bcf5,
-0xffec4384,0xfff5dca0,0xfff789b2,0x00077705,0xfff412d1,0xffed2a50,0x000795eb,0xffe883e4,0xfff11f3a,0xfffd377c,0x001d837a,0x0018dc52,0xffeac3b7,0x001b0fda,0xffbde1f5,0xfffcb384,0x0068d345,0x003683ac,0x0047e95a,0x002299b6,0x00022ffe,0xfff69d6f,0x001c8e41,0x00477347,0x002af4fd,
-0x006db737,0x0044eab6,0xffe0134c,0x00150bc9,0x0015e7eb,0x00985749,0x00302311,0x00875ea9,0x001878f6,0xffbabea6,0xfff3cb89,0xffe76a2e,0xfff20d9b,0xffe96e0e,0xffea898a,0xffdfaffd,0xfff2900c,0x00339ed9,0x00169897,0x001119c9,0x001e93b4,0x003706ee,0x0021353c,0xffd07e25,0x00161484,
-0x0017204d,0x008e5fc4,0x009728a6,0xffe9f0f7,0xff9aa14d,0x0010e46e,0x003dd9ac,0x0058be7d,0x00c54c6b,0x00991b00,0x001abc40,0xffff2237,0x001a66c6,0x008454f8,0x0060835d,0x003685e7,0x00568b30,0xfffff9b6,0x00526c02,0x00324506,0xffc16ea1,0xffeaa369,0xffb7a70a,0x000882af,0x000f60ac,
-0x00153e5c,0xffca5dab,0xff5e8651,0xfef34596,0xff0aec26,0xff62f571,0x00275768,0x0044d7a4,0x0053411c,0x005b8329,0x0058628f,0xfef3f520,0xfe61675a,0x00f54cfa,0x0130f8a8,0xfff6b4bf,0x0064e89e,0x0029a1b6,0xfff4d2fe,0x0005a578,0x002f26ec,0x00722f33,0x00474518,0x00318b39,0x002aec25,
-0x004f3ee7,0x0076bf49,0x004fa21f,0x0040e108,0x007080cc,0x003b9bbb,0x002c8b75,0x00580c4d,0x00260d67,0x00287dea,0x003d082c,0x006b102d,0x0062afad,0x00437c8d,0xffce9aae,0x00794503,0x0054278a,0xff8dce3b,0xffd9dc74,0xffe24e86,0xffb0abcc,0xffa77e3c,0x0023bdbe,0xffa53792,0xffc43c49,
-0xffa934c7,0x0036024d,0x003f8368,0x003d772f,0x002022c6,0x002b61ca,0x000aded5,0x001c46ea,0x000f9ba3,0x001e315f,0x002b2a16,0x000c1167,0xfff3ff93,0xfff28c34,0xffd79ea1,0x00169d39,0xffe4649c,0xffc6eea6,0x000fcdc4,0x0012c0dd,0xffb8c300,0xff7f540b,0xff7dcdc7,0xffac4a85,0xffd4f221,
-0xffb7452e,0xffdba87e,0xffdc41ed,0x000c44c4,0x001b14df,0x0034f099,0x009b0f48,0x0058733c,0x004a9782,0x00790b7f,0x00678318,0x00415ff8,0x000c54cc,0x00007380,0xffee5647,0xffd6dfc9,0xfff532f6,0x000452d2,0x001b2bee,0x000ed82e,0x0013c5a8,0x00202962,0x002d8133,0x0046c5d9,0x001dc406,
-0x00102c76,0x0049294e,0x00188bb7,0xfffc7478,0x00152a3d,0x001c02d5,0x00156c5c,0x00140493,0x002fa8c4,0x00323618,0x000da081,0xffc2baf8,0x00043d18,0xfff6aa36,0xffb08879,0x001a6abb,0x0053682f,0x007ee1f7,0x00749316,0xffef0426,0x00243d85,0x0012d653,0xff70c652,0xfefb1920,0xff444e35,
-0xff69c5ea,0xffa6804d,0xffe2b898,0xffdc86ff,0xffe7f028,0xffd2712b,0xffeefae5,0x002acfbb,0x001f440f,0x001eff04,0xfffa5c3a,0x0034174f,0x006c3b9d,0x00192bd9,0x00039206,0x0025426b,0x0041762c,0x0046e74d,0x003cfbbb,0x0020bd86,0x00106a02,0x000713cc,0xfffac044,0xffb042c6,0xffad1ff4,
-0xffddca37,0xffda0b05,0xffe229e0,0xffd8af07,0x001d7140,0xff418b3d,0xff6c2003,0xff7fb6c7,0xff8cf61c,0xffe26962,0xffce7acc,0xff9de245,0xff84f0f8,0xff746d29,0xff8833a9,0xffa7acc4,0xffd48e0f,0xfff2310e,0x001e501a,0x000e7803,0x00205726,0x0024c072,0x003d2b7d,0x00340e36,0x00309de9,
-0x0016c733,0x00167e1a,0x00309dbb,0x0024a638,0x001fde38,0xffff9484,0xffe31aa8,0xffc6098c,0xffb3b1b0,0xffb1fed6,0xff72af6f,0xff0073e5,0xfefe363a,0xff2611e5,0xff55ff48,0xff6225ca,0xff17f9e2,0xff25b0ab,0xff855b54,0xff701461,0xff9bdab9,0xffa38e0d,0xffbdbdd4,0xffcfdc41,0x0006764c,
-0x0003b4a7,0x00483c89,0x001207c9,0x00384003,0x002afbf7,0x00233e94,0x00091c57,0x00000126,0x00006154,0x001404ec,0xfff561db,0xfff4e471,0x001d7460,0x003387aa,0x0021a810,0x000f2974,0xffff0c0e,0xfff63184,0xfff1d211,0xffe8f6ec,0xffeba85c,0xfff92cba,0x0004ace3,0xffdea067,0xffa76542,
-0xff6d049f,0xff4f54ef,0xffa9940b,0xffb9e6f5,0x0010fe6d,0xffd319b9,0x00051841,0x0004c282,0xfff49f41,0x0006c874,0xffee9753,0xfffc9877,0x00214e08,0x00126845,0x000bc9ca,0x00214b42,0x001c03bd,0x000202b7,0xfff68676,0xffdcd972,0xfff12259,0xffb61630,0xffb319f1,0xffac8e4f,0xffa60e9c,
-0xffa32b81,0xffa2a834,0xffa296b6,0xff926369,0xff83a5c0,0xff77c7e3,0xff6c64cd,0xff5cb25e,0xff52614c,0xff5b1648,0xff733b42,0xff872470,0xff9ef703,0xffaea505,0xffa2174a,0xfff5931a,0x001bfb3f,0x0003b384,0xffe867ab,0x0020006b,0x001f35a2,0x00263f60,0x0028de48,0x0019a682,0x0027822c,
-0x0029d859,0x00268473,0x002f7544,0xfff86629,0x001190e3,0x001c63f3,0xfff137b0,0xffa48db9,0xffb377b1,0xffaf9ba9,0xffae77e6,0xffaed441,0xffadaad5,0xffae0041,0xffa93aa3,0xffa6c21b,0xffa38930,0xffa0a08a,0xff9eede7,0xff9950c1,0xffa25cc9,0xffa429ba,0xffa5ccd8,0xffa7a182,0xffade9a9,
-0x00102b5d,0x00125abe,0x002d9ce5,0xff962eb4,0xff82dc67,0xfff76c40,0xffb30fdb,0xff8cf415,0xffd1e037,0xffd52c86,0xffdbb8d4,0xfff5c70b,0xffeedbdb,0xfff103fa,0xfff55ce8,0xff8be7a9,0xffa718a4,0x0003a758,0xff90abde,0xff9821ae,0x00254a84,0x000cef73,0x000ccf47,0x00105aea,0x000f652e,
-0x000dcd9a,0x0008ea47,0x0007fe13,0x0008ecae,0x00131e92,0x000748e8,0x0004134b,0x00074595,0xfffb7ad1,0xfffb2d90,0x0001c57b,0x000c2c47,0x001b5a8a,0xffef65c4,0xff9c858d,0xfff2cddd,0xffce7828,0xffe151ec,0xfff2bbbb,0xffe992a6,0x000e1810,0xfff8db60,0xffd3f662,0x0000d1ea,0x00132798,
-0xffe79b73,0xffe6d4b1,0xffefe823,0xffdd06ae,0xfffa19f7,0xffc3a4b3,0xffee1dc1,0x000fd196,0xfff7d7cc,0x0008524e,0x0008b6b8,0x000911e7,0xfffee9c6,0xfffc2576,0xffff33fd,0x001887c0,0xfffcb45a,0xffeca596,0xffed0248,0xffc3809e,0xffc5cb4c,0xffe4fede,0xfffa592e,0x004111f8,0x0003c2df,
-0xffaa7a93,0xffd70984,0xffe0cbe2,0xffeebd82,0xfffc171b,0xffff7fa6,0x0005aac9,0x004671d4,0xfffda479,0x006c7e14,0x00315d27,0x000dc1c0,0xffeb90d0,0xfff5136c,0x0011b075,0xfffb58c0,0xffcc492a,0xffe566b4,0x0010fc33,0xfff426fb,0x000537b0,0x0001cb90,0xfffefe1a,0xffe0ff40,0xffe40a22,
-0xffe414be,0x00203ad1,0xffdf69cd,0xffc8d086,0xffdb4c6b,0xff88d45e,0xff967345,0xffd1257d,0xfff7b808,0x003901e2,0xffe5c518,0xffaa24e3,0xfff81b0b,0x00217855,0x0006d139,0x0015c138,0x000ddfcf,0x0034052f,0x0043a103,0x00527482,0x0076f343,0x00566b94,0x001172df,0x00221730,0x003c30e1,
-0x00425bf1,0x00402816,0xffeaa9a8,0xffe866a8,0xfffa4eb6,0xffc5e40b,0xffdcdffa,0xffdef7d8,0xffd4a245,0xffb44e26,0xffbd7a39,0xffe1f6c5,0x0049e3aa,0xffe2256e,0xffa0c718,0xff9fbbf3,0xff0af807,0xff1dc5fd,0xff9a5087,0xffd96f57,0x008b99b1,0x000a4a33,0xff6ea237,0xff564dec,0xff34d33f,
-0xffbc6392,0x00153115,0x0020ca42,0x00aa99ec,0x009ac5b2,0x0030d10a,0x000553ac,0x001e5dcd,0x00738840,0x0044d12f,0x00373df0,0x001dc4cb,0x000bd18a,0xffbae192,0xffca0d09,0x0046395b,0x005aa6df,0x00ad7bed,0x006ee439,0x0092df56,0x00fa0752,0x008b5e26,0x00202459,0xffb910ef,0xffab8e2d,
-0xffc2a631,0xfffdeac5,0x0031d783,0x0050bf40,0x006d4b85,0x004350cf,0x0014dc03,0xfe9250ba,0x0001dbb7,0x00c2e6a5,0xffce344a,0x003c5aca,0x004386ad,0x000ce113,0x000f0e4f,0x001f306a,0x00721974,0x00555733,0x003c440c,0x003d34ce,0x0061aed4,0x00681685,0x0009f846,0x00240adc,0x0010121b,
-0x0009009c,0x002234e2,0xfff10cf3,0xfffb3369,0x001a3305,0x0033d5d2,0x002c6b92,0x00218c3b,0x0019dfa0,0xfff43ad8,0x007ab59d,0x0021568e,0xff2beb70,0xff2ad6a0,0xff4e3a2e,0xffb5d87e,0xfffe160a,0x002d1cc8,0xff97ffb2,0xff9392fc,0xffc7e3e9,0xfff6c19d,0x004d1ea5,0x0021f2c1,0x000bafa1,
-0x001f9932,0x00203b4b,0x001d09ae,0x00189e98,0x00277ae3,0x0032e3d8,0xfff75cba,0xffe5bae3,0xffbaff14,0xffd0c192,0xffac0a88,0xffc8086d,0x001e439c,0x0014421d,0x00435953,0xffd9a338,0xffa6ce64,0xffa15999,0xfff61906,0x004dc521,0x00527fd9,0x00a87fed,0x00488b36,0xff60bddb,0xff22d82a,
-0xff2398ee,0xffa1902a,0x00162a87,0xffbf5204,0x004bf525,0x00482a0c,0x002d166f,0xfff38093,0xfffc7278,0xfff500c9,0xffdd06d9,0xfff9f171,0x000698c6,0x000d9016,0x00128b15,0x001799b4,0x0010585b,0x0021da76,0x0021d725,0x0002c260,0x000726bd,0xffea5506,0x001a25e4,0x00341191,0x001306cc,
-0x00172f0d,0xffd4aedb,0xffc13941,0xffd752ec,0xffa3f8e3,0xff686bce,0xff1a5eed,0xff5d0886,0xff84d7d1,0xffe12af3,0xff6de459,0xff4141fc,0xff30daec,0xff4ed8d9,0xfeeb05b0,0xfede5432,0xff111c9f,0xfeff00a4,0xfebc15a8,0xfef7669c,0xff424db5,0xff796004,0xffad2d94,0xffda429e,0xffd9b418,
-0xffda1c7a,0xffedd116,0x000cdbdd,0x0010e95f,0x0015aec1,0x0004c03c,0x0001c72d,0xffe1b523,0x00035b89,0xfffaae6d,0xffff4d66,0x003b14eb,0x0021f350,0xfffb9a50,0xffa7871c,0xff874964,0xff5f45fc,0xff38c7ba,0xff2f161c,0xff33c6d1,0xff8038e0,0xff3e4951,0xff20db3d,0xff36a2ec,0xfef74dc4,
-0xff3c094f,0xfef0481c,0xff0d0953,0xff375b57,0xff987c2d,0xff820a16,0xff85d8f7,0xff65b7b7,0xff75331d,0xff885313,0xffb160c7,0xffb38711,0xffd6e000,0x0013ef30,0x00075d4b,0x00032d40,0xfff90501,0x0024be72,0x0038c337,0x0037a5db,0x0033440c,0x002bd83c,0x0043bff1,0xffffa74d,0xffe6c353,
-0xffc9be70,0xffd14b2a,0xffdc6d6b,0xffe2ea24,0xffd827c7,0xffa49137,0xff4f69ca,0xff392671,0xff338272,0xff52d7e8,0xff367278,0xff3a3685,0xff012ed5,0xfef0f2e2,0xff0e6941,0xff1cd3aa,0xff4c77ac,0xff82e394,0xffb4811b,0xffcb20b9,0xffee985f,0xfff6016f,0x00158497,0x001720f4,0x002a94ab,
-0x000c33a1,0x0002cd0f,0xffeae05b,0xffea42aa,0xffd1d5f1,0xfffc35ea,0x00385e8d,0x003e6441,0x006508be,0x004e732f,0x0040981a,0x002d8bce,0x0011f976,0xfff133be,0xffccb111,0xffd137c1,0xffdd8aef,0xffed9125,0xffc7b0f7,0xff977720,0xff714a84,0xff45374b,0xffaa1d8d,0xffa19036,0xffa8d35c,
-0xffcabaed,0xffc179bb,0xffce26e1,0xffd9e25e,0xffe1387c,0xffe7a9f5,0xffd9193b,0xffc608bc,0xffd7033a,0xffecd8be,0xffed667a,0xffddb0c4,0xffe753a1,0xffd9f795,0xffe7ab1a,0xffbd4508,0xffee217d,0xffef85e8,0xffe36351,0xffe26f81,0xffde6c6e,0xffdfb6d8,0xffe34bb1,0xffe150d7,0xffdb97b0,
-0xffce999b,0xffbc20c9,0xffa0fd79,0xff88f089,0xff8a9669,0xff926e19,0xff991f2b,0xff9e2baf,0xffd12e4c,0xffda6e0c,0xff88accd,0xff79bd38,0xffacbff2,0xffa13604,0xff834579,0xffa4ae50,0xffa5c89a,0xffaad7ef,0xffb89774,0xffb22ae3,0xffaf4045,0xffb606db,0xff86d4a9,0xffadf22e,0xffa8739e,
-0xff853d11,0xff9f9db1,0xfffb4e5d,0xffe953c4,0xffed3736,0xffed827f,0xffefe055,0xfff0fc14,0xfff23cb4,0xffea01a1,0xffe3f6c4,0xffdfb4f1,0xffdae797,0xffd7de7f,0xffcf56ce,0xffd365be,0xffd259d5,0xffd2a910,0xffd0c64f,0xffe43f32,0x0060ed33,0x005468b3,0x0054abe8,0x00a4524a,0x007ac944,
-0xffde11ad,0x00a2a98f,0x008334bd,0x000731d5,0x0009d5ee,0x0008fdd1,0xfff6a3d1,0x0000e011,0xfffc1354,0xffe5d004,0x00802ad1,0x009eebad,0xffd589d6,0x0074e5ed,0x009fbce0,0x00529db7,0x00566aa0,0x005f58c8,0x00620da3,0x0061a75d,0x00615a95,0x005fadcc,0x005c01bc,0x005cd3a7,0x0067e780,
-0x0064bdeb,0x0066ddde,0x006a09ea,0x006a6fa0,0x00643f4a,0x004c1dd7,0x00597424,0x00473f4f,0x0075202e,0x00480a0f,0x0067e27c,0x006a9ea1,0x00568aed,0x005df0c4,0x00502fcf,0x0060b223,0x007f2b91,0x0089637a,0x009bcd2d,0x007dc7b5,0x0072984e,0x005089c7,0x004b6efb,0x007a5826,0x005bf89e,
-0x00416f6d,0x00729c88,0x005e3dd3,0x007b1fd6,0x0080aa98,0x007d98e2,0x00723d06,0x00697647,0x005d956a,0x00684d41,0x0090fab3,0x0089e411,0x0090579b,0x009327df,0x008ed908,0x00770f2e,0x003b24be,0x00584fed,0x004f738c,0x0073141e,0x0088a7c1,0x00636fcf,0x00462e99,0x004902d0,0x004b8df7,
-0x004177d5,0x005972f1,0x004f5c6c,0x0072fbd4,0x00782cb2,0x007e50e8,0x00530e4a,0x005174f0,0x0048690c,0x004e5789,0x0050b2ff,0x006964a7,0x005cd05f,0x00618d1f,0x008532b5,0x009e4bab,0x009df872,0x00976f09,0x008c8f61,0x00733a08,0x0078d2a4,0x00c014d3,0x00ac9e7c,0x00bf4e2b,0x00c6bb6d,
-0x00c630a4,0x0093ac69,0x0015e773,0x005b5658,0x001eba81,0x004dc065,0x00534651,0x00574f6c,0x0049c686,0x003e3d96,0x0022ed43,0x0003ed65,0x002aa241,0x0041143a,0x002beb4e,0x00716526,0x0060cec3,0x0007ae4d,0x0029b49a,0x00389da0,0x00726130,0x0040fcc8,0x0049767c,0x003f194c,0x00613cf5,
-0x00a8f2b7,0x00d761c2,0x00d44837,0x00b15c66,0x008acc3d,0x006c1fb3,0x0093d830,0x0111e834,0x00fe8bd8,0x0109085e,0x01075a66,0x00e11338,0x007d5044,0xffcf9137,0x00311326,0x00d4a26e,0x010050a4,0x00ba6b13,0x002dbb15,0xff8e39fe,0x0002f6bf,0x004283b9,0x00403b36,0x00b624a4,0x00b56bea,
-0x004cc9be,0x000fe94a,0x001fec8b,0x007ec7b8,0x004d637b,0x0038eb17,0x00492310,0x00460433,0x006476c6,0x008a1007,0x009b36d2,0x007caf74,0x005742e5,0x006bfad6,0x0078cc4f,0x00973a40,0x00203fcf,0xffd42f23,0xffce4a6d,0x0005d0a3,0x008428d1,0x0125fe26,0x01664ef8,0x014d20c4,0x00de8ec7,
-0x00ccb835,0xffbf70d1,0xfed6450e,0x007346b3,0x00d4d6f5,0x0049bad9,0x006fc940,0x0045b10e,0x0031f234,0x001425bd,0x00223307,0x0070ec65,0x005dfbb1,0x004b013c,0x0033dddc,0x006b502d,0x00820056,0x0049e9f6,0x0032924c,0x003358b1,0x005afe38,0x009abc24,0x00e51508,0x013709c6,0x00f1f34e,
-0x00bee280,0x009de295,0x005208d0,0x003360cd,0x001d1ea9,0x00a8aed4,0x008a5002,0xffe13ef2,0x002a9a4a,0x001e2e28,0xffca6ace,0x00304035,0x0083171b,0xffe78308,0xffca90b7,0xffcfe884,0x0025b4df,0x005fedcc,0x0054135b,0x00114195,0x0031b85d,0x0023d637,0x0025957e,0x001f0458,0x0028a98c,
-0x00382cce,0x00112f99,0xfff6e76c,0xffef288f,0xfffd52ff,0x00236196,0x000e10c4,0xfff2ed0e,0x0013a0e9,0x004e13f7,0x00351aa1,0x006af821,0x00cc3ef9,0x00f575ee,0x00e9805b,0x00978153,0x00adf51c,0x00e7865f,0x0151d97c,0x01911632,0x01a0d5a2,0x01ceea84,0x00ee12f3,0x010edce6,0x0076feed,
-0x005c1638,0x004d8132,0xffea9fea,0x000f1778,0xfff09fc0,0xffe1a516,0x00061f19,0x000cecb0,0x00167d0d,0x00205ee7,0x00217d77,0x00218789,0x0027513c,0x002ff251,0x001f7b2a,0x000e692a,0x0020461c,0x0036b449,0x0061e2a6,0x008dd9f0,0x00a7ad79,0x007dba15,0x0059a1c1,0x00490d52,0x00477b85,
-0x003bb9a1,0x002fc258,0x00512365,0x00620dad,0x006b6152,0x0145e5ae,0x01c338c6,0x022de9d8,0x0191adba,0x0108ad3a,0x006b2c14,0xff82595f,0xff640ace,0xff29a1ac,0xff2aed43,0xff58c3a2,0xffaa990b,0xffdc63c5,0xfff89816,0x0001b2fa,0xffec9d52,0xfff4ed14,0x000d3faa,0x00133e01,0x00192710,
-0x00045910,0x0029a150,0x003d3e81,0x00397c75,0x0009fb40,0x0008ac7f,0x002a1abb,0x004392b3,0x006015a9,0x0078618a,0x0078d148,0x007b6552,0x00a86efe,0x0036a84a,0x003e9272,0x00b5cb8e,0x00fddcdb,0x0127dbbe,0x01329b76,0x01298bf2,0xfff5fce6,0xfff40aba,0xff847d17,0xffc36248,0xffe60517,
-0xffc63b65,0xff959b03,0xff7ec52d,0xff816644,0xff89968b,0xff9ddea3,0xffa9fd6a,0xffcdb443,0x000a0168,0x0017cce9,0x003331f6,0x0038d291,0x003ac4a3,0x00329abe,0x002c23b2,0x0026c7c9,0x003ff876,0x0065bfce,0x006e6a3d,0x0061a888,0x00399adc,0x001e7db7,0xffeca79e,0xffb737b7,0xffb3d2ae,
-0xffbb9dd5,0xffe2b782,0xff8678db,0xff8135ce,0xffb30746,0xffdac69a,0xff6b2cce,0xff508186,0xff720ac9,0xff776281,0xff7552d9,0xff91ae0c,0xffb3dcfc,0xffd4849a,0xffe7f96a,0xffecc5a9,0x001263d3,0x00093eec,0x001cd9d7,0x0029d1ca,0x001adabc,0x001356fb,0x000c0cf0,0x001fcdf3,0x003df3f0,
-0x0050349c,0x004e96c8,0x005620d9,0x005b755a,0x004dcc54,0x004390e0,0x003972c0,0x003e6118,0x0044db1f,0x00428587,0x004bf53d,0x00497e77,0x00520849,0x00200708,0xffee92dc,0xffb0e7e6,0xff8d5a04,0xffd192c3,0xffd6646b,0xffba6b20,0xffe1ca7f,0xfff0cdb7,0xffefb547,0xfffb2b70,0x000516c3,
-0x000a405d,0x001ea622,0x002e113b,0x003b7d45,0x003908bf,0x004e90b6,0x003354df,0x001fa01e,0x002b5788,0x000bc477,0xfff25d7f,0xffe549a5,0xffd96088,0xffe12903,0xffe153d4,0xffe602bb,0xffeae14d,0xffef4868,0xffead226,0xffea4bf3,0xffef4483,0xfff30a80,0xfff8c926,0x0001ec84,0xfff1621e,
-0xffeb9b43,0xffe54d1f,0xffe143bb,0x00029089,0xfffe8400,0x00290a52,0x00127512,0xffb82176,0x0033e659,0x001eb212,0xffd846ed,0xffdbfb09,0xffdd4854,0xffd576de,0xffd93d5b,0xffd7954d,0xffd4dd7f,0x0039b28e,0x004a22fb,0xffca11ee,0x00284c6f,0x0035e0dc,0x0005ef48,0x000cbfea,0x000e4d42,
-0x000d8a1a,0x000ee691,0x000ec2f7,0x000f6bdd,0x0011daaf,0x00141b58,0x00150451,0x0016b5dc,0x0017f34d,0x001ca9a5,0x0017523f,0x001320ba,0x000d6bda,0x00097845,0x00285ae5,0xffaf2f73,0xffc06272,0xffa7946b,0xffb0cd71,0x000a470e,0x00b20ab3,0xff948c4e,0xfffa2c51,0x008cc622,0x009765c7,
-0x009bc658,0x00a0f215,0x00aee533,0x00b20d47,0x00b25c3a,0xfffcccd7,0xff99adad,0x00c05c89,0x0006da64,0xffb32f20,0xffa2717e,0xffb98201,0xffac1d47,0xffad5460,0xffa93354,0xffa61c36,0xffa0f0be,0xffa13c00,0xffa2db9e,0xffaf7904,0xffa28c37,0xff9f3569,0xffa0e3e7,0xff98fd09,0xff9d81b0,
-0xffb195cc,0xffb04ca4,0xffbabb78,0xff94d71a,0x002ff28f,0xffb25420,0xffe3e850,0xfffc1cfc,0xffd8e913,0xffdd7b1d,0xffcfcf19,0xffca8737,0xffdd6701,0xffdaff3a,0xffebfb25,0xffd5b1a7,0xfff7a32b,0xffe7fcbc,0xffc75077,0xffd64541,0x00399ed5,0xff9a5e90,0xffa4afe7,0xff91a6d5,0xff8d239e,
-0xff81b8c2,0xff78c7e9,0xff7246de,0xff724414,0xff7d8c8f,0xff9ff8c5,0xff826456,0xff76fff2,0xff77b321,0xff5b75b6,0xff692d8c,0xffa441ba,0xffa7afc4,0xffcdc8e2,0xffc681ae,0xffd3bd45,0xffd4b201,0xffff572c,0xffffa4c9,0x000efa5f,0xfffede14,0x00205599,0x0029c522,0x001f6572,0x0038c2be,
-0x005137a8,0x0004a7af,0x000adbcf,0xffe287a4,0xffefa648,0xffee862f,0xffe8f73c,0xffba7ef9,0xff920255,0xff86a100,0xff775540,0xff63dee7,0xff5518f3,0xff3e6fd5,0xff3f8d5e,0xff46381c,0xff8a8b9e,0xff4a72d3,0xff384021,0xff4541f4,0xff1245f5,0xff35518b,0xff9d4a31,0xffa49273,0xffd06187,
-0xffc58c5c,0xffc78cdc,0xffd1c884,0x000bc8a6,0x000dfc14,0x0019d7c3,0x00110897,0x00298331,0x00396d0e,0x003d8703,0x0081b48d,0x005b805d,0x00158955,0x00131c2f,0x000cb156,0x0033538f,0xfffe1555,0x000291f2,0xffb5e602,0xff73c982,0xff51bf2e,0xff2eb7c7,0xff0c3c6b,0xfee2e666,0xfed57b16,
-0xfee5b54c,0xff249925,0xff97fa07,0xff2f3ebf,0xff0aeec4,0xff09e1b2,0xfeaa70b8,0xfedd4726,0xff9480d6,0xffb75759,0xff7837bf,0xfffa60b3,0x00151bab,0xffdb32c5,0xff8ec7f4,0xffdf9a3b,0x000a774a,0x0017c4ba,0x008c1b61,0x009e0fce,0x005f0e4c,0x000fb2aa,0x00187395,0x006c3ebb,0x002fa09f,
-0x0014909e,0x00215e24,0xfff15417,0x00030d03,0xffd930a4,0xffaa5e28,0xffe40aa7,0x000a3d13,0x00272d03,0x004dbade,0x00ae6b1b,0xffab9a00,0xff1a0d57,0xfeea07fa,0xfef9b014,0xff16feb5,0xff17c505,0xffa547f9,0xffc30c41,0xff95cdf8,0xff67bed7,0xffd84bb0,0xfe8a77d4,0xff5a0be6,0xfffd76c9,
-0xffeae748,0x0023559c,0x0033dd2f,0x003a973a,0x00126d37,0x0010f21e,0x0064cbe4,0x00664301,0x0051321d,0x002ddbe1,0x0047baef,0x0041b52f,0x000564f0,0x000e1b8f,0x0027b0c7,0xfff70cda,0xffa2ad48,0xff87acc4,0xff70a0cc,0xffc02258,0xfff56298,0x001ae6a3,0x00121363,0x000f3867,0x000a3b13,
-0x0047365a,0x000c66bd,0xff83bb07,0xff6e4b63,0xff79b6f5,0xffbb0649,0x0016f84c,0x00474068,0xffd717f7,0x0002eceb,0x00043aa7,0x00284c05,0x00530ad5,0x004170ab,0xfff60199,0x0019faa4,0x001d60ab,0x00192708,0x0010d3bc,0x001e40af,0x00398785,0xfffa5421,0xffc4c80c,0xffd56c36,0xffba7d99,
-0xffa95005,0xffa81fca,0xffbb21bf,0xffe81fbc,0x001f5c08,0xff62b862,0xfef8ee9c,0xfedeecae,0xfefe4c82,0xff4bb0af,0xffb82764,0xff79384e,0xfed98360,0xfe19da68,0xfdf6eb28,0xfe52a6e6,0xfef3166a,0xfffd3eb3,0xff70b973,0x004d3fd3,0x002da80d,0xffe6252b,0xffddcb21,0xffcf0bf1,0xffdd985e,
-0xffcdc693,0x00060e03,0x0012d3a6,0x000ba987,0x001d18ec,0x0020ce8e,0x000b4086,0x000868cd,0x0008904e,0xfff6ad6d,0xffe66e09,0x00024389,0x000de500,0xffe66e05,0xffba81c4,0xffa82612,0xff7c6ee5,0xff81b619,0xffa0db63,0xff811638,0xff6ee8f5,0xff7ed547,0xff9a215e,0xffafacbf,0xffd5adbf,
-0xff1e2683,0xfe977372,0xfe1ac0ca,0xfeedaf02,0xfe34c480,0xff07a55b,0xffa8583a,0xff385838,0xff0c11ce,0xff1d505f,0xff43a17a,0xff73fd36,0xffb2dd35,0xffd028f3,0xffe116a1,0xffe2b736,0xffe84845,0xffe40117,0x00008b69,0x000c811e,0xfffc0b3f,0xffe98a99,0xfff1c652,0xffeba163,0xffe399e5,
-0xfff8acbb,0x00030f45,0x0005f65d,0xffdeb984,0xff86decc,0xff642567,0xff286f17,0xfeeedee0,0xfed0d466,0xfeb3e9f8,0xfebbcad8,0xfea6a654,0xfeadb45c,0xfeb2ef6c,0xfe63bbae,0xff0892c8,0xff1bbd20,0xffa6ab24,0xff80d74e,0xffbebac0,0xff79881e,0xff5cdefd,0xff5d5f63,0xff619db5,0xff7621ea,
-0xff8b6080,0xff8a6471,0xffa6f3bb,0xffe6e864,0xfff8d1eb,0x00040365,0xfffcc42f,0x00209833,0x00294eda,0x002fe82b,0xfff9a4a9,0xffdd263e,0xffe50b6f,0xffd1f6a3,0xffc03ccc,0xffa97f24,0xffaa8e81,0xffbb9084,0xffd58035,0xffaad715,0xff60fcc7,0xfee8e712,0xfeecf94a,0xfee0fe66,0xfee3188e,
-0xff049bcf,0xff11208b,0xff103c47,0xff1e89a5,0xff21840e,0xff47748e,0xff665174,0xff96f988,0xffb8cc10,0xffd10e10,0xffca0092,0xffde53a1,0xffdf2ced,0x0012b862,0x0013d908,0x0010735a,0x00026043,0x000543fc,0x00089e6b,0x0008ce01,0x00063e57,0x00117784,0x00248244,0x00353f44,0x0030e3af,
-0x002f9522,0x003413d7,0x0002ddbe,0xffcd2cef,0xff94bab8,0xff7b4f76,0xff6e36bd,0xff5d0cb2,0xff5017f5,0xff3a8c62,0xff22453b,0xff1a3577,0xff7d7a52,0xff6ee859,0xffd570bc,0xff9d1acb,0xffb652be,0xffc4a108,0xffb24887,0xffbf0261,0xffb1b3cc,0xffaeca42,0xffc098dc,0xffb6c171,0xffc3fd51,
-0xffd110aa,0xffe39839,0xffea0b7b,0xffceff1e,0xffdd938e,0xffec19e7,0xffef85bb,0x00036d5f,0xfffa3b7a,0xfffc6599,0x00009a85,0x00050927,0x000efa15,0xfff6867f,0xffe40fb3,0xffcc5095,0xffb2a08b,0xff91a1c2,0xff707836,0xff6f5b0c,0xff714c71,0xff766726,0xff776079,0xffb557bc,0xffa74258,
-0xffade0fb,0xffda8cc6,0x0036fc98,0xffa23b84,0xffdb2956,0x002f7caa,0x0039e311,0x004393d1,0x004a490f,0x0054d165,0x005af754,0x00626b05,0xffea24c8,0xffbd8a77,0x004ce1b1,0xffed96ff,0xffca4169,0xffe3e33a,0xffe35278,0xffe3e332,0xffe75315,0xffe83420,0xffe872bc,0xffec66ba,0xffdf80db,
-0xffd61a9b,0xffccbf75,0xffc29644,0xffba97d5,0xffad8bf2,0xffb383d2,0xffb2f37f,0xffb28f2a,0xffb064df,0xffc9eb89,0x007e704e,0x006b645f,0x00a2ca94,0x00493859,0xffd701cf,0xff51964e,0x00752d2a,0xfff1e28f,0xff6b4311,0xff67c386,0xff692830,0xff70ef72,0xff67567b,0xff63e5b2,0xff5bb41c,
-0xffe9cbc2,0x005d1697,0xff4245b7,0xffdaa385,0x003ffe26,0x00958a02,0x00722a62,0x0081537f,0x00836886,0x007f646b,0x007b8a43,0x00731e95,0x0072b8f9,0x00766755,0x008745be,0x00833bb8,0x008530f1,0x0089a368,0x0081c25c,0x0078a6b9,0x005fc2ef,0x00720327,0x006d5255,0x00988011,0xffac7de0,
-0x00717763,0x002b3b5b,0x0029e2b5,0x00576f2e,0x003ae92b,0x006e8768,0x00743e69,0x00501c8b,0x00841507,0x0075291b,0x005fda96,0x00203c1b,0x002655e9,0x003bc6e0,0x004404d2,0xffbc4b57,0x00826355,0x009227d2,0x009cbcad,0x00a929da,0x009c6872,0x008c2b24,0x0077ac65,0x0070df28,0x00800b99,
-0x00b122fc,0x00a9835e,0x00ac5ee7,0x00aa56b7,0x0090af10,0x00741098,0x003feaa3,0x00623453,0x0087780a,0x00a51883,0x00477b49,0x00524f73,0x0014595e,0x00341ffa,0x003b5de0,0x0035d83a,0x00354f6b,0x005f090e,0x0047ba37,0x0099a322,0x00566eb6,0x00603285,0x001f33be,0x002c5033,0x001a9bf9,
-0x002c3748,0x00230e77,0x005b7666,0x00afde41,0x00b0c492,0x00d0702d,0x00b98409,0x00a38889,0x007705ff,0x006e379a,0x008223e7,0x00e2da15,0x00cf6b95,0x00dd0ea4,0x00e7d1cc,0x00b18f78,0x007a513a,0x00199443,0x00589fd8,0x006bafd6,0x0072adfa,0x000e05bc,0x004fdcef,0x003ff922,0x005148d5,
-0x0043289a,0x0016d43e,0x003ed15e,0x0043dbd1,0x004a718c,0x007c8c9d,0x007a0072,0x003a8b54,0x0038bf72,0x00444641,0x001e7e45,0x003f8d64,0x0001d5cb,0x00471aea,0x00bd6bbd,0x00d572f1,0x010d400e,0x00e62224,0x00abd5b3,0x006a399c,0x005c5818,0x009de5b5,0x01357f88,0x0114cdde,0x01135294,
-0x01076fe4,0x00938472,0x002c1b6f,0xffc49675,0x001c2dae,0x0126deda,0x00fc2990,0x007f02e1,0x00390c67,0xff7fe0ae,0xffc9dcdd,0x00227522,0x00320799,0x008c8cf1,0x00af3711,0x007df8fd,0x00248d60,0x00204eac,0x00651f7c,0x00339d14,0x003b75e3,0x003afd25,0x0074d3dd,0x00478ebb,0x008395eb,
-0x01023f22,0x00ca2879,0x00e159f4,0x00b05c4a,0x00c15a4d,0x00f1192b,0x0060b0c6,0x00219856,0x003be0cd,0x009474d3,0x0105cec0,0x0133a47a,0x01a81e36,0x018febf2,0x00ecd5e8,0x00d2bd02,0x006f4a3a,0xff435e27,0xff684761,0x0000ddc3,0x00a3fcbb,0x005c8119,0x00471f5b,0x0057ed68,0x00275ba2,
-0x0020d62f,0x00676cda,0x0073f7c8,0x0061a130,0x0038587f,0x0068b3cc,0x006730a3,0x002ec521,0x001c2a9e,0xfff21f02,0x004cc558,0x00ac6e7b,0x00df587b,0x016f07ce,0x01245138,0x00d7c1fe,0x0080b644,0x0026cc8c,0x00207ba3,0x005e6e2b,0x008dd99d,0x005f6a31,0xffd5311f,0x0017f9aa,0x00189026,
-0xffd36626,0x00802a89,0x00c05cbf,0x004c2565,0x00101cfc,0x002aefd2,0x00218549,0x0064094d,0x00447ba1,0x0004fb1f,0x0028c4df,0x00326231,0x0024c10c,0x0027898e,0x002e70a3,0x003f6356,0x001112a9,0xfffbacd7,0xfff0f68d,0x0010de9f,0x0001c67f,0x001a4441,0x001f6651,0x000bf9ca,0x00511053,
-0x007ee959,0x00e34b24,0x0133a7b2,0x016812a0,0x01449c60,0x0101e2ac,0x00dfec83,0x0108619a,0x01603e0e,0x01732ede,0x01886b4e,0x01b47908,0x00ff7e37,0x00f011b9,0x0033a2e0,0x001697a3,0x00202478,0xffc87440,0x0002dd17,0xffe93134,0xffe928c3,0x00172206,0x001ee3b3,0x00156c71,0x0032a172,
-0x002d847d,0x00192700,0x001438be,0x000e127b,0x0019b82c,0x000b2035,0xfff1e331,0x00414a3b,0x00983c92,0x00b868c5,0x00cdfc85,0x00911a18,0x0059ba77,0x001bafea,0x0012f1ab,0x0010fede,0x00411e49,0x00331eec,0x006f49c4,0x00feaa05,0x01805a40,0x01da8f26,0x022f98ec,0x015d6b1c,0x010b0dfa,
-0x001a089b,0xff03f8dc,0xff473ac1,0xff5e6b7e,0xff2de094,0xff5ca90f,0xff9d4a38,0xffbc15a6,0xfff33810,0xfff6f8f9,0xfff68e73,0xfff4179e,0xffe94cc6,0x0004ae29,0x000eaeca,0x000c31e1,0x0014c5ae,0xfffd2c9d,0x0038fe54,0x00113e47,0xfff6b522,0x001478c0,0x00242b36,0x0047eaef,0x006f266a,
-0x006671d8,0x006260c2,0x008b6250,0x003ea9f5,0x0042cdf1,0x0094d79d,0x00f3419b,0x012d0b08,0x0159332c,0x011583fc,0x00247e34,0xffea6396,0xff5f1d63,0xffa7d725,0xff9e6b9e,0xff87fd81,0xff7788fd,0xff6ca6c3,0xff87c6a9,0xff908d69,0xffa3618e,0xff95dd19,0xffb3749b,0xffe89a3d,0x0013879f,
-0x002c3ea8,0x002facc0,0x00298aba,0x002b4c42,0x00210b45,0x0031ed03,0x0047407c,0x004fe52a,0x006c2953,0x005ee2c2,0x003fc58a,0x00223448,0xffffbe9c,0xffd85e2b,0xffe66766,0x000e148e,0x00512e3e,0x0019fdb3,0xfff2e906,0xffdb260f,0xfff3a7bd,0xffbb9cee,0xff8d99ae,0xff71aa1a,0xff93f2bd,
-0xff7d187b,0xff9f53f7,0xffbb8fe3,0xffddea56,0xffca88b3,0xffce6d10,0xffc54ea5,0xffeb7461,0xfff24cf2,0x00115891,0x00084f75,0x001762a7,0x001cfc17,0x00270c42,0x002dc055,0x00541f76,0x005de1e2,0x004c0010,0x00459425,0x0047227f,0x004e632e,0x005a3036,0x00534257,0x004a0159,0x0038a804,
-0x003614e7,0x0026b817,0x00252d45,0xfffe9108,0xffe4f9f5,0xffc64313,0xffb571d9,0xffcd7ed2,0xffc06cba,0xff6959e9,0xffc89438,0xffb8dd35,0xffbd22f0,0xffdb20ae,0xffdff73c,0xfff7d748,0x000580aa,0xfff9a7de,0x0016cf9e,0x001cd4cb,0x0025f564,0x000df737,0x0013f199,0x002cdd12,0x0025410e,
-0xfff5bbba,0x002e8ad5,0x001fe3de,0x00262d76,0x00284a31,0x002b483f,0x002c07d9,0x002d1abd,0x002f751c,0x00371d3f,0x00406710,0x0046fde9,0x004ef8e4,0x00587da4,0x003ab928,0x001f6c91,0x00059fc2,0xffe9a34b,0x0015731e,0x001892be,0xffff28f9,0xffc85b8c,0xff82de36,0x001b97e0,0xffd7cfa1,
-0xff959d6f,0xff948091,0xff94de01,0xff998554,0xff9272c2,0xff8db020,0xff8d5111,0xffefeac4,0x0034fdd0,0xff91ee36,0xfff076c8,0x00272d2c,0x004085c9,0x0035b657,0x003b20c2,0x003a164d,0x003abc6e,0x003b2be9,0x003b6d90,0x003e5fba,0x003f38ac,0x003f85f5,0x00408ba2,0x0040b9c7,0x0046263f,
-0x0039c17e,0x00328dc5,0x0029f8b1,0x00231d95,0x00447424,0xffad6a1d,0xffbea363,0xff8fa505,0x001d7f78,0x008bb337,0x00d5d091,0xffe47254,0x0072046e,0x00cdb91f,0x00db399b,0x00dbe547,0x00ca026e,0x00e37e13,0x00e41f64,0x00daf3ec,0x007317fd,0xffef8d8e,0x00d86e57,0x00790588,0x001ac8ac,
-0xff8bb702,0xffbb8854,0xffad6ba1,0xffabe6f3,0xffa4a81a,0xffa05d6e,0xff9bb8a4,0xff9d1ed1,0xff9f8831,0xffabafc7,0xffa38437,0xffa2efcd,0xffa551f5,0xffa24bf0,0xffa5df37,0xffb2cbcc,0xffaf741c,0xffaedabd,0xffb29d74,0x009beb3f,0xffcdfbfb,0x00237448,0x0030c280,0xfffa34a0,0xfffc58c9,
-0xffdba0ba,0xffef3c19,0x0023443d,0x000699fb,0x00046d23,0x0004ca31,0x001e46cc,0x0000834f,0xfff2cf35,0xffea5e4e,0x0086602f,0xffb5158b,0xffa6803e,0xffa71a43,0xff92b21f,0xff7bd2c2,0xff69cb6f,0xff65c0c0,0xff68ed77,0xff7a5df5,0xff9e2407,0xff8d309c,0xff8c60c5,0xff9005fe,0xff86554a,
-0xff8ef2f1,0xffaffca3,0xffb0a773,0xffb23fcc,0xffee82a6,0x00416135,0x0013d8c2,0x0032b9d7,0x002c77fc,0x0035470f,0x0011fd11,0x0048c3a7,0x00246dca,0x0056183b,0x0029615a,0x0071f61b,0x001d956e,0x0033b9c5,0xfff3e55d,0xffeeb196,0x0004994a,0x002be466,0xffe0008a,0xff9741a4,0xffa50fdf,
-0xff84abf1,0xff604bd2,0xff4548f6,0xff38199f,0xff3826a1,0xff47f558,0xff86c808,0xff6274a5,0xff628c0f,0xff6fddba,0xff615217,0xff748494,0xffa681af,0xffb030ab,0xffad512e,0xffffe0c5,0x00226a88,0xfff748b8,0x001ae86a,0x003b96c1,0x002f526b,0x000f8dad,0x0029047e,0x003c7994,0x00368cec,
-0x00898fdf,0x006adffe,0x0022e147,0x00138bb2,0xfff0166b,0x001f0558,0xffe11427,0x0033ce76,0xffd797ff,0xff8adc44,0xff950acd,0xff571dae,0xff110a4d,0xfed055d8,0xfecd3ab6,0xfee2121c,0xff2dec10,0xff92dac8,0xff59c556,0xff5a4163,0xff60f6ef,0xff3f1f73,0xff534e4f,0xffad465e,0xffcbcd22,
-0xff4b342c,0x006b8d72,0x00f058b5,0x007c60d8,0xffea42bf,0xffeeb7f5,0x00017216,0x002b3b25,0x006e6ed5,0x0097f920,0x009136ab,0x002232f4,0x001267db,0x005ee9ba,0x00255b80,0x00104405,0x00428e51,0x0012a626,0x0067112d,0x0028420a,0xff950581,0xffc915b2,0xffb8632b,0x00107f89,0x00215636,
-0x00381e38,0xff248d68,0xfe9dbf98,0xfe933d96,0xfee988b4,0xff335434,0xff2659f8,0xffd94576,0xffe60da6,0xff6c9f30,0xff5d3596,0xff98a7ae,0xfecb5dec,0xfeed6320,0xff5f489a,0x006a0679,0x003b4a4a,0x0027a25e,0x0053ba39,0x001e71f2,0x00183799,0x0056b2cd,0x007415e6,0x0062ee5a,0x0020061d,
-0x002f433a,0x00285db5,0x001c3c42,0x000a6b5c,0x003856e2,0x00105a1d,0xffa69e8d,0xffc0fc3b,0xffb7521a,0xfff217ab,0x000b8e93,0x001daa37,0x0017ef11,0x001e064d,0x003702a4,0x0018e2d4,0xfff8054f,0xffcaf3d6,0xfff4eba5,0xfffb214f,0xffcffaa9,0x0029034b,0x009722a2,0x00623807,0x0089d129,
-0x0057b9b8,0x005ea7a2,0x00514d87,0x004f1adc,0xfff3a669,0x001fd744,0x0021a834,0x001664a8,0x00120eda,0x001bf91e,0x003ab914,0x000afcb3,0xffce840e,0x0002b896,0xffd07be4,0xffe05fa3,0xffc6ded5,0xff928fff,0xffd78460,0x0001979c,0xff7ca81a,0xff32e717,0xff1a8a46,0xff1abdd7,0xff288b89,
-0xff94aee4,0xfeede790,0xfe8735aa,0xfe9408d2,0xfe988d8e,0xff186ecc,0xff99f9a5,0x00507583,0xffb75284,0x0024bfa0,0xfffe768c,0xffc19bb1,0xffd1acd1,0xffcc003e,0xffd7c930,0xffcea6e2,0x001068ec,0x002163f3,0x0016135c,0x002d6f72,0x0027f2a0,0x00080960,0xfff99ee5,0xffffa452,0x00025392,
-0xffe5cc1c,0x0020c9b7,0x001874f8,0xffe9c857,0xffde7e23,0xffc9cb20,0xffb6055d,0xffbc7ff1,0xffc1ca27,0xffaf9097,0xffc50389,0x002f4c6b,0x000b4a8f,0x0022e455,0x0044bb3d,0xffdeb6e2,0xff7bee5d,0xff032b0a,0xff9fd97a,0xfef8e6c0,0xffb9940c,0x00165b73,0xff8c8d9d,0xff7b2a43,0xff68277a,
-0xff6f3a63,0xff92e26e,0xffc50780,0xffcee4af,0xffe251ad,0xffe2d31c,0xffe435a0,0xffd0e18c,0xfffc5ff7,0x000757ca,0xfff5b057,0xfff716f3,0x00205f78,0xfff5d603,0xffe54686,0xfff8abb6,0xffe6fd7d,0xfffa7143,0xffef1be1,0xffd2754d,0xffb7c293,0xff9a3807,0xff760af1,0xff38e080,0xff0a46bf,
-0xfed3a7d4,0xff0e7d5a,0xff43d202,0xff47b759,0xff332ef0,0xff4b148e,0xff932b81,0xfffedfcf,0xffb99f96,0xffb474c6,0xff75963d,0xff4aac2a,0xff5a3286,0xff5deaa4,0xff766498,0xff8149f5,0xff87ddfc,0xff98e5c3,0xffc58a3f,0xfff14ad9,0x0010042b,0x00193e52,0x0024a1c1,0x001d61f0,0x00200878,
-0xffe584e1,0xffcc7bde,0xffc6ebd4,0xffe3d728,0xffe97b6e,0xffde931a,0xffc4d82c,0xffbbbad1,0xffbcf2f9,0xffb346f4,0xff86db8a,0xff19d882,0xff2a3812,0xff25673d,0xff1d5486,0xff4ed81b,0xff3dfbc6,0xff60ea5d,0xff9035b0,0xff84267c,0xffae9a26,0xffb1ea2b,0xffc3fa93,0xffccab2e,0xffd6aefe,
-0xffac228e,0xffc1ed51,0xffad9c59,0xfff6cf1d,0xffef21cd,0x000c5bca,0x000a8514,0x002c764d,0x00276480,0x00335dc0,0x000c8b7e,0xfff0d7c7,0x00057531,0xfffe4f56,0x000bd4d8,0x00160f35,0x002df901,0xfffc2678,0xffd00aef,0xffa1d8b0,0xff7e86ca,0xff64153c,0xff47fd57,0xff4aa085,0xff480dc5,
-0xff3afb34,0xff4998fe,0xff770b1e,0xff6843f8,0xffd55158,0xff81da28,0xffac3c5a,0xffb3c56d,0xff9a1455,0xffaa84e5,0xff98c5f4,0xffaa6776,0xffd40aa5,0xffc03b0e,0xffc06add,0xffd4d3ab,0xfff697e4,0xfff7816d,0xffec8c32,0xfff41abd,0x002b254a,0x000bd7b5,0x001adb95,0x00188e39,0x00197304,
-0x001de088,0x001dc67c,0x00244290,0x00050cd6,0xfff0d449,0xffdc28c8,0xffc95e7c,0xffb43fed,0xff9d5179,0xff92b39e,0xff8a92a3,0xff85b776,0xff7efc52,0xffae60d1,0xff953392,0xffe0166d,0x001b3d89,0x004e4db0,0xffc67d1d,0x001a325e,0x0056f115,0x00634fdf,0x006acc07,0x0066960a,0x0078b2a2,
-0x00818160,0x0083f51d,0x00353276,0xffea8845,0x0079ed92,0x003c2477,0x0004928f,0xffd5edca,0xffe28e71,0xffdffdc6,0xffe29c19,0xffe22a52,0xffe2045c,0xffe5aa80,0xffdb6798,0xffd3a587,0xffca9cf3,0xffc148f3,0xffb908c5,0xffaf8d8e,0xffb2016b,0xffb09a20,0xffae3f0a,0xffab26f0,0xffc15ce2,
-0x003bd697,0x0033bda2,0x00722d9f,0xffce3ed6,0xff7aeed1,0xff789b2d,0xfffb8fbe,0xff90657d,0xff6d8d32,0xff6d32e2,0xff713568,0xff888a9b,0xff7a5850,0xff7a2130,0xff7ff702,0xff8749c0,0xffe0545e,0xff6d682b,0xff7fe6bf,0xffc45fa0,0x005f287a,0x00393ab3,0x0040e8cd,0x00408cac,0x00388a15,
-0x0032237d,0x00273882,0x002b2189,0x00301b83,0x00400606,0x0039ec4e,0x003a4d5a,0x0040543d,0x0031136d,0x002b65e8,0x00255aa8,0x003221dc,0x003e5364,0x004d1e6d,0xff7b2684,0x002c90e6,0xffe11de3,0xfff861f6,0x001fcc49,0x0001e97b,0x00373aef,0x0028754b,0xfffa2cc1,0x002c4e2b,0x0033767a,
-0x001aa510,0xffe9a6c3,0xffedf8cf,0xffddd7f8,0x0001db77,0xff901a70,0x00307559,0x00572aa3,0x00487938,0x004db3d4,0x00378fb9,0x0027b469,0x0013f37f,0x0019397e,0x0028e53a,0x004e52c2,0x0042b606,0x003df0e4,0x003ef39e,0x00137537,0x0005d88d,0x0005cc92,0x001c58b9,0x0060bb45,0x007a589d,
-0xfff7d4cf,0x001b6452,0xffebd45c,0x00153c5b,0x001fb129,0x001023f3,0x00154758,0x00539920,0x0018b41d,0x0081c344,0x00317b8c,0x00418217,0xffedd5fe,0xfff403bb,0xffdf4ebe,0xfff2de40,0xffd88df5,0x001cf987,0x0079637c,0x005b371e,0x00614299,0x0034c21e,0x0014a678,0xffe0bd2a,0xfff23450,
-0x000c4b58,0x005d6556,0x004496df,0x0042d366,0x005bb552,0xfff9a022,0xffe52ecd,0xffed464b,0x000c27ea,0x00615c53,0x0060f603,0xffdc89d3,0x0023d156,0x00247d72,0x00511239,0x00525aa8,0x00201e6d,0x0047ea37,0x00466942,0x006124c3,0x008af8b0,0x008515b2,0x0057034e,0x0031d236,0x002761c9,
-0xffd584f3,0x0018488e,0xffd3a6b5,0x001cab4d,0x00879902,0x0061f5fc,0x0067d903,0x001f2945,0xffe12cf6,0xffb068bc,0xffcb5b47,0x0017e4b3,0x008bbf41,0x0056a3e4,0x003edded,0x0043b2cb,0xff9d9d6f,0xff77bca4,0xffb5b928,0xffe3880d,0x00bba993,0x009d8a7f,0x0050a061,0x003eac4e,0xffa2cfd7,
-0xff9ed804,0xffeaf989,0x002005b3,0x0058743f,0x00925eb3,0x00acc093,0x00321c6f,0x0016141a,0x0049b71b,0x001b43cc,0x00329b0b,0x0032a8e6,0x0069a879,0x001d7ee3,0x0034e0f0,0x00b4be93,0x009ce764,0x00e07671,0x00a217b7,0x00ad1ee3,0x00c80059,0x002e4969,0xffe6ae66,0xffe28872,0x0050e507,
-0x00990ea6,0x004f67ab,0x00ea455b,0x00e4e965,0x004ebd60,0x004a427a,0x008a1239,0xff65b440,0xfe7036c6,0xff2c2cb2,0x00c36ef7,0x004f2aaa,0x00421dec,0x0056118d,0x002fbf99,0x00203d66,0x00540938,0x007bdde2,0x006a89d2,0x0031c2ed,0x0046857a,0x0031ffb1,0x000bb42c,0x00098498,0xffdf4428,
-0x001f8c12,0x0048635b,0x004a1084,0x00b95907,0x00aebd50,0x00802a86,0x002b2ec4,0xfffe6350,0x00133cb6,0x00771579,0x002ca096,0xffe11a71,0xff7e1184,0xffd42e5a,0xfffb7fc0,0xffee2dd5,0x0075b648,0x00d33a8d,0x00b5118e,0x00833a67,0x008e83d3,0x0036f933,0x005c44ad,0x00349f02,0x00007351,
-0x00248d08,0x0038e8fa,0x001b7324,0x0024a915,0x002b31f2,0x003d4d89,0x000d3ead,0xfff5461e,0xfff0c21e,0x00049ee5,0xffd5af2e,0xfffd1260,0x001e2a41,0xfffca942,0x002c4188,0x004652a9,0x0083f27d,0x00a79a8b,0x00c48698,0x00aeee3e,0x00bbcbf8,0x005f0501,0x0040be60,0x003c03d2,0x002e125d,
-0x0059edfe,0x00983b77,0x00adc3d8,0x0027a0e8,0xffd5fc43,0xffc95313,0xffdcf749,0xffc3cc75,0xfff7519e,0xffec47a2,0xffed88b2,0x001820af,0x00272460,0x0017a7d0,0x00377225,0x002b80fe,0x0002d4ae,0xfffe09b6,0xfff38d5e,0x0007fa99,0x00022f29,0xffe02c79,0x003494af,0x00736021,0x0071b1b0,
-0x0073cbd5,0x004046d3,0x00191b5b,0xffdd43df,0xffb06b72,0xffb94c56,0x001c5128,0xffe746ed,0x00391f19,0x010560b2,0x00d01fef,0x00ba9ed7,0x009d7dc8,0x003c7fcc,0x0010d101,0xff824d0b,0xff116d8a,0xff533649,0xff7627f0,0xff559dbb,0xff7ec192,0xff9b85a7,0xffaa8a6b,0xffdc3bf5,0xffd6b607,
-0xffe60154,0xffe6292b,0xffce9461,0xfffb61d6,0x000516aa,0x0009081e,0xfffb9167,0xffd41780,0x00151723,0x000a0be4,0xffefcbb7,0x0000cfa4,0xfffd6c26,0x000547ce,0x000eb2a1,0x0001a3cc,0xfff3c2e6,0xffea629a,0xffd26718,0xffbfea60,0xffb5ff09,0xfff6192e,0x00229c84,0x0050da63,0x000f2f2d,
-0xffe5cbd7,0xffa08eb5,0xff678599,0xff7eb83d,0xff57113e,0xff4c161d,0xff551676,0xff4e0cfc,0xff76ebf9,0xff8bbfe1,0xffa2c19f,0xff927887,0xffa5a6ff,0xffc767c4,0xfff70d58,0x000b77c3,0x001a7659,0x0016d387,0x001fabbd,0x00190c8d,0x0024d862,0x0025334f,0x0018fe6f,0x001e5fce,0x001e4d33,
-0x001c0880,0x00065736,0xfffba8c4,0xffeb4949,0xffff2e11,0x001aaad4,0x002ea601,0x0020614e,0xfffb015a,0xffe08e5f,0xffcab45b,0xffcc62e8,0xffa233fc,0xff6ffa41,0xff9984b6,0xff8e5caa,0xffa5db9d,0xffb3f32d,0xffcac821,0xffa9c7c4,0xffa6c9da,0xff823b14,0xffb8d2b7,0xffc29216,0xffde938b,
-0xffef5fef,0x000dc167,0x00285375,0x001f1e68,0x0008bd1d,0x00298568,0x003d1408,0x002592a9,0x00214b53,0x002a0b0f,0x00350333,0x004431b5,0x0027d179,0x000d2e79,0xffefc4c0,0xffe0a9d3,0xffcbb80a,0xffc117ff,0xffb56f20,0xffb3b94e,0xffb654e9,0xffb24450,0xffb05cc7,0xff979c76,0xff52c72a,
-0xff9e2333,0xff8330a6,0xff8b7693,0xffa3fe6d,0xffa662fc,0xffc09467,0xffc57fe5,0xffb3e9f1,0xffcd6a26,0xffdcbca7,0xffdbe077,0xffda5577,0xfff11b44,0x0005a912,0x001b3e0f,0x0003ef85,0x0046cb6b,0x003e5091,0x003dea92,0x003e7c39,0x003be8e8,0x0037b577,0x0036757a,0x0036bbc7,0x0039fc5f,
-0x003a0e04,0x0037fca2,0x0035a245,0x0031a64c,0x00199b9f,0xfffd09c3,0xffe20d96,0xffc4dbaf,0xfff2e5ab,0xfff89c18,0xffb43af3,0xff8be204,0xff8d14fa,0xffcfc220,0xff972999,0xff8caee6,0xff8bce91,0xff8dcfcf,0xff9b5338,0xff932c97,0xff90b802,0xff94c94f,0xffa96415,0xffe85562,0xffa2d3ad,
-0xffb9721a,0xffeaa8a2,0x0031a3d6,0x002026ee,0x002417e5,0x0023441b,0x002351f8,0x0023f582,0x0023eb3f,0x0022724e,0x001fc231,0x001da3dc,0x001b85ce,0x00190491,0x00195bc0,0x000f5190,0x0009a99f,0x0003fc80,0xfffd7f6f,0x0015f541,0xfff7bd94,0xfffb6dbd,0xffe5d101,0x00719bae,0x0096bebe,
-0x0051e12b,0x004c1c51,0x008ae456,0x0068d3b4,0x00739f6b,0x00723f52,0x0059f8fb,0x006cef21,0x0069f826,0x005bedd3,0x0085dd38,0x004d79c8,0x0045a729,0x0081744f,0x0067da48,0xffdf1f68,0xffff67e1,0xfffbc38f,0xfff82a56,0xfff0326c,0xffebab5a,0xffe761fe,0xffea8013,0xffed8b62,0xfff6fa6d,
-0xfff59c66,0xfff819ce,0xfffd3fbe,0xfff98689,0xfff791c6,0xfff2e11d,0xfff50a96,0xffeb3b56,0x001cfd73,0x0088de8a,0x001c1616,0x0048afd7,0x004c61f3,0x0030ec78,0x0021f359,0x00190b43,0x0037362f,0x005e08d9,0x004c33c5,0x00383c7b,0x004283ca,0x0031522a,0x001833bd,0x002760c0,0x00129740,
-0x0064cc29,0x00128b23,0xffffe4ba,0x001042d3,0xfff93e67,0xffdfb029,0xffcb8c6c,0xffc6a8a0,0xffce130d,0xffe09d8d,0xfffd1db3,0xfffbcaf6,0x0003087e,0x000bd4a2,0x00042776,0xfffb0b2f,0xffed1388,0xfff5cdcb,0xffea2a70,0x00506ea4,0x008e0c1d,0x005357e8,0x0042a19e,0x004b2494,0x004e25af,
-0x00231379,0x005ad945,0x0035e65f,0x006e6419,0x003f05f0,0x007102cb,0x00409146,0x003cd71f,0x000c5524,0xfffc918e,0x001822f1,0x004c4141,0x0026f4ae,0x0007d074,0x001f36e3,0x00014c77,0xffd7f3b9,0xffb91869,0xffaef45f,0xffb5afe8,0xffcb2855,0xfffa2f65,0xfff9fe4e,0x0009e613,0x00201dbf,
-0x0010a7a5,0xfffc551b,0xffdadbe3,0xfff2c1c0,0xffd5af5a,0x0059a67e,0x00699885,0x00343e93,0x00290568,0x0065d1bd,0x004a8a4b,0x00105fa2,0x003382a9,0x00435236,0x003ac560,0x008aa8b0,0x007bcc48,0x0037cf54,0x001b8369,0xffee8000,0x0001c007,0xffe3c677,0x003ab4a4,0x001b6778,0x0016f7b5,
-0x003ea0c2,0x000946e2,0xffbb4419,0xff7b46ea,0xff760a15,0xff9040c3,0xffd52921,0x001bc8ed,0x00171cb4,0x002d6155,0x0046c1e8,0x00224763,0xfff59e5b,0xffcdbf91,0xfff472b5,0xffe9d45e,0x00e3649a,0x0163faee,0x00e58bf1,0x001cec94,0xffdf5baa,0xffec9445,0x00332b2f,0x004e750a,0x0088db1d,
-0x00c0ca96,0x00334565,0x000a7b0a,0x004bb538,0x001f43fa,0x00208c32,0x0057606b,0x004eb02f,0x0097e6a4,0x00747215,0x000fbd65,0x00171c48,0xffe6eddf,0x003402e3,0x0025a9de,0xffe84692,0xff3cee3b,0xfeea97ce,0xfef1b572,0xff895fbc,0xfff80d47,0xffe695f9,0x008dd3b6,0x00795cfb,0xffb9129e,
-0xffe2cdcd,0xff8dff83,0xff3f3c88,0xfec71c54,0xff1ac26a,0x00dade10,0x006d7fe8,0x0034149a,0x004c64e2,0x0028206d,0x0023f079,0x004579ac,0x00759db8,0x006b1c5c,0x001e3e4e,0x0027b4dc,0x0022c40c,0x0032e587,0x00142f03,0x002e9eed,0x0031b71f,0x00068c62,0x004adf65,0x0079fa5f,0x00775038,
-0x00578f80,0x003f4ab5,0x001e4472,0x002b051c,0x006c34d2,0xfff84022,0xffd7aa9b,0xffd90590,0x00612246,0x00724b82,0x0005c245,0x0030f415,0x00da9ff4,0x00ed6214,0x00eae06d,0x00a45a0d,0x0079916e,0x00540df0,0x00592e41,0x000e947f,0x003311e4,0x002e2c34,0x00180eb2,0x0019aed1,0x001e5bcf,
-0x0036e8fb,0x001c3f4e,0xfff09525,0x001c3498,0xfffd386c,0x001b2f83,0xfff8b830,0xffb5a3b7,0xffe3b363,0xfff03eb1,0xfff585ad,0x00142f1e,0x003626a8,0x001182de,0xffd8433f,0xfff71146,0xff4f2249,0xff5887a4,0x00045b12,0x006031e1,0x00bf129b,0x00e03985,0x00c8a77c,0x003f8eb9,0xffdffdf4,
-0xffc5378f,0xffc75414,0xffdbf36c,0xfff3b522,0xffe8a118,0xffe88273,0x001293ce,0x00237d51,0x001f9ce7,0x00332649,0x00250bf5,0x00029cca,0xfff90e09,0xfffeb5ea,0x0009fbab,0xfff8dcd0,0x0028b7a6,0x0026d718,0x001adae3,0x00399c0f,0x0039cc81,0x003c3709,0x002e6ec9,0x0004b853,0xfffc6101,
-0x002be17f,0x00b0a74a,0x007a5bd6,0x009bf737,0x00c4f89b,0x010888a0,0x0107b5bc,0x00d494cc,0x00b494ef,0x0056aca7,0x0062c469,0x00155777,0xffcaa098,0xffb97f5d,0xffa976c1,0xffadcb25,0xffc6e456,0xffdaf277,0xffdb729f,0xffde0823,0xffd97b4c,0xffdc2705,0xffd2139d,0xfffb652f,0x00047574,
-0xfffe119c,0x00104017,0x0034fe60,0x0013e4e4,0x000583d4,0x0007a9ae,0xfff0dd55,0x000b83ac,0x001e8f40,0x00427a73,0x00448f88,0x00462e27,0x004316c6,0xfffc52d3,0xffd731ed,0xff9f0c0b,0x000d6371,0x0054989a,0x005950ef,0x0074c49a,0xffdd99b8,0x000d9696,0x000540dd,0xffddb3ef,0xff952e3e,
-0xff780db7,0xff4fa925,0xff578d76,0xff66986c,0xff7e39a8,0xff883915,0xff9737e5,0xffa37fc3,0xffb7168b,0xffe789e3,0x00120851,0x003727b3,0x00240b28,0x00142229,0x0010e8c4,0xfff68b37,0xfff2d2ba,0xffeb6a59,0x0013c2d3,0x00275896,0x00302b09,0x000aa7cd,0xffe5620d,0xffc502d4,0xffc9a756,
-0xffd46289,0xffd8dd7f,0xffc20e7d,0xffbebdc6,0xffd07d06,0xffe298e4,0xffa50bc8,0xffbdc90e,0xffe130df,0xffda2821,0xffed4a50,0xffdeba3d,0xffd2b9e1,0xffc813b9,0xffc17490,0xff98d32d,0xffa29975,0xff91c5d1,0xffc32184,0xffbeced6,0xfff2bef8,0x00087c32,0x003ba9fc,0x003668db,0x0047a171,
-0x002bc6ef,0x000649c0,0x000be78f,0xfff9c61a,0x00035b9a,0x0006baa6,0x001291e1,0xffffa71c,0xfff8095c,0xffef65f9,0xffd68855,0xffb883b7,0xff9ecf43,0xffa216d1,0xffa7d2f9,0xffa16794,0xffacc9ce,0xffa6d866,0xff9e5db0,0xffb1137f,0xff95ab46,0xffab59b6,0xffa9af97,0xffa14947,0xffa9fe24,
-0xffaa3d32,0xffc59a1c,0xffe9e506,0xffe3bfa4,0xffdf48de,0xfff11eb5,0x0003999b,0xfffc7e59,0x000a4028,0x0004fefd,0x00343bb4,0x000a1773,0x00070aa0,0x000cb56b,0x000abc8c,0x000c6154,0x000a1a3b,0x000a3f27,0xfffadc46,0xfff23f1a,0xffee7cc5,0xffeeb193,0xfff3c137,0xfff56d42,0xffe555ba,
-0xffd4cc89,0xffc5ebdd,0xffb9bcbc,0xffd11dcf,0xffc1d45e,0x00094558,0x001e2f9b,0xffff8920,0xfffcbfdc,0x0020bf75,0x00146ae1,0x001beae2,0x001eafff,0x0016d990,0x0023b79c,0x00295999,0x00287712,0x003f25d4,0x00193d8a,0x002eb7ec,0x00433568,0x00295110,0xffe27124,0xfff0fac2,0xffed81f2,
-0xffed3b30,0xffebfec7,0xffeb066e,0xffeb7409,0xffea9603,0xffe9de0b,0xffe774fe,0xffe54dda,0xffe26c2a,0xffe3d66c,0xffdeb684,0xffdc1a47,0xffd844e0,0xffd47abe,0xffe57d38,0xffd4499d,0xffdd2f9c,0xfff49789,0xff964c88,0xffa268c2,0x0012cc89,0xff9d1b35,0xffa2530f,0xfff0e585,0xfff9966f,
-0xfffe0907,0x000e9dd4,0x000be5c4,0x000de0ca,0x00183125,0xff9b898e,0xff8f23c7,0x0012143f,0xff9f09ab,0xff8ee21a,0xffe58146,0xffded865,0xffd8e064,0xffd4b1e4,0xffcbfa5e,0xffc5e3c4,0xffbdd0a5,0xffc4d6ac,0xffc8ef9a,0xffd26548,0xffcbab9a,0xffca68c0,0xffd06778,0xffc00001,0xffc061c7,
-0xffcfc095,0xffd13663,0xffe1aa5c,0xffd7f6df,0xffc9214f,0xffd4a099,0xffbf583e,0xffe7b8ec,0xffe901c4,0xffd42c43,0xffec3132,0xffdc66f7,0xffcc7303,0xffdb8398,0xffed5c18,0xffdfb4af,0xffd2d178,0xffc98fe5,0xffa5af61,0xffc67ee7,0xffcbb03c,0xffc63006,0xffe72e9a,0xffcc98da,0xffbeb270,
-0xffa71bd3,0xff9bc9af,0xff93548d,0xffa56926,0xffb3cae8,0xffc4437e,0xffb5d1fe,0xffac5304,0xffb2ef3b,0xff86c315,0xff8b83bd,0xffbc86bd,0xffbfdbe1,0xfffa2938,0x001b44ac,0xffd99671,0xffeb9522,0xffe01d64,0x0003af45,0x0010c8c3,0xffefb531,0x00126260,0x003816ac,0x0009beff,0x00423f69,
-0x002384b5,0x0017e9a2,0xffdd5b2d,0xffc6bb25,0xffbfb105,0xffcab6a6,0xffbf04c1,0xffd86da8,0xfffa0130,0xffd6483f,0xffb2e80d,0xff839b49,0xff65a50f,0xff46862e,0xff6bcd9f,0xff825cb3,0xffaaf18f,0xff90e84a,0xff8197a6,0xffa1b2b4,0xff3fb0dd,0xff51bb45,0xffb6b8d2,0xffb14ca3,0x0006c20a,
-0x001d9b31,0xffd90308,0xffed5efd,0xfffd2c11,0x0047aca3,0x00536452,0x001f7917,0x0043f60c,0x0044ee4c,0x005ce459,0x008f9ae2,0x007dfe8d,0x005450f4,0x001713d7,0xfff07847,0xffbbc327,0xffdbba0a,0xffd00fcb,0xffe33b05,0xffff6514,0xffbecb7e,0xff7948b9,0xff2aff93,0xfefcf6fc,0xfef879a0,
-0xff3b4a93,0xff830082,0xffb65cf6,0xff76fe8b,0xff55b785,0xff6fcbb7,0xfed89e38,0xfef7616c,0xffae4417,0xffb301ee,0xffe9cab7,0x003e1fa7,0x006dd18c,0x0066e8f2,0xffe5b435,0xff91d431,0xffaffc19,0x00096d79,0x00281ab4,0x006c0b8a,0x00cc64a2,0x00355a39,0x000502c9,0x0031d922,0x000b2598,
-0x001efc9d,0x002bb291,0x0038370d,0x0013a8e3,0xfff395e8,0x0011b78d,0x00292619,0x005b5b8b,0x0054b792,0x005134a6,0x003de4c9,0xffa61a31,0xff52a801,0xff2ed4de,0xffa162f9,0xffbd229a,0xff31014b,0xffdadb44,0xffe3148f,0xff636308,0xff8a321a,0xfffba74e,0xff45aa6a,0xfe1b3522,0xfec08106,
-0x00972d7c,0x004fafa4,0x00424b15,0x003afe8f,0x0029f8dd,0x001fec42,0x003a2d7d,0x00740325,0x006a54af,0x002a0953,0x0020bebc,0x00064901,0xfffeda3a,0x0007b604,0xfffd873a,0xfff29444,0xffc24952,0xffa7f884,0xffc0460d,0x000295f9,0x000cac48,0xfff19477,0xffee2902,0x00118520,0x00730461,
-0xffc6298b,0xff7aea9e,0xff6bb435,0xffbd5bd5,0xfff303d3,0x001bff84,0x00243ed8,0x00be0947,0x00f20380,0x00ef0a46,0x00ce7bad,0x005484a3,0x00469b9b,0x0037e941,0x00193b8f,0x002cd2cf,0x0034dc5a,0x0013c819,0x0017d9d3,0x001d1a64,0x003321c1,0x000daf84,0xffec38d1,0xfff59385,0xffe973e0,
-0xffbd072b,0xffc95870,0xffebfd34,0xffe66445,0xffee46e3,0xffe9ed7f,0xffe1745d,0xffca682a,0xffb8d875,0xffb2d50c,0xfff78d58,0xff7efd7b,0xff2330a0,0xfec44594,0xff006cf3,0xff534c42,0xff7ec25c,0x004f0333,0xff5ba4eb,0xff9c9ff1,0xff8cb32c,0xffa12c43,0xffde91dd,0xffed1a36,0xffeef608,
-0xfff34167,0x000c4cbc,0x001e0333,0x00163ba2,0x0028eb55,0x001b9ae0,0xfff0b1c8,0xffede098,0xffe41cb4,0xffeacb18,0xfff37b3c,0xffefcc40,0x00133b12,0x000b9d80,0xfff41007,0xffeb92bf,0xffe0d98d,0xffd5cceb,0xffb099d8,0xff8dfdca,0xffa6b7e4,0xffff9584,0xffee157f,0x0028278d,0x008f2040,
-0xfff2e7a4,0xff77cd76,0xfef066e8,0xff2e6055,0xff043c59,0xff546d5a,0xff9be8db,0xff8d0083,0xff8c6fcf,0xff9657a7,0xffb1e847,0xffb28b32,0xffb9aef6,0xffcdb216,0xffc0ff5f,0xffcc4a87,0xffd11338,0xffc6792b,0xffed97b1,0xfffa23bf,0x00090691,0xffec5203,0xffd7b43d,0xfff2a663,0x0008c932,
-0x0005e0ed,0xfffe6d9a,0xfff23eeb,0xffdb12ca,0xffbc738b,0xffad70bb,0xff8b7fd5,0xff4f21a5,0xff65b774,0xff476abb,0xfef96d18,0xff03f5dd,0xff12f9a4,0xff2b4af3,0xfefc42da,0xff91add4,0xff6e9f81,0xffa97813,0xff7f2f78,0xff49460c,0xff336cc7,0xff3ab5ea,0xff40a08b,0xff624f5a,0xff7e5508,
-0xff94bdb9,0xff9516ab,0xffa07562,0xffaf0966,0xffd26bb3,0xffe6a125,0x0007579a,0x000ccb23,0x0015afbd,0x00154ed4,0x0008610a,0xfff02680,0xffda1005,0xffccea12,0xffd3654c,0xffef7e73,0xffeb99ba,0xfff4f9de,0xfffdba8b,0xffee874a,0xffe0a70d,0xffc73e50,0xffd4d282,0xffc377df,0xffbf8a28,
-0xff9c47d9,0xffb5f19c,0xffac900d,0xff8b6c4f,0xff9ee3e0,0xffad9194,0xffabf39f,0xffa7a1bd,0xffa4abfd,0xff93c184,0xff892747,0xff6c7c74,0xff8a26c6,0xff9dc274,0xffa4fa54,0xffd28968,0xfff4be5c,0x00212f64,0x00120f6e,0xfffc7ba2,0x000532b8,0x000e117f,0x0005998c,0x0006b954,0x0006d07e,
-0x0005fa5e,0x000744d3,0xffe72dcf,0xffca3658,0xffb075da,0xff94cddb,0xff7ccb8b,0xff649f17,0xff72f8b8,0xff82ab8d,0xff95e711,0xff9dc978,0xffa1f1dd,0xff8eef68,0xff8d4bed,0xff914845,0xff813f5f,0xff89a5d8,0xff8bf659,0xff8b17a7,0xff98a9b1,0xff9677b9,0xff94b016,0xff9abf73,0xffaac695,
-0xffa806a5,0xffbb674d,0xffcc836f,0xffcc02d3,0xffe8baf0,0xfffa31b3,0x000f7b77,0x0014638a,0x000ea42c,0x000df855,0x000b8d67,0x00096667,0x0009cad2,0x00043e97,0xfffde1e1,0xfff3219e,0xffe8c6d7,0xffdd1f89,0xffcc1764,0xffc739aa,0xffba3ec4,0xffafc534,0xffa44a58,0xffc4ff32,0xffc61c7a,
-0xff986cd5,0xff9dede2,0xffdbdfc7,0xff9df60e,0xff9f4324,0xffce0b50,0xffd0c434,0xffd5a493,0xffe22792,0xffe251ab,0xffe5a62d,0xffed1aff,0xffa8ec10,0xffad513b,0xfff5d3ea,0xffbad19b,0xffbe88d2,0xfff27a78,0xffea78e4,0xffea8734,0xffeb23b0,0xffeaad96,0xffea9ce3,0xffeb2dd2,0xffe4c7e4,
-0xffdf921a,0xffdb0b3b,0xffd5d1c1,0xffd127f4,0xffcbefc8,0xffca5a3f,0xffc9599c,0xffc92d77,0xffc6717a,0xffce2f8e,0x003fb574,0x00356c4c,0x004f17a9,0x00650bf9,0x002b718c,0xff9fd098,0x006d1e28,0x00360bbc,0xffbfd2d0,0xffc59453,0xffc4dcf9,0xffb9faa3,0xffba84b1,0xffb603a1,0xffadb5e8,
-0x002b1ff8,0x005da102,0xff8de864,0x001f46ba,0x0057733a,0x004470ec,0x003e948a,0x004614ab,0x00410a9c,0x003b0ed4,0x00374c28,0x0032cd14,0x00381f7b,0x003b78d9,0x0041eb1d,0x0043be04,0x0046f768,0x004e1e34,0x00454e2b,0x003e8a5c,0x002f08a8,0x00379333,0x002e0df5,0x006c8ff2,0x000e9f25,
-0x004eca21,0x002dd4a3,0x0037ee35,0x004accfc,0x002a0ab5,0x004a5af0,0x005d6512,0x005a810f,0x00658ec2,0x0050042b,0x0057ed04,0x001c0cda,0x00129b3f,0x002c9561,0x002218b1,0xfff697c9,0x00575f5f,0x0056924a,0x00645a74,0x00543191,0x004133c7,0x0033074d,0x002c4eee,0x003aa7f6,0x004a9356,
-0x005b25da,0x005f73cc,0x00658a46,0x006f69f8,0x005b5ed3,0x0045452a,0x001ee584,0x002f380e,0x0033ce67,0x008dd52e,0x007b231f,0x005d8e9d,0x001ce7e9,0x00431753,0x00466119,0x001fa307,0x0049b82b,0x004a90b5,0x00568acf,0x0057ae10,0x0047db76,0x005265c9,0x001a2d19,0x000ca72b,0xfffd378c,
-0x00102a1f,0x002dc3e5,0x004d239a,0x007668ff,0x007d97a1,0x006a00c1,0x0047da64,0x002f5e80,0x0020e442,0x00379128,0x004ea602,0x006e9dce,0x007ca658,0x008b82bd,0x00a7a704,0x00787761,0x004ac03f,0x0008d41b,0x0024c063,0x00184c0a,0x007bc5b6,0x00551191,0x0046b94a,0x001a4f23,0x00759428,
-0x00631d65,0x00159a4f,0x00441365,0x0049aed0,0x0047d182,0x00815d72,0x008108f0,0x004deda4,0x001cd26d,0xfff77346,0xffde7a56,0xfff14c31,0x000c63ed,0x00430c1b,0x009476f3,0x00ad7097,0x008d6469,0x0050f48d,0x0026693e,0x001b5592,0x0048be3e,0x00825202,0x00a99615,0x00b11659,0x00be4abc,
-0x00dc8081,0x00897ffc,0x0039591f,0xffe2e549,0x00070354,0x00a2642a,0x010c9cfc,0x013de8ea,0x00ef3181,0x00193d1c,0xffaab03f,0xffbdcbbb,0x001cdd70,0x002a5a0f,0x006dd67a,0x00d4e2de,0x003b67cd,0x00034485,0x002fe101,0x001722b7,0x002fb463,0x0047e4a5,0x0071e1b3,0x007bb195,0x008b3807,
-0x00a093a4,0x007968d0,0x00567942,0x00693d9b,0x004776e4,0xffe42e02,0xffa9b334,0xff90160e,0xffa6f233,0x004b51eb,0x00b12a49,0x00883e65,0x01033c12,0x00d60429,0x0004a7b1,0x0053a7ba,0xffa9003b,0xff86271c,0xfebc39aa,0xff12e5ad,0x00dfdad9,0x008d73e8,0x0053cd9a,0x003df21d,0x002be2c9,
-0x002ba2d0,0x0033fdec,0x006e6db4,0x006d43f5,0x002c6778,0x002d0af0,0x0024d289,0x0039085e,0x0023b890,0x0012883c,0x00367e2a,0x005c3258,0x009b5944,0x00f279be,0x00d23022,0x009237ba,0x004a357b,0x00163b9e,0x002a006b,0x008fdc6e,0xffec020b,0xffc7b7e0,0xffdfd502,0x00739d75,0x0092965f,
-0x00423e32,0x002a1452,0x00f8eb7c,0x01308156,0x010c0362,0x00d0cf30,0x0060622a,0x0040b9c4,0x004c76ec,0x003ea7e1,0x004524d3,0x0039fcda,0x001be3de,0x001dc34e,0x001d7874,0x002d7765,0x0025bd05,0x0013526f,0x00170319,0x001a40ba,0x001e7678,0x000f1746,0xfff9b53c,0xfff94346,0xfffb54b7,
-0x0081f0f4,0x00ee0902,0x012548e6,0x0108b5bc,0x00a8e7af,0x00534c1f,0x00043fa6,0x0051f802,0x00e9db7f,0x01bf9622,0x01ecc9c4,0x018968dc,0x01040278,0x007359ff,0xffa89dc8,0xff8b7dc6,0xffcb9f65,0xffebe33c,0x00115d7a,0xfff596c9,0x00046513,0x000a3bc0,0x00160349,0x001b4134,0x002575a4,
-0x00157023,0xfffd7114,0xfff938bc,0xfff456f9,0xffff3714,0x0009574b,0x00119884,0x00277b99,0x0049b852,0x007c7f88,0x00961178,0x009c93dc,0x0076f63a,0x002fb626,0x003965f2,0x0069073a,0x00b9602f,0x00b75f55,0x00dd68c5,0x00ec33ac,0x019128fc,0x01cfe606,0x01ece976,0x0121bf64,0x01282d62,
-0x00aabf5c,0xffd20db0,0xffe58d4d,0xffe45dd9,0xffd2621e,0xffe15d34,0xfff0abee,0xffe8e0dc,0xffef9f86,0xffdd82b4,0xffd1b9bc,0xffd36f13,0xffdc7684,0xffeee966,0xfffaed99,0x0011c6a3,0x00194213,0x001cb2cd,0x00295b46,0x0026d557,0x001a5300,0x00119027,0x001d6de5,0x003d116d,0x00777444,
-0x00853fdf,0x008f8119,0x009a963f,0x0078c86d,0x007a746e,0x0074c3af,0x00c98fe1,0x00f3add0,0x010b167c,0x0114662e,0x004b0134,0x00321bb0,0xffbfb854,0xffc81e69,0xff6b45a8,0xff65440f,0xff56d027,0xff5d98e5,0xff77ce71,0xff896af2,0xff97f9f1,0xffa771b9,0xffb3498b,0xffb6be99,0xffdceba7,
-0x00020d95,0x00310770,0x001e664a,0x0018cfff,0x000d097c,0x001bc05e,0x0026e755,0x00201ce7,0x0038f1bb,0x00450cf8,0x005e3ea0,0x00412618,0x0019a245,0xffef29ee,0xfff1bf22,0x001b36ec,0x007ab1db,0x005032f3,0x0046a50e,0x0051e84a,0x004a8962,0x0007e310,0x00029bc5,0xfffbc3e6,0x00032640,
-0xfff8e8dd,0xffe4dc04,0xffc73939,0xffb1a0e3,0xff9e9b35,0xff912747,0xff86cdc5,0xff8eac91,0xff92f01c,0xff9c11d4,0xffcd75f7,0xfff8acaa,0x0028d1fd,0x00277611,0x00341ae6,0x003c4679,0x00285d8e,0x001be818,0x000bacf7,0x0008145b,0x0001e92e,0xfffd134a,0x000859ee,0x001acbb9,0x002bf9c6,
-0x0024584c,0x0010ead2,0x000480f0,0x00000add,0x0004f4f9,0x0001bd9a,0x0002dc65,0xffe20301,0xffe13305,0xff972891,0xffc4bbdd,0xffb7284c,0xffb291d1,0xffc31f84,0xffbfaf87,0xffd4811b,0xffe62aba,0xffed071e,0xfffaae63,0xfff8d68c,0xfffdf192,0xfff67d5b,0xffeed4cb,0x0006daed,0xfffd0824,
-0x0000ed20,0xfff895cd,0xffeaff57,0xfff3e7d7,0xfff34a15,0xfff4922f,0xfff4c09c,0xfff24495,0xfff71a0f,0xfffb6e3e,0x00052409,0x001171ae,0x00239b24,0x00324780,0x0023f413,0x001278ae,0x0001eb4b,0xfff4aebd,0xfff589c0,0xfff7b99d,0x00085d05,0xffed657e,0xffa53eed,0x0011c966,0xfff3607a,
-0xffb58ecb,0xffb42e9c,0xffb2b152,0xffafc33b,0xffaf2d7b,0xffaea406,0xffad3fbe,0x0003efb4,0x001ada24,0xffbd4435,0x00069d32,0x001ad0f9,0xfff96ed5,0xfffe0daa,0xfffdd8a7,0xfffc347a,0xfffbb987,0xfffb35f9,0xfffa6855,0xfffeb54f,0x0001e3b7,0x000413f4,0x0006b56b,0x0008369b,0x000fc90b,
-0x00073dc6,0x00048759,0x0000dc3a,0xfffdd976,0x0001fde8,0xff9beff2,0xffad24a4,0xff978e05,0xffc2108d,0x0016a038,0x008aabe7,0xff9f4425,0x000413db,0x00714992,0x00813ce1,0x0083b705,0x00802f26,0x008b43e2,0x008cb1c8,0x00927469,0xffffdbc2,0xffa09b7c,0x008fde31,0x0007d4c6,0xffbc74ef,
-0xff913829,0xffac8c7d,0xff9e72d0,0xff97c36a,0xff9115db,0xff8d8ed9,0xff8ad743,0xff92f7ad,0xff95525b,0xff9787fb,0xff9256ed,0xff90fea2,0xff964957,0xff8ab9eb,0xff8e5afd,0xffa481fc,0xff9daf5b,0xffa4f2c4,0xff9d6dc8,0x003fbfc5,0xffafde82,0xffd3b3e1,0xfffd50a5,0xffdd28b0,0xffd1beec,
-0xffca42d5,0xffca994c,0xffe41246,0xffca093f,0xffd43fd0,0xffdc4c74,0xffe3e237,0xffcd19fa,0xffb1fb8a,0xffba7e8e,0x00298c6a,0xff9aa62c,0xffa04300,0xff8d8463,0xff709bfc,0xff5d42bd,0xff56ceb2,0xff5b2795,0xff75d5b3,0xff82f143,0xff818bfa,0xff742bcb,0xff6bf939,0xff76c69e,0xff5b3011,
-0xff679aaa,0xffa012dd,0xff96569d,0xffa8248b,0xffde7e97,0xffff96ef,0xffec6695,0xfff04f5f,0x000c5bce,0x0017ae4e,0xffe81490,0x0029becf,0x0022f94a,0x0021fc75,0x000832a3,0x0027fc90,0x000999b4,0xffef6f69,0xffbffa0a,0xffc48fb6,0xffcaf870,0xffdfda47,0xffc58d0a,0xffa0c996,0xff8e6638,
-0xff538d2c,0xff2e4290,0xff1b871c,0xff1b31f3,0xff480b02,0xff588271,0xff5b0fbd,0xff460588,0xff361eca,0xff553823,0xff18e92c,0xff35a532,0xffa49b77,0xff8b9b82,0xffaca790,0xfff1cc06,0xffff0a64,0xffd422ad,0xffdb8ba8,0x0043f6b9,0x0051d177,0x0017b26a,0x003de390,0x0045b112,0x004902f5,
-0x00814a7b,0x006a1f97,0x0043df6e,0xfffac917,0xffc3b004,0xffcb0c5f,0xffb5269b,0xffeeb0a8,0xffce817a,0xff9ee80e,0xff70d912,0xff03b5d6,0xfec2ce34,0xfeaa77c0,0xfeccd4d6,0xff292eea,0xff65300e,0xff5d48d3,0xff259eae,0xff0ceb21,0xff30b3f9,0xfedf59c2,0xff12cd45,0xffbccb6d,0xffa95671,
-0xff5803d0,0x002e86bb,0x00d77378,0x00b58b25,0x0033a0ce,0xff9b1e3e,0xff83cfb5,0xfff348aa,0x0008a971,0x004b7dec,0x00ca77b1,0x0031f72e,0xfff97825,0x001f09a1,0x0008167d,0x00106c31,0x0025b5d0,0x000ecb6a,0x00333510,0xfffac2c6,0xffa127c5,0xffcd17a7,0xffca9549,0x00081be0,0xfff25568,
-0xffac1f9f,0xff26f970,0xfeda0172,0xfec16b76,0xff334345,0xff45cbb3,0xfec80be8,0xff53ac22,0xff4da5fe,0xfeda4a8a,0xff1e418f,0xff4c5a36,0xff0d8c0a,0xfe54e650,0xfebb4854,0x0042a36f,0x005f915d,0x00532edc,0x0032deea,0x00201ca9,0x001e1963,0x0024541c,0x006399ef,0x006544f9,0x0029a3d0,
-0x000b488e,0xfff59386,0x000ed1bc,0x0016cfa2,0x002a0bd6,0xffe3e3ff,0xff8597f9,0xff766636,0xff4b0c5f,0xffb091ca,0xffd74aa2,0xffe35150,0xfff204d0,0x001606d0,0x006a0848,0xff9a73f4,0xff69a292,0xffa53278,0xffe2176a,0x00172007,0x0052533e,0xffdf1730,0x00aae5bf,0x010194b8,0x012bd396,
-0x00dd468c,0x0059287c,0x001b0db4,0x00362ec8,0x004359c7,0x003d6d5d,0x00308cd4,0x00104c49,0x000b2790,0x000d8055,0x00221d30,0x00172afb,0xfff2c9ce,0x00016e88,0xffd9865e,0xffc6654d,0xffb55376,0xffbe9f9e,0xffdda8a4,0xffd4010b,0xffc105b7,0xff91f063,0xff65c14d,0xff3e5ef2,0xff2a9e31,
-0xff4980a3,0xfeeefd8e,0xfe9cc01e,0xfe3542f6,0xff00537c,0xff5b55e3,0xff1da628,0x0028ee7d,0xff14b791,0xff9445a7,0xff6f0097,0xff7f4bf3,0xfff99fab,0xffe353a1,0xffeab0a3,0xfff4b02f,0xfffa1558,0x0008fee4,0x000da9a4,0x000de4e9,0x0003718c,0xffec0616,0xffe4391b,0xffdd268e,0xffd8b408,
-0xffeb8228,0x000e675a,0xfff858d5,0xffc3448a,0xffb59207,0xffae15ff,0xffc0ed51,0xffc97ab2,0xffcea5f5,0xffc32809,0xffe9e89d,0x0023ef41,0x0045d353,0x0050517c,0x00075873,0xff8ce445,0xff0c2bba,0xfe861dd8,0xfef6d5f8,0xfee50676,0xffc948dc,0x004aa0bb,0xffef8caf,0xffd94fed,0xffe84a93,
-0xffea487c,0xffdd3c86,0xffe1498c,0xffd75fdc,0xffcc9300,0xffc2375e,0xffc56f09,0xffcf9318,0xffdfad3e,0xfff019cb,0x00099293,0xffeedfd1,0xfffc7471,0xffe826c4,0x0007b394,0x001c40d2,0x0004b2ef,0xfffbcebf,0xffdd222c,0xffb05636,0xffa5df5e,0xff8391d3,0xff397c6e,0xff582062,0xff49d8dc,
-0xff0a15da,0xfeedbe08,0xfee1ca82,0xfee5371e,0xfeda9d2c,0xff76c85b,0xff852c3e,0xffe075c5,0xff8d5d3e,0xff5f5bae,0xff3a592c,0xff36e432,0xff5336f3,0xff5fc338,0xff79eb1f,0xff8aaa5b,0xff9fac4f,0xffa6be76,0xffaa5012,0xffbea163,0xffd3780f,0xfff708ec,0x000ff7ed,0x001833a2,0x00167484,
-0xfff70e25,0xffd7fef3,0xffc8f539,0xffb89b50,0xffc1cd39,0xffe816d3,0xffe70869,0xfff1b45b,0x00010d37,0xffe1c1ac,0xffb56f5b,0xff7a1845,0xff97d3cb,0xff9ded24,0xff9d5341,0xff98f1df,0xffab0bdc,0xffc4522f,0xffcb1b46,0xffbfa6da,0xffdef255,0xffc2e537,0xffab20f7,0xff8cdf96,0xff90a6e6,
-0xff7e58d8,0xff79f151,0xff7528fa,0xff928bb6,0xff8b06e8,0xffc25a11,0xffe10502,0x0011ecc0,0x000716f3,0x0004b573,0xfff497fe,0xffe90b8a,0xfff1ab76,0xfff1d9e8,0xffedf9b3,0xffe5b770,0xffe05ddf,0xffc89b90,0xffb4daf4,0xffa484a9,0xff8a3009,0xff7af3ff,0xff638760,0xff7afb10,0xff8c03bc,
-0xff9b1cb0,0xffa74bf9,0xffa7b434,0xffa28c38,0xffe0d454,0xffa38909,0xffac00fc,0xffb0fbf7,0xffa23c9f,0xffa32f9a,0xff9f18fd,0xff9d8c63,0xffaf3f05,0xffa19ddb,0xffa6d7ad,0xffa763d0,0xffc13953,0xffc1f4bd,0xffb2888d,0xffc3af7b,0xffee9807,0xffd89fc3,0xffe6e4cb,0xffe2af1d,0xffe38bf3,
-0xffe5268b,0xffe7707b,0xffeb61f7,0xffdd883d,0xffcec817,0xffbe36b3,0xffb00c97,0xff9f49ee,0xff898aeb,0xff90f985,0xff939bea,0xff992174,0xff9ee8dc,0xffaa0006,0xffa22dea,0xffb1af77,0xffdc684d,0x0020c75b,0xffa12094,0xffd681db,0x0014d975,0x001955c6,0x001ddab5,0x00206e4d,0x00288e0f,
-0x002ee73f,0x0033d809,0xffd7e3ec,0xffa6b5d0,0x00346d7c,0xffe31b65,0xffbd4048,0xffb9f820,0xffbfbd7e,0xffbd6496,0xffbf7717,0xffbf69d6,0xffbf6de2,0xffc20c23,0xffb8c7f3,0xffb2c475,0xffaca356,0xffa5b45a,0xffa04484,0xff982edc,0xff9e0db4,0xffa0975a,0xffa37411,0xffa454c3,0xff9ab1eb,
-0x0045d18f,0x0038bed6,0x006ead29,0x000b48c1,0xffada606,0xff522189,0x003193f0,0xffc30e3a,0xff608062,0xff63e5eb,0xff65ba4f,0xff6eef5e,0xff5f6398,0xff5c61bf,0xff61446c,0xffb6ab9b,0x00185b83,0xff45b2b3,0xffabdca9,0xfffe7f01,0x0062b4f4,0x00413951,0x004b056c,0x0046757a,0x00421192,
-0x003f74ca,0x003b3595,0x00432152,0x00466d82,0x00499e18,0x004a1ef6,0x004bc5cb,0x00531885,0x00453631,0x003df1c3,0x003274c5,0x003c3ab3,0x003b8583,0x0061ddd5,0xff9e4e98,0x003d7bc9,0xffea2318,0x00062abd,0x00339d22,0x000efecb,0x00467b54,0x0043ddb3,0x00217525,0x003b4c42,0x0033b979,
-0x0036a18c,0xffefe3fe,0xfff238c1,0xfffbca2b,0x00092bbb,0xff9b0f9e,0x004c3a08,0x005ec721,0x005ae0d7,0x0054aa15,0x0047a996,0x0042d902,0x003da82f,0x005558d0,0x00613aae,0x0062b7db,0x0061c1ca,0x005ef4b8,0x0066d838,0x0045db66,0x0032b313,0x001b2aa1,0x002ab524,0x0047ff03,0x007a4e16,
-0x002846fb,0x0033f2a7,0xffe078c8,0x001e72c1,0x0025c409,0x00082a64,0x0026e4a5,0x004f6f52,0x0028217d,0x00532c2a,0x0010c38c,0x0047becd,0xffe75239,0xfff121c3,0xffe6db37,0xfff00306,0xffecb355,0x003746b7,0x00839fd2,0x006ea31e,0x00643aa9,0x00472ac5,0x003a0a10,0x0029c7a3,0x0055a983,
-0x006b6046,0x0078839a,0x007d7758,0x007d85e6,0x009a9deb,0x004bf0ae,0x0025eb08,0x00083b0d,0x0018008a,0x0035a281,0x005d62ab,0x000ebbed,0x00234afb,0xffed0809,0x005f8c98,0x006b680f,0x001db1d8,0x00535cc6,0x00508ea7,0x00563389,0x006d8162,0x00711358,0x005c3ed9,0x001080ab,0xfff67bdb,
-0xffc08a79,0xfff58c4f,0xffd369a1,0x003786a3,0x009c43dc,0x0086721a,0x0073bca2,0x00463935,0x00373409,0x00323ae2,0x0080d542,0x00b2a541,0x00b41bdf,0x00a33d55,0x0090f230,0x00a83105,0x00321d77,0xfffab25f,0xffde116b,0xfff04578,0x00cbca0c,0x00be9b90,0x00c8bd73,0x00c2d4bc,0x001235a8,
-0xff7eaf29,0xff863943,0xffed96ae,0x00081938,0x004bf7a4,0x00c08198,0x003981df,0x0001431a,0x0012f3cf,0x000f9339,0x003313b0,0x002140d1,0x0061cee4,0x00342430,0x005f56ed,0x00c050f3,0x0090ec89,0x009bb3f2,0x0079a09a,0x00554d27,0xfffd5a82,0xfff8bbf3,0xfff6cd39,0x00108b22,0x009ad3bf,
-0x00d98676,0x00920ea2,0x00d04cb0,0x0099a890,0xfffd7e40,0x00481060,0xffcf4718,0xff8308a7,0xfea1a39c,0xff065b9e,0x006b63f7,0x0088b677,0x0079ce0b,0x00419e4f,0x0027b9f8,0x00236f00,0x00234ad7,0x005d39a3,0x0063e24b,0x003c368d,0x002d4291,0x001b4850,0x0026ba80,0x0028d880,0xfff8a7b5,
-0x001a6ad2,0x00600d93,0x00731dc1,0x00bdf5b5,0x00af4f46,0x007a8f39,0x00311fd7,0xfffc6374,0x001b8f43,0x009af836,0xffdd9894,0xffaaea1d,0xffcc3f63,0x00294125,0x0062ae49,0x007dcd19,0x001f93b4,0x00d9f733,0x0124775a,0x00fb23d3,0x00d4fc0c,0x002c7cc7,0x000cee11,0x0020aaaa,0x0061dbb2,
-0x004e2117,0x00422268,0x00180e60,0x001a10ab,0x00170331,0x001c477b,0x0025d368,0x002590f7,0x00026b2e,0x0015f469,0xfff5edb6,0x00089372,0x002a475f,0x0005c83e,0x00092a93,0x00a34dd8,0x01118cca,0x0144bbbe,0x013bdf42,0x00e2518a,0x0053981b,0x006b30a5,0x00b55721,0x00c7c7ab,0x01bd14a6,
-0x01b15494,0x00f1d2a4,0x00bc6994,0x001d5682,0xff835de3,0xff69007f,0xffb9ca6f,0xfff3e476,0x00126346,0xfffb4679,0x000d8c71,0xfffb8229,0x000211a0,0x000ab492,0x0009d5c1,0xfffdbb9a,0xfff6f528,0xfff044df,0xffe00be9,0xffe9c480,0x00099272,0xfff1b665,0x00118e22,0x0049f01d,0x006f5c32,
-0x008aa44a,0x00899314,0x0063ce6d,0x003aa276,0x0037e6c0,0x0059e7f2,0x0075e9d4,0x009eb134,0x00b76a41,0x009bb59c,0x01052896,0x0139de78,0x016ee600,0x00978d2a,0x00fd6a82,0x0071cc01,0xffb01567,0xfff66ec8,0x0009abfb,0xfff3d2b6,0x0003f2e2,0x0003f9ac,0xffecd95a,0xfffc27f0,0xffe79754,
-0xffd2fa21,0xffcf2316,0xffe09a82,0xffe162e6,0xfff196b8,0x001906a0,0x000d3051,0xfff2ab6f,0x002218d2,0x002e0b39,0x001e7eee,0x0027240d,0x001cf774,0x002adcc5,0x0046e309,0x0051e22e,0x005135f1,0x004df509,0x005f5cb9,0x0081d911,0x00b6d5e4,0x00bd9292,0x00b6e048,0x00d7dcce,0x00ca6d9e,
-0x0040ffe6,0xfff8b935,0xff726afd,0xff8533bc,0xff426a5c,0xff46603d,0xff5a4664,0xff6cca0b,0xff870adb,0xff9395aa,0xffa72e36,0xffb30099,0xffc03c13,0xffc001a0,0xffd29374,0xffe42bd6,0x00058a31,0x0013df10,0x00228f81,0x001298ee,0x00318c43,0x003cedf7,0x003ab95d,0x002e8837,0x003260c9,
-0x004b600a,0x0041c342,0x0030ae7d,0x0011d003,0x0017f404,0x0038d21a,0x008d759e,0x007572b1,0x00653356,0x005219f4,0x003e8a12,0x00315716,0x00135886,0xffe7ac25,0xfff881f6,0xffe09510,0xffd0a6ac,0xffb153ac,0xff99df8a,0xff831efe,0xff8e98f0,0xff725b32,0xff959c94,0xff7f7e95,0xff960c4d,
-0xffb6fd5c,0xffe81afb,0x00087140,0x00096d1e,0x0007ea85,0x002ed901,0x00370ecd,0x00209bbd,0x001b2a7b,0x0012f1b5,0x000a3368,0xfffd7f35,0x000df030,0x001f4ce5,0x002f0d2a,0x0031b614,0x002d1f0d,0x002d1902,0x0027f42d,0x002adfb3,0x002f6fb7,0x0024d72c,0xfff390e5,0xfff1a140,0xff940b1d,
-0xffdf0193,0xffbf59b6,0xffbe94ef,0xffdc1f96,0xffd61b7a,0xfff071e1,0xfff10983,0xffdd4b90,0xfff30339,0xfff66eb1,0xffee0c59,0xffdb1e2b,0xffdc3191,0xffefa4c9,0xfff17262,0xffd397d7,0xfffae187,0xffee3c66,0xfff3e156,0xfff543dc,0xfff55601,0xfff734a7,0xfff5d905,0x000178c0,0x0008a403,
-0x001236f7,0x001b4d1b,0x00266964,0x002fcd16,0x0025832c,0x0017550f,0x000a1172,0xfffe3376,0xfffcad9c,0x000918ed,0xffdcb153,0xffadf07b,0xff7d5477,0xfff472c6,0xffb4be26,0xff7fa1ef,0xff7871d0,0xff751e8b,0xff79cf6c,0xff6ebcfa,0xff69fb0b,0xff6995f1,0xffb32573,0xffeffa1a,0xff7aa98b,
-0xffb96f27,0xffe80e29,0x000723f8,0xfffdedde,0x00010f37,0xffffbae5,0x00005593,0x0000c61f,0x00007c84,0x00037a0a,0x0005bdab,0x0007d90f,0x000a59e0,0x000c62d4,0x0011fb09,0x000b3e1d,0x00092abb,0x0006aba2,0x0004c247,0xfffe44fe,0xffb67bfa,0xffc1daee,0xff9e3b95,0x001cc740,0x006a9970,
-0x007d2dbf,0xffef4145,0x0056ac04,0x008167be,0x00915762,0x009174ed,0x007f1661,0x008c5755,0x008b34e1,0x008ab416,0x0052cb4b,0xfff53423,0x007f1fb8,0x0055ec60,0x00160ed7,0xff9f0335,0xffc208a0,0xffb711d2,0xffb12b41,0xffacb7d2,0xffac0134,0xffad8e61,0xffb5bf19,0xffb70304,0xffb45288,
-0xffb27479,0xffb25ad6,0xffb6bc25,0xffb110b7,0xffb2cb27,0xffbddf9a,0xffb7be5c,0xffb1990a,0xffc09899,0x0078ba6e,0xffd32d59,0xffff88b8,0x001dca5c,0xfffd3c7d,0xfff52076,0xffe580c3,0xfff6ccc7,0x00226303,0xfff60ba9,0xffeee9db,0x0008c693,0x00046c92,0xffead7aa,0xffe8815b,0xffdb7df1,
-0x0053933c,0xffc6fbcc,0xffb2588a,0xffb1304b,0xff95378c,0xff861c1b,0xff833658,0xff8ebedd,0xffacc9b2,0xffb8d56b,0xffad696c,0xffa5847a,0xffa18aef,0xffacb8ef,0xffa3c98e,0xffa97735,0xffbf964a,0xffb78170,0xffa4e59f,0xffe9b641,0x00427deb,0x0015acb2,0x0002b09d,0x00200268,0x0027553a,
-0xfff957a0,0x0043279c,0x0022eb97,0x0047b7ff,0xfff77a73,0x002c776d,0x001cfbb1,0x0009ace4,0xffda035e,0xffdc9353,0xffe6a9eb,0x001291f5,0xffec2d7b,0xffac72dd,0xffaf8a4e,0xff7fce34,0xff64d80e,0xff5efc70,0xff72ea93,0xffa00af6,0xffadca12,0xff98c4e0,0xff91d6aa,0xff8aae8b,0xffa12ff3,
-0xff8cdba9,0xff946b57,0xffbe1111,0xffaf736e,0xff98851c,0xfff70aeb,0x00348470,0xffe72e03,0xffc9b0ee,0x0042a01f,0x00532c04,0x0015fef4,0x0041258d,0x004d9210,0x003c91a2,0x00642ce3,0x0052662f,0x003b6462,0xffec70b3,0xffb8800c,0xffe1aee6,0xffb8cbb1,0x000ffe45,0xfff03322,0xffad013d,
-0xffa57d43,0xff4d814c,0xff1caa0b,0xff16ab80,0xff466eaf,0xffaadef5,0xffd98901,0xffaae668,0xff8d24a6,0xff80fe3c,0xff9e5b3a,0xff8f655f,0xffa45e18,0xffd49feb,0xffc99873,0xff6e27b0,0x005a660a,0x0130f15c,0x00fab7d5,0x006a009b,0xffb17b2f,0xff73c300,0xffdc54cf,0xfffc1965,0x003702b8,
-0x00a6a876,0x00301422,0xfffb7eee,0x000e07d6,0x000ffc58,0x0014da4b,0x001ffe77,0x000a09d2,0x00560325,0x003133c3,0xffabda42,0xffc74f24,0xff9d8bf4,0xfff16599,0xffcbb57b,0xff642153,0xff0b1764,0xfedccf44,0xfef172d0,0xff641f29,0xff8c787e,0xff5a5356,0xff96ade8,0xff6be7e9,0xff0341de,
-0xff4cec1a,0xff02e6d3,0xff10d808,0xfec638c4,0xfee92a24,0xffed61be,0x0074fb45,0x0075bd19,0x004300fc,0x001664ce,0x00142191,0x00140b9a,0x004bf313,0x0057ef17,0x002f0900,0x000bf30a,0xfffd66fc,0x0025899e,0x0023c9c0,0x003a881d,0xfffb00ad,0xffb79653,0xffc6bac1,0xff945f78,0xffd288ef,
-0xffea019d,0x0006a529,0x00047935,0x00229271,0x006c397b,0xffa3ffa0,0xff8b0d18,0xfff6effb,0x00240624,0x00590782,0x009406cc,0xffd3cc0d,0x009487af,0x0101f920,0x011b66f6,0x00bdbf54,0x0042415a,0xffe27e2b,0x001aea12,0x00605b5c,0x004e5d2c,0x003354d9,0x000c9f38,0x00061c59,0x00042598,
-0x000f9290,0x002528ad,0x000bc4ad,0x000ef403,0xffe5c8d9,0xfff06b3a,0xffd4b0fe,0xffb94f46,0xffe2390a,0xffd84855,0xffea0c21,0xffdb9c68,0xffd280e3,0xffa3f265,0xff6b6877,0xff392a21,0xff20cf5a,0xff2588eb,0xff2295d0,0x0002cc1f,0x00232116,0xff8acab0,0x0025db56,0xff67bb32,0xff93cea2,
-0xff76a619,0xff8b7dec,0x00009241,0xffef71ae,0xfff307fe,0xfff9d0f0,0xfff087e0,0xfff76e69,0x00039d04,0xfff58e0f,0xffee443a,0xfff25d31,0xffe0507a,0xffdac1ad,0xffd7a605,0xffeb86d1,0x001a2292,0xffe67474,0xffbe6af2,0xffcfadfb,0xffd2a8af,0xfff2f8c2,0xfffd3e99,0x001c2f57,0x00277152,
-0x0054de8b,0x0074aaca,0x00ac9a2f,0x008a4208,0xffd2091a,0xffd0d28f,0xffa8d1e4,0xff771cff,0xff9cf114,0xffd5bed9,0x00773f09,0x00a3d20d,0x0041c70e,0x0028c514,0x0029d795,0x0016d857,0x000b4c00,0x0006a1a8,0xfff03ab4,0xfff13cbc,0xffce5c3d,0xffc8b19b,0xffdab023,0xffdc7f1b,0xffee8f26,
-0x000472ac,0x0001eb97,0x0024f0ce,0xfffa7f85,0x000fa524,0x00269557,0x000f80a7,0x00100fc1,0xffff8cc2,0xffebe051,0xffe8cbad,0xffd62231,0xffb0a783,0xffc0d81d,0xffd01fef,0xffd91515,0xffbeca04,0xffafa0a7,0xffa8bb7a,0xffcedd3f,0xff9fcb91,0xffcad5d0,0xffe7fcd3,0xff9c1de0,0xff73a94f,
-0xff553af6,0xff4c95ab,0xff78b17b,0xff743436,0xff854504,0xff90d086,0xffb09f5c,0xffb9a846,0xffba0e18,0xffbf285a,0xffd173bf,0xffef2333,0x00146b57,0x001c1d5d,0x00169038,0xfffb1567,0xffec8290,0xffee34d8,0xffe294f6,0xffee8de3,0x0005ce95,0x00038241,0x00025b49,0xfffc95a0,0xffe9042c,
-0xffc60086,0xff9e207b,0xffa961a1,0xffb4f5ed,0xffaf2f8d,0xffc1f219,0xffcd7973,0xffee9b47,0x0007401b,0xffe8cd05,0xfffb90b6,0xffd7b0a9,0xffb6282a,0xff8d95c2,0xff98d7b6,0xff86beb9,0xff9176cb,0xff7e45a9,0xff98cfec,0xff933ed7,0xffc21e53,0xffdbd79c,0x00021d05,0x000562fc,0x00190c8e,
-0x000a793e,0xfff27414,0xfffe950d,0xfffaf27c,0xfff68f59,0xffec1d8c,0xffe2b2de,0xffde6e3c,0xffde2a18,0xffdf7dc1,0xffd16799,0xffcaf9a1,0xffbd2bff,0xffcc49fb,0xffd47af8,0xffd76b58,0xffdc7516,0xffc23297,0xffc5c011,0x00001bcc,0xffc43ba5,0xffd9989a,0xffd97753,0xffcbd97c,0xffd19837,
-0xffc65b92,0xffcc3651,0xffe4e0af,0xffd36ea6,0xffcce35d,0xffd09d18,0xffe02ce1,0xffd48e63,0xffcc0550,0xffcccc5d,0xfff3b9e6,0xffcff494,0xffd7ec3f,0xffd90b84,0xffd95a30,0xffdcac9d,0xffe066de,0xffe4b52f,0xffd680a5,0xffc8d4dc,0xffbe3e3c,0xffb654b2,0xffae091f,0xffa37eea,0xffa87e10,
-0xffada95c,0xffb48e6f,0xffbd4836,0xffbde150,0xffb3e7b7,0xffe7f7e9,0x000e465c,0x001e1937,0xffd49122,0x0008e4c9,0x002113c5,0x00243c3c,0x00253e79,0x001e1566,0x00271c33,0x002bc96e,0x002af69f,0x00091093,0xffd59a14,0x002ac7a7,0x000bfd2f,0xffe3faad,0xffb72c24,0xffc340f7,0xffc07561,
-0xffc1e24a,0xffc1d275,0xffc174b1,0xffc3ab7e,0xffbe850c,0xffbc03bc,0xffb82e0c,0xffb44731,0xffb140e5,0xffad11cd,0xffb266f6,0xffb4e35e,0xffb6d414,0xffb89d54,0xffaba5f5,0x000adfdc,0x0006ff59,0x0030a7d0,0xffb4616a,0xff832d00,0xff95bea5,0xffd314d0,0xff8fddbf,0xff8b3825,0xff90348e,
-0xff941656,0xffa753a3,0xff94a724,0xff946f5b,0xffa3e7dc,0xff86f829,0xffbe670c,0xff9436eb,0xff83a35d,0xffab5df3,0x0027e0b6,0x000a01c2,0x000c6113,0x0008e187,0x00051154,0x0003be96,0x00016024,0x000b5eb2,0x000e3cab,0x000e2e1e,0x000add29,0x00099714,0x000e5584,0x00006fd2,0xfffd50d9,
-0x0000bb58,0x0004ec4c,0x000cb635,0x000c0311,0xff9043c5,0xfffccf7c,0xffb4cef7,0xffdf79e0,0x00021094,0xffeae359,0x001583d3,0x000533ec,0xffe70ddc,0xfff27cd2,0xfffa9b69,0xfffda71e,0xffcf59c4,0xffd0877d,0xffbed2c8,0xffdc8652,0xff96392e,0x0002053f,0x0017c602,0x00028c05,0xffff5786,
-0xfff4ca9e,0xfff8371e,0xfffa602c,0x001a61f9,0x00230904,0x00174602,0x000b5ed5,0xfffeaa89,0x00034ce7,0xffe1b52f,0xffde9985,0xffee0045,0xfff2cc93,0x001a9b81,0x0024aac1,0xffdd7fde,0xfffc98fb,0xffbaca81,0xfff9d8b9,0x0005495a,0xfff18dc8,0x000f5909,0x0040effe,0x000bd3cf,0x002f14e8,
-0xffeed27a,0x0029d2d4,0xffc8ea91,0xffceda2f,0xffc90ee2,0xffcde56e,0xffbcdaae,0xfffc3e6d,0x002baec7,0x0005f7f1,0xfff8b201,0xffde2465,0xffdc7169,0xffd4b05d,0x0012234b,0x00247a96,0x001c6e6f,0x000dcbd9,0xfff9f5da,0x000ea1cd,0xffbf4e14,0xffb9fdf3,0xffe4aac2,0xffdf9e64,0x001a186d,
-0x000e81b7,0xffd650be,0xffebea82,0xffbf65d4,0x003650a1,0x00619237,0x00279733,0x00598463,0x00577419,0x005fae8a,0x0056d2b6,0x0052ba33,0x005b8726,0xfffa5071,0xffe3381e,0xffb35b3c,0xffe5f503,0xffbd827c,0x000a440d,0x00314617,0xfff2dc2d,0xffd57a28,0xffb0121d,0xffb84584,0xffca7d92,
-0x003a1de6,0x006602a6,0x00419320,0x000d5401,0xffdc9424,0xffe736aa,0xff7dc4bd,0xff881d5f,0xffd3e504,0xffce9b16,0x00523dcd,0x0036e6ec,0x0065bca5,0x0093c684,0x0023c7d4,0xff7c6ea3,0xff6169bb,0xffbd7b2f,0xfff12c1c,0x002c7529,0x008c5fc5,0x0034e941,0x0005d750,0xfff8d2ad,0x000caf2e,
-0x002b4d42,0xfffda8f8,0x0029a74a,0xfff493ae,0x000e967d,0x0057684f,0x004af9c5,0x0078ea2d,0x005019b1,0x0032288c,0xfff90108,0xffe075ef,0xffd9ce59,0xfffe9987,0x0053ff13,0x006046b1,0x0011597c,0x00169a87,0xffe34c8d,0xff9eb395,0xffd397e2,0xffc6b5b7,0xff636cb1,0xfe92db56,0xfeeda540,
-0xffc152ca,0x006d3fc2,0x009a1c9d,0x004f8b1c,0x001a46df,0x000b7a28,0x000ee73b,0x004304d7,0x00511a64,0x00423ce1,0x0023eed1,0x0008bfd7,0x000bf40e,0x001da2b4,0xfff4557f,0xfff99f4a,0x00148050,0xfff59662,0x00013598,0x001d33d4,0x00199487,0x000009a2,0xfff0009a,0x0015cc71,0x007e8082,
-0xffc43dd9,0xff904fc2,0xffd063ac,0xffd9526d,0x0027fbe3,0x00ba705c,0x00095efa,0x008a0a01,0x010258c8,0x00cdfcf2,0x00ac301e,0x000089bf,0xffcb8716,0xffe88744,0x0062b0fa,0x004cee24,0x004195ea,0x000c9ab4,0x000db436,0x0009a82e,0x000b1e5f,0x0020e47b,0x0023a5c7,0xfff29291,0xfffd23cb,
-0xffd01743,0xffee53f7,0x001d0b26,0xfffc4b28,0x00085f90,0x0060653e,0x0090ddc6,0x009af45d,0x009733e6,0x0064df3f,0xfffcfd6e,0x003ec080,0x0059678d,0x0006d8f2,0x007270fd,0x003c3093,0xffa0469a,0x000ee4e9,0xff83fdb8,0xff6afd50,0xff6c7535,0xffa82e7e,0xfff1402b,0x000753ad,0x00054dc4,
-0x000c9013,0xfff4fea8,0xfff46ab8,0xfffaafa0,0xffef8919,0xffe8da5e,0xfff1406e,0xffe0474a,0xffccb12a,0xffd3ce4e,0xfff53c9a,0xffd9016a,0xffe901ba,0x000edf7c,0x0014dd66,0x0024ad1e,0x0021ec5d,0x00152743,0x002242f6,0x002177bc,0x00324049,0x002557a7,0x00685dbb,0x006002d4,0x001a516f,
-0xffede494,0xffe0caad,0xffe83ca3,0xff9b9f51,0x003c88cf,0x000e9fca,0xffdf8487,0x00078fb9,0x00141e0f,0x000cb6e8,0x0012be20,0x00059631,0xffefbfca,0xfffd5d41,0xfff76d16,0xffdccebb,0xffd0d482,0xffd9738a,0xffda5584,0xffec730e,0x000b2fd4,0xfffbc848,0xffe075f7,0x0008932d,0x0022de3d,
-0x001be6fd,0x0023fe0f,0x000dbc1b,0xfffdd1f2,0xffe8e659,0xffdcfb8b,0xffc9a561,0xffb6344b,0xfff4df69,0x002227a0,0x0065fe68,0x00288633,0x0005e4df,0x0025ff6f,0x00147e8d,0xffd1cac7,0xff96ed06,0xff5ca658,0xff53ced8,0xff383be6,0xff39caa2,0xff5e7315,0xff7f9bd1,0xff8f15b1,0xff9a0c13,
-0xffb026da,0xffb91866,0xffc75e65,0xffca6c4d,0xffc5e964,0xffc5902f,0xffd79e09,0x00051a33,0x0020d224,0x001963f1,0x002a8c2e,0x0029f79d,0x002aea40,0x00031c47,0x0000042a,0x000ffb8e,0x00202476,0x002fa13f,0x002b4a5b,0x002594ac,0x00215409,0x002f08d2,0x002d2d45,0x001ab82f,0xfff7760d,
-0xffda8cdc,0x001b21bd,0x00006ba2,0xffcb741a,0xffd0bda7,0xffbb0def,0xffb29358,0xff9d81c8,0xff8ac33f,0xff7e3ddb,0xff908134,0xff734f9a,0xff9d0601,0xff8afc2e,0xffa3fa9a,0xffb5dc52,0xffda32fa,0xffe91204,0xfff0b51a,0xffec52d4,0x001b6e92,0x002fc8a9,0x001f635f,0x0025458f,0x001c016d,
-0x001458fd,0x0006b490,0x000a3ef4,0x000a5910,0x000c41f4,0x000cf0ce,0x000fc3a5,0x00123fa2,0x001129b9,0x0011ead9,0x001b97b8,0x00102be8,0xffe63233,0xffe10f8e,0xffb0593f,0xffdff249,0xffc5e49d,0xffc99721,0xffdc9d6e,0xffda355b,0xffe8f14e,0xffdec204,0xffc78d16,0xffd52cc0,0xffdc5f3e,
-0xffcf1fc5,0xffc603b7,0xffcfbb80,0xffd5cf0f,0xffe6be6b,0xffcc4c45,0xfffeb777,0xfffa5903,0xfff92650,0xfff9e01b,0xfff8e57b,0xfffa7f88,0xfffb4d26,0x000121a8,0x000243b4,0x0001822f,0xfffef800,0xfffa7008,0xfff525ed,0xfff3b0c8,0xffeee1bd,0xffea4bf1,0xffe50ff8,0xfff17235,0xfffdf906,
-0xffbb92db,0xff9f094b,0xffa668dd,0xffcd398c,0xffa0b925,0xff9c1b62,0xff96672c,0xff94922f,0xff9d1a86,0xff922538,0xff8e81c9,0xff8fefb7,0xff9635bc,0xffc5ca85,0xff9b1803,0xffa06686,0xffc2a1a4,0x00029a71,0xfff4b86e,0xfff7c75f,0xfff78e95,0xfff8279e,0xfff895cc,0xfff8dd76,0xfff74f27,
-0xfff64d3b,0xfff5bbf9,0xfff52b18,0xfff4f32a,0xfff3f245,0xfff3430d,0xfff33272,0xfff3ab6d,0xfff3d186,0xffec0fea,0x00012cf8,0xfffee9e3,0xfff2e3d3,0x005367c7,0x005b7395,0x000379bb,0x003f55bc,0x0055ded4,0x0020af47,0x0029acd3,0x0028efc9,0x0018fbba,0x001a966b,0x0017035f,0x0014f8e7,
-0x00501af5,0x003ceb0f,0xfffcdbd6,0x004a15b1,0x0049bc42,0xfff4239e,0x000188e4,0x0000bb56,0xfffccb7b,0xfffa7972,0xfffb7de0,0xfffe5eb6,0x00067278,0x0007eb2d,0x00047e98,0x0004ef3d,0x000585bf,0x0007e9d1,0x0005cff0,0x00035273,0xfffe4a16,0xfffe46ad,0xfff12f8d,0x0014f14f,0x004a95a3,
-0x001596e7,0x0018840a,0x00299e35,0x0026d105,0x001c6778,0x001d689e,0x00323a89,0x004ec5e5,0x002dea89,0x001ab48c,0x00370d85,0x0014556e,0x0003f06d,0x0013b650,0x00049306,0x002a4d32,0x00177627,0xfffdbfec,0x0007a409,0xfff81e01,0xffee5763,0xffef175e,0xfffae295,0x0017c180,0x00223445,
-0x00161051,0x0011d381,0x000f57b8,0x0014f1b8,0x00155acc,0x000effe1,0xfffcdd92,0xfffd6d66,0xffe4f865,0x0020bca8,0x0061a6ab,0x003df4d4,0x000497f9,0x002a1459,0x002d8641,0x0011f50e,0x0047bb1a,0x0032b34f,0x005b496e,0x000df415,0x0022190e,0x003a115c,0x000f8f4f,0xfff79da6,0xffee04f7,
-0xfffd03af,0x00252101,0x00201dc1,0xfffe986c,0x0008541a,0xfff44c7f,0xffe392c4,0xffe7d7cc,0xfffca8b5,0x002b034f,0x0039b503,0x00228f42,0x00266fd5,0x0023a537,0x0029fe85,0x0028761e,0x0012a2ec,0xfff213d9,0xfff596ef,0xffce3986,0x00188a02,0x00482905,0x000f19d3,0xffcd7061,0x00409e1d,
-0x00567181,0x001f7ea8,0x004cc5c6,0x005a0aee,0x004663d9,0x00474298,0x0040f73a,0x00418c40,0xffedb604,0xffcb6966,0xffe4baa6,0xffd709a4,0x00139ee1,0x0020065a,0x0003df17,0x0011ad68,0xffede5c9,0xffd1e559,0xffdab7c1,0x0000fdf2,0x0062ccde,0x00847747,0x004ea803,0x0042e1f3,0x00364619,
-0x003c43df,0x0046c9d7,0x0032b406,0xfff237b1,0xfff6014c,0xfffc7695,0x00849685,0x01236b0e,0x01010492,0x0075312a,0xffc11055,0xff79e3e9,0xffc878bc,0xfffa2c88,0x002b2e80,0x006e398c,0x0034db37,0x000a3a3a,0xfff98231,0x001a2f2a,0x002623eb,0x0012de00,0x001bb1fb,0x004e68a9,0x00552c72,
-0x000fb784,0x000934dd,0xffe0514d,0x00095952,0xffdd6497,0xff7a7105,0xff543840,0xff551842,0xffaba4f3,0x000a0948,0x004251f4,0x005809a2,0x0039f6b3,0xffeb3618,0xff93f2bd,0xffd3c964,0xff33f9f5,0xff5f823b,0xff265921,0xff217ab3,0xffa7ef03,0x007c1fd3,0x009ea116,0x005e488e,0x00124cc0,
-0x00042759,0x00036122,0x0032cc42,0x00484cf3,0x0038aa9e,0x001dff41,0x0011dc30,0x003025f1,0x0022be60,0x00247ff1,0x001d5239,0x001a893f,0x003b69f4,0x0031aaa0,0x002b38cc,0x001eae5d,0x0021bda2,0x0016269d,0x002a7b1c,0x0061c374,0xffc8055e,0xffc1891c,0x0040909c,0x00556535,0x008e59af,
-0x00d7176c,0xfff2735d,0x007a647f,0x010e568c,0x00cc73eb,0x0079880c,0x00134d6a,0xffb3f82b,0xffedb11e,0x005e048b,0x0054848b,0x003a4714,0x000a68db,0x00056bf2,0xffff4cad,0x00048b63,0x002d04cc,0x0028a75c,0x0011fb65,0x0004e55f,0x0018d0be,0x00062b57,0xffdb11dd,0xfff0ee8e,0xfffb8b3b,
-0x004941f5,0x0079bbc8,0x0094d0b3,0x00779ca7,0x002815ac,0xffb49730,0xffd78390,0x0039ac9f,0x00b97b77,0x00ff0a5b,0x00bd3af1,0x0028705d,0x001cf068,0xffec8439,0xff891df0,0xff917e00,0xffbd569c,0xfff80ada,0x000d012d,0x000933b8,0x0008b0cf,0xfff73538,0xfff0a3b4,0xfffc8b4b,0xffe9036f,
-0xffe327b3,0xfff932e0,0xffdf71c8,0xffd8d5ec,0xffdebf25,0xffec8877,0x0003025e,0xffe112b6,0xffeac99f,0x0013a71f,0x0029ab1e,0x003e097e,0x0040e98b,0x0060232c,0x00872dc3,0x00a857e0,0x00a3581d,0x00dcdb22,0x00a9bb68,0x0006768b,0x005dbffd,0x0094d78b,0x00c6b322,0x006cd05f,0x0106f342,
-0x00e7e7c7,0x0085c18a,0x005acecd,0x004b3879,0x003c7e6b,0x0026f0a8,0x002336c9,0x0016f6de,0x000a211e,0x0013a896,0xffe8cb74,0xffd858e3,0xffe0804d,0xffdef384,0xffee4e48,0xfffac240,0x0013501f,0x00315cfd,0x0017a527,0x001ecb31,0x002480a4,0x00161d00,0x001d69d9,0x0024417f,0x0030eb93,
-0x002a9aea,0x0031995f,0x004670c5,0x0055b962,0x00826590,0x00ca6ce2,0x00c50f1f,0x00c706be,0x00d5045d,0x010548c0,0xffe1a07f,0xfffdf157,0xffb51f9d,0xff99d058,0xff778ebd,0xff741587,0xff74afed,0xff9d77aa,0xff95f38e,0xff9d304c,0xffa8e268,0xffc179c6,0xffcdcbff,0xffcf27dc,0xffc8f923,
-0xffd67ff0,0xffec6913,0x000d94d7,0x0017cf6c,0x00165439,0x00145df8,0x001cbd59,0x00275913,0x00264a69,0x002aad33,0x00313cfd,0x0031ccd5,0x00265661,0x000e0a4c,0x000941fe,0x00060aeb,0x0016a045,0xfffbe175,0xfff8849a,0xffeb36ae,0xfff34e3c,0x0005e679,0x0012fe00,0x001b90fd,0xfffe2ffd,
-0xfff02b22,0xffd69b96,0xffb7710f,0xff97aa13,0xff9dcf6d,0xff9852b4,0xffa10f43,0xff9d45eb,0xffa6f27c,0xffb219ae,0xffc8f14a,0xffdd62f3,0xffeea137,0x00030a13,0x00254fed,0x0031970f,0x001b8b3d,0x001e7658,0x0017ca28,0x00121e7a,0x000aa470,0x0001c96b,0x00100020,0x00211528,0x00338112,
-0x0033f026,0x00338182,0x00329245,0x002ce34b,0x0026fa56,0x001d691a,0x0018a2b2,0xffecd274,0xfff4476f,0xfff01a8d,0xffe9351b,0xfff34f77,0xffee2b16,0xffee3356,0xfff1bd74,0xffeecbca,0xfff943af,0x00062f17,0x000247d0,0xfff859e1,0xfffb54c5,0xfff88df2,0xffed4adf,0xfff605ee,0xffed00df,
-0xfff75a1b,0xffe62ea7,0xffe0900d,0xffe60b55,0xffe515ec,0xffe7a60b,0xffe9b9cf,0xffea9b64,0xffe6512f,0xffe2174c,0xffe26a45,0xffe4d5d4,0xffe9cb81,0xffef27d6,0xffed7f62,0xffee762e,0xffee99d8,0xfff0f36c,0xfff3c6ab,0xfff1a612,0x0017fefb,0x00199b08,0xffebe2ab,0x00106276,0x0016abe5,
-0xfff74931,0xfff71c76,0xfff490a1,0xffebea29,0xffee2fa9,0xffee7922,0xffea1ee4,0x00194b20,0x000f5b37,0xfff01c43,0x0017b74a,0x000fb2b5,0xffe44f1c,0xffec2c44,0xffeae48a,0xffea6b9a,0xffea1b38,0xffe9755a,0xffe9c883,0xffeae853,0xffeca487,0xffed2150,0xffee2161,0xffeea16b,0xfff06ea3,
-0xfff103e6,0xfff1c6f3,0xfff1e633,0xfff35abe,0xffeea011,0xffc5dcc9,0xffcdd844,0xffd0ab4c,0xffa4043f,0xffc1379a,0x001e3d6b,0xffa16f37,0xffbb7d85,0x00093f92,0x0011227a,0x0014ec56,0x0022362c,0x00183740,0x001967ce,0x00298c57,0xffb79cdc,0xff9a17b8,0x00232670,0xffbad040,0xff9e4c52,
-0xffcd85c7,0xffcae628,0xffc35aa4,0xffc00108,0xffbd34d3,0xffbd5938,0xffbe44d4,0xffc842c7,0xffca6bd1,0xffc8196a,0xffc23d42,0xffbed188,0xffbf20e4,0xffb6fc72,0xffb9001f,0xffc93bba,0xffc5a035,0xffcee2cf,0xffb8131d,0xffe0ed71,0xffc566ba,0xffb4fd68,0xffde89ad,0xffdfadaf,0xffdc6583,
-0xffe31147,0xffd6a28d,0xffda3f13,0xffc4e13b,0xffd13807,0xffdae789,0xffd0cff6,0xffc735dd,0xffa64230,0xffbf805b,0xffdbf34d,0xffb925e8,0xffbfdc01,0xffa795d5,0xff9ed8d5,0xff96ce75,0xff9ee28e,0xffab2a58,0xffcca445,0xffd38a29,0xffc23ecf,0xffaeffdf,0xff9ddbed,0xff9dbff0,0xff8a9a3b,
-0xff9732af,0xffc38a68,0xffbbcf90,0xffd4ea1d,0xffd249d3,0xffd03cd4,0xffe32570,0xffc49aa1,0xfff11765,0xfffb9813,0xffed7061,0x0011c053,0x0029d3ab,0x00173f49,0x000289ec,0xffefcfe1,0x000fdc81,0xffd049fa,0xffc05005,0xffba1b79,0xffbfafd0,0xffbbe17b,0xffcb3f32,0xffba6281,0xff9af7d6,
-0xff81a420,0xff6e30c6,0xff75997b,0xff7f6625,0xffbf8caa,0xffcd6611,0xffb60f29,0xff9bcf19,0xff7cbbf2,0xff7f5ff0,0xff52f8cc,0xff6a4d39,0xffc55cf0,0xffaf30b4,0xffe0d9b1,0xffd216fa,0xffd78104,0xffcd184b,0xffae41c2,0x0017795a,0x004e3c47,0x002e87f3,0x0054cc36,0x005d48c1,0x0062d918,
-0x00435090,0x0034a632,0x004de26a,0xffe5ad61,0xffc9e7a6,0xffbbf05e,0xffcc1690,0xffcf49fa,0xffdae15d,0xffaa0605,0xff68217a,0xff353e16,0xff1babf5,0xff32f4e9,0xff632247,0xffdcbc07,0xffff18e2,0xffc49106,0xff7f4d19,0xff449576,0xff3d2d47,0xff0f9dc1,0xff504bc2,0xffd7a5a6,0xffc0019e,
-0xffa514a0,0xffd2bc77,0x004e3917,0x00869790,0x005257b7,0xffa64c5e,0xff6117db,0xffa6a14b,0xffe8485e,0x001737c7,0x004d8ce8,0x0035036b,0x0011e05c,0xffe736c6,0x0010b74e,0x001ed4f4,0xffebcd77,0xffed0b9a,0xffdf264f,0xffd543d7,0xffc7fb5e,0xffe68937,0x000d4583,0x00052fc3,0xffec57bc,
-0xffc7e7b4,0xff7e4733,0xff6ec805,0xffb4c1df,0xffd6dcc4,0xffc64e8f,0xff90b094,0xff69bc25,0xff38c58e,0xff3997b3,0xff5c1af2,0xff8d860d,0xff5b7b24,0xfec54374,0xfef04ca4,0xff3a3abf,0x00458987,0x00a608cc,0x0063c24d,0x00114191,0xfff43fee,0xfff69040,0x0026348c,0x003cf903,0x003d4e6c,
-0x0019638a,0xfffc6290,0x0000e966,0x000b4df9,0x0002e001,0xffe61fa3,0xffbb881d,0xff8ead21,0xff5df123,0xff9677e9,0xffbd7a87,0xffd68d8e,0xfff9ce3f,0x0019838a,0x00448caf,0xffab7fb2,0xff8c5595,0xffff6e37,0xffcc14d0,0x0020da0e,0x00ea868b,0xfff0b339,0x003b8ddc,0x00ee5e9c,0x00949913,
-0x005b1047,0xffeb0d41,0xff9ff099,0xffc4ebef,0x004360d7,0x00433572,0x0039fc7b,0x00030070,0xfffd60e8,0xfff9187b,0x0001a9b5,0x001afda8,0x00193ff4,0xfff3eae2,0xffeb8c60,0xffcfd415,0xffdc715c,0xffec2b6d,0xffedcbf4,0x000532cb,0x00010dc8,0xffe7d672,0xffc8a07b,0xffbc94f6,0xffb0ec58,
-0xff993906,0xffbdbd4f,0xffb6fd30,0xff8af8a3,0xff116cc7,0xfeb9c310,0xfe8a6190,0xff748b21,0xff1d7566,0xff6c3128,0xff8f3079,0xffad1de4,0xfff1d56d,0xfffe294f,0x000f4f83,0x0005f012,0xfff8f303,0xffef2a21,0xfff28fca,0xffe07b0c,0xffddf179,0xffeccf80,0xffd44f24,0xffc646ff,0xffc89124,
-0xffda5d84,0xffd4eda2,0xffca64be,0xffc3cb2c,0xffb38cc8,0xffb84f95,0xffbb2f08,0xffd62992,0x00153dfd,0x002641be,0x002de24c,0x000e1c6a,0x0047cc57,0x001e8380,0xffc8bb75,0xff2372b8,0xfedb363c,0xfeae20d2,0xfef74336,0xffa87d8d,0xffee0c5c,0x0047fb01,0x00234558,0x001de281,0x001f0776,
-0x00146f11,0xffffeefc,0xfff90d1c,0xfffbd9ea,0x00075436,0xffef0cd0,0xffdcadb5,0xffd30ea0,0xffd84c4a,0xffe6d820,0xfff2d311,0xfff02b85,0xffefc4ac,0xfff4573a,0x00105995,0x0017fd03,0x0011e5a6,0x00007806,0xffde5103,0xffa3136a,0xff89171a,0xff778f06,0xff621726,0xffb31d69,0xffd5fce1,
-0xfff6bd7f,0xffaa61df,0xff9074db,0xffae2d00,0xffa7191a,0xff69871e,0xff65641f,0xff7bf3ca,0xff4d3d9f,0xff52430d,0xff538cf9,0xff751b8e,0xff99a698,0xff98844b,0xffa2f7b0,0xffb6257d,0xffbe09cd,0xffc939e6,0xffcef43f,0xffbf5c2b,0xffb99de2,0xffbf2290,0xfff59e25,0x00124bef,0x001e1934,
-0x0015d436,0x00089077,0x000818b6,0xffe64635,0xffdf0ed8,0xffe88d6d,0x00022367,0x001ee128,0x003313ed,0x001e996d,0xfff81d82,0xffbfe590,0xffcafa0f,0xffbb1177,0xff987873,0xff802663,0xffe68abb,0xffe3b72a,0xffc64bf1,0xffb624fb,0xffac1b4b,0xffa2bcac,0xff950d66,0xff846486,0xff8ac139,
-0xff9573c7,0xff8ad0e5,0xffa59ace,0xffac2bbb,0xffbe81f7,0xffc5f82c,0xffd36946,0xffd73ae5,0xffe65b41,0xffeed5fa,0x000a5759,0x0013104a,0x0014b393,0x001de904,0x00189a82,0x001518db,0x000efb72,0x0003e7a4,0xfff66fd2,0xffee1479,0xffe68118,0xffe8911e,0xffe4e52f,0xffe6a1fa,0xffe4919a,
-0xffeacd7c,0xffe71f92,0xffd5a704,0xffd27253,0xffe7db52,0xffd9810c,0xffd4f838,0xffd8ca54,0xffd560c0,0xffd5a0b9,0xffd39471,0xffc9f77e,0xffc37a7e,0xffc15ff9,0xffc6a0b0,0xffbefaff,0xffc7cf12,0xffd2ddfa,0xffcb41df,0xffdfbb9b,0xffe1d25d,0xfff9bb54,0xffff48eb,0xfff95462,0xfff8abd2,
-0xfff7912e,0xfff7c966,0xfff983a6,0xfff42f44,0xffec187e,0xffdf9462,0xffd2b904,0xffc29fca,0xffb29d58,0xffbae67c,0xffc175d3,0xffc771c9,0xffcb7d27,0xffe3835b,0xffe79c85,0xffc5a94c,0xffcefa9a,0xffff2385,0xffc19781,0xffc7f63b,0xffee5f3a,0xffee856c,0xffef8ed8,0xfff59cdd,0xfff32158,
-0xfff428cd,0xfff6cd7c,0xffc0269f,0xffbeee1c,0xfff995d3,0xffc9ee06,0xffc67f45,0xfff0bf5b,0xffe99ab7,0xffe9e54e,0xffeaa6ac,0xffeaa681,0xffea997b,0xffeb8792,0xffe57ea3,0xffe184f2,0xffde52a9,0xffdab835,0xffd7b91f,0xffd075ff,0xffd63369,0xffd88434,0xffdbfa93,0xffdea818,0xffda712c,
-0x00385cf0,0x002c9f74,0x0043cbc0,0x003c2642,0x00007312,0xff8cdc87,0x004d5561,0x000ba564,0xffab10b3,0xffabbd0e,0xffac3893,0xffacdbe3,0xff9e4762,0xff9a2fcb,0xff9ce7d3,0x0003ebf5,0x003e72dc,0xff7fdbcf,0xfff7b901,0x00309207,0x0040dee9,0x002fcdab,0x0037206a,0x0034f1d0,0x00345cf9,
-0x0035e6fd,0x00385377,0x003f7941,0x0041aa32,0x0040124b,0x00407e30,0x00405453,0x003ff692,0x003db9f1,0x003896f6,0x002bdce8,0x003209a7,0x002ae905,0x004cdf8c,0xffe787e7,0x003c5cc4,0x000b3892,0x001748c5,0x00354153,0x0027fb4e,0x003f5ce1,0x00485faa,0x0046ae50,0x003ddbe3,0x002cf8b3,
-0x003ddd4f,0x0007ac1f,0x00043320,0x000fbc7d,0x00107e13,0xffd5ad58,0x0042494b,0x0037ac8a,0x003e4713,0x003d3366,0x003988ea,0x003f0ad3,0x004952ec,0x0060fe57,0x006837cd,0x005f4995,0x005aa2ff,0x0054c036,0x005183d0,0x004ed36c,0x0042f7a8,0x00235791,0x002cb1c2,0x0029c556,0x0046dc90,
-0x00426756,0x0040cbdd,0xfff2a344,0x00217384,0x00231683,0x001c9c54,0x0032ee32,0x003f4689,0x004fccd4,0x002b313f,0x0009a269,0x0044034b,0xfffc8b3d,0x00002248,0xffe82603,0xfff7a440,0x00063ad3,0x0030010e,0x0040f3ed,0x003f5431,0x0042fd95,0x003af8e1,0x0045d9c6,0x0053714e,0x007f644f,
-0x008ea404,0x0080999b,0x00854fd6,0x007d5296,0x007324a4,0x00690b0b,0x0047bd01,0x0012eaed,0x0022c883,0x001c62e7,0x0033b029,0x00310d85,0x00264959,0xffd79fd4,0x0036ffa7,0x00569107,0x002ef89c,0x00589e89,0x00654056,0x00605634,0x00337769,0x00355c34,0x004d841b,0xfff5681a,0xffe5cee3,
-0xffd1749e,0xffeec08c,0xfff08ec9,0x002b0ec1,0x00413515,0x004473d7,0x004d6fcd,0x0045ef65,0x005d3a43,0x007c4363,0x00d03f81,0x00e37d27,0x00b899ff,0x00abb211,0x00905e71,0x007ac4f5,0x007469fb,0x00550279,0x000139c2,0x000f86ca,0x007473f0,0x00695f43,0x00ab1cbe,0x00c09375,0x00617274,
-0xffc8224a,0xff8a009a,0xffba718b,0xfff5491d,0x001fa886,0x00365aff,0x003f18e9,0x002072e4,0xffe70707,0x001edc9c,0x003281d6,0xfffe7376,0x0023f0c6,0x001a42fd,0x0045c3a3,0x006bfba7,0x0050553e,0x004876c5,0x002f2c7f,0x00063239,0xffbe9420,0xffb9bfc5,0xffe0c23f,0x00692f60,0x00a086f1,
-0x00cc84a1,0x00f3384a,0x0092adc4,0x00363ea4,0x00077ea5,0x00337acc,0xffa3b45e,0xffc62de4,0xff5a3fb8,0xff4d39de,0xff78aad6,0x005afc86,0x00ab6e5a,0x007553a6,0x00189337,0xfff7732d,0xffeffb3e,0x001a342b,0x0036a4bb,0x003d85b5,0x002efcb2,0x001ea57e,0x0027b0c2,0x0011fc65,0xfff79d0a,
-0x001ed7db,0x00509dce,0x006a389f,0x008dbdb9,0x00590182,0x003701d7,0x001e846b,0x0021ed5b,0x00301ff5,0x004971c8,0xffde4483,0xffda6700,0x005586ce,0x0056a620,0x009c9f19,0x01028d08,0x001a19c3,0x0058c258,0x011446de,0x0063bea7,0x002697a1,0xffe53ef3,0xffa5b6aa,0xffca49d2,0x003a72ec,
-0x00476455,0x003dadee,0x000982cd,0x00033811,0xfffb1554,0x000206dc,0x0026ade5,0x00373dab,0x000c20fd,0x001fe658,0x00247c0d,0x0028655c,0x000e629d,0x00048c2c,0x00258c8c,0x00881a74,0x00db0c9d,0x010725f6,0x00fe18b7,0x00b7d973,0x0044dd60,0x0077a0d5,0x0101c352,0x01d2574e,0x01251af0,
-0x008ae380,0x0035b68a,0xfff16d2f,0x0023e5be,0xff7b16ab,0xffb1c2f8,0xfff120b8,0xfff0cc4a,0x002195f4,0x001a67bf,0x00113b04,0x00028fd4,0xffeff0d8,0xfff6eb24,0xffe62249,0xffe22043,0xfff8e9aa,0xffe14621,0xffd73d68,0xffe10cfa,0xffe8bc1c,0xffdb3a2c,0xffe20959,0x000f07ff,0x0034c600,
-0x00541fdb,0x0057ec25,0x00605e46,0x007917ca,0x00a66af5,0x00b64d76,0x009a20a2,0x00b59ea6,0x008b99da,0x00584fca,0x009b5589,0x00efc2a3,0x0146c302,0x00a7ccc3,0x01851d88,0x00ca1214,0x002aa821,0x0043b2b6,0x004b4774,0x002f69e4,0x00221fa0,0x001d5577,0x000f56a0,0x0016dc2f,0x002276fa,
-0x00065731,0xffef196a,0xffe1909c,0xffdf3787,0xffe81d20,0xfff14841,0x00111a4d,0x0018b9c8,0x0027baee,0x0025aeef,0x001b2157,0x001e4a64,0x001d541e,0x0028fce2,0x0038f611,0x003ad3d8,0x005642bf,0x008b4c3f,0x00a88d44,0x00dbbe3f,0x012f53b0,0x01389094,0x01491160,0x0170cc06,0x0188e3b4,
-0x000a1276,0xfffa43b9,0xff720140,0xff80a566,0xff6e50e4,0xff8dcf77,0xffa600f4,0xffbbb8ae,0xffbaa57e,0xffba2406,0xffc740bd,0xffccfd60,0xffd90440,0xffdb6175,0xffd5b544,0xffdaa444,0xffe09b64,0xfff9db3c,0x000ca967,0x00167483,0x002d1f62,0x004238e7,0x004b3495,0x004f1674,0x004ad8d6,
-0x00474ed5,0x004a7491,0x003c64ea,0x0025731a,0x002a3f1b,0x003fcd02,0x0074ca72,0x0049b235,0x0033365e,0x001817c5,0x000b3863,0x0028a97e,0x001940ca,0x00008de7,0xfff32bdc,0xffc96b34,0xffbfe16a,0xffaa0bd8,0xff9a9cd6,0xff994c5f,0xffa76a40,0xffa50ce1,0xffbe7ebb,0xffb78976,0xffd32f61,
-0xffd15feb,0xffe048ea,0xffdebd56,0xfff9487a,0x00169686,0x003a44d6,0x00353cb8,0x002efc6c,0x002b8eab,0x0028eb07,0x0027a030,0x002371ae,0x003632b6,0x004a3fc5,0x005f4622,0x00684172,0x006a37ea,0x006fb370,0x00598d75,0x004a8720,0x003d5d2e,0x0031e4fb,0x000b2780,0x0010bf8e,0xffd38679,
-0xfffff30e,0xfff500b7,0xffef41d6,0xfffd10c8,0xfff9facd,0x0004e66b,0x000bf534,0x00049468,0x001139b9,0x000c5b25,0x000b20f9,0xfffc3696,0xfffc44da,0x000f6be3,0x000922b9,0xfff54e8b,0x00096f9a,0xfffbc7df,0x00004de0,0xfffea9c8,0xfffdc20e,0xfffcd106,0xfffa2747,0xffff8f4a,0x0003626f,
-0x00096bd5,0x000fff33,0x001a457e,0x00274f8b,0x0022b276,0x001f5aee,0x00195206,0x0013b92e,0x001d0e2c,0x00250107,0x001e8f8e,0xfffe2db5,0xffbe9d14,0x0024ffb6,0xfffcbf3a,0xffc421df,0xffc0ea45,0xffbd1c82,0xffbaf62d,0xffb4f2a5,0xffb1be9a,0xffae5ba3,0x00006418,0x0023f309,0xffba0a4a,
-0x00004a2f,0x001b3ce9,0x001612ce,0x0012e24b,0x0013d426,0x0011dc82,0x00119600,0x00110903,0x000faafd,0x0013c6f3,0x00171275,0x001a3c2d,0x001e0b6f,0x00205ffb,0x00246209,0x0021023d,0x00202ecf,0x001f738a,0x00208f31,0x00231767,0xffb08c75,0xffbcc0b0,0xff9f7a3c,0xffdd1945,0x00267fe8,
-0x00722ae0,0xffbecd75,0x00151175,0x006874eb,0x0070d927,0x0072e529,0x007219f5,0x00727c2b,0x0072a138,0x007aba90,0x0014452c,0xffc273cc,0x007433fc,0x001716f5,0xffd7e696,0xffa0bd4f,0xffb6b601,0xffab75d8,0xffa88378,0xffa742f7,0xffa8f294,0xffadafd0,0xffb4be70,0xffb60a2d,0xffb29b05,
-0xffade217,0xffaa43ef,0xffa6b3ed,0xffa5c0ec,0xffa9a723,0xffba2f1d,0xffb372eb,0xffb849a6,0xffa80a9f,0x00427538,0xffc42000,0xffe376e2,0xfffd68e5,0xffe552c3,0xffee9744,0xffd79850,0xffda027e,0xfffe4d17,0xffd03f9d,0xffd3a35f,0xffe45d62,0xffef1396,0xffdbf596,0xffbf8106,0xffc619f8,
-0x00266429,0xffa9da9c,0xff9b2dd0,0xff8f8389,0xff824f8b,0xff7dbd9d,0xff873946,0xff9c72c5,0xffb65f48,0xffbb8370,0xffab3736,0xff9ab357,0xff8c8e00,0xff87b060,0xff86e4a3,0xff97642a,0xffc033f2,0xffb54ff2,0xffb2dfdc,0xffbb6a40,0xfffdd626,0xfff541bf,0xffecd981,0x0004efc9,0x0009f0fe,
-0xfffe092d,0x0024c8e4,0x001945f6,0x003b1e30,0xffebb8e2,0x0006fddf,0x000989ab,0xfff2a4b7,0xffd15085,0xffc0a62b,0xffcb766f,0xffdf823e,0xffc599da,0xff844ed9,0xff7b90d0,0xff606228,0xff5710bc,0xff64ffc6,0xff83db44,0xffb19d81,0xffba5daf,0xff9cd324,0xff8a1bf7,0xff6e106a,0xff5dfeb3,
-0xff5cb6ee,0xff7694ea,0xffc40c08,0xffb0e507,0xffc2d62b,0xffd17c73,0x000d8205,0xffde1267,0xffbf70ee,0x00126015,0x00409c5e,0x00333cb4,0x004da16d,0x00627634,0x0061b948,0x0033f074,0x00211ec9,0x003c39d5,0xffe05523,0xffc04c39,0xffcc084e,0xffba329c,0xffec711f,0xffc6f943,0xff653379,
-0xff4568a5,0xff1316e5,0xff0841ab,0xff28bf11,0xff730087,0xffd2d32d,0xffe26256,0xffa29053,0xff7013f2,0xff435c11,0xff2acfc5,0xff3ce9db,0xff83298c,0xffeb5d6f,0xffd82eec,0xff4a77a8,0xffba38c1,0x00644a7a,0x0088a8a0,0x007cdbf0,0xffe04b97,0xff80f0d3,0xffa9f85a,0xffe53dbc,0x000bb64f,
-0x001c2cbb,0x003d4017,0x00258831,0xffe1b657,0x0017df35,0x00164351,0xfff084b5,0xffd18508,0xfff42845,0xffd9d016,0xff886419,0xffb7be3a,0xffb6d6eb,0xffd60bfc,0xffb94d7f,0xff88253d,0xff2e0258,0xff291010,0xff9b3dd3,0xffa05abf,0xff9193f3,0xff8a1c14,0xff3e7723,0xff0505da,0xff1dcc71,
-0xff3bdd75,0xff5b8fac,0xff85935d,0xff39c6e7,0xff22cba0,0xff192fed,0x001ec915,0x008f6897,0x007057c0,0x00136849,0xffeb3d87,0xffe00311,0x000ab8e1,0x0028e271,0x0030a903,0x00145781,0xfffcef5e,0x000ae037,0xfff9d680,0x000a499f,0xffdee42b,0xff9894f6,0xff85e344,0xff457197,0xff6d01e7,
-0xff9d7811,0xffcfcc3c,0x002215c3,0x0034b15d,0x00120107,0xffa5e994,0xffa4e5df,0x003cb2df,0x000aee80,0x00587d0e,0x01006daa,0xffebe56b,0x0007890d,0x00e7736b,0x0057365b,0x0000e665,0xffef1504,0xff9e3c22,0xffc539d2,0x001552cf,0x00303fb0,0x002d7a24,0x000147f8,0xfff1cbea,0xffecc724,
-0xffffa4eb,0x0015bc7b,0x0013452c,0x0005f92b,0xfff1714a,0xfff5daad,0xffeb05f0,0xffcd2daf,0xffedc723,0x000a32dd,0xffd6a718,0xffa411fd,0xff7e7a04,0xff608fce,0xff612c7a,0xff8458ff,0xff712085,0xff7a6c1e,0xffd71585,0xfeb039ae,0xfe3fbbf4,0xfe5999ec,0xff3a3140,0xff32667d,0xff7fe071,
-0xffbebbc0,0xffcdef34,0xfffad973,0xfffbbfbf,0x000ff8fc,0xfffe6c92,0xffff0334,0xffecff43,0xfff0141d,0xffdea6d0,0xffdf8fd6,0xffed1afe,0xffd56b5a,0xffcf4f9b,0xffcadeae,0xffc96364,0xffdde21b,0xffc1a584,0xff990203,0xff8b5175,0xff8c82d3,0xffa0ee40,0xffdae1d7,0x00292298,0x004b151e,
-0x005742fa,0x00445a7c,0x00520551,0x0014a41a,0xffcd4c26,0xff2f573e,0xfee9162c,0xfea61eac,0xff1dde07,0xffb95334,0x001042f0,0x0093e288,0x003f5c40,0x00312bda,0x00348189,0x001b18b6,0x000229a8,0x0006be35,0xffff779e,0x00159ffe,0x0007224f,0xfff1b172,0xffd59c9b,0xffd8ed30,0xffdf54c6,
-0xffdf4885,0xfff052a9,0x000f9574,0xfff7a9b5,0x00067858,0x0018141e,0x000a8cc8,0x0001aaec,0xffdef30d,0xffa65f79,0xff9c59ec,0xff9df539,0xff9e4a79,0xffd241cc,0xffe36367,0xffe55cf7,0xffbe90fa,0xffc02d96,0xffcf588b,0xffe04cfe,0xff634a75,0xff839736,0xffb38380,0xff75054c,0xff833ae2,
-0xff8eb836,0xffa3a626,0xffbe66a9,0xffb1ebfe,0xffb73e09,0xffc0af59,0xffc58676,0xffcb2c4b,0xffcfd050,0xffc808fc,0xffc57f37,0xffbef7ab,0xffe8f3a6,0xfffecf72,0x001878f4,0x0003616b,0xfff815be,0xfff79667,0xffeec535,0xffed3b43,0xffee3118,0xfffd0e5d,0x000cdca1,0x002435bb,0x000d7ab5,
-0xffe2ba84,0xff9afca7,0xffa352e8,0xff9c4e8a,0xff85a9c2,0xff81d91d,0xffc52aa5,0xffd8bcb9,0xffd8e17c,0xffb7c62b,0xffb237c1,0xffa4e5b5,0xff99b6ed,0xff89ad92,0xff9eea75,0xffa07456,0xffae0a4d,0xffb1c6a5,0xffcce207,0xffd48399,0xffd999d0,0xffd63a52,0xffd8541d,0xffea51af,0xffffec36,
-0xffff1ae0,0xfff72c22,0x00093793,0x00109243,0x0012d5fc,0x00136215,0x0015204e,0x00073d30,0xfffad99e,0xfff2c48a,0xffe70b6d,0xffe42b04,0xffd94bc2,0xffd7bc90,0xffd19bcd,0xffcedfb7,0xffd1da14,0xffd7176f,0xffd8c123,0x00149f48,0xffdc48ad,0xffebe2eb,0xffec80ca,0xffd987c9,0xffda5f04,
-0xffce6f81,0xffcddaf5,0xffdb3fc5,0xffce2bc5,0xffcd2967,0xffcf6461,0xffe29de9,0xffe826c5,0xffdda2da,0xffe8e573,0x0004e231,0xfffa6d6d,0x0002b41b,0xfffcbd3d,0xfffaae97,0xfff944b2,0xfff817d4,0xfff97753,0xffebcae1,0xffde8a62,0xffcee0dd,0xffc0c920,0xffb19d81,0xffa3da0c,0xffaf7c1a,
-0xffbb33d8,0xffc563c8,0xffcda092,0xffdfc729,0xffda9775,0xffee3d63,0x000ffb3c,0x003b5977,0xffd7e363,0x0003c285,0x002e9e34,0x00338890,0x0035d96a,0x003570dd,0x003bdd8b,0x0040ae31,0x00427fec,0x00058cba,0xffdcaeef,0x00409e0c,0x000b279f,0xffeaad08,0xffe26c0a,0xffe5856c,0xffe30939,
-0xffe3a625,0xffe30e06,0xffe24aa6,0xffe2fc2a,0xffdcf05d,0xffd941d7,0xffd5ce34,0xffd20f78,0xffce7c6e,0xffc65b00,0xffcd71e3,0xffd03aa5,0xffd41f1f,0xffd7e88a,0xffd528ff,0x00331ba8,0x00290b68,0x004f3bce,0xfff3feff,0xffad62e6,0xff790993,0x00171620,0xffbda6ac,0xff8348d2,0xff7f819e,
-0xff820bc9,0xff92c6bb,0xff7c692d,0xff79ecc5,0xff82d732,0xffb6a39a,0x0003786f,0xff6c109f,0xffab3b3e,0xffe938c6,0x00482ae8,0x0028d063,0x0030425a,0x002f8368,0x002fbbe2,0x0031521f,0x0033dca5,0x0039139e,0x003b6b22,0x003b333f,0x0039f808,0x0037f4aa,0x00351752,0x00309065,0x002c77a3,
-0x0025dc83,0x002d3818,0x0033f338,0x003dee77,0xffa75b68,0x002dbb1f,0xffe9f003,0xfff89460,0x001fa76f,0x0015d923,0x003232c9,0x002a6946,0x00166566,0x001bc85f,0x00182bb3,0x0019c903,0xffee509d,0xfff16ca5,0xffe571a6,0xfff9789d,0xff9e41ed,0x00278cca,0x002ec5c5,0x00292444,0x0030e898,
-0x0031c33e,0x003c5b5c,0x0048bcc1,0x0059cc52,0x005c7f42,0x0053edff,0x004c160c,0x0040929c,0x003684db,0x002a885c,0x0024b8be,0x001af7f2,0x00264629,0x003e3f36,0x0036887e,0x00021729,0x001f8496,0xffdf8bab,0x000d648f,0x000ee76c,0x0016e610,0x001490cd,0x0039320b,0x0030f4d1,0x0031277d,
-0xfff3c2d7,0x00301a17,0xffe54cb6,0xfff43173,0xffd10740,0xffde0793,0xffd21e32,0x000e68ac,0x00355c91,0x0023ccb4,0x0030f45d,0x002db827,0x003d1997,0x004aa310,0x006df0e6,0x0079cfe3,0x007057c5,0x006f0ba6,0x005b98b4,0x0047072c,0x0028c4fd,0x0015b728,0x000d1893,0x001bc2d0,0x004a65c9,
-0x002df565,0x000ad6d0,0x002146f3,0xffe2d9b7,0x0027b49d,0x00516927,0x003fd384,0x005dc784,0x0069ecb0,0x0076eef9,0x002a7ccc,0x002afafe,0x004f83c9,0xfffc38e7,0xfff4eb67,0xffb621e9,0xffeb83a5,0xffc2b908,0x00050c18,0x002467dd,0x000cd126,0x0026548b,0x002bb30c,0x0051061f,0x007c957e,
-0x00bcd0fd,0x00bef587,0x009a19d4,0x0081670b,0x0055f41c,0x002decae,0x0008ef2c,0x00072cae,0x00022f93,0x0011507e,0x006982ad,0x000627d7,0x000b9ed9,0x005635ea,0x00489305,0xffd1fdab,0xff9b8ac2,0xffaec5d6,0xffe59eda,0x000e74b8,0x000ecafb,0x004a50c8,0x00377617,0xffdcef25,0x001b2c09,
-0x002edf2b,0xfff191a7,0x001415ee,0xffdf8ea7,0x000eed1d,0x00728a08,0x00602195,0x0078b912,0x003cb59c,0x001ba87c,0xffeb34b9,0xffec78a7,0x0021b779,0x00b70abb,0x00bc80df,0x00c3027a,0x00ce61f9,0x005531dd,0x0002e6ae,0xfffe2ed8,0x001d3912,0xffff67bb,0x0007b4fb,0xff7222a4,0xff65ec46,
-0xff5998b8,0x001f917b,0x008f1efb,0x00746c14,0x0021a4ae,0xfff235d5,0xffdc5705,0x0002359a,0x00228c09,0x00386176,0x0030271c,0x001969ce,0x0013074d,0xfff78099,0xffceaa53,0xfff8998f,0x003078a2,0x002f1e7e,0x00565eef,0x002759c0,0x00140c76,0xfff810fb,0x00334d07,0x0040326b,0x00260d97,
-0xffde398f,0xffd80150,0x004324b2,0x0037cba0,0x00868320,0x01060ade,0x0031c56e,0x000d042c,0x00e96445,0x000c73a3,0xffdea85a,0xffd5154b,0xffb3d552,0xffbfeb85,0x0006733e,0x00269740,0x0032f9ca,0x000a832f,0xfffd181d,0xfff531a4,0x00034613,0x0015d793,0x002e88b2,0x0003bc4b,0x00222e24,
-0x00124dae,0x002a5018,0x002d38ac,0x0013933d,0x003dc211,0x007f04ea,0x00bbb4c4,0x00cfa863,0x00cad6b8,0x00ad22bc,0x00818832,0x00a1609b,0x010222ce,0x01ab2d40,0x0054205c,0xff9d8e08,0xff9f1c7d,0xff951eba,0xfff90d67,0xff7ea60a,0xffcb5b7c,0x000a5c67,0xfff9934e,0x001c6916,0x00187bcd,
-0x000f8ada,0x00078b51,0xffee93e3,0xffef649f,0xffe87c03,0xffe8aa5e,0xfff2e705,0xffe4202f,0xffd6dace,0xffda28a3,0xffdc3375,0xffba4207,0xffdc7775,0x00042ea3,0x0010c5db,0x00296800,0x00299131,0x00443066,0x00616f73,0x0081ecfe,0x0085768b,0x006cf2f0,0x005f4a41,0x003fdcda,0x006e4412,
-0x0057b0d2,0x007ff0ee,0x00a535e6,0x003a6c8b,0x00fc47fe,0x002ff5eb,0xffde49b7,0x0017bfd7,0x002f7faa,0x00232a70,0x001e9df0,0x000c7183,0x00003b40,0x00146c7b,0x001edbbd,0x001b30ab,0x00030da8,0xffdf8cac,0xffdc0253,0xffdcc00c,0xffe6436a,0xfffdc0d1,0xfff6159a,0x002280ff,0x0020cef9,
-0x0012e9de,0x0022a893,0x001484f2,0x000fad5b,0x000bee75,0x00155c41,0x003118f8,0x00668976,0x008a0e7e,0x00b0631a,0x00e95ab4,0x00e87467,0x00f4e30d,0x0118e654,0x010d7ddc,0x000309cb,0xffc6392f,0xff632a14,0xff7a5792,0xff7536ca,0xffa6b8a1,0xffd0fe3b,0xffd54357,0xffdc1e54,0xffd6f027,
-0xffe09e7d,0xffd1ac16,0xffd8e2da,0xffdbcbf8,0xffde5e48,0xffd93813,0xffcda284,0xffe12213,0xfffada65,0x000e1896,0x002caa26,0x0040347e,0x004253dc,0x003f74dc,0x0039f33f,0x00326d52,0x0037c761,0x0034811e,0x00327772,0x0035c4c2,0x004a0ab5,0x00722f26,0x00567a95,0x003c8e97,0x001e0402,
-0x0004d68a,0x001cbf3b,0x0000b06e,0xffcedc62,0xffcbc126,0xff9b8046,0xffa061ba,0xff98d1e0,0xff986f69,0xff96db95,0xffb19c02,0xffa8ee61,0xffd1a0fd,0xffc53c7f,0xffe1b64d,0xffd65e7f,0xffe072e2,0xffd87cce,0xffed09fa,0xfff7d41a,0x001f809a,0x002f2b03,0x0028b81e,0x002ef8ef,0x002f4afc,
-0x0031d9f2,0x003164ae,0x003b73b1,0x00448dfc,0x004e4471,0x005352ef,0x0052ae1b,0x00543fef,0x003c1a2b,0x002c309d,0x0023ed35,0x001896fd,0x000e2302,0x000dded4,0xffcbc203,0x00018ce8,0xffeb4756,0xffe8d454,0xfff74292,0xffef6e48,0xffff0d8f,0xfffe2c5f,0xffeb2cd1,0xfffc6fe7,0xffffac3f,
-0xfffacd65,0xfff01d27,0xfffc8d75,0x000cd395,0x00127df0,0xfff797ad,0x00224bd1,0x0016bb19,0x00160e76,0x00143fc2,0x00104e5d,0x000d85c0,0x0009d6d9,0x00110e41,0x0015b800,0x00198c91,0x001c7111,0x0021907d,0x0029d8d8,0x0027a7cc,0x00241ee5,0x001d88a8,0x0014c007,0x001c69f3,0x0027d4c8,
-0xfffcf441,0xffd7b68f,0xffba3d62,0x00075287,0xffd4f439,0xffb2683a,0xffaf4d8e,0xffad0f07,0xffb2ae19,0xffaa05f1,0xffa6ece4,0xffa70de6,0xffd7d850,0x0008c206,0xffb36137,0xffdd8586,0x00029b64,0x0025be4f,0x001a4b8f,0x001c3ec1,0x001a1d47,0x0019edef,0x00198db5,0x0017ba04,0x001a7e90,
-0x001c5c80,0x001ee648,0x0021ec09,0x00239f1f,0x002566d9,0x00215f9a,0x001fbccb,0x001f222b,0x001fe07d,0x0021e5c6,0xffd7c7a1,0xffde3007,0xffbedaf0,0x00287e67,0x005cb780,0x0055fa13,0x000a0d0a,0x004e5bbb,0x0061becd,0x0065bfb7,0x0065cc07,0x005be6dd,0x005f7164,0x005d5f77,0x005bd809,
-0x004db0a7,0x000f1950,0x004e35db,0x004a0354,0x002116ec,0xffc06515,0xffd83b9f,0xffd2029d,0xffd046b3,0xffd0d356,0xffd3bd30,0xffdb14dc,0xffdddd6c,0xffde77c6,0xffdb110e,0xffd9ffe7,0xffd78cb3,0xffd21e2f,0xffd4f568,0xffd6b891,0xffdcbec7,0xffd9a2eb,0xffdaf203,0xffe04580,0x0064ae7d,
-0xfff55700,0x001922d0,0x001e27e1,0x00084302,0x00132365,0xfff660e8,0x00043738,0x002e5444,0x0002936a,0xfff94157,0x0009e1dd,0x00106543,0xfffd7a88,0xfff08ca5,0xffe79a6f,0x0037fcf2,0xffd77a76,0xffbd7a78,0xffc2c081,0xffb9365a,0xffb9760c,0xffc3358d,0xffdc1d89,0xffe9a5cf,0xffec12e7,
-0xffdf9a76,0xffd84158,0xffd0489f,0xffc7ce88,0xffd09077,0xffd922b6,0xffe66944,0xffe3fe36,0xffd08bd7,0xffe34fb7,0x0037bb75,0x001f29a5,0x00146dde,0x00201b3f,0x001d9974,0x00196800,0x0031a78b,0x0014e7c5,0x00546b9c,0xfff60163,0x001b8fd5,0x0014920b,0x001353ce,0xfff5c129,0xffd5584c,
-0xffe57457,0x0003f821,0xffe51e8d,0xffa5761a,0xffb133b4,0xffa47710,0xffa6078f,0xffb86898,0xffe49960,0xfff7097b,0xfffb7504,0xffe01dc4,0xffe0c957,0xffcf7757,0xffb2d9aa,0xffc75789,0xffccb2a8,0xffe2b7bd,0xffe3ccc4,0xffe17d8a,0x0000ee24,0x0049ac52,0x00123f83,0xffe87fc7,0x0020c904,
-0x003d7aa7,0x003c73ac,0x004b4d83,0x00649256,0x00616a4a,0x0029295d,0x001aeb08,0x002fbe55,0xffed9c6f,0xffd153c1,0xffd3d241,0xffbdf176,0xfff8fdcf,0xffd31d7e,0xff82d72c,0xff8d6617,0xff79ff0a,0xff807a22,0xffa7d9d3,0xfffc5531,0x002e8146,0x00264759,0xffed4554,0xffdfdc6c,0xffc8baf2,
-0xffa366cd,0xffcfed91,0xfff30d73,0x00077962,0x000cd7be,0xff734b47,0xffda63a1,0x00678901,0x00784aa2,0x0085a159,0x000e7b29,0xffaecbec,0xffb5d421,0xffdf07e6,0x0003d35c,0x0000d2f4,0x004aefa7,0x003cc6df,0xffe33c9c,0x001c653b,0x0016e725,0x00058a05,0xffe2f55f,0x0013bacf,0x0007ac11,
-0xffbeb748,0xffdb6d6e,0xffb4f1be,0xffdc72db,0xffb7aed3,0xff6b703c,0xff3628cd,0xff52b50c,0xffe801b0,0xffdd19b3,0xffe1d1af,0x000577bb,0xff9a8925,0xff52a883,0xff563d78,0xff7d7f1c,0xff772f50,0xffd6e3d2,0xffbc6d31,0xff6ee7e1,0xff3afa52,0x0001a9cc,0x00683372,0x00695ced,0x001f329b,
-0xfff23574,0xffd07458,0xfff33305,0x0016d421,0x0025b457,0x0017ced5,0x0008d6f4,0x001b1e92,0xffee2198,0xfffc1731,0xffe303f2,0xffc04acc,0xffd3ddea,0xffb2bd58,0xffab8aa6,0xffc3995c,0xffe6aaf5,0x005128af,0x00536bde,0xfffa3de3,0xffbe1723,0xffd35c28,0x00687010,0x00661864,0x00a3517d,
-0x00f411ff,0x000b26d5,0xffc3d41f,0x00aa8b5a,0x001396eb,0xffbda4ba,0xfffd91be,0xffbbd83e,0xffd8e4b0,0xffea7354,0x00153af7,0x001d2b7d,0x00090c4f,0xffefda67,0xffe8e6f1,0x00011af8,0x001111ec,0x0014e0f3,0x0016f44a,0x0007a2a5,0x00231950,0x000fd50a,0xffdba851,0x00030561,0x001f3ca1,
-0x000433a5,0xffedd8c1,0xffd7c9da,0xffb19379,0xffab0aed,0xffd60a08,0xffb2a90b,0xffe29cdf,0x00a09ac6,0xff48733d,0xfeca11f0,0xff0b1f13,0xff481f2f,0xffbcd9ac,0xffac5c3c,0xffe6bd4c,0xfffa5a67,0x000ee4ad,0x0003b16d,0x000a7ba1,0xfffef72a,0x000415f6,0xffec2691,0xffee4e73,0xffe7cbaa,
-0xffeb5622,0xfff0bf2d,0xffe21baf,0xffdf52d4,0xffd4fa16,0xffc73db8,0xffe08f3d,0xffca7a28,0xffa6c803,0xffad5e2a,0xffb5143e,0xffd5f68f,0x0011c40d,0x005014c8,0x007b5298,0x008e0ecb,0x00936ecb,0x0072afd9,0x0031e665,0x000a30e5,0xffe2bb45,0xffdb9917,0xffb706be,0xffe88970,0x003c5f5f,
-0x003baee8,0x007bf1f4,0x003fd33f,0x0039532a,0x004335df,0x002930c0,0x00115857,0x00152d51,0x000bccdf,0x001fc38a,0x001b6ac6,0x0005fe86,0xffdff603,0xffdb1ef8,0xffd79677,0xffd44296,0xfff75a0f,0x00259672,0x000e80be,0x000b66b6,0x00193ace,0x000fcb61,0x00101eb5,0x0000db52,0xfff06984,
-0xfffaa032,0x001455cf,0x003c4e2f,0x00405827,0x004d7030,0x0050e209,0x0057e5fa,0x006850dd,0x006090f3,0x00762145,0xffbf06d8,0xffd03b70,0xffdeef2d,0xffbac658,0xffb9e649,0xffd2b4a4,0xffdc9a3f,0xffe865b3,0xffdc3806,0xffd8cecc,0xffd62a75,0xffd10e23,0xffd0d5ee,0xffd29692,0xffd8a5e1,
-0xffdb8885,0xffd0e4ef,0xffdf35f5,0xffea79a7,0x0005862c,0xfffd62cc,0x000277eb,0x000507da,0x00135bd6,0x0018675d,0x00120db5,0x000e993f,0x000930d7,0x0012ca49,0x000873af,0xfff78306,0xffd8bf19,0xffd26c15,0xffd4e344,0xffd2880b,0xffdc111f,0xffca82c2,0xffe128aa,0xffeb9136,0xffc62b38,
-0xffb6fb2b,0xffacf4f4,0xffa4f0dd,0xff9a12e9,0xffb15689,0xffb15f6b,0xffcbfdc2,0xffc2e18f,0xffdcab1a,0xffdd63f4,0xffe3d2bc,0xffde6298,0xffe39f25,0xfff4f8b9,0x000fa0f9,0x000350ba,0xfff52f50,0x000acc76,0x000f8b8d,0x0012e566,0x0013d647,0x0017eee0,0x00162a19,0x00181049,0x001b569b,
-0x001120c6,0x00091594,0xfffbc81b,0xfff19c46,0xffe591e6,0xffd7e568,0xffda7943,0xffeeffd7,0xfff37920,0x001b97ed,0xffec604c,0xffff020f,0xfffa9158,0xffe7af41,0xffe638f8,0xffdc12d8,0xffe48221,0xfff846e7,0xffecc41e,0xffe74b18,0xffefa91b,0xffff8e76,0xfffed356,0xfffe22e2,0xfffca2fb,
-0x001bba22,0x0000ea57,0x000348fd,0x0001a671,0xffff87c5,0xffff1148,0xfffe2e67,0xfffe1583,0xfff2f3ac,0xffe98af2,0xffe1ef77,0xffdc6122,0xffd91985,0xffd7f78b,0xffddc74a,0xffe593be,0xffeb4036,0xffef81ea,0xffeb83e0,0xffe36620,0x0012c480,0x002ca290,0x002e780d,0xfffae080,0x002148a6,
-0x002b4220,0x0030f412,0x003235ae,0x002cf670,0x0035b57d,0x003a79f7,0x0039f8e4,0x002c12ec,0x00048528,0x003b065b,0x002e09f1,0x001052fb,0xffe5cb0c,0xffee5c30,0xffeb4fac,0xffeadfeb,0xffea1838,0xffe90d13,0xffe90ad2,0xffe75407,0xffe6ccfb,0xffe5b29e,0xffe50a83,0xffe3c04c,0xffe0d834,
-0xffe31ef9,0xffe396bc,0xffe49f40,0xffe6d708,0xffe3d277,0xffffb8bc,0xffffc509,0x00157283,0xffbce7e4,0xffa5fb06,0xffcde8cc,0xffd2b9a9,0xffac4c1e,0xffc21c55,0xffbe38f0,0xffc1764c,0xffd55e4f,0xffc50f66,0xffc4f1df,0xffcf879b,0xffa92cda,0xffc677c6,0xffc5485e,0xffa39457,0xffb4d93f,
-0x000dfba3,0xfff9ee8d,0xfffab712,0xfffa5b44,0xfffb542e,0xfffd40b2,0x00018850,0x0003eaff,0x00056c1d,0x0004b056,0x00022b05,0xfffe5c08,0xfff92e93,0xfff3e6e0,0xfff3ab34,0xfffa9ec5,0xfffdeddf,0x001140bb,0xfffe94c7,0xffbb5e99,0xffff1f62,0xffd7baa3,0xffe788e7,0xfffb1adb,0xfffcceae,
-0x00056bf2,0xfff59492,0xffe88f78,0xffe96238,0xfff262c4,0xffeb679a,0xffe19deb,0xffe163c6,0xffbe6495,0xffd8921b,0xffad4291,0xffe4b9df,0xfff0da2c,0xffe21ca6,0xffe8d1a9,0xffed6e93,0xfffbe612,0x000e79ef,0x00185133,0x0016a322,0x000af651,0x0000c5e9,0xfff1a40c,0xffe4673b,0xffd4a34a,
-0xffdbc19d,0xfff6bb5e,0xfffd41b6,0x001d49d2,0xfffe02ea,0xffd7df96,0xfffa9536,0xffe179c0,0xfffe3cb6,0xfffe716b,0x000cce77,0x00003dda,0x001fff6f,0x001613f4,0x001b2497,0xfff0a629,0x000e1ffa,0xffe0df9d,0xffe6d89b,0xffc05a15,0xffc97416,0xffb480d2,0xffd840bd,0xffe99d4c,0xffd305dc,
-0xffd867dd,0xffdb1ce2,0xffee18e2,0x00074618,0x001b2370,0x00206d06,0x0011db84,0x000bbf5b,0xffee9896,0xffd2bae3,0xffaf21ee,0xffb79ca7,0xfff04feb,0xfff4cd86,0x00452431,0x000deab7,0xfff9ffaf,0x000f0bc5,0xffee154b,0x00179f5e,0x0042ec5e,0x004ce5fa,0x0057e9f5,0x0064df07,0x007aa4b2,
-0x00286da6,0x00209264,0x004225ba,0xffff6497,0xfff48d09,0xffab240d,0xffd4f4cb,0xffaee637,0xffca41e6,0xffc45141,0xff9cca80,0xffa7b5a1,0xffb7b141,0xffe956fa,0x003046c0,0x0058bc1f,0x0049d79d,0x001f3aa8,0xfffef245,0xffcd6208,0xff9d9b69,0xff742826,0xffa1ad4b,0x00035153,0x000cb628,
-0xffe8bb58,0xff9cf9e9,0xffa9cfc7,0x0005b233,0x0040d5f1,0xffecffa0,0xffb084f0,0xffa70077,0xffcf3d88,0xfff94cd1,0xfff985e2,0x0052d6c5,0x0049644b,0xffdb29e9,0x001407fb,0x001f67da,0xfff7fb20,0xfff87ca6,0xffc74db5,0xffda7abd,0x00275123,0x0031bc42,0x00509676,0x002194ef,0x0004ae58,
-0xffdbbe25,0xffcbf2af,0xfffe1856,0x00895ab7,0x0060ca0a,0x00445e57,0x002fe5ea,0xffba77b4,0xff7e9c87,0xff96296a,0xffafc564,0x0026c3ab,0x0016416b,0xff899cc1,0xff6e5abb,0xff3b086d,0xffde5e37,0x005ae552,0x005ea006,0x002bf367,0xfff848b9,0xffcd9de3,0xffebfa9f,0x000ecf48,0x002c10a9,
-0x0021c7fb,0x0008dbff,0xfffecf9d,0xffe2c7e3,0xffc51767,0xffcaa04c,0xffdf98c2,0xffc8be75,0xffcd9300,0xffc29be1,0xffd4af50,0xffd85921,0x00485ef4,0x004e2bf0,0x00014863,0xffcf4e5d,0xffcae1cf,0x00286028,0x0026603a,0x006f210f,0x00e2acd3,0x003bda2a,0xff934e5f,0x00634792,0xffd65395,
-0xffbae92c,0xffde7b75,0xffcf7b46,0xffccf2e6,0xffd61747,0xffff30a1,0x001aa100,0x000dc77a,0xfff5abe2,0xffee2727,0x0002b1d6,0x0003694e,0x0016050f,0x0000647a,0x000f1939,0xfffa52f8,0x0011691a,0x0026f4bd,0x001ca403,0x003f42e4,0x003fbf6d,0x003c6ee8,0x001f0589,0x00166951,0x002a4df2,
-0x005661f1,0x00639375,0x006c0bbc,0x008e7a4e,0xff15f60c,0xfe8a284c,0xfeeb7b8e,0xff267a9d,0xffbac1b3,0xffaf8d36,0xffe5a470,0x00097d8a,0x0012b1c6,0x000b42b6,0x000c735e,0x0006d2d7,0x000695bb,0xffedab3e,0xffe8980b,0xffedd4fa,0xfff2aeb9,0xffec6922,0xffe8408e,0xffda37df,0xffcf56ea,
-0xffcc1177,0xffb2b6b7,0xffd0748d,0xffd4acf5,0xffc73529,0xffd0ab46,0xffdc96de,0x00099999,0x0037ccaf,0x00489cce,0x0047abc4,0x00402806,0x0017678c,0xfff8441a,0x0038a439,0xffd3f4e3,0xffbbb398,0xff9a5b5b,0xffa6679e,0xffe87562,0xff96314c,0xffcf9d4f,0xfff6b8e5,0x000f2302,0x002066c6,
-0x0020739f,0x0003d49c,0xfffeb67e,0x000e6385,0x00146419,0x00211618,0x000cd5a1,0xffe0bad4,0xffd8adbd,0xffd18279,0xffd8b3ca,0xffe556f4,0xffe492ab,0x000da97b,0x00132529,0x000fd791,0x001b01bb,0x000a23d8,0xfff60f99,0xffdafdaa,0xffe5dd3a,0xfff8aefa,0x001864cb,0x00399dd4,0x004d0977,
-0x0059c4e7,0x003da894,0x0030b434,0x0031ed71,0x0007e61a,0xffe443ff,0xff9e9019,0xff967394,0xff9c3706,0xffa43279,0xffcaf759,0xfff2d4ae,0xffeff6d5,0xfff6a229,0xffeff3be,0xfff109a6,0xffd62713,0xffd4abfa,0xffd6dfd9,0xffdd4857,0xffd3ceab,0xffc3c48b,0xffcf2f48,0xffe60d1e,0xfffe1f0d,
-0x00135aef,0x001c31be,0x001957a8,0x00113595,0x000d479e,0x00082b62,0x000cee9c,0x00177508,0x002cb7e4,0x0029f2fb,0x0027ef66,0x00201246,0x0023bf3b,0x001a7d16,0x000da2a2,0xfff46b81,0xffe9662a,0xffd6e92e,0xffaa1e76,0xffa27784,0xff805126,0xff8baf5a,0xff9158c0,0xff98f4c5,0xff9f73fb,
-0xffb795f6,0xffb4ee5e,0xffd47bd8,0xffd0b4c6,0xffe012a3,0xffd9d364,0xffde9ed9,0xffdb122c,0xffe57777,0xffe38387,0xfff8fb2d,0x000ff8ae,0x001445bb,0x0023d979,0x002277d4,0x0023d870,0x00253a2e,0x00222f70,0x001d3c2d,0x00191e11,0x001458af,0x00104aed,0x0009b69c,0xfffac514,0xffed92c9,
-0xffe8e0d9,0xffe1a9bb,0xfffd39d5,0xfff7d07c,0xffe2ce59,0xfff3f6fe,0xffe41c43,0xffe428fd,0xffe4af70,0xffdbcfdb,0xffe3ae90,0xffdd779d,0xffcf9c4d,0xffd7ce82,0xffdfd053,0xffdb86d7,0xffe06845,0xfff12db9,0xfff59f41,0x00053653,0xfffcc6ce,0x001d8e69,0x001c7699,0x00179bd4,0x00173060,
-0x001482c6,0x001395fd,0x0012581a,0x001456c7,0x0013d8a6,0x00108158,0x000b6b89,0x0005f602,0x0002a6cb,0x0004c85b,0x00056035,0x0003e614,0xfffe9574,0xfffb4819,0x000132d8,0xffd6c2da,0xffc98c55,0xffdf1b59,0xffd7a71d,0xffc2b8d4,0xffccda72,0xffcd4ea4,0xffce2326,0xffd691ae,0xffd28363,
-0xffd2aad4,0xffd5c1c9,0xffc5a78d,0xffdd3846,0xffde1daa,0xffd033b0,0xffe1e60d,0x000e94f2,0x00045aa1,0x000577e6,0x000486f8,0x00048853,0x000467c3,0x0003ea31,0x00028f9a,0x00017f7f,0x000159a1,0x00019432,0x0001680f,0xffff3c0a,0xfffd8046,0xfffbb916,0xfffb5b88,0xfffb780c,0xfff8baf0,
-0x0015fb7d,0x0012a704,0x000bb77c,0x0047e446,0x003f93de,0xfff25473,0x00419758,0x003e19fa,0x000a800d,0x000722c1,0x000642d8,0xffff421f,0xfffdfc77,0xfffac586,0xfff50285,0x003c9227,0x00403cf3,0xffe1d355,0x0031c13a,0x003e0cbb,0x000998cc,0x000e599e,0x0010f94d,0x00105c68,0x0012fa49,
-0x001674c4,0x001e5ade,0x001d0b6d,0x001d38e6,0x001ab124,0x001d2349,0x001bc63c,0x001602cd,0x0017f1e6,0x001635b4,0x00112e2e,0x001495e2,0x0018ea2c,0x002c1025,0x0036485b,0x002d39d0,0x002f2fe1,0x0026053a,0x0027529a,0x002cf86f,0x001f4778,0x002bcaa2,0x003f5ecb,0x002e0335,0x001fd86c,
-0x00276da1,0x001d4a28,0x0013b49e,0x00119769,0x000721a5,0x000a0f95,0x00139854,0x000045cd,0x000db6e5,0x000d63b4,0x00146457,0x001f746d,0x0036e25b,0x00377c63,0x0035f406,0x002cb46c,0x002e40b0,0x002a6a80,0x001f1475,0x0024a149,0x00229da6,0x00179faf,0x0021626a,0x00120a4e,0x001e530f,
-0x004b180f,0x003b5275,0x0021ebfb,0x002a2191,0x0021f6d1,0x002acc55,0x00275a8e,0x0015d265,0x004a0d74,0x00129653,0x001dc040,0x00218cd0,0x001d4e1f,0x00155711,0xffe928ca,0xfff8b087,0x000a54f4,0x00071243,0xfff37039,0x0003a998,0x0009b266,0x0016b2f1,0x002bcdbb,0x0058f917,0x005263f4,
-0x005389b5,0x003fd7a3,0x0051f1a5,0x0048c040,0x00261b92,0x00336ec4,0x0022b78f,0x000b64ef,0x001fdc73,0x00298aaf,0x003696af,0x005d31f7,0x0040c64e,0x000eddb3,0x002c8456,0x003bde2e,0x00479b21,0x004b8276,0x005f9efc,0x00614c55,0x0022ee24,0x001e56e8,0x002d3879,0x0005cba5,0xfff483d1,
-0xffd0fca8,0xffd2d09a,0xffea26f6,0xffe738a4,0xffd3a488,0xfff1342d,0x0003bd27,0x001f37e1,0x004ef362,0x009ec3c8,0x00a1e731,0x00851a08,0x00578665,0x0067b00e,0x005c8b7b,0x002e7ace,0x004a0a6b,0x0046c9a7,0x002258f7,0x003ed99b,0xffdea96c,0xfffbbe96,0x0038d589,0x004dec9f,0x0066b93a,
-0x00218d6e,0xffd6f653,0xffbb3789,0xffd1b3be,0xfffa6b15,0xfff6f5d0,0x00578669,0x004fc84e,0xffe48eb7,0x001aeffa,0x001cffe5,0x001b680a,0x000c50b4,0x001e8f87,0x002eb7de,0x0031da98,0x002d8909,0x00031c99,0x000598c9,0xffd854ff,0xff8485de,0xff84cbc0,0xffc8f06c,0x006fbd12,0x005a3a9d,
-0x006c1c3d,0x009d706d,0x001b751e,0xffcc6404,0xffb3a989,0xffda66a0,0xffe7e159,0x002d7492,0x00079d1a,0xffa75535,0xff6a71ea,0xffe0c762,0x003ba44b,0x00563884,0x0031662a,0x000524db,0xffcb8922,0xffe1cb86,0x00076fe4,0x0020f4eb,0x001d7401,0x001321a2,0x001cc627,0xffea6c8e,0xffe31e17,
-0xffe7e1a3,0x0007389c,0x002cd18c,0x003bdd9a,0x0005e0c2,0x00011108,0x000d2084,0x00714bd6,0x006406c0,0xfff916d7,0xffddc96f,0xfff9cca0,0x006a3ad0,0x00a0b2bb,0x00cae5bf,0x00c87821,0x004371cf,0xff797994,0x00290aff,0xffd7f2b7,0xffb0ea75,0xfff8fb31,0xffe34ce6,0xffecb836,0xffcd12df,
-0xfff89ca2,0x000cc4b4,0x001334dc,0xfff68399,0xffec7bb5,0x00009a59,0x0008743b,0x001737f2,0x001b8a8d,0x001ca332,0x00369825,0x00298e35,0x000b9276,0x002290cd,0x0038dbba,0x0053b581,0x00696ca9,0x00660029,0x004ed1c8,0x004465e2,0x004f2cd4,0x005977da,0x00950bd2,0x0116f9b2,0x000b2360,
-0xff9f3927,0xffe4e913,0xff66fbad,0x00587bbc,0xffeb9503,0x000797f7,0x002320b9,0x0025513b,0x0013cb4e,0x0006cefa,0x000516b2,0x0006c261,0xffee4e4f,0xffeca12c,0xfff45df2,0xfff939ba,0xfff4ba35,0xfff2fb03,0xffec988d,0xffdd28ba,0xffcecf93,0xffd71ab5,0xffd7b325,0xffd5ae19,0xffee096f,
-0xffff61bf,0x001fdb97,0x0047d155,0x006e1940,0x009141d6,0x00a0024e,0x00aa5baf,0x00704cd2,0x00445721,0x004a4e2b,0x0096f409,0x00d1483c,0x00eac3c0,0x00ab73dc,0x009ed0e1,0x00378b2a,0x0015e7e0,0x0021c8f1,0x002e751d,0x003b43aa,0x00308743,0x002007c8,0x001eeb0a,0x001c98a7,0x0021ea98,
-0x00250243,0x00127697,0xffef4468,0xffddc514,0xffd17aa8,0xffd1f7a1,0xfff6b6a9,0x001af5ba,0x001f6d16,0x0014bba5,0x00170bcb,0x0014162b,0x001e8275,0x002913e6,0x003d3ca5,0x005b895d,0x0085687c,0x00c3f522,0x00ade9fd,0x00be96af,0x00d2504f,0x00ef6036,0x00f2038e,0x00cd97a3,0x00cbec47,
-0x00379b0e,0x001ce27c,0xffe8aff2,0xfff46da4,0xffed68a4,0x000c37eb,0x001344e6,0x000e87c3,0x000a04d4,0xfffe442c,0xfff364c1,0xffe1477d,0xffdadd5c,0xffd84c40,0xffe416d2,0xffe96ffe,0xffe4832d,0xffd86278,0xffdc5c40,0xffefdfae,0x000316e7,0x0019c513,0x001ec864,0x00383f12,0x003cc190,
-0x00327074,0x00221bce,0x000e247b,0x00082e7a,0x000f5c8c,0x001fbd03,0x003b9059,0x002ab131,0x0034b438,0x00445e50,0x004930d6,0xffe4b3e4,0xffe78466,0xffe7204a,0xffce13aa,0xffaf7757,0xffaec36e,0xffac7b04,0xffab6b08,0xffb91e21,0xffc02ade,0xffd611b6,0xffd43c77,0xffdcf9cb,0xffe0cddf,
-0xffe4a28d,0xffe58064,0xffe9d3cc,0xfff7b1d1,0x000cdc73,0x000859f3,0x00032381,0x0011b4cf,0x00177360,0x00162808,0x0014dabb,0x0017376e,0x00227b5e,0x0030ef9f,0x003da0a3,0x003cf02e,0x00367b35,0x002fb744,0x001d8813,0x000c9c62,0xfff91cc7,0xfff18281,0x000a2836,0x000cbfc6,0x0000340d,
-0xfffc3178,0x0000f33f,0xfff95973,0xfff23c4d,0xffec02c0,0xffeca729,0xfff777b9,0x00010684,0x000143b9,0xfffcb153,0x000413fb,0x0007a923,0x0006671c,0x0012a053,0x000b300b,0x0016a9ef,0x000864a6,0x0003d5d1,0x000748de,0x000756dc,0x0008e075,0x000a832c,0x000a11b1,0x0008a272,0x0007fa3d,
-0x000af094,0x000e6383,0x00159952,0x001f4bdf,0x001b5552,0x001a8337,0x0017dbf5,0x00147653,0xfffcca7f,0xfff90cc5,0x0018aa37,0x001555c3,0xffefb387,0x000d777a,0x000e507c,0xfff18b2c,0xfff4a3cb,0xfff402b5,0xffef91ee,0xfff37171,0xfff52839,0xfff3449e,0x001c96da,0x0018147f,0xfffb3e71,
-0x001e117a,0x001c3a05,0xfff8a32f,0xfffe3c4a,0xfffd0e32,0xfffbb810,0xfffb92d2,0xfffb0226,0xfffac83e,0xfffd5dd0,0xffffc454,0x00019589,0x00046be6,0x00063998,0x0009b074,0x00054f6e,0x00026470,0xffff6712,0xfffe738d,0xfffba009,0xffcf8f0a,0xffd90706,0xffcf0b1b,0xffc21d46,0xffe7898c,
-0x003c387c,0xffba9de7,0xffde8ba9,0x00295723,0x00274d5a,0x00294fdf,0x003298f4,0x0030ef57,0x00325144,0x00380ca0,0xffe0ae10,0xffbbede4,0x0037a7fa,0xffdfd9b4,0xffbcac85,0xffca6dee,0xffcf2d16,0xffc922dd,0xffc858e0,0xffca9c6b,0xffcd4f01,0xffd4512f,0xffd2fc03,0xffd2fba7,0xffd07cac,
-0xffcec125,0xffca919d,0xffc3fed8,0xffc0e324,0xffc4261a,0xffd45802,0xffd250e6,0xffe92c45,0xffcae6e6,0x000a9b74,0xffdcfda1,0xffe70849,0xfff0689e,0xffe61876,0xfff3cd3e,0xffdf58bc,0xffd4b7a0,0xffde19ea,0xffd1826f,0xffdd8a36,0xffd7883b,0xffee7f3c,0xffe5c656,0xffbd047e,0xffcb161b,
-0xffed0bfd,0xffb32678,0xffb56874,0xffa920d0,0xffa8fea7,0xffb1c5b8,0xffc18657,0xffdaa1fe,0xffdb634a,0xffd63e65,0xffc76e05,0xffbfe0b4,0xffb2cde9,0xffa5f8b5,0xff9c4fd2,0xffac711c,0xffdc4f4f,0xffdc74cb,0xffecaadf,0xffcf3240,0xffe00645,0xffeeeaf6,0xfffbaae1,0xfffe812f,0xfffaf376,
-0x00084032,0xfffcd9ff,0x0000dc39,0x000c041f,0xfffcd1e9,0x00020f2b,0xfff6aee4,0xfff6c32d,0xffeb615b,0xffc6ce1f,0xffcbba8c,0xffc0d167,0xffb838fc,0xff9f8612,0xff948ba5,0xff8cad49,0xff987e3f,0xffae07e2,0xffd8564c,0xffd54386,0xffd2f1cc,0xffbbce6e,0xffb993ed,0xff9d5913,0xff7d2bbb,
-0xff6aac9f,0xff84ea9b,0xffde04ad,0xffd8c451,0x00238aaa,0xfff7217e,0x000d1574,0x00065e0c,0xfffe3076,0x000e0fa5,0x002edc2b,0x004f4400,0x0047f3bc,0x00564931,0x0065bce9,0x00278bb8,0x001a5ce8,0x002d46ab,0x00052f79,0xfff22f19,0xffba8a22,0xffc03be1,0xffbcffdc,0xffa26921,0xff6cddd2,
-0xff50c140,0xff468ce3,0xff63ca9f,0xff9d0cd7,0xfffba4f1,0x000350dd,0xffe5135e,0xffb03f8d,0xff9b8e13,0xff762230,0xff4795e6,0xff3c3042,0xff830817,0x00106b2c,0x00141f29,0xff5b6d16,0xff6dff0e,0xffa8b9fe,0xffef26ce,0x0047f6d6,0x0012cc41,0xffcc4b75,0xffa6aebd,0xffbd159e,0xffe965d5,
-0xfff39067,0x00561c08,0x005159ae,0xffe05ab9,0x000dc509,0x000e23c0,0x000f5186,0xffeb6bd5,0xffe09455,0xffd13708,0xffdac0b2,0xfffbeeff,0x0001feb6,0xfff343d6,0xffd10584,0xffa6a002,0xff82efdd,0xffb05d93,0x0031676e,0xfff3562b,0xffcb7828,0xffb4d1ad,0xff46f1b5,0xff1c38a7,0xff38369e,
-0xff4a2d43,0x0023c2cf,0x0012490d,0xffb8886c,0xff7b1ec3,0xff32b785,0xffa9a51a,0x001c4682,0x0042a61a,0x003476c7,0x00074d59,0xffc9027c,0xffda2c15,0xfffd30eb,0x001dadbe,0x000d8b3a,0xfff86f49,0xfff45227,0xffdd4cef,0xffda7120,0xffb40a32,0xffa1fdec,0xff89ead2,0xff655b14,0xff793350,
-0xffabc04b,0xffdce98a,0x0062844e,0x005a15ae,0xffe6a299,0xffc0684f,0xffcbd968,0x0027db0d,0x003ed3fa,0x006d7867,0x00a305cc,0x003df813,0xff2c7076,0xffba689b,0xffc9b923,0xffc4b53f,0xffece7e8,0xffeec9cd,0xffe84dce,0xffb98cc8,0xffe192c5,0x0000bb38,0x000fb24d,0xfff3d380,0xffeacc5a,
-0xfffd2d0b,0xfff580cc,0xfffdf020,0x00075f03,0xfffaae79,0xfff272da,0xfff1efec,0x00098701,0x002015ac,0x0030211a,0xfffdf82e,0xffc3da48,0xff860115,0xff76a173,0xffa707ce,0xfffecd10,0x00196bf9,0xffd6b1e0,0xff591eb4,0xfe62a60e,0xfe2d1176,0xfea48e00,0xfeeeb9da,0xffba7874,0x00032aac,
-0x000a7172,0x000974b9,0x00302499,0xfffeb516,0xffff58c0,0xffff3f7a,0x0002894c,0xffef6a9a,0xffe6bf47,0xfff33754,0xfffaac69,0xffebd8bc,0xffef6ffd,0xffe32876,0xffca4e2f,0xffc1792a,0xffc36f7b,0xffc51c33,0xffa71d7a,0xff91f6f4,0xff8eada7,0xffadca79,0xffe4ce3d,0x002576de,0x002bf9f4,
-0x002b3dfa,0x0029aee6,0xfff17856,0xffd35a1b,0xfff06083,0xff873504,0xff4d2c8a,0xff0ed2da,0xff764ca1,0xff1c77ac,0xff5a9348,0xfff4906b,0xfff299d8,0x0000f846,0x00235b49,0x00232b06,0x00085d67,0x000df225,0x000ef7d3,0x000e551e,0x001cdf56,0x000ed8ff,0xffeb8b90,0xffd93e31,0xffcb2f30,
-0xffcdcb55,0xffd382f1,0xffe7bc5b,0xfff60046,0x0002e1ee,0x00102d61,0x000b9efe,0x0009b792,0xfff4bad2,0xffd30f99,0xffe41052,0xfff07519,0xfffb5027,0x000be961,0x000ad308,0xfff004c6,0xffd16370,0xffab2068,0xff6fa1d8,0xff432cb8,0xffe11729,0xffbacd51,0xffef206f,0xffdcd62c,0xfff32df0,
-0x00020988,0x0014f20d,0x000ed343,0x000daab8,0x00057f47,0xfffba551,0xffe0fb0a,0xffd52742,0xffd25632,0xffd771f5,0xffd20609,0xffca13d9,0xffcb858a,0xffd76997,0xffed655d,0xfff349eb,0xfff3e0af,0xfff098d9,0xffefeb99,0xffefaec0,0xffead1ec,0xffea8b49,0xfff680e6,0x001246a7,0x000be2c4,
-0xfff88aba,0xffce2ec6,0xffe928ae,0xfff8d081,0x0007152d,0xfffc6ade,0xffb6acfe,0xffb554ff,0xffa6caeb,0xff952206,0xff884728,0xff8f1ff1,0xff9a15be,0xffa0aee4,0xffb07175,0xffbb4ee8,0xffc63709,0xffceb3a0,0xffdb9035,0xffdb6fb1,0xffdf24a9,0xffdc28d2,0xffde1995,0xffe16381,0xffe03376,
-0xffda3e76,0xffe9478c,0xfffbe2a7,0x000eebdd,0x000bdb17,0x000a4601,0x000cbb39,0x0000f3d2,0xfff49866,0xffe8d8d7,0xffdf6f2f,0xffdaa194,0xffd06da1,0xffceb2de,0xffc6d912,0xffc2e6f8,0xffba8987,0xffe9c40b,0xffe2b3ff,0x00035e1e,0xffe2d2fc,0xffe3eb2e,0xffe3cf5c,0xffd38a92,0xffcc8d4a,
-0xffc8a56f,0xffc4c206,0xffc770ca,0xffc23983,0xffc86528,0xffc94e63,0xffdbb11b,0xffe77391,0xffe1f883,0xfff15902,0x00034fcf,0x000509de,0x000e4334,0x0009c521,0x000b90f7,0x000cc97a,0x000fbd17,0x0012cc82,0x000d1fb3,0x0006dade,0xfffde6b1,0xfff3a9a6,0xffe79d07,0xffdc1799,0xffdf0772,
-0xffe282f8,0xffe640ae,0xffe738fd,0xffd7b393,0xffd3e644,0xffcb926d,0xffdce552,0x000c454f,0xffbdbd59,0xffd24200,0xfff97358,0xfffe646f,0x00017395,0x000674e8,0x000a5b6a,0x000e5b57,0x00120c53,0xffd8a358,0xffc8519e,0x00152f9f,0xffe31fa5,0xffd6bed1,0xffe902b7,0xffe79758,0xffe70760,
-0xffe79d7a,0xffe81e71,0xffe84cd7,0xffe9b750,0xffe53ba1,0xffe258fb,0xffe00e77,0xffddf6be,0xffdc6431,0xffd86f14,0xffd8f2d0,0xffd733bf,0xffd61bc0,0xffd517b5,0xffce5356,0x00373fa3,0x002f145f,0x00427da2,0x0028507f,0xfff28604,0xffa43154,0x003c085f,0xfffbbaab,0xffb56c5d,0xffac4d09,
-0xffac0696,0xffaf8cdb,0xffa878c7,0xffa66dfa,0xffa3219c,0xfffac413,0x00344936,0xff926574,0xffed6c53,0x001e36ac,0x003bf743,0x002b3b16,0x00333beb,0x0033663d,0x00378b40,0x003adf6a,0x0041d82a,0x003d8797,0x003d6760,0x003baf24,0x003fb5df,0x003e8750,0x0038de50,0x00378c7b,0x00343718,
-0x002c8814,0x00341702,0x004108aa,0x004d6d23,0xffe94754,0x00400bb4,0x001dfc16,0x0011ebff,0x0028780e,0x0029d728,0x002d5f8d,0x002d64c8,0x0022a4f1,0x00300317,0x00292eee,0x0023f300,0x00121cd7,0x001303fa,0x000d851c,0x000c9843,0xffc94e59,0x0029527a,0x0027a2f8,0x0030d547,0x0039b321,
-0x004730c1,0x00546e8c,0x0067f4f3,0x005e54da,0x00582cfd,0x004f8289,0x0055f972,0x00526ec5,0x0044ad86,0x0040d200,0x003b0b7d,0x002e6607,0x003f1bab,0x00430720,0x00394a1d,0x002ad87b,0x0033674e,0x00172cda,0x001c8d55,0x00120ccc,0x0026776a,0x000896c7,0x000feacf,0x001e43b5,0x0025dffb,
-0x00106923,0x00206d1c,0x00120f11,0x001f44ed,0xfff1324f,0xfff87f1a,0xffefcb14,0x000bf340,0x0025b9e6,0x002c1dff,0x003da083,0x005315f5,0x0068d39f,0x008ef40f,0x007785d1,0x0075e59e,0x0068ee27,0x0081a030,0x0079cfe7,0x0055974e,0x004df95f,0x0038b21d,0x0020f441,0x003b10b3,0x0067f5c2,
-0x004b554d,0x00425d10,0x004c298e,0x002537df,0x002876b3,0x003418d5,0x004d06ba,0x00472a33,0x0050c379,0x00572cd2,0x0020a36b,0x00254b2a,0x002f66f5,0x001d8600,0x001720c4,0xffcaee56,0xffe5357f,0xffc90ff0,0xffe6ad5a,0x00050da7,0x001858f3,0x0042d768,0x0070abce,0x00a7f2ab,0x00ed09e6,
-0x00cc8dcd,0x00a286db,0x007d0a6f,0x0098e2c7,0x008d0dd8,0x005912f4,0x0054ab61,0x00486479,0x002ff7e7,0x00546dab,0x0021a906,0xffef7628,0xffdcdac0,0x000b7ef0,0x00387b0c,0x001da594,0xffee6f8e,0xffb67be6,0xffc2c4cc,0xfff10f35,0xfff8707e,0x005b20f1,0x0055aa48,0xffe6ea99,0x00119d31,
-0x001d56e8,0x002801aa,0x002f49d9,0x001397d8,0x00360af2,0x008addbb,0x00707f23,0x005a9105,0x00263390,0xfff4e8fc,0xffb71d7e,0xffdc3159,0x00384996,0x00d6dde4,0x00b15807,0x00b94046,0x00dbb5fd,0x004d12fc,0x0006b2ae,0xffec28be,0x000245f1,0x006522ea,0x0065ae4d,0x001912ac,0xffc1a4dc,
-0xff7f4a4e,0xffb6caab,0x000b6a0f,0x003afa10,0x003c9aa0,0x0015a4a5,0xffce8eb8,0xffd540c8,0xfff8579a,0x001e4b82,0x001b4824,0x000fc100,0x000a0cb4,0xffeb4b56,0xffd12514,0xffe2e6b6,0x002bc841,0x004153fa,0x006833d3,0x002d0902,0x0022937e,0x00285c15,0x00793c71,0x00604467,0xfff9883b,
-0xffedf3ff,0x0007eebc,0x004d47a5,0x00a056e6,0x00b7a204,0x00831bd0,0x0068388d,0xff34b59f,0xff8564a9,0xffb3c4bb,0xffcefcdd,0xffe57eeb,0x00092cf0,0xfffb0e87,0xffbde98c,0xffe1a6a7,0xffffb550,0x00166107,0x0001ed41,0xfff48985,0xfffb0199,0xfffb6a45,0x0012fcc3,0x00157d7f,0x002015a6,
-0x002256e2,0x0020b1aa,0x0035146c,0x00370cec,0x004440e4,0x007ba63b,0x00a207ef,0x00a38335,0x009ffe7e,0x009ee10d,0x008e35dd,0x00eb7378,0x0105dfe8,0x00cc5d88,0x004aa5f3,0x00093431,0x002fbdbb,0xff70e874,0x00abd7b8,0x0033a542,0x002621f4,0x003a9a7b,0x00361dcc,0x001b27ee,0x0003121d,
-0x000c9cec,0x00069d67,0xfff37d41,0xffeb66fa,0xfffbd644,0x0000f914,0xfff73312,0xfffee91d,0xfff168f9,0xffddef17,0xffd47c96,0xffc67b27,0xffdb7b17,0xfff7de86,0x000f68a3,0x0022bb8f,0x003f8b37,0x00557042,0x006d4ad6,0x007babc7,0x007c964f,0x00757638,0x002fbb92,0x00220588,0x00563cfb,
-0x00be70e2,0x0106f5dc,0x01438064,0x00df11ae,0x0072be86,0xffe8d0c2,0xffaa4a6e,0xfff80755,0x00174ba5,0x0022dfe4,0x002a4f19,0x0022cce2,0x001e87b2,0x002629c7,0x001b36c5,0x00221a27,0x0014e5db,0xfffe3448,0xffdffb77,0xffcdad38,0xffd39a21,0xffe75f72,0xfff3d71b,0x001647e1,0x0013c083,
-0x0010a7dd,0x0016aae5,0x00228141,0x00382710,0x005d0eb9,0x007eb55a,0x00a52ce8,0x00e182a5,0x00ca8c78,0x00d90b45,0x00edda04,0x010b8322,0x00f1d0f5,0x00ac29ed,0x0088f651,0x00817543,0x0041d9ef,0xffec43c6,0x0013be18,0x00138489,0x00312442,0x003bb139,0x002a0950,0x002de78f,0x001d209f,
-0x000e6755,0xfff1e040,0xffe4906c,0xffdb256a,0xffe53977,0xffe8c8ce,0xffeaa708,0xffd4da4f,0xffd80387,0xffe16bc9,0x00073405,0x0023cd36,0x00295d95,0x003d6186,0x003db11e,0x002ff21c,0x00209f25,0x000ee002,0x00042886,0x00152dca,0x00380327,0x0072f916,0x00669bcd,0x00738657,0x008ba27b,
-0x0085a20e,0xfff70333,0xffdf9551,0xffcbb0c9,0xffc6277c,0xffa1349a,0xffaa12f9,0xffaf7b54,0xffb7fed6,0xffb96a95,0xffc8e688,0xffcf7d34,0xffddc272,0xffd6769c,0xffdf19f6,0xffde9fa3,0xffe36aea,0xffe225e1,0xffeac0c1,0xfff28f29,0xfffcdfed,0x0009287a,0x000ebfcc,0x00192de4,0x00147df3,
-0x0012b37d,0x0013545d,0x00205e9c,0x002deccc,0x0038b229,0x004053e4,0x003ebcb4,0x00419420,0x0031c9d0,0x0023f319,0x001549b4,0xffff481b,0x0011f9f2,0x000e4945,0xffdc601a,0xfffc37d7,0xffefa0f8,0xffe8df6a,0xffec8eaf,0xffe2a344,0xffed83b1,0xfff3fb01,0xffee9e9f,0xfff9bdd8,0xfffa9d75,
-0xfffd1e5c,0xfff7bab3,0xfffbc03c,0x000d4879,0x000a4ef3,0x0000196f,0x000a7f81,0x00040f35,0x00093b16,0x000bebea,0x000ec611,0x0012b43e,0x0013b763,0x001ad7c7,0x00219280,0x002a3c46,0x00314e5a,0x003ae3fc,0x0045d243,0x0039f4da,0x0030c432,0x0027e139,0x001f036b,0x00018cf8,0x0003c62e,
-0xfffc92a2,0xffe1f4c5,0xffb82319,0xffff4ed6,0xffde80b5,0xffb655e6,0xffb6dc1d,0xffb58590,0xffb667a7,0xffb42230,0xffb3324f,0xffb25e75,0xffeb0d29,0x0009139f,0xffbed7cb,0xffef4056,0x0007b6c0,0x000747e7,0x0005c4ae,0x00073a4f,0x00060fa4,0x0006ffe7,0x0007713b,0x00078feb,0x000b71c8,
-0x000e66b9,0x001163bc,0x00155087,0x001880b0,0x001f1331,0x0016ce1f,0x0011c035,0x000bf2e4,0x0007fd9c,0x000523f8,0xffcab576,0xffd5d484,0xffb74967,0xfff81255,0x003444ef,0x006a4992,0xffdd27bf,0x00233eea,0x0061836e,0x005f9b87,0x005f602c,0x0059f3ff,0x0064e7af,0x006657f8,0x00640c90,
-0x00290ee2,0xffe83a37,0x00658cb2,0x0027eef5,0xfff38c7f,0xffb5f0ba,0xffcb8049,0xffc46ae2,0xffc38435,0xffc74ea7,0xffcacb97,0xffd3cbf6,0xffcebb5e,0xffcd6478,0xffc93d10,0xffcac430,0xffc7c64a,0xffc053ed,0xffc138b9,0xffc515b8,0xffd3467e,0xffcf7979,0xffe17790,0xffcc86e7,0x004eb135,
-0xffe33900,0x000d535d,0x00080757,0xffed740b,0x000115ea,0xffdacddd,0xffdb85c7,0xfff4ec74,0xffe37be3,0xffe95ef6,0xffe8b852,0x000ac797,0xfffcfcbf,0xffe1db59,0xffdad7db,0x0022b34b,0xffb69efb,0xffab6eaa,0xffabb697,0xffa7ce7e,0xffb4d2e5,0xffc35643,0xffde60e5,0xffd4db67,0xffcd2d08,
-0xffbdd31c,0xffbef2c9,0xffb86542,0xffabc403,0xffae2d08,0xffbd6e18,0xffe4014e,0xffe2f1c2,0xffdb3af4,0xffcceaba,0x000bb0d9,0x0001612e,0x001f9556,0x000abae6,0x00015111,0x000d6f51,0x00017eb8,0xffea164b,0x000b8edd,0xffed5b4b,0x00192844,0xfff5f0f8,0x0017c5eb,0x000367bf,0xffe32dda,
-0xffe2cb2d,0xffe6b7fa,0xffc1b307,0xff90e9e2,0xff998c27,0xff8e336a,0xffa42a3b,0xffba551d,0xffef2b48,0xffd3fe04,0xffccb9e7,0xffb0ce3b,0xffbcd568,0xffabda38,0xff85f6ff,0xff902489,0xffa6b143,0xffe7b6d7,0xffe46bab,0x001021e7,0xfffca1c8,0x0033b070,0x00142f8e,0x0016f557,0x000d7340,
-0x001bdd04,0x0046bce5,0x0033d413,0x00409945,0x003e2a29,0x002453b4,0x001c2215,0x001c2ffa,0x0011eb0c,0xfffbf029,0xffda3be0,0xffbdf460,0xffd642f7,0xff9f704c,0xff5be113,0xff615141,0xff56cb44,0xff831996,0xffbd799e,0x001ea6d1,0x00000969,0xffd506dc,0xff9c2c32,0xffa70174,0xff98babf,
-0xff6958ea,0xff89cc60,0xffc46cdd,0x00266030,0x002e1695,0xff2b6953,0xff88bf35,0xffd80364,0xfff905e6,0x005009c8,0x0031a6cd,0xffeb2a2f,0xffaf45a2,0xffb8c464,0xffe5fbe2,0xfff85d31,0x00525fd2,0x004d1c68,0xffec28f2,0x000833e8,0x00031646,0x002bd409,0xfffe77ca,0x001a8238,0x000328a2,
-0xffdba550,0xfff477d2,0xffd10289,0xffd35cd6,0xffa58d61,0xff7605ac,0xff5cd878,0xff94e61c,0x00124c90,0xffd34ab7,0xffb797fa,0xffbe2bb1,0xff4f4960,0xff279e4c,0xff32185b,0xff3ca319,0x0019c59b,0x001d6f7e,0x0008babc,0xffa47fec,0xff466f60,0xff8ddfdf,0xffe674db,0x00262fc2,0x00348990,
-0x001361ac,0xffcd4e6a,0xffcde2f2,0xffee6378,0x001211a0,0xfffea6d7,0xfff1699e,0xfff4cced,0xffe6b1e5,0xfff79c11,0xffbf9663,0xffa516bc,0xff9e3922,0xff7071a9,0xff84839a,0xffbc8ea4,0x000d05f5,0x00763844,0x00579949,0xffd4d1c3,0xffc15b3c,0xffe44c1e,0x003d225e,0x0079206f,0x008515c1,
-0x00594e6e,0x003a63f4,0xfef39584,0xff198a32,0xffc66731,0xffe029c8,0xffef4444,0x00108481,0x0008d05b,0xffb28ccc,0xffd4f157,0xffef7b3b,0x000ee723,0xfffbaa2b,0xffef1efd,0xfff472a6,0xfff05b56,0xfff4ecdb,0x0015290c,0xfff59863,0xfffc738b,0xffe3b6b4,0xfff4267a,0x0020683f,0x001f753d,
-0xffeac7e4,0xffa9761a,0xff7183e7,0xff5d5ff8,0xff87d683,0xffccff39,0x0019ca2c,0xffca539c,0xfef52b50,0xfea938e4,0xfeb2562e,0xfefe4462,0xff0b1f5e,0x001d4380,0x00665120,0x003af9f0,0x001a5d85,0x00413e1b,0xfffdbc77,0xfff84711,0x00003568,0x00015a64,0xfff541f4,0xffe9bcbc,0xfff6e796,
-0xfffe33dc,0xfff2a560,0xfff8551a,0xffee36f1,0xffcfec61,0xffc14db2,0xffd7f02a,0xffc2c1cd,0xff9e7fd1,0xff971f1a,0xff93af96,0xffc4034f,0xfff5c0a2,0x0033d38f,0x0036f2eb,0x003601d8,0x003008e5,0xffeeb7d7,0xffd40bce,0xffcad675,0xffad9e4d,0xff8bd67d,0xff66b1bf,0xffdcee53,0xff0e7e2b,
-0xff8051b5,0x000fb676,0xfffea0a8,0x00086f18,0x0025da69,0x0022a36f,0x001715ea,0x0020bc02,0x0015d1c5,0x000f032b,0x00144523,0x000c4cb9,0xfffc9c68,0xffddab16,0xffca9523,0xffc85bf2,0xffcdfb0e,0xfff1a6da,0xffe75880,0xfff71e7c,0x000f4a71,0x0003b90a,0x001136f7,0x000d39b0,0x00094bd5,
-0x00191d8e,0x0026331e,0x00335877,0x002815ab,0x001c8cf7,0xfff31d1f,0xffee5c33,0xffc0f0f2,0xff58de26,0xff36da80,0x001195ea,0x000d13c6,0x0042e449,0x00278f14,0x0039ef52,0x003a1f7b,0x00355e1e,0x002e101c,0x0025902c,0x001a8fc5,0x00077847,0xfff20ec6,0xffdd8533,0xffd1257c,0xffd50c28,
-0xffd83eb2,0xffdb9d0d,0xffd417d1,0xffd3f358,0xffe10bf2,0xffe04a93,0xffe2a221,0xffe4be04,0xffef86fb,0xfff2568e,0xffe8f255,0xffe35d0f,0xffe77179,0xfff7f548,0xfff572c1,0xffe6212b,0xffc2089a,0xffdd9464,0xfffcd762,0x00206526,0x002a7d22,0xffa9e528,0xffb1c518,0xffbec31c,0xffa777a4,
-0xffa65af6,0xffa72183,0xffb14ac2,0xffb44a51,0xffc577f8,0xffc36d79,0xffd742df,0xffcb2c30,0xffdfe973,0xffd4b6eb,0xffdfb9f5,0xffd7b3ee,0xffdc5967,0xffde8f02,0xffe5e91a,0xffd0ec95,0xffd33ef6,0xffebd556,0xfffb33f1,0xfff8bc8a,0xfff7015d,0xfffaf39d,0xffefd10a,0xffe5eae4,0xffdc49aa,
-0xffd5d8c5,0xffd2de41,0xffccdf6f,0xffd3b3ee,0xffd13474,0xffcb3c57,0xffbcc250,0xffe241e6,0xffdc4024,0x000f02bc,0xffd8d282,0xffe5e49f,0xffe2ef6a,0xffcb98ea,0xffc6e661,0xffbd8ffc,0xffc13477,0xffd1fa28,0xffc654d7,0xffc7730a,0xffce74dc,0xffe2b6e9,0xffe53fe0,0xffdf73eb,0xffe5c73c,
-0x00051ade,0xffec1b0b,0xfff77c29,0xfff737e5,0xfffa8804,0xffffa9ef,0x00055b80,0x000b7e9b,0x00032819,0xfffcd979,0xfff5b93a,0xffee3d28,0xffe55cdd,0xffdbb194,0xffd96707,0xffda3a10,0xffdde84d,0xffe18def,0xffc9e5ff,0xffbf724f,0xffdc34d4,0xfff9735c,0x001904d5,0xffc697dd,0xffee3a9b,
-0x000e014b,0x0015500d,0x00187547,0x0017af3c,0x0020d284,0x00267e90,0x0028abb8,0xfff9dad8,0xffd455a0,0x0029934e,0x00003881,0xffe446d2,0xffd10434,0xffd8b97a,0xffd773de,0xffd8f127,0xffd9e636,0xffda6e84,0xffdcd94b,0xffd8f254,0xffd6b5df,0xffd47541,0xffd25cdf,0xffd10e87,0xffcf56aa,
-0xffcf7dca,0xffcd72f0,0xffca8406,0xffc7f018,0xffc05fce,0x0026eca6,0x0022470d,0x003b90fb,0xffec8c95,0xffbb1628,0xffaa9932,0x00070503,0xffc3e0ce,0xffa84de5,0xff9d68b9,0xff9e098d,0xffa974ec,0xffa2d804,0xffa3a43a,0xffa54db1,0xffc5da26,0xfffffaf1,0xff9ea00e,0xffbc1271,0xffe5135d,
-0x003351aa,0x001cbb30,0x0023363a,0x0023cb48,0x002888f3,0x002b6de6,0x003161e0,0x002b8ad6,0x002af493,0x0028e164,0x002cf458,0x002b10d9,0x00248892,0x002164a6,0x001fb138,0x001f33e1,0x00254cff,0x003aaf67,0x00313108,0xffc0b347,0x00253287,0xfffed812,0xfff5165d,0x000c676c,0x0010f73a,
-0x00158705,0x0008a495,0xffefaeef,0x000c5ca3,0x001314f5,0x0005594a,0xfffe9b06,0x0003f977,0xfff29605,0xfff9afb1,0xffac5216,0x000b69b9,0x00184907,0x0017d4f6,0x00248ff5,0x0035eee7,0x00450973,0x0055b062,0x00469609,0x003ca72d,0x00313fb6,0x0038f012,0x003337a6,0x0022df72,0x0019c344,
-0x0019ffc0,0x002222ae,0x002f7384,0x0043097a,0x0021aadd,0xfff5d53b,0x001103ee,0x000944ab,0x00031031,0xfff83e19,0x001366be,0xffe6cfbb,0xfffcb41b,0xffea9484,0x001f01ab,0x0002105e,0x000ef28b,0x00030ae0,0x0015feed,0xfff235bd,0xffebf7d5,0xffcec57c,0xfff0be0a,0x0017f8ad,0x00128d25,
-0x0022bb87,0x003cc292,0x005192b5,0x0070c248,0x00521607,0x004dd6a2,0x00403938,0x0057541f,0x004b45e6,0x002466bc,0x00119b75,0x000c3e6b,0x001bdec8,0x002aae5e,0x00753fdf,0x0033d7a8,0x00150849,0x0034e143,0x002bdd20,0x00142ae0,0x0020b2d4,0x004748d7,0x00376a47,0x0037a216,0x003ba292,
-0x002021af,0x0029d867,0x002d2c8e,0x002a7a8d,0x00294b8e,0xffd0dd37,0xffe90d03,0xffad5519,0xffc9ddc3,0xffefb1e6,0xffeebf8e,0x00183f26,0x00515f5a,0x008ce6fc,0x00c9c0b5,0x0097d1f4,0x006838ac,0x0041fd9a,0x005bd975,0x0049aa32,0x001096bf,0xffff0ea3,0x000c694e,0x0034f4dc,0x004ce573,
-0x0001b966,0xffbd1cc3,0xff86f88b,0xffc9cc30,0x0018e264,0x001452c2,0xfff6b121,0xffb1f2d4,0xffbbf91e,0xffeb9f95,0xfffd68c7,0x0051aae2,0x004b5d59,0xffee8692,0x0003a538,0x00123b9e,0x002bbe66,0x003a344b,0x000c8f17,0x002f8842,0x0095499b,0x0077ef52,0x0074462d,0x001e63a9,0xffece508,
-0xffd17959,0xfffd8208,0x005d55ef,0x00df551b,0x00a5dfbf,0x0091e042,0x009598c7,0x00124d1d,0xffe152b4,0xffd9123a,0xffd9aa5c,0x00a31862,0x006c0d0b,0x001487ea,0xffcdeda5,0xff759fea,0xff8f0e05,0xffe198bc,0x001c9685,0x0037f770,0x0018f3eb,0xffd6548e,0xffce3496,0xffeae93b,0x001998ed,
-0x000d5a7a,0xfffef77e,0xffeedc96,0xffefff99,0xffd5b6a9,0xffd7e028,0x00163ce7,0x000b5322,0x0026cf93,0x0009a612,0x0017f084,0x003bac85,0x006d9423,0x0046c3ab,0xffe57f01,0xffe6149c,0x0001e343,0x002c4070,0x007f7eae,0x0085274c,0x003c2e46,0x0061c486,0xff0045be,0xfee0e904,0xff9c1a95,
-0xfff091b1,0xffcacc74,0x00253c32,0x000901c0,0xffba1f45,0xffd4632f,0xfff4d06c,0x00114bb3,0x000b53e1,0xfffbd1e2,0xfff209d4,0xffef5e63,0x0007a3d8,0x000da4bc,0x00120929,0xfffb3c9c,0x0000fdd8,0x003c29ec,0x0034cbda,0x0039b021,0x005d409f,0x006a179c,0x005c5352,0x00639d58,0x00787cbb,
-0x006d9738,0x010b775a,0x00e8141b,0xffea48c4,0xffd15722,0xffbc69c7,0xffd44141,0xff5e9e64,0x00a6f676,0x008189d5,0x004d8792,0x00413591,0x0039cf1d,0x00157d1e,0x0001163d,0x000fc2de,0x00068508,0xfffb48fa,0xffeb9fe1,0xfffbd9b1,0x000125d4,0xfff96571,0x000248eb,0xfff05778,0xffdac3f8,
-0xffd3bf73,0xffbb9966,0xffd4ed43,0xfff45436,0xfffc9b83,0x000b53b0,0x00267ee2,0x0037e27a,0x00502716,0x00473742,0x00374198,0x001a739a,0xffdc76cb,0xffe320b0,0x00280d85,0x00525b6c,0x007304e9,0x00a03fd9,0x00817449,0xffc96b86,0xff821693,0xff79c954,0xffd8d0ce,0x0000a46e,0x000a8b9f,
-0x001a3ae6,0x001c22be,0x001798a3,0x002262e4,0x000f80c3,0x00152b91,0x000def2d,0x00063221,0xffe0c19b,0xffcc1e5f,0xffd160b2,0xffd0a33e,0xffcb8e15,0xfff61a6d,0x0003c358,0x00065036,0x0012c2c7,0x001b91cc,0x002e40a9,0x004c9621,0x005f02a7,0x0073de61,0x0095d982,0x00918d7c,0x0096faaa,
-0x00959b02,0x00993512,0x0068a393,0x00171344,0xffd41af2,0x007e2f3f,0x0038255f,0x0006f9dc,0x00260c71,0x002ade72,0x003eeea8,0x004b37cb,0x0038cee2,0x003fa962,0x002fffef,0x0020b497,0xffffe63d,0xffebacd6,0xffda6293,0xffde9cb5,0xffdebe6d,0xffe3eeb1,0xffd61d7a,0xffdb5b61,0xffdd2803,
-0x0000afee,0x0014777d,0x0018aa14,0x001cbaf7,0x001884f2,0x000b7488,0x0006ef06,0x00066c36,0x0006b042,0x0016e317,0x0032351a,0x005afe9b,0x00615aae,0x006ecaf4,0x00869970,0x007c38de,0xfff09b12,0xffce6b44,0xffb0785b,0xffb574a3,0xff9899d5,0xffa82d10,0xffb59d83,0xffc431fb,0xffbee482,
-0xffcf54c3,0xffc8d05b,0xffdd8b60,0xffd025f1,0xffd62666,0xffd490d2,0xffd8e260,0xffd43e2f,0xffd7ba34,0xffd397a0,0xffe5a0eb,0xfffd728c,0xffff0451,0x000db1ec,0x0008fcae,0x000915c7,0x000a5b49,0x000d0a62,0x000dd583,0x000d2d43,0x0015a5e1,0x0018e0dd,0x0021a3cd,0x001d098d,0x00180a0a,
-0x00139a87,0xfff6a733,0xffffbfa8,0xfff5eabc,0xffca61ee,0xffea8c9d,0xffd73c73,0xffd3955b,0xffd7b7dc,0xffcd5cd2,0xffd9f324,0xffd9ea25,0xffce10f5,0xffdac0fa,0xffe188b3,0xffe0399a,0xffdc8219,0xffe61ef5,0xfff1e7fb,0xfff88f8b,0xffe91f91,0x0001040c,0xffff165b,0x000252c3,0x00068ad1,
-0x000a81e0,0x000fbbc8,0x00137f0c,0x001bfdf5,0x0023e5b0,0x002a5513,0x002e1841,0x00312af1,0x003418ad,0x00267a9d,0x001a4794,0x00110dfa,0x000840cf,0xfff1f524,0xfff5b3dd,0xffd40fb4,0xffba478d,0xffaeb1d0,0xffdabc18,0xffb71618,0xffa44b28,0xffa4c5e1,0xffa4a538,0xffaaab98,0xffa68762,
-0xffa5aecd,0xffa77ccd,0xffbfbabd,0xffe3872f,0xffb29271,0xffc7389f,0xffe33c30,0x00014a8d,0xfffba404,0xfffeabe9,0xfffed524,0x00007235,0x0001b1cc,0x0002b7f1,0x000441d4,0x00053c59,0x0006e02c,0x0008dd0d,0x000aec14,0x000fa3f5,0x00088124,0x0003c719,0xfffdd0fc,0xfff8aa3c,0xfff56735,
-0xfff250cd,0xfff6eea6,0xffdd8674,0x002e6df5,0x004e5d2d,0x003ebf7a,0x00184d82,0x00417d62,0x004539fe,0x004014e6,0x003e04d1,0x00316ffe,0x003f8713,0x004057cd,0x003876ce,0x004856a2,0x0023f89d,0x00367f96,0x0043151c,0x0029a0a4,0xffdcee2c,0xffef5a83,0xffed928d,0xffed63a3,0xfff2644d,
-0xfff62ad9,0xfffef171,0xfff7c720,0xfff5d07f,0xfff0bafe,0xfff68721,0xfff53a60,0xffed12b1,0xfff0ec1c,0xfff2a4ac,0xfff738b8,0xfff59e26,0x0000a867,0xfffe2222,0x0052ded1,0x0008bbd6,0x002ee910,0x00191451,0x00056075,0x001742ba,0xfff39d0a,0xfffb3fbd,0x001122a9,0x000b7335,0x0009b115,
-0x000bb300,0x00217446,0x0017543a,0x0011af39,0xfffb36a8,0x00258bf9,0xffe606b9,0xffd6fe74,0xffe44a5f,0xffe41238,0xfff49d95,0x0000f1c8,0x00172c2e,0x00061e76,0xfffcdea6,0xffeea12e,0xfffab47f,0xfffa8d22,0xffebdb54,0xfff750ea,0xfffe1e11,0x000a1aba,0x000c21e7,0xfff692d9,0xfff3cca9,
-0x00306368,0x001ce421,0x0037c24f,0x00143ef5,0x00058504,0x0015ccc3,0xfffeb0e1,0xffe0812e,0x0005317c,0xfff417b6,0x0023c733,0x0004d555,0x002d3e06,0x0020b272,0x000738a0,0xffff49b7,0x00066fa3,0xffe6191b,0xffc4f52c,0xffdad9c7,0xffd97067,0xfff75f6f,0x000c2e64,0x003c8155,0x00131022,
-0x000aa93f,0xffeeee2f,0x000de30d,0x00096657,0xffdc7e49,0xfffa0b4d,0xfffe3d42,0x000b5d43,0x000f6d5f,0x002055d1,0x0019037e,0x0048e3a0,0x002c12e3,0x0033b7c0,0x000ebab1,0x000b1544,0x00371f8b,0x001e1e0d,0x00256725,0x001384af,0x001e5be8,0x0023ad3b,0x0015971f,0x002305ef,0x0014edce,
-0xfffc8b76,0xffd2cb5b,0xffe1d8ad,0xffb73252,0xff973e4f,0xffbc9fee,0xffc92301,0x0003a56f,0x003a89b9,0x0084683b,0x0049200b,0x0016a101,0xffe18fba,0x000fdbee,0x0014d091,0xffdf3480,0x00190e49,0x00308819,0x00421637,0x004ec442,0xff68c115,0xffc94cf6,0xfff5dd5e,0xfffcf1dc,0x00443131,
-0x0038f406,0x00044c4b,0xffc1315c,0xffc3b35d,0xffedb133,0xfffee44e,0x00461e5d,0x003eb76d,0xfffc610b,0x000254e1,0xffffc486,0x003d986a,0x0027cb99,0x005225a7,0x00540024,0x002d8657,0x002375f2,0xffe5aec5,0xffd294b2,0xff99ff5a,0xff6f54e5,0xff7d2f60,0xffce7c09,0x004a8ced,0x0016d2f8,
-0x000bc2ac,0x002c2c20,0xffbcf7a3,0xff914f8b,0xff826c29,0xff82cd46,0x0029518d,0x0040c0fc,0x005a1741,0xffe635b6,0xff729f19,0xff8a4398,0xffc70c22,0x000f2b49,0x002c3945,0x0016af58,0xffd9674f,0xffcb0a46,0xffe53ad7,0x000cd24a,0xfff910dc,0xfff3dd2d,0xfff837bf,0xfff89ae9,0x00095824,
-0xffe15a3b,0xffe0ad89,0xffec40ac,0xffdbe5d8,0xffd36d5f,0xfffad702,0x005308e0,0x00776062,0x00405894,0xffc5c35b,0xffd1173c,0x000ac99c,0x00562de1,0x00b3729f,0x009fa838,0x001b1eaa,0x0033b93e,0xfef7d738,0xfea11442,0xffa9b389,0xffed5dab,0xffdaa13b,0x002a37e0,0x0021c006,0xffbe8534,
-0xffd5cb1e,0xffe937cf,0x000d4ea1,0x00093f27,0xfff8dda0,0xffebe900,0xfff10035,0xfffa8c9c,0x001f5ac6,0x0002a9d2,0x000eb248,0xfff10112,0xfffa38cc,0x001fefe2,0x0019729d,0x000b5cd9,0xffec4d86,0xffd2eb50,0xffc34ddc,0xffd7b448,0xffe5b044,0x006b2cca,0x0038e02f,0xff53cd59,0xff827552,
-0xff9cd5ef,0xffb506c2,0xff66532c,0x00a6e4c0,0x00bcfd07,0x0072cf15,0x003ecc94,0x003d6b9c,0x0009e56a,0xfffccbae,0x000736b2,0x000491b6,0xfffe480c,0xfff00873,0xfff8c284,0xfffe8f08,0xfffe74cd,0x00016397,0xfff8732a,0xffdf1ca6,0xffcd077e,0xffe06a09,0xffcc4090,0xffbfef45,0xffcfa989,
-0xffd919e9,0x0007ce9c,0x00288df3,0x00518376,0x005259df,0x0049bdb3,0x0030b71b,0xfffc9d65,0xfff0a244,0xffe14996,0x001de6f5,0x0030a138,0x00476187,0x007e5c53,0xff8e53e1,0xffcbced1,0xfff9c922,0x0002fc40,0x0013a9a2,0x001dc0e1,0x001b0033,0x0025037f,0x00298803,0x001cb77a,0x0011c60b,
-0x000bc4df,0x00078452,0x0009c257,0xffe2e673,0xffce09ef,0xffc6c300,0xffd0fcfd,0xfff15d3e,0xffe2d446,0xfff04bb7,0x00079103,0x00034dda,0x001d0253,0x00325b05,0x00534b57,0x0061d30c,0x00755ce2,0x008ddf04,0x0073284e,0x0068132c,0x0049212b,0x0058cb76,0x0032d458,0xffce726c,0xffaf34a2,
-0x005b48e9,0x005fc6ea,0x0068c94b,0x005ca29d,0x005c9ef6,0x005b2c12,0x004a41cc,0x00430bc1,0x003a7c9a,0x002e806b,0x0018ee00,0x00067a68,0xffed40c5,0xffd72252,0xffd938ab,0xffe253df,0xffed8818,0xffe167f8,0xffdaaae8,0xffdd12c8,0xffe2d642,0xffec9c6f,0xfff3b7b1,0x00069ed8,0x00093b1a,
-0xfffcfb2d,0xfff3a9f3,0xffee14f8,0xffee34ea,0xfff6f696,0xfffe397b,0x00018be5,0x000d06bc,0x002a1ae1,0x0051a845,0x00655bf2,0xffc4f7a7,0xffc6eeeb,0xffda2502,0xffc74a51,0xffc2bf57,0xffc499c7,0xffcd83cc,0xffd12363,0xffd94591,0xffd26d33,0xffe23046,0xffd0ce1d,0xffdbf765,0xffcfb2a7,
-0xffda4b77,0xffd4bfaf,0xffd88a35,0xffdd3210,0xffeb2690,0xffdc2559,0xffd7c24e,0xffe9de15,0xfff1fdff,0xfff0fe87,0xfff0e31f,0xfff5522a,0xfff2d088,0xfff27dae,0xfff15c8c,0xfff2aadc,0xfff31819,0xfff5fd24,0xfffc0888,0xfffc1240,0xfff3b02c,0xffdeb078,0xffe626ee,0xffe1d5c0,0xfffab065,
-0xffd8150c,0xffe3229f,0xffdce5b6,0xffcc18d6,0xffc80df4,0xffc33361,0xffcd3f46,0xffdef820,0xffd8ac0e,0xffd6c6e0,0xffdfdefd,0xffea1fa8,0xffe6753c,0xffe89c36,0xffe515ba,0xfffbf64d,0xffdf956a,0xffe52f15,0xffea052a,0xffeddfde,0xfff4efbd,0xfffb8218,0x000222b1,0xfffdd55c,0xfffc9a73,
-0xfffca7a6,0xfffd01e3,0xfffd49fd,0xfffca1a9,0xfff2840c,0xffec7583,0xffea8d59,0xffeb35a5,0xffd40f83,0xffca0a64,0xfff1317c,0x0000e66c,0xfff9c359,0xffe0f6a8,0xfff92dcc,0xfff7ddf4,0xfffe0a98,0xffff7d57,0xfffb9c61,0x0003776b,0x0007a1d5,0x0007e30a,0x0007f042,0xffee46ea,0x000a9ead,
-0x00097ff7,0xfff710bf,0xffd27570,0xffdd01a1,0xffdcb765,0xffde395d,0xffdf8181,0xffe057ce,0xffe2a4f9,0xffe1f66f,0xffe204e7,0xffe195b0,0xffe148c7,0xffe15b1f,0xffe3b848,0xffe11fc1,0xffde8841,0xffd9d159,0xffd5d89b,0xffd19238,0xfffb4cf7,0xfffe8072,0x0006736c,0xffca3fa7,0xffc51186,
-0xfff945a7,0xffd5067c,0xffc3a57b,0xffe645b3,0xffdd0f7f,0xffddb8f8,0xffe7ac81,0xffe8f0b2,0xffec5c20,0xfff00f1a,0xffc9d03d,0xffd640cf,0xfff55718,0xffc67c52,0xffc6f329,0x00004246,0xfff6d5a7,0xfff774c5,0xfff84587,0xfffcdbda,0xffff6471,0x0004a214,0xfffedb3f,0xfffdab6d,0xfff9f7d8,
-0xfffded06,0xfffb3d16,0xfff31883,0xfff13833,0xfff2e683,0xfffcf1e0,0xfffd315e,0x00148d59,0xfff863d9,0xffd91384,0xfff89f72,0xfff25137,0xffe79ee7,0xffeb9362,0xfff8df58,0xffec5fac,0xffdbfb6b,0xffcdcaad,0xffe47ee6,0xfff4b8ec,0xffe7bf54,0xfff77276,0xfffa06d1,0xffe17963,0xffe54078,
-0xffc86211,0xffda45a9,0xffe8eee4,0xffe39f83,0xffee1e78,0x00002593,0x000ee574,0x001d57fa,0x000da6ab,0x00022671,0xfff2cd4f,0xfffb608b,0xfff4b9ed,0xffe2bb2d,0xffdd2af7,0xffe708b6,0x0007e0a5,0x0009ef87,0x001b485e,0xfff1e42f,0xffd694d5,0xfff05232,0x000c2a0c,0xfff04f69,0xffe55309,
-0x0000e293,0xffd2f8a2,0xffe1056d,0xffcb861c,0x0002b332,0xfffec0c1,0xfff957a6,0x0001e123,0x000aa959,0xfff84e8f,0xffe55fae,0xffc5b9f6,0xffcfc73f,0xffe1f097,0xffdb1e5b,0xffe1fbb3,0xfffd7e5d,0x00101928,0x002b0270,0x000ca174,0x00062aea,0xfff126df,0x000631a9,0xfff61d04,0xffcb10c1,
-0xffc1256d,0xffd1d398,0x000d551a,0x0007e5fc,0x0052d459,0x000b52ab,0xfff710b1,0x0010c5d7,0x002ffb6d,0xfffbb1da,0x000478a9,0x0036432d,0x0019f05c,0x00164b87,0x001277f3,0x001d87af,0x002874cf,0x0022fbe9,0x002c1451,0x002b25ef,0xffed23b7,0xffe3ef37,0xffac3ea9,0xffa82fc2,0xffb2aded,
-0xffaa97f3,0xffc36d04,0x00004951,0x00393f4c,0x006d1edc,0x00393a6b,0x000a06f9,0xffdcf833,0xfff598f4,0xffe379cb,0xffa8f154,0xffa88565,0xffd742a6,0x003d8051,0x003c877b,0xff9ccc40,0xff8fcec6,0xff6aae95,0xffa8b74c,0x000f4662,0x00131114,0xfffafbf3,0xffbc544e,0xffc3a79e,0xffecc970,
-0x0000135a,0x003c4c98,0x003580cf,0xfffe1de9,0xfff6e058,0xfffe6dda,0x0029cce3,0x00313cc6,0x001ef809,0x0031f7c8,0x005ee975,0x004d86c6,0x0047e051,0xfff2b49b,0xffc3669e,0xffc51904,0xffe42974,0x0039ebf1,0x009b0c9d,0x0056729b,0x0025d81b,0x000b27d8,0xffa757a9,0xff8ef823,0xff9d7f2a,
-0xff896339,0x00897037,0x0054b22a,0x0023d8e5,0xffe51bda,0xff6b02c1,0xff77388b,0xffc0d751,0x0002e115,0x0027ccda,0x00124f0f,0xffe04b8b,0xffce77a0,0xffe1e339,0x0010fb15,0xfff92b6b,0xffecb6af,0xffdcae1c,0xfff94c81,0xfff21065,0xffd70316,0xffe2e7f0,0xffc0c37e,0xffbdf630,0xffc971dc,
-0xfffb688f,0x004c6617,0x00579e24,0x00207763,0xffbec534,0xffd08c18,0xfffba6ee,0x002544a8,0x006d365f,0x005d1034,0xffff1635,0x0033f3eb,0xff022bd2,0xfe6eb70a,0xff7a80bb,0xffed0aea,0xffb7b0e0,0x002e3542,0x00166cd4,0xffc6a87a,0xffd1e416,0xffeb61d3,0x000abd1d,0x000fc5a0,0xffffc2c6,
-0xffe94812,0xffe837d7,0xfff8fb8a,0x000af62b,0x00007a98,0xffe411af,0xffe717fd,0x00222449,0x0022f78d,0x00221891,0x001389ea,0xfff1b528,0xffcfb2ba,0xffd442ad,0xfffff275,0x0013ead1,0x00b8edd0,0x005a4bd6,0xfef6f540,0xff16a3f0,0xff2d4dfa,0xff520f3e,0xff62a371,0x0073df00,0x00c995a5,
-0x007fcff2,0x0046feb8,0x0031a7dd,0x000c3f5c,0x00044c86,0x000c5c96,0x0005d7ff,0x0002b2c0,0xffefc746,0xfff754a3,0xfffd63be,0xfffdbeb2,0x000132b0,0xfff1ad7d,0xffdd172c,0xffd341a7,0xffc26fdc,0xffce1677,0xffd7d7d9,0xffd20b4c,0xffdba119,0xfff50f1f,0x000ebda1,0x002fa69c,0x001a4a47,
-0xfffc1e89,0xffc7d964,0xffa86276,0xffb79f4f,0xffe681a9,0xffbc99af,0xffa2b2ac,0xffa9e03b,0xfff51ef6,0xff1f64e8,0xff4d8df6,0xff9418d4,0xffd1849d,0xfff3b13f,0xfffc719e,0x0008e961,0x00143b16,0x0011e547,0x00152242,0x0004b022,0x0005cb64,0x0003291a,0x0005ef8b,0xffe1b163,0xffce40f7,
-0xffc9f3b6,0xffbf614f,0xffb9a006,0xffd0d6e6,0xffeae0ee,0xfffaf405,0x0007eb39,0x00122681,0x001c77a5,0x0028b1cb,0x002c3acf,0x00307bf1,0x00327e00,0x003ce20a,0x003129a7,0x0010ad4a,0xfff5134a,0xffbd97dd,0xff749407,0xff2be65e,0x004b3a95,0x00237b73,0x003515a2,0x00354d26,0x003d2468,
-0x003ffa3f,0x004578b4,0x003b152f,0x003f4f68,0x0036ac11,0x0028d8c1,0x000cdc22,0xfff39c83,0xffdbdee1,0xffd84bd4,0xffd66fd8,0xffdcfb63,0xffdd4c2d,0xffe2ba23,0xffe2dc33,0xfff20ac2,0xfff4f0e9,0xfff63f5f,0xfff1efbd,0xffecfbbc,0xffe4827b,0xffea152c,0xfff94d57,0x0008f4b9,0x00114525,
-0x00194c34,0x0019c55d,0x0030e14e,0x003da878,0x00502d18,0x004aaf76,0xffd7bee7,0xffbf656f,0xffabe459,0xffaf2276,0xffa45b9b,0xffb49cbd,0xffc719aa,0xffd64893,0xffd12129,0xffd83432,0xffce0df0,0xffd98c86,0xffd11c38,0xffcf54fa,0xffcfa886,0xffcfe215,0xffcbd20e,0xffcc526c,0xffc5a55a,
-0xffd0f212,0xffe5b02e,0xffea84b1,0xfff8d8ff,0xfff78ecf,0xfff9f42d,0xfffd7b35,0xfff4b403,0xffe9afb4,0xffdedc12,0xffe0d48b,0xffe47599,0xffebeca1,0xfff2c00f,0xfff636c0,0xfff97655,0xffe08436,0xffdeeb31,0xffd3543d,0xffcfff1c,0xffd14c20,0xffc5b2bb,0xffc49579,0xffbfbd12,0xffb869c5,
-0xffbe781a,0xffbc2ba4,0xffb6eaf9,0xffbcde73,0xffc5ceea,0xffc4f18d,0xffc99f8d,0xffd3c04d,0xffd43c64,0xffe08cdd,0xffdd9213,0xffed1b54,0xfff28702,0xfff2fc5e,0xfff755c0,0xfffbc2de,0x0001160a,0x0007297e,0x00095716,0x000bcf28,0x000b0d88,0x0008ad79,0x00034e6c,0xfffc898c,0xfff2e639,
-0xffe96744,0xffe43a52,0xffe025ad,0xffd7b727,0xffd75337,0xffbb6a1c,0xffb6cf38,0xffcf180b,0xffbb85a7,0xffb210cf,0xffbfaa3a,0xffc27fff,0xffc451a5,0xffcb3bd3,0xffca4cbd,0xffcbd5b1,0xffcfbfdd,0xffb893d0,0xffc4877f,0xffd49aff,0xffc02769,0xffc92c09,0xffe8e22b,0xffe5839f,0xffe82197,
-0xffe9e3c7,0xffebafbc,0xffed3877,0xffef5924,0xffed352f,0xffeba0fd,0xffeaa864,0xffe94c71,0xffe8a212,0xffe8b3b7,0xffe5e26e,0xffe357a5,0xffdf7ae4,0xffdb1f21,0xffd89449,0x00220e07,0x001e8469,0x001b8433,0x003a3b9d,0x0028cf9c,0xffec633a,0x0039a08e,0x0026f513,0xfff86a81,0xffee6e4d,
-0xffec021e,0xffe3fe83,0xffec8302,0xffed3270,0xffe5ab3b,0x002d0047,0x003f2c35,0xffe1b7e6,0x0024239f,0x00357198,0x00192553,0x001a5beb,0x001f73b3,0x0020b87d,0x0025f3f7,0x00292d45,0x002f41c5,0x00286460,0x0026af2e,0x0021ecd8,0x002a1937,0x0029ac83,0x00215078,0x002526bf,0x002451db,
-0x0020c51d,0x0022a2c3,0x002a8b85,0x0031e3fa,0x001be176,0x002a164f,0x003540db,0x001584e2,0x0015a56e,0x00220bcc,0x000dbf35,0x00122571,0x00162a62,0x0024c6de,0x0021d146,0x0021946d,0x0023f9a3,0x00237c0b,0x002b7fd5,0x00138330,0xfffcaf4e,0x0016b4ed,0x0010ac0a,0x00228714,0x002b5323,
-0x003d451f,0x004742de,0x00533acf,0x003fc0cc,0x0035c775,0x0029dd3f,0x003ccae2,0x003f71b6,0x002e5a77,0x0039b258,0x003822fd,0x00306c32,0x0035ad8a,0x002569fb,0x001edd83,0x002e1a6b,0x00263f61,0x003922a1,0x000fed01,0xffff2c86,0x0017a5b1,0xffed39c7,0xffddcf47,0xfff0d4d4,0x0002ed26,
-0x0019f84e,0x0011a6fd,0x002b3b38,0x00305a7b,0x001fd8ee,0x000f0325,0x0009bc79,0x0005b65a,0x000ce4db,0x00226a31,0x00312ced,0x005127b7,0x00627103,0x0080190c,0x005710a8,0x00509bf5,0x003af8b3,0x006377ec,0x00645c6a,0x0034857d,0x004fce0a,0x0044ff75,0x00303881,0x0038f800,0x0046254a,
-0x0032a63d,0x0037a54a,0x0035a3e8,0x004a4010,0x00094698,0xfffae879,0x00263a6f,0x0006ffbb,0x0005f19e,0xfff1be84,0x001557dc,0x0028ed40,0x00184fea,0x0031ce08,0x00326f1c,0x0016767f,0xfff12434,0xffd91017,0xffd2ac7d,0xffeac6e1,0x001a4f9f,0x0045f9e4,0x0086d625,0x00b5d351,0x00d82c7c,
-0x009206bf,0x005fb3f7,0x0037653d,0x0076cb57,0x0081f093,0x0049084d,0x007a2f7f,0x007479c3,0x0057aabd,0x00630a78,0xffce727a,0xfff5c440,0xffde64e1,0xffe6f10d,0x00229cee,0x002b55eb,0x001426f6,0xffd8f4e9,0xffd6f0f9,0xfff8d799,0x00025d75,0x0031d281,0x002ab2eb,0x000cefd3,0xfff970db,
-0xfffc6d61,0x00398a43,0x004c75a1,0x00696800,0x00899080,0x008cafe9,0x0060950a,0x00258d8d,0xffe4e6e9,0xffad4ba5,0xff999cde,0xffd8531c,0x003fa255,0x00ab7a0d,0x0082ee97,0x0076ff3f,0x008d5d3a,0x0027f49c,0xffffb616,0xffe95c3a,0xffda335f,0x004c7641,0x006b7da8,0x008a5a80,0x00261ade,
-0xffa179c5,0xff8d25a2,0xffb536a3,0xfffce3c1,0x001fb191,0x0012f147,0xffe6e6f1,0xffd18bc5,0xffe0fba2,0x0009e7f6,0xfff8eb01,0xfffa674f,0xfff772c7,0x0009a344,0x000cb95d,0x00053a88,0x00206a6e,0x002dd140,0x0047fead,0x0027291a,0x003b6751,0x0085396e,0x005e74ba,0x0015819d,0xffb32bff,
-0xffe009a9,0x00278222,0x005ea768,0x00c80fc5,0x009dbb4c,0xffe4e182,0x00239b02,0xff37fe8f,0xfe6c2194,0xff62e4dd,0xffce148d,0xffc06092,0x002f7fcf,0x002741e3,0xffdb18bb,0xffdcb91e,0xffea2029,0x000b35f8,0x0014a17e,0x00039c83,0xffe69076,0xfff1b07f,0x000239c9,0x001d1e07,0x00150469,
-0x00199155,0x000a33e9,0x00154b4d,0x001fed2e,0x001a9a9d,0x0033b5d9,0x003cb4bd,0x00432ba6,0x003f0b68,0x0046654a,0x002cbaca,0x00c2621e,0x00aa142a,0xffe06cc2,0x0033de7b,0x00491d63,0x00462ff7,0xffd82e04,0x00f61384,0x00f03038,0x00a5568d,0x0068d01b,0x002e34b2,0x001b7edd,0x000b8d3e,
-0x000f0732,0x0007756b,0x00055f89,0xfff65e1c,0xfff8d051,0xfffd860b,0x000889d8,0x0007e0c7,0xffffc2ed,0xfff12136,0xffdfeaf6,0xffdd2ef0,0xffdbf987,0xfff0600c,0x000e0f33,0x00266bb1,0x00438403,0x00526969,0x005ece29,0x005a6fb6,0x00428bbf,0x000ed016,0xfff6d457,0x0000a79c,0x0009ee54,
-0x006d67fb,0x00a1a384,0x00e659ed,0x00d26831,0x000df3cf,0xfff33151,0xffbe6b67,0xfff43573,0x00109d96,0x000939bb,0x000cb774,0x00283089,0x00229b36,0x001b666a,0x000e8fdd,0x0004ae13,0x00024bc9,0x000cda4a,0xffe7a587,0xffd44a9a,0xffc79b2f,0xffd29842,0xffded6c9,0xffdf5899,0xffea7c3e,
-0xfffa0dec,0x00058fed,0x002084fd,0x00463de2,0x007f184a,0x008b9f58,0x00a2a297,0x00c2034d,0x00a7c397,0x009dde40,0x009069fa,0x00a28a28,0x0085f100,0x00403cb0,0x00201f9f,0x008bd86f,0x00846246,0x005a66e1,0x0065a5fa,0x0059c778,0x005c5cbb,0x004d5ae4,0x00449697,0x0043cfce,0x003b0df1,
-0x002a724a,0x00199b1a,0x00003b49,0xffe3b15f,0xffe15733,0xffe8fa17,0xfff5cd65,0xffeba6cf,0xffe6a368,0xffe301f0,0xfff2a795,0x0000d71c,0x0007ab0a,0x001c19c7,0x001c9820,0x0010758a,0x000b41b8,0x000355d3,0xfffab1e5,0x000ba9c9,0x002b51e3,0x0059286d,0x0052e9e0,0x005fbd11,0x0077537e,
-0x00845dd9,0xffee42c4,0xffe05377,0xffe63556,0xffe299c6,0xffd5389f,0xffdda931,0xffe7baaf,0xfff03a39,0xffe9bfa0,0xffe59db8,0xffe571e9,0xffde4f97,0xffd6fea9,0xffd25653,0xffd552ca,0xffd52787,0xffd3f432,0xffda9b5c,0xffe6d32a,0xffe9acf4,0xffe8ec29,0xffee59af,0xfff0cf16,0xfff2ab9c,
-0xfff610d8,0xfffb32db,0x0001eb5a,0x0009f082,0x001097ec,0x001686af,0x0017cbbf,0x0020c019,0x00202b07,0x002050f1,0x00192b85,0x00028a94,0xffe8daa9,0xffe4dc17,0xffd2fe52,0xffd87582,0xffd6a9f3,0xffcfd5e6,0xffcca1e3,0xffc7c683,0xffcd5dc5,0xffd8722a,0xffdfe103,0xffe5c424,0xffe581ec,
-0xffec0665,0xffe8d46f,0xffe5d563,0xffefd9ad,0xffe91614,0xffea0f15,0xffe0d90f,0xffdefe05,0xffe5d27b,0xffe93b5f,0xffeed80e,0xfff3b619,0xfff84762,0xfff9ef2f,0xfffe0691,0x00043c6c,0x000b2fc6,0x0013459a,0x001a8fe9,0x000c36bf,0x000016d2,0xfff74e15,0xfff229cd,0xffe5feda,0xffe1e42e,
-0xfff3db4a,0xffeaeb10,0xffc886af,0xfff17ab6,0xffe8d857,0xffcaab68,0xffcdb949,0xffcd6f8f,0xffcb5a08,0xffcd4cec,0xffce7750,0xffce4bcc,0xfff69e3c,0xfffbc0c3,0xffd3899c,0xfff578be,0xfffa730d,0xffe3e7bc,0xffe9c387,0xffeb560b,0xffec5929,0xffedd6fd,0xffeef964,0xfff0893e,0xfff2db40,
-0xfff4c6dc,0xfff60b33,0xfff75328,0xfff848dd,0xfffd09d5,0xfff7ba6a,0xfff4edc9,0xffeffdd2,0xffeba432,0xffec82ad,0xffdc814c,0xffe54389,0xffd51475,0xffda0ae4,0x00000dc9,0x00496788,0xffce1765,0xfff3f117,0x003415c4,0x002d0aa9,0x002c87a0,0x002da9a3,0x00386e68,0x003cba7c,0x003e0ecd,
-0xfffd11e7,0xffd8db73,0x004a2cf1,0xfffe017f,0xffd9ee3f,0xffd2d448,0xffdcdb44,0xffd8ea5a,0xffda51d2,0xffde2ff6,0xffe07d87,0xffe53206,0xffe024b2,0xffde7965,0xffd95ed0,0xffdd93b4,0xffdadb12,0xffd1c875,0xffd35b12,0xffd76e22,0xffe65e1a,0xffe17b0f,0xfff34f79,0xffd4d1ec,0x0014b77d,
-0xffdf4a4f,0x00026bf5,0xfff073a5,0xffde0251,0xfff317d0,0xffd176c3,0xffc7e4ef,0xffd0cd4f,0xffd721fe,0xffe73c6d,0xffe2a3b0,0x0002d80d,0xffffea0b,0xffeccb0d,0xffe30b8c,0x0001428a,0xffc1c6f0,0xffc70971,0xffc680ce,0xffcd3a2e,0xffdcec50,0xffe8446b,0xfff365d6,0xffe4b76b,0xffd9e8b7,
-0xffc9fe60,0xffd47672,0xffd03d77,0xffbf20a0,0xffc34a21,0xffd1f5fa,0xfffa3e02,0xfff2a17c,0xfff40a04,0xffd379ec,0xffe000ff,0xffe7655f,0x001ff0ba,0xffee3927,0xffe2472f,0xfffabc92,0xffd159b8,0xffc91f3b,0xffc9c16c,0xffe4a0cb,0x00054a2b,0xffee8437,0x0010398b,0x000a889e,0x0007b4a6,
-0xffedb0ce,0xffdb31f6,0xffc66a57,0xffb8d14a,0xffbcf743,0xffbe44b4,0xffd803a5,0xffe72ace,0xfffeafad,0xffe25e38,0xffdaf165,0xffc10e83,0xffd5976b,0xffc70f48,0xff9aa682,0xffa75ea5,0xffc29c6f,0x00085fee,0xfff6d468,0x0024d706,0xfff342db,0xfff7bdea,0xfff9b918,0x0037a644,0xffeae3b2,
-0xffe84d76,0x001f732f,0xfff6eb59,0xfff2f1c5,0xffe7144d,0x00148725,0x0020f9b7,0x00162dde,0x00293fbe,0x0027692a,0x0015db82,0xffe0f450,0xffc4d81c,0xff9f24fe,0xff8b4e98,0xff92cfb0,0xffa1984c,0xffd974cc,0x000704cf,0x002b0caa,0xfff7c60d,0xffccb8a5,0xffa0c3a2,0xffbe38df,0xffb6a937,
-0xff8325c8,0xffa494be,0xffddc664,0x0049faff,0x00375cee,0xff4d50bd,0xff8d23f9,0xff8ca450,0xffaf8456,0x0013d652,0x001e5d61,0x0007de29,0xffd86c07,0xffd78f81,0xfff36bee,0xffff5a4d,0x00214cf3,0x001ccbe3,0x00110200,0xffec8aca,0xffe845d2,0x002339db,0x0025f290,0x00441f95,0x0043b269,
-0x00221c70,0x001979f1,0xfffbf1db,0xffc1b2c8,0xff9af4f6,0xffab95f5,0xffcc6a81,0x001687d9,0x0050f7c5,0x0011cbf8,0xffd2f769,0xffa7b1cf,0xff676f34,0xff60eeef,0xff7b3f65,0xff5ccb17,0x003b2b77,0x003edfa4,0x0054cd0d,0x0010143c,0xff7a1ce0,0xff72473c,0xffa5f029,0xffee4eec,0x001388a8,
-0x00094362,0xffe94ef2,0xffd5e4ba,0xffde066f,0x0003d805,0xffe99ba7,0xffe6f49a,0xffde8f4f,0x000647ee,0x0016e8bc,0xffeb0b08,0xffc2e4ff,0xffa2c4b8,0xff8e0b6d,0xffaedbb2,0xfff3c173,0x005d7ca0,0x003de4c9,0xfff75284,0xff947a30,0xffc090b9,0x0002d76d,0x0039a432,0x0076df12,0x004ecb5f,
-0xffc9aa0a,0xfff9b7d3,0xff3eedf7,0xfe4d3f74,0xff417fdb,0xffb25363,0xffbc7414,0x00218ea5,0x001ae427,0xffe2d40f,0xffd980fe,0xffe66b1c,0x00062ba0,0x00107d49,0x0001e4c0,0xffe3bb47,0xffe82c30,0xffee4741,0x000cac9e,0xfffa180a,0xffed44f8,0xffe64fa1,0x000241cc,0x000ff890,0x0007d913,
-0xffd3a919,0xff955eec,0xff702ad2,0xff6a8840,0xff9ee812,0xffd56c99,0x003e028a,0xffcc80d4,0xfea0508e,0xfeccc158,0xfeffced4,0xff2d03ff,0xffa178d2,0x004cf617,0x00f1c890,0x00b1319e,0x005850bc,0x002a8048,0x000c4a2b,0x000fc024,0x0008d3a6,0x0003a7e5,0x00056e69,0xfff652cc,0xfff38349,
-0xfff9da43,0x000361c8,0x0000a2da,0xfff93fc1,0xffe987da,0xffda7425,0xffd8c242,0xffd06aa1,0xffc2a88b,0xffbc8c9d,0xffc6b424,0xffddaeb4,0xfffdd795,0x001e8d95,0x000a8088,0xffe707b0,0xffaba567,0xffa56558,0xffb0ff21,0xffb73bbb,0xff72b18b,0xff3f915d,0xff2cea6d,0xffb3cfe2,0xfef42ae8,
-0xff6be8ce,0xffd02f04,0xffdccccf,0xfff27b05,0xfff92d50,0xfffd003a,0x00122e88,0x0010444c,0x0005ed1e,0xfffcc040,0xfff9e801,0xfffa5485,0x00018001,0xffe59502,0xffd4e6d9,0xffc2781c,0xffbace77,0xffc003aa,0xffba5e12,0xffd4b94f,0xfff0389d,0xfffbc3e0,0x000b2252,0x00141d87,0x001cc810,
-0x00196993,0x0017d311,0x0009d849,0x0011747d,0xfff63efc,0xffc01d5c,0xff9ed110,0xff726c24,0xff3467cf,0xff07c95a,0x001e7a4a,0x0024bd2e,0x005e35e1,0x00429654,0x0049f54f,0x003e60cd,0x0036ab79,0x0033e5a1,0x00335fe0,0x00332e0f,0x0028718b,0x0019aa0b,0xffff86a6,0xffe3a983,0xffd92646,
-0xffd741c0,0xffde0663,0xffe76e5b,0xffea7249,0xffecd088,0xffe5fdd5,0xffdd1b9f,0xffdba18f,0xffdd8497,0xffdcb0be,0xffd7c820,0xffe43d92,0xfff7c54c,0x000d6316,0x000e7647,0x000acc01,0xfff3c4b0,0x000b7531,0x0014e6a7,0x001f327e,0x00228a22,0xffc9eef5,0xffc40480,0xffc70a2d,0xffc50fd8,
-0xffcb8fbe,0xffd626c5,0xffe79175,0xfff23378,0xffeefc24,0xffe82815,0xffe0b9e4,0xffda7aaf,0xffda5027,0xffd08379,0xffd3984a,0xffce590f,0xffcc3cd9,0xffcce174,0xffcc82ae,0xffc9dc38,0xffd0d1cb,0xffdb0fd3,0xffe3d6ea,0xffe8589c,0xffee1250,0xfff5b1f7,0xffe991c1,0xffdcc7eb,0xffd19ee9,
-0xffcadb5d,0xffc9e098,0xffcaee6c,0xffd66e8a,0xffddf422,0xffe383dd,0xffd6644b,0xffc448a4,0xffbc0f3b,0xffdcb0e7,0xffbf2d43,0xffc0dec1,0xffc0747a,0xffb2fafb,0xffafe424,0xffae7d62,0xffaf9c17,0xffb784df,0xffb5a3ad,0xffbc0f6c,0xffbf31e7,0xffca61d7,0xffcf8d9d,0xffc8735d,0xffd2024d,
-0xffdf609f,0xffda5fb0,0xffe3bde2,0xffe30a1a,0xffe621ea,0xffea18a2,0xffedca0f,0xfff3cecd,0xffedad4d,0xffe973a4,0xffe30108,0xffdd5a14,0xffd52614,0xffcac71a,0xffc6e653,0xffc22e52,0xffc0dd79,0xffc14ba7,0xffc63bed,0xffc05a42,0xffc07a51,0xffd1377b,0xfff4f1ab,0xffb7fc91,0xffcc3b07,
-0xffe903a1,0xffee4c31,0xfff13ae4,0xfff4bbfe,0xfff8bdcd,0xfffcb82a,0x0000cacf,0xffd333ea,0xffc13ed6,0xfffef238,0xffd71b4b,0xffc90f26,0xffd07c89,0xffd34cfc,0xffd47460,0xffd71085,0xffd88e79,0xffd9e8ed,0xffdc94fb,0xffd889e7,0xffd5cb5c,0xffd2f531,0xffcf6991,0xffcc81b9,0xffc91709,
-0xffca011a,0xffc9c177,0xffc88e7a,0xffc62c24,0xffc59099,0x00340a2b,0x002d975e,0x003d9ef4,0x00187209,0xffead843,0xffbc3897,0x002a4380,0xfff0e9c6,0xffbfd67a,0xffb2b04c,0xffb10cf9,0xffb3a3d2,0xffb4ae9f,0xffb6441c,0xffb3f76b,0xfff60e26,0x0029f64b,0xffb33f98,0xffed985f,0x0014e6c6,
-0x0038d0be,0x002ad8fa,0x0032fe74,0x0035f926,0x003a2c6b,0x003c5321,0x003f2390,0x0039d6d3,0x0038a83d,0x0034fd45,0x003c469c,0x003b9732,0x0033e9a5,0x0035b92b,0x00343f5c,0x003051ce,0x003381d9,0x003d47d5,0x003e72c5,0xffdcabb7,0x002c1d1c,0x0020b03b,0x00014654,0x000f67c4,0x001852e7,
-0x00109c60,0x000b4778,0xfffef7e5,0x001b6a9f,0x001f0a65,0x001ab5c7,0x0014bb59,0x001ca517,0x0023689a,0x0014c117,0xffd13f16,0x00236ee4,0x002b8ecf,0x00388b5d,0x0049ccbe,0x0059fb73,0x0061f078,0x0063d557,0x0051cfa5,0x0047a564,0x003e30df,0x00507560,0x0051eab8,0x0040dd98,0x0045f076,
-0x0042b34b,0x003c0ae9,0x0040b863,0x00415ee6,0x002b5af3,0x00093132,0x0014dc09,0x00287fec,0xfffeb8c5,0xffefcb0b,0x000eea85,0xffd477e5,0xffd96b1f,0xffd4fbc4,0x00070ed1,0x000367c7,0x000f93ef,0x001850d6,0x002a79c4,0x0023e493,0x000bb0aa,0xfff5429c,0x000a0bca,0x0030c62f,0x003c6afb,
-0x005752a9,0x00724976,0x007ef966,0x0087db8f,0x006847d9,0x0063d931,0x0056202d,0x00783fef,0x00762c4f,0x004b5c7c,0x00575830,0x004d8158,0x003f06d6,0x00440859,0x005f520b,0x0032c1b6,0x000c0751,0x0025f50b,0x004f0e2b,0xfff99a77,0xffe97cdb,0x001648c6,0xffefdfb4,0xffe6c43d,0xffdbe4e0,
-0x0009a644,0x00257273,0x001db0eb,0x0037e701,0x0044a1bf,0x0023757c,0x00064957,0xffc95338,0xffddc71a,0x0017aeb1,0x003c1f17,0x007b770f,0x00b61398,0x00da3ac1,0x00d8ee1f,0x00967196,0x006a3bb4,0x00532bf4,0x00893e38,0x008eccce,0x005ce05b,0x0073cd09,0x006b9606,0x005e19bc,0x005f3701,
-0x00096233,0xfff25ed4,0xffa5e69c,0xffc026fe,0xfffc8096,0x0018e6fe,0x001d3614,0xfff1fa9d,0xffe96dc1,0xfffe6c5f,0xffffc497,0x001865ee,0x0015df01,0x0018eafa,0xffebd6bc,0xfff0652e,0x00217573,0x0053a0ea,0x005a09bc,0x00863f33,0x00ad367d,0x0073fe9c,0x004e2d36,0xffefdecc,0xffc9df4d,
-0xffd5812c,0x003f5246,0x00a8da82,0x00e318f1,0x00bd9996,0x0099b1f2,0x0085162c,0x003a2395,0x002298cc,0x001b9664,0x000264e1,0x006026a9,0x007b10ad,0x0092de4d,0x004fe201,0xffc0b5bc,0xff8a80a5,0xffa60c3a,0xffe9e296,0x000f4dc5,0x000a8d4c,0xfff092b0,0xffdd96f6,0xffe079d5,0x000403a2,
-0xfff8d321,0xffff69b7,0xfff2979f,0x00145095,0x000bcc32,0x00199de9,0x0034ce75,0x0033c634,0x00661eab,0x0047c1ca,0x00576250,0x00894638,0x0034794b,0xffe56386,0xff99d169,0xffe2cbfe,0x002dcb6a,0x00511b10,0x00a53766,0x00718491,0xffb5df92,0x0006d602,0xff871540,0xfe698a3e,0xff095635,
-0xff8895fe,0xffba2b53,0x001c2258,0x0014dc67,0xfff9ec47,0xffe5c4d3,0xffedb9ac,0x0007339e,0x0016dc22,0x00098d15,0xffe3ccd7,0xfff000a0,0x0001812f,0x000eee9a,0x001d3c76,0x0015801c,0x001a7fe0,0x002d7c8f,0x001b7db9,0x0015ffee,0x00363ab0,0x004b2907,0x005ca496,0x006320f4,0x00736b5f,
-0x00679778,0x00cd16e5,0x00aefeeb,0x000f53f2,0x0052304f,0x005f3cb6,0x0050c07b,0x00286c54,0x00d4b2e7,0x00eb70bc,0x00c52163,0x00872554,0x00259668,0x0029c961,0x001fcb48,0x00152d1e,0x00068207,0x0005cc9c,0xfff9d315,0xfff72cc8,0xfffc6264,0x000b90ad,0x0009791d,0x000377b4,0xffffb09c,
-0xfff1e7d8,0xffd87084,0xffe967d1,0x000d8dad,0x00279622,0x0047e8ed,0x004df259,0x00521ea1,0x004b535b,0x003f3102,0x001a784e,0xffdcff51,0xffd86f58,0xfff12979,0x0017176b,0x0056e8a9,0x0083cfbd,0x00c9d545,0x009f71fc,0x00270c6b,0xffdefde5,0xff8c5a59,0xffda3238,0xfffdef03,0xfff2957a,
-0xfffcb79a,0x001f7523,0x0010b984,0x000e53c2,0x000196a2,0xfffd4b97,0xfffc9fef,0x0005dffd,0xffebecf4,0xffdb9499,0xffc862b9,0xffcca7c9,0xffc2e8ad,0xffd5b01e,0xffdf978f,0xffe9438b,0x0004e467,0x00187d8c,0x003e3460,0x007358b0,0x007ce843,0x008f894f,0x00a4b088,0x009a170a,0x008dbf64,
-0x008416bd,0x0087242a,0x006fb582,0x004a7f5e,0x002b1934,0x007ee459,0x006a59ad,0x00357c20,0x0049cb59,0x003eabb4,0x0043b43c,0x003e5b40,0x0034f5f2,0x003bf0b2,0x0039c308,0x0032e6d5,0x0025a9db,0x000fd6bf,0xfff1d8d0,0xffe88943,0xffe83a0c,0xfff03c5e,0xffee7b33,0xfff09f0c,0xffed38ae,
-0xffff89e5,0x000a965d,0x000c7861,0x001b7795,0x001b6791,0x0013b082,0x001a62d0,0x001a7207,0x00160bc4,0x0028c80e,0x005045a4,0x0089e830,0x007bc181,0x007549ee,0x00764e3a,0x007170c1,0x000d35fb,0xfff347e5,0xffe7c0f6,0xfff4d1aa,0xffe5f3bf,0xfff44e2a,0x0000dedd,0x000e23ad,0xfffbd589,
-0xfffb64a4,0xffe8ec48,0xffedd526,0xffd785cf,0xffd89160,0xffd44411,0xffd72c03,0xffd0a2a9,0xffd66024,0xffda0646,0xffeb82d0,0xfff35d2c,0xffeed89d,0xffef9820,0xfff4eaef,0xfffc820b,0x0003973a,0x000c6f57,0x00154704,0x001da1e8,0x0021380b,0x00204a80,0x00286da3,0x00238e56,0x00245b09,
-0x00237f1d,0x0013bccb,0xffe27861,0xffddf514,0xffb39723,0xffd5262c,0xffc6b989,0xffc2cfd0,0xffc9ae83,0xffc41be9,0xffd13dab,0xffd79471,0xffd362da,0xffe1c97d,0xffe5ed6c,0xffe79c3b,0xffde244f,0xffe05322,0xffeb5619,0xffe93590,0xffd9917d,0xffe6a3a1,0xffe1e75c,0xffe6e6c4,0xffe97387,
-0xffec4c59,0xffee638f,0xfff07ff3,0xfff4b4d9,0xfff9edae,0x00004557,0x00077f1e,0x0010189a,0x0017ba00,0x000c20d4,0xffff547d,0xfff3c188,0xffeaca17,0xffee8da4,0xfff0d45d,0xffe29d09,0xffcb0645,0xffac8bfd,0xffec04d4,0xffcd8b72,0xffacb0f9,0xffacff62,0xffac3a29,0xffae9532,0xffab1c7f,
-0xffaa3c42,0xffab38b3,0xffd5cc3e,0xfff181d2,0xffb0d9b8,0xffd5559f,0xffeae1b9,0xfff1db53,0xfff0de00,0xfff3f088,0xfff4c9f5,0xfff646ad,0xfff7a66e,0xfff8c351,0xfffb3997,0xfffce831,0xfffe1d19,0xffff3329,0xffff8ddb,0x0002e77f,0xfffd750d,0xfffb50db,0xfff83310,0xfff509f2,0xfff8e753,
-0xffe3859e,0xffeb4239,0xffd04f93,0x00099a35,0x0036d591,0x005bce7b,0xfff2bb82,0x0027e876,0x0051868e,0x004ad5ce,0x0048ba01,0x00417d4d,0x0050459b,0x00539b53,0x0050bdd0,0x00312c87,0x000170c7,0x005bd9e6,0x00320004,0x000a39e1,0xffd09a00,0xffe445c5,0xffe0ece4,0xffe3932b,0xffe690fd,
-0xffe8a413,0xffec7742,0xffe7ff79,0xffe626e4,0xffe1054f,0xffe5952b,0xffe3c277,0xffdb8abe,0xffe03872,0xffe41b63,0xffef28b7,0xffe908c7,0xfff1c9fe,0xffe0b7e7,0x003e121a,0xffea58fa,0x001fbbfe,0x000403d6,0xffe97993,0xffffa3da,0xffd56c07,0xffd610e9,0xffee7364,0xffea0c48,0xfff2c071,
-0xfff71f79,0x001676ed,0x00119cfb,0x000d7bbd,0xfff6a4a6,0x00288e2d,0xffd4e8b4,0xffcff7e8,0xffda3296,0xffe0f36a,0xffed5ac2,0xfff3dcd2,0xfff958be,0xffeb348f,0xffe1f95b,0xffd5bb72,0xffe21eea,0xffe25e24,0xffd4b9c3,0xffe1f7a4,0xffed6856,0x00073651,0xfffcc07d,0xffedc716,0xffdd0c6b,
-0x00031fa2,0xfff76481,0x00342cdc,0xfff7de7b,0xffeaaaed,0x00004970,0xffd8c7eb,0xffbedd83,0xffd95706,0xffd78a7a,0x000b74e1,0xfff28ad4,0x00214cef,0x00162822,0x001b3ab7,0x0001a3d1,0xfffe5362,0xffdb6204,0xffc121d3,0xffd3fa26,0xffdb3697,0xfff17605,0xfffc8bd7,0x000db798,0xfff2cbbc,
-0xffeb7617,0xffd47c68,0xffe8b157,0xffe0ded4,0xffb9f86d,0xffda724d,0xffeef704,0x0017905f,0x00068bf1,0x000ec1e0,0xfff901bd,0x000b00ab,0xfffaf4d0,0x004075b3,0xffe56d0b,0xffd43ebe,0x00097897,0xffd8ea7e,0xffd4ed78,0xffc7d455,0x000564d7,0x0016ef07,0x000dfb9e,0x002813a4,0x0028e868,
-0x0037f8ab,0xffebcd8c,0xffe600f4,0xffb64c4a,0xff9fb13c,0xffc35be8,0xffdbff64,0x000ac259,0x00288ee8,0x0033ce14,0xfffe825d,0xffd78dac,0xffb88787,0xffdc9d6f,0xffe3cf68,0xffbf1382,0xfffa5f55,0x00207853,0x0058d507,0x0041f5cf,0xff588f35,0xffba361d,0xffc8c27b,0xffcba85e,0x00154d7f,
-0x002b4ea7,0x001db215,0xffffdc16,0xffef709c,0xfff94a8d,0xfffa5512,0x0007295c,0x00088aaf,0x00207c8c,0xffe41e1d,0xffd69b1a,0x0016615c,0x002064e3,0x005f9624,0x005ca67a,0x000e960b,0xffff8d08,0xffc7b638,0xffaa5e91,0xff9110ba,0xff9f70c1,0xffe5ff38,0x002c95ee,0x003bfa0a,0x000ed558,
-0xffd13cea,0xffa440f0,0xff819db4,0xff81dc10,0xff94bde0,0xff7df227,0xfff61eb2,0x0036e4fb,0x00925c93,0x00475571,0xffa8011d,0xff7d29a3,0xff92955b,0xffdba992,0xffffdf04,0x00027fd1,0xfff1098c,0xffe1a9e3,0xffdf0c22,0xfff70d88,0xffe71ee1,0xfff1cefb,0xfff05aec,0x00148b24,0x002fa62b,
-0x000d3309,0xffd27706,0xffc8616e,0xffbeff54,0xffd8ff77,0x0012b252,0x006780c8,0x0023f2d0,0xffd43a2a,0xff76812d,0xffc221fc,0x001970d2,0x00548200,0x00865f28,0x004bd295,0xff9f6329,0xffd0d4f7,0xff918a5e,0xfe670c66,0xfefc853c,0xff610fbb,0xffd839b6,0x00066cab,0x000d9e97,0x0000f7c6,
-0xffe82892,0xffe98b25,0x0003a6f1,0x000ee95e,0x00035a52,0xffe1040f,0xffecfc99,0xffebcade,0x000cd5ca,0x000262ef,0x000bdf6a,0xfffed179,0xfff63fa8,0x00045e4f,0xfff51f32,0xffc20282,0xff8e25cf,0xff7bc0cb,0xff70507e,0xff9f991d,0xffe7a1f1,0xfff660ca,0xff99c197,0xff00157e,0xff4200d0,
-0xff77cc8e,0xff8458c2,0x0000b5b5,0x00474a41,0x00e0b60d,0x00d04346,0x0078a073,0x002dbd51,0x001aeda8,0x0022174f,0x000ce329,0x000131b6,0x0002eb2e,0xfffb1db2,0xfff339ab,0xfff91b99,0x00077f12,0x0002ab6b,0x0004bd6c,0xfffe63b9,0xffeb75ae,0xfff15ed6,0xffdf3046,0xffcc7632,0xffd3beb7,
-0xffe67e27,0xfff4ed96,0x000edc83,0x002172cb,0x0016abcf,0xfff5d2bd,0xffc49736,0xffca3c21,0xffd16d9e,0xffbb807b,0xff9a40d6,0xff7fd9c4,0xff800962,0xffe0e86e,0xff62a696,0xffc30926,0xfff6697b,0xffe92e33,0xfff67ef0,0xfffb0deb,0xfff8a66b,0x00164098,0x000f9523,0xfffad865,0xfff74e74,
-0xfff3db3b,0xfff5b8cf,0xfffcbdc5,0xffec8f9a,0xffde39ee,0xffbfe142,0xffc13998,0xffcef0d2,0xffb9eb1e,0xffc8e92d,0xffe5a991,0xfff3fb16,0x000ab69a,0x001ce2ea,0x002ed0d4,0x003143e6,0x0036e915,0x002d39e6,0x0025faaa,0x0005480d,0xffd2760d,0xffc0c93e,0xffa9ec66,0xff7d43c0,0xff761e57,
-0x00132988,0x0036bc67,0x0066fda9,0x004750ce,0x0048112a,0x0038703b,0x0027016a,0x00284a1c,0x00248eca,0x002a2e41,0x00242228,0x0023928a,0x000db769,0xfff14025,0xffe25e2f,0xffe07978,0xffe56f16,0xffeee66a,0xffeeeb52,0xfff35f69,0xffe4df90,0xffdc9294,0xffdab3d4,0xffea1df9,0xfff034e8,
-0xffef5eaf,0xfffd201a,0x0008aba7,0x0016aaef,0x001a3b4d,0x001c1cb0,0x000ee032,0x001373d0,0x0014a26b,0x0017c7af,0x001ba699,0xffdd84a2,0xffe2e1af,0xfff5dd0c,0xfff2d898,0x00004a9f,0x000513a1,0x00113cb9,0x00177cb3,0x00120ce9,0x00012431,0xfffb3355,0xffe68c84,0xffe61729,0xffd779c7,
-0xffdbaf1f,0xffd48722,0xffd3566c,0xffd62257,0xffddfdfe,0xffd3973b,0xffcd49d0,0xffd83af1,0xffd93408,0xffe21d46,0xffea3f33,0xfff4ac1b,0xffef9f3b,0xffecb86c,0xffeb80ad,0xffe14261,0xffdb6f1c,0xffd7d9ab,0xffdf69c7,0xffe5b79d,0xffe945c6,0xffe8f1ab,0xffc0306b,0xffbe390f,0xffe16404,
-0xffc00347,0xffc88350,0xffc74afb,0xffb993c0,0xffb8ef2d,0xffb50a33,0xffbafc22,0xffca8bcd,0xffc62a83,0xffc7e001,0xffcdf149,0xffd82741,0xffd6b85b,0xffd09849,0xffd1e4e8,0xffe521de,0xffd0ce12,0xffd8455a,0xffd94e80,0xffdb3c4c,0xffdeab1e,0xffe098db,0xffe4d1c9,0xffdafacd,0xffd3ba3d,
-0xffcd08c7,0xffc924b8,0xffc55cd5,0xffbf6a40,0xffbf3fd7,0xffbdc909,0xffbd2e9d,0xffbe5edd,0xffc96209,0xffc1c99c,0xffda30dd,0xffef59bc,0x000037fc,0xffcfbf37,0xffecf3fd,0xfffdc846,0x0002de52,0x00050528,0x0003d8cf,0x0009bff7,0x000de9c0,0x001019d5,0xfff38d30,0xffd64413,0x000c3fd2,
-0xfff2fc98,0xffdc942b,0xffc86e25,0xffd05134,0xffd08145,0xffd2efa9,0xffd403d4,0xffd513fd,0xffd79bab,0xffd4738d,0xffd29384,0xffcfce8e,0xffcc8b28,0xffc93e67,0xffc595a3,0xffc74aee,0xffc81905,0xffc89c19,0xffc837ac,0xffc8b3c4,0x001fbf15,0x001d1466,0x002db312,0xffebd3a1,0xffcae177,
-0xffd217df,0xfffe1837,0xffcf80d9,0xffc71479,0xffba7a1c,0xffb9c26a,0xffc3a72c,0xffc1e61c,0xffc4c901,0xffc7c8d1,0xffd4c6d4,0xfffda526,0xffce4c7a,0xffd0f982,0xffea8cda,0x002806d3,0x0019586b,0x001f1d2d,0x002369a0,0x00260c06,0x00271d4b,0x00275541,0x0023f833,0x0023293e,0x0020bd38,
-0x0024a28f,0x002314c1,0x001cc0d9,0x001d0f57,0x001d57b9,0x00203d46,0x0020b6af,0x002d3ad1,0x001f2784,0xffc86f6a,0x00108c2f,0x00063351,0xffed982d,0xfff876be,0x000249a1,0xfffa0d54,0xffed702c,0xffe084f8,0xfffa47f2,0x00067f59,0x0000a47d,0x00035b06,0x000d648d,0x000a1d26,0x0005ca55,
-0xffcab2b2,0x0009ebfd,0x001a7ea8,0x001fac74,0x0033f46a,0x0040aead,0x0046ade5,0x0041aa37,0x0033f292,0x002a4324,0x0022ce8d,0x002e1036,0x002c989c,0x001ece95,0x001f6bce,0x0021d6b0,0x002c779b,0x002a9ead,0x00378f45,0x0013bc2b,0xffe27ac4,0xfff7e1b2,0x00168edf,0xffec3b7e,0xffe0ce49,
-0xffffd450,0xffc1e1c1,0xffceff20,0xffc28051,0xfff8b632,0xffef99bb,0xfffeb882,0x0005f884,0x0017ba9e,0x001a18ab,0x00004a71,0xffe1a9df,0xfff5e115,0x001e1599,0x00213386,0x003e6fb3,0x0051a7c0,0x0059a4df,0x0053d520,0x004125f9,0x003d3436,0x0035735a,0x00451296,0x003c3930,0x001cfa14,
-0x001e2e9c,0x0023e319,0x003810cf,0x003016b0,0x00559f8c,0x0018c06a,0xffe4ae4c,0x0006704b,0x00430fb4,0xffe5053f,0xffd6b3b2,0x0006b86f,0xffd7af3e,0xffcb19e7,0xffd010dc,0xfffc31b9,0x001847d7,0x001cb1c5,0x0032b2a1,0x0043c372,0x002a4312,0x000dca30,0xffc8b81d,0xffd79dc1,0x000a62db,
-0x001e93d7,0x005d074b,0x008a56c7,0x00a2c6c6,0x008bf2f5,0x00587793,0x003483d9,0x002b0035,0x004547a4,0x0041d8fc,0x0020a801,0x002825a1,0x003634a5,0x005cfcf6,0x004b66be,0xfffca5e8,0xffd33d06,0xff82f73a,0xffa7b5d8,0xffe84e5b,0x0010d362,0x002412f3,0x000d7652,0xfff81fdc,0xfffae6e6,
-0xfff74494,0xfffeabba,0x0003fa85,0x0020f0f5,0xffdda605,0xffdb5ebd,0x0000d04b,0x00347ed2,0x00346aa3,0x00560923,0x00751ffe,0x0049c1a6,0x0036fe56,0xffe243ba,0xffd3e21e,0xfff243e1,0x0072df5c,0x00ca7d53,0x00c47b48,0x009ebd31,0x005c1a37,0x0016be13,0xfff48c66,0xfff423d5,0x0002aff8,
-0xffefca29,0x004af8dd,0x005fa33a,0x00818b9b,0x005d9a69,0xffce5118,0xff839ed2,0xff953990,0xffd38a3b,0xfffcb88b,0x00023dc1,0xfff5f1a8,0xffe9bb4e,0xffe2064a,0xfff9e70d,0xfff69430,0x00017120,0xffefabdd,0x00199b72,0x0011d38b,0x001e0ff1,0x001998fe,0x00073881,0x0031b8da,0x0034122e,
-0x004d2182,0x0065847f,0x00078028,0xffbbc3c4,0xff7e9573,0xffd9650c,0x00253fb3,0x003b0c9d,0x0062563e,0x002c1735,0xff90fdae,0xffe1fe91,0xffbad0d3,0xfe83f8fc,0xfec69d56,0xff447267,0xffd54679,0xfffbb6de,0xfff4a258,0x000dd87b,0xffee6767,0xfff1b9a0,0x0003248f,0x001092de,0x00083813,
-0xffe2de43,0xffec834c,0xfff6265e,0xfffcc8fc,0x00157aac,0x000927dd,0x0019a574,0x002d8d88,0x000ecece,0x00037e60,0x0006b41b,0x0007c509,0x0010a29d,0x001a8967,0x00464b2d,0x00746478,0x007b7800,0x0035c690,0xffb858f1,0xfff177a8,0x00076175,0xfff514ec,0x00382a4e,0x005cb5ea,0x00b1bb18,
-0x00cbaf8f,0x009577cd,0x002e7f3c,0x002ef82b,0x002fc217,0x001ad21a,0x0002f958,0x00022849,0xfffb9d8a,0xfff5982e,0xfffb4fc8,0x0006cefc,0x0006ab5f,0x0005ed5d,0x0009a94e,0xfffe8431,0xffdea3a0,0xfff15bb4,0x000a9e61,0x00166583,0x00351cf1,0x002b7a81,0x002e1c87,0x0024da8b,0x00134503,
-0xffe93a89,0xffb0f811,0xffbca765,0xffd99120,0x00034f84,0xffed5b14,0xfff54442,0x00280703,0x001436b0,0xffe35ca4,0xffb6cc5c,0xff8bd04c,0xffc6b634,0xffe65d42,0xffe6738b,0xfff2b39e,0x001225be,0xffff7f43,0xfffb2b47,0xfff0e125,0xfff546df,0xfff6efdf,0xfffaa47a,0xfff00a52,0xffe29166,
-0xffc88b57,0xffc2fb66,0xffaf7f6e,0xffc7630c,0xffd15b63,0xffdb2132,0xfffc4d10,0x000b6fa2,0x00258236,0x003f77e6,0x00474d10,0x0051bea6,0x0052ec5b,0x00567860,0x00415de2,0x002f30aa,0x001990b5,0x00037354,0xfff57228,0xffdd910c,0x00396eac,0x0028a349,0x001942e3,0x00237d22,0x0020f8a0,
-0x0021d6f3,0x00243b0d,0x001df753,0x0026f9fc,0x002c2b97,0x002e1141,0x00280794,0x0017da92,0xfffd5606,0xffed147b,0xffe3c23f,0xffe39a70,0xffeb320d,0xfff336b7,0xfff49a9d,0xffff9547,0x00025926,0xffff127b,0x00075800,0x000aa445,0x000c87e5,0x001f3ff6,0x002acafe,0x0032134f,0x00403424,
-0x005bae6c,0x007d18eb,0x0070605a,0x005d01e5,0x004c759a,0x0035b708,0x0019587c,0x0000fecb,0xffee6d36,0x0001e6e5,0xfffc3ced,0x000bdb3a,0x0019a9b1,0x0028af13,0x00132677,0x0011919e,0xfff608f6,0xfffbe917,0xffe11203,0xffdfe581,0xffd8d7ec,0xffda7844,0xffd133c6,0xffd4280c,0xffcff9e9,
-0xffe2ab00,0xffef0195,0xffe8b9c6,0xffea4ec3,0xfff1f90a,0xfffb5eab,0x000386a6,0x0008ae93,0x000dd477,0x0013c60e,0x001149a7,0x000dafdb,0x00109a75,0x000d0d46,0x000f93fa,0x00165bdf,0x00134bc3,0xffd60abd,0xffd25840,0xffb2f062,0xffd1c7b3,0xffc0e01a,0xffc12acf,0xffc84218,0xffc34513,
-0xffcea6aa,0xffce032d,0xffc53349,0xffd1ec0b,0xffd8a88a,0xffd61e09,0xffd0d986,0xffd7592a,0xffdbd9d9,0xffe0fb1b,0xffd157a6,0xffe5e248,0xffe4b3a4,0xffe65ee8,0xffe88589,0xffe97a47,0xffe9e9e0,0xffeb2cd7,0xffec5fac,0xffed270e,0xffeda76b,0xffef31c9,0xfff1a73c,0xfff2a10e,0xffef6000,
-0xffe85788,0xffe0526d,0xffd8b86c,0xffe79543,0xffec1dc5,0xffcdb4cb,0xffbbe3da,0xffb92dae,0xffd90e53,0xffbfed6d,0xffb53fbf,0xffb4537e,0xffb41fd5,0xffb92f4d,0xffb442cd,0xffb354ed,0xffb57f3c,0xffbfe262,0xffd8d0c6,0xffb90a2a,0xffc1e29a,0xffd49917,0xffeec29b,0xffea8db4,0xffeda0f9,
-0xffeed4ba,0xfff029b8,0xfff19594,0xfff2efea,0xfff2c600,0xfff298c0,0xfff221b8,0xfff17207,0xfff0179b,0xffef4aeb,0xffecc883,0xffec194e,0xffebf25d,0xffeb24f9,0xffed187c,0x0006c7b5,0x00088183,0xfff6fbd8,0x002f6b97,0x003f085e,0x002bc9cf,0x0020109a,0x00362290,0x002e690f,0x0026292f,
-0x0023407c,0x001b1cda,0x0025c547,0x00276d27,0x00224a17,0x003d277a,0x002b26b7,0x0028648e,0x003b43fe,0x002ee740,0xfff6a153,0x00043848,0x0005aed5,0x0009dd08,0x000c2641,0x000dabbc,0x000f3b60,0x000bcc2b,0x000a5a75,0x0006fabd,0x000af50c,0x000a3a19,0x00044418,0x0009da4e,0x000bafa9,
-0x000e983c,0x000a81b8,0x000c454a,0x000bf5b8,0x00356003,0x000a769f,0x00305ad5,0x000fc3fb,0xffff1ce9,0x000edb17,0xffedbac3,0xfff3addd,0x000a5255,0x0007d776,0x00091897,0x0010c0a2,0x0021b6c4,0x0020f687,0x002aab00,0x00118ab3,0x00257c63,0x00019447,0xfffaf8b0,0x000d7804,0x00191743,
-0x0022fa51,0x0025112e,0x0021c3d2,0x00154550,0x000dc86a,0x0007f52c,0x001368a6,0x0016d22f,0x000d7b96,0x001dc933,0x0021be98,0x0024e65a,0x001c746f,0x00098a43,0x00028306,0x001eb7d3,0x000da53e,0x0037a3f6,0x000066c2,0xfff2c11c,0x000665a0,0xffdb513c,0xffc162a5,0xffe6aed4,0xffdd3c7c,
-0x00073f68,0xfffc1c95,0x00261300,0x00225122,0x00277484,0x0014676f,0x00156e4b,0xfffc95c6,0xfff2bad9,0x000cff46,0x0022940a,0x0034f1c6,0x003b6763,0x003e6863,0x00293a28,0x00237e2f,0x00178263,0x0026a6a5,0x00256164,0x00099835,0x002e958c,0x0033fd05,0x00344002,0x00292867,0x0019c31b,
-0x00115c79,0x001729b1,0x0008a498,0x0041da07,0xffe5b648,0xffc9b15d,0xfff765ce,0xffc37217,0xffbdcb1c,0xffbd9425,0xfff3254f,0x000b9dd3,0x000b41ce,0x00289d30,0x00310e5b,0x00468ee0,0x0004d38b,0xfffdc24e,0xffdf6063,0xffe453a2,0x001b6667,0x004bfeb1,0x0071c71e,0x007fd57a,0x006b4035,
-0x003986b5,0x0017979e,0x000cebf0,0x002da380,0x003c9bf5,0x0028c302,0x0065da49,0x006df48b,0x00674b65,0x0050e8e0,0xffba41a4,0xfff7f2c5,0xfff3c9cb,0xffe6378a,0x000cb1be,0x00307a96,0x0034dfdb,0x00283144,0x0004dd79,0xfffaf263,0xfff3303f,0xfff3ab90,0xfffbecbc,0x0029d19c,0xffdd70b8,
-0xffcc0283,0x0000d0fd,0x0018b071,0x0055611e,0x005f7f7f,0x0020362e,0x0003f479,0xffc45e79,0xffb0fc8a,0xffa5bf07,0xffab5a12,0x00262113,0x006f0afe,0x005a626d,0x0044c8c9,0x0011a545,0xffe52160,0xffd7d431,0xffd7a0d2,0xffd85b2d,0xffd8dc77,0xffe078bb,0x003a4f4d,0x00b38874,0x007104ab,
-0xffe0c6cd,0xff8c896f,0xff866679,0xffc9ab4c,0xfff28699,0x0000fa82,0xfff6c79c,0xffede35b,0xffe31209,0xffed80d7,0xfff0a31c,0x0005d5c0,0x0004be54,0x00204f6f,0x003378e0,0x002f6e36,0x000612bb,0x00118de2,0x0026a1ed,0x00307d9a,0x00494711,0x00621bb3,0x00058153,0xffb61a2b,0xff6dd8c5,
-0xffd3568d,0x00322189,0x005caf4c,0x007f2b92,0x003af6bc,0xff847d21,0xffc1f194,0xffca39f8,0xfe9ee788,0xfec7db4e,0xff25de6a,0xfffeceab,0xffec2337,0xfff30da8,0x00142a9b,0xfff560fd,0xfff1f244,0x00026f2b,0x000b7597,0x00040a50,0xffe26439,0xfff1129d,0xffee4528,0x00058163,0x000f51c7,
-0x0025c250,0x001bca90,0x00008211,0xffff2582,0xffe998a1,0xffd67e4e,0xffc97301,0xffd535d7,0xffcefbf0,0xfff73b61,0x003fdae6,0xfff9b476,0xffbd2559,0xffb36f1e,0x000a34cc,0x0038128d,0x00205daa,0x00486497,0x004dcfc1,0x00981be8,0x00ce79ee,0x0099c773,0x003e1db2,0x002d7aea,0x0030b376,
-0x001aab18,0x00016cdb,0xffffd2e7,0xfffdafdd,0xfff5f798,0xfffa693e,0x00066428,0x0005cc10,0x000f2674,0x00139bc8,0x0001aaa0,0x000199f0,0xfff403cd,0xfff13f48,0x000882d2,0x00258320,0x0027c7e6,0x002f418e,0x002a880a,0x0028c56c,0x000c275d,0xffe7185f,0xfff419bf,0xfffd8172,0xffe82f02,
-0xfffab4c7,0x001147e6,0x0049d81d,0x003b0a60,0x0010d5d5,0x0016bac8,0xfff0094b,0xffe954e5,0xfff512f1,0xfffac25c,0xfff9f8b9,0x00196a94,0x000b8611,0xfff60496,0xfff27a55,0xfff229e2,0xfff4dcb5,0xfff9d156,0xfff478ff,0xffe7a1f5,0xffc522eb,0xffcb7692,0xffd54b7c,0xffc7d78b,0xffc95727,
-0xffdc4e61,0xfff01077,0x000d7239,0x002c2133,0x004b710f,0x0058154b,0x00688c12,0x006edfb5,0x0057bab7,0x003a9640,0x00210a19,0x0020c5c2,0x001aa13f,0x00042143,0x00171f27,0x001b97b8,0x003e69bd,0x004524b0,0x003a99f1,0x0034edb3,0x002b49eb,0x001a7301,0x001aa5a1,0x0018cdf6,0x002040b6,
-0x001f3a72,0x002792b5,0x00198b98,0x0000c048,0xfff05cdf,0xffec78ae,0xffecd819,0xfff010e1,0xffeed0bf,0xfff3b8a9,0xffeee4b7,0xfff0e76e,0xfff07c91,0x000a14fe,0x001638be,0x001ae73e,0x0027fd5c,0x00295035,0x002ac004,0x00347345,0x0045a2d7,0x0056c932,0x00431e7a,0x0036d3a5,0x002c2196,
-0x00256c75,0x000e7b48,0x0010ee63,0x0020f761,0x0022502e,0x002a5f55,0x002d68b1,0x00338c0a,0x0038c1ae,0x002d89ed,0x001c5b35,0x0013cdc1,0xfffce7a4,0xfff1bdfa,0xffe46007,0xffe4b7d0,0xffdf8211,0xffdb7a39,0xffe0a382,0xffebb7d6,0xffe5c2f2,0xffdb9ba7,0xffe092e8,0xffdbfd1c,0xffe5bc04,
-0xffedead4,0xfff74ea7,0xffffa083,0x000bb981,0x0018ac84,0x00123e89,0x000b50ad,0x000845a2,0x00076f72,0x000a3a3a,0x000c48f8,0x001360aa,0xffd09281,0xffd3dcd8,0xffdb13a7,0xffd28569,0xffd70b39,0xffd51037,0xffd00cdf,0xffcf5b14,0xffce1d5a,0xffd4c500,0xffdfa08f,0xffdebd14,0xffdc88e0,
-0xffe0c3ba,0xffe3b98c,0xffdf7f5b,0xffe06c96,0xffdb176c,0xffe4acfe,0xffd39c3d,0xffd59ecf,0xffd95c7c,0xffdae00d,0xffdd5b89,0xffde38b8,0xffe00916,0xffd8cdcf,0xffd326bf,0xffd0933e,0xffd12183,0xffd4b3a1,0xffd6c61a,0xffd78ea9,0xffd6b84b,0xffd42554,0xffd28fa0,0xffdc2e0a,0xffd82f3a,
-0xfff139df,0xfff889ef,0xffeb897d,0xffedb7a1,0xfffab1ef,0xfff1f7fe,0xfff39f1e,0xfff38579,0xffefc458,0xfff29b66,0xfff44d4a,0xfff3bf76,0xfffcf01d,0xffeda9e0,0xfff2e840,0xfffa27b6,0xffeedc00,0xffd36e63,0xffdac3a4,0xffdb0bd9,0xffdc74c2,0xffdd4164,0xffde0ec3,0xffdfcac4,0xffdf40b2,
-0xffdf687e,0xffde4bc8,0xffdd4365,0xffdb6721,0xffda1d58,0xffda17fa,0xffda95c2,0xffdb6fbc,0xffdc4a83,0xffdb9f44,0xfffb98b5,0xffff74f4,0x00008c26,0xffda6e04,0xffdeff50,0x0013840f,0xffdceef9,0xffdb427c,0xffff92db,0xfff68dc3,0xfff60bd9,0xffff03c1,0x00003d05,0x0003c7dc,0x000820c4,
-0xffe15123,0xffe15f64,0x00150bf1,0xffe30bba,0xffdb1cbe,0xfffc0275,0xfff9edb4,0xfffab547,0xffff8a81,0x0000dd45,0x0001349a,0xffffcbd5,0xfffe5bab,0xfffdb1bb,0xfffc3e49,0xfffc4b3e,0xfffa2198,0xfff56a71,0xfff67169,0xfff9516a,0x0003b4db,0xffff6bd4,0x000b1f69,0xfff34b9d,0xffe84a14,
-0xfff00c31,0xfffa072d,0xffe90661,0xffe3d247,0xffefa9a0,0xffdd2928,0xffd1b472,0xffd394e4,0xffdd687d,0xffecfeb3,0xffe9fb5d,0xfffdcb74,0x00040592,0xfff91876,0xfff86820,0xffed4847,0xffe78f64,0xfff5957a,0xfff73909,0x000881f3,0x001157d1,0x0014a983,0x000bc98f,0x0003eba1,0xfffbe9ad,
-0xfff6b61b,0xfff91832,0xfff5f85a,0xffed7d39,0xfff04fb1,0xfffa1d1a,0x0014b21d,0x0009cdc2,0x00157250,0xfff24192,0xffd84d87,0xffe60bf7,0x000f0bf5,0xffe4f0b5,0xffdc0abe,0xfff18abd,0xffbe541e,0xffc1fc72,0xffc327f2,0xffdfc592,0xffe8b2dc,0xffea55fe,0x00014327,0x00079acf,0x000e851e,
-0xfffaa143,0xffe2748c,0xffe04c92,0xfff06a63,0xfff3c22e,0x000bbad0,0x0018354f,0x001bffaa,0x000ec412,0x0008b742,0x00047101,0xfffff151,0xfffb0578,0xffee177c,0xffdc0518,0xffe1e6b2,0xfff7f4ff,0x0029c754,0x0013b11d,0x002f20ce,0xfffbcf5c,0xffda1377,0xffeae855,0x002d07be,0xffd574eb,
-0xffc5f3a6,0xfff454eb,0xffbf6287,0xffb46034,0xffcad69b,0xffed5756,0x0004765d,0x001142b8,0x00263c59,0x0034b892,0x003049a1,0x000d136e,0xffe073fe,0xffd2efc5,0xffe3b91b,0xfff1c1a6,0x0021d49f,0x0040152c,0x004bc891,0x002aef1e,0x000c7e0e,0xfff1ba5f,0xfff03b63,0xffecb977,0xffe5760d,
-0xffd8bc1d,0xffe905a7,0x000f3656,0x005bfe2a,0x00368f1c,0xffd1e862,0xffc1c733,0xff9bf516,0xffb6dd2f,0xffeed274,0x001abc9d,0x002f51eb,0x002cab20,0x00058024,0xfff4094c,0xffee671b,0xffebf209,0xfff79845,0x002726b8,0xffd4767c,0xffc53935,0xffe34335,0xffff4ce9,0x000d2d4d,0x0014a390,
-0x000a535a,0xfffb37bc,0xffea9d40,0xffbfae0c,0xffc4c55d,0xffe36a8f,0x0062b62e,0x009e5ead,0x0066fbaa,0x00467f4d,0xfff53d41,0xff95ffa4,0xff9cf1d0,0xffaf2ccd,0xffc8714a,0xffcdcf4b,0x0010d90a,0x002d1756,0x006ef7c6,0x005ad4c2,0xffd84c9b,0xff7f3ab7,0xff8199ad,0xffbe6308,0xffeede77,
-0x0000220f,0xfff8f78b,0xfff3c51a,0xffe4e538,0xffec63be,0xfff42835,0x0003ef54,0xfff5c28f,0x001c55ee,0x0021498c,0x002117ad,0xfff3e47d,0xffdc6caf,0xffeca2df,0x001673d3,0x00364303,0x00348ac1,0xffe33271,0xffa046f9,0xff6e23a2,0xffd250a7,0x001de03e,0x002d4651,0x00278ca1,0xffee6341,
-0xff7e3c8d,0xffbf030f,0xffc43e24,0xfeb19a1a,0xfeb3e83a,0xff1ee021,0x0000b468,0xffdfaa58,0xffd90c65,0x001171a6,0xfff48042,0xfff590b7,0x0000d596,0x0007f159,0x000341c8,0xffe4b51e,0xffe96518,0xffe6a434,0xffef1c61,0x000413ed,0x000037c1,0x000a749c,0x0012d8ac,0xfffbd9cb,0xffe68a95,
-0xffc41c1d,0xffa91524,0xffa47999,0xffacfcbc,0xfff20664,0x005e8aa3,0xfff877c1,0xff8cd3d1,0xff437f92,0xff77af1a,0xffaa0d31,0xffaed311,0x0018f9df,0xffe74f79,0x005b60ed,0x00b60756,0x0093f5a5,0x0046cc8f,0x002a6839,0x00330a45,0x0021752f,0x00023e05,0x000020fc,0xfffed170,0xfff6a4fb,
-0xfffa5d1d,0xfffe1154,0x00027673,0x0009d564,0x00113d36,0x00071e43,0xfff2f86d,0xfff5ed90,0xfff7a7a2,0xfff80c9a,0x000f0241,0x0003b6a1,0x0006dd90,0x00017d6f,0xfff33804,0xffced930,0xffa84c37,0xffbb6853,0xffcfceb0,0xffe06862,0xff914d56,0xff7a8aa3,0xff9a148a,0xffa49d3f,0xff9d47bf,
-0xffb00594,0xffbdd036,0xffc6395b,0xffd7cbda,0xffe8ffc8,0xfff285df,0x000720f3,0xfff7cd42,0xffedabf1,0xffe6fd9c,0xffeef405,0xfff30f9d,0xfff2d0fe,0xfff4dbaf,0xffe9923f,0xffcb6c10,0xffbeaea4,0xffb0cf18,0xffbd4bb5,0xffc6a362,0xffd46f03,0xffef4fe8,0x0000a2dd,0x000f51e9,0x0011daf2,
-0x0018700a,0x001af1f2,0x000c13cb,0x0010082b,0xfff187d5,0xffd37343,0xffaf8fee,0xff9af237,0xff95c4b7,0xff936649,0xffe67740,0xffec087a,0x000ed104,0x00084a8a,0x0010307f,0x0009a819,0x000c1116,0x000a4e2e,0x000fe79f,0x0018ed41,0x001e1793,0x0022b841,0x0019152d,0x00057664,0xfff1ac02,
-0xffe38225,0xffdbc8ae,0xffe6ccdc,0xffeecbef,0xfff585f7,0xfff5d9b6,0xfff2ca87,0xffedbc91,0xfff6264a,0xffffea93,0x000a98f1,0x00240e1b,0x0037863b,0x00496906,0x004cfe09,0x0052417e,0x004d8a86,0x004761ab,0x002fc8eb,0x0011a5e9,0xfff36128,0x001c37d6,0x00114b62,0x00063300,0x00128fa3,
-0x0019860e,0x0023b80a,0x002e833a,0x0039a1a3,0x002a49d4,0x0023c06b,0x000da487,0x0008566a,0xfff3ae41,0xffeb5332,0xffe4b7ea,0xffe0f710,0xffd6f02d,0xffd7e694,0xffd2af75,0xffd9f61e,0xffe1ef7d,0xffe0a19b,0xffe2bd8c,0xffeb028c,0xfff355c4,0xfffb0ae6,0xfffda1c7,0x0000b3f9,0x0005f0e3,
-0xfffe6415,0xfff9ad94,0xfff6ccbc,0xfff826af,0xfffd4392,0x0009a6ef,0x00126edd,0xffce29ee,0xffccf9e2,0xffcdfdf0,0xffd48e0c,0xffcc4f99,0xffcf345e,0xffcf9808,0xffcd344a,0xffcec3db,0xffc8f899,0xffc39d9d,0xffc6558c,0xffcac25e,0xffc65d38,0xffca9666,0xffd19603,0xffce7b6f,0xffd742b5,
-0xffd42e3d,0xffdfe05c,0xffe48929,0xffe3ce71,0xffe5a36c,0xffe5f6a4,0xffe6182e,0xffe78186,0xffe3252a,0xffdde1dd,0xffd8037a,0xffd357c5,0xffcf5a09,0xffc9b987,0xffceadfb,0xffcf6b9c,0xffcdf65a,0xffcb01ef,0xffdb8876,0xffddbb85,0xffc85803,0xffc8a6bd,0xffdf1cd8,0xffcd5e3d,0xffcbde18,
-0xffdab5f3,0xffd9be7b,0xffda1f25,0xffdd93ee,0xffdaf7cc,0xffdb097b,0xffdc9a22,0xffc4168a,0xffc79f8b,0xffdce410,0xffc798b5,0xffc9b78f,0xffe05c0d,0xffddc0af,0xffdf5dce,0xffe0e182,0xffe1cffe,0xffe2dc09,0xffe47866,0xffe1b658,0xffdff695,0xffdde8d4,0xffdbd201,0xffd956cc,0xffd54182,
-0xffd66b57,0xffd72686,0xffd944a7,0xffdac255,0xffd7b1ea,0x00268433,0x0022d59b,0x0024df0e,0x002f1ccf,0x0018e4d3,0xffe927cb,0x0030d323,0x0019019e,0xffef7bf4,0xffe60347,0xffe385b0,0xffe1d91c,0xffe4203a,0xffe4db2c,0xffe1262a,0x001d0849,0x003457b2,0xffe3dd15,0x0019375a,0x002d2ebd,
-0x0021ab41,0x0020b0da,0x0026d639,0x002c0c1f,0x002dc38a,0x002e73a3,0x002cfbe9,0x002b3b10,0x002a897b,0x0029b44d,0x002b740a,0x002b268e,0x0027c15e,0x002c3f41,0x002c31f0,0x00297312,0x00281e2e,0x0027f975,0x002f3db4,0x0007a95b,0x00216541,0x0025c821,0x000a8d4e,0x000b0d65,0x0010141a,
-0x00023950,0x0005af80,0x000de345,0x00157df9,0x0014cc61,0x0018c7b5,0x001bfb39,0x00222c38,0x002ecb26,0x0020065d,0x00044172,0x00241c81,0x0025123e,0x00374f08,0x0048a101,0x0050ba70,0x00501395,0x0043f4c9,0x003b18cc,0x003518cd,0x00354066,0x003b58a8,0x003e7505,0x0038bd04,0x0045f9d1,
-0x0044b5c9,0x003a42e1,0x003489be,0x002bde46,0x00244d50,0x001d8191,0x0015bd3f,0x00255190,0xffffcf7c,0xfff37d94,0x0001c868,0xffd46c3f,0xffc8aacb,0xffe41a68,0xffe89c5e,0xfff82d41,0xfffdeba7,0x001a656c,0x0022f5cb,0x00238f96,0x001995c4,0x001349ac,0x001195f4,0x0024f7be,0x003add1c,
-0x005ca0a0,0x006ab814,0x006cf545,0x005e80a7,0x00548072,0x0050ff59,0x0051fb64,0x00546bad,0x0054748f,0x0045a618,0x00618b8b,0x005d3d1c,0x0048b611,0x004149d9,0x002f9f00,0x0023a1ff,0x000dd789,0x000e825c,0x0033184d,0xffe533ad,0xffc66f77,0xffe7392d,0xffb5b6e0,0xffad8699,0xffc48530,
-0xffe28b03,0xfffe7069,0x0008a660,0x0027bb96,0x00384048,0x003e7d04,0x001dffe4,0x0005a3dc,0x00039dae,0x002a0a26,0x005e2791,0x00a1a535,0x00be8d06,0x00c02a31,0x009014d7,0x006b2c96,0x0050aa78,0x00594b56,0x0066c5bd,0x00715a54,0x006b7d2b,0x00969f6c,0x008dc48f,0x006b0862,0x00521f15,
-0x0030a90d,0x0020c397,0xfffecd29,0xfff621ad,0xfffee7a3,0x002e879d,0x0046b946,0x0048264a,0x0014bba3,0xfff9c658,0xffee7d39,0xffe991eb,0xfff59135,0x002c887e,0xffd8b334,0xffc718db,0xffe416a5,0x0005f7b9,0x0022251a,0x0036aaf8,0x002d6ec9,0x000ad26d,0xffd9bccf,0xffc24ca6,0xffc5d3d5,
-0xffcb2742,0x0068f74f,0x00ae0d7c,0x007f30bc,0x00793453,0x004debcd,0x001b22ed,0x00207bfc,0x002199f7,0x00139aeb,0x00328a1e,0xffefbf30,0x003978f7,0x00a2dfeb,0x007c95a0,0x000cdfb2,0xff95995a,0xff7bb910,0xffba3106,0xffeca729,0x000356b9,0xfffb0a12,0xfff81eb2,0xffe80ea8,0xffe74997,
-0xfffd791d,0x0016fe7a,0x001132b9,0x0024e210,0x0028b49a,0x0044f3ed,0x003837ea,0x00497e45,0x007737a6,0x0079a790,0x006f7677,0x004451c4,0xffe20029,0xff9e3721,0xff788190,0xffebeb08,0x0040aed3,0x004c96b8,0x00539b57,0x000f38c9,0xff7d8b79,0xffc25d8c,0xffd90b44,0xfee5b67a,0xfebb8db6,
-0xff16668b,0x0013df71,0xffdc1810,0xffd8db40,0x00140fb4,0xfffb31fc,0xfffa005e,0x0000cdb5,0x0006c3e8,0x00035aa9,0xffe7a6a1,0xfff04177,0xffeeadac,0xfff691f5,0x001312bc,0x00263669,0x0022f84b,0x000f4521,0xfffa7845,0xffe15a7c,0xffeeec2a,0x0005643f,0x0024436d,0x002eca2a,0x0056273a,
-0x009a7381,0x00150e1c,0xffe99285,0x002d49d3,0x008547ca,0x00b1782a,0x009adea0,0x00544fa3,0x0045cbf0,0x00365521,0x00a9f613,0x00a718eb,0x0052ab65,0x00358013,0x003259b0,0x00292fcf,0x00050bcf,0xffffd582,0x00006768,0xfff9ec26,0xfffb587d,0xffffe017,0x00072493,0x0014573d,0x002132d0,
-0x0014d915,0x000735af,0x00064da6,0x001a1c7b,0x00366e97,0x00570dfb,0x004e6822,0x00400da9,0x0024648b,0x00270401,0x000ed725,0xfff7f7c6,0x0003859c,0x00120f54,0x0010a26b,0x0047cd6a,0x007f8dd8,0x00dbecbe,0x006f0e80,0x0083594e,0x003685cb,0xffd1bc42,0xffdda534,0xffebff1b,0xfff65c64,
-0xfffca150,0x0013b859,0x00026e54,0xfff5239f,0xffee86b7,0xfff1dc26,0xfff5c6a1,0xfff8ee27,0xfffb41ab,0xffefea5b,0xffd216f0,0xffd2d658,0xffce67f0,0xffd4e963,0xffcfc4ac,0xffd6460d,0xffeed5b3,0x000c35e9,0x0030bea8,0x005617ef,0x006848cf,0x007b251a,0x00897872,0x006ec438,0x00591060,
-0x0055a2eb,0x005ad636,0x005a0b74,0x005819ea,0x00766685,0x00179486,0x00258825,0x000a8193,0x001ba48e,0x0016f8a7,0x001756ac,0x0010614f,0x000d0b21,0x0010bc89,0x00164cc1,0x00188b7c,0x0023ca0e,0x001e9c10,0x000d8fb5,0xfffda2e1,0xfff5848a,0xffef267e,0xffeba644,0xffeb8efe,0xffef5eef,
-0xfffb6176,0x0008cb16,0x000a16eb,0x0026020d,0x0034f909,0x003d2786,0x004c8f5a,0x004c3714,0x00488518,0x005327cf,0x006b7310,0x008fd120,0x00704033,0x00575720,0x0039d085,0x0021bad6,0x0040ecff,0x0038b3fa,0x00386d99,0x003f7d9f,0x003d8c15,0x00417666,0x00432d32,0x0048c105,0x00390ef8,
-0x002fe7d1,0x0022cc5e,0x0014f21a,0xfffdda4f,0xfff62eba,0xffeedbe8,0xffeb9de9,0xffe16dce,0xffe72660,0xffee2ab0,0xfff2f696,0xffee8276,0xffeb17cf,0xffe59f9e,0xffed74fe,0xfff473e7,0xfffaf19a,0x000dd3ae,0x00232091,0x0039145d,0x0039173c,0x00353b53,0x0035d78d,0x002f124a,0x002fc68f,
-0x00343e7a,0x003ce4d8,0xffe70c4b,0xffeb6c98,0xffd29da6,0xffe9a2a9,0xffe4af3c,0xffe327cf,0xffe8ec09,0xffe793cd,0xffe999de,0xffeb3193,0xffe8ebbe,0xffecbf3e,0xffe93d05,0xffe78f24,0xffe39de7,0xffe28c4d,0xffea8399,0xffe541fe,0xffdeef71,0xffdfa279,0xffdd12fe,0xffe1dbb3,0xffe35a49,
-0xffe4805b,0xffe4d039,0xffe4811e,0xffe33ca1,0xffe1dbbe,0xffe3ffa1,0xffe7f20d,0xfff00719,0xfff7b64d,0xfff7e2c5,0xfff61c1f,0xfff137bf,0xffebc975,0xfff1d513,0xfff3cb8c,0xfff7b1ec,0xffec3763,0xffceee21,0xfffe6e1f,0xfff21291,0xffd88798,0xffd5a6b8,0xffd350ce,0xffd02826,0xffcd565b,
-0xffcb75fd,0xffc8a4a7,0xffec7958,0xfff666d6,0xffcc8486,0xffeada27,0xfff2ecec,0xffe802da,0xffe9e2db,0xffeaf018,0xffeb3c80,0xffebd4c9,0xffec6945,0xffed112a,0xffeeeca4,0xfff0b1ec,0xfff179ad,0xfff2eef7,0xfff32b73,0xfff4977e,0xfff269b1,0xfff20459,0xfff2657d,0xfff3a53a,0xfff05c6c,
-0xffe70f02,0xffee8f53,0xffdf190a,0xffeed3f4,0x000ff427,0x00454f59,0xffe016e1,0x0004e465,0x0034504d,0x002fbb2a,0x002e7fa7,0x00302c12,0x003662f0,0x003980f0,0x003ada88,0x000ae6b9,0xffe9379d,0x0049030a,0x000f4d42,0xffeff44b,0xffdcad68,0xffe89902,0xffe63055,0xffeaca25,0xffeb89e2,
-0xffeba79c,0xffe9a453,0xffe97a03,0xffe8d457,0xffe84535,0xffe57e1a,0xffe3724a,0xffe04602,0xffe403b2,0xffe83bed,0xfff44907,0xffecb8ba,0xfff29b13,0xffdefd3e,0x001a8fb8,0xffe3f0d3,0x00000bac,0xfff48f09,0xffe10d29,0xffea974b,0xffd0d9ef,0xffcdcab4,0xffdfe7cc,0xffda28bb,0xffe53366,
-0xffe68d04,0x0005aa27,0x0006d239,0xfffd1e20,0xfff98684,0x001b1ff9,0xffdcd9ff,0xffe14513,0xffe5e2b0,0xfff17e84,0xfff75e41,0xfff78db9,0xffecfc8f,0xffe9a048,0xffe407ca,0xffe24dd8,0xffdda407,0xffdb274f,0xffd78bac,0xffe24310,0xffef15c1,0x000991da,0xfff8c2bc,0xfff8af68,0xffe4c910,
-0xffeef8cc,0xffeaee6f,0x00109222,0xffeca973,0xffe45dac,0xffe8e817,0xffc9093f,0xffba8f5f,0xffd1001a,0xffcc91bd,0xffed3b8a,0xffde28f8,0x00096c77,0x0003a97a,0x0008e722,0x000035f2,0xfff7a689,0xffdeea49,0xffd4c0b7,0xffdfb67c,0xfff18bfd,0xfffa8710,0xfffb74a5,0xffed22cb,0xffee764a,
-0xffe9dc03,0xffe867d1,0xffd47e93,0xffc919d5,0xffc15200,0xffd8a837,0xfff32e0d,0x002332aa,0x0006eba2,0x0004cb46,0xffeef2d5,0xffeaf90b,0xffe1a86c,0x0014a4b2,0xffd2b5c7,0xffbd9712,0xffdeb483,0xffab9ba8,0xffa57444,0xffc8b535,0xffdfa50b,0xfff0de8f,0xfffe46ff,0x001a50f8,0x0023c516,
-0x00330674,0x000d1752,0x00059b8b,0xffe080af,0xffd49e45,0xffea2cce,0x000c3ce3,0x001f0364,0x001edc89,0xfffa7090,0xffeb2f96,0xffd8783e,0xffdd7314,0xffc6371a,0xffc19a48,0xffc45e6c,0xffee3693,0x0019fc79,0x005b8c62,0x002af797,0xffcac722,0xffdbb49e,0xffe81d19,0xffeabac5,0x0006a4a5,
-0x0030cb4b,0x00415079,0x004b9b77,0x0014d1fe,0xfff38e6a,0xffed4f78,0xffe543ed,0xfff18e9f,0x002acba9,0xffd38703,0xffb8ce24,0xffce9e4c,0xffd0d511,0xfff00918,0xffe04b7c,0xffb0e3aa,0xffb5fa74,0xff972b83,0xff9e7063,0xffaff56e,0xffc45dd5,0x0039db41,0x005c9a0f,0x000ef281,0xfff9b802,
-0xffb38821,0xff5e4e51,0xff82f180,0xff9ac3cf,0xffa81c07,0xffd08dee,0xffd02cdb,0x000055d8,0x00637c4d,0x00543d52,0xffee5520,0xff84b693,0xff6f8e7b,0xffb02dab,0xffe6fc01,0x0001b768,0xfffbee29,0xfffb40ab,0xffe8ff0a,0xffe15f5b,0xfff4ce3e,0x000a2025,0x000527f4,0x001d6f20,0x0030daf8,
-0x002d27dd,0xffec6238,0xffe0ee8c,0xffdc723f,0x001763a4,0x002b2796,0x000b68c5,0xffc98e9b,0xff932b2d,0xff72e0ad,0xffdd15f1,0x0025fa00,0x002f3d41,0x00088ccf,0xffcae159,0xff7ec384,0xffa9e396,0xffbbdd3f,0xfefa7096,0xfed6d51e,0xff21a588,0x0018ecc8,0xffd3aad2,0xffcf443d,0x0006f9f9,
-0xfff85ea3,0xfffa63b1,0x00002d46,0x0002e26a,0xffffe477,0xffe9c545,0xffe877ef,0xffdb8266,0xffe92249,0xfff4dce8,0xffff99a9,0xfff7b5ec,0xfff040ef,0xffea2092,0xffcd17f6,0xff9ba7cd,0xff779adf,0xff6fb3f6,0xff7beeed,0xffc51ced,0x00466c73,0xff90651f,0xff2010f1,0xff1f101f,0xff61388f,
-0xffaf31da,0xffce391f,0xfff99240,0xffbcbaa0,0x000bd9e2,0x008b0f46,0x00872e13,0x005c22c6,0x001fa034,0x00274fad,0x00242c3a,0x000555fb,0x0000c0d7,0x0002ed06,0xfffa6a78,0xfff97fdb,0xfff70307,0xffffd64c,0x000f40d2,0x0018ea00,0x000edb02,0x000c9a14,0xfffe13ef,0xfff113a7,0xfff07730,
-0xffff0a20,0xfffafa10,0xfff94453,0xfff0cf24,0xffec8a22,0xffd57b2f,0xffc93d50,0xffd66747,0xffde453d,0xffcbce5d,0xff96deb9,0xff832075,0xff949551,0xffa25269,0xffa71db7,0xffdd583e,0xfffdc78b,0xffd6eaec,0xffda1508,0xfff54b47,0xfff991b0,0x0000d368,0xfff99b81,0xffec3588,0xffe96665,
-0xffed92f9,0xfff2c75e,0xfff2a160,0xfffaef13,0xfff1ba61,0xffd4ee0c,0xffc5e67d,0xffc35eb3,0xffbec6ed,0xffc54439,0xffd5a900,0xffe512b0,0xfffce125,0x00098662,0x0006b01d,0x000e57b8,0x000da982,0xfffad486,0xfff288db,0xffd10fb1,0xffacde5c,0xff8ff6e4,0xff8290af,0xff7f699c,0xff9bfa8b,
-0xffb2c093,0xffcfb678,0x000a7f5b,0xfffd6769,0x000aa78e,0x0000a9cf,0xfffe0888,0xfffffaa9,0x00004e2b,0x0007fb5b,0x000afa14,0x0018f41e,0x00164d04,0x000bdd72,0xfff925c8,0xffeb8231,0xffdf1a91,0xffe4bc44,0xffe74bcd,0xffefdc30,0xffebb73a,0xffeb1a26,0xffe9ccb4,0xfffaaccf,0x000abbbd,
-0x0017ed92,0x003149f8,0x00442ecd,0x00573e65,0x0051533f,0x00449244,0x002670b0,0x0021eeb4,0x000d05fb,0xffea079b,0xffcc7d5f,0x0022c102,0x0026f752,0x002a59f0,0x0029ca25,0x0037c943,0x00392576,0x003d19ee,0x00408dc8,0x003a7813,0x002fb12e,0x0026b949,0x0014bd19,0x00099a90,0xfffbb036,
-0xfff54d87,0xffeb56a6,0xffe0cb42,0xffe1d4f9,0xffe186d1,0xffdb3372,0xffd96290,0xffdd4be1,0xffdd84e9,0xffe50843,0xffeb33cd,0xfff1c744,0xfff6bbc7,0xfffc6d66,0x0004f966,0xfffd7627,0xfffa8a92,0xfff5e63b,0xfffac7a0,0x00010352,0x000e1a79,0x001caf24,0xffd4df70,0xffd67ac6,0xffef0a64,
-0xffdfb0a3,0xffe2cc7d,0xffe55afb,0xffdf3f7d,0xffe0109f,0xffd74416,0xffd0c7ac,0xffd18f4f,0xffca39f7,0xffc917b5,0xffc543a5,0xffcfdd0d,0xffd3d9e2,0xffce469c,0xffd4779b,0xffdeb94d,0xffda6d97,0xffe200dc,0xffe19e1c,0xffe33b51,0xffe4132e,0xffe4a3ae,0xffe61e5c,0xffde96f7,0xffd6c5e2,
-0xffcf60f4,0xffc93b90,0xffc420b8,0xffbe14aa,0xffc643b4,0xffcbe3a0,0xffcf1c7c,0xffcffee1,0xffd9bd4e,0xffd869dc,0xffd9e2c2,0xffe880e9,0x000198ca,0xffd71642,0xffea2141,0x000188be,0x00009561,0x000082e2,0xffff6291,0xffffb5f1,0x00002232,0xffff3a99,0xffde32bd,0xffcd4cb9,0xfffe167a,
-0xffe0d824,0xffd3aac5,0xffd583b5,0xffd73f89,0xffd720f8,0xffd88108,0xffd8eb86,0xffd966f7,0xffdad36e,0xffd7ee33,0xffd65ba9,0xffd44c60,0xffd29cc6,0xffd0ae47,0xffccb454,0xffcfa223,0xffd0ef17,0xffd38b1e,0xffd6365c,0xffce1079,0x0029d8b0,0x00258a47,0x0034b142,0x000eb1a3,0xffe9ac6e,
-0xffcaf383,0x001bd998,0xffee6f6f,0xffca2358,0xffc20e92,0xffc0963a,0xffc66068,0xffc2cb17,0xffc3e5bd,0xffc3ad59,0xfff05196,0x0019b04c,0xffc7830d,0xffed9a88,0x000c7dff,0x002f2fe8,0x00240262,0x002af812,0x00302598,0x003169a3,0x0031523a,0x002d8a9c,0x002d86cc,0x002d81cc,0x002f0fcd,
-0x002d09e6,0x002c451e,0x002ab20b,0x002dd54a,0x002da32a,0x002b7ef7,0x002ac373,0x002c3019,0x002e9d1b,0xffddda0f,0x001cbb30,0x0007ec23,0xfffa8eed,0x0004b4c2,0xffffea74,0x00029794,0xffffef21,0xfff9dd9f,0x000985c1,0x000c3e44,0x00093300,0x000aacad,0x00155068,0x00199fa7,0x001a53ff,
-0xffe73a15,0x0025f11c,0x00307189,0x003b1ae7,0x004e004e,0x0054c7e3,0x00532de6,0x0042152d,0x003dacfe,0x0038fbe0,0x003d4cf5,0x003a0208,0x0039a037,0x00362b0b,0x003f35c6,0x003f0753,0x003783a7,0x0031209d,0x00373460,0x00299769,0x0004e0ad,0x000a8d5c,0x00085592,0xfff7e309,0xffee6877,
-0xfff11efb,0xffca97ad,0xffccc537,0xffd448c5,0xffeb653b,0xffe702cd,0xfff28e71,0x0006d2e0,0x00158ade,0x0011cd19,0x0010459e,0x00009178,0x000f780d,0x0033ae2e,0x003e4d71,0x00615ec1,0x006ba57b,0x006afe30,0x00511dc2,0x0052bb92,0x0050cac6,0x005be803,0x004aedcf,0x0046df31,0x0042c87f,
-0x0053ba39,0x0052b2c0,0x00477d5a,0x003c8ee1,0x0034250d,0x001dfc8f,0xfff430b3,0x0002596f,0x001516ed,0xffe1a9cb,0xffc74773,0xffd647fd,0xffad7f2d,0xffa4b31a,0xffcfc57a,0xffd7aa3b,0xfff06958,0xffffad3d,0x002235fd,0x00356dcb,0x0028c3c3,0x002a1745,0x00057849,0x00145eef,0x0046c60b,
-0x0066549c,0x00a8655b,0x00bd34b5,0x00b74a88,0x007c1e3d,0x0067a870,0x0056774c,0x006c8224,0x005a43fc,0x0057473c,0x0059bad7,0x00732f51,0x00722f66,0x0060bd85,0x003f5bbe,0x00757fea,0x002a6c55,0xfffb0bb4,0x00008b63,0xfffa7c16,0x002d4976,0x005101af,0x005b57a9,0x0020622f,0xfffb6e59,
-0xfff11a39,0xffe940fb,0xfff3a79f,0x0029c1a4,0xffd7dae4,0xffc5d704,0xffc6dae9,0xffe5d650,0xffdde283,0xffeec3df,0x0011ad77,0xfff6e3b8,0xffdcfb98,0xffc7f39d,0xffda58c0,0xffea7fea,0x00879227,0x00bb1af0,0x00794fda,0x0075a705,0x004d5602,0x001304e7,0x002a24d5,0x0030e850,0x001f6e4c,
-0x0059f6fa,0xffff62cb,0x0024c56a,0x0068a8f2,0x0066ec3b,0x00209fd0,0xff983919,0xff73f1e8,0xffaf7a25,0xffe84e60,0x0003a1da,0xfffe2056,0xfffea499,0xffec3317,0xffe46562,0x0004f262,0x001ce68f,0x001302bb,0x00210e3f,0x001ccb51,0x0048cf44,0x004a00cd,0x0051d752,0x007e4d72,0x008aa1e7,
-0x006bf9c4,0x0013f12f,0xffbdd44b,0xff8dcc47,0xff8e8ee0,0x0002e303,0x0041a7dc,0x002ee20a,0x000f3bc2,0xffd21418,0xff855fed,0xffc38b52,0xffcabb79,0xff33ac00,0xfee4c0aa,0xff3085a9,0x0009ae35,0xffd9ff3d,0xffce93f8,0x0002e390,0xfffb3dbe,0xfffebced,0xfffee28e,0x0002e90f,0x00025eb9,
-0xffeec1d5,0xffeb66dd,0xffe8c1ef,0xffe62c52,0x0007dd80,0x000db7bd,0x000d9db4,0x000fadef,0xfff1c369,0xffd81fd5,0xffed7b8b,0x000c4056,0x0028ed33,0x004a26c0,0x0076d612,0x00b5736b,0x000ece6a,0xffdf3250,0x002c1053,0x0077e19e,0x00a8deb1,0x00aee289,0x002bc07b,0x002697b6,0xffe9eb35,
-0x006e7960,0x0090bbd4,0x005a8030,0x0029b668,0x0022a1d9,0x002a9efb,0x0008dbe8,0x000196c4,0x0003a8af,0xfffd92b4,0xfffaf307,0xfff7ee3f,0x00052103,0x0013ce2a,0x00247ba4,0x001eb8bf,0x0008ed20,0x0011e09f,0x002ff6ca,0x00426ca4,0x005ac00f,0x004dfa9a,0x00336aca,0x000c4c21,0x000cd5fb,
-0xfff86a04,0xfff10aee,0xfff5af07,0x00087ead,0x0018ee83,0x0053ccbb,0x0088fae2,0x00d053a5,0x0058af4d,0x007e61c2,0x0021397e,0xffc3407d,0xffd4230f,0xffe32d4d,0xfff2f21d,0xfffe91b4,0x00046fde,0xfff8f032,0xfff5c24d,0xffeee511,0xfff240c0,0xfff67e0e,0xfff89d36,0x00001f79,0xfff75444,
-0xffe2f741,0xffd6b85d,0xffc40d5e,0xffd89099,0xffd60cee,0xffd5dc96,0xffed976e,0x00064a35,0x0025587a,0x00404a07,0x004fa598,0x005a72de,0x0062453b,0x004dc7a9,0x003c6fbb,0x003d40d5,0x00399caf,0x003688a5,0x004444db,0x0063b7c4,0xfff52bab,0xffeeef5d,0xffd6c49a,0xfff5e87f,0xfff99d77,
-0x00009cfa,0x0005a748,0x000153fc,0x0008a2b1,0x000aaff4,0x000e1c88,0x0017ddd6,0x001ae717,0x0014c2ec,0x0005e787,0xfff93cc5,0xffec1093,0xffe5077e,0xffe68151,0xffe9298c,0xfffeeca7,0x00113f17,0x0015e583,0x002cdb5f,0x003c2163,0x004621da,0x005a2a78,0x006078b9,0x0060e08c,0x0064ac73,
-0x007263b5,0x008aeba1,0x006eb3a8,0x0050bda9,0x00289f9c,0x0001c2ff,0x00579e8b,0x00492c26,0x003a8159,0x004367c7,0x003cb28f,0x00418e31,0x00412fde,0x0046625a,0x0037e591,0x00387178,0x002981ba,0x00270660,0x000b8df4,0x0008903d,0xfff9d562,0xfff57780,0xffe56be2,0xffe9a111,0xffe8eb99,
-0xfff4f792,0xfff8c482,0xfff01d7b,0xffecdad6,0xfff1e566,0xfff74e27,0xfffacb00,0x000f2530,0x00232ce0,0x003863e4,0x003d2a54,0x003ede69,0x00439026,0x003d004f,0x003dced3,0x0046416b,0x004d3b76,0xfff8bb19,0xfffaee32,0xffd5ed7c,0xfff9d205,0xffed9cc6,0xffed5917,0xfff744e2,0xfff5570f,
-0xfff7723d,0xfff1cc92,0xffe48883,0xffe994a4,0xffe78169,0xffe08382,0xffdb3dc0,0xffdf98f9,0xffe858b1,0xffe8462a,0xffd97dc3,0xffe8efea,0xffe62a01,0xffe9ec4b,0xffebc3bb,0xffebfe5b,0xffec3b1a,0xffeb2e3e,0xffee873a,0xfff08160,0xfff48195,0xfff87876,0xffff6939,0x0006fb2a,0x0007ae14,
-0x000685b2,0x00025dc5,0xfffc3080,0xfffd1a5b,0x00037ca3,0xffeffe49,0xffdcd3bb,0xffc83e94,0xfffb9e38,0xffe2c544,0xffce328c,0xffc89f69,0xffc5725d,0xffc4a6ab,0xffbde838,0xffb9c25a,0xffb64ea3,0xffd5e7ce,0xffedadd8,0xffbcc3df,0xffd6ec37,0xffe94bbd,0xfff4e447,0xfff1848e,0xfff301d9,
-0xfff2cae4,0xfff338e2,0xfff3b11e,0xfff3a522,0xfff6228d,0xfff82741,0xfff9d0eb,0xfffc6be9,0xfffe07db,0x00005ee6,0xfffdf3e6,0xfffd454d,0xfffd83ae,0xfffedf58,0xfff70b8a,0xfff02485,0xfff5e24f,0xffe2dfd0,0x00137f21,0x00326d9e,0x0040980d,0xffffe80a,0x00270e43,0x003a5ece,0x0038f0e3,
-0x0036b66e,0x00314118,0x0039a178,0x003b9c87,0x0038a91d,0x002b5e91,0x0008dcb4,0x0042d43d,0x002ea43a,0x00138de8,0xffe1c11a,0xfff19808,0xfff00991,0xfff40588,0xfff4f13a,0xfff51518,0xfff2af09,0xfff326af,0xfff2a2bb,0xfff36001,0xffef1911,0xffedba1c,0xffebb8fd,0xfff24a62,0xfff5c6dc,
-0xfffcb404,0xfff555dc,0xfff3b432,0xffee9df4,0x003382c4,0xfff1ad29,0x000bfe35,0x00045f8f,0xffefb1e0,0xfff0c933,0xffdcdde1,0xffe2bfc7,0xfff85c32,0xffef0e7c,0xfff149b4,0xfff4152a,0x0010b25f,0x00103ebf,0x000ebb17,0x0007c439,0x0031221d,0xfff2826c,0xffeed8d7,0xfff9481c,0x0000e347,
-0x0005892f,0x0002e328,0xfff69e62,0xfff566e7,0xfff25888,0xfff5b1c5,0xffecba08,0xffebba0e,0xffea8c24,0xfffd4f70,0x00072cf8,0x0011b923,0x0001020f,0xfff67ff3,0xfff5b764,0x00105f4a,0xffff111e,0x001159a2,0xfffb7a5d,0xfff2aca8,0xffe51354,0xffd7b817,0xffbd6815,0xffdd5e66,0xffc9bc48,
-0xfff33d28,0xffdd9a76,0x001278c8,0x00090731,0x00088d92,0x000ba69f,0x0010730a,0xfff40dd5,0xffe24634,0xfff4b114,0x0004c516,0x000dbefa,0x000cd0e7,0xfffe10f3,0x00018809,0xfffdadfe,0x00028992,0xffe6b279,0xffe0a5cf,0xffde1bcb,0x000643f0,0x0017d0cc,0x0029357f,0x0010e866,0xfff0b154,
-0xfff81117,0x00021274,0xffe98a44,0xfffec0a5,0xffdb7c73,0xffc06cc6,0xffc88d56,0xffa2e42e,0xffa106f8,0xffc92076,0xffd63be7,0xffe3bd7b,0xffeb00c5,0x001335fa,0x0019abde,0x002d62c2,0x00140d5d,0x00247d14,0x0000cb31,0xfff2fc19,0x0014921a,0x003261b7,0x00402923,0x003681af,0x000d920a,
-0x0003d3ef,0xfff83f7d,0x000756d1,0xffe6be9b,0xffe54612,0xffed8e45,0x002d95bc,0x004ab513,0x0058a797,0x0028f5bc,0x00035d54,0x00191b5b,0x0039706d,0x0025f902,0x001f6855,0x0044ec4b,0x00546a2f,0x006259b5,0x00264d53,0xfffd2c3d,0xfff5c098,0xffeafe91,0xfff2cfa3,0x002a173f,0xffdae2be,
-0xffbbb8bf,0xffc16a7e,0xffb8ee4c,0xffd9e672,0xffc562eb,0xff929804,0xff98b133,0xff6ba4c0,0xff92db86,0xffaabce7,0xffb63a74,0x00238a18,0x0037e985,0xffec6e88,0xffe59f38,0xffbe0baa,0xff8c9879,0xffb8bd5f,0xffc90d26,0xffbf15ca,0x0007191f,0xffad6218,0xffeb1d46,0x00571feb,0x004c46a4,
-0x0011432a,0xff95a5cf,0xff6b9660,0xffac27a1,0xffe2289f,0x00010bb1,0xfffe29e5,0xffff9565,0xffecc801,0xffddf9e6,0xfffa60ab,0x0012eaa7,0x0015abfb,0x001c8596,0x00354fd0,0x003f3074,0x000e547b,0x00178a16,0x0011a0c7,0x003e3c61,0x00336e5b,0xfff4dab9,0xffb85c70,0xff901c65,0xff8cae96,
-0xfff953e6,0x00373e10,0x003372b6,0xfffca8b0,0xffbe9655,0xff8c3628,0xffa8d4ac,0xffb17cee,0xff511e18,0xff1cb739,0xff44a153,0x000c65a6,0xffda5833,0xffda1b42,0xfff5e158,0xfffb4d3f,0xffffe878,0xfffee025,0x0002365d,0x000110a3,0xfff13f30,0xffea65b2,0xffd97d8d,0xffe823c7,0xffef11ae,
-0x0002d1ce,0xffebac34,0xffdbb4bc,0xffdf66b8,0xffc04aa2,0xffa18ea9,0xff906b56,0xff91e0b2,0xffade1f2,0xffe572cb,0x0043bee9,0xff758f2c,0xff2bd69c,0xff81fd07,0xffcadf8d,0x0019d6ed,0x00456dde,0xfff0e26a,0xffedbbfe,0xffe50fa1,0x00513ae5,0x0067e8a8,0x005a4746,0x00125327,0x0011cf0b,
-0x001ec224,0x0007f32a,0x0001417c,0x00043a8d,0xffff0088,0xfff94527,0xfff47736,0x00002b32,0x0013ef25,0x0020552e,0x0017588a,0x001f9657,0x000be00e,0x00033c8f,0x00098fc9,0x0011953f,0x0014dbc2,0x0009d3ac,0xfff4e8fe,0xfffa2fc9,0xffef0ca0,0xfff7ed98,0xfff955dd,0xfffc3a9c,0xffdc2ae2,
-0xfffa9d12,0x00079a71,0x00110279,0x000653c7,0x00011d66,0x00217dfb,0x0022f88b,0xffedef4b,0xffeab51b,0x00021626,0x00021539,0xfffe2010,0xfffe0a27,0xfff3c28c,0xfff41955,0xfff1726d,0xfff50f33,0xfff7f2c9,0x000127b1,0xfffa7a4c,0xffe50c8d,0xffd75ea1,0xffd9efbc,0xffcbfc04,0xffcebcbe,
-0xffdc6941,0xffe38d2c,0xffffcb94,0x00121472,0x001a1219,0x0021db42,0x0022ca57,0x001a3289,0xffffd94e,0xffe3845d,0xffc85cca,0xffbefb79,0xffbdefd7,0xffc0f2dd,0xfff4daa5,0xffaf735b,0xffd0a539,0xfffb87f9,0xfff8a541,0x0004f7e8,0xffff739e,0xfff9dce8,0xfffd727b,0xfffae912,0xfffe057b,
-0xfffd12e9,0x000da5bd,0x0011ba2f,0x00112d93,0x0002e55b,0xfff8b79a,0xffea818f,0xffe4fda4,0xffe0ad3a,0xffe73c54,0xffe79eac,0xfff01e58,0xfff78eae,0x0011bada,0x00257380,0x0031a455,0x0045d451,0x0050af92,0x005a423b,0x004fb949,0x003d79fc,0x001ee0bb,0x0011d36d,0x0000dd92,0xffe3066a,
-0xffca63d5,0x002ece25,0x003a488a,0x0046de0e,0x003d9962,0x0048bd0b,0x0044097b,0x0040bf76,0x003dccb9,0x003e67f9,0x00353efe,0x00382bd4,0x00223a66,0x001ba932,0x000de545,0x00048915,0xfff70811,0xffeae78e,0xffede41b,0xfff3442c,0xffe81f7f,0xffdedd50,0xffe2bfd5,0xffdf3f27,0xffe4cc1d,
-0xffe8a61e,0xffecc6f5,0xfff83823,0x00046464,0x00130d35,0x0011c545,0x00138677,0x001319e4,0x00165414,0x001a32ab,0x00223ab6,0x002e6c17,0xffee0990,0xfff1fa02,0x00052fa1,0xfff3d5cf,0xfffa7634,0xfffa24e8,0xfff33efa,0xfff48961,0xffe8d38c,0xffe44269,0xffe724d4,0xffdcd83b,0xffd721ea,
-0xffd4d4e9,0xffdd714c,0xffdd5e81,0xffdabdc6,0xffda3e6f,0xffe6f38e,0xffd8bb5b,0xffde6707,0xffe06ca3,0xffe213c1,0xffe38cf8,0xffe484e9,0xffe56a0a,0xffe064c3,0xffdb9f14,0xffd8c610,0xffd6b6cb,0xffd66352,0xffd6821a,0xffdd1977,0xffe3aadd,0xffe8434a,0xffeaf21a,0xffe6608f,0xffe4b8ab,
-0xfff5c067,0x00041103,0x000a7f25,0xfff02983,0x00048d20,0x000f3dc5,0x000d77a1,0x000c3545,0x00075335,0x00086dfc,0x0007f05b,0x00049168,0xfff825fd,0xffe36863,0x00045d62,0xfff7ce73,0xffe828ae,0xffd6b5a8,0xffdb6164,0xffda4b1e,0xffdaf2b0,0xffdaf472,0xffdb0450,0xffdba9e7,0xffdb3ed6,
-0xffdb83e4,0xffdb306c,0xffdbaf6c,0xffdbd6e7,0xffdb010c,0xffdd5760,0xffde7ad3,0xffe045e5,0xffe2e718,0xffd62205,0x0011de72,0x0011a0cf,0x001e9326,0xffecdb78,0xffd8543c,0xffe2953a,0xfff77660,0xffda9948,0xffd6fe49,0xffd328b9,0xffd269d7,0xffda27b4,0xffd7183e,0xffd9413f,0xffdb7d08,
-0xffdbb5e7,0xfff4a7dd,0xffe36ca9,0xffdc8927,0xffeb95f1,0x0018ed8f,0x000f5b61,0x001314a2,0x0017480d,0x00185400,0x0017cc9e,0x00130788,0x00146e9a,0x0014b5ea,0x0017a19d,0x0011e8f7,0x00104d42,0x000f4481,0x001273f0,0x0013c932,0x0016a6d8,0x0013f4f2,0x001706bb,0x000fa3b0,0xffd81f9b,
-0x0002f01c,0xffec66cb,0xffee1b54,0xfff425bf,0xffe99dbf,0xfff28062,0xffec81cc,0xffe23bb3,0xfff147b0,0xfff805de,0xffef8a3c,0xfffae378,0x00049f40,0xfffdfc2f,0x0008ff9a,0xffe7d811,0x000d8ca6,0x001b7170,0x001dc7e3,0x002c7f90,0x0032309b,0x00303dc4,0x001e6491,0x001e3510,0x001b2143,
-0x0021b1ed,0x0014ff43,0x0010959c,0x000e0471,0x00169cb1,0x001c3d8f,0x00217825,0x00171f8f,0x00250449,0x00157ad2,0xffed13dd,0xfff7d128,0xfff1e8d7,0xfff12bb6,0xffea7add,0xffdc35b0,0xffc73c02,0xffcb6db7,0xffc3afb3,0xffe19f48,0xffdd8b7e,0xffdffeb7,0xfff83bb4,0x000223d2,0xfffd5bbc,
-0x00020457,0xfff13e65,0xfffeff23,0x001b480d,0x001d2f92,0x00369303,0x003ee7da,0x003c9eb4,0x001fd277,0x0029cd19,0x002888f3,0x003865db,0x001544da,0x000bed8d,0x000cda3e,0x001c5010,0x00275312,0x0034a5d9,0x00220a36,0x001eab12,0x0007b15d,0xffdeaf00,0xffeb42ef,0xfff1d89d,0xffddfb66,
-0xffca6e80,0xffc3fc56,0xffab7603,0xffa4fb45,0xffd5efba,0xffd4366d,0xffe456af,0xffeefc6e,0x0016dc3a,0x00257fb8,0x001310ac,0x00266c7e,0x0009c192,0x001482f6,0x003598e5,0x00401a2b,0x006d291b,0x007bfdbd,0x00713817,0x0038ceb1,0x00338288,0x002cffd3,0x0049b600,0x00198aac,0x0008ff19,
-0x000dbc5e,0x00261f79,0x003c2596,0x004eb366,0x0023302e,0x00741f4a,0x00240ce0,0x00044e87,0x00104d84,0x0008b5bf,0x00336b64,0x00546a5d,0x00606686,0x002a282d,0x0002a742,0xfffa83c8,0xfff10ecf,0xfff69985,0x00238726,0xffde02d8,0xffc88975,0xffb1690f,0xffbf5a05,0xffa7a5cd,0xffa945e6,
-0xffcde35f,0xffc52faf,0xffbbb5e4,0xffbabf32,0xffd94959,0xfff81ffa,0x00707e9f,0x0087ef04,0x003d3b1e,0x0035de1c,0x00119c78,0xffda27e6,0xfffd0cec,0x000b3d49,0x000137a9,0x004d12dc,0xfff6b1fd,0xffff5286,0x00259428,0x003e7a9e,0x00218707,0xff9b8e1d,0xff7676b0,0xffadee3c,0xffe3c8e8,
-0x000010dd,0xfffef0eb,0x00015b77,0xffef009a,0xffe38181,0x00044951,0x00180b48,0x000f2ec0,0x00188fff,0x00198e09,0x003fbf82,0x003bfad5,0x00386ffa,0x004b177a,0x0065eded,0x00439a76,0xffe54ea7,0xffa46694,0xff88e676,0xffa69ed1,0x0011349b,0x0037d0da,0x001458c0,0xffd11aeb,0xff9e1b91,
-0xff94fed0,0xffbf83fb,0xfface332,0xff7959d6,0xff324c36,0xff61b63e,0xffe8d1b4,0xffe42451,0xffdb3111,0xffed64fa,0xfffba14b,0x0001837a,0xfffe0b0c,0x00017dbf,0x00034716,0xfff662cf,0xffe85111,0xffdf9c83,0xffdbe2ee,0xfff3d44d,0xffee95aa,0xffea1ca2,0xfffc65d8,0xffe4f635,0xffcc1fc1,
-0xffd14b13,0xffde91da,0xffe7cb2f,0x001f1a9a,0x0050f067,0x00863bb4,0xffd682f7,0xff9fea54,0xffe4d57e,0x00129a28,0x0047fce3,0x007798e2,0xffec28bc,0x000f83ee,0xffd975af,0x002b4280,0x00526606,0x0049f6e8,0x00103c7e,0x000a59e8,0x001dbc97,0x00090b58,0x0001815b,0x0003e9d4,0x000090c7,
-0xfffa7ca7,0xfff3b50a,0x00015d8b,0x00105b94,0x0021205b,0x001f8ebb,0x000e9674,0x0016f0c6,0x002c355a,0x002dd8ad,0x0035b5d0,0x002cab58,0x0014c4fa,0xfff0d7e5,0xffed5e74,0xffdc4b89,0xffe1383f,0xffdf479f,0xfff3b118,0x000bf002,0x002f84c0,0x00457b55,0x004f596b,0x0020585a,0x0027572c,
-0xfffbe577,0xffdad9bb,0xffdb28b7,0xffe5d0db,0xfff5734c,0xfffed709,0xfff567b1,0xfff60067,0xfff899ec,0xfff5e52f,0xfff50440,0xfff75b80,0xfff8f498,0x0002afdd,0xfffdb42c,0xfff30909,0xffdbd32d,0xffc47e01,0xffd5ac88,0xffdae71c,0xffdc21f6,0xffecdbad,0xfffe7b37,0x0010430c,0x0019728b,
-0x001e1037,0x001ba9bf,0x0015796b,0x0007e1af,0xfff5f0c0,0xffecfacf,0xffdbb992,0xffd7d037,0xffee0e7a,0x000d1533,0xffc584d8,0xffb838a7,0xffc0251d,0xffd8d815,0xffe6a567,0xffee8647,0xfffa80b4,0xfff8c67c,0xffff25bb,0xfffe63d7,0x0000da66,0x000810d7,0x00105204,0x0014e413,0x0008cdbe,
-0xfffa594b,0xffe8e652,0xffe0d0bb,0xffe186da,0xffe457e9,0xfff64dc6,0x00059e9c,0x000f05e2,0x001f70dc,0x002ecbc4,0x003b13b6,0x00525f81,0x0060b466,0x006855e8,0x005fb095,0x0055f92f,0x004a5429,0x00397194,0x001fb365,0xfffad0c9,0xffd49892,0x004804f3,0x003ea980,0x002f6626,0x0033d898,
-0x0030bcf6,0x003421bf,0x003299f4,0x00353707,0x002f4fba,0x00360285,0x002d40ce,0x002ed508,0x001a0d6b,0x0017a46d,0x0004a80a,0xfffbca46,0xffe95fe2,0xffeb8ea4,0xffe604ba,0xffefcabe,0xfff6c421,0xffeef1e5,0xffedeb01,0xfff0d6ae,0xfff49ad7,0xfff5f911,0x0004b340,0x00113361,0x001fef53,
-0x0025c8c6,0x002c68fb,0x00331fc9,0x00305ce3,0x00314623,0x003a1947,0x003e53b9,0x00055bd4,0x0005dd69,0xffee38bd,0x00049ee8,0xfff85696,0xfff899da,0xfffe7efc,0xfffbccfa,0xfffab09a,0xffef7128,0xffe013a1,0xffe120e8,0xffe0760b,0xffd80217,0xffd67764,0xffdd869f,0xffe03e58,0xffe4a296,
-0xffd8bf8d,0xffe9280c,0xffe9fca4,0xffeb8237,0xffed9255,0xffed707f,0xffedbbea,0xffed0e84,0xfff1ad21,0xfff477d2,0xfff751f0,0xfff8e266,0xfffb45b5,0xfffeffd7,0x00026692,0x0004ea07,0x00059783,0x0003c654,0xfffb2881,0x00023105,0xffe767a1,0xffdc1031,0xffde078f,0xffefd3f8,0xffdedef1,
-0xffdd328c,0xffd7bd3b,0xffd576e0,0xffd64d91,0xffcfff38,0xffcc1990,0xffc97a7d,0xffce0f58,0xffdeee89,0xffcda13a,0xffcfe1be,0xffdc8af9,0xfff24f65,0xffed6ae8,0xffee564d,0xffee2b3d,0xffee572c,0xffeeae0b,0xffee5a41,0xffeff821,0xfff13715,0xfff2a812,0xfff50343,0xfff6ed53,0xfff84f4a,
-0xfff818c4,0xfff840a0,0xfff92967,0xfffaccd7,0xffed0979,0x000aa770,0x000b7890,0x00038fc8,0x0028bb38,0x002cc373,0x000f79d2,0x001ec8a1,0x0027a892,0x0011f622,0x0011fb8e,0x000f5f1a,0x0007f87b,0x000e1ec7,0x000f2005,0x000a14ca,0x0029115a,0x002254fc,0x000eec06,0x00298abb,0x00273650,
-0x0001f045,0x0009e133,0x000bd56a,0x000f28df,0x00109167,0x0010a78b,0x000d70f4,0x000e639a,0x000e347b,0x00109308,0x000b74ca,0x000aadd4,0x000969ed,0x0011149f,0x0012a383,0x001215da,0x000db1ca,0x00078696,0x00102910,0x00226a1e,0x00092d07,0x000e6aff,0x000b5690,0x00022ac0,0xfff7d4cc,
-0xfff5b053,0xfffeb3e0,0x00082cdf,0x000857c6,0x0003d63a,0x00030101,0x0012daf4,0x00152d5d,0x001bb0b7,0x00164990,0x00236efc,0x001556a0,0x00113dbe,0x001e95b8,0x0025780f,0x002a2080,0x0025a484,0x0016b38d,0x001635a6,0x001551fd,0x001e16e7,0x001261c1,0x0011c272,0x0010ae7e,0x00262c4f,
-0x002a4846,0x0021da2a,0x0015df6d,0x000b0b81,0x0015e668,0x0021a406,0x00103ea1,0x000964d3,0x000637c0,0xfffd3839,0xffe0c417,0xffdfb640,0xffc824de,0xffdbc3ff,0xffd4fb15,0xfff21b4f,0xffe26b9c,0x0010e60b,0x000d105b,0x0007a99b,0x00124379,0x001a7378,0x000f0703,0x000b284b,0x001e3fb6,
-0x00304ccf,0x003ac561,0x00388c7e,0x0025a97d,0x002a099d,0x00281823,0x003606c8,0x001616a3,0x00145ce6,0x00136549,0x00401e63,0x00441576,0x003348e6,0x00245da1,0xfff7612f,0x000b7654,0x000a4b87,0xfff51572,0xffec1742,0xffe7c0e6,0xffcbb4cd,0xffb71ca0,0xffa91b83,0xffa89164,0xffcd1970,
-0xffd44776,0xffdfab80,0xffddd032,0x000e8c76,0x001535ef,0x001d98a0,0x001eb3c6,0x002ecfd0,0x00240d68,0x002b9915,0x005113c1,0x0071c581,0x007f2da7,0x006ebca2,0x003d0d01,0x00341db6,0x0030b914,0x004dae57,0x00272823,0x002381de,0x0029d5cb,0x006cac9e,0x0074cdab,0x004f924a,0x002878a5,
-0x005ea30e,0x0055a810,0x00648606,0x004b035e,0x002d3952,0x004d75ea,0x005f22af,0x00666e47,0x00334777,0x000a80f4,0x0002c6e5,0xfff796d8,0xfff9420e,0x00236acd,0xffe8e783,0xffcc1c91,0xffb7e7d2,0xffb416a4,0xffc20776,0xffba0261,0xffa5e143,0xff9ff22d,0xff75091f,0xff9fc4d0,0xffbc8dad,
-0xffcd1383,0x002dcab2,0x003a6203,0xfffccfd9,0x000160ab,0xfff9acfd,0xffeea65c,0x000f2354,0x00155056,0xfffb92c4,0x00529796,0xffb6fc5c,0xffebde85,0x003d99d5,0x003edf47,0x00318526,0xffacd3c5,0xff7a272f,0xffb28ebd,0xffe10425,0xfffd62d8,0xfffce30f,0x00018fb0,0xfff0fc09,0xffe1150c,
-0x000114df,0x0019871d,0x001de4f7,0x0019039c,0x002b4faf,0x004ad7c7,0x00424e8c,0x0059ef27,0x005f63e8,0x0069a389,0x003d1413,0xffe9ba81,0xffaafbac,0xff928635,0xffb12af0,0x001a60eb,0x00453d35,0x002f3719,0xfff23861,0xffb908fa,0xff9dd6b8,0xffb7ad45,0xffa8d84c,0xffa053e9,0xff656b7c,
-0xff74b863,0xffe18a10,0xffecfc00,0xfff09b1a,0xffe8a09b,0xffffad85,0x0003c5c7,0xffff5a27,0x000147ad,0x0004b110,0xfff9d713,0xffedf910,0xffdf2f4b,0xffe6ddc3,0xfff0cc0b,0x00011372,0xffe70db2,0xffdbfb6f,0xffdc035c,0xffc1a10a,0xffc70f6d,0xffd565d1,0xffe34d8a,0x0019ffc6,0x00381e22,
-0x00538f0d,0xff9a9569,0xff872086,0x001e7987,0x005a995e,0x00941c56,0x00c4c18d,0xfff43c01,0x00490e2e,0xfff4846b,0x0013af0b,0x0030d9e4,0x003a67d2,0x0005a459,0xffff0fdf,0x001316bb,0x0006e1d5,0xfffee040,0x000126b9,0x00014b89,0xfffaee3f,0xfff5b6e5,0x0001d3f4,0x00150197,0x00256aad,
-0x001f90d3,0x0025a81a,0x001b8c9a,0x0023d0aa,0x002fc80e,0x0032d986,0x00361354,0x0022ac24,0x00010986,0x00081bbf,0x0001e96e,0x001469b5,0x000b9d27,0x00166197,0x000e2c3b,0x007271ae,0x009be76b,0x009b86aa,0x0079eada,0x00650046,0x004d124d,0x00215c37,0x00015d1f,0x0000d385,0x0007abda,
-0x0004f9dc,0xfffba651,0xffffe9da,0xfffd108d,0xfffe309a,0xfff88c83,0xfff88784,0xfffd5faf,0x00058449,0x000231a9,0xfff803de,0xffebfc23,0xffe8dc92,0xffde839b,0xffdebacf,0xffe51c96,0xffeb1716,0x0003ea40,0x001afbfd,0x00316549,0x0035fcd5,0x003839f2,0x003b7181,0x001797b3,0x00054f12,
-0xfffbea07,0x0003afe7,0x000ffc76,0x001e850a,0x0058f49d,0xffcd380a,0xffdaaa24,0xffdfe74d,0xffef2a11,0xfff75909,0xfffc06d5,0xfffa7074,0xfffd0878,0xfffc1025,0xfffa85ad,0xfff7cd36,0x0003293b,0x000bf311,0x00131fb4,0x000bd5fb,0x0004b6ae,0xfff65963,0xffe672d8,0xffddece9,0xffe0d2fd,
-0xffea9435,0xfffc136e,0x000b4378,0x002957b5,0x003d1753,0x0047d555,0x00566181,0x0058b700,0x005615af,0x004a58aa,0x003b6204,0x002ab4b6,0x0012aaa3,0x00035006,0xffee0815,0xffdd5fb1,0x0035a90b,0x003e0118,0x0048d760,0x004008b3,0x004238d0,0x003cb51c,0x0034f625,0x002f7327,0x00335b08,
-0x00327f18,0x003b2c37,0x002cae94,0x00254179,0x001db148,0x000e6d2c,0x0000ff14,0xfff2b972,0xfff72523,0xfffde161,0xfff7b3f1,0xffee8431,0xffed9897,0xffe75d46,0xffeaa408,0xffed0ee7,0xffeeb738,0x0000a4af,0x0012a5b9,0x00268798,0x002c7dfc,0x0032a031,0x003837f8,0x00357764,0x00341f2e,
-0x003405af,0x003876bc,0x000fac43,0x0014bcb3,0x000f1e19,0x000d76b4,0x000ea451,0x000b54a0,0x000a02e8,0x00094a2d,0x0001fb1b,0xfffdef7a,0xfffc20a4,0xfff5891c,0xffee2f71,0xffebf441,0xffec5765,0xffea5433,0xffec5891,0xffe62a34,0xffe88e68,0xffde3c3f,0xffdf5c69,0xffe351ea,0xffe5085b,
-0xffe65ba6,0xffe72bd2,0xffe6c2cb,0xffe87797,0xffea06bd,0xffee2f13,0xfff24975,0xfff88f34,0x0000a329,0x0003a663,0x00088f72,0x000c3a61,0x000eff25,0xfffa6131,0xfffbd3eb,0x0009a6e4,0x000b7de0,0xfffb8acc,0x000840c7,0x000c21bf,0x0001c4d4,0xfffe52d3,0xfffbf304,0xfff6852e,0xfff5b3d8,
-0xfff379ba,0xffeef8d2,0xfffff515,0xfff8d0c8,0xffefc6c5,0xfffc39eb,0xfff72872,0xffe3be94,0xffe73145,0xffe6478f,0xffe5fbf9,0xffe5c41d,0xffe5ae27,0xffe54758,0xffe81f94,0xffea8ca4,0xffec89b3,0xffefa66a,0xfff228b7,0xfff5119b,0xfff5a7af,0xfff65f34,0xfff70d48,0xfff8de4a,0xffe90496,
-0xfff4eff6,0xfff98898,0xfff9a1e7,0xffe48923,0xffede3d4,0x0013813c,0xffe2d7dd,0xffe9ed9b,0x00027510,0x0003e92e,0x00031a78,0x0005c024,0x00082bf9,0x000af7af,0x000ca18b,0xffeadcbb,0xffe2ee5a,0x0017e43a,0xffef1d58,0xffe4664b,0xfff5e54e,0xfff68e3c,0xfff60308,0xfff8e7fa,0xfff9de0b,
-0xfff94ec8,0xfff4dff9,0xfff6f3c8,0xfff7304b,0xfffaad72,0xfff284be,0xfff061e3,0xffef2414,0xfff3f69e,0xfff6ff12,0xfffddb48,0xfff8b0c2,0xfffa9c16,0xffeed1d6,0xfff51bba,0xffea5b9e,0xffe3ec99,0xffeee7c7,0xffe911a0,0xffdc7b54,0xffe3568a,0xffdfe0a8,0xffdaca89,0xffe2c857,0xffe99a2b,
-0xffdfc6ef,0xfff60d42,0xfffaefc4,0xfff06ded,0xfffb66a1,0x0002d958,0xfff4c851,0xfffdde0c,0xfffcfd38,0x000459d5,0x00089927,0x0005cf04,0xfff62fbe,0xfff85271,0xfff76f8f,0x000035a4,0xffed30d2,0xffe6ce12,0xffe4e723,0xfff18f36,0xfffc3802,0x0009ef93,0xfffbe3b7,0x00061b1a,0xfffdc110,
-0xffea0552,0xffedc1e3,0xffeb9c75,0xfff2d8af,0xffed8c6c,0xffccb875,0xffce5cf6,0xffc8d602,0xffbc8620,0xffd3c1fe,0xffdf1e44,0xffd15678,0xfff52bed,0xfff3fa69,0xfff1cc0e,0xfff991a2,0xfff264b4,0xfff2f21d,0xfff799e9,0xfff8f343,0x0005092e,0x000ca7b0,0x0009b523,0xfff114ca,0xfffd85ec,
-0xfffc7ced,0x000e2522,0xffdfb88d,0xffd44988,0xffd6073a,0xffeeef06,0x00035127,0x001ea966,0x0007848f,0xfffc185e,0xfff2b515,0xffdbc659,0xffd9030a,0xffd66397,0xffdee024,0xffcfc510,0xffb4e0c7,0xffb1e8f3,0xffafb00e,0xffd754f6,0xffd8bd7b,0xffdf4adc,0xffdceb3c,0x0007af4c,0x000db389,
-0x0005e788,0x0019896f,0x0015ee45,0x00128b4e,0x00156135,0x001818ea,0x002aa577,0x00348bf3,0x002544c3,0xfff615a6,0xfff8add3,0xfffd1bf7,0x001e662e,0xffdcd3f5,0xffc61f3b,0xffcb617d,0xfff32f64,0x00197ef1,0x003c1f5f,0x000cab4e,0x004ff72f,0x002743ff,0x0026d2f6,0x002af5a1,0x00246d46,
-0x0040e7aa,0x0052f4cb,0x00584d5a,0x00306a44,0x000c47a4,0x0006a89c,0xfffc9a46,0xfffcf172,0x001b466f,0xffecbba8,0xffd23013,0xffa9184f,0xffa172e6,0xff91b42d,0xff83d9da,0xff872d14,0xff8f0245,0xff88c882,0xffa6971c,0xffcdd5c9,0xfffae995,0x003be695,0x0035e9a9,0xffed920a,0xffe47e51,
-0xffcbf7e5,0xffa97f3d,0xffcbf363,0xffdfa3f4,0xffe179e9,0x0030fc4f,0xffd991a9,0xffdc261d,0xfff86952,0x0018e982,0x001d0430,0xffa904a5,0xff866425,0xffb7256a,0xffe2c2f1,0xfffbf37b,0xfffc2656,0x0001fb40,0xfff39af1,0xffe4b34c,0xffff30e6,0x000ef002,0x000c6716,0x001018cf,0x001d6eab,
-0x00342399,0x0026b005,0x002128c5,0x0013f536,0x0030b9e4,0x00113ff4,0xffc76db3,0xff977ab2,0xff8e1f64,0xffbf6634,0x001b4c0e,0x00307526,0x000cd58d,0xffb543b0,0xff87e43e,0xffa597c4,0xffba063b,0xff96a9aa,0xffb319c7,0xff80fc83,0xff8fafcf,0xffc281c9,0xfff38c56,0xfff555a8,0xffe2ab64,
-0x00020342,0x00046d02,0xfffff614,0x000064dc,0x00056da8,0xfffdb185,0xffeb8a94,0xffdac942,0xffda7c9c,0xffe3510f,0xffdcb467,0xffcebbb1,0xffe0042d,0xffd89958,0xffc3d2a8,0xffb457b2,0xffabbcf8,0xffa39797,0xffead3df,0x0016f74c,0x00353355,0xff8c8ad0,0xff5a3ba6,0xffa57f6b,0xffbd2d7d,
-0xfff678aa,0x00478533,0xffc06703,0x0012df34,0x00070863,0xfff10a03,0xfffe1c76,0x001fb4a8,0xfff5d4ce,0xfff894a8,0x000b38cf,0x00054aa0,0xfffdf381,0x0000a61d,0x000145eb,0xfffc349e,0xfff4c5c6,0xffff04fe,0x000d259c,0x001d5e7d,0x001d11ab,0x001a51cc,0x001a3925,0x001cf515,0x0011da89,
-0x00093950,0x00065541,0xfffa1b91,0xffe30e9a,0xffdbf90b,0xffcfa34a,0xffdf8d7f,0xffd8723b,0xffee745a,0x0008ab48,0x001432e1,0x00036bb0,0xffc8caf0,0xfff7eae7,0xffda9336,0xfff05033,0x000f3809,0xfff74534,0xfff8bcfc,0xfffdeec0,0xfffde998,0xffefbf1e,0xfffac72a,0xfffe31d8,0xffff7226,
-0xfffb2733,0xfffa0388,0xfffb0d1e,0x00044bbd,0x0003a75a,0x000083fe,0xffe76548,0xffd63837,0xffd6cd24,0xffe089fc,0xffe73cba,0xffef9553,0xfffac185,0xffffc206,0xfffc754d,0xfff66275,0xffe9d902,0xffd75f89,0xffcab138,0xffb69dfe,0xffa1ad2d,0xff8dc573,0xff9242e2,0xffa9e2f8,0xffce343f,
-0xffa94fa1,0xffa1b82e,0xffc79166,0xffceaf05,0xffe12be4,0xffe680db,0xfff18bbc,0xfff3f157,0xfff74bf2,0xfff600a0,0xfff64f86,0xfffb3a8e,0x000431b7,0x000f3df1,0x0009004f,0xfffd10ad,0xffeb484c,0xffe1f449,0xffdedf76,0xffe291fd,0xffe9237a,0xfff20b8e,0xfffedfe0,0x000e78ef,0x001eea2e,
-0x002c7646,0x00414fe5,0x00511f46,0x005bb4f7,0x004875df,0x00297e68,0xfffb3502,0xfff357ae,0xffe2d29c,0xffcc1198,0xffb6c408,0x0020cff0,0x0023ea89,0x00215a35,0x001e8db4,0x00235075,0x0022a799,0x001fbff9,0x001d896e,0x002351be,0x002ae8b6,0x002e18ac,0x002c4afe,0x00258f4f,0x0021db51,
-0x000ec782,0x0001045e,0xfff0ebcc,0xfff0fa07,0xffebcec2,0xffeaddb7,0xffee3e2b,0xffebd23f,0xffeb3c3b,0xffed61cf,0xffefe501,0xfff10729,0xfff9c789,0x00001ff0,0x000963c5,0x000c4fe7,0x0013ac07,0x00188cf9,0x0018ec2f,0x00185a5a,0x001bc97a,0x001dd9d7,0x000f3f5d,0x001045db,0x0012a951,
-0x000e9d06,0x00097cf1,0x00092fe8,0x0007d9a9,0x0005e8e6,0xffffbd08,0xfff38d7b,0xffe9f253,0xffe427be,0xffe23ee3,0xffdbcfe8,0xffde7fe5,0xffe37ac9,0xffdeb5a7,0xffe290ae,0xffe0063c,0xffe4f8e6,0xffe9c12a,0xffe992f1,0xffeb85db,0xffeba5f9,0xffec1633,0xffebff36,0xffef445d,0xfff0fb32,
-0xfff1fb6e,0xfff1b600,0xfff0f301,0xfff1b844,0xfff7a60b,0xfffe4403,0x0004681f,0x0008e35d,0xfff5057e,0xfff902d8,0xffeaafee,0xffee504e,0x00007053,0xffebdc4e,0xffeda474,0xfffbd206,0xfff830a1,0xfff731a1,0xfff74569,0xfff48aad,0xfff26e1e,0xfff0a82e,0xffdcf6d5,0xffdaff45,0xffef1681,
-0xffdc658c,0xffda6ac3,0xffe81077,0xffe5a89e,0xffe56b00,0xffe582e8,0xffe564f9,0xffe59015,0xffe54592,0xffe5eb4a,0xffe67c67,0xffe7616c,0xffe90fc5,0xffeaab9d,0xffeadacc,0xffed4eb0,0xffeeb436,0xfff071e0,0xfff23ef9,0xffe07fdf,0x001dc8c8,0x001af58e,0x002261d1,0x001f6ebf,0x0008dcfc,
-0xffdddbbe,0x0023f782,0x000b0026,0xffe03835,0xffe12787,0xffdf11f3,0xffdabd90,0xffdcd7e9,0xffdda492,0xffd9c446,0x00099aab,0x0020b0d0,0xffdc37e2,0x0008a8b7,0x001d0bec,0x001f512f,0x001b5b8a,0x00201af4,0x0022f411,0x00247238,0x00243e6d,0x002024ce,0x00217388,0x0021b0b5,0x0025e1f8,
-0x001f8302,0x001ec3b1,0x001df08f,0x0024c7ba,0x0024e082,0x001fef4f,0x001ecf58,0x0018db57,0x002547c8,0xfffa4c1e,0x0014dfac,0x00022c5b,0x0005a024,0x000a5cea,0xfff6f8c5,0x0007e83a,0x000d5666,0x000456e1,0x00120dbd,0x000c9c7c,0x00055ed6,0x0008a0ca,0x000ef241,0x0017c51f,0x0018b23e,
-0x0003373f,0x0029b9ed,0x002ba129,0x00362129,0x003e0f04,0x004238de,0x003d13ad,0x002c4605,0x002bb3f5,0x002c7c03,0x003a24a2,0x002af49b,0x0028be5e,0x0027150d,0x003985b2,0x0039dd90,0x00286f17,0x0021d5f4,0x00208a6f,0x002b1d4f,0x00183478,0x0011704a,0xfff982a4,0x000720d0,0xffff1f2e,
-0xffd8264c,0xffded4bb,0xffd47409,0xffcc730f,0xffe2f9a0,0xffe9ca9f,0xffe40186,0x00030597,0x0007883f,0x00026979,0x000d9ff7,0x0010bb3b,0x001cebe6,0x002cd189,0x00394319,0x004cd758,0x0056ca90,0x00538578,0x003b71b0,0x0041003c,0x00411f94,0x0058db82,0x003341da,0x0031bb6b,0x0031d6ab,
-0x0056aa02,0x00536743,0x00342a9f,0x002d7305,0x00083f6b,0x00160418,0xfffd4cb3,0xfff6bbb6,0xffdc16f3,0xffefffed,0xffd982a4,0xffafc0d1,0xffbac517,0xffb98daa,0xffd68fca,0xffda8355,0xffe34086,0xffd8ed74,0x000769e6,0x000efba3,0x00085039,0x00239d7e,0x0025262f,0x0038f1cd,0x005653a7,
-0x007255ca,0x00941820,0x009fb050,0x008b0721,0x005341d2,0x004a3e6f,0x0050abb3,0x007c750b,0x004b77c1,0x003f67b8,0x004313ba,0x0077b893,0x0074da13,0x003d849c,0x00205714,0x00a46cc7,0x0072a33e,0x0060f22d,0x0051e243,0x0030fed6,0x004b01d8,0x005ab1d0,0x0056ac5f,0x0034cc9a,0x0012dbeb,
-0x000c4a64,0x000397ef,0x0000f2c0,0x00180ded,0xfff9c128,0xffe3c6b0,0xffb1815c,0xffb6402d,0xffa84288,0xffae8f8a,0xffc05295,0xffb0bc41,0xff9a708c,0xffb7697b,0xffdbdd10,0x00028593,0x00484cff,0x004a1f86,0x0017edf7,0x0020163e,0x002ac5dc,0x0036a5da,0x004307fe,0x0046e55e,0x00342d9c,
-0x00863a25,0xffd996e9,0xfff34b33,0x00146c69,0x002766ed,0x003f30e4,0xffc33378,0xff953765,0xffc05649,0xffe57c08,0xfffa069a,0xfff97b2f,0x000022ad,0xfff73ef8,0xffe7e61c,0x000353b3,0x00183188,0x001a4a01,0x0011e5e7,0x0018dd4f,0x004767ac,0x00632cc1,0x007a5922,0x00883a09,0x0073a57f,
-0x0033aa42,0xffdcb5c3,0xff9bc0a4,0xff961af1,0xffd70d3d,0x00339ae5,0x0047788b,0x00228ce6,0xffdddaeb,0xffac5355,0xffad29f1,0xffc8e547,0xffa9b5fc,0xffdcb32f,0xff99e871,0xff9e338c,0xffb2494c,0xfffe9255,0x0003caea,0xffe6e315,0x00077cd9,0x0004d1b4,0x00023f98,0x000084e3,0x0005134f,
-0x0001ad78,0xfff1f836,0xffe735f7,0xffe38cde,0xfff35921,0xfff724e0,0xffe4e48b,0xffe6844f,0xffdbfdee,0xffcc0145,0xffeaa8e5,0x000e3195,0x0022f9d6,0x0073b89a,0x007c92fe,0x00570303,0xffc9613b,0xffd8e37a,0x007c78f4,0x00a2793c,0x00c6423b,0x00fcd965,0xfff7e3f4,0x007f8a3b,0x002e7cb3,
-0xffdef1e7,0xffe75d76,0x0000a819,0xfff9984f,0xfff79420,0x00062a0d,0x00025354,0xfffbd2ae,0xfffecb6a,0x00000047,0xfffdab9a,0xfff8fab8,0x00024bd8,0x0010d12c,0x0025c4e0,0x0024de9a,0x00224750,0x002788e6,0x003cc939,0x0045244a,0x00426709,0x003e292a,0x00292416,0x00058031,0x0004ecc1,
-0xfffe2c36,0x00122af2,0x00063118,0x00220ec9,0x0048b1e5,0x00af26c4,0x00ce0c46,0x00b19af7,0x0097d9dd,0x00894b9e,0x0049fbce,0x00112719,0x0012d27b,0x0014476a,0x00064580,0x000122dc,0xfff8650e,0x00002dd7,0x00025044,0x00028006,0xffff4c68,0xfffcc8df,0xffffbb39,0x000768b6,0x00087a73,
-0x0009daf7,0xfffd645f,0xffef352a,0xffef1f5b,0xffee87e5,0xffee47c0,0xfff855a1,0x000629ba,0x0019b4a4,0x00329e23,0x0031b72e,0x00313b8d,0x0035f9d2,0x0016221b,0x000c041a,0x000f7707,0x001e1fcc,0x00361361,0x0050973b,0x008126bd,0xffebb932,0xffdd0c91,0xffc591de,0xffdf562e,0xffe5370e,
-0xfff27e91,0xfff92ef6,0xfff93f69,0xfffd0e00,0xfff9c85c,0xfff7f6ed,0xfffab9f0,0x00045aff,0x000fb130,0x000feb21,0x000a2c19,0xfffc42cd,0xffe82a40,0xffdf8d37,0xffdf9e22,0xffef7972,0x00030679,0x00147162,0x00303e81,0x0041eff7,0x004ba7a2,0x0055a91a,0x0053ca37,0x004a73f9,0x003fd596,
-0x0034bde7,0x002d8599,0x0010fd2d,0x00012ec3,0xfff4e3c2,0xffec4a44,0x002bd104,0x002c67c8,0x002f10e8,0x002d77ca,0x0028aa05,0x00265cf9,0x001eda91,0x001a6eaf,0x001f7843,0x002877a4,0x00304e07,0x002f89ee,0x0026d4a6,0x0027f82d,0x0013c2a0,0x0008b348,0xfff9f63d,0xfffc8f64,0xfffe3b91,
-0xfffeff7d,0xfffd01e6,0xfff799a4,0xfff20d38,0xfff3b6fb,0xfff5c175,0xfff66ff1,0x0009ec6b,0x001c6ff8,0x00302885,0x00386a08,0x003f4456,0x00474b98,0x003ebbab,0x00382b81,0x0030f395,0x002e2487,0x00282474,0x002c4c70,0x001286ea,0x00215e61,0x001ae51e,0x0016d64b,0x001c0ef6,0x0019f0ef,
-0x0018606e,0x0012ffb6,0x000a0908,0x0008d341,0x0002bc1b,0xfffef372,0xfff74cae,0xfff60edd,0xfff9bd64,0xfff2539e,0xffe73313,0xffe8c8d8,0xffe6c0d1,0xffea7716,0xffec367e,0xffecc7b9,0xffed2bfd,0xffeb9e29,0xfff388d1,0xfffa3c44,0x0002ffcd,0x000af52c,0x0014cd12,0x0020eff4,0x002134fa,
-0x0023e16b,0x0025ebda,0x002821f2,0x000a102f,0x000ee9ad,0x000c8f13,0x0001e31f,0xffea6a3d,0x0011cc75,0x00033d5a,0xffee31ed,0xffe98401,0xffe6ad67,0xffe37969,0xffdfebf8,0xffdc674f,0xffd8896f,0xfff74ced,0x0001abd8,0xffd89034,0xfff18040,0xfff98c9e,0xfff4590e,0xfff3d4a2,0xfff3c51d,
-0xfff2e8db,0xfff2b305,0xfff2bc85,0xfff1aa93,0xfff64c0c,0xfff9ba29,0xfffd0d8b,0x00018251,0x00052f3e,0x0009f5c9,0x000931ca,0x0009a69d,0x0009cd73,0x000a89de,0xfffa7c16,0xffe96bf2,0xffefbcba,0xffe4b7ce,0xfff7bb1b,0x00128f87,0x0031191c,0xffeb79f1,0x000a78ba,0x00234655,0x0028ccf3,
-0x0027667d,0x0021f243,0x0029ef46,0x002c6973,0x002b19fc,0x000aab75,0xffede23f,0x003629fb,0x00102495,0xfff7e607,0xffe3566b,0xffed2873,0xffeaaa66,0xffecbab8,0xffed7b90,0xffed1804,0xffe9b49d,0xffeb6e3c,0xffeb7d1a,0xffef8d31,0xffe68d52,0xffe4927c,0xffe3281b,0xffea1973,0xffed9acf,
-0xfff3a3c3,0xffedd09d,0xffebd75c,0xffe557cb,0x00178ed9,0xffe4e908,0xffee106b,0xfffaab0d,0xffeccacc,0xffdf1387,0xffe34b3b,0xffe5f227,0xffe7306a,0xffe8c91b,0xffeae6fc,0xffe37309,0xfffb4aa6,0xfffb44e9,0xfff70357,0xfffa724b,0x001f2d03,0xfff0ddb7,0xfff170c4,0xfff34c03,0xfff4e969,
-0xfff6f75d,0xfff28e34,0xffe5e999,0xffe75f88,0xffe8e29f,0xfff56aa8,0xffdffc18,0xffda4862,0xffd96438,0xffeba3c1,0xfff67a25,0x00000366,0xfff1ff5f,0xfff2b73d,0xfff73f30,0xfffb7d7f,0xfff317af,0xfff1d978,0xfffc9891,0xfff6d4fe,0xffc76f4a,0xffdca715,0xffcb71dd,0xffbfc52b,0xffcdab3e,
-0xffe760d1,0xffcea19c,0xfff945d5,0xfff023d8,0xfff326a4,0xfffa7bb6,0x0001052b,0xfff742a6,0xffe7f63e,0xffef34d2,0xfff383f3,0xfff9eedb,0xfff68c01,0xffe46361,0xffed1ab6,0xffec3c5d,0x00014153,0xffcf6d4f,0xffc6a6b2,0xffc7e4f3,0xffedab97,0x0001519b,0x00126b07,0xfffeca57,0xffe2ebe9,
-0xffedbd4e,0xffe99d02,0xffd6162c,0xffc98db8,0xffe65c46,0xffd8e0fb,0xffafd8d6,0xffc122e3,0xffc318ea,0xffdbc1d6,0xffe361df,0xffe301dd,0xffd31ec7,0xfff98bbf,0xfff7c329,0x00012464,0x000d6131,0x00233e50,0x0019db38,0x0008ced3,0x00121aa0,0x0014fda0,0x00194755,0x00049145,0xffdd1309,
-0xffdd775a,0xffeb603a,0x00146eee,0xffcf5600,0xffba7005,0xffc13a15,0xfffc25e8,0x001edd43,0x002bede2,0x00033397,0x003dbf53,0x003fbe04,0x00544bdd,0x00495a09,0x0040e44d,0x004e5941,0x004d050c,0x004658e0,0x002ee063,0x0011eb0a,0x000e1729,0x0006143c,0x00040df2,0x00123179,0x000048ff,
-0xffe55af4,0xffadede0,0xff996977,0xff994dba,0xff8535c5,0xff65c186,0xff72c353,0xff68c29d,0xff9eb0e3,0xffcc20f1,0x0004e0c3,0x00144ba5,0xfff89ccc,0xffba53c9,0xffb640f1,0xffb150e0,0xffb024b8,0xffc40030,0xffd942a4,0xffe84060,0x002f85fe,0xffbec1dd,0xffcd3081,0xffe9e816,0x0002b602,
-0x001e906a,0xffc08c53,0xffa04c29,0xffc8044d,0xffe93b57,0xfff99415,0xfff8d03d,0xfffeaf38,0xfffa5411,0xffe956b0,0xfffaae15,0x0008a691,0x000d2738,0x0009333c,0x001ef175,0x002d6124,0x00214b12,0x00256500,0x00088ab4,0x0011d33a,0xfff007b2,0xffbd8b59,0xff93e498,0xff9a6286,0xffdbc051,
-0x0025d100,0x00300191,0x0016c827,0xffb9fc2c,0xff8e26ce,0xffb302f5,0xffb91f87,0xff9ea7a7,0xffe97a84,0xffba20c9,0xffaffcec,0xffaa2237,0x00013c5d,0x000adef1,0xffe8d4b1,0x000bf4cf,0x0003722a,0x0003cf57,0x00007c4d,0x0004934f,0x0003cd8a,0xfff3ec7a,0xffdfd129,0xffe0c391,0xffe002a2,
-0xffe0420c,0xffc9ec5a,0xffcc96f3,0xffd1f1a3,0xffc4892b,0xffaf9e69,0xffa304bb,0xff9b1642,0xffeaaee1,0x0001b246,0xfff3b1bc,0xff6370d2,0xff4a081f,0xffb5a1de,0xffc614f1,0xfffd0a33,0x00557f34,0xffc42ed3,0x002a73a7,0x005661aa,0xffca2f5f,0xffad9c78,0xffe17cb7,0xffe6928f,0xfff4e6ae,
-0xfffd136c,0x000084bc,0xfffb2f42,0xfffde791,0xfffef2bf,0xfffe73e9,0xfff92cd7,0xfffe6630,0x000a9547,0x001c0fad,0x001c6dec,0x0027156f,0x001fadf8,0x0014f1bc,0x0006f7fd,0xfff4dd83,0xfff46f0e,0xfff21875,0xffe79386,0xffdf67d6,0xffd8f276,0xffef2e80,0xffe916ae,0x00045af0,0x0025c222,
-0x0021b4d9,0xfff3e98f,0xff92ea5d,0xfff34fe9,0xffd8b65c,0x000cddfd,0x0044f325,0x0022c426,0x00164aec,0x00087d7e,0xfffd529a,0xfff418ee,0x0001b8e3,0x000328b4,0x0004f9b3,0x00019070,0xfffeaede,0xfffe6fc6,0x00062d01,0x0009b7df,0x000c8656,0xfffaada3,0xfff361ff,0xffe3948d,0xffeaa67a,
-0xfff4836e,0xfff77c7c,0xfffe6176,0xfffd7548,0xfff86683,0xffeca2b6,0xffde1dc3,0xffca1930,0xffb75324,0xffa357bb,0xff8c9f18,0xff876508,0xff9cdc83,0xffb23ff8,0xffdc80a3,0xffb45253,0xffb4c7ae,0xffdb39d3,0xffd420c0,0xffe41bc4,0xffe76431,0xffed26c8,0xfff2113f,0xfff3e59c,0xfff40ef4,
-0xfff23eab,0xfff50f29,0xfffb33df,0x00076a55,0x00087de8,0x000244a4,0xfff3b66a,0xffe79410,0xffdfc88f,0xffe376cb,0xffe08d4a,0xffe503f0,0xfff31cda,0x0007a2f7,0x00198ebf,0x0025c0c0,0x0032d610,0x003b493c,0x003fdc5f,0x002bcad6,0x00074075,0xffcdffb4,0xffc66787,0xffbe2459,0xffb97937,
-0xffba3633,0xfffaf34a,0x00086da3,0x00155ebc,0x000e8e9f,0x00187d15,0x00144802,0x00102c88,0x000a0069,0x0017dd1a,0x001d4d93,0x002b2af5,0x0024b5d3,0x002aabd3,0x00275ddf,0x00174c60,0x0007b0d8,0xfffcb809,0xfffac253,0xfff85607,0xffec1892,0xffea48f4,0xffed984e,0xffec5436,0xffeeca87,
-0xfff0dbbe,0xfff336aa,0xfff9921a,0xfffec461,0x00064622,0x000550f0,0x0009567a,0x000aadc6,0x0009a995,0x000522f4,0xffff0b3f,0xffffac2e,0x0018fa87,0x001b97bd,0x002e38fa,0x001837d6,0x001b1528,0x00198f78,0x0013ca49,0x0013e93e,0x000ac9fd,0x0002d4fd,0x00012cce,0xfff760ec,0xfff2cf26,
-0xfff01595,0xfff2aa36,0xfff254ca,0xffe9d727,0xffe85cc8,0xffec4f17,0xffe3e639,0xffe9cd04,0xffe96c99,0xffeb07a6,0xffeba7be,0xffec34bf,0xffec4f25,0xffee5724,0xffef6600,0xfff08b50,0xfff13812,0xfff18fe1,0xfff334cb,0xfff905d2,0x00011210,0x00093eeb,0x00118b30,0xfff57de0,0xfff5bb0b,
-0xfffab9a5,0x0007aa0e,0x0017d713,0xfff68cd5,0x00053324,0x00147cec,0x0012e156,0x00126e79,0x00104ff3,0x00112dcc,0x0010befc,0x000f60cb,0xfff90b9d,0xffe9048b,0x00089b40,0xfff442b9,0xffe78ac5,0xffe40544,0xffe5523f,0xffe43979,0xffe467c9,0xffe41f83,0xffe4296f,0xffe3e6b0,0xffe4aaf0,
-0xffe56549,0xffe62f11,0xffe7aa94,0xffe90d20,0xffe9487c,0xffecaa9f,0xffeeb077,0xfff0ae40,0xfff20e9f,0xffe0ba89,0x0019d282,0x00176fff,0x00263156,0x00027fec,0xffe6bb9f,0xffd148a2,0x000e735f,0xffeb9fe4,0xffcc2096,0xffce9635,0xffcd733f,0xffccf74f,0xffcce4a8,0xffce425c,0xffcd5e43,
-0xffe882e7,0x00074547,0xffd1746b,0xffe8f9fb,0x00006ba8,0x00221c8f,0x00181858,0x001c9aae,0x001f3905,0x00201282,0x001f7f85,0x001b3819,0x001c74f2,0x001cee27,0x0022ab59,0x001a827c,0x0019498d,0x0018a6c4,0x001e1bf3,0x001e4c10,0x001a5392,0x001a738c,0x0017917b,0x001df302,0xffdd4ddd,
-0x000bbb83,0xffef5c93,0xfff9dc53,0x00047a7c,0xffedf175,0x000873e2,0x0007fa91,0xfff2bdd9,0x000785b7,0x00057052,0xfff9e916,0xfff8c7ad,0x00005001,0x000618a5,0x000d03b7,0xffec8ee7,0x00224230,0x002a5f59,0x002e7f67,0x0036a84d,0x0038b05a,0x00338963,0x002383c0,0x00225ace,0x00246cec,
-0x0035a651,0x0022096f,0x001d40bf,0x001bae00,0x0029769e,0x002a7a28,0x001d8a00,0x001954f6,0x00233e7d,0x00276d0d,0xffff9388,0x0003cf6d,0xffea262e,0x00013c32,0xfffae2eb,0xffcd9675,0xffdb509e,0xffdc715d,0xffbb1f34,0xffe854d8,0xffe0f403,0xffe030de,0xfff07fb4,0xfff8b85b,0xfffa9721,
-0x0000597f,0xfffdb404,0x0016cfa3,0x002e17ea,0x00321dbf,0x00438c1e,0x00499dd2,0x004571d5,0x002bd105,0x0031ceb9,0x0032dba9,0x005239bf,0x00249536,0x00200b40,0x0021e476,0x003c1e59,0x003c7161,0x002752eb,0x0022e93a,0x000dee09,0x000f649d,0xffe7be79,0xffebf792,0xffcecca1,0xfff21b52,
-0xffe530be,0xffb4b8f4,0xffd0d3df,0xffcf873f,0xffe504e6,0xffe76b08,0xffea92a8,0xffdb1e49,0xfffc36cc,0x00017d9a,0xfff686ec,0x001ca90a,0x00142f7c,0x0037e2ef,0x0057cd42,0x0063afe4,0x007e7406,0x0083324e,0x006b9e6c,0x0035eec0,0x002daffd,0x003e57a7,0x0075f08a,0x0036ad4d,0x00209bd9,
-0x002519cd,0x004a648a,0x004c7441,0x00262afe,0x000e976c,0x00af4324,0x006aea3a,0x00454412,0x004594d8,0x00349403,0x00443b7d,0x0049e609,0x003a3873,0x002a70c3,0x0011d23f,0x000d36ba,0x0007ac70,0x0007129d,0x000c03df,0x000853c1,0xfffafeb2,0xffb19240,0xffb6cb49,0xff9632a1,0xff9ee71e,
-0xffbf42fd,0xffb1f2c8,0xffb756e5,0xffc9eb1e,0xfff938bd,0x003bfc1b,0x0059bdf1,0x00488afe,0x0015fc5d,0x001b7d32,0x00288479,0x0039b097,0x0033e9ae,0x0040771a,0x004ce533,0x008b8372,0xfff4bb33,0xfff3a7f0,0xffe8e7ff,0x0009666f,0x00360e2e,0xffd2be93,0xffb3b2fe,0xffd2b8a2,0xfff0757f,
-0xfff86618,0xfff9885c,0xfffc8949,0xfffc4ca4,0xfff003f9,0xffffb234,0x000ec95c,0x000f5ed1,0x00078eb3,0x0007f138,0x0035138d,0x005c7b55,0x0068d63b,0x0071d8fa,0x004fa706,0x0010de2f,0xffc7b7ea,0xff8e6a4b,0xff9d8452,0xfff706e4,0x003b4e41,0x0039ee39,0x001352cb,0xffc067c6,0xff9868e1,
-0xffb7639a,0xffd095d3,0xffb9ae47,0x000e0dd5,0xffc03cc6,0xffbd9ab8,0xff9b1d02,0x0008c382,0x000c38dc,0xfff1f6a3,0x000cb373,0x00022877,0x00044088,0x000188b2,0x0002e593,0x00058c23,0xfff77318,0xffee8009,0xffe1a7ad,0xfff37a0c,0xffebc05c,0xffe27956,0xffed5eb6,0xffdbbf95,0xffd66c14,
-0xfff352af,0x0016b84b,0x002baffe,0x00884147,0x00846374,0x00365cff,0xffd3e1ba,0xffeb4b97,0x0075bfc6,0x0083450f,0x009bd608,0x00d632cc,0xfff6727f,0x006a0b19,0x0071eb34,0xffbd5577,0xff9bc17c,0xffbd60ef,0xffee6e58,0xfff8e09a,0xfffcfd38,0xffff22f3,0xfffbd39c,0xfffe049c,0xfffdf327,
-0xfffe7274,0xfffc6bac,0x00006909,0x0008c6f9,0x001fca77,0x002524b3,0x001d8f8f,0x002c10cc,0x003eeb80,0x003b0e4a,0x003077c5,0x00239e00,0x00144b85,0xfffc311f,0xfff1ee0e,0xffe9b742,0xfff929b6,0xfff648db,0x0022184b,0x0072f3fe,0x008c74a5,0x00796c7c,0x003cabbd,0x0049701e,0x005dd1bc,
-0x002bd427,0x0015aee3,0x002b315a,0x0022d06e,0x00041fa3,0xfffbfc06,0xfff7bfc9,0x00015b4d,0x00039095,0x0003610e,0x0003385d,0x0001159a,0x000011d9,0x000787e5,0x000cc562,0x00170468,0x000a439e,0xfff52b69,0xfffadaa5,0xffface0e,0xfff7fed8,0x00046be4,0x00069154,0x000ea028,0x001accb5,
-0x0011770e,0x000a440d,0x00072fc3,0xfff2e1b5,0xffead290,0xfff0441c,0xfffca58f,0x001b93d4,0x003bdd30,0x0059ef86,0xfff627fb,0xffd67d37,0xffbccffa,0xffd00f66,0xffd76d54,0xffe61bb3,0xfff38850,0xfff2d988,0xfffaff69,0xfff8bc35,0xfff86fd5,0xfff57128,0xfffc26e1,0x00075923,0x000cf60c,
-0x00087725,0xfffc1a7f,0xffea20c0,0xffe3c40c,0xffe30ccc,0xfff045ed,0xfffdba45,0x000c27ad,0x0021123d,0x00300b4c,0x0039270e,0x004142fa,0x0040a5d8,0x0037d992,0x002f6f3f,0x00238765,0x0016024b,0xffff6385,0xfff058f7,0xffec8cb6,0xffeba380,0x000f5bf5,0x000bdf0a,0x00093f4a,0x000f2916,
-0x000abef3,0x000c3e93,0x00084b3b,0x00062801,0x000ca894,0x001b272b,0x0020a4b1,0x00293a0d,0x0023c59d,0x002a72d1,0x0016c774,0x000d9e9c,0x00011ce3,0xffff81e8,0xfff96184,0xfffbe647,0x0002a857,0xfffd5d41,0xfffbb4d8,0xfffd4155,0xfffffb25,0x0001a1db,0x000fc0cb,0x001c2436,0x00293070,
-0x002d8089,0x00311813,0x003698b0,0x002b3bac,0x00210a94,0x0015238e,0x000fb517,0x002f00cb,0x0030dd56,0x0016ab92,0x0027da9c,0x001de1f8,0x001b1f0e,0x002239e9,0x0020764c,0x0021b2dc,0x001aff25,0x000f3bf4,0x0010fb8b,0x000e0219,0x000956df,0xfffe9613,0xfffeefed,0xffff84c7,0xfffa940f,
-0xffe8eddb,0xfff34957,0xfff1b313,0xfff32ad6,0xfff4bdb6,0xfff48916,0xfff48883,0xfff2d6a7,0xfffcd137,0x0004ce1d,0x000d94d5,0x00154e99,0x001de05c,0x0028237b,0x0027efb8,0x0029bd13,0x002b1e23,0x002d7b2c,0x000ecc3e,0x00149012,0x000406ed,0xfff6d15d,0xffea490e,0x000c0cc1,0xfff7c1b4,
-0xffe924f9,0xffe514e3,0xffe30ab3,0xffe2d5a7,0xffde77f3,0xffdb40cd,0xffd99a5d,0xffedcaf6,0xfffef522,0xffd6c97a,0xffe7c312,0xfff479b1,0xffffcc70,0xfffbfb20,0xfffc9560,0xfffbd1c3,0xfffbb943,0xfffbf1f6,0xfffac9ad,0xfffee5b2,0x0001ba12,0x0004b708,0x00088abd,0x000bb275,0x000faeb4,
-0x000ef6b1,0x000f86b4,0x000ffc2d,0x000fdd8f,0x00022634,0xfff44d49,0xfff86a75,0xffed28bd,0x0011ad58,0x0025858c,0x0024a922,0x00051f01,0x001edc64,0x001f0be2,0x0025d70e,0x0023e9ab,0x0019537e,0x00229db3,0x00243072,0x00207ba8,0x001d4bc2,0x00063cef,0x0027efbc,0x00219641,0x0011190d,
-0xffecae64,0xfff745ac,0xfff62951,0xfff82606,0xfff8652e,0xfff8261f,0xfff5da1f,0xfff68282,0xfff678cd,0xfffb8420,0xfff2bdbc,0xfff16178,0xfff03ded,0xfff859ae,0xfffadd11,0xfffbc803,0xfff7db11,0xfff211b6,0xfff642a9,0x0021e1bd,0xfff28b71,0xfffcc801,0x000676e5,0xfffb210a,0xffeb59ae,
-0xfff292c0,0xfff9c36f,0xfffa3371,0xfffbfb23,0xfff7f6ec,0xfff3b9ce,0x00018880,0x000010fc,0x00071bb0,0x0002b5f6,0x002503d6,0x0001b6ac,0xfffd3479,0x0003d024,0x000422c4,0x000358d4,0xfffd41d8,0xfff2f365,0xfff1b967,0xfff53b73,0x00066b72,0xfff15fba,0xffeda476,0xffedf360,0x0003421e,
-0x000987f9,0x00052f1d,0xfffb8da6,0xfff61fe2,0x00055875,0x00101d33,0x00009bd1,0xfff93c40,0x00073b2c,0x0000495c,0xffcb8766,0xffe9dad8,0xffd545d4,0xffc6d92b,0xffd3c19e,0xffeda124,0xffd88b64,0xfffacd67,0xfff23aa5,0xfffc2293,0xffff9104,0x000e93e1,0x00075793,0xfff6232a,0x00033b62,
-0x00086f5e,0x000be6f7,0x0007feea,0xfffaa2d5,0xfffce204,0xfffc5892,0x00176a8d,0xffe77fb5,0xffe3e4c2,0xffe55b18,0x0011cd27,0x001c0b46,0x0012a631,0x0008c844,0xffe0a9d0,0xfff91618,0xfffa0108,0xffe033aa,0xffc97839,0xfff1617e,0xffe5305c,0xffb877e2,0xffd5cc3e,0xffd9e175,0xffe7619f,
-0xfff0d9af,0xffec8057,0xffd62f42,0xfff0bd54,0xffeab617,0xfffefc05,0x0007349f,0x0026a630,0x0027405f,0x0019b7ae,0x002e1771,0x003141c5,0x002e50d0,0x00144e3f,0xffefad23,0xffe83c7d,0xfffd41a6,0x00310b02,0xfff1546e,0xffe13ea2,0xffeac03e,0x002e0d28,0x003ce0cb,0x001e535c,0x0003e589,
-0x0053a22a,0x0060bd56,0x006fd73a,0x005b34a1,0x0051130c,0x0051413b,0x004174a6,0x002d6cbb,0x002505d9,0x000ec42a,0x000d8382,0x0006cdc8,0x00088b3d,0x0009a053,0x000fc300,0xfffe4a8f,0xffbc53bb,0xffa779b3,0xffad11ce,0xff9ef20c,0xff76d5dc,0xff7c7b1e,0xff73f8d5,0xffae0243,0xffe0d011,
-0x0022c09a,0x00176cc3,0xfff04e17,0xffb9b8d3,0xffbe656a,0xffcd5de3,0xffeb1f89,0xffe7c7c7,0xfffcd442,0x001ba772,0x0051bd9e,0xffbc3f86,0xffd77911,0xffed8815,0xfffae065,0x0024801a,0xffd8e48d,0xffbde8cf,0xffddf6f8,0xfff48240,0xfff7ea63,0xfffa0dbb,0xfffb6f3f,0xfffdd8b0,0xfff1d74a,
-0xfff87bc1,0x0005bf2e,0x000f4f45,0x00032126,0x0016696c,0x0028606e,0x002df89e,0x003fbfb9,0x0029b902,0x0012574b,0xffe62280,0xffbd5866,0xff937131,0xffa999fc,0xfffc34e0,0x002f55a1,0x002fee60,0x002156e6,0xffc7db07,0xff9eda2c,0xffbc1ba1,0xffc04021,0xffc26c3b,0x00217fd3,0xffe0bb57,
-0xffc6e0a5,0xffa95f7d,0x0008c708,0x00118448,0xfff9c234,0x000c4058,0x0001bf43,0x0004c456,0x0001f428,0x00024237,0x000597fc,0xfffd4206,0xffec603a,0xffeac694,0xffeb0580,0xfff269c4,0xffdaae8e,0xffce3e99,0xffd39199,0xffce58ff,0xffc791a5,0xffcdd51c,0xffda6243,0x0027b47e,0x002014ef,
-0xffdb1c45,0xff742adb,0xff82a8e4,0x0015bd99,0x00270ff5,0x005023f6,0x008f2a41,0xffebf14b,0x003a90db,0x0090b91a,0xffb8b053,0xff752445,0xffa26ac8,0xffe2fbba,0xfff8a19c,0xfff89561,0xfffe836e,0xfffb71db,0xfffd6135,0xfffd613c,0xfffe5f56,0xfffd0aac,0xfffe34da,0x0006bbbf,0x001a3eda,
-0x001e4b17,0x002d2e1a,0x0026b45e,0x001b53b6,0x00118d47,0xfffe31b6,0xfff9df21,0xfff8924a,0xfff40bb7,0xffee004c,0xffecff98,0x00008b34,0x0006c8b4,0x002a7ad4,0x005d38ba,0x0044cb13,0x000a96a1,0xffb31463,0x00025a55,0x001987c0,0x00403a32,0x006615a6,0x00504712,0x0032535a,0x000fd8d3,
-0xfffd20a0,0xfffbf13b,0x0004ceec,0x00041547,0x00051b06,0x0003ffa0,0x00025e76,0x00016cf0,0x000739d6,0x000e2784,0x0016a9b9,0x001153c7,0x000fa5f4,0xfffa7b36,0xfffa10f0,0x0000ba36,0x000277fd,0x00072d3c,0x00071096,0x0008b1a4,0xfff9a609,0xffeec212,0xffe45a04,0xffca5292,0xffba2bd8,
-0xffaf0c7e,0xffc0b7d4,0xffe5e7fb,0xfff98011,0x00215061,0xffdd900a,0xffddfc43,0xffe82f8f,0xffde6212,0xffe68c25,0xffead859,0xffed6f35,0xfff2503c,0xfff58ef5,0xfff6f96c,0xfff3b52f,0xfff4c542,0xfff781a9,0x000051f9,0x0007890f,0x0007c0f2,0xfffe6e6e,0xffee7a0e,0xffe3c686,0xffe5e33a,
-0xffe17039,0xffe56ab4,0xfff23d79,0x000ad5ef,0x001bf34e,0x0024cdad,0x00295d1c,0x0027c05e,0x0022241b,0x00164aab,0xfffcde2c,0xffd27827,0xffc4d6bd,0xffc017a8,0xffc91b58,0xffd8f3bc,0xffe6a6d8,0xfff5396d,0x0009960c,0x00057ffc,0x000eceeb,0x0009fc60,0x00058352,0xfffeadc6,0x000dcda4,
-0x0011c0db,0x002306de,0x001c1c6a,0x0026c904,0x002685e4,0x001b6c4a,0x000e22f5,0x00080fe6,0x0004f4c8,0x00042d64,0xfff453d0,0xfff142c3,0xfff6c964,0xfff55d5a,0xfff8ae14,0xfffb77a6,0xffff8614,0x000689d5,0x000d8f24,0x00156435,0x0011a068,0x00103c14,0x000e8970,0x0008419d,0xfffedb1e,
-0xffef8f19,0xffeeef77,0x0022dd81,0x0026646c,0x003480c9,0x001ffcf9,0x00252777,0x00225593,0x001dd0e9,0x001f3287,0x00185131,0x0016870b,0x0019a71d,0x0012049c,0x000c7e8d,0x000ce5e1,0x000a1f3e,0x000511a9,0xfffe1341,0xfff671f1,0xfff82deb,0xffeb3348,0xffeed6d4,0xffef3d43,0xfff05141,
-0xfff11d9c,0xfff18360,0xfff14243,0xfff42485,0xfff67c2d,0xfffa3d79,0xfffe59f2,0x000314ec,0x00087953,0x000b3c69,0x001101a1,0x0016bcbc,0x001e4ff4,0x000016df,0xfffeb36b,0x000da2c4,0x0017cb35,0x00183957,0x00094f7c,0x001560ed,0x00180f8e,0x0017b13f,0x00171c4f,0x00139e23,0x0015d030,
-0x0015f980,0x00151e53,0x00102d87,0x000135b8,0x000c9a82,0x00083482,0xfffc6818,0xffedefbe,0xfff0d8b9,0xffefcbf9,0xffefca11,0xffef81b9,0xffef7eb9,0xffef031d,0xfff0faa6,0xfff2880b,0xfff3c720,0xfff5a153,0xfff71c90,0xfff8b656,0xfffac5dc,0xfffc6e0a,0xfffde024,0xfffe3acd,0xfff14cb9,
-0x00059ccb,0x0006d30b,0x00111c8a,0xffeb2537,0xffdfbb37,0xffeb7e0e,0xfff352e3,0xffe1feca,0xffdeefce,0xffe36c39,0xffe30a80,0xffe37d87,0xffe46a93,0xffe6496d,0xffe7d6e6,0xffde5e37,0xffec78c4,0xffeedbce,0xffe1f14f,0xffe9f873,0x000d068b,0x00063c15,0x00080752,0x000a84ab,0x000a3127,
-0x00096d04,0x00061ca3,0x0006e1f8,0x00075a2d,0x000de5e6,0x000447a3,0x00029a6e,0x00021d41,0x0006e8fa,0x00085518,0x0008397a,0x00078200,0x0007a1e2,0x00051779,0xffdf291a,0xfff83875,0xffe426ae,0xfff31b5b,0xfff945d7,0xffe4d769,0xfffcd4fc,0xfff8d258,0xffe2c87e,0xfff4889c,0xfff650ed,
-0xffec1f43,0xffedf71f,0xfff34c69,0xfff58896,0xfffd20b8,0xffee7121,0x0009da61,0x00138519,0x00127544,0x0018afc5,0x0016f978,0x0011f16c,0x0005f940,0x000465c5,0x0007c2c3,0x001aadcc,0x0003c06f,0xfffd733e,0xfffd4eac,0x0008d911,0x000d170d,0x000a4520,0x000587aa,0x00146778,0x00136beb,
-0xffedad20,0xfff48a66,0xffe41d0f,0xfffbf0e6,0xfff70bc0,0xffc8d4b7,0xffdd4a37,0xffe0c599,0xffb6d84c,0xffe50128,0xffde8f91,0xffdcafff,0xffe39122,0xffe84a7b,0xfff5c579,0xfff3d37f,0xfff12a45,0x000608c4,0x001463a8,0x00142c2f,0x00201935,0x001fcf54,0x001b37bb,0x0006cc54,0x000bf510,
-0x000cdacc,0x002f14bc,0xfffb8291,0xfff497c5,0xfff9094f,0x000ea74f,0x0017f6ce,0x0015f465,0x000f9668,0x0005180f,0xffff8442,0xffdbc694,0xffde4ca5,0xffc7d907,0xfff1b2af,0xffedfaa6,0xffc45fd6,0xffe4b00e,0xffe5530f,0xfff4e92b,0xfff5da8b,0xfff31850,0xffe2270f,0xfff15d41,0xffef51ac,
-0xffee6973,0x000c5e54,0x000895d4,0x00273680,0x003735dc,0x0037b824,0x0044e36a,0x003e0179,0x00249aca,0xfffafe90,0xfff53fdd,0x000e7068,0x004a8a0a,0x000226ed,0xffe798b8,0xfff14fb0,0x0012182b,0x001fa9ab,0x0013aa7b,0xfffe62af,0x0089b9a3,0x0052da49,0x0031c721,0x00398cbf,0x003be8ea,
-0x003dd048,0x00346cef,0x001d5630,0x001ba2c3,0x0009257f,0x00094189,0x0004ae7d,0x0008a9ff,0x0003ccb2,0x00111b1b,0x000c6cdd,0xffbce525,0xffb5df8e,0xff96779b,0xff968da0,0xffa5c7bc,0xffa4239c,0xffbe89c3,0xffd4dd8c,0x000e6684,0x00646510,0x005923b4,0x0030be76,0xfff49138,0xfff6612c,
-0xfffe90e5,0x000dfe2e,0xfffdf5f1,0x00185304,0x004b9323,0x00720a04,0xfffa9686,0xffee0216,0xffcd8d1c,0xffef1564,0x001fe219,0xffde96fd,0xffcf0cb8,0xffe9cb9b,0xfff93c2f,0xfff97956,0xfffc5a34,0xfffbea2c,0xfffe27dc,0xfff7f344,0xfffa235f,0x0002c2f8,0x0005f08d,0xfffd2151,0xfffe7491,
-0x001baab2,0x00395c9c,0x003c5e86,0x0036e532,0x0016da90,0xffe666b0,0xffb3b764,0xff8ac157,0xffadb4e9,0x00142dfd,0x00378e65,0x0027385b,0x000c08c9,0xffab041c,0xff8c63e8,0xffc2477b,0xffd1d0c7,0xffd92851,0x00382fdc,0xffe5b40e,0xffd63fc1,0xffa5a759,0x0009b4cb,0x000bc061,0xffffecfd,
-0x00076a54,0x0001a773,0x00032e18,0x00022eba,0x000157d7,0x0004b806,0xfffe2924,0xfff5944b,0xffe5eb4d,0xfff3c2c0,0xffe942a3,0xffe44df2,0xffed5fd7,0xffdcbacc,0xffdefe64,0xffe6c532,0xfffd3903,0x00141978,0x0065e111,0x0058b386,0xfffc4b63,0xffbda9fc,0xffcf253b,0x00376435,0x00362ff7,
-0x004dee0e,0x007f62c2,0xfff7eeee,0x001f070c,0x008f635d,0xffb168f6,0xff6576cb,0xff878459,0xffe55a96,0xfffb7d40,0xfffb10a4,0xffff1b7a,0xfffcbf2e,0xfffe1062,0xfffd8666,0xfffe1599,0xfffe4cee,0xfffde805,0x0000ee95,0x0014a6d7,0x002116e8,0x001d071a,0x002abc73,0x002e25bd,0x001d127d,
-0x000b288c,0xfffa36f6,0xfff3693f,0xffed9c14,0xffe03b09,0xffdab3c1,0xffe2b8b6,0xfff69215,0x0028459c,0x00840eff,0x0031a727,0xffe2e169,0xff94aa5b,0xffcf18b0,0x001664aa,0x001efc5c,0x003e4e96,0x004eebb5,0x002eb3ba,0x0007e007,0xfffaef7c,0xfffb299f,0x0003b7ee,0x0002d7a9,0x00039b3f,
-0x00040418,0x000379c0,0x0000a527,0x0006b463,0x000ea65c,0x001d48d8,0x00159074,0x0002bc54,0x000507ec,0x0005a545,0x0003be85,0x000d2620,0x0008fd79,0x0004ba1d,0x00006431,0xffed7344,0xffdf3342,0xffd2eaa2,0xffc7dda2,0xffbc861c,0xffbbc1db,0xffc51a86,0xffe5dfd8,0x0003511e,0x0010d7ea,
-0xfff1de8f,0xffd4df45,0xffcb7fce,0xffccee6d,0xffd4b02d,0xffdef1ba,0xffee71df,0xffefea3a,0xfff93e8c,0xfff8d98a,0xfff8c4b4,0xfff4a63c,0xfff7265f,0xfffeba81,0x00068a3b,0x000465bf,0xfffb993b,0xffee1b00,0xffe8eff7,0xffe9923c,0xffee1a25,0xfff17cd9,0xfffa5d0e,0x00081235,0x001407c6,
-0x001c59af,0x00232cbd,0x002677e7,0x0023aeca,0x001d82aa,0x000dd400,0xfff09419,0xffe5691a,0xffda442d,0xffde8cc7,0xffe48a15,0xffee4387,0xffec3c54,0xffebaa85,0xfff4c73d,0xfff6d66c,0xfff96378,0xfff8d338,0xfff841a8,0x0000d77a,0x000e5b42,0x00137867,0x001c46b0,0x001d35a2,0x0023fe3f,
-0x0017473f,0x000fc9a6,0x000814b0,0x0002d459,0xfff7f713,0xfff68792,0x00020437,0x00012453,0x000411e7,0x00070d64,0x000b4966,0x000f712a,0x00149d9f,0x0017df3e,0x001b764d,0x00178db2,0x0014e658,0x0013d525,0x000a18d1,0xffff48d8,0xfff1b481,0xffedd7d5,0x00285514,0x00283a9a,0x001e2bdf,
-0x002393df,0x001c1af8,0x001b34ba,0x001f5291,0x001eb46c,0x001ff3d4,0x0019ce73,0x0011f460,0x00138fd4,0x0013f6c5,0x0010b878,0x00076f6d,0x0007eab8,0x00030419,0x0000df4f,0xfff19de7,0xfffc9e5a,0xfffe2680,0xfffcf39c,0xfffe17fc,0xfffd934e,0xfffd5b78,0xfffc6e05,0x0003f737,0x0009a068,
-0x000f0ad6,0x0013d2a1,0x00185c23,0x001d1080,0x001dbeec,0x001fc59c,0x00218cde,0x0024c162,0x000cbbe9,0x00107438,0xfffda7af,0xfff7c18d,0xfffc5bb3,0x000307e1,0xfff7033b,0xfff6e1ef,0xfff521eb,0xfff4c90d,0xfff6777a,0xfff3ed58,0xfff26dd7,0xfff36afd,0xfff15168,0xfffbd776,0xffed26d3,
-0xffec2dc4,0xfff346e5,0x0005d69e,0x000159f2,0x000209ca,0x0001db5a,0x0001daf4,0x000229c2,0x000162f5,0x00037dfb,0x0004c6b4,0x00063755,0x0008157b,0x0009993c,0x000b4f6b,0x000bafec,0x000c939b,0x000da873,0x000d1d34,0x0003e675,0x000b83b4,0x000bc7cd,0x000a3ee5,0x001e9345,0x001b406d,
-0xfffd55dd,0x001b1e5f,0x001a22f8,0xfffe3dbe,0x0003a5a6,0x0001dc4e,0xfff89ef3,0xfffe45db,0xfffe90b8,0xfffb2db8,0x00163cb8,0x0017b50d,0xfffe52c9,0x0018a3c0,0x001ca346,0x00087a46,0x000bc5cf,0x000dbf8e,0x001026ca,0x000f9475,0x000f5069,0x000db7b9,0x000d8632,0x000dadc9,0x0013d5da,
-0x000bb77d,0x000b0341,0x000aa573,0x001216e8,0x0012fd23,0x000e4a0b,0x000d94a8,0x0007542e,0x00130891,0x0010518f,0x0007c995,0x00049afb,0x000b5858,0x000a98b4,0xfff85458,0x0007e41a,0x000e7622,0x000517aa,0x000ca772,0x000673b0,0x0004be7b,0x0002582d,0x000352df,0x0013645d,0x000c44d3,
-0x00130d4f,0x0018cff3,0x0016013d,0x001eabb2,0x00217ee5,0x001d95c0,0x0016d2dc,0x000e698c,0x000b58a1,0x00104e41,0x0024cc8c,0x00116630,0x000f3deb,0x0010df43,0x00244b0e,0x0024b506,0x0012eff5,0x000f97f3,0x000cd947,0x001d63e1,0x00197d37,0x000c6314,0xfffaec3a,0x000d2e16,0x0005be6e,
-0xffd634a8,0xfff0708a,0xffe36bae,0xffcf7061,0xffe3ae7d,0xffece96d,0xffe83f74,0xfff53d47,0xfff3c110,0x000572f4,0x000327c9,0x00112312,0x0016d59e,0x0014b083,0x00224a71,0x002db11d,0x002c1ee3,0x0027df16,0x001cd151,0x001b6e88,0x001bf6d7,0x003ce991,0x00116606,0x00123e6a,0x00162102,
-0x003d82a1,0x003d1eda,0x001c808d,0x001ccbc5,0xfff625ac,0x000c00bd,0x0001f51c,0xffeedbc6,0xffd1d17d,0xfffba536,0xfff20b49,0xffcbe1c7,0xffe9fe0f,0xffeeeb5f,0xfff3ec92,0xfff8a8bd,0xfff79cf8,0xffe2b010,0xffee0a4b,0xffe72ff3,0xfffb23b3,0x00066e9b,0x001cc581,0x00305944,0x0037953b,
-0x005028cd,0x005cad98,0x0050baf4,0x0033feed,0x0011d331,0x00068e3f,0x0020df98,0x005c4d4f,0x0024822c,0x0017ef63,0x00258054,0x005fa763,0x0058b158,0x0017255c,0x000b8181,0x00842933,0x0076d3d0,0x006d1d42,0x005ab27b,0x004e9cfe,0x0045bae9,0x002fabd1,0x0016d733,0x00160f71,0x000531d4,
-0x00092fc7,0x000346da,0x00079b78,0x00038a69,0x0015d502,0x00135dd0,0xffd0ceb9,0xffc12279,0xffbd7a10,0xffbcb5c9,0xffa8bbe8,0xffa3f336,0xffa99d86,0xffd59462,0x000d0b8e,0x0055be5c,0x00414f4a,0x0015c6e4,0xffe27682,0xffef3535,0x000a2b65,0x0036ae19,0x001e9906,0x003471eb,0x0064786d,
-0x0085f80a,0xffdc02da,0xfff4f690,0xfff38cac,0xfffb899f,0x0026c178,0xffebbe08,0xffd9b502,0xfff409e7,0xfff9229e,0xfffb5309,0xfffc8af2,0xfffc96b7,0xfffe4240,0xfffa62cc,0xfff886d1,0x0002a146,0x000f926b,0xfffe9854,0x0005ad71,0x00205eef,0x003f899f,0x00598fb4,0x00578ff1,0x0025927f,
-0xffeed667,0xffc31f63,0xff9b2735,0xffc1da09,0x0025ce53,0x003d8065,0x0031f7b6,0x0026d0c3,0xffd26bc1,0xffb0c521,0xffcabbf3,0xffd47c74,0xfff8ab81,0x0054c45f,0x00007f05,0xffdfa455,0xffbca9ac,0x0008882f,0x000d6fd8,0x00032a07,0x0004c1de,0x00020dc4,0x000278ff,0x000214f8,0x000134c2,
-0x00036ca2,0x0002942d,0xfffabf5e,0xfff43642,0xfffe598d,0x0006afe3,0xfff74828,0xffe518d5,0xffdf616b,0xffe2b5fc,0xfff08d58,0x00138123,0x003e5da2,0x007e68dc,0x005ab28b,0xffe8ce40,0xffb79fa5,0xffe8bc7a,0x00876ead,0x0098c65e,0x00ad6458,0x00c1321f,0x002041ce,0x002bf6c3,0x008f034e,
-0xffba1d22,0xff6387cf,0xff7ac766,0xffe6a9a0,0xfffc949d,0xfffb22c9,0xfffea294,0xfffd7985,0xfffe0826,0xfffdca2e,0xfffe57c8,0xfffe227f,0xfffdebbc,0x0001db7f,0x0014d6a7,0x0021a5a6,0x002afeb7,0x002e15e3,0x002b3dd5,0x0025cf3d,0x00167518,0x000ae3e7,0x0003dcd9,0xffffe604,0xfffdad18,
-0x0001d104,0x000b5b78,0x002b47a4,0x00559d8b,0x0093f0f2,0x0059fc32,0x001b3679,0xffe918e0,0x00049741,0x0066ef12,0x007366a9,0x0075de0b,0x007713b9,0x00431711,0x001458c2,0xfffe8967,0x000136b3,0x00034702,0x00025871,0x00038d29,0x0003b6cc,0x0002c04a,0x00021f8a,0x000710c0,0x000fed9d,
-0x001e6028,0x00262b7c,0x0022c330,0x00163dac,0x000f3756,0x000de882,0x0010ba9b,0x0013b825,0x0016d4d8,0x001fb827,0x000ede45,0x00082484,0x0008b3c4,0xffeda058,0xffe321bf,0xffe8a48e,0x000a56c4,0x0034c91e,0x00489db0,0x006269b4,0x000eed2d,0x0006b623,0xffec508d,0xffe949e0,0xffe7e764,
-0xffeed096,0xfff279f1,0xfff54f1f,0xfffae551,0xfffafda2,0xfff81dae,0xfff6f137,0xfff89ea6,0xfffd0afe,0x0006da64,0x000b9a48,0x00091240,0xfff6ceff,0xffec35ac,0xffec9802,0xffedb29e,0xfff2b934,0xfffbaab7,0x00122ca1,0x001f09f3,0x00243af4,0x0023aa35,0x001d01d8,0x00122f23,0x00117bf3,
-0x000a0027,0xfff9352b,0xffe74fa6,0xffe20dad,0xffefb92b,0x0001f948,0xffe96d81,0xffef1943,0xfffe1891,0x0001054f,0x0004986f,0x00027018,0xfffee2bc,0xfffadad5,0x000537e5,0x000ad5f1,0x0016d4b4,0x0015c822,0x001bb61a,0x0020439d,0x001a6435,0x00144921,0x00117587,0x000e0670,0x000c27a3,
-0x000218bd,0x0003af9e,0x00074c8f,0x00075cca,0x000bfd88,0x0010b2f1,0x00168988,0x001e1053,0x0025ac14,0x002ca4aa,0x0026e511,0x002042d0,0x001c3239,0x00117122,0x00058093,0xfff29b70,0xfff01a94,0x002b13fa,0x002dfe47,0x00291053,0x00263eb2,0x00273e2d,0x002410fc,0x00259cd7,0x00269890,
-0x00269a31,0x0028c449,0x002b09e7,0x002a9824,0x00276c0c,0x00291d94,0x001e9d5d,0x00180e55,0x001561cf,0x000af4b2,0x00026a09,0xfffe7109,0xfffe910f,0xffff9cef,0x00003e42,0x0000b2ee,0x0000ae61,0xfffff23f,0x0004c279,0x00092942,0x000f9a0e,0x0016a35a,0x001ef4f2,0x0026fa59,0x00259273,
-0x0026aca9,0x00277264,0x002ae112,0x00130d41,0x0012d596,0x001bc17f,0x001a1336,0x00099adc,0x001c42ec,0x00192a71,0x000b423b,0x000b113d,0x000a5b47,0x0007dc09,0x0008af2e,0x000852b3,0x00085dea,0x0019d5f4,0x00197822,0x00014428,0x001195da,0x0010ed7e,0x0006ca22,0x0007ac55,0x00079f6b,
-0x000760bd,0x000746f2,0x00075d34,0x0006aad2,0x0009a270,0x000bb5a4,0x000d49fd,0x000f5fb7,0x0010e2f1,0x0013d503,0x00138d0b,0x00143944,0x0014ae08,0x0013e74c,0x000e792d,0xfff09daa,0xfff58a36,0xfff3b6d4,0xffebe3a1,0xfff80872,0x00158b2c,0xffe899c6,0xfff54734,0x00082102,0x000e2c7a,
-0x000df3aa,0x000bc26c,0x000f9e54,0x001105f6,0x0012d85a,0xfff19ffe,0xffe522fa,0x001b2695,0xfff7b6e2,0xffeb66e7,0xfff0cf08,0xfff3a3b4,0xfff2635a,0xfff4b65c,0xfff32736,0xfff27628,0xfff0cf46,0xfff11446,0xfff165c0,0xfff7c475,0xffede616,0xffec2b04,0xffebcefb,0xfff0feb3,0xfff395da,
-0xfff62a86,0xfff413fe,0xfff451e8,0xffeea195,0xfffd67d1,0xffea0687,0xffe9236e,0xfff7757b,0xfff359ee,0xffe3ff7b,0xfff12eb9,0xffeec446,0xffe0ad33,0xffe78172,0xffeb0cd4,0xffe87baa,0xffedecb6,0xffef4835,0xfff2f46f,0xfff46453,0x00056cf8,0xfff3d638,0xfff90117,0xfff74f36,0xfffa0c92,
-0xfff41527,0xffeee758,0xffe8c011,0xffe7bb9a,0xffec740e,0xfffede8e,0xffe76f9c,0xffe1801a,0xffe34689,0xffefd8bd,0xfff64b32,0xfff8fe2b,0xfff3934d,0xfffe388d,0x000004c8,0xfff10ef2,0xffefe0a9,0xffeaa4e4,0xfffd3a52,0xfff961bb,0xffd0606c,0xffe853de,0xffe509ff,0xffc92cc2,0xffe23870,
-0xffe4ac1f,0xffe08dc7,0xffe2c39c,0xffdf156b,0xfff848a1,0xfff09529,0xfff46449,0xfff87164,0xfff522d2,0xfff73b6a,0xfffd51bf,0xfff64077,0xfff1bfe7,0xffe7251a,0xffeafb38,0xffeb7aa6,0x000b1c5e,0xffd7ec51,0xffd15e08,0xffd7d693,0xfff0443f,0xffff6013,0x0006a6b2,0xffffc76a,0xfff26c08,
-0xfff41b90,0xffe47a51,0xffd949a1,0xffcb8ba3,0xfff4e480,0xfff52f2b,0xffd8db34,0xfff29f10,0xfff6f132,0xfffbe1c4,0xfffd0abf,0xfffafb14,0xffebf4ee,0xffec33c4,0xffe16e8c,0xfff1f752,0xfffbeefb,0x0008695e,0x001419c0,0x000efbad,0x000f362c,0x000f41dc,0xfffb40db,0xffe0c75d,0xffc907b4,
-0xffc87b4a,0xffe6b779,0x001df07a,0xffd75b88,0xffbfbbbf,0xffcf3273,0xfff60594,0x000897fa,0x00051dcc,0xfff496bd,0x005511ae,0x003ebfe0,0x003750fb,0x0039205d,0x00424ed1,0x0036fb35,0x001f05b1,0x000c27d3,0x000c9cea,0x00026d5a,0x00055a46,0x0000e353,0x00068ab4,0x00007e0a,0x00139dcf,
-0x0015639d,0xffd4f6c6,0xffba7e24,0xffab1096,0xff9f80cc,0xff8ce4b1,0xff97bbb2,0xffb7cf77,0xffdd211d,0x001acb15,0x0070c54c,0x0044298a,0x00096c9f,0xffca6049,0xffc9cbc5,0xffcff507,0xffe1dc81,0xffce3b22,0xfff36767,0x004292af,0x0056515d,0xffea6719,0xffec7e94,0xffd10a23,0xffe43787,
-0x000c3419,0xffeab94b,0xffe6b133,0xfffb0ffc,0xfffb7726,0xfffd64a6,0xfffdfe43,0xfffe1734,0xfffe2fdd,0xfffd2068,0xfff829c5,0xfffa1970,0x0003efa4,0xfff72eb6,0xfffd31fa,0x00058ac2,0x0012442e,0x00160155,0x00035bc5,0xffe8e37e,0xffc50d45,0xffa4a1fb,0xff90d16f,0xffc3e551,0x002bae0b,
-0x002cf6b5,0x0013bf3b,0x00077a5f,0xffa24d91,0xff8b7fef,0xffc760a9,0xffcd551f,0xfff758ca,0x00579362,0x0012f7e6,0xffeefa5a,0xffc7de7a,0x0004b345,0x0009f4b3,0x000225de,0x000294bd,0x000198c3,0x000165d4,0x00018752,0x00011d1c,0x0002373d,0x00030947,0xfffcc345,0xfff1f059,0xfff8a9d1,
-0xfff5a965,0xffeebe27,0xffe7449d,0xffdd9e43,0xffe27c83,0xffd3f0a8,0xffdfb62a,0xffffbeb6,0x00338c9d,0x001a1535,0xffbd69a6,0xffa1cde2,0xffb3188f,0x00054e01,0x0002a7f1,0x00196925,0x002ea211,0xfffa7bec,0xffbdd214,0x00699c67,0xffb87606,0xff57cc2e,0xff7561a9,0xffe0fa33,0xfffda29f,
-0xfffd1c81,0xfffedefa,0xfffe1718,0xfffe9d92,0xfffe2a6c,0xfffe5106,0xfffeb6e4,0xfffcbb05,0xfffcf1a3,0x0009f1cb,0x001afaf2,0x00233d58,0x0025e9ce,0x0015cea7,0xffff315c,0xffe868e6,0xffd823a3,0xffd57ada,0xffdd0f88,0xffd3fca6,0xffd6e681,0xffd979b2,0x000cab28,0x0037c299,0x0074df83,
-0xffd70e1b,0xff66bc64,0xff2136d1,0xff6cb07d,0xffe6e49c,0x0035e5bc,0x007ef978,0x0077f52a,0x0037beda,0x001275e1,0xfffdfa82,0x0000cd5a,0x00034c5d,0x0001ea04,0x0002c8d2,0x00031f2e,0x00035a27,0x00017dba,0x00057e63,0x000f2b6d,0x001e3538,0x00221d9b,0x001b6e4b,0x001178fe,0x000ed921,
-0x000edf1a,0x00101935,0x000b8d96,0xffffc4c9,0xfff01cf0,0xffd730fe,0xffc57aad,0xffb4bbe5,0xffad4e49,0xff9fc801,0xff99fd6a,0xffa5aff2,0xffc2f295,0xffd5a8dc,0xffd98309,0xffeb59d8,0xffe106f2,0xffeca1a8,0xffdc9cee,0xffe1d15d,0xffe5ef18,0xffef8271,0xfff3a409,0xfffac86c,0xfffb8dca,
-0xfffa5002,0xfff8843d,0xfff7a978,0xfffacb0b,0x00021262,0x0003b827,0x00005da1,0xfff68a7e,0xfff12d67,0xfff0de3e,0xffeaa1fb,0xffe6a2a3,0xffe95975,0xfff1d943,0xfff9c733,0xffff8095,0x0004c73d,0x000ad17e,0x000e59d7,0x000afc52,0xfff9c512,0xffd292ad,0xffd289f0,0xffcdf667,0xffd7f8e5,
-0xffe35028,0xffd5fa8d,0xffda52d9,0xffe30d62,0xffe7810c,0xfff130ae,0xfff1efce,0xfff3e241,0xfff3d195,0xfffe7715,0x0004b98b,0x000d5976,0x000df97a,0x0016c7ac,0x0019910f,0x00177418,0x00120add,0x00111186,0x000a0e1c,0x0001081a,0xfff6fe18,0xffff75ad,0x000530ad,0x000a4bb7,0x000f7921,
-0x0014fe08,0x001baa6a,0x00183710,0x00138cf9,0x000eee50,0x00037e99,0xfffae4f2,0xfff300af,0xffedbf28,0xffe5804b,0xffd933d4,0xffd88378,0x001a0f1d,0x0019a784,0x0029533c,0x001afd49,0x001cba21,0x001cab7a,0x001adeb9,0x001c047b,0x001adbd0,0x0019385b,0x001ab13c,0x001977c0,0x001b09f4,
-0x001b7aaa,0x0016db2d,0x001480d2,0x000bbbe6,0x0009cecf,0x00055815,0x0005ac59,0x000994ec,0x000779b0,0x0007f0fc,0x0007bf6e,0x00076c32,0x0007af44,0x0009af33,0x000b2b17,0x000c3c63,0x000d7a7d,0x000de8ad,0x000cf57e,0x000e3cf5,0x0010529c,0x00124fb0,0x00163d9f,0x00099460,0x00083e5f,
-0x00055dd5,0x000b7699,0x001a25e5,0x00042b61,0x00095bb9,0x0014a0b7,0x00159cf9,0x00168859,0x0017642e,0x00188f5d,0x0019492d,0x001ba227,0x0008e63c,0x0004378e,0x00137e16,0x000503db,0x0000a445,0x0007ce51,0x0006947a,0x0006c08f,0x00072fae,0x0007497e,0x0007972e,0x00077ede,0x00076c49,
-0x0007247d,0x0006bc5d,0x0006682f,0x00061638,0x000592c2,0x00070499,0x000816da,0x00096abf,0x0008cadd,0x0005b7c6,0x001175d1,0x0010418c,0x00185487,0x000ee5f9,0xfffbece2,0xffdeed24,0x001471d1,0xffff92ad,0xffdfdcce,0xffe34fc4,0xffe2bde1,0xffdee1cf,0xffdfa386,0xffdeffd1,0xffde9a14,
-0xfffa22b2,0x000d7eee,0xffe000b8,0xfffc14f5,0x000caae8,0x0014eb1f,0x0010cf5a,0x0014444e,0x0016edde,0x0015384f,0x0014be25,0x001390c6,0x00132699,0x0013836e,0x0019fbfb,0x001235f8,0x00119aa6,0x0011d74f,0x00177d2f,0x0017889b,0x0010e1bd,0x0012b4bc,0x000e88d3,0x00195fa9,0xfff21b81,
-0x000af802,0xfffb501c,0x00025156,0x000a10c8,0xfff834ea,0x000cfd7f,0x000dbf36,0xfffb613f,0x00065507,0x000351e1,0x00052a23,0xfff7704c,0xfffb3d50,0x000d0c34,0x00085363,0xfff7a608,0x0019e79a,0x001d1d44,0x0022b407,0x0027f6bb,0x00209a76,0x001a3da4,0x0014483d,0x0011c559,0x00172f42,
-0x002b0841,0x0018747d,0x0015dec4,0x0018065f,0x0025fed1,0x00239ff7,0x000ef867,0x0010f078,0x00172d7f,0x00223924,0x000baf94,0x0006f666,0xfff25470,0x00074329,0x000195d4,0xffde8fba,0xffef1023,0xffedba35,0xffd7c1d5,0xffee26e8,0xffe762fd,0xfff125fd,0xffe8deeb,0xffec5c11,0x0005759a,
-0xfffdb59a,0x0003acb5,0x00130782,0x0020d04f,0x0028a340,0x0037c159,0x002f0db2,0x002a82c1,0x0021510d,0x0020d7ca,0x00222e28,0x004349b1,0x001af498,0x001ba708,0x0021fcb1,0x003cc249,0x0038e905,0x0015a31c,0x001cd53c,0x000448d7,0x000f4b15,0xfff98a95,0xfff1dd04,0xffd840ef,0xfffeaeba,
-0xfff9d343,0xffe1e813,0xfff90f81,0xfffaec7c,0xfffde433,0xfffce7d1,0xfffdcb33,0xfff29058,0xffef170b,0xffe7477d,0xfff6580c,0x0003ec86,0x0009bf8b,0x00276527,0x003f1f43,0x004fe444,0x0060f665,0x0049a2b5,0x002cf6ee,0x00129e6e,0x000c976b,0x0029625f,0x00617ba9,0x002d5f9c,0x001ef11b,
-0x002e07f6,0x005429e6,0x0044bacd,0x0001d82c,0x0002b4d5,0x00955e67,0x00654394,0x00493173,0x0043062e,0x0039b46b,0x002ea9df,0x0018e13b,0x0007f733,0x0006ea73,0x000172b7,0x00037a53,0x0000ed52,0x000480f5,0x0000109c,0x00121a3b,0x001b8f7e,0xffe4f293,0xffd682c8,0xffc19ab9,0xffc82416,
-0xffcbd2b3,0xffc2a0a0,0xffdb2889,0xfff6830b,0x002f5eb6,0x0076d275,0x005a0fe1,0x002a516b,0xfffb3071,0x0004195f,0x001db59b,0x00482490,0x0026e0fc,0x00422ac1,0x0084fc78,0x00959ac1,0xfff53eea,0x0008734b,0xffecf7a8,0xfff59d2c,0x0018582d,0xfff555b0,0xfff081d4,0xfffd90e7,0xfffcdd1b,
-0xfffeae00,0xfffe8308,0xfffeb08f,0xfffe7da2,0xfffe7e18,0xfff99a49,0xfffce51a,0x0009d13b,0xfff83505,0xfff23e13,0x000c065b,0x0037ccae,0x004ea482,0x0058c429,0x001d806d,0xffe151f2,0xffadcfe4,0xff924b05,0xffc82385,0x0036092c,0x002e98e8,0x0014533c,0x00071850,0xffb60358,0xffa0d456,
-0xffc3a775,0xffd66447,0x00125993,0x006815d5,0x001a0d4f,0xfff5c909,0xffd14e77,0x0002ce81,0x0006de1a,0x000166ee,0x0001889a,0x0000f8df,0x0000e614,0x00013153,0x0000ba56,0x00019318,0x000243ae,0x000342e0,0xfff899a7,0x000a7d70,0x000e5598,0x0009e715,0xfff75d56,0xffe3d2a1,0xffe9d784,
-0xffffecfd,0x003319d4,0x00729da4,0x00974af4,0x00609365,0xffdc815f,0xffe37fca,0x00255d38,0x00a4cf35,0x00b566db,0x00b6e76b,0x009ece3a,0x00284761,0xffe1c899,0x003a5f8d,0xffb85cbd,0xff6e8669,0xff754afd,0xffe7f460,0xfffdfd3f,0xfffea3dd,0xfffef9a5,0xffff1ffe,0xfffef446,0xfffeabc5,
-0xfffed175,0xffff3c7a,0xfffd18d6,0xfffd3dd6,0x00086779,0x001bcb6e,0x00206820,0x0028eef0,0x002ac82c,0x0023e486,0x00158553,0x00012b6b,0xfff14abf,0xffeb4730,0xffe9ded6,0xfff2cb9c,0xfff24699,0x00318baa,0x005a3a1d,0x008aa16f,0x0028e3de,0xffe9edeb,0xffe09983,0xffcfeda1,0x006cfa67,
-0x007b9b4e,0x0075614f,0x00850772,0x003ca0f2,0x001569f7,0xffff1632,0x0001f221,0x00016804,0x00010e5a,0x0001d740,0x000257e7,0x00023589,0x0000e72a,0x0003f9e9,0x000d6505,0x001d5594,0x002e61de,0x0028ef8c,0x0023e388,0x0018ca2d,0x0010313f,0x00135714,0x0011cdad,0x00125a59,0x00164ff4,
-0x000230df,0xfffa18ee,0xfffc837a,0xffe967cc,0xffe4eafd,0xfff5ba9b,0x0018769b,0x003a5f66,0x004e1188,0x005147e7,0x001c92fa,0x000cf510,0xffe6cebc,0xffeb4d77,0xffe767ce,0xffefc852,0xfff5acdb,0xfff85f32,0xfffe5ae2,0xfffde855,0xfffc3bd5,0xfffad1c3,0xfffb076d,0xfffc036c,0x0003a8d3,
-0x00080d87,0x00099a18,0xfffa68df,0xfff259cd,0xffeddd6d,0xfff1967e,0xfff60fdc,0xfff9bc22,0x000631eb,0x000b0f04,0x000b59e4,0x000a7e10,0x00057203,0xfffc4a16,0x00028f77,0x0006ef17,0x00076735,0xfffb0f43,0xfff60c55,0x00025069,0x000e14b5,0xffe64a17,0xffe30a59,0xffea4a2d,0xfff113df,
-0xfff1cd44,0xfff4166f,0xfff4c162,0xfff5e12d,0xfffc3cea,0x0001fae4,0x0008c910,0x000a94a5,0x000e7cfa,0x00135a2e,0x0013ce6f,0x00132fa6,0x00137e27,0x000ec9fa,0x000a0a19,0x0005cb18,0x000c420f,0x000e0574,0x001035fa,0x00155808,0x001b3388,0x00219a27,0x00244059,0x00269f7a,0x0027aca1,
-0x001ff4d5,0x00161cff,0x00100b51,0x0005cfff,0xfffbfcb7,0xffed2f2b,0xffe98b0d,0x001e60a3,0x001e98d4,0x0016cf72,0x001cc0d1,0x001c955c,0x001ae3f6,0x001fa15a,0x0020a249,0x0024739d,0x0027b281,0x0028f9fa,0x002cf112,0x002df9a5,0x002fdf29,0x0024cfc1,0x001f2418,0x001e2e07,0x0016935c,
-0x000b2d0d,0x000c015b,0x000a54f6,0x000b07b8,0x000b2f67,0x000aec56,0x000a2a91,0x0009607d,0x000d9f52,0x0011fdc1,0x0017c1d3,0x001df06e,0x002504b4,0x002acbd5,0x00271d98,0x00245c69,0x002140dc,0x0020b115,0x0017610f,0x0016f645,0x00171baf,0x000fcc43,0x00021675,0x001a90cc,0x00103f18,
-0x0002e09a,0x0002f8bd,0x0002b312,0x00020605,0x0001e18f,0x00011f69,0x00022c27,0x00140c71,0x001d2ba1,0xfffe4606,0x000f0169,0x0015a895,0x0014977e,0x0013dd38,0x00146d8e,0x001437bf,0x001462db,0x0014aeb8,0x00142dcd,0x00167f1f,0x0017d677,0x0018b95a,0x0019dbc4,0x001a9343,0x001d0273,
-0x001b5b71,0x001b2fcd,0x001af356,0x00196fea,0x001b0837,0xffea7ce3,0xfff078cf,0xffe82149,0xfff9f44c,0x000d95ec,0x001feb48,0xfff0520f,0x0008f422,0x00188765,0x001e9865,0x001e4d25,0x0019936c,0x001dde4b,0x001e527b,0x001f8624,0x00050f53,0xffeecc69,0x0025b15e,0x000b5192,0xfff947bd,
-0xffe58e5e,0xffedfd07,0xffebff57,0xffee2393,0xffeb73d2,0xffeafdd4,0xffeb1bb4,0xffeb06bd,0xffeb3a1d,0xfff094b7,0xffe82f64,0xffe7161e,0xffe75974,0xffed1129,0xffef9ba6,0xfff0be3a,0xffeef131,0xffedc586,0xffeba088,0x001112af,0xffea7829,0xfff34c03,0xfffd675e,0xfff4e500,0xffeb0eeb,
-0xffefe6bf,0xffefe521,0xffe9021b,0xffe6fe7d,0xffe8b4c2,0xffeff15a,0xfff109e1,0xffefee72,0xfffa554f,0xfff402bf,0x00125035,0xffeeb66f,0xffeee426,0xffefa51b,0xffefd2ae,0xffe59b75,0xffe02824,0xffdfb045,0xffdfdf0c,0xffe5af17,0xfff5ae8c,0xffe1d5ee,0xffde7f55,0xffe2a8ba,0xfff0dce2,
-0xfff5c281,0xfff38fe6,0xfff03303,0xfff5477f,0xfffbf7ac,0xfffe542a,0xfff42c50,0xfff1f0ba,0xffff98f7,0xfffcafdc,0xffde54c9,0xfff27412,0xffec01b9,0xffdf4ad0,0xffe3c4a4,0xffea8e94,0xffea43af,0xffe605e3,0xffddc894,0xfffd5e49,0xfff27a76,0xfffcad9e,0xfff4d497,0xffe946c9,0xffef65c6,
-0xfff3b71b,0xffe5b526,0xffe1bcc9,0xffe1e2c9,0xffe45553,0xffe4f65b,0xfffdee86,0xffd3a337,0xffd19abc,0xffdb044b,0xfff78e97,0x00038d8a,0x00006f06,0xfffe8faf,0xffea7140,0xfff40e1e,0xfff3f5cf,0xffdfb776,0xffd68a76,0xfff90e54,0xfff9edb6,0xffebcbd4,0xfffc74d1,0xfffe7f60,0x0002a14a,
-0x00026cda,0xfffea3f7,0xfff757c3,0xffee0915,0xffddd330,0xfff87fbd,0xfff1f409,0x00093f07,0x00081cc3,0xfffc152b,0x00033047,0xfffde97f,0xffdc99df,0xffc221c3,0xffbc7397,0xffc1b0b4,0xffe0b953,0x000bceed,0xffd44673,0xffc6f3eb,0xffdc7116,0x0008b167,0x0011e1e8,0xfffb550f,0xfff4f628,
-0x0042394f,0x003be03c,0x004425a0,0x003a1645,0x003b44ab,0x00281e14,0x000e671f,0x0003720b,0x00041642,0x000074c6,0x00007a27,0xfffec0c3,0x0003562c,0x000011f5,0x000f3723,0x0015e10d,0xffef2d8d,0xffc9860c,0xffc3f4b5,0xffb5ee3c,0xff8e2bab,0xff9c2f17,0xffb93f4e,0xffed73b7,0x00283e42,
-0x006b1e66,0x002f3c6b,0xffed9b9a,0xffb7a32e,0xffb8f7e7,0xffc5543d,0xffe3bfde,0xffcf2642,0xfff6ed6a,0x004d3f30,0x00550e1d,0xffe61318,0xfff513ad,0xffdfc52c,0xffe67293,0x0001aa84,0xfff5c9b3,0xfff79ecf,0xffff0d47,0xfffdf670,0xffff6521,0xffffe167,0xffffdc37,0xfffefceb,0xfffe94e5,
-0xfffa8ce4,0xfff708c5,0x00039548,0xfff47abf,0xfff8651e,0xfff6ffe6,0x00001833,0x000c6aa4,0xfffa2b82,0xffdd5d02,0xffb9c9a7,0xff9db54b,0xff99a5aa,0xffd5931f,0x0038e56f,0x00201f25,0x0003e5fd,0x000407e3,0xffa94ac5,0xff9b18b7,0xffcfe744,0xffd448d3,0x0020c830,0x006b20fb,0x0030a6dd,
-0x00019f2c,0xffdee9b6,0x00015e9b,0x0005b077,0x00002ba1,0x0001566b,0x00006a59,0x000042cf,0x00005654,0x0000ca38,0x0000ce58,0x0003925a,0x0001b3d6,0xfffc1c58,0xffffb3ce,0x0006bb20,0xffff4776,0xffea3360,0xffe4dcd8,0xffea6282,0xffd98193,0xffebabb8,0x001dac18,0x0028fba4,0xfff9f9ec,
-0xff97569c,0xff9e9d47,0xffc1bf37,0x00105e83,0x001f5b44,0x002fa11f,0x001c7836,0x0010df0a,0xff8fdf23,0x000de569,0xffba842f,0xff75f84d,0xff80ce73,0xffe42d7f,0xffff8cf7,0xfffea15d,0xffff2d69,0xffff643a,0xffff8e37,0xffff5269,0xfffefbd8,0xffff29e3,0xfffd9560,0xfffbb73b,0xfffefac4,
-0x0010c116,0x002191b7,0x001db7be,0x00082e0e,0xfff5244a,0xffdfe2f6,0xffd2993b,0xffce3e91,0xffd8ce50,0xffd8bb8b,0xffe6e9f1,0xffe68e7c,0x003593f6,0x004f26bc,0x0051686e,0xffae53d8,0xff4ac9f6,0xff2c967f,0xff649ae6,0xfff62a74,0x00697667,0x00a7f98e,0x008d5558,0x0037621f,0x0018b403,
-0x0000855d,0x00022c8a,0x000159b6,0x0000bea2,0x00010e19,0x00014309,0x0001eebd,0x0001948b,0x000211a5,0x000a9b2c,0x00171ef5,0x0027fc98,0x002c992d,0x001cda7f,0x001881ce,0x00176ebb,0x00132ed5,0x0010d9f7,0x00064ca2,0xfff71cab,0xffdda433,0xffcd2ed0,0xffbf8f64,0xffb1b11f,0xffa47a2d,
-0xffa251de,0xffb2ef7f,0xffc9f824,0xffd5e936,0xffd57049,0xfff46669,0xfffa0528,0xfffff32d,0xffef7178,0xffef49c4,0xffeff0a2,0xfff40e1b,0xfffa353d,0xfffe1122,0xffff11d4,0xfffd964b,0xfffd9c7c,0xfffbb452,0xfffaf5c9,0xffff3a5f,0x0002ad14,0x00043768,0xfffbd9f3,0xfff30100,0xfff20f0c,
-0xffe93682,0xffe31613,0xffe42543,0xffea615b,0xffedca72,0xffee2836,0xfff11f11,0xfff4272e,0xfff604b3,0xfff5d265,0xffe9c640,0xffc93b33,0xffce9808,0xffd15400,0xffdfea75,0xffef59b2,0xffcb7088,0xffd0c9ce,0xffdf95dd,0xffdfd4ac,0xffeaf982,0xffeb4c21,0xffee6ac6,0xffefafbb,0xfff9b308,
-0xfffb3501,0x0004ab16,0x00003b7e,0x000a9d24,0x000abf94,0x000f64da,0x000d3b5f,0x00113e4e,0x000bb897,0x0007065c,0xfffafdef,0xffff61a2,0x00073661,0x000bd4f4,0x00126ddf,0x0018ff44,0x0020ee61,0x001931e4,0x00115e0e,0x00093e69,0xfffa965d,0xffee65c2,0xffe2abb9,0xffe09fec,0xffdadf31,
-0xffd0809d,0xffd050ce,0x00075eb6,0x00067285,0x001eae64,0x000bccaf,0x0013da0e,0x0014a014,0x0011378c,0x00142f71,0x001247e2,0x00153e16,0x001ccec3,0x001b5e49,0x001d7962,0x00214374,0x001fdd36,0x001afd2a,0x00129049,0x000f2a7c,0x00109baa,0x000970d4,0x000d42b1,0x000b6eab,0x000b330a,
-0x000af8b0,0x000a147b,0x000abad1,0x00087a0a,0x000727ef,0x00060856,0x00058a6e,0x00047e60,0x000132e2,0x000149d4,0x0001e3d2,0x0002d31b,0x00058433,0x00063e94,0x00021a3d,0x000b6b12,0x0015bf0f,0x00213cc6,0x0007c49e,0x00146adf,0x001f7927,0x00221ed5,0x00238b4a,0x0023692c,0x0026980b,
-0x002864c5,0x002aca1d,0x0018fef7,0x000d45b4,0x0023341e,0x0015fae5,0x000c9d03,0x000912b8,0x000a5608,0x000a0cb6,0x000aa670,0x000abf58,0x000af52e,0x000b2a3c,0x000a1c22,0x000913ba,0x000794a9,0x000618e1,0x0004cb16,0x0003902e,0x0004dccd,0x00058c70,0x00064699,0x00057491,0x00090329,
-0x000aa6da,0x000b1411,0x00161ce1,0xfff91697,0xffe5c785,0xffdb805e,0x00018537,0xffea6809,0xffd90bb8,0xffdb1eab,0xffdbce6e,0xffdc623f,0xffd9f2d3,0xffd92e7e,0xffdc5ce1,0xffe46923,0xfff952cc,0xffddf916,0xffe73bf1,0xfff69137,0x0010b1ca,0x000a173c,0x000ce865,0x000f81cb,0x000c899d,
-0x000bf7d7,0x000ba7c6,0x000bc036,0x000c4c59,0x0011ba51,0x000acda5,0x000a4bd5,0x000b87c9,0x000f0e8e,0x000f4112,0x000a42d6,0x000cc2e2,0x000cee3a,0x0010c6f3,0xffe25bb4,0x00039ea5,0xfff034d9,0xfff81449,0x0001d0da,0xfff45192,0x000738d2,0x0001910e,0xffed5641,0xfff536cd,0xfff668ec,
-0xfffd9dcd,0xffebd9ce,0xfff0c405,0x0000493b,0xfffe3330,0xffe85b76,0x000ba237,0x00139e7c,0x00141983,0x00199696,0x000e9b26,0x0009a8cf,0x00084481,0x0008eb1b,0x000e8647,0x001d99d2,0x000d2701,0x000a9835,0x000f023e,0x0016e828,0x001531b0,0x0006511d,0x000a5426,0x0018e472,0x001b5527,
-0xfffb821f,0xfffc9b01,0xffebb0b9,0xfffed3e0,0xfffc7d9f,0xffe84e95,0xffefa7c9,0xfff5bbf3,0xffe2bab8,0xfff2b5fe,0xffe5ccf3,0xfff5cb2f,0xffe04b1f,0xffe3114f,0x00009888,0xfff46ced,0xfff3eea0,0x00035e89,0x0017432a,0x001877a5,0x0026bbd3,0x001615b3,0x00124c23,0x000f2204,0x0013305c,
-0x001523e9,0x002e6da4,0x000bfff5,0x000cba45,0x0018f1b3,0x00266c59,0x0025fd17,0x000e47af,0x00166b44,0x000d2cff,0x000b3194,0xfff0758c,0xffefe92e,0xffe04dd9,0xfffe64bf,0xfffde72a,0xfff4e04e,0x000185b8,0xffffe5ef,0x0006ce3d,0x00021da2,0x00002e7a,0xfffe705e,0xfff3dfdd,0xffe8a356,
-0xfff33fa4,0xfffc9086,0xfff7d0ef,0x0011e6e2,0x002b6e78,0x002fbdcc,0x003c1111,0x0017b9f6,0xfffea11f,0xfff5cb0f,0xfffcbb59,0x001a31d4,0x00427c89,0x001520c6,0x00092f05,0x001f7131,0x0031f18a,0x00264e1d,0xfff74467,0xfffcf9d0,0x008bc3d3,0x00495244,0x002bc189,0x002ab61f,0x00255ad1,
-0x001a2231,0x00089daf,0x0000bce3,0x0001de60,0xffff2f32,0xfffe717e,0xfffebe9c,0x000198f7,0xffff3d61,0x00093066,0x00180374,0xfff6802b,0xffe411cc,0xffc23128,0xffc8223d,0xffd642e1,0xffd4d8f8,0x0000e860,0x0019d416,0x005257d0,0x00901ebc,0x00669762,0x00301558,0x0003ba32,0x000924ca,
-0x001acd11,0x003b0f3e,0x001b0d65,0x003d0be1,0x008e723a,0x008f8a8e,0x0017db86,0x001a0505,0xffe83ca3,0xfff36390,0x0009ddbd,0xfffc4cfc,0xfffb93ce,0xffffa1d9,0xffff34bc,0x00003cf0,0x0000bbe5,0x00004a49,0xffff6dc3,0xffffc981,0xfffbd463,0xfff96522,0x000341a6,0xfff65eb4,0xffe8826a,
-0xfff8999c,0x0021e2ec,0x00302c69,0x003ac089,0x000ad094,0xffd5be41,0xffa51fd6,0xff9f733b,0xffe03fd6,0x004c15f6,0x002cbf35,0x0007088a,0xfff6996b,0xffa63a91,0xff9efc5b,0xffd2583c,0xffeb4336,0x002fee13,0x007909a0,0x0039b274,0x000ba295,0xffe13c37,0x0002ed38,0x0002d601,0xfffff2ef,
-0x000077f5,0xffffd423,0xffffa5d9,0x000017c9,0x0000304e,0x0000bc83,0x00011ac7,0x0005c995,0xfffbf0e5,0x000da4eb,0x000ebcc6,0x0013e4c6,0x0007b390,0xfff12e92,0xfff95ba7,0x000a918c,0x003dd026,0x0083d36f,0x008698c0,0x00490c8c,0xffcf59e6,0xfffe2327,0x003b57b4,0x00801404,0x008f1fce,
-0x0083b3c3,0x0047ab33,0x00248c59,0xff94f0bc,0xffc9ac42,0xffbe83e3,0xff97606e,0xff9025d3,0xffedd3dc,0x0000200c,0xffffa088,0xffffd5e1,0x00003510,0x00001eea,0xffffd111,0xffff56be,0xffffdb90,0xfffe8e1a,0xfffc1471,0xfffcc5b7,0x0010da11,0x001514cb,0x001f1521,0x001f57f3,0x00148d3c,
-0x0006fe5e,0xfff310e8,0xffe22004,0xffde8e47,0xffdecb0a,0xffee0e68,0xffe877cf,0x0040ec9f,0x0059ba04,0x005c5a39,0xffd7acc9,0xff964e96,0xff9d51fc,0xff94d0bc,0x003a775e,0x0073622c,0x007ea029,0x00814fd1,0x002f9172,0x001652cd,0xfffefe7a,0x0001082c,0xffffbd8c,0xffffb2bb,0xffffd9af,
-0x00009885,0x000115c9,0x0000a762,0x00007151,0x0007c962,0x0016c2b6,0x002afee8,0x0027c449,0x002b47d6,0x00243323,0x001991f1,0x001a5fa3,0x001433f0,0x000fdc97,0x000b298e,0xfff4825a,0xffe84694,0xffe4c8b8,0xffdb74d0,0xffd884b1,0xffea22d6,0xfffa3ec7,0x0008fcb6,0x0017acf7,0x000a29e3,
-0x00198a3a,0x0009fa41,0xffecd100,0xfff1acfe,0xffed0a31,0xfff50e2a,0xfffb2724,0xfffe2279,0x0001d249,0x00009ae6,0x0000c093,0xfffe7848,0xfffe36b3,0xfffd56c8,0x0000c979,0x0003db02,0x0007d1ae,0xffff3f3e,0xfff8ce19,0xfff48471,0xfff83019,0xfff83205,0xfff758e0,0xfff819f5,0xfff693e9,
-0xfff4c290,0xfff909bd,0xfffb30b7,0xfff88a1d,0xffff25c1,0x0003baf3,0x0003692e,0x0002464c,0x000040ba,0x00089059,0x000f77d3,0xffe490f7,0xffdb5059,0xffd92c9c,0xffe065be,0xffdf78c1,0xffe59485,0xffea7aec,0xffef8b5c,0xfff3b944,0xfffa5c11,0xfffd2ce1,0x0000d3e6,0x00020e67,0x000685c3,
-0x00095b77,0x000ccd3b,0x000f8b92,0x000c1704,0x00059455,0x0007e2f7,0x001214de,0x00120e69,0x00162ca8,0x001c1794,0x0022fee4,0x002974aa,0x00251a1d,0x001fe49f,0x0019d44a,0x0010c5d9,0x0006bd7d,0xffff81a9,0xfff8d4b9,0xfff20876,0xffe8a21b,0xffe45b8a,0x000c65bb,0x0009caba,0x00021bca,
-0x000e9c32,0x000d1c1a,0x000dadc7,0x0013a7a7,0x0014b63a,0x001a3b55,0x001bd92f,0x001bd8d8,0x00220ceb,0x002688d8,0x0028c355,0x00210218,0x001f24e5,0x001e54df,0x001b411f,0x000dfbca,0x001785ae,0x00162003,0x0015a42a,0x00155f2b,0x00147ac2,0x00132bf8,0x00130483,0x00150006,0x00179a2b,
-0x001a3b96,0x001c9389,0x001eb6e4,0x001f2772,0x001aea59,0x00167ca5,0x00123216,0x000f467c,0x001668a9,0x00169b5f,0x000c98bf,0x0003d739,0xfffe459c,0x00127e40,0x000600f4,0xfffec39e,0xffff632a,0x00003fcd,0x0001bc77,0x00012e61,0x0000a82c,0x00026d3f,0x000b31ae,0x0018626a,0xffff1058,
-0x0009846d,0x00137ebd,0x001ec8d0,0x001bb096,0x001cc577,0x001ccd97,0x001d13c5,0x001d65ce,0x001d1fab,0x001da2d0,0x001d78be,0x001d0b83,0x001cbda7,0x001c65f1,0x001d21c7,0x001b90cc,0x001af5a5,0x001a5507,0x0018a7d0,0x0020d0aa,0xfff3fbaf,0xfff8641b,0xfff0d086,0x000b4bf8,0x0016ce3f,
-0x0011782c,0x00021c36,0x001377f1,0x0011e8ff,0x00165bbf,0x0015bfe3,0x00104d95,0x00125fed,0x0011c8a1,0x0012ffbf,0x000eb6f1,0x00002fc7,0x00152e15,0x00138fdc,0x00098fe3,0xffedea75,0xfff604e1,0xfff55ed1,0xfff75f95,0xfff3f030,0xfff3db07,0xfff576ef,0xfff5aeb1,0xfff5e1d4,0xfff95af8,
-0xfff390e9,0xfff345fb,0xfff453fe,0xfff980e1,0xfffae0c2,0xfff81699,0xfff81b90,0xfff57cbb,0xfff9e0a8,0x0015e256,0xfff6c653,0xfffe8f22,0x00033893,0xfffd8052,0xfff8438f,0xfff944dc,0xfffab365,0xfff681b8,0xffef97d4,0xffeed0ff,0xfffda56a,0xfff5d077,0xfff4a52d,0x0005fd73,0xfffa8b13,
-0x0010ef18,0xfff84cdc,0xfff679d6,0xfff9ec91,0xfff9827a,0xffec3b59,0xffe75733,0xffebb7ee,0xffee9a63,0xfff4ec8c,0xffffc5bb,0xfff2237d,0xfff1a08b,0xfff7869c,0x00042d4f,0x00049b37,0xfff8869f,0xfff9af74,0xfffb2f27,0x000656ef,0x000d415d,0xfffe5393,0xfff98721,0x00029de6,0x00004859,
-0xffee9dc1,0xfffa3863,0xfff4aa94,0xfff0b83b,0xffebd0b1,0xffeeca8e,0xfff626b0,0xffe9f5e6,0xffe2d7d1,0x0003a1ef,0xfff76bda,0x00033738,0xfff97652,0xfff2b946,0xfffb3528,0x000185ce,0xffee1bd8,0xffebe5c1,0xfff56486,0xfff95f89,0xfffa9ce2,0x0008ab80,0xffecf14b,0xffefebea,0xfffbf995,
-0x00155bc7,0x00184174,0x00023940,0x00088905,0xffeef3b6,0xfffefede,0x0003d2ac,0xffed5772,0xffe55917,0xfffdab64,0xfffd3643,0xfffab393,0x00006df9,0x0002c969,0x0003a2ed,0x0006b9a4,0x00019fda,0xfffeeb81,0xfff63eea,0xffe3fb55,0xfffc6a6f,0xfff056e7,0x00057157,0x00031590,0x0000480d,
-0x000d2bec,0x0009e3ba,0xffde69d5,0xffc713e9,0xffd1a474,0xffdfaa10,0xfffbf28a,0x0013df86,0xfff2ac7c,0xfff0ce98,0x000a2c10,0x002f0262,0x00262b49,0xfff398a2,0xfffa053b,0x0048c1b0,0x003d69c3,0x004c04e0,0x00341896,0x00299c6a,0x00172217,0x00036c2c,0x00012b46,0x0000d371,0xfffeb603,
-0xfffe9fda,0xfffd4c7f,0xfffffa0f,0xfffff6b2,0x00072024,0x0010d7f1,0x00035610,0xffe1f1d4,0xffdae833,0xffd21fc3,0xffaf2f98,0xffba310a,0xffd7a0f4,0x001293c1,0x0048817f,0x00739fb6,0x0039461e,0xfffb2c6c,0xffd4a19f,0xffd53e80,0xffe5a3c7,0x000beff2,0xfff43a1d,0x00175a6c,0x00678f53,
-0x0065f17d,0xffe85346,0x000a2589,0xfffcac96,0xfff541f4,0x0002ed80,0xfffe0304,0xfffc4553,0x000011a0,0xffff7517,0x0000952e,0x0000cf48,0x0000fbc6,0x00005163,0xffff5f26,0xfffd2048,0xfff904f0,0x000378ca,0xfff8d00b,0xfff6ccd5,0xfff37ea2,0x00053e41,0x001a0150,0x001205db,0xffec3e33,
-0xffc16423,0xffa320c8,0xffae4149,0xffefda66,0x004c45b0,0x0022c60a,0x00001799,0xfff98e49,0xffb0bbf5,0xffa97fde,0xffd04252,0xffdd14d4,0x002dd2f4,0x00726ea6,0x004db357,0x000ce391,0xffec3be9,0x0003ebd1,0x00026e9a,0xffffa69f,0x000051e5,0xffff8bf4,0xffff8fdd,0xffff75e5,0xfffff22b,
-0x00003540,0x0001f334,0x00026276,0x0003871e,0x00076859,0x001749d3,0x00116562,0xfff3c8e7,0xffeea920,0xfff2d74a,0xfff28517,0x0015c133,0x00560de5,0x003ca82e,0xfffaae1e,0xff95b962,0xffc462e9,0x0000591f,0x0046d4d2,0x0065c351,0x00607df2,0x00177a7a,0x00170bab,0xff7c8872,0xff8d2121,
-0xffba0c7a,0xffa9ab10,0xffa4ca4a,0xfff11bb2,0x00013f5e,0xffff3766,0x0000656d,0x00005aab,0x00006d24,0x000060bc,0xfffffb90,0xffffb7a9,0xffff0657,0xfffda824,0xfffa2038,0x0006c66e,0x001adf81,0x0013e409,0x0001e5c1,0xfff895ce,0xffe7ee73,0xffdda202,0xffd29d95,0xffd6031c,0xffdc6b07,
-0xfff5b36e,0xfff98106,0x0057ca95,0x005c9265,0x0022d2a4,0xffaf95d6,0xff7783af,0xff805495,0xff930c7e,0x001c073c,0x00882503,0x00a6587b,0x0080a9bd,0x002daa7f,0x00171a73,0xfffe48eb,0x0000cc0c,0xffff3ada,0xffff2dd5,0xffff78e3,0xffff8397,0xffffe9f8,0x00010367,0xffff8785,0x000546a5,
-0x00101f59,0x0029945a,0x0038ab49,0x0029fc1c,0x0022bb10,0x001d5f5a,0x00141ca9,0x0010e0bb,0x000a79a4,0x0003d238,0xffed17b9,0xffe0df63,0xffdbf8b5,0xffcdb344,0xffc987df,0xffd2fc33,0xffe3b542,0xffed979c,0xfff0c81b,0xffec63dc,0x000c7d50,0x00156b37,0x000cd113,0x000487f8,0xfffce314,
-0xfffdc38c,0xfffcc989,0x000100cd,0x00018643,0x00029266,0x0000ab82,0x00018ef1,0xffffc882,0xfffe7188,0xffff66c4,0x00040f9d,0x000a8a68,0x00045762,0xfffada53,0xfff75250,0xfff04844,0xffeb54c5,0xffe8cad2,0xffeb38c8,0xffe99228,0xffe656be,0xffe94606,0xffea94f6,0xffe9f376,0xffed3d8a,
-0xffeaf335,0xffdfc19c,0xffe5d321,0xffed7c67,0xfffcac1d,0x000afe54,0xffd67d63,0xffd84fbc,0xffe43418,0xffe1f424,0xffe82c84,0xffe9028d,0xffecf1e7,0xffefc184,0xfff7068a,0xfff6ee01,0xfffde66b,0xfff981b2,0x0000b646,0x0000a6a8,0x00077b9b,0x0008d47d,0x000f57da,0x000e0f44,0x000f09ae,
-0x0006b770,0x0005f57f,0x000b6def,0x000d2ceb,0x00135221,0x0018fe22,0x001f3f32,0x00174c6e,0x000fe0fc,0x0007f39c,0xfffd6f2c,0xfff39817,0xffea6288,0xffe975c8,0xffe5eb8b,0xffde058c,0xffdbf89a,0xfffee37f,0xfffd2460,0x000dc3fa,0x0003af52,0x000cbece,0x000db34d,0x000ba8cb,0x000ed696,
-0x000de4c3,0x0013b4a3,0x001c6739,0x001cd68d,0x001f0097,0x00246139,0x00249abb,0x002028b2,0x001ce895,0x00182e47,0x0019fdad,0x0012323b,0x0013c0b4,0x0013bd19,0x0013511e,0x00137bde,0x0012b725,0x0013d2e0,0x001026d8,0x000e89da,0x000d8736,0x000cef89,0x000c1989,0x000977e1,0x00065761,
-0x0003c260,0x0001e757,0x00014769,0x000ce1c0,0x00083c20,0x00165755,0x001cb3e7,0x001b8bfb,0x00141907,0x001d772d,0x001f2664,0x002233e1,0x002378bc,0x0022c0d9,0x0025ea04,0x00277f79,0x0028e946,0x00259696,0x001ccaa1,0x00234142,0x0023264f,0x001cd31a,0x0012c24a,0x00151fc8,0x0014f8f2,
-0x00158140,0x0015af58,0x0015d4de,0x0016258b,0x001539f9,0x00144250,0x0012b7b9,0x0011367c,0x000fea97,0x000f5107,0x000f3d91,0x000f0368,0x000e7272,0x000d3f71,0x0017355d,0xfff862dc,0xfffc07b4,0x000156e6,0xffe95c4c,0xffe4aa69,0xfff27ad8,0xffec9466,0xffe6606c,0xffece8e3,0xffeea8c2,
-0xffef7ea0,0xfff12513,0xffee6c41,0xffee6506,0xfff4038b,0xffe0dce4,0xffe66a5d,0xfff6f627,0xffe5a0b1,0xffe77b93,0xfffbbce3,0xfff95d93,0xfff9c8fe,0xfffbb572,0xfff7e004,0xfff790ae,0xfff8c377,0xfff9e5a1,0xfffa7be0,0xfffd6af8,0xfff8178c,0xfff79b14,0xfff960ae,0xfffb59c6,0xfffc1661,
-0xfff9f16e,0xfffbd82c,0xfffe4eb5,0xfffac916,0xffe8d8ea,0xfff3cc97,0xffe9888e,0xfff15d8d,0xfff652a1,0xfff0d313,0xfff9a481,0xfff24a7b,0xffe43b4f,0xffe2f1c5,0xffe69787,0xfff3a99b,0xffe5efba,0xffe8bad5,0xfff443c0,0xfff22945,0xffec1d8d,0xfff4314e,0xfffcae1c,0xfff9064e,0xfffb5066,
-0xffed82fc,0xffea842e,0xffef678e,0xfff4f93a,0xfffaa2b9,0x0001b5b1,0xfff55943,0xfff34c8c,0xfff959aa,0xfffccaad,0xfffcb9bf,0xfff5a6c6,0xfff9cc45,0x000a2d16,0x0007cc99,0xffef930b,0xfff07718,0xffea938f,0xfff82677,0xfff98f8e,0xfff28015,0xfff5adaf,0xfffb3c0d,0xfff19d6d,0xfff6077b,
-0xffebeb50,0xfff90bea,0xffe0d877,0xffddc1f9,0xfffb6177,0xffed020d,0xffea5eec,0xffef9411,0xfffcddbc,0xfffa0b8f,0x00021673,0xffeb941e,0xffea2734,0xfff1db6d,0xfffc613a,0xfffef4b3,0x0008dd81,0xfff00e85,0xfff038fe,0xffffb3b8,0x00048762,0x00089003,0xfffe5bc9,0x00062247,0x0004ce5d,
-0xfffe0a71,0xffeb4a2c,0xffeac5ad,0xffe79e58,0xfffcba39,0xffff8bff,0xffffbb02,0x0002f222,0x0001c0da,0x000468af,0x0004a254,0x00032b75,0x0002da61,0xfffc004b,0xffec22b1,0xfff4e872,0xfff35ed4,0xffee5cfc,0xfff8af4e,0x00064534,0x000084d4,0xfffecb5c,0xffcfdfb7,0xffbd62c9,0xffccd25d,
-0xffe517a3,0x0000abe4,0x000f6964,0xffef3920,0xffe8a68d,0x0002ab4a,0x00084056,0x0002dbda,0xffe9ab80,0xfff334dc,0x00597f54,0x0020d84a,0x0016001f,0x0015fbc3,0x0013721d,0x000a5c18,0x000000fb,0x00003244,0xffff167e,0xffff0570,0xfffe2882,0xfffdfa35,0xfffedd27,0xffff1c73,0x00023488,
-0x000d6a91,0x00045f67,0xffecb07f,0xffcb0141,0xffc6b2da,0xffc92e28,0xffd45c3e,0x0009459f,0x0031ca40,0x0067f32f,0x0093b2ab,0x005f3549,0x0024acb4,0xffff3827,0xfff79a5b,0xfffd9473,0x0013de26,0xfffc710c,0x00205d86,0x0072c462,0x0066d872,0x00163531,0x0014bc34,0xffe6677a,0xfff39f70,
-0x0000909b,0xffff5dc0,0xfffdcdf4,0x0000ee32,0x00000c12,0x0000c734,0x0000d789,0x0001045e,0x000082f3,0x00006d31,0xfffe943a,0xfffa4b6e,0xfffe8711,0xfff91f09,0xffecc25d,0xffea9c9f,0x0004723c,0x0009a894,0x0006fb14,0xffe65df1,0xffbcea8e,0xff9a250d,0xffaec4d7,0xfff47954,0x005222ff,
-0x00221a9d,0xfff4fa53,0xffe07f8a,0xff9b87bf,0xffa0a200,0xffdb9b0e,0xffeeafaa,0x003e94dd,0x007150e1,0x004b9562,0x0012a2d6,0xffe793fe,0x000822e4,0xffff5e58,0x000001a7,0xffff7f50,0xffff8cb4,0xffff595d,0xffff7cc7,0xffff9591,0x000005da,0x00003fcd,0x0003ee9b,0xffff829a,0x00083cc6,
-0x000929c8,0x00121d06,0x0008ee25,0xfff89510,0xfffe000c,0x00055cab,0x002b8f0d,0x0066c37f,0x00442b55,0x0004a7ea,0xffa70eb3,0xffef9e9c,0x0025f630,0x0039aecf,0x00513ffb,0x0040020c,0xffef2379,0x0016a900,0xff7259ee,0xff57ab14,0xffb3ef76,0xffc425ac,0xffb81ddb,0xfffa78ef,0x00000df7,
-0x00009b32,0x00008681,0x0000c6b5,0x00009536,0x000093ad,0x00002f4d,0x00003a40,0xffff7aeb,0xfffed554,0xfff764d9,0x0002b09a,0x00094528,0x000cd3c2,0x00039106,0xfff59a45,0xffe71111,0xffd74ef5,0xffca45ca,0xffcd4657,0xffceda34,0xffe8a772,0xffeca192,0x004d4580,0x004ce6ca,0x000f32da,
-0xff956f56,0xff6229d4,0xff6c8faf,0xff83fd5d,0xfffcf22b,0x00601d9d,0x007b9c8a,0x00657730,0x0022921c,0x00110a47,0xfffca550,0x00001f50,0xfffe2899,0xfffeec96,0xfffed34f,0xffff4b71,0xffff7c79,0x0000359e,0xffff695c,0x00027223,0x000d64ad,0x0021635c,0x00279483,0x0029faca,0x0026694c,
-0x001d4272,0x00187aea,0x000eb7b6,0x0004da8d,0xfff7c6c3,0xffe1d4c4,0xffd1bebb,0xffc613e6,0xffc3b585,0xffc3bc0a,0xffd20659,0xffd06bf9,0xffcdd5c6,0xffd6ef2d,0xffc2e98f,0x001184cf,0x0009bb76,0xfffcd0d1,0xfffc4235,0xfff84141,0xfffda4a2,0x0000c0a7,0x0002d737,0x0003a8c4,0x0002c0a4,
-0x00025341,0x0001b268,0x0000e8e6,0x000030d4,0xffffad8f,0x0001ad49,0x0006a0a1,0x0004dc83,0x00001753,0xfffad2f4,0xfff87d73,0xfff2455d,0xffecfd31,0xffe55ac5,0xffdf6817,0xffdbc9fc,0xffe39637,0xffeaeefa,0xffee9fb7,0xfff1a246,0xfff1a1f4,0xffec0cd7,0xfff9310e,0x00001718,0x000a6be0,
-0x000f486d,0xffe26050,0xffd9d553,0xffd5db76,0xffda84f8,0xffdbc625,0xffe1cf84,0xffe9009e,0xffef68fe,0xfff370d9,0xfff7d926,0xfff9be20,0xfffab4d4,0xfffc7036,0xfffde0c0,0x0001b190,0x0004de33,0x0008ff8e,0x0007f180,0x00039355,0x000717c7,0x000eb35e,0x000ec6d7,0x001272a2,0x001753b3,
-0x001cddfa,0x00219ea5,0x0017a622,0x000ccd59,0x0001d490,0xfff98da1,0xfff25e1f,0xffeb8a5d,0xffeae2b5,0xffe862e0,0xffe51c33,0xffe115ac,0xfffab802,0xfff5b872,0xfff9dfca,0xfffe6125,0xffffdd13,0x00026c78,0x0004e1fb,0x000657d4,0x00090ca1,0x000a12b9,0x000be092,0x001071b4,0x001625ac,
-0x00194abf,0x0018e972,0x001a4b25,0x0018de4f,0x001abc32,0x00146399,0x001c5f58,0x001d2ccb,0x001c27a9,0x001c0fd3,0x001b786a,0x001a717d,0x001b7a0c,0x0019e586,0x00197fdf,0x00180937,0x0015e0f7,0x00126d68,0x000d7bfd,0x00097f60,0x0004feb9,0x00015920,0xfffda91d,0x00106e1a,0x000ef9a9,
-0x00070f19,0x00051e18,0x000c43d1,0x000a3479,0x0006dd03,0x000c2a1c,0x000e17fd,0x000fd633,0x00120bd0,0x00128efd,0x0013185a,0x0014fd80,0x000d1167,0x0012c710,0x001203f9,0x000de910,0x00127076,0x001ef438,0x001caa4c,0x001d9a4d,0x001e26a3,0x001e9b40,0x001f0f7e,0x001f760f,0x001dcacd,
-0x001c11f8,0x001a3fa2,0x00186a4f,0x0016f39a,0x0015b17e,0x0014edc3,0x00141e08,0x00132636,0x0011a65d,0x001e06e5,0x00004fb8,0x0002823a,0x00021bc8,0x000de54c,0x0008c372,0xfff28692,0x000b3d10,0x000947db,0xfff8d076,0xfffa553a,0xfff9cf82,0xfff6d377,0xfff5196e,0xfff39e54,0xfff6481d,
-0x0003c0ab,0x00071200,0xfff47ef2,0x0006b133,0x000b1c82,0xfffdceaf,0x00007ad1,0x0001c5ec,0x000339bf,0xffff85f0,0xffffb13e,0x00020fd7,0x0003285b,0x0003753d,0x0004841b,0x0001c477,0x000253ad,0x0004af21,0x0007dbe1,0x0007a070,0x0000f899,0x0003ae19,0x000190ab,0x00094163,0x0003a9c0,
-0x0001a98d,0xffff5710,0x00001733,0x0001ea1f,0x00006b78,0x000281b7,0x000265a8,0xfffb5136,0xfff3f694,0xfff2d058,0x00041f91,0xfff3e9e9,0xfff50464,0x000954e9,0xfffe0a8f,0xfffeb60c,0x0002521d,0x0002f61e,0x000621c0,0x0005a25b,0xfff73414,0xfff3c1d0,0xfffb3997,0x0001b356,0x00078dd6,
-0x000b2f4e,0x0004b54d,0x0006913f,0x000e754c,0x00159f6b,0x00118db1,0xfffd8459,0x00041311,0x000927c5,0x00122a49,0x000e76d8,0x00026955,0xfff89c28,0xffffb1e3,0xffff54e2,0xfffaf102,0xfffcd767,0xfffb7421,0xfffaba0e,0xfff77cf3,0xfff1f87c,0xfffdd06c,0xffeb7bf2,0xffe720e5,0x00037e22,
-0xfff82a12,0xffff0708,0xfffc0aca,0x00032346,0x0008d0d3,0x00104160,0xfff9e948,0xfff9b765,0x00087bc4,0x00114d3e,0x00135ce0,0x00140b53,0x00084c9a,0x000f7338,0x00205ef6,0x002dd323,0x0027bbcc,0x000307ab,0x001236cb,0xfffe65cf,0x000984e9,0x0005cb03,0xfff7e9fc,0xffefc8f5,0xffff4f8a,
-0xffff57d0,0x00005276,0x0000e8e9,0x00018935,0x00027747,0x00041c2a,0x000321a9,0x0001fd9a,0xfffee40d,0xffef4ead,0xfffb594b,0xfff2bee5,0xfffa5b9f,0xfffed07e,0x000ca642,0x0016e47c,0x0014f887,0xffe4e0b0,0xffd3b50f,0xffea7ed4,0x0003de77,0x001ac21a,0x001b7b6d,0x00107ccd,0x0017df8d,
-0x00353e14,0x00454251,0x002cfe38,0xffea5da6,0xfffe067d,0x005fe4b3,0x003bda21,0x003a3bfc,0x0021d93a,0x00133f41,0x000754db,0xffff3bdd,0x00004c20,0xffff79fb,0xffff5ce1,0xfffeb56b,0xfffe24d9,0xfffec596,0xffff087a,0x00019248,0x0007f845,0x000c0b2c,0xfff74010,0xffe5ea8e,0xffe3ba82,
-0xffd805d5,0xffde33be,0x00001cf1,0x0037e9b2,0x006571ec,0x007854e3,0x0049a492,0x001632c5,0xffff2f6d,0xfffea462,0x00135d70,0x003fde0c,0x002a1e05,0x00469aaa,0x0087d4e1,0x00791d8b,0x000d82f1,0x002004fd,0x0008d80a,0x000261fe,0x0005b703,0xfffe6913,0xfffeaafa,0x0000d7ab,0xffffebb7,
-0x000096d9,0x0000a888,0x0000ee58,0x0000b2fd,0x000056a8,0xffff60b7,0xfffb9001,0x00008a0c,0xfffd911c,0xfff585a2,0xfff489d7,0x0011d4db,0x0025d228,0x002799d0,0xfff8d5f1,0xffc77afd,0xffa7000d,0xffbe7429,0xffff7049,0x004f1749,0x00223453,0xfffb45ee,0xffea4f23,0xffba0bb6,0xffc0e5a5,
-0xffe79bd7,0xfffe5961,0x004a7492,0x007cd1a6,0x005aa010,0x001200ec,0xffef6772,0x0007b44c,0xfffe563c,0x0000478b,0xffff6a53,0xffffb135,0xffff66b8,0xffff693a,0xffff9008,0xffffa2fd,0x0000a013,0x000102ad,0x00037edb,0x000954fc,0x00190d8b,0x001c11bc,0x0004939f,0xfffd3564,0x0000f08d,
-0x001802d6,0x0048c910,0x00879f87,0x00543fdb,0x00087aec,0xffa8a194,0xfffd19bb,0x004eac12,0x0084eb10,0x00aaba74,0x008b5032,0x001ad503,0x00270265,0xff90f723,0xff2ff19e,0xffba20f1,0xffdcce26,0xffcea89c,0x00002619,0xffff4cb8,0x00013e56,0x00004052,0x0000d9d5,0x00009244,0x0000b6d0,
-0x00007901,0x00005977,0xffffcbee,0x00002808,0xfff9ac6b,0xfffdfb8b,0x000a7d1c,0x000736db,0xffffb3c1,0xfffed386,0xfff48ab6,0xffea5cdd,0xffdbe050,0xffdb5fb0,0xffe480ae,0x0007c491,0x0016afdb,0x006fa697,0x005e22fd,0xfff91108,0xffc83a17,0xffbeaff7,0xffd92ed7,0xffd7a58a,0x0036bc06,
-0x00857ca7,0x007d9791,0x005cacb8,0x00225ce7,0x000c7ec4,0xfffb511c,0x00002bb7,0xfffe20ec,0xfffef829,0xfffeb128,0xfffefef2,0xfffef3d4,0xffffcf7d,0xffff320a,0x00000de2,0x00085eb3,0x00216c85,0x0033f34b,0x00300a4f,0x002885e9,0x00207cfd,0x0019662c,0x00136735,0x0010ff9f,0x00113287,
-0x0000b6ef,0xfff6f236,0xfff58d36,0xffe7f48e,0xffecb023,0x00027c5d,0x000ace7d,0x0007aa03,0x00067935,0x00018b08,0x00273ea0,0x002b843b,0x00121f0d,0x001131f2,0x000590cd,0x00070e80,0x0001db7f,0x000386de,0x0002c821,0x00030168,0x00024b39,0x00027c5c,0x0001e4b0,0x00014042,0x00004036,
-0x0003d5e0,0x000ba440,0x000a14c5,0x0002f4e9,0xfffc4c9a,0xfffa562d,0xfff7b807,0xfff42962,0xfff28f65,0xffecce57,0xffe5fa77,0xffea31ee,0xffe9f2bf,0xffe5a67f,0xffea7ad9,0xfff07030,0xfffab6eb,0x0000e457,0x000cfba8,0x001bbab0,0x0027380d,0xffe94b61,0xffe5edf6,0xffea0dc8,0xffe99d85,
-0xffe8ee3c,0xffeb7de9,0xfff04a92,0xfff4459f,0xfff74c43,0xfff8057a,0xfffaec3d,0xfff8e76a,0xfffac5d9,0xfffb7413,0x00000386,0x0003b714,0x0009a635,0x000c226d,0x00102ea0,0x0011e7f1,0x0010c988,0x0011642f,0x0010fc6a,0x00156248,0x0019d3d8,0x001dceca,0x00179c39,0x001209dd,0x000c188d,
-0x0006d925,0x0000b9fc,0xfffb3534,0xfff8fdab,0xfff56c81,0xffeef791,0xffebb145,0xfff980a7,0xfff60886,0xfff92f0b,0xfffb8f85,0x0001bd57,0x000270ef,0x0002d7b1,0x00051e5c,0x00068663,0x000c0742,0x00118c9e,0x00150dac,0x00182e22,0x001d315b,0x001e5c7b,0x001d602a,0x00203f5c,0x001da4f6,
-0x001cf319,0x001aa3fe,0x00195303,0x001ab946,0x001a8e2c,0x001ac059,0x0019f9e0,0x001b00f9,0x0017eca6,0x00170d79,0x0016b006,0x0016191a,0x00157576,0x00140264,0x000e133c,0x0008d037,0x00044f7e,0xffffea6e,0x001253eb,0x000ebd89,0x001925cc,0x00183c38,0x000eb212,0x00198919,0x001a754d,
-0x0014673f,0x0016e75d,0x00180cbe,0x00180c2e,0x0019c3a6,0x001a6d18,0x001aff1b,0x00244181,0x00242dc0,0x0018f9e0,0x00235db5,0x00243934,0x001c0fa7,0x001da8f5,0x001e0918,0x001e55a6,0x001eb6a5,0x001f030d,0x001f721b,0x001eac2f,0x001dbfcf,0x001c6319,0x001b3774,0x001a2ef1,0x001a337e,
-0x001899b4,0x00175be6,0x0015962a,0x0013f9be,0x0022103a,0xffe9711b,0xfff02750,0xffece1d4,0xffea0d23,0xfff44e4b,0x000a6dee,0xffe57b9f,0xfff296ad,0x00066635,0x0007a136,0x000769fe,0x0007a0db,0x00059c5d,0x00069135,0x000c9492,0xffee61c9,0xffe272a2,0x000f7f27,0xfff344c5,0xffe83636,
-0xffe795d9,0xffebbc08,0xffea1427,0xffead718,0xffe6ea38,0xffe6fc9c,0xffe9871f,0xffeb8eb8,0xffebcfa5,0xffeb3c98,0xffe88be6,0xffe89d3d,0xffeb4e45,0xffec9c37,0xffedd76a,0xffed74e4,0xffeebd75,0xfff21e07,0xffeb8955,0xfffb8e97,0xffea6fb4,0xffecf2f5,0xfff23ba2,0xfff0fe18,0xfff3563c,
-0xfff1570c,0xffeced12,0xffe776aa,0xffdd2580,0xffdeff33,0xffef48e8,0xffe75386,0xffe81a4d,0xfff18f02,0xffec2d63,0xfff9a168,0xffe3e92c,0xffe92122,0xffe47a23,0xffe1cd0f,0xffd35c20,0xffd20c87,0xffdbe32a,0xffe5aa62,0xffea6eab,0xffe7e590,0xffe194a2,0xffe1c4b8,0xffeabcab,0xffec685e,
-0xffedad2e,0xffeae637,0xffef3f39,0xfffdc0a7,0xfffa2282,0xfff2c6b1,0xffef0d6e,0xfff06982,0xfff67f30,0xfffac652,0xfffce630,0xfffd9c40,0xffffe359,0xfffd1422,0xfffc5bc8,0xfff7af2d,0xfffd5817,0xffe9a7f0,0xffdffea2,0xfff94ee9,0xffeb753f,0xffeb3056,0xffe2e543,0xffe5ad9c,0xffe2cb9e,
-0xffe2c533,0xffcacaa0,0xffcbc681,0xffdce683,0xffebe9ac,0xffed3793,0xffe3d6bb,0xffd90b73,0xffdc00ed,0xfff083b8,0xfff284fb,0xfff92a8b,0xfff4a5fd,0xfffdf11b,0xfffc6bb6,0xfff6f0d1,0xfff25a04,0xffecbac3,0xfff04ddb,0xfffcff93,0x000123e2,0x0000d5ce,0x0000d4ff,0x0000e846,0x00016162,
-0x000346a0,0x0002b416,0x0002412d,0x00030d43,0xfff3b36e,0xfff8b344,0xffed5c28,0xffee827c,0xffe69913,0xffe6b2cf,0xffddf1c2,0xffccb0a3,0xff9aca98,0xff8fb960,0xffb26857,0xffd804b4,0xffec8682,0xffdcca18,0xffcf957d,0xffd43a70,0xfff50ff9,0xfff604d8,0xfff3604f,0xffe40630,0xfff2e7b5,
-0x00324f25,0x0012e299,0x001b08e6,0x000faa13,0x000b5158,0x0002841f,0xffff5e44,0xffffaf3c,0xffff8c44,0xffff78b7,0xffff3ab8,0xfffe47b6,0xfffef27b,0xfffe53aa,0x0000ac13,0x0003efa3,0x000b35ef,0xfff33af5,0xffdbad90,0xffcbe4b6,0xffbd6381,0xffd29259,0x00028f11,0x003fbcfc,0x006ba4a0,
-0x00794ffe,0x003e2a37,0x00059a00,0xffebd42c,0xffe107bf,0xffe48e3f,0xfffb134b,0xfff14b5e,0x00161d73,0x00627641,0x004ad27f,0x0011e1ef,0x001538d9,0xfff93565,0xfffd1b1c,0x000021d1,0xfffee44a,0xffffaf20,0x0000b4e0,0x0000176c,0x00007492,0x000079ec,0x0000d558,0x0000b9b3,0x000096e5,
-0x00000477,0xfffd1aff,0xfffd6218,0xfffcf8fa,0xfff8f4d1,0xffe83e69,0xfff0b5b1,0xfff0dd76,0xffdf73a5,0xffc72f4a,0xffa8c86a,0xff98e1c2,0xffc2f9dd,0x00052735,0x0049715f,0x0019e8ec,0xffef037c,0xffda2512,0xffa4fd70,0xffb1d029,0xffead3c6,0xfffccf7f,0x0038d2fd,0x006e9d48,0x005fd15f,
-0x0011b532,0xfff34421,0x00074c45,0xfffd575b,0x00008701,0xffff3e41,0xffffcdc6,0xffff7734,0xffff7dc7,0xffff7328,0xffffa797,0xfffff5b6,0x000132c2,0x00027b3c,0x0000b8f6,0x00053de1,0x000c51ea,0x000392dd,0x0000e7f2,0x0005084d,0x000b1784,0x0022ee67,0x0047dca0,0x00099de3,0xffcc7619,
-0xff8ea915,0xffe767c6,0x001c9d55,0x001653a0,0x0030d051,0x0011cb77,0xffa846f2,0xfffd7518,0xff645460,0xff0719e6,0xffb0a4ed,0xffe2e209,0xffe32b19,0x0001defb,0xffff8d21,0x00014eaa,0x00004b0a,0x0000cab5,0x00007f46,0x0000b86a,0x00007bd6,0x00009148,0xffffb4d0,0x0000c635,0xfff9f319,
-0xfff78afc,0xfffeed96,0xfff9f132,0xffea1b0f,0xffde4e14,0xffcfcb9b,0xffc6e155,0xffc02735,0xffca04e6,0xffcc30a5,0xfff14898,0x0009ccb9,0x0059152a,0x003b0616,0xffc416a4,0xff78deeb,0xff600210,0xff6396e2,0xff938532,0xffcd522e,0x003c47f9,0x0062366d,0x003c2d99,0x0018e3c4,0x00049e49,
-0xfffc73f2,0xffff87b8,0xfffe523b,0xfffefd17,0xfffedbbc,0xfffeea1f,0xffff0494,0xffff62a0,0xffff9ee5,0xffff9edc,0x0004a498,0x001626ef,0x00250e65,0x00255aeb,0x002584a7,0x00214efd,0x00194ca4,0x000cb73c,0xffff42e9,0xffee9eaa,0xffdb8ca6,0xffca0361,0xffbaaabd,0xffbacf54,0xffbeb9f7,
-0xffc90b0c,0xffb9e7f6,0xffa95e65,0xffa5fe5b,0xff9b9498,0x000abacd,0x000f7bf6,0x00142e09,0x0009de3c,0x0005865f,0x00054f21,0x000310bf,0x00038e13,0x00029c36,0x00028e4c,0x0001f69b,0x00027931,0x0001ab49,0x0001cb1b,0x000069f7,0x00012eb1,0x0005c210,0x0009619a,0x00066719,0x0001e955,
-0xfff98c24,0xffefdbc9,0xffe976a8,0xffdfde2a,0xffd7f92c,0xffd0d7be,0xffd90cef,0xffe0bd63,0xffe5b42e,0xffe51139,0xffe04580,0xffd8d818,0xffec1196,0xfffaeeff,0x0006fd4f,0x000f745e,0xffdf7efe,0xffdd6aa6,0xffde547a,0xffdefebe,0xffe30b20,0xffe7b3c0,0xffef804a,0xfff5a01a,0xfff96168,
-0xfffb24f8,0xfffbfd41,0xfffaa829,0xfffc5400,0xfffad935,0xfffd6824,0xffff34c2,0x00043769,0x0005a4fd,0x0006c2b6,0x000819be,0x000898d4,0x000a16e4,0x000b4e26,0x000e70c3,0x0011aa0e,0x00148b7b,0x000892e0,0xfffc6062,0xfff0cb93,0xffea6674,0xffe637b1,0xffe00ada,0xffe2a8c7,0xffe1f58f,
-0xffe08fb3,0xffdec2fb,0xffebd80c,0xffe5f605,0xfff68519,0xffef6a50,0xfff56204,0xfff86b2d,0xfff67895,0xfff83e7d,0xfff7d44b,0xfff9ffdb,0xfffeb565,0x0000beb3,0x0005683b,0x00098b6d,0x000ffa10,0x001285f4,0x00113150,0x0015482b,0x001a4999,0x0019c1c8,0x001bc54c,0x001b081d,0x001af845,
-0x001af90a,0x001a5310,0x001c0c91,0x0016a5a5,0x00133505,0x000e8b26,0x000927f2,0x000244cd,0xfffa93ab,0xfff765ac,0xfff42e47,0xfff2200d,0xffeeef8e,0x00063fa6,0x00028d29,0x0004ebaa,0x000b515f,0x0019731f,0x000367af,0x000c2ff4,0x00193271,0x001c2f89,0x001e2136,0x001ff13a,0x0021dae4,
-0x0023c213,0x0025747f,0x0013dff9,0x000dd6bb,0x002490e9,0x00164f82,0x00124871,0x0015610d,0x0015e45f,0x00160f24,0x0016c7ca,0x00172023,0x00176c49,0x00183c13,0x0015476b,0x0012c54c,0x001029ce,0x000d916a,0x000b85b3,0x000910ef,0x0009342c,0x00086873,0x000752ea,0x00062db9,0x0013d7d9,
-0x00050736,0x0006d130,0x000cbd1c,0x0001a691,0xfff1c3a4,0xffdd7041,0x000540b5,0xfff4fff4,0xffe51b3e,0xffe3e1af,0xffe3a8af,0xffe342a4,0xffdf0c52,0xffddf045,0xffe2904d,0xffefb754,0xffff77b8,0xffde6117,0xfff0f9bb,0xfffe1901,0x0006efec,0x000407b4,0x000629bd,0x0006bcb6,0x000378f8,
-0x0003d3db,0x00066133,0x00088450,0x0008cf7a,0x00072b77,0x0007298a,0x00083a94,0x000bc119,0x000c0883,0x000af5e6,0x0003e3f2,0x00086003,0x000916d5,0x000dedd1,0xffee091f,0x00038a4d,0xfff91753,0xfff84f0e,0xffffef78,0x0002aa52,0x00055ad7,0x000254bd,0xfffa7ba3,0xfff3664f,0xfff1fdf0,
-0x00013b2a,0xffedf972,0xfff14224,0x0002bdee,0xfffbb63f,0xffea8719,0x00024269,0x00070c60,0x0006c8d4,0x0005a2a7,0xfff8b4e4,0xfff7af41,0x0000c580,0x000aa84a,0x000f0235,0x000a5e6b,0x000a685c,0x000d79d3,0x0017149e,0x0016351d,0x00106edc,0xfffdbd24,0x0007bc2e,0x00140f09,0x0015594f,
-0x0004c551,0xffffa5d7,0xfff52eb6,0xfffb2d88,0xfffd86d8,0x00007f09,0xfffd08b1,0xfffeffd2,0xfffe0bad,0xffffa932,0xfff84049,0x0000ec7c,0xffef5478,0xffea9c6c,0xfffdd1d8,0xfff4b456,0xfff355f6,0xfff6e241,0x00098ad1,0x0008f0a9,0x000e4897,0xfff91231,0xfffb2e65,0x000b9c98,0x0019fd48,
-0x001bbf10,0x000e3192,0x0010e2c9,0x0019993c,0x002f75d8,0x002b9c9e,0x00230270,0x00015d19,0x0014d4e9,0x000d3661,0x000d2ec0,0xfffefb20,0xfffbac64,0xfff68c8e,0x00004879,0x0000637d,0x000034e6,0x0000b43f,0x0000b9f9,0x000089a0,0x00012191,0x0002818d,0x00013e88,0x0004055b,0xfffa595a,
-0xfff91354,0xfff4f9a4,0xffed614a,0xfff54408,0x000d29a9,0x000cb3f8,0x000694fa,0xffd9bb22,0xffd19593,0xfff0a6c0,0x00146101,0x00236406,0x000caff7,0x0013cd3e,0x00219deb,0x0042c908,0x0037b22f,0x001bc9ae,0xffe4a0c6,0xffff7072,0x005d967b,0x002d374b,0x001fa592,0x0010e2e9,0x0003f28c,
-0x00007df5,0xffffb35b,0xffffd322,0xffffb3e0,0xffff9af3,0xffffbfa3,0xffff430a,0xffff16b7,0xfffecdf0,0xffff62c9,0x0001c753,0x0009b4bd,0x0003c2e7,0xffe7583d,0xffe7194d,0xfff3834d,0xfffb3a06,0x002548f4,0x0058e4e3,0x007be91c,0x0077d087,0x0053359a,0x002c2297,0x0022bf0f,0x001f7d80,
-0x002e85e9,0x00513d1e,0x003fcc71,0x005718e8,0x008c06c3,0x00709454,0x00208611,0x0027c22e,0x000c7440,0x000a6412,0x000316ca,0xfffec101,0x00005590,0x00004930,0x00002690,0x00004e0f,0x000030a5,0x00006bc5,0x000088f0,0x00009a7d,0x00006958,0xfffea9e2,0xfffd113f,0x0000e60d,0xfff7291d,
-0xfff6912c,0x0013d739,0x001c4cc0,0x001eb5a6,0xfff22989,0xffc779ae,0xffb05010,0xffd4f7d3,0x00114a26,0x004fa440,0x0026029d,0xfffc42ac,0xffdde7c6,0xffbf7379,0xffcdefdf,0xfff470e3,0x000dc385,0x00478cd3,0x006edbda,0x0055df03,0x000d9f27,0xfff51539,0x000550ce,0xfffd7470,0x000094b3,
-0xffff501b,0xffffe244,0xffffa931,0xffffb7c2,0xffff805b,0xffffa9b2,0xffff813f,0x0000d236,0x0000d6f9,0x000614a6,0x000ccd23,0x001aeb98,0x00153dad,0x000eb77f,0x0014966a,0x003cebc0,0x006c2534,0x009560e3,0x0053e015,0x000b7cea,0xffbf9289,0x002637ba,0x00769fb8,0x0087e326,0x00ad0872,
-0x007d9d5d,0x00047e4d,0x001e2203,0xffab7b46,0xfefc7092,0xffad8924,0xfff70a95,0xffeff936,0x00036f2b,0xffff9611,0x0001246e,0x000048ef,0x0000a0d9,0x000056fa,0x00008599,0x0000825d,0x0000ae30,0x00000c48,0x0001229d,0xfffc8ef3,0xfff8f385,0xfff81790,0xfff9c1b2,0xfffb3b13,0xfffc25e3,
-0xfff61bd5,0xffeb4442,0xffddd3b2,0xffde624c,0xffe285ec,0x000a857e,0x002aa280,0x00671265,0x0041c901,0xffcb563c,0xffd053e7,0xffe92977,0x000b737d,0x00024896,0x0028aa5c,0x0049985c,0x0031a22b,0x002980a8,0x0012fe1f,0xfffe145b,0xfffdd442,0xffff4391,0xfffe96c0,0xffff2d4f,0xffff2132,
-0xffff2a82,0xfffef422,0xfffef086,0xffff8a78,0xfffe445a,0x000239ac,0x0015db23,0x0024a22d,0x002f58e5,0x002bd158,0x00226f98,0x001d52c8,0x0010c94a,0x000bd2b6,0x000a53fb,0xfffe3d51,0xfff3bfec,0xfff0a280,0xffea9678,0xfff78fab,0x0012cd35,0x000e78c2,0x00009514,0xfffe5b63,0xfffb4348,
-0x00335a18,0x002ff028,0x000ef9fb,0x00117d89,0x0008c18f,0x0007c085,0x00029350,0x0002dd19,0x000272c9,0x0001f294,0x0001b0cb,0x0001c7d5,0x00023351,0x000246e6,0x00015a37,0x000236fc,0x00088d90,0x000cb868,0x000a92e9,0x000476d6,0x0003e78b,0x0000a8ba,0xfffa7f86,0xfff4ef56,0xffec5264,
-0xffe1ef47,0xffe6f8c0,0xffe6d294,0xffe1cf2d,0xffe6eeef,0xfff0d847,0x0007b552,0x000f429b,0x001d0143,0x00294f45,0x00323911,0xfff5aaf5,0xffedef3b,0xffea3710,0xffed4b93,0xffe85b49,0xffeecc26,0xfff45aa0,0xfff98ab5,0xfffa6863,0xfffbf8c0,0xfffc3d8f,0xfffc072e,0xfffa6f51,0xfffa7ea1,
-0xfffacf30,0xfffe2365,0x00017f0c,0x0004b14f,0x0008ebec,0x00111aca,0x0010233c,0x000d3a67,0x000b8a67,0x000cfdad,0x000ed450,0x000f9e64,0x000be0d5,0x0008294d,0x00047f4e,0x0003fb58,0x00020298,0xffffd512,0xfffe072b,0xfffb6b4c,0xfff7ae6b,0xfff3d132,0xfff4f19e,0xffefcc8b,0xffe73998,
-0xfff3d6aa,0xfff52d09,0xfff5f14e,0xfff8b21f,0xfffa0614,0xfffd3239,0x000066f4,0x000275c7,0x000704c6,0x000ada6c,0x000e9c3e,0x00109750,0x0012e474,0x0018bf2b,0x001a52fd,0x00185890,0x001cd3dd,0x001a226c,0x001b4c9a,0x001b129b,0x001ae9de,0x001a3530,0x001ac76a,0x0018c37a,0x00185ead,
-0x0017f947,0x00169faa,0x001524d3,0x0013a705,0x000d3d37,0x000746d0,0x00024319,0xfffc1c5b,0x001023cf,0x000f0577,0x000eccb0,0x0008802c,0x00001009,0x00117cf6,0x000b2231,0x00048b00,0x00062601,0x000751a2,0x0008623d,0x00091a0b,0x00096332,0x0009d78f,0x00144dde,0x001bb173,0x000b3d3a,
-0x0015c611,0x001c40cf,0x001cf7ff,0x001caf0f,0x001d45fb,0x001d4f4a,0x001d961b,0x001dbff2,0x001dfb3f,0x001d2cb5,0x001c3039,0x001b099f,0x001a3467,0x001980e6,0x0019a64f,0x0017943c,0x0015f4c4,0x0013ce0a,0x00123b2d,0x00209947,0xffe8e67d,0xffef3ea7,0xffe73799,0xfff7ce5e,0x0005bcd5,
-0x0010ae14,0xffef3fb9,0x00027fb5,0x00110832,0x0010fd9a,0x000fb1de,0x000eabb0,0x000c08f7,0x000cf9c1,0x001259b8,0xffffba2a,0xffeeb728,0x0013bd79,0x0002fa83,0xfff5d5b7,0xffe39fcd,0xffeaf0a0,0xffe9063d,0xffe8bb04,0xffe5b9a5,0xffe64867,0xffe98dae,0xffec2173,0xffec1f50,0xffe8998b,
-0xffe9273f,0xffea0521,0xffed95ba,0xffed930e,0xffedfe8d,0xffec43f9,0xffeddf49,0xffeef460,0xffeb98dd,0x000ae056,0xffed5a25,0xfff6f074,0xfff752be,0xfff3e50c,0xfffbaeb5,0xfff45b97,0xfff3bec7,0xfff28efc,0xffe6b994,0xffe5aa1a,0xfff2ff77,0xffec8daf,0xffed34c5,0xfff7f70e,0xffef9670,
-0x000388eb,0xffe4dadf,0xffe5c0b9,0xffe2ce00,0xffdcc202,0xffd0bfa5,0xffd10f21,0xffdcffe6,0xffe8daac,0xffec6dac,0xffe2ab0a,0xffe42849,0xffe760bf,0xfff240a0,0xfff0e7c4,0xffefafff,0xffe990d1,0xffef1435,0xfff64f4b,0xfff6a3a9,0xfffe7123,0xfff51e7e,0xfff7d78d,0xfff880a9,0xfffe2e29,
-0x00020e5c,0x00011474,0x000188aa,0x00023fb0,0x00024dbc,0xffff4f92,0x0001d844,0xfff5d20c,0xffe9c00d,0xfffa41fb,0xffefcc9c,0xfff2fa46,0xffe3f7e6,0xffe16ae0,0xffe09098,0xffdbd1df,0xffc81d89,0xffcba5bd,0xffe1899e,0xfff20c43,0xfff25797,0xffda7488,0xffe059a8,0xffe79cfc,0xffff1f10,
-0xfffb68fa,0xfffc3f74,0xffef5268,0xfffc0811,0xfff300ee,0xfff592d9,0xfffdaf68,0xfff2b67a,0xfff7e50b,0xffff86f8,0x00013e63,0xffff3877,0xffffba8c,0xffffb26a,0xffff52c5,0x00000426,0x0000b04e,0xffffb3dc,0x000523a7,0xfffc605f,0xfffc89dc,0xffed82b1,0xfff1eb99,0xffe2268a,0xffde055f,
-0xffd76d39,0xffbed784,0xff945937,0xff916459,0xffbc13f2,0xffe632f7,0xfff16d92,0xffcb9d4a,0xffd6b93d,0xffe871a1,0x000cd476,0x00046b7e,0xfff7af09,0xffde2b9c,0xfff2f079,0x0015b3c4,0x000f9512,0x00213437,0x000bdf95,0x00053070,0xffffe85b,0xffffcf54,0x00000494,0x00003963,0x00000409,
-0x0000508c,0xffffae29,0x000005a8,0xffff15c2,0xffff84be,0xffff0ccb,0x000a2de0,0xfffc6d46,0xffeee9fa,0xffdbeeec,0xffc87a3b,0xffe00959,0x00056458,0x004cd398,0x006b11c8,0x005c34e2,0x0029fd9f,0xffff1bb7,0xfff5f9f8,0xffec6d94,0xfff03234,0x000644fd,0x0003c57e,0x001fbcdf,0x005623c7,
-0x003347af,0x000e387b,0x001161b1,0x0009aa1f,0x00050c7d,0xffffb6a2,0xffff17d9,0x000077d5,0x0000047e,0xfffff568,0xfffffe35,0xfffff495,0x00001896,0x00003c95,0x00003180,0x0000e45b,0xffff104a,0xfffd9f4c,0xffffd320,0x00037afd,0xfff29680,0xfff20c4d,0xfff10ffb,0xffdb026a,0xffc4230b,
-0xffb00310,0xffb2174a,0xffe52e05,0x001b48af,0x00432085,0x0019a6f1,0xfff3295b,0xffdaf126,0xffc02330,0xffd2e651,0x0002eaa5,0x000fa9ac,0x003db77b,0x00670e3f,0x00592f99,0x000b2f7b,0xfffacc58,0x000300f5,0xfffe59aa,0x000059b8,0xffffb5f2,0x00000817,0xffffef26,0xffffd985,0xffffda82,
-0xffff8eaf,0xfffff1c7,0xffff49f3,0x00035714,0xfffde13e,0x0005d85f,0x000c55b2,0x0006a6f2,0x000f84ad,0x0013cd97,0x0023119f,0x003198ad,0x003d38d1,0xfff3227a,0xffba2dde,0xff9471fd,0xffede94e,0x00240bfd,0x001af68a,0x003a196c,0x00140386,0xffac8ba5,0xffff84e2,0xff8ea45f,0xff020dc6,
-0xffb11635,0xfff67091,0xfffbc85d,0x0000bfef,0x0000b57d,0x000056bb,0x000040b0,0x00002310,0x000023e8,0x00003bb8,0x00005979,0x00006b32,0x00006a9b,0x00005398,0xffffb1fc,0xfff50515,0xfff87faf,0xffee114d,0xffddc57a,0xffd8423a,0xffccf2a1,0xffc83e8b,0xffc4cd6e,0xffd08b72,0xffd47af5,
-0xffff4470,0x0029d455,0x0053b390,0x0021f18f,0xff9b9781,0xff95c240,0xff9f942f,0xffa3d87d,0xffd12bcf,0xffd0fee6,0x0017a040,0x0031ef0b,0x0015fe3b,0x000e5329,0xfffad12e,0xffffdf8a,0xfffec99c,0xffffa6cf,0xffff9ee5,0xffffc4d6,0xffff7b2f,0xffff6666,0xffff1d16,0xffff699b,0xfffefd71,
-0xffff718c,0x000e53b3,0x0023924e,0x002439f7,0x0023549e,0x00217d3a,0x0016b8e7,0x0009b934,0xfffd1867,0xfff071dd,0xffe36bf6,0xffd4ce35,0xffc92572,0xffc727d1,0xffcfd57a,0xffdb4292,0xffccda7c,0xffba6e03,0xffae046d,0xffb46138,0x0014df1b,0x00222a00,0x002424cb,0x00131ff2,0x000c7c9b,
-0x0004e813,0x0002773b,0x0001be9b,0x0000f6ca,0x00009636,0x0000602a,0x00010972,0x000128da,0x0001cf7c,0x00018585,0x0001a145,0x000529d3,0x000c5349,0x000c4335,0x00087bc9,0xfffd734f,0xfff3843f,0xffeb9ed9,0xffe577d3,0xffdddf3b,0xffd3caef,0xffda2b93,0xffde02fc,0xffdf47f1,0xffdf4cbe,
-0xffdc7449,0xffdc57fc,0xffebff13,0xffff0903,0x000d8280,0x001aa04e,0xffe624f4,0xffe88aa7,0xffed357b,0xffebb879,0xffef0d0e,0xfff2a0d2,0xfff7e9a0,0xfffd25de,0xfffe9015,0xffffa3e7,0x000019c0,0xfffe6e77,0xfffddf18,0xfffc51a8,0xfffb2fdc,0xfffb193e,0xffff0750,0x0000c7a4,0x0005ce09,
-0x0005dc0b,0x0000d2a4,0x0002c216,0x00019628,0x0002699b,0x0002e91b,0x000345a4,0xfffbf123,0xfff4d17d,0xffeea179,0xffeb6440,0xffe9af0e,0xffe549d4,0xffe8929b,0xffe83fbc,0xffe69998,0xffe65ebf,0xffe9b098,0xffe4ded0,0xfff3d881,0xffead091,0xfff16ab7,0xfff34f8e,0xfff05f05,0xfff1f951,
-0xfff180c2,0xfff4ce5b,0xfff94085,0xfffa97eb,0xfffd31fb,0x0000e3dc,0x0008e27a,0x000bea02,0x000ca563,0x001023df,0x001a797c,0x00157d85,0x0016691c,0x0015e917,0x00155ed6,0x00154f53,0x0014bd07,0x0015d5a9,0x000ff157,0x000bd941,0x00074aa5,0x000219c8,0xfffc35a0,0xfff61fb1,0xfff33aa5,
-0xfff10398,0xffefeedf,0xffed4e03,0x0000976d,0xfffcad46,0x00071cd2,0x000f1e15,0x0017c0a6,0x00036ee9,0x000f60cd,0x00182ede,0x001af4c1,0x001c757a,0x001de2c4,0x00201f53,0x00228d1b,0x0023fa92,0x00183470,0x000d93df,0x0024fc1d,0x001a7960,0x0013285d,0x000cdbf9,0x000f02eb,0x000ea393,
-0x000f0cf4,0x000f203a,0x000f14bd,0x000fa340,0x000d03f2,0x000ae218,0x00089949,0x0006898e,0x0004dd99,0x0002e43f,0x000318d3,0x00024b6b,0x0001123f,0x0000417a,0x000c4a17,0xfffda03f,0x00004741,0x00063837,0xfff0fa1d,0xffe4def0,0xffe1d59b,0xfff60ca5,0xffe88e45,0xffe7524a,0xffe4870c,
-0xffe4694c,0xffe52474,0xffe0877e,0xffe038ed,0xffe63f6c,0xffe5001d,0xfff1b20c,0xffe32bb2,0xffe50f75,0xffee735e,0x000128fe,0xfffd2285,0xfffe45d0,0xfffdd206,0xfffba2ac,0xfffc2772,0xfffe8bc2,0x00014849,0x00015b0b,0xfffd5cbf,0xffff4538,0x00007c6e,0x0004bfb6,0x000286ea,0x00016e32,
-0xfffcb2ec,0x0000f821,0x00038bc7,0x0001988d,0xffe54549,0xfffb4927,0xfff20db5,0xfff1cd06,0xfffa38d2,0x0001050a,0x00014ab4,0xfffcef05,0xfff7d8bf,0xfff16015,0xfff0495c,0xfffa4c90,0xffea43a7,0xffed119f,0xfff8864f,0xfff6335b,0xffe47ca4,0xfff77289,0xfffdfe54,0xfff99c4b,0xfff69612,
-0xffed5dd0,0xffeed05f,0xfff836a3,0x0003d412,0x00060754,0xfffa5467,0xfffeff19,0x0002905f,0x000d61f2,0x00062127,0x0001301a,0xfff5e9e7,0xffff6110,0x000efa92,0x00079c71,0xfff62413,0xfff7bc3d,0xfff25964,0xfff85682,0xfffd7db3,0x00018b1f,0xfffe8495,0x00014a40,0x0000fb75,0x00039569,
-0x00003b8d,0x0002643a,0xfff854ad,0xfff0b1a8,0xfff83dfd,0xfff1bae1,0xffeac9f6,0xffedae21,0x000041d6,0xfffa193a,0xfff9cbe7,0xffe9fca1,0xffee3ba9,0xfffe2bf2,0x000faf55,0x000fc5e5,0xfff68b51,0x0002ed95,0x000acc64,0x0023edc7,0x001284ca,0x000cb6e8,0xfff88c9f,0x0009ce7d,0x000c7fa6,
-0x0000ad7f,0xfff36b48,0xfff97bed,0xfff9c8b3,0x000237e4,0x0000d546,0xffffcca4,0x00002507,0xffffc9d7,0xffff6b4e,0xffff1140,0xffffeff5,0xffff9954,0x0003fab0,0x00014de5,0xfffa6d21,0xfff63df4,0xffe7839c,0xffea7fb9,0xfffde05a,0xfff15b5a,0xffe21fc8,0xffc01fcf,0xffc15275,0xffe41c55,
-0x000cc1fb,0x0012b304,0xffe99187,0xfffc25d2,0x000df020,0x00318347,0x00139206,0xfffcc809,0xffdec86e,0xfff86f88,0x00410b79,0x001724c8,0x00086204,0x0005ffde,0xfffe51c6,0x0000c633,0xfffeff4f,0x000038dc,0xffffe7d2,0x000017b9,0x00004720,0x00004cfc,0x00001dc8,0xffffd93c,0xfffe6380,
-0xffffa5cf,0x0003a3cb,0x0007f0f7,0xffeac4cf,0xffe55a99,0xfff9dd76,0x0008245c,0x00352ec9,0x00664bd0,0x007eb768,0x006b7acc,0x004c66c6,0x002ff9a9,0x002d2d5a,0x002634e8,0x00290e9d,0x00364058,0x003272ea,0x00494057,0x00762f96,0x004e0732,0x002e9ba3,0x0021d224,0x0006e435,0x00096125,
-0xfffefdff,0x000088eb,0x00001160,0x00003f42,0xffffe62c,0x00000b36,0xffffd50c,0xffffedf6,0xffffe3bf,0x000053c2,0x00007616,0x0000da8c,0xfffc89ac,0x0001b462,0xfffdbaf1,0xfff9a522,0x00085352,0x0001abee,0xfff9e490,0xffd8dcb3,0xffbff1e5,0xffbb92d1,0xffe91af7,0x0019358c,0x003bf7c8,
-0x001c065c,0xfff654a8,0xffd4e6c0,0xffc58e7a,0xffda9b3d,0x000867a8,0x001ef57a,0x00368041,0x006148b7,0x004c8e94,0x000940ba,0xfffaa78a,0x00021931,0xfffe983b,0x00005021,0xffffc46c,0x00001576,0xfffffe79,0x00000dfe,0xffffef34,0xffffd538,0xffff72aa,0xffffe7a5,0x00009766,0x00021d8e,
-0x00005d3f,0x001168dd,0x00192fa8,0x0018afa0,0x001ec63f,0x00444217,0x005df3d0,0x0063d777,0x002126c2,0xffea45b3,0xffc1868b,0x00256871,0x0062e27b,0x0053d3e2,0x006af7a4,0x00371f4e,0xffccd749,0x000319c7,0xffb1a403,0xff084534,0xffafeea4,0x00001046,0xfffeb63b,0x00012f2c,0x000072b2,
-0x00004e45,0x000013f3,0x000008f4,0x0000047c,0x00000cb2,0x00001ddc,0x00005a73,0x00007526,0x000076eb,0x00005d1c,0xfff8a5b9,0xffede852,0xffebab37,0xffec3acb,0xffea20af,0xffe40781,0xffdb290e,0xffd33fb8,0xffd84cd0,0xffdb1e40,0x00047b3b,0x003391ff,0x004650f5,0x0015cc7d,0xffac8c15,
-0xffc7a9d9,0xffe79382,0xfff91c94,0xfffcf512,0xfffad0dc,0xfff3a6e4,0xfff3acd0,0x0003b918,0x000622d9,0xfffb7b30,0xffffff28,0xffff080a,0xffffffa6,0xffffdd4b,0xfffff459,0xffffd7a1,0xffffc059,0xffff561e,0xffff3585,0xffff1b67,0xfffe7976,0x000a912f,0x0016c34f,0x0024d546,0x00247042,
-0x001d64ea,0x0019174a,0x0009c0f5,0x0000c279,0xfff9ca75,0xfff1bfcd,0xffe63d6b,0xffe0813d,0xffe2e277,0xfff194d7,0x000576d0,0xfff81629,0xffe5c2e0,0xffde8116,0xffe3c3ff,0x002a5e92,0x002587a2,0x0012596d,0x000f29a5,0x0009153a,0x00039077,0x000275c0,0x0000e570,0x00005ee7,0xfffffaf2,
-0x000027be,0x00003c69,0x00008c53,0x000130df,0x0001f56b,0x0001939a,0x0003b2d7,0x000bcfe8,0x000e14e9,0x000af40a,0x000827dd,0x0002503f,0xfffaa7e6,0xfff3a679,0xffeaca74,0xffdf4522,0xffe40516,0xffe59a6f,0xffe36767,0xffe6c884,0xffed8a1b,0x0000dd59,0x000a3feb,0x00185b43,0x0021e66f,
-0x00293432,0xfff8faa0,0xfff1ea20,0xffeb5eb7,0xffefc9d6,0xffed4cc0,0xfff4e30c,0xfffa311c,0xffff2246,0xffffabdf,0x0000efda,0x00001426,0x00000c2f,0xfffef3a6,0xfffe1695,0xfffac915,0xfffb0a7c,0xfffc252f,0xfffd7490,0xfffed0c6,0x00083407,0x00082e07,0x0004a4fc,0x00032c44,0x0002416f,
-0x0001fdae,0x0000bb0e,0xfffe7fe2,0xfffb92e0,0xfff9437f,0xfffa824b,0xfffb1fb0,0xfffa7c8e,0xfffa3d6a,0xfff8db08,0xfff806db,0xfff55039,0xfff1e1be,0xffec6a08,0xffe4af21,0xffefffd3,0xffee8fe7,0xffefb09c,0xfff2748b,0xfff377a8,0xfff68185,0xfff7946b,0xfff88daa,0xfffb995b,0xfffe5030,
-0x00008d51,0x0003b614,0x00080efd,0x000cf28c,0x00123a77,0x0012810c,0x001a032f,0x0017aa49,0x0017655f,0x0016dd0a,0x00160599,0x0015131e,0x0014dc04,0x00131b8c,0x00122c02,0x0010a864,0x000dff76,0x000af973,0x00083e9a,0x0003ced2,0xffff8dbf,0xfffc1a21,0xfff6e43e,0x00078959,0x000797f2,
-0x00012b94,0xfffc4b4c,0xfffc8a11,0x0003cda1,0xfffe506d,0xfffdbd8f,0xfffea8da,0xffffe480,0x00016988,0x0002267f,0x00031682,0x00041248,0x0005aa4e,0x000c5e18,0x000706f1,0x0008b356,0x000e77ca,0x00156c2f,0x0013e9de,0x0014525f,0x00142ddc,0x00143e7f,0x0014390d,0x0014459c,0x00130a7a,
-0x0011c73c,0x00109973,0x000fb84a,0x000f025b,0x000e83ba,0x000d1bc1,0x000bbc53,0x000a0d0c,0x0008eb89,0x00140c08,0xfff45318,0xfff8753e,0xfff2e5ff,0x00038468,0x0007f7a7,0x00010e02,0xfffd7dc8,0x00061d57,0x000732a1,0x000591e6,0x00041ae6,0x0002dc27,0xffff041a,0xfffeea6a,0x00030d95,
-0x0003e779,0xfffd41db,0x0001fdb0,0x00057b6f,0x00017136,0xfff03681,0xfff4e915,0xfff4413a,0xfff322a3,0xfff1b2ef,0xfff28c0e,0xfff57e7a,0xfff8008d,0xfff7b670,0xfff27ee3,0xfff59e33,0xfff73768,0xfffb88b2,0xfffa1c6e,0xfff97ff7,0xfff5d4c5,0xfff86090,0xfff8657a,0xfff8c240,0x00076af8,
-0xfff7cb4e,0xfffda6fd,0xfffa18fe,0xfffa15f7,0x0003a19b,0xfffcfdf3,0xfffd872c,0xfffcfe6f,0xfff5aa3b,0xfff2f641,0xfffac008,0xfff1cf7a,0xfff23394,0xfffea2ba,0xfff79ab4,0x0000c8b4,0xfff1fb90,0xfff0c106,0xffef58fa,0xffe8750d,0xffe12f15,0xffe2cde9,0xffed44a0,0xfff8a5c5,0xfffa7846,
-0xffecc2c7,0xfff452ae,0xfff9d41a,0x0005ab39,0x00015991,0xfffd5b21,0xfff30e0f,0xfff9f1fc,0xfffefe7a,0xfffe5cf7,0x000620dc,0xfffc8488,0xfffac4e0,0xfffb97d8,0x00002d2f,0x0000fc07,0x0000253f,0x000098ba,0x0000cb5c,0x0002333c,0x0001745a,0x000217a1,0xfffe92bf,0xfff5f095,0xfffb3633,
-0xfff5a4ff,0xfff998fb,0xffee5971,0xffeeb777,0xffee57f8,0xffe840a8,0xffdcd703,0xffe1fd88,0xfff56642,0x000486f6,0x00032ecf,0xffe4b6e2,0xfff70de6,0x0001522b,0x001a4a2e,0x001009ef,0x000b0db1,0xfff66d6a,0x0005607e,0xfffb4e0c,0xfffc3265,0x00027fc6,0xfff956b1,0xfffd514f,0x0001464e,
-0x000053d1,0xffff5fb7,0xfffffe23,0xffffd391,0xffffa15c,0xffff49de,0xffffbf3b,0xfffeeb60,0x00021959,0x000169c6,0xfffeeed0,0xfff38c00,0xfff44e7b,0xffe8a191,0xffe93115,0xffe3ed19,0xffcc3ac3,0xffb1322e,0xffb50274,0xffdad25a,0x000171a1,0x0003620c,0xffd3b7e3,0xfff00035,0x00094d33,
-0x002e7436,0x001c71d5,0x0006693c,0xffe51325,0xfffc6150,0x001913f7,0x001b337c,0x001fc597,0x000808d5,0x00015597,0xffff7240,0xffffdaea,0x00003a99,0x00000fd7,0x000009da,0x000039a3,0x00003218,0x00004443,0x00001912,0xffff89f3,0xfffe574c,0x00038332,0x0003dd8d,0xfffc6ac4,0xfff0de8b,
-0xffe937c8,0xfffcb546,0x00186d3b,0x005782f0,0x0067eb2e,0x004767c9,0x00260c32,0x000c9e26,0x000e0c38,0x000c4172,0x00111b7b,0x001fa96f,0x00241719,0x0037e7e7,0x005acbd3,0x00329040,0x000e8434,0x0014997c,0x0015389a,0x0005299f,0xfffe67e1,0x000088b3,0xfffffda0,0xfffffa27,0xffffe8c7,
-0xfffffcbc,0xffffe4a6,0xffffe5d4,0xffffed14,0xffffee23,0x00006a41,0x00009902,0xfffe44ec,0x00002281,0x0007929c,0xfffe3afe,0xfffa94f1,0xfff6f5b5,0xffe43874,0xffc85940,0xffba5697,0xffc65b0a,0xfff59055,0x001d0ec3,0x002eb5b0,0x001531d3,0xfff9d294,0xffe2a9f3,0xffdc8296,0xffee767e,
-0x000e8717,0x0019f649,0x00318779,0x005562b2,0x004619bf,0x00045655,0xfffd3641,0x000112cd,0xffff45c9,0x00004d6d,0xfffff232,0x0000140a,0x00000c71,0x000004b9,0x000012b8,0xffffcf4d,0x00000651,0xfffef0f2,0x0001ed75,0xfffe5dcb,0x00048a0d,0x000c904f,0x000d9b6b,0x001b0d99,0x00215033,
-0x003e2c4d,0x00492514,0x0040910b,0xfffcad61,0xffcca08c,0xffb6ad49,0x0007b370,0x003d9c5d,0x003bde6f,0x00544bd5,0x0029a35c,0xffcfdcc0,0x00033b58,0xffc285d8,0xff281ea0,0xffb64898,0x000174cb,0x000082e3,0x00005d86,0x00005104,0xffffe318,0xfffff581,0xffffea2e,0xfffff838,0xfffff9c3,
-0x000018d1,0x00001071,0x00008fda,0xffffe003,0x0001f6f5,0xfff8e8e6,0xfff22f7b,0xffe7a9c1,0xffe05d34,0xffe10567,0xffda9f4d,0xffd998f1,0xffd83743,0xffe1cc4e,0xffeb2119,0x0016a5ab,0x004bf41b,0x004844b7,0x000f9593,0xffa25c0e,0xffd21fb8,0xfff5f1a2,0x00021d1e,0x000c2756,0xfffb1001,
-0xffef273c,0xfff72485,0xfffc23a8,0x00034ab9,0xfffc750a,0x0000c48a,0xffff9597,0x000064b4,0x000004a6,0x0000227c,0xfffff026,0xffffdee4,0xffffac7e,0xffff5110,0xffff950b,0xfffd47e7,0x00074274,0x001b1c59,0x0021755c,0x001fe161,0x001e059a,0x00163636,0x000b52ef,0x0003038f,0xfffcb57f,
-0xfff75b97,0xffed3f60,0xffe8501a,0xffe4a4a9,0xfff0fdf3,0xfffe1aea,0xfff87fde,0xffecd651,0xffe186e0,0xfff6105c,0x00232fbe,0x002f5ccd,0x00243a34,0x0014d4b6,0x00099e61,0x000076e2,0x0001777a,0xffff4c86,0xffffbd74,0xffff9b1d,0xffffcd8e,0x00000a65,0x000046d9,0x00009742,0x0001607b,
-0x0001669a,0x00034246,0x000c8e9b,0x000f465e,0x000e0a02,0x0005ed5c,0xfffee920,0xfff79df4,0xfff5afe6,0xffef1374,0xffe32b86,0xffe4bc1a,0xffe317c4,0xffdfb188,0xffe1aeb0,0xffe4e535,0xfff1d85c,0xfff94ed6,0x000a22c8,0x001695d3,0x002456ae,0xfff3f0d5,0xfff5a1cf,0xfff8a209,0xfff7d079,
-0xfff937fd,0xfffb79ec,0xfffe37a0,0x000236b6,0x00016785,0x00015e3c,0x0000dbf1,0x00004b0a,0xffffcdcf,0xffff3a56,0xfffd0496,0xfffb2816,0xfffd0c2c,0xfffda92a,0x0002f610,0x0004db20,0xfffe44ea,0xfffe78ef,0xfffb757a,0xfffa76f5,0xfff92bf1,0xfff7c73b,0xfff70c2b,0xfff65ddc,0xfff6696f,
-0xfff6f7ac,0xfff7532f,0xfff5b101,0xfff74058,0xfff692a5,0xfff49c7a,0xfff47ba5,0xfff06ee1,0xffed4831,0xfff1273f,0xffeea9fb,0xfff1e22f,0xfff2bed0,0xfff1b160,0xfff376f0,0xfff43cd9,0xfff76e8e,0xfff9e154,0xfffb3ff5,0xfffbec29,0xfffddba2,0x0002acd0,0x0005d863,0x0009ca02,0x000c7f9e,
-0x0015f558,0x00124201,0x0010d43c,0x0010c158,0x000fd8b8,0x000f4d35,0x000e7b7b,0x000e37bf,0x000a7048,0x0007cd14,0x000569fd,0x000286a3,0xffffc016,0xfffd323f,0xfffa4074,0xfff831b1,0xfff6e432,0xfff44b26,0x00003e6e,0xfffdee9e,0x0007b212,0x000aed8e,0x0009e588,0x0004d241,0x000aad62,
-0x000a93df,0x000c5b6c,0x000d379e,0x000e394a,0x000fd8dd,0x0011c3d7,0x0012d743,0x00135844,0x000d7645,0x0015f586,0x00159a7b,0x0011ac27,0x00090f2f,0x000ae63a,0x000a6112,0x000a3d57,0x000a1185,0x0009c67f,0x0009cf8e,0x00087a57,0x0007528c,0x000609fb,0x00051895,0x0004500a,0x0003b1ac,
-0x00034792,0x00026e19,0x00012c89,0x00008693,0x00094442,0xfff36a3d,0xfff76fd3,0xfff7f200,0xffec3e69,0xffebaf00,0xfff67775,0xffedfcc8,0xffed72e8,0xfff8fbd8,0xfff5b56a,0xfff4e085,0xfff528bd,0xfff1074e,0xfff1850c,0xfff71b16,0xffeb30aa,0xffec54a0,0xfff81233,0xffeb8e23,0xffead99d,
-0xfff4c1ff,0xfff3dcc8,0xfff33dea,0xfff1e643,0xfff114e9,0xfff1b604,0xfff3b4ab,0xfff64ed1,0xfff60d79,0xfff0d7ee,0xfff3e41d,0xfff53804,0xfff9b210,0xfff6612d,0xfff5d87c,0xfff45f18,0xfff70169,0xfffa32b2,0xfff3cb31,0xfff005c8,0xfff44967,0xfff258ff,0xfff20575,0xfff80574,0xfffff70c,
-0xfffd38a5,0xfffaf863,0xfff9d15e,0xfff561c2,0xfff434c4,0xfff86b84,0xffee8b5e,0xffed7054,0xfff35941,0xfff3c800,0xffef0cdf,0xffecc4bb,0xfff0baf8,0xffea97e3,0xffe53e3c,0xffe0b6fb,0xffe3a57d,0xffebf6b0,0xfff6fd14,0xfff76787,0xffe87e07,0xffefcebb,0xfff3e192,0xffff3ee3,0xfff5dbe0,
-0xfff33035,0xfff054f9,0xfff6ab09,0x0003555d,0xfff8df00,0xfff35835,0xfff59618,0xfff5f128,0xfffc173d,0x00006088,0x00014f48,0x00005ebe,0x0001ed3c,0x00021d53,0x00042912,0x00026c43,0x0002cd58,0x00011196,0xfffaacbc,0xfff7fbd2,0xfff2ca9d,0xffed0788,0xffe8490e,0xfff07470,0xffe8dd48,
-0xffe2483e,0xffda45b8,0xffdf7229,0xffecf7f5,0xfffd2b8c,0xfffb1a13,0xffdd26b9,0xffeed8ac,0xfff62e46,0x000ff8a4,0xfffa337c,0xfff92235,0xfff40710,0xffff2204,0x000416dc,0xfff5cb0f,0xfff4482f,0xfff99c10,0xffff3aec,0x00025317,0x0000004a,0xffff7282,0xffffb3b5,0xffff4c10,0xfffeeaed,
-0xfffe6027,0xfffef67d,0xfffee774,0x00002c0c,0x0002d462,0xfffeed93,0xfff8479a,0xffec6453,0xffe3dc4c,0xffe89992,0xffd6ab54,0xffbf79b6,0xffacbc58,0xffb4626b,0xffd483d9,0xfffa5475,0xfff8ea7f,0xffc8c548,0xffe1275f,0xfff5abf3,0x0019cf17,0xfff80a7b,0xffea8412,0xffe4aeef,0xfff730d7,
-0x00135420,0x00056851,0x00050842,0x00028def,0xffffc322,0xffff7faf,0xffffa846,0x00005fa4,0x00002323,0x000058b4,0x00008aa7,0x0000bbd6,0x00007ce3,0x00008a02,0xffffa20f,0xffff019a,0x000071f3,0x00058fae,0xfff56ffb,0xffe82c60,0xfff3f6d7,0x00079c9c,0x002b8ec6,0x0058458b,0x00640068,
-0x004651a3,0x0029d49f,0x0016738f,0x0017923c,0x0015311e,0x001081a9,0x000b00fd,0x00144788,0x00289494,0x004b3c6f,0x001fcc0d,0x00206fc1,0x000fb10e,0x00058450,0x0002e6a8,0xfffedad1,0x0000ea10,0xffffd836,0xffffff24,0xffffcabe,0xffffd9e5,0xffffa9a9,0xffffaa1d,0xffffaf91,0xffffdd1b,
-0x000000af,0x0000fe69,0xfffe8c0b,0x00000fdc,0x0003139e,0xfffa00ed,0xfff3bb92,0xffe35051,0xffd0cab0,0xffbd502f,0xffb942fa,0xffca1d16,0xfff9a8a2,0x001c6145,0x0027c06f,0x00119ae2,0xfff4a944,0xffd79ab6,0xffd337d2,0xffe90bf9,0x00143361,0x001f2608,0x0027f8de,0x004903d4,0x0036c835,
-0x0001d2fd,0xfffd520e,0x0000e2a2,0xffff66b8,0x000054cd,0x00000bc2,0x00003509,0x000038fe,0x00003c4e,0x00002fef,0x00000e7b,0xfffff0b5,0xffff7587,0x0000714f,0x0000acdb,0xfff9e589,0x0006dc10,0x00163be7,0x0020046c,0x00295111,0x00430d54,0x0044906b,0x002cc0a2,0xfff331c6,0xffd1642a,
-0xffca733b,0x0017d4d6,0x003b2235,0x001cc8fe,0x0023c380,0xfff8530f,0xffb0c658,0xfff5858d,0xffb64922,0xff42f435,0xffbefc87,0x0003b447,0x00011bbb,0x00000e6c,0x000043b6,0xffffc0e6,0xffffd3ce,0xffffbccc,0xffffb679,0xffffbbba,0xffffdd38,0xffffe605,0x00005442,0xfffffac1,0x00015fe6,
-0xfffcea3f,0xffed0c64,0xffe52b76,0xffe277f7,0xffddc112,0xffd73be3,0xffd3fe5e,0xffd3a327,0xffdcd44b,0xffe49fb3,0x0009bd57,0x003a5ec0,0x00258725,0xfff2708c,0xffa6eeab,0xffc4550c,0xffdd851d,0xffe0e36c,0xffe72970,0xffdef206,0xffb9095d,0xffd963fd,0xfff40b0b,0x000230e7,0xfffd9935,
-0x0000980a,0x00000722,0x000088d1,0x000066a0,0x00008fc1,0x00006d25,0x0000345d,0x00001d34,0xffff8110,0xffffd7d6,0xfffdd459,0x000322a1,0x000f0031,0x001b4d7b,0x001c190c,0x0018e12f,0x0013ea1d,0x000644cb,0xfffa8dcb,0xffedab56,0xffe7be34,0xffdb9b52,0xffd48127,0xffd938f1,0xffe5d412,
-0xfff0555e,0xffe5ea97,0xffda3e56,0xffd41d01,0xffe297d7,0x0017b87a,0x001aec65,0x001a0f59,0x000d7a62,0x00053de4,0x0000a0ec,0x0000b04d,0xfffed29f,0xffff5aa4,0xfffee657,0xfffeec00,0xffff1569,0xffff8d79,0xffffe593,0x00007763,0x0001a8f7,0x0000f130,0x000a1766,0x00104818,0x00104d48,
-0x000a190b,0x00026c0a,0xfff9c7c9,0xfff2f616,0xffeb210e,0xffe031d7,0xffe32990,0xffe58ab8,0xffe64005,0xffe7f0b8,0xffe9f79a,0xfff36180,0xfffc1b6f,0x00089b76,0x000fd0a3,0x00168c4e,0xfff8bfeb,0xfff682fe,0xfff2015f,0xfff61dbc,0xfff82b54,0xfffc58ab,0x000056eb,0x0003092e,0x0001c105,
-0x0002d114,0x00027ef0,0x000256eb,0x00011997,0x0000c7fa,0xffff4440,0xfffc5ee2,0xfffb92b0,0xfffa5dca,0xfff9c09f,0xfffe60f4,0xfffd413f,0xfffbc7eb,0xfffac729,0xfff8f2a0,0xfff7555b,0xfff52b4f,0xfff40332,0xfff1cc7a,0xfff071e8,0xfff1a12c,0xfff31613,0xfff2a9f5,0xfff45824,0xfff448ba,
-0xfff51c13,0xfff56a9c,0xfff0e4b6,0xffece7a6,0xffecf6e7,0xffef92c6,0xffee832c,0xfff09639,0xfff26d12,0xfff4032a,0xfff65114,0xfff71018,0xfff7e424,0xfff9108b,0xfffa0b27,0xfffa81ef,0xfffcd389,0x000025fc,0x0002e6a7,0x0008d17a,0x000e46d2,0x00122827,0x0010ee9c,0x000f8752,0x000e929f,
-0x000d513c,0x000c451d,0x000b90ff,0x00096ee5,0x00079ded,0x000518f8,0x0001b3ff,0xfffddd08,0xfffa305f,0xfff86bc6,0xfff6c6c4,0xfff59319,0xfff2ebca,0xfffdbb16,0xfffd81cb,0xfff99168,0xfffa036d,0x00012e23,0xfff9c471,0xfffa17fb,0xfffe8332,0xffff0ca5,0xffffe068,0x00014255,0x00024d9c,
-0x00041545,0x0005c433,0x00000ce1,0x00009ace,0x000a7229,0x00038359,0x0003f399,0x0008d952,0x0007e840,0x0007bebf,0x0007857e,0x000754e5,0x00070e40,0x0006e89a,0x00056c32,0x000416c8,0x0002ec96,0x0001fa59,0x000140fb,0x00003c2f,0x00000229,0xffff51a8,0xfffe8bec,0xfffe0103,0x00047aa3,
-0xfffd2093,0xffff2391,0xfffe6fac,0x000297c7,0xfffd6855,0xfff07ce0,0x0001a379,0xfffe0f6e,0xfff9da2a,0xfff71323,0xfff5eeb4,0xfff54eae,0xfff17cf9,0xfff010a2,0xfff2afa5,0xfffb70ff,0x00008e77,0xfff014dc,0xfffc4068,0x00010041,0xfffcc79c,0xfffca986,0xfffd1626,0xfffb9fbd,0xfffba7b4,
-0xfffc7a2d,0xfffe5a6b,0x00005b15,0xffffe61a,0xfffa960a,0xfffe9ee7,0x00006014,0x0004bdcb,0x00020eb4,0x0000e1ff,0xfffcf9de,0xffffe50a,0xffffd217,0x0000d0bf,0xfffadfb1,0xfffe51a0,0xfffd4d11,0xfff97ca3,0xfffd8a79,0x0004f95e,0x00016c1e,0x00017c1e,0x0000d360,0xfffdb3bc,0xfffcb328,
-0x000022a2,0xfff664ab,0xfff56280,0xfffe18f4,0xfffc9f6a,0xfff75908,0xfffb699e,0xfffa6971,0xfff8b1c3,0xfff32bcc,0xfff0f856,0xfff37ffe,0xfffa64ea,0x0003758d,0x00036724,0xfff546ad,0xfffecbe6,0x00047c90,0x000f8575,0x00088487,0x00037c1c,0xfff98c3b,0x00004d8a,0x00056d7c,0x00019a04,
-0x0003afd0,0xfffe5551,0xfffb5798,0xfffebf82,0x00008e37,0xffff298d,0xffff4a0f,0xffffe8f0,0xfffff5f1,0x00012dc4,0x000115a2,0x000116d7,0x00018077,0xfffef25f,0xfffbb478,0xfff96762,0xfffa349a,0xfff62b76,0xfffb2fbb,0xfff8a3bf,0xfff35be4,0xfff033ed,0xfff5808e,0x00018ae7,0x000d4deb,
-0x000a5876,0xffed73f7,0x00039898,0x000d9e32,0x00255f8a,0x0014c224,0x000dbc16,0xfffaff03,0x0007f4b0,0x0001a3dc,0xfffd76b4,0xffff7b7c,0xfffd276a,0x00005c1c,0x00011a91,0xffffbf31,0x00004231,0x00004606,0x00000757,0xffffe6de,0xffff8187,0xffff7b58,0xffff6a61,0xffff92e2,0x000122f6,
-0x00009902,0xfffad17a,0xfff4b6ad,0xffef696f,0xfff4cf28,0xffed0152,0xffdb0097,0xffd0cee2,0xffd8e501,0xfff281fb,0x001046d2,0x000ad27f,0xffdc8bd1,0xfffc61f3,0x00158bc2,0x0037aead,0x001d699a,0x00061836,0xffeab5f4,0xfffea107,0x0018f6ac,0x00183a60,0x00106bc6,0x0002b189,0xffff3338,
-0xffffd274,0xffffeb79,0xfffffe94,0xffffdd11,0x0000024a,0x000011b3,0x00003d95,0x00003a7c,0x00005b1d,0xfffffea5,0xffffabf2,0xffff5308,0x0004b9c8,0x0000b2ca,0xfffd7885,0x00062088,0x001334a9,0x00283149,0x00518765,0x0055ba9d,0x0030447b,0x001d604a,0x0013f555,0x001d5f0e,0x0023d80c,
-0x0026444e,0x00250ce9,0x002f58b7,0x003c4aa6,0x004fb7c0,0x00279b10,0x00176adc,0x00126e36,0x000f5b55,0xffff1eed,0x000052ea,0x00002e58,0xfffff6a8,0x00000494,0xffffffb4,0xfffffdd4,0xffffed04,0xffffe478,0xffffd6ef,0xffffe608,0xffffdecc,0x00008cf2,0xffff9184,0xfffef21d,0x00034152,
-0x000219a9,0xfffe8dcb,0xfff6c010,0xffeba887,0xffd1a956,0xffcce56b,0xffdf9835,0x00074f7c,0x00212072,0x00226402,0x00136e2f,0xfffe916b,0xffe6cb76,0xffef5bf9,0x000149bc,0x0019da62,0x0022fe35,0x0025f7c7,0x0041f725,0x002bd5b5,0xfffcda0e,0xffff221f,0x000062ff,0xffffce5f,0x00002917,
-0x000005a5,0x000013b0,0x00001236,0x000015e7,0x00001c0b,0x00000bc4,0x00000ede,0xffffa03f,0x00001d0c,0x00007140,0x00012516,0x000ca312,0x0016c413,0x0023ea3c,0x002e22d6,0x004e7034,0x0053b5c8,0x003c3e89,0x0007d039,0xffe5d6d4,0xffdd589d,0x00203c74,0x004b8fc5,0x004b6c14,0x00538ddf,
-0x0028eeeb,0xffe74e1d,0x000485e0,0xffdb6410,0xff6716d6,0xffc97599,0x00088d6f,0xffff932d,0x00002226,0xffffec41,0xffffd5e4,0xffffd421,0xffffdcec,0xffffdf80,0xffffe2a0,0xffffe81e,0xffffe767,0x00002785,0xfffffbc9,0x000115b6,0xfffec833,0xfff145e1,0xffe8507f,0xffe99afd,0xffeb7eb7,
-0xffe8115e,0xffe858f9,0xffe75210,0xffec3c15,0xfffb1489,0x001eb0d4,0x004d1d7d,0x00288a92,0xfff7e6ab,0xffbc512e,0xfff945f0,0x0023d02a,0x0036cec0,0x00185c2b,0x001b5dd4,0xffcb91a3,0xffd2d27d,0xfff65251,0x0000fcb8,0xffff5998,0x00006ab6,0x00004196,0x00006dbb,0x000044b8,0x00004143,
-0x000037df,0x00001cdd,0x00003927,0xffff9427,0x00003b72,0xfffdb5a8,0x000193e3,0x00121196,0x001d875f,0x001aadbf,0x0016af08,0x00112f10,0x00080530,0x000258ff,0xfffe6411,0xfffc875c,0xfff68d68,0xfff9e456,0xfff6bc2a,0x000498e6,0x0013817d,0x0018a86d,0x00166601,0x0011bfec,0x0027ec3c,
-0x0022584b,0x002a07d7,0x001b8cc1,0x000f0eb6,0x000143a5,0xffffa8f4,0xffffd493,0xffff0ab3,0xffff3d5a,0xffff5d20,0xffff7663,0xffff96f4,0xffffa94a,0xffffd56d,0x00001cc5,0x000144c9,0x00006159,0x000958b1,0x000fa940,0x00103b56,0x000c947e,0x0008ebd7,0x000279a4,0x0001429b,0xfffadff7,
-0xffef0ce2,0xffed6cc3,0xffe9d82c,0xffe55e8f,0xffe965b9,0xfff076c9,0x0002bc1a,0x0003480a,0x000e3817,0x001603f3,0x001df6ce,0x000168d9,0x0000faeb,0xfffe1cfd,0xffffbf6e,0xfffef5db,0xffffc31c,0x000195d2,0x0002075d,0x0001db7b,0x00016832,0x0001494f,0x0000f789,0x0000b810,0x00008684,
-0xffffd0eb,0xfffde6a6,0xfffc970d,0xfffb6fdc,0xfffd3810,0x0000e5b4,0xfffcc08c,0xfffb7e6a,0xfff8e5fa,0xfff6e5dc,0xfff4f037,0xfff2b5c4,0xfff5b149,0xfff82b49,0xfffae6b8,0xfffe2104,0xfffff785,0x00011bbd,0x00012755,0x00008188,0xffffbc01,0x0000648f,0xfff7666f,0xfff5a12a,0xffefd337,
-0xfff49d35,0xfff46988,0xfff55030,0xfff6f061,0xfff95dd8,0xfffb67e2,0xfffbbdd5,0xfffc5abb,0xfffd220d,0xfffddda4,0xfffe7d4f,0xfffe5596,0x000005d2,0x0004fe57,0x0007bc99,0x000d7d41,0x000d8631,0x000a9f73,0x000a786b,0x0009682d,0x000869a3,0x00077691,0x0006495a,0x0005299f,0x0004747c,
-0x00041c6a,0x000350cc,0x0002e85a,0x0002d128,0x000063ba,0xfffe9356,0xfffccdbb,0xfffa70ee,0x000068cc,0x00002fc1,0x0002c7bf,0x0000aa88,0xfffaff11,0x0001d941,0xfffff7d0,0xfffb25ab,0xfffb99ab,0xfffcaadd,0xfffd78bc,0xfffe61f1,0xffff0d16,0xffffab36,0x000696c3,0x00081d86,0x00043000,
-0x000937d3,0x000a3b8c,0x00062fad,0x00069bc5,0x00063a2a,0x0005b747,0x00056b97,0x000504e1,0x00049afa,0x00047299,0x00042972,0x0003dde2,0x0003d6c0,0x0003d4fc,0x00043bcc,0x0003650b,0x0002ad65,0x0001c8dd,0x00013f28,0x00061619,0xfff020fb,0xfff3eeeb,0xfff00923,0xfff25743,0xfff8ace9,
-0x00039257,0xfff0afe7,0xfff843e4,0x0004e8bf,0x0001cd06,0x0000a327,0x0000c5e5,0xfffdb9ff,0xfffdae4a,0x0000f000,0xfff676aa,0xfff0a03e,0x000458e6,0xfff866a1,0xfff21ca5,0xffef5919,0xfff10bd7,0xffef9f29,0xffee0571,0xffee67fb,0xffef145e,0xfff076ff,0xfff25e14,0xfff1dd30,0xffecd595,
-0xfff02454,0xfff16e50,0xfff5657c,0xfff23325,0xfff1f6ab,0xfff1fc37,0xfff331aa,0xfff49c7c,0xffeea271,0xfffce759,0xfff3de81,0xfff63ca2,0xfff6d131,0xfffadca0,0xffff9587,0xfffd3ab4,0xfffcdea4,0xfffd2194,0xfffb04b5,0xfffab8c0,0xfffbd6ec,0xfff80b2b,0xfff4376b,0xfff411e7,0xfff603e6,
-0xfffbb85b,0xffec2e14,0xffebddbf,0xffe6d3e0,0xffe0f662,0xffe0802b,0xffe3a31c,0xffe984e1,0xfff1f500,0xfff13a4f,0xffe340da,0xffeb1462,0xffef49ae,0xfff97de1,0xfff15c69,0xffefc726,0xffefffe7,0xfff3605e,0xfff982a1,0xfff0f450,0xfff7d27f,0xfff7aebf,0xfffc90e0,0x00009b00,0x0001b0c9,
-0x00008bb1,0x0000b947,0x00012169,0x000111f9,0x0001cd05,0x0001bf82,0x0001cb2c,0x00027ae7,0x00019a7e,0xfffda622,0xfff71d01,0xfff61e71,0xffec5cad,0xffea4611,0xffe4b381,0xffdc28cb,0xffdb79e5,0xffe0861e,0xffe9e331,0xfff560f6,0xfff1c00c,0xffd685aa,0xffe8d670,0xffef6f3a,0x0005b29d,
-0xfff2bee7,0xfff3505d,0xfff37801,0xfff95c7e,0xfff91e86,0xffef071a,0xfff96975,0xfffce1da,0x0001ff6e,0xffffe508,0xffff6b72,0xffff9e75,0xffffbabc,0xffff8404,0xffff7df5,0xffff3cb2,0xffff3f05,0xffff2895,0xfffefebb,0xffffb06d,0x00019fea,0xfffc5c0a,0xfff61575,0xffe76294,0xffe0310e,
-0xffd0b71a,0xffba2f06,0xffb5a286,0xffbf8230,0xffd6d085,0xfff2f7d4,0xffecc7f0,0xffc0f284,0xffd9b492,0xffee224a,0x000de79d,0xfff296cf,0xffe977d7,0xffeac901,0xfff61804,0xfff9e9a9,0x00016ffb,0x00080436,0x00006af1,0xffffcdb1,0xffffa520,0x00006fba,0x00002026,0x0000308e,0x000034b9,
-0x00004760,0x0000578e,0x000062f7,0x00005e09,0x0000904d,0xffffcc6f,0xffffc5f6,0x0001cb3a,0x0000862e,0xfff3d3b7,0xfff6cd5b,0x000a3bee,0x0020225e,0x004383ee,0x0044f0ce,0x0024d885,0x000d0e1a,0x0002b947,0x0007e031,0x000d8616,0x0006ff1b,0xfff5719b,0x00078938,0x0017152b,0x002cded0,
-0x00067500,0x001256a3,0x00068338,0x00062382,0xfffd56df,0x000175fe,0xffff836f,0x00001150,0xffffc3cc,0xffffeecd,0xffffd8f4,0xffffda07,0xffffcdd5,0xffffcf16,0xffffc5be,0xffffc755,0x0000088d,0x0000547e,0xfffe5914,0x0003b976,0xfffae2e4,0xffe93c8f,0xffd8ddd4,0xffc4b7c1,0xffbbbbf3,
-0xffc54886,0xffe134ff,0x000a7208,0x001f714f,0x0018b409,0x000a101e,0xfff7aa46,0xffe4b3c4,0xffe9f728,0xfffc28ee,0x001b2f6f,0x001d2f63,0x00198fa6,0x0031e19a,0x002110ba,0xfffae419,0x000065c5,0xfffffa8c,0x00002232,0x000024bb,0x00002103,0x00001e36,0x000022f0,0x0000225f,0x00002569,
-0x00002324,0x00002751,0xffffec59,0xffffc707,0x0000dd11,0xfffceb66,0x0002fdb4,0x0012b3fa,0x0022b0e7,0x002d2251,0x003a1444,0x002c9c44,0x00089682,0xffdada2d,0xffc872c4,0xffd57ecc,0x00089a18,0x001b3328,0x000481d4,0xfffe864a,0xffdf12b6,0xffb8300a,0xfff33ff5,0xffc65fad,0xff889106,
-0xffd76142,0x0008b9e3,0xfffef3e2,0x00000d95,0xffffd0eb,0xffffbcfe,0xffffcf3b,0xffffcf74,0xffffd290,0xffffd47a,0xffffd823,0xffffd3c8,0xffffea42,0xfffff740,0x00007838,0x00009387,0xfff42d8c,0xffe6fa64,0xffe23074,0xffdd24f2,0xffd719d8,0xffd99d49,0xffdde519,0xffe726b7,0xfff71757,
-0x0014c1a8,0x003b6052,0x000f055c,0xffe383ac,0xffbb8777,0xffd4bf9a,0xffe93d64,0xffef4135,0xffe44ac3,0xffed7044,0xffaff437,0xffd9cea4,0xfff889fe,0x0001d5df,0xffff7be6,0x0000a6c7,0x00005e58,0x0000707b,0x00005447,0x000055e6,0x00004df4,0x00003c7d,0x00005681,0x000008e7,0x0000378d,
-0xfffee567,0xffff124a,0x000bfa3b,0x0014fdb2,0x001402f9,0x0012e62a,0x000c813d,0x00038c89,0xfff9560b,0xffec57eb,0xffe91ef2,0xffe02ed5,0xffdd9609,0xffdfb503,0xffea0d4e,0xfff1424e,0xfff195b7,0xfff07b53,0xffeea1ed,0x00010f57,0x0008aa4a,0x001538ff,0x001c2439,0x0007fcf7,0xffffb797,
-0xffff7b67,0xffff41fd,0xfffeea70,0xffff3909,0xffff41aa,0xffff4f3a,0xffff67b7,0xffff6dc4,0xffff87ee,0xffff6b3e,0x00009a11,0xfffff4fe,0x0005fb92,0x000ea1ec,0x0010b51c,0x0009e6c1,0x0003a227,0xfffcebd0,0xfff91df4,0xfff34630,0xffe9a03f,0xffe93a32,0xffe9e577,0xffeae7ac,0xffec1447,
-0xffeb9840,0xffede040,0xfff21799,0xfffaf6bd,0x00001f99,0x0005d88f,0xfffc27c9,0xfffe0c87,0xfffc497c,0xfffeb1c8,0x000085f8,0x00010f12,0x000251f8,0x000242f9,0x0001d0e1,0x0001af73,0x0001951e,0x00016df8,0x00013c55,0x0001509e,0x0000ff92,0xfffff526,0xfffdd060,0xfffa6cf0,0xfff8ddd9,
-0xfff862cd,0xfff630fd,0xfff6b4a0,0xfff5f790,0xfff434da,0xfff26699,0xfff08fbb,0xfff06232,0xffef5af5,0xffeee2b0,0xfff07b34,0xfff28b3f,0xfff33e44,0xfff5c45c,0xfff6a98f,0xfff82970,0xfffaa8de,0xfff36ede,0xfff1dcda,0xfff64a29,0xfff31732,0xfff421b9,0xfff679e5,0xfff896d2,0xfff9cbc3,
-0xfffb4680,0xfffb14c7,0xfffb91b5,0xfffbb157,0xfffc3560,0xfffbf824,0xfffca42a,0xfffcc58a,0xfffd4a9a,0x00013520,0x0009290c,0x00083a1c,0x00079bf5,0x000626df,0x000522c6,0x00040835,0x000328b0,0x00025cbe,0x0000803f,0xfffed66d,0xfffcbd02,0xfffa310b,0xfff73d74,0xfff44b69,0xfff416cc,
-0xfff425c1,0xfff4238c,0xfff3a46a,0xfff92865,0xfff86aa8,0xfff9c4eb,0xfffd0e58,0x00031d23,0xfff7b529,0xfffb343a,0xffff2e97,0xffff84cf,0x000061cb,0x00016db7,0x0002431c,0x000377a3,0x0004c573,0xffffafbd,0xfffc6b15,0x000a5ec6,0x0002ed9e,0xffffa4c3,0xffff1995,0xffff4993,0xfffebecd,
-0xfffe7bb1,0xfffe2cf4,0xfffdca3c,0xfffd8287,0xfffc75ea,0xfffb8eec,0xfffaca13,0xfffa1f3c,0xfff9b0db,0xfff8ee94,0xfff94ff6,0xfff92790,0xfff90cc5,0xfff8e536,0xfffb6b3f,0xfffeb79e,0xffffad88,0x000186b0,0xfffb1b29,0xfff40da1,0xffecb348,0xfffd77df,0xfff63f9f,0xfff56d40,0xfff2d1d2,
-0xfff1f824,0xfff1b70a,0xffef03a5,0xffede5db,0xffef7530,0xfff3b792,0xfffbe4c9,0xffec0eb0,0xfff48b10,0xfffac830,0x000103bd,0xfffe2f21,0xfffead61,0xfffd52b7,0xfffe3bc3,0xfffed769,0xffff916c,0x0000f23b,0x00007c2c,0xfffc4b52,0xffffc5e4,0x000139af,0x0004fbbe,0x0001d76b,0x0000ca28,
-0xfffe6291,0x00007e56,0x0000da03,0xffff9369,0xfff2817c,0xfffea818,0xfffa3e7f,0xfffa1cd7,0xffff5719,0x0003844e,0x0001b19c,0x00021d62,0x0002102a,0x000199c3,0x00014430,0x00025745,0xfffc81fa,0xfffa2ef2,0xfffaaf0a,0xfffda58e,0xfff332b2,0xfffd04e1,0xfffc7b59,0xfff99c50,0xfff60538,
-0xfff751d8,0xfffa07d3,0xfffd4c82,0x00038585,0x000276fa,0xfff70b62,0xffff33a9,0x0003b73c,0x000cb58f,0x0005077a,0x0001229b,0xfffb9e83,0x00000753,0x000545ab,0xfffd9214,0xfffc54b6,0xfffcedcc,0xfffd98b2,0x00017d08,0x00008205,0xffff1032,0xffff8a24,0xffffa93a,0xffff8f69,0xfffffbfc,
-0xffffed00,0xfffff070,0x0000f7f8,0x00021807,0xfffec78c,0xfffc7a4f,0xfff9a6a8,0xfff961a7,0xfffe5fe4,0xfff9d352,0xfff59a70,0xfff80e68,0xfffc7f70,0x00012a3b,0x00094ad9,0x0005c45b,0xfff027f2,0x0002ca79,0x000a362e,0x001dead0,0x000b6643,0x0006a6ef,0xfffd1e7b,0x00041795,0x000333b6,
-0xfff8e080,0xfffa5b1a,0x00002b14,0x0000d36b,0xffffd638,0xffff9917,0x000060bc,0x000029e7,0x00001baf,0x00001b7e,0xfffff6ea,0xffffeacb,0xffffffde,0xffff648f,0xffff95b3,0x00004ad5,0x00004811,0xfff75d83,0xfff3b64b,0xfff6a5de,0xffebd4b3,0xffdf8a25,0xffe18bf6,0xffeacfe8,0xfff8315b,
-0x000c2f99,0x000478da,0xffe0f648,0xfffa5a76,0x000e18b5,0x0029e713,0x000eac3d,0xfffe2cc8,0xfff233c0,0xfffd8f06,0x0011d71e,0x000f2069,0x0002d770,0x0000fc92,0xffff1b6e,0x0000406d,0x00001a7f,0xffffe5f3,0xffffe8b2,0xfffff7ae,0xfffff56a,0x00000b46,0x0000024d,0x00001daa,0x00001955,
-0x0000900e,0xfffedd08,0x000252b7,0x000090df,0x000342bd,0x0013743d,0x001dd9b1,0x002e7a13,0x0041cc6a,0x003eb9b1,0x002039c8,0x0014e81c,0x0013c108,0x001d12e8,0x0027fd5e,0x00253eab,0x00134d97,0x00227e5b,0x002bc53b,0x00370402,0x0017729c,0x00178f16,0x000f49cf,0x00045842,0xfffe0d51,
-0x000145c5,0xffff6d38,0x00002608,0xffffecf6,0x0000133e,0xfffffe20,0x000001a0,0xfffffcc7,0xfffff3df,0x00000190,0xffffcad3,0x00000c06,0x000005e5,0xffffb896,0xffff108b,0xfffeb6ab,0xfff86284,0xffecb190,0xffe4e4d5,0xffd5c390,0xffda4db7,0xffeeaede,0x000dcb0a,0x001ce3c9,0x00151353,
-0x000aef46,0xfffc0dcb,0xffe8d265,0xfff5ebee,0x0005dffd,0x00197d28,0x001f80fd,0x00161171,0x00295f00,0x001377c3,0xfffacb22,0x00010d18,0xffffd460,0x00001fd1,0x00000542,0x0000008a,0x00000517,0x00000284,0x0000094e,0x000000b2,0x000015ad,0xfffff820,0x00004798,0xffff508b,0x00012aff,
-0xfffef9ae,0x00096547,0x00189045,0x00236085,0x002e5850,0x0043993d,0x003fccae,0x0022fe18,0xffff77bd,0xffee23c5,0xfff496b7,0x00234384,0x003bca21,0x0034e2bd,0x002bd669,0x000a5e45,0xffe83466,0xffff10dc,0xffe0b201,0xffa3e0d9,0xffe50e1e,0x000ad68c,0xfffc8717,0x00011eee,0xffff60da,
-0x000020bd,0xffffdc40,0xfffffec3,0xffffeed2,0xfffff963,0xffffefaf,0xfffffe66,0xffffd785,0x00002923,0xffffac71,0x0002235f,0xfff66419,0xffec709a,0xfff08809,0xffeff1e4,0xffed898b,0xffeeedc1,0xffef9348,0xfff1fa7e,0x000570d1,0x001d23e5,0x0039235e,0x00089aa4,0xffe682ec,0xffd6b6e0,
-0xfffea2eb,0x001f48f5,0x00368973,0x00052e42,0x00225665,0xffbfc730,0xffd4bdde,0x00022566,0xffff1c30,0x0000da4e,0xfffff018,0x00005608,0x000008f7,0x00002572,0x00001243,0x00001ae1,0x00000d36,0x00002040,0x00000986,0x000029ce,0xffffadd2,0xfffdfbf7,0x0008f37b,0x0015b1a8,0x001277e3,
-0x000e06ca,0x0009f860,0x00035288,0xfffe70a3,0xfff8e331,0xfff7b804,0xfff34ced,0xfff8c40b,0xfff8a0c6,0x000570e0,0x0013e554,0x001e39ff,0x0022c42f,0x00262850,0x00355e03,0x00125658,0x0018ccaf,0x0011cf1a,0x000459c4,0xfffe4a17,0xffffff9d,0xffff274c,0xffffcd27,0xffffaef1,0xffffd4e8,
-0xffffc8e1,0xffffdaa9,0xffffd378,0xffffe6b0,0xffffa683,0x000027f0,0xffffd1cb,0x0003bf9d,0x000c7563,0x000eba23,0x000d7487,0x000ba437,0x000687af,0x00046f52,0xfffef387,0xfff61438,0xfff396db,0xfff16304,0xffeed838,0xfff271a1,0xfff79915,0x0003ada0,0x0000851b,0x0004d378,0x00082a3b,
-0x000accf7,0x00082577,0x00069c62,0x0000889a,0x00029ea2,0x0000664b,0x0001ab1d,0x000154c4,0x000097c9,0x000074dc,0x00004ef4,0x000056b3,0x000041b0,0x00003539,0x0000447d,0x000079e0,0x00009729,0xfffee512,0xfffb8bdd,0xfff90041,0xfffb9faa,0xfffad554,0xfff92fcd,0xfff8049c,0xfff63251,
-0xfff49c86,0xfff29f0a,0xfff56261,0xfff75886,0xfff9588c,0xfffd36dd,0xffffe93b,0x0002c7c8,0x00032924,0x000375fe,0x00048506,0x00060c83,0xfff9fc1f,0xfff9386a,0xfff26586,0xfff93055,0xfff85621,0xfff9aeab,0xfffcf20b,0xfffed399,0x00003637,0xfffffa78,0x00001e4c,0x000021a8,0x00005237,
-0x00001bb2,0xfffe691d,0xfffda5b1,0xffff5039,0x0001caa1,0x00045c76,0x0006bd0d,0x00042f81,0x00039590,0x0002aa9c,0x00017ddb,0x00009939,0xffff5a0b,0xffffc607,0x0000289b,0x000084f3,0x000070c2,0x000071d0,0x00009a83,0xffff48d0,0xfffe33b1,0xfffcbbbb,0xfffb4484,0xfffe7a52,0xffff393f,
-0xfffc9ae8,0xfff926d7,0xfff5a1f8,0xfffc9e2a,0xfff88344,0xfff5ae99,0xfff59b89,0xfff61fd1,0xfff67fcf,0xfff6f625,0xfff73f76,0xfff7bca8,0xfffbefef,0x0000126f,0xfffb525e,0xfffeb9c3,0x00014aa6,0x00020ea4,0x0001618c,0x00012a9c,0x00009ef0,0x00005820,0xfffffe45,0xffff70ed,0xffffa52e,
-0xffffa3e3,0xffffc481,0x00000336,0x00004e25,0x0000dde8,0x00004335,0xffffe254,0xffff906d,0xffff3ca4,0x0000b7b7,0xfff58dce,0xfff7e813,0xfff3dd79,0xfffb94a8,0x000072ec,0x00029a71,0xfff8e47e,0xffff63b9,0x00053b8f,0x0003012f,0x000228d1,0x000237a9,0x0000609b,0xfffff5c2,0x00010e05,
-0xfffe5ce0,0xfff91efa,0x0001ffef,0x000096ec,0xfffc0b2c,0xfff47491,0xfff625e1,0xfff516e4,0xfff3bd58,0xfff4bee1,0xfff54cdc,0xfff5f9d8,0xfff6fffe,0xfff67a39,0xfff2d315,0xfff58bfb,0xfff6ab8a,0xfff9c076,0xfff76140,0xfff731ff,0xfff749c6,0xfff7b3fd,0xfff7f88b,0xfff4c177,0x00018ff7,
-0xfff8a0b6,0xfffb6229,0xfffd1ad5,0xfffebf42,0xffff4b15,0xfffef34d,0xfffefd86,0xffff2627,0xfffed8af,0xfffecdac,0xffff2292,0xfffe7836,0xfffcefcf,0xfffa0ed2,0xfffa451d,0x000182ff,0xfff496b5,0xfff1a488,0xffeed08d,0xffea56a3,0xffec3555,0xffeea594,0xfff1a8f8,0xfff6afe7,0xfff59df3,
-0xffebc8b2,0xfff2224f,0xfff5ec73,0xfffde412,0xfff88241,0xfff742c5,0xfff73df1,0xfff8aef9,0xfffa23fc,0xfff439e4,0xfffd6cd0,0xfffd032d,0x00012273,0x0000f20f,0x0000b018,0x0000200e,0x00005bed,0x00005e33,0x00005325,0x000080a8,0x00008579,0x00006849,0x0000b896,0x00012523,0x0001c8c0,
-0xfffd5c2c,0xfffe1fc4,0xfff64d88,0xfff09d21,0xffedb826,0xffe6fabf,0xffeaa90f,0xffee8ff2,0xfff31c7b,0xfff91678,0xfff56023,0xffe2ac1e,0xfff13ad0,0xfff6d882,0x00078257,0xfffa6e9b,0xfffa9048,0xfffa70c0,0xfffc906d,0xfff9b297,0xfff2b28d,0xfffea055,0xffffc155,0x00008f7c,0xffff2a7d,
-0xffffdd71,0xffffd969,0xffffe56b,0xffffd009,0xffffdc94,0xffffbf63,0xffffcbc7,0xffffb6d2,0xffffd61c,0xffff126a,0x00004cc8,0xffff7919,0xfffdd185,0xfff1a8f1,0xffe75e7a,0xffddc667,0xffce744c,0xffd2ebe1,0xffdbb0d2,0xffe80eb8,0xfff82809,0xfff0fd12,0xffd2704a,0xffe5fe62,0xfff72e22,
-0x000fc57b,0xfffe2eb2,0xfff701a9,0xfff75a1a,0xfffc7bc1,0xfff5951d,0x00056fdc,0x0007bf56,0xfffdac4c,0x0000c647,0xffffdfa2,0x000056bc,0xfffff274,0x00001ecf,0x00000d8e,0x000019e5,0x00001776,0x00002679,0x00000c13,0x0000474d,0x00001139,0x00008669,0xfffed813,0x0004a479,0x0002751f,
-0x0002c5d3,0x0010a86a,0x001ae5ca,0x002edd7c,0x002a1f1c,0x000fd1a0,0x0000abb6,0xfffe3a76,0x00056783,0x00102419,0x000a7720,0xfff44eb5,0x000722ce,0x00100a65,0x00199f8e,0xffff3690,0x00085b5b,0x00056aca,0x00031abb,0xfffd567b,0x0001a2b0,0xffff092b,0x00004e5c,0xffffc81b,0x00000a48,
-0xffffe960,0xfffff87f,0xffffebb9,0xfffff587,0xffffe441,0x00000433,0xffff99cb,0x00009097,0xfffed580,0x00014119,0xfffb1910,0xffea3be6,0xffdea566,0xffd06897,0xffcc7bee,0xffd8dd31,0xfff26284,0x00100097,0x001ac876,0x000dd127,0x0005975d,0xfffc0381,0xfff0dee9,0xfffd5359,0x000a329c,
-0x0019125a,0x0017de1e,0x000ddb27,0x001c7b3e,0x000be35b,0xfffb9860,0x00017145,0xffffa628,0x00003c0a,0xfffffb58,0x000011b5,0x0000089c,0x00000d39,0x00000b51,0x00000da8,0x00000aa5,0x000010b7,0x00001cd6,0xfffff199,0xffffeb04,0x0000f42a,0x0003b990,0x00102433,0x001ecc96,0x00287cc0,
-0x002d9d9c,0x001e73aa,0xffff3e27,0xffe06f64,0xffd7c379,0xffe9c5bb,0x0007ac6b,0x00124d2c,0x00095257,0xfffd03c6,0xffe7c90d,0xffd7df98,0xfff889d2,0xffdc3c8b,0xffbe6cb3,0xfff329d6,0x0006b630,0xfffd4d90,0x0000d36d,0xffff85f3,0x000014bd,0xffffddc0,0xfffff5ef,0xffffec31,0xfffff123,
-0xfffff01f,0xfffff154,0xffffed48,0xffffec80,0xffffd56f,0x00011c9b,0xfffc0948,0xffee759c,0xffeb9c4d,0xffe897a5,0xffe4e533,0xffe95e0d,0xffee5bd1,0xfff499bd,0x000951e3,0x001c213b,0x002fd1b1,0x00011986,0xffe3ce1b,0xffd8dd7c,0xffee734d,0x00021941,0x00126f4e,0xfff1212d,0x000fde4c,
-0xffc98aac,0xffeb0154,0x0002a510,0xffff748d,0x0000b6d9,0xffffed48,0x00004571,0x00001183,0x0000284f,0x00001ba7,0x00001da2,0x00001c69,0x00001522,0x000029a7,0x0000040f,0x00008f63,0xfffd82ff,0x00071fd8,0x00102a32,0x000cc32a,0x000ba604,0x000576b5,0x00015979,0xfffb6bd1,0xfff33568,
-0xfff17963,0xffed21ad,0xfff081a9,0xfff03e92,0xfff97c45,0x00020594,0x000c7302,0x001317a1,0x0017200b,0x00242eae,0x00011051,0x001075ba,0x00137932,0xfffedadb,0xffff0f3b,0xffffa6d2,0xffff902c,0xffffc03d,0xffffb6e0,0xffffbf73,0xffffc124,0xffffc53e,0xffffcc60,0xffffc76c,0xffffd0bb,
-0xffffa582,0xffffc1f2,0x000133ce,0x0009bdad,0x000d949b,0x000935ed,0x000657e0,0x00020b96,0x0000aed5,0xfffc947a,0xfff5aa03,0xfff2fe60,0xfff1f497,0xfff1e41f,0xfff2cde8,0xfff1fa19,0xfff1cf11,0xfff0d694,0xfff511fc,0xfff8844e,0xfffc37ae,0x00030a65,0x0005c888,0x00044771,0x0002ab55,
-0x00018801,0x00012519,0x0000be54,0x00008f2d,0x00008dca,0x0000888e,0x00007f90,0x0000799b,0x00006eb4,0x00006e4d,0x000072da,0x0000a3e6,0x0001021e,0xfffd391b,0xfffa9ec6,0xfff8428c,0xfff643d0,0xfff6cf9f,0xfff618ab,0xfff4d901,0xfff37d70,0xfff22b29,0xfff2db30,0xfff2fb3c,0xfff33f0c,
-0xfff58aa9,0xfff7e5b7,0xfff9d501,0xfffc6eb1,0xfffe06f2,0xffffe28a,0x0002c530,0xfff7d5ac,0xfff809be,0xfffa6d9d,0xfff9465a,0xfffb1743,0xfffcac3e,0xfffea736,0xffff0421,0xfffee665,0xfffef891,0xfffefc93,0xffff02d1,0xffff10ed,0xffff0952,0xffff122f,0xfffe2646,0xfffcc48d,0xfffd2bbe,
-0x00034093,0x0000af60,0xffffed8b,0xfffefa38,0xfffe24a5,0xfffd4670,0xfffc9b44,0xfffbd9de,0xfffb1612,0xfffa71a8,0xfff9a5c9,0xfff8aa66,0xfff77755,0xfff634fc,0xfff663a1,0xfff6de56,0xfff70666,0xfff763e4,0xfff9cdd7,0xfff96080,0xfffc57df,0xfffe22dc,0xffff5175,0xfffa1e63,0xfffcbdfb,
-0xfffdbe1e,0xfffe138e,0xfffe7eb9,0xfffeec68,0xffff5521,0xffffcf89,0x00005b51,0xffff3f93,0xfffc2d1d,0x0003d97c,0x0001843e,0xfffe8d32,0xfffb3d6c,0xfffbc9e0,0xfffb404b,0xfffaf06e,0xfffaa558,0xfffa4a52,0xfff9e8cb,0xfff9a24c,0xfff95eb2,0xfff93597,0xfff9105d,0xfff91584,0xfff90197,
-0xfff95b35,0xfff96f23,0xfff999a8,0xfff9a41e,0xfff99b7f,0xfffbfe1b,0xfffcfb50,0xfffdcda0,0xfff7b8e8,0xfff5288c,0xfff4acdf,0xfff9da37,0xfff78bd8,0xfffae90e,0xfff946ad,0xfff8d744,0xfff8eab7,0xfff7d344,0xfff776f4,0xfff83550,0xfff67650,0xfff93ccc,0xfff3fcef,0xfff5ff93,0xfff85400,
-0xfffe195e,0xfffc0a2b,0xfffbefe1,0xfffae794,0xfffbf28b,0xfffc4dfb,0xfffc6503,0xfffd1f3a,0xfffcc1f1,0xfffa3071,0xfffc4dae,0xfffd3238,0xffffc2a5,0xfffd4e7b,0xfffcdd2d,0xfffc87ce,0xfffd5190,0xfffde366,0xfffb279c,0xfff5a58a,0xfffcce25,0xfffc043c,0xffff2fff,0x0001548f,0x0001d662,
-0x0001444d,0x00018d85,0x00018c3b,0x00019315,0x0001652d,0x0001ec21,0x00014bcd,0xffffffab,0xfffc5c6d,0xfffd5b52,0xfff7a853,0xfffad841,0xfff9f8f0,0xfff6f6ff,0xfff4b0e7,0xfff71849,0xfff936f8,0xfffa58dc,0xfffdce68,0xfffca414,0xfff56272,0xfffa40e3,0xfffcfa4b,0x0003153e,0xfffd57c9,
-0xfffbb6f3,0xfffb5843,0xfffced40,0x00009384,0xfff8eec3,0xfffa1286,0xffff540b,0x0000ff67,0x0000abb6,0xffffb8b1,0xffff67c5,0xffff9fd2,0xffff998e,0xffff89ab,0xffffa1dc,0xffff9da4,0xffff879e,0xffff9eba,0x0000aba2,0x0000b494,0x00007770,0xfffba887,0xfffa4725,0xfffb45f2,0xfff6fb84,
-0xfff332c1,0xfff76ea1,0xfffa634a,0xfffb10bb,0xffff70a4,0xfffc6d8b,0xffefab01,0xfffad4f1,0xfffeee66,0x000c47c4,0xfffe49e6,0xfffd7590,0xfffda383,0xfffedf8c,0xffffedfe,0xfff5e0c3,0xfffcb83f,0x00018e4b,0xffff487b,0xffffd5a9,0xfffffda3,0x0000492c,0x0000239e,0x00002a79,0x00002c32,
-0x00002700,0x00001eda,0x00003d77,0xfffffe9e,0xffffe8bf,0xffff2d11,0x00015857,0xfffcb29c,0xfff6d6f6,0xfff3b205,0xffe9af5c,0xffe12675,0xffe7e40c,0xffef7a46,0xfff50d68,0xfffff06c,0xfff997b3,0xffe3c82e,0xfff1f7e4,0xfffe17de,0x00110987,0xfffdb43e,0xfff6fe62,0xfff92f2f,0xfffc524e,
-0x00025337,0x0002a673,0xffff8f6b,0x0000abd0,0xffff9195,0x00007021,0xffffda9d,0xfffff1fc,0xffffe5e6,0xfffff0e5,0xffffe939,0xfffff1c0,0xffffeb1c,0xfffff190,0xffffe7ae,0x00004932,0xffffdea6,0x00004d3a,0x00004677,0x0004cb46,0x00104c1e,0x0018e24c,0x00239cf5,0x00284568,0x00228d39,
-0x00101fe5,0x00083911,0x0009a965,0x00102203,0x001b14db,0x0015d58f,0xfffebda6,0x000e333e,0x0013f2ba,0x00199d70,0x00047dee,0x00104f14,0x00089a24,0xfffdcdfa,0x00008996,0xfffff0d9,0xffffdb5e,0x00000ad9,0x000008b0,0x00000c3d,0x000008b2,0x000009a2,0x000009c5,0x00000618,0x00000fe3,
-0xfffffa23,0xfffffa24,0xffffd6ff,0x00005217,0xffff2ac0,0xfff99408,0xfff0b954,0xffe58b09,0xffdf203c,0xffdbb945,0xffe54dd1,0xfff71776,0x000d074b,0x0014bb55,0x000aaca6,0x00042146,0xfffb5b3e,0xffefb69a,0xfffcb245,0x00084037,0x001517f3,0x00161127,0x00093558,0x001333e0,0x00035ada,
-0xfffdece5,0x0000cd09,0xffffd464,0x000010f3,0xfffff501,0xfffff9c9,0xfffffb94,0xfffff8ce,0xfffffd70,0xfffff590,0x00000410,0xffffe85b,0x00003c3c,0xffffafc6,0x00007825,0xffff5e9c,0x00051c4f,0x0013347e,0x001b5b2f,0x0023e809,0x0029ffd0,0x001ff277,0x00079458,0xfff250d6,0xffed67fc,
-0xfffc0a44,0x001521fa,0x001cf869,0x001264b9,0x0001a15f,0xffee0820,0xffe54ed1,0xfffa2b17,0xffe4080c,0xffd0260d,0xfffde6e0,0x00035a45,0xfffe325a,0x0000afc6,0xffffa8df,0x00002c54,0xfffff455,0x00000c6c,0x000000d1,0x00000799,0x000000e2,0x00000e57,0xffffee34,0x000020dc,0xffff74d5,
-0x0001771a,0xfffd63e4,0xfff35717,0xfff533ab,0xfff28ce6,0xfff0c601,0xfff2af60,0xfff5b069,0xfff91f86,0x000b8493,0x00175732,0x00206b1e,0xfff76cb3,0xffe400fa,0xffe9c60b,0xfff96747,0x000acce4,0x001cf832,0xfff30fec,0x001a4bc2,0xffd253ca,0xfff24035,0x000497d4,0xfffe661e,0x0000e9bc,
-0xffffa828,0x00001f44,0xffffe5aa,0x00000265,0xfffff4e6,0xfffffa62,0xfffffa03,0xfffff0ee,0x00000bae,0xffffeecb,0x00009119,0xfffe74ea,0x0002006e,0x000d1f59,0x000a2dfc,0x00076a48,0x0003ac11,0xffff9b18,0xfffb4267,0xfff4d4e6,0xfff3b1b9,0xfff0c647,0xfff52049,0xfff74d4e,0x000121de,
-0x000c6e22,0x00166212,0x001cf51a,0x00248026,0x0028ed86,0x000064aa,0x00088401,0x00084a68,0xfffe6c69,0xffffb48d,0xffffceef,0xffffec5c,0x00002302,0x00000788,0x00001134,0x00000eb0,0x00000dcc,0x000011f0,0x00000eb4,0x00001786,0xffffba29,0xffffede5,0xffffe14b,0x00064469,0x000b6046,
-0x0009f7f5,0x00093aa6,0x0005a667,0x00031754,0xffff0a8f,0xfff9c41f,0xfff7c462,0xfff75ba0,0xfff73249,0xfff85130,0xfff8f37d,0xfffb3c60,0xfff85967,0xfff8ef2a,0xfff9de92,0xfff9fb64,0x0008280e,0x0007ffad,0x00026ac4,0x000141cc,0x0000cfdc,0x000092de,0xffffe7ed,0xffffbbde,0xffffd788,
-0xffffd07a,0xffffd1a3,0xffffd03e,0xffffd62b,0xffffbf3d,0xffffe030,0x00003980,0x0000cfc2,0xffff4b9e,0xfffa0fb2,0xfff9983d,0xfffa4052,0xfff9409a,0xfff918c7,0xfff7e852,0xfff6e7b3,0xfff598f6,0xfff678c0,0xfff69f5f,0xfff6cae1,0xfff9c28e,0xfffc6941,0xffff408f,0x0000e276,0x00025cad,
-0x000498a4,0x0006a69f,0xfffaf371,0xfffac9eb,0xfff840b9,0xfffd4ffd,0xfffcf1e1,0xffff174c,0x0000f44a,0x0001171a,0x0000e004,0x0000f445,0x0000e799,0x0000ef06,0x0000da97,0x000102cf,0x0000e889,0xffffcc6d,0xfffe2f99,0xfffdc492,0xfffe51d8,0x00004c5d,0xffff1b6c,0xfffe40d7,0xfffda67d,
-0xfffcbf22,0xfffc2661,0xfffb614d,0xfffc06df,0xfffc8a6c,0xfffcb345,0xfffc8999,0xfffc1a11,0xfffbacba,0xfffb87c9,0xfffb6675,0xfffae3cc,0xfffa9a0c,0xfffc88b6,0xfffd4db8,0xfffa04b2,0xfff83818,0xfff80ab7,0xfffa93a5,0xfff90f2f,0xfff97e4a,0xfff976fc,0xfff99e6d,0xfff9b54b,0xfff9d77c,
-0xfff9eeb5,0xfffa2b37,0xfff9d76f,0xfffb6c20,0xfffa327f,0xfffab924,0xfffc08fb,0xfffded11,0xfffd2560,0xfffd0564,0xfffcabe4,0xfffc79b0,0xfffc3bef,0xfffbcdd0,0xfffbeb08,0xfffbe7f5,0xfffc1453,0xfffc3bdd,0xfffc814e,0xfffcc7b4,0xfffcb993,0xfffcb570,0xfffcd6d3,0xfffccbc7,0xfffc12e7,
-0xfffbcae3,0xfffca72e,0xfffaf317,0xffff33ce,0xffff8339,0xfffc8868,0xfffe5cb8,0x00000051,0x000061e0,0xffffa06d,0xffff5a35,0xffff55a5,0xfffec5f9,0xfffe85b2,0xfffe961f,0xffffb16d,0xfffeb32a,0xfffb9709,0xffffe4e8,0xffffdc87,0xfffbcbd4,0xfffc04d9,0xfffbae51,0xfffada84,0xfffbc49b,
-0xfffc1543,0xfffc395f,0xfffc9336,0xfffc3e06,0xfffa60e3,0xfffbfd90,0xfffcb81e,0xfffe9334,0xfffd2a09,0xfffcf69a,0xfffccd08,0xfffced44,0xfffc7f89,0xfffb9002,0xfffeda53,0xfffd8b59,0xffff8031,0x00000758,0xffffddb6,0x00000509,0x00001a00,0x00004539,0x00004de1,0x00007a40,0x00008f78,
-0x00009a50,0xfffff89b,0x00000f46,0xffff9453,0xfffe51d5,0xffffcc8f,0xfffc5f59,0xfff99f94,0xfff85bc1,0xfff62518,0xfff84628,0xfff9b21f,0xfffa9108,0xfffca4b1,0xfffbc9a3,0xfff6cff2,0xfffa84ae,0xfffcf90c,0x0001a66a,0xfffeba27,0xfffdb0ea,0xfffd07cc,0xfffd6a2f,0xfffd48fc,0xfff95566,
-0xffff97df,0x00002a2d,0x00008f06,0xfffffc24,0x000013fa,0xfffff8c5,0xfffff6fd,0xffffe886,0xffffe099,0xffffd688,0xffffc9e8,0xffffcf73,0xffffff6c,0x000002cf,0x00007e7e,0x000001c6,0x0000baff,0xfffd67c9,0xfff9e75f,0xfff87420,0xfff4ebc4,0xfff905eb,0xfffb3874,0xfffc24a7,0xfffe0b7b,
-0xfffb8f18,0xfff29ac5,0xfffb0226,0xfffea97d,0x00083748,0x0000bf93,0x0000319f,0xffff2f51,0xffff24f2,0xfffbfccb,0xfff79012,0x0000be9e,0xffffbda9,0xffffe6a1,0xffffe31d,0x0000057b,0xfffffcc9,0x000007cf,0x000008a6,0x00000f8e,0x00001144,0x00001a22,0x00000f90,0x00000abb,0xffffe9d8,
-0xffffdbd7,0xffffe89f,0xfffffc9c,0xfffad3ad,0xfff397f9,0xffeeeb18,0xffe7f906,0xffee8eef,0xfff43b34,0xfff81110,0xfffe2db7,0xfff90a61,0xffe9bebd,0xfff4edb4,0xffff7854,0x000dd07e,0x00041b2c,0xffff03e1,0xfffdce4a,0xfffec3e4,0xfffcb777,0x0005c8ec,0x0001181e,0xffff667b,0x000057cd,
-0xffffefe4,0x00000afc,0xfffffa48,0xffffff06,0xfffff974,0xfffff98d,0xfffff590,0xfffff623,0xfffff358,0x00000507,0xfffff4f1,0x00004605,0xffff936a,0x00009a35,0x0008a422,0x000b02ce,0x0011b55b,0x0015bae0,0x001a017e,0x0013fc3b,0x00052f0b,0xfffe9578,0x00003285,0x00061227,0x00100e3a,
-0x000cd664,0xfffb1493,0x0008f944,0x000c89fc,0x000e3676,0x0000e91b,0x000650ab,0x00062ee0,0xfffeec1a,0x00001c16,0x0000056d,0xffffe753,0x00000c82,0xfffffb28,0x00000637,0x00000217,0x000005c4,0x000004b3,0x00000852,0x000001d0,0x00000900,0xffffee98,0x000004af,0xfffffb6f,0xfffffb7d,
-0xfffafd2d,0xfff1a881,0xffeb9e75,0xffe62fa7,0xffe52e9f,0xffee09d4,0xfffd8370,0x000dd0cf,0x001204a1,0x0007a16a,0x00026d2a,0xfffda2d0,0xfff79143,0x0004857d,0x000c4cfd,0x001146a5,0x00100465,0x00063d90,0x000ba5f8,0x000088a5,0xffff372c,0x00006955,0xffffdf55,0x00000c1f,0xfffff7a1,
-0xfffffdb4,0xfffffad5,0xfffffb98,0xfffffa80,0xfffffac5,0xfffffae3,0xffffff3a,0xfffffdd7,0x0000217f,0xffffaa3b,0x000098e4,0x0004bde4,0x000cc99a,0x001535c7,0x001b5387,0x001ccc4d,0x00133fe3,0x00011f2b,0xfff0ae54,0xffeda6f7,0xfffb570b,0x0009a855,0x000f81d3,0x000e95dd,0x00011d5f,
-0xfff4953e,0xfff1e56d,0xfffd2dc2,0xffedeb2a,0xffe2f776,0x00021a80,0x000059a3,0xffff95c2,0x00002a74,0xffffee1e,0x0000105a,0x000003dc,0x0000091a,0x00000712,0x00000773,0x0000086e,0x00000579,0x0000044b,0x000000a5,0xffffd85a,0x00005d4c,0xffffa4a1,0xfff83b12,0xfff6f1f0,0xfff613fd,
-0xfff4d381,0xfff79ee1,0xfffb1e42,0xfffed804,0x000f9431,0x001783ea,0x001ac182,0xfffaa381,0xffeca4ec,0xfff144f1,0x00003373,0x000eea50,0x001e67b2,0xfffbcc30,0x001dd693,0xffec33e4,0xfffd3850,0x0001777f,0xffff9789,0x000035b5,0xffffe78a,0xfffff75a,0xffffedb9,0xfffff1e6,0xfffff1a8,
-0xfffff043,0xfffff53d,0xffffeb3e,0x00000ba2,0xffffd9b8,0x00007d8f,0xffff2caf,0x00009a8c,0x000a5af2,0x00068ef4,0x00055acf,0x00011354,0xffff5006,0xfffcc940,0xfff91bba,0xfff875a2,0xfff77a65,0xfffc8c6f,0xfffce968,0x0004d699,0x000e3cd3,0x00192a9b,0x00205dfc,0x00269984,0x0029b04e,
-0xfffd31b4,0x0008e8cf,0x000454eb,0xfffdade9,0x00009be8,0xffffa603,0x00002db9,0x0000157c,0x00002662,0x00001ca5,0x00002098,0x00001b58,0x00002190,0x000012fc,0x00001f08,0xffffd52e,0x00001d2a,0xffff28ff,0x0002d5b6,0x0008f941,0x0006dff8,0x0006f4c9,0x0004b323,0x0003fb43,0x000156eb,
-0xfffd8868,0xfffb1073,0xfff9b766,0xfff8e4b3,0xfff937ac,0xfff8bd49,0xfff8d645,0xfff54b68,0xfff5ba01,0xfff74d97,0xfff8c171,0x00066c71,0x0008dfea,0x00044470,0x00000f34,0x00008b9d,0xfffffafd,0xffffe844,0xffffa977,0xffffb951,0xffffb747,0xffffbb44,0xffffbc03,0xffffbfab,0xffffbd3b,
-0xffffe5bb,0x00000052,0x00005bdf,0x00009bb4,0xfffdc049,0xfffb3186,0xfffa86a6,0xfffa59c9,0xfff9deef,0xfff91052,0xfff840ef,0xfff75f71,0xfff82b36,0xfff8ac46,0xfff92251,0xfffb573b,0xfffd509d,0xffff74c3,0x00014f74,0x0002e9e2,0x000474f3,0x0006aa85,0xfffc2857,0xfffc92d7,0xfffd2155,
-0xfffee14b,0xffff52bb,0x000014f6,0x00006b7e,0x0000eb52,0x0000c626,0x0000cae1,0x0000bfb1,0x0000bd2c,0x0000b3a6,0x0000b82b,0x00005f42,0x00000719,0xffffccca,0xfffdab89,0xfffe85a8,0xfffd85d3,0xfffcdf2e,0xfffc69f2,0xfffc0049,0xfffb7f10,0xfffb2747,0xfffaacad,0xfffae25c,0xfffb19a5,
-0xfffb3f14,0xfffb5017,0xfffb4a09,0xfffb3be6,0xfffb4dbe,0xfffb8a12,0xfffb79fb,0xfffbc4ad,0xfffc964c,0xfffcace0,0xfffd81ec,0xfffd5832,0xfffc05fa,0xfffda732,0xfffe5c8a,0xfffde7fa,0xfffdec96,0xfffe0804,0xfffe1248,0xfffe26b3,0xfffe2e75,0xfffe403d,0xfffee89b,0xfffdded5,0xfffd2eee,
-0xfffe75b0,0xfffe0ce9,0xfffbed02,0xfffc0e60,0xfffbd6a7,0xfffb984a,0xfffb6f49,0xfffb3cb0,0xfffaefe0,0xfffb1f85,0xfffb3d22,0xfffb715c,0xfffb9ea2,0xfffbdfbd,0xfffc2fd6,0xfffc483e,0xfffc5e4d,0xfffc89b2,0xfffc9706,0xfffb6749,0xfffbd5fa,0xfffc86f2,0xfffc539e,0xfffaa6b8,0xfffaac97,
-0xfffc6457,0xfffe3fd3,0xfffe2a23,0xffffeb05,0xffff7029,0xffff56c9,0xffff62aa,0xffff2d60,0xffff1ec6,0xffff6225,0xfffe2528,0xfffe61d6,0xfffc27e1,0xfffb6057,0xfffb4c7b,0xfffcc3ad,0xfffc1e9b,0xfffbd5d2,0xfffb4b4c,0xfffbeb3f,0xfffc10ec,0xfffc0070,0xfffc338e,0xfffc0099,0xfffaf438,
-0xfffbc94b,0xfffc2a9f,0xfffd5be3,0xfffc3800,0xfffc3394,0xfffcb0d9,0xfffcabaf,0xfffd0694,0xfffaf353,0xfffb3d71,0xffffea5b,0x00005bdf,0x00011c64,0x00007688,0x000040f7,0x000027d1,0x00004b04,0x0000422b,0x000059a7,0x00004a78,0x00006baa,0x00007830,0x000129fd,0x0000212f,0x00006752,
-0xfffd4735,0xfffb97e8,0xfffa93ad,0xfff8d2c2,0xfff7bab6,0xfff9510f,0xfffa5c92,0xfffa9e2f,0xfffbcaa0,0xfffb1a76,0xfff814f0,0xfff9f7e0,0xfffb32fe,0xfffe213a,0xfffba73e,0xfffb7a7f,0xfffcdb83,0xfffcb1b5,0xfffe4f8b,0xfff8b0d9,0xffff23d6,0x0001167f,0xffffa413,0xffffbe2b,0xffffc580,
-0xffffec36,0xffffece5,0xffffe909,0xffffe3a9,0xffffe3ea,0xffffdfe0,0xffffe012,0xffffc31c,0xffffb58a,0xffffcf6f,0x00008501,0xffffeed8,0xfffc41a4,0xfffb10b3,0xfff8d588,0xfff68368,0xfff963ee,0xfffab81b,0xfffa6602,0xfffb9932,0xfff9ee1e,0xfff4f303,0xfff944a9,0xfffaf173,0x0001210b,
-0xfffae948,0xfffbc1dd,0xfffec8b8,0xfffd68a7,0xfffe1ef8,0xfff82d43,0x00013f95,0xffff914c,0x00000d3d,0x0000264c,0x000015cd,0x00000bcd,0x000007dd,0x00000a91,0x00000c72,0x00000cfc,0x00000d53,0x000010c4,0x00001741,0x00002991,0xfffff9cb,0xffffe430,0x00004b79,0xfffb5a50,0xfff62375,
-0xfff0ec8e,0xffec8b07,0xfff19a3e,0xfff59abb,0xfff73c36,0xfffab80a,0xfff7698e,0xffee7fb1,0xfff3b60a,0xfff94e9d,0x0002695a,0xfffa631e,0xfff98962,0xfffeaffd,0xfffdd032,0xfffc4200,0xffff3ad0,0x0000a2d9,0xffffcf86,0x00001a78,0xffffe5a7,0xfffff717,0xfffff993,0xfffffbc8,0xfffffac8,
-0xfffff9dd,0xfffff95e,0xfffff9d7,0xfffff6b0,0xfffff665,0xffffe7d8,0x000010a6,0xfffff3e2,0xffffdbd4,0x0003e2bf,0x00083e37,0x000d3ba4,0x0011e682,0x00109bc2,0x000c3e58,0x0004f22d,0x000037d3,0x00014879,0x00045782,0x000aa6c3,0x0006af3a,0xfff72e87,0x00016a1c,0x0003f9b3,0x00057013,
-0xfffd4e4b,0x000719ce,0x000361a5,0xfffe8b3a,0x00008619,0xffffcaaf,0x00001b76,0x00000056,0x000005be,0x00000237,0x0000035b,0x000003db,0x0000034d,0x0000050e,0x0000023e,0x00000c35,0xfffffec3,0x00001377,0xffffc55d,0x0000e237,0xfffa458d,0xfff30da1,0xffed55e0,0xffe986c2,0xffebd543,
-0xfff377f9,0xfffde977,0x00093fe3,0x000be025,0x0004bb06,0x0000be4a,0xfffd12c8,0xfff8b7be,0x00017fa6,0x00072404,0x000bd8dd,0x000a77c8,0x00024b0a,0x00047302,0x00001318,0xffffc3c2,0x00002344,0xffffea09,0x0000019e,0xfffff970,0xfffffe84,0xfffffc26,0xfffffd25,0xfffffc4e,0xfffffd27,
-0xfffffb1c,0xfffffcff,0xfffff2cf,0x0000121e,0xffffe1f3,0xffffff0f,0x00025c3a,0x0009b3c1,0x000e7d82,0x00126e7e,0x00108e0a,0x000823fe,0xfffb24e1,0xfff13b63,0xfff1a148,0xfffdacae,0x0006317f,0x0006bdd3,0x00011ef6,0xfff46281,0xffecf8fa,0xffef4b22,0xfffb60a7,0xffef156c,0xfff05ba1,
-0x00033374,0xfffefeff,0x00006132,0xffffde42,0x0000196f,0xfffffc87,0x000008a8,0x000002e7,0x0000059b,0x00000467,0x000004a5,0x000005d4,0x0000047a,0x00000f6e,0xffffee02,0x00001223,0x00005319,0xfffb62d2,0xfff9fa9c,0xfff82f19,0xfff77582,0xfff8a93a,0xfffbc030,0xffff85da,0x000a9e06,
-0x000e04d4,0x000c9285,0xfff77639,0xffefe621,0xfff73b97,0xfffaeace,0x00014002,0x0008ec16,0xfff497ab,0x000dff23,0xfff42043,0x0001f287,0xffff80db,0x00003cc6,0xffffd17a,0x0000047f,0xffffee57,0xfffffad0,0xfffff516,0xfffff7ea,0xfffff6c3,0xfffff798,0xfffff646,0xfffff55f,0xffffed5e,
-0x0000029f,0x000025e7,0xffff2b84,0x00054276,0x0003ae84,0x0002ac48,0x000011d8,0xfffe5127,0xfffbd862,0xfff7f275,0xfff72728,0xfff617c4,0xfff8711d,0xfffaf044,0x0000bdda,0x00076cd4,0x000d26ac,0x0011ad3d,0x0017087b,0x0015d86c,0xfff9b675,0x00010b2b,0x0000ec08,0xffff3a4f,0x0000590b,
-0xfffff9d9,0x0000288d,0x00000bc5,0x00001714,0x000010c7,0x000013bc,0x000011b9,0x00001220,0x00001300,0x000017bb,0x00001f03,0x0000131b,0xffffa438,0x0000533a,0x00060660,0x0004cdcb,0x00049736,0x000315a0,0x00018d89,0xffffa083,0xfffd8593,0xfffc553d,0xfffc53ec,0xfffca413,0xfffc26e1,
-0xfffa9a63,0xfff8892f,0xfff69d5a,0xfff611b3,0xfff65bae,0xfff69533,0x0004b0cd,0x0006513a,0x0000d934,0xffffe3e0,0x00000cb7,0xffffa453,0xffffd6c5,0xffffce86,0xffffd684,0xffffd567,0xffffd542,0xffffd7a1,0xffffd688,0xffffd7e2,0xffffc633,0xffffc541,0xffffb175,0x0000e09b,0xffff3472,
-0xfffbaa15,0xfffc6980,0xfffc0d50,0xfffc2841,0xfffb91f9,0xfffb190e,0xfffa80b8,0xfffa65f9,0xfff9f789,0xfff99127,0xfffaf066,0xfffc7042,0xfffdf7a6,0xffffa9a1,0x0001257e,0x0002c990,0x00046ece,0xfffcd85d,0xfffd1e16,0xfffe340e,0x00005957,0x00004b76,0x0000e226,0x000077b2,0x000088db,
-0x00007082,0x00007951,0x00007289,0x000076a7,0x0000677b,0x00008106,0x000079b3,0x0000ec25,0x00006177,0xffffeab6,0xfffd1233,0xfffd4d59,0xfffd7478,0xfffcd667,0xfffcaef9,0xfffc517f,0xfffc217e,0xfffbe61b,0xfffc31c1,0xfffc6896,0xfffc597f,0xfffc2c2a,0xfffbc204,0xfffb4ac1,0xfffb9900,
-0xfffbe2f9,0xfffbf96d,0xfffc4952,0xfffd15dc,0xfffd5239,0xfffbcb3c,0xfffbda04,0xfffc9b6c,0xfffed08c,0xfffe5fb0,0xfffedfa3,0xfffed35c,0xfffed91b,0xfffedd04,0xfffee211,0xfffee569,0xffff00d0,0xfffe538a,0xfffeaa86,0xfffc9b92,0xfffbac2f,0xfffbed99,0xfffcfe6e,0xfffc8192,0xfffc7c83,
-0xfffc5dbf,0xfffc49c5,0xfffc32a5,0xfffc0726,0xfffc0a5c,0xfffc085f,0xfffc237a,0xfffc3196,0xfffc55f6,0xfffc665b,0xfffc934e,0xfffcafe7,0xfffce518,0xfffcf982,0xfffbc700,0xffff04d4,0xffff1cfa,0xffff2f40,0xfffeecd2,0xfffe6b9f,0xfffd38cd,0x00009bcd,0x00004871,0x000045ba,0x000048d8,
-0x00004836,0x0000482a,0x0000483a,0x000048ce,0x000045d9,0x0000478a,0x0000a3c4,0xfffcff66,0xfffeb67a,0xffff6a5c,0xffff73ac,0xffff0c35,0xffff0de3,0xfffed014,0xffff2482,0xffff37b4,0xffff2bca,0xffff328e,0xffff1935,0xfffea931,0xffff18e7,0xffff5119,0xffffe126,0xffff6b78,0xffff58ae,
-0xffff5143,0xffff53f6,0xffff4c60,0xfffebcce,0xfffe479a,0x0000b07d,0x0000cedd,0x000009af,0xffffcc5b,0xffffee91,0xffffe36d,0xffffe6d8,0xffffe55a,0xffffe702,0xffffe2f3,0xffffefdd,0xffffc8d9,0x0000111f,0x0000d070,0x0000a256,0xfffeccdd,0xffff633b,0xfffe7cae,0xfffe0c15,0xfffd9cb2,
-0xfffe7355,0xfffedce1,0xfffeddd9,0xffff328b,0xfffee07a,0xfffdb0b8,0xfffeaddf,0xffff67d0,0x0000c27f,0xffffd759,0xffff831d,0xffff6f8e,0xffff5f3f,0xffff90d5,0xfffd91c0,0x0000d4b7,0xffffd707,0xffffbe87,0xfffff042,0x000013f1,0x00000706,0x00000929,0x0000096a,0x000008ba,0x000009cd,
-0x0000083a,0x000008be,0x0000116b,0xfffff305,0xffffb6dd,0xffffeafd,0x000047d1,0xffffb485,0xfffeea93,0xfffe6485,0xfffd860d,0xffff22ef,0xffffb5d8,0xffff6883,0xffff7e7b,0xfffeb4a5,0xfffcc796,0xffff01b3,0x000014da,0x0002d2a4,0x00006491,0x00003645,0x000042ff,0xffffc3a0,0xfffef5f5,
-0xfffd6b47,0x0000a5c9,0xffffb5a5,0x00003b23,0xfffffc0b,0xfffffd6d,0xfffff9d6,0xfffffd2b,0xfffffb7b,0xfffffc12,0xfffffc06,0xfffffbb1,0xfffffd5e,0xfffff4ea,0x000010bc,0x00000c80,0x00001e48,0xffffe258,0xffff21da,0xfffcba7e,0xfffb2761,0xfff9e15c,0xfffcb1b1,0xfffe8561,0xfffeaf17,
-0xffff71e3,0xfffdc0ac,0xfffa311d,0xfffd11b6,0x00001ab9,0x00043460,0x00010b6a,0xffffaac9,0xfffff7f9,0xffffb9db,0x0000192d,0x000195f7,0xffff9860,0x00002d54,0xffffe010,0x0000043d,0xffffff1f,0x00000447,0x000000d7,0x0000029c,0x00000192,0x000002b3,0x00000096,0x000004e3,0xfffffdce,
-0x000006f5,0xffffd7f6,0x000048b8,0xffff1547,0x0003b144,0x0006db8b,0x000831e2,0x0009bbc8,0x0007cdf4,0x00051992,0x00018a50,0x000017d7,0x00015901,0x000377b3,0x0007173b,0x0005d4b8,0xfffec967,0x0003e963,0x0004705d,0x0003c31c,0x00007f6c,0x00037e4c,0x00025f49,0xfffef0da,0x00007310,
-0xffffd40d,0x00001818,0xfffff525,0x0000027c,0xfffffd22,0xffffff94,0xfffffe4c,0xffffff28,0xfffffe55,0xffffff80,0xfffffc60,0x000006a8,0x00000032,0xfffffe78,0x0000554f,0xfffd980c,0xfffa9747,0xfff8da4a,0xfff82325,0xfff8b268,0xfffbf1a5,0x00008910,0x00057be8,0x00064280,0x000264d1,
-0x00007fbc,0xffff0cf1,0xfffd11b3,0x0002f0fb,0x00058a2c,0x000621eb,0x00056374,0x00013286,0x00014ce5,0xffffeb0c,0xfffff6fe,0x000001f8,0xfffffba1,0x00000245,0x0000010f,0x00000128,0x00000122,0x0000011f,0x00000138,0x000000ee,0x0000018d,0x00000141,0xfffffdbf,0xfffffc23,0x00000689,
-0xffffb5e9,0x0001f48c,0x00052f66,0x00074603,0x00091731,0x0008a418,0x0005700d,0x0000233e,0xfffb75aa,0xfffb68fd,0x0000e795,0x00049fa5,0x00062f86,0x00064858,0xffffcfc9,0xfffbdaa3,0xfffd045c,0xffff2e1f,0xfff9cca9,0xfffab264,0x00015c82,0xffff90e7,0x00002f6e,0xfffff094,0x00000534,
-0xfffffafa,0xffffffaf,0xfffffdcf,0xfffffe5f,0xfffffe81,0xfffffdd0,0xffffff5c,0xfffffb23,0x000007bb,0xfffffafc,0x00000fb4,0x0000102e,0xfffeaf5c,0xfffe17e8,0xfffde8d6,0xfffe09c3,0xfffe8b9c,0x0000017a,0x0001d964,0x0007ce81,0x0008de6f,0x000699c9,0xfffc4a69,0xfff92ffb,0xfffda1b8,
-0x0002331d,0x00070a79,0x000c1213,0xfffef7a9,0x000d5db1,0x00004ff3,0xffffc426,0x000015c3,0xffffed2f,0x000000bb,0x000002fb,0x0000040b,0x000002c2,0x0000037c,0x000002ea,0x000003dd,0x000001ca,0x00000623,0xfffffeb3,0x00000985,0xffffd8cc,0x00003dd7,0xffff5c0d,0x00027513,0x0001ce60,
-0x0000edde,0xffffc8be,0xffff0deb,0xfffe679d,0xfffd755f,0xfffd40e3,0xfffd551a,0xffff6795,0x0000936e,0x00041f47,0x0008947b,0x000c7c32,0x000f2243,0x0011ee43,0x0010b317,0xfffdca35,0x00012ed5,0xffff4a16,0x00005761,0xfffff2a7,0x000013e1,0xffffef2f,0xfffffc50,0xfffff831,0xfffff9cf,
-0xfffff8e2,0xfffff9ab,0xfffff89e,0xfffffb39,0xfffff1d8,0x00000d25,0x000006a9,0x00003a88,0xffff406e,0x0002a47f,0x0002c6f0,0x0002ea46,0x00027885,0x00020193,0x000120a7,0x00001257,0xffff3bdd,0xfffeba89,0xfffe44e0,0xfffe1841,0xfffdb319,0xfffd9931,0xfffbc6c1,0xfffb2e67,0xfffb7519,
-0xfffba2bb,0x000362f8,0x00045a9a,0xffff839b,0x00000d1c,0xffffb64c,0x0000050d,0x000012f6,0x00001080,0x00000de5,0x0000105e,0x00000e97,0x00001046,0x00000e25,0x00000fe5,0x00001463,0x0000027c,0xffffb52d,0xffffe488,0x00008976,0xfffe8840,0xfffea085,0xfffe5d42,0xfffe4444,0xfffdf780,
-0xfffdbbd7,0xfffd6afc,0xfffd9e86,0xfffdb995,0xfffdcff0,0xfffeb3bf,0xffff7f24,0x0000683c,0x00012a30,0x0001e985,0x00029bbd,0x00036100,0xfffedeb1,0xffff85d7,0xffff4b1b,0x0000a216,0x0000a2ea,0xfffff3b2,0xffffbd00,0xffffdc19,0xffffd193,0xffffd506,0xffffd373,0xffffd513,0xffffd163,
-0xffffdcba,0xffffbb3e,0xfffff639,0x0000adfa,0x0000d807,0xfffeaced,0xfffde710,0xfffe293d,0xfffdebe1,0xfffde676,0xfffdc41e,0xfffdb677,0xfffd9b79,0xfffde2f1,0xfffe239a,0xfffe542f,0xfffe7b2f,0xfffe965b,0xfffeb097,0xfffeba05,0xfffecbed,0xfffebd35,0xfffee693,0xffff059e,0xffff1055,
-0xfffea403,0xfffe8046,0xfffdc451,0x0000c589,0x00007983,0x000077c3,0x00007a6d,0x000079da,0x000079d6,0x000079db,0x00007a70,0x000077ad,0x00007957,0x0000caeb,0xfffd96db,0xfffe38c4,0xfffe17ea,0xfffe8d40,0xfffe4caf,0xfffe4a9f,0xfffe3b3c,0xfffe31ec,0xfffe284d,0xfffe0fda,0xfffe30ff,
-0xfffe4917,0xfffe6ce4,0xfffe8b83,0xfffeb014,0xfffedc7c,0xfffede07,0xfffee879,0xfffef944,0xffff0401,0xfffe5825,
-};
-const UWord32 defaultHRIR_rom_AlphaL32_fx[470 * 86] /*Q30*/= {
-0x100cd6e0,0x03ada060,0x1363aec0,0x0eeb9f60,0x101f3420,0x0ffc18c0,0x10e4c040,0x113b8380,0x117faa40,0x10f36460,0x109615e0,0x1029fa80,0x0fd129a0,0x0f89b9a0,0x0f672bf0,0x0f4293d0,0x0f1fca20,0x0f0cc6c0,0x0edc4f60,0x0de07780,0x11af0240,0x02fb58f8,0xfd048398,0xf50b7dc0,0x06155418,
-0xfd68e604,0xf5f7de90,0xf5a34550,0xf5febb10,0xf7c14d10,0xf5e3f200,0xf56df070,0xf5e14d60,0xfd7c6ae4,0x0836d5d0,0xf5ceff80,0xfc4e19a0,0xfa81c158,0x11195200,0x12a23f40,0x12b60200,0x13902ca0,0x1610a420,0x17304340,0x175cbae0,0x16139d80,0x14bec2c0,0x135466e0,0x123a1600,0x118c51c0,
-0x1147b520,0x10ed2ba0,0x10739900,0x1066d060,0x0f427540,0x0f908120,0x0d5b2440,0xfc723054,0x07825ef8,0x05f29028,0x05698548,0x035f134c,0x06fd5468,0x07d6dce0,0x070d2a78,0x03aefedc,0x07bd4520,0x0acd1e20,0x06d3d4d0,0x07f90c48,0x04391780,0x03b60b90,0x0c5eb790,0x03ee4574,0x0ec7ef40,
-0x16230040,0x148da300,0x169f11e0,0x1b4fb840,0x1d7312c0,0x1e01c8e0,0x1b969e60,0x190ef520,0x16d8fc20,0x14c347a0,0x13497120,0x129cad80,0x11d0a840,0x10e6c140,0x10d29440,0x0e540230,0x0f6c0450,0x08a62a30,0x02285aec,0x02c3d800,0x03268020,0x0391b0bc,0x000747d7,0x03c639b0,0xffbd4537,
-0x065fbdb0,0xfebff18e,0x05244be8,0xffbce0c2,0x026b7e20,0x029aa9d8,0x035712c0,0x01a8e7fc,0x07551268,0x011aca3a,0x0e330110,0x17115340,0x1685ee80,0x1a0694a0,0x21b75480,0x25450e80,0x25bdbbc0,0x215558c0,0x1cfcf900,0x18f1c4e0,0x15929940,0x13880b00,0x12f32b80,0x11cc58c0,0x1099d1e0,
-0x107970a0,0x0dea8840,0x0d3af3d0,0x074b9e00,0xff7b70c4,0x043e20e0,0xff296f1c,0x018e0988,0x0172e4c4,0x0148ca8e,0x00618182,0xfff7b9f3,0x02204190,0x004d3af9,0x02154c8c,0x025203ec,0x02c4b740,0x01b6cfbc,0x0294dcd0,0x06f2f438,0x03f574c0,0x160f67a0,0x1ecf6520,0x1e3abf80,0x20232dc0,
-0x23f5e2c0,0x26956bc0,0x285268c0,0x28ed4dc0,0x276a82c0,0x21f222c0,0x219c43c0,0x1effa1a0,0x1aab64c0,0x19d37ba0,0x176c8160,0x153d2c20,0x1010d3a0,0x0f875ef0,0x08ad3750,0xff7e38a0,0x043c1268,0x01467eda,0x0134534a,0xffd2ef5a,0x006cdd4d,0x00828aa6,0x012704c2,0x01b981f4,0x00f1b331,
-0x01e54d5c,0x00e25d4e,0x03e8937c,0x015708ca,0x043cf950,0x045d2090,0xff0df9d8,0x0d7c6610,0x213760c0,0x1f630c40,0x25c81380,0x28c41c40,0x29e7e080,0x28062400,0x25eb6000,0x22f2d400,0x1ef44980,0x1d9dda00,0x1d6fe760,0x1ea076e0,0x1cc7b0c0,0x1a6b86a0,0x1938b600,0x12d4e260,0x121601c0,
-0x0888bca0,0x00da8ae1,0x027995c0,0x016604d8,0x03ae44d4,0x02cd173c,0x00e2038f,0x013fe9d2,0x00c84df1,0x009251a8,0x00e79b68,0x00a9eab7,0x031a6730,0x01a21452,0x06e49218,0x042b52d0,0x086aed50,0xfda90f94,0x12007de0,0x30778300,0x33169600,0x3d394640,0x34714d40,0x2f84b880,0x29e9cac0,
-0x23915080,0x221959c0,0x276ab800,0x2c2892c0,0x2db311c0,0x2c287d40,0x25f39580,0x1f21b520,0x19348800,0x12f50020,0x139f9fc0,0x0825fec0,0x0398f6f8,0x04fdd260,0x00b726d8,0x01ed2c6a,0x01cda7aa,0x00e1b7ed,0x00be56ec,0x013a4284,0x01c12860,0x01793bf6,0x00ce1308,0x00a74fa6,0xfca489e8,
-0x05279d10,0xfbcff270,0x08a6d380,0xffe153b4,0x1e95a9e0,0x39d2a080,0x35a27340,0x35985200,0x2e8e1e80,0x2b862a80,0x27ff8800,0x2908dc80,0x294e6980,0x284466c0,0x278a1580,0x25a47d80,0x224534c0,0x1efb4260,0x1ac112a0,0x16d48800,0x11f52b80,0x11f9ae40,0x09b06130,0xfe16548e,0x03a56fb0,
-0x02dec940,0x0255bdb8,0x020400c8,0x00d95841,0x0251c3e8,0x00261bb7,0x0305b41c,0x0209b2f4,0x00f72f08,0x04d2f580,0x00e30b40,0x07f29e88,0x0072d1d8,0x08974570,0x055fe390,0x21d88fc0,0x31d25840,0x2cf8fd80,0x2c813080,0x25be7680,0x23252680,0x23bc06c0,0x2183a2c0,0x2355d980,0x27caf340,
-0x252f2d40,0x22036280,0x1e4f6ba0,0x186ca3c0,0x13876620,0x10f6f8a0,0x0efdbff0,0x1117c260,0x0bcbc180,0x00175b15,0x0677f720,0x015afde0,0x0168f926,0x02ca1c8c,0x02713cb4,0x014ec258,0x02937a9c,0xff06af94,0x01e68946,0x01e1ca72,0x036f76ec,0x03905e2c,0x02bb1978,0x01e4b7d0,0x0ea7d720,
-0xf8abcbd0,0x1652bce0,0x20f5cf00,0x1ada0fe0,0x1b7564c0,0x1aef0700,0x1b513b40,0x1ba69920,0x18ecc960,0x16267120,0x1502cde0,0x161ee420,0x17429480,0x172c9820,0x168d0ce0,0x146521a0,0x11fc51c0,0x0fd7b970,0x121180c0,0x0857cd20,0x0011263e,0x072149c8,0x013330dc,0x03807a04,0x03270404,
-0x01d5378a,0x0185fdbc,0x0063c038,0x05bfb708,0x0277f27c,0x025c8518,0x04134e68,0x026612c0,0x04d6df90,0x04758498,0x0a12dcd0,0x07090788,0x0ecc8230,0x164a4c00,0x145e8ca0,0x17b9dda0,0x180cb120,0x192ff720,0x19e79b00,0x197d9d20,0x1953fde0,0x18be6440,0x1618fd80,0x13578220,0x100c5060,
-0x0f4313f0,0x0dc93140,0x0d32d6c0,0x0be5fd60,0x0f6fa360,0x0a4dbc80,0x01c0adce,0x02a0b5b4,0x02b8584c,0x035e7f88,0xff05d42f,0x0368adcc,0xfe9c8b60,0x070b98a8,0xfcf773fc,0x04e3e358,0xff1497db,0x02217f4c,0x02ff5300,0x02fab638,0x0171cb8a,0x08446d10,0xf79d9e90,0x0f770be0,0x11a141a0,
-0x11330be0,0x128b05e0,0x12ff43a0,0x13f7f700,0x14f37ae0,0x13aa81c0,0x126a0d60,0x1159e8c0,0x0ff722e0,0x0ec3f430,0x0cc02810,0x0d034ab0,0x0ce782c0,0x0d378290,0x0caab3c0,0x0d778bc0,0x0bfc4630,0xfb93bd90,0x08055ef0,0x069dbd68,0x064b3240,0x0418b7f0,0x08919e50,0x09d12340,0x081f22e0,
-0x04213f70,0x090c9130,0x0c201240,0x07342650,0x0871b9d0,0x048acbe8,0x041380b0,0x0bfbb2b0,0x03a53d64,0x158df560,0x10774a40,0x11b0ba40,0x11df3fe0,0x122baae0,0x12680ee0,0x12ec5ec0,0x122f8a60,0x11bc47e0,0x113328a0,0x10d669a0,0x107f7a00,0x0ffdb4c0,0x1039e680,0x102e61a0,0x1034a8c0,
-0x1032b640,0x0f809800,0x1413a4a0,0x02683900,0xfba0e968,0xf3244710,0x064efcf0,0xfc186c98,0xf3af1b40,0xf329cea0,0xf3d1b0c0,0xf609c1f0,0xf3bff4c0,0xf37ee660,0xf444e840,0xfc15678c,0x0845d520,0xf41a83c0,0xfb2e0638,0x13699e20,0x1dd3c2c0,0x20c05100,0x1ae6ae80,0x1c2d9f40,0x1d1806c0,
-0x1de356e0,0x1e91b580,0x1edcca00,0x1f310e80,0x1e58a600,0x1ddbdf20,0x1d6c3760,0x1d032de0,0x1c94ee60,0x1c105100,0x1bb761e0,0x1b60dce0,0x1b0eef00,0x1abf3cc0,0x1a1c3e60,0x19619600,0x1ec9c380,0x1da519c0,0x153f85a0,0x1e0ee2e0,0x1d87a7a0,0x15861b00,0x161ad4e0,0x161c2460,0x16378b20,
-0x17325000,0x17bb8ba0,0x17f94c20,0x1e4a1520,0x1eb8a440,0x1738ca40,0x1fa2d460,0x205ae300,0x21808700,0x206e4600,0x23802080,0x25745ec0,0x27eb0e40,0x28d0f340,0x28e3de40,0x26752d80,0x24caaf80,0x23a15800,0x2274f440,0x21211bc0,0x1fae8320,0x1e886e40,0x1d901440,0x1caa8700,0x1bc74fa0,
-0x19ee4fe0,0x1b0c69a0,0x19620840,0x18860520,0x199ed0e0,0x17433060,0x16b25460,0x179ba5a0,0x1720e5e0,0x18a84880,0x18be8b20,0x1891bca0,0x177888c0,0x186a80e0,0x19e46980,0x1aa35960,0x1c466b40,0x1d1eccc0,0x20722a40,0x21b52f00,0x21858380,0x27a301c0,0x2c24b200,0x3179dd00,0x33039840,
-0x33a17180,0x2f68d900,0x2c196900,0x29b65900,0x2753a000,0x25287e80,0x22675b00,0x205d0b00,0x1e609460,0x1ca48640,0x1a62e4e0,0x1748ea20,0x16680cc0,0x15aa1420,0x12257220,0x12621c00,0x10a429a0,0x0eb409f0,0x0f54d020,0x0d91c090,0x0f0f95c0,0x0f7253c0,0x0ef5db50,0x104d09a0,0x11fe94c0,
-0x13863500,0x15444d60,0x1816b980,0x1bdbc600,0x1df9bf40,0x2391d400,0x23ad7cc0,0x2b945cc0,0x337dc680,0x3c8bc680,0x3f7b3f00,0x3ee4d140,0x36b10f80,0x30c5a740,0x2d39a9c0,0x2a111380,0x261db380,0x221e4b00,0x1f1e8860,0x1c4a79a0,0x19cc3d80,0x16708e00,0x12c33600,0x10d971e0,0x0c80e1f0,
-0x0a8cbda0,0x07269500,0x06521fe0,0x04bbc908,0x03a76bf4,0x0360c4d0,0x02a3ad54,0x048a8ed0,0x049f4630,0x0699d558,0x09332730,0x0c38e940,0x0ffa87d0,0x10cea4e0,0x17314a80,0x28dbc080,0x27165400,0x2c75f5c0,0x38415780,0x4160bc00,0x42f04d80,0x464ab900,0x4a779700,0x4dfba580,0x4be85900,
-0x413ff500,0x3f5a1400,0x3c92ba00,0x3b2eae00,0x351b1a80,0x308836c0,0x2cbf9880,0x26b3dd40,0x1f09cb00,0x18688160,0x113ac980,0x0d9a3320,0x0b2b8c60,0x07eb1798,0x05e59748,0x0437b128,0x0435aa40,0x04c113b0,0x06e8d120,0x06c6bf08,0x091c04b0,0x0b9c25f0,0x0ea2af20,0x133d1f20,0x1679b6a0,
-0x1fc26f60,0x2c33a8c0,0x3478e000,0x3ae5b700,0x46a60180,0x4b9f6100,0x4e391c80,0x51c74d00,0x54b24d00,0x592b6900,0x5759eb80,0x5098b400,0x4f1baa00,0x49ab9180,0x42064600,0x394b22c0,0x3180b1c0,0x2b0f9440,0x26264640,0x214e96c0,0x1cb1b4e0,0x18415800,0x12a55b00,0x0f49a8f0,0x0b042f70,
-0x0874d740,0x069360c0,0x05d625e8,0x05fac608,0x05fdcf70,0x079f5c90,0x087f77a0,0x0d5a8b40,0x106038a0,0x17388240,0x1c9e8e00,0x25380800,0x346127c0,0x422bf580,0x3abd1a40,0x3dcc58c0,0x3573b080,0x3daa66c0,0x41945680,0x4971bc80,0x501b7400,0x54753f80,0x523c9800,0x4775c600,0x3cff2f80,
-0x342846c0,0x2e67dcc0,0x2a9346c0,0x2930db80,0x22f75d40,0x1c4f6c80,0x1ac5cf60,0x194902c0,0x144f5920,0x137eab40,0x0eac3090,0x0c024a10,0x0a2ea670,0x082c6fe0,0x08c39310,0x0cc49450,0x08def240,0x0a2b5ef0,0x0c9a5ea0,0x120951e0,0x1a80c100,0x233ff840,0x25aeff80,0x3a2a3880,0x39148fc0,
-0x2799c0c0,0x30621900,0x28c24400,0x38a4f580,0x44ad3600,0x52c0ab80,0x5055a400,0x4c6fbc00,0x44960900,0x42055f80,0x3da727c0,0x374cf740,0x330ec500,0x2ced91c0,0x23c82180,0x1f4afd60,0x1abde0c0,0x1ce6a7e0,0x192536e0,0x1776a4a0,0x1583ff40,0x109fbb60,0x0e4efcd0,0x0ad1e070,0x095f41e0,
-0x09ce5060,0x15c3cd60,0x0d17a680,0x0b30c070,0x0e760d00,0x100b8d80,0x17a901c0,0x1c3c9300,0x24d8cd00,0x35ea8140,0x32cc3680,0x31074b80,0x3ce322c0,0x3c47cb00,0x45e0d780,0x49f74680,0x4f0e2580,0x4b821e00,0x48768580,0x42f75680,0x3d60d200,0x379ca800,0x32cde840,0x2b90b540,0x2715b080,
-0x22ea8540,0x263898c0,0x2500d1c0,0x255ba580,0x1c8a7e80,0x1c110140,0x150043a0,0x12c35ce0,0x130d5180,0x0ebee360,0x0b674e20,0x0d8de7c0,0x0d0a50b0,0x0fb9a3c0,0x119d6ae0,0x157dec80,0x179169e0,0x1922a500,0x1e945f80,0x299d54c0,0x367cbb00,0x35993000,0x37458e00,0x3e068180,0x3f036e00,
-0x45b54b80,0x47f39d80,0x483d5e00,0x4948f400,0x48437f00,0x451fc280,0x3e14d7c0,0x36c2fcc0,0x30326680,0x2a964c80,0x27182d40,0x2578f380,0x296128c0,0x2aa50000,0x25e00b00,0x20d4a1c0,0x2040ff00,0x1c3cf8c0,0x188142e0,0x1308a0e0,0x0ee6f660,0x0e975e40,0x0d5bf940,0x15591520,0x11db8c20,
-0x12d10800,0x15e27ec0,0x18495a80,0x1e3b0a60,0x211eca80,0x2b727180,0x2b5f44c0,0x340d80c0,0x36fb23c0,0x3a4ddb00,0x3d3ef080,0x3ed14ac0,0x3fe491c0,0x4158cf00,0x3e9b6b40,0x3bf01e40,0x39689440,0x36ce2200,0x3450d140,0x30f88300,0x2fac2c40,0x2de89400,0x2b56e4c0,0x2971a200,0x28bf4980,
-0x26e91e40,0x2216dbc0,0x1ebffa40,0x1ca0a340,0x1ae7ece0,0x14e54fc0,0x191cd440,0x129bb320,0x1ab52e80,0x1474a360,0x173aa6c0,0x148967c0,0x157185c0,0x1a7a4520,0x1df29120,0x2191afc0,0x28813a00,0x23589680,0x32e72a00,0x30d3d7c0,0x32757a40,0x33469c80,0x3467e840,0x3581ffc0,0x37360d40,
-0x361cf900,0x35a5eb00,0x34faa080,0x34005200,0x32f72600,0x31bb0a00,0x30554100,0x2ee3ed80,0x2db8dbc0,0x2ceee880,0x2b73ff00,0x2bc08d80,0x1d621ea0,0x25b4dc40,0x27575900,0x24edb8c0,0x22dfbe80,0x260fb240,0x26526940,0x28743540,0x25913240,0x286e2100,0x27855800,0x24d2a040,0x2774b800,
-0x26025b40,0x27ed4400,0x2d639f00,0x2e72bc80,0x2f5fbf40,0x2d8cca00,0x2ed7cc80,0x2ed0a2c0,0x2f4e36c0,0x2f8db940,0x300a6200,0x2f71ae80,0x2f0bcd80,0x2e994b80,0x2e445e40,0x2df28580,0x2db02ec0,0x2d7f3e00,0x2d5e2e80,0x2d09d980,0x2cd8afc0,0x2b93eb80,0x2d8a7e00,0x2cd7f580,0x27e3f680,
-0x160e8d20,0x2dffafc0,0x2832ef80,0x18344500,0x188b5a20,0x18481720,0x197b9060,0x193d4740,0x19b84d80,0x1a17bb60,0x28a5df40,0x2fe70f80,0x187c6040,0x2887d040,0x32be8940,0xfcd6548c,0x027067dc,0xf979f730,0xfd217bf4,0xfba5c328,0xfbc001a0,0xfaf9abf0,0xfaab5028,0xf9e50c50,0xfb308040,
-0xfbd1eaf8,0xfc746a48,0xfca9d9f8,0xfccf4b74,0xfcd00f74,0xfc9d4624,0xfc9574d4,0xfc9e5644,0xfce7c280,0xfe34954e,0xfb13b068,0x03d66c28,0x0ae2dcc0,0x1b704b60,0x0055fc07,0x09a834f0,0x1954bea0,0x190b8280,0x1890fb40,0x171af4e0,0x17a9f7e0,0x17d2b600,0x175fb7c0,0x095839d0,0xfe15a824,
-0x19d55300,0x0aa93bb0,0x1021e060,0xfa9f0af8,0xfb09aa68,0xf98fddb8,0xf8a4f660,0xf61093c0,0xf512a180,0xf3fa04b0,0xf7cada30,0xfa2a2880,0xfc0a3c90,0xfcdf9110,0xfd30e2a0,0xfcebf874,0xfc3b53d4,0xfc2a1da8,0xfc4d34bc,0xfd841040,0xfe770a38,0xfea402c0,0x0f598bd0,0x0462e7a8,0x03462ed4,
-0x05816f68,0x07113ff8,0x01b9588c,0x01842204,0x00c53943,0x041116f0,0x0007c02d,0xfe9ba9c8,0x0303b700,0x01e08a38,0x0647ef58,0x05bfbea8,0xfe6ddfa2,0x0446d7c0,0xff2aee0e,0xfa444358,0xf9becdd0,0xf701cc40,0xf0a285f0,0xeeb20400,0xeba6cf20,0xf37855c0,0xf8cbc5d0,0xfc095fb8,0xfd924fec,
-0xfdb64808,0xfd305ac8,0xfbbbcdf8,0xfb705df0,0xfb997358,0xfe748a48,0xff544dcd,0x044db668,0x08212370,0x09115ac0,0x06c004f8,0x05f64548,0x08eba0b0,0x045f1050,0x0938dcf0,0x02a181a4,0x08a89dc0,0x030940b8,0x06c9c230,0x04b943d0,0x0645aad8,0x067774d8,0x068d0958,0x0186a5a6,0x0962f2a0,
-0x0207cc50,0xfc8aed44,0xf978f110,0xf3798320,0xe8255b20,0xe40415a0,0xe114b740,0xef992b80,0xf95dc520,0xfefef88a,0x00f16e9e,0x01c2997c,0xffdb3a43,0xfd28e684,0xfc872438,0xfcb32368,0xfffaf0ad,0x0294d8fc,0x0655c488,0x0b0cb930,0x070ea090,0x0985abb0,0x060d8120,0x04ee8160,0x04579a90,
-0x044db270,0x04d1eed8,0x03474748,0x03d1562c,0x02d7e7c8,0x03ccb150,0x05b4ccd0,0x0692bdc0,0x070bef20,0x034c5cb0,0xfe97e1d8,0xf169a700,0xef08ec00,0xec91f860,0xe963ef80,0xe8e6a700,0xe78ced80,0xe354e9c0,0xe1a09960,0xe573f140,0xf8fa78c8,0xf2d6a470,0xf1b4ec70,0xf24fb170,0xf11b7a80,
-0xf1c63ab0,0xf322a510,0xfa7ea0c0,0xfde6d134,0x05145a40,0x0e684aa0,0x09298b50,0x07deb368,0x06b642c0,0x066bd4d0,0x052f7c30,0x0582b5c0,0x04a6c530,0x03606494,0x0278e894,0x01b14ba2,0x036dcc9c,0x01a6e312,0x039d9d80,0x02d4ee80,0x024a62cc,0x0f8f2c00,0xf85f5040,0xd9c58500,0xd7af13c0,
-0xdde82e80,0xe2f0a7e0,0xe317c300,0xde072b40,0xdd8e07c0,0xdf5aadc0,0xe6d533a0,0xe0efdf00,0xddcf52c0,0xdb787200,0xe0e89040,0xe7eab000,0xeda2f540,0xf97be0c0,0xfd4152b4,0x059b0d70,0x0bebba80,0x091da700,0x06b55018,0x03404740,0x0212b320,0x02c4abf0,0x026a37ac,0x04311dd8,0x08518cb0,
-0x06b4ad08,0x08fcc610,0x097a6c80,0x0b371130,0x05e41c60,0x0b705920,0x04a4a110,0x06f570f8,0xe6e395a0,0xdb8ff280,0xe44e2f20,0xf551fa50,0xfa200cf0,0xfc134ea0,0xefae3f60,0xee539b00,0xe3d96f00,0xd3ded540,0xce689300,0xcf313e80,0xd4b27440,0xdc399440,0xe36716c0,0xe86b1840,0xf463c080,
-0xfa71f1f8,0x04eac8d0,0x07039ff8,0x088bb070,0x0b61b3f0,0x078fb140,0x078e04a8,0x0a370740,0x0b9e2650,0x0aff9870,0x0e1a6010,0x08812b50,0x088bb0a0,0x09f19ba0,0x0ec325e0,0x04497be0,0x0aff5a70,0x0359c240,0xffbe0f99,0xee32e160,0xf8a3b490,0x026b89c8,0x2503a880,0x10bd15c0,0x014de348,
-0xeeb9c340,0xeb443e00,0xe496c360,0xe20e0680,0xdb13ef80,0xd9181a00,0xdd1be2c0,0xe0a6d7a0,0xe8155ae0,0xf20138a0,0xf91d8170,0xfccb3ea0,0x024dc604,0x0fda2dd0,0x0b8dac80,0x0b4b74c0,0x0af46840,0x08e8d520,0x09bccc80,0x04f4d9f0,0x09c57030,0x133647e0,0x0a103d90,0x08cd4bb0,0x071c0910,
-0x0bff1e00,0x060499a0,0x0d79b130,0x07e1bc88,0xffe630dc,0xf0a0b250,0xf864a770,0xfb9ca440,0x051c9c40,0x04815eb0,0x02126d6c,0xf314ec10,0xef4cec80,0xe6454cc0,0xe0365e80,0xe08737e0,0xe3754ec0,0xe717d9c0,0xf0075860,0xf65b8390,0xf9ec7108,0xfa12c5e0,0xfaa35220,0x01f5f0c4,0x13b18f60,
-0x0a893860,0x0ff93720,0x0f41f480,0x0a954710,0x0bc3fde0,0x0b9b62f0,0x0b0dcc10,0x13f19a00,0x0bedead0,0x0a87e400,0x06ce8748,0x07b1f6a0,0x0a47ac30,0x0bcd1960,0xfc02a488,0x10d62640,0xfba7a0c0,0xf7614020,0xfed54f14,0x05544008,0x02758d24,0xff19e5cc,0xf827bf48,0xf3120570,0xf0e39ed0,
-0xf0229f60,0xee9736c0,0xf0121a20,0xf3c69160,0xf72a9590,0xfaf99f18,0xfd2b8b24,0xfefa2674,0xfa777388,0x074a2f80,0x144923c0,0x08808270,0x0f4da750,0x0b305be0,0x0c7ca640,0x0e61b190,0x0e83ec80,0x113aa840,0x086ddb30,0x0f570db0,0x0e2cabe0,0x086519e0,0x0bf46e30,0x0898ebd0,0x0bc9a4b0,
-0x0323d588,0x132b0940,0x059010f0,0xff4bc8af,0x045d7778,0x041da6f0,0xff18389a,0xfb1d9f28,0xf86ba3b0,0xf80a99f0,0xf78346b0,0xf735f3c0,0xfa5bc700,0xfcf4ab30,0x0063f14b,0x01b3506e,0x04537048,0x065a8950,0x06a9a2a0,0x007b1124,0x0574eb70,0x10e15e40,0x102e8e20,0x0f62d500,0x0e57e2b0,
-0x162c31a0,0x0ca9ac70,0x16816440,0x0740e260,0x15cf1c60,0x0c2112a0,0x159a17a0,0x11c89fc0,0x125a6b60,0x13173660,0x16d27200,0x0ec18bc0,0x2a104e80,0x019f5e16,0x02485f1c,0x02a5213c,0x0215ef10,0x029c46e4,0x02cc9808,0x025b0d18,0x03e23378,0x0534df28,0x063bdb08,0x0814d740,0x09d364b0,
-0x0cc20510,0x0baa03f0,0x0acb31c0,0x098562f0,0x08b86ba0,0x07128d58,0x069b1880,0x24fd8f00,0x0cd9a750,0x0b81c590,0x0ce67de0,0x0f1fb720,0x04cdd6e0,0x042281b8,0x04db67d8,0x0c720c50,0x04f6de90,0x020a512c,0x0a6b0820,0x094a6c30,0x11d0b7c0,0x12561620,0x05cb8ce0,0x0edb8b00,0xf76d98b0,
-0xffcce243,0xfdc35de0,0xfdeb47bc,0xfdf1fc78,0xfe06eeb8,0xfe0140c8,0xff0000e9,0xffd990cd,0x00d578e4,0x0163f8b4,0x01dfa246,0x02c26a64,0x018f3354,0x00f1577c,0x00522ec8,0xffd2ac7c,0x00ff6a54,0xf8e4e778,0x0f5a2fc0,0x1c1dd0a0,0x3603e780,0x0776d6f8,0x19959be0,0x319eb740,0x323c3140,
-0x319d5ec0,0x2e5a9f00,0x312ec600,0x318b3980,0x3033ce40,0x1a39edc0,0x04a15910,0x34d3a180,0x1e4795e0,0xfc0f46c0,0x0752ff60,0x02e94ba8,0x0a39fd70,0x07569800,0x07c3c810,0x0702e840,0x077289e8,0x075e5930,0x072409a8,0x06402f38,0x05b57588,0x055a4e50,0x055ee4f0,0x058563c8,0x0600b990,
-0x063f7e98,0x06913888,0x06dfe3e0,0x071e58d8,0x06bff020,0x088b18e0,0x022a1824,0xfe591196,0xf8641d68,0x03d89b60,0xfebc57e0,0xf8fc7df8,0xf914f770,0xf9476460,0xfa1cc228,0xf90b9140,0xf8b18ac8,0xf8f6c0a8,0xfe9a1618,0x0530c8a8,0xf81ba9e0,0xfde3794c,0xfc414724,0x0a2c7e60,0x0a256610,
-0x09c26490,0x089adde0,0x092c8d00,0x084cbfb0,0x07852278,0x059dbf70,0x049847f8,0x041ebbf8,0x041a2368,0x04b89588,0x062ec668,0x06e12438,0x079479d0,0x082a7730,0x0887ae50,0x08b8f8c0,0x07f6f520,0xff352579,0x04814a98,0x04287a38,0x038d6f44,0x02c5ac50,0x049215b8,0x055d4ca0,0x055fad40,
-0x03d546d8,0x057a5fc8,0x068a4650,0x044938a0,0x046d2210,0x021ac688,0x025d10f4,0x07ee5390,0x074cccd8,0x0c298410,0x0f4bb020,0x0be490a0,0x09245c90,0x0ad24ff0,0x09dc6d70,0x086c04f0,0x03738608,0xfff35eaf,0xff1a32f6,0xfefba38e,0x00185ebd,0x02c2958c,0x0449bb10,0x063ab278,0x07b773e8,
-0x08a9cda0,0x097faab0,0x07115e80,0x04358dc8,0x03d193b0,0x037ece78,0x045e3360,0x0306d7c8,0x03cfecec,0x0303cc4c,0x06640860,0x0343753c,0x05252140,0x02249644,0x03e36e40,0x02f6a8c4,0x03e9b2dc,0x03c46ed4,0x0867db60,0x073a50d8,0x0cb6a560,0x107f4a20,0x0e436b60,0x0a15d6b0,0x0ac26f00,
-0x088feb10,0x0707e3b8,0x01a29060,0xfef52902,0xfeab9eb2,0xff989609,0x01492d3e,0x05b15cf8,0x07a02d90,0x095f7dd0,0x0abf3b40,0x0ba32040,0x0b6afdc0,0x095e4b70,0x0635f0b0,0x05d17b10,0x044a5bc0,0x0501e938,0x054bc110,0x0436f5f0,0x04816bd8,0x0437f660,0x06051838,0x042e1b80,0x04c5b898,
-0x054813b8,0x03b361f8,0x035b4f60,0x055943a8,0x0c343ee0,0x13008c80,0x2b4706c0,0x2aee6700,0x22749ec0,0x1e9fd620,0x1dec7780,0x17cd6740,0x1104b660,0xfea38584,0xf0b6e820,0xe0dbff60,0xe4c84b20,0xe6df4fa0,0xe8154360,0xee946840,0xf5d3a630,0xfcdd7af8,0x00ae9783,0x04689db0,0x03781064,
-0x01bfa59e,0x04288028,0x052d7818,0x03cda368,0x02d21e84,0x03059da4,0x040901b0,0x04b0a0e0,0x04a5f668,0x0433ae00,0x063b34a8,0x0787c350,0x0e4fb140,0x0e3f2370,0x10debb00,0x10b378c0,0xfeb4f3ba,0x1898eba0,0x3d34e600,0x389cd740,0x2c90ad00,0x1ba9d4a0,0x0ffe2a10,0x1028bca0,0xfe476a12,
-0xf70c3300,0xf1202540,0xf6176f60,0xfd6fef24,0x07f63728,0x0d397c70,0x0f085ea0,0x0f2fa4b0,0x0b85bae0,0x0b599030,0x07ded0a0,0x00b0ba29,0x0183b0a0,0x0263d870,0x0542cad8,0x055c86b0,0x027f0668,0x0435ace0,0x049a4630,0x07503bc0,0x06b9ee58,0x066b76d8,0x06aaf4b0,0x0452f070,0x0953bbe0,
-0x05522060,0x0cc27030,0x0a482f60,0x29357d40,0x3701a740,0x26410640,0x0e4600c0,0x0e379ef0,0x0fe949c0,0x158f62a0,0x09977410,0x057a9710,0x09dde680,0x135e3880,0x1848f600,0x1a245960,0x1b5b6900,0x1bc985a0,0x1b157700,0x18c27f20,0x17d53aa0,0x0ebff930,0x0a9e47d0,0x090388b0,0x02649f5c,
-0x04d25258,0x03cf372c,0x021a8610,0x04b26268,0x06400650,0x0a774ed0,0x06ce7290,0x05875178,0x05936260,0x0110e528,0x092234f0,0x01ff90c8,0x0e009700,0x1427f640,0x1fcddd20,0x0b0659c0,0xff4337e1,0xe9e77460,0xf7225d80,0xfab59808,0xfcc249cc,0xff22b5e8,0x05e50e58,0x0cf8a470,0x14fc2840,
-0x18f2b7a0,0x19351840,0x17861060,0x1663f140,0x188d79a0,0x17bf8080,0x17c35320,0x0f383590,0x05003470,0x069d3338,0x0537dbd8,0x05814dd8,0x05a0ebc8,0x05f2b558,0x05bb9ea0,0x066a21f8,0x09f2d200,0x07cace18,0x0856cba0,0x0a09cf10,0x07e2db30,0x0a4129b0,0x07fadd18,0x0d671da0,0x0c2572f0,
-0x09b23f90,0xf742f310,0xf147bdf0,0xecdf8940,0xea6b43e0,0xe8c508e0,0xedf25ca0,0xf34c7920,0xfda7f3e0,0x0a063780,0x1125cf20,0x16033860,0x18387140,0x19cf4400,0x194c8460,0x1a07baa0,0x1044a100,0x0ae38510,0x02a80064,0xfce2c40c,0x000d12ed,0x0135eaaa,0x00688c26,0x00beb449,0x0286fecc,
-0x0705b0b0,0x06b97d60,0x05709990,0x041b6bf8,0x040e2d70,0x02df84bc,0x07f895e0,0x0a4bdff0,0x095055a0,0x0e20b7e0,0xfb9c3d80,0xf9eadf78,0xf31c66c0,0xeeecdfa0,0xeaf23fa0,0xeb3d8880,0xec38cc40,0xf0d50c40,0xf983d150,0xff010234,0x03f5ee54,0x0af68480,0x10435ce0,0x13142f20,0x15f70000,
-0x152fec80,0x1266b9a0,0x0710ff60,0x0362ef44,0xfc394420,0xf9db3100,0xfe3aa632,0xfb313340,0x00209336,0x02d725f4,0x0459ade0,0x04fa2bb8,0x04196928,0xff0c1f81,0x006daf93,0x017d54f0,0x04a95190,0x0007d4e2,0xfe6722bc,0xfec58340,0xfde4891c,0xf5af1a70,0xf2660fe0,0xf06a21b0,0xed8ac940,
-0xe9e27d80,0xef994980,0xf4be7d50,0xf8e1f768,0xfec4fd56,0x048f93e0,0x0aa1ef00,0x0b7bea30,0x0ce15ea0,0x0f0f0e90,0x0ba53140,0x08789530,0x06b36788,0x04b09ad0,0x0426e090,0xffe24a66,0xfca7ffa8,0xfe2a73e4,0xfe932b00,0xff261dc3,0xff8d0aad,0xff5cce16,0x0044b622,0xff84e588,0xfff4698a,
-0x0119096c,0x00f03bb0,0x01bf47de,0x0019415f,0xffa33110,0xfd921f98,0xf8b8fe78,0xf3403540,0xefd4fd60,0xf0e19550,0xf05262c0,0xeff2e640,0xeefae520,0xed836dc0,0xec462ae0,0xeca1cc60,0xecacb060,0xed320c00,0xedb28c40,0xee5cc420,0xef024ce0,0xf01025c0,0xf19c03b0,0xf2b6cf70,0xf35fea00,
-0xf46eef00,0xf4e86980,0xf7e46590,0xf7d85fc0,0xf73e1ef0,0xf7dfb410,0xf8c64ad8,0xf8b74590,0xf8a5d030,0xf7636960,0xf6d3eb90,0xf6a44f20,0xf7514ff0,0xf6847280,0xf55f3780,0xf3e5fb70,0xf3a6c3a0,0xf2d97640,0xef868220,0xf259e260,0xf257f080,0xf2019c50,0xf22dce50,0xf1cc62f0,0xf1b5a990,
-0xf15b1ae0,0xf1a742d0,0xf1c50e40,0xf1c6de70,0xf21c04b0,0xf261a940,0xf29265f0,0xf2e86530,0xf303e010,0xf344d8b0,0xf392cd70,0xf410e720,0xf473fa00,0xf1c8cc10,0xf1156d00,0xf56dfbb0,0xf24261a0,0xf12e8d70,0xf44a5e40,0xf3f3d010,0xf4121240,0xf424c4c0,0xf3a87bc0,0xf34de950,0xf360e3d0,
-0xf075f3f0,0xf11fba30,0xf3f04040,0xef5fcea0,0xf1982900,0x082a8450,0x09884470,0x06546b80,0x07cdbca8,0x079146b0,0x07da6b80,0x06cd5dd0,0x068c3ac8,0x06e47d80,0x07763820,0x07d1da78,0x07fe07c8,0x08327cd0,0x085520e0,0x0852e2f0,0x08488340,0x08209350,0x07eaf5e8,0x07830c38,0x07574808,
-0x069714a8,0x08c335e0,0x098973b0,0x097b2f40,0x08619f60,0x0968c070,0x0952a360,0x09a59f50,0x09bbb750,0x09b31ab0,0x09f46770,0x0a290d40,0x0a334d40,0x09a8dfd0,0x0830d980,0x0ad9c2c0,0x0aff4a90,0x0e383b90,0x07db8350,0x07c75e50,0x07c46d40,0x07c69b80,0x05926178,0x05925f48,0x07157cb8,
-0x0819b3d0,0x08eed9e0,0x092e1ed0,0x09c78710,0x09ecf230,0x09caeb70,0x09e2e1e0,0x09889d80,0x08e35ad0,0x07f3eb70,0x072a61a8,0x0723b708,0x098dfbe0,0x081b9eb0,0x085083e0,0x08093ac0,0x080cb810,0x077a17a8,0x07bc5990,0x07fc49e0,0x0898d410,0x076cec60,0x068d4a10,0x076e2248,0x07e72c60,
-0x096ac810,0x0aaa6eb0,0x085aa380,0x0c2e6dd0,0x07bdba28,0x04b78a30,0x06b5ad68,0x079b92b8,0x037c8d38,0x0285c354,0x05e435e0,0x0826a4e0,0x09aeffd0,0x096458c0,0x0a886170,0x0b9e98b0,0x0c061430,0x0c786440,0x0bd96d20,0x0a8e4a70,0x08ac3e20,0x06d45010,0x06b08a98,0x083ca890,0x072d58e0,
-0x07b30700,0x0705d418,0x06d8bc08,0x05ee25c8,0x06fbb5a0,0x06bec1a0,0x07f784d0,0x05b71530,0x06980ad0,0x06d16828,0x07d95170,0x0879a270,0x0b986e00,0x0a14c870,0x0c5257f0,0x066de978,0x013dcd2a,0x0321146c,0x059bf9c0,0x02573954,0x02c9e62c,0x0774e0a8,0x0894d400,0x08b0e340,0x080096f0,
-0x08e9e300,0x09bcbc30,0x0a3acef0,0x0b842dd0,0x0b24f730,0x0980b7b0,0x07455970,0x0576cba0,0x04f51120,0x078924c0,0x06ea4790,0x05b64950,0x05cbe2b0,0x054ef390,0x0414ea48,0x0506ac60,0x04e52d20,0x058d8a38,0x03711c18,0x02983fd8,0x038da698,0x05a453f0,0x090cabd0,0x0a7f9a70,0x05e68768,
-0x1888b960,0x0013b43e,0xf5bc4e70,0xfa8930d0,0xf3e7e770,0xe9507800,0xe89198e0,0xf0f56e00,0x02d278e4,0x0ff14f90,0x1294e300,0x15246d60,0x184a2480,0x1c5928a0,0x1cd96fc0,0x1ab79fa0,0x177dc1a0,0x10fddaa0,0x0cab69e0,0x0a944140,0x07d6de10,0x077d1488,0x06a66920,0x0610f688,0x054d0310,
-0x0319b4ac,0x04d01410,0x0590adc0,0x06c3e2a8,0x06e63508,0x0819eef0,0x0b6be9a0,0x07d806b0,0x0c3e6c60,0x0cef6f40,0x127b2080,0x1c1eda20,0x010da5fe,0xd3bdec00,0xd4a16080,0xcb713880,0xdc9f5600,0xeb0d00c0,0xf701a3a0,0x084470d0,0x11bc21e0,0x185027e0,0x19e71680,0x19619620,0x16ce0200,
-0x136a7620,0x1070aae0,0x0e1c6e50,0x0a761ce0,0x0861f5b0,0x0a0d9b70,0x0bc27520,0x0993de30,0x08a490e0,0x0650a050,0x0584cb50,0x054725f8,0x06bdd968,0x06addd98,0x06d55a88,0x0609be58,0x067a9210,0x03ffed84,0x08d80c20,0x04de49c8,0x0b0897d0,0x0613fc48,0x07a43418,0xe018d6c0,0xb4e42a80,
-0xbf518280,0xc7752480,0xcede9500,0xd061b140,0xd54da100,0xe75870e0,0xf4685240,0xfe7d17fe,0xff9f6e03,0x033b3ab0,0x07a3fc80,0x08ce4ba0,0x09823d00,0x098c31a0,0x097d6fd0,0x076e8710,0x0b0326b0,0x0d391390,0x0add5100,0x09f182b0,0x083aa670,0x067afb88,0x02fd259c,0x01eabe4c,0x03fb62c0,
-0x0a7557e0,0x071ed7c8,0x070a7050,0x06a79fa8,0x0d9cf440,0x0228ce94,0x0f3bd6b0,0xf9ee4ff8,0xeb56c640,0xc6e7e740,0xcc40e6c0,0xd234cf00,0xd94beb40,0xd5841f00,0xd7c75c80,0xde3ddc40,0xe27a7620,0xe52d59c0,0xe8623d80,0xe9cab260,0xefebc560,0xf8d7f168,0x02163348,0x074f9008,0x05e00400,
-0x08d7f780,0x083a4c80,0x0acd96c0,0x0b416530,0x06442a40,0x068e2e90,0x06a26508,0x06da6308,0x054e6b90,0x08ed6370,0x0760ee38,0xff5afd58,0x039ec884,0x049b0260,0xfe8ff602,0x04699830,0xfc092634,0x00e1d30d,0xf30790d0,0xe6e33b00,0xdedbd000,0xe1026180,0xe1319840,0xe2d018a0,0xea355e00,
-0xf3149e90,0xfab4b608,0xfddb75c8,0xfaf72b28,0xf2b38420,0xf14c5040,0xf1ec0370,0xf61ef720,0xf764b690,0xfc3ae8d0,0x01c4eaec,0x09fbf6c0,0x0b5f37f0,0x09976610,0x087a4be0,0x079b3828,0x0718fda0,0x0557d740,0x0570cbb8,0x03d6bb70,0x04f00208,0x0408bda8,0x010a107c,0x02fcfb74,0x0212be0c,
-0x00441400,0xfae7e9f8,0xf8a5cfe0,0xf634f030,0xe7e06480,0xf672e050,0xeeea1780,0xefcd5740,0xeeae0de0,0xef029380,0xf4af9430,0xfaa54488,0xffac4016,0xfedd5272,0x00e20590,0x029b7024,0x002f5753,0xfe421dc0,0xfef0a01a,0xfcb0ac98,0xfcd3d2fc,0xfe5f1126,0x03aef27c,0x053063b8,0x0729e478,
-0x04db8ba8,0x03333eb0,0x046c2ec8,0x01c4cb68,0x011e91b8,0x01ea9142,0x01ab8cda,0x015aaeae,0x01ff1d1a,0x015ce1e0,0x01dd22a8,0x011ba620,0x010ff110,0xfea26ef4,0xfbf77370,0xf8a43128,0xf4e51fa0,0xf74f62f0,0xf897a510,0xf75cb3d0,0xf75056c0,0xf7009580,0xf5907710,0xf4436c30,0xf28e3ed0,
-0xf07b3170,0xee1d2940,0xee6a5440,0xeeded000,0xef252f80,0xf0dfc340,0xf2a9fe40,0xf32349f0,0xf51818e0,0xf597e830,0xfacd1538,0x0051f157,0xfe2c21ac,0xfe904ae6,0xff7d65e7,0x004cd33b,0x0019f61c,0xffb91aa0,0x000f4b54,0xff4582f9,0xfefaef36,0xfdb7d18c,0xfdc629d8,0xfae7c550,0xf9160cc8,
-0xf62ea9d0,0xf70762f0,0xf6cc6a20,0xff6f71e1,0xfe96e2be,0xfdf1faf4,0xfd7ef730,0xfd07121c,0xfcf9512c,0xfcd2cebc,0xfcb717d4,0xfccfa3f4,0xfcbdbaa8,0xfc724828,0xfc0115f0,0xfbc5b6d8,0xfb8a58d0,0xfb083d28,0xfad48fe0,0xfb77c048,0xfbbe3630,0xfb5b2368,0xf85ac2a8,0xfc1b0cb4,0xfd2a99d8,
-0xfcb3edcc,0xfd5be954,0xfff02899,0x00403a34,0x0032b496,0xff88915a,0x00c43e7d,0x01c6faf2,0x00952a90,0x00372b82,0xfdfc90e8,0xfd37b4ac,0xff8d1f31,0xfbb18990,0x0212f410,0xffea1f6b,0x0018d524,0xffd5db70,0xff92be21,0xff3d58b5,0xfeebeff8,0xfe7156e2,0xfdf32d7c,0xfd896594,0xfd0c91b8,
-0xfc987f48,0xfbf7c188,0xfca1e97c,0xfd4c996c,0xfdd6afec,0xfdf11dfc,0xfe2022f0,0xff531e92,0xfaf64f48,0xf91e8d90,0xf44d6950,0xfde86500,0xfa822078,0xf5de2a20,0xf5bf95f0,0xf6051a50,0xf64cb360,0xf5fde200,0xf5b71c70,0xf6147600,0xfaaa58d0,0xff3b2437,0xf3949aa0,0xf8e23230,0x00ee5aee,
-0x022c16e4,0x029518c0,0xfef54ad4,0xff9ae5c6,0xff423c2a,0xff58e4e0,0x00c99a1f,0x01d2f62a,0x02da8670,0x03788fd4,0x03e1b308,0x04061198,0x03881e40,0x032702d4,0x02d249c8,0x02961928,0x025c85d8,0x02350f50,0x01fd1072,0x022226ec,0x016a83be,0x045cbcc8,0x05a9b2e0,0x08334500,0x037c2220,
-0x05544708,0x07a159a8,0x07c0e078,0x07aa6a00,0x074f9b18,0x072ccdc0,0x07118aa8,0x06e39280,0x052dc448,0x024ce450,0x07a07bf8,0x049a4ec0,0x0380984c,0xfc5b7f84,0xfb7d69c8,0xfbaf5718,0xfc698990,0xfff91308,0x02eccd74,0x054ca370,0x07435118,0x07c6f8e8,0x07355880,0x05c4bc50,0x04d49ba0,
-0x0431e810,0x03956aac,0x032fed00,0x02fc1318,0x027519f0,0x023c4fe4,0x02b2166c,0x063d4698,0x041b3618,0x043d35a0,0x041666c8,0x048e4bf8,0x039907e8,0x03cf0004,0x03fc133c,0x04a64fc0,0x037c9630,0x02d4b044,0x03298844,0x022a1cc8,0x028d8b24,0x02d76ba8,0x000f045d,0xfc2d37a8,0xf7e0a9e0,
-0xf47693d0,0xf4a85f50,0xf549cb90,0xfc3cdbe8,0x02763a2c,0x070f75d8,0x0b8689c0,0x0e3e47f0,0x0eca5050,0x0ca195f0,0x09fd19e0,0x08114230,0x06164230,0x04a757b8,0x03d7c3ac,0x02c3d8c0,0x028119c0,0x03ed644c,0x05011f20,0x05ca5768,0x04f64ef8,0x042e39e8,0x04df5880,0x03c644a8,0x05a3bc10,
-0x044bcce0,0x06069a08,0x03c42034,0x03ed3f9c,0x02da8d14,0x021dd220,0x017c1052,0x0098457d,0xfd216778,0xfa32cb38,0xf478d760,0xf231bd60,0xf2350280,0xf2f3f230,0xfcc7933c,0x059d5ab0,0x0c9a85d0,0x12ebf8a0,0x151adda0,0x12fc3a60,0x0ec82150,0x0be582e0,0x09a0a430,0x07394b98,0x05a5eb18,
-0x05260c20,0x036a0858,0x03783e10,0x04c22030,0x054ea448,0x051001c8,0x068b3ab0,0x04db4778,0x044582d8,0x03f38364,0x04e96328,0x053c3bf0,0x050081a8,0x03827c30,0x029b47f4,0x01f37cc8,0x0017ec02,0xff54765e,0xff304adf,0xfc4522d8,0xe7707980,0xe2525de0,0xe2596cc0,0xddab7b40,0xe1704560,
-0xef6b78c0,0xf93b0000,0xff0a98aa,0x051c8cf0,0x0c4d7ab0,0x1c74d520,0x1b775140,0x187b7dc0,0x126e0fa0,0x0bda9ba0,0x06f47610,0x041aee30,0x02e39228,0x02b60e10,0x05e88488,0x09a45a40,0x07a6c520,0x06bb29f0,0x061fd528,0x05b7b090,0x041a6778,0x05bd2468,0x058d1800,0x04a226a0,0x03457408,
-0x0146d40a,0xffd8c19d,0xfdec0840,0xfa944e88,0xf7963d10,0xf1e738e0,0xdf06e640,0xe108fca0,0xfa2c9948,0xfb5a54c0,0x079164c8,0xfd5600d4,0xf2fdc350,0xe232b8e0,0xe74b3100,0xedb591a0,0xf73bb8d0,0xfb710048,0x007516d0,0x043557d8,0x067370e8,0x081918d0,0x080f3ac0,0x08ab4980,0x076fb300,
-0x064ef228,0x072997e8,0x0718d5d8,0x056b4e78,0x05254d58,0x04a3e480,0x035c1eb0,0x049ef940,0x05527f78,0x06ef4db0,0x04df3d08,0x03cb7d98,0x02a97f64,0xff833eb7,0xfbb8ce40,0xf54d34f0,0xee3d04e0,0xe0e5a240,0xf940af88,0x285f9f80,0x22119040,0x20860ec0,0x07061740,0xf8b99c68,0xec38a5a0,
-0xe5f234e0,0xe8002e60,0xec9d53c0,0xf0a676a0,0xf35d9780,0xf4858620,0xf5443d70,0xf8c1b378,0xff6d9966,0x022c6ffc,0x03dace0c,0x05b54fa8,0x050f5bc8,0x04f25290,0x0712c070,0x06237888,0x06420b98,0x057d4d48,0x05aa96f0,0x058fca60,0x063de9e0,0x020d9a98,0xffded384,0xffd1cd0f,0xf7b0c190,
-0xf8dc6178,0xeac9cce0,0xf73019b0,0xfbe59148,0x2324be40,0x258d86c0,0x17ded0c0,0x08229d50,0x0aa72670,0x0c6ae010,0x0b2ce9d0,0x07237060,0x053cdf98,0x01f9473a,0x0648a4d0,0x058d6ff0,0x00a53a14,0xff1617fd,0xfe5d5a36,0xffa615bb,0xfddc5430,0xfca0009c,0x006d1259,0x056ef068,0x038cd89c,
-0x033881ac,0x02ae2784,0x022ea824,0x0213bd74,0x059f91e8,0x0636e000,0x01e522fc,0x0561d418,0x03778cac,0x023f8dac,0xfda6afc0,0x023b9ba0,0xf8e6fef0,0xfe5a1c48,0x093892d0,0x179274c0,0x1612b560,0x1062bbc0,0x0d7c67f0,0x092fcd10,0x0544b258,0x04fb45b8,0x03f7ad00,0x08e79590,0x119535c0,
-0x122ae860,0x103611c0,0x0bc07120,0x07131040,0x01390124,0xfa0ee9d8,0xfb3570a8,0xfbf7f548,0x00f081d1,0x06248ae0,0x01d4beea,0x02054f68,0x04461d20,0x04293e60,0x03de3014,0x03c67700,0x03e2ca04,0x022bb374,0x012b451e,0x00efaa7e,0x0426c2c8,0x02dd8cf8,0x018caf22,0x0169f40c,0x11400340,
-0xfcc58504,0x0e396ba0,0x0e7b37b0,0x0b3cbec0,0x0b534530,0x042d0cd0,0x0057a2a4,0xfeb0d45e,0x008bd1f2,0xfff44313,0xffa1612c,0x01147834,0x019233c0,0xffeebe5e,0xfd137c30,0xfba93900,0xfaa8d828,0xfd0a5dc4,0xfe859b76,0xff5b8b89,0x023708c0,0x029a634c,0x031fe030,0x022e9d60,0x02923858,
-0x03753d20,0x0174f314,0x00cd87d8,0x03118cf8,0x0291a918,0x01fcacce,0x015da352,0x017b676a,0x032551c0,0x010f06da,0x04457ed0,0x0621bef0,0x06e992b8,0x08c8ad60,0x08a48180,0x09aa8760,0x07f34690,0x071ea260,0x059c84c8,0x053622a8,0x05461610,0x05be6458,0x03d50140,0x01c36ade,0xff6d6db7,
-0x0083e326,0x00d90d9a,0x019f24dc,0x0130942c,0x03ce9b88,0xffa5a467,0xfab59540,0xfe2d8cc8,0xff403336,0x004b9043,0xff164842,0x027403d8,0x0087cb94,0x03ff8cfc,0x0130fb0c,0x028f1d10,0x00e06449,0x0137c59c,0x02a2f644,0x0353b51c,0x048e3ca8,0x066108e0,0x028d0738,0x08fe72a0,0x08f83d10,
-0x09299280,0x098a8550,0x09cc6710,0x0a258d70,0x0a9bc850,0x0a1fb370,0x094e3660,0x08997c90,0x07d718e8,0x074144b8,0x05955578,0x065d98e8,0x06dac7b0,0x07a7f638,0x07a30830,0x0888e860,0x09095f20,0xfff4854a,0x05e11fb0,0x060122a0,0x06817930,0x05737d60,0x077a00c8,0x0718a520,0x073c04c8,
-0x063f94c8,0x072a9318,0x06e89108,0x06365008,0x06660d38,0x05e87570,0x05e23fc0,0x07347768,0x08a5e120,0x0943b710,0x0836e080,0x08b7e160,0x08b94390,0x08ff99b0,0x09334160,0x097f1590,0x097fe1d0,0x09a747b0,0x09b95100,0x09dd0600,0x0a0bbad0,0x0a3d6320,0x0a227e60,0x09d3d230,0x09967cd0,
-0x09a0c430,0x08ee8a00,0x0ab8dbb0,0x074bac98,0x05535c28,0xfffc58b5,0x082a1b00,0x05d17ed8,0x01e5d3c8,0x01f58db8,0x0215f3f4,0x0298d27c,0x02730ffc,0x02b760c0,0x02dcd1b4,0x060b9060,0x087073d0,0x0233ef34,0x065abd38,0x0997d970,0xfd6ee660,0xfe3e4d82,0xff3130f5,0xff22a044,0xff627728,
-0xff630689,0xfdc4bbbc,0xfc9d9d00,0xfb3482a0,0xfae83d70,0xfad4e140,0xfb3200d0,0xfbd96840,0xfc5b0e48,0xfcb12d0c,0xfd007280,0xfd36e2d0,0xfd4a3a84,0xfd90a388,0xfde0bb10,0xfd6d3c68,0xfe0046ea,0xfeb713fa,0x01629196,0xfda3adb8,0xfeb023b0,0x0126b318,0x013ad8e6,0x0146a0da,0x0114ddba,
-0x0128e000,0x00ff13a1,0x00ea8ca9,0xfe6a23ce,0xfe1e8980,0xffcdacc4,0xfe3cda3a,0xfc95edfc,0x00dd4e68,0x02f4702c,0x029648a8,0x023e11ec,0xfdf5ea60,0xfa4ca470,0xf69971d0,0xf4ec51c0,0xf51c4450,0xf728b920,0xf94b7e50,0xfaa891b0,0xfb278b48,0xfbe7a9a0,0xfc666c84,0xfc834afc,0xfd5efae8,
-0xfdc1c4d0,0xfdd97638,0x0065643e,0xfeaea126,0xfec3fdfc,0xff190d0a,0xff8c03ab,0xff053d25,0xff7cfffc,0xff842560,0xfff4ba75,0xffb97141,0xffac2242,0xffd843f7,0xff0153e0,0xfed6bd00,0xfe0c5088,0xff836edb,0x000de964,0x02bd68b8,0x0a858a70,0x08973710,0x07eb9368,0xff2913dd,0xf7c6bb70,
-0xf07613c0,0xed71c9a0,0xedd84740,0xf0eb3a10,0xf4659f00,0xf76f0650,0xf86b2b60,0xfa41bc28,0xfb359060,0xfb80dfa0,0xfd697874,0xfdb98bd8,0xff211a5b,0x001c3f60,0xffea9aff,0xff571797,0xffb05de8,0x00e585e6,0x000b951b,0x0220e8fc,0x018a6190,0x02af75cc,0x02691424,0x02d46b84,0x02af5634,
-0x007c1ba0,0x0012d84b,0xffbb77d0,0x023f0be4,0x01f12156,0x07750410,0x114714a0,0x0f1adb10,0x0d3065e0,0xff11fa52,0xf35bdd60,0xe7ca6260,0xe32032c0,0xe5f951e0,0xee341080,0xf4b0e2d0,0xf810f2b8,0xf87e3058,0xf9d252d8,0xfb160b00,0xfb27dd50,0xfd627998,0xfdd19a64,0x00705862,0x03ae49dc,
-0x01655b5a,0x03bc7ee8,0x022bfd84,0x026e0edc,0x02206c4c,0x03c64428,0x04dd8200,0x04d0d680,0x045867b8,0x040ee348,0x04661658,0x01252e1c,0xffa06edf,0x01b40aec,0x05bc6010,0x0312b9cc,0x119b2360,0x16bbc460,0x178cbb60,0x171b6500,0x0ae2a950,0x00e546e9,0xf677f300,0xee2042c0,0xe4b1c0e0,
-0xdafc9900,0xe03c3f20,0xe53957e0,0xed259420,0xf11bdb60,0xf4c112e0,0xf6680170,0xfc1ecaa8,0xfd4052c4,0xfe17db96,0x00877028,0xfe75eaca,0x01187404,0x01aa7334,0x0331a614,0x03355800,0x04275dd8,0x03fdaaa8,0x0390b558,0x041322c0,0x04d6fae8,0x04cea330,0x07842408,0x071ebe58,0x05570c98,
-0x00b4452d,0x05a35cb0,0x0e1d0520,0x063378b0,0x02cec43c,0xf6da1570,0xf6533a50,0xfa97ddc0,0x0803a390,0xfb95ce08,0xefcca5e0,0xdf3d5cc0,0xe18663e0,0xe0d03700,0xe0be0480,0xe6b60060,0xecda8d20,0xf2606770,0xf69b1680,0xf773f3b0,0xfc09b394,0x01aeebea,0x01c8ecb2,0x03628234,0x02a1bf60,
-0x0361f594,0x03de104c,0x04e04a00,0x053d6cc0,0x04f742f8,0x01fbf548,0xffd34c83,0xfd84d068,0xfc55ccc0,0xfd5753dc,0xfe3b4a48,0x0350eb7c,0x1355ea20,0x03ee41a0,0xd95ac1c0,0xd93d6480,0xd47db900,0xf650d940,0x0a64f3b0,0x1f3599a0,0x1f659000,0x19f50c20,0x10967440,0x0ccca8d0,0x07422608,
-0x0187024e,0x01bb4b04,0xffb854fc,0xfbdece08,0xf83f1000,0xf4a03f70,0xf782be00,0xf9cb4e28,0xfa474de0,0xfe29170e,0x0022b778,0x025c3b08,0x01bfa982,0x06800ee0,0x0642cc50,0x0156d7d4,0x04393248,0x04c8d460,0x01c6db5c,0x06657a08,0x05ac6e38,0x0ccf0c20,0x028c8710,0x03244bec,0xe1cb8e80,
-0xdce35240,0xecaf0620,0xf606d1d0,0xfda8fa4c,0x04552178,0x10fec4c0,0x18bdce00,0x1faefe80,0x25b7e580,0x1e98aac0,0x18f697a0,0x14fb2760,0x0f7f15e0,0x098429b0,0x043dddc8,0x0258fe08,0xff358104,0xf8eccb10,0xfb877790,0xfba8c9b8,0xfb070848,0xfcb2a848,0xfdd89b34,0xfe2af222,0x0346b1fc,
-0x055a4f28,0x0243ed8c,0x04dcaa78,0x047f7578,0xfec58fd4,0x0253c460,0xfd76409c,0x02ad4b44,0xfe0b35f6,0xff27d8eb,0xf6235110,0xf91ff180,0xfbb0a758,0xf5f55240,0xfaa88100,0x001dffc1,0x06bf0e40,0x0e49ed50,0x1142cbe0,0x0fa1dc20,0x1185cac0,0x12b31380,0x11c4b1c0,0x11772ba0,0x0f11aa70,
-0x0c61f770,0x01baefa8,0xfc41c428,0xf810dd08,0xf9155820,0xfb1bb9a0,0xfe30b3f8,0xfebd17ca,0x00459950,0x03104cec,0x04209400,0x0470a048,0x05efad30,0x05997c40,0x059fe418,0x0358d224,0x02fe3694,0x022be4ac,0x023b80c0,0xf670de90,0x09c75010,0xfa9a0ce8,0xfb2d1bc8,0xfda31250,0xfab1d870,
-0xff025ec6,0xfff3cc9c,0x005b494d,0x0024c5fe,0x0292e90c,0x050bba80,0x055046c8,0x05fef340,0x07e14730,0x09fb7f50,0x0a90f100,0x0af8bd40,0x05f056e0,0x04218618,0x02ba2ea0,0x01118eba,0x02ee5960,0x025108e8,0x05941568,0x06071b80,0x0475ba70,0x051e67b8,0x04db7188,0x03c02720,0x0215ac6c,
-0x0173e386,0x0199b962,0x039270c8,0x03a3dbcc,0x053cf480,0x02f21bdc,0x0105b2aa,0xfff670ae,0xfe312d4e,0xff6f9247,0xff777616,0x00751de8,0x017c6f4c,0x033b3124,0x03cfd144,0x042a0530,0x04979898,0x072c54e8,0x09ceb600,0x0c91b3e0,0x0bb59ca0,0x0b6b8b80,0x0b757630,0x0cbc9e80,0x0cba1b20,
-0x0e177d10,0x0d7c6d50,0x0cc1cac0,0x0c1cf260,0x09afe4f0,0x08558dd0,0x061d1170,0x06419038,0x03083b6c,0x04883618,0x02b38dfc,0x044b29e8,0x02e8ce14,0x026e5664,0x01fbd1a2,0x01f306c2,0x00133182,0x087b4750,0xffa3f9c3,0xff717942,0xffa6b9d5,0xff7097c5,0xff81a9da,0xff52a0f8,0xfef47526,
-0xffdb1e7e,0x00f30607,0x01ca6494,0x02d98924,0x03b0c784,0x0568d6f0,0x059d6530,0x06205a60,0x06130580,0x05f82230,0x0546bfe8,0x06031258,0x0a91fcb0,0x058e0018,0x04e6be50,0x046dabf0,0x044e8f08,0x01cb111e,0x0182ec82,0x01b69806,0x02a56d88,0x0148fba2,0x006ece7b,0x01df6d08,0x01a5e302,
-0x03392084,0x03a77a78,0x0158f4a4,0x02ce768c,0xfee53004,0x00c9c1a0,0x005f650a,0x006e623c,0x0060ca2c,0x00647283,0x004b6017,0x00c78401,0x0116160e,0x017e6bda,0x01c2e3a0,0x02039e74,0x02499640,0x020b95ac,0x01f9ff3e,0x01ffeb78,0x02274480,0x0281cfd8,0x01503ea0,0x05f31a20,0x07c3ef98,
-0x0b491210,0x035d7158,0x063c17e8,0x09ac02e0,0x09de3850,0x099c56b0,0x090f47b0,0x097179b0,0x096d18d0,0x09073560,0x0577bb58,0x0182641a,0x09be4ba0,0x05c9a080,0x00e5b785,0xfe4e9524,0x000d38c7,0xfe59a920,0xfefd4598,0xfe850e8c,0xfe53390e,0xfdb7bd00,0xfd9f5d28,0xfde6e450,0xfe078566,
-0xfe0d9648,0xfdfc11f8,0xfdf68e94,0xfdf4e10c,0xfe0ef3ec,0xfde9ce00,0xfdea66f4,0xfdf8dcf4,0xfde8f0e0,0xfdf61320,0xfdec2438,0xfe978e90,0xfeb22afa,0xfe185700,0xfef06a6c,0xff12c7e2,0xfe7c3f36,0xfebb2950,0xfed6c5e4,0xfec6bfe4,0xff0101a3,0xff226c16,0xff107ba2,0xff9b880f,0xff710f99,
-0xff653ea1,0x0046cc12,0x0464bb80,0xff9f47d6,0xfed45b58,0xfea3316e,0xfdcb9ea0,0xfc12473c,0xfbb9b0d8,0xfcf287a0,0xfd2ebefc,0xfd6f1174,0xfd441e70,0xfd2ffe70,0xfd55a678,0xfdcdb948,0xfd8f8290,0xfd5f4998,0xfd485c94,0xfd0d4884,0xfcf711d0,0xfd358794,0xfe0aabae,0xfe1aa4d8,0xfe829f08,
-0xfecf85ea,0xff2e4c69,0xff756d51,0xffce96e0,0x00208db1,0x001a5d4b,0x002dfa91,0xffd39262,0xffc4d892,0x007aa2ef,0x0138347a,0x02199d94,0x00f952e9,0x05754520,0x0141d2b0,0xfc8c3348,0xfd7952a8,0xfc8078a8,0xf9683a38,0xf9a6dbf8,0xfc120984,0xfbb3d1a0,0xfa9ffcd8,0xf99c2c80,0xf96ea0d8,
-0xf9b38800,0xfb0cc140,0xfae64e20,0xfb4638e8,0xfbbaec90,0xfb5a5ff8,0xfb603758,0xfc0d48c4,0xfd2c6974,0xfdd66ef8,0xfdfa6b8c,0xfef05f20,0xffd34248,0x0026593c,0x0115d2a2,0x011d9e3e,0x0181d800,0x015cf444,0x01dee2d2,0x01251d72,0x022135a4,0x02699424,0x048229c0,0x02f8aa80,0x0a8d3680,
-0x02460590,0xfb549f08,0xfe13cb34,0xfd3bd3d4,0xf8269ec8,0xf68f5d10,0xfae37258,0xfa265560,0xf90156e8,0xf79f29a0,0xf785f9c0,0xf8cd3dc8,0xfb8380e8,0xfbb4bdb8,0xfb933690,0xfbbcd1f0,0xfb142368,0xfac031f0,0xfac0cd80,0xfd83f94c,0xfd9eb3bc,0xfeca39bc,0x0021a626,0x010d26fe,0x00abfb45,
-0x02b52264,0x03f11930,0x03b99aac,0x033d3fb0,0x02fc19ac,0x02dccd48,0x05101988,0x07e94150,0x080c07d0,0x058fa4b0,0xfbb21058,0xe8515ca0,0xe24396a0,0xe355d8c0,0xe2aef1c0,0xedbe6f00,0xf720eb10,0x00b5e72b,0xfbe265e0,0xf97de388,0xf4e66ee0,0xef40dd40,0xed0aab60,0xeaf72240,0xefaa8da0,
-0xf29ce950,0xf3c0a770,0xf53e4300,0xf6a7b230,0xf8342728,0xfbf38850,0xfd4db9a4,0xff5dbc25,0xfff27796,0x016c4cac,0x02cde770,0x0394bca0,0x03ced824,0x0380f708,0x03bcff58,0x02c94ac0,0x01911c66,0xfc07b81c,0xfb50e0c8,0xf94168d8,0xfc2b385c,0xf76fa480,0xe8fc1fc0,0xe49a04a0,0xeab20ca0,
-0xfbe99210,0x01b1e26a,0x052200b0,0x07b469f0,0x13c397c0,0x1e5101e0,0x2b240bc0,0x237a18c0,0x1f429e80,0x1b136060,0x1301e700,0x0a6a5dd0,0x02e01a94,0xfd2ddfb0,0xfc02fc34,0xfa870060,0xf7b08e10,0xfb6cacf8,0xfd1dd00c,0xff855ae2,0x01952efe,0x02575ba8,0x04d17770,0x05003da0,0x02c9d410,
-0x0211ebbc,0x00e96f9b,0xffb61251,0x01edad94,0xff54eb34,0xfdfe1f68,0xf6e39fd0,0xe489bf40,0xe947e660,0x13193f20,0x1c08d0c0,0x2bf44f40,0x15c98a00,0x0e31b0d0,0x06778550,0x0eb8ff90,0x15f9a5c0,0x1ebd0840,0x21a7dcc0,0x254260c0,0x27af76c0,0x265af980,0x20a50fc0,0x16f88180,0x0dbb8b60,
-0x09fd6d50,0x0093243d,0xfb431838,0xfae0d7d0,0xf77b3dd0,0xfa65c928,0xfb89e9e8,0xfc7935e0,0x02953c80,0x04584a70,0xff495d9f,0x046510c8,0x02ee61d4,0xfe280460,0xfc139ac0,0xf96a88a8,0xf32b6cf0,0xf5986d50,0xf4961c90,0x0e1fcd50,0x1d402660,0x1262d9a0,0x13470660,0x0460bfa0,0xfdafdfcc,
-0xf70c4580,0xf7f3b070,0xf8584848,0xf6cf2870,0xfe15cef2,0x03aaf538,0x07ee8048,0x06f8e458,0x07aa3518,0x0a29cff0,0x07806cb8,0x073ff3a0,0x0587d9f0,0xfd58ce50,0xffc72009,0x00918f3f,0x01405b34,0x02bd93a0,0x02295138,0x047d57c8,0x03932780,0xfd46981c,0x01d2b92c,0x015f4c92,0x00bc0baa,
-0xfeb8a856,0x00226823,0xfc03e7ec,0xfccd2b48,0xff7bf6bd,0x04bad8f8,0x058fd2b8,0x06946e60,0x0bddb990,0x0037b993,0xf891f630,0xf0c16d30,0xec0cd780,0xe9a1ccc0,0xea09ab20,0xec79e540,0xeed89d20,0xf30e7460,0xf8002530,0xfcad9030,0x00c1b24e,0x0400c340,0x06165ee0,0x07269e38,0x02acf160,
-0x04ff93f8,0x03eeae80,0x02137a38,0x01b44f44,0x00cf22d9,0x01e7095c,0x01fa3604,0x02e3d4d4,0x033bad2c,0x017f3fe6,0xff2ae96a,0xffcacaf5,0xff617b2c,0xfd5df4c0,0x036c4864,0xfb70d998,0x03c55b68,0x02b0bfcc,0x009d421e,0x00641035,0xfd8275d8,0xfd416bc0,0xfc95ec9c,0xfaea8aa8,0xf8106fd8,
-0xf5a925f0,0xf5683240,0xf55321e0,0xf4b7b1c0,0xf64c9490,0xf7e70fb0,0xfa0281b8,0xfe09ba48,0xfedc4300,0x015c95e8,0x04228a10,0x0156d17a,0x021c0a40,0x013b5cec,0x01016812,0x01e4e328,0x0332d158,0x03b3ed34,0x01905590,0x02cb5744,0x025dd3a4,0x00d9a906,0xfed579be,0xfe547d36,0xfebea168,
-0xff5e2644,0xff346ead,0xfe93513e,0xfe24e754,0xfc558d3c,0xfb1eb538,0xfb059eb0,0xfa168c20,0xf8c643e8,0xf9894058,0xfa3d1828,0xfaa7c650,0xf9f31fa8,0xf93395c0,0xf85b0f08,0xf9a4b270,0xfae7e700,0xfb804aa8,0xfb1942c0,0xf8e59ec0,0xfb2b2ba0,0x0032a512,0xfe96b2a4,0xfe5dd200,0xfee39b00,
-0x01429e8a,0xfefd0904,0x00d0fbf3,0xffd24364,0x00e2b89e,0x00a16823,0x000ece63,0x00217033,0x005d74bc,0x0080ffdf,0x00a6925d,0x005c6c49,0xfc4e65e4,0xfdc5f458,0xfe2db6f0,0xfdfe9734,0xfdedc530,0xfdbed1d8,0xfde6ef88,0xfe0ae2e2,0xfdf12ac8,0xfda020cc,0xfd894728,0xfd5c3cbc,0xfd6a58f4,
-0xfd518f18,0xfd01e2a8,0xfc8d17ec,0xfc669b7c,0xfcdd0d94,0xfd24bab8,0xfcd2b610,0x015a0e64,0xfeffb158,0xff374254,0xff0c05ce,0xffe66da1,0xffa177b7,0xff878c33,0xff0545b5,0xff0f57cf,0xfe71a068,0xfe790258,0xfdf43d88,0xfde412c0,0xfd9b32e0,0xfcfe0884,0xfd1ee3fc,0xfe323d14,0xfde59258,
-0xfd87c4a0,0xfd8d27b4,0xfd8f9acc,0xfd781120,0xfd4f6734,0xfd2a30b4,0xfce156c4,0xfcb01b40,0xfc78e7a0,0xfc58b3e8,0xfc2d5210,0xfc0710f8,0xfc4b85dc,0xfc8fbdf4,0xfcb21500,0xfc9b7df0,0xfcea0658,0xfc124fd0,0xfd40063c,0xfe22ec6c,0x008e4bf2,0xfdc30cc4,0xfe9a3d42,0xffedc5b0,0xff9633c3,
-0xff7ad90f,0xff2da738,0xff11584c,0xfeeb93e6,0xfed12204,0xfdec74f8,0xfdc38fd4,0xff18b5a1,0xfe25f9c2,0xfd2eb96c,0x001734d1,0xfccee084,0xff4268e2,0xfea4e76e,0xfe9b4740,0xfe200c3e,0xff7e80b5,0x002811c2,0x00d804cd,0x00e270c5,0x01170fae,0x0130585a,0x0153a118,0x0155ebf6,0x0161657c,
-0x0135deb2,0x010dc77a,0x00e3119e,0x009e759e,0x004b485d,0x012e2a1a,0xfdf73d94,0xfd2090cc,0xfcb4f5a4,0xfe69270a,0xfd41f784,0xfd3b2968,0xfd22dc78,0xfd3d74dc,0xfd5f935c,0xfd29d000,0xfd099134,0xfce18c94,0xfd4878c8,0xfe33739a,0xfd63e61c,0xfca369a0,0xfb2d7d38,0xfb4d80b8,0xfb4d5050,
-0xfa5eaaf8,0xf9a4fe18,0xfd59ccc4,0xff7d7097,0x012bf2c8,0x01a10684,0x01ee99ba,0x01e59fe6,0x027d0af4,0x02e26298,0x0331b3d4,0x03028ed8,0x02aacb6c,0x025c432c,0x0181c1da,0x0172ba28,0x00e1213a,0xfce9031c,0xff5bead8,0xfed081e2,0xfee10484,0xfec5f4ae,0xfffb3411,0xfffb8e5c,0xffd4457b,
-0xff29676b,0x0033949c,0x008a860c,0xff1e39f6,0xfea04fd2,0xfd91ee5c,0xfd9287c4,0xfdbf1414,0xf876d848,0xf79614e0,0xf8009908,0xf6addaf0,0xf4e86690,0xfd0ff434,0x00d3158c,0x046ab2a8,0x048c13c8,0x0577dc00,0x05c855d8,0x06fcb7f0,0x07385d58,0x077371f8,0x069740a8,0x058ff728,0x049f4290,
-0x02c72b1c,0x02a9c11c,0x00dc4a3a,0xfe471ea0,0xfee5ea70,0xff723d8f,0xff0c7891,0xfed81ae4,0x011699be,0x00341891,0x00f2837e,0xffb19959,0x0137fd58,0x001e43fe,0xfebef826,0xfe5ed584,0xfe3764be,0xfc9975ec,0xfa991b88,0xf45c59a0,0xf18995d0,0xf1dae2c0,0xecde5860,0xe95011e0,0xf5e5d680,
-0xfdef376c,0x0368b0f0,0x04334570,0x03b67cb4,0x029c3030,0x050b7e60,0x06f4f4a8,0x088a5910,0x0854f0a0,0x0771f868,0x06876238,0x046c5850,0x0445e310,0x025d45b0,0xfd753944,0x003650cb,0xfe4389bc,0xffa8098d,0x0054d4b9,0x01b150aa,0x024f0e28,0x033f84e0,0x02d8018c,0x03734004,0x032f9b08,
-0x0082ac39,0xfe980520,0xfc2c1760,0xfb628ac0,0xf9a32278,0xf34c6000,0x0334949c,0x0bdb6900,0x0d3a5fe0,0x16a34160,0x17a99d20,0x15705840,0x10d13d40,0x1632f460,0x1b2005a0,0x217fb540,0x219f8600,0x1f778460,0x1c3bf100,0x1539ef20,0x0ff6d4a0,0x0ca96190,0x06f6cd08,0x055c9240,0x016e2406,
-0xfc9eef34,0x00d56288,0xffea9133,0x012376ae,0x01c659fe,0x03142348,0x0410f900,0x03c07a14,0x0220d8d0,0x0182e014,0xff1805a3,0xfbd9dce0,0xfe5669dc,0xfc66b780,0xfbcb5d78,0xf78bb270,0xf9ecd010,0x0bd8d6b0,0x21379540,0x1d0e3600,0x13f069c0,0x0b35da00,0x07a6cd58,0x028b6240,0x01d9c6ca,
-0x04a40d58,0x06ea2128,0x11ba10a0,0x16e56280,0x19285dc0,0x15bb1020,0x11d37ca0,0x0c25ac30,0x0a59d970,0x08d15200,0x06216008,0x0259c1a0,0x00029d38,0x00767009,0x017931f0,0x02773f08,0x01d0cbee,0x03a8df40,0x04072f88,0x0287979c,0x01b7f13a,0x00f675a3,0x010ea2fc,0xfe7409bc,0xffdfff08,
-0xfde3cb60,0x02986c34,0x13a95100,0x1a11d3c0,0xfeffd2e6,0xf2737720,0xe57cb940,0xec2138a0,0xeff9f1c0,0xf5874f40,0xec5bb180,0xe761e700,0xe0bb4e60,0xdfbc8b80,0xe076d5a0,0xe5a979a0,0xe7548a80,0xec903e00,0xf3766e90,0xf9da8718,0xfbb9ba00,0x02d8f548,0x04b04a08,0x0367af9c,0x03018ba8,
-0x01378118,0x00b385fb,0xfefe0b22,0x0209ccb4,0x0323ef10,0xfe9e3cd0,0x03c58ae4,0x0336ae54,0xffe5c7b6,0x004b29a7,0x04eba3b8,0x05e157c0,0x09162130,0x0c2a3690,0xfb5cbae0,0xed04c260,0xf257c0d0,0xec2ac2e0,0xf486f310,0xf59c1240,0xf6a248d0,0xf1a76730,0xedd735c0,0xeb2c1120,0xe789dc60,
-0xe4fea040,0xe4a55a00,0xe78b7420,0xeb1cb8e0,0xed56b220,0xf0d0caf0,0xf32f4d50,0xfb949f68,0x031101cc,0x00102cb5,0x0235a474,0x01064b5a,0x013b630a,0x02662830,0x023dfff8,0x02c68b68,0xff51bee6,0x030de740,0x0377e26c,0x028d4330,0x030179d8,0x0185e46c,0x02e73954,0x05057c80,0xfcd89c70,
-0xf7ea7620,0xf70670b0,0xf6ed6d20,0xf540f6c0,0xfd2b71b4,0xffacb383,0x00dd4cfb,0x019e38bc,0x018d084c,0xffecd269,0xf982a9d0,0xf59bd340,0xf3641120,0xf0b86fe0,0xf0ae0960,0xf128a8b0,0xf523a7f0,0xf74a7290,0xfaafaa30,0x020b4278,0xfe0cbefc,0xfea2da04,0xff9a0df1,0xfee64402,0xff57c447,
-0xff9ac766,0x00781211,0x00ef221c,0x019429b0,0x01a9a350,0x017b23d6,0x00d70c0a,0x007950ab,0x018a4528,0xfb060df8,0x0164f62e,0xfb306918,0xfbbb4c40,0xfd067870,0xfe257260,0xfdc738a0,0xfc4de224,0xfc1b3548,0xfeaddc46,0x00624d08,0x00c8999c,0xffeefe24,0xff694d1c,0xff6768e5,0xfeab570e,
-0xfd7d26ec,0xfa97d3a0,0xf8e11e38,0xf82cb1b0,0xf946b520,0xf9c163b8,0xf9ca3a70,0xfb9110a0,0xfbaba888,0xfd9e2a3c,0xff3da320,0xff4a4495,0xff95bf9e,0xfffca2c8,0x00eadf30,0x013bab0c,0x00f61055,0x00584784,0xff283e67,0xfe8801bc,0xfdf1ab44,0xffc8111d,0x0071be43,0xff8b1ef9,0xff3c23ba,
-0xfe958d74,0xfe6090ac,0xfef7f68c,0xffa668c8,0xfe7d7a14,0xfdaad610,0xfd3b5584,0xfda73750,0xfe16fbdc,0xfee794de,0xfdf16a88,0xfd300648,0xfd06a6dc,0xfc62d098,0xfc506f08,0xfa72feb0,0xf9b0d198,0xfb11d110,0xfb84bd70,0xfc853738,0xfcfaa0f0,0xfe06bfda,0xff0550e0,0xfff3a8f8,0x0191bf32,
-0x00d809d2,0x011661e6,0x00f42948,0x0090ffd7,0x00406e23,0xffa881d2,0xff776748,0xff602cc2,0xfe6db616,0xfe4b436c,0xfeaba2b8,0xfee0985c,0xff1e64e6,0xfeead3a4,0xfee4aa38,0xfe85b5b2,0xfe591584,0xfe049c72,0xfdd02b78,0xfd75e740,0xfd2a7350,0xfd01a84c,0xfce4889c,0xfc9a41f0,0xfc4cb2e8,
-0xfc42a24c,0xfc35cad4,0xfc566a70,0xfce435e4,0xfd002c0c,0xfd613998,0xfdb72be8,0xfe11458a,0xfe1a5a0c,0xfe0b0b8a,0xfe57a45a,0xfe720aec,0xfee64e2a,0xff1fa2bb,0xff17de6e,0xff04d5e9,0xff3a3755,0xff3429f8,0xfdc26e00,0xfe3e404a,0xfe817eca,0xfe7f7e72,0xfe87e684,0xfe948e0c,0xfeb98ea0,
-0xfeeaa86a,0xfee8a852,0xfee64d8e,0xfede7572,0xfec1555a,0xfeab390c,0xfe907a4a,0xfe6e6f54,0xfe48cbd8,0xfe2eb9b6,0xfe1652cc,0xfde2fae8,0xfdc3ec2c,0xfd39a75c,0xfd1abfa0,0xfd428a40,0xfda84bd8,0xfd6751e4,0xfde02b80,0xfdead808,0xfdf29838,0xfddbfe28,0xfdf1999c,0xfdd75040,0xfde343d8,
-0xfe22a93e,0xfe534844,0xfd9e1534,0xfdc395bc,0xfe14e44a,0x06d2af18,0x05ec0da0,0x076116a8,0x06cbaa30,0x079c28a0,0x08108d40,0x08008da0,0x07ff2950,0x084cfa50,0x076886a8,0x06ed98a8,0x06829248,0x064376a8,0x061f3fd0,0x05f52200,0x06066008,0x05f66328,0x05c4adf0,0x05f07608,0x05c868c0,
-0x05cf41a0,0x05c729a0,0x0494d920,0x00f850a3,0x060035c8,0x049f79d8,0x01760a94,0x01628dcc,0x016d8872,0x018b9a38,0x01cd378a,0x01c08cf0,0x0185f742,0x04647400,0x0674ade8,0x007661b2,0x04019d90,0x010118a8,0x090faeb0,0x09cca050,0x0b177220,0x0c472cb0,0x0be55470,0x0be864d0,0x0c6cdcd0,
-0x0a923800,0x0933caa0,0x07cefd40,0x06872ca0,0x058b8818,0x04e64750,0x04f38320,0x04f2af38,0x04939ef0,0x051e2ea0,0x04ed3e00,0x05398bd8,0x03f7ba84,0x048f8f38,0x050f0808,0x04033690,0x03e55f6c,0x057e9bb0,0x052c6178,0x057cb000,0x04c32c78,0x05d0b3d0,0x05c2aeb8,0x0467c038,0x05091228,
-0x043d4608,0x03cdcdc0,0x056b2320,0x0417e128,0x08f57470,0x0e7faba0,0x0fa9f7d0,0x12420960,0x1110de20,0x1090cac0,0x11b31660,0x0e9ad290,0x0ca9f060,0x0a6bc440,0x081ac460,0x06d2a150,0x057fbe00,0x053891d8,0x04c2d520,0x0385036c,0x0472f670,0x03cbdb5c,0x03a04778,0x0479bd90,0x02ef1578,
-0x02eef458,0x024370f0,0x02158804,0x04028b40,0x027723a8,0x036f0c60,0x0243e730,0x03eb4960,0x0358d270,0x0226f0c4,0x0260c01c,0x02114000,0x02245a84,0x04dd62f0,0x02a1d0b4,0x0c361360,0x13ac30a0,0x161a6a00,0x19e52060,0x177b8380,0x177838e0,0x18f06fe0,0x14c21560,0x11ddece0,0x0e37c020,
-0x08d2abd0,0x04d749e0,0x0210c640,0x017f739e,0x00ee8668,0xff6f509c,0x00ee7323,0x0097ff50,0x016d6760,0x032d8e34,0x01691a10,0x018b9486,0x000ef90e,0x00780154,0x023b1334,0x02010474,0x02472694,0x01d9ef16,0x034d3238,0x02e76be8,0x00e93000,0x0187c09c,0x015b110e,0x01dec1e0,0x039812a4,
-0x116431c0,0x12b3c120,0x10179060,0x12a60900,0x0eeee9a0,0x0a77dbf0,0x08a05d50,0x06991528,0x08e7f410,0x094a4560,0x0833cb10,0x0dd174c0,0x0f12dae0,0x0e173260,0x0bc51420,0x0a0785f0,0x087ec020,0x0730b450,0x046862a0,0x0573d9d0,0x053a94a8,0x020af158,0x0245dd1c,0x0191cd6a,0x022c0b98,
-0x02b37f90,0x0315d620,0x02c3df80,0x015a483c,0x019cfd66,0x02db3b30,0x048222f8,0x0524e198,0x0663c918,0x090d51b0,0x0bf544a0,0x0bfa6610,0xffd826a2,0xe5ffdca0,0xe4d28280,0xe67901e0,0xf3101330,0xfa075548,0xfeb5fd22,0xfb3374e0,0xf36bee50,0xed331ba0,0xe4b68740,0xe0c68980,0xe12e6b80,
-0xe37cb560,0xe78da820,0xebb9fe80,0xf2727b30,0xf6f8f550,0xfe07e9e6,0x04e03100,0x04b27810,0x03dbd058,0x01d53944,0x01c30436,0x02de3d50,0x02f3acc8,0x039da984,0x0258ea04,0x02bd9940,0x028140c0,0x020c3094,0x03206a78,0x0397c9d8,0x05e4c170,0x04029bb0,0xf9d90058,0xedd66320,0xf5708a90,
-0x00b394c3,0x0e41aeb0,0x039499c4,0xfc196658,0xf5e3c850,0xfc933aa0,0xff4a25d7,0x040a90a0,0x02dcd1c0,0x012c50e8,0xfd09c85c,0xf8520300,0xf5c61690,0xf4ea8ac0,0xf61ca470,0xf7425810,0xf8d97230,0xfc01be94,0xfed4cf5a,0x02342720,0x01f0d1e2,0x02afefb8,0x0395cf30,0x04149f78,0x044b9118,
-0xff8d4b6a,0x04e549e0,0x04b649c0,0x015978c8,0x0485c878,0x013525fc,0x02a6feec,0xfee2af62,0xf61e1a40,0xfdd7e030,0x068c8f30,0x05b55b08,0x11403c80,0x0558bdb0,0x030a1604,0xff057ffe,0x040d5d48,0x06eaa2d0,0x09c788e0,0x09031ad0,0x077048b8,0x03bca844,0x03a04470,0x01be4406,0xff9e408a,
-0xfe6cdc68,0xfda82bc4,0xfab2d0d0,0xf9f81188,0xfc03cb08,0xfa9b60a8,0xfc45bc64,0xfdfa99b8,0xfff27cc0,0x007c1e62,0x00e8d797,0xff250714,0x01fb117a,0x022f22b8,0x017076ae,0x00da0223,0x007d1cef,0xffac2289,0xfc336980,0xffb659a9,0x022a83f4,0x075467f0,0x07f0c200,0x07db8e00,0xffe99809,
-0xfd94adac,0xfd3cb048,0xfd6e3a40,0xfd81dd8c,0xfe0c990a,0x031ded5c,0x05678918,0x044544b8,0x043f1ea8,0x02dbea1c,0x01549ad8,0xfe46eaf0,0xfdf604c0,0xfc07b750,0xf8f47820,0xfbd55108,0xfc97aa4c,0xfe5f3190,0x0028aae8,0x0129779c,0xff995fe8,0xff3a29f4,0xffb109f4,0x0187ae2e,0x026f0360,
-0x03386510,0x0123a298,0xfff92605,0xff04b2b4,0x0265adf8,0xfc562184,0x02dfc8f8,0x052da5f8,0x03cea308,0x00a89a4c,0xff9bb8dc,0x00369ef1,0x00e97515,0xfdd79490,0xfcfc9860,0xfe3e77ec,0xff795234,0xffd1ac49,0xffa28ff9,0xfd43174c,0xfc9a7f24,0xfd8261d4,0xfea461cc,0x00919e97,0xff28a4e5,
-0xfd4dea38,0x0075b6fc,0x00517120,0x00413b27,0xff9e0be9,0xffe3f088,0x00ba841f,0x011723ee,0x00c49740,0x00750c93,0x006199ad,0x00b87238,0xff7a945f,0xff50c515,0xff114975,0xfefe4bf8,0x0093444d,0x0088997d,0x01298b46,0x011e96fc,0x01c16d98,0x015e47d4,0x0046384c,0xff0b15b5,0xff1304db,
-0xfedf02aa,0xfe603708,0xfda8fed4,0xfd294038,0xfcb683b8,0xfcf7ae4c,0xfcc63ae4,0xfc011030,0xfd4dddb8,0xff47f1ae,0x00438906,0xff1a1493,0xff939764,0x0049c9ec,0x0081fabc,0xfff52f49,0x0179e646,0xffe8157a,0x00826729,0xff315b27,0x0038b16b,0x00114880,0x00b454f4,0x00a0cda3,0x00807ef6,
-0x005da724,0x00e80712,0xfd577778,0xfe69686a,0xfe751816,0xfe1f6118,0xfdfc9e54,0xfdacafec,0xfdc75394,0xfdb7fe74,0xfde0c7ec,0xfde31eb8,0xfdf1bbcc,0xfdd97294,0xfdaa5f34,0xfd49856c,0xfda8d444,0xfe25ab1e,0xfec8f1c2,0xfef85b54,0xff192739,0xff120d07,0xfcce202c,0xfe8dacb6,0xfeb2e972,
-0xff1b5e96,0xfeca6170,0xff569961,0xff6ac71a,0xff917bab,0xff14ebdd,0xff769446,0xff7873ae,0xff3f3981,0xff05b0f7,0xfeb653f4,0xfe63cc04,0xfe64d526,0xff363002,0xff347097,0xfee1c3a4,0xfede5f9e,0xfec23d7a,0xfebac914,0xfe9f8c1a,0xfe7e6b30,0xfe79972c,0xfe76aa1c,0xfe7d0722,0xfe92c87e,
-0xfeb8befa,0xfed33bcc,0xff00c406,0xff0df3e1,0xff22548b,0xff4405e7,0xff5cbb38,0x001cc6f4,0xff59ebec,0xfefe210e,0xfddfe390,0xff54e0e9,0xff00f5be,0xfe1b4580,0xfe291f68,0xfe4453fc,0xfe9d901c,0xfe902432,0xfead9e88,0xfedaf806,0xff19b164,0xff49ef5e,0xfebc744a,0xff030a9f,0xff012c24,
-0xfdd66820,0x01b90382,0xfd85a2b0,0xff0221a2,0xfe7aedb0,0xfec23222,0xfd659e24,0xfce7bf40,0xfcb23150,0xfcc23b70,0xfcd45058,0xfd0cfb3c,0xfd021f50,0xfd066ba4,0xfd1168ac,0xfd115998,0xfd28530c,0xfd4f2f14,0xfd7a5e40,0xfdebc9ac,0xfcae2518,0x00ae8b93,0x03197290,0x078ce4d8,0xffc06ef2,
-0x03042bf0,0x076224e8,0x073f1f78,0x070e7d68,0x066fca20,0x07115bb8,0x0728c720,0x06b4a208,0x032591cc,0xff88137c,0x0790c8b8,0x0421f198,0x075fa438,0xff86a888,0xff65c6eb,0xff392415,0xff783e47,0xfc5afe68,0xfb27a1a0,0xfae4a498,0xfac179d0,0xfb21cd78,0xfc18ab8c,0xfc566c10,0xfc8c9b58,
-0xfc8ff8b8,0xfc5d25c0,0xfc791d08,0xfcb9c710,0xfd3afb0c,0xfd578b18,0xfd2b7c34,0x031fbd2c,0xff9bad8f,0xffbfaf66,0x008a9c4e,0x0151aaa0,0x00501eac,0xfffacd43,0xfffbfc8b,0x00dbd433,0xffe1d015,0xff2c1feb,0x001ab109,0x008c0fe5,0x0244a034,0x02547fa4,0x00658a4e,0x05fa4468,0x03180b30,
-0xff541fad,0xffe92bb7,0x00b58819,0xfa66d280,0xf82881a8,0xf6efb010,0xf63fc670,0xf66cfd00,0xf7b08840,0xf7eeb090,0xf8132650,0xf8820db8,0xf8be3828,0xf9625dd8,0xfa5f0550,0xfbb50e70,0xfc3cbec0,0xfd3596d8,0xff7764d3,0x004b0eb8,0xffc48320,0x00162de7,0x01a845ae,0x016aaac2,0x028029e0,
-0x005bbc36,0x01f4a566,0x011c881e,0x029bd48c,0x009826db,0x0241cbe8,0x02e0cff4,0x0410f4f8,0x036b5ecc,0x08995710,0x039f2990,0xfe5e8e9c,0x0031dccf,0x01ccd36c,0xf951f178,0xf5409410,0xf39fe0c0,0xf31106b0,0xf3c94c10,0xf71d7e90,0xf9050a08,0xfa1bce98,0xfa26efc8,0xf9d32370,0xfa60fd98,
-0xfb629b98,0xfcd58f04,0xfd28f848,0xfcc63f48,0xffab001a,0xfe9fda82,0x003898b9,0xff25563e,0xffc24d67,0x014f7b72,0x019082a8,0x0232e8b8,0x009302f8,0x02678480,0x01b0f9c6,0xffc25db9,0x029cdca4,0x04b7dca8,0x043b4798,0x03edf6d8,0x01aa39ba,0xf4f19a20,0xf1fc76b0,0xf10479b0,0xf7850280,
-0xf9f59698,0xfb3ad560,0xfa381c90,0xf5350bd0,0xf1ff44a0,0xef38e460,0xe6a33480,0xe3674cc0,0xe38a2c00,0xe73eff00,0xea0ccea0,0xebebaf00,0xf125ac10,0xf54ba440,0xf99af870,0xff23cdf6,0xfe5969c4,0xff5c00ff,0xff9ff6e2,0x00d65ca8,0x02b484b4,0x01a3cee2,0x01e1eaec,0x021982a0,0x02f27e7c,
-0x022e8b78,0x00d96361,0xff46de37,0x002e0296,0x0003a0e3,0x0420ade8,0xf561fcf0,0xf817b758,0x06d4a248,0x0bda17a0,0x1220eba0,0x0d934a70,0x0a1f09b0,0x03070994,0x07d3ebf0,0x08f1f210,0x05597028,0x04b7fd40,0x016301ee,0xfa913d80,0xf7aeb5a0,0xf778a440,0xfc110974,0xf9a9c650,0xf9441270,
-0xf99a3ab0,0xf989af00,0xfc611514,0xfd666e94,0xfe66d4f4,0xff9e7c21,0x01b5653e,0x0242ccc4,0x03308064,0x02496910,0x044e7a68,0x04abf940,0x0461de10,0x0294ba00,0xff6cc756,0xfcbaba34,0xfaeeaee8,0xfe3fc01e,0x07ca8fd0,0x08049220,0x023e0294,0xfbb83320,0x059b21a8,0x08237ac0,0x01562d36,
-0x03c27440,0x05524f08,0x04372af8,0x072e5740,0x074aa958,0x059dcf40,0x07969c70,0x06e2ab30,0x05c01e68,0x026795c4,0x01eabba0,0xffa384df,0xfe967456,0xfe7afc6e,0xfe137256,0xff291fcd,0x00820ecc,0x03c408f8,0x0329a3ac,0x02cdd594,0x0001fdde,0x029c7864,0x015945f2,0x00407c2b,0xfe868696,
-0xfea5efd4,0xfd2b1424,0xfe98ca32,0x05c42170,0x03158580,0xf8e01f98,0xf918dd38,0xf88e5828,0x01701010,0x01b1aab6,0xfd99d450,0xfa2e5a98,0xf761ee20,0xf7fadee0,0xf9b8bd30,0xfc37cbf8,0xff6254be,0xff1dca01,0xffc53bd2,0x0130f52c,0x00d2179b,0x0101e21c,0x003ebe2c,0xfe2f7bf4,0xffc20804,
-0x00da5c84,0x00c3a8f5,0x017b0ca6,0x02574324,0x016ae5b4,0x00ad43ed,0xff067471,0x0134cb50,0x02020da4,0x0373c9f8,0x01bc4f90,0x00919aad,0x00d7c1ca,0x031c593c,0x01134fa2,0xfee69e72,0xf94ccc10,0xfb394268,0x01ffaeee,0x04ef0048,0x044359e8,0xffa8c446,0xfee78f18,0xfee32bbc,0x00a0a90e,
-0xfb835400,0xf9dc0860,0xfbd19018,0xfc0153a0,0xfccf8f60,0xfeeff31e,0x00ff21ff,0x023247d0,0x0368fa70,0x01d6a5be,0x0270d524,0x00a93dd8,0x00efb13d,0x0177c65c,0x020966a8,0x016ec1a0,0x01203730,0xff1e6400,0x0081265a,0x0096b78c,0x0071c503,0x011dcbda,0x01a11884,0x01ba1afc,0x00a83983,
-0x01ac5f1e,0xfd12b5c8,0xfda6e210,0x00ce0ba0,0x0428f810,0x0370cd00,0x0134c1c0,0xfdb8cbf8,0xfd9838a0,0xfc8c3640,0xfb564780,0xfa921d30,0xfa0620f0,0xf920a690,0xfb6f2b28,0xfde5f310,0x012e2eb6,0x02f1d144,0x031694d4,0x021c9330,0x02800780,0x02082314,0x01009c3a,0x0165a3e6,0x010fdeac,
-0x00e5bfbe,0x00712f20,0x00753cf3,0x0134ffa6,0x011ff960,0x01642fa2,0x01228fa6,0x01b03ec4,0x014ad0dc,0x0041770d,0xffa34cb2,0x022f81a4,0x0299409c,0x018fbe58,0x01207cd8,0x0085c864,0xff3b2e46,0xfe876e88,0xfde590dc,0xfe49cb7c,0xfe68b50c,0xfe3c6ffa,0xff0afeb0,0xff93d3c0,0xff886cee,
-0x00adbfc4,0x0193e1b2,0x02990508,0x026b0c38,0x02cfbc04,0x02fca758,0x02294108,0x01e45e52,0x015ee3da,0x01adfc52,0x01f686f0,0x01dcd01c,0x01e89d96,0x0218ce9c,0x017e640a,0x01c008de,0x014f321a,0x0186560e,0x012274f0,0x012a2df8,0x00f2acb3,0x016e5b5e,0x001726e3,0x022a3198,0x019aecea,
-0x011ea54a,0x00ac84fb,0x004ecc85,0xffdbf5c7,0xff3e7f35,0xff33d486,0xff2ac180,0xff3fa91a,0xff4cfa18,0xff6d3920,0xff8eb7df,0xffdf2746,0x000db50f,0x00566641,0x00c489c3,0x011ef0a2,0x019eb08c,0x009e3b1a,0x014d7bcc,0x011d88b4,0x00bdc52a,0x007dce78,0x00959d6e,0x00dec2bf,0x010b2326,
-0x0114c240,0x0194bf78,0x01d8f20c,0x019d220a,0x01bf33a2,0x014ede8c,0x012f420c,0x01eb833c,0x002c06fa,0x01ef2106,0x01454da2,0x012fe962,0x0102cffc,0x00d8521f,0x00b489c4,0x00878dfd,0x0098a420,0x0090faa5,0x00833e5a,0x00626116,0x003d8de4,0x000c7855,0x003a2ad1,0x0064e755,0x0084be89,
-0x00a65456,0x00b1edc6,0x01113c9a,0x0018dd8a,0xff87bccc,0xfeca68e6,0x0073d047,0xffa1b625,0xfed44496,0xfed85f54,0xfedf3ee6,0xfef5a9c0,0xfedb2812,0xfedc079a,0xfefedc38,0xffeb83db,0x01086802,0xfea0bbf8,0xff8fb77a,0x01464314,0xfcf32388,0xfbe52cd8,0xfcaf1d7c,0xfc963c34,0xfc64df84,
-0xfc4288a8,0xfcd7eafc,0xfd10878c,0xfcf45d20,0xfd724b5c,0xfd92e1d8,0xfd781d4c,0xfd82b118,0xfd775bdc,0xfd5f6460,0xfd63b200,0xfd6a0274,0xfd944280,0xfd63d27c,0xfd570a0c,0xfdcea290,0xfc4be400,0xfbebeb20,0xfc3e5ffc,0xfcd3a02c,0xfc50751c,0xfca36174,0xfc855f8c,0xfc7e5bcc,0xfc7ecf04,
-0xfc50b194,0xfc421ed0,0xfc2f50c4,0xfc3d2374,0xfc746644,0xfc8e8be0,0xfbf24e48,0xfc01d290,0xf9a96128,0xf9502a80,0xf91fd8a0,0xf9530840,0xfb5be7a8,0xfc131f08,0xfba323b8,0xfd246e80,0xfd639cf0,0xfcd3f604,0xfcf0b7a8,0xfced23e0,0xfcf12b48,0xfd3dcec8,0xfd6eb150,0xfdda6380,0xfd581a70,
-0xfd750420,0xfd7fa0ec,0xfc10fd60,0xfd21e678,0xfd09e368,0xfd9c0bb0,0xfdc98e5c,0xfe4095d6,0xfe2ab200,0xfdfbb16c,0xfdb98aa0,0xfe0e4e3c,0xfe16c3de,0xfd578aa8,0xfcd4b148,0xfc2c7c28,0xfc190538,0xfbfb4580,0xfae826b8,0xf952a9e8,0xf7d44370,0xf7839200,0xf6dd8620,0xfa56cf48,0xfb754608,
-0xfa71c1a0,0xfdd68a2c,0xfe582b66,0xfd91f050,0xfdafedc0,0xfd913b60,0xfd6bcbe4,0xfdb0e874,0xfdf53c74,0xfecef138,0xfdad729c,0xfdd7abb4,0xfddb55d8,0xfcb0f114,0xfd4b1e68,0xfdfac810,0xfeec04b8,0xff534f8f,0x00551e82,0xffa0cc32,0xffd1fa36,0xff1c87d8,0xffd76402,0xfefbb6e0,0xfe3c0d42,
-0xfe071e7c,0xfd8b83cc,0xfc2c0758,0xfb0e99c0,0xf7940450,0xf290be30,0xf0cef840,0xefe52e80,0xeffc0960,0xf68ca280,0xf8b96be8,0xf7accfb0,0xfd1d2838,0xfe1fb722,0xfbc05eb8,0xfb866e28,0xfb607378,0xfbfe7658,0xfd6141bc,0xfe5dc1ec,0xff8267d0,0xfdf35718,0xfde2fc7c,0xfde5ad44,0xfcdbf868,
-0xfdb7500c,0xfdd15174,0xff2f5bdf,0x0030ae04,0x01613e74,0x016cf158,0x019b5314,0x011c3256,0x01f4fc80,0x010de880,0xfe917e3c,0xfd0a5cd8,0xfb57ef88,0xf9c66380,0xf9734998,0xffaf6722,0x0d152ac0,0x13f2ec40,0x115d5120,0x07977ed8,0x06041e98,0x01a30324,0xfcc93b88,0xfb6c58d8,0xf9c491d8,
-0xf9cc4ae8,0xfd1fb9b0,0xff092911,0xfec87d86,0xfee97f3c,0xfe9b1274,0xff3866ec,0xfedbc75e,0xfefb5a40,0xfc16ba5c,0xfb039f20,0xfd8f7f70,0xfe857e5c,0xff61216e,0x0025a0c7,0x02501fb8,0x00e8108b,0x01290082,0x02099310,0x00df2bc8,0x00ad5e1e,0x01b0166c,0x03766c28,0x027ed248,0x02e52604,
-0xff82a1ba,0x0521f3d0,0x0ac1ab30,0x04a68f80,0x009b59cc,0xff536b01,0xff7dc033,0xffd9c8c6,0x0288e7a0,0xfc001ac8,0xfbb437e0,0x0377ea3c,0x03380404,0x043cf288,0x065723e8,0x0741e9a8,0x06cbf2d0,0x04cc8aa8,0x023d64a8,0x009a78cd,0xfde638c8,0xfbf25230,0xfbe39850,0xfd68bb00,0xff511382,
-0x00a60c2a,0x031143f8,0x01c4647c,0x01af2bea,0x0186933a,0x03ab7360,0x03968038,0x01ad7b26,0x007e852e,0x021e473c,0x02b661d8,0x04f90678,0x04bac8f8,0x0139e8dc,0xfedf388c,0xfec47e0e,0xfd4a0fa0,0xfd375d14,0xfd08936c,0x000690a9,0xfb9274b0,0xf9d27cd8,0xfd8b40fc,0xfc179228,0xfd64e1c4,
-0x003a0a16,0xff2ce87d,0xfee9c882,0xfe3928ba,0x02017a6c,0x031a1094,0x020119f0,0x027142f8,0x01e75042,0x010c60ea,0x005116fa,0x00e3df2b,0x046df590,0x009b6b10,0x0014aa24,0x002185f7,0x02480af8,0x0272d96c,0x0377fd0c,0x019448c4,0x027ec6cc,0x035203a8,0x044a0cf8,0xfefecd60,0x024af160,
-0x078054f8,0x05109228,0x01d6fa82,0x03d00e74,0x05500968,0x07e45da0,0x044ae3b8,0x0239f5fc,0x0143d38c,0xfdba368c,0xfd5634d8,0xff410e81,0xffb8368f,0x000c67a4,0xffa41b3c,0xff97cc23,0x007c0909,0x01de96a4,0x01f932e6,0x0273d59c,0x03badd0c,0x024460dc,0x026bdaec,0x0509e708,0x00dabdd3,
-0xffea7f40,0xffa40178,0x0032ed03,0x011401da,0x03802874,0x00fc3f57,0x01118e22,0x01037244,0x008d653e,0x00a8a0f8,0x0343affc,0x0145cea4,0xfe53a710,0xfd301178,0x0088ffb9,0x01767b00,0x01bb021a,0xfd6916e0,0xfaff83a8,0xf9d71198,0xfccdf0a8,0xfe0fc578,0xfcb9fcb0,0xfee7f706,0x0026b1fd,
-0x016272e6,0x0227b480,0x021bf474,0x020a84d8,0x02068bf4,0x0166580c,0x01bf6dce,0x01745450,0x01a28754,0x0240f160,0x02bed4e4,0x02bcfffc,0x015f7f72,0x0156ef58,0x01169fae,0x01999368,0x018c94e2,0x012b115c,0x0058c9bc,0x011016e4,0xfce56768,0xfdeae7a4,0xfdbd32fc,0xfdb5f694,0xfefa4ffa,
-0xff32aa34,0x0074d662,0x0238aacc,0x00459f85,0xfe8a660c,0xfcc61ca8,0xfd9ab57c,0xff2241f0,0x00d76d33,0x02f1b814,0x02d25858,0x01e6b3ea,0x005df8e5,0xffda1304,0x00f24e49,0x01ddd80a,0x01ac4b2c,0x023818e8,0x01eacc6a,0x0196938c,0x00e71ac6,0x00b4da44,0x00bdae47,0x01925cd6,0x0197b808,
-0x01692672,0x01149bca,0x01b33f8c,0x01a0b784,0x00b082c3,0x0005477c,0xff26ee57,0xfdf31b24,0xfef81806,0xffc93a03,0x0071f5ad,0x00eef9e7,0x01609cc2,0x01f1aa04,0x01ca088c,0x01fed52a,0x0245b08c,0x01852450,0x00ac66f6,0x0006016f,0x003b937f,0x00cb0e8a,0x01c9a634,0x01afccae,0x010fd12c,
-0x00eb18c6,0x01799ce0,0x00b55e9c,0x0049c781,0x0073a5f5,0x00a69526,0x01293854,0x0159691c,0x01ad9c00,0x0249f528,0x0121213a,0x00c1179d,0xffc87623,0xff7fb4e9,0xff152229,0xfeebacaa,0xfec8c662,0x033001d0,0x01a740d0,0x01b615fc,0x01fa4a4c,0x021fcf60,0x025a827c,0x02876db4,0x02bb6d2c,
-0x02caf3fc,0x02bf7df8,0x02b29504,0x02b8ad0c,0x02e9bd24,0x0308b530,0x02ebddb4,0x02a0a9fc,0x023da3bc,0x01ff2c80,0x01d71794,0x01b62c1c,0x01ec1930,0x01e07272,0x0249d1b8,0x027f407c,0x02845df4,0x02ce4b14,0x028efa28,0x0264f260,0x023f89f0,0x02131934,0x01e221a8,0x021bce10,0x020e646c,
-0x02640cf0,0x029b178c,0x01e6c012,0x02395128,0x00ddc728,0x01491246,0x014954b0,0x015a0e52,0x016aeb7c,0x017dabf8,0x01953d72,0x01aa9eba,0x01cafd0e,0x01ec4630,0x021662a8,0x023061d8,0x02555b94,0x021bbb8c,0x01fc10d2,0x01df439a,0x01c6685a,0x01a85f34,0x01622e72,0x021a0a84,0x0274b3c8,
-0x0220be70,0x02356674,0x02a97b3c,0x02425b08,0x0242309c,0x0255f0a4,0x02582c2c,0x028071a8,0x0293d578,0x028ef9a0,0x026bdbc0,0x01bc05a4,0x02a3e6cc,0x02a08ec4,0x0133c5c4,0x004ee01c,0xff8ada0a,0x00c3a62d,0xffe33e7e,0x000de306,0xfffd8e7e,0x00086fb9,0x000514bc,0xffd7344e,0xfff1793a,
-0xfffdf0c6,0x002bcad6,0x001bbd8b,0x00259046,0x001ea041,0x00624e71,0x007f4cfa,0x00a1ba2a,0x007be88d,0x00539acb,0x00c5584e,0xffd91d9b,0xff37f098,0xfda0e1e0,0x00488136,0xff88d184,0xfe2f933c,0xfe0cc880,0xfe12ca28,0xfe3ff090,0xfe3a6708,0xfe1a0b88,0xfdfc92c8,0xff0b7b6e,0x004882f0,
-0xfd1975c8,0xfe9f03c8,0xfc163218,0x012ac5b6,0x012e1344,0x0150eeea,0x0131c5f4,0x00adeca5,0x0037d2cd,0xff92fe01,0xffc36ca3,0xffd20794,0x001edee0,0xff9453e6,0xff7525cf,0xff6d9f02,0x000a63e8,0x006c091b,0x00e050e0,0x00838fb6,0x007e85ef,0x00c706ce,0xfeb697a4,0xfff41fe0,0x000fd9af,
-0x001a76fa,0x0017faa9,0x00f333c1,0x00876f86,0x00809f45,0x006dda59,0x008025ee,0x008456d5,0xffd99615,0xfffb0fb4,0xff7905e3,0xfede7bce,0xff7f465f,0xfe0ea41a,0x006d6b03,0x01e90c18,0x00c0e928,0x00845958,0xff100cc4,0xfeba63aa,0xfdec80cc,0xfea757ec,0xff375577,0x006722d2,0x0027f2c8,
-0x0038bc77,0xfff25ec0,0x0112dd64,0x01880f70,0x020cc2b0,0x01211cd4,0x00fa6537,0x00c9990f,0xffd460e8,0xffb35577,0x00600465,0x00bb62e9,0x00b6f274,0x020d7578,0x0072df51,0x00d14bf9,0x00a208b1,0x00d89fcd,0x005ae3a4,0xffd32754,0xff6b5e5d,0xfea5c706,0xfe7f8d80,0xffa75b19,0xfca670e4,
-0x03b77794,0x06dd0970,0x06561ef8,0x0562a2a0,0x01f5208e,0x00598b88,0xfe5708f4,0xfee5f5f2,0xff15367a,0x0043cc45,0xfee8669a,0xfe77e566,0xfe23541c,0xffa94ede,0x009ec144,0x01d5df74,0x008c9d95,0x00af6239,0x00aaf70c,0xfe6b3c46,0xffc9e70b,0xff5151c3,0x00684b61,0x00ec36ec,0x029d714c,
-0x0181823a,0x013799b2,0x017f1a3a,0x01c57010,0x00c586e8,0xff65cb4f,0xff831efd,0xfec2b610,0xfee1a2ca,0xfe988b56,0x0e200b10,0x0758d180,0xff666c79,0xfcbebba0,0xf5fd1dd0,0xf44b8070,0xf4ae6070,0xf7693270,0xfd38cd00,0x02fbdb94,0x08f9a3d0,0x0a5870c0,0x0aebb720,0x0ac79790,0x08ad8250,
-0x07815ac8,0x07da6a20,0x04ad2b18,0x033a5b6c,0x0216cfa8,0x00048968,0x00fd149d,0xffcfeb5c,0x00e7d583,0x01055188,0x01ed356a,0x00a6473d,0x00de7bf2,0x01fa85cc,0x01fabad6,0x03716500,0x04cd41e8,0x02dabdb4,0x0398d864,0x05a445b0,0x0ac55d50,0x04ac5480,0x0067e4f2,0xffa6ced2,0x02474824,
-0xff3bd894,0x081d2d00,0x089681a0,0x0647ab48,0x038fbf80,0xffd2ed2a,0xfa8bdcb0,0xf97a5838,0xf995b208,0xf8ef7d88,0xfb89a9a0,0xfb822cb8,0xf9ef6700,0xfe49ff14,0x011c32d6,0x017ef9b0,0x02ca3dd4,0x02716af4,0x01ad39b4,0x01b2b57c,0x018b3df6,0x0355a328,0x0236da58,0x01eab422,0x00d3af9d,
-0x03228f08,0x031b4d80,0x02b36b9c,0x04549448,0x04e66438,0x053c1388,0x02ea0ba0,0x0243d610,0x018e7092,0xfe969ebc,0xff91b212,0xff0b389e,0x01aa9b56,0x04763ce0,0x081c22f0,0x04afc2c8,0x028f76c8,0xfeff31e8,0xfcc29394,0xfa4b0140,0xf726e1a0,0xf87a2970,0xfa23aad0,0xfcdfe5e4,0xfd527a28,
-0xfdcbbee0,0xffd5db0e,0x00380de0,0x00ba7541,0x015dae6e,0x00e05cca,0x01f9354e,0x06ac35a0,0x00022675,0xfec8798e,0x00977a3d,0x01ae4b90,0x02f1eab8,0x064c4c00,0x030c31e8,0x00ad1072,0x03b89478,0x01eac30c,0x0326b454,0xff9493a6,0xfd0bbb30,0xfddd0634,0xf88bc570,0xfbe40e48,0xfbb62040,
-0xfac0d8f0,0xfaddde28,0xfa2107d0,0xf81fb900,0xfcc8abb8,0xff424816,0xff6cf9b6,0x00e6de43,0x00dd2015,0xfffeb183,0xffd9dfd4,0xff969b84,0x006db2df,0x01d6c30e,0x00e1ecc7,0x0004422d,0x00ed103b,0x01af30e2,0x048f71d0,0x01a704e8,0x00f41b5d,0x01f23e92,0x0020d72b,0x00d7d05c,0x03441c8c,
-0x02121818,0x012f7958,0x01634e0e,0x011cb30e,0x00e1dd9d,0xfec8acae,0x0040f3a7,0xffd6be2f,0xfaa18d50,0xfdefe828,0xfe452cb4,0xfcfa3b14,0xfdcfab5c,0xfd92465c,0xfcd6c2fc,0xfd0a82bc,0xfe5d11bc,0x01ada884,0x00f088ff,0x00972c10,0xff0a7b3b,0xfe9a4e6a,0xff269574,0xffa1a656,0x00c7ffba,
-0x00c6b521,0x011edfa8,0x015060b8,0x00c8fccd,0x00d0ebe6,0x00d40706,0x00b86f11,0x0180e134,0x01296db8,0x01370888,0x0183fcbe,0x00dd899b,0x0122f53c,0x0147cbac,0x00e3444e,0x020d9bd0,0x01282098,0xfe539f8e,0xfcd01df4,0xfd10557c,0xfe2d879a,0xfe756862,0xfdd064a8,0x0074d3b0,0x0210d49c,
-0x0317eb30,0x020b4208,0x0193b4b0,0x02309828,0x01de3c88,0x0185ee28,0xff8b78f2,0xff24e860,0xff1ad3d9,0xffe61135,0x00128aef,0x003b6327,0x0035ab01,0x00782b4e,0x010344c2,0x01838f5e,0x01c1123c,0x01e1dac4,0x010f0f78,0x0206fb30,0x02473c88,0x023f82e4,0x01d3e044,0x01b5057a,0x01e879d4,
-0x02143a08,0xff3214e1,0xff83b52f,0x003aff33,0x00a92264,0x00ffcca4,0x0057de3e,0xfffa68c8,0xff35ec5b,0xffa5905e,0xffdfc4c8,0x0057be27,0x00ea85cf,0x018f0e6e,0x0208d3a0,0x0161c80c,0x00d343d7,0x0044c7ef,0x0050de11,0xfffb193c,0xffba87fa,0x007bcdb3,0x01232238,0x01e2bef0,0x01c2fdbc,
-0x01c64e44,0x01acc1d6,0x01763338,0x00cbe21e,0x00c68c07,0x007cd8bb,0x00618140,0x003dd687,0x0048ca32,0x003fc6c6,0x002406c1,0xfff2c504,0x006cd726,0x00787475,0x0031851a,0xffa3bc05,0xff64c832,0xff1e8415,0xfee114be,0xfe9bb412,0xfec2d276,0xfee3e7c6,0xff09804d,0xff21c1f4,0xff1fc494,
-0xff42bf22,0xff428ea1,0xff63f61d,0xff750976,0xff6b6bed,0xff6ffbb7,0xff76f0f3,0x01389a72,0x009a93cd,0x00c4e8a9,0x00e75f81,0x015a7486,0x012cc626,0x0139c9dc,0x01486102,0x01801f24,0x0179f400,0x01c8bf1e,0x01b83b92,0x019f6f34,0x013722f0,0x00e427ba,0x00f43a8c,0xffab3dc7,0x006a5314,
-0x0034d02a,0x00235b62,0x00058a17,0xffed0b66,0xffd72b58,0xffb06730,0xffbaec9a,0xffb6293e,0xffb136da,0xffb19eb7,0xffbe4936,0xffceaa0d,0xffd69a03,0xffd8305f,0xffde8dd1,0xffe7976b,0x000379a0,0xffd2ee0e,0xffda164a,0xfff1f331,0x00e8eac6,0xffcdb981,0xffe7fe4d,0x00e690f8,0x00d3cb6f,
-0x00b26f34,0x008a3e8a,0x006dc9e6,0x00401a89,0x00322438,0xffd5d0cf,0xfffb4715,0x0029197b,0xffa12635,0x004aade1,0xfffaffd1,0x00287d36,0xff421897,0xffc00c74,0xffbe6a2f,0xffd967a5,0x0012be56,0x001eab07,0x0003e986,0x0029337f,0x0024ab70,0x00088f51,0xfff0598a,0xffdc893f,0xffbc6d4b,
-0xffdc78b6,0xffe689ba,0xffee770e,0x0001afc7,0x001247ed,0xffdd55c3,0x005f9126,0x008e7919,0x00c27e22,0x004f6262,0x009d4c2f,0x00f76aa4,0x00c216bb,0x00b37f54,0x00b01916,0x00af4d0a,0x00aa2c06,0x00b0e8d1,0x00a3f2f3,0x00264621,0x00fdff3e,0x00a6390c,0x01ed0592,0xfea1eb2a,0xfe09774c,
-0xfded303c,0xfe04fa90,0xfefd30b4,0xffac16c8,0xffb4ca9c,0x00324052,0x004ab51d,0x002bd8ec,0x0030f21a,0xffffd81c,0xff8ed800,0xffc065db,0xffdf7f18,0xfff6bdf4,0x002fdc03,0x0025f544,0x001a7b2e,0x00ed458c,0x007342cc,0x005b8525,0x00a3388f,0x00ce3bf9,0x00ee2388,0x008ecdff,0x005f6183,
-0x0066d832,0x003187d0,0x00455d1a,0x008a642a,0x0098090d,0x00bf0b61,0x012524dc,0x005fb0ca,0x00df68ee,0xfe0fb7ca,0xfbccf870,0xfd24adb4,0xfd35bb28,0xff7a08d8,0x004c9907,0xffd64a53,0x010c0b46,0x00d71ba0,0xfff74083,0xff8e05eb,0xff059424,0xfe595bac,0xff16d505,0xff6c073e,0xffa5f498,
-0x00489887,0x005065b7,0x006fa673,0x011df74a,0x00e29d27,0x006f2a70,0x0104f75a,0x0175e5bc,0x01c6915a,0x012ca9bc,0x00b31020,0x00be37ef,0x008e0f46,0x00bfd691,0x00f5b619,0x01219b92,0x0129e54e,0x01ac7d70,0x005201ee,0x02c0e55c,0xfae268c8,0xf5598050,0xf6307200,0xf6cbc130,0xfbd60a38,
-0xfe52eab6,0xfe1f7004,0x0060c06e,0x01505cb6,0x00a19685,0x00bb050f,0xfff0206d,0xfe528d7e,0xff2e7601,0xffafbc18,0x000c2e7d,0x00d9d91e,0x00770938,0x00cb1fc9,0x01636ef0,0x00f1ef51,0x00efef63,0x010d23ba,0x01790998,0x02ddf814,0x018bb5e0,0x00e83b17,0x007d9cf7,0x00e883c5,0x00c7fabb,
-0x01149272,0x01acc1b0,0x02cc91bc,0x029fac50,0x019e6866,0xfb69e730,0xfab01570,0xfbde0f60,0xfe4ca8d2,0x06a2c5c8,0x0434caa8,0x04d9c528,0x09036dd0,0x0367f844,0x006315dd,0xfe0a54de,0xfc4b5410,0xfb496db0,0xfa66cc90,0xfbb02b50,0xfc40d020,0xfc768048,0xfe843dfe,0x0048d89d,0x02cf74b4,
-0x02687d28,0x0166aaec,0x00882d8a,0x01380340,0x015fc002,0x02343330,0x00d8b3ef,0x01367f80,0x02c2c94c,0x034da780,0x0274f464,0x0017e72c,0xff0372de,0xff126187,0xfe96efce,0xfd5bc6f8,0x00fba4a1,0x017a00fc,0x06dd7108,0x06c7dfb0,0x05188f58,0x04ac3620,0x04bccd38,0x03f9f7a0,0x00a583f7,
-0xfe66590e,0xfb2127b0,0xfa598b38,0xfa04a830,0xfadf3f98,0xfb44b5e0,0xfd206fd4,0x0060f9c0,0xff9b08e7,0xff963ef4,0x00d817aa,0x018ba21a,0x01f50cda,0x01474542,0x01740860,0x019192a8,0x03691184,0x01ac30fa,0x015b5dae,0x00d0c2bc,0x02f64c38,0x03122fac,0x02b2cb2c,0x03daff74,0x02f7ab08,
-0x01455c3a,0x0227c514,0xfe3cb502,0xff077acb,0x02e21324,0xfe93b272,0xf8614860,0xf8838790,0xf9782778,0xfd33f0c0,0xff9afc8c,0x01d3b170,0x02f0abc0,0x04db5538,0x04f1a220,0x03c4c8a4,0x0157d46e,0xfefff8e8,0xfc984990,0xfe0eb304,0xff205633,0xfe7707a0,0xfef114b0,0xff464f06,0x006be980,
-0x00bf8ce1,0x01b6944e,0x06085dc0,0x010e49e2,0xff64b09d,0x0012e54e,0x0054c064,0x0171b452,0x050770b8,0xffcd69da,0xfe8c925c,0xfdc41960,0xfe7687f4,0xfe9330e2,0x0077abcd,0x013ad538,0xffb07898,0xff4fbeec,0xfc142ba8,0xfb012388,0xfc3dd130,0xfb3849c0,0xfd57eed8,0x016f60d8,0x035e6438,
-0x05163f70,0x06645fa8,0x05cbff68,0x04ca7430,0x02e534cc,0x0475c370,0x04425920,0x018adf60,0x0052b84c,0x006c8244,0x003bd52c,0x0089ce5c,0x011ff946,0x03b42f60,0x010ee124,0x005c2c4f,0x0231ad68,0x00a27546,0x009ed61e,0x023ae684,0x00a2af9d,0x009c1560,0xfff67084,0xffbec625,0x0016884f,
-0x004aa4d2,0xff83df6a,0xfea2d2f4,0xfc5d4024,0xfbc6fa18,0xfd3c4c18,0x01320958,0x01b5e80c,0x0187750c,0x008f213e,0x004cf792,0x00307bd5,0xffd48be7,0x011dfcf2,0x01f3231a,0x02805c50,0x021a0f1c,0x0127c6f4,0x00c4277c,0xffc15c01,0x0067d2d1,0x00d43d7d,0x00e7f3fa,0x0129c4ec,0x0138f1d4,
-0x013b4c6c,0x00eec21a,0x003f152c,0x00741b80,0x00db46d9,0x01797c7a,0x00cb33c3,0x006f211e,0x0089a5c4,0x007ced96,0x00897ef1,0x013ec1ca,0x00a53b46,0xffc2f3bf,0xfe247890,0x00aedcef,0x00e8ca0a,0x00235d76,0xfe6ffdd8,0xfe7c0590,0xfff5d887,0x00b92cc9,0x006aef86,0xfedab03e,0xfee644e0,
-0xff62fd3b,0x000e330d,0x00cc8c45,0x01886268,0x019cf8e2,0x0096760d,0x00b7df3c,0x00f41ad5,0x0132fa30,0x011abcee,0x00d55494,0x00c09166,0x00d76d5c,0x00d07b41,0x013f538a,0x01266f7c,0x00ca5b48,0x00af391d,0x00b209be,0x015201c0,0x0091a598,0xff88a13b,0xfe8e7e3e,0xfe96210c,0xfeeb3936,
-0xff11125c,0xffad65e6,0x00344c8c,0x0132425c,0x008a5365,0xff916af2,0xfe4b6718,0xfeb60016,0xff5fcf76,0x00345cc6,0xfff781b9,0xff8023cc,0xfeba11c2,0xfeb0e748,0xfecb77b0,0xff217fce,0xffa59e35,0x000cfd3a,0x0065d2d4,0x00b80f58,0x01059d2a,0x0122ec2a,0x010e8c14,0x00c152dc,0x009af15d,
-0x00a39386,0x00d18c39,0x00efff84,0x00f4251f,0x00bcf1e3,0x00d89b98,0x001a1743,0x019d2c44,0x016bbc4a,0x0151de2a,0x01453450,0x011acdf2,0x01065760,0x00f14ee6,0x00f0348f,0x00bc3cd4,0x00e278b1,0x00e225d1,0x00d916da,0x008b1164,0x0057e614,0x00339049,0x0043d244,0x0067cede,0x009b3528,
-0x00bd4a38,0x009f500f,0xffa900b1,0x007e9be9,0x0099eea5,0x00a2dc42,0x00c64c61,0x012ef98a,0x0110b512,0x0127c52c,0x013a5d4e,0x0128e918,0x00dbee31,0x01463efc,0x00eee8ff,0x0139a728,0x0169a2a0,0x013843e8,0x01bcaafa,0x01775e40,0x0175df78,0x017992a0,0x018332d2,0x01893336,0x01865942,
-0x018699e8,0x016d8566,0x01489752,0x012c9f2a,0x0103690c,0x00e99eeb,0x00c14c1e,0x00fa77f9,0x011b5850,0x012f3a64,0x01323c3e,0x0134cc54,0x01786dba,0x01480026,0x0117a1f4,0x005596e0,0x01ae633a,0x016cfd36,0x00d9942e,0x00f2d087,0x010ad254,0x0111453c,0x0132fe0a,0x015165a8,0x0141dd94,
-0x017837fe,0x01967d0c,0x00f53c78,0x01997f88,0x02169780,0xff7b41e6,0xff2ec926,0xff61d5a5,0xff52bb0e,0xff491453,0xff3d1409,0xff303861,0xff380641,0xff500266,0xff43cb38,0xff404b2c,0xff33b167,0xff4cacfa,0xff5810f4,0xff754aed,0xff6befdd,0xff72b07b,0xff7098d7,0xff85bb83,0xff90a882,
-0xff7a20b0,0xff9ba904,0xffbbbe73,0xffe2eefb,0xffc89d12,0xffeaae3e,0x002704ce,0x0016aabe,0x000540e5,0xffef36e6,0xfff2507c,0xfffd3c9a,0x00176822,0xffc1d1e7,0xff95b93a,0xffb958f4,0xff496236,0xfdb70b90,0xfe6b0bb8,0xff3ed5ed,0xff8c9b17,0xffbbed55,0xff994207,0xff32af86,0xff392a87,
-0xfefb92a0,0xfef57cee,0xfed8d386,0xff29677e,0xff74b7c2,0xffc3f1b5,0xffaec929,0xffa4c542,0xff7c7740,0xffba5686,0xffb71608,0xff764b0b,0xffbd7bf2,0xffa79a49,0xff9c0667,0x003170db,0x005cff04,0x003b2852,0x0024cc40,0x000b44de,0x0003e6a1,0xfff3b81d,0xffe88d92,0x001e3283,0xffc53859,
-0xff77c04f,0xfefa927e,0xfe9e57a0,0xfbd16a80,0xfcc6565c,0xfe6810b4,0xfda01534,0xfdc9e528,0xfe386ee2,0xfde9cbdc,0xfe294ad2,0xfd8486c8,0xfd3962c8,0xfd3f146c,0xfdbd06ac,0xfe356f0a,0xfeed03ba,0xfecdfadc,0xfeef86c0,0xff05e713,0xff75266f,0xffb70fd1,0xff78e7b0,0xffa19ece,0xfff0ff82,
-0xffa0b877,0x00ddb99a,0x01340762,0x00e50f25,0x00fdf193,0x00bdd15e,0x008b98d4,0x008a8b7e,0x0080982f,0x00a805ba,0x00379397,0xff7f74fa,0xfe41304e,0xfd31a030,0xf756bbe0,0xf983bd60,0xfe03d450,0xfe798d58,0x0014348f,0x00fce312,0xff3ba55f,0xfee24224,0xfd84999c,0xfd2cd038,0xfcd0a488,
-0xfdcf1fe0,0xfebe29ba,0xffc77512,0xff692307,0xff7a8851,0xff612abd,0x0036a50c,0x00134b95,0xff536ae4,0x00003781,0xffc76291,0xffa570a0,0x011904be,0x01e56f6a,0x022ed130,0x01928292,0x01080e0c,0x010726f4,0x014b9d40,0x01028634,0x009027de,0xfff33cea,0xfe1cf502,0xfcd99358,0xfa915ae0,
-0xfe8e0f62,0x0374a7b0,0x061035e0,0x01526d04,0xf8198e90,0xf4eb8c20,0xf4260660,0xf846e488,0xf6ce10f0,0xf57b5d70,0xf425a560,0xf59c5500,0xf795e970,0xf98b4cd0,0xfc62e150,0xfce1a1d4,0xfaa28290,0xfd15b628,0xfe02d6c2,0xff5217a8,0x0020de73,0xffb17cb6,0x00a42398,0x00bf2d6f,0x00fcbd17,
-0x02240f68,0x017c9abc,0x015c90da,0x0188a558,0x010b79fc,0x00ce405e,0x00a507e0,0xffd37767,0xfe42bda4,0xfe47681c,0xfcbc1b34,0x06d8c9e8,0x088a4570,0x09eab2f0,0x07d61a08,0x04be3960,0xfc77692c,0xf9aa5728,0xfe9ae5a2,0xfdeee1ac,0x00b0271b,0x03d86a78,0x04187e98,0x03f0c150,0x03c8421c,
-0x03c50f9c,0x03729e90,0x020e3890,0x00877929,0xfec3139e,0xff399f46,0xff280ed7,0xff1ff4f6,0xff6e7120,0x0071fbc3,0x01027ba6,0x02a0d958,0x00fa2cfe,0x009f3df3,0x0117dab8,0x01f07f2a,0x01ea6360,0x02dd0710,0x02325e20,0x038a412c,0x05658a98,0x0688d308,0x02c3e320,0x02709e48,0x02c2d1dc,
-0x0361e468,0x02d578f4,0x024fd4ec,0x01915000,0x0440b4a8,0x021be760,0x00617140,0xfcbacc54,0xfbc6e018,0xfc045a0c,0xfd2c12f4,0xff2d1755,0xff81f0ed,0xfe415ec2,0xff1cb7ef,0xffd6fc14,0xffc46e5d,0x008d014e,0x00e3b0fb,0x0135593a,0x00d3f7e3,0x01652f4c,0x04587600,0x019d04f0,0x0039cb83,
-0x00be026a,0x0046d108,0x016eb64e,0x04acc4e0,0x0229c5c0,0x024204fc,0x0095fb52,0x0118d6be,0x01d9f954,0x0055971e,0x0124adf4,0x0278ca78,0x032692ac,0xffcc7ee5,0xff15d79f,0x017f8480,0x01dc3b16,0x0279c6ec,0x01fadd54,0x017c0fec,0x00584c7d,0xfee26588,0xff05c57a,0xffa99a72,0x00676a7d,
-0x00d1ddd7,0x00cfe4c3,0x01629c30,0x01f5e13e,0x01a0039e,0x023a6300,0x02a4a7b0,0x0250642c,0x02b6a9d4,0x0072a216,0xffbf45cd,0x01623ee8,0x007b1ac9,0x00fb82ba,0x021d72f4,0x0183063e,0x01e530e0,0x012b38f8,0x019a03fa,0x0034c8d0,0x00a27cec,0xfffd1d03,0xffc1453a,0x025787f0,0x00382d4f,
-0xffd397c2,0x008ea413,0x000050e5,0x00701cf0,0x016db5f4,0x008da68d,0xffa843e4,0xfef2ae6e,0xff809377,0xff3270a7,0xfe1b0bfc,0x009dc5a9,0x00a23f47,0xfffebe0b,0x00e3ebf2,0x003e0043,0x0016dc07,0x00cf3bf8,0x01148aa4,0x0157f84e,0x0195cdde,0x0125a434,0x00821763,0x00d30fe7,0x0143f56e,
-0x01d5dd48,0x01498384,0x00ed0433,0x00964bfa,0x0021253c,0x01719a58,0x00701108,0x0174dba4,0x010363d2,0xff233774,0xfe1f46be,0xfe8ef7fa,0x010dbaa6,0x006a761f,0x00391ba3,0xffc3b10d,0x009945eb,0x010e7ab2,0x015c27f2,0xff980b59,0xff0e1a52,0xfff5058a,0x00722702,0x00621b1e,0x0073584d,
-0x00d56afa,0x005fb665,0x009dda4d,0x00f749e1,0x010df9ce,0x00962d5e,0x0077a5c8,0x009beaf7,0x00b988dc,0x0036d126,0x002f1c61,0x013bfb10,0x00a4748e,0x00d01f2d,0x00fa8872,0x0181501c,0x00f7ffab,0x01a4db9e,0x00e0025f,0xff84c45d,0xfe8816ae,0xff71dcc6,0xfffeb3ad,0x00b865b4,0x00890df7,
-0x00d7bf4c,0x00ffdd28,0x005aa3bd,0xff8aa803,0xfef8fe0c,0xff34aa03,0xff77fd7f,0xffd2e76a,0xffe8de55,0x00414015,0x002eca96,0xffce2ab0,0x002e855c,0x0027a959,0x002ac1d5,0x0086b8f0,0x009d60d9,0x00d43497,0x00689897,0x00ac7968,0x013624d6,0x01d3a6ec,0x0241861c,0x02285f78,0x02135bf4,
-0x01ef37ec,0x0186ef30,0xff7baec6,0xff24dcf2,0xffa33bd9,0x0037a1dc,0x00acd648,0x00f12678,0x0120247a,0x015f2190,0x00f3d826,0x007676dd,0x00186577,0xffe3d99b,0xffde94b2,0xffa99e6c,0xfff5c50b,0x00125374,0x002178f5,0x00275b7c,0x001f5e64,0x004dbed2,0x00eb1323,0x003a8262,0x0007ba5d,
-0x0010d256,0xfffae23b,0xff99d875,0xff7a04d9,0xff6780a3,0xff6b2fef,0xff13b0ce,0xfede49d6,0xfec16e08,0xfed63a16,0xff052f83,0xff0da1f8,0xff1e59a5,0x0046decb,0x0004dbf3,0x0052b0e0,0x0067c3da,0x0089c77c,0x00a0dcce,0x00bfd8e1,0x00f6463e,0x00db5e78,0x00dedc7a,0x00d366b5,0x00bf9fb1,
-0x00a1d587,0x0080f77d,0x006a1ed8,0x0054b391,0x004e2334,0x004eae39,0x005294fc,0x002851e0,0x0074778b,0x00ba0be3,0x018bed40,0x0036cea0,0x009465ef,0x01722bba,0x015b67c6,0x013e95aa,0x011c3dac,0x010c275c,0x00fb8555,0x00d9e4ae,0x004dcc31,0xfff30643,0x012b628e,0x007260e1,0x00837cb1,
-0xff300441,0xff9291b1,0xff78eede,0xff4fb658,0xff405a10,0xff043704,0xfedcc506,0xfebdd17a,0xfe7b27e8,0xfef97df4,0xff11808d,0xfed89f7c,0xff18c7a7,0xff2ea9fd,0xff4333cc,0xff386102,0xff409c74,0xff580e02,0xff4f3449,0xff52c287,0xff5d0971,0xff73b17e,0xff898e45,0xffaa2c03,0xff9bd398,
-0xffadce5c,0xffbe4378,0xffc5d66c,0xffc44347,0xffc086e5,0xffba9dae,0xffb2fbf1,0xffc11bb0,0xff9d0e05,0xff9ef669,0xff84a89d,0xff80c8ee,0xff7b0fb9,0x00679247,0xfff35a0e,0xff6b27e9,0xfe57a15e,0xfd569f4c,0xfd040b24,0xfca047f8,0xfe198aa2,0xfe7babf4,0xfdd37380,0xfe534bc6,0xfe7aefe8,
-0xfedaabfe,0xfed1c36a,0xfef4be8e,0xff425199,0xff3f0ec1,0xff58cba5,0xff91afaf,0xff80493d,0xff83623d,0xffb1b7f4,0xfffd32f7,0x001d9ea6,0xffdc7ae0,0xffe9ade8,0xffd73ed1,0xffef138c,0xffa43e11,0xffba2c0e,0x0018d5e2,0x003df164,0x0055b3c6,0x0033295b,0xffdd3d15,0x005fc163,0x01272056,
-0x014eee44,0x009deed8,0xff2b8b25,0xfc4bdc28,0xfbb60a70,0xfa873bc0,0xfdb1e6d8,0xfea53b24,0xfd59c3a4,0xfead9942,0xfeff5994,0xff7c82f3,0xff2a8fbe,0xff527dcf,0xffe40d4b,0xff9198b6,0xff98e2af,0xfffdb8da,0xffa5d9f6,0xffd4d32a,0x004dc932,0x00cc321f,0x00e8e32e,0x00760437,0x00bc38dc,
-0x008459d6,0x00bbb1fe,0x00311b0d,0x005686f1,0x00d38196,0x00b90a21,0x008373fe,0x00b39ca1,0x00854080,0x0211c0a4,0x04f00350,0x052d3d50,0x03a45514,0xfee5e7b6,0xf94f74e0,0xf7ba5230,0xf6a7f1a0,0xfbe9f8a8,0xfdcba904,0xfbf81d50,0xfd587350,0xfdd11408,0xfefed410,0xfe876bf6,0xfedca536,
-0xffe621d4,0xff67a033,0xffc21c21,0x004da08a,0xff977b88,0xffffb1e5,0x002950b3,0x0187f91e,0x01e57aee,0x01d11f42,0x01836d60,0x011dd5a6,0x0163b778,0x00d3b0eb,0x00c10b99,0x01c3e076,0x023ea678,0x022ccfc0,0x02cd6030,0x0252cb5c,0x018a9af4,0xfe83eae4,0xfb30b5b0,0xfaf1e898,0xfc473580,
-0xfcc61c5c,0xfea6b610,0xfeb1214a,0xfe5d9104,0xfec990d0,0xfddcd280,0xff741e07,0xfffb888e,0x015ff714,0x00c5fad9,0x01496772,0x01f077f0,0x01e79d26,0x016c2d26,0xff8dcebb,0xfee945de,0xffd54c52,0x0074de03,0x0127cd2a,0x01453974,0x018b0d88,0x01da036c,0x01b8e274,0x011c934c,0x024dc9d0,
-0x025963e0,0x00add632,0x00234c96,0x00412839,0xfff3794f,0x01095140,0x064ded80,0x03f8e020,0x01bc5fc8,0x035eaae8,0x07fc8db0,0xfeafeac2,0xf9ed5508,0xfa3d6980,0xfbc12260,0xfb342b88,0xf789beb0,0xf96e5a30,0xfb4fa198,0xfd2587a8,0xfe465f9e,0xfe4e8286,0xfd41594c,0xfed6b456,0xfeed8fbc,
-0xfdaced38,0xfe2d5d0e,0xfea70bc4,0xff1954b6,0x0086b752,0x00f45156,0x019adb00,0x0141fd04,0x00a26fd7,0x003e3043,0x00f8f2f7,0x01a645de,0x04000238,0x02189258,0x022c6540,0x04963730,0x049783d0,0xfd2de854,0xfd05ce5c,0xfdd1612c,0xff7615b9,0x02237470,0x016826fc,0x04d18508,0x05661d28,
-0x05932478,0x03145ca8,0xfffd49d0,0xfda8d860,0xfb0fa330,0xf992c180,0xf867b4b8,0xf9370a70,0xfbb41520,0xfbc5c168,0xfc9d0468,0xff38db2d,0xfff37852,0x0052972e,0xff8478f7,0x01fa1e4a,0x025f15c0,0x01c6271c,0x010da84a,0x00125dbc,0x010d32ae,0xffb83ce4,0x00fa8548,0x04391018,0x03f0c258,
-0x02581ec4,0xffa52c65,0xfdef2538,0xffa40de1,0x002e5ada,0xffef8c0d,0xff0bb42c,0xfea4c640,0xff6dd065,0x0100dd00,0x0312ece0,0x06320410,0x08b06240,0x093c6100,0x07425660,0x05268108,0x0411c8f8,0x02568ed4,0x014618b6,0x00203b31,0xff2aef06,0xfeb5efe4,0xff00a47a,0xff9eb370,0xffed60b0,
-0x00278f57,0x01dec46e,0x01a06c2c,0x00f9d2e2,0x013083dc,0x00f260dd,0x019cee30,0x011e7654,0x012a8ccc,0x00a753db,0x00e7d54f,0x01338cb4,0x013a2b94,0x00661319,0x006edab3,0x006b6397,0x005d53cf,0x0007bfa4,0xfeabde80,0xfdb362b4,0xfe613390,0x01168a10,0x00bb3e2c,0x01882cde,0x02a4b130,
-0x0422b3a8,0x04cf1a88,0x043a25d0,0x027310d8,0x019c0e4a,0x00f26a95,0xfff27429,0xff97f84e,0xfea41d2a,0xff0d1bc2,0xff055d9a,0xff91d9d7,0xffca4293,0x00386075,0x011816dc,0x00c5bbb8,0x00958d2a,0x00a94925,0x00893538,0x01231a98,0x0202699c,0x017ec39e,0x00ea6c57,0x005782c4,0x0045b2b9,
-0x001a2777,0xffb3ff3f,0xfeef2cd0,0xff35108d,0xffe7dfd6,0xffd2eabf,0x005feaf1,0x01cc08c2,0x033759f8,0x037db064,0x02092c80,0x017c9534,0x014d0022,0x01c2c9b6,0x02f5d694,0x02c0ae58,0x019c828a,0x00e4f21b,0x003ad363,0xffb929f4,0x0028789a,0x00957cf9,0x008eccb3,0x00693683,0x00d968ae,
-0x01d50038,0x011cfe78,0x00c0ee73,0x00983913,0x006bd5bd,0x006371c2,0x00421bd4,0x0039660c,0x00210b0a,0xffcc00a9,0xffee7d24,0x014a778e,0x00e72761,0x00932754,0x00a9d370,0x006352a9,0x01069bf2,0x016bbf12,0x019614a0,0x00f8648c,0x00953fc3,0x006f1c3c,0x00a242c9,0x00c7f16e,0x00cab490,
-0x005fd75a,0x001bd299,0x000d534c,0x00bc52fb,0x0170ed42,0x01b8cc9a,0x0138310a,0x011e08b4,0x01013ca2,0x00bb9cdf,0x002e6a32,0xffecb9ff,0x001b4d9a,0x00f58ce3,0x00dc0682,0x011bad54,0x00fd240a,0x0117d176,0x00d4f7c2,0x00e89baf,0x00ccca75,0x00d690ee,0xffd77bf3,0x0059346e,0x00a5fa6b,
-0x0101e842,0x01424532,0x01940bc4,0x01cf2b78,0x024972d0,0x024f8a98,0x0256a390,0x0228fc54,0x01c05fd2,0x014f5582,0x00e97fce,0x00fdf09f,0x01127f34,0x0101cae2,0x00ddd992,0x00d3d2cc,0x00c06a85,0xff9850d0,0x00520d4f,0x0065353e,0x0074c26e,0x00642934,0x00c1b2cc,0x0095c6fa,0x00443846,
-0xffdf9db4,0xffd68264,0xff98140e,0xff4c335e,0xff79967c,0xff85af8a,0xffbbd9bd,0xffebefc0,0x00c5a807,0x00d22920,0x00da174d,0x00ee1464,0x0108db40,0x01161a2e,0x01267a60,0x0139b9ce,0x01203abe,0x01157006,0x0118bdba,0x012fb2ae,0x01488f08,0x0149524c,0x014c3b02,0x0143f250,0x0149f018,
-0x014a880e,0x013964fe,0x01648834,0x0110e820,0x00d25a91,0x0022ad62,0x01187236,0x00d0c9df,0x002b88fe,0x0015ee23,0x001f5737,0x0032ada2,0x00267587,0x002c8e71,0x002b02d3,0x00a1d728,0x00dc6774,0x002c1a6f,0x00a27749,0x01139bf6,0xff1519e8,0xfef2c416,0xfee3625a,0xff056ba6,0xfee19a44,
-0xfeab6b7a,0xfee062f6,0xfeea3756,0xfea74a28,0xff170082,0xff297637,0xff08f445,0xff0aede7,0xff1470fd,0xff40170d,0xff3558d3,0xff3732e8,0xff31c7c5,0xff3c3513,0xff3e824c,0xff480cfb,0xff20bbc8,0xff28da3b,0xff5ae4e2,0xff411386,0xff4440f5,0xff552a2f,0xff5b4845,0xff5edb1e,0xff5cc88c,
-0xff4a37e0,0xff50574f,0xff78966c,0xff4e11b8,0xff2a7104,0xff8883e9,0xff2ff1dd,0xffcc13ce,0xfe76dfa6,0xfe6f1168,0xfe481244,0xfde882e8,0xfe8399ec,0xfe9ee130,0xfde7f3fc,0xfed8a980,0xff0d3d3e,0xfeca78ae,0xfedac4f2,0xfef74004,0xff4e5b86,0xff290c3f,0xff1f9053,0xff0ffd3d,0xff25d60f,
-0xff3fd087,0xff644db7,0xff4c7008,0xff6bfa21,0xff88b767,0xffb7afa9,0xffd417c8,0xffaae631,0xffc5bde9,0xffa1c413,0xff7a7434,0xff66a9c3,0xff7959f9,0xffdc6839,0xffbfdc96,0xffbf28f2,0xffef0c4f,0xff56234a,0xff7de34f,0xfe5d04b6,0xfd755d2c,0xfd7652b0,0xfc194930,0xfdbe5c64,0xfe2a0d2c,
-0xfcf17364,0xfeaadd66,0xfef361fa,0xfe7191ca,0xfe6d1f84,0xfea1f176,0xff6b560c,0xff604e8b,0xff83a64e,0xff4fe01f,0xff9f1146,0xffa7ceff,0xffcf2728,0xff915394,0xffb40f80,0xfff704ca,0x004e65bf,0x00676648,0x002e8b5a,0x00844d20,0x00622776,0x002f2627,0xffdd70e8,0xffebfa20,0x007d41f3,
-0x0057c95e,0x00711054,0x00a0fede,0xff463f65,0x01722616,0xfda25a28,0xfbdc1138,0xfba76ff8,0xfaa46418,0xfd868760,0xfe68430e,0xfc462a4c,0xfe328682,0xfeba4334,0xfe282ffa,0xfe45be64,0xfed21dea,0xff9663f8,0xff835f35,0xff4e6bbd,0xfeff46fc,0xff796b64,0xffe0fc3d,0x0093fba4,0x0017cf6e,
-0x007052de,0x00b978fe,0x014cda58,0x01b051ae,0x01d18306,0x01a660c2,0x012452e0,0x00ed5858,0x0078fa8d,0x009e16ca,0x018fc54e,0x01f76df4,0x025ffe24,0x0264fea4,0x011e32cc,0xf950ad30,0xfb33e1a0,0xfa54d848,0xfc0a5370,0xfea3478c,0xfc152554,0xfba26a50,0xfb6c7e30,0xfe6f9802,0xff768e01,
-0x00515093,0x0066266e,0x005f0230,0x002d9cc0,0x003d88c6,0x012416fc,0x023ba690,0x011a7fa6,0x00a50575,0x012d7052,0x006dba50,0x0064d9d5,0x008ed46b,0x018c7594,0x0153c26c,0x00724769,0x01cbe09e,0x01f8f85a,0x01289f06,0x02428708,0x01182250,0xfe8ba31c,0xff6b8943,0xff283d74,0xfdbe87cc,
-0xfa76f498,0x02cdb954,0x044d3e60,0x03be5bb0,0xff854720,0xfb2c0030,0xfa677f58,0xfab992f8,0xf70d3630,0xfd8f30e4,0x00fcb0d2,0x024bc6c8,0x00b3ad7d,0xff19b2ac,0xfefa8e00,0xfcc988c0,0xfc246538,0xfc1d9d68,0xfe19d90c,0xff8dab3c,0xff5d040b,0xff8bdc2f,0x0044bcc2,0x00776a27,0x01d4bac4,
-0x02115e70,0x01c717ea,0x00cc79e4,0x0006f134,0x005b8fab,0x009e6a76,0x0175bb86,0x032e0e2c,0x0179c8e4,0x0100c66c,0x01a95ce4,0x02b87ddc,0xff1b07fc,0x00f7f65c,0x0121a738,0x03e739d4,0x0b6ee770,0x083e5fa0,0x060622b0,0x038e41e4,0x02f6d500,0x02ba43cc,0x022436d4,0x018dbbd0,0x00ccbbcf,
-0x000d3bdc,0xffa2ec7d,0xffafe692,0xff5e57dd,0xfe4ffd72,0xfdaa85bc,0xfdeb59d8,0xfdfeac30,0xfea8cf1e,0xfeada590,0x020e49a0,0x01de800c,0xfebfac84,0x0047c7e1,0xffbdda20,0xfffb593b,0xff26c639,0x00614200,0x027db844,0x02e70148,0x0348c6a4,0xffdb4dbd,0xffc1269b,0x01584774,0x00d0dae5,
-0x000ff8bf,0x000fa259,0x02689ed0,0xff87823d,0x007316e3,0x037f3dec,0x05899800,0x0586ee28,0x028acf10,0x02e9cc30,0x0272d074,0x01920656,0xff5c0249,0xfea20d8e,0xff5e43c7,0xff9740c1,0xffa4d3cb,0xff480243,0xfeb4f4a8,0xff29ea8c,0xfef55fb2,0x01b33a10,0x01e1f088,0xfff794e4,0x015576ee,
-0x013ba254,0x01a09ad0,0x0224d5d4,0x02210a58,0x009bb732,0x007b81b8,0x0087e3a9,0x004c6e69,0x014130c6,0x0039101b,0x007e041e,0x02198e10,0x02533ccc,0x01d4f084,0x001459fd,0x005d1d1d,0x017dfd26,0x0249f4dc,0x0220eb3c,0x003ae9d8,0x00ecf30d,0x0108ddfe,0x02ad7e08,0x01a56da4,0x016c008c,
-0x011779d8,0xff3b46a6,0xfef10cd6,0xffd47e3f,0xffe9b5c1,0x00907ff8,0x006e60fc,0x00449eb4,0x004cb5e3,0x0087f6c6,0x001f01cb,0x000afed0,0x00ad8b18,0x00654a9f,0x00bf85ad,0x011eaf4a,0x01fa61c8,0x01ef4bd0,0x00ebc73d,0x008a6adc,0x00abac7d,0x01885e20,0x01bca270,0x00d3df94,0x0047e378,
-0xfe7f87ce,0xfe3878e4,0xfedd65ee,0xffc5fafc,0xfff56557,0xff325600,0xff3b809c,0xff4f10a3,0xff7bb26e,0xff9663de,0xff867613,0xff0c27f3,0xfff404ef,0x0053aa22,0x003b9c22,0x0040b4a0,0x001ca80b,0x00283d22,0x00412f22,0x00616e6d,0x0106e500,0x0100a848,0x00b28862,0xffc67c91,0x004ae73e,
-0x0061dc04,0x00576c97,0x0024bde2,0x001fadea,0xffffc1a4,0x00c62173,0x001046e4,0x003674ee,0xffec3898,0xff8f6ba9,0xff97e110,0xff5a923f,0xff1e5ef0,0xfea07ac4,0xff5c3bbd,0x000c7bdc,0x00db800b,0x00168e97,0xff4e3851,0xfe5cc51a,0xff448913,0x0024fae2,0x00c2665a,0x00ba6b82,0x00660c54,
-0x00eadcaa,0x013a76fa,0x00df36a3,0x00a650a2,0x00831d39,0x00909f8d,0x004d2d12,0x00d6c74a,0x00e51175,0x019607f0,0x00fdf196,0x00bb95e6,0x005be030,0x0083ec57,0x0096e201,0x00b5639c,0x008279f2,0x00386bb0,0xffac5c80,0xffbef496,0xffba7979,0xff9a956e,0xff890595,0xff88e775,0xff6d5216,
-0xffe308a1,0x002b1e5d,0x00a81742,0x013425b8,0x01f3bc74,0x0293f850,0x02489618,0x01e13f56,0x01b16806,0x019cd684,0x01837cf2,0x016119e0,0x01f26e78,0x01099a82,0x00e1ccf9,0x00d8a1e4,0x00bc38a4,0x001c1a75,0x0004cf57,0xfffc2e58,0x00212001,0xffed7d24,0x00274319,0xfff7ba48,0x0030f558,
-0x001564d8,0xffd7bd21,0xffc525e8,0xffce08d4,0xff0f07c3,0xff2ac605,0xff1e2c75,0xff1f1982,0xff19a70a,0xff1284c3,0xfefdc518,0xff22e4da,0xff3b1976,0xff46987d,0xff5ea6d0,0xff6793e9,0xff97f656,0xff835a02,0xff90765d,0xff86effa,0xff7e5274,0xff7e0e4b,0xff4256e6,0x0025d3fb,0x00a100fc,
-0x01859aa8,0xff9d3fad,0x0054d9ea,0x014e4dda,0x01400372,0x011f4f46,0x00f4fbc8,0x00f23d87,0x00d6a89b,0x00d8def8,0x0058a3cd,0xffa1ef94,0x0110d880,0x004c6b23,0xfea7d226,0x0015c3e2,0xff74581d,0xfff250fe,0xffd4db32,0xffedb532,0xffe8b21a,0xfff9b4b7,0xfff9b6be,0x000d3a26,0xffff1402,
-0x000e67c5,0x0043e362,0x0017b159,0x0018bcea,0x003bf991,0x0024f0b0,0x001b6b73,0xfffc716f,0x0025f426,0x0021c449,0x001f9ed6,0xffc9d3a0,0xff905816,0xff1900a7,0x000294c3,0xffa7d4d0,0xff2da7ec,0xff3cbac1,0xff3d860f,0xff329c68,0xff282faf,0xff285069,0xff459288,0xff9d7250,0xffeb3b37,
-0xff23d52e,0xff453300,0xfe7b4762,0xffb50573,0x0004a88c,0x0001ca02,0xffcc1645,0xffdf99bd,0xffebca32,0x004afd7c,0x00171e9d,0x0028dc8a,0x009ad988,0x0013d963,0x001083f3,0x0072ca25,0x004da2ff,0x004b6a1a,0x0004a782,0x00738593,0x0068cbcf,0x0011e234,0xffa12181,0xfff5f0fc,0x00250043,
-0x003fb462,0x00366034,0x00258274,0x00513db9,0x003d5f7e,0xffe4fdaf,0x000d48e4,0x00279af2,0x002cc166,0x00049e6f,0xffbcb757,0xffb8508b,0xff493024,0xfd503334,0xfdd25b54,0xfe7ddd94,0xfea222d4,0xfec8cd60,0xffc5d2e0,0xff78f6e9,0x0017c9fb,0xff4f55bb,0xffa8e5fe,0x00bc640c,0xffd3a750,
-0xffc3b664,0x007ea1b4,0x0018f608,0x000e06af,0xff6eebc8,0x00780a5c,0x008062e6,0xffe473c6,0xfffb97c8,0xfff6703b,0x002f2ba3,0x00947264,0x00896c0b,0x00171938,0x008a3bf0,0x008fcef6,0xffff875e,0x000903b7,0xffe8a5ad,0x0063630d,0x00062297,0xffab7cee,0xff58cceb,0xfe13d69e,0xfb4fab58,
-0xfd613318,0xfeeeb710,0xfe7de81c,0xfe6d3b7e,0xff89e335,0xffccbefb,0x010da70c,0xffc29955,0xffc482f2,0x0116df4a,0xff7f7526,0xff7f7574,0x0093c49b,0x005c26d1,0x005548d3,0xff7e422c,0x012f177c,0x01226fb2,0x0042c553,0x0099c279,0x0065e222,0x00b65cff,0x014f6092,0x01aeba7c,0x012e8c4e,
-0x01bb595a,0x01496c94,0x00c278c5,0x0096d966,0x007fb954,0x00f04239,0x00704e99,0xff7b30dd,0xff3367fc,0xfcc49188,0xfbb9ff70,0xfe8d6120,0xfdd16318,0xfdd9ec84,0x0076105e,0xffe3974e,0xfed133dc,0xfcce6c00,0xfe2cdc6c,0xfedc70c4,0x0050dc15,0xfeb5916c,0xfdaee4b8,0xfd7d5d80,0xfd6dd9c0,
-0xfdaad358,0xfdc8e848,0xfe0fd7c0,0xfe0dcc28,0xfee3cdf0,0xffec1eb0,0xff8eda20,0xffa4a096,0x00d2f28a,0x00f6abd7,0xffeca3d8,0x01656ee8,0x01a537cc,0x0067fd64,0x0141e262,0x006d4317,0xff349419,0xffb67b39,0xfeef1956,0xfd8fcdc8,0xfbb07108,0x03ef2280,0x0297c050,0xffe3d34c,0xfe9c09b2,
-0xfcb63f04,0xfdbb462c,0xfd6fb2e8,0xfb228770,0xfea9e5ee,0xfed42c42,0xfd4edb3c,0xfea8ddda,0xff624a24,0xffccc946,0xffbd2e50,0x007434b6,0x0131eb72,0xffcb016b,0xffbf7be4,0x0080258f,0x0011f69b,0x00c64cec,0x00edf16f,0x0191f6b8,0x01d4e2e2,0x01ea048c,0x00abf09b,0xffa98378,0x0063ac21,
-0xffcbee80,0x00aadaed,0x024050cc,0x00ef29d4,0x004c78e4,0x0013f8f9,0x024c15d0,0xff019dd5,0x013edc30,0x04513280,0x06bd3650,0x08327020,0x070d3790,0x039d269c,0xfea9f048,0xfed05f74,0xfe1d6cc6,0xfd74e9b8,0xfc93ee8c,0xfd2b0840,0xffa1ee15,0xffbc4b00,0xfffc39ad,0x000d332e,0xffd0576b,
-0xff67dac7,0xfeec470c,0xff128853,0xff8ed43f,0xfeff1a90,0x0266df78,0x01eb3b50,0xfdef3f5c,0x003a02ff,0xfffca659,0x0001d684,0xff79e654,0x0039e97b,0x0092e830,0x03876d00,0x04809660,0x02868b90,0x0013c81a,0x0003268e,0x00c2e16b,0x01327dd4,0xffcdf5f8,0xfdbefbcc,0xfecc3f2c,0x00571394,
-0x00ce6e76,0x02bc5dac,0x01ea00fe,0xff8efbf8,0xfe82ce70,0xfc92f408,0xfb2537c0,0xfb148010,0xfb9b1cc8,0xfce5b538,0xfd272e5c,0xfde2687c,0xff290967,0xffa93d55,0x0049435f,0x0056ba98,0x021606fc,0x021e3b04,0x003ce594,0x013850d4,0x00eb0756,0x00ce04c2,0x01c8fe06,0x022f6e94,0x00eaed39,
-0x01732dc4,0x011557da,0xffee77c9,0x00215475,0x011c0ea0,0x00886e94,0xfffa5930,0x0090b9f1,0x0223e984,0x01eec770,0x0062fd47,0xfcfcb454,0xff8bce18,0x006f9a38,0xffde2f48,0x009e9763,0x00f57b9d,0x00f06365,0x011d7ad8,0x00dba19f,0x00e3b354,0x00821dc0,0x005addfb,0x006fef7a,0x00931710,
-0x01006ca2,0x009dd721,0x00e717aa,0x00fb8a11,0x00b8619e,0xfffd4991,0xffcd8b20,0xfffbc730,0x001c092c,0x004a94c3,0x002eace9,0x01209b14,0x0163ac10,0x00c3de2f,0x0135e88c,0x0099f815,0x00e78fc8,0x019e4768,0x01bec076,0x00b41fe6,0x001f948d,0xff6fe39f,0xfdd84600,0xfed263d6,0xff31bec9,
-0xffd1709c,0xff678fb4,0xff3f1963,0xff83daab,0xfeea346c,0xfee25d48,0xfec68a42,0xff67a0cc,0xffcac699,0xffde8d1e,0xffc7ceba,0xffa523ef,0x00042c1c,0x005481a5,0x005b52ed,0x000b1750,0x00570564,0x00668550,0x00bf7043,0x00c8d8c5,0x00e9c7e8,0x010a720e,0x01060306,0x00c28442,0x006e8c3b,
-0x000fb047,0x01154794,0x01413e40,0x010a76e4,0x00e5af84,0x00b83232,0xfff8b5ba,0xff305a0f,0xfe4c29d6,0xfed434b8,0xff2b7908,0xffae525c,0xffbb07ac,0xffd6ff23,0xfff57997,0xfff0eb16,0xfff29c25,0xffe72638,0xff8e8e79,0xff1b5a07,0xfec9b9fa,0xff8f3e22,0xffe33282,0x0065f0ad,0x00544381,
-0x00544b36,0x005f018a,0x005cd9b9,0x0063552d,0x007232ba,0x0067d039,0x00681afd,0x005e63fe,0x0080f3df,0x00aebba1,0x00d0c605,0x00f44fed,0xffe2e421,0x00581cd2,0x00017132,0xffa65aa5,0xff709e2a,0xff249801,0xfefcd234,0xfeafc640,0xfee89190,0xff003f4a,0xff1e0d39,0xff3dad9a,0xff5e7752,
-0xff76ea75,0xff94db56,0xffb3cef0,0xffe31811,0xfff5364b,0x001cab2d,0x002597f0,0x002cebef,0xfff84ecd,0xffbeaf30,0xff87d0d6,0xff7e6753,0xff7188e8,0xffb34b9a,0xffce6c82,0xfff9acf9,0x0040f59c,0x007930a4,0x00c9a8f3,0x0098e017,0x007b535b,0x006a00cd,0x00753e95,0xff34fe2d,0xffca4b0c,
-0xff9480a7,0xff8cb070,0xff71bf45,0xff636e2e,0xff50ae65,0xff2fa5a2,0xff440e11,0xff4e2b5b,0xff5bad3b,0xff6c9ace,0xff7f4b23,0xff977b10,0xff942e35,0xff8ee8cc,0xff87ea91,0xff8c6430,0xff9617ec,0xffa9b9d4,0xff09a131,0xfed0f324,0xfeb6df22,0xff307a7b,0xfec2b51a,0xfe79ffe0,0xfe9ff208,
-0xfebdad60,0xfed9f7e2,0xfeebf01e,0xfefc5768,0xff18d341,0xff19370e,0xff7be23b,0xfec71bfe,0xfef55760,0xff534995,0xfff9544a,0x0019b479,0x00072e6d,0x002ff01b,0x0042c847,0x002ca76d,0x000ea11b,0xfff61c47,0xfff5ef9b,0xffcb4b91,0xffcdb9b4,0x00079b08,0xfff6dc84,0xfff8535d,0xffdd2f51,
-0xffe89e8e,0xffe6ae5b,0xffddc395,0xffe71d36,0xffe9f747,0xffc609e4,0x001c9bbc,0x0047b35d,0x006a05a8,0x003aadbf,0x0056d10a,0x004c822c,0x00665809,0x00624374,0x0046f6c7,0x00558904,0x00590a98,0x0070193f,0x003e0c2e,0x000b83ef,0x003cc727,0x0018598e,0xffd30013,0x00804b70,0x00a0cb9d,
-0x00981362,0x0034cd59,0xffe9c8a1,0xffb4e663,0xffc273ab,0xff454c92,0xff6cfebd,0x003be1b4,0x00284488,0x000d78f6,0xffa938b9,0xffb74180,0xffb40449,0xffa3341d,0xffd23c86,0xffd2bc45,0xffa99f1e,0x002d6379,0x001c291c,0x00624563,0x0073b450,0x007063cc,0x0010b1f4,0x003ee52c,0x003ec429,
-0x0028d516,0x0015a4be,0x001e03c5,0x006dd6f8,0x003403b5,0x0028dd57,0x0022ec38,0xffe0e729,0xff9a43cf,0x00b52dc8,0x01e2922e,0x01ceb060,0x0150d666,0x00b9ca1b,0x00260537,0x004da57a,0xfefcef92,0xff14daaa,0x007bb807,0x002da372,0x00545871,0xffbb946a,0xffc15a79,0xff9c6587,0xff70b1e2,
-0xff96bc06,0xff86fd32,0xff48b882,0xffcc95d8,0x0009ef55,0x00a1885a,0x00b5042d,0x00b2e119,0xfff32f8d,0x00922a13,0x005080fe,0x00380d64,0x0018228f,0x003dde4f,0x00d69cb6,0x0018af66,0xffd3f914,0xffeaddf5,0xffa4f872,0x005772dd,0x02cd0ed4,0x03911040,0x0328e014,0x01bee5e4,0x003b6378,
-0xffdc5ada,0x004480ed,0xfe58416c,0xfe963bfa,0x016fd628,0x00ff7c90,0x00a7de44,0xffa3380e,0xff6f087f,0xff6b7f9f,0xff25131b,0xff8b956b,0xff752ce8,0xfee137a6,0xffe193c7,0x0017b00b,0x00c34a66,0x015582d8,0x013ae816,0x0028f7e8,0x01534480,0x014526c4,0x00954b47,0x006a51bb,0x00769ff5,
-0x018aa076,0x00a5917c,0x00348b2d,0x00d2b8e4,0x0023decc,0xff25d5be,0xfdae0cbc,0xfbea67b0,0xfd280268,0xfec6be3c,0x015379d8,0x004706e4,0xfc7caa04,0xfd2bfcfc,0xfd31bb94,0xfde1e478,0xfe86c69a,0xff8fc52b,0x007fc8e7,0xfff36278,0xff3f4f6d,0xfe7a16f2,0xfef6cff0,0xff028c08,0xfe33babe,
-0xfe6ee800,0xfeeffd96,0xff7f2a8a,0x003e2f2c,0x00d24197,0x00b9557c,0x012e442e,0x013c3af0,0x00898d5f,0x015ecfe4,0x00d4e11e,0xffbf0f46,0xfface5a0,0xffcfecfb,0xff12421c,0xff5419af,0xffbe1b73,0xff983734,0xfd4acb50,0xfc1a7f5c,0xf9a44358,0xfb08f1e0,0xfbcc4370,0xfafbaed8,0xf9b4bb38,
-0xf9fabb78,0xfe778fc2,0xfe0115a4,0xfdeab55c,0xfddf599c,0xfd080170,0xfded4620,0x00aa7f5c,0xfffdbc2c,0xffb158e9,0x00150f33,0xffcb03bd,0xffee0c2a,0x003cfa49,0x0112bb6c,0x013a38de,0x00b9886e,0x00bb1cff,0x002070d6,0x003f64e4,0xffc49a4b,0x00d1eeb7,0x022b0c20,0x014e25e2,0x002d5087,
-0xfe85152a,0xff3eae57,0x02eeff60,0x04fae8c0,0x058ee038,0x05c0b2e8,0x043672e8,0x052ae868,0x0251d974,0xfbbbf418,0xfd724840,0xfd8c5034,0xfdf341ec,0xfe650ea2,0xfebf20d2,0xff254705,0xff34b22d,0xff488cf0,0xff8de1ab,0xfee8e646,0xfee22c56,0xff468a2e,0xff437148,0xfffed997,0x0063870c,
-0x02805418,0x021480f0,0xff013362,0x008ed4eb,0x004659a6,0x0080faf6,0x001f7d05,0x006f599b,0xff41a564,0x02f5c2fc,0x04965e98,0x03efd874,0x0353c94c,0x00c72196,0x0046b594,0x0054cf89,0x01135b56,0x0232ce80,0x03cc27f8,0x03ad7f68,0x00bd349a,0x02420bd8,0x01606ae4,0xffcc15db,0xfc799154,
-0xfacb24a0,0xfad16c38,0xfbb40948,0xfc8eefbc,0xfd61f3f8,0xfdb8c344,0xfe22dc50,0xfeec582a,0xffb8ef0b,0x00839a19,0x0064a565,0x01a0bea2,0x01604c70,0xff73d611,0x01113e46,0x00fc5c70,0xfff8c044,0x01158e1a,0x01c928de,0x01a45ec8,0x01d49cf2,0x0144a82c,0x0063f53e,0x00ac063e,0x00a0106d,
-0x015354ee,0x016448da,0x01a84318,0x01e0fc6e,0x01460730,0x0036d6c6,0xfe2d29f6,0x000a1c06,0x01bba9a8,0x04ba2d38,0x044c72f8,0x03cb7c04,0x0245e50c,0x0140676a,0x005f7984,0x00d59651,0x011fe22a,0x01700090,0x014d91a8,0x00fea5e3,0x00ea363a,0x00a5889c,0x0176c6d0,0x0197d29c,0x011d16da,
-0x008aca0d,0x0046499a,0x000721ad,0x0073cb30,0x0082b153,0x00696392,0x01353902,0x0189eaf0,0x01370d26,0x00d2c0b5,0x008afc9e,0x00751b9e,0x00e13b22,0x017a8efa,0x01d3aa08,0x01a7685c,0x0131e5f8,0x0006f559,0x008139eb,0x008a8c77,0x01175024,0x0028ccd5,0xff46862d,0xfe2c6018,0xfe8a572e,
-0xff43dc1c,0x006fe45e,0xffb53baf,0xff8f727d,0xff999812,0xff8a1ed9,0xfffb6ac2,0x002126a5,0x00ae3224,0x00dba4bb,0x00c92fda,0x00c6b374,0x00ce4d46,0x01227da0,0x011bcea6,0x0155ece0,0x0184541e,0x016075d8,0x011d8a78,0x00b9c809,0x00e0737a,0x00f494b8,0x013b441c,0x0113b506,0x00d93b20,
-0x00ab5400,0x00a0cbe3,0x00ba0948,0x00df6605,0x01192eb8,0x01605216,0x01c82212,0x01eba484,0x0222ac24,0x0244b6f0,0x01b9a870,0x0103715c,0x006d96b2,0x00a9103a,0x0146242a,0x01203b16,0x007706bc,0x00de71ff,0x00f2f264,0x00f0e078,0x00c476f5,0x00f7137c,0x00b0dd60,0x00f87d74,0x008d9c70,
-0x00aa81ca,0x00623f05,0x006c9085,0x006ed657,0x007b5727,0x0067c5b8,0x009c5567,0x004540b8,0x0002366f,0xffe8740c,0xfff8bcff,0xfff7ec09,0xfff8774e,0xfff10e0c,0xffe7888b,0xffe85d8a,0xffe2e84b,0xffdcacd4,0xffee18da,0x00022889,0x0037c7b2,0x00486055,0x007c0e35,0x008c78ba,0x008b438f,
-0x006a03ec,0x008808f5,0x003ab3d4,0x007b9872,0x00868d47,0x007edf4b,0x006bb404,0x009982b1,0x009fb993,0x009df8ef,0x007984b4,0x00a86e6d,0x00b34e67,0x0097eb5d,0x007ce7e1,0x00573f10,0x00653863,0x004e4e89,0x004baeba,0x0040d819,0x004c8c68,0x0048470b,0x0044b374,0x0041c441,0x003dffeb,
-0x00376ba4,0x00450a0e,0x00536fde,0x0060bacb,0x0069f82f,0x006d5d25,0x006d0474,0x006719ae,0x0060d121,0x0063c5e7,0x0067ae63,0x00659493,0x007b81bc,0x0078e253,0x004bdf59,0xffc17ab4,0x007e6b7e,0x004e4e8f,0xffb29b79,0xffbb30f3,0xffc8d453,0xffe2dc55,0xffdacaf4,0xffe3d39e,0xfff0267a,
-0x004c2105,0x0071600b,0xfff8265b,0x003c91b1,0x0078d02c,0xffbaf1e2,0xffbd9a60,0xffbfc3c2,0xffb78a48,0xffa6878b,0xffb6e3cf,0xffb1f1fd,0xffa90df3,0xff7e4c9c,0xff8ab5a2,0xff9b46f5,0xffbe6a94,0xffcf50bc,0xffca5a5a,0xffa37ef1,0xffae6998,0xffb4d235,0xffd1e4ca,0xffc08b58,0xffc00ab9,
-0xffd9794e,0xffc6a71e,0xffcecb3b,0xfffcce47,0xffd72500,0xffd34446,0xffd49db1,0xffdfa5fc,0xffdd524b,0xffd27cae,0xffd1cd43,0xffd96fe2,0xfffd3392,0xffc5acb9,0xffaf11d9,0xffd82995,0xffc3d53d,0xfff34ccd,0xff7fb89a,0xff6a257e,0xff9aaa0e,0xffe9fbe8,0xfff09c34,0xffbc42f3,0xff3184f2,
-0xff1eb756,0xff3933ee,0xff959289,0xffe5530d,0xffedc615,0xff86c1f5,0xff9670d4,0xff941f33,0xffd7a1a2,0xff8cfc21,0xffa3ef87,0xffce220e,0xffbd1eeb,0x000cdfd5,0x002662e3,0x001eb939,0x000dc033,0xffe44691,0xffec38bc,0xffe29cc0,0xffd29491,0xffced2a0,0xffe1d2f5,0x002edb7c,0xffe2c1d9,
-0xffbc844e,0xffa5e28e,0xff8bd850,0x003af6aa,0xfff049a8,0xff0e2bef,0xff574952,0xffc62434,0xff8534f1,0xff587fbd,0xfe6d09ac,0xfe6888ba,0xfecbb842,0xff9354e5,0x0026b426,0x00174a3f,0xff36039d,0xff702387,0xff7aa6bd,0x001ce00b,0xff95f7a9,0xffbc8eff,0xffd323eb,0xffd0e4bd,0x0045d421,
-0x00b0857f,0x007c771b,0x005b91b4,0x0037ec43,0x0040c12f,0x0018676f,0x0000ed14,0xffed0aed,0x0007b333,0x00bdba1b,0x000ae970,0xffd38140,0xffd24bd7,0xffc39f3b,0x00692660,0xff40ad39,0xfe86384e,0xffc6ed0b,0x01047466,0x008226ed,0xffad3b39,0xfe11fe40,0xfdbf3bcc,0xfe440c72,0xff6a9e32,
-0x0098af65,0x00897863,0xff435f31,0xff7cdfb2,0xff734ea7,0x0026a8a0,0xff0ac570,0xff650446,0xffab70bc,0xff5bff52,0x005ee03b,0x00e61ee7,0x011d817a,0x00b8c41e,0x002076a4,0x00e189c7,0x010d77e6,0x006911e5,0x00471d2c,0x005ae0cc,0x016d0bda,0x008a5734,0x004e9a0e,0xfff93cb0,0xff9a85f8,
-0xfda182b8,0xfc892b90,0xfc5d5e48,0xfc045cfc,0xfa6cb150,0xfd8398a8,0xfef7f062,0xfedf58bc,0xfe22e002,0xfdfdcf7c,0xfefe7862,0xff4e4571,0x001ff54f,0xffdd2e93,0xff0dd639,0xff355739,0x00fdb71b,0x009125dc,0x0058e130,0xff8cb703,0xff76cd95,0x0037e6b2,0x00970fe4,0x00770d60,0x00e1f6cb,
-0x019020c0,0x012fdbb8,0x00f4a12a,0x00b389a5,0x00fef7b6,0x0007024c,0xffa2f591,0xfee5f770,0xfeb3ff08,0xfec013b2,0xfe95c68c,0xfee16cae,0xfe712bc8,0xfb5a2778,0xfb873578,0xfdccdcd4,0xff821ddb,0xffc83d82,0xff626fc5,0xfd429770,0xfd4333f0,0xffdf11e8,0xfe5b8f96,0xfdeb0908,0xfde62b7c,
-0xfec73d5e,0xfee485a6,0xfe3c2742,0xfedd70d4,0xff5bccf1,0xff7bf50a,0xff814c56,0xffbd881a,0x00846727,0x017bd60a,0x013ba228,0xffac6fcc,0x001cfa81,0x0006e591,0x0040ca02,0xffe0f0fb,0x0074057c,0x0028d360,0x01473130,0x00bfdc81,0xfec2896c,0xfecd9f3a,0x0417a150,0x04ee2f00,0x0639eec8,
-0x05cc8940,0x03095168,0x02ff5490,0x00d158bb,0xfd555d80,0xfd44204c,0xfd657bf0,0x003ffe8c,0xfef5b836,0xfe9b3624,0xfe070bf6,0xfd2b208c,0xfd6ee6a8,0xfee10b5e,0xff021b98,0xff1af402,0xff604b01,0xff27e1c5,0xffd28d1a,0x009f1b1f,0x01d7eb12,0x01b6f59c,0xffe9a8cc,0x00ad8b96,0x004707ca,
-0x003ed3f9,0x007cdca0,0x00ec1b6c,0xffb62c2b,0x02598bec,0x03857768,0x04acacd0,0x044eb420,0xffb21f30,0xff634975,0xff64b2e1,0x00a84478,0x01a9419c,0x051c37c0,0x051822b8,0x0207a124,0x012f4ac8,0xff9efb42,0x001c4ad3,0xfdd507d0,0xfd157450,0xfce903fc,0xfc745444,0xfc60e9cc,0xfd01ba90,
-0xfdba54bc,0xfe6d7a3c,0xfee019e6,0xff7e1765,0xfffb0ecc,0x00573647,0x00817ffd,0x00583bb8,0xff4940d4,0x00521e80,0x009b9d58,0x00354de7,0x00980e9f,0x01360570,0x01fdc286,0x020d5f20,0x01814c54,0x008e78b6,0x00142d8c,0x01037c98,0x00aa2e29,0x0053b694,0x003ac52c,0x00ceaa20,0x007f976d,
-0x00470e3d,0x006c9850,0x00ecb4a5,0x01d20288,0x03d085e4,0x025e7e28,0x01b841aa,0x00f7848f,0x014f5486,0x0168e4f4,0x0112eff6,0x00d9c2fb,0x00b57f75,0x00b806aa,0x006a99cf,0x005ed8eb,0x00eb5b09,0x01c8ce16,0x01de5f32,0x00e9810b,0x00f63667,0x00e7bf0b,0x00dde1ff,0x00ed2c3b,0x00abdb64,
-0x00b3be6d,0x0132fc96,0x017fed00,0x016b086a,0x0138f510,0x007c304c,0x005f93ba,0x000d82aa,0x006b26fc,0x01cdc96a,0x00d13e56,0x00383d1f,0x00350e41,0xfe552378,0xfe595ed4,0x001a7d8a,0x004edd96,0x00757512,0xfff5b767,0xff452725,0xff3e44b0,0x00c2d8a2,0x00f4a30e,0x00fea463,0x009bb534,
-0x005edded,0x00c3c870,0x00ccf436,0x00732461,0x0076f1f4,0x00eee7b9,0x012470fe,0x012cca6e,0x00e9de0d,0x018c9e58,0x01bf55e4,0x011f7000,0x01568d18,0x010833b2,0x009cdebe,0x005ca421,0x00cfc2fb,0x00bbc654,0x00be4edf,0x00e4a97a,0x00ebf0d6,0x008aa7d6,0x0031fb9a,0xffcfaffc,0xffdd42f7,
-0xffbca255,0xff5beb6d,0xfff5d207,0x0088c80a,0x010c261e,0x017b7e58,0x01ca7dc6,0x01fd3a60,0x01b99e42,0x019e442e,0x01b5f598,0x01965d66,0x012b31f8,0x00f7c253,0x01157588,0x01186ff0,0x010e4300,0x00f3ce1e,0x00f6e2f2,0x00f09148,0x00b71efe,0x0091848e,0x00865b67,0x00660dbe,0x0055a243,
-0x003caa33,0x0091d3f8,0x0029076c,0x007abf96,0x005f917d,0x0028483b,0x00038c3b,0xffef307a,0xffd81689,0xffa9ddc4,0xff923cd2,0xff7a5af0,0xff5b0e5d,0xff36f2a7,0xff002c37,0xfed998ec,0xfed8fd1c,0xfedac22a,0xfee67e80,0xff2525c1,0xff48064b,0xff6f95bf,0x0022cea1,0x0044eb95,0x007fb548,
-0x00a5f403,0x00eaa3e0,0x0125d00c,0x012fe824,0x0131a050,0x013710aa,0x014ab120,0x016c5594,0x015c69d0,0x013f41ca,0x00f808d9,0x00bb2cbb,0x00af6b16,0x006676a0,0x00a7ab4f,0x00836268,0x007cae79,0x0071b161,0x006120ce,0x00557fd3,0x00520ecb,0x0040ce1f,0x00337388,0x002eb38b,0x001cae21,
-0x0011389c,0xfffb986d,0x00163cf8,0x002ab799,0x003aedf6,0x003d2832,0x00487520,0x003be01f,0x004e0cc4,0x0058479a,0x0074e9b7,0x008b01d8,0x00924b08,0x008f708b,0x008432ec,0x00823a53,0x007e3b61,0x0078b8af,0x006c7df2,0x007592b7,0x008c5437,0x00a8e5de,0x00516857,0x00615eb3,0x00a9af7d,
-0xfffa9c5a,0xffcbed3f,0xffcb3313,0xffd15390,0xffe3de8c,0x0012d30c,0x000ee114,0x000ecb6a,0x0018d371,0xffe3b2d5,0xffda2d4a,0xfff74c16,0xfff22ee8,0xfff68122,0xfffa782b,0xfff0a4ec,0xfff3a35d,0x00086ef0,0xffffd9f6,0x0003b6da,0x0027326a,0x000e80d8,0x0003227e,0xffe9e831,0x0010f9fc,
-0xfffdb137,0xffdc98e0,0xffcfd4ce,0xffcb9b86,0xffc8baa9,0xffc90273,0xffd08166,0xffef22df,0xffead410,0xfff161e7,0xffaffb27,0xffc825e4,0xff4cc688,0xff57b19c,0xff88f6d4,0xffad83bb,0xfff681ed,0xfff300b5,0xfff6697d,0xfffd6c3a,0xff64a2fa,0xff55f515,0xffb86719,0xffbf95d4,0xffd5b04f,
-0xfff17c92,0xffe5bf06,0xfff7130e,0x003f6db1,0x001ef87d,0x003517b1,0x0064b541,0x00268ee8,0x005b7d99,0x005ebd4f,0x00424da5,0x002cc9ad,0x00459c50,0x000f8460,0xfffed110,0xfff30719,0xfffce556,0x001208c9,0x003e0426,0x000cc26f,0xffcf6504,0xff7b3558,0xff636da6,0xfed78934,0xfeabe330,
-0xfebc8c5e,0xff0916cd,0x00054a13,0x00484bc9,0x0072a01e,0x00a64665,0xff5876ec,0xff00eb34,0xff87f4df,0xff6c9f97,0xffa06e18,0xffb9a567,0xffa5b925,0xffc42809,0x003e2bf7,0x001fe454,0x00532bd3,0x00996ea7,0x009189f1,0x00be57d0,0x00d48f0f,0x009c3fc4,0x007643d8,0x00c5351c,0x003c4bb1,
-0x001034d4,0x00008a93,0xfff888ed,0x00208e58,0x00a684ea,0x002553a4,0xffbe771a,0xff2a887a,0xff07dde0,0xfd2c2a40,0xfdc8fee4,0xfe676f32,0xfe8b0cd8,0xff7f8bde,0x0009d466,0x004eec18,0x006f494e,0xfe455090,0xfdec86f0,0xfee57cf8,0xfef78430,0xff26e8d5,0xffa3aa7a,0xffa521d8,0xffe4b844,
-0x00b6a952,0x007e3a98,0x00d23744,0x01404a3e,0x00c510b9,0x01113ffc,0x0140e74e,0x00f0e7c1,0x00b0822d,0x00ce4223,0x00c5095a,0x00d1b781,0x003f5cb5,0x00476adc,0x00510afa,0x0116b5ea,0x003b30f5,0xff621953,0xfe3b6a24,0xfd6062a4,0xff8bdd13,0xfec017f6,0xfdc7c8a8,0xfddbc090,0xfe5589c6,
-0xfeeb21e8,0xff4bf4e0,0xffc254a8,0xffe3bc92,0xff435bfb,0xfd5a548c,0xfeb5633a,0xfe79dc26,0xfe097956,0xfe384882,0xfeb1c122,0x00021bf1,0xffab5b33,0xffb0dfe2,0xffade2a1,0x00469486,0x00defa00,0x014cc666,0x00ccb3ad,0x00ddfa26,0x019f2de8,0x010b503c,0x00a2b045,0x0067f950,0x005aa315,
-0xfff80e60,0x0050b21f,0xff30e0b1,0xfed06426,0xff4bb747,0xffb8861c,0xfcdcbcb8,0xfd1bde90,0xfcf8c6b0,0xfd6988e4,0xfe9b8c7c,0x00e56e7f,0x00ebb6c7,0x00af5a7f,0xfd25ead0,0xfc461720,0xfda5ac38,0xff6b8d27,0x00730861,0xff892b6c,0x0049f5c2,0xfff25690,0xffbfeb01,0xffa10c10,0xffd1d566,
-0xffe47f44,0x00192031,0x0069cdc8,0x00e25b72,0x01b3056e,0x0175529e,0xffac0d7f,0xffcdbaa6,0xffc23866,0x003e48e0,0xff7f55b3,0xffb6ce8a,0xff53c5a4,0x0133417c,0x011a69fa,0xff5c93e7,0xfddc4a28,0x05637ca8,0x0765de30,0x0550a4f0,0x0354bf3c,0x010948ec,0xfcc69680,0xfbf4b3a8,0xfecaade4,
-0xfbdcf828,0xfc8079cc,0xff42caea,0xffb2c9d9,0xffbb7138,0xfdeaa9a4,0xfdeedecc,0xfddb5074,0xfe976948,0xffbfeb9f,0x00103241,0xff524c21,0xff78eae2,0x000fc830,0x017610d4,0x00c5e6e6,0x0077cd65,0xffc4a1da,0x002ee78c,0x00175963,0xffecdabf,0x00318927,0x008314f0,0xffc3e5d2,0x01647a68,
-0x02aafcc0,0x04836710,0x04d14d50,0xfffad798,0x0007898f,0xff601bcb,0x00e89e25,0x0398b564,0x05157fd8,0x046c7778,0x02af0310,0xfde58290,0xfbfde670,0xfd3fffc8,0xfd4a2270,0xfe5a61da,0xfe24405c,0xfec03584,0xfe80b766,0xfe29e804,0xfe32b976,0xfedc5dbc,0xff6d9d7b,0xff90ad2c,0x00494f71,
-0x018545fc,0x00b05bc3,0x00a1ec85,0x008041cc,0x0017ba70,0x0035a8ab,0x0080196f,0x001e682e,0x009488ef,0x01dc8a34,0x022e63a8,0x021a82c4,0x01619bfa,0x00e78728,0x012391b4,0x011cc8b2,0x00c4854a,0xfffb1459,0xff0d0b3f,0x0015d774,0x0092be53,0x0216cbec,0x00f1a763,0x01355e78,0x028cb960,
-0x01b542f4,0x00f0d769,0xffece61d,0xff7e29de,0xffa562c8,0x003c030d,0x004ef2ad,0x004e7783,0x008fd576,0x007358c1,0x00b228b3,0x0100c100,0x01819a2c,0x017f3f78,0x00b9e5cc,0x00fc200c,0x012ccf2c,0x01e6968c,0x01213544,0x00d28ada,0x00b48c0b,0x00f383b6,0x0135891e,0x015cdb30,0x016656c8,
-0x000ae2f3,0xff9bee4d,0xffc01781,0xffeb1a9a,0xffd636be,0x00bcc24c,0x00db6403,0x005aecd4,0xff3da5f2,0xff1906c6,0xffa0ec76,0x00e7395f,0x020b1858,0x02a82600,0x02d61a00,0x02396b94,0x00f06229,0x00e668ff,0x00e912b5,0x00ff7523,0x013a650a,0x01462b44,0x0158869a,0x00bee60a,0x0062e5e7,
-0x0053584a,0x00c1832d,0x00f63309,0x012b89be,0x01461e2c,0x014e3cb0,0x0125ce62,0x017487e0,0x015d2e4c,0x011a5f70,0x0078ba7a,0x0036df2b,0xfff12ecb,0x0070dffa,0x00deb097,0x01464d7e,0x00f5788e,0x00cd3135,0x00dec792,0x00a4c4ef,0x004d9ffd,0xffc19f5e,0xfffd817c,0x00354a8b,0x00a9a67a,
-0x0096f273,0x00b2e726,0x00d629b8,0x00fd4a6e,0x00ed7c80,0x00fb999c,0x00d3310f,0x0076e3ac,0x00230a4a,0x00ae8e4f,0x0126d00c,0x01983960,0x01269f82,0x00bfe8e4,0x007d7295,0x0080a2ec,0x0099d521,0x00a45c9e,0x008f9a15,0x006b322a,0x0066d038,0x0054ec76,0x012c267c,0x0155fd16,0x012908d6,
-0x00f48a1f,0x00dbfb30,0x00be9b38,0x00a41298,0x007883ce,0x004dc6c9,0x003b8fdf,0x002745e3,0x002055d5,0xfffe9717,0xffd53b10,0xffdb8452,0xffe437e6,0xffeacd91,0xffe414c5,0xfff18eb3,0xffee1eec,0xffdda1a1,0x00521aa6,0x0078c278,0x00a809cd,0x00bc7b26,0x00f4d829,0x0102061e,0x012d9624,
-0x0148061a,0x01564d5e,0x015c7008,0x01850c88,0x01663070,0x01683ac8,0x015176c0,0x014d3866,0x00efc1df,0x0104aafc,0x00eb2b28,0x00e2c512,0x00ceb087,0x00c7b922,0x00bfaea4,0x00b97db0,0x00c0cb3d,0x00c049dc,0x00bd9df4,0x00aa6af8,0x009db7b0,0x008b60a9,0x00931fba,0x00901cf2,0x008c668c,
-0x008d4a13,0x008a1e4d,0x008b6575,0x008a2556,0x0093f6f0,0x0097e7ea,0x00c444dc,0x00cc5ed3,0x00e0852a,0x00e387f6,0x00e45225,0x00e55ac3,0x00eb25e7,0x00ecd01f,0x00ee7450,0x00e7f0cb,0x00f1d0b1,0x00ceff2b,0x00ead1fd,0x00dfdfa8,0x000f9eb7,0xfff63b65,0xfffd268a,0xffd598ff,0xffd3a1d1,
-0xffd3aab6,0xfff542d7,0x0005328e,0x00225da9,0xffe71ac6,0xffe322a6,0x0013b5e8,0xfff9f347,0xfffdd934,0x0004169e,0x001112cd,0x00189b19,0x002068fc,0x00192cd1,0x001d415c,0x0028b7bd,0x00338d49,0x003334e3,0x00280ab2,0x002ff4e9,0x002a615a,0x0028ad76,0x000a8765,0x00010f45,0xfffa6dea,
-0x0005010d,0x000c7b61,0x002214b1,0x001ceacc,0x0015929d,0xffddfe2c,0xfff32da6,0xff75f718,0xffcaecc7,0xff74a1fb,0xff82473f,0xffc8f389,0x003ffd30,0x005fc650,0x008701e8,0xffe4381d,0xffc3d0bb,0x003d1c59,0xffeee71b,0xffe8f470,0xffe66225,0x0000c4e8,0x0014c72e,0x002c2831,0x00337019,
-0x00430aef,0x006d7117,0x00854757,0x0081fdf8,0x007c3384,0x006a850e,0x005ab6c6,0x00702ab9,0x001bd92b,0x00024ec1,0xfffff6e0,0x000deb3b,0x002d5812,0x0059feda,0x00468860,0x00174f25,0xff9de583,0xffbffe28,0xff4e74dd,0xff954208,0xfefbf0f4,0xfebd5bac,0xfedb9fbe,0xffa82a54,0xfff17121,
-0x008ad092,0xff677c1b,0xff350478,0x004a8bb1,0xff9368fd,0xffb7fbea,0xfffc0c1a,0x00216aab,0x003f8a2d,0x0051794d,0x003bf573,0x00533d35,0x00a00456,0x00dfecfd,0x00e6e017,0x00d861b9,0x00c38b85,0x00adecc3,0x00e18dd3,0x0039f38f,0xffeba6f7,0xfff0536e,0x00052bb8,0x004a86e0,0x00b039d3,
-0x00680fcc,0x0011929b,0xff42353f,0xff9d9da1,0xfedbb48a,0xffa51a31,0xfea76d62,0xfe771bf0,0xff59fecd,0x00824102,0x00f4036e,0x01858a2a,0xff8da112,0xff270b5d,0x00dec07d,0xffc83814,0xffb1e3ae,0xfffc6b15,0xfffdb308,0x00243579,0x004f68d0,0x0087b6bf,0x00971ba5,0x00f19ac7,0x0183210a,
-0x015cfa92,0x015cf9d0,0x01174a04,0x00f0237c,0x014a3342,0x00b963a3,0x009021b9,0x001125b5,0x002b306d,0x00600ea1,0x013743c0,0x00b175aa,0x000b5f9f,0xfed55ab8,0xff1cee69,0x00dd0ac4,0xfeac2bc4,0xfdad187c,0xfd13fd8c,0xfcf1c010,0xfe4b63d0,0xff0f525f,0xffc82ea3,0x00d14572,0x003c9683,
-0xfd746fc8,0xfdd114a4,0xfe184190,0xfe68eba2,0x0011be99,0x0015dba1,0xfeca1312,0xfedce2c2,0xff10ab3d,0xffa2c68c,0x0006d7a1,0x007794c8,0x010209dc,0x00947e26,0x00ad9236,0x0176062a,0x00b6d6d3,0x00471c12,0x00467aea,0x00642271,0x003c5b8f,0x004ce4c5,0xff9eb497,0xff7ecc5f,0xff6cd6fd,
-0x00fd871c,0xfd12d7f4,0xfce3e768,0xfd35ab00,0xfe9b298e,0xfef86b60,0xfffd6083,0x00688fe7,0x00f2ad13,0xfde094e4,0xfd338384,0xfc0008e8,0xff1c55bc,0x001f19f4,0x00208c71,0xfff54742,0xffc031b6,0x007f0b0e,0x006232c9,0x003af332,0x002d34fa,0x008a0d48,0x00acdb85,0x00f983e2,0x01607172,
-0x016525d8,0x002849aa,0xfff12372,0x001129b1,0x0036b983,0xffe42071,0x0004d434,0xff569a39,0x00ffb533,0x00e61b6f,0x002b5984,0xfdf4433c,0x05c413d0,0x04dedcb0,0x034b458c,0x00d57e12,0xfdbc1cd8,0xfb31ce00,0xfaf1bbf8,0xff827737,0xfbb43620,0xfb798268,0xfbad1db0,0xfe1020f0,0xfed33b30,
-0xfdc0b258,0xff3fcbf1,0xff6da13d,0xff0f0a8c,0xff58a603,0xffc2203a,0xff86487e,0xffee4c96,0x00b4744d,0x02901114,0xffe6f0d2,0xff56f7df,0xffdf9d2b,0xffb0f3a9,0x000f00ed,0xfffc3fc5,0xffe23dc4,0x00124b5d,0xffcece22,0x00b8c0f0,0x01c2f4f6,0x051c69b8,0x04d119c8,0x00e0dc50,0x01548e16,
-0x01e0a1ca,0x0304f7d4,0x050651a0,0x03ef832c,0x027b3a3c,0x022e9d64,0xfc7440d8,0xfb988b78,0xfd0b8ce0,0xff38612b,0x00254795,0xff1207aa,0xff15f8be,0xfec0e35c,0xff1753de,0xfec580bc,0xfede2648,0xff8ac740,0xffc10a77,0x0044602a,0x0233c9ac,0x00a0b417,0x00657016,0x00cda9bb,0x002ee9cf,
-0x00239659,0x00307df3,0xffbae67f,0x000f4914,0x01683bfa,0x0222f5e0,0x0254a5f0,0x02298a2c,0x015afb6c,0x013edd2a,0x017e42ce,0x011d283c,0x00a3dcfd,0xffdd032e,0x00ccac28,0x02488f10,0x045a0248,0x02cd7828,0x01fb21d2,0x0094b91c,0x004babe5,0xffaac6ab,0xfe90cf84,0xfe0b1a76,0xfdd60de4,
-0xfe8d01d0,0xfef43d5e,0xff4e419a,0xffcd7fdf,0x005a5f76,0x007c3dae,0x010e7060,0x00f3c58c,0x00f11ad9,0x00b4f408,0x00da50d7,0x01144c82,0x01deb636,0x0182d5d6,0x0159074c,0x00ea6595,0x00e72ac2,0x011b37d8,0x017738d0,0x01524ce2,0xffedb9e3,0xffcab17c,0xff749d86,0xff8fec2b,0xffe52ec4,
-0x00ca4fa9,0x00e7043c,0x00915a5e,0x00f4b2f9,0x00e2753f,0x001f0594,0x018fbde2,0x028c7c3c,0x035d874c,0x035e921c,0x02fd4e3c,0x01dafb48,0x012abca0,0x00cfae55,0x00e3c5a3,0x011046fc,0x01110dd2,0x010a8e42,0x0134eb0c,0x0105a47c,0x0087164d,0x007fe561,0x00b2a929,0x01333b50,0x00bcea2b,
-0x00d4a9ca,0x013c39cc,0x015c839a,0x0146c746,0x011c5afc,0x007a87b9,0x00934a9d,0x0090b5c6,0x00b9d869,0x00c10b74,0x00c6ba21,0x00d19f74,0x011182e8,0x0151137e,0x0119b4fa,0x00e7f893,0x00aa04b6,0x0052fb82,0xffe45a85,0xffa558cb,0xffa8550d,0xffd3f06d,0x00073a03,0xfffeb80f,0xffb8e412,
-0xffc407e0,0x002b0c86,0xffe6c828,0xffc8d770,0x003a59dd,0x00c94456,0x0147a7f2,0x0116b1e6,0x00bfa7aa,0x0084e1aa,0x00b2306b,0x00d47ad6,0x00f9873e,0x00c8b393,0x00b61127,0x00ab6db0,0x00a95667,0x011ff064,0x00f861a4,0x00e319b7,0x00d4f1ec,0x00ce387f,0x00c22af5,0x00a3a620,0x0095b33c,
-0x008609d4,0x00897982,0x00992539,0x009c7dfe,0x00b3324a,0x00bbd6dc,0x00b80b09,0x009f8090,0x008c6794,0x0079053d,0x00733df6,0x00635892,0x0077f3af,0x0093469d,0x00bc30c1,0x00c91eb1,0x00c0602c,0x00d1f2c3,0x00cf7d26,0x00e6aa56,0x00eb8857,0x00edb2b4,0x00d7d7ee,0x00efbae5,0x00ed954b,
-0x01062e26,0x010aafd6,0x00fa441b,0x00ce96ac,0x00c563e7,0x00c298a9,0x00bae629,0x00b1e7ae,0x00acfe50,0x00aba497,0x00a4fefc,0x00aecf1e,0x00ae7d02,0x00a87c7e,0x00aa2012,0x00a6b27c,0x00a522d4,0x009dc882,0x009ca150,0x009a4576,0x009bd360,0x009e3d53,0x00990925,0x00914df0,0x009ccf4d,
-0x00a74167,0x00a58e14,0x00b23398,0x00c5f48c,0x00c69dda,0x00c9463a,0x00cce1ba,0x00cd2f8a,0x00d35423,0x00cd9243,0x00b28ecd,0x00a82e88,0x00e10803,0x00ce5889,0x00be6cd7,0xfffae048,0xfff231cb,0x000bdf2b,0xffd3927f,0xffccb3fc,0xffef92a0,0xffe8408d,0xfff4fadc,0x001cf5e1,0xfffba88d,
-0xfff5ae40,0xfffd2e32,0xffe5b36d,0xffdf9cc7,0xffdc6155,0xfff59129,0xfffe0ed6,0xfffdba39,0xfffbb673,0x0002c74f,0x0010b307,0x001c213f,0x0023b26b,0x002c894c,0x001a970d,0x001a2192,0x002ac0fc,0x000b5fe7,0x0000cb99,0xfffaa701,0x000a7f93,0x001684d9,0x0028e24f,0x000fdacc,0x0000e4e0,
-0xffeb6c16,0xfff80b7c,0xffc86959,0xfffe519e,0xff7cad8f,0xff724b2c,0xffe604fb,0xffd53cb0,0xfff24c72,0x003b7fd8,0xffed7347,0xffd10b2e,0xffeb093a,0xffd1d616,0xffca7c14,0xffb89c4e,0xffec3853,0xfff97889,0xfff21312,0xfff1f0c3,0x00081250,0x00388129,0x0067b402,0x00710927,0x005fe2c6,
-0x00605645,0x004f9ed5,0x0048badc,0x0003a28a,0xffe86e97,0xffe7a9e4,0x000253b3,0x001fbac3,0x004acff0,0x003d3162,0x00187cb9,0xff96500d,0xffc2325f,0xffe51134,0x002ecf5c,0xfefadcf8,0xfed560b6,0xffd2cea4,0xff8e01c7,0xffcd6984,0x00abbcc0,0x001d48da,0xffe96f36,0x000eb05e,0xff9021d8,
-0xff76a482,0xff71fd5f,0xfff4611e,0x00144669,0x00189c87,0xfffc6b5e,0x00292c6b,0x00827035,0x00bbd1de,0x00d66fd4,0x00bb1d48,0x00b9c629,0x00a83c12,0x009dc272,0x00159153,0xffd40503,0xffd487cb,0x00061550,0x004c2e4f,0x009744e0,0x006cd482,0x00281c78,0xff788e20,0xffff3eef,0xffc1ea9b,
-0x00103f2e,0xfe47e290,0xfe6ea6fa,0x003c8966,0xffa7f6c2,0xfffa19db,0x00f4b139,0xfffe21b2,0xff74762f,0xfffff089,0xffd2f6f3,0xff97ed0d,0xff664a94,0xffe13bb1,0x0013efe4,0x001727a2,0x0002a212,0x0049ffc6,0x00cc2c08,0x0129db40,0x0178d012,0x01527e4a,0x012962a0,0x00f01c8f,0x014b3080,
-0x008e5149,0x004fbf92,0xfff6140c,0x001d3f8c,0x007d4dd3,0x0111e650,0x00e1bfe8,0x009591d1,0xff153557,0xff7e8878,0x00a7a61e,0xfced9998,0xfdc7af98,0xfd149d28,0xfc1b082c,0xfd94ba18,0xfe99a36c,0xfeb0584c,0x018ff2fa,0x01d876bc,0xff439c3b,0xfe36f83c,0xfe4b1a14,0xffc42991,0x009c87a2,
-0x008e3bec,0xff827a21,0xffd63366,0x001cc426,0x002689aa,0x0004f3bd,0x0051041b,0x00a82a9c,0x0088f70e,0x00b8368e,0x01477956,0x005cdfb2,0x00058a0e,0x006c5a38,0x00078579,0xffa3be48,0x002eb758,0xffa4771d,0xff7ba0ac,0xff27a4f8,0x01294f60,0xfd21fdb0,0xfd08180c,0xff2fef82,0x00f7034c,
-0x021ea0b0,0x0082e418,0x0030a657,0x01739e78,0xffc2b0ae,0xfe3103d8,0xfd1f129c,0xfd97e6ac,0xfe02e5e4,0xff16ba31,0xfec11bda,0xff27309a,0xffe30ec4,0xffea84d6,0xffd2b8a7,0xffd4da9c,0x0089a34c,0x00c8ed5f,0x0182a274,0x00d26d65,0x00af62a3,0x005c4e93,0x0001827f,0x001ecf21,0x00254f26,
-0x00016a3e,0x0018f62a,0xff8cbd1a,0x007afd9c,0x005b4707,0x0043b133,0xfe157ba6,0x04316500,0x018ce53e,0xff125a48,0xfbc96560,0xf8119d50,0xf9951138,0xfb0c5188,0xfd312a3c,0xfdc05ecc,0xfe3ce132,0xfd476974,0xfe262094,0xfeb9a552,0xffa11db8,0x0035a873,0x0003a917,0xff8fae63,0xff612288,
-0xff907779,0xffd94ec8,0x00199bf3,0x00de1ab5,0x02a149b4,0xffeb92b1,0xff599864,0x00623228,0xffb3cbbe,0x004627ff,0x0033563f,0xfffbb4c6,0xfff9b0af,0xffd9391d,0xffde183a,0x008c0d03,0x0363614c,0x03ca5f50,0x02185114,0x02ded31c,0x0509fb08,0x05c81198,0x0532ec40,0x035c507c,0x0117da34,
-0xff621410,0xfd6e101c,0xfd87bc40,0xfdcd1590,0x00666088,0x00ba3367,0xffd9d9a9,0xff1e75ca,0xfeeb261a,0xff2f2568,0xff0f5c21,0xfeed424c,0xff20f37b,0xff1acf66,0xffa530b9,0x01a242b4,0x002d8c7d,0x0014fddb,0x008f9d73,0x0005eb61,0x000de289,0x0001d07a,0xffebc340,0x003278fe,0x013fbc84,
-0x01d47eee,0x024e475c,0x02e87548,0x02092954,0x00ef8a9c,0x00aa4017,0x008244b4,0x00739333,0x004e6b94,0x01efbf2c,0x039c0eb8,0x04e429a8,0x03949b70,0x019b8280,0xfe82f280,0xfe566a8c,0xfe60be3c,0xff1c6b70,0xfeffc5d2,0xfeb9751e,0xfe1bfb66,0xfe8c02c4,0xff0b868f,0xff724648,0xfff43010,
-0x007ac79e,0x012d9a0c,0x00b91450,0x008922a3,0x006d773e,0x010be664,0x014d0e24,0x016111a8,0x017f6118,0x01861406,0x019a06f8,0x01363e8c,0x011b1ba0,0x016b402e,0x01012c9e,0x00afb20b,0x00a7f028,0x00a106bc,0x008a07c0,0x00dd85ff,0x0098bd1f,0x009d0cd7,0x01b149a2,0x01e26c8a,0x0233ffa0,
-0x027ab3a8,0x022f0250,0x01ff055c,0x028f8928,0x023714b8,0x0244137c,0x02411e1c,0x01bea582,0x014a64b4,0x00f87e8c,0x00d05a30,0x00c2c2d5,0x009afd70,0x010ee90e,0x01399ee4,0x01077a2e,0x00ac4234,0x009982a5,0x008a5f6c,0x006aee74,0x0080dbc7,0x00ca6a29,0x01185fb0,0x0147a6c4,0x01675b82,
-0x0124aee0,0x0069ebaa,0x001c8401,0xfffdeecb,0xffe9b8ec,0xffe6230d,0x002d9bb4,0x00692823,0x00803934,0x0076734b,0x00500946,0x001b979e,0xffdf3af3,0xffb571a4,0xff7aab31,0xff62cd8a,0xff455946,0xff3064fd,0xff42a40e,0xff7cff31,0xff6a2983,0xff9a9abc,0x000ee01a,0x0075a0c8,0x006f2c57,
-0x007dac87,0x00984734,0x00bcea7b,0x00bf4541,0x00dd0a26,0x00e46087,0x00e66e10,0x00e973f7,0x00bf5363,0x0099ec98,0x0085d7cb,0x00705bfc,0x00daa6c9,0x00df40fd,0x00dc186e,0x00df6fe2,0x00c28892,0x00afb247,0x0091a5ee,0x007bd60a,0x008477cd,0x009c3455,0x00b9ee7a,0x00c49a0e,0x00c51e09,
-0x00bd79c6,0x00c122ac,0x00bd5eb1,0x00b2cd00,0x00a637e8,0x00959892,0x0080fb35,0x00896af9,0x009eb3ea,0x00b2d79e,0x00bbd86d,0x00d4bbe0,0x00e77d44,0x00d5377b,0x00cb54b8,0x00c283f2,0x00b0baef,0x00a04abf,0x009850e7,0x00a134fa,0x00b24c54,0x00cb2eff,0x00cabd2d,0x00cc6a0d,0x00edc34a,
-0x00de7c59,0x00d327f0,0x00d41029,0x00cdd3e4,0x00cc2b07,0x00c92db7,0x00c60172,0x00ba5702,0x00aea24e,0x00ab2eb0,0x00ae9563,0x00b614ca,0x00b26ed1,0x00b2185c,0x00b5bd7a,0x00b62989,0x00b74f12,0x00bdeb76,0x00b1a0d0,0x00a458d7,0x008f7859,0x00c835f7,0x00b91368,0x00b6fc73,0x00b0eb45,
-0x00ade38c,0x00a72df1,0x00a5c486,0x00a53c94,0x009b8855,0x00b231b4,0x00cb9bea,0x009fb29e,0x00bb5483,0x011be926,0xfffb5a08,0x00015ba9,0x0007051e,0xffe05904,0xffd894d5,0xfff56a1f,0xffd32cf1,0xffda44a5,0x0003f128,0xfff80fa4,0xfff6f8f9,0xfff44bfc,0xffeb812b,0xffe67643,0xffe12f9a,
-0xffec1539,0xffefe0b4,0xffee9aee,0xfff6d164,0x0000eeaa,0x00129e24,0x001be55f,0x0020963d,0x001e6d33,0x001dfbca,0x00179cef,0x0010b50b,0xfffc1569,0xfff50903,0xfff023fa,0x0000ec80,0x000ae17f,0x0015b8a8,0x00159782,0x00164aa4,0xffe7df38,0xfffea5d5,0xffd723cc,0xffeca0e0,0xffb13d04,
-0xffacbe82,0xffe59487,0xff8db4be,0xffa1cca8,0xfffa1948,0xfff7596b,0xfff3eab5,0xffd2a729,0xffc3fe86,0xffbab38c,0xffb94cc8,0xffe24fe1,0xffed5fd7,0xffe429fc,0xffeb18d7,0x0005d0fe,0x00411a3a,0x0057e708,0x0066bf05,0x0061aba8,0x00594b26,0x0040e9ce,0x002bbace,0xfffe1a91,0xffe98700,
-0xffec3be1,0x000694c2,0x00243bd7,0x003f05b5,0x004cbaa5,0x00253104,0xffa45e72,0xffd0c7c4,0xffae4f58,0xffef751d,0xff441f19,0xff2b959f,0xffb140f1,0xfed4ff7a,0xff1307de,0xffe24e67,0xffdb5efa,0xffe3f16b,0xffabef29,0xff8f9193,0xff68b017,0xff3fd195,0xff9384a1,0xffaea5ad,0xffbfeac8,
-0xffd8c16a,0x0013067d,0x0097593d,0x00b5b514,0x00cc9e5f,0x00c3c586,0x00b3eb76,0x0099999c,0x006e9fbd,0xfffc34f2,0xffccd540,0xffd1dea7,0x0001dc92,0x004ff6db,0x007b2d70,0x008cde2b,0x0051b508,0xff935f07,0xffc61c31,0xfecb639e,0xff766ee7,0xff24fe7c,0xff0d8eea,0xffa59cfa,0xfe93eeac,
-0xfec064fe,0xffb4c440,0xffbfc089,0xffb33d85,0xff423616,0xff57930e,0xff237eac,0xfee5b5fa,0xff8a5bcc,0xffb05532,0xffb1d180,0xffaaf65d,0x000449e1,0x00f96cc6,0x013b3d76,0x018431d6,0x01779592,0x010d1ff2,0x00cc5422,0x01204d82,0x00734211,0x00265a3a,0xffef0900,0x002098c4,0x008513ee,
-0x00e10333,0x00c9f18b,0x004d36a3,0xfe851c12,0xfe974c10,0x00d4494d,0xfd18403c,0xfe2a02a6,0xfdbb17b8,0xfc9f6f20,0xfda1bbf4,0xfea247a8,0xfef6a978,0x01595498,0x018bb88e,0xffaf24e7,0xff123569,0xfe48c550,0xfe258120,0xfec1013e,0xff5e3833,0xffe9b29f,0x003f246b,0x0090be21,0x00ccbb49,
-0x009cb738,0x00944bec,0x00ad229e,0x00ed01d0,0x01048344,0x00fb1139,0x0032f8df,0xffeaefd3,0x006071d8,0xff733d74,0xff80e1ec,0x00c86792,0x000c4b8b,0xffdfea21,0xffadfcfc,0x01bf4db2,0xfdda3f60,0xfdc64af8,0xffb547ce,0x00a407ef,0x0114b40a,0xffc21674,0xfeb5c150,0xfe65dc70,0xff923af2,
-0xffcf152a,0xfe926c90,0xfdffea20,0xfe339b50,0xff810bd7,0x0035135d,0x007170a5,0x001a1025,0xffdb7293,0xffcfa50c,0xffb0ab22,0x0033a2d9,0x00ca9b59,0x01c1c28c,0x006519f4,0x00033c29,0x001e3ac2,0xffefc263,0xfff620ef,0xffd91240,0xff990c63,0xff8c939d,0xff5b0810,0xff589039,0xffc0c858,
-0x00deca3a,0xfeaab322,0x01d14448,0xfe03fb3e,0xfb06d1a8,0xf9c93bc8,0xf8658fa8,0xfb47a740,0xfdab9550,0xfddec7a4,0xffde1ae7,0xff9e5e8e,0xfd80aa94,0xfe085570,0xfee417a0,0x01129ca8,0x007af761,0x0066ff14,0x002891c0,0x00699d92,0x007f6fca,0x004f97b0,0x009fd8e1,0x00ed4ae3,0x01ea5bfa,
-0x000c1055,0xff836bcd,0x0055ebb9,0xffc4ee17,0x00483ae2,0x000c992f,0x00142553,0x001b47cc,0x00383cc7,0xffc15e42,0xffb92039,0x013bcae2,0x01c24d1c,0x0332fb08,0x04760df8,0x072da9a0,0x072fca58,0x047bdc18,0x0221f158,0xffb87bda,0xfd3b40a0,0xfee68dac,0xfefd6ca2,0xfdc74674,0xfe0c253a,
-0xfe8bc436,0x005d4acc,0xfff9d974,0xfff2091f,0xff2bc40e,0xff2af1ee,0xff220bf7,0xff44e43e,0xff76f6b4,0x0009544d,0x01370266,0x005027c4,0x00506dd0,0x00af6e5f,0xffde6b0b,0xffed0100,0xffff7782,0x0048778f,0x0087ca3c,0x0104c7aa,0x01939fea,0x025533a8,0x032f83d8,0x02bcba00,0x0096a22a,
-0x003d9abc,0xffe0c819,0x00696ca3,0x01e16680,0x03770ae4,0x044c7cd0,0x03e1b4b8,0x02b4ee98,0x00aa81a4,0xfe738cf2,0xfd0c7fdc,0xfc9abb64,0xfde24090,0xfe4d00fc,0xff060cec,0xfec3253a,0xff8f315d,0xffe1beca,0xffd0dfa0,0x001d3a56,0x009b5d11,0x013f8dee,0x0092df02,0x004dbdd8,0x00320b25,
-0x012e6b94,0x0179d142,0x010f83ae,0x01512040,0x01881baa,0x01fac318,0x0166b3c0,0x01245ec4,0x01697844,0x00dac6e2,0x01999982,0x0183405a,0x01aae18e,0x015b4b12,0x008f46ea,0x0049e64b,0x00d7bfa7,0x020ddd28,0x026044d8,0x02e40870,0x0333b098,0x02586aa4,0x01aa2c00,0x0120aec6,0x012d553e,
-0x010eecea,0x010317b6,0x010f9018,0x01068076,0x00ec055e,0x00cf0f26,0x00a31a8a,0x00b1a77e,0x00d92658,0x01216ac0,0x013591fc,0x00ec9b05,0x0084679f,0xfff65b4a,0x00248c08,0x0047532a,0x00b3d61f,0x00d49d0a,0x012d9272,0x0195792c,0x01bbde5c,0x004bbb4e,0x0002994c,0xffe4700c,0xffbdd95d,
-0xffc340e2,0x0015aea5,0x003a3acb,0x0051f50e,0x004cda1d,0x0047625d,0x0053bbec,0x003d8375,0x0046467f,0x0036bece,0x00591efa,0x00611d59,0x00740e63,0x008498c8,0x00b73c25,0x00b552d7,0x0095cf52,0x00f33c63,0x0120504a,0x00d1fa74,0x0086429f,0x0048dded,0x00800825,0x00b33ef3,0x00f886d7,
-0x010a234a,0x011bb0dc,0x01228f9c,0x0111584a,0x00f9f57e,0x00f0bf22,0x00a3f56b,0x00cc7c35,0x00d89735,0x00e9e875,0x00fac4a9,0x00f78935,0x00ed75be,0x00e9ca86,0x00f10ad9,0x00e6e61f,0x00dd5cc5,0x00d02cd7,0x00c97d68,0x00b8ff1e,0x00a832cc,0x009ab950,0x00940c68,0x008eb6d7,0x00895d2f,
-0x0087d827,0x0082a103,0x006a62fa,0x006cefe1,0x00708cc2,0x0087af41,0x00a32809,0x00af3e8f,0x00a78bd7,0x0097bebc,0x00949c86,0x008375f4,0x00883d1b,0x0083c22f,0x0097c6cd,0x00a26d9a,0x00ad9d44,0x00b500cc,0x00f47c9d,0x00cf3529,0x00d1f8c2,0x00d2977c,0x00d86688,0x00dde95e,0x00e2bded,
-0x00e88b6e,0x00d9fdb7,0x00d047ff,0x00c6a142,0x00bcee04,0x00b7516b,0x00b3c823,0x00b8e0a8,0x00ba5f80,0x00bbbedf,0x00bc9722,0x00ba9afb,0x00be7603,0x00d54ecf,0x00e0ca48,0x00e76b99,0x00d9bcd2,0x00eb433c,0x010706d6,0x01019e58,0x00fff291,0x00fa3ca0,0x00faaf4c,0x00f502de,0x00ee29b3,
-0x00f107f5,0x00dfb52f,0x00f59279,0x00f8c5ce,0x01024596,0xfff368b9,0xfff04a1f,0xffeeaadf,0xffd0ce81,0xffcd0f1c,0xffe038b9,0xffdd352f,0xffe36067,0xffeb2c24,0xfff3e1db,0xfff78b60,0xfff2368f,0xfff8faf3,0xfff47d82,0xffe4551d,0xffeced49,0xffebcf50,0xffe5c51b,0xffebe15a,0xfff46499,
-0xfffda568,0x0002edce,0x000bd49b,0x001c3b8d,0x00114a3f,0x000afcb8,0x00013eab,0xfff1a29f,0xffecd2de,0xffe8c129,0xfff9c3a6,0x000453b5,0x000a53d9,0x000f13b6,0x000cad7b,0xffe5f3be,0xfff46a87,0xffe6a31f,0xffef8786,0xffad88ce,0xffa0c648,0xffcffcb4,0xffbfbed1,0xffbff3d9,0xffc9d3b4,
-0xffd9a3c6,0xffd828b8,0xffc816e8,0xffe57706,0xffe3f252,0xffbe09f8,0xffd71404,0xffd9f9c6,0xffd44fa5,0xffe42740,0xfff706e7,0x001fa56d,0x003f2dd6,0x0043f188,0x0050bc9a,0x005202b8,0x003a8edb,0x00137a6d,0xffee8e0c,0xffda24c5,0xffdcbc1e,0x00028deb,0x00245826,0x0032b75c,0x00582dc3,
-0x003e4ec3,0xffc3500b,0x00018422,0xffe3cc64,0xfff6fe55,0xff4f7860,0xff207cd1,0xff6e0867,0xff81d174,0xff9c4355,0xff9db465,0xffefd7a5,0xfff75584,0xffc7bd51,0x000665f1,0xffe53383,0xff9c0458,0xffbe3269,0xffc02bee,0xffab6478,0xffcf7327,0xfff09750,0x005a45b4,0x00804ddb,0x009e6bef,
-0x00b0ba0f,0x00bec091,0x009dc21b,0x004d163b,0xffe19ec3,0xffb1a8c0,0xffbd9a45,0x000f02af,0x00610f17,0x006cfd08,0x00abfbb7,0x008265f4,0xffa6271e,0x000c306a,0x00128cc4,0x009fe7be,0xffa8397c,0xff347dbf,0xff9f7e45,0xffa5c6ec,0xff7cc2cc,0xff63c612,0xffa32996,0xff8ea54d,0xff38566f,
-0xffb35777,0xffbc2fe9,0xff5d913e,0xffa56985,0xffa288ab,0xff9d77a5,0xffd51c9c,0x00193839,0x00c58b63,0x011bc2d2,0x013fa2b2,0x014e6de0,0x010b4496,0x00e83621,0x010060f8,0x0055c4bd,0xfff5018b,0xffdb5eb5,0x001cd794,0x009c2ec2,0x00ed3c20,0x01062ac8,0x00b67a2d,0xff479eb5,0x00115318,
-0xfff8ea98,0xfd7e7100,0xfd68ff28,0xfd2bb874,0xfd3f8f48,0xfd68596c,0xfe36cb2c,0xff92ea6f,0x006161c2,0x00f147d7,0x00b4077e,0x00322585,0xffb29009,0xfe65e2b4,0xff02ea1f,0xff682e9a,0xffc90f6e,0xff9eee80,0xffbef6ab,0x0049de37,0x00cbc11a,0x00c52a4d,0x00b196d4,0x0144eb78,0x0138a7f2,
-0x00b30752,0x0023a8fc,0xffd3a001,0x00078436,0xff77d74c,0xffb8c98f,0x00be507f,0x009475b5,0x0075da29,0xfff6a6a4,0x00f8ee4f,0xfe3e34e0,0xfde2a3f4,0x0047feeb,0x00c8ed42,0x008e46dc,0x000fbb41,0xffcc1d1a,0xff29d05c,0x007e0256,0x0041acdc,0xfea82032,0xfe84e538,0xfe6765ca,0xfe6e8504,
-0x002be787,0x00d30252,0x0066b1cb,0x00661a86,0x006e6b40,0x00480410,0x005fae65,0x00bf8f1e,0x018ff7b2,0x0023a8af,0xffbde45a,0xfff3d31f,0xfff0edd1,0x00042a96,0xff93c841,0xff891d65,0xff5951b4,0xfecc1514,0xfecda094,0xff9eecc2,0x010c6cca,0xff2233a0,0xfeccdd26,0xfbb735c0,0xf9675348,
-0xf91b5cd8,0xfb502290,0xfcbdf318,0xfe76c91c,0xfea38e56,0xffd87409,0xff752c6d,0xfe7d2afc,0xfef0c5d6,0xff3db73b,0xffde6d49,0x00312ed0,0x006cbb99,0x001d0f58,0x0064511d,0x005e518b,0x0048ba04,0x00efc2bf,0x00fd5a48,0x01411dc4,0x000e70dc,0xffaca389,0x0000618f,0xff9dd286,0xffefe5c0,
-0xffbc0e56,0x000b7975,0x001b2587,0x004a39c0,0xff9143b7,0xff0dc320,0xff4184d2,0xff848e4a,0x04d2cd38,0x062546c0,0x068fed38,0x052950d0,0x02985b08,0xfed5398c,0xfd517bb0,0xfd996fec,0xffa349fe,0xff81fda6,0xfd9d8a70,0xfc8d31d4,0xfce2d1c4,0xff0aff36,0x0036753d,0x00d158f3,0xffe5c82e,
-0x002968cf,0x00135114,0xffbabf30,0x00594df7,0x00c211d6,0x00ede584,0x006eeb2e,0x00517002,0x00699caa,0x0000b89b,0x0006f423,0xfffd9b65,0x005b12ad,0x009670aa,0x00924dd5,0x01a152b0,0x02b28574,0x03886930,0x040831c0,0x00caf262,0x008c46da,0x007e0f17,0x017b787a,0x0365e7f4,0x03f97b3c,
-0x03e4e7b4,0x02b34880,0x00f31f84,0xff53d64b,0xfe78ad98,0xfca4512c,0xfc2203f8,0xfd01e3dc,0xfd4339e0,0xfe0fc0f0,0xfef62688,0xff61da0c,0xff980b4d,0xffd373d2,0x003d279d,0x0076d071,0x01139298,0x004dee7a,0x0025925e,0x00515b1c,0x00e35c7f,0x011ab290,0x00d4c7dc,0x011daa20,0x0154144c,
-0x018e1400,0x0155fd5c,0x01485f54,0x019816a0,0x01376fd0,0x0199c94c,0x01517600,0x0137e650,0x00ecfe60,0x006be93d,0x008f2ed5,0x00fc9055,0x01d0807c,0x02bab11c,0x02f58884,0x02b42778,0x025ec0c8,0x01a8f4a8,0x0054441d,0x00871cd0,0x00205bb3,0xff68dd0e,0xffbe58c0,0xfffb436b,0x00512005,
-0x008a85a9,0x0075866d,0x00eb79bc,0x00e31198,0x00fc0762,0x00d57b1c,0x00a612f2,0x005a81b7,0x0039a44e,0x004553ec,0x006750b0,0x00d0058f,0x00c559dc,0x00fce739,0x01593f72,0x0186d7b8,0x00a7a993,0x009cb779,0x007bba40,0x004818b3,0x001d907a,0x0038c5c7,0x002c9aee,0x000430e6,0x00427a47,
-0x009b39a0,0x010a01c2,0x00e626c6,0x00e3273e,0x00d81805,0x01185a0c,0x014c7d4a,0x018c315a,0x016f3e7e,0x012fcda6,0x00f7a7c5,0x0113a706,0x012a2f60,0x01324ff2,0x00f48048,0x00af91ac,0x0095a70d,0x00acfd96,0x00e9973e,0x00ec778b,0x011cffe8,0x012949f0,0x013cb4fe,0x01348458,0x01335f40,
-0x01349ef0,0x00eca186,0x00ae2caf,0x009557f6,0x00a2fd45,0x00aed2b3,0x00b693f3,0x00b74081,0x00c6139f,0x00d9ae24,0x00d219ca,0x00b251af,0x009ace12,0x007c00e9,0x0067158f,0x00479a39,0x00565f10,0x0062bf67,0x007df5cb,0x008b9136,0x00c10e45,0x00e236d5,0x008cf89d,0x008ae9e6,0x0077a476,
-0x00862d3d,0x007d9bb3,0x006e9b98,0x006b22cc,0x00641ed5,0x005dd1a0,0x006391b4,0x005f9da6,0x0074e8e0,0x0078e08e,0x0087002e,0x00897251,0x00890d7d,0x008ee3d6,0x00636512,0x0070e1ad,0x00757bf6,0x007ce9a2,0x008297ab,0x0084a805,0x0088d4a6,0x007a1e8e,0x00744942,0x006c21a1,0x006d576b,
-0x006adbd5,0x00602304,0x00762d6a,0x00824f7c,0x008c1579,0x009eaf22,0x00a6286c,0x00c0be37,0x00a883e6,0x00b3345e,0x00c64492,0x008c6dcd,0x0096960a,0x00b82a08,0x00bcaf55,0x00bfb964,0x00c7e5b1,0x00c8401a,0x00ccaec8,0x00cddd07,0x00a5204e,0x0080e1a3,0x00cbc0af,0x00a22952,0x0080683a,
-0x0010d5c9,0x0004cd81,0x001ae3f2,0x00030b8a,0x0000b697,0x00030578,0xfffa866a,0xfffc5b5e,0x000682b2,0x000063fd,0x000661ae,0x0012deb9,0x001e4f2e,0x001affcb,0x00009d7e,0x0009facd,0x000863c1,0x0000a403,0x0008c164,0x000c4a16,0x000cecf8,0x000b48c0,0x000e5825,0x000f793c,0x002647d4,
-0x0015ba0c,0xfff70ec4,0xffe987e1,0xffe58e6e,0xffe44b55,0xfff9ddb6,0x00047144,0x0002ac29,0x001a366c,0x001e0f19,0xffdec20c,0xfffe2ab8,0x001570fa,0x0036fef2,0xfffc3cd9,0xffe4b071,0x00021532,0xffe53fc4,0xffdff5a5,0xfff810aa,0xffde4d08,0xffef4069,0x000ffad1,0x0037b3c8,0x00370256,
-0xffebb080,0xffff4190,0xfff3f07e,0xffe18722,0xfff7b515,0x00029cef,0x000a3c61,0x002439d7,0x003e72cb,0x00585b19,0x006891fd,0x0050492c,0x0015252d,0xfff9345e,0xffe7283e,0xffe1adb4,0x0020de9d,0x0042b704,0x003647b1,0x006680dc,0x0051f367,0xffe2bea0,0x002e47a5,0x0031a1cf,0x00386cad,
-0xffeb3f83,0xffe240f1,0x0007c60a,0xff9b0265,0xff9b3298,0xffda2788,0xffa80f11,0xffdafb2c,0x002a6d31,0x0079110e,0x006df3f0,0xffc9f2f3,0xfffbe084,0xfff0707b,0xffc28254,0xfff025b9,0xfffea223,0x001b39ef,0x004ed35a,0x006fef13,0x00a1f91b,0x00cfc159,0x00ae3b3f,0x002560f3,0xffda0d83,
-0xffb446d5,0xffae2148,0x002f4979,0x00744f00,0x00586d2c,0x00b253d8,0x00918f34,0xffa62cab,0x003fa039,0x00fa8fad,0x00c694b3,0x000f02e5,0x0000b527,0x00666e4b,0xffa9e830,0xff8db4fe,0xffc5891e,0xff6aaf16,0xffa21a90,0x000a0e15,0x009c4e3d,0x00ae7fd8,0xffb74ae0,0xffe93a7c,0xffca7d06,
-0xff8573af,0xffd76806,0xfffc30c7,0x0039c722,0x00bae8d7,0x00e9a8f5,0x0114abb2,0x014b5742,0x0127d5a2,0x00c06128,0x0029032c,0xffbf2215,0xffb68dc0,0x0035444c,0x00d3faff,0x00e1145c,0x01353018,0x00f94aef,0xffa92fa9,0x00ad2247,0xfe5a8626,0xfda4e5b0,0xfe65d97a,0xfe596774,0xfeb04018,
-0xfe77c632,0xfeb160f8,0xffa33985,0xffb2fc41,0x0064c36e,0x017fa3a4,0x00d7f77d,0x005a7d2e,0xffc2e027,0x0028643e,0x003dec03,0x000f00ae,0xffe43c9e,0x00040f47,0x00445e34,0x008a39d0,0x00abed60,0x006faa0d,0x0142a46e,0x0139aa96,0x0090c2b5,0x0010f4c5,0xffb63855,0xffd500f5,0xff66abc1,
-0xff90458c,0x00241061,0x00a6a9e0,0x00b1963e,0x000c0df2,0xff6d3865,0xff41fc78,0xff566321,0x0027b940,0xffea44da,0x001e8abf,0x0037f853,0x003f00bc,0xffb8e6dc,0x007b15d4,0x006f94a5,0x00821c0d,0xff0bd0f0,0xfeae683e,0xfe74e8c6,0xfec0bac2,0xff271bd1,0xff744a39,0xffd02492,0x000976ee,
-0x0051dd31,0x00bf33e9,0x00e4f96f,0x0134b5e2,0x000c2ce8,0xffbd10e4,0x00074eed,0x0019ab59,0x001e8e48,0xff7d4198,0xff8ddae8,0xff6f9ba8,0xff303abe,0xff4cd461,0xff87e4c0,0x0000e799,0xffb9255a,0xfd398068,0xfb401240,0xfa14e458,0xfabc5780,0xfe1e27a4,0xfdee14e4,0xfe1ceaa6,0xfe8750b6,
-0xff53577c,0xffaa2cca,0xfff147ab,0xfeada470,0xfe471730,0xfe7088aa,0xff6bd2ef,0x000a5af9,0xfff31561,0xffcb4e45,0xffd71602,0x001aa0ae,0x00aca33b,0x009589fb,0x00387223,0xffd1dea3,0xffd37bb7,0xffd98406,0xffaa0670,0xffdbbbe6,0xffc66ab7,0x00143737,0xffed00f5,0xffe18efa,0xff693739,
-0xff10ecd2,0xfec5b9b4,0xfe5456f4,0x0593ad18,0x05b3d4f8,0x044070f8,0x022247f8,0x00ba51eb,0xfcc0f590,0xfc2f4174,0xfe98abec,0xfe7d43a6,0xfe9b9320,0xfecb0650,0xfe12e5b0,0xfdf40c00,0xfe452286,0xfeef0a34,0xff828d63,0xfff82942,0x0068a71c,0x00765b7e,0xffe1ee59,0x00d7d145,0x00edd868,
-0x0071ad69,0x003fa05d,0x000bbcdb,0xfff35d45,0x0014bb32,0x0022c0fc,0xffe8e602,0x002dcc0c,0x00718798,0x0048e6a9,0x01863594,0x028ac15c,0x03baf644,0x04838648,0x017a7f3c,0x01bd3b0c,0x02b54720,0x03881130,0x04b8bff8,0x03c96aa8,0x0260ab8c,0x007c31ac,0xfeae6f9e,0xfd9037ec,0xfcda2f00,
-0xfd9bb2e0,0xfdeb56b0,0xfd7ffcec,0xfe3ec082,0xfe56d92c,0xfea0a3fa,0xfe5ebb1a,0xfe76b196,0xff25021c,0x001c4e27,0x003f8a72,0x007759a4,0x00074c12,0x001d7ffe,0x00b3315b,0x008c6ecb,0x009981db,0x00a5acb6,0x01014160,0x013d930a,0x01558b70,0x015fc08c,0x0179c1fa,0x01aa50da,0x01b2c2a4,
-0x01342f2e,0x0104499e,0x00b78336,0x00876bc1,0x0097a204,0x00fc102a,0x01a4e618,0x024dc950,0x02c910dc,0x02b4f220,0x020c9eb0,0x01907bf4,0x00d637a3,0xffe1be60,0xff766809,0xff3b2808,0xfef4269a,0xff45a834,0xff934d2c,0xffebf45b,0x003f51f5,0x00980ff6,0x013a2776,0x011fcdb6,0x00f20f80,
-0x0091f090,0x00691426,0x006ea7c6,0x00b36fc6,0x00b3d0db,0x00b6b6f1,0x00aeb33f,0x00bee685,0x00da0943,0x00ec3781,0x012e16d4,0x011b4db2,0x012b58ac,0x00f87e15,0x00c3fff6,0x0084d254,0x0097ae1a,0x00801a19,0x005a086c,0x00a02651,0x010342de,0x018688b2,0x018bd5bc,0x019834b4,0x019a51da,
-0x018c1a7e,0x017eaf12,0x0165b6be,0x014d8c94,0x01262320,0x00f2d0f3,0x00f60a96,0x00fda405,0x00fd2e73,0x00f61360,0x00eea507,0x00fa9329,0x010cdcb6,0x0135e7de,0x01304c66,0x012bbee2,0x0124da3e,0x012041ac,0x012ca7b6,0x01426d34,0x01580092,0x0134e6a6,0x005d04a5,0x004dc50a,0x005d4875,
-0x006dfece,0x007bb19c,0x008a6834,0x00a5709c,0x00c0bfae,0x00dbdb82,0x00d9aa0b,0x00d70359,0x00cc7091,0x00ce4af6,0x00cc082f,0x00ebf8cb,0x0109cab4,0x01315ca8,0x014e4df2,0x017bfda6,0x01a1dd32,0x0124b3a0,0x012447ac,0x00ff56d1,0x00e543c9,0x00af1323,0x008c286f,0x007cdc65,0x006ddd22,
-0x005ecdf3,0x005cfdb6,0x004de701,0x004ab771,0x004c3aa0,0x004fa0b9,0x00509ea1,0x004f4753,0x0055603b,0x00424712,0x004e9006,0x0053db8c,0x005b7464,0x005cbed7,0x005b05f6,0x00579267,0x0054826d,0x0058232e,0x005d1d92,0x006a7f7c,0x0072ebb5,0x0074310e,0x00860127,0x0092f95f,0x009e3a83,
-0x00ad561a,0x00b426a2,0x00d84b41,0x00b466d0,0x00a71ec5,0x008bd6b6,0x00863267,0x007c001e,0x006761dd,0x006cddeb,0x006f6828,0x0073a5dd,0x007334b4,0x0076d178,0x00767788,0x0061de00,0x00508acc,0x00711815,0x005d7cf4,0x004a75f5,0x002ea4f1,0x002bc49d,0x002bcb96,0x002a0c69,0x0026d64f,
-0x00268566,0x00138bd2,0x0011c995,0x0024096f,0x000f1b2a,0x0014d9d3,0x00233d9a,0x003dbeaa,0x003ecedf,0x0022b550,0x0024afa3,0x001f1d59,0x001682ef,0x002265b5,0x002515cd,0x0021a0ee,0x002769f3,0x002b9411,0x002c06a6,0x0040429c,0x002e8a1a,0x000a6334,0x0005ca31,0x00026340,0xfffe6797,
-0x00198109,0x002372ce,0x00197ab6,0x003537c1,0x0038e42c,0xfffca571,0x002336b0,0x0051dd16,0x003eaa4c,0x0033858e,0x003532eb,0x004b4a6b,0x0036c8fe,0x0031f9e5,0x00518b1c,0x0002b5c0,0x000240e9,0x001c7f5b,0x00603a98,0x00676552,0x001730d8,0x00215afa,0x0011f8b1,0xfffbe4b5,0x000eb58c,
-0x00137739,0x000acb4b,0x00232b1e,0x004a157e,0x00713221,0x00782c37,0x0060da41,0x001a33ef,0x000eaff0,0x0003b64f,0xfff99231,0x00408f9c,0x0059fe2e,0x003f2b28,0x006b93c7,0x00523cf3,0xffefe687,0x00463f75,0x00469b36,0x00132bbe,0x001e7551,0x00276abe,0x00185dfa,0xffdd70c8,0xffd7c235,
-0x0018a5f3,0xff857413,0xffb1c71e,0xfff0fe56,0x009f2c09,0x00a672e0,0xffe7c918,0x0005dd51,0xffe6511c,0xffc1f555,0xfff6e257,0x000a280a,0xfffdf3d2,0x003f00ee,0x006fa016,0x00bee6df,0x00cda97f,0x00a45a3a,0x0001a0d3,0xffe7b0c8,0xffd0c2cc,0xffaf6c0e,0x0048fd14,0x0082d38e,0x00407c2f,
-0x00ab1e1b,0x0098779d,0xffa31f52,0x003ad4a5,0x00b2b29d,0x002ebdf5,0x000eff30,0x00381f2e,0x008f742b,0x00967e18,0x00966de2,0x00b68d34,0xffb1c1dc,0xff8c10a1,0xffb03dfd,0x00b8eb11,0x00e6d670,0xffadde82,0xfffabda3,0xffd95f33,0xff8b689b,0xffc0a768,0xffcc5944,0xffc763bf,0x003fcc74,
-0x00b13a7d,0x0105b2e6,0x015cb52e,0x012bb0aa,0x006bd2a4,0x000b8687,0xffab192e,0xff967639,0x00588015,0x00f30212,0x00a43304,0x01202d68,0x00a9d75d,0xff40a7c9,0x0051fdd7,0xfd998364,0xfe1fe02a,0xffa2b28e,0xffc04c05,0xfec2c966,0xfddee1e4,0xfda91e9c,0xfe6b4a98,0xfe64f2ca,0xffa8881f,
-0x01bca79e,0x00f0ee73,0x007662ec,0xfff483fc,0xff771299,0xff70e10d,0xffc06fc1,0xfff5a395,0x005abfce,0x00db7562,0x009fc186,0x00c035d0,0x00bc3165,0x012bad2a,0x010af6c0,0x0070eff7,0x000eebc1,0xffba4971,0xffbc8b60,0xff4b6247,0xff7fc189,0x000625e2,0x007a25d5,0x00adee85,0x009aeac9,
-0xfec8e39e,0x00993f7f,0x0014759b,0xff03d9c3,0xfede2e30,0x002f79f8,0x00ffcf96,0x013e15d6,0x00ca14f8,0x00b0508c,0x0047987b,0x0061a54b,0xff35a089,0xfef76b5a,0xff4696f8,0xff24ba7e,0xff32f585,0xff25162b,0xff5b650e,0xffa8b87a,0x0016a99b,0x00a7b52f,0x00bdfd62,0x006d932e,0xffef7959,
-0xffd27e43,0xfff3a99d,0x002a9c40,0x001b6487,0xff795fbf,0xff8a4341,0xff7ded40,0xff9ba647,0xff209315,0xfed7bc82,0xff36670c,0x0041dd75,0xfc58d94c,0xfb617af8,0xfd3b5160,0xfe9a1bca,0xff961c14,0xfee8d47a,0xfdf736e4,0xfdbc5ec0,0xfe60fc22,0xff3cc861,0x0036885c,0xff264fc3,0xfe90af74,
-0xfe4c8ee0,0xfe71a9b0,0xfecd675e,0xff3d1806,0xff55c8b1,0xffac03e7,0x000bf7e5,0x00c68525,0x007eee42,0xff6b00bd,0xffc426a7,0x001041e7,0xffe7e8c9,0xfff6a283,0x000abd73,0xffe202f6,0x00317a93,0xffec274e,0xffabffd7,0xffc1e46c,0xff5ac7f1,0xfea4b018,0xfd851054,0x04bfc7e0,0x033a2674,
-0x0190234e,0xff707b30,0xfd826984,0xfcdc57e4,0xfd6a78e4,0xfebbdca8,0xfe48e586,0xfe0af0c4,0xfe60b45a,0xfeec5cf2,0xfefaef20,0xfe47f4b2,0xfedfa150,0xff277fb2,0xffbca2b1,0xffc9e28e,0xffefcb0c,0xff9b0b60,0x00e107d2,0x00d47123,0xffb022eb,0xfff71c9b,0xffe61ea7,0xffbf54cb,0xfff88441,
-0x001406d7,0xffdbec43,0x000a8ff7,0x004befcf,0x00172982,0x01018c3c,0x01db2b34,0x03564ea8,0x0407f7c8,0x027e3548,0x03321554,0x046f6280,0x04aa0690,0x04707d98,0x02e3ea90,0x00a33023,0xfdeeef4c,0xfd7cf2cc,0xfd8826dc,0xfd9327cc,0xff28456b,0xff43ca9c,0xfe0050d0,0xfe97b78e,0xfe64f5b2,
-0xfdf6f424,0xfe1c5e14,0xfe850186,0xfee3a0f0,0xffc20422,0x00122af8,0x0014c6bd,0x00266d69,0x0051ae8c,0x00dc1151,0x00563190,0x002fac27,0x00517680,0x00d78914,0x0135a78c,0x016a8608,0x018c4f50,0x01b5510c,0x01c39bfe,0x02428150,0x00f20164,0x00fb04e4,0x00fbb87a,0x01275b94,0x01757dce,
-0x02284250,0x02b02578,0x02b5b5ac,0x025b3264,0x019f2d60,0x009899a8,0xfffffe62,0xff6b7e8c,0xfedd6a28,0xfe5a3ffa,0xfe8db2c4,0xff6c2d86,0xff7f310c,0xff9f282e,0xffd1f31e,0x005327a0,0x00b19575,0x00eb96d6,0x00e2fef7,0x00c0cd58,0x00a16ab2,0x00ab0f9e,0x00d181da,0x00f09f26,0x011cf356,
-0x010c2ab0,0x00d2b7b8,0x00d87045,0x00d9ea9e,0x00c4b7d7,0x00fcb01f,0x01361f78,0x01354ad2,0x011fefe2,0x01110422,0x00e0923d,0x00f7a23c,0x01030c5a,0x012c4808,0x015b3218,0x01b18cd4,0x021f1714,0x0220b9a4,0x021f6f34,0x0227ab2c,0x01f98364,0x01bdbae0,0x017fc466,0x015d9aae,0x0162b474,
-0x014dd8f6,0x010ad8fc,0x00fa9939,0x00e77556,0x00e78bfb,0x00fb5cb9,0x00e901c7,0x010df1d2,0x0101f122,0x011dbb22,0x00e6f308,0x00defa86,0x00bb4334,0x00ee9f51,0x0120c990,0x0151e1e4,0x013a7142,0x005a23ba,0x00864d3d,0x00842b2b,0x007ea951,0x0082588d,0x0089af32,0x00927513,0x0092a35f,
-0x00b4ce28,0x00c19ff2,0x00cffea0,0x00e1c738,0x00fcf8b1,0x01176a60,0x012bd8d4,0x014545ac,0x01536a20,0x01725272,0x017701b2,0x01924c9a,0x019b734c,0x016a6fcc,0x0144a384,0x01174966,0x00f0023f,0x00c5e21e,0x00b266e2,0x009e08fd,0x00969665,0x008a52b8,0x008ad06c,0x0071faa4,0x0079e9a2,
-0x0068e5e8,0x006b5be7,0x007b9bb4,0x004dd174,0x00745160,0x006e23e5,0x0073ac10,0x0075ccd7,0x007126d3,0x006cab43,0x0063b4ae,0x006f0795,0x007ac28d,0x0087619a,0x0098be57,0x00a71ded,0x00b7ea72,0x00b0e697,0x00ae5660,0x00ae5edb,0x00a7d7c7,0x00a40484,0x00a11554,0x009e4037,0x008eca1c,
-0x0085ab0c,0x0081e542,0x007240b1,0x00597978,0x0058c9b7,0x0055bc2c,0x004c517e,0x0048eb8e,0x00410193,0x003ebe3c,0x004bc05f,0x005fb4e5,0x00347445,0x0041a70e,0x006a7334,0x002cf81c,0x00286f8c,0x0011a660,0x002129d7,0x002699d4,0x00357039,0x00272b13,0x0020901b,0x0029c45a,0x0010e3cd,
-0x000d71eb,0x00039ac3,0x002fe3fd,0x0039bc2a,0x0032187f,0x0026fc19,0x0020ee8c,0x001befa8,0x0023081c,0x00250d14,0x002335fa,0x002edb38,0x00390f3e,0x004b6b0a,0x003c7f56,0x003285aa,0x001e730f,0x002019e2,0x001e780a,0x001a1638,0x00317788,0x0038a3b1,0x002ae0d6,0x003a8d33,0x00378b00,
-0x000fe30d,0x002b9aa8,0x005c17b9,0x001eed55,0x002f927c,0x0038f1a9,0x004e0644,0x003a9d3e,0x00315314,0x004df498,0xfffbaf7b,0xffe9aeda,0xffdac603,0x0040e02a,0x005ffde7,0x00460394,0x00201e05,0x000a0461,0x0008060a,0x001392bb,0x001c9892,0x001962ee,0x0030a8e4,0x0053f9ad,0x007fcb9d,
-0x006a6853,0x0052b46d,0x00196403,0x000fb527,0x000ac3f1,0x000c2abb,0x004261f2,0x00531003,0x0038d503,0x005cd208,0x004ba5ec,0xfffa3d2c,0x004bf661,0x0027d718,0xffd432fb,0x000b11b0,0x002000ea,0x005cc1f5,0x003f72df,0x00188082,0x003b3769,0xff9cbb69,0xff914497,0xff697aee,0x004ed412,
-0x008a00e8,0x00563b07,0x0016b407,0xffebf8d6,0xffdf659e,0x0001be5e,0x0016fc49,0x000764d4,0x00422906,0x00830601,0x00dc449b,0x00b2d5c5,0x007a44f4,0xfffeaa73,0xffeae39a,0xffe29a6e,0xffcf21a7,0x005220c0,0x00761884,0x002ab713,0x00964c51,0x008c5331,0xff9dc670,0x0037db25,0x00e3ce2c,
-0x0039014f,0x0051f74c,0x0052650f,0x008699e7,0x00ab2758,0x007a6195,0x00c2cf6d,0xffb8f687,0xff5b7087,0xff0d4cda,0x003a2f15,0x00b84fe5,0x007412c0,0x0004a40d,0xffbddd2d,0xffaa360e,0xffd38915,0xffed1d64,0xffe59a26,0x003c533e,0x00b3c10a,0x011e5d10,0x012b8026,0x00fc668e,0x00427cc6,
-0xfff7d240,0xffa4cbcf,0xff94b635,0x006f1527,0x00ecdf17,0x0088997d,0x00ffa446,0x0079ea6a,0xff513eb6,0x00ada9b1,0xfd4a7224,0xfeb76bec,0xffa0679f,0x000204f6,0xff4d5c2a,0xfeba639a,0xfe705d48,0xfed3d4dc,0xfdeb9194,0xfea6a900,0x00bcedf2,0x0077199c,0x007b2676,0x0036e6ba,0xff56159a,
-0xff3c2d75,0xffe7381c,0x00128637,0x005434dc,0x00c807d0,0x00a7813f,0x00d66037,0x014b07a6,0x0108ecd8,0x00bc4b4d,0x003b319a,0x002346fd,0xffdb6075,0xffa35cb3,0xff59971e,0xff8e1871,0x00140bba,0x0066d1ff,0x00bfc460,0x013bd546,0xfe5f5b44,0x00d1ca61,0xffb0a89a,0xff17ae9e,0xff338f5b,
-0xffe7fbe4,0x007398f4,0x00870a22,0xffefd9de,0x002310cd,0x00533e55,0x00c6e7ff,0x00287307,0xffc64da7,0xff151d17,0xff71a209,0xff8903b5,0xff344bcf,0xff671fdd,0xffbbd53e,0x0012be7a,0x00aea044,0x0090fe7e,0xffc96d4c,0xffd0fb60,0xffdcb19c,0xffd55ea5,0x000ab9a4,0x000307e4,0xff837753,
-0xffa408a4,0xff72b2cd,0xff3fdb9e,0xfe7f8b18,0xfe4554a0,0xfea4a930,0x0057d669,0xfd014140,0xfd8695f4,0x0066e437,0x00f55e20,0xffbdabba,0xff429c5d,0xfe5d869a,0xfd90b730,0xfe3ad5ce,0xfe71d83a,0xfe71710e,0xff282412,0xff6a9f28,0xfec2b9be,0xfeb1d2ae,0xfea15534,0xfed89756,0xff2d3d51,
-0xff94ff2b,0xffcfdf4b,0x00c6ca25,0x009b57fe,0xff2efa54,0xffea15b2,0x0055f273,0xfffd23d2,0x0018dd0e,0x0010652a,0xffebc0ae,0x00257cb2,0xffdef2e1,0xffd78845,0x00125300,0xff76d4d1,0xfe5da556,0xfdabc6e8,0x03152074,0x00b0c3be,0xfe60172c,0xfce70a8c,0xfb5c3cb8,0xfdf2bd9c,0xfecbc528,
-0xfdce65b8,0xff09b62a,0xff3a2653,0xff1045fb,0xff1c25e5,0xfee984e0,0xfe65183a,0xff0624c6,0xff40f21b,0xff87c91d,0xff3b9957,0xff805d92,0xffadf46e,0x00c682f8,0x00c42d21,0xff69e271,0xffc01a56,0xffb10bf8,0xff8a118b,0xffd7eae8,0xffeeb68a,0xffbdf4a3,0xffe9d6f9,0x0010c177,0xffbfe3f1,
-0x004b3672,0x00ff0530,0x0275c288,0x0305f4a4,0x035ea124,0x04631270,0x04c7d610,0x04426db0,0x02b4c388,0x00e07bdb,0xfeac5d20,0xfc965434,0xfd753a14,0xfe363e2c,0xff25d9ff,0xffb82915,0xffea3fc8,0xffa86175,0xfef19dc2,0xfe8b1d58,0xfe7e10e4,0xfeaafcdc,0xff1644bb,0xff25d8f3,0xff8d6476,
-0xffc47907,0xffcc23b1,0x0038f6ba,0x0066e8c1,0x00b675f8,0x003dc428,0xfffdf254,0x000ea2b4,0x00a12d0b,0x011135ee,0x017b1e42,0x01dd0fee,0x02110d88,0x0210ed0c,0x02ce8268,0x011ef75e,0x0143feb6,0x01cab848,0x02542e24,0x03060780,0x03b358b4,0x03b1470c,0x02d65ce8,0x0198059e,0x002ebc46,
-0xff068757,0xfe07bf16,0xfda4ed7c,0xfdc84ca8,0xfe1a6e50,0xfe7fccfc,0xff35e92f,0xff514040,0xff89696e,0xffc3db09,0x004860ea,0x00843543,0x006c9a07,0x004d0dd7,0x00472491,0x00738f2e,0x00d6482e,0x0117096e,0x011848a2,0x013be340,0x013e689c,0x012a357e,0x011eb656,0x0120429e,0x010b5ed2,
-0x014405e4,0x0133827e,0x014dc9be,0x016e5d70,0x016dd352,0x0160c9f0,0x017eaf14,0x01a59e7a,0x01f6e8de,0x020fcacc,0x024ecbec,0x029a463c,0x026ad034,0x023013b8,0x01ee69ac,0x01bfff7e,0x01895ca4,0x015d1ef0,0x015cd978,0x015d905a,0x016ae51c,0x01452ecc,0x0102056a,0x00d7cf1f,0x00cf4acf,
-0x00d33d04,0x00a63c1a,0x00bb77f8,0x00a637cb,0x00af4ba8,0x009741ee,0x008df348,0x007f4a2b,0x00bc1710,0x00f5470c,0x01295394,0x01251898,0x009d64b7,0x00d65f93,0x00db8bd2,0x00e88cb4,0x00fe6d82,0x0110dad6,0x011d2bd2,0x0123163a,0x0114a86a,0x010101ca,0x00f53c5b,0x00f62772,0x010890f4,
-0x01224a3c,0x0118840a,0x01120c8e,0x00fb8e83,0x00ee9285,0x00cb803a,0x00c15436,0x0110904a,0x00fdb95e,0x00fd49f4,0x00e46448,0x00ebdca3,0x00ee30c4,0x00e94787,0x00e1053c,0x00dfc289,0x00dca758,0x00e8e8a0,0x00cca44f,0x00cec1c6,0x00b5a966,0x00bea93b,0x00d338d1,0x00b5778a,0x00ed0654,
-0x00e7eb42,0x00efb96a,0x00f13f60,0x00f15bec,0x00f20880,0x00f4f8bc,0x00fc7f58,0x0106e214,0x010e0588,0x0117d7c4,0x011bc90e,0x0123f5e8,0x010de76e,0x00ff35b0,0x00f4836a,0x00e52d93,0x00dd2773,0x00c143db,0x00b2babe,0x009fc569,0x0088a952,0x00c74263,0x00a6506b,0x007b7aed,0x007b49f7,
-0x007a6402,0x00753758,0x0071d6ca,0x006b9538,0x006c38b3,0x009d32a5,0x00ccf9d2,0x00618f27,0x009511a1,0x01074cde,0x002720d7,0x001a79e5,0x0003099b,0x001b8798,0x00239446,0x0032d506,0x002870fd,0x002301eb,0x002326f7,0x00113447,0x000a3166,0xfff426ae,0x001cd709,0x002968a8,0x003b6b4c,
-0x002145ae,0x001d0e7e,0x001f87f1,0x002434a2,0x00271f10,0x00291baa,0x0033afb2,0x003b3814,0x004de282,0x0034e4d7,0x002c1faf,0x001e992d,0x001e7156,0x001f1691,0x00231c5b,0x002f42a0,0x003280bb,0x00256838,0x0032cdfa,0x00301688,0x0012f116,0x00213b16,0x004372bc,0xfff699c3,0x000d5615,
-0x00217ddd,0x00480b44,0x0043254e,0x003e65f6,0x003d0c96,0xfffa608b,0xffd2b95c,0xffa4df86,0xfffbb078,0x002f8927,0x0065a39e,0x00203f9b,0x000c64c5,0x00196ebd,0x00235c45,0x0030ef7a,0x00341667,0x004604cd,0x00612cc6,0x00849582,0x005c2cb9,0x00437ddb,0x001d6d94,0x000cf502,0x000bfd03,
-0x001e4084,0x003d5938,0x0045376e,0x002d2374,0x00460963,0x00409411,0x0015e19c,0x00441bd5,0x000b568d,0xffbf6d56,0x000377c8,0x003490f4,0x00839b83,0x00550fb8,0x0048b2c4,0x002a4a1a,0xffbc3db1,0xff88ba50,0xff2dbb1b,0xfffce10e,0x00492b4a,0x00a97a6f,0x001ef26c,0xfffd4459,0x000e1490,
-0x002311e1,0x003f70ba,0x00336388,0x00633840,0x009fc860,0x00e71992,0x009ee8c5,0x005b0320,0x000ddb0c,0xffeaca7e,0xfff25ab0,0x000201b3,0x004ff7dc,0x005ed0de,0x001ad33c,0x00753020,0x00761947,0xffcad8be,0x001a6ffd,0x00eecc1e,0xffeb11c4,0x000361d0,0x00580c9d,0x00baad72,0x00bc8337,
-0x00a37b58,0x0098f8ad,0xffd5c3a6,0xff2b79e0,0xfe7e9e7a,0xff7a4b18,0x00526fc8,0x010f2b18,0x0028270b,0xffd8a4f7,0xffed7a19,0x0014aab0,0x003e9b43,0x0030b69d,0x00715d5c,0x00c62b7e,0x0138c638,0x010a04b0,0x00d67b05,0x003f8a9d,0xffe0c8f9,0xff9c04c0,0xffb05810,0x007b5e91,0x00cfcc4a,
-0x00608344,0x00d07e49,0x006ead4b,0xffb773e1,0x00c6cc22,0xfd283564,0xff387bea,0xffbc9bbd,0xfffd3ed3,0xff76f9c9,0xff5fb37c,0xff19f2ec,0xff31101e,0xfdb82924,0xfe3b9d38,0x00eadd43,0x00c36010,0x00a5c153,0x0079556a,0x00077f34,0xfff5ca50,0x0035ed83,0x005f156b,0x006265b2,0x00604e4b,
-0x0085140b,0x00d03535,0x0184c0fc,0x00dc8c24,0x0075cb59,0x000d4382,0x002fb8f6,0xfff82bf4,0xff9558f2,0xff75f49e,0xffa6e1db,0x000dd33f,0x00583ea1,0x00b1b20c,0x0155336c,0xfdf778f4,0x00f71f7f,0xffced69a,0xffb46653,0xff51f36c,0xfe82dabe,0xffc0d9d1,0x0004e685,0xff198919,0xffdfb91c,
-0x0003771d,0xff9e17ae,0xffff3738,0x001d3dea,0xff46bcd3,0xff81cfa4,0xff7bd251,0xff7d9ec2,0xffa04c6c,0xfff9dd7a,0x00331de1,0x00b4102b,0x0080679f,0xff8c7e78,0xffd5dc1a,0xffff0b25,0xffed72d7,0x00042a13,0xffe863e7,0xff982121,0xffafb2f7,0xff615071,0xff26b50f,0xfe9ebdbc,0xfe7a53ec,
-0xfe9cd268,0x0095466b,0xfe7424d4,0xff986acd,0x01244dde,0x017c9fae,0x0077e682,0x001424f6,0xff5b7824,0xfdfe8404,0xfe7155f4,0xfe7779b8,0xfe8d9ec0,0xff9bd373,0xffc26f30,0xff0185ca,0xff0a730a,0xfefa8956,0xff1a8dde,0xff388cbe,0xff889684,0xffb3062b,0x0070d4e2,0x007081e9,0xff505aa8,
-0xffea94ba,0x005937a2,0x0003387b,0x0000b5a1,0xfffc5448,0x000a43d0,0x000273cc,0xffb5309b,0xffd484ee,0x00072a14,0xff804e48,0xfecf2c52,0xfe707afe,0x00d50c8b,0xfe6e79f0,0xfb178708,0xfa905858,0xfb6066e8,0xfe06f70a,0xff138476,0xfe25821e,0xff25ec07,0xff711609,0xff7549bf,0xff70d01c,
-0xff69a0b2,0xff415e75,0xff756ca9,0xff70abda,0xff6f5235,0xff4d0524,0xffa368ec,0x001b12eb,0x0079fd0a,0x006c3f50,0xff887fe1,0xffa2d99e,0xff9dcbcd,0xff8563c9,0xffeabf2b,0xffdc925f,0xff8b6e52,0xffb07143,0xffb06a48,0xff2a3679,0xff88de63,0xfff66543,0x01340960,0x015b24d6,0x041ddc30,
-0x05199798,0x04759eb8,0x032e97dc,0x01693872,0xfeccfdf4,0xfd47a2a4,0xfcfad6ec,0xfe064d0c,0xfea0de5c,0xff18a8fd,0xfefa2da6,0xff76e99d,0x00461eee,0xffbdfd4e,0xff6afcef,0xff90e368,0xff6d0371,0xff6ff807,0xff710341,0xff949cea,0xffb08e18,0xffa5b826,0x00151826,0x003dec00,0x0053daea,
-0x001f3bc1,0x00024208,0x001fdf5e,0x008bbd99,0x01053daa,0x0192ae0a,0x02633bd0,0x02ae951c,0x02872014,0x036fc298,0x018413b0,0x01a84b4a,0x02383118,0x02c33f2c,0x0377cc44,0x03c55c78,0x03473a48,0x01dd212c,0x0032a923,0xfedd9226,0xfe247684,0xfd4629a8,0xfd21f190,0xfda34e90,0xfe26c146,
-0xfe8417da,0xfeaf61a0,0xff00ec83,0xff6d640c,0xffd93e3d,0x004f3de7,0x0068be30,0x001f58e3,0xffe8ad5d,0xffee889c,0x003b954e,0x00cf6ae0,0x01294dd2,0x01432646,0x01441790,0x0145af2e,0x012c92bc,0x0161cdb8,0x017e2176,0x01645ab0,0x01a204ba,0x016c4f8a,0x01b87e34,0x0206e7c8,0x0228562c,
-0x02444d88,0x02509f90,0x02828a68,0x02ef4bc0,0x02cf4214,0x02b66e90,0x029cf980,0x023a85d8,0x01c92480,0x013c4c26,0x0101cd68,0x00cc4cdf,0x008e1daa,0x00a4dc54,0x00922ff7,0x00b1f016,0x00e5afe0,0x00b42b2e,0x00ba8fa8,0x00c934c2,0x00cc4de1,0x00ca2d24,0x00a9164c,0x00a68369,0x008c605b,
-0x00979863,0x0089e288,0x008e8f41,0x00b8f330,0x00e0a0f0,0x0103db40,0x013a32ec,0x00f477fc,0x015bde18,0x016b63ce,0x017d395e,0x01a22a06,0x01c4434e,0x01d9ea3e,0x01ecfb4a,0x01c06cc2,0x01a5a568,0x018e4e56,0x01808872,0x017f30cc,0x01837be4,0x015f3622,0x01388f3a,0x010f3d46,0x00e7963b,
-0x00bb7b67,0x008d962a,0x00a8f248,0x00c5274e,0x00dad041,0x00db14cd,0x00e9eda1,0x0104355c,0x011332b0,0x01213e0e,0x012251f6,0x0134db54,0x014ad502,0x013de154,0x01450888,0x01300712,0x012b6508,0x014e6ff4,0x0133bdca,0x016caf42,0x0164c70c,0x0170c35c,0x0172b142,0x0176ebc8,0x017c72ea,
-0x018ace52,0x01877876,0x0187df26,0x0184e466,0x01831466,0x017db01e,0x017d9b92,0x0169b4fc,0x015c5c6c,0x014f4a44,0x013d09ca,0x013050d8,0x0118fbc2,0x0105694e,0x00fa09ad,0x00dbba72,0x011e5f54,0x0108d29a,0x00e8b858,0x00e6f946,0x00e54298,0x00e8e592,0x00e52ae3,0x00e326cf,0x00e8af28,
-0x011a0a4c,0x0146f402,0x00e293b8,0x01154952,0x01809bee,0x00287222,0x00162772,0x00082afc,0x001753cf,0x001d209e,0x001ee653,0x002d6840,0x002f17a6,0x00269f51,0x0019aa2b,0x0011bc46,0x00058218,0x00163c38,0x002181c6,0x003e638b,0x0024d739,0x0022490d,0x0027f2bc,0x002c2166,0x002f1001,
-0x00330311,0x0036fcc7,0x0038495d,0x0042d701,0x002f9557,0x0024bdad,0x0018df54,0x00175238,0x0018c24a,0x0024f3ed,0x00255118,0x00250ce2,0x001b84b7,0x00253768,0x00299b9e,0x0018661a,0x001c27f7,0x001eac71,0xffea8cda,0xfff8180a,0x000350ed,0x000dc7f9,0x003834ac,0x003d1d40,0x001ffaa3,
-0xfff76d32,0xffd6fa15,0xffc5259a,0xffdcedeb,0x000452c4,0x00568d54,0x0021d149,0x001ed3b7,0x0030b1b4,0x003b2b28,0x0049ec09,0x004a12d8,0x00553594,0x006932ea,0x00795ced,0x005519b2,0x003d7769,0x001f2181,0x00127bc3,0x001521ce,0x002fc91c,0x003939e1,0x00396f4d,0x00275ae0,0x002b9c09,
-0x002a7275,0x0027b0fb,0x0033d573,0xfff1039e,0xff838339,0xffc8472b,0xfff81a4f,0x00062756,0x00623221,0x007abaa2,0x0027d2e1,0xffe28697,0xffaa6973,0xff73e5e6,0xffc4d980,0x0001c89d,0x009bf475,0x0022426b,0x0015b51b,0x003773c3,0x004bb71c,0x00686e61,0x005cf855,0x008a61c4,0x00b16b55,
-0x00d77fe5,0x008c4d0f,0x004e399f,0x0014c5ee,0xfff72f98,0x000e063a,0x002caa4a,0x004aa438,0x0043077f,0x001624b2,0x00429a38,0x005201b2,0x00098c9c,0x0014d6d9,0x003c294c,0xff3a14e2,0xff6504a1,0xffbfdb0a,0xffe35c81,0x006988c6,0x008c3c17,0x0027b854,0xffc76a65,0xff314b64,0xfec89066,
-0xff0f5945,0xffc242d8,0x00b43f9e,0x002111f0,0x0005ab15,0x0034f518,0x005842bb,0x00867b27,0x006fde77,0x009b09f5,0x00d6d62a,0x013da092,0x00f9d403,0x00b72ddb,0x0037e56f,0xffd9ae6a,0xffa86b5f,0xffdf5059,0x0075fb26,0x009fb40d,0x0034878e,0x007e28e2,0x0039da64,0xffeecc57,0x00690b1f,
-0xfdc0c5c0,0xffc2c02d,0xffdd6d86,0xfff824ab,0x00073337,0x0076849f,0x0041da7e,0xffcc6c49,0xfe8df9be,0xff038f17,0x01962010,0x00de43b3,0x0096e59e,0x008a2e77,0x003d26d7,0x003c5852,0x00509694,0x007a6e9e,0x008369cf,0x004d9dec,0x0091b2b2,0x00e73397,0x015f3fb4,0x00be07cc,0x00598063,
-0xfff6e6dd,0x0028a0b3,0x000f71f1,0xff9ff8aa,0xffae1212,0xffda0818,0x000600d3,0x0072c406,0x00afcf82,0x011a5826,0xfe2d589a,0x00f9ddc2,0x001c3bf9,0xfffb1f10,0xff67c2c9,0xfe05ebf8,0xff2ef132,0xff744a5d,0xfed0d75a,0xff1b3fa2,0xfeffb168,0xff145596,0xff510d32,0xff9ca6ec,0xfffb92ef,
-0xffb6f642,0xff8eb541,0xffc046b4,0xffe339a7,0x003b280d,0x006a3797,0x007e2d24,0x00541908,0xffad61ab,0x000109f8,0x00387c63,0x00202b0c,0x00152c6b,0xffe6257a,0xffba2a00,0xffbbd21b,0xff7e3878,0xff7c4e1a,0xfef3cab8,0xfecde2c2,0xff1a4f6b,0x00a77e73,0xff3677b2,0x0069d5a3,0x011260a0,
-0x012b5412,0x00c0e89c,0x008db1f8,0x00098167,0xfedcb362,0xfeae03e2,0xfebd407c,0xff462f8b,0xff96d3cf,0xff99d8b9,0xffc239a7,0xff7a3352,0xff731241,0xffb7d0ff,0xff748810,0xffab203b,0xfff94530,0x003fb6ca,0x0046be07,0xff9db15b,0xffdee589,0x0031312e,0x000ebd00,0xfff59f42,0xfffc7806,
-0x001aee8a,0xfff43207,0xff97da77,0xff78848a,0xffccf1f8,0xff656075,0xff1251b0,0xfedfd1f0,0xfea024f2,0xfc9b1c88,0xf9b94ee0,0xfa07ec08,0xfcdae898,0xfdb67220,0xfea8afc0,0xff61ce5c,0xff113653,0xff2a31fc,0xff918fbd,0xff9274bf,0xffc46581,0xfffff708,0xffab3aa2,0xff7f24de,0xff9f951a,
-0xffb496ad,0x0006a1ce,0x0091b2f6,0x001c299f,0xffeeb6e8,0xffa5dba1,0xffb87e01,0xffc83bea,0xffc8bb75,0x000c2718,0xffed41d5,0xff8b5e64,0xff83e83c,0xff5d22cb,0xfec5fccc,0xfee407ea,0xfef36b5a,0xffb8d3f0,0xff793db6,0x04509218,0x04910330,0x0389f32c,0x01d8fd4e,0xffcf7b23,0xfd805ca4,
-0xfcf18368,0xfe311720,0xfe8b033e,0xfec38154,0xfec17c3a,0xfe902a20,0xfeb5933a,0xff27ea27,0xffbee625,0xfff76aa5,0xffdaf218,0xffa8723f,0xff9de9b8,0xffce560c,0x000c28e1,0x0026144c,0xffa06e2b,0x0000c1ba,0x000d7a50,0xfff17dd1,0xfff1198e,0x0008e40b,0x005380a7,0x007aa7dc,0x00ee6d86,
-0x0173ca80,0x02b43d0c,0x032dc3a8,0x02ea1654,0x03b0b130,0x01e75024,0x01f1521a,0x024a2e24,0x0282ea88,0x02abbc08,0x029a2700,0x018c66ba,0xff9d32cb,0xfe979cf0,0xfe1e7df4,0xfe21326e,0xfdde5c04,0xfdf5f68c,0xfe4c785a,0xfe2d92ea,0xfe6745ac,0xfe98c7aa,0xfef26138,0xff4beb9e,0xffc345fc,
-0x00228e54,0x002677af,0x0000323b,0xfff2b39a,0x000ff2fb,0x006dd5fb,0x00d3faae,0x0122f1e8,0x015d284a,0x015c4f78,0x015e53e4,0x013fc5d2,0x017a61c4,0x019b0a22,0x0191fba6,0x01dca704,0x01b837d8,0x020c98fc,0x027ddd14,0x02d04388,0x0330d96c,0x030c8638,0x03255e48,0x035f58a8,0x02d30b10,
-0x022c5858,0x018e39da,0x014791d4,0x00f8474f,0x00a942f6,0x0072dd11,0x003a0f27,0xffe96568,0xffef1d0e,0xffe0f6f7,0xffece2a3,0x0046fee5,0x0066731c,0x00ac89e8,0x00cf1d41,0x00e59bef,0x0103f602,0x00d32465,0x00d0c18b,0x00aa4e82,0x00c987d2,0x00c4704e,0x00d77d28,0x0104dd92,0x011d9ff6,
-0x013c8884,0x0186e4ec,0x01a542e6,0x020a9db4,0x02029fb0,0x01fb9cb4,0x02050400,0x0208bebc,0x0200b0b8,0x02006c6c,0x01d68d6e,0x01d276b0,0x01bdf5ba,0x01b53210,0x01a045a0,0x01861b5a,0x0167cb44,0x014be14c,0x01348a34,0x011daff6,0x01034490,0x00d9a903,0x00d04172,0x00f030d3,0x00fe0d32,
-0x0102195e,0x010a9276,0x01251b66,0x01456280,0x01617ed0,0x016bf6e2,0x0187e1de,0x019edbd6,0x01a055ac,0x01af5eb6,0x01b1c3be,0x01b433ce,0x01e10ff6,0x01a31760,0x01d3ea74,0x01c1344c,0x01c4e0f4,0x01be22fc,0x01c2c304,0x01c70b82,0x01ce175a,0x01c9c0d4,0x01c23174,0x01bb39b6,0x01ac2c5a,
-0x01a1c1d8,0x019d0be0,0x01930724,0x0189102c,0x017d9218,0x016c534c,0x015f3516,0x01544f3a,0x0144225e,0x013c081a,0x01223cfc,0x015bc51c,0x014ec2fc,0x0132f906,0x0135c9d8,0x01397696,0x01448f2a,0x0146ccf4,0x014d33ca,0x01574fbc,0x017c73ee,0x01a1b382,0x015fc016,0x0188c012,0x01c5626c,
-0x002feb68,0x001ed20d,0x0013004b,0x001743c8,0x001cd680,0x001eb4e9,0x0032d1f2,0x00332447,0x0025fca1,0x001eb459,0x0016525c,0x000c9ab0,0x00114d3b,0x001bb934,0x003bf2b8,0x002b55c5,0x002c5c37,0x00325ddf,0x00368847,0x00396a61,0x003c2ace,0x0040b05e,0x00400096,0x0040796f,0x0033fbdf,
-0x002aa6f7,0x001e66f3,0x002026e7,0x00228dc3,0x0032b7fa,0x0028bbcd,0x00255fc9,0x00218282,0x00250745,0x002f1f84,0x002bb176,0x00270b2c,0x0019071e,0x00097c82,0x00088182,0x000b29bc,0x00042b0b,0x003d317c,0x0040d702,0x001a22be,0x000aa8e1,0xffed8bf6,0xffdd08a9,0xffd16579,0xffec1b16,
-0x0046c872,0x0023b8d7,0x002c43e7,0x003ee395,0x004bb6af,0x005a125c,0x005a5b8d,0x00691aa5,0x00738758,0x0070d3be,0x00541665,0x003cf272,0x00212c87,0x001f1872,0x00270173,0x004a8a67,0x003a8a70,0x00351f5f,0x002ff86d,0x00202818,0x00286573,0x004e46bd,0x003992c7,0xffe46da8,0xff9b8014,
-0xffb9b803,0xffc1a812,0xffcdd5ce,0x00611e5a,0x006518cb,0x000bc18b,0xffefadfc,0xffb3f89d,0xff812621,0xff87ea93,0xffbbfc4e,0x0076d3ad,0x00231e9a,0x002957d7,0x004b237e,0x00665870,0x0080f327,0x007ab9f0,0x00ad6e1b,0x00c0167d,0x00c2b0a8,0x00802ae5,0x004c2640,0x00179c3a,0x000b0312,
-0x002ced83,0x0062cdef,0x00497e24,0x002fd236,0x0029fcf3,0x002182b3,0x003b578c,0x005fbcf9,0x00302e0a,0xfff44cd3,0xff96bed7,0xff9e4e9f,0xff8e1521,0xff741964,0x0058f1de,0x00689571,0xfff31257,0xfff0293a,0xff6ca11e,0xff0b1b7f,0xfedf9ffa,0xff575331,0x006f0fc0,0x0010afed,0x0018faf6,
-0x004d23eb,0x007b9fdd,0x00a99ad0,0x009968f6,0x00c8c518,0x00f09ed5,0x012a77e0,0x00db6c6d,0x008ff21c,0x0023dcd9,0xffe510f4,0xffcf8be1,0x0022077e,0x00697214,0x0071f24c,0x0030cc24,0x002fd3c8,0x000c7aa0,0x005a6581,0x00582a16,0xfe7fe3fa,0xff8de8f9,0xff9105a6,0x00114641,0x002d1a75,
-0x00d69c9f,0x00b156e4,0x001979c3,0xfefce3f0,0xff282e37,0x01176fda,0x00260a01,0x00056daa,0x009ad9bc,0x0021400c,0x001616fe,0x003929c3,0x005b70ac,0x007ddf47,0x00867b8e,0x00df3ac0,0x01147c34,0x012c5806,0x00b48fa9,0x0059b276,0xfff4c369,0x0027b9b2,0x002686ff,0xffc4b8fb,0xffe69412,
-0x000a3fa5,0x00239ba2,0x00b76eb2,0x00d778b5,0x00e7c607,0xfecf4ab8,0x00743926,0x00caab88,0x00944307,0xffa8eeec,0xfe18c7fe,0xfe3d5eb6,0xfea143fc,0xff66e16b,0xff38f259,0xff492805,0xff9a4940,0xff2c2efa,0xff52ba47,0xffe7843a,0xffc94c11,0xffbe09e8,0xffc80152,0x000b1e96,0x005cee5e,
-0x00a72622,0x0055b1c8,0x0033c7db,0xfff4898d,0x00259c0b,0x00564552,0x00295ea2,0x000965f5,0xffe19fb0,0xffdbfbec,0xffd8944e,0xffa118ed,0xff8c5f8d,0xff172a7f,0xfefe32b0,0xff51202a,0x00289e56,0x00008342,0x00dc285f,0x00acc18e,0x007b1181,0x00cd017a,0x00fb5513,0x00aa64e4,0xffdc1007,
-0xff12a105,0xfef8d1c6,0xff5b2b85,0xff9c94fc,0xffdc281b,0x00133ada,0xfffd0ccb,0xfffe9196,0x0032df8c,0xffe9a45a,0x000dc21b,0x00912e2e,0x004afb89,0x0048d372,0xfffba777,0x00049048,0x0024de3f,0x0025986d,0x0011e243,0x00070b77,0x0010a13a,0xffe156b1,0xff85a93b,0xff477597,0xffa159a5,
-0xff5e02b0,0xfecd1250,0xff714d61,0xfd133f6c,0xfbc3ef60,0xfb61e108,0xfc1fe154,0xfe2c36a2,0xfe19d2f0,0xfe7ce75c,0xff89babf,0xff2735b2,0xff78fd31,0x00003ad4,0xffc837d4,0xffb5a7fb,0xffa4c9fa,0xffa637a1,0xff99bdd4,0xff991ef5,0xffe6f127,0x0031574c,0x00c41e8f,0xfffde8d6,0xffbb7115,
-0xffba1f60,0xffe18e11,0xfffb7734,0xfff45cb6,0x00118983,0xfffc8994,0xffc0dcea,0xff84377f,0xff4d3b3a,0xfee8e2ce,0xfece4fdc,0xfe873a74,0xfe76d35e,0xfe0a4d5a,0x039a6dd4,0x02e65350,0x01a21988,0x00110dce,0xfdecb248,0xfd5b01ac,0xfdb4cafc,0xfec4a1f0,0xfec02d0c,0xfec5788e,0xfeb19d2e,
-0xff031af7,0xff094a7d,0xfeb38452,0xff38f813,0xffbf9659,0xffe547a9,0xffbf7e29,0xffed443f,0x00447046,0x00477a87,0x00506160,0xffc2a29d,0x0011b562,0x000c41bf,0xffc43874,0xffe309de,0x0006fc0f,0x00534583,0x004c47a9,0x009ddcf5,0x00f85ec4,0x025c303c,0x0305893c,0x02f133d0,0x033a7274,
-0x0251b89c,0x025a0edc,0x0272a0bc,0x02382bf8,0x01c5352a,0x00d39ec3,0xff721b56,0xfdf570c4,0xfde3ea34,0xfe13963e,0xfe565100,0xfe90fa3e,0xfeb77738,0xfefdb2fe,0xfe7ef3cc,0xfe703392,0xfebfaa68,0xfee4ecd0,0xff16ab0c,0xff78c156,0xffb18303,0xffcd1c15,0xffee092d,0x00306169,0x00768497,
-0x00da3b39,0x00ecfb62,0x01136d82,0x0154e4c4,0x01746b14,0x01978dca,0x01b506c4,0x01860496,0x0185d358,0x01bd9e06,0x021e01f4,0x01f471cc,0x022256dc,0x026dfe2c,0x02b9699c,0x032b8a84,0x02f02278,0x02eae268,0x02db1310,0x01f10b28,0x00f0957f,0xfff46b62,0xffef4589,0xffda5828,0xffd5eb47,
-0xffdadf91,0xffdb0a55,0xffc1cb9f,0xffcb76c5,0xffdb32b2,0xffdd43ac,0x001361cd,0x0057c673,0x0092f6f0,0x00ae3ecf,0x00cc6498,0x00e1ea6a,0x00dfc70b,0x00ea0567,0x00e4458c,0x01131802,0x0121e2e6,0x014e03e8,0x017a8844,0x0190b3ae,0x01a3e6fe,0x01d3b352,0x021ef8dc,0x02295d2c,0x0212cd64,
-0x01ff52d6,0x01e97bf2,0x01d93408,0x01c0098e,0x01bc6b40,0x01ac7c28,0x01c3b6e8,0x01bb2ace,0x01b4007a,0x0197a68e,0x0177296e,0x015dff90,0x0144de1e,0x012fffba,0x011d313a,0x010476a2,0x00e99a93,0x01094290,0x010eaf1e,0x011dbc6e,0x012b6484,0x0140e9cc,0x01554146,0x0173782c,0x018d72ec,
-0x019f7362,0x01b3de8c,0x01c7caf0,0x01ce0ecc,0x01dd57ca,0x01e95568,0x01f93356,0x020de8fc,0x01cd4338,0x01d3fa16,0x01cad9a0,0x01c67252,0x01bf5100,0x01c2397c,0x01c319c2,0x01c047d0,0x01bd42ea,0x01b38c6a,0x01b05688,0x01a0defc,0x01987dcc,0x019385a2,0x01899b5e,0x01801aba,0x01761ec0,
-0x0168d8d8,0x015dd240,0x014c4c5c,0x0162efa2,0x01672c40,0x01677262,0x017704c6,0x017c22a6,0x0175cad6,0x01787960,0x017d1252,0x01854cd4,0x018a1b94,0x0192148c,0x019a9182,0x01b0d91a,0x01bcfef6,0x01b73de8,0x01c5a59e,0x01d90b38,0x003d1e0b,0x002a0228,0x001d9a7b,0x0025e165,0x002d46cf,
-0x002dd297,0x0041a64f,0x0041f69a,0x0034bc03,0x00320397,0x00271dfa,0x0011323b,0x0015a3c1,0x001edb37,0x003eb07e,0x00369b13,0x003a27e0,0x003d779b,0x0042143a,0x00458fbc,0x0049f2a8,0x004c69ab,0x0048f8f8,0x0040962f,0x003ddfd2,0x0033944c,0x00236905,0x0028a48b,0x002d3844,0x00419b75,
-0x002e0fff,0x002929b0,0x002d383d,0x002ceff2,0x003a2677,0x00455191,0x0032c771,0x0027409b,0x0015d860,0x0021add1,0x0022eee0,0x000fb501,0x0046dfe1,0x004f3482,0x002b667d,0x002c23bd,0x0007d2e7,0xffd2bd6f,0xffcc3863,0xffe5fb63,0x0042c140,0x0035fd17,0x004399be,0x004d3acb,0x005c5a5b,
-0x0068fc48,0x006a3f99,0x0078af4d,0x007f7eb6,0x006e76fa,0x0057277c,0x004104cb,0x0028b91a,0x002d0a96,0x0039074c,0x0067b410,0x004325f7,0x003a88cd,0x00438b0c,0x002234a9,0x0034de37,0x008b4538,0x004ebc2f,0x00093709,0xffcf820a,0xffee0f18,0x000365e7,0xfffab148,0x006fc9b2,0x007a8c6a,
-0x00287147,0x0033eef9,0xffe3f768,0xff68b292,0xff6ea1fb,0xffa1490b,0x00607f83,0x003670a8,0x00495eba,0x005c73e2,0x007742ba,0x0092e4d8,0x0097c138,0x00c520b0,0x00cd3587,0x00b35121,0x007e73bd,0x004d8c6b,0x00212044,0x00197d7a,0x004350f4,0x0099add8,0x004bbd21,0x002edf93,0x0053ba35,
-0x001c15d5,0x00399d4c,0x00d59ae1,0x004d9620,0x0044b77a,0x0001fb90,0x0011d8dc,0xfff145fd,0xff93f6fc,0x005370bb,0x006d8b6c,0x0008bd69,0x003f113e,0xffb6e3f5,0xfee750de,0xfecab500,0xff348198,0x0063bc93,0x003c7682,0x00549cd8,0x00737801,0x00a26054,0x00d02401,0x00c6494b,0x00f9bdb7,
-0x010ee5bc,0x01124e70,0x00c61517,0x0078c83e,0x002130e3,0xffebca02,0xfff9c23d,0x0076f930,0x006943c0,0x00546a3d,0x004ba31a,0xfffe0b95,0x0024b8db,0x0129e20a,0x009ce60e,0xfedcf4e6,0xff3af904,0xff8bcdfb,0x0041967f,0x009ebe1c,0x00fa3a71,0x00d7d4ab,0x00b76644,0xff82f873,0xff559edf,
-0x00397e12,0xffed833b,0xfff2ff84,0x006ada9d,0x001d17f8,0x000e82c2,0x002e325c,0x005bf902,0x008288ce,0x008dd55e,0x0124875e,0x013efaf8,0x0103913c,0x00ad4e2d,0x0061d4af,0x00068f9d,0x0035d679,0x0032f08e,0xffd94b4c,0xfffa06fc,0x002f568f,0x0072ab08,0x00dfc460,0x00c03b36,0x00616a08,
-0xff2a133f,0x00395ebe,0x01f9717e,0x00fcf017,0xffa847e1,0xfe759364,0xfda2a6a4,0xfe0e993e,0xfff0be4f,0xffad17fc,0xffd9e5e5,0xffee704e,0xff8501b1,0xff69d043,0xff916bd3,0xffb45aa7,0xffd8c7cd,0x001ec4f7,0x0044ac4f,0x0076860b,0x00c5cd8e,0x0045b332,0x002b0c32,0x00323589,0x003dcb09,
-0x005a8c2e,0x001e9a1d,0xfff34cec,0xffd2fabf,0xffed5ad7,0xffe78ece,0xffaabb0a,0xff769a60,0xff4349fc,0xff549dc0,0xff8d229b,0xffb97ab8,0x00975fc1,0x009d5fb6,0xffea0d2b,0xffecdb8e,0x004dba51,0x011b7b1a,0x01218844,0x00586392,0xffbb51b3,0xff8a1d01,0xff8f036d,0xff9acdd0,0xffcca84d,
-0xffd83037,0x0053a0d2,0x0072e15f,0x0066eefe,0x004299db,0x006d3d24,0x011eb5a6,0x0052e748,0x00404f93,0x00454430,0x003394c5,0x002ff2f7,0x00268066,0x0023e71f,0x00060346,0x0009c2b5,0xffc954d3,0xff7fdecc,0xff56d1f2,0xffb35773,0xff6afd56,0xfebe6a6e,0xffff3632,0xfc8a4dcc,0xfc639198,
-0xfe32db56,0xfec76f26,0xfe5f76c2,0xfe8fcbf8,0xfeaffc60,0xff05303d,0xff75c3a4,0xffe197a3,0xfff432c7,0xff95ea3f,0xff57218d,0xff1d277b,0xff38fc01,0xff891355,0xffbc06a8,0x001dee31,0x005f2d25,0x00d92e1c,0xfff54c0f,0xffbe206c,0xffe08789,0xfff7cae1,0x0013e6b3,0x000674d2,0x00113e95,
-0xffff56e6,0xffefe395,0xff996e95,0xff674e32,0xff2e4fb4,0xff2f8894,0xfea41524,0xfdd33020,0xfd506ebc,0x01f98bca,0x008a487a,0xfee7f4fc,0xfe1362ba,0xfd16e004,0xfe1a4298,0xfed9a21e,0xff003e98,0xfef43832,0xff03a67a,0xff4dd2a9,0xff672060,0xff8ab4e4,0xff8a14fe,0xff2d5b10,0xff4493a3,
-0xffa2c464,0xffb3aecf,0x0003ad6b,0x007abacf,0x001782ff,0x00122420,0x000d2afa,0x002f81ac,0x001ce503,0xffc14386,0xfff6f3d8,0x000fea26,0x001e487f,0x0008d7b7,0x0028d197,0x004a7aa1,0x01690056,0x02192590,0x02518614,0x02011648,0x02e344a8,0x02ee7fc4,0x02b17830,0x01f8726c,0x010744f6,
-0xff2b20a5,0xfdf8f538,0xfd8df500,0xfde8c28c,0xfe45133e,0xfe885e62,0xfed6d40c,0xfef03eee,0xff240241,0xfefae21e,0xfee50316,0xff37b2e4,0xff0978ed,0xff228837,0xff6bb98b,0xff613f31,0xff93879f,0xffc3af50,0x003e49b9,0x00a8088f,0x0110d074,0x00fa23d0,0x0102e3ac,0x0139b196,0x0183d1a8,
-0x01cecfc2,0x022dcb90,0x01bd82fe,0x01b634ae,0x023a3188,0x029a0758,0x01d8696a,0x01e9043c,0x01ee00b8,0x020471c0,0x024cd300,0x01fdd59e,0x01be532a,0x015681f0,0x0094dde9,0xffcb8578,0xfef1b5be,0xff0d7756,0xff15920f,0xff193c60,0xff48a47c,0xff7412fd,0xff99bbcc,0xffca387b,0xfffc7bfa,
-0x002315c7,0x00388aa6,0x0058fed5,0x00656766,0x00772a8d,0x008ac9ae,0x008deae7,0x00c57c2d,0x00f610c7,0x0122c7e8,0x0156d9a6,0x0173e484,0x01abe766,0x01bb488a,0x01c15b5e,0x01b5f740,0x01cba770,0x0210a0e0,0x01e1cf38,0x01c7a3ba,0x01b1e836,0x018a9d9c,0x016f739a,0x0156f22e,0x015055b4,
-0x01483e6e,0x01522b50,0x0147b15c,0x0133513a,0x0115218c,0x01013476,0x00ebb408,0x00d1fa8d,0x00b46769,0x0095aa2a,0x006cee47,0x00526f90,0x00c533e8,0x00bcf90d,0x00e3dc44,0x0101c09a,0x0137bcd4,0x0151eb8e,0x016c7cec,0x0180f6ce,0x0199fb06,0x01a8b13a,0x01bc32a4,0x01d206ec,0x01d39200,
-0x01dd904e,0x01ebecf6,0x01e514a8,0x01bbc6de,0x01aabc96,0x01a89e44,0x019fbdac,0x019b7e44,0x019c9962,0x019a83a0,0x0195d748,0x018a55c6,0x017d4306,0x01773484,0x01690b00,0x015e4098,0x01515840,0x0146f40a,0x013e4d26,0x0137d544,0x0131a8f0,0x0130f98a,0x011363cc,0x014809c2,0x0157a714,
-0x017495fa,0x0165b264,0x0177a7ce,0x018bb5e0,0x019059ce,0x019604fc,0x019c2e6a,0x01a50010,0x01addc70,0x01b61138,0x01ba0e22,0x01b56810,0x01c48ab0,0x01c15d48,0x01dcbc7e,0x00494488,0x0034dea3,0x003099f9,0x0034f6c1,0x003ae75f,0x00376d2f,0x004e6382,0x004f6945,0x003a8ab7,0x004305d8,
-0x0038b25c,0x001b98cd,0x001f6f8d,0x00260312,0x003ba46e,0x00406856,0x0045eba4,0x00470e79,0x004b831e,0x004fa15b,0x0056e206,0x0054d9dd,0x00507150,0x0046af47,0x004518af,0x003c4e37,0x002e6244,0x0033fe40,0x003a0952,0x0050dd1b,0x0038d515,0x0034078d,0x003e2f13,0x0035cb1b,0x004212fb,
-0x006020ff,0x003e2470,0x00348e1d,0x002a2657,0x00336b7d,0x002d3682,0x0019aeb5,0x004e5f0a,0x0058b3f9,0x0028137b,0x004826d8,0x00283271,0xffdc3612,0xffd4cc66,0xffe41dd3,0x0026c554,0x003ef7fb,0x0055e4ad,0x0058696e,0x00657a10,0x0071bd10,0x0077edf7,0x00824d53,0x00862e28,0x006bce4a,
-0x005c5bbf,0x00499738,0x00343215,0x0039863a,0x0045c5b8,0x00793bfe,0x004bd5f9,0x00423cf1,0x0056ee35,0x0029a55e,0x0041bcb5,0x00b5a3d6,0x00629ee0,0x001f1582,0xffe68c8f,0x0011694c,0x0025cf1a,0x000e0e1a,0x007cdd71,0x008e6234,0x00109182,0x00609477,0x00175495,0xff6db4af,0xff70ba2e,
-0xff95d375,0x0019ddcc,0x00391c18,0x005d5029,0x00665d9d,0x007c32bf,0x00990f1a,0x00ad34fd,0x00cff8a2,0x00cf1e4d,0x00a0f34d,0x007d902f,0x0052eb30,0x002d6c05,0x00258613,0x004e4414,0x00b65fe2,0x004e2b98,0x003843c3,0x0076c772,0x001fdc03,0x003eac24,0x011ad360,0x00616477,0x004e750b,
-0xfffc57a1,0x0021f8ce,0xfffebbde,0xffadafa7,0x00471c6b,0x0068dfab,0xffd76f49,0x0064108b,0x00025313,0xfee9f8e4,0xfec6304c,0xff097ca1,0xffe36176,0x003440ff,0x00795334,0x008c24b7,0x00a7de78,0x00d2d993,0x00de62fe,0x01149dec,0x011aeeda,0x00fbd918,0x00c17fbe,0x0079f5d0,0x003308ca,
-0xffee310a,0x001a47b0,0x00c212b0,0x006bddf3,0x00473893,0x0071c2aa,0xffe433f6,0x003b6339,0x01a29e64,0x00b71d40,0xff1a76c7,0xff80f2ce,0xffef5cf2,0x008d30b3,0x01473208,0x0124b6aa,0x00f699ab,0x010f520a,0x0011bc4b,0xffb8b74a,0xffcf4123,0x002b03c7,0x003d9ec3,0x0048a2c8,0x0028e896,
-0x001895e8,0x0024af48,0x0065fe2c,0x00a6a236,0x00a2c729,0x013d5822,0x0153e610,0x00e1c87a,0x00ab535b,0x0073e682,0x0023a5c9,0x00474bfe,0x0036fec3,0xffde13ae,0xffff1e4e,0x004e5081,0x00bcc5c7,0x00f3b705,0x008fdb6e,0xffc97870,0xff42d28d,0x003f8126,0x028cbdc8,0x00a56ba5,0xff5355ab,
-0xfee699ee,0xfda48450,0xfe0e0ace,0x002d357f,0x00002bfd,0x0041cbf0,0x004853e6,0xffed15a9,0xffacb244,0xffb21202,0xff97188c,0xffb944a5,0x002b6ea7,0x00433c8b,0x00681304,0x00b10343,0x0030dbb0,0x00235e20,0x005cff49,0x005077c4,0x005a5ea4,0x002a5561,0xfff34a32,0xffd5bd16,0xfff04be0,
-0x00004d8c,0xffd3a71a,0xff956f7d,0xff993329,0xffbae5b6,0xffd1e236,0xff8a5158,0x004fd667,0xffee27e8,0xff9fd172,0xffe1bb15,0xfff1f317,0x00ffd418,0x013331fc,0x006587b7,0x002d741d,0xffda22e6,0xff8e2984,0xff5398f3,0xff86fe3a,0x0026f822,0xfff4f708,0x0003d201,0x004e9ce4,0x005bda3f,
-0x009f5b3e,0x015985a6,0x005b93a6,0x0032e173,0x0089b10e,0x0052c1a0,0x0030a67d,0x00222356,0x002477eb,0x00001702,0x0006234a,0xffb6def9,0xff85b2e1,0xff785764,0xff8d6929,0xff311e53,0xfecbbeba,0xfffc9a95,0xfcf36a30,0xfe3e8abe,0xfff9f929,0x000d9933,0xfe900c68,0xfeb7535c,0xfecc7ba0,
-0xfed3ee00,0xffa5a4b4,0xfff7248f,0xfff3d061,0xff90c330,0xff62a330,0xff84c60e,0xff2a49d4,0xff6e9abe,0xffc82b4b,0x002dbbc4,0x006bafcc,0x00cd4fa3,0x0013a5b9,0xffd46c73,0xfffbee9e,0xfffcf90b,0x0021c6a7,0x00242080,0x000a97cf,0xfffbb7fd,0xffffafc6,0xffbee1e2,0xff8fb7c3,0xff7173d4,
-0xff82adab,0xfed32dde,0xfdc3f7ac,0xfd36fd9c,0xfffe609e,0xfe075698,0xfc754e28,0xfc9f7150,0xfd5ebb0c,0xfed741c8,0xff8a118c,0xff69c781,0xff70bedb,0xff79378c,0xffc45636,0xff4f8ddf,0xff473658,0xffb26a4e,0xff8c4842,0xff757633,0xff7df517,0xffdd344c,0x000f26d1,0x0058dd8a,0xffdf392a,
-0xffec8582,0x0058376c,0x00332783,0x0013f1c9,0xffd8df3f,0x00186fa7,0x002a840c,0xfff66973,0xffc1e1f8,0xffb2a165,0xffa9dff6,0x003e3fa7,0x00cadd97,0x01476318,0x008af91d,0x034874a4,0x03268938,0x028832cc,0x0166a8e8,0xfff27e96,0xfe4c6756,0xfda5cfd4,0xfdcc2a08,0xfe5467d8,0xfeb610d4,
-0xfed1ddba,0xff4121e6,0xff65cc1a,0xff638da8,0xff6300b6,0xff5a806d,0xff7a82d8,0xff59e404,0xff724d16,0xffb56d65,0xff772e93,0xff8b45f4,0xffb2eab1,0x0029af83,0x008fd026,0x00deadce,0x00e205db,0x00f0fdbe,0x01168154,0x01981952,0x01f44afc,0x023ec27c,0x01fd0ac6,0x020d38a8,0x029ea31c,
-0x02de055c,0x01b1a7ee,0x01b6fde2,0x016fa8c6,0x014f5b00,0x014dedde,0x00d81494,0x0048d91a,0xff914823,0xff34923f,0xfed5d2d4,0xfe6248ea,0xfe883bb0,0xfe9e6266,0xfeabceca,0xfed8ce62,0xff01b81f,0xff2e81b4,0xff690118,0xff9308cc,0xffda4048,0x0022c7b6,0x003d7843,0x0053a689,0x0066a33d,
-0x0074bf88,0x0083a5dd,0x00cb4110,0x01103de2,0x015734e6,0x017c85ce,0x01a3a356,0x01d95bda,0x01d61586,0x01d57610,0x01c98502,0x01c87990,0x01c12d70,0x01769836,0x0162ae46,0x014d303e,0x012bbaca,0x010f623a,0x01057070,0x00fe3c6d,0x00ea11e1,0x00d101ac,0x00b44740,0x008d399e,0x0063e0b6,
-0x0041e398,0x0039c5ba,0x002e2361,0x001d8f7f,0x00102654,0xffff61f3,0xffe78c47,0x003e615c,0x003d41b2,0x006b4ac2,0x009b6a1a,0x00d5c1ac,0x00ef09eb,0x0109afd6,0x0123d5f4,0x0149ee3e,0x015cad9a,0x0177eb44,0x01a3d26a,0x019c7ac2,0x01a485bc,0x019f643e,0x0186a474,0x017ff622,0x0141edb0,
-0x014a42a0,0x0141eb00,0x013ec3da,0x0140420c,0x013c9be0,0x013afc4a,0x0128555e,0x011ad4c2,0x01105972,0x01018556,0x00f45ff7,0x00e05a29,0x00e2407a,0x00e0980f,0x00e0ed9d,0x00df127a,0x00e334a1,0x00cf6436,0x010ede3a,0x0132a490,0x01690662,0x0124d1be,0x015131e2,0x018e54b8,0x01965f94,
-0x019c4bc4,0x01a13974,0x01adcae2,0x01b6ba8c,0x01c19b0c,0x019e33b8,0x01748c76,0x01c2d8fe,0x019d5f84,0x017af068,0x0055eeaa,0x0048ca32,0x00470e1d,0x0043884f,0x00483ec7,0x004371ca,0x005966a1,0x0059e1e8,0x00426723,0x0052d23b,0x00498d01,0x00280cc5,0x002c34e7,0x002f53d0,0x00381bf9,
-0x0048a1ba,0x00506e90,0x0051b0aa,0x005661f0,0x005aec99,0x006419d7,0x0061140d,0x005bf054,0x004f03bb,0x004f8721,0x0049b3d6,0x003d6f16,0x0041f7c5,0x0047d174,0x005c445f,0x00464f1f,0x0042b3d5,0x004e9cc0,0x00445ddf,0x004e5378,0x0072ddcd,0x004fe3bb,0x0055d2a6,0x0059bd56,0x00481c89,
-0x00398c5e,0x0028b730,0x005b55c1,0x00677ca5,0x002f4a40,0x0063e334,0x0047b55d,0xffed1b1a,0xffe74e19,0xffe97886,0x000b1720,0x003eb493,0x005d9c98,0x0061b1fa,0x006e0b25,0x007b2466,0x008c263f,0x008d6d64,0x008c2308,0x006cb506,0x0061edda,0x00540478,0x004346a2,0x0049afac,0x0054bf0b,
-0x0080246b,0x00583d98,0x004e177d,0x00649b96,0x0036c945,0x005211a3,0x00cbbd38,0x007f2c55,0x00421b6b,0x002350cf,0x002b93cf,0x003bc97f,0x00206be9,0x0087bbbe,0x0090250b,0x000f7d54,0x0081dfcd,0x0045eed8,0xff8e1719,0xff8611f1,0xff919cc4,0xffd3013d,0x002c23f9,0x00611892,0x006ac006,
-0x008356a9,0x00a27b9d,0x00c2e3a7,0x00d5b178,0x00cbed6f,0x008b7dad,0x007a7cf4,0x005b1555,0x00398511,0x00356aa3,0x00554bae,0x00b568ff,0x0051d6f8,0x0044d39a,0x00858cc0,0x002b7cb1,0x004c8d89,0x01331c54,0x007fcdfa,0x007b9778,0x0059bdde,0x00453d26,0x000057bd,0xffb9642d,0x0050b713,
-0x0081bf09,0xffd91665,0x008f987d,0x0040a05f,0xff16389a,0xfee8d14a,0xfeeb2a16,0xff6145b5,0x000803de,0x00725cff,0x008ea469,0x00a8a2b9,0x00d248cf,0x00f6cb92,0x011ec538,0x011ccf92,0x00dc62d1,0x00b864dd,0x00815f44,0x004321ad,0xfff9154e,0x003267d5,0x00e9027f,0x006bdc5c,0x00497914,
-0x008b323b,0xffe637eb,0x00500c20,0x01d8e2a2,0x00eccc64,0xff43b16b,0xffda8bd6,0x001ba70a,0x00d2aee2,0x01f92858,0x01284048,0x00ba2718,0x00b8dc9a,0x007c5b2a,0x0047234f,0xffd26c63,0x0051b543,0x005ae274,0x003caec5,0x00254719,0x001218f8,0x001a9246,0x004e7fcc,0x00a77aa7,0x00eb240e,
-0x0137f79c,0x01392648,0x00ce6e23,0x00b578aa,0x0090de99,0x003d6488,0x00538868,0x0036ec2e,0xffde7ddd,0x00039260,0x006a8f52,0x00ebe958,0x010d9174,0x00809a3f,0xff7c7dad,0xff39b8d2,0x003a2901,0x02a8e850,0x00485aa0,0xff0d25ca,0xfefe8a36,0xfe1bb552,0xfeb6e8a8,0x00bb7ffb,0x0050897e,
-0x005911bf,0x009f57d4,0x006035d2,0x0016f760,0xffec3bf5,0xffb7a5c3,0xffbe3e98,0xffe5bbe5,0x00204a37,0x0047d0b6,0x0091b622,0x00314f34,0x003643e5,0x007a5f79,0x00605020,0x00539d4a,0x00406b30,0xfffe8db0,0xffe72be8,0x00035ddd,0x00345675,0x000cfbac,0xffc5fd03,0xffd51c47,0xffd8abea,
-0xfff732e6,0xff7385da,0xffdb8c32,0xffb014f0,0xffba3299,0x00091efa,0x0009bb05,0x00e90834,0x00f0fded,0x00756611,0x0058961a,0x001dc168,0xffff4a23,0xff94e091,0xffa68fb2,0x002fc6d4,0xfffdce66,0xfffef8dd,0x001c8082,0x00642b30,0x009b88ce,0x0136e95c,0x00608d76,0x0026fb7e,0x00982bea,
-0x006ad906,0x0038b09f,0x001ca60b,0x00300b24,0x000a323e,0xfffb9e32,0xffab3276,0xff93ee12,0xffa121cf,0xff44ae2f,0xff03eff8,0xfef22050,0xffc52959,0xfdfc2768,0x000412c0,0x009bbbb5,0x0028ccca,0xfef370da,0xfea2c400,0xfec2cdec,0xff20ec2a,0xff87d613,0xffa879b0,0xffd859fb,0xff7731cd,
-0xff657b35,0xffca4c68,0xffd0ed2f,0xffef126d,0xffd68880,0x002b7e70,0x004b2b48,0x00766365,0x0040a929,0x00188579,0x00183d8e,0x001899e8,0x0035d3ce,0x00444389,0x0002cc32,0xfff58308,0x00135289,0xfff3bbc3,0xffbe622e,0xffbe5455,0xffaae945,0xff010c7c,0xfe1aceee,0xfda55acc,0xfe536434,
-0xfc47be50,0xfb989208,0xfc738ad8,0xfe2f84c0,0xff195d41,0xff9d5012,0xffabd456,0xffc853d1,0xffc37cd8,0xffba16e1,0xff7db704,0xff4e47ab,0xff7e4fa1,0xff7d157d,0xff920a67,0xffa8ac04,0x0038d275,0x00601bd8,0x005b1ab1,0xffe62af9,0xfff5e466,0x006f7332,0x0026da79,0x000c68f4,0xfffe408f,
-0x00381278,0x003a9dcc,0xffdd2e9d,0xff825ad1,0xff594acf,0xff4f25fd,0xff4faa1f,0xffa58e8c,0x00422b25,0xff50ffc2,0x02f68a58,0x027fa260,0x0176fdea,0x003ef4f7,0xfec06674,0xfe09f262,0xfdefb854,0xfe2cbae8,0xfec9c118,0xff1c4e1c,0xff1418cf,0xff850eed,0xffb23d4f,0xffb5e2c9,0xffaafe25,
-0xffb157a0,0xff8b1f6e,0xff9677ac,0xffa57307,0xffd630d2,0xffb5b8b0,0xffbc269e,0xffe60a48,0x00302e53,0x007002df,0x008537a2,0x00ae71f1,0x00d94252,0x00fdfc18,0x019564b4,0x01e6f230,0x020a7f54,0x01f0aa6c,0x0201dd14,0x0271c05c,0x0274e9e4,0x01a87cde,0x01995070,0x01189d28,0x00d4368f,
-0x007f8ab2,0xffeb8091,0xff336f3b,0xfe68bad6,0xfe4d0d56,0xfe2a916a,0xfdfb7fc4,0xfe2792d4,0xfe4cb134,0xfe7544c4,0xfe89bb7c,0xfe9caaee,0xfeb036e8,0xfeea1bbe,0xff12bc07,0xff52f43a,0xffb98c07,0x000314fa,0x0047a5c1,0x006f0fa8,0x00936563,0x00c08468,0x00f64281,0x011cee8e,0x015afc9c,
-0x016e6182,0x019fc740,0x01cd55fc,0x01db1122,0x01f0baaa,0x02095ae8,0x01e0b3b8,0x015b088e,0x00fb5f86,0x00e1d4b4,0x00c11ceb,0x00a4b4a9,0x0088dedf,0x00840044,0x00748062,0x0064cbc2,0x00476a25,0x002b56fd,0x000a23fc,0xffe4089b,0xffbd107e,0xffce01da,0xffdd335a,0xffe843f1,0xfff3bfad,
-0x0001e0ac,0x000086c0,0x001b9a01,0x0008d179,0x0018246c,0x003e1b05,0x0058865f,0x0058520d,0x007b01f9,0x00a33413,0x00d937c0,0x00f407ee,0x01127744,0x01512746,0x013ffd7c,0x0145f8c0,0x01304660,0x010d6212,0x00ec6178,0x0099bc8d,0x00a62f9d,0x009cc06d,0x0095c288,0x00912331,0x00875e27,
-0x007fa460,0x0071a942,0x0067b87f,0x005f00b5,0x005249b4,0x0048b196,0x0036b89b,0x00451666,0x004b8c7e,0x00546b39,0x005a3cdc,0x0062f942,0x006272f4,0x009d3ade,0x00c90a10,0x01132b88,0x009a2adc,0x00d4e80d,0x0126cba6,0x0135a506,0x013dbe2a,0x01439866,0x01548d44,0x0160c506,0x0171d148,
-0x0122901c,0x00dc2de0,0x0168ac62,0x011da522,0x00a505b7,0x005c1f5f,0x005535fe,0x0051d2d0,0x004f99d4,0x0052adbb,0x004c4d3c,0x005e7f9e,0x005de320,0x0049bb4b,0x00583839,0x004febab,0x00329b04,0x0034d15d,0x00352d6f,0x0036edc4,0x004b4888,0x00544338,0x00563fda,0x005b79d6,0x006079f3,
-0x006b55a2,0x00655a30,0x005febd9,0x005395ab,0x0052b4b4,0x004eac20,0x00483699,0x004c48c2,0x00509632,0x005e9159,0x004e8bd3,0x004ccd47,0x0056653c,0x004b6150,0x00514fba,0x00792852,0x005a2bda,0x0078b4e7,0x006fff26,0x005abb68,0x004790d9,0x00323f1a,0x005e111f,0x00676a54,0x003582d8,
-0x0067f85f,0x0050dcba,0xfffbc6f2,0xfff6dcde,0xfff3c750,0x00039645,0x003fbb7e,0x005f4abc,0x006595c1,0x0074805a,0x0083bcf4,0x009db430,0x0093b35a,0x008ad838,0x006a6fd8,0x005f89e8,0x005627ac,0x004b2bb5,0x0056cd0b,0x00613a69,0x007a9e23,0x00639699,0x00577483,0x0063af15,0x003c2f33,
-0x0059525f,0x00cce5e7,0x00926bc2,0x0076bac8,0x00558322,0x0058d6a2,0x006119ac,0x003687a7,0x008f16ee,0x008537d4,0x00242f8d,0x007e7c78,0x004b43bc,0xffba1981,0xffa1f7ff,0xff9ee715,0xffbbbb2e,0x0023b69b,0x00603eee,0x006a9c29,0x008877d2,0x00a9058b,0x00d7977c,0x00d1324d,0x00c0a8c9,
-0x0077ba19,0x00703fd4,0x005a910c,0x003d4f58,0x0046ece6,0x005e8117,0x009f12c5,0x005b0520,0x005159ab,0x00827342,0x00313295,0x004f3090,0x01294a8a,0x00996a68,0x00ddb63a,0x00b08272,0x0087fc7d,0x00235499,0xffc42057,0x004b3249,0x007c888b,0xffea913d,0x008343ec,0x0049e99c,0xff5518b7,
-0xff1fa569,0xfefcac54,0xff45aa81,0x000297b4,0x006d86b0,0x008d2e1f,0x00b5979f,0x00e64c0d,0x01277b62,0x01262fa6,0x0112642e,0x00b3a85d,0x00a1ed63,0x0082a1c3,0x0048845a,0x000d8e9d,0x00479409,0x00f19579,0x00725d60,0x00519ca5,0x00875939,0xffe63c45,0x00636eee,0x01ef5dec,0x0136ec5c,
-0xff4fe6f9,0xffe52b17,0x0025d90f,0x01201bf4,0x027dd668,0x01468794,0x00963144,0x005394fc,0x00b84ea9,0x00854ca9,0xff7efede,0x006cf112,0x007fb710,0x00135209,0x0012786a,0x000ec28f,0x00288a10,0x002d9404,0x007245eb,0x00fbf49b,0x01080a90,0x00f4ea6d,0x00c47590,0x00be330f,0x00a8e345,
-0x004bb86a,0x0057537f,0x00310b7f,0xffd511f5,0x000d12d5,0x00907722,0x0114e8ea,0x01224626,0x00725fb9,0xff3d0064,0xff185318,0x005f3aa0,0x0253b860,0x000bb147,0xfef3c3ba,0xfedf7acc,0xfe9a7328,0xff4a5a4e,0x00f899a3,0x0064ab3c,0x0055891d,0x00dd18d9,0x0096cd33,0x0051cc6a,0x00496b76,
-0x0008755b,0xfff3a821,0xfff6d54f,0x003b3de4,0x0058c3f0,0x008ebb66,0x0060ab69,0x0068cedc,0x008eb6dc,0x006b03a8,0x00458ad7,0x004863a5,0x000d7533,0xffff7e4f,0x002b1d3a,0x0051cb25,0x001f58ea,0xffda3a82,0xffae100e,0xffb26ce9,0x0032a86b,0xffa6cb1d,0xffbc4a99,0xffb4a3b7,0xff95610f,
-0xffdab91b,0x0002e62e,0x008fbf2c,0x0094e060,0x00b7b64c,0x007b7ce0,0x00450573,0x003cca39,0xff9418a1,0xff9ac7a9,0x00179235,0x0023e708,0x0040fd31,0x003d50ea,0x008efcad,0x009e6bba,0x00d6e726,0x0062f762,0x002eadb7,0x0080ce32,0x007d1684,0x00451686,0x0016b414,0x0043a3b6,0x001dc7cf,
-0xfff258e4,0xffad9e74,0xffa4e801,0xffc631cc,0xff2d8fa1,0xff1c98fe,0xff3917c1,0xffae54a5,0xfefaa372,0x006c1fa7,0x007a78fc,0x000dfd6e,0xff7d00e7,0xff0b9d87,0xff002cd0,0xff57d18e,0xff6c8bf8,0xff914ddd,0x000a26e7,0xff952f7f,0xff90c407,0x001e4da1,0x003fb481,0x004b68e3,0x002c9f34,
-0x0068897d,0x006c6762,0x0047d2ae,0x0065846e,0x006a81b0,0x00526c93,0x004d5f97,0x004c7cf8,0x004f6053,0x000937b0,0xfffb83cd,0x00318558,0x00209653,0xffec60be,0x00144886,0xffc1a7d3,0xff32c95b,0xfea4d53e,0xfe61dc1a,0xfd7a5aec,0xfbfad1a0,0xfc89b850,0xfd53214c,0xfe83f3c6,0xfedaaa52,
-0xff311955,0xff8ee135,0xffd72768,0xffe34e23,0xff8e606e,0xffe25f99,0xffcea111,0xff9444e4,0xff9577c7,0xffb6619f,0xffdbfdf8,0x0047ecdd,0x0077ca79,0x0069c998,0x00189597,0x00164c8a,0x0060d704,0x0022c8c7,0x001c1de9,0x0027aee3,0x00481832,0x002c86eb,0xffbda004,0xff54bb90,0xff25f3d5,
-0xff2f9e7d,0xfeb28d30,0xfed8a686,0xff791d7f,0xfe8b891a,0x01d07de0,0x01074a2e,0xffdc7839,0xff126dcd,0xfe516418,0xfe5e3182,0xfea279e8,0xfef40d8e,0xff4f1ff3,0xff6854df,0xff2ee4b6,0xff72faf9,0xff941270,0xffa6d665,0xffb1e33e,0xffcca731,0xffcbf5fe,0xffdb2b6b,0xffdb31dd,0xffddf903,
-0xffdd87d8,0xfffbbb58,0x0036801f,0x0053fa9e,0x006b2411,0x0056a2a5,0x007f28f7,0x00b88673,0x00da8d51,0x014d5ec8,0x018b7a00,0x01a6d366,0x018f942a,0x017ce234,0x019acb46,0x01729974,0x018f163c,0x0162b610,0x00be87c9,0x0055d41e,0xffbd3543,0xff31f654,0xfe89fb4a,0xfdd9a85c,0xfdf9e6dc,
-0xfe0f4a16,0xfe1dc6a8,0xfe39fce8,0xfe526f26,0xfe6ed51c,0xfe7fc284,0xfe8e4386,0xfe9fa220,0xfed57af4,0xff10446d,0xff4163e8,0xff815496,0xffdb59e2,0x0024ae83,0x0060ef13,0x00a18f03,0x00e1b7cd,0x0106b184,0x010fe9a8,0x013722a8,0x0148a228,0x0177cbe8,0x019e5694,0x01bb39d8,0x01e9953e,
-0x021cc670,0x01cd4320,0x00d64846,0x00748f2e,0x0054c605,0x00332faf,0x001921b9,0xfffe4c79,0xfff14eb5,0xffd331b4,0xffcabf9e,0xffaf7346,0xff9b516d,0xff862d9f,0xff72926c,0xff591061,0xff80b0b5,0xffa3c2d4,0xffc24962,0xffde43c3,0xfff91412,0x00126a94,0x00216ca7,0x0004d724,0xffff46ee,
-0x000dac1f,0x000bf3d9,0xfffcb59e,0x001c92bf,0x00421836,0x0072a498,0x008beda3,0x00a072be,0x00da6ab4,0x00bf0fc3,0x00be16e2,0x00aaa7bd,0x0085c994,0x0047b4b4,0x000b04f8,0x00126fec,0x0004fe6a,0xfff9f66a,0xffed1871,0xffdec11a,0xffd0cb62,0xffcb7dbc,0xffc70840,0xffc20fd3,0xffbadc88,
-0xffb48127,0xffa53d70,0xffb8152d,0xffc2ef26,0xffd0ccfe,0xffdd1578,0xffe9c834,0xfff2f930,0x001e4e01,0x003ba3dd,0x0076b08a,0x0013042b,0x003f2dd9,0x00755ff1,0x0086300b,0x009028bc,0x0096d47a,0x00a67968,0x00b3bb9c,0x00c420a5,0x007588fd,0x003b781b,0x00b8dbdc,0x0072de08,0xffe947a6,
-0x0059452a,0x0057e151,0x005053e0,0x0053f78d,0x00552f07,0x004f35b9,0x00586cb6,0x0055efc8,0x00479ba6,0x00517720,0x004afa56,0x00344a87,0x003655b5,0x0035f2cd,0x0035d89f,0x00485096,0x0050bcf3,0x0052d761,0x0057f38b,0x005d4df1,0x0066e364,0x00629322,0x005fbea9,0x00586144,0x004faa89,
-0x004e9070,0x004f486d,0x00556c55,0x00586a01,0x005e5925,0x005647c8,0x00558045,0x0059132a,0x004cd3a6,0x004c34dc,0x007789ca,0x005d14ce,0x0085f637,0x0067a4e3,0x00610653,0x0051cc2c,0x0041fa32,0x00582b39,0x005d7d37,0x003ca933,0x005d4ba2,0x0048bf14,0x00017919,0xffffb277,0xfffcfe2a,
-0x00065ff5,0x003be6b1,0x005780c5,0x005f28bf,0x007051b7,0x00806e77,0x009e7f85,0x0094c8b6,0x0081b622,0x00695525,0x005818e9,0x00517672,0x0049cd12,0x005cd811,0x00687323,0x00710808,0x006a2ca1,0x005afeb3,0x00588737,0x003af923,0x0055c2c5,0x00b71e9f,0x008d24de,0x008c63f6,0x00658c5e,
-0x007261d8,0x007d17a3,0x00590773,0x0078d0ae,0x006466f7,0x00295402,0x0063365e,0x0037bb0e,0xffc7f18f,0xffbbf094,0xffb4548a,0xffc01655,0x001edfa6,0x00587e53,0x00624161,0x0082739a,0x009f8d79,0x00dd23a3,0x00c41ce2,0x00ad02c0,0x007327c7,0x0060fde0,0x0051eb00,0x0036f5cb,0x0057270e,
-0x006834fc,0x008899c2,0x00699631,0x005f71d1,0x0071a469,0x002ea86f,0x0044089d,0x00fa9f23,0x0091eb93,0x00f6c057,0x00a7fbb2,0x00920619,0x00466e19,0x000628c3,0x003d7176,0x0065fde4,0x000f4776,0x0067817a,0x00346fa9,0xff66c9f5,0xff41dd83,0xff1d7fab,0xff504ade,0xfffc1d12,0x005a01a0,
-0x007b54a3,0x00ac1aa5,0x00e5bbef,0x01486854,0x012874be,0x00f98eae,0x009dfaaf,0x008acc1f,0x007b99a9,0x003fc265,0x00216b63,0x0059c162,0x00e6cb57,0x008156fd,0x005ab26c,0x006c9cdb,0xffe455e3,0x00616eb9,0x01b2ed34,0x01337632,0xff7a7537,0x0003c77c,0x00753e11,0x015e6210,0x02986e28,
-0x0120ecb4,0x004fe7c7,0x000d4a4b,0x0087c6a8,0x0064ed25,0xff594865,0x00c123cb,0x00e4fc78,0x00215cdd,0x0021759f,0x001d1ccb,0x004602ba,0x002e96bf,0x00451529,0x00c0571e,0x00bb5eaa,0x00a83634,0x00b0f8d3,0x00b78b3b,0x00b42cf6,0x0056b6b6,0x00530620,0x0028c9a9,0xffcc79a7,0x0024c9ad,
-0x00be2c29,0x01324058,0x01114198,0x004797c3,0xfef99aa0,0xff152323,0x0093b3d7,0x015102b6,0xff71655c,0xfebea5b2,0xfeb59776,0xfef956d2,0xffa23a18,0x00aade6f,0x00624db0,0x0051e506,0x00607878,0x00994f76,0x007d3a49,0x0043b52d,0x002bf54a,0x001fdf66,0x000ae397,0x0061a16b,0x0074ed69,
-0x008735d7,0x00960a97,0x0098090f,0x009eef7b,0x0071775a,0x003bc728,0x004874ba,0x001cfc3d,0x001b208f,0x004f2e9a,0x0056b9a1,0x0018bcf4,0xffca7ba4,0xff8f0e9e,0xffcc6c82,0x006a2a54,0x0023198f,0xffca9f65,0xffc37d7c,0xff845f7d,0xffb98a55,0xffd5d46f,0x004730c2,0x00744a02,0x00f4d494,
-0x00bf0386,0x007dfe3f,0x00451196,0xffbf69b7,0xffbe34c5,0x0008d1a1,0x002f8558,0x005a7a61,0x005001bd,0x00ba2818,0x00afba1b,0x0076f134,0x005397c1,0x0036f8be,0x0068aef7,0x00845775,0x004676ab,0x0018ccbd,0x00483639,0x00285142,0xfff8c61b,0xffbbdbed,0xffbe12e2,0xfffc8b1a,0xff4379f7,
-0xff4d7587,0xff8782a3,0xffb302ca,0xff83b865,0xffe5128c,0x002aadc3,0x00269813,0xffc84de4,0xffb48a76,0xff753ba5,0xff336d93,0xff54e0df,0xff85cfe5,0xfff9f43a,0xfffd60c1,0x000567fe,0x002899b0,0x007edcfa,0x008310c7,0x0059a346,0x009148a6,0x008e9767,0x004f3bbc,0x00895d28,0x009aa690,
-0x0081e529,0x0076e087,0x005cfe74,0x0050d0d3,0x00160aa4,0x000e4931,0x0044a21a,0x003c3878,0x0012f82e,0x00594640,0xffbc60c8,0xff523b63,0xff28977e,0xff1de5de,0xfd8992e8,0xfd15f4cc,0xfe1d4dc0,0xfe603344,0xfe7d8748,0xfe9ef17a,0xfed66400,0xff332cc3,0xffe3adb7,0x0017f792,0xff970b88,
-0xfff33cf6,0xffecf813,0xffa9309f,0xffcc7dbe,0xfff0de28,0x0028ff38,0x00635f92,0x007b9d03,0x005dc451,0x00448044,0x003c0c4f,0x005ed0b3,0x0031b208,0x00347333,0x00456468,0x003e9cd6,0x00074e9f,0xffa05a04,0xff45e4f4,0xff1b3bdd,0xff2ac8e9,0xfe89739e,0xfe84e020,0xfef00262,0xfe3b6fb0,
-0x00632dc6,0xff89575b,0xfe9dab34,0xfe78a7c0,0xfea8c20c,0xff0ba4f4,0xff7dbb64,0xfff6f000,0xffb0f45c,0xff7c2607,0xff4509e8,0xff7852b9,0xff8bd32d,0xff826296,0xffaedecc,0xffd0adcc,0x00208124,0x00217c07,0x00161c13,0xffefb86f,0xffe89efb,0x0011329f,0x006570f1,0x00626c6f,0x006ba56a,
-0x0065e30f,0x0078946c,0x009a6d27,0x00917b59,0x00c68bd3,0x00f0a0fa,0x010c6fc6,0x010f097c,0x00dbed07,0x0095ae9b,0x0059cf99,0x01261398,0x00d717c2,0x0034e2ef,0xffbd63bd,0xff0eaf08,0xfeacfbd0,0xfe3b7366,0xfdd05d00,0xfe230ec8,0xfe6ca2d4,0xfea537dc,0xfea10990,0xfea0df04,0xfe9b1326,
-0xfeb7e400,0xfecbec9c,0xfee435e6,0xff1a4c35,0xff606a0c,0xff92bd33,0xffa5492b,0xffe23adb,0x00107185,0x00472835,0x008b7eea,0x00c27635,0x00eb7995,0x00f443b4,0x011e56a6,0x012258cc,0x01403782,0x0154a18a,0x01626d86,0x018f35f6,0x01b8f88a,0x015741ac,0x005c6854,0x0011b395,0xffeffa09,
-0xffd48b4e,0xffbbb68e,0xffa4e696,0xff8e9502,0xff620378,0xff5a85df,0xff3d6992,0xff31b4ab,0xff27d81b,0xff25eb70,0xff1dc6ac,0xff43ed27,0xff65a76a,0xff82d22c,0xff9e2759,0xffb1ac00,0xffd0e85a,0x00011630,0xffe8e3b0,0xffea23cb,0xfff3febc,0xfff4695b,0xffeaa05c,0xfffcad1a,0x0010e73c,
-0x002f80e7,0x003cff40,0x00479b10,0x006b56bf,0x00525399,0x00488fc4,0x003e299b,0x001e494d,0xffd4fe9d,0xffb5265e,0xffb4ed1e,0xffa54200,0xff990f46,0xff8669ab,0xff771566,0xff68d21a,0xff687367,0xff677bfe,0xff63ca62,0xff608d4e,0xff5bbb5a,0xff502999,0xff5fb313,0xff697ed9,0xff75f705,
-0xff81ae94,0xff8ea5e7,0xff92369d,0xffba9d21,0xffcedf28,0xfffa6900,0xffbaaf3f,0xffdae013,0xfffa72db,0x0003b632,0x000a6aba,0x000c95fd,0x0016b374,0x001ebc79,0x00298cec,0xfff79006,0xffd42625,0x001f6dac,0xfff39f72,0xff7b440a,0x0053a850,0x00532095,0x004bcc5c,0x00533cb1,0x00538644,
-0x004c089e,0x0051a84a,0x004ed10c,0x00440d9e,0x0049982d,0x004473fb,0x00336a3c,0x0036b08b,0x0036ed62,0x003779c7,0x00458ada,0x004c2d15,0x004cb795,0x0051a2b2,0x00564df1,0x005c551a,0x005aed24,0x005989ef,0x0056aaa5,0x004a0233,0x004938db,0x004b7871,0x0054cf35,0x00576ad2,0x0057a046,
-0x005623c3,0x00551754,0x0051cbd7,0x0048e89c,0x0046c7f6,0x0069b185,0x0056830f,0x007b93e4,0x005c6eab,0x00624e0d,0x005892ad,0x0046938d,0x00501630,0x0051fea5,0x003e6c3d,0x00500e02,0x00410ae9,0x000c0d7e,0x000d4236,0x000d4aee,0x0014b9d5,0x003ca26a,0x004feaa6,0x00531338,0x0065b469,
-0x00738434,0x008d1b1a,0x008aa06f,0x0074a437,0x0069706f,0x004edd6c,0x0048f751,0x0043a5f4,0x005f5e51,0x006ca194,0x00675090,0x006bb0d3,0x005a1968,0x0048e19b,0x00384aa6,0x004bba80,0x0092fb3b,0x0079b5a2,0x0080cb3a,0x005ef314,0x007b6541,0x008943db,0x005c3816,0x006b79cc,0x0059bc03,
-0x002c51ac,0x004ca4a6,0x002c2bf0,0xffdd38ac,0xffdd3a81,0xffd5bfcd,0xffda8af1,0x0025086e,0x00531187,0x0052dcae,0x0076bf6e,0x008c2594,0x00c6919a,0x00ae6c6e,0x0095be6e,0x0077e209,0x005085ba,0x0045d7e3,0x002c082a,0x0063648c,0x0072ca31,0x00767519,0x0074d526,0x00674252,0x005733fe,
-0x002c39b7,0x003a4c50,0x00c16b12,0x0078b504,0x00d2a5c9,0x0080cf30,0x008a5ac3,0x0060cc9e,0x001ffbe5,0x00345be7,0x005066a6,0x0021528d,0x004cf7ea,0x00308c49,0xff94bbc9,0xff768d91,0xff5a87e8,0xff7c8f3f,0x0003701d,0x004637de,0x00574cac,0x00947276,0x00cd9eb8,0x0133cb66,0x0117814e,
-0x00dbe3a6,0x009db489,0x00774e11,0x006c8087,0x0029d27f,0x00332648,0x006b9bfe,0x00cf3b0c,0x0090721e,0x006183b7,0x004aac04,0xffedb42c,0x00546e7a,0x0151ea92,0x01004ff8,0xffc84153,0x004931cb,0x00c3d3f1,0x016796c0,0x025dbd88,0x010615fe,0x0057ca89,0x002e690e,0x0038aa5b,0x00237e55,
-0xff8a6bd3,0x010b6b3a,0x013741a4,0x004bf148,0x004c327d,0x00416b00,0x005b83d3,0x003b48fd,0x002ddeb6,0x006dee88,0x0079bd23,0x00733181,0x00962e38,0x00a8c9e4,0x00b7ebe3,0x0069f10b,0x00499a60,0x001e9a78,0xffcd8938,0x004c292c,0x00ec1e94,0x012809ae,0x00da3a5a,0x0018fe4a,0xfee739f8,
-0xff44f290,0x00c9cabe,0xfffa8ea9,0xff074398,0xfed3943e,0xfec37022,0xff28c832,0xff8a9c5a,0xffb5bc8f,0x0038c933,0x004af7e8,0xffd35070,0x00a20214,0x00abffc8,0x003c4dc5,0x0023218f,0x001aa1b5,0x001536b1,0x00833758,0x00920a07,0x006af77f,0x00a0284f,0x00a41028,0x00a0aa54,0x007e95a5,
-0x004365ac,0x004b98bb,0x002468d6,0x0030e87f,0x006f1eed,0x005ac8e6,0x000f7fe6,0xffb1767b,0xffbed8b3,0x001c4330,0x00546e1f,0x00bc628c,0xffd05311,0xffc1830c,0xff9b0aa2,0xffb05921,0xffbe337f,0x001e181f,0x007835b1,0x010461a0,0x010363ae,0x00bef5f0,0x00520445,0x0029e8cf,0x00015f75,
-0xffedcff3,0x00502f87,0x007af09f,0x004c8743,0x00c39b3a,0x00b74123,0x0041ed27,0x0037bba1,0x002c65c0,0x004afd03,0x007a73d7,0x003d2012,0x0023b15f,0x003e38db,0x00280030,0x00063c44,0xffcf9d72,0xffdebb02,0x002217e1,0xff4dbeaa,0xff813082,0xffe7033c,0xffc09f72,0xffcce696,0xff86fab7,
-0x000b62b4,0x003f9f4c,0xfffbc0bf,0x00310106,0xffe24087,0xff2b2ca8,0xff4ff865,0xff6568b6,0xff927fad,0x000fef58,0x0031c9bf,0xfffea452,0x007ddf90,0x00944d02,0x007b1cf5,0x00982ce6,0x008adb11,0x0056c741,0x00993c1b,0x00a22977,0x00907e9c,0x0086644a,0x00610233,0x0053f688,0x001e6096,
-0x001b6bb5,0x00482260,0x0043f2a9,0x001f312e,0x00658011,0xffbb75c5,0xff7de16d,0xff865b13,0xffb39235,0xfe2a79b2,0xfe91daa8,0xff3fb954,0xff21f113,0xfeb25336,0xfeb8bb00,0xfed5e4ae,0xff1acdb5,0xfff737b3,0x003a4d06,0xffd64b52,0xffef1042,0xffeab03b,0xffe8b259,0xffe6ca11,0x00029053,
-0x004c45d1,0x0085436f,0x00827bea,0x003dfba6,0x005fd905,0x0057f6db,0x0065d48f,0x0042b19c,0x00405609,0x005635bf,0x00221c2d,0xffdd3a7e,0xff8e04b9,0xff53096b,0xff35248f,0xff354963,0xfec3e992,0xfe98c540,0xfe98e1a8,0xfe4d634c,0xff285688,0xfe8a8cec,0xfe1ccd94,0xfe722fe6,0xff26f686,
-0xffbaca1f,0x0021cc03,0x00712c95,0xffa12484,0xff4d0f98,0xff7a3875,0xff8bf736,0xffa0ce07,0xffa8f625,0xffdbb64f,0x00045c5b,0x004a53ba,0x0059d817,0x004d255c,0x00098f76,0xfff3eb3b,0x000d8021,0x005be361,0x0050f85c,0x005f5075,0x0079b867,0x00890669,0x0082f668,0x0038e6ed,0x003a3782,
-0x004b1b67,0x00537664,0x0091eda9,0x005cec41,0xffd2abce,0xff6f1b28,0x007f7008,0x001e18d6,0xffac1678,0xff4e485b,0xfec3e132,0xfe984cf2,0xfe68b8e6,0xfe4e6c3a,0xfea1617c,0xfee8071e,0xff186176,0xff03034e,0xfefc0f48,0xfee98652,0xff0b14bc,0xff225e8c,0xff3d84e3,0xff6b1c66,0xffa2b957,
-0xffd4c922,0xffe0a01c,0xfffd5f60,0x0016b72c,0x00372826,0x0068e19e,0x00876db6,0x00b6c458,0x00c5b024,0x01038fd4,0x00ea5f94,0x00f1e995,0x00e8aa33,0x00da8c83,0x00f09def,0x0104000a,0x00a7646c,0x0014342c,0xffe54006,0xffc1ce57,0xffa80908,0xff8e2a85,0xff74932e,0xff531112,0xff1c30f9,
-0xff106631,0xfef6aa5e,0xfeed12d6,0xfee8ed58,0xfee713be,0xfedf1f06,0xfefda1c8,0xff17ea69,0xff3096da,0xff463602,0xff549583,0xff6cad06,0xffab722d,0xffaa1620,0xffbcd1cf,0xffd17f8d,0xffe38657,0xffebc275,0xfff3d465,0xfffb11fc,0x000d8792,0x0011633e,0x001ac875,0x002eb244,0x001db790,
-0x00100450,0x0009caf1,0xffef8ef1,0xff9b8555,0xff8e5760,0xff8689bd,0xff7639ef,0xff68bb6f,0xff551880,0xff47363b,0xff3a5200,0xff3b0ae6,0xff395671,0xff355096,0xff312497,0xff2d48c0,0xff24f408,0xff3223f6,0xff3a62cb,0xff44424e,0xff4e7b6e,0xff5b53b6,0xff5cc7fc,0xff7a1800,0xff8a0756,
-0xffa991b1,0xff8a6d2f,0xffa11e69,0xffb9f920,0xffbc84c4,0xffc0861a,0xffbe88ac,0xffc66db9,0xffc9af22,0xffd16d2b,0xffb73928,0xffa3d94b,0xffc411d5,0xffaf1ac1,0xff47f579,0x004d8457,0x0049afad,0x0045a46b,0x004f133f,0x004e8c02,0x0043b143,0x0049cba7,0x0047d06d,0x004148ba,0x004245be,
-0x003f21c8,0x0038d5df,0x0038f095,0x003956c4,0x003a8345,0x00437f5f,0x00476a97,0x004607f8,0x0049ae26,0x004cbaf0,0x004e916c,0x004f9e06,0x004fb5bd,0x0051fedb,0x0042b43a,0x0041ddc5,0x00440f64,0x0050b4a0,0x00531e73,0x004f5646,0x00517705,0x004f660f,0x0046b913,0x00428168,0x00402447,
-0x00583084,0x004b368d,0x006d04a9,0x0052c625,0x005bb25d,0x00532ded,0x0039cd4c,0x0043b6de,0x0044621e,0x003e822b,0x0044ee15,0x00407d6e,0x00297eb3,0x0022eca4,0x0023c0b5,0x0028e234,0x0044b46b,0x004ea8ae,0x004981f1,0x005773aa,0x006023db,0x006ff4b8,0x0077ee41,0x00659f33,0x0066046b,
-0x00454675,0x003fe598,0x003c8d4e,0x00610a47,0x006f06fa,0x005d7a4d,0x0066bf6d,0x0053f681,0x00376b7e,0x00336bb9,0x004037d6,0x006f5c44,0x00655d11,0x00691144,0x0051ee6c,0x007ccf6a,0x00812001,0x00420e12,0x0057e140,0x004b7073,0x00349517,0x003cd291,0x002b4dec,0x0015ab89,0x000870ab,
-0x0003ad4e,0x0004cdfc,0x0035dfa8,0x00526ae2,0x004590d2,0x00644f94,0x006dc71f,0x009666d1,0x008ef822,0x007cbf1f,0x0079a871,0x00426b5c,0x003b5cb6,0x0022eb4f,0x006fc2e2,0x007eea46,0x0066affd,0x0076bc28,0x0064013a,0x003ca61d,0x00298aca,0x0030cbb9,0x0088758e,0x005c5b08,0x00b1c7fe,
-0x006937b0,0x007e9eb8,0x005c0865,0x000102bf,0x001cfec8,0x002dc3f8,0x002bee43,0x003d671a,0x004a4b0a,0x00046489,0xffcdf9bd,0xffb9a20c,0xffc7c432,0x002b58ab,0x004a5645,0x003dbe26,0x0074e1ef,0x009f40f6,0x00ed9cd2,0x00eeb044,0x00ba1157,0x009dfe7f,0x0062fb4d,0x0057db7f,0x000d0083,
-0x00458735,0x007fc3b8,0x00b20610,0x0093a2c3,0x005c45e3,0x002626d6,0xfff5596f,0x003f6b21,0x00f46a5d,0x00cde69c,0xffdf5751,0x005ec6b2,0x00eb1120,0x0159e9ec,0x01f50c5c,0x00f07c0c,0x0077bb51,0x0064b9ed,0xffef5dc8,0xffcf0241,0xffa58030,0x00fb60aa,0x012f5f78,0x0057a8f5,0x006092d7,
-0x00622cc8,0x0072fbf1,0x004d9281,0x00261f7c,0x0029def9,0x00467dd8,0x00511461,0x0083e2c8,0x009a6d68,0x00b42f97,0x0085e847,0x003dfe7b,0x00118368,0xffd9374b,0x007e6671,0x0111f8d0,0x00fd81aa,0x009d827b,0xfffbf7a9,0xff09a7f6,0xff5b465e,0x0103e89a,0xfee656aa,0xff088f79,0xff1932f6,
-0xfeef410c,0xff39738a,0xff320ef5,0xfeabd112,0x001e6aff,0x006ec530,0xffa94485,0x0079529e,0x009ab789,0x0076ddd6,0x0042b19f,0x0021555f,0x00157fbe,0x008bc386,0x009e576e,0x00494778,0x008898ce,0x00926a3e,0x0091d667,0x009764ef,0x00599a1e,0x004e5ca1,0x00251bc7,0x003ee603,0x00900940,
-0x00599e40,0x00070048,0xffa93d04,0x0000ce36,0x0050cc19,0x001641c9,0x01485694,0xffc51fb6,0xffb8e1f0,0xffa6be13,0xffbb7e21,0xfff7e5c8,0x00052dc4,0x006c1d6d,0x00ecb2e0,0x00fc1f1e,0x00bde89c,0x004fa323,0x0060123f,0x0020b973,0xffed4318,0x00333c75,0x00620e4f,0x003ee569,0x00a57b8c,
-0x009afd4e,0x00210abc,0x001da735,0x001180ce,0x002668ef,0x005c528f,0x002a6ef0,0x0033c9a0,0x00375dd6,0x00228ffe,0x00133124,0xffe18f3c,0xffff9f53,0x0034d2f9,0xff791426,0xffdb0d0f,0x0039829c,0xffcfca1a,0x00042ec8,0xffa2f02b,0x0005c36b,0x00338fe8,0x00447ced,0x006314fc,0x001b7120,
-0xff68783b,0xff65be9a,0xff5f2125,0xff4695c3,0xffe77e1e,0x002e6e75,0x001d1597,0x00551aa0,0x006aa714,0x007d5b7f,0x0084c09a,0x0071d310,0x004a6490,0x008844d0,0x00865c73,0x007c3f7a,0x008548ca,0x005cba94,0x004b3948,0x001f9c80,0x0019eeda,0x003f520e,0x00375a3d,0x00150d15,0x0042a7a5,
-0xffd24e2c,0xffbc40f9,0xffc0171f,0x0015d929,0xfec7222c,0xff7583d4,0xffb58227,0xff88f1f6,0xff1e8d3c,0xff09766f,0xff1b254f,0xff5c06fc,0xffdc258c,0xfffd84a3,0xffcd9944,0xfffee74d,0x00167882,0x0015b0c2,0x00261d70,0x0042d99b,0x006244c0,0x00826dc7,0x006d20ea,0x001e756a,0x00664e30,
-0x00626691,0x0058faec,0x0044c84d,0x003ed307,0x005fcf6c,0x00051845,0xffbfe083,0xff8cc984,0xff7148b7,0xff5f5595,0xff454eba,0xff08ef0a,0xfec36976,0xfe659c1a,0xfe7d9f36,0xfe6d0164,0xfe2a0cc4,0xfe2710d4,0xfea35732,0xff596b18,0x00047905,0x0038d709,0x0008fa1a,0xff7b3c95,0xff5d0e6b,
-0xffb964c6,0xffa57282,0xffbb2917,0xffe21e49,0xfffecbe4,0x002d722c,0x00459f9c,0x007679de,0x0070cc7e,0x00256047,0x00172ae8,0x00189e6f,0x0037d7dd,0x0035e991,0x00473d7b,0x006e1575,0x007c6087,0x005d78f8,0xfff1e657,0xffd0479b,0xffc62667,0xffbb2fa9,0x001b5205,0xfff56548,0xff678ef0,
-0xfede4c88,0xffe218c0,0xff8b8c45,0xff5a4068,0xff304ca0,0xfeeef5cc,0xfeec65f8,0xfef51b10,0xff1145e8,0xff3b3c64,0xff50abbf,0xff609a12,0xff52b76d,0xff512f79,0xff465ada,0xff64c75b,0xff7d4038,0xff94d651,0xffa4136c,0xffb82e6a,0xffd4bf62,0xffecbf62,0xfffd1497,0x000fef9d,0x0025cf57,
-0x0047b864,0x00598af5,0x0080a277,0x008ca929,0x00cff316,0x009e3d12,0x008fd7ef,0x006895ca,0x004a6b86,0x0048fe3b,0x004b6dee,0x00021c31,0xfff101fc,0xffcb29a5,0xffab8b70,0xff9082e0,0xff75d736,0xff59d420,0xff33c3a9,0xff0455a8,0xfef8a5b0,0xfeee3974,0xfee6f2ac,0xfee4cf06,0xfeddec04,
-0xfecddca8,0xfee80660,0xfefbe19a,0xff14098c,0xff296bab,0xff3f076b,0xff50e963,0xff6c89ff,0xff86e872,0xff9ef005,0xffb95e7f,0xffd06a21,0xffe5d4b3,0xffeb3061,0xffeea5be,0xfffb9b2e,0xfffe61ee,0x000bed27,0x001cc149,0x000f9326,0x0000fdfb,0xfff88c7f,0xffe01570,0xff7fb67e,0xff7a4c22,
-0xff705af3,0xff6285f8,0xff56742a,0xff478cae,0xff3d3113,0xff30f25e,0xff336c02,0xff3065d0,0xff2d010a,0xff281134,0xff25e503,0xff20d27a,0xff2d5d16,0xff3575e2,0xff3db474,0xff46cf49,0xff50e969,0xff59a523,0xff602c44,0xff69d5fe,0xff7aa26c,0xff75a029,0xff813525,0xff94e9d9,0xff95b60e,
-0xff99e005,0xff97cf98,0xff9fb30b,0xffa1158e,0xffa8572e,0xff978f12,0xff8bca1c,0xff983cc8,0xff8c7388,0xff32d305,0x0045c9b6,0x0041c7db,0x003bf2a8,0x00483e17,0x0046533e,0x0038f2b1,0x003f195c,0x003eb692,0x003d2969,0x003a5a31,0x003967f4,0x003d666c,0x0039ad87,0x003a2663,0x003becf5,
-0x00404d4c,0x0041691c,0x003f5102,0x003fb451,0x00410410,0x003ebe75,0x0045e23a,0x0048c631,0x004f6619,0x003cecef,0x003ea4e7,0x0040dbd4,0x0050ad2c,0x0052c7ce,0x004b160f,0x004ea310,0x004b6038,0x00405c02,0x003eb88d,0x0039ddeb,0x004af61b,0x004379e4,0x005b59bb,0x003e33fa,0x004aaf11,
-0x00452b61,0x00286b9a,0x00337f7e,0x003597e4,0x003d6727,0x003b7f56,0x0040845b,0x00459d47,0x003583cb,0x0035698d,0x003878c8,0x0048836d,0x004bcf5c,0x00440e4f,0x00466ca0,0x00485e58,0x005006f0,0x00649b05,0x00574051,0x0060f12e,0x003dc675,0x0039bf35,0x00386659,0x00625512,0x007008af,
-0x0055e474,0x005d569f,0x004ad96a,0x002b6d75,0x002faf99,0x0038324b,0x0053946b,0x004e9837,0x004f3994,0x004257ce,0x007300a7,0x006d5c99,0x0022246b,0x0039a8ef,0x0038fb1e,0x003cd4b6,0x002f1176,0x002b2a6c,0x004aa53a,0x002b5cee,0x002c29c0,0x002d06ed,0x00475b9e,0x00516c3d,0x0040aac9,
-0x004b0ad0,0x00484dad,0x005ec2c8,0x006cc67f,0x00657a78,0x0078c234,0x00393d51,0x00367823,0x0022079e,0x007e3cab,0x008a1014,0x005db23a,0x00710ecc,0x005b6b1a,0x002d0616,0x0026a0c7,0x002503f7,0x0056503f,0x003e2dd1,0x007d600f,0x003fe5cb,0x00560f91,0x003f0e67,0xffdb173f,0xfff9b41d,
-0x000d2702,0x00370d1f,0x00341e47,0x00608955,0x006f2e15,0x001f53c7,0x000dce94,0x000d9399,0x004cd507,0x0053c0b3,0x003b3e55,0x004c4ec8,0x005d4158,0x00900be9,0x00b6add2,0x00976fb1,0x00a3b3c0,0x00549ff3,0x0042a3cf,0xfff7263e,0x005a7c41,0x00939c80,0x0092096d,0x00885df2,0x004e0f98,
-0x0009a5b4,0xfffcd781,0x002e145d,0x00a3d03a,0x0090cb2c,0xffcc757d,0x00640bde,0x0105a86a,0x01404df4,0x01803600,0x00d10cbb,0x008703b5,0x00888d11,0xffc1acc8,0xff876e91,0xff83ba8a,0x0097ea66,0x00ed8fc5,0x006ca60b,0x0064f8ca,0x0065e378,0x0079952e,0x00599f08,0x002c33e8,0x0006b197,
-0x001faaa1,0x0034b667,0x00767dea,0x008876dc,0x00a7159a,0x00a24908,0x0033b2a2,0x0005a325,0xfff3a1d9,0x00aecb3b,0x0123487e,0x00c398d5,0x006af0b5,0xffdce4c7,0xff11a370,0xff441fe2,0x01301e6a,0xfe3b0924,0xff0cf8b5,0xff492455,0xff3131fb,0xff5a97a1,0xff17f871,0xfe50fe30,0x0029f50f,
-0x009e6038,0xffa0f4b1,0x00549d54,0x0081f161,0x00915f01,0x006b263e,0x005068d8,0x0037a051,0x008df434,0x009cb4be,0x003e23ee,0x006eec60,0x007a824b,0x00794e60,0x00ae7299,0x00718eca,0x004f98c6,0x002e522a,0x0050a0de,0x00a6845c,0x0057450e,0x0008fa14,0xffb34d76,0x00288985,0x0070aad8,
-0xffff9a68,0x01acfac8,0xff9d0563,0xff989ce7,0xffce571b,0xfffc2914,0x005bfd5e,0x00024afd,0x0050cf2c,0x00c443c1,0x00d6f323,0x00b2b64b,0x004616b1,0x00790147,0x00378636,0xfff7cd2c,0xfffd3f4b,0x002847ad,0x00315bb4,0x006bf746,0x005c1c65,0xfffdefba,0x0001a1e3,0xffefe29a,0xfffa4015,
-0x0035abe8,0x0017a27b,0x003b81ce,0x0036d017,0x001f5874,0x00203ff9,0xfff6d030,0x001fe170,0x00473bb8,0xffdee902,0x0031da3a,0x0047c8b4,0xffb7467d,0x003f3d79,0x000f0371,0x0015e403,0x0026d485,0x008f3818,0x00658ee5,0x001bec0e,0xffa2ca3c,0xff754fc9,0xff6365d1,0xff152e75,0xffd179f7,
-0x002bfdf8,0x002f9793,0x003fea9e,0x004d5861,0x0060ba35,0x00633674,0x0053f50f,0x00362f18,0x005df63e,0x0058382c,0x005111e0,0x0076ef66,0x005540e1,0x003af00a,0x001db3be,0x00144ff7,0x0032a60a,0x001f508e,0x00013112,0x0005bb1f,0xffe4f133,0xffeff9d1,0xffeced55,0x004eddab,0xff19295e,
-0xffa38583,0xffd2c963,0xffc66677,0xff89fbe3,0xff5c495b,0xff70fa44,0xffaeec6b,0xffb6b220,0xffb18b14,0xff9feece,0xffef6e22,0x001d1c5a,0x0019e7db,0x00505ed1,0x0077530a,0x008d7c2f,0x006d7ff8,0x004d3719,0x001cc0fd,0x0061ec0e,0x005e5bc0,0x00352777,0x003c5222,0x0037edc1,0x005b8be7,
-0xfff24761,0xffb4c571,0xffa1734c,0xff9a9e7d,0xff8b9d4d,0xff5828ca,0xff26436f,0xfed1ed2a,0xfe4e55c8,0xfea89a30,0xfe4a0d48,0xfe45ac40,0xfe7a7fa6,0xfed99332,0xff525011,0xffc30e17,0xffba5b36,0xff4cfa24,0xff7805ca,0xffab3928,0xffe51661,0xffc55c89,0xffcd7b11,0xfff58aaf,0x000dff1e,
-0x00333d5b,0x00488477,0x006c5124,0x006dd852,0x0038f6b6,0x003bb9bc,0x00318b71,0x00216668,0x00235cf0,0x002ea521,0x00562966,0x0047f699,0x0020ef45,0xffc40fa4,0xff8b4cec,0xff70e513,0xff65555c,0xffb76ae1,0xffa6b096,0xff526167,0xfebdaa82,0xff6df553,0xff245828,0xff2300b4,0xff2c4c42,
-0xff2d9cdc,0xff5175e6,0xff8c0470,0xffc8dbac,0xffc13352,0xffa78a43,0xff9d4765,0xffa22b87,0xffaad070,0xffabaa26,0xffc94678,0xffe308c6,0xfff94390,0xffe32a87,0xffd13336,0xffbf773a,0xffd56f1b,0xffe4efc7,0xfff8b5ef,0x0012a080,0x002d75c7,0x00442a0e,0x0057005b,0x005af6de,0x008d81f3,
-0x005253e1,0x00355f33,0xfffd0b73,0xffd99553,0xffc3be42,0xffb5ce82,0xff7fc7de,0xffda4b43,0xffb722f9,0xff9cff87,0xff815292,0xff64866a,0xff47e9d9,0xff203b9d,0xfeffa608,0xff01e7a8,0xff0fb655,0xff1438f9,0xff18fc26,0xff176cb4,0xff0da144,0xff2037fe,0xff2e2075,0xff44eb4f,0xff58283a,
-0xff72e992,0xff84332b,0xff7bc84d,0xffa12723,0xffb1ff31,0xffc43331,0xffd4ccf2,0xffeef309,0xfff0a0bb,0xfff0df9a,0xfff66e36,0xfffa00b7,0x00060afb,0x00174d32,0x00071aef,0xfffa0524,0xfff167ec,0xffd91a59,0xff798189,0xff7fe51f,0xff75dd39,0xff6baf09,0xff635f50,0xff5a0795,0xff539a46,
-0xff465b11,0xff4d2beb,0xff4b3870,0xff4ae85e,0xff497bae,0xff4adae5,0xff4b4bbb,0xff5435b3,0xff5a1c1b,0xff5e9e8c,0xff65f56d,0xff6b4a76,0xff792132,0xff6a92cd,0xff69bb97,0xff65ce8b,0xff80dc31,0xff7c295a,0xff7d865c,0xff7fa64b,0xff856fb2,0xff85dd20,0xff8d3e00,0xff8e40ae,0xff93d7d2,
-0xff8b3855,0xff8a5b44,0xff7f9be0,0xff7df7a1,0xff4acc4d,0x003c1e43,0x0037f949,0x003245f6,0x003d2a1c,0x003a21b4,0x002bcd62,0x003261c4,0x0033a9bc,0x003715fa,0x003251fd,0x00328d62,0x003b1b09,0x00345f9a,0x003528f2,0x0038797b,0x003a2282,0x0039e549,0x00387cf7,0x00356da0,0x00351da0,
-0x0031bbaa,0x003a6ba9,0x003df0dd,0x0047be37,0x0034b8b1,0x00388b07,0x003b2f85,0x004c4d8e,0x004e2df0,0x0043f4c9,0x0046b401,0x0042a8a5,0x0038856e,0x00383b77,0x00338ed5,0x003dd9fc,0x00390933,0x003dfdfe,0x0027ca7a,0x0037c70d,0x0033d41a,0x0014321c,0x001f38fe,0x0024cdee,0x0039390c,
-0x0033756a,0x003c2c10,0x004fdde5,0x003773e5,0x00355afe,0x003ac735,0x004292ba,0x00437f7b,0x003df26b,0x003599ca,0x003325d5,0x0035e0a9,0x004d2b26,0x0048258a,0x0055a8df,0x00361031,0x0034361f,0x003603cf,0x006071cc,0x006bfc30,0x004d7691,0x00519530,0x0041e9ea,0x0025b6dc,0x002de920,
-0x00327967,0x003f28af,0x0037bfd5,0x00363d3c,0x003114a6,0x005bc956,0x004af806,0xfffe8547,0x0019334e,0x0022bf29,0x0040daaf,0x00296449,0x002bf8e9,0x0063a926,0x003187e5,0x003764ba,0x003fc5f1,0x004dd874,0x004d8ce7,0x00412b95,0x0034e249,0x002b2a54,0x003392f8,0x004bd751,0x00500fa3,
-0x006d8578,0x0032271b,0x00353efe,0x0029532c,0x00877f41,0x0090cbdb,0x00599b91,0x006986f4,0x00528ea3,0x00287248,0x0029adfb,0x002200ea,0x00376687,0x0027909f,0x0035bdc8,0x001161f4,0x0029601e,0x0018a5ff,0xffafbbfc,0xffcb8534,0xffe83f96,0x003c4f23,0x00329218,0x00675225,0x00a9fad0,
-0x00406d55,0x002714dc,0x0028a61e,0x004ea362,0x0051725c,0x003bdba0,0x0026d98c,0x0022dd96,0x003df25e,0x00777d7d,0x0077deb2,0x00aa9c33,0x004f9cad,0x00335fc5,0xfff33c05,0x006e735c,0x00a25809,0x00719cbc,0x007614ef,0x0043155c,0x0000657f,0x000c998c,0x0028b120,0x006e4fcd,0x00555417,
-0xffdecd97,0x008b515d,0x010263c6,0x010405a4,0x011bfe3e,0x00d26aa6,0x00aab377,0x009c7a06,0xffbaed95,0xff6568b3,0xff5af8a3,0x00289324,0x00a800b4,0x00af6145,0x007dd420,0x006c8dd8,0x007cc997,0x00615447,0x00412bb4,0x00087064,0x000ad4c1,0x0023a79c,0x0064ee33,0x006fb8eb,0x00914307,
-0x00b52a70,0x002e500f,0x0000fb1b,0x001b661e,0x00d6692a,0x01210c5a,0x00830738,0x004c0cf1,0xffccf10b,0xff05e259,0xff48cd8a,0x0118c124,0xfddd93dc,0xff2e3bf3,0xff8e6213,0xff771b15,0xff6ff6b7,0xff3c6a74,0xfec049de,0x0055916c,0x00c072c4,0xffbdc7ed,0x005019f4,0x00740a14,0x0089de95,
-0x0078e5f9,0x006b9968,0x006ccaad,0x008b30c7,0x008bc2bb,0x0044768e,0x005f84c4,0x00622d9d,0x005a5aaf,0x00b5f2c6,0x0084f37d,0x0051e8cb,0x00439218,0x00681fc4,0x00ae0112,0x004d1e1d,0x000f1c6a,0xffdbf161,0x00458ea2,0x00857887,0xfff60f79,0x01c06658,0xff71992c,0xff75d59c,0x001d2584,
-0x005423a4,0x00ab1615,0x001b5a2e,0x003cb1e4,0x007dbe66,0x00be8d7f,0x00c53f70,0x0046b8a5,0x00913dcf,0x0041ea14,0xffd3a477,0xffd61b42,0xfffcbf96,0x00373bd1,0x003a190d,0x00233b23,0xffe35841,0xffead04f,0xffd65985,0xffd09a70,0x000b5f00,0x000a71db,0x003ffa0f,0x003729b1,0x002122d0,
-0x002a7dce,0x00143855,0x003630a5,0x003aeac0,0x00296b6d,0x0059e30e,0x0024f236,0xff9088b0,0x00779e29,0x0075816c,0x0039b9bf,0x00374242,0x00ae41cc,0x0059a77a,0x000d2268,0xffc46034,0xff96e692,0xff7dc130,0xff13fd77,0xffb9ea32,0x001458af,0x0026abc9,0x0024705b,0x003e0d9c,0x0061372c,
-0x0055719b,0x00488690,0x002c9ef5,0x0033cc95,0x0030f39e,0x002c1924,0x0061a7d7,0x004b3ff1,0x002d11d5,0x001ed09d,0x0015799f,0x002645e7,0x000bd3a1,0xfff32e09,0xffd7951d,0xffee744f,0x000b2ff8,0x00055631,0x00675fbc,0xff318396,0xff7cdc7c,0xffcb7bfa,0xffe03844,0xffb7fe37,0xff9c3405,
-0xffb0c53e,0xffeac680,0xff97b10c,0xff877fb7,0xffaa95b2,0xffd2b1d5,0xfff25cb4,0x000ed2eb,0x004871c0,0x00668abe,0x00841593,0x003c3bb3,0x00229d1c,0x00278c8b,0x004edfe9,0x0044c8a3,0x000ecd55,0x002ff5dd,0x002daf42,0x0043fd2d,0xffea4066,0xffba40b0,0xffc21fad,0xffc0f15f,0xffa8178d,
-0xff61cf8c,0xff17788d,0xfebacc22,0xfe4461cc,0xfec8a094,0xfe8aeac0,0xfea3ad44,0xfee0b93c,0xff0a704f,0xff44c529,0xff3d8f3c,0xff1c178e,0xfef61128,0xff7d648b,0xffca3b51,0xffcd02ed,0xffccef6e,0xffda4c03,0xfff5bb18,0x002109a0,0x00394aad,0x00694655,0x00599760,0x00582b66,0x0047c84d,
-0x005149b0,0x004867f9,0x001ca72d,0x001f97c8,0x001dc3ab,0x003e9b5e,0x00043a63,0xffd8cb61,0xff9ffe67,0xff62e5fb,0xff457ce5,0xff3e7d47,0xff7ac76b,0xff859a2f,0xff798436,0xfeed5edc,0xff0bc5e6,0xfecca3a4,0xfeee6b94,0xff1a0845,0xff4b7276,0xff8d9660,0xffe0dfac,0x0024bcc0,0x0006c7cf,
-0xffe5fd6d,0xffd6a137,0xffe96004,0xfff810bb,0x000395c5,0x00206ba3,0x003a3763,0x005862ba,0x002bbc30,0x000bec32,0xffd9402b,0xffd4e4b3,0xffe1e8ff,0xffed0e4c,0x000b93ac,0x0022e5e7,0x00438b3f,0x00404df6,0x00386f9a,0x004eac6d,0x0016259d,0xfff40fd4,0xffbbae1a,0xff8dcb98,0xff608d47,
-0xff3da319,0xff150dac,0xffc4a366,0xffa30408,0xff93f720,0xff7fb48d,0xff66dc32,0xff505c08,0xff3129bb,0xff227f79,0xff31d69b,0xff4b6447,0xff59c50d,0xff64acdd,0xff6ba91d,0xff6d8a27,0xff74e44d,0xff7afc4a,0xff889fb6,0xff943936,0xffa7d727,0xffb64e1e,0xffaaf96f,0xffce7713,0xffdb35e1,
-0xffe494c5,0xfff14f61,0x000d62cf,0x000521b5,0xfffe0ad3,0xfff7d4c6,0xfff7dbe9,0xfffbbef8,0x00065c34,0xfff42d6a,0xffea6943,0xffe4c0f2,0xffce3817,0xff917771,0xff9fa2cc,0xff98f51b,0xff9389ed,0xff90e05b,0xff8d6341,0xff8b91ca,0xff813320,0xff895da6,0xff89c65f,0xff8c4132,0xff8eac71,
-0xff92b225,0xff98140e,0xff9ab32f,0xff9c592c,0xff9c0a10,0xffa00e12,0xffa09c27,0xffaa7250,0xff9635b0,0xff8d6e42,0xff795eac,0xffae9f75,0xff9e6920,0xff8d81e6,0xff8eaa42,0xff93f341,0xff94f15c,0xff98b394,0xff978150,0xff9801f2,0xff9b72f1,0xffa513fd,0xff833a43,0xff8d75e1,0xff93ffd6,
-0x00310bc3,0x002e63a3,0x002b8eb6,0x00307f97,0x002c2faf,0x001df2f2,0x0024b71e,0x0026d85c,0x002d00bd,0x00289d52,0x0029e34e,0x0035a256,0x0028d082,0x00289de1,0x002c97ff,0x002f245a,0x002fa0a4,0x002ffe2e,0x002ba081,0x002ab09d,0x0027da85,0x002efcf8,0x0031b0e1,0x003c954a,0x002a4e84,
-0x00312b1d,0x0036046f,0x0045c6a0,0x004763ab,0x003cb8d8,0x003e110b,0x0039fb5d,0x00319ee5,0x0031aac1,0x002cec6c,0x003435f1,0x002f194b,0x0026c423,0x001f380c,0x002955ab,0x00237115,0x00028b0f,0x000b70cc,0x001395a5,0x002f6ede,0x002ad35c,0x00336233,0x004f06dc,0x00259a31,0x001da754,
-0x00275ff7,0x002fd049,0x00354808,0x00351f0d,0x0029ceae,0x00260e88,0x0025c90e,0x00387cc2,0x0037d756,0x0041bfa2,0x002d0a9a,0x002f578d,0x0035527b,0x005bcf49,0x00640c07,0x004522fb,0x0046593f,0x003a16bd,0x00231099,0x002cbeb3,0x002f3945,0x0031c92f,0x0028a24c,0x0029ea36,0x002f0672,
-0x00470ed7,0x0029bd7c,0xffdd4229,0xfffbaf95,0x000857e9,0x003686de,0x002186b0,0x002755f6,0x006b6af7,0x001932d6,0x001a9d53,0x002bb2ae,0x003d5f44,0x003fe6e5,0x003dec87,0x0028b8f2,0x001d8448,0x001e67aa,0x003426fa,0x003bf2d2,0x00513bbc,0x0029c3b3,0x003681c0,0x00368020,0x008b7e66,
-0x0094af16,0x0059e684,0x00654069,0x004e2688,0x002a7912,0x0032faa9,0x0028156b,0x00299f8e,0x002095a9,0x000a5ca6,0x0008cde5,0x001a71b1,0x00015a6a,0xff8e8929,0xffa11fc6,0xffc49b07,0x00347c60,0x002fd28e,0x005dc3ea,0x00bd2338,0x0026d216,0xfff6959b,0x00017d48,0x00261454,0x003d1eda,
-0x003648d7,0x0015124b,0x00060c71,0x000daddd,0x00429b62,0x0058a4c9,0x009b5c3c,0x004cacbb,0x002e8b7a,0x0002fedc,0x007f6923,0x00aba155,0x005a8028,0x0064db50,0x004022f1,0x0006a7b2,0x001dd25b,0x002aaeee,0x004f1bae,0x00319515,0x001f1c6d,0x00abd695,0x00c3caa0,0x00a6318d,0x00cbfb4f,
-0x00e05e07,0x00cfdb47,0x008a8b1e,0xffcae47b,0xff644397,0xff50ce9b,0xffc4e3b5,0x005aa6bf,0x00fbc737,0x00a0a67f,0x007e7c7e,0x00824e83,0x006b82c7,0x0059dfb6,0x00263c33,0x0013e7f3,0x00237de8,0x00504921,0x00550118,0x007743f3,0x00b87d01,0x002d2da0,0x0007b8bf,0x004d6487,0x00f48e40,
-0x0110522a,0x005131b8,0x00428219,0xffd9bf3b,0xff1b9149,0xff8e16bb,0x009af873,0xfdd984fc,0xff8dd4c7,0xfff17086,0xff998af2,0xff812d9a,0xff6b9d69,0xff365b00,0x00757224,0x00cda66a,0xfff01030,0x0042950c,0x006096ae,0x00885368,0x008a439e,0x0084348c,0x008a7cd3,0x007547d0,0x00689caf,
-0x00437bdb,0x004c4aed,0x0048b841,0x00425aa9,0x00ac430c,0x008f64af,0x00526bd3,0x005bf8e2,0x007e80b5,0x00aaa64a,0x00354e93,0x0013d841,0x00199fd1,0x005de99e,0x00810b71,0xfff300c4,0x0158e2ea,0xff7cdd65,0xff82dc7a,0x0064e460,0x0097e3e3,0x00bb6a44,0x0028f50e,0x00185ce1,0x001f2d82,
-0x008d1527,0x00b8c827,0x005b982f,0x00879342,0x003c663d,0xffdabdff,0xffb713a5,0xffddff0a,0x005a318d,0x001c516c,0xfff8b6b7,0xffd1d3e8,0xffda1951,0xffcc0554,0xffbfa9a5,0xffe6b1aa,0x0005c999,0x004a4e4b,0x0037aa6d,0x0024cefb,0x002f8f3a,0x002af08f,0x003d0d2e,0x001a84ee,0x00522822,
-0x00773700,0x00192b7e,0xffa040ec,0x0088d056,0x009c106f,0x00612997,0x0056e40d,0x00828a0b,0x004f8538,0x0023b348,0xfff1c7e4,0xffcd3288,0xffb03333,0xff56ebc2,0xffb1da34,0xffef9e2a,0x0018022b,0xfffdff14,0x001b44f2,0x0061f00f,0x00500518,0x004bcd66,0x003281be,0x0019d2dd,0x001315cd,
-0x001884f1,0x0045e7da,0x003aabe8,0x00249824,0x00265bdc,0x001dc4cf,0x001cc042,0x0009b646,0xfff8bd0d,0xffc9eedb,0xffee42b5,0x0006d6ec,0xfff743c3,0x005b5d6e,0xff2a291b,0xff69482d,0xffa171c9,0xffca9da0,0xffdf010a,0xffd1f64e,0xffd4d359,0xffe9ffa8,0xff67dc99,0xff621a29,0xffb8f8aa,
-0xffc39a76,0xffdf5c4c,0xfffcace1,0x003bc185,0x004f7c1e,0x0053b816,0x000d8dc0,0xfffdda71,0x00237fe4,0x002a48ee,0x002268de,0x0002bb68,0x0025ba5e,0x001e4ee3,0x001d600c,0xffe899bd,0xffcbe904,0xffdd6d28,0xffd68340,0xffad0ee4,0xff5cccb8,0xfefa2454,0xfea03950,0xfe55fa60,0xfed5fd0c,
-0xfeeeb776,0xff049fcd,0xff2d41e9,0xff27bde3,0xff254813,0xfeda5360,0xfed00880,0xff129d64,0xff6b95cf,0xffa45db4,0xffa9fdb5,0xffc7fa87,0xffe2444a,0xfff14c54,0x0023cd7e,0x003c1504,0x00732496,0x00435dc6,0x003cb264,0x004e56b0,0x00537681,0x004b9b58,0x001fec13,0x00236041,0x0014daf5,
-0x0021d3d9,0xffc6ca03,0xff96202a,0xff7c1ba4,0xff4c7a25,0xff33aedf,0xff2caf92,0xff59308a,0xff7d78fa,0xffa7ec63,0xff37fcfd,0xfecfddc8,0xfea82c6c,0xfed7f370,0xff068615,0xff4458be,0xff926302,0xffe02d31,0x001ec964,0x00094afd,0xfffbcfc9,0xfff2358b,0x000f92d2,0x00248069,0x0039301c,
-0x00535270,0x0069e60b,0x00888f83,0x0060406e,0x0048f818,0x001ca9eb,0xffffd19a,0xfffd4e1e,0xfff48ad4,0x000d6477,0x00212aef,0x0040e0ef,0x0032ef64,0x001aeae2,0x001ce7d7,0xffec7228,0xffd0d468,0xffa3315b,0xff69e553,0xff29a297,0xfef596ec,0xfed9df9c,0xffac2c70,0xff916b78,0xff902655,
-0xff89aef6,0xff7db574,0xff7394c4,0xff66ead8,0xff699db4,0xff7b51c2,0xff925215,0xffa293d8,0xffae7a9c,0xffb8de41,0xffc251fb,0xffbd330f,0xffb9d28f,0xffbb527b,0xffbe0256,0xffc52093,0xffca3ce8,0xffc67db5,0xffe7656d,0xfff52e36,0xfffe6541,0x000b0677,0x00249252,0x00120987,0x0005918d,
-0xfff8bcff,0xfff19f8d,0xffedc33d,0xffef8ed2,0xffdf5ef2,0xffd89723,0xffd1be10,0xffbfd5e0,0xffb99cf8,0xffc374e8,0xffc2d04a,0xffc2c7e4,0xffc55b9e,0xffc6f8f4,0xffc8dba8,0xffc4be57,0xffcad394,0xffcd0e0f,0xffd0cc40,0xffd4a1da,0xffd8d9f5,0xffdfaa4e,0xffde0f95,0xffdd7a8b,0xffdab749,
-0xffdb19a3,0xffd90da4,0xffdc93f9,0xffcd4603,0xffc555e2,0xffb2504f,0xffe3df38,0xffd5cb5f,0xffc8888d,0xffc5fad3,0xffc7cc96,0xffc57203,0xffc4999d,0xffbf5d23,0xffba213b,0xffc17464,0xffcb150e,0xffa74327,0xffb31aad,0xffe17149,0x00250688,0x00285032,0x0026e73d,0x0024036b,0x001dfb6a,
-0x0011e5b9,0x0017b05b,0x001a7d6a,0x0022ac57,0x001ea4ca,0x001fb652,0x002c0b25,0x0019024d,0x0016b7db,0x00190273,0x001f816a,0x00225e83,0x0025a7b7,0x00222839,0x0021a1a4,0x001ea487,0x0025dcd0,0x002752d8,0x002f2699,0x00200248,0x002a244e,0x003230e7,0x003f2c82,0x004079e8,0x00364ea6,
-0x0036bf84,0x00332351,0x002c0124,0x002c0712,0x00265df5,0x002c30f9,0x0028b13a,0x001d78ae,0x001fe955,0x001b62e9,0x0011a0ef,0xfff4f402,0xfff907f9,0x00044b49,0x0024525d,0x0022e190,0x0028184f,0x0043eeb7,0x000a2ee0,0xfffa1b37,0x000342d5,0x00124a87,0x0020d586,0x002ab873,0x0023da46,
-0x0020b660,0x001cb3d5,0x002a6008,0x002774f7,0x0028d29e,0x0021857d,0x0029c9bc,0x00365c91,0x0055f039,0x005bb648,0x003f6c43,0x003dba64,0x00334a73,0x0020f1d2,0x002cf5aa,0x002f94e9,0x00297830,0x00219dff,0x002eaf4a,0x003febca,0x0036c98f,0x000e3603,0xffd118c9,0xffe3cb9e,0xfff5425f,
-0x002daaa3,0x001dbfb9,0x001f259b,0x005f39d9,0xffefa362,0xffe5317e,0xfff525d6,0x00170a8d,0x0027306d,0x00364aab,0x0025d130,0x001d7bcb,0x00188767,0x0028dca3,0x002b0dfe,0x002bbc7a,0x001e14e9,0x00365fb2,0x004610cf,0x008dcb71,0x0096c03d,0x005ed0cc,0x0063b64e,0x004e96b2,0x002eb8a4,
-0x003cfbe0,0x002e8632,0x0023b99c,0x00258690,0xfffd1b31,0x001aa837,0x0015dfa4,0xfff0e410,0xff88c282,0xff7dcf62,0xffaabd9a,0x002c51d7,0x003101e8,0x004b5aa7,0x00acc3a4,0xffef8ea4,0xffa245c7,0xffad08e1,0xffdf4017,0x0017daf4,0x0031b54f,0x0019dadc,0x000927e6,0xffff1d1c,0x0023ba96,
-0x0039d76f,0x006f0607,0x0043ae09,0x003162a5,0x00205cca,0x0091abc9,0x00b4f72f,0x005626ac,0x005c2921,0x00448cb9,0x0013cbce,0x0031b632,0x00392d00,0x003e01f1,0x0023a59b,0x006d77a4,0x00bd2a11,0x00795256,0x004e66b7,0x0082d311,0x00f81d9d,0x00f65713,0x00612e0c,0xfff1c1bd,0xff8101c0,
-0xff4e239c,0xff7550f5,0x00122ce3,0x011f73d2,0x00b3555d,0x008abf9c,0x0084c5ba,0x0070ef77,0x0068c97f,0x00497c12,0x00361110,0x0037a5d8,0x00470da8,0x0041a8d7,0x005d8426,0x00abf26a,0x002c10cb,0x0018437f,0x0083abb8,0x010081aa,0x00f0215f,0x003e9a3b,0x00370d27,0xffdbceaa,0xff43e8d2,
-0xffee5f42,0xffcc40d0,0xfe1b2c32,0xffe941f6,0x00472ca7,0xffa47480,0xffa52b52,0xffa1e41b,0xff7a9cb2,0x0073a2e5,0x00bea36f,0x002556f4,0x002d5168,0x004528a1,0x008df516,0x009b6835,0x00a4c9bb,0x00a6da74,0x0064794b,0x0048f88d,0x003ddef6,0x0031bdc4,0x003047b4,0x00363348,0x009457e2,
-0x008ca41a,0x004f671e,0x0075eb30,0x00952875,0x00a09784,0x00260754,0x001eed90,0x005340d8,0x0061eeee,0x006e0317,0x002e59a3,0x008ff569,0xffc96c70,0xffd1dc3b,0x009aa16a,0x00ba6c70,0x00ac8d87,0x0019e9f0,0xffd8d330,0xffcab439,0x00220640,0x00692a8e,0x00755d3a,0x006fa929,0x003f1018,
-0x000041e6,0xffbe6bfa,0xffd0f47d,0x005e3a4e,0x0003d4f8,0xffdcf07d,0xffcebfb3,0xffd07d6f,0xffd02499,0xffcc121f,0xffd353b6,0x00082da4,0x00554a82,0x0037b207,0x0027c08f,0x0030e3ec,0x00344063,0x00388e3c,0x00059a6e,0x006bed5e,0x00890df1,0x002d262a,0xffe4f3d9,0x00655835,0x008b4dac,
-0x006fcfa1,0x006ca5e9,0x00679bf6,0x00668a99,0x0064c9e9,0x004af257,0x00074351,0xffe02414,0xffb0fff8,0xffb4dcd3,0xffd06d4d,0xffee92ae,0xffed2987,0x000cb85b,0x005604f4,0x004d2e86,0x004ef243,0x0037c5e9,0x000b7cf3,0xfffc8fdc,0x000fcd90,0x0026ccc1,0x002587bd,0x00210f8f,0x0034434f,
-0x002dbaca,0x00187590,0x001847ab,0x000b4370,0xffc83dc0,0xffde90bd,0xffed165d,0xffd37f20,0x002de060,0xff23f462,0xff7ca467,0xff89a4d2,0xffbbd5fb,0x00114cf1,0xfffcd139,0xffdbaf8c,0xffb94c85,0xff4a54b7,0xff542f75,0xffb89353,0xffbe06ed,0xffea47a7,0x000313dc,0x0031032d,0x0037c0b7,
-0x0026da3c,0xfffe28c3,0xfff75792,0x002049bf,0x000edb69,0x000adcd2,0x0005b4d2,0x001c13ff,0x000c09a6,0xfff1eec9,0xffe7c0d0,0xffde2055,0xffe92943,0xffd9bc65,0xffa30a24,0xff53f057,0xfeefcdcc,0xfea83a40,0xfe996572,0xfee55d50,0xff3d8ab9,0xff437f35,0xff53c5d9,0xff3395b2,0xff06b06f,
-0xfee5bc18,0xfefb32b0,0xff441476,0xff6a13ee,0xff91a3f9,0xffb43a0c,0xffc8b015,0xffdeafdd,0xffeed23c,0x001eee53,0x003a101f,0x0047c954,0x0025c631,0x0023e7c0,0x0046379b,0x00471951,0x004155a8,0x00257b2e,0x0028a263,0x000f8dab,0xfffa2a18,0xff96be7e,0xff680f8f,0xff635d49,0xff437caa,
-0xff2f1740,0xff22bd53,0xff38a02c,0xff67c3c5,0xffafddb9,0xff6ba014,0xfedb12d6,0xfecbdefc,0xfeefdf00,0xff08f5b7,0xff2dd8d2,0xff6ce844,0xffa39cac,0xffd76ecd,0xffdab01a,0xffe4fba3,0xffed2b44,0x0018f227,0x003bc08f,0x005a4148,0x00603283,0x0068aef0,0x0077bcb8,0x00657531,0x0059b8ae,
-0x004768d8,0x002bd12d,0x001b857a,0x00092d45,0x0010c355,0x001c660e,0x002fae02,0x001eec37,0xfff49516,0xffeb9be4,0xffca66e5,0xffc2ee65,0xffa91129,0xff714612,0xff3023cc,0xfefb5e6e,0xfee90144,0xff943299,0xff7a752b,0xff849c9d,0xff8d7ccf,0xff93f34c,0xff987ed8,0xff9ee1bd,0xffae5ba0,
-0xffbe426f,0xffd0d0ff,0xffdf2daa,0xffea1ef5,0xfff42fea,0x00046b3b,0xfffa3509,0xfff33aa1,0xffed3e8f,0xffeb017b,0xffec1a91,0xffe94498,0xffdab2ce,0xfff480b7,0xfffe26fd,0x0005f918,0x000b9f54,0x00197b60,0x0002fe1d,0xfff733d4,0xffebdc28,0xffdf1f18,0xffd5d647,0xffd412d7,0xffc59c06,
-0xffc172ef,0xffb74724,0xffa6d435,0xffd6c69a,0xffd00b3f,0xffd7b3ea,0xffdb9409,0xffe0dbbe,0xffe60cf4,0xffea7315,0xffec0c6a,0xfff10a37,0xfff546a8,0xfffaad17,0x00000a0c,0x0004d66f,0x000b8fef,0x00088a34,0x00084124,0x00065987,0x0004b3f2,0x00017de1,0x000330ad,0xfff8c58c,0xfff55c41,
-0xffeaed23,0x000374fc,0xfffe330e,0x00005785,0xfffc258b,0xfffaea8c,0xfff5381d,0xfff1e735,0xffea3fc0,0xffe1ec68,0xffe10640,0xffe04f89,0xffd22032,0xffd498a3,0x0007bfb8,0x0018106d,0x002133d6,0x0022612e,0x00183fd9,0x00107fbd,0x000563f2,0x000a0fdf,0x000d445d,0x0016e974,0x00125f37,
-0x0012937b,0x001dfd6c,0x0007af3c,0x00036c67,0x00032872,0x000d32d2,0x0012eb41,0x001a4e18,0x0018e62a,0x001927ea,0x001586e1,0x001aa697,0x001a608f,0x001dbbd0,0x0013674e,0x001e9862,0x002b2d33,0x00349d5e,0x0035b4b7,0x002ca22a,0x002c55de,0x00295abb,0x00225617,0x0022b707,0x001dfe05,
-0x0021cce1,0x0020969b,0x00173fb0,0x00224f98,0x0010c5b4,0x000252f0,0xffe85f07,0xffe92704,0xfff4bed2,0x00153642,0x00158cf5,0x001834f8,0x00303d1f,0xfff05a2d,0xffd9b0c3,0xffdd8196,0xfff0a728,0x00075db5,0x001e36bd,0x001f70a3,0x001efbaa,0x0015f09a,0x001ddebb,0x0016a959,0x000e1cef,
-0x0012711b,0x002056aa,0x0035cee6,0x004d513c,0x00518fcc,0x003971a4,0x0036478b,0x002c7194,0x001b5c86,0x002c9bd6,0x00303932,0x0021f528,0x001d546f,0x003bbd0a,0x0055a6b5,0x002c3560,0xfff9fe50,0xffc69702,0xffceaf7f,0xffe07067,0x001f1fbd,0x000e8375,0x000baded,0x0042721f,0xffc6b946,
-0xffaf6bc2,0xffb63c54,0xffe4d7f8,0x00056b36,0x002c3139,0x0028292f,0x00264f83,0x00183f2f,0x0021fc65,0x001b691f,0x0005b574,0x000e5976,0x00304d78,0x00521547,0x008b5d45,0x00946777,0x0062e1df,0x006251d1,0x004fdd56,0x002daf31,0x004578e3,0x0036c2bc,0x002383c6,0x0030dfce,0xfffe2e42,
-0x003a2d4f,0x00161cd8,0xffe2f16f,0xff890c36,0xff677639,0xff951f25,0x0018555b,0x00207b8b,0x002f019e,0x0087b91d,0xffc21854,0xff5ad3d0,0xff5652cb,0xff8d4896,0xffe2a04a,0x00284a10,0x00273511,0x001e5b27,0x000452af,0x0017bf18,0x001e73d2,0x00338024,0x00324d7c,0x00360891,0x00423e4e,
-0x00a62460,0x00c0f84d,0x0061a202,0x005d9877,0x004d6d0a,0x001df3b3,0x004d751c,0x005767a7,0x0039c2f1,0x0022c62c,0x00c430f9,0x00e00ebc,0x004cdbd2,0x00149e9c,0x004293a2,0x00fb9a95,0x00fb65c3,0x00260d7e,0x000b9868,0xff921e19,0xff2ab1b4,0xff2bd5f0,0xffc94f64,0x010d74f2,0x00b69444,
-0x00937da9,0x00860167,0x006e0d5a,0x0069935f,0x00625e10,0x005bd709,0x00563e8a,0x00503b31,0x003975a3,0x0046741d,0x0095cee8,0x00282a61,0x002d727d,0x00ba346b,0x00f8e8b5,0x00c5b089,0x003f3d66,0x001c0bba,0xffc6ed7d,0xff736b3e,0x004c4934,0xfee64a1c,0xfe68ca4a,0x001afb41,0x00790b81,
-0xffaf19c4,0xffd9eac7,0xffd6172c,0xffa50e3f,0x004b481f,0x008d4b2b,0x005e312a,0x0028a8fe,0x002ba031,0x0073beff,0x009a5410,0x00b15f4b,0x00afad47,0x0056162a,0x0030ba6e,0x00393f4a,0x001bbb5a,0x001cbc23,0x002f10f6,0x007021a5,0x0079e2b2,0x0048e0b2,0x008d7340,0x00aaba29,0x009301fb,
-0x00276eb1,0x002f8711,0x007a799a,0x0055fe98,0x00664f1e,0x00973a2e,0xffad4692,0x0042a1b1,0x004e0919,0x00df7918,0x00d5b570,0x00a0d1ea,0x000bf304,0xffa1a53f,0xffa1e999,0xffa87e81,0xfff62119,0x006e211f,0x0045e80c,0x003bb07c,0x0007a84d,0xffe7ae45,0xffe89249,0x0045ab34,0xffecf023,
-0xffcca4f3,0xffd8b250,0xffd15f1b,0xffdcb061,0xffe6c31c,0xffd23763,0x000e8cd2,0x005af731,0x0037bd06,0x002a17e1,0x002d85b7,0x003b8b31,0x0032fcfd,0xfff8aa1e,0x006b4b9a,0x0086ea28,0x004b5e96,0x0046c546,0x0021a69c,0x00544bbf,0x005723cb,0x0065e56b,0x0067a712,0x008c75b3,0x00aa6c5e,
-0x00c23668,0x003f8ed7,0x0003a1f8,0x0010782f,0xffbcb958,0xffbc8663,0xffd2278f,0xfff1079e,0x001468cb,0x005931c5,0x005a0a2d,0x0058da5b,0x003d617a,0x0003ce6c,0xfff2406e,0x000eb18d,0x000afcd1,0x000e6ada,0x0019ab80,0x003f160c,0x00416452,0x001c5d49,0x002b99be,0x001b13f9,0xffc8be1d,
-0xffcf4ea4,0xffd8959f,0xffb713d6,0xfff1c8fc,0xff323fa5,0xff970287,0xff9cff5e,0xffcee449,0x002b953d,0x000718fc,0xffc3d7b2,0xff6f8528,0xff480856,0xff6349f8,0xffbe1869,0xffc5614c,0xffed3612,0x000dea7b,0x001fd20c,0x00196318,0x0003e810,0xfff2e5c8,0xfff5bdc9,0x001ca051,0x000470a0,
-0x00009183,0x000467b5,0x0011f8c1,0xffff5035,0xffcec905,0xffe4aba3,0xffe3d8b5,0xffe34df9,0xffd112f8,0xff981c1f,0xff546dd4,0xff02d900,0xfed40a24,0xfef3c18c,0xff06272a,0xff69db12,0xff6b21fe,0xff6f807b,0xff4a9afd,0xff128562,0xff2ddc6d,0xff52859d,0xff6cdfb4,0xff9ab1bc,0xffadcf7e,
-0xffb8a3ec,0xffc866f2,0xffdcf7fb,0xfffc704e,0x00215e68,0x00309673,0x0013aafb,0x000e5706,0x0014d84f,0x0037ae85,0x003b594d,0x0038a3d0,0x0029b436,0x002927be,0x00066de9,0xffd00288,0xff796a86,0xff552115,0xff5c443a,0xff43ff24,0xff2ce907,0xff1655ce,0xff16012b,0xff3d8ea2,0xff841a25,
-0xff788a62,0xff175d9f,0xff1268c6,0xff22fe42,0xff25cee1,0xff2cef43,0xff5124d1,0xff6bccab,0xff8af2e4,0xff9fa021,0xffbbad71,0xffd7a20a,0x000e8087,0x003d6cbe,0x006a79e6,0x0054560e,0x004a32e6,0x004456b2,0x004661f8,0x004319a9,0x0043f696,0x003a7575,0x003023bb,0x0029255a,0x0016551d,
-0x00123188,0x000e999b,0xfffc463d,0xffc3ea3a,0xffb0c546,0xffa66b82,0xffb88d9e,0xffb9619c,0xff8fbce1,0xff611470,0xff3af5c9,0xff29b883,0xff737f60,0xff5a8fa0,0xff7077ca,0xff8606ed,0xff9d4016,0xffb003a8,0xffc6c134,0xffe1594b,0xfff12da3,0x00013e1d,0x000e528a,0x00196d94,0x0023796a,
-0x0038a67b,0x00312d54,0x002ec339,0x0028a115,0x00258f3e,0x0025b9a6,0x0021bb14,0x00026db9,0x00086ca6,0x000519bb,0x00030b54,0xfffb9f54,0xfff755f6,0xffe2c1fc,0xffd9a0ca,0xffd15d21,0xffc1c2bc,0xffb221f6,0xffae2d5d,0xff9eebbc,0xff9b2bba,0xff8f2e18,0xff7ed7fc,0xffd46cb4,0xffc32dfa,
-0xffd16f12,0xffd7f3c1,0xffdf0678,0xffe67b89,0xffec88be,0xfff21e22,0xfff76c74,0xfffe039d,0x000551eb,0x000cbe5e,0x00133131,0x001a7bc9,0x00171b24,0x0016c41d,0x00163548,0x001467a9,0x00112318,0x0013eafa,0x000b1d1d,0x00097cff,0x0005747c,0x0004ab50,0x000466a9,0x000f0439,0x000b8a34,
-0x0008e8a3,0x00023dd8,0xfffe10f6,0xfff6dc58,0xffee70b6,0xffe27fab,0xffd8c41e,0xffe0c643,0xffd7bc17,0x00030b47,0x000ad120,0x0019b645,0x001cac2d,0x000ce25b,0x00039ccf,0xfffa2e1d,0xfffc4b11,0xffffa6e5,0x000c0ac5,0x000581f4,0x0004b59c,0x000dda78,0xfff86de7,0xfff2d226,0xffef5faa,
-0xfffadca6,0x0002b3ee,0x000df057,0x000f2f01,0x00107150,0x000b9e21,0x000ed63c,0x000dfd37,0x000df596,0x0006d18c,0x001281b5,0x00239c3a,0x0029b27e,0x002ad67b,0x0022daa8,0x0022ce92,0x00203698,0x0017a2da,0x00199547,0x0014b949,0x0018dc3e,0x00192511,0x0016a695,0x002569b8,0x0007af74,
-0xfff54f22,0xffdfe602,0xffdaa0dc,0xffe4be7f,0x0008809a,0x0004d4c4,0x0005a746,0x001718ef,0xffddf897,0xffc467cb,0xffbfcc80,0xffd2b460,0xffed99ad,0x000f498a,0x0019b356,0x001c3bbf,0x000f35db,0x0012c8a3,0x0005977b,0xfff7cb8c,0x0002e5db,0x0014bda2,0x00322ebd,0x0041ee8e,0x004585af,
-0x003296f4,0x002f02d1,0x00254bbb,0x0011c3be,0x0029e726,0x002e8e87,0x0019af07,0x00196d00,0x004b03c3,0x006c7838,0x00227314,0xffe95f31,0xffc16dbc,0xffbb2d27,0xffca6d29,0x0016af27,0xfffb5e45,0xfff5c9a5,0x001c2912,0xffacc88f,0xff8c5cd0,0xff839c82,0xffb3fb0c,0xffe0aba9,0x001c9b9e,
-0x002a2b8d,0x002ec159,0x001881d5,0x0018bfb9,0x0009d24b,0xffe79db7,0xfffcf5d5,0x0025a223,0x0055555b,0x0082927e,0x008b27cd,0x00628201,0x00601a19,0x00509725,0x0024f737,0x004aa8a6,0x003edd8b,0x00244d98,0x003cb0ca,0x00165695,0x0064b89e,0x00165d18,0xffd739e4,0xff9356df,0xff5b28b1,
-0xff81d39f,0x000e3ece,0x0005f39d,0x000e01f3,0x005246d6,0xffaadc5f,0xff398bea,0xff1c6c26,0xff4960e3,0xffab2915,0x0015139c,0x00336a1b,0x0035eee0,0x000dd89b,0x001183b7,0x00022eb8,0xfffaa115,0x001acda6,0x0036e996,0x005da47c,0x00b77fe8,0x00cd27ab,0x006ebf64,0x0062a9a1,0x00556b4b,
-0x00225153,0x0065df51,0x0073e9b2,0x003761a8,0x002acc31,0x011522ba,0x00f8e5be,0x00363df1,0xfff1faf7,0xfffde4ae,0x00dabddb,0x00ded010,0xffea2a11,0x0018201c,0xff989cb7,0xfef9ad90,0xfef9163e,0xff8917ef,0x00bdee38,0x00a27ccf,0x0091ea81,0x007e8bd0,0x00651b11,0x005e24ef,0x00676c7d,
-0x00767754,0x006ec775,0x005f0d3f,0x00384e44,0x0033b51c,0x007dc190,0x001f3ba0,0x0040cd98,0x00f17ebc,0x00e58379,0x0097b832,0x0040e2cd,0xfff67b80,0xffb05dd5,0xffb3f148,0x00a30fc6,0xfe230e1c,0xfeb472d4,0x001e0705,0x00832ae2,0xffcf7332,0x001864fc,0xfffad696,0xff898c4c,0xfff694eb,
-0x0041dae7,0x0089fc04,0x0029e9a6,0x0018f003,0x0049dc4d,0x008ace03,0x00add186,0x00a1ab86,0x0040fcee,0x00196775,0x00344966,0x0011f7dc,0x0012ab3e,0x00293986,0x0048630b,0x005d1261,0x003f6d18,0x009b088f,0x00b5c966,0x00809925,0x002c4609,0x003c3852,0x0083f79d,0x0050b1a1,0x007544a1,
-0x00fa5a0e,0xfeec41b6,0x00cc217d,0x00e1d002,0x011e7958,0x00e9e97e,0x009c1497,0x001e804e,0xffa54633,0xff9f17ac,0xff5f7c51,0xffa11281,0x006159fe,0x0021a76c,0x00398739,0x00223b72,0x0006d637,0xfff49595,0x00294a50,0xffe3c7fd,0xffcab9ba,0xffe4d114,0xffdd2adf,0xffeaff3d,0xfffdcbe1,
-0xffdb3c7f,0x00161554,0x005aa199,0x0037b7df,0x002b815b,0x00276beb,0x004574c8,0x0036a871,0xfff6d09c,0x0066d0e7,0x008427ce,0x0071afb3,0x00afd022,0xffd75621,0xfffe2bb8,0x002bc0cf,0x0055fdea,0x0064e3af,0x00b2e061,0x00e4f781,0x011cb206,0x00666b96,0x0016867d,0x005f72dc,0xffc02c45,
-0xffa5b595,0xffcf91bd,0x000309d9,0x0022aa68,0x005863c5,0x0060d23c,0x005bce90,0x004193db,0x00054e28,0xfff32ba1,0x000e58cf,0xfff9a19f,0xfffcba61,0x000abe6f,0x003fe48b,0x004ea317,0x0024cb3f,0x0036f78e,0x00214979,0xffd33a5b,0xffd12314,0xffdbe8bd,0xffad8959,0xffc1cd9a,0xff5aada4,
-0xffaa6e22,0xffc05c5a,0xffe9565c,0x0020da0d,0xfff83019,0xffa4af61,0xff322d3a,0xff564e36,0xff83102d,0xffd1e543,0xffe2c3ba,0xfff8c1dc,0x0011c769,0x000aa6cf,0x00009854,0xffefd4b5,0xffeec126,0xfff88959,0x00144804,0x0002babd,0xffff366e,0x0000955e,0x000ac995,0xfffab050,0xffb973d3,
-0xffdb6302,0xffd8bfad,0xffd11bef,0xffc68b25,0xff992dfe,0xff682d7b,0xff326eac,0xff15a8f4,0xff3ab85b,0xff3ad100,0xff88bf52,0xff8df42c,0xff8d233c,0xff766336,0xff5de42d,0xff766e91,0xff970622,0xffa12fc1,0xffcb2ff8,0xffc892de,0xffb8d09f,0xffd069bb,0xffea1da7,0x0014796e,0x0020f4d9,
-0x001b3b77,0xfff81670,0x0002dbd4,0x000cd88e,0x0029bf4e,0x002ec70c,0x002fb080,0x0030efa2,0x001e5fee,0xfff2d942,0xffae0d60,0xff700cc0,0xff569fec,0xff5c2e46,0xff4494c9,0xff24d479,0xff02b5ba,0xfefe38ec,0xff1aece1,0xff4b573b,0xff7a30a1,0xff53708d,0xff5215e1,0xff58de57,0xff50827d,
-0xff49ff81,0xff562d96,0xff5bd2f0,0xff678e6d,0xff81e10c,0xffa56203,0xffc731a3,0xfff91f55,0x00264e83,0x005a3c8e,0x003bce63,0x002af7be,0x0019116f,0x0025dc7a,0x002aa768,0x0034ee28,0x003840d3,0x003bb271,0x00443235,0x0015eac9,0xfffeb329,0xffdbed2c,0xffcb7a3c,0xff8fab0d,0xff76cc99,
-0xff80b39e,0xffa3df72,0xffb860f6,0xffa16a67,0xff8cc6e0,0xff7a3f01,0xff67ecb5,0xff560fac,0xff4bf5f6,0xff68460e,0xff82b9e2,0xffa06aa7,0xffbbcd9b,0xffda6a0b,0xfff86312,0x0005d14e,0x001126dc,0x001c1c4f,0x002717df,0x003119ce,0x00461fe2,0x004319f3,0x0046a0c2,0x0044f9b4,0x0043ed0f,
-0x0042e510,0x0042fd14,0x00295964,0x0015b39b,0x000672c5,0xfff82525,0xffe980dc,0xffd6f912,0xffc64b96,0xffbd9adb,0xffb62f80,0xffa3a686,0xff8dfade,0xff84dee8,0xff76ccdd,0xff72f886,0xff696067,0xff5f0bdb,0xffc470b5,0xffb74433,0xffc522af,0xffcce3d7,0xffd4a583,0xffdbdb85,0xffe1fcf4,
-0xffe9f6d5,0xffee0851,0xfff4e871,0xfffbda51,0x0002d8ce,0x000904b3,0x000f7732,0x000d2a7f,0x000cd2f1,0x000d2221,0x000c67d9,0x000b2ab4,0x000d7953,0x000855ab,0x0005e075,0x0004a626,0xfff6ad6a,0xfff6992f,0xfffee665,0xfffbed5e,0xfff84cdd,0xfff18f12,0xffed0bcf,0xffe741de,0xffdf7e0f,
-0xffd1d07f,0xffc89cdb,0xffd2a265,0xffc8532a,0xfff15df7,0xffff1ed2,0x0011af18,0x00151bfc,0x00025c77,0xfff82ebb,0xfff11069,0xfff06ca9,0xfff3dc23,0x00033e68,0xfffabb4a,0xfff94838,0xffff4a54,0xffee5d47,0xffe884e2,0xffe1e52d,0xffeca208,0xfff4ffbf,0x0001a4cb,0x0005f5ee,0x000809f0,
-0x00027ef1,0x0003c408,0x000245e3,0x000008df,0xfffbdbb0,0x00068f15,0x0019a46c,0x001d0cd5,0x001e7cbb,0x0017a2da,0x0018e9a4,0x001680a0,0x000b64fd,0x001079e1,0x000b566c,0x000dc171,0x0010d13b,0x001788eb,0x0022c2cc,0xfffce85b,0xffe9179e,0xffd8ceed,0xffce851d,0xffd85bae,0x0000e6c1,
-0xfff73d88,0xfff7a0c8,0x00028db2,0xffd8ec7c,0xffbfa77f,0xffb10b9f,0xffbffaf1,0xffd98725,0xfffeb22f,0x0012c1dd,0x0017c1eb,0x00083025,0x0006a64b,0xfff58091,0xffe8a89e,0xfff41b8d,0x0007d845,0x002c25c3,0x0034613d,0x0038116b,0x002ad2ac,0x0027e583,0x001eb69a,0x0006b2bd,0x0025b6b1,
-0x0029749f,0x000d52ba,0x0013929d,0x0052d2c9,0x00758c02,0x0013cd1a,0xffda9ddc,0xffbff135,0xffab0101,0xffb9e4b3,0x0013917d,0xffec8ca6,0xffe7b56a,0xfffb64f3,0xffa970e4,0xff868eaa,0xff6bee85,0xff94897a,0xffc4229f,0x0007a9c1,0x0028db8e,0x0032a915,0x0016ceee,0x000be2e0,0xfff6d791,
-0xffd637bb,0xffeb8391,0x00164fd2,0x0050a8c2,0x007213b7,0x007aab99,0x005c0358,0x005d65c1,0x00502ca3,0x00187aa5,0x004a6695,0x003f580e,0x001bbaf3,0x003e3be8,0x002fc563,0x00759cc8,0x000aa964,0xffccf9fd,0xff9d83e7,0xff567d80,0xff783869,0x001169e8,0xfff117cf,0xfff7ab90,0x00285a0f,
-0xffb3cce7,0xff47a85d,0xff0f757b,0xff28dcae,0xff82a833,0xfff85ff4,0x00392ec6,0x00461f69,0x00133092,0x0005f8e2,0xffe4974c,0xffd0e8a7,0xffffcb2d,0x002fd571,0x006de0e4,0x00bff9cb,0x00d38bbb,0x00752817,0x0066e660,0x005bbba0,0x0024d86c,0x0077ea4c,0x0085b5e6,0x002a8578,0x002c869f,
-0x0148410a,0x00f8f18c,0x002e317d,0xffd83eff,0xffac93d2,0x00a452ac,0x00b17750,0xffb65ced,0x001bb51c,0xffa42180,0xfedba56a,0xfee95fea,0xff624cf8,0x00560caf,0x007f258e,0x0086cc75,0x006b5459,0x005de727,0x0057bb64,0x0061115c,0x00802c3c,0x007936e5,0x00645a5a,0x0038939a,0x0024d637,
-0x00640c96,0x00118264,0x004e2b91,0x01216638,0x00c7b984,0x0067fe63,0x00377ce0,0xffc73d11,0xff975c10,0xffeb0e60,0x00e6f92e,0xfdbbee18,0xfef419c4,0xffe8ee52,0x006251f0,0x00075a37,0x004b6072,0x0018c9d0,0xff6f3dbb,0xff9c32ac,0xfff17c5b,0x00ab0b3d,0x002cf799,0x000ca164,0x00372438,
-0x0073cfc4,0x0099bd29,0x0085fc58,0x002d85b8,0x0006ba02,0x002a3fe7,0x001263f3,0x00135436,0x0027c0fb,0x002aa411,0x0044128a,0x0039ff57,0x00a05521,0x00b39e56,0x0069155f,0x0031b7de,0x0040d507,0x0070456b,0x00583d47,0x008d53eb,0x012ad3b0,0xfe7d1f0e,0x0141281a,0x01583896,0x013a5d7e,
-0x00f27b40,0x00a56e5c,0x005da68f,0xffe79ffc,0xff9d5e85,0xff4543bf,0xff703e66,0x0042d9be,0x0005411a,0x0038ea72,0x00524b17,0x0032e541,0x00072293,0xfffc12dc,0xffdf866a,0xffcebd2e,0xffe4cbc3,0xffe958d4,0xfff72524,0x000b57d2,0xffe90d17,0x001df9c6,0x00543f9f,0x0033781f,0x0029e0f1,
-0x002347dc,0x004d43a8,0x0044892c,0x000e3c5b,0x006b33be,0x007d9022,0x00911b88,0x010501b6,0xff8ed91b,0xffabbe48,0xfffa6a20,0x0042a3d1,0x006383a7,0x00ce7eb7,0x010abf88,0x0133c294,0x0092a94f,0x0041d1c2,0x008b65d4,0xffdbdbb6,0xffaba4fc,0xffd40bc8,0x00194083,0x003659b3,0x004c7e4f,
-0x005061d3,0x00455f18,0x00387928,0x000a180d,0xfff7166d,0x00021d9a,0xffee9025,0xfff28c47,0xfffbbbbc,0x0035ce01,0x004da55b,0x002a2178,0x0034d8c9,0x001dd508,0xffe73197,0xffde23aa,0xffef0c8d,0xffbeebba,0xffa29300,0xff8b1e93,0xffca90d4,0xffdd7242,0xffef6c2a,0x00054294,0xffe6de52,
-0xff9a371d,0xff2a56a9,0xff7beb18,0xffacc31e,0xffe08e7d,0xffff494a,0x00108a9c,0x0019208b,0x00075b6f,0x00004606,0xfff2c3c2,0x000019ee,0x000aeabd,0x00103655,0x000412f2,0x0001eaee,0x0004f69b,0x00031592,0xfff3633c,0xffb326a2,0xffcb1ac8,0xffc43beb,0xffbdc4f6,0xffc21b65,0xffa7d25a,
-0xff8c8e00,0xff70a6cb,0xff58f9a5,0xff6076a3,0xff715eff,0xffa4b292,0xffa9d36b,0xffb0dcf3,0xffae3f29,0xffbb90d3,0xffb8c048,0xffd11e83,0xffe1a2e9,0xffe06cad,0xffd1e26f,0xffcb78d1,0xffe5dd46,0x0001224b,0x0026d85c,0x001559c5,0x000330e1,0xffe9b531,0xfffd6ee3,0x0009920c,0x001dcf11,
-0x002220e0,0x00267073,0x0036889a,0x00090355,0xffd7f6ae,0xff9629f6,0xff72c656,0xff5fdb87,0xff5afe54,0xff42690e,0xff1d4ad9,0xfef5775a,0xfef06d32,0xff0751c7,0xff266997,0xff84a263,0xff83e231,0xff8b79d5,0xff8dcbae,0xff7ef9b8,0xff751fc6,0xff6f509c,0xff644ab1,0xff5f93d5,0xff80d3c5,
-0xffa969c8,0xffccf832,0xffe90103,0x0004ae1b,0x002ae654,0x001bede7,0x00154bda,0x000a30e0,0x0018a187,0x0021d01c,0x0031412f,0x00354aed,0x003be9c3,0x0049956b,0x000769b4,0xffde7936,0xff9e674d,0xff949f9a,0xff64b6b0,0xff4ec901,0xff62d5ed,0xff8614f3,0xff9f333e,0xff9ef024,0xffa3ec57,
-0xffa5dc01,0xff95cb47,0xff51a786,0xff60cb12,0xff79a917,0xff909e2d,0xffaa11a5,0xffc46bb7,0xffe180cf,0xfff8d725,0xffffa434,0x00010b54,0x0005b2c6,0x000c916a,0x0013ff58,0x002124c3,0x0021c5a0,0x00267b4b,0x0027e1ca,0x0029bfea,0x00284cd3,0x002c7419,0x00288e25,0x00070b14,0xfff6216b,
-0xffe394c8,0xffd8017a,0xffc2a947,0xffb707bc,0xffad5449,0xffa5463e,0xff927ed9,0xff7d799f,0xff6d4eaa,0xff6653c2,0xff61c7c5,0xff5c7ca2,0xff5e685d,0xffbe137f,0xffb9650b,0xffc16f40,0xffc8b7e6,0xffcf446b,0xffd45d48,0xffd8f798,0xffe1981f,0xffe25815,0xffe7380c,0xffeb86d6,0xffefc2fd,
-0xfff34500,0xfff6c8ae,0xfff684fb,0xfff7181d,0xfff846bd,0xfff8b570,0xfff9dc1e,0xfff9a641,0xfffb1378,0xfff88ccb,0xfff9484a,0xffe724a0,0xffe787ce,0xffeb136c,0xffe70fd2,0xffe28fbf,0xffdc4d46,0xffd75ba7,0xffd28586,0xffcc27a8,0xffc5d56d,0xffc2291f,0xffc2e99d,0xffbf0316,0xffe265f5,
-0xfff53ce7,0x0007acac,0x000ba7e6,0xfff8c597,0xffeedd19,0xffea4951,0xffe6ae8a,0xffe9d7ea,0xfffb1832,0xfff1ad2a,0xfff059b1,0xfff42d81,0xffe911bd,0xffe3d663,0xffdab389,0xffe32132,0xffea54ad,0xfff58524,0xfffcecc0,0xffff9cde,0xfffa7e1a,0xfff8c642,0xfff690ec,0xfff45ed5,0xfff17415,
-0xfffa4a3a,0x000e6ef3,0x000f0a2d,0x0010c7b9,0x000bda0e,0x000e6b28,0x000c3797,0xfffec4ee,0x000620bc,0x0001631d,0x000057f8,0x000672f2,0x0011dfaf,0x001872d1,0xfff24504,0xffdf5489,0xffd4c263,0xffc61742,0xffcf3861,0xfffa7873,0xffecf441,0xffeec2c2,0xfff6b5cb,0xffdf4193,0xffc8152d,
-0xffaf3b63,0xffb7d8a0,0xffcb803f,0xffec47b6,0x00084f20,0x000fdca3,0xffffd7a0,0xfff99577,0xffe7e720,0xffde789f,0xffe6b0fa,0xfffa5ec8,0x0024c194,0x0024a783,0x0028a55f,0x00225ba4,0x00203c42,0x00182392,0xfffc0806,0x001fd6b8,0x0020a318,0xfffb6465,0x000965e1,0x004c0f70,0x006888d8,
-0x0003ffb1,0xffcf0d4e,0xffc2ce3a,0xff9ea263,0xffac1fbd,0x000d07b5,0xffe0b121,0xffe0e17a,0xffea6584,0xffb8c7c6,0xff97c8ff,0xff6c36b4,0xff87a1b1,0xffb0854b,0xffedd274,0x001f9c1a,0x002e7099,0x00113aa8,0xfffd9189,0xffe569cd,0xffce1762,0xffdb6aff,0x0003d016,0x0048f5aa,0x005a03cf,
-0x00636e82,0x005194ee,0x0059bc67,0x004da4e0,0x000a9100,0x004492a8,0x0038b19c,0x0008f98c,0x00359744,0x00307a20,0x00641164,0xfff8dea2,0xffc6459a,0xffabc4cf,0xff5b2ad2,0xff757419,0x0011a162,0xffe3f5bc,0xffeed062,0x0017eb2d,0xffd9ba5c,0xff78c0e5,0xff22ed8b,0xff25cbaf,0xff68fb1e,
-0xffd2e2a4,0x002ee855,0x004654de,0x0010c210,0xfff4a907,0xffcc26a8,0xffb9d739,0xffe4f089,0x0020beec,0x0073deab,0x00bcc991,0x00cf11e9,0x007510c4,0x0069f3f7,0x0060ce53,0x0024e8f2,0x00863525,0x008cff97,0x000fe890,0x001f12ae,0x015e987a,0x00f12c53,0x0028e401,0xffbac602,0xff5fb61c,
-0x0059d1a1,0x00728e43,0xff8ee177,0x0014f9d8,0xffb41990,0xfee2a83c,0xfeef94fa,0xff4aaf1b,0xfff959a6,0x0058d2f9,0x0075c896,0x00526c16,0x00554355,0x00542cdb,0x005ac289,0x007a321a,0x0071d886,0x00594ebf,0x0035ef44,0x001985eb,0x00487204,0x0003977a,0x0053ab1c,0x013a08f8,0x00a3e574,
-0x003bb647,0x002032ee,0xff8e8208,0xff776edc,0x0011629a,0x0110fe5a,0xfda94888,0xff04f097,0xff91106b,0x002c3a51,0x0045288a,0x00688825,0x002cb72d,0xff80d11c,0xff6c231a,0xffba3e2b,0x00baa0f3,0x002f2de1,0x0006a001,0x0027677f,0x006111fe,0x007d7cb6,0x0056c92b,0x00178bf3,0xfff88533,
-0x001b1fa4,0x001a6ec1,0x001fd21a,0x002cb20b,0x0019cfcf,0x00344358,0x003dc1ee,0x00a183f7,0x00a969e0,0x00515a2c,0x003645da,0x003ea8f1,0x00587c2f,0x006cf563,0x00a307a1,0x0113df12,0xfe589b94,0x018c454a,0x019a219c,0x01439438,0x00f00205,0x009b47f7,0x00b9a3fc,0x00499564,0xff76c2b6,
-0xff45e157,0xff5cb654,0x0004e507,0xfffe4b8e,0x0046b0ac,0x0072f493,0x00657b43,0x002fd588,0xffe3ec2b,0xffe06b6f,0xffd49d30,0xffd88c50,0xffe70f10,0xfffb2302,0x000e0ffb,0xfffa2705,0x00263ccd,0x00488ca8,0x002a3f6a,0x00244467,0x00224992,0x00514a30,0x0056319a,0x003c37b3,0x0069a48c,
-0x0064b3c7,0x00944754,0x0138a80a,0xff516bf6,0xff77e828,0xffc2a1cd,0x001d3d0d,0x005c5e42,0x00c121c9,0x00feb93a,0x010322ee,0x00c3bae2,0x0083d464,0x00918459,0x000dd81d,0xffd34335,0xffe11c74,0x002b2dc7,0x0047bc8a,0x0042c630,0x0039d02c,0x00277231,0x0026d7a1,0x000bd0ab,0xfff985c9,
-0xffed34a8,0xffe30adc,0xffeb1be0,0xfff1e25c,0x0021bba0,0x003c52ab,0x00260f1e,0x002585c5,0x0010d22f,0xfff99c2a,0xffe71c01,0xfffb6b67,0xffd92786,0xff87e3dd,0xffc40f2c,0x0008546c,0xfff0ae76,0xffe442fb,0xfff69fc8,0xffda1864,0xffad3c75,0xff646202,0xffb34bf4,0xffcf388d,0xffdb7b8c,
-0x0006684d,0x001a5961,0x001cd781,0x000cdbe2,0x000a0e8b,0x000728a3,0x001aaa11,0x001efcea,0x000ecfca,0x0003d027,0x00033241,0x0011826e,0xfff6f2a1,0xffe3a118,0xffb98300,0xffba3f09,0xffb33ffa,0xffb6601d,0xffc9d836,0xffc0dfd8,0xffb6d342,0xffad915b,0xff99001b,0xff8e3699,0xffaedf10,
-0xffa87651,0xffb75183,0xffcdf39b,0xffdca736,0xfff558b7,0xffe9a2f8,0xfff7c482,0x0008cda3,0xffe63485,0xffdc312f,0xffeb9c4d,0x0001ede1,0x00183b0b,0x00319388,0x0007acfb,0xfff7629c,0xffeb3cc3,0x00010cf4,0x000fd4cc,0x00199faf,0x0020fa20,0x00213273,0x002d9465,0xffeeec81,0xffbfa951,
-0xff89ed59,0xff7b7370,0xff6bc56d,0xff5b6999,0xff41a9f6,0xff1cd46f,0xfef83b64,0xfee8ad18,0xfef83744,0xff14bf10,0xff7f3bd8,0xffafec20,0xffbd9fa7,0xffbaa61c,0xffa9f30a,0xff9f2a20,0xff93b63d,0xff827526,0xff76dac4,0xff9640f8,0xffb8bbab,0xffd70ead,0xffdeda0f,0xffe8c1e6,0xfffb83b9,
-0xfffdc15b,0x0003bea0,0x0005d58c,0x00120369,0x001ad4ad,0x002b8b3e,0x002b7a94,0x002d501f,0x0038f178,0xffeffe27,0xffba0ce4,0xff6d00b8,0xff67d8f5,0xff4bed73,0xff3c1146,0xff5142fc,0xff6a821c,0xff7e75be,0xff95959c,0xffafeffb,0xffc536de,0xffba136a,0xff6e1ca3,0xff8c54a3,0xff99f69e,
-0xffa76258,0xffb60c36,0xffc6cd51,0xffda5c82,0xffe5fe5a,0xffea8c11,0xffe8054b,0xffe8ff14,0xffed0fb9,0xfff25523,0xfff78880,0xfff82e72,0xfff9463b,0xfff96041,0xfffa996b,0xfff8979d,0xfffb8882,0x00043c86,0xffe50de2,0xffd8fcdb,0xffcbe484,0xffc7f1de,0xffb8369e,0xffb326fc,0xffaa9cb2,
-0xffa36555,0xff956261,0xff87a9c2,0xff74a6ce,0xff761c6a,0xff70c6f3,0xff6e5a1c,0xff79b125,0xffbe9e25,0xffbdaf57,0xffbfa6b4,0xffc4a72e,0xffc85912,0xffca7507,0xffcc676b,0xffd2047b,0xffd1b1f6,0xffd4f0ac,0xffd7ec70,0xffdaa5bc,0xffdcde55,0xffdfb9e6,0xffdf81b9,0xffe02854,0xffe10a44,
-0xffe1599b,0xffe2d1ad,0xffe02052,0xffe609b8,0xffe5a7da,0xffea25b2,0xffd44b22,0xffd734ce,0xffdabdc4,0xffd64832,0xffd224a4,0xffcdfec9,0xffc98f29,0xffc606cd,0xffc2bd3b,0xffc1dd6c,0xffc06f88,0xffbfb39c,0xffbee2e5,0xffcc8d3d,0xffee4633,0xffffad50,0x00023b39,0xfff12202,0xffe86f4c,
-0xffe61afc,0xffe0f2ba,0xffe3f1bc,0xfff56207,0xffebca0a,0xffeace0c,0xffed7bee,0xffe826c6,0xffe3dbcb,0xffd8cadc,0xffde35bc,0xffe3421e,0xffec04df,0xfff4cae4,0xfff7de13,0xfff47abd,0xfff11e98,0xffeeb9c6,0xffecadd3,0xffea4f5b,0xfff1f41b,0x0006125d,0x0003374a,0x00052743,0x00035e93,
-0x00067c64,0x0004567f,0xfff54a82,0xfffe5d77,0xfff9d22b,0xfff509fa,0xfffe9cda,0x000a2b06,0x000c8a75,0xffe984a3,0xffd8ad6d,0xffd3395b,0xffc38166,0xffcb4b9b,0xfff47061,0xffe55fdc,0xffe9ce96,0xfff1d8a8,0xffebefb9,0xffd7a40a,0xffb5762c,0xffb73b4f,0xffc344d2,0xffdd5d9f,0xfffb5d7c,
-0x0004ef0a,0xfff90b1e,0xffefc599,0xffdf2f7f,0xffd83f16,0xffdd8309,0xfff0004f,0x001ed989,0x00153112,0x00198c8d,0x001c995d,0x001a0169,0x0013483e,0xfff506f7,0x00198adf,0x00166c16,0xffe93e02,0xfffea5db,0x003fbe31,0x00528537,0xfff30f99,0xffc54a39,0xffc6e4ab,0xff9cc1fd,0xffa9c77b,
-0x0007bae5,0xffda610d,0xffdfcb64,0xffe6f0cf,0xffd37187,0xffb61442,0xff7b816b,0xff87f063,0xffa44d99,0xffd775fc,0x000e30d8,0x00212369,0x000b2522,0xfff29219,0xffd9fffd,0xffcab8a7,0xffd04770,0xfff3d981,0x0043ad10,0x003e9fd5,0x0048f215,0x004928c4,0x0055b889,0x004a2189,0xfffe166a,
-0x003b60d8,0x002f32d8,0xfff306bb,0x002bc1a7,0x00267bee,0x004c0a59,0xffe42e62,0xffbe1e5f,0xffb86520,0xff6bf341,0xff7dcf70,0x000965e6,0xffd927a3,0xffec939a,0x0017f394,0x000d847a,0xffb8b79d,0xff4569e6,0xff33aa6f,0xff5b5d56,0xffb2bc13,0x00162b17,0x0036748c,0x000ca229,0xffe583cf,
-0xffbf5efa,0xffb26b7b,0xffcfa51c,0x000dba53,0x00743601,0x00ac512d,0x00bd38ef,0x0071e1be,0x006eef38,0x006712fc,0x0024457d,0x008dbda1,0x0086514d,0xffea5954,0x00098718,0x01657296,0x00d8dad6,0x001c3e75,0xff9cfb0f,0xff2de8e6,0x0012c638,0x003eed05,0xff8f480f,0x0019dded,0xffcbbe28,
-0xff021060,0xff013496,0xff41b8ce,0xffb5bb81,0x00341b23,0x00600e0b,0x003b0298,0x0046ddd2,0x004ba56b,0x00586277,0x006c389e,0x005dfe9c,0x0042acd2,0x0032deb3,0x00140490,0x002e4f2b,0xfffb5289,0x005259a6,0x01323ffc,0x007fe1f8,0x00176c69,0xfffd15af,0xff585b3a,0xff60508a,0x0036ca56,
-0x012db4ec,0xfdc4ca8c,0xfef20386,0xff4852a0,0x000346d4,0x008630dd,0x0071ba45,0x00298a5e,0xff9cedee,0xff5bff72,0xffa10f03,0x00c22535,0x002a9645,0xfffcb2c0,0x001a9ef0,0x004f53f8,0x00629749,0x002b8a97,0x00092a5f,0xfff3900c,0x000b0eea,0x0021f2c8,0x002fb3c7,0x003196d1,0x0010b6b1,
-0x002bcfb4,0x0047ac22,0x009bda8f,0x009812f7,0x003cbc15,0x00337347,0x003934fa,0x00541581,0x008dc23a,0x00ae9504,0x00ba2dd7,0xfe594ff0,0x01a92298,0x01a57dda,0x01367eaa,0x00d3d9d8,0x006042cf,0x01048f34,0x00b4573f,0xff5f23bb,0xff6a7668,0xff6958f3,0xffbee5f3,0x00074411,0x005f54bb,
-0x0089f33f,0x00802d50,0x004a70d6,0xffe2bd8f,0xffe7d44e,0xffe13187,0xffd3203c,0xffde20c0,0xfff80ec9,0x000acb61,0x000deeea,0x002e1bdd,0x00364e42,0x001f8777,0x001d262e,0x002065b3,0x005597ae,0x006721f1,0x006d7c58,0x00564dfe,0x00347839,0x007aadd6,0x01486240,0xff2943d8,0xff5eec16,
-0xff90b764,0xfff1c72f,0x004c96a4,0x008a0523,0x00b8c656,0x00a1c700,0x00dcd795,0x00baf58a,0x0090c072,0x003e3a48,0x00022ae3,0x0006be86,0x003129b8,0x0049c147,0x003a382a,0x00298709,0x00103e8f,0x0011f67d,0x000bdd79,0xfffa86b4,0xffd9d3c2,0xffd5ba02,0xffe2ee8b,0xffeceb5f,0x00074bdb,
-0x001ef8b1,0x0018a246,0x000e5e80,0xfffdc524,0x00025b9c,0xffe8d761,0xfffbe20b,0xffeeec53,0xff6ff9c1,0x00058abe,0x004c25b8,0x000f3ffe,0xffe990ad,0xfff506aa,0xffdb79e4,0xffd77ed5,0xffc89318,0xffe478e9,0xffdf720b,0xffcf2f28,0x00022f79,0x0016619d,0x00136b91,0x00112d14,0x00146f86,
-0x001a7a60,0x002b9753,0x002813db,0x000ccc46,0x0002ea2f,0x00022728,0x001a07dd,0xffeba7ee,0xffd42ae4,0xffc48e77,0xffb08101,0xffaeb6ed,0xffc24c35,0xffda7fba,0xffdca13b,0xffdf6efe,0xffe56492,0xffdb140f,0xffd53d3e,0xfff38652,0xff955cac,0xffbad574,0xffda0e60,0xfff17530,0xffff4653,
-0x00029475,0x0007ae2d,0x000c57c9,0xffeccf22,0xffeef0ad,0x0002dcf2,0x00140f2c,0x00231efa,0x0033f90c,0x00026773,0xfff600c9,0xfffcc4b0,0x000b8d25,0x00192382,0x001c163a,0x0028fa37,0x001ea694,0x00137657,0xffd675d1,0xffb0dc61,0xff8b885e,0xff88b148,0xff79a361,0xff60605f,0xff46790a,
-0xff261ee4,0xff0cf08f,0xfeead350,0xfeee2200,0xff0a0ac1,0xff64b4bd,0xffd1a73e,0xffdfe9c9,0xffdbddb5,0xffd1e4cb,0xffccd2db,0xffc1676c,0xffb1f56b,0xffa4e0cc,0xffba34d3,0xffce14d5,0xffe2697f,0xffe06f88,0xffdf9b7f,0xffe4c62f,0xffefe956,0xfffc1aa9,0x00040043,0x000c9ce4,0x00148b29,
-0x0021556b,0x001a5bd4,0x0017da97,0x001ed2ab,0xffdc37cf,0xffa16db1,0xff58ada8,0xff51b871,0xff453f54,0xff37409a,0xff4a3f4d,0xff577963,0xff644984,0xff8dbe15,0xffb6e869,0xffda748e,0xffd37cbe,0xff961d53,0xffae015a,0xffb23bdf,0xffb7101c,0xffbc5de6,0xffc3bdf6,0xffcdf608,0xffd1db29,
-0xffd7d132,0xffd81922,0xffd98d3b,0xffdd9078,0xffe35207,0xffe62f41,0xffe4dc19,0xffe2256c,0xffe04bbc,0xffdf13aa,0xffdc2556,0xffdc177c,0xffdf51bd,0xffcbf667,0xffc3e984,0xffbdc5e1,0xffbfb9b6,0xffb85b8a,0xffb99500,0xffb51b40,0xffb0963c,0xffa98d87,0xffa41f17,0xff941218,0xff97cc12,
-0xff901956,0xff8eac10,0xff9a875d,0xffbd4d72,0xffbd795e,0xffbcd611,0xffbf460b,0xffc07e03,0xffc0c72d,0xffc0be5e,0xffc27552,0xffc300be,0xffc56f9f,0xffc85a96,0xffcb00bc,0xffcd2be8,0xffd0fd95,0xffcf6f6f,0xffcf5ec3,0xffcf4601,0xffceeee9,0xffcf5e1f,0xffcd10fe,0xffd01350,0xffd01e9f,
-0xffd4042f,0xffc30c21,0xffc4bda8,0xffc6a838,0xffc3c015,0xffc167ee,0xffc07a2b,0xffbdd726,0xffbc79d2,0xffbcd84a,0xffbe64d0,0xffbe1c0d,0xffbea22e,0xffbe1004,0xffb65839,0xffeb87d6,0xfffa91ea,0xfffb4ee6,0xffed48a3,0xffe61a41,0xffe49e47,0xffdfb829,0xffe2b9e7,0xfff2e78c,0xffea33ca,
-0xffe9c917,0xffec0d0b,0xffebb146,0xffe838ce,0xffdba52c,0xffde0a0e,0xffe0c6ee,0xffe7ae31,0xffef95bd,0xfff29b31,0xfff23ee7,0xffecd8f1,0xffe9b5ad,0xffe66188,0xffe6f715,0xffece082,0xffff96d8,0xfff8be88,0xfffab8e7,0xfffd74f4,0xffffb888,0xfffd6c97,0xffee43aa,0xfff89ad2,0xfff57982,
-0xffeb23d0,0xfff8f519,0x00030f07,0x0000f22d,0xffe532d4,0xffd71857,0xffd3e2bc,0xffc6993c,0xffcc6046,0xfff02f10,0xffe1f733,0xffe9c694,0xfff35e41,0xfffc693d,0xffeaecdf,0xffc11fc6,0xffbc3972,0xffc0ec8d,0xffd638d7,0xffefe2c0,0xfffab169,0xfff66187,0xffe93b7c,0xffdb5a59,0xffd42914,
-0xffd8cb23,0xffe9b507,0x001b2165,0x0008a818,0x000d62e5,0x001a8bc9,0x001679cf,0x00116dad,0xfff3f3e8,0x00143d03,0x000c91ab,0xffdacdd3,0xfff7adb5,0x00342232,0x0037d9fa,0xffe78810,0xffc1f57f,0xffc7881c,0xffa267ca,0xffaed400,0x000290df,0xffdaa01c,0xffe54bad,0xffecd3a4,0xfff40d34,
-0xffd9befc,0xff932340,0xff91e6fc,0xffa03d14,0xffcbc58a,0xfffac68a,0x00100464,0x000738e2,0xffeb7c9b,0xffd4598c,0xffc7f565,0xffcaf114,0xffe8a031,0x0041bea2,0x00251f31,0x0031ff96,0x0045b93c,0x0052798d,0x00460549,0xfff7aa44,0x00302835,0x00237a0e,0xffdd7e2f,0x00239f5d,0x001cbbd3,
-0x002d588a,0xffd76d7b,0xffbc4171,0xffbe11f8,0xff8338cf,0xff8aa886,0xfffa5557,0xffd205b4,0xfff13195,0x001fdd27,0x0043feec,0xfffa4056,0xff6da950,0xff4b0503,0xff58f451,0xffa17c25,0xfff92a36,0x001f73ab,0x000da9e7,0xffde1861,0xffbd7c25,0xffb2572a,0xffc1939f,0xfffb074d,0x00734963,
-0x00916e66,0x00a0f1c8,0x0070e813,0x0076f3a9,0x006f691d,0x0028413d,0x008e3f59,0x00723bdd,0xffc1e7dc,0xfff659d5,0x015941f6,0x00aeb448,0x000f2d33,0xff8c4749,0xff218296,0xffd67b46,0x0018494a,0xffb6d82c,0x00264f29,0xffe69cca,0xff305aef,0xff17b47f,0xff433175,0xff91d2f7,0x0018a93d,
-0x004cb4fd,0x002b96e3,0x00351724,0x003b9eb3,0x0052747f,0x0057f7d8,0x00456e6a,0x0028efc9,0x0032f11b,0x00145e05,0x00159419,0xfffb93e8,0x004ec6e3,0x010c028c,0x005fcf5f,0xfffe375f,0xffd26772,0xff31bb76,0xff5ca844,0x00580c98,0x013abc60,0xfdf38f30,0xfee315b4,0xff24fb8c,0xfff14596,
-0x00cc3dae,0x0073a509,0x001c28d0,0xffc01d01,0xff589de8,0xff982339,0x00c345d2,0x002a4b4d,0xfff8d7de,0x001aaef0,0x0035491d,0x003eae82,0x0008fb55,0x00025b87,0xfff87472,0x00033076,0x00228293,0x003775c0,0x00306e21,0x000bfdfb,0x002856e8,0x0051438b,0x008cabe0,0x007ec2b0,0x0029e9ca,
-0x0025346d,0x002f67d4,0x00608a19,0x00b51bee,0x00af99ca,0x0037755a,0xfe6573ca,0x0191ee88,0x0193b266,0x010b8bac,0x008d53b4,0x00074f5e,0x00ff492a,0x00eaea6a,0xff9066bc,0xffb59438,0xff944351,0xff94b4ee,0x00146e1d,0x00754cb4,0x009e218b,0x008ad955,0x00552db7,0xffe683c6,0xffebd1e7,
-0xffea9343,0xffd9cd14,0xffdb5ea1,0xfff4a412,0x0006fc4c,0x0020fbe2,0x0034d940,0x002101ac,0x0014d07c,0x0015ee13,0x0019fa35,0x005a2db1,0x0073b387,0x008db67b,0x002c2647,0xfff2d456,0x0052c58e,0x01326764,0xff20ee08,0xff4d24f2,0xff714887,0xffd1b122,0x0030119e,0x004520ac,0x0059746d,
-0x003bb9b5,0x00d80025,0x00dd2623,0x0091c9da,0x006763cd,0x002eb9c1,0x002f1aaf,0x002fdf9a,0x00405ab8,0x002a5315,0x001838c7,0xfffb164d,0xfff4ebce,0x000356d1,0xfff5da01,0xffcb22e4,0xffc7e840,0xffd96407,0xffec748b,0xffeddc7d,0xffff855d,0x00086936,0xfff96383,0xffef8a6f,0x0005f673,
-0xffefcdf2,0xfffd3034,0xfff6e0c6,0xff668310,0x003c2a6a,0x007c5375,0x00462803,0x00192f82,0x000fdc2f,0xfffc9065,0x0015b569,0x0035f7eb,0x000f95b2,0xffecdd59,0xffc79239,0xfff38101,0x0009963f,0x00071ccc,0x00106e93,0x001c0292,0x0028772c,0x003280d3,0x002ad7a0,0x000c4b04,0x000618bc,
-0x0002f1cb,0x001778d0,0xffe6aad9,0xffcbf1bd,0xffca8888,0xffaf69f6,0xffb7899f,0xffdd6a3c,0xffec5a0a,0xfff3ba0e,0x00019e36,0x0010692c,0x00137838,0x00175101,0x002ad6e9,0xff7cf15b,0xffb3c90d,0xffcdcd9b,0xffe82de9,0xffec71d4,0x0002b56c,0x0006732e,0x00059052,0xfff684b5,0x0001dcb4,
-0x000f6b03,0x002255e2,0x00278dbd,0x002bd815,0x000581c7,0xfffab878,0x0014c3a9,0x00173bbd,0x001f7ef7,0x00203325,0x002f7fd4,0x001a8dd2,0xfff269c2,0xffc1b0b1,0xffaa1232,0xff9933c4,0xff999102,0xff87f1a3,0xff69fb1a,0xff506672,0xff3716c1,0xff2b4d62,0xfef67552,0xfeecdf18,0xff02eb65,
-0xff47bccc,0xffe4d77a,0xfff75e63,0xfff5d97f,0xfff4b4f0,0xfff8518e,0xffeea27b,0xffe43fd4,0xffd9183a,0xffe4b8fe,0xffec8bc4,0xfff776d8,0xfff08799,0xffea2b17,0xffe681f2,0xfff75e32,0x0005bf80,0x000f5917,0x0012f273,0x001a3f7c,0x0020b7b4,0x000dd5b2,0x0005e5aa,0x00039858,0xffd003e6,
-0xff989549,0xff5cdc37,0xff504682,0xff4cb0db,0xff3cb55a,0xff4d931c,0xff50c077,0xff579e10,0xff87a0c3,0xffb4e9cb,0xffdab7ed,0xffdc9e34,0xffaf8484,0xffbf6ac6,0xffc06991,0xffc1309d,0xffc272da,0xffc56be1,0xffcabc5d,0xffcc7561,0xffd28b5d,0xffd565dc,0xffd82779,0xffdc131e,0xffe29943,
-0xffe5b8d6,0xffe2d54f,0xffde9305,0xffdc7699,0xffdaf1cf,0xffd825c4,0xffd8686d,0xffcfeebd,0xffc890d9,0xffc145af,0xffbd5216,0xffc1576a,0xffc08aa1,0xffc61f25,0xffc5bca7,0xffc3cead,0xffc25cb3,0xffc1dfb0,0xffb7ddcf,0xffb7eef0,0xffae157a,0xffac7e5c,0xffb473e2,0xffc054a1,0xffc5a5ba,
-0xffc370a0,0xffc44ed7,0xffc4278a,0xffc3d968,0xffc315fe,0xffc2b6ee,0xffc3c37d,0xffc56894,0xffc7b317,0xffca1038,0xffcb96bd,0xffcf04e4,0xffcd3cf4,0xffcd0962,0xffcc82a5,0xffcc0191,0xffcb8fcf,0xffcba4ba,0xffc7198c,0xffc42ab1,0xffc15bcb,0xffbfb772,0xffbb0bdd,0xffb62f79,0xffb5b740,
-0xffb55889,0xffb73630,0xffb69970,0xffb76e11,0xffba2cf3,0xffbeab0d,0xffc2d2b4,0xffbba3bb,0xffbebe7a,0xffb46a94,0xffeba32a,0xfff7d508,0xfff71e62,0xffec5162,0xffe6b07c,0xffe61fc1,0xffe1831e,0xffe41b0c,0xfff11eb4,0xffeaf0b2,0xffeb9cfd,0xffee7103,0xfff12c1d,0xffee1bb0,0xffe0763a,
-0xffe0485e,0xffe10759,0xffe66e77,0xffecbc12,0xffef9cd6,0xfff1da88,0xffeaea3d,0xffe78f7b,0xffe3453c,0xffe646e7,0xffeb1064,0xfffcc6d8,0xfff2a5c4,0xfff49b79,0xfffc1a43,0xfffc518d,0xfff9d3f7,0xffec4846,0xfff53a06,0xfff39db6,0xffe601d6,0xfff63e9f,0xfffdc33d,0xfff7e247,0xffe4483c,
-0xffd95929,0xffd8e8d3,0xffcd2af2,0xffcfdaab,0xffeb1340,0xffe0ad7a,0xffec2cd6,0xfff9589d,0x000bb154,0xfffca765,0xffce2535,0xffc34ac9,0xffc19a78,0xffd30ba2,0xffe668e1,0xfff1e3dd,0xfff52e11,0xffe6b63c,0xffda9ae1,0xffd104ff,0xffd7cfaa,0xffe76339,0x00183b04,0x00003b35,0x00056483,
-0x001bce9b,0x0014be14,0x00111225,0xfff83fe6,0x00102957,0x00052ac7,0xffd3cfb3,0xfff4ec52,0x002962ba,0x001e646c,0xffe3cb31,0xffc56527,0xffcd1569,0xffac9708,0xffb681f2,0xfff7999e,0xffdcdbdd,0xffeeb968,0xfffa0676,0x0012940f,0xfffa5618,0xffa9ef48,0xff9ec064,0xffa04d21,0xffc4a4c8,
-0xffe8670f,0xfffdede9,0x00034ddf,0xffe728f2,0xffd1d772,0xffc43ea9,0xffca8e7d,0xffe2b215,0x0040cf51,0x00123585,0x002248f9,0x0048a41e,0x004ff593,0x00423279,0xfff996d8,0x0025412e,0x0018dadc,0xffd09375,0x001eff99,0x00136fd3,0x000e559f,0xffd59d89,0xffc330cd,0xffca22b9,0xff9d3f4d,
-0xff966d69,0xffe2b790,0xffcbed1c,0xfff83aa6,0x002d6dc6,0x0070e350,0x0031f8d9,0xff92e455,0xff63efb2,0xff5c5589,0xff95eb93,0xffdb31dd,0x00051ecb,0x000f0654,0xffdf0afc,0xffc11ee5,0xffb33f21,0xffba9e31,0xffec7212,0x0072161a,0x00745b45,0x0082be63,0x00767d27,0x00814976,0x00779def,
-0x00317dae,0x0088fed5,0x0059da3c,0xffa6f33f,0xffed139e,0x0136c02e,0x007e4e72,0x000178a9,0xff87ecb5,0xff2c1012,0xffa85af8,0xfffe0ad9,0xffef91ac,0x003255c6,0x0002f347,0xff72770a,0xff2ec662,0xff454143,0xff862251,0x00013e38,0x0037508a,0x00223b67,0x00221b83,0x00244da3,0x003fa47b,
-0x003cfb8b,0x002b8366,0x001085df,0x003600a3,0x0018fd6f,0xfffcd62c,0x000499e5,0x004da360,0x00cfee0f,0x0045f725,0xfff07f1d,0xffab48a7,0xff200025,0xff6a1f10,0x0073208c,0x0133818e,0xfe2a189a,0xfef0c8bc,0xff1efe4f,0xffee95f9,0x011593dc,0x0077ec79,0x00144e7f,0xfff44bfe,0xff696eb3,
-0xff9b8a67,0x00adc373,0x002eacee,0xffff446a,0x001164c9,0x0015d945,0x0013c856,0xffea3abe,0xfffab5d5,0xfffe09f4,0x0005bba2,0x001c99ab,0x0033633c,0x002ab166,0x000c266c,0x002a0fde,0x00589a35,0x007933e8,0x006148c3,0x0015215d,0x000e6b36,0x00237221,0x007693d5,0x00de0178,0x00a86dd8,
-0xffacbc49,0xfe76b28e,0x01557474,0x01864068,0x00ce1bc0,0x0025d4da,0xffa171fd,0x008f5e97,0x00c2ea0d,0xfff54fc4,0x00041e58,0xffc68926,0xff8e89c5,0x001f0239,0x007a262b,0x009bc50d,0x008be9c3,0x005a83ad,0xfff3e487,0xffeb7e55,0xffea310e,0xffe52ea7,0xffe16fbd,0xfff4d0c3,0x000307d6,
-0x002f6873,0x00389869,0x000f3b9f,0x000948cd,0x000dba77,0x0011cb99,0x005c873b,0x0078677a,0x0092eb40,0xfff53efb,0xffafb54e,0x00249d93,0x00f87a84,0xff327b6a,0xff3c1dc3,0xff643fc2,0xffbec9a9,0x000c3005,0x00046302,0x000528dd,0xfffcb0d4,0x00c0c263,0x00e9e901,0x008a4cb6,0x0089a293,
-0x005e346f,0x004adc54,0x002872a4,0x002d85c3,0x0019e1fe,0x00045cb8,0xffe8a2c7,0xffd79a18,0xfff01cbe,0xffea09aa,0xffc2867f,0xffbc680d,0xffcf3e5c,0xffedda5b,0xffdb0ff4,0xffe6a512,0xfffb1425,0xffec91b9,0xffed8464,0x000be415,0x00006008,0x0004889d,0xfff22a31,0xff73c537,0x006258a5,
-0x009911b1,0x0086e393,0x006623f2,0x004dd57e,0x0035f938,0x0055d4df,0x0090cbc2,0x003a89e8,0x0000d663,0xffc87052,0xffdca848,0xfff04392,0xfffc9ebf,0x000d3603,0x001c6365,0x00296381,0x00324aee,0x002be6b6,0x000d534f,0x000d012b,0x0004da33,0x0009c5e2,0xffe48ff1,0xffc97a18,0xffca6138,
-0xffb6c8ee,0xffcac76d,0xfffbfc04,0xfffc3a48,0x0003a22f,0x00165a4f,0x002790dc,0x0034e2bf,0x003bb5db,0x004b752f,0xff647dfb,0xffa06462,0xffadfbe2,0xffc918a1,0xffd23933,0xfff312a6,0xfffc1fe7,0x000401d1,0x0002f433,0x001568c7,0x0022db37,0x0032b217,0x002c205e,0x0020d27e,0x000a3f2a,
-0x00059fef,0x00288771,0x00221062,0x0024573a,0x0023b178,0x002cdc75,0x0010d7b1,0xffd74af0,0xffb28339,0xffa71e9d,0xffaae2e8,0xffa94e28,0xff950408,0xff79071f,0xff5ef9fd,0xff4c3ffa,0xff4b4aa6,0xff0c3841,0xfef9f224,0xff05f8c3,0xff331e2a,0xffeaaa62,0x0002fb6a,0x0003b82a,0x00099a05,
-0x0012182a,0x000dd3d5,0x000c8aa2,0x00096ffd,0x000cd620,0x000cdd7c,0x0011208b,0x00079d59,0x000070a8,0xfff93dc0,0x000af53d,0x0017e898,0x0022d703,0x00228119,0x002887f3,0x002bde9b,0x000aaf38,0xfff871e0,0xffe80db9,0xffc88b17,0xff9c2ef7,0xff73933d,0xff5f7498,0xff5edff8,0xff4a72cd,
-0xff581853,0xff5460d4,0xff55783e,0xff80ae6a,0xffa83975,0xffc71697,0xffd6a1fa,0xffc0ec56,0xffcee74a,0xffce186f,0xffcd0341,0xffcc43a7,0xffccbc49,0xffcdb3eb,0xffcd999c,0xffd349ff,0xffd7c18b,0xffdb96ac,0xffdfed9b,0xffe62a67,0xffe95ea9,0xffe68ed3,0xffe2edec,0xffe1302a,0xffe0f245,
-0xffdf0654,0xffe176b9,0xffd21f33,0xffd21fa7,0xffca0a22,0xffc51feb,0xffc7603f,0xffc956c3,0xffd05f50,0xffd21065,0xffd1012c,0xffd293cf,0xffd39123,0xffcf54b4,0xffccd4de,0xffc4e10f,0xffc4097e,0xffc91a2c,0xffcf5fd7,0xffdad90c,0xffd69cc7,0xffd61cc9,0xffd4bbdc,0xffd3a152,0xffd266c8,
-0xffd08afa,0xffd20e84,0xffd31d36,0xffd499a1,0xffd64b0a,0xffd73105,0xffd9bc72,0xffd889d4,0xffd8a680,0xffd85b99,0xffd82185,0xffd7815f,0xffd98333,0xffcefe44,0xffc9292c,0xffc06e7e,0xffcba477,0xffc1978d,0xffb66b11,0xffb7ae79,0xffb87292,0xffbbf197,0xffbc7213,0xffbe7808,0xffc178be,
-0xffc8568b,0xffd1447e,0xffc25d5a,0xffca6fac,0xffc91980,0xffed7a93,0xfff7c3f3,0xfff52e7b,0xffed7dfe,0xffe951bf,0xffe97345,0xffe500d3,0xffe6e2ad,0xffefb5e9,0xffed502f,0xffef2fa3,0xfff2d829,0xfff69752,0xfff39741,0xffe5dfac,0xffe3bc6f,0xffe2fb69,0xffe6b14e,0xffebce38,0xffee8e2b,
-0xfff2116c,0xffeb402f,0xffe836d6,0xffe301f6,0xffe82bb5,0xffeca9b2,0xfffccea5,0xfff104c7,0xfff31619,0xfffe9317,0xfffc2414,0xfff990ba,0xffef04c5,0xfff53c9a,0xfff4a6a9,0xffe6785b,0xfff6e134,0xfffc4c89,0xfff43451,0xffe6e94a,0xffde7780,0xffe02879,0xffd4eafd,0xffd44de8,0xffe58d5d,
-0xffe2009b,0xfff0c802,0x000185aa,0x00167b61,0x00099e26,0xffdb316f,0xffcb7b70,0xffc4aa3e,0xffd16e61,0xffdf8e8d,0xffeaaa87,0xfff34f07,0xffe63578,0xffdaf508,0xffcf3afa,0xffd9d2bc,0xffe882ad,0x0015890c,0xfffc05ec,0x0001c8ce,0x001fb533,0x00141a9f,0x0010ff7c,0xffffbac1,0x000e0443,
-0x0001c0ff,0xffd61770,0xfff60cbe,0x00216b4e,0x000cbc15,0xffe5b7b6,0xffcd6acf,0xffd66fc9,0xffb7fab3,0xffbeb027,0xffe93974,0xffe21ea6,0xfffab1f6,0x000998f4,0x00290b3a,0x001270b5,0xffbe4b78,0xffac5c72,0xffa3b003,0xffbe9f57,0xffd9883c,0xffed88a0,0xfffdbbd0,0xffe2ff16,0xffcf9627,
-0xffbfe696,0xffcdaae4,0xffe1bc92,0x003f394e,0x00071b48,0x001962fa,0x00512ba7,0x004c9a55,0x003e97e1,0x0001cbf9,0x001df9aa,0x0013a820,0xffcfffcf,0x001e0e1f,0x0010eb69,0xfffdcaec,0xffdc8240,0xffcec352,0xffd9bfbc,0xffb4c4fc,0xff9fa674,0xffc7813b,0xffca7577,0x0001fb55,0x003d2101,
-0x008ca9f6,0x0059c334,0xffb635de,0xff7da612,0xff650fb5,0xff8bee53,0xffbf9de2,0xffe97dcb,0x0008efa2,0xffe0bcef,0xffc44eec,0xffb3b3c6,0xffb97a88,0xffe2ed4b,0x0070962d,0x005a99f0,0x00683447,0x0082cfc5,0x008b99ee,0x007cc249,0x003d3443,0x007f2bfc,0x00448eb8,0xff9ef94c,0xffee516e,
-0x01043660,0x004d5fb8,0xfff427ac,0xff8d52db,0xff44b5a6,0xff89f1cf,0xffee3ae5,0x002965e7,0x00405389,0x001f432c,0xffbcc17e,0xff43b5b9,0xff45c106,0xff88ae20,0xffebd570,0x001f79fa,0x001b2b22,0x00135ee1,0x000f2c8c,0x00254355,0x001e63e8,0x00122696,0xfffb51d4,0x00391537,0x002000dc,
-0xffe6e6ae,0x00154b22,0x005139e4,0x008b0a67,0x0032c02d,0xffea6514,0xff91d29c,0xff24cc40,0xff86daba,0x008b2d2c,0x011e5e1a,0xfe6e4276,0xff20bc54,0xff2f0ffd,0xfff5db44,0x0154638a,0x0085b655,0x0019772f,0x002e4206,0xff808d0a,0xffa0a3cd,0x00843db3,0x0031725b,0x000a16ad,0x0001346a,
-0xfffb6436,0xfff3acc6,0xffdbf9bd,0xfff52cec,0xfffe61f9,0x00092bda,0x00112d15,0x00257a6a,0x0024e288,0x000ff3ff,0x002f56d8,0x005bc3e4,0x0064d7b1,0x00430c94,0xfffd4e4a,0xfff81aca,0x001dd17d,0x0091ba40,0x00fba9c9,0x00901e6d,0xff353902,0xfe93a8d0,0x01002a8a,0x01814418,0x008f7ba3,
-0xffbf0830,0xff3d0fbe,0xffda634f,0x005ad183,0x0082d0ba,0x003fb8ba,0xffec00f2,0xffa69888,0x002376db,0x006e1627,0x0086ba91,0x007ee21b,0x0058316d,0x000943d7,0xffeca4f3,0xffe7c089,0xfff3d6ab,0xfff04a9e,0xfffbb20d,0x00019c75,0x0037d161,0x003706bc,0x0004fcd3,0xfffd45d7,0x00042f76,
-0x000b55c0,0x005c2848,0x0072c673,0x007c517b,0xffc3f17e,0xff7f737b,0xfff9b552,0x00a02d28,0xff55de1c,0xff344861,0xff6534d6,0xffb5bbfc,0xffeced86,0xffd3bf1d,0xffcdc281,0xfff48477,0x009e1368,0x00dd31ce,0x0085d053,0x00a60d1b,0x008a1fb0,0x0060d1ac,0x00224d5d,0x0013c867,0x0008337b,
-0xffef6aa6,0xffd93542,0xffc47821,0xffda3469,0xffda6d7a,0xffbf310b,0xffb6aad6,0xffc83989,0xffed547b,0xffd10c55,0xffd7efe4,0xfff27a94,0xffe7e7bb,0xfff4bfbe,0x000f90ef,0x00143bff,0x000f4ab0,0xffecd716,0xff93d5f9,0x0077864b,0x00a63346,0x00be3cee,0x00b50243,0x009c212b,0x0075002e,
-0x0086d4b4,0x00c26adf,0x00657ded,0x002395cc,0xffd92b90,0xffd203ed,0xffd703d5,0xffee7777,0x0009bec8,0x00191b58,0x00222601,0x002c5e49,0x0028ee75,0x000fc057,0x0011f89d,0x00039cb1,0xfff669cd,0xffe07a6e,0xffc96a32,0xffc8adee,0xffc6fcea,0xffe52c45,0x0014efd0,0x0008194d,0x000ba583,
-0x001b29b1,0x002c14a2,0x003ffd7e,0x004cbe75,0x0059d276,0xff4f3b99,0xff91f370,0xff9107e4,0xffa94510,0xffbbcc6c,0xffe318de,0xfff67a8a,0x000933c7,0x0012fa68,0x0027958a,0x0035ee75,0x003d9a11,0x00324703,0x001e5682,0x0013469b,0x00173ef2,0x0032a769,0x002aa453,0x002920d6,0x00274a4a,
-0x00212c30,0x0000e096,0xffc4b43a,0xffacc3af,0xffa9171c,0xffb89b81,0xffb46413,0xffa06ff3,0xff8c3a1f,0xff727b6c,0xff64ec7a,0xff6c46ac,0xff303d4e,0xff17027e,0xff1089b1,0xff259b09,0xffe65229,0x00014d57,0x0004521d,0x000f2c8c,0x0018c239,0x001b82c0,0x00231e6f,0x0029eb81,0x002a3098,
-0x0027bfd8,0x0029992a,0x001ee9e7,0x0018b575,0x00120aa8,0x001e3a3b,0x00264f9c,0x002f9652,0x002dc896,0x003042bc,0x0034b5ba,0x000c9a48,0xffeef290,0xffd201eb,0xffc5ba30,0xffa9207e,0xff961b7d,0xff7a857a,0xff770f23,0xff5c6a6a,0xff6482c4,0xff5b375d,0xff562831,0xff788c23,0xff98294f,
-0xffaf72f3,0xffcb4dd2,0xffd1a214,0xffde1113,0xffdb7014,0xffd96208,0xffd7c8dc,0xffd650f4,0xffd38dc9,0xffd123f1,0xffd59b27,0xffdab4b1,0xffdf9f70,0xffe54a1e,0xffeafe23,0xffedddcc,0xffeccd37,0xffeb4f81,0xffeaa8be,0xffebc1f6,0xffeb41f4,0xffef1a70,0xffdcfde4,0xffdffd70,0xffd7e42c,
-0xffd1eadf,0xffcff447,0xffd1c514,0xffd77844,0xffd9bf6c,0xffd7eb8e,0xffda7ffa,0xffdaf297,0xffd95241,0xffd7fbbf,0xffd4011e,0xffd4fecc,0xffd85ec4,0xffe62c53,0xfff2ebd8,0xffed9683,0xffebc4f9,0xffe92ec0,0xffe7345b,0xffe59cfa,0xffe2c04c,0xffe52898,0xffe617c2,0xffe6de7d,0xffe7d459,
-0xffe899fb,0xffeaca8d,0xffea486b,0xffeab103,0xffead285,0xffeb154e,0xffeacaa2,0xffedd366,0xffe225e0,0xffdbeffb,0xffd0c542,0xffe059c8,0xffd583a3,0xffc78779,0xffc90b13,0xffc9c983,0xffcd8289,0xffcdd618,0xffcfd515,0xffd1a632,0xffda14b7,0xffe44a81,0xffd530ac,0xffdfc7fe,0xffe63419,
-0xfff0afab,0xfff89a46,0xfff5ccc1,0xfff06ccf,0xffed560e,0xffed3057,0xffe928fe,0xffea6377,0xffef5510,0xfff1044b,0xfff3f492,0xfff7f304,0xfffb7107,0xfff88203,0xffec80a6,0xffe884a1,0xffe6aa53,0xffe8a44c,0xffecba88,0xffef2247,0xfff33f1f,0xffec2bb4,0xffe8fac5,0xffe2ce53,0xffeb672e,
-0xffef1bf9,0xfffc8a70,0xfff0cfc4,0xfff32033,0x0001597c,0xfffc0cd6,0xfff960ad,0xfff2613b,0xfff66155,0xfff75c84,0xffe91a76,0xfff7e0d7,0xfffdb32a,0xfff5fd56,0xffeda9bf,0xffe66070,0xffe77a2c,0xffdc3923,0xffd8dbdb,0xffe1f1c9,0xffe6581c,0xfff71d98,0x0008f188,0x001c981a,0x001293f0,
-0xffe9e3e8,0xffd54c0b,0xffca59e6,0xffd1eb0f,0xffdb922c,0xffe52ce0,0xfff03bc1,0xffe41823,0xffdae319,0xffcdeb65,0xffddffce,0xffebf81a,0x0012162b,0xfffb3851,0x00013d32,0x00230c00,0x0013b812,0x00112246,0x000785dd,0x000df7ef,0x0001f9e7,0xffde9eee,0xfffb1840,0x001b5efe,0x000382a9,
-0xffeca8a8,0xffd8c969,0xffde2b65,0xffc10299,0xffc4c45b,0xffdc93ae,0xffe9b93c,0x000718ae,0x00161f74,0x003587f3,0x002196fc,0xffd5b60f,0xffbc033c,0xffaba666,0xffbc78ea,0xffcf2c81,0xffe02059,0xfff62119,0xffdd0458,0xffcc1206,0xffba4958,0xffd3ed60,0xffe527fd,0x003acc79,0x0002dc33,
-0x001676d5,0x005a0035,0x004770a5,0x003a033d,0x000baf02,0x001af41f,0x0013b070,0xffd74a18,0x001e154e,0x001756bb,0xfffe78fc,0xffee11fe,0xffe0ea11,0xffe8bade,0xffc6111f,0xffa61dbf,0xffb2aef3,0xffcf701d,0x000c87e6,0x00465824,0x0095508c,0x00735bac,0xffe00d57,0xff99f44f,0xff72ebf1,
-0xff86ad11,0xffa8b9da,0xffcdf965,0xfff9164d,0xffdb5f5c,0xffc2e237,0xffb07357,0xffbd85ce,0xffe08d43,0x006d65e7,0x0046b960,0x0053b95e,0x009211b1,0x0094af6d,0x007f2189,0x0048e98c,0x0074de8e,0x003615df,0xffa6b9c2,0xfff8d254,0x00c27261,0x00197446,0xffe6bd1b,0xff951b0a,0xff5e34a6,
-0xff71e7cd,0xffde1ffb,0x0052a887,0x004d573c,0x003ab3f4,0x00044777,0xff592d13,0xff46076b,0xff8b45a5,0xffdef51f,0x0010f4cd,0x0019ff9f,0x000fa275,0x0004d7c7,0x000e8fa9,0x0002d225,0xfffd6403,0xffedf583,0x003951b4,0x002631ce,0xffd7d37b,0x002c1845,0x005a278f,0x004cf031,0x0023abb5,
-0xffe4cd29,0xff8794da,0xff3ae2ad,0xffaa1848,0x009994fc,0x00f72385,0xfebdd848,0xff6811cf,0xff4c20c1,0x0003760d,0x017d3a32,0x009f74f1,0x002c3239,0x0056ccc3,0xff929452,0xffa2921c,0x0055bacd,0x003f5acf,0x002177ee,0xfff253d7,0xffe476d6,0xffd9818d,0xffd94923,0xffeda38a,0xfff50560,
-0x00000074,0xfffe82ca,0x0010ca62,0x002093ed,0x00135041,0x0033ba22,0x0057e3f9,0x004f0d72,0x002552aa,0xffe45fa4,0xffe9b13b,0x002154f6,0x00a790b8,0x00fa98bb,0x0065bcd4,0xfef0f224,0xfebe8506,0x00a2e0de,0x0180229e,0x005a50cd,0xff6d7602,0xfee48d06,0xff27f5a9,0xffe755a9,0x0112d7de,
-0x0064c3bf,0x00004a2a,0xffd47d84,0x0022ab99,0x0058dca5,0x006f9651,0x006ad6fb,0x004ef6cb,0x0020ddb0,0xfff3d5cd,0xffec771a,0x00066d42,0x00039a70,0x00081afb,0x0005d6ae,0x00399907,0x002f0ee0,0x00016eed,0xfff24485,0xfffabb20,0x000822ca,0x005734ae,0x00607267,0x004fe552,0xffa910dd,
-0xff6fe05e,0xffdd23da,0x003e0352,0xff828037,0xff33711d,0xff6bfa23,0xffb1d74b,0xffd4cfd0,0xffc1ef6f,0xffbe6ee1,0x0012e424,0x0076d283,0x00be5724,0x008d29f1,0x00b77180,0x00a4cec8,0x006f7188,0x00244fa3,0xfffbff87,0xfff0b787,0xffd7e046,0xffc95b6d,0xffbbba53,0xffc743ce,0xffcb53bf,
-0xffbe7d85,0xffb84656,0xffc78cba,0xffeba3d9,0xffd01f70,0xffd2c6ef,0xffed15d6,0xffe6c7d4,0xfffdb72e,0x000dda88,0x0020d3d5,0x00162972,0xffec29f9,0xffbe4e44,0x007941ff,0x0093233c,0x00d95816,0x00eb32dc,0x00d4f5aa,0x00a53bee,0x00a246d5,0x00ca0faa,0x0080acfa,0x00474fe2,0xfffb5023,
-0xffde3041,0xffd08f3f,0xffde0688,0x00021cb5,0x00151609,0x00200887,0x00262633,0x0023756b,0x0013bae0,0x0011d2af,0xfffe4f8c,0xffe479cc,0xffd886fc,0xffc913b9,0xffc8c084,0xffde2afd,0x0002a873,0x00244726,0x000ecde9,0x000cc764,0x00152529,0x0029a879,0x0042ccab,0x005541ca,0x005a5e26,
-0xff466efd,0xff8ccf81,0xff896446,0xff9f029c,0xffb3dce0,0xffdeb20d,0xfff88308,0x00101cc2,0x001e76a1,0x00302a36,0x003e4069,0x003cf090,0x003510ea,0x00221b5b,0x0020a696,0x0027eaa4,0x0035921b,0x002f9655,0x002a55c2,0x0027426c,0x0010782c,0xffed1aae,0xffb7a820,0xffb0c418,0xffb21cc7,
-0xffbf9a2e,0xffba9581,0xffaa34ea,0xffa1786d,0xff8b65f2,0xff83598d,0xff8fc052,0xff61a5bb,0xff420dc5,0xff23af62,0xff25580c,0xffdab681,0xfff74393,0xfffb7033,0x0007e81f,0x00103dda,0x00188c3a,0x0026cd96,0x0036bc69,0x0038483f,0x0036c394,0x0037bc62,0x002f507f,0x002b8bd0,0x002863b9,
-0x002cc305,0x002e9d9a,0x00319358,0x002da421,0x002a22c8,0x002dc622,0x0009f705,0xffe87ed6,0xffc6b3bb,0xffc73016,0xffb95375,0xffb6add2,0xff9819b6,0xff8f2ff3,0xff709e89,0xff71651d,0xff62a685,0xff576583,0xff70366b,0xff87914b,0xff97fa56,0xffbd2124,0xffe01697,0xffea9184,0xffe6ef32,
-0xffe4e927,0xffe3c4a9,0xffe15d69,0xffdc22ee,0xffd745ad,0xffd9f3f9,0xffdf54b9,0xffe596d6,0xffecc6f2,0xfff29eb3,0xfff66b79,0xfff71ac8,0xfff836fe,0xfff9db4d,0xfffc2078,0xfffdaea8,0x0001eb3e,0xffee3088,0xfff04733,0xffe89e52,0xffe227af,0xffdb61e6,0xffdaf903,0xffdde1b2,0xffdfd6ce,
-0xffdcf2d8,0xffdf1148,0xffde2e3c,0xffdc6b01,0xffde20dd,0xffde551b,0xffe0b1d4,0xffe30133,0xfff91bb0,0x0002f147,0xfffdb3db,0xfffafb85,0xfff77d59,0xfff4f28d,0xfff363c6,0xfff07829,0xfff3e395,0xfff4e2c5,0xfff51fa0,0xfff583d4,0xfff64670,0xfff83e80,0xfff89080,0xfff9498f,0xfff9bac5,
-0xfffa93ed,0xfffacc64,0xfffe9257,0xfff5318a,0xfff0c03b,0xffe70832,0xfff2de55,0xffeae7ab,0xffde9e6d,0xffdf4a7a,0xffdf3865,0xffe1f116,0xffe15e7d,0xffe2ab95,0xffe2ddb3,0xffea982f,0xfff27f78,0xffea49de,0xfff36c5a,0xfffa90fa,0xfff3a14f,0xfff9bda0,0xfff70e24,0xfff3a236,0xfff113d0,
-0xfff02d2c,0xffec1a6d,0xffece2ad,0xffef928b,0xfff46a32,0xfff8132c,0xfffb9d3c,0xfffe9847,0xfffbfb6d,0xfff31673,0xffed1f02,0xffea69b9,0xffeafb57,0xffedc776,0xffefaf26,0xfff3b302,0xffed3c62,0xffea8aec,0xffe414fe,0xffef222c,0xfff2831d,0xfffcf2f1,0xfff31330,0xfff5966f,0x0004532a,
-0xfffd1a21,0xfffa5c04,0xfff6d89f,0xfff88127,0xfffa1f47,0xffee3a66,0xfff9a45d,0x000252ff,0xfffa8874,0xfff60b6e,0xffeee792,0xffeda295,0xffe07127,0xffdb1e89,0xffe06aa0,0xffeb50c6,0xfffc728f,0x000c9892,0x001e57ff,0x0017ff85,0xfff8a9e0,0xffdf0ca5,0xffd0d4f8,0xffd39854,0xffd89aad,
-0xffdfdce4,0xffeb504a,0xffe17b8b,0xffda78aa,0xffcd25a2,0xffe3fd35,0xfff152f6,0x000d1eb4,0xfffc21af,0x0001ace3,0x0023470a,0x0011ee6b,0x00106d9b,0x000e7a03,0x000ef1c6,0x0004b7d0,0xffeac333,0x00021173,0x00175241,0x00002ad3,0xfff645f6,0xffe4fa1e,0xffe45a6b,0xffc4afba,0xffc68192,
-0xffd4dfd4,0xfff1799e,0x0010fbdc,0x001b6997,0x003924a3,0x0029b0bc,0xffef9535,0xffcbc0e9,0xffb59130,0xffbdc67e,0xffc7194c,0xffd3aa37,0xffec3775,0xffd64bc2,0xffc8f7c7,0xffb51f08,0xffdd69bd,0xffec9051,0x003207c2,0x0003ec81,0x00165eaf,0x005d9051,0x003ed69c,0x0033d265,0x0015d928,
-0x001aac40,0x00171b04,0xffe47061,0x001e16d2,0x0024f7f0,0x000a762f,0x000626bf,0xfff82d6f,0xfff7908c,0xffce0ffd,0xffa72be2,0xffa81fa3,0xffd8ddad,0x00142678,0x0043d5ee,0x008eb6b8,0x008281bb,0x000e8aed,0xffb6ad78,0xff83599b,0xff86cfcf,0xff959b44,0xffb25d93,0xffe265c3,0xffcf402a,
-0xffbcca8c,0xffa87241,0xffc6cea8,0xffe5f72a,0x00660f7a,0x0038bd27,0x0045c808,0x009f0ba0,0x009a685c,0x007f9523,0x0055d43e,0x006d39cf,0x0030901b,0xffbd0983,0x000afc14,0x00738dc8,0xffe50ad5,0xffd3a180,0xff9533cb,0xff64fa8b,0xff5f0b16,0xffcde74f,0x0066110f,0x0052de2f,0x004e9128,
-0x003fd979,0xff731e2d,0xff4b320d,0xff88aec4,0xffdac800,0x000bdc70,0x001a17e1,0x00151341,0x00050e9f,0xffffb113,0xfff04ca0,0xfff0c119,0xffed41aa,0x00357956,0x00289542,0xffd0b5f9,0x0045cf85,0x00669d6f,0x001ea3cc,0x00153918,0xffda6206,0xff85cf76,0xff5b4cc1,0xffce25dc,0x009c7875,
-0x00b9eefc,0xff15acbf,0xffb2741f,0xff72eb92,0x00162b3e,0x01879b86,0x00bb3f19,0x004907b1,0x00701cc9,0xffa6fb0d,0xffa73440,0x002aab5c,0x005b0435,0x0045bfc2,0xffe006e8,0xffd1b786,0xffc3625a,0xffd4eed7,0xffe2383a,0xffe4d3a5,0xffea46ac,0xffe5980a,0xfff8909f,0x001dc516,0x00144eec,
-0x0034704a,0x004e56bc,0x003898f3,0x00091746,0xffcd5bae,0xffe52338,0x0029f0ba,0x00abcf8a,0x00dadbb4,0x0033c17e,0xfede9d16,0xfef3971a,0x004c6346,0x0165afc6,0x00171abc,0xff2f10ea,0xfeb159be,0xfea7d86e,0xff87f5d8,0x0161d56e,0x00736e8c,0x00111ec2,0x0009d431,0x001bac65,0x003afafe,
-0x0057f9cb,0x005bcc2f,0x0049b7c5,0x0035d0cf,0x000110b8,0xfff7aeaf,0x00187531,0x0014177a,0x0013283b,0x000c87d2,0x0034938e,0x0023157f,0x00020ca0,0xffe99ab8,0xfff2de97,0x0009c028,0x004a1a83,0x0041811c,0x001a17ce,0xffa63bf5,0xff7d0212,0xffd71402,0xffe345e7,0xffab878a,0xff416868,
-0xff802a1d,0xffbbcd8d,0xffc94397,0xffd10bf5,0xffd36e37,0x0037ed7e,0x00527868,0x009b4fdd,0x009dabe9,0x00bbc9c0,0x00acb5f4,0x0075dd3d,0x0028070f,0xffe9ce97,0xffd7cd61,0xffc18e49,0xffb9efd8,0xffb8b605,0xffb83b08,0xffbe4901,0xffbec257,0xffbf4d43,0xffcce439,0xffe993bd,0xffd73697,
-0xffd551a5,0xffe7eeec,0xffe51ff3,0x0003b2a8,0x000ab0f4,0x001f8fc7,0x0014dda6,0xfff71802,0xffe7694f,0x0061edb0,0x0059e6cd,0x00c5c800,0x00f29446,0x00e3f4cd,0x00beed87,0x00ad1ef4,0x00bdec53,0x008c73aa,0x0061c1fc,0x0029a2a9,0xfff896b5,0xffdd2266,0xffd9c849,0xfffd2f26,0x0014cf8f,
-0x0021e64d,0x0021d3ca,0x001f38b2,0x00196bb8,0x000f7c54,0xfff6a1d4,0xffd53017,0xffcddd97,0xffc82e11,0xffcb07a6,0xfff6cce8,0x001cce48,0x002ab56a,0x0011f511,0x000c4586,0x000f6caa,0x002d31a3,0x0047ce11,0x00510a21,0x004aa881,0xff58fb0b,0xff8f0c77,0xff9cb720,0xffb3fec0,0xffc49262,
-0xffe9fda7,0x00019416,0x001700f1,0x00243404,0x002fb777,0x003c1100,0x00327af7,0x002fcbe2,0x00244095,0x002aa410,0x002e7b3e,0x00308245,0x002df6f0,0x0023b698,0x001d1a45,0xfffb98a5,0xffd8a193,0xffb04e30,0xffbab037,0xffbf3326,0xffc1147c,0xffbc91e1,0xffb253d6,0xffb83458,0xffaa65ad,
-0xffa8a38c,0xffb52482,0xff97fec9,0xff757198,0xff43cdbb,0xff41b171,0xffcb29c3,0xffea3c5f,0xffedaea2,0xfff7a77c,0xfffde74c,0x00092718,0x001add9d,0x00301678,0x0036b369,0x0039b2a5,0x003d5d56,0x0037f614,0x0035cbc8,0x00350f7b,0x0033bf24,0x00316b88,0x002edcae,0x00272b69,0x001db7f6,
-0x001ce8bf,0x0002c7f5,0xffe5e0c2,0xffc683fd,0xffcab3e7,0xffc604eb,0xffc9f9b3,0xffaf9a75,0xffa31226,0xff86660d,0xff7f3790,0xff6c6169,0xff5bc169,0xff6ae6fc,0xff79266c,0xff81e50e,0xffac22d0,0xffec032b,0xfff365bf,0xfff06421,0xfff0529b,0xfff0d6cd,0xffeed123,0xffe92842,0xffe34922,
-0xffe3dff2,0xffe8281a,0xffee50e8,0xfff57993,0xfffb7dbe,0x00007c5d,0x00028871,0x00058020,0x00092c45,0x000c485c,0x000fa297,0x001415fc,0x00029bd1,0xffffdb9e,0xfff845b3,0xfff1516d,0xffe713d3,0xffe249b9,0xffe22b84,0xffe32885,0xffe06738,0xffe0dded,0xffdead69,0xffdc8f9f,0xffe16b2a,
-0xffe5c7af,0xffe904d9,0xffeaa1a5,0x00002ed1,0x0004ff77,0x00016e3b,0xfffea0c4,0xfffb4094,0xfff92d44,0xfff879b4,0xfff6d95d,0xfffa564a,0xfffb3be3,0xfffb089b,0xfffb1835,0xfffb8e7c,0xfffce414,0xfffdeaed,0xfffeeb0c,0xffff9969,0x0000fe3a,0x0001ba26,0x0005720b,0x00000eb8,0xfffe2dc5,
-0xfff8fab5,0xfffb42cc,0xfff7b2d2,0xfff0dc12,0xfff07fc3,0xffef2fb2,0xffeff1ae,0xffee85a4,0xffeee758,0xffed5bd9,0xfff1ee9c,0xfff58cb7,0xfff7f8dc,0xfffcadfc,0xfffe9bfd,0xfff71da8,0xfffc48e7,0xfff939d3,0xfff7c0da,0xfff56cb8,0xfff35f25,0xffeedfcc,0xffef521b,0xfff1245d,0xfff845fb,
-0xfffc5954,0xfffeb18d,0x00017659,0xffff7a3d,0xfffa6af3,0xfff27ed4,0xffef0b21,0xffee3b4c,0xffefd3eb,0xfff10eee,0xfff49a13,0xffefa0d8,0xffed8522,0xffe5fe3e,0xfff45097,0xfff6e440,0xfffcc317,0xfff5ff71,0xfff8790c,0x000578b0,0xfffdb638,0xfffb4ea7,0xfffb7c2f,0xfffb6809,0xfffd7a46,
-0xfff41cba,0xfffc94ad,0x0008cb0a,0x0000d3b0,0x0000d22e,0xfff99cf7,0xfff43dbb,0xffe3d651,0xffdd0cc4,0xffe1ad72,0xfff12ccd,0x00019a75,0x000e2b24,0x001edc5d,0x001cb846,0x00086965,0xffea6030,0xffd977ab,0xffd7449e,0xffd81538,0xffdc8df5,0xffe73951,0xffdfb4b0,0xffdbc649,0xffcf570d,
-0xffeb9f4e,0xfff80eb6,0x00084569,0xfffeb47f,0x00032a3f,0x00204b7c,0x000f4373,0x000f00a0,0x0014f603,0x00101b98,0x00085672,0xfff8a549,0x0009dc6b,0x001760d7,0xffffaecd,0x000269f4,0xfff231c9,0xffe989ea,0xffc6459e,0xffc668d0,0xffd1fba6,0xfff9c35c,0x00199590,0x001c6037,0x00395fe2,
-0x002f684e,0x000bf488,0xffdd4316,0xffc28ab7,0xffc1ddcc,0xffc3354f,0xffcaf29f,0xffe25644,0xffd1ca58,0xffc96603,0xffb4f1b3,0xffe9e954,0xfff652f9,0x00271525,0x00085363,0x00171fd9,0x0058875d,0x0032567c,0x002b7c9d,0x001ff081,0x001a7ab4,0x001b78f7,0xfff59b81,0x001fba26,0x0035e921,
-0x0018b266,0x002358d3,0x00147871,0x0006ad6c,0xffd2f1f3,0xffa7f2e6,0xffa6db70,0xffe52230,0x001ac585,0x003b949f,0x0082ebd2,0x008df965,0x0040cb13,0xffd6f67d,0xff98727a,0xff8c0788,0xff8a50ae,0xff9c8f4d,0xffcb72a5,0xffc22edc,0xffb6e047,0xffa0e835,0xffd43c0c,0xfff11091,0x005b017f,
-0x003024cd,0x003d92a8,0x00a6062b,0x009a9ffd,0x007dce4d,0x0064159d,0x0065edda,0x00305fb0,0xffdb972e,0x0020e8a0,0x0028a5cf,0xffbad063,0xffbd94f6,0xff8f03c5,0xff5c8cc9,0xff50b945,0xffbc3ec6,0x00682eb4,0x0051a419,0x00581e25,0x006ebd32,0xff925a78,0xff556646,0xff7ff8f4,0xffda218a,
-0x000bf4bf,0x0019eb28,0x001f2daa,0x000dbbd1,0xfffa7aee,0xffe96377,0xffef439c,0xfffa428e,0x002f9a77,0x00274b4a,0xffcf55d2,0x005ec562,0x00740e23,0x00017c05,0x00057b13,0xffca6761,0xff8713f1,0xff80775b,0xfff19844,0x0095c03b,0x007767d8,0xff6a98cc,0xfff303d9,0xffab28a9,0x0031dd0e,
-0x0171af4a,0x00d5c01e,0x006cad3d,0x00764b5e,0xffbb14d4,0xffb0aa26,0x000a312d,0x0073db87,0x006a5a4d,0xffd8217d,0xffca76be,0xffb9d12e,0xffd5825b,0xffdb9c35,0xffd7b7bd,0xffd227f6,0xffcff243,0xffe3e0fd,0x001a572a,0x00138cac,0x00318c50,0x0042dc93,0x00230c5c,0xffef1f5a,0xffbb39ea,
-0xffebc677,0x0036b99d,0x009d40c9,0x00ab0923,0xffff973c,0xfee14598,0xff262949,0xfffe7583,0x01015440,0xffb032ba,0xfefa8450,0xfeb75348,0xfe5f8fda,0xff3d7301,0x015f2692,0x007ade15,0x002e1686,0x0038fec7,0x0016e779,0x001f0394,0x0040ac85,0x0054577b,0x004df15d,0x00487065,0x0014d113,
-0x0007532d,0x002441ee,0x001e436e,0x001905c7,0x001236b4,0x002a99a7,0x0015abf7,0x00035a70,0xffe3fac0,0xffee4bfa,0x00103cdc,0x0034e63b,0x001b7c3a,0xffe566a8,0xffb45c60,0xff9d4692,0xffe07aac,0xffa31178,0xffcf5d30,0xff6e943f,0xffaf0142,0xffdf46f2,0xffdec191,0xfffad5cf,0xfffa85fa,
-0x004b6344,0x0037c06d,0x007fdc90,0x00aeb898,0x00b67357,0x00a7dbe2,0x0075429b,0x002aea80,0xffe29c40,0xffc6990d,0xffb3adf3,0xffb02d98,0xffb8f429,0xffaea007,0xffb503d1,0xffbeb04d,0xffc95305,0xffd6da62,0xffe7b176,0xffe3c8c9,0xffdda7d6,0xffe2d8d6,0xffe417a9,0x0006f727,0x00080b8f,
-0x00169663,0x00116328,0x000e28f5,0x00050f1e,0x003598e7,0x0010f7a0,0x008658be,0x00c488cc,0x00c9d2d8,0x00befbc4,0x00b174c4,0x00b75334,0x0099f41e,0x007a1fe2,0x005c6898,0x001cee48,0xfff81684,0xffe8f952,0x0001547f,0x001738ec,0x002476a7,0x001f9230,0x001c95ee,0x001dd142,0x000b87c1,
-0xffed4ecf,0xffc7e379,0xffc2ca7b,0xffc75232,0xffd0a435,0x000a0bce,0x002d9787,0x002aab1c,0x0015af1c,0x00101b66,0x0010c5de,0x0035a60c,0x004b9ef2,0x00414eec,0x002fffe3,0xff7f8d1a,0xff9d3b43,0xffc5f685,0xffe1d229,0xffeeeb65,0x0002a3fd,0x000fa550,0x001dc6ce,0x00278884,0x002c6dad,
-0x0033f043,0x0024bc19,0x00257782,0x0023bc9a,0x002d961f,0x002d7dae,0x0027b171,0x0026a15d,0x0017441d,0x000a0331,0xffe4b83c,0xffc757d1,0xffb1e432,0xffc50f1f,0xffc9f91a,0xffc0c2ac,0xffbd9d70,0xffbb2b31,0xffd011a7,0xffcd2490,0xffd17914,0xffdb9f97,0xffcc8a0f,0xffacaf81,0xff7506e2,
-0xff767804,0xffbb3329,0xffda808b,0xffdc3bd9,0xffe268f6,0xffe750b1,0xfff6182f,0x000a364d,0x002125eb,0x002d3152,0x0035468f,0x003d13ff,0x0038a1ad,0x0035d538,0x00347ecd,0x0030ef12,0x002e5a0d,0x002bf642,0x001fd7c2,0x00115f4b,0x000b5913,0xfffc0bf5,0xffe68998,0xffcd981a,0xffce966a,
-0xffccbeb7,0xffcf6c9d,0xffbdcb11,0xffb1aa85,0xff9b6d1b,0xff8d4924,0xff78d6d9,0xff64d134,0xff6a6836,0xff6e3ace,0xff6df6fb,0xff9a2c44,0xfff43497,0xfff98dbc,0xfff8c078,0xfffc39ba,0xfffedbeb,0xfffdfe64,0xfff97d9a,0xfff51d98,0xfff3db88,0xfff64233,0xfffb0d1c,0x00005480,0x00056937,
-0x0009b94c,0x000bf9a7,0x000e62c6,0x0011a320,0x00143655,0x0017d833,0x001b8b05,0x00107dcb,0x0007cff6,0x00005922,0xfff8bd4d,0xffed6f74,0xffe421d2,0xffe1b887,0xffe11a62,0xffdf357c,0xffddead0,0xffdafef7,0xffd9384a,0xffe0e0da,0xffe98bff,0xffee42c4,0xffefa5c1,0xfffbe15f,0xfffc6bfe,
-0xfffb45e0,0xfff949f1,0xfff74a0c,0xfff6d643,0xfff7d12f,0xfff874b1,0xfffac7a5,0xfffb22b4,0xfffa53eb,0xfffa2c19,0xfffa3bd1,0xfffade4f,0xfffbe2b5,0xfffcdc10,0xfffd8897,0xffff1d09,0x000015e8,0x00029e75,0x0000ffc7,0x0000afa0,0xffff911b,0xfff91e1a,0xfff8bc3b,0xfff6a3fb,0xfff5a963,
-0xfff35b6e,0xfff22817,0xfff04b39,0xffefd3f9,0xffecba2e,0xffee8afb,0xffeee29c,0xfff8d376,0xfffa0eec,0xfff6e222,0xfffaabd5,0xfffea6c9,0xfffbe3e0,0xfffbf609,0xfff9ce24,0xfff707c9,0xfff1914f,0xfff1ad90,0xfff38f85,0xfffc1e60,0x000053fc,0x0000f51a,0x0003e8e4,0x0002d5fc,0x0001f295,
-0xfff84965,0xfff42a83,0xfff1a072,0xfff29ae7,0xfff323c1,0xfff5fa1b,0xfff22cd2,0xfff0c242,0xffe90382,0xfff99aef,0xfffae596,0xfffc39c7,0xfff8d7b4,0xfffadc26,0x0004547b,0xfffd363f,0xfffb893a,0xffff4280,0xfffd40ca,0xffffe80f,0xfff9b746,0xffff16bd,0x000e884e,0x000737aa,0x000bf14b,
-0x0004be85,0xfffbf7bd,0xffe6f362,0xffdf1f2d,0xffe4ec1b,0xfff71004,0x0005e8e3,0x000dc35d,0x001e9293,0x0020e629,0x001862a3,0xfff6e863,0xffe3991d,0xffdb785b,0xffd9b170,0xffdbb0b0,0xffe4743a,0xffdf0258,0xffdedce9,0xffd4b9b7,0xfff40397,0xffff27ca,0x00042be3,0x0001e6fd,0x000474db,
-0x00196cf7,0x000b3410,0x000c37d0,0x00192fc5,0x000fe31d,0x000aad4c,0x00047336,0x00101744,0x00183fc5,0x0000305b,0x000d6626,0xfffe79c7,0xfff0db3c,0xffc846d9,0xffc696b3,0xffd2b775,0x0001e0eb,0x00207343,0x001a03e0,0x0037119a,0x0033201d,0x0028a230,0xfff02892,0xffd1dea1,0xffc67ab3,
-0xffc3de63,0xffc732c9,0xffda1368,0xffcff6d7,0xffcdb01a,0xffbb8ac9,0xfff866a5,0x0000efca,0x001c7366,0x000df1ea,0x00171e6b,0x004966a6,0x00224879,0x001fc40c,0x00263a6e,0x00177d0e,0x001d13a0,0x0005af7a,0x0020ddd3,0x00429800,0x002541cd,0x003f3abe,0x00310f3f,0x00197374,0xffd7585c,
-0xffaa937c,0xffabc20b,0xfff178c6,0x001f3d8e,0x002f54cd,0x007557ce,0x0095b1e6,0x0072ad01,0xfffa3e2e,0xffb0d077,0xff920b1a,0xff86cdd3,0xff8fa983,0xffb806e9,0xffb82467,0xffb4df9f,0xff9f6e0c,0xffe4e549,0x00003997,0x004f0ff0,0x002c46be,0x0038fb1e,0x00a38cc6,0x0093a8a2,0x00781ea6,
-0x006f8ee8,0x005b787e,0x002f74c9,0xfff93035,0x0032d9b5,0xfff03b69,0xff9ebdfd,0xffa50d7b,0xff818e66,0xff510545,0xff4bb236,0xffaf9f1b,0x0063f2a5,0x005113cb,0x005e6856,0x009042f2,0xffaf2577,0xff5e7a3f,0xff770d93,0xffd623e6,0x000cb261,0x001ec80b,0x002bf982,0x001bc67c,0xfffc80fc,
-0xffecb83c,0xfff827fe,0x000fa724,0x002951b4,0x00235662,0xffd0538d,0x0072b872,0x007f6a17,0xfff2965c,0xfff4bd57,0xffb67900,0xff87ddb2,0xffa55107,0x00101e57,0x00859f10,0x00407b58,0xffaa2b7a,0x0024f03f,0xfff34599,0x0055ca47,0x0140e9f0,0x00e6731d,0x008fb42d,0x006e29a1,0xffcbfa6f,
-0xffb91afe,0xfff564f9,0x0085fc65,0x008b4d7e,0xffe31927,0xffcae3e8,0xffb5396f,0xffd8aa26,0xffda66d9,0xffd21dc9,0xffbe9a33,0xffc545cd,0xffd7db8c,0x0012e26b,0x000f8a1b,0x002ab2f5,0x00385175,0x000f7328,0xffd93e6d,0xffb16f13,0xfffcdf26,0x0046b23a,0x0084d93a,0x00720025,0xffcab3df,
-0xfeeef076,0xff4a899a,0xffc63081,0x0062b411,0xff420089,0xfed423ae,0xfee1ba64,0xfe57bddc,0xff0858b3,0x00f45df8,0x007fbf43,0x005cbd83,0x00579335,0x001b4a76,0x000cb852,0x002918ce,0x004d0734,0x0052e69f,0x0053c3df,0x002ab27b,0x0017a48f,0x00238064,0x0020a044,0x00195fc5,0x00160b7d,
-0x001d72d8,0x00074453,0x000237ac,0xffe1d7aa,0xffee17d9,0x0017e55e,0x001bb572,0xfff62b39,0xffbb80d0,0xffcaf5db,0xffc40600,0xffe5cf3c,0xff8f72f6,0xfff303f0,0xffb6b85d,0xffee3fdd,0x000ddddc,0x000c49ca,0x00271d09,0x00206d35,0x004ada00,0x00236029,0x00616d86,0x00ab1953,0x00a5980f,
-0x0099c5c9,0x0072ebc2,0x002b5fba,0xffe4c602,0xffbf909a,0xffaf7f37,0xffaca3ed,0xffb9ab0e,0xffac0b69,0xffb0857b,0xffbe2d89,0xffd46756,0xffe3850d,0xffe74351,0xfff15003,0xffe819fd,0xffdf2a77,0xffe5193b,0x00077984,0x0005edd7,0x000cd1c4,0x00115418,0x002adcb5,0x001a9d2e,0x0005204c,
-0xffcda55c,0x002ae8d6,0x006a3a1f,0x00881d6f,0x00a669fc,0x00af540a,0x00b4f02e,0x00a73c04,0x00908fb8,0x0087077c,0x0047b43d,0x001d96c4,0x00009add,0x000eb1fe,0x001b39ed,0x001fbf41,0x001de32e,0x0019a186,0x001b64f2,0x00027ca3,0xffe124fe,0xffbe4959,0xffb9a9f9,0xffc7b922,0xffdbafe9,
-0x0015ac69,0x0034321d,0x0026e78d,0x001cc6a6,0x001997c6,0x001795d3,0x003c990a,0x0048a050,0x002ca373,0x001420cb,0xffad2690,0xffbfa3cb,0xfffc7ce1,0x001ab1c9,0x002690ed,0x002250e8,0x001e23ea,0x002155da,0x002550f8,0x0024bfbd,0x00258123,0x0014cc7b,0x0018cce1,0x002088be,0x002aff4b,
-0x00299c5a,0x001d0994,0x001c73cd,0x0008fae7,0xfff3db9c,0xffd13b19,0xffbc6216,0xffbab901,0xffcb55f7,0xffce8c31,0xffc1150e,0xffc13a2d,0xffc7c822,0xffe815d4,0xffefbce0,0xfff97ee9,0x00019f22,0xfffe5a99,0xffe7039a,0xffb7484d,0xffb44265,0xffacab74,0xffc746d5,0xffca7238,0xffd08063,
-0xffd8bfbd,0xffea3f1c,0xffffa2f2,0x00153910,0x0022020f,0x002acb1d,0x00324440,0x002ef6d2,0x002b8054,0x00296f49,0x0025ef1b,0x00260fe0,0x00279ae8,0x0016ec03,0x0004693c,0xfff9ce0f,0xfff48df1,0xffe5c532,0xffd47684,0xffd1e0b4,0xffd01d6a,0xffcf75e3,0xffc5199e,0xffbae1e7,0xffaad4d5,
-0xff989852,0xff84f87f,0xff7068d5,0xff6e1747,0xff6894dc,0xff619afc,0xff8c5fe7,0xfff75ff0,0xfffb3a6e,0xfffd7725,0x0003b84a,0x0007a055,0x0007fd98,0x000589fa,0x0004784a,0x00033a91,0x000540ec,0x00094923,0x000cc8d9,0x00109b91,0x00139c33,0x00142ed1,0x001379b6,0x00140b29,0x00146517,
-0x00168886,0x0017b616,0x00129d1a,0x00068532,0xffff3afd,0xfff74aa0,0xffec7297,0xffe0a1e7,0xffdcfd87,0xffdaef2e,0xffd99c53,0xffd74482,0xffd40c95,0xffd26d9c,0xffdca2ff,0xffe89916,0xffeeab2f,0xfff039c0,0xfff09d5e,0xffeec39c,0xffefe398,0xffef6277,0xffef8f5e,0xfff15fc9,0xfff44721,
-0xfff72a5c,0xfff7d980,0xfff779ee,0xfff642b2,0xfff5fc82,0xfff5e474,0xfff6662a,0xfff69108,0xfff72d4d,0xfff761b7,0xfff8b283,0xfff97dd0,0xfffa926e,0xfffa9aa6,0xfffa61fd,0xfffb721f,0xfff06f44,0xfff12273,0xfff173cc,0xfff027e5,0xffed506c,0xffeadd81,0xffe8c60d,0xffe7ada5,0xffe386f7,
-0xffe3f104,0xffe2cde1,0xfff03041,0xffef8a99,0xffea4045,0xfffd0dc9,0x00009e5d,0xfffd5ce3,0xffff11a3,0xfffd2089,0xfffa203d,0xfff3b79c,0xfff377c9,0xfff59103,0xfffeb7d7,0x0002afd9,0x00015e45,0x0004cfbe,0x0004ca06,0x00080079,0xfffd17f5,0xfff878d9,0xfff42554,0xfff4e245,0xfff4dbd6,
-0xfff68dfe,0xfff4cab7,0xfff4c92b,0xffee9784,0xfffe5e70,0xffff3228,0xfffd2f6f,0xfffcd027,0xfffdeaca,0x00027cbe,0xfffd22d4,0xfffc45fd,0x0002c671,0xfffeadd3,0x0001170e,0xffffa54d,0x0001beac,0x00136416,0x000b9c2f,0x0014816f,0x000dd56d,0x0002f9c2,0xffea7265,0xffe22f04,0xffe8a54c,
-0xfffbb814,0x0007ffbf,0x000a3c5c,0x001bbac8,0x00227bde,0x0025bb41,0x0002ab54,0xffedba70,0xffdf5208,0xffdbe8f4,0xffdba403,0xffe23e69,0xffe0105d,0xffe2c0bb,0xffdcba67,0xfffc8921,0x0006520f,0x000137cc,0x0004ce1a,0x0004ba2b,0x000f5e45,0x00055dbc,0x0007b170,0x001a2a56,0x000db740,
-0x000b3a83,0x000d1052,0x00135913,0x001801f1,0x0000ede6,0x0014ef53,0x0008db43,0xfff9eb58,0xffcd216e,0xffc9d955,0xffd5aa66,0x00084c76,0x00232c46,0x0013a956,0x00310816,0x003304a7,0x004148be,0x00020620,0xffe19ac0,0xffcb5de7,0xffc76bd6,0xffc65f24,0xffd4b81e,0xffd08bea,0xffd4b2ef,
-0xffc8165a,0x00075928,0x000c28a6,0x00139899,0x0013d7e8,0x0014ed24,0x0031deb5,0x000f9d50,0x00112833,0x0026949f,0x00117448,0x001b560d,0x0013ad8d,0x00200a67,0x00493402,0x002e873b,0x0054ac2d,0x00497dc2,0x002c8a05,0xffe01560,0xffb45dcc,0xffb41dd5,0xfffc3c8d,0x001fcccc,0x001d480c,
-0x006363d8,0x009543a8,0x009c970e,0x001d2cbe,0xffcb5961,0xff997ef0,0xff8802d4,0xff88b859,0xffa99b44,0xffb1e481,0xffb6b7a1,0xffa66d84,0xfff8aee7,0x001260c6,0x004413f7,0x002d02f9,0x0036631b,0x0093a3aa,0x0084e2c4,0x006d53bd,0x00742be6,0x004dba39,0x002c1423,0x0013ac2a,0x003d9f94,
-0xffc9019d,0xff8e1a53,0xff8cd49d,0xff71902b,0xff4c2983,0xff4d7be9,0xffa70568,0x0061ba37,0x00507f55,0x0062d4e4,0x00a6084c,0xffc974ec,0xff697e1a,0xff72fba7,0xffcc11d0,0x0009aa85,0x0027b89d,0x003cbd83,0x003056f1,0x00065b28,0xfffa244a,0x0009dc67,0x00275110,0x0021f412,0x001ca006,
-0xffd458ce,0x007d2bd0,0x00852068,0xffef40e4,0xffe70d3f,0xffa44c4c,0xff878c19,0xffc65b7d,0x0026bd7a,0x007069d3,0x0016915d,0xffdae970,0x004a7449,0x003a5018,0x00721bc6,0x00f88bc6,0x00e7cd70,0x00ac5412,0x00654b21,0xffdbe396,0xffbedd75,0xffe973ca,0x008f2359,0x00a3e048,0xfffac8cd,
-0xffd23426,0xffb4cc48,0xffd475e5,0xffd8c371,0xffd1e9c2,0xffb3a6f1,0xffc6f7e3,0xffd50390,0x0007276c,0x0007a722,0x0020277b,0x002ec85e,0xfffd0d96,0xffc7b283,0xffb025f4,0x0010f1f7,0x00539bf6,0x00674ead,0x003397df,0xff985d15,0xfeffcaec,0xff671a04,0xffa92871,0xffab9d62,0xfee34066,
-0xfec64dbc,0xff14731f,0xfe91f7c4,0xfefc1086,0x00496d15,0x0086063f,0x0094521e,0x005a92d6,0x001d5db6,0xfffec7f0,0x0013bcf8,0x00413d1e,0x005287eb,0x0054feed,0x003b774e,0x0021e0e1,0x0014496e,0x0019ad76,0x0014ed88,0x0018fb76,0x000fd09c,0xfff916b8,0xfffcc7dc,0xffe464de,0xfff3b786,
-0x001c40df,0x0005146e,0xffd88874,0xffa10622,0xffe3da2f,0xffec2921,0xffe55895,0xffa2d706,0x00199334,0x000f0bec,0x00353fc3,0x003c5981,0x0036ac40,0x00408662,0x00354dcc,0x003733d7,0x0009c75b,0x0035d8c3,0x0090f911,0x009002ed,0x008a00e6,0x0071fcee,0x002af4d3,0xffeb48c1,0xffbd89cc,
-0xffb1275e,0xffad4b88,0xffb822af,0xffae5369,0xffaf7d72,0xffbe0fd6,0xffde6dcc,0xfff00882,0xffe94d6b,0xfffb2598,0xfff0e41b,0xffde1d38,0xffe876be,0x0005eb83,0x000671d7,0x000361dd,0x0011c500,0x00470e5c,0x002c6d2c,0xffdbb857,0xff95b57f,0xffca8eef,0x00008c77,0x002f2145,0x00845171,
-0x00a95142,0x00a85376,0x00aaf7b8,0x009f8826,0x00a5d543,0x006d750f,0x00442b1b,0x001caf97,0x001f25d6,0x0021296f,0x0018fc35,0x001b5dc3,0x0012d904,0x000efc40,0xfff375f4,0xffd24bce,0xffb8cdc2,0xffb3e5d7,0xffca0a8c,0xffeb64ed,0x001a63cf,0x0031ed72,0x00220e99,0x002565a1,0x00249ab2,
-0x001f7c03,0x003d9c5b,0x003ebf75,0x001a9654,0xfffe0f95,0xffe0668d,0xfff3daf4,0x003586bd,0x00513fce,0x005a14a3,0x003f8466,0x002ac9e6,0x002300c7,0x001dd703,0x0016d7fb,0x001172d7,0x00046d1b,0x000b84a8,0x0018ee6e,0x0025c461,0x0023f44e,0x0011a9cc,0x00104ca4,0xfffabc59,0xffe07386,
-0xffc53ffd,0xffb90259,0xffc61b14,0xffcdaecf,0xffcddd36,0xffc14460,0xffc7c3ac,0xffd805cb,0xfffe2bb5,0x000f15e4,0x001dd2be,0x0024d5a6,0x002cbc16,0x00204a5e,0xfffdacf7,0xfff0ead1,0xffa1b2fb,0xffb45e9b,0xffbcf284,0xffc80ab1,0xffd9a2e6,0xffea3d18,0xfffc6a08,0x000b853b,0x00149cd4,
-0x001b5b4a,0x001f4d8b,0x001e1663,0x001b5d02,0x0019c360,0x001700a4,0x0019b4a3,0x001e8fff,0x000a603b,0xfff52012,0xffe6eb20,0xffe9248e,0xffdf4e90,0xffd481d1,0xffd1895a,0xffd145fc,0xffcd63cf,0xffc85a72,0xffbebddb,0xffb38142,0xffa0a8c0,0xff8fc66f,0xff7d61dc,0xff7669bf,0xff6ad0f8,
-0xff6166bc,0xff863ab0,0xfff4b1a7,0xfff692cd,0xfffc70bb,0x0003f71a,0x00083857,0x000a3571,0x000ba74d,0x000fd105,0x000fb41a,0x00118981,0x00149a9e,0x00164e65,0x00185b83,0x001a0306,0x0017a9c0,0x00133d9a,0x0010a239,0x000e2f6f,0x000de80a,0x000bf40b,0x000c2873,0xfffec1cd,0xfff7e03c,
-0xffefe66a,0xffe6607e,0xffda0d92,0xffd58b47,0xffd2a413,0xffd1b5d2,0xffce1f34,0xffca3cc7,0xffc894ad,0xffd41061,0xffe1f5d3,0xffe8ae37,0xffeaa159,0xffe30e83,0xffdfd39e,0xffe2f07a,0xffe45968,0xffe7161a,0xffeb6769,0xffefe928,0xfff4b415,0xfff37644,0xfff28a56,0xfff14887,0xfff0f4cf,
-0xfff0d6a1,0xfff16dd2,0xfff0752f,0xfff062d1,0xffefb2ba,0xfff0542f,0xfff09c7f,0xfff00270,0xfff107c8,0xfff089a4,0xfff2b322,0xffe5ca84,0xffe6c2cc,0xffe82cce,0xffe6a759,0xffe38564,0xffe03676,0xffde1ac3,0xffdca74c,0xffd7b6ec,0xffd76a9b,0xffd59a39,0xffe42c96,0xffe28f1d,0xffdd3d4a,
-0xfffef3e2,0x0001dc30,0xfffe5868,0x00019e24,0x0000166b,0xfffd1f84,0xfff6578e,0xfff5bf3a,0xfff76062,0x00011ed3,0x00049c87,0x00011d7c,0x00053d50,0x00062f72,0x000cf987,0x0001779e,0xfffc90d2,0xfff6b318,0xfff7311a,0xfff6a285,0xfff760e6,0xfff71b11,0xfff81a71,0xfff3b202,0x00026df1,
-0x0002736d,0xfffd7ac4,0xffff4e26,0xffff2c1f,0xfffe6bd6,0xfffb7e4e,0xfffb6a65,0x000413fc,0xfffee2d7,0x000188f2,0x0003902e,0x000340ba,0x0015423c,0x000d86b5,0x001a6c09,0x0015464f,0x00098344,0xffefdc3a,0xffe757cc,0xffec2df8,0x00007073,0x0009b8c4,0x0005867e,0x0017d89c,0x0022ac98,
-0x0030abf8,0x000e3d07,0xfff89dcb,0xffe490fd,0xffdf647c,0xffdcaa51,0xffe0ee78,0xffe0dd48,0xffe6d8d6,0xffe69723,0x00042e09,0x000c6084,0xffffb237,0x00071ffe,0x0004016c,0x00035fd3,0xfffe4447,0x00021061,0x0018bb49,0x00098de5,0x00094e27,0x0012f2cb,0x0014242a,0x00162143,0x00007e1b,
-0x001a3853,0x001230f9,0x00031e6e,0xffd6ff7b,0xffd2268f,0xffd903b8,0x000f9455,0x00252d14,0x000ccd8e,0x002a8ac5,0x003109e6,0x0054c291,0x00133268,0xfff251a0,0xffd26069,0xffcd7ee5,0xffc86622,0xffd26d20,0xffd28ccf,0xffdcbac4,0xffd91aea,0x0014b378,0x00164a49,0x000d337a,0x00184ed7,
-0x00106ca1,0x0014d86f,0xfffbbb7a,0x0000a7d5,0x0022bbdf,0x0008a09a,0x00169c17,0x001f9b81,0x001d5e12,0x004998a9,0x0030bc02,0x00624248,0x005c61b6,0x003d2154,0xffefa683,0xffc56cc8,0xffbc20a2,0x00079f40,0x00209f86,0x000a34fb,0x00503a94,0x008f5c06,0x00bd206b,0x00402261,0xffe9a4db,
-0xffa64f50,0xff8e6482,0xff866af1,0xff9eeabd,0xffad0637,0xffbbb6e5,0xffb5d6e2,0x000da4ba,0x0024b0fc,0x003abaf3,0x00314737,0x00341b8d,0x00751d1a,0x006ec5f8,0x005d754d,0x0070718a,0x003c953e,0x0024dfab,0x002a4645,0x004208ae,0xffabe779,0xff883afc,0xff7b94d4,0xff684b18,0xff524064,
-0xff577ddb,0xffa65072,0x0064677d,0x0050545a,0x006745ac,0x00b6fffb,0xffe69adf,0xff78c6e7,0xff6fcf90,0xffbbaf81,0x0000e41c,0x002f66e6,0x004f61ea,0x004d5176,0x001ecdd4,0x00114ba6,0x0021cfa3,0x003ca6bc,0x001914a0,0x00130bc7,0xffdc8579,0x007b9c70,0x0082f639,0xfff3c5f7,0xffdf789e,
-0xff9981d0,0xff883093,0xffe10f2e,0x0034ce14,0x005d541a,0xfff3d8ab,0x000929db,0x00640f95,0x0071443f,0x007c934e,0x00a51001,0x00df7238,0x00c1b012,0x005c425e,0xffeaca4c,0xffc227d1,0xffdbf4b2,0x00880018,0x00af8525,0x00204fbe,0xffe0e74a,0xffbb0b48,0xffd1cc66,0xffd8607c,0xffd6d3db,
-0xffb356e3,0xffd26266,0xffda35a8,0xfff97344,0xfffd9094,0x00136eb1,0x0025ffea,0xffebd0c3,0xffba08f4,0xffb4bb2e,0x001f13aa,0x005711bd,0x0046c006,0xfff87378,0xff6e705a,0xff0cb0e7,0xff86cfe8,0xff9757b8,0xfeef4364,0xfe9a9bcc,0xfecf3e22,0xff4058fa,0xfee53356,0xff0fa542,0xffb07cd3,
-0x0099298b,0x00cc6549,0x0048f88d,0x001bd6c8,0xfff68384,0x0004d03d,0x0032ce85,0x004b59cb,0x004ce86d,0x0042f08f,0x0025b136,0xfffe712e,0x000c367d,0x000e6651,0x001c35d5,0x00057b4e,0xffee2876,0xfff3f5c5,0xffeb3ee8,0xfffe23cc,0x001b88aa,0xfff3b783,0xffc5cd8d,0xff94a42a,0xfffe016f,
-0x00139365,0xffdb2937,0xffc6f322,0x0046a1b1,0x0072584e,0x0082b816,0x0068eb51,0x0050b377,0x0047196a,0x003622c0,0x0015f2b2,0xffea5357,0x0005522d,0x006a48d6,0x007693ba,0x00795316,0x00707f01,0x002ed8e3,0xfff8d932,0xffc1c215,0xffb71ad3,0xffb1273e,0xffb57b75,0xffb14c70,0xffb0191e,
-0xffbf86fd,0xffe58be6,0xfff993e3,0xffede0d9,0xffff9c01,0xfff5cf41,0xffdf1d4f,0xffeea774,0x00054bf1,0x000a4192,0xfffc5491,0x00113490,0x0059be48,0x003c4d8f,0xffba8704,0xff6eff43,0xff7c97d4,0xffa8c5b4,0xffe51abc,0x00663437,0x00a0ae2d,0x0096c96b,0x00a7f5c5,0x00a60a14,0x00b89881,
-0x008652ea,0x00630301,0x003f7a49,0x002d3402,0x0023fc0c,0x0014ad31,0x0016d843,0x00083bd0,0xfffacf47,0xffe0a1d3,0xffc379e9,0xffb5e955,0xffb198ba,0xffcd949b,0xfffc058f,0x0018dce3,0x0028b024,0x001cf5e4,0x002bd23a,0x002cb75c,0x0026f34f,0x00381e6c,0x0031a91a,0x00100dd4,0xffef1e5c,
-0x00173e2c,0x002a408e,0x006786af,0x007c41e3,0x007e5d2c,0x00541294,0x003479ce,0x0024ed20,0x0017e463,0x000b4a05,0x00014631,0xfff8ff1c,0xfffede92,0x000bdda3,0x001cae8f,0x001bb08c,0x0009476b,0x0004f415,0xffef076f,0xffd2cb84,0xffc1e331,0xffbc77ba,0xffcfe3de,0xffcdcdcf,0xffca8f77,
-0xffc0e6f4,0xffd0b762,0xffea3140,0x00121c06,0x002a0770,0x003cb445,0x004312ec,0x00520550,0x004f2f06,0x00381c02,0x00290c9e,0xff9cd00a,0xffa91b73,0xffb82e98,0xffc9a9e4,0xffe5bb36,0xfff2f2c5,0xfffeae42,0x0004bcb8,0x0006dc69,0x0009d0c2,0x00094039,0x000b1c16,0x000b54cc,0x000c0734,
-0x0008da76,0x000b604a,0x00112e22,0xfffbbe1c,0xffe69712,0xffd6150b,0xffda5cc8,0xffd3b8ea,0xffcd0624,0xffcb89e1,0xffcd71d0,0xffc6fc08,0xffc75349,0xffbf6b89,0xffb86290,0xffa8c680,0xff9bd9a4,0xff8e54e2,0xff847b21,0xff752d13,0xff6a9f2c,0xff87b3e5,0xffeb7827,0xffec9a63,0xfff5f92d,
-0xfffdfb1c,0x00025c82,0x000655ee,0x000cb93e,0x0016d485,0x0017e8fa,0x00194694,0x001ac7c2,0x001a5ae3,0x0019be9f,0x0019cdef,0x0014671c,0x000d4621,0x0007bc42,0x00030aef,0x00008003,0xfffc4055,0xffffbc5e,0xfff31f03,0xffecc9d4,0xffe51e12,0xffdd47ca,0xffd1fa4a,0xffccb394,0xffc91760,
-0xffc80f09,0xffc33808,0xffbe85ba,0xffbc341c,0xffc7ccbd,0xffd60cc4,0xffdd03cd,0xffe00705,0xffd6ccb1,0xffd32c83,0xffd7b1f0,0xffdb0a98,0xffe00c6b,0xffe66e56,0xffebc9ab,0xfff1bd1b,0xffeec182,0xffed8d91,0xffec8621,0xffec3ad6,0xffec3332,0xffecca5e,0xffeada9b,0xffe9ff2e,0xffe87944,
-0xffe82994,0xffe79577,0xffe56e4e,0xffe6ddf3,0xffe5d8c7,0xffe807d1,0xffdbeb5f,0xffdc5ac0,0xffddb7aa,0xffdbe4cd,0xffd89956,0xffd4c43d,0xffd29b2c,0xffd0f0c7,0xffcb71db,0xffcbc119,0xffca7a4f,0xffd7a2ed,0xffd63348,0xffd304ef,0x00013736,0x00023697,0xffffd507,0x00042b43,0x00034779,
-0x000103ab,0xfffa074d,0xfff90de3,0xfff96b2c,0x00042b03,0x000724fa,0x00015087,0x000673cd,0x0008349d,0x00116305,0x00060194,0x00010d28,0xfffa1f72,0xfffa2f31,0xfff9164c,0xfff92d11,0xfff91766,0xfffaa661,0xfff875e5,0x0005abda,0x000474e9,0xfffd84e1,0x00008da2,0xffff08a4,0xfff97b56,
-0xfff8d4b4,0xfff98d28,0x0004134d,0xfffdf3aa,0x00017772,0x00063e47,0x00038a38,0x0013d259,0x000e11ee,0x001e290d,0x001b65a7,0x00112a21,0xfff7ae51,0xffeecc80,0xffefa4ab,0x0006154e,0x000cbb96,0x0001f41e,0x0015a61a,0x00239237,0x0039653e,0x0019ad87,0x000432e8,0xffebfeb0,0xffe4a520,
-0xffdf642e,0xffe0e2ed,0xffe186e2,0xffeb7c83,0xfff20439,0x000aceac,0x0010d52d,0xffff6cb5,0x0008b9e8,0x000288a6,0xfff77452,0xfff66953,0xfffb7fbb,0x0015c9a8,0x0003d114,0x00059b57,0x001774ff,0x0012fa3d,0x00116982,0xffff42cf,0x001d6499,0x0019d980,0x000e9015,0xffe516d8,0xffde87d1,
-0xffdc2298,0x001838fe,0x0028f54d,0x0007552f,0x002702c4,0x00306bed,0x00625dad,0x00239670,0x0003a6de,0xffdc34fb,0xffd5eb82,0xffcd8d85,0xffd24271,0xffd5dfc7,0xffe55a02,0xffed6bee,0x001f4fff,0x001e12e3,0x0008b40e,0x001a3b70,0x000a1c3a,0xfff6a3cc,0xffe7ea7e,0xffef1f87,0x001c5921,
-0xfffd7b7e,0x000f0954,0x00297a9f,0x00189b6c,0x0041fd42,0x002d12e6,0x00677f8a,0x0068ca1f,0x004eb49d,0x0005417e,0xffdb9439,0xffc36048,0x00144f22,0x002460e3,0xfffb0a41,0x0041b3d7,0x0088f0df,0x00d266db,0x00619fe8,0x000a2c27,0xffb87b19,0xff9a2e65,0xff893057,0xff966859,0xffa8f6f3,
-0xffc49819,0xffce7bda,0x0021bed0,0x00343636,0x0032e175,0x00371feb,0x00314a6b,0x004c090a,0x0051ea25,0x00477334,0x006413e7,0x00274409,0x001920b4,0x003d5c39,0x003fe1ca,0xff967eb8,0xff8b72af,0xff70dce6,0xff65d131,0xff606aec,0xff6967b6,0xffad52fd,0x00641487,0x004fa419,0x006cc59d,
-0x00c2e395,0x00043d86,0xff8983ba,0xff6dbb6d,0xffa62ccc,0xfff2434a,0x0034f1e9,0x005f9fd6,0x006d6110,0x0046972d,0x00307397,0x003a3e46,0x004b43ee,0x000ec8b0,0x0007f43b,0xffe9ac68,0x006e8d0d,0x007790ce,0xfffa572a,0xffdf3a3a,0xff9a2e52,0xff8e9d17,0xfff45afe,0x003943fd,0x004b6918,
-0xffd5a676,0x00360d2e,0x00733417,0x0090d760,0x00732249,0x0057eea7,0x00d27892,0x00d1d633,0x0059485a,0xfffabf7b,0xffc2b7e8,0xffc64f86,0x006fcdd3,0x00ad4deb,0x00511138,0xfff4240f,0xffc45630,0xffd48776,0xffda4a21,0xffdf7531,0xffbce264,0xffe47de3,0xffe5e6b3,0xffec3c4c,0xfff325c9,
-0x0005d63d,0x001eacbf,0xffde23f3,0xffb2e57e,0xffbf00ea,0x0023943c,0x004f70be,0x0027da1e,0xffca1086,0xff5329f3,0xff1a8ca5,0xffaf58fd,0xff81bd63,0xfe4580e4,0xfe736358,0xfeec1420,0xff5f7456,0xff28fd48,0xff2884b3,0xff3e689a,0x00a9043a,0x00f514ab,0x002ef227,0x00168dea,0xffef27cf,
-0xfff7dbbc,0x0021fe85,0x003ef9fc,0x003f592b,0x003fad1d,0x002438a8,0xffede834,0xffffdf3b,0x00099af0,0x001f347e,0xffff30fa,0xffe753ef,0xffe9b7d8,0xfff3cb54,0x000a3e9f,0x00173731,0xffe7eb6f,0xffbdee53,0xff95064e,0x0016e3ae,0x0033b883,0xffc4edb4,0xffe5794d,0x007c8c25,0x00d3eadc,
-0x00c687c6,0x00855612,0x00559ff2,0x003a87b4,0x0027e494,0xfff9cdb0,0xffd2f9a7,0xffddd345,0x003ad7cf,0x005a5360,0x0068e9e9,0x006e55c3,0x0033f5c9,0x00076273,0xffcd95fd,0xffc0c787,0xffb78e64,0xffb433bb,0xffb3d173,0xffb31818,0xffc4c0a9,0xffeae707,0xffffeae0,0xfff54dee,0xffffa8f4,
-0xfff6d94b,0xffe29c26,0xfff7b166,0x0006e95c,0x000e9345,0xfffb2738,0x00119adf,0x005de6b5,0x004f28d3,0xffa3dd95,0xff5e50cc,0xff4a5cd7,0xff6f16ff,0xffb9255b,0x00470a7a,0x008b7d99,0x00836d26,0x00a16148,0x00a64b4d,0x00b91469,0x0091c02d,0x00760cd3,0x005d269e,0x003ad73e,0x0026224b,
-0x00102eeb,0x000de224,0xfff99189,0xffe34bf9,0xffce065d,0xffb76730,0xffb27004,0xffb22a2b,0xffd0fe9c,0x00083a0c,0x001254f3,0x001b7fdf,0x0017f328,0x002d5b82,0x002f7d48,0x002c2782,0x002c2fcd,0x00223979,0x000b27d5,0xffe4e2c2,0x0049534d,0x0054ba6b,0x008808a7,0x0093d2c6,0x008f1434,
-0x005f1f51,0x003cb867,0x002845ff,0x0017f58a,0x0007b093,0xfff965bc,0xfff32a39,0xfff44dd6,0xfffd87ae,0x000fd7db,0x0010b85a,0x000200f4,0xfffb373c,0xffe7b644,0xffcc848c,0xffc5d6a8,0xffc4f53c,0xffd63f5d,0xffcd19a6,0xffc777ab,0xffc21399,0xffdc14c2,0xfffce2ea,0x00247f21,0x003f6657,
-0x005313ba,0x00583f23,0x0068805a,0x006c52a7,0x005e8f37,0x005669c2,0xff9efbcc,0xffa745b0,0xffbb18a3,0xffd1b747,0xfff4e695,0xfffdb780,0x00021068,0xffffd2bb,0xfffa8541,0xfff8fb42,0xfff4a66e,0xfff97cf0,0xfffd193c,0x0000c100,0xfffc8269,0xfffd3a96,0x000225c7,0xffee35a6,0xffdc102d,
-0xffcbb2f2,0xffcd3f52,0xffc7f14c,0xffc338fa,0xffc2f91e,0xffc57fbb,0xffbdbb5a,0xffc320f9,0xffbfc067,0xffbcd876,0xffb363fa,0xffab31c3,0xffa4465f,0xff97df12,0xff85f058,0xff794a95,0xff8f80c1,0xffde0600,0xffdedb6f,0xffea7ac3,0xfff24c05,0xfff6d229,0xfffcbae2,0x0007a6f0,0x001692f0,
-0x00189379,0x0019beb2,0x0019ccf6,0x0017d9a1,0x0015023d,0x0013d434,0x000bf694,0x00033c3d,0xfffb647c,0xfff575b6,0xfff13736,0xffebe8ee,0xfff090ee,0xffe5cbc5,0xffdfea5b,0xffd8e96e,0xffd2ac1e,0xffc92a37,0xffc39ce0,0xffbf394e,0xffbd7c9a,0xffb7ecb4,0xffb2922e,0xffaf6ed6,0xffba3feb,
-0xffc7a802,0xffce94d1,0xffd2ab77,0xffcceb3c,0xffc99d93,0xffcf0446,0xffd3cc43,0xffda31f9,0xffe19cb9,0xffe6e689,0xffed0a31,0xffe941f2,0xffe833fe,0xffe7b0ea,0xffe78f31,0xffe7b6c5,0xffe86872,0xffe5c8a3,0xffe45581,0xffe24844,0xffe0f6f5,0xffdf66c8,0xffdc001d,0xffdd3959,0xffdbc43a,
-0xffdda15d,0xffd3a320,0xffd349ab,0xffd43639,0xffd202a0,0xffceae49,0xffcacdbb,0xffc87d9a,0xffc6b7d5,0xffc0fa0d,0xffc28927,0xffc260f1,0xffccf7de,0xffcc042a,0xffcc98c9,0x00043dca,0x000371c3,0x0001c11d,0x0006f5be,0x0006e55c,0x000616dc,0xfffec58d,0xfffd66a9,0xfffc2bf0,0x00082859,
-0x000ac162,0x0002c6e6,0x00091aeb,0x000b5b8b,0x001541ee,0x000aff1e,0x00064230,0xfffed812,0xfffe340a,0xfffc8f50,0xfffbd3c0,0xfffc7847,0xfffea59f,0xfffeca60,0x00095c8a,0x00075ea9,0xffff1ac7,0x0002ad51,0xffffe68d,0xfff6a36e,0xfff7b2a8,0xfff9161a,0x000523f5,0xfffe665b,0x00025194,
-0x000a1399,0x0004f3dd,0x00115ca8,0x000e42a0,0x002002ab,0x0020751d,0x001a57a8,0x000168a9,0xfff85851,0xfff470c1,0x000d72a5,0x0011cd10,0x0000bfea,0x0015f4f7,0x0025a565,0x003f3841,0x0024d29b,0x00109d3f,0xfff6216b,0xffec388c,0xffe4563c,0xffe32438,0xffe47dfa,0xfff18e5b,0xffff1f08,
-0x001138e2,0x00149f38,0x00008efd,0x0009bbd4,0x000104ee,0xffeea621,0xffeed24f,0xfff4bad3,0x0012ab05,0xfffe2fcd,0x000239d2,0x001cab67,0x0010a186,0x000ae752,0xfffe6163,0x001e63cd,0x00207c5c,0x001cc571,0xfff584ae,0xffed2d5c,0xffe08238,0x00229190,0x002fe18b,0x0005a4fa,0x00282d45,
-0x0032c994,0x0069d4c2,0x003394c9,0x0016024c,0xffe9fb00,0xffe13349,0xffd5cffc,0xffd48d38,0xffdb5fa3,0xffef33f8,0x00034b0e,0x002731d6,0x0023aab1,0x00057846,0x0019444b,0x0001d2ab,0xffdcbbbe,0xffd52cbf,0xffde2c82,0x00154d7e,0xfff2487e,0x00066a2b,0x0032ccc6,0x00124c82,0x0033945c,
-0x002757da,0x0065ebc0,0x00704f70,0x0062a660,0x001e1747,0xfff5702a,0xffce23a0,0x002442bb,0x002c8004,0xfff26610,0x00395965,0x00837d86,0x00db16f5,0x0080c89f,0x002d0113,0xffd18c4b,0xffac5ebc,0xff928f17,0xff927796,0xffa82e45,0xffd16d48,0xffef993a,0x003404ca,0x003f48f6,0x002c1a0c,
-0x003b4810,0x002c92be,0x001eba64,0x002f3f77,0x002ab8fc,0x00516d66,0x000ea778,0x000ac251,0x004f97e4,0x00376303,0xff88444a,0xff93cafa,0xff6ad75d,0xff68ed43,0xff76e9e1,0xff7e8af4,0xffb60e70,0x005a86bc,0x004f63a3,0x00767094,0x00ccedd5,0x0022677c,0xff9dc382,0xff6fef95,0xff90c21e,
-0xffe0707e,0x0038a6c0,0x006b6487,0x00884990,0x0072e40c,0x00536d18,0x004df92e,0x004f9c8d,0x0002f496,0xfffce82e,0xfffb865c,0x00590abe,0x0063415d,0xffff2660,0xffe501bf,0xffa6720a,0xff9f1fdf,0x00024026,0x00366dd1,0x00383bac,0xffbd44fe,0x0064f31a,0x007ea002,0x00961f63,0x00560720,
-0x001452ae,0x00c54ddb,0x00e0f4e7,0x005ef892,0x000c1f1b,0xffc0d3e4,0xffa87c8d,0x00495eab,0x009cd096,0x0080ab74,0x000ab1a3,0xffd1f590,0xffdc555c,0xffdd584e,0xffe94cb8,0xffd02fb7,0xfff9d977,0xfff57668,0xffe240d4,0xffeb37ed,0xfff8f8ee,0x00181c1c,0xffd4cbdf,0xffb30d7b,0xffcc4232,
-0x00204990,0x00409763,0x000dbb62,0xffa8bcda,0xff45affa,0xff2e8618,0xffe32a75,0xff568557,0xfdc95a4c,0xfe80368e,0xff26b05b,0xff7b6428,0xff57c77b,0xff3b51a3,0xfef87c8e,0x00a5f021,0x01027158,0x001808c1,0x000f1bad,0xffe64cb8,0xffeb53e7,0x000e5c03,0x002e7ff9,0x0031b668,0x00361b3c,
-0x001fd81b,0xffe9ce74,0xfffb12b7,0x0008c1fe,0x0020d409,0xfffb3936,0xffe3af68,0xffe042ad,0xfffc4495,0x0014f4ab,0x0012a7eb,0xffe098cf,0xffbea330,0xffa43ef7,0x002a23c3,0x00453474,0xffaa3c46,0xffe63250,0x00b82e4f,0x0128b03e,0x00f244db,0x0087302c,0x004712f8,0x001e7fb0,0x001174a2,
-0xffe9e38b,0xffc91ce8,0xffc3424a,0x0003301f,0x003e8e4a,0x005bf774,0x006afa88,0x0039e2e5,0x001375dc,0xffdfcb52,0xffcd8f70,0xffc09f34,0xffb752cf,0xffb81beb,0xffbaaeb1,0xffcf7b48,0xfff0a822,0x00040269,0xfffe866b,0xfffd590c,0xfff50d6f,0xffe8784e,0x00011134,0x00092eb7,0x00111917,
-0x00012ae7,0x0014d2b5,0x0054252f,0x0068658a,0xff982ffa,0xff6271cc,0xff375d1e,0xff563d58,0xffa632bf,0x00251d7f,0x00695967,0x006c3da7,0x009296cc,0x009fe80b,0x00aebe10,0x0093b765,0x007e1865,0x006e60fd,0x0043d79a,0x0026aee3,0x000b4687,0x0001ace3,0xffe85f86,0xffcc3577,0xffbe5eac,
-0xffaf7089,0xffaddc28,0xffb5c00e,0xffd46cb1,0x000d7b96,0x0009aadf,0x000e2389,0x0012d2ae,0x0029295c,0x002cbbfa,0x002e20a1,0x001c802e,0x0011bfe2,0x00080925,0xffddd7df,0x006cc7a4,0x006fcf7a,0x00942d75,0x0096ab9b,0x008de12a,0x0062a0e0,0x00455210,0x00315d57,0x001e5782,0x000a3fae,
-0xfff99832,0xfff2bdc9,0xffef0599,0xfff38060,0x000423c5,0x00067a54,0xfffa293a,0xfff2e2f0,0xffe4f8c9,0xffceed6d,0xffceedb9,0xffd02c99,0xffda9dcd,0xffcd4493,0xffc729ba,0xffc77a82,0xffea7222,0x000fa0db,0x003468f1,0x004e3038,0x005ef87b,0x006145b3,0x006f6b52,0x00777a36,0x0072aced,
-0x00724f42,0xffa6e4e1,0xffabdc7c,0xffc1a5c6,0xffdad0af,0xffff82de,0x0004941e,0x00032b47,0xfffc5a60,0xfff24dda,0xffee7e4f,0xffe92716,0xffef12a8,0xfff3fecb,0xfff8c71e,0xfff35500,0xfff19f40,0xfff3d044,0xffe3c840,0xffd5b9a3,0xffc7d7d5,0xffc56caf,0xffbfe61a,0xffbb9425,0xffbc9fcb,
-0xffbea06d,0xffb7fcb4,0xffbfe0b1,0xffc2a6e2,0xffc338e0,0xffc18c62,0xffbeda4a,0xffbf680d,0xffb05d3c,0xff9c1bcb,0xff8ca477,0xff9cf7df,0xffcf1074,0xffcf0fe4,0xffdb2966,0xffe22c77,0xffe6c2c9,0xffee54c6,0xfffc23c3,0x000d2e67,0x000f6372,0x00101757,0x000f05b6,0x000cb58b,0x00095c32,
-0x00084026,0xffff3ec5,0xfff6557a,0xffedc139,0xffe7843b,0xffe26609,0xffdcec2f,0xffe16fdf,0xffd92cf6,0xffd41b98,0xffce50f7,0xffc987eb,0xffc2995a,0xffbd0ba8,0xffb7d02c,0xffb475aa,0xffae620b,0xffa800a4,0xffa3e198,0xffad311e,0xffb933e3,0xffbfc931,0xffc4703f,0xffc63f91,0xffc335ca,
-0xffc90e00,0xffce7df3,0xffd53128,0xffdc4a78,0xffe0b1a7,0xffe6396d,0xffe2da99,0xffe28639,0xffe2c9eb,0xffe2f894,0xffe34058,0xffe41307,0xffe10b9e,0xffdf3847,0xffdcda0e,0xffdabded,0xffd87965,0xffd450cf,0xffd5770f,0xffd41a08,0xffd55e7c,0xffce52d7,0xffcdb790,0xffcdc322,0xffcb237f,
-0xffc7ea97,0xffc47e9a,0xffc20d26,0xffc04fd7,0xffba9589,0xffbd7180,0xffbe0ec0,0xffc5ca50,0xffc55194,0xffca1a0e,0x0007a300,0x0004d640,0x00043b38,0x0009f566,0x000acc13,0x000b7100,0x0003e8df,0x0002301b,0xffff8864,0x000c5dd9,0x000ec8da,0x0005a37e,0x000c9d13,0x000ef850,0x00182c38,
-0x000fe967,0x000bb357,0x00048c61,0x0002d546,0x00009efd,0xffff3cd5,0x00001b64,0x000278a0,0x0004ff55,0x000c9901,0x0009dd75,0x0000d506,0x00043b2d,0x00008a76,0xfff55417,0xfff6ef42,0xfff8d6f0,0x00064ea4,0xffff5b44,0x0003a9bf,0x000dcc45,0x00062dc8,0x000d4d55,0x000e63c3,0x0020ccee,
-0x00245e80,0x0022f7f5,0x000b2cb7,0x00025f67,0xfffa9754,0x0014fda9,0x00176e5d,0x00022c40,0x00173266,0x00273d0c,0x004147b7,0x002e81a5,0x001cf442,0x0002a26f,0xfff5ac58,0xffeb4e7e,0xffe7c8c1,0xffe8b5f4,0xfff7fff8,0x000b8691,0x0016a132,0x00174b63,0x00023c8a,0x000985f5,0xfffee5d4,
-0xffe9144c,0xffe800ed,0xffee78e4,0x000fb754,0xfff94d86,0xffff413c,0x00217ce1,0x000d801d,0x000356bf,0xfffe2d8e,0x001fc4d6,0x002771db,0x002acf4b,0x0005bbfa,0xfffbc2fc,0xffe7023d,0x002bf88c,0x00376ce2,0x0009979f,0x002c0b99,0x00362ce2,0x006ac5bb,0x0041bdb0,0x002808b5,0xfffbb245,
-0xffee745e,0xffe04557,0xffd97337,0xffe14e19,0xfff843af,0x0016af6f,0x002b7767,0x00264116,0x0002eaf5,0x00147958,0xfff7bac1,0xffc989eb,0xffc4a4e0,0xffceea70,0x000f3e0a,0xffe8c032,0xfffe2444,0x003a5fdb,0x000ae0ba,0x002122ce,0x0021d5d0,0x00614ff1,0x0074425a,0x00746ccf,0x0034bb21,
-0x000f1e51,0xffddc86d,0x003335ab,0x00351aad,0xfff1ec9e,0x0032c98d,0x007a7001,0x00d60bfb,0x0099f6ac,0x004faa2d,0xfff271c4,0xffc4585e,0xffa2783e,0xff95f880,0xffab3cc7,0xffdf654b,0x001318e1,0x0043271a,0x0045d085,0x0026e6dd,0x003ab94c,0x0024240a,0xfff3692d,0x00092cde,0x000a0ad1,
-0x003bdd04,0xfff4e4b1,0xfffb4908,0x005f1731,0x0029d32e,0xff7f2697,0xff9e22a2,0xff6c3392,0xff73a706,0xff936fcd,0xff93aab6,0xffbc6911,0x0045ec48,0x00508b72,0x00852ae9,0x00d6207c,0x004a56da,0xffc1321b,0xff7c9c1a,0xff836a01,0xffce2ba5,0x0035ad6f,0x006e92dd,0x009712eb,0x0093d17a,
-0x00713cbc,0x0059ffd4,0x004800cd,0xfff46da1,0xfff13bd2,0x000efc72,0x003f76e1,0x0048a32b,0x000136e0,0xffee2c3a,0xffbb1bc5,0xffb92a25,0x000f7726,0x003210d7,0x0025446a,0xffab300c,0x0091125b,0x00886201,0x0084e847,0x002b9f1b,0xffd6207a,0x00b4377e,0x00e96b3a,0x0069044d,0x001b8e1b,
-0xffbd1b3c,0xff851f1d,0x0018980d,0x007ebea4,0x00a4988d,0x0022e6bb,0xffe4b5a7,0xffe9ce44,0xffe197a4,0xfff2734a,0xffeb172b,0x000f105a,0x0005bd55,0xffde5184,0xffe8b449,0xffeea020,0x000fbcdb,0xffcf831a,0xffba2d8a,0xffd928c4,0x00188ed3,0x002e1bc0,0xfff752d1,0xff8e5b91,0xff40b5cd,
-0xff49f315,0x001a57ee,0xff102a24,0xfd8f0dd0,0xfebf4274,0xff7e4e71,0xff9869b6,0xff78caba,0xff4b224a,0xfeec9b80,0x00893947,0x00ed319b,0x00135421,0x0009b7a4,0xffde8931,0xffe1dbde,0xfff9b461,0x001a3c68,0x00234d1c,0x002abfc1,0x001cd36c,0xfff1e708,0xffff41b7,0x000c09b3,0x001ed218,
-0xfff79aca,0xffe29ad2,0xffd9ba2e,0x0003ad38,0x001c10c6,0x000e5cae,0xffdd672f,0xffc565ca,0xffc1bcac,0x00321d09,0x00438446,0xff997d1a,0xffb9a4a0,0x00f11b9e,0x016158b0,0x00fcf6f2,0x0072f7a1,0x002b0918,0xfffea5bd,0xfff940c8,0xffdec471,0xffc40f31,0xffb19df5,0xffd004fd,0x0022ecde,
-0x004e808d,0x0062cdb5,0x003f5c7d,0x001dacbd,0xfff54ea1,0xffdc543b,0xffcbfaae,0xffbf5bfd,0xffbfb22d,0xffc74d8b,0xffde9dbb,0xfff79db7,0x000683f1,0x0006dd59,0xfffa4725,0xfff2807c,0xffef49a2,0x00076904,0x0009f19a,0x0012c0f7,0x000e4023,0x001c3ca2,0x00460743,0x0086ade6,0xff945803,
-0xff74866d,0xff422c16,0xff5c1e25,0xffa2b8b8,0x0009a9e6,0x004619cf,0x0052440a,0x007e808d,0x0095557d,0x00a0c90a,0x008fb1fe,0x007e9387,0x0076730f,0x004555af,0x0022d965,0x0005506f,0xfff3aa49,0xffd73c62,0xffb95ae2,0xffb24553,0xffaae4bc,0xffa9907f,0xffbc488b,0xffd8ba50,0x000c1cee,
-0x000129c2,0x00023c86,0x000b9b6c,0x001efd9a,0x00251b49,0x002ced9d,0x000be110,0x00019856,0x0002aa85,0xffd7821e,0x007c8663,0x007bb1d3,0x008e5efc,0x008991bd,0x00807861,0x0063f2f7,0x00519c49,0x0042e4ed,0x002babeb,0x0013b127,0x00040fcf,0xfffb493d,0xfff2eae3,0xffef89c7,0xfffd9f47,
-0xffffd5a4,0xfff2999f,0xffeda843,0xffe656e4,0xffd802df,0xffda2744,0xffdaf7ad,0xffdd4a23,0xffcebde3,0xffcaa4c0,0xffd1a477,0xfffb3976,0x002152d0,0x003f484d,0x00547bec,0x005f2a8f,0x005d1188,0x006942fc,0x00740416,0x00766fd7,0x007a46e7,0xffb5175c,0xffb73367,0xffccc502,0xffe44233,
-0x0003f652,0x000586b8,0x0000d19d,0xfff992e8,0xffef79b9,0xffed3b89,0xffeab7c7,0xffef113c,0xfff31fb2,0xfff6ea28,0xffeef070,0xffe95f55,0xffe6d303,0xffdbe9f0,0xffd1feff,0xffc7b593,0xffc23031,0xffbc1802,0xffb7444e,0xffba7b6c,0xffbc9154,0xffb92119,0xffc0f1fb,0xffc98c58,0xffcc7bc8,
-0xffd38a03,0xffd66452,0xffde7d63,0xffcdf58b,0xffb8bd35,0xffa7d402,0xffb267f1,0xffbf1c78,0xffbf43e3,0xffca4024,0xffd0143b,0xffd50d01,0xffdddf64,0xffec4a3b,0xfffc1541,0xfffdd08e,0xfffd8d11,0xfffbcc66,0xfffa3cf4,0xfff7fec2,0xfff86822,0xfff03930,0xffe91873,0xffe1b385,0xffdc4843,
-0xffd782bb,0xffd2cd83,0xffd57287,0xffd07c05,0xffcc70dd,0xffc81bff,0xffc441b2,0xffc02c7d,0xffba9d07,0xffb4a33e,0xffaefa3e,0xffa878b4,0xffa0fe8d,0xff9b412f,0xffa2c537,0xffac64e8,0xffb1fb3b,0xffb72bfc,0xffc29f4b,0xffc08202,0xffc60c90,0xffcb65d3,0xffd141d8,0xffd6d387,0xffd9e6ee,
-0xffde6367,0xffdc552b,0xffdd161d,0xffde2a89,0xffdecb0d,0xffdf28d0,0xffdffd5b,0xffdcf315,0xffdafbf2,0xffd8995b,0xffd61b81,0xffd37fa6,0xffcf7967,0xffd01ea0,0xffcee944,0xffcf3d19,0xffcc1d05,0xffcb45f3,0xffca6885,0xffc75191,0xffc44303,0xffc19281,0xffbeeb12,0xffbd367e,0xffb7bef5,
-0xffbc03e5,0xffbd75e6,0xffc14373,0xffc16a24,0xffcad5b4,0x000a6fb3,0x0005ecef,0x00068b64,0x000c81b4,0x000e157c,0x000fe16e,0x000850f1,0x00064a57,0x0002aca6,0x000f5ed3,0x0011ab67,0x000892e5,0x000f8891,0x0011d2b9,0x0019ce9d,0x0013b442,0x001030a4,0x000a0aa6,0x0006e1de,0x00042e25,
-0x000243fe,0x0003226f,0x00059b58,0x000aa604,0x000e8d63,0x000b94e5,0x0002e1bc,0x0005757e,0x000140cd,0xfff5d93d,0xfff701c6,0xfff9512e,0x0007dd2c,0x0000841f,0x0004a958,0x00114d3a,0x000716d1,0x00094de3,0x000e6143,0x0020aaf0,0x0026a8bd,0x00294e7c,0x00132de5,0x000aecdb,0x0000b785,
-0x001a3763,0x001b1a58,0x00046ab0,0x00176ad7,0x0026e8c8,0x003fde3d,0x0035330e,0x00273593,0x000f6efd,0xffff0e60,0xfff28f38,0xffed4523,0xffedf062,0xfffde046,0x00151266,0x001a77aa,0x0018b2e3,0x00037fce,0x0007c7df,0xfffbd653,0xffe629f5,0xffe26b9c,0xffe925ea,0x000cc1bc,0xfff55062,
-0xfffce720,0x0024ab6b,0x000a4c9a,0xfffc80b6,0xfffec514,0x00215739,0x002d4a3f,0x00360822,0x00138d87,0x00081d6d,0xffee5323,0x00308e8e,0x003b0039,0x000f97b7,0x002ee3aa,0x00381a0d,0x0066e7a5,0x004bedca,0x0036e45a,0x000ea09a,0xfffae5be,0xffea2fa4,0xffdf945d,0xffe73fd5,0xffff425f,
-0x002472a0,0x002c0871,0x0025fcd2,0x000038ed,0x000c7a3b,0xffecdfbe,0xffbdcc91,0xffb79f64,0xffc2d9bd,0x000a649b,0xffe1cafd,0xfff6fc16,0x003e3427,0x00037a54,0x000f2545,0x001cf9f2,0x005aa472,0x007432d0,0x00806e4a,0x00468f9d,0x00255b82,0xffefa9c2,0x003c1cc8,0x00390113,0xfff57e52,
-0x00295ed1,0x006b4f7d,0x00c5fce3,0x00a9b1a1,0x006d309e,0x001707a1,0xffde4c26,0xffb51d0b,0xff9fc1f2,0xffb2db4d,0xffec96e2,0x0031d877,0x004dce01,0x00485778,0x0023a070,0x003469b9,0x00177f1f,0xffcf37cd,0xffe4100f,0xffe9da02,0x0025d4dc,0xffdc8562,0xffec15c2,0x0068312c,0x001a878d,
-0xff7b74b7,0xffa8e0a7,0xff75a061,0xff84ee91,0xffadac94,0xffa358d2,0xffbbb43c,0x00243980,0x004baa2d,0x0090f376,0x00d9ab5e,0x007f369e,0xfff89ade,0xff929951,0xff828f24,0xffbde08b,0x00270d0c,0x0063f4c5,0x009478c6,0x00a16855,0x00819d79,0x005b1dfa,0x00358e6c,0xffe297d2,0xffe42d99,
-0x0020201c,0x00260d3a,0x002af61e,0xfffecc13,0xfff61f38,0xffd29bf6,0xffd9d89c,0x001e85d5,0x002f33f7,0x00123504,0xff9f390d,0x00b91bf6,0x008a94e9,0x0063ae98,0xfffd549c,0xff9f1644,0x009a19e1,0x00e1fdf4,0x007142de,0x00282297,0xffba1b18,0xff60fa37,0xffe7558b,0x00595940,0x00b332d0,
-0x0039457b,0xfffa55ba,0xfffad97c,0xffe6f95e,0xfff8e7d1,0x000733e2,0x0020fd85,0x00147fab,0xffe0feb0,0xffec81b0,0xffe865c5,0x0004d85e,0xffce2bbf,0xffc6417f,0xffe3c062,0x000edd7f,0x00197e83,0xffe2156a,0xff77ba68,0xff40f0da,0xff6c4043,0x00507111,0xfeb8dfdc,0xfd8735dc,0xff16a3ac,
-0xffddec1f,0xffae71ce,0xff98687a,0xff65a84f,0xff0b4bfe,0x0054c500,0x00b9fc86,0x002309ca,0x00045893,0xffd473f6,0xffd71038,0xffe426b9,0x0003e494,0x0013df0c,0x001f551f,0x001c73c5,0x0001f874,0x00098cfd,0x00114f64,0x00186133,0xfff37198,0xffe3428c,0xffd593c7,0x00089047,0x001dc0fe,
-0x000a256f,0xffde36fe,0xffd0e558,0xffe4782c,0x00299038,0x002ea12d,0xff9bedc6,0xff69894c,0x011d1e7c,0x016cde22,0x00e3e444,0x00528869,0x000c97b9,0xffe42bc1,0xffe34840,0xffd753c8,0xffc19549,0xffa97830,0xffb22c89,0x000af578,0x003ef6fc,0x0054877e,0x0040294b,0x0023d7ed,0x000af67b,
-0xffead710,0xffd835b3,0xffcb50c1,0xffca7b7b,0xffd7ce4d,0xfff08444,0xffff6ae4,0x0007cf00,0x000c3446,0xfff8272d,0xfff054d7,0xfff4d37a,0x00081cb2,0x00087080,0x00157cf5,0x002190b3,0x0028446a,0x003d3fc2,0x00a6bbc2,0xff961c48,0xff8ccb35,0xff62a45c,0xff77cc88,0xffaa4887,0xfff7a5c1,
-0x00279759,0x003859d2,0x0069478b,0x0087d462,0x008f95ac,0x0087e1ac,0x007935a8,0x00741a5d,0x00416de2,0x001c492a,0xffff54c9,0xffe4270d,0xffc69e6b,0xffac954a,0xffa99cca,0xffa841a6,0xffa657ea,0xffc4ddd9,0xffde502f,0x00059a77,0xfff9f688,0xfff880d5,0x00014937,0x00106cf1,0x001a6a74,
-0x00292cc7,0xfffd3be9,0xfff460da,0xfffa8835,0xffd0475c,0x007ab2ba,0x0076fc47,0x0078d0ea,0x00728e44,0x006f03a2,0x0063ed5b,0x005f82bb,0x005a0a53,0x003fd3f4,0x00251973,0x00166596,0x000b8c7e,0xffff9c88,0xfff30501,0xfffd2d12,0xfffcc7b3,0xffec7ac6,0xffeb4d4b,0xffe97fc8,0xffe319ef,
-0xffe3f529,0xffe27188,0xffdd92a8,0xffd11c1b,0xffd16030,0xffdf58c9,0x000c220e,0x002f9377,0x0043722f,0x005143b8,0x00548b1a,0x004f2977,0x0059a3f0,0x0064f158,0x006bcede,0x0070d917,0xffcae246,0xffca803f,0xffde0015,0xffef4623,0x00044556,0x0002467a,0xfffc1313,0xfff6c911,0xfff08a46,
-0xfff27fd7,0xfff53795,0xfff5fab4,0xfff78000,0xfff92e0d,0xffedc424,0xffe3dd7b,0xffdc11d4,0xffd64aa1,0xffd003cd,0xffc96684,0xffc26437,0xffbc5def,0xffb71796,0xffbc7aa5,0xffbf279b,0xffbeaa95,0xffc6d049,0xffd4f7b9,0xffdad389,0xffea9a84,0xfff2b928,0x0001a286,0xfff11a50,0xffdcb0ba,
-0xffcc424b,0xffd073ad,0xffb1e4bf,0xffb3e1ed,0xffbc4cd8,0xffc0c24d,0xffc655bb,0xffcf8e97,0xffdc4ff3,0xffe80f60,0xffe93b77,0xffe811f6,0xffe673af,0xffe6809a,0xffe6705f,0xffe91ac4,0xffe2e3e6,0xffde71bf,0xffd8f0cf,0xffd4d67d,0xffd0f4b3,0xffcd5922,0xffce8447,0xffcc1651,0xffc8ff88,
-0xffc60670,0xffc2da50,0xffc0bdee,0xffbb7a37,0xffb5210f,0xffadabf4,0xffa6fd31,0xff9f364d,0xff9810ae,0xff9dd9a3,0xffa476be,0xffa85aa8,0xffae5c51,0xffc24d3e,0xffc1c712,0xffc62c33,0xffcab773,0xffceceb7,0xffd219df,0xffd3c7be,0xffd70534,0xffd6d3f2,0xffd8bd37,0xffda86c1,0xffdbbb8f,
-0xffdc4f8b,0xffdd4eb7,0xffda6a36,0xffd875a3,0xffd64b9f,0xffd3ac01,0xffd0f2d3,0xffcd441a,0xffcd974c,0xffccc329,0xffccaeb6,0xffcc3972,0xffcb7044,0xffca893d,0xffc73c5c,0xffc47102,0xffc28f5b,0xffbfda03,0xffbe431e,0xffb974db,0xffbe9f94,0xffc08b60,0xffc04d91,0xffc0eb51,0xffcd43c2,
-0x000cfd7a,0x0007d218,0x0008d24b,0x000edf5c,0x00110f41,0x0013f0e1,0x000c7886,0x000a3111,0x00060e0a,0x00117c6d,0x0013a8b7,0x000be4bb,0x001209ea,0x00142516,0x001ac532,0x0016d9c9,0x00141c30,0x000f4b0b,0x000a84e6,0x00075c36,0x0004e475,0x000668da,0x0008ccab,0x000eee43,0x00103269,
-0x000d2f77,0x0004c1a4,0x00065730,0x00020e36,0xfff7ccd0,0xfff802f9,0xfffa9c03,0x00099eaa,0x000270b3,0x00061a59,0x0013fcb4,0x0008ac0c,0x00073564,0x000ea30a,0x00202a69,0x00283647,0x002e6f26,0x001a6cf1,0x00129fb4,0x0006fe21,0x001d2b49,0x001cfcb6,0x00082b37,0x0017ac90,0x00262e21,
-0x003cf512,0x003a4789,0x00301adf,0x001bdda0,0x0008112e,0xfff9b8c7,0xfff33f4d,0xfff48dfd,0x0003e805,0x001bd61f,0x001d1dd4,0x00194177,0x000446be,0x000566cd,0xfff8fc41,0xffe64ab2,0xffdf0e4e,0xffe56949,0x0009ec34,0xfff2c166,0xfffb9b4b,0x0025e9a1,0x00085eec,0xfff926b2,0x00001dec,
-0x002305c7,0x00328306,0x003fce51,0x00207915,0x0013797e,0xfff7713c,0x003093f3,0x003a8c6b,0x0017f646,0x00311195,0x0039909f,0x0060ca6d,0x00538055,0x0043726e,0x00215945,0x0005f9ef,0xfff2d80d,0xffe5cd3d,0xffee36c1,0x00055d93,0x002bfd38,0x0029f712,0x002398b0,0xfffc72cb,0x0002c883,
-0xffe298e2,0xffb9d098,0xffae6c4f,0xffba83e3,0x00065aff,0xffddb622,0xfff1ba68,0x003e050c,0xfffe6255,0x000122dd,0x00180224,0x0052b58b,0x007247db,0x0088ffee,0x00566a51,0x00393268,0x0002e909,0x003ece9b,0x00387b17,0xfffe46a1,0x00215ccd,0x005ccd43,0x00b24200,0x00b3dde4,0x0086bed1,
-0x003c3cee,0xfff8b783,0xffc8e49f,0xffae1498,0xffc07e19,0xfffa7d37,0x00486a92,0x00537aa3,0x00470719,0x0020d6df,0x00292e02,0x0007b396,0xffb6151b,0xffc3063b,0xffcc59f4,0x001143c1,0xffc774c0,0xffdeaae1,0x00696419,0x000cfb71,0xff81d3f1,0xffb6f1fa,0xff89df1f,0xff9d5064,0xffc0b99c,
-0xffafa4c5,0xffb88558,0xfffbe0e6,0x00406b51,0x0095c1a9,0x00d42cd7,0x00b503ec,0x00361503,0xffa65b56,0xff8a8854,0xffb10e1e,0x000df533,0x004c1e43,0x007fa630,0x009a9d4d,0x007f654a,0x004dcaf0,0x001b6408,0xffcef051,0xffd710c8,0x002d8bdb,0x000ff585,0x000d72e0,0xfff7cc4f,0xfff90c46,
-0xffe92d2c,0xffff303f,0x002f1ed7,0x002ea335,0x00029122,0xff9cc0de,0x00d54821,0x007f9778,0x003c89bd,0xffd47ae8,0xff70d371,0x00747217,0x00c85aea,0x00745a5b,0x0032fdaa,0xffb8c7cd,0xff417554,0xffbab559,0x003113e7,0x00aa7f06,0x004e2678,0x001469cb,0x000da3e6,0xffef00df,0xfffe2435,
-0x00202def,0x002de68c,0x0020ff96,0xffe944a4,0xfff5a5f3,0xffe73b88,0xfff912ab,0xffcfbab8,0xffd431eb,0xffebfdc2,0x0005de90,0x000413b8,0xffcbc951,0xff642f15,0xff44b043,0xff9282e8,0x007c68c7,0xfe652034,0xfda3f038,0xff6ad837,0x002b19f0,0xffc1696e,0xffc643fe,0xff9315d4,0xff32f5d4,
-0x0012ab06,0x007b3dc1,0x0044c2fb,0x00043f9a,0xffcb3ab5,0xffcccbe4,0xffcf9742,0xffec3a2b,0x0002c0ff,0x00141e0f,0x001d75bd,0x00147c77,0x0015b15e,0x0015a3dc,0x000ddba5,0xffee33a1,0xffe49273,0xffd34c35,0x000a0552,0x001a9074,0x00064be7,0xffe2fd45,0xffdecb80,0x00035359,0x0010f458,
-0x000d7fa3,0xffb4f133,0xff125dde,0x0135288e,0x0146df2a,0x00acf604,0x002f542b,0x000092aa,0xffd2b52f,0xffd1ac96,0xffd8d0df,0xffc8bdcc,0xffadd920,0xffa6da87,0xfff8e1b1,0x002fecd7,0x00440254,0x003d3430,0x0027f474,0x001f85c4,0xfff91ffe,0xffe4ec0f,0xffda39ce,0xffd86df5,0xffea5e1f,
-0x00035058,0x00077d44,0x00083573,0x000cf72e,0xfff75117,0xffef6fc2,0xfff85714,0x0004a95e,0x0005408a,0x001ba815,0x0036f6bf,0x0036d5fd,0x003ff7c0,0x00c67b95,0xff9c95c6,0xffa9c49b,0xff92c8e3,0xffa05229,0xffbbaab2,0xffeee7c4,0x0010e795,0x002519da,0x00550bb5,0x0079ac72,0x0080bfdf,
-0x007f90c2,0x00702a95,0x00681654,0x003ba791,0x0015986b,0xfff83780,0xffd55056,0xffb8f5e6,0xffa64ce3,0xffa44291,0xffa746b5,0xffa53af8,0xffce2aa9,0xffe4d276,0xfffcf263,0xfff45d25,0xfff0f47d,0xfff51496,0x000034fb,0x000f26d8,0x0024a056,0xfff39cae,0xffec3bd3,0xffefc440,0xffc8c583,
-0x006a1f80,0x0062059b,0x0057245c,0x00561120,0x005e1fbc,0x0061f8f1,0x006b8240,0x007313fe,0x0058226e,0x003c160d,0x002c6271,0x002108b8,0x0013fe21,0xffffc92b,0x0002fe86,0xfffd91cf,0xffe99aba,0xffeba158,0xffec9d93,0xffeb9c7d,0xffe9534a,0xffe526e5,0xffdbd30a,0xffd452bc,0xffda2e95,
-0xffee5da2,0x001a78dc,0x003840c3,0x0040e750,0x0046aaa6,0x0042c451,0x003bd736,0x0043e843,0x004dcbe5,0x0057306d,0x005c2064,0xffe7429a,0xffe5b5a2,0xfff6281e,0xfffe33d2,0x0005c211,0x0000d56d,0xfffafa47,0xfff8edb8,0xfff745e0,0xfffd69e1,0x00049041,0x00000b33,0xfffce0bf,0xfffb34b1,
-0xffed78a5,0xffe0ac62,0xffd4f00d,0xffd37673,0xffd016e8,0xffcc9065,0xffc56d08,0xffc01340,0xffbab417,0xffc1eff4,0xffc50e9c,0xffc6b3be,0xffd0b581,0xffe4daec,0xffeee8be,0x0005c998,0x0012a5c5,0x002739bb,0x001702f7,0x0004c60f,0xfff5a182,0xfff3a8f6,0xffac54c0,0xffb0cb31,0xffb56245,
-0xffb87a5c,0xffbe4b9d,0xffc69db8,0xffcfa298,0xffd5a8c7,0xffd67b2b,0xffd4c743,0xffd40d2a,0xffd620ed,0xffd8e49c,0xffddc97b,0xffd984a6,0xffd747a8,0xffd365e0,0xffd038e6,0xffcced09,0xffca0116,0xffcaf052,0xffc9db74,0xffc7a49b,0xffc5df10,0xffc36a38,0xffc21d4a,0xffbe24b8,0xffb852f9,
-0xffb0716c,0xffaa9d29,0xffa3f238,0xff9c9816,0xffa13b03,0xffa4e7a5,0xffa6de6b,0xffadb86e,0xffc52536,0xffc5d1f5,0xffc88bcc,0xffcbb84d,0xffcd8e1c,0xffce6dd3,0xffceeced,0xffd0d6e9,0xffd28741,0xffd559dd,0xffd793af,0xffd94adf,0xffda10e9,0xffdb6ab2,0xffd8a23c,0xffd6c03c,0xffd4dd84,
-0xffd24c1d,0xffcfafe2,0xffcc30ff,0xffcd0a5c,0xffcce7ae,0xffcd1991,0xffcd0319,0xffccd22e,0xffcc5a7e,0xffc96b03,0xffc728e9,0xffc64c25,0xffc40286,0xffc2d911,0xffbf6d8a,0xffc4b473,0xffc65019,0xffc31b7e,0xffc3e924,0xffceb7e4,0x000f017f,0x0009bb53,0x000b0656,0x0010be15,0x001371d9,
-0x00178b12,0x001012fa,0x000d91d7,0x000931f5,0x00129416,0x00149c34,0x000f3cf3,0x0013cc9f,0x00158d8a,0x001a884f,0x00191186,0x00172b88,0x0013a4df,0x000d66bd,0x0009db80,0x0006f07e,0x00091c9c,0x000b3701,0x00117186,0x0011042d,0x000de5d4,0x0005bcc8,0x00067fd3,0x000283eb,0xfffa6128,
-0xfff92d24,0xfffbdbd2,0x000aa272,0x0004078c,0x0007535f,0x00152ff1,0x000a087c,0x000650f0,0x000f29dc,0x001f4e83,0x0028e4ca,0x0032d854,0x0020d979,0x001929f2,0x000c9608,0x001de7da,0x001d4b5f,0x000d7143,0x0018464f,0x00254691,0x00385c6e,0x003dba0e,0x00375afa,0x0026b050,0x00100877,
-0x00007aae,0xfff91e71,0xfffbab63,0x0009dd28,0x001f657b,0x001e5f40,0x0018b701,0x0003b815,0x00026c40,0xfff64ccb,0xffe84399,0xffdd5d21,0xffe2d731,0x00064d97,0xfff1233b,0xfffab7f9,0x002404df,0x000770cb,0xfff8f70f,0x00026828,0x0024c5fb,0x0036d79c,0x00494bdc,0x002c1f3d,0x001d8272,
-0x0000f147,0x002ce80e,0x00369486,0x002202ac,0x00327181,0x003a1870,0x005711ea,0x0057f9aa,0x004d2045,0x00318e4b,0x000efbe4,0xfffa0639,0xffeb196d,0xfff54c61,0x000acffc,0x002d331f,0x002607f9,0x001f758f,0xfff6d752,0xfff87bf9,0xffd998ab,0xffbbccea,0xffa870e6,0xffb4cf89,0x0001769f,
-0xffdbcb31,0xffee384d,0x00393812,0xfffc0216,0xfff7f283,0x00146ea4,0x004a3c10,0x006edfe8,0x0090cfa2,0x0064d283,0x0049cdbf,0x0014a745,0x003c2636,0x0035208c,0x000d1b19,0x001e7a58,0x00525fa0,0x009c0483,0x00b8de0c,0x009b8b16,0x005e4778,0x0011bc06,0xffdd96b0,0xffc01d42,0xffd38c06,
-0x0009a728,0x0055a3e9,0x00544900,0x00423776,0x001c680b,0x0019a4d0,0xfff59eb7,0xffa98281,0xffa67fc2,0xffb1f403,0xfffddcc3,0xffb64ba3,0xffd3792b,0x0061a666,0x000220b8,0xff93757a,0xffc94df4,0xffaaa467,0xffbcd7e6,0xffcc389f,0xffba5cfd,0xffb69cfc,0xffd5350a,0x0031cc5d,0x00906c55,
-0x00c0e312,0x00d96fc9,0x00664fb5,0xffb1a656,0xff948990,0xffa62703,0xffeebf11,0x002aca60,0x005a5208,0x007cab03,0x0067d6ca,0x00315ed8,0xfffce471,0xffbb9c52,0xffcba54f,0x00375861,0xffff0ced,0xfff45a23,0xffee6b20,0xfff713a6,0xfffd574d,0x002638e4,0x0040ea3e,0x00317b95,0xfff99096,
-0xffa596da,0x00df94c8,0x006a3411,0x001815cd,0xffb55010,0xff4e8e38,0x0044e844,0x00a01ab8,0x006ef4e1,0x003b7eb4,0xffbb817a,0xff2cf7f6,0xff9462f8,0x000824ef,0x00901068,0x00626248,0x00341808,0x00204310,0xfffab073,0x0005311a,0x00351407,0x00360901,0x002ad0cf,0xfff4e781,0x000203f9,
-0xffea7a3b,0xffecc6c5,0xffd338c6,0xffe18ce7,0xfff1a35f,0x00011884,0xfff1f6c1,0xffb4e557,0xff52be76,0xff49b0dc,0xffb81ded,0x0097bfe6,0xfe29d08c,0xfdd554c4,0xffa17c52,0x005390d5,0xffe019a1,0xfff8c6d3,0xffc0368d,0xff5710a4,0xffccfb39,0x003cab2d,0x00720af0,0x000b7b20,0xffc5e4e1,
-0xffc4f0fb,0xffbda14b,0xffd43d4f,0xffee8971,0x0008210b,0x001c1516,0x0021c8af,0x001ea1cc,0x00160ef1,0x000059fa,0xffe79903,0xffe51420,0xffd3cf89,0x00087b86,0x00142725,0x0003cfe0,0xffe98b34,0xffeb0193,0x0017ba26,0xffeff3e8,0xffeb8e75,0xffe05aee,0xfecd697a,0x013364d6,0x00f6a9dc,
-0x0066fe2c,0x001078b8,0x000eb034,0xffcc9390,0xffc629a9,0xffe0ca8a,0xffd6c538,0xffbb551f,0xffa763f6,0xffed3f1b,0x0022d3c5,0x003332e1,0x003821dc,0x002c673a,0x00309dc1,0x0006e7a5,0xfff1949d,0xffe95df3,0xffe8d097,0xfffcfbed,0x00149986,0x000f39ee,0x0007c3c3,0x0008b7c6,0xfff79892,
-0xfff02fc6,0xfffb14db,0x0000bf2c,0x00035c2e,0x00267318,0x0046e9ee,0x004261ce,0x0050ac6f,0x00dfd5ae,0xffa78bd6,0xffc8d5c1,0xffc78303,0xffc9ed40,0xffce9386,0xffeb7e2b,0x000316e5,0x001a1337,0x00426b95,0x006b3d53,0x00767516,0x007762bc,0x0066678b,0x00594da8,0x0035dd16,0x000ff6ba,
-0xffef5824,0xffc93c04,0xffb0ad99,0xffa611c2,0xffa20b8f,0xffa84912,0xffa7a32d,0xffd750cb,0xffebcad7,0xfff514a5,0xfff09e04,0xffeb9472,0xffe96c6f,0xfff28427,0x0005a0e0,0x001f1e99,0xfff02998,0xffe903be,0xffe2f779,0xffc25fb1,0x004dde6d,0x00413b04,0x002de9f0,0x0035bf26,0x004b4f4f,
-0x005f71e9,0x0075d5c5,0x00892f99,0x006fdd0a,0x0054f722,0x0045bc1e,0x003ac4b3,0x002db9e4,0x001417ae,0x000e440c,0x000286f4,0xffeb4259,0xffeee16b,0xffef1a4c,0xffef3486,0xffe94050,0xffe39b81,0xffd94c07,0xffd8e445,0xffe45115,0xfffcc437,0x002472dc,0x003a8dfc,0x0038c3d2,0x0037bc32,
-0x002e9951,0x002741b3,0x002d75d9,0x0034d834,0x003ef5be,0x00417d17,0x0007744e,0x00071a60,0x00149ebf,0x0013b03c,0x000f2a65,0x00073353,0x000217b0,0x0002efec,0x0004a5e1,0x000d0492,0x0015e4d9,0x000aa7d3,0x00010ac6,0xfffa3fea,0xffecabe3,0xffdf63d6,0xffd1fb22,0xffd3570a,0xffd247f1,
-0xffd0e7a3,0xffca6ca6,0xffc60808,0xffc0cba0,0xffca5078,0xffce21ef,0xffd2540d,0xffdebcf0,0xfff8953e,0x00073ded,0x0021655d,0x0030e252,0x0048486a,0x0038e28c,0x002a2023,0x001cf20f,0x0016f891,0xffafcf63,0xffb64fd8,0xffb6c012,0xffb8544b,0xffbdc6ea,0xffc40e78,0xffc86eec,0xffc894d0,
-0xffc93eca,0xffc7701a,0xffc80d0b,0xffcbe3cd,0xffd15003,0xffd7b629,0xffd4f104,0xffd3f2c4,0xffd15b03,0xffce997d,0xffcb8cad,0xffc8b892,0xffc8c84f,0xffc8ee7b,0xffc72766,0xffc6256a,0xffc3fb5b,0xffc281e0,0xffc12b59,0xffbd30df,0xffb6b078,0xffb3661e,0xffafac9a,0xffaa1240,0xffadea91,
-0xffaeeb54,0xffaf16fd,0xffb642cf,0xffc94a04,0xffcb741b,0xffcc4371,0xffcddf4e,0xffcd8394,0xffcc73ff,0xffcc2a5d,0xffcce828,0xffcfcdc9,0xffd2e14e,0xffd502d3,0xffd6ed70,0xffd7b6a2,0xffd95b70,0xffd6c7a1,0xffd51908,0xffd381a6,0xffd13efc,0xffcf0267,0xffcc1f5e,0xffcca930,0xffccc4b8,
-0xffcd482d,0xffcccbf5,0xffcccb9f,0xffcca6f5,0xffcadaa1,0xffc98652,0xffc9fc1c,0xffc8b15b,0xffc85b00,0xffc7163e,0xffcb9e9e,0xffccd92b,0xffc75d2b,0xffc8150e,0xffce559e,0x000f838d,0x000b2437,0x000c35e7,0x00116076,0x0014510a,0x001979e5,0x00121d23,0x000f6756,0x000abe26,0x0011bfde,
-0x0013aa8a,0x00114ecd,0x0013fe81,0x00154d29,0x00185e2f,0x0019672d,0x00184f40,0x0015d650,0x000e9af8,0x000ae900,0x000790bf,0x000ab528,0x000cd09f,0x0012e618,0x00108867,0x000ddd31,0x0006629d,0x0006abf5,0x00032898,0xfffd5742,0xfffacd84,0xfffd6556,0x000afa33,0x000538a4,0x0007ba1f,
-0x00156187,0x000b35cf,0x0006d3d7,0x000f3a1c,0x001d3976,0x0027c16a,0x00350e31,0x00254750,0x001d6355,0x000fc6a6,0x001bb90b,0x001b41db,0x00126d52,0x00185356,0x00236046,0x00316993,0x003e12ca,0x003b3aea,0x002de45c,0x0015d841,0x00060fa0,0xfffe3ae3,0x0002e23b,0x000eada6,0x001f536b,
-0x001df9ec,0x0017089d,0x00012d1f,0xfffeba7d,0xfff3a920,0xffea846d,0xffdcd080,0xffe0fc12,0x0000e1d9,0xfff02a84,0xfffa196e,0x001e6a16,0x00067dc6,0xfffba08d,0x000614ad,0x00253646,0x0038e0df,0x004fec3b,0x0034e0ac,0x0024f3db,0x000780fa,0x0024e0b7,0x002e7b37,0x002aca55,0x00322b8c,
-0x0038c955,0x00495eb2,0x0057ce31,0x0051d2da,0x003c4709,0x0014e2a6,0xffff1ed2,0xffef7839,0xfffb96d5,0x000ed285,0x0028607b,0x0020b528,0x001a805a,0xffeef19c,0xffef03a6,0xffd1ad6c,0xffbfed4b,0xffa506d8,0xffb1b6c5,0xfff9d107,0xffdc20f4,0xffecd88d,0x002fc22f,0xfffbe4ea,0xfff3e270,
-0x0012722d,0x003f5956,0x006813db,0x00953fa8,0x006fac02,0x00557543,0x0020e539,0x0033e8b1,0x002e716c,0x001e4e1e,0x001fd442,0x004ae090,0x0082c829,0x00b64fe7,0x00a81ba8,0x00785d09,0x00273744,0xfff26ad8,0xffd52fe8,0xffea1a85,0x0017c9a6,0x00589a12,0x0050959f,0x003ae034,0x00145380,
-0x00070280,0xffe312b0,0xffa7ce4b,0xff8f274c,0xff9b855a,0xffe9d8e0,0xffaa01dc,0xffcbbb2c,0x00500d1c,0xfff99613,0xffb27340,0xffdf5856,0xffd6717c,0xffe1dc20,0xffd1e3cb,0xffc4b04a,0xffb72167,0xffb46cfe,0x001faa26,0x007f44f7,0x00a12238,0x00e41494,0x00811283,0xffb559f6,0xff9c07ba,
-0xff9afa1f,0xffcb45f7,0x0002fb36,0x0028ab13,0x0048d298,0x003e1761,0x000aa2e0,0xffdd8ba3,0xffab5e95,0xffc38f4c,0x003db44b,0xfff3afeb,0xffe2ce1d,0xffe62f76,0xfff2c6da,0x000f13df,0x004c27fe,0x00534eaa,0x003867c0,0xfff836b1,0xffbc5a58,0x00d78c38,0x004e45e7,0xfff8cc0c,0xffa041b5,
-0xff3d9acc,0x0010ddf4,0x006fbc5c,0x0063bb83,0x0042992b,0xffc517dc,0xff273a89,0xff7752ef,0xffe1afa1,0x0068c6b1,0x00714abf,0x0054aab5,0x00324a59,0x000ae657,0x00102a12,0x0046a26a,0x003aa039,0x0030e694,0x000236be,0x000ee49d,0xfff08e80,0xffe0d933,0xffd7c8aa,0xffed6221,0xfff5d924,
-0x0001b25e,0xffe609b8,0xffa00c9c,0xff416f77,0xff4e32ef,0xffdb0fea,0x00a231fe,0xfe12f1bc,0xfe15d490,0xffb46228,0x0053a8b1,0x00110668,0x00220b9c,0xffdb6506,0xff719ec8,0xff8b2cef,0x0000ca19,0x009c7e15,0x0015c886,0xffc4e773,0xffbd8560,0xffaf69bb,0xffbe6868,0xffd8d8d0,0xfffad947,
-0x00147c2e,0x002245ce,0x00202253,0x0010f01a,0xfff1d23f,0xffe0210c,0xffe4309a,0xffd736e9,0x00056e9c,0x000ce224,0x0001b8fb,0xfff0855e,0xfff2fd2a,0x001da0e2,0xffd08f6a,0xffd0cb3e,0x000a6b5c,0xfea8a11a,0x01167c16,0x008f567a,0x0028ace5,0x00012e5d,0x002e19ec,0xffd9fd37,0xffcaef32,
-0xffe7cb7b,0xffe4c747,0xffcc6878,0xffb4221c,0xffe7ca62,0x0016d94e,0x0020c04d,0x00317512,0x003208e0,0x003d08ff,0x0013f125,0xfffeb065,0xfff71771,0xfffa1407,0x000de21f,0x00227ad8,0x0015c344,0x0006c2e5,0x0000e558,0xfff8041f,0xfff2e598,0xfffe643b,0xffff7dd8,0x000474d0,0x00331ee6,
-0x004cc679,0x0046eff1,0x006a6a8a,0x00ebd787,0xffb7d58e,0xffe717db,0xfff75e6f,0xffed73e4,0xffdbac75,0xffe83cbc,0xfff9610d,0x00110791,0x00310f28,0x005b10af,0x006c3968,0x006e2cdc,0x005df0f0,0x004d0463,0x002fc194,0x000aa7c1,0xffe702cf,0xffc1d7eb,0xffadf34a,0xffa98dca,0xffa321cd,
-0xffabbe94,0xffaf22b0,0xffe00fa3,0xfff2bbb4,0xfff088b6,0xffeea7c6,0xffe82d79,0xffe1aa6d,0xffea4f7d,0xfffe6fba,0x00180f36,0xfff236dd,0xffe9c411,0xffd7ab31,0xffbef88e,0x002b254f,0x001a5fc8,0x00023253,0x0013ba4b,0x0035871f,0x005b6d73,0x007b8262,0x009518ec,0x0081fe26,0x006d0c72,
-0x006215a6,0x00566775,0x00486acd,0x002af779,0x001ddf3e,0x000bff47,0xfff0f0d0,0xfff45ce4,0xfff0910d,0xffedae7b,0xffe50e4a,0xffdfa548,0xffd7d652,0xffdf4788,0xffef054b,0x00091985,0x00294b91,0x0036e455,0x002becb7,0x00275e58,0x001c7636,0x0015046b,0x001a2dd6,0x001e9acc,0x0027877e,
-0x0024dcf6,0x00280490,0x0029e188,0x00349108,0x002d5cd5,0x00207604,0x00151112,0x00102294,0x001269c2,0x0015b1c9,0x001d9c52,0x0025ac5b,0x0013cca9,0x000408d5,0xfff73220,0xffeb6960,0xffdf6e8f,0xffd2714e,0xffd51454,0xffd5898a,0xffd5a673,0xffd0d677,0xffcd599e,0xffc86162,0xffd51e30,
-0xffdac4d2,0xffe2626d,0xfff05ccb,0x000d469b,0x001fc4ad,0x00384b35,0x00479810,0x005e06cd,0x00513551,0x00474291,0x003d76d7,0x0036215d,0xffbb45f1,0xffc23899,0xffbf8481,0xffbffdd5,0xffc4ee3e,0xffc8ed6e,0xffc958c6,0xffc541f1,0xffc55608,0xffc378df,0xffc5091d,0xffc973cb,0xffd01b9a,
-0xffd6a3fa,0xffd51b50,0xffd49e59,0xffd308ae,0xffd08e0a,0xffcdb2d1,0xffcab3ea,0xffc89ca8,0xffc9d5f1,0xffc7d5bd,0xffc680d2,0xffc3bb42,0xffc14068,0xffc38912,0xffc29bb4,0xffbf527e,0xffbfea6c,0xffc0a9d6,0xffbee4a7,0xffc18515,0xffc051bb,0xffbf3c58,0xffc59829,0xffcf3591,0xffd315c9,
-0xffd24dd5,0xffd285a3,0xffd0891e,0xffce77d2,0xffcde05e,0xffcde6b8,0xffd0d456,0xffd34a3d,0xffd4a091,0xffd63e3c,0xffd6bb53,0xffd830e6,0xffd6187a,0xffd4cc06,0xffd393c0,0xffd1d66e,0xffd02655,0xffce6b1b,0xffcd65d5,0xffccf07d,0xffcccb2a,0xffccf5aa,0xffcc3f51,0xffcb699c,0xffcb9303,
-0xffcb98e8,0xffcd7ec5,0xffcdb870,0xffce7623,0xffcfb6db,0xffd333b3,0xffd4822b,0xffccab29,0xffcdc093,0xffced833,0x000ef008,0x000c1e99,0x000caca1,0x00110080,0x0013efcc,0x0019e739,0x00130b0e,0x001031ad,0x000ae429,0x000faa71,0x001188ab,0x00127e4a,0x00133cff,0x00141b06,0x001565df,
-0x001876dc,0x001801f9,0x001636c6,0x000eb27c,0x000b0daa,0x0007897d,0x000b703c,0x000d582c,0x0012441a,0x000f4f03,0x000d13b4,0x0005a260,0x0005fca0,0x0002e582,0xfffed797,0xfffbcb9a,0xfffe4b05,0x0009992e,0x0005f96d,0x0007e1da,0x00138c68,0x000bde13,0x0007b105,0x000e9579,0x0019aafa,
-0x0024d8c8,0x0034db79,0x00280d88,0x001fc381,0x00105222,0x00179b51,0x0017d6df,0x00172753,0x00183e55,0x00213240,0x002a33b3,0x003c41b1,0x003c4da5,0x00319ce1,0x001a2521,0x000b0e72,0x00031f39,0x00090a26,0x0011f5f6,0x001c60af,0x001c2864,0x00147184,0xfffd048d,0xfffb217c,0xfff1e66f,
-0xffec2296,0xffddd53c,0xffe04783,0xfff9bb6c,0xfff01d02,0xfff9d2bd,0x00159ef3,0x00055f8c,0x0000002e,0x000a620c,0x0023a178,0x00381a48,0x0052afe6,0x003b713c,0x002add04,0x000a6a18,0x001a9c75,0x00244d63,0x003262e4,0x00314647,0x0036f7b1,0x003c2f46,0x00549550,0x00526d21,0x004182ee,
-0x0018d4e0,0x00038277,0xfff3fc0a,0x0000bce6,0x001100cf,0x001f35dd,0x001ab66a,0x0015711a,0xffe57f7f,0xffe78414,0xffcb7692,0xffc289ef,0xffa43599,0xffb1c7a1,0xffef2c80,0xffdef460,0xffee0272,0x0022a182,0xfffd68de,0xfff26a7a,0x000f5ad1,0x0030a7e1,0x005d15d2,0x00941a27,0x0076be8a,
-0x005c41cb,0x00256c9e,0x00284990,0x002676b3,0x00304867,0x00248582,0x00465e60,0x006c7545,0x00aed9a7,0x00ad664b,0x008967fa,0x0039ac14,0x0007aa24,0xffec0f42,0x0000c7c3,0x00231528,0x0051e624,0x00498831,0x0032a10c,0x0007792d,0xfff3bd4d,0xffd28546,0xffabfab3,0xff7e0b19,0xff89a1d1,
-0xffd491a4,0xffa3cb1a,0xffc883fd,0x00360734,0xfff2a45b,0xffdc748f,0xfffb5f13,0x000a49e2,0x0009f4fe,0xffd4f325,0xffd3c0ca,0xffc0446c,0xffa0a95a,0x000d54a8,0x00654265,0x007b4ccb,0x00d9ca88,0x008a54b0,0xffb72d7b,0xffa0d3d1,0xff8fbd13,0xffa5a19d,0xffd961bd,0xfff38709,0x0009bf53,
-0x000aa0bf,0xffe1ad88,0xffc0bc12,0xffa1282b,0xffc0287b,0x0040412d,0xffed1219,0xffda8ba5,0xffe403de,0xfff136a6,0x001f4b92,0x006d231b,0x0065ce10,0x00433a3d,0xfffecd84,0xffdf1253,0x00bd3776,0x002f31ae,0xffdeb286,0xff943ca0,0xff3c585f,0xffdd1b6c,0x003d0a5f,0x00574417,0x004b9bab,
-0xffd7c2a9,0xff3139c5,0xff62fde0,0xffbdd6c4,0x003a5cdd,0x00770c2a,0x00712104,0x004399d3,0x001fae06,0x001fce54,0x00552286,0x003c4356,0x00329081,0x000f0d47,0x0019eec3,0xfff70e7f,0xffd75d05,0xffdd03a9,0xfff6d31f,0xfff97b2e,0x0004240a,0xffdec2d3,0xff8f84f1,0xff30362c,0xff5383b2,
-0xfffaeadd,0x009c8e43,0xfe292068,0xfe6869d4,0xffb0976c,0x003a88d0,0x004cb93c,0x00468a64,0xffedc1b6,0xff7e11f1,0xff55fe9b,0xffcd4af4,0x00b6fe67,0x00234062,0xffcd397c,0xffb91a3b,0xffa7781e,0xffae3a87,0xffc53876,0xffed2a50,0x0006fa07,0x0014f8d4,0x00191888,0x0006fa23,0xffe498a8,
-0xffd85f83,0xffe1d754,0xffdd50d5,0x00026822,0x00072485,0x0000945b,0xfff6e5a5,0xfff6acad,0x00158c95,0xffbbefb2,0xffc2cfa7,0x00201dee,0xfea8bcfc,0x00e51df9,0x002a7203,0xffffa566,0x0004ffd6,0x00544376,0xffff186a,0xffe559b3,0xffeaafbd,0xffeff085,0xffdbddfe,0xffc8afad,0xffe51cd0,
-0x000a7991,0x000dc920,0x002acd11,0x0038e103,0x00453974,0x00213187,0x000db3fb,0x00045289,0x000a2e93,0x001b7792,0x002c443a,0x001a5f01,0x000519f0,0xfff862f6,0xfff7ec00,0xfff6d934,0x00028cbb,0x0000be90,0x0007fdd6,0x003aa796,0x00457f81,0x0041800d,0x0081ffd8,0x00e71f99,0xffcc46fe,
-0x0002aee2,0x001ed9a3,0x000983af,0xffe26425,0xffe34aca,0xffeff2a9,0x000508cd,0x002093b9,0x0048d7f9,0x005f42a1,0x00634eab,0x0056552f,0x00434361,0x002a57dc,0x00060d07,0xffe01639,0xffbfa35e,0xffb03b84,0xffaf1de6,0xffa75403,0xffb26d47,0xffbc3df6,0xffe8fa0c,0xfff983e5,0xffefdc0a,
-0xffee9e56,0xffe7423a,0xffe036da,0xffe85b97,0xfffa013d,0x000e7034,0xfff74b36,0xffed8197,0xffd15abd,0xffc0c7b4,0x00072390,0xfff288da,0xffd94c18,0xfff34791,0x001f2fc4,0x005272aa,0x00771a12,0x0092338c,0x008a4071,0x007fbc45,0x007b845b,0x006f13d0,0x005f95f8,0x003fa859,0x002f624c,
-0x0018f4fd,0xfff9dbb1,0xfffa79cc,0xfff06691,0xffe7c7b8,0xffde901d,0xffdb18b0,0xffd89ea7,0xffe75c89,0xfff9ab4f,0x0012ec59,0x0028e8c7,0x002dcba4,0x001c8436,0x0017aba6,0x000e5ca4,0x000770c6,0x000ba8b7,0x000cf265,0x0012d1ca,0x000a131d,0x0044b53d,0x0048412f,0x00500ba3,0x0045bf5b,
-0x00350112,0x0026c17f,0x0021a47c,0x0023c246,0x00261eed,0x002ad5a1,0x002fdd71,0x001954ef,0x00057662,0xfff36b81,0xffe9e1bf,0xffdfd455,0xffd48c79,0xffd7b40e,0xffd95f2e,0xffda8f72,0xffd7d15f,0xffd54b06,0xffd0c216,0xffe14ef7,0xffe9f7ab,0xfff5e8c6,0x0003e45e,0x0020cfe5,0x00347589,
-0x00482902,0x0054d699,0x006778ae,0x005ed59f,0x005a5ad3,0x0054e6c1,0x004e2e71,0xffcb0888,0xffd1fa4f,0xffcdfa33,0xffce0800,0xffd2832d,0xffd48a3e,0xffd25c93,0xffcc5d34,0xffcb3028,0xffc908b2,0xffca9525,0xffce1c2f,0xffd4241c,0xffd9731d,0xffd8cdcb,0xffd84d06,0xffd72d65,0xffd4c43e,
-0xffd1cae0,0xffce9fc0,0xffcae7b1,0xffcc4862,0xffc9d77a,0xffc7656e,0xffc3826d,0xffbfd10d,0xffc584f3,0xffc7cf9a,0xffc85ee0,0xffcd1c72,0xffd22ae9,0xffd551fd,0xffd65642,0xffd4000d,0xffd2612f,0xffd744e1,0xffd7e2cb,0xffdcf1c8,0xffdb05d1,0xffda36b0,0xffd75c19,0xffd52d40,0xffd4a93a,
-0xffd47786,0xffd6563d,0xffd7832e,0xffd79301,0xffd869cc,0xffd84a5f,0xffd8fe3f,0xffd7861f,0xffd6a5ee,0xffd5d310,0xffd4a64d,0xffd385ba,0xffd2cb06,0xffd0d169,0xffcf8d14,0xffcdf9a9,0xffcf9590,0xffcdf588,0xffcb174d,0xffcd94ca,0xffcf37a7,0xffd28344,0xffd46b62,0xffd6661c,0xffd9f47f,
-0xffdc30ee,0xffddb826,0xffd44c18,0xffd628af,0xffd1da17,0x000d8dfc,0x000bf028,0x000caaea,0x000fc4ff,0x001287ec,0x00190340,0x001305fd,0x00101bb8,0x0009ccb8,0x000cde99,0x000ec244,0x00130b45,0x0011d242,0x00124934,0x0012292b,0x0016a021,0x00169a89,0x00151997,0x000dfa9c,0x000a94dc,
-0x00075cb9,0x000adf23,0x000c4674,0x000fb770,0x000d0f7f,0x000b07b3,0x00036ff5,0x000439c0,0x0001696b,0xfffe3fe9,0xfffba26f,0xfffe1754,0x00064a7c,0x0005a956,0x00077149,0x000fd38b,0x000b3c99,0x0007627e,0x000d2fc4,0x00150a75,0x00207ab9,0x00326ca0,0x00292c4d,0x002054f7,0x000e319e,
-0x00124ffa,0x0013df8d,0x001bb48b,0x0017fc0b,0x001ebd1b,0x00238dbb,0x0038dbd3,0x003b0d23,0x0032287a,0x001d08b3,0x000f77f7,0x0007ca0f,0x000d3520,0x0013519f,0x0017449d,0x0018d50a,0x0010cc12,0xfff7c6c6,0xfff82d26,0xfff13345,0xffec4e2d,0xffe0744d,0xffe1076c,0xfff156f0,0xfff09cde,
-0xfff9914b,0x000ab4ab,0x0003a94c,0x0003c306,0x000e9ad8,0x00208922,0x003496eb,0x00516766,0x003f94c9,0x002ee142,0x0009aab1,0x0010080e,0x0019ca53,0x0039199d,0x002fb45c,0x00346f50,0x00313586,0x004f3bbb,0x004fcda0,0x0041aac8,0x001b2e80,0x0007a086,0xfff92c93,0x000442f1,0x0010f865,
-0x0013a3ad,0x0013fbf8,0x00101d32,0xffdba03a,0xffe1e8d7,0xffc7055e,0xffc18922,0xffa59351,0xffb469e5,0xffe24ebd,0xffe36366,0xfff0de49,0x001378bd,0xffff4146,0xfff0b259,0x000b44d2,0x00203c8e,0x004e7ec2,0x008ca0b8,0x0079d136,0x005de2e6,0x0021ad50,0x001addf0,0x001efda6,0x00427a16,
-0x002ac422,0x00432d2d,0x005af67a,0x00a4134e,0x00ac647a,0x00912172,0x00487583,0x001c124f,0x00030372,0x0014af55,0x002ae059,0x0043ab70,0x003fd034,0x002a21d3,0xfff6950d,0xffe2bba1,0xffc607d5,0xffb1c767,0xff747a8e,0xff7e2a92,0xffbe0712,0xffa3bf1b,0xffc97e48,0x001710f3,0xffec3f41,
-0x000abfc9,0x001c6ef9,0x003f3912,0x0030f261,0xffd91deb,0xffe4e601,0xffcff51d,0xff9d9bd2,0xfffdf6f5,0x004623b4,0x0053f6a9,0x00bfd05a,0x0085a47d,0xffbaa647,0xffa3cda0,0xff85c3fd,0xff8215bb,0xffb21865,0xffc20145,0xffcbcf09,0xffd643cd,0xffbc6d75,0xffa858cb,0xff9e808b,0xffc2410b,
-0x003f25b5,0xffeb87f4,0xffdbe8fb,0xffe98153,0xfff5d859,0x002f55d1,0x0086707c,0x00765bb2,0x004fc219,0x000ca185,0x000710d1,0x0094db55,0x001048af,0xffcacf5c,0xff8fe07e,0xff473394,0xffaf9a38,0x000c71d0,0x00492998,0x005426f3,0xfff175aa,0xff4902c8,0xff56e50f,0xff9e8745,0x000d80d5,
-0x007365fb,0x0085c2ad,0x0053072a,0x0036ecf9,0x00326105,0x005fb1cd,0x003b4065,0x002fd553,0x0019063f,0x00211526,0xfffd0dc8,0xffd24ffa,0xffe193b3,0xfffd675f,0xfffc9342,0x000490cf,0xffd8cfa1,0xff85935d,0xff259815,0xff5be94d,0x00168886,0x00898e2d,0xfe66f7c2,0xfec4bf3c,0xffa0b435,
-0x0017414a,0x0085bc8e,0x0063f969,0x00014676,0xff92231d,0xff389f5c,0xffa5fe00,0x00b9e6b5,0x00324791,0xffdf2251,0xffb80629,0xffa5ee09,0xffa4e87a,0xffb5d8fd,0xffe03cb1,0xfff64e00,0xfffe84ca,0x000b4eec,0xfffa758f,0xffda35da,0xffd17600,0xffdf781f,0xffe4f024,0x000182c0,0x00041a38,
-0xfffea711,0xfffca7dc,0xfff7e6b0,0x0002ec91,0xffb84e29,0xffc30f30,0x00191fa9,0xfec792be,0x00a4f9a3,0xffe28a7e,0xfff66fff,0x001ab450,0x0072b07a,0x00337056,0x000f9dd2,0xffedc9fd,0xfff7dcc3,0xffe6a466,0xffddae2d,0xffe36eab,0xffff193f,0xfffdd7fd,0x0025b804,0x003e39f8,0x004785e1,
-0x002d2ff0,0x001d7259,0x00110c0e,0x0017e081,0x0024fb4e,0x0031b632,0x001caa3e,0x000364b5,0xfff1b1cb,0xfff77214,0xfffb630e,0x0005b5ff,0x0002bfba,0x000b6323,0x00385654,0x00317a28,0x0031a8f4,0x008ab352,0x00caf65e,0xffe3060b,0x0018c17a,0x003967c6,0x001c551d,0xffe52934,0xffdb6eab,
-0xffe38cc6,0xfff4ee8d,0x000d9425,0x0032782f,0x004f13c0,0x0054528d,0x004c597d,0x003add32,0x0025ad92,0x00032dd4,0xffdc8c04,0xffc2d123,0xffb6e51b,0xffb5d8e2,0xffaedace,0xffbcd1f5,0xffcda802,0xfff1f887,0xffffaeea,0xfff21161,0xffef919c,0xffe906ce,0xffe5918f,0xffeb8b61,0xfff7bda5,
-0x000315e4,0xfffdb9db,0xfff37a79,0xffd31bb9,0xffc97692,0xffe59d3f,0xffcdf547,0xffb7fd1c,0xffd6e80e,0x0008b264,0x003fd083,0x00646184,0x007f85c0,0x0085ecbc,0x0088638d,0x008c387e,0x00805cd1,0x00701a5c,0x004fbd62,0x003e9b64,0x00255d50,0x0003c2dc,0xfffe20e1,0xffedc6ca,0xffdf9893,
-0xffd754ba,0xffd735c0,0xffdb659f,0xfff000a3,0x0002fc51,0x0019ea7f,0x0023d5e8,0x00207bbc,0x000cea9e,0x0009d321,0x00046955,0xfffe9681,0x000103ac,0xffff0c3f,0x0000b6d7,0xfff21542,0x0057fcf5,0x005c0531,0x00607b9d,0x00562269,0x00461fad,0x00376471,0x00329ed8,0x0033e787,0x0032c5c5,
-0x00321b23,0x003245f3,0x0019bc62,0x00042eae,0xffeef3d5,0xffe83961,0xffe07038,0xffd7a4af,0xffdb4b92,0xffde4d65,0xffe02713,0xffdeca3c,0xffdd3775,0xffd8fff7,0xffed31f6,0xfff97546,0x000a4f05,0x001728bd,0x0031de2e,0x0043cfb1,0x0050c83c,0x0058a122,0x006582ce,0x00618482,0x006215ea,
-0x0060766a,0x005b893f,0xffdd4d2b,0xffe61f55,0xffe2111e,0xffe1857a,0xffe4ac51,0xffe490ca,0xffe08dd8,0xffda2c43,0xffd727d6,0xffd4629e,0xffd4e0fa,0xffd6310d,0xffd9ea38,0xffdcaaf9,0xffdc7bc5,0xffdbb09c,0xffda9be1,0xffd7ffab,0xffd4a401,0xffd15381,0xffcdc511,0xffcee456,0xffcc7d86,
-0xffc979b2,0xffc4de01,0xffc0c007,0xffc86da6,0xffcccd3f,0xffd05bae,0xffd868bc,0xffe0bf8f,0xffe7a503,0xffe7f7a2,0xffe5e7ab,0xffe4cced,0xffe94f74,0xffe1c95f,0xffe7f0af,0xffe4bcc7,0xffe33310,0xffe013d7,0xffde2ccb,0xffddb961,0xffdd622a,0xffdd9ec9,0xffdd2e6a,0xffdbcbfb,0xffdb9097,
-0xffdaa460,0xffda329c,0xffd966e3,0xffd8dcdb,0xffd8643c,0xffd7bea0,0xffd72e09,0xffd7000f,0xffd537ad,0xffd3ad22,0xffd1846f,0xffd3ca7a,0xffd1e52c,0xffcd3f09,0xffd17d0d,0xffd480e1,0xffd8c6cf,0xffdbd956,0xffdebd89,0xffe3deb3,0xffe4e947,0xffe6cd0c,0xffdda912,0xffdfedd5,0xffd56473,
-0x000b7429,0x000b1e20,0x000bec59,0x000dd7fb,0x00104b8e,0x0016f146,0x00120678,0x000f1488,0x00078902,0x0009ad9c,0x000ba1ae,0x0012ad6f,0x000fcdcd,0x000ff59e,0x000eb2fb,0x00141f69,0x00145c5b,0x0012c856,0x000c8a96,0x00098e3e,0x0006bd24,0x0009bb14,0x000acaac,0x000ce9b9,0x000a4e5e,
-0x0008cdc3,0x00013d05,0x0002aa08,0xfffff371,0xfffca81e,0xfffb8ca6,0xfffdffd8,0x000292c7,0x00053ace,0x0006b2ec,0x000bf5db,0x000a578a,0x00068223,0x000b57c3,0x000ff623,0x001b4c55,0x002e1c91,0x00287eea,0x001f120c,0x0009d4b7,0x000ca13a,0x000fd201,0x001f0291,0x0016f81f,0x001b7a61,
-0x001cfe0f,0x00343494,0x00380561,0x003011be,0x001e8758,0x0012d053,0x000bd5a1,0x00100e6f,0x0012d944,0x00116d09,0x00145a6c,0x000c632d,0xfff25bb2,0xfff6371e,0xfff1b4ac,0xffeb929d,0xffe473b4,0xffe34067,0xffe8ffdf,0xfff19683,0xfff99f89,0xffffd4b2,0x0001228a,0x00065a2e,0x0012c19c,
-0x001c705d,0x002f5bd1,0x004c8e40,0x0041058c,0x0030879e,0x00057b9b,0x0006cae2,0x00107a85,0x003d9cc5,0x002cf91f,0x00309888,0x00279fb6,0x0048db67,0x004b58af,0x003ddff5,0x001c482b,0x000b0b66,0xfffeceb6,0x00069320,0x000f0edc,0x0008024b,0x000c8318,0x000a96c6,0xffd2a3c7,0xffde315d,
-0xffc44340,0xffbc7d55,0xffa8d4bb,0xffb925b8,0xffd492f9,0xffe8a87d,0xfff4c456,0x0004d15d,0x0000835f,0xffee9e60,0x0007c29d,0x00105f22,0x003e6d82,0x007feb73,0x00789717,0x005aa9ed,0x00174966,0x000deeea,0x001923d2,0x0051f949,0x002f9fe1,0x003e03b0,0x004b2b1e,0x00971bf8,0x00a70f30,
-0x0090c871,0x00536bc9,0x002da624,0x0017d773,0x00247207,0x002ed0a5,0x0031611a,0x0033aa44,0x00211139,0xffe3bfa9,0xffd5f948,0xffbf1db1,0xffb69099,0xff73a396,0xff7afe26,0xffa7ae20,0xffa9343b,0xffcdd117,0xfff73182,0xffe5e32c,0x003676fe,0x003db362,0x006d4005,0x00526c35,0xffe0cca4,
-0xfff5db71,0xffe26e21,0xffa92849,0xfff2a47e,0x002607f7,0x002dca77,0x009aa0cf,0x0075efcc,0xffc26e01,0xffa63033,0xff7e45f6,0xff6476a1,0xff8fdd78,0xff98a892,0xff98e58f,0xffa8bf7e,0xff9e2e9c,0xff95bb38,0xffa40739,0xffca9258,0x003a5ba1,0xffeefc52,0xffe53045,0xfff50ab6,0x00007f49,
-0x003e6ef7,0x009404d5,0x00824078,0x005bfd50,0x001f7cd6,0x002d68dd,0x006597e3,0xfff4ce69,0xffbd5c8c,0xff91093e,0xff589f13,0xff8c4448,0xffe228f5,0x0039d85d,0x005856c8,0x000bb5d3,0xff6806a0,0xff5304f8,0xff86dd4d,0xffe8e186,0x0064e806,0x008d784d,0x005ff9ad,0x004e6bda,0x0045484d,
-0x0064ad95,0x00385eac,0x002a1776,0x001ee83f,0x0023ee73,0x0001065e,0xffd14c55,0xffe54639,0x0000d130,0xfffdc9bd,0x000174a6,0xffd3e3b9,0xff843950,0xff270925,0xff686d76,0x002d63f0,0x006d4227,0xfebc223a,0xff1da3f9,0xff8988da,0xfff1b44b,0x00b3dc38,0x0075fe28,0x00165e49,0xffb930b0,
-0xff34664e,0xff8a15ce,0x00a68e39,0x00406f26,0xfff698dc,0xffb70da1,0xffa8edc8,0xffa1ba65,0xffaab130,0xffd4a6a7,0xffe57206,0xffe579b1,0xfffa85da,0xffee0fe0,0xffd3ba9f,0xffccf60d,0xffdecde6,0xffedbd8d,0x00030da8,0x00035d06,0xfffd85f8,0x00015cc8,0xfff9491f,0xffed2357,0xffc66da6,
-0xffcf9603,0xfff90e2b,0xfefa91a6,0x005dd05c,0xffcb0b29,0x00114e00,0x003ef184,0x00812396,0x0066b6a5,0x003ed2ab,0xfff7fdad,0xfffce0cb,0xffead859,0xffec3eb9,0xffe1a26e,0xfff61bb4,0xfff2bc0d,0x0021e048,0x003f571f,0x0044050e,0x0035df1d,0x002b3718,0x001ca3b5,0x0022bb2c,0x002ab778,
-0x0033daa5,0x001cbca1,0x0001dc1a,0xffeec51a,0xfff74489,0xffff95d3,0x0005db2e,0x0002bfe1,0x000c48f9,0x002cf76c,0x00178ac0,0x001c10f4,0x007cc9e8,0x0093785e,0xfff9def8,0x0026bfa7,0x004534f7,0x0026b2a9,0xffe639d2,0xffd2727d,0xffd40678,0xffe1e5f0,0xfff7b85b,0x00186177,0x003a0ae5,
-0x003fb37d,0x003de746,0x0032dcff,0x001fb0b1,0x0000c427,0xffdd17cb,0xffca5577,0xffc0c7f9,0xffbd4cc8,0xffb9d184,0xffca9095,0xffe0fc35,0xfffa78cd,0x0004419b,0xfff5a9b0,0xfff16975,0xffed8020,0xffef9d51,0xfff1efe7,0xfff7ed42,0xfff8b8c7,0x000244f0,0xfffa3739,0xffde4bfc,0xffd9196e,
-0xffcaaf43,0xffb18dd0,0xffa3b9b4,0xffc20694,0xfff145ca,0x002356c6,0x004431e2,0x005f2fe7,0x007544e0,0x00854570,0x0091af40,0x00885382,0x00786f60,0x00593dd6,0x004792e5,0x002d0e1b,0x000b02fc,0xfffd7353,0xffe8c269,0xffd7d49d,0xffd14a33,0xffd52aec,0xffe0283e,0xfff87ae3,0x000a718a,
-0x001d357f,0x001b2051,0x00115b51,0xffff43e3,0xfffeb2ae,0xfffdad7a,0xfff926cc,0xfff9a4a5,0xfff401a5,0xfff0903c,0xffddc0a4,0x005dbdc7,0x0060239a,0x00608c19,0x00591360,0x004d7281,0x0041e561,0x003f1588,0x00406f82,0x003aa427,0x00341233,0x002f0e9e,0x00168237,0x00013888,0xffeaf383,
-0xffe7156b,0xffe16eb3,0xffdb2f97,0xffdf9a4a,0xffe3c3b7,0xffe63692,0xffe5c561,0xffe49ba6,0xffe068c0,0xfff74786,0x000731a3,0x001d2495,0x00281773,0x003e6c3f,0x004d52ef,0x0051aeb0,0x00534260,0x0058a35a,0x0058cc24,0x005d9779,0x005ee748,0x005bc4be,0xfff35464,0xfffe981d,0xfffa8a34,
-0xfff897fb,0xfff8edc9,0xfff616de,0xfff0452e,0xffe9f6d7,0xffe4c052,0xffe10fb6,0xffdfc5d2,0xffde269a,0xffde875b,0xffddc26d,0xffddea0e,0xffdcfac8,0xffdbed58,0xffd92373,0xffd5971f,0xffd24088,0xffd00a0e,0xffd1c988,0xffd08459,0xffce4e97,0xffc9ec07,0xffc6ae73,0xffceb800,0xffd42fc4,
-0xffd9af7e,0xffe3ca1a,0xffee85d4,0xfff6d4c8,0xfff819ca,0xfff6e93b,0xfff756e8,0xfffc9c75,0xffeb9689,0xfff22faa,0xffeda54c,0xffeb89a5,0xffe87c85,0xffe6d5b1,0xffe625f2,0xffe55b5b,0xffe3f557,0xffe1efb5,0xffdf2f79,0xffddd0d2,0xffdc1455,0xffda56fb,0xffda4558,0xffd9fcdc,0xffd9dae0,
-0xffd9b47b,0xffd9b677,0xffd9d6f8,0xffd90538,0xffd80836,0xffd63389,0xffd8b4b6,0xffd77ec6,0xffd228a5,0xffd7246f,0xffdae873,0xffdf6242,0xffe2ed22,0xffe614ec,0xffebfe27,0xffece887,0xffef2a8a,0xffe77476,0xffe9f699,0xffd7f276,0x0009e27e,0x000a2785,0x000bb973,0x000c4886,0x000e6604,
-0x0014b6a7,0x00112919,0x000e4c5f,0x0005a672,0x00076b66,0x0009781d,0x0012aabe,0x000e6a7d,0x000e55f7,0x000c3dec,0x00123570,0x00129424,0x0010c6c1,0x000ba128,0x00090669,0x0006d357,0x00088eba,0x0008df66,0x0009504a,0x0007dc6c,0x000651de,0xfffe3f87,0x00004692,0xfffd96ad,0xfff98516,
-0xfffa8d15,0xfffcffad,0xfffdf2c2,0x000494b6,0x000676f7,0x00078d76,0x0008f157,0x00048ff8,0x000a64c6,0x000be28d,0x0016af34,0x0029145b,0x00275475,0x001dcf87,0x00060b34,0x00088aaf,0x000d4c8e,0x00225015,0x001624d4,0x00185608,0x0017ada3,0x002fa9ad,0x0034bdee,0x002d6e1d,0x001fe14b,
-0x0015fa7a,0x000fc88d,0x0011013b,0x00113517,0x000c43c1,0x000f12c9,0x00077807,0xffee5af9,0xfff6400f,0xfff412dc,0xffeadfa7,0xffea4845,0xffe7b92e,0xffe2a002,0xfff37232,0xfffa1d86,0xfff6dcb6,0xfffebe3a,0x000798fd,0x0016f18d,0x0018aeaf,0x0029f098,0x004574da,0x0040e66e,0x003173d1,
-0x00018261,0x0000f4c5,0x000a77c7,0x0041d7d0,0x002a9a14,0x002ce700,0x0020a99b,0x004355cd,0x00470628,0x00393b40,0x001dc784,0x000eef49,0x0004d2cc,0x00079f19,0x000ba6a1,0xfffe672a,0x0004ad08,0x00048eca,0xffcb85ea,0xffdb783e,0xffc39e98,0xffb3fa0e,0xffad9434,0xffbe909c,0xffc7807d,
-0xffee2b7a,0xfff93229,0xfff896a0,0x00010132,0xffebcbd1,0x00058296,0x00039a76,0x002f5017,0x006fda7e,0x00748250,0x00565606,0x000d185b,0x0004c1c4,0x0016fc63,0x005ffc27,0x0032fdb1,0x00366356,0x003cd8b2,0x0089810e,0x009f8aa9,0x008c226f,0x005bff7e,0x003c845e,0x00297ea8,0x002e310e,
-0x002eb8cd,0x001e2478,0x0025096b,0x00166b2a,0xffd27ca6,0xffcfdb6f,0xffbf1fae,0xffba6326,0xff7c6bdf,0xff819dbe,0xff94d174,0xffb27b38,0xffd420e7,0xffdad505,0xffe02e36,0x0059ba8c,0x005c9543,0x0090fee2,0x006d2962,0xffefa116,0x0006616b,0xfff4b911,0xffc0a76e,0xffecc41d,0x0009fb9f,
-0x000d8609,0x00734ad9,0x0063c5ae,0xffd513ef,0xffac46c0,0xff7bf7e1,0xff51c516,0xff761a37,0xff7b3440,0xff76da6f,0xff865516,0xff88f90e,0xff89c87e,0xffb12f3e,0xffd924d3,0x00320ec3,0xfff5e9ac,0xfff2a624,0x00036403,0x000d6140,0x00497aa7,0x009325c2,0x00874983,0x00663c94,0x0033a747,
-0x004cdae9,0x0036b528,0xffe0dde0,0xffb8b882,0xff9750bd,0xff6c7fe4,0xff763dde,0xffc4a60d,0x002e4bcf,0x005a9077,0x0024919f,0xff8acc81,0xff56016d,0xff7606d1,0xffce1812,0x004d55cd,0x00875d97,0x00691cb9,0x00634ada,0x00566ba2,0x00638aee,0x00335c3d,0x0022c74f,0x00205f45,0x0022888c,
-0x00029711,0xffd36c0b,0xffe9c2d3,0x0002d5b4,0xfffbcf41,0xfffccade,0xffd1b1f4,0xff8bc3c7,0xff3635b3,0xff7a81b6,0x003cf51f,0x004e06df,0xff129258,0xff6c627c,0xff7501d2,0xffd4971d,0x00d7b8a3,0x00810e6d,0x002c07f5,0xffe6b34e,0xff409fd3,0xff78a868,0x00862566,0x0050296f,0x001504c0,
-0xffbb8178,0xffb20782,0xffa626f6,0xffa6af3b,0xffcbe8c1,0xffd7d5c3,0xffd0c5e1,0xffeb20f8,0xffe4835f,0xffd04639,0xffcc5343,0xffe13242,0xfff6ad99,0x00066ce2,0x0001d371,0xfffe6399,0x00053497,0xfffe2c62,0xffdc73a1,0xffe04e06,0xffe34769,0xffc9161e,0xff319ee1,0x0018d8b1,0xffe6ad5b,
-0x0041a803,0x00623007,0x0079f317,0x008d26ff,0x006c278d,0x0010386f,0x00035cdd,0xffeb8ae8,0xfff5d923,0xffe01b13,0xfff00336,0xffee8f21,0x001e8b22,0x003afc0c,0x003cd900,0x003b52a1,0x00368bf1,0x00275324,0x002a9fee,0x002e056f,0x0033fbe8,0x001aeec1,0x00011684,0xffef64b7,0xfff8e200,
-0x0001ee45,0x000258c6,0xffffaab2,0x000a22d0,0x001c3a84,0x0000d498,0x00052478,0x00575a5f,0x0045e43f,0x000fda3f,0x002e7f68,0x00485df6,0x002f7f2b,0xffeab8fd,0xffce1096,0xffc5afbd,0xffcf2a12,0xffe204cc,0xfffe0b3c,0x0022200e,0x00298751,0x002e1034,0x002ba365,0x00195969,0xffffe408,
-0xffe292c8,0xffd4d345,0xffccf435,0xffc70b2a,0xffc820e2,0xffdb31f8,0xfff3ee90,0x00021221,0x00075e96,0xfff962ae,0xfff44590,0xfff49abf,0xfffa9c45,0xfff9eda4,0xfffa04c2,0xfff196be,0x00034742,0x00003dd4,0xfff19e08,0xfff0596a,0xffb87e8a,0xffa234f7,0xffa04409,0xffb7c7c5,0xffdbb5ab,
-0x0002d3d1,0x001e664c,0x0039000a,0x005cbaaf,0x00781d7b,0x008c2408,0x00868167,0x00789c6b,0x005c7cf7,0x004a8606,0x002fdf23,0x000e0d2e,0xfff9f9c9,0xffe3dc81,0xffd2ae60,0xffcdb8ec,0xffd5baa3,0xffe652ff,0x00001c2b,0x000fa021,0x001c1a43,0x0010b0f8,0x00034f39,0xfff5e3c9,0xfff72059,
-0xfff99895,0xfff59b00,0xfff438cd,0xffeb3259,0xffe2c96f,0xffced125,0x0054fe9d,0x005436ff,0x0050d7d6,0x004dc4d2,0x00482694,0x004322f8,0x0043d477,0x00468da1,0x003daa07,0x003358af,0x002b569c,0x0013a8bc,0xffff78a1,0xffe96206,0xffe76281,0xffe33d9d,0xffdefb0e,0xffe41dfe,0xffe8e566,
-0xffeb9916,0xffec5b6e,0xffeb8931,0xffe7eeaa,0xffff9885,0x00122f16,0x002c6c18,0x00343a5e,0x0044702c,0x004f0a44,0x004ac40f,0x00458f61,0x0042daed,0x0046aa45,0x004e51bc,0x00517f8c,0x004f8d91,0x000b578a,0x00180590,0x0013bae0,0x00100323,0x000ceb5b,0x00076fe8,0x00003178,0xfffa44ae,
-0xfff2c99b,0xffedc8ad,0xffea5ecc,0xffe5e353,0xffe2ee4c,0xffde8d5b,0xffdf2244,0xffde4427,0xffdd5466,0xffda82ec,0xffd72989,0xffd3f8fa,0xffd2d870,0xffd6c494,0xffd78c3e,0xffd7182c,0xffd3c2c3,0xffd2d13f,0xffda698c,0xffe0a916,0xffe7461b,0xfff29acf,0xfffef53c,0x00070ea4,0x000986e1,
-0x0008b315,0x000aef96,0x00110d0f,0xfff4b2cf,0xfffb3d0b,0xfff5c384,0xfff363a1,0xfff0afb0,0xffef2890,0xffee06a6,0xffecabda,0xffe9f417,0xffe6b8af,0xffe2e2c3,0xffe0851a,0xffde11e9,0xffdb2314,0xffdbb12d,0xffdb90be,0xffdbb720,0xffdbf6ae,0xffdc6212,0xffdce0a6,0xffdc8f0d,0xffdc10eb,
-0xffda25af,0xffded07c,0xffde17d3,0xffd859bc,0xffdd4f97,0xffe14c03,0xffe57c76,0xffe8f814,0xffebf2b8,0xfff20dc3,0xfff43ce0,0xfff764c3,0xfff005a2,0xfff327ff,0xffdb50ab,0x0007f8e0,0x0008b252,0x000acf18,0x000a5fde,0x000c135c,0x00119a56,0x000f7dea,0x000cc4fd,0x00035c98,0x000507e2,
-0x00073074,0x0012170a,0x000c8ad9,0x000c4a18,0x0009ccde,0x000fe64e,0x00106070,0x000e88be,0x000a5da7,0x000826e5,0x000673c8,0x00070f42,0x000702b8,0x0006ff07,0x0005286b,0x0003e005,0xfffc4cec,0xfffeda57,0xfffc362b,0xfff6ea9e,0xfffa5d15,0xfffcb4f6,0xfffa445a,0x0003e471,0x0005d357,
-0x00048e57,0x00077eac,0x0002602c,0x0008fe16,0x00080b65,0x0011dd3b,0x00228d3b,0x0024733f,0x001b54d1,0x00021e91,0x00048a7f,0x000a9f25,0x0024414c,0x0013c663,0x0013ac53,0x00124ec5,0x0029e72a,0x00301410,0x0029eba9,0x001ff926,0x0017b9a3,0x00125fbf,0x0010be31,0x000e50b0,0x0007faa9,
-0x00090cc7,0x00022b21,0xffebc4a2,0xfff712d4,0xfff6c8ef,0xffea3cc5,0xfff034a7,0xffecee65,0xffdea434,0xfff5a1d5,0xfffaed96,0xfff0862f,0xfffbf5d8,0x00072ea0,0x00196ae1,0x0014d016,0x002417d8,0x003b939a,0x003ddf62,0x002fc94f,0xfffcf6d4,0xfffbe74e,0x000530e8,0x00443fbd,0x00266150,
-0x00276699,0x001a7ed2,0x003cf84f,0x004188f7,0x003433b6,0x001e9d79,0x0011d6c2,0x000a39ac,0x00076533,0x00070ab4,0xfff7f73b,0xfffc6459,0xfffdc591,0xffc6933a,0xffd9ef10,0xffc4f749,0xffaa7f72,0xffb3fb33,0xffc4791b,0xffbc0882,0xfff30d49,0xfffd2d67,0xffefa899,0x00005016,0xffe80bfb,
-0x00033b5c,0xfffa0e1c,0x00210ecf,0x005bd52c,0x006c0162,0x004fb19f,0x00033d6e,0xfffc37b0,0x00149512,0x0069d34c,0x00318028,0x0029816f,0x002db73e,0x0078d802,0x00941794,0x00843e21,0x0060c55c,0x0046d472,0x0036f809,0x0031c603,0x002a6842,0x000caec8,0x00142ef4,0x000a0b1f,0xffc64566,
-0xffd0b0f6,0xffc5e032,0xffc03d81,0xff8d6e2d,0xff90af24,0xff8954cc,0xffbe06ca,0xffdb4b24,0xffc4e394,0xffdab714,0x00720db6,0x0074f320,0x00a797ae,0x00802205,0x0004dfa7,0x001281c5,0x00009470,0xffdb1762,0xffe98b80,0xfff2c7a2,0xfff377f7,0x004ee24f,0x005455a0,0xfff39e06,0xffb75d56,
-0xff7ede68,0xff4ad63e,0xff65294c,0xff688323,0xff64f968,0xff71429d,0xff7d8329,0xff84e587,0xffc56500,0xffec368e,0x00272ea1,0xfffe37c2,0x00006ad6,0x000f9e6f,0x0017f9ae,0x004d32a4,0x0085008c,0x00836b91,0x006da6ef,0x004663f8,0x0063444c,0x000d9d73,0xffd4e37c,0xffb960c1,0xff9e7523,
-0xff7dc8d3,0xff696e7f,0xffb1bcfb,0x0027204b,0x0059ed32,0x00391f54,0xffaea57c,0xff5c085d,0xff67fc67,0xffba739c,0x002f49d1,0x00748ff3,0x006bc5d3,0x00708e9d,0x006161d9,0x005cb5fb,0x002c0687,0x001a68e3,0x001e1732,0x001d8563,0x00015237,0xffd85ed3,0xfff08e6a,0x0001d06f,0xfff7bb21,
-0xfff8a2b5,0xffd46f31,0xff9a719e,0xff506db9,0xff91986b,0x00451ee7,0x002ec989,0xff59bb16,0xffadd396,0xff6c0fc9,0xffc6675e,0x00ecf694,0x0084ff62,0x003b527d,0x000b23ed,0xff521b5d,0xff6e206c,0x005c1071,0x005d2326,0x0034fc52,0xffc4eabd,0xffbdecb7,0xffaea2ca,0xffa8dc14,0xffc56765,
-0xffcdeb69,0xffc4488a,0xffe06955,0xffdef3c3,0xffcfb04a,0xffcfcfea,0xffe67bb7,0xffff5944,0x00078b98,0x0000d1a8,0x0001b1b3,0x00077856,0x000757f2,0xffd6ebc8,0xfffb041a,0xfff6626c,0xff99589c,0xff60631d,0xffddd45a,0x00296d38,0x006aefe8,0x006ace46,0x0050a40c,0x00963035,0x008cd7de,
-0x00356061,0x000d139c,0xffea6993,0xfff94e0d,0xffdc8c08,0xffe98ade,0xffedb899,0x0017f728,0x002ef8c1,0x0031c97d,0x003ba40f,0x003d6b13,0x003087ee,0x00308880,0x002fe027,0x0032f2cd,0x00174024,0x00009e20,0xfff2dd91,0xfffbc8d5,0x00011a6e,0xffff3ee6,0xfffb327c,0x00053f54,0x000b7224,
-0xfff3ef43,0xfff0fe71,0x001c3363,0xffebd88a,0x0026512f,0x0030d445,0x0043d3ff,0x00368125,0xfff29bc3,0xffcf70e7,0xffb9467a,0xffbbdcdd,0xffcc3480,0xffe43327,0x0007c823,0x0012bf45,0x001ca874,0x00224405,0x00125d60,0x00006643,0xffec5826,0xffe0b3c3,0xffd9abf3,0xffd36501,0xffd9781f,
-0xffed8903,0x00059455,0x0009337e,0x000952b8,0xfffc7e30,0xfff89fe3,0xfffc4778,0x00026076,0x0000814f,0xfffdc342,0xffeeb1f4,0x0000b1d0,0x00054f5d,0x000a09c6,0x000e6cf7,0xffb0ca6c,0xffa02615,0xffa9d7fe,0xffb64146,0xffca1b6b,0xffe2b72b,0xfff9364d,0x0013a383,0x0040c781,0x00631bb6,
-0x007aefbb,0x00799892,0x006f94b4,0x005902a8,0x00476647,0x002d0797,0x000b0eea,0xfff3deb2,0xffdf99de,0xffd10e63,0xffcd8e20,0xffd896a2,0xffecd24e,0x00060993,0x00123653,0x0016f358,0x0005e2a9,0xfff87d99,0xfff11416,0xfff349c3,0xfff6af42,0xfff1ca3c,0xffef9149,0xffe424be,0xffd7f711,
-0xffc4fb7e,0x00407f43,0x003b61c2,0x0034d26f,0x003634b8,0x0035e5c6,0x003921db,0x003e1d72,0x00433a60,0x003a4227,0x002fd36e,0x002839ee,0x00128841,0x000018b2,0xffeb6d26,0xffe9e626,0xffe6a7e4,0xffe3964b,0xffe8b982,0xffecba22,0xffeeb751,0xfff254f2,0xfff2e7a2,0xfff15c7b,0x00073ecb,
-0x001af0fa,0x00375de0,0x003afd17,0x0043ab6f,0x00495936,0x003e2a14,0x0033c13c,0x002a1078,0x00303586,0x0038bba3,0x003cb0a6,0x003a8c06,0x0021c8c4,0x002c5205,0x0027d56b,0x00228f13,0x001c765a,0x00155a17,0x000d7e34,0x00083d56,0xffff0c76,0xfff8aeb0,0xfff35fef,0xffeccc4c,0xffe77068,
-0xffe05532,0xffe15407,0xffe0989c,0xffdfd191,0xffdd1a5a,0xffda61bd,0xffd75cea,0xffd7b80d,0xffddf88f,0xffe14550,0xffe34a43,0xffe1c071,0xffe3c5bc,0xffea82db,0xfff1726e,0xfff8c00c,0x0003f233,0x00104dc9,0x0017da11,0x001a6b5d,0x0019b511,0x001d1be7,0x0022bbb1,0xfffc5eb0,0x0001b16c,
-0xfffc5fed,0xfffa0eda,0xfff7faa1,0xfff6689e,0xfff4cef2,0xfff308e1,0xffef92cb,0xffebc613,0xffe76238,0xffe46a27,0xffe185d0,0xffddce81,0xffdeb9a3,0xffdea27b,0xffdef021,0xffdf68d6,0xffe00803,0xffe0b6ff,0xffe0cee0,0xffe10f2e,0xffdf48f6,0xffe64287,0xffe646d9,0xffe12c1a,0xffe58d61,
-0xffe9411a,0xffecbf7a,0xfff005c0,0xfff2bd1b,0xfff87623,0xfffb5922,0xfffeb1fb,0xfff888c1,0xfffb7f2f,0xffe03fa8,0x00066710,0x000754a7,0x000a066a,0x0008c7be,0x000a2656,0x000ea712,0x000df2db,0x000b60a0,0x00019331,0x0003288a,0x00055bd0,0x00118a10,0x000aaae9,0x000a52fe,0x000809ef,
-0x000dd30a,0x000e6837,0x000ce694,0x00095143,0x000761ff,0x00062c2b,0x0005b182,0x00053d76,0x00050929,0x0002cfbf,0x00016a7f,0xfffa897c,0xfffd6711,0xfffad45c,0xfff470c1,0xfffa0fc2,0xfffc3ea2,0xfff6f5c6,0x000323c9,0x00056a93,0x00020306,0x00060210,0xfffffffc,0x00080df6,0x00053696,
-0x000dcb6f,0x001c0ebe,0x00215a2e,0x00191a8d,0xffff6d94,0x000164f3,0x00084469,0x0025511d,0x0010402e,0x000dff12,0x000d7875,0x00239ba8,0x002ad3e8,0x0026c67f,0x001f54db,0x001857a7,0x0013e51f,0x000f4347,0x000ae75d,0x00052e8b,0x0002d7d2,0xfffd3375,0xffeb70c0,0xfff86a5d,0xfff9c663,
-0xffea8d35,0xfff63f1d,0xfff2b8de,0xffddc1f2,0xfff86c6b,0xfffbfcba,0xffed159d,0xfff9e344,0x0006049b,0x001afab4,0x0011ff49,0x001f40b6,0x00318ac3,0x003a5711,0x002daabf,0xfff9e6d5,0xfff84745,0x0000eb87,0x00458810,0x00207cdd,0x00209147,0x0015a44c,0x00366eca,0x003bc539,0x0030ae5a,
-0x001f1b07,0x0013a665,0x000eaa38,0x00064fe5,0x0001f431,0xfff579ee,0xfff46780,0xfff618c8,0xffc4bdc5,0xffd92e72,0xffc7d708,0xffa257c3,0xffbb9ac3,0xffca9220,0xffb3aa5f,0xfff71eb0,0x0000d198,0xffea54f5,0xffff3da0,0xffe4ef3f,0x0001f6b2,0xfff45a69,0x0014d0a5,0x0046f642,0x00628d81,
-0x004a2e20,0xfffcdd63,0xfff534de,0x0011d1da,0x006fb9f4,0x002b0807,0x0017f376,0x001ddc42,0x0065bf25,0x0085f804,0x007c07c8,0x00624fcf,0x004c497f,0x003feda9,0x003016a6,0x0022b53d,0xffff0a23,0x00021f38,0xfffcaaee,0xffc1a344,0xffd7361b,0xffd210df,0xffca6fb4,0xffa4a4c1,0xffa60e58,
-0xff88143a,0xffcaa8d8,0xffe27756,0xffb67d36,0xffd6c9cb,0x007edbe5,0x00868a1c,0x00b448c1,0x008f6fb1,0x00223451,0x001b71ec,0x00063eb3,0xfff552ca,0xffea249e,0xffe397da,0xffe12a41,0x003417d2,0x004dd2f4,0x001c975a,0xffca03ef,0xff889a5a,0xff4fa07d,0xff5d09d5,0xff5f7400,0xff60c6a9,
-0xff697821,0xff7c2e15,0xff877bf4,0xffde6e5c,0x00006aa4,0x001b3582,0x00061ed5,0x0009e000,0x001539cc,0x001c2cee,0x00477a16,0x006c8871,0x0077fb21,0x00714339,0x00571a24,0x0070745e,0xffedc3be,0xffd0f131,0xffbed0f4,0xffa5ebf7,0xff8cc3d4,0xff656bff,0xffa7e658,0x0025f535,0x00565e99,
-0x00481408,0xffd2f8ba,0xff672d29,0xff5eee22,0xffaca90d,0x0010351c,0x005ad7bb,0x006a1655,0x0075cb3b,0x006512cd,0x0051d54f,0x00222f49,0x00113893,0x00195c08,0x00166475,0xfffe1d5b,0xffdf86a6,0xfff7d0f7,0xfffdaa22,0xfff4fc99,0xfff67dcc,0xffddd194,0xffadaf03,0xff70e592,0xffa99b9d,
-0x004609ed,0x00139d3a,0xff8f1ff5,0xffea37b6,0xff7a52d2,0xffce0a8f,0x00f89d6e,0x008adbc4,0x004bb162,0x002c8f6b,0xff679c35,0xff6a5c6d,0x003002c1,0x006882df,0x00562aad,0xffd767d3,0xffcd79de,0xffba3874,0xffb1083e,0xffc2b733,0xffc9f10e,0xffc2394c,0xffdd451c,0xffdeca77,0xffd1f9b2,
-0xffd7bac6,0xffee20fe,0x0005df82,0x00061978,0x00011cd5,0x000586ca,0x0005414b,0x00117517,0xffde34c3,0x000e12c0,0x0005897a,0xff78944d,0xff85dc5b,0xffb21d16,0x00808e32,0x007ef4de,0x0054d005,0x0012c4fc,0x007d6911,0x00987da3,0x0065e686,0x001dd598,0xffee0b7e,0xfff96c49,0xffdb16a1,
-0xffe5b587,0xfff00597,0x000f687f,0x001f41ca,0x00261e79,0x0038984f,0x0040b31d,0x00383692,0x00347040,0x00310a93,0x00303b4e,0x0011cec4,0xffffb8b5,0xfff7724b,0xfffde3cb,0xfffe3aed,0xfffd1044,0xfff90222,0x00009d8b,0xfffe5ca8,0xfff1b263,0xffe35d84,0xffd2f984,0xff930c6b,0x004085c6,
-0x003654d8,0x0040b37f,0x003ebf3f,0x00011b06,0xffda1d94,0xffb4c2ed,0xffadc3c2,0xffba9961,0xffcfdfb9,0xfff1d915,0xffffba57,0x000d26c1,0x00198950,0x000e2968,0x0003f1a3,0xfff8fa42,0xffede879,0xffe7db92,0xffe363b0,0xffed15ee,0x0000fcc0,0x001524c7,0x000f794e,0x000ab7bf,0xfffec499,
-0xfffdf34b,0x0002be7f,0x00061200,0x0004d839,0x0001b9a7,0xfff06de6,0xfffd345f,0x0009c84b,0x0023a87b,0x00352790,0xffb183f2,0xffaba7d9,0xffbea0a5,0xffbe4624,0xffc1573c,0xffcac33b,0xffdcd81d,0xfff668a6,0x0027cfeb,0x004b37f9,0x00618de5,0x00658cda,0x0060ab46,0x00505887,0x00401c65,
-0x0026546d,0x000469dc,0xffed3f41,0xffdd3b8f,0xffd2c1c6,0xffd01b69,0xffdd26cd,0xfff2dfca,0x00099818,0x00118849,0x000ee75a,0xfffc5079,0xfff1a41c,0xffefc5fe,0xfff20042,0xfff48103,0xffedd151,0xffeb0136,0xffde8aba,0xffd0fb2c,0xffc04285,0x0025e8b8,0x001c8160,0x00140358,0x00189f1f,
-0x001bc22e,0x0027c198,0x0031ade9,0x003a6014,0x0033cac0,0x002c8398,0x0028034a,0x00158050,0x000571e3,0xfff36538,0xfff0eee1,0xffeda3fc,0xffeab92d,0xffee9849,0xfff09e73,0xfff04452,0xfff7664a,0xfffa9a38,0xfffc3751,0x000e84fe,0x002198d7,0x003d48ee,0x003c534f,0x003dc310,0x003ec687,
-0x002f8aa7,0x0021da54,0x00136d2b,0x001a786f,0x00220ef8,0x00256237,0x00223fe3,0x00314c87,0x003972fc,0x00355702,0x002f47a3,0x002773c8,0x00202d97,0x00189dfa,0x00146a3d,0x000a45a3,0x0002b048,0xfffbe5b2,0xfff407f9,0xffed5060,0xffe498da,0xffe5d8ee,0xffe54fed,0xffe4bd78,0xffe24286,
-0xffe07bc8,0xffdd919a,0xffde7290,0xffe78c66,0xffed47b4,0xfff1c807,0xfff26c3a,0xfff807f9,0xfffd6b26,0x00045582,0x000b095b,0x0014d34f,0x001f7f54,0x0025ffc2,0x002780cf,0x00268958,0x002a536d,0x002f01cc,0x0002e011,0x00074975,0x0002aa4d,0x0000da28,0xffffa11f,0xfffdf755,0xfffc1b42,
-0xfffa4650,0xfff693eb,0xfff2d1dc,0xffee6d43,0xffeb4eb4,0xffe845e6,0xffe435ce,0xffe54c17,0xffe529ee,0xffe57e9c,0xffe60608,0xffe698fd,0xffe79600,0xffe725a0,0xffe7aa94,0xffe55d7c,0xffefcbf6,0xffefd4a4,0xffeb47ba,0xffee7bc2,0xfff184f6,0xfff42822,0xfff6f1b4,0xfff939ba,0xfffdef6d,
-0x00016c61,0x000546e0,0xffff5b2d,0x00024714,0xffe881de,0x0003b50c,0x0005449c,0x0007c71c,0x00063272,0x00073946,0x000aa294,0x000b257c,0x0008ab54,0xfffec32a,0x00002c4f,0x00025eb8,0x000f8754,0x00076560,0x00070fc5,0x000583cf,0x000a88ca,0x000b3851,0x000a7abe,0x00071622,0x000569fb,
-0x00044e6f,0x0003a860,0x00036eef,0x00046ac8,0xffffb62a,0xfffee207,0xfffa4985,0xfffcedaf,0xfffa747c,0xfff366cf,0xfffab3ba,0xfffca7ae,0xfff562b0,0x00022e07,0x0003e5c8,0x0000c5ea,0x00046b00,0xfffe14ea,0x00060ddf,0x0001ce71,0x0008d7e3,0x0014414a,0x001c6731,0x001548f3,0xfffbdf47,
-0xfffce6c7,0x00041ee0,0x0023a06d,0x000a5424,0x00063e6b,0x000792d4,0x001b34b8,0x0023616e,0x00227a5c,0x001c73e1,0x001660f7,0x0012922d,0x000ce111,0x00068ce6,0x0002fffd,0xfffc9411,0xfff83d47,0xffebd521,0xfff85116,0xfffaf429,0xffea7dea,0xfffa35d9,0xfff6ed7c,0xffde5194,0xfffa7677,
-0xfffc9917,0xffeb9350,0xfff7763e,0x00040410,0x001a5dff,0x000e3c4b,0x0019d538,0x0026b575,0x0034af43,0x00290d32,0xfff5cf0b,0xfff32309,0xfffae5ab,0x00436300,0x0017aa2f,0x0017719a,0x001046b1,0x002dbf7d,0x0033d6fe,0x002d1862,0x001db904,0x0012df43,0x0010435d,0x00040de9,0xfffc861c,
-0xfff5fd6e,0xffebf843,0xffed88ea,0xffc6d668,0xffd936c4,0xffcadfee,0xff9e5efc,0xffc40e1d,0xffd12d18,0xffafbbed,0xfff9bec7,0x000316b1,0xffe7941b,0xfffd466f,0xffe34075,0x000043c6,0xffefdecd,0x0008d28d,0x0030f36e,0x00567a55,0x004351a3,0xfff6e41f,0xffec828f,0x000b9c21,0x006ec8cb,
-0x001ecf84,0x000215b5,0x000bae75,0x004e7e2c,0x007350a1,0x00724a3e,0x005f3e5a,0x004ba950,0x004244f3,0x002a0e2d,0x00185a81,0xfff5b69b,0xfff08e3c,0xfff08f3a,0xffc50a6c,0xffe0e723,0xffe20bf4,0xffd9a436,0xffbe202b,0xffbdcb52,0xff91eb26,0xffd7375c,0xffe8fc87,0xffaf16a9,0xffd3eaa3,
-0x00806009,0x008e07e1,0x00b65dbd,0x00998e78,0x004270bb,0x001dcdbc,0x0001dd9a,0x0006ada7,0xffe899f6,0xffd7bc2c,0xffd2e6a9,0x00241e1d,0x00512f9d,0x0048be77,0xffe1aabd,0xff96ff55,0xff5d516b,0xff5bfac8,0xff5ddfac,0xff664106,0xff6cceb4,0xff82ad01,0xff919649,0xfff8e8d9,0x0010eddb,
-0x000ff822,0x000bc4a1,0x000b172e,0x0013c4b6,0x0018f5f1,0x003aa7f5,0x004d9e55,0x00666029,0x006fabe2,0x0063d01e,0x00737dd2,0xffd952d0,0xffd380de,0xffc46151,0xffaa2698,0xff9562fa,0xff61cdb4,0xff9d6c54,0x0022dbd6,0x004aeaca,0x004d04bf,0xfff48271,0xff73efe9,0xff5718a8,0xff9e05b6,
-0xfff0a89c,0x003ca36b,0x0061cfaa,0x00710163,0x005f1c7d,0x00421ff9,0x001665cb,0x00075c98,0x00142557,0x000e038a,0xfff9b006,0xffe8efc8,0xfffc2627,0xfff9c589,0xfff6c12f,0xfff43727,0xffeb6e00,0xffc523af,0xff930ec2,0xffbee97a,0x00406d59,0xfffd08d8,0xffbb5a55,0x0023a633,0xff966d79,
-0xffdea94a,0x00ef3899,0x008eb9d6,0x005af0be,0x0048b0ad,0xff7ed7c6,0xff6b49a8,0x0003cb69,0x006b91f6,0x006fea97,0xffefb803,0xffdbde20,0xffc386c2,0xffb9ec11,0xffc1e4f8,0xffca71af,0xffc9466a,0xffe1e933,0xffe3adcf,0xffd7cbc1,0xffe25bc0,0xfff72470,0x0008714f,0x0003b5c0,0x0002b156,
-0x0006d60c,0x0002dcd1,0x00136f2f,0xffeef7a3,0x00162a47,0x000dd1ad,0xff70b442,0xffa35d1a,0xff983c08,0x00c44d1f,0x006b5d1b,0x001e2dcf,0xffc8be35,0x0041bf4c,0x0085bfe0,0x00958c63,0x00308900,0xfff4bdfe,0xfff217f3,0xffd800f9,0xffdfd108,0xffedf092,0x0000e6df,0x000b865d,0x00188ddc,
-0x003117cc,0x003ed108,0x003cb67b,0x0036c9eb,0x0030ed12,0x002a8637,0x000ac546,0xfffe3e43,0xfffb7671,0xfffd9678,0xfffc74bd,0xfffc94f8,0xfff950e8,0xfffe3596,0xfff802b0,0xfff4d06b,0xffda92ab,0xff89cd3b,0xff47c5a1,0x005f4385,0x00404373,0x003c0c54,0x003f81f3,0x000d3bfc,0xffe68628,
-0xffb5423e,0xffa39636,0xffaba5ea,0xffbf0149,0xffde30dd,0xffec86d5,0xfffc6de2,0x00104510,0x000ad001,0x00080b1f,0x000441d7,0xfff9fe37,0xfff5c0fc,0xfff53fd3,0x000262ea,0x0013f248,0x0021832b,0x001427d3,0x000ae680,0x0000c241,0x0002941a,0x00059a94,0x00068891,0x0005cb81,0x0004f48a,
-0xfff5743b,0xfffa215a,0x000e176f,0x003b1e48,0x005f2b41,0xffb9cb54,0xffbd0889,0xffd4b5c6,0xffca3dae,0xffbfbb57,0xffbc558f,0xffcb1f5e,0xffe2dbca,0x0013efe5,0x003381db,0x0044666b,0x004c60ef,0x004b915a,0x0040d22b,0x0032ac97,0x001acc4f,0xfffab708,0xffe6b221,0xffdbd0e8,0xffd65e2e,
-0xffd4eb21,0xffe232c6,0xfff85343,0x000ae703,0x000e1fb4,0x00058c43,0xfff5769c,0xffef2d60,0xfff06968,0xfff2ecda,0xfff35247,0xffea8bda,0xffe712a9,0xffda3780,0xffccb8fc,0xffbf7167,0x000a700f,0xfffd1457,0xfff3a47f,0xfff9c2fb,0xfffdd4f3,0x00115116,0x001f7e6e,0x002bbb1b,0x00294cad,
-0x0027934c,0x00281573,0x001a4754,0x000dd9fb,0xffffd8ab,0xfffb919b,0xfff77536,0xfff3d4e7,0xfff560ea,0xfff47ed6,0xfff12fcc,0xfffbdbd0,0x00020112,0x0006b7b3,0x00143d2e,0x0025c125,0x003cb337,0x00388961,0x00334b52,0x00321166,0x0020fac6,0x0012f980,0x0002038b,0x00088381,0x000e0932,
-0x00105663,0x000ae11e,0x003a2e60,0x003e35d6,0x003ada37,0x00351a04,0x002d04f2,0x0026f154,0x00208eff,0x001dbc0f,0x0013ae28,0x000b4bf2,0x00038e50,0xfffb406b,0xfff41be2,0xffeb026b,0xffec4209,0xffebf76f,0xffeb98fc,0xffe99822,0xffe8db0b,0xffe61a7b,0xffe80cc4,0xfff2b069,0xfffa612b,
-0x0000e721,0x0003ac80,0x000c51ae,0x000fd6f4,0x0015a9f8,0x001af324,0x0021745c,0x0028ed2e,0x002dfb4a,0x002e300f,0x002d627d,0x00311005,0x00343ce2,0x00085df7,0x000b1ff6,0x000802c4,0x0006e4b9,0x00069d36,0x0004e5f6,0x00030b35,0x00017f90,0xfffdff31,0xfffacfb2,0xfff6f6fa,0xfff42016,
-0xfff14225,0xffed460d,0xffee6703,0xffee38da,0xffee7fd0,0xffeeef5f,0xffef56d3,0xfff04f60,0xffefe9de,0xfff0f59f,0xffeec368,0xfffa6366,0xfffade10,0xfff7cc2d,0xfff95191,0xfffb5c92,0xfffcc503,0xffff0c76,0x0000b1e3,0x0003ceec,0x0006ee49,0x000a4d7f,0x0006468e,0x000878ed,0xfff27720,
-0x0004841a,0x00042f2c,0x0009a3a9,0x000702f1,0x000811c2,0x000a5632,0x000c109a,0x0009bed4,0x00002622,0x00011676,0x00031921,0x0010a7c7,0x0007758f,0x00071333,0x000665a8,0x000a4b78,0x000b0a02,0x000b62a5,0x0007e2b9,0x00062ffe,0x0005d1e0,0x0002597f,0x0001004d,0x00015579,0xfffe1893,
-0xfffbc956,0xfff829f2,0xfff9f12c,0xfff7dc1a,0xfff15e29,0xfff8e6dc,0xfffa874c,0xfff26b95,0x00008d1c,0x00040d54,0xfffd4588,0x0001ed94,0xfffb623e,0x000800f2,0x000358c7,0x0008da49,0x00115203,0x001c5fa8,0x0016ce26,0xfffe74ec,0xfffdc87b,0x00048d2b,0x0024d70e,0x00085499,0x000287dd,
-0x00057bd0,0x00157ecf,0x001e3801,0x00214117,0x001b96ef,0x001643cf,0x001242c8,0x0008ef4a,0x0003e1ab,0x0002f5ed,0xfff83b37,0xfff4a585,0xffef1ed8,0xfff8f498,0xfffbe916,0xffeaf689,0xfffe9921,0xfffc62f7,0xffe1c4de,0xfffdd61c,0xfffdced4,0xffec753d,0xfff8894f,0x0003340e,0x001c06bd,
-0x0010695b,0x001a773c,0x00228e04,0x00355ce3,0x002b1cba,0xfffa59d2,0xfff523e4,0xfffafdeb,0x004420bb,0x00135b3a,0x0012be03,0x000f14aa,0x0027511c,0x002dcd2f,0x002d3716,0x001e0fab,0x0013bd67,0x0010e06d,0x0001c786,0xfff8553b,0xfff9584a,0xffe4b877,0xffe51a45,0xffcd82b6,0xffd935ae,
-0xffd041a7,0xffa12336,0xffce0c10,0xffd7cd2f,0xffb26607,0xfffbe4e9,0x00051186,0xffe72f1d,0xfffcfeaa,0xffe3e164,0x00022e27,0xfff3a7d6,0x00052237,0x00235866,0x00529670,0x00463e14,0xfffd2a96,0xffed3de8,0x000b8ab3,0x006e6365,0x0016c85a,0xfff1fb29,0xfffdbf14,0x0037f964,0x005fe34e,
-0x006a612e,0x005af23d,0x0048ae30,0x003f5a7b,0x0020f717,0x000de848,0xfff02b50,0xffe1f73e,0xffe804f9,0xffcedd4e,0xffec4040,0xfff055bc,0xffea6f55,0xffd6cb41,0xffd4b49f,0xffa51d92,0xffe351c2,0xffeee656,0xffaf301a,0xffd4cc4e,0x007b20d8,0x0091ada6,0x00b91f41,0x00a7c481,0x00699343,
-0x00266094,0x0002c56b,0x0019cba5,0xfff05f21,0xffd954ef,0xffd0f4bb,0x0025922f,0x006303ef,0x0078c7bd,0x000321d0,0xffaffa2d,0xff77f0c7,0xff65f85c,0xff66d097,0xff74d332,0xff7830b6,0xff8fce3e,0xffa3c49c,0x0010018c,0x001b3b18,0x0007b4a9,0x000cadb1,0x000796c7,0x000f583a,0x000f0de8,
-0x002a6ec1,0x002f9348,0x00518ad7,0x0067e2b1,0x006a58c8,0x00717c36,0xffce0b59,0xffde55d6,0xffd379ba,0xffb56257,0xffa4f25d,0xff695097,0xff9c9b83,0x00267b54,0x00434628,0x005338e4,0x001c1149,0xff8a8488,0xff599e3f,0xff978000,0xffdccc13,0x0026b814,0x005b610e,0x0068fbb9,0x005583d6,
-0x0030454b,0x00096738,0xfffe57d2,0x000fdb1f,0x0005b944,0xfff63b66,0xfff27203,0xfffd86c0,0xfff99b36,0xfff9d0b8,0xfff5d26e,0xfff47fd0,0xffdfab81,0xffb293f1,0xffd22ce2,0x00358de8,0xffee578e,0xffe22edc,0x005977a4,0xffc969cd,0x0001b42d,0x00e4e202,0x009f6d5c,0x007565a2,0x0068cd84,
-0xffa2fa35,0xff7ce6ee,0xffe5d959,0x0072048e,0x008d262c,0x001a0289,0xfff3dac6,0xffd31761,0xffc9fb5c,0xffc8a0a8,0xffd4b06e,0xffd9ee82,0xffed665b,0xffedf783,0xffe04043,0xffee9389,0xffff1744,0x000706d9,0x000239a8,0x00033421,0x00053fa0,0x0002a5ad,0x000c1e5b,0xfffeec59,0x0014a9af,
-0x000f00a8,0xff7efd55,0xffbf03f8,0xff8dbcd0,0x00e09558,0x00445916,0xffe43091,0xff8e9c3d,0xfffdabcd,0x0065ee53,0x00c1d7b0,0x004fff24,0x000d4faa,0xfff12611,0xffdfe3c2,0xffe2c3b6,0xffefdd35,0xfff6cf84,0xfffe84ff,0x0010fee7,0x002b8c03,0x003d9b76,0x00407c35,0x00367e77,0x00302b07,
-0x00219cb8,0x0003d3bb,0xfffcce16,0xfffd39f2,0xfffd416b,0xfffc375a,0xfffcbd31,0xfffab9c5,0xfffe4792,0xfff7f7f9,0xfff89615,0xffd780c7,0xff4ee2c0,0xff17bb04,0x0084a261,0x005d2354,0x004604c1,0x0043a6b0,0x001fdab2,0xfffa856d,0xffc26e7d,0xffa6a5f3,0xffa95861,0xffbc2d9c,0xffd98071,
-0xffe6145b,0xfff70832,0x0011447e,0x000fb4ce,0x0011807d,0x0011816b,0x0008b3b5,0x0007bf07,0x000acbeb,0x00173861,0x0026dfd0,0x002986e4,0x00168686,0x000a8bbf,0x0002007b,0x0004ba84,0x00061f9f,0x00060152,0x0004b84d,0x0006279e,0xfffb4d97,0xfff9f056,0x00141002,0x004cfa73,0x008e3cee,
-0xffc4e0f0,0xffd6ce54,0xfff050b0,0xffde6662,0xffcc162c,0xffbf41b5,0xffcb3afa,0xffdfd6be,0x000c12f5,0x0023eb4d,0x002d4f47,0x0036670b,0x0037f1db,0x00320114,0x00267923,0x0011d6e2,0xfff524e2,0xffe5a44f,0xffe041ae,0xffdcd9ab,0xffdae82e,0xffe94e14,0xfffdd27c,0x000b3ce7,0x0009f905,
-0xfffe1528,0xfff2dbf8,0xffefba5d,0xfff2d78b,0xfff55ffe,0xfff4bb1d,0xffeb0b3a,0xffe601b4,0xffd99cea,0xffcd4786,0xffc65171,0xfff47aac,0xffe659bd,0xffdf6d23,0xffe525e4,0xffe949c5,0x0000fbe6,0x00117daf,0x001f945e,0x0022937a,0x0027c4fb,0x002e5d35,0x0025b1df,0x001d4ff4,0x00138c82,
-0x000cb11c,0x0006b15c,0x00017f03,0xfffff0aa,0xfffd01c6,0xfff593bf,0x00007715,0x0008fdd3,0x001026fb,0x0018b578,0x0025bfaf,0x0035c147,0x002efc24,0x0027e28e,0x002431c9,0x00153067,0x00075631,0xfff6feef,0xfffbdf87,0xffff1f62,0xffffdf6d,0xfff94f48,0x003971e8,0x003e785d,0x003c7c92,
-0x0037ee15,0x00314213,0x002d703f,0x00294755,0x00284a0a,0x001f61a6,0x0016b8aa,0x000ea828,0x00068c96,0xffffa92c,0xfff6fbf0,0xfff8197c,0xfff81f92,0xfff80679,0xfff689a2,0xfff6e462,0xfff40c71,0xfff26afe,0x0000dddc,0x0009625a,0x0010e16d,0x00154321,0x00218c66,0x00230acb,0x0026297a,
-0x0027fcd1,0x002bab93,0x0030045c,0x0031af19,0x0031304a,0x002f552f,0x003282f3,0x0035bcca,0x000e5e58,0x00133779,0x0010c6c2,0x0010bb1e,0x001157d1,0x000fce4c,0x000e40b5,0x000d541d,0x000a3578,0x0007e36a,0x0004eec1,0x0002b85a,0x00004d33,0xfffcc016,0xfffdcff1,0xfffd9075,0xfffdbb27,
-0xfffdf6f8,0xfffdea3a,0xffffe62b,0xfffb8aaa,0xfffaff6a,0xfff6820c,0x00075389,0x00053db3,0x000133d9,0x0000c73b,0x0001f4bb,0x0002ad14,0x0003c0c1,0x000480be,0x0005f8ee,0x000af7b7,0x0010b23b,0x00092e47,0x000cc7c8,0x0002c9cb,0x00036580,0x0006187f,0x0007cf7d,0x000634fa,0x0007086c,
-0x00086735,0x000aeeca,0x0008b5fd,0xffffa133,0x00001148,0x0001e002,0x000f5d2f,0x0005af7a,0x00054043,0x00053391,0x0007e3fc,0x0008aa2d,0x000a3b21,0x00069088,0x00051d29,0x0003c445,0x0003fb19,0x0003cfd7,0x000583d2,0xfffe5282,0xfffdfd46,0xfffd6a01,0xfffe2494,0xfffd0414,0xfff74e18,
-0xfffe72b9,0xffffb6ef,0xfff7b6ee,0x0003ff9f,0x0004e257,0x00011090,0x00051afd,0xffffe2c8,0x00080b7f,0x0002eb80,0x000749b2,0x000cccbe,0x0019d098,0x0015a2fb,0xfffeda52,0xfffc767b,0x0002afee,0x0022bf26,0x00053e7d,0xfffe0ade,0x0001461f,0x000cf660,0x0015e11f,0x001d102d,0x0017b1fb,
-0x0012c7df,0x000f1c42,0x0009a6ae,0x0002362c,0x0004f14c,0xfff5ee84,0xfff2e0da,0xfff39d9a,0xfff7ff50,0xfff9adb0,0xffebbb51,0x0001186b,0xffff70bc,0xffe6664e,0x0000c503,0x0000c318,0xfff0b129,0xfff9b7ac,0x0005ed04,0x001c0598,0x000f96d5,0x0019d89a,0x001d7239,0x00331d29,0x0029de4f,
-0xfffccde0,0xfff4d9c5,0xfff9127b,0x00403ddc,0x000e2d14,0x000d399c,0x000b459d,0x001d3f6a,0x0023e5c9,0x002a570f,0x001b3345,0x0010c09a,0x000e9199,0x0001ad9e,0xfff6e91c,0xfffea29f,0xffdebc19,0xffdfd5eb,0xffd7b230,0xffdaefcb,0xffd79d1f,0xffb03b45,0xffd7f4e3,0xffe071cd,0xffbc8a5d,
-0xfffed951,0x00072e9b,0xffea1911,0xfffe3705,0xffea5e71,0x000416c3,0xfff58dbe,0x00013c34,0x00157af3,0x004b702a,0x00457ea3,0x00018b10,0xffec322d,0x00087841,0x0067915c,0x000fd2e2,0xffe56507,0xffee9c43,0x001cd678,0x00465952,0x005d8dce,0x0050b94a,0x003f55a9,0x00364817,0x0018fa6f,
-0x00042c04,0xffef8374,0xffd85cc9,0xffe42020,0xffdc31a7,0xfff6d353,0xfff7b93e,0xfff4d4b4,0xffec7fbf,0xffe6d547,0xffbd28bd,0xffee17c0,0xfff5dcb7,0xffb6393e,0xffd822df,0x0075a8de,0x008a513a,0x00b32519,0x00b087cd,0x008916c8,0x002a327a,0xfffe922e,0x0021a5aa,0xfff3507c,0xffd9d5bc,
-0xffd0071b,0x00257d83,0x0070143f,0x009e19aa,0x0024174c,0xffcc0dae,0xff95c196,0xff75f3e8,0xff740039,0xff872f15,0xff8a4967,0xffa07e7d,0xffbd2c7c,0x001ff07f,0x001ed5ed,0x000273df,0x000a86c3,0x00031bc0,0x000aa195,0x00057918,0x0018fc21,0x001a04b0,0x0039bd3d,0x005b0ab7,0x0068e01f,
-0x006d14fa,0xffd25eab,0xffef50b1,0xffdea8a1,0xffbd6c6f,0xffadf34a,0xff6cdeee,0xff96817b,0x00219569,0x003623e0,0x0053705a,0x00401723,0xffa4c4c7,0xff60dbd0,0xff8f27f3,0xffcc652d,0x001357f8,0x004ff55c,0x005aceeb,0x0044fa12,0x001d35e4,0xffff3afc,0xfff85b46,0x000de3b9,0xfffdc404,
-0xfff4cd8e,0xfffa15ac,0xfffd48af,0xfffc10af,0xfffc028b,0xfffab6b6,0xfff78b1b,0xfff46b0f,0xffd02d15,0xffe176a5,0x00293399,0xffe7c2f6,0x001007bc,0x00858c08,0xfff42d14,0x00175a83,0x00be59cd,0x00a2aa50,0x0085dab4,0x007dcdc0,0xffc8f178,0xff94681c,0xffc96fe8,0x00694964,0x00980726,
-0x003e9bbb,0x0003c33f,0xffdb6a3c,0xffd63992,0xffcf2f4e,0xffde544e,0xffef432d,0xfffdee82,0xfffb543b,0xffec1607,0xfffa5770,0x000418c3,0x00041932,0x0001b411,0x0002bf37,0x0002c5ac,0x0002c5a8,0x00052f32,0x0003de9c,0x00110614,0x000a4e47,0xffa106bf,0xffdd2ed7,0xff94b0f4,0x00bb74c9,
-0xfff34cb0,0xff9a5e0d,0xff56f7ca,0xffae01f2,0x002f1014,0x00d0c659,0x006af94b,0x002898c7,0xffea46b0,0xffe27576,0xffde1686,0xffe77df8,0xffe6d920,0xfff00f15,0x0006c33f,0x00226e21,0x00368d90,0x0040e567,0x003850ad,0x002eaae2,0x00176c86,0xfffe80e8,0xfffbe928,0xfffdb70c,0xfffd7369,
-0xfffcfbad,0xfffd9040,0xfffccf51,0xfffe2e86,0xfffab156,0xfffbd4a8,0xffd6f3df,0xff32c008,0xff0b15d9,0x00b04172,0x007cf6ba,0x0045e0d9,0x00371dd2,0x00236eda,0x000515b7,0xffcf63b4,0xffad00f2,0xffaa4038,0xffbaddc9,0xffd341e4,0xffde176b,0xffefd14c,0x000ef158,0x00126ca9,0x001821b7,
-0x001a180f,0x0015920e,0x00180078,0x00204b52,0x002df8f6,0x0038094a,0x002ebc8d,0x0017a1f3,0x0009507d,0x00027e97,0x0004931d,0x000534ce,0x0004996f,0x000313f2,0x00049af0,0x0001076b,0xfffc9020,0x001c6065,0x00597659,0x00b6e1ca,0xffdbc752,0xffee5f9d,0x00022745,0xfff0a894,0xffdc316f,
-0xffcbb029,0xffd4c92b,0xffe3a5ad,0x000906d7,0x0018d0db,0x001acb27,0x0020ca98,0x00213ad1,0x001d911d,0x001546f2,0x00061856,0xffefa730,0xffe6dcf0,0xffe5638d,0xffe5b652,0xffe63b16,0xfff2c826,0x00067b48,0x000c4d6b,0x0006f54e,0xfffa5ade,0xfff409c2,0xfff340fc,0xfff6434f,0xfff8ebbf,
-0xfff88217,0xffeef468,0xffe9a20f,0xffdf9a9e,0xffd5922a,0xffd41341,0xffe7f512,0xffd9493c,0xffd41c87,0xffd9f889,0xffdd0e44,0xfff4a588,0x00045400,0x0011a4b0,0x0019c506,0x0024ef42,0x0030fbc1,0x002eb422,0x002be213,0x0027e970,0x001eb839,0x0016eb81,0x000fb263,0x000ba69e,0x0005ff8b,
-0xfffd137c,0x000962de,0x001232b9,0x001a79e2,0x001d8fb6,0x0025523b,0x002c08ea,0x0025416a,0x001c3fea,0x0019fa7d,0x000c55aa,0x0001ca59,0xfff316ed,0xfff5ad59,0xfff6521b,0xfff63f2e,0xffee45a5,0x003a080c,0x003861fc,0x00370301,0x00348f2d,0x002fe1c6,0x002eb16d,0x002d10c0,0x002dc442,
-0x0027a467,0x0020544f,0x001964a7,0x0012e352,0x000d82d1,0x00073d49,0x0007ca65,0x00081b5f,0x00080cff,0x000732de,0x0007db3b,0x00058318,0x00047a29,0x0011bea1,0x001ab7b3,0x00223f8c,0x00284f38,0x0035564f,0x0034588e,0x0035061a,0x0034a9dc,0x0033d519,0x0033ff14,0x003355dd,0x0032326f,
-0x0030ab11,0x003352c3,0x003390c5,0x0018b4d1,0x0018f18e,0x0018fd73,0x0019978b,0x001acfbf,0x00199e5b,0x00187ec3,0x00181f98,0x0015e67a,0x0014c650,0x00132dad,0x00120725,0x00107826,0x000def9c,0x000ea4a6,0x000e5032,0x000e4770,0x000e3d3b,0x000dde13,0x000f4456,0x000d87f4,0x000d5408,
-0x0008082c,0x0017b237,0x001646d1,0x0012cb5b,0x0010fd6a,0x00113178,0x00109e24,0x00115341,0x00114fe0,0x00112c9b,0x001655fc,0x0019f592,0x00142237,0x00180d1e,0x00137e72,0xfffcd0bb,0xffffb4d3,0x0001c910,0x00005315,0x0000ca8e,0x00010c15,0x00044209,0x00022ba4,0xfff9c476,0xfff9bd20,
-0xfffb5bbc,0x00083d40,0xfffedf0e,0xfffe6ac1,0xfffeb5a3,0x00002775,0x0000f516,0x0003db50,0x00003174,0xffff1d07,0xfffd5b99,0xfffdc7e3,0xfffe857b,0x00040005,0xfff77c2f,0xfff81fe5,0xfffd1d06,0xfffc41a4,0xfffc0538,0xfff8132e,0xfffda4bd,0xfffe2715,0xfff6cddb,0xfffeea0d,0xfffe3426,
-0xfffe89c0,0xffff6655,0xfffc0e94,0x0001da25,0xfffd435d,0xffff8a6e,0x00019a85,0x000fe7d3,0x000d0bf4,0xfff871d8,0xfff4cbb6,0xfffa77df,0x001905fa,0xfffd2147,0xfff512c6,0xfff75345,0xfffe3ac4,0x00070801,0x0012a801,0x000ddd58,0x000a43b0,0x0005ec9b,0x0003ce86,0xfffc129e,0x00015e52,
-0xffef3278,0xffeca2a4,0xfff3afe9,0xfff07a8e,0xfff063a7,0xffe6cd6c,0xfffc09ba,0xfffc8ccd,0xffe6cfbb,0xfffd62e9,0xfffd2354,0xffee5535,0xfff5a218,0x000124cb,0x00159a45,0x000a1484,0x00126cd5,0x00109462,0x0027bab0,0x001fa1b0,0xfff74303,0xffed145e,0xfff04f39,0x0032ae75,0x00040b89,
-0x0002b9f8,0x0000e046,0x000ba075,0x001240b3,0x0020d15a,0x001209e7,0x000937d2,0x0005e078,0xfffc8d18,0xfff2d953,0xffffdb9d,0xffd73002,0xffd98dc0,0xffe000f3,0xffdb2d4a,0xffdbf8b7,0xffc10162,0xffe028e5,0xffe50c53,0xffc71b62,0xfffd0139,0x00039cf4,0xffe7dcc2,0xfff932eb,0xffeb25b0,
-0x00006989,0xfff3ad95,0xfff75194,0xffffa7cb,0x0038c5bf,0x0038a96d,0xfffc59bb,0xffe3de9f,0xfffd9454,0x005538a5,0x00059833,0xffd8b4db,0xffdb41d7,0xfffa1192,0x0023b160,0x00492675,0x003f7fb7,0x0030c11e,0x0026aa9a,0x000e7246,0xfffb0e6c,0xfff09c0e,0xffd3bd39,0xffe46815,0xffeba413,
-0xfffca2b0,0xfffd6d23,0xfffdbf41,0xfff8f5cb,0xfff51991,0xffd4b7c7,0xfff4ea60,0xfff88c5e,0xffbe55e7,0xffd91002,0x0063a084,0x00757eec,0x00a3b20f,0x00ab689d,0x0094a1d5,0x0023246c,0xfff0f8e2,0x0018e8e9,0xffe77cb0,0xffce36f5,0xffc8c2c4,0x00189651,0x006bee73,0x00ab5cc5,0x003a6515,
-0xffe23938,0xffab9d8c,0xff82233e,0xff7eba50,0xff957539,0xff998029,0xffb21f01,0xffd6c078,0x0025c758,0x001b5a02,0xffffda00,0x000712e4,0x00008c60,0x0004c95d,0x00024dd1,0x000a167a,0x000b7844,0x00221516,0x00457099,0x005959eb,0x005d9e4a,0xffd22a49,0xfff79a2b,0xffe0d252,0xffb85824,
-0xffa7b72d,0xff635aaa,0xff812d39,0x0006da41,0x00142a1b,0x003c71ed,0x004c25d2,0xffad3fb6,0xff5aa01f,0xff771ac4,0xffb40109,0xfffb3c8e,0x003b9b86,0x0043fe68,0x002d92a6,0x0005abbd,0xfff19c4e,0xfff1b097,0x00097550,0xfff73a7b,0xfff5e133,0xfffd7e4d,0xfffdc952,0xfffe50dd,0xfffdf970,
-0xfffe0117,0xfffb42d7,0xfffcd588,0xffe8a9bd,0xffec4a7b,0x0016fb79,0xffe06d9d,0x002e08c2,0x009549e2,0x0013ff69,0x001fa245,0x008e83ba,0x009dc419,0x008c4fd1,0x007bf7f9,0xffdff47c,0xff9c3460,0xff9e485e,0x0048e74e,0x008cf18d,0x005a71b4,0x000c5b9c,0xffdc81dd,0xffd9fc4d,0xffd1cb0e,
-0xffe61040,0xffffc1aa,0x0008bb16,0x00047f60,0xfff415ab,0x00025b76,0x00046e0f,0x0002324c,0x00014bb1,0x0001954e,0x0001564e,0x00017742,0x000287d2,0x0001cf3a,0x000ae147,0x0003c195,0xffbb3430,0xfff417c2,0xff902c7d,0x00594fe9,0xffa26e48,0xff621880,0xff3c8842,0xff6927d2,0xffeabcbc,
-0x00b253c2,0x0073d982,0x003aea98,0xffd9d34e,0xffd964b7,0xffcc467a,0xffd154bb,0xffce026b,0xffdc626c,0xfff765b6,0x0013815f,0x00295ae8,0x00376c2f,0x00322998,0x00257993,0x0008b790,0xfffa7291,0xfffb8be5,0xfffeabae,0xfffe21df,0xfffe0136,0xfffe75a5,0xfffe5f5d,0xfffe751e,0xfffd85b0,
-0xfffd2e14,0xffd751b5,0xff305f4d,0xff1a7bc0,0x00ca24e3,0x0096e31b,0x003f6b58,0x00197769,0x0016b8d4,0xfffbf824,0xffce2ab2,0xffa888d0,0xff9fba08,0xffad60c5,0xffc31521,0xffcda8c4,0xffe10ad6,0x00039594,0x000da2ae,0x00168674,0x001a5b48,0x001975bc,0x00201a2b,0x002baf15,0x003afe8e,
-0x003ea663,0x002b1241,0x00141908,0x00055708,0x0001df41,0x0003b6cb,0x00037d25,0x0002eee9,0x0001eb88,0x0002ee5e,0x0002f4a3,0xfffe7ba8,0x00212212,0x00561f78,0x00ca6fa0,0xffe42ec1,0xfff982ae,0x0006c8ac,0xfff6fbfa,0xffe41163,0xffd10f5f,0xffd54c95,0xffdb7564,0xfff75c2e,0xffff5c2b,
-0xfffc1cd8,0x0000683d,0x0000bcce,0xfffeb266,0xfffc57f2,0xfff494bf,0xffe5f520,0xffe1fef0,0xffe30608,0xffe6a684,0xffeafc31,0xfff68a58,0x00088415,0x000859b8,0x0002d289,0xfff906d2,0xfff73277,0xfff8826d,0xfff9d850,0xfffc6b6e,0xfffb94b5,0xfff38510,0xffec9caa,0xffe3fc3d,0xffdbf004,
-0xffdd01c3,0xffd8500d,0xffc8a757,0xffc670b2,0xffcbee65,0xffcebf95,0xffe20bcc,0xffee5806,0xfff863af,0x0004b507,0x0014461f,0x00246759,0x0028f1f4,0x002c5ff9,0x002f1922,0x0024c066,0x001be3bb,0x0013a491,0x000e3224,0x000728fe,0xfffdce25,0x000a5914,0x001322d3,0x001bd4b4,0x001a31bc,
-0x001df4a8,0x001bd41f,0x0017cbe8,0x000c867f,0x000d7602,0x00010be0,0xfffa86bf,0xffed6d4e,0xffec40e1,0xffe9707c,0xffe76f9b,0xffde036a,0x002dda4e,0x0021b63c,0x002255b7,0x0021a8f4,0x001f5aa0,0x002072b8,0x00215a92,0x0023593c,0x00210418,0x001c3526,0x00177d03,0x00137a67,0x00106567,
-0x000d9dfb,0x000dcf8f,0x000ed3b5,0x000f2884,0x000ef484,0x0010057c,0x000dfab4,0x00119377,0x0019f4ab,0x00216e93,0x00293636,0x0030786d,0x003a896b,0x00375dc0,0x00351ca8,0x0033b337,0x002e9d9b,0x002b861e,0x002a5bc1,0x0027e5b8,0x002711e0,0x00281895,0x00239ea9,0x0017244f,0x001376a9,
-0x001638dd,0x0016f619,0x0018a27f,0x0017f3d4,0x00175d36,0x001772ea,0x00167481,0x0016a65b,0x0016a26f,0x0016cbaa,0x00166254,0x00153731,0x00157b8d,0x00150b27,0x0014d352,0x00148973,0x001441ff,0x0014713b,0x0014a6b5,0x00160859,0x00166e16,0x001b636b,0x001c426c,0x001f4880,0x001c9cd3,
-0x001c1837,0x001a4107,0x001a9774,0x0019d980,0x001839bf,0x0017cc19,0x0016fecb,0x001ab8ec,0x001910e3,0x00183673,0xfffb7c0c,0xfffe1da1,0x0001836b,0xffffa385,0x00003c9d,0xffff748c,0x00038abe,0x0001bc89,0xfffa6a87,0xfff93e9a,0xfffa4778,0x000586fa,0xfffd6388,0xfffcdbe8,0xfffd0149,
-0xfffd0f90,0xfffdc934,0x0001fe20,0xfffe6657,0xfffd549b,0xfffbb7a2,0xfffb7d24,0xfffb464b,0xfffebebf,0xfff5cc9a,0xfff508d4,0xfff9be25,0xfff72d42,0xfff7b142,0xfff63f50,0xfffa3b3c,0xfffa1aaf,0xfff407d3,0xfffc7f1c,0xfffd001b,0xfff926e1,0xfffc4a2e,0xfff9e062,0x000289e7,0xfffe7abd,
-0xffffafeb,0xfffeb7be,0x000ecebc,0x000d63ee,0xfffbbe13,0xfff52182,0xfff8e603,0x001386d7,0xfffbdb51,0xfff32670,0xfff2e69a,0xfff45cc4,0xfffc7ac5,0x000c679c,0x00083a11,0x0005af6e,0x0000dc2d,0xfffe4459,0xfff90d62,0x0000f106,0xffeb2ff9,0xffe87efb,0xfff6aa4d,0xffeb4455,0xffea58f8,
-0xffe5e7e5,0xfff9dcb2,0xfffcec67,0xffeb0580,0xfffca4fc,0xfffb5f5f,0xffef1531,0xfff6f6bc,0x0001cf41,0x0015844e,0x000c67c2,0x0013d2d1,0x000da4e1,0x00285033,0x00220ce8,0x000007de,0xffefeffe,0xffef8aac,0x00280296,0x0001c5c5,0xffffebb6,0xfffc2527,0xfffe0f55,0x0003ece1,0x001aca64,
-0x000bf1aa,0x0004a4fa,0xfffe7f2f,0xfff8da73,0xffefcb0e,0x0000dd78,0xffd335f8,0xffd697bf,0xffe9ad10,0xffdce39a,0xffe1a34d,0xffd2ed22,0xffe9d7c8,0xffeaa891,0xffd5ef2a,0xfffc9296,0x0000f016,0xffe89649,0xfff90799,0xfff04f0e,0x000331d8,0xfff9d1b6,0xfff85c48,0xfff76ac6,0x0035a5dd,
-0x003bd745,0x0009ccaa,0xffe8ae9c,0xfff9d3ab,0x004316d4,0x0003dbb9,0xffd6bd38,0xffcf0717,0xffdad60c,0x00023816,0x00361b33,0x002f5316,0x0022f4a2,0x0016b418,0x0003d583,0xfff39442,0xfff1fdcd,0xffd46bbf,0xffe96c18,0xfff8a200,0xffff1c4f,0x00033d15,0x00076759,0xfffec62c,0xfffeb2c0,
-0xffe9be84,0xfff9f2ed,0xfffb5f6a,0xffca975a,0xffdf04b2,0x005c1790,0x006c1f65,0x00a1f6ba,0x00b3f6f0,0x00ac4586,0x003170ff,0xfffb4929,0x0023d05b,0xffefaac4,0xffd558af,0xffcde3ba,0x0015c86b,0x006e8bbb,0x00b9d799,0x005ab0af,0x00053c23,0xffca78e0,0xff97131d,0xff8f8005,0xffa52d36,
-0xffa73393,0xffc54676,0xffeed893,0x0023b16b,0x0012eaf0,0xffff4155,0x0003d2d0,0xfffe1f5a,0xffff06e2,0xffffcfab,0x00044aa6,0x0003346a,0x0010ce7a,0x0030d90e,0x0048b3ec,0x0050ef7a,0xffdb7c3b,0x000f0f18,0xfffd7d0f,0xffd28b10,0xffbaf2ac,0xff719002,0xff821bec,0x000026c6,0x000ab51d,
-0x003afa23,0x00643b47,0xffc92758,0xff6c45ea,0xff750314,0xffb08f80,0xfff5f322,0x00334f47,0x0036ab3c,0x001ed73f,0xfff5b03e,0xffe948f5,0xffefd380,0x00063d74,0xfff45883,0xfff8e1ef,0xfffecec2,0xfffecb95,0x00001f7e,0x00008691,0xffffbb02,0xfffdd6e0,0xffff04d8,0xfff6fcc2,0xfff72871,
-0x000b142f,0xffe5b86f,0x00532d9e,0x00aff4ca,0x003fc01a,0x002f05ed,0x005d89f1,0x009d0113,0x009aa5e6,0x008225d1,0x000824e6,0xffba093b,0xff908372,0x003aafcc,0x008f1b3d,0x008587ff,0x00277b93,0xffef58f8,0xffeb790c,0xffe0f487,0xfff563be,0x001197ce,0x00146eb8,0x000bf873,0xfffb39f9,
-0x000611f3,0x0003a474,0x000114e7,0x0000c408,0x00004ce1,0xffffe442,0x000030c1,0x0001567b,0x000015a8,0x000644b6,0x00026730,0xffd076fd,0x000c09b4,0xff9904fe,0xffe17eee,0xff6458a2,0xff4a17c8,0xff301fce,0xff3c9400,0xffb2bf77,0x0087eaae,0x0084e830,0x005f6895,0xffe1a2c0,0xffe622bd,
-0xffcf4851,0xffcdb547,0xffc9c703,0xffdac2e0,0xfff3476f,0x000c75fd,0x002045c2,0x002ec904,0x0029fa7e,0x001a0a11,0xfffd011c,0xfff99a73,0xfffd692a,0xffff2f21,0xfffec060,0xffff643d,0xffffc706,0xffffc534,0xffff2a4b,0xfffece1f,0xffff7bea,0xffde4063,0xff4a3aa1,0xff4a4c10,0x00e0bee2,
-0x00b29328,0x003709a6,0xfffa32ef,0x0002c4c5,0xffef4f75,0xffd153e6,0xffb4bcc8,0xffa74696,0xffb31e66,0xffc75855,0xffd186b7,0xffe575ee,0x0008d30a,0x001471aa,0x001d9265,0x0022c4b0,0x002558c5,0x002e6282,0x003860ef,0x0042bdab,0x003fa12f,0x00234109,0x000ddd66,0x00014dfa,0x0001de0a,
-0x00021d22,0x0001659d,0x000095f0,0x000057d7,0x00009b94,0x000291b9,0xffffbb99,0x0024396a,0x004eb0bc,0x00cf2885,0xfff21eab,0x00095bf6,0x00102085,0x00040e6c,0xfff20779,0xffe025fa,0xffdf985e,0xffdeaa0a,0xfff3d05a,0xfff763a4,0xfff1b8d1,0xfff452db,0xfff256e3,0xffedf88e,0xffef8b4b,
-0xffedd5c8,0xffe6f9c9,0xffe5f0e2,0xffe9ab3d,0xffebc600,0xffefe9ef,0xfffd6abe,0x0009dd3a,0x00061059,0x000047d6,0xfffa54fb,0xfffbb078,0xfffd202e,0xfffecc1d,0xffffefc7,0xffffcc23,0xfffb12d3,0xfff33b97,0xffee10ad,0xffe733cb,0xffed8419,0xffcda41b,0xffc2dbbf,0xffc540fd,0xffc97a7a,
-0xffccf068,0xffdcc51d,0xffe6afe4,0xffee0e0a,0xfffc3c02,0x000d43fc,0x001ece0e,0x00284cc0,0x0030c644,0x0038c31c,0x002dd19e,0x002396ac,0x001a0cfd,0x00140a67,0x000e29e7,0x00047512,0x000bc8fd,0x0012ccc1,0x00197c03,0x0013f953,0x00129c91,0x000cd57c,0x0009067b,0x0000cfa2,0x00016e17,
-0xfff82516,0xfff239f5,0xffe7ca1c,0xffe386e2,0xffddaa9b,0xffd90a11,0xffd1e902,0x00181eef,0x000db302,0x00101533,0x001183e6,0x0011da4b,0x0014b86d,0x0017e15c,0x001b71b1,0x001c82c1,0x001aa1d5,0x00187fe8,0x0016bd9e,0x00158938,0x0015a337,0x00156704,0x0017195b,0x0017e1df,0x00185520,
-0x0019a2ff,0x0018493e,0x0017a705,0x0020f305,0x00270fd6,0x002d3859,0x00332255,0x003ac4c1,0x0035ecc4,0x003173a3,0x002d8daa,0x00277097,0x00231230,0x00200b12,0x001ce745,0x001ac0db,0x001a5a53,0x0015154f,0x0015a745,0x0013d6a6,0x0016d4bd,0x00182b6b,0x001a1dd2,0x001a2e22,0x001a345d,
-0x001aafd7,0x001aa11c,0x001bb27f,0x001ccce8,0x001e0ce9,0x001eac6b,0x001eb637,0x001ed514,0x001e780f,0x001e37fc,0x001dd449,0x001d4bb7,0x001e49ee,0x001b82f3,0x001ab0cc,0x00185090,0x00202cfa,0x001ec0d8,0x00205398,0x001d6a2e,0x001c8912,0x001a8c0a,0x0019f34f,0x00186d23,0x001603a3,
-0x0016c778,0x00175dfe,0x0015ab52,0x0015c68a,0x00212ffc,0xfff87e23,0xfffc3055,0xfffe46bf,0xfffd4ed7,0xfffda7ad,0xfffbf240,0x0000a070,0xffff3a3a,0xfff9568e,0xfff77733,0xfff81e9e,0x00012cba,0xfffb4e59,0xfffab6c5,0xfffa1bb3,0xfff89638,0xfff90022,0xfffe2f41,0xfffae802,0xfffa1f63,
-0xfff7da4e,0xfff92ccf,0xfff9b983,0xfffecca1,0xfff31fde,0xfff3360c,0xfffb6c3d,0xfff70fba,0xfff7d333,0xfff85769,0xfffb5f03,0xfffb1af1,0xfff6546c,0xfffb2429,0xfffa103f,0xfff955d1,0xfffb2891,0xfffb2b2b,0x00000a32,0xfffceb13,0xfffcfbae,0xfff8f758,0x0009e1c9,0x000a3038,0xfffcc1be,
-0xfff4829a,0xfff6cfaa,0x000c1528,0xfffb7ee9,0xfff279f2,0xffee0182,0xffe96cee,0xfff00e43,0x00036ab6,0x00008e80,0xffff627c,0xfffa1e86,0xfffb08ab,0xfff5e3a9,0xffff90f1,0xffe86f9a,0xffe66b48,0xfff88ff6,0xffe5a45f,0xffe42a4d,0xffe6bb54,0xfff7015a,0xfffb62fb,0xffeffb57,0xfffb22f5,
-0xfff9a074,0xfff004bf,0xfff5e75c,0x000133d3,0x00125fa7,0x000a3ddb,0x001147ef,0x00069faf,0x00231625,0x001f542b,0x0005eebb,0xfff2bc49,0xfff073f5,0x001c02fe,0x0003ac75,0x00010e4b,0xfff895d4,0xffefed21,0xfff39147,0x00113127,0x000391aa,0xfffe2e9a,0xfff60973,0xfff4cfc1,0xffeda38f,
-0x00012cf9,0xffd21e39,0xffd6fcd5,0xfff211a4,0xffe11e5e,0xffe7aafc,0xffe3e235,0xfff1f33e,0xfff1430c,0xffe49096,0xfffc2f9f,0xfffe2988,0xffeae81f,0xfff73de0,0xfff4ad71,0x0002f2ee,0xfffae618,0xfff52166,0xffeafcca,0x002a7408,0x003731f2,0x00139d34,0xffee9ea8,0xfff7b7d2,0x002e6636,
-0x00072087,0xffdc2b3a,0xffc5da17,0xffbb920f,0xffdda13c,0x001db8a3,0x001bdec2,0x00135ede,0x000595a5,0xfff9d510,0xffee2601,0xfff414eb,0xffd97f0e,0xfff2b7ab,0x00002441,0x0002bf8f,0x00085d02,0x00075b12,0x00036fc7,0x000235c2,0xfff9a54f,0xfffcd7f0,0xfffcf8fd,0xffd7836d,0xffe3ac02,
-0x00503efe,0x0052e51d,0x008dbe97,0x00a91faa,0x00ae49d1,0x003350ca,0xfffe4795,0x0025c856,0xfff6036b,0xffe1de9e,0xffe2c9aa,0x001ebff9,0x007827ef,0x00c87d7d,0x007eb3ea,0x002c41f9,0xffe88d33,0xffac77f0,0xffa00b3c,0xffb3cd8d,0xffb6a6a2,0xffd93a13,0x0001d760,0x001ba8de,0x0009c93e,
-0xffff042c,0x00000e63,0xfffc6f94,0xfffd7ad4,0xfffe15c6,0x0000b433,0x000115a1,0x00048350,0x001d21e1,0x0031e0fa,0x003f655b,0xffeb9456,0x0019f1de,0xfffd8f30,0xffd4290d,0xffb95e36,0xff73b349,0xff7a9e19,0xffeabcc3,0xfffe629b,0x0038b1cd,0x0076fe11,0xffe4aab2,0xff7ff419,0xff70f5d4,
-0xffa81289,0xffebcc9a,0x0025c8f4,0x00288cf6,0x0011e125,0xffea9600,0xffe8faf6,0xfff392f9,0x0002d3ab,0xfff5a489,0xfffb8486,0xffffafb6,0x000055b2,0x00015ab6,0x000156d9,0x0000f02c,0xffff8978,0x000029c5,0xfffb3c0f,0xfffddfa3,0x0005ed43,0xffed4851,0x006df72b,0x00abe074,0x00483644,
-0x00243985,0x0022b1c1,0x008f1456,0x009ddd19,0x0078f9f4,0x0025704c,0xffcdf0f4,0xff7cce77,0x001a46b6,0x007adf23,0x009aeeed,0x00384b7e,0xfffb9a9e,0xfff2cb3d,0xffea537d,0xfffdb2e7,0x001c0747,0x001a2812,0x000ead37,0x00012c86,0x0005eb43,0x0001d473,0x00007c5b,0xffffcd3a,0xffff5b0e,
-0xffff3bfb,0xffff4f5c,0x000034da,0xffffa8ff,0x0002be22,0x0006b10f,0xffdcd5be,0x001713c9,0xff9219e9,0xff4d9614,0xff3c0cf9,0xff51852d,0xff41332f,0xff31bb64,0xff88a066,0x0042b9fd,0x00835b3f,0x0075be3b,0xffe7ab96,0xffe64bec,0xffc4402c,0xffbf3253,0xffbd7ad7,0xffd1a8ca,0xffe72344,
-0xfffe436d,0x000f0f30,0x001f78f9,0x001f9619,0x000ce21c,0xfff6211d,0xfffbf5da,0xfffeb233,0xffffd002,0xffffdfd7,0x0000801f,0x0000a79f,0x0000ae2c,0x00009277,0xffff6388,0x00011904,0xffec02f2,0xff73b098,0xff829e73,0x00d9eb31,0x00b5c055,0x0027f5bb,0xffdb5987,0xffed45c2,0xffe18b2a,
-0xffd64282,0xffc47191,0xffb12103,0xffb4f375,0xffc2ac2e,0xffcc2156,0xffe016db,0x00025cca,0x000e807c,0x00190bd5,0x0021ee70,0x002abae3,0x0036c5fa,0x00405853,0x0048c496,0x003b9007,0x001adc3e,0x0007d5d9,0xffff1566,0x000139e4,0x00000d39,0xffff8152,0xffff06a2,0xfffec368,0xfffe9704,
-0x0000eb38,0xfffd315e,0x0020bbbe,0x004187da,0x00b411b5,0xfffff73c,0x0015ab00,0x00192f75,0x00137040,0x0004d404,0xfff304a1,0xffebf236,0xffe27dce,0xffecc3d0,0xffec59a8,0xffe60cf0,0xffe58651,0xffe07190,0xffd9877e,0xffdde9ea,0xffe24b61,0xffe3d173,0xffe8837f,0xffeee848,0xfff33062,
-0xfff9b241,0x0005830a,0x000d5dfc,0x000510f7,0xffff999e,0xfffde45a,0xffffa153,0x00017d85,0x0001d9cd,0x0003817c,0x00034411,0x0001d3bf,0xfffc05a8,0xfff9bf53,0xfff3c086,0xfffd9814,0xffcb16e5,0xffc58545,0xffcb62bd,0xffcec563,0xffd3bf88,0xffde00ec,0xffe3d4a7,0xffe7185c,0xfff322a2,
-0x0000e887,0x000f3218,0x001bf3dc,0x0027ee03,0x00338c73,0x002ab67e,0x0021c958,0x0019150c,0x0014c4ca,0x0010b7e3,0x000aa7c1,0x000e9444,0x0011fa7d,0x0014dc89,0x000d4766,0x00099869,0x0001aeee,0xffff87b3,0xfff8d76c,0xfffa458b,0xfff35e8a,0xffef4683,0xffe68a52,0xffdff1a0,0xffd7ffe9,
-0xffd231fa,0xffcd75f8,0x000846e3,0xfffd7660,0x0001c75c,0x0005c893,0x0008d617,0x000d5ade,0x0012d5e9,0x0018569c,0x001c29be,0x001d663e,0x001dd0ba,0x001e2080,0x001e6b9e,0x0020f6ec,0x001fc2c3,0x0021347b,0x0021a646,0x002223eb,0x0022bf41,0x0021ba7e,0x00207386,0x00270269,0x002ae09b,
-0x002e2504,0x00319640,0x0034895d,0x002e83b8,0x0028e0a0,0x00247026,0x001d50b4,0x00182127,0x0015a799,0x001251cd,0x001087a8,0x000eb8de,0x00083a0e,0x0017ae4e,0x0015025f,0x0018cec1,0x001a6be2,0x001c88ee,0x001d9231,0x001e48bb,0x001f40d1,0x001fe881,0x0021902f,0x002385a5,0x00258777,
-0x0026fbc3,0x00281ca2,0x0027d881,0x00277476,0x00270c39,0x00266a02,0x0025bd0f,0x00263616,0x0023c1cd,0x0022791d,0x002027ad,0x0025ba7f,0x00248360,0x0026e53d,0x00246f36,0x00234a79,0x0020f8a2,0x00200cf3,0x001e10d8,0x001ad35c,0x001a3272,0x0019b9cf,0x0017ccc5,0x0017e766,0x0029db73,
-0xfff5095b,0xfff90f97,0xfffae896,0xfffa5161,0xfffa8489,0xfff7b069,0xfffd6691,0xfffcae4a,0xfff88ae2,0xfff58d9d,0xfff59459,0xfffbc3b6,0xfff8dfa9,0xfff83f39,0xfff6904b,0xfff3af26,0xfff3c48e,0xfff981c1,0xfff707b1,0xfff68b34,0xfff3e932,0xfff5dea4,0xfff69457,0xfffc0762,0xfff004e3,
-0xfff04e23,0xfffa436d,0xfff4268f,0xfff5062b,0xfff79aea,0xfff94238,0xfff93350,0xfff63b87,0xfff84231,0xfff6a29f,0xfff69439,0xfff7f729,0xfff8a317,0xfffca3f4,0xfffaa05f,0xfff9c815,0xfff2baba,0x00052911,0x00075b55,0xfffeb4c9,0xfff42086,0xfff44c50,0x0002b42e,0xfffae3e1,0xfff220fa,
-0xffe8e8aa,0xffdefcc3,0xffe3d1be,0xfff94579,0xfff8d6f6,0xfff94d52,0xfff38e15,0xfff66c54,0xfff23d0c,0xfffd07bf,0xffe5a8f8,0xffe3d473,0xfff7fa76,0xffe07af2,0xffde8c14,0xffe6d8fb,0xfff4b2a5,0xfff97ef6,0xfff3c2bd,0xfff822a1,0xfff5c51f,0xffef1568,0xfff3fe2b,0xfffe8e38,0x000df139,
-0x00085e38,0x000de71e,0xfffdf9e3,0x001e48c4,0x001e10aa,0x000e5f26,0xfff65133,0xfff11d53,0x000d20cd,0x0005ee4a,0x000290d1,0xfff3fd00,0xffe1b9a8,0xffe2dc7c,0x0004f44e,0xfffacc22,0xfff8180a,0xffedacfa,0xffeff66a,0xffeb39c0,0xfffeffe8,0xffd32f2a,0xffda2642,0xfff8eb7a,0xffe77e68,
-0xfff14d8f,0xfff2d0bf,0xfff8fea7,0xfff73b00,0xfff2565d,0xfffaf828,0xfff9cec4,0xffeb4447,0xfff47f88,0xfff57320,0x00018340,0xfffcb476,0xfff2dd4e,0xffde560f,0x001f9016,0x00330f9d,0x001fee01,0xfff5fbf3,0xfff53436,0x00161959,0x000b62c7,0xffe51f75,0xffbf2192,0xffa021fc,0xffbaef65,
-0x0002ee91,0x0008ef65,0x0005872c,0xfff65a70,0xfff0b381,0xffea8827,0xfff570e3,0xffe28476,0xfffc6274,0x00038191,0x0004d79d,0x0006e8fe,0x0004c12a,0x00029421,0x0002b75d,0x00005890,0xffff1e4b,0xfffcff01,0xffe19c30,0xffe8232b,0x003ebe0b,0x0040969c,0x007ec0c5,0x009e4d8c,0x00b23681,
-0x00428533,0x0010e5cf,0x0030dff5,0xffff0f04,0xffec44a9,0xfff3d267,0x00221a29,0x0076c0ff,0x00c589d0,0x009624f1,0x004b1392,0xfffe080c,0xffbe278b,0xffae13f8,0xffbea8ae,0xffc4d88f,0xffe99619,0x000e176c,0x000ffe91,0x00036e6b,0xfffe6f5b,0xfffe4241,0xfffcf3a4,0xfffdbd28,0xfffedae2,
-0xfffedeba,0x0000707c,0xffff23bf,0x000c6dc8,0x001d7905,0x002b2f43,0xfff2ce5e,0x00233cb1,0x0014c438,0xfff02b1f,0xffd3313d,0xff89240d,0xff7fc0b6,0xffd8339d,0xfff1fa9d,0x0030c718,0x0077d089,0xfff78d47,0xff927497,0xff6ec06d,0xff9e6f35,0xffdfcbcd,0x0017b555,0x001d0af0,0x000a3b5f,
-0xffe59cb4,0xffec92fb,0xfff8349c,0xffff7641,0xfff81037,0xfffe7c0f,0x000091b6,0x0000f6d9,0x00018089,0x00011c2e,0x00010053,0xfffff3ef,0x00017145,0xfffd767c,0xfffed919,0x0003d327,0xfff756d9,0x007f3340,0x00b324b0,0x00676261,0x002bb058,0xfffb503c,0x0089d450,0x00ab46cc,0x007ce881,
-0x004674e5,0xffe3c639,0xff701937,0xfffa810a,0x0061bcc8,0x00a5121b,0x004ada23,0x000e6534,0xfffd5c11,0xfff6e542,0x00063a5b,0x0020c58b,0x0018c3fb,0x000c4fdf,0x00031cce,0x00039041,0x0000e556,0xffffb06c,0xffff5e38,0xffff2087,0xffff1301,0xffff6f47,0xffff3529,0x00002765,0xfffe4c97,
-0x000bde6b,0xffe1761f,0x001c4153,0xff90ba43,0xfee2b5fc,0xff3d4138,0xff7a8643,0xff602fde,0xff48b19f,0xff7ab83c,0xfffff423,0x007f93c3,0x008e0d30,0x00017aea,0xfff2ecfa,0xffc46d91,0xffbbca17,0xffb7f17e,0xffcaff6f,0xffdd583c,0xfff10693,0xfffd932a,0x000d8416,0x00107b86,0x0000157d,
-0xfff464fe,0xffff2a5a,0xffff910b,0x0000582d,0x00008a4a,0x00010023,0x0000df34,0x00013667,0x00009882,0x000152f9,0xffffa593,0xfffcafc0,0xffa319ff,0xffb9ba9d,0x00c16778,0x00ae0f7f,0x0019d35d,0xffc72330,0xffd95620,0xffd47a28,0xffd90a6e,0xffd4b83d,0xffbc6360,0xffba30ff,0xffc67a6e,
-0xffd1dd42,0xffe5f6a2,0x00034adb,0x000ead7f,0x0018d51f,0x00242c87,0x002e5c0e,0x003a20c7,0x004212b4,0x0045faa7,0x0030975a,0x0010d31e,0x0001ce76,0xfffed4a8,0x00003260,0xfffeba4b,0xfffeac5e,0xfffe1eb8,0xfffe729b,0xfffd193d,0x000061b1,0xfff9a7bd,0x001631d6,0x0036c95f,0x008e08b5,
-0x00107841,0x00260a89,0x00252d23,0x0024f231,0x00179d9e,0x0003c420,0xfff4354e,0xffe3cd07,0xffe50c7f,0xffe2f9b0,0xffde1839,0xffdd6e2d,0xffd787d8,0xffce5cf2,0xffd6026b,0xffde8b5d,0xffe576d6,0xffec1fc6,0xfff414cc,0xfff9031c,0x0001f6ac,0x000ba2e8,0x000debf7,0x000421b7,0xffffcc97,
-0x0001117e,0x000226a0,0x00035f53,0x000359d2,0x00046fe2,0x0004c6cf,0x0004fff5,0x000211b4,0x00047626,0x0000636c,0x000cf3e8,0xffcfcf32,0xffcdff53,0xffd4fefa,0xffd67603,0xffdb7140,0xffe27602,0xffe6920a,0xffe7b25e,0xfff1a8a8,0xfffbefed,0x0006f17f,0x00147a52,0x0021b998,0x002ee831,
-0x0028246c,0x0020a1e5,0x0019802d,0x0016ef3b,0x001552f4,0x0011687f,0x000f3a4f,0x000ef25f,0x000dedb6,0x0006132e,0x00017047,0xfffaaf63,0xfff9a5f3,0xfff61d0b,0xfff7ec8d,0xfff3b36a,0xfff06eda,0xffea9dc3,0xffe3086f,0xffd9f466,0xffd404f2,0xffd19036,0xfff9b750,0xffeec113,0xfff4fce5,
-0xfffb85f5,0x0000ef1f,0x00066450,0x000d2321,0x00140ebb,0x0019c2ce,0x001da320,0x00206544,0x00228ebb,0x002444e9,0x0028aa63,0x0026eaac,0x00283b10,0x00286daf,0x0028a304,0x00288cbd,0x002815ba,0x00263b48,0x00294b74,0x0029c549,0x0029adcd,0x0029a62f,0x0027d7dc,0x00215eab,0x001afe38,
-0x0015d093,0x000f25ab,0x0009e318,0x0007d30f,0x0004c506,0x00040f47,0x0001979d,0xfffa5b0e,0x00180373,0x00133bd3,0x0017d326,0x00198390,0x001bbe42,0x001dab45,0x001f11a8,0x00206f11,0x0021c579,0x0023e08f,0x00266bf6,0x002913ca,0x002b4cc2,0x002d8043,0x002cc1c4,0x002c3168,0x002b9240,
-0x002ad0ff,0x002a0445,0x0029e217,0x0028b8d8,0x00279d57,0x0026a929,0x002813aa,0x0027c2ed,0x002af61d,0x0028ff41,0x0027ac14,0x00257a09,0x0023fbeb,0x0021b758,0x001e043e,0x001b9bbd,0x00195dee,0x0019e9e4,0x0018d90d,0x002d50ec,0xfff2296d,0xfff64ae4,0xfff8ae85,0xfff89e78,0xfff8bd7e,
-0xfff4eca4,0xfffa9f8a,0xfffa34f8,0xfff7d1b4,0xfff38deb,0xfff2daa5,0xfff5daa8,0xfff68dbf,0xfff6277c,0xfff3682d,0xffef9ee4,0xffef61c8,0xfff5036b,0xfff3a814,0xfff37401,0xfff0b3ba,0xfff26616,0xfff30c26,0xfff88293,0xffed553a,0xffede637,0xfff8de76,0xfff1ab73,0xfff20559,0xfff5e600,
-0xfff6f3d1,0xfff761d4,0xfff66dad,0xfff53a6c,0xfff387a5,0xfff3a609,0xfff4e12b,0xfff6862b,0xfffb1639,0xfffae3aa,0xfff92f88,0xffef607a,0x000093b1,0x00036ec5,0xffffa62f,0xfff23137,0xfff01ac8,0xfff74013,0xfff99b29,0xfff22b21,0xffe4a426,0xffd6f571,0xffd9aea8,0xffef0593,0xfff19e76,
-0xfff3d320,0xffedc3ec,0xfff1ec82,0xffef55e9,0xfffa5d08,0xffe490e3,0xffe24ceb,0xfff632fe,0xffdd32e0,0xffdcdda6,0xffea303a,0xfff41ca7,0xfff8b078,0xfff82836,0xfff60ac3,0xfff30b07,0xffef4070,0xfff2e94b,0xfffe2135,0x000c2848,0x000b17c2,0x000ef0bc,0xfffa56d4,0x00193fc6,0x001a00e3,
-0x0014594b,0xfff64327,0xffedd2f3,0xfff911ae,0x00054507,0x0002e755,0xffeed24d,0xffd61913,0xffd4b1eb,0xfff78208,0xfff25660,0xfff27b22,0xffe5fc40,0xffeb713a,0xffe9796e,0xfffbc6e1,0xffd6b95d,0xffe0c324,0xfffda527,0xfff18d91,0xfffa2c83,0xfffb2ca4,0xfffe1c6f,0xfffbf922,0xfffc8b99,
-0xfffac886,0xfff6dbc3,0xffed842d,0xfff4d22a,0xfff86131,0x00039127,0x00039f4c,0xfff6abfe,0xffd952ae,0x0013f3da,0x002a07bb,0x00275642,0xfff6b387,0xffeb3b4e,0xfff65110,0x000ad5a4,0xffed1b97,0xffb9c688,0xff8b366e,0xff9d4a80,0xffe63a48,0xfff5eb95,0xfff86530,0xffe89f61,0xffe9d585,
-0xffe93053,0xfff61f9a,0xffedde65,0x0003ea1f,0x000330bf,0x000451fd,0x00049835,0x0002574f,0x00019bc9,0x00013335,0x000121cc,0x0000d4e4,0xfffdada9,0xffeb1c9c,0xffedfa57,0x0036eca2,0x0037b796,0x0072287d,0x0094f6ca,0x00b63ec4,0x0050377d,0x00209b92,0x0036b8a1,0x000660ec,0xfff52ffa,
-0xfffe1adc,0x001d94c5,0x006a35cb,0x00b659e9,0x00a6b047,0x0067a9b0,0x00119bae,0xffd0f035,0xffbc2247,0xffc6aef8,0xffd0e1d5,0xfff5f246,0x00116877,0x00063842,0x0000f252,0xfffda1ce,0xfffe56b4,0xfffd9b2d,0xfffec867,0xffff2110,0xffff605a,0xffff7ae5,0xffff5353,0x00038990,0x000fb530,
-0x001ed95f,0x0005db5a,0x002e469c,0x001fcf4c,0x0002c243,0xffe11fbe,0xff9aac63,0xff894040,0xffceda3b,0xfff04412,0x002ea068,0x00726ef2,0x00092648,0xffa7d2a2,0xff70fd4c,0xff939d30,0xffce9502,0x00045177,0x000f3d9b,0x00039ff0,0xffe613f8,0xfff42573,0xfffcc93c,0xfffd0982,0xfffbca35,
-0xffffde1c,0x0000e598,0x00011664,0x000130ac,0x0000bc9c,0x0000b1a6,0x00002ee7,0x0000ee15,0xffffafdd,0xfffdc773,0x0003dde8,0x00046077,0x008c8c14,0x00acb02c,0x00600d84,0x0016ab3d,0xffc9b1e7,0x007530f8,0x00ac7763,0x007ccecd,0x0065ddf5,0xfffea58f,0xff72e7fa,0xffe3865f,0x004a067d,
-0x00a6499c,0x006123bf,0x00294d09,0x000b8c3f,0x0004ac3d,0x000c7446,0x001e7ff1,0x0011de23,0x0006f393,0x00034da5,0x0001a648,0xffffe597,0xffff7b62,0xffff28c3,0xffff4188,0xffff30fc,0xffffad45,0xfffee177,0x0000d02a,0xfffc1a2d,0x000a7faf,0xffecafe3,0x00190038,0xff8ab13d,0xfe8a6e8c,
-0xff413524,0xffa1eb69,0xff8520cd,0xff6a13b5,0xff754cbe,0xffbbc8e0,0x006b626d,0x00970db6,0x0022127c,0xfffda179,0xffc4db65,0xffbdf6ba,0xffb712ac,0xffc6f09a,0xffd571a9,0xffe60d91,0xffee8b3d,0xfffb1f99,0x0000125a,0xfff61609,0xfff7805e,0x00013343,0xffffaacc,0x0000e5be,0x0000c634,
-0x000113e4,0x0000c1cf,0x00013d15,0x000064c9,0x00020954,0xffff127c,0x0003f9bb,0xffd176fb,0xffdf5222,0x0087b037,0x007f0bd8,0x00003f7a,0xffb51099,0xffc06402,0xffc470e3,0xffd83562,0xffe287eb,0xffc7764e,0xffbd65d7,0xffc4ac0d,0xffd19862,0xffe63f43,0xffff1837,0x000b89bd,0x0017f7fa,
-0x002875d4,0x00329f3e,0x003c8bc5,0x00404c81,0x003c9a66,0x00243a29,0x0007e32b,0xfffef3b6,0xffff32e8,0xfffefa86,0xfffe6707,0xfffe655f,0xfffe345c,0xfffe784d,0xfffd65c7,0xffff8334,0xfffa286f,0x0006ad2a,0x002a7ae0,0x0055b6d5,0x001e1701,0x002edf68,0x002b14af,0x002eada6,0x00208907,
-0x000db61e,0xfff8cdf9,0xffe5693f,0xffdd152d,0xffda4810,0xffd6fe72,0xffd709fe,0xffd19c66,0xffc80a39,0xffd41e4e,0xffdfa993,0xffe9ba4f,0xfff1e08a,0xfffb0bc8,0x00019aa1,0x000a188b,0x00103dca,0x000c8ba2,0x0003048c,0x000103d6,0x0002cca9,0x0002edad,0x0003a4b2,0x000338aa,0x0003f3c5,
-0x00040210,0x000523ed,0x000494ea,0x0009acd2,0x0009f826,0x0015ed49,0xffd57e89,0xffd593d0,0xffdbe2b7,0xffdb577d,0xffdf9128,0xffe491f7,0xffe789ff,0xffe756ee,0xffeeb2ec,0xfff4bd07,0xfffb69ee,0x0007da74,0x00149565,0x002173f8,0x001d71cf,0x00189ba5,0x001403ba,0x00141f94,0x00141801,
-0x0014d18d,0x000fa21e,0x000b1d51,0x000782f3,0x00003f91,0xfffbe1e3,0xfff7f415,0xfff8d4b3,0xfff7774c,0xfff92393,0xfff7a520,0xfff59f1e,0xfff15b4c,0xffe92942,0xffdf902a,0xffd85c94,0xffd79666,0xffecb0f1,0xffe26cec,0xffe9e6d6,0xfff1bb54,0xfff8517f,0xfffda7b5,0x0004832f,0x000bc6b2,
-0x00128ed4,0x00187f27,0x001d3fb4,0x0020f942,0x0023fc4f,0x002a05f0,0x0028124c,0x00291802,0x0028fec2,0x00292382,0x0028809d,0x0028a50f,0x002868c0,0x0025bb6e,0x00232233,0x00206283,0x001dedb7,0x0017d442,0x001156c3,0x000b22b1,0x00066c58,0x00000818,0xfffb067d,0xfff9a1fb,0xfff6f87d,
-0xfff71129,0xfff462dd,0xffed3988,0x00134176,0x000d9127,0x00124968,0x0013b5ed,0x0015ce4a,0x00182ebc,0x0019eb19,0x001b4d9d,0x001d07d7,0x001f33be,0x0021e342,0x0024c799,0x00275d15,0x002a246e,0x00294104,0x0028d71d,0x002851d8,0x0027a7de,0x0027281a,0x00263180,0x00270b87,0x0026eb83,
-0x0028e625,0x00236fd7,0x0024d32f,0x00299cc2,0x00280e81,0x00265da1,0x00241381,0x0022585c,0x002004e2,0x001c2feb,0x0017c38b,0x00139978,0x00184a46,0x00150f52,0x00290b45,0xfff0d24a,0xfff51b03,0xfff6865e,0xfff73ee1,0xfff7263e,0xfff29d59,0xfff89541,0xfff8f42e,0xfff90c4d,0xfff3bd0b,
-0xfff265fb,0xfff2210c,0xfff602bc,0xfff5c258,0xfff2195c,0xffedcac7,0xffed29db,0xfff1f106,0xfff1b901,0xfff1b93d,0xffef28b9,0xfff10550,0xfff1725d,0xfff5b790,0xffed4d55,0xffee012b,0xfff770f7,0xffef6667,0xffef4186,0xfff471f2,0xfff50544,0xfff5fe24,0xfff70bc1,0xfff40c0f,0xfff24b92,
-0xfff253fc,0xfff3be67,0xfff66706,0xfff88abc,0xfff96059,0xfff742be,0xffebb469,0xfffc599d,0x00011972,0x0003c5e7,0xfff46dbb,0xfff02014,0xffef6002,0xfffa5d66,0xfff47b34,0xffe3ed7f,0xffd41941,0xffd465ab,0xffe732d0,0xffec6ead,0xfff00717,0xffea772c,0xffef3665,0xffee738f,0xfff8a72c,
-0xffe4bca2,0xffe1c051,0xfff4ce7f,0xffdf6bf2,0xffe0be85,0xffef0dc4,0xfff6079b,0xfff9a90d,0xfffce8eb,0xfff4ea71,0xfff1507d,0xfff0c1f2,0xfff269ea,0xfffda0c9,0x000735ff,0x0007c7e9,0x000a900f,0xfff3109a,0x001227c0,0x0016a552,0x001e48e2,0xfffc1819,0xfff0e515,0xffeb0d78,0x00076e76,
-0x0005c6e3,0xffedba84,0xffd14487,0xffcd0b0e,0xffec3951,0xffebedae,0xffee9afa,0xffe1561f,0xffe8f944,0xffe962f0,0xfff887ad,0xffde2aeb,0xffeb1e62,0x0001f3ff,0xfff9f178,0x0001f336,0x00007b8b,0x0000cbaa,0xfffe7c0a,0x0001f3a1,0xfffc15ce,0xfff591b1,0xfff007d0,0xfff4a531,0xfff99c1e,
-0x00000ef4,0x000193d0,0xfff3f739,0xffd1087e,0x0006ffda,0x0023017b,0x0034eda6,0x000071ea,0xffea23aa,0xffddd8d6,0x000b990a,0xfff7915b,0xffbc32e1,0xff842ac5,0xff8c1f77,0xffce18cd,0xffe6131b,0xffee40c7,0xffdf0659,0xffe51066,0xffe9e0ca,0xfff798e7,0xfff8f203,0x0007527d,0x0000b9bc,
-0x00027741,0x0000bf6a,0xffffb026,0x00004e4c,0x00006dab,0xffffa05c,0x000163fc,0xffffdd40,0xfff2455a,0xfff1b4d8,0x002a0953,0x0026a935,0x00547a99,0x00769c13,0x00a63d17,0x005410b8,0x002cb4ce,0x003b8201,0x0013cd30,0x00080d39,0x001356bd,0x00221497,0x00603ab3,0x00a28bed,0x00af39bc,
-0x007dc91a,0x0022c0e5,0xffe3dc34,0xffcaf6f8,0xffcef4ca,0xffdc5600,0x00002a61,0x000ebb4e,0x00003e77,0xffff33bb,0xfffe4ffb,0xffff59a0,0xffff4093,0x0000261f,0xffffbd8c,0xffffe7e7,0xffffd3cd,0xffff9769,0x00000b02,0x00057c9c,0x001384a8,0x000cb88b,0x0029643c,0x0025ce73,0x00157cea,
-0xfff933fe,0xffb5172b,0xff9b43ca,0xffc74026,0xfff20772,0x002fe85b,0x006f8dc6,0x0022067b,0xffcb5c6e,0xff8796a4,0xff974ef8,0xffc4f284,0xfff50c00,0x0005053b,0x0001d35c,0xffed07c0,0xfffc014b,0x00001a16,0xfffb9ed0,0xfffe6d1f,0x00010b06,0x0000a892,0x0000952b,0x00005c7a,0x00001068,
-0x00003481,0x00001d57,0x000042c8,0x0000d09f,0xfffe6290,0x000192df,0x000ad9b9,0x0081bc36,0x009ef64c,0x0063d075,0x00135e38,0xffba6bb2,0x0060f2ab,0x00a0f9e7,0x006f193b,0x007103de,0x000f3516,0xff7db739,0xffd191a2,0x0031319d,0x009abe61,0x00742535,0x004764e5,0x001f2589,0x0017117a,
-0x0016578a,0x001c22cc,0x000a6923,0x0002b75a,0x0002d08a,0x00004e6b,0xffff858e,0xffff6cfe,0xffff7f89,0xffffb23f,0xffffb896,0xfffff226,0xffff3f7f,0x0000ba10,0xfffcbcfb,0x00068959,0xfff3d974,0x00120124,0xff861836,0xfe7a5998,0xff6782a8,0xffd51e1c,0xffb5480b,0xff9a2974,0xff832adf,
-0xff891a15,0x00473ada,0x00880ed0,0x003a7f23,0x0002c4b8,0xffc53879,0xffc06995,0xffb6901e,0xffc2f4be,0xffcf7998,0xffdccad3,0xffe22956,0xffece6e1,0xfff360a7,0xfff24ffd,0xfffce67c,0x00012256,0x00005be8,0x0000d84e,0x0000a655,0x00008cfb,0x000057e2,0x00008ca8,0x00007699,0x0001089e,
-0x000079f6,0x0002bd77,0xfff0c476,0xfff43a87,0x0043ceba,0x0041e506,0xffefc7c0,0xffb76425,0xffb75225,0xffc177da,0xffdb27a4,0xffec1d9d,0xffcf8470,0xffbf4999,0xffc35dcb,0xffd025bb,0xffe414fe,0xfff78803,0x0004550f,0x0012d61f,0x00271759,0x0032dbcf,0x003b9ee0,0x003dd49e,0x00338458,
-0x00198f29,0x00019a9d,0xfffde99b,0xffff41e3,0xfffe859f,0xfffec27a,0xfffeffb6,0xffff38ed,0xffff165f,0xfffead83,0xfffe6301,0xfffe9e65,0xfff9d200,0x001bc907,0x00265ef1,0x00268247,0x0039986f,0x0033898f,0x003746bd,0x0027ae89,0x00141852,0xfffb88b9,0xffe88f72,0xffd91a1e,0xffd4a5e1,
-0xffd11db6,0xffd2b977,0xffceb9a5,0xffc55b04,0xffd4a5d3,0xffe136d3,0xffeb6c8a,0xfff674f1,0x000115a2,0x0009f796,0x00117a19,0x0012888d,0x000a46c0,0x00027759,0x00022eec,0x00031e9f,0x00028c08,0x00021658,0x000179d7,0x0001de17,0x0002b993,0x00038655,0x00040cf8,0x00089eaf,0x000f6640,
-0x001a5147,0xffdde7db,0xffdf3492,0xffe456c1,0xffe22b14,0xffe55b40,0xffe8af0e,0xffea9d35,0xffe911c2,0xffee0d21,0xfff0a971,0xfff39dba,0xfffbd970,0x0004df79,0x000de3da,0x000d202e,0x000b65d8,0x0009cf40,0x000b81e2,0x000c793b,0x000ff645,0x00092bf1,0x00031cb5,0xffff691a,0xfffa7821,
-0xfff82abd,0xfff8ea7e,0xfffa4237,0xfffc0544,0xfffd6835,0xfffce1e1,0xfffa9261,0xfff8b30d,0xfff0a1bd,0xffe853e9,0xffdfc860,0xffe06ff5,0xffe364fe,0xffde288d,0xffe5dba5,0xffeda542,0xfff44c19,0xfff8c4ab,0xfffedc83,0x0005a573,0x000c03d3,0x0012359e,0x001797c9,0x001ba29e,0x001f12d7,
-0x0024f732,0x0023a9fa,0x0024a1f2,0x0024e1f0,0x00256e3e,0x00254109,0x00264936,0x00252c91,0x001f6ccb,0x001ab110,0x00161b53,0x0011a7fa,0x0009fed3,0x00048209,0xffff51f0,0xfffaece9,0xfff64c5d,0xfff1fdac,0xffefeae6,0xffedb872,0xffed8a29,0xffeb5b74,0xffe63f18,0x000d2c1c,0x0008575e,
-0x000bec8e,0x000d28a7,0x000eef12,0x001169a2,0x001336b9,0x00148023,0x00162007,0x0017ffc9,0x001a4df7,0x001d00cd,0x001f85c2,0x0022505c,0x0021b1f4,0x002194d8,0x00214cfc,0x0020eb52,0x0020ae5d,0x001fcd5d,0x0020eb1f,0x00210b57,0x00239f80,0x001c1fa5,0x001ddd85,0x0021d614,0x002044ae,
-0x001e2cad,0x001c0131,0x0019e3b1,0x0017c71c,0x00148b36,0x0010ce11,0x000d0b00,0x0011907e,0x000e7a32,0x0021071c,0xfff08f96,0xfff390b0,0xfff56944,0xfff6890b,0xfff6776e,0xfff1b42f,0xfff75f72,0xfff84675,0xfffa74be,0xfff448e1,0xfff26d74,0xffef7d74,0xfff5f774,0xfff60b78,0xfff20406,
-0xffedcaab,0xffecda5c,0xfff02edb,0xfff11393,0xfff14124,0xffef5be1,0xfff02d2a,0xfff02768,0xfff39bb6,0xffee1ba9,0xffee7249,0xfff5e366,0xffedc82f,0xffedb56b,0xfff39494,0xfff3ee4a,0xfff5154d,0xfff7d2ce,0xfff2d402,0xfff176d4,0xfff128e3,0xfff21f3a,0xfff40dfc,0xfff6185e,0xfff89eb6,
-0xfff648de,0xffea6f9a,0xfff954e3,0xffff1c68,0x0006b42b,0xfff5e3c7,0xffefcddf,0xffe8b8ea,0xfffa9f19,0xfff6f3a6,0xffe55b91,0xffd59d39,0xffd3c193,0xffe20e90,0xffe96e6a,0xffee3d10,0xffe9abe6,0xffedf80a,0xffef57c0,0xfff7467c,0xffe5cff3,0xffe321e1,0xfff4b55b,0xffe51de7,0xffe77d5b,
-0xfff3ef0c,0xfff83a67,0xfffb6dea,0x0000d0b8,0xfff4eb4f,0xfff03184,0xfff1ad01,0xfff21e6f,0xfffac298,0x0000e053,0x0006252c,0x000743c8,0xffef9883,0x000c1ab9,0x00123886,0x00244891,0xffff2b63,0xfff28ee2,0xffdf763c,0x0007f3ee,0x00084ae8,0xffeef6c8,0xffd2e265,0xffcc50cb,0xffe40e3c,
-0xffe88b5a,0xffed6c7b,0xffe0cccb,0xffe929cf,0xffeb2c35,0xfff648d7,0xffe84b7d,0xfff648f6,0x00039720,0x00013ef1,0x0004b963,0x00023996,0x0001f858,0xffff97ba,0x0002a267,0xfffd8537,0xfff584ba,0xfff10d8b,0xfff45935,0xfff6c7cc,0xfffa57e0,0x000185c5,0xfff33a3f,0xffceceb6,0xfffc92f1,
-0x001b4368,0x003be9ad,0x00050405,0xffe70a1e,0xffc94bcb,0x00099bc9,0x000057b7,0xffc331cd,0xff89c34a,0xff885ee6,0xffbc67bc,0xffdac193,0xffe83adc,0xffdb8341,0xffe426f8,0xffed47d7,0xfffa4a49,0x000094e7,0x00061a63,0xffff0627,0xffffdcb6,0xfffeeac1,0xffff2e07,0xffff989c,0xffffebc1,
-0xffff46a1,0x00015d95,0x00021ff1,0xfff71754,0xfff40f62,0x001f9aef,0x002181de,0x00422ff6,0x0061163b,0x009c6e16,0x005956db,0x0035ef97,0x003774a7,0x001f1f97,0x0019b618,0x0023bd70,0x00287a10,0x00578f2b,0x008ead70,0x00afb901,0x008befd7,0x0032d478,0xfff8b301,0xffdcf0e2,0xffd9de4e,
-0xffe80091,0x0006daec,0x0007954a,0xfffea727,0xfffe3d2f,0xffff9b5e,0x000050f1,0x0000392b,0x00006a15,0x00001b61,0x00001149,0x00003d7c,0xfffef76e,0x00009f64,0x0000a022,0x000bba10,0x00127883,0x0028950f,0x002f3bd6,0x002918b0,0x000e5db4,0xffcdab82,0xffafb23e,0xffc675e6,0xfff14b12,
-0x0026206e,0x005724f1,0x0028c137,0xffe1d69a,0xff99b794,0xff97905a,0xffb715f9,0xffe2dd73,0xfff8e5d3,0xffff27af,0xfff64670,0x0004333b,0x000146b1,0xfffbefa8,0x0000a9b3,0x0000e08d,0x00004aaf,0xffffece3,0xffffeba7,0xffffd127,0x000002c5,0xffffdba7,0x000031eb,0x00004395,0x00003049,
-0xfffef013,0x000bcdba,0x00769de5,0x00916600,0x00525003,0x00017532,0xffa49888,0x003f0605,0x00856174,0x005eccdb,0x006de9e0,0x00161107,0xff89b68e,0xffbe49ea,0x000f1f9e,0x00784a5e,0x00731e99,0x0056d15e,0x002a5b71,0x00223c6f,0x0019e322,0x00164ffd,0x00042493,0xfffff767,0x0002ac08,
-0xffff0ffa,0xffff9098,0xffff9e19,0xfffff549,0x00000011,0xffffff35,0x00001b49,0xffffbe06,0x00006e11,0xfffe27cc,0x0002bd27,0xfff9d057,0x000c3c07,0xff8be4f2,0xfe916c04,0xff83a8df,0xfff2a7bb,0xffd85e33,0xffc632a2,0xff9c0cd6,0xff7493b6,0x0022ffbb,0x0070600e,0x00546175,0x000b62c1,
-0xffcb125f,0xffc3ec93,0xffb7f454,0xffbf89ca,0xffc842d4,0xffd37cae,0xffd6f28d,0xffdf9297,0xffeae4b0,0xfff34ba7,0x00014eb8,0x00005d29,0x0000c52f,0x00007422,0x00003d12,0x00001889,0x0000117b,0xfffffeac,0x000026a3,0x00003966,0x0000f093,0x0000fb98,0xfffec215,0xffff7d29,0x0002379a,
-0xfff8b2eb,0xffe65337,0xffc8d396,0xffb9b437,0xffc9beee,0xffe3be21,0xfff6334e,0xffde2379,0xffcb149d,0xffcb71d1,0xffd5dd02,0xffe7ad02,0xfff43738,0x00005822,0x000ee654,0x00236bfa,0x002de07f,0x00346baf,0x00355e31,0x00284f54,0x000f3fac,0xfffd7dde,0xfffec03e,0xfffedd9c,0xfffefc74,
-0xffff9ae5,0xffffa830,0xfffff5cd,0xffffc119,0x000038b6,0xfffe653f,0x00009c73,0xfff83be3,0x000d8743,0x00019ab0,0x002c883f,0x003c053a,0x0034e9fa,0x003756d0,0x00271981,0x0015a289,0xfffcfc54,0xffed3127,0xffd9e1f5,0xffd4fc89,0xffd1c95a,0xffd45b76,0xffd2756d,0xffcbdd50,0xffdcff2b,
-0xffe8e783,0xfff0e0f3,0xfffc3ba8,0x000705ff,0x0010d29b,0x0015252b,0x0012494e,0x000685c0,0x00022fab,0x0002de50,0x0001c212,0x0000d9e8,0x000087df,0x00002eb6,0xffffe828,0x000061d3,0x0000e324,0x0003ddab,0x0003f26c,0x000f502b,0x001b3f8b,0xffe66e0f,0xffe867a9,0xffec2522,0xffe9cfee,
-0xffec024b,0xffee100a,0xffef85b2,0xffedd474,0xfff09605,0xfff0883c,0xfff088ca,0xfff48461,0xfff99641,0xfffe538f,0xffffaa16,0x00003a65,0x00010d99,0x0003de9b,0x0005a55c,0x000a4a9e,0x0002a310,0xfffd71a1,0xfffb46c5,0xfff8502e,0xfff8c782,0xfffd14de,0xfffeabf0,0xffffb360,0x00009bc0,
-0x00016ff6,0x000047ec,0xffff7800,0xfff80f4c,0xfff18b88,0xffe9a414,0xffe95977,0xffe1f2da,0xffdfdfcc,0xffe6b4d6,0xffed62e7,0xfff33cb8,0xfff6a561,0xfffb6292,0x0000e9e3,0x00063ae0,0x000bd483,0x0010f7a0,0x0014cd03,0x0018299e,0x001d4900,0x001d21d1,0x001e5d8c,0x001f3147,0x00202190,
-0x002084be,0x00228044,0x00208fc3,0x001878d1,0x001249a0,0x000cccf1,0x000711c3,0xffff6be9,0xfffb7d30,0xfff84fa4,0xfff50cff,0xfff1971d,0xffee438f,0xffec054a,0xffea2676,0xffe99be1,0xffe7cbea,0xffe52652,0x0006ae5e,0x00031f81,0x0005afac,0x0006a864,0x00080990,0x000a44ae,0x000bef13,
-0x000d0cdc,0x000e6e83,0x000fe8d8,0x0011b717,0x0013f989,0x00162e58,0x0018a0b9,0x00185892,0x00187d95,0x00187b33,0x00187cab,0x00188ac6,0x0017fec0,0x0019261a,0x00197dea,0x001c5bd0,0x0013b832,0x001597a2,0x0018add0,0x00170b5a,0x0014aae6,0x00129c31,0x0010927e,0x000eb8db,0x000c3f45,
-0x00095ecf,0x00063acb,0x000ade29,0x0007c724,0x0016e89d,0xfff1c5a7,0xfff4bdeb,0xfff587dc,0xfff740ea,0xfff74909,0xfff2f10b,0xfff7898c,0xfff8a4f2,0xfffc5a81,0xfff5ad86,0xfff3675b,0xffee95a2,0xfff66e59,0xfff6d1df,0xfff2f584,0xffef5249,0xffee37b2,0xffefdc76,0xfff1aeac,0xfff21456,
-0xfff0cbe7,0xfff1e607,0xfff18e1f,0xfff3a32d,0xfff124b2,0xfff07b53,0xfff4df89,0xffed9306,0xffed8538,0xfff3d036,0xfff46997,0xfff5fca3,0xfff9e01a,0xfff410b9,0xfff3325b,0xfff20f87,0xfff3428e,0xfff4d294,0xfff6247a,0xfff9d271,0xfff80142,0xffed521a,0xfff8c6ea,0xfffe8917,0x0009547b,
-0xfff7db02,0xfff0821d,0xffe5071d,0xfffa5b38,0xfff8b64d,0xffe7ff31,0xffda2afd,0xffd6b84d,0xffdf79f1,0xffe831a9,0xffeda81f,0xffeaff1f,0xffefc39f,0xfff21892,0xfff691dd,0xffe7c355,0xffe7c6c0,0xfff7a742,0xffeec306,0xfff1c22e,0xfff9f564,0xfffbd06d,0xfffd7d01,0x0003bc58,0xfff680a7,
-0xfff09d78,0xfff404c6,0xfff3df69,0xfffb6452,0xfffd802c,0x00062a17,0x0006d9ba,0xfff232aa,0x0008268b,0x000e257c,0x0027377c,0x00010e6e,0xfff380d6,0xffd77d2d,0x0004d7eb,0x00074226,0xffefa13d,0xffd77a3c,0xffcfb7e8,0xffde208a,0xffe6a056,0xffece6ed,0xffe34252,0xffec6eae,0xffee7d86,
-0xfff5eb9a,0xfff4bf3c,0xffff99bb,0x00037aca,0x0002905c,0x0004a577,0x0001c017,0x0001a3b4,0xffffd7b3,0x00016db1,0x00002796,0xfff9a0a0,0xfff3beed,0xfff66936,0xfff84f56,0xfff8bf7b,0x000403d1,0xfff8cc3f,0xffd83043,0xfff8df7a,0x0015e470,0x003f26b7,0x0007d839,0xffe55a14,0xffbc9c31,
-0x00043498,0x0003ee67,0xffcb1b41,0xff977eb7,0xff8ecc64,0xffb0cd38,0xffd245e1,0xffe3577c,0xffdb7a38,0xffe70e71,0xfff243d2,0xfffdf0c7,0x0003b32a,0x00018c7f,0xfffe7b09,0xffff2673,0xfffe43ce,0xfffefd39,0xffff7d87,0xfffff3c8,0xffff4c6c,0x00003144,0x000302d9,0xfffd313b,0xfff736ac,
-0x00195996,0x001b2f4d,0x002a1a74,0x00445c10,0x00836ac1,0x00507121,0x00334ecf,0x002a4630,0x0022db00,0x0021d1e2,0x00246aa7,0x0021d328,0x0041e41d,0x006d9065,0x009c9a67,0x0087cbd1,0x003958a3,0x0008bab0,0xffecd349,0xffe592a9,0xfff3cc5c,0x00085c6c,0x00021cba,0xfffe24ac,0xffff382d,
-0x000089dc,0x00007a5b,0x0000b876,0x000088bc,0x00003f85,0x00000842,0x00006f9e,0xffff7d33,0xffff343e,0xfffffe7d,0x00079c83,0x00147c74,0x001dd100,0x0026871e,0x002b817c,0x00194263,0xffe24c47,0xffc4afd0,0xffcb1d30,0xfff40489,0x001e5cf5,0x00417267,0x002a5ae3,0xfff2aaf8,0xffac95be,
-0xff99485b,0xffa9014c,0xffcf5ae1,0xffe8a7c0,0xfff74494,0xfffb6e06,0x00072f6a,0x00008c53,0xfffd4f40,0x000164e9,0x000042bc,0xffffe6c9,0xffffb519,0xffffaed7,0xffffabe2,0xffffe906,0xffffd032,0x000005d4,0xfffff5a7,0x00012671,0xfffdea7f,0x0005dfee,0x005b2b8a,0x0075f0da,0x00440cfd,
-0xfffdc972,0xffab1167,0x0025fa17,0x0068bf17,0x00507542,0x0067000f,0x0020c5ea,0xffa78870,0xffc0a614,0xffff62ef,0x005d13f9,0x0073a51b,0x0066ab0d,0x003958e2,0x002d3fc8,0x001d9695,0x00100f76,0xfffe3779,0xffffa0fa,0x00016ea3,0xfffeec52,0xffffea92,0xffffea6c,0x00002cbd,0x000031f8,
-0x000031db,0x0000335d,0xfffff75f,0x00007c7d,0xfffef8bd,0x00018b0c,0xfffb8856,0x0004d0d1,0xff97ffeb,0xfecfd860,0xffa11ce0,0x0000fd49,0xfffbbca3,0xffec5822,0xffba4fee,0xff79a360,0x000346eb,0x0053ca0b,0x00672ccd,0x001a427a,0xffddb89c,0xffd0d3cc,0xffc42b78,0xffc681c5,0xffca84a5,
-0xffd32ea4,0xffd54c2a,0xffd9c7ff,0xffe65973,0xfff8aa94,0x0002633e,0xfffff783,0x0000ab4d,0xfffffc5f,0xfffff945,0xffffc896,0xffffc405,0xffffc134,0xffffdb27,0xffffba22,0x00007078,0x0000592d,0x00013266,0x00046c8c,0xffd43736,0xffbe43cd,0xffee54ce,0xffeca7d7,0xffd2622a,0xffde9896,
-0xffefd7db,0xfffb2450,0xffe751fc,0xffd39556,0xffd2fc9e,0xffdae243,0xffeb10f9,0xfff2e289,0xffffdcb6,0x000deaba,0x00207e7c,0x00293194,0x002e0e9a,0x002e8e49,0x001e18e4,0x00076768,0xfffc3a98,0xffff7b80,0xffff1c65,0xffffd484,0x00000bed,0x0000460d,0x000083a6,0x000049ce,0x0000ad79,
-0xffffb5da,0x0001218f,0xfffb6328,0x00041b41,0xfff0dc50,0x002d1399,0x003a89fb,0x00313a6b,0x003039e0,0x00215046,0x0012e594,0xfffd5d07,0xfff26302,0xffddb8ad,0xffd7e7d8,0xffd463f6,0xffd76198,0xffd780fb,0xffd45a5e,0xffe5ce1b,0xfff0d4be,0xfff753b2,0x000340fb,0x000d7822,0x0016f90a,
-0x0018064f,0x00110772,0x0003a459,0x00022522,0x0001780d,0x000059c6,0xffffeea6,0xffff5615,0xffff17ba,0xfffeea56,0xffff6b73,0xfffe8886,0x0001a8d7,0x0000b22f,0x000a34bd,0x00194336,0xffef4992,0xfff22257,0xfff4425e,0xfff1b708,0xfff219b2,0xfff313f8,0xfff3e4a6,0xfff2126f,0xfff330cd,
-0xfff1a466,0xffefafd7,0xffeffc4d,0xfff15b67,0xfff1ef41,0xfff4c65f,0xfff70127,0xfff94734,0xfffc7c73,0xfffe4a85,0x00038f7e,0xfffd310b,0xfff9d437,0xfff9f250,0xfff97d6c,0xfffd0f92,0xffffeb0b,0x00007ed3,0x0001eb61,0x00024446,0x00030067,0x0002286c,0x0003f6b7,0xfffecda8,0xfff9ca1e,
-0xfff49bd2,0xfff2e05e,0xffe4594a,0xffe516a2,0xffea6810,0xffef429c,0xfff3b6cf,0xfff611ed,0xfff9500c,0xfffd496b,0x00014853,0x0005a536,0x0009e25a,0x000cfeb2,0x000fd7bb,0x0013ae94,0x001495bf,0x0016090d,0x00177720,0x0018db32,0x0019cb4e,0x001c68d7,0x001a9c59,0x0010f2e7,0x000a7c6c,
-0x00048278,0xffff56db,0xfffababa,0xfff90d18,0xfff7c632,0xfff59359,0xfff38578,0xfff0ab52,0xffede665,0xffeb4918,0xffe9ff06,0xffe7e6d0,0xffe77633,0x0001273e,0xfffebf55,0x00002d62,0x0000ee74,0x0001e6b3,0x00038e9f,0x0004d4fe,0x0005a049,0x00068f99,0x00078944,0x0008bfa2,0x000a6a4e,
-0x000c1fa7,0x000dfcd4,0x000e242e,0x000e8f06,0x000ed294,0x000f2e0d,0x000f9287,0x000f514f,0x0010cda0,0x00115b38,0x001416db,0x000ba06d,0x000d00e3,0x000e2f9d,0x000c3730,0x0009a776,0x0007d411,0x00060d2c,0x0004da5e,0x00034cb2,0x0002027c,0x000015bb,0x00045b03,0x0001de13,0x000c8233,
-0xfff20b37,0xfff48fb6,0xfff4831c,0xfff6ab9d,0xfff6acc4,0xfff31b9e,0xfff65c9e,0xfff77997,0xfffc038b,0xfff58b89,0xfff33ec0,0xffedbd89,0xfff5bf2e,0xfff66776,0xfff32a43,0xfff07765,0xffef5a46,0xffef7336,0xfff1b762,0xfff24ea5,0xfff1dae9,0xfff2c101,0xfff2a06c,0xfff44b88,0xfff26d75,
-0xfff14e71,0xfff44a79,0xffeef2bc,0xffefdee8,0xfff569f5,0xfff5b651,0xfff75ba1,0xfffbf08d,0xfff4bb35,0xfff3b080,0xfff3a262,0xfff3c1f0,0xfff58c5e,0xfff41467,0xfff877cf,0xfff6ebe0,0xffee4365,0xfff62118,0xfffb5f40,0x00077954,0xfff6ea3e,0xffef8419,0xffe2a1f1,0xfff863f7,0xfff8aa8c,
-0xffea7a94,0xffdfdd65,0xffdb9008,0xffdefae1,0xffe78c1b,0xffed4005,0xffeca3eb,0xfff1f0ec,0xfff4c928,0xfff4d4f6,0xffec376a,0xffef18b0,0xfffb4b75,0xfff6e66d,0xfff8092a,0xfffcfb6c,0xfffd9ec6,0xfffe933e,0x00035650,0xfff8e871,0xfff23dc7,0xfff511bf,0xfff50b31,0xfffaa7ea,0xfff7b5cf,
-0x0001c0cb,0x0001fe65,0xfff20844,0x0000f13d,0x000605d0,0x00222baa,0xfffe155b,0xfff166f0,0xffd2c1ba,0xfffedffe,0x00035cd7,0xffefeb78,0xffde2a28,0xffd646cd,0xffdbb54b,0xffe5d46f,0xffecf200,0xffe74fd2,0xfff07f34,0xfff26117,0xfff88a35,0xfffe54ce,0x0002feec,0x0002bf5a,0x0002becf,
-0x000361eb,0x00017aaa,0x000140bf,0x00000f6b,0x0000163f,0x00015528,0xfffdd286,0xfff7691e,0xfff75586,0xfff86382,0xfff2c48d,0xffff5811,0xfff711ac,0xffdcefc0,0xfff1a1d7,0x000b0eb5,0x00369b00,0x0002bfe2,0xffe0593c,0xffb59bdb,0xfffc11d7,0x0003663e,0xffd42950,0xffab93d9,0xff9e88a5,
-0xffaea2e2,0xffce3e7d,0xffe11e30,0xffdee9ba,0xffec2cad,0xfff8437a,0x0000e6b6,0x0001ec6a,0xffff24b0,0xfffecb95,0xfffec200,0xfffea646,0xffff44b3,0xffff84af,0xfffff393,0xffffe664,0xffff9652,0x0001d3d5,0x0000fda9,0xfffa4ae7,0x00111619,0x00122782,0x0014bc81,0x0028d2fc,0x00672f8c,
-0x004350c9,0x002bfe11,0x0019139e,0x00238c31,0x0026568c,0x002043b6,0x001687ca,0x00289a22,0x004abc11,0x007ef01f,0x007751d2,0x0039abcc,0x001435ca,0xfffaf433,0xfff04924,0xfffcb221,0x00060f80,0xffff6ffd,0xffff5974,0x00001f1f,0x0000a971,0x000091c8,0x0000a170,0x0000623a,0x00003e4a,
-0x000006cb,0x00002a8b,0xffffecf4,0xffff9785,0xffff2e20,0x00030268,0x000ffa2c,0x00148e94,0x0025c1fd,0x00323b74,0x0027241d,0xfff7a41d,0xffdab309,0xffd308c2,0xfff7902b,0x0019150b,0x0031feb2,0x00305fe6,0x0008624c,0xffc8526e,0xffa81b15,0xffa8656c,0xffc6123b,0xffddbd56,0xfff09239,
-0xfffd5897,0x0005782e,0xfffe8d51,0xffff6f58,0x0000ce92,0xffffcae0,0xffffc0c8,0xffffa79a,0xffffb10c,0xffffbee3,0xffffdca0,0xffffe221,0xffffef63,0xfffff220,0x0000470f,0x0000cacf,0xfffdd1d6,0x004168f1,0x005f9b6d,0x00356343,0xfff9466f,0xffb06856,0x000ae7a8,0x004776b5,0x0041c6af,
-0x00572922,0x00234c8b,0xffc0ae50,0xffc37c9b,0xffefd950,0x003e4fc0,0x00686090,0x006a5dfd,0x00441500,0x0034a4de,0x00207cb6,0x000c8af9,0xfffd04fe,0x0000aa42,0x00005233,0xffff6731,0x0000201d,0x00001eb9,0x00003ddd,0x000038dc,0x0000368d,0x000030e5,0x00001ed3,0x000043c9,0xffffc462,
-0x00007229,0xfffec86c,0xfffc9605,0xffb0c120,0xff1bec15,0xffb051ff,0xfffbd4cf,0x0012593c,0x0002d06e,0xffd262c1,0xff8f85c1,0xffe7e346,0x00308171,0x00665251,0x0021c7ba,0xffedcce3,0xffd9a3c9,0xffcec679,0xffcdb224,0xffcdae6f,0xffd52a2d,0xffd7bf2c,0xffda11b6,0xffe95449,0xfffe5e30,
-0x0001936d,0xfffff488,0x0000318a,0xffffca34,0xffffc955,0xffffb6d0,0xffffb42a,0xffffadba,0xffffba68,0xffff9823,0x00002121,0xffffb90d,0x0000ba59,0x000979c8,0xffbf7b14,0xff9a7c8a,0xfffd6902,0x0010e6bd,0xfff2fa43,0xfffa40a8,0x0000d4b3,0x000126b5,0xffefecff,0xffdcfd5d,0xffdc9f5c,
-0xffddbb1e,0xffea4baa,0xffef1bd9,0xfffc6dbe,0x00094d81,0x0018e0cc,0x0021803b,0x00260338,0x0027e719,0x001743b9,0x000194cd,0xfffd0045,0x00003c5e,0xffff8315,0x000067d1,0x00004fea,0x00007fa6,0x0000985c,0x00008a4d,0x0000c5f1,0x00006170,0x0000cc90,0xfffe755c,0x0002b4bc,0xfff01365,
-0x002a8bca,0x00313ab5,0x0024e6fc,0x00205d0c,0x0015d8d0,0x000b6cf2,0xfffae630,0xfff54ebd,0xffe3c04e,0xffde3e24,0xffda2f7a,0xffdc9d43,0xffddf82a,0xffde1ddb,0xffeef07b,0xfff8f57f,0xfffe0522,0x0008d62c,0x0010f471,0x001936ed,0x0017e3c0,0x000cf453,0x0000ab14,0x0001d967,0xfffffe09,
-0xffff8620,0xffff3c5e,0xfffeff05,0xfffeca41,0xfffeb0c1,0xfffeb852,0xfffe5713,0xffffbeb5,0xffffe8ac,0x0001ff82,0x00131594,0xfff7be91,0xfffc30dd,0xfffc6ede,0xfff9d258,0xfff80b35,0xfff7a4b3,0xfff7cc82,0xfff6129d,0xfff535ae,0xfff27d70,0xffef1167,0xffedca86,0xffed3c45,0xffeb927b,
-0xffeecc0f,0xfff1a614,0xfff495ec,0xfff71fdd,0xfff849bf,0xfffc9603,0xfff88621,0xfff8392b,0xfffa9f94,0xfffd0ac6,0x00004df4,0x00016b55,0x0001b6ab,0x00026c7f,0x0002e0a2,0x00030b45,0x000315a4,0x0003b7e4,0x0002ad41,0xffff0d7a,0xfffd5ae4,0xfffc1f2e,0xffe97834,0xffeb8de5,0xffeee15f,
-0xfff1d780,0xfff4b125,0xfff65a3b,0xfff82795,0xfffa90fc,0xfffd42c0,0x0000447b,0x00033e48,0x00055e52,0x00075359,0x0009c4f4,0x000b3e6f,0x000cb120,0x000e59e1,0x000feadb,0x00113445,0x00140aa9,0x00131a71,0x00094a13,0x00036f07,0xfffe70a3,0xfffbcaee,0xfffacddd,0xfffa3d4c,0xfff912f2,
-0xfff81c42,0xfff722e1,0xfff6ebf6,0xfff3f1ff,0xfff10970,0xffee795a,0xffebd68f,0xffebf76a,0xfffcb90e,0xfffbae4b,0xfffc477d,0xfffcd8a2,0xfffd7b46,0xfffe6f75,0xffff4376,0xffffc290,0x00003429,0x0000aba7,0x000153a0,0x00024dff,0x000364a7,0x00048443,0x0004fd44,0x00058dcc,0x0005fa57,
-0x00068bf6,0x0007203d,0x00070c09,0x00086d49,0x00091f6b,0x000b88d6,0x00045780,0x0004a94d,0x000428f2,0x00028942,0x0000e45c,0xffff74a7,0xfffde556,0xfffc58c6,0xfffbb64b,0xfffbb94a,0xfffb45a7,0xfffe6bd7,0xfffd0be5,0x0003b770,0xfff40095,0xfff54cd7,0xfff56c58,0xfff76a50,0xfff79922,
-0xfff513b6,0xfff733c1,0xfff83a45,0xfffcdc79,0xfff71110,0xfff4f0f0,0xffefadec,0xfff6b35b,0xfff77443,0xfff503bb,0xfff35f7f,0xfff25f83,0xfff15772,0xfff39451,0xfff43275,0xfff4aa33,0xfff4c874,0xfff48846,0xfff42e58,0xfff3f115,0xfff215fb,0xfff41222,0xfff0bc8d,0xfff1cfc4,0xfff633fe,
-0xfff66116,0xfff7f1fd,0xfffc32d4,0xfff566ee,0xfff51517,0xfff45038,0xfff48f32,0xfff5a16b,0xfff404dd,0xfff88427,0xfff79870,0xfff1a3e5,0xfff6a587,0xfffb142b,0x000695ea,0xfff80f09,0xfff13a03,0xffe4f320,0xfff7f080,0xfff942fc,0xffee5d01,0xffe7737f,0xffe31f4d,0xffe26db7,0xffe9acd2,
-0xffef0249,0xfff06200,0xfff4da6d,0xfff79478,0xfff438ec,0xfff34730,0xfff7e17e,0xffff58ce,0xfffdc2fb,0xfffe43f4,0x00000745,0xffffe8f7,0xffffa3e5,0x0002c967,0xfffc0ba7,0xfff53aaa,0xfff58a2f,0xfff6db6d,0xfff97aa4,0xfff3ed4f,0xffff0edf,0xffff44ae,0xfff52c0b,0xfffe4339,0x00022086,
-0x001d539a,0xfffdfc7a,0xfff3095a,0xffd66d8b,0xfffb822a,0x0000e97d,0xfff27696,0xffe7a642,0xffe07792,0xffdecf86,0xffe85c15,0xffef31cb,0xffeda80d,0xfff59d2a,0xfff6f410,0xfffdd223,0x0003315e,0x000293a0,0x00012894,0x000109f5,0x0000fe04,0x000028f7,0x00006321,0x00000ba4,0xffff8e6a,
-0x0001c023,0x0001e0ce,0xfffc14f6,0xfff84b19,0xfff81382,0xffeeee14,0xfffcbfbd,0xfff7d14c,0xffe63e60,0xfff1ada0,0x00064695,0x002e414a,0x0001289d,0xffe232d5,0xffbb32f4,0xfff6f6cc,0x00019480,0xffde0b78,0xffc27977,0xffb4234a,0xffb5c155,0xffcfb7d7,0xffe1d5d5,0xffe59fc0,0xfff2d2ef,
-0xfffdb8c9,0x00019c06,0xffff33d1,0xfffebd6b,0xffff674c,0xffff7b2c,0xffff8857,0xffffd23a,0xffffcee2,0x0000004e,0x00000ecd,0xffff2f56,0xffff92b4,0x00025aaa,0xfffdf9d4,0x000a3c5b,0x000f466b,0x0009b5c0,0x00182dc7,0x004c996c,0x0034ece1,0x0022e69a,0x0009b92a,0x00235508,0x00292775,
-0x001bdfe0,0x00105d4a,0x00187a7b,0x00323742,0x00628752,0x00643d43,0x003a00ca,0x001ec034,0x0008743f,0xfffc159b,0x0001eead,0x00030440,0xfffef7ab,0x0000440c,0x00008f14,0x000056a9,0x000040ca,0x00003a14,0x00001fa7,0x0000160d,0x000009f7,0xfffff9c2,0x000078c0,0xffffd1fd,0xfffef6ef,
-0x00016459,0x0009981f,0x0010d47b,0x001d95b2,0x002d490d,0x00279ce1,0x0003d792,0xffeae689,0xffdbe121,0xfff7fde0,0x00100b90,0x00225214,0x002dcd8b,0x00133c0c,0xffdd6bd7,0xffb900cc,0xffaed25f,0xffc20a53,0xffd69cb7,0xffea6d94,0xfffc49aa,0x00022f08,0xfffe6c95,0x000056dd,0xfffffa91,
-0xffffacf1,0xffffd538,0xffffd965,0xffffdf39,0xffffedad,0xffffe4ed,0x00000b5d,0xffffbce7,0x00003cc2,0xffff08c8,0x0002631a,0xfffb50af,0x00269af3,0x00437f7a,0x00245a70,0xfff7eb01,0xffbea2f4,0xfff5db7e,0x002680f8,0x0030a61a,0x0042f011,0x0020c49f,0xffd7e84e,0xffca3237,0xffe5db19,
-0x0023375a,0x005375e8,0x005fbcf0,0x00450793,0x0034f72a,0x002030b4,0x0009f2d2,0xfffe1174,0x00015dd3,0xffff3f6f,0x0000318f,0x000019b6,0x00002a68,0x000018af,0x00001ab7,0x0000175d,0x000013a0,0x00001b24,0x00001482,0x00004c40,0xffffb480,0x0001528b,0xfff83a1b,0xffcda02b,0xff6518e1,
-0xffc0c339,0xfff6691e,0x0026380e,0x000e526a,0xffe3fab6,0xffae831e,0xffd985fd,0x00145671,0x005b29cd,0x002862f0,0xffffd55d,0xffe451a7,0xffdc034a,0xffd84d0b,0xffd4dad6,0xffdaee02,0xffde3721,0xffdedadf,0xfff03d71,0x00025802,0xfffffe7a,0x00001d4d,0xffffcae5,0xffffded1,0xffffd98b,
-0xffffe0c0,0xffffd8b4,0xffffdf67,0xffffc556,0xffffe0cc,0xffff67ff,0x0000c1a1,0xfffcfe21,0x000d5508,0xffc34840,0xff96462e,0x0012d5a2,0x00307b77,0x00155d4b,0x00147e42,0x0010f946,0x00077d1c,0xfff6be6e,0xffe53e26,0xffe500f1,0xffe1ea37,0xffeb6d1c,0xffee2d70,0xfffb23df,0x0005c817,
-0x0010f4c1,0x001904b5,0x001d29d7,0x0020963c,0x000feabb,0xfffd70dc,0xfffefb1b,0x00003e2d,0x0000195b,0x00005639,0x00003217,0x0000433c,0x0000408c,0x0000526a,0x0000540f,0x0000904c,0x00007382,0x00007615,0xfffff61f,0xfffe7fb3,0x0022f692,0x00259b85,0x00163a61,0x000e2da4,0x000764c1,
-0x0000a653,0xfff68f46,0xfff690d2,0xffea96f1,0xffe68483,0xffe29e2a,0xffe4831a,0xffe6798a,0xffe926e2,0xfff74e70,0xffff9dfb,0x00033a44,0x000bedf2,0x00118524,0x0017ef31,0x0014cf91,0x0006f814,0x000009b8,0x00006493,0xffff477a,0xffff9213,0xffff7f0d,0xffff8981,0xffff6e2c,0xffff67c2,
-0xffff347e,0xffff0c24,0xfffeacb1,0xffff7536,0xfffe64f0,0x00082e09,0xffff3165,0x00044633,0x0003a690,0x000170fb,0xfffe6187,0xfffcc0f1,0xfffbf44f,0xfff9e92d,0xfff72d61,0xfff39f09,0xffef58d4,0xffedb41d,0xffec6e18,0xffea0c4b,0xffece552,0xffef7c55,0xfff22b16,0xfff3dfb7,0xfff4a670,
-0xfff75358,0xfff5e6a3,0xfff8a19e,0xfffd902a,0x00009ab9,0x000112f6,0x00011e5f,0x0000f29c,0x000106ab,0x00012984,0x00014254,0x0001a72a,0x00020f68,0x0002da3f,0x00024d4a,0x000151f6,0x00026ed8,0xffeec06e,0xfff10bc3,0xfff296b0,0xfff3dc18,0xfff55299,0xfff67dda,0xfff74b86,0xfff89166,
-0xfffa4ae8,0xfffc2873,0xfffde5f9,0xffff02f9,0xfffff010,0x000104e0,0x000297ba,0x0003e7e1,0x00059178,0x00070726,0x00086479,0x000b0b00,0x000aa68d,0x00023732,0xfffdd199,0xfffbc5aa,0xfffc6129,0xfffd6f36,0xfffdcf80,0xfffd4ab4,0xfffd2b2c,0xfffcbd44,0xfffd0a36,0xfffacfec,0xfff858d4,
-0xfff45c40,0xfff1b32f,0xfff11fd4,0xfffa6219,0xfff9ee42,0xfffa07d8,0xfffa77b8,0xfffad5c4,0xfffb309b,0xfffb9b59,0xfffbd661,0xfffbd84c,0xfffbe471,0xfffc2119,0xfffc8cf3,0xfffd238e,0xfffda8ab,0xfffe4c8d,0xfffeddc7,0xffff50ca,0xfffff3b3,0x00008f73,0x00009f08,0x000201e3,0x0002becd,
-0x00046c2e,0xfffe9c7b,0xfffe23e1,0xfffd30c3,0xfffbefae,0xfffae8cb,0xfff9f35e,0xfff8e8e7,0xfff7daa9,0xfff7a356,0xfff7f15d,0xfff86340,0xfffa8aa1,0xfffa36fc,0xfffd788b,0xfff623b9,0xfff70de6,0xfff6c052,0xfff89dba,0xfff8e84c,0xfff787e5,0xfff86551,0xfff91570,0xfffd0d72,0xfff85470,
-0xfff698ff,0xfff269fb,0xfff7bcbd,0xfff874f0,0xfff6e5a6,0xfff6236a,0xfff55c6c,0xfff3ccc1,0xfff5bc7e,0xfff663c0,0xfff72493,0xfff798ba,0xfff7ca86,0xfff520f8,0xfff63a67,0xfff5f6fc,0xfff76c6f,0xfff5c1cf,0xfff6a1d8,0xfff96d22,0xfff96df8,0xfffa8c09,0xfffde631,0xfff81c00,0xfff6f8c7,
-0xfff61eb2,0xfff70f87,0xfff79104,0xfff56cfe,0xfff9a045,0xfff95b3d,0xfff6169d,0xfff803c5,0xfffafe51,0x0004491c,0xfff87f45,0xfff2e8d6,0xffe94401,0xfff7abf9,0xfff9669e,0xfff20cba,0xffee46aa,0xffea8f9d,0xffe78dc7,0xffed1253,0xfff190e4,0xfff44b38,0xfff8ccde,0xfff9b202,0xfff7c8dd,
-0xfffbe780,0xfffe5471,0x0000f4ca,0x0000201f,0x00005143,0x00009eb3,0x00007968,0x00003c2d,0x00013fa9,0xffff7252,0xfffb57ce,0xfff87b00,0xfff8a20b,0xfff9efb0,0xfff34051,0xfffdf0dc,0xfffe683d,0xfffa028d,0xfffcf936,0xfffecb78,0x0015472b,0xfffc2d4a,0xfff3b0ae,0xffdd5e94,0xfff87d88,
-0xfffdd5ac,0xfff4a841,0xffef9547,0xffe9d88f,0xffe42a09,0xffec5111,0xfff211e7,0xfff3fd0a,0xfffa67f7,0xfffd280d,0x00017762,0x0001d92f,0x0000af26,0x00001252,0x000045d7,0x000053a1,0x00000eb6,0x00000f83,0x00000af3,0xffff8c3c,0x00008228,0x0001913e,0x000097c4,0xfffc439f,0xfffb2734,
-0xffef7092,0xfffcf37b,0xfffb5302,0xfff24260,0xfff49e3e,0x0002690e,0x0021dd7e,0xfffd4481,0xffe45f5d,0xffc6d06b,0xfff3637d,0xfffe4db5,0xffe6e5c3,0xffd6d81e,0xffc9a82e,0xffc25c34,0xffd5a39d,0xffe506be,0xffed4ddd,0xfff9bafe,0x0000a225,0xffffd18e,0xffff1472,0xffffbdbc,0xffffe916,
-0xffffd6ba,0xffffd24a,0xfffff77c,0xfffff07c,0x000002e1,0x00002a0a,0xffffd159,0xffff3237,0x000058f8,0x00009113,0x00061c14,0x0009e16d,0xffff0639,0x0008901a,0x0030aadb,0x00232484,0x0016ed4d,0xfffc7595,0x001e6cd9,0x00262adf,0x00157ec4,0x000a04e1,0x000b4ef0,0x001dac8d,0x00441470,
-0x004b6f1d,0x00343aee,0x002225f3,0x00105cdc,0x0005584b,0x00041ea8,0xffffc723,0x000001ad,0x00007127,0x00002877,0x00000b4a,0x00001821,0x00001480,0x00000a8a,0x00000441,0x000006fd,0xffffe2fb,0x0000329e,0x00003dcc,0x0000371d,0xfffe7bbb,0x000285e0,0x000c8d2d,0x00161e1c,0x002699a1,
-0x0025212c,0x000d7761,0xfff94209,0xffe54054,0xfff9b09a,0x0009a66b,0x0015f258,0x0026faa5,0x00169b8d,0xffec2c35,0xffca1b49,0xffbab9c9,0xffc44d26,0xffd46cd5,0xffe65f06,0xfff90e07,0xffffd235,0xffff2dc1,0x0000708a,0xffffa7cb,0xfffff456,0xfffff2fb,0xfffff4de,0xfffff0b3,0xfffffcd7,
-0xffffef1c,0x000013f1,0xffffd211,0x0000567b,0xfffef04f,0x0001d21e,0xfffd3515,0x0010190a,0x002afcce,0x0015e10f,0xfff74863,0xffcdbe82,0xffe8dd0c,0x000cfcad,0x002124b5,0x002f3aa9,0x001bcb1d,0xffea67bc,0xffd3f5b6,0xffe21227,0x000e1b64,0x003a9b49,0x004c00ae,0x003e495f,0x002f54d3,
-0x001d1ae8,0x00080fe1,0x00003d49,0x00008724,0xffff998d,0x00005119,0xfffffcd1,0x00001185,0x0000076e,0x00000d02,0x00000a9c,0x0000071b,0x00000e62,0xfffff156,0x00004c62,0xffff7e1f,0x00020b1d,0xfffa1982,0xffed730e,0xff9dca6c,0xffcccbf6,0xfff05202,0x002d6336,0x0010efbc,0xffef5cd0,
-0xffcaeef9,0xffd4d1a1,0xfffec3d6,0x0045137d,0x00290579,0x000ddf0f,0xffef3ebc,0xffe8a050,0xffe35b88,0xffdeb594,0xffe315a0,0xffe6b760,0xffe6a8fa,0xfff8b9e6,0x00026b2b,0xffff6e0b,0x00001075,0xffffd8d1,0xfffffbab,0xffffebe9,0xfffff2c6,0xffffe750,0xfffffb61,0xffffd27b,0x0000333c,
-0xffff4585,0x00014e8e,0xfffc299f,0x00097b42,0xffdc7a93,0xffaa8778,0x0023b0d7,0x004032b7,0x002edd15,0x002760f6,0x001dade0,0x000da96d,0xfffd75fb,0xffeddf37,0xffed29cb,0xffe692bd,0xffeca1d8,0xffeee0ca,0xfff9d33f,0x0001c9c6,0x0008deae,0x0010785d,0x00143bac,0x0018f1ca,0x0008b855,
-0xfffc66d0,0x0000c049,0x00000573,0x00002df4,0x00001362,0x00001c6b,0x00002395,0x00001c62,0x00003485,0xffffff59,0x00006a87,0xffff9ea1,0x000191a8,0xfffde717,0x0006fa34,0x00181db7,0x001818b8,0x000725e3,0xfffdbfb0,0xfffa6507,0xfff65ccb,0xfff199b4,0xfff4c52d,0xffefd9a2,0xffee6feb,
-0xffebeb97,0xffecd985,0xffee7bc1,0xfff236d5,0xfffcb89c,0x00037a0a,0x00065e52,0x000cfa4f,0x000fe830,0x001477e5,0x000eda43,0x00018e8e,0xffffc2e8,0xffff8ec1,0xffffcde7,0xffffccd2,0xffffcaac,0xffffbfd8,0xffffb42c,0xffffbf7e,0xffffa927,0xffffe186,0xffff4eb0,0xffffd17a,0xfffe75d3,
-0xfffe7ca6,0x0004c078,0x000a41f2,0x0008edd4,0x000745d9,0x0003a3db,0x0000ce8f,0xfffedc92,0xfffc10e3,0xfff85406,0xfff471b1,0xfff00c8e,0xffef1e61,0xffee4ae7,0xffec71a7,0xffeeaf43,0xfff0ac89,0xfff2c0d4,0xfff3b398,0xfff4605c,0xfff589c4,0xfff68a89,0xfffbe3bc,0x0000ff36,0x0000df1d,
-0x0000815e,0x0000529f,0x00006383,0x00007801,0x00008b0a,0x00008500,0x000080f0,0x000078c4,0x0000f247,0x0001bd0f,0x000182b0,0x00043c95,0xfff35d86,0xfff5804e,0xfff5a498,0xfff5879f,0xfff5e114,0xfff681a5,0xfff68e1a,0xfff6e7e1,0xfff7f78f,0xfff909c9,0xfff9db85,0xfffa3b62,0xfffa5157,
-0xfffa66d1,0xfffbc310,0xfffcd988,0xfffe55be,0xffff8a94,0x0000de12,0x0002ee7f,0x0003220c,0xfffd4ff3,0xfffc1518,0xfffd8636,0xffff05f2,0xffffb054,0xffffb40b,0xffffa9ee,0xffffab3b,0xffffa4c6,0xffffa409,0xffff79fc,0xfffe8b3e,0xfffaec5f,0xfff861ca,0xfff7460c,0xfff9486c,0xfff999a0,
-0xfff940dc,0xfff9875e,0xfff99f41,0xfff98793,0xfff999fc,0xfff99203,0xfff94f14,0xfff91042,0xfff901a5,0xfff8fda4,0xfff92f98,0xfff941dc,0xfff9ef3b,0xfffa6e13,0xfffad5a1,0xfffb6c5f,0xfffbf305,0xfffc2400,0xfffd3ebf,0xfffe0bc9,0xfffe7824,0xfffadab2,0xfffad4a9,0xfffa6d2f,0xfff9bf4c,
-0xfff93fec,0xfff8b84d,0xfff84098,0xfff7b621,0xfff77cf4,0xfff77954,0xfff7cbdc,0xfff81f04,0xfff8866b,0xfff9a2f4,0xfff8ab8e,0xfff93a63,0xfff8d8ea,0xfffa42e1,0xfffa9859,0xfffa1028,0xfffa300d,0xfffa9489,0xfffd6ee2,0xfffa27d7,0xfff8f56d,0xfff62e9d,0xfff9894c,0xfffa12bf,0xfff94375,
-0xfff91104,0xfff88ddf,0xfff712ba,0xfff87e66,0xfff9027e,0xfff9d45d,0xfffa3c65,0xfff9c068,0xfff618ba,0xfff97549,0xfff9a7fd,0xfffad424,0xfffa3e80,0xfffaa372,0xfffbd62b,0xfffbc146,0xfffc4fbf,0xfffe1de8,0xfffa9051,0xfff970cb,0xfff75451,0xfff8e89c,0xfff92735,0xfff7c1c0,0xfffaa7bc,
-0xfffacc76,0xfff98fdf,0xfff9cf89,0xfffb9481,0x0001f228,0xfff9d43d,0xfff5f6a1,0xffefa3ef,0xfff8cdf0,0xfffa51eb,0xfff62bee,0xfff4979e,0xfff1ed91,0xffee824f,0xfff20cb8,0xfff549d1,0xfff84d27,0xfffb2a12,0xfffc3723,0xfffcd794,0x00005822,0x00014f84,0x0001b8a0,0x00015a6a,0x00016e09,
-0x00014831,0x000143b9,0x0000e8d4,0x00012f18,0x0000fce8,0xffffd72e,0xfffcb500,0xfffae31c,0xfffb26ff,0xfff4871d,0xfffd0eed,0xfffd9cbd,0xfffd1638,0xfffcd308,0xfffd5d67,0x000d1344,0xfffc064d,0xfff655ee,0xffe7bb1a,0xfff8343c,0xfffc5c53,0xfff7ab04,0xfff64b1d,0xfff269d7,0xffec0c54,
-0xfff1f2dd,0xfff62481,0xfff91b0e,0xfffdbcad,0x00008522,0x000141c1,0x0000842e,0xffffacfd,0xffff8cbe,0xffff901b,0xffff9661,0xffff8a60,0xffffa756,0xffffb6ef,0xffff9f8b,0xffffe2ab,0x00007908,0x0001af7f,0xffffc8b2,0xfffed86a,0xfff14a2b,0xfffbab19,0xfffbf1f0,0xfff9428d,0xfff776bc,
-0xffff8143,0x0014b573,0xfffb97a7,0xffeaaa81,0xffd7d5ca,0xfff3c581,0xfffc5587,0xffefa12d,0xffe842be,0xffde4254,0xffd4346d,0xffe071cd,0xffeb5d22,0xfff4db21,0xfffe1804,0x0000bd43,0xffff5483,0xffffd150,0x000010e9,0x00003424,0x00002f41,0x00002cf9,0x00002fa7,0x000025bc,0x0000207f,
-0x00002afd,0x00000379,0xffffb805,0xffff5b96,0x00010cb6,0x00012b46,0x000532d7,0xfffc3f38,0x0001ade5,0x001bb280,0x0015f4ae,0x000ee38d,0xfff831c2,0x00176d5a,0x001decec,0x000e2012,0x00051e56,0x00032a0b,0x000ea814,0x0027a32a,0x00308a3e,0x00290d31,0x001e8230,0x0012545a,0x0009e236,
-0x00017b15,0xffffa829,0x00004e60,0x00001595,0xfffff92e,0xffffe882,0xffffe909,0xffffeaa2,0xffffe956,0xffffeee9,0xffffecf7,0xfffff360,0xfffff095,0x0000380e,0xfffff3e9,0x00000d99,0xfffdfb43,0x0009fff8,0x000f8f1e,0x001bd51b,0x001cf4b9,0x000faac2,0x000170c8,0xffee0672,0xfffab6de,
-0x0004705d,0x000d4664,0x001d0920,0x001447a2,0xfff75f42,0xffdd97bf,0xffcee527,0xffd145f5,0xffdb0769,0xffe825a5,0xfff6f658,0xffffaa0d,0x000024ee,0xffffe945,0xffffe73c,0x00000784,0x00000ac4,0x00000d03,0x00000b8a,0x00000cca,0x0000088b,0x00000d65,0x0000020b,0x00000eb0,0xffffd9e8,
-0xffffde52,0x000090bc,0x00023bb2,0x0015bf22,0x000b4fe0,0xfff8be73,0xffdeea36,0xffe61b89,0xfffd2e89,0x001412c5,0x001d2990,0x00140dfd,0xfff7a84f,0xffe14f50,0xffe6bb16,0x000311c6,0x002393e7,0x00338c0f,0x002f37a0,0x00245a23,0x00173a27,0x0006d806,0x000045b9,0xfffff9fa,0xffffec60,
-0x00002531,0xfffff011,0xfffffd9c,0xfffff410,0xfffff832,0xfffff68d,0xfffff738,0xfffffadb,0xffffefc8,0x000019c8,0xffffc361,0x0000e552,0xfffe0e2f,0x00024d48,0xffc89b53,0xffdc156a,0xfff15398,0x00289933,0x00101b68,0xfff90af9,0xffe38695,0xffdc288a,0xfff573fb,0x002c8e6e,0x00235709,
-0x00148d05,0xfff9e7a6,0xfff41ceb,0xffeeb559,0xffeac55c,0xffed4a5c,0xfff01796,0xfff0c677,0xfffe4f31,0x00013aee,0xffff7d61,0x00001604,0xfffff85f,0x00000e76,0x00000907,0x00000ca6,0x0000091e,0x00000fe9,0xfffffea0,0x00002487,0xffffc4df,0x00007775,0xfffee028,0x000198e5,0xfff6afa7,
-0xffcebffc,0x0027cf75,0x003c1d8c,0x00360c18,0x002bd311,0x0021475c,0x0011bfb3,0x0002d42f,0xfff5d481,0xfff40f2c,0xffed57f5,0xfff06ae9,0xfff1b765,0xfff9ca2a,0xffff2af4,0x00035ff9,0x0009b58f,0x000c4f74,0x00113ae0,0x00017037,0xfffe5a9b,0x0000d2fc,0xffffcdb2,0x000014de,0xffffe15d,
-0xfffff234,0xffffeb2f,0xffffe97e,0xfffff1f7,0xffffe129,0x00000939,0xffffbb2e,0x0000b825,0xfffe9096,0x000424a6,0x0009efb0,0x000ca55d,0xfffcaf31,0xfff4d327,0xfff37736,0xfff18042,0xfff09078,0xfff50dc9,0xfff4697b,0xfff4e599,0xfff40d28,0xfff48cb0,0xfff5c2bf,0xfff91c5e,0xffffe05d,
-0x0004d27a,0x00072d3f,0x000ba6a9,0x000c19f5,0x000fc698,0x00071d63,0xfffed6cb,0x0000289d,0xffff9376,0x00003411,0x0000184c,0x00002d9e,0x00002537,0x00002e92,0x000026cb,0x000028bb,0x00002217,0x000027ad,0xffff6e2f,0x000084be,0xfffc9730,0x0005bd6f,0x000c7644,0x000a375c,0x000984a4,
-0x00062605,0x00033da3,0x0000ce26,0xfffdf1b5,0xfffa4fcd,0xfff6da7b,0xfff31ef6,0xfff2d0df,0xfff2827c,0xfff17ad8,0xfff30fc4,0xfff46de7,0xfff5e1c0,0xfff65738,0xfff6ff01,0xfff70689,0xfff9c04f,0x00004f98,0x00011169,0x000024d5,0xffffc4e6,0xffff97f9,0xffffa7bd,0xffff9b63,0xffff947b,
-0xffff9a90,0xffffadbb,0xffff8d0c,0xffffd09d,0x00006231,0x00015416,0x0000fb7f,0xfff8bd4f,0xfff92358,0xfff8faf0,0xfff83943,0xfff80d9f,0xfff85140,0xfff8149d,0xfff7feae,0xfff88b2b,0xfff90e85,0xfff942de,0xfff92f76,0xfff8c74e,0xfff84ba6,0xfff9312c,0xfff9e1e4,0xfffaeb35,0xfffbaeae,
-0xfffcb3c1,0xfffe0e3a,0xfffdb6ee,0xfffbe19c,0xfffe3bf6,0x000005a7,0x00012faa,0x00014842,0x00012157,0x000139dd,0x00012dd6,0x0001454b,0x000125ea,0x00018a24,0x00013d2d,0xffffb886,0xfffd491b,0xfffceb5e,0xfff9aefc,0xfffacf53,0xfffa4912,0xfffa632f,0xfffa5922,0xfffa136c,0xfff9fb15,
-0xfff9d8c0,0xfff97c45,0xfff92133,0xfff8ef83,0xfff8b321,0xfff8aa70,0xfff882bb,0xfff90abb,0xfff96090,0xfff9a603,0xfffa1408,0xfffa5e63,0xfffaa845,0xfffb7806,0xfffb6481,0xfffaa773,0xfffa64cf,0xfffae35e,0xfffb27aa,0xfffae95b,0xfffacd36,0xfffaa643,0xfffa8861,0xfffa5555,0xfffa4cf4,
-0xfff9ee01,0xfff9b1f9,0xfff830f1,0xfff8cc01,0xfff8da6d,0xfffaed3c,0xfffb23b6,0xfffb1a9a,0xfffbc0df,0xfffc1d05,0xfffc1c66,0xfffbc7d0,0xfffbe2da,0xfffd738f,0xfffba3e1,0xfffafe74,0xfff99b98,0xfffb3961,0xfffb8ab7,0xfffb4971,0xfffb55bf,0xfffb14df,0xfffa1ab0,0xfffaec9d,0xfffb3c21,
-0xfffbe849,0xfffc2270,0xfffba9d8,0xfff9b245,0xffff4e9c,0xfffef333,0xffff1118,0xfffee24b,0xffff076f,0xffff55cd,0xffff532b,0xffff7622,0x0000030f,0xffff0249,0xffff0ae5,0xfffa515d,0xfffac5f3,0xfffaca00,0xfffa19aa,0xfffc373c,0xfffc5a39,0xfffc7d70,0xfffba39e,0xfffc4432,0xffff8b3d,
-0xfffb0938,0xfff8e26b,0xfff5c35c,0xfffa36fa,0xfffb3733,0xfff991a7,0xfff926ff,0xfff7ac53,0xfff53f78,0xfff6fe12,0xfff8f99e,0xfffb3e1f,0xfffd32e4,0x00009067,0x0000d2e7,0x00010e77,0xfffffba1,0x000074b6,0x0000592f,0x000056dc,0x00002b56,0x00002dd8,0x00000596,0x00000f4d,0x00001173,
-0x00010510,0x0000f6a9,0x00000689,0x00000b9f,0xfff68a08,0xfffda318,0xfffd99a9,0xffff2dda,0xfffd0ae6,0xfffca028,0x0005001e,0xfffbbda7,0xfff8b03e,0xfff1849c,0xfff9195a,0xfffba0f5,0xfffa37b6,0xfffa74d1,0xfff86ed1,0xfff3de23,0xfff742c6,0xfff9bc6b,0xfffc302f,0x0000b9ec,0x00005acf,
-0xffff9bb6,0xffff9716,0xffffdf66,0xffffda19,0xffffdbf4,0xffffe8a5,0xfffff384,0xfffff0c0,0xfffff9b7,0xfffff9de,0xffffd8c8,0xffff9ad5,0xffff5a94,0x0001222c,0x00021a50,0xfff5dbd5,0xfffcab70,0xfffe0583,0xfffec067,0xfffaf5ad,0xfffddf46,0x0008b724,0xfffac686,0xfff16659,0xffe85a6f,
-0xfff5c1ba,0xfffaecfd,0xfff64456,0xfff3eaa4,0xffedfba7,0xffe62f32,0xffec50a4,0xfff28e1d,0xfffa9f35,0x0000781a,0xffffc4ad,0x0000091c,0x0000347b,0x000016b1,0x00001175,0x0000109c,0x00000b45,0x00000842,0x0000069b,0x00000542,0x000003f9,0x00001a0f,0x00002700,0x00004152,0xfffefbe6,
-0x0000564b,0x0002602f,0xfffc089b,0xfffe4ab5,0x000a2049,0x000916db,0x0005d3c2,0xfff64281,0x000c7196,0x0011487b,0x000716a9,0x00019f57,0xffff6ba6,0x0005d8c5,0x001209c1,0x00191414,0x001a55d4,0x0014cb70,0x000e2a50,0x00084119,0xffff48b7,0xfffff99e,0x00000c43,0xffffe38c,0xfffff4db,
-0xfffff691,0xfffff84c,0xfffff9b8,0xfffffbba,0xfffffbcf,0xfffffe33,0xfffff97f,0xfffffc49,0xffffd248,0x00003df2,0xffff76dd,0xfffdc0a5,0x0005de37,0x00099573,0x00103986,0x001241a3,0x000d03c1,0x0004ca3e,0xfff614f4,0xfffc7906,0x00018ae6,0x00077d71,0x0012ab87,0x000f17c8,0xfffe822c,
-0xffeee3ef,0xffe425a2,0xffe21acc,0xffe6fcee,0xffee281c,0xfff8897c,0x0000fdbb,0xffffc230,0x000017d3,0xffffff93,0x00000e21,0x00000208,0x0000063d,0x00000335,0x0000035f,0x000002ea,0x000001b5,0x00000601,0xfffffe07,0x000026a4,0xffffb535,0x0000bb8b,0xffff9170,0x0007082e,0x00045c58,
-0xfffb22bf,0xffed8182,0xffeb554c,0xfff71986,0x00095906,0x000d7686,0x000a732e,0xfffda6ba,0xffec9bf5,0xffed09e5,0xfffc46cf,0x000f0636,0x001a84f4,0x001c0ba2,0x00162369,0x000e8806,0x000490ee,0x000009d8,0xffffb4f9,0x00002886,0xffffe87b,0xffffffbd,0xfffff90d,0xfffffce2,0xfffffb7d,
-0xfffffd58,0xfffffb68,0xfffffeab,0xfffff727,0x00000479,0xffffdfcc,0x00003637,0xffffc236,0x000562db,0xffe9c885,0xffe94642,0xfff5a03d,0x00180b65,0x000a6217,0xfffdf4de,0xfff3c368,0xffe9742c,0xfff521a4,0x0015659d,0x00179572,0x001236a3,0x0000b056,0xfffb8446,0xfff71e56,0xfff50de9,
-0xfff5dea4,0xfff77f94,0xfff9b7e9,0x00006ea6,0x00000f1a,0xffffed8b,0x000010b2,0x00000609,0x00000670,0x0000069e,0x0000052a,0x000006c5,0x0000036b,0x00000c42,0xfffffb0e,0x00002340,0xffffccc6,0x0000a11a,0xfffe6664,0x0000d434,0xfff2cad4,0x001cc6de,0x0028c481,0x00299eb2,0x0021d2b3,
-0x001a4950,0x000fef10,0x000504d5,0xfffbdcee,0xfff9160c,0xfff43f6d,0xfff5318b,0xfff621ad,0xfffabec8,0xfffdb9c8,0xfffffb67,0x00040ff9,0x0005d32a,0x00086b52,0xfffeab4b,0x000020d9,0x000008ac,0xffffe65d,0xfffff643,0xfffff2d6,0xfffff4df,0xfffff42f,0xfffff671,0xfffff1c8,0xfffff6fd,
-0xffffe845,0x00000332,0xffffcd00,0x000037aa,0xffffaf65,0x00011a60,0x000433b2,0xfff871ce,0xfff37002,0xfff2b4bf,0xfff1d879,0xfff29893,0xfff671d7,0xfff8363b,0xfff9e357,0xfffa4fb5,0xfffaa40c,0xfffb6556,0xfffd9ef3,0x0000f91d,0x0003c9c7,0x00056c85,0x000792d3,0x000756a5,0x0009575c,
-0x0000b226,0xffff5445,0x00002836,0x00001ea3,0x00001ae6,0x000017b5,0x00001943,0x00001638,0x00001789,0x00001688,0x00002195,0x00001520,0x00003073,0xfffffbba,0x00007dbc,0xfffebe8a,0x0001c8e8,0x000a9b13,0x0007d912,0x0007ca22,0x00054f4a,0x00031df5,0x0000f7d2,0xfffe94e1,0xfffc2d7a,
-0xfff9ef72,0xfff7a9bb,0xfff7c2d0,0xfff7da72,0xfff7904f,0xfff87aa0,0xfff93c2d,0xfffa1e62,0xfffa3dce,0xfffac9df,0xfffa1e0b,0xffff201f,0x00011377,0xffff827a,0xffffbbee,0xffffcd29,0xffffc960,0xffffc8e1,0xffffcd6d,0xffffcea1,0xffffc877,0xffffc0fb,0xffffb788,0xffffdd6d,0xffff8fbe,
-0xffffe7f9,0xffffbb34,0xfffd82ba,0xfffc7581,0xfffbbd83,0xfffb2d34,0xfffabc0c,0xfffab61b,0xfffa5bf1,0xfffa0ff3,0xfffa591f,0xfffa93ab,0xfffa930e,0xfffa7209,0xfffa0cfe,0xfff991f7,0xfff9f4b3,0xfffa39d8,0xfffabcc4,0xfffaf8d5,0xfffbba2c,0xfffbbdcc,0xfffc43fe,0xffffd7fb,0x0000e6f1,
-0x0000db2f,0x000041c5,0x00009abb,0x0000851d,0x000095be,0x00009916,0x0000a162,0x0000a164,0x0000b4eb,0x00004d25,0x0000db6f,0x00009e83,0x00009d80,0xfffb1900,0xfffc533f,0xfffc15e3,0xfffbfc9d,0xfffbe0e7,0xfffb9dd0,0xfffb7932,0xfffb4d76,0xfffb0a81,0xfffac252,0xfffa9423,0xfffa55a8,
-0xfffa3bb0,0xfffa1314,0xfffa5a01,0xfffa801b,0xfffaa084,0xfffad64b,0xfffae77a,0xfffb5e54,0xfffb0242,0xfffadfed,0xfffacb01,0xfffef448,0xfffeb420,0xfffec4cf,0xfffeae2d,0xfffeae01,0xfffea499,0xfffea2cb,0xfffe981b,0xfffea70f,0xfffea03f,0xffff1852,0xfffaab59,0xfffafb4b,0xfffa31d8,
-0xffff238c,0xfffea09e,0xffff5b99,0xffff38ca,0xffff57b4,0xffff5986,0xffff4974,0xffff51d6,0xffffa568,0xffff4abc,0xffff2a0d,0xfffee823,0xffff2c55,0xffff3c10,0xffff37b1,0xffff43d5,0xffff3932,0xffff02c6,0xffff2a8e,0xffff2d6e,0xffff831c,0xffff00b2,0xfffeab73,0xfffe248d,0x00002236,
-0x00000371,0x00008f7d,0x00008914,0x00007edb,0x00007733,0x00007392,0x000073de,0x000070c7,0xffffff4c,0x0000202c,0xfffe3a85,0xfffe7415,0xfffe994f,0xfffed37d,0xffff6965,0xffff506b,0xffff66a3,0xffff3406,0xffff5a60,0x00000810,0xffff3058,0xfffec6c4,0xfffe33f7,0xfffef2bf,0xffff2b0e,
-0xfffef837,0xfffeff5f,0xfffeb847,0xfffe2a47,0xfffe6870,0xfffecec9,0xffff4b8f,0xfffef69a,0x00007865,0x00007b72,0x00002a1d,0x0000118e,0xfffff083,0xffffe288,0xfffff00f,0xfffff842,0xfffff7dc,0xfffff148,0x000006c0,0xfffffdeb,0x00002290,0x00008c10,0x00007b5d,0x00006375,0xfffe12c7,
-0xffffa250,0xffff8891,0xfffffbb4,0xffff765f,0xffff6bb2,0x00012bee,0xffff7332,0xfffedd7d,0xfffd8cf4,0xfffeb855,0xffff3970,0xffff27ba,0xffff730c,0xffff1861,0xfffe0af2,0xfffea13a,0xffff19f0,0xffff8872,0xfffff770,0x000006b1,0xffffdc82,0x00000965,0x00000bb6,0x00000cd8,0x00000d91,
-0x00000777,0x00000388,0x00000653,0x000006de,0x00000529,0x00000fa9,0x000003ee,0xfffff717,0xffffd9a1,0x00006a56,0xfffe2b6e,0xffff48d1,0xffff8e79,0xffffd2c2,0xfffed59e,0xffff65eb,0x0001b1ec,0xffff250b,0xfffd6544,0xfffbc84d,0xfffdfa39,0xffff0c57,0xfffe9863,0xfffe9255,0xfffd5bc2,
-0xfffb80c3,0xfffc4d34,0xfffd9bf7,0xffff41b0,0xffffe8d1,0x000025c9,0x000009eb,0x00000d04,0xfffff658,0xfffffc1d,0xfffffa5a,0xfffffcc1,0xfffffdcb,0xfffffd05,0xfffffda3,0xfffffc32,0xfffffb8b,0xfffff8cc,0x00002931,0xfffff93d,0xffffda2b,0x00003731,0xffffb98a,0xffffc6db,0x0001fdba,
-0x0002642a,0x000212ba,0xfffea059,0x00039193,0x00049037,0x0002449f,0x000101b0,0x00003217,0x00012867,0x00032813,0x0004f291,0x0006aff2,0x00056c7c,0x00048f06,0x0001ebf4,0xffff6d15,0x000047bc,0xffffdd2d,0x00000529,0xfffffeed,0x000004cc,0x00000152,0x00000263,0x000000cb,0x0000022f,
-0x00000018,0x00000487,0xfffffd8a,0x00000af9,0xffffd050,0x0000559f,0xffff4d02,0x00013ae6,0x0002a2b2,0x00036107,0x00040a1a,0x0003759a,0x0001be16,0xfffdea02,0xffff3843,0x000028b5,0x000161de,0x0003ee80,0x000377da,0x0000352e,0xfffd344f,0xfffadf54,0xfffa2339,0xfffaa79f,0xfffc01a0,
-0xfffe3600,0x00006167,0xfffffd12,0x0000000d,0x00000617,0xfffffc44,0xffffff43,0xfffffe09,0xffffff36,0xfffffe98,0xffffffbc,0xfffffd40,0x00000241,0xfffff5c1,0x0000145b,0xffffd813,0x000068d9,0x00000310,0x0000543e,0x00007ce2,0xffff0feb,0xfffceb49,0xfffba6c0,0xfffe1190,0x0002b23d,
-0x0003650e,0x0002d98a,0x00009810,0xfffc9ff1,0xfffc550e,0xffff3ebc,0x0002d4ea,0x0005328e,0x0005dae5,0x0004b88b,0x0003796e,0x00010ccf,0xffffb0b7,0x00001607,0xfffff51f,0x000000b1,0x0000006f,0x00000239,0x0000010a,0x00000166,0x000000fd,0x00000156,0x00000151,0x000001c7,0x000001fd,
-0xfffffd6d,0x00000194,0xfffff532,0x0000d5cd,0xfffd2a74,0xfffb5c39,0xfffe35fe,0x00061de3,0x00034c81,0x0000a673,0xfffe7c50,0xfffb2ac4,0xfffd0b4c,0x0003bc5f,0x000588c1,0x00050f71,0x00014a91,0xffffe295,0xfffecc85,0xfffe8998,0xfffe6b0e,0xfffeb8a5,0xffff2fc8,0x00001735,0x00001016,
-0xfffffbb7,0x00000796,0xfffffa7f,0xffffff27,0xfffffd30,0xfffffe54,0xfffffe2b,0xfffffd85,0xfffffe65,0xfffffada,0x00000256,0xfffff53c,0x00002c63,0xffffbe78,0x00001882,0x000028cb,0x00079867,0x0009c103,0x000ae292,0x0008fe9a,0x00076073,0x00052825,0x0002442d,0xffffeb85,0xfffed958,
-0xfffdb90e,0xfffdc06b,0xfffde3f2,0xfffeb9c8,0xffff4494,0xffffd89d,0x0000803a,0x00011e91,0x000134af,0xffff7c7c,0x00003b33,0xffffd6c6,0x00000a5a,0xffffff6c,0x000006cb,0x000002ed,0x0000045f,0x00000340,0x00000483,0x000004e3,0x0000061e,0x00000507,0xffffff3a,0xffffe769,0xfffffff0,
-0xffff907e,0x000010ea,0xfffe0e01,0xfffc9b1f,0xfffc94c4,0xfffc8300,0xfffcfc06,0xfffe0fd4,0xfffe6537,0xfffed1d3,0xffff0818,0xffff3865,0xffff6e35,0xffffe565,0x00008b7c,0x00012155,0x00018e4c,0x0001da2c,0x0001cddd,0x0001c883,0xffff69c3,0x00003d68,0x0000088b,0x00000752,0xfffff303,
-0xfffff8b5,0xfffff69a,0xfffff85c,0xfffff84c,0xfffff784,0xfffff393,0xfffff704,0xffffed8c,0x00000dd0,0xffffed36,0x00007836,0xffff4412,0x0002c63c,0x000231ee,0x00021cf1,0x00019bf1,0x00011527,0x00008e14,0x000001e8,0xffff685b,0xfffedc21,0xfffe4b59,0xfffe55f2,0xfffe60bc,0xfffe5813,
-0xfffe8c3b,0xfffeb167,0xfffee419,0xfffee775,0xffff1697,0xfffee065,0x0000650d,0xffffdba5,0xffffcf37,0x000005cb,0x00001036,0x0000151f,0x0000137e,0x0000130a,0x0000100d,0x00001571,0x000019d7,0x00001d0d,0x000014a8,0x0000165b,0xffffddcb,0x00002ad0,0xffff934a,0xffffa90d,0xffff2a28,
-0xffff2add,0xffff091a,0xffff0cbd,0xfffefb24,0xfffeeb9b,0xfffeeb3c,0xfffeea16,0xfffeda42,0xfffec1c9,0xfffe96d6,0xfffe6571,0xfffe7309,0xfffe79e0,0xfffe90e3,0xfffe8f70,0xfffec46e,0xfffe800f,0xffff0625,0x0000bce6,0x0000657b,0xfffffd33,0xffffd8a8,0xffffd14f,0xffffc309,0xffffc858,
-0xffffc40c,0xffffc4b2,0xffffbada,0xffffcd42,0xffffd596,0xfffffcd9,0x00007843,0x0000740d,0xfffed1d5,0xffff4a9e,0xffff440e,0xffff3e6d,0xffff34fd,0xffff2752,0xffff1e63,0xffff18a6,0xffff01af,0xfffeeb5a,0xfffeda7f,0xfffec55c,0xfffeb9a5,0xfffea925,0xfffeb804,0xfffebd16,0xfffec275,
-0xfffeca6b,0xfffec8a8,0xffff02a2,0xfffe5abf,0xfffe87fd,0xfffe61a0,0x00008947,0x00004c91,0x00009b73,0x00009b06,0x000097a3,0x00009869,0x00009728,0x00009918,0x000093ea,0x000056c5,0x0000849f,0xfffe9273,0xfffed20a,0xfffec5f7,
-};
-const UWord32 defaultHRIR_rom_AlphaR32_fx[470 * 86] /*Q30*/= {
-0x100cb860,0x0eef8620,0x13822fa0,0x03bfbf7c,0xfc41efd4,0xf5ba68d0,0x0822d810,0xfd7a6134,0xf5eecc80,0xf57c62e0,0xf5e038f0,0xf7b60930,0xf5f98590,0xf5a102c0,0xf5fd0030,0xfd6bb708,0x060f7ee0,0xf515aa30,0xfd1b6c7c,0x030560c0,0x11b23540,0x0de148b0,0x0edb67d0,0x0f0d2c70,0x0f1faf20,
-0x0f42a240,0x0f674600,0x0f89e680,0x0fd14ea0,0x1029fb20,0x1095f420,0x10f36760,0x117ff400,0x113b8180,0x10e3f6e0,0x0ffe4180,0x101a20a0,0x12abb7e0,0x10c05ec0,0xfa5f0c98,0x0c7b5470,0x03e36f60,0x046c52a0,0x07fa7bf8,0x06b65ea0,0x0aa712f0,0x07cc00b8,0x03c8cd8c,0x07173000,0x07dd44e8,
-0x06f32888,0x03515f80,0x058072f8,0x05db9da8,0x0744ab60,0xfc64e6dc,0x0d4f09e0,0x0f91bbc0,0x0f43d870,0x1065b780,0x10745600,0x10ecc420,0x1147ca40,0x118bce20,0x1239ed60,0x13545de0,0x14bf5420,0x16135d00,0x175ca760,0x172f3020,0x16143f40,0x138ab280,0x12bc2cc0,0x15e153c0,0x0f8672c0,
-0x0406bf50,0x07372178,0x015ae244,0x03013768,0x029bfe5c,0x0297aac0,0xfffff5aa,0x04fe9b30,0xfe9d21e2,0x064e0070,0xffb701df,0x03cc936c,0x002edd24,0x035baf34,0x0348d624,0x03386884,0x02267b18,0x08c95170,0x0f5e3a00,0x0e580210,0x10d1b000,0x10e66d20,0x11d12ae0,0x129c5ac0,0x134a7a00,
-0x14c361a0,0x16d906c0,0x190dfdc0,0x1b96f4e0,0x1e025d20,0x1d738180,0x1b4dd0e0,0x169c8de0,0x149f13a0,0x18339d60,0x0c289760,0x016a4864,0x06b972e8,0x038b4df0,0x02414a6c,0x02ecae14,0x01d1fa66,0x01b42fde,0x00b9df54,0x02475880,0x00349299,0x004cf80d,0x016e8520,0x00e923bd,0x0222c4b4,
-0xfeeba6d8,0x032eafa0,0xffafbf59,0x06dab0c0,0x0d7c1560,0x0dc92ea0,0x108a2b40,0x10925780,0x11cf9800,0x12f17da0,0x13878e40,0x15905040,0x18f53ec0,0x1cfaa5a0,0x215aa000,0x25b1c000,0x2557bb00,0x21979f80,0x1a4c0d20,0x15f54b40,0x20ddd680,0x1235f080,0x04157ad0,0x05243418,0x018b6fae,
-0x00528d44,0x030e6d14,0x01345fc2,0x0169e4f8,0x01221076,0x014141ee,0x0139247a,0x008b429c,0xffc34559,0x00821995,0x01e852e8,0x009f567d,0x03b489d4,0x00dc183e,0x079b8ae8,0x10026ec0,0x0fdb7fe0,0x1555d240,0x17615800,0x19d7b5c0,0x1aacf460,0x1f009d20,0x219d3a00,0x21ef5500,0x27681f80,
-0x28f2a3c0,0x2842ad80,0x26ad78c0,0x23c60200,0x208e9300,0x1d491ac0,0x219ce480,0x0ce29300,0xffa3c463,0x06bf73c0,0x07461b70,0x03872f84,0x04fbce70,0x016f4d64,0x01be7814,0xffefa4ba,0x00f8d616,0x00d8c047,0x00b2c54c,0x019f86d8,0x02019bb4,0x02698e4c,0x00ac99d6,0x03976b30,0xffd9c58d,
-0x089983a0,0x12301380,0x12c1f6c0,0x1944c980,0x1a65a240,0x1ccb4600,0x1e9c5e40,0x1d707580,0x1d9bcc40,0x1ef59560,0x22f2aa00,0x25f06040,0x27fde280,0x29f699c0,0x28b00700,0x25ee9b00,0x1f211ea0,0x312f7080,0x116472c0,0xfa052d08,0x0746d8d0,0xfd0082b0,0x0573d5b8,0xfd9b0110,0x0280756c,
-0x0046a662,0x02a77de8,0x0134cb3c,0x00b6c917,0x0159fb3a,0x016cec7e,0x01c75094,0x04154b30,0x0118b56e,0x04cc63b0,0x020a2dec,0x081a9f20,0x13ab0400,0x12f10580,0x19352080,0x1f1f7140,0x25f70840,0x2c211440,0x2db7ff80,0x2c27e7c0,0x276e4040,0x2212b840,0x23918ec0,0x29e64f80,0x2f92c600,
-0x344dbd80,0x3d7b1740,0x32a068c0,0x3c884740,0x195ef380,0xffb120d3,0x0eab7430,0xff48d1ac,0x0763faf0,0x02a69c24,0x01ff8eea,0x0024bc2b,0x02144ecc,0x02884268,0x01b2d2c8,0x00ef8c56,0x0027440c,0x022baf54,0x017ab64a,0x01b11da6,0x05df3a60,0xfe3ec348,0x0986f0c0,0x122bec00,0x11d75e40,
-0x16e21420,0x1aba6b60,0x1eff1380,0x22423fc0,0x25a6d0c0,0x278a6480,0x28438c40,0x294edf40,0x290a8a40,0x27fdf4c0,0x2b9bbf80,0x2e4fdf40,0x362476c0,0x34657140,0x323f0d80,0x215d4900,0x01116bce,0x05c94340,0x08426a20,0x00c0b3a9,0x05d8fc60,0x05978ad0,0x00951bf8,0x01ead7b8,0x000d6ebb,
-0x0199b11c,0x02476098,0x01da8a34,0x01cb9da2,0x010933c0,0x036a6b60,0x044b1618,0xfe0c03dc,0x0afb1230,0x1171a560,0x0ee13d40,0x10fc6c20,0x13855b60,0x186de040,0x1e4caf40,0x2204c380,0x252fe7c0,0x27ca9040,0x23561000,0x2185c300,0x23b98540,0x232a5d00,0x25a36640,0x2cae7540,0x2cac9c80,
-0x2038fb80,0x17cc4640,0xfec268bc,0x04adce28,0x00fb6152,0x00790ccf,0x03c7bbfc,0x01dd34f4,0x03c2ebd8,0x02c2d274,0x053124e8,0x00bb9000,0x0137e73a,0x0241b77c,0x03813464,0x03a4fd08,0x057c61a0,0x04da6fd0,0x01ed417a,0x099a4e40,0x118b1900,0x1006ada0,0x11e92c80,0x146bfa40,0x168ac9a0,
-0x172cb560,0x1742fa60,0x161e7900,0x1503b460,0x16257920,0x18ebf3e0,0x1ba7bce0,0x1b4dad80,0x1afa73c0,0x1b581180,0x1b2597a0,0x16a8c480,0x0db35050,0x04e42ee8,0x0a54f250,0x03a67ed4,0x04a48630,0x02f7f66c,0x02912a78,0xfef205fe,0x04ad1280,0xfd2632ec,0x07034270,0xfea676d8,0x03396750,
-0xfef72e02,0x02e683e4,0x013098d4,0x031f78c0,0x013ae848,0x099ea160,0x0f9b0700,0x0be130f0,0x0d326140,0x0dca9c10,0x0f421ac0,0x100d0c80,0x13574160,0x1618a7e0,0x18bf93a0,0x1953a5e0,0x197d3d00,0x19e86a80,0x192efa40,0x180ce760,0x17bdb080,0x1447c640,0x117b2b20,0x10401660,0xf89a8588,
-0x0af9d110,0x0289699c,0x039df114,0x0842a7c0,0x071446f0,0x0c1c8a10,0x09299200,0x04114050,0x08181400,0x09d57090,0x08a85100,0x04220e58,0x06b75e18,0x07568458,0x07f88248,0xfbcb2458,0x0c63dac0,0x0d6ee890,0x0ca43680,0x0d3b0060,0x0ce5d2a0,0x0d03eca0,0x0cbfcc20,0x0ec40d10,0x0ff74a60,
-0x11591880,0x126a44e0,0x13aad180,0x14f2dd80,0x13f92e20,0x12fcbfe0,0x128f8fe0,0x11316e80,0x107ab7c0,0x1535bf80,0x0353130c,0xfb8a31b8,0xf4c7b280,0x08abcc90,0xfc34c2c0,0xf44d47f0,0xf382d1c0,0xf3b7b830,0xf60c46c0,0xf3d74cb0,0xf3259030,0xf3a89220,0xfc1005fc,0x061a86c8,0xf2e478f0,
-0xfb93f3a8,0x0254a814,0x13ecf4a0,0x0f7c8a00,0x1037f1e0,0x10333620,0x102eb340,0x1039f8c0,0x0ffdba10,0x107f8180,0x10d66b80,0x11337d20,0x11bc39a0,0x122f8360,0x12ec6b20,0x1267ef20,0x122c99c0,0x11dbeda0,0x11b7c760,0x13698220,0x1dd3cc20,0x1c2dfa40,0x1ae77fa0,0x20c65600,0x1f9ab920,
-0x17273cc0,0x1eb4ab40,0x1e4f3b80,0x17ffa820,0x17bf2cc0,0x172e4b60,0x1632c1c0,0x16192120,0x161a36c0,0x158a8500,0x1d86c1e0,0x1e0595e0,0x153ec320,0x1daa8f00,0x1ecbbe60,0x196539a0,0x1a1dc9a0,0x1abe38e0,0x1b0f2ea0,0x1b60d260,0x1bb75280,0x1c1039c0,0x1c94d880,0x1d031820,0x1d6c2240,
-0x1ddb76a0,0x1e58a4e0,0x1f317b20,0x1edc9880,0x1e91a0c0,0x1de2e640,0x1d183060,0x2069ee40,0x2183b680,0x20470d00,0x1d2f7e60,0x1c79b020,0x1aa2b860,0x19dd1580,0x185a08a0,0x176e5be0,0x189e55e0,0x18c71140,0x18b08100,0x1721e0c0,0x17923dc0,0x16af4be0,0x175f8dc0,0x199efda0,0x18750960,
-0x1963b880,0x1afecac0,0x19edb300,0x1bc935e0,0x1ca99060,0x1d9086c0,0x1e8845c0,0x1faee820,0x21211ec0,0x22754100,0x23a16800,0x24cb9c80,0x26755300,0x28e26200,0x28d1bc40,0x27eb5a80,0x257477c0,0x2381cec0,0x2193fe80,0x21a94280,0x20977fc0,0x1bcb2f00,0x17a91ac0,0x1560d1c0,0x13805260,
-0x1221b5a0,0x105e28a0,0x0edb7530,0x0f6c61f0,0x0efbd140,0x0d9678a0,0x0f5be180,0x0ec6cc70,0x1068ca20,0x1263f460,0x124a3aa0,0x1598ae80,0x168bd320,0x173fb920,0x1a648c80,0x1ca45260,0x1e606660,0x205d4d00,0x22668680,0x2528b580,0x27530b00,0x29b62780,0x2c184780,0x2f686600,0x33a45540,
-0x33027940,0x3177c0c0,0x2c284000,0x279a5080,0x238f8e00,0x2391fd80,0x1dc18520,0x17251e60,0x1211bf20,0x0f640aa0,0x0c891720,0x08c2cfc0,0x067ee620,0x04dfd9d0,0x047d8c58,0x02e8c0d8,0x03369f98,0x03c132d0,0x04683e18,0x06ebdc78,0x07287bf8,0x0a287eb0,0x0cc35d20,0x106d43c0,0x12f580e0,
-0x16595740,0x19d7b120,0x1c44f6e0,0x1f20e6a0,0x221e9200,0x261e6840,0x2a108140,0x2d3d6fc0,0x30c41540,0x36b23580,0x3ede9780,0x3f7c1ec0,0x3c94d9c0,0x336e9e80,0x2bae3180,0x2c0b5fc0,0x2804e200,0x297a14c0,0x1d951480,0x15fa6ea0,0x122d0d00,0x0f3135e0,0x0b79a5b0,0x0923e5c0,0x06c49a48,
-0x06ae3638,0x04ca8fb8,0x042bf648,0x03b5c278,0x061a9d18,0x0869f230,0x09f594c0,0x0db90720,0x12662ae0,0x178b7d00,0x1f6d2c80,0x2685fd00,0x2cd66140,0x307e4ec0,0x351ffcc0,0x3b2a29c0,0x3c9296c0,0x3f59fc00,0x4138af80,0x4beb6580,0x4df90100,0x4a7c3a80,0x46471480,0x42f2e300,0x4153f980,
-0x3868fec0,0x3bd0b100,0x3257f840,0x2d0934c0,0x23b90980,0x1f349600,0x1663e5c0,0x11016920,0x0c6b6de0,0x091ca660,0x069fec88,0x066425d0,0x05f45ef8,0x05ad80c8,0x06ff13c8,0x0829bb30,0x0a89aba0,0x0f7072d0,0x135b72c0,0x170bb800,0x1c3d4000,0x218fe100,0x26079d40,0x2b1bc000,0x317aa140,
-0x394ddc00,0x42054200,0x49ad1f80,0x4f1d3600,0x50999900,0x575beb80,0x5928fe00,0x54b44f00,0x51cc7100,0x4e249b80,0x4bcc6a80,0x4640aa00,0x3b77f2c0,0x409c7d00,0x34698c40,0x254b6040,0x227c29c0,0x1b686d20,0x11ee0f20,0x0e25c790,0x09825860,0x0ac10a60,0x0c33eb80,0x083d9a80,0x08bd75c0,
-0x0a7191b0,0x0bb30b40,0x102b5ca0,0x13170ea0,0x144267c0,0x18bae260,0x1a627ee0,0x1c845a20,0x22df9780,0x293cd4c0,0x2a8e2c80,0x2e68b5c0,0x342c2800,0x3cfcb180,0x4775e280,0x523a0100,0x54757a00,0x501c1d80,0x496fb900,0x41991a00,0x3d990f40,0x359ab540,0x3d741940,0x26d03780,0x3a5b6000,
-0x3aa4df00,0x24741f80,0x1cbce5a0,0x17e76440,0x112aaba0,0x0dc14260,0x0a6839f0,0x0c3726b0,0x14f8be80,0x0b7b1a30,0x0824c820,0x0ac86fe0,0x0ea5ece0,0x0fe9fdd0,0x1506b720,0x18d5a880,0x19ff5b80,0x1bec5180,0x1b358640,0x1f1a3720,0x23d8e400,0x2ce68dc0,0x3310a600,0x374f7140,0x3da69240,
-0x4205e980,0x44965f80,0x4c707580,0x50572d80,0x52b72780,0x44a81980,0x38b34bc0,0x289d47c0,0x30bc8440,0x30512780,0x33f76c80,0x38ddb700,0x2935f780,0x1f9d21c0,0x19425300,0x1615b060,0x16187d60,0x10863840,0x1004b620,0x0e884c00,0x0c684390,0x0c84def0,0x0e174fe0,0x11055760,0x12a45880,
-0x16e94720,0x195c8840,0x1c1a4060,0x24e6a600,0x2520d780,0x26328240,0x22dfb900,0x271b35c0,0x2b8cf440,0x32d10b40,0x3799adc0,0x3d60d6c0,0x42f62500,0x4876ff00,0x4b828f80,0x4f0bb300,0x49efa100,0x45f22300,0x3c1fb200,0x3d3acd40,0x376633c0,0x352cf7c0,0x342f6c40,0x2adb37c0,0x1fe58ce0,
-0x1dc22160,0x1937cf00,0x14b38e40,0x13ba7820,0x123d1080,0x14929b80,0x0df475c0,0x0e01e5d0,0x0fefabe0,0x137af260,0x185aea00,0x1dbad400,0x1f2bfe40,0x217d0fc0,0x27279580,0x2a147300,0x29994080,0x255c4240,0x27244b00,0x2a903340,0x30378680,0x36c0ccc0,0x3e164c00,0x451ea900,0x4844f800,
-0x49480980,0x483db500,0x47f3e380,0x45b89580,0x3f022a80,0x3e0022c0,0x36ecb640,0x3450b580,0x2c4d4f80,0x28fbf580,0x221d4fc0,0x1e19b480,0x1a491540,0x15b429c0,0x146700a0,0x171223c0,0x14a5afc0,0x1aa66de0,0x12ab7f40,0x18bcca40,0x14b41b20,0x1ad13200,0x1c1883c0,0x1f18c160,0x21d7c540,
-0x265e4bc0,0x28e15280,0x296f2ac0,0x2b573880,0x2dea01c0,0x2fab3740,0x30f84580,0x345067c0,0x36cec940,0x3966e780,0x3bf0d840,0x3e9bd180,0x4158bc00,0x3fe45d40,0x3ecf9ac0,0x3d4074c0,0x3a4e8d00,0x30da9a00,0x32b34b40,0x22d6a640,0x2d025440,0x279d5980,0x25eb6880,0x27811780,0x24be5340,
-0x278b0840,0x28811680,0x2581b600,0x286d5300,0x265983c0,0x26405280,0x22fe8800,0x250d8a40,0x27916f00,0x2598b740,0x1d822140,0x2c0b0b80,0x2b6fe3c0,0x2ce812c0,0x2dbb8040,0x2ee23940,0x3055fa00,0x31bb32c0,0x32f749c0,0x34001b80,0x34fb9900,0x35a58500,0x361c98c0,0x37361080,0x35824080,
-0x3468c700,0x334562c0,0x3276ab40,0x2d8c0e40,0x2f78a300,0x2ea5f100,0x28b75a00,0x189d10a0,0x2ff17b40,0x28a52cc0,0x1a1b9600,0x19b8b260,0x1937a8a0,0x197eaa40,0x184dcae0,0x1884b000,0x18228de0,0x28249e40,0x2deda880,0x15fd64e0,0x27e76580,0x2ccb94c0,0x2d6f7e80,0x2b902080,0x2cdd1d40,
-0x2d090240,0x2d5e8380,0x2d7f3f40,0x2db005c0,0x2df29400,0x2e446100,0x2e990380,0x2f0bf080,0x2f71e900,0x300a6ec0,0x2f8d9440,0x2f4dfd00,0x2ed14a00,0x2ed65600,0x32be6300,0xfcd665cc,0xfd1df144,0xf95c1e48,0x0258aca0,0x0abee510,0x19fba220,0xfe2a5e3c,0x09545430,0x17513e40,0x17c6dc80,
-0x17adf860,0x17215880,0x18926920,0x190d8120,0x1951bd60,0x09a59ac0,0x005aecd3,0x1b695740,0x0ad23dd0,0x03ceb504,0xfb0eb860,0xfe3319d4,0xfce90cc4,0xfc9dfee8,0xfc9594f0,0xfc9d4294,0xfcd00224,0xfccf10e0,0xfca9cdb8,0xfc748aa8,0xfbd2b650,0xfb309f38,0xf9e43530,0xfaab1460,0xfafa31a0,
-0xfbbe6658,0xfbaa0d00,0xfb0422c8,0xfaef0038,0x105a6a40,0xfe3b09be,0x055f1e00,0x061d6288,0x01e92340,0x0325690c,0xfeba9a6c,0xfff8462e,0x0403cd68,0x00c35ef2,0x017ea98e,0x01bde54a,0x071e32b0,0x056e3cf0,0x0355490c,0x049139c8,0x0f61a590,0xfeb5e188,0xfe764242,0xfd820e6c,0xfc4e30f0,
-0xfc295798,0xfc3bc144,0xfceb9e9c,0xfd31c9a4,0xfcdf5870,0xfc0a1af0,0xfa281180,0xf7cabe30,0xf3fbd8f0,0xf513d670,0xf60dd4a0,0xf8a98fd8,0xf9898f28,0xfa72f270,0xfe892356,0x03fd40c0,0x01c5b480,0x0744a8e8,0x06a56a18,0x064326b8,0x047d39b0,0x06963620,0x032d57f8,0x08b77e90,0x02a6543c,
-0x093dcd80,0x0461bb28,0x08c6e070,0x0622a8f8,0x06ac4000,0x08b57ce0,0x082b9d60,0x041e0668,0xff64398e,0xfe702ac8,0xfb9b23e8,0xfb7078e8,0xfbbb3540,0xfd315e34,0xfdb44e2c,0xfd92dd70,0xfc0a0684,0xf8ce9cd0,0xf3789eb0,0xeba31440,0xeeb13480,0xf0a49e20,0xf701bd20,0xf9b58f50,0xfba51180,
-0x03d67684,0x097f51d0,0x0350eec8,0x04f1da60,0x06a5e148,0x0560bb48,0x0488b220,0x0315f4fc,0x037b0e4c,0x033c1724,0x04b7d5d0,0x045d25c0,0x04286748,0x0567dc30,0x0598d108,0x0999fe90,0x07f01b00,0x0ac83a50,0x06e59fd8,0x024889a0,0x002197e7,0xfc9e078c,0xfc90d808,0xfd24cfb8,0xffdc5839,
-0x01c37a1c,0x00f5f519,0xfef2af36,0xf962f0b0,0xef930da0,0xe12623a0,0xe3f56da0,0xe83cc860,0xf3472fa0,0xf9e47110,0xed59b560,0xf4650540,0xfde93cc0,0x0421b4c8,0x05e1fad0,0x057bd570,0x019db0a2,0x035b286c,0x01f59e14,0x025e7a24,0x03bb7fcc,0x0497fa68,0x05795e10,0x05b520f8,0x05d79b80,
-0x060a4c98,0x08c46d10,0x0981d140,0x0cab0010,0x06820ca8,0xfd409c58,0xfac96338,0xf2fc4880,0xf1d76150,0xf11498d0,0xf24e3dc0,0xf1b512c0,0xf2d44620,0xf90c33c8,0xe57227c0,0xe19e8a20,0xe35db580,0xe778c460,0xe9181800,0xe8ff5e60,0xed62cd80,0xd7e8fa00,0xfc31a240,0x0df118f0,0x087e27f0,
-0x05573318,0x0a033590,0x07ecc6e8,0x0b67c010,0x07eb66a0,0x07a0ff40,0x07e57208,0x0421c658,0x02e75dd4,0x01fb10e8,0x02f05ee4,0x04573df0,0x07729a30,0x077c1660,0x0dc115c0,0x060c9f50,0xfce5c674,0xf9aa6480,0xed88a520,0xe7f84280,0xe0dfb900,0xdb843d80,0xddcb7100,0xe0f14e40,0xe6d0e460,
-0xdf58be40,0xdd8abdc0,0xde0d5300,0xe3032f80,0xe32ff780,0xdd6b4480,0xd8a836c0,0xd97649c0,0xea678a80,0x0b09dd70,0x04798930,0x0aa40550,0x03198d48,0x0daa5790,0x0812c880,0x0905f570,0x07575c88,0x0e848490,0x0b850410,0x0b09b250,0x09bd72b0,0x07c04fa0,0x04cd0108,0x0b49fc50,0x08dba730,
-0x08d673b0,0x0573feb0,0xfa288aa0,0xf487d980,0xe8543580,0xe3741120,0xdc307840,0xd4bc2400,0xcf297ac0,0xce689440,0xd3ddb100,0xe3e2af80,0xee535540,0xefb18b80,0xfc028438,0xfa6a6038,0xf4c2dce0,0xe56a4080,0xf6ff78a0,0xf1955310,0xff9b1681,0x02ecc10c,0x0e783b30,0x05a5abb8,0x0a5c2250,
-0x09020470,0x099d63b0,0x0a5a7f30,0x13af3ba0,0x085d2cf0,0x062a82b0,0x0a49c950,0x087a54f0,0x0c286090,0x0ca83f90,0x08938320,0x0eacd410,0x037276c0,0xfc22b9c8,0xf9717f70,0xf1da3c00,0xe8283460,0xe09c72e0,0xdd241200,0xd911e200,0xdb119900,0xe20f5ca0,0xe4947560,0xeb41ea40,0xeec1a1a0,
-0x01420964,0x10ea1100,0x24a1c0c0,0x033c3a90,0xf8e49ad8,0xef9cc820,0x002d3cea,0x03a2aa24,0x05c5a3c8,0x0b98bac0,0x0798ec70,0x04a93970,0x0c79ad30,0x0ba77200,0x12c67bc0,0x0c123a00,0x0aa3c180,0x0c5d95c0,0x0cb4d9d0,0x0fce7030,0x0c928d00,0x0eba1090,0x16605360,0x033d950c,0xfa27f298,
-0xfa36e2f8,0xf9eb0668,0xf65bb4a0,0xf00686c0,0xe71c5180,0xe3742640,0xe0858b00,0xe039d720,0xe642b340,0xef4f19a0,0xf30e53a0,0x0223b048,0x04893838,0x0525a6a8,0xfb6d4258,0xf7f45590,0xfaa9c5f0,0x0db9f030,0x0980aa80,0x0fa1c230,0x0cf1bc00,0x09cdb2b0,0x0b0fafa0,0x0c4fb500,0x0eef2460,
-0x09104df0,0x10d98540,0x0ef9b5d0,0x0d9758a0,0x0bd47f80,0x0b598610,0x0944bc70,0x0c26bb50,0x119338c0,0x04a96f88,0xfb96dfe8,0xfe8e04fe,0xfd5a0a00,0xfae78328,0xf731da80,0xf3c39ab0,0xf011e100,0xee954e80,0xf022e860,0xf0e22d30,0xf315f630,0xf820b860,0xff22bed3,0x0267ec30,0x0571c768,
-0xfe940b9c,0xff011616,0x0655f908,0x1414dca0,0x0c184a50,0x146b8c20,0x1182b160,0x129870c0,0x11494b40,0x15cc9400,0x0c6bcd30,0x159f4980,0x07457648,0x166c2ac0,0x0d078d70,0x1647b560,0x0ee18e00,0x117e23c0,0x0f472390,0x11b26740,0x06be07e8,0x002a0170,0x06b2a618,0x065bad50,0x04504fa8,
-0x01b57186,0x0062bd58,0xfcf5f964,0xfa5c25f8,0xf7361960,0xf7830de0,0xf80a1b10,0xf86cceb0,0xfb1cae50,0xff18dcb5,0x04186be0,0x04725608,0x0264c2d4,0x01185226,0x29c1a8c0,0x073c1618,0x13ffc1c0,0x12ae65e0,0x09607c00,0x0a8a8240,0x020b4bbc,0x04ce1188,0x0c7fa220,0x04e7fbc0,0x041fa190,
-0x049eb910,0x0f10bb20,0x0c5cab70,0x0a8c3ab0,0x0d076500,0x24a11300,0x05dfe250,0x071ff650,0x08c57d90,0x097e5fb0,0x0aceb360,0x0ba8ad20,0x0cc27df0,0x09d2d970,0x08147db0,0x063bd720,0x05352688,0x03e235ac,0x025af5cc,0x02cc1428,0x029e88f0,0x0212dccc,0x02a59e48,0xffcafd8f,0xf7a56020,
-0x0ee92430,0x1db7d040,0x3417b980,0x0441cda0,0x1a236000,0x302dc1c0,0x31877e40,0x313b4e40,0x2e59d500,0x3194dec0,0x3241ba40,0x31ad1b80,0x19a20580,0x07bb9b08,0x365545c0,0x1c267d60,0x0f7beb60,0xf92a0d60,0x0107b034,0xffc8e291,0x0054dae1,0x00f0b698,0x018f101a,0x02c27fe4,0x01dfa878,
-0x01641dce,0x00d5641b,0xffd96918,0xfeffe944,0xfe014f10,0xfe06e97c,0xfdf0ff54,0xfdedb7f4,0xfdbe1e74,0xfc0f84e0,0x07530ba8,0x075749c8,0x0a4ee000,0x02f9cffc,0xfdd3b280,0xf7f98e20,0x0512ae80,0xfe95c76a,0xf902e148,0xf8bb9118,0xf907bfb8,0xfa16e968,0xf9460080,0xf9141400,0xf8fdb0c8,
-0xfebeb31e,0x03d9c11c,0xf866cdb8,0xfe5d0462,0x022c6d74,0x088cece0,0x06c0b700,0x071e13a8,0x06dfe6f0,0x06912a20,0x063f89c8,0x0600e178,0x0585a358,0x055ef868,0x055a4560,0x05b51528,0x063ff6e0,0x07242c20,0x075e70e0,0x0771cc80,0x0704a5f0,0x07c0e170,0x0a311770,0x09f14620,0xfc1d5140,
-0x08106aa0,0x02aefd74,0x0262a9cc,0x0473a3a0,0x042cd4b0,0x066fe650,0x0588af68,0x03e15d70,0x0561d728,0x056009e0,0x048f8970,0x02bf0bfc,0x038c1780,0x04226ce8,0x0476e4c8,0xff31d225,0x07f13c30,0x08b81740,0x08882b80,0x082a4db0,0x0794b810,0x06e0e558,0x062e8860,0x04b7cec8,0x041a1780,
-0x041eb118,0x04994060,0x059dea88,0x07853640,0x084bbdd0,0x092f1170,0x08977510,0x09c399d0,0x0f147850,0x0ca89270,0x07703bb0,0x084656a0,0x03301204,0x037a8d5c,0x02ed608c,0x04127288,0x0252dec0,0x050348c0,0x03356228,0x06600b70,0x02ffd51c,0x03d2501c,0x03140e6c,0x045e08f0,0x0387d60c,
-0x03e5267c,0x04357ed0,0x071f19b8,0x097d9a70,0x08aa9cd0,0x07b71500,0x063a7c78,0x044a2880,0x02c2cfe8,0x0019d259,0xfefba848,0xff19f818,0xfff2351b,0x037347ec,0x086c6e00,0x09dc7940,0x0ad28e20,0x091f38f0,0x0bf8f5f0,0x11606e20,0x0b4f1f40,0x076d92d8,0x0befda90,0x070b9670,0x0405cd08,
-0x03f59d34,0x04bf94d8,0x04830da8,0x04823990,0x0615ba90,0x04451ae8,0x0483d1c8,0x043a8468,0x0528ace0,0x050693f8,0x04383078,0x05a446e0,0x0644f470,0x0933a7f0,0x0b7bdb80,0x0b99a530,0x0ac48a90,0x095d37c0,0x07a123c0,0x05af3958,0x01482984,0xff9529ec,0xfeb29c9a,0xfef03c74,0x01a759e4,
-0x06feb850,0x08a02740,0x0aa3d1c0,0x0a54d0d0,0x0dc61af0,0x2d6e5d80,0x266a5e80,0x13064740,0x10d251c0,0x0cfbdb00,0x0c305c30,0x0da48bf0,0x07df03e8,0x05bcd050,0x04600238,0x045724d0,0x04c9b1f0,0x040d7d30,0x02eb6178,0x031ea968,0x03e9b550,0x054e6738,0x0415e778,0x01bafe38,0x035f2cd0,
-0x0478fd58,0x00a20534,0xfce7254c,0xf5d03fa0,0xee93b880,0xe81d9880,0xe6dd5820,0xe4c7a160,0xe0d7ca00,0xf0b39120,0xfeaef848,0x10e8b800,0x17f101c0,0x1daf9b60,0x1f251b00,0x215076c0,0x3ed73940,0x15c5f3e0,0xffb0a028,0x08f043f0,0x0a1d98d0,0x066fcce0,0x071af7f8,0x057f2e08,0x07199d08,
-0x06625390,0x0751bde0,0x0498f178,0x03e45998,0x02d4edc8,0x04fb9c20,0x04bfce30,0x01f12800,0x01ff4ce0,0x00542045,0x07b8d400,0x0b756f60,0x0b7561e0,0x0f3bef90,0x0f01c6a0,0x0d3dd6d0,0x07efe248,0xfd6ff4c8,0xf61296a0,0xf1253920,0xf70718a0,0xfe52a9e4,0x10128a40,0x1019a900,0x1b614960,
-0x2d165680,0x37a13880,0x3914fc80,0x25664880,0x06b2bd08,0x0eba00b0,0x0266b27c,0x096c3d70,0x01f1c658,0x05d91950,0x0598b808,0x069f0ec0,0x0abe80e0,0x065e53f0,0x04c79fe8,0x0215f7b0,0x03da1cd8,0x05c317b0,0x0283f104,0x0910d160,0x098f4e80,0x0e534a60,0x1813c040,0x18a00020,0x1b298260,
-0x1bbf26e0,0x1b627ce0,0x1a1d0180,0x184f78a0,0x135dc020,0x09e0aa90,0x05744dd8,0x099b4850,0x1584ea60,0x0ffd2480,0x0df8b370,0x0ec57320,0x25397200,0x0c044630,0x1dd27a20,0x13de9960,0x0f2345c0,0x0727de28,0x0b2cd9e0,0x0849c090,0x0a106110,0x07b5e1d8,0x085bcc20,0x09f37330,0x05eca9d8,
-0x05d31af0,0x05a5fcd8,0x05a8c2d8,0x05350258,0x04ec8890,0x075824d8,0x054faf60,0x0e9e9770,0x1813bf40,0x1791ef40,0x18a5a060,0x165791c0,0x178ddfc0,0x192c0260,0x18f92160,0x14fe9ec0,0x0cf6dc40,0x05e606a8,0xff219783,0xfcc57bdc,0xfabc7238,0xf706a970,0xea251100,0xfec11bbe,0xf6c79110,
-0x0ac21c90,0x0d337f20,0x0c82d410,0x0a805240,0x09fa4c80,0x072961d0,0x03405bd8,0x04132100,0x042cf3b0,0x04b9a7f0,0x07368c18,0x06ad36e0,0x02daf554,0x01228dbc,0x00511e74,0x017a4f3a,0xffcd06a2,0xfbf5fe48,0x024921a4,0x0b16e260,0x102d7d00,0x1a1e1640,0x194247a0,0x19d60020,0x18310460,
-0x16078e00,0x1127a100,0x0a03c370,0xfdab8968,0xf34944b0,0xedfec200,0xe8b77c60,0xea6c6660,0xeccf22e0,0xf17d14d0,0xf31c0a00,0xf9b22768,0xfb5eefe0,0xfcc8f070,0xfebc3bb0,0xfe2a33ce,0x00653c01,0x048ab838,0x0161e3d0,0x0026101f,0xff73612e,0x03c57eb0,0x0536c5e8,0x03dc1d50,0x02eb05e0,
-0x00004933,0xfc8197c8,0xfd680580,0xfab273a0,0xfcb0ef1c,0x0330e8bc,0x07237b00,0x12670e00,0x152e9280,0x15f90e20,0x1310aae0,0x10459200,0x0af71db0,0x03f5432c,0xff01e08d,0xf97f7570,0xf0de1e10,0xec321ce0,0xeb4233a0,0xeaea33a0,0xeef6c5c0,0xf071b7d0,0xf2730100,0xf5dd7d70,0xf938a3d8,
-0xfdad3084,0xffacbebf,0x00009dec,0x01c2bd28,0x00fecb1b,0x0128d202,0xffde1763,0xff8e84af,0x0045dde8,0xff7deb36,0xff9d1f04,0xff0be026,0xfe26dbce,0xfe53ed66,0xfc6779b4,0xff9e24e1,0x04383748,0x04ad69e0,0x06b07758,0x0879dd90,0x0ba469f0,0x0f104c90,0x0ce0bd40,0x0b7b4490,0x0aa2b510,
-0x048f9cb8,0xfec5c874,0xf8df2d70,0xf4c01ac0,0xef989400,0xe9e5ada0,0xed8440e0,0xf0dcfa00,0xefce3680,0xf31bc8f0,0xf292bc20,0xf38b7ab0,0xf3e5cf90,0xf568c9b0,0xf6853420,0xf747d470,0xf69f2e00,0xf6dae290,0xf7641b70,0xf89ec0c8,0xf8a793b8,0xf8b8a288,0xf7fabee0,0xf76e6890,0xf7d50c50,
-0xf801e5d8,0xf5117cb0,0xf46b1830,0xf35e6a20,0xf2b98cb0,0xf19b5930,0xf0104be0,0xef01d620,0xee5cfda0,0xedb2ece0,0xed31a3e0,0xecac6420,0xeca1d9c0,0xec4726e0,0xed833ea0,0xeefa5840,0xeff241e0,0xf0550510,0xf25959e0,0xf25d8d80,0xef980440,0xef7b9220,0xf3fe92d0,0xf11f5a60,0xf072bb50,
-0xf3606ff0,0xf3517540,0xf3aa0be0,0xf4230380,0xf410fda0,0xf3f78320,0xf4511910,0xf1336340,0xf235a600,0xf55dafa0,0xf110de90,0xf1bde840,0xf4643720,0xf40f8ca0,0xf3946520,0xf343c240,0xf303e5a0,0xf2e88730,0xf2927d90,0xf2619e70,0xf21be450,0xf1c70660,0xf1c53b10,0xf1a72780,0xf15ad4d0,
-0xf1b59f30,0xf1ccceb0,0xf22daf80,0xf2012cf0,0xf1981f00,0x082a6c50,0x07ce9dc0,0x06427e40,0x097e9d00,0x0b10c480,0x0af76bf0,0x08500e20,0x09b0b5a0,0x0a285f50,0x0a1ed260,0x09f5c280,0x09b6f050,0x09bb88f0,0x09a50fe0,0x0952b660,0x096775c0,0x085e60f0,0x097a8520,0x098c3250,0x08c3bde0,
-0x0695b8f0,0x07567710,0x07833e98,0x07eaf800,0x08208e00,0x08488bf0,0x0852de70,0x085521a0,0x08325920,0x07fdd828,0x07d1cf30,0x07764fd0,0x06e494f0,0x068c70c8,0x06ce9cc8,0x07d885a0,0x0793dff8,0x07b6a3c0,0x08118af0,0x0e4b50c0,0x08323910,0x0a69cf80,0x091af0c0,0x07da7878,0x07878a88,
-0x06a781b8,0x0765a4f8,0x08907ba0,0x07fdebb0,0x07bd0b88,0x077a7318,0x080e7f00,0x0811e740,0x0852b340,0x0813ac20,0x098d4530,0x07275d70,0x072c3b40,0x07f317d0,0x08e3bcb0,0x09888830,0x09e2e980,0x09cb0530,0x09ecf670,0x09c7dac0,0x092ebe30,0x08eee640,0x0819b690,0x0714fbc8,0x0592a0d0,
-0x058efae8,0x07c99e38,0x07c580e8,0x04f85588,0x07472d98,0x0c23d910,0x0a488f00,0x0bff7a00,0x0904f5d0,0x07e40798,0x06aae760,0x06697940,0x05cb9658,0x0801e160,0x06bb06e0,0x06fc2be8,0x05eb9150,0x06d91178,0x06f5bea8,0x07ae8f30,0x073c44c0,0x083dd3c0,0x06a95368,0x06d1f328,0x08ae13d0,
-0x0a8d0270,0x0bda0810,0x0c781320,0x0c060240,0x0b9e84a0,0x0a87fa20,0x096322d0,0x09aebd50,0x08271550,0x05e3e7d8,0x0287ab00,0x037c6b30,0x07a37d08,0x069abbe8,0x0055cd9c,0x07a7f0a0,0x0c014130,0x05efb960,0x095ed680,0x07f7f1c0,0x057cf7d8,0x03f21a44,0x02e4e2f8,0x033af0fc,0x057fc2f8,
-0x04ef77b8,0x04ff80f8,0x0423c1a8,0x05434b48,0x05f27cf0,0x05c1bb60,0x06cdbbd8,0x077a7338,0x05109160,0x0573c070,0x074459d0,0x0982c2a0,0x0b238f70,0x0b850410,0x0a3af6b0,0x09bcdc20,0x08eab6b0,0x0802fc10,0x08b488e0,0x088e9df0,0x077f6fd0,0x02b3e3ac,0x027805dc,0x05559c90,0x03a9fc78,
-0xf2b0fca0,0x06159d18,0x18eee840,0x11284760,0x112efce0,0x0de1ff80,0x09069dd0,0x0af7b2f0,0x08845a40,0x06bcc3e8,0x06e35680,0x058d21e8,0x04d12840,0x02e2c8f0,0x05462b88,0x064041f8,0x06346a98,0x0743cc48,0x089991a0,0x0a1c3cb0,0x0cd8af00,0x10edb1c0,0x17871d60,0x1ab35a40,0x1cdc28e0,
-0x1c55a080,0x18490740,0x1526e4c0,0x12871440,0x0ff9cf90,0x02c2f564,0xf1193e80,0xe8644040,0xe98e9a40,0xf35354c0,0xfbe07158,0xd255bfc0,0x03254cfc,0x1b386fa0,0x0957de90,0x06252d68,0x08aafbc0,0x05614d60,0x05833990,0x05af4e80,0x0687b138,0x06b5e260,0x06a255b8,0x06d75530,0x054bca00,
-0x05a401e8,0x0661a888,0x08c6a5c0,0x09e18bd0,0x0b51cad0,0x0a1e0b80,0x0863ce70,0x0a75e080,0x0e1dd000,0x106fc2e0,0x136b79a0,0x16cc5ae0,0x19628160,0x19ea0f80,0x184fd080,0x11c1cca0,0x083784b0,0xf7185f10,0xeaea95a0,0xdce260c0,0xcaf583c0,0xd581eb80,0xb2518680,0xe46f9020,0x0d4a29b0,
-0xfa6521f0,0x0e4d2500,0x019e700c,0x0cbae9b0,0x056b7860,0x074a9060,0x06810d90,0x0a9efcc0,0x040b9068,0x01e3ef24,0x02ede8cc,0x06631818,0x081488b0,0x09e7f940,0x0a883180,0x0ddc0f50,0x0b3a6010,0x07470588,0x09903a20,0x0985af00,0x0984d580,0x08cdc500,0x07a29a58,0x033a3cfc,0xffa0177b,
-0xfe786c88,0xf46ef390,0xe7544780,0xd55bc680,0xd042c7c0,0xcf2eb580,0xc6d130c0,0xc0a2d680,0xc99e4940,0xcc348ec0,0xec1b0fc0,0xed8cb3c0,0x0211bce4,0xfba3e600,0x025adc94,0x0014b942,0x05b5cd20,0x036af350,0xfffbaaaf,0x06bfaaa0,0x094b4210,0x055ee420,0x0701d308,0x06a2cb58,0x06a341b0,
-0x062e73d8,0x0b62dac0,0x0b16dc70,0x0816aab0,0x08e60440,0x05db5ff0,0x07517c58,0x0214e3ac,0xf8db0180,0xefe77e80,0xe9c7a700,0xe86495c0,0xe52d0f60,0xe2797a40,0xde3fbf00,0xd7b3a680,0xd5c40000,0xd8c0a440,0xd368d080,0xe193a720,0xdd4972c0,0xe6c3dce0,0xee43c5c0,0xf1bd60d0,0xf9c6b760,
-0xfb5545f8,0xff6f91ad,0x0264d360,0x02ee0a0c,0x00b28eed,0x043bc528,0x04cc6768,0x03c6f20c,0x04fc54b0,0x054d87e0,0x07731130,0x07055c50,0x083bbe30,0x099131f0,0x0b58b2e0,0x09ff02d0,0x01bd6660,0xfc3f6b8c,0xf760f490,0xf6237260,0xf1e7c480,0xf148f4b0,0xf2b4d170,0xfaf49c88,0xfddc3138,
-0xfaacb608,0xf31636c0,0xea3a14c0,0xe2d19e40,0xe1107900,0xefefbb60,0xef204ba0,0xf5dd6260,0xf9f77190,0xfd69ffd0,0xffa69143,0x004852e6,0x01ec6344,0x019f7704,0x017c35a4,0x0223acc8,0x013eb7f6,0x01a9a862,0x01ffbc62,0x0143bdd8,0x01a325f2,0x04a21c98,0x032afe40,0x04e92e28,0x074eefb0,
-0x05218260,0x03b4fb0c,0xfe57e3d2,0xfcd6d618,0xfcaf2758,0xfef0bca4,0xfe40ed6a,0x002efa6f,0x029c2ba4,0x00e1a2a8,0xfee11ff6,0xffa411d0,0xfaaba880,0xf4a63c60,0xef158b80,0xee8e0d40,0xf87c4138,0xf7589d80,0xf50a9170,0xf64e55e0,0xf5791960,0xf8ae6b48,0xfb127368,0xfd93f5ec,0xfdb6c71c,
-0xfef9bfa2,0xff318542,0x00188236,0xffbd7477,0x000c6d4f,0x0043894a,0xff83f73e,0xfe7ce338,0xfe2d7f2c,0x004bda8c,0xfabe7500,0xf59aafe0,0xf5185450,0xf324ce60,0xf2a9cda0,0xf0dfcca0,0xef258460,0xeedf1920,0xee6b0480,0xee1b91a0,0xf07b3da0,0xf28dba50,0xf4459500,0xf58fcd60,0xf701ed40,
-0xf74aa910,0xf76b41d0,0xfea599f4,0xff6252aa,0xf6c7a370,0xfff9915b,0xfdaf5000,0xfe35106e,0x0030bba5,0x00a499b5,0x01cf8acc,0x00c418c4,0xff92c5aa,0x002fa1e1,0x003d3486,0xfff86e9a,0xfd5fe020,0xfcb3b2a0,0xfd331790,0xfc1c8648,0xf85e7cb0,0xfb62c3d8,0xfbbe5240,0xfb76afa0,0xfad41f18,
-0xfb081c38,0xfb8a6e48,0xfbc58bf8,0xfc00d73c,0xfc720d8c,0xfcbeaa7c,0xfccfedd0,0xfcb6f0e0,0xfcd227e8,0xfcf8cb7c,0xfd07f700,0xfd7f5868,0xfded854c,0xffe5e689,0x02192150,0xfbad82f0,0xf8b60350,0xf3607080,0xff232d51,0xfaa7f200,0xf610fd20,0xf5b26c70,0xf5fcec40,0xf64999d0,0xf6056840,
-0xf5c08410,0xf5db18a0,0xfa8074d0,0xfde76d90,0xf44ab2a0,0xf91d2500,0xfaf48640,0xff504c20,0xfe1f79c6,0xfdf19fd4,0xfdd6c5dc,0xfd4c93c8,0xfca1cef8,0xfbf7b928,0xfc988c68,0xfd0c8294,0xfd88f520,0xfdf2eac8,0xfe715e68,0xfeec17b6,0xff3d8504,0xff920d30,0xffd67ecc,0x0018ae56,0x00eeb69e,
-0x022c2c2c,0xff987855,0xfeea84d2,0x02846dd8,0x04940318,0x07a68040,0x024db458,0x0529cf68,0x06e573e8,0x07164258,0x072f6aa0,0x075008f0,0x07aaec10,0x07c16450,0x079f5218,0x05537af0,0x037f0804,0x083010d0,0x05a0e168,0x0459f178,0x016b01bc,0x02224a74,0x01fcf8de,0x0234ea24,0x025c8b68,
-0x02960af8,0x02d23c00,0x03270790,0x03885310,0x040621c0,0x03e21410,0x0378df78,0x02da9054,0x01d2f704,0x00c946ad,0xff58a570,0xff43aea6,0xfb810b48,0xfc7542ac,0x03a69b58,0x00217325,0x02c02dfc,0x02908c2c,0x0233ae34,0x032449dc,0x02c9d4d8,0x0376e3a0,0x04a5f460,0x03fa88c4,0x03cdbf8c,
-0x039cc36c,0x049327c0,0x040c00e8,0x04441778,0x04333e80,0x06406a68,0x02b1c5a8,0x023b749c,0x02759e44,0x02fc3a04,0x032fd148,0x03958d5c,0x0431e768,0x04d4ae20,0x05c404c8,0x07354438,0x07c5fc20,0x0742d370,0x054c4650,0x02ed15ac,0xfff92254,0xfc6b2d24,0xfbab3280,0xf47876b0,0xf7af8480,
-0xfbf95ee0,0xfcf5dd54,0x00d5942f,0x01673eca,0x02133c10,0x02e1c2a4,0x03fe833c,0x03cc304c,0x0605a768,0x04502488,0x05a36f60,0x03c4f5b4,0x04cfc398,0x044638e8,0x04ebf720,0x059daa38,0x0502bc10,0x03eaba0c,0x0284bc40,0x02c165d0,0x03d87ba8,0x04a71900,0x06163410,0x081148b0,0x09fcd670,
-0x0ca2dd00,0x0ecaac80,0x0e3fb9a0,0x0b867f20,0x0710de28,0x0274e918,0xfc3dbda8,0xf5468450,0xf4ad6220,0xf203dea0,0xf50fec10,0xfa6fc260,0xfccba410,0xfe63692a,0xffb6806c,0x00171a35,0x01ec08aa,0x027d4ad0,0x03770344,0x05068840,0x052a9e78,0x04f75c18,0x03e0c8e8,0x047fcc10,0x049676f8,
-0x06a1b2b0,0x056fbcd8,0x0545beb8,0x04ca6800,0x036ceaa8,0x0372f9e8,0x05217f28,0x05a890a8,0x0737bf38,0x09a23830,0x0be409c0,0x0ec8d3b0,0x12f4e7e0,0x151d6300,0x12edaee0,0x0c9671f0,0x059feff8,0xfcc86f4c,0xf2f215d0,0xf23fbeb0,0xe2b6d2e0,0xe18dd620,0xe68d5a00,0xf2d9bd70,0xf766aba0,
-0xfb664a50,0xfd420250,0x001fb02d,0x014f462e,0x035689e8,0x04b927f0,0x05860dd0,0x05b2b070,0x0440d2d8,0x05819318,0x05d142c8,0x0700feb0,0x08137300,0x08e2c7a0,0x066a4de0,0x0282e454,0x02fb483c,0x040eede8,0x06f8cff0,0x0bda5b30,0x1269c840,0x18803fe0,0x1b77f900,0x1c814600,0x0c4922e0,
-0x051ec758,0xff02bee1,0xf93fa6a8,0xef6e7840,0xe173f4c0,0xdd922500,0xfa0a4638,0xe19b5900,0xdef26000,0xf01bf7b0,0xf5037820,0xfaf4ad78,0xff83afdc,0x02bb385c,0x0399687c,0x04f9f998,0x06ed7a40,0x05593580,0x04bb37f0,0x0343abc4,0x04e9b950,0x05644b78,0x05a33028,0x069cc5a8,0x0797d278,
-0x06384818,0x076d5458,0x08ad79b0,0x080f1d10,0x081871b0,0x06757420,0x04304648,0x00784ef3,0xfb71f0f8,0xf7370da0,0xedb7fe00,0xe74b1260,0xe23cff00,0xf303db70,0xfd5069ac,0x079b5a10,0xfb556b38,0x2a2f61c0,0xf699b1f0,0xdc896e40,0xf4ec3c00,0xebb05e00,0xf941e140,0xf80f0d40,0x000b589c,
-0xffe9302a,0x02173298,0x062d9148,0x057ac5f0,0x0589fa10,0x05714450,0x0603a200,0x057a0578,0x0702aa10,0x05114768,0x059285f0,0x059f9ee0,0x03e4174c,0x02237d4c,0xff75f208,0xf8bead30,0xf5454f30,0xf4851e20,0xf35e33d0,0xf0a51520,0xeca1f440,0xe7f9c120,0xe5ee2640,0xec3f0ca0,0xf8c96cd8,
-0x06c55dc0,0x21063000,0x2112f5c0,0x28fbf240,0x1c3478e0,0xfa739830,0x065446e8,0xf74287d0,0x0228ffb4,0xff251577,0x00f1f6b0,0x0335aa9c,0x0556e110,0x019796f0,0x06b65388,0x05870110,0x02784ebc,0x02420430,0x03226614,0x03a4e228,0x02a347c0,0x0532db40,0x00838bcc,0xfc8dd820,0xfde7ce1c,
-0xffa47737,0xfe5e9c64,0xff15f3d7,0x00a4c7db,0x05911ae8,0x064b5d70,0x01f67928,0x053e1738,0x07262bb8,0x0b2784e0,0x0c81d1a0,0x0a585920,0x08d13420,0x1655b3c0,0x15bcd1a0,0x18da63c0,0x07ac1370,0x07992458,0x07671c88,0x006417d8,0x0321f080,0x05204388,0x00518cb0,0x013af0aa,0x029b8774,
-0x03a4acdc,0x03cf946c,0x03dda670,0x04a42010,0x043f6b00,0x00f69125,0x0308a9d0,0x0747a640,0x0147786a,0xfbcd54f8,0xfb466bb8,0xfa033d30,0x013b9862,0x07148328,0x0bba3470,0x103a9a20,0x122e01a0,0x11951a40,0x08e88fc0,0x03f887d8,0x04fc6078,0x0546c558,0x0920b900,0x0d8d7c80,0x10614ec0,
-0x0e032ab0,0x0eb6b8d0,0xff9d103e,0x011e2196,0xfeab09c8,0x00a65107,0x0295e41c,0x004e706b,0x02775f3c,0x028d0f88,0x02dc5f1c,0x00ea5fe4,0x0166e6b6,0x038fa8c4,0x023facec,0x02913068,0x029b1e00,0x02cc9464,0x0194cef6,0xfef3546a,0xfeaef96c,0xfcfb369c,0xfaacddb0,0xfba83158,0xfd141360,
-0xffedbeab,0x0193cfd4,0x0115782a,0xff9fdcff,0xfff50658,0x00885928,0xfeb927a4,0x004ee6b6,0x0439d018,0x0b33efa0,0x0b7f15e0,0x090a15a0,0x0668ae98,0x052c1c20,0x07c523f0,0x05e96420,0x044f53e0,0x0276b7c8,0x016c7888,0x00d852e7,0x02801b70,0x01495d26,0x03fb1bbc,0x00841e3f,0x0276e540,
-0xff26a3a2,0x00391234,0xff691ea4,0xfe2b953e,0xfaf19ae0,0xffd9ab31,0x03c32914,0x0131bdd0,0x01a07636,0x00d826cd,0x00844047,0xff6d9fd3,0x01c2caaa,0x03d47284,0x05bf3050,0x05464cf8,0x053630c0,0x059aee18,0x071f39b0,0x07f2f538,0x09b10ba0,0x088d3330,0x08db9a20,0x095d7ff0,0x02f4f100,
-0x067955d0,0x04f21b50,0x055eb3e0,0x065fa420,0x062b7fd0,0x06e2efc0,0x0733b460,0x06347b18,0x073afe90,0x071cdb50,0x0774f9a8,0x056fa900,0x0682f010,0x05f15c90,0x05d85c60,0xffd450fa,0x08ea3f00,0x088acc70,0x07a4c7a8,0x07a66408,0x06db56a8,0x065d5f08,0x05952e48,0x07419c10,0x07d75590,
-0x089907e0,0x094de250,0x0a1ffd10,0x0a9c1d60,0x0a263e20,0x09ca0750,0x098c57b0,0x092cc1b0,0x083bc870,0x091a57b0,0x08884ca0,0x06a151f8,0x029e58f8,0x08aa8f70,0x061691e0,0x02de0714,0x02ba8360,0x027111e8,0x029bc5b8,0x02176560,0x01f42c6a,0x01e7fb5a,0x05d27798,0x082bafe0,0x00011d18,
-0x0559d6f8,0x0758a9b0,0x0ac56200,0x08efdc60,0x099f95f0,0x099733c0,0x09d3e590,0x0a22a180,0x0a3d9880,0x0a0bb940,0x09dd1340,0x09b9a140,0x09a78990,0x097feb20,0x097f00b0,0x09333ce0,0x0900d220,0x08b74d40,0x08bb0ca0,0x09974cc0,0xfd6edc24,0xff261701,0xff4bfeb6,0xfe586784,0xfe3e7f68,
-0xffc0db99,0xfe134e6a,0xfe6abfb2,0x00edba74,0x00fecc72,0x01283752,0x0116930c,0x01487860,0x013b713c,0x01239a3c,0xfeaf83c0,0xfda96aa8,0x015f9948,0xfeab7f72,0xfdfa472c,0xfd6b0974,0xfde05734,0xfd9130b8,0xfd4a1218,0xfd36f34c,0xfd0076b0,0xfcb12db0,0xfc5acd0c,0xfbd92b70,0xfb31fed8,
-0xfad4a4a8,0xfae7cb18,0xfb3448f8,0xfc9d98d4,0xfdc4924c,0xff648bb7,0xff5ea5da,0x02f9123c,0x0094b7d5,0xfc5d0e70,0xff7f2789,0xfe2d4474,0xfef1e04e,0xfefcd998,0xffd122a6,0xffacf7f0,0xffbbbba1,0xfff01241,0xff802a1d,0xff7b9635,0xff0b2e1f,0xff921785,0xff06527e,0xfeca851c,0xfece3af0,
-0x006e7a21,0xfde0ecf8,0xfdc10030,0xfd5e2ed0,0xfc83c900,0xfc661434,0xfbe7df20,0xfb2754e0,0xfaa94c68,0xf94c2310,0xf7288c80,0xf51ce890,0xf4ecfe20,0xf69a96e0,0xfa4bb7b8,0xfdf79618,0x0239ec40,0x029bb674,0x0a5ba5e0,0x03501244,0x005444d1,0x02522c78,0xff79489c,0xffea5878,0x008619aa,
-0x02ba9e8c,0x02d329c0,0x0264ba28,0x02b6fd54,0x0191f77e,0x02204ca0,0x0008531d,0x00d0a3cb,0xffd89b50,0xff4df479,0xffae8200,0x0018ec46,0xff0d725c,0xfdc0e248,0xfd678024,0xfb816c98,0xfb35b700,0xfa415228,0xf86bca70,0xf76dad40,0xf4647ac0,0xf0ebd1c0,0xedd74cc0,0xed716fe0,0xf073ad70,
-0xf7c82e20,0xff285b12,0x07eb6408,0x08a03c30,0x120d5600,0x05e78ab8,0x01c007b8,0x054b4a20,0x02888fc0,0xffd4974a,0x011b05a2,0x04479330,0x04142590,0x045ae4e0,0x04cb45d8,0x04c0ec78,0x03dab954,0x0209f5d0,0x02bb1494,0x01c421ee,0x03c6b71c,0x01f3838c,0x039fc7b0,0x00ab2af9,0xfdb09e40,
-0xfd72e558,0xfb1fa030,0xfb195560,0xf9d1cf90,0xf87d0760,0xf8143578,0xf4b283d0,0xee342d40,0xe5f6f5e0,0xe32149a0,0xe7cb6ec0,0xf36313c0,0xfefd4f5a,0x0d5b8d80,0x0ebd1350,0x17da0940,0x0f844bc0,0x038d05d4,0x00d558a4,0x04114458,0x05f6efe0,0x07b99118,0x04c6d088,0x04a4c7b8,0x04138dc8,
-0x039abeb0,0x04043b70,0x041feff8,0x03934d1c,0x02daee5c,0x0146bf6a,0x01eac1ee,0xfe7e3b3c,0xff87bd3c,0xfeb06052,0xfcfa6908,0xfc3a9fe8,0xf65a38c0,0xf4c67cc0,0xf11a9aa0,0xed21a600,0xe5396360,0xe0396c60,0xdb002380,0xe4b01260,0xee221580,0xf676cf50,0x00f57b31,0x0abef1d0,0x17652900,
-0x16f75a60,0x07122cd0,0x0c6554b0,0x05f7c248,0xffc6182d,0x002a901c,0xfcef40a0,0xfd20a20c,0xfd4ffd78,0x000d2e3b,0x023db64c,0x04e04da8,0x0523c7f8,0x050dde68,0x0358f090,0x03deed04,0x03233fd8,0x039cfffc,0x0134b738,0x029c6090,0xfc32bf7c,0xf74f1e00,0xf6adba10,0xf259a8a0,0xecdf1580,
-0xe6b1d740,0xe0c6c2e0,0xe0cd9a60,0xe1849340,0xdf3ec640,0xefc9d540,0xfb9c34c8,0x07eea290,0xfa9ed9a8,0xf6376bd0,0xf70c9780,0x026414f4,0xd862f7c0,0x05004fe8,0x15fb78a0,0x050983e0,0x0c39e3d0,0x0578ce60,0x064b4d48,0x0152d7aa,0x04c2d6d8,0x03b996e0,0x01a8ae54,0x065fd570,0x06647880,
-0x019bdf7e,0x02af7be0,0xfee3fdf8,0xfe513348,0xfa254188,0xfa795900,0xf7d4c450,0xf4711e80,0xf857a990,0xfbd56ea0,0xffbd61eb,0x01b7e94e,0x018b5400,0x0740c7c0,0x0cce3120,0x10966f00,0x19f57500,0x1f695280,0x1f282840,0x0a5db3c0,0xf6776190,0xd4314940,0xd9d145c0,0xd9ed70c0,0xe7dafac0,
-0x049df670,0xf71688b0,0x040447e8,0xfdb990f4,0x01457b64,0xffef09f7,0x04c5f838,0x04e74e28,0x0290f364,0x04beec10,0x038a36a8,0xfe2a3a6a,0xfd7df7c0,0xfd133020,0xfafa3d28,0xfb11b118,0xfb669e80,0xf962d1a8,0xff016506,0x026cd3cc,0x04333de0,0x0987a5a0,0x0f7eaf00,0x14f8df60,0x18f6bfc0,
-0x1e99e120,0x25b68c00,0x1fb03220,0x18bcb8a0,0x10fef600,0x04403c40,0xfde6e9c0,0xf577f000,0xedf9cbe0,0xf94523c0,0xf5310d40,0x00f14bcd,0xfe9f934a,0xfd8bd628,0x030d920c,0x026a2ea8,0x029e84b4,0x05b70170,0x05b33648,0x05a13608,0x04933200,0x0418a770,0x02fe1e60,0x00ac5277,0xfeb77faa,
-0xfe656cfe,0xfb7ca960,0xf8d8eda0,0xf807b138,0xfc459848,0x01bea8f2,0x0c67df90,0x0f0f9760,0x11792440,0x11c15180,0x12b5b3a0,0x1186ee40,0x0fa12ae0,0x1142fb20,0x0e461b70,0x06c2b008,0x00179d4b,0xfab59120,0xf5e330a0,0xfbbd06d8,0xfb93ba28,0xfa2e3e30,0x07143d20,0x05373788,0x06d3e630,
-0x05cd1720,0x02c7c6a4,0x026da954,0x0126ad2e,0x0225cf00,0x03d163d0,0x04ef9d70,0x05220d08,0x04700a20,0x05f51f80,0x055df488,0x02ee5614,0x02677bf8,0x0152df78,0x02dee348,0x04139218,0x05f60080,0x0af99a10,0x0a901e90,0x09fc34b0,0x07e0aef8,0x05fe7da8,0x05502268,0x050b0398,0x02935eec,
-0x0026f551,0x0056fb25,0xfff98b60,0xfef76c22,0xfacccf80,0xfd697108,0xfdf8b678,0x00660ddf,0x01f6dee6,0xff1de770,0x00ff1553,0x012423de,0x02868d18,0x02bdd630,0x044bf4e0,0x02bc5d24,0x0478a3b8,0x02ff57f0,0x06401c40,0x061d6d48,0x0865cb50,0x09b72180,0x0bed6890,0x0ce50820,0x0d6eaf10,
-0x0e0074d0,0x0cbf8650,0x0cbb2d00,0x0b745860,0x0b6c06d0,0x0bb54db0,0x0c91ff90,0x09ced080,0x072ca6d0,0x04972e18,0x0429ae08,0x03cfb808,0x033b9848,0x017c71a6,0x0075a2f9,0xff71b80e,0xff842bd8,0xff8a92ee,0xff508c7d,0x080ed780,0x01d2d9ba,0x04557498,0x03ace3e0,0x01b28640,0x01e99fc2,
-0x0075e41d,0x0142dd56,0x02ae48c0,0x01bcdc2c,0x01842704,0x01ca458e,0x04439820,0x046f4870,0x04f8ff48,0x05838930,0x0a955920,0x06111190,0x0545b570,0x05f7ebd8,0x06140c00,0x062023c0,0x059d81b8,0x0568c230,0x03b0aea4,0x02d968c0,0x01cabdcc,0x00f34e02,0xffdb0969,0xfef494ae,0xff51d791,
-0xff837f19,0xff6f112e,0xffa396c5,0x00c54e91,0xff0a09c5,0x02f09218,0x059dba88,0x09705510,0x0152974c,0x056bb858,0x09051f80,0x0969d450,0x0972ab90,0x090c6ef0,0x099937a0,0x09dd5480,0x09acf910,0x06401a30,0x035ba600,0x0b441780,0x07c55f30,0x05f25e70,0x014b0d78,0x02810f0c,0x0227a130,
-0x01ff69b4,0x01f9ea84,0x020b84e4,0x024983b8,0x02039a08,0x01c2d734,0x017e2f66,0x0115e828,0x00c76c1c,0x004b5a26,0x00648c3c,0x005fdb2f,0x007023ff,0x005cd3e0,0x00e60a72,0xfe4e9a20,0xfefb6374,0xfe40c112,0xfff7dda8,0x0048a7c3,0xff757bcc,0xff86797c,0xffa13495,0xff092ab8,0xff1d909b,
-0xff028673,0xfec8c210,0xfed71d2e,0xfebb0eb4,0xfe7b6f2c,0xff153362,0xfef543ae,0xfe1838ac,0xfeb04844,0xfe971ba6,0xfdea1fa8,0xfdf50478,0xfde969e4,0xfdf8aca4,0xfdea66b8,0xfde9df44,0xfe0f152a,0xfdf51248,0xfdf67fa8,0xfdfbfe74,0xfe0d7564,0xfe0780c2,0xfde6eb80,0xfd9f94b0,0xfdb884d4,
-0xfe51899e,0xfe88b746,0xfecaa7e8,0xffe4b50c,0x04921368,0x00f42e09,0x01f6510c,0x010087cc,0x007116cb,0xffd738bc,0xffdf0302,0x00286b55,0x00167f6e,0x001fe87f,0xffce7eba,0xff7797b2,0xff2a5fe8,0xfec11e32,0xfe84b336,0xfe205a50,0xfe089f96,0xfd3cecc4,0xfcf809f0,0xfd0c4240,0xfd490ff8,
-0xfd5f10c0,0xfd8f72e8,0xfdcd69fc,0xfd551de4,0xfd302880,0xfd4465ec,0xfd6f367c,0xfd2ef890,0xfcf2070c,0xfbba1618,0xfc0f3b58,0xfdcfa444,0xfe9f8a54,0xfcbffe98,0x00b45e2d,0x05401840,0x02f97070,0x04bb4098,0x02cc02c0,0x0229c404,0x0106eb82,0x01cbac7e,0x016a4c8a,0x01850c64,0x011ff262,
-0x0114ef54,0x00245fda,0xffd4a708,0xff0def2e,0xfdf3e770,0xfdc9dadc,0xfd3737a8,0xfbfa08a0,0xfb63dc98,0xfb59d3c0,0xfbba89a8,0xfb465eb8,0xfae67298,0xfb0d37d0,0xf9b46e60,0xf96e7ac8,0xf99b4310,0xfaa013d8,0xfbb37c38,0xfc128d00,0xf9a708d8,0xf96a4660,0xfc827e48,0xfd6ac760,0xfa82fb68,
-0x03b241b4,0x0aa52130,0x05ce8328,0x0766ea98,0x071b1408,0x04fcbcd8,0x03261728,0x031b0724,0x031a344c,0x03bcc3f4,0x03e523b8,0x02be6c58,0x00a70e33,0x0119cf96,0xffd56225,0xfedc707a,0xfdc49ed0,0xfd57a870,0xfafea490,0xfaa63bd0,0xfb2052d0,0xfbb7a970,0xfb95e4d8,0xfbb33920,0xfb82a9f0,
-0xf8cbdd38,0xf78505a0,0xf7a3bb80,0xf900d678,0xfa2342e0,0xfaea15a8,0xf681d070,0xf83ad428,0xfd0b3660,0xfe7c9d2a,0xe09bfc40,0xeb7f1fe0,0xfbbd6f70,0xfb124328,0xfb96dc28,0xfce45e7c,0xfc8aada8,0x0147f368,0x0327d500,0x039874fc,0x03a1df88,0x03bbc1ec,0x039fc33c,0x02c7de2c,0x018e2bba,
-0xfffa426f,0xff9025f3,0xfd3eb1b8,0xfbcc34a0,0xf8702668,0xf68936d0,0xf54c7100,0xf3b946a0,0xf2a13d40,0xefa602e0,0xeb0269c0,0xed04d600,0xef4282a0,0xf4db31f0,0xf981c710,0xfbe265a0,0x00b2a090,0xf70db3f0,0xedeacae0,0xe24f8240,0xe420cc60,0xe399fe20,0xeab8aee0,0xf72e5470,0xfa67c160,
-0xfbb2d3f0,0xffefb1a7,0x00bf8c81,0x00182b13,0x0094a01d,0x022a3488,0x02c01f7c,0x0508f0a0,0x04d4fcf8,0x0251b54c,0x014c9428,0xff8ae838,0xfce4a69c,0xfb4944e0,0xf7faba60,0xfa8a0bf0,0xfc04fbc8,0xfd310fbc,0x02dbfc1c,0x0a6b5070,0x1302d1c0,0x1b0dd160,0x1f430ce0,0x237ba040,0x2b25d700,
-0x1e517220,0x13bea6c0,0x07c108a0,0x05161e68,0x01d3e038,0xfba41c80,0xeb3fd2c0,0x13809d80,0xe94c3dc0,0xe2fbb600,0xf3675330,0xf3893ae0,0xf98fe8b0,0xfc01cb84,0xfe3ff918,0x031bf324,0x0441f588,0xff49c040,0x0467dc38,0x0281c0bc,0xfc578818,0xfbd658e0,0xfaed1020,0xf78af620,0xfb2fff38,
-0xfa10e248,0x0055abfe,0x0a2c58e0,0x0da680a0,0x17013240,0x209eb580,0x26612b80,0x27a6ad40,0x25471600,0x21a91f80,0x1eb933e0,0x15fcb3e0,0x0eb7a210,0x067e2a90,0x0e366e00,0x15b34520,0x2c1ef240,0x1bbbc540,0x1f9ece80,0x09227080,0xf32084a0,0x0239c1c4,0xfb1adab0,0xffca0b8c,0xff65d783,
-0x0015872a,0x014ea88e,0x0202997c,0xfd466e58,0x037287e0,0x04ae7ef0,0x0205a7b0,0x02a149d4,0x00b52ff4,0x0068d41c,0x00acd2f3,0xfdc1d770,0x04f28ec8,0x078556c8,0x0760f268,0x0a3bcfb0,0x07a1e588,0x06fe41d0,0x07e630c0,0x03aeae40,0xfe154862,0xf6d0be40,0xf8578fe8,0xf7f2cb40,0xf70e02c0,
-0xfdbe9cb0,0x042ec660,0x13b68940,0x115ec320,0x057ac3d8,0x058995e0,0xfe3c1218,0xfde0bf68,0x002b5207,0xfee7f2b4,0x0028d78d,0xff32d35a,0x01d8c1cc,0x030d35bc,0x02b38230,0x0242dd58,0x01832096,0x0133eba0,0x0161f578,0x023e12dc,0x0443cea0,0x040bd130,0x01e03772,0x06eb1650,0x063b1128,
-0x03ee744c,0x00c9687b,0xfcaa1400,0xf800c298,0xf311a230,0xeed66f40,0xec786fc0,0xea08e4c0,0xe9a21020,0xec0ea4c0,0xf0c30590,0xf8963ff0,0x002a007e,0x0bf1cb10,0x0680de98,0x026d6d9c,0x03efd91c,0xfd0d9014,0xfe75208a,0xfe50e0c4,0xfd6afa08,0xff26387b,0x00905249,0x0270306c,0x02abe25c,
-0x01c6a528,0x0370f134,0x03683ff0,0x0194e0fa,0x01383730,0x0106e3e4,0x00bbf158,0x02306cf0,0x04370ce8,0x01693ed6,0xfed80602,0xfe094caa,0xfa02bba8,0xf7e725d0,0xf64be8f0,0xf4b9ae40,0xf5528a50,0xf5679780,0xf5ab1c30,0xf80f9708,0xfae96348,0xfc96cf74,0xfd3e5a88,0xfd8acd40,0x0050bfe2,
-0x00c5ca76,0xfe4a87c0,0xfe59d65c,0xfea0cc16,0x00be3c85,0x00efe1b0,0x00d9bb47,0x0054532f,0x002f7598,0x00121725,0x00a22e76,0x00daf77d,0xffddc9bc,0x00ccb196,0xff119828,0x012fc2e0,0xff10cb8e,0xfedd0ab6,0xfe5c8554,0x0014508c,0xfb2d9810,0xf8e3a470,0xfb1b3178,0xfb7f87b0,0xfae832f8,
-0xf9a4c218,0xf85a3bb8,0xf933efa8,0xf9f2f9a8,0xfaa81f60,0xfa3d0158,0xf9896480,0xf8c6af30,0xfa164810,0xfb04e868,0xfb22e8b8,0xfc46d3a0,0xfe1c24b0,0xfdf27b80,0xfc932c64,0xfcf3eff8,0xfcc37f50,0xfd6e5558,0xfdde0038,0xfdf19a84,0xfe74555e,0xfe73ab4e,0xff104d1f,0xff02fa25,0xff843ac8,
-0xff9b48c6,0xffece96e,0xfee92738,0xfefa3000,0xff11d282,0x0172a792,0xfcd18368,0xfd25592c,0xfcdc6060,0xfc66b358,0xfc8d0db0,0xfd01dda8,0xfd51f070,0xfd6a3ff0,0xfd5c4074,0xfd88f444,0xfda02ba8,0xfdf127a0,0xfe0a79a6,0xfde793d4,0xfdbdc7bc,0xfdeea788,0xfe017308,0xfd8b9848,0xfdd19780,
-0xfe1b747c,0xfe332dbc,0xff3444c6,0xfdd55d00,0xfdf19bb0,0xfed1beee,0xfeed5618,0xff10b7c9,0xff2d8cf4,0xff7b4c47,0xff98b569,0xffee9c02,0xfe9a06b2,0xfdd3433c,0x00a34c9a,0xfe201394,0xfd352f3c,0xfc1185f8,0xfcea72b0,0xfc9b83a4,0xfcb2349c,0xfc8fc174,0xfc4b89b8,0xfc06fcb0,0xfc2d575c,
-0xfc58c488,0xfc79125c,0xfcb01fa0,0xfce168c0,0xfd2a4bb4,0xfd4f4804,0xfd789df0,0xfd8e6ba8,0xfd8e7290,0xfd2e9818,0x00173afb,0xfea17b30,0xff45199b,0xfcd17898,0xfc9fd660,0xfd59a27c,0xfe21f872,0xfd3f60f0,0xfce12440,0xfd093aac,0xfd2a800c,0xfd60ecc8,0xfd3ec324,0xfd22fc50,0xfd3bd4e8,
-0xfd411d9c,0xfe6552ac,0xfcb98a30,0xfd2bf0a8,0xfdfe4cf0,0x01326062,0x004c2f61,0x009d8d94,0x00e35dac,0x010db188,0x0135eaf8,0x016189cc,0x0155f446,0x0153a9f4,0x013082ec,0x01170f78,0x00e29a40,0x00d85056,0x002839e9,0xff7dc7c8,0xfe20c506,0xfe9b834c,0xfb5a09b0,0xfb460298,0xfb25e9e8,
-0xfdca3be4,0xfda36e78,0xfdc2e8e4,0xfeb00a1a,0xff1ef882,0x008c0701,0x00316fb3,0xff26bb2e,0xffd0b924,0xfffb9c1b,0xfffa6fdf,0xfec51548,0xfeed57f8,0xfec6d6a4,0xff3cfac7,0xfcde2a48,0x00d3ca8a,0x017348c2,0x01834aec,0x025b4674,0x02ab53c4,0x03024010,0x03316c48,0x02e23ec0,0x027d1680,
-0x01e51306,0x01eec5dc,0x01a0a290,0x012b2b72,0xff7d1e07,0xfd5b0d6c,0xf9a53050,0xfa59e408,0xf7e4fb00,0xf7a02ff0,0xf8883810,0xfa7e8068,0xfc8ff4ac,0xfdd30504,0xfe55855a,0xfeb8d9d0,0x001d6836,0x013ae896,0xffb5e62e,0x00f8381a,0x00349e45,0x0115010e,0xfedf1dae,0xfef414fe,0xff7d644e,
-0xff22c703,0xfe4a208a,0x00fcfe24,0x029faf34,0x02c94508,0x049f0ff8,0x058fbb28,0x06977ce0,0x07740998,0x07388ea0,0x06fc8a20,0x05c93a78,0x057792f8,0x048c2658,0x046d0a98,0x00d1ec9f,0xfd10fc94,0xf4e241e0,0xf6be5250,0xf2089dd0,0xf1a54550,0xf427f080,0xf9e2f0c8,0xfb57b678,0xfd37da3c,
-0xfe802a58,0x00a3176c,0x03287078,0x037365c8,0x02ca9390,0x03380614,0x02484154,0x01beb060,0x0039b9ed,0xffddaa87,0xfe3ea466,0xff9d1b62,0xfd917520,0x01fb81fe,0x04777240,0x0454ec38,0x0692d168,0x076c3de0,0x08582500,0x0886cf10,0x06f63300,0x050a6358,0x029cc3e4,0x03b55700,0x04368f90,
-0x035ef544,0xfdf7cfac,0xf5db46a0,0xe9674c60,0xecb4aec0,0x0d8637f0,0xffd7f395,0xf2fe9eb0,0xf930d770,0xf996eb68,0xfb5d43c0,0xfdb57dcc,0xfc05f81c,0xfeef4ea8,0x01836b5a,0x023a2a70,0x03be5148,0x04117938,0x02f103c4,0x01de4032,0x013a58e0,0xff970d76,0x00a5e885,0xfda4ecb0,0x00b3c12a,
-0x05b67058,0x06cff9a0,0x0cbbd470,0x0fede920,0x153fcc20,0x1c35b500,0x1f7c1d00,0x219ff200,0x21813c40,0x1b1e8b00,0x1635d540,0x10cd4a80,0x15855720,0x1785e940,0x16f60f40,0x0c8107e0,0x225de380,0x0a055bb0,0xfa218220,0xff066c25,0x008438f5,0xfe51eba8,0x00129347,0x007c34d8,0x014f0080,
-0x01c17e22,0x027cb4d8,0x0410aba8,0x03957000,0x02244808,0x025b04b8,0x014d4a50,0x0035df24,0x00c22fd3,0x011db92e,0x05ef33d0,0x08f619b0,0x0a47c150,0x0c2b5800,0x11ce95a0,0x15c09d20,0x191c7860,0x16ec82c0,0x11bc1e60,0x06e91288,0x04a34448,0x01db2dcc,0x0287b2dc,0x07b573e0,0x0b0c9fe0,
-0x1445a7c0,0x1c624ea0,0xff597d54,0x18cbdc40,0x135f6760,0x0b02fad0,0x0615e5f8,0x04e56450,0x00c63704,0x001677bd,0x031852e0,0x03b6c12c,0xfeb1be66,0x0321964c,0x01edc49c,0xff2a6e6e,0x00309278,0x0192f4e6,0x02e2ebd4,0x032c6f58,0x05737750,0x02de79f4,0xfbac0790,0xf9e247b0,0xf371e190,
-0xec932c00,0xe752a040,0xe5ab65e0,0xe073ef60,0xdfb96fc0,0xe0bc73a0,0xe7626820,0xec5f3720,0xf57f7300,0xeffa3c00,0xec1d7e40,0xe5829600,0xf25fbc10,0xeb84d5c0,0xfea5d0e2,0x0d5a9620,0x0122d080,0x036151dc,0x01e5e486,0x02c1d01c,0x02aeff24,0x0345f3fc,0x032df940,0xff3471d9,0x02ab9ca0,
-0x0289a7e4,0x02667894,0x0194c528,0x014cfc8e,0x029f9c70,0xff602bde,0x0297599c,0xfc0063ec,0xf2f5d530,0xf0f105a0,0xed4512a0,0xeb25b500,0xe784fbe0,0xe4ae2500,0xe4f9f440,0xe788a320,0xeb2ce0c0,0xedd5fcc0,0xf1a75430,0xf6a2f4f0,0xf59255c0,0xf4a1d020,0xebeb3680,0xf2f2a070,0xf707e150,
-0xf7709b40,0xfdcc52a0,0xff2793c2,0xffadf459,0x00a84448,0x00af57e1,0x01b3e1ce,0x018b01ee,0x019ddcb6,0x00e68793,0x00904fb2,0xff7fc61e,0xff48e892,0xff64f695,0xff929e9e,0xfd91e4f0,0xff4a2050,0x0368f550,0xfb2675a8,0xf71097c0,0xf537afc0,0xf11eb8f0,0xf0b2db60,0xf0b55500,0xf3671ea0,
-0xf599bf00,0xf981f1c8,0xffef3b07,0x018cf5ee,0x019d387c,0x00dd987e,0xffa99599,0xfd364210,0xf5306180,0xf7023150,0xfbf42f40,0xfafe6298,0x00215c91,0xfed33830,0xfee4c82e,0xffe9671a,0x000fcd3b,0x0117f078,0x011d762e,0x00e7987b,0x00026d6c,0xff87b94f,0xff51e4ba,0xff358b42,0xfd67e3dc,
-0xfbec6890,0xfb9fa738,0xfa081258,0xf9184990,0xf8a26520,0xf8711e28,0xf8c9a008,0xfaa0f9a0,0xfd798774,0xfead2450,0xff65758f,0xff69c94a,0xffef8478,0x00c6be27,0x00633e2d,0xfeaddd64,0xfc1bf694,0xfc4f0fe8,0xfdc0d804,0xfe339f64,0xfce6f5e0,0xff6d232d,0x00a61dbe,0x0039ab3a,0xff1c5db2,
-0xff672c28,0xfff7d4eb,0x009bcbb8,0x00f3ed93,0x0119d31a,0x00dba48e,0x01903a54,0xfff81b1b,0xff02f4a0,0xfe0fa606,0xfd097b1c,0xfc713e68,0xfb76bd38,0xfafc1b18,0xf9f71548,0xfabbbc48,0xfc400f48,0xfc6304ec,0xfd080884,0xfd2ef06c,0xfdf1f5f0,0xfee7d85e,0xfe16eb84,0xfda766e0,0xfd3ae2bc,
-0xfdab6b64,0xfe7dce48,0xffa5888c,0xfef8917a,0xfe612308,0xfe92e2a4,0xff46d9db,0xfe5893e0,0xfe47118c,0xff2be6c6,0xff5d5c6a,0xff6de84f,0xff29c003,0xff1a21fe,0xff1b93ed,0xfee60818,0xfe70091c,0xfe5780ec,0xfe099b2c,0xfe1a95ae,0xfe0adb32,0xfdb17938,0xfd699174,0xfd0cef08,0xfceb3e54,
-0xfc2f0534,0xfc0c2dec,0xfc44fce8,0xfc503b28,0xfc986288,0xfce55578,0xfd015800,0xfd2a4b98,0xfd75e460,0xfdd016b8,0xfe04f62e,0xfe58a53c,0xfe85787e,0xfee52fb2,0xfeea348c,0xff1f126a,0xfedf94e2,0xfeaa0eae,0xfe7ef548,0xfe4f314e,0xfdd392dc,0xfdb65b58,0xfd85d7b8,0xfe4494d0,0xfe1fcf04,
-0xfde54d00,0xfdd793c8,0xfdf21e7c,0xfddc73f8,0xfdf2ca20,0xfdeb4fcc,0xfde2df60,0xfd690538,0xfda57aa8,0xfd3c4288,0xfd19f428,0xfd4921d8,0xfdd46674,0xfde49b4c,0xfe142812,0xfe2f5504,0xfe48b7e2,0xfe6e6f26,0xfe90962e,0xfeab3e70,0xfec155ca,0xfede57da,0xfee67c04,0xfee8bbac,0xfeea8f22,
-0xfeb9b13e,0xfe944182,0xfe88ed7a,0xfe7e3dd8,0xfe14e0ce,0x06d29ca0,0x06d18cf0,0x07777258,0x05fc70c0,0x03ffc754,0x006f0a36,0x06733858,0x0468a508,0x0189894e,0x01c2883c,0x01ccbdf4,0x018bc330,0x016eb172,0x01639656,0x017625dc,0x049ec238,0x05ff82e0,0x00f60f3c,0x04902168,0x05c36d70,
-0x05cde2f8,0x05c86b50,0x05f0bd58,0x05c4ca70,0x05f679e0,0x060648e0,0x05f4ff60,0x061f3ea8,0x0643a110,0x068298d8,0x06eda110,0x0768a980,0x084d6ad0,0x07ff4320,0x08008fb0,0x081185e0,0x07984620,0x09c86080,0x08d0bbe0,0x00e0b4b6,0x056db2f0,0x03e3d234,0x043d7f00,0x04ffd708,0x045fcfd0,
-0x05bd8628,0x05d30b40,0x04c24e58,0x057a1ea0,0x052a12d8,0x057e2900,0x03e76a94,0x0404bf48,0x05135a28,0x049b6cb0,0x03ffc7c0,0x053cc928,0x04ece060,0x051db2f0,0x04936bb8,0x04f27710,0x04f3cb50,0x04e6a5a0,0x058b9b38,0x0686c200,0x07cef638,0x0933d270,0x0a91f180,0x0c6c19c0,0x0be767f0,
-0x0be70c40,0x0c42dbc0,0x0b200740,0x0e691b90,0x097b80a0,0x043426e0,0x04e85188,0x01ef1550,0x021dc8b0,0x0269566c,0x02364430,0x03606460,0x03e66f74,0x024605a0,0x03730ba8,0x027a87cc,0x0403e6a0,0x0211cb5c,0x0240a014,0x02ea0c90,0x02da4d0c,0x046e9a10,0x039a5ab0,0x03cd9744,0x04731588,
-0x038599c8,0x04c30ff0,0x05383488,0x057efdb8,0x06d298c8,0x081b62c0,0x0a6c0870,0x0ca9a4b0,0x0e9b2aa0,0x11b44320,0x1092ac80,0x110e06e0,0x12464f40,0x0fa7ba20,0x144deb00,0x0aa6ffd0,0x02c315c0,0x03422b1c,0x0293fde4,0x010c54b2,0x019771fa,0x00b50185,0x02e51fa0,0x0350467c,0x01d8be64,
-0x023c02e0,0x01fdb3d8,0x0233a3f4,0x0081bc9a,0x0016c4ce,0x0192e1d0,0x01941416,0x0341bc5c,0x017b83ec,0x00912c19,0x00f0a775,0xff6c7a91,0x00ef4247,0x017f0702,0x0213bcd0,0x04d61080,0x08d28110,0x0e3570b0,0x11deeca0,0x14c49de0,0x18e86480,0x177dc6c0,0x176ffce0,0x19ff2460,0x15db32e0,
-0x0feba480,0x1331d500,0x11d35800,0x0ae41c40,0x08e51b40,0x0607ade8,0x056555b0,0x0485cdc8,0x02c32660,0x01ac9950,0x01522352,0x02ca74f8,0x0311845c,0x02e60698,0x02085fe8,0x017cab06,0x0226ba94,0x022d77e0,0x05087a00,0x0578c2c0,0x045fc1b8,0x07376240,0x087c0230,0x0a08f4e0,0x0bc5ad30,
-0x0e10b7c0,0x0f179b20,0x0dd2def0,0x08383e00,0x094875f0,0x08e54290,0x069e1958,0x089e14c0,0x0a789fa0,0x0eeb6c90,0x12b0d840,0xe5552980,0x00da7725,0x0c48bf60,0x054df428,0x056261b0,0x046cc830,0x02d1c780,0x02073a34,0x02755e98,0x0294b624,0x025ce71c,0x0395391c,0x03053fe0,0x02a90328,
-0x01dc34ec,0x020c1dec,0x04353388,0x04580000,0x0560ae50,0xfe3dc270,0xf6da7c20,0xf280aa40,0xebb021c0,0xe792d240,0xe3784220,0xe137f8a0,0xe0c07f60,0xe4b2ebe0,0xed333980,0xf36d4b70,0xfb34bf58,0xfeb2cc98,0xf9ff5af0,0xf328c000,0xe64686e0,0xe53980a0,0xf4d37ef0,0xef5ffac0,0xfac451f8,
-0xfda71cb8,0x021e7534,0x0134a816,0x040a2b40,0x0177d096,0x04df33f0,0x04f82828,0xff8d8806,0x04471f50,0x0426e7b0,0x03a021d0,0x02ef181c,0x017db936,0x022b4de4,0xfed68c36,0xfc11fe3c,0xf9050250,0xf729e170,0xf62a98e0,0xf4e193c0,0xf5cae6c0,0xf84ef5c8,0xfd0a6068,0x012c4d98,0x02de66a0,
-0x040c1dc0,0xff480549,0xfc8d595c,0xf5f0cf90,0xfc12cc44,0x03a0caac,0x0e265ee0,0x00f387f0,0x075a9160,0xfc064a98,0xf590bba0,0xfebd91ec,0xff7b242b,0x0036b5ff,0x01096616,0x0142fdd8,0x0237f8c0,0x01e99c82,0xff2b472d,0x00dac14c,0x006517ed,0xffe26a37,0xfdc8e084,0xfc69dcd0,0xfa67e1f8,
-0xfc202aa0,0xfa226d70,0xfaab94d0,0xfdb3e3d8,0xfe652fd2,0xffa01332,0x01bd21a8,0x03a0b468,0x03bea414,0x0770cbe8,0x09053140,0x09c513e0,0x06ed8650,0x040bc680,0xff0a31e0,0x030c2ffc,0x054e7f00,0x115abca0,0x056e4788,0x075767a8,0x02643fec,0xfebbc652,0xfef1e720,0x00a438a5,0xffc154ab,
-0x01544e68,0x03101a0c,0x0297966c,0x0182786e,0xff9c1b93,0xff46070b,0xffa65e24,0x011ef914,0xffe4fece,0xfe3d301c,0xfd3f1f18,0xfb56ef10,0xf819d340,0xfbbe1d90,0xfe1477a2,0xfe3f0e0e,0x0157d16a,0x02dace08,0x04404670,0x04423e28,0x056a9660,0x0320b95c,0xfe09f806,0xfd820590,0xfd6ddf94,
-0xfd3b60b8,0xfd96bc4c,0xffe296e3,0x07e6d058,0x07e04728,0x04fc5530,0x031e0298,0xfd8eed18,0xfe1f195c,0xfe9d8708,0xfe8e0aca,0xffc0f2f4,0x00927a3f,0x00722033,0x0071dbf7,0x00c1923f,0x012b1326,0x00a2e358,0x00053a4a,0xffb4ff54,0x002a85cb,0x011bff18,0xffaadd28,0xfde3daf4,0xffbb321f,
-0x0053e3d7,0xfebb24f6,0xfd7753e4,0xfc9e7178,0xfd41e3b0,0xffa1d9e1,0xffd22f11,0xff792927,0xfe3f72fe,0xfcfbf198,0xfdd81774,0x00e90bd7,0x00353206,0xff9ed35f,0x009fb574,0x03e539d8,0x014305b4,0x0051e1e1,0x002443d9,0x0140118a,0x00aa0279,0x00cb41e4,0x00961d49,0x00b7f54c,0x0011a1ac,
-0x00386721,0xff318b74,0x007c21e3,0xffeed951,0x016a23d0,0xfff30c55,0x0074f683,0x000a9ae5,0xffcedfe9,0xfeeaad98,0xfffd13bd,0xff58b81f,0xfd4c6f1c,0xfc012474,0xfcc6f258,0xfcf72394,0xfcb73eec,0xfd290498,0xfda8a6e4,0xfe60aeca,0xfede33fe,0xff125784,0xff0bc251,0x00461953,0x015e79ea,
-0x01c2c310,0x01174c0c,0xfe6a26f2,0xfe90e83a,0xfd8b5224,0xfe3c6b5c,0xfe2a909c,0xfe8f2df6,0xff035ce0,0xff41245a,0xff769c91,0xff76b896,0xff15d6f2,0xff934fbb,0xff69bbc7,0xff5e14e5,0xfecb6aa2,0xff2b07de,0xfecb70b6,0xfe7a3fea,0xfce3bf74,0xff3a43eb,0xff168a69,0xfef556a6,0xfeca39de,
-0xfe24e7c6,0xfda91f18,0xfd492f84,0xfdaa7510,0xfdd9a720,0xfdf1723c,0xfde3b91c,0xfde14144,0xfdb798e4,0xfdc78b1c,0xfdabe3b8,0xfdfdbcd0,0xfe1fbff2,0xfee38680,0xff232d20,0xff24ea13,0xff105ca4,0xfed6992a,0xff59d0e1,0xff1cb746,0xfed9bf2e,0xfeae4cd4,0xfe9045aa,0xfe9ce742,0xfe440fc8,
-0xfe288576,0xfe193128,0xfeff9294,0xff4cf284,0xfdd933e8,0xff014ed6,0xff523d2d,0x000da8a7,0xff5aee7c,0xff46260b,0xff21d6be,0xff0e135a,0xff00ca06,0xfed3475c,0xfeb8baba,0xfe92b79c,0xfe7d179a,0xfe76676c,0xfe796634,0xfe7e7c7e,0xfe9f901c,0xfebb14f0,0xfec15b80,0xfedfcf10,0xff0133fc,
-0xfdd67c1c,0xfefe94b2,0xfd70b9e0,0x01aa6024,0x042539b0,0x079acf28,0xff9166ad,0x03258d64,0x06ae8428,0x0723d660,0x07119d18,0x06719720,0x070f1678,0x073f34c8,0x07608118,0x0305338c,0xffc5cf84,0x078b92c8,0x03125574,0x00aaf2d5,0xfcac3a40,0xfdeb696c,0xfd7ae22c,0xfd4eed9c,0xfd2855f8,
-0xfd115b04,0xfd116390,0xfd0655a4,0xfd02016c,0xfd0cfb28,0xfcd43ddc,0xfcc20378,0xfcb1e65c,0xfce7de6c,0xfd6624f0,0xfec10404,0xfe7e312e,0xff6322c7,0xffc1e4be,0x077d02e8,0x005d98b3,0x023d530c,0x022cf850,0x008dcbe3,0x0028e4f2,0xff3804ab,0xffdf515f,0x00d81ee1,0xfffabeec,0xfffa40d6,
-0x0053a5f6,0x0151d5bc,0x007ac049,0xffc24ee0,0xffafe7b5,0x0323eaec,0xfd326f18,0xfd569a2c,0xfd3a3e18,0xfcba65c4,0xfc78e6b4,0xfc5d2fa0,0xfc8fe5d8,0xfc8ccbac,0xfc56a9d0,0xfc18a170,0xfb21c6b0,0xfac202f0,0xfae50d98,0xfb2802e0,0xfc587428,0xff7bd37a,0xff342461,0xff75fd08,0x029cdb20,
-0x05dd6068,0x03708238,0x043abe28,0x0307ad04,0x023d1d10,0x00812b27,0x02889b00,0x0124cba4,0x01f7ef6e,0x005f1d31,0x027fc390,0x01677898,0x01a24224,0x0034cd5c,0xffc2c313,0x0021ecf4,0xff7ae51d,0xfd229af8,0xfc447294,0xfbb2e9a0,0xfa5f8428,0xf9621470,0xf8be6c08,0xf8822658,0xf812d780,
-0xf7ee4ca0,0xf7b091e0,0xf66d5070,0xf63f2c20,0xf6eeabc0,0xf82860a8,0xfa6974e8,0x00b50d37,0xffe28a2d,0xfdbb6670,0x04eb1318,0x08913890,0x04110cf8,0x03bdba94,0x04756010,0x029cca24,0xfffe7e54,0x01c9050e,0x024c4774,0x0097e978,0x0222c5c4,0x019ab4d4,0x014a2278,0xffde439d,0xfedf4042,
-0x002eeb70,0xff095f50,0xff8ea9ee,0xfcffa388,0xfd075330,0xfce65d4c,0xfb5a3b90,0xfa65c990,0xf9d088b0,0xfa2781a0,0xfa1c2870,0xf9063900,0xf71d0310,0xf3c892e0,0xf30dad10,0xf3a91220,0xf535f040,0xf95f7768,0x01aad706,0x007d9a6c,0xf14f8440,0xf62f71c0,0x0172810c,0x043bf6d8,0x010cb690,
-0x00da6be1,0xff44cc00,0x00bf270c,0x025ab680,0x02e7acac,0x0219fa24,0x01dbc904,0x01a59db2,0x02cceaac,0x00cd828a,0xff7c4804,0xfff84f12,0xfe815caa,0xfe3ed4a8,0xfa4d6300,0xf4fec900,0xf146b8f0,0xebd911a0,0xea153100,0xe738cce0,0xe3947900,0xe35fc840,0xe6a0a2e0,0xef3a0ae0,0xf200b960,
-0xf5360cc0,0xfa36d6a0,0xfb336710,0xfa07b590,0xf75c5040,0xf15c8d30,0x06f004f0,0xf8051590,0xf4e8f450,0xfb77c490,0xfbe266e0,0xff9b263f,0x020aee30,0x04aae6d8,0x047e5450,0x04571130,0x0246e3d8,0x0343ec00,0x023bf130,0x01a60118,0xff971b26,0xfe86e73a,0xfd58c890,0xfbcf0f60,0xfa5692c8,
-0xf99085f0,0xf93d7258,0xf9af8030,0xfc11fe0c,0xf77ab430,0xf7ac1800,0xfa947890,0x016406e6,0x04bc2570,0x05560d50,0x08f28260,0x07d061e0,0x030dac04,0x0a221a80,0x0d94a250,0x1225b5a0,0x0bca2a90,0x087d3ba0,0x06b9ebc8,0xfd938c54,0xff103b9b,0xfd7d93d0,0xfe9554e8,0xfeb8d15a,0x001c8ab1,
-0x0163b2be,0x028d9848,0xfff3f8b2,0x02d86bcc,0x03323804,0x03bdf3b0,0x00ae2063,0xff312666,0xfe38f51c,0xfebbf0b6,0xfe13d232,0xff7c4ab2,0x0205cfc0,0x025b0148,0x05c6b088,0x06df0860,0x079898d8,0x059d5510,0x074c2fb8,0x073094e8,0x043514f8,0x055614e8,0x03c32998,0x0157d19c,0x082824e0,
-0x05974280,0xfbca5590,0x020d3d60,0xf894b5b0,0x03d41a38,0x05df51e0,0x01f61500,0x00ebe8af,0x00b0751c,0x0193aea2,0x039d9808,0x02266b6c,0x01217232,0xff2ce38f,0x00a0ef9b,0x01662764,0x02331690,0x0173a652,0x008ddd95,0x00a3f470,0x0024a165,0xfe44a88a,0x00227b53,0x0110abce,0x00ca0076,
-0x01369746,0xffc2fab8,0xff1f42e0,0xff5f5ee6,0xfc38a77c,0xf9b7c2b8,0xf7fb5ac0,0xf7603570,0xfa2d81a0,0xfd9b33e4,0x01b216dc,0x01769dd6,0xf8838d80,0xf933aa80,0xf94df388,0xfecfddc0,0x01b83c8c,0x028eef54,0x00c677e8,0x01cecd7a,0x010550c4,0x0067a7b8,0x00960ddc,0x00856ebe,0xff2bc519,
-0x00f22e1c,0x01ae0972,0x01e58fbe,0x01591efe,0x00efbbc7,0x00e97db9,0x020b0500,0x01b67134,0x034eb17c,0x023dfc20,0x00fbc7ab,0xfeeee3f8,0xfcd02100,0xfc0024c4,0xfbd42368,0xf9d82478,0xfb803e00,0x00a32cd5,0xfee3a404,0xfee75470,0xffae8b90,0x04408a80,0x04f31198,0x01f85296,0xfb450d60,
-0xfdc6ee68,0xfcde94a8,0x00d22048,0x0046d8fa,0x0073bdd8,0x018b3b22,0x019424be,0x01440472,0x015a4122,0x01289a8e,0x013236be,0x00753068,0x0063fc92,0x00f67c41,0x0118935a,0x0168b518,0x011cfb2e,0x02156194,0x02997ff8,0x02353a80,0x030c4b6c,0x02f3dbf4,0x012e721a,0xfde6bab4,0xfb6dbe58,
-0xf92451f8,0xfa055b20,0xfa928708,0xfb55b708,0xfc8c1e24,0xfd976fcc,0xfdb98d9c,0x0135f7ee,0x037007e4,0x042da440,0x00c056fb,0x017f8b08,0x02c1ffc4,0x027d8364,0x01308a9c,0x00cd3c9c,0x0113f7a4,0x01257802,0x017e391a,0x014f4740,0x01bf2e1c,0x017d0ad4,0x021c5494,0x01eae214,0x01d73b98,
-0x01f20a80,0x01aa456e,0x01514106,0x01dded50,0x021d1a60,0x02f23a0c,0x02d226a4,0x026b9020,0x02983994,0x0193f28e,0x00ade6b9,0xff87287a,0xff93ca22,0xff0b2746,0xfe3c74be,0xfe693a10,0xfe4a482a,0xfde4f51c,0xfe873c94,0xff3aa566,0x00854190,0x0124c00a,0x01a19f44,0x020d4a10,0xfff2a4b6,
-0x0206e2f0,0x014c7108,0x015a3538,0x01c0d930,0x019fd6f0,0x01da1fe2,0x0194e0de,0x01158d56,0x0108cf36,0x00de0a52,0x00988c6c,0x0080957a,0x00c14f53,0x0125142e,0x01529cb8,0x00a588a7,0x01a4ad02,0x011e7ef2,0x00c3d285,0x0056ed16,0x000da8cd,0xffdf347f,0xff8f54e0,0xff6d5f24,0xff4cd91a,
-0xff3fa359,0xff2a5f0f,0xff338e69,0xff3ed7b4,0xffdc0a58,0x004f7d9c,0x00abb41c,0x011ea9e2,0x01446fa6,0x01fbada4,0x00382a0a,0xff873e73,0xfe93483c,0x01034fa0,0xffea3466,0xfefe03f6,0xfedb65d0,0xfedafd64,0xfef5878a,0xfee0175e,0xfed88a7e,0xfed32aac,0xffa0738d,0x0071ea9c,0xfec77626,
-0xff85199e,0x0015c89a,0x010ed45a,0x00b1c133,0x00a6ad2c,0x0084931c,0x0064de35,0x003a1b37,0x000c3df5,0x003d7402,0x0062692f,0x0083447a,0x009122ad,0x0098b8c3,0x008773ed,0x00b46996,0x00d80e5d,0x01035e7a,0x012edc5e,0x01465054,0xfcf33244,0xfc9377e8,0xfcaaec0c,0xfbe03ec0,0xfbee8418,
-0xfc8a2d9c,0xfc6c1684,0xfc38e4d4,0xfc30d000,0xfc42cdb8,0xfc5048e0,0xfc7e8c7c,0xfc7eb600,0xfc85648c,0xfca3d66c,0xfc50fe18,0xfcd262e8,0xfc3e9f40,0xfbef3450,0xfc4e38d0,0xfdcf603c,0xfd56d338,0xfd639870,0xfd943098,0xfd69ed20,0xfd63b1fc,0xfd5f5d8c,0xfd776568,0xfd82a74c,0xfd77f108,
-0xfd92fe0c,0xfd727080,0xfcf41d50,0xfd10634c,0xfcd78fd4,0xfc4282d0,0xfc65c47c,0xf956ad38,0xf9b48b68,0xfc0b4984,0xfc06240c,0xfc1e3b60,0xfc446d48,0xfcdc9ac4,0xfd52d960,0xfe161c24,0xfe0edb02,0xfdba8464,0xfdfa57b4,0xfe2ac6d8,0xfe401838,0xfdc6f634,0xfd9fdf7c,0xfd09f104,0xfd1900cc,
-0xfc0c6ba8,0xfd7d87b8,0xfd760a78,0xfd584054,0xfddaa878,0xfd6ed09c,0xfd3dbdd0,0xfcf1408c,0xfcecff34,0xfcf0b3b0,0xfcd473c0,0xfd635b34,0xfd2401d0,0xfba3bca0,0xfc13920c,0xfb5c1030,0xf9546958,0xf91bf4d0,0xf7cd5ad0,0xf9389200,0xfae19cd8,0xfaf46e30,0xfc310bb4,0xfd584b38,0xfe016736,
-0xfe435714,0xfefbb8c6,0xffd71b56,0xff1a6aa4,0xffd4c4ca,0xffa0ec7e,0x00542589,0xff5a5231,0xfee4201e,0xfdf997d0,0xfd5b6bf4,0xfcb67edc,0xfddfce68,0xfdd48974,0xfdae5dd8,0xfecdd300,0xfdf56c1c,0xfdb0e55c,0xfd6bae38,0xfd917408,0xfdb01a58,0xfd90fbdc,0xfe5874da,0xfdd70cec,0xfa711968,
-0xfb73dfc8,0xfa57f830,0xf6d95c70,0xf78afa30,0xf0baa2c0,0xf2fd5b40,0xf77c03d0,0xf9c4b400,0xf9997aa0,0xfbe8f5f8,0xfcfff248,0xfe876fba,0x010f6578,0x01f5c2ac,0x011e9f2e,0x0196d954,0x01692f12,0x016a1a28,0x0019c947,0xff4347da,0xfdd4e070,0xfd96b728,0xfcceea68,0xfddda6ac,0xfdeb37e4,
-0xfdef1648,0xff869caf,0xfe5c1362,0xfd61e55c,0xfbfe8bd8,0xfb5fe0c8,0xfb8632b0,0xfbc1d248,0xfe213b58,0xfd1d0f00,0xf7ad7260,0xf8bc4a88,0xf68b2e20,0xefffcfe0,0xefe492e0,0x14b80220,0x0b750b10,0xff818ba5,0x00143df7,0x01e6c04a,0x020c887c,0x033f7998,0x01cb7a26,0x009498a0,0x00dcbe1e,
-0x0217a2e0,0x011fe88c,0x00f3430c,0x02436d08,0x003fe782,0xff81990c,0xfe5a70a4,0xfd665db8,0xfb689720,0xfbd18ae0,0xff198389,0xfecce29a,0xff3f884a,0xfe97c504,0xfeeb057e,0xfec7ec24,0xff0ac020,0xfd2201ec,0xf9c6a060,0xf9c45900,0xfb6c9e98,0xfcc95450,0x01acadec,0x05f57c18,0x07bf40c0,
-0x10ff9080,0x04ffc258,0x0a1e2d60,0x058f4478,0x03b16f9c,0x040e0440,0x0127f8d2,0x0174649c,0x015114b8,0x03c1c818,0x03bd0cb4,0x0186a902,0x01c1b1fa,0x01accce4,0x033abe18,0x008d1a48,0xff155ed7,0xfd338e04,0xfc5cafb0,0xfb6ac798,0xfddcb0d0,0x00a6d073,0x02375804,0x04d089f8,0x06c9bd10,
-0x0743a878,0x0654af20,0x043d1f00,0x03369394,0x037c5af8,0xfbb27e30,0xfc042750,0x02816e5c,0xffdd3cc2,0xff6fd89b,0xff6a41d2,0x007024bd,0xfebedab6,0x01988398,0x0495ced8,0x04368120,0x03725d08,0x02910c00,0x01b28792,0x03c54f38,0x025d5ae4,0x024501fc,0x000f974c,0x00195072,0x00996c44,
-0x04838a40,0x00c2996f,0x00adc3b6,0x00fe88f0,0x01cf6008,0x0263f10c,0x0200e170,0x031a37d0,0x01fed76e,0xfe3788c0,0xfee9c1f4,0xff2d83eb,0x003864be,0xfd64f17c,0xfc15b878,0xfd8ae4a4,0xf9ce93f0,0xfb9517b0,0xffffb2b7,0xfd0c8c30,0xfd35c860,0xfd4a6f3c,0xfecac3a4,0x07c3cb68,0x01abea86,
-0xff04eff4,0x013ebf5e,0x00d176bf,0x010fa0f2,0x0134e128,0x0348c454,0x00fa6b55,0x003ac44b,0xff9a8140,0xffff4251,0x00e3bab2,0x05022670,0x027cb730,0x02304224,0x03c71cbc,0x027c2d80,0x0203c9c8,0x01c35fce,0x008681d0,0xff954eb7,0xffa4b6a3,0x000c3f3a,0xffb838ea,0xff40a187,0xfd54809c,
-0xfdb7c780,0x01479a00,0x0238603c,0x044f7b60,0x07db87f0,0x0555fed0,0x03cb7de8,0x01e1eff4,0x04f3ad30,0x01490d5e,0x03528814,0x0040e970,0xfff25ef5,0x011e136c,0x00fa4a13,0x019b707a,0x01aed0fe,0x0111df52,0x01513d32,0x01822ec0,0x02b878e8,0x02a89654,0x025aab3c,0x018b9a3e,0x017f5a72,
-0x01c6bb30,0x015b9a3e,0x0222b4a0,0x021839f4,0x0217af00,0x022675e0,0x0164a3ba,0x0025e3a4,0xfee7c8f4,0xfcbcc760,0xfe110204,0xfccf6718,0xf9d542a8,0xfafd6d50,0xfd6c9084,0x01b0f410,0x017e066a,0x008985f4,0xfd3229d4,0xfe4f2364,0xfdaa5eac,0xfe05f8d4,0xfd793c2c,0xff6dd6a6,0x005c6ee1,
-0x0161eee2,0x01d4f798,0x00ec61cb,0x0179b27c,0x019941f4,0x0181f656,0x00c79396,0x00bc2473,0x00de7bbe,0x019c6bc2,0x01e773a2,0x01fdc072,0x01d0d628,0x01c0767c,0x00d9edfd,0xffe42af9,0x005b29ae,0x01e8f01e,0x02d15604,0x02f23da4,0x00d6e83f,0xff21bef1,0xfd99bd9c,0xfcc7f664,0xfe89f2b0,
-0x0046af81,0x0236a458,0x0074782a,0xff332641,0xfef6a1f6,0xfdbf5f48,0xff025ba4,0xfdda5470,0xfef4eafe,0xff05a633,0xff1e5859,0xff2c8cc1,0xff7a8725,0xffd1c914,0x00c001f6,0x011efc86,0x02510a34,0x01aa1d00,0x01565ce2,0x012c259a,0x00a3b025,0x0079d7e2,0x005e0bc3,0x00aca118,0x0182c996,
-0x00f74ecf,0x010ce69a,0x01afb1fa,0x01c9634a,0x00cb0b05,0x003ba5ad,0x0005ff71,0x00acec11,0x018506e4,0x02460ddc,0x01fe6096,0x01c9bbaa,0x01f2a1fa,0x0160a4a4,0x00ef3392,0x0072bbaa,0xffc5e122,0x01b1a8f4,0x01b997a6,0x0345b188,0x01c861f4,0x0277e450,0x0256c900,0x020e0040,0x0218cb24,
-0x01e15e5a,0x0213ed38,0x023c521c,0x026640bc,0x0290a44c,0x02cd52ec,0x02858d9c,0x0279febc,0x024079ac,0x01e20cfa,0x01e7f76a,0x01af0f1e,0x01d79db6,0x01ffdf80,0x023d91fc,0x02a0bfd8,0x02ebce88,0x0308a98c,0x02e97c7c,0x02b8af3c,0x02b248f0,0x02bfc9d8,0x02cb1384,0x02bae7c4,0x028765b0,
-0x025a1ab4,0x02202460,0x01faa3dc,0x0149af3e,0x00d5b63c,0x0232da2c,0x02ab71c0,0x02b360a8,0x01c22a66,0x026cd074,0x028fc2a0,0x029458f4,0x02807734,0x02591178,0x0255b1c8,0x02419f20,0x02426560,0x02a96c34,0x0237e140,0x0223e494,0x02752610,0x021b8d50,0x0164e21a,0x01a8ac14,0x01c5fae6,
-0x01df4ed6,0x01fc112c,0x021bc200,0x02556bf8,0x023078f8,0x021671b4,0x01ec6542,0x01cae6e2,0x01aa9c48,0x01956b8e,0x017dc48a,0x016b1aa4,0x0159bcc6,0x0149eabc,0x0133b226,0x004ec375,0xffe8128c,0x00d3bb5a,0xff97935e,0xfea060aa,0xfd16bacc,0x00498a54,0xff0f6fff,0xfdfe6748,0xfe1abc86,
-0xfe3a45ba,0xfe3fcc58,0xfe12f320,0xfe0d30a8,0xfe30ca96,0xff87e31d,0x0044f8fd,0xfda3083c,0xff3e5303,0xffdc15b3,0x00c6a0cc,0x0053fc10,0x007b867d,0x00a1cf9e,0x007f4dbb,0x00624b42,0x001e8921,0x002593e5,0x001be09a,0x002bd66c,0xfffe0e13,0xfff1796c,0xffd72df5,0x0004dd89,0x0008779b,
-0xfffe3777,0x000b0209,0x01292670,0x00fd7d7b,0xfbfdba40,0xff79f90a,0xfee91a78,0xff745524,0xfff1d3d3,0xffd65c2a,0x0082334e,0x00810032,0x006e0da2,0x00806e9e,0x008682d0,0x00f0de00,0x001830c2,0x00257e53,0x000af807,0xffe295b0,0xfeb2ee3a,0x00c26a78,0x007ec816,0x0084412b,0x00e02108,
-0x006c2e30,0x000a5dcf,0xff6e0049,0xff752580,0xff94083b,0x001ed87a,0xffd1d581,0xffc35a34,0xff93716b,0x0037ab8d,0x00af4def,0x012e648a,0x0157f840,0x01dc012c,0x00cf3a40,0xfe21f99e,0xffbd1c42,0xfe601c00,0xfeb6c10e,0xff76e8f9,0xffd837b5,0x005efb0e,0x00d66dd1,0x00a26125,0x00d09de6,
-0x0075aca3,0x020ec024,0x00bb6903,0x00a4e207,0x0066d76b,0xffd5af1e,0xffd28822,0x00d68151,0x00f5d63b,0x01222868,0x020c1408,0x0188362c,0x0112daca,0xfff19de7,0x0038d41d,0x0028582a,0x00675d44,0xff376a0d,0xfea7dec4,0xfdeb1ccc,0xfebb7e00,0xff0d0fb7,0x0088cf62,0x00bced81,0x075133d8,
-0x02887c28,0xfcccb774,0xfe36899c,0xff570033,0xfe7992c8,0xff7d0ece,0xff55c824,0x00be68ad,0x01c8b2cc,0x017e6288,0x013c290c,0x0175bd26,0x02a48c0c,0x00d58762,0x009f7a3b,0xff498044,0xff73fc94,0xfe80a3f8,0x00819bea,0x00c5f5c2,0x0081870b,0x01dc7a50,0x009b9884,0xffaa76fd,0xfe24d260,
-0xfe776456,0xfee82c8a,0x0041f656,0xff154ba2,0xfee56496,0xfe57e686,0x005c2a03,0x01f0542a,0x0571c9f0,0x062bf890,0xff07a5ca,0x0838e8a0,0x0e89bbe0,0x0a07dd40,0x05f274e8,0x0391b018,0x0323e07c,0x04b4a0a0,0x036b5804,0x02105f30,0x01decaf8,0x00e9239c,0x00a3ea89,0x01e4679e,0x010675c8,
-0x0101e8be,0xff87d176,0x00e72a1d,0x008ffc01,0x01b69058,0x0365e634,0x049b6710,0x07e564d0,0x077d1108,0x08afffb0,0x0ac35eb0,0x0aed97e0,0x0a57db10,0x08fdf2b0,0x02fbdd48,0xfd376550,0xf76f19b0,0xf4a76610,0xf44e3da0,0xf5f0d990,0xfce1fa3c,0xff611845,0x00d887c6,0x04855de0,0x037651e0,
-0x04bb6738,0x057bb308,0x03ef5970,0x02d1b62c,0x030aa450,0x0311be50,0x00ddaf17,0x01e7f8f6,0x02338a64,0x0363933c,0x018e2352,0x01a28fd6,0x01bc3930,0x02b88660,0x025803b4,0x017b0ffc,0x0123a00c,0xfe443f6a,0xf9ed6ba8,0xfb81edb8,0xfb895a78,0xf8f2ba68,0xf994ec08,0xf97a3b28,0xfa89edc8,
-0xffd265f2,0x03908530,0x0643ee00,0x0898eff0,0x082998f0,0xff29857a,0x026998f4,0xfe9026ca,0x017fef0c,0x02b4a6ac,0x02068648,0x03690f0c,0x00ab6891,0x02e3ff8c,0x0647f020,0x02fcc418,0x01b58c16,0x00905d6d,0xfec95810,0x0000a840,0x06c241e8,0x01dc52e2,0x00d51990,0x014e3568,0x0097c43d,
-0x00821919,0xffe14e8b,0xfdc2a840,0xfd56f054,0xfcdff894,0xfa24f038,0xf87839c0,0xf72ae920,0xfa499450,0xfcc3b1b8,0xfeff893a,0x02901a78,0x04b2a118,0x0815be60,0x04767210,0x01adfa9e,0xff03f1f2,0xff9c9a68,0xfcbc79e0,0x003d51b7,0x032bd37c,0x0084f873,0x0191ba82,0x0131a7a6,0x01dba0ae,
-0x037b5764,0x00efa7c5,0x000e7663,0x01eb4492,0x00ffa7eb,0x019d3710,0x049cd480,0x01ac816e,0x01046012,0x0018f6ff,0x00b6cb57,0x01c24728,0x007f46c8,0xff8dd9c2,0xffde63b6,0xfffc2c32,0x00ddc578,0x00e6cc8d,0xff6d7a7b,0xff438c87,0xfcc9ae80,0xf81e1fe0,0xfa211568,0xfadd2560,0xfac0dc48,
-0xfbb49620,0xfbeaa358,0xf87ecd48,0xfdfcca50,0x003aae08,0xfeba76e2,0x011cbde0,0x018c3cac,0x00c2fb52,0x014c782c,0x00cc71e3,0x0173206e,0x013f44b0,0x0124de60,0x0177c3d0,0x00d1fd78,0x00b70330,0x00e3cb43,0x00f02688,0x0155df80,0x00e9f8cd,0x010095d8,0x00f14668,0xffb1755b,0xff1faacf,
-0xfe9d80a8,0xff097b42,0x00973125,0x00f19528,0x01a9ac46,0xfe5ce006,0xfd089f00,0xfcd8aa50,0xfd92c63c,0xfdcf015c,0xfcfd002c,0xfe43c6dc,0xfdf36c94,0xfa9d9d78,0xffdaebff,0xfe5a996e,0x012a6bc6,0x01d1e686,0x02421d20,0x02174810,0x01ea1ce4,0x01bf1058,0x024ffbac,0x024116e8,0x02068628,
-0x011339fe,0x01da306e,0x01c3c87e,0x0182881e,0x00f2c6a8,0x007e0ed4,0x0028f7ad,0x00498ea6,0x00016ec2,0xffd09f15,0xff240241,0xff227011,0xff8bb7cd,0x018556f6,0x01dee962,0x022fcd2c,0x0193da8a,0x020b1e5c,0x03170338,0x02112c54,0x00743f3a,0xfdd1db60,0xfe756950,0xfe2d98f4,0xfd114c8c,
-0xfccdc984,0x00360a23,0xff88cc3e,0xff45dcb5,0xffde8d7c,0x000a30c1,0x002a4606,0x004c1e6e,0x003b6bf0,0x006135c7,0x007db166,0x00c520b3,0x00ce0fe2,0x0175fa3c,0x01adffe4,0x01cb9c2c,0x01c36624,0x01e6a8a8,0x011e77c0,0x0082306b,0xffc3f3ae,0xfff8cc6d,0x0050b20b,0x00454f74,0x00d33b01,
-0x0161a84c,0x020924f0,0x018ef9ca,0x00eae84a,0x005749a8,0xffe03dde,0xffa5cc04,0xff354790,0xfffa5341,0x0057c58a,0x00ff7224,0x00aa53ea,0x00343790,0x0073995d,0x00645bfe,0x00febb29,0x00f5b957,0x0142fd3c,0x019fee84,0x01b848d0,0x01c97c12,0x01799c28,0x01808790,0x01479c1e,0x01399152,
-0x012bafb4,0x0157fdd6,0x00e5eec1,0x00c3aab2,0x009c2069,0x01353566,0xff71ba92,0xff705b54,0xff6bfb15,0xff749dfd,0xff6400fb,0xff4294af,0xff429fbd,0xff1fb8d2,0xff219b5e,0xff09c785,0xfee39c48,0xfec2acc8,0xfe9c0d0e,0xfee12992,0xff1eacb7,0xff64b648,0xffa39688,0x003411db,0x006ca627,
-0xffadc060,0xff9d28b6,0x00216ae3,0xfff65dd0,0xffd4f214,0x0032519c,0x003fcd16,0x006dc942,0x008a3c53,0x00b29749,0x00d40101,0x00e71756,0xffe8e333,0xffce94a9,0x00e9294c,0xfff1b471,0xffdb6841,0xffd4e33f,0x0003ab68,0xffe74679,0xffdeaf47,0xffd833d7,0xffd695ff,0xffceb29e,0xffbe5462,
-0xffb1a3af,0xffb12073,0xffb6428d,0xffbafa4f,0xffb048b8,0xffd719a8,0xffecf700,0x0005a812,0x00231d1b,0x004ab2ba,0xfffb0ac7,0xffbcd954,0xff31ac12,0x001d1707,0x00a86751,0x010628aa,0x002db278,0x00a4d95f,0x00afd0de,0x00aa3368,0x00aff871,0x00b0cd3a,0x00b38a7a,0x00c1f341,0x00f743d9,
-0x009d4a27,0x004f552a,0x00c0e0f7,0x008b85cb,0x005dd015,0xffdcf332,0x00125fe1,0x0001be0d,0xffee6e95,0xffe68a6a,0xffdc6cf9,0xffbc4f29,0xffdc72b3,0xfff0489b,0x00087db2,0x0024bc72,0x00293f9b,0x0003b35e,0x001e7526,0x0012be45,0xffd8717c,0xffc12a79,0xfe087b08,0xfed0e682,0x020340d8,
-0x005af705,0x011214b2,0x00abb3ca,0x0098fa52,0x008bc3cf,0x0045d17a,0x002fab9c,0x0065251a,0x005f7467,0x008f0a69,0x00ee740d,0x00ce5aba,0x00a30683,0x005ee45c,0x007ab331,0x00f0d106,0x001b5ca1,0x00258b05,0x002fcee5,0xfff6c551,0xffdf7a59,0xffc070c0,0xff8f214e,0x0000035b,0x00310629,
-0x002c12a0,0x004a6fbe,0x00324d0c,0xffb4eb4e,0xffad3787,0xfefc22ae,0xfe07fdbe,0xfde887b4,0xfbe65678,0xfdac773c,0x00cb6ee9,0x0052ff0b,0x01ce137e,0x014c2cd8,0x0119d2e0,0x00f74f5b,0x00bcb0bc,0x0092753d,0x00c070e1,0x00b2ec4c,0x012c4036,0x01c629dc,0x01758562,0x010585ee,0x006a9721,
-0x00d58d07,0x01196080,0x006de96f,0x00519a20,0x00484b5f,0xffa62118,0xff6be945,0xff16ed72,0xfe58ca0c,0xff055dcb,0xff8df703,0xfff6c9af,0x00d79e9a,0x010badb0,0xffd653d9,0x004aca39,0xff7ac2c7,0xfd34eab0,0xfd20ca18,0xf4d58f50,0xfbf74190,0x02b1e818,0x01bd6644,0x0242a300,0x0282e43c,
-0x01c98e58,0x01071394,0x00d55990,0x00db5a7e,0x007b09da,0x00e7d9b2,0x018d37e8,0x02de3508,0x017a6056,0x010bf5c6,0x00f824f9,0x010d1368,0x016c7778,0x00ce89ca,0x0073b0cf,0x00db6844,0x000b215f,0xffb09eb2,0xff2d96a5,0xfe544c6c,0xffefe377,0x00bbed4a,0x00a13ac7,0x01519664,0x0060166b,
-0xfe230028,0xfe4f26c2,0xfbe38a40,0xf6b09800,0xf66c22a0,0xfb836360,0xfb5d25f8,0xfb06e450,0xfd98d314,0xff6ee461,0xff925e22,0xff02dae8,0x000e03b1,0x029d8d84,0x033a419c,0x02d0b484,0x0133a3e2,0x00d713fa,0x02368cb4,0x015cd40e,0x0130b0cc,0x0083757b,0x017f91ac,0x02387b88,0x02dff77c,
-0x00421274,0xfe87cfaa,0xfc731b28,0xfc42335c,0xfbaead10,0xfa6a4388,0xfb47d8c8,0xfc4b7cc0,0xfe0955d2,0x0062671b,0x0369191c,0x08fcfce0,0x04d585f0,0x043c8198,0x068c6240,0xfe7ddc7e,0x06ea3730,0x0153bb12,0x00e32d56,0x027f82e8,0x00b8552b,0x02f34424,0x0395a3ec,0x02dc5f44,0x02f48bdc,
-0x03080594,0x00c92f09,0x015bf730,0x01ba16a0,0x0361f914,0x018d5d3a,0x0184e52e,0x015b1eb8,0x01bdd86e,0x01caec92,0x00d7c6f8,0xff93d281,0xff9c1f5f,0x006388c5,0xfd205c14,0xfb444040,0xfadfb610,0xfa03f108,0xfa58fa10,0xfb21b698,0xfe664354,0x00a6f529,0x03f7cbfc,0x04be00d0,0x04ac6dd8,
-0x05195ba0,0x06c37e98,0x02e48f48,0xff1d9423,0xfdf48528,0xfe57538c,0xfe011806,0xfe8ae804,0xffe75543,0x04dfdf70,0x017a100c,0x0040ded6,0x0018be8e,0xff6c79aa,0x00ff26d3,0x0600ee98,0x01cae02c,0x00b7bb45,0x00770735,0xff53be32,0xfeddf228,0xfe794d4c,0xff1fe711,0xfe0e2aea,0xfc9691a0,
-0xff000608,0x01589378,0x03c2dc58,0x04f33298,0x04db6980,0x02f148cc,0x01d33e2a,0xff9a235f,0xfd340478,0xf9778378,0xf87e8e78,0xf8692490,0xfe87e2fe,0x016afaf4,0x000d4fca,0xfe859e4a,0x002156ca,0xffd6711b,0x008e3cb7,0x00a93850,0x0238b5ac,0x00a3777a,0x00adc6e5,0x022f81e4,0x004fe193,
-0x01203b82,0x03c1bb30,0x01144d28,0x0078160c,0x0030b79a,0x00857f79,0x00551a60,0x018354e6,0x04463e98,0x047216f0,0x02e4f67c,0x04c9d790,0x05cd3e90,0x06614040,0x051790a8,0x035ecf44,0x016f2e44,0xfd57d870,0xfb38bf28,0xfc3e69e4,0xfb0159c0,0xfc0e6cd4,0xff598f81,0xff9bda52,0xff88c7cb,
-0x00509aef,0x000402dd,0x003a1b26,0x00bd3595,0x0068a169,0x00d6bbe5,0x017c1bbc,0x00de6808,0x00771ac1,0x00341cd6,0x00e82e4e,0x0149edda,0x012b8e9e,0x0116c744,0x00e402a7,0x00e9b8eb,0x00537deb,0xff939609,0x00b45c72,0x012f08ac,0x0217aae4,0x0282caf8,0x01f24f00,0x011e2e42,0xffd56365,
-0x003039c4,0x004d1aff,0x008e098b,0x018779c8,0x01b5c0f8,0x0130655a,0xfd3b6c18,0xfbc34210,0xfc61eb84,0xfe9c6dae,0x00a19cb7,0x013da79a,0x00a33c39,0x007b5f05,0x0140df2e,0x009f3a11,0x00af5c3a,0x00d3f7f3,0x01187226,0x01383f62,0x00d7de09,0x00d3a915,0x00c2ffea,0x00cf5d6f,0x01236742,
-0x01341762,0x00feda01,0x00a43bd7,0x00b00d14,0x01b69088,0x017d8738,0x00d013a2,0x000c48e6,0xff63b00a,0xfee5c298,0xfedb816c,0x006b62ac,0x00b9b967,0xfff6a27b,0xfe7b583a,0xfe708cfc,0x002318cd,0x00e9e5a2,0x00b00fa2,0xfe23890e,0xffc49c63,0xfe9894aa,0xfe8c4afe,0xff802c34,0x0023d41e,
-0x00e1cec7,0x00c5da8b,0x00f38ec2,0x00edde80,0x00d3e15c,0x00a605df,0x00994d18,0x00c17d8d,0x010ecb98,0x01244440,0x01036dfa,0x00b533fa,0x00632d38,0x0013154b,0xff9bdff1,0xff15e4c5,0xfece335e,0xfeb0f208,0xfeba0762,0xff8050ff,0xfff77922,0x0034143a,0xff5f90a4,0xfeb59a2a,0xfe4b5ffa,
-0xff910b4a,0x0089e5a1,0x013270ba,0x0033bd15,0xffacfbe5,0xff1143ec,0xfeea8dfe,0x01508a36,0x016dd982,0x01a0a6a0,0x013366fc,0x01630cbc,0x0134a748,0x00eed2c8,0x014733d0,0x00db3c0e,0x0127cb5e,0x013ace52,0x01280e20,0x01103d58,0x012e8bb2,0x00c74174,0x00a52d35,0x009a9373,0x007c7fc8,
-0xffae2e26,0x00a5eada,0x00bcdc16,0x009a92a0,0x006805ea,0x0043a8bc,0x00339d3b,0x00580d63,0x008b4193,0x00d94fbc,0x00e22ca0,0x00e2cd24,0x00bc82af,0x00f028c1,0x00f19f8e,0x0106894e,0x011ae0f2,0x01454c38,0x01763dd6,0x01765e0a,0x01bbb11a,0x019b400e,0x00f83d72,0x0198833a,0x01786efc,
-0x01418cca,0x0151877a,0x01335a6e,0x011136d4,0x010aa9d4,0x00f30623,0x00d9b65a,0x016c945e,0x01ad62f8,0x0055850b,0x0117fef2,0x01460644,0x0175ddae,0x01348b36,0x01329ecc,0x012f2980,0x011b60d8,0x00fa7617,0x00c13a7c,0x00e987b1,0x01035450,0x012c9644,0x014870be,0x016d67fc,0x01869590,
-0x01863cfa,0x01891ef0,0x01831b7a,0x0179af1c,0x021697f0,0xff7b3eef,0xff53a13e,0xff6ae8a5,0xff34a785,0xff482726,0xffb6bdfc,0xff922829,0xffc07be4,0x00182655,0xfffd4d9e,0xfff25168,0xffeeff07,0x0005007b,0x001673d3,0x0026e639,0xffead32d,0xffc94cd7,0xffe2aa44,0xffba9803,0xff9af067,
-0xff798f52,0xff909185,0xff85e9a0,0xff708a9a,0xff72b030,0xff6bf42b,0xff755d25,0xff5817cc,0xff4cb82f,0xff33d80c,0xff405020,0xff43c008,0xff500b29,0xff38161a,0xff301f45,0xff3da16c,0xff47b4df,0xff41e2a7,0xfe518e0e,0xfdaa5d2c,0xfea38086,0xfefdde18,0xff82bcaa,0xffc6a057,0x001c911d,
-0xffe8a835,0xfff37563,0x00048d3d,0x000bb3d0,0x002571be,0x003b411c,0x005cefd9,0x002fb59a,0xff9c2307,0xffab3ed8,0xffbe2a3f,0xff785e37,0xffb6c3e4,0xffba1594,0xff7c9e69,0xffa4bc2c,0xffaecf9b,0xffc3bb9d,0xff74ad89,0xff295f5c,0xfed86832,0xfef5866e,0xfefb9318,0xff3941e9,0xff3248b0,
-0xff99d055,0xffbab33a,0xff8e1210,0xfe57025e,0xfcf87ff4,0xfbe2e748,0xfd254950,0xfe4271fa,0xff668728,0x003adda9,0x00a8651a,0x00813e7b,0x008acdc7,0x008aab97,0x00bd4d23,0x00fcabc2,0x00e5297e,0x01340630,0x00dfe856,0xffa29340,0xffe8509a,0xffa36353,0xff7331f7,0xffb97357,0xff748a0e,
-0xff0617fc,0xfeef68ce,0xfecdf4a0,0xfeed6470,0xfe357b48,0xfdbcff54,0xfd3fc7a4,0xfd394a0c,0xfd84a230,0xfe292704,0xfdea1e08,0xfe389bbe,0xfdc8f2dc,0xfda48464,0xfe45327a,0xf90eaa00,0xf737d730,0xfab2c2b0,0xfcc7ea88,0xfe66a9da,0xffd9761d,0x009a9df9,0x00fa9432,0x014e8fb6,0x01058b3e,
-0x010a7c6a,0x01946996,0x022f2944,0x01e36916,0x0119999e,0xff98b9f6,0xffe209e6,0xfff5b36d,0xff65261e,0x0008ced6,0x003bbbdd,0xff5ea665,0xff7beec9,0xff68bb16,0xffc6b1fa,0xfebe581a,0xfdcea190,0xfcd09e44,0xfd2b9c08,0xfd850dcc,0xfee0d020,0xff3ef1b2,0x00f50dbc,0x0023ba06,0xfe59f122,
-0x06750840,0x02a9a61c,0xfec62f2a,0xfce1e614,0xfdce5bd8,0xfe1d2400,0xffca5885,0x00ad6570,0x00be5cc4,0x0111b35e,0x01921f46,0x015a99ca,0x017d308a,0x022d7254,0x00ffba73,0x00b8aa0a,0x00c5e73e,0xffbc8279,0xffdbaa44,0xff8afe24,0xfde9623c,0xfd205920,0xfa9a78e8,0xfce3fa20,0xfc626c6c,
-0xf98b19a8,0xf7966240,0xf59bb9a0,0xf4280470,0xf57b02e0,0xf6d04a20,0xf8425bf8,0xf42973c0,0xf4dcf3a0,0xf83598c0,0x01191bb0,0x0a120770,0x0845a7c0,0x06f88540,0x05bd1448,0x061b6b40,0x03274da8,0x0276da54,0x02c46a8c,0x01f1defe,0x0209e478,0x011be80c,0x0097adb8,0x01044138,0x02972674,
-0x00f8c014,0x007701e1,0xff726fbd,0xfefa1e60,0xff5aab65,0xff3a729a,0xfebe8e16,0x008bbdbd,0x020d3478,0x0373987c,0x03c47740,0x03c91174,0x03efea1c,0x0417b7a0,0x03d8fb7c,0x00aec7ab,0xfdef8084,0xfe992082,0xf9a9d790,0xfc6b5724,0x04ce38e8,0x07bc9358,0x02c8095c,0x0254c7e8,0x02d8e7b8,
-0x0157a49e,0x0085005c,0x02584ad0,0x0250ecdc,0x04b8c0a8,0x01731cd2,0x00385d5c,0x00b3c60f,0x003f19e0,0x01970668,0x043cc028,0x018108b0,0x00d14916,0x012ce880,0x0101afec,0x0079129a,0xffbe04cf,0xffdb5372,0xff1ab0df,0xfe40692a,0xff81b5f9,0xff2d36f3,0xfd2c9240,0xfc03ae2c,0xfbc65268,
-0xfcbaac30,0x0061ca10,0x021d0e74,0x043ce220,0x0191caec,0x024dc50c,0x02d7a044,0x035e6d04,0x0108152e,0x009442c4,0x01e83518,0x014c1cc6,0x013c598c,0x01f3ec4a,0x018d42fa,0x021d8878,0x00fc77b8,0x00815fbb,0x0165ca80,0xffc3ba31,0x0073816a,0x02d2059c,0x0258cc70,0x02ae931c,0x024250e8,
-0x01921c36,0x01f0ba2c,0x01666262,0x00cc37eb,0x00d3dc41,0x0067ecf9,0xffaa002c,0xff0551ba,0xfee3062c,0x0058888d,0x017cacea,0x01facef0,0x027989dc,0x01dc0a9a,0x017f9710,0xff13b3b0,0xffcc52a2,0x0323029c,0x0283b824,0xfffcb40f,0x009ad312,0x003774d8,0x0059beef,0x007644bd,0x00e20b3e,
-0x0145adb8,0x01e0182a,0x013b2468,0x00d177f4,0x0083a6c6,0x012900e2,0x018ba0f4,0x0158d7e8,0x011aa36c,0x00cbf4d4,0xfff7999a,0x0056f194,0x011177d2,0x000d48e0,0x009a7948,0x009fa0c0,0xfe16fe88,0xff337d35,0xff800ecd,0xfef4158e,0xffa7b1ca,0x008d8d00,0x016df02c,0x00702b16,0x00010fea,
-0x008dc795,0xffd392a2,0x003893ab,0x0255ab08,0xffc4be39,0x0174aa2a,0x0074a64a,0x0162e476,0x0187d69c,0x011afa14,0x00e8cd0b,0x00a03671,0x01342e20,0x00344480,0x00389976,0x00b7ffe2,0x009ce480,0x00762078,0x009b90df,0x010af032,0x00f7253c,0x0085ebe2,0x0074a480,0x00b743ba,0x005dd856,
-0x006ae348,0x006f0968,0xfff6525d,0xff0e1743,0xff98200c,0x015ac5a8,0x010f13aa,0x0099877a,0xffc35e19,0x0038ebb6,0x006af47b,0x010b2aa6,0xfe8ef0dc,0xfe1e0762,0xff248479,0x01014382,0x00df793c,0x01a42f0a,0x00fd7ee9,0x018266fe,0x01e09fc0,0x02071ae4,0x0229ea64,0x02449320,0x01d2842a,
-0x01355630,0x00acce9d,0x0068a819,0x00d42dc4,0x009c1d37,0x008657d9,0x002da9ad,0x002f7ed9,0x002953c7,0xffd8ff72,0x00396ed2,0x003ed253,0xffe90e3a,0xffd30625,0xff77a1b2,0xff34df9d,0xfef96d4a,0xff8a8a5f,0x005a71d8,0x01002292,0x00d7d0e8,0x00891bfa,0x00b954fc,0xffff0ff0,0xff722ab8,
-0xfe87c4a0,0xff85be52,0xffa3b0a0,0xff249a2c,0xff7937e8,0xff214a57,0xff169090,0xff0c8395,0xfed5f57c,0xfebfa710,0xfede9d3e,0xff143077,0xff6b16d5,0xff675e29,0xff7a2efd,0xff9a6b22,0xfffb5822,0x000e3e6b,0x00046f3c,0x003b775c,0x00e59304,0x00476b28,0x001fcc80,0x0027c512,0x00213f40,
-0x00128dab,0xfff5a1f7,0xffa96451,0xffde9ef4,0xffe3f319,0x00183ef5,0x007668f0,0x00f3b6f8,0x015ea802,0x011fce60,0x00f11164,0x00acdc99,0x00372a27,0x0052850d,0x0005286b,0x004798dc,0x00710b6a,0x0127a57e,0xfff0006a,0x004d9f97,0x00da984a,0x00fb8345,0x010bf128,0x011c411a,0x013ea57a,
-0x015b5438,0x0171e90a,0x00944b7a,0x0037f9c9,0x018cf758,0x00ba512a,0x007689a7,0x002ad140,0x0052d0fb,0x004e623e,0x004e36cd,0x0054a612,0x006a290e,0x00810e6b,0x00a1d326,0x00bf9878,0x00d3732d,0x00dee57d,0x00db7291,0x00f674f2,0x00c0023a,0x00a0e1e9,0x0089d409,0x0067e262,0x00837c66,
-0xff2ffbf8,0xff51c2c9,0xff7ce599,0xff96116a,0xff814419,0xff82dbf4,0xff9edd27,0xff9ec0f6,0xffc1fac5,0xffb390bc,0xffbad488,0xffc0af05,0xffc414f0,0xffc5aaea,0xffbeb8cf,0xffae0c00,0xff9b34a3,0xffaa6a30,0xff8ad008,0xff7488a4,0xff5d7df9,0xff52c783,0xff4f0ffa,0xff580a76,0xff4096f2,
-0xff386d8b,0xff43470a,0xff2eb78d,0xff18bd2b,0xfed89712,0xff11c420,0xfef9965a,0xfe7aebf4,0xfebdba7c,0xfedcf31a,0xff045750,0xff3f9920,0xffefabb4,0x005c1c76,0xff7555a9,0xffd99ad5,0x003a9d52,0x0053f181,0x003a9108,0x0016eeae,0xffb8a82a,0xffa40771,0xffee85b9,0xffd7d9ab,0xffea1684,
-0xffdb9194,0x001c7e98,0xffff4e43,0xffb12f51,0xff800231,0xff7ee816,0xff9047ea,0xff591792,0xff3f49db,0xff42612e,0xfef4d280,0xfed1aab0,0xfeda80f6,0xfe7ad9b2,0xfe535c7c,0xfdd3ac7c,0xfe7b213c,0xfe19390a,0xfca12adc,0xfd03e590,0xfd56b714,0xfe569122,0xff6d9e58,0x014eeb7c,0x0142e99c,
-0x005efc75,0x0094fc3f,0x009d1004,0x008dfbee,0x00ba4ef3,0x00d83be7,0x0058702d,0x00316dd2,0x00bcc044,0x0082fd04,0x00bbee80,0x0076bf2a,0x00ec1c6e,0x00c79352,0x004e99e2,0xffdb31cd,0xffa6be78,0x00010f87,0xff9765ee,0xff91d0cc,0xffe3a797,0xff52872a,0xff2a9897,0xff7cdf87,0xfeff6668,
-0xfead9424,0xfd594330,0xfea5aa6e,0xfdb2b69c,0xfa851be8,0xfbb70488,0xfc4b1b9c,0xff2d7644,0x009b61be,0x054f34c0,0x04873420,0x023eec20,0x020c304c,0x03227728,0x01f8eee6,0x024f9d44,0x01b00d1a,0x00c146c1,0x00cffc65,0x0163c768,0x01209e20,0x0182ce88,0x01d22388,0x01dac088,0x0193b336,
-0x00284011,0xfff0ef66,0xff9819dd,0x004462c8,0xffc7f139,0xff651c4b,0xffe843fb,0xfedba6d4,0xfe880696,0xfefd9b52,0xfdd159a0,0xfd584a10,0xfbf97388,0xfdcd68bc,0xfbe90e08,0xf6ac1420,0xf7b94670,0xf94d9440,0xfeea3aae,0x0397e7c0,0xfaf3b490,0xff113ee1,0x017dd5f4,0x00b9d30e,0x00135154,
-0x0029e798,0x002e2ab1,0x00a60100,0x0261f9ac,0x02575710,0x0110066e,0x01b8f3f0,0x01dc7a86,0x0192a61a,0x0150a7ee,0x0139fc44,0x0057edf2,0xffc3edfd,0xff0bcee0,0xff77fc28,0x0174bebe,0x01e26808,0x01f42092,0x014803be,0x00c6bf67,0x015f2196,0xfffae5d0,0xff7414db,0xfdd948bc,0xfeca95e0,
-0xfe5be35e,0xfeb2a766,0xfea39fa4,0xfccb3ddc,0xfc3bf59c,0xfb0c8268,0x018c1cfe,0x044670e0,0x06435bf8,0x053f0da8,0x0420bed0,0x0299e89c,0x01daba0e,0x041cf9e8,0x0192a1ce,0x00f59abb,0x004133a8,0x00a51948,0x014497e0,0x019acbd6,0x00ec89f1,0x00707231,0xff23d719,0xfebb8162,0xfe1a701e,
-0xfdb6a43c,0xfeeb6be8,0xfed68806,0xfd3fe6fc,0xfe4e6f8e,0xfe46d0e6,0xfd245e30,0xfb502030,0xf96e8f58,0xf78a3200,0xfb359e60,0xfbbf3840,0xfa41fc08,0xf9e6bce0,0xfeb30592,0x07efc1c8,0x037b0f04,0xfdbdae84,0xfd36fa0c,0xfd52f3dc,0xfdb179d8,0xff9180f2,0x02497b70,0x03d702f0,0x041ccb30,
-0x01021a3a,0xffbda20c,0x0105c8b6,0x001d23c8,0x00fc0661,0x01af8f66,0x0260368c,0x01eebc50,0xff8d6e78,0x00326645,0x00246240,0xff388f2f,0xfc99ac28,0xfbc87648,0xfbb40220,0xf937d9e0,0xf866b930,0xf9948940,0xfb0ead70,0xfda897dc,0xfffd1a8c,0x0314b798,0x0591a9f0,0x056749b8,0x04cf4ad8,
-0x016a69d0,0x021e9128,0xff80de1f,0xfff85afb,0x00155994,0xff95cdbf,0x00965388,0x014152de,0x013078f2,0x00ccf5fd,0x00baba92,0x01341fe0,0x0114f156,0x019a0f80,0x00fd5551,0x012c3366,0x0116ea34,0x01a35b2e,0x01ed6696,0x002c779b,0xffc675ae,0xffa06c51,0xff1262f9,0xfeaec338,0xff2e8e44,
-0x001e08e6,0x0146e2dc,0x025644f8,0x04118240,0x05261c00,0x07425128,0x093c4d00,0x08b0f160,0x06317068,0x03141fd4,0x00fff811,0xff6cb3f7,0xfea621ba,0xff08b152,0x005fc876,0x006de18c,0x00759f0f,0x002870fd,0x005c5478,0x00ee4c0f,0x018230e6,0x01fc7968,0x0123b86c,0x00887bf4,0x00ad13ad,
-0x009b863b,0x00b653a7,0x0121e208,0x004471ec,0xffcf267c,0xff916f26,0xff1afe32,0xff0841e1,0xfea877d4,0xff9518d2,0xfff3ec27,0x00f1864c,0x019c6502,0x02737754,0x0437ff80,0x04d0f860,0x0423d4b8,0x02a44dec,0x01885352,0x00bb4601,0x0115cdc4,0xfe5fce06,0xfdb10590,0xfeae521a,0x0004b1fa,
-0xfef2165a,0xffab6002,0x001450cf,0x000e6769,0xffd80b8f,0x0028c1fb,0x002dd496,0x0059cd2b,0x00583133,0x006f51a3,0x00922296,0x00c58b1b,0x011c1f98,0x01d7add8,0x00d8b33c,0x0061fa85,0x00914857,0x0089c773,0x0029cc51,0xffb771da,0x003bd2fe,0x00e4da41,0x019c82fe,0x02c08104,0x02f5f2c8,
-0x01c36b8c,0x014c6470,0x017c2ac4,0x02091a74,0x037e18fc,0x0336e4b4,0x01ccc264,0x005f486a,0xffd2230c,0xffe861e8,0xff34a703,0x0092344a,0x00ebbea6,0x014b425a,0x00ca1a3a,0x00c3ad50,0x00e78674,0x00d63af3,0x01115f4e,0x00fdcde1,0x011c31dc,0x00dd7d49,0x00f469ae,0x001b2a8f,0xffeba296,
-0x002ed9b0,0x00be3bf2,0x0101ea3e,0x0121d0c2,0x0138cefe,0x01b8edf2,0x0170d786,0x00bc2ba5,0x000d68b1,0x001be10a,0x005fbfd9,0x00ca81d3,0x00c82504,0x00a27325,0x006f4249,0x00955d7c,0x00f8aa05,0x0195c770,0x016c1072,0x0106efd8,0x00633eaf,0x00a9b25a,0x00a618b4,0x00569870,0xffd7a97c,
-0xfff2d883,0xffc20665,0xff863f00,0xff79d2ec,0xff4ee3c9,0xff98cd03,0xffd5bd11,0xffdf1361,0x00449364,0x00961b67,0x00c23e91,0x0063d0b9,0x007373a9,0x00642802,0x0050412b,0xff979110,0x00c07283,0x00d3d5d6,0x00ddf282,0x0101c07e,0x011275de,0x00fe0326,0x00e99572,0x014f3eac,0x01c03f68,
-0x0228e058,0x02567c78,0x024f6940,0x02498fa0,0x01cf01a0,0x0193dd44,0x01423be4,0x010234c4,0x00da395a,0x00d31e95,0x00c55f7f,0x009fb857,0x0029765b,0x00dbf6d9,0x00a190a8,0x002a1f30,0x002c1072,0x0026c886,0x0032e076,0x001f3fb6,0x0015bb6a,0x002b5820,0x00d0f238,0x0118f00e,0x00234614,
-0x00d302be,0x011149d0,0x01648878,0x01395f3e,0x014a804c,0x0149f1b2,0x0143f56c,0x014c324a,0x01494ae6,0x01489610,0x012fc014,0x0118cb7e,0x01158418,0x0120453c,0x0139b460,0x01268772,0x01162e50,0x0108dfd2,0x00ede693,0x01139e8a,0xff151dc5,0xff03b183,0xfedbcd7c,0xfeedb0ca,0xff30cd18,
-0xff8c0876,0xff2de64e,0xff4dc4e2,0xff766c07,0xff4f1c28,0xff4ad8dd,0xff5d8683,0xff5ed786,0xff5b586b,0xff557cdc,0xff449d68,0xff4125ab,0xff5b10c5,0xff294999,0xff20f35e,0xff481659,0xff3e85cf,0xff3c35a4,0xff31d7ea,0xff3736df,0xff355944,0xff401f0d,0xff147b03,0xff0af783,0xff09014f,
-0xff299189,0xff1708af,0xfea7142c,0xfeea0740,0xfee04ec4,0xfeaafa2c,0xfee31350,0xfe6f2f82,0xfe8d12ae,0xffd5111d,0xff551a25,0xffe64c68,0xffb68469,0xffc15712,0xffe1572a,0xff7c7efe,0xff64a034,0xff78c89f,0xffa20461,0xffc59163,0xffaa1285,0xffd351f4,0xffb7666b,0xff88ac78,0xff6a8a2b,
-0xff4c3a58,0xff64124c,0xff3fdabc,0xff25d043,0xff0fcec8,0xff1f89c7,0xff290c3c,0xff4e42f0,0xfef72a62,0xfedaa9d8,0xfeca5fc6,0xff0cfdce,0xfed89db6,0xfde852f4,0xfe9f9a32,0xfe833aae,0xfdea1490,0xfe453998,0xfd8123a8,0xfe2c1c26,0xff79c506,0xff41c984,0x00b30578,0x007e3550,0x0054df88,
-0x00756806,0xffe67f62,0xffe1be28,0x00317c58,0x00619a00,0x0084643a,0x003052eb,0x00680bb9,0x004fa050,0xfff5dc39,0xffb7a56d,0xff90b087,0xffd0243f,0xffa756e8,0xff9f4cda,0xff501c03,0xff83b815,0xff60412c,0xff6b89e4,0xfea20bd0,0xfe6d4e38,0xfe71b6fc,0xfef3a832,0xfeaae9a2,0xfcf0df3c,
-0xfe28f380,0xfdbe8a84,0xfc188edc,0xfd757cbc,0xfb981840,0xfe3418cc,0x015310ea,0x014413ba,0x0228e550,0x024ebefc,0x01f8c20c,0x01a35d22,0x00a6dd6b,0x006f82ad,0x00e90b87,0x01257134,0x01a775f0,0x01cb224a,0x01b2354e,0x0146a136,0x00c07981,0x0064b0e2,0x001bcef5,0x00901a58,0xffe357ba,
-0xff781495,0xfeff2d88,0xff4e0f84,0xff83a7fa,0xff95eb42,0xfed1c9f4,0xfe45b38e,0xfe273f36,0xfebb6d26,0xfe31a558,0xfc4932a4,0xfe668c94,0xfd8df5b4,0xfa96ed80,0xfbc47348,0xfa2f47c8,0xfb766bc0,0xf9392578,0xfa966dc0,0xfe0d0386,0xff6627c2,0xff6283eb,0xfe8db5a0,0x0126b9ee,0x023a00c8,
-0x01387512,0x01f2af64,0x01cea5d4,0x008465b5,0x0154a9a6,0x01887f6a,0x008df93a,0x0068a553,0x007fa8cb,0x011c8146,0x00acfc1d,0x01179e06,0x023ecaf8,0x01233054,0x003e00d3,0x002d1a52,0x005ffff9,0x0066cc5b,0x0051ac1f,0xff775be2,0xfe6cfda8,0xfb713630,0xfb9d87f0,0xfc193284,0xfe992848,
-0xfc2058b4,0x03cf0c04,0x042ce2f0,0x02ba4578,0x02c86cb8,0x01795d3a,0x010424f4,0x015a35f0,0x03432248,0x016683a2,0x00b3207c,0x004fd662,0x000c2bad,0x00d05285,0x01c17996,0x020bd8b4,0x01cbbd04,0x006d2d3a,0x005cb39b,0xff701ab2,0xff571fe9,0xff90d292,0xfe176304,0xfc1cb818,0xfc2458fc,
-0xfcc9ba18,0xfef965ca,0xff19077a,0x00b346e6,0x024b3650,0x00fde81d,0xfd8c2a70,0xf7157470,0xfab890e0,0xfa687058,0xfb2ebdf8,0xff7c2f9f,0x0134e12a,0x00d4a3bd,0xff01acf9,0xffc73bcb,0xfffb5bdb,0x034e6998,0x02f7a0ec,0x025d065c,0x00617d15,0xff145c99,0x000585a9,0xffc56989,0x003ad0bd,
-0xfeb73e64,0x01e4dd06,0x021a4220,0xfeb419b8,0xfe9ba072,0xfdfd01bc,0xfdf29ab4,0xfda837f8,0xfe51829a,0xff5e33de,0xffb04339,0xffa2a5a5,0x000db9bf,0x00ccc532,0x018e269c,0x0223bb90,0x02bb5ef0,0x02f65a30,0x03902b18,0x0605ab30,0x083c3330,0x0b723100,0x03e03dd0,0x0011c14b,0x00d2590c,
-0x015f1a6c,0x013b5730,0x0033fb97,0x008efcc2,0x00860915,0x00a6a96c,0x02245964,0x022ccf3c,0x019ee034,0x012e75f6,0x0166c7d6,0xfff13c87,0x01df6550,0x019d31d8,0xfeefc0f6,0xff4009d4,0xfeb6be98,0xff42f57e,0xffa6a250,0xff9615eb,0xff5e192f,0xfea20610,0xff5c3090,0x0191176e,0x0273a2d4,
-0x02ea7ba0,0x028a35fc,0x05876b20,0x0588e070,0x037e7d34,0x00727535,0xff8614cc,0x026942cc,0x000f84b5,0x02155324,0x0081a314,0x0027f8cd,0x00741c98,0x01012e56,0x01eabcc4,0x01ee1caa,0x010cddca,0x00be9f02,0x0062d19a,0x00a16727,0x0017d369,0x000e26d8,0x0097d8a3,0x00444aae,0x004810a4,
-0x0081abe8,0x0075262c,0xffd68557,0xffce3f96,0xfef54166,0xff3abd61,0x011904b4,0x016b69ca,0x01a6330a,0x02ab0f2c,0x01090528,0x00ec4c18,0x003a9a62,0x02217d98,0x02499504,0x017ed9a8,0x005bb04b,0x00133b1a,0x01d55c88,0x0253ba3c,0x01b8713c,0x0192a970,0x00c2e59b,0x00ae634d,0xfff20876,
-0x000f5ac7,0x00328f5c,0x00545f3d,0x006aa8be,0x00479837,0xffd0b0cb,0x00a84b92,0x010dbe7c,0x00f4ad8b,0x00666e27,0x00412e7f,0x002019ea,0x0026a736,0x004b593a,0x0040bc2e,0x00514546,0xfff45094,0xff0ba311,0xff864e62,0xff96a601,0xff7b99d6,0xff4f2dea,0xff3b7d00,0xff3241c6,0xfff5bb9b,
-0xffc5b52b,0xfeddba9a,0xfe37fe0a,0xfe7f573e,0x004795a6,0x00d53121,0xffedf96d,0x0030618d,0x0007b61a,0x008b77ed,0x00be87bc,0x009c5cdb,0x00807593,0x005acf4d,0x00b9cad6,0x00fd44b9,0x0193a470,0x00e63cfc,0x00d4cbbb,0x00522de4,0x009074c5,0x0082d6f0,0x00a8e427,0x00dba760,0x01352ab4,
-0x00e89d21,0x0066a88f,0x00ba9f0b,0x00c27aa5,0x00251e23,0xff446771,0xfe5cd634,0xff4e2783,0x0016a475,0x00db57f6,0x000cb67d,0xff5c752d,0xfea04fca,0xff1e929a,0xff5ac6a6,0xff97d2a6,0xff8f294a,0xffbe600f,0xffb04f92,0x003c8b6d,0xffc0b335,0xffd15be7,0x001290d0,0x00322ca3,0xfff9057c,
-0x0027eea7,0xffee678c,0x0022023a,0xfffc6a11,0x0004d5f6,0x001a19e3,0x00bbba40,0x00d8a82c,0x00e0d213,0x010b7364,0x01f5b472,0x016288d0,0x01834c50,0x019c9fa8,0x01b15e38,0x01e12e74,0x0248a1c4,0x0293f5f8,0x01f3be32,0x01342062,0x00a82b2f,0x002aefb1,0xffe2e2e7,0xff6d62f9,0xff88cf56,
-0xff88dc35,0xff9ab7b2,0xffba5524,0xff2ac4c4,0xff0d5fac,0xffcca361,0x004e054c,0x0113a1de,0xffa3203a,0x00584f76,0x00d83ee6,0x00d65cbb,0x00f1d1db,0x00f4a7d4,0x011f11be,0x01403b2e,0x014eed26,0x00552cca,0xff9d56f7,0x0185cd9c,0x00a04af9,0x00247b54,0xff41ad36,0xff7e13c7,0xff7e6e50,
-0xff86f620,0xff907ab5,0xff83581d,0xff97f50d,0xff679561,0xff5ea5b5,0xff469431,0xff3b2d49,0xff22f52a,0xfefdc19a,0xff128e77,0xff19b5f4,0xff1f09b9,0xff1e5572,0xfea7d26e,0x0015c19c,0xffd547f2,0xfff627bb,0xff7675a6,0xff44ced5,0xff2348e4,0xffe99928,0xff9ca538,0xff466957,0xff28dceb,
-0xff285cfe,0xff32de30,0xff3dbc38,0xff3c78ec,0xff2d0e18,0xffa7857b,0x00030d9e,0xff1945eb,0xff8fb312,0xffc924c3,0x001f6e20,0x0021fada,0x00261f5f,0xfffc835e,0x001b7616,0x0024f014,0x003c0726,0x0018d8fb,0x0017cae8,0x0043dae1,0x000e5185,0xffff0df1,0x000d5abc,0xfff9d849,0xfff9aaa7,
-0xffe8fbb8,0xffed2b9f,0x0006049a,0xffa9f7ba,0xfe7704e8,0xff4b3aec,0xffb7ee5d,0xffc1ed39,0x00060989,0x002a78cf,0x0026a33c,0x000ce26f,0xffe47b39,0x003cad08,0x005200ca,0x0026cb5c,0x003749c5,0x003e9120,0x0023f6f2,0xfff7e2c8,0xffa2863a,0x0012725c,0x00681449,0x00734d38,0x00046d38,
-0x004b5a35,0x004daa0d,0x0072a8c2,0x00104a19,0x001396e3,0x009aee23,0x00290839,0x00172d92,0x004abb26,0xffeb5e7b,0xffdfde26,0xffcb7777,0x0002380a,0xfe762468,0xfde87364,0xfd558a00,0xfe0e5104,0xff5d4647,0xff9f7002,0x0005b852,0x0066f2ef,0xffe9d4cf,0x0009a55c,0x00001f11,0x009170e9,
-0x00888833,0x00156c18,0x0087af88,0x00960009,0x0031f5e4,0xfff23654,0xfff9ffec,0xffe31a1a,0x008227c4,0x0077dcce,0xff6f9bfb,0x000def5b,0x0018f7d3,0x007ed479,0xffc40a28,0xffd41b77,0x00bc4def,0xffa8c873,0xff4f2d10,0x0018532d,0xff797212,0xffc5e439,0xfec864cc,0xfea49f0c,0xff0bbb6f,
-0xfd2e3b40,0xfb463988,0xfcd62eac,0xff1fb502,0xff9fab9a,0x006a286e,0x00eb11b7,0x007dd2a0,0x0096494f,0x00c12e47,0x0144ecaa,0x01c03fa0,0x0130a76a,0x01b299d8,0x014e80fe,0x00ac4809,0x00712bdd,0x009c9084,0x00457e22,0x011dd830,0x0130ba0a,0xff7bd786,0x00562fe9,0x005bc975,0x009387a3,
-0xff7eb7a2,0xff7ec1f2,0x0116497e,0xffc3d212,0xffc338a5,0x010b86dc,0xffcdad98,0xff8632e8,0xfe7477ae,0xfe6e8444,0xfdfbd2b8,0xfe37b462,0xfbbf8048,0xfbcb2710,0xfd604e64,0xfee89208,0xffa9de22,0xff3cad8c,0x00678bf6,0x0142a89a,0x006f0427,0x01a57c7e,0x01643f2e,0xfff3403a,0x00ee27f4,
-0x00c46ae6,0xffc620b7,0xff9f192d,0xffc03f7f,0xff07fc54,0xfdfeff10,0xfe1601bc,0xfdc6640c,0xfdac0a38,0xfd6d0c88,0xfd7e8994,0xfdae26bc,0xfeb4bc78,0x005393bf,0xfedbfcfe,0xfe2cc216,0xfcd09660,0xfed2f2d2,0xffe14c7c,0x007cf9a2,0xfdc8def8,0xffd613f3,0x02ba6ce4,0x0400d288,0x024bc94c,
-0x0012ab83,0x005b6073,0x00f5e3bd,0x024260e8,0x00a67a7a,0xffddd392,0x0061854a,0xffa502c2,0x00af6cbb,0x01e4bd8e,0x01d30d02,0x01a5d480,0x00e5ffc7,0x00b497cd,0x0022f7f4,0x00791b57,0xffc0d16e,0xffcb9850,0x0132c952,0x00740d23,0xffbd4304,0xffcc6665,0xff62a65f,0xfea8f976,0xfd4d82b4,
-0xfed54bba,0xfea85144,0xfb263b08,0xfd6ee700,0xfdbd13dc,0xfcb45870,0xfea02ba2,0x044d22a0,0x01430390,0xfefacf9c,0x000c2fe8,0x02843e74,0x047f5a28,0x037f684c,0x007bb668,0x0041d12a,0xff69c2d3,0x00049f07,0xfffd58e7,0x003e84ca,0xfdea1218,0x01ed8f3e,0x0268cf6c,0xff03087c,0xff9e351e,
-0xfefcb52a,0xfee68afc,0xff6c24cb,0xffce7c6c,0x000e00cf,0xfffbda25,0xffbc7bc0,0xffa13b6a,0xfd29f768,0xfc92a7b0,0xfd7651dc,0xfe1d0458,0xfeced82c,0xfeada5bc,0x039d0a30,0x070f8f10,0x083020e0,0x06c08868,0x013722e4,0x00b95d3e,0xfffe3878,0x002759cd,0xfffa6950,0x0111e954,0x017e41ca,
-0x00e6e4aa,0x02385620,0x01d1a7bc,0x00d76f4c,0x00dd2298,0x013a2a22,0x003ab9f9,0x0227946c,0x02157864,0x0055efaa,0x00552372,0xffacaf7b,0xff2b11c4,0xfde19098,0xfd27c908,0xfce5b320,0xfb9b68a8,0xfb13d108,0xfb272648,0xfc92619c,0xfe82fcf2,0xff8e3ea9,0x01eb28a2,0x02bb5dfc,0x00cfea53,
-0x00558f1e,0xfecbdc5a,0xfdc0502c,0xffca9105,0xfffb47ca,0x0089c8b7,0x01243542,0x0139fd70,0x00beba41,0x01624cd4,0x0125a00c,0x0027187b,0x004ed084,0x0017db91,0xfff203b6,0xffce5244,0x00051460,0x00b16c8a,0x00e717dd,0x00e111de,0x00a7ebe1,0x00f324a0,0x008a61ef,0x006cc819,0x005d22fd,
-0x00819020,0x00e44283,0x00db7855,0x011d9600,0x00f01b76,0x00f5b730,0x009f19c9,0xffddd4ab,0x0070418a,0xff8956aa,0xfd0269a8,0x0061fae5,0x01efa504,0x022396d0,0x00912860,0x01a089ee,0x00dfcf2b,0x008c73b1,0x001d1dfd,0x006382cd,0x00b61f31,0x010b6788,0x01045816,0x00ef2b92,0x00cb96db,
-0x00c4dc80,0x0063b52c,0x0054389e,0x000f3458,0x005c3d60,0x0061156c,0xffff89e6,0xffadedb8,0xffc84bca,0xffdb2cda,0xffcc3367,0xff667ceb,0xfec691c2,0xfee23e48,0xfeea5308,0xff838280,0xff3ee970,0xff6772d3,0xffd133df,0xff324432,0xfed1c8f0,0xfdda0e40,0xff6f3468,0x001fd37a,0x00b46d1f,
-0x01bd3ce2,0x0109c130,0x014556d6,0x011a50d8,0x00f02ac1,0x00d527cb,0x00b42ff0,0x0080039d,0x005fbc90,0x0066f12b,0x00660126,0x006fda0f,0x006471d0,0x005db932,0x005df510,0x0052b896,0x004fedfd,0x0065df0f,0xffe07ae5,0xff8e97c1,0xfecb421a,0xff1afee6,0xff8edbc7,0xffe7475b,0xfff29a66,
-0xfff0e75f,0xfff5a34e,0xffd710e9,0xffbb2ef2,0xffae1d61,0xff2b5f20,0xfed447c2,0xfe4b7880,0xff307f5e,0xfff89cec,0x00b83712,0x00e613ba,0x00018ab5,0x00558331,0xffe0829e,0x00769036,0x0067d060,0x007834c0,0x0098bb31,0x00c96094,0x00798bb2,0x00424567,0xfffae9fa,0xffcdf601,0xffb2d2f4,
-0xff71f93e,0xff7fc719,0xff89ede2,0xffbf7e01,0xfff98ef4,0x002d62f7,0x0024d951,0x001ca8fe,0xfff5249a,0xffe2f778,0xffb3d346,0xff94d887,0xff76d59b,0xff5e65a8,0xff3d9b05,0xff1e33c0,0xff0049c8,0xfee89d78,0xfeb01822,0xfefcd498,0xff24a0d9,0xff7089ed,0xffa64e5a,0xff949f98,0xffcb5c98,
-0xff35cd56,0xfef53262,0xfec7e4ea,0xff7d1a84,0xff198263,0xff18d44e,0xfefc3934,0xfeeb5db4,0xfed97fd6,0xfebdcaa4,0xfea0235e,0xfe79d556,0xfec20c58,0xff2fb11a,0xfeb65716,0xfed07f92,0xff097250,0xffa9f371,0xff962c5e,0xff8c662b,0xff87f84c,0xff8ee8fc,0xff942fcf,0xff97830d,0xff7f5511,
-0xff6c9f3a,0xff5b9ede,0xff4e25f7,0xff4402f0,0xff2f8b3e,0xff50a557,0xff636dc3,0xff71cadd,0xff8ca596,0xff534921,0xfff9536a,0x0030cfc1,0x000a007c,0x001bc274,0x0018220e,0x003b77c2,0x000ad03f,0x003e8b2e,0x007083d5,0x0058fbdb,0x00555a5b,0x00472ca9,0x00628eae,0x0065fe24,0x004b8ef6,
-0x00563133,0x003aca2a,0x006a2c61,0x0047b984,0x001c5efa,0xffc584ff,0xffe9c969,0xffe74078,0xffddbf60,0xffe6addb,0xffe89bca,0xffdd25e6,0xfff846f2,0xfff6c91b,0x00076fba,0xffcd89c7,0xffcb3ab8,0xfff61361,0xfff62ccd,0x000ea134,0x002cd0b4,0x00424c75,0x009ffdeb,0x0078240a,0xffcf3e17,
-0xffe0d7b7,0x0026b279,0x002a440e,0x0032ac7c,0x006cee1d,0x001e272e,0x00162371,0x002865bf,0x003ddb3e,0x003fc827,0x0012ee53,0x0071efcb,0x00733fec,0x0061df98,0x001c550c,0x002d8abd,0xffab487b,0xffd2de69,0xffd1ed10,0xffa34fc2,0xffb3f959,0xffb74e0c,0xffa94b2a,0x000d99ba,0x002868fa,
-0x003c433e,0xff6d59ba,0xff457677,0xffc21cd0,0xffb4a6d5,0xffea0b64,0x00341ca7,0x00992edb,0x01dfab4c,0x00c75d82,0xff9c45c1,0xffa7f3d0,0xffe22066,0xffd32599,0x001a8079,0x00d84605,0x003d7e43,0x001773c3,0x003866cf,0x00528ea4,0x00906be8,0xffefb51b,0x00b03f7a,0x00b5e671,0x00a29882,
-0x0008bc79,0xffcda1ce,0xff44afea,0xff87c9de,0xff96d225,0xff70a0d9,0xff9c7200,0xffc146db,0xffbb7a17,0x00541e14,0x002d762f,0x007b2b04,0xff148c54,0xfefcac54,0x004e3e3c,0x002670b6,0x00b95b22,0x01518e7e,0x01ce8ee2,0x03a8cd74,0x02930ab4,0x00634084,0x0011f870,0x00efc447,0x002fc225,
-0x00a4bcf1,0x0185a978,0x00783a29,0x006a69d7,0x0096a02e,0x013eaab4,0x0158570e,0x002fa2a7,0x014055f4,0x01547894,0x00be712d,0x001e734d,0xffda92f0,0xfeee69f2,0xff6f85ba,0xff8dc9b9,0xff240450,0xff6c1002,0xff6ec6fe,0xffa3b742,0x00a82372,0x01000de2,0x01702fe6,0xfe9555c2,0xfe5889d6,
-0x0042c606,0xffdcb5f6,0x003992bd,0x01c2e698,0x031ea1b0,0xfbe4e4e8,0xfdbc1cbc,0xff3baf86,0xff31a7bd,0xfef8a0dc,0xffc3302d,0xffb98093,0xffbbd6c6,0x00d79298,0x015c1526,0x00866dc7,0x013e41a2,0x012a9360,0x00b105b2,0x00c887da,0x0035f8b8,0xff88d9b8,0xfee1e182,0xfe6ab5da,0xfe38cd9c,
-0xfeff2c62,0xfef7c9ac,0xfe783cea,0xff3f9b8f,0xfff3ae32,0x007e40fa,0xff8fd1a8,0xfe86e4b4,0xfddfc490,0xfd3248fc,0xfd2bbecc,0xfc7f1538,0x0048e2aa,0x0156733c,0xfec41792,0xfd2c3fd8,0xfd3d2898,0xffb86dff,0xffa86472,0xff762cdf,0xfe80f62c,0x00371368,0x01429a3a,0x022a45a8,0x00d6e4ec,
-0xffbe4923,0x0041f9f0,0x001d2c31,0x00c2c33a,0x00b78320,0x01458464,0x011c79cc,0x0039155a,0xffe85ffd,0xffd8e327,0x0014ca04,0xffb19602,0xfffde8e9,0x00acd821,0xfdecef9c,0xfd081490,0xfddeff94,0xfdeb231c,0xfe0161a2,0xfe786f42,0xf9fa0678,0xf9b4dfb0,0xfafb7f18,0xfbcbe048,0xfb0b5b40,
-0xf9a0e038,0xfc20e380,0x059b6728,0x04db8620,0x02d7a4b4,0x033b8b70,0x03fa9db0,0x04940b30,0x02ec54e4,0xff46f31c,0x00665280,0x00272808,0x007f3275,0x0046e339,0x008b8e46,0xfefe815c,0x0201cd84,0x0274efe0,0x0067a97f,0xfffc3929,0xff462b23,0xff45584c,0xfee2a776,0xfee8dc96,0xff8dec88,
-0xff486e99,0xff349d12,0xff254ea5,0xfebee038,0xfe64dc0a,0xfdf2d438,0xfd8cd338,0xfd714444,0xfbc0b9c0,0x02532324,0x052d4500,0x0436eec8,0x05bbf920,0x0056bd27,0x00473543,0x00cc5466,0x00a926c2,0x006219af,0x01446388,0x01db1c34,0x0199ebd2,0x01c996ee,0x0115a102,0xfffd0741,0x00fa2ec7,
-0x0112e572,0xff81b92d,0x016ab976,0x01a50c7c,0x006796d5,0x007cd17f,0xffbd822a,0xfeea4890,0xfe24a0a2,0xfdb8541c,0xfd62847c,0xfc8f0d2c,0xfbb372f8,0xfad337d0,0xfac97ba0,0xfc78d6c0,0xffcc5709,0x0160dfd4,0x0240d9d4,0x00bf5074,0x03adda74,0x03cd6598,0x0232d3e0,0x0111d8a2,0x0163bf4c,
-0x0151275c,0x00a3ff70,0x00d500fc,0x0144bdbe,0x01861f2e,0x0134668e,0x0079d2cd,0x0071ac57,0x007a9ec6,0x000be5dd,0x003accdf,0x0098bb86,0x01129022,0x0193e362,0x0174b706,0x00a829b4,0x00ed000f,0x010306a4,0x01470a90,0x0171e608,0x011ec6c0,0x00d57538,0x005fc142,0x013fe48e,0x0246ce00,
-0x03cbb078,0x044d4788,0x04ba5a40,0x01bbf13e,0x00099c7d,0xfe2fd7b0,0x0036d7d3,0x0147598c,0x01dfd662,0x01a9aa14,0x00e048e3,0x0078481f,0x008fce97,0x00cc8791,0x00b5d63f,0x011d4778,0x0161e846,0x017aacb4,0x015f544e,0x011e33c6,0x011aaf38,0x00da9175,0x00bc79ee,0x00d6db10,0x00da3a26,
-0x00aae299,0x0035cccd,0xffee2942,0xff8d8265,0xff9f3501,0xff8dbc27,0xffb646a2,0x006febad,0xff4428c7,0xfe89d8ce,0xfe2d961c,0xff46259f,0x00294e94,0x01166862,0x008adee0,0x0080b01d,0x00081bb8,0x0131b2e6,0x01a804a6,0x01d33728,0x017b0408,0x011405de,0x013962c4,0x00f3b2a0,0x00a43b6f,
-0x006b0655,0x007aa632,0x006fb98f,0x006e7dd2,0x0060f892,0x00a9f990,0x008f3c80,0x00f5b3af,0x00b26a69,0x00f2e5ff,0x00c4b670,0x00f0f261,0x00ebd220,0x00e1f12a,0x0076acff,0x011d7ad2,0x014686d6,0x00a8ded3,0x006d621c,0x0103721a,0x01b9b2d2,0x024459d8,0x022295d8,0x01ebb61c,0x01c7f482,
-0x016063fc,0x011932ce,0x00df0490,0x00b9efaf,0x00a0a45d,0x00ab6647,0x00d92a21,0xffe86a81,0x000369ca,0x004527bd,0x004a2697,0x0062d5f0,0x00578a18,0x007c3bce,0x00972f87,0x00b380b8,0x00a87e0d,0x007938f0,0x009eb540,0x009fe54e,0x009b3a23,0x006bcddf,0x007f8a15,0x0089a740,0x007aa897,
-0x003a898f,0x00898ee9,0x006a1342,0x008b4157,0x008ca37e,0x007c09b2,0x00486556,0x0037f580,0x00023def,0xffee0e15,0xffdcd513,0xffe2dede,0xffe86516,0xffe7b90f,0xfff12bc9,0xfff8854c,0xfff7ef3a,0xfff8afff,0x004c7b2b,0x0040600c,0x004bea9d,0x003e1e8d,0xfff93a56,0x0071671b,0x004c5f11,
-0xfff063df,0xffe3e037,0xffdad0a0,0xffe2d8b2,0xffc8b578,0xffbadcf5,0xffb21927,0x004e291d,0x007def6e,0xffc08a62,0x004bee74,0x0078fca6,0x007afc7d,0x00656f1c,0x0067b5f3,0x0063b581,0x0060d06d,0x006715bd,0x006cf331,0x006d53e4,0x0069f86d,0x0060abb6,0x00536fde,0x0045056e,0x0037592f,
-0x003df0d3,0x0041beda,0x0044afec,0x004853d0,0x0078d06b,0xffbaf390,0xffb68437,0xffbb917b,0xffba8864,0xffc3e0d0,0xffd96e41,0xffb05235,0xffc5b23b,0xfffc8f24,0xffd91b47,0xffd22424,0xffd2e9a9,0xffdda87a,0xffdfce2f,0xffd49a6b,0xffd3202e,0xffd6afe4,0xfffd4b82,0xffd04693,0xffc7b53c,
-0xffd9ec0b,0xffc00221,0xffc0611c,0xffd1e0da,0xffb4cbec,0xffae68ce,0xffa37076,0xffca3e46,0xffcf4391,0xffbe7154,0xff9b3e6b,0xff8aa1a8,0xff7e38ba,0xffa905eb,0xffb1f50c,0xffb6ad8d,0xffa73331,0xff6a989b,0xff8b9c5e,0xfff9464e,0xff8be6f2,0xffa2c34d,0xffb969d7,0xffe2f7bc,0x003049f7,
-0xffe2cbe6,0xffcdbea7,0xffd1c800,0xffe1c3c2,0xffebd6fe,0xffe4781a,0x000dca91,0x001ffce4,0x0025a1b4,0x0008cc7f,0xffbb3da4,0xffccc284,0xffa45575,0xff8d3ccf,0xffd7ad35,0xff942ef6,0xff966b7d,0xff86e36f,0xffee064a,0xffe5763b,0xff95750a,0xff3943ae,0xff1eeb19,0xff319c23,0xffbc8176,
-0xfff0458d,0xffeac6f5,0xff995bcb,0xff13316a,0xffd71ac2,0x0035c42d,0xffc15e97,0xffd8b8fb,0xffd8372d,0x000a5d3c,0x00bb9594,0x0005ab76,0xffef613f,0x0001b7c5,0x0019fd42,0x00415486,0x00375ba5,0x005bd4b9,0x007a8fa9,0x00b06706,0x004e1212,0xffd2436c,0xffd68cc5,0xffbad1c0,0xff9639ff,
-0x001c7b06,0xff7ab6fd,0xff701fa1,0xff35d477,0x0016e58a,0x00266f6b,0xff939d0d,0xfecba852,0xfe683800,0xfe6cf258,0xff580ccb,0xff85ae1d,0xffc59980,0xff56e323,0xfe66cc36,0xff8980a8,0x0062ce99,0xffaa421b,0xffe3e74f,0x00483f0f,0x0089d9bd,0x01723878,0x005f3133,0x0041ce2a,0x0068312f,
-0x0109afee,0x00e0b5c8,0x0021df26,0x00b874d3,0x011ef078,0x00ec3692,0x00491e54,0xff5d0d36,0xffa14af6,0xff6be12b,0xff07c9ce,0x0028f52d,0xff724464,0xff7d5641,0xff4399d7,0x008a32a8,0x00996ce4,0xff69a0ee,0xfe4428a4,0xfdbf0014,0xfe135c56,0xffac3b2b,0x0084a048,0x00fea9bf,0xffd4bbcb,
-0xfc538b80,0xfc9237a8,0xfd920358,0xfea02650,0xfed3d880,0xfec7933c,0xfeed6914,0xffa1da3c,0x000f6b42,0x00fb0978,0x00ba54df,0x00f151a0,0x01311be2,0x018baba4,0x00e16538,0x007ec80c,0x00745e3c,0x00289416,0xffa55411,0xff6ed3a8,0x00652ab1,0x008b9470,0x0101a5e6,0xff33fd27,0xff0e927e,
-0xffdbafbd,0x002165d3,0xff4ef0ba,0xfeff6b8c,0xfdfd3864,0xfe2346a0,0xfedde07a,0xfef8d9c8,0xfd873298,0xfa683d50,0xfc0ae754,0xfb57f7d8,0xfe7afc42,0xfee740c4,0xfed701c6,0xfeb69a46,0x00bcc58c,0x013bd760,0x0035ab32,0x006877f3,0xffee1841,0x003dbcc0,0x000c6515,0x001fe422,0xffa9b1c4,
-0x014050da,0x0177b296,0x0081185c,0xffd281d7,0xff69b237,0xff823dbe,0xff5b525c,0xfedce180,0xfe3b7f1c,0xfee46f72,0xfec72844,0xfde73128,0xfdea32bc,0xfe5acffe,0xffdf0b1d,0xfd4271e4,0xfd43ad14,0xff6157b3,0xffc8e68c,0xff8354d8,0xfdcb20e4,0xfb8a1610,0x06350a18,0x04f4f1b0,0x041990c8,
-0x0449bd68,0x04aab5e8,0x0389e95c,0x0249bef0,0xffaae0aa,0x00e97102,0x00794922,0x003ba18b,0x0047c506,0x00a87c55,0xffeeb681,0x01aed27a,0x01d53050,0x00a30cba,0xffc8b6c2,0xff2f4dba,0xff6046fb,0xff19cc6b,0xff030f91,0xfee13c36,0xfd6f48f4,0xfd2a939c,0xfe07ad4c,0xfe9ae456,0xfef5d29e,
-0x0040a1dd,0xfd651c94,0xfd443e88,0xfd56bf30,0x00d1ee82,0x03011660,0x0307c7a4,0x05ce3e98,0xff61afef,0xff68bd0d,0xffb99b00,0x0015ec84,0x0098fd86,0x01760dae,0x0213ee88,0x02018978,0x0144c488,0x008bcbfe,0x003b03a5,0x009f7fc9,0x0058c6b2,0xff3cf9f1,0x00550889,0x008310ff,0x0053cea8,
-0x00008708,0xff75945d,0xfee21fd6,0xfe6d0aac,0xfdba31ac,0xfd0178cc,0xfc6150f0,0xfc73b92c,0xfcea1478,0xfd144208,0xfdd44e2c,0x001c51b5,0xff9ea1d0,0x012f7a26,0x02077b94,0x051a0710,0x051f5af8,0x01a6d5ae,0x00ab1f8b,0x0051d3f1,0x00afb23c,0x00fcf137,0x0127ee82,0x016d43b0,0x0182145a,
-0x01330434,0x00ac8ac7,0x00acb024,0x00ee778e,0x00ed378b,0x00da8a18,0x00faa85c,0x00ec0779,0x01e4e448,0x01c89854,0x00f107e0,0x005bb9cb,0x0073c38e,0x00bbbbc5,0x00b2d375,0x00db4f1d,0x01120810,0x0169496c,0x014edcf8,0x00f8bd89,0x01b80646,0x025e9154,0x03d189ac,0x01d1c0a6,0x00ecf475,
-0x006d11dc,0x00468c6e,0x007f8ed5,0x00ce0748,0x003c0a91,0x001002f1,0x00597999,0x0075fce8,0x0073ea65,0x00962409,0x01058c92,0x0153f690,0x0128ba2e,0x01bb918e,0x018ec448,0x00e50087,0x012cb9b6,0x012b5180,0x00e30dde,0x007d1b67,0x0065f359,0x00eb9bbd,0x00ae2683,0x00634642,0x00a2aea8,
-0x00fb3c54,0x00f5ce33,0x00c314c8,0xff3e805a,0xff44f7d5,0xfff58e0f,0x0075a798,0x004f0fca,0x001a1dcf,0xfe58cea2,0xfe55698a,0x00344560,0x003850b0,0x00d0f777,0x01cdfd3e,0x006ac216,0x00bd73a0,0x00beec49,0x00d110a0,0x0089a154,0x003d7215,0x00585527,0x00660a28,0x00837253,0x0091ca45,
-0x00b6c13b,0x00f25c3d,0x00f6c210,0x00f22451,0x01112382,0x0119269c,0x0116f802,0x00ee7e80,0x0130dcc4,0x01966e24,0x01b23df8,0x019f709e,0x01b96982,0x01fcf2d0,0x01ca707e,0x017b902e,0x010c328c,0x0088b7a2,0xfff5adf4,0xff5c3018,0xffbc5ef7,0xffdcfa1b,0xffd012bc,0x00320520,0x008ab70d,
-0x00ebfb1f,0x00e493cb,0x005fc9a1,0x0078e56a,0x0028eafb,0x00b347d3,0x00bb7ff9,0x00f631a4,0x013f772e,0x015dc496,0x016ca89c,0x014a9c4c,0x013636b6,0x0131b92c,0x01306ce0,0x0124c5d6,0x00e94453,0x00a68fe0,0x00835940,0x004330f4,0x00223880,0xff71950c,0xff47c5fb,0xff250c01,0xfee6bbc4,
-0xfedac704,0xfed8f48e,0xfed9913a,0xff00394c,0xff36ffef,0xff5af06d,0xff7a94fa,0xff926bc5,0xffa9ad5a,0xffd80460,0xffef2ded,0x000379b8,0x00287c76,0x00836e1e,0x00a859d6,0x006654e4,0x006012f8,0x005119b0,0x00a997c3,0x008c46cf,0x00751403,0x006c3f71,0x0078d320,0x007e8236,0x0082358e,
-0x008413a7,0x008fcb26,0x0092f18c,0x008a79eb,0x0073e027,0x00589311,0x004e53d7,0x003b3c57,0x00485edb,0x003d40d7,0x003ad556,0x002ab202,0x00164155,0xfffb9a73,0x0011326f,0x001cabfc,0x002eb916,0x003359ce,0x0040ba65,0x00521e03,0x00558a15,0x006122e3,0x0071b805,0x007c8db5,0x00a9b095,
-0xfffa9b26,0xffd1571b,0xffcbacf7,0xffcbd8c2,0xffc795f2,0xffaf7753,0xfff0b95a,0xffea8fcf,0xffef48ce,0xffd0cddf,0xffc95317,0xffc8f338,0xffcbfd9b,0xffd05e8b,0xffdcf1d2,0xfffd6853,0x00107b23,0xffea7b0f,0x0003fbff,0x000ed35b,0x00279928,0x0003f399,0xffffb6d6,0x00086fde,0xfff3a3ea,
-0xfff0a635,0xfffa7be2,0xfff68133,0xfff22b0b,0xfff7421f,0xffda0860,0xffe39fe9,0x0018e8cc,0x000ed615,0x000ed792,0x0012e4ab,0xffe3cc5b,0xff896745,0xff56185e,0xff4d34f7,0xff64cd05,0xff7c1b0f,0xffd13e50,0x000d2f0c,0x003db240,0x001163a5,0xfffc28d4,0xfff298b7,0xfffdf596,0x000e414f,
-0x0044cca3,0x002d52e2,0x0043d8a7,0x005d5412,0x00591385,0x00268ef1,0x00633fb4,0x0034c936,0x001f544e,0x003f55fb,0xfff7208e,0xffe5b577,0xfff1785e,0xffd5acef,0xffbfa488,0xffb874fe,0xff56457c,0xff64d1b3,0xfffd2deb,0xfff6555b,0xfff31cbf,0xfff662a2,0xffad7970,0xfebaaf4c,0xfeaf80d4,
-0xfed62dc4,0xff05bb67,0xff2997da,0xffbacfca,0x002524c6,0x00a6e0a1,0x00218ae7,0xfff99ed6,0x0001343c,0x00117874,0x003e6136,0x00c674a3,0x0075a3a5,0x009954a3,0x00d67e48,0x00c39a7c,0x008f7aa5,0x009d7be2,0x005292f0,0x001fb7a1,0x003e3940,0xffc41591,0xffa5ca69,0xffb9a8f9,0xffa0775d,
-0xff6c8567,0xff87e0d6,0xff009735,0xff58239f,0x00a6cd49,0x007299c0,0x00484cf4,0x00051aaf,0xff09e812,0xfe6d9c0a,0xfdc085dc,0xfd30a85c,0xfd639560,0xfe3d6e30,0xff6b077b,0x003ab04a,0x011620cc,0x004f77b9,0x004616e5,0x003d4fd8,0x00cfb18a,0x00c09ef8,0x00cb9883,0x00b1c822,0x00f6a3e9,
-0x013fc5f2,0x010111ea,0x00d055fa,0x01319c62,0x00d82909,0x007bebaf,0x00b7e344,0xffe42475,0xffa5696f,0xffa35c50,0xff27142e,0xfef7663a,0xfee61d0c,0xfdebbe68,0xfe45dd2e,0x006df829,0x004f8ad8,0x0008f073,0xff8160a4,0xfe873bcc,0xfdd8a728,0xfe9c97f6,0xff8f6f9d,0xffc2aae1,0xff2c0dc1,
-0xfec7b450,0xff2addb8,0x00536951,0xfff64a8a,0x005b5ab6,0x006c98b4,0x00a2c5b9,0x010bd77c,0x01a6c8e0,0x00d5d245,0x00c9cab3,0x01481750,0x00e446d8,0x004ad580,0xffaaf3d2,0xffb3608b,0xffa9e5ac,0x00046d67,0xfeb11bfc,0xfe3877d8,0xfe09586e,0xfe7a2bf0,0xfeb58274,0xfd599a58,0xff433eb5,
-0xffe4245a,0xffc0cb04,0xff4d4d67,0xfeea3850,0xfe57a2d4,0xfdd6512c,0xfcf727ac,0xfd261074,0xfcd8f494,0xfddfb3b0,0xff7481c5,0x010bcee0,0x013c8b38,0xff53b4c7,0xffb246ec,0xff864e94,0x003bce82,0xffc32257,0xffcc6c7c,0xffa66b94,0x0181105e,0x01b9495c,0x00da17dc,0x00729946,0x000d47e3,
-0xffe5410e,0xffd17284,0xffa0fbfd,0xffbfb072,0xfff2359d,0x004a10fd,0xff897f8f,0x0074169c,0xff6cba14,0xfda5e2e8,0xfc456a00,0xfd277e58,0x00ab7a6f,0x00ee1b2f,0x00e5745e,0xfe9c1f1e,0xfd68d744,0x055a1d08,0x07520628,0x0554ccb8,0x04c70718,0x04867760,0x02ad22a4,0x015c14f2,0xffb46676,
-0x008f3d34,0x00252400,0xffedaf76,0x001a74a0,0x002bd968,0xffc8152c,0x0071634b,0x00c7dedd,0x01767a4c,0x000de57a,0xff71e3b2,0xff532cf0,0x000ff883,0xffbf3a01,0xfe97c76c,0xfddb6534,0xfdeeace0,0xfdeb29b4,0xffbc2d74,0xffb40606,0xff4195a1,0xfc801bfc,0xfbdedba0,0xfec7687c,0xfbf47510,
-0xfcc36828,0x010befe0,0x03509ea4,0xff6bffea,0xfff55687,0xfff5f0bb,0x00f7a351,0x01612d76,0x021cda18,0x02284e5c,0x01e9ac74,0x00a4d2cd,0x001755d2,0x00861660,0x002f55c8,0x001aa7eb,0x007ed162,0x0096ecd7,0x00a32b03,0x018583c4,0x005a1625,0xff9064b6,0xff6988d8,0xfede2b9e,0xfe32013e,
-0xfe29e66c,0xfe80a00e,0xfec0182c,0xfe2501ce,0xfe5a4b1c,0xfd4a0ee0,0xfd40c98c,0xfbfc9f60,0xfde75bec,0x02ab69b8,0x046fe2f0,0x0515cb08,0x039a01cc,0x00e4dc42,0x00c522d2,0x011b8fe4,0x01230a68,0x0165663c,0x0160cf50,0x01376056,0x00f04027,0x00b624b3,0x00cb1ca1,0x01262776,0x01ea6c36,
-0x012af07c,0x00fc8a18,0x00b491bc,0x018e12f0,0x018885e0,0x00fd0d3e,0x00a6e3fe,0x006bd377,0x0090c6a0,0x004e6b95,0x004efa01,0x003cd75a,0xffa53ec4,0xff7e29dd,0xffeceac3,0x00f10ef7,0x01b54924,0x028cbf7c,0x0134b7d6,0x00f3030c,0x0213bd84,0x009389c8,0x00151c28,0xff0db34f,0xfff9d605,
-0xffbfebb4,0xff9c1af2,0x000a7c96,0x00738f09,0x010eda56,0x015a1712,0x0177c24a,0x0122066a,0x014d6296,0x01420b52,0x012dc302,0x00f05002,0x00c4df2f,0x005173e2,0x005c2e2a,0x00c0670e,0x0159257e,0x01486c68,0x013b75cc,0x01016710,0x00e805a7,0x00e6b7b0,0x00f01322,0x02393a14,0x02d6809c,
-0x02a74ff8,0x020b8620,0x00e6fe88,0xffa17c93,0xff18904d,0xff3df0aa,0x005aa2d6,0x00dbf744,0x00bd08fc,0xffd622e7,0xffeb523b,0x0070e0f7,0xfff124c8,0x00372a60,0x0057f9e2,0x006c1075,0x006cd379,0x008e847a,0x00a5f529,0x009a149e,0x00817bd6,0x007d8e40,0x00c1ab6f,0x0125d3cc,0x019918ea,
-0x01298d5c,0x00ae51bc,0x00224997,0x00763a87,0x00d28789,0x00fadcf1,0x00edbedc,0x00fd4ec3,0x00d63e0d,0x00b2f81e,0x0096dfa6,0x00a9e40b,0x0035450e,0xfffd5c03,0xffc1dbf2,0x004d76e7,0x00a49c88,0x00deebbe,0x00ccf0f0,0x00f557f3,0x01464930,0x00dea970,0x012909d6,0x015606fa,0x012bd726,
-0x014b2b28,0x014e5f96,0x01672618,0x0166857a,0x01845a5a,0x015c2308,0x0156141a,0x0147989e,0x012cdfc2,0x01023146,0x00f44687,0x00bb0768,0x00a7f5b3,0x0079515a,0x005279a1,0xffde15e6,0xffee80dc,0xfff17f19,0xffe403da,0xffeac4c0,0xffe43041,0xffdb857c,0xffd51f33,0xfffe963d,0x00206994,
-0x00271be7,0x003baea0,0x004de0af,0x0078763d,0x00a43184,0x00beb2a1,0x00dbffb6,0x00f48c15,0x00eb2a89,0x0104a5fe,0x00eff4e4,0x00ebbe8c,0x00d03f47,0x00f25334,0x00e7eb87,0x00eea96d,0x00ecf975,0x00eb3672,0x00e59928,0x00e48b01,0x00e38da9,0x00e0ca2f,0x00cce6f4,0x00c45e96,0x0097abda,
-0x0093ca3f,0x0089f3d4,0x008b401a,0x008a1e8d,0x008d546f,0x008c6af3,0x00901f95,0x009322f3,0x008b6a49,0x009db870,0x00aa67c0,0x00bdac0e,0x00c03f8a,0x00c0c06a,0x00b98009,0x00bfa51f,0x00c7aed6,0x00ceae39,0x00e2c579,0x00dfdd4d,0x000f9d7a,0xffd5e9ed,0xfffed2f7,0xfff76b2e,0xfff3257d,
-0xffdda8b1,0x0015749a,0x001d1827,0x002215d2,0x000c8a1f,0x00051ac8,0xfffa9c4a,0x00017d89,0x000adcff,0x00289d82,0x002a226b,0x002fc70b,0x0027dc78,0x0032fe20,0x0033512f,0x002886f2,0x001d3792,0x001932d7,0x00206457,0x00189b4f,0x00111446,0x00041c62,0xfffde8db,0xfff9f9df,0x0013984b,
-0xffe2ea82,0xffe7078e,0x00227ed5,0x00053215,0xfff530c2,0xffd3bf63,0xffd33ed9,0xff74bbf3,0xffc60b72,0xff73cbb1,0xffbfe479,0xff9eeae2,0x00178900,0x0045f6d0,0x005a2a53,0x002d240d,0x000db571,0xffffa68f,0x00013917,0x001b14f2,0x0070543d,0x005b517c,0x006aebff,0x007c8add,0x00828e8e,
-0x0085b8f0,0x006dfe60,0x0043079a,0x00336a34,0x002c3432,0x0014c6a5,0x0000c182,0xffe658f0,0xffe8ced5,0xffeed453,0x003d5c95,0xffc44502,0xffe46dba,0x00869e1c,0x005fc773,0x00404e47,0xffc89075,0xff831acd,0xfef93a20,0xff9ff462,0xff4fc175,0xff9f1926,0xff3f70c3,0x0011baeb,0x0068ff73,
-0x00afc2eb,0x004aebbb,0x00057b1e,0xfff0a3ae,0xffed94b7,0x003b16df,0x00e15562,0x00acee65,0x00c2d2c8,0x00d82267,0x00e5ada0,0x00df930f,0x009ec627,0x00539894,0x003bd094,0x00517b79,0x003f7e4e,0x002178cc,0xfffc1291,0xffb83a49,0xff938f67,0x004a2abd,0xff348ec9,0xff670cd5,0x008ba8f4,
-0xfff14b3d,0xffa7b24e,0xfedc0530,0xfebd155e,0xfeb6714a,0xff854d42,0xfee1228a,0xff13b6d9,0xfee087d2,0x0007f189,0x00b0f6e5,0x01379762,0x005fdbc5,0x002a7f7a,0x0010dec8,0x008b9f57,0x00b78fba,0x014a20d8,0x00f2356e,0x01198094,0x015bfcc8,0x0160ab36,0x01829c30,0x00f55e17,0x00953177,
-0x0088ca77,0x004ef176,0x00249a05,0xfffd67d4,0xfffc70c5,0xffb16225,0xffc7e03d,0x00df4549,0xff264617,0xff8e9ef7,0x01831df2,0x00f560e0,0x0081ae67,0xff5c091e,0xfe720224,0xfdb38ab8,0xfea2e25c,0x00ec9c41,0x00f48282,0xff63c587,0xff7776f9,0xff9ed441,0x004e02c2,0x003d40e9,0x0064903f,
-0x0045edbf,0x0049690d,0x00b5b7f6,0x017e9544,0x00a51803,0x008cef29,0x010b8b0e,0x007a895d,0x00019663,0xffa6c8e8,0xff0f163d,0xfede31e8,0xfec87a3e,0x001621ec,0x0011951a,0xfe6a4168,0xfe17cc48,0xfdd10f08,0xfd73d6b4,0x003c5d5f,0x00d0a6ed,0xffc82d6b,0xff0fafe3,0xfe4ab15e,0xfcf32800,
-0xfd10b718,0xfd316774,0xfce8beac,0xfd11d940,0xfdeb2f7c,0x0038929a,0x00ed5c2b,0x00f5b248,0xff5a4492,0x0002f1bf,0xffdc2f49,0x003700b3,0x000f73a4,0xfff17283,0x0023e4fb,0x016f6562,0x01723166,0x00f02d3c,0x00ad32fd,0x008692e4,0x002b31cf,0x003ba93b,0x0061d2a8,0x007fe4da,0xffc0067d,
-0xfff59a7e,0x001f1eea,0x0020829c,0xff1d47b9,0xfbff7d18,0xfd33cd80,0xfde20958,0x00ef9636,0x00696ec7,0xfffda0da,0xfef76f7e,0xfe9de382,0x033ff824,0x04f563a0,0x05d56af0,0x04c79ca8,0x0510fa60,0x01c4f13a,0x00a686d0,0xffcb4f5f,0x00155c8c,0xffe54809,0xfffd07c8,0x0010019c,0xffae6841,
-0xffe82080,0xff4ab9a0,0xffe1495f,0x028aaa64,0x00b6a227,0xffee393f,0xff85cdce,0xffc2822d,0xff57ecfc,0xff0f3195,0xff6d44fd,0xff402774,0xfdc101b0,0xfed45f44,0xfe10c096,0xfbad3718,0xfb7803e8,0xfbb560c0,0xff7e4197,0xfaf12968,0xfb2fc4b8,0xfdbc06c8,0x00d85113,0x01e6a23e,0x01468f50,
-0x00d918af,0x016b86e8,0x02302264,0x02514e94,0x021d94e0,0x016dd53c,0x0010838a,0xffbddf98,0x002f2100,0x001fda59,0x002e9d84,0x00d2b657,0x0066c5be,0x00a2b814,0x0236e230,0x003df894,0xffbcbc74,0xff8bdc27,0xfedd5b74,0xfec661d6,0xff177f96,0xfec0dcee,0xff160131,0xff11d7f6,0x002667d6,
-0xff395621,0xfd0b405c,0xfb97ed88,0xfc76f1dc,0x0229e260,0x027d3a48,0x03ee82cc,0x050730f8,0x03038a80,0x011e801e,0x017e3976,0x013cdbd0,0x0149c9c8,0x017921f0,0x011c048c,0x00ea23c9,0x00f28769,0x015334b6,0x018641e2,0x01d751fe,0x0119b9c6,0x00d8fd98,0x00b4d8a6,0x00fc373b,0x00fae60f,
-0x0103882e,0x008824e6,0x006a131c,0xffd2ecaa,0xff4be81b,0xfef4b5e2,0xfe8d7ee6,0xfdd5fc14,0xfe0b2a4a,0xfe90eae4,0xffab0779,0x004bc5ca,0x0094c804,0x01fa52b2,0x02ce2c80,0x045656f0,0x02498820,0x00cc08ec,0xffdda5ab,0x00a2b59f,0xff735352,0xffcce129,0xfff4a4f4,0x0076e8a6,0x011d54f8,
-0x0147ac16,0x0159ad10,0x013be8d2,0x00d2b8b7,0x00ba2cd8,0x01358552,0x00b2c159,0x007bf57f,0x008cee5c,0x00fc59fd,0x013877f0,0x00f6a443,0x011c77ec,0x010644f8,0x00db4cea,0x00d3574f,0x0129fbfc,0x01da9a44,0x02fd353c,0x035ed8c8,0x035c9dec,0x028cf1ac,0x018fa52c,0x001f4bb9,0x00e2a3ca,
-0x00f4f61d,0x009190da,0x00e76418,0x00caa3ca,0xffe4c786,0xff90e175,0x00ba603e,0x008f44ec,0x00908e1d,0x00aa8ae9,0x00ab3fc2,0x00b5c518,0x00c9b90c,0x00f9f6c9,0x00d5353d,0x00b35fe1,0x00843552,0x00bfb9b7,0x01179cf4,0x0146a796,0x00cb69e6,0x003bb996,0xffcf3af9,0xffe45825,0x002dfbeb,
-0xffc84ef0,0xffb7c074,0xfffead2b,0x00079134,0xffd3e5fb,0xffa8551b,0xffa59f34,0xffe44d74,0x0052d341,0x00aa5a11,0x00e7f3c0,0x0119b1e6,0x0150f4d2,0x01115198,0x00d18773,0x00c6c6dc,0x00c0c33a,0x00e2e8e6,0x00f95f71,0x01215058,0x00f9e460,0x010aa230,0x01064d1e,0x00ed1347,0x00ef5cc9,
-0x00d76030,0x00ed196c,0x00ebc108,0x00e69a6d,0x00cf35ea,0x00d20816,0x00bfa5ce,0x00c74cd2,0x00b96943,0x00939447,0x007699ad,0x0060e7de,0x00737d14,0x00793ceb,0x008c2b50,0x009f84ae,0x00b804b3,0x00bbb472,0x00b33621,0x009c914a,0x0098ebcc,0x00896c49,0x00860c43,0x0095c55c,0x00a3c5b2,
-0x00c23452,0x00ce41c1,0x00d5005f,0x00c29c34,0x00c4f5e8,0x00ce1a2a,0x00ce6229,0x00e11856,0x00a82b75,0x00b2bb1a,0x00cdc34c,0x00d38b9f,0x00cd6415,0x00ccdd1c,0x00c949ec,0x00c6b114,0x00c602b8,0x00b27658,0x00a67fe4,0x00a82e5f,0x009d001b,0x0091d38a,0x0099f045,0x009e5154,0x009bb1a6,
-0x009a5a85,0x009ca53b,0x009dcc2e,0x00a52f98,0x00a6b1cb,0x00aa1d01,0x00a892d5,0x00ae889d,0x00aece5d,0x00a4f73e,0x00ab98c9,0x00acfa55,0x00b1e0ba,0x00baeaac,0x00be6a6d,0xfffadfa4,0xffd34110,0x000b5021,0xfff23453,0xfff8541e,0xffeb99a0,0x00014fb9,0x000ff53e,0x00289323,0x00166d8c,
-0x000aa7ed,0xfffacd83,0x000103c4,0x000b624b,0x002a9bdd,0x001a3045,0x001ac07c,0x002cd4fc,0x00241375,0x001c4d5f,0x0010b5d6,0x0002b8cb,0xfffbaaec,0xfffdb741,0xfffe0dbe,0xfff58d6e,0xffdc57b9,0xffdf99e5,0xffe5b8c5,0xfffd2813,0xfff59a72,0xfffba380,0x001d0ea5,0xfff51507,0xffe85227,
-0xffef8646,0xffccad78,0xff7d108e,0x000020b2,0xffc800e0,0xffc18c93,0xff962a2e,0x001740b4,0x003d0718,0x004b9caf,0x001ff65f,0x0001d70f,0xffe77c96,0xffe7c55c,0x0003a759,0x00492cba,0x004f5de3,0x00600a13,0x005f3d50,0x00701158,0x0067672a,0x00387227,0x00083e6b,0xfff205c9,0xfff21b6f,
-0xfff97bbe,0xffec3cdb,0xffb8b814,0xffca81d5,0xffd1c7f1,0xffeb143f,0xffd133d9,0xffed88d1,0x003b36d5,0xfff21e25,0xffd509d4,0xffe6232d,0xff7271ba,0xfefb5cd2,0x002a8b71,0xffe6d961,0xfffff9ac,0xff786c3e,0x002a9912,0x006cd8a8,0x0096036a,0x004ba531,0x000725af,0xffd47118,0xffd56bf5,
-0x00156a37,0x009ce618,0x00a8e0ee,0x00ba17d1,0x00bc1586,0x00d829ce,0x00bc15fe,0x0082a567,0x0028c867,0xfffc5ee9,0x00188574,0x001442bf,0xfff462d3,0xff71c52c,0xff76a152,0xff9036c5,0x000ea89a,0xffe944db,0x001d14a9,0x00ac4c23,0xffcda5a1,0xff8e43ee,0xffd2e065,0xfed48e6e,0xfe42f7ac,
-0x001d4777,0xffb9f5ef,0xff7ef7f2,0xff1593b7,0x008f92ed,0x00e23e12,0x01142a64,0x007ed062,0x001ae5ec,0xfff69ecf,0x004c427d,0x008eecfc,0x014d0568,0x00ee32ae,0x012924c4,0x01508174,0x017512ac,0x01298d64,0x00cbb48b,0x004af5fb,0x000289cd,0x00177b9f,0x0013f319,0xffe11a10,0xff66e992,
-0xff97cc24,0xffd304d0,0xffff9a6e,0xff7467b0,0xfffe71fd,0x00f39027,0xfff95bad,0xffa82f66,0x003ad719,0xfe72f48e,0xfdc1683c,0xfcf71bc0,0x00b2e03d,0x012a4fbe,0xff2e3350,0xff7b8eec,0xffa6c30d,0x00303a42,0xffa7d291,0x00041b6a,0x006ea0d4,0x0004418d,0x005e52f0,0x014ddac2,0x00b8da4a,
-0x008d3f73,0x00a8313e,0x004fa0f6,0x000b0ff1,0x001fd39b,0x001f7641,0xffd560c6,0xff817d7d,0x008e3940,0x009cad46,0xffc3fc93,0xfe4a5c32,0xfe35c246,0xff44f246,0x01d841da,0x018ed66e,0xfeb2699a,0xfe997fd8,0xfd95da30,0xfc19e9d8,0xfd164b5c,0xff2f556f,0xfd064f64,0xfd1ae318,0xfe14d98a,
-0x003b813c,0x006aa97e,0x0063a1de,0xff938d78,0x00136eca,0x000b0ac7,0x00251e6f,0x001e53d8,0x0004f49b,0x00556c48,0x00ae0c4c,0x00da89d6,0x017ceede,0x00cd2e60,0x0087d5f3,0xffd803d3,0xffd1dc13,0xffeaaf1d,0xffe3e2bf,0xff2715b2,0xfec13a0c,0xff162766,0xfe02f0be,0xfd9779b4,0xfd1f30ac,
-0xfe310aea,0xffc3748b,0x017152c0,0x00302497,0x0081f3bf,0x021e9524,0x00f7f832,0xff0943aa,0x019f8284,0x044442f8,0x03c83668,0x035517c4,0x008ba2cc,0xffd63540,0xffe289ad,0xfff55b5c,0xfffac10f,0x0032977d,0x004554f5,0xffb2a7d8,0x00687315,0xff5e19ee,0xffe84670,0x0299ec54,0x00e11561,
-0x00177151,0xffd9a58b,0xff8feef5,0xff619c12,0xff8f3e99,0x0003846d,0x0035fc41,0xffa09472,0xfeb9ae76,0xfe25c1d2,0xfd478b00,0xfe3c6fa0,0xfdc00b58,0xfd30a04c,0xfb0c0288,0xf994fe58,0xf81136c0,0xfbcb7888,0x050c3a50,0x02d6371c,0x020dc16c,0x0212c460,0x02ece350,0x024a37b4,0x01d07838,
-0x01395668,0x0027e204,0xfff4b180,0xfffdc5db,0x00102927,0x00055480,0x008ce624,0x000f9348,0x00330597,0x01a16256,0xffa1ad93,0xff18e685,0xff2545a4,0xfeebb080,0xff1068ab,0xff2f0ce2,0xfeeb54e4,0xff1e9b81,0xffd9047f,0x00bba0c5,0x0067463b,0xfdcce578,0xfd87e6d8,0xfd6ea86c,0xff620e01,
-0x0117fefc,0x035b8f9c,0x0533d860,0x05c63bd8,0x0083c486,0x00a8f7ec,0x00f68ac0,0x01080782,0x0168de8c,0x011e07e0,0x013851ee,0x01a6a26c,0x0184e512,0x017e1d22,0x015b5f9e,0x014d0442,0x010eccf8,0x0070215c,0x0091ed4c,0x00b961c6,0x012b4800,0x007adda6,0xfff0a25e,0xff72f810,0xff0ae444,
-0xfe8ca104,0xfe1a38a0,0xfeb9ddf0,0xfeffcad6,0xff1c10c7,0xfe606038,0xfe55df40,0xfe82b53e,0x019b33c6,0x0394d730,0x04e15bc8,0x039cdb44,0x01ef83b0,0x004eecd5,0x0072bd66,0x009ef491,0x00abbabf,0x00b72d2b,0x01084148,0x0162587a,0x014535c4,0x0116a30c,0x00c9d560,0x007e1cda,0x0069f8a8,
-0x0089db42,0x009f8547,0x00a7b565,0x01091eee,0x0137b706,0x010b7cf6,0x009f40d3,0x00c1d11c,0x00d332f2,0x00f8bc27,0x014a5f54,0x01bf05ea,0x0240f77c,0x0244429c,0x02370c40,0x028f2650,0x01fefdc4,0x022ecfc0,0x027b2934,0x0233ec38,0x01e2def0,0x01b0f20e,0x009cddf6,0x009842bf,0x00dd687d,
-0x008adc44,0xfffede1b,0x0019efe6,0x0068783a,0x007b6c01,0x008a5079,0x009aadce,0x00c036fa,0x00e9e3b3,0x00e705a4,0x00e51779,0x00dcfbee,0x00bd354b,0x00be1954,0x00982027,0x007e5adc,0x007069a6,0x00745836,0x000e9b75,0xff99bb62,0xff69c80c,0xff7d0ed8,0xff42784f,0xff3074d6,0xff45465d,
-0xff62d46b,0xff7ad4f3,0xffb580ff,0xffdf52a1,0x001b4a1f,0x00501197,0x0076516e,0x00805e4a,0x006948f4,0x002dd66d,0xffe621eb,0xffe97910,0x00dbc5eb,0x00e0eaf5,0x00da9acd,0x00c5076b,0x00c7b1b7,0x00b1c49f,0x00a0b39e,0x0097f9a1,0x00a0084e,0x00b04187,0x00c2b618,0x00cc380a,0x00d4e74e,
-0x00e755c9,0x00d45508,0x00bb4977,0x00b35617,0x009f1bc0,0x0089d613,0x00814359,0x0095974f,0x00a648cb,0x00b2cb40,0x00bd6553,0x00c11d98,0x00bd639f,0x00c50cd9,0x00c494ef,0x00ba15da,0x009c3ad4,0x0084803e,0x007bc56c,0x00918bbc,0x00af8e33,0x00c29542,0x00df6d8c,0x00de7bb5,0x00ed203d,
-0x00ccb4c9,0x00bd701f,0x00a158b6,0x00cbf459,0x00b25f0c,0x009bb31b,0x00a55a2f,0x00a5f270,0x00a71288,0x00ad9e0c,0x00b0f179,0x00b71cd0,0x00b941c2,0x00c86235,0x008f5775,0x00a4203c,0x00b176bb,0x00bdcd7d,0x00b74ac0,0x00b626bf,0x00b5bc22,0x00b21794,0x00b271d1,0x00b61dfa,0x00ae9ee8,
-0x00ab2e9d,0x00ae954d,0x00ba5140,0x00c6016b,0x00c933ea,0x00cc38e8,0x00cde1da,0x00d409ed,0x00d33913,0x011be6ba,0xfffb5a71,0xffe061d8,0x00070c2e,0x000108ca,0xfffe5378,0xffe7884a,0x0015b016,0x0015676b,0x0015eed4,0x000b09da,0x00010aee,0xfff04dc8,0xfff53b92,0xfffc1490,0x0010ada3,
-0x0017cceb,0x001e1c0f,0x001e5c03,0x00207cce,0x001be791,0x0012b042,0x0000e27b,0xfff6c5ae,0xffee9d89,0xffefe2e3,0xffec1156,0xffe124ae,0xffe67082,0xffeb7eaf,0xfff44619,0xfff6f531,0xfff81166,0x0003fbf3,0xffda5e4c,0xffd34226,0xfff56d23,0xffd8801f,0xffb143dc,0xffec524b,0xffd81b12,
-0xffd17465,0xffa4f544,0x0026dfcc,0x004d0b48,0x003e6c85,0x0023ff71,0x000644dd,0xffebea5c,0xffe8fb2f,0xfffe2613,0x002be61e,0x00405a61,0x005905c9,0x0061dd0a,0x0066f86f,0x0057e729,0x0040da02,0x0006038a,0xffeb2a65,0xffe423d4,0xffed5bcf,0xffe253ec,0xffb96c26,0xffbabc0b,0xffc40432,
-0xffd2b4ed,0xfff3f5ca,0xfff75405,0xfffa05cf,0xffa18bfa,0xff8d8570,0xffe58c35,0xffacec93,0xff43b0a0,0xfff08792,0xffac3e33,0xffc5411d,0xff92b555,0x004e7bf7,0x008c9c33,0x007c52d0,0x005008c3,0x0002777c,0xffd2457d,0xffcdd944,0xfffc1980,0x006e25e8,0x009ac2ff,0x00b447ba,0x00c3656e,
-0x00cc4a83,0x00b5a732,0x0097eb69,0x001283b7,0xffd8c29d,0xffbfebe2,0xffaeabfa,0xff938852,0xff3f9146,0xff68aeff,0xff8f838a,0xffabdba5,0xffe3d77e,0xffdb6862,0xffe26717,0xff13713d,0xfed553f4,0xffb13786,0xff2b78a5,0xff273cbd,0xff72d079,0xfed13622,0xfe97f25a,0xfe86c5d6,0x0054f621,
-0x00ca233c,0x00ddf4c6,0x00860b3e,0x001f6518,0xffeddb16,0x002456d3,0x00734683,0x0121ca22,0x00c925dd,0x010c80c2,0x0178a8cc,0x0184e126,0x013b167c,0x00f8440b,0x00059852,0xffaabbf8,0xffb1e238,0xffb04b18,0xff8a3ae2,0xfee6575c,0xff2362c9,0xff57c187,0xff425f43,0xffb38dc2,0xffbfd7fc,
-0xffb46be1,0xfebfbfb4,0xfe92eba6,0xffa63e34,0xff0cee46,0xfe2e5e20,0xfd103a74,0x00d0ed9d,0x01c111b0,0xffa05b61,0xffd07746,0x00087a25,0x00ce7581,0xff7c521c,0xff72d72d,0x0065b1b0,0xffe8906d,0x0035bb1e,0x00ffa1c4,0x01081c20,0x00f5622f,0x00a42121,0x00935672,0x00a624f4,0x00c3cff9,
-0x00942b68,0x003d9f63,0xffea8a92,0xff5e1205,0xfec0a494,0xfe26c3f0,0xfe47dcea,0xff1213a5,0xffae7e74,0x018c1870,0x01581f32,0xfef85420,0xfea22770,0xfda1b84c,0xfca0c014,0xfdb804fc,0xffb56749,0xfdc04bfc,0xfde05540,0xfe9b073c,0x00eb060a,0xffc81155,0xff4b81cb,0xff60c863,0xff8a2b79,
-0xffa46fc8,0xffd672df,0xfff60470,0xfff27a37,0x00192034,0xffff3bf2,0x006640e5,0x01c383e0,0x00ca71a1,0x00322881,0xffb28614,0xffcfabf3,0xffdb6340,0x001a5fda,0x00714083,0x00351f51,0xff814568,0xfe32c932,0xfdff1a58,0xfe92f870,0xffcf457e,0xff918bc7,0xfe676738,0xfeb47ece,0xffc18934,
-0x0114c74a,0x00a3e953,0xfafb6090,0xfe1da35c,0x01ed7930,0x01bf0800,0x012a3ae6,0xffba8a95,0xffba091b,0x0035d9a1,0x0018971b,0x000c9eee,0x000f62e8,0x0049ec6b,0xffc2a601,0x0051d257,0xff8d7323,0x000b706e,0x01e06036,0x00f89e24,0x00922cb5,0x004f50dd,0x007f9057,0x006971ca,0x00285637,
-0x0066e38b,0x007b6e0f,0x01110692,0xfee4180a,0xfe077e66,0xfd80fae4,0xff9f26bb,0xffdd6733,0xfddfb758,0xfdab2ab4,0xfb493fb8,0xf8637f00,0xf9ce3ca8,0x07305ce0,0x0469f040,0x032a6c8c,0x02d4ce0c,0x0332f518,0x024fc5d8,0x019641a0,0x010b4f24,0x0085d9c3,0x004bb905,0xffff69ab,0xffe91bf5,
-0xffe271af,0x00b1e3e1,0x004c7f9a,0x00529669,0x01361226,0x000ca64e,0xff77c0c2,0xff421696,0xff23ba9a,0xff2ab3c9,0xff2b4f00,0xfff2100e,0xfffa3316,0x005c0bc7,0xfe8b9992,0xfe0b40d0,0xfdc79780,0xfefd7e72,0xfee56724,0xfd3ee9a8,0xffb79ba9,0x0221ba20,0x047cca28,0x072cfd80,0xffe2c016,
-0x003d305c,0x009139e1,0x00c8aab7,0x016e03fc,0x01263822,0x01646ac4,0x01f593fa,0x018a9c0a,0x014e9766,0x010bd9de,0x017d34a0,0x01296ca8,0x0033ec83,0x0050386c,0x00935915,0x013ee014,0x00993020,0x001b6770,0xffce2f75,0xffe29ade,0xff8ebf48,0xfec21c96,0xff06603d,0xfe4caa98,0xfde2cb44,
-0xfc998cb4,0xfd0b47ec,0xfe746820,0x00aa64c1,0x02b56e84,0x03df8f88,0x044dbad0,0x03778578,0x01e175d2,0x00691702,0x01a89660,0x0186cbd4,0x01a0cc38,0x01b5b7e6,0x019747a0,0x012dfaf8,0x00d62391,0x00b38edb,0x004876e1,0x00239bc7,0xfff7f7da,0x0084be4b,0x00ee076c,0x0133c634,0x01229076,
-0x00d6432d,0x00b55116,0x00a1b64b,0x00d046d3,0x00ef19f9,0x01053920,0x010fd88a,0x01038514,0x010eeb24,0x012d35c6,0x01213214,0x01aa0bd6,0x02589e6c,0x03337744,0x02e3e7c0,0x02608bbc,0x020d6488,0x00d77f67,0x00496b3d,0x008f337d,0x015be54e,0xffe55c72,0x00007980,0x004915f0,0x00a63404,
-0x00f0703c,0x00f9603d,0x0110de5c,0x01228c76,0x011b4064,0x010a562e,0x00f7edd0,0x00b2b339,0x007fd06c,0x00493800,0x00864462,0x00d297bd,0x011f5416,0x00f35b67,0x0095669c,0x00b40a3f,0x00b78bdf,0x00849e11,0x0073d247,0x006120ee,0x005920f1,0x003692c1,0x00463c48,0x003d9dd4,0x005362c9,
-0x00479230,0x004cc0e0,0x00522f54,0x003a5e00,0x0015e6c7,0xffc33db6,0xffbdbb96,0x00e9912a,0x00d9ed7e,0x00cdc410,0x00b418d2,0x00ad850c,0x00a2e706,0x0098019c,0x0083da78,0x00886c94,0x008376b5,0x0094ec0b,0x009825f7,0x00a79be2,0x00af2359,0x00a30001,0x008789ff,0x0070e9e8,0x006d06e0,
-0x006aa841,0x008347c7,0x0087cf03,0x00894d62,0x008ed959,0x00940e29,0x009aba71,0x00a84b53,0x00b903b4,0x00c9757a,0x00d06299,0x00dd4e9c,0x00e6e4c8,0x00f0f029,0x00e9adad,0x00ed55c6,0x00f792d4,0x00fab3c1,0x00d202c8,0x00ceaaa9,0x00f40aa3,0x00f90070,0x00f5acaf,0x00df8234,0x00f0ec7d,
-0x00ee1b3d,0x00f4f347,0x00faa636,0x00fa1bf8,0x00ffc6e3,0x01019620,0x01070ff4,0x00eb5921,0x00d9c059,0x00e7521d,0x00e0b667,0x00d52bff,0x00be3c11,0x00ba9211,0x00bc9e9c,0x00bbb35c,0x00ba5c0c,0x00b8df04,0x00b3bed2,0x00b74fd6,0x00bcec70,0x00c68e55,0x00d0478c,0x00da02e9,0x00e89469,
-0x00e2cc33,0x00ddf4a6,0x00d86241,0x00d2a9f8,0x010246ae,0xfff36866,0xffd11a98,0xffef99bb,0xfff0f838,0xfff46e96,0xffe59e5f,0x000c6ecb,0x000f13cb,0x000a3d71,0x000477c8,0xfff9edde,0xffe8ec8e,0xffed1da0,0xfff1a84c,0x000121b7,0x000b02c9,0x00112bc8,0x001bb51f,0x000b502e,0x0002c92c,
-0xfffda698,0xfff45ec4,0xffebe5b8,0xffe5c8cf,0xffebd351,0xffecec85,0xffe45222,0xfff4792b,0xfff8fb8d,0xfff24403,0xfff79611,0xfff3e359,0xffeb2961,0xffe35962,0xffdd36f4,0xffe04285,0xffccd081,0xffad3d52,0xffecc008,0xffe591e7,0x000124cf,0xffc4636f,0x003ecc6d,0x00580b72,0x00331df1,
-0x0023e70d,0x000234e7,0xffdc73ba,0xffd94cf6,0xffee954b,0x0013d43c,0x003a5f6b,0x00524a94,0x0051e5aa,0x00454eb3,0x003f4afc,0x001fb610,0xfff70df7,0xffe41ed9,0xffd446e5,0xffd9f012,0xffd716aa,0xffbe111f,0xffe3fa6e,0xffe57b72,0xffc7f3ff,0xffd816ff,0xffd99d62,0xffc9e115,0xffbff75f,
-0xffbfd60d,0xffcfbbe2,0xffa16749,0xff4e6e1a,0xfffd800b,0xffe3935d,0x000e472f,0xffa33ef4,0x00822e10,0x00ac2588,0x006c28de,0x0061dc6a,0x000f86f0,0xffbde003,0xffb34ba2,0xffe175c6,0x004c508c,0x009e6abb,0x00be130a,0x00af3d58,0x009bb43d,0x0080bff7,0x0059d051,0xfff0c2cf,0xffcf608f,
-0xffab85ef,0xffc030a6,0xffbe3445,0xff9bf3ea,0xffe52f0a,0x00065270,0xffc7faee,0xfff75cfd,0xffefec81,0xff9d8fa2,0xff9c4fcd,0xff819855,0xff6e6ad9,0xff1ff86c,0xffb15bbe,0x0089cf24,0x001b5f5f,0x000664db,0xff52d385,0x00b3dc36,0x0107bb28,0x00edf9ef,0x009b87db,0x001ba88c,0xffdae6c4,
-0xfff13b80,0x0056157f,0x0102b93c,0x00e57f4b,0x010de472,0x014fc6c6,0x014721d2,0x0118b16a,0x00c7db59,0x0017e268,0xffd5ef08,0xff9cbaac,0xffa2c7c9,0xffa53faa,0xff5dbe55,0xffbc2bfb,0xffb37889,0xff381d1f,0xff8ebed0,0xffa32216,0xff63e0f8,0xff7d105b,0xffa5707e,0xffa07d74,0xff31b520,
-0xfd663c78,0xfd89e3cc,0xffeb07f0,0x00f92fc1,0xfff7ca5d,0x006bb13e,0x008caa02,0x00c15bc3,0xffb71143,0xff78e367,0x000a069e,0xffd40008,0x0024704c,0x00b52f8e,0x01384e02,0x0147e5c2,0x00af0787,0x00c7650e,0x00c9ef9e,0x004f17e0,0xffbd0df4,0xffa00d4c,0xffc927fc,0xff687c43,0xff024466,
-0xfe67bdd6,0xffb25b0a,0x0032d4db,0x00b41b5d,0x00f1a303,0x00611be0,0xff932b20,0xfe35d0f4,0xfd67b798,0xfd3fdd1c,0xfd2c223c,0x00448cd5,0xfde27b58,0xfe40c5c8,0xff303c85,0x00fe8330,0xffad85e3,0xfed1cb46,0xfed08300,0xff573520,0xff8ab6da,0xff925781,0x00037d03,0xfff116f6,0xfff31306,
-0xffbf181e,0x00259534,0x01936736,0x00bfc955,0x005c97b2,0x0044db83,0x006f4bfd,0x0065ebc7,0x00666ef6,0x00d2ff23,0x002b9fd7,0xfe6fce22,0xfe66aad0,0xfe84d46a,0xfea798d0,0x0041f8ef,0x007d2ea3,0xff2b6915,0xffcbb7d8,0x00105b3e,0x008d6343,0x00ca33e7,0xf963ac48,0xfbc47348,0xfed99af2,
-0xff7825a4,0xff379a2a,0xff0d2222,0xff8c56a7,0x003e7bbe,0x001c5d0d,0x0006e88b,0xffbe57e2,0xfff16bc4,0xff9bde0f,0xfffc4b1d,0xffade468,0x00080745,0x0138a570,0x0103066e,0x00eaf7f4,0x004a2061,0x005e8612,0x006409f0,0x001d1bc3,0x006cc741,0x00312ab1,0xffde5dca,0xff3d92b6,0xfef08c50,
-0xfe7dd174,0xff75d43f,0xffd82bdb,0xfea4084a,0xfe768314,0xfcbeb358,0xfb4efb90,0xf91e3fc0,0x0695dac0,0x0614f440,0x04ce21c0,0x04285530,0x038a969c,0x02b19e44,0x01a043f2,0x009e91a6,0x009f03e6,0x00591666,0x00003818,0x000258d1,0x00036fd9,0x00716df0,0x00524bcf,0x0073654b,0x00f23a97,
-0x00bf6593,0x005d06a7,0xffb4fcab,0x001503bf,0x0028e0e5,0xffe4fef1,0x00d154e7,0x0036816b,0xff0b1628,0xfce1c6ec,0xfc8bf0f8,0xfd9dd614,0xff820bfe,0xffa23703,0xfd9c121c,0xfd4fadb8,0xfed37756,0x029a4348,0x05259768,0x007f9a24,0x008dfda6,0x00c05eee,0x011bc87e,0x019e459e,0x01486d68,
-0x0154304c,0x0185a198,0x01560f14,0x011be3e6,0x00d2b604,0x0120d71c,0x00dbb00f,0x004f4681,0x002ae85f,0x004d5b94,0x0108b534,0x0079fb99,0x003cfbb2,0xffd5d746,0xff97cee4,0xff6169bc,0xfef73544,0xfe0fafd0,0xfd42e524,0xfd028f2c,0xfc20b6e0,0xfca3488c,0xfe79865a,0xff538e8f,0x00f3abb1,
-0x02b1c734,0x03e63be4,0x03fa1a94,0x0365cd60,0x017b8f84,0x01374894,0x0150e12c,0x019d4ed2,0x01918458,0x015f8fe4,0x00fe3648,0x00c5b04d,0x00d34c1a,0x0068f433,0x00470009,0x003cba16,0x0053d503,0x00aaf252,0x00d2eaef,0x00fa3ad2,0x00e5a883,0x00ed2a31,0x007c353e,0x0084a3d2,0x004b06df,
-0xfffda754,0xffbd4b5a,0xff69099e,0x0020272e,0x008717e5,0x0055010c,0x01a933d2,0x025f5284,0x02b3a808,0x02f5b200,0x02bab544,0x01d07690,0x00fc604b,0x008ef71b,0x006bcf66,0x00ed1ee9,0x007c0da0,0x009cd92e,0x00a5c5f8,0x00e845a7,0x0131007a,0x0132b70e,0x01342d00,0x013b4630,0x0128ee0c,
-0x011c2102,0x00eb6b5b,0x00eb9629,0x00abe74a,0x00965cab,0x00b06099,0x00f388fd,0x0131199c,0x01279e70,0x01161dc4,0x00fa6203,0x012f3fd8,0x016f5cca,0x018c4a9a,0x014c85a6,0x011857c4,0x00d7cab4,0x00e2ec83,0x00e61563,0x0109d686,0x009b7188,0x00427e31,0x000439e3,0x002cac86,0x0038dca4,
-0x001d9f97,0x004809ee,0x00a2c9ac,0x00955968,0x00af6db7,0x008ba460,0x008bbce1,0x00878e38,0x00792d3f,0x0075ac11,0x005fde6e,0x006423cd,0x005e3651,0x006365b1,0x006b55b9,0x006e593b,0x007d2e0c,0x00869fe1,0x0078a7b0,0x008c1805,0x008bb387,0x00e09fa2,0x00c11d62,0x008ba1b6,0x007ddb5f,
-0x0062bba3,0x00566521,0x0047c6be,0x00673b88,0x007c0e57,0x009aec7a,0x00b2300b,0x00d20d92,0x00d9aaa8,0x00c608bf,0x00b73278,0x00b68d0c,0x00aed53a,0x0070f66a,0x006359f5,0x008e5293,0x00a11265,0x00cac7b3,0x0080903b,0x00a4f6bd,0x00cd96ed,0x00cc872b,0x00c80405,0x00c7ca86,0x00bfe441,
-0x00bcb852,0x00b83dff,0x0096bad4,0x008c451d,0x00c5c4ee,0x00b2d4ec,0x00a8f85b,0x00c15f7c,0x00a63bbd,0x009ea043,0x008c1f97,0x00825276,0x007627c3,0x006010eb,0x006acb52,0x006d4e13,0x006c16d7,0x007453f9,0x007a2684,0x0088d5a0,0x0084ac0c,0x00829d49,0x007ceb15,0x00757dd5,0x00806a41,
-0x0010d6cd,0x0002f4a7,0x001abb7e,0x0004d9e1,0xfffe3041,0xffdede1f,0x001e638a,0x001a20fc,0x000250af,0x000467b3,0xfff9f88b,0xffe46a19,0xffe5b95e,0xffe96b4d,0xfff6d775,0x0015a029,0x002624d5,0x000f1900,0x000df26c,0x000b1174,0x000cca69,0x000c3aa6,0x0008d013,0x0000a7e2,0x00086693,
-0x0009f792,0x00009173,0x001aedb1,0x001e43ff,0x0012e13f,0x00065e61,0x00006001,0x000686f5,0xfffc5fc3,0xfffa8d72,0x0002fd9c,0x0000b594,0xfffc43c9,0x0037a0d8,0x00150cf1,0x002e61ff,0xffe288ee,0x005105ee,0x0066ba3a,0x0037405c,0x0042b2f8,0x00209a27,0xffe18423,0xffe69368,0xfff9940e,
-0x0015a98e,0x00506a8d,0x0068f101,0x0059153f,0x003f8fbd,0x00247bb9,0x000ab0cd,0x0002adc4,0xfff79098,0xffe1835e,0xfff3e5ee,0xffff48df,0xffebcb40,0x00372a4f,0x0037d1e8,0x000fed07,0xffef47bd,0xffde571d,0xfff800c3,0xffdff29d,0xffe527c1,0x0002272b,0xffe4c19b,0xffebca1e,0x0036ac79,
-0x0033045f,0x003ef2c7,0xffa6a26a,0x00932af8,0x00b1fb30,0x0056a35f,0x00747639,0x002fc7a6,0xffae267f,0xffb59749,0xffd939c0,0x00247cf8,0x00ae5a8f,0x00cec4fe,0x00a16eec,0x006d7058,0x004f3304,0x0019ebec,0xfffee860,0xfff0367a,0xffc2988c,0xfff0792b,0xfffbdc46,0xffc9c3d8,0x006dbbc8,
-0x0078d5df,0x002a8f4b,0xffdaf26b,0xffa80264,0xffda43c3,0xff9b348f,0xff9b1f7e,0x0007cf64,0xffe1d0fc,0x000c2251,0x00cc02b6,0x00f59971,0x00b04c3a,0xffa71180,0x00f674ad,0x0135983a,0x00e51ad5,0x00d3c318,0x00342e06,0xffb6b01e,0xffbbc1fc,0x002b02d6,0x00c29c9c,0x01262b5a,0x014f6928,
-0x0112ed08,0x00f1a0e4,0x00b73bbe,0x003ecfcb,0xfff9dd76,0xffd8543b,0xff84abc6,0xffcaca41,0xffe904ed,0xffb7cc7c,0x00aed430,0x009cdb33,0x0009c967,0xffa1f7dd,0xff6a8ee9,0xffc58472,0xff8d7784,0xffaa217f,0x00658a71,0x0002e51b,0xfe61171c,0xfdb02aa4,0xfe530a2c,0xff7051f2,0x0013445f,
-0x00af9711,0x00a4b9bf,0x00236a9a,0xff914da3,0xff64d8e6,0xffd71272,0xffb716a6,0x00109372,0x0093f109,0x0136c1ee,0x0141acc2,0x007293aa,0x00ac24f0,0x0085be1c,0x0046b06b,0x000329ed,0xffe52a5a,0x000e592c,0x003e468b,0x00280c5d,0xffc3a252,0x005a26e9,0x00d81e67,0x017f8262,0x0064ea05,
-0xffb34e38,0xffa2e454,0xfeb0e928,0xfe7741fc,0xfeb039f4,0xfe5a53b6,0x002f86ca,0xff441d86,0xff449afe,0xffb2d866,0xfff65928,0xff941664,0xff4b5e0b,0xff30d29c,0xff6f8a15,0xff908a20,0xff7d0356,0x001c6b34,0x001afed4,0x000525d9,0xffc00823,0x000fcaac,0x013bfdda,0x00e20f06,0x00c05093,
-0x0051aa3c,0x0009224f,0xffd056cd,0xff7411e6,0xff27526e,0xfec05a0c,0xfe75aec4,0xfeadd294,0xff0bbea2,0x008258ba,0x006f969a,0x007acbe5,0xffb9976a,0x003f36a5,0x0038066d,0x001f4935,0xffe7aa49,0xfa14a660,0xfb43b158,0xfd3c17c4,0xfe58eb10,0xfec1f18c,0xff0eb923,0xff6d7610,0xffdde77b,
-0xffedfa9b,0x001126d0,0xffc7ef4a,0xffdaf305,0xffaa3b6f,0xffd9ab42,0xffd448d1,0xffc2aba5,0x003219d4,0x009a95dc,0x00ada861,0x001c5d7f,0xffd6c238,0xffcbc3c9,0xfff2e6f9,0x000a8343,0xff6b75a4,0xfe71b2ea,0xfe464208,0xfead6844,0xfff10629,0xffaa3b4e,0xff52fdbf,0xfe880e28,0xfe1c81e4,
-0xfdee0d74,0xfe1db3a2,0xfabda7c0,0x043ba398,0x05bc36a8,0x059e4b78,0x04895a48,0x03b96260,0x028eab84,0x017c77a2,0x004cb88b,0x00772b70,0x002ff497,0xffe83e28,0x002096be,0x00169e36,0xfff570af,0x000b3903,0x00498b2a,0x0077388d,0x00e2f5e1,0x00d888ca,0xffe04353,0x007624df,0x0068629f,
-0xfff81e86,0xff829cad,0xfeeecfd6,0xfe45944a,0xfdf3853c,0xfe12bc4c,0xfecb5a68,0xfe9b9fe8,0xfe7d0e74,0xfe98b8d8,0xfc2cd32c,0xfcbefbc8,0x00ba8132,0x0223db48,0x02b5d494,0x01bb7114,0x016ac858,0x019a69c4,0x01b0fbba,0x0176c678,0x01617d86,0x0158cc8a,0x0139d8c2,0x01005e2e,0x00a259b4,
-0x009ebfc9,0x00890546,0x00b003f3,0x001f900a,0x00042881,0x006d2d84,0x00493f65,0x002407a2,0xff296a56,0xfe75464a,0xfe5fa2da,0xfea109f6,0xfe56d85e,0xfe3ea192,0xfd80af58,0xfdeb8e28,0xfd9c4040,0xfcd98804,0xfd9058cc,0xfeae9cec,0x007c471e,0x02617b54,0x03c9eea4,0x04b878d8,0x0388623c,
-0x00b74327,0x0105c994,0x013b9cca,0x0138128c,0x00f4efa6,0x00dafb85,0x00be0c37,0x00ae8df0,0x00b975e1,0x00b6d5cf,0x00b45ed9,0x006d070f,0x00698fc3,0x00936444,0x00f0e435,0x0121c790,0x0136da0c,0x0097d025,0x0038ed60,0xffe80a68,0xff94a718,0xff457206,0xfef33de6,0xff3b6a76,0xff76394a,
-0xffe1f35c,0x00d62cf4,0x0190cc60,0x020c67bc,0x02b52fa0,0x02c8f694,0x024d6370,0x01a4c4ea,0x00fc010a,0x009786ae,0x00878ba0,0x00f89315,0x012a7122,0x0117e6e6,0x01302fa4,0x0153acf6,0x0141b3fe,0x012d261a,0x011ff336,0x01245e02,0x012a7664,0x012fa1f6,0x013683e2,0x010cb46c,0x00fa2712,
-0x00eebd34,0x00f5c1d3,0x00fe740f,0x00fe3c28,0x00f8bdfd,0x00f4b35d,0x0125c28a,0x014d8a58,0x01661bb2,0x017ea6d2,0x018c1e1c,0x019a4666,0x01982366,0x018bcc38,0x018667ee,0x01035c06,0x00a04312,0x005a2e2c,0x00802d0d,0x0097b38f,0x0084dc9f,0x00c3f887,0x005d443a,0x004e711d,0x005f1b94,
-0x005248ad,0x00533fed,0x00503ed3,0x004bfacc,0x004ae25e,0x004e263f,0x005db407,0x005f3c77,0x006d9ac7,0x007ce848,0x008c5aa8,0x00af2893,0x00e53ca5,0x00febe8a,0x0123a2a4,0x01232d8c,0x01a0b598,0x017c11c0,0x014e594c,0x01312708,0x0109c4b4,0x00ebfc14,0x00cc0df5,0x00ce5662,0x00cc7816,
-0x00d71a08,0x00d99751,0x00dbc309,0x00c0ab51,0x00a563ff,0x008a63ae,0x007bae33,0x006dfd95,0x004e8c33,0x0041f29f,0x00547889,0x005c2caa,0x006ffd1f,0x00503604,0x0061eef2,0x00766c1e,0x0076b29e,0x0072ee17,0x00737742,0x006f7736,0x006cde3e,0x00674e51,0x007bf0a3,0x00864156,0x008c0cc3,
-0x00a779e0,0x00b503d5,0x00d8c522,0x00b42e57,0x00ad4eaf,0x009e4ca4,0x0092ff70,0x0085fe55,0x00742de7,0x0072e711,0x006a7a01,0x005d1519,0x00582a18,0x00548e47,0x00579a6b,0x005b0b1c,0x005cc0e7,0x005b7497,0x0053de30,0x004a779a,0x002ea606,0x0029ff36,0x002b7907,0x002b6249,0x00231526,
-0xfffca8f5,0x0038d99b,0x003521d8,0x00196345,0x00235264,0x001974b8,0xfffe6a56,0x000264c3,0x0005ab35,0x000a3c46,0x002e7f16,0x00404582,0x002c054c,0x002b98c5,0x0027674d,0x002188a3,0x00250749,0x00227064,0x001687ef,0x001f1f04,0x0024ac4c,0x0022a699,0x003eb3c7,0x003db002,0x00234d4c,
-0x0014d75f,0x000f1719,0x00241443,0x0011cd9e,0x00138bd0,0x00267ffb,0x0026db68,0x003385da,0x003f786f,0x0052c214,0x00468fd8,0xffefbd40,0x00527943,0x006ba773,0x003f6b2a,0x005a4b6f,0x00409ea6,0xfff991c5,0x00039d8e,0x000f072a,0x001a867f,0x0060f34c,0x00782193,0x0071380a,0x004a109e,
-0x00231c47,0x000b1903,0x001390a2,0x000e96f3,0xfffbdd6b,0x0011f2bc,0x0021607d,0x00175245,0x00679faa,0x00606916,0x001c4a3e,0x00024ddb,0x0002bf59,0x00516867,0x0031f924,0x0036c275,0x004b58d3,0x00352e70,0x001ebfcb,0x0011b051,0x004548cb,0x003a240e,0xffa3cbf1,0x00979455,0x00ab7795,
-0x003fd3f5,0x00826c8d,0x0048faa8,0xffaf6035,0xffd11a6f,0xffe6f79c,0x00013fa4,0x00a4265a,0x00cdbcbc,0x00bee087,0x006f8798,0x003f57fe,0xfffd332a,0x000a275a,0xfff709be,0xffc202b0,0xffe65760,0x0005dc18,0xffe78e48,0x00a622c4,0x009ecac6,0xfff1640c,0xffb1acf3,0xff856819,0x0018ea33,
-0xffd7b4c6,0xffdd8018,0x00185171,0x00274cd6,0x000d8439,0x00324cfd,0x00b51ab9,0x00543a1e,0xff3dbe75,0x00adf887,0x011d149c,0x00a711ae,0x00f31642,0x0058764b,0xff964334,0xffaa0a64,0x000d85d6,0x006bf05b,0x012c58ee,0x015cbb66,0x0105a54c,0x00b21099,0x003e0f48,0xffca1ed0,0xffcb820e,
-0xffc0c756,0xff8b13db,0xffd97809,0xfffaa440,0xffae5c1c,0x00e779c4,0x00b99189,0xffaff898,0xff8bcfb5,0xffb1c1e7,0x00b602d7,0x0096911e,0x00967ed0,0x008f36ad,0x0039000f,0xffa19fd9,0xfe20a444,0xfd920380,0xfecb0ef8,0x0097b387,0x00a93bb6,0x007fe805,0x00058ee6,0xff7e0419,0xff4b4a3d,
-0xffbd6561,0xffbacb7d,0x000ece2c,0x00765513,0x01090b0c,0x0127ed36,0x00b6b26b,0x00bd9d21,0x00a27955,0x00d6bc34,0x005c8ec9,0xfff5474a,0xffc04ff0,0xff710745,0xff76e00f,0xfff4d6da,0x007633a6,0x00f0e387,0x01bd19da,0xffa85c22,0xfe659cdc,0xfe6aac5a,0xfda8efbc,0xfdde2350,0xfec37d32,
-0xffbf4e31,0xff092e1c,0x000bccde,0x009f20bf,0x00392bff,0xff33a82a,0xfee6a1c8,0xff0c9791,0xffa1e02e,0xff7cf014,0xff8c2627,0xff7852ae,0x001a20df,0x002c35ec,0xfff184e3,0xffd19da2,0xfff38bb8,0x00763ea1,0x00bacae1,0x00a8b768,0x001743f2,0xffa8d4d1,0xff5b7e36,0xff24b105,0xff332e0e,
-0xff248d0d,0xff46a006,0xfef6de76,0xff35187d,0x0061eb8f,0x004768b1,0x00b02d83,0x00ca6113,0x013e511e,0x00ffea96,0x002fc227,0xfedd222a,0xfd3a0610,0xfb6168a8,0xfc55eb9c,0xfd8f1698,0xfe9e7976,0xff5732f7,0xffc780c4,0xffa92631,0xffebdabf,0x00308c6b,0xffe4097a,0x000ae777,0xfff6ad8c,
-0xffe6559f,0x0012907d,0xffb96398,0xff676943,0x0083f08e,0x00c58462,0x000c4d5b,0xffabb4da,0xff563a71,0xff3cd94b,0xfecd8b42,0xfe7163a6,0xfe4d517a,0xfe90502e,0xff266c66,0x00364f82,0xff3cce0a,0xfe60d874,0xfdbd1590,0xfdf6fc3c,0xfee917d0,0xff95a202,0xfe9ace88,0x018559be,0x03509bd8,
-0x04d042b0,0x03ff2634,0x03547448,0x01dde2e8,0x00f3feaf,0x001bef03,0x004e6850,0x000c210b,0xffdb20e9,0x000fa277,0xfffcd669,0xffbfb10c,0xffe6afc7,0xfffe5404,0xffb3d999,0x00cda13c,0x00e22662,0xff9c4e8d,0xffef1dbe,0xffc9e0b3,0xffbd19f5,0xff2788c7,0xfedf7276,0xfe486778,0xfefb11f8,
-0xfeecf454,0xfe606c9c,0xfe0b28aa,0xfe488b54,0xfebbf220,0xfd68e400,0xfcdc31b8,0xfd8125e4,0xff748f36,0x046e8188,0x032ee0a0,0x02711028,0x022a63e4,0x01cef720,0x01b2f33e,0x0190c1bc,0x016c7998,0x01365a50,0x00d65558,0x004cdb57,0x0034a6ce,0x00534382,0x00ddbf9f,0x004e42dd,0x0023c2b9,
-0x000f4370,0x001b66c1,0xffc4d49f,0xfee36450,0xfe851dde,0xfe1cdd94,0xfdf5eb60,0xfe6539d4,0xfe978224,0xfe01200e,0xff448d4e,0xff298944,0xfd922f20,0xfd88a3e8,0xfd7c9614,0xfdf0f9a8,0x00a36cfd,0x02e4a8d0,0x046ffe48,0x04aa49c0,0x00fbb5ac,0x00fd5a6b,0x00fcd5c7,0x00fc5569,0x00c1ae57,
-0x00d18fec,0x00dc7572,0x00cb9038,0x010fb17c,0x011d7ed8,0x00f14250,0x00d2ed24,0x00ab3813,0x00a0969c,0x00c2f557,0x00e24398,0x00db4ceb,0x00b419c6,0x0050babf,0xffd24382,0xff9f0dae,0xff7f61df,0xff6c0eaf,0xfe8dfa4a,0xfe59f5fa,0xfeddae76,0xff6b2aaf,0x000001ab,0x0098850a,0x019f54c8,
-0x025b14b0,0x02b4fc40,0x02b04a1c,0x02288644,0x01755790,0x01277eca,0x011ffa04,0x0133adfa,0x0131e57a,0x013a19ba,0x0153e910,0x0123dc14,0x00ee21b4,0x00bd4de5,0x00de6a4d,0x00e63ca1,0x011d841a,0x01011bd2,0x010dfdb4,0x00e9464d,0x00fa3a9b,0x00e90790,0x00edec06,0x00fad5c5,0x010b2652,
-0x014e2214,0x01628f60,0x015d9af6,0x017fc324,0x01bdab32,0x01f9928e,0x02279c5c,0x021f83b8,0x0220c1c0,0x021f193c,0x01b19134,0x015b5824,0x012c84a8,0x0103069a,0x00f77fef,0x00e09d9f,0x0110f986,0x0084319f,0x008780a5,0x005c637d,0x007c0d76,0x0069edd3,0x0067590a,0x0079a1b8,0x007133c4,
-0x008ad897,0x008ad1e5,0x0096cde0,0x009e7e0c,0x00b261df,0x00c5d45d,0x00f09b46,0x0115f882,0x01414ab6,0x0169a800,0x019b79ea,0x01921248,0x0177157c,0x017254e8,0x01536bd6,0x01454b02,0x012bd58c,0x01176d40,0x00fcf110,0x00e1bfd9,0x00cffe3c,0x00c197b0,0x00b4b1d8,0x009283eb,0x0092763d,
-0x0089c0a3,0x00825889,0x007ea6d7,0x006e1628,0x0073c255,0x004cf505,0x00416df5,0x00350eda,0x00604f7a,0x004c04e9,0x003ef886,0x00410b81,0x0048baaf,0x004c2ce3,0x0055937b,0x0058c9a4,0x00597058,0x00721762,0x00828b75,0x0086e8a9,0x008f4b8c,0x009e3cba,0x00a12788,0x00a4032c,0x00a7d3f7,
-0x00ae5ecf,0x00ae5537,0x00b0e6e4,0x00b7eae2,0x00a72094,0x0098c1ca,0x0087626b,0x007ac7c4,0x006f14e1,0x0063c0d4,0x006cabc5,0x0071210e,0x0075caa3,0x0073b1f5,0x006a7205,0x002cf820,0x002137b1,0x0011cad6,0x00288d4d,0x002b97d5,0x000fa052,0x0037464c,0x003a8dae,0x002ae2e9,0x00388455,
-0x00315ada,0x0019fd19,0x001e72eb,0x00201d51,0x001e68b5,0x00327b99,0x003c9095,0x004b95a8,0x00392962,0x002ee515,0x00233f4a,0x0025150a,0x00230a1d,0x001bf5b5,0x0020ef51,0x0026fe4f,0x00321d1a,0x0039ae2b,0x002fdace,0x0003b806,0x000d77e8,0x0010e4ee,0x0029d424,0x00209652,0x00272ae8,
-0x00357308,0x00268f49,0x002f871a,0x001e7535,0x005bfcd2,0x004bd4cb,0xfffae7d1,0x004c605e,0x005ca372,0x0038e21c,0x005355dc,0x00429662,0x000c6b39,0x000ac3fc,0x000fb4da,0x00196dd2,0x0052de35,0x006a393e,0x007f6d27,0x0053b7b1,0x0030a0c1,0x00194452,0x001c88e6,0x00139296,0x0007f211,
-0x000a063f,0x00201b5c,0x0045f26e,0x00601d7e,0x004106c6,0xffda713b,0xffe9ae8f,0xfffbacad,0x004dc9bd,0x0031488f,0x003aa127,0x004df97c,0x00390b0d,0x000acad9,0xffd571a1,0x00277196,0x00388721,0xff9c8651,0x008aeff8,0x00970482,0x002a5a7e,0x0075cdc0,0x0051e21f,0xffceb33d,0xffe2bcd2,
-0xffeabb41,0xfffed75d,0x0079c166,0x00b34a27,0x00dcb202,0x00839569,0x00420319,0x0007baf2,0x001701b8,0x0001bf27,0xffdf8c1f,0xffebf19d,0x0016b2ad,0x0056617c,0x0089cec7,0x004e81e3,0xff6a0732,0xff91375b,0xff9cc1fe,0x003b86d3,0x0018844c,0x003f73ad,0x005cc9ce,0x001ffd2c,0x0054201a,
-0x00346510,0x00e70ebb,0x00aa88eb,0xff548d5a,0x007d8e9d,0x00fc8806,0x008ace24,0x00ec58a0,0x006f8048,0xff9535b2,0xffa4360a,0xfff8cde4,0x0040ffa4,0x00fe86ba,0x0129e59a,0x011e7568,0x00b1d67e,0x003d86fc,0xffe42ef9,0xffed8bfb,0xffd35026,0xffa9fd52,0xffbdd3d3,0x0004d88b,0x00737bd1,
-0x00b90c75,0x003a5a25,0xff0d5ee3,0xff5afe7c,0xffb90e5e,0x00c1fbad,0x007aa5de,0x00aace5f,0x00871360,0x00517c7b,0xff9f4320,0xfeb88a3e,0xfd42e3ec,0xfe610c70,0x013770a6,0x00badccf,0x006b6a6f,0x0012183d,0xff8e91ed,0xff59b440,0xffa31ab9,0xffdba5e1,0x002382ba,0x004090cc,0x00ba7918,
-0x01035af0,0x0146acc8,0x00d47ef6,0x00a6e639,0x00c9406d,0x0053cacf,0x0012b66e,0xffe76f57,0xff3c477f,0xff560b9a,0x003673a0,0x007b6137,0x007728b7,0x00bd6000,0xfea6938e,0xfdeca1e0,0xfed2998e,0xfe708fea,0xfeba02d4,0xff4d982d,0x0001cf54,0xff191bbe,0xffb1bff3,0x00d4e097,0x0054c9f5,
-0xfea0bd2e,0xfe4d842a,0xfe7a0d98,0xff465ea0,0xff6fd54e,0xffa40dfe,0xff82806d,0x0003662d,0x000a6ac6,0xffd3fdce,0xffdca4cc,0xffd52e30,0xffcd2ebc,0x00908992,0x00af6350,0x00128753,0xffbbcf6b,0xff676fdd,0xff33a207,0xff8931ec,0xff71775b,0xff15dd2b,0xffc6313a,0x0028a461,0x00c69f81,
-0x0053093f,0x0022aab3,0xfff095c1,0x00876114,0x0073c684,0xffe83d69,0xff3317af,0x006c279e,0xfd76a044,0xfcf11d50,0xfdb9e79c,0xfe5f555e,0xff707fe2,0x001397fd,0xffce4468,0xffe0f809,0x0022be29,0xffecc5f6,0x00120fa5,0x00186ac3,0xfffabaff,0x0055fded,0xffe40c07,0xff30c386,0x009b4e11,
-0x00c9d5e9,0xffcfcfc9,0xff95006b,0xff2d557b,0xfed856ca,0xfea1780c,0xfeb1b616,0xfec2a706,0xff6af8f9,0xff28bb36,0xfe713c7e,0xfe725b6a,0xfe3ab004,0xfd9184f0,0xfe5d67e6,0xff42a4c5,0xffbe6b86,0x00f2a458,0xfe5611ac,0x00c8d4f7,0x03258340,0x02f5326c,0x026d9d9c,0x0104607c,0x003a1b46,
-0xffcbcd7c,0x0018ee92,0xffe7d9fc,0xffc1382e,0xffe8b839,0xffdc7831,0xff8a00b0,0xffb35669,0xffc38b79,0xff6c2fbf,0x00c0e045,0x00c7c324,0xffad247f,0xff80fa2d,0xff3b7d0c,0xff88500e,0xff40ce07,0xff062591,0xfe65bb8a,0xfee9a440,0xff1c9b64,0xff0fc347,0xff3a7d37,0xff08ca07,0xfdd00518,
-0xfecbb19c,0xfdf4b820,0xfb5a32b8,0xfceb2e78,0x04c5e1c0,0x0460d5f8,0x03558b7c,0x02b86700,0x022330f4,0x020de890,0x01e3c4d8,0x017ba648,0x01121c32,0x00a135bd,0x000bd5d0,0xfffff951,0x003ac82f,0x00bba986,0x006a9405,0x00385f4a,0xffc4ca7e,0xffcf1cd1,0xff8ca534,0xff24654d,0xff16ff0b,
-0xfeaaa200,0xfe7dbd36,0xfe8b2cca,0xfef1a1cc,0xffa7c4b1,0xffea9268,0xffb88256,0xff259917,0xfe36a668,0xfd74b024,0xfc9909c4,0xfeabb504,0x00e11e3a,0x02b40560,0x04433210,0x01ca6738,0x0146dfce,0x012b82d8,0x0137d9d6,0x00ff7054,0x010f6ed6,0x0124e28a,0x01235e66,0x0140e292,0x013b5560,
-0x01193fa8,0x01167394,0x00da4a34,0x006b917d,0x00493696,0x0049e652,0x005f714d,0x00879cf7,0x00483bb5,0xffc42777,0xff896778,0xff512bf6,0xff369932,0xfe7fb61c,0xfe1a5232,0xfdc8fba0,0xfda46998,0xfe07590c,0xff06a588,0x002ea905,0x0198043c,0x02d59654,0x03b1c7c4,0x03b3d97c,0x0305da08,
-0x02544c74,0x016e999e,0x014ba5f6,0x012f39ca,0x0129bdaa,0x01307008,0x00fbfb3a,0x00bb22d6,0x00810a84,0x008dca24,0x0096cf72,0x00af686b,0x00a5aa89,0x00bac124,0x00a8d24a,0x00d3014e,0x00d13cbf,0x00dd4848,0x01016226,0x0144afc2,0x016afbd8,0x015d7d46,0x015cde04,0x015cd8cc,0x01895fd4,
-0x01c0008e,0x01ee2e12,0x0230443c,0x026afc20,0x029a5558,0x024ec5a0,0x020fe388,0x01f72486,0x01a57384,0x017e6f70,0x0160d5c8,0x016dcc08,0x00db7ce8,0x00d7f26c,0x009f5363,0x00d0d5ce,0x00b9d087,0x00b2036d,0x00ce79f7,0x00cc1815,0x00e8be2e,0x00dcfea5,0x00dfb1a3,0x00e17b9a,0x00e95a1d,
-0x00ed10ff,0x00eba611,0x00e2f400,0x00fa6e43,0x00fd9539,0x011109c0,0x00c143eb,0x00cb86bd,0x00ee995a,0x00fbaf32,0x01121034,0x0118886a,0x012262f4,0x01087b6c,0x00f609e2,0x00f52f56,0x01010474,0x011494bc,0x0122fa80,0x011d41a8,0x0110fd8e,0x00fe70d4,0x00e88118,0x00e7df3a,0x00ec5309,
-0x00b4d951,0x009601ac,0x0063ab00,0x00ce7739,0x009d8e6a,0x006c5b53,0x006bad08,0x0071bcca,0x00753045,0x007a3695,0x007b575b,0x007bd358,0x00a68981,0x00c7f39d,0x0089b54d,0x009ffef9,0x00b28601,0x00c14388,0x00dd2a43,0x00e5279e,0x00f479cb,0x00ff32e5,0x010de4be,0x0123f00a,0x011bd096,
-0x0117e5a8,0x010e0c84,0x0106e33a,0x00fc8917,0x00f5029c,0x00f20193,0x00f14f68,0x00f13b27,0x00efc71b,0x0107494c,0x002721c1,0x001b63bf,0x000271c5,0x001a3cd6,0x00216618,0x0012d71e,0x002ff127,0x0032bd0e,0x00251da1,0x00322fd2,0x002f1b98,0x0022f9ea,0x001f07d0,0x001e6f4d,0x001e914b,
-0x002c1b36,0x0034f5f6,0x004dfe2e,0x003b3c08,0x0033b307,0x00292da0,0x002729a0,0x0024331c,0x001f8b8f,0x001d0cb7,0x00214c29,0x003b7dba,0x00296963,0x001cd2a1,0xfff442aa,0x000a39f2,0x001138cd,0x00232f3b,0x0022ff62,0x00286bba,0x0032cda2,0x0023ad44,0x000d62d5,0xfff8455e,0x0043f5a3,
-0x00437c47,0x001643fb,0x0040f42c,0x0045fb69,0x002df973,0x0045df34,0x003d9ca6,0x001e9c4d,0x000c0f91,0x000d0148,0x001d73c1,0x0043964d,0x005bff51,0x00845156,0x006125a5,0x0046087d,0x0033ddf2,0x0030dc56,0x0023649f,0x00195e35,0x000c6d3d,0x002034d4,0x00656f75,0x002f87ec,0xfffbc982,
-0xffa49307,0xffd2b27d,0xfffa5504,0x003cf12f,0x003e766a,0x0043265f,0x004824ea,0x00214d9e,0x0004144d,0xffbc1c62,0x000aa7f7,0x001bc96e,0xffca0163,0x00755dda,0x0075c225,0x00190805,0x005e14c4,0x004fa86e,0x00015c78,0xfff26509,0xffea9182,0x000e00bb,0x005aaa95,0x009f4dcc,0x00e7783f,
-0x009fe432,0x006309b0,0x0033ea42,0x003f7574,0x002305e6,0x000e363e,0xfffd33ca,0x001ef654,0x00a9e277,0x00492370,0xfffcaf74,0xff2e297c,0xff88b8db,0xffbc4ef5,0x002a8322,0x00488883,0x00551320,0x008384b9,0x0034949d,0xffffedac,0xfff37f22,0x00f00d18,0x00c32e6d,0xffb99847,0x0070a95b,
-0x00cdc82e,0x0065febd,0x00cf8e6f,0x007be5a9,0xffb1745c,0xff9b974a,0xffe1c61f,0x003e70d5,0x00d7fd2f,0x0108bbcc,0x013876d8,0x00c576d3,0x00727c78,0x002ed47e,0x003f241c,0x00147e43,0xffed5893,0xffd89c5f,0x00287420,0x010de300,0x00530990,0xff79ff97,0xfe7f3332,0xff2b05cf,0xffd5d319,
-0x0098681f,0x00a3d906,0x00bcb867,0x00ba3111,0x005961cd,0xffbd7b97,0xff345b53,0xfd244048,0xfdfc230c,0x01557f4c,0x00b16bfd,0x0057e03f,0x000b5ac5,0xffa6f97f,0xff767c2d,0xff947276,0xfff82108,0x002ffe4e,0x0010090b,0x00749a51,0x00d8e9ef,0x018587aa,0x00ceb233,0x0083bdb8,0x0062fbcc,
-0x00615118,0x005f50d1,0x0035def6,0xfff5d950,0x000793de,0x0078df59,0x00a5e4d7,0x00c36bf3,0x00eadb7a,0xfe3b756a,0xfdb97894,0xff2f71e8,0xff1a68e6,0xff5f64b8,0xff774b6f,0xfffc8d59,0xffb82778,0xffca8994,0x00f8ddd8,0x008843e7,0xfea156b2,0xfe72e1b8,0xfeab5b1a,0xff25dcb0,0xff61eb03,
-0xffae505f,0xff984811,0xffe94423,0x00021903,0xffed4fc5,0x00000d19,0xffd561b9,0xff8c9592,0x00814555,0x00b5e75a,0x003200b4,0xfffa3a49,0xffa05bfb,0xff7d66ad,0xff7be6fa,0xff81ab6d,0xff47656f,0x001d8b8c,0xffffc835,0xff9daee4,0x00038a5b,0xffdf278c,0xff1a900d,0x0005bf4b,0xffc14ba9,
-0xfe83c4e0,0xff4f8a2d,0x012766a6,0xff8ce102,0xfe6bb6e0,0xfe833ce8,0xfed7678e,0xff7a8596,0x000722ad,0xffc766a0,0xffb8aa71,0xffffbebb,0x0009fca1,0xfffc06f3,0x00026657,0x0003a2bf,0x0059821e,0xffe9563c,0xff54d1aa,0x006c211e,0x0077005a,0xffb15de2,0xff897786,0xff38392b,0xff1aa376,
-0xfefa8346,0xff0a7380,0xff016e08,0xffc2cef6,0xff9c6473,0xfe8d65a4,0xfe77f46a,0xfe712b10,0xfdff7b54,0xff5b36ab,0x00148594,0x0077d397,0x017b8364,0xfb0c6500,0xfe89ff78,0x00e427e9,0x014025a0,0x01269714,0xfffdebdb,0xff7457a0,0xff3920c4,0xffbcf119,0xffab52d5,0xff906959,0xffda9e23,
-0xffeb8220,0xff812de1,0xff9cc2c2,0xffa36107,0xff8940af,0x006a6c16,0x007d1310,0x0018ded6,0xffa4b4ea,0xff4ca627,0xff6fab61,0xff70781a,0xff758d9c,0xff4192fa,0xff69c314,0xff70fce3,0xff74f425,0xff71462d,0xff255f72,0xfe26662a,0xff1402f1,0xfe09cc02,0xfb5d0488,0xfa96e450,0x0473c9c0,
-0x0517d358,0x041a9a70,0x03608144,0x0299eee0,0x02ac29bc,0x0266cc50,0x01937044,0x01033abe,0x008cbf97,0x00209ed2,0x0001e95e,0x001b9845,0x005b93ab,0x004396d3,0x0015a107,0xffa326ac,0xffb2d328,0xff8c5cd8,0xff702fea,0xff70b957,0xff6cb759,0xff91219a,0xff6ae533,0xffbe2a02,0x0045333e,
-0xff76b010,0xfef9ad6a,0xff18fe87,0xfea0f90c,0xfe05c166,0xfcfcfe7c,0xfd45ec94,0xfecc9ad0,0x0168b9fc,0x032f900c,0x02382af8,0x01aa44e8,0x018c53aa,0x01961e7e,0x01586786,0x016f9e3e,0x0166d2f8,0x01295380,0x01476854,0x014494f0,0x0142cee2,0x01287436,0x00d1ed44,0x0036183f,0xffee0610,
-0xffe7a234,0x001a425c,0x006a831a,0x0051a62c,0xffda1513,0xff6d0a8a,0xff00fd6a,0xfeaf9e12,0xfe84071c,0xfe26b292,0xfda3d5bc,0xfd21897c,0xfd45a918,0xfe24b960,0xfedd5942,0x0032cd55,0x01dc7c6e,0x034803b8,0x03c5f1dc,0x0377bf6c,0x02c31c74,0x02070224,0x01b6fb5c,0x0169a22c,0x013ef9dc,
-0x010aa248,0x00e6a3a1,0x00b807fe,0x008f145a,0x0089dfbf,0x00970ba5,0x008cc2a0,0x00a6834f,0x00a8a816,0x00cc07dd,0x00ccdeca,0x00c9e978,0x00bca628,0x00b3a28d,0x00e48c93,0x00b1866d,0x00924acb,0x00a4db75,0x008e003f,0x00cc55aa,0x0101c97a,0x013c1cea,0x01c9563a,0x023aafa4,0x029d13b4,
-0x02b650ac,0x02cf4088,0x02ef791c,0x0282429c,0x02505404,0x02444f74,0x022863e4,0x016b5f6e,0x015cfcb0,0x00f58f2d,0x014bdaf8,0x0126d756,0x012cae5e,0x0144f202,0x013de0ea,0x014ab662,0x01352700,0x01222216,0x01214e3c,0x0113362c,0x010353fe,0x00e97072,0x00da8247,0x00d9bf44,0x00c55096,
-0x00a9a6c3,0x008ddc58,0x00bb71fd,0x00e794f8,0x010f4c9e,0x01388b98,0x015f3ce6,0x01838eaa,0x017f190e,0x01806bc0,0x018e3a2e,0x01a5bb00,0x01c06c08,0x01ecea08,0x01da0f5e,0x01c47044,0x01a22f0c,0x017d299a,0x0164bc82,0x016c30b4,0x01337160,0x01165420,0x00e48f69,0x0148538c,0x011a4456,
-0x00e8a337,0x00e3313f,0x00e518c8,0x00e8eec7,0x00e53d89,0x00e70946,0x00e9060f,0x010913fe,0x011eab60,0x00dc1b9c,0x00fa0524,0x010520f6,0x0118da3c,0x0130530c,0x013d0b1e,0x014f4606,0x015c5d1c,0x0169b1e6,0x017d975c,0x017db898,0x018322a0,0x0184ecec,0x0187d812,0x01877912,0x018ad2d0,
-0x017c65cc,0x0176da40,0x0172ad12,0x0170cf54,0x01809924,0x002872e8,0x001733bf,0x0007c5f6,0x00160567,0x001c6f60,0x00186553,0x00294484,0x0024fa43,0x001b514a,0x0024c6e3,0x00251600,0x0024b98b,0x00188f45,0x001732e1,0x0018d27f,0x0024d039,0x002fbf68,0x004302a5,0x00386bee,0x00371a66,
-0x00331a27,0x002f14f2,0x002c1de4,0x0027f40e,0x00224623,0x0024dd85,0x003e7438,0x00218a9f,0x00164060,0x00059690,0x0011c4a8,0x0019ae21,0x0026a10e,0x002f0d80,0x002d5c84,0x001ee279,0x001d32c3,0xfff83db8,0xffeba1a1,0x001f0251,0x00330666,0x0027aee8,0x002b669d,0x002bfea5,0x0027dead,
-0x003a0479,0x0039b605,0x00304cca,0x00159578,0x0012c27b,0x001f3954,0x003d5a70,0x0054a524,0x00790b74,0x0068d562,0x005501bb,0x0049ce18,0x0049ec99,0x003b310e,0x0030ab04,0x001edda6,0x0021c487,0x005661b3,0x00043e5a,0xffdcecea,0xffc4f0a2,0xffd6ed83,0xfff7643d,0x001fefba,0x003d3bd7,
-0x003848dd,0x000dd7d6,0x00032518,0xffc875e9,0xff815895,0xfff08b4a,0x001647d4,0x0009b15b,0x0050110c,0x004271c6,0x0015098d,0x00425ce2,0x0049e5c1,0x002be5ef,0x000d53b2,0xfff6b49c,0x0014c13c,0x004e2da8,0x008d4dd1,0x00d7b84a,0x00b23d32,0x008a775f,0x005d9b3f,0x006841b1,0x004bc248,
-0x00377800,0x0015a7fe,0x00224c3a,0x009c47eb,0x0001e161,0xffc4d6dd,0xff743041,0xffaa7816,0xffe290b6,0x0027f150,0x007a7d50,0x0062176c,0x00061510,0xfff83ce4,0xff62c42a,0xff4063c2,0x003c7ec1,0x00662f3b,0xffede5c9,0x003f1f76,0x007cfc9b,0x00382f7c,0x009f8361,0x0077827c,0xffe08946,
-0xffa9cefe,0xffdae4a9,0x003750b1,0x00b83ef0,0x00f6aadf,0x013e3df0,0x00d4454b,0x009b9d31,0x006de3ed,0x008774e2,0x0057c4ea,0x00352e9a,0x00058f53,0x00214718,0x00b33d23,0xffc27228,0xff0ef0c8,0xfec8d6a8,0xff30ec2f,0xffc7783d,0x002762d1,0x008cb5eb,0x0069ef12,0xffe2fbb7,0xffc0a3f4,
-0xffe0a716,0xffba1de3,0xfdc3530c,0xfe3261ec,0x01199d32,0x00ae8e7e,0x006d3999,0x00066424,0xffd7fc8b,0xffafa304,0xff9d0ba5,0x000f588b,0x00289a39,0xfff70236,0x005a4e54,0x00bdb7bd,0x01625c40,0x00e4a8d6,0x0097956c,0x004a53c7,0x0084c706,0x00799dcf,0x0050d1b7,0x003c3963,0x003d3b8a,
-0x008a40ed,0x0096c9a4,0x00dddc9b,0x0196f68e,0xff031ddc,0xfe8f2408,0xffcb42db,0x0042bfc6,0x007689f0,0x00078a8b,0xfff6eb76,0xfffd7db8,0x001a2795,0x00f8e898,0x009d6c44,0xff1bd4ad,0xfecbda4e,0xfefbac08,0xff7a8d5e,0xff80817c,0xffb74a3f,0xffbb1c34,0xffe6d8ee,0x0013ba93,0x0021732a,
-0x00371236,0xfffd1ff7,0xffab95ed,0x00549f63,0x007f1805,0x00690743,0x003c0e72,0xffe2d37c,0xffc0681c,0xff8ea310,0xffb7142b,0xfffb0353,0xff9cd89a,0xff50f593,0xff143eec,0xfeff9cf0,0xff1b1bfb,0xfed1302c,0xff74eaf3,0xff2f376a,0xfe06bb84,0xff65b5b2,0x0112cbc8,0x0064d36d,0xff36dcea,
-0xfef3112e,0xff15c6ec,0xff5f5185,0xffcbf7fc,0xff70161a,0xff99857a,0xfff5c8a1,0x001a91bc,0xfffa564d,0xfff7de04,0x00106ff2,0x00317951,0xffe48239,0xffa0b454,0x00436a97,0x0041631d,0xfff6ad09,0xffac97db,0xff740a52,0xffb849ce,0xff72da52,0xff7a6bd2,0xffc1dfad,0xff9a040d,0xff96be34,
-0xff464dfc,0xfebd2830,0xfeadeaae,0xfedd7ccc,0x00095e9a,0x008e4afa,0x00c02fe6,0x012bcf6c,0xf9af27b8,0xfcb4805c,0xfea6dc38,0xff581a83,0xffafb85c,0xfef7337a,0xfed9b1cc,0xfece0776,0xff64b731,0xff7ed4bf,0xff8d74ab,0xffef3b27,0x000b187f,0xffc49066,0xffc70356,0xffb5ae19,0xffa530e8,
-0xfff035f4,0x001f08ec,0x008f1a33,0x000821be,0xffb41791,0xff9fdac6,0xff7f01e7,0xffab5b7c,0xffff787c,0xffc47197,0xff924a63,0xff91af6a,0xff2a111c,0xff1182c7,0xff60cbc5,0xfea8dd74,0xfdb80570,0xfcd7c99c,0xfa0eded8,0x03881a38,0x04904d30,0x0459edf8,0x03baf8c0,0x02eb720c,0x0330dfb0,
-0x02afd2d0,0x016d9192,0x00f1282f,0x00794b4e,0x00562219,0x0008ab8f,0xffeea1ff,0xfff696a6,0x000d7df5,0x00014d81,0xffa255b6,0x0021a521,0x00044089,0xffccf85a,0xff9f158c,0xffa8432a,0xffdaec2d,0xfff7689c,0xffbed666,0xff28694c,0xfeb5260a,0xfe8fcfbc,0xfec1a846,0xfec37f22,0xfe8abeba,
-0xfe31d59a,0xfcefa9ac,0xfd7f3794,0xffcf96d5,0x01d9573a,0x024b0ba0,0x01f0dff8,0x01e567b8,0x01d41c04,0x018d9b58,0x01971928,0x017edb90,0x013cccc8,0x01618f5a,0x015cd404,0x015c1428,0x0123279c,0x00d22302,0x00708d69,0x000cff75,0xfff70d74,0xfffd45f8,0x002be942,0x00248a78,0xffc26638,
-0xff4c571f,0xfef250a8,0xfe9878b0,0xfe6765ca,0xfe2d7bcc,0xfe4c5518,0xfdf5d3cc,0xfdde1bb8,0xfe2173c6,0xfe1e4ddc,0xfe979a20,0xff9d8791,0x018d2152,0x029abb94,0x02abd4d0,0x02827348,0x027d8ff0,0x020cc7a0,0x01b97712,0x018a3588,0x013f56f8,0x011edf4c,0x0103bd68,0x00d7ffe2,0x00c3e755,
-0x00c92ab6,0x00aaaba9,0x00d1046f,0x00d38738,0x010356da,0x00e6078c,0x00ce1063,0x00acd253,0x00649828,0x0045dd50,0xffed3d5f,0xffe0d641,0xffef1e54,0xffe987cf,0x003a070e,0x0072e6b7,0x00a94f7f,0x00f865d1,0x01479ad2,0x018e49f8,0x022c36bc,0x02d2fdac,0x035f2f44,0x03250920,0x030c4070,
-0x0330d0d4,0x02d06854,0x0202c184,0x020a8084,0x01a45bbc,0x01df293a,0x01b25224,0x01b11e7a,0x01afbe92,0x01a04c70,0x019ef894,0x01881952,0x016bcd72,0x01613cbe,0x01454a30,0x012545b8,0x010a9e46,0x01026d12,0x00fe3ed3,0x00f11e3e,0x00d0fa5b,0x00d98c72,0x010347a8,0x011db340,0x013477f6,
-0x014be14e,0x0167c7da,0x01861110,0x01a03478,0x01b52a1e,0x01bdeae4,0x01d28e9e,0x01d69d6e,0x020086b8,0x0200e470,0x0208ea4c,0x02050740,0x01fb91b8,0x01c129a2,0x01d3fb20,0x01a3827e,0x01898c5e,0x01608fac,0x01a1fb12,0x017c5ecc,0x015744ca,0x014d2fb6,0x0146ba7c,0x01449c7c,0x0139956a,
-0x0135d03c,0x0132efec,0x014eb054,0x015bafe4,0x0122129c,0x013badb8,0x0143d6ee,0x01544e50,0x015f39d0,0x016c51c8,0x017d9836,0x01891226,0x01930842,0x019d1116,0x01a1c896,0x01ac316e,0x01bb3d0e,0x01c22836,0x01c9b7a2,0x01ce0b78,0x01c6f5e4,0x01c2b0ee,0x01be216a,0x01c4e260,0x01c561b6,
-0x002feaeb,0x00175277,0x001367c4,0x001f57f3,0x00276778,0x002b865e,0x002eac08,0x0024ec9d,0x0021990d,0x00254fa3,0x002883b4,0x0032711c,0x00225044,0x0020060e,0x001e5b0c,0x002ac0aa,0x00343080,0x0040acbf,0x004032d8,0x0040d6ed,0x003c3d2b,0x00396e00,0x003686bd,0x00325fc8,0x002c59f2,
-0x002b5ac7,0x003c017e,0x001bc6d5,0x00115596,0x000ca6f1,0x00165a6b,0x001eb982,0x0025fc63,0x0033186f,0x0032c675,0x001ebb5c,0x001cc715,0x00089069,0x00085d69,0x00180213,0x00389052,0x004ebcba,0x002992c9,0x00204800,0x002fc2e4,0x00353cd5,0x003b1163,0x004b231e,0x0027969c,0x001f5be3,
-0x002145b7,0x003ccabc,0x00537dfb,0x007082df,0x0072f9c7,0x0068d5db,0x005a2685,0x005a1482,0x004bb7e1,0x003eddc6,0x002c4bf0,0x0023af5c,0x0046a3e6,0xffebfd01,0xffd1557b,0xffdced16,0xffed7d71,0x000a9d1d,0x001a22b2,0x0040efde,0x003d55f0,0x00041186,0x000b4573,0xffb911b2,0xff9ddd15,
-0xffe5767e,0x0032470e,0x005ec3a3,0x00394eb7,0x0021854a,0x002a3ff7,0x002fc842,0x00489285,0x0061fb07,0x002bf05d,0x000a9cdc,0x0017929c,0x004c1880,0x008189c1,0x00c2b6fd,0x00c15976,0x00ad8f31,0x007b425a,0x0080c53c,0x00666d76,0x004b22b7,0x00294ff9,0x002323b4,0x0077184b,0xffbc2363,
-0xff8806b2,0xff814675,0xffb40b7c,0xffefbd0e,0x000bc67a,0x0064f03f,0x0060e31b,0xffcdf226,0xffc1bb12,0xffa168be,0xff90480b,0xfff3f5fa,0x00527785,0x005d4453,0x0010a862,0x002f8698,0x00309aab,0x007157cd,0x006b843e,0x00234b2e,0xffd1b052,0xffe6057f,0x00234e2d,0x00914dd5,0x00d7040b,
-0x012c1c8a,0x00ecb455,0x00c96cea,0x0097a67d,0x00aa91cd,0x007b09be,0x004d6cd0,0x0018d467,0x0010e2f2,0x006e45b7,0xff574d10,0xfedf1f4e,0xff0b5998,0xff6c6855,0xfff03e42,0xfff2d667,0x006915e3,0x00591c73,0xff746ed4,0xff8ccf7d,0xff935d68,0xff895f91,0xfe867584,0xfed098f6,0x00e725f8,
-0x00d76c04,0x00b219fc,0x002576e5,0x00087230,0xffe7e992,0xffc1f831,0x00264ad9,0x002752fd,0xfff3a709,0x005b00d1,0x00b49fbf,0x012f0002,0x01123e78,0x00e74c4d,0x00818c07,0x007ff265,0x005a8a4d,0x0039832a,0x0015f49c,0x00216044,0x009a881e,0x00051ce6,0x002543ff,0x01186b54,0xff279709,
-0xfefdcd8a,0x00189a28,0x00b25e88,0x00d6d83c,0x002d531e,0x00107b2b,0x0095a4d3,0x00ca142e,0x006cfd17,0x002cc09a,0xff4a9e51,0xfeff323a,0xff1c9cdb,0xff8abe91,0xffa2452d,0xffd47492,0xffdcedea,0xffe2565c,0x0009412a,0x002a7be4,0x00538264,0x0023155a,0xfff20209,0x0034cd0b,0x00537f89,
-0x00a5dd79,0x005e0a45,0x000a8684,0xffc81412,0xffbdedf7,0xffc968b5,0xffe72bb1,0xff52a20b,0xff2bcc8a,0xff9a6ca6,0xff48eda0,0xff394a22,0xff66036b,0xfea158b6,0xfe3cc004,0xfe19bd12,0xffa74706,0x00af7ad0,0x00d4f02f,0x00012c5f,0xff7ed9e7,0xfed19de6,0xff58deb9,0xffa48214,0xff4518a0,
-0xff8669bd,0xffe3793b,0x00100d58,0x000619f6,0x0012bfe2,0x0025c319,0x002557b7,0x000b6383,0xfffd4a5d,0x0047c33d,0x004ba916,0x008e5c00,0x000f4011,0xffe95547,0x003338f8,0xfffe7e1a,0xfffd1f26,0x001313ef,0xffdc416e,0xff9c6cfd,0xff5b7aa0,0xfef86d48,0xff12aa82,0xffdc4ab8,0x00aaa362,
-0x00fb8c70,0x00ccf632,0x007a8eda,0xfb5ba410,0xfbd32110,0xfd0eb42c,0xfde90340,0xfe73c456,0xfe88d044,0xfed18952,0xfeebb048,0xff4d2d7e,0xff82aaba,0xffc0995e,0xfffe1a64,0x00109d99,0xfff2b696,0xfffc2864,0xffde06d7,0xffb86ca2,0xffbc07fc,0xfffce9f4,0x00c31f8b,0x00322f03,0xffe6bf53,
-0xff98d1d1,0xff99cde1,0xffa61ed7,0xffa4ecb0,0xffb56868,0xffc81ae3,0x00005879,0xff78e306,0xff27a4e6,0xff888678,0xfe7cd5a4,0xfe1a0748,0xfe2ad6ee,0xfc237e4c,0x01a0b37e,0x02e66004,0x03b0b970,0x03690860,0x02db16c8,0x030e3cb0,0x02513644,0x00e9af1a,0x00a7f157,0x00485b42,0x005365c2,
-0x00081887,0xffe27e58,0xffc5d743,0x0006dbcd,0x001315b4,0xffc6561c,0x00516371,0x0049fa48,0x0041e511,0xffeeaf60,0xffbf19b2,0xffe5ab2a,0xffbf84e2,0xff38d930,0xfeb43894,0xff096856,0xff03755d,0xfeb144a2,0xfec59afa,0xfebffdaa,0xfec4c9b4,0xfdb3c164,0xfd5a665c,0xfdecea38,0x00110765,
-0x02737d74,0x0258dfa4,0x024704c4,0x0211cf74,0x01bc0de8,0x01887cee,0x018aa288,0x01b31fc2,0x019a62dc,0x01745c0e,0x0154d0e6,0x0114646a,0x00e97cb5,0x00e012c6,0x00744dbb,0x00350064,0xffe61759,0xffd35865,0xffb03514,0xff76407b,0xff180125,0xfee480b8,0xfebf828c,0xfe7035c6,0xfe7f053e,
-0xfefd1a4e,0xfeb78034,0xfe90d68a,0xfe569294,0xfe138aa6,0xfde3ad64,0xfdf68820,0xff722ee4,0x00d3bf44,0x01c57072,0x02379f3c,0x026d9a50,0x022358e0,0x01f95bf6,0x01d86b42,0x01a5ac2e,0x018edc0c,0x0179027c,0x014e588c,0x012134c4,0x01130e96,0x00e42131,0x00ea14b9,0x00e080c5,0x00e04320,
-0x00cc25e0,0x00ad89b9,0x00950a0c,0x00562202,0x00134fb5,0xffde8fc7,0xffdabbd7,0xffcb87fc,0xffc1ece4,0xffdb0168,0xffdae79a,0xffd61ee6,0xffda6a27,0xffef3bcf,0xfff47b94,0x00f07f85,0x01f109dc,0x02daa954,0x02eac71c,0x02f016d4,0x032b7888,0x02b9995c,0x0212fe28,0x02288270,0x021c1268,
-0x020b0f48,0x01f807fc,0x01ea6360,0x01de325c,0x01ce110a,0x01c80174,0x01b3f604,0x019f8b72,0x018d4992,0x01735138,0x0155ed42,0x01416ea2,0x012b6180,0x011d08e2,0x010f3f12,0x01096d72,0x00e8eeec,0x010492c2,0x011d3b90,0x012fe730,0x0144e28e,0x015df75a,0x01770da8,0x01979940,0x01b404c8,
-0x01bb2016,0x01c3c186,0x01ac8c3a,0x01bc9f74,0x01c0225c,0x01d93c86,0x01e97e4c,0x01ff460a,0x01cace88,0x01d46c1a,0x01ce7488,0x01c6ddb8,0x01b7bce8,0x01bc9f30,0x01b07d0c,0x019a8122,0x01920a0a,0x018a0caa,0x018545e6,0x017d26e2,0x01787b36,0x017590f8,0x017bdf16,0x017717f2,0x01679d42,
-0x01670a2e,0x0162de0e,0x014c82be,0x015dd7aa,0x0168d030,0x017627de,0x01801b76,0x01899f6e,0x019390d0,0x019883ec,0x01a0df1a,0x01b05a3a,0x01b38978,0x01bd3830,0x01c03542,0x01c30d60,0x01c23556,0x01bf535c,0x01c6707a,0x01d909ea,0x003d1d72,0x0025eb15,0x001db9f0,0x002a4f46,0x003325a9,
-0x004556a1,0x0039edd5,0x002cf652,0x002d6a39,0x00293c2f,0x002de37f,0x00415f28,0x002d09d6,0x00288f9f,0x002365c7,0x0033a146,0x003df8c4,0x0040b052,0x0049100a,0x004c7f9c,0x004a07ab,0x004596ea,0x004211b8,0x003d7a05,0x003a2657,0x00369e6d,0x003ebdf5,0x001ee999,0x0015ad39,0x00114072,
-0x00272abf,0x00320bc9,0x0034b88a,0x0041ea30,0x00419c70,0x002dd4e5,0x002d4582,0x0021a429,0x00157fec,0x0026b558,0x004db0cd,0x008b54c2,0x00356c26,0x00222361,0x00430ecb,0x003a552c,0x00439f91,0x00683347,0x00397963,0x002d343c,0x0028bf32,0x0040f1c7,0x0056de65,0x006e4ddf,0x007f3a42,
-0x00788ecf,0x0069ffd5,0x0068f6e1,0x005c5fcd,0x004d329a,0x0043a01f,0x0035f790,0x0042a09d,0xffe5dab8,0xffcc25a2,0xffd29f7a,0x0007bb77,0x002c0fee,0x002b7034,0x004f4fa1,0x0046fc31,0x000fa95b,0x0022f291,0xffede428,0xffd06080,0x00099576,0x004fcb63,0x00d52341,0x0038db11,0x001c15ee,
-0x00549c38,0x002f3d3c,0x004ad6c7,0x00990223,0x0042892b,0x00194614,0x002122bb,0x004d8220,0x007f22b8,0x00b34e22,0x00cde151,0x00c51636,0x00985d46,0x0092c3e0,0x00774c6f,0x005c7a7e,0x004957d0,0x003670f6,0x0060bb32,0xffa1766f,0xff6ec349,0xff68d1b0,0xffe4115e,0x00340c25,0x002861d0,
-0x007a62c5,0x006f9967,0xfffac22f,0x0003772a,0x00132ea3,0xfffedab6,0x0045c5a9,0x00969455,0x012c3a5c,0x00250e5f,0xffff1302,0x00491838,0x0053eba1,0x006b4610,0x00782491,0xfffb75f1,0xffec3c5e,0x0020f38b,0x007985c2,0x00c3c483,0x011353aa,0x010c9ee6,0x00fa95ff,0x00c452e1,0x00d10504,
-0x00a1e7fc,0x0073a9e6,0x00547b73,0x003caaf7,0x00630f82,0xff346806,0xfeca1f74,0xfee7b3ca,0xffb6c645,0x003f19b1,0x0008b12e,0x006dff02,0x0053a923,0xff941c00,0xfff09018,0xff8e6362,0xff366821,0xfee15598,0xff2a9397,0x0067d943,0x00c48de2,0x00dbd63b,0x00741c22,0x002d370c,0xfffafa66,
-0xffd7f270,0x0032c782,0x00352fd6,0x0004036b,0x0062a39a,0x00ad9ae2,0x010561fe,0x013e0a96,0x0129e9de,0x008b70f3,0x00838f7d,0x005b8078,0x002e518e,0x000e713e,0x001d38f5,0x006a5bda,0xfff2f4e1,0xffed1a9d,0x0039fa48,0xff554559,0xff83cfe2,0x00b63486,0x00d89d83,0x00f9fb91,0x009f5a88,
-0x00406ae1,0x00ffe2a1,0x01f4fc66,0x0032e984,0xffb943bb,0xff88f636,0xff506729,0xff4bbb3a,0xff73bc8c,0xffacf5cf,0xffe5b635,0xffedea8e,0xffd363ee,0xfff2f647,0x001fd4f1,0x0059425e,0x003c128a,0x002fffca,0x002b627d,0x00441450,0x00c50039,0x00772e24,0x00445381,0x001ef9bf,0xffd8c16f,
-0xffb43bff,0xff91de3a,0xff6980f3,0xff84b966,0xffee9ea0,0xffd99d11,0xffad7732,0xffef584b,0xfe0e3f4e,0xfda147fc,0xfe76d0ee,0xffa667c4,0xffebc534,0x009a5f12,0x009db368,0x000a0f05,0xfec39128,0xff68717c,0xffb47487,0xff574745,0xff7fd7c5,0xffcaa223,0x000910ac,0x00063cfa,0x0024213f,
-0x00268a54,0x002f3c3b,0x0038d328,0x0046f6a3,0x003fa552,0x0053c86b,0x011c5526,0x006e80fb,0x004270c7,0x0066fa88,0x0072efb1,0x005377e2,0xffd88e59,0xffcc7f91,0xff9ac53a,0xff8f3b36,0xff89f3d3,0xffbb7a6d,0x005858c7,0x0121ff2e,0x011ba0d6,0x004de1f6,0xffec7bcd,0xfe308426,0xfc67452c,
-0xfc7b37f0,0xfd34576c,0xfdd29978,0xfea709ea,0xff313ec9,0xff345d30,0xff642991,0xff9a2918,0xffef79bf,0xffffa790,0x001085f3,0x00052831,0x00153ccc,0xfff4ae88,0xffde69db,0xffbefc34,0xfff2542d,0x00d8e3d6,0x005f9b82,0x001ddaef,0xffbbb29e,0xff89366a,0xff38c4ed,0xff1dc8ed,0xff56d041,
-0xff95d7c7,0xfff42eea,0xffe192b4,0xff75cdf5,0xff04dde5,0xfeb0106a,0xfe8fcea2,0xfe5f688e,0xfec782aa,0xfee7c2d4,0x008b2cc8,0x0214afbc,0x02486544,0x02297340,0x02269378,0x015bdc26,0x0038597a,0x00359d86,0x00041ce5,0x001d6901,0x001000ff,0xfff874a9,0xffc0675f,0x0019f7c4,0x00315ec7,
-0x00116065,0x00131d5e,0x001c9b5c,0x0079ccb5,0x00040728,0xffb37cae,0xffa32b21,0xff4479a5,0xff2d7126,0xff89a6b0,0xff8af3ca,0xff6749da,0xff4db5d8,0xff03c9da,0xfef429c4,0xff007367,0xfed977e2,0xfe1a84f4,0xfd16befc,0xfe13b2e4,0x02b1e99c,0x02ed286c,0x02d32814,0x028b9a14,0x0239f084,
-0x01b8d1ce,0x01c09ad2,0x023134d4,0x01cee2c2,0x0183e706,0x013a4ec2,0x0103657a,0x00f90a3d,0x01127334,0x00a861c4,0x003e3fb9,0xffbf1d3e,0xff958507,0xff60e6d3,0xff6ad11d,0xff2325c4,0xff094efe,0xff381ca6,0xfee4dc30,0xfefb0316,0xff23c458,0xfef05930,0xfed6c03c,0xfe88840c,0xfe4513c4,
-0xfde86fcc,0xfd8f0ee4,0xfdf84bc8,0xff2aa02b,0x0107a53a,0x01f7e2ee,0x01edb9e8,0x01ea5d22,0x01df9fe6,0x01d12df8,0x01b791da,0x01bf8e24,0x01b9f50e,0x01aa946c,0x0173a632,0x0157036c,0x01225d02,0x00f5f9aa,0x00c5b828,0x008d6517,0x008a64c9,0x00779670,0x0066f43c,0x005894a3,0x00386126,
-0x00238cd2,0xfffc46b9,0xffca336e,0xff999bb8,0xff74141e,0xff48a351,0xff194e9a,0xff159257,0xff0d6eb0,0xfef1c768,0xffcb813e,0x0094e736,0x0156202e,0x01be8cfc,0x01fe1168,0x024cbb4c,0x0204a324,0x01c7cd4e,0x01e091de,0x020c7fb0,0x01e1abb4,0x01eac8a6,0x01de8e7e,0x01d48476,0x01d2be2a,
-0x01bc6848,0x01a89baa,0x019a34f2,0x01810278,0x016c6c9e,0x01522e2e,0x0138021e,0x010161f6,0x00e31df6,0x00bd0ac8,0x00c55763,0x00523634,0x006cfbd5,0x0095b9e2,0x00b473ce,0x00d1ff29,0x00ebb0d3,0x01012b9c,0x0115203c,0x0133556a,0x0147a534,0x0152286e,0x01484792,0x01507f1c,0x0156d984,
-0x016f5152,0x018a9e80,0x01b1d868,0x01a89698,0x01ab6656,0x01bd6f12,0x01c2d820,0x01c50ff2,0x01b50d84,0x01b99b78,0x01b5c7f4,0x01adc368,0x01a50382,0x019c1c72,0x0195ff1a,0x01905bb4,0x018b9c38,0x01778e72,0x0165de9c,0x0174d948,0x0157acaa,0x0147fcae,0x01137458,0x0130faaa,0x0131a01a,
-0x0137d134,0x013e4b20,0x0146f646,0x01515c18,0x015e4198,0x01690ab2,0x017739d2,0x017d45dc,0x018a4ea0,0x0195cbae,0x019a8b6e,0x019ca6c8,0x019b8434,0x019fbc1a,0x01dcba7e,0x0049442f,0x0034f9d6,0x0030ae06,0x0034fcf8,0x003e595c,0x00604c72,0x004204de,0x0035c337,0x003e582f,0x003421bd,
-0x0038b7f6,0x0050ba62,0x0039e76f,0x0033ec3b,0x002e6644,0x003c5aab,0x0045238d,0x0046af57,0x00506b1c,0x0054daeb,0x0056e877,0x004fa299,0x004b80ad,0x00470ee3,0x0045eb1b,0x00406886,0x003baa37,0x00260e29,0x001f783d,0x001ba504,0x0038c2b2,0x00430f23,0x003a8033,0x004f5a75,0x004e5a9e,
-0x00376e13,0x003ae766,0x00337179,0x0029eb08,0x00345a28,0x006222bc,0x00b52fc0,0x0041ea03,0x0029c969,0x00567b2d,0x0041fa68,0x004c31b1,0x00797b3e,0x00461fdc,0x0039a99e,0x003428ff,0x00497e0f,0x005c3b31,0x006bd598,0x00863870,0x00825038,0x0077d853,0x0071bef4,0x00657f69,0x005867bf,
-0x0055e6ba,0x003ef7e7,0x0026ba17,0xffe401d5,0xffd4ba53,0xffdc1f24,0x0028139f,0x00480e04,0x002831f8,0x0058d2b4,0x004e7663,0x0019aad3,0x002d3245,0x00113db7,0xffe70e8d,0x001f3b27,0x0062355e,0x011ba0a4,0x003e5f49,0x001f73e3,0x0077ae94,0x0038ae53,0x004d6cb8,0x00b61dc2,0x004d95db,
-0x00256228,0x002d7487,0x00530919,0x007ddbf6,0x00a0cded,0x00cf2486,0x00cfde2e,0x00ad6dce,0x0098fb61,0x007c31c6,0x00665d7b,0x005d4deb,0x00391b52,0x0019ecdc,0xff96025f,0xff70d87b,0xff6dc7d8,0x001771eb,0x0060beb9,0x001057a9,0x008e3881,0x007cb4f1,0x000e124a,0x0025e6b4,0x0022a208,
-0xfffb0360,0x004ebd61,0x00b53eca,0x01a0d948,0x003b943b,0xffe601ba,0x006ef705,0x0046e77c,0x006d8856,0x00c2a6cd,0x001bd4b4,0xffee4db6,0x00331d53,0x0079e24c,0x00c07d79,0x00fc8c93,0x011a763a,0x011528e8,0x00dda274,0x00d341ac,0x00a7b6fb,0x008c4142,0x007944ca,0x003452b6,0xffe33715,
-0xff09382f,0xfec5b4c4,0xfeea67f0,0x00026d3a,0x0063fdd4,0xffd7cb19,0x00693bd3,0x0047659c,0xffadba93,0xfffe5a45,0xfff16e36,0xff7d336e,0xff18f424,0xff451855,0xffd09f6c,0x0092abd4,0x00efe553,0x00be5891,0x004bc024,0xffffcd74,0xffdd5fc9,0x00370994,0x0046903d,0x0020100c,0x007501a3,
-0x00acb4bd,0x00e287ad,0x01552e2a,0x013e6b9e,0x00a18ea7,0x00a722b8,0x0065c0c4,0x00247c83,0x0018a026,0x0028edb9,0x004872c9,0x003dd411,0x002b2764,0xffcf05ae,0xffb8ad9b,0x00123059,0x010e6cd6,0x00f6eefe,0x012437fc,0x0147de8a,0x008c01bc,0x00a6d03d,0x028b956c,0x003c69e2,0xff894c1c,
-0xffce379e,0xffb86218,0xffa11367,0xff916133,0xffd78581,0xfffc50dc,0xfff0ab9b,0xffd5c55c,0xfff27eba,0x002c37df,0x0059a5b2,0x004e560f,0x005b9415,0x00228fab,0x00315110,0x00b178c7,0x006800d7,0x00433ea4,0x002ba68b,0xffb94eb9,0xff96f8a1,0xffb25fba,0xffac7658,0xffece242,0x00489272,
-0x00418dea,0x00007854,0x002bf2ad,0xfe0d64d4,0xfda33fc8,0xfee72ce4,0xff530d46,0xff9ff2d7,0xffef1a50,0x0058cc62,0x0003d232,0xfecd892c,0xff2f9560,0xff8a830c,0xff7d6e70,0xff84715a,0xffba1047,0x00061154,0xffffac55,0x0025673e,0x00227f03,0x00304f92,0x005715a9,0x008a483f,0x0032bcf4,
-0x005b1aa1,0x0158ca1c,0x009fb5c1,0x005bf537,0x004e87ed,0x0003e625,0xfff4e9e3,0x0026c0a8,0xff86c898,0xff534198,0xff8e6a36,0xffda1fae,0x002da03e,0x006578e7,0x0133c5f6,0x01001d44,0xfff2131e,0xffe18032,0xfffc504a,0xfe37e42a,0xfcdeb57c,0xfd254258,0xfdc62560,0xfed67716,0xff7f42f1,
-0xff76d1e9,0xff899521,0xffc0389b,0xfffe91bb,0xfffc4fff,0x0009d11d,0x0022a7a0,0x0021d642,0xfffacc78,0xfffad440,0xffd64bca,0x0011f5ee,0x00ce0d8b,0x006b614c,0x002dd9a5,0xffc7f644,0xff6ec4c7,0xff2a2a90,0xff84d985,0xff62829d,0xff9099b8,0xfff3dd6e,0xfff7161b,0xffa58cd7,0xfed4195c,
-0xfecc9a94,0xfeb72778,0xfe90d4e8,0x000b7819,0xfc75e768,0xfe098dba,0x0017ca15,0x00d4d369,0x011782a6,0x00d8cb40,0x00340e15,0xff9b1661,0xffbeaff3,0xffbdff50,0xfff67262,0x002962fb,0x001abe62,0xffd69357,0x001550de,0x003465c8,0x005ad0c1,0xffea06cd,0xffe0691a,0x00594bec,0x000eb637,
-0xffdd562e,0xff7da4eb,0xff758cb0,0xff8c4b42,0xffb22848,0xff46f55b,0xff4f3329,0xffc4ad1a,0xff792aea,0xff70d297,0xff69a905,0xff8a79c0,0xfed7d19c,0xfd5e6194,0xfca016a0,0x028931fc,0x03232910,0x0331e268,0x02de709c,0x02a6dc20,0x0216c248,0x01fab310,0x024778d8,0x01f09e5e,0x01989532,
-0x01173050,0x00f0779c,0x00e3a2ef,0x00dbf35d,0x009179ef,0x00270428,0xffb7fbeb,0xff888ad6,0xff787480,0xffb67cbc,0xff71e89c,0xff5a24d8,0xff7ac10e,0xff5a7982,0xff6307a5,0xff638235,0xff6604b0,0xff413cc6,0xfed1d60a,0xfeb621a2,0xfe542858,0xfdcd0418,0xfda50238,0xfe4bbfea,0xfff2f4c2,
-0x0165d986,0x016f14cc,0x01b9d308,0x01baac04,0x01c823b2,0x01c5d7f2,0x01d14df8,0x01d5d204,0x01d6e59a,0x01a3f732,0x017cd576,0x0156c29e,0x01104876,0x00cae4c7,0x008460a5,0x0074ae2f,0x0066fb16,0x00521d0f,0x003e09a0,0x00228902,0xffd9a3e3,0xff932cee,0xff68e97f,0xff2e63fe,0xff01b6a6,
-0xfed8cf32,0xfeabcf40,0xfe9e4dea,0xfe882798,0xfe626398,0xfed5d994,0xff349bbc,0xff90febb,0x004928fb,0x00d85b3c,0x014dd7c6,0x014f9d98,0x0162efb4,0x0174513c,0x01bc7fcc,0x018660a8,0x01a1d1cc,0x01a6d0d8,0x019d3f04,0x01a4d28c,0x01781596,0x015c6e88,0x014a2504,0x0123ee2c,0x0109bf32,
-0x00eec7a8,0x00d594f8,0x009b8036,0x006be894,0x003d2e37,0x003e7133,0xffe7e58f,0xffff5d48,0x00102d54,0x001da2d7,0x002e25f1,0x0039c46d,0x0041e4a1,0x0063ed38,0x008d43ba,0x00b4373e,0x00d0f62a,0x00ea170d,0x00fe5912,0x010548dc,0x010f3b7e,0x012bb400,0x014d2596,0x014a40e0,0x014306a0,
-0x0181ae9c,0x019d9fa8,0x01c1d310,0x017399c4,0x019db96e,0x01c14784,0x01b6992c,0x01addf0e,0x01a12b5c,0x019c39da,0x019660bc,0x018e6992,0x01514b5c,0x0124baca,0x0168d68c,0x01329c6a,0x010ed866,0x00cf4530,0x00e32ec9,0x00df1192,0x00e0e5d1,0x00e095f5,0x00e24147,0x00e05925,0x00f45ab7,
-0x01018200,0x01105fbc,0x011adaea,0x0128509e,0x013af564,0x013ca942,0x01405158,0x013ecdde,0x0141e01c,0x017af086,0x0055ee35,0x00439be6,0x00477540,0x00491146,0x004ff00f,0x0072ed2e,0x004e4a96,0x0044561b,0x004ebace,0x0042cf82,0x00464cac,0x005c3f81,0x0047bb88,0x0041e9c6,0x003d7356,
-0x0049cd89,0x004fa67e,0x004ef055,0x005bbc90,0x0061013c,0x00641b9c,0x005aec03,0x00565f47,0x0051b07a,0x00506f54,0x00489f2b,0x003819d3,0x002f59c1,0x002c3cab,0x002815ea,0x00499c44,0x0052da83,0x00425a7c,0x0059d1ed,0x00595d49,0x0043760d,0x00482ea8,0x004822dc,0x00589760,0x0055458a,
-0x007f22e3,0x00cb838b,0x005230f2,0x0036e6b9,0x00644b11,0x004dd1cc,0x00585a97,0x00801cf6,0x005504ad,0x0049c701,0x00433e19,0x0053d5a4,0x00618ce7,0x006ced7a,0x008ca242,0x008d91e0,0x008c1ee6,0x007b2859,0x006e1115,0x0061b2c0,0x005d9ab7,0x003eb916,0x000b212b,0xffe96716,0xffe73d13,
-0xffed0b66,0x00479a0f,0x0063cb24,0x002f70e0,0x00679903,0x005b756a,0x0028a412,0x0039a8fc,0x002affec,0x0025b1f9,0x0042ade8,0x007fd46e,0x0133972e,0x004c4e4b,0x002b36a2,0x00862402,0x0045499e,0x00517a5f,0x00b5970a,0x0054b3e9,0x00355c1c,0x00399281,0x005b3d95,0x007b5296,0x008afe51,
-0x00cb291f,0x00d57794,0x00c2fa3d,0x00a26d71,0x008350cd,0x006abd7b,0x00611ae0,0x002c2275,0xffd2e5d3,0xff91c1a4,0xff862b6d,0xff8e2473,0x0045ffe1,0x00820d6c,0x000f307d,0x0090068c,0x008780d6,0x002081cc,0x003bd633,0x00483301,0x005336a0,0x007b9852,0x00ec77b2,0x01d7cf14,0x00506824,
-0xffe74e64,0x00896647,0x0048f717,0x006cb86f,0x00e8ee32,0x0033bb39,0xfff91c78,0x0042f72c,0x00818e9c,0x00b5e0ac,0x00de07f3,0x011de7b2,0x011f8bf0,0x00f66171,0x00d28f2c,0x00a89494,0x008eb82b,0x00725629,0x0007f98a,0xff619584,0xfeead4b8,0xfee88198,0xff168490,0x0040faa3,0x008f8152,
-0xffd98c43,0x0082162e,0x0050fd20,0xffb9b3d6,0xffff2c1c,0x001d28b9,0xffd8a6b2,0xff427f37,0xff39f221,0xff7f21c3,0x00818f6c,0x010b88bc,0x00edcb46,0x00687237,0x000461af,0xffde81ac,0x0036f1d0,0x005327fe,0x003a70f7,0x00925f32,0x00b7609d,0x00ce5b4f,0x013c970c,0x0134ce80,0x00ea8b25,
-0x00a7d5dc,0x004e7fb9,0x001a4980,0x00123246,0x0025430b,0x003c8822,0x005b2692,0x0051fc39,0xffd20a7f,0x00472567,0x007c2342,0x00b913d1,0x00b9ec22,0x01279a8e,0x01f9b518,0x00d1ee0f,0x0048fbe9,0x02a96f0c,0x00387448,0xff7326f2,0xfff83b77,0xffd804b6,0xffd50f41,0xffc35fa3,0x000fb137,
-0x002f33f8,0x00034dca,0xffe71012,0xfffe0cc4,0x0041ddda,0x005224aa,0x005e9dfd,0x00792f3e,0x00360e82,0x003196b2,0x0092b44b,0x00475db3,0x00208620,0xffe58300,0xffbe6425,0xffb78e26,0xffec551a,0x0016e30f,0x00602697,0x009f84a0,0x0058f6ee,0x0051067b,0x00ba03e8,0xfeb667dc,0xfe1ace1a,
-0xfefeafb6,0xff0da2fd,0xffbb356c,0xffaf3f28,0xffde9195,0xffc6d053,0xfef2369e,0xff043b20,0xff426f19,0xffa74183,0xff921c9f,0xffb00340,0xfffbf282,0x0008f9d0,0x003155d6,0x001cb0e6,0x003975ac,0x006e4d48,0x00989800,0x0026a346,0x005eeb20,0x013816a6,0x009ace04,0x0064b8a6,0x001c09fb,
-0xffff326e,0xfffdb503,0x002fa753,0xffa658d8,0xff9482a3,0xffff89ed,0x001d89a0,0x0058b350,0x00754639,0x00f1a6c7,0x00e92af1,0x000a25aa,0x00082e3d,0x00a00f0a,0xfffa3957,0xfded7770,0xfd9e6884,0xfe1fc502,0xff035961,0xffaa1289,0xffbf055c,0xffb785bf,0xfff45ffe,0x00112111,0xfff755d2,
-0x00011e8b,0x0043bc7d,0x00357b7b,0x0016cfbd,0x0016ec11,0x001c583e,0x0040d518,0x0078acd8,0x004a0c7e,0x002be81f,0xffd6124a,0xffef44e2,0xffd0d734,0xffca4746,0xff654abe,0xff76f896,0xffd88d36,0xffa86f6d,0xff87e3fc,0xff20fe51,0xfec2977e,0xfea2104e,0xfef497d8,0x0026482d,0xfb997888,
-0xfc49c2c4,0xfe62ebec,0xff895f64,0x0017519f,0xffaef1b0,0xff480a98,0xff467216,0xff63050c,0xff80337b,0xffdcfb54,0x003aa8c9,0x00394dad,0xfffbd9cc,0x000cd1e9,0x00267fd4,0x0070abfe,0xfff1a50a,0xffe272d8,0x005ac699,0x005fec73,0x0038d7b0,0xffa832a7,0xff92421e,0xff7cf769,0xff7e671c,
-0xff4e18c7,0xff7d8cce,0xffba2c02,0xffc3660e,0xffc859ce,0xffab6b51,0xff9de170,0xff19b7e2,0xfe2f5086,0xfc73f7b0,0x017943d4,0x0279bc34,0x02dcaad0,0x028c697c,0x028626f8,0x02185ba0,0x01e85578,0x0215794c,0x01df8990,0x019513b2,0x00fef3b3,0x00d7b314,0x00b029eb,0x0082dc14,0x00716935,
-0x002eb581,0xfff00558,0xffb7d3d9,0xffb7905f,0xffd7d9f9,0xffa4cd9d,0xff96d76d,0xff8ab947,0xffb177d9,0xffaafaa3,0xffb5bce7,0xffb26aab,0xff852aa7,0xff1416c8,0xff1c6ff5,0xfec99fba,0xfe2d55a6,0xfdef331c,0xfe097efc,0xfec0e010,0x003dd914,0x011774d0,0x019dc56e,0x01b1a942,0x01d73c52,
-0x01fda620,0x01e7cab2,0x01dbdc7e,0x01cb26b8,0x01a09ba4,0x016f2bf6,0x015a928e,0x011d50a4,0x00f5f183,0x00c1121f,0x009379cc,0x006e89db,0x00443aac,0x0003ebbf,0xffb95a17,0xff52028f,0xff12f135,0xfeea0b5c,0xfeb0539a,0xfe9ca7a8,0xfe89bae6,0xfe7552ca,0xfe4ca000,0xfe27823a,0xfdfb8c54,
-0xfe2a97e8,0xfe4d144a,0xfe68831c,0xff33a4a5,0xffeba883,0x007f7aa5,0x00d48a02,0x00e2476b,0x00f819b0,0x0156d96e,0x01122f7e,0x01383542,0x014af87a,0x0140a08a,0x0151b282,0x0112826a,0x00f3863d,0x00d9541e,0x00a323fc,0x007b071f,0x005821c6,0x0058516a,0x003ecf85,0x0019bbde,0x0008c678,
-0x001b92cb,0x00010db7,0x0001dd03,0xfff3b851,0xffe83c3c,0xffdd30db,0xffce0284,0xffbd0aac,0xffe411f6,0x000a2db7,0x002b4f82,0x00475ff0,0x0064ce56,0x007497b3,0x0083e626,0x0088cd2f,0x00a4a441,0x00c1202d,0x00a62e3d,0x009b320d,0x00edb66d,0x011bda7e,0x0165395c,0x00da0d67,0x01220490,
-0x0171b5c8,0x0160aff4,0x0154b5aa,0x01439c2c,0x013db926,0x0135a9a8,0x0126dd3e,0x00d4fad0,0x0099cc16,0x01129e1e,0x00c8eeb6,0x009d3e24,0x006244e0,0x0062ee1c,0x005a437e,0x00546c2b,0x004b8d07,0x004515e8,0x0036b8e4,0x0048ad53,0x00524509,0x005f02e5,0x0067bcf0,0x0071a58e,0x007f9db1,
-0x008764ee,0x009129e8,0x0095cf7e,0x009ca67c,0x00a5098b,0x005c1f0d,0x004fa320,0x005213da,0x00555133,0x005a1fba,0x0079500e,0x005175a2,0x004b5d13,0x00566b1e,0x004cdf7b,0x004e9604,0x005e9991,0x0050873e,0x004c40b9,0x0048394e,0x004ec3bd,0x0052e03d,0x0053818b,0x005fa010,0x00653dd9,
-0x006b5e67,0x00607e68,0x005b76b1,0x0056406b,0x00544540,0x004b454b,0x0036ea11,0x0035325c,0x0034d822,0x00329e29,0x004ff466,0x00583e11,0x0049b10a,0x005dd6d9,0x005e775f,0x004c5025,0x0052a614,0x005ac960,0x006f472b,0x0078737d,0x0092b3db,0x00cc6482,0x00590105,0x003c4542,0x0063a01a,
-0x005742de,0x006391d2,0x007a7ad0,0x006170ef,0x0056d6d8,0x004b22ab,0x0056071c,0x005f065a,0x006aa249,0x008b9d29,0x0093e7f6,0x009d9a46,0x0083b515,0x00748a21,0x006592b3,0x005f4691,0x003fc136,0x0003a400,0xfff3b85c,0xfff6cc9b,0xfffbc45f,0x0050ceb8,0x0067e61f,0x0035a255,0x00677f8b,
-0x005e2b5e,0x003233eb,0x00479937,0x0058736c,0x0056e675,0x00772fa7,0x00989c26,0x012a743a,0x004f8f55,0x00310c7d,0x00828578,0x0051b977,0x005ae323,0x009f66b3,0x005e0413,0x0046ed78,0x003d6b63,0x005a8ef4,0x0071556a,0x007755b1,0x00bf5911,0x00d0eb82,0x00d7cdb1,0x00a90b6f,0x008865c7,
-0x006aa578,0x0060414b,0x0023b5a2,0xffbb981f,0xff9f097d,0xffa2102c,0xffba175f,0x004b43f8,0x007ea164,0x0023efe7,0x00852419,0x008ee3c7,0x003695d4,0x00612fda,0x008991b1,0x00ad2e1e,0x00dc8c3b,0x013979ac,0x01ebe988,0x00631c0b,0xffe682b0,0x008717a6,0x00511842,0x0072c13f,0x00f14f2c,
-0x0048996c,0x000d99c6,0x004801aa,0x00835d02,0x009ee09f,0x00b4e3a3,0x0114cff4,0x01271702,0x0126a80e,0x00e67d58,0x00b5a466,0x008d1cb0,0x006d8ce9,0x00027f38,0xff46174f,0xfefc46de,0xff1f71e3,0xff554a0a,0x004a5847,0x008328ce,0xffeaf76c,0x007cb554,0x004b8f9a,0xffc437e0,0x0022a2e1,
-0x0026f1ad,0xffe38147,0xff50d464,0xff16f581,0xff4089ac,0x00756cb0,0x0121eb5a,0x01168698,0x008e865b,0x000e03e4,0xffd53fa5,0x0031182b,0x00573cbf,0x0049cf65,0x00aa01dd,0x00bf0fe7,0x00c566fb,0x00f8e97f,0x01010ac6,0x00feba9a,0x00717105,0x002e2fff,0x0028424f,0x000ee6c0,0x00126ab9,
-0x00135a85,0x008032a1,0x006d80a1,0xff7e528e,0x00857a41,0x00b79121,0x0054c83e,0x00959723,0x01461426,0x027dfd8c,0x0120238e,0x000b32ca,0x02564e68,0x005fc5f5,0xff9fd4ea,0x00399488,0xffad24b8,0xffac95dc,0xffd7e791,0x002168ba,0x004eb559,0x002afc8b,0xffff1f06,0x000d4465,0x004935a7,
-0x00442143,0x006a738f,0x008cd217,0x0069965f,0x0060a6e1,0x008f04fd,0x005843a2,0x003b83a8,0xfff66aff,0xfff3d3fc,0x00086a80,0x00493b0b,0x0051af48,0x0096aff0,0x00dd6334,0x00557260,0x00653a4f,0x00f72b96,0xff4a0179,0xfe99eae2,0xfedf60e8,0xfef4816a,0xff9590b3,0xffb470c9,0xffbab225,
-0xffad54aa,0xff3a0096,0xff1e13aa,0xff2ea365,0xffcd1df2,0xffa2cb38,0xffb1c400,0xfff26de1,0x001cf05a,0x004475c7,0x0016b47c,0x0045bf89,0x0080076d,0x0081a4b7,0x002df560,0x0060c092,0x00d8ba13,0x009d98b7,0x008f5574,0x003d0c37,0x00411d39,0x0023d4f8,0x0017af02,0xff9a932d,0xff93b78e,
-0x003cf6e4,0x0044a415,0x007bb4d0,0x00b71b30,0x0095718c,0x008fe54e,0x0002f04a,0xffda9008,0x007c10b1,0x0068813b,0xfef83b9a,0xfe5f0c7c,0xfeab0778,0xff3394d9,0xffc2c6a9,0x00114b3d,0xffe4b1b9,0x0021d15e,0x002efdd0,0xfffd7272,0x00074794,0x004fa6b5,0x004c2f7b,0x004b5136,0x005091c0,
-0x006f4038,0x006678de,0x00488d5a,0x006bddfc,0x0068a31a,0x002c5a37,0x004b7c32,0x003fb656,0x001e14c4,0xff9078f1,0xff94e079,0x000a7fbc,0xff9143e7,0xff6caac7,0xff57f6d1,0xfeffc8c8,0xff0af9d1,0xff7da19a,0x000cef1a,0xfc8aee30,0xfbfa05a8,0xfd7c9908,0xfeacce44,0xff59bbe7,0xfedce984,
-0xfeaf630e,0xff2a7f4f,0xff2dd4c7,0xff545e11,0xffbc2c87,0x002e6672,0x0047ba8a,0x0025ffb5,0x0019dca6,0x0021fcc5,0x0062c53e,0x0011258a,0x0014ac31,0x0069954e,0x0077b7ee,0x0047cf71,0xffdbdb8b,0xffb67889,0xff95678a,0xff947321,0xffcedfee,0xffe2aa1f,0xff8dfece,0xffe35150,0xffd70aec,
-0xff8e7a28,0xff316f87,0xfeda9ffc,0xfe842e5e,0xfd52b848,0xffdf70ad,0x01015336,0x01bb5aae,0x01972610,0x01b728ae,0x019880b8,0x0183171c,0x01b497a4,0x01806a94,0x014c0b66,0x00db3f88,0x00b7a86c,0x007edc76,0x00576f72,0x006befc3,0x00538016,0x003e6650,0xfff8bc7b,0xffdf76f4,0xffdf7b5f,
-0xffda89a3,0xffdb7ac7,0xffcb9c13,0xffccc0f9,0xffb1dc52,0xffa6bf6a,0xff940f9c,0xff72ff67,0xff2ef879,0xff687738,0xff4f276a,0xfef42b42,0xfea2582a,0xfe5dea2a,0xfe51d372,0xff115c53,0x00bd0cb1,0x016728e8,0x0195c606,0x01be4616,0x020c3730,0x01dee010,0x01bce3e8,0x019be674,0x017932aa,
-0x014a20a8,0x0136d246,0x011036a0,0x0106e1fe,0x00e14691,0x00a179ec,0x00605ee9,0x0021d601,0xffdbe201,0xff80f03b,0xff408c4e,0xff107b76,0xfed5711c,0xfe9fb996,0xfe8e431c,0xfe7fc1c2,0xfe6edfb2,0xfe52704a,0xfe39f714,0xfe1dc8ba,0xfe0f49c6,0xfdf9ea98,0xfdd9988c,0xfe8a1124,0xff320492,
-0xffbd2775,0x00562101,0x00555a85,0x00716e9f,0x00d3b8a4,0x008dea3b,0x00b5be4e,0x00c4282d,0x00bf7151,0x00dadf2b,0x00a05549,0x008afe9e,0x0072ab15,0x0041fee0,0x001c7741,0xfffcf21c,0x000bfc42,0x000e4a6f,0x0000a4ae,0x0004e4e0,0x00218a89,0x0012e607,0xfff90b97,0xffde3ad5,0xffc2436a,
-0xffa3bfaa,0xff80b1fe,0xff590b1a,0xff729230,0xff863155,0xff9b4f99,0xffaf6fc0,0xffcabe8c,0xffd33924,0xfff141bf,0xfffe4cc7,0x00190f4d,0x00334002,0x00126545,0x000c59be,0x00484f06,0x006fa945,0x00b40d34,0x0038d72b,0x00750830,0x00c41942,0x00b3b381,0x00a6c8a1,0x0096e75e,0x00902aec,
-0x00863629,0x00754d95,0x003f2111,0x0012b0ca,0x007634d6,0x003b81fe,0x001e41d9,0xfff2cc56,0xffe9c00b,0xffdd1ba3,0xffd0cd03,0xffc2ef1f,0xffb813bb,0xffa53d8b,0xffb47fd7,0xffbad9b2,0xffc20f3b,0xffc70925,0xffcb7c15,0xffd0c8a5,0xffdec301,0xffed1783,0xfffa0251,0x0004dc89,0xffe94def,
-0x00594536,0x0053ec1d,0x00504b1c,0x0057b99f,0x005cf742,0x0077cd65,0x004c841a,0x004cd005,0x0058fe04,0x00557f39,0x00564fe0,0x005e63d8,0x00585d75,0x00556027,0x004f4076,0x004e9843,0x004fd430,0x00585c4d,0x005f7e1f,0x006272f1,0x0066e42a,0x005d518f,0x0057f26c,0x0052d7a5,0x0050bf6e,
-0x00484d9a,0x0035d5c5,0x0035f784,0x00365ae8,0x00344bbe,0x004aff8b,0x00517c4f,0x00479538,0x0055e9a1,0x00586799,0x004f35bd,0x0055347e,0x00612818,0x0067bb99,0x00863559,0x008da588,0x00b64ed5,0x00551081,0x003b0bc2,0x0058c0b6,0x005af496,0x006a2862,0x0070e252,0x00689e07,0x005cf049,
-0x0049d76b,0x00517ca3,0x00579f84,0x006958a3,0x0082685a,0x00950149,0x009e7ee9,0x0080622d,0x007058d3,0x005f2607,0x00577ad0,0x003bec96,0x00066aa5,0xfffcef93,0xffffa5f2,0x000179da,0x0048b815,0x005d3b33,0x003cbda9,0x005d880c,0x005836ab,0x0041ffe9,0x0051b3f6,0x00723e11,0x006530f7,
-0x008c713d,0x009076f4,0x00fc83e6,0x0044e3c2,0x002ea3d4,0x007120ea,0x005fa711,0x00697637,0x0088eb07,0x0067d804,0x0057046a,0x0036fc17,0x0051acfc,0x0061ed27,0x0073325d,0x00abb23c,0x00c3e78c,0x00dd19c1,0x009faf12,0x008259da,0x00624ffd,0x00588199,0x001eddf9,0xffbff974,0xffb47610,
-0xffbc032f,0xffc7ea7f,0x0037b58c,0x0063574c,0x002929ce,0x00645d70,0x0078bb9f,0x0058faf0,0x007d429e,0x009182f5,0x00aa13d0,0x00f4c2c6,0x0138a0f4,0x01acdde2,0x0060d8e3,0xffe3a9c1,0x006e2ffc,0x005a129e,0x0081caf1,0x00e68514,0x005a6cdd,0x0021d623,0x003f63bd,0x007cac34,0x0088773f,
-0x009dbb47,0x00fc814e,0x0128db2a,0x01486088,0x00e57065,0x00ac68b6,0x007b180b,0x005a16bc,0xfffc006d,0xff50aa84,0xff1d1b9e,0xff41afbe,0xff6708d7,0x0034c768,0x00675f87,0x000f8f56,0x006605a9,0x003dbd28,0x000611e7,0x00467153,0x0076d1a3,0xffff8ed1,0xff7baaea,0xff13c81a,0xfefe478a,
-0x004bffc3,0x011270f2,0x013262e8,0x00bcb97c,0x00253ec2,0xffcc9a7b,0x0028d852,0x0052f273,0x0055005f,0x00b46571,0x00b72085,0x00b42be5,0x00aaf207,0x00b3339a,0x00c58aa2,0x00432af9,0x002f9d5c,0x0045c299,0x001d483c,0x00215fdf,0x0021846e,0x00e5b2d4,0x00c21351,0xff58386f,0x006559cf,
-0x0086fc0d,0x000ead2c,0x004f16cd,0x01206946,0x02989a70,0x015e4b24,0xff6f3b4d,0x0156daf2,0x00972092,0x0016d77f,0x00727c55,0xffc325f7,0xff9393d8,0xffc712aa,0x001b7239,0x0053e53f,0x004f28cb,0x001ad818,0x001cd8cd,0x00493f08,0x003bbf45,0x0071364e,0x009d9718,0x0097e0ac,0x0097dcc2,
-0x00874198,0x00744472,0x0061e808,0x000a648d,0x00200637,0x002bf246,0x00438b1d,0x007d4b05,0x00996fe8,0x00609c69,0x0051eb9a,0x006292fe,0x00a9fcca,0xffa21a62,0xfef95db4,0xfeb51612,0xfebff7ae,0xff834b56,0xffc53914,0xffc7a1d4,0xffb126fb,0xff892c22,0xff4fb1a8,0xff452019,0x00022bf8,
-0xffbc3839,0xffbf694b,0xfff8b79c,0x00282686,0x00486b17,0x001890ab,0x00469886,0x0085463f,0x00699cd1,0x003651af,0x0052b86c,0x00787ba2,0x00af0ed6,0x00ba2d6e,0x004fe18d,0x005a8889,0x002f7a26,0x0008f193,0xffbe0ec6,0xffbf3328,0x004511e1,0x007dc899,0x00bf534e,0x00f3e0a1,0x0074af48,
-0x00476bd6,0xffd57075,0xffba43a7,0x002b9360,0xffe2e241,0xff8793f6,0xff20a2a0,0xff2c42db,0xff52b58a,0xffbd6210,0x00567416,0x000cbea6,0x003d4a1b,0x004265b4,0x000f28e3,0x00157a88,0x00510b3b,0x005cf2eb,0x00759f98,0x00807b84,0x009d268d,0x008a5f18,0x004ee154,0x008e7a89,0x00912aef,
-0x005982c7,0x00831315,0x007ede6e,0x0028a349,0x000555b6,0xfffd662b,0xfffa11ff,0xff85d8e5,0xff54d3cb,0xff33ff07,0xff750c14,0xffb45413,0xffc8af51,0x0025dd3a,0xfe1e5558,0xfd141f54,0xfd81eb40,0xfe44767e,0xfee0de86,0xfe839b84,0xfe8b3036,0xff2951e5,0xff1fe027,0xff477a9b,0xff9e1596,
-0x000a4b5e,0x003c891e,0x00452406,0x0031904a,0x00318c41,0x00613186,0x00385c7c,0x00428d00,0x005df893,0x007b7926,0x006334c4,0x002925e1,0xfff0d4f8,0xffcc7108,0xffa96e42,0xffed152b,0xfff3780f,0xff96bdc7,0x00180aa7,0xffe367d0,0xff33378c,0xfed673cc,0xfe9eb9f2,0xfe7e05da,0xfe5f39f2,
-0xfe9ff364,0xff858357,0x00578b44,0x007d35f8,0x00add5e8,0x00f1c9e8,0x01023d08,0x011b8f16,0x00e3df16,0x00c4c160,0x00916d31,0x009b077f,0x00771b9e,0x0068200e,0x006c3dae,0x0061c0a6,0x00670abc,0x001055c3,0xffea110a,0xfff0ce8e,0x001592e6,0x00218ace,0x0020cda2,0xffd09e15,0xffaed9bd,
-0xff828648,0xff8bd1b3,0xff7860b4,0xff451451,0xff7c2e59,0xffb12e31,0xfff659cf,0xff7ddd2b,0xff0b7b5f,0xfea8fcbc,0xfe78239a,0x0033af2d,0x00da1788,0x0128f250,0x0148bbb4,0x01aa71f4,0x0187416c,0x01644e24,0x0151b8e2,0x01420f78,0x01243dc0,0x011e3c42,0x00f42151,0x00ebe7c3,0x00c19f1a,
-0x008b3129,0x004749e6,0x000fe58e,0xffe26d0f,0xffa4c1d1,0xff923033,0xff609a14,0xff1a4dba,0xfee41220,0xfecbeff2,0xfeb7e61a,0xfe9b02f8,0xfea0dd74,0xfea0fe26,0xfea54550,0xfe6c94f6,0xfe23063e,0xfdd08fd0,0xfe3b77fe,0xfeacfe72,0xff0ea725,0xffbd892b,0xfff07688,0x000fa8a1,0x005bd4cc,
-0x00265b2b,0x0047dc73,0x004d0ed2,0x005270e9,0x006c0805,0x0047504c,0x003bc56b,0x002f73b4,0x0010f68e,0xfffc8ab3,0xffeb07ef,0xfff49fc7,0xfff401ad,0xffea5c6b,0xffe8e41c,0x00015c76,0xffd13b59,0xffb19d17,0xff9e2276,0xff82e67b,0xff65a88e,0xff43ed0c,0xff1dcef9,0xff25effe,0xff27dce7,
-0xff31ad8a,0xff3d7214,0xff5a8643,0xff61ec45,0xff8e8aee,0xffa4ed80,0xffbba93c,0xffd4a307,0xffb4df35,0xffb5f9e5,0xffd4ddcb,0xfff060d2,0x001b3c3e,0xffd22768,0xfff738c9,0x0029723a,0x001ec16b,0x00172333,0x000cb008,0x000a624c,0x0003b841,0xfffa4f7d,0xffdac514,0xffbaa549,0xfffa5829,
-0xffced457,0xffba805e,0xff92155e,0xff8ea4ca,0xff81b042,0xff75ee8a,0xff697b99,0xff5fb183,0xff50254e,0xff5bb712,0xff608af7,0xff63cae0,0xff6777f5,0xff6872d9,0xff68d91d,0xff7718bc,0xff866603,0xff991683,0xffa5243c,0xff7b49d6,0x0053a8ca,0x00533339,0x004bbf9c,0x0052f37c,0x00565153,
-0x0069cd97,0x004701d9,0x0048dfac,0x0051a0ef,0x0054fb8b,0x005627b9,0x0057ae0a,0x00575e08,0x0054bc97,0x004b665e,0x0049389c,0x004a2830,0x0056a42b,0x00594d4a,0x005acb77,0x005c4a2e,0x00564c4b,0x0051a593,0x004cb806,0x004c2f3f,0x0045884f,0x0037778a,0x0036f120,0x0036b44c,0x00336ba3,
-0x004478a0,0x00499ccb,0x00440963,0x004eccb6,0x0051a441,0x004c0846,0x00538d3e,0x006267b7,0x005c9116,0x007bdf3e,0x007a5aa6,0x009292d9,0x004b38dc,0x00385a5e,0x004955a6,0x005a4d19,0x006bad3c,0x006725f5,0x006cc97d,0x005f878b,0x0043c5cf,0x00491136,0x004e6a2a,0x006977a5,0x00754fcb,
-0x008ad26d,0x008d40df,0x00737e10,0x0065b11c,0x005311da,0x004fe402,0x003ca827,0x0014c18f,0x000d3f09,0x000d3918,0x000c0ce3,0x0041032f,0x00500023,0x003e796a,0x00520736,0x00501d07,0x00469b50,0x00587791,0x007b52f2,0x005e8351,0x0080bed1,0x00771ca3,0x00c293c1,0x003ad4c4,0x002c5ce3,
-0x005637d3,0x0067226c,0x0074c0c4,0x0076c956,0x00727aaa,0x00631f60,0x002bf197,0x004577b6,0x00516c89,0x0077ec91,0x00946824,0x00ae61a7,0x00c627d4,0x008c5459,0x0076aea5,0x0052ea63,0x0053168d,0x002504f7,0xffda75d6,0xffd5dae1,0xffdd486d,0xffdd33ed,0x002c2dfd,0x004cbe7b,0x002c374e,
-0x0059b098,0x006b7118,0x005c24e8,0x00897287,0x0089b06c,0x0083086a,0x00d1020d,0x01058ce0,0x014d9ab8,0x0054c5c2,0xffec2072,0x004dcbae,0x006107fd,0x0090ccc8,0x00ceddc1,0x006c2043,0x0033e79a,0x0029a533,0x006dd89d,0x007517a3,0x009d4a5b,0x00df3a1f,0x01170664,0x0135118e,0x00ccd0f3,
-0x0094e7bf,0x0056f638,0x00465567,0x0003559b,0xff7cdabe,0xff5a3555,0xff766729,0xff94f1d2,0x0030b788,0x004cdb48,0x0021802b,0x005079c1,0x00348482,0x001ffa45,0x0060c98b,0x00c52b81,0x00455541,0xffc8fb7f,0xff4256b5,0xfee7ca12,0x001a9ec1,0x00dd1af1,0x0126aae8,0x00eb639e,0x004c5c40,
-0xffcd8291,0x001ed4ca,0x004956b3,0x0067f3c3,0x00b79fa9,0x00a81abc,0x009955d8,0x00749408,0x00737b38,0x0072879e,0x002bfbf7,0x003c3bad,0x005b4968,0x00418fc9,0x004c2496,0x004c0f31,0x01380cc8,0x010c720c,0xff8964a1,0x00240018,0x00384108,0x002f1457,0x005722dc,0x01058de8,0x025df890,
-0x01675a74,0xff046938,0x00005f65,0x00cf0907,0x00b04cba,0x005c5cca,0x0014b384,0xffc4c29b,0xffae8f09,0x001212f9,0x0057e2bc,0x006ec4ad,0x00311118,0x002456c4,0x004cb972,0x00446a08,0x007daa89,0x00a103cb,0x00a26983,0x00a35dd7,0x006b0e15,0x009166d6,0x0083533b,0x0014d494,0x001abeec,
-0x00232332,0x003c298c,0x00ac495c,0x00a268ae,0xffd32a79,0x004b3187,0x00388658,0xffb613e7,0xff8a88ab,0xff293f02,0xfec2bbf2,0xfed50b0e,0xff99a4c4,0xffc49730,0xffcd28af,0xffbe34fd,0xffe82e81,0xff836e36,0xff503bbf,0x00238a83,0xffdd7258,0xffd21b3b,0x000693a9,0x00281b74,0x003e1774,
-0x00233bef,0x003cf579,0x00796e59,0x004b85d3,0x002c383a,0x00380d9a,0x0042831a,0x00b6e067,0x00c3660c,0x004c5eb4,0x007af656,0x0050241a,0xffee0f2d,0x00014ca4,0x0029faa3,0x0051cf7c,0x00bf0c92,0x01038f24,0x0103a394,0x00785357,0x001e4c43,0xffbdc326,0xffb133e2,0x000d69b7,0xff81c8c1,
-0xffd09ab1,0xffbb97f4,0xff874b0d,0xff7f19d4,0xffbe58f2,0x00648a3c,0x001d468f,0x0043eceb,0x0046dffe,0x001afa12,0x001f492f,0x00547c99,0x0060a8fe,0x00866dbe,0x00903d99,0x00a1b9f5,0x009a20de,0x00568fe8,0x008ac768,0x00980b7e,0x007b3a4b,0x009440d8,0x007dd8a7,0xfffefa00,0x0031e4c7,
-0x0010313b,0xff926b5e,0xff6579c7,0xff4fcc08,0xff2be812,0xffe264cd,0x00311747,0xfffc2e9c,0x003e6dd5,0xff40196e,0xfe91d176,0xfe1fc384,0xfe462d52,0xfe955aa8,0xfe9468fa,0xfec5964e,0xff364d4e,0xff3628f1,0xff55c2b3,0xff8bd8b5,0xffe01778,0x001f5be4,0x0056c0ab,0x003f5d76,0x0042ef0e,
-0x0066472d,0x00572c92,0x005f0473,0x003e933a,0x00820f0c,0x008525da,0x004c5b68,0x00028dad,0xffe6bcac,0xffe8bfa4,0xffea967c,0xffef066f,0xffd640a7,0x003a5d4d,0xfff6f105,0xff1b2537,0xfed5c680,0xfeb883be,0xfeb2c040,0xff21251f,0xfe1df144,0xfe8882e8,0xff249501,0xff8a6f4d,0xffe2277f,
-0x006ce77c,0x00876bae,0x0061629d,0x003fb515,0x003879a0,0x0038ee2e,0x00834736,0x00887669,0x007a8e87,0x005fb379,0x00501325,0x00594d43,0x000cc9ad,0xfff491a0,0x000abfcb,0x004c8417,0x0059dd55,0x004aacb5,0x00044a7f,0xffdbb252,0xffa92552,0xffa0cf11,0xff8bf7a7,0xff7a499a,0xff4ce5b2,
-0xffa17c0f,0x00703bf4,0x0022241a,0xffbad945,0xff26ea22,0xfe72378c,0xffab6ca4,0x001fbe8d,0x007f70b3,0x009c5aee,0x00f9fce2,0x00eb3fa4,0x00dbff0a,0x00e5b8b8,0x00f3b252,0x00ec1c5d,0x01037fcc,0x00c58d2b,0x00b6f9d5,0x00871849,0x0068ae33,0x0037af89,0x0017dd69,0xfffdd72d,0xffe044b4,
-0xffd44c58,0xffa2ea00,0xff6b2637,0xff3d5b8c,0xff226238,0xff0b160a,0xfee97198,0xfefc0e4c,0xff02fda2,0xff18673b,0xfee7ed0a,0xfea1467a,0xfe4ec55e,0xfe68a5ee,0xfe983d2c,0xfec3e5b0,0xff4e466c,0xffc20ff2,0xffe433a2,0x0014ecad,0xfff5c37c,0x001091d0,0x0012f622,0x001ddaf0,0x002f8aba,
-0x001a72ab,0x00103f5a,0x000d759d,0xfffb2a54,0xfff3bf85,0xffebee62,0xffe3a450,0xffd12480,0xffbc2619,0xffa9c4cd,0xffaba9c3,0xff6cf0c0,0xff5485dc,0xff462d32,0xff30acde,0xff17ec19,0xfefda210,0xfedf29ae,0xfee71752,0xfee8ef76,0xfeed10d2,0xfef6c248,0xff106ec6,0xff1c090a,0xff531153,
-0xff74a253,0xff8e2199,0xffa8216f,0xff868496,0xff8eb8ed,0xff9aff3c,0xffac936e,0xffc12020,0xffa289d3,0xffb6f091,0xffd13e7e,0xffc9b81c,0xffc6d92b,0xffbea220,0xffc0793b,0xffbc878b,0xffb9e87b,0xffa11346,0xff8a9466,0xffa9d6f8,0xff8a29f0,0xff7a0218,0xff5cacd4,0xff5b54ab,0xff4e7e4b,
-0xff443a19,0xff3a5f7c,0xff322280,0xff24ef5d,0xff2d454c,0xff312392,0xff354ec0,0xff394afa,0xff3b0831,0xff3a5dc4,0xff473784,0xff5511cd,0xff68be0f,0xff7625b6,0xff47f9a2,0x004d84fd,0x004f0fee,0x004598d7,0x00498ee2,0x004b0d0f,0x005840a1,0x004058ab,0x004277f5,0x00467cae,0x004f31c9,
-0x005175ad,0x004f6461,0x00530f2f,0x0050a35f,0x0043ffea,0x0041d9dd,0x0042d16d,0x0051f296,0x004f7c5c,0x004f7b91,0x004e7be5,0x004cb4b9,0x0049b4b9,0x00460870,0x00476c7c,0x00437d84,0x003a8162,0x00395a1c,0x0038f32c,0x0038d3e4,0x003f2359,0x00424812,0x00414635,0x0047cd3d,0x0049c8ca,
-0x0043b02b,0x004e94e0,0x005bb4d7,0x0052eec9,0x006d3119,0x0065e647,0x006f1db6,0x003fbc40,0x00337964,0x00380736,0x00546806,0x0066beb1,0x005d4ed1,0x006f3626,0x00612ffb,0x003ca50e,0x00400871,0x0044e7b4,0x006619e0,0x0066437b,0x00781a61,0x00703ceb,0x00602340,0x0057668a,0x00498279,
-0x004ea185,0x0044b93d,0x0028e7ec,0x0023b6e3,0x0022e4c5,0x002985ec,0x004078bc,0x0044e804,0x003e8849,0x00446a4c,0x0043b9d0,0x0039d59e,0x00531404,0x007cf377,0x0051676f,0x00693629,0x005b029a,0x00893bc5,0x00315ce0,0x0029b11e,0x003b6db9,0x00637933,0x0076b560,0x006704ec,0x007e8de9,
-0x006f82bf,0x0022e571,0x003aed9e,0x00432f93,0x00799ee2,0x007b6b50,0x008f0ed0,0x0095a96a,0x006dffd5,0x00644924,0x00459b82,0x005271c9,0x0035dbb5,0x0004bf28,0x0003c200,0x00087ed5,0x00159c56,0x002b553b,0x003cdb76,0x00348b0a,0x004b61b8,0x0057df46,0x0041ff39,0x00813f16,0x007d7ad5,
-0x006b8a5e,0x00afdc6a,0x00d27036,0x00f13544,0x003f8ae1,0xfff3af6a,0x0029e02e,0x005c5e04,0x0093cb46,0x00b18a62,0x00806f2e,0x00463c38,0x000caa75,0x00594f38,0x0061177a,0x009dacb6,0x00bd970e,0x00ed8d93,0x00effe7d,0x009e0a4b,0x00756f55,0x003d58f9,0x004a7909,0x002b3d54,0xffc80117,
-0xffb959be,0xffcde44f,0x00047b6b,0x004a5387,0x003d588c,0x002c0991,0x002dd8e5,0x001d1e7f,0x0000eb9c,0x005c3ab8,0x00ea87da,0x005f692b,0xffdefe08,0xff58d0ba,0xff09a162,0xfffd2db7,0x00a075e8,0x00fb961e,0x0111bb16,0x007e7025,0xffd89190,0x00121708,0x003d6ccc,0x00844e1b,0x00b398ae,
-0x009985a8,0x0085c159,0x00521955,0x00414400,0x002da8f2,0x00246f3b,0x004e6347,0x0072cfad,0x00624ab9,0x006084c7,0x0057e06c,0x01300e9c,0x00fc3fff,0xffa4b9fc,0xffcf6bde,0xffef4ba3,0x0064a103,0x007744d7,0x00f029bf,0x01f4fd90,0x015a562c,0xff0628d1,0xfee97c3a,0x0108e1a2,0x01400b1a,
-0x001bd8f4,0x004a732e,0x0004f7bc,0xffa70831,0x000989cb,0x00572e55,0x008fcc77,0x003f16cb,0x0025301e,0x004f5615,0x005ae844,0x00965384,0x00937911,0x0090374a,0x008c0ea2,0x004980ec,0x009dbdd1,0x008bbe9b,0x001527d6,0x00216ddd,0x0042bcf6,0x00768135,0x009af6f5,0x0079a651,0xffa90ac9,
-0x006f2f09,0x001db5d2,0xfead728a,0xff31d9e9,0xff3a127d,0xfeeea9aa,0xff1a2d2e,0xffa6168c,0xffbb5388,0xffc3709b,0xffcde7fb,0x0039f725,0xffdd41f6,0xff7fc97e,0x00345bf7,0xfffeb7d9,0xffe31252,0x00139eda,0x00228bf9,0x003725f2,0x0033609d,0x002a3037,0x0059bde6,0x00267cec,0x00115bb2,
-0x001f1132,0x0021487c,0x009aa372,0x00a5435b,0x003ec965,0x00620d2e,0x00333aec,0xffed7e65,0x0020c2d8,0x0060383a,0x004f6109,0x00be1216,0x00fc0a35,0x00ec5c8e,0x006be67b,0x00053421,0xfff7a8af,0xffbc0c17,0x00082fe7,0xff9ce3e1,0x0005332b,0x001de360,0xffc00fa8,0xffbd7bc5,0xffd52a1f,
-0x004318c9,0x0015a491,0x0036b391,0x003edefe,0x00194e91,0x0020d6c9,0x004c4a1a,0x005c19a7,0x0086b1d7,0x007d24a7,0x00837f13,0x00891967,0x004ac949,0x007191b4,0x0084b5b7,0x007d93ab,0x006a9472,0x00551f2b,0x001d1ba4,0x002e8e6b,0xffe7a9b4,0xff4689bc,0xff5f2eb7,0xff65a43b,0xff68f5bd,
-0x001bc008,0x006330d4,0x0044e24b,0x00325daf,0xffb57210,0xff76c2a0,0xfec00ddc,0xfe74ab5e,0xfe65f8ec,0xfebfd11c,0xff08706b,0xff4733bc,0xff5e0ee4,0xff7423e7,0xff8bcfaa,0xffc197a6,0x0002dfb9,0x0060ab06,0x003fa079,0x0044c955,0x00573911,0x0064475f,0x0065dba2,0x001f0e63,0x006ca8f5,
-0x00826dac,0x00623cf5,0x0042df4f,0x00261381,0x0015cd6e,0x00168017,0xfffef92c,0xffcd78a1,0xfffd9a19,0xffdbff1f,0xff5c3c19,0xff1aeca6,0xff094028,0xff1ecc63,0xff889305,0xfe27332c,0xfe297350,0xfe6df61e,0xfeeabcb0,0xff6f8d60,0x0001b58b,0x0014086d,0xffc4e8a1,0xffbe609f,0xffce7de7,
-0xfff2a586,0x005c1d31,0x007ce1b2,0x006d87d8,0x00474776,0x00352549,0x0034e3b0,0x00177af4,0x00172c06,0x00268206,0x00702b1a,0x00768dad,0x00458729,0x002d7e75,0xfffebfd1,0xffe22da1,0xffbb0e36,0xffa55be5,0xffb98287,0xff5ce019,0xff7b73f5,0x000873a9,0x00394a85,0x0004d1d9,0xff59271e,
-0xfea3ac9e,0xff5a1ced,0xff8c02db,0xffe0fab1,0xfffd20e0,0x00460060,0x0044ce21,0x004b5bd2,0x00667f4f,0x00912322,0x009f8df4,0x00cfd777,0x008d03b1,0x0080aadf,0x0059a776,0x0047c48a,0x00264b1b,0x00114c5a,0xfffdbd8c,0xffecab51,0xffd454a7,0xffb85854,0xffa421a7,0xff94d6aa,0xff7d413e,
-0xff64c833,0xff46571d,0xff513b07,0xff52c084,0xff608a1d,0xff509be2,0xff3b2697,0xff1177a5,0xfef4ed50,0xfeec4006,0xfeef047a,0xff30354f,0xffab9558,0xffcaee5f,0xfff1e66f,0xffe3001e,0xfffc3ea7,0x000333ff,0x000fc672,0x001d59f5,0x000ba57f,0xfffd8ef0,0xfffb834c,0xffee8967,0xffeb183d,
-0xffe5cc21,0xffd05ccc,0xffb901ef,0xff9e2681,0xff867387,0xff6c99c3,0xff511dab,0xff3efc60,0xff295c69,0xff140ad6,0xfefbe06e,0xfee806ea,0xfecdddc2,0xfedde58e,0xfee4caca,0xfee6fc28,0xfeee4c5e,0xfef8ad78,0xff04423f,0xff33d8c9,0xff59eb93,0xff75d2f1,0xff9092df,0xff705cfd,0xff7a592f,
-0xff7f4759,0xff8b33cd,0xff96a169,0xff8ade2a,0xff974b89,0xffa8373a,0xffa120fd,0xffa000b9,0xff97ea79,0xff99e531,0xff95c29c,0xff94ec5b,0xff813c9b,0xff75cc9c,0xff7af34b,0xff6a09db,0xff6026e9,0xff5991ca,0xff50e9b9,0xff46d5f4,0xff3db429,0xff357576,0xff2d5c54,0xff20d1ef,0xff25e6f6,
-0xff28123b,0xff2cfc2a,0xff305bf0,0xff33697f,0xff30f688,0xff3d299d,0xff4782f7,0xff567312,0xff627e1b,0xff32d52a,0x0045ca55,0x00483597,0x003bbf10,0x0041962d,0x00436bdf,0x004b1f45,0x003a1dbe,0x003eb5f0,0x004021a8,0x004b2b04,0x004ea15a,0x004b221a,0x0052b84d,0x0050a698,0x0040d80e,
-0x003e9be2,0x003cfea2,0x004f5b97,0x004896d2,0x0045c08b,0x003ea35c,0x0040fae7,0x003fbb44,0x003f5033,0x00416a73,0x00404bd7,0x003beaed,0x003a297c,0x0039af56,0x003d605b,0x00396546,0x003a5a16,0x003d2893,0x003eb574,0x003f17cb,0x0038efd9,0x004662ec,0x004aa924,0x003ecce0,0x005baf5c,
-0x004ed15a,0x0053286a,0x00379432,0x002fb685,0x002bfdac,0x004b5216,0x005d5397,0x0055bcdd,0x00703b95,0x00626183,0x00385eba,0x0039ef85,0x003d87d8,0x0060fed8,0x0057ccb5,0x0064c470,0x00505f78,0x004862f7,0x00465d69,0x0044136d,0x004bc873,0x004887cd,0x00387e3e,0x0035616e,0x00357c01,
-0x0045ae54,0x004085d0,0x003b80f6,0x003d668c,0x00359e17,0x00337c69,0x00287a33,0x0045068e,0x00736112,0x0040f636,0x004f1a17,0x003d77a8,0x00573a44,0x0025efaf,0x0026ae44,0x002bfb50,0x005ac61f,0x00711608,0x005e0270,0x0089a90d,0x007e2547,0x00223a42,0x0035f386,0x0039c0aa,0x0078d13d,
-0x0064467a,0x006cea43,0x005ddff6,0x004884d2,0x004b0780,0x0040abe9,0x00517540,0x00475654,0x002cfadd,0x002c38a3,0x002b6e0e,0x004a8765,0x002b31e9,0x002f0a3c,0x003cda6b,0x0038eb21,0x0039b2a9,0x0022101c,0x006d779b,0x0053ea3b,0x0044555a,0x007c08f1,0x0093b00c,0x00a0bc07,0x002ce3b5,
-0xfffbf1e9,0x000c9c3b,0x004e8ef3,0x0088553e,0x00917b34,0x00947080,0x005ada55,0xfff64f08,0x0044385d,0x0053780c,0x00a2f897,0x009ae7e7,0x00b533d8,0x0092f560,0x005be5d3,0x004ce773,0x003ae7b9,0x0053de57,0x004cbe04,0x000dca80,0x000d9107,0x001f45d4,0x006f3540,0x006075db,0x00341cc7,
-0x00371659,0x000d342c,0xfff9ccb6,0xffdae1f7,0x003f9f92,0x0104e002,0x006519f5,0xffcab55c,0xff439fb5,0xff14d5a6,0xffdfe7fa,0x006c6b67,0x00c1b751,0x01239f80,0x00aeb0ca,0xfff25769,0x0006892c,0x0032e0f4,0x00a1f985,0x00a5d835,0x0086cd6c,0x00785fb7,0x00356043,0x001b8906,0x00098e99,
-0x002adb22,0x005a37c9,0x00798931,0x0065f40c,0x0064f619,0x006cb460,0x00ee188f,0x00988900,0xff8331b8,0xff87b739,0xffc1d44e,0x0087f29a,0x0086c257,0x00d0de95,0x018015dc,0x0140c8bc,0xff0b1dc1,0xfe3cbda2,0x0134dc4a,0x01a913cc,0x0000e5d1,0x006c2095,0x002ada3c,0xffb280bb,0x000a9a6b,
-0x00557f60,0x00a6ddd1,0x00507241,0x002e5c9f,0x004fe3ef,0x00731d41,0x00ae9a94,0x007b684a,0x00787f3b,0x00715f67,0x003df335,0x009c6f24,0x008dcb7b,0x003763db,0x0050705e,0x006b3983,0x00910463,0x00821b54,0x0054d1b5,0xffa0ba39,0x009ede81,0x0029150e,0xfe531efa,0xff17afd7,0xff5b2495,
-0xff30cd5e,0xff49ad6b,0xffcddf21,0xff9a63c2,0xff9dbe81,0xffb5e9c3,0x004709f4,0x0033ff48,0xffe4c743,0x0045b186,0x001f71c0,0xfff812a0,0x002050ef,0x001f0379,0x0036e3d8,0x003b6230,0x001783f6,0x00318049,0xfff9f73e,0xffefd7ac,0x00039dc0,0xfffe6811,0x005baa4c,0x006bdafa,0x0031607e,
-0x002846fc,0xfffd3e9e,0xfff7edc5,0x00379ff3,0x00792ff0,0x0045d819,0x00b2e0b8,0x00d6aede,0x00c446c4,0x005053eb,0x00021c66,0x005bf08f,0xfffc7e30,0x001844ae,0x0009bb01,0x003df40e,0x0055f745,0xffeca4ef,0xfff05ff1,0xffe57a5d,0x00073fe6,0x0002a708,0x001e2cbf,0x0032bea6,0x00145a7b,
-0x001e3728,0x003c070b,0x005466bd,0x0079864b,0x0052b403,0x00543970,0x005e8357,0x0036e251,0x00539d85,0x00633b8c,0x0060d317,0x004d4806,0x003ff801,0x002f72c3,0x002c28dd,0xffd19ac1,0xff151df5,0xff63739e,0xff7549e8,0xffa2f31a,0x001c3371,0x00658b94,0x008f856f,0x0025f53f,0xffd25099,
-0xffa549a8,0xff157d72,0xfea0cd9a,0xfe4fa9fc,0xfed12796,0xff24624d,0xff595a41,0xff89d3bf,0xff9cf16f,0xffa1d1bd,0xffb54ef6,0xfff0e011,0x005d21bb,0x0039889f,0x003bbdf2,0x0031d1e7,0x00622915,0x0061cf94,0x001caea8,0x004d2a3f,0x006d7f2c,0x008daf3f,0x0077434e,0x00506387,0x001a0201,
-0x001d36e3,0xffef8fb2,0xff9fcabc,0xffb1a4cf,0xffb6ad4c,0xffaeeda2,0xff70b57d,0xff5c0f48,0xff8a1f28,0xffc64d37,0xfe79f360,0xfe463110,0xfe4d816a,0xfebd6d40,0xff53c01a,0xffade3e3,0xffb39648,0xff6ab090,0xff6cc790,0xff89841c,0xffc5402e,0x001e730a,0x0048be2b,0x00552925,0x002e4d48,
-0x00232733,0x00203d43,0x00302f1d,0x003b94a2,0x0039dae9,0x006d6744,0x006c5bbb,0x004865d7,0x003344ef,0x000df5de,0xfff595d9,0xffcd57fe,0xffc54851,0xffe52640,0xffab2ceb,0xff77ff5a,0xff4d2047,0xffbaaa4c,0xffc3776b,0xff51fe56,0xfeda05c4,0xff233ace,0xff23ea3d,0xff6c8bf6,0xff7ff302,
-0xffb49508,0xffc1447a,0xffda06fc,0xfffbdaaf,0x0036235e,0x00533de6,0x008d678e,0x005bb333,0x00570ac2,0x004469f5,0x002db4e6,0x0012c3a2,0xfff95dc5,0xffe58626,0xffd57e7e,0xffbf21f7,0xffd14df9,0xffe33796,0xfff9481a,0xffe30bcb,0xffc94624,0xffaba978,0xffaadcf4,0xffa23a2e,0xff9d3038,
-0xffa79262,0xffc1342c,0xffc8cac0,0xff8bd799,0xff515216,0xff2dab3a,0xff2c2e11,0xff9ce55c,0xffb77c30,0xffdafed5,0xffd9295d,0xfff24302,0xfffb3f4c,0x00074bbf,0x0017a591,0x0005d586,0xfff97a59,0xfff64ead,0xfff09228,0xfff07b80,0xffeed654,0xffd4a587,0xffc4108d,0xffb1990c,0xffa0cabe,
-0xff7bc02a,0xff845b7b,0xff72e4aa,0xff581b3f,0xff44e9b1,0xff2e1e16,0xff203884,0xff0da0ff,0xff176495,0xff18f59e,0xff144587,0xff0fb467,0xff01e65d,0xfeffb1ea,0xff20580f,0xff47fbde,0xff6487ae,0xff815896,0xff75e24a,0xff7fba07,0xff79443f,0xff7ddc34,0xff7f3d09,0xff89e635,0xff8b068d,
-0xff93c5b4,0xff8e4d56,0xff8d6f5d,0xff85f95a,0xff858805,0xff7fbbf4,0xff7d928b,0xff7c38a7,0xff80f089,0xff65f8da,0xff69e230,0xff6a96fc,0xff7913af,0xff6b4962,0xff65fb44,0xff5e9fb7,0xff5a1cb5,0xff543580,0xff4b4c0c,0xff4ade51,0xff497d4c,0xff4ae42c,0xff4b3804,0xff4d2c6f,0xff465536,
-0xff538e78,0xff5a0040,0xff635bf7,0xff6bb0f9,0xff4accb6,0x003c1ec0,0x003d2408,0x00321995,0x0037d39e,0x003903ac,0x003decd6,0x0033ac0b,0x0038391f,0x0038623a,0x0042899c,0x0046b56c,0x0043f95f,0x004e218b,0x004c5657,0x003b38a6,0x00388308,0x0034c085,0x0047aec0,0x003dca0b,0x003a5644,
-0x0031a90b,0x003513d1,0x0035718d,0x00387b25,0x0039e5b5,0x003a2108,0x003876f3,0x00352bff,0x00346156,0x003b11e9,0x003288e5,0x003251ac,0x00371793,0x0033abb1,0x0032618a,0x002bcc1e,0x003a2eee,0x0037c2b9,0x00284775,0x003e4a2a,0x0037cd4e,0x003f002e,0x00322b79,0x002df019,0x00260c90,
-0x00423151,0x00518cff,0x004d623a,0x006c28ab,0x006058d7,0x0035ddec,0x00346489,0x0035e947,0x0055c65c,0x00489857,0x004d3cc1,0x003620a9,0x003331ab,0x00358f0d,0x003dfac3,0x00437a87,0x004296fa,0x003acde7,0x003553fb,0x00376a82,0x004ff727,0x003c2f55,0x003378c3,0x0039325d,0x0024cca1,
-0x001f33e8,0x00143c93,0x0033b38b,0x005c05d6,0x00300e04,0x0035ec34,0x00276ac8,0x0037a8f9,0x00228936,0x0029a37e,0x0027dcf7,0x00522871,0x00699667,0x0059cbec,0x00906dac,0x0087a54a,0x0029b94f,0x0034b956,0x0032881b,0x006d6e8c,0x004f148b,0x004c12d1,0x0032e655,0x002b45a1,0x0034e2ab,
-0x0041212d,0x004d968b,0x004dd196,0x003fb93a,0x00376f1c,0x00319ec4,0x00637de3,0x002c03ab,0x0029572a,0x0040ecce,0x0022b8b0,0x00194448,0xfffe6ec6,0x004b1df8,0x002809ce,0x0014717e,0x0035ba69,0x00560227,0x006d9469,0x0027a4f0,0x000c872a,0x0001e53a,0x00437aea,0x0075f867,0x007138b7,
-0x00a3246b,0x006e5508,0xfff1e3cb,0x00350ccc,0x004eac2b,0x00aa4f07,0x007ac050,0x0075e6de,0x00405321,0x0021e309,0x00274815,0x003bb5d9,0x00517e69,0x004e96e6,0x0028de74,0x0026e1ae,0x00405d7b,0x00a9fc65,0x00672b0a,0x00329b59,0x003c38c3,0xffe848d5,0xffcb6d89,0xffafc34d,0x0018c7fd,
-0x01032d20,0x00891ff4,0xffdd2e85,0xff49e057,0xff064aa1,0xffce2685,0x004befbb,0x0081a449,0x0121c896,0x00d668e7,0x00198939,0x00020721,0x002d7e70,0x00b63fa3,0x008f86f1,0x006d72b2,0x00676e3a,0x0023a4e8,0x000964ed,0x00093f05,0x0040b9e5,0x0061816d,0x007cdda6,0x006c8772,0x007dee9a,
-0x00af00e9,0x00a85d46,0x0028d236,0xff5ab349,0xff658fdb,0xffbb438d,0x009b9d31,0x00aad325,0x00d2495b,0x011c20de,0x0103c276,0xff2cb92c,0xfddf4a60,0x011c2130,0x01c312c4,0xfff3c631,0x0084b8e8,0x004765a0,0xffdb9227,0x000fc5c4,0x004c939d,0x00aecfd1,0x0067af05,0x00438206,0x005187a4,
-0x0086c2b1,0x00b753f4,0x005bf21f,0x0060565f,0x0060bf4e,0x0043f3be,0x008bd902,0x008aead5,0x006cd712,0x006b890d,0x0078fb9e,0x0089ad8e,0x00742e55,0x005042f6,0xffbd930e,0x00c0d627,0x0054c9a4,0xfec208ca,0xff3c1a9c,0xff702e08,0xff770959,0xff8e81e6,0x001cce2d,0xff763838,0xff72f7f3,
-0xff8e5ec0,0x00246acc,0x005a917c,0x002c17bd,0x00399e72,0x0035f2b1,0x0014f577,0x002a3cd1,0x00209065,0x00378e6e,0x004085c2,0x0009dcea,0x000700e1,0xffd07619,0xffd6b06e,0xffec8899,0xffe3bb81,0x0022ebc7,0x0039fac1,0x00377cbe,0xfffcb32e,0xffd61282,0xffd3d89a,0x00420777,0x00918ad9,
-0x00466a91,0x00c58fa2,0x00be3ecd,0x007e0aea,0x003c2ab9,0x001b0d4c,0x00ab3bd0,0x00541c3d,0x003b7f76,0x00725b2b,0x0075c5d9,0x006c7e8b,0x0004a4f5,0x000b72e1,0xffee1720,0xffd8442f,0xfff3f6a1,0x000b0bcb,0x002670e7,0x00165896,0x001e4566,0x002def35,0x004a87c3,0x00641499,0x002d6cc7,
-0x002d771d,0x00337c62,0x002cf037,0x00486637,0x005566cf,0x006151df,0x003dfdd7,0x0024799f,0x0026923f,0x00147a72,0xffb9fdb2,0xff13ead3,0xff7dc2f1,0xff96d9fe,0xffc45b7e,0x000d53a8,0x0059921d,0x00ae7269,0x0036c80f,0xffcaefc4,0xff7dedd2,0xff2ff811,0xfec3513a,0xfe45691c,0xfebba07c,
-0xff15a648,0xff61b3e3,0xffa7654f,0xffc22a1d,0xffc305df,0xffba0b15,0xffe97ff1,0x00464940,0x002fabb8,0x002f5bdd,0x000c0bf6,0x00490b07,0x0050c9e7,0x00274839,0x0022c1d4,0x003c428d,0x00847236,0x006666f3,0x0048843e,0x000ece52,0xfff25efb,0xffd2ae12,0xffaaa25b,0xff878cc2,0xff97dd40,
-0xffea8763,0xffb09577,0xff9bfa35,0xffb81fbc,0xffe0229a,0xfedfde7a,0xfea51906,0xfe8f8466,0xfee58186,0xff7777d3,0xff8814f8,0xff7989a1,0xff411292,0xff43aa40,0xff61645c,0xffa136eb,0xffd65f0c,0x0005170a,0x003d3713,0x001d203b,0x001fcac1,0x001cdbfc,0x00471bc8,0x0050c7d9,0x00482cee,
-0x00580875,0x00598ea1,0x006982ea,0x0039367d,0x00210b71,0xfff5d1c7,0xffda3feb,0xffccec68,0xffccfd0d,0xffca42a6,0xff7d3c54,0xfef67aba,0xff1c1db9,0xff3db8eb,0xff4492a9,0xff0adc4a,0xfeeece7e,0xfecb9b98,0xff0a59f9,0xff1837eb,0xff3ede14,0xff5fabec,0xff8de0bf,0xffbb0134,0xfff47a26,
-0x0016bc43,0x004e988e,0x00392339,0x004051dc,0x0043f423,0x00234b7c,0x000b75fb,0xffed1bab,0xffe262d4,0xffd52299,0xffd91ce0,0x000bf35d,0x002bc01b,0x00584945,0x003a3c80,0x00206b3f,0x00038d38,0xfff812c9,0xffe9673a,0xffd69828,0xffe613cc,0x0006d7f3,0x00249381,0xffe0d110,0xff8d905c,
-0xff4b76f5,0xff19ec60,0xff93d14e,0xffa3bb01,0xffc525ef,0xffcca021,0xffe3e227,0xffeac94e,0xfff454cf,0x00069884,0xfffb9a4b,0xfff78c15,0xfff7b70d,0xfffdc02d,0x0004feda,0x000d2de7,0xfff11291,0xffe49e94,0xffdb26ef,0xffce3424,0xffaad406,0xffb65bac,0xffa7d75a,0xff9437cd,0xff88ac02,
-0xff7afc27,0xff74e3f2,0xff6d8ed0,0xff6ba7d3,0xff64a9ac,0xff59c8f6,0xff4b53d9,0xff31ce91,0xff22941c,0xff3136ff,0xff505bbd,0xff66e249,0xff7fb3b1,0xff98f7dc,0xff9f5608,0xff915d19,0xff8e04b3,0xff839f7b,0xffa4fc98,0xff9b53a0,0xff97f30e,0xff978b77,0xff98d17b,0xff9508f1,0xff940bbe,
-0xff8ec00e,0xff8d9850,0xff9e7ff1,0xffaea04d,0xff7966bf,0xff8d8850,0xff964588,0xffaa6fd3,0xffa09ac7,0xffa00e26,0xff9c0654,0xff9c5863,0xff9ab36f,0xff9812a6,0xff92b2c8,0xff8ead37,0xff8c4119,0xff89cd3e,0xff8960b8,0xff812bd1,0xff8b8bd1,0xff8d6336,0xff90dc6d,0xff939101,0xff93ff31,
-0x00310c06,0x00308341,0x002b8874,0x002e5c50,0x002f1422,0x0034280d,0x002ce442,0x0031aaaf,0x0031999c,0x0039f59b,0x003e0fa9,0x003cac5d,0x0047558d,0x0045dc0e,0x0036189e,0x00312e18,0x002a57be,0x003c7c18,0x00318a20,0x002ef5c9,0x0027d503,0x002aa826,0x002ba153,0x002ffc10,0x002fa070,
-0x002f2238,0x002c93ec,0x0028a16e,0x0028d388,0x00359646,0x0029de3e,0x00289dc0,0x002d0441,0x0026dcd0,0x0024b861,0x001df43d,0x002c3554,0x00294c8d,0x001f4666,0x0026dadd,0x0028a1a0,0x0031f684,0x002f4511,0x002cbe9d,0x00231ce3,0x003a2482,0x00465ae0,0x004538c9,0x00643c99,0x005b953c,
-0x003515bc,0x002f6ef5,0x002cd7e7,0x00420118,0x00384205,0x00387287,0x0025e3e9,0x00261e92,0x0029c8d2,0x00352879,0x003544f0,0x002fd533,0x00276b58,0x001d9fec,0x00258b7c,0x004f28fb,0x003364c0,0x002ad605,0x002f646e,0x00138c87,0x000b6c18,0x00028bb2,0x00236133,0x004718c1,0x002ef593,
-0x0029b2b2,0x0020b77a,0x0029314c,0x00281b37,0x0032f168,0x002a6954,0x004e1125,0x00653bba,0x0059d37f,0x0094494f,0x008bdd64,0x00370ced,0x003611b4,0x002a553d,0x0050c437,0x003b236b,0x00347730,0x001e0ea3,0x001d81af,0x0028becc,0x003dd9c0,0x003ff06f,0x003d5763,0x002b9d70,0x001aa6d2,
-0x0019556c,0x006b30f5,0x002765a0,0x0021782f,0x00369f55,0x00085f20,0xfffbbfaa,0xffdd354f,0x0029e08e,0x001a62c1,0x0008f5cd,0x000af59b,0x00310404,0x00507bbc,0x002a5264,0x001e1312,0x0006b81c,0x00403e14,0x0064f6b5,0x005a8457,0x00ac8af9,0x007ed56f,0x000134d3,0x0030544a,0x004aea50,
-0x009c55bb,0x005ac610,0x004123e8,0x000f1c2b,0x00059940,0x00154044,0x00365601,0x003d19c0,0x00260cdc,0x0001ce8d,0xfff65f90,0x0026ba92,0x00bd1a10,0x005d97e2,0x002fe2e2,0x00344f08,0xffc497ac,0xffa0e63a,0xff8ec499,0x0000fa3c,0x00c4dab3,0x00a997ac,0x001e9767,0xff8edc22,0xff17faf4,
-0xffd926a2,0x00425e6d,0x00504ae9,0x01113762,0x00f49c5f,0x004b18f6,0x0008a7f8,0x002cac48,0x00ba84cf,0x0075ae7e,0x0052974f,0x00535361,0x0022665e,0x00152682,0x0025288f,0x005a3ceb,0x006b59ba,0x00826ccf,0x007e6744,0x00a0da5e,0x00faf373,0x005ac280,0xffc4aa98,0xff50e53a,0xff6446b4,
-0xffcb41c5,0x0089cb4b,0x00d03c23,0x00e06ae7,0x00cc1490,0x00a5e778,0xff8c8577,0xfddb38b0,0x009b081c,0x01647fa2,0xffef4470,0x0081b86d,0x005ed3d4,0x00190ecd,0x00143590,0x0035813a,0x00abbc18,0x007dec34,0x005bdab7,0x005162cb,0x0090febb,0x00ae6056,0x0042d02a,0x00474cc4,0x004d01da,
-0x0043537e,0x0068bbe6,0x0075143e,0x008ab1e8,0x00841572,0x008a5d1e,0x008845ff,0x0060b78b,0x0042acc2,0xffefe60b,0x00cde922,0x0074d398,0xff379e7f,0xff6b4f48,0xff812485,0xff99c2a1,0xfff119a2,0x006540c8,0xff8109af,0xff7e63bc,0xff9c6048,0x001a0dd4,0x0077314a,0x00535e3f,0x001a9011,
-0x003ccab0,0x002b04cb,0x002f2bf1,0x0024282a,0x00384142,0x004b71a3,0x0004be63,0xffe35b6b,0xffbfd51b,0xffcc5a1d,0xffdb918b,0xffd21fb6,0xfff889fa,0x001c374a,0x005ab4d2,0xffdde2c4,0xffb70bee,0xffdadb90,0x003c7433,0x0087d2a4,0x005b543d,0x00b92433,0x008cd273,0x001fa72e,0x0017f4b8,
-0x0028a33e,0x00bbc0aa,0x00976bee,0x0061bb9d,0x009be173,0x008734f1,0x005d27d6,0xfff60952,0x0006f515,0xffed4425,0xffc9cba7,0xfff847d5,0x0009aa80,0x001cc8dd,0x001f1936,0x0025046e,0x00250d74,0x003a4ff8,0x00478da5,0x0019421d,0x0010bf34,0x0019017e,0x00327ac9,0x004bd37a,0x004fe924,
-0x00622413,0x001b329d,0xfffe0719,0x0017e5fd,0xffefaf3c,0xffb1d962,0xff56e853,0xffb02783,0xffcd22a3,0xfff1a6b0,0x0023dcbb,0x004f806f,0x00829a59,0x0056bdb5,0xffa15cef,0xff68cc1d,0xff2b1516,0xfed3b4b8,0xfe57f30a,0xfea15bb6,0xfef95958,0xff5befb2,0xffad98a4,0xffd6b3b6,0xffde1952,
-0xffcb6e88,0xffe80f23,0x00203942,0x0020786b,0x0025ad32,0x00016d8e,0x00255a9a,0x002d019b,0x002384b2,0xfffdf5f7,0x000da02a,0x0053ff7d,0x004f59bd,0x003bd260,0xfffcb187,0xffdf57ba,0xffc395ad,0xffb90547,0xff621c84,0xff682761,0xffe9a99c,0xffd4cfe7,0xffd1cfcd,0xffdf14e0,0xffca9189,
-0xff2c8f35,0xff063101,0xfef24354,0xff2f01d1,0xffa4f619,0xff7e115f,0xff58e264,0xff2de398,0xff32f969,0xff4b633a,0xff7d33cb,0xff942e54,0xffc80ac1,0x001f97ae,0x00142a7a,0x00238bbb,0x00205605,0x004b63bc,0x0052b06e,0x004de453,0x003cf26c,0x004345c4,0x00737e39,0x003bfbc1,0x0023d175,
-0xfff16061,0xffe246e5,0xffc7fde0,0xffa9fd7d,0xffa45b87,0xff6b76a0,0xff12d1e9,0xfecfdcbe,0xfeda34e0,0xff2545fb,0xff27f29a,0xfed84058,0xfea72888,0xfecee67a,0xfedd7f9e,0xfef76bcc,0xff296c98,0xff69dee8,0xffa2d4a1,0xffd10586,0xffecc859,0x001cd8fe,0x001b6646,0x0032cfba,0x0041996a,
-0x0021a7b7,0x000d45bb,0xfff466d5,0xfffd5baf,0x000025b4,0x001cde9e,0x0048e714,0x00603b9a,0x008870bc,0x0069e888,0x005353eb,0x003925e8,0x00247e6d,0x000f915f,0xfff2370a,0xfffbe059,0x0009591e,0x001eb731,0xffe03cdf,0xff9276d6,0xff4452ee,0xff067b79,0xff900c3a,0xff921824,0xffac6cfa,
-0xffbdf1d4,0xffd07636,0xffd89e63,0xffdf797c,0xffefb37f,0xffedb044,0xfff17621,0xfff8a5bf,0x00056631,0x0011f6be,0x002436f5,0x000ab43e,0xfffe71f0,0xfff5447f,0xffe75bc9,0xffc64dfc,0xffca1cca,0xffc524fd,0xffbe0b3e,0xffbb60ae,0xffb9d466,0xffbd31d2,0xffc25767,0xffb8e037,0xffae7b68,
-0xffa291b3,0xff924534,0xff7b4a64,0xff69a4aa,0xff66e387,0xff738786,0xff7dbbee,0xff89a8fa,0xffc2cf47,0xffc32f12,0xffb99cb0,0xffb3cd05,0xffa7d681,0xffcb20c0,0xffc161e3,0xffba1742,0xffbf625f,0xffc4a97f,0xffc58291,0xffc7d97a,0xffc60bbc,0xffc8ac04,0xffd5ed39,0xffe3de35,0xffb246bd,
-0xffc55af5,0xffcd5902,0xffdca1dd,0xffd90dd4,0xffdb14b2,0xffdab27d,0xffdd7942,0xffde1004,0xffdfa8bb,0xffd8d905,0xffd4a1b4,0xffd0ce0e,0xffcd13f0,0xffcad6a6,0xffc4bcf1,0xffc8deb0,0xffc6fe14,0xffc55942,0xffc2cf5d,0xffe17050,0x0025069d,0x00240951,0x0026edf7,0x00285545,0x0028b046,
-0x002c1d8d,0x0026537d,0x002c13ba,0x002c0fa4,0x00332b77,0x0036b7f5,0x003631dc,0x004067a0,0x003f47f7,0x00324b62,0x002a3249,0x00200fa1,0x002f0494,0x00272763,0x0025de67,0x001eaa76,0x00219ca6,0x002226ef,0x0025a54d,0x00225deb,0x001f7e98,0x0018fca7,0x0016bbb0,0x00190660,0x002bfc5f,
-0x001fb05e,0x001ea5b7,0x0022b12b,0x001a8445,0x0017b340,0x0011e847,0x001dfd15,0x001b5aee,0x001fd118,0x001d7a5b,0x00218cb8,0x0029b9ce,0x002fa4af,0x002cd7e3,0x0020d0f3,0x00333638,0x003dcd51,0x003fa96a,0x005bf035,0x0055a50f,0x00361431,0x0029c956,0x0021408c,0x00293538,0x0027e35d,
-0x002a46d5,0x001cad6f,0x0020c410,0x0023d82b,0x002ac28b,0x0020d3e9,0x00124fea,0x000353a0,0xfffa1350,0x000a1bfa,0x004418be,0x00281bfd,0x0022e3b2,0x0024458c,0x00043b24,0xfff901c8,0xfff4ef75,0x00119aa9,0x0036bbe1,0x00403478,0x002e7e83,0x0025db52,0x002312fb,0x002e9232,0x003d1d2b,
-0x002ef2e7,0x004eb792,0x00638f4c,0x005e80f8,0x00964a57,0x008e49a3,0x0046b159,0x00360806,0x001ee1ca,0x002ae86f,0x002a577f,0x00292b62,0x00187c9d,0x001d683b,0x0025dba8,0x003631d1,0x0027392c,0x0017033a,0xfff505a0,0xffe53bf2,0xffefce8e,0x005ef318,0x001f344b,0x001db08f,0x002dc69e,
-0xfff556e2,0xffe3dc14,0xffd113bc,0x000e5193,0x00165851,0x0019b410,0xfffe0209,0x00225bfd,0x00402e10,0x0038803b,0x0031bce1,0x00132cce,0x00445602,0x005ca558,0x005685dd,0x00b6101f,0x0090d4a0,0x001e4ce1,0x00333efb,0x0040f9ed,0x007154bc,0x003b4ce0,0x0022a643,0xffff9018,0x0009272a,
-0x0019cb47,0x0031eda8,0x0017c953,0xffdf37a4,0xffad7937,0xffa2069d,0xffef737c,0x00acb5b5,0x004b3eb1,0x003119b8,0x002c14de,0xffaaa3a4,0xff7d88bb,0xff89085b,0xfff05dec,0x007a907c,0x00bafa82,0x006d3f8e,0xffeec7d8,0xff3fe682,0xffdbcc77,0x00383820,0x003dadb0,0x00f163b7,0x010046b2,
-0x0081835a,0x0018ddb2,0x002c03a3,0x00ae7cf5,0x005c5daf,0x003f65db,0x00491772,0x0035d764,0x003908a1,0x0047737d,0x006993af,0x007095f9,0x0084f091,0x008a9e94,0x00b397ee,0x011e5f68,0x0012167f,0xff74c7ea,0xff4e6b8a,0xff80e5a4,0xfff1f177,0x0060dc2b,0x00f6d625,0x00f87377,0x0082badb,
-0x004e576b,0xffe7eba2,0xfe1d3e54,0xffc9c19d,0x00a02cd7,0x002b6faf,0x006d9841,0x0060fc01,0x00532f9e,0x001f099d,0x0025e805,0x00a1c13d,0x00946b63,0x0075e033,0x004dc6f9,0x008db5f4,0x00973efa,0x0035fecf,0x002f9031,0x0031e59a,0x003dea58,0x0049262f,0x00645ab6,0x00a728ca,0x00a49f01,
-0x009b8953,0x008dee69,0x00453723,0x002d41fe,0x00254e3a,0x00bed787,0x007336a7,0xff7b8372,0xffa1a26a,0xffa50daf,0xffa4d31a,0x004681e5,0x009bceaa,0xffce2971,0xffca353d,0xffe009b1,0x002e58c8,0x0089aa94,0x006b72b7,0x00060681,0x003856f8,0x0034af0a,0x003075fe,0x00272ff3,0x00383db7,
-0x0056726f,0x00072dd8,0xffd0f259,0xffcbfb74,0xffd07cac,0xffd15d30,0xffceca27,0xffdcf1a0,0x0003c720,0x005ecd16,0xffd0d551,0xffbe6468,0x00004aea,0x003f05a8,0x006fc7ea,0x00752fd7,0x00695878,0x0021d3b3,0xffcb2fca,0xffd88efd,0x00199494,0x00ad058c,0x00b9a7b5,0x006fa230,0x008cc4aa,
-0x00649690,0x002e37fb,0xffd29bde,0xffec2f4b,0xffdd6f60,0xffc7fb14,0x000a96ef,0x00182cc1,0x00185c64,0x002f113e,0x0032b28a,0x002191db,0x002573d1,0x00282083,0x00108997,0xfffb509e,0x000adb76,0x0037d629,0x004eed3b,0x004d0d4f,0x00563f44,0x000ca499,0xffed2f60,0xffee8ca6,0xffd0785e,
-0xffb4e060,0xffb104cf,0xffe01a2b,0x000749d8,0x004aa710,0x0064ee51,0x00668e9c,0x00679db1,0x006ca21d,0xff89b497,0xff7bc0b1,0xff258740,0xfee0d60e,0xfe9e7eda,0xfea8bec2,0xfef0499c,0xff535463,0xffa41314,0xffd96185,0xffe97a02,0xffddd301,0xffe738eb,0xfff4897a,0x000e5744,0x001c2699,
-0x00045f8b,0x000ca279,0x00102bc3,0x002054cb,0xfff77118,0xfffe3856,0x0026ff4e,0x0037ab4a,0x00310fef,0x00031371,0xffea46ca,0xffbe071d,0xffb88fc2,0xff542705,0xff4a9132,0xffb920ca,0xffdbca31,0xfffccfe9,0x00113b7d,0xffbbfdb9,0xff5360be,0xff449a6f,0xff401976,0xff65ae1d,0xffae9d84,
-0xff68b74a,0xff38289c,0xff232fe3,0xff2eca16,0xff42dcd5,0xff644043,0xff667ec1,0xff987847,0xfff72a88,0x000f0902,0x0028a961,0x0025ccf6,0x0041baa3,0x00467092,0x0045835c,0x00244393,0x0025b5e3,0x0047e1e3,0x003a0734,0x001ef067,0xffeedba8,0xffdeb02c,0xffc8ae3d,0xffb444d1,0xff919bad,
-0xff6a031c,0xff44251c,0xfefb03b6,0xfee59ada,0xff06bbfd,0xff339d6f,0xfef00ad6,0xfecb2c06,0xfeda5562,0xfeeb6644,0xfefc2f6c,0xff2fbfdd,0xff715a33,0xffa8fb5b,0xffc30200,0xffca8886,0xffeb93a2,0xfff4e27b,0x001ea2ac,0x0030ab4c,0x001ce30d,0x0010ae86,0x00090d01,0x001b54c4,0x002c1a0f,
-0x0047b77f,0x00599ee7,0x00656f13,0x0077b7ae,0x0068af66,0x006032c7,0x005a3c5b,0x003bc0d5,0x0018f123,0xffed2941,0xffe501a0,0xffdab66b,0xffd76b83,0xffa3b076,0xff6cf98b,0xff2dd32e,0xff08f73a,0xff848dc2,0xff7aee66,0xff94688b,0xffa59e06,0xffb6a8c3,0xffc1a019,0xffc5a140,0xffd414c8,
-0xffd5cf25,0xffdf12ab,0xffebc9e7,0xfff72395,0x0002fd8e,0x001901d7,0x000b43f0,0x000601a0,0xfffe3fea,0xfff4970c,0xffda8b41,0xffe917c2,0xffec21b4,0xffeb09f0,0xffed400c,0xfff33b05,0xfffa350e,0x00046dac,0xfff4302c,0xffea1fbe,0xffdf2e06,0xffd0cce9,0xffbe3f5a,0xffae5b2a,0xff9ed6c5,
-0xff98740b,0xff93f6e4,0xff8d75e9,0xffd7b270,0xffcfd996,0xffd6c2c4,0xffd506d2,0xffd26a7f,0xffe0462e,0xffe0fdcc,0xffe1ee90,0xffea4185,0xfff1ec49,0xfff542f2,0xfffaecb5,0xfffc30d8,0x000083f3,0xfffe5b2c,0x00037582,0xffeae065,0xfff55600,0xfff8d483,0x00034268,0x00017dfb,0x0004af8b,
-0x000658f8,0x0008412d,0x00088a1c,0x000b8f4f,0x0004d641,0x000009d4,0xfffaad64,0xfff5487b,0xfff10b82,0xffec0d8a,0xffea77a8,0xffe6114a,0xffe0dace,0xffdb99c1,0x0007bf1d,0x0018107c,0x001846bb,0x00227ae5,0x00214628,0x00208f7e,0x0021add5,0x001df00d,0x0022c9ce,0x00226794,0x002960b2,
-0x002c496f,0x002c7f05,0x0035a0a3,0x0034b8b5,0x002b4842,0x001eab66,0x001375d1,0x001d950e,0x001a3126,0x001aaa0f,0x0015927b,0x0019269e,0x0018e45d,0x001a4afa,0x0012ea2b,0x000d2fce,0x0003218f,0x00036f6b,0x0007b30d,0x001ded1d,0x00128c41,0x00125fcc,0x0016ef19,0x000d4cfa,0x000a13a5,
-0x0005681f,0x00107ca8,0x0010c67b,0x0022002e,0x001726cf,0x001d5146,0x002252d3,0x003053f1,0x002c68df,0x001b399b,0x002c6079,0x003665b9,0x0039bef5,0x0051ccbe,0x004d051e,0x00358808,0x0020487d,0x00122790,0x000e8f51,0x00171d3b,0x001dc4fd,0x0015d8f0,0x001f0345,0x001f6f53,0x001e429e,
-0x00075d7f,0xfff0ac32,0xffdd9591,0xffd9aaac,0xfff04768,0x00306abc,0x00183bf2,0x00158fb3,0x00152849,0xfff4a8f9,0xffe920dd,0xffe85541,0x0002552b,0x002bfb97,0x0056652e,0x003ba4f2,0x0031261c,0x0022ac47,0x0036b5e9,0x0045cd77,0x002dddbc,0x005001c4,0x0062156e,0x006277f6,0x0093ed32,
-0x008bdfe7,0x0052af1b,0x00300ce7,0x000f3616,0x0004b7f5,0x001ab947,0x00223c88,0x00185f07,0x00263abb,0x002837fe,0x002c126e,0x000572a6,0xffe4d233,0xffb615b5,0xffaf73fa,0xffc6e41e,0x004226d9,0x000bb5d7,0x000e7386,0x001f3ce7,0xffe08fa6,0xffcebf88,0xffc69646,0xfffa1ae1,0x001751da,
-0x0037f0e5,0xffff29d3,0x00216799,0x003c706b,0x0056ff78,0x004cd97a,0x001da32e,0x004d0cea,0x005e5473,0x00622f5d,0x00c21eca,0x00a53c04,0x00403f3b,0x0037bf60,0x002f4dda,0x00366f0b,0x001f97bd,0x00170993,0x0004306a,0x001e8e75,0x0026fc7d,0x0028a243,0xffe287f0,0xff8d3de4,0xff56d352,
-0xff5a95bb,0xffc20413,0x0087a937,0x002efbd9,0x00209bba,0x00180b9c,0xff94f7cb,0xff671db9,0xff896dc6,0xffe22606,0x004ef653,0x00dc6b38,0x00c3ed74,0x004d0454,0xff6e2dd3,0xffc6892e,0x001e77a2,0x003e0a66,0x00c7425b,0x00f85179,0x00b843c6,0x002dcc33,0x002864cd,0x00986714,0x0045c159,
-0x0037a04f,0x0050bfb6,0x00548794,0x005f1253,0x00605652,0x006a6881,0x006db01c,0x00863302,0x00935514,0x00b6db6a,0x010c53c4,0xffc91bfb,0xff2b2c8d,0xff2afe2a,0xff91edc0,0x000b890d,0x00262ee2,0x00fbf634,0x00fc224b,0x00427070,0x0014719f,0x001984a1,0xfe6b85c6,0xfee2bd62,0xffbc8516,
-0x0096869e,0x00642039,0x0055869d,0x007a3e44,0x002faf64,0x00273385,0x009427cb,0x00a9ea01,0x008dc7af,0x0046f2ee,0x007a4d77,0x00739222,0x002e9298,0x001ca76f,0x001b53aa,0x0039639c,0x0030ea0c,0x00561160,0x00affc0c,0x00b1379e,0x009a6fe9,0x0073cf0d,0x002b9b9c,0x002886de,0x005e44bc,
-0x008d75f3,0x004b16a6,0xffa5a53b,0xffd5ec64,0xffd9cdd7,0xffaf83bc,0x007842f2,0x00e11af1,0x0049672f,0x0041a961,0x0041c3b8,0x004cc1b7,0x0087e715,0x006a46f6,0xfff95b30,0x0032bc40,0x003c4c61,0x002d2e6c,0x0029ca76,0x0037d9c3,0x005ba78b,0x000e1f34,0xffd09016,0xffe64bc4,0xffdd297c,
-0xffd15745,0xffd890dd,0xffcccdc4,0xffecf098,0x00461cf5,0xffe87a67,0xffe79d78,0x0007cedf,0x003b8e36,0x0045eed4,0x006e0fd6,0xfff6099a,0xffa86418,0xffa239b3,0xffa18390,0x000b9421,0x00a15dee,0x00d4c4f9,0x0056b051,0x00564462,0x002285e2,0xfff2386f,0xffb6c102,0xffd6f6d3,0xffcff8cf,
-0xffc72593,0x001a88ab,0x002b7628,0x001c0d0f,0x00423bba,0x003e3095,0x001a8092,0x000e71e7,0x000c074f,0x000f5a8e,0xfff20421,0x000359f9,0x003d5e3c,0x0058d754,0x0059df64,0x005974d4,0x00145625,0xfff105e2,0xffd24599,0xffbc7e20,0xffbcb720,0x001089c9,0x0003951d,0x003fc136,0x00c1a580,
-0x00aa89d1,0x008c6803,0x0067ac3e,0x0065ed26,0xff9cdc4b,0xff9687ec,0xff32640c,0xfefe510e,0xfefb1a9a,0xfed2e5e8,0xff04f9b5,0xff5524c0,0xff98d28f,0xffd0a9ed,0xffe32ed0,0xffe41993,0xffe3ea5e,0xffd08e00,0x0001193d,0x0011dcfb,0x000322f0,0x00014814,0x0004dad1,0x001cd4b8,0xfff5c0d2,
-0xfff2fab6,0x0003eb55,0x0019584a,0x001fe138,0x000dcb10,0xffed369f,0xffc55608,0xffbe1731,0xff6337a4,0xff481c52,0xff6fa9de,0xffc3f972,0x00073bd7,0x002b6507,0xffcf3484,0xff6f46bc,0xff6be1f5,0xff6cbd7d,0xff75685a,0xff854706,0xff3e2754,0xff1539ea,0xff167273,0xff2c619a,0xff43c433,
-0xff5cd97f,0xff541e64,0xff7b23b6,0xffcd2020,0x00065cb4,0x0028c9c9,0x002a573a,0x00391007,0x003ad258,0x00370463,0x0015264d,0x000e4d19,0x00139bd3,0x00309409,0x002166b9,0xfffc661b,0xffdcf932,0xffc85d88,0xffb8b04a,0xffadd583,0xff9a9e58,0xff6d0257,0xff525feb,0xff2ddad5,0xff1285e1,
-0xff4a971c,0xff231eda,0xff11dda0,0xff166457,0xff2ad5e8,0xff3a96a4,0xff60c21e,0xff8fffac,0xffb97148,0xffb8adfb,0xffa66dc5,0xffb0c36f,0xffc405dc,0xfffbf20b,0x000f87e9,0x001287d5,0x00165a13,0x0028eef2,0x002fe7b9,0x003ab707,0x00443de0,0x004304fa,0x00465cf7,0x00446138,0x004a32cf,
-0x005453cc,0x006a7cff,0x003d6ef9,0x000e8119,0xffd7a3b6,0xffbbadaa,0xff9fa6da,0xff8ae715,0xff6bd931,0xff512880,0xff2ceed2,0xff25d0fe,0xff706a83,0xff5af4ef,0xff73e63f,0xff7e675d,0xff8f4539,0xff9b620d,0xff9ece61,0xffae1913,0xffb216c4,0xffc1c324,0xffd151db,0xffd9a7db,0xffe2cc92,
-0xfff6e7be,0xfffb54b6,0x00030d9e,0x00053a36,0x00088c78,0x000249f7,0x0021923c,0x0025bf3b,0x002594c8,0x00289b09,0x002ec2b6,0x00312e72,0x0038a4e3,0x002377cf,0x00196d4b,0x000e50d1,0x00013c3f,0xfff12bbc,0xffe15d41,0xffc6bc5d,0xffafffbc,0xff9d418e,0xff860178,0xffd16ed7,0xffc30252,
-0xffd44eb6,0xffd7d83e,0xffe0c5c6,0xffd8af39,0xffe286c3,0xffee7c7b,0xfff6df00,0xfffe11f4,0x000242e3,0x0008e289,0x000b8f5c,0x000f2afd,0x0004897c,0x0004abbb,0x000565ac,0x0009726b,0x000b2a0a,0x0013fb43,0x0011234b,0x001464fa,0x00163740,0x0016c4c0,0x00171ac5,0x001a7c64,0x001331e7,
-0x000cbe9c,0x000552cd,0xfffe04cc,0xfff76cbe,0xfff21d62,0xffec8a2f,0xffe67d5c,0xffdf05ba,0xffd7f85c,0x00030b2a,0x000ad135,0x000ce7fd,0x001cceb5,0x0019cd76,0x00191561,0x0018b5fa,0x0014ab05,0x0019a894,0x0017b011,0x00203414,0x0022c201,0x0022bf00,0x002ac818,0x0029ca64,0x0023b0da,
-0x001296eb,0x0006e753,0x000dd064,0x000dc860,0x000ed50e,0x000ba883,0x00107272,0x000f2f05,0x000decaf,0x0002b27b,0xfffada0f,0xffef58cf,0xfff2d35d,0xfff8705e,0x000dcba1,0x0004adba,0x00058215,0x000c1237,0xffffb1cd,0xfffc505d,0xfffa328c,0x00039684,0x0007b660,0x0025048c,0x00167be9,
-0x001986a5,0x001a1772,0x002eadd1,0x0029aec4,0x0011ab4a,0x00255109,0x002f1e13,0x0032d548,0x0045b260,0x0041abb7,0x0031f989,0x0014a7ff,0x00028bbb,0xfff83850,0x00061b58,0x0012b76d,0x000f22ac,0x001c3bd8,0x0019ae58,0x000f5709,0xffed9a40,0xffd2b854,0xffbfe01c,0xffc46592,0xffddea83,
-0x00174153,0x0005b18a,0x0004d859,0x00086e47,0xffe4a329,0xffda97b7,0xffdfdae1,0xfff55872,0x00222bd5,0x006d56bd,0x004b1b45,0x003cb097,0x00237a1c,0x003eb7af,0x004b159c,0x00250e73,0x005095bb,0x005fea2a,0x0062274d,0x008acf86,0x00830316,0x0055ce11,0x002573ca,0xfffde8e5,0xffe6b025,
-0x00090028,0x0018f89d,0x00189595,0x002ebd71,0x002a3dcb,0x001c7ab2,0xffe0b156,0xffb3f781,0xff837692,0xff8c5fe0,0xfface932,0x001be7ff,0xfff5c905,0xfffb4dc5,0x0016d347,0xffca95b1,0xffbb40da,0xffc17063,0xffe970f4,0x0017b67c,0x006247ae,0x0016acf0,0x002a4936,0x0039bd2f,0x0074043a,
-0x0064c711,0x00225f39,0x005544ce,0x0063370d,0x006f53d5,0x00cdec6e,0x00b6c833,0x005bf184,0x00386820,0x0017ae06,0xfffd5cf7,0x0003a90f,0x0010d81e,0x000dd0da,0x0035f96d,0x00332ee0,0x00156f14,0xffab14bf,0xff495299,0xff1ce6ee,0xff395be5,0xffaad6b9,0x00523723,0x000e0a93,0x00061b2e,
-0x000de062,0xff819bf9,0xff5ac79c,0xff93b278,0xffd67f93,0x003804cd,0x00f5e9e3,0x01160f52,0x00a341cc,0xffadcebf,0xffaf927a,0xfff9d991,0x003f793b,0x00999af2,0x00e46bbb,0x00eff7f5,0x0040f78c,0x001fa12f,0x00806fa6,0x00336640,0x0036f0ea,0x005f27f1,0x006dd16d,0x00784971,0x00668efd,
-0x005e8296,0x0064f47c,0x007eac7f,0x0091c870,0x00a2b6ce,0x00bd0246,0xff88dad0,0xfef87d5a,0xfef9e318,0xff986ef4,0x0017dbd5,0xffea9d35,0x00df5d1a,0x00db7071,0xfffda1e3,0xfff1f306,0x001ccf9a,0xfeb6d2e6,0xfe1ef342,0xfef74622,0x00fbbd82,0x0072ac79,0x0050e542,0x0083587c,0x003c6953,
-0x002cae85,0x00818c28,0x00b522c1,0x009b946d,0x003d8e5a,0x005cf3ca,0x004b9729,0x002894c6,0x0012c49b,0x00119ac6,0x00346e5f,0x00198867,0x004118a3,0x00a1e41c,0x00adb61c,0x008add51,0x004a0b07,0x0018d95b,0x0029c649,0x008a1b6b,0x0041fbb3,0xfff683f0,0xff8a17c8,0xfffac5a9,0x00186bd1,
-0xffcfc22e,0x00827526,0x012029bc,0x00dd58be,0x00c99b92,0x00ab84c2,0x0072acfc,0x00852614,0x00667df7,0xfff8f130,0x00363ad8,0x00459ed9,0x0027388a,0x002bb659,0x00374218,0x005abc74,0x00165d95,0xffda08ef,0xfffd2fce,0xffeb9899,0xffdc94d3,0xffe4ad6f,0xffcaeb4a,0xffe3cc66,0x0029993a,
-0xfff48572,0x0006c3e7,0x00225ed2,0x00395d93,0x00219532,0x00616833,0xffa0ca93,0xff5f7f7b,0xff9f31e4,0xffa54b8b,0x001e31f8,0x009c9573,0x00e8f9f8,0x002afd82,0x00006872,0xffd9ec5d,0xffc2cd9f,0xffae678c,0xffd9e5af,0xffd437a4,0xffcf76b9,0x00205614,0x003799fb,0x0024452f,0x004e6686,
-0x0040585c,0x000b9348,0xfffcac38,0xfffa5c06,0x000ee947,0xfff32fb5,0x00051c98,0x00418943,0x005bc45c,0x0060aad6,0x0058a77c,0x00229a89,0x000303b5,0xffcfc2ec,0xffa5879b,0xffc005ba,0x005f9fc4,0x00166880,0x0066c7bb,0x011be128,0x00e52188,0x00b2d282,0x0064df9d,0x00561fb6,0xffbff1a1,
-0xffaa91a5,0xff5908c1,0xff30cc45,0xff42a755,0xff12a1bc,0xff35b13c,0xff6a96d5,0xff992079,0xffc6521c,0xffd068aa,0xffd9bf8a,0xffda10d1,0xffba80a5,0xfffbd0b5,0x000aad35,0xffffea84,0xffff3210,0x0002eb69,0x001489e1,0xfff8826c,0xffeed152,0xffefbf98,0x0000952d,0x000ab4e7,0x001198cf,
-0xfff8ceb2,0xffe2bc64,0xffd1e074,0xff82fa5c,0xff5638b3,0xff329f20,0xffa4c8ea,0xfff86c8c,0x0020978d,0xffe9bdf7,0xff8cf9aa,0xff8e8173,0xff8c4fbb,0xff7752ce,0xff4ce37d,0xff1a674d,0xfefd9368,0xff02519f,0xff24332a,0xff446b3c,0xff5ca470,0xff560def,0xff7195b1,0xffab9cda,0xfff35038,
-0x001d5d8e,0x003158f0,0x003063fd,0x002e66cd,0x00291123,0x000d2319,0x0002ca2a,0xfff8134e,0x001b3452,0x002105de,0x00145799,0xffea22d8,0xffd05be2,0xffb8dc8c,0xffc8a6bf,0xffcb1c7a,0xffa1548e,0xff96ddee,0xff7674a4,0xff5ddd33,0xff766710,0xff59030c,0xff518c1c,0xff523d59,0xff68dcbb,
-0xff79d059,0xff8cde7e,0xffa1bf7c,0xffb89246,0xffa40fce,0xff80aee5,0xff76ca7c,0xff8f9ce8,0xffcb2fc7,0xffdca9aa,0xfffed4b5,0x00162f5f,0x00441b56,0x003b5945,0x00386f3d,0x00353526,0x002a9636,0x0025d93d,0x00191933,0x002af6c8,0x003bcb85,0x005a47cb,0x002651de,0xfff91eff,0xffc73a0a,
-0xffa55bf0,0xff81e86e,0xff67806b,0xff5be033,0xff562de5,0xff4a02f9,0xff507d03,0xff683522,0xff4c603f,0xff569479,0xff5ebb9f,0xff697639,0xff72fb55,0xff76973d,0xff84bc12,0xff8de59f,0xffa3a8db,0xffb62b1e,0xffbdb44c,0xffc658ab,0xffd6a79a,0xffe95029,0xfff8086d,0x00067e6f,0x0015e26c,
-0x0029425b,0x0042d531,0x0042e842,0x0043f1d7,0x0044f4bc,0x0046a173,0x00431a73,0x00461a37,0x0031170d,0x00271799,0x001c16df,0x0011273a,0x0005d00e,0xfff867c2,0xffda65b3,0xffbbca94,0xffa06b48,0xff82b803,0xffc523a1,0xffb7153e,0xffc446aa,0xffc8618a,0xffd2a49b,0xffc89a63,0xffd1e4f5,
-0xffdf8f70,0xffe7486e,0xffed0ca9,0xfff18f8e,0xfff840f3,0xfffbee97,0xffff0184,0xfff6b37c,0xfff6b80f,0x0004a02f,0x0005d0fd,0x00085cd2,0x000d88db,0x000b2be7,0x000c657c,0x000d23b7,0x000cd300,0x000d2a9a,0x000f7943,0x00090601,0x0002d95c,0xfffbdc68,0xfff4e93c,0xffee080c,0xffe9f5da,
-0xffe1fe03,0xffdbdd41,0xffd4a489,0xffcce7a6,0xfff15de1,0xffff1ed6,0x00025b39,0x0015249d,0x0011b2fa,0x0010c3d0,0x000db100,0x000b5f0c,0x001090e3,0x000b6b01,0x001676e4,0x0018e140,0x00179716,0x001e7b10,0x001d211d,0x0019aef1,0x0006a3e8,0xfffbfb15,0xffffee46,0x000212a6,0x0003bdd2,
-0x000285d1,0x00080ce7,0x0005f8b0,0x0001a1ba,0xfff4fe4d,0xffeca02a,0xffe1df58,0xffe88432,0xffee5df4,0xffff3f24,0xfff94086,0xfffabb3b,0x000347c6,0xfff3e8fc,0xfff07356,0xfff112f2,0xfff82b59,0xfffcf1a3,0x0022a93c,0x00177f6b,0x0013afc2,0x000d81c4,0x00295e1e,0x002579bf,0x0006a8de,
-0x001ed0c0,0x0027f35c,0x002aef99,0x00381b2e,0x00342a95,0x002c0a7a,0x0007c09b,0xfff3ae33,0xffe8f7b5,0xfff604ab,0x00069fa4,0x0008274f,0x0017bb36,0x0012b796,0xfffebe2b,0xffd9881d,0xffbffd75,0xffb11c26,0xffbfa922,0xffd8e58f,0x0002aae0,0xfff7ad43,0xfff74158,0x0000cf09,0xffd83d79,
-0xffce76cd,0xffd8c9b0,0xffe91d20,0x0013ac33,0x0075c34b,0x0052dec8,0x003e1556,0x001b5ca6,0x003f80da,0x004ad797,0x00187fa6,0x004fffab,0x005d5966,0x005bcf83,0x007a9a69,0x00726755,0x0050f493,0x00162d18,0xffec8a43,0xffd588e2,0xfff5f8dd,0x000c115b,0x0016cae8,0x0032b799,0x0028f189,
-0x00078daa,0xffc425d8,0xff948889,0xff6bce41,0xff868d0c,0xffa981d1,0xfffb3760,0xffe7ad33,0xffec7d04,0x0013beca,0xffba112f,0xffab1b73,0xffbff1c6,0xffdaa11c,0x000b2562,0x00750ff4,0x002fa05b,0x002cc8d5,0x002b817d,0x00856142,0x0076b4fc,0x00250d14,0x005bfd6c,0x0066f597,0x0075a875,
-0x00d38af0,0x00bf9c47,0x006c8c91,0x00312211,0xfffca82b,0xffd2f166,0xffe64a27,0x000558f7,0x001365f3,0x0045f2c2,0x0038fa25,0xfff8a954,0xff829d40,0xff28cb87,0xff0fdab7,0xff478ac8,0xffb3d6f4,0x00284ff4,0xfff7b7ed,0xfff140c3,0x0010f938,0xff77f022,0xff562738,0xff9db001,0xffccbb7c,
-0x002f3c4d,0x00f72c3c,0x014a27ce,0x00e6a8f5,0xffe75e62,0xff979f27,0xffcb185e,0x00360fbd,0x0069f990,0x00c648d6,0x0120bc18,0x004e228a,0x00121667,0x0066d79d,0x0024d25a,0x00377ec1,0x0064eef0,0x007954ec,0x00802a76,0x006140c5,0x0057a8e8,0x005debf8,0x006b5d4e,0x0086b47c,0x007f4b25,
-0x00557c7d,0xff6218f8,0xfee8f7c0,0xfedbb050,0xffa407d0,0x001b5505,0xffb6fc8a,0x00b1fa07,0x00a522f1,0xffac31a3,0xffd86541,0xffe84a5c,0xfef53986,0xfdb898a4,0xfe811a1c,0x012c522e,0x008c44e2,0x0057a9c0,0x006ff8c3,0x0040b00e,0x0032d9c3,0x00698fe5,0x00b34914,0x00a0a025,0x00389329,
-0x0043a4fd,0x002d0120,0x0026ff8e,0x00137e46,0x001236a2,0x002a5de4,0x0006cb37,0x002db7ab,0x00862080,0x0099ac73,0x0073daa2,0x003749dc,0x000c79e6,0x002cc912,0x00ab3a67,0xfff1865b,0xff9c3b61,0xff6fb032,0x0018d691,0x004b91b3,0x0007768e,0x0061d62e,0x013b5cf4,0x0155b0ec,0x013e48a8,
-0x0102ee42,0x0090f189,0x007e4430,0x006af4e6,0x0011c4a8,0x0043e653,0x004c9d22,0x0023447f,0x002a951f,0x0032a627,0x00540319,0x001e80c2,0xffe845de,0x000adce7,0xfff771e5,0xffe91089,0xffe4d944,0xffcec13d,0xffdf94a5,0xfffc204f,0x00071dc4,0x0032dfbe,0x00523ffd,0x0038cf74,0x00051d69,
-0x0042f951,0xff6fea41,0xff455673,0xff9d6cd4,0xffe7c8e1,0x005d98b9,0x00a5a7c8,0x00f1f6a4,0xfff9b221,0xffad79c6,0xff91bb6c,0xffa35b4f,0xffc0a41d,0xffed042d,0xffe18dbb,0xffe2dfc6,0x001c96e6,0x00362b88,0x00299c9a,0x004c3dbf,0x00379fb0,0xfffc1e31,0xfff2a187,0xffef0859,0x0002a521,
-0xfff6d23d,0x000a331d,0x0038afad,0x00453aef,0x00505b32,0x004cacca,0x003651c9,0x00193661,0xffd44bc5,0xffab609c,0xffdba247,0x008b9b51,0x0041b375,0x0093052a,0x0132fdd2,0x010af7f8,0x00ce8d83,0x00636cd2,0x0042d185,0xffdd40c2,0xffca7790,0xff889921,0xff679dea,0xff67c6dd,0xff559ba7,
-0xff73cb93,0xff902a02,0xffa6a478,0xffc244ed,0xffbce87f,0xffc57330,0xffc9a4fe,0xffb37019,0xfff4a457,0x00036920,0x0004bdc0,0x0001ba9f,0x00040f4c,0x00104aab,0x000ae373,0x00001ce8,0xfff29f3d,0x00004cab,0x0007601d,0x0018fe71,0x0010a1aa,0xffff5091,0xffe08233,0xffacb18b,0xff7bbea1,
-0xff2ae5c2,0xff9a44fd,0xffe7191d,0x00050bd0,0xffefb60e,0xffb0a6c3,0xffaa78f8,0xffa81f10,0xff829099,0xff26963c,0xff069083,0xfef0188e,0xfef423dc,0xff1d4b2f,0xff423313,0xff5b5a2d,0xff5f8906,0xff74017c,0xff944d6f,0xffd896af,0x00076a4a,0x0035f2a0,0x00270870,0x0021f855,0x001d709d,
-0x0009baf0,0xfffd66e7,0xffe9a726,0x0003304f,0x0015695e,0x0026a8d1,0x00012ae7,0xffe5d284,0xffcb80b7,0xffd1f48c,0xffe064ff,0xffe1a8cd,0xffd0fa5e,0xffb8bd26,0xffbb8bc9,0xffae49a7,0xff8df05f,0xff8aef76,0xff82a5cc,0xff968635,0xffa5f4da,0xffa42e27,0xff9f3adf,0xff9fa44b,0xff862cb3,
-0xff62cb38,0xff4ec9f5,0xff6498b9,0xff946633,0xff9eef2f,0xffde7ffc,0x0007fd04,0x0049f0b6,0x003baaad,0x00355933,0x00316967,0x0021c5b9,0x0018a03d,0x000a3a82,0x00154981,0x001bebc5,0x002af739,0x0004b085,0xffe8fec1,0xffcd0206,0xffa95c1f,0xff80d53f,0xff5f9228,0xff6458ff,0xff6f53e1,
-0xff752204,0xff7ef3d8,0xff7998ef,0xff613396,0xff523b38,0xff5e24f2,0xff5c50a1,0xff61a912,0xff661ad6,0xff6d1377,0xff7d65d6,0xff928789,0xffa5436b,0xffad71b2,0xffb712d6,0xffc27294,0xffd7dfee,0xffe34760,0xfff5e990,0x00072598,0x00288abc,0x002c5d83,0x00284f13,0x0029c1c7,0x0027dc5a,
-0x00267c71,0x0021c562,0x00211c33,0x0013fccb,0x000c9212,0x0005ad5f,0x0001118d,0xffffa5fa,0xfff8d601,0xffe17a2b,0xffc467b3,0xffaa1297,0xff909c6d,0xffc17050,0xffb93638,0xffbde1de,0xffbf1197,0xffc30277,0xffc23713,0xffc5ee88,0xffcc3fab,0xffd28e74,0xffd759b8,0xffdc4c16,0xffe28398,
-0xffe70f75,0xffeb2484,0xffe79d58,0xffe74359,0xfff95e30,0xfff8872b,0xfffb1325,0xfff9aea2,0xfff9dcdc,0xfff8b498,0xfff84891,0xfff7180f,0xfff68594,0xfff6cbc7,0xfff34664,0xffefc352,0xffeb8879,0xffe7365a,0xffe256bc,0xffe19916,0xffd8fa1a,0xffd45f53,0xffcf4381,0xffc8bb81,0xffe265b3,
-0xfff53ccd,0xfff8bfe7,0x000b9df3,0x0007a0f1,0x000668ea,0x00005b20,0x00017c0f,0x000636b9,0xfffec275,0x000c294b,0x000e68da,0x000bdf57,0x0010d6af,0x000f1c96,0x000e6f54,0xfffa5abb,0xfff196d5,0xfff455ed,0xfff66e88,0xfff8bf02,0xfffa7f39,0xffffa0b4,0xfffcf224,0xfff5837c,0xffea53ab,
-0xffe31fe4,0xffdaae86,0xffe3d38e,0xffe9107a,0xfff42606,0xfff052e7,0xfff1ace5,0xfffb223c,0xffe9e56b,0xffe6b5d8,0xffea4a7c,0xffeedc46,0xfff24fb2,0x00188e51,0x0011f412,0x000981ce,0xfffb5e72,0x002068a9,0x001f9dd5,0xfffc1172,0x00184b10,0x00203869,0x0022566c,0x002880b5,0x00247a59,
-0x0024c119,0xfffa4aac,0xffe64483,0xffde993b,0xffe8428c,0xfff99575,0xffffdda9,0x000fd11a,0x0008405f,0xffec4fa2,0xffcb80fc,0xffb7da23,0xffaf492c,0xffc81b70,0xffdf41fd,0xfff6c7df,0xffeecf7d,0xffecf7fa,0xfffa5ede,0xffcf19d6,0xffc605db,0xffd4c1ea,0xffdf55a2,0x0003f95b,0x00684b52,
-0x004c06c9,0x003558ff,0x00090964,0x00390767,0x0044ff45,0x000a7874,0x004d5aa2,0x0059d9ef,0x005186bb,0x0063ba85,0x005a3d8d,0x00490f52,0x0003b8df,0xffdc5a8d,0xffcdc2ad,0xffe4ca6c,0xfffdb074,0x00111b96,0x002e8d50,0x001fb434,0xffedc059,0xffb08651,0xff87a2ba,0xff6c1bcc,0xff97c123,
-0xffb8c8eb,0xffea4b50,0xffe0d528,0xffe0a3e4,0x000d375e,0xffac4c81,0xff9ec13c,0xffc2cb54,0xffcf0a30,0xfff8b853,0x0064e4d7,0x003016d7,0x001fe60a,0x000f973a,0x008c8e94,0x0084eac0,0x00255ea7,0x00615e8d,0x00697adf,0x00757975,0x00ce1ddc,0x00bcba72,0x00730964,0x0021bcea,0xffe23d98,
-0xffbaefb8,0xffcd63a1,0xfff437ea,0x00113100,0x0045fd21,0x002ebdf2,0xffd30cfd,0xff68fb31,0xff25b826,0xff233df5,0xff78b8bc,0xffd9d5f5,0x0017e23c,0xffeed9e5,0xffe417cf,0x0011303b,0xff75232e,0xff5ade1f,0xffabd251,0xffc659c5,0x00297650,0x00f02825,0x016087ec,0x0110f61c,0x000fcc62,
-0xff783582,0xff927889,0x001ec5c3,0x003d7725,0x00a270e9,0x013a764a,0x00537d42,0x0004501c,0x004ae68c,0x0019b2c3,0x003530bd,0x005aad9e,0x0072ba6d,0x0078ce1d,0x005b9242,0x0053d4f5,0x0055635a,0x00525cb9,0x0075bdf2,0x0058e1ba,0xfff9247e,0xff4a7c56,0xfeef55aa,0xfee2967c,0xffb41543,
-0x00149705,0xff8f8d80,0x0072fea4,0x005aa2dc,0xff5f489f,0xffbb01da,0xff908e4e,0xff05c1fc,0xfda72c8c,0xfe581480,0x0113a00c,0x00a4a017,0x006ba811,0x00588995,0x003e4202,0x00380da6,0x0051435e,0x00a9596c,0x00a18074,0x003ceb4c,0x0033c7bb,0x001b45b8,0x002be717,0x001ffdee,0x001a7b9e,
-0x001b463f,0xfff88002,0x0017cc2f,0x0056ca81,0x007d79b0,0x00611656,0x00278a91,0x00066f49,0x002efef5,0x00bad294,0xffba305d,0xff6c3f44,0xff8111c6,0x002cd040,0x0068d6d6,0x00450386,0x002c3046,0x0143bed2,0x0199b69e,0x0189d08c,0x01382a28,0x0092b976,0x0064ecc2,0x0068d3ab,0x00406b66,
-0x005568d1,0x004ff298,0x00227fe9,0x00253367,0x00294985,0x0048221b,0x0026ae24,0xfff9acdd,0x000de155,0xfffb1cd4,0xffe72a92,0xffd8d00e,0xffd4757c,0xffe083cb,0xffe3beba,0x002fdb02,0x00658213,0x0072c567,0x0046af73,0xfffe2dc9,0x000505be,0xff5c79df,0xff45e0ed,0xff771464,0x0049d9ff,
-0x00b9fde9,0x009b2112,0x00f00011,0xffc263d6,0xff78629f,0xff541422,0xff89bb3c,0xffdae130,0xfff93677,0xffe940b9,0xfff63086,0x00100050,0x0026f7ba,0x0025ebce,0x003a2d4d,0x00245b13,0xfff1d134,0xffeb8471,0xffe34771,0xffedc2f7,0xfff903a3,0x000bf6c6,0x00272e0d,0x00274a0b,0x0039e645,
-0x0042dd73,0x0047b96b,0x002b22e6,0xffe163fc,0xffd3055e,0x000dabd7,0x0091a423,0x0083cf6e,0x00c3e827,0x0102bf36,0x00fee73e,0x00c15184,0x005c3746,0x001d6283,0xfff0d02d,0x00080eab,0xffc0ce87,0xffa27b11,0xff973ab6,0xff964a5f,0xffb068cc,0xffbb1d7c,0xffbe74a5,0xffca7b28,0xffb5e4a6,
-0xffb3dd65,0xffb977dd,0xffb9008f,0xffe52445,0xfff7a9bd,0x0011158b,0x00036627,0x0003a230,0x000edd3c,0x001ee58d,0x001aa393,0x00070ee7,0x000a1763,0x000cdb28,0x001cc07f,0x001a6fb2,0x00067444,0xffdb7281,0xffcf2e50,0xffb31f13,0xff64d40e,0xffad37a8,0xffda37ad,0xfff68051,0xffe46ba4,
-0xffcdc502,0xffb7c301,0xffab936f,0xff807f65,0xff125031,0xfef679f0,0xfee8ff96,0xfef5b326,0xff1dccf7,0xff4187e3,0xff5b7bd0,0xff6bd037,0xff7c13b1,0xff88ff11,0xffc00132,0xffed8841,0x002b5277,0x0021b01c,0x0020e8b5,0x0019aae7,0x000fced5,0x0001174c,0xffeb1740,0xfff76c32,0x0007b5f2,
-0x00316347,0x0018476d,0x0001ea26,0xffeb9cae,0xffdc390b,0xffe639b9,0x0008b68e,0xfff7b4c7,0xffe99d6c,0xfff559c0,0xffdca716,0xffbac0da,0xffbd493f,0xffae838d,0xffb9bb14,0xffc623e5,0xffb0c8bd,0xff95bb32,0xff7f3635,0xff6a7246,0xff51263e,0xff3c1d5f,0xff4bc946,0xff67b8c7,0xff6d48d3,
-0xffba06b3,0xfff0aa37,0x0039f04c,0x002d4023,0x002b6c2e,0x002b9015,0x001ad1cc,0x00120424,0x0005e378,0x0003bbfe,0xfffdbffb,0xfffb9620,0xffe8c15d,0xffded66b,0xffd716b1,0xffb8aaf9,0xff963be0,0xff76e4af,0xff827d6b,0xff93b86c,0xff9f2a73,0xffa9f2ff,0xff99e76f,0xff8c9dc6,0xff6ee54d,
-0xff79e3e9,0xff6dd44d,0xff704535,0xff75e453,0xff74523e,0xff8799c4,0xff957871,0xffa3613e,0xffaab4f2,0xffb32f9d,0xffb81a67,0xffc7e2ca,0xffcb78c6,0xffd86e8b,0xffe50185,0x00044c1a,0xfffb84ca,0xfff8996e,0xfffa97ac,0xfff9595c,0xfff946c7,0xfff82ddf,0xfff77f45,0xfff25413,0xffed1159,
-0xffe8fb8a,0xffe80f82,0xffea908f,0xffe5f881,0xffda5748,0xffc6cb85,0xffb60c96,0xffa76019,0xffbfaab1,0xffbd89e2,0xffbe5162,0xffbecdde,0xffbfe74b,0xffc0a717,0xffc1fe83,0xffc2da05,0xffc6122e,0xffc987fb,0xffcdfcd0,0xffd21c08,0xffd64688,0xffdac586,0xffd7420a,0xffd47999,0xffea5d13,
-0xffe5b46b,0xffe602cc,0xffe020c8,0xffe2d1bb,0xffe15a92,0xffe10cc1,0xffe0289b,0xffdf8291,0xffdfbd27,0xffdcdf47,0xffdaa59e,0xffd7ed0d,0xffd4ecf2,0xffd1afd5,0xffd206c6,0xffcc69da,0xffca760b,0xffc858ab,0xffc4a9e0,0xffcc8cd6,0xffee4606,0xfff11c28,0x00022d1a,0xffff9b35,0xfffe92df,
-0xfff5134b,0xfff9ea18,0xfffe6b8b,0xfff54600,0x00044bf0,0x00067f53,0x0003708f,0x000545eb,0x00034919,0x00060a54,0xfff1fed9,0xffea6f84,0xffecb272,0xffeea834,0xfff117ae,0xfff477a0,0xfff7e219,0xfff4d12d,0xffec046e,0xffe341a5,0xffde34d3,0xffd8c642,0xffe3d6a3,0xffe8238f,0xffed776f,
-0xffeac832,0xffebc929,0xfff56b66,0xffe3fe06,0xffe0f9b6,0xffe61b64,0xffe86e9f,0xffe98cc4,0x000cb1c8,0x000a4c1f,0xfffec691,0xffe922a8,0x00163701,0x001966a9,0xfff512c0,0x00136851,0x0019f07b,0x001c7be2,0x00193b4c,0x00150a2f,0x001ef030,0xffeff17b,0xffdd26a1,0xffd83b67,0xffdf603a,
-0xffefcafc,0xfff91a6d,0x0004e17c,0xfffb4e47,0xffdd616f,0xffc34538,0xffb73c16,0xffb58235,0xffd7af89,0xffebf6e6,0xfff1e1b3,0xffe9dae0,0xffe5645b,0xfff45843,0xffcb306d,0xffc37054,0xffd33a56,0xffd8afbe,0xfff31744,0x00522b4d,0x003fac9d,0x002b6af1,0xfff34c7f,0x002f754a,0x003baa6c,
-0xfffe0046,0x0049dc13,0x0055f347,0x004932d7,0x00499723,0x003ec6a3,0x00439819,0xfff3ceb6,0xffd1055e,0xffcaab99,0xffd9a8ab,0xfff29d7b,0x000af9f2,0x00214594,0x000e462e,0xffd76de7,0xffa44cac,0xff87f306,0xff7b6a4c,0xffb604cd,0xffd36483,0xffe6e6d2,0xffdfbcc5,0xffda550e,0x0007e70c,
-0xffa9ef7f,0xff9cdef6,0xffc6e322,0xffc53e56,0xffe3caaf,0x004d35da,0x0025fde1,0x000acb5c,0xffe951fc,0x008637e3,0x008cba8a,0x0024a02d,0x0067bb14,0x006e13e0,0x0072408f,0x00bb63af,0x00ac7916,0x0073e531,0x000e5c4a,0xffcd9c27,0xffb2c499,0xffc0039c,0xffe55b39,0x000d1a55,0x003611ea,
-0x00160cd5,0xffb2ca1f,0xff5b66a9,0xff3394fe,0xff45aa64,0xffb8c585,0x000db2ed,0x0017e678,0xffec99dc,0xffd9426e,0x000901b3,0xff7d81b9,0xff6bb5b8,0xffb85cc8,0xffbe6029,0x001c269f,0x00d9332b,0x01672930,0x012dc072,0x0035c6a7,0xff60a305,0xff5b99d4,0xfffbe1d8,0x0018c28f,0x007e9b99,
-0x0133be8a,0x0051ff60,0xfffc277b,0x00302eae,0x00144996,0x0032875f,0x00448b75,0x005f4825,0x0069f40b,0x00598d21,0x004b273c,0x004711b6,0x003ae3b7,0x00600f9a,0x0034159e,0xffb5cfff,0xff4182d5,0xff0110d2,0xff01f33c,0xffcbc6b8,0x001982c5,0xff8fe3d6,0x003f4517,0x0013890c,0xff2d712d,
-0xff9d62b1,0xff47e09a,0xfef28bec,0xfdc38b48,0xfe57970a,0x00b790a1,0x00b361cb,0x008bc004,0x0054a2e5,0x00387be1,0x003608ec,0x003c17e4,0x00984827,0x009bd137,0x004726e2,0x002b64d2,0x00119cb5,0x003101dd,0x002f72f9,0x00228263,0x000b2d5a,0xfff37fb9,0x000966c8,0x002b6fee,0x00629d99,
-0x004f51d0,0x001ac2dd,0xfffc7442,0x002a63e1,0x00c25245,0xffa0ef2e,0xff5c24ed,0xff9d0d66,0x0029916d,0x00720621,0x0085dee1,0x00039e14,0x0135ea00,0x01a6de5a,0x01a81aac,0x0148859a,0x0078222a,0x00341b94,0x00543757,0x00718158,0x00665b97,0x0053a25f,0x0020c492,0x001e1e79,0x001e6867,
-0x0035c58a,0x002e71b8,0x000d6578,0x000ae51b,0xfff8118f,0xffde4744,0xffd3370c,0xffe117fb,0xffe7e315,0xffe27a29,0x004a78f4,0x00803ec8,0x0089ac08,0x005f7612,0x00073487,0xffbf0ab3,0xff694150,0xff6a539e,0xff5fca03,0x00b4b203,0x010553b0,0x005fc978,0x00d43dde,0xff90c783,0xff5e86fb,
-0xff2b3957,0xff72c333,0xfff05ff6,0xfff9dbbb,0xffea2e83,0xffffeecb,0xfffd95fa,0x000f9fc0,0x00190adc,0x001cc2ce,0x000a0063,0xffeca7ea,0xffe399d5,0xffd5fc48,0xffda7fff,0xfff9c0c4,0x000c155c,0x00125a40,0x0010142e,0x0029a87f,0x003a3e9d,0x0049c017,0x003124c7,0x0006e819,0x0001f890,
-0x003e177c,0x0090c60e,0x00bb09cc,0x00dcc5b3,0x00a1efad,0x00b8cc6b,0x008a4398,0x004c6171,0xfff1f564,0x000f8927,0x004bed9f,0x0002e338,0xffe6f562,0xffde42ec,0xffd93663,0xffe79310,0xffe3a26d,0xffd9dae1,0xffdb3e51,0xffc26206,0xffae7f92,0xffb0868d,0xffc3c256,0xffd54fe2,0xffec3f4f,
-0x00192958,0x0002dd1d,0x00028ae2,0x000cf0b0,0x0027ed0a,0x002b8f90,0x001a71d7,0x0014734a,0x00112c2c,0x0013647e,0x00167a9c,0x00024302,0xffcf28fe,0xffdf72c7,0xffe4625a,0xffc8b4a3,0xffd7692e,0xffdb751e,0xfff5011a,0xffe99d48,0xffd9ee7b,0xffbaff4f,0xff9797ea,0xff680950,0xff07381a,
-0xfeebc1f0,0xfeebbfbe,0xff098d38,0xff27d11f,0xff46893d,0xff601554,0xff7a1dd6,0xff88a71c,0xff8b9103,0xffb0de47,0xffd5cb37,0x000fd3af,0x001f5508,0x0028e741,0x001c4a70,0x00190c7a,0x000b99f0,0xfffcac97,0xfff60872,0x00026db7,0x0033cbbb,0x00232910,0x00140d32,0x0002d878,0xffeeeeab,
-0xffecd92b,0x000c3ca8,0x0007bb21,0x00029787,0xffff49cf,0xfff1696e,0xffdbeece,0xffdfcb60,0xffd0718b,0xffd2656a,0xffdb6b6e,0xffb802fb,0xff8dc5b3,0xff654002,0xff57481a,0xff4a0cbc,0xff375a2c,0xff45144d,0xff51b19c,0xff58b672,0xffa158b9,0xffdcc79a,0x00204702,0x0017d8f3,0x001a3beb,
-0x00215057,0x00148a3f,0x000c9ee2,0x0004073f,0xfffc18b1,0xffefe8fa,0xffe4d7b7,0xffdf9aec,0xffe06cde,0xffe26fb5,0xffce093c,0xffba2ea1,0xffa4eb8e,0xffb1f20a,0xffc16429,0xffccd288,0xffd1e9d5,0xffb22ec5,0xffae2429,0xff96dcc4,0xff9b138b,0xff8e2fb4,0xff8f7572,0xff97959a,0xff93ad02,
-0xffa41590,0xffa9b0c0,0xffb090cc,0xffb52d7e,0xffb99c28,0xffb8585b,0xffbfc245,0xffbd590b,0xffc324a0,0xffcbd5f7,0xffdf6e5e,0xffdc192c,0xffdc26c3,0xffdf1179,0xffe04848,0xffe2263c,0xffe4dacd,0xffe62684,0xffe350f1,0xffdd91c1,0xffd98aa0,0xffd82126,0xffd7d535,0xffd1d621,0xffcdf6b7,
-0xffc3c07c,0xffbc5db5,0xffb70d23,0xffbcdbd7,0xffbd6340,0xffbcfed4,0xffbddda8,0xffbecda5,0xffbe5f40,0xffbe8a2d,0xffbcf830,0xffbc852c,0xffbdcaea,0xffc0777c,0xffc1631b,0xffc3bccf,0xffc6a724,0xffc4bf3a,0xffc33e8b,0xffd44eb8,0xffd0359b,0xffd007d5,0xffcd0e8c,0xffcf5e52,0xffceefd1,
-0xffcf475f,0xffcf5eb5,0xffcf708b,0xffd100b4,0xffcd2cdd,0xffcb00a4,0xffc85af7,0xffc56c89,0xffc2ff11,0xffc276ee,0xffc0be89,0xffc0c642,0xffc07df7,0xffbf4803,0xffb657d6,0xffeb87af,0xffed442d,0xfffb3969,0xfffa78f8,0xfff8eeb9,0xffeb2df3,0xfff585d1,0xfff8a0b0,0xffee44ec,0xfffd6b9a,
-0xffffbe7d,0xfffd8b10,0xfffadd36,0xfff8cdd7,0xffff8b2d,0xffece72d,0xffe71005,0xffe6695c,0xffe9ac60,0xffecd354,0xfff23c0f,0xfff29f43,0xffef9ac4,0xffe7ae62,0xffe0c6e4,0xffde0962,0xffdba0a5,0xffe83171,0xffebac3c,0xffec0af0,0xffe9c450,0xffea322a,0xfff2ef26,0xffe2c3ba,0xffdfbe2d,
-0xffe49dc1,0xffe61a74,0xffe53339,0x00012c00,0x0003435c,0xfff7c22e,0xffdaae94,0x000c79ff,0x00142ee2,0xfff3ee73,0x001177b6,0x00166397,0x001a664b,0x000d0064,0x000889c3,0x001b4286,0xffe9a8ac,0xffd88792,0xffd41a61,0xffdb74ad,0xffe94346,0xfff66d33,0xfffaa462,0xffefd79a,0xffd6399e,
-0xffc0ecd3,0xffbc39a0,0xffc12afd,0xffeafd54,0xfffc7655,0xfff3602e,0xffe9d198,0xffe1fcbb,0xfff01b1a,0xffcc4b24,0xffc68a20,0xffd3e4ff,0xffd71b41,0xffe7a449,0x003761c8,0x0033ea60,0x00236440,0xffddcafd,0x00238c6e,0x0030453d,0xfff7ba98,0x0045ddb3,0x0052bd6c,0x0045cc19,0x0032c727,
-0x002535c8,0x00419081,0xffe8a39c,0xffcb745d,0xffc80305,0xffd42b3e,0xffeb7853,0x00071c05,0x0010221d,0xfffad49f,0xffcbc4df,0xffa03a6d,0xff91eb0e,0xff930e27,0xffd9a832,0xfff3f42e,0xffecd631,0xffe53ca1,0xffda94e8,0x0002b4d4,0xffaef357,0xffa27ffc,0xffc78887,0xffc1e1d2,0xffd6d6fa,
-0x002ead52,0x001cada3,0xfff74a6f,0xffc0da1b,0x00727c10,0x008dc605,0x00281cc9,0x006ffaa0,0x0075f521,0x00713b9b,0x009ecca7,0x0091b1c3,0x00735299,0xfffb50e6,0xffc03683,0xffb260e7,0xffbdbe69,0xffde35f5,0x000de4ea,0x001f2c5a,0xfff91584,0xffa1790f,0xff590316,0xff4aee92,0xff6ddf02,
-0xfffa62b6,0x00443dc5,0x001fcdf2,0xfff13460,0xffd21928,0xfffa096f,0xff8a6609,0xff830ef8,0xffbdf77f,0xffbca387,0x000e7ace,0x00b0562a,0x015a3b56,0x013b0960,0x005744e7,0xff5c4d8c,0xff339812,0xffd1bded,0xffff0a95,0x005ef504,0x010e2f3e,0x004e3561,0xfffc8303,0x0016f62a,0x0014c02b,
-0x0032f63c,0x002ac0ec,0x0046d2bd,0x0055648c,0x0053c81b,0x003b15f2,0x0035547f,0x002b7791,0x004cbc7d,0x001897af,0xff92141d,0xff42f76a,0xff179de3,0xff3038e6,0xffe6aa5b,0x00260792,0xffb741af,0x00188499,0xffd715ee,0xff2112c2,0xff8ccadc,0xff24f9a1,0xfee2b402,0xfdf2ec60,0xfe6490fa,
-0x0032cb8f,0x00b65a77,0x00b2f309,0x00618720,0x002e3349,0x00287b61,0x0028f936,0x007f3003,0x008c9c6e,0x0050ea69,0x0027f732,0x000c6319,0x0030358d,0x0036b949,0x002376b6,0x0003182a,0xfff8720e,0x00028227,0x0008d28d,0x003eb885,0x003547a4,0x001abc49,0xfff897a2,0x002a1397,0x00c3739e,
-0xff97efe4,0xff58ceb3,0xffc01a40,0x001c1e25,0x0073c9af,0x00cbed7b,0xfff1b454,0x010ad24e,0x0195b4ac,0x01921ff4,0x01328c48,0x0050210d,0xfff1fc60,0x002922f9,0x0090f2a2,0x0073369e,0x0057cd87,0x001a4b30,0x0016d4a8,0x0013a837,0x00208749,0x0035093c,0x0020624e,0x000743c9,0xfff4bf11,
-0xffdb64db,0xffd999e4,0xffea9b10,0xffebd72b,0xffe63a92,0x005535e0,0x008af476,0x009dc38a,0x00758ea2,0x00146b96,0xff94dad0,0xff944a3f,0xffb568da,0xff910a53,0x00eb4e05,0x01002e9e,0x0006c260,0x008dcbe6,0xff716816,0xff4c688d,0xff2247ad,0xff69fd80,0xfff7a2a8,0xfffbaa07,0xfff16663,
-0x0003bbc0,0xffef7ac0,0xfffa74f5,0x00091418,0xfffdf0a9,0xffeff134,0xffec31da,0xffda2243,0xffc84cd0,0xffcbcf05,0xfff4f31a,0x0003a8a0,0xfff58c67,0xffface2e,0x0018617c,0x002a4708,0x00405ca4,0x002fe0d9,0x002f208e,0x002e93ce,0x0067476e,0x0091bdff,0x00dd45a8,0x00d7c079,0x003c4fea,
-0x00595824,0x00455528,0x002fe1e4,0xffd1dc74,0x00466a77,0x007c439a,0x003a0a04,0x00213d63,0x001dc790,0x00126732,0x0011bb08,0x0005239d,0xfff10b38,0xffecf4e5,0xffddf77d,0xffb6a982,0xffb00aa3,0xffc9e0ca,0xffcc8976,0xffe6daeb,0x00164e75,0x0003dca3,0x00056fee,0x000c74b2,0x002ab076,
-0x00327afe,0x00288017,0x001c0097,0x00106c78,0x00072725,0x0009ac93,0xfff39895,0xffc78b47,0xffece79b,0x000f9d8a,0x0035bcba,0x00159cc7,0xfffc6e4b,0x000ff03a,0x00191d52,0xffcdbe0b,0xffb3bea2,0xff7e3e2b,0xff4ad623,0xff00a03e,0xfeea3478,0xfef7b792,0xff27eaa1,0xff3921f4,0xff50b89b,
-0xff696964,0xff88b43d,0xff991ce4,0xff99c50d,0xffa9f3e2,0xffc1903e,0xffeec90e,0x001b6cc4,0x002f8ab3,0x00206009,0x001f6feb,0x00173f5f,0x0014cccd,0xfffab70f,0x0005886d,0x002bb37e,0x0027972f,0x002256e2,0x000f658e,0x0001d34e,0xfff68f83,0x00057bca,0x00069441,0x0002bea3,0xffec7508,
-0xffe8203b,0xfff5e475,0xfff75dd3,0xffe40fc6,0xffdb9202,0xffdb8ca0,0xffb60b14,0xff87976e,0xff588339,0xff50765e,0xff4d4ca1,0xff3cd60b,0xff4c848f,0xff504edf,0xff5cc082,0xff98758c,0xffd06723,0x0004fc99,0x0005d1e0,0x000da6a8,0x0020b3c5,0x001a3dac,0x0012f47d,0x000f5430,0x0005be87,
-0xfff75eb1,0xffe68f4a,0xffea29f4,0xfff08487,0xfff77c17,0xffec87b7,0xffe4b435,0xffd91fc6,0xffe43390,0xffee9bb0,0xfff8517d,0xfff4b9d6,0xffc05fb4,0xffbf7553,0xffb00839,0xffb4f692,0xffac115d,0xffad7439,0xffb7bec6,0xffb78659,0xffc1e309,0xffc289a0,0xffc3ca3d,0xffc5c930,0xffc62556,
-0xffc09630,0xffc16ea4,0xffbcfaff,0xffc08f3f,0xffc87af7,0xffd01459,0xffd86adb,0xffd826af,0xffdaf13b,0xffdc78bf,0xffde9482,0xffe2d371,0xffe5b257,0xffe298d7,0xffdc14c2,0xffd824f0,0xffd5694e,0xffd28daa,0xffcc72c1,0xffcac20f,0xffc570f3,0xffc27285,0xffc12e3f,0xffc375d1,0xffc59bd4,
-0xffc01c2a,0xffbe91dc,0xffbbca15,0xffc3132f,0xffbece17,0xffba46d0,0xffb77429,0xffb6896c,0xffb7326f,0xffb556a2,0xffb5b322,0xffb6294a,0xffbb05a9,0xffbfe16d,0xffc19f4e,0xffc43ce5,0xffc70a7f,0xffcba179,0xffcb9057,0xffcc016e,0xffcc820d,0xffcd08b9,0xffcd3e27,0xffcf0741,0xffcb9741,
-0xffca0fe8,0xffc7b3b3,0xffc56741,0xffc3c2b9,0xffc2b76d,0xffc31423,0xffc3d74a,0xffc42789,0xffc45020,0xffb46a41,0xffeba319,0xffec4f21,0xfff70a63,0xfff7c1bb,0xfff63e7b,0xffe603dc,0xfff39818,0xfff53a10,0xffec50f9,0xfff9db5c,0xfffc581c,0xfffc2dc3,0xfff4bb5d,0xfff2afe9,0xfffcbab3,
-0xffeb1348,0xffe6573a,0xffe34b4e,0xffe78932,0xffeae405,0xfff1d695,0xffefa00d,0xffecbfd9,0xffe66ee9,0xffe107c3,0xffe047c5,0xffe07174,0xffee1272,0xfff12585,0xffee704e,0xffeb99a0,0xffeaee63,0xfff12392,0xffe421d1,0xffe18800,0xffe61ec4,0xffe6b078,0xffe44296,0xfff817e1,0xfffdef51,
-0xfff4ea2d,0xffd3c722,0x00053db2,0x00102993,0xfff8269a,0x001107df,0x0014a92c,0x001bad45,0x00050c93,0x00002946,0x00185d54,0xffe75b17,0xffd7a624,0xffd0f6d5,0xffdaacf8,0xffe6c18c,0xfff53b41,0xfff1d852,0xffe661cf,0xffd30a83,0xffc19a27,0xffc34ad8,0xffce3058,0xfffcbc58,0x000bc2c9,
-0xfff95694,0xffec34f3,0xffe0b3e6,0xffeb0625,0xffcfcc73,0xffcd1e7d,0xffd8eb1f,0xffd95e0c,0xffe3ee8a,0x001dfb68,0x00292669,0x001effe3,0xffd0ac1f,0x0018afab,0x00253f21,0xfff9cece,0x00422a9f,0x00503252,0x0048b621,0x0022fb47,0x00123c9d,0x00409836,0xffe2bd54,0xffcad7e5,0xffc4561d,
-0xffd1b552,0xffe71c22,0x00033079,0xfffe0a2e,0xffe86be9,0xffc4aa3f,0xffa049b2,0xff9ec4f4,0xffa9db25,0xfffa37f5,0x001272d2,0xfffa0fff,0xffeead90,0xffdcd17d,0xfff7b06d,0xffb69788,0xffacaa04,0xffcd177e,0xffc54d42,0xffd51350,0x000f5750,0x0013b9de,0xffed2fe1,0xffa69977,0x005a68ab,
-0x0088fedf,0x0030dc99,0x007803c0,0x00805e25,0x0076bd7c,0x0080dd3b,0x00749fac,0x00725f27,0xffec71be,0xffb9ece0,0xffb30f34,0xffc1532b,0xffdf411c,0x000f3a02,0x0004da86,0xffdb35ab,0xff95d3c5,0xff5c6ae5,0xff63d7ae,0xff931499,0x00322d9e,0x0071305c,0x002d5993,0xfff838a2,0xffcbf724,
-0xffe28fe8,0xff9639c6,0xff9d23dd,0xffca043a,0xffc39394,0x00007cd8,0x0080a001,0x01374f96,0x01343d30,0x00723e1f,0xff68ff9a,0xff2064b3,0xffab40dc,0xfff0c55d,0x0045b1ba,0x00d24c9f,0x004cec46,0x00058717,0xfffd975b,0x00197ccd,0x00363474,0x001248ec,0x002cd7df,0x003a1087,0x0041714b,
-0x0023972e,0x00227175,0x00221e77,0x00375f3a,0x00012214,0xff867a86,0xff44f404,0xff2ea70d,0xff7260b8,0x0002ff70,0x00322e88,0xffefb252,0xfffe2ed3,0xffa8bf9a,0xff2bbc5e,0xff886540,0xff1fa8d6,0xfeef3588,0xfe29ce80,0xfe7610dc,0xffa7afc0,0x00af8695,0x00dc2013,0x0077acc1,0x0021f8b9,
-0x0011cceb,0x001431a4,0x0061caf0,0x007907b7,0x00588356,0x0029c0a7,0x000bf13c,0x002abcb0,0x00322ef8,0x001e0384,0x00056f1f,0xfffe0d77,0xfffacc74,0xffea082e,0x0013d70a,0x0015d51a,0x00116ae2,0xffff1694,0x002e8364,0x00adec1f,0xff9b4899,0xff69aa06,0xfff42520,0x00143779,0x0077d1b8,
-0x01156784,0xffeee963,0x00cdca14,0x0187db54,0x01564cae,0x00f90211,0x0021eb03,0xffaec7a7,0xfff22118,0x0094dc4f,0x00785454,0x005a363d,0x0011e2db,0x000e8161,0x00084be1,0x000ef208,0x003898cf,0x002ef056,0x00037196,0xfff5089f,0xffe1434f,0xffe4e3fc,0xffea50c7,0xffeb8402,0xfff3a2b7,
-0x005a8ae5,0x008c0752,0x009b63b0,0x007a7180,0x001f0a4b,0xff8ea649,0xffc69f83,0x00040aa8,0xfff58bc6,0x00c33d7e,0x0090057d,0xffa1115d,0x00261ded,0xff6455ea,0xff3b5721,0xff332f79,0xff7754ea,0xfff298aa,0x00039a2d,0x0001ff51,0x000a28fc,0xffed6efc,0xffed5e49,0xfffbc2fe,0xffe5f2ed,
-0xffdc1fef,0xffedcc8f,0xffcfcf99,0xffbccda2,0xffc30e4a,0xffe921cd,0xfff05850,0xffd84d3e,0xffe84f00,0x0004827a,0x0019d1bd,0x002d8794,0x00287812,0x004ace71,0x005e2acb,0x00899bc3,0x008a34f3,0x00ea08a2,0x00c07a2a,0xfffd5d38,0x000507a8,0x00047b77,0x000c1970,0xffbedde9,0x008712d4,
-0x00991552,0x0060dd2e,0x00463184,0x003ea968,0x003484e6,0x0028262d,0x00189e4c,0x00015945,0xfffc974e,0xfffcc3ca,0xffc97190,0xffb7fa6e,0xffc9b68c,0xffc9e675,0xffe47ef5,0x0008503e,0x00061917,0x000c6654,0x000d7a20,0x002bc602,0x00324191,0x00297873,0x001c5e15,0x000d31e3,0xfffcb2ca,
-0xfff0431e,0xffdcae38,0xffc870a8,0x0000e026,0x003aa6f0,0x0090503e,0x0055c1ce,0x0035c173,0x004dffe6,0x0065f3cc,0xffae0293,0xffa039ab,0xff64cd27,0xff35a540,0xff043da3,0xfef6f40e,0xff0db54a,0xff48732a,0xff4e590c,0xff5f83d4,0xff78633a,0xff95cf41,0xffa8beb2,0xffab8e74,0xffa6ed4b,
-0xffb2d273,0xffd43f7e,0x0011f0ed,0x002cf231,0x0023ae92,0x00245fc9,0x00220a3b,0x00289e7c,0x00059b66,0x000a42c1,0x0020bf35,0x002c2d0c,0x0032bb56,0x0022d4b7,0x00155c09,0x00030016,0x0003f263,0xfffc457b,0xfff319db,0xffd23c42,0xffc90f76,0x0003b7b3,0x000313cc,0xffea5bfb,0xffd5bdaa,
-0xffc7d0db,0xffa967a6,0xff8091d9,0xff5621c2,0xff540986,0xff57c38f,0xff4a8f6c,0xff5ebc53,0xff5f7d66,0xff73745f,0xff9c0ed4,0xffc8bb93,0xffe92a85,0xfff83ae1,0x000a7e47,0x002beb17,0x002881ab,0x002282dd,0x0022ce34,0x0017e7eb,0x000af675,0xfff94410,0x00006c32,0x000798f3,0x00112167,
-0x000cdf1d,0x000cd17e,0x000975c2,0x000c7c30,0x000dce17,0x001217da,0x00099cac,0xffce1571,0xffcedb6b,0xffc12c2d,0xffc98497,0xffc3a405,0xffc43e40,0xffccb104,0xffcf1d87,0xffd3a10d,0xffd2c70a,0xffd10090,0xffd21727,0xffd06636,0xffc96295,0xffc77b76,0xffc4e7c1,0xffc97f51,0xffd221fb,
-0xffd24592,0xffe17175,0xffdf0781,0xffe0f364,0xffe133ec,0xffe2ef8a,0xffe68d0c,0xffe95bf2,0xffe62c58,0xffdff05e,0xffdb968f,0xffd7c1e7,0xffd34b6d,0xffcd9842,0xffcdbab6,0xffccc103,0xffcc434a,0xffcd02e9,0xffd69fca,0xffdadb06,0xffcf4131,0xffca4e6d,0xffc282cb,0xffd183e6,0xffc873bc,
-0xffc18674,0xffbe7758,0xffbc5f87,0xffbbec79,0xffb8727e,0xffb7aa5c,0xffb664e8,0xffc18e5d,0xffcbc13e,0xffc09fa7,0xffc9305c,0xffceee90,0xffd9829d,0xffd78260,0xffd8206a,0xffd85a64,0xffd8a5bd,0xffd88abc,0xffd9bd65,0xffd7306d,0xffd64a04,0xffd4997d,0xffd31ce2,0xffd20e50,0xffd08aed,
-0xffd2647d,0xffd39f3a,0xffd4bbf6,0xffd61caa,0xffc91940,0xffed7a9e,0xffed7e7a,0xfff52431,0xfff7bba3,0xfff6e179,0xffe67031,0xfff495e0,0xfff539c6,0xffef1213,0xfff99c66,0xfffc29ba,0xfffea224,0xfff32d17,0xfff10934,0xfffcc24e,0xffeca8cd,0xffe83582,0xffe30206,0xffe82c15,0xffeb36d3,
-0xfff20b4d,0xffee8f8b,0xffebd164,0xffe6b206,0xffe2fc31,0xffe3bbe1,0xffe5dacf,0xfff38d09,0xfff68fef,0xfff2d828,0xffef2e0e,0xffed4d65,0xffefb783,0xffe6e668,0xffe504c0,0xffe97233,0xffe95092,0xffe6dfb7,0xfff4511f,0xfffc6062,0xfff606af,0xffd62a8e,0x0001eb60,0x000e0d31,0xffff9497,
-0x0010ea2c,0x00140a6a,0x001f9a75,0x000188f1,0xfffbffc1,0x0015aaa7,0xffe88277,0xffd9ba1a,0xffcf380b,0xffdb1336,0xffe64601,0xfff36220,0xffeaa254,0xffdf896d,0xffd16bf5,0xffc4a920,0xffcb7baf,0xffdb3c0b,0x0009b5d4,0x00168e95,0x0001820f,0xfff0cbc9,0xffe2078b,0xffe588c5,0xffd4461c,
-0xffd4e0fc,0xffe02a02,0xffde7f55,0xffe5d8aa,0x000c84a7,0x00214b9f,0x001e219c,0xffcfdd8b,0x001362c8,0x001de03d,0x00021ee0,0x003ea332,0x004cc98f,0x00513bf2,0x0019e4f7,0x000716b4,0x003effa9,0xffe1c186,0xffcdd124,0xffbff5db,0xffcf5886,0xffe2f19f,0xfffd8fc8,0xffeda3fa,0xffd986bd,
-0xffbea968,0xffa3acde,0xffac605a,0xffbe396a,0x00124d1e,0x0028e738,0x0009a548,0xfffaac06,0xffe21547,0xffe94007,0xffbebd37,0xffb80910,0xffd6736a,0xffcd50a1,0xffdc24cf,0xfffe3577,0x00113253,0xffee0a00,0xff9f587a,0x00451d7d,0x007f8e5e,0x003c3d49,0x007d04b7,0x008ad18f,0x0083049d,
-0x0066d2df,0x005ad813,0x007104dd,0xffe2d6a9,0xffb937de,0xffb36b0c,0xffc4e04c,0xffe0d583,0x0009579d,0xffe927c4,0xffbfbde6,0xff8bc13e,0xff652ab9,0xff7d8e11,0xffb66067,0x005a04e1,0x008cff4c,0x003d021c,0x0001f7a4,0xffca75c3,0xffc78472,0xff9f7f72,0xffb4b3eb,0xffd9a3c7,0xffcf1802,
-0xfff2fbae,0x00503cc4,0x01049f42,0x011ecc5e,0x008a36f6,0xff854ffc,0xff242aa6,0xff925089,0xffea572c,0x00330101,0x008d2469,0x00507d7e,0x00160a3b,0xffe70b4a,0x00206e0c,0x0039279e,0xfffd199c,0x00135532,0x001b4100,0x002757a7,0x000e5588,0x0013c2b0,0x001b161f,0x001f8cf1,0xffebb352,
-0xff89083b,0xff455b35,0xff437e2e,0xffbcccae,0x001f454e,0x00404c1d,0x002940ac,0xffee4aa1,0xff8a245b,0xff447d8b,0xff8dbc63,0xff306844,0xff1debb0,0xfe6e6e04,0xfe92ab9e,0xff319165,0x00960fa9,0x00f93e54,0x009317e4,0x001c1cd1,0xfffafea7,0xfffc8de4,0x00438b7b,0x0064bbe3,0x005bb7b8,
-0x002f2046,0x000f9a7c,0x0024fbb2,0x0023ec2a,0x0012fa23,0x0008cfb2,0xfffe605f,0xfff53994,0xffdbce69,0xfff3bb96,0xfffb5be3,0x00014429,0x000a02e6,0x00315e31,0x00845b70,0xffa05a7c,0xff80d78f,0x002df193,0x00195edd,0x00855c7e,0x01546314,0xfff604c5,0x008fa574,0x01826120,0x010131fa,
-0x00a0fabb,0xfff74be6,0xff7eda4f,0xffc1dfde,0x007c065e,0x007355ee,0x005a3cea,0x000b3314,0x0004d899,0xfffc8917,0x0004e0b5,0x0037082a,0x00378595,0x0001f96e,0xfffc25f2,0xffefe5b8,0xfff37e6b,0xffe7f8c9,0xffecad8a,0x000913df,0x00583591,0x007efcca,0x00866582,0x006e56a5,0x00237f7e,
-0xffa6b1af,0xffec0abf,0x003fd76a,0x0082592f,0x005b0222,0xffda8887,0xff3d00ab,0xffbf0aca,0xff654a7b,0xff336a05,0xff5610c3,0xff973883,0xffed0a26,0x000eec8e,0x00152274,0x000f0428,0xfff53dcc,0xffe81be3,0xfff338eb,0xffd7e8c0,0xffd11ef4,0xffed7e67,0xffc85a75,0xffb6e7ab,0xffbf9e41,
-0xffd99344,0xffda404f,0xffc4fbfd,0xffd8f69e,0xffef843f,0x00082c65,0x0013c7fd,0x00225607,0x0060b661,0x008a36ec,0x00a61e40,0x0085b370,0x00dd488d,0x009de619,0xfff4f823,0xffcdac1b,0xffd3adef,0xffecf8d4,0xffb5b4d8,0x00be497c,0x00a65a2d,0x0076f8fa,0x00570e93,0x004e2e2d,0x00400a15,
-0x002c6750,0x001c1054,0x0009e778,0x00082fe6,0x0015b824,0xffe38b3e,0xffc8b617,0xffc7c17d,0xffc9e600,0xffe060ed,0xfff4d74f,0x00053091,0x0011ca22,0x000fe29e,0x0028d4b8,0x002c50c9,0x0022393e,0x0019165c,0x0009b898,0xffee936e,0xffd6eb4c,0xffd1f6b9,0xffd934af,0x00239a41,0x0065984c,
-0x00c1e9a1,0x0086c582,0x0074bfa8,0x009c5613,0x00b4c411,0xff911c3a,0xff91bc13,0xff4f0000,0xff278379,0xff0ed3d1,0xff132264,0xff321f0b,0xff69c274,0xff671d73,0xff731949,0xff8bad0e,0xffa1276b,0xffb3e0a7,0xffb9372e,0xffa8c1a3,0xffad82f2,0xffc219dc,0x00023329,0x00211c9b,0x00270c28,
-0x00294289,0x002a96d6,0x0032ba5e,0x00173c3c,0x00134592,0x001e536f,0x003253fe,0x003da98b,0x0035e527,0x00278c9c,0x00130742,0x00092860,0xfff698ea,0xffe31d99,0xffbbcc92,0xffa94689,0x00044b0b,0x00016fe3,0xffe64870,0xffca9fad,0xffb05059,0xff99a3fe,0xff785454,0xff56a7ba,0xff5ad588,
-0xff642637,0xff5c7e02,0xff76f3e6,0xff7a86ab,0xff960847,0xffa90962,0xffc5b9a9,0xffd2e3b2,0xffee9ee1,0x000c791c,0x0034db76,0x00303638,0x002dcaa7,0x002f905b,0x00264ec6,0x001e3bf1,0x00120afb,0x0018aed1,0x001ee5bb,0x00299521,0x0027c45f,0x002a2bbf,0x0029efeb,0x002312b2,0x001b7f3e,
-0x0018c247,0x000f2a97,0xffdb7177,0xffddfb1c,0xffd1b9d6,0xffd8a91d,0xffd479c0,0xffd33982,0xffd7e17a,0xffd9350c,0xffdb0a7a,0xffdab7f7,0xffd7eee7,0xffd9c375,0xffd781d5,0xffd1c9de,0xffd00d50,0xffd1cf30,0xffd77eef,0xffe011c1,0xffdd1b7c,0xffef075f,0xffeb4418,0xffebc405,0xffeaaab6,
-0xffeb50ca,0xffeccbd7,0xffedde33,0xffeb01a4,0xffe54d0e,0xffdfa249,0xffdab36c,0xffd59c3b,0xffd1233f,0xffd39327,0xffd65411,0xffd7c894,0xffd96465,0xffed97dc,0xfff2f391,0xffe61d71,0xffdfb53f,0xffd565c5,0xffe496fb,0xffda2f96,0xffd1a991,0xffcfcfeb,0xffcdc19f,0xffcd7c34,0xffc9c9b5,
-0xffc906c1,0xffc78406,0xffd57a2d,0xffe06ae7,0xffd0e654,0xffdbef60,0xffe21965,0xffedd81e,0xffeacc2c,0xffeb139f,0xffead1f4,0xffeab091,0xffea48f0,0xffeaca5b,0xffe898b6,0xffe7d2fd,0xffe6dd60,0xffe617e2,0xffe528b4,0xffe2c014,0xffe59b38,0xffe732f9,0xffe92ed0,0xffebc394,0xffe633cf,
-0xfff0afca,0xfff070b3,0xfff5ced0,0xfff89d44,0xfff7dfdc,0xffe90cb8,0xfff7491e,0xfff65f08,0xfff271c9,0xfff96eee,0xfffc1239,0x00016492,0xfff32cb9,0xfff0ce0a,0xfffc7ea9,0xffef1705,0xffeb6778,0xffe2c4d0,0xffe8eb1e,0xffec20c1,0xfff337b5,0xffef2158,0xffecbd31,0xffe8a544,0xffe6ab29,
-0xffe8847b,0xffec7cc2,0xfff87868,0xfffb69d8,0xfff7f369,0xfff3f4a5,0xfff10141,0xffef53c4,0xffea64f6,0xffe92c5e,0xffed2f68,0xffed537e,0xffed9c1b,0xfff5fa06,0xfffdad27,0xfffb154f,0xffdec1c8,0x000226e9,0x000e01ed,0x00075747,0x0011057b,0x0013ab0e,0x0022f644,0x00011a4d,0xfffb3e5a,
-0x00123530,0xffec0037,0xffddfec6,0xffcdfd26,0xffdb0d97,0xffe42a1c,0xfff05288,0xffe52a26,0xffdb8dd4,0xffd1e7ef,0xffca5897,0xffd54bd1,0xffe9eb7e,0x0012aada,0x001caa6a,0x0008ed85,0xfff71d52,0xffe65f21,0xffe1f50f,0xffd8d854,0xffdc30e3,0xffe77a8d,0xffe66b53,0xffecc42b,0x00038ab9,
-0x001b60cf,0x001e2a3a,0xffd70423,0x00137210,0x001ad164,0x000c1193,0x003a1eb8,0x00479376,0x005a11f9,0x0016be83,0x0002cc5f,0x003a938e,0xffe525ec,0xffd3e6b5,0xffba3eac,0xffcbba2c,0xffdcfca3,0xfff5ea5a,0xffe0353a,0xffcf28f0,0xffbc84c9,0xffaba3b2,0xffbc068b,0xffd5aac4,0x002172c2,
-0x00356633,0x00162c2b,0x0007180e,0xffe9b10c,0xffdc8b1a,0xffc4cc76,0xffc10d9f,0xffde3037,0xffd8aeb0,0xffedf45a,0xfffe277e,0x00178bb8,0xfff85c71,0xffa7910d,0x0036666a,0x00757519,0x0047c902,0x007f35bd,0x00940ebb,0x00923c5e,0x0052eba7,0x0046f1bc,0x006def88,0xffe0654a,0xffbdc307,
-0xffb03d84,0xffc3cead,0xffdb43f4,0xfff9b290,0xffcd9d3f,0xffa8e950,0xff867564,0xff730827,0xff99dff3,0xffe025df,0x0073a283,0x0095a37b,0x00463085,0x000c87af,0xffcf6a36,0xffb2d73d,0xffa5feeb,0xffc603d6,0xffe8a8d5,0xffe12351,0xffe558e3,0x001ce4f0,0x00c28f22,0x00f712cb,0x00990be3,
-0xffa8909d,0xff39dcb5,0xff88481a,0xffe4eaaa,0x0024251b,0x004e76ba,0x0059826e,0x002c89e3,0xffd7813d,0x00266718,0x00392235,0xffef62a7,0xfffe30b3,0x0000188b,0x00104c64,0x00041a16,0x000ff60d,0x0019fa2c,0x00110594,0xffded145,0xff8ba31a,0xff458b9b,0xff58dd30,0x000478b0,0x003aa5dc,
-0x004d62b7,0x005253aa,0xffde1a4c,0xff71f27f,0xff5e0f6e,0xff95804b,0xff4def6a,0xff64705e,0xfebe7858,0xfebc81fa,0xfef01e94,0x0068e259,0x00f7963a,0x00a948fc,0x001f4ac2,0xffebda34,0xffe3ef90,0x0025b81a,0x004f1f89,0x0057b5be,0x0033a4de,0x00132c64,0x0020a3c4,0x000f23de,0x00008366,
-0xffffded2,0xfff4ee5e,0xffedacc8,0xffd93117,0xffd98d5d,0xffe46b1d,0xfff26c23,0x0021860a,0x003f63fe,0x0055c7a1,0xffa24dae,0xff92eed8,0x00565c48,0x002c2832,0x009ef7ff,0x017d5630,0x00038451,0x005af498,0x018099e4,0x00a38fee,0x003efe1d,0xffdb95a0,0xff6fcdc5,0xffa88f3e,0x004d7901,
-0x0061d5b1,0x005597d3,0x0007ccaf,0xfffb52bb,0xfff1cc22,0x00016f8d,0x002f2e53,0x00397369,0x00060541,0x0008b53e,0x00031dcc,0x0005fea3,0xffecc1f3,0xfff3e2b0,0x0020c3b4,0x004ef7b9,0x006aec25,0x006f553d,0x0059083b,0x0022aa20,0xffd49e01,0x00002da9,0x0065188c,0x0111a510,0xffe7610e,
-0xff27920f,0xfee4d3b0,0xff6d2b85,0xff6be746,0xff32e5fe,0xff828cd6,0xffc0c4ff,0xffec2aa9,0x00163853,0x0020aaed,0x000e0e86,0xffff0589,0xffe674bd,0xffedf23e,0xffd30e13,0xffcf76ff,0xffebe97a,0xffc74235,0xffb84e9c,0xffbee02b,0xffca9ad3,0xffc73ac5,0xffbc0239,0xffc93c89,0xffd7ef28,
-0xfff0b569,0xfffbfe84,0x00245a50,0x006f4b8b,0x00a4f9f3,0x00b78eaa,0x008d0f77,0x00be60cd,0x0076d1b0,0x00130104,0xffbe6628,0xffc1b90d,0xffd4f234,0xffb1cda3,0x00d92d29,0x00937c72,0x0079c545,0x005958ef,0x00568580,0x0042b1f8,0x002a5bbb,0x00157ded,0x000b35cb,0x000eae6e,0x0024f746,
-0x0000eb0f,0xffe036f7,0xffc782ed,0xffc9a0f0,0xffd880a6,0xffe2ff33,0xffffe49b,0x0011dfdd,0x0013d12a,0x0023697c,0x002615e8,0x00201908,0x00151186,0x00021481,0xffde2dbc,0xffd0712a,0xffde23d7,0xfffb592c,0x00474f4e,0x0080b72a,0x00c9b02f,0x00a23dd8,0x00a5057a,0x00d5255c,0x00eaf92a,
-0xff897d1b,0xff8c89d3,0xff464d41,0xff24cb11,0xff21520d,0xff3cf76a,0xff6401a1,0xff8ced81,0xff85f7b5,0xff8bff51,0xffa11c52,0xffaabf17,0xffba2f12,0xffc01f70,0xffb1a74a,0xffb1c5de,0xffb59d03,0xffee8aed,0x0010327e,0x0026c54c,0x002a91b6,0x002f7c8d,0x0035a81b,0x0027e5af,0x0020a49f,
-0x002220b9,0x00351774,0x003cfd98,0x003e36f6,0x003027a6,0x001e8403,0x0010150e,0xfff895a1,0xffdeb45a,0xffb3dbe6,0xff9f0957,0xfffb6f38,0xfff75908,0xffdad059,0xffbd651c,0xff996c28,0xff897540,0xff6fefae,0xff57e816,0xff6232aa,0xff70fd8b,0xff70a701,0xff8f1fa1,0xff9812ef,0xffb6a43c,
-0xffb949cb,0xffc70c15,0xffc75342,0xffe8186f,0x0009f0eb,0x002e068d,0x002a105d,0x002da787,0x00318e5b,0x002e9d05,0x002cc4eb,0x002860bf,0x002b874d,0x002f4eb6,0x0037b626,0x0036c818,0x0038433b,0x0036bf50,0x0026c6b3,0x00188a53,0x00103efc,0x0007e126,0xffe6ee1c,0xffea8529,0xffe007a8,
-0xffe2c814,0xffdfbd8e,0xffdd55d3,0xffde0339,0xffdc53aa,0xffde4b10,0xffdf5268,0xffdcfa35,0xffdfd7c4,0xffdded64,0xffdaf83d,0xffdb74c2,0xffe222b0,0xffe86018,0xfff06896,0xffee3e00,0x0001c8f5,0xfffdb178,0xfffc2328,0xfff9dc29,0xfff83817,0xfff7199f,0xfff66d5c,0xfff2a12f,0xffecc87b,
-0xffe59aec,0xffdf5333,0xffd9f52e,0xffd7455d,0xffdc25fc,0xffe15ecf,0xffe3c491,0xffe4ed2f,0xfffdb4e9,0x0002f677,0xfff9217a,0xfff38df6,0xffeab21b,0xfff2e3ae,0xffeab6ec,0xffe2ddfa,0xffe2a4a6,0xffe1466d,0xffe1e95b,0xffdf391d,0xffdf461b,0xffde9d71,0xffeadfc3,0xfff2e5bf,0xffe7197b,
-0xfff0b9c3,0xfff52b56,0xfffe9d5d,0xfffacea2,0xfffa91ca,0xfff9bab8,0xfff9495a,0xfff890dd,0xfff83df0,0xfff64597,0xfff58304,0xfff51e3c,0xfff4e304,0xfff3e3bc,0xfff07802,0xfff362e9,0xfff4f216,0xfff77d2b,0xfffafa36,0xfffa9062,0xfff3a171,0xfff3a7d9,0xfff71597,0xfff9c82b,0xfff9a5af,
-0xffee2c19,0xfffa0ca7,0xfff880b7,0xfff6ebd2,0xfffa6b8c,0xfffd2077,0x00045d47,0xfff599f4,0xfff30b19,0xfffce7d6,0xfff27a8b,0xffef17f1,0xffe404ca,0xffea7d3b,0xffed3365,0xfff3aacd,0xffefac16,0xffedc96b,0xffeafc41,0xffea6a59,0xffed1f9c,0xfff31488,0xfffbf3aa,0xfffe91f1,0xfffb9e0f,
-0xfff8149a,0xfff46747,0xffef8f6f,0xffece353,0xffec1de5,0xfff02c3d,0xfff110fd,0xfff5faf2,0xfffa7821,0x00023b9d,0x0002081f,0xffeaea9a,0x0004dfa5,0x000efa2b,0x000e4419,0x00104d47,0x0011e14d,0x00232f77,0x0001a38c,0xfffc34d6,0x000d3b41,0xfff16122,0xffe4176b,0xffcd46e1,0xffda9cda,
-0xffe188db,0xffeb6944,0xffdfdf85,0xffd89771,0xffd39559,0xffd0d419,0xffdf0b4a,0xfff8ac21,0x001812ce,0x001e6801,0x000c942e,0xfffc6f48,0xffeb571f,0xffe0732f,0xffdb1c39,0xffe068d0,0xffeda2e7,0xffeef2f7,0xfff660fe,0x00004cb7,0x00176a33,0x001e3db0,0xffe41815,0x0016f041,0x001a8379,
-0x00164a8e,0x0033f62f,0x003ef3eb,0x005dad13,0x00167266,0x0003cee9,0x0031cf46,0xffec8c5a,0xffdd2f99,0xffb4fe3e,0xffc8a9f9,0xffd64dfb,0xffebfae2,0xffd3b6e2,0xffc71475,0xffbdd1da,0xffb58e86,0xffcbc412,0xffef94bb,0x00299032,0x003907ae,0x001b7604,0x0010fe92,0xfff17346,0xffd4ccc4,
-0xffc68925,0xffc4bac6,0xffe45e7a,0xffe4e0bc,0x00062673,0x0009cdab,0x00252791,0x000a354c,0xffbe3260,0x003089e7,0x006dfde1,0x00548d2c,0x007f8980,0x0099dc95,0x009f22a3,0x00457a45,0x0038faed,0x0066af52,0xffe5b550,0xffc7943a,0xffa859e2,0xffbdb6fd,0xffcef5b0,0xffe323d5,0xffb20671,
-0xff95d27d,0xff86977d,0xff8373cc,0xffb69f8b,0x000e85dd,0x0082c7ee,0x008efe1e,0x0043ad0e,0x00142d14,0xffd8d4e4,0xffa85f6e,0xffa70de3,0xffcdffdb,0xfff78880,0xfff853c5,0xffd211fa,0xffe8cbb8,0x00735b11,0x00b9fde2,0x009c83bf,0xffccd812,0xff5a00a4,0xff869905,0xffdae5cf,0x0015aacf,
-0x001f9fed,0x00661328,0x0045f2f4,0xffd01fcb,0x00288fb6,0x00351864,0xffede56e,0xfff0e7d1,0xffee7b5b,0x0000e0d3,0x00047c38,0x00154a1b,0x001a1d4f,0x000be9b3,0xffdaa335,0xff891882,0xff4aa8e2,0xff72c380,0x0040227b,0x004e7319,0x0052f16b,0x0065a4c9,0xffcdd1e4,0xff5efea6,0xff64dfaf,
-0xff959659,0xff74b7e5,0xffaeeacb,0xff16653e,0xfef0ab86,0xfedf9d36,0x0034fc07,0x00d7ac81,0x00add09d,0x0027975b,0xffe69325,0xffcd30bb,0x00096076,0x0038d829,0x004e0374,0x00347d20,0x00146ec1,0x001dd5dd,0xfff737ce,0xffe76b56,0xffea6dfb,0xffe4a7cc,0xffe24129,0xffd4e7fa,0xffc36c09,
-0xffd1a681,0xffe02f80,0x0045f270,0x005b3598,0x002aa1f0,0xffa7002b,0xffa75cc7,0x006f98ce,0x0049120a,0x00bac741,0x0187b208,0x00164af4,0x00179abb,0x01665c8a,0x004d5da8,0xffe44edd,0xffd667b8,0xff7d3d0b,0xffa6df41,0x00164e2d,0x00439d66,0x0048a6c2,0x00094deb,0xfff36c86,0xffe959c2,
-0x00021dc2,0x00235e78,0x003460ea,0x000c8383,0x0013aca4,0x0013cd94,0x00181312,0xfff7f267,0x0001253b,0x0035c90d,0x0049b765,0x005bd98b,0x0057d334,0x003b08e7,0x001b9cea,0x0009f88c,0x0010e1e4,0x0073e139,0x0160397a,0xff87db1c,0xfea71ea8,0xfeb1c308,0xff2ec7d4,0xff7fd951,0xff416599,
-0xffab223b,0xffe7e127,0xfff7626c,0x0015309f,0x001edabd,0x000ae652,0x00057aba,0xffe4a55e,0xffe8c26b,0xffd5ac04,0xffd62b4a,0xffe9e172,0xffcc4363,0xffbf480f,0xffbf29f7,0xffbd97c5,0xffb823d2,0xffb8dd78,0xffb9e290,0xffc19d29,0xffd7c2d0,0xffe9d142,0x00281147,0x0075afad,0x00ace83a,
-0x00bbe84a,0x009d9afe,0x009b4ad6,0x0052a002,0x0037bf09,0xffd377cd,0xffd0cbb9,0xffc967b0,0xffbbd418,0x00c58754,0x005a326c,0x0063c048,0x004c650a,0x0051bdeb,0x00475d4e,0x002e1abc,0x0010176b,0x000a5ba1,0x0011c469,0x002b3e9d,0x001b49fe,0xfff8a6b9,0xffc9b90a,0xffc8bed3,0xffcdd401,
-0xffd3d2a4,0xfff81ef9,0x000faac3,0x00197ca4,0x001f3904,0x0021c4e8,0x0021f694,0x0014cbe8,0xfffd24a2,0xffd9f91c,0xffdd0468,0xfff88e50,0x0029a96d,0x0061bbdd,0x008c73f4,0x00bdaee9,0x00ad237e,0x00becb76,0x00e41987,0x00f260c8,0xff9cc153,0xff8ed3cd,0xff58c912,0xff3df86d,0xff40cce9,
-0xff6fd8b1,0xff9a9e67,0xffb1ceec,0xffabc08a,0xffaaf4d7,0xffb80f43,0xffb29bd4,0xffbc5b20,0xffc17335,0xffbebecf,0xffbba6de,0xffaf2372,0xffd9fc7e,0xfffb181f,0x001c5c32,0x00240cca,0x002dcd33,0x00309fcf,0x002e71cc,0x002aa37d,0x0024491e,0x002fca0f,0x003280f1,0x003c0ac4,0x002fb8da,
-0x00243fda,0x0016ffbc,0x00019a93,0xffe9fb71,0xffc493e0,0xffb403cf,0xffedb8fa,0xffea3ad7,0xffcb8177,0xffada377,0xff83eb32,0xff7b29d8,0xff6aa1dc,0xff5c5bd2,0xff6bda77,0xff7ec28d,0xff86652a,0xffa30f11,0xffaf8cff,0xffc9f6b6,0xffc606be,0xffca8063,0xffc6cc81,0xffe573cb,0x0002e64c,
-0x001d4255,0x001da0fd,0x002730c4,0x002ed786,0x00316b45,0x0033c11a,0x00350aee,0x0035cb57,0x0037f73b,0x003d569e,0x0039b5e8,0x0036ae71,0x0030170d,0x001adb7a,0x0009276e,0xfffde804,0xfff7a054,0xfff05ef7,0xfff366d3,0xffebbaaf,0xffe9bc12,0xffe7a22f,0xffe4b5b0,0xffe146e9,0xffdc70e8,
-0xffdece62,0xffe12a03,0xffe0716f,0xffe32581,0xffe237b1,0xffe24683,0xffe71e55,0xfff15c89,0xfff834e1,0x00000657,0x00029249,0x0013e4f3,0x000fa582,0x000c4b51,0x00092c87,0x00058134,0x0002875b,0x00007ebe,0xfffb7e05,0xfff5793a,0xffee550f,0xffe82711,0xffe3e191,0xffe34980,0xffe9290d,
-0xffeed0b9,0xfff0d75a,0xfff05512,0x00016f27,0x00050192,0x00005243,0xfffd1352,0xfff893d6,0xfff5fc0f,0xfff21052,0xffed5e75,0xffeedfa7,0xffee693d,0xffefe8e0,0xffef317d,0xfff07bd2,0xfff0dc80,0xfff7add1,0xfffb4209,0xfff8fb15,0xfffe225e,0x00001192,0x000583af,0x0001bd25,0x0000fbd1,
-0xffff99ba,0xfffeeafa,0xfffdeb41,0xfffce396,0xfffb8e8a,0xfffb1848,0xfffb0760,0xfffb3c0b,0xfffa5640,0xfff6d935,0xfff879bd,0xfff92da7,0xfffb403a,0xfffea0e3,0xfffe9b09,0xfff71dc4,0xfff7c680,0xfff94108,0xfffc5501,0xfffc9873,0xfff4119b,0xfffd6aad,0xfffb6812,0xfffb8c75,0xfffb596d,
-0xfffdbe62,0x0005867b,0xfff8777e,0xfff5f2f9,0xfffcb999,0xfff6d8dc,0xfff43d1a,0xffe5ed69,0xffed7fcd,0xffef9c54,0xfff49355,0xfff10b1e,0xffefd4d5,0xffee3c41,0xffef0b73,0xfff2804d,0xfffa6b8a,0xffff74f7,0x00017161,0xfffeb35b,0xfffc5c43,0xfff843a2,0xfff1203f,0xffef52d2,0xffeee380,
-0xfff35e3f,0xfff56b04,0x0000c219,0x0000c4a2,0x0008afb0,0x0009cd9b,0xfff8c5e0,0x00087626,0x001023ca,0x0014c5f8,0x000eec68,0x000f31f8,0x0020280e,0x00033103,0xfffed0bb,0x00085db5,0xfff82043,0xffebd39f,0xffcf79db,0xffdbd318,0xffdfbb57,0xffe74cd0,0xffdc9408,0xffd813e9,0xffd7414c,
-0xffd977ba,0xffea5d5d,0x00086531,0x001cc64d,0x001ee91f,0x000e2504,0x00019431,0xfff1317b,0xffe1b95b,0xffdd09cd,0xffe3cd08,0xfff43f39,0xfff9a482,0x000283a0,0xffffcd61,0x00177f81,0x001fe9e6,0xfff54cb0,0x001b5dfe,0x001a5051,0x00205929,0x002b8e3e,0x0032799c,0x0058bc8b,0x0017105f,
-0x00082cd9,0x0026e008,0xfff6522a,0xffe97c16,0xffb4ce24,0xffc944b8,0xffd1cf85,0xffe22848,0xffcaf4a4,0xffc33041,0xffc1e879,0xffc28798,0xffdd4676,0x000c00a6,0x002f4e3d,0x003948fc,0x001c6e47,0x00199b29,0xfff9c00f,0xffd1e1d7,0xffc671f3,0xffc65354,0xffe9896d,0xfff22114,0x00235853,
-0x001818ad,0x00360a7a,0x00200e97,0xffdcada8,0x003030fe,0x0066b611,0x0062eb0c,0x007dce5f,0x009a09aa,0x00a5f44d,0x003d9ce3,0x0030648e,0x005bab39,0xfff0ae4b,0xffd58362,0xffa0d8aa,0xffb76b9d,0xffc1e288,0xffcc0ccd,0xff9c5854,0xff8a7ffc,0xff8bd70f,0xff9886fd,0xffd6f15a,0x0040a29c,
-0x008e3ad7,0x00832231,0x003b6ca4,0x001ad299,0xffe51784,0xffa727a7,0xffa7d3a3,0xffd2d911,0x0006b40d,0x00148a08,0xffbc520e,0xffbdce6f,0x00287a56,0x00779c55,0x0096156f,0xfff0db88,0xff7efc9f,0xff87e31d,0xffcb3c36,0x0005c6b2,0x000223ff,0x007391f1,0x005eab5f,0xffcec1c0,0x00270bd1,
-0x002f30c7,0xfff9d495,0xffeee09b,0xffe8df3c,0xfffadffe,0x000d746c,0x001f3888,0x0019fbe1,0x000bfbbf,0xffd9fdea,0xff80737d,0xff54dc64,0xff920002,0x006f1af7,0x0057f420,0x0051bb70,0x0067bba4,0xffbc1dfe,0xff5097b7,0xff5c8920,0xff8f3a6e,0xffac86d8,0xfff04ca5,0xff6af8ab,0xff23b81e,
-0xfee2a64e,0x000036cc,0x00a79f48,0x009f5a81,0x00345ebc,0xffec5cff,0xffbb2e76,0xffef560b,0x002371aa,0x00426147,0x0031b0f9,0x001405c3,0x001a7d30,0xffe33664,0xffd0ea5d,0xffd272d4,0xffd78c41,0xffdb9d14,0xffd58e57,0xffb9d615,0xffca6321,0xffd854aa,0x006aa882,0x00742f86,0x000a0f77,
-0xffb087e2,0xffbb70a8,0x0075c7cc,0x006cd2a2,0x00d572b4,0x0171a800,0x003225ff,0xffafd8af,0x0103819a,0xffffe813,0xffa32f3b,0xffe08630,0xff9d8d3c,0xffb59a18,0xffe1315d,0x001de4b9,0x0033db27,0x000fd2b1,0xffeec78d,0xffe3da12,0x00036e95,0x00161fbd,0x002a350b,0x0011f52d,0x00195de9,
-0x001e48b7,0x00240420,0x00077fb3,0x0014e825,0x00487745,0x004def5c,0x00545ddd,0x0040a1bb,0x001ef4e2,0x0016cec1,0x00391f13,0x002dd587,0x007b4f59,0x015d87a4,0xff3d2b55,0xfe5eb47c,0xfeb7a6b8,0xfefa9ae8,0xffaece71,0xff6e45e8,0xffce8df8,0x0004540b,0x000ec452,0x0011b50b,0x00161362,
-0x000807ba,0x0008d2ff,0xffe38365,0xffe3667a,0xffde0ac1,0xffe2aa0b,0xffe7fbce,0xffd5f564,0xffc957af,0xffbf268a,0xffb45799,0xffae711f,0xffb8f27e,0xffb03272,0xffb3bcf5,0xffc68216,0xffe2a302,0x002af1a2,0x00751734,0x00a8096e,0x00b68c24,0x00aeb458,0x007fcab6,0x0037fd77,0x004b0e2f,
-0xfffaa53b,0xfffaa27a,0xffdee1e9,0xffdf440c,0x00863285,0x001112b2,0x0037b6e4,0x00330f3e,0x0041c231,0x004b2462,0x00365568,0x0011f434,0x000db194,0x00159b4f,0x002b1d95,0x002c7c49,0x000b6890,0xffcf5501,0xffc7dbd6,0xffc2b757,0xffc6c9b3,0xffee935b,0x000c1bb8,0x001de92e,0x001c98bf,
-0x001f8748,0x00248c97,0x001735b9,0x0001493f,0xffe92a71,0xfff7f6db,0x001ce2e9,0x005c6fe1,0x007a140a,0x0099f42e,0x00b7262c,0x00b1897f,0x00beed97,0x00c9ece4,0x00c459fd,0xffc5d1ce,0xff9d4b4b,0xff7fadd8,0xff70f0b6,0xff70aa71,0xffa6e6d5,0xffcf525d,0xffd7ef13,0xffd4d42e,0xffcd9f79,
-0xffd003da,0xffbb4ab8,0xffbd9038,0xffc10991,0xffc9b289,0xffc59ae9,0xffb1bc91,0xffc85a93,0xffe4001d,0x00091ffe,0x0017a6a9,0x00266eee,0x0027cc9b,0x002d732f,0x002d95ca,0x0023c6ce,0x0025701a,0x0024bc6f,0x0033ed82,0x002c7103,0x002791f7,0x001dcb07,0x000fa2cd,0x00029d62,0xffeeeca6,
-0xffe1dccc,0xffdc5760,0xffda56c5,0xffbb7dd7,0xff9c728c,0xff70b55a,0xff7057c7,0xff6a1d79,0xff6581ce,0xff78488d,0xff8cd030,0xff9b6e53,0xffb1ab9f,0xffbdb9b2,0xffcf64a6,0xffccc228,0xffce7207,0xffcd88a3,0xffe62c2f,0xfffc50b0,0x000bbf6e,0x00114750,0x001fde86,0x002bf368,0x002e59f7,
-0x0030f0f9,0x003479a4,0x0035d799,0x0038a50a,0x003d0ccd,0x00354968,0x002d2d20,0x002124a2,0x000a3768,0xfff61b5b,0xffe75020,0xffe26347,0xfff8b52f,0xfff9a724,0xfff3e7a6,0xffee4e8f,0xffec6d19,0xffe8626d,0xffe0bd83,0xffd910e5,0xffdb1fef,0xffde3ad7,0xffdf3d42,0xffe11677,0xffe1c55b,
-0xffe42390,0xffed73f5,0xfff8cb6f,0x00007034,0x0007fa0c,0x00105b0e,0x001b5188,0x0017dad0,0x001438bf,0x0011a1f4,0x000e638e,0x000bf8bd,0x0009bbbd,0x000567e4,0x000052d0,0xfffb1145,0xfff64132,0xfff3dcff,0xfff51e8f,0xfff97cc6,0xfffdfc18,0xfffedd99,0xfffc38f1,0xfffb4771,0xfffc64e0,
-0xfffc0b32,0xfffaa224,0xfff99ebc,0xffef6012,0xffeead06,0xffecbf4c,0xffefcd24,0xfff02d6f,0xfff22013,0xfff35dc4,0xfff5a4f8,0xfff6a2f6,0xfff8b9ec,0xfff91947,0xffff846a,0x0000a2c0,0x00010ca5,0x0002b4ac,0x00001939,0xffff1ae9,0xfffd8984,0xfffcdc41,0xfffbe2fe,0xfffaddf4,0xfffa3c8e,
-0xfffa2cca,0xfffa52d8,0xfffb22f2,0xfffac7a6,0xfff87481,0xfff7d1ed,0xfff6d75f,0xfff74971,0xfff94c2e,0xfff6e0e9,0xfffaabe3,0xfffbfb46,0xfffbeb0e,0xfffeb1fd,0xffff1b07,0xfff9b0ab,0xffffdd24,0xfffd3f22,0xffff48cf,0xfffb88ae,0xfffd40e6,0x000469a3,0xfffad997,0xfff8ca18,0xfffc33b5,
-0xfffad71d,0xfff97e01,0xffe8f68b,0xfff0ca6b,0xfff22e33,0xfff5f5ba,0xfff3202a,0xfff29b17,0xfff1a1dc,0xfff42aa0,0xfff84bb6,0x0001f5d3,0x0002d36d,0x0003e570,0x0000f82b,0x0000588f,0xfffc1cf4,0xfff38aee,0xfff1aeca,0xfff19559,0xfff70726,0xfff9cdb6,0x000be39a,0x000728a8,0x000e6ded,
-0x00100a51,0x0004867b,0x000ac354,0x000fed8c,0x0019171a,0x000c400f,0x000b1a36,0x00193630,0x000481db,0x00020555,0x00043bd7,0xffff3cb9,0xfff454ac,0xffd4d280,0xffdec578,0xffdf014b,0xffe47efc,0xffdbb882,0xffd9b166,0xffdb7399,0xffe39a0d,0xfff6e42a,0x001857b3,0x0020ee52,0x001e9be9,
-0x000dbad6,0x0005df7c,0xfff71237,0xffe4fa18,0xffdf1a97,0xffe6e8df,0xfffbfa4e,0x0004c112,0x000d7aeb,0x00004bc5,0x00186302,0x0021006c,0x00058056,0x001d0135,0x0017563e,0x0026796c,0x001fa97a,0x00227bf6,0x0049be30,0x0016fcb7,0x000dcc92,0x001c47ba,0x0000f421,0xfff7bda1,0xffbb7946,
-0xffcdd1df,0xffcffbd0,0xffd9fcc9,0xffc72a97,0xffc3db04,0xffc68634,0xffd1db1d,0xfff02bfc,0x0028bb48,0x00330da5,0x003700f4,0x001a1453,0x00207bf9,0x0001e1c4,0xffd29939,0xffc6a297,0xffc85824,0xfff0d573,0xfffe74ab,0x003f363a,0x0024ce66,0x00428c14,0x003248c0,0xfff9d4f0,0x002f5786,
-0x005c1247,0x006ede5a,0x007850af,0x0092ee64,0x00a33b31,0x00393b5b,0x002c7406,0x004fb920,0xffffac29,0xffe6cb85,0xff9f3554,0xffb4d793,0xffb7e883,0xffb85f7e,0xff8f9ad1,0xff86ec2a,0xff91e217,0xffb0ddc9,0xfffa4339,0x00725fac,0x0095ed0d,0x00757aa2,0x002f3104,0x001f4e46,0xfff16bf1,
-0xffac1439,0xffaa7193,0xffd7343d,0x00198a00,0x0031096b,0xffa44568,0xffa0a0c1,0xfff03af4,0x00408ae7,0x008646d4,0x001020bd,0xffa3b906,0xff88a71e,0xffb7627e,0xfff4e5a0,0xfff30d5f,0x007efabe,0x00726813,0xffcff14b,0x0022cd22,0x0028eede,0x000e651c,0xfff749ab,0xffeda46c,0xfffc16ab,
-0x001bd309,0x002bd6e3,0x001ee961,0x000cb125,0xffd603d5,0xff7793b3,0xff5df687,0xffaecd4a,0x0090b180,0x005e38b8,0x00513069,0x00637d72,0xffaf7844,0xff4b7f47,0xff5118ab,0xff819581,0xfff41b04,0x00233201,0xffaa0a38,0xff491808,0xfef06136,0xffcaf894,0x006e5a16,0x0086d971,0x0044a629,
-0xfffcabd1,0xffb15ca2,0xffd969f9,0x001000a0,0x0037b0a8,0x002af194,0x00106018,0x001319a0,0xffd7f5e9,0xffc5233c,0xffbef1f2,0xffd1fc11,0xffda5b37,0xffd8c72f,0xffb538e4,0xffcad131,0xffe34703,0x008bac88,0x0086675f,0xfff52d57,0xffb906c4,0xffcc41ac,0x006dbd1e,0x008ff059,0x00e65d48,
-0x0140c850,0x005625fd,0xff410b24,0x0065d8d0,0xffc74d54,0xff8e6597,0xffe65c9a,0xffc4345f,0xffcc5f98,0xffb7c2a9,0xfff85c87,0x001b3e99,0x0017af9d,0xffee6657,0xffe1c704,0x000239b6,0x0007deba,0x001cd98c,0x00159eab,0x0019804c,0x0020fecc,0x00238079,0x0017a82c,0x002ac7cb,0x0053d35c,
-0x0052e318,0x004d0888,0x0029286a,0x000c9781,0x001b3306,0x0057a669,0x005c9da2,0x00800b18,0x00f33456,0xff07ed1d,0xfe56f41a,0xfee1e88a,0xfed48986,0xffee7958,0xffb59819,0xfff22ae0,0x0019f102,0x002b8e4c,0x00118af0,0x000c8f36,0x0005bf52,0x00091624,0xffe46968,0xffdf64d7,0xffe881b2,
-0xfff05779,0xffe7858f,0xffe279cf,0xffd46a3b,0xffbea808,0xffafeeab,0xffabb521,0xffb994a7,0xffacae76,0xffaf9293,0xffbf6e13,0xffe4d155,0x002b6240,0x0072c38e,0x0099e506,0x00a5a5ea,0x00ab1efe,0x00615386,0x0023990c,0x004a8505,0x002095f4,0x0026fcbf,0x000c6839,0x000dbbda,0x002ae2c2,
-0xffcda92f,0x0006973c,0x0016cb7f,0x002d3eb9,0x0048479f,0x003cff3c,0x0018e3e3,0x001709bb,0x001cda41,0x00275eed,0x00336b17,0x0016a3af,0xffda48e1,0xffc812ca,0xffb99366,0xffbd91f2,0xffe22209,0x00038d5c,0x001b966a,0x0019961c,0x001ddf30,0x001fce62,0x001b3945,0x000ea7bf,0x0000c9df,
-0x001d7de8,0x0047ac6e,0x00870b49,0x0090837b,0x00a74342,0x00b4c485,0x00af7ab4,0x00a67272,0x008826df,0x006a1b67,0xfffc20b2,0xffc0187f,0xffae20a4,0xffae1173,0xffb1ba51,0xffe10c46,0x00013a14,0xfffdf495,0xfffcbe7d,0xfff01fc6,0xffe7fe5d,0xffc7e4d2,0xffc14165,0xffc15f3a,0xffce83dc,
-0xffcb7a72,0xffbb3dde,0xffbcf298,0xffd05a6c,0xfff2f352,0x00095a80,0x001c41d0,0x001d1c38,0x00299439,0x002afde8,0x002091d5,0x0018c147,0x0014c824,0x0025827f,0x0024c258,0x002557b1,0x00215a61,0x001e1c39,0x00224800,0x00268d66,0x001aca35,0xffcaa0ea,0xffc6e825,0xffac9d7e,0xff8ef609,
-0xff64e721,0xff6ad47f,0xff6dc108,0xff711802,0xff8472d8,0xff9827a2,0xffaadfcc,0xffbade42,0xffc50667,0xffcf6121,0xffd01731,0xffd1cfe3,0xffd43271,0xffe588e4,0xfff4ef30,0xfffa34cf,0x00045373,0x0016f306,0x00279b60,0x00260f86,0x0025f112,0x00296ae9,0x002b84ed,0x002efb72,0x00323d64,
-0x002ace9c,0x0021ffde,0x001537a1,0xffffa5dc,0xffea4452,0xffd8bf01,0xffd079bf,0xfffd64ea,0xfffb765f,0xfff73ffa,0xffeeb4bc,0xffec81b1,0xffe753d1,0xffdc85ad,0xffd2474a,0xffd42952,0xffd78f16,0xffd99e8b,0xffdaed68,0xffdd0bf2,0xffe0aca2,0xffec7834,0xfff75734,0xffff6631,0x0006a2ea,
-0x001266e4,0x00177b02,0x00168a72,0x001466ae,0x0014087b,0x00137a35,0x00142e03,0x00139dfd,0x001098f4,0x000cc663,0x00094cbf,0x00053f40,0x00033ae4,0x0004790e,0x00058839,0x0007f9d1,0x0007a2ef,0x0003b52d,0xffefe5fd,0xffeead7b,0xfff0b7f4,0xfff02fe9,0xfff11d73,0xffe35985,0xffe41179,
-0xffe38b4c,0xffe7a876,0xffe8aac7,0xffead78b,0xffed5274,0xfff02220,0xfff16f7a,0xfff1201e,0xfff068b8,0xfffb6027,0xfffa589d,0xfffaaf8c,0xfffaaa63,0xfff98121,0xfff8b0f2,0xfff76331,0xfff72db9,0xfff69150,0xfff66621,0xfff5e5be,0xfff5fd94,0xfff641f4,0xfff77a91,0xfff7d9f8,0xfff72a5e,
-0xfff44851,0xfff1616e,0xffef8e67,0xffef669c,0xffea3ef0,0xfffd0dce,0xffff161d,0xfffd5fe4,0x0000a55a,0x0001c2b8,0xffffa19e,0x00010f98,0xfffea965,0x0002c00e,0xfffc388b,0xfffd3133,0x00029aed,0xfffdea21,0xfffcc35e,0xfffd2bca,0xffff2100,0xfffe3bcb,0xffee8f6e,0xfff4dcc4,0xfff4d121,
-0xfff68ba0,0xfff4d873,0xfff4e225,0xfff42754,0xfff878da,0xfffd1aec,0x0008060f,0x0004ca0f,0x0004cdd5,0x000162ad,0x0002b5de,0xfffeb768,0xfff58c11,0xfff37905,0xfff3bb9a,0xfffa1f95,0xfffd21fa,0x00147464,0x000b98ff,0x001351c1,0x00134ec6,0x000d1a5a,0x000b4a26,0x000dc4f4,0x001a302e,
-0x0007da79,0x0005372a,0x000f117d,0x0004c5c3,0x0004ea26,0x000141bf,0x00066b2f,0xfffcec2a,0xffdcc6fd,0xffe28b56,0xffe00807,0xffe2422b,0xffdbad25,0xffdbe93c,0xffdf4baf,0xffedbbd9,0x0002a62b,0x0025aa6c,0x00227e43,0x001bc0b5,0x000a312e,0x0007f3af,0xfffbb7b0,0xffe8b4c0,0xffe22a42,
-0xffea6779,0x0002fdad,0x000dd2aa,0x00150886,0x0000edeb,0x0018212d,0x00201ec7,0x00139819,0x001b44c7,0x001152fa,0x00269cc4,0x0010d919,0x000feb12,0x00325a9d,0x0014c7fa,0x0013b8e0,0x00137482,0x000c2c47,0x00068a0a,0xffc81a31,0xffd50aa2,0xffd093b6,0xffd4b34b,0xffc64f47,0xffc76ad8,
-0xffcb6ab8,0xffe1976d,0x0002090b,0x00416d14,0x0032fa03,0x0030fd95,0x0013bc5f,0x00233799,0x0008518d,0xffd5891b,0xffc9e5a5,0xffcd3416,0xfff9e215,0x0008de29,0x00547ee4,0x002e77d1,0x00490380,0x003d5e41,0x0013e4f2,0x002c2429,0x004e12f7,0x007417de,0x006dcaef,0x0083edb6,0x009309cf,
-0x0036b762,0x002d1a3e,0x0044b772,0x0011c202,0xfffafdf1,0xffa6015e,0xffb63e38,0xffb1aa27,0xffa9c573,0xff88c657,0xff8812c3,0xff995a14,0xffcb5fb3,0x001d3bb8,0x009c29f5,0x0095772b,0x00637222,0x001d2ba9,0x001fdecb,0xfffc2d6e,0xffb4738e,0xffb43bd7,0xffdfefae,0x002ca379,0x0049757f,
-0xff8c50bb,0xff8f674a,0xffc908df,0x00165cc2,0x00716ec3,0x00272d6a,0xffc4e259,0xff88357e,0xffa51b1a,0xffe71d63,0xffef9b8d,0x0084c05a,0x007ca4fe,0xffd4353f,0x001bc016,0x002179b0,0x0025c1ee,0x00089de8,0xfffc4827,0x00054584,0x0030aaf9,0x003c74f3,0x0027eb0d,0x0009a2a0,0xffcbf673,
-0xff738101,0xff6907ba,0xffc92220,0x00a6800e,0x0062a3df,0x0050a381,0x00613e15,0xffa6d8be,0xff4d3a61,0xff4c46c5,0xff718ae3,0x003abc79,0x00494db0,0xffda8f08,0xff65eb33,0xff011c90,0xff98993b,0x002fde46,0x0069311c,0x0051eda6,0x00107f96,0xffb00157,0xffc7d718,0xfffdcecc,0x002e124a,
-0x00207cb8,0x0008dce1,0x00075563,0xffd5c064,0xffc5e25e,0xffb3f7c7,0xffd1d645,0xffd8ac02,0xffd495c3,0xffb4c887,0xffd2250f,0xfffae788,0x00a4458d,0x008f9729,0xffe92c9c,0xffbed187,0xffdc116f,0x0064fa26,0x00ac9dc7,0x00e7ed68,0x00f85856,0x00726fe4,0xfee1e588,0xffaf3a22,0xffa9f390,
-0xffa1476e,0xffe61ecf,0xffec2924,0xffe55f29,0xff9e1a5f,0xffda35df,0x0004eedc,0x001c4320,0xfff3e25e,0xffe43c4f,0xfffca913,0xfff9badb,0x000f0343,0x00188c19,0x0014c59a,0x001a885c,0x001493ce,0x0021b1ce,0x003b8aa6,0x0055104e,0x00528403,0x00413c99,0x0013da29,0xfffea121,0x001d4d3a,
-0x005a970e,0x00946a90,0x0086135d,0x00490d74,0xfefb9a06,0xfe91768e,0xff146f0d,0xfec6ebc2,0x0035e479,0x000d2cfa,0x0018b41f,0x002c3eb3,0x004770ac,0x0012012b,0x000337de,0x00062e49,0x00070334,0xffe7eebb,0xffde0738,0xfff12ec4,0xfffa9475,0xffe98484,0xffef16fa,0xffde75ec,0xffbe8a79,
-0xffaee7d9,0xffadcb58,0xffb81ba4,0xffad48f6,0xffb1444f,0xffbd5b03,0xffeb586f,0x002af486,0x0071d40e,0x008a1351,0x009007a7,0x0090ff45,0x0035bc5e,0x0009e960,0x0036fbb9,0x0035688c,0x004078df,0x0036c3db,0x003c2154,0xffca9c1c,0xff95bdd8,0xffdca0ef,0xffffb094,0x001b6f74,0x003e9935,
-0x003db5f8,0x00208401,0x0022808c,0x0025734b,0x0022760e,0x0031870a,0x001ae999,0xffea1156,0xffca27d0,0xffb3d0bb,0xffb8641f,0xffd32274,0xfff4fa86,0x000f58a8,0x0012b1af,0x001b64d1,0x0018f922,0x00212da3,0x001f1db5,0x001cd58e,0x00441ee1,0x006d7456,0x00a5d779,0x009f7faf,0x00ab0505,
-0x00a831c5,0x00a98b23,0x0084771d,0x002f1720,0x00007fb0,0x00350a8f,0xfff48c79,0xffe1f57a,0xffeab133,0xfff8690a,0x001ae4f1,0x002f6a8f,0x00218a6a,0x0020b0de,0x000f675b,0xfffe10b4,0xffd81d3a,0xffc7e263,0xffc17f4c,0xffce03ec,0xffcd9790,0xffc6b8c4,0xffb9349d,0xffc44516,0xffdf9af7,
-0xfffb10a4,0x0010203b,0x0011b884,0x0023ed5d,0x0025c348,0x0018f58b,0x000b77c0,0x00046547,0x00117706,0x0016d777,0x001ddb4b,0x0022fe6f,0x002abf00,0x003f7a6d,0x005a0b7c,0x005164f4,0xffbd2c9a,0xffb3de1b,0xffa16621,0xff88d06a,0xff6488e6,0xff6cd7b4,0xff76135a,0xff7dfe7e,0xff8f525a,
-0xffa0453f,0xffb390c2,0xffbeb63e,0xffc84501,0xffcd4c15,0xffd136a7,0xffd18798,0xffd43ece,0xffdf376a,0xffe994cd,0xffe74b7f,0xfff50db6,0x000a6656,0x001e9170,0x0019b437,0x0017025e,0x0019bfe3,0x001b62c4,0x001e1afd,0x001f498e,0x001b5efc,0x00149cff,0x000b863c,0xfffc6e6f,0xffea431a,
-0xffd9a34d,0xffc8013d,0xfffc5aa0,0xfff6e51a,0xfff4b356,0xffe9238f,0xffe69e57,0xffe0cfff,0xffd3fadb,0xffc872f2,0xffca54eb,0xffce60a2,0xffd1b4f4,0xffd2a500,0xffd59a4e,0xffda1bf2,0xffe6684c,0xffefedfa,0xfff80580,0xfffecc24,0x000be7dc,0x000bbb6c,0x000de936,0x000e30bc,0x00109f5b,
-0x00133df9,0x0017a91b,0x001a0438,0x00185852,0x00164bbe,0x00149c45,0x0011875e,0x000fb30c,0x000fd046,0x000ba4b4,0x000a30e0,0x00083b21,0x0003f39f,0xffe2f310,0xffdfb3c6,0xffe31c73,0xffe32e7e,0xffe50f2d,0xffd61956,0xffd785c8,0xffd7ba73,0xffdca32b,0xffde0329,0xffe031f9,0xffe38678,
-0xffe6a110,0xffe826e0,0xffe6c00a,0xffe5c54d,0xfff2a505,0xfff0879a,0xfff12140,0xfff01a12,0xfff09fa7,0xfff052e9,0xffefb439,0xfff06344,0xfff0756d,0xfff16e01,0xfff0d819,0xfff0f616,0xfff14886,0xfff28b56,0xfff37744,0xfff4b4b5,0xffefeabe,0xffeb695c,0xffe714e8,0xffe45e5e,0xffdd3c08,
-0xfffef3e1,0x0001a16b,0xfffe54de,0x0001dd49,0x00034478,0x00038d27,0x0001815a,0xfffedb18,0x00040190,0xfffb507b,0xfffb902b,0xfffe92cc,0xffff2fe6,0xffff4376,0xfffd7804,0x000260cb,0x00024ae3,0xfff3b204,0xfff838a1,0xfff7259e,0xfff7601f,0xfff69f3a,0xfff730c9,0xfff6b5a4,0xfffc90c1,
-0x00017b09,0x000d00eb,0x000631be,0x00053cd8,0x0001231f,0x0004a3e5,0x00011f4d,0xfff75abd,0xfff5bfa4,0xfff65af3,0xfffd1eb2,0x000019eb,0x001a5fa4,0x000d9561,0x00153c5c,0x00141b37,0x0012f8de,0x00096149,0x00099e8f,0x0018de61,0x000259a7,0xfffe10ae,0x0002ff02,0x000403e9,0x0007374b,
-0xffffba07,0x000c7c80,0x000494bf,0xffe69077,0xffe68863,0xffe0cf34,0xffe0ec6d,0xffdcb4ea,0xffdf64ae,0xffe4894b,0xfff89f87,0x000e3737,0x003096be,0x0022a9c9,0x0017db5b,0x000578ea,0x0009aa34,0x00006d9d,0xffec3f86,0xffe754ee,0xffefd236,0x00098897,0x00153e3e,0x001a5833,0x00005818,
-0x00163441,0x001d68eb,0x001f970d,0x00167918,0x00088867,0x00228e99,0x000023a5,0xfffc2607,0x00157353,0x0010545d,0x00183761,0x000d1289,0x00164adb,0x0013d9fe,0xffd93d7a,0xffdd433f,0xffd2957a,0xffd277ab,0xffc84eae,0xffcd8102,0xffd26df8,0xfff24ebc,0x001334d8,0x0054ef12,0x003106c7,
-0x002a85de,0x000ce2c9,0x00253af3,0x000f9d8a,0xffd8de71,0xffd23013,0xffd710eb,0x000312bd,0x00123a57,0x0061e215,0x0031265b,0x00495abd,0x00420417,0x002a2a57,0x00254aa7,0x003c9e9c,0x0070f7fe,0x005e3873,0x006d8fd2,0x00743da2,0x00345d19,0x00314d73,0x003b58d9,0x002414f1,0x001013f8,
-0xffb52bbe,0xffbad119,0xffacd4a6,0xff9eec11,0xff86948d,0xff8e64a5,0xffa62fd3,0xffe9a43d,0x00403983,0x00bc9c1c,0x008f8656,0x00503629,0x000a20ce,0x0020b1d8,0x00078cf0,0xffbc7cd9,0xffc54faf,0xffef872d,0x003d3742,0x005c5f4a,0xff7b54ca,0xff88f87d,0xffabc75f,0xfff384c4,0x005e6331,
-0x00353fa8,0xffdff15d,0xff889589,0xff9a12b3,0xffdf7f12,0xfff42a86,0x0082a347,0x007aeeee,0xffdc9525,0x0011f1a1,0x001885c9,0x003b1c89,0x00208191,0x00146ad0,0x001ceb7d,0x004dfe77,0x004eef78,0x002faad3,0x0000d5d1,0xffbb9904,0xff705133,0xff7862ec,0xffe650d0,0x00b77a9f,0x006716a3,
-0x0050818b,0x0063e052,0xffa61eab,0xff572df1,0xff5265ea,0xff683cca,0x00716375,0x00634ad2,0x0008f0c1,0xff8568fd,0xff0de37b,0xff6e888f,0xfff5743f,0x00484716,0x0055df2a,0x001eb477,0xffb47faa,0xffba27d1,0xffeca84d,0x00255cad,0x0013c140,0xfffefd29,0xfff989d6,0xffdb6bca,0xffd07aa2,
-0xffb38cb2,0xffd6dc16,0xffd83957,0xffd1eafb,0xffbb0361,0xffe0e130,0x00204d05,0x00afe9ca,0x00886d01,0xffdba7e9,0xffc21d7d,0xffeae102,0x005c0cae,0x00c20493,0x00dfc1ac,0x00a4cf5f,0x007cd802,0xfe98f8ea,0xfef314d0,0xff982021,0xffc55f82,0xffdbeb40,0x00135c8f,0xffff7a5a,0xff92b0e7,
-0xffc6e14f,0xfff39f28,0x001bc113,0xfffe2dc4,0xffeafc91,0xfff3bf28,0xffeebc70,0x0004b3b8,0x001bc4bc,0x000e189f,0x000d3a8f,0xfffee0cc,0x0025634f,0x0042fd16,0x004cf995,0x004b54f3,0x0032d083,0x0004ebb5,0xfff6627d,0x001bcfa8,0x0048edbb,0x00ccb874,0x0098fbd0,0xffb0da87,0xff0f3964,
-0xfee50976,0xff40266b,0xfecffeb8,0x0083d535,0x006fa3c8,0x00458809,0x003d23c6,0x005974cc,0x0011865a,0xfffc7c82,0x0009e54d,0x0005c07f,0xffee6eda,0xffdecf9b,0xfff5f029,0xffff7f12,0xffedf768,0xfff8e23f,0xffe59d4f,0xffbff353,0xffafae48,0xffb0a595,0xffb58240,0xffb11be2,0xffb73b99,
-0xffc18a95,0xfff8e985,0x002ed94a,0x007055a7,0x00795e8b,0x00769365,0x006a4af8,0x000534d8,0xffea599c,0x0015e331,0x0036260b,0x004714f4,0x0050cf8c,0x00688c1e,0xff7cc2a1,0xff6efa1a,0xffbae054,0xffef987b,0x0010fc2d,0x0031b98c,0x0037cd97,0x0027a35b,0x002b5020,0x002bc2d4,0x001d3ac7,
-0x0028ab6d,0x0018e8a5,0xfffb11df,0xffcd803f,0xffb17906,0xffb5a861,0xffc41b05,0xffe2367d,0xfffb4987,0x0007fe64,0x0016e704,0x00149f96,0x00240355,0x002d305e,0x003f8814,0x00630020,0x00865118,0x00b89f3c,0x00a606d1,0x00a806bc,0x0096b84b,0x00a0f67e,0x0066704f,0xffe504e9,0xffa8bfb9,
-0x0066f86b,0x002b1512,0x00192645,0x00230d27,0x003449f9,0x004b394d,0x00542e8d,0x00406fdd,0x003efb8c,0x002a5970,0x0011ffa9,0xffea42b9,0xffd0e87b,0xffc10050,0xffcacf53,0xffcd9ee9,0xffd06a5a,0xffbc5741,0xffc0fbd4,0xffd2259b,0xffef43d4,0x0004d255,0x0009567a,0x001ba8ff,0x001caed5,
-0x000be5f5,0xfffed466,0xfff8f6c0,0x00014b14,0x000b4533,0x0017e61b,0x0024e257,0x00346c87,0x0054088d,0x007e4f3d,0x007c703f,0xffb86f35,0xffa88574,0xff9c5fb9,0xff8a220e,0xff6d0742,0xff7697d2,0xff8433e1,0xff8ed323,0xff9b7c89,0xffa86f49,0xffb87198,0xffbf61d2,0xffc73dde,0xffc6eaf5,
-0xffcd5efd,0xffcb8e0f,0xffccd4ae,0xffd3c48b,0xffdac654,0xffd65f93,0xffe68af2,0xfffbc294,0x00112def,0x000b6084,0x0008db65,0x000c0350,0x000b599f,0x000b1f85,0x00093fe9,0x0009d482,0x0006de96,0x0004c0f2,0xfffeb3dc,0xfff2f8e7,0xffe5bce7,0xffc99dee,0xfff5e137,0xffecfab4,0xffeb8ccf,
-0xffdead0d,0xffdb641f,0xffd541fd,0xffc7bfe4,0xffbc177e,0xffbe9a5f,0xffc36fea,0xffc80e10,0xffc91a60,0xffccc124,0xffd20685,0xffdd4fc7,0xffe522e1,0xffece1fc,0xfff316b5,0xffff7e6c,0xfffc1366,0x00008027,0x00030bec,0x0007bab9,0x000d4643,0x001466dd,0x0019cf69,0x0019bc26,0x001a58b2,
-0x001ac722,0x0019442b,0x0017e6c8,0x0016d1e2,0x000cb5ed,0x00065106,0x00025f3d,0xfffdf7bb,0xffd7b43a,0xffd306e2,0xffd6d2da,0xffd6beb7,0xffd8578b,0xffcad376,0xffcbd353,0xffcb759a,0xffd0ecb4,0xffd2871a,0xffd4c04a,0xffd89963,0xffdbdf30,0xffddb252,0xffdc5827,0xffdbe76f,0xffe7ffb6,
-0xffe5ddaa,0xffe6f6c8,0xffe581a2,0xffe7980e,0xffe828a3,0xffe87a35,0xffe9ff84,0xffeadab3,0xffecca55,0xffec3442,0xffec3c04,0xffec86e3,0xffed8ecd,0xffeec2e8,0xfff1be6a,0xffebcb8e,0xffe67062,0xffe00b0a,0xffdb0fec,0xffd303f1,0x00013727,0x00042d3d,0xffffcdf6,0x0002355f,0x0003904e,
-0x00063d88,0x0001700f,0xfffde9c0,0x0003f6a7,0xfff96791,0xfff8e77b,0xfff9a839,0xffff1222,0x000085a4,0xfffd81df,0x0004617b,0x00058bc6,0xfff88203,0xfffad10b,0xfff92560,0xfff92c7b,0xfff9133f,0xfffa2eed,0xfffa2260,0x00010d1c,0x0006052d,0x00116b5d,0x00083865,0x0006745a,0x00015731,
-0x00072da2,0x00042c54,0xfff9649e,0xfff90d0d,0xfffa09e8,0x000102c7,0x00034c21,0x001e1ed5,0x000e2a72,0x0013d120,0x0012eccb,0x001772e8,0x0005b21a,0x0003e1bf,0x001605dd,0xfffbe727,0xfff62ea0,0xfff7075c,0x00027cd4,0x0008cbc7,0xffff758d,0x0010f29b,0x000b3116,0xfff1e0d2,0xffeb0c9a,
-0xffe17519,0xffe0def1,0xffdf6f11,0xffe4a502,0xffebf614,0x000434b4,0x0019a779,0x00394dea,0x00238bcb,0x0015a6b7,0x0001e495,0x000caa9e,0x00061023,0xffefb8d8,0xffeecc6e,0xfff7a5ec,0x00113034,0x001b5a4f,0x001d85d2,0xffff05ea,0x00117b6f,0x0018a603,0x00298ea9,0x000ed31b,0xfffd716a,
-0x001bfd72,0xffee6911,0xffe8690c,0xfff74f5a,0x000a1d6a,0x001a2aab,0x00089110,0x001e1215,0x001e7978,0xffedbc58,0xffe61adf,0xffd5e4f8,0xffd2556e,0xffcd71f3,0xffd5f02c,0xffdc42f6,0x0003a475,0x00239894,0x00628db8,0x00306e9b,0x0027016c,0x00076c2c,0x00290588,0x00184677,0xffdbf845,
-0xffde8d66,0xffe5257e,0x000e836d,0x0019e6e9,0x0066fefe,0x002dd35b,0x00419df8,0x004003fe,0x003cdc74,0x0019e7d4,0x0026f73b,0x006520f0,0x00488353,0x00508582,0x004af76d,0x00315bbd,0x003718f4,0x003385f9,0x00339a52,0x00242fd3,0xffcd739c,0xffc32fe5,0xffa8e12c,0xff964b5d,0xff896d6c,
-0xff9a2148,0xffb86048,0x000a2653,0x0061bbb4,0x00d1d82e,0x00891258,0x0041a27c,0xfffafe76,0x002473b2,0x001437dd,0xffc3c62e,0xffdb7d1b,0x00052c27,0x004ec465,0x0068ced0,0xff70dba9,0xff8bb29f,0xff965b08,0xffd562e3,0x004cc0b0,0x0039c65c,0xfff3ae68,0xff8eb05d,0xff9a5c6f,0xffdf4e53,
-0xfffadbb1,0x007753ae,0x006dcaad,0xffe9c274,0x0006ca76,0x000e44ad,0x004a1746,0x00391c10,0x00340cdc,0x00442357,0x006e50c9,0x005f1200,0x003542c4,0xfff230c1,0xffa61a9a,0xff6e36f7,0xff89344d,0x0003fe9d,0x00c35795,0x006c9d55,0x004fd87e,0x00638a69,0xffad1ff8,0xff69110f,0xff6094c3,
-0xff65babb,0x0090dee8,0x00728658,0x00362026,0xffad0923,0xff1befb9,0xff529a6e,0xffc84a21,0x0028d195,0x004ed8f3,0x00234a12,0xffbebb44,0xffb2f897,0xffdeefc4,0x001e3ffd,0x00061c79,0xfff48068,0xffec2b26,0xffe758a7,0xffe21bab,0xffbcffbd,0xffdf96eb,0xffda1775,0xffd4a346,0xffc44aa2,
-0xfff42a81,0x0050db44,0x00adad04,0x007025c1,0xffc60907,0xffc2a9f3,0xfffac2b0,0x00592795,0x00d232b7,0x00d2e84f,0x0057ab04,0x00734db1,0xfe71ae5c,0xfe490eba,0xff82d1f0,0xffe47480,0xffc5946c,0x003362b1,0x00180c0d,0xff942049,0xffbe5615,0xffe7f0e0,0x00178093,0x000a25d3,0xfff3841c,
-0xffe97783,0xffe7c8e9,0xfffeaf2b,0x001ec7c4,0x00095d23,0x00009073,0xffee518b,0x0023e955,0x003fb022,0x003f6a05,0x003ef30d,0x0022058e,0xfff7f047,0xffef1223,0x00168fe8,0x002ed810,0x00f59962,0x00a8ad5e,0xff3f525c,0xff2828e5,0xff29139e,0xff5f2ced,0xfeeccda4,0x00c7e79e,0x00d0ce67,
-0x007b44a3,0x0050f8e8,0x005ccd8b,0x001205c5,0xfffb9a41,0x000e56e3,0x0006e0a6,0xfff7af39,0xffe22c04,0xfff6f0d6,0xffffd3e7,0xfff53f40,0xffff736d,0xffeaea14,0xffc4fc56,0xffb31b20,0xffb31bb2,0xffb44118,0xffb78291,0xffc0e4b3,0xffcd601f,0x00076f72,0x0033f978,0x006e2817,0x0068f501,
-0x005a532d,0x003ad46f,0xffddb680,0xffd2e6ea,0xfff9ddc3,0x0027d174,0x003a82f8,0x0055c5c7,0x0084d5ff,0xff4aa4d6,0xff5e4023,0xffa3b17c,0xffe4bfc7,0x000bb26e,0x00229050,0x002b878b,0x002c5486,0x002ef24d,0x002d2653,0x00181920,0x001bc013,0x0011ff64,0x0007d487,0xffd0c7e2,0xffb1f364,
-0xffb25bf2,0xffb7add4,0xffcf5921,0xffe3d14a,0xfff9490d,0x000df5bf,0x00101e97,0x00262991,0x003ad93a,0x005d1deb,0x00760f99,0x0091b93f,0x00b92128,0x00a64dfc,0x00a17316,0x0083689d,0x008bc622,0x00474b57,0xffb90afa,0xff6f17d8,0x008780fb,0x00558448,0x004b13df,0x0051b5cc,0x005c7cbb,
-0x006a3299,0x0069e22d,0x0056a32e,0x0054854f,0x003fcc2b,0x002450cd,0xfffd06e3,0xffdc3c57,0xffc21d1d,0xffc7b4e3,0xffccf727,0xffd6cd3c,0xffc48d5f,0xffc52f74,0xffcc25dd,0xffe7d383,0xfffb23e6,0x00020cc5,0x0010b217,0x000fd80e,0xfffd91c2,0xfff446f1,0xfff32386,0xfff96915,0x0007a8c0,
-0x0017f422,0x00283828,0x003caaa6,0x005f1702,0x008f0510,0x0093ffac,0xffbb53a2,0xffa6bc47,0xff9e8b85,0xff915dfe,0xff7ab90e,0xff86a141,0xff97adef,0xffa4916b,0xffaaf3da,0xffb31b5d,0xffbce6d7,0xffbfb187,0xffc31080,0xffbdaf76,0xffc56f68,0xffc2f5cc,0xffc30924,0xffc81794,0xffcd8fcf,
-0xffcbdcfd,0xffdc0c16,0xffee381c,0x0002247f,0xfffd3b5b,0xfffc82b8,0x0000bcc3,0xfffd1c71,0xfff97f12,0xfff4a8f7,0xfff8ff24,0xfffa88d9,0xffffd840,0x00021627,0xfffdbcdf,0xfff4e8bc,0xffd1ac4a,0xffea6544,0xffdf3320,0xffde2250,0xffd1ab6b,0xffcd9496,0xffc74779,0xffba3e01,0xffaf5dff,
-0xffb2a325,0xffb817c2,0xffbd7cad,0xffbf3eb9,0xffc3a7ca,0xffc93342,0xffd2b2f4,0xffd8f2b6,0xffdfff3f,0xffe5b78e,0xfff05ffb,0xffebce7b,0xfff13621,0xfff57617,0xfffb643e,0x00033c0a,0x000bf6b2,0x0013d5fb,0x001500d9,0x0017d809,0x0019cab8,0x0019bc09,0x001890a1,0x00168f83,0x0007a393,
-0xfffcb679,0xfff6d46d,0xfff248db,0xffcf0626,0xffc97b43,0xffcceb68,0xffcc6780,0xffcd6918,0xffc28d05,0xffc2905c,0xffc0fc29,0xffc6b335,0xffc86e4a,0xffcaca04,0xffcead32,0xffd1fdef,0xffd43233,0xffd3472d,0xffd39d94,0xffdd9b1b,0xffdbcc7e,0xffdd4d5d,0xffdc0c2e,0xffdf687d,0xffe0f693,
-0xffe2489b,0xffe455bd,0xffe5c890,0xffe8681d,0xffe7b748,0xffe7901e,0xffe7b224,0xffe83559,0xffe94378,0xffed0bba,0xffe6e856,0xffe19e82,0xffda30b9,0xffd3d110,0xffcc9836,0x00043daf,0x0006f6a4,0x0001b7c4,0x00037022,0x0004fc5d,0x000a134e,0x000248cc,0xfffe5b28,0x000501af,0xfff8e8fd,
-0xfff7c3cb,0xfff6d301,0xfffff706,0x0002a91d,0xffff15f3,0x00074bdc,0x00094391,0xfffedff5,0xfffed509,0xfffc86b0,0xfffbd39e,0xfffc8d30,0xfffe33bc,0xfffedb0b,0x00064242,0x000b028b,0x00154a2d,0x000b5fd9,0x00091c19,0x0002ce68,0x000acb21,0x00082a64,0xfffc24a9,0xfffd64a6,0xfffec77b,
-0x000615d4,0x0006ea85,0x001ff9ed,0x000e620b,0x00115bba,0x00108e81,0x001ca729,0x0002562e,0xfffe40af,0x0012f43e,0xfff53624,0xffee97b3,0xffee358b,0x0000e5fe,0x0009c5f6,0x00009ce5,0x0014bc4d,0x00118a6e,0xfffee536,0xfff1135f,0xffe46d3f,0xffe31e23,0xffe45f35,0xffec38bb,0xfff618a8,
-0x00109ec9,0x0024ccdf,0x003f2190,0x00259d60,0x0015f457,0x0000aeb3,0x0011ba1d,0x000d6b6e,0xfff48704,0xfff85add,0x000161db,0x001a5e09,0x002068ad,0x001e8716,0xfffe13be,0x000afd22,0x00125ca7,0x0032e940,0x00062475,0xfff24486,0x0014dc8f,0xffdd51f8,0xffd5b375,0xffdd67d4,0x0001f993,
-0x00193b7d,0x00054e81,0x0023a6e0,0x00267858,0x0003beaa,0xfff008ba,0xffdb5d97,0xffd4a777,0xffd5b575,0xffe13828,0xffea08e5,0x0016006b,0x003396ba,0x006a02e6,0x0032cfbc,0x00282d8e,0x0005bde6,0x002ff370,0x0022a300,0xffe053ad,0xffed2f9f,0xfff58fdf,0x001cb9b4,0x00208963,0x006550d4,
-0x00285540,0x00331610,0x00378e5c,0x004eeff8,0x000bc10c,0x000e35b2,0x0052b072,0x002c0edb,0x002dbf71,0x001d9ced,0x002c4cef,0x003b3cdb,0x002cc2b6,0x003ec092,0x0036319a,0xffee4c2c,0xffcfce95,0xffa83d84,0xff923a1a,0xff92d5a9,0xffac4aa3,0xffd1754f,0x002cf835,0x0080e513,0x00da8d4b,
-0x008396de,0x00394207,0xfff25f07,0x002c94a7,0x00242579,0xffce9232,0xfff55ca4,0x001e0e71,0x0062ab3f,0x00706290,0xff6ae397,0xff93fee1,0xff880e4e,0xffbd07cd,0x0039c7fb,0x0036d402,0x0001e7a5,0xff9efd56,0xffa63c46,0xffe52e12,0xffffc245,0x0063260c,0x00584602,0xfffbb7ca,0xfffbc06b,
-0x00026800,0x004f34d0,0x004d2ea0,0x0056c222,0x00707ee5,0x00893ab7,0x006ad7af,0x0038fcd5,0xffe05d86,0xff90b275,0xff7062e5,0xff9d88c9,0x00223594,0x00cd5755,0x0076521b,0x004f98ef,0x005a0cbf,0xffb5da47,0xff7e393d,0xff770aab,0xff68e514,0x0096503c,0x007da336,0x00659b91,0xffe001b8,
-0xff3011a9,0xff44c24f,0xffa7ad05,0x000e5795,0x00407049,0x002011df,0xffcc00eb,0xffb312e9,0xffd58631,0x0017d3f2,0xfff9351a,0xffec609b,0xffe1fad3,0xfff6d54e,0xfff77b58,0xffd01f20,0xffe9870e,0xffdd2306,0xffdc6b6b,0xffd1e845,0x000ac48a,0x00803fc0,0x009d257b,0x0049986b,0xffa84348,
-0xffc0c0c1,0x000c156c,0x005edf92,0x00e15975,0x00c5ce90,0x0014170a,0x00560dc9,0xfe7ebe06,0xfdcc069c,0xff585441,0xffe62801,0xffaa816c,0x0044e911,0x002a9169,0xffa47fd8,0xffbe77c5,0xffe0c84d,0x0012dfca,0x0014c403,0xfffbff77,0xffe00495,0xffe3fb8b,0xfffb03a2,0x0020735e,0x0008bfa3,
-0xfffb3331,0xffea13da,0x001fa1a1,0x00361293,0x0031c9c8,0x002e7596,0x000e685b,0xffeb619a,0xffe64117,0x000f2316,0x0017e5d0,0x010312aa,0x00a58559,0xfef9b726,0xff3b052f,0xff57f858,0xff7b2cad,0xff272852,0x00f3ad87,0x0125aee4,0x00b69547,0x006adf59,0x005299fe,0x00153c76,0x0001e398,
-0x00111665,0x0008c725,0x00013275,0xffe8126d,0xfff51c68,0xfffda537,0xfffe6eef,0x0003b8e4,0xfff08d6f,0xffcf7353,0xffbb239b,0xffb76e9d,0xffb74f9f,0xffc09f07,0xffcda17f,0xffdfa4ee,0x00137bd1,0x0039eb87,0x006ac68d,0x005c0a44,0x003e950b,0x0003227d,0xffc32a53,0xffc8f65c,0xffea0452,
-0x00114ffd,0x001e744a,0x0047411a,0x0086a4ad,0xff37acdd,0xff62700a,0xff97d5d6,0xffdda06f,0x0007cb4f,0x001254d7,0x001ba621,0x002da9f0,0x002d30f6,0x0028d050,0x0012c1b2,0x000e98c0,0x00091777,0x000d9f41,0xffd409f1,0xffb57804,0xffae10cc,0xffaf54e6,0xffbf67cd,0xffccacde,0xffe81b7f,
-0x0001c140,0x000b36fb,0x0026b390,0x0043df7a,0x006e4809,0x007e1f88,0x0093ac4b,0x00aed2b7,0x009fefa6,0x0092a8ed,0x006c3f3b,0x00699477,0x0025539b,0xffa617ee,0xff564981,0x0093c2bd,0x007065cd,0x006de36a,0x006fc535,0x00722034,0x00771c71,0x006ff035,0x0060e768,0x005f6814,0x004ea443,
-0x003425fc,0x000ff2fc,0xffea70ae,0xffc79863,0xffc75314,0xffcd41dc,0xffdb2b09,0xffcfa1e3,0xffce90c0,0xffced36e,0xffe4f94d,0xfff2de36,0xfffa2df2,0x00067738,0x000422e0,0xfff38ad8,0xffef0150,0xfff2b8e3,0xfff997e2,0x000a357b,0x001e5418,0x00314daa,0x0045475d,0x00629c0c,0x008dd3d9,
-0x0096ce8b,0xffc1d030,0xffab7f27,0xffa69685,0xff9df506,0xff8d1efb,0xff9c2922,0xffb0420e,0xffbf72a3,0xffbec37a,0xffc15ac3,0xffc34496,0xffc28c25,0xffbfdae3,0xffb7ed56,0xffbe9392,0xffbc9176,0xffbb63bb,0xffc0194b,0xffc59d40,0xffc7e2e8,0xffd5bc53,0xffe3c8d7,0xfff3cf48,0xfff1a032,
-0xfff354ef,0xfff8c332,0xfff4008e,0xffef1405,0xffe92be3,0xffee8229,0xfff251cf,0xfffc60bf,0x00032fc8,0x000497b3,0xffff84c1,0xffdac95e,0xffdb1a3c,0xffcf49ed,0xffcf296a,0xffc3ee21,0xffbf6d03,0xffb92e3e,0xffad3b0d,0xffa3e21d,0xffa80b93,0xffae7aae,0xffb4782f,0xffb7da87,0xffbd1323,
-0xffc2a20e,0xffc98ef8,0xffce5f98,0xffd43045,0xffd91441,0xffe1508b,0xffdce3d1,0xffe2642a,0xffe783f7,0xffedc192,0xfff654fd,0xffff3f25,0x000841df,0x00095baf,0x000cb44c,0x000f024c,0x001014b9,0x000f6089,0x000d2a9e,0xfffc2107,0xffee51c9,0xffe6c43e,0xffe229d2,0xffc90f75,0xffc31f36,
-0xffc63be0,0xffc5814a,0xffc5f477,0xffbe1381,0xffbd6ded,0xffba9401,0xffc04b4b,0xffc204af,0xffc47ace,0xffc7e787,0xffcb1f79,0xffcdbfaa,0xffcdb453,0xffce4b5a,0xffd55872,0xffd422b7,0xffd58442,0xffd4557e,0xffd87a2c,0xffdabe17,0xffdcda05,0xffdf3874,0xffe10b69,0xffe41287,0xffe3406c,
-0xffe2f950,0xffe2cb6d,0xffe28784,0xffe2dc03,0xffe63afb,0xffe0b30e,0xffdc4b9d,0xffd5304d,0xffce8159,0xffca19e9,0x0007a2de,0x0009f5bf,0x00043307,0x0004d545,0x00063618,0x000dcbe4,0x0003a00c,0xffff4ef8,0x00062af9,0xfff8a8ee,0xfff6fdd2,0xfff58264,0x0000a1d7,0x00043bdc,0x0000ce09,
-0x0009cd7a,0x000c89fb,0x00051878,0x0002a334,0x00002822,0xffff3e54,0x00009e42,0x0002d481,0x00048ed1,0x000bb37e,0x000fec60,0x00183395,0x000efca8,0x000c9eb2,0x0005aafa,0x000ed2b9,0x000c604b,0xffff80fc,0x00022d69,0x0003ea3b,0x000b700a,0x000ad0db,0x0020c650,0x000e7fea,0x000d4a97,
-0x000d6eae,0x00217789,0xffff60c8,0xfff96049,0x001003de,0xffeef696,0xffe7cb09,0xffe8a9fa,0xfffeb2ac,0x000985ca,0x00025064,0x001764ca,0x0016d784,0x000b451a,0xfff792a6,0xffe8a839,0xffe7be5f,0xffeb542c,0xfff5ae16,0x00029ae3,0x001cf578,0x002e7ca2,0x004133cc,0x00273467,0x001730bb,
-0x00021b4f,0x00175b50,0x0014f54d,0xfffaadff,0x00026365,0x000b2794,0x0022fdd4,0x002452ba,0x001fe3c4,0xfffde547,0x0003711c,0x000aeb29,0x003a815a,0xfffdd70f,0xffe8ba14,0x000ec91f,0xffce0918,0xffc5280b,0xffca25be,0xfff80bf0,0x00147ae3,0x0002bb5d,0x00263a14,0x002af37c,0x00172bfd,
-0xfff9012a,0xffe146bc,0xffd9969b,0xffe02f25,0xffee7691,0xfffbbe3d,0x00280744,0x0041bf93,0x006aed9d,0x00363598,0x002c0d2e,0x0009aff0,0x00377e5d,0x002c0c3f,0xffe6d2c0,0xfffbc376,0x0005c3bc,0x002ac51b,0x00277e11,0x0060bc07,0x0022cdcf,0x002092e6,0x002a1452,0x005e5ddf,0xfffc5b2d,
-0xfff47a90,0x003d1ce4,0x000b7eb7,0x0007b0e5,0xfff2655e,0x00237412,0x003aaec3,0x002782f1,0x00457055,0x0044c6c1,0x0011c638,0xffdde884,0xffab6b71,0xff959360,0xffa2c2f9,0xffc44372,0xfff261c3,0x004f9fbb,0x009a1047,0x00d59458,0x007a7eea,0x0032b061,0xfff1e85d,0x003531d6,0x00331465,
-0xffde37ee,0x000f0d43,0x0034bb3c,0x00746c2a,0x00745846,0xff6c55ed,0xff9e35b0,0xff7ecf49,0xffab0d9d,0x0026aa52,0x00323dc0,0x000f2772,0xffb90594,0xffba97e4,0xffee6b80,0x0001e43b,0x0048ae56,0x003ec894,0x000f7431,0xfff02ad4,0xfff3b49c,0x00489526,0x0059a596,0x0073b1f2,0x00920e36,
-0x0097c7fc,0x006e1e1f,0x0035fd60,0xffce1c11,0xff835b50,0xff7d061e,0xffc10fe0,0x004a3947,0x00d675d8,0x008517df,0x0050b7dd,0x00459730,0xffbc340f,0xff9362de,0xff9386f3,0xff73a8bf,0x00855d69,0x00870d0a,0x00924968,0x0016a3d3,0xff4bc8d7,0xff3f8746,0xff8dc954,0xfff7bd6c,0x002e2c35,
-0x001883fe,0xffd8e814,0xffba223f,0xffd01ef0,0x000f8214,0xffeec42e,0xffe99484,0xffddd6df,0x0006d023,0x000d21a1,0xffead05b,0xfff2c024,0xffe16b84,0xffe9dcf1,0xffe4a8d9,0x002303ed,0x00a3ff8c,0x007f05ac,0x0018afed,0xff84f984,0xffbd0616,0x001b82e2,0x0068e0da,0x00e9dab4,0x00b4baeb,
-0xffd5f5df,0x002b7cdd,0xfebe2c86,0xfd9071f4,0xff1289f1,0xffbaa281,0xff9959e2,0x004381a3,0x00315e7a,0xffc2f301,0xffc4d7b0,0xffdd99f6,0x000e867e,0x001be1de,0x00036ca6,0xffd97dfc,0xffe2bf46,0xfff7b1b5,0x001e891c,0x000c4c5d,0xfffec72d,0xfff1f986,0x001cc349,0x002aaa6d,0x002362a4,
-0x001a2ef2,0xfff9c440,0xffe1e424,0xffde82fc,0x0009bf4a,0x00132e81,0x00edcca0,0x0088d20d,0xfeeddc84,0xff4ae315,0xff78f366,0xff985a7e,0xff7e654f,0x00fe1296,0x015f38c4,0x00ef8e09,0x00892307,0x00449bbe,0x001c8022,0x000f511f,0x0012d839,0x00094414,0x0007b211,0xffef0c60,0xfff26ec6,
-0xfffaa5fb,0x0006ce99,0x00066825,0xfff76029,0xffde53d0,0xffc819de,0xffbf27ee,0xffbf3d4e,0xffcc0baa,0xffdc58a6,0xfff5402f,0x001daa3d,0x003f69ba,0x006297f6,0x004e9cfc,0x0022fc21,0xffcfee93,0xffb18f96,0xffc3ddb1,0xffdeefa2,0xfff90f92,0xfffe95e3,0x002b32dc,0x00728a45,0xff427624,
-0xff747bce,0xff93f1a1,0xffd77506,0x0001cb8b,0x00022eec,0x000b15f0,0x002bea9f,0x0026793b,0x001e89c9,0x000b3105,0x0002e67a,0x000072e4,0x000ca820,0xffd81afe,0xffbbfc7b,0xffaa0ee9,0xffaa7b71,0xffb2f946,0xffb9ab0e,0xffd70c1a,0xfff3bacd,0x000541a1,0x0022daf1,0x00456341,0x00764957,
-0x007e9f4c,0x008fa509,0x00a0e2d0,0x00955ff6,0x007e907c,0x00524abb,0x00464170,0x0009d27d,0xffa29e38,0xff5c335e,0x008e1b82,0x007c12cd,0x007d0029,0x0079bd28,0x0077194d,0x0074f86c,0x00690a8a,0x005dc69c,0x005eaa6e,0x0054e5e5,0x003f03ce,0x0021d127,0xfffb00a3,0xffd1f0c5,0xffcab38e,
-0xffcee99c,0xffddac9a,0xffda7974,0xffda0c48,0xffd81ca5,0xffe6435c,0xffedae7e,0xfff296f4,0xffffd56c,0xfffd9d96,0xffef960d,0xfff2e93d,0xfffb46e7,0x00040b2e,0x0013a5a6,0x002ba904,0x0042d0fc,0x0051982b,0x0063f224,0x00806f30,0x0089a676,0xffccdb7e,0xffb7022d,0xffb4ebe4,0xffb295e3,
-0xffa78882,0xffb8547e,0xffcdee7d,0xffde508e,0xffd67451,0xffd3756a,0xffcc802b,0xffc965d2,0xffc0fa71,0xffb906df,0xffbc85c6,0xffba61e5,0xffb71ed9,0xffbc48ed,0xffc240ee,0xffc7aa4c,0xffd20593,0xffdbe95e,0xffe6d307,0xffe9606b,0xffeeefd2,0xfff6e604,0xfff31fb1,0xffef1206,0xffeabd6d,
-0xffed3e9c,0xffef7cb0,0xfff99afb,0x0000d3c2,0x000587c4,0x0003f785,0xffe43f6d,0xffca38c5,0xffbf60a4,0xffbf30c0,0xffb71ca3,0xffb2257e,0xffaca083,0xffa2d704,0xff9b50b7,0xffa10134,0xffa87cf2,0xffaf00af,0xffb4b2aa,0xffbaa000,0xffc037ed,0xffc44ba1,0xffc82e14,0xffcc817e,0xffd0651b,
-0xffd565dc,0xffd2d29d,0xffd780b7,0xffdc477d,0xffe1b3db,0xffe917b2,0xfff039f1,0xfff86a20,0xfff7ff46,0xfffa3c0a,0xfffbc8ca,0xfffd8b39,0xfffdce3a,0xfffc10e3,0xffec488e,0xffddde73,0xffd50dac,0xffd01213,0xffc60d26,0xffc076ef,0xffc29884,0xffc16bae,0xffc13314,0xffbd5dde,0xffbbf8a1,
-0xffb7ba55,0xffbd334f,0xffbeea0b,0xffc18e52,0xffc43dec,0xffc74e5e,0xffca6494,0xffcb40c7,0xffcc14aa,0xffcf381f,0xffcef08e,0xffd0246e,0xffcf783f,0xffd37fae,0xffd61c0c,0xffd89935,0xffdafc1c,0xffdcf2af,0xffdffc93,0xffdf286c,0xffdecb8e,0xffde2bef,0xffdd16f6,0xffdc5643,0xffde64fe,
-0xffd9e7d1,0xffd6d3ca,0xffd14168,0xffcb67bb,0xffcad5ec,0x000a6f89,0x000c81ba,0x00068562,0x0005eb66,0x00071d98,0x00114f74,0x0004a1af,0x00007820,0x0007bc7e,0xfff927eb,0xfff70d0d,0xfff60284,0x00015d3b,0x00057ae0,0x0002d8dc,0x000b88f9,0x000e89b4,0x000ac0d2,0x0005bdec,0x00032be6,
-0x00024585,0x00042ea3,0x0006e07c,0x000a0be2,0x001030c9,0x0013b6ac,0x0019d4d2,0x0011d71b,0x000f8a9f,0x0008997d,0x0011b447,0x000f614d,0x0002a5ca,0x00064785,0x000851d0,0x000fe0ac,0x000e1979,0x0020a707,0x000e7621,0x00094cd8,0x000a40f1,0x00249dc1,0xfffd0269,0xfff563b5,0x000d0782,
-0xffe9972a,0xffe23e84,0xffe5ce6b,0xfffb930d,0x0007bdab,0x000398b7,0x0018c6d6,0x001a8da0,0x0014ceb2,0xfffd8864,0xffede7e9,0xffed3bb1,0xfff29095,0xffff1281,0x000f6a46,0x00273680,0x00352ef4,0x003fcde7,0x0026df74,0x001767ec,0x00045c08,0x001b0971,0x001a2ee6,0x0000ccb3,0x000af11c,
-0x00132a5e,0x00295371,0x00269e58,0x00216d8c,0xfffe8c94,0xfffc97c5,0x00037788,0x003e672a,0xfff6b4f2,0xffe1c105,0x0009fc53,0xffc20b59,0xffb8132e,0xffbe4bfb,0xffed5473,0x000c85c2,0x0000064c,0x0025f22e,0x002bc6e9,0x0024ecaf,0xffffdc17,0xffe731e7,0xffdfb556,0xffea22da,0xfffae205,
-0x000ea8bf,0x0036e310,0x004befc9,0x0067076f,0x003825bf,0x002ee711,0x000fac8e,0x003b0edc,0x0030a28d,0xffee2687,0x00081d6e,0x0013924e,0x0035ff67,0x002d562f,0x005a2ba3,0x001dcb68,0x000e9c62,0x001aeb0a,0x00674e7a,0xffed16ac,0xffdc35ee,0x0026e49c,0xffeb4188,0xffe2beb7,0xffce6281,
-0x001673c1,0x0034610c,0x002424aa,0x00482b7d,0x004eb720,0x0030a2e0,0xffeb4e56,0xffb33039,0xff9f4da7,0xffb55c2a,0xffde416e,0x0017000b,0x006d26fd,0x00a9c596,0x00c59dda,0x006b504e,0x002944b1,0xfff57d67,0x00391a6b,0x003bfa2d,0xfff0114f,0x00254c3e,0x004694ef,0x00806ce8,0x007442dd,
-0xff75e1bc,0xffa8aed4,0xff7b0d64,0xff9f354c,0x00137b8f,0x002f4cfc,0x001e2768,0xffd9d5b4,0xffd1ee9a,0xfff65096,0xffff9c32,0x002b1fb6,0x00258d20,0x0020d5a5,0xffe34aa5,0xffe1ae49,0x00372f00,0x005b4ec6,0x00828a9d,0x00a0c196,0x0094bc79,0x0063af13,0x0027442d,0xffbdd9b9,0xff827fbd,
-0xff92faf4,0xfff899f2,0x007f3b4d,0x00d9ddf0,0x0090ede2,0x004bc523,0x00241850,0xffbb7dfc,0xffa31e35,0xffadbb64,0xff84f2f9,0x00643b15,0x00895186,0x00bab2db,0x004c7577,0xff6e61ed,0xff3f84cb,0xff77875f,0xffe26000,0x0019aaa3,0x000f1cc9,0xffe36d85,0xffc62d9a,0xffce9e70,0x0004a885,
-0xffe87616,0xffed03a5,0xffe05956,0x001513cb,0x001febe3,0x0006ce04,0xfff93313,0xffe6e4f7,0xfffade93,0xfffa4cf3,0x0039675e,0x00b28119,0x00599017,0xffe750bd,0xff60eac0,0xffba0a12,0x00281d47,0x00710904,0x00e27507,0x009a9923,0xff9ef6bb,0xfffd22c2,0xff15a465,0xfd87da54,0xfebb66fc,
-0xff6b14a6,0xff9bb43c,0x002ef1e1,0x002793a4,0xffe622e5,0xffd01096,0xffde46bb,0x000a4bda,0x001da72f,0x00084f5a,0xffd5500d,0xffe34537,0xfff3ba10,0x00184909,0x0011c3bf,0x0008a6ab,0x0001e4b0,0x001c84fa,0x001f36f7,0x0013f44a,0x0003d5f9,0xffe43654,0xffd719b3,0xffd46c80,0x00045d13,
-0x0022e292,0x00ba73ad,0x00547381,0xff0c5afe,0xff657781,0xff9880b7,0xffae8176,0xffddc105,0x00e4570d,0x016c48e0,0x011c415a,0x00a84f96,0x003c7581,0x00283b55,0x00230160,0x001588d1,0x0007a042,0x000899a3,0xfff4c664,0xfff00fd9,0xfff88f55,0x000c3d61,0x0007dd90,0xffff0cdc,0xfff002b8,
-0xffd8c16f,0xffca18d8,0xffcb1d49,0xffd85381,0xffead193,0x000b013e,0x0023ce5d,0x00403871,0x005455de,0x003f180f,0x000b09f1,0xffb21589,0xffa974a7,0xffc16370,0xffd78318,0xffe31022,0xffe42086,0x000ca986,0x005267f1,0xff62e49d,0xff8c9c41,0xff95d2b4,0xffd0d89c,0xfff92d87,0xfff4c6db,
-0xfffcb406,0x0027dd12,0x001c5fbc,0x000fe79c,0x0000906c,0xfff95413,0xfff92958,0x00066860,0xffdd7d5a,0xffc49b8b,0xffa71043,0xffa7b740,0xffaa098e,0xffacbd3a,0xffc68724,0xffe432f2,0xffff49bd,0x001c4783,0x00417f34,0x0073e648,0x00794613,0x0087d6ff,0x008facd5,0x0087df91,0x006951a4,
-0x0038668a,0x0027ab48,0xfff7c31c,0xffaa2ee6,0xff77e490,0x0078c0c3,0x007719d0,0x007a6be1,0x0071f53f,0x006d6d67,0x0066eda5,0x0058d455,0x00508f9f,0x00536b8b,0x005191d6,0x00433d6f,0x00302252,0x000bbb0e,0xffdfd187,0xffd152b3,0xffd17956,0xffdda4ce,0xffe22ab8,0xffe3fd85,0xffe3413e,
-0xffe968d6,0xffeb5776,0xffec7189,0xfffcc96c,0xfffd2af6,0xfff31388,0xffff9c9f,0x000b8d3c,0x00165df6,0x00250f51,0x003fd320,0x0059f150,0x005f8593,0x0063ede8,0x006f01d1,0x00729050,0xffddfefc,0xffca809a,0xffcaed37,0xffcff827,0xffcb59de,0xffdbeb51,0xfff127cf,0x00015544,0xfff2e371,
-0xffeaa119,0xffdacee1,0xffd4cd8e,0xffc6e5eb,0xffbe85f0,0xffbf1cf5,0xffbc58a9,0xffb70858,0xffbc7f39,0xffc2600a,0xffc9566e,0xffd009db,0xffd649c3,0xffdc13b4,0xffe3dea2,0xffedc305,0xfff92967,0xfff77e7a,0xfff5faf4,0xfff53c76,0xfff28197,0xfff08bd1,0xfff6d2e3,0xfffc1331,0x0002457f,
-0x00044566,0xffef486f,0xffbc4ebc,0xffb3ddf6,0xffb1e717,0xffaea88b,0xffa8f073,0xffa4e549,0xff9dede4,0xff98272b,0xff9f3240,0xffa6f081,0xffadb5c4,0xffb5321b,0xffbb7827,0xffc0cc37,0xffc2e776,0xffc618e4,0xffc9080b,0xffcc05f2,0xffce84dd,0xffcd61e9,0xffd0f339,0xffd4d5a8,0xffd8f04c,
-0xffde70ca,0xffe2e505,0xffe91d29,0xffe671c8,0xffe68014,0xffe670dd,0xffe8113d,0xffe939dc,0xffe80a77,0xffdc4f0a,0xffcf8f89,0xffc6558f,0xffc0c0e3,0xffc62b88,0xffc1c92d,0xffc24957,0xffc0c8f1,0xffc00e25,0xffc05cfe,0xffbe8ff9,0xffb96f7b,0xffbe41ae,0xffbfdeeb,0xffc28b1a,0xffc46b1d,
-0xffc73a7d,0xffca84b5,0xffcb692e,0xffcc31c5,0xffccabcb,0xffccc822,0xffcd97bd,0xffcd40cc,0xffd0f293,0xffd3ac90,0xffd64bb6,0xffd875dc,0xffda699d,0xffdd4da7,0xffdc4ec4,0xffdbbbc9,0xffda87b1,0xffd8bd78,0xffd6d4b5,0xffd706db,0xffd3c840,0xffd21958,0xffcecec9,0xffcab7a6,0xffcd4438,
-0x000cfd57,0x000edef6,0x0008ce1e,0x0007cf18,0x0008aec2,0x0013fe59,0x00061389,0x000265bc,0x000982dc,0xfffa78d0,0xfff809e2,0xfff7eee3,0x00022cc6,0x00065edf,0x0004b5cd,0x000d2744,0x001039f5,0x000f093f,0x0008e418,0x00066c90,0x0004e4d4,0x00075deb,0x000a82c3,0x000f4abe,0x00141c43,
-0x0016db9e,0x001aca32,0x00142980,0x00120c50,0x000be9c6,0x0013afac,0x00117e8f,0x0006083f,0x000a2e83,0x000c78f5,0x0013f060,0x0011125e,0x00202984,0x000eb10d,0x00073869,0x00085df5,0x0025dc5e,0xfffbb409,0xfff2d3dd,0x000a26fa,0xffe5ca0a,0xffdeedaf,0xffe60253,0xfff8affe,0x000557d4,
-0x000466f5,0x001950d5,0x001d133a,0x001b935e,0x0003ad40,0xfff49014,0xfff339d1,0xfff9b521,0x0008185f,0x001bdc66,0x00301b99,0x003a4454,0x003ce86d,0x0026241d,0x0017a86c,0x0008203e,0x001cefbc,0x001d23ab,0x00071036,0x0012a375,0x001a6ae5,0x002e730a,0x00282d60,0x00231205,0xfffff63e,
-0xfff934a6,0xfffe4d9c,0x003e37b4,0xfff17965,0xffdda981,0x000605a4,0xffb9d116,0xffaec7fb,0xffba2dd3,0xffe324a1,0x0002d683,0xfffc3991,0x002388e6,0x0029f901,0x002c6fde,0x0005c6d8,0xffee1a4d,0xffe5e64f,0xfff2d744,0x0005ee30,0x00215d10,0x004370e9,0x005382af,0x0060e1d2,0x00399f5d,
-0x003116e7,0x001805c6,0x003a9685,0x0030a652,0xfff74ad0,0x001379ac,0x00207b73,0x003fc6e6,0x00328f1c,0x00525fca,0x0018a355,0x0000b6b1,0x000d7fab,0x00688b4d,0xffdf9210,0xffc740ff,0x00121768,0xffcd9eb6,0xffc1f7fa,0xffb57db9,0x0006670a,0x00293451,0x00214b9e,0x004712e0,0x0053a782,
-0x00476007,0xfff97e21,0xffc10f31,0xffad99b1,0xffc9118f,0xfff8bd02,0x003c3dbb,0x0086b7b7,0x00b3eab2,0x00b1fd0c,0x005cbea3,0x002142f2,0xfffe4833,0x003894ac,0x003eacbd,0x000341af,0x003924a8,0x00567218,0x00890047,0x00724e1e,0xff8a3f01,0xffb662ff,0xff815db0,0xff9cbba5,0x000341b0,
-0x002e9cbc,0x002eb291,0xffff6485,0xffe87035,0xfff922a2,0xfff8b4d9,0x000dad3a,0x000fab59,0x002e57f6,0xffd66106,0xffcde713,0x001de127,0x004eac3d,0x007e4e99,0x009b4a76,0x007f60b7,0x004c13e8,0x000e0624,0xffb113d4,0xff8a7548,0xffa6be31,0x0036375a,0x00b533a2,0x00d4353f,0x0095cafa,
-0x00407182,0xfffbf873,0xffb85101,0xffaf7ad1,0xffc0c2b9,0xff9d4f5a,0x003cfd04,0x007eccf5,0x00d6f989,0x0079270c,0xff94d9b1,0xff4329a0,0xff644219,0xffcbec9c,0x0004476d,0x000652ee,0xffeb97c3,0xffd41ff4,0xffd00686,0xfff8ed37,0xffe7465c,0xfff5d624,0xffe88d34,0x0020fca4,0x002de574,
-0x001fb475,0xfffe6207,0xffef0a78,0x000d9d7c,0x001467a0,0x004e4697,0x00a9cd65,0x00313904,0xffba9dbb,0xff4178ea,0xffb8bee8,0x0032ff38,0x00740758,0x00c8d111,0x0074e6c0,0xff70ba0e,0xffd44d1d,0xff69e424,0xfda40578,0xfe67337a,0xff139d28,0xffb4deed,0x000e19db,0x000e397c,0x0005014d,
-0xffddd163,0xffe2f955,0x00067079,0x001a8c9a,0x0009c84b,0xffd2ff52,0xffe480ba,0xffee7fe3,0x000df6fa,0x00163406,0x00149dc4,0x00144bf2,0x001da1cf,0x0013f928,0x0002d461,0xffec2c3f,0xffcfa331,0xffccddbf,0xffcb2b93,0x00043f5d,0x004499db,0x007b858f,0x0012774a,0xff33c0e4,0xff92fea4,
-0xffc6570c,0xffc188ce,0x002ac58c,0x00acb8a7,0x0147d044,0x01355e48,0x00c70065,0x00400e54,0x0036930d,0x003863de,0x001b961f,0x00046c3e,0x0005486e,0xfff85b9e,0xffef162e,0xfff7b3eb,0x000d2618,0x00086397,0x0007109a,0x0002ada6,0xffeb419d,0xffd84192,0xffd9ef69,0xffe514e9,0xfff9138d,
-0x001fa65e,0x0027e639,0x003d42a1,0x0043d6e2,0x00300ddd,0xfff8f7a3,0xffa6c9b4,0xffaddf21,0xffc891e4,0xffd8fa5c,0xffd1717f,0xffd2ad62,0x000088ab,0x002f8845,0xff92f500,0xffa97811,0xff9c4f29,0xffc9ba15,0xffee4008,0xffec4cab,0xfff3679c,0x00236566,0x00112404,0xffffb20d,0xfff4400e,
-0xfff1d35b,0xfff38dc4,0xfffdce23,0xffe3e1d9,0xffcdfc24,0xffa627e6,0xffa6a873,0xffa47878,0xffa65134,0xffb8f89b,0xffd5574d,0xfff83222,0x0015938b,0x003bba14,0x0067e4b7,0x00703d52,0x007f8afd,0x0080cf97,0x0079b629,0x005511e9,0x002526e8,0x0010ec0a,0xffeefb18,0xffbb9305,0xffa06a86,
-0x0057429e,0x0061e82c,0x00694058,0x005e540c,0x00594d6a,0x00505c46,0x0042ba09,0x003d8db8,0x00415eae,0x0046d916,0x0040c58a,0x0038c224,0x0019f5b8,0xffeef9d1,0xffda0a17,0xffd4d233,0xffdb9cc9,0xffe5298a,0xffe96643,0xffebb4d1,0xffec8ecb,0xffebaa1d,0xffe98b76,0xfffd9573,0x0002fbc6,
-0xffffd771,0x0013ff64,0x00210c52,0x002c59ac,0x003c0ee0,0x005823cd,0x0072f68b,0x006b89ab,0x0061f7e0,0x005e252e,0x005603c8,0xfff612f0,0xffe5ddd0,0xffe77ce6,0xfff2c06a,0xfff461eb,0x0003cf15,0x001720f1,0x0026df09,0x0012dbb2,0x0005e359,0xffeede5a,0xffe4b722,0xffd0d425,0xffc6863a,
-0xffc50517,0xffc1ca92,0xffbab7c4,0xffc01da6,0xffc55ee7,0xffcc87e8,0xffd019cb,0xffd375f4,0xffd4f471,0xffe0ad36,0xffed777d,0xfffb3047,0xfffcde4c,0x00000aad,0x0004941a,0xfffd6a5f,0xfff74654,0xfff8f8fd,0xfffaf981,0x0000d3c7,0x0005c113,0xfffe39a6,0xffb56c19,0xffb0ad5b,0xffac44d5,
-0xffae3d5f,0xffa7b1e1,0xffa5707d,0xffa14d8f,0xff9cb080,0xffa3eaa7,0xffaa85d5,0xffb07bf5,0xffb860d6,0xffbe1e77,0xffc22e82,0xffc37975,0xffc5ef9f,0xffc7a700,0xffc9d4f4,0xffcaf80e,0xffca0677,0xffccec5e,0xffd03837,0xffd363f6,0xffd746ab,0xffd985db,0xffddcbd2,0xffd8e68c,0xffd620eb,
-0xffd40b35,0xffd4c76d,0xffd67a13,0xffd5a35c,0xffcfa1ce,0xffc69fa9,0xffbe4ac1,0xffb879fb,0xffc889e7,0xffc5de81,0xffc525c6,0xffc3b15a,0xffc2c0b3,0xffc6163a,0xffc4a3c0,0xffbf6871,0xffc2d8db,0xffc40b08,0xffc648b8,0xffc7240b,0xffc96a90,0xffcc5533,0xffccc9dc,0xffccfcda,0xffcd17e1,
-0xffcce972,0xffcd07c6,0xffcc2e61,0xffcfafbb,0xffd24c81,0xffd4de12,0xffd6c08b,0xffd8a190,0xffdb6996,0xffda0fea,0xffd94ad2,0xffd79431,0xffd559b0,0xffd287ce,0xffd0d8ae,0xffceed5a,0xffce6ce5,0xffcd8e9e,0xffcbb6f8,0xffceb877,0x000f016b,0x0010bd38,0x000b06ea,0x0009b990,0x000a06e7,
-0x00153023,0x00074d69,0x0003fce9,0x000a8a17,0xfffbbe77,0xfff92fe5,0xfffa7af9,0x0002a186,0x00068778,0x0005ae15,0x000de13c,0x001114d6,0x001189f8,0x000b4184,0x00091a1d,0x0006f005,0x0009de59,0x000d63b7,0x0013a314,0x00172b8e,0x001912bc,0x001a8be9,0x001591b1,0x0013cf17,0x000f3feb,
-0x0014a09b,0x00129582,0x00092d78,0x000d8fc8,0x00101304,0x00178b04,0x00137380,0x001f5258,0x000f2910,0x000651a6,0x00077b99,0x0023fa27,0xffface24,0xfff13599,0x00068205,0xffe326c3,0xffdd4909,0xffe8105d,0xfff5ff70,0x00025da6,0x0003df47,0x0018c12a,0x001e39ab,0x001f2997,0x0009c3d0,
-0xfffbb8d2,0xfff91be6,0x0000726d,0x001012ed,0x0026b26d,0x00375b7c,0x003db7ca,0x003853df,0x00253c99,0x00184172,0x000d6b15,0x001d4376,0x001de218,0x000ca43a,0x00192cc0,0x0020d8d0,0x0032dab7,0x0028de29,0x0024c185,0x000260be,0xfff90594,0xfffbd91e,0x003966fa,0xffedfc70,0xffdbbd98,
-0x000128d5,0xffb43cec,0xffa8b21d,0xffbc05c3,0xffda2cda,0xfff885dc,0xfff696ad,0x001f6459,0x00264248,0x002d9666,0x000b00ad,0xfff52138,0xffeb2c4e,0xfffa107a,0x000ee7e9,0x00318e01,0x004d1e82,0x0057fc58,0x0057205c,0x003a28e9,0x00327810,0x00220b6d,0x00369930,0x002cf6f9,0x0000d2db,
-0x001d82fa,0x002c1ff7,0x00494564,0x0036e4d8,0x004a215d,0x0014ba46,0xfff790bc,0x0002c9c7,0x0060dfda,0xffd44dd7,0xffb62669,0xfffe96b4,0xffb303e4,0xffa5be3a,0xffa9345e,0xfff431b7,0x0019c19c,0x001cd6a8,0x00426974,0x0053d704,0x0054d06b,0x0009089e,0xffd453d9,0xffbf9a48,0xffddb2ea,
-0x0011d272,0x005e4fbe,0x009b86ea,0x00b8e35f,0x009bdaf1,0x005243ca,0x001e63af,0x000d1d81,0x00353868,0x003c073d,0x0014ed61,0x0049c29c,0x0064d838,0x0090d730,0x006ed2cf,0xffab4394,0xffc80f87,0xff932f55,0xffa5b5d7,0xfff9602e,0x003147f7,0x004057e5,0x0026b3a4,0xfffc9344,0xfff71435,
-0xffef4f3c,0xfff48e72,0xfffefcd9,0x00381a62,0xffcb31fa,0xffba9b03,0xffffe8ad,0x0032c944,0x0064d7b4,0x007eac29,0x00598222,0x002afc49,0xffeea79b,0xffa63a2d,0xff9470b2,0xffb21078,0x00668df7,0x00d9c7a0,0x00c0c2bc,0x009082b2,0x0031be28,0xffd57ed0,0xffb67094,0xffba40c4,0xffcc4973,
-0xffbcb45c,0x001864a0,0x0069f688,0x00e11365,0x00954238,0xffbaa448,0xff4825b6,0xff53112d,0xffb4cd0e,0xfff238f3,0x00016401,0xfff13c7a,0xffe1835b,0xffd35ca1,0xffeca937,0xffea8156,0x0001e121,0xfff42fec,0x002a4da4,0x00370555,0x00348f53,0x00055b48,0xfffad856,0x00202d66,0x00341df6,
-0x00627b6b,0x008f75dd,0x000835fc,0xff943fc8,0xff2d0b2c,0xffbb82d7,0x003b85e7,0x006e8edf,0x00a086df,0x00454a62,0xff4e7c5a,0xffb52958,0xffa08fb8,0xfdd518a0,0xfe2b149a,0xfece3ba8,0xffe05ad9,0xffec5c89,0xffed3569,0x00190434,0xffea1a8b,0xffe9b022,0x0003ea0a,0x001427d8,0x0008506f,
-0xffd37e7d,0xffe4f824,0xffe7e107,0x0000abfb,0x00169674,0x001d9a1b,0x002191a8,0x001c4c5b,0x0007fa1b,0xffee9702,0xffd4332b,0xffbda660,0xffc50eff,0xffc5c9b0,0x000b75a6,0x0071e0da,0x003cc13f,0xffcce5c6,0xff5794fa,0xffc03bc8,0xfff8de4f,0xffe034ad,0x0053398c,0x00661bc0,0x00f8f92f,
-0x0134c0fe,0x00df1358,0x0051a5bb,0x0041fa1f,0x0047ed12,0x00264f14,0x000289da,0x0001480b,0xfffb06b6,0xffeff784,0xfff7d79e,0x00090b6f,0x00080627,0x000ec404,0x0013df64,0xfffdbf87,0xffe8e385,0xffe90a6a,0xfff1bf96,0x0006d9e2,0x0030cb39,0x002c57c1,0x00382d3e,0x003310a4,0x0022f101,
-0xffed531d,0xffa75cc8,0xffbb63de,0xffd6a27e,0xffe0e800,0xffc5eb44,0xffcc8a6a,0x000e8a67,0x0010ff64,0xffc79d38,0xffc86611,0xffa71bcd,0xffc35cad,0xffe1aa0f,0xffe8bcbf,0xfff0484e,0x001e2494,0x000735f3,0xfff22f2e,0xffe8c80f,0xffec51fd,0xffefe8a1,0xfff5d420,0xffeac500,0xffd73b24,
-0xffa8d70f,0xffa77bd6,0xffa1fe9d,0xffa5f2f4,0xffb0c92c,0xffc93e06,0xffef54f9,0x000fefe4,0x0035ef0e,0x00592451,0x00667a3e,0x007761dc,0x00767c14,0x006b4283,0x004270c4,0x001a1abd,0x00031326,0xffeb8af9,0xffce7edf,0xffca0185,0x002e2afa,0x0040f8eb,0x004cbf8f,0x00444ac0,0x0040f2ac,
-0x00375f2d,0x002c332c,0x0028f5d2,0x002d4148,0x0037c4c1,0x0038a55f,0x003af521,0x0023e089,0xfffd7d83,0xffe41f0a,0xffd974b1,0xffd91d77,0xffe3cb67,0xffe96009,0xffef3a39,0xffef1489,0xffeee6f0,0xffeb2f04,0x00028c65,0x000e40b3,0x001423a6,0x002dbc32,0x003aca68,0x0045b3ef,0x0054f354,
-0x006fe10d,0x00890e61,0x0075e12a,0x005f6ef3,0x004b59e7,0x0035a7c9,0x00147b6d,0x0007593d,0x0007c01e,0x0015d7a3,0x001bb316,0x002935be,0x0039066a,0x0047ee39,0x003114c7,0x00218c44,0x00073795,0xfff87d1d,0xffdee093,0xffd21db8,0xffce1a3b,0xffca267c,0xffc0c619,0xffc6002f,0xffca589d,
-0xffd0e65c,0xffd2486d,0xffd3571c,0xffd201a2,0xffdf640e,0xffecaafe,0xfffa3c5f,0x000107d1,0x000aa68b,0x0015e75c,0x000d03f5,0x0004a559,0x0002fc4e,0x0002161d,0x00073159,0x000f28cc,0x0013b7d6,0xffb6cf7d,0xffb62449,0xffafba26,0xffb6e251,0xffafef98,0xffaf6b13,0xffadf992,0xffaa2ae4,
-0xffafa584,0xffb348cb,0xffb6b63b,0xffbd3836,0xffc1229c,0xffc296b4,0xffc40b24,0xffc63808,0xffc730e4,0xffc8f24a,0xffc8d3a6,0xffc8bac6,0xffcb8c61,0xffce98d2,0xffd157e6,0xffd3f1ed,0xffd4f21a,0xffd7b813,0xffd1522d,0xffcbe454,0xffc80c03,0xffc770ff,0xffc93e1b,0xffc88f0b,0xffc86e48,
-0xffc41107,0xffbdc58c,0xffb854fb,0xffcc408d,0xffcb85ca,0xffc94b53,0xffc7d478,0xffc6fee7,0xffcca2e6,0xffcb8fb9,0xffc710ea,0xffc85b0b,0xffc8bbe6,0xffc9fb4e,0xffc9840f,0xffcadb17,0xffcca0a4,0xffccc2ad,0xffccc4d0,0xffcd4330,0xffccc257,0xffcca50f,0xffcc1da1,0xffcf026d,0xffd13f54,
-0xffd3829a,0xffd51964,0xffd6c6fc,0xffd95a77,0xffd7b591,0xffd6ed20,0xffd502eb,0xffd2e0cd,0xffcfce33,0xffccea03,0xffcc2abc,0xffcc72d5,0xffcd8461,0xffcddcdc,0xffce5634,0x000f8393,0x00115e74,0x000c38d4,0x000b22a6,0x000b30b5,0x0015615c,0x0007b721,0x00052e2b,0x000ae2f7,0xfffd4cf5,
-0xfffacc34,0xfffd67a3,0x000340e5,0x0006b019,0x00065161,0x000ddc85,0x00109f89,0x0012f8a3,0x000ccdab,0x000aad87,0x00078fe3,0x000aec63,0x000e9744,0x0015d351,0x00184f3e,0x001967bd,0x00186032,0x001550a5,0x001400b6,0x00114f7e,0x0013ac2a,0x0011c04b,0x000abadb,0x000f65b6,0x00121cd6,
-0x00197a23,0x0014515f,0x001d4260,0x000f3159,0x0006d445,0x000691c2,0x001e60c7,0xfffa26f3,0xfff03cc9,0x00011709,0xffe13ada,0xffdcc9b5,0xffea67bf,0xfff36600,0xfffeb426,0x00015a09,0x00170bea,0x001dc009,0x001f2660,0x000eb725,0x0002f778,0xfffe3a95,0x00060490,0x0015e507,0x002de94f,
-0x003b3b1a,0x003e118c,0x00316563,0x00235769,0x00184e73,0x00126c4b,0x001b3f54,0x001bb5e1,0x000fd102,0x001d657a,0x002547b0,0x00350f76,0x0027bd02,0x00252396,0x00061fa7,0xfffbad98,0xfffbacf5,0x002fecb1,0xffecad18,0xffdc1400,0xfff97b22,0xffb14833,0xffa528cd,0xffc00266,0xffd234b4,
-0xffeefe75,0xffeeaaf2,0x001a72f5,0x00211b2a,0x0028a897,0x000ec643,0xfffb663e,0xffef83e5,0xffff317a,0x0014c85d,0x003c4339,0x0051d127,0x0057d0e5,0x00496412,0x0038d98a,0x00323257,0x002acbfa,0x002e7a73,0x0024ead8,0x00076ab3,0x0024f410,0x0034e05e,0x004fe69e,0x0038edd5,0x003f6b5f,
-0x00128d14,0xfff38993,0xfffa598c,0x004f5dca,0xffcc6571,0xffa9e0e4,0xffeaa56b,0xff9c4d80,0xff8ec42f,0xffa7ca53,0xffe1b694,0x00074684,0x0014be77,0x003b23fa,0x004fa68b,0x00580f36,0x0017a46a,0xffeaf064,0xffd4b65c,0xfff273fe,0x00275e1f,0x007869f9,0x00a81aa6,0x00b64e30,0x0082b9f5,
-0x004abc02,0x001fc3d7,0x001e4f7b,0x002e863b,0x0033cdbe,0x002119fd,0x00556ce4,0x006fb03a,0x00954ae0,0x0067fccb,0xffd73d24,0xffdd7d1d,0xffb2735a,0xffbc993b,0xfff743f1,0x00380a47,0x00529527,0x004cd756,0x000e4939,0xfff2c877,0xffe6dc74,0xffe2f3a9,0xfff3ca29,0x003e6947,0xffc358a8,
-0xffaa9063,0xffe0afce,0x000c3eea,0x0039cac2,0x004be34b,0x00276a0c,0x00035e4c,0xffcb0b02,0xff9b193b,0xff9be8cb,0xffb5ca25,0x00816135,0x00e489bf,0x00a0e109,0x007f6450,0x001f8aaf,0xffb4dc35,0xffb6ffe3,0xffc4a1d2,0xffd1fe7e,0xffe192c5,0xfff8ed85,0x004ea09d,0x00d8b54e,0x00a0ae54,
-0xffdd6202,0xff4ce31c,0xff41e4d8,0xff9fd318,0xffe6589b,0x0001a96f,0xfff5875b,0xffed5dec,0xffd7c699,0xffe0bd8a,0xfff09961,0x000e88ad,0x00018c75,0x00300d46,0x003c5acb,0x00461c88,0x00103dc1,0x000b2713,0x003225cb,0x0054b80e,0x007159e3,0x00685487,0xffe1abec,0xff772a07,0xff275915,
-0xffc524c3,0x0042a3c1,0x00634db3,0x00701578,0x00112665,0xff3d9168,0xffa02544,0xffb3b9f1,0xfe152976,0xfe12f4ec,0xfea91f44,0x000a4e4a,0xffd194b2,0xffce6fed,0x001e1306,0xfff24ec4,0xfff0e8bd,0x0001cb38,0x000cd4f2,0x000560d8,0xffd6f5bd,0xffe4116a,0xffe04ee1,0xfff25765,0x00114a4d,
-0x001f6b15,0x00222d2d,0x0014a706,0xfffab739,0xffd8dd5d,0xffbe64a9,0xffaf65c5,0xffbdb060,0xffc4c0ac,0x0015c0e8,0x009c533a,0x0000b213,0xff8b315c,0xff71e01a,0xffdb7fb1,0x0022237d,0x0011175a,0x00535d3d,0x00276dea,0x00925dde,0x01189bba,0x00ea13ae,0x006be073,0x004691cf,0x004d0e16,
-0x00333dad,0x0003e1ca,0xffffafdc,0xfffe4818,0xfff2f299,0xfff80eed,0x00014349,0x00070830,0x00154ca4,0x0021b3a7,0x000e789c,0xfffa54c0,0xfff6cb59,0xfffed347,0x0013e805,0x003d3892,0x0031fb64,0x00317aec,0x0020aefd,0x0016ed55,0xffe7d93a,0xffb425f1,0xffcc7f09,0xffe4ae5c,0xffe7e2c1,
-0xffcab409,0xffd9f2fa,0x002de3c0,0x0001e2a9,0xfff75e79,0xffe6a9e8,0xffb751d3,0xffbfcca3,0xffd6aad2,0xffe95c97,0xfff269fe,0x00175ee2,0xffff659a,0xffea330c,0xffe161a7,0xffe8a31b,0xffee3006,0xfff104fd,0xfff1b4da,0xffe015d9,0xffb0a19c,0xffaab98b,0xffa2e99f,0xffa959d0,0xffae1e68,
-0xffc1d6b6,0xffe6fe36,0x000aa110,0x002fd1e1,0x004ce0f4,0x005e0344,0x006e30ec,0x006c3677,0x005b1039,0x003111d3,0x00110be4,0xfff95902,0xffe846c9,0xffdb9b50,0xffed82aa,0x00028d75,0x0019fa77,0x0029e36b,0x0027ec31,0x00293204,0x0020c8cf,0x00190a70,0x0016888d,0x001b599c,0x002745a2,
-0x002bcc4d,0x0037295d,0x0028b558,0x0009e7c2,0xffeecd9d,0xffdfd3aa,0xffd7e96d,0xffdfe10b,0xffe533aa,0xffeda07e,0xfff09388,0xfff45e73,0xfff0dbac,0x000c0577,0x001ddc0c,0x002b0198,0x00486d88,0x00566ecb,0x00620ea8,0x006d0cee,0x0082043b,0x0094f7c9,0x007b9102,0x005b6acc,0x00359351,
-0x00139ea1,0x00346483,0x002a31c0,0x00285c5a,0x0034eb2d,0x003c5a6b,0x00467ff9,0x005155dd,0x005db4eb,0x0047bef0,0x0038784a,0x001fc60d,0x000d3d33,0xfff081d8,0xffe22465,0xffdabfee,0xffd4f1cf,0xffc83fdc,0xffcd486e,0xffd0c327,0xffd5abcc,0xffd58898,0xffd514ec,0xffd27940,0xffdf6e51,
-0xffeb6886,0xfff72f57,0x00040582,0x0013cb2f,0x0025ac29,0x001d9b18,0x0015b082,0x001275b8,0x00101fed,0x00150e52,0x002074b6,0x002d6422,0xffbf974f,0xffc20329,0xffbb2bb8,0xffc63f0a,0xffc0024f,0xffc0ba66,0xffc19150,0xffbefc8b,0xffc0a57d,0xffbfcba8,0xffbf519b,0xffc29ad0,0xffc37f50,
-0xffc158ee,0xffc3c9c3,0xffc696df,0xffc7ee4d,0xffc9e139,0xffc8a6ce,0xffcab2ff,0xffcdb27a,0xffd08d5c,0xffd304b3,0xffd49dab,0xffd51c5a,0xffd6a58e,0xffd01dd3,0xffc974aa,0xffc509c8,0xffc37a31,0xffc555a1,0xffc53c95,0xffc958b2,0xffc8f094,0xffc4ec61,0xffbffff8,0xffd24a6b,0xffd32b1d,
-0xffcf3858,0xffcd7ef1,0xffcc53ed,0xffd45535,0xffd32767,0xffcfb10c,0xffce75c5,0xffcdc368,0xffcd810b,0xffcb99fb,0xffcb93f2,0xffcb6235,0xffcc368f,0xffccec7e,0xffccc072,0xffccea8d,0xffcd6229,0xffce6a89,0xffd02698,0xffd1d6c7,0xffd39500,0xffd4cc68,0xffd617db,0xffd8300d,0xffd6ba49,
-0xffd63daf,0xffd4a003,0xffd3497e,0xffd0d4ab,0xffcde864,0xffcde07c,0xffce7679,0xffd08a17,0xffd28242,0xffced8c0,0x000ef02d,0x0010fcc0,0x000cae3a,0x000c1b92,0x000bd632,0x00138b17,0x0007e14f,0x0005ee81,0x000981ab,0xfffe381a,0xfffbc7f9,0xfffede46,0x0002f4bd,0x0005fb10,0x00059031,
-0x000d1729,0x000f6967,0x00124f2d,0x000d49dd,0x000b65a1,0x00078931,0x000b1106,0x000eae5c,0x00163325,0x001801e8,0x001876db,0x0015667b,0x00141dbd,0x00133ec9,0x00127ccc,0x001187b9,0x000fa9c6,0x000ae1a7,0x00103022,0x00130a5d,0x0019e78b,0x0013ef40,0x0019b864,0x000e8f12,0x0007b50e,
-0x000578f7,0x00159adb,0xfff9d7d2,0xfff03027,0xfff9f5cf,0xffe07383,0xffddd82a,0xffec1bc2,0xfff1b7ff,0xfffb281d,0xfffd330b,0x00146c68,0x001be304,0x001c4652,0x00121c82,0x00092285,0x00031e7b,0x000b0303,0x001a32d8,0x0031a37b,0x003c4da3,0x003c4158,0x002a3336,0x00212aea,0x001839bc,
-0x00172b3d,0x0017d925,0x00179b02,0x00105996,0x001fc5e9,0x00280ed9,0x0034dc23,0x0024d62b,0x002385e2,0x000a6b86,0x00000519,0xfffd2c10,0x0022bcf3,0xffede98a,0xffdee71a,0xffeec4d8,0xffb182bc,0xffa43bb8,0xffc27fa9,0xffcbdbe0,0xffe76aa3,0xffe5386b,0x00156d04,0x001b370b,0x001f5cd4,
-0x0010c197,0x00008e7d,0xfff40532,0x000397a2,0x0018b835,0x00417c9c,0x00526ba7,0x005497b3,0x003c2d5a,0x00370656,0x00314d04,0x00325db3,0x00244831,0x001aa15b,0x000a5a5e,0x002adb90,0x003b6fce,0x0052ab4f,0x00382548,0x0030d0b3,0x000f7357,0xfff22c51,0xfff362a4,0x00359202,0xffc8f7e1,
-0xffa3b0bc,0xffd58967,0xff8a12a3,0xff7e0400,0xffac3513,0xffd16f58,0xfff42aa8,0x0007dc32,0x0032e0e7,0x0048478c,0x0051ae24,0x00235b87,0x00018e44,0xffeba033,0x0007a9df,0x0039da93,0x008978a3,0x00ad6725,0x00aed332,0x006c7cff,0x004635a2,0x00247bdb,0x00304757,0x00268793,0x002832d0,
-0x002594e5,0x005c3cf5,0x0076c430,0x009423a9,0x005d0089,0x000b2d91,0xfff90ab9,0xffdc8828,0xffdf6577,0xfffd329f,0x00429998,0x0064e185,0x006de9e6,0x001e7acd,0xfff14e7b,0xffe43bfe,0xffdaa3d9,0xffed3d17,0x0040ea97,0xffc02bb2,0xffa0b55b,0xffc39035,0xffe3436c,0x0005e7fd,0x000d31cf,
-0xfff21b40,0xffd9d7f2,0xffa54ea9,0xff8fe301,0xffa0b1b2,0xffb79c80,0x008aa9f6,0x00da4efc,0x007af6e3,0x00656579,0x000d2a60,0xffa12c3b,0xffc03162,0xffd3c046,0xffd51720,0x000988a8,0xffdead5e,0x00300d04,0x00be08d0,0x009c1b8b,0xfffcb937,0xff52895e,0xff3119e7,0xff8f3a5d,0xffdf2527,
-0x0003d85f,0xfff95871,0xfff6d53e,0xffdce052,0xffd7455e,0xfff71c50,0x001972e4,0x000e8a93,0x00318820,0x003e55e8,0x0054a47e,0x001fd18b,0x001ff991,0x00436dbf,0x0071323c,0x00771120,0x003a1b40,0xffbdbe62,0xff62d292,0xff315ec5,0xffd7da76,0x004ba659,0x0056d921,0x003d48e8,0xffdd4462,
-0xff3c5a67,0xff9426a5,0xffb07e1e,0xfe67055c,0xfe27c79a,0xfea9182a,0x001fce5b,0xffc35097,0xffbaf4c9,0x0014c198,0xfff650c0,0xfff75d8c,0x00009711,0x0006fbf1,0x000281b1,0xffdd303e,0xffe1b77f,0xffd871b0,0xffe535aa,0x00072053,0x0018c402,0x001503e6,0x0007104f,0xffed0e79,0xffc53490,
-0xffae3cd9,0xffa76c12,0xffb94e82,0xffcd0e3b,0x00233cd3,0x00b6d1f8,0xffcd10db,0xff56127f,0xff7e26ce,0xffedeaaf,0x0046a245,0x004cbfd8,0x003a47ff,0xfffe6b76,0x002d6620,0x00e75e5f,0x00e4fbe0,0x00833d35,0x004176cf,0x0044ab9e,0x003b87ee,0x0007eb3a,0x000088de,0x00027996,0xfff71f0f,
-0xfff7c7dc,0xfff8adfe,0x00055c11,0x0019ef12,0x002b7f26,0x001be5f3,0x000a92d5,0x00040786,0x000dd187,0x00212b0b,0x004564ee,0x0038d67b,0x002accab,0x000dcd92,0x000a7fe3,0xffe52440,0xffc8bdab,0xffdbfa94,0xffefdec3,0xffeaccbc,0xffe52c9a,0xffff1519,0x00540a6d,0x0005af98,0x001eb5a3,
-0x00026e5d,0xffcba660,0xffc0ebf8,0xffd0db07,0xffed2aec,0xfff76197,0x000de25e,0xfffa581d,0xffe87761,0xffe04a58,0xffe76529,0xffee6b23,0xfff01f43,0xfff880b8,0xffe91449,0xffbdf505,0xffb12963,0xffa6f219,0xffaedcd8,0xffb06f42,0xffbf9f0c,0xffe00e58,0x000607f4,0x002a656c,0x00432507,
-0x0056669f,0x00635785,0x005f35b7,0x0048d2f7,0x00209001,0x00051266,0xffefe5ce,0xffe3534b,0xffe25779,0x00098d09,0xffd9b23c,0xfff20cda,0x0005fc46,0x000d0917,0x001418b5,0x000ea355,0x000aca93,0x0008abc4,0x000d8e61,0x00177370,0x001c6898,0x002de7f3,0x002854bc,0x0013c24c,0xfff97749,
-0xffe7d0b6,0xffd9079b,0xffdb4829,0xffdebd02,0xffe7b1b1,0xfff06bd3,0xfffa7937,0xfff9c69e,0x0018faea,0x002f5ff6,0x003fb122,0x005f98ed,0x006f1d04,0x007b7df3,0x007fc20c,0x008a46d3,0x009217b7,0x0077296a,0x0052726b,0x001f3970,0xfff32f83,0x004fdd5f,0x00489662,0x0045060e,0x004d056c,
-0x0053fd72,0x0059c9bc,0x005ee961,0x006734f5,0x0054ef27,0x00485847,0x00347c5f,0x0020d6ae,0x00040a92,0xfff5a5bc,0xffe9f57c,0xffe124ac,0xffd0809e,0xffd53814,0xffd7bfaa,0xffda9616,0xffd95e75,0xffd7b4dd,0xffd494e2,0xffdfd3f3,0xffe9e0ad,0xfff36950,0x00057299,0x00195380,0x002fd9ef,
-0x002ad44a,0x00261d6a,0x0023cbe8,0x0021a115,0x0026bdf3,0x003500cb,0x0045c3e3,0xffce0d3b,0xffd1c3a5,0xffcaf0a3,0xffd7e27e,0xffd306fa,0xffd44dda,0xffd6628a,0xffd567c2,0xffd22983,0xffccff38,0xffc85897,0xffc7c60e,0xffc579a7,0xffbfec74,0xffc38e8a,0xffc77da7,0xffc9ff9a,0xffcc57de,
-0xffcaefc7,0xffce9e61,0xffd1ca31,0xffd4c378,0xffd7291f,0xffd84c70,0xffd8cedd,0xffd9747c,0xffd4266b,0xffce1d52,0xffca97e0,0xffc90a0b,0xffcb2fe2,0xffcc591d,0xffd25d35,0xffd48d9d,0xffd2810c,0xffce0bd0,0xffdb0271,0xffdd072d,0xffd7e525,0xffd5ebd5,0xffd4023b,0xffdd95fe,0xffdc26a7,
-0xffd9ee5c,0xffd66562,0xffd4759a,0xffd287ff,0xffcf3c32,0xffcd967f,0xffcb0f1a,0xffcded96,0xffcf8aa6,0xffcde978,0xffcf84a5,0xffd0ce91,0xffd2cacb,0xffd3861c,0xffd4a6c0,0xffd5d46c,0xffd6a64f,0xffd78583,0xffd8fd75,0xffd84960,0xffd86900,0xffd791b2,0xffd7825b,0xffd65688,0xffd478b9,
-0xffd4a8fe,0xffd52be5,0xffd75d08,0xffda32bb,0xffd1da93,0x000d8e33,0x000fc000,0x000cac05,0x000beda0,0x000b3462,0x000fd1e3,0x0007734d,0x00059e70,0x00063397,0xfffe0c06,0xfffb9f7d,0xfffe3de1,0x00016e82,0x00043304,0x00035f6d,0x000b0f2a,0x000d2a4f,0x000fbc34,0x000c31d8,0x000ad429,
-0x00075d5d,0x000a97b9,0x000df66e,0x001515f7,0x00169a6d,0x00169fb2,0x001228c0,0x00124b54,0x0011d3b1,0x001307dc,0x000ebf3d,0x000cdce5,0x0009ca80,0x001019ce,0x001304d0,0x0019039a,0x0012867b,0x00151b11,0x000d2a01,0x00076601,0x0003c1d9,0x000ab471,0xfff98e0b,0xfff0af3a,0xfff19555,
-0xffe11b69,0xffe07a04,0xffec5a52,0xfff11d6f,0xfff83f3a,0xfff7f089,0x0010be0b,0x00188c93,0x00173a79,0x001387d8,0x000d4bf5,0x0007c78d,0x000f6e25,0x001d15f6,0x00322f5f,0x003b0d0c,0x0038dc36,0x00238fe2,0x001eb723,0x0017f791,0x001bbcef,0x0013e582,0x0012526c,0x000e377e,0x002058a2,
-0x00292ed6,0x00326ca2,0x00207a46,0x002066d7,0x000ea598,0x0003c565,0xffff0aed,0x001386af,0xfff0d6cc,0xffe35a61,0xffe1d4a9,0xffb458b9,0xffa5876c,0xffc16692,0xffc73ebe,0xffe1bf9a,0xffdb61b6,0x001025b9,0x00148662,0x0013ad1b,0x00109e47,0x00041be5,0xfff9367f,0x0007b319,0x001b133c,
-0x0041a369,0x004fcc7c,0x004f3d7b,0x00312eb4,0x00347bf7,0x002fbb98,0x00390e0e,0x0019c24e,0x001007de,0x00099f11,0x002edcd1,0x003f9184,0x00516460,0x00349ed6,0x002079e9,0x000b524f,0xfff0874e,0xffecdebb,0x0016d109,0xffc9c1ef,0xffa399db,0xffbf3566,0xff7e27bd,0xff74c0c6,0xffb22811,
-0xffc558d2,0xffe34039,0xfff6e61c,0x002a4d6e,0x003e69a0,0x0043be42,0x002b6219,0x00155671,0x00029e38,0x001c1272,0x0048a281,0x00913426,0x00ac65ed,0x00a40a91,0x005b0d4b,0x00430342,0x002abfa7,0x004275ab,0x001f09e9,0x001acb58,0x0021cf0d,0x005de37c,0x0079da85,0x008ca6be,0x004e6d57,
-0x00401e67,0x0019e51c,0x000ac9f8,0x0007927b,0x000ab2dc,0x004ee9a7,0x00755a07,0x00872dfb,0x002e84fe,0xfff60c5c,0xffe93de0,0xffdbfbe4,0xffebace7,0x003fb557,0xffc28539,0xff9e84a2,0xffaa93ec,0xffbdcb7b,0xffd1e67d,0xffcf029e,0xffc0acce,0xffb28749,0xff81b6fc,0xff85eb57,0xffa3ac58,
-0xffbb0a22,0x0085f8e3,0x00c0558b,0x00539a79,0x0046451c,0xfffdc945,0xff9e1e87,0xffcff026,0xffe4eeb9,0xffd94af1,0x00306a16,0xffcaae5e,0x0011734c,0x00954daa,0x0089d3eb,0x0017ae45,0xff5b1874,0xff274458,0xff851446,0xffd958e2,0x00042769,0xfffc9a47,0xfffd65e2,0xffe15b45,0xffd248b5,
-0xfffd10a8,0x00207d60,0x0018b336,0x002ec798,0x003d4e10,0x005f4ebd,0x0032561e,0x003736c0,0x0052daca,0x0085d473,0x0073620a,0x000d6e91,0xff9e5acf,0xff56b774,0xff49299e,0xfff19591,0x00542fea,0x0048c97e,0x000c92e6,0xffafa32b,0xff4740cf,0xff8fcf48,0xffa131ec,0xfec2be18,0xfe64c3e6,
-0xfec8396a,0x0018be86,0xffc32130,0xffb8b6a2,0x00012608,0xfff7d315,0xfffcfda6,0xfffec314,0x0003cefd,0x0001ca4c,0xffe4f708,0xffdf6281,0xffd18626,0xffdad117,0xfffa7107,0x000b3fa8,0xfffeab0c,0xfff64fee,0xffe0278f,0xffb5cdf0,0xffa4efac,0xffa5dc29,0xffb83f56,0xffdefc6e,0x00324d35,
-0x00b9bbc7,0xffa5ae2f,0xff38ba8d,0xff921ba7,0x00017531,0x00640f36,0x0085b835,0x001711f7,0xfff58228,0xffe4d556,0x00a68eaf,0x00c89652,0x008b29c9,0x00320652,0x002fc6bd,0x0039d2a6,0x000beac4,0x00022269,0x0005da06,0xfffbc977,0xfff726f7,0xfff1c83e,0x0003a50f,0x001c49b9,0x0030f8ef,
-0x00255e7d,0x00185b72,0x0010c527,0x001d8a95,0x002d2958,0x0047a8b4,0x003e3295,0x0025b292,0xfffdefe3,0xffff1245,0xffe36ef8,0xffddc262,0xffe6c33c,0xfff7d1d1,0xffedee4f,0x000f8a34,0x00337bbc,0x00728021,0x001b35a4,0x00392720,0x0018bd3b,0xffe25f1b,0xffc8db5f,0xffd32759,0xfff35751,
-0xfffd8fcb,0x0002bc2b,0xfff79d17,0xffebcb20,0xffe5da94,0xffe8e349,0xffef9c48,0xfff227a1,0xfffebff6,0xfff21abf,0xffcf7952,0xffbb4c25,0xffae4016,0xffb59240,0xffb71a53,0xffc2ca62,0xffdc816e,0x00032aaa,0x0025b7e7,0x003ac479,0x004c67d5,0x00545d2a,0x004f0178,0x00326fe7,0x000d89a9,
-0xfff501f3,0xffe37a50,0xffdb72de,0xffe523e6,0x001c56e5,0xffb86035,0xffcd7020,0xffe4baab,0xfff4c236,0x00019eee,0x0000434a,0x00006c6c,0xffff88fc,0x0003d40e,0x00099051,0x000ce092,0x00206c93,0x00235acf,0x001aacae,0x0002d981,0xfff04d54,0xffdc38f4,0xffd73cb1,0xffd798b8,0xffdf8e71,
-0xffedc6f1,0xfffe21f7,0x0003affd,0x00256260,0x003e9a61,0x004fc391,0x00701e3a,0x008067f3,0x008c317d,0x00886e26,0x0085f144,0x007f7389,0x00646e02,0x003fd257,0x0008b811,0xffd6d7b8,0x00605189,0x005c5684,0x00583760,0x005a7d70,0x005fc19a,0x0061b325,0x00618b3e,0x00654e6f,0x0058b24d,
-0x0050f1f3,0x0043d52d,0x0031f327,0x00174a52,0x000a0de7,0xfff974c9,0xffed0b84,0xffd89b56,0xffdd2ac2,0xffdeb59e,0xffe02573,0xffde4f18,0xffdb4bc0,0xffd7ac30,0xffe06fe3,0xffe83811,0xffeef2a3,0x00042a47,0x0019baf6,0x00323fd1,0x00321a37,0x0032c48f,0x0033ed75,0x00329bbc,0x003760f6,
-0x0046205f,0x0056235f,0xffe221c6,0xffe5ed60,0xffdd3eac,0xffe9dd2e,0xffe55024,0xffe61cb8,0xffe8044e,0xffe7b720,0xffe0be53,0xffd850c5,0xffd05474,0xffccbd67,0xffc862b5,0xffc0dbff,0xffc4e6c9,0xffc99478,0xffccb547,0xffcef4e9,0xffcdcd3c,0xffd156ea,0xffd4a2bc,0xffd7fedb,0xffda9837,
-0xffdbb01b,0xffdc7ccc,0xffdcabfa,0xffd9eca8,0xffd63271,0xffd4e55f,0xffd46389,0xffd72793,0xffda29f9,0xffe08ecb,0xffe493af,0xffe4aa3c,0xffe18aab,0xffe4ba04,0xffe803ab,0xffe1c906,0xffdfb795,0xffdd6deb,0xffe6b4ed,0xffe4e0c6,0xffe3d916,0xffdebd2f,0xffdbe18a,0xffd8cc07,0xffd4879b,
-0xffd17f14,0xffcd36a3,0xffd1dea4,0xffd3bd87,0xffd16f1a,0xffd3a312,0xffd534d6,0xffd6fe42,0xffd72e3a,0xffd7bf3d,0xffd8655b,0xffd8dd2b,0xffd9665c,0xffda31ed,0xffdaa369,0xffdb8f90,0xffdbca16,0xffdd2db6,0xffdd9f0b,0xffdd62c0,0xffddb8eb,0xffde2bb3,0xffe01495,0xffe32eed,0xffd564e4,
-0x000b7464,0x000dd239,0x000bec1b,0x000b1cc4,0x000a519f,0x000bf56c,0x0006b7d8,0x0005310d,0x00027ead,0xfffdfde9,0xfffb8b86,0xfffc9ddb,0xffffeefe,0x0002a082,0x000130a5,0x0008d956,0x000a6931,0x000ce99c,0x000ab226,0x0009b090,0x0006be45,0x00099037,0x000c86d8,0x0012c52b,0x00145c45,
-0x00141e98,0x000eb1b9,0x000ff74b,0x000fcefd,0x0012a879,0x000b9d40,0x0009ab1b,0x0007869d,0x000f11e4,0x001204d1,0x0016f178,0x0010499f,0x00100774,0x000b5610,0x00068341,0x000133d6,0xffffd4e6,0xfff9933f,0xfff1a642,0xffe93c3d,0xffe33976,0xffe47965,0xffebb00c,0xfff1b727,0xfff64ebf,
-0xfff27a7a,0x000c4cbb,0x00141007,0x00116ff6,0x00131942,0x001021f7,0x000bd2b9,0x0012c928,0x001e92c5,0x003017fe,0x0038051d,0x003435b6,0x001d024f,0x001b7597,0x0016f382,0x001f0ece,0x000fda2c,0x000ca5e7,0x0009da4d,0x001f17cf,0x002882a1,0x002e1c40,0x001b4dd9,0x001c4ece,0x0012c4f8,
-0x00065e78,0x00005d89,0x0004d73a,0xfff4d005,0xffe8a451,0xffd41316,0xffb949a4,0xffa8bc17,0xffbc4718,0xffc44e9b,0xffde02e2,0xffd27843,0x000aa9f5,0x000d1569,0x0007f2d6,0x000ea3b0,0x0006768e,0xfffed636,0x000b19ee,0x001c30c0,0x003dd8e3,0x004b5812,0x0048dc34,0x00279536,0x0030a319,
-0x002d0177,0x003d8b67,0x00107188,0x0006c666,0x00057195,0x00307f4d,0x0040fff0,0x004c8d6f,0x002f5e9f,0x00109a71,0x0007db60,0xffee78c9,0xffe65265,0xfff7187d,0xffcddd16,0xffa90b2c,0xffa8ee9b,0xff7a92ca,0xff74296b,0xffb70227,0xffbee3f8,0xffd67a4b,0xffe3eaea,0x00212dd8,0x0032220a,
-0x0031b597,0x002f7c84,0x0024ec4a,0x00178aef,0x002da4c2,0x00539462,0x0090d959,0x00a71158,0x00971208,0x004b4dcc,0x003dda27,0x002f9ebd,0x0051f1fc,0x00192c0c,0x000de019,0x00176a8c,0x005ab034,0x0078a7fe,0x007fe831,0x003e6a92,0x006deb03,0x003b87bc,0x0036615c,0x002e134a,0x001daedf,
-0x005b11b3,0x008147a3,0x009486f1,0x003dbcb0,0x0000bd9f,0xfff46292,0xffe53892,0xffef1b86,0x003aca3b,0xffcb1a14,0xffa489ef,0xff973f84,0xff9f46ce,0xffa516c6,0xff9b8a3b,0xff978c3c,0xff903a1f,0xff641400,0xff7e6b36,0xffa6135a,0xffc2bc35,0x00763cdc,0x009b197c,0x002d72e7,0x002623a3,
-0xfff278e3,0xffa99af5,0xffe2720a,0xfff5eabd,0xffe0f915,0x0051e511,0xffbd21fa,0xfff61fa3,0x0065a830,0x006e12b8,0x002da830,0xff67d4e7,0xff29776c,0xff838140,0xffd49c93,0x00010d6b,0xfffe0217,0x0000d1a2,0xffe4f876,0xffd1563d,0x0000e663,0x0023437f,0x001eccb5,0x002915b4,0x003a3999,
-0x00647258,0x00452ef5,0x004eaaca,0x005fd565,0x008d87ca,0x0064ddef,0xffe8f38d,0xff86a133,0xff52d4ed,0xff682c1f,0x000bda3d,0x00585e2d,0x0039881f,0xffe22e3e,0xff8c3286,0xff58b267,0xff91016f,0xff8a81f6,0xff1b4fd3,0xfeb9c880,0xfefbb84a,0xfff8abbd,0xffcf4329,0xffc7f31c,0xffeb12c5,
-0xfff97085,0x00016b9c,0xfffd92b7,0x000303bf,0x00037b42,0xffedeadb,0xffdecdde,0xffcd118b,0xffd43f1e,0xffedf50f,0xfffa9e8d,0xffe5af46,0xffe563b8,0xffd497e7,0xffaaa059,0xffa1c49c,0xffa8d8a8,0xffb749b1,0xfff680da,0x0040816c,0x00a668d1,0xff89b9ab,0xff348560,0xffb90fe7,0x00168a45,
-0x00760a9d,0x00b3d02b,0xfff19ba6,0x0010ceae,0xffcc5b4d,0x005e2bcf,0x0090fac4,0x007c49d8,0x001cbb18,0x00159473,0x002eaf6d,0x000d14f4,0x000224bc,0x00061e03,0xffffdfcd,0xfff6e945,0xffee9551,0x00021a0d,0x001c762f,0x00332b8c,0x002b17f5,0x00233bb1,0x001c69ca,0x002b47bf,0x0035d765,
-0x00441d94,0x003f5286,0x0021d82b,0xfff2dff6,0xfff60c5e,0xffe19e4c,0xffec53b4,0xffeaf54b,0xfffcdf21,0xfff820d0,0x003eddf7,0x0066d089,0x008105db,0x003f2a09,0x0044dcb0,0x00270695,0xfff963f7,0xffd7ee09,0xffdeb841,0xfffa5ab3,0x0001c6a8,0xfff88ecd,0xfff78ca5,0xfff24552,0xffefeaf5,
-0xffed3456,0xfff1a8a0,0xfff5a9e1,0x0003838a,0xfffa97d2,0xffe2b911,0xffc8eddc,0xffb90487,0xffbd070e,0xffc0f8a9,0xffca4d30,0xffdd0c54,0x0000c25a,0x001fb88d,0x0032c750,0x003df118,0x003fbbb2,0x0039f973,0x001856e1,0xfff7a909,0xffe201e5,0xffd3eeeb,0xffd26f82,0xffe63cfc,0x0026af20,
-0xffa40d77,0xffb10948,0xffca0e36,0xffe00d35,0xfff15361,0xfff4f805,0xfff93e61,0xfff9eae5,0xfffd33a2,0xfffe71d0,0xffff4f50,0x00112be9,0x001ad1af,0x001dbcd2,0x000a633a,0xfff89b4a,0xffe14073,0xffd50565,0xffd1a61d,0xffd7e2a2,0xffe8b994,0xfffd78ee,0x000af3c4,0x002d1202,0x00479369,
-0x0059405d,0x00787516,0x0088606f,0x0091a692,0x008553a7,0x007545e5,0x005f2aa9,0x00443841,0x0023598b,0xfff147c9,0xffc1fe19,0x00606ab3,0x00606d49,0x005de380,0x005adc42,0x005e4d14,0x005d4945,0x0058c9cb,0x00587911,0x005351c2,0x0051d120,0x004d539e,0x003e881e,0x00282f1d,0x001cf319,
-0x000733ef,0xfff7284a,0xffdff1d8,0xffe498bd,0xffe5abed,0xffe62842,0xffe3c83d,0xffdf993a,0xffdb352b,0xffe16e89,0xffe713e6,0xffeaf3a5,0x00013347,0x001680c7,0x002f06aa,0x00341228,0x003aa38c,0x004070c5,0x003f13c4,0x0041e2e3,0x004d73b5,0x0059119b,0xfffa9688,0xfffe6c77,0xfff34de7,
-0xfffd1908,0xfff7c671,0xfff71467,0xfff8278e,0xfff6e3f6,0xffee839a,0xffe3b76a,0xffd9a9fa,0xffd41e93,0xffceaf1f,0xffc6c4ac,0xffc9ef8a,0xffce68f9,0xffd0c28a,0xffd1d7f3,0xffd013ee,0xffd24af3,0xffd5958f,0xffd922ce,0xffdbeae8,0xffdcfa62,0xffddeaf0,0xffddc2ed,0xffde8a03,0xffde283b,
-0xffdfcb64,0xffe10fdf,0xffe4c00e,0xffe9f6b1,0xfff045f4,0xfff618b2,0xfff8ec09,0xfff89da0,0xffeda3b1,0xfff23fe1,0xffeb9424,0xffe9c68b,0xffe74223,0xffef166d,0xffece088,0xffebf945,0xffe6150a,0xffe2f363,0xffdf66b9,0xffdaef38,0xffd72673,0xffd2220f,0xffd77adf,0xffd8a759,0xffd61c84,
-0xffd7fe30,0xffd901b2,0xffd9d2ba,0xffd9b635,0xffd9b52c,0xffd9db87,0xffd9fd0c,0xffda44f2,0xffda5670,0xffdc135e,0xffddcf98,0xffdf2d2e,0xffe1ef48,0xffe3f586,0xffe55b3d,0xffe62570,0xffe6d510,0xffe87d06,0xffeb85cd,0xffd7f2e0,0x0009e2b2,0x000c42c1,0x000bb84b,0x000a2800,0x0008ee91,
-0x00078d54,0x00067d48,0x00048ea5,0xfffde4f3,0xfffd062c,0xfffa8c8f,0xfff973c3,0xfffd8b36,0x00003d43,0xfffe393c,0x000660be,0x0007f629,0x00094cf8,0x0008c576,0x000885c8,0x0006d583,0x00090784,0x000b9e05,0x0010c457,0x00129415,0x00123446,0x000c3bf8,0x000e575d,0x000e6b96,0x0012a494,
-0x000972d5,0x00076861,0x0005a3a9,0x000e48d1,0x001126e9,0x0014b6a9,0x000e63ca,0x000bf2bb,0x000a6606,0x00048dd2,0xfffec55f,0xfff6dfa0,0xfffa0ca8,0xfff37994,0xffe2d005,0xffe79bec,0xffea4fdb,0xffeb0b4f,0xfff42818,0xfff65671,0xffee69eb,0x00075b78,0x000ec9c3,0x000c4f79,0x001178af,
-0x00110fb5,0x000fc374,0x0015f68d,0x001fea30,0x002d731f,0x0034bd8a,0x002fab8a,0x0017b3a4,0x0018521a,0x00161fbc,0x00225f8c,0x000d55c6,0x000890f9,0x00061128,0x001dd7c0,0x0027598b,0x002913c1,0x0016b272,0x00189068,0x0016f095,0x00079e5f,0x0000f331,0xfff88fa6,0xfff949af,0xffee33b0,
-0xffc71072,0xffbedce4,0xffad6f07,0xffb3b5a6,0xffc38470,0xffdb4f04,0xffcb75db,0x0004a84c,0x000540e1,0xfffe4622,0x000b34f4,0x00078e4e,0x0004dc0b,0x000ef74b,0x001db626,0x003934e1,0x00470639,0x00435568,0x00209c2d,0x002cefbb,0x002aa43d,0x0041c12f,0x000a6f44,0x0000ecd3,0x000178ba,
-0x00316723,0x0040de17,0x00457636,0x0029eea4,0x0003d30f,0x000597f6,0xffebb6ef,0xffe053ec,0xffdaf12d,0xffd40139,0xffb2432a,0xff95eda9,0xff80ed05,0xff7d2715,0xffbad068,0xffbf4e8b,0xffd04233,0xffd27162,0x001681d2,0x00236f78,0x001eaac1,0x002f79f7,0x002e7b2a,0x002942ac,0x003c888c,
-0x005c1cd4,0x008c3257,0x009f8c1f,0x00897767,0x003d0507,0x00363ae4,0x0032fd80,0x005ff332,0x00170085,0x0004b721,0x000d3a9e,0x005663df,0x00749b0e,0x006fcf50,0x002f5883,0x0091778c,0x005ad852,0x00597fb8,0x004d9e54,0x0032200e,0x0065495e,0x0086ae4b,0x0093458a,0x004900be,0x000d83be,
-0x00029c31,0xfff2a37f,0xfff60831,0x003248ef,0xffd9f36b,0xffb22ef4,0xff8a7593,0xff89c1f8,0xff83b439,0xff78a276,0xff7a7275,0xff765901,0xff5168e7,0xff7c1695,0xffac32f4,0xffd53f26,0x00640903,0x0073ace2,0x000d3b12,0x000a0e87,0xffeca024,0xffc0fbcf,0xfff4c139,0x00066cf5,0xffefcfa0,
-0x006ca65c,0xffb88357,0xffe1fe2f,0x00369245,0x004f052f,0x003c8297,0xff7a16c2,0xff39285d,0xff8acce7,0xffd29e85,0xfffc777e,0xfffc21ca,0x0002c7e9,0xffe963b2,0xffd392be,0x00024cdd,0x0021d08c,0x002077dc,0x0021ec01,0x0034d777,0x006379de,0x0056492d,0x0063755e,0x006909c8,0x00876779,
-0x004d496a,0xffce40be,0xff75c074,0xff55cdef,0xff8aef99,0x0024b66c,0x005a96b9,0x002e0d0f,0xffc4970d,0xff7616de,0xff6c9b52,0xff97462b,0xff7653ff,0xff69f9c2,0xff108c9f,0xff333596,0xffc8d829,0xffe29609,0xffe24085,0xffdafe57,0xfffe3e44,0x00051c99,0xfffe74d1,0x00018b73,0x0007007c,
-0xfff6e852,0xffe14d83,0xffcc88d4,0xffd0a298,0xffe469f8,0xffeb2796,0xffd0f26a,0xffd7c3e5,0xffcbdd77,0xffa69c25,0xffa63140,0xffb1f288,0xffbbbc00,0x00150109,0x00504a5d,0x008606c8,0xff78495f,0xff40c075,0xffe67f72,0x002c2b11,0x00810b0a,0x00d7ab71,0xffd4910f,0x0041b063,0xffe6d98a,
-0x0017ebec,0x0043dbd7,0x0055d051,0x0005f906,0xffff3080,0x001da8a5,0x000ae4e4,0xffff2a77,0x00029e13,0x0001fe25,0xfff8837c,0xffeefa9a,0x00015247,0x001ac03b,0x003357c3,0x002e834d,0x002b2893,0x00271cae,0x00369d08,0x003b44ac,0x003cea47,0x003af888,0x001e83aa,0xffeeb486,0xffeff0db,
-0xffe0141d,0xfff5eba3,0xffeba197,0x0003675f,0x00104c51,0x006c516d,0x008d4a97,0x0079ee1a,0x006214f1,0x0047f6ea,0x002f0884,0x000f4512,0xffee16a7,0xfff2aef9,0x00008ec5,0x00029947,0xfff198a4,0xfff9a5bc,0xfffa3f50,0xfffaceee,0xfff445d2,0xfff4a75e,0xfff9588d,0x0006cbf4,0x000222f3,
-0xfff58f00,0xffd970e3,0xffc70f4e,0xffc6b95d,0xffcd251b,0xffd4c858,0xffe28975,0xffffe274,0x0019604c,0x002b8cec,0x002e16fb,0x00298b46,0x0022134e,0xfffdff4a,0xffe1f3a6,0xffcf4a6d,0xffc5954b,0xffce04c1,0xffeac50c,0x002f7746,0xffa07335,0xffa1d732,0xffb885bc,0xffd04f96,0xffe33d7a,
-0xffebd19a,0xfff3f8ab,0xfff639ae,0xfff92761,0xfff6edeb,0xfff604e4,0x00030eba,0x00109565,0x001c4f24,0x000fb095,0x0000107f,0xffe7b91d,0xffd55644,0xffce3fe2,0xffd2eb78,0xffe3c1e4,0xfffa079b,0x000dff8a,0x002fe261,0x004a87df,0x005c7bd2,0x0078a3c1,0x00868f43,0x008c194c,0x00782de4,
-0x005cb75d,0x003908cc,0x001e64ca,0x0002d753,0xffdbb358,0xffb7ca15,0x0050c848,0x005460df,0x0054eb80,0x004ef367,0x00511b83,0x004e2204,0x0046a424,0x0042b7eb,0x0045a222,0x004adc8a,0x004f03c9,0x00448b4c,0x003446e5,0x002c5259,0x00123262,0xffff7db8,0xffe7644e,0xffeb955c,0xffec35cb,
-0xffeb73e5,0xffe8eeb3,0xffe41b7a,0xffdefece,0xffe33dd3,0xffe760ae,0xffe96393,0xffff72b0,0x0013a787,0x002b4d83,0x003359ac,0x003daa22,0x00468a1c,0x0043d48c,0x004321f8,0x004827f0,0x004dc05d,0x0013bf44,0x0017f059,0x000b696d,0x0011639b,0x000b3794,0x0008cdb3,0x000992e6,0x00071b6d,
-0xfffef059,0xfff28de8,0xffe744b9,0xffe09aea,0xffda630f,0xffd2dde7,0xffd3c124,0xffd7346c,0xffd7d0c4,0xffd6cee6,0xffd2e809,0xffd41015,0xffd72799,0xffda8207,0xffdd5353,0xffde43b1,0xffdf230e,0xffde8d4e,0xffe2f112,0xffe5e501,0xffea651d,0xffedc803,0xfff2c95d,0xfffa46a5,0x000031d4,
-0x00077042,0x000cea7b,0x001007f8,0xfff5c382,0xfffb43b6,0xfff4a937,0xfff30542,0xffefe524,0xfff75810,0xfff43668,0xfff209c1,0xffebf3a9,0xffe8fc5f,0xffe57eec,0xffe1511d,0xffdd5187,0xffd85641,0xffde16b1,0xffdec1c8,0xffda0d21,0xffdc075e,0xffdc8946,0xffdcd7c9,0xffdc6108,0xffdbf7b9,
-0xffdbb746,0xffdb90da,0xffdbb0ec,0xffdb22b1,0xffde10ff,0xffe083c5,0xffe2e03f,0xffe6b891,0xffe9f430,0xffecab0f,0xffee0638,0xffef2888,0xfff0afb8,0xfff36111,0xffdb5109,0x0007f904,0x000a5aa5,0x000acc8b,0x0008b384,0x00077eea,0x00048f5c,0x0005db0b,0x0003e360,0xfffa3f9d,0xfffcc361,
-0xfffa5c83,0xfff6d3bb,0xfffc26c7,0xfffed3c1,0xfffc4cf8,0x0003f101,0x00054048,0x0006fa44,0x0006ea79,0x000708ce,0x00067674,0x00082712,0x000a5b45,0x000e8705,0x0010605f,0x000fe4db,0x0009ca72,0x000c4b78,0x000c8c08,0x00120fe7,0x00072aa8,0x00050496,0x0003596d,0x000cc090,0x000f7b39,
-0x00119a15,0x000c1145,0x00081897,0x000903c7,0x00025d29,0xfffbf3af,0xfff088db,0xfffad86e,0xfff59f6d,0xffdebe7d,0xffecbe80,0xfff03e11,0xffea73c3,0xfff6e96b,0xfff72203,0xffebc3b6,0x00020ae5,0x0008c7be,0x00080af1,0x000e9018,0x0010c5f1,0x00125a20,0x0017b8c6,0x001fff3a,0x0029efaa,
-0x00301392,0x0029e9b9,0x001255f5,0x0013a8bd,0x0013c06c,0x00245391,0x000aa8bf,0x000491dc,0x000224fe,0x001b5f63,0x0024799a,0x00228c9b,0x0011e16c,0x0014b981,0x001961eb,0x0007327b,0x0000571a,0xffef9b46,0xfffd50d2,0xfff31fd9,0xffbbbe19,0xffc4e212,0xffb3cef2,0xffaa2f6b,0xffc4c4c1,
-0xffd9d4b6,0xffc69d64,0xfffde2c2,0xfffcf3b0,0xfff7cc1f,0x00069f8d,0x00076259,0x000a4141,0x0011d940,0x001e9264,0x00342d97,0x004189d9,0x003cf689,0x001a6f92,0x00276e1a,0x00266e0f,0x00442429,0x000529b7,0xfffbdcad,0xfffced40,0x002fb887,0x003dd45b,0x003b96e9,0x0024118c,0xfffa36cc,
-0x0003586e,0xffe8078d,0xffda9e93,0xffc52037,0xffdafe92,0xffbdcbae,0xff8a1540,0xff8fd554,0xff8e43b3,0xffc0a082,0xffc65cb3,0xffd0e80f,0xffc60b55,0x000a1c0b,0x0012967f,0x000d5353,0x002b25e4,0x0031dabf,0x0036d5dc,0x0046d9d7,0x0060d7fc,0x00844d9b,0x009417cc,0x0078cfa1,0x002dea88,
-0x002959d6,0x00317e48,0x0069ca43,0x001494a7,0xfffc30e8,0x00036114,0x004fc694,0x006c22bc,0x005bc137,0x00212463,0x00a7c7cd,0x0073e5e4,0x0071b2ac,0x00640c33,0x00455c54,0x006ccde8,0x00835d74,0x0084b745,0x004d0ae9,0x00180105,0x000eec55,0x00005f55,0xfffe5b40,0x002727d6,0xffed3b55,
-0xffc6c931,0xff84c506,0xff7ded9b,0xff6fbb07,0xff65edc5,0xff68189f,0xff654dc2,0xff4a850a,0xff7ef4fa,0xffb755e3,0xfff39a0e,0x005490cd,0x004f28cc,0xfff33cf3,0xfff2d149,0xffe97240,0xffdb485d,0x00009a01,0x0012839c,0x00050b08,0x007fb61e,0xffb9332b,0xffd5c0b5,0x000d576e,0x002fde67,
-0x0044126c,0xff914d75,0xff536293,0xff9960a8,0xffd57066,0xfff8521c,0xfff80980,0x0001c8e0,0xfff021ba,0xffd89f56,0x0000e664,0x001cc2ab,0x001e63c6,0x0019b2a7,0x002d269a,0x005ccf69,0x00613744,0x0070a372,0x006bc840,0x0074931b,0x002f3d8d,0xffbaa88f,0xff67ae9c,0xff5bcf60,0xffaec788,
-0x00394045,0x0059f29b,0x0026f003,0xffb19ff7,0xff693a44,0xff7de895,0xff9e6936,0xff6d8404,0xffab9cb9,0xff5840bc,0xff62349e,0xff997e20,0xfff56d1e,0xfffcbb99,0xffd68932,0x00076b3c,0x00075e71,0x0001bcef,0x0000ac70,0x0008257b,0xffff94e4,0xffe6a257,0xffd023ae,0xffcfead2,0xffdee54b,
-0xffe04aed,0xffc4637b,0xffcddca6,0xffc55fb8,0xffa8c999,0xffaeab84,0xffbdda0f,0xffc51fd3,0x00350fa1,0x005d52cf,0x005bf768,0xff6dc712,0xff523c19,0x000ae62e,0x003b6998,0x0084ec1a,0x00ece9ba,0xffc67336,0x006b6134,0x0028cdde,0xffdbf5b6,0xffea519d,0x0019c6b1,0xfff1d06a,0xfff30519,
-0x000c33f8,0x00059ede,0xfffaf982,0xffff549d,0x000118ae,0xfffb6c51,0xfff25857,0x0000dd03,0x00172330,0x00325e0b,0x003072ac,0x003110a6,0x00305b4f,0x003d7b09,0x003b915a,0x0031d491,0x002ef601,0x0017f269,0xffedd59c,0xffe97983,0xffdc8305,0xfff95d46,0xffea7669,0x000d2d41,0x00355179,
-0x008d1bc5,0x00965c51,0x0050ae2a,0x006a7c08,0x004363b8,0x00319196,0x00258e4a,0x000b5d2a,0x000b7f44,0x0005b1c5,0x00000be1,0xffeedb54,0xfffd8450,0x0000c632,0x00026423,0xfffbfc3d,0xfff90ced,0xfffc74d6,0x0008e6f6,0x00093eac,0x000704e1,0xffebcb52,0xffd83826,0xffd30ab4,0xffd9dc69,
-0xffe0a80e,0xffec5461,0x0000640c,0x00126402,0x00222caa,0x001cae4a,0x0012bf2c,0x0007c1a3,0xffe4266d,0xffcc24d2,0xffbbfddd,0xffb92cc2,0xffcf5e4b,0xfff2ad0a,0x00367966,0xffa9e57f,0xff9feea0,0xffb15cdd,0xffc5d5fc,0xffd846ea,0xffe49241,0xffef5ed6,0xfff24d05,0xfff63c28,0xfff326fd,
-0xfff14611,0xfff83cb8,0x0005f2ee,0x0016dc0f,0x001263c8,0x0005d487,0xffee3d8b,0xffd81175,0xffce30b3,0xffd171ff,0xffdf714a,0xfff3f35d,0x000b0046,0x002d0a7e,0x00476946,0x0058fdb3,0x006f9ca1,0x0079a605,0x007ae34b,0x00632d46,0x0040bfa4,0x0013b899,0xfff92c72,0xffe2ba01,0xffca1723,
-0xffb649fd,0x0034d2ab,0x003b6fb6,0x00403cdc,0x003a2ead,0x003c6c04,0x00389b65,0x00303215,0x0029f34b,0x0033d9cf,0x003e3a69,0x00494bf1,0x0043bffe,0x003aff7d,0x00375b3a,0x001af2da,0x00072e4f,0xfff0d8e2,0xfff2fd13,0xfff2255e,0xffee80ff,0xffecc676,0xffe8b616,0xffe3994e,0xffe6a889,
-0xffe9e407,0xffeb702a,0x000012b3,0x00128782,0x002830b4,0x002fd54d,0x003a433b,0x004332b5,0x003e1fd8,0x003922a0,0x0035e6ba,0x00362f4b,0x0027d2c7,0x002c4ff2,0x0021ef33,0x0022f5b7,0x001d4b43,0x0019c765,0x001a73e0,0x0017e3fc,0x00104576,0x0003e972,0xfff8c336,0xfff169fe,0xffea7ef0,
-0xffe3c8eb,0xffe1bb7a,0xffe3627e,0xffe1838b,0xffddfed8,0xffd7cd46,0xffd77d55,0xffda5fe3,0xffdd1924,0xffdfd12d,0xffe097f8,0xffe154c2,0xffe05480,0xffe772fd,0xffeccdcc,0xfff36657,0xfff8ad3c,0xffff0c1d,0x0008410a,0x000d7dca,0x001558f3,0x001c7659,0x00229287,0xfffc6165,0x0001b010,
-0xfffc4ee4,0xfffb65fa,0xfff873b8,0xfffea945,0xfffb5454,0xfff8737c,0xfff2bf2a,0xfff008bf,0xffecbfae,0xffe94397,0xffe58f03,0xffe12b8d,0xffe64804,0xffe63563,0xffdf3350,0xffe10707,0xffe0c6ca,0xffe0aaa8,0xffe00650,0xffdf6a2c,0xffdef00a,0xffdea297,0xffdeb981,0xffddce54,0xffe1850e,
-0xffe468dd,0xffe75fbb,0xffebc64b,0xffef92d7,0xfff30792,0xfff4cebe,0xfff6692c,0xfff7fa48,0xfffa0d9c,0xffe03ffd,0x00066722,0x0008c3ae,0x000a041e,0x00075649,0x0006024e,0x00020282,0x000571ab,0x00032837,0xfff6fc16,0xfffc5446,0xfffa0f5d,0xfff4580c,0xfffac556,0xfffd64d0,0xfffa8f12,
-0x00017b12,0x0002e314,0x00050397,0x000528ef,0x0005ada6,0x00062f23,0x00076174,0x00094f79,0x000ce548,0x000e6810,0x000dd165,0x00080747,0x000a549e,0x000aac54,0x00118211,0x000555a2,0x00032529,0x00018fcd,0x000b5b7f,0x000defaf,0x000ea6a6,0x000a245b,0x0005403c,0x00081364,0xfffffc7c,
-0xfff9dfba,0xffed1d55,0xfffbe82a,0xfff85fe9,0xffddbfb4,0xfff279c0,0xfff64911,0xffeac751,0xfff9e73b,0xfff86f87,0xffeb61bd,0xfffd149f,0x00029ea3,0x000540c9,0x000b1d6b,0x000f44f9,0x0013df2a,0x00185949,0x001f5895,0x0026ca24,0x002ad372,0x00239ec0,0x000d8043,0x000dfb30,0x00103906,
-0x002565ff,0x00084e2b,0x00016ce3,0xffff7434,0x00192701,0x002161da,0x001c0df5,0x000dd060,0x0011ef31,0x001af348,0x00060669,0xffff4bd1,0xffea3a2d,0x0000f96e,0xfff73971,0xffb39555,0xffcb0e80,0xffbb6d08,0xffa206dc,0xffc7a05f,0xffd9251c,0xffc4df99,0xfff6337f,0xfff4e1b2,0xfff54bdf,
-0x000197e6,0x00065876,0x000eb09d,0x0013a41b,0x001f1592,0x0030a74b,0x003bc6eb,0x00366bb0,0x0015943c,0x0020987d,0x00208ccb,0x00456798,0x0000e5e0,0xfff83abf,0xfff9ddb4,0x002d969a,0x003a4965,0x00318faa,0x001f378f,0xfff47c9a,0x00020150,0xffe4fed5,0xffd68f05,0xffb6e80e,0xffe20aa5,
-0xffca7585,0xff88513e,0xffa51e21,0xffa57d43,0xffcab88e,0xffd2a94f,0xffd74078,0xffc13ddf,0xfffcbd06,0x0000b8f4,0xffffb2f8,0x0023616a,0x002ffd98,0x003fe192,0x004c501f,0x00625802,0x007c1a27,0x0085f601,0x0065b8d3,0x001e13c9,0x0017cba0,0x002b0215,0x006fb2c9,0x0011cc7c,0xfff5319b,
-0xfffd008c,0x004a4a1d,0x0062b5b9,0x0046dd79,0x0014eb42,0x00b44246,0x00861696,0x007e66a9,0x0070f627,0x00566971,0x00709612,0x00787046,0x006be941,0x0047be7c,0x001c0bdd,0x0014ecbf,0x0009c4c7,0x000647c1,0x001b0952,0x00017876,0xffdfdd08,0xff86ae13,0xff7c3c51,0xff68fe58,0xff60fa29,
-0xff5f5a9c,0xff5d175a,0xff4f5d93,0xff88a7b8,0xffca0a8f,0x001c5f11,0x004e098d,0x0034441c,0xffe0fc81,0xffe39a0f,0xffea165e,0xfff562bb,0x00063cb6,0x001b62bc,0x00225f3e,0x008f1a02,0xffbebdd4,0xffd16840,0xffed8e02,0x0014ae5e,0x0044f3eb,0xffa94d66,0xff7390f2,0xffaca2de,0xffdea396,
-0xfff61598,0xfff5367c,0xfffdc181,0xfff772be,0xffdfd85a,0xfffda023,0x0015b731,0x0019c360,0x0010b405,0x0022f01f,0x00520baf,0x0064e73a,0x0075ca44,0x006a30d1,0x005ad36f,0x00102ac9,0xfface34b,0xff5e9cdd,0xff66ef44,0xffd31b1e,0x00482d92,0x0056661a,0x0025c978,0xffa7c358,0xff652d47,
-0xff8cea9d,0xffa5d694,0xff7bedcf,0xffe8114c,0xff8d914c,0xff874cfa,0xff794038,0x000495c1,0x000f30d0,0xffdeea0e,0x00117566,0x000532c9,0x00059494,0x0000eb62,0x0006826f,0x00060eb9,0xffee40e4,0xffd826b1,0xffd20c93,0xffdecff9,0xffdce27d,0xffc237a9,0xffc9ee01,0xffc2b0eb,0xffb0f984,
-0xffba3dfa,0xffcd6bc1,0xffd791bd,0x005654ed,0x0068bdf4,0x002fefac,0xff6a0afc,0xff67bf3f,0x002c4705,0x004bc333,0x008ab556,0x00f89f18,0xffce0956,0x007febaa,0x007f0925,0xffaff59e,0xff92c50e,0xffd00c5d,0xffe3fec0,0xfff17253,0xfffe591a,0x0000a548,0xfff905c3,0xfffd100f,0xfffe4fdb,
-0xfffdaff9,0xfff6f206,0xffffffce,0x0011c40c,0x002fc53a,0x0031b976,0x003500b2,0x003809b7,0x0040c886,0x00387f89,0x002625e4,0x001f3f10,0x000f6818,0xfff012e3,0xffe5a994,0xffdb0cef,0xfff977ba,0xffee0d76,0x001e0135,0x0065a0de,0x0098d26b,0x007d8e06,0x0012e2de,0x00544bf0,0x00404044,
-0x003735a3,0x003f2e4a,0x00308432,0x0025e781,0x0009f8ce,0xfffcd320,0xfff0b1c9,0x0001b324,0x0004e560,0x00062728,0x000284d1,0xfffe44e5,0xfffec7d5,0x000a6b6d,0x000f7bd4,0x00165df3,0xffff4532,0xffeba3d7,0xffe2f632,0xffe8118b,0xffeddb33,0xfff8fe4f,0x0003edd8,0x000e3022,0x00197334,
-0x000d2bd0,0xffffb5df,0xfff1da94,0xffcfd1a6,0xffba8dde,0xffade363,0xffb4ae95,0xffda0704,0x00012ebb,0x003eb996,0xffbe850a,0xffabad1b,0xffb2f095,0xffc040f9,0xffd0f8b2,0xffde9d4c,0xffeaecd9,0xffee16e8,0xfff42791,0xfff1f0a6,0xffefe833,0xfff16c4c,0xfffc83f6,0x000e91c4,0x0011d326,
-0x00093ab4,0xfff45eaa,0xffdc7aac,0xffd0e313,0xffd352ae,0xffdd020c,0xffed5b65,0x000457ac,0x002657b4,0x0040200b,0x00505025,0x0060b3ba,0x0065995a,0x00618030,0x004b4a0a,0x0027c3cf,0xfff686f7,0xffdcc5fb,0xffcac5c1,0xffc14fd5,0xffbe5860,0x00141741,0x001c6338,0x00255ad3,0x00223825,
-0x002557e2,0x00220e65,0x001a7637,0x00135ee9,0x0021efc5,0x002f9161,0x003ec005,0x003dd00a,0x003c4d81,0x003d589d,0x00219840,0x000e7d85,0xfffbb564,0xfffab97d,0xfff7296e,0xffeff98a,0xfff0ae98,0xffee943e,0xffeabc37,0xffeda514,0xfff0ec8a,0xfff3697c,0x00056c12,0x00157fad,0x0027fb95,
-0x002c85ea,0x0033ccf6,0x003a5571,0x0031b2b6,0x0027c3fa,0x001bc301,0x001897aa,0x00354c05,0x00398f64,0x003194c5,0x002f12a7,0x002a57bb,0x00268a57,0x00278412,0x002603e8,0x001f7757,0x0014cf30,0x000b0a4d,0x0004518a,0xfffd69d3,0xfff803bb,0xfff26502,0xfff1dd62,0xffed8211,0xffe78f34,
-0xffde8f22,0xffddbd4a,0xffe079e0,0xffe24098,0xffe4bd6f,0xffe54efa,0xffe5d9a1,0xffe4978f,0xffed52bf,0xfff40952,0xfffbeb2c,0x0002ae2e,0x000a4518,0x00146f09,0x00189cb3,0x00202af2,0x002774d1,0x002f499c,0x0002ad26,0x00073b1f,0x0002c5b0,0x00023c01,0xffff599d,0x00054629,0x00016a9a,
-0xfffdeeb1,0xfff93bcc,0xfff6f36c,0xfff42865,0xfff185e9,0xffee7cd4,0xffeb496e,0xffefd789,0xffefbfc6,0xffe549ea,0xffe7a356,0xffe71a8f,0xffe7856d,0xffe69691,0xffe607e1,0xffe57e69,0xffe52a1d,0xffe54c10,0xffe435d5,0xffe84545,0xffeb4d89,0xffee6b2c,0xfff2d271,0xfff693f5,0xfffa44ba,
-0xfffc1b5e,0xfffdf87c,0xffffa042,0x0000da96,0xffe88223,0x0003b50e,0x00062f56,0x0007c390,0x0005447e,0x00046bc0,0x0000c7b1,0x0003ee37,0x00023760,0xfff573b1,0xfffcc24c,0xfffab281,0xfff34e7b,0xfffa67ca,0xfffcefff,0xfffa534f,0xfffef006,0xffffc2e4,0x000463cc,0x00035ecf,0x0003a6a4,
-0x0004508c,0x000568a9,0x000714f1,0x000a7984,0x000b37fd,0x000a8713,0x00058127,0x000711c5,0x00076711,0x000f7eab,0x0002584f,0x00002909,0xfffebfbf,0x0008a5b6,0x000b21ed,0x000aa1e8,0x000737c3,0x0001d465,0x0006171f,0xfffe154f,0xfff771eb,0xffeb94f9,0xfffc80ef,0xfffa62dd,0xffde316a,
-0xfff6a5b2,0xfffa4247,0xffeab5aa,0xfffb1100,0xfff84b79,0xffebbb8e,0xfff82434,0xfffc6c4c,0x0003152f,0x0006b793,0x000cddd5,0x00128f34,0x00166476,0x001c7575,0x00227e8a,0x00236114,0x001b3829,0x00079aa4,0x000639f3,0x000a4bcc,0x0023b769,0x00042891,0xfffceed4,0xfffbe5a9,0x001556cf,
-0x001c6fdb,0x001440b4,0x0008dcbe,0x000e3570,0x001a4e83,0x00040094,0xfffd5559,0xffe78343,0x00034864,0xfff9d9df,0xffafe2e9,0xffd1af9f,0xffc3dde5,0xff9e1559,0xffcaac12,0xffd94062,0xffc708d2,0xffed9c78,0xffec51c6,0xfff5ccba,0xfffc3bcd,0x00042078,0x001041cf,0x0012daf5,0x001db7fa,
-0x002d0f2b,0x0033d979,0x002dbb36,0x001036f5,0x001778f3,0x0017bd2d,0x00433e79,0xfffae19e,0xfff3156d,0xfff5c700,0x0028f67f,0x00349f5c,0x0026bba3,0x0019c980,0xffefe962,0x00005db0,0xffe358aa,0xffd3b056,0xffaf69a8,0xffe86ae3,0xffd71fc2,0xff9190bc,0xffbce000,0xffbef45c,0xffd9ca29,
-0xffe2af4f,0xffe0bf92,0xffc48c4b,0xfff0a3fc,0xffef7e35,0xfff65923,0x0018f149,0x0029ca3a,0x00425ecd,0x004ba7c6,0x005f4106,0x007260e2,0x00734c77,0x004e7a15,0x000be730,0x0001ed41,0x001ec4f2,0x006ec38d,0x000b920a,0xffec818c,0xfff7056b,0x00437266,0x0056aa77,0x0030d304,0x0008f84c,
-0x00b607b0,0x008e572f,0x007fe75a,0x0073b494,0x0063c91b,0x006f7c80,0x006730f9,0x004cd64c,0x003b457c,0x0018958b,0x0013fc16,0x000ae7d4,0x000bf7d1,0x000fc7f4,0x0011da87,0xfffa0c68,0xff905630,0xff826fbf,0xff6d2160,0xff65eb03,0xff5e0051,0xff5bfbf4,0xff5d1ba5,0xff9704ee,0xffe1be51,
-0x0048550c,0x005166b3,0x00243751,0xffd2c168,0xffd7bb3f,0xffe893ea,0x0006a704,0x0001cddf,0x001dad4d,0x004294f9,0x00995f97,0xffc46395,0xffd3ac52,0xffd9224e,0xfffe3986,0x003f2141,0xffbeba28,0xff951cc0,0xffc42a12,0xffec10ef,0xfff41675,0xfff6c206,0xfff9de0a,0xfffbbe66,0xffe936e8,
-0xfff94323,0x000d90ad,0x0014a20d,0x0006f6e7,0x0016e5c2,0x0042742b,0x005eecf6,0x0070f18a,0x0061fe43,0x003c9971,0xfff09ffe,0xff9e4442,0xff56c6ef,0xff73afa4,0xfff4a4d0,0x004d1439,0x004af5ed,0x0022ae9e,0xff9d4652,0xff618907,0xff958cea,0xffaa0c57,0xff97ec95,0x0021bf13,0xffb9da35,
-0xffa425ec,0xff71d673,0x000d0428,0x00168b18,0xfff0864e,0x00134cf4,0x0002c46d,0x0006e33a,0x0002ad11,0x0003d8a7,0x0008879c,0xfff73aef,0xffe2b11c,0xffd7b68b,0xffe3c561,0xffe16bd8,0xffc92d50,0xffca782a,0xffc1e22d,0xffb9dfed,0xffc389e1,0xffdbd523,0xffefd048,0x007026a9,0x006bd16d,
-0x0003c0ed,0xff6b00c8,0xff7f00d2,0x00485788,0x005b04d7,0x008e8dff,0x00ef3c0d,0xffdeac84,0x006c2f10,0x00c3449d,0xff96d8ae,0xff47de63,0xff872160,0xffdae632,0xfff4c932,0xfff77e5a,0xfffe28b2,0xfff968ea,0xfffc8bb1,0xfffc7306,0xfffd9361,0xfffb15f6,0xfffe7cea,0x000adcab,0x002a5061,
-0x00317796,0x00375807,0x003c98a2,0x003ee2dd,0x00310020,0x0018902d,0x000b84dc,0x0000ea7c,0xffeded50,0xffdfcdf1,0xffd7f886,0xfff21e3d,0xfff4b67f,0x0030c5e4,0x0095061e,0x008611a0,0x0041d878,0xffc8d356,0x001dcd01,0x003ba5db,0x00410424,0x005d9de0,0x005a3d44,0x003d6aa0,0x000e1d5c,
-0xfffa1ae2,0xfff5cbbc,0x0004d281,0x0005c343,0x00068fd8,0x000584c3,0x0002ca33,0x0000c6b5,0x000ad5fd,0x00142518,0x00223c5f,0x00129045,0x0000f68a,0xfff4d976,0xfff5f1eb,0xfff9f3d9,0x00044b7c,0x00080628,0x000ad6a8,0x001030cd,0xfffc7064,0xffec7c73,0xffde3cb2,0xffbef100,0xffab9f8f,
-0xffa3b4d0,0xffb535c3,0xffe67398,0x000d48fe,0x003f86c0,0xffd48e34,0xffbd2ca9,0xffbb7b28,0xffbf0735,0xffccd148,0xffda26c5,0xffe70413,0xffea996e,0xfff330e4,0xfff2e956,0xfff0826c,0xffeeff01,0xfff5bb4c,0x00051517,0x000e6d78,0x000a7536,0xfff980f1,0xffe19fb6,0xffd5a436,0xffd6f3f1,
-0xffdb96d7,0xffe6cf01,0xfffaa2eb,0x001acfa1,0x0032b090,0x0040c7dc,0x004b9a54,0x004c6c36,0x0044579c,0x003393cc,0x0013e0f8,0xffe2fdef,0xffcb0794,0xffbc55b4,0xffbfb63c,0xffca4c70,0xfff3bdc7,0xfffce373,0x0009cf35,0x000afdef,0x00104f40,0x000e0e60,0x000889a5,0x000201f5,0x001300af,
-0x0020f876,0x00320fce,0x003351da,0x00387f42,0x003ccf23,0x0025c097,0x001443c7,0x00065836,0x00021b12,0xfffba0c6,0xfff0e57a,0xfff48ded,0xfff55d2b,0xfff3d866,0xfff77675,0xfffb8f43,0xffffdd7c,0x000dd469,0x001a46b1,0x00281011,0x002795b5,0x00294ff9,0x002baf2d,0x001f8562,0x001154a3,
-0xfffdd50b,0xfff9bd51,0x003acd54,0x003e5e28,0x003a7da5,0x00343d1a,0x00310d56,0x002d61de,0x002e2c1f,0x002dfac1,0x0028eb32,0x002175d2,0x001af265,0x0015a98e,0x000fd714,0x000c47d7,0x0003a3c0,0x0000f20e,0xfffa8988,0xfff2b293,0xffe82a10,0xffe64545,0xffe8d9da,0xffe9960a,0xffeb98af,
-0xffebf65f,0xffec42ae,0xffeb00d5,0xfff41e1d,0xfffb4194,0x00039260,0x000b4968,0x0013ad4f,0x001dc131,0x00208cb9,0x0026ede4,0x002d065d,0x00351a55,0x000805a5,0x000b0cf0,0x000841c4,0x00087350,0x000648fc,0x000a4db5,0x0006ef8d,0x0003cfae,0x0000b1f9,0xffff0c11,0xfffcc549,0xfffb5c59,
-0xfff9525d,0xfff7cf92,0xfffae25b,0xfffa5c19,0xffeeb67c,0xfff0efd6,0xffefde3a,0xfff03f1c,0xffef5440,0xffeef139,0xffee7fc1,0xffee3918,0xffee670b,0xffed4633,0xfff14195,0xfff41f17,0xfff6f572,0xfffad097,0xfffdff49,0x00017df9,0x00030bae,0x0004e76e,0x00069c4c,0x0006e611,0xfff27758,
-0x0004840b,0x000701d4,0x0009a6b9,0x0004311d,0x0001ea7e,0xfffd4428,0x00041290,0x00009a2e,0xfff2870b,0xfffaa4c5,0xfff8e2e2,0xfff147d2,0xfff7d461,0xfff9f7b6,0xfff83692,0xfffbd30a,0xfffe1c4f,0x00015066,0x0000fa45,0x00025b15,0x0005d359,0x00062e69,0x0007e1cf,0x000b6150,0x000b096b,
-0x000a49d5,0x00066334,0x0007157b,0x00077761,0x00109eca,0x000312ac,0x00011377,0x00002306,0x0009b907,0x000c0c96,0x000a55dd,0x00080f7f,0x00035d8e,0x0007f6dd,0xfffb5f43,0xfff88f1e,0xffec7c3c,0xfffdbee4,0xfffdbcf0,0xffe1871f,0xfffc1752,0xfffead01,0xffeb28f0,0xfffbfa12,0xfff8e620,
-0xffeefe81,0xfff493bd,0xfff82dc5,0x0003052a,0x0003f1eb,0x0008e742,0x001240f6,0x0016485d,0x001b9736,0x00214611,0x001e3810,0x00158238,0x0005831c,0x000282f9,0x00084bae,0x0024ef1b,0x000496b7,0xfffdd01a,0xfffe7a7d,0x0016dc64,0x001c69e4,0x00115048,0x0008e045,0x00105a8c,0x001c20a5,
-0x0003303c,0xfffcfe96,0xffe716d1,0x00053827,0xfffc0032,0xffb2c860,0xffd84ebc,0xffcdd14a,0xffa0e259,0xffd02142,0xffd94ced,0xffcdbdca,0xffe529e1,0xffe4dbf2,0xfff935d5,0xfff83856,0x0001dd8a,0x0010de20,0x0013b5fc,0x001e12b0,0x002d2ae8,0x002dd020,0x00274c25,0x000f063d,0x0012c555,
-0x00136fe5,0x0043f9f8,0xfffafb05,0xfff51639,0xfffa53cc,0x002b04ce,0x00354aef,0x0022946a,0x001a6e53,0xfff3e501,0x0001d1ec,0xffe41238,0xffd49f91,0xffaf991e,0xffee5991,0xffe355d1,0xffa42bc2,0xffd3da28,0xffd7a8b6,0xffea84cb,0xfff0d0f4,0xffebfa6f,0xffce5a6a,0xffe807e4,0xffe17b21,
-0xfff09df4,0x000e2b01,0x0020a66b,0x003f7d09,0x0048b10a,0x005ae9e2,0x006a815b,0x005fdb47,0x0037f875,0xfffdf503,0xfff1d3cd,0x0016ba1d,0x006e60c3,0x000b7be9,0xffed3f63,0xfffd4497,0x00466666,0x0052c46d,0x002343a5,0x00052c21,0x00b9084d,0x0091a9ec,0x007ad557,0x00714084,0x006a6852,
-0x00681398,0x00527768,0x002edc96,0x002b487e,0x000e4b23,0x000f9523,0x000768df,0x000ceb52,0x000786de,0x001be761,0x0010d067,0xffa2135d,0xff8f3d88,0xff795069,0xff73ea10,0xff6732a9,0xff65e940,0xff77ccc7,0xffaff707,0x0003409e,0x00783766,0x00633e5d,0x0025a04a,0xffd0d1a0,0xffd954c8,
-0xfff05f99,0x0019b5b2,0x0002ad4a,0x002624b3,0x0069cbf3,0x00a77d30,0xffd3ac7f,0xffde14b6,0xffce0bde,0xffef42ea,0x00350c5d,0xffd16dd8,0xffb46b77,0xffdeb149,0xfff4b36d,0xfff5eb7f,0xfff9cd54,0xfff9a156,0xfffd663c,0xfff2c3d0,0xfff5d77d,0x00056fd8,0x001039e8,0xfffe4fec,0x00097da2,
-0x0030b05f,0x00555845,0x0068ddfe,0x005ba0f5,0x0026a8d0,0xffdcc57b,0xff97c32d,0xff594e35,0xff8a43f8,0x001c33de,0x00533cb6,0x00435652,0x002648d7,0xff9c778d,0xff69030b,0xffa527b6,0xffb53394,0xffcad629,0x0057c7cf,0xffdfa993,0xffbe7617,0xff807709,0x000e8828,0x0014bc61,0x000046b1,
-0x000bdd5b,0x0002a815,0x0005376a,0x00033ee8,0x00022a92,0x00071f57,0xffff0931,0xffef18ef,0xffe00e84,0xffee17e0,0xffec856d,0xffd9b8c5,0xffd4c5ab,0xffc89edb,0xffc9f1f1,0xffd317f9,0xfff3d85c,0x001a0024,0x008d6ec6,0x007240a5,0xffe5da17,0xff7ca61f,0xffa32a24,0x0068611e,0x00758694,
-0x009f3d85,0x00e4f2f6,0x0001a167,0x00456cb5,0x00df2b2f,0xff8dcb9c,0xff19c50f,0xff4cc603,0xffd77964,0xfff8b1f8,0xfff7543e,0xfffe49cc,0xfffaca3e,0xfffcbb4d,0xfffc34a9,0xfffd4bb5,0xfffd16b3,0xfffcfff1,0x0003e95b,0x00217187,0x0030fcbf,0x0037177f,0x004055b7,0x003dbaf6,0x002b6e4a,
-0x00110189,0xfffe8293,0xfff6d7a4,0xffefcca8,0xffe2cb41,0xffdfde34,0xfff125af,0x000d432b,0x00504670,0x00c11b9e,0x00663218,0xfffda27d,0xff8ec329,0xffe3c384,0x0045ccc2,0x005d9439,0x0081cc6e,0x0087117d,0x0050aca8,0x00137c78,0xfffa882f,0xfffb882e,0x000631f0,0x0004a30e,0x00060fb5,
-0x000613cb,0x0004c496,0x000204c5,0x000a8879,0x00166f10,0x002a210f,0x0025701c,0x00157b78,0x000a3e7a,0x0007fe97,0x0008a62a,0x00118e47,0x00117ab2,0x000fbb70,0x00113054,0xfff707b4,0xffe6049d,0xffd995f4,0xffbc1bee,0xffa956c9,0xffa6c54a,0xffc26a7e,0xfffa75a2,0x001fe5a9,0x0043ab66,
-0xffeff9b9,0xffd76098,0xffc80706,0xffc4536f,0xffcc6f77,0xffd85a2f,0xffe66f6c,0xffea891b,0xfff4f55a,0xfff55c5b,0xfff2e04e,0xffefa82e,0xfff31861,0xfffdacfc,0x000a4a9f,0x000ac052,0xffffb141,0xffe84a5c,0xffdbefb3,0xffddb79e,0xffdfe9e4,0xffe5cb57,0xfff50b20,0x0011dc19,0x00267c54,
-0x0031f6f7,0x0037faa5,0x0036704b,0x002d403d,0x0023fc0d,0x000c027e,0xffdff87e,0xffcb1f29,0xffbf42d0,0xffcc0c4a,0xffde81e2,0xffdf9d41,0xffe5db9b,0xfff35b0f,0xfffa0b5d,0x00007614,0xffff9680,0xfffbd73a,0xfff71aa4,0x00075123,0x00152548,0x002436d4,0x0027de79,0x002ef3b5,0x0035d5ee,
-0x0025c23d,0x0018af95,0x000f8d05,0x0009319e,0x000025f7,0xfff52545,0xfffd196a,0xffffec68,0x000182c9,0x0006b2f4,0x000cae9d,0x00139156,0x001d4ad5,0x0025b16c,0x002e5a6b,0x0027c71b,0x00229774,0x001f88e8,0x001185de,0x0000fff7,0xffe94a6a,0xffe51cf8,0x003c672e,0x003ed63b,0x0039f94c,
-0x00356c54,0x0032114e,0x002f1665,0x003125e6,0x0031a75d,0x003002ee,0x002bb2f6,0x0027fa68,0x00262cfe,0x00230c31,0x0021857c,0x001538af,0x0010f989,0x0009a4be,0x0000db2a,0xfff291d5,0xfff44bc8,0xfff6e1df,0xfff685db,0xfff806b0,0xfff81e12,0xfff81a46,0xfff6fa46,0xffffab34,0x00068d6a,
-0x000eaa97,0x0016b60d,0x001f6096,0x00284eab,0x00294491,0x002d6bef,0x00314493,0x0037ecad,0x0010c9e7,0x00130d82,0x000e30c5,0x000ce00b,0x000961b7,0x0010cd05,0x000aff3b,0x0005fafd,0x00048171,0x0003be75,0x0002ad08,0x0001f3ab,0x0000c6d2,0x000136b3,0x000541fc,0x000745a5,0xfff66ca9,
-0xfffaf8a4,0xfffb7b8b,0xffffce60,0xfffde6b8,0xfffdfa01,0xfffdbaee,0xfffd90d3,0xfffdd002,0xfffcc048,0x00004cba,0x0002b7a0,0x0004eddf,0x0007e47a,0x000a35a6,0x000d52c2,0x000e4177,0x000fd01e,0x0011563b,0x0010beb1,0x0002c9e6,0x00036563,0x0006342e,0x0007cdf1,0x00061658,0x00051855,
-0x000113b0,0x0004ec34,0x00040f7d,0xfff7d39d,0xffffd18e,0xfffe72df,0xfff7450a,0xfffd06a5,0xfffe309d,0xfffd76cb,0xfffe0174,0xfffe4f30,0x00057d78,0x0003cc90,0x0003fc0b,0x0003c426,0x00051b9a,0x00068ffd,0x000a3970,0x0008a95c,0x0007e283,0x00053154,0x00054262,0x0005b115,0x000f5453,
-0x0001d9c8,0x00000eb4,0xffff9e96,0x0008b040,0x000aeab7,0x0008666b,0x0007075b,0x0002ebfa,0x00080f7f,0xffffe709,0xfff9be59,0xfff0acb0,0x0000a6e3,0x0000a95e,0xffe62058,0xffff3139,0x00012099,0xffebce37,0xfff9a8c6,0xfff7e34c,0xfff37e34,0xfff2d9e4,0xfff5f4ba,0x000501b1,0x00023efb,
-0x0009a10d,0x000f1e8a,0x0012cbe1,0x0017b146,0x001d1667,0x0015e17e,0x000cf99a,0x00014cb5,0xfffe0694,0x0005361b,0x0022d6ea,0x0002b8f0,0xfffc7d6a,0xfffede66,0x0015b17e,0x0019dace,0x000ccbf9,0x00074e5c,0x000f98c4,0x001bffca,0x0005e5a0,0xfffe2f56,0xffea15f0,0x00076ddf,0xfffeed63,
-0xffbd0838,0xffe0d256,0xffd7d6d7,0xffb0292d,0xffd79dde,0xffdb1f05,0xffd7e711,0xffdfdb48,0xffdeb6c1,0xfffe849f,0xfff6d72e,0x0001c009,0x000e872f,0x0010bb86,0x001b37d7,0x002a4839,0x0023e8e1,0x001d3a1f,0x000b38fb,0x000d3f5a,0x000e4126,0x00401753,0xfff910b3,0xfff4cca0,0xfffccac3,
-0x0029c5cd,0x00330a3d,0x001d79c1,0x0019cbe8,0xfff58ddd,0x00040f64,0xffea7a14,0xffd821ed,0xffb6632d,0xfff50f5c,0xffee46e3,0xffbbda91,0xffe65cfe,0xffecef84,0xfff4ae7e,0xfff7e6c2,0xfff65c3e,0xffdbc80e,0xffe42074,0xffd8581e,0xffefd2ec,0x00046720,0x0018a624,0x00368582,0x003f4bf8,
-0x0050b07c,0x005db33a,0x00464ff2,0x001cd776,0xffeecd94,0xffe5428c,0x000fc4f7,0x00678f64,0x00086678,0xffec33ad,0x00019f20,0x0045a634,0x004ba715,0x00155755,0x00016226,0x00b2847e,0x008b6745,0x007599c1,0x006c21bc,0x0069eeda,0x005bebd3,0x003ac693,0x00197146,0x00199527,0x00052bb8,
-0x000abbbf,0x0003105f,0x000aa808,0x0002862f,0x001f17d6,0x0020315b,0xffbb65b5,0xff9fcc19,0xff8ba1dc,0xff862cab,0xff746ede,0xff75e854,0xff95a688,0xffcc067e,0x00243c84,0x009d7010,0x00704e4e,0x002583a6,0xffcfe4d2,0xffd9d9dd,0xfff352dc,0x00218fce,0xfffe6a6b,0x0029f255,0x008939b5,
-0x00b082e6,0xffdef2a3,0xffeec923,0xffd25807,0xffe8e69a,0x00286c34,0xffe12a3d,0xffd0ef02,0xfff40dd7,0xfff7819e,0xfffab985,0xfffc0672,0xfffc0b2e,0xfffd402a,0xfffa247a,0xfff4a8ae,0xfffde008,0x000e5abf,0xfff8660b,0xffff274d,0x001d99a8,0x0044d2bf,0x005aac13,0x00503d1d,0x001346e1,
-0xffcc5e87,0xff8f743a,0xff609035,0xffa488f5,0x00403832,0x005369c6,0x003635aa,0x00216382,0xff965a12,0xff6c9167,0xffae262e,0xffbd3ded,0xfff5297f,0x00845509,0x000dfe0e,0xffdbe86f,0xffa229cf,0x000a22eb,0x00110a56,0x00044eef,0x0005140d,0x0002d0c9,0x0002bce9,0x0002c954,0x0001accd,
-0x0004304a,0x0003fd8f,0xfffa84fe,0xffebbd22,0xfffb7471,0xfffd5ad6,0xffeef9e9,0xffde726f,0xffcf2fe4,0xffd631b4,0xffdb6a17,0x0003c5e7,0x003e7cf5,0x0098534f,0x00697c28,0xffc97a6d,0xff943282,0xffc924e6,0x007d5467,0x00860535,0x00a28e24,0x00be58e6,0x0017641a,0xfff33bd0,0x00bc40af,
-0xff968e89,0xff0c3423,0xff323138,0xffd6a491,0xfffbc91d,0xfffa7245,0xfffe2b13,0xfffcd57e,0xfffd8e77,0xfffcfb2f,0xfffd728b,0xfffdaaad,0xfffbfccd,0xfffeb75a,0x0017986b,0x002ef9c0,0x0038f11e,0x0040b86b,0x0036acbb,0x00225552,0x0006c24b,0xfff00e2b,0xffe6e29b,0xffe76962,0xffde24e7,
-0xffe27298,0xffea3fdf,0x00288d49,0x006b3f2f,0x00cff061,0x002f3129,0xffadf0ec,0xff56ed8c,0xff9a814b,0x0045b0ac,0x007d383b,0x00ae7882,0x00b1d03e,0x005be4f6,0x001bec18,0xfffcf3ea,0x0001369a,0x0004a55b,0x0003044d,0x00049e70,0x00052d53,0x00049cf5,0x00028032,0x0009845d,0x0017926d,
-0x002ec224,0x0037258e,0x002cc284,0x001fe2e5,0x00182b65,0x00158d1e,0x001a1fe4,0x00181e57,0x001270d5,0x000ee0b8,0xffefcc70,0xffde04a4,0xffd35dc7,0xffbacc61,0xffaa4143,0xffad2175,0xffcf6398,0x00051772,0x0023605e,0x003747b6,0x0001f93e,0xffeeb866,0xffdd8dab,0xffd2a99e,0xffd4f46a,
-0xffdeaf52,0xffea07f8,0xffee6855,0xfff8ba9e,0xfff8eb47,0xfff6457c,0xfff33d9e,0xfff43632,0xfffa0b26,0x00072c34,0x000bd05e,0x00077efd,0xfff2174f,0xffe6e016,0xffe6780f,0xffe51658,0xffe6ffc5,0xffef8ddc,0x00061e23,0x001548f4,0x001d89f6,0x00214207,0x0020d1d8,0x001abc4b,0x0018dff6,
-0x0008f6f5,0xffe3c2d7,0xffd4aece,0xffcbaeb3,0xffdc2f16,0xfff0af0b,0xffd436ec,0xffd8fc28,0xffe759eb,0xffeed365,0xfff6adab,0xfff6a604,0xfff5a2d4,0xfff33a21,0x0001c587,0x000c4a70,0x001a000a,0x001c38ff,0x00253a6b,0x002c1a10,0x0025556f,0x001da0dc,0x001a2fb2,0x00125b75,0x00092c96,
-0xfffcbaaa,0x000611ce,0x000ba3b9,0x000fb653,0x0016ecdd,0x001eb5fe,0x0027ed27,0x002bddbd,0x002eb436,0x0030fa92,0x0024f119,0x0019c955,0x00119a9a,0x00045c71,0xfff4a905,0xffdd0e25,0xffd9f67c,0x0036f795,0x00389a88,0x003a4df5,0x00334e5e,0x00330044,0x00307f8c,0x00322b9a,0x00334975,
-0x0033fd09,0x0033dc78,0x0034a79f,0x00350a7f,0x00345a3b,0x00355056,0x002845e9,0x00224267,0x001ad322,0x0011b6f8,0x0004960a,0x0005b433,0x0007da35,0x00072f4f,0x00080cb9,0x00081a05,0x0007cb2d,0x00073c0b,0x000d848f,0x0012e3a4,0x0019660c,0x002051ce,0x0027a318,0x002dc82f,0x002d0d99,
-0x002eae07,0x002fe320,0x00348ce7,0x0018fecb,0x0018d8b4,0x00189e63,0x00182393,0x00144786,0x001a080e,0x00165bb7,0x0011304f,0x00115137,0x001150ee,0x00109dff,0x00113028,0x0010fcd8,0x0012cda4,0x00164b4a,0x0017ae9e,0x000800e2,0x000d528e,0x000d7cc1,0x000f321d,0x000ddb03,0x000e3fcd,
-0x000e4783,0x000e5093,0x000ea4ad,0x000defbb,0x001077c5,0x001206bc,0x00132d38,0x0014c76f,0x0015e6c6,0x00181e93,0x00187faa,0x00199fdb,0x001acf0b,0x00199a18,0x00137e6c,0xfffcd09d,0x000052b7,0x0001c683,0xffffafc0,0xffff66cc,0xfffe9442,0xfffe3fea,0xfffef859,0xfff6e7a8,0xfffe3f1b,
-0xfffda9f9,0xfff8104e,0xfffc0654,0xfffc4ae3,0xfffd27c6,0xfff82055,0xfff77504,0x0003f97c,0xfffe841c,0xfffdc7ec,0xfffd596f,0xffff1b58,0x00003161,0x0003d92c,0x0000f406,0x00002644,0xfffeb3aa,0xfffe6c4e,0xfffee02b,0x00083523,0xfffb5627,0xfff9bb04,0xfff9c267,0x0002263f,0x00043dea,
-0x00010b54,0x0000c9f0,0xfffd4320,0x0001df8f,0xfffc1ae6,0xfff5a327,0xffee3adf,0xfffd063f,0xfffd4a56,0xffe68ea1,0xfffc573d,0xfffc0265,0xffe6d24b,0xfff063a7,0xfff064bb,0xfff394a8,0xffeca394,0xffef43a8,0x00016d5b,0xfffc1719,0x0003cac3,0x0005f4d9,0x000a46e3,0x000ddb9a,0x0012af94,
-0x000708c1,0xfffe3d89,0xfff758dc,0xfff51005,0xfffd1a64,0x00191ba9,0xfffa7fbd,0xfff4d1ab,0xfff87484,0x000d19c2,0x000ff21a,0x000199ee,0xffff8dc4,0x000a177e,0x00159238,0x00011137,0xfff92df9,0xffe808a6,0x0003d4b1,0xfffd12b4,0xffc79560,0xffe55484,0xffe02e20,0xffc1004d,0xffdbf1ee,
-0xffdb5231,0xffe02f9e,0xffd98976,0xffd712ce,0xffffc61d,0xfff2caf6,0xfffc9f44,0x0005c8c4,0x00093745,0x00120f02,0x0020c05b,0x0012437a,0x000b9b66,0x0000d60c,0x0002bcbf,0x00041cdd,0x00328b69,0xfff04e99,0xffed086c,0xfff7428e,0x001f89dd,0x0027a805,0x00109afc,0x001262c6,0xfff3a667,
-0x0000722e,0xffeb4a65,0xffd923a2,0xffbdf31a,0xfff7ea55,0xfff51413,0xffd369e8,0xfff4e541,0xfff8f2c2,0xfffd9e2d,0xfffd9729,0xfffc4b3a,0xffeb438a,0xffe472f1,0xffd403db,0xfff0bd21,0xfffb56dc,0x000e1168,0x00270ffc,0x0030a2f6,0x003f7b7b,0x00494e2d,0x0023a8b9,0xfffa1360,0xffdb6be5,
-0xffd89b23,0x00058e0a,0x00553496,0xfffd80be,0xffe3e086,0xfffc6610,0x0038d196,0x0038fb3f,0xffff868b,0xfff77390,0x00a30946,0x0076a1e9,0x00638964,0x005d05e4,0x005b0754,0x0046ebcf,0x0022e011,0x000b35a0,0x000a5441,0x00023ab1,0x0004d82f,0x00008fbf,0x00070b78,0x0000137a,0x001b3c63,
-0x00258724,0xffd55fd7,0xffb13281,0xff9a9c4a,0xff94b272,0xff7f0f5c,0xff82294b,0xffab8261,0xffe23225,0x003a8b39,0x00aaac9b,0x006c2257,0x0018952b,0xffc8a6f8,0xffce3d8e,0xffe782b2,0x0018d172,0xfff0cbd9,0x0022ddfc,0x0094c321,0x00ab6df6,0xffe0de18,0xfff7a357,0xffd1d5d7,0xffe20f8e,
-0x001596cb,0xffec3077,0xffe8d0c3,0xfffcb7cc,0xfffb5cb7,0xfffdf2d6,0xfffdfb41,0xfffe4eb6,0xfffdc80a,0xfffd6e6e,0xfff5f3c0,0xfff78368,0x0009e66b,0xfff1bff4,0xfff1b224,0x000625d5,0x002d5f1c,0x0043e2c7,0x003be1b2,0xfffb2d42,0xffb3f83c,0xff777369,0xff5a5a5d,0xffad0b50,0x004c42a7,
-0x003c6230,0x00143d89,0x0006aaa5,0xff810229,0xff6314b2,0xffa7d952,0xffb84b0a,0x0014656b,0x0094ff19,0x002c368f,0xfff24366,0xffbc357b,0x0003b90d,0x000af860,0x0001c8e0,0x000284c4,0x00017b02,0x00015669,0x00019691,0x0001492c,0x00023d5f,0x000460d4,0x00022838,0xfff3cf1b,0x0004860c,
-0x0008950e,0xffff91ce,0xffe620fd,0xffd1d638,0xffd9eedb,0xffdc83f9,0x000c62c5,0x005a329f,0x008d3c09,0x00490b79,0xff9e5ecf,0xff9c09e0,0xffe02483,0x007b8005,0x008c844d,0x009dc538,0x008e699f,0x001fd601,0xffa1f1d5,0x005ada43,0xff931d9f,0xff1b7f11,0xff30fad5,0xffd6c22e,0xfffd3ab4,
-0xfffd922f,0xfffe708b,0xfffe5ef9,0xfffe74fe,0xfffe0313,0xfffe1da6,0xfffeb2f2,0xfffb5a5b,0xfffae413,0x00092018,0x002512cd,0x00327116,0x003793fd,0x00294ff6,0x00137e63,0xfff75c2b,0xffdc654a,0xffce0af6,0xffd14327,0xffcc57ff,0xffd963b8,0xffd9c578,0x003ae5c6,0x007410ed,0x00b18ce1,
-0xffeabc29,0xff690350,0xff3c749a,0xff626af8,0x003f9b4a,0x00967e1c,0x00c83376,0x00c77450,0x005769af,0x00209641,0xfffef2d1,0x0002e205,0x0002f680,0x0001e936,0x0002f3fb,0x000375f6,0x0003bfb4,0x0001ce6b,0x0005e5db,0x00140d73,0x002a36fd,0x003f1407,0x003a6b05,0x002b849d,0x00202c5f,
-0x0019780c,0x001a6130,0x001683f1,0x000da497,0x000389e4,0xffe101fd,0xffcd955f,0xffc334a9,0xffad5171,0xff9fbd5f,0xffa8a6e1,0xffce3015,0xfffc0005,0x0016a7fa,0x00199874,0x0006a5e8,0xfff9e661,0xffe5d653,0xffdbf4c6,0xffdb96e7,0xffe34cda,0xffece6af,0xfff31e34,0xfffbcf3a,0xfffc6093,
-0xfff9d817,0xfff8897f,0xfff74dcf,0xfff8c284,0x0002e210,0x00080f44,0x00087caf,0xfff66172,0xffeb2407,0xffe6e29e,0xffe2f213,0xffe20a47,0xffe5e7c3,0xfff496bd,0xfffc5aa2,0xfffeaded,0x0000c360,0x00006d73,0xfffc0f46,0xffff67ca,0xfff74e9d,0xffdb8c74,0xffd53700,0xffd10d31,0xffe41260,
-0xfff6f949,0xffc68286,0xffc85e73,0xffd7bc42,0xffde622a,0xffe7bcc9,0xffe9abf5,0xffec3a52,0xffed870b,0xfffa7b4e,0x0001063c,0x000d7b76,0x000c7e0c,0x0017c73c,0x001bea60,0x001df7b5,0x001a4b8b,0x001be705,0x00132c22,0x000a4b53,0xfffdb451,0x00072c15,0x000e3159,0x0013a7ef,0x001be459,
-0x0024bed6,0x002f1b31,0x002c5c69,0x0028f1f3,0x00246868,0x0014474e,0x0004b8d1,0xfff85ba8,0xffee5f0d,0xffe20e83,0xffcebeeb,0xffcbf03a,0x00224eb6,0x0021eaab,0x002e1fed,0x00237676,0x0027dd50,0x0026f384,0x0027e003,0x002a5338,0x002b889d,0x002ea282,0x0033b092,0x003521bd,0x00375e5a,
-0x003a7f61,0x00307250,0x002928cf,0x00216083,0x0019f07f,0x00119bc5,0x000e0875,0x0010069c,0x000ef361,0x000f2740,0x000ed31d,0x000dd01d,0x000d9d6b,0x001066fc,0x00137a7f,0x00177cfb,0x001c3321,0x002102fd,0x00235c49,0x002157e3,0x00207039,0x001f5b8e,0x0021a597,0x00163901,0x00135f8e,
-0x00170ca9,0x00191d27,0x001ad3a7,0x00170be0,0x0017d074,0x00183c15,0x0019d91e,0x001a95aa,0x001a414b,0x001c169a,0x001c9cfd,0x001f4beb,0x001c461c,0x001b68da,0x00167461,0x00160a01,0x0014a320,0x00146c1a,0x001440a8,0x00148a36,0x0014d3ce,0x00150b64,0x00157b82,0x0015372f,0x001661eb,
-0x0016cb7e,0x0016a27f,0x0016a75a,0x001674bc,0x0017722b,0x00175dfc,0x0017f4ed,0x0018a225,0x0016f897,0x00183664,0xfffb7c00,0xffffa403,0x000186e5,0xfffe1d71,0xfffc479b,0xfff92b8a,0xfffd0763,0xfffc8b61,0xfff41e39,0xfffa2b96,0xfffa3b41,0xfff63d57,0xfff7b15d,0xfff72fc3,0xfff9c3b7,
-0xfff505fe,0xfff5c022,0xfffeb853,0xfffb4a67,0xfffb7f12,0xfffbb5d6,0xfffd536a,0xfffe663d,0x0001fbae,0xfffdc7d5,0xfffd0ebd,0xfffcffa6,0xfffcdc85,0xfffd63d8,0x0005803e,0xfffa427c,0xfff93ce6,0xfffa6972,0x0001b7ba,0x00038689,0xffff742e,0x00003b88,0xfffe7b67,0x00027f36,0xfff9e0f4,
-0xfff6ffb7,0xffef0865,0xfffb4cb8,0xfffc9031,0xffeacb60,0xfffcc781,0xfff9e21e,0xffe5e9d1,0xffea596a,0xffeb4008,0xfff69b3f,0xffe883a3,0xffeb514d,0x0000feea,0xfff902be,0xfffe3e9d,0x0000e29f,0x0005b1df,0x00083822,0x000c6ff7,0xfffc7c42,0xfff45ead,0xfff2eb07,0xfff325cf,0xfffbd72d,
-0x00139873,0xfff8ed54,0xfff5267c,0xfffbbe49,0x000d7059,0x000ed967,0xfffeb655,0xffffb337,0x000c61ac,0x00159c03,0x0001cc3f,0xfff8f6e2,0xffe8ab07,0x000117d3,0xfffc9ed5,0xffd65f7e,0xffead62b,0xffe9c897,0xffd2ef7a,0xffe1a035,0xffdce94e,0xffe9c68d,0xffd6964f,0xffd2f5d7,0x0000cd41,
-0xffefd7c8,0xfff8eb60,0xfffe6d08,0x0004a3c0,0x000bf861,0x001ab753,0x0003eee4,0xfffe0b36,0xfffc1d99,0xffffeaef,0x0001d19e,0x0027e642,0xffef89a9,0xffefe578,0x00000bf8,0x0021f68f,0x00283dd2,0x000daa9c,0x0013cd4d,0xfff9f613,0x0002e467,0xfff064f7,0xffdf1edf,0xffca7548,0xfffad5b9,
-0xfffa2b0d,0xffe88001,0xfffeb261,0xfffee4be,0x000755e2,0x00034b91,0xffff0ede,0xfff8722a,0xffe957c8,0xffd517f7,0xfff201e3,0xfff3a949,0x000379cf,0x00170a4a,0x0022dc7e,0x002f4720,0x00364ab7,0x00022ddd,0xffdad9b0,0xffcf266a,0xffd6b059,0x0003d678,0x00431528,0xfff9bd2b,0xffe8b2ee,
-0x0009ca38,0x003c02b2,0x0035d30b,0xfff75769,0xfff8629e,0x00a1bb76,0x006c7615,0x005c3129,0x00501d99,0x0049dd34,0x00321d3a,0x00117b67,0x0002f580,0x0004813a,0xffffa84e,0xffff10d5,0xfffe25f5,0x0003ba19,0xffff86ec,0x0012a8bf,0x002331b5,0xffeda81c,0xffc42bb4,0xffa8ae74,0xffa43b84,
-0xff8fedaf,0xff971192,0xffca6893,0x0005303c,0x005ad75b,0x00b92e7d,0x006eb50f,0x0015c12b,0xffcdc983,0xffd56228,0xffefb509,0x0023b564,0xfffb21a4,0x00311b3d,0x00ac8058,0x00b3cb97,0xfffe0ab4,0x000e1fde,0xffdb7733,0xffe60e75,0x000b2032,0xfff65e05,0xfff70d64,0xfffef7de,0xfffdd981,
-0xffffbd9d,0x00008880,0x00001db6,0xfffecc53,0xfffec7ae,0xfff8ede8,0xfff4af01,0x00066767,0xfff06fc0,0xffe8bc8c,0xfff6039e,0x001ebe48,0x003686c5,0x00339814,0xfff5e24e,0xffb086c1,0xff756417,0xff6c083d,0xffc8fbb8,0x006453f3,0x003ae479,0x000ac86a,0xfffffd2d,0xff81f36e,0xff7139b0,
-0xffbb35e3,0xffd238df,0x00405f29,0x00af078f,0x0050effa,0x000a4817,0xffd10a6b,0x0002de9c,0x00065840,0x00000ae3,0x00015cf6,0x00002a9d,0xffffe44b,0x00004f5f,0x0000c002,0x00012119,0x00039a03,0x000601a2,0xfffb0a0f,0x000bcb32,0x001444b9,0x001151fc,0xfff57f94,0xffe0fb92,0xffeb6ccd,
-0xffef5973,0x0027891f,0x008529c6,0x008f60d5,0x003ac2f2,0xff90a52f,0xffb9e8b9,0x00084b89,0x0081bc12,0x009ae550,0x009d0d8f,0x005d8308,0x002f032b,0xff635de7,0xffe3b3d7,0xff9c9471,0xff4afb2f,0xff4bb413,0xffddb2ef,0xffffd723,0xfffeafd9,0xffff32a5,0xffffc627,0xffffc857,0xffff62ee,
-0xfffebe51,0xffff3829,0xfffd35a6,0xfff9d29c,0xfffd4e4d,0x0019d4c0,0x002a5c86,0x002eccfd,0x00204ec8,0x000c6b20,0xfff342f5,0xffdac319,0xffc9d088,0xffcdaa87,0xffcf5aaa,0xffe623b1,0xffe18db8,0x005f6ecf,0x0085071a,0x00875482,0xffb29eaf,0xff3c623b,0xff300aab,0xff4a84ae,0x00374726,
-0x00b215ee,0x00e039aa,0x00ceb5df,0x004f4313,0x0023e63c,0xffffdbd1,0x00028298,0x0000a8ed,0x00004602,0x00009e8d,0x00015ca0,0x00022feb,0x0001b23f,0x0001c7a9,0x000dcc72,0x00228b3b,0x00400bf1,0x00420f60,0x00381c4d,0x002e7a6c,0x0025589b,0x0022c8da,0x001d9132,0x001470ee,0x0008cb0c,
-0xffe56905,0xffd174b0,0xffc7772b,0xffb31450,0xffa74a87,0xffb4d6a1,0xffd15308,0xffef5e8b,0x0002a4a9,0xfffa7012,0x0010045a,0x0009c0da,0xfff2ff2d,0xffeba3d0,0xffe6736a,0xffecf8f9,0xfff3c0af,0xfffa8ae3,0x000016c2,0xffffddad,0xfffed5b0,0xfffd1ad7,0xfffbafb5,0xfffa444d,0x00004ffa,
-0x0005c934,0x000a7dbf,0xfffcaf8b,0xfff05a25,0xffec59f2,0xffe97089,0xffe6099f,0xffe6e9e7,0xffedd9ef,0xffef8c18,0xffedf87e,0xfff25d46,0xfff4578d,0xfff1acac,0xfff76b99,0xfff3c4a0,0xffdebdb1,0xffdf87d8,0xffe0264f,0xfff207d6,0x00040763,0xffc54c71,0xffc29c48,0xffcd687f,0xffd2a4b0,
-0xffd99cb9,0xffde095e,0xffe376e5,0xffe7e4cf,0xfff234e7,0xfff820ae,0x00016ff4,0x0000ce90,0x00090a7e,0x000cd832,0x0012a3e9,0x0014029f,0x00195666,0x0013003f,0x000ba6ce,0x0004314d,0x000e37f9,0x001408a2,0x001a0eca,0x002397a6,0x002dd001,0x0038c3aa,0x0030c2b5,0x00284c53,0x001ed0a0,
-0x000d44de,0xfffc3f16,0xffee0754,0xffe6b4ea,0xffdcc647,0xffccf048,0xffc97e78,0x00101286,0x000ddc7b,0x00183149,0x0014b240,0x0019f08a,0x001a8e4b,0x001ce311,0x00200425,0x00230f27,0x002774a0,0x002d8ca9,0x003173c4,0x0035ea8e,0x003ac323,0x00331ba2,0x002d39c1,0x002719d1,0x0020e0fc,
-0x0017b764,0x00186e69,0x0019a224,0x00185245,0x0017e238,0x00171865,0x001567c6,0x0015a353,0x00158b05,0x0016bdc9,0x00187edd,0x001aa02b,0x001c81fc,0x001b743b,0x0017dfa7,0x0014b702,0x0011daad,0x00117fb4,0x0016d369,0x0013c5ed,0x0015a4a0,0x0015ecbb,0x0015daae,0x001773ee,0x0016cc32,
-0x00160541,0x00186f02,0x0019f220,0x001a8bfd,0x001c897b,0x001d6ad5,0x002054d9,0x001ec37c,0x00202b5b,0x00184f8a,0x001ab4c2,0x001b7cc4,0x001e3c56,0x001d4970,0x001dd64d,0x001e37ea,0x001e7855,0x001ed504,0x001eb5fd,0x001eabe3,0x001e0cd3,0x001ccd5d,0x001bb367,0x001aa141,0x001aaf3c,
-0x001a34d3,0x001a2ece,0x001a1dd4,0x00182de3,0x00212fc8,0xfff87e23,0xfffd4f78,0xfffe449f,0xfffc2da0,0xfffb2c5e,0xfff961e2,0xfffa1c09,0xfffb2cee,0xfff65e5a,0xfffb20a4,0xfffb5dc9,0xfff8573a,0xfff7d38f,0xfff70fc2,0xfffb6cf9,0xfff33025,0xfff311e8,0xfffec64b,0xfff9bf9e,0xfff92f4c,
-0xfff7d83b,0xfffa1e5a,0xfffae82e,0xfffe2cab,0xfff8fe8a,0xfff895cf,0xfffa1a6b,0xfffab60d,0xfffb4da3,0x00012808,0xfff81ab6,0xfff77601,0xfff95671,0xffff3632,0x00009cad,0xfffbf175,0xfffda7cc,0xfffce75e,0x00001024,0xfffb3104,0xfff5e0fa,0xffefe6ba,0xfff9837f,0xfffb14a3,0xffefdf39,
-0xfffb594c,0xfff705c5,0xffe6ba72,0xffe429f2,0xffe5a44b,0xfff88e88,0xffe67499,0xffe895a2,0xffff9e4c,0xfff5d39c,0xfffb0215,0xfffa25c4,0xffff6463,0x00008bdd,0x00037364,0xfff0105a,0xffe96df0,0xffee0491,0xfff27c65,0xfffb7e55,0x000c20ea,0xfff6d5a5,0xfff48672,0xfffcbf6b,0x000a3b29,
-0x0009eb1e,0xfff8f6ec,0xfffcfdab,0x000a495c,0x001252ef,0x00012def,0xfff74217,0xffeb1c03,0xfffe5eb3,0xfffc3618,0xffe4ce26,0xfff1441e,0xfff1ed3b,0xffe3e50e,0xffe7a98d,0xffe1215e,0xfff20ec2,0xffd6faea,0xffd1d19c,0x00012061,0xffedb8d9,0xfff4e207,0xfff5f564,0xfffe2eba,0x0003996e,
-0x00111d8f,0xfff39243,0xffefea1d,0xfff8916e,0x00010882,0x0003b0fd,0x001bf086,0xfff072c8,0xfff2b3ad,0x0005f709,0x001f403b,0x002304ff,0x0006a654,0x00113e61,0xfffac809,0x00030aed,0xfff4aa49,0xffe3bb7a,0xffd701ed,0xfffc6a37,0xfffd0572,0xfff8e002,0x00028234,0x00036a78,0x0007571b,
-0x00086667,0x0002ab3f,0x000042d6,0xfff28e19,0xffda59ce,0xfff400a8,0xffee304b,0xfff9712d,0x0005f3f1,0x00134140,0x001bd191,0x001de945,0xffdd982e,0xffbb9671,0xffc5ed37,0xffdc2e84,0x00072399,0x002e6370,0xfff7a201,0xffeea34a,0x0013904b,0x0037574a,0x002aa46e,0xffeadb85,0xfff545ae,
-0x008cca10,0x00549e72,0x0050780c,0x003e9b0a,0x0033f23d,0x001e9e5e,0x0004e410,0x0000fd3a,0x0000b562,0xfffe108d,0xfffd77f8,0xfffc7ec0,0xffffe7de,0xffff5f44,0x0009260c,0x001b1f5b,0x0000fc84,0xffd82f38,0xffb8435c,0xffb2df96,0xffa078fe,0xffac7a72,0xffe87e5f,0x002c34df,0x007ed8ae,
-0x00c7e35b,0x007845ac,0x001eb42c,0xffe2b541,0xffe1eb04,0xfff60d34,0x0025b48d,0xfffe18c1,0x00330e65,0x00ae5bfc,0x00a94df2,0xfffda028,0x0019dd6d,0xffeb2431,0xffee1784,0x00052648,0xfffd9558,0xfffadbbb,0x00005695,0xffff7fe9,0x0000f826,0x00015297,0x00015d77,0x00005663,0xffffa110,
-0xfffba556,0xfff5f13e,0x0002ffe6,0xfff43efe,0xffe82581,0xffeadb06,0x0011d012,0x00286af4,0x00260add,0xffebbe95,0xffa807a7,0xff715deb,0xff7fbf9f,0xffe48b06,0x00770e98,0x00389b72,0xfffe6e6f,0xffeaa9b2,0xff7a6a9d,0xff737565,0xffb97956,0xffd41d91,0x00480c6f,0x00ac2f59,0x006d8744,
-0x0015c53b,0xffdd30cf,0x0006f64a,0x0002d0c2,0xffff978f,0x00003670,0xffff4d0c,0xffff3cd4,0xffff5a7a,0xffffcd10,0x00007d89,0x0001d247,0x0005b4c4,0x00011a39,0x000e4f87,0x001aa8bf,0x001be3e6,0xfffdb81a,0xffea65cb,0xfff2b516,0xfffb9e80,0x00385b55,0x009a7c0a,0x007b19fa,0x001a489d,
-0xff7cf998,0xffcddd74,0x002587e8,0x0078ab17,0x009e172c,0x008f4b54,0x00227d99,0x00248633,0xff3a43be,0xff510d4b,0xff9564dc,0xff8131fb,0xff75ff3c,0xffeb81f8,0x00015e40,0xffff5057,0x0000a040,0x0000aa17,0x0000a97d,0x00008037,0xffffdc9e,0xffffde28,0xfffe8ba4,0xfffc3610,0xfff66c70,
-0x000c607f,0x001fa75b,0x001fc0d7,0x000ef64d,0xfffe4b57,0xffe717e9,0xffd1ac95,0xffbd80bc,0xffbf3441,0xffc44be9,0xffe64b7e,0xffe7922b,0x0075cf12,0x00835c9e,0x004270a4,0xff8867f5,0xff3195da,0xff4107d7,0xff522726,0x00289095,0x00b48188,0x00dad685,0x00b7f0d6,0x00401ab3,0x0020c50c,
-0xfffd1b80,0x0000e1b6,0xfffe9b9f,0xfffebb60,0xffff0c28,0xffff7c7d,0x0000168e,0x00011ec4,0xffff5c8a,0x0007d1b5,0x0019e960,0x003c8705,0x0048a670,0x00403b7b,0x0036c656,0x002ac122,0x0021ec8f,0x00190e41,0x000e7b80,0x00025a35,0xffe00697,0xffcc1209,0xffc2c7c6,0xffb4eea0,0xffb126bb,
-0xffc47c3a,0xffd6409d,0xffe19a26,0xffed2935,0xffdb85c0,0x00192634,0x00161318,0xffffe191,0xfffc0fbf,0xfff33606,0xfff930b1,0xfffc552c,0x0001719e,0x00036f1b,0x00037bfd,0x0001da2f,0x00017e30,0xffff9eb2,0xfffdf330,0xffff9402,0x0004eeff,0x000d6c64,0x0005029d,0xfff9d19f,0xfff38f90,
-0xffeec390,0xffe892b9,0xffe3c6ac,0xffe24edd,0xffdde9bb,0xffd98ba8,0xffe07714,0xffe589f1,0xffe60382,0xffec5c64,0xffecbcf7,0xffe28a5c,0xffebebb0,0xfff3039a,0x0004da58,0x00135b47,0xffcb5d9a,0xffc55dec,0xffcb306f,0xffce0a04,0xffd2a1ce,0xffd82a9d,0xffdfea0e,0xffe69fd7,0xffef489b,
-0xfff35ac1,0xfffa4741,0xfff8d6fc,0xffff87e4,0x0001a8e3,0x00099c28,0x000d50fd,0x0014e7ee,0x00122699,0x000e8a9e,0x000a8033,0x0010bf37,0x0014c462,0x00191647,0x0021c9da,0x002ab55c,0x00338b32,0x0027eaec,0x001bf327,0x000f3586,0x0000e901,0xfff3240a,0xffe7140c,0xffe3d657,0xffde013f,
-0xffd3bdb1,0xffced060,0x0001cd64,0xfffd8a47,0x000831ca,0x0007e6f6,0x000e6b8a,0x00106ed7,0x00124fa1,0x00159f99,0x00181bf8,0x001d5301,0x00246faa,0x0028e04c,0x002e8478,0x00348c12,0x0031941e,0x002e2040,0x002ad47b,0x0026ecb6,0x0020780c,0x0021cf21,0x0022bf86,0x002221de,0x0021a658,
-0x002133e7,0x001fc375,0x0020f7ce,0x001e6d6b,0x001e20b2,0x001dcf08,0x001d6549,0x001c29a0,0x0018586a,0x0012d570,0x000d5ae4,0x0008d60c,0x0005c28a,0x0018cb5c,0x0014fbdc,0x0017b8dc,0x00180935,0x0017eeb4,0x0019c5dd,0x001a34b7,0x001ad604,0x001e137c,0x00200c85,0x0020f88e,0x00234ad0,
-0x00246eb6,0x0026e486,0x0024841a,0x0025bcaa,0x00202e16,0x002280cc,0x0023c04f,0x00262ec0,0x0025bb85,0x00266b48,0x00270c4f,0x002774a5,0x0027d85c,0x00281c34,0x0026fb23,0x00258776,0x00238653,0x002190c6,0x001fe872,0x001f4059,0x001e48ce,0x001d9225,0x001c8987,0x001a6df4,0x0029db38,
-0xfff50969,0xfffa51bf,0xfffae80f,0xfff90efc,0xfff7f997,0xfff69b33,0xfff6a934,0xfff843d2,0xfff63b26,0xfff93325,0xfff941fc,0xfff79af2,0xfff505e0,0xfff4268f,0xfffa45b6,0xfff0486c,0xffeff553,0xfffc0163,0xfff69b75,0xfff5e11f,0xfff3e787,0xfff68af6,0xfff70820,0xfff97f4e,0xfff3c2e2,
-0xfff3af21,0xfff68f5b,0xfff83d09,0xfff8ddef,0xfffbc193,0xfff59199,0xfff58cdc,0xfff88be8,0xfffcab36,0xfffd62e3,0xfff7affc,0xfffa84f1,0xfffa9ef9,0xfffca547,0xfff8a498,0xfff3f97c,0xffef0444,0xfff5b4cb,0xfff820a9,0xfff3c32f,0xfff97f4a,0xfff4b31d,0xffe6d900,0xffde8c23,0xffe07c3e,
-0xfff7f45c,0xffe3dce6,0xffe5d434,0xfffd1332,0xfff22a3b,0xfff666bb,0xfff393cd,0xfff94d5f,0xfff8d402,0xfff94d77,0xffe3d459,0xffdefcd9,0xffe8ea6a,0xfff226b7,0xfffae72a,0x0002b899,0xfff45120,0xfff42345,0xfffeafa2,0x00076421,0x00053217,0xfff2ba1e,0xfff9c80b,0x0008618e,0x000deec3,
-0xfffe8c28,0xfff48516,0xffeb61f8,0xfff9eb30,0xfffaf761,0xfff25764,0xfff739f5,0xfff8fe6b,0xfff2d06e,0xfff14dd5,0xffe77c43,0xfff8f214,0xffda268e,0xffd2d762,0xfffef8ae,0xffeb5452,0xfff004c3,0xffed9d1b,0xfff81a84,0xfffad419,0x0004e26b,0xffe2dc00,0xffe1b81c,0xfff3fb75,0x00028605,
-0x0005ea84,0x000d1aad,0xfff11b51,0xfff64a58,0x000e6c9b,0x001dff30,0x001e3997,0xfffdfdfc,0x000de4e4,0xfffcb01f,0x000183dd,0xfff57637,0xffe81ca7,0xffe15078,0xfffcbc1f,0xffff2a0d,0x000050cd,0x0002ba2a,0x00029324,0x0004c108,0x0006ebe6,0x0004d329,0x00038a2f,0xfffc307e,0xffe37cd0,
-0xfff549c3,0xffea82f3,0xfff06191,0xfff6a731,0x00056a14,0x0008dfd2,0x00031c46,0xffbae8b7,0xffa02660,0xffbf2861,0xffe533c9,0x000b6e4d,0x0016160c,0xfff51e36,0xfff60471,0x001fcfd7,0x003336ca,0x001fb456,0xffde447d,0xfff2e729,0x007e6237,0x004125ce,0x003ee931,0x002b00e5,0x001e8ee9,
-0x000d712c,0xffff1b82,0x00007e58,0xfffeda88,0xfffedbf3,0xfffdb87a,0xfffcfe27,0xfffe27ff,0xfffeafd0,0x0002ecb6,0x000f8a47,0x000d9e57,0xffe8ca3e,0xffc63d72,0xffbde84e,0xffae7325,0xffbe30b5,0xfffdf6b0,0x004b06cd,0x00964587,0x00c5094d,0x0076d235,0x002209ca,0xfff3c922,0xffec4f63,
-0xffff1d98,0x0030c520,0x0010c4f3,0x00423ef3,0x00b25d97,0x009e44b1,0x001510ad,0x0022d12e,0xfff27196,0xfff72716,0x0003ec93,0xfffe75ee,0xfffd64f1,0x00017371,0xffffeeb4,0x00010392,0x00011a60,0x000181ca,0x0000f7bd,0x000086d5,0xfffea760,0xfff83af5,0xffff7fe7,0xfff8dbf6,0xffeb9c0e,
-0xffe5b88b,0x000a3a68,0x001ce7da,0x0017f124,0xffdfc00f,0xff9e632a,0xff6f2816,0xff924b87,0xfff779ba,0x0077d7a9,0x0030b1b4,0xfff201c9,0xffd833d2,0xff7f9213,0xff88dfae,0xffd361d1,0xffeff2f1,0x0067c1b9,0x00b2725e,0x007e53dd,0x001bca39,0xffe1a417,0x000c4135,0xfffe4779,0x00003414,
-0xffff30e1,0xffff7125,0xffff1266,0xffff1fac,0xffff6101,0xffffadc9,0x0000e46c,0x00035f73,0x000332ef,0x000bdfe0,0x0019944c,0x0020a9bf,0x00063b23,0xfff6f70f,0xfffd41b7,0x000e696b,0x004aec39,0x00a49603,0x0061ebb7,0xfffa72ca,0xff704ddb,0xffe3bbb8,0x00467d06,0x007cb290,0x00ab8279,
-0x008a0988,0xfffb4118,0x002ba5f7,0xff3be161,0xfee4fa22,0xff92a440,0xffb83557,0xffa55150,0xfffc076e,0xffff94c2,0x000157a3,0x00009498,0x000137c0,0x0000def7,0x0001006c,0x0000883a,0x00005d69,0xffff82d3,0xffff572e,0xfff48b8e,0xffff8997,0x00103a97,0x000de53e,0xfffd6bef,0xfff11794,
-0xffdd4af9,0xffcb04e0,0xffb7f47c,0xffbbd525,0xffc4712f,0xfff2ea4f,0x00015ef7,0x008e2681,0x007f78f0,0x0000016d,0xff7a7c30,0xff488958,0xff602ac9,0xff7acb84,0x001a6077,0x00ad0db6,0x00c41f5d,0x0093b2ac,0x0034a9d5,0x0016d9aa,0xfff9e730,0x0000463d,0xfffd2569,0xfffe6d06,0xfffe2175,
-0xfffea907,0xfffec19d,0x000021c8,0xfffeee7e,0x0001cd5a,0x000fe862,0x0031e22a,0x004670d5,0x00421992,0x003a0e0f,0x002e6608,0x00242a2e,0x0018d888,0x000ea697,0x00034b7c,0xffe5e765,0xffd1d40b,0xffc68f49,0xffba331f,0xffbc6a6f,0xffd4b2d0,0xffd903b0,0xffd48469,0xffd93d21,0xffc75117,
-0x00252c5e,0x00264773,0x000f6b75,0x000b3e5b,0xffffb2aa,0x000403ce,0x0002070e,0x00050785,0x0004c3c7,0x00046fa9,0x00035ad5,0x00035ece,0x0002254d,0x000115a6,0xffffc104,0x00043024,0x000da8d6,0x000b3d25,0x0001e4c6,0xfff934b3,0xfff40253,0xffec2789,0xffe571c8,0xffde8d6d,0xffd601f0,
-0xffce6447,0xffd78ce7,0xffdd7147,0xffde1137,0xffe2f783,0xffe508f8,0xffe3d757,0xfff43537,0x0003c4da,0x0017a201,0x0024ddac,0xffd4f451,0xffcdf869,0xffd04842,0xffd24564,0xffd47fef,0xffda1e6b,0xffe314f1,0xffea9916,0xfff06f66,0xfff3b375,0xfff7ec18,0xfff61da5,0xfff9a580,0xfffaafd1,
-0x000171d9,0x00061128,0x000e1222,0x000f1d88,0x000f4054,0x001156ab,0x001555ae,0x0016ef51,0x00198075,0x0020a231,0x002823a1,0x002ee575,0x0021b6d8,0x001478ee,0x0006f618,0xfffbf01f,0xfff1a874,0xffe7af1e,0xffe6910b,0xffe27564,0xffdb702a,0xffd680e0,0xfff5052c,0xffeebc85,0xfff96e99,
-0xfff9edd1,0x00014500,0x0003f2da,0x0004bd2f,0x0007d49a,0x0009e3a8,0x000f256b,0x0015d0cb,0x001afde7,0x00215ef8,0x0027d710,0x0029a693,0x0029ac02,0x0029aeed,0x002931fc,0x0026376c,0x00281e41,0x00288d5e,0x0028a1ef,0x00286dd2,0x00283abd,0x0026eb50,0x0028abe7,0x002446c8,0x00228f29,
-0x002062bf,0x001da2b1,0x0019c382,0x00141043,0x000d23eb,0x00066519,0x0000ee75,0xfffb80b4,0x0017cfda,0x001340cb,0x00182229,0x00190762,0x001a0e99,0x00196c0b,0x001b9f1a,0x001e0428,0x0021b6fa,0x0023fc16,0x00257a1d,0x0027ac32,0x0028ff54,0x002af681,0x0027c29a,0x0028159b,0x0026b2a3,
-0x0027a7bf,0x0028baf1,0x0029df4b,0x002a0378,0x002ad1a2,0x002b925a,0x002c318d,0x002cc197,0x002d7fb1,0x002b4c09,0x002913d1,0x00266cf4,0x0023e0ef,0x0021c523,0x00206e9a,0x001f1155,0x001daaeb,0x001bbf2a,0x001984ef,0x002d508f,0xfff2296e,0xfff89ff4,0xfff8b116,0xfff64f94,0xfff4e733,
-0xfff3ab38,0xfff38a96,0xfff53aa3,0xfff66d17,0xfff76239,0xfff6f3e7,0xfff5e60a,0xfff2053c,0xfff1abb4,0xfff8df8b,0xffeddfc7,0xffed48bf,0xfff8807b,0xfff3145d,0xfff2686a,0xfff0b1db,0xfff37435,0xfff3a90c,0xfff5016f,0xffef6036,0xffef9f39,0xfff36791,0xfff623e3,0xfff68b0c,0xfff5db3b,
-0xfff2d8ee,0xfff38d76,0xfff7d3ee,0xfffa331f,0xfffa9c77,0xfff4ec70,0xfff8be00,0xfffae03f,0xfffb105e,0xfff67bf2,0xfff2daf9,0xffef350a,0xfff3036b,0xfff60b56,0xfff82994,0xfff8af24,0xfff41cce,0xffea301a,0xffdcdd8d,0xffdd3353,0xfff62f39,0xffe25905,0xffe4b317,0xfffa5fe8,0xffef40a9,
-0xfff1e79c,0xffedca36,0xfff3d1e0,0xfff19aae,0xffef0c1b,0xffd9b173,0xffd6f4c3,0xffe4a4bf,0xfff233f1,0xfff9a26b,0xfff73cc7,0xfff01edd,0xfff2332a,0xffff9e38,0x000374c4,0x00009b68,0xffef5f83,0xfff92f37,0x000b1c3c,0x000c32e7,0xfffe2f56,0xfff4ea88,0xffed9495,0xfff6eada,0xfffac454,
-0xfffc8a97,0xfffbfb2d,0xfffe1bcf,0xfffb2cf3,0xfffa2ce4,0xfff18c5a,0xfffdaa64,0xffe0b876,0xffd675da,0xfffbca49,0xffe999ae,0xffeb7ca7,0xffe5ec19,0xfff27ff4,0xfff25ed1,0xfff7737f,0xffd4b031,0xffd618e6,0xffeed327,0x0002d819,0x0005388c,0xfff91868,0xffedcf2b,0xfff63e05,0x00146b47,
-0x0019f3a1,0x00193309,0xfffa5a96,0x000ef011,0x0003a2dc,0x00036cde,0xfff84e14,0xffedc31f,0xffeafc85,0xfffd80d8,0x0000ec3e,0x00011ae1,0x0001341e,0x00019c81,0x000255df,0x000499d5,0x00044f23,0x00033344,0x0003de13,0xffee9475,0xfff5f1e6,0xffe9117c,0xffe995c7,0xffe8e537,0xfff8465b,
-0xfff5db1c,0xffe6601a,0xff9d46e7,0xff8b3a8c,0xffb9c1e6,0xffed402f,0x000ae90f,0xfff64ffa,0xffeb25d3,0xfff6bed6,0x002729df,0x002a2ab2,0x00140e56,0xffd9483a,0xfff6aae0,0x0071c30d,0x0038645b,0x00374d5b,0x001ec3ad,0x00108ff4,0x00041cc5,0xffff09d2,0xffff9598,0xffff53c1,0xffff2830,
-0xfffec4fb,0xfffd9e97,0xfffe50c6,0xfffdafec,0x0000d490,0x0006542d,0x0011303f,0xfff5593c,0xffd212d5,0xffc60b2a,0xffbc76ac,0xffd0fc59,0x001187de,0x00679db8,0x00a6cb40,0x00b5fa58,0x006a3840,0x001d8039,0xfffe1905,0xfff539f4,0x00066f5f,0x0036a119,0x00208006,0x004ffa7e,0x00b65d3b,
-0x0094fb9c,0x001ffa38,0x002df328,0x00056388,0x0003a0e4,0x0003fb32,0xfffdf985,0xffff8cf7,0x000103d2,0x000026e3,0x0000b597,0x0000ba40,0x00013213,0x000115da,0x0000e394,0xffffe2ae,0xfffbc390,0xfffd0add,0xfffd53ba,0xfff338a5,0xffe61b5d,0x0003a58a,0x000f1e86,0x0004828a,0xffce8da4,
-0xff938f10,0xff715fd5,0xffa7b49d,0x00091f2b,0x00726d56,0x002e8ec7,0xfff04360,0xffceeec5,0xff890ec2,0xff9a7557,0xffe1429a,0x00029b5a,0x005fe00f,0x00ace793,0x008d73fc,0x0019d2a4,0xffec96ea,0x000aa20d,0xfffc177f,0x0000cf6e,0xfffedeab,0xffffaf19,0xffff3047,0xffff417b,0xffff297f,
-0xffff7891,0xffffed49,0x00018ca5,0x00038237,0x00067e0d,0x0012d55a,0x001e8bc8,0x000c618a,0x0004c499,0x000b6ae4,0x002952bc,0x0061359c,0x00a5d2b6,0x004a27c2,0xffe36c44,0xff73207e,0xfffea6d0,0x0065d800,0x007cb1f8,0x00aca633,0x00758109,0xffc9822d,0x0016dccb,0xff3f3479,0xfe8da046,
-0xff8b74cb,0xffdb47f6,0xffd3b05f,0x0003d0f6,0xfffef4a1,0x0002197c,0x0000619f,0x00013dc0,0x0000c1ad,0x000113b4,0x0000c68f,0x0000e733,0xffffa3f8,0x0001469c,0xfff78c35,0xfff5a6e5,0xffffab63,0xfffba014,0xffee5414,0xffe6264d,0xffd56246,0xffc6f7d4,0xffb71255,0xffbe07c6,0xffc4d2d1,
-0xfffd996a,0x0021f8fe,0x00972a00,0x006b3110,0xffbc2709,0xff750e35,0xff6a0c41,0xff84fff3,0xffa25d92,0x0000d8f1,0x007de2b1,0x008bde1e,0x005f0455,0x0026905a,0x00071d40,0xfffa3cd3,0xffff757c,0xfffd693f,0xfffe781c,0xfffe3429,0xfffe6581,0xfffe6783,0xfffef638,0xffff456b,0xfffed8ce,
-0x00073ac5,0x002561b7,0x003d19e4,0x00405bf5,0x003c74a0,0x0032a75d,0x002877d8,0x0017fb50,0x000b80de,0xffff1e9a,0xffe630fb,0xffd19436,0xffc4b91f,0xffbd6d15,0xffc77eea,0xffe26e4e,0xffd82c32,0xffc47694,0xffc05402,0xffb52a43,0x002b3f2e,0x002ecc4e,0x001ba9bc,0x001547e2,0x0009f37b,
-0x000a683d,0x00044cf6,0x00053b6c,0x0003faad,0x0003f758,0x0003365c,0x0003a6ad,0x0002eada,0x0002d4da,0x0000f28f,0x00031a6b,0x000c2822,0x000fef8a,0x000a1033,0x0001c196,0xfffafdd1,0xfff1e670,0xffe9b76e,0xffdfaae8,0xffd41d44,0xffc81496,0xffd19ff2,0xffd70c34,0xffd6faa2,0xffda414d,
-0xffdd16ac,0xffe56da6,0xfff8d6bb,0x000db247,0x00209707,0x002e85fb,0xffdbc1f9,0xffd5cdf4,0xffd670f6,0xffd7de67,0xffd8664b,0xffdf453d,0xffe936ba,0xfff15c9d,0xfff59cf6,0xfff7a688,0xfff922df,0xfff777ea,0xfff8d3dc,0xfff7f3f1,0xfffbe3e7,0x00003ed8,0x0007b071,0x000b4223,0x000fa1ea,
-0x0014c3cb,0x001419df,0x00141fb5,0x00140369,0x00189c12,0x001d7132,0x00216fe6,0x00149367,0x0007d89c,0xfffb6f43,0xfff4bcd9,0xffeeb11a,0xffe75583,0xffe7869a,0xffe4914e,0xffdf8e41,0xffdb6872,0xffe9f7b6,0xffe23a06,0xffec3074,0xffed012b,0xfff462af,0xfff73414,0xfff6fa5b,0xfff99d1e,
-0xfffb08a6,0x00000731,0x00066c97,0x000b226b,0x0011575c,0x0017d3ab,0x001dee35,0x00205eb2,0x0023081c,0x0025a4a1,0x00286896,0x0028ac11,0x0028810f,0x002922c2,0x0028ff1c,0x002917a8,0x002812fb,0x002a0805,0x0023fe01,0x0020f9d4,0x001d3c9b,0x00187f57,0x00129033,0x000bc7b7,0x000484ad,
-0xfffda992,0xfff85007,0xfff1b641,0x0012457a,0x000daa41,0x00137271,0x00152aec,0x001849a9,0x00138da9,0x0017c057,0x001c3246,0x0020047e,0x0022586e,0x002413ae,0x00265da5,0x00280e73,0x00299d00,0x0024d2d3,0x002372d4,0x0028f0b8,0x0026f50b,0x00270c35,0x00262ef0,0x0027278a,0x0027a84a,
-0x002851d6,0x0028d73d,0x002940be,0x002a23ac,0x00275c4e,0x0024c7a1,0x0021e469,0x001f33cf,0x001d073d,0x001b4d37,0x0019ea85,0x00182dd7,0x0015cfe1,0x0013b5ac,0x00290b07,0xfff0d247,0xfff73ff1,0xfff680a3,0xfff519b2,0xfff3c351,0xfff25512,0xfff24c3d,0xfff40dda,0xfff70b93,0xfff5fdd6,
-0xfff50548,0xfff471f4,0xffef418a,0xffef662d,0xfff771be,0xffedffca,0xffed47cf,0xfff5b898,0xfff17bc4,0xfff1091c,0xffef27d9,0xfff1b9fb,0xfff1ba3e,0xfff1efcd,0xffed2887,0xffedcb56,0xfff2190c,0xfff5bdce,0xfff5ff78,0xfff22425,0xfff2653d,0xfff3bcf6,0xfff90fba,0xfff8f3b3,0xfff892f1,
-0xfff29cd6,0xfff72858,0xfff95996,0xfff89bb3,0xfff66adf,0xfff259e2,0xfff0c392,0xfff14d67,0xfff4e609,0xfffcea2f,0xfff9a959,0xfff6079b,0xffef0de3,0xffe0be37,0xffdf6cbc,0xfff4cd26,0xffe1c0e8,0xffe4cc63,0xfff8a5dd,0xffee5a00,0xffef2f57,0xffea7a73,0xfff004f4,0xffec6aad,0xffe736ee,
-0xffd46875,0xffd417f9,0xffe3ed2d,0xfff485e8,0xfffa677e,0xffef55a9,0xfff02370,0xfff46ec6,0x0003bafe,0x00011c94,0xfffc5f23,0xffebb4a5,0xfff73fe1,0x0007db64,0x00071521,0xfffd9822,0xfff4c8bf,0xffeffb7c,0xfff59c3e,0xfffc1b3d,0x0001f121,0xfffe7c21,0x0000cb8e,0x00007b5f,0x0001f393,
-0xfff9f0ef,0x0001f3a0,0xffeb2376,0xffde0bf6,0xfff888c9,0xffe990fb,0xffe90284,0xffe14e8b,0xffee9f11,0xffebf685,0xffec2f9a,0xffcd083f,0xffd145a8,0xffedbd01,0x0005b555,0x00075b4d,0xffeb1fc2,0xfff0dfa8,0xfffc14a1,0x001e5fb6,0x00169c6a,0x00121e6f,0xfff3136e,0x000a8ee5,0x00015f15,
-0x000050e4,0xfff9b957,0xfff15228,0xfff275e7,0xffffb45a,0x00016212,0xffffa36a,0x00006ca8,0x00004ec7,0xffffaf76,0x0000c12d,0x000272e0,0x0000c548,0x000735fa,0xfff941d9,0xfff79022,0xffe986cf,0xffe4eeae,0xffdf284a,0xffee2f51,0xffe5fd30,0xffce3592,0xff8c1e24,0xff842e83,0xffbc253d,
-0xfff7c0ce,0x000bb11a,0xffddda70,0xffea1050,0x00007ffd,0x0034b39d,0x00231ceb,0x000714ea,0xffd0f9a8,0xfff406d9,0x0053e5d6,0x0027bf54,0x002a4f32,0x001383f2,0x00060f21,0x00000617,0xffff99cb,0xffffd745,0xffffe6ba,0xffffbdc7,0x000024a6,0xffff43d2,0xffff522f,0xfffe617f,0xffff0d1a,
-0x00007762,0x000ec2e4,0xffffbc27,0xffdd8ac7,0xffce426f,0xffcb537a,0xffe3e132,0x0022af06,0x007dbd29,0x00af4eb5,0x00a250cb,0x0060309d,0x0021fe60,0x00135b7b,0x0008159b,0x0013d92b,0x003b701d,0x002c9bb4,0x0053e931,0x00a63f6b,0x0076cefe,0x0025a58d,0x002997a3,0x000c3316,0x000adb38,
-0x00015a40,0xfffe864d,0x0000c528,0x00004345,0x00001be2,0x00003548,0x00000ffd,0x00005cd3,0x00009542,0x0000a6d4,0x000113b9,0xfffe63fb,0xfffb8818,0x00008888,0xfffb142c,0xffecedb1,0x0001e90c,0x0004e55b,0xfff5331f,0xffc4edf5,0xff97417e,0xff87e8cc,0xffcb4b60,0x00220bac,0x006f838d,
-0x002fdce4,0xfff1fd78,0xffc76c4b,0xff9b11bb,0xffb4f272,0xfff9415a,0x00157b95,0x0063dc54,0x009f0da5,0x008285d5,0x0012c99d,0xfff3ae65,0x000658bc,0xfffcc4c3,0x0000bca0,0xffff3e83,0xfffff2d8,0xffffb82e,0xffffb251,0xffff7fa7,0xffff6d06,0xffff8423,0x00004dac,0x0002d75d,0x00027a8e,
-0x000b15c0,0x001c29d4,0x00164b78,0x001721db,0x001f0695,0x00476831,0x007436b0,0x009a58a3,0x00314541,0xffd16fe9,0xff7def13,0x000f3ff0,0x0070f317,0x006f1408,0x00a11f9a,0x006138ae,0xffba5479,0x00136096,0xff66a0bf,0xfe7b0946,0xff8514c7,0xfff1f178,0xfff1b955,0x00031fdc,0x00005592,
-0x000115a0,0x00006fa6,0x00008ffe,0x00005643,0x00008dea,0x0000a55e,0x0000da3c,0x0000571a,0x00013017,0xfffcf2b2,0xfff21cdf,0xfff2f681,0xffed3f9c,0xffe20100,0xffdcde87,0xffcf6ea7,0xffc2fb4e,0xffb68d3c,0xffc07dc8,0xffc52567,0x0002b7cc,0x003a6b69,0x0088279f,0x0046feda,0xff89af00,
-0xff82fc6a,0xff9a206b,0xffb557b7,0xffd50c43,0xfff02032,0x00417489,0x0047c90d,0x002dd9c5,0x00189eb7,0xfff9e871,0xfffe7d87,0xfffe78b6,0xfffea330,0xffff1b23,0xffff36bc,0xffff008a,0xfffec2ee,0xfffe834c,0xffff4682,0xfffde3c8,0x000125d2,0x001a63c8,0x00342041,0x003df2db,0x003b8343,
-0x0032e0ef,0x00271c4a,0x0012d92f,0x00044b46,0xfff792d4,0xffe408d6,0xffd02619,0xffc36308,0xffbf548a,0xffcf8e23,0xffebf5ec,0xffdb1fed,0xffc173de,0xffb75310,0xffb768e1,0x0033a7c3,0x003960f7,0x002451d1,0x0019ab9d,0x000f8ed7,0x00096e86,0x0003d35a,0x00039bb4,0x0002af96,0x0001e21b,
-0x00017805,0x00021786,0x000289f3,0x00032319,0x00021f87,0x0002a6ff,0x0009ac53,0x00128690,0x0011583a,0x0009fd52,0x000114aa,0xfff675e0,0xffeb6aaf,0xffe1379a,0xffd4a441,0xffc567cf,0xffcebb9f,0xffd2bae0,0xffd11ce6,0xffd49c46,0xffd91e4e,0xffe8913b,0xfffb93a2,0x00141520,0x0027b6fd,
-0x00372dca,0xffe441cd,0xffdf72f0,0xffdec59e,0xffe0ba09,0xffdfb9a9,0xffe8006c,0xfff0a8e7,0xfff8b487,0xfffa90ec,0xfffce2db,0xfffd6773,0xfffc0626,0xfffa40ff,0xfff8ecfb,0xfff82860,0xfffa7310,0xffffa33b,0x00032ac2,0x000930dd,0x000ff8b0,0x000c779c,0x000b828d,0x0009cf56,0x000b663b,
-0x000d1fcc,0x000ddeae,0x0004de46,0xfffbd72f,0xfff3a3b5,0xfff0a90a,0xffee0a54,0xffe9118e,0xffea98e8,0xffe8ae94,0xffe559fb,0xffe234f8,0xffe5e59a,0xffddf5e1,0xffe2ed67,0xffe608e4,0xffeb67ff,0xffedb41e,0xffedbd6d,0xffefe68f,0xfff1ff6b,0xfff64bc1,0xfffaed21,0xffff51ae,0x0004827d,
-0x0009fd11,0x0011ab8e,0x001617d4,0x001a940a,0x001f5f19,0x00252b38,0x00264744,0x002541cd,0x00256e04,0x0024e1cc,0x0024a19b,0x0023aaaf,0x0024f9b7,0x001f1451,0x001ba34e,0x00179428,0x00123622,0x000c05a6,0x0005a5f0,0xfffede72,0xfff8c612,0xfff44ac7,0xffeda2cd,0x000beaf6,0x00086ff2,
-0x000d5a4d,0x000e93a7,0x00118b3c,0x000cfbaf,0x0010c994,0x00148d3e,0x0017c6ce,0x0019e3af,0x001c0159,0x001e2ca5,0x002044d8,0x0021d67a,0x001ddc0f,0x001c22d7,0x0023aa17,0x0021124e,0x0020ebf9,0x001fcdf9,0x0020ae5c,0x0020eb53,0x00214d2a,0x00219502,0x0021b19b,0x00224f7d,0x001f84f8,
-0x001d00db,0x001a4f4e,0x0017ffb3,0x00161f48,0x00147fd8,0x00133610,0x001168f3,0x000ef03a,0x000d2813,0x002106e6,0xfff08f82,0xfff68ac4,0xfff56764,0xfff3916a,0xfff2243b,0xfff1298d,0xfff17456,0xfff2d3ac,0xfff7d314,0xfff51566,0xfff3ee59,0xfff39497,0xffedb577,0xffedc83c,0xfff5e373,
-0xffee7213,0xffee1c6a,0xfff3a384,0xfff0334a,0xfff031e8,0xffef5c5c,0xfff1426a,0xfff114ea,0xfff02ea0,0xffecd96b,0xffedcb51,0xfff203ef,0xfff60671,0xfff5f404,0xffef827f,0xfff26d68,0xfff44908,0xfffa7917,0xfff84745,0xfff75dbf,0xfff1b420,0xfff67946,0xfff8990b,0xfff61dff,0xfff40e67,
-0xfff20f0c,0xfff1ad9d,0xfff037d0,0xfff4eb36,0x0000d073,0xfffb6da6,0xfff83a62,0xfff3ef09,0xffe77d56,0xffe51dc3,0xfff4b569,0xffe32209,0xffe5cf5c,0xfff7363d,0xffef3849,0xffedf07e,0xffe9aa94,0xffee3a91,0xffe96a8b,0xffe20fb3,0xffd3c40c,0xffd59bb7,0xffe55aa4,0xfff6ff3d,0xfffaaac3,
-0xffe8a930,0xffefd0e8,0xfff5e422,0x0006a756,0xffff1c5c,0xfff9591a,0xffea6f51,0xfff64572,0x00063084,0x0000d6ea,0xfffabc1d,0xfff47a8d,0xfff106c5,0xfff57bb2,0xfffd860b,0x0002a27b,0xffff9842,0x0001f82c,0x000239b8,0x0004b94c,0x00013f3f,0x00039702,0xfff648aa,0xffe84c58,0xfff65d6b,
-0xffeb6772,0xffe92e0f,0xffe0d182,0xffed6dfb,0xffe89467,0xffe40a2f,0xffcc4d78,0xffd2e433,0xffeefa38,0x00083897,0x0007dc97,0xffdf9164,0xfff2879b,0xffff295b,0x00246261,0x00123468,0x000c148d,0xffef9984,0x000747d4,0x00016fc2,0xfffa6321,0xfff6ea34,0xfff3b16e,0xfff7368f,0x00022a7c,
-0x00015e47,0xffff451a,0xffffebf5,0xffff98ea,0xffff2db3,0xfffeeb01,0xffffdc39,0xffff05c9,0x00061c63,0x00009090,0xfffa2cd8,0xffecbd6c,0xffe427d4,0xffdb785a,0xffe83c82,0xffdaa5b8,0xffbc79cf,0xff885eda,0xff89c74a,0xffc31e33,0x00008d05,0x0009b59e,0xffc94f37,0xffe6f9c8,0x00051507,
-0x003ba44a,0x001b5a56,0xfffc9a2a,0xffcece9c,0xfff33174,0x00421126,0x0021cf94,0x001fad20,0x000bfef9,0x0000d8bd,0x00009877,0xfffef076,0x00003fe9,0x00000f6e,0x00001ca1,0x000069be,0x00003915,0x000051ce,0xffff98ad,0xfffe439c,0xfffe9cba,0x0007ec41,0x00069dd3,0xffe925d7,0xffd911d0,
-0xffdd59f9,0xfff8acf2,0x0032c7b4,0x008be37a,0x00afc9e1,0x008e8db7,0x00577f9f,0x00286491,0x0023c900,0x0019bbeb,0x001f2568,0x003770a5,0x0035df83,0x005934c1,0x009c797b,0x006126f1,0x002f27a0,0x00288d06,0x00120ddc,0x000bb0a4,0xfffe79bc,0x0000539e,0x00003a97,0x00003693,0xffffda98,
-0x00000341,0xffffd0dc,0xffffebc5,0xffffecc5,0x00004ae0,0x0000df98,0x0000a582,0xfffbd7ab,0x0001758d,0x00036c21,0xfff62459,0xffff3f81,0xfff8ca28,0xffe2f924,0xffb714a8,0xff9783d7,0xff99f689,0xffe1d17e,0x0028cfc3,0x00571418,0x00261b19,0xfff13bc9,0xffc6ab86,0xffaf8582,0xffcd8ccb,
-0x000e6e33,0x002909a9,0x005231f5,0x0091cf08,0x0077d43a,0x000d21f7,0xfff9b3e5,0x0002c419,0xfffe254c,0x00006f0f,0xffffbcb0,0x00001bf7,0xfffffee6,0x0000002a,0xfffff55d,0xffff9dbb,0xffff9136,0xffff1297,0x0002b482,0xffffe8cb,0x0004ca9a,0x001672f0,0x0019c8ad,0x00224f22,0x002a3d91,
-0x0056d4db,0x00732b91,0x0078014d,0x000f24a5,0xffbe24fc,0xff89ea61,0x001621cc,0x006dd63c,0x005ed077,0x00857aa5,0x003f46cb,0xffa47ec8,0x00018408,0xff82e781,0xfe91d2b4,0xff8a801c,0xfffd7b08,0xffff06b2,0x0001185b,0x0000d992,0x0000455e,0x0000215a,0x00000161,0x00001011,0x00001941,
-0x00003cd5,0x000073ca,0x0000c731,0x000053cb,0x0001619c,0xfff31b5b,0xffea60fd,0xffdff9f3,0xffd6c0c8,0xffd395c8,0xffc834a4,0xffbf92b5,0xffb7ed16,0xffc405c1,0xffcaf675,0x000b5361,0x005454bf,0x007070b6,0x0022c5e2,0xff753b3d,0xff9bec61,0xffc63c54,0xffd86604,0xfff295bf,0xffe67321,
-0xfff896e1,0x0005799f,0x0007ddcf,0x000a9ae8,0xfff8f3c7,0x00005cb6,0xfffe826e,0x00002a21,0xffffc82f,0xfffff20d,0xffffaad8,0xffff97bb,0xffff01ba,0xfffed3c2,0xfffed662,0xfffd4a65,0x000fe472,0x00291f12,0x003593d0,0x00344754,0x002de74b,0x002371d6,0x000ee9ae,0x00004e42,0xfff4442b,
-0xffe7a47f,0xffd5e186,0xffcb7060,0xffcb2115,0xffde2b16,0xfff60829,0xffe3b851,0xffc9b74f,0xffb9c087,0xffc8c2d2,0x0035167a,0x003b9f38,0x002a737c,0x001b3428,0x000ffa47,0x0004a548,0x000384de,0x000107df,0x00005298,0xffffefc3,0x00002a9e,0x00008af0,0x0000d64b,0x0001c940,0x0002cfe1,
-0x00025649,0x0005f467,0x0012613c,0x0014ef77,0x0010b0f7,0x000714d0,0xfffc3711,0xfff0e018,0xffe8e751,0xffdcfdd1,0xffcbea2f,0xffd2756c,0xffd45bad,0xffd1ca86,0xffd4f24a,0xffd9e845,0xffed2f8a,0xfffd0871,0x00159c22,0x002724cc,0x00373ccd,0xffec0f90,0xffe8b603,0xffe73f5c,0xffe95d71,
-0xffe95613,0xfff13d0b,0xfff826cc,0xffff744d,0x0000478b,0x000170bb,0x00009b0d,0xffffb406,0xfffeab07,0xfffd15fe,0xfff8c584,0xfff84e33,0xfffb7ad6,0xfffd75b5,0x0002b0bb,0x000a5d05,0x0005a07b,0x0003df4c,0x00010e74,0x00003ab2,0xffffa9d8,0xfffe4e41,0xfff9960c,0xfff48254,0xfff08e97,
-0xfff08785,0xfff092d6,0xffedd546,0xffef81a6,0xffee1037,0xffec00e5,0xffe9d7c7,0xffe6bd56,0xffdfa55f,0xffe1848c,0xffe51a33,0xffe7fea6,0xffe9c693,0xffea21df,0xffec0246,0xffee45a6,0xfff1961f,0xfff50d70,0xfff84f5b,0xfffb7da8,0xffff6ae6,0x000714d7,0x000cc836,0x0012309d,0x00187036,
-0x0020894c,0x002275cc,0x002085aa,0x0020221d,0x001f307e,0x001e5d3e,0x001d2280,0x001d4b7f,0x00182a9a,0x0014cd8c,0x0010f407,0x000bd54f,0x00063ccb,0x0000e9ea,0xfffb642c,0xfff6a680,0xfff33b68,0xffed6226,0x0005af2d,0x00033aa7,0x0006d7ae,0x0007cf37,0x000ac916,0x000629b2,0x00095df8,
-0x000c417c,0x000eb81f,0x001092ab,0x00129c42,0x0014aadd,0x00170b6f,0x0018adf0,0x00159672,0x0013bb9e,0x001c64a5,0x00198321,0x001928f1,0x0018028d,0x00188b40,0x00187c38,0x00187b91,0x00187dc8,0x0018582d,0x00189fe4,0x00162db5,0x0013f9a9,0x0011b865,0x000fe89f,0x000e6dbc,0x000d0cb6,
-0x000bee90,0x000a441f,0x00080a99,0x0006a71f,0x0016e87a,0xfff1c594,0xfff743aa,0xfff586b4,0xfff4bd7c,0xfff344b9,0xfff20e2a,0xfff3303a,0xfff41119,0xfff9e037,0xfff5fc7b,0xfff4699f,0xfff3d040,0xffed853e,0xffed92fe,0xfff4dfa8,0xfff07b02,0xfff12451,0xfff3a962,0xfff19832,0xfff1e9e7,
-0xfff0cc46,0xfff215a9,0xfff1b02a,0xffefdd14,0xffee3737,0xffef52db,0xfff2f584,0xfff6cce7,0xfff66b19,0xffee9bac,0xfff367a0,0xfff5adbe,0xfffc5f52,0xfff8a6c8,0xfff788ad,0xfff2f102,0xfff74ac6,0xfff9ca29,0xfff627ef,0xfff4d5a8,0xfff3d6a6,0xfff40ac2,0xfff0a1fd,0xfff67f0c,0x0003bc9f,
-0xfffd7d3f,0xfffbd066,0xfff9f557,0xfff1c22f,0xffeec315,0xfff7a743,0xffe7c6c0,0xffe7c595,0xfff68546,0xfff1fcfa,0xffefbe77,0xffeafd9a,0xffeda580,0xffe82df6,0xffdf7877,0xffd6ba11,0xffda29aa,0xffe7fe15,0xfff8c183,0xfffa66fd,0xffe4f4b6,0xfff08517,0xfff7db0e,0x000946ce,0xfffe867a,
-0xfff8c944,0xffed51b7,0xfff7fe84,0x00063982,0xfffd7bd4,0xfffb5941,0xfff68062,0xfff3adbf,0xfff99c8d,0x00002a15,0x00016ce1,0xffffd784,0x0001a3b8,0x0001c02c,0x0004a570,0x00029051,0x00037a96,0xffff9a2d,0xfff4bba2,0xfff5f97c,0xffeeb47e,0xffec6d0e,0xffe3490b,0xffece83e,0xffe6a820,
-0xffde2220,0xffcfb4a1,0xffd77c2c,0xffefa4ab,0x00073108,0x0004bf87,0xffd79ca6,0xfff37832,0x00010d54,0x00275217,0x000e25f3,0x00082321,0xfff233ee,0x0006dc30,0x0003ea16,0xfff8b5bf,0xfff87cef,0xfff6ed3f,0xfffd6bbb,0x0002fdd9,0x000030a1,0xffff4caf,0xfffff471,0xffff7cd5,0xfffefdb7,
-0xfffe431b,0xffff2797,0xfffe79c8,0x00018e89,0x0003b392,0xfffdea81,0xfff1b332,0xffe72aa5,0xffdb6041,0xffe35ead,0xffd22d08,0xffb0d0fe,0xff8ecea6,0xff978200,0xffcb066c,0x000422c7,0x00044d39,0xffbca154,0xffe54d91,0x0007e9f8,0x003ede27,0x0015f2c6,0xfff8dfb8,0xffd831aa,0xfff8c45f,
-0x0029cce4,0x001bf570,0x001967b9,0x00078450,0x000019ad,0xffff2159,0xffff870e,0x00006daf,0x00000928,0x00003ee5,0x00008918,0x0000b7f7,0x00007b36,0x00008864,0xffff3b95,0xfffe138b,0x00024b35,0x0008728e,0xfff489f9,0xffe4e859,0xffed29e3,0x0008b5d6,0x00394cc6,0x0087c28b,0x009ca5a1,
-0x006d87cb,0x0041d168,0x0021c03b,0x002478bb,0x0021d653,0x0022d777,0x002a54b1,0x00333ec6,0x005063f6,0x00835ddd,0x00449291,0x0026247f,0x001e33e7,0x001444dd,0x00068f81,0xfffd932c,0x00015392,0xffffe2a5,0x00000c07,0xffffcd5d,0xffffea27,0xffffab96,0xffffae9c,0xffffb60e,0xffffe47d,
-0x000047f1,0x0001615b,0xfffd5043,0x00006e28,0x0006e49a,0xfffb61bf,0xfff74e6c,0xffe89816,0xffcf68b8,0xffa90445,0xff993c65,0xffacc1ce,0xfff2adf0,0x002a6ee3,0x00415e3d,0x001e5d6c,0xfff3f200,0xffcb5716,0xffc485aa,0xffe24136,0x00193909,0x002ba10c,0x0043dadc,0x0076c011,0x005c6cb4,
-0x0004b30f,0xfffb7959,0x00018db0,0xfffef183,0x000081e6,0xfffff48d,0x000034e1,0x0000311b,0x00003248,0x00002c8c,0xffffeaf4,0xffffe870,0xfffeefb8,0x00016874,0xffffb6e8,0xfffe7b05,0x001032bc,0x001d8076,0x002d4cf7,0x00394331,0x0066ac5e,0x0073ae48,0x005ce78c,0xffff5d38,0xffc082c7,
-0xffa7b4d9,0x0020d871,0x0066edda,0x00507aa3,0x0068cf85,0x002629fe,0xffab0214,0xfffdd07a,0xffa15b9e,0xfece4dcc,0xff9632bd,0x0004c142,0x0000f7d8,0x00008caa,0x00005939,0xffffc507,0xffffd5ab,0xffffc3d0,0xffffc2ba,0xffffc93c,0xfffff909,0xfffffbf7,0x0000ad9e,0xfffff256,0x00026614,
-0xfff8aa57,0xffe5ffc3,0xffd9f1ca,0xffd5370c,0xffd33a33,0xffca7b71,0xffc68870,0xffc42320,0xffd0ee8a,0xffdd9b01,0x001a34ca,0x0067263f,0x0053d11f,0x000318a7,0xff7a3d75,0xffba41e7,0xffec5d6a,0xfffbddd7,0x0000a2de,0xffee3124,0xffbeb98d,0xffd5c812,0xfff30863,0x00032812,0xfffbab5c,
-0x0000fcf1,0xffffc640,0x0000a631,0x00004d4f,0x000081ea,0x0000472c,0x00000abb,0xffffd6b3,0xffff17e2,0xffff8433,0xfffc3f92,0x0007b9c2,0x001e95d3,0x002eac73,0x002dfa1e,0x002931ff,0x002086d2,0x000decd7,0xffffd42f,0xfff2eff3,0xffeb0b7f,0xffdae926,0xffd2f631,0xffd3a16d,0xffe756d3,
-0xfffb0036,0xffefd5ba,0xffde8ac5,0xffd27d5d,0xffec7f60,0x00314e75,0x003a2dca,0x002bf7dd,0x00198866,0x000ad433,0x0000abda,0x0001a31b,0xfffe8e0d,0xffff6820,0xfffeeb89,0xffff1703,0xffff56df,0xffffecfc,0x00005d1e,0x00016e2c,0x000243db,0x00031f13,0x00112f13,0x0017e987,0x0016e644,
-0x000d8022,0x00033e4e,0xfff7511a,0xfff0d4d1,0xffe5cc87,0xffd466ba,0xffd77f10,0xffd76051,0xffd4672c,0xffd7de29,0xffddbf53,0xfff25e9c,0xfffd66bf,0x0012e0b2,0x00215450,0x003034b4,0xfff43d75,0xfff2576a,0xffefb8d8,0xfff2c29a,0xfff455c3,0xfff9c30a,0xfffed398,0x0003f3d7,0x00022960,
-0x00030046,0x00024429,0x0001ebc2,0x00007e1a,0xffffeccc,0xfffd0ce1,0xfff97dbc,0xfffa207f,0xfff9d09a,0xfffd34aa,0x00039acf,0xfffe4781,0xfffc7d49,0xfff9484d,0xfff701a4,0xfff4c61f,0xfff1ea39,0xfff15c27,0xffeffab5,0xffefb528,0xfff1a352,0xfff32dd5,0xfff21466,0xfff3e16b,0xfff314a1,
-0xfff219a5,0xfff1b68b,0xffea6848,0xffe4f165,0xffe41fbc,0xffe782e0,0xffe80f9e,0xffea07a6,0xffeb454b,0xffede76a,0xfff0ab4b,0xfff38555,0xfff5936b,0xfff7c612,0xfff90d5a,0xfffab99c,0xffff59ce,0x00047d29,0x000a66b6,0x0010ef70,0x001a9be1,0x001c628b,0x0019cbd2,0x0018db45,0x00177654,
-0x00160897,0x00149670,0x0013b0df,0x000fd829,0x000cfefc,0x0009def7,0x0005a63d,0x00014a0b,0xfffd48c5,0xfff95148,0xfff61223,0xfff3b643,0xffef4437,0x00002ee1,0xfffed043,0x00013c15,0x0001dab6,0x00044b03,0x00001067,0x000203e1,0x00034cb1,0x0004da32,0x00060d49,0x0007d416,0x0009a770,
-0x000c374f,0x000e2fbf,0x000cffdb,0x000ba3d3,0x00141e58,0x00115e1c,0x0010cde7,0x000f5364,0x000f92e9,0x000f2dde,0x000ed2f2,0x000e8f41,0x000e23c9,0x000dfc13,0x000c1f38,0x000a6a84,0x0008c0db,0x000788ef,0x00068eea,0x0005a05c,0x0004d4af,0x00038e76,0x0001e6fd,0x0000ed54,0x000c8222,
-0xfff20b27,0xfff6ade3,0xfff47e81,0xfff48aae,0xfff3c457,0xfff3a574,0xfff3b096,0xfff4bb15,0xfffbf090,0xfff75bb8,0xfff5b657,0xfff569f6,0xffefdef7,0xffeef2b2,0xfff44a99,0xfff14e8d,0xfff26c52,0xfff44f0b,0xfff2a800,0xfff2c4d0,0xfff1dc01,0xfff24fe1,0xfff1b8a2,0xffef7478,0xffef5a36,
-0xfff077d3,0xfff32a4a,0xfff66301,0xfff5bc5e,0xffedc3a2,0xfff33f06,0xfff58bb1,0xfffc0850,0xfff77c1c,0xfff65c69,0xfff31b89,0xfff6aece,0xfff86fbb,0xfff41ffc,0xfff59ad5,0xfff50239,0xfff50bb6,0xfff23df9,0xfff8e89d,0x00035667,0xfffe92fe,0xfffd9ed6,0xfffcfb64,0xfff80929,0xfff6e652,
-0xfffb4bbc,0xffef1785,0xffec3aba,0xfff4cf57,0xfff4b31f,0xfff1ebff,0xffeca018,0xffed3df9,0xffe7894f,0xffdef75e,0xffdb9113,0xffdfdc60,0xffea7989,0xfff8b46e,0xfff86eb8,0xffe28f87,0xffef872d,0xfff6ea47,0x00076c1a,0xfffb5ade,0xfff621ad,0xffee4382,0xfff6e876,0x0001d241,0xfff7a348,
-0xfffa8a96,0xfff76b70,0xfff76eda,0xfffdd331,0x00015447,0x00001663,0x00000fc1,0x00014088,0x00017adb,0x000361b5,0x0002bf48,0x0002be81,0x000300d3,0xfffe51a6,0xfff88a68,0xfff29122,0xfff07b8a,0xffe75c49,0xffecf132,0xffe5da6a,0xffdbbb26,0xffd643f4,0xffde2beb,0xffefee69,0x00034e30,
-0xfffec921,0xffd2e115,0xfff15dae,0xfffe14a4,0x002244df,0x00060990,0x0000f0c6,0xfff2087b,0x00020132,0xffff2f3c,0xfff2e061,0xfff8b21e,0xfffa0a8c,0x0000ff37,0x0001cbdc,0xffff9ca2,0xffffe342,0xfffff4a4,0xffff8464,0xffff44de,0xfffea5f6,0xfffec283,0xfffeca10,0xffff2844,0x0001e1d9,
-0x0001092e,0xfff7b4a6,0xffec594f,0xffdeb97a,0xffe1304e,0xffce2836,0xffae9c53,0xff9e8b99,0xffab96da,0xffd415b2,0x00039544,0xfffc2730,0xffb5a23b,0xffe0500a,0x0002d0d7,0x0036560a,0x000b14fb,0xfff19cda,0xffdcf17c,0xfff70ea4,0x0014917d,0x0012b373,0x001115a0,0x0002de2f,0xffff4854,
-0xffff9014,0xffffec99,0x00002a09,0x000006d1,0x00003e51,0x00006259,0x0000a116,0x000092bc,0x0000a6fd,0x00002488,0xffff52c7,0xffff7510,0x00063717,0xfffd38d8,0xffefb64e,0xfffb3e97,0x00142dce,0x0039a4a9,0x00774ac3,0x007ef6be,0x004ac361,0x0028855a,0x001676d2,0x002051c3,0x00265a52,
-0x00237fd5,0x001933c1,0x002bf19f,0x00435071,0x00671cf0,0x00290692,0x002570d3,0x0014d2c2,0x000fc225,0xfffecb1f,0x00008cf6,0x0000543d,0xffffeed3,0xfffff187,0xffffe13a,0xffffdd1f,0xffffbe96,0xffffb150,0xffffa71e,0xffffc1f3,0xffffc84c,0x0000cef1,0xffff760d,0xfffe519c,0x0005661c,
-0xfffd57c0,0xfff09578,0xffddb54a,0xffc6162f,0xffa86a2a,0xffa8119f,0xffc86b1a,0x00086d7e,0x00307808,0x0031e96e,0x00191980,0xfff77cd3,0xffd340ca,0xffda907f,0xfff79edb,0x00271b68,0x00325490,0x00353956,0x00605912,0x004245e4,0xfffbf37c,0xfffeb433,0x0000904f,0xffffb566,0x00004ab2,
-0x00001b6f,0x0000327b,0x000035c7,0x0000394b,0x00003d83,0x00001f3e,0x00001ec1,0xffff6d79,0x00003ff7,0x0000ee52,0xfffd0124,0x000ca347,0x00207049,0x0034aacf,0x00440b25,0x006a5ca0,0x00686630,0x003e3c75,0xffefcb05,0xffc35ca9,0xffc0d145,0x00235e95,0x00571d76,0x0041c3f9,0x0047824b,
-0x000b04c1,0xffb064a3,0xfff940a6,0xffb0f4a1,0xff19e1fd,0xffaf641f,0x000b14e6,0x00004851,0xffffe030,0x00000f05,0xffffa066,0xffffb6be,0xffffaf7a,0xffffb356,0xffffb734,0xffffc941,0xffffc9c0,0x00003389,0xffffedef,0x0001a181,0xfffe4adc,0xffe9196e,0xffda0dc6,0xffd7bcc3,0xffd52dde,
-0xffcda6b6,0xffcdb7af,0xffcebd10,0xffd9c02e,0xffedb2a0,0x0021be97,0x006650ba,0x00307ede,0xffe7c56f,0xff8ffbd8,0xffd25f12,0x0002d2ba,0x00127a1a,0xfffb78ff,0xfffd1bc2,0xff9b288e,0xffbf7438,0xffef8cac,0x000297d6,0xfffe84ab,0x0000ca4f,0x000062b1,0x0000c510,0x00008ac8,0x000097c4,
-0x000080b4,0x00004dd0,0x00006c1a,0xffff79e0,0x00004d8d,0xfffce18b,0x0001cad3,0x0017d08d,0x002808da,0x0025f2b5,0x00217ecd,0x0018e7df,0x00094f80,0xfffc6612,0xffef29ee,0xffea4656,0xffddc139,0xffdc97e0,0xffdd075f,0xffefef63,0x00010f20,0x0000d60e,0xfffa32f2,0xfff31a35,0x0010b325,
-0x0024f288,0x0030ee56,0x002a1c04,0x001404e0,0x00026e22,0xffffce84,0xffffc63e,0xfffe5323,0xfffeba1f,0xfffeb085,0xfffec9d6,0xffff0058,0xffff3962,0xffff8d14,0xffffef69,0x0001fc2a,0x00005143,0x000d4201,0x0017ad9a,0x0018fcf9,0x00110c59,0x0008cce2,0xfffe05d2,0xfff8f445,0xffeeef61,
-0xffde28c5,0xffddf4fa,0xffdc9ad8,0xffda33a0,0xffde3631,0xffe3c60e,0xfff54833,0xfffaecb5,0x000b686d,0x0015d970,0x002062dc,0xfffc6f4d,0xfffc5627,0xfff7e0ae,0xfffbc235,0xfffd1b2e,0xffff15fd,0x0002ace6,0x0003b803,0x000315b8,0x00030b32,0x0002e084,0x00026cc5,0x0001b624,0x00016be7,
-0x00004d73,0xfffd074b,0xfffab9c3,0xfff823ee,0xfff895bb,0xfffcb194,0xfff84362,0xfff720fa,0xfff49711,0xfff1a656,0xffeecc0d,0xffeb8de5,0xffed3dbb,0xffedc9a3,0xffef15a7,0xfff27c94,0xfff533ab,0xfff6153e,0xfff7ca9d,0xfff7a5e5,0xfff80b86,0xfff9cde0,0xffeedee5,0xffeb762c,0xffe96bfe,
-0xffec282f,0xffebffed,0xffee7894,0xfff10786,0xfff3f2a6,0xfff6eba8,0xfff72302,0xfff81c48,0xfff912d3,0xfffa3dac,0xfffacd17,0xfffbccdb,0xfffe6e74,0x00036588,0x00095086,0x0013137a,0x0013fb44,0x00113510,0x000feba3,0x000e58c5,0x000cb0e3,0x000b3ef6,0x0009c6fd,0x0007534a,0x00055e49,
-0x00033b7b,0x00004546,0xfffd43d0,0xfffa8fe2,0xfff82821,0xfff659d4,0xfff4b108,0xfff1da81,0xfffc4997,0xfffbb816,0xfffcbb7a,0xfffcf9bd,0xfffe5a35,0xfffb43d8,0xfffbbabb,0xfffbb5fe,0xfffc58d4,0xfffde552,0xffff74a5,0x0000e455,0x0002893e,0x0004290d,0x0004a888,0x00045935,0x000b8b32,
-0x00091e83,0x00086fd5,0x000711ae,0x0007210d,0x00068b4e,0x0005fac8,0x00058df7,0x0004fce2,0x0004839d,0x00036469,0x00024e46,0x000154a4,0x0000ab66,0x000033c1,0xffffc2d4,0xffff436a,0xfffe6f90,0xfffd7b2e,0xfffcd758,0x0003b778,0xfff4008e,0xfff76cb3,0xfff56be7,0xfff548f5,0xfff48bf1,
-0xfff44eef,0xfff514ef,0xfff56718,0xfffc32ce,0xfff7f1f3,0xfff6611a,0xfff63400,0xfff1cfc8,0xfff0bc87,0xfff4122f,0xfff215f7,0xfff3f0ac,0xfff42f8e,0xfff489b2,0xfff4c99c,0xfff4ac6a,0xfff4337c,0xfff3950e,0xfff1590e,0xfff25fc0,0xfff35fbc,0xfff503b2,0xfff770a5,0xfff6b12d,0xffefb33a,
-0xfff4f10d,0xfff71127,0xfffce0c9,0xfff83cf9,0xfff733ef,0xfff513d2,0xfff79a5e,0xfff87ddf,0xfff40545,0xfff5aba4,0xfff6e240,0xfff58d31,0xfff53ad1,0xfffc0b42,0x0002c98d,0xffffa3f8,0xffffe8f0,0x00000742,0xfffe43f7,0xfffdc2f7,0xffff58eb,0xfff7e117,0xfff348ab,0xfff43682,0xfff78f9f,
-0xfff4da5e,0xfff05a77,0xffef0196,0xffe9ab1f,0xffe26927,0xffe31fab,0xffe772e9,0xffee5c51,0xfff94adb,0xfff7f93a,0xffe4e31c,0xfff13d11,0xfff80f15,0x00068a31,0xfffb0ef3,0xfff6a54a,0xfff1a3a8,0xfff79624,0xffff197e,0xfff3eeb0,0xfff9677d,0xfff84242,0xfffc0f78,0x0001e153,0x0001c091,
-0xffff8e28,0x00000b8d,0x0000632c,0x00002904,0x0000fdea,0x00010a20,0x0001282a,0x00029476,0x00032f81,0xfffdd30a,0xfff70189,0xfff59590,0xffedbb23,0xffef2db1,0xffe86066,0xffded77c,0xffe0759e,0xffe7a772,0xfff2788d,0x0000de22,0xfffb6f34,0xffd688ce,0xfff30073,0xfffdfbf7,0x001d69ab,
-0x0002262f,0xfffe4442,0xfff52be3,0xffff47e8,0xfffcac56,0xffeee161,0xfff84305,0xfffe0704,0x000267f8,0xffff8f72,0xffff2f54,0x00000f19,0x0000007d,0xffffce99,0xffffd262,0xffff882d,0xffff7b8b,0xffff66a6,0xfffebefd,0xffff3046,0x0001a97c,0xfffd866f,0xfff2fb41,0xffe563e3,0xffe1ef67,
-0xffcfa5e1,0xffb5b476,0xffb425e9,0xffc27c3f,0xffddfbf9,0x0001ba3f,0xfff70767,0xffbb392f,0xffe22d02,0x000137ed,0x002e0400,0x0006481a,0xfff1a41e,0xffe64470,0xfff7c76e,0x0009ad0a,0x000f9a95,0x000a23af,0x0000ee60,0xffff0cb2,0xffffccfb,0x00007bf1,0xfffff8ca,0x00000a71,0x000015de,
-0x00001fb1,0x00003a2c,0x00004075,0x0000578a,0x00008ca3,0x00004890,0xfffeec60,0x00031e6d,0x0002347f,0xfffb9b89,0x0008b147,0x001eb58b,0x003a00c6,0x006437af,0x00628b16,0x0032442d,0x001867b1,0x00104f70,0x001bebfd,0x00292ab1,0x00234170,0x0009e721,0x0022ddd0,0x0034f483,0x004c8840,
-0x001852c8,0x001d51b3,0x0010f462,0x0009c349,0xfffc1882,0x000239fc,0xffff149e,0x0000374f,0xffffbf57,0x00000a06,0xffffe59f,0xffffed4b,0xffffdf7f,0xffffd918,0xffffd5b3,0xffffac2e,0xfffffd2b,0x00005328,0xfffe6135,0x00023d84,0xfffc5716,0xffea6915,0xffd69bca,0xffc2052c,0xffaed80d,
-0xffb8f9d5,0xffdd772a,0x00134b3a,0x002de597,0x00223ef2,0x0010121c,0xfff7ecef,0xffdc109d,0xffeacae4,0x0003d811,0x00279139,0x002d6419,0x00241d1c,0x00446ba6,0x0027462e,0xfff7ae90,0x000136b8,0xffffd1a3,0x00003a8e,0x00001d67,0x000016fb,0x0000158b,0x00001688,0x00001afd,0x000018ca,
-0x000029e6,0x00001aad,0x00002fcf,0xffff3e67,0x00017cdc,0xfffdefe8,0x000a05f1,0x0020298c,0x0034f8d5,0x00450777,0x005fba6c,0x0053780b,0x00233586,0xffe5c76b,0xffca16ba,0xffd801f3,0x0020d322,0x0042ea67,0x00309cf5,0x0026886b,0xfff5e882,0xffbea574,0xfff7e568,0xffc1c8d5,0xff6285b3,
-0xffccad9b,0x000fa031,0xfffc56d6,0x0000f819,0xffff5515,0xffffe855,0xffffc221,0xffffe0ca,0xffffd81a,0xffffe0f6,0xffffd9a3,0xffffde37,0xffffccc4,0x000017d4,0x00000fe1,0x00021a79,0xfff0219c,0xffdeaf9a,0xffde4595,0xffdaeaa0,0xffd4d480,0xffd8511e,0xffdbfa26,0xffe46dfa,0xffffc2dc,
-0x0028609a,0x005b2a93,0x00144de9,0xffd977fc,0xffaecdfb,0xffe3fc26,0x000e4a01,0x00265ced,0xfff60756,0x00127838,0xff970912,0xffc1d4c4,0xfffc13c6,0x00009850,0x0000491b,0x00007fbf,0x00008bfd,0x000055a9,0x000051eb,0x00004097,0x00004388,0x0000314c,0x0000580b,0x00001562,0x00004796,
-0xfffee490,0xfffdb19c,0x00107407,0x0020b919,0x001d1cb8,0x001902b3,0x0010f98d,0x0005c9e9,0xfffb1db3,0xffee39de,0xffeb6847,0xffe1ef3f,0xffe4f93d,0xffe5455f,0xfff6bf76,0x00077087,0x0010fe95,0x00147134,0x00157ec2,0x00304336,0x00162fa2,0x0025807e,0x002334bf,0x00098cc0,0xfffe2fde,
-0xffff6827,0xfffeb67d,0xffff0831,0xffff3637,0xffff66ef,0xffff6e60,0xffff89d7,0xffff7de1,0xffff94c3,0xffff409e,0x000074c1,0xffffe768,0x0007638d,0x00147f33,0x0017a910,0x0011a1ac,0x000be2ba,0x00033cad,0xffff9c2c,0xfff74de2,0xffe92f22,0xffe67611,0xffe47fe9,0xffe2a304,0xffe67ea9,
-0xffea9b1b,0xfff689c1,0xfff6919e,0x0000a386,0x00075fcc,0x000e41e9,0x0003aed8,0x00044efe,0xffff03a9,0x0001f144,0x00014823,0x0002612d,0x0002d236,0x000211ce,0x0001a654,0x000142a8,0x00012954,0x000106e2,0x0000f243,0x00011f0a,0x00011241,0x00009aa4,0xfffd9308,0xfff87d18,0xfff6016b,
-0xfff77545,0xfff49ec3,0xfff3e0ef,0xfff22bfa,0xffef7c79,0xffece569,0xffea08b6,0xffec6fdc,0xffedb3d6,0xffef5bbe,0xfff39e7c,0xfff72c5d,0xfff9ec10,0xfffbf3b7,0xfffcc2b1,0xfffe6221,0x0001690f,0xfff2917a,0xfff1083c,0xffeee2cd,0xfff160b6,0xfff1c348,0xfff44fdd,0xfff85b81,0xfffad006,
-0xfffd09f8,0xfffcbd6e,0xfffd2b1b,0xfffd4ab3,0xfffdcfa2,0xfffd6ec5,0xfffc621c,0xfffbc3db,0xfffdd4f5,0x000246d1,0x000a9a2d,0x000af73b,0x000865a3,0x00070828,0x00059064,0x0003e7cb,0x00029816,0x0001066e,0xffffefa7,0xffff02bd,0xfffde3ed,0xfffc28f5,0xfffa4b50,0xfff89009,0xfff74b76,
-0xfff67cc1,0xfff55321,0xfff3df90,0xfffa0a27,0xfff9ee5b,0xfffa5227,0xfffa1e93,0xfffa816a,0xfff86748,0xfff7f18e,0xfff7a2b0,0xfff7dae4,0xfff8e8cc,0xfff9f35f,0xfffae8bf,0xfffbefb0,0xfffd30c3,0xfffe23ab,0xfffe9d40,0x0004698a,0x0002ba38,0x0002060f,0x0000a6a7,0x0000904e,0xfffff2d8,
-0xffff5136,0xfffedde0,0xfffe4c3c,0xfffda830,0xfffd237e,0xfffc8d3c,0xfffc21da,0xfffbe449,0xfffbd829,0xfffbd6c6,0xfffb9b8b,0xfffb30fc,0xfffad544,0xfffa76bd,0xfffd78a2,0xfff623b2,0xfff89fd4,0xfff6c2ce,0xfff70cee,0xfff70cb2,0xfff61e51,0xfff6f971,0xfff81be3,0xfffde627,0xfffa8c14,
-0xfff96df7,0xfff96d24,0xfff6a1db,0xfff5c1ce,0xfff76c74,0xfff5f6f6,0xfff63a86,0xfff5213e,0xfff7c8b2,0xfff79790,0xfff7267b,0xfff664be,0xfff5bcd7,0xfff3ce57,0xfff55cdc,0xfff6237d,0xfff6e594,0xfff87254,0xfff7bb3f,0xfff26e04,0xfff698e0,0xfff85465,0xfffd10ec,0xfff917ed,0xfff865be,
-0xfff78821,0xfff8e8d7,0xfff99bf7,0xfff56605,0xfff7936e,0xfff8a9e9,0xfff87aac,0xfffb565b,0xffff72e4,0x00013f96,0x00003c26,0x0000796c,0x00009eb1,0x00005143,0x0000201e,0x0000f4d6,0xfffe5456,0xfffbe7a1,0xfff7c7ac,0xfff9b5d3,0xfff8d1e1,0xfff443fa,0xfff19032,0xffed11d0,0xffe78918,
-0xffea8f73,0xffee4679,0xfff20c57,0xfff96c3c,0xfff7b241,0xffe937c9,0xfff2ebb0,0xfff87f85,0x00043fd2,0xfffaf93b,0xfff80304,0xfff6161b,0xfff95a16,0xfffdf611,0xfff34df9,0xfff9ebce,0xfffc3483,0x00009b13,0x000192ab,0x0000812e,0xffff8c87,0x00000ae5,0x00000f82,0x00000eb9,0x00005399,
-0x000045e7,0x00001227,0x0000af6d,0x0001d8e2,0x000178dd,0xfffd24ff,0xfffa5946,0xfff41019,0xfff20e0c,0xffec52d9,0xffe432b1,0xffe9d75a,0xffef95ec,0xfff4a95f,0xfffdcdc8,0xfff86f98,0xffdd7375,0xfff3a906,0xfffc2cb3,0x0015586a,0xfffed1b0,0xfffcfafa,0xfffa0280,0xfffe6ad4,0xfffcef82,
-0xffef4bc4,0xfffb2e17,0x0000b61f,0x00004a00,0xffff339d,0xffffd1ec,0x000029d8,0x000002e4,0xfffff089,0xfffff781,0xffffd235,0xffffd6ee,0xffffe8bb,0xffffbeaa,0xffff11fd,0xffffd525,0x0000998d,0xfff9f0ee,0xffed0f40,0xffe52071,0xffd5981f,0xffc24c0e,0xffc9aa90,0xffd6da56,0xffe6dafa,
-0xfffe68c6,0xfff36f12,0xffc6d53f,0xffe45bcc,0xfffd508c,0x0021ad7e,0x000266c1,0xfff493be,0xfff2494b,0xfffb4764,0xfffef9b8,0x000a2ea7,0x00063f35,0xfffe61ef,0x000042d6,0x00003b68,0x000032a1,0xffffe289,0x00000740,0x00000410,0x00000aa9,0x00001462,0x00001853,0x00000ad0,0x000029bc,
-0x00006ea3,0x000006a6,0xffffc295,0x00040f77,0x000521c6,0x00107b41,0x00222151,0x00343e63,0x004b6c22,0x004415a1,0x001db9ad,0x000b3f6e,0x0009fa00,0x001588ce,0x00262e20,0x001e5600,0xfffca96b,0x0016e590,0x00233338,0x00309616,0x0008b571,0x0015cc95,0x000ce3e6,0x00025db0,0xfffd4a75,
-0x0001d73a,0xfffee7a0,0x00005b1d,0xffffd061,0x0000147d,0xffffeef6,0xfffffce3,0xfffff0af,0xfffff4de,0xfffff313,0xfffff3e8,0xffffa85d,0x000070fe,0xffff2b0c,0xffffed59,0xfff921a5,0xffe653c7,0xffd47226,0xffc44132,0xffbabfe2,0xffca163b,0xffec2fd8,0x0016ab41,0x0027103b,0x0015e21d,
-0x0009ad76,0xfff9a278,0xffe566d4,0xfff92de5,0x000d7f11,0x00250fba,0x0026bdc2,0x0015a6e5,0x002bc257,0x00106ebe,0xfff9cfa3,0x00020b16,0xffff8ce0,0x000042fc,0xfffff60a,0x00000c30,0x00000812,0x00000a3a,0x00000d13,0x0000079e,0x000010f8,0xfffffe04,0x00004f11,0xffff9ba3,0x000084ab,
-0x0000158b,0x00081fa1,0x001d189c,0x002f5321,0x003e5122,0x004bfd89,0x003a9b06,0x000e2352,0xffe1fd24,0xffd3e012,0xffea7884,0x001bd645,0x002f39a1,0x00211811,0x000cffaf,0xffe8dfb9,0xffcdc26a,0xfff74551,0xffcdbda4,0xff9b9d93,0xffed1157,0x000acb51,0xfffba17d,0x00017aef,0xffff3621,
-0x000038ec,0xffffd045,0xfffffc4e,0xffffe6ef,0xfffff2df,0xffffec0f,0xfffffb11,0xffffda88,0x00000be5,0xffff78c2,0x00025ca1,0xfff8adb5,0xffe669d0,0xffe6cdbe,0xffe30eef,0xffdeb0d4,0xffe35e1e,0xffe898d2,0xffef56ff,0x000dd676,0x002909c0,0x00451422,0xfffeb948,0xffd4ce4d,0xffcb161f,
-0xffef5e53,0x0010e385,0x002d7e83,0xfff00c48,0x00235881,0xffab3c85,0xffda12cb,0x0005fe2c,0xfffe5781,0x00016c98,0xffffab68,0x0000665e,0x000000b8,0x0000341d,0x00001c5b,0x000023ef,0x00001b8e,0x00001544,0x000029e0,0x00000d71,0x0000b35c,0xfffc6325,0x000954c1,0x001915d3,0x00143101,
-0x00107672,0x0008e096,0x0001cb6f,0xfff9cec8,0xffeeea0f,0xffec9cc1,0xffe6956c,0xffed23a0,0xffede431,0xfffd75cd,0x000da6da,0x001db373,0x002757a1,0x002ef72d,0x004005ca,0x00071843,0x00181197,0x0018b834,0xffff3676,0xfffe5638,0xffffdbde,0xffff4d7e,0xffffe0b7,0xffffa9bc,0xffffbf4d,
-0xffffb40e,0xffffc062,0xffffc95a,0xffffcfe6,0xffffc74d,0xffff9e32,0xffff97a6,0x0001f88c,0x000e87b7,0x00141c93,0x00100ccc,0x000ceba2,0x00066354,0x00037789,0xfffcb895,0xfff23ca3,0xffee78a6,0xffecd65c,0xffebf00a,0xffee6c2e,0xffefdbd3,0xfff4bfca,0xfff19926,0xfff65b15,0xfffa5ee9,
-0xfffdd587,0x0008f948,0x000a371d,0x00048035,0x0003eee0,0x00018080,0x0001c098,0x0000ef46,0x00007a6f,0x0000803e,0x0000854e,0x00008ad6,0x0000783c,0x00006322,0x00005337,0x0000804f,0x0000e017,0x0001057b,0xfffbc1a5,0xfff6a765,0xfff5b392,0xfff45766,0xfff3b4c4,0xfff2c17e,0xfff0ac6a,
-0xffeeaf82,0xffec6f01,0xffee4c8d,0xffef1ea9,0xfff00de1,0xfff471bd,0xfff853fc,0xfffc1301,0xfffedd06,0x0000d012,0x0003a4f7,0x00073cc1,0xfff59eeb,0xfff589d5,0xfff384e0,0xfff771a3,0xfff86990,0xfffae8b8,0xfffe8cec,0xffff796e,0xffffa41d,0xffffa4cd,0xffffab3a,0xffffa9e7,0xffffb431,
-0xffffaff7,0xffff0711,0xfffd839a,0xfffc167c,0xfffd5dde,0x000313a9,0x0002d6eb,0x0000deff,0xffff8c14,0xfffe54a3,0xfffcd9ad,0xfffbc33a,0xfffa67f3,0xfffa50c9,0xfffa3b01,0xfff9da70,0xfff909d4,0xfff7f766,0xfff6e6c4,0xfff68db2,0xfff6805d,0xfff5e1c0,0xfff58af1,0xfff94279,0xfff99493,
-0xfff937c4,0xfff8750b,0xfff819d2,0xfff7cd42,0xfff7790d,0xfff77cdf,0xfff7b636,0xfff84085,0xfff8b84f,0xfff93fe0,0xfff9bf4f,0xfffa6d22,0xfffad46a,0xfffadbd9,0xfffe764c,0xfffe0802,0xfffd43fd,0xfffc2cf7,0xfffbf43c,0xfffb6b46,0xfffad609,0xfffa6e1d,0xfff9ef00,0xfff94189,0xfff92fa7,
-0xfff8fde5,0xfff90213,0xfff91045,0xfff94f2e,0xfff99260,0xfff99a46,0xfff98813,0xfff99e9f,0xfff986c7,0xfff9a306,0xfff8ab82,0xfffa43eb,0xfff8dce1,0xfff93f4f,0xfff8ea38,0xfff75389,0xfff9708a,0xfffa906f,0xfffe1de7,0xfffc4fbd,0xfffbc14a,0xfffbd62f,0xfffaa375,0xfffa3e83,0xfffad430,
-0xfff9a7e3,0xfff97577,0xfff618aa,0xfff9bece,0xfffa3c6d,0xfff9d68d,0xfff90311,0xfff87e81,0xfff71402,0xfff88e53,0xfff91103,0xfff94367,0xfffa112b,0xfff9886f,0xfff6312b,0xfff8f531,0xfffa27c0,0xfffd7145,0xfffa9671,0xfffa3081,0xfffa1069,0xfffa9889,0xfffaa633,0xfff7b898,0xfff91aee,
-0xfffae03a,0xfffcb748,0xffffd76f,0x0000fcb4,0x00012f26,0x0000e8dd,0x000143b4,0x00014831,0x00016e03,0x00015a76,0x0001b883,0x00014fb6,0x00005822,0xfffcd6d1,0xfffc3b88,0xfffb2aec,0xfff84634,0xfff549d4,0xfff20cb6,0xffee7e8d,0xfff1ed24,0xfff497aa,0xfff62bbc,0xfffa554a,0xfff8d1c3,
-0xffef9c2a,0xfff5f8db,0xfff9d48c,0x0001ebdd,0xfffb907f,0xfff9cea2,0xfff98f77,0xfffacbc6,0xfffd0fcf,0xfff495bc,0xfffb3c48,0xffffcb7b,0x0001ab81,0x0000791c,0xffffe2df,0xffff9f75,0xffffb6df,0xffffa760,0xffff8a5a,0xffff966a,0xffff900f,0xffff8cc7,0xffffad1a,0x00008336,0x00014479,
-0x00007db2,0xfffdb88b,0xfff92aa8,0xfff6210b,0xfff1f34e,0xffec1378,0xfff2695b,0xfff64b4b,0xfff7ab98,0xfffc57ae,0xfff82b98,0xffe7c86e,0xfff6506b,0xfffc05b6,0x000d1ede,0xfffd6290,0xfffcd4f6,0xfffd15f4,0xfffd9ee3,0xfffbad14,0xfff12b56,0xfffea85e,0x00010d75,0xffff628a,0xffffb7cc,
-0x000002e2,0x00002b62,0x00002075,0x000025b8,0x00002fa1,0x00002d10,0x00002f04,0x000034c3,0x00000f61,0xffffd547,0xffff4d3b,0x0000c9a8,0xfffe2c50,0xfff4ad02,0xffeb6fd8,0xffe06c9c,0xffd4257b,0xffde4428,0xffe8444d,0xffef9ab4,0xfffc65f9,0xfff3cc51,0xffd7d918,0xffeaa8ac,0xfffb9fdd,
-0x00149534,0xffff7dab,0xfff76dc0,0xfff9485b,0xfffbe8ba,0xfffc43a6,0x00054e3d,0x000163a2,0xffffe6b4,0xfffff8b0,0x0000335f,0xfffff339,0xfffff222,0xffffed90,0xffffeea6,0xffffe96e,0xffffeaa7,0xffffe8e2,0xffffe8e2,0xfffff83c,0x000017b3,0x000049a7,0xffffb036,0x000149b4,0x0009db32,
-0x00125c39,0x001e8176,0x00291379,0x003088c8,0x0027a2f6,0x000eb1f5,0x00031f4f,0x00051723,0x000e2658,0x001defb4,0x00175960,0xfff85de9,0x000edf65,0x001602ac,0x001ba425,0x0001c2e1,0x000f5e00,0x000a3056,0xfffdd2d3,0x00008931,0xfffff2be,0xffffcff4,0x0000133c,0x00000000,0x00000e42,
-0x0000082e,0x00000ceb,0x00000b87,0x00000cf2,0x00000ae4,0x00000777,0xffffe6f9,0xffffe993,0x00002444,0xffffb908,0xfff700c1,0xffe81e7e,0xffdb0c86,0xffd13a63,0xffcee966,0xffdd9512,0xfff75ea2,0x00145485,0x001d1922,0x000d3b31,0x0004761d,0xfffaad24,0xffee21ca,0x000164a8,0x000fb2fa,
-0x001ce76d,0x001beda8,0x000b1253,0x00166b6c,0x00027c44,0xfffde75c,0x0000e7c1,0xffffc571,0x00001763,0xfffff13d,0xfffffa17,0xfffff79d,0xfffff658,0xfffff855,0xfffff3e3,0xfffffdff,0xffffef04,0x000027c9,0xffffe7cd,0x0000014c,0x000048e7,0x0006d1e1,0x0017429d,0x0024531f,0x002f434d,
-0x00338871,0x0023933c,0x00031b15,0xffe6a9bf,0xffe13ff9,0xfff7b1f3,0x001414ad,0x001d2abc,0x0014064e,0xfffd2e07,0xffe6189c,0xffdeec5e,0xfff8c350,0xffdcd51d,0xffc71d5f,0x0000fe9e,0x0002691d,0xfffe8fa9,0x00009821,0xffffb789,0x00002a52,0xfffffc0a,0x00001114,0x00000897,0x00000cdd,
-0x00000901,0x00000e42,0xfffff902,0x000014b2,0xffff7e54,0x00013e25,0xfffe4074,0xfff0828f,0xfff030c5,0xffed4240,0xffeac326,0xffeeb65a,0xfff41834,0xfff9f7c4,0x00148c66,0x00235e68,0x002c8ea4,0xfff56ac0,0xffdc2b54,0xffe394ae,0xfff90df7,0x00100e61,0x0028ae3f,0xfff1214a,0x0027c95d,
-0xffceafd3,0xfff60771,0x0004255f,0xfffe8479,0x0000c418,0xffffb387,0x00000d16,0xffffdf50,0xfffff2de,0xffffe909,0xffffeb71,0xfffff203,0xffffe18a,0x000014db,0xffffcc68,0x0000dac6,0xfffe3923,0x0001ed38,0x0011693f,0x000c40e5,0x0009b667,0x00035f5b,0xffff2c86,0xfff9c72b,0xfff1bde3,
-0xfff066a0,0xffed592a,0xfff40a8d,0xfff5d72d,0x0002d492,0x0011bf1e,0x00214e27,0x002bc913,0x00362600,0x003beaca,0xfffca6a9,0x000cbab1,0x000a0efc,0xfffcb9da,0x00006b69,0xffff6fb6,0x0000275e,0x00002295,0x00002858,0x00002709,0x00002e5c,0x0000257c,0x00002d1c,0x00001977,0x00003126,
-0xffff9b05,0x0000174a,0xffff0cf2,0x0006d5de,0x000f6c25,0x000c3d30,0x000b98a4,0x000732f1,0x0004d023,0xffffe076,0xfff92017,0xfff5c073,0xfff48a2e,0xfff410f2,0xfff4e333,0xfff46aba,0xfff509a2,0xfff08f9d,0xfff17de9,0xfff37495,0xfff4e06f,0x000a3a37,0x000c6b43,0x0005ae6d,0x0000ee95,
-0x00015b8d,0x00006469,0xffffcfa7,0xffff8d45,0xffffadab,0xffff9a9b,0xffff946c,0xffff9b7f,0xffffa784,0xffff9863,0xffffc441,0x00002551,0x00011211,0x00003f6f,0xfff9ddce,0xfff72d7c,0xfff6f76e,0xfff657d5,0xfff5e23b,0xfff46d92,0xfff31022,0xfff1790a,0xfff283c2,0xfff2d14d,0xfff31f29,
-0xfff6dacc,0xfffa501c,0xfffdf33b,0x0000cebf,0x00033f46,0x000625b1,0x000980af,0xfff8fa89,0xfff929b9,0xfff8c73f,0xfffcf1ec,0xfffd4662,0xffffb650,0x00013dc9,0x00018a17,0x000125e7,0x0001454d,0x00012dd6,0x000139d8,0x00012168,0x0001480b,0x00013034,0x0000048b,0xfffe3e24,0xfffbe756,
-0xfffda646,0xfffdf896,0xfffcb41e,0xfffbb04d,0xfffaea4c,0xfff9e225,0xfff9312e,0xfff84c64,0xfff8c6ce,0xfff92f1e,0xfff9427f,0xfff90e63,0xfff88ac8,0xfff7fde5,0xfff8140e,0xfff8503e,0xfff80e4b,0xfff83aa2,0xfffa48ca,0xfffaccaa,0xfff9aaae,0xfff8c982,0xfff83198,0xfff9b306,0xfff9ede3,
-0xfffa4ce4,0xfffa555e,0xfffa885f,0xfffaa646,0xfffacd34,0xfffae962,0xfffb27a8,0xfffae34a,0xfffa653b,0xfffaa5f5,0xfffb637a,0xfffb7ea0,0xfffab0a0,0xfffa5fa2,0xfffa1302,0xfff9a652,0xfff96095,0xfff90a9a,0xfff8828e,0xfff8aa8d,0xfff8b353,0xfff8efb3,0xfff92147,0xfff97c79,0xfff9d90b,
-0xfff9fb6a,0xfffa13c6,0xfffa58cf,0xfffa62dd,0xfff8da69,0xfffaed30,0xfffbc1e6,0xfffb1fb3,0xfffb27bc,0xfffac5e1,0xfffa5122,0xffff0b48,0xffff0237,0x0000030f,0xffff7628,0xffff532d,0xffff55d1,0xffff0772,0xfffee24f,0xffff1117,0xfffef33f,0xffff4ead,0xfff9b21b,0xfffbaa76,0xfffc2503,
-0xfffbeabe,0xfffb3c62,0xfffaec90,0xfffa1b7b,0xfffb1534,0xfffb55b8,0xfffb496c,0xfffb8a01,0xfffb3905,0xfff99cda,0xfffafe3b,0xfffba3c8,0xfffd74dc,0xfffbe400,0xfffbc828,0xfffc1cb1,0xfffc1ca6,0xfffc36c7,0xfffa0c7d,0xfffac03e,0x0000087c,0x0000f668,0x00010447,0x000011cc,0x00000f35,
-0x0000059c,0x00002dd4,0x00002b55,0x000056db,0x0000592b,0x000074bb,0xfffffb9e,0x00010e37,0x0000d357,0x00008f8d,0xfffd2cbe,0xfffb37da,0xfff8f9ea,0xfff6fe56,0xfff53d28,0xfff7abe6,0xfff92720,0xfff99189,0xfffb38ba,0xfffa38bb,0xfff5bf84,0xfff8e3ca,0xfffb0978,0xffff87ea,0xfffc41a6,
-0xfffba30b,0xfffc7cd0,0xfffc5a9c,0xfffd9fa9,0xfff6a1d4,0x00001bff,0x00011b98,0xffff5d40,0xffff9b2c,0xffffd867,0xfffffa05,0xfffff9a3,0xfffff0cb,0xfffff37f,0xffffe8a9,0xffffdbf3,0xffffda1e,0xffffdf49,0xffff979f,0xffff9b1c,0x00005b3b,0x0000c3f7,0xfffc3b7c,0xfff9ba3b,0xfff7425b,
-0xfff3e2b1,0xfff86ec4,0xfffa74bd,0xfffa3806,0xfffb9ee3,0xfff91547,0xfff18b3e,0xfff8ad1d,0xfffbbd43,0x00050626,0xfffca3a1,0xfffd0c36,0xffff2dc8,0xfffd9b33,0xfffcbd20,0xfff5a568,0x0001f632,0xffff1212,0x00003461,0x00002aac,0x000018c2,0x000004a3,0x000004f2,0x000006bf,0x00000834,
-0x00000b45,0x000010a7,0x00001155,0x0000170e,0x00003376,0x0000097b,0xffffc648,0x000062c8,0xfffa83f2,0xfff2979b,0xffec5066,0xffe6247a,0xffedfced,0xfff3eb7c,0xfff64130,0xfffaf4b1,0xfff5c4a1,0xffe85c19,0xfff16575,0xfffacad5,0x0008a613,0xfffddc77,0xfffaeea7,0xfffec6a9,0xfffdf9f3,
-0xfffc1200,0x00026312,0x00006b24,0xffff878c,0x00003c0d,0xffffd521,0xfffffafd,0xfffff9ee,0xfffffe0e,0xfffffbda,0xfffffbb9,0xfffff9b2,0xfffff85d,0xfffff669,0xfffff53e,0xffffe28d,0x00000fae,0xfffff1db,0xffff6c87,0x00085dc7,0x000e2102,0x0014cec6,0x001a5bb5,0x001913a5,0x0012094a,
-0x0005dd65,0xffff65d5,0x00019b14,0x00071a5d,0x00114a6f,0x000c641f,0xfff660a6,0x0005d1dc,0x000920f9,0x000a186e,0xfffe5318,0x00097091,0x0006106f,0xfffdd5f9,0x00009ec4,0xffffbfc1,0x000020ef,0x0000007a,0x0000050d,0x00000211,0x000002c8,0x0000036a,0x00000332,0x0000063c,0x0000020d,
-0x00000e11,0xffffffc7,0x00001742,0xffffc5a8,0x0000e658,0xfff876a4,0xffee2c06,0xffe6fe8e,0xffe21241,0xffe427e4,0xffeee305,0xfffe8044,0x000f2071,0x0012b559,0x00077708,0x00018e7f,0xfffc737c,0xfff62524,0x0004c4c8,0x000d0b01,0x001237ca,0x00104b9e,0x00044038,0x00075386,0xffffe194,
-0xffffb700,0x00003750,0xffffe1a0,0x00000349,0xfffff7cd,0xfffffe56,0xfffffb92,0xfffffd42,0xfffffb8b,0xfffffcd1,0xfffff92f,0xffffff70,0xffffe928,0x000026d0,0xffffb575,0x00000e48,0x00049f4d,0x000e893f,0x00161f21,0x001c1513,0x001a829d,0x000f0554,0xfffc4df9,0xffecfe4d,0xffec92f0,
-0xfffdaada,0x000a763a,0x000d786e,0x00094f67,0xfff717e2,0xffeb4fb9,0xffed8539,0xfffb2260,0xffe9c21c,0xffe8da59,0x00047f7d,0xfffebae3,0x00007d84,0xffffda61,0x00001d9b,0xfffffd61,0x00000b47,0x000003d6,0x00000697,0x0000053b,0x000006a0,0x00000658,0x00000641,0x00001062,0xffffed52,
-0x000015c7,0x0000519a,0xfff9905c,0xfff78929,0xfff5de0f,0xfff50ad7,0xfff71f9e,0xfffb81ac,0x0000b7c7,0x00123a18,0x00179c53,0x00156571,0xfff51bca,0xffe97846,0xfff3c47c,0xfffdf897,0x000a5931,0x001818bf,0xfff580e8,0x001cd86b,0xfff28fcf,0x000161d2,0xffff9e06,0x00003a4a,0xffffcc65,
-0x00000353,0xffffe86f,0xfffff6d2,0xfffff1e5,0xfffff65e,0xfffff441,0xfffff4c9,0xfffff2f2,0xfffff639,0xffffe5d6,0x00000c27,0x00001099,0xfffed9e1,0x0008b2eb,0x0005bb26,0x000415f3,0xfffff834,0xfffdbbab,0xfffabce5,0xfff6253d,0xfff52e87,0xfff43f80,0xfff9134d,0xfffbde09,0x00050579,
-0x000fee62,0x001a4e2b,0x0021cc23,0x0029ae4d,0x0028a507,0xfff877cf,0x00042e68,0x0000ebd3,0xfffeb3b8,0x00008fc9,0xfffff8a0,0x000031a8,0x0000148e,0x000021d3,0x00001673,0x00001784,0x00001657,0x000018f4,0x00001872,0x0000191e,0x0000233e,0x000019ef,0xffff7742,0x000058f0,0x000907c6,
-0x0007743c,0x000787df,0x0005714b,0x0003c815,0x0000f939,0xfffda0d3,0xfffb6415,0xfffaa2a5,0xfffa5218,0xfff9e22c,0xfff836bb,0xfff66fd0,0xfff297d0,0xfff1d659,0xfff2b50d,0xfff372f9,0x0007d607,0x000aa02b,0x0001dafc,0xffffc242,0xffffe05e,0xffff8fc5,0xffffdd92,0xffffb777,0xffffc105,
-0xffffc874,0xffffce9d,0xffffcd7f,0xffffc8b9,0xffffc9b2,0xffffcc8b,0xffffbce2,0xffff8347,0x00010be7,0xffff46a1,0xfffa4191,0xfffac35a,0xfffa3dfc,0xfffa1ebf,0xfff93bc5,0xfff87afc,0xfff78f54,0xfff7db2a,0xfff7c32d,0xfff7a94d,0xfff9efdb,0xfffc2dd7,0xfffe9585,0x0000f86d,0x00031eed,
-0x00054ef8,0x0007c8f5,0xfffbbf0e,0xfffc71a0,0xfffd78a8,0x000098f7,0x0000a210,0x0000dc4a,0x00004cc7,0x0000b506,0x0000a158,0x0000a165,0x00009913,0x000095bb,0x00008525,0x00009a97,0x0000422f,0x0000da0b,0x0000e85f,0xffffd87c,0xfffc2e3f,0xfffba90c,0xfffbbaab,0xfffafa5b,0xfffabc10,
-0xfffa3a20,0xfff9f49f,0xfff9925c,0xfffa0cad,0xfffa71d1,0xfffa9327,0xfffa9374,0xfffa58c4,0xfffa0f9b,0xfffa5b77,0xfffab59a,0xfffabc29,0xfffb2e20,0xfffc1571,0xfffc5520,0xfffb1cf6,0xfffafd3f,0xfffaaa50,0xffff17b6,0xfffea06c,0xfffea710,0xfffe981e,0xfffea2d0,0xfffea49e,0xfffeae03,
-0xfffeae36,0xfffec4cc,0xfffeb41b,0xfffef4ad,0xfffaca16,0xfffae113,0xfffb0add,0xfffb66b8,0xfffae87f,0xfffad55b,0xfffaa0c3,0xfffa801b,0xfffa59f4,0xfffa1303,0xfffa3bc9,0xfffa55c3,0xfffa9427,0xfffac26b,0xfffb0ab0,0xfffb4da0,0xfffb796e,0xfffb9e05,0xfffbe0e3,0xfffbfc25,0xfffa31ca,
-0xffff238a,0xffff3919,0xffff5c4c,0xfffea133,0xfffe7433,0xfffe3a59,0x0000200a,0xffffff55,0x000070c8,0x000073dd,0x00007393,0x00007734,0x00007edb,0x00008914,0x00008f7d,0x0000036e,0x00002243,0xfffe246e,0xfffeab28,0xffff00de,0xffff8399,0xffff2d99,0xffff2a85,0xffff02ea,0xffff3948,
-0xffff43d1,0xffff37b0,0xffff3bf5,0xffff2c49,0xfffee85a,0xffff2a00,0xffff4ab8,0xffffa5a9,0xffff5213,0xffff498d,0xffff5990,0xffff57a2,0xffff68e4,0xfffed18d,0xfffe9832,0x00007af9,0x00008ca2,0x000022d0,0xfffffdcc,0x000006c8,0xfffff145,0xfffff7dd,0xfffff841,0xfffff00e,0xffffe28a,
-0xfffff07e,0x0000119b,0x00002a01,0x00007b92,0x00007953,0xfffef62c,0xffff4a3d,0xfffece85,0xfffe68a2,0xfffe29d0,0xfffeb827,0xfffeff6c,0xfffef832,0xffff2b47,0xfffef302,0xfffe334f,0xfffec708,0xffff3064,0x0000076b,0xffff59d3,0xffff33dd,0xffff6681,0xffff509f,0xffffa258,0xfffe16f3,
-0x00006458,0xffffdadc,0xfffff59a,0x000003d7,0x00000fc9,0x0000051c,0x000006e4,0x00000651,0x00000388,0x00000778,0x00000d8d,0x00000ce0,0x00000ba9,0x0000096e,0xffffdcb2,0x000004bd,0xfffff829,0xffff8af3,0xffff1a1b,0xfffea0bd,0xfffe0bfc,0xffff1863,0xffff7304,0xffff27c6,0xffff3927,
-0xfffeb7b1,0xfffd8e16,0xfffedce9,0xffff731d,0x00012d14,0xffff6c80,0xffff76a6,0xfffffbd2,0xffff8881,0xffff4c7a,0xfffe1de5,0x00006c72,0xfffff446,0x00002e91,0xfffff77d,0xfffffc03,0xfffffbf5,0xfffffdc1,0xfffffcf7,0xfffffdd1,0xfffffcc0,0xfffffa55,0xfffffc2e,0xfffff627,0x00000d8c,
-0x0000087a,0x00002ab5,0xffffe7ee,0xffff3a7c,0xfffd9d11,0xfffc4e17,0xfffb7e1f,0xfffd5c22,0xfffe926f,0xfffe97e7,0xffff0d81,0xfffdfa9c,0xfffbc89a,0xfffd6527,0xffff25e2,0x0001aead,0xffff6518,0xfffed424,0xffffd3ec,0xffff8c60,0xffffb820,0x00003d85,0xffffd5c3,0x00004905,0xffffd12a,
-0x000008f6,0xfffffe72,0x00000425,0x00000041,0x0000021c,0x000000d4,0x0000025c,0x0000015d,0x000004b3,0xffffff27,0x000004e0,0xffffddc7,0x0000463e,0xffff6595,0x00020307,0x000486db,0x00056f0a,0x0006b168,0x0004f2b2,0x000327ba,0x0001298e,0x000030e6,0x000100ef,0x0002454c,0x000490ac,
-0x00038ea7,0xfffea6b1,0x00021279,0x00026706,0x0001fb2e,0xffffca28,0x000298e1,0x00015062,0xffff44d8,0x00006f7b,0xffffd8df,0x000014ad,0xfffff5b7,0x00000236,0xfffffd4c,0xffffffb4,0xfffffe9e,0xffffff31,0xfffffe0f,0xffffff3a,0xfffffc51,0x000005ee,0x0000003c,0xfffffd39,0x00006506,
-0xfffe2992,0xfffc04a1,0xfffaa78e,0xfffa2194,0xfffadfa6,0xfffd343b,0x000034a0,0x000379bc,0x0003f08f,0x00016085,0x0000297c,0xffff3721,0xfffdeda0,0x0001bd4e,0x00037797,0x000407ce,0x0003653d,0x00007b6c,0x000057cf,0xfffffd3e,0xffffefc6,0x000002ca,0xfffffc3f,0x00000285,0x00000187,
-0x0000016f,0x00000148,0x00000104,0x00000163,0x0000010c,0x00000239,0x0000006b,0x000000c4,0xfffff523,0x00001566,0xffffb8ed,0x00010f30,0x00037ac5,0x0004b703,0x0005dd3a,0x000531f6,0x0002d4c5,0xffff4040,0xfffc5290,0xfffc9e07,0x000098de,0x0002da08,0x0003658e,0x0002afdc,0xfffe10ee,
-0xfffba552,0xfffcec0f,0xffff0f34,0xfffb6950,0xfffd0ccc,0x0000f7ca,0xffffb8a6,0x00003095,0xfffff3bd,0x000002f9,0xfffffa9f,0xfffffe79,0xfffffd7e,0xfffffe2d,0xfffffe54,0xfffffd31,0xffffff23,0xfffffa8f,0x00000769,0xfffffc02,0x00000f56,0x00001573,0xffff27a7,0xfffeb980,0xfffe6b80,
-0xfffe88f7,0xfffeccbd,0xffffe238,0x00014b7f,0x000510e1,0x00058a8d,0x0003bc3c,0xfffd09fb,0xfffb2c04,0xfffe7b91,0x0000a761,0x00034baa,0x00061e35,0xfffe3567,0x00079f0b,0x00001d2e,0x00000361,0xffffff41,0xffffe52f,0x00000135,0x000003ed,0x00000695,0x000004b1,0x0000049a,0x00000333,
-0x0000046d,0x000002d7,0x000006f7,0xffffff15,0x00000af0,0xffffd60b,0x00003bb7,0xffff83c8,0x000143e8,0x00011b24,0x0000808d,0xffffd87a,0xffff44b3,0xfffeb991,0xfffde484,0xfffdbfd5,0xfffdb8fc,0xfffed8c3,0xffffeba9,0x00024480,0x00052783,0x00076199,0x0008fd77,0x000ae546,0x0009bae4,
-0xfffe10f0,0x00000da6,0xffff8cc0,0x00008372,0xffffe41e,0x00000f8a,0xffffece9,0xfffff757,0xfffff368,0xfffff79a,0xfffff83d,0xfffff86e,0xfffff67a,0xfffff8f8,0xfffff26a,0x000008b2,0x00000554,0x00004669,0xffff586c,0x0001ac2c,0x0001d89f,0x0001d5e9,0x0001903b,0x00012098,0x00008bab,
-0xffffe5af,0xffff6e0a,0xffff3816,0xffff08b5,0xfffed17f,0xfffe6570,0xfffe0f16,0xfffcfc01,0xfffc8244,0xfffc9572,0xfffc9a7e,0x000230ef,0x0002c7e2,0xffff455d,0x00002727,0xffffe068,0x000016b1,0x0000146f,0x00001d24,0x000019cd,0x00001578,0x00001009,0x0000130f,0x00001375,0x0000152c,
-0x00001024,0x000005d5,0xffffcf81,0xffffd8dc,0x00006d91,0xfffeebf3,0xffff1486,0xfffee787,0xfffee436,0xfffeb140,0xfffe8c5b,0xfffe57da,0xfffe60e2,0xfffe5600,0xfffe4b3d,0xfffedc36,0xffff686e,0x00000222,0x00008e3d,0x00011558,0x00019bd4,0x00021cee,0xffff2a89,0xffffa813,0xffff92dd,
-0x00007578,0x00007765,0xfffffc44,0xffffd5cc,0xffffcd35,0xffffbade,0xffffc4b0,0xffffc40c,0xffffc856,0xffffc30c,0xffffd145,0xffffd8bf,0xfffffcfd,0x000065d4,0x0000bdb4,0xffff0100,0xfffe79be,0xfffec46c,0xfffe8ff8,0xfffe90a5,0xfffe79fd,0xfffe72ff,0xfffe6588,0xfffe96c7,0xfffec1c1,
-0xfffeda4a,0xfffeea0d,0xfffeeb27,0xfffeeb7d,0xfffefb02,0xffff0ca9,0xffff0919,0xffff2b05,0xffff43fe,0xffff4afb,0xfffed1ec,0xfffed1af,0xfffe92a1,0x000084ec,0x000056b8,0x000093e9,0x0000991b,0x00009728,0x0000986b,0x000097a4,0x00009b07,0x00009b74,0x00004c8e,0x0000895e,0xfffe615a,
-0xfffe87fe,0xfffe5cdc,0xffff0514,0xfffec90e,0xfffeca1c,0xfffec288,0xfffebd15,0xfffeb802,0xfffea922,0xfffeb9a9,0xfffec560,0xfffeda7f,0xfffeeb5e,0xffff01ba,0xffff18b4,0xffff1e73,0xffff275b,0xffff3500,0xffff3e52,0xfffec5f4,
-};
-const UWord32 defaultHRIR_rom_AlphaL16_fx[470 * 43] /*Q30*/= {
-0x20bc6cc0,0x187d2c60,0x20d0fb40,0x1e5b58c0,0x1ff07300,0x208f6ec0,0x21e21e40,0x227fff40,0x231b98c0,0x22400500,0x21bce580,0x2129dc80,0x2085a440,0x1feba500,0x1f50d8e0,0x1ee88420,0x1e7a2340,0x1e1bc600,0x1dad7840,0x1c7fbbe0,0x1ee2e620,0x1708c780,0x121adb20,0x0748b300,0x18c877a0,
-0x1233e240,0x080e9a60,0x081de920,0x086274f0,0x09c7ed60,0x08fd8b60,0x08f8e8d0,0x096fa820,0x12b862c0,0x1aa86160,0x091d3490,0x12a28f40,0x116ccd00,0x22d41740,0x23937f00,0x25cc5200,0x2848be40,0x2c640fc0,0x2e780f40,0x2f0c1840,0x2cc1b4c0,0x2aad3400,0x28b2fcc0,0x26c3ec40,0x25066fc0,
-0x23681900,0x222a5040,0x20f05480,0x20256780,0x1e7ab1e0,0x1d7eaac0,0x1c6be460,0x0eca8780,0x167cc5c0,0x15e0e960,0x13f86880,0x11fb2fc0,0x1541d600,0x157fc3a0,0x15c64020,0x134c6ba0,0x16410020,0x18031d00,0x15a6af40,0x176efbc0,0x15265380,0x15a5b600,0x1c7263a0,0x169b7620,0x1ff14a80,
-0x25dabf40,0x292fa5c0,0x2ed910c0,0x36f18f00,0x3a9f3280,0x3c3e56c0,0x3892bf00,0x3524b300,0x31e3c180,0x2e31de80,0x2ae9c8c0,0x279ce280,0x25185340,0x2267c040,0x20b43c00,0x1cd710e0,0x1b8cf160,0x15a0f460,0x10254740,0x0e6fc190,0x0ede2990,0x0db54500,0x09a818c0,0x0d0f8bc0,0x08b2a3a0,
-0x0e964ae0,0x08f9eb90,0x0db122d0,0x0a7486d0,0x0d6e18a0,0x0ea7e4a0,0x102619e0,0x105e5e60,0x16aca080,0x12097c20,0x20464e00,0x27efeb80,0x2d074ac0,0x368da080,0x44470080,0x4accae00,0x4bb9a080,0x43df3700,0x3cde7780,0x36e59a00,0x310a0940,0x2bc16b40,0x2722b200,0x23806a80,0x200cfc80,
-0x1dda8dc0,0x19355760,0x1649dc20,0x1067cda0,0x076cf1b8,0x0a3f8210,0x03fc73d0,0x04fc8aa0,0x03adfc0c,0x031c4670,0x02027f4c,0x0137cb58,0x03e81e38,0x02b242b0,0x05555b80,0x0712f6f0,0x096f41a0,0x0acb4830,0x0bc5e6c0,0x123bf500,0x18935d20,0x22de8900,0x2e5ec2c0,0x36eb7e00,0x40290780,
-0x450f0b00,0x4b25e200,0x50cb2d00,0x5869bb80,0x597b2980,0x52c7ce00,0x50e8f600,0x4c3fb200,0x46d4b100,0x3fa9bc40,0x385446c0,0x321df9c0,0x289664c0,0x2223e300,0x18500300,0x0c1bf740,0x0ce4eae0,0x0832ec20,0x06305d00,0x03b979a4,0x02d3a318,0x02d7cd00,0x03992738,0x05627e48,0x0493eaa0,
-0x066adf30,0x06dac0b8,0x0a3efc00,0x0acbfa10,0x0ed49c00,0x1456d860,0x19be3300,0x2742ccc0,0x37d51640,0x3e98c740,0x49ccf380,0x50505700,0x54e5dd80,0x535b2980,0x57d99000,0x552f7e80,0x4e10f500,0x4ba6d900,0x4716cd80,0x41970b80,0x3a020340,0x3364eb40,0x2edb73c0,0x278c0000,0x23f86340,
-0x19aca2c0,0x12280f20,0x0f796fd0,0x0bc539f0,0x0a0b7ae0,0x07576aa0,0x04d85f28,0x0452b550,0x0402d470,0x038b3480,0x04cf0840,0x05342e88,0x0a650cc0,0x0b3264d0,0x12f36ba0,0x145eebe0,0x1be1cbe0,0x1c9d4180,0x3338e6c0,0x4842fd00,0x4e962f80,0x556c4180,0x51ce2c00,0x4ea0a400,0x4d0d7280,
-0x4dc0e080,0x50477100,0x52921d80,0x4dd0ed00,0x471b9f00,0x3f2fdd00,0x35caf080,0x2df25400,0x2970e5c0,0x213a6dc0,0x1e1017a0,0x15ce39a0,0x121fcfe0,0x10955de0,0x0e4ca390,0x0b6785a0,0x09bb4820,0x07e76600,0x059af930,0x05f7f318,0x0869d250,0x05c6acc8,0x0627d4f0,0x07cb2c88,0x082b2ae0,
-0x13ba3280,0x11c3bea0,0x1d0a9080,0x222d8980,0x3c051a80,0x4b233300,0x4eca8880,0x4c8ca780,0x4f67f280,0x54ce6900,0x5b1f5680,0x59ace100,0x55f53680,0x4e6be800,0x4aad5b80,0x44edc400,0x3cbd3b00,0x375b9580,0x2fa50c80,0x259d70c0,0x1e8e22c0,0x1b6ff960,0x17a89b40,0x0e407580,0x114bdc80,
-0x0f70ec10,0x0bbc7480,0x09d80200,0x068e4580,0x074c1c48,0x05b00168,0x0f2e2770,0x0948bb60,0x06cfffe0,0x0bc0cde0,0x098ec8c0,0x1478a2e0,0x10c41880,0x1ce15920,0x26938ec0,0x3e96d0c0,0x4ec67a80,0x53070f80,0x5267aa00,0x537d1900,0x54677700,0x57ee1000,0x530ba900,0x5158b700,0x4ff61700,
-0x489c6b80,0x40c88580,0x3935bd40,0x2e25acc0,0x260737c0,0x1fca51a0,0x21f4a5c0,0x23fc2b40,0x218a3580,0x1376bb60,0x1795d9a0,0x0e682640,0x0d9b1ca0,0x0f01d980,0x0b90fc70,0x0755e200,0x09e2c9c0,0x067d1ba8,0x0afdb940,0x0c62bea0,0x110a3040,0x1138db80,0x10e99360,0x14276200,0x26947100,
-0x1e4ee7a0,0x390471c0,0x45025c80,0x44b6cf80,0x46826300,0x49e3f980,0x4b27bd00,0x4a978100,0x47843580,0x4391f980,0x3fcfe1c0,0x3ae49380,0x35ec8f40,0x30a6f300,0x2b31ebc0,0x26e42ac0,0x242d0d80,0x27446380,0x2b0dd540,0x20aabd40,0x167f8a80,0x1bcea1a0,0x148a24a0,0x1315f320,0x0eb93920,
-0x0a9c8270,0x09bb41d0,0x08093b70,0x135a74e0,0x0dbd7e40,0x0e09a290,0x10fe4ec0,0x12265a40,0x18ac2b60,0x19f5e4a0,0x260b2f80,0x2527c080,0x329a3240,0x3bbe59c0,0x3cd53680,0x429dbb80,0x429a6280,0x4338b080,0x43dd1d80,0x406d1f00,0x3d4b9700,0x39e39480,0x35913e80,0x3121a4c0,0x2b7bc440,
-0x2aa91d80,0x28c16bc0,0x26decfc0,0x24e62a80,0x28349f80,0x22c037c0,0x17c48d40,0x16a35120,0x156d21e0,0x14d40380,0x0cac1660,0x13e33440,0x0adbd830,0x181a5900,0x0aa1d740,0x13697a20,0x0c72eee0,0x0f9a8390,0x142410e0,0x168bc860,0x181ad440,0x23d19840,0x12b3e5c0,0x3315a940,0x33682680,
-0x34301980,0x36016780,0x37561b40,0x39361640,0x3b72f7c0,0x3982b5c0,0x38108740,0x368c6f80,0x348b0580,0x329cd940,0x2fbcf940,0x2ef56700,0x2db8be00,0x2d27f6c0,0x2c0164c0,0x2ba645c0,0x2a78a0c0,0x109b6980,0x21dbeec0,0x21c57e80,0x1fef2040,0x1c435600,0x22818640,0x23bdd480,0x23f1d900,
-0x1e98e3e0,0x24f14240,0x26f46940,0x21020f80,0x2408bf80,0x1ff37620,0x20d276c0,0x2baa6a80,0x25a719c0,0x35b918c0,0x2ff30f80,0x31f98800,0x32131740,0x32c213c0,0x332a8940,0x3407ea00,0x32f62b00,0x324f95c0,0x3191d140,0x30fdcf40,0x30779940,0x2fd9ddc0,0x2fdae300,0x2fab8b00,0x2f66e1c0,
-0x2f3967c0,0x2d99f200,0x3324cf80,0x230398c0,0x19cc1620,0x053193c0,0x2723b640,0x1a631ac0,0x07996920,0x07772748,0x07ddb900,0x0aa846e0,0x08913300,0x08c03510,0x09accd10,0x1ae4f760,0x2a611580,0x084a2ad0,0x1a436740,0x3642d600,0x138d7900,0x17e88860,0x10f2b1a0,0x135d2d00,0x12b9ea80,
-0x12c19d00,0x1262e6a0,0x1203d4a0,0x111b2d00,0x11449380,0x11326aa0,0x114d3a60,0x11600b60,0x116c1c00,0x117d0b20,0x113eb080,0x113fff60,0x1155d820,0x1196db00,0x1232e4e0,0x100f5220,0x17129640,0x1a8769c0,0x215926c0,0x148685c0,0x199e13e0,0x1ff76a20,0x201a5180,0x1fca4d60,0x1f0d0d60,
-0x1f8197e0,0x1fcd99a0,0x1fbca1c0,0x19cda440,0x13e04760,0x21217dc0,0x1ba944c0,0x21510f00,0x1695e4a0,0x165dda00,0x166b9cc0,0x15b050a0,0x14484620,0x12b78c40,0x10c43fa0,0x11a6bc00,0x1250ff60,0x1342d520,0x13b105c0,0x13d25160,0x13cc7c60,0x12ea0e20,0x12bb33e0,0x12c177c0,0x139d8280,
-0x139665a0,0x13d899c0,0x1cac0380,0x156b9a00,0x14b6bec0,0x1532a7a0,0x15cc33e0,0x12718880,0x127f1260,0x12acbbe0,0x14d070c0,0x120f3fc0,0x10d01820,0x14362f60,0x145b9ce0,0x17a12c80,0x18551ec0,0x15bd7740,0x1e4ba7e0,0x1d8c2ea0,0x1a8dddc0,0x1b9480a0,0x19842f80,0x161c9620,0x1370c300,
-0x0f162640,0x107e8760,0x10f30da0,0x11f5ac00,0x12775e20,0x128dc7c0,0x129a1000,0x112fea40,0x11352cc0,0x119102e0,0x138b6220,0x13257200,0x159752a0,0x16ad92a0,0x153c5320,0x131bab60,0x12235b60,0x12ddf4e0,0x0f84db00,0x12685ca0,0x0f635650,0x132187c0,0x0efbfcc0,0x117daf40,0x11e2eee0,
-0x140a3780,0x161d93c0,0x18269400,0x18fc0960,0x229b5800,0x225a0a00,0x1ee02500,0x1f632940,0x1b37fe80,0x13f7d060,0x0e774630,0x091881f0,0x0e239990,0x12089320,0x157d21e0,0x17241780,0x177cf520,0x16de6bc0,0x140967e0,0x13114340,0x12d56bc0,0x14893160,0x14a5e220,0x15627fe0,0x150f3920,
-0x1003fd80,0x0f047e90,0x0c3e2cc0,0x0a86d330,0x087c0880,0x08815790,0x086caa00,0x095c8120,0x08df3020,0x09bab0e0,0x0ccade50,0x101fd4a0,0x137a58e0,0x15b52900,0x1ab497a0,0x27d9a980,0x28ecdac0,0x29b84f00,0x29f6a640,0x28dc3400,0x27d52b00,0x23daf800,0x1dc1eb40,0x10cac600,0x08b9c530,
-0x07bc2d00,0x0248a200,0x0105c63e,0x026c2f6c,0x0374820c,0x072828c0,0x0b58ca30,0x11920000,0x12d7bc20,0x14435a80,0x1746c560,0x12608d00,0x10940920,0x0cbf8910,0x0ac02bc0,0x09231db0,0x09cd19d0,0x09cc4440,0x0a1cab50,0x090b35d0,0x0b470eb0,0x0f7f2410,0x13d8b0a0,0x1907a1c0,0x1c467060,
-0x22a83040,0x2f8cc2c0,0x2d766480,0x267bc240,0x292a4240,0x2a9d6100,0x287aa4c0,0x2574e0c0,0x25b9ff80,0x1cf8a000,0x195febc0,0x190fd3e0,0x1430ea80,0x1129a7c0,0x0f9bc930,0x116841c0,0x12f9bee0,0x1368a400,0x185e7940,0x18b3ed20,0x1b01c3e0,0x18a82300,0x1357ed60,0x10053d40,0x0c5989f0,
-0x09fdf750,0x07f22230,0x083c9e40,0x0a2ca2a0,0x0f88d940,0x0ef41970,0x11ade340,0x158d0100,0x18572aa0,0x1b3a57a0,0x229ba780,0x26e00100,0x31fb7880,0x2b1c6a00,0x1f966460,0x217c1140,0x1fed9080,0x2cd1a480,0x34a04600,0x328b5ac0,0x2ef02780,0x24815900,0x15f18d00,0x0f68e270,0x0cd3ca80,
-0x0e5eceb0,0x12d3c740,0x168067a0,0x17acd640,0x1c878ce0,0x1d1219c0,0x1ee38b60,0x1c9b4020,0x19ce9aa0,0x16abc000,0x11ebbcc0,0x0fa84920,0x1051b520,0x12a42ec0,0x1399f600,0x1b88bfe0,0x12448da0,0x1292b660,0x15399d00,0x1ba8cc60,0x1ba29c60,0x2501f380,0x250c2540,0x31146f00,0x221273c0,
-0x16792ae0,0x1fb9ebe0,0x32797d00,0x2ef2a1c0,0x284240c0,0x1f6827a0,0x1c796e20,0x17c3f400,0x14ec3260,0x11188180,0x0f957090,0x116aee20,0x11529bc0,0x14697a00,0x1a011920,0x1db288c0,0x1ed55ae0,0x1f5ac100,0x21ce70c0,0x1e3c3a00,0x1c272ec0,0x18ea9aa0,0x159eb7a0,0x144a3000,0x0de72ef0,
-0x131315e0,0x269cddc0,0x16456220,0x147ae2a0,0x165eddc0,0x1b611240,0x1b3f6240,0x254db440,0x2806c940,0x27b52f40,0x13cb0dc0,0x0f778c70,0x1737d060,0x1eb10f00,0x22788b40,0x21873000,0x1828b080,0x14df4c20,0x0f316860,0x0bfecb00,0x0d2c8130,0x1002ae00,0x1342b8c0,0x19f65940,0x1ec7f7e0,
-0x221de240,0x1e72dc40,0x1b0b0d00,0x1c727dc0,0x23402580,0x1cec5180,0x1e467b00,0x1adc8dc0,0x1680d3e0,0x1608c5c0,0x16d8bf40,0x17859620,0x1f84ad00,0x188d4540,0x181393a0,0x1528cac0,0x1b0c5b00,0x20552940,0x2468b8c0,0x1c7566a0,0x301a94c0,0x178aa5c0,0x100ec180,0x19649160,0x1e5015a0,
-0x20e7b440,0x20556180,0x1cd44100,0x1d5c6da0,0x1da9d840,0x1d9abc20,0x1bbfe9e0,0x1c04d400,0x1dd0b860,0x2089e100,0x2212fcc0,0x21afaa40,0x1e76eda0,0x18170ee0,0x1d475fa0,0x25451180,0x1b8b85e0,0x1db4a5c0,0x1a87b2e0,0x1a072480,0x1a23f8a0,0x1af0a460,0x1c6f56a0,0x14fefac0,0x1abac480,
-0x1ae5fca0,0x1906e100,0x1af4dce0,0x1a03ad20,0x1fa555a0,0x1c91afe0,0x26c766c0,0x1c8482a0,0x16abd440,0x1bd11740,0x1addcbc0,0x1ad4b1a0,0x1af82a60,0x1c12b1a0,0x1dd8d300,0x1f698580,0x215e2500,0x23a1c080,0x25c0cb80,0x28b12740,0x26eaef80,0x267fb600,0x25ce7740,0x23942480,0x1bd2c720,
-0x1dc9c840,0x25789180,0x22b0fb40,0x208116c0,0x1e99aee0,0x234ba300,0x1b740620,0x22515f00,0x172e6600,0x2286dcc0,0x1b2c8100,0x22e86800,0x2024cec0,0x22951840,0x2513d840,0x297b4ac0,0x228743c0,0x3732c5c0,0x15fa15a0,0x16215340,0x1723a8e0,0x16d90160,0x177583e0,0x1767e640,0x173b6240,
-0x18539140,0x1973f600,0x1a774e80,0x1c182a20,0x1db49f80,0x208bce40,0x1f095c00,0x1e0a5640,0x1c7fa920,0x1ba096c0,0x19920dc0,0x196ac280,0x329ac5c0,0x1e86a9a0,0x1dcb8fa0,0x1de803a0,0x1faae060,0x17042780,0x1690cf40,0x17a98740,0x1d250e80,0x173edc80,0x1451afa0,0x1a66db40,0x1a3c1480,
-0x20dc49c0,0x2263e540,0x18c5b860,0x1ff01d00,0x0b41eb80,0x12829e40,0x1105b240,0x1149c960,0x11559fe0,0x117acf00,0x118034e0,0x1240b420,0x12ddb1e0,0x13859da0,0x1407fc80,0x146a2600,0x152f5640,0x141bd3a0,0x138e10c0,0x12f03600,0x127b5140,0x134e8520,0x0c50b380,0x20f91780,0x2a70b980,
-0x3cf65240,0x1a226500,0x2823f340,0x38ba3e80,0x3943a5c0,0x3888e580,0x35ffc4c0,0x384f6640,0x38aafe40,0x37961680,0x2876a000,0x17c51ce0,0x3bbaa3c0,0x2bb1ae80,0x1152fa20,0x0941a1a0,0x07567740,0x07c41320,0x077eecd8,0x074dc770,0x072015d0,0x0732c630,0x077e7370,0x08442300,0x08ac1880,
-0x08fb2a80,0x0917bbd0,0x090baf10,0x091c6180,0x09445db0,0x09589530,0x094f90e0,0x09372750,0x08f11d30,0x08c16b60,0x08b8a140,0x07e56b90,0x0752c578,0x06ab0950,0x0804cb10,0x0724abf0,0x06687de8,0x06b393f8,0x06d51be8,0x07117dc8,0x06661270,0x062fbf78,0x06385620,0x06ef1858,0x07b84ee0,
-0x06c339c0,0x070e9ee0,0x0753c650,0x066ada10,0x063a38f0,0x05ae7930,0x0555fae0,0x057114a0,0x069e5d20,0x08fc7bb0,0x0a29ded0,0x0ace54d0,0x0a9757d0,0x0a5d7ec0,0x0a6fe9c0,0x0aeeee70,0x0b5be3d0,0x0b6d5e60,0x0b240fc0,0x0a75ecd0,0x0a00af50,0x0990b3e0,0x093126c0,0x09a542b0,0x097f0930,
-0x09050b70,0x08e42720,0x08b0e460,0x098bd9b0,0x0997e540,0x09a4eb80,0x08cdecd0,0x086bb530,0x07e45a28,0x0775a7b0,0x077e6698,0x08919090,0x080ec1f0,0x07863960,0x04553db8,0x029b9c0c,0x016cbba2,0x009fafd5,0x01439742,0x0326065c,0x081ff820,0x0a62a9f0,0x0c0f5240,0x0c1ef750,0x0c07cbf0,
-0x0c64a540,0x0d665c10,0x0dfffa00,0x0dfaae70,0x0d26bde0,0x0bff1470,0x0b065d60,0x0a619aa0,0x0b101660,0x0a943b50,0x0a358580,0x099d4e60,0x09475d00,0x080ed9b0,0x09e36d10,0x0a919ce0,0x0ad0baf0,0x0876fd10,0x0748ee68,0x079b1c70,0x0720cdb0,0x07897c58,0x092a4600,0x08242be0,0x05f51d60,
-0x01382292,0xfeed4044,0xfdaf13f0,0xfd189a98,0xff3b38f1,0x038f9abc,0x0b35bce0,0x0ddadc80,0x0ebb5cd0,0x0d63ffc0,0x0c4a8d10,0x0c73a3a0,0x0e22d400,0x0f98ccc0,0x0fd475c0,0x0eedc860,0x0d5f40d0,0x0c365dc0,0x0bca1090,0x0d8218f0,0x0c753dd0,0x0bc530e0,0x0acd2a40,0x0a411600,0x089c3540,
-0x09ee07f0,0x09b9ee40,0x0af2af10,0x06fc8dd8,0x05933ff0,0x05e2a028,0x04ebc908,0x06750760,0x0902f9f0,0x06303db0,0x0f5695c0,0x0640ac20,0xfb12e248,0xf592b1e0,0xeddb4e80,0xe87bfea0,0xe77d8c20,0xecb7f620,0xf73226f0,0x00fe45d1,0x06bff068,0x0cf1e4a0,0x10832220,0x1222fec0,0x12af0ee0,
-0x123ed060,0x1200d4c0,0x0e210fe0,0x0d1450c0,0x0e0a94f0,0x0d7f2fb0,0x0d29e940,0x0c69c210,0x0b0187b0,0x09825390,0x0660eb90,0x09b4cd30,0x0a8feca0,0x0aa09f20,0x09b96c50,0x0ac3d030,0x0dced7b0,0x0db0c720,0x0f687f40,0x0fd011a0,0x0fa6d4b0,0x0051fab4,0xf644c100,0xed286140,0xe87035c0,
-0xdabdf980,0xda939bc0,0xda82d7c0,0xdb299080,0xe0ffc940,0xe7533060,0xedb0d200,0xf60631d0,0xfeb6d3d6,0x0764fa10,0x0c4f7430,0x0f684ef0,0x10c28dc0,0x0e3b72b0,0x0d14d6d0,0x0e4d6630,0x0e82c880,0x0d22c220,0x0bcbd370,0x0b0ce140,0x0a024ef0,0x076f39f8,0x0a6d7bb0,0x0b112570,0x0e45c1a0,
-0x0b9312d0,0x0b2ed130,0x0764e220,0x08069540,0x03c3ed10,0x02aba1c0,0xfd507b6c,0xf4ae1fb0,0xeb096180,0xdfe6b540,0xda3f5880,0xd1a8dcc0,0xcaca8c80,0xc45159c0,0xc4504cc0,0xc91c4680,0xd32bf200,0xe1e08040,0xed217b60,0xf6ad3250,0xfda53a4c,0x0117535e,0x05f319a8,0x0be48a40,0x0f3f6cf0,
-0x0fcac9a0,0x115f62c0,0x1257cf20,0x104ba760,0x0df436e0,0x0d888830,0x0b96a350,0x06bba518,0x06bba0e0,0x093ee400,0x12835860,0x0a70cf60,0x08369500,0x07f40748,0x06a063e8,0xff49f83d,0xfec6d688,0xf73a6ef0,0xeb3f0580,0xe2121d20,0xdc2b7500,0xd28aca00,0xc4e6ff00,0xc98c1c40,0xcdd97900,
-0xd2efc080,0xd711c780,0xde038280,0xe608c460,0xeea094c0,0xf68d9af0,0xfc839ad8,0x04cb6568,0x09c429a0,0x0ba7a5c0,0x0e7897c0,0x0de74820,0x0d078760,0x0caa7ec0,0x076bc230,0x069bcc68,0x07a594b8,0x08016c90,0x07933ee8,0x0d53cfc0,0x0ccd5500,0x03011f80,0x092bbcc0,0x09be8e00,0x03362744,
-0x05052320,0xff06ace0,0xfc7f9bf0,0xf32c4ef0,0xe9a41140,0xe825b300,0xde274400,0xd4c10c80,0xd0d3b940,0xd378bfc0,0xd956f480,0xe4a51d20,0xeca3a6e0,0xf4a3cdc0,0xfaa21670,0xff1bfc88,0x027579b4,0x05625680,0x0535d800,0x05e14618,0x07344b48,0x08500c80,0x067d5fc0,0x0240b6b4,0x0348cbfc,
-0x01946d84,0x03b3cfd4,0x03e503a8,0x044eb978,0x04bd8910,0x08e23850,0x07577f90,0x028e3fe4,0x029609c0,0x0197a68e,0x00c9e75c,0xfd12fe88,0xfb25ae68,0xf751c1c0,0xf2a90640,0xe7c00480,0xe8b4a760,0xe5664d60,0xde96a240,0xdbbd4c80,0xdc581f40,0xe013c8e0,0xe6e9b620,0xecb39e80,0xf2b1c410,
-0xf8d70798,0xfd4f49a4,0x00672fce,0x03093788,0x0129316c,0x00484d93,0xff95e007,0xfdf980a8,0xfdeff350,0xfc539da8,0xfa98d7d0,0xfcd84938,0xfd30675c,0xfdf95020,0x005e2387,0x035fcfac,0x022f99cc,0x011f1a36,0xfeaa2bfe,0xff12c10f,0xffc755c4,0x005cde2e,0xfd3e23ec,0xf9b11660,0xf55cc840,
-0xf135bae0,0xe9b398a0,0xe8db3040,0xe96fcbc0,0xe5fa79a0,0xe3e39000,0xe5bd70a0,0xe6d85840,0xe707f100,0xe9346720,0xeb29ec20,0xed40f740,0xed947de0,0xee56cce0,0xef72f540,0xefba37c0,0xefc3cf20,0xefd1a360,0xf0d569a0,0xf3674090,0xf364dd20,0xf3bb7c50,0xf5d8ebb0,0xf7c67d30,0xf9fb8068,
-0xfb0979e8,0xfc8858d0,0xfc560e1c,0xfcd18a0c,0xfb8fa080,0xfc658770,0xfac0ed18,0xfb6aee48,0xf75cac10,0xf4f9dcf0,0xf0d40a80,0xee571740,0xe9cc0560,0xf0b08d80,0xf0c4c760,0xef89c440,0xeee03820,0xedb0fdc0,0xeca51420,0xeb939ce0,0xeba9b540,0xeb770b80,0xeb78ace0,0xeb466ba0,0xeb12e060,
-0xea74dd80,0xebc38300,0xed0023a0,0xee5eb7c0,0xef890060,0xf14f0950,0xf19107e0,0xecacfe20,0xf2ef0d30,0xf3547c20,0xf423c490,0xf4f0ac60,0xf8237c80,0xf8235108,0xf72073d0,0xf61b6f10,0xf7501340,0xf8b93f58,0xf75038f0,0xf5c1f970,0xf2aafc20,0xf16cf810,0xf2dcf670,0xed921840,0xf5c701f0,
-0xf36a5510,0xf369a820,0xf33ea430,0xf2d226f0,0xf2843b30,0xf20ee070,0xf1f44f20,0xf1beeef0,0xf183c400,0xf16a4950,0xf15bb900,0xf1101dd0,0xf1e59d00,0xf26e2010,0xf30910e0,0xf36f3190,0xf3b70450,0xf6190e40,0xedf21940,0xeb4cc820,0xe8fb8900,0xf1569980,0xece4d740,0xeac3c600,0xea7f30c0,
-0xeafeca20,0xeb75cea0,0xeadb6c40,0xea7997a0,0xeaedb3c0,0xecd32840,0xf1bbe190,0xe899d080,0xea878520,0xf3d83ab0,0xfdf221e0,0x0147bf16,0xfcc29c70,0xfe40a5d2,0xfdd2d0c8,0xfddf0968,0xfcd46fd4,0xfc575568,0xfbc2c608,0xfc44607c,0xfca26bf4,0xfd210164,0xfd7bc310,0xfdb26550,0xfdc2fec8,
-0xfdb8c600,0xfdb4b510,0xfdaf9d40,0xfda197b0,0xfe1524ac,0xfcd2b77c,0x01365b12,0x0391f868,0x0866c9a0,0x0027ebe4,0x0385a240,0x07e7e1e0,0x0846c130,0x084aa990,0x07ad41b8,0x080a6360,0x080587f0,0x07cc82f0,0x03a32384,0xffe95df3,0x07acc740,0x03d77efc,0x05075ee0,0xfdb6797c,0xfe79d984,
-0xfe3b37ca,0xfe011912,0xfb4198e8,0xf98b3910,0xf8189680,0xf8806c28,0xf97f4b58,0xfb378338,0xfc90f140,0xfd5e6040,0xfd775b8c,0xfd6ad254,0xfd4f0a70,0xfd28ea60,0xfd284734,0xfd2b7824,0xfdee6738,0x04a8dc08,0x00a50d4b,0x0124caca,0x01afdd0c,0x02c6c194,0x0150177a,0x0203de4c,0x0271d778,
-0x03b1513c,0x024bffc8,0x015070aa,0x025b7bac,0x014dee90,0x027033e4,0x028f053c,0x0055dee1,0x01d93fd2,0xfd7e4764,0xfe6a4b1c,0xfe2336d4,0xfda7aa78,0xf7f01ce0,0xf52f3a80,0xf2471c90,0xf37752a0,0xf5b9a100,0xf8ba1880,0xfb121b28,0xfc6b42ec,0xfc7a6a80,0xfc75aebc,0xfc3af5b8,0xfc30ff54,
-0xfc4e84a4,0xfc203dc8,0xff3c700c,0x01a95bdc,0x027f0598,0x01b5672c,0x0204abe8,0x044b1478,0x029a0688,0x06a6b068,0x04a667e0,0x07e437f0,0x0578cd58,0x0703c210,0x05c27178,0x03fc72d4,0x035e3000,0x03ed2034,0x02433024,0x05587bc0,0xffc435b6,0x01be84e6,0x01f10740,0x00b5e36a,0xf71c07b0,
-0xf0c55e10,0xec1b9fe0,0xecb413a0,0xf0c80970,0xf6d06d10,0xfb3165e0,0xfd9d60a0,0xfdbac4e8,0xfd1fc4bc,0xfcd5eaec,0xfca0517c,0xfc25a57c,0xfc271b88,0xff9747d9,0x046ed2b8,0x028208fc,0x066516e0,0x04e5f2b0,0x05226300,0x042a82d8,0x07bdbca0,0x09cb2580,0x0969adb0,0x07caf4a0,0x06e14430,
-0x070f3af0,0x045e81c0,0x046e6670,0x05f7fd30,0x05ab75b8,0xee5f1060,0xe9903c80,0xecb67880,0xed3f6260,0xef9ae8c0,0xf4968ef0,0xf85e66e8,0xf92bc878,0xf56b5a20,0xf18b7920,0xf17bdcf0,0xf0fdcc10,0xf2044570,0xf4a02940,0xf5c35df0,0xf67b2c20,0xf59e6410,0xfa15ffa0,0xfad5be60,0xfd407a54,
-0x03c50dd4,0x01859a06,0x048621e8,0x052f8b10,0x074ffee8,0x071543b0,0x092f2d60,0x0908baa0,0x085d2c20,0x08099060,0x06967c48,0x04c5c538,0x01d95ff4,0xff06c608,0xf9789098,0xf3594ee0,0xeea2fd60,0xee083620,0xf0e16d80,0xf42b9b40,0xfddb033c,0xfb5a9698,0xfc6f02d8,0x0090989e,0x033d0d4c,
-0x0515ebd8,0x055c1438,0x05fe6d88,0x04b09ab0,0x01949e44,0x01837fc8,0x0103da46,0xffa09c11,0xff4d22bd,0xfd0c5cfc,0xfe2ec21c,0x01d5103e,0x038262d8,0x04fa0ba0,0x053803a0,0x06ce46e0,0x073d18e0,0x0a2d6a50,0x0ae88dc0,0x09f30e00,0x059015e0,0x022fbee8,0xfee1b63e,0xfd6a3520,0xfa56c758,
-0xf77ba340,0xf3985300,0xf39de9e0,0xf40daf10,0xfc8de894,0xffec2719,0x05f8b218,0x0c8bec60,0x14671380,0x1d647aa0,0x1fe87c20,0x20a55880,0x1dfc5100,0x1b6b39c0,0x18207ba0,0x146d7ee0,0x1438c280,0x10e2c100,0x0b708270,0x03837970,0xfded6b7c,0xfd48bef8,0xfbcef7a8,0xfb221ed8,0xfe88f8d4,
-0x00c52903,0x03953898,0x032d8a4c,0x0ae71e20,0x0b6ffeb0,0x044addc0,0x072b33b8,0x05d50f58,0x00aeeb88,0xffbc622f,0xfe3a55b2,0xfa8bb8a0,0xf87f15f0,0xfd7b1068,0x01cfa670,0x097b7ac0,0x0d09b550,0x0ddc68d0,0x0f79e950,0x1445e0c0,0x1dfd6d00,0x21d2f980,0x2530ff00,0x2501e5c0,0x22d254c0,
-0x1f0e19e0,0x1ac274c0,0x138ae9e0,0x0d7af4d0,0x098eac00,0x048db608,0x00361e93,0xfe04e984,0x00614248,0x000fb4a7,0x0038e058,0x00e8bfee,0x02068a40,0x012cc936,0x09842b60,0x0b226030,0x022c987c,0x08e52d90,0x06c1fe80,0x003e8f09,0x0019d39d,0xff942d57,0xfd58c788,0xfd373c64,0x08403ff0,
-0x0bfce350,0x111cc580,0x12ba7e20,0x0f4addf0,0x0d49f3a0,0x0caf6240,0x0db47710,0x0f825e80,0x116eec00,0x1276bb00,0x1387b3c0,0x1304a320,0x10ff6680,0x0fc478a0,0x0c8491c0,0x079ac908,0x02bb1510,0x00255f33,0x01c71968,0x0401dad0,0x0374cb48,0x04d05aa0,0x0526fb98,0x0604e788,0x071ec218,
-0x07e93038,0x08bdb910,0x09ae3c40,0x09210150,0x07e71520,0x06c52048,0x059c8f58,0x039259e4,0x031f7f7c,0x04ffd658,0x0be47060,0x0c6d3730,0x0daa6390,0x0e999410,0x0d735ef0,0x0c1c4770,0x0a8b12d0,0x08cc24c0,0x07892aa8,0x068184a8,0x054d8150,0x03effffc,0x032644ac,0x02ab8d20,0x038a0e90,
-0x04132118,0x05307208,0x06687968,0x066dd660,0x08513450,0x0a9f5610,0x09763bc0,0x09d60f50,0x0a836f50,0x0a099140,0x08c73600,0x089c7300,0x082fcbb0,0x093d7150,0x0762a180,0x06007048,0x0467cda8,0x06ac4838,0x0881fc50,0x092c10d0,0x0ab1b0a0,0x0b27a470,0x0bcb0cf0,0x0bb6f270,0x0cbba9d0,
-0x0dac15d0,0x0caa8990,0x0bee5f40,0x0b7c0ef0,0x0ac94ca0,0x0a442520,0x09f0bf00,0x0a6d3eb0,0x0aaa6540,0x0a88c6b0,0x0bb222f0,0x0cf964c0,0x0e458640,0x0ef94b60,0x0edf3a70,0x0f6e88c0,0x0f1fa0a0,0x0eaf8ab0,0x0e08edc0,0x0c3ed770,0x0aece5a0,0x09abac90,0x0927cc60,0x089c93f0,0x0875ea60,
-0x072b1d40,0x06f8a578,0x0595a088,0x07024ae0,0x078c9008,0x092b8ea0,0x0a02fdd0,0x0ed5bfa0,0x0d528b00,0x0cfa6be0,0x0d9a3310,0x0dd6aec0,0x0e646a30,0x0ef992f0,0x0f7f8c60,0x0fcd4280,0x10145d40,0x10318c40,0x106f3880,0x10ba7fc0,0x111dd6a0,0x112e78e0,0x111c1360,0x10ef6a40,0x10cdd880,
-0x106ed740,0x1134b660,0x110849a0,0x0ef770a0,0x0ed65ab0,0x0e1fc3e0,0x0d81e630,0x0c6f9100,0x0bdbdf20,0x0c3897b0,0x0c5b3aa0,0x0b7f9890,0x0a47cc10,0x0ac6b490,0x0b3d0750,0x0c7db640,0x0cdbad00,0x0c423750,0x0feb8200,0x0bcb80a0,0x0ca66210,0x0ccc2230,0x0cdd1470,0x0d134770,0x0d330de0,
-0x0d5f2db0,0x0d8e1ee0,0x0dc99550,0x0e0fd730,0x0e3e2aa0,0x0e6644e0,0x0ea136b0,0x0e54c300,0x0e2adf00,0x0e0178d0,0x0e0229b0,0x0dd53970,0x0d3b4d60,0x10f73dc0,0x11b99000,0x10ad4ba0,0x0f52b380,0x10d35480,0x104934a0,0x10609140,0x101128a0,0x0fb8b530,0x100052c0,0x10285920,0x0fc96520,
-0x0fe689b0,0x0e0c7db0,0x100734a0,0x10c8f960,0x0e1b7380,0x023ef3d8,0xfefecf38,0x02e1741c,0x01e17154,0x0227852c,0x01bc7b28,0x024f0c34,0x02a32b5c,0x03794e7c,0x02be6d68,0x02851fa0,0x024f2420,0x025cba6c,0x0265caa4,0x029197dc,0x02753640,0x025ceff8,0x0226fb30,0x021a7f8c,0x01b5a400,
-0x02d37f78,0xfecd57e4,0xfccd7fe0,0xf91e1130,0xffe0927e,0xfd3b99a0,0xfa4c9fc8,0xfa425570,0xfa7ea7d0,0xfacd68e8,0xfacb0268,0xfaada4a0,0xfa64ff38,0xfd6f4ee4,0x00a75cc4,0xfa38e7a8,0xfcfa6230,0xfc51daf8,0x015a4420,0x019a712c,0x01220a70,0x003e67fe,0x018cfb2a,0x02ad83b4,0x0509f030,
-0x03ab27bc,0x031a7784,0x0265d9c0,0x026a3e04,0x029aa264,0x0323f900,0x0312a790,0x02cd38c4,0x02419874,0x01f851aa,0x01e32a80,0x01602760,0xfc14b9c4,0xffa8feea,0xff8f6cb7,0xff2f7209,0xff165250,0x01b8a146,0x01c8ef86,0x01ea8786,0x0087a0a3,0x029d9148,0x03001c70,0x007cc6c3,0x010c77e0,
-0xffbd3a9a,0xfff35bf1,0x016da906,0xfed4182a,0xff97ba09,0x019dad82,0x010dfac4,0xffcac6ef,0x036e8038,0x05724ee0,0x0a7250a0,0x06696b68,0x048a6bb0,0x02f73ba4,0x02f6fedc,0x03517414,0x046b5388,0x04077198,0x038ffe6c,0x0257122c,0x01b7eb0a,0x01841c46,0xff8bb07e,0xfe1eb88c,0xfe0b457c,
-0xfe921662,0xfe96cbac,0xfeaaa2a4,0x026b07e0,0x00e84020,0x02b16894,0x0066c599,0x0366f89c,0x0207a02c,0xffdc8c7c,0x0042d21e,0x004c9dea,0x00574299,0x000a0e80,0xfe47b962,0xfda13b74,0xfee12b3c,0xfcb78438,0xfa350c80,0xff2a304e,0x03ea8978,0x0be1c810,0x06f9fd30,0x0361bb24,0x005b31b5,
-0x0058fd4b,0x01833058,0x03fa0104,0x04454170,0x037d57c8,0x01d552c0,0x01800f4a,0x0114da0e,0xff56b00d,0xfd8bdd08,0xff0e3865,0xfdb418b8,0xff1f7f67,0x00be943d,0x02ea91b4,0x0467c1b8,0x062732d8,0x05764988,0x06b2ef80,0x064a1d00,0x02c14854,0x02f2f624,0x0284d8fc,0x02937424,0x011e7ac8,
-0xff2e981b,0x04ea8690,0x068878c0,0x0a3a5420,0x120a07c0,0x141cc560,0x147f6940,0x13cc5280,0x13d7bba0,0x14a6e500,0x12f9e080,0x12ce5a40,0x107fa9e0,0x0cae4e20,0x09d7f3d0,0x078dd680,0x0569a190,0x0145523e,0xfffab1a9,0xfe7e280a,0xfbcdcf48,0xff041ba0,0xffb393b2,0x00f20419,0x02de7ef4,
-0x056c4c80,0x071b67f0,0x06d01928,0x041e5480,0x044ea938,0x02774b20,0xff5d9923,0xff42593d,0xfe337c82,0xfe730928,0xfec91d02,0xfe701bb8,0x005b92b8,0x02ef243c,0x01020aa8,0xff3f52a5,0x02b653b4,0x068ae188,0x088919f0,0x0af82080,0x0d696fa0,0x0ff31020,0x10581fc0,0x1034ea40,0x1088ca80,
-0x09eedc50,0x03e3e88c,0xfd72cec8,0xfc65b9cc,0xfddba7f4,0xffbaf93a,0xfe4d4adc,0xfebaa876,0xfff6f32d,0x0168eab0,0x03b0cc00,0x0400b1d0,0x0779bf90,0x084286c0,0x048eef90,0x0383a7d0,0x0202d7f4,0x01369d80,0x01523678,0x01c1ed78,0x00719959,0x00d0ca6f,0x0144ca42,0x0162fede,0xfec55220,
-0xfdb20820,0x010a6f78,0xf78839b0,0xf47e7ae0,0xf3a3d5a0,0xf491d4c0,0xf57fdda0,0xf6902d50,0xf844ccd0,0xfad93838,0xff069ac7,0xfd61750c,0xfccc2600,0xfb6a4098,0xfbc02f08,0xfbcd61a0,0xfcba6388,0xfcf29a90,0xfd837ab4,0xfc5b8ef4,0xfd1efecc,0xfdc96880,0xfd036308,0x04fb0728,0x0779ad80,
-0xfccd9670,0x08efbbc0,0x07944868,0xfef99b76,0x00c5c2e2,0x0173ee66,0x00c599a4,0x0191cea0,0xfded734c,0xfae188f8,0xf8cb4f98,0xf7e77830,0xfb7b76f0,0xf1f958f0,0xec2bd420,0xe5a65000,0xe60bb2c0,0xe62862c0,0xe6d5ee60,0xe8a204a0,0xe9e25c20,0xeb1ae740,0xedbe9460,0xf0f16020,0xf4098ad0,
-0xf5ecce40,0xf80d4d98,0xfb25aaf8,0xfb033368,0xfb604ee8,0xfce6ecc0,0xfdf19a78,0x007f949c,0x0298a10c,0x0426cda0,0x046c9610,0xfc83045c,0x04588118,0x0502a8b0,0x030fe9e4,0x02d6fa84,0x00bd066d,0x004b182a,0xffb5d216,0xf80761c0,0xf43d5920,0xf5ae4670,0xf6e37470,0xf8c20598,0xf39e5800,
-0xf00d2240,0xec72ef20,0xec6eb560,0xeba63b80,0xea876c40,0xe949ea60,0xe9661760,0xeae2b240,0xeccd29a0,0xf02fb3b0,0xf3fe9f50,0xf66f60d0,0xf8f37ad0,0xf9f29a90,0xfb6a80f0,0xfc21b114,0xfd0b56e0,0xfd9c7318,0xfdcca980,0xfeb2111e,0xff4b81d4,0xffbc8aa7,0x018f93ee,0x0378cb60,0x03022b44,
-0x00aee006,0xffce892c,0xfef4109e,0xfde6b324,0xf9b3a718,0xf9701ea0,0xf8a24518,0xf900a528,0xf7caa9a0,0xf5b1cf10,0xf4227b90,0xf3559250,0xf35b8c20,0xf3b08600,0xf4385a70,0xf54fcfa0,0xf5fc06b0,0xf6457390,0xf654f460,0xf5dbe410,0xf5d042a0,0xf51f2840,0xf52620d0,0xf59eda40,0xf6b09ff0,
-0xf6fd9df0,0xf7a6d580,0xf9a2ae68,0xfa3c50a0,0xfc405be4,0xfee3a58e,0x00e0e1c6,0x01e2c40c,0xff02f815,0x01112d0a,0x01439fd2,0x0090e71c,0xfd10dbdc,0xfa882cf8,0xfa8e61c8,0xf8d8c7f8,0xfa5674c8,0xf9975ee8,0xf7c6b3d0,0xf5a61600,0xf3afe1e0,0xf3f1e590,0xf3d42500,0xf3843610,0xf3cc7dd0,
-0xf3fec460,0xf41b3220,0xf478de00,0xf519b130,0xf6460fb0,0xf5bb1670,0xf5363200,0xf47a1e70,0xf45daf20,0xf3a62520,0xf4670e60,0xf7257ab0,0xf7b871d0,0xf89b0268,0xfa10af00,0xfc725900,0xfbf05500,0xfe005ad0,0xfd1ef43c,0xff8ed5e6,0xff26af35,0xff97df5d,0x000ba6d2,0xff070dc5,0xfe5c3b0c,
-0xfd1ffeb8,0xfb9b6410,0xf6a9ceb0,0xf4a96590,0xf5004ca0,0xf4beb210,0xf491f650,0xf42b6a90,0xf3c06840,0xf3576520,0xf334efb0,0xf314ede0,0xf304d810,0xf2f56d20,0xf2c49f60,0xf2ac1ff0,0xf29c20d0,0xf2c067b0,0xf2e97ad0,0xf33af670,0xf3889e70,0xf337a8d0,0xf7f27af0,0xf64c3db0,0xf65a1400,
-0xf6f6f770,0xf81c3f50,0xf7ec7ef0,0xf80b61b0,0xf787c340,0xf7fc0760,0xf78a1d80,0xf8361500,0xf8471b90,0xf7aaa320,0xf73fa290,0xf6adfb50,0xf6109350,0xf5066540,0xf5925f60,0xf5adef10,0xf56f4440,0xf566f250,0xf539d870,0xf51c4970,0xf4f64ca0,0xf4d3af60,0xf4aa8830,0xf47fe860,0xf457b040,
-0xf43a1330,0xf40e8d10,0xf4574ab0,0xf4845770,0xf4ad0c70,0xf4ab0f60,0xf50a21f0,0xf473dbe0,0xf4923b50,0xf56a1ff0,0xf9418d18,0xf51a5ce0,0xf5e35e10,0xf8fa3be8,0xf8cafdf0,0xf8d21110,0xf891af08,0xf88cc860,0xf84d8eb0,0xf85820f8,0xf62d1980,0xf587c370,0xf86c6570,0xf5b269c0,0xf46e2b50,
-0x0194d990,0x04587ec8,0x00f786bf,0x02160cc4,0x0202aac4,0x0295a630,0x01c41d32,0x018a06d6,0x018556b2,0x016e526a,0x015888fc,0x01409bc6,0x0112b008,0x00eca288,0x00b5408d,0x00b56644,0x00b5dbef,0x00cbd56c,0x00e0f584,0x012d9ba8,0x00187913,0x03d67a18,0x058bf7c8,0x08526620,0x031aeea8,
-0x05986af0,0x08812950,0x0845a0f0,0x080f3d10,0x0772c600,0x082c4730,0x0834c950,0x078c2d28,0x0570a7f0,0x02b07560,0x07ee4fa0,0x05e90d38,0x0647d750,0x0218b80c,0x024a6c40,0x03022c84,0x046f9fd8,0x02dcfe14,0x026ff520,0x0233d57c,0x0220009c,0x01d03c8e,0x0167ce16,0x00d10ac3,0x0037d71a,
-0xff97579e,0xff77070b,0xff9577e3,0xffd3b8d4,0x002e6157,0x002b351d,0x005e346a,0x0520ba58,0x022a640c,0x02970904,0x02e7ebe0,0x03b2c120,0x03b75c48,0x0315ea20,0x0339d310,0x03abdfb0,0x0353c594,0x027bbb3c,0x024d11b4,0x02a1eed4,0x037dc5f0,0x030b76cc,0x01d2b666,0x04d2ec00,0x04c53388,
-0x0459a580,0x05752358,0x07fca8a8,0x03c59c2c,0x027b67d0,0x015c7d02,0x01c4c370,0x01c88898,0x014d261c,0x002d8d65,0xff0bcbd1,0xfdda3da0,0xfd8c0298,0xfd8f6d88,0xfe0736f8,0xfec31cd2,0xfec3fbcc,0xffd115f1,0x01b57152,0x01dbeaaa,0x01d445fc,0x01ce9988,0x035398b4,0x04a857a0,0x046c8a58,
-0x02cdb520,0x038ffb44,0x03dc62d0,0x0496a9e0,0x0157ad44,0x02d2a508,0x02d2222c,0x02be4214,0x033efdfc,0x02fe513c,0x039612e8,0x03ea6f44,0x0664a5d8,0x0abfbcb0,0x059fa2d8,0x03c7d79c,0x022ae594,0x0380ebb8,0x03757254,0x02b2e40c,0x00b4201a,0xfe829194,0xfc3ac3a4,0xfba73738,0xfc027744,
-0xfca0f68c,0xfd5e4cec,0xfd807150,0xfde3de60,0x0078a3e2,0xfef929a6,0x0098c538,0xff0364e9,0x00188143,0x034c8464,0x0355bd28,0x04272888,0x0210e088,0x05427f88,0x03c13bbc,0xff113b46,0x00e13a06,0x01275df6,0xfffa6c8e,0x00dcc1ed,0x0c668b20,0x0a42a360,0x0b002720,0x09d92a20,0x0737c2b8,
-0x05fd4b30,0x034e063c,0xfc960988,0xfc371b6c,0xfaf4e860,0xfb2ee840,0xf9927710,0xf8883390,0xf7cae6b0,0xf7520220,0xf6ec7120,0xf727e2b0,0xf9e3bbb8,0xfb09e610,0xfd24a9c4,0x012fe518,0xff8cb48e,0x00d9d145,0x00d742a7,0x0289f49c,0x0584af50,0x03f660c0,0x03f8bc28,0x039c1658,0x03aaff00,
-0x03b2f0a4,0x048770c8,0x05292d98,0x06407868,0x08406770,0x0bbe3d30,0x00871d1d,0x009e88d2,0xfb60d600,0xfd15e73c,0x03a47f90,0x052e4a88,0x04f47c98,0x008f9f52,0xff2464a8,0xfa887a00,0xf6f63740,0xf2843280,0xee2ebe00,0xe92f7c40,0xe992adc0,0xecadd760,0xf2fd8710,0xf4e52b40,0xf6438ee0,
-0xf914a190,0xfcfb5b00,0xfe8ec74a,0xff7bee6a,0xff9f878d,0x0108f60a,0x04d312e8,0x0484ba80,0x05e3d268,0x048bcdc0,0x07e11508,0x083ac4f0,0x06ff0f80,0x04436b60,0x02bb9048,0x027ebd24,0x012c65b0,0x012aa16c,0x00e31120,0xff4cd3e6,0x004fad24,0x00c32158,0x05e15498,0x03e4a62c,0xfa81aa90,
-0xfcb518f0,0xfd6e888c,0xffa079e9,0xff03ecd9,0xfd50a290,0xf9e0ac80,0xf86ee978,0xf7cc9790,0xf92746b0,0xfab84a98,0xfc464aa0,0xfd6032c4,0xffc0d015,0x010341aa,0x033c8f88,0x02b48514,0x048213a8,0x0996e250,0x06330370,0x056b9218,0x009a048f,0x06629428,0x052f7318,0x033b6940,0x03452cb4,
-0x026df248,0x02e27a98,0x029e3ab8,0x0212ae54,0x0483d478,0x0101c28c,0x0158a50c,0x056a07e0,0x0bdf5e10,0x0db30f10,0x0a141320,0x07400888,0x03e501a0,0x042ae1e0,0x00d6a525,0xffea0349,0xffffc2e1,0xffcafb7e,0xff15766d,0xfe24ac08,0xfcc1923c,0xfcb40c78,0xfcd9b6b0,0xfd6017ec,0xffaf3396,
-0x008c94ec,0x0033d95f,0x017bf726,0x04a8ad58,0x01d8c0c4,0x012428a6,0xfefaa546,0x02c4b740,0x04029880,0x064570e0,0x02f95668,0x021a4378,0x021d9338,0x024eb94c,0x03ee9d18,0x05aa9c90,0x0333a948,0x03d18ec8,0x08f6df90,0x0b6af560,0x0b17a790,0x078763e0,0x04356ea8,0x03048bec,0x04a4ec90,
-0x0385fb54,0x02deaac0,0x01925c88,0x00b588c3,0xff6c54e8,0xff45f18a,0x0027dd22,0x01457b90,0x020ed174,0x002a6dd2,0x00e27064,0xffa5bb66,0x0178553c,0x034bfdbc,0x04ca6ba0,0x02d802e4,0x02763fa0,0xffa92c04,0x022f3518,0x030f28ec,0x04d22878,0x03a435b8,0x030210ac,0x029da6dc,0x04dc3238,
-0x0077b061,0x00f3f7ac,0x03b5aacc,0x06cb2a28,0x09d90d70,0x081a2fb0,0x06be1ac0,0x04e92ab0,0x01e96a58,0xff4c5f52,0xfd557fc8,0xfd1340f8,0xfd23e4f8,0xfcfa8078,0xfe2d50a0,0xff72e7e9,0x022429e4,0x03ca8074,0x04e78bd8,0x0372f47c,0x0325f438,0x04ea8108,0x03f8828c,0x039d1fa8,0x0267f140,
-0x01d563ca,0x012ac648,0x012ffd6e,0x0396a7cc,0x02b13604,0x02ccfa58,0x02ba7f90,0x03bed380,0x03de6998,0x01b6f1c0,0x01988b64,0x05aa11f8,0x06464bc0,0x06d85260,0x078a8c60,0x08778db0,0x06bb5dd0,0x05629598,0x04124918,0x03b22100,0x034c2088,0x029e0fd4,0x02352af8,0x0180fc86,0x00372c34,
-0x01b6d664,0x02d5fd38,0x04211758,0x04e3ec50,0x06fe6c90,0x06f600d0,0x03ed80b0,0x03d064e0,0x03665710,0x03bfb160,0x02becb78,0x04e788e8,0x032a1344,0x05243728,0x033cbc30,0x03b4ccfc,0x02aa35e8,0x02ad6f04,0x02764384,0x026ab188,0x025ca190,0x042fe330,0x03774014,0x06c966f0,0x06218cd8,
-0x05d5eb18,0x0596e630,0x056c7168,0x055d3f88,0x05184080,0x051a7e90,0x04f30838,0x04de5468,0x04b05948,0x04a33a60,0x044ff340,0x04d622a8,0x051b6be8,0x057f5c50,0x05a9cfa8,0x05deb1a8,0x06628600,0x01591284,0x0499ac88,0x04da1670,0x04d3a2a8,0x03ec5d44,0x04f6b390,0x05222858,0x058623d8,
-0x04dd69a0,0x05e13998,0x05f355c8,0x05833028,0x05cd4168,0x05564440,0x0558a458,0x062608b8,0x055fa820,0x065d4110,0x05a07708,0x05ae4960,0x05792c48,0x056e8038,0x055b37f8,0x05490310,0x05660928,0x057d0870,0x05948a38,0x05a51f08,0x05b3fd28,0x05b6f078,0x05bab0f8,0x05b97288,0x05bbe9a0,
-0x05e05cc0,0x05aa8260,0x06bf1b50,0x05407a80,0x041ade98,0x0055aece,0x059df6c8,0x0442b1f8,0x0109054a,0x01277fb6,0x014b0ee0,0x01c71dfe,0x01b854b8,0x01eb4dfc,0x0236b85c,0x04a2ec80,0x060d05c0,0x01a83ee4,0x0460fae0,0x061904c8,0xfc4ffc48,0xfaf139a8,0xfc60a490,0xfbc356c8,0xfba0f1e0,
-0xfb691c58,0xfbdba5e0,0xfbf34b50,0xfb9665b8,0xfc1ce858,0xfc469894,0xfc73b3ac,0xfc5f139c,0xfc642204,0xfc569840,0xfcb27ae4,0xfce4414c,0xfd30bbc4,0xfcfdd1d8,0xfcdecfb4,0xfd975d00,0xfb792838,0xfab96ad8,0xf9dbc330,0xfc54c8a4,0xfb617820,0xfaccdb20,0xfa799da8,0xfa768f90,0xfaa7b490,
-0xfa6ecda8,0xfa43da60,0xfa2b5d00,0xfaf57fc8,0xfc116e40,0xf9ed4aa8,0xfa763718,0xf9b68b60,0xfa1268d0,0xf9746268,0xf9193bc8,0xf8daa398,0xfa124360,0xfa45ebd8,0xf95bc670,0xfab82a68,0xfb2f7550,0xfb8e2f50,0xfb49c0c0,0xfb5853e8,0xfb5e2260,0xfc594f44,0xfcf7d910,0xfdc51e44,0xfd3e6480,
-0xfd57dc18,0xfd688944,0xfabe6e60,0xfca02ca8,0xfc7c8854,0xfd50bdd0,0xfd847418,0xfe9f65ec,0xfe0a82fa,0xfdb4cd6c,0xfd78f6e0,0xfda452f0,0xfdceb7d4,0xfce1a234,0xfcace240,0xfbe8a3e8,0xfba958a0,0xfbb253c8,0xfa720f00,0xf8f55d38,0xf6df6e40,0xf608bb80,0xf4c69dc0,0xf70d1fc0,0xf7a8e480,
-0xf5f00d60,0xf8fcd040,0xf994fd48,0xfa731818,0xfa3d84e8,0xfa6a9c00,0xfa6abec0,0xfc7db7a8,0xfdaae624,0xff1c1c28,0xfe0ac7ee,0xfe456f58,0xfdf65e40,0xfc93d90c,0xfd0500b0,0xfdcb0db8,0xff74e0a5,0x000b73e9,0x0201d330,0xffdc4453,0x0015a24c,0xff6a0f17,0xfff9d5ac,0xff074c46,0xfe555a3e,
-0xfdf44c08,0xfd08dbd8,0xfc70ba1c,0xfb8dc798,0xf8a02508,0xf4e0be70,0xf18ed3d0,0xf0a74d80,0xefb7cb20,0xf3ffa6b0,0xf4cb6e10,0xf21adae0,0xf6971430,0xf7f19c30,0xf88d26d0,0xf8087340,0xf83d37b8,0xf89300c0,0xfc086468,0xfe3c7e6a,0x008a7c8a,0xff094c61,0xfee71a64,0xfe96d896,0xfc33e1c8,
-0xfe0d6318,0xfda5ffe4,0x0010510d,0x01974f4c,0x04884018,0x02e5f35c,0x026754b8,0x021e4fbc,0x02fa87ec,0x0169a828,0xfed74634,0xfe590c58,0xfd6e0e9c,0xfc471c6c,0xfab74de0,0x07d38ed8,0x0912fb00,0x066cdd50,0x02f5d0b8,0xfb755de0,0xf7f6ee70,0xf5c3be40,0xf8840dd8,0xf7d711f0,0xf939fea0,
-0xfc2c011c,0xfc948990,0xfd5bf1bc,0xfcb686ac,0xfda4a2cc,0xfdffc664,0xff9986ac,0xfe69749c,0xff60acf4,0xfe71fa82,0xfc10ed94,0xfee07d20,0xfdfef610,0x00548a16,0x0114bc24,0x03e7aec0,0x00ed2673,0x01b530b8,0x04994398,0x041dfe60,0x04af3d88,0x0502d710,0x03514f9c,0x032a6aec,0x0483a038,
-0x06305820,0x05590480,0x06e5ebf8,0x0a6ebeb0,0x0a4e7970,0x041fbba0,0x0cc40cc0,0x0d8834e0,0x0c9a2f00,0x047fd490,0x01463aba,0x0129a652,0x004ab33d,0x010f4428,0x01cb3114,0x03deb8cc,0x0331d7a0,0x0151a382,0x0103ae76,0x01e58686,0x002f2f10,0xfe9cd90e,0xff160ed9,0xff53a665,0x01596788,
-0x026e5020,0x06baf0c8,0x03d95930,0x032d576c,0x01cfc930,0x068d81d0,0x066cf0d0,0x042d8800,0x06188118,0x06f85628,0x05b05a68,0x05b6d208,0x03e52638,0x03eec030,0x0288f88c,0xfeedca6e,0xf794a150,0xfb56c780,0xff47dd1c,0x084970c0,0x02a44210,0x010cb2f4,0x00e70646,0x00768934,0x00891b7b,
-0x004e51fe,0x00d14bff,0x007bf95d,0xff532ddd,0x01ad0ff2,0x02b0897c,0x01333c98,0x00c05a61,0x008bcc68,0x000343ca,0xffa878d1,0x019682ee,0x0b05c560,0xffdec05e,0xfdac89c0,0x002ed524,0x02b4d184,0x04859568,0x0a5520b0,0x022d7f34,0x00628a4e,0x0346dfb8,0x0332711c,0x020f962c,0x00c75271,
-0x0142f6f6,0xfeb1495a,0xf5298330,0xf81f6eb0,0xf7813db0,0xf8cd8da0,0xf4d81d90,0xf39d59a0,0xf34bc5e0,0xf88c1220,0xfd702b74,0x01615042,0x033c9c08,0x03ace72c,0x02b1b300,0x03d949fc,0x047d6728,0x04498ec0,0x03796020,0x02f37a20,0x03272a74,0x03098764,0x043d11f8,0x0a110720,0x02c1531c,
-0x00cf5862,0x02729f6c,0xfffc4727,0x015ecbfa,0x066fff28,0x02c3ede4,0x01a4864a,0x0177448a,0x015d15ac,0xffcc051c,0xfe709dfa,0xfc782130,0xf98f25e8,0xf32d6b90,0xf8adb110,0xf9fc78a8,0xf9d99470,0xf85f58f0,0xf645c610,0xf3c3e1a0,0xf54652d0,0xf792d860,0xfb231f78,0xfe182510,0x007c3d5f,
-0x01ac9fe2,0x02038348,0x02082390,0x0243ba3c,0x0289a9dc,0x02b3f89c,0x03541624,0x029f5594,0x01e6ecd8,0x02236354,0x032a3308,0x02e3e854,0x0285f6d4,0x01e65d12,0x018adbf2,0x01894450,0x015c3514,0x01a5fe50,0x01317066,0x00125017,0xff385b03,0xfdc8c600,0xf9b63628,0xf77be1d0,0xf79893c0,
-0xfabf6bd8,0xfbea84d8,0xfb7ebb10,0xfc78feac,0xfd2b8da4,0xfe060608,0xfe3d9cd2,0xfeed60d6,0x00056983,0x01eafcec,0x024c7ed4,0x004369db,0xfefd5b7a,0xfea633ac,0x00ae43df,0x0142a3c2,0x00799e92,0x0111807a,0x01acf55a,0x02315060,0x01f4f464,0x0256289c,0x02aa62e0,0x01b2c1dc,0x0352156c,
-0x036e63b0,0x02e941a8,0x02914d90,0x0207a240,0x0240fc58,0x00f87d02,0xfbeac630,0xfa736cf8,0xfb6389a0,0xfc1c9d70,0xfc689210,0xfca68be0,0xfd220cd8,0xfd99b564,0xfe2337f0,0xfe714ce8,0xfed690dc,0xff6cf161,0x002cdc0a,0x01168b48,0x005e623d,0xfffa7765,0xffb874bd,0xff34d349,0xfd7f89c4,
-0xfd7b3884,0x0046f878,0x006994e4,0x01089864,0x014ba134,0x026b4ee4,0x01e13142,0x02929c00,0x00fc9bf5,0x020ff5c4,0x00a6b014,0x00a02f82,0xffc9a9f1,0xff76428f,0xfee9c4c6,0xfe967026,0xfd23be94,0x01f7388c,0xffb05c10,0xff6c91da,0xfedf72a2,0xfe8093d8,0xfe2e2264,0xfdd01828,0xfd70d050,
-0xfd91c1ec,0xfdd0e8f4,0xfe10404a,0xfe5ccda4,0xfe8d0b9e,0xfefd6e28,0xfebf88c2,0xfea73d7c,0xfe796dca,0xfe7ec43c,0xfe8ba932,0xfe60a066,0x01fea094,0x006aaea0,0x00c6c3ca,0x00fa74b2,0x01d79740,0x01a041ce,0x017d9950,0x016047d8,0x01e1a262,0x016def0a,0x018d0eba,0x0215d41c,0x0196598a,
-0x01a14064,0x01765e5c,0x00a37550,0xff481295,0xff028ecb,0xff345ce2,0xff0b3ca1,0xfefde7d6,0xfee28a5c,0xfecc7f4a,0xfea2936a,0xfeb51084,0xfeaebd18,0xfea9516c,0xfea52d04,0xfea5d1a4,0xfeaf7804,0xfeb980a2,0xfec83184,0xfecef5ee,0xfec5848c,0xfef2f8da,0xfe50d266,0xff223bfe,0xffc9733b,
-0x01c06b76,0xff60b2d0,0x0013e26d,0x01c0e430,0x01b43b2e,0x01a839f4,0x0158a3f0,0x016ff560,0x014db438,0x012488f4,0xffcd5376,0xff259674,0x011ddd54,0xffc9ebb9,0xff33b7bd,0x00d0849b,0x012c21b2,0x0051cb26,0x00878f49,0x009311d7,0x00972684,0x00892cf3,0x0086d7c7,0x00730154,0x00aa917a,
-0x00a3da7d,0x00537787,0x0081d397,0x008482cd,0x0083c04e,0x008a971c,0x0095c05c,0x009c1cf3,0x00b859cc,0x00cf1db6,0x0073ea16,0x01a6552e,0x020f9ef0,0x023b83f8,0x01a615e6,0x023a3000,0x028e7f28,0x0263a464,0x02468238,0x0228dbc4,0x023f7148,0x024588a8,0x0265c290,0x0202ebb0,0x01614d40,
-0x01ec032c,0x018a133c,0x005862f6,0x0047cb09,0x008aedcf,0x00ba20cf,0x0099c3e5,0x003d3a9a,0x0015243b,0xfff153e4,0x0097a51f,0x00ad6d60,0xffeab4e1,0x007a23bf,0x008e9a4f,0x0081d78c,0x00740b15,0x007ea6ae,0x00813c14,0x00e2bc9b,0x00d87cd9,0x00dac28b,0x021e4300,0x01525eb2,0x01626dc6,
-0x0206758c,0x0256addc,0x021bc1e8,0x01be4b98,0x01946820,0x01bb8482,0x0144b12c,0x013f9ce0,0x01f9800c,0x01dbffac,0x01d6c08c,0x0177d290,0x0082bfac,0xfe7e94c2,0xfee177d0,0xfff9feba,0xfff4a646,0xfff169fa,0xff6b31bb,0xff535b2d,0xfeb78852,0x0055a9c3,0x0068aebd,0xfed046f6,0xffc6f204,
-0xffc83340,0xffb5848d,0xffb729b4,0xffe1b93f,0x0038ee46,0x00d5e548,0x00f37262,0x0133769c,0x01e52938,0x01e149a6,0x01695fdc,0x02cf829c,0x035c6ee8,0x02f6f498,0x02c63e00,0x0207fb94,0x023e685c,0x01a74e82,0x0208d604,0x0299771c,0x023c5948,0x017ce7f6,0x00f013c2,0xff8e3b52,0xfcb5d9a8,
-0xfd81923c,0xffccd412,0x008341bf,0x00590f3d,0xffddc1c1,0xfeb1a9c2,0xfd88b440,0x000f6140,0x01315a06,0xfef7fa7c,0x009cc56d,0x00978d97,0x0012a0bd,0xff78bec7,0xffa57461,0x0029c891,0x0111b4e0,0x00e8e069,0x01179f70,0x01ca59bc,0x01526f3a,0x013c163c,0x02e3ab48,0x03c97b94,0x04e97380,
-0x031f7158,0x01f52776,0x01f7607c,0x0229f8a4,0x01e83b5a,0x0290286c,0x02e6a468,0x021651d4,0x0178e58a,0xfee5defa,0xfe96ae20,0xfe4e7976,0xfea63c68,0xfc3b9b70,0xfa65de38,0xf6230010,0xf8060ff0,0xffc6799f,0xfbea02e0,0xfa0a1c48,0xf7b43410,0xf98ba7b8,0xfb23eed8,0xfd2ab8b4,0xff133778,
-0xff696511,0xfd405648,0x0072c9b6,0x017f1cee,0x03941e14,0x0378c14c,0x01f004fc,0x024e30e8,0x02b80d90,0x02ed5670,0x04712d50,0x03218108,0x02fc2de4,0x03acb308,0x044c8978,0x03c32450,0x014c70f0,0xff260b4f,0xfe2469b2,0xfe2c8336,0xfd968d24,0x0ade6680,0x09aa4c30,0x0c2dec40,0x0bf3e2e0,
-0x0b96d0e0,0xfe0a8352,0xf8ac3170,0xfccedca0,0xfb2cfa88,0xfb1d02f0,0xf7d6e260,0xf7cc9190,0xf7f237a0,0xf91d0048,0xfaa647b8,0xfc6ea284,0xfd659be4,0xfe691c4c,0xfd88d8e4,0xff3cf812,0x0181dbd2,0x018d16d4,0x011954f4,0x021cecf0,0x02715314,0x0519b9b0,0x02891654,0x01df4fc2,0x01aad646,
-0x040970f8,0x046f15c0,0x06c4fdf8,0x061295f8,0x06b59518,0x0912f090,0x09dd2c80,0xffb0af5f,0xfee3933a,0x01d0705a,0x01390eea,0xff15cb4d,0xfe0e0faa,0xffbc4b59,0x04159bb8,0x05178cf0,0x03c56a90,0xfe6de920,0xfcdded04,0xfa7b5730,0xf8334a78,0xf7557130,0xf6de5850,0xf6d21400,0xf8c9ad40,
-0xfaf36160,0xfd927a00,0xffb9646a,0x00d9706a,0x02871ecc,0x03362bc8,0x049e34f0,0x09d35520,0x036969a4,0x0051662e,0x01aae9a4,0x00509628,0x02dd63e4,0x0a09c820,0x0463d738,0x02282724,0xfec1f758,0xfea21d18,0x00c7d1c7,0x0083f293,0x0104e954,0x0230c5f0,0x044502c8,0xfef2344e,0xfe5141c0,
-0x01ceedb2,0x047404a8,0x086b6a40,0x0b5e34b0,0x0abd3440,0x08eb42a0,0x06942610,0x050bd520,0x03d7a088,0x01ea0184,0x02aadc88,0x01c974e8,0x00879b67,0x018e85f6,0x0136b59a,0x014dea60,0x030f8fc8,0x02ef69e0,0x04760ed8,0x01766b58,0x00935043,0x03fd1c94,0x019fdea2,0x01dc7d4c,0x0365a818,
-0x023f1f78,0x02f12f54,0x01e5040a,0x017fc044,0x0133939c,0x01e70e1a,0x022a85e4,0x01c2ef0e,0x01b516fc,0xfde5da34,0xff1a33af,0x04f8da80,0x0520e640,0x066df8c8,0x081b5430,0x072ce4b0,0x06068ed8,0x0448f680,0x03614a70,0x021d26e0,0xffbb9cff,0x0116241c,0x004a5d38,0xfee7bc7e,0xff8085f0,
-0xff2d519d,0xffb35c6a,0x011be468,0x01f9ffd2,0x02b0c260,0x02624868,0x01aaab22,0x00bc45ef,0x01592d88,0x02aba290,0x04a53d60,0x02c085b4,0x01a0a294,0x01660dce,0x015725a2,0x033b7f98,0x032e06dc,0x03cf2b58,0x030d5398,0x0072d2e3,0x00bd553a,0x016a11f6,0x0445ebd8,0x03092a88,0x033bbc14,
-0x0360600c,0x040ecd50,0x03a94114,0x0285c140,0x008365b9,0xffec8f6c,0x00f3e4f4,0x02078090,0x02677568,0x01b6e488,0x0135287c,0x01a333c4,0x01c7f90a,0x01f7688c,0x0228e30c,0x02572138,0x019ad9c4,0x0181ae18,0x01a9df7c,0x012d08a2,0x0113f8c2,0x01dcfc96,0x013ed8a4,0x01a72a48,0x02210b88,
-0x02cad1a0,0x02e67378,0x03373304,0x02624278,0x016a64fc,0x009d1b5a,0x021895e4,0x030966e4,0x044f3b48,0x02fbaa60,0x020a75c4,0x00d5788a,0x009e05fd,0x00608fe5,0x004c7a91,0x00314584,0xffdd7221,0xff6e664b,0x002bbaea,0x01c2dfb8,0x0208cf74,0x00a5b017,0x0180ffce,0x01b0ae4c,0x01ac871a,
-0x0163dea0,0x01c76f42,0x01821798,0x01daa6c8,0x01608d74,0x02855844,0x031fead8,0x03f6daf8,0x03e84a30,0x03db7ab8,0x03dafbdc,0x0372f088,0x00c01a50,0x019470a8,0x022adc10,0x02f83c24,0x0382fb28,0x03f8ca44,0x04516de8,0x04ef5c88,0x044eaa98,0x03e1982c,0x0351f39c,0x02b8f10c,0x020ba3dc,
-0x013edc58,0x018b026a,0x01d2be3e,0x020a8d7c,0x021eda10,0x0223dbf0,0x02441ef0,0x0043fd25,0x01666ad4,0x0158f038,0x017b6704,0x0149967e,0x019c1270,0x014fc57c,0x01394fa8,0x00e43bd8,0x00a7932b,0x001387c7,0xffdcac84,0xfff20980,0x003bde32,0x00825cf5,0x00e1fb07,0x03432d70,0x030ff7a8,
-0x033a51c8,0x036d2f70,0x03a35a94,0x03cdab60,0x03f823d8,0x04445948,0x03fd677c,0x03da5aa0,0x03b85ebc,0x038cb3bc,0x0369acb0,0x032618d8,0x03407a90,0x033be2f0,0x03487e6c,0x0351d238,0x033d95a8,0x03a141cc,0x03512040,0x03068754,0x02112388,0x0356b984,0x031392b4,0x0291a1bc,0x027fb31c,
-0x02722cd0,0x02737200,0x0264c050,0x026f26e4,0x0248f8e4,0x02c980d8,0x02fea834,0x0256e6d4,0x02fd7340,0x04446bf0,0xfd923950,0xfd2664fc,0xfdb387a4,0xfd89be4c,0xfd587b28,0xfcda4310,0xfcfd15a0,0xfcf10218,0xfc903c40,0xfd5075b0,0xfd81a4f8,0xfd66123c,0xfd7d64e4,0xfda089c4,0xfe0546b0,
-0xfddecbac,0xfde2c928,0xfddde618,0xfdf5d0bc,0xfdf57b88,0xfe23ca54,0xfd61c080,0xfd3e2af8,0xfd50b6f4,0xfddd163c,0xfd8e555c,0xfd6f8be8,0xfd88f80c,0xfd8fdc8c,0xfd89cc2c,0xfd61116c,0xfd611e94,0xfda0eb38,0xfd8d9a68,0xfdc69f28,0xfd817e48,0xfd25c154,0xfd4c0f28,0xfd7f7b0c,0xfd63bb5c,
-0xfcb88268,0xfb50d238,0xfb441180,0xfb1100f8,0xfa536e88,0xfc292988,0xfcb896f8,0xfc647b3c,0xfc7d02c0,0xfcd788a8,0xfdf27260,0xfdb34588,0xfdc5e114,0xfdc2960c,0xfe0e6cf6,0xfe3bf332,0xfe3e4498,0xfd6f4318,0xfe079406,0xfe53a208,0xfee032de,0xff0bb4f7,0xfeb28a8e,0xff05b182,0xfec70d7c,
-0xfe729ffc,0xfe5c2d2c,0xfe9138c0,0xff0dac45,0xfeec4f58,0xfec021b8,0xfeca41ec,0xfddf3388,0xfd11c71c,0xfce225f0,0xfc7d2034,0xfb99cff0,0xf8e48e58,0xf92e36b0,0xf8e48888,0xf75da230,0xfaa4f868,0xfbbd51e8,0xfb489f30,0xfbaaebc8,0xfc60c7fc,0xfe88053c,0xfdfc7294,0xfe4c4e98,0xfe269504,
-0xfebe4d0c,0xfee397b8,0xfed88d98,0xfe218bf8,0xfe8751b8,0xff54cbcf,0x006889f3,0x008f0834,0xffc81fdf,0x00a9444e,0x008895f9,0x000ca69e,0xff8669fa,0xff74cdc2,0x007d8438,0x001f06c4,0xffdf12da,0xffbe4537,0xfd8cb930,0xfe7afb92,0xfe42297c,0xfdddfa18,0xfbb846e8,0xf6e85ff0,0xf6857c50,
-0xf6208510,0xf439c7d0,0xf8b9a0b0,0xfa583310,0xf99f8a10,0xf9b957c0,0xfb34e808,0xfe8f8502,0xfe22a2b8,0xfe476b22,0xfe304228,0xff50ae61,0xfff046a5,0x00309ded,0xff57953b,0xffe60043,0x00698f9e,0x028c2b2c,0x038df434,0x03299324,0x03515e24,0x026946dc,0x02311b2c,0x013470ba,0x0133315e,
-0x02b87140,0x03020834,0x027a79e0,0x0299666c,0xffab2aa7,0xf8313148,0xfb61d3b8,0xf82a2420,0xf8ba22f0,0xfb71adb8,0xf8ffc3f8,0xf850cb58,0xf5d44f80,0xf9b58c38,0xfb4927d0,0xfbdacf48,0xfc1cd624,0xfc0aa734,0xfd03fd74,0xfd7a1e34,0xff3220d9,0x00a03a56,0xff92f990,0xfee6813c,0xfe1d9746,
-0xfdcae7f0,0xfee729b0,0xffe7d8e7,0x022341a0,0x0217c270,0x00d1d189,0x036ca96c,0x03ae6c1c,0x019824b0,0x03c7ffe0,0x02628b10,0xfe7a228c,0xffbc121f,0xfee6b79e,0xfc59dc10,0xf884b180,0x08ee92b0,0x09331f30,0x05c1b4d8,0x017f5020,0xfea65114,0xf7f9c250,0xf4ea4e80,0xf0cdc6b0,0xfac879a0,
-0xff00f84f,0xfea94bee,0x00202cac,0x00a8f6fc,0x01e2dd30,0xffbd9f18,0xfe7e6c96,0xfd1a3d4c,0xfe398572,0xff229247,0xfd88aad4,0xfcb8b1f8,0xfe48078e,0xff3a3623,0x024ffc60,0x035053f0,0x03884588,0x01c19ae2,0xfffbb0f1,0x0091a1f4,0x00bffe9c,0x026bb354,0x0673e7d0,0x025dff60,0x01f3d5ac,
-0x0481ebe0,0x06f55ab8,0xfcf11aec,0x00389788,0x01c07178,0x0759df18,0x128b3da0,0x0e0bc5f0,0x0c701990,0x08759e90,0x0664c830,0x0370a114,0x004ed3b2,0xfdea62b4,0xfc77ed80,0xfd3e05a4,0xfd43e638,0xfe4e1512,0xff253950,0xfd882e54,0xfcd54900,0xfdad441c,0xfdd99f74,0xfeac2a82,0xfcf30144,
-0x03b4d010,0x0354c610,0xfd31bec0,0x0072fdd6,0xff990066,0x0078c916,0xfe8ac7ce,0x00bd3595,0x04b7bad0,0x070867c8,0x07608088,0x011bc28c,0xfe85b9bc,0x017a3914,0x01836dfa,0x00e740a4,0xfefce002,0xff1d6add,0xfd8d2958,0x0091f77c,0x06163a38,0x0a618750,0x0b033a10,0x062368c8,0x04e14d90,
-0x022c9020,0x00210167,0xfd190be8,0xfc7c0e98,0xfdf88c78,0xfd51bee8,0xfdac8670,0xfed15766,0xfe871a2c,0xff95ffb8,0xfff18939,0x04797c98,0x0468c400,0x00c6b0d5,0x02ba9920,0x022ceca8,0x027e5cc0,0x03839048,0x03d4b270,0x0120603a,0x01a51a20,0x01b18612,0x0112c2d0,0x01cd8a62,0x009a5a49,
-0x007cce1f,0x01214568,0x014828d2,0x01484896,0xff50dfb5,0xfedc5d66,0xfebb162e,0xfffc76a9,0x006c7501,0xfe79043c,0x014263a6,0x026a2b48,0x0403cd90,0x024fec38,0x01ca47d4,0x01cbbb02,0xff5e5690,0xfefceb68,0xff61f6fd,0x00047f09,0x00ca328c,0x009c7eb3,0x004b90ab,0x007c0308,0x0152f702,
-0x00831636,0x00480875,0x013c7bca,0x00b54f74,0x0151cc30,0x01b7a282,0x03318bec,0x0315a10c,0x012795ea,0x00b85621,0x000b03a2,0x00340cf7,0x001cc8da,0xff88e064,0xff295f78,0xfce2691c,0xfcc7a0c0,0xfd9e1090,0x00d5cc8d,0x0143a012,0xfef4be86,0xfe8bf0a8,0xfedbf412,0x00538ff1,0x018e58e2,
-0x015cf57e,0xff6ccb79,0xffa96893,0xff68e16c,0xff5fd28a,0x003021da,0xffd8b277,0x00281907,0x00758d18,0x00eeacc4,0x01deadfc,0x019b624a,0x01278292,0x004ec5a9,0x009b2532,0x00ba1e5e,0x00ceede8,0x0088bb92,0x002b77f6,0xff82b8d3,0x00045651,0x00a35e0d,0x008ff58b,0xffdeffd2,0xff52c881,
-0xfee1fa46,0xfeb6e988,0xfe64171c,0xfd83ac34,0xfe73bb74,0xff82519c,0x010f2de0,0x003dde5e,0xff571d2b,0xfe3f0df2,0xfed02296,0xffa89109,0x007fa99a,0x009b93fc,0x0001d758,0x007e203d,0x0175500e,0x00f9b0ab,0x00da2e3f,0x008137a9,0x007de642,0xffde6479,0x00db7ef2,0x013dd0ce,0x02403738,
-0x0194edf0,0x0144c77e,0x00c7ed67,0x00bacd9a,0x00ed9d5e,0x00f4759a,0x00b2fbbc,0xff86bf0d,0xfef59586,0xff185fe1,0xff23635c,0xff194263,0xff143df2,0xff203cd6,0xff253ad0,0xffd7acf3,0x003407d5,0x00b59533,0x012770ce,0x01e5267a,0x02828a8c,0x02559038,0x01fb037e,0x01bf7c7c,0x01888ffa,
-0x01749006,0x0140f228,0x01f8e8aa,0x00ba72a6,0x006feed1,0x0045ae13,0x001ebd83,0xff748119,0xff6719d7,0xff2255cf,0xff2fc6b0,0xff02cc6b,0xff3f0f88,0xff116986,0xff5347eb,0xff3bf758,0xff16db7a,0xff057120,0xfea63da6,0xfe2660fc,0xfe470218,0xfe3a014e,0xfe3e8a4c,0xfe363722,0xfe2fa72c,
-0xfe0fdbda,0xfe3e6628,0xfe62df70,0xfe811964,0xfec27590,0xfeedbeda,0xff3b195c,0xff11b2fc,0xff0dbd34,0xfefd2e36,0xfef326b4,0xfef4e7c4,0xfea830ce,0xff349230,0xff9f507c,0x00b0ef41,0xfea938ac,0xff32d6af,0x0019a029,0x000c282e,0xffff9222,0xffe41b69,0xffe39818,0xffcdeebc,0xffdbd048,
-0xff37acb6,0xfe9bccbe,0x000bb455,0xff1d4173,0xfd6f2580,0x00ae441d,0x006db2e0,0x007b1936,0x00a9eb50,0x00d31f6f,0x00e31051,0x00cf9f3a,0x00b80003,0x00bb276f,0x007453de,0x00807826,0x00ee2107,0x00bb5fd8,0x00af8401,0x00856feb,0x008c409a,0x00833fab,0x006c6a17,0x008ec372,0x008f460a,
-0x0061b39b,0x00b762df,0x00ca6338,0x00a41243,0x00e7b870,0x00da2dab,0x00732e49,0x009b7ff0,0x0095d8b1,0x006c11c3,0x007b75de,0x0084907a,0x00bd5a02,0x00b46349,0x0090c72c,0x006b95a0,0x005ff546,0xffb314ba,0x00a5afe7,0x01102490,0x01544148,0x014a3b74,0x01336950,0x010b150a,0x01259cbe,
-0x0035e28d,0x005a1aae,0x01a3a3b6,0x014b5ada,0x0113fef8,0x007d30cf,0x00792d0b,0x0065c304,0x00327cb2,0x0089ed0e,0x0083c2c9,0x00350972,0x00a54bb7,0x00cc66fb,0x013be328,0x01391970,0x0120ebe0,0x00a924cf,0x00f27996,0x00e94820,0x00914ff3,0x0098884e,0x00b13b8c,0x0129de8e,0x00ac285d,
-0x006639f9,0x00694e9a,0xffcb9287,0xfe92c920,0xffa42394,0x00dd23c9,0x017fb73c,0x01f47c50,0x0258f0cc,0x01a809c4,0x01ec7362,0xff8e86c5,0xffe7a71d,0x025d6830,0x018649fa,0x0150dcac,0x00402828,0x00377829,0xfff58dca,0xff8b666e,0x0042b538,0x003fac0b,0xff9cb408,0x00681e74,0x00bc2765,
-0x0187db46,0x0189a2ce,0x01690bce,0x005c8542,0x0140da78,0x00ef1499,0x006d59a5,0x00525cca,0x00784696,0x01acf704,0x005ac0b0,0xffd1f92f,0xffe01a01,0xfebc2ed8,0xfdf7ee0c,0x005b3966,0x01c4b2b2,0x02742f88,0x02f218e4,0x02fcf6a4,0x02db7638,0x0361b200,0xff97c9f5,0xffd0169c,0x0413c868,
-0x0306f960,0x022d4070,0x003cbe9d,0x0012c040,0xffd82053,0xff1b4728,0x0022f071,0x0020dd82,0xff2f07fb,0x006476ab,0x00e656f3,0x020cdc68,0x02a31fe0,0x02677d28,0x00c9b1fb,0x02b648a8,0x027b4a20,0x010955de,0x00d6c405,0x00e55c29,0x02b35404,0x010d4e48,0x001c73be,0x0067d6a0,0xfdf1a624,
-0xfa977238,0xfa2fcab0,0xf892aec0,0xfa5b07a0,0xfdcb6a00,0x01415cc0,0x00474ac8,0xfb9fa1b8,0xfccfd5e0,0xfd4f76d4,0x003f93cc,0xff93e57a,0x001017b4,0x00334a9b,0xfe95e038,0xfdd3f368,0xfe3cf532,0xfebd4cc0,0xfeae440c,0xfeb41a26,0xff7f5d00,0xff6c287a,0xffd2c045,0x011ca3e4,0x01f2f2f4,
-0x0153d7d2,0x0277cc30,0x02a0b648,0x01337090,0x0288e7f8,0x00d6b2c7,0xfeee0006,0xfeb59580,0xfe54f688,0xfce4cac4,0xfba08b50,0x00dc1b2e,0xff6d91f7,0xfa14ad70,0xf7e06880,0xf494fd40,0xf98d2398,0xfb360548,0xf81f15d0,0xf7fdcd30,0xf7f6f6c0,0xfca8c4a8,0xfadd8e40,0xfa387d40,0xfa2fdbe8,
-0xfa0122d8,0xfc18371c,0xffb9cf91,0xfec923ce,0xff120fb8,0x00edc147,0x00e8062b,0x0177e770,0x01f7311c,0x030cd8c0,0x02efd394,0x01ab5c86,0x01196af8,0xffe8ce3b,0x00a78f20,0xff8ed5ba,0x01636374,0x034ebbf4,0x0283aa84,0x007bd4e6,0xfd0f00d4,0xff619c31,0x04308730,0x07f55248,0x0bb7c490,
-0x0d087030,0x0a12e460,0x0b058a60,0x03f546dc,0xf6e4acd0,0xfa423388,0xfae2bda8,0xfcdb34a8,0xfc30a90c,0xfce47030,0xfe946b16,0xfd945640,0xfd925bf0,0xfe79d43e,0xfdfed258,0xfdbd6e14,0xfdedd434,0xfdff4478,0xff75473b,0x00665927,0x0542a670,0x04812788,0xfe1921f2,0x0142c61a,0x00893ade,
-0x008946e9,0x002da7d0,0x0114b71a,0xff16e160,0x05e08300,0x08b01dd0,0x077c2708,0x0576fb90,0x00674132,0x0039c2dc,0x00c31a86,0x01a45b86,0x01fdb0a2,0x05fe5a18,0x06841650,0x0110d742,0x044938c0,0x01f48922,0xff271393,0xf9f6f7d0,0xf6c93170,0xf5fc76c0,0xf6ba82c0,0xf7db2110,0xf99031d8,
-0xfae329d0,0xfc2026ec,0xfd8a6ccc,0xff199058,0x00701d05,0x000f788b,0x028ec988,0x0265d950,0xfee37250,0x01c80ea4,0x01cb4fc6,0x009ac869,0x029e1820,0x03d11ec8,0x033c936c,0x0392e4cc,0x02678fc8,0x002b4f8c,0x0071ca25,0x01f155dc,0x020d5388,0x01f77fd8,0x02d53044,0x048cb9f0,0x03867714,
-0x01331714,0xfcb0b950,0x014d9f08,0x04328e18,0x07fd3f68,0x068bae30,0x059a13b0,0x03d5f854,0x03456b28,0x0240a944,0x021d335c,0x0210a198,0x02218504,0x021c1ef0,0x0173e27c,0x01b79670,0x016fad3c,0x031f0164,0x035795a4,0x01e92d84,0x00d9a280,0x0066ff8f,0x0003431b,0x00c8e117,0x00e1aaad,
-0x00e9c78f,0x026b3a6c,0x030f3bb8,0x0278e704,0x0270c7d0,0x01d5be02,0x02601974,0x037afea4,0x0439f688,0x04291d78,0x02fd4c04,0x0184d3c8,0xfefbd558,0xfe4ff738,0xfeaa5220,0x01898276,0x00354e5b,0xfee9dfb2,0xfd0b8114,0xfc029bcc,0xfcc88e4c,0xff7950d4,0xffd1bfb9,0x005ede89,0x00204af4,
-0xff6c8036,0x001f7205,0x007b8886,0x0104d888,0x0128a608,0x011bd3f2,0x01843eea,0x0198338e,0x01f0504e,0x0273bb74,0x02e2c3f0,0x02c3fe0c,0x02bb23c8,0x02423558,0x019fe614,0x018c552e,0x023d1e24,0x02b1b104,0x027b22ec,0x024b5580,0x022f4020,0x0145e798,0x00801345,0xffc6bc9b,0x005e6381,
-0x00ab6e04,0x00f86721,0x0191a94c,0x02571a88,0x02f8a150,0x02c5ccb4,0x022de23c,0x017e260c,0x014be4f2,0x01c1bbe4,0x0167045c,0x00e38850,0x0186371a,0x01f58cb0,0x01eee2be,0x019be6fe,0x01e85886,0x0160c19c,0x01b1c3aa,0x012bda6c,0x0132d9b2,0x00d7ddf4,0x00e4a57e,0x0112624c,0x013698dc,
-0x0141aaa4,0x01cbdfd2,0x00759595,0x00f11e47,0x0079a180,0x001a9f24,0xffcf34a1,0xff7f74f9,0xff49d9f4,0xfedd8280,0xfeea0abe,0xfee40814,0xfede8d5c,0xfefaa00c,0xfefe37d0,0xff27e6bc,0xff476b7b,0xff9a01ef,0xffe5284b,0x00252d4f,0x0036b0d7,0x0079e375,0x004b0c80,0x00b5cb65,0x00b85a5b,
-0x00a45b6f,0x00b3b62b,0x0107cb30,0x014831ea,0x0173c712,0x0179e038,0x01f346ca,0x02407f60,0x025b0278,0x02040cd8,0x01976c8a,0x016f26d6,0x01675a9a,0x00696165,0x00f43309,0x00b5b8b7,0x00aa777b,0x0089cc5b,0x0074a79c,0x005af1fc,0x003c49fc,0x004a175f,0x0052ae11,0x006142c6,0x005d5794,
-0x005e18b7,0x005ab913,0x006bb6f6,0x007265b9,0x007b8c42,0x00854f3e,0x008e1690,0x00c1a608,0x004fe83b,0xffeddd6d,0xff21f554,0x009d561a,0x00115830,0xff1bc0da,0xff3fbd13,0xff5f47a5,0xff8d01be,0xff906ac5,0xff9f64ce,0xffc6541f,0x005b8ce4,0x00edc4ac,0xff6ccaa3,0x0016550d,0x00f38c33,
-0xff5788c9,0xff3a8242,0xff4184cb,0xff26c891,0xff1e92ef,0xff42b15d,0xff4d718a,0xff4c3008,0xff36c89a,0xfeff9b76,0xff0265a2,0xff488d31,0xff53c252,0xff5d16dc,0xff4b3de9,0xff50ce5b,0xff5ffad2,0xff98c22a,0xff72329c,0xff7710e1,0xffbcfec9,0xff87c7e3,0xff88b771,0xffafadcd,0xff9878aa,
-0xff887d85,0xff8a3a30,0xff74fc79,0xff6b5f7f,0xff618fb2,0xff62f567,0xff720f42,0xffaf76c4,0xff67b14f,0xff56707b,0xff3a2493,0xff3c58c3,0xfed192ca,0xfe986e5a,0xfe6d5ac8,0xfe9be932,0xff179bbd,0xff4bc312,0xff24431d,0xfeb149a0,0xfdec7750,0xfdeea780,0xfec03390,0xff011537,0xff2d38ae,
-0xff0af96d,0xff1cf78a,0xff3d47b9,0xffdda0b3,0xff6ffc0c,0xffa3dfc1,0x0013842e,0xffc774c5,0x00367be1,0x00410d61,0x0026ad24,0x0004dd0d,0x000ad4dd,0xffad3424,0xff89b57d,0xff843310,0xff8806ff,0xffb84faa,0x002d477a,0xffc61bcc,0xff65201a,0xfec2c2c6,0xfec0ec18,0xfee7e834,0xfea597a0,
-0xfda75864,0xfdbca090,0xfea067a6,0xfec44fae,0xfee83334,0xfe6fdcc8,0xfd03eb14,0xfce0d190,0xfe603760,0xfea38a9e,0xff107f6a,0xfecd8550,0xfef676fe,0xff3a09cb,0x0064e1a2,0xff88160e,0xffe03ba6,0x00755a0c,0x006308cc,0x00f8b13c,0x016003bc,0x01094cc0,0x00c9a5c6,0x012a367e,0x004954a6,
-0xffdb41ac,0xffdbf66f,0xffc850a3,0x0021fd3d,0x0144b12e,0x00334afd,0xff877eb3,0xfe8e2888,0xfed3f9aa,0xfdc1dd60,0xfddd55bc,0xfd1b2b14,0xfdb8abdc,0xff3ba50d,0xff49bed7,0xfed9ff5c,0xfdacc2d4,0xfb07cf30,0xfb075e68,0xfd8a64a4,0xfe4df950,0xfeb58794,0xfec688d8,0xfee2f3b4,0xff4616a6,
-0x00feab9e,0xffb31060,0x00509a81,0x012612ce,0x00925590,0x01901a4a,0x020f8cb0,0x01fad41c,0x016b8940,0x014cd70a,0x01713b9e,0x01a2f5c6,0x008ce8ef,0x007afa1d,0x00a7703f,0x0287ee0c,0x00e37dea,0xffa9c0be,0xfddea2d4,0xfd6fd468,0xff617a78,0xfcb4fef0,0xfac27080,0xf9e5c198,0xf83aa2c0,
-0xfbe0c350,0xfdc2e9e0,0xfea59a3e,0xfe3b045c,0xfd026e28,0xf9ebfca8,0xfc4c6620,0xfd3e10c8,0xfd1b7d54,0xfdeb2b2c,0xfe8ac51e,0x002ecd69,0xff6b81bc,0xff557520,0xfe6aa2e4,0xff071a34,0x00e8520e,0x020f3f84,0x011cd160,0x01836428,0x03760ea4,0x020bd690,0x012f5c0a,0x00de577f,0x011d5040,
-0x0036423d,0x00582938,0xfe701daa,0xfdfc0fbc,0xfea0a812,0xfffc6e51,0xfa7112a0,0xfabffae0,0xf8d1ec58,0xfa5fda98,0xfe1b02ac,0x00fa2093,0x01192020,0x01aeeac8,0xfa42eab0,0xf93c4960,0xfc7bc38c,0xff5a3228,0x00ddc073,0xffd1042b,0x00d64f53,0xffe0884e,0xff0ed130,0xff721d0a,0xffb30097,
-0xff2434ec,0xff3d7b0f,0xffa7ecd5,0x00e35c36,0x02f3466c,0x02b3dcc8,0xff2e082d,0xffcb7bd8,0xffe67a81,0x006f1db9,0xff701dee,0xfffc6b4d,0xfee2953a,0x02836ea0,0x0239f3c4,0xfef79816,0xfc0f0a7c,0x0b478270,0x0d6fe620,0x0ab9a5f0,0x06ff5400,0x01dcd17a,0xfbaadaa0,0xfa197c98,0xfec0bbb0,
-0xf898ad28,0xf8e33dd0,0xfdf089d8,0xfe9edc60,0xfe71fac2,0xfaef6968,0xfba60af0,0xfc137818,0xfdb92eb4,0xfef4fb88,0xff9bfaf8,0xff113015,0xff239b43,0x00657c0f,0x030478d0,0x015407c0,0x00c6aafa,0xffb86cf1,0x0052ad44,0x00320df0,0x0020426a,0x007fec2c,0x011c2810,0xff7f303b,0x02f8ca20,
-0x05747720,0x0a0571b0,0x0a255080,0x003883b1,0x000c4a4a,0xff00822c,0x01fcadda,0x07338900,0x0a585d60,0x09186060,0x06404018,0xfca55180,0xf95fd4f8,0xfc577b70,0xfc098fd0,0xfd5323e8,0xfc731e98,0xfcc14c7c,0xfc3a1890,0xfc880cd4,0xfca16b94,0xfdb1dcc8,0xfee0c7c4,0xff60a2d9,0x008ebdcc,
-0x032b0d10,0x0150d7a0,0x00ea70f3,0x007de1e7,0x00535e08,0x00973e6e,0x008d9fcc,0xfff1bb8d,0x00f26177,0x03ad7080,0x046c94c8,0x0423faf0,0x02ea271c,0x01afdb98,0x02380c74,0x02432c40,0x01745a8c,0x000fe919,0xfea69878,0xffd372b0,0x012fefe6,0x04cb4120,0x02276ca0,0x027d533c,0x04bce590,
-0x033752d8,0x01da4448,0xff796d84,0xfef0f560,0xff10f2d5,0x001953f2,0x002f8bfa,0x004a8c71,0x00d4a704,0x00f24aa8,0x01025ad4,0x0201db58,0x02e7ff40,0x02f74550,0x01a8f61c,0x0214e730,0x02630998,0x03a76d14,0x028bb308,0x01e05726,0x01683506,0x01fbe3d0,0x028e30f0,0x02d623c0,0x028c5838,
-0xffb9b293,0xfec9a4c0,0xfe1ae5a4,0xfea7d448,0x004e5051,0x0137793c,0x013a5de8,0x00ef7ad1,0xfefac3c6,0xfea60574,0xff3d6e54,0x01bb5772,0x03cdd734,0x04d6b858,0x04fdfe40,0x041d05a8,0x02d0d63c,0x02214a60,0x01ae2cf6,0x01a72490,0x022102f8,0x026add0c,0x027c423c,0x01a41f54,0x012abc64,
-0x0133ff32,0x01a9f634,0x020b37f4,0x02692d58,0x0292636c,0x02bae1d4,0x0248fd94,0x02d20c14,0x026dd674,0x01b23252,0x008eecd7,0x00cdc65e,0x006e6c27,0x01094512,0x0199564c,0x01f78418,0x019eceac,0x0195f5c6,0x01b8ec4a,0x0153905c,0x00d0fd8c,0xffed4871,0x005544ba,0x00968fe8,0x01296ac2,
-0x014f5e6c,0x01bfbe30,0x023a648c,0x02441be8,0x01ea1a2a,0x022229ac,0x02259e6c,0x011b310e,0x0061a89d,0x01508338,0x02363a00,0x02de49a0,0x02552618,0x01bd4556,0x015d4496,0x0145cc8e,0x0152201e,0x015f21bc,0x0100b3e0,0x00bfa675,0x00939aea,0x00b68f77,0x01bedb68,0x01c9f688,0x019c8d02,
-0x01597948,0x013c833e,0x0128d672,0x00fe1a7d,0x00ca8306,0x00854430,0x00623d4a,0x003ca0c5,0x0012b41d,0xffd6ffcf,0xff9771b3,0xff9ab68e,0xff8d3fb6,0xff7e9627,0xff8c68cb,0xffa7371c,0xffb1fbcf,0x004557e2,0x00c8db5e,0x013843d4,0x018dfc8c,0x01c4709a,0x02248acc,0x0224bacc,0x024b1d70,
-0x025be644,0x0262d6f0,0x0260c670,0x02757c68,0x025187d4,0x023d34f4,0x02065b84,0x01e68d3e,0x017d4afe,0x01911d80,0x017477e6,0x016482ee,0x014c9b7e,0x013a4fe6,0x012eef4a,0x01299d5e,0x012989c6,0x0121d91c,0x011a1f7e,0x0101c54e,0x00ed57d9,0x00cab1dd,0x00dc50b3,0x00e5cbdf,0x00ecd9b9,
-0x00ef0ae6,0x00f41c4b,0x00da8c7e,0x0109d6ba,0x0138047c,0x017b81e0,0x01636ea0,0x019b56fc,0x01d9707e,0x01c93908,0x01c43730,0x01bdc5de,0x01bac8b4,0x01b40fec,0x01b24794,0x0191d556,0x01837e84,0x01a2d8ae,0x0190ccf8,0x016f521e,0x00564820,0x002e5448,0x004baf73,0xffed5dc0,0xffedcb57,
-0x00298263,0x00282b3b,0x0046b690,0x00abfe92,0x004b12f5,0x003acbee,0x005d2d35,0x0021a648,0x001a0717,0x0022fb54,0x0046e447,0x005310fd,0x004a9a54,0x00538c35,0x00630a17,0x0075aeb2,0x009d0c4c,0x00a114fc,0x00822b96,0x0090b48d,0x008673fa,0x0082bf08,0x0042e367,0x002e601b,0x00213c17,
-0x0041a90f,0x0055eb77,0x0076f1ca,0x00733bf5,0x00676d78,0xfffaff60,0x002e3d81,0xff6d5d3a,0x000f6fb1,0xff544329,0xff5abe36,0x001fd1bb,0x003acd6b,0x0091eff4,0x015f2f8c,0x00803542,0x0038ab39,0x00849248,0x0002834b,0xffe6647a,0xffea6208,0x003c03a3,0x005a8c13,0x004035b2,0x006945e6,
-0x008ea3c8,0x00e8344a,0x013eab60,0x01362eaa,0x011a45b6,0x00ffa1ae,0x00d90819,0x00e68893,0x00511293,0x001ccc13,0x00153963,0x004927f2,0x0085a02b,0x00cd4431,0x00c18145,0x00696db6,0xff5fcdd7,0xffafad60,0xff06a8b1,0xffb40aa5,0xfe113ec8,0xfdcd8c5c,0xff4dc509,0xff755643,0x00165b8e,
-0x0232605c,0x008724bb,0x000d6717,0x00aeb720,0xff4de624,0xff25c944,0xff6fecfd,0x00243a8a,0x005cfaf2,0x0035f03d,0x00662d26,0x00b90a03,0x0174fa42,0x0200be08,0x02033ee4,0x01b37176,0x019695a0,0x016e0fae,0x017e76ac,0x00508c00,0xffcc71cb,0xffc5d989,0x001f575d,0x00b2e943,0x013ccf28,
-0x01029e66,0x006c08f2,0xfedb0d40,0xff8e284c,0xfdac5470,0xff2f2621,0xfd001c44,0xfcd82948,0xffaf928b,0x00041938,0x01240c42,0x03abe1f0,0x00f4cffd,0xffd4c37e,0x011933e0,0xffab66bb,0xff1d324c,0xff352174,0xfff83abe,0x00501361,0x001edabb,0x00a81648,0x010d65c4,0x02314718,0x03394398,
-0x034ac2b4,0x0303692c,0x023c7d1c,0x01da8e82,0x02cc65ac,0x013b9b7a,0x00a92120,0xffe459a6,0x0042362f,0x00eb2de6,0x0209062c,0x019039bc,0x00907291,0xfd607a9c,0xfdbe9eac,0x01c0bfb4,0xfaeb7878,0xfbd4cb20,0xfad7bd50,0xfa0ef438,0xfc1a2170,0xfdb86190,0xfe60be6c,0x039e0cec,0x03a50d64,
-0xfe0be22e,0xfc98a630,0xfc15d8a8,0xfda79820,0xffe314dc,0x001923e1,0xfe3a14a0,0xff05f29f,0xffb63ac2,0x00de141e,0x00f670d8,0x010a7b38,0x01a7a86a,0x015a8568,0x018de466,0x025f57c8,0x00c5f178,0x001bad1b,0x00bebdf4,0xffe5f589,0xff82deba,0x00cb8ab4,0xff76ea4f,0xff1dba4c,0xfea4d102,
-0x02b1ffd8,0xfa5aacd0,0xf9e59f08,0xfdca4aec,0x00dc43cc,0x0186fdd6,0x00332884,0xffc3c047,0x00f8479b,0xfe8c0b00,0xfc84a624,0xf8f60320,0xfb79c058,0xfca76158,0xfe75b372,0xfe52d4e6,0xfefe0682,0x00821806,0x0014550b,0xffd9c089,0x00224bee,0x0184b4b8,0x022a7804,0x034c9098,0x01e394e8,
-0x0192b53e,0x00c625f0,0xffea029f,0x0012fab5,0x0040600b,0xffbed756,0xffd760a3,0xfedee174,0x00973ae5,0x008e2ff6,0x00cc4fb8,0xfc2bf148,0x08560270,0x0321774c,0xfe6c988e,0xf8df4120,0xf1f4cac0,0xf38cf6f0,0xf604d3d0,0xfb2b6780,0xfac215e0,0xfb193340,0xf85b30f0,0xfbca3098,0xfdbace28,
-0xff7ae3b3,0x00982822,0x0030bc10,0xfef09f62,0xff3520d0,0xffb0adae,0xff8878e3,0x005412b9,0x01c12942,0x054ab768,0xffd0cde9,0xfe8dd2ea,0x00798133,0xff5a8d51,0x007b0c84,0x00238979,0xffcf35b0,0xffe8b0f6,0xffdfde00,0xfff8c55f,0x012bbe76,0x06ba0f18,0x07369f28,0x03d09e60,0x059fe328,
-0x0a28f4a0,0x0b9b27f0,0x0a54bdf0,0x067581e0,0x01e4bb76,0xfe475052,0xfa381f60,0xfa113938,0xfa4121a0,0xff2115e3,0x006a3d5b,0xffae6a82,0xfed8f5b4,0xfe66c464,0xfe4a8c08,0xfddd1da4,0xfdb203e8,0xfe65a72a,0xfe808b7e,0xffa8ac74,0x036f3fc4,0x0099d999,0x007a2cec,0x0193d1f6,0x00039942,
-0xfffede26,0x002fab91,0xfff36aab,0x0073565b,0x026beb94,0x03a283f8,0x049cb708,0x0585b030,0x03e45d64,0x01de5b3a,0x01907624,0x00f56ecd,0x00e988f6,0x00de79a4,0x0436e6a0,0x07579828,0x09616150,0x0729f278,0x03a08a78,0xfdf79bfc,0xfce518fc,0xfc4b7e0c,0xfd482360,0xfcd076e8,0xfcb4b358,
-0xfc57e074,0xfd96b054,0xfe8a2f06,0xff25c691,0x000c9a7e,0x010f824a,0x02599604,0x0170186a,0x0112dc7a,0x00c4c4f8,0x01f55244,0x027c42c4,0x02cf026c,0x02e3fea0,0x030350b4,0x0316e26c,0x024450bc,0x0217c924,0x02ce032c,0x021b3f5c,0x0182cc7a,0x0198fb80,0x01cb3742,0x0186415a,0x0103f826,
-0x014d2524,0x019b858c,0x02c70c90,0x03948f88,0x04257cb8,0x041b86e0,0x042b8130,0x042e4ca0,0x051588d8,0x04c17da0,0x04924958,0x03c4da9c,0x02efe44c,0x02581384,0x0200c35c,0x01bfeeb4,0x01845b76,0x014a4dde,0x0218fee8,0x02539e94,0x01c287f0,0x0146e51a,0x0119eae8,0x0110172a,0x00a921b6,
-0x00df1052,0x01db6b4a,0x0236b3e4,0x0295baf8,0x02f4a4b0,0x025a6fc0,0x00bee585,0x004d7beb,0x003d45ef,0x001188d1,0x0021588e,0x0095200a,0x01099e82,0x015c7d36,0x012f2cf0,0x00e22223,0x008ddda3,0xffefb394,0xff6e0ecc,0xfef12d3a,0xfee1997a,0xfed0bfee,0xfed22670,0xfeee4cea,0xff2b4929,
-0xff170949,0xff788402,0x0026912c,0x00b37ad9,0x00c1f7de,0x00fd1d72,0x014d66b2,0x016a812e,0x01425732,0x015e1d84,0x01a0a852,0x01d1883e,0x01fa4728,0x01baf738,0x018334d8,0x016fefd4,0x011d9c40,0x01fd26c0,0x01f9f864,0x01e534de,0x01e030bc,0x01b51ebc,0x0185dd7a,0x0148c92a,0x012124d2,
-0x011d7044,0x013991de,0x0166288a,0x0181a744,0x01988d3c,0x019b82a8,0x0191e756,0x017bfc52,0x0163cdb4,0x013ba28e,0x011a5348,0x00ecac37,0x00dc1c2d,0x010570fe,0x01288fcc,0x013d86d2,0x015d37c4,0x017db074,0x016ea4d2,0x0176ce68,0x017a7636,0x01670dc0,0x014fda78,0x01657f1c,0x0172a71c,
-0x01a142a0,0x01cd32a4,0x01cbe7f4,0x01bc10d6,0x01d1908a,0x01bbf208,0x01ab5bee,0x01a602b4,0x01a0d768,0x01a03c74,0x01987e10,0x019a3754,0x018b6caa,0x0176d076,0x016f0878,0x016de1a0,0x017811a4,0x016af772,0x01642410,0x0160e984,0x0160842c,0x015fda96,0x016904dc,0x014d7966,0x0140e1c0,
-0x0124932c,0x0179c6d4,0x0167a528,0x01767330,0x017664c2,0x0177a6ce,0x017360fe,0x01766086,0x017a822e,0x016a5b70,0x0179dada,0x0194b8d6,0x0177938e,0x019db6f8,0x02137df4,0xffbdaf1a,0xffc8b58b,0xffd8c739,0xff961a99,0xff841f4c,0xffa4c1a4,0xff8009d5,0xff87dad0,0xff9e337a,0xffb6dcfb,
-0xffc23ced,0xffb95581,0xffc927a4,0xffbe99ff,0xff977739,0xffabe254,0xffad5b19,0xffa8f0e2,0xffb2cc54,0xffc2f52b,0xffdda841,0xffdc6394,0xffed5693,0x0012826d,0xfffde681,0xffefc0dd,0xffdfe972,0xffc1e2c7,0xffb85d48,0xffb2b959,0xffd4fde9,0xffea77ea,0xfff654ba,0xfff6182b,0xfff228f8,
-0xffae2602,0xffca97ac,0xffd9f005,0xffdd2456,0xff51f9fb,0xff2b7d37,0xff7cdb67,0xff046265,0xfefbd750,0xff1f292d,0xff64a551,0xff7de160,0xff5402a2,0xff9b2a4f,0xff98590e,0xff437ebf,0xff853cbd,0xff894cb5,0xff80f001,0xff8aa4fa,0xffb72c9f,0x000f24b2,0x003ee358,0x0064cbdb,0x007a2660,
-0x0089ddbe,0x005a2f63,0xfffd15a9,0xffbcde09,0xff955d3f,0xff9cea19,0xffea9419,0x002c554b,0x00485255,0x008c501d,0x0058de15,0xff670f1f,0xffdf55e6,0x00049bb1,0x00353ba5,0xfedf1544,0xfe98738e,0xff2f6340,0xfe176760,0xfe4c3792,0xfe94e3f6,0xff555fb8,0xffa1cf0d,0xff490b8a,0xffe0021e,
-0xff9aceda,0xfebd0eb0,0xff37ed63,0xff49c85f,0xff4dca53,0xff6c7ff1,0xffbb52db,0x008e3e8a,0x00c13d10,0x01101b80,0x0145e520,0x016a4d50,0x012ca6e4,0x0071bdde,0xffb1eb3a,0xff59ece9,0xff713883,0x00124915,0x00b03473,0x00ca4bcc,0x013cd42a,0x00ea0127,0xff4eab4e,0x0019e929,0x0043aa34,
-0x00dc7459,0xff477f52,0xfedd68ce,0xff989ef9,0xfdd0f0e4,0xfd6bc764,0xfd866b88,0xfe7d8fc6,0xfec88616,0xfe149804,0xff582b15,0xff59a54d,0xfe303820,0xff147d0d,0xff20a84f,0xff246a9f,0xff266f97,0xffc6d1fd,0x013aaafa,0x01bfb88c,0x025573c4,0x0277dba4,0x02327a0c,0x01d18346,0x01d478ae,
-0x0093ffbc,0xffe1f1fc,0xffbb76ae,0x003fa31c,0x014534e4,0x01d276c6,0x020a6780,0x01788fc6,0xfe7aec72,0xffca5942,0xffb66527,0xfa7e6f40,0xfb8b1660,0xfad7d948,0xf9f15780,0xfaf8ba38,0xfcb623d4,0xfe9a8f26,0x00bc5478,0x01dea268,0x0183710e,0x005d3a22,0xff30e0f7,0xfd764e28,0xfe73cc70,
-0xff5a340a,0x005557e1,0x00223bcf,0x0065672a,0x00a81937,0x01106906,0x01456f32,0x01116380,0x025abde0,0x02685cd8,0x018a61dc,0x003b5bc2,0xff996a57,0x003227e2,0xfecdbc98,0xff28083e,0x0146ec54,0x00f4d347,0x00be1ed8,0xffc1ac04,0x01d2f4ce,0xfcc937f8,0xfc9e3254,0x007b26bb,0x0142fdfe,
-0x01ce1082,0x0002583c,0xfed29cfc,0xfdb8e724,0x008f43b2,0x00a9b344,0xff0b0e54,0xfd09cc04,0xfcbe8100,0xfda6ac68,0x0006b5fc,0x00e638fc,0x0001d9a5,0x0030b19c,0x005132cf,0xfff7e324,0x006791a0,0x013d578e,0x030e45cc,0x002b3b6c,0xff57bee0,0xffe5b129,0xfff80174,0x0011fcb4,0xff2d11f8,
-0xff121e09,0xfece38fa,0xfe1967de,0xfe0962a2,0xff54fc8b,0x01c949a0,0xfe6bee0c,0xfe03a3b0,0xf76a6cb0,0xf2324400,0xf1da6fe0,0xf5edfac0,0xf9b64a90,0xfd6b9cc0,0xfd1898d4,0x0090307a,0x001cb49f,0xfe3c43a2,0xfd608df4,0xfd9aa15c,0xffecf26f,0x0010ef03,0x00b37abf,0x0082e8f2,0x00b59fa3,
-0x00a91a7e,0x00c02b6d,0x01ac626c,0x01c00d78,0x02412adc,0x000a7eba,0xff6742d0,0x0033ff8b,0xff56741c,0x00048e7d,0xffb6367e,0x003703ef,0x0036e3b2,0x0068fd98,0xff084aa3,0xfe384eca,0xfee83570,0xff6a66d6,0x099b3fc0,0x0bf92ee0,0x0d25d7c0,0x0aa2d450,0x05c9ef48,0xfe4b369c,0xfb1ea1a0,
-0xfb6b2dd8,0xff252025,0xff240a8e,0xfc7514d4,0xfa542358,0xfabd4248,0xfeb77950,0xffc8de90,0x00afe2b9,0xff73a3b9,0x00164a8c,0xffffbd61,0xff531952,0x00767c27,0x0133323a,0x01befe52,0x00bc8f08,0x008147bf,0x00aa5adb,0xfff5e4dc,0x001235cb,0xffdca34b,0x00a51fd7,0x0126fd44,0x013ce05c,
-0x032eb3ac,0x05327380,0x072ae8b8,0x07d7e288,0x0187a3ce,0x010c31bc,0x0143535e,0x0320f150,0x07152b60,0x080001b0,0x07af2cc0,0x0561dac0,0x01abe7f6,0xfe17d4aa,0xfbc2e5f0,0xf94a52b8,0xf8bc9ee0,0xfa6a3700,0xfbb965e0,0xfd385198,0xfdf37820,0xfe9e29a4,0xfeeeb6fe,0xff67a886,0x00771597,
-0x00f6d99b,0x020dd260,0x00955786,0x0047c395,0x00b1a67d,0x01ebdf4e,0x0260d860,0x01b49d9a,0x02529228,0x02c18a88,0x03639450,0x02d777c8,0x02a151b0,0x031ebe98,0x024baa60,0x033f0b9c,0x02adb674,0x0259a04c,0x01b81bfe,0x00ea706f,0x00c5d1d6,0x01ec216a,0x0433de60,0x058007d0,0x063220d8,
-0x06183c70,0x04c9f7a0,0x03201204,0x00b47c19,0x00af73eb,0x0014ff9a,0xff532bdb,0xfff7f138,0x0057232b,0x00c71474,0x011a94f4,0x0116f8da,0x01f77348,0x01da3ee8,0x0212fdec,0x01ee65e6,0x016bfcd0,0x00cee87f,0x005a2d46,0x00a2ffda,0x00d7e517,0x014f6472,0x01779450,0x01fbc3aa,0x029cd064,
-0x03263cb4,0x01574f32,0x012360e0,0x00cbd73a,0x006ab82d,0x00217db0,0x007acc0e,0x006c615d,0x00299227,0x00888e8c,0x010d8bcc,0x01c50ad6,0x01b7b84a,0x01e57892,0x01e9b324,0x024197c8,0x027907b0,0x02ba4794,0x029bcec0,0x026d536c,0x021a5460,0x0217b484,0x026ea068,0x029391bc,0x020cfd3c,
-0x0174e9fa,0x0123494c,0x016f4b58,0x0202cca8,0x0239f6cc,0x02632c84,0x0267fd70,0x0271c0d0,0x025d7128,0x025158d8,0x024e5f10,0x01d111f2,0x012f56e8,0x011a2ed2,0x01481830,0x016f684c,0x01821ae0,0x018e73bc,0x01b48650,0x01e69704,0x01e61616,0x01bae3b6,0x018e31b0,0x0158a5ce,0x0126991c,
-0x00e9f4d6,0x0102e6e2,0x011e1266,0x014f3410,0x01739512,0x01cc1818,0x02062ce0,0x0153bb08,0x01549594,0x012feb62,0x01472238,0x0135975c,0x011cd224,0x01098312,0x00e72674,0x00cf948e,0x00c6ec56,0x00bf7870,0x00c50a81,0x00dcc49b,0x00ee94d4,0x00f0f872,0x00f600e4,0x0145d04e,0x00ea28e1,
-0x01041010,0x010da170,0x01209ab8,0x012bc7ae,0x013182ca,0x013c1ef2,0x011ab930,0x010d3c12,0x0100d664,0x01001002,0x00fd8025,0x00ecef9a,0x011816e4,0x01315f0c,0x0146b6b8,0x0163c0a6,0x016df37e,0x01a1961a,0x0194692c,0x01a73286,0x01b7a1cc,0x015892c2,0x0176bcbc,0x01a657b8,0x01a50fea,
-0x01a5e466,0x01ab425e,0x01a9ca46,0x01aa073e,0x01a77786,0x01725c9a,0x012c044a,0x01a9e0ec,0x016c525e,0x012c9918,0x0070aca0,0x00587ea3,0x005caba4,0x0058ba7e,0x005cb31a,0x00631ae7,0x004c6e28,0x0048c458,0x006926c8,0x003743bc,0x003d14a7,0x0055676b,0x00894ef9,0x008dd937,0x005e2793,
-0x0061226a,0x00565ae1,0x004179c7,0x00584dc7,0x005c6c0a,0x00516150,0x005e2c02,0x006557d7,0x0060b1bf,0x008f709d,0x006aed79,0x001fbbfb,0x0013fc3e,0x000d6041,0x00054e11,0x0039d7f2,0x004d322b,0x0039f6b9,0x00788c6b,0x00815df4,0xfffa56eb,0x004a5926,0x0092a66e,0x008f0a73,0x00730eb6,
-0x006ea5a0,0x009f4a94,0x008d5f47,0x00860434,0x00cfc18b,0x00218ae4,0x001b731c,0x00590d14,0x00daf8f5,0x00ed50de,0x005a73e9,0x0058c499,0x003451b2,0x000854df,0x003c0d3f,0x00445493,0x002ea73e,0x0063dfc4,0x00a5ab8f,0x00f4a46a,0x00fb210d,0x00cb6287,0x004b5d0f,0x0029e591,0x00122af2,
-0xfffe2640,0x008be964,0x00c1e048,0x008afc13,0x00e9b6ca,0x00bc025d,0xfff489f0,0x00a2e8c7,0x006d0639,0x001a19f2,0x003783f4,0x004701b7,0x006605a0,0x0030e8b6,0x000d66ed,0x00a1e93d,0xff4faf5f,0xff852457,0x0010c87c,0x01411bec,0x016559f6,0x002f5f43,0x0044bc54,0x00012456,0xff9852f4,
-0x00145757,0x002d9a85,0x000e2151,0x00999bda,0x00ef497d,0x0182c4c0,0x01a31626,0x014d67e4,0x001e4a4c,0xffd176d2,0xffa01eac,0xff65ed2b,0x0098c0ca,0x010975b2,0x00899fae,0x016442b2,0x0139a5c4,0xff3d7060,0x00843884,0x01ccb6e2,0x00eeeae1,0x006ed7b0,0x00724698,0x012a5f70,0x015e2954,
-0x014e5390,0x01e2fb34,0xff9c2ade,0xff502f8d,0xffde3a06,0x019946aa,0x0205e7b4,0x00114bf0,0x00257fc1,0xffc179ff,0xff18d246,0xffd439d7,0xffe64d03,0xffcf5cf2,0x00e0847c,0x0180bf68,0x021bbbd8,0x02a6da48,0x025a3b84,0x00f9e34a,0x0021c361,0xff54d868,0xff2b1ceb,0x00ab99e3,0x01e21444,
-0x0162ef36,0x02515cc4,0x01771b36,0xfed502fe,0x013d169e,0xfb130e48,0xfc5e56a4,0xfea41f20,0xff226072,0xfe83969e,0xfcb51b34,0xfc3218fc,0xfde351f8,0xfd2dde78,0xff23cf96,0x02dcf284,0x01994924,0x00ed9dfa,0xfff3261e,0xff51915f,0xff24cc9c,0xff5c88d4,0xff8da1a3,0x002e258e,0x0168b982,
-0x01663476,0x01917c8c,0x0192d438,0x0267d47c,0x0214f714,0x00c798a2,0x0025b510,0xff7a07d0,0xff620e32,0xfeb0d456,0xff19b1e8,0x0006e8ac,0x0119e7e4,0x01846342,0x013a03f0,0xfd58cb64,0x00b46ae7,0xffba0b01,0xfea26d56,0xfe4cab80,0xffe37724,0x01756ae2,0x02209110,0x013c54c8,0x014d4dfe,
-0x00d26782,0x01068838,0xfefd2f3a,0xfe44c22a,0xfda80094,0xfdcb7b68,0xfe3bff7e,0xfe828b58,0xfeff5ec4,0xff96bc72,0x008f161e,0x01b4813c,0x01bad626,0x00fb5472,0xffed669e,0xffb1d53f,0xffefa0aa,0x003f1509,0x00318ba7,0xfef247d6,0xff226fa2,0xfeece20a,0xfec0680a,0xfe1141ea,0xfdb7b9ec,
-0xfe57334a,0x004ba9f7,0xf8e2f8c8,0xf776d6e0,0xfaad5cf0,0xfcd24f24,0xff608e9f,0xfd760534,0xfb8f6088,0xfbc4da80,0xfc952b64,0xfddfcf0c,0xff387df2,0xfe10e56e,0xfd6b0514,0xfc58f9e8,0xfd867144,0xfe395e4e,0xfe7f2f06,0xfeb44362,0xff49eb86,0xffe00cd1,0x017f5696,0x0110ffc6,0xfef7bfd8,
-0xff916a0e,0x001c4e2e,0xffab8505,0xffce22db,0xffedbb7a,0xff9d54fb,0x0041a99f,0xffc38200,0xff7a5aa7,0xff7ec57d,0xfea33d76,0xfd0281a0,0xfb1abd58,0x09af0390,0x06d3e1b0,0x030aea34,0xfeb10fcc,0xfb0f7698,0xf96c3160,0xfa46c068,0xfcfe0d7c,0xfc787924,0xfc684dcc,0xfd0950cc,0xfd882b44,
-0xfd5d28c0,0xfbeac238,0xfd8efb28,0xfe684e06,0xffa59358,0xffc7cdf0,0x0016794d,0xff6b0fac,0x01f169a2,0x01e6269a,0xff95fdec,0x000027a2,0xffc42f12,0xff73f2c6,0xfff84aec,0x0025457b,0xffc3f323,0x0018ade9,0x00966ece,0x0023a115,0x02214748,0x03e78b68,0x06b01928,0x084d04a0,0x04ea6190,
-0x06680dc0,0x08b239c0,0x0937f8a0,0x089b3bd0,0x059746d0,0x01299f12,0xfbde1228,0xfafa6490,0xfb0f8408,0xfb5c5560,0xfe30a30e,0xfeaab11c,0xfc8aad78,0xfce1a688,0xfc468998,0xfc37dd5c,0xfc32cf88,0xfcef8d8c,0xfddf5440,0xff882715,0x00016884,0x001e8e74,0x003932ff,0x009a51ab,0x01b9b274,
-0x009857e9,0x0043d6e1,0x009c2553,0x019ec586,0x024e7350,0x02981540,0x02f479b8,0x0357994c,0x0390027c,0x0485b8e0,0x01df68ca,0x01f0afdc,0x0209dcbc,0x0266b7b8,0x03212a7c,0x0499c000,0x0588b618,0x055d82b8,0x04d4a2a0,0x032d6818,0x00dd0e84,0xffb97b12,0xfea37230,0xfdb4c058,0xfd174bd4,
-0xfd550768,0xfe529f5c,0xfe8a9bc0,0xfef550c6,0xff7ed8a8,0x00770351,0x013da328,0x01dafd08,0x01c2a8b0,0x016a1274,0x00fc046d,0x0123b1be,0x01848190,0x01fc8314,0x0220f57c,0x02119788,0x01d93c54,0x01c05ad8,0x01b90564,0x019b9bcc,0x01ff8b12,0x026d2a48,0x028a8dcc,0x025fdb64,0x02262958,
-0x01b9ea8a,0x01e00e02,0x01ebc968,0x022203bc,0x02995d8c,0x036545b4,0x045f8b18,0x04477e08,0x0423f3b8,0x040af098,0x03b8acd4,0x035cca6c,0x02fe138c,0x02c7b978,0x02a7bb48,0x027562cc,0x0222f76c,0x01de4d50,0x01a1df9a,0x01af166e,0x01dfe488,0x01d1c1a6,0x0208e720,0x01f2286e,0x0201ad20,
-0x01bfb81c,0x01b5053e,0x018bd95e,0x01ea4ec0,0x024f6a50,0x02ac9cc8,0x02787a08,0x00ba8627,0x00e4ff16,0x00e508e4,0x00e9dc16,0x00fc2aba,0x01116358,0x012ccab2,0x013a34fa,0x0170976a,0x01787368,0x018bb8d4,0x01a11b6c,0x01d8dd9c,0x02112b64,0x023acd18,0x02670874,0x0284bee4,0x02ace770,
-0x02b908cc,0x02ea01bc,0x02dd3200,0x02989e34,0x02573528,0x0200a98c,0x01b23e8c,0x016a9adc,0x014a1106,0x012bd648,0x011d603c,0x010f9c6e,0x0107b478,0x00e56b0d,0x00e5bd5d,0x00caddda,0x00d64bbd,0x00e808bf,0x00949064,0x00d65702,0x00d515a0,0x00e015b4,0x00e59b97,0x00df4f29,0x00d76c5a,
-0x00c85691,0x00dd53ce,0x00f56dd2,0x010c6d46,0x01315960,0x014a3bf6,0x0163a34a,0x0157f5d8,0x01541cc0,0x01545b9a,0x0150f88e,0x014fc4f0,0x01539d3c,0x01270b5a,0x00fe9618,0x00d654a0,0x00f8d66b,0x00c64a8f,0x0082aaf5,0x008990fc,0x00896c07,0x0080f5c5,0x007c5da0,0x0075be0c,0x007338f0,
-0x0088b0ad,0x00b1cd8f,0x005cbc5d,0x0077f095,0x00d866e9,0x00434c60,0x00346f4d,0x0002e78b,0x002e90b6,0x003a2560,0x005557b5,0x00437f7c,0x00398841,0x0037c36f,0x001783b1,0x000ae9e9,0xffe21e2c,0x0032d8b1,0x004b7801,0x0067c056,0x0037fee4,0x002ef3a2,0x0034ca82,0x003d3cc1,0x0042f590,
-0x00496b58,0x005cac73,0x006d794e,0x009a92fe,0x005f4ea3,0x004f8c69,0x0039970c,0x003bf2c8,0x003cac71,0x004349e0,0x005d2a6d,0x006410fa,0x00495e46,0x005ba93d,0x0055a8d6,0x0026c63b,0x0041cca4,0x008b05ea,0xffe9aba3,0x00166dee,0x00392916,0x007168ad,0x0063ddeb,0x0057cf0b,0x004f8fb2,
-0xffdbb791,0xff9ae9b9,0xff48774b,0xfff583e0,0x0052d9a7,0x00a83039,0x002f58bc,0x000d7d3b,0x002a47ee,0x0033ef23,0x0050765c,0x0059434b,0x0078f9af,0x00b67f7a,0x00fc74f3,0x00b124d1,0x0080e89c,0x002bf0f1,0x00137acf,0x00127e22,0x0034a434,0x0072d58d,0x00812b86,0x0053839e,0x007faf69,
-0x006f5303,0x0014a5aa,0x00797556,0x0020359f,0xff646984,0xffebe8e2,0x0043f603,0x00c28313,0x00862c57,0x006efda4,0x0021bc63,0xff5e269f,0xff0decd8,0xfe5666b6,0xfff72419,0x00852346,0x01135300,0x002091b1,0xffdfa927,0x00132f85,0x003021ed,0x006c7934,0x0059a1e0,0x00b40a7c,0x0133fdd4,
-0x01ca6d2a,0x0134d894,0x00b12a2d,0x000a10cf,0xffd63507,0xffe7445a,0xfff9a7cb,0x009b8eea,0x00b85bbc,0x002f48e2,0x00dd1b99,0x00e2b29f,0xff8bfb32,0x003a1558,0x0175ae7a,0xff788b94,0xffdbfda8,0x007733dc,0x0101a632,0x0120caee,0x00e9958c,0x00b7bcef,0xff697051,0xfe437df4,0xfcf2ba04,
-0xfef454f4,0x00779c57,0x018adbfc,0x001c659a,0xff99ffc0,0xffd993e6,0xfff5735c,0x004e27c6,0x00420a67,0x00a6b41e,0x017ca4e4,0x026b23a8,0x0219e558,0x01a5f136,0x006701b9,0xffbeaf81,0xff3c15e0,0xff5f5cfe,0x00f535b5,0x019d6e7c,0x00b4f712,0x0190e8fc,0x00b5c822,0xff1f183c,0x01370832,
-0xfa9dd398,0xfe9733b8,0xffb6475a,0x001a9955,0xfebd67ce,0xfeb6a24e,0xfe42a4b4,0xfe214d32,0xfba01a98,0xfcd6b8fc,0x02160204,0x018254ae,0x014d4d96,0x00f4379a,0xffa379e8,0xff901be9,0x0087bb83,0x00e8e19c,0x0112a784,0x0103f6ca,0x0104d560,0x01a692b2,0x030069c4,0x01b44e46,0x00f0ab3f,
-0x00293695,0x00590945,0xffefdb4c,0xff375575,0xfee74406,0xff48356d,0x0022431f,0x00a695a3,0x015bd032,0x02bd67dc,0xfc3b13d0,0x021ed9a8,0xff8aa2d6,0xfeec3b6e,0xfe876608,0xfdbd6f98,0xffc32dfa,0xfff7cab4,0xfe20c142,0xff4d2939,0xff92c521,0xff9dd3b2,0xffc94830,0xffe23c55,0xff031eaf,
-0xff55dfb2,0xff292dc3,0xfec7ec4e,0xff19714f,0xffd18d57,0x002fb953,0x011ff2ec,0x00ca69fb,0xff0805c8,0xffa5dee3,0xfff7cbe7,0xffd3aab2,0x001215c5,0xffd9757b,0xff314848,0xff5efd28,0xfed9f1d6,0xfe91487c,0xfd306010,0xfccdf4d4,0xfd57856c,0x013afc0e,0xfc8341d0,0xfeba6e3a,0x0299fe10,
-0x033eb814,0x00678fd4,0x00118791,0xfec1dd4c,0xfbd4d1f0,0xfcf82c70,0xfd0df69c,0xfd415ce0,0xfefe73aa,0xff56505a,0xfe7f22c2,0xfdca6668,0xfd89ab6c,0xfe214e1a,0xfe63c7bc,0xff14865f,0xff8521f5,0x01011e16,0x00eb7243,0xfe948dee,0xffd9eb5c,0x00babb11,0x0023627a,0x001b564a,0x0013b18b,
-0x0021a724,0x001f2d3d,0xff7f91f5,0xff8feda1,0x001245d9,0xfef55e5a,0xfd8f4498,0xfca371a0,0x0196795e,0xfca6c2cc,0xf6470f70,0xf54a16c0,0xf6c9af80,0xfc60c428,0xfe838184,0xfc87a030,0xfe9c3196,0xff01c68d,0xfeed5996,0xfede95b8,0xfede2aa4,0xfed5ad3c,0xfef9c892,0xfed397e6,0xfed4ad94,
-0xfe6f3f12,0xff187a62,0x00116bd4,0x00d765fe,0x00b57399,0xfee2a1a0,0xff40e572,0xff43ad32,0xff1a584f,0xffc8ae79,0xffbc16ab,0xff19eae4,0xff6557f7,0xff647406,0xfe619ba4,0xfef09f08,0xffc462cd,0x025cd8e0,0x0297a960,0x083a5090,0x0a0a6990,0x08f7f010,0x066ac4d8,0x02b25d2c,0xfdaa03dc,
-0xfa999f18,0xfa072f08,0xfc1ad7e0,0xfd612684,0xfe853418,0xfe3bcf20,0xfeccd2a2,0x00062fcb,0xff62aa86,0xff00d3b2,0xfecf9486,0xfecf81d4,0xff007150,0xfedf96e0,0xff44ac3f,0xff9487a0,0xff4df3de,0x003e6a7f,0x0081b600,0x00a6bdbd,0x00464e7a,0x000f9173,0x0040c1f1,0x011a40cc,0x0214af44,
-0x03438518,0x04d97c48,0x05672d38,0x05093bf8,0x06d398f8,0x0309e264,0x034a1eb0,0x04739090,0x0588f2b8,0x06d2bd90,0x07961d48,0x068f0d98,0x03900e68,0x0046d1a1,0xfdc82a74,0xfc8a1528,0xfac192a0,0xfa72dd58,0xfb4da9a0,0xfc12cad4,0xfce6bf6c,0xfdb5045c,0xfe503dac,0xff02f7ab,0xffba8b28,
-0x00ac1321,0x00d07384,0x003672d4,0xffd1d646,0xffee965c,0x00ab6327,0x01c4a298,0x02673e4c,0x0271ca78,0x02991bd0,0x02979de0,0x024b1d00,0x02b711b4,0x02f27bf8,0x02bb6484,0x033d89b0,0x02cf198c,0x035154bc,0x03fac724,0x0452c998,0x04a1bd60,0x04b6c740,0x0517ba60,0x05ea1678,0x059299c0,
-0x0545c700,0x05023e38,0x045bcaf0,0x039f1164,0x02be731c,0x024636b0,0x01c7adc6,0x013d7bf6,0x015b3810,0x014c845a,0x0186f0d4,0x01ce1932,0x018713c2,0x01a0304e,0x01adabbe,0x01aac6c6,0x018c12f0,0x0159c630,0x014a944a,0x01289b6a,0x012b1140,0x010f94fe,0x010c32c2,0x017188f2,0x01c434da,
-0x0216d930,0x0278666c,0x020b7624,0x02e2786c,0x02f707b8,0x03105b78,0x034df618,0x03815390,0x039c6b00,0x03b2d000,0x035aa8b4,0x0329b1dc,0x02f80ab4,0x02e32a58,0x02d9eaf8,0x02d841d0,0x0296deb8,0x02594970,0x020f3978,0x01d2baae,0x017f3964,0x012e259c,0x017b710e,0x01a3965a,0x01c64432,
-0x01c233dc,0x01e57878,0x0218cfac,0x0236d238,0x024da750,0x0253765c,0x0271b460,0x02a1a040,0x027dc32c,0x0292eae4,0x026ad90c,0x026800cc,0x02b57a48,0x0278c9dc,0x02ee2d50,0x02d76350,0x02ebcf88,0x02eb6a8c,0x02f3494c,0x02fd66dc,0x0315f3bc,0x0312439c,0x03139ac8,0x030f47f0,0x03075d78,
-0x02fcbd38,0x02fe4a98,0x02d70458,0x02ba32c4,0x029f8934,0x0276b8b4,0x025b2f5c,0x0228d660,0x020b708c,0x01f4e50e,0x01be57bc,0x024403a4,0x02194c38,0x01d68150,0x01d27ee2,0x01d0111a,0x01d3f9a6,0x01ce303e,0x01c85a70,0x01d3c0ea,0x023da518,0x029c28bc,0x01cac84e,0x02386cf4,0x030a3694,
-0x0064faa7,0x0039f7bf,0x0024b126,0x0034a594,0x0041fd1c,0x004177af,0x006e340d,0x0071c96b,0x005a4c4c,0x0047496b,0x003512c3,0x0020b48d,0x0027f908,0x003cc054,0x00824348,0x005d1ff8,0x005e960f,0x0069465a,0x00725c5b,0x0078431d,0x007da091,0x008440c8,0x00800160,0x007c163c,0x006b7dce,
-0x0055591c,0x0038b054,0x003a19d5,0x003f5878,0x00619143,0x004beb14,0x0045338f,0x003e623a,0x004b7b99,0x00608f69,0x0053b28a,0x004911a0,0x00296a39,0x0000823b,0x000b5aa5,0x00140029,0x0007b538,0x00853af7,0x00939ba1,0x004b7bbe,0x001d9fec,0xffdbdb02,0xffba3eb6,0xffa25638,0xffdeb68e,
-0x00a20b51,0x005684c0,0x0064edff,0x0085430e,0x00a51563,0x00c05789,0x00bc8748,0x00d89029,0x00ebb36e,0x00e639ba,0x00ab091a,0x007c66a9,0x00499dbd,0x0040092c,0x004ef686,0x009735e2,0x0078c95b,0x006eb4f9,0x0061e515,0x0043c9ff,0x0055d4b8,0x00a93f8d,0x00764ac5,0xffce36e6,0xff2e9c06,
-0xff8277a1,0xffaf7ef2,0xffb447fd,0x00da1549,0x00f9f41d,0x005225c0,0x0001f650,0xff79a202,0xff1476c1,0xff1b4a28,0xff8952a4,0x011870fc,0x005ee5f4,0x00691644,0x00a038e1,0x00db74d9,0x010f0dcc,0x00ff15a4,0x0163616a,0x0185677c,0x0186dcf2,0x01062fb2,0x009a4a9b,0x00392abb,0x0013a8b2,
-0x00577767,0x00c9143d,0x009451dd,0x0062e43f,0x00588264,0x0048b8c2,0x00798994,0x00cd05bf,0x00563626,0x001f9d2f,0xff131b97,0xff276be1,0xff3bf676,0xff0bd074,0x00c25ba5,0x0107ea22,0x002de09b,0xfff79447,0xfed789f0,0xfe14d64c,0xfdbe8380,0xfed0a68a,0x0130874e,0x00573a93,0x00595e1c,
-0x00b0119c,0x0124a76a,0x017d7e08,0x014cfa58,0x01b3d1b4,0x01e9555c,0x02596b58,0x01ba63b2,0x012918f8,0x00596d53,0xffc83789,0xff9a04b2,0x0046ffa8,0x00d68a7a,0x00e4223b,0x00626461,0x00661360,0x003a086f,0x00f275c3,0x00d853dd,0xfcc079e0,0xff1bdf08,0xff2a33c6,0x0010179b,0x00b04a18,
-0x01e154cc,0x01865cce,0x009389d7,0xfe1d0e3c,0xfe60f906,0x023106b0,0x00936527,0x003f56e9,0x011450ae,0x0085da65,0x0070769d,0x0068b00d,0x00ab47d0,0x00d55c68,0x00c60fd0,0x01b4c01a,0x022290fc,0x02571758,0x0167255e,0x00ae0e42,0xffe1c67d,0x0051de1d,0x00498120,0xff79b398,0xffc9d793,
-0x0019b83f,0x0047f8b3,0x0168b8c6,0x0197cc3c,0x019b536e,0xfd554ae8,0x0100be38,0x01c6bf4c,0x0156c070,0xff4d9260,0xfbd8ff60,0xfc7e2978,0xfd60fda8,0xfebab12e,0xfe7efdd8,0xfe7caffa,0xfebbf6ee,0xfe6ab1c0,0xfecc2e22,0xffbe7071,0xff7430c1,0xff6a8df2,0xffee42ec,0x004c1ee5,0x00df91c0,
-0x0170cec2,0x00d33540,0x00866b87,0xfff0d6a8,0x0051dbb8,0x00b3fc7d,0x005b4602,0x001242cf,0xffbc972c,0xffb64dd3,0xffa49a83,0xff2b2225,0xff002c57,0xfe3e1acc,0xfe245366,0xfeba4802,0x006b97c1,0x00316dcd,0x01c86148,0x010368f4,0x00cda419,0x01bc684a,0x01e81fc0,0x0144cb58,0xffc433ee,
-0xfe245e62,0xfe03588c,0xfee2a63a,0xff3e89c3,0xff8a15b7,0xffd1f8e4,0x0028ce3f,0x004ecc86,0x0081eab5,0xffd61d9d,0x0017a40e,0x010ec24e,0x0079f43a,0x007fde78,0xfff6f051,0xfffaec27,0x003f0ec4,0x002f9ae6,0x000aa57b,0xfffac9fc,0x001ffd5c,0xffb520d6,0xfefe7fec,0xfe9535e0,0xff56cbfe,
-0xfecd120c,0xfdcde7d8,0xff01be6d,0xfa31af10,0xf79e0420,0xf6966900,0xf807a880,0xfc34765c,0xfbdfa9e0,0xfcc37c60,0xff1dc772,0xfe23390a,0xfebb092e,0xffbc12ab,0xff689f6c,0xff5d6499,0xff34d83f,0xff1617ce,0xff1efc43,0xff647d29,0x000a9c1a,0x00a04f7c,0x01b37e00,0xfffcab22,0xff81d535,
-0xff9b5f81,0xffc75618,0xfff34471,0xffe5e66e,0x00343e2d,0xfffabd7c,0xff7b7c0c,0xfefd7034,0xfe9187ae,0xfdb72440,0xfdb11a48,0xfd236bf4,0xfcfb1e94,0xfc247cc4,0x073289d0,0x05ed0548,0x0342b768,0x001f1d75,0xfc114e00,0xfab5ea50,0xfb601450,0xfd9b4480,0xfd7b0040,0xfd828684,0xfd523938,
-0xfdbe6fe0,0xfdfd6444,0xfdc47524,0xfea306a6,0xff63dbe0,0xffcfd39a,0xff615e17,0xffa1c5e3,0x007ea0d3,0x00839949,0x008a57bc,0xff87d41f,0x0018f979,0x0012c6e3,0xff85650d,0xffbdf14f,0x00086679,0x00a6fdcd,0x009a2d83,0x013a0af8,0x01e066f6,0x04adb468,0x06035b78,0x05daed08,0x0673bf38,
-0x04a753f8,0x04ba2ae0,0x04de7708,0x0468f9a8,0x039cfbb8,0x0196c434,0xfedf523e,0xfbff5ce8,0xfbc33f58,0xfc0d3fbc,0xfc883dc8,0xfcfe1218,0xfd4fb1bc,0xfddbc51c,0xfd16a718,0xfd020da4,0xfd7579a4,0xfdb06ac0,0xfe2501fa,0xfefb7d00,0xff61e7f0,0xff9f6aed,0xffdaea1c,0x005a8933,0x00dd46d8,
-0x0196c0a0,0x01c1b7c2,0x0219f308,0x02b9cb5c,0x02dc5f6c,0x0321d00c,0x0369c780,0x031af908,0x0320cd80,0x0390de08,0x044c6d50,0x03dc701c,0x044ade28,0x04e482f8,0x05728290,0x064e37e8,0x05d3baf8,0x05c4b168,0x05a0c1e0,0x03f14960,0x02126a5c,0x00357fef,0x001163c4,0xffcd5d37,0xff9b87f6,
-0xff9c9fb2,0xff9a2ca4,0xff679ccf,0xff861b44,0xff9c383a,0xffa94f6d,0x0026fbec,0x009617f2,0x01052738,0x014a3d70,0x018d17ae,0x01c98db6,0x01ba9a42,0x01d944fe,0x01c252a0,0x022ad2d4,0x02456acc,0x029f6978,0x02e8b25c,0x030b0b84,0x032366fc,0x03905924,0x042478a0,0x044d3470,0x0420ef08,
-0x03fc2ef8,0x03d38a4c,0x03b4f3dc,0x0385b654,0x037deab0,0x03591a98,0x037e04c4,0x036ca5b8,0x035adc4c,0x03279200,0x02f0289c,0x02bc3128,0x02855f80,0x02587e2c,0x02282490,0x01ef8cd6,0x01b1c9b8,0x01f30fa2,0x0209d250,0x02308c30,0x024a46a0,0x02753a98,0x02a2646c,0x02e17da0,0x03179914,
-0x03386538,0x03664e68,0x038a4f04,0x039fa858,0x03b7c6a0,0x03d148f0,0x03ee35f4,0x0419ff00,0x0395acc8,0x03b45c64,0x039dbf98,0x03956dac,0x038766b8,0x038d4190,0x038f78a0,0x038c3204,0x03828618,0x036d32e0,0x036303fc,0x03442a30,0x03309f08,0x0322b8f4,0x030f505c,0x02fd346c,0x02e9a380,
-0x02d21520,0x02c01540,0x029f1e04,0x02be5a4c,0x02c0c16c,0x02b84b0c,0x02eab258,0x02ec30e0,0x02d6fc38,0x02dedbe4,0x02e9aec0,0x02fea804,0x03092258,0x031c2f70,0x032deb08,0x035af1bc,0x037d2a60,0x035b4ab0,0x037f8af8,0x03c08e9c,0x00929b9e,0x0070fb55,0x006308c3,0x006974d6,0x00758432,
-0x00725976,0x009b5267,0x009b7216,0x0073612d,0x00852cc9,0x007038c1,0x00329be3,0x003dab9d,0x004ae1ca,0x00742998,0x007f362f,0x008acd7b,0x008dc834,0x0096c139,0x009ef449,0x00ad35f3,0x00aca0d6,0x00a4e262,0x00913d87,0x008c77c0,0x007c89e2,0x005fefba,0x006cafc4,0x0078a11a,0x00a51591,
-0x00760c70,0x006c69e7,0x00804534,0x006f71ba,0x00882606,0x00c31468,0x00833d56,0x00780e7f,0x00676b79,0x006fdf08,0x00637f31,0x003a09eb,0x009bd971,0x00aea8cf,0x004fc4fe,0x00930a7a,0x005265aa,0xffb164ba,0xffaaad0c,0xffc7f1ce,0x0048face,0x00787d7f,0x00a637ea,0x00ae28d4,0x00c63ea2,
-0x00df34bb,0x00eed6e9,0x01044e66,0x010d563e,0x00d89ff5,0x00b8e6b6,0x00935554,0x00667de2,0x00749e1e,0x008e0add,0x00f41f0a,0x00983a03,0x00849358,0x00af2832,0x005526a5,0x0085833b,0x0169f192,0x00cab391,0x00486412,0xffeaec2c,0x00240d26,0x00480d22,0x00231c44,0x00f1d2d2,0x0108420e,
-0x001c5735,0x00bf55a5,0x002ee445,0xfecbb62c,0xfedd3a3a,0xff233be3,0x002590f9,0x00668a8c,0x00af1a87,0x00c7ab59,0x00f3de4c,0x012f7c32,0x01577d1a,0x019e62c8,0x019f4d34,0x0142c33c,0x00f97fd8,0x00a5f847,0x0056641c,0x004d2fb0,0x009ebc5a,0x016cb3c0,0x009b7458,0x006f2bf9,0x00ec324e,
-0x0041b747,0x0082387d,0x0238dcf8,0x00d03418,0x00ab4f1a,0x00481823,0x0076cded,0x00126b49,0xff577bcf,0x00928cfc,0x00c9909c,0xffb0da8d,0x00d61870,0x000bee6d,0xfdc775ac,0xfd950378,0xfe09cbbe,0xffb42625,0x005262a8,0x00dbaf8f,0x010affbc,0x013d8944,0x01956b68,0x01b08156,0x021831c0,
-0x023704dc,0x01f4ce3a,0x017e6a5c,0x00ec617f,0x0058ec66,0xffde804f,0x0037dc6d,0x01801432,0x00d498ca,0x008f855e,0x00e451e4,0xffcbc887,0x006e8d66,0x0339c16c,0x017508e2,0xfe519c52,0xfedfd746,0xffb1bb55,0x01155dd4,0x025de3f0,0x0217017c,0x01bc6a6a,0x01dc868c,0x000f86ea,0xff758e15,
-0xffa64387,0x001b4caa,0x00451b78,0x00a147bf,0x00284cc5,0x000695d8,0x004e0a9e,0x00ce479b,0x015b95de,0x017c0656,0x028b67b0,0x02ab055c,0x01c8c6f8,0x015a2ce8,0x00ec6aaf,0x004bb258,0x008dacb2,0x007062a1,0xffc78319,0xfffe95d3,0x009767e9,0x01780124,0x01ebaa9a,0x01346774,0xffc3189c,
-0xfeb31cca,0x005f4cc8,0x05206070,0x01605c56,0xfebcb172,0xfdf009e8,0xfb47c610,0xfc19ba20,0x008bffdf,0x0012259f,0x008f8430,0x00cfd3d0,0xffe54029,0xff5386d5,0xff4c0746,0xff46b791,0xff8934d7,0x001a1467,0x006630b4,0x00b7d5c3,0x014fae34,0x004e3bdc,0x003b4ee2,0x00b6632f,0x009dcbb6,
-0x00ae6658,0x004bb89c,0xffe0fd0a,0xffaaf74d,0xffe55517,0x000d51c4,0xffb0f57b,0xff2e0c3b,0xff28f69f,0xff527fdd,0xff802b67,0xfef24af2,0x00a501d1,0xfff70942,0xff6da7e8,0xffd8750e,0xffd6fd78,0x0218c614,0x02715918,0x00c0f6bf,0x005e2579,0xffc801e1,0xff4160eb,0xfeeb6092,0xff51e441,
-0x003a1721,0x001a066c,0x002d78ce,0x0086298d,0x00b85024,0x013ac620,0x02c06de0,0x00c39152,0x006b9d60,0x010708be,0x00b1522b,0x006f3eea,0x0052eb3a,0x005c558e,0x000e4446,0x000aefd2,0xff727727,0xff12b234,0xfef10dfa,0xff13205e,0xfe69a6fc,0xfd822ae4,0xfffe56e7,0xf9ea3e60,0xfc733b10,
-0x003a5d8e,0x0055261c,0xfd15b044,0xfd93c6d4,0xfdb9e6f0,0xfd9cae1c,0xff5f8018,0x00034a1b,0xffe59bb9,0xff084831,0xfe97fafe,0xfec7f920,0xfe867d26,0xff15e179,0xff77240e,0x003466d8,0x00a4fc2a,0x0169c7e8,0x002110ef,0xfface23a,0xffe0ebf4,0xfffa4b4c,0x00447c89,0x0045f6af,0x00098cfa,
-0xfff2fa8e,0x000914ff,0xff8751b3,0xff264bfe,0xfef4b4e8,0xff01dfe0,0xfda52714,0xfb7f5088,0xfa690bc0,0xfffa256f,0xfbfc8ec0,0xf8ed1ff0,0xf94a3ef8,0xfab2f538,0xfdb9ab80,0xff27ad80,0xfeb700aa,0xfed3107a,0xfeeb66d0,0xff989373,0xfef6e460,0xfedf6cfc,0xff7026fa,0xfece023e,0xfebe2e9a,
-0xfefacdee,0xffd40220,0x0058d368,0x00cf2896,0xffc3626e,0xffda9abd,0x00aa9f09,0x006f3df3,0x0030a163,0xffb35d00,0x0036fb3f,0x0055eccc,0xffe67393,0xff810d14,0xff667df0,0xff618ffd,0x0089e315,0x01a067bc,0x02954ab4,0x01143712,0x068af6d0,0x064b4758,0x050d1ed8,0x02c76080,0xffd71363,
-0xfc8f30f8,0xfb373b18,0xfb7ece40,0xfc9b5224,0xfd671210,0xfdb64f5c,0xfe7981e8,0xfeb87050,0xfed38abc,0xfec1e3be,0xfeb1d08e,0xfefa0726,0xfeb6ca96,0xfed90896,0xff4ece2e,0xfee7e766,0xff18a4f3,0xff67c57e,0x005a2657,0x012cf188,0x01d031ee,0x01d380c6,0x01eaa146,0x02271cd4,0x0337cc58,
-0x03f021b0,0x048a3308,0x03eb78b0,0x04045bd0,0x0533fab8,0x05aeba68,0x036a14c8,0x03673f1c,0x02d9d0cc,0x02a006f0,0x02a0be3c,0x01b9c556,0x00a36f41,0xff3f2a89,0xfe662ec6,0xfd895d3c,0xfc8462e0,0xfce3299c,0xfd23795c,0xfd577134,0xfdb5c7e4,0xfe0aa3ac,0xfe664336,0xfedf0a10,0xff43a4aa,
-0xffcb316a,0x0042083e,0x008859af,0x00b67167,0x00d5dca1,0x00f0ba89,0x01010038,0x0198589e,0x02153880,0x02aae070,0x02efcd3c,0x0341d558,0x03abf044,0x03b26de8,0x03b9e7e0,0x03abd690,0x039ddb88,0x03907894,0x02edf2ec,0x02c0cb04,0x028fe6d8,0x0246f48c,0x020b8714,0x01f346a2,0x01e2f978,
-0x01c37684,0x019f2562,0x016be2b8,0x0124f0d8,0x00d2d689,0x00918098,0x00831102,0x006e6a01,0x004d1dee,0x00319bf9,0x000ba5b6,0xffe2329b,0x00a0c51f,0x008d9c2a,0x00e08537,0x013c8d22,0x01b15680,0x01dd1e32,0x02148498,0x0249e13c,0x029af2b4,0x02be41bc,0x02f69754,0x034c2dd4,0x033df754,
-0x034c5aa8,0x03440cd8,0x030fefa8,0x02f280ac,0x0276429c,0x02870a78,0x0275309c,0x026e01a0,0x026ef978,0x02659a30,0x025e3c74,0x023bc6f4,0x02214730,0x020f2ef4,0x01f1d0de,0x01d9e6f4,0x01b50660,0x01b69cb4,0x01b24300,0x01b34752,0x01b03ebc,0x01b8fe7a,0x018e45cc,0x0214f4bc,0x025d0134,
-0x02d37184,0x023df8ec,0x0297b548,0x0315508c,0x0325bbc8,0x03319eb8,0x033990e4,0x0353c5a0,0x036562c0,0x037c6dc0,0x0332ce30,0x02dd40a0,0x037fe900,0x032fbe30,0x02e4d0a4,0x00b763f7,0x00a7b9d9,0x00a2e293,0x009e2a66,0x00a41bb8,0x0096516c,0x00bb6b87,0x00bae02a,0x0091c37e,0x00afb871,
-0x009fadad,0x0065bbd8,0x00696fe2,0x006a5336,0x006e66ed,0x0096e0a1,0x00a88e15,0x00ac7d1d,0x00b679ae,0x00c08c40,0x00d5c5f0,0x00ca3ea8,0x00bfc88a,0x00a7392b,0x00a4f265,0x009d4323,0x0090c31a,0x00985115,0x00a11b96,0x00bd73ae,0x009d4094,0x009998e1,0x00acbf68,0x009651e9,0x00a100eb,
-0x00f24f77,0x00b2693c,0x00e6b5a5,0x00d6de3a,0x00ae28c6,0x00890066,0x0065de2a,0x00bd5456,0x00d1bd28,0x006d0018,0x00cff6cd,0x00a07b74,0xfff8b0de,0xffebbe86,0xffe54689,0x00056adc,0x007e31c8,0x00be95c9,0x00cbc485,0x00e99d51,0x0107b2c6,0x013b08cc,0x01293df2,0x01154d02,0x00d5c25f,
-0x00bfe58e,0x00ad1cff,0x00979c4c,0x00ac2a36,0x00c0ab5a,0x00f53890,0x00c68fd1,0x00aea236,0x00c78af2,0x00785c20,0x00b243d1,0x0199129a,0x011fac14,0x00e014a9,0x009c89bd,0x00a778bd,0x00bdd58a,0x006f851e,0x0117c0ca,0x010c441a,0x0042c5f0,0x00fdc8a0,0x009788bd,0xff725991,0xff4486b8,
-0xff3f025a,0xff785051,0x004a9e29,0x00c4232c,0x00d85e81,0x0111c6a0,0x0151497c,0x01b08fe6,0x01a433ca,0x0180868e,0x00f18b7c,0x00e1ea37,0x00b5ec57,0x007d1d49,0x008cd51b,0x00ba7451,0x014021ba,0x00b6c39a,0x00a4c4a4,0x010580d6,0x00610877,0x009b308f,0x024b6d78,0x012700e6,0x019a96bc,
-0x012e4164,0x00e09b6c,0x0033192d,0xffa044af,0x009697a4,0x01033524,0xffdc9e07,0x01085390,0x008e9502,0xfe9e90a8,0xfe300fc2,0xfdf26978,0xfe80d8e4,0xfffef6aa,0x00dcd5ce,0x011f3e94,0x016c8fa0,0x01cc8f16,0x0251dd00,0x0256123c,0x022329c4,0x016df3c6,0x01492fb4,0x010a56c0,0x009893e9,
-0x0018988a,0x008c2831,0x01e5220c,0x00e5fa33,0x00a2d2d8,0x010eea80,0xffccd9b1,0x00c77e88,0x03d38b14,0x0257946c,0xfe9be646,0xfff88aca,0x007b1a4e,0x0240f458,0x050ee0d8,0x02870bd0,0x011ff49c,0x00b46893,0x0169c84a,0x010e3fa4,0xff1f20fd,0x010af920,0x012bec5c,0x003a90f9,0x0048d0e6,
-0x0036a898,0x004e4008,0x00600b1c,0x00e59738,0x01dafc0c,0x0203aa14,0x01e71f50,0x01834484,0x0178d1ae,0x014ee404,0x00955387,0x00aee800,0x00612029,0xffa4d3a0,0x001a6156,0x01229e26,0x022a34b4,0x023fa708,0x00d4f720,0xfe599ca4,0xfe1abdd0,0x00c4f7b3,0x048d2288,0xffdbdd07,0xfdbac248,
-0xfda244dc,0xfd3d98bc,0xfeb1ed82,0x01f09678,0x00ced94c,0x009ef2c7,0x0165395c,0x012a95d2,0x00b52e1c,0x007651e5,0xfff48aff,0xffd7228b,0xfff1ab74,0x007919a8,0x00b3adbc,0x0122dbe2,0x00ca7a5f,0x00d67382,0x012137de,0x00d66cea,0x008e7bf7,0x0097824c,0x00203c4f,0x0001a18b,0x004f21a4,
-0x009f31fa,0x003f17c5,0xffb2b04c,0xff6eefb1,0xff8f281a,0x007e0055,0xff5fe124,0xff691149,0xff5cc313,0xff2dbaeb,0xffc6a12e,0x001cc3a7,0x012997ec,0x012fc834,0x01730f42,0x00f93d6c,0x008b6751,0x0072996a,0xff2b8684,0xff31a095,0x0036278a,0x0029dd7b,0x005e1b93,0x006e1652,0x01167d06,
-0x013aa97c,0x01a640a6,0x00bb3501,0x00577176,0x010cb44a,0x00f2f8d0,0x007f5c7c,0x0023ccb5,0x0078e07b,0x003221cc,0xffe7dc11,0xff589c0b,0xff46f3f8,0xff942550,0xfe5df598,0xfe28a512,0xfe74717a,0xff4fec83,0xfdee3b20,0x00ed85d4,0x00c8d3b1,0xfff509f7,0xfef52898,0xfdee6ff8,0xfde132e0,
-0xfeb1d8ba,0xfebfbb0e,0xfeff80d4,0xfff5e70d,0xff49eb63,0xff4e2d50,0x0043ccc8,0x00875d8e,0x00939edf,0x004999bc,0x00d3342c,0x00e38bc1,0x00a7045e,0x00d3e537,0x00cfe9bc,0x00abb3a6,0x0097571f,0x0098c7cf,0x00a23d8c,0x0017a0d4,0xfffb0a7b,0x005a1815,0x003c679f,0xffd59209,0x001d44a1,
-0xff7a053d,0xfe5c6e5e,0xfd4f7e34,0xfcc3f18c,0xfaf7a9d0,0xf80aa220,0xf9093888,0xfa99f0a0,0xfd191d00,0xfdb45494,0xfe5f486a,0xff2a4b03,0xffc4af77,0xffd939f9,0xff11dc23,0xff74db10,0xff3ab4d5,0xfef72522,0xff4184ff,0xff872a35,0xffd0853d,0x009e307e,0x00e05eec,0x00c27582,0x002d4d92,
-0x002ef510,0x00c8dbb1,0x0040a47b,0x00311025,0x004c1693,0x008b8bfd,0x00596d4c,0xff83dc9d,0xfead4efc,0xfe4c1b96,0xfe5658dc,0xfd63f45c,0xfdaf90dc,0xfeee8aea,0xfd17cca0,0x03af8ff0,0x021c57c4,0xffc3a7c7,0xfe2b192a,0xfca4ecf4,0xfcbbabf0,0xfd4d5594,0xfdfb1d3c,0xfea981da,0xfed5ef00,
-0xfe561bd4,0xff05b648,0xff50a151,0xff55a6ee,0xff6d6c02,0xff998cf5,0xff8ed340,0xffaede83,0xffb652b1,0xffcc8a6a,0xffc034a9,0xfff11185,0x006ca646,0x009fb08a,0x00cb6615,0x00a51f0f,0x00f823a0,0x016c7b80,0x01b5cc22,0x02957868,0x031181d8,0x034191ac,0x032aed70,0x030d0140,0x03411950,
-0x02f62f34,0x031744b4,0x02c1f074,0x01798e30,0x00a86438,0xff75a466,0xfe5b41ca,0xfd06a214,0xfba54d00,0xfbf5e848,0xfc32aa84,0xfc5dea58,0xfc8aeffc,0xfcb2bf54,0xfce1b5dc,0xfcfe6bc0,0xfd162e80,0xfd314c44,0xfd9ca42c,0xfe06089c,0xfe6b6e72,0xff0152bf,0xffaf891c,0x0047fc5e,0x00c1d660,
-0x0142212c,0x01ca8bb6,0x02105568,0x022b22bc,0x0278267c,0x02999f44,0x02f60544,0x03424f8c,0x0372efa4,0x03c941b8,0x04287820,0x0390477c,0x01a7f4e6,0x00ed753d,0x00b09d91,0x006f0118,0x003e5d6e,0x000c1e0c,0xfff68159,0xffbbc348,0xffa7da73,0xff6b3d9f,0xff423153,0xff16a978,0xfeefe85e,
-0xfebc5114,0xff065ae0,0xff495a5e,0xff84f61d,0xffbbbf40,0xfff3216e,0x00202c70,0x00345a90,0xffff19a2,0xfff74f43,0x0018b96d,0x00157041,0xfff85f4e,0x0036fd67,0x0081ec22,0x00e1729c,0x011508ee,0x013df0aa,0x01b2e984,0x017e788e,0x017de206,0x01547b12,0x010cad4c,0x00977a11,0x0019f0c9,
-0x00299a16,0x001024bc,0xfffaeeea,0xffe205ee,0xffc62fd1,0xffaca479,0xffa09807,0xff978b7b,0xff8c04ed,0xff7d818b,0xff703219,0xff519e75,0xff77fdf9,0xff8da08f,0xffa86773,0xffbf86b0,0xffd7b8a5,0xffea6ad0,0x0042c845,0x00823579,0x00fa5a31,0x002bd114,0x0089bcaf,0x00fc88b6,0x011cfade,
-0x012fc6d2,0x013d270c,0x015bbfe4,0x0175c0ae,0x01964870,0x00f72501,0x007e928c,0x017ef146,0x00f0cc8e,0xffd695d0,0x00a7de4c,0x00a75b4a,0x0097b5db,0x00a71c3e,0x00a7a255,0x00999cff,0x00a36f1f,0x009d1471,0x008919b8,0x0093077e,0x0088d8c5,0x00689206,0x006de948,0x006df392,0x006e7f86,
-0x008ac9ce,0x00981ed8,0x00992edb,0x00a35e42,0x00acbdd2,0x00b914cd,0x00b5b827,0x00b341de,0x00ae5707,0x0093d1e1,0x00928f87,0x009813e7,0x00ab2478,0x00b02036,0x00b0122c,0x00ad42b0,0x00ab4eff,0x00a4877a,0x00923cb6,0x008d6d89,0x00d4d6e1,0x00ae6c13,0x01011632,0x00bd9e28,0x00c7f53a,
-0x00b303ac,0x008cb700,0x009efda3,0x00a200c4,0x007e5917,0x00a07f0d,0x00837146,0x001b8904,0x001c48fe,0x001bdb1f,0x002a351c,0x007b028f,0x00a128c0,0x00a665ec,0x00cb74fa,0x00e764a8,0x011ab88a,0x0114d746,0x00e93abe,0x00d16fe1,0x009cf59e,0x00915a4c,0x0086405b,0x00bf90ec,0x00da4747,
-0x00ce3a07,0x00d785c2,0x00b3fa89,0x0090b3d1,0x006f78fe,0x009754bf,0x0126f896,0x00f7a032,0x010acb98,0x00c6893c,0x00fd6e3d,0x011374f6,0x00ba234b,0x00d47f52,0x00a9aec5,0x005cf2ee,0x00973b29,0x005643a6,0xffc08a77,0xffbb26a7,0xffaba971,0xffb4f35e,0x00485e8c,0x00a410e7,0x00a3af93,
-0x00ecb293,0x0117d620,0x018c86ca,0x015b6ec0,0x012b67b8,0x00ed1665,0x009fe680,0x008aeae5,0x00560954,0x00c7e2b1,0x00e77bd8,0x00eacdf6,0x00e9790b,0x00cd2497,0x00adf68a,0x00583b6a,0x00749b57,0x0184b848,0x00f807c8,0x01c28640,0x0121335a,0x012fbc06,0x00c8b595,0x0035d103,0x006518d6,
-0x00968268,0x00473d36,0x009b974d,0x0065f283,0xff36563f,0xfef72140,0xfebbcab6,0xff00ba0b,0x000ff53b,0x00905862,0x00ae3e59,0x01292c52,0x019c5a4c,0x02683ff8,0x022a3258,0x01b76760,0x0133109e,0x00e95ccf,0x00d5c93b,0x004e67ee,0x00679d73,0x00d94301,0x019da408,0x011f8ae2,0x00c1b493,
-0x0092f7bc,0xffd617e0,0x00a4a582,0x02a83714,0x0210f4d8,0xff833c12,0x006175ac,0x016b2550,0x02d6ede0,0x04afd4a8,0x02066f0c,0x00a541a4,0x0044b1dc,0x006ed904,0x003c5a35,0xfef3e91c,0x01f64bfe,0x024f4fb4,0x008093a4,0x007a33ac,0x00717af0,0x00bdd8b3,0x00776cd9,0x0059826f,0x00ea18ed,
-0x00f91d18,0x00e6ac02,0x01315e5e,0x01543ae4,0x0170db46,0x00d4287f,0x009243b8,0x003cf327,0xff9d1ecb,0x00985a25,0x01d7b388,0x02534cf0,0x01bac900,0x003ed1a1,0xfde704ac,0xfe8e5d68,0x018f8d6a,0x000f0852,0xfe369fe8,0xfdb860a8,0xfd8a7f1c,0xfe4911be,0xfeff50bc,0xff67e366,0x00781ab0,
-0x00aca29b,0xffde4dd5,0x012e6d5c,0x01399a4c,0x009599e3,0x0068b6cc,0x004acc1e,0x0022a241,0x00ffaa6d,0x011f8258,0x00d2b3f1,0x013d986a,0x0146e362,0x0140a6f6,0x00fe2a5f,0x00849fbc,0x00913035,0x00446806,0x005ee44b,0x00e3f2c9,0x00b260bd,0x001a4dae,0xff63299a,0xff678e3a,0x00137611,
-0x009c0631,0x016a87a6,0xffb2cbaa,0xff90ea68,0xff235fc7,0xff50a290,0xff7127b8,0x002ff7ae,0x00e55e58,0x0203a670,0x01f3e2de,0x01678f3e,0x009a9c77,0x00384b44,0xfff9f34f,0xffeb6ca8,0x009a1f38,0x00f5e20c,0x00a223e3,0x018ed740,0x01708bea,0x008452c9,0x007824aa,0x005e3b5e,0x00921c91,
-0x00f78b58,0x007eee91,0x004e0e8f,0x008681ea,0x005542b6,0x000a3dfa,0xff9ecc9e,0xffbd8acf,0x0040b8f2,0xfea48aea,0xff1a3321,0xffd00dd5,0xff92c1c7,0xff982e69,0xfef2b06c,0x002bccb0,0x0099e9ed,0xfff78d2a,0x007f3523,0xffdb55b7,0xfe5191ca,0xfeb29eb4,0xfeec93ce,0xff47500b,0x001a6698,
-0x00573cd1,0x00109f93,0x00f1478e,0x0119c9ea,0x00f3f89e,0x012cf098,0x0112bf28,0x00a277e8,0x012db548,0x0145f744,0x011d585a,0x011047ca,0x00c2518f,0x00a21cb8,0x0039e236,0x0033b624,0x0094da22,0x008a4e39,0x0042b8da,0x00d6bffc,0xff7fdc32,0xff0192d1,0xff0797e8,0xff65e21c,0xfc4d6790,
-0xfd14f000,0xfe8630fc,0xfe46e334,0xfd51a578,0xfd713f14,0xfdae1ba4,0xfe27fee8,0xffd1da51,0x0056dc17,0xff98d611,0x000f5fe7,0x001d0a49,0xffe120c8,0xffdb0c8b,0x001453e9,0x00904098,0x00fbde3b,0x010539ee,0x00829c5d,0x00beba90,0x00ae39c8,0x00c79b5c,0x00880c38,0x0085bd6b,0x00af8930,
-0x00474fc3,0xffba4cab,0xff153fbf,0xfea27f7c,0xfe67e4a2,0xfe6d5954,0xfd81cdc8,0xfd2dad24,0xfd33ea74,0xfc93d164,0xfe46cd26,0xfd0ac458,0xfc2d1028,0xfcdc5db0,0xfe4a2572,0xff7647e0,0x004138b5,0x00d173bb,0xff48be58,0xfea96420,0xfef89038,0xff072f16,0xff286886,0xff3f7d19,0xffa13887,
-0xfff9c774,0x0097233a,0x00b8edc5,0x009bca87,0x000ab577,0xffe6a9b5,0x00203a89,0x00b885db,0x00a8213c,0x00c5d8d9,0x00f701aa,0x01121d1c,0x01062976,0x0071526d,0x00769bf4,0x0098b742,0x00b1940e,0x01197194,0x00a81fb5,0xff989599,0xfed4823c,0x0106ef4a,0x0046b6ac,0xff603274,0xfea1b128,
-0xfd8d2504,0xfd34462c,0xfcd57dc8,0xfc9e1ac8,0xfd3ed7c8,0xfdc47754,0xfe218a10,0xfdfcce74,0xfdf0f444,0xfdcde448,0xfe16047e,0xfe4951b4,0xfe842b6a,0xfede5564,0xff55364d,0xffb9f402,0xffc200b6,0xfffbff14,0x00276523,0x00695040,0x00cfa594,0x0108906a,0x016ac88e,0x01842246,0x02004764,
-0x01d03160,0x01df5236,0x01ccd57e,0x01b74a46,0x01e89f5e,0x0213cbf0,0x01574e14,0x0028f805,0xffc33c35,0xff7c579b,0xff490295,0xff14153b,0xfee0e23e,0xfe9d9200,0xfe31a076,0xfe1b0b52,0xfdea66e0,0xfdd798f4,0xfdcf3484,0xfdcc9940,0xfdbd7de0,0xfdfd1f50,0xfe3231aa,0xfe6370d2,0xfe90594a,
-0xfeacbed6,0xfedfcf68,0xff609451,0xff5c6502,0xff7f91f5,0xffa63775,0xffc8b1b6,0xffd752f7,0xffe7fe17,0xfff655da,0x001bf801,0x002349a7,0x0036d1ed,0x005db311,0x003a8c7e,0x001d5c84,0x0011dd0f,0xffdc0f17,0xff309b91,0xff17073f,0xff081b17,0xfee738f6,0xfecc8c06,0xfea553f0,0xfe894ce6,
-0xfe6e914c,0xfe7103ac,0xfe6dfe16,0xfe66c70e,0xfe5eec04,0xfe573e56,0xfe464bf6,0xfe600e36,0xfe70e410,0xfe8567ce,0xfe9a2106,0xfeb3c4f6,0xfeb65294,0xfef12538,0xff0ecfd9,0xff4daf9e,0xff108929,0xff3c0ff9,0xff6b53e0,0xff7086be,0xff78d0c8,0xff748637,0xff840ade,0xff8a5ad4,0xff9999d7,
-0xff662e07,0xff40edd3,0xff8141c8,0xff56f8ab,0xfe8a9a12,0x008b36c3,0x00814da9,0x00785cc8,0x008f8349,0x008be8fc,0x007043b6,0x007e3e97,0x007df4e0,0x007a0f7c,0x00751f29,0x0072eb1e,0x007929e7,0x0072c687,0x0074225c,0x00783bae,0x0080c645,0x00830fe2,0x007ef97d,0x007f89c4,0x0081f769,
-0x007df329,0x008a37a7,0x008f0b54,0x009c5886,0x0078a8a1,0x007ae383,0x007ecb5a,0x009dedd6,0x00a258eb,0x0093a088,0x009a3e96,0x0093a196,0x007dd446,0x007b33f2,0x00736ce2,0x009340ec,0x0083b4af,0x00adc524,0x007ad4dd,0x00944865,0x0088dcac,0x004eb1ec,0x0066f5c0,0x006b9eff,0x00792765,
-0x00767f94,0x007ff5d0,0x0087d13e,0x0069bd4f,0x006a3fcb,0x007112ce,0x0090a44d,0x0096fb2c,0x0087747a,0x008c51bc,0x0090974e,0x009fa666,0x00c6fc79,0x00ae2070,0x00c1d146,0x007b543c,0x0072defb,0x0070b721,0x00c36ee4,0x00de7571,0x00aafa0b,0x00ba4a52,0x0095eb4f,0x0056f479,0x005fe72c,
-0x006fcebf,0x00a5f157,0x009ad2f8,0x00988f35,0x007e5a2e,0x00e0c7cf,0x00d6da90,0x003f3261,0x0075b7ca,0x007736ed,0x0077c547,0x00617cfe,0x00592129,0x00912bdf,0x0055f7e4,0x00584b48,0x005ab9a4,0x008fe4e1,0x00a4a001,0x00831890,0x00971915,0x00920bb3,0x00bdc9c9,0x00d902de,0x00cadaa7,
-0x00f25e38,0x0072b9d3,0x006c9480,0x0044e392,0x00fa1c0d,0x01123a6a,0x00bbacba,0x00e22a3c,0x00b7199b,0x00594af2,0x004e900a,0x004cb922,0x00adbec8,0x007a316b,0x00e9e1fe,0x00708700,0x009ef09b,0x007766b9,0xffb31360,0xfff34b99,0x001befb2,0x0067dd9b,0x00676471,0x00bfe4c4,0x00d7549d,
-0x0039e768,0x00187b37,0x00176389,0x0095cbc4,0x00a4f6cd,0x0073fb50,0x0097d0cd,0x00baea96,0x011f9a14,0x016e37ee,0x01302390,0x014d6f78,0x00aca94c,0x0086e281,0xfff14df7,0x00b35990,0x01256f08,0x0123d33e,0x011218ee,0x009df760,0x00156ac8,0xffff6e6a,0x006087e5,0x01489a9a,0x011b51d0,
-0xffaa0071,0x00eed2be,0x021ac6a4,0x0278f144,0x03094578,0x01b01b96,0x011fbb92,0x01266684,0xff86e682,0xff156d24,0xff1f54da,0x0148f888,0x01f1c7f6,0x00eab923,0x00e1d3c9,0x00ddd10c,0x00f4b2b2,0x00b3dc30,0x005ba900,0x0005d3dc,0x003b5e8e,0x006b4a1c,0x00ea6cfd,0x010f71c0,0x014d915a,
-0x0144f666,0x0067f39e,0x000adbe8,0xffe58db3,0x015d2322,0x024766c0,0x01826b6c,0x00d194d4,0xffb586fb,0xfe19e5c6,0xfe8d6476,0x025ebe68,0xfc5cd650,0xfe0f0344,0xfe955fc0,0xfe63a492,0xfeb12030,0xfe35bda8,0xfcad7840,0x0051ca90,0x012fa6c8,0xff310e9f,0x00b9873e,0x0112473e,0x01175744,
-0x00bd0692,0x008456ad,0x006fba5f,0x011eb24c,0x013b8f7a,0x007d37d0,0x00dfc73f,0x00f400f5,0x00f082e3,0x015b1a40,0x00e432f7,0x00a2fa77,0x005f0cd0,0x00a32d43,0x0149f214,0x00b050a6,0x00138dde,0xff69d7ef,0x0063754a,0x00f8883f,0xfffb629f,0x03623414,0xff2d6705,0xff28d224,0xffab178a,
-0xfffd962a,0x00bdb9fb,0x00101766,0x00add410,0x0187fff2,0x01be6c5e,0x0178ca78,0x00923997,0x0105fbc0,0x006ec77d,0xffd10f7a,0xfffe5c2a,0x00543d0e,0x005e4108,0x00d58d08,0x00bbd3f7,0x00003943,0x00008e60,0xffdce6c8,0xfff5937e,0x0067dad5,0x002bd1fb,0x0074a3a5,0x006718f2,0x003bd47f,
-0x00411a87,0xfff0aae0,0x003f253d,0x008721a5,0xffa6023f,0x004cde49,0x008d5488,0xff63f680,0x0083413d,0x003046ce,0x001c609c,0x0039eeb4,0x011f1214,0x00b755b3,0x0027430c,0xff4bb161,0xfee5930a,0xfeb4665e,0xfe1add70,0xff958c89,0x005408a8,0x0060361a,0x007dbb56,0x00a05c97,0x00d23a53,
-0x00d08578,0x00ae1257,0x00737c3e,0x00bfec22,0x00b2230d,0x00a66269,0x00ec02b2,0x00a97d21,0x00791131,0x003c6548,0x002a7279,0x0061cbcb,0x003c8ed1,0xfffdf5e6,0x00057449,0xffc7844f,0xffdf41e4,0xffdc9323,0x009f5313,0xfe3ba8b0,0xff4ce192,0xffa085b8,0xff8a5be6,0xff153c6c,0xfeb73dba,
-0xfede5586,0xff6dcbb1,0xff7e2a1e,0xff7455c9,0xff5a7caf,0xffc81dd8,0x000d76ca,0x002cacec,0x00956732,0x00dcb863,0x010e7cf0,0x00d960ca,0x0093f13f,0x0032b17a,0x00c36c71,0x00ba86fd,0x006ad364,0x00761dd3,0x006cad45,0x00b51916,0xffe2f28f,0xff69aa3c,0xff46e8b1,0xff371275,0xff181692,
-0xfeae4230,0xfe5028f6,0xfda52bb8,0xfc98a820,0xfd591f8c,0xfc974260,0xfc94a6c0,0xfcff2a50,0xfdbb5414,0xfeac4ca8,0xff868098,0xff794453,0xfeabbb50,0xfeea6e58,0xff43f590,0xffb8ed3b,0xff8c9a50,0xffab1339,0xfffd7eeb,0x00303278,0x0076cc98,0x00944437,0x00dbaac9,0x00df1a45,0x0079962a,
-0x007af270,0x00622cc6,0x00401469,0x00430ea4,0x00586dc3,0x00a93723,0x009162d7,0x0042eb41,0xff87c923,0xff168630,0xfee082ca,0xfec0e14c,0xff784e58,0xff5ca7bc,0xfead5e22,0xfd7eaf88,0xfecf86ee,0xfe3ab6e0,0xfe3f1404,0xfe567734,0xfe5eb38e,0xfea5e3cc,0xff17a253,0xff8eb8ec,0xff82e1a2,
-0xff55887e,0xff4356e4,0xff48ed71,0xff5806a9,0xff5aefa5,0xff910e69,0xffc0df13,0xffebfe6b,0xffbfa274,0xff99887d,0xff7749da,0xffab9ee0,0xffcd4727,0xfff95f3e,0x002bf8ba,0x005f2d4a,0x008f097e,0x00b10386,0x00baa7b8,0x011df496,0x00a64980,0x006bebca,0xfffbd6ff,0xffaf0100,0xff7f0e70,
-0xff606273,0xfef58bb2,0xffb43c89,0xff703e9d,0xff3e1f75,0xff07ad1d,0xfed00566,0xfe97eaaa,0xfe4abc20,0xfe0a4870,0xfe0c6422,0xfe23ed72,0xfe2adbe8,0xfe334872,0xfe2dee4c,0xfe170d3e,0xfe3bb13c,0xfe57a9c4,0xfe84edca,0xfeaac4b6,0xfee04318,0xff00b244,0xfeee9946,0xff3adc8c,0xff5ecca0,
-0xff85ac62,0xffa87c8d,0xffdea02b,0xffe158b8,0xffe1abb6,0xffebc015,0xfff324ef,0x000ab079,0x002cbf29,0x000d8ebf,0xfff47894,0xffe29ea9,0xffb2946f,0xfef82f82,0xff031a07,0xfeef7edc,0xfedba61a,0xfecb41f8,0xfeb93c1a,0xfead032a,0xfe94159a,0xfea03792,0xfe9be84c,0xfe9a6c2a,0xfe96a3b8,
-0xfe9915fc,0xfe99e2e2,0xfeac35e8,0xfeb7b344,0xfec0660c,0xfecedf0c,0xfed98400,0xfef54e48,0xfed8a702,0xfed85a3a,0xfed08d90,0xff060849,0xfefe0dee,0xff024883,0xff0628a8,0xff116f7b,0xff12756c,0xff210c0f,0xff231061,0xff2e4498,0xff1cb6af,0xff197fc9,0xff05719d,0xff01c704,0xfe9ac48a,
-0x006294b7,0x005ef469,0x0056c8c9,0x0061a05f,0x0058e18c,0x003da079,0x0049faef,0x004e297f,0x005b7d62,0x0051f417,0x00544ae5,0x006bcb20,0x00523221,0x0051ae2c,0x00593285,0x005e85a4,0x005f720d,0x00600468,0x00576277,0x00559a1c,0x004f7356,0x005fae3e,0x00658223,0x007a89e8,0x00560fd7,
-0x006440a6,0x006dbb32,0x008dc058,0x0090dbbc,0x007aeea3,0x007dfc91,0x0075d9cd,0x00650ae1,0x0064f219,0x005a86b5,0x006956e5,0x0060a6ca,0x0052eb4d,0x003da072,0x0051c5e9,0x0046a6da,0x0006956b,0x0016a3a5,0x0027d77e,0x0061e60a,0x0057b889,0x00686196,0x009f5ff7,0x004cde68,0x003cbc63,
-0x004f2ba8,0x006026d5,0x006b1511,0x006b13e3,0x00547a0e,0x004c8817,0x004bdf72,0x0072aca9,0x00704932,0x0084347c,0x005a3f2a,0x005f25b3,0x006b3136,0x00b8c818,0x00c9be19,0x008b71cf,0x008d6b40,0x0074674b,0x0046a3a2,0x0059e953,0x005f6706,0x0064608f,0x0052a348,0x005761a3,0x00616ee4,
-0x008f7a60,0x00548b08,0xffc2b71b,0xfff6a545,0x00112f00,0x00738ada,0x0045ff36,0x004f9af8,0x00d70c7a,0x00331bb6,0x0036603b,0x00575f38,0x007b1f74,0x007fbea7,0x007b54c8,0x0050ffff,0x003a507b,0x003c5939,0x00696c0e,0x007894f7,0x00a33156,0x00536f88,0x006d0a1e,0x006cd8ff,0x01190c28,
-0x012ac8d6,0x00b44ee8,0x00caa3ed,0x009c83cd,0x00562c61,0x00649995,0x004cd7c0,0x005139ca,0x00415c08,0x001aabac,0x00138cea,0x00367830,0x0003857a,0xff2293e5,0xff40b5d1,0xff8a6b45,0x0072ca63,0x00661a01,0x00be438d,0x017c7354,0x00514cb6,0xfff0faf6,0x0007194a,0x00500265,0x007cda26,
-0x007021a9,0x002bc13a,0x000c86e4,0x001bef51,0x00855a70,0x00b083e9,0x01336256,0x0096fb3f,0x005bbbc2,0x00043d36,0x0100420c,0x01587ec6,0x00b5a6a8,0x00c93634,0x007f5dce,0x000c89ae,0x0038d138,0x0053c859,0x009cd209,0x0065473c,0x002faeab,0x0141da32,0x0185ae04,0x0154e848,0x01910184,
-0x01bfe500,0x019cdb72,0x010cfa00,0xff9a0084,0xfecb09bc,0xfe92dfe6,0xff7e1aa3,0x00ad8701,0x01ecb338,0x01316d44,0x00ef1aa0,0x01014a1a,0x00d4f53c,0x00b195d3,0x004ff7ac,0x002a3c37,0x0046ab92,0x00a2c680,0x00ab58f4,0x00eebbe8,0x016fbb24,0x005969a8,0x000f66d7,0x009b6633,0x01e7a612,
-0x021ee2bc,0x00a6cebc,0x0085a997,0xffafe275,0xfe344e40,0xff139047,0x01391ef0,0xfbc3c1a8,0xff16a892,0xffdc10d1,0xff36bc7c,0xff06cf1d,0xfedc1b5c,0xfe761e8e,0x00efe4da,0x01a3728e,0xffe75fba,0x007f3185,0x00bafa2f,0x0118ddfc,0x0120d008,0x011b1996,0x012049c2,0x00f026c8,0x00d4423a,
-0x0089b1ec,0x009856e9,0x0092dbea,0x00864ad3,0x015a157e,0x011e968a,0x00a32269,0x00b82267,0x00fd14ce,0x0156840c,0x006cb1f2,0x0027f3fe,0x002ee31c,0x00ad6268,0x00f4d0cf,0xfff26f01,0x02af3490,0xfefe06ce,0xff095678,0x00be55b6,0x0129d9c2,0x01791440,0x004898b8,0x0025e306,0x003f7693,
-0x010bfda2,0x016549b4,0x00b3db76,0x010c8092,0x007fc2d7,0xffc0bb81,0xff76e53f,0xffbce8ed,0x00ab9c16,0x0037737d,0xffef9102,0xffa1296a,0xffb5a665,0xff9a33f2,0xff7e5168,0xffcfa227,0x000d21d0,0x0094f90c,0x00728169,0x004b1687,0x005f849e,0x0053162f,0x007a488e,0x003e1ed4,0x00b5f415,
-0x00f68996,0x002e08c4,0xff401012,0x010d8026,0x012f0aac,0x00c9c6ad,0x00ba3c3b,0x0114fc6c,0x00b09f4e,0x0050f2f4,0xffdf6ba7,0xff9be2d1,0xff6a3cfe,0xfeadc304,0xff6cb845,0xffe61e73,0x00217d88,0x00037b07,0x003f5f3c,0x00ba146b,0x009958b9,0x009126cb,0x005dfc6c,0x00300196,0x002492af,
-0x002cbb8f,0x008cb7d6,0x00769b50,0x00489e57,0x004cfdce,0x003af948,0x003b5f92,0x0014574e,0xfff36b7c,0xff946691,0xffda7918,0x000cd383,0xffeef89d,0x00b58121,0xfe4faf0c,0xfed0edc8,0xff4f6667,0xff9e7217,0xffbc5fe0,0xffa598e5,0xffabd6d7,0xffce318d,0xfece82be,0xfec17388,0xff633267,
-0xff8f223b,0xffd5edbc,0x00059d37,0x007a0f99,0x00a19b2c,0x00b1dc51,0x0020ede3,0x0005981d,0x005133a8,0x0058cdd8,0x00478e4f,0x000319e7,0x004bd8dc,0x003d5cef,0x003b6a30,0xffd1603d,0xff97434a,0xffb8c8dc,0xffac66e5,0xff5a2146,0xfebb9424,0xfdf2afe8,0xfd40c080,0xfcb1542c,0xfda94380,
-0xfdd985d0,0xfe0063c2,0xfe522412,0xfe48ac00,0xfe475e2e,0xfdbd909c,0xfda36100,0xfe145cb8,0xfedee1c2,0xff5d5ff5,0xff6711a4,0xff910459,0xffb816c6,0xffd4c888,0x003d77f4,0x007022f4,0x00e08439,0x0082203a,0x00764cde,0x0095e5f9,0x00a2ff25,0x0098367a,0x0042c731,0x0049cd18,0x002d0349,
-0x0044fa2b,0xff8b0b41,0xff2af887,0xfef9ce54,0xfe98d6c4,0xfe689760,0xfe6108b2,0xfeaa2b10,0xfeef1248,0xff4b2864,0xfe6de786,0xfdabef5c,0xfd5c0720,0xfdb533f4,0xfe0e604a,0xfe839fd6,0xff1e8357,0xffbd3a4b,0x003cafe5,0x0011501d,0xfff3a191,0xffe284b4,0x002006d9,0x004bda84,0x0072aa19,
-0x00a75a2f,0x00d5bbef,0x0114a378,0x00c43c9e,0x00956a92,0x003a5d4a,0xfffc4b20,0xfff5655a,0xffe1f25e,0x001518c3,0x003e4265,0x007dc1c6,0x0063699a,0x0032bcba,0x00375dbd,0xffd7e2f0,0xffa171b0,0xff4619da,0xfed87a5e,0xfe5b55d6,0xfdf5b88c,0xfdbd3dfc,0xff5bd0aa,0xff22a5b5,0xff1d80d7,
-0xff0ff8bb,0xfef6b12c,0xfee13092,0xfec518ca,0xfec8c350,0xfeeea500,0xff200579,0xff42332b,0xff5b07d9,0xff71aa3d,0xff87eedb,0xff7eee27,0xff787da3,0xff7b6593,0xff8126bf,0xff903328,0xff9c706a,0xff942c6e,0xffd4b9c9,0xffee8f4f,0xfffe764e,0x001593bd,0x004747d8,0x0022cba2,0x000a0ecc,
-0xfff0dff0,0xffe2f94c,0xffdba601,0xffe01136,0xffbefa40,0xffb1650a,0xffa520e4,0xff80310c,0xff71979f,0xff84eff0,0xff83ae0a,0xff82e507,0xff8781a6,0xff8a2e5e,0xff8d9c3b,0xff8410e6,0xff91ac0b,0xff969ef1,0xff9efb67,0xffa7c9ce,0xffb0d736,0xffbecec2,0xffbafbb9,0xffb9f461,0xffb4b746,
-0xffb5aa10,0xffb143af,0xffb8423c,0xff993e13,0xff87fdd2,0xff605f96,0xffc577f9,0xffa7f083,0xff8af4dd,0xff869254,0xff8abf10,0xff866293,0xff84f246,0xff7ab436,0xff7043c6,0xff7f7248,0xff938b6c,0xff4b6e79,0xff640b41,0xffbff440,0x002fe1e3,0x00422fdd,0x00452a0b,0x00302ca9,0x0020ae0f,
-0x000a66e6,0x0014088b,0x001a861c,0x002d9bbd,0x0024c487,0x00253160,0x003bc2f5,0x000f185d,0x000683da,0x0006055e,0x001a1286,0x00259008,0x00347efc,0x0031943e,0x00322306,0x002af87d,0x00353b98,0x0034dfea,0x003bd2f7,0x0026baff,0x003d8789,0x0056a83e,0x00694a1b,0x006b932f,0x0059c5d3,
-0x00591ed7,0x005311f7,0x0044dfcc,0x0045fdc4,0x003c2ca5,0x0044b369,0x00414e64,0x002e2134,0x0046ee20,0x00220934,0x0004a882,0xffd12198,0xffd22e0d,0xffe9081a,0x0029c07d,0x002a5d2d,0x002f6cbe,0x005ed71b,0xffdee78a,0xffb1b684,0xffb9f587,0xffe0b7b7,0x000e74df,0x003c1f39,0x003e65b1,
-0x003d73c0,0x002bf2eb,0x003bcd37,0x002d0580,0x001c3a88,0x00255db1,0x0041123d,0x006b7b81,0x009a36cc,0x00a28882,0x0072e2d1,0x006c7594,0x0058ec6e,0x00368256,0x0058e912,0x00601ee9,0x00444826,0x003aacf1,0x007719a0,0x00acbc7a,0x00578b17,0xfff325a1,0xff8bdfdb,0xff9e5ed9,0xffc1f316,
-0x003df582,0x001e09db,0x00184b21,0x00838980,0xff8cb15e,0xff5d7036,0xff6b343c,0xffc87950,0x000a28c8,0x00582f58,0x005049a0,0x004c5303,0x00314bb2,0x00438a0b,0x0036432e,0x000ad0ef,0x001d0d04,0x00615ae1,0x00a3ff68,0x0115e31c,0x012818b8,0x00c6438d,0x00c4de19,0x00a011fc,0x005a57f2,
-0x008bef80,0x006ff76e,0x004904b4,0x0062eaa2,0xffff90d2,0x0079a111,0x002c56fa,0xffc5bf28,0xff13309b,0xfecf43f8,0xff296888,0x002f1595,0x003f68c6,0x005c1185,0x01093a84,0xff7e96c4,0xfeb14afe,0xfea88e54,0xff17ae48,0xffc3b8f9,0x004ef2f4,0x004dd118,0x003c4506,0x00086239,0x002f30a2,
-0x003c8618,0x00688bc3,0x00661e97,0x006ce73d,0x0084f975,0x014ac7f0,0x0180f8d6,0x00c26cce,0x00bb7435,0x009b39ba,0x003bfec3,0x009a5eb2,0x00ad57f7,0x00738ff4,0x004670d7,0x0191d65a,0x01c59fe2,0x0097159e,0x0023e9d2,0x008939e6,0x01f7971a,0x01fc04e0,0x00549b95,0x001941d9,0xff25e91a,
-0xfe6235bc,0xfe61da08,0xff97e400,0x021c4c20,0x017394b6,0x012d8e58,0x010da58c,0x00ddaa74,0x00d35978,0x00c2303c,0x00b7928c,0x00ac7543,0x009e7de7,0x0072147b,0x008d1bf9,0x012cbc86,0x0050dc83,0x005ae229,0x0174dd90,0x01f3d50e,0x018cc3f4,0x007c07db,0x00398d6d,0xff94bfc6,0xfef00c86,
-0x00a18c57,0xfdc71994,0xfcccd8fc,0x003e9f81,0x00f96637,0xff5d7f7f,0xffb30345,0xffa469e8,0xff2b5ec1,0x008d8981,0x01168da8,0x00b6631b,0x0050a601,0x005a03b9,0x00e5fe9d,0x012f6850,0x015c9f08,0x015a1f24,0x00a77367,0x005e5b59,0x006fef37,0x0036c678,0x0038617f,0x005cdae0,0x00de8374,
-0x00f31a96,0x00920254,0x011977c6,0x01543010,0x0125023a,0x004b2d2b,0x005e5701,0x00f81979,0x00b68c42,0x00d483bc,0x0126771a,0xff57de80,0x0083fe14,0x009e7492,0x01c12a3a,0x01abca64,0x013a3cde,0x001ef7f3,0xff50cfb2,0xff45ce7c,0xff6091c5,0xfffa4514,0x00e9321b,0x00925dce,0x0077e3e4,
-0x001a8ca8,0xffbfcbb3,0xffc22636,0x0094ff98,0xffde3729,0xff9d21f7,0xffb49ec8,0xffa30c64,0xffb7e8f9,0xffcd95b6,0xffa2d9ff,0x001c4b01,0x00b640ee,0x006e3c5b,0x00537e7a,0x005aa25a,0x0078cf2b,0x00663b78,0xffebc2cb,0x00cf8ce9,0x010cd40a,0x009c1a14,0x008f6263,0x00452b44,0x00a8c689,
-0x00ac8778,0x00c7bc52,0x00bf67cd,0x010ecd6a,0x0150b404,0x0182bf60,0x0078b994,0xfffc1970,0x0022be80,0xff6ec62a,0xff6d2d96,0xffaea8af,0xffdeb2b9,0x0021247c,0x00b18c1f,0x00b520dc,0x00b4b60d,0x007fd998,0x000b975c,0xffe55864,0x002004a1,0x0015ef2e,0x001c830f,0x00331802,0x007dcf30,
-0x00827d59,0x0037319d,0x005676de,0x0035152b,0xff91a142,0xff9fe58b,0xffb14973,0xff6a3c39,0xffe46620,0xfe6a0dca,0xff2df33e,0xff2eaf20,0xff95cce1,0x0058665b,0x000ef678,0xff8747a0,0xfee05350,0xfe8c0d6c,0xfec51a38,0xff85eb7c,0xff8a073d,0xffd3b538,0x001412c6,0x003d59b7,0x0032e6b8,
-0x000205bb,0xffe51669,0xffe79fd5,0x0031af99,0x00051522,0xffff7897,0x000aff50,0x0024c4b6,0xfffee43b,0xff9c5976,0xffc92242,0xffc8086d,0xffc768a2,0xffa222a4,0xff305f49,0xfea82da4,0xfe0895fe,0xfdaa4df0,0xfde50b7c,0xfe103c28,0xfed8a2dc,0xfede549e,0xfee3bea4,0xfe9981a0,0xfe2a5654,
-0xfe550ec8,0xfea0ee74,0xfee55974,0xff282e6e,0xff47f50d,0xff69bace,0xff90b706,0xffc0b4a6,0xffffbc19,0x004653a9,0x0063af41,0x002b21ad,0x001f4e17,0x002a9d8e,0x007369a2,0x00774e47,0x006e66fe,0x0051b948,0x004f82a7,0x000a58fc,0xff9fd251,0xfef56556,0xfeab3e6c,0xfeb5fe82,0xfe875772,
-0xfe58151a,0xfe26ba66,0xfe332168,0xfe85dd2c,0xff0d7307,0xfef483b2,0xfe23d130,0xfe1b76e2,0xfe41faaa,0xfe4aace4,0xfe5dc14e,0xfea691a0,0xfedb07f4,0xff1a2744,0xff435bfd,0xff7b7433,0xffaf09a7,0x001af714,0x0077cab5,0x00d336ca,0x00a8b63a,0x00944ce6,0x0086214d,0x008ace2d,0x0085810c,
-0x0089f547,0x007908aa,0x0064c3a4,0x0056c2ba,0x00301603,0x00271371,0x001eb3af,0xfff9eb8e,0xff88e53d,0xff635638,0xff4cf503,0xff709c77,0xff71475b,0xff1a2b0e,0xfeba18ea,0xfe6b9f2a,0xfe4a74ee,0xfee52248,0xfeb668d4,0xfee363f8,0xff0eb0c2,0xff3daaf4,0xff6420bf,0xff92eeeb,0xffc87b43,
-0xffe59da9,0x000375e7,0x001c7072,0x003200ba,0x0044ce07,0x006d5f21,0x005d1518,0x0057c474,0x004bf2bc,0x0045cbb5,0x00452a8c,0x003bebb3,0xffffb807,0x000c7633,0x000740a4,0x0004de2f,0xfff84602,0xfff0da24,0xffc71c26,0xffb4c5ea,0xffa45201,0xff841ce6,0xff647b5b,0xff5c2582,0xff3e0553,
-0xff36caac,0xff1e17d3,0xfefe6a98,0xffab56d7,0xff895bd1,0xffa57c54,0xffb2f90a,0xffc15886,0xffd06d1c,0xffdcabc0,0xffe8d1bc,0xfff232ad,0xfffeb2a8,0x000c70ae,0x001a15f4,0x00262708,0x00340a09,0x002e09aa,0x002d9799,0x002c7146,0x0028c7b5,0x0022cc33,0x00285a39,0x00177bde,0x001529ed,
-0x000e0b1c,0x000be936,0x000c373a,0x00231356,0x001ba593,0x0015e3ad,0x0007f867,0xffff9f17,0xfff0f0e3,0xffdfd3ac,0xffc84c34,0xffb4cff0,0xffc34b9a,0xffb1d8df,0x000a0dab,0xfffe1084,0x0022e45e,0x0029b69e,0x0004c25b,0xfff078ab,0xffe25416,0xffe07660,0xffe71e9f,0x0005e7e5,0xfff4d9f1,
-0xfff2126a,0xfffe86a0,0xffdc8a82,0xffd0dabe,0xffc3a3f2,0xffd91753,0xffe9c56c,0x0002e344,0x000bc368,0x000ff3a8,0x0004a9b9,0x0006ff92,0x0004277b,0x00002624,0xfff722f9,0x000c86af,0x00336ad7,0x003a59df,0x003d27ec,0x002f45c2,0x0031bf5c,0x002d067d,0x0016fb5e,0x00203b08,0x00161103,
-0x001b4975,0x002151ba,0x002e29ab,0x0043cc9e,0xfff9fdce,0xffd29a7d,0xffb239a9,0xff9ce9bb,0xffb019ec,0x00012b3b,0xffee1bb9,0xffef2ac5,0x0005e7d1,0xffb2932e,0xff7ff25d,0xff6258a4,0xff7fbfd1,0xffb2928e,0xfffca5cc,0x00252e1c,0x002f6f31,0x000faddf,0x000d4b9a,0xffeafa28,0xffd0d886,
-0xffe79dbd,0x000f1f70,0x0058110f,0x0068c446,0x00703a2c,0x005576f8,0x004f848a,0x003cf614,0x000d473a,0x004b3c36,0x0052fe3e,0x001a6caa,0x0026a068,0x00a4d5b8,0x00e8e073,0x0029a40f,0xffb685f7,0xff81bffc,0xff5490ad,0xff70b48f,0x002506ed,0xffd6d78f,0xffcddd34,0xfff82762,0xff52f557,
-0xff0d52e9,0xfed7e040,0xff28ea6b,0xff87ae26,0x000e2ac5,0x00514085,0x00653f1f,0x002c63cc,0x0017c64b,0xffedbd1a,0xffac4f25,0xffd671d9,0x002bc9f0,0x00a14617,0x00e49cdc,0x00f5b6fe,0x00b7e90b,0x00ba94ee,0x00a000cd,0x003170a0,0x009419c8,0x007dc1cc,0x00373f59,0x007c30d8,0x005ad4fe,
-0x00e764d7,0x00177fc0,0xff9b76ec,0xff3d8e4c,0xfead0850,0xfeeeb638,0x002113d7,0xffe201ed,0xffeff0bd,0x0055092a,0xff6b5abe,0xfe91d6de,0xfe2037aa,0xfe51d7de,0xff049a93,0xffef76f8,0x00714771,0x008bcd2b,0x00257ff8,0x000c3be3,0xffc95eca,0xffa087c5,0xfffe4727,0x005ef702,0x00db2864,
-0x0181494e,0x01a81bc2,0x00eb9b6e,0x00cdd0fe,0x00b7082a,0x0049016d,0x00f0f148,0x010dc10e,0x00570445,0x0058ff3a,0x028b0c40,0x01f4c8f6,0x005e074d,0xffb33be0,0xff5863e8,0x0144a83e,0x015aae0e,0xff6488af,0x0031ec04,0xff4412c7,0xfdb11858,0xfdca40bc,0xfebda1b0,0x00ab9854,0x00fb168f,
-0x0109e90e,0x00d600ab,0x00b9c38f,0x00ad7eb8,0x00c330e5,0x00ffd182,0x00f1bdf8,0x00c9dbb3,0x007164c6,0x004959f1,0x00c6b7fa,0x0022ddf4,0x009c85a0,0x0241a848,0x018e9ad6,0x00cfcde5,0x00706a53,0xff8cbd53,0xff2904f3,0xffd09186,0x01c5cb90,0xfb799ab0,0xfde6c3f8,0xffcbb71f,0x00bfbb36,
-0x000ceaff,0x0097c8d9,0x0037135c,0xfef55aca,0xff437dc2,0xffe7caf4,0x01568e84,0x005b6cb4,0x0019ba95,0x00666ef9,0x00ec082c,0x0136eb88,0x0109b4c8,0x005a7e61,0x000e0128,0x0057087a,0x00267c8c,0x00282c62,0x0050885b,0x00563520,0x00886500,0x00747a49,0x01427938,0x0168e724,0x00d304c5,
-0x00661a93,0x00822c14,0x00dfd404,0x00ab2c87,0x011766bc,0x0259d42c,0xfcfb090c,0x0282b99c,0x02b16b1c,0x02791068,0x01e71426,0x014fcebe,0x00b6f29e,0xffc24c02,0xff31d863,0xfe7e5816,0xfed807fc,0x007c4d69,0x0009b519,0x00730926,0x00959384,0x006df316,0x001bd83e,0xfffbafe0,0xffbd8c84,
-0xff9a2490,0xffc670af,0xffd06dad,0xffee176a,0x001554d8,0xffd326bf,0x003cb7b4,0x00a8a55b,0x006798fd,0x0053c854,0x00470e75,0x009947d9,0x00885429,0x001f1971,0x00d85feb,0x00faa3e5,0x011c130a,0x02084fd8,0xff1be0a0,0xff57c8d4,0xfff1ee61,0x008201e9,0x00cda2ed,0x019d9e8c,0x02147ab0,
-0x026a754c,0x012a0924,0x0089c782,0x0113658e,0xffbdb786,0xff5f46b7,0xffa235bc,0x00349ef3,0x007122c2,0x009d1e08,0x00a384b8,0x008cc372,0x006ff24f,0x00111399,0xffeda45e,0x000307da,0xffdce67e,0xffe4c830,0xfff74038,0x006bc342,0x009ba3f7,0x005522b5,0x0069fe89,0x003bf44a,0xffcda62e,
-0xffbaa6ea,0xffdc1dd5,0xff7ce5ab,0xff42550a,0xff1449c1,0xff96ded6,0xffbf9570,0xffe24590,0x000c82c5,0xffc9a454,0xff329332,0xfe540c22,0xfefb10e4,0xff595fbc,0xffb99334,0xfffd1978,0x00200e3a,0x00357635,0x000dc8b7,0xfffd2b65,0xffe92bb2,0xfffef2b5,0x0015f08e,0x002445c3,0x000a6a07,
-0x000473a3,0x0007fd6a,0x00048d0d,0xffe5d862,0xff675150,0xff962a92,0xff87fc87,0xff7ad60d,0xff849db2,0xff4fb318,0xff187956,0xfeddd588,0xfeafb616,0xfec5a67a,0xfee2797a,0xff42d35d,0xff4d96d4,0xff5d0f8f,0xff5893eb,0xff7268f4,0xff719026,0xff9eb898,0xffb71f64,0xffca19fb,0xffb1e7b8,
-0xff9a27b5,0xffcc1bbe,0xfffef490,0x004ab7c2,0x00287832,0x0005bffe,0xffd34201,0xfffa36ba,0x0013d40b,0x0039dd84,0x004548c5,0x004f3b72,0x006db266,0x00139f56,0xffb12ef9,0xff2c233a,0xfee380d0,0xfebf5e8a,0xfeb8bfd2,0xfe85cdda,0xfe3b9564,0xfdee1dc0,0xfddbed30,0xfe068080,0xfe48d91e,
-0xff02f90a,0xff1050ec,0xff1c3d06,0xff1cc39e,0xfefdd250,0xfee6650a,0xfedca8c2,0xfec92b28,0xfec0e2d2,0xfefff066,0xff4e5dbb,0xff95d703,0xffd09faf,0x000a1d07,0x00581af2,0x0036f611,0x00287023,0x001307e0,0x002fd7fd,0x00412ed6,0x005e1462,0x0065c609,0x0073b19f,0x009005ef,0x000ca906,
-0xffbb32d3,0xff3d3c01,0xff28e11a,0xfec927d0,0xfe9c2f7c,0xfec5637a,0xff0d2621,0xff407f86,0xff420646,0xff4db5ed,0xff5316fb,0xff3232b6,0xfea6556c,0xfec1d128,0xfef23786,0xff1f685e,0xff5156bf,0xff84cfd5,0xffbd335f,0xffeb59e1,0xfffc4250,0x00027386,0x000dc989,0x001d11a3,0x002d2ffb,
-0x00493418,0x004ad4e6,0x00548a60,0x0056b46a,0x0059b2de,0x0056f1df,0x005f5c1b,0x00555420,0x00111746,0xffedd0d3,0xffc7c6a9,0xffaec0a6,0xff82c054,0xff6c08b9,0xff58dc5d,0xff48d444,0xff2422fc,0xfefa233c,0xfeda96c2,0xfecc7036,0xfec3d506,0xfeb9b0de,0xfebc83b2,0xff798394,0xff6f8849,
-0xff7fd9cb,0xff8deff5,0xff9ac402,0xffa49a34,0xffad862b,0xffbd7969,0xffc0789b,0xffcaff5d,0xffd4b0b9,0xffde5c2a,0xffe68705,0xffeed939,0xffed59ae,0xffedf54d,0xfff002cd,0xfff0b90f,0xfff278a8,0xfff1d47c,0xfff469ae,0xffef3613,0xfff11a3a,0xffcb0b55,0xffcbe215,0xffd2d791,0xffcb563f,
-0xffc2c29f,0xffb6d3a0,0xffad0f23,0xffa3b590,0xff97495f,0xff891868,0xff80d9ab,0xff85a410,0xff7c4291,0xffbfb5a6,0xffdcdc90,0xffff317a,0x0004e4f0,0xffe2830f,0xffd1063c,0xffcbf226,0xffc21a32,0xffc83f3b,0xffeb4295,0xffd823c9,0xffd61e08,0xffdb1858,0xffd09c7e,0xffc80e84,0xffb1fdee,
-0xffbcd140,0xffc6f48d,0xffd8a155,0xffe9f5f5,0xfff004c1,0xffe996e7,0xffe22483,0xffdce3f0,0xffd88960,0xffd4ad29,0xffe38173,0x000b4ebc,0x0005770a,0x00096132,0x00060cce,0x000c326d,0x0007cf3d,0xffe9a3f8,0xfffc69b0,0xfff3bcab,0xffe949d8,0xfffc90f2,0x00148573,0x001967d5,0xffd36a14,
-0xffb18ea8,0xffa5ad23,0xff86f01f,0xff96e49c,0xffe9ce28,0xffcb98a6,0xffd4415b,0xffe3598a,0xffd7cef1,0xffaf47c3,0xff6b43cb,0xff6eecd1,0xff872602,0xffbba484,0xfff74e92,0x000a55ea,0xfff2ccf2,0xffdecce1,0xffbe306e,0xffb0733d,0xffbb1416,0xffe00b23,0x003dbdc2,0x002a6bf2,0x00330cdd,
-0x003916b7,0x0034371e,0x00270355,0xffea238d,0x003337e4,0x002c9090,0xffd23903,0xfffdd600,0x007f9d29,0x00a4ac60,0xffe5da30,0xff8ac5a3,0xff8b008d,0xff394800,0xff5404bd,0x00107c88,0xffb67ac1,0xffc0efae,0xffcc8071,0xffa6ebd4,0xff6c1a3f,0xfef7f69e,0xff10bbb4,0xff49be00,0xffb09eed,
-0x001d3e54,0x0042eafb,0x0017528c,0xffe4b11e,0xffb394a2,0xff9526c5,0xffa09a07,0xffe7c9bf,0x008742bb,0x007cf79c,0x00923ae1,0x00923e88,0x00abcdeb,0x00944035,0xfffbfbad,0x0076d9dc,0x005e22c8,0xffe51911,0x0056ba41,0x004f57b3,0x009667b4,0xffc8c841,0xff7d3b51,0xff6d1af5,0xfed6a8c0,
-0xfefb6dac,0x0014c54c,0xffb3eb28,0xffda1ec5,0x002ca747,0x0018f282,0xff70101e,0xfe8b381c,0xfe67f50a,0xfeb7bf52,0xff673d68,0x002dbfc1,0x006dec36,0x001a8230,0xffca2b51,0xff7e1d9d,0xff64f8e9,0xff9fa954,0x001baae2,0x00e8d8e4,0x0157a26c,0x0179ccd0,0x00e35145,0x00de089d,0x00cea83e,
-0x004984d8,0x011b063c,0x010ab3d0,0xffd2f149,0x0012edcd,0x02cc38e0,0x01afa126,0x0039841f,0xff39f299,0xfe5e08bc,0x00263024,0x007fa0f2,0xff22494d,0x0034b4b3,0xff992243,0xfe06edc8,0xfe0790d0,0xfe87e94e,0xff6d4eed,0x006c3c1e,0x00c48592,0x007795c6,0x009053dd,0x0099b7d4,0x00b07ed7,
-0x00d8aecf,0x00bcec45,0x008500eb,0x00658202,0x0027e768,0x005d3a05,0xfff6d4e9,0x00a4f74a,0x0265ad44,0x01004884,0x002eebba,0xfff8a1ba,0xfeb1d4e8,0xfec3bb2e,0x006e003c,0x025e7934,0xfb89f0e8,0xfde73b30,0xfe935116,0x000854a6,0x010d1a74,0x00e31c16,0x00516fdb,0xff2f3625,0xfeaf36a6,
-0xff3d4ac0,0x0185c4b4,0x00586d74,0xfffcd28e,0x003e6f2c,0x009ab747,0x00bfc1df,0x00565507,0x0011c458,0xffe6c4d2,0x0014546b,0x004226ec,0x005dc0d6,0x00620478,0x0020c8ab,0x00576b86,0x008e8e20,0x0135e9cc,0x012e9272,0x00790beb,0x00657f4f,0x0071cc04,0x00a7283a,0x011d535c,0x015eaaf4,
-0x01728f7c,0xfcb2c3e0,0x035093b0,0x034cb8d0,0x026be538,0x01a71952,0x00c02f84,0x020c1b54,0x016f1e54,0xfec7e24e,0xfeded18a,0xfed8f1ac,0xff84e171,0x000ea4ef,0x00be803d,0x011fa1da,0x00ffbd80,0x008fbbd2,0xffc038f0,0xffcf3954,0xffc3811f,0xffa7d43d,0xffbde674,0xfff0b3af,0x001702d5,
-0x001b477c,0x005bf58c,0x006ca9ac,0x003ecede,0x003a6f8d,0x004022e6,0x00ab9943,0x00ce8c5b,0x00d957b6,0x00ab2af5,0x00697ce1,0x00fa9c4c,0x02920b88,0xfe535faa,0xfeba2c5a,0xff223d65,0xffe526bd,0x0091b091,0x01167120,0x0175288e,0x0140f512,0x01b7e8e8,0x0174718c,0x012342ce,0x007b16ee,
-0x00007019,0x000d2a74,0x0062c7a0,0x0092aa90,0x006f6cda,0x004eac7d,0x001c9727,0x0022414b,0x00187a29,0xfff49b3d,0xffb34da1,0xffab72f3,0xffc64c8b,0xffda866e,0x000eb716,0x003dc951,0x00310885,0x001ccd44,0xfffb9c69,0x00058aa1,0xffd31d6e,0xfff90c25,0xffdca5b1,0xfee11a48,0x0008b18a,
-0x00943faa,0x001a9fce,0xffd06a46,0xffe7ed3a,0xffbaa538,0xffb151ed,0xff90188b,0xffc7b35d,0xffc12bb3,0xffa3c644,0x0004c67c,0x002fbf1d,0x0027a72f,0x0022bbc7,0x002bd9d4,0x0035c317,0x005a31eb,0x0052081d,0x001832af,0x00049750,0x00044f75,0x0035f48f,0xffd8c8e9,0xffa8e2a2,0xff87ecb3,
-0xff60ae3e,0xff5d79c1,0xff84af10,0xffb3cad2,0xffb84b82,0xffbf0644,0xffcbe597,0xffb609a5,0xffa4bd13,0xffe42462,0xff307b7b,0xff78ce7f,0xffb69553,0xffe58355,0x000189d5,0x0004f245,0x00120b51,0x00222f77,0xffd15217,0xffd192a6,0x000268df,0x002882b0,0x00488941,0x00680299,0x00061c17,
-0xffec4254,0xfff96448,0x00173966,0x003190e5,0x0038def9,0x0051071d,0x003ba1f4,0x002608da,0xffab6a28,0xff60d0dc,0xff174e3b,0xff12fa2f,0xfef35f2a,0xfebe7d80,0xfe8c0e22,0xfe4bec24,0xfe17f252,0xfdd86498,0xfde10b10,0xfe168778,0xfeced846,0xff9df151,0xffbe6e53,0xffb83f8e,0xffa3bac6,
-0xff9b28b7,0xff82d2f0,0xff6188ee,0xff4677d8,0xff7474f1,0xff9f1d7d,0xffc7d8d8,0xffc166ac,0xffbdf6c9,0xffc63d82,0xffe01a86,0xfffa34b8,0x000aa36b,0x001b79f6,0x002bb7f9,0x00467889,0x00386dd4,0x00329113,0x003f52b2,0xffb92b26,0xff43123b,0xfeaf1554,0xfea27ce4,0xfe8a3058,0xfe6fbd50,
-0xfe9512fc,0xfeae7ca2,0xfec74f32,0xff189194,0xff696125,0xffaeae2b,0xffa24a88,0xff27ef07,0xff5c2fc4,0xff65add6,0xff6fe167,0xff7b577e,0xff8b033b,0xffa0d92a,0xffa8d94a,0xffb21fcd,0xffafbc09,0xffb0fa1a,0xffb77f26,0xffc1e04a,0xffc619ee,0xffc3229f,0xffbd63d4,0xffba182f,0xffb87776,
-0xffb2c992,0xffb2f616,0xffbbc86b,0xff95c1f1,0xff86cacf,0xff7b0f8c,0xff80771a,0xff72a214,0xff74d3ee,0xff6b926e,0xff6284d2,0xff53d271,0xff48f9a8,0xff284ab9,0xff2fc521,0xff1ffdf6,0xff1c8977,0xff35538c,0xff7cdfa0,0xff7e55fe,0xff7c7938,0xff81c28d,0xff845917,0xff851c5a,0xff853a12,
-0xff89b10d,0xff899ee1,0xff8de65a,0xff92dd2a,0xff9744c6,0xff9aa2c3,0xffa110fd,0xff9ed59e,0xff9f3814,0xff9f4dc1,0xff9ebdfc,0xff9ff85d,0xff9b59a7,0xffa1d4e8,0xffa1fc37,0xffa9939f,0xff88dc1e,0xff8c3083,0xff9049fc,0xff8a038a,0xff84f5a9,0xff829adb,0xff7d32eb,0xff7a339b,0xff7ab8a3,
-0xff7f08fe,0xff7f5bd8,0xff7d0eee,0xff7d7285,0xff7115a1,0xffd75504,0xfff03103,0xffee25b6,0xffd8c04d,0xffcd9361,0xffcc7d2f,0xffc32a29,0xffc8544c,0xffe253ba,0xffd5f5df,0xffd74259,0xffdd0a29,0xffe25e96,0xffdc363e,0xffc0de69,0xffc09207,0xffc20c75,0xffccbc0c,0xffd97ea7,0xffdf4912,
-0xffe398d2,0xffd64504,0xffcfabd7,0xffc6bf31,0xffcce651,0xffd69790,0xfff9d2f4,0xffe5a5ce,0xffe98f0a,0xfff8703b,0xfff8e800,0xfff40314,0xffd90f28,0xffeaeb34,0xffe794e3,0xffcc75bd,0xffed25f9,0xfffbb131,0xfff006bf,0xffc8b700,0xffb2d474,0xffb20bf8,0xff9a97f8,0xff9fd7fe,0xffd5da46,
-0xffc16363,0xffd8944a,0xfff34cef,0x0017a90d,0xfff97068,0xff9c4938,0xff86b049,0xff834920,0xffa5ea1b,0xffccd558,0xffe3c3ed,0xffea477d,0xffcdd804,0xffb586df,0xffa26b03,0xffafa4c3,0xffcece7a,0x0030c6e9,0x0000a98d,0x000b1ee4,0x00381a23,0x0029976d,0x0021f5e1,0xfff0ac01,0x0020531e,
-0x000a8bb3,0xffa84def,0xffe9adec,0x00538e95,0x003d9ef9,0xffc7a1b9,0xff8ab16a,0xff9b2cf6,0xff599d1f,0xff6d5e20,0xffef3bdf,0xffb9f231,0xffdd77b9,0xfff51d84,0x002578cf,0xfff4dc85,0xff536e30,0xff3d6185,0xff406188,0xff888c7e,0xffd0ad9c,0xfffbeadc,0x00063fc2,0xffceb797,0xffa41976,
-0xff88fb6f,0xff94fb8c,0xffc53eb9,0x008222b7,0x0024a4a7,0x00446796,0x0091ce50,0x009f9df7,0x00846295,0xfff38b68,0x004a79fb,0x00321da2,0xffa25bc8,0x003ef031,0x002691dd,0x001ef334,0xffaa6c19,0xff84d276,0xff94b49a,0xff3b10cd,0xff2d3b8c,0xffc402c0,0xff97dde8,0xfff13403,0x005db68b,
-0x00e3a34d,0x0064e814,0xff25bd5e,0xfec8393a,0xfeb8ee44,0xff2b696d,0xffb62b2f,0x000a11d8,0x001d5a05,0xffbe90a2,0xff82ed32,0xff66ff95,0xff74c445,0xffd83b95,0x00e4252e,0x00e94506,0x0105f884,0x00edb8f7,0x01027714,0x00eeb061,0x00627d3a,0x0111911e,0x00b48f5d,0xff4f17e1,0xffda2022,
-0x026ecdd8,0x00feb9c7,0x0003384e,0xff111d23,0xfe5957ba,0xff526588,0xfffcf643,0xffdf7681,0x00667c43,0x00052686,0xfee18b46,0xfe5a59b6,0xfe886c66,0xff0ba156,0xffffeee6,0x006ba9b2,0x0043427a,0x0042bfd0,0x0047ee45,0x00805f9f,0x0079f777,0x005679b7,0x00212ac3,0x006c2981,0x00324105,
-0xfff97e55,0x0009324a,0x009b1f5e,0x019eb6cc,0x008becda,0xffe14a24,0xff57c101,0xfe3fb762,0xfed35e2a,0x00e70a62,0x02677388,0xfc555aa0,0xfddf9e94,0xfe3ed0f4,0xffdd7472,0x0229d114,0x00f08858,0x002953b7,0xffed44c6,0xfed53156,0xff38ac18,0x015b252c,0x00589e52,0xfffa50a3,0x0020f0bd,
-0x00300643,0x002e86e2,0xffd9645c,0xfff893df,0xfffd9a41,0x000cc9e4,0x003a75c3,0x0067fa6d,0x0056486c,0x0018f78a,0x00548047,0x00b21331,0x00f3881d,0x00c38127,0x002ade8a,0x001e3880,0x004858e7,0x00ef09f9,0x01bc9e92,0x014f22fe,0xff57b80a,0xfcedc5a0,0x02aa9c8c,0x0306ab7c,0x019aee56,
-0x004c9ed2,0xff4476b1,0x011b992e,0x01840bd2,0xffebcb3c,0x0004da68,0xff8aece8,0xff19748a,0x003e8790,0x00f56f19,0x01325298,0x0116c6fa,0x00b72625,0xffeab647,0xffd80245,0xffd4d58b,0xffca633d,0xffc25398,0xffe96c23,0x0005970c,0x005f8e12,0x007157a0,0x001e6fab,0x0012c2e7,0x001b5e59,
-0x00242442,0x00b8fe38,0x00f0ca24,0x0126ae2a,0xffeae949,0xff5f2339,0x00464ecc,0x01efcdca,0xfe644cbe,0xfe7d2070,0xfec944e8,0xff7dfb4f,0x00212055,0x0007579d,0x00068286,0xfffbde38,0x0182191a,0x01d3addc,0x011618c8,0x0114bf5a,0x00bec27a,0x00996d12,0x005183ed,0x005b88bc,0x0036f5c7,
-0x000c8a20,0xffd464b2,0xffb0fc1a,0xffe04940,0xffd44f83,0xff858d0f,0xff78fe73,0xff9e7f20,0xffdb06f2,0xffb610c2,0xffcd6aba,0xfff65632,0xffd95df8,0xffdad078,0x00161e6d,0xffffe58a,0x0008687f,0xffe583de,0xfee54d42,0x00c4c504,0x01354170,0x010f8a48,0x00cce62c,0x009d4012,0x00692cdc,
-0x00aa4d3a,0x01236190,0x0079068c,0x0003e226,0xff8ebeeb,0xffbb309a,0xffdf0d73,0xfff7e579,0x001b9bd5,0x0038583b,0x0052b9b6,0x00627a06,0x00561aed,0x001bc6a1,0x001ab965,0x00098e19,0x00120063,0xffc824fc,0xff92ae7e,0xff958297,0xff6dc152,0xff957f53,0xfff80861,0xfff8f29a,0x000797c4,
-0x002c4749,0x004d81f1,0x0068dbe3,0x007c49d5,0x00984596,0xfec461c8,0xff40f219,0xff5ab9c2,0xff8fe02a,0xffa15359,0xffe5e9e2,0xfff72020,0x000120c8,0x000c18e0,0x003300f4,0x0045af7b,0x00647d29,0x00577b26,0x00435a3b,0x00150d6e,0x000c2c3d,0x0051337a,0x00444a98,0x0049a7c2,0x00479aaf,
-0x005a60f1,0x0022b3a9,0xffaed1c7,0xff66093d,0xff4eb956,0xff556b27,0xff518c0a,0xff2a0058,0xfef35de6,0xfebe6234,0xfe985d4a,0xfe97d6a8,0xfe16f980,0xfdf096cc,0xfe08e786,0xfe613ee4,0xffd84a5e,0x0005e7bc,0x0006d705,0x00136111,0x0023f3f0,0x001c0e6d,0x001a5500,0x0013d1ab,0x0019456e,
-0x0017e183,0x0020b919,0x000ec701,0x0000f53a,0xfff39a3f,0x001495fd,0x002d6d26,0x00429a02,0x004270ee,0x004e3135,0x00547cbc,0x0012f8e2,0xffef2151,0xffcf9789,0xff90fc82,0xff388aa1,0xfee92c02,0xfebfb628,0xfebde738,0xfe938f66,0xfeaf5d28,0xfea87b44,0xfeab5dce,0xff033528,0xff53e540,
-0xff933818,0xffb0c93e,0xff83ce60,0xff9c04eb,0xff9a2d50,0xff97e018,0xff963612,0xff96d606,0xff986ddf,0xff98a8bb,0xffa55072,0xffafdfbc,0xffb8948c,0xffc22317,0xffcf5591,0xffd67703,0xffd130fa,0xffca2e63,0xffc6924f,0xffc59213,0xffc1adaa,0xffc65903,0xffa556d2,0xffa53f0c,0xff94720a,
-0xff8a3f84,0xff8dc85f,0xff9153eb,0xff9f9538,0xffa35139,0xffa12b7a,0xffa4dd68,0xffa6d359,0xff9e9636,0xff995e39,0xff89375b,0xff87f30e,0xff9106f9,0xff9caeac,0xffb2a49c,0xffaacd2d,0xffa9a0a9,0xffa6e23b,0xffa4bbd9,0xffa24312,0xff9e1507,0xffa1c9df,0xffa440d6,0xffa7a6b5,0xffab8c52,
-0xffaded06,0xffb3c5e4,0xffb0d9c1,0xffb0c0dd,0xffaffff3,0xffaf80f4,0xffae0782,0xffb23bc1,0xff9cc2e4,0xff90e1e1,0xff7eddb9,0xff957239,0xff811a63,0xff69ef80,0xff6cc54d,0xff6e8ea5,0xff75e7c6,0xff76fbbc,0xff7b3972,0xff816df7,0xff8ee152,0xffa03d62,0xff840491,0xff935fcf,0xff8f0ba1,
-0xffe0f69e,0xfff0fd2b,0xffeb395f,0xffe07ae6,0xffda39b5,0xffda0d2c,0xffd1e1d5,0xffd45928,0xffde60ab,0xffe1a1c1,0xffe783be,0xffef7509,0xfff6801e,0xfff0a2ed,0xffd89432,0xffd09b80,0xffcceb29,0xffd0fd5c,0xffd907c1,0xffdddd30,0xffe6032a,0xffd826ae,0xffd21669,0xffc632bf,0xffd691d2,
-0xffde6726,0xfff9a8ea,0xffe24281,0xffe6e2f2,0x00033bf0,0xfff8bf59,0xfff35079,0xffe52cad,0xffece4bb,0xffee685e,0xffd2abb7,0xffefde81,0xfffbc387,0xffeb98d4,0xffdaa3d3,0xffcc1881,0xffce92a4,0xffb7b8c4,0xffb120a8,0xffc3d830,0xffcc4a1b,0xffeda6c1,0x0011258e,0x00389ae6,0x002495d1,
-0xffd31c86,0xffa9fbb3,0xff942b86,0xffa38558,0xffb69f7a,0xffc9d076,0xffe0163c,0xffc8617e,0xffb56a98,0xff9b797d,0xffbc0835,0xffd813df,0x0023dafc,0xfff63a4d,0x00022d9d,0x0045d0b1,0x0027208b,0x0022284c,0x000ef73a,0x001bdc65,0x0003eee0,0xffbd0fcf,0xfff60abc,0x003639e1,0x0006c80a,
-0xffd90303,0xffb16468,0xffbc5fe2,0xff814237,0xff88fcfe,0xffb94fa2,0xffd321e2,0x000dd707,0x002b42fd,0x006a77be,0x0042b04c,0xffaac582,0xff77662b,0xff56c005,0xff78f312,0xff9dca6a,0xffbf6443,0xffec3e20,0xffb9bb64,0xff97c9e1,0xff741133,0xffa7eda6,0xffcaa98c,0x00751ff5,0x0005e34f,
-0x002ce4cc,0x00b3d611,0x008eee83,0x00742235,0x001768cf,0x0035f84b,0x00273204,0xffae8775,0x003b8c35,0x002ef786,0xfffc1ca2,0xffdbf871,0xffc24d66,0xffd19966,0xff8ae643,0xff4b2f51,0xff6643b0,0xff9ee4ea,0x00184486,0x008a91c2,0x0129057e,0x00e56ec7,0xffbeca3c,0xff32da1c,0xfee530f4,
-0xff0d402a,0xff50acb0,0xff9b1106,0xfff271ce,0xffb67dbd,0xff84e346,0xff602aa8,0xff7b7874,0xffc19e5f,0x00da9412,0x008d484e,0x00a7775d,0x0123964c,0x01294c92,0x00fe7974,0x0092672b,0x00ea3279,0x006c33db,0xff4e2771,0xfff1ebc7,0x01831b26,0x003126ea,0xffcc20ea,0xff287bda,0xfeb9cce0,
-0xfee3d4c2,0xffbd2eaa,0x00a5f15d,0x009963b3,0x0075a6f6,0x0009e909,0xfeb4724c,0xfe8e1ed6,0xff17c33f,0xffbf1874,0x0022ae19,0x0033cc6f,0x00202a5f,0x0009e179,0x001bb1e3,0x0005cc44,0xfffafba9,0xffdbb1df,0x0072258a,0x004bfab6,0xffaff789,0x00580e59,0x00b4538a,0x009abfd3,0x0047b22e,
-0xffc9aeeb,0xff0e0c6e,0xfe75ff8c,0xff54983d,0x01327ce4,0x01ec9b44,0xfd7c9a90,0xfed0e0e4,0xfe967ac6,0x0005ce93,0x02fade1c,0x013cfa0c,0x005805a3,0x00aef73c,0xff26bfb0,0xff456b2d,0x00aaa0a7,0x00828cd2,0x00462380,0xffe263f0,0xffc678b9,0xffaef40d,0xffad1f66,0xffd870f1,0xffe8c3fe,
-0xffff9768,0xfffbce12,0x00206fc0,0x0040fecb,0x00266caa,0x0067497c,0x00af55ab,0x009d82e1,0x004a374e,0xffc87ebd,0xffd237a5,0x00413310,0x014d4728,0x01f5025a,0x00cdb1e1,0xfde314d8,0xfd7e19f8,0x01474482,0x03062160,0x00b4118c,0xfeda762e,0xfdc8a660,0xfe539ed4,0xffd143b0,0x02203988,
-0x00ca6322,0x0002e0c4,0xffaae2e0,0x00438aeb,0x00af0942,0x00e0eff6,0x00d748f7,0x009df2d9,0x003ff534,0xffe6e3ee,0xffd7e62b,0x000c2e63,0x0006fd23,0x000fc5cb,0x000ba82a,0x0072a18a,0x005e202c,0x00030b42,0xffe49764,0xfff58f57,0x000ffc4e,0x00ae460d,0x00c0d629,0x00a00ccf,0xff518f23,
-0xfedf8b84,0xffbd9994,0x007b75fd,0xff04a81e,0xfe641e06,0xfed9d72a,0xff65e96b,0xffa35f34,0xff84b449,0xff7fe627,0x00236bc5,0x00ec7aae,0x017c1ed8,0x0118ddca,0x016e7b22,0x01494506,0x00dcd4cd,0x004725cc,0xfff6f135,0xffdfcae8,0xffad8b01,0xff90c6b3,0xff75ef1d,0xff8e02bd,0xff9629e4,
-0xff7cf0d3,0xff707b56,0xff8f0ea4,0xffd7b102,0xffa04113,0xffa57f11,0xffda1639,0xffcd3cc5,0xfffba136,0x001df804,0x0041aaaf,0x002c44b9,0xffd8ac03,0xff7e9e27,0x00f06035,0x0121d63c,0x01af78c0,0x01d5464a,0x01a8a9ee,0x014e4490,0x0146a3c4,0x01930f00,0x00fee752,0x008ccf75,0xfff88c72,
-0xffba04dd,0xffa157d7,0xffbeae8a,0x00044df0,0x002b1709,0x003f3188,0x004d7f8a,0x004850e5,0x00270611,0x0023b20e,0xfffcbc0f,0xffc9b5a3,0xffb1b33f,0xff927670,0xff90f32a,0xffbc4b61,0x00053559,0x00486af8,0x001d09f1,0x00190b06,0x002a514b,0x00542b30,0x00856d67,0x00a4ab2b,0x00b18761,
-0xfe915152,0xff18822f,0xff12d5d7,0xff3ee67e,0xff693faa,0xffbc9061,0xfff1442d,0x002506ac,0x00396f1f,0x005b871b,0x007d79e9,0x007b116a,0x006ab81e,0x0042dfb5,0x0040cbbb,0x004ef4eb,0x006a91d8,0x005f0451,0x0053e6b3,0x004de85a,0x0020178d,0xffd96b60,0xff6f46e9,0xff61069e,0xff63f533,
-0xff7f4296,0xff755e2a,0xff53ef5d,0xff41c717,0xff1649b7,0xff068a90,0xff1e268d,0xfec39056,0xfe85bf52,0xfe48dadc,0xfe4f2ea2,0xffb2f737,0xffee08bf,0xfff6ada0,0x000ef02d,0x001fe4f7,0x002fcc79,0x004b5e4e,0x006ae943,0x006f5f3a,0x006e0b84,0x0070d8cd,0x005f0882,0x0057076e,0x004fc8dd,
-0x005a29af,0x005ea5b6,0x006578e4,0x005d7327,0x0056edfb,0x005e92e7,0x001586d9,0xffd1df72,0xff8d068a,0xff8dcd7d,0xff721c3e,0xff6b99c7,0xff2f802d,0xff1dfd92,0xfee20d74,0xfee32646,0xfec56cc8,0xfeae60dc,0xfedf28e6,0xff0cf7eb,0xff2cea4a,0xff7790af,0xffbf0539,0xffd5a959,0xffce774a,
-0xffca8e01,0xffc8499b,0xffc3a658,0xffb9811d,0xffaf8bb3,0xffb4204a,0xffbd8930,0xffc914a3,0xffd6c629,0xffe1f96e,0xffe91578,0xffea8039,0xffecbe16,0xfff0211c,0xfff51743,0xfff839e0,0x00011227,0xffdbf4d4,0xffdfdcd9,0xffd0f2a8,0xffc4376e,0xffb753c1,0xffb67e34,0xffbc07a7,0xffbfb274,
-0xffba086c,0xffbdb3cd,0xffbbd792,0xffb8490d,0xffbbdfae,0xffbc7ef1,0xffc103fb,0xffc64560,0xfff31200,0x0006fd94,0xfffc4a4d,0xfff6f3bd,0xfff0018f,0xffeaed78,0xffe7d1d9,0xffe247e9,0xffe89c5e,0xffea6cec,0xffeaaee6,0xffeb2df6,0xffec5394,0xffefbe31,0xfff0b72f,0xfff25b7b,0xfff3631a,
-0xfff524dc,0xfff5c60a,0xfffd0c7b,0xffeae5bf,0xffe24879,0xffcf7b6e,0xffe67b5a,0xffd6f168,0xffbf3758,0xffc05aca,0xffbff8ba,0xffc51153,0xffc3e1e3,0xffc651a6,0xffc67977,0xffd5f5ee,0xffe5dad0,0xffd4f93f,0xffe78bd8,0xfff68b3d,0xffee5f93,0xfff85395,0xfff2ae06,0xffef97a3,0xffeaf724,
-0xffe6f36f,0xffdddc03,0xffdebe9f,0xffe25fd8,0xfff0b39a,0xfff8de51,0xfffd9208,0x000314bb,0xffff1e4d,0xfff508e3,0xffe52c39,0xffde3ecb,0xffdc8005,0xffdfcd54,0xffe242b6,0xffe95f1f,0xffdf07b3,0xffdab8b3,0xffcbceb6,0xffe877bf,0xffed714f,0xfff958b8,0xffebc11a,0xfff0b088,0x000abba3,
-0xfffb1cce,0xfff65a8a,0xfff6c448,0xfff66ef3,0xfffac7ea,0xffe80ce1,0xfff8ceec,0x00113460,0x0001dcc7,0x0001db48,0xfff35c3b,0xffe8e587,0xffc7be42,0xffba0cca,0xffc33d84,0xffe27c8e,0x00037f0b,0x001cbd70,0x003e2916,0x0039dd55,0x001142df,0xffd5080d,0xffb30e4c,0xffae6790,0xffb04350,
-0xffb948c2,0xffce5cc1,0xffbf237b,0xffb79891,0xff9eb12c,0xffd72510,0xffeff17e,0x001099d3,0xfffd73b7,0x00065961,0x00408843,0x001e836c,0x001de287,0x0029b647,0x0020174c,0x00108c78,0xfff107d9,0x0013994a,0x002e7a67,0xffff8a99,0x0004902b,0xffe41a47,0xffd3a275,0xff8c8dcd,0xff8ca9c1,
-0xffa3c7cf,0xfff3a9cd,0x00338284,0x00393ee5,0x00730647,0x005f192b,0x001856c3,0xffbad91f,0xff8542bb,0xff835bf1,0xff86858f,0xff963e05,0xffc44803,0xffa37ce8,0xff92c95c,0xff6a0826,0xffd3be12,0xffec674e,0x004e6fcc,0x001099f7,0x002e5b17,0x00b0ffd0,0x0064962a,0x0056b4d9,0x003f8043,
-0x0034afd1,0x0036a567,0xffea8bdc,0x003f5de6,0x006ac89f,0x00322999,0x00464002,0x002859e0,0x000e7ed1,0xffa5ab6d,0xff4f5b99,0xff4cf0de,0xffca1ded,0x0035f458,0x007876df,0x0107335a,0x011d08d2,0x00828c19,0xffae6ead,0xff30c4e2,0xff1732ed,0xff14a6d9,0xff3964b5,0xff96027e,0xff842cec,
-0xff6e43c1,0xff42536b,0xffa81776,0xffe1cf86,0x00b64dd5,0x00608091,0x007b3fa6,0x014c785e,0x0135364a,0x00fb43db,0x00c7853c,0x00cb4d8f,0x006048e3,0xffb60398,0x0040fb0e,0x00536014,0xff76c8ba,0xff7b2014,0xff1d84ab,0xfeba186e,0xfea2594c,0xff794a5d,0x00cfb9e7,0x00a50860,0x00b1403c,
-0x00dbe2d5,0xff21de5b,0xfea7d698,0xfeff067c,0xffb32ac5,0x0017bd23,0x003503da,0x003db7de,0x001af5a9,0xfff60155,0xffd28548,0xffdde20f,0xfff433d3,0x005f608d,0x004ee0e0,0xff9e6f28,0x00bdacfc,0x00e813bd,0x00024bf8,0x000aba84,0xff94a5a7,0xff0ee6ca,0xff006590,0xffe20af3,0x012ac6ae,
-0x00f069ac,0xfed21290,0xffe40f88,0xff576870,0x0065a039,0x02e4b32c,0x01acc1d6,0x00d9b77c,0x00eb6c21,0xff755234,0xff606300,0x00145b40,0x00e72d10,0x00d48b7f,0xffb2b1ca,0xff9528fa,0xff73adcc,0xffadf874,0xffb891c6,0xffaff0cd,0xffa3ccd6,0xffa098d2,0xffc897bb,0x0034848b,0x0026f7d1,
-0x00630ba8,0x00863a4c,0x0046b464,0xffdef020,0xff77312e,0xffd8b1fb,0x006ec106,0x013ca27e,0x0155f816,0xfffe01b3,0xfdc49e10,0xfe4adbc4,0xfffcf2ea,0x0201c410,0xff64e05a,0xfdf58544,0xfd6c0088,0xfcbd2644,0xfe77050a,0x02b8cf54,0x00f38534,0x005b536b,0x0071da4e,0x003060fb,0x003ffcb5,
-0x007f6dc3,0x00a6a9a1,0x009a7e8f,0x00913de7,0x0029e7b4,0x000f913e,0x0048e6cc,0x003cd462,0x00325e99,0x0024823a,0x00555343,0x002b0b8f,0x0006954b,0xffc7bab0,0xffdc5dab,0x00209aba,0x0069cdb1,0x00371d26,0xffcaf901,0xff694389,0xff3a25ab,0xffbd0092,0xff481bdf,0xffa0c109,0xfedeca5e,
-0xff5b2fbc,0xffbafad5,0xffc11b59,0xfff467fa,0xfff3e47f,0x009a6fcf,0x00715487,0x00ff3263,0x015bbb4e,0x016b80cc,0x014f04a8,0x00ec89e9,0x00567d80,0xffc59226,0xff8e7af4,0xff689427,0xff611254,0xff729995,0xff5dd5ec,0xff6a807f,0xff7d84f2,0xff92d96f,0xffaddc7f,0xffcf5580,0xffc795a4,
-0xffbb4304,0xffc5c342,0xffc87f1a,0x000dc266,0x000e604e,0x002d9f8e,0x0023a744,0x001c26f4,0x000af5dd,0x006c7f89,0x002447b4,0x010da646,0x01888a36,0x0193b972,0x017a4c10,0x01600c94,0x016f2684,0x01346ad8,0x00f4fc46,0x00b679f1,0x003c491f,0xfff0dfa8,0xffce1c84,0x00034499,0x002e51f2,
-0x0047d3d2,0x003e46f0,0x00384cdf,0x003b8288,0x0016869d,0xffda39a9,0xff8f7489,0xff85162a,0xff8e5b9d,0xffa1c489,0x00143ccc,0x005b774d,0x00554dee,0x002bbf0d,0x0020683f,0x002104c7,0x006a174b,0x00965d7c,0x00854e2b,0x0060f270,0xfefadee8,0xff3ab4ef,0xff8b25d1,0xffc24f58,0xffdc132a,
-0x0005e14d,0x001eee21,0x003805e6,0x0050cd3b,0x005bb854,0x0067049d,0x00483d25,0x004a9018,0x0048c200,0x005bd535,0x005bd530,0x004f9ad6,0x004dd167,0x002f61df,0x0014a504,0xffca6d48,0xff8f4a8b,0xff6374a1,0xff8a0eec,0xff93e35a,0xff815a18,0xff7b0038,0xff767d90,0xffa0959d,0xff9a17d7,
-0xffa26828,0xffb75e3c,0xff987c26,0xff581eeb,0xfee94f88,0xfee8e94a,0xff77121c,0xffb45557,0xffb7f011,0xffc4ec0f,0xffceb54d,0xffec8509,0x00158e35,0x00440682,0x005aee8c,0x00697bb2,0x0077e7f6,0x00703d47,0x006b4472,0x0069b376,0x00618ce6,0x005c00e2,0x00566982,0x003e0db4,0x0020b7be,
-0x00144111,0xfff6b7af,0xffcc5889,0xff9b6d16,0xff9db517,0xff99dc2a,0xffa04cd7,0xff7be4ec,0xff63595e,0xff35d7cd,0xff19d886,0xfef11766,0xfec9638a,0xfed4f030,0xfedd2870,0xfedd535a,0xff3585d9,0xffe885e7,0xfff1cf16,0xfff01765,0xfff6bee9,0xfffbee25,0xfffa052d,0xfff0a863,0xffe7d1e3,
-0xffe61fa3,0xffec4593,0xfff6dcc9,0x00023c83,0x000d0eed,0x00166a7d,0x001ac2b8,0x001f7824,0x0025f54f,0x002ad272,0x00321a8a,0x003924a3,0x0020b74e,0x000fc6aa,0x00007117,0xfff13423,0xffda03ff,0xffc7753d,0xffc2ddd8,0xffc1dbaf,0xffbdefe2,0xffbbd197,0xffb61040,0xffb26f71,0xffc1beaf,
-0xffd2cc60,0xffdc1e06,0xffde6718,0xfff68bca,0xfff7632d,0xfff53da9,0xfff12f12,0xffed1bb0,0xffec26ea,0xffee14a5,0xffef150c,0xfff435cb,0xfff514b1,0xfff3b1db,0xfff39ab1,0xfff403a4,0xfff5bbe3,0xfff78d5c,0xfff96cd9,0xfffaae87,0xfffdd25b,0xffffa51e,0x00051100,0x0001202d,0x00005e38,
-0xfffde10e,0xfff12e46,0xfff03a6d,0xffebc19b,0xffe9e55f,0xffe56c46,0xffe347cc,0xffdf8a0b,0xffdeb412,0xffd8b519,0xffdc1111,0xffdc807b,0xfff13f92,0xfff3266d,0xffec03a4,0xfffa13b3,0x000130a2,0xfffabb91,0xfffe2cfc,0xfffa4579,0xfff41d1f,0xffe763c6,0xffe6e7d1,0xffeb1c76,0xfffd70c9,
-0x000566f0,0x0002ca92,0x0009a165,0x00098c95,0x000ff2e8,0xfffa26e9,0xfff0eccc,0xffe85747,0xffe9bcc4,0xffe9a96a,0xffed2999,0xffe97371,0xffe940d3,0xffdc97c4,0xfffcb0cb,0xfffe2465,0xfff9db22,0xfff92080,0xfffb5797,0x00047a79,0xfff9d024,0xfff811b7,0x00051a7c,0xfffd323a,0x00023270,
-0xfffec775,0x00033c65,0x0026840a,0x0016ff7a,0x00291130,0x001bc82e,0x0005abd9,0xffd4c26b,0xffc43df2,0xffd15199,0xfff771f1,0x000ff8c7,0x001476c4,0x003749ab,0x0044cfc6,0x004b59ca,0x000555d8,0xffdb8c4d,0xffbee880,0xffb7e3c0,0xffb74525,0xffc48cc1,0xffbfbadf,0xffc54888,0xffb9381c,
-0xfff8ebf2,0x000c8a75,0x00025d5f,0x00099325,0x00096479,0x001e896d,0x000ab234,0x000f7f04,0x0034799c,0x001b6f8a,0x001644af,0x001a059e,0x0026c05c,0x003054c5,0x0001927c,0x002a8323,0x00122c49,0xfff2f8fa,0xff9a1c99,0xff938cde,0xffab4034,0x0010c892,0x00468f78,0x0027c132,0x006241f0,
-0x0065ff14,0x00826202,0x000405c0,0xffc348f4,0xff9713af,0xff8ed423,0xff8ca3b9,0xffa99179,0xffa0bb39,0xffa90914,0xff8fd744,0x000e8a75,0x00183c61,0x00271c1b,0x00279871,0x0029d212,0x006377e9,0x001f3c5c,0x002265f4,0x004d9a0c,0x00230af9,0x0036d721,0x00277768,0x00402f23,0x0093242b,
-0x005bfea3,0x00a9fd03,0x0093a78d,0x0057f215,0xffbfc86d,0xff6840af,0xff685d2b,0xfff8a329,0x003fbb6a,0x003aae04,0x00c645b3,0x012a1f64,0x013900f0,0x003a5f1e,0xff971bf0,0xff33f514,0xff104cdb,0xff115ce4,0xff53a1c5,0xff6360c7,0xff6cb4bc,0xff4c0fe3,0xfff15ded,0x0024d3f3,0x0088094e,
-0x0059f2b3,0x006ca3b3,0x0126b2ea,0x0109add6,0x00dafe85,0x00e8d13c,0x009bcc58,0x00584971,0x00278291,0x007bd579,0xff9097ce,0xff1bf197,0xff1a929c,0xfee43a42,0xfe978b60,0xfe9abc14,0xff4e17fd,0x00c3f8da,0x00a07585,0x00c56db2,0x014e08f4,0xff95c81d,0xfed55012,0xfee5d5d2,0xff98e525,
-0x00136bf4,0x004e1949,0x0079ab77,0x0061525d,0x000c0fab,0xfff40c40,0x0014305f,0x004ec66f,0x004394be,0x0038c91a,0xffa8cb6a,0x00fa305c,0x010a67b0,0xffdf6398,0xffce55f8,0xff48a4ad,0xff0e5d29,0xff8d05dc,0x004e7ce6,0x00e2095c,0x002c1cf4,0xffb7f662,0x00951a50,0x00741612,0x00e3a27b,
-0x01f03266,0x01d03fa2,0x01591b8c,0x00c92c22,0xffb78783,0xff7e5003,0xffd20a10,0x011d58f0,0x014784ea,0xfff5958f,0xffa5058f,0xff6ab2d4,0xffa99064,0xffb19237,0xffa3f54f,0xff67fe3a,0xff8d8fd1,0xffa9912c,0x000e7b1b,0x000fa64a,0x004073ab,0x005d0607,0xfff9b71a,0xff8ee61b,0xff5f751d,
-0x0021220f,0x00a6740b,0x00cd0d1b,0x00671938,0xff311ffa,0xfdfd44d4,0xfecf0ae0,0xff4fed56,0xff559dcc,0xfdc253ac,0xfd8bcbfc,0xfe2bff44,0xfd219788,0xfdf7f070,0x009d52fa,0x010ff5d0,0x0129f81c,0x00b7119c,0x003ab381,0xfffdf716,0x00294909,0x00841a35,0x00a5c91d,0x00a99cc0,0x0076fd06,
-0x00438ee9,0x0027dfdc,0x0032e31e,0x002990c2,0x0031b3d1,0x001f97f7,0xfff2921f,0xfff9d3a1,0xffc90f3a,0xffe7902f,0x003871b9,0x000a14cf,0xffb10796,0xff41effc,0xffc7fd61,0xffd92aa2,0xffcd01e7,0xff43186e,0x0032c9c5,0x001ebb2a,0x006e562d,0x007d333e,0x006ca3d4,0x0084936c,0x006c36f1,
-0x006a9c4f,0x00115e50,0x006c4760,0x01244032,0x01201a8c,0x0113ab40,0x00e20801,0x0056b189,0xffd84759,0xff7b2698,0xff61e5ff,0xff5a5c51,0xff6fe1b1,0xff5c02f8,0xff5e8f90,0xff7beeb7,0xffbc8d17,0xffdfc5f0,0xffd25e1a,0xfff665f5,0xffe1e92d,0xffbbfd2d,0xffd0d1c6,0x000c54a9,0x000e4a0d,
-0x0006c715,0x002380b9,0x008ec85e,0x005894ee,0xffb584c8,0xff2aafe6,0xff964412,0x00038fdf,0x0061040e,0x010c62b0,0x0155bc06,0x01524688,0x0156e2d4,0x013f07a2,0x014dfe96,0x00d9a208,0x008835c1,0x003dfadc,0x003d6041,0x00410759,0x0032e584,0x00375984,0x00267ba0,0x001e0e2c,0xffe7170a,
-0xffa4d1ba,0xff71b8ef,0xff681359,0xff944d45,0xffd689a1,0x00347b8b,0x00636b6f,0x0043e4bd,0x004a8e38,0x0049283a,0x003faa88,0x007bf6b2,0x007de74b,0x0033280f,0xfffafcd6,0xffc27736,0xffe6386d,0x006b47d7,0x00a34bcb,0x00b598f0,0x007f3b0f,0x00565221,0x0048f093,0x003bbae7,0x002d793b,
-0x002526e4,0x000ad313,0x001797fd,0x0030c012,0x004af2c4,0x00479948,0x00242b6c,0x0020e452,0xfff546f4,0xffc08584,0xff8a0025,0xff71bf75,0xff8c9a6d,0xff9b5dd9,0xff9b8f48,0xff825f38,0xff8f64ae,0xffaf9be1,0xfffbb5a1,0x001dcb51,0x003b6ebe,0x004901d1,0x0058e7fd,0x0040749f,0xfffac78b,
-0xffe408e5,0xff42a434,0xff6935b5,0xff7a4978,0xff8fb43f,0xffb282ee,0xffd3fab7,0xfff86766,0x0016d17b,0x0029a7dd,0x003812a4,0x0040c959,0x003d9862,0x0037f7e2,0x00342efe,0x002ef1f4,0x00343df1,0x003e80c6,0x00162311,0xffec0498,0xffcfb351,0xffd30854,0xffbeed55,0xffa89834,0xffa25b7b,
-0xffa1cb41,0xff995e48,0xff900abe,0xff7d3c17,0xff673b4d,0xff418633,0xff1f9b90,0xfefab69c,0xfeec644c,0xfed4b32a,0xfec1307a,0xff0b3d56,0xffe84e97,0xffed90bf,0xfff96f01,0x0008d5cd,0x0011891e,0x0015aa3a,0x0018ab9b,0x00210079,0x00204c8d,0x00233e5a,0x0028d1f1,0x002bb3a0,0x002f4afd,
-0x003218fc,0x002d91e3,0x0024e1d4,0x001f9a85,0x001aeaae,0x001a6b31,0x0016cf1f,0x00182573,0xfffd668c,0xffefccf0,0xffdfc79c,0xffccfb4e,0xffb4572d,0xffab2182,0xffa5107a,0xffa31ea4,0xff9bbb02,0xff93f768,0xff907115,0xffa78540,0xffc35cdf,0xffd0f5b3,0xffd55fa1,0xffc68a57,0xffc09a27,
-0xffc6a387,0xffc988ad,0xffcf0acf,0xffd7b0a5,0xffe0bc1b,0xffea797a,0xffe7b53e,0xffe5bda9,0xffe30f95,0xffe24b0f,0xffe1ebf7,0xffe2d46d,0xffe1041d,0xffe0ead6,0xffdfa410,0xffe0ec77,0xffe184a6,0xffe03755,0xffe24a60,0xffe11bb7,0xffe53ddb,0xffcbfa73,0xffcda761,0xffd05251,0xffcd327e,
-0xffc6d9f5,0xffc01ab2,0xffbbd1bc,0xffb8cff5,0xffaecdce,0xffaec3de,0xffabb74e,0xffc79897,0xffc50bf5,0xffbb8918,0x00027a78,0x0004cf53,0xffff93ac,0x00084a6d,0x00068866,0x00022a1b,0xfff41c4b,0xfff22979,0xfff2ec38,0x000864cd,0x000e5629,0x0002a9da,0x000cf729,0x00107afb,0x0022d5fc,
-0x000c1a6a,0x00022f15,0xfff4416f,0xfff46ddb,0xfff23c14,0xfff24045,0xfff29bd3,0xfff5de53,0xfff16449,0x000bad43,0x0009723a,0xfffb7677,0x00019af3,0xfffe914b,0xfff364a2,0xfff22a8f,0xfff39629,0x000886d5,0xfffc6381,0x00033512,0x000ce493,0x00079eb4,0x00281534,0x001c4872,0x003c287f,
-0x0036be03,0x0022a60d,0xffef8e00,0xffddcf2d,0xffdf7c68,0x000c615e,0x0019a5a0,0x00040243,0x002b85da,0x0047648f,0x0072f76f,0x003393e3,0x0008929f,0xffd7ee41,0xffc957be,0xffbec9fe,0xffc1c5a1,0xffc38a46,0xffd73c99,0xffe45b93,0x0015d9c1,0x0021e79c,0xffff0560,0x00119809,0x00054b32,
-0xffef4a9a,0xffece969,0xfff6f6a2,0x002b80b2,0x0007cdf4,0x000b8527,0x002f1b63,0x0025f3af,0x0022dae5,0xfffeca82,0x003a1495,0x003362fb,0x001dc9ba,0xffca5e33,0xffbd433f,0xffb89ac4,0x0030abda,0x00521b06,0x000eb302,0x004e345f,0x006125c5,0x00c51baf,0x0047900d,0x0007a35f,0xffb86680,
-0xffac0693,0xff9b2e01,0xffa468bc,0xffac2693,0xffcb1e71,0xffdb18db,0x003ed647,0x003c5cd3,0x001175c9,0x0034a79b,0x00142892,0xffed9e2c,0xffcfbd8d,0xffde3c77,0x0038476f,0xfffb0c29,0x001e2076,0x00530350,0x003139a2,0x00838148,0x005ad7ef,0x00ce6590,0x00d164ec,0x009e73f2,0x000b1dc8,
-0xffb7d747,0xff8736fd,0x0029431b,0x00493764,0xfff63cbc,0x008433cf,0x0112dbc0,0x01a59220,0x00c40f9f,0x0014db15,0xff70b588,0xff3467fa,0xff12761e,0xff2c78d3,0xff524a12,0xff89b7dd,0xff9d947f,0x00438cfd,0x006852f8,0x0065c29c,0x006e699b,0x0062c785,0x00984485,0x00a3b556,0x008e67d3,
-0x00c7cb30,0x004e805f,0x00326d49,0x007ac11b,0x007f3a2c,0xff2e932b,0xff1760a3,0xfee0f7d4,0xfeca7898,0xfec0f1fc,0xfed26ac4,0xff5a6b44,0x00c81118,0x009fa4a5,0x00d9d980,0x01853fa2,0x0005d379,0xff1093d6,0xfeda8f9a,0xff4b9800,0xffe49c67,0x006b1e44,0x00bfb3a7,0x00da7854,0x008da374,
-0x00612f26,0x0073f242,0x00963361,0x001da687,0x00102e99,0xffd38370,0x00dd1f91,0x00eef683,0xfff46cfd,0xffbe624c,0xff3445b4,0xff1dd653,0xffe81de2,0x00719b6e,0x00964286,0xffacb588,0x006b652f,0x00e5f35c,0x01219dbe,0x00e66516,0x00afddf0,0x01a562ca,0x01a44b40,0x00b3256b,0xfff5b7f0,
-0xff84e0e7,0xff8d1f8e,0x00dfeec5,0x015a859c,0x00a15753,0xffe894e2,0xff891419,0xffa87c7b,0xffb44df0,0xffbeb5a0,0xff7974d5,0xffc90a98,0xffcc0163,0xffd835e5,0xffe60a91,0x000ba4ea,0x003dcdbc,0xffbc7525,0xff65eb0f,0xff7e68be,0x0047953a,0x009f7ea1,0x0050ae0b,0xff942702,0xfea6188c,
-0xfe369b04,0xff5eb727,0xff0471bc,0xfc8c0a28,0xfceb3624,0xfdda4e90,0xfebe4666,0xfe569c7e,0xfe533954,0xfe74b9ae,0x014feda8,0x01ea1e7a,0x005bff2c,0x002d5dc5,0xffde412b,0xffeed917,0x0042c9de,0x007d53bc,0x007f5724,0x007f62df,0x00483458,0xffdc174d,0xffffe971,0x001340d7,0x003e99cf,
-0xfffe2add,0xffce3d8e,0xffd3345e,0xffe76ff9,0x001482f5,0x002ec7f7,0xffcff968,0xff7c1224,0xff2a63ee,0x002dd1f7,0x006743b0,0xff88f77d,0xffccf578,0x00f97b64,0x01a8538a,0x018b05e0,0x0107962a,0x00aca8d1,0x0072daf1,0x004f22a8,0xfff6eb98,0xffa828c5,0xffbb3e30,0x0072cef3,0x00b539f5,
-0x00d31193,0x00de53b9,0x00681dc7,0x000decd1,0xff9b3605,0xff81de04,0xff6f5624,0xff68e29b,0xff682228,0xff667485,0xff89ba04,0xffd5f1c4,0xfffff015,0xffeab470,0xffff435d,0xffed8cb0,0xffc5561c,0xffef6047,0x000d6917,0x001c2852,0xfff61ba0,0x0023361d,0x00bb3253,0x009f0ee7,0xff496fe2,
-0xfebe09b2,0xfe952b78,0xfedd8718,0xff710e7d,0x008c0227,0x0115408e,0x01057a1a,0x0140b6fe,0x014c04c0,0x01727782,0x012499ee,0x00ec376e,0x00b74690,0x0075adc3,0x004cf711,0x002032fc,0x001b8e89,0xfff27b41,0xffc61b3d,0xff9bb364,0xff6e96c9,0xff64d21c,0xff642a40,0xffa1d510,0x00109259,
-0x0024d864,0x00375b4f,0x00303633,0x005b1070,0x005f3e28,0x0058041f,0x0058785b,0x0044b033,0x0017c81a,0xffcb0fee,0x0090f17e,0x00aa75bd,0x0110326c,0x012763d8,0x011d98b2,0x00bdf436,0x0078d5af,0x004f5eb2,0x002fa537,0x000eba7f,0xfff0dfbb,0xffe4e0a5,0xffe88515,0xfffc74a3,0x00209cb1,
-0x0021fd8d,0x000387bd,0xfff5fb70,0xffcf6107,0xff996f16,0xff8bf8b5,0xff8a0aa4,0xffac526d,0xff9a30ed,0xff8ef268,0xff84236d,0xffb8124c,0xfff9c6f1,0x00490f65,0x007ebd92,0x00a5e58a,0x00b06907,0x00d0dc6e,0x00d84c9f,0x00bd616d,0x00aaf1c2,0xff3dc033,0xff4d8a9f,0xff756b56,0xffa35360,
-0xffea3922,0xfffc0792,0x0004ec0b,0x000095c1,0xfff56b30,0xfff1e028,0xffe8a009,0xfff2ab68,0xfff9bf75,0x00012eef,0xfff8b2d9,0xfffa4da1,0x0003b80b,0xffdbdc3c,0xffb725dc,0xff964bcf,0xff9a38c6,0xff8fc566,0xff86b15d,0xff8662d1,0xff8b6b26,0xff7c4ced,0xff8676f1,0xff7f7087,0xff794759,
-0xff665b7d,0xff5627e5,0xff487872,0xff2fb5e3,0xff0bf7ee,0xfef2ee9a,0xff1f1519,0xffbcabc7,0xffbd7207,0xffd4a0e8,0xffe41203,0xffecef7b,0xfff8ae43,0x000e76da,0x002c54a5,0x00308c7c,0x00333143,0x00339163,0x002ff579,0x002aa6cb,0x0028a587,0x0018b7cb,0x00071a4e,0xfff77b43,0xffeb5b3d,
-0xffe2bdd1,0xffd7cf7a,0xffe0ca2a,0xffcb3c7c,0xffbf85fc,0xffb1a75f,0xffa5259d,0xff9243bd,0xff873591,0xff7e8d48,0xff7b063d,0xff6fef3b,0xff6511e4,0xff5eda38,0xff7475ad,0xff8f623f,0xff9d30ef,0xffa51c1d,0xff999af8,0xff9280cc,0xff9d6e89,0xffa6f5c0,0xffb3c421,0xffc297f4,0xffcd26c1,
-0xffd95b02,0xffd1f609,0xffcff514,0xffcf0d24,0xffcedb01,0xffcf37b3,0xffd0c2e7,0xffcb6609,0xffc86dc4,0xffc4340d,0xffc18bc6,0xffbe6c61,0xffb79d7c,0xffba4ba9,0xffb79a01,0xffbb69ed,0xffa70fca,0xffa6a911,0xffa87972,0xffa41a32,0xff9d7e58,0xff95d473,0xff9144c5,0xff8dcecd,0xff8264f9,
-0xff852f8a,0xff8468f6,0xff9a6f16,0xff98264e,0xff985cd4,0x000f0f12,0x000970e5,0x000853c9,0x0013c6b9,0x00156553,0x00169b9a,0x0007916e,0x00041f5f,0xfffecf4c,0x00187b42,0x001d506b,0x000afc99,0x00190233,0x001dc035,0x003031d8,0x001f91c8,0x001721a3,0x0008e54c,0x00056e30,0x00010793,
-0xfffe4993,0xffffefa6,0x0004bd9b,0x0009f95e,0x0018ec4b,0x00139194,0x0001ba9b,0x00087626,0x0001113f,0xffeaa443,0xffeddcdc,0xfff1b1d3,0x000ca5d5,0xfffe8f61,0x000710b7,0x001b9bba,0x000c34ef,0x001a99d7,0x001ca4c5,0x004182b6,0x00488faf,0x0045902c,0x0015fdb1,0x00046055,0xfff4d71c,
-0x0029a0c7,0x002e85b3,0x0003f516,0x002e1927,0x004e2c56,0x008255e7,0x005c8cfd,0x003970ab,0x00050b4a,0xffeb12a0,0xffd65d54,0xffcf545e,0xffd13940,0xffefae00,0x0016b2ea,0x002d14d7,0x002e7656,0x0004524d,0x0012e1c6,0xfffd8e55,0xffd1d729,0xffcfde03,0xffdcdc48,0x001f5cfa,0xfff27a98,
-0xfffe66e9,0x0042c980,0x001ae305,0x0006afba,0xfffc5549,0x003f83e9,0x004e84c7,0x0054eb98,0x000af61c,0xfff713ea,0xffcd62c6,0x00577050,0x006e5cf9,0x0012745c,0x0057bfb6,0x006c08c3,0x00d5518a,0x0082e0c2,0x004f6370,0xfff71124,0xffdc7c4f,0xffc02d4e,0xffb2c3ae,0xffc25290,0xfff015b4,
-0x002d0851,0x0056bbaf,0x004c6da9,0x0005c90c,0x0028d7fe,0xffef67b4,0xff92b66e,0xff894e21,0xff9de68d,0x001e85b4,0xffd17df1,0xfffc3f99,0x0074747c,0x0015ac97,0x00429e41,0x004354d9,0x00c27652,0x00e81eb7,0x00e80a13,0x0068e6de,0x001d9ae4,0xffbaf372,0x0065d5d9,0x0069a824,0xffe31493,
-0x0064c9fe,0x00f3fc18,0x01ab5d8a,0x0132c95c,0x009e4c0f,0xffe498f1,0xff88513e,0xff447acb,0xff2bc60e,0xff560d3e,0xffbe0dc0,0x0025700d,0x00860efd,0x008ba036,0x004de1d1,0x0075658d,0x00481fd1,0xffe677bd,0x00127b9c,0x0014792a,0x0077a678,0xffe9e884,0xfff67dfe,0x00bd9762,0x0053d0eb,
-0xfefdce2a,0xff3bcaac,0xfed847d2,0xfee724e6,0xff256952,0xff267e59,0xff77f666,0x008aca78,0x009f9baa,0x01092a28,0x01abf2b6,0x00963a2d,0xff8418d3,0xfefa086c,0xff074749,0xff9bfe51,0x006a0e84,0x00dc4669,0x012e06d8,0x01276cee,0x00e24e61,0x00b440a8,0x00901415,0xffe899ea,0xffe212e1,
-0x001daa1d,0x007ece2f,0x009171d8,0x0002b4af,0xffdc4536,0xff75e709,0xff71a3e8,0x001f02ec,0x00648a11,0x004a94ec,0xff55e198,0x01232b78,0x0110ad0c,0x01096126,0x00573ee9,0xffadc2b5,0x0168b62c,0x01d29c0e,0x00d220e3,0x00373544,0xff7ae867,0xff0a3521,0x0031b8c8,0x00fdf855,0x01493a88,
-0x00452dba,0xffc8b533,0xffd4025c,0xffc35613,0xffe4d1dd,0xffd621bd,0x001e111e,0x000b48f9,0xffbcb4cd,0xffd16ac4,0xffdd2fac,0x001f1bc8,0xff9f2d83,0xff747de4,0xffb1ee82,0x0030d3af,0x005bd30d,0xffee5b13,0xff1ce1ee,0xfe81c318,0xfe935430,0x003555e4,0xfe1fc1ee,0xfb1ac838,0xfd7ac3bc,
-0xfefabdec,0xff309ada,0xfeeda6f2,0xfe946614,0xfddcddb4,0x01129dbc,0x01d931a8,0x0026f9f0,0x0011fc0c,0xffbbfc5d,0xffc2dc97,0xfff3c3a2,0x00350c6c,0x004653e9,0x005509d8,0x0039479e,0xffe368da,0xfffe42ae,0x0017f0c3,0x003d8a6f,0xffef5701,0xffc57272,0xffb3654c,0x00075c93,0x0037db95,
-0x001c8bcc,0xffbad58a,0xff8ae267,0xff82c005,0x006445f6,0x0086efd5,0xff32bdb6,0xff723a76,0x01e1b412,0x02c21144,0x01fb8d02,0x00e83f31,0x005486ab,0xffff7469,0xfff3e3ea,0xffbc391b,0xff871dde,0xff642947,0xffa40b35,0x004639f0,0x009c5b8d,0x00c464b9,0x007df937,0x003b4335,0xffea9bc9,
-0xffb842a9,0xff97b1d0,0xff7e5687,0xff7ee669,0xff8e62ef,0xffbd0d86,0xffeef978,0x000cd88c,0x000da597,0xfff4b3c7,0xffe4fe16,0xffde5e65,0x000e919d,0x001437e5,0x0025f72f,0x001cef5a,0x0038b7d9,0x008c7fae,0x010c7bae,0xff285a0c,0xfee83eca,0xfe83d652,0xfeb8c7f0,0xff46bc2b,0x0014499b,
-0x008cdca0,0x00a53777,0x00fe9be8,0x012ae1b0,0x014034a4,0x011eb154,0x00fd1ec8,0x00ee423a,0x008aec70,0x004586f4,0x000b0fc8,0xffe70c98,0xffae51bc,0xff72e187,0xff64bd43,0xff55c819,0xff52f909,0xff789587,0xffb17721,0x0017e48c,0x00021a19,0x00044a36,0x001721c9,0x003e050e,0x004a3746,
-0x005a1ecd,0x0017e379,0x00037ae0,0x00052ba6,0xffaeb0b3,0x00fabcfc,0x00f6e6f8,0x011cd8c4,0x0113a496,0x0101affc,0x00c7f5ec,0x00a3696b,0x00861788,0x0057fdd4,0x00289ac0,0x0009a2af,0xfff77cd5,0xffe5d191,0xffde694c,0xfffab5a9,0xffff3c2a,0xffe55408,0xffdb6115,0xffcc8f1a,0xffafbc72,
-0xffb431a0,0xffb5e6fc,0xffba9cc0,0xff9d6863,0xff952afe,0xffa321de,0xfff643a3,0x004262e3,0x007e6197,0x00a8bbdc,0x00be4f38,0x00ba43f6,0x00d25f3d,0x00e7dea6,0x00ec7307,0x00f5c269,0xff6aa310,0xff6f3972,0xff9a233e,0xffc8d579,0x0007ef30,0x000ae67a,0x00013314,0xfff26d5f,0xffde9e5a,
-0xffda5a45,0xffd5c069,0xffde4d7f,0xffe692c8,0xffee28ae,0xffde2620,0xffd2f8b0,0xffce349a,0xffb856be,0xffa4b22a,0xff9037c4,0xff84b8c4,0xff786cc8,0xff6e9d75,0xff74b1bd,0xff78ac8c,0xff714188,0xff816e2f,0xff92ccf5,0xff9904d0,0xffa72473,0xffacc24e,0xffbcca4a,0xff9be8ca,0xff7172b5,
-0xff4f9168,0xff64e6ed,0xff7e13cc,0xff7ee272,0xff94ec2c,0xffa0bf56,0xffaadba6,0xffbc9a42,0xffd99858,0xfff94dff,0xfffcaaa7,0xfffc0676,0xfff866d6,0xfff51992,0xfff05c7c,0xfff0ee04,0xffe09eaa,0xffd25b04,0xffc365af,0xffb8af5b,0xffaf2763,0xffa5e719,0xffab9083,0xffa16832,0xff9939cd,
-0xff905878,0xff88a5b7,0xff80479a,0xff752c49,0xff692cbb,0xff5dffea,0xff50f2d2,0xff422424,0xff36c367,0xff45b675,0xff58eda9,0xff64240a,0xff6ea1ac,0xff85a8d0,0xff81be12,0xff8cc7f4,0xff9781cc,0xffa33d47,0xffae6925,0xffb49650,0xffbda085,0xffb96ba7,0xffbadd69,0xffbcf447,0xffbe2f84,
-0xffbeea40,0xffc08674,0xffba7a85,0xffb69521,0xffb1e0fd,0xffacde70,0xffa79ceb,0xff9f7999,0xffa0ab11,0xff9e1e21,0xff9ea41a,0xff98a026,0xff96c0c8,0xff94fb00,0xff8ed749,0xff88b656,0xff834522,0xff7df709,0xff7a8516,0xff6f8a33,0xff784e89,0xff7b7714,0xff827381,0xff831677,0xff96a1f7,
-0x0019e2ad,0x000f5cfd,0x00119713,0x001d9b98,0x0022064d,0x0027e3dc,0x0018db1e,0x0014492c,0x000c04da,0x0022e800,0x0027424d,0x0017c805,0x0023f92c,0x00282687,0x00355850,0x002d9e77,0x00282a4c,0x001e8058,0x0014f91f,0x000ea6be,0x0009bebe,0x000c944a,0x00115416,0x001dc60c,0x00202d13,
-0x001a16d5,0x000955be,0x000c821b,0x0003f185,0xffef7c8a,0xffefd06b,0xfff4fb62,0x001303c5,0x000493c5,0x000bff14,0x0027d27d,0x001106b1,0x000df6cd,0x001d2b07,0x00403429,0x005044f0,0x005cfd0e,0x0034c7a5,0x002523d2,0x000dd786,0x003a43bc,0x0039f12e,0x0010708c,0x002f40ee,0x004c3476,
-0x0079aa47,0x00748fed,0x006043d3,0x0037ac15,0x0010150f,0xfff36d74,0xffe66dcd,0xffe8ee37,0x0007c15f,0x00379211,0x003a1bdd,0x00325bac,0x0008687f,0x000a9aca,0xfff1c542,0xffcc7ef2,0xffbde070,0xffcaa09f,0x0013a916,0xffe55693,0xfff703f0,0x004b985a,0x00108882,0xfff1d31f,0x0000115c,
-0x0045f9e9,0x0064fd85,0x00801c00,0x0040dc42,0x0026c1b0,0xffeecf75,0x006134e7,0x00751d17,0x00303b7b,0x0061f7dc,0x0072d8f3,0x00c113cd,0x00a6f5cd,0x0086fdf5,0x0042aac0,0x000bf94a,0xffe5c0a0,0xffcb84df,0xffdc3c63,0x000aba31,0x0057e663,0x0053d0fb,0x0046fb86,0xfff8df48,0x0005594d,
-0xffc4fcf4,0xff73b7e9,0xff5caf08,0xff74b1e0,0x000c80be,0xffbb3595,0xffe34213,0x007bedc8,0xfffc9253,0x0001aa61,0x003061f4,0x00a599db,0x00e4963f,0x0112ba36,0x00ace2b6,0x00723974,0x00058c43,0x007d82e2,0x007109be,0xfffd193b,0x0042fd31,0x00b9ae2a,0x01644c1c,0x0167f29a,0x010dd6d6,
-0x00788978,0xfff17400,0xff9204a2,0xff5c4665,0xff80ff01,0xfff54980,0x009121a6,0x00a6f18f,0x008def5e,0x0041bfb0,0x00523280,0x000f5448,0xff6c7336,0xff85acb9,0xff985dbc,0x0022813f,0xff8ec71b,0xffbd297d,0x00d2d563,0x00197d25,0xff039ac1,0xff6e082a,0xff138a18,0xff3a4420,0xff81c857,
-0xff5ee138,0xff70e58f,0xfff85355,0x0081f463,0x012bf378,0x01a79f2a,0x0167ffa4,0x006a07eb,0xff4bf586,0xff144212,0xff61c557,0x001c7470,0x0098815b,0x00fef4ae,0x0134ab3e,0x00fe7c81,0x009b2187,0x003662cf,0xff9de359,0xffae3148,0x005b1d1e,0x0020161d,0x001b08da,0xffef8dc1,0xfff2476d,
-0xffd25db4,0xfffe771d,0x005e1ce5,0x005d29a1,0x0005a934,0xff39d23f,0x01a8ffec,0x00fff146,0x007961c4,0xffa8b0f9,0xfee09900,0x00e8953c,0x0190acec,0x00e83bb7,0x00651b75,0xff70bea3,0xfe8322ae,0xff7460a3,0x00613122,0x01553b52,0x009d000c,0x00298444,0x001aaf16,0xffdd8f80,0xfffc1da4,
-0x00406270,0x005bb8ef,0x004203a4,0xffd24709,0xffeb22fd,0xffce6524,0xfff22eb4,0xff9f5ffb,0xffa81a8b,0xffd7e9a5,0x000bd0b8,0x0008a3d0,0xff97c18c,0xfec884e2,0xfe88f932,0xff24ec10,0x00f74d37,0xfccb34cc,0xfb497920,0xfed6fbfa,0x00576957,0xff83216d,0xff8d61da,0xff25ecc2,0xfe6656e4,
-0x0024e65f,0x00f66788,0x0089629e,0x0009422a,0xff971604,0xff9a3db2,0xff9eb71e,0xffd7bcc3,0x00051e1c,0x00283b21,0x003af7ae,0x00292352,0x002b7600,0x002b4bef,0x001bb370,0xffdc3d6c,0xffc8f1ae,0xffa6c3a1,0x0013fd38,0x00355605,0x000ccf77,0xffc5b615,0xffbd8323,0x00074c4a,0x00220867,
-0x001b38fc,0xff6ae3b4,0xfe25471c,0x026a0234,0x028e3258,0x01584aee,0x005c108a,0x00012a2e,0xffa2cb87,0xffa11ab1,0xffb22d3e,0xff91786e,0xff5ab802,0xff4ac2e6,0xfff169ae,0x00602ee5,0x0088c6ef,0x007ad455,0x004fcbbd,0x003e8ce3,0xfff23412,0xffc9bbe8,0xffb46b60,0xffb12005,0xffd4bc3d,
-0x000685b6,0x000ef621,0x00105897,0x0019e3e8,0xffee7a43,0xffdec51f,0xfff0d0f7,0x000976e1,0x000a737f,0x00371871,0x006d40f8,0x006d113f,0x007f9da2,0x018cb0ea,0xff39abac,0xff53f780,0xff25294f,0xff3f841d,0xff75d35c,0xffdd12d9,0x0021ac64,0x0049bd3a,0x00a8c5c3,0x00f2efd8,0x0102694a,
-0x00ff23c3,0x00e0135c,0x00cf9607,0x00770b93,0x002b3d78,0xffefd887,0xffaaa1e9,0xff720894,0xff4c7c1b,0xff482f32,0xff4e69fe,0xff4a85dc,0xff9c44c4,0xffc98be1,0xfff9e13b,0xffe8e0e1,0xffe2152f,0xffea35d9,0x00008da2,0x001e7fc5,0x00491019,0xffe7653c,0xffd88558,0xffdfe51e,0xff9226d6,
-0x00d310bc,0x00c4830e,0x00ae1d3b,0x00ab79db,0x00bb08fb,0x00c3d99e,0x00d72fc1,0x00e62bed,0x00afb2bc,0x0077208f,0x0057fe40,0x0041c73d,0x00283043,0xfffff566,0x00061edb,0xfffb2b6b,0xffd30fcb,0xffd701af,0xffd9147f,0xffd74361,0xffd27796,0xffca1b64,0xffb763ed,0xffa87fc3,0xffb44dac,
-0xffdcb73f,0x0034ed4e,0x007089ac,0x0081e7df,0x008d5b7f,0x00856c3e,0x0077839a,0x0087f291,0x009bbba5,0x00aea1b7,0x00b7400c,0xffce323c,0xffcb1915,0xffec2a07,0xfffc7fb2,0x000be914,0x000201c6,0xfff64886,0xfff24023,0xffeec0a3,0xfffaf10c,0x0008f322,0xffffe8c2,0xfff96ea2,0xfff607cb,
-0xffdab390,0xffc124d5,0xffa974f1,0xffa68d08,0xff9fc7c5,0xff98a778,0xff8a86a9,0xff7fe2d7,0xff752933,0xff83e62b,0xff8a4e51,0xff8e0a98,0xffa1b33f,0xffc9ebee,0xffddb814,0x000b7160,0x0025100c,0x004e3377,0x002dba29,0x000957aa,0xffeb1f39,0xffe73ae0,0xff587f53,0xff615cdd,0xff6a8193,
-0xff70719d,0xff7be7cf,0xff8c6dc4,0xff9e5a39,0xffaa3da9,0xffabfe2d,0xffa8acf3,0xffa75629,0xffab9e42,0xffb152c3,0xffbb488e,0xffb2b332,0xffae3e35,0xffa69f0a,0xffa03152,0xff999b6d,0xff93a155,0xff952c83,0xff9344a9,0xff8ee0fe,0xff8b94de,0xff86a8da,0xff842ede,0xff7c2eb5,0xff708735,
-0xff60a161,0xff54f980,0xff478d5d,0xff38b7a2,0xff421f02,0xff4980c1,0xff4d623f,0xff5b2552,0xff899e68,0xff8b0911,0xff906c5d,0xff96c093,0xff9a672f,0xff9c1ccb,0xff9d1310,0xffa0d87f,0xffa44723,0xffa9f35a,0xffae70e6,0xffb1e4c7,0xffb37321,0xffb63108,0xffb09e58,0xffacd65c,0xffa90731,
-0xffa3eac8,0xff9ebc8a,0xff97db7b,0xff996976,0xff993b97,0xff99eeed,0xff9964e0,0xff9922b9,0xff988106,0xff928ec0,0xff8e043c,0xff8c50e6,0xff87b2a8,0xff8560d5,0xff7e8c99,0xff88cf17,0xff8be430,0xff860af8,0xff873ba4,0xff9c7dc6,0x001f5976,0x0016a1f4,0x0018b4db,0x00230967,0x0028eb46,
-0x0033366e,0x00249075,0x001f2950,0x0015d1df,0x0023d3a0,0x0027aa1b,0x0022f04f,0x00285c15,0x002afdd9,0x00312c59,0x00332311,0x0030ec47,0x002bfcbc,0x001d8528,0x001619fa,0x000f6fdf,0x0015ba22,0x0019cae4,0x00258b99,0x00216a8e,0x001be970,0x000c9af9,0x000d2df6,0x000627d1,0xfffa809a,
-0xfff58320,0xfffabc04,0x0015e225,0x000aac44,0x000fd66e,0x002a98e5,0x00169efc,0x000de6ee,0x001eb368,0x003aae4b,0x004fd4c0,0x006a5936,0x004af7b1,0x003b3803,0x001ff19f,0x0037d745,0x0036e626,0x002530a8,0x003120e9,0x004749fa,0x006378c5,0x007c8d78,0x0076c963,0x005c2250,0x002c0943,
-0x000c69da,0xfffcb97f,0x0005c622,0x001d83e3,0x003ed41f,0x003c1c75,0x002e3525,0x00028e49,0xfffdb4fe,0xffe7909a,0xffd52bc3,0xffb9f17e,0xffc23e67,0x0002012f,0xffe09aad,0xfff466cc,0x003d08dc,0x000d51f1,0xfff7ad40,0x000c3d0c,0x004a8d37,0x0071fbd6,0x009ff71c,0x006a504e,0x004a92b3,
-0x000f7937,0x004a3927,0x005d7f98,0x0055fa01,0x00651464,0x007266ee,0x0093cba3,0x00b020c3,0x00a3fdbc,0x0078ef14,0x002a1faa,0xfffe9057,0xffdf1da0,0xfff7563b,0x001dafd5,0x0050d1a8,0x0041881c,0x00351763,0xffddf5d9,0xffde07ae,0xffa39521,0xff7fc8f4,0xff4a3558,0xff63b17b,0xfff3d303,
-0xffb87d87,0xffd9f239,0x005f97b7,0xfff81010,0xffe80b77,0x002456ac,0x007e8fea,0x00d06d3d,0x012a8bd4,0x00dfe8fd,0x00ab95b0,0x00424c24,0x00686d20,0x005d70b0,0x003cd58b,0x00403840,0x00968d6d,0x0106c9b4,0x016d3f28,0x01508fe6,0x00f11b57,0x004edf37,0xffe50e27,0xffaa5599,0xffd40282,
-0x002f5c34,0x00b0cfd3,0x00a11a2d,0x0075d2fc,0x002899ed,0x000e35b7,0xffc614f8,0xff4f2fde,0xff1eaee6,0xff3724bd,0xffd3e892,0xff543da9,0xff97a73e,0x00a00042,0xfff387b8,0xff650644,0xffbf0e6a,0xffad65b4,0xffc420d7,0xffa37f84,0xff8a8eaf,0xff6f7ee0,0xff69445f,0x003f5e42,0x00ff0ef9,
-0x0143a7da,0x01ca9f76,0x01047c66,0xff6bb9e5,0xff38dd66,0xff365551,0xff964001,0x0005fc3f,0x0051eee2,0x009276f4,0x007c6eaa,0x00159eae,0xffbb5d1b,0xff56cf88,0xff8719f5,0x007b18d3,0xffe70e9e,0xffc5948c,0xffccbb2e,0xffe53dda,0x001dc676,0x0097df3d,0x00a69af5,0x00710672,0xfff089c1,
-0xff78d3ce,0x01af5d78,0x009c8174,0xfff170ce,0xff40ccc2,0xfe7bdfba,0x0021f44b,0x00dfe790,0x00c8c3ac,0x0086a26a,0xff8b0a6e,0xfe4eb5ba,0xfeef0b76,0xffc3762d,0x00d10e83,0x00e20d12,0x00a8f206,0x0064ffe7,0x0016426b,0x0020a66b,0x008d3200,0x007538e0,0x0061d934,0x00049a3f,0x001dcfe4,
-0xffe0e316,0xffc1b5f3,0xffafc4c6,0xffdaf2c0,0xffeb5bac,0x000337d0,0xffcb81f9,0xff402cdc,0xfe826af6,0xfe9cd166,0xffb607e7,0x0144af3e,0xfc2655d8,0xfc2c5154,0xff68dbbb,0x00a734fb,0x00219756,0x0045e185,0xffb8d3b5,0xfedff87a,0xff164c0e,0x00026aa2,0x01398bbe,0x002c3485,0xff8aa596,
-0xff7bb5a1,0xff5fad7a,0xff7d9b2d,0xffb21876,0xfff5bb07,0x002924d4,0x0044c1fb,0x00405f86,0x002206c3,0xffe3c3de,0xffc06747,0xffc87511,0xffae501e,0x000abf7a,0x0019735e,0x0003c5d8,0xffe154b0,0xffe5fda2,0x003afbc6,0xffa0cd3f,0xffa167f6,0x001410c0,0xfd5152f8,0x022dba64,0x011def40,
-0x00510fb3,0x000330e2,0x005cd588,0xffb5ffec,0xff97bfea,0xffcfecb4,0xffca8db4,0xff99f91b,0xff6a36bf,0xffcfc7e7,0x002d849c,0x00416486,0x0062e055,0x00646894,0x007abd6c,0x00283e51,0xfffdb744,0xffee833f,0xfff3f3ca,0x001bcc0d,0x00451de5,0x002b77a3,0x000d62a7,0x0001c518,0xfff02a6a,
-0xffe5a7bf,0xfffcb102,0xfffea26e,0x0008fa49,0x00663fef,0x0099f6c3,0x008e3f2f,0x00d500d8,0x01d86896,0xff6fd530,0xffcec685,0xfff04b12,0xffdcbbda,0xffb91ae7,0xffd1be5c,0xfff3935a,0x0022ed3d,0x0063e135,0x00b7494f,0x00d851dd,0x00dd038b,0x00bc6eec,0x009a4cfa,0x005ffd2a,0x001568dc,
-0xffce193f,0xff83a34c,0xff5bf39f,0xff536790,0xff4683af,0xff57bafc,0xff5e49d8,0xffc034df,0xffe58e27,0xffe0fcfd,0xffdd55ee,0xffd07564,0xffc35652,0xffd49a70,0xfffcf5c0,0x00305107,0xffe46190,0xffd3fe90,0xffafa6a5,0xff7e2dec,0x00573fc4,0x0034ae9f,0x0004e65a,0x00286d94,0x006ca6d6,
-0x00b7a78f,0x00f78e12,0x012ad5ec,0x0104ec58,0x00db282d,0x00c4c1e1,0x00ad2850,0x0090ec20,0x0055e47a,0x003be4a7,0x00183ec5,0xffe224ad,0xffe92fc7,0xffe16ed6,0xffdb4bb5,0xffca3f7e,0xffbf6fe9,0xffafe158,0xffbeb46f,0xffde29ad,0x00122f88,0x0052a1a6,0x006dc665,0x00580512,0x004ee54c,
-0x00392435,0x002a63c6,0x00347c42,0x003d3e59,0x004ed816,0x004acc85,0x0050b945,0x00549051,0x0069e709,0x005b3850,0x00412ae1,0x002a55e2,0x00206f84,0x0024de75,0x002b8ce9,0x003b7a81,0x004bd225,0x00280e2b,0x00088feb,0xffeee4a8,0xffd7184b,0xffbf0136,0xffa510ce,0xffaa5fa1,0xffab6231,
-0xffabab8c,0xffa1eef0,0xff9af4e6,0xff9110a9,0xffaa4ea9,0xffb5639f,0xffc454cc,0xffe06595,0x001a6b84,0x003f55c8,0x0070b4c6,0x008f7086,0x00bc7e7c,0x00a2ec82,0x008f0c0b,0x007b7fd1,0x006cd46a,0xff76c6ad,0xff84af49,0xff7f5773,0xff80890d,0xff8a9e52,0xff92c16e,0xff93b825,0xff8baf54,
-0xff8bc99f,0xff87fe8b,0xff8b0b85,0xff93d700,0xffa117c3,0xffae1bd4,0xffab0a65,0xffaa05a6,0xffa6b314,0xffa1bbfb,0xff9bee94,0xff960451,0xff920768,0xff943fc0,0xff90363f,0xff8d5201,0xff87bf23,0xff82b749,0xff876189,0xff8595c6,0xff7f15fc,0xff805725,0xff81c8b0,0xff7e6b77,0xff838977,
-0xff811da6,0xff7ef0a1,0xff8b8cac,0xff9f4aa8,0xffa6db9a,0xffa5622e,0xffa5d7f8,0xffa1e2a7,0xff9dc971,0xff9ca46e,0xff9cc1c3,0xffa29531,0xffa7813e,0xffaa2ba5,0xffad6396,0xffae5acf,0xffb141c1,0xffad0859,0xffaa6cf9,0xffa7ff33,0xffa47c57,0xffa10e6b,0xff9d7a0d,0xff9baf1a,0xff9aabc6,
-0xff9a0687,0xff9ac072,0xff99378c,0xff971e37,0xff9788b5,0xff97a191,0xff9b7afe,0xff9bfc87,0xff9d8aeb,0xffa01266,0xffa73d1b,0xffa9e6e5,0xff99d2f7,0xff9c50ee,0xff9eb0dc,0x001aa2b7,0x00179be8,0x0018db8e,0x001f24d8,0x0024a931,0x0031a5b7,0x002597de,0x001fbacf,0x0013137e,0x00194338,
-0x001d09ef,0x00258cc2,0x0023277b,0x002417ec,0x0023cdaf,0x002cd00e,0x002cc7b0,0x0029bffb,0x001b80c5,0x0014bbb8,0x000e382f,0x00157d4d,0x0018790c,0x001f959b,0x0019d04b,0x0015f834,0x0006fb2e,0x0008922b,0x0002ebaa,0xfffc9634,0xfff75fe6,0xfffc41f1,0x000ca321,0x000b32e6,0x000e88e1,
-0x001fbf3b,0x00166497,0x000eaf8f,0x001a0375,0x0029b6d4,0x0040901a,0x00647d54,0x0051d1fd,0x00400ec0,0x001bb72b,0x00240ace,0x002726d0,0x0036b475,0x002f5c51,0x003ce1f1,0x00466837,0x00713d10,0x0075ad7e,0x0063d4ed,0x003996fc,0x001e741f,0x000f2e45,0x001a6a2b,0x00265d27,0x002e4e88,
-0x00317227,0x00216560,0xffef3900,0xffefe23e,0xffe20821,0xffd878fa,0xffc07834,0xffc1a7d6,0xffe26380,0xffe0ead9,0xfff2e6a2,0x0015298c,0x0006ec30,0x000746ec,0x001d12a5,0x0040c0ed,0x0068ec24,0x00a28dbd,0x007e98cb,0x005d060f,0x001265e3,0x001f6a2c,0x0032e768,0x00714886,0x005e9cc1,
-0x00681743,0x00616b68,0x009dfe65,0x009f3c3e,0x0082d414,0x0035db0f,0x000ead76,0xfff2070f,0x00085bf6,0x0021ca22,0x00272400,0x0027c737,0x00201899,0xffb71a32,0xffc3ca67,0xff8d9619,0xff82f2b3,0xff4afa3d,0xff68abcc,0xffc459f4,0xffc687d5,0xffe183ce,0x0026d04f,0xfffe364f,0xffe17994,
-0x0016dfd7,0x00404470,0x009caef1,0x01191a16,0x00f30ed1,0x00baedb4,0x00423f39,0x0034e9eb,0x003d1e99,0x0083ee57,0x0054bdd4,0x00858f1c,0x00b4b595,0x0147b32c,0x01588eae,0x0121d37e,0x00906e3b,0x0037a951,0x0005e1ec,0x00299234,0x0055bbcf,0x0087862a,0x007f9373,0x005427ba,0xffed2f42,
-0xffc4e2e3,0xff8c04b2,0xff640fa7,0xfee89ae0,0xfefc456e,0xff7be7a8,0xff4761ee,0xff92ceb0,0x002de535,0xffd82bb5,0x0015503d,0x00380d01,0x007df05d,0x00618bae,0xffb20681,0xffc8a656,0xff9eaead,0xff3a821f,0xfffb6798,0x008ba184,0x00a6a272,0x017d45cc,0x0108d5c8,0xff738aa6,0xff465ae0,
-0xff0aaf1e,0xff0397cd,0xff63935d,0xff8319f2,0xff969a5a,0xffac27bb,0xff7870a7,0xff5066ae,0xff3d0fc8,0xff847fc5,0x007e4230,0xffd77703,0xffb7e09e,0xffd24b13,0xffebc84f,0x005eabbf,0x010cbf52,0x00ecab6b,0x009f9043,0x00198fbb,0x000e149c,0x0129b882,0x0020cd45,0xff952c94,0xff1f097c,
-0xfe8dd902,0xff5e9d74,0x0017fa75,0x00914b82,0x00a665c1,0xffe139b7,0xfe90e8de,0xfead74c4,0xff3d188a,0x001adce0,0x00e63ed1,0x010b02ce,0x00a5d85b,0x006d956e,0x0064659f,0x00bf36cd,0x007666ad,0x005f7e32,0x0031eac5,0x00422f65,0xfffa027f,0xffa46b5a,0xffc2d32d,0xfffa1470,0xfff95175,
-0x0008f97a,0xffb27fbb,0xff0ae188,0xfe4b6966,0xfeb708ae,0x002ce27f,0x0112ad0e,0xfccda5c4,0xfd890d78,0xff4048d6,0x002d2c00,0x010b6052,0x00c5d675,0x00009fff,0xff27697a,0xfe7155ee,0xff4acc45,0x0172d972,0x006390f5,0xffbd1502,0xff6ecb38,0xff4b136c,0xff490c7b,0xff6ae2b4,0xffc0465d,
-0xffec5fc9,0xfffcba92,0x0016946e,0xfff4c40e,0xffb476ee,0xffa2ec34,0xffbed614,0xffca0ef1,0x0002d6f4,0x0008b025,0xfffd6f3a,0xfff8ae8d,0xffefbae5,0x00063207,0xff70b287,0xff8615bf,0x0032cd5c,0xfd8f76f4,0x01493524,0xffc5ec80,0xffedc341,0x00358b8e,0x00e56891,0x0064671b,0x001ce31b,
-0xffdaacd4,0xffee5c9d,0xffcc03f7,0xffb952fe,0xffc696f8,0xfffe4512,0xfffb5595,0x004b3a7b,0x007c26d5,0x008e85e4,0x0059da9c,0x003a521b,0x0021996d,0x002fbc8e,0x0049bfeb,0x006335c6,0x003942c1,0x0006b563,0xffe38ba4,0xffee7f2f,0xfff6d432,0x000b739c,0x0005af27,0x0016c0c1,0x0070d97f,
-0x0062f98c,0x00635fc1,0x0115287a,0x01950bc6,0xffc60340,0x0030e5ea,0x007163f0,0x0036ea65,0xffc88f14,0xffb5b7f1,0xffc6512e,0xffe929b5,0x001a0504,0x00641d0d,0x009dae59,0x00a7a5b6,0x0097d648,0x00754e9f,0x004a93ec,0x0005d1f2,0xffb8d9e0,0xff8599d5,0xff6db352,0xff6b3d83,0xff5d71f1,
-0xff795413,0xff9b2f53,0xffe3c35c,0xffff16f8,0xffe43a99,0xffdf52fb,0xffd1fd12,0xffcb31ca,0xffd7277d,0xffefc45c,0x000650d0,0xfffb987c,0xffe6d9f2,0xffa63347,0xff92f226,0xffca7a81,0xff9bc929,0xff6fa22d,0xffad23bc,0x000ffd96,0x007ee54e,0x00c80287,0x00fe18f0,0x010ae474,0x010fd864,
-0x0117dad8,0x01007a98,0x00e009eb,0x009f12e9,0x007cbf49,0x004a3c30,0x00070e1b,0xfffba230,0xffdaf630,0xffbef299,0xffae5445,0xffae0d5b,0xffb67db5,0xffdfc05b,0x0005d304,0x0033c274,0x0047a40f,0x00411a9e,0x0019b961,0x0013a4ee,0x0008bde2,0xfffd1a52,0x000231b5,0xfffe272e,0x00016fd7,
-0xffe33c45,0x00af5a9c,0x00b71dd2,0x00bfed4b,0x00ab85cd,0x008bb1cb,0x006e5a70,0x0064fda0,0x0067d191,0x0065696b,0x0063f46b,0x0064189d,0x003300c8,0x0007e8b4,0xffdd7a38,0xffd02656,0xffc09fb3,0xffaf004e,0xffb63fd0,0xffbc1c3b,0xffbfd06a,0xffbd3cc0,0xffb9fe65,0xffb1739a,0xffda143b,
-0xfff2e18c,0x0014d9f7,0x002e8eb7,0x0063b5f4,0x0087e8ec,0x00a15516,0x00b0ef32,0x00ca5f98,0x00c24eab,0x00c38270,0x00c046a0,0x00b66c3a,0xffba955b,0xffcc05cf,0xffc3d468,0xffc288d6,0xffc8a066,0xffc83ebe,0xffc00a07,0xffb31ac7,0xffad1360,0xffa79290,0xffa89920,0xffab3990,0xffb2a99a,
-0xffb82831,0xffb7d720,0xffb657c1,0xffb454aa,0xffaf2ced,0xffa893e3,0xffa1eedb,0xff9ac730,0xff9d2ca3,0xff98709c,0xff929b34,0xff8971e6,0xff81344f,0xff907bc3,0xff993cea,0xffa05cb3,0xffb060fb,0xffc12283,0xffcecd71,0xffcfa0b2,0xffcb7bf0,0xffc95245,0xffd2588d,0xffc2d24c,0xffcf23af,
-0xffc8b05b,0xffc59154,0xffbf4cda,0xffbb75a8,0xffba854d,0xffb9c523,0xffba4300,0xffb95dea,0xffb69623,0xffb61efe,0xffb44744,0xffb3607b,0xffb1d8cb,0xffb0cb95,0xffafde34,0xffae9d28,0xffad8bdb,0xffad4491,0xffa99b28,0xffa6a79f,0xffa29639,0xffa6c9bf,0xffa32896,0xff9a311b,0xffa29b9d,
-0xffa894fa,0xffb10ad0,0xffb72bff,0xffbce234,0xffc720a4,0xffc9246d,0xffccd2df,0xffbad8ca,0xffbf3514,0xffa9c3e1,0x0013fbe8,0x0014aa6b,0x00177c46,0x0018c4c8,0x001cfc16,0x00299cd5,0x00228647,0x001ccf2b,0x000b8511,0x000f0ed8,0x00132a66,0x00259876,0x001d1331,0x001ce7db,0x0018bd03,
-0x00249a00,0x00255363,0x0021ba38,0x00176dc5,0x00123d4b,0x000dc51f,0x00117bd7,0x0012463d,0x00135bfd,0x000fff42,0x000d2609,0xfffd3a6f,0x00014bb3,0xfffbf5bf,0xfff3c283,0xfff5da0d,0xfffac329,0xfffca8a1,0x0009a9ee,0x000d258b,0x000fdbb1,0x001271d4,0x0009c222,0x0014cf1b,0x0017f53c,
-0x002da106,0x00525f33,0x004eeacb,0x003be164,0x000c5747,0x00115797,0x001ae4e3,0x004501b5,0x002caa70,0x00310d80,0x002fc9a4,0x005f864d,0x006998d5,0x005afcb5,0x003fe0ca,0x002c1303,0x001fb451,0x00227e9a,0x0022a794,0x0018cdb6,0x001e76e4,0x000f39c8,0xffdcde41,0xffecb2d4,0xffe82d90,
-0xffd5ceb6,0xffd4b372,0xffcf8bcc,0xffc57abe,0xffe71fbd,0xfff498d5,0xffee1daf,0xfffda9f5,0x000f7167,0x002dbbaf,0x003186d7,0x0054286a,0x008b1282,0x00821e43,0x00633ba7,0x000360c1,0x00023d80,0x00155283,0x00843339,0x0055c75f,0x005a6046,0x00420525,0x0086d922,0x008e1796,0x00728a93,
-0x003ba2f5,0x001df09c,0x0009d752,0x000f821f,0x00178696,0xfffcfdcd,0x0009807f,0x00095b07,0xff971966,0xffb7163a,0xff8798ec,0xff6863f5,0xff5b5878,0xff7d75ea,0xff8f4549,0xffdc84d1,0xfff287ea,0xfff16cf8,0x0002415a,0xffd7a6ae,0x000aa5b5,0x00077a91,0x005f0ea4,0x00dfdba3,0x00e96b70,
-0x00ad11cb,0x001a84f0,0x0009df6b,0x002e64cc,0x00c079e0,0x0066a2dc,0x006d93ea,0x007ac668,0x01132c2e,0x013ee576,0x01182472,0x00b7dbe1,0x0078ee8c,0x0052f8d0,0x005c5c64,0x005d656c,0x003c3252,0x004a23c7,0x002d0340,0xffa4ca1a,0xffa01089,0xff7dd469,0xff743fc9,0xfef916cc,0xff02fcfa,
-0xff29dc87,0xff650d7d,0xffa869eb,0xffb5e8a6,0xffc06eb3,0x00b3a3f9,0x00b8fa13,0x0121c76a,0x00da5220,0xffdf2b6f,0x000cf39f,0xffe9d2f0,0xff819b0b,0xffd9f51d,0x0014b18e,0x001c8f87,0x00e88d9c,0x00c9735a,0xffab9319,0xff5963f9,0xfef87f98,0xfea40348,0xfeecacaa,0xfef6dc02,0xfeee5554,
-0xff0d1f2d,0xff12157a,0xff13d6b4,0xff626bd7,0xffb24ef4,0x006416d0,0xffeb83e3,0xffe594a2,0x000728b4,0x001a6de6,0x0092d4be,0x01269b26,0x010e608c,0x00ccbf23,0x00673e0e,0x0099de95,0x006e3e56,0xffc1ce4c,0xff7142ad,0xff2ecc77,0xfed9741e,0xfeec98c2,0xff89ad5d,0x005d3b16,0x00b68dd0,
-0x004aa5f5,0xff16bdf5,0xfeac4624,0xfeec0104,0xff9c6e6d,0x009af6c9,0x010ed6c6,0x00d20b36,0x00c682f6,0x00acd35f,0x00c7286e,0x006708fc,0x0045c1cd,0x0040eb60,0x0044feff,0x00051106,0xffa71810,0xffd3ba22,0x0005a480,0xfff719d2,0xfff9d329,0xffa2406e,0xff180b50,0xfe6c08c4,0xfef57b1e,
-0x0079fc0f,0x009c4dd4,0xfe250114,0xfed79900,0xfee9c2ce,0xffa95c08,0x01ae0430,0x01022664,0x0058142c,0xffcb13ea,0xfe81b644,0xfef2aeea,0x010c3ada,0x00a0258d,0x0029e047,0xff76e326,0xff63ddba,0xff4c4766,0xff4da281,0xff97c7ea,0xffaf95a7,0xffa1d8cc,0xffd65fcf,0xffc92144,0xffa0cfe4,
-0xff98915a,0xffc253dc,0xffed4d4d,0x000c6b97,0x0003b26b,0xfffcc828,0x000b2036,0xfffc223b,0xffb84edf,0xffc046a8,0xffc624ac,0xff922505,0xfe629d5e,0x003287f5,0xffcc5759,0x0081b849,0x00c2f85f,0x00f15ca1,0x011b2016,0x00d9eb95,0x0020b15e,0x0007c4a8,0xffd801d2,0xffeccd94,0xffc04a67,
-0xffdfc8bd,0xffdd0a55,0x003cdb92,0x0075a7e1,0x007971ab,0x0076664b,0x006cf2e8,0x004ee6a6,0x00558a90,0x005c3e63,0x00683a01,0x0035f7ea,0x00022f23,0xffdeb8d0,0xfff210b2,0x0003982c,0x000532a1,0xffff01fc,0x0013f8e0,0x00388b15,0x00019ea9,0x000a7dd0,0x00aeb06c,0x008c571f,0x00207414,
-0x005d3528,0x0090dafe,0x005fb9b1,0xffd6795e,0xff9d0180,0xff8bf7f1,0xff9ed88c,0xffc4f77d,0xfffccfe4,0x004497ab,0x0053b036,0x005c929c,0x0057495d,0x0032feed,0x00000c43,0xffc575c8,0xffa9cf81,0xff99ecef,0xff8e7288,0xff90be6f,0xffb6b775,0xffe81fd9,0x000461a6,0x000eee10,0xfff2c3e7,
-0xffe87fb7,0xffe93de4,0xfff521ce,0xfff39d78,0xfff40c05,0xffe3339f,0x00067226,0x00010dad,0xffe3bbb2,0xffe0cd72,0xff7272a7,0xff44beae,0xff40bbb7,0xff7029f2,0xffb8be4f,0x00064b34,0x003d69ca,0x0072e703,0x00ba60d8,0x00f12516,0x0118d2d4,0x010d055a,0x00f11d84,0x00b941cf,0x0095422e,
-0x005fe86a,0x001c3b30,0xfff44813,0xffc81c0f,0xffa5c9d5,0xff9c04b8,0xffabde52,0xffcd0b3d,0x00008f50,0x001f8b43,0x003873b0,0x0021707d,0x0006a70c,0xffebf90d,0xffee95c7,0xfff37d5f,0xffeb8277,0xffe8f858,0xffd6fbcc,0xffc6102b,0xff9ea803,0x00aadb2c,0x00a97559,0x00a2b788,0x009c80e1,
-0x00912b02,0x0086eed7,0x00881733,0x008d3f0b,0x007b8757,0x0066ea49,0x0056fb5d,0x0027b963,0xffff601b,0xffd338e3,0xffcf2ff0,0xffc6f250,0xffbe77a6,0xffc8c057,0xffd248f3,0xffd7afc6,0xffd94818,0xffd7b62a,0xffd08d04,0xffffae2a,0x0024ab6f,0x0058fce4,0x00689bf0,0x00893635,0x009e3d4b,
-0x0095ffde,0x008bceba,0x0086ab82,0x008e3242,0x009d6c28,0x00a3e64f,0x009febee,0x001782f6,0x00307e41,0x0027e631,0x00209511,0x001a7e34,0x000fa463,0x000145fa,0xfff585ff,0xffe69e2e,0xffdca4f3,0xffd5d5e4,0xffcce63b,0xffc704e5,0xffbe4b9a,0xffbf6212,0xffbd8aff,0xffbb8ab7,0xffb5d38a,
-0xffaf0773,0xffa89edc,0xffa696df,0xffae2cc7,0xffafbe55,0xffaec545,0xffa8179e,0xffa62b26,0xffb5603a,0xffc1e68e,0xffcf34df,0xffe5cd0c,0xfffe5530,0x000ea950,0x00138b38,0x0012139f,0x00168068,0x00229789,0xffea6542,0xfff72076,0xffec5055,0xffe791f1,0xffe22d06,0xffdf22b3,0xffdce306,
-0xffda35ba,0xffd4c98a,0xffce5915,0xffc6b43e,0xffc1fd54,0xffbd1b1c,0xffb7479b,0xffb85211,0xffb808e5,0xffb84e7a,0xffb8c3d2,0xffb98f89,0xffba6b44,0xffba226e,0xffb940f4,0xffb566d5,0xffbe9683,0xffbd4d60,0xffb1c37a,0xffbbbab8,0xffc3b53f,0xffcc19a4,0xffd31fde,0xffd92a2a,0xffe55f7c,
-0xffe99d06,0xffefad0a,0xffe13d60,0xffe77a73,0xffb794a7,0x000b96d1,0x000d7dc0,0x0012ef8a,0x0010735a,0x001321ce,0x001c1e61,0x001aa800,0x00157a35,0x0001d32c,0x00050576,0x00097117,0x0021d2d5,0x00141e49,0x001376f3,0x000eebf7,0x001a85a3,0x001bb377,0x0018b0b1,0x001188e1,0x000db3ff,
-0x000b3a1c,0x000a4125,0x00098f2a,0x0009bdd7,0x00047ed5,0x0001f1cc,0xfff4b7ee,0xfffa67af,0xfff52e79,0xffe8617d,0xfff3ad46,0xfff800ae,0xffed73e9,0x0005588b,0x0009a744,0x00039c67,0x000b1166,0xffff2ab6,0x000eed6c,0x0009362d,0x001a36c2,0x0036adf8,0x0041171e,0x00308156,0xfffd18b9,
-0x000113fc,0x000edd5b,0x004904de,0x001ef6fa,0x001a8bcb,0x001993a2,0x0045fc44,0x00547c78,0x004c60e6,0x003d8723,0x002f9adb,0x0026a33b,0x001dc9ed,0x0014eb96,0x000970b3,0x0004ead3,0xfff9968d,0xffd5d68b,0xffefc83a,0xfff2aa7b,0xffd443f4,0xffeb51d3,0xffe46f4d,0xffba9808,0xffefd700,
-0xfff712db,0xffd94545,0xfff2b041,0x000b0fa1,0x0034f35d,0x0022a56e,0x003d073d,0x00618424,0x0072ba24,0x0059303e,0xfff170cf,0xffee579a,0xffffb629,0x0089085e,0x003f1a0b,0x003f6e3d,0x0029b664,0x006b956c,0x00765dae,0x00602f7f,0x003d24cd,0x00264931,0x001c5a72,0x000bd208,0x00033af2,
-0xffea6581,0xffe82cde,0xffebbd2b,0xff891f93,0xffb24028,0xff8eb60b,0xff43de55,0xff76cf30,0xff94a437,0xff66c149,0xffed9254,0x0000e38a,0xffd40a53,0xfffd7ece,0xffc9434b,0x0003124f,0xffe750e8,0x0027f9e7,0x008c2be4,0x00c2ae9f,0x0091ac56,0xfff6db4a,0xffe7b909,0x00211b17,0x00dd10b7,
-0x0053d7c5,0x002de70e,0x0039e49a,0x00ca46d2,0x010aeeda,0x00f708a7,0x00c3b462,0x0097c14f,0x007f14d4,0x005fd4ad,0x004523a5,0xfffe0afa,0x000430c3,0xfff947a8,0xff836e2b,0xffada8af,0xffa4f8fd,0xff95ec6d,0xff488889,0xff4c2f1c,0xff0ffe5e,0xff94eff7,0xffc46cc6,0xff6c8d86,0xfface003,
-0x00fc6de0,0x010bbd1c,0x0166fea0,0x011d09de,0x0042d71a,0x00344adc,0x00095e3e,0xffe7d134,0xffd0f2d0,0xffc3d0c0,0xffbf2809,0x0064e28a,0x0098817f,0x003635be,0xff919a7b,0xff0f1ff8,0xfe9d8246,0xfeb8927a,0xfebd9cfc,0xfec0428e,0xfed21708,0xfef7ca92,0xff0e789b,0xffbcdbfa,0x000084ba,
-0x003651b3,0x000cc157,0x00130d20,0x00299666,0x0038d261,0x008f50ce,0x00d839b9,0x00f01291,0x00e261e7,0x00ade580,0x00df72c3,0xffdb4e33,0xffa18e70,0xff7c94e3,0xff4a2049,0xff16a3a8,0xfec7cffc,0xff4cb037,0x0048f4cd,0x00a96d4e,0x008cc7b0,0xffa2ca27,0xfecbaafa,0xfebb6a90,0xff56b59b,
-0x001e15cb,0x00b3b1f3,0x00d265f6,0x00ea3512,0x00c8f687,0x00a2bd0c,0x0043b4e7,0x0021d36d,0x00325ecf,0x002c9cbe,0xfffc1189,0xffbefab2,0xffef2160,0xfffb26b9,0xffead09c,0xffeba504,0xffbd2c9b,0xff5ab670,0xfee206b6,0xff525602,0x008b5463,0x0026822e,0xff1ddf1f,0xffd350ab,0xfef09c14,
-0xff97a969,0x01ed58ca,0x0111d3f4,0x0093d853,0x0056f821,0xfeccaf82,0xfed1c05e,0x005d9e37,0x00ce5802,0x00a9b70f,0xffacc730,0xff993b94,0xff72f844,0xff608e47,0xff84770b,0xff930b3c,0xff838ebd,0xffba0199,0xffbd0225,0xffa3a872,0xffaf2dd8,0xffdc42e8,0x000bc04d,0x000c5db6,0x0002648d,
-0x000ae665,0x000a9bc2,0x0022314f,0xffbd3563,0x001c3e51,0x000aec5c,0xfef0f4d6,0xff0aad39,0xff6366b8,0x00ff081b,0x00fb53a1,0x00a72850,0x0023baa3,0x00f6f61f,0x012c6b20,0x00c8b699,0x0037a90a,0xffd83963,0xffef364e,0xffb33e4c,0xffc8f1d3,0xffddcba0,0x001cd485,0x003cd93b,0x004ad880,
-0x00701d66,0x0080755e,0x006f6853,0x006866f8,0x006150eb,0x005ff817,0x00235311,0xffff7c2c,0xffef1dee,0xfffb444b,0xfffce183,0xfffa1b20,0xfff1fd8a,0x00016a2f,0xfffcd615,0xffe33a12,0xffc57c8a,0xffa61b62,0xff253133,0x007f17d8,0x00696ff8,0x007d4634,0x0078fa26,0xfffda5a6,0xffb038ea,
-0xff660c17,0xff585d65,0xff71e3c9,0xff9c8648,0xffe090ef,0xfffc2adc,0x001775a5,0x00311828,0x001a8514,0x000687b1,0xfff0de69,0xffdab301,0xffce99db,0xffc5859f,0xffd97696,0x0000fc43,0x0029a9a6,0x001e9599,0x0014e855,0xfffdbba4,0xfffc1840,0x00052724,0x000c180c,0x0009981a,0x0003c5ce,
-0xffe0b724,0xfffa31fb,0x0012b855,0x0046b380,0x0068676c,0xff61eb3f,0xff550bac,0xff7ac250,0xff79f980,0xff7f84a2,0xff92d35e,0xffb71a24,0xffea2803,0x004d2fcc,0x009432f9,0x00c13fa1,0x00c9817c,0x00bfbbd5,0x009edc15,0x007e9d1a,0x004b442c,0x00078ea4,0xffd92608,0xffb8fb8f,0xffa45d61,
-0xff9f47d8,0xffb939b9,0xffe4dc83,0x0012916d,0x0022b727,0x001d69ed,0xfff89257,0xffe391db,0xffdf85e1,0xffe42585,0xffe8d8bf,0xffdb6132,0xffd596b0,0xffbc6574,0xffa10f8e,0xff7eea6b,0x0049faaa,0x00369f80,0x00255d0d,0x002e9d6e,0x0034cb4b,0x004cf9f1,0x0060ed8a,0x00727765,0x00655797,
-0x0056de2d,0x004def46,0x002908c6,0x00091ea1,0xffe53577,0xffe05a7d,0xffd9d1df,0xffd40987,0xffdbc9c9,0xffdfaead,0xffdf2ac1,0xffedb800,0xfff4189f,0xfff751ab,0x001c0589,0x0042b55b,0x007a1277,0x00787d4b,0x007aac09,0x007d4e78,0x005e4238,0x00431591,0x0025c871,0x0033c235,0x0042d5d0,
-0x004962c4,0x0042cb22,0x0062044e,0x007137d1,0x0068fd61,0x005cc374,0x004cfb59,0x003e4fcb,0x002f11db,0x00268cc9,0x0012479d,0x00031f26,0xfff58d2c,0xffe5da4f,0xffd86d5e,0xffc70bad,0xffc99c20,0xffc8a1da,0xffc7969a,0xffc2bc8c,0xffbf4a71,0xffb98451,0xffbc217c,0xffcdbfe7,0xffd92f91,
-0xffe25fad,0xffe3afb7,0xffee8672,0xfff94896,0x00071eec,0x0014cd4e,0x00281d51,0x003d813f,0x004ab164,0x004db316,0x004be737,0x00537d40,0x005c8bec,0x0003ecf9,0x000c7a12,0x000363ee,0xffffae57,0xfffd3ba6,0xfff9e06e,0xfff621dc,0xfff26bf3,0xffeb0c62,0xffe38925,0xffdac0a6,0xffd48278,
-0xffce7036,0xffc64b25,0xffc88727,0xffc84d19,0xffc8ff12,0xffca14fe,0xffcb5188,0xffcd2b6b,0xffcc93ca,0xffcdfe61,0xffca4d2f,0xffdda7b4,0xffde3c4e,0xffd61272,0xffdc729e,0xffe27984,0xffe798e2,0xffed3c97,0xfff1c13c,0xfffb2318,0x00016610,0x0008912d,0xfffe1ddd,0x000329ad,0xffceb619,
-0x000876e7,0x000a6331,0x0011ab93,0x000d791c,0x000f6d6b,0x0014165c,0x001771e8,0x0012c8ea,0xffff90b0,0x00018928,0x00059b9c,0x0020c5e3,0x000e66cf,0x000da49d,0x000c4401,0x00140df4,0x001586a8,0x00162e2e,0x000f2e23,0x000bee6c,0x000a5c19,0x0006c707,0x0005459a,0x0006fb05,0xfffd8a6b,
-0xfffac4e0,0xfff47761,0xfff828cb,0xfff41e73,0xffe6c0a5,0xfff61e34,0xfff97982,0xffe93c94,0x00044e5e,0x000904c8,0xfffee23c,0x0007635a,0xfffab4de,0x000f3be5,0x00059efd,0x0010e655,0x0021e791,0x0037d3bb,0x002ca1f2,0xfffbe366,0xfffac012,0x00087694,0x00493892,0x00104a70,0x0004b1ad,
-0x000a80e7,0x002a76c9,0x003be21a,0x0041d35a,0x00369cab,0x002bbde8,0x00243cd4,0x0014eeb2,0x0008725b,0x0007227f,0xfff17f01,0xffea812a,0xffded2a0,0xfff25d57,0xfff7ec82,0xffd6cd6b,0xfffdabb6,0xfff890b4,0xffc42adf,0xfffc41b1,0xfffd23b2,0xffdab25d,0xfff10348,0x00081897,0x00379372,
-0x001f0796,0x003403c0,0x00443bde,0x00698bb5,0x0054e804,0xfff351e1,0xffe95b28,0xfff572b5,0x0087fcc7,0x00269251,0x00255fca,0x001ded61,0x004e4b8d,0x005b2f36,0x0059bd75,0x003bac9a,0x0026892f,0x002211e5,0x0005181d,0xfff1e442,0xfff3a135,0xffca12b3,0xffcb7d18,0xff9b7f7f,0xffb34203,
-0xffa14b81,0xff44ab3e,0xff9bec54,0xffb0f915,0xff65cf85,0xfff8d6d1,0x000b1956,0xffcfe509,0xfffadf2f,0xffc9c175,0x000404b0,0xffe56103,0x0009183e,0x00458d1b,0x00a3ba1f,0x008adbee,0xfff882c4,0xffd95931,0x00167f2d,0x00dcb067,0x002dbd25,0xffe42c44,0xfffb6ae4,0x006f9b6c,0x00bf52d9,
-0x00d3eb33,0x00b52cf3,0x00906de8,0x007ec146,0x00432561,0x001bea82,0xffe12603,0xffc43a25,0xffd03bb5,0xff9d4aea,0xffd958c0,0xffdf15d4,0xffd1fc26,0xffaeb401,0xffa89437,0xff4a53be,0xffc6de8a,0xffdede8f,0xff5f2d65,0xffa9cd91,0x00f7ece8,0x012124dc,0x016f1830,0x014db98c,0x00d17d3b,
-0x004a9fb1,0x00035b6c,0x00315383,0xffdf6ea2,0xffb21825,0xffa292c4,0x004b7a28,0x00c669a4,0x00f2995b,0x00068930,0xff600a60,0xfeefda34,0xfecc7ea8,0xfecdb0a8,0xfeea8482,0xfef26146,0xff1fee56,0xff4869b6,0x00200e24,0x0036ce83,0x000f4e28,0x00194fec,0x000f5a1d,0x001f53cf,0x001e1feb,
-0x0053e523,0x006092e4,0x00a29667,0x00d0a022,0x00d51d6b,0x00e3d9bf,0xffa054b7,0xffbd50bb,0xffa332bc,0xff6830d4,0xff46f2e2,0xfed04f04,0xff373314,0x004af80d,0x0086262d,0x00a6c961,0x0038766a,0xff1603f2,0xfeb3ae62,0xff2e2164,0xffb842ca,0x004bf96e,0x00b55966,0x00d1528d,0x00aa2660,
-0x00613d8d,0x0014d722,0xfffdd05b,0x002083ca,0x000b6542,0xffec5234,0xffe526dd,0xfffb09b6,0xfff307b7,0xfff3051d,0xffec759f,0xffe7ed63,0xffbf4b83,0xff654744,0xffa3e8ee,0x006cb9b8,0xffdde6a2,0xffc83130,0x00b2d4bf,0xff8d66b0,0xfffe5047,0x01c2573c,0x0139b6e6,0x00e7394b,0x00cfe0ed,
-0xff456a14,0xfef9d412,0xffc9d0f2,0x00e025d6,0x01152992,0x002e2a28,0xffe2b7d3,0xffa25b9b,0xff918d80,0xff8f833c,0xffa709b3,0xffb44540,0xffdbfc44,0xffdc9914,0xffc1d68b,0xffdd4bb8,0xfffe44bb,0x000e090e,0x00044bb4,0x00069f91,0x000aa8a5,0x0004e3a1,0x00196fec,0xfffc2b73,0x002a529a,
-0x001e4eff,0xff00e9b4,0xff7f3de9,0xff1fa325,0x01be8cca,0x007f5707,0xffc1012c,0xff16a907,0xfff85957,0x00ca1388,0x018280a8,0x009ec42a,0x0018e241,0xffe05ce9,0xffbce583,0xffc24e49,0xffdcb7e3,0xffeafdcc,0xfffac785,0x001fcbba,0x00558df8,0x007950c1,0x00812a63,0x006f60ec,0x00618206,
-0x00445d09,0x00081a28,0xfff98d1a,0xfffa742f,0xfffaa552,0xfff83b63,0xfff9ab25,0xfff5c187,0xfffc0044,0xffefcea9,0xfff17586,0xffafc750,0xfe9f8914,0xfe30cf4a,0x010c4b6a,0x00b80817,0x0087d64b,0x0085608d,0x003e16bc,0xfff5431e,0xff85a6a1,0xff4dcdce,0xff536232,0xff7811fb,0xffb0f774,
-0xffca5552,0xffec13b0,0x00201848,0x001dba0d,0x0021b975,0x0021b621,0x0010f89c,0x000ebc61,0x001651fb,0x0030f9fa,0x004ee4cd,0x005496ae,0x002df503,0x00159f02,0x0004081a,0x00096124,0x000c5de9,0x000bcb34,0x000976d1,0x000bcb65,0xfff7503f,0xfff3c052,0x00293237,0x009bce01,0x011c3716,
-0xff8fe44f,0xffae0465,0xffdf6c4a,0xffbd85d7,0xff9973dd,0xff801e1e,0xff9806ce,0xffc0ea27,0x00197641,0x00495956,0x005bd614,0x006cf738,0x006f40db,0x0063113d,0x004ba49b,0x002280bf,0xffe9826c,0xffcb9186,0xffc083f6,0xffbb4f9e,0xffb8d1d3,0xffd40bc5,0xfffe04bf,0x0017ca39,0x00149a78,
-0xfffca0fe,0xffe5c664,0xffdfbef6,0xffe5b092,0xffeb0654,0xffe9e88a,0xffd64847,0xffcd6398,0xffb528f8,0xff9cce82,0xff8ea517,0xffebff20,0xffcf2af3,0xffc025ec,0xffcc325d,0xffd4149d,0x00033740,0x0023e13d,0x003fde74,0x00458bb8,0x004f86b1,0x005c68b7,0x004b6454,0x003ae8f0,0x0027ba54,
-0x001a19ea,0x000e51d4,0x0003de3b,0x0000f7ef,0xfffa7903,0xffec85ef,0x0003bf9d,0x0014786c,0x00229460,0x00335f3c,0x004dc577,0x006d0e86,0x005fed0f,0x00509b8d,0x004a6227,0x002b8f02,0x0010fdd1,0xfff03d6c,0xfffa234b,0x00009c3e,0x0002d183,0xfff50d7e,0x0077ea12,0x007e9344,0x007a20a4,
-0x00714fe3,0x0063e56b,0x005c60be,0x005410d0,0x00521cf7,0x00407326,0x002f5b38,0x001f5f6d,0x000f590f,0x0001b9af,0xfff0af55,0xfff2b3eb,0xfff29583,0xfff227ed,0xffef1ece,0xffef748f,0xffe9fc1d,0xffe8ccaf,0x0003da47,0x001543bd,0x00240bae,0x002cf2fc,0x0044f19b,0x0047c130,0x004e7b84,
-0x0052ce01,0x00595385,0x006149b9,0x00654679,0x00643c25,0x00617038,0x0067f623,0x006d48bb,0x0020a548,0x0026e217,0x0022e436,0x0022ad75,0x0023df91,0x0020cdbf,0x001db2d1,0x001bd63d,0x0015b0da,0x00111cfa,0x000b4951,0x0006e84d,0x00021d50,0xfffb1b67,0xfffd1adf,0xfffc90cb,0xfffcd5b2,
-0xfffd4215,0xfffd2abd,0x000056c6,0xfffb13b6,0xfffb06f3,0xfff25657,0x001203f2,0x000f84aa,0x0007cec0,0x00071992,0x0009549d,0x000a6ee9,0x000d097c,0x000eab94,0x00118820,0x001b04cc,0x002478a4,0x0017c0c3,0x001ec77d,0x0006e696,0xfffd060f,0x00028e89,0x00074488,0x0003fa8c,0x00053055,
-0x0005bc2f,0x000c3e6b,0x0008128a,0xfff752e9,0xfff6f7fa,0xfffa094a,0x0013a0ff,0x0000e1b1,0xfffff3ae,0x00008a2c,0x00036f25,0x00050bb3,0x000add1c,0x00037635,0x000111da,0xfffde658,0xfffe312e,0xfffea250,0x00066f3f,0xfff2242d,0xfff2254d,0xfff8ebe2,0xfff74aa1,0xfff6d581,0xffef1db7,
-0xfffa53e2,0xfffb6309,0xffecdb6f,0xffffd150,0xfffffe94,0xfffbf464,0x0000b215,0xfff97860,0x00082852,0xfffeca8b,0x0003d3d7,0x00082a54,0x00251da4,0x001f65a3,0xfff62ceb,0xffedff92,0xfff8cb7b,0x00358033,0xfffda0bc,0xffed73d9,0xfff2044d,0xffffddbd,0x00117762,0x0028ba19,0x001ee378,
-0x00175dd5,0x000ecd44,0x000833aa,0xfffa28f9,0x0004eef4,0xffe0177e,0xffda89a9,0xffe96977,0xffe320be,0xffe368e2,0xffcfdc4e,0xfffaacb0,0xfffbcc70,0xffcfa453,0xfffd16f4,0xfffc1ed1,0xffdef666,0xffeec244,0x0005e740,0x002f79b2,0x0018ff9b,0x002a5195,0x00273eaa,0x00567f39,0x00465501,
-0xfff5b130,0xffdf87c1,0xffe4a0e9,0x00688910,0x000b1f0f,0x00088987,0x0004fe65,0x001a989a,0x0027e769,0x00451d0c,0x0026f4af,0x0014e1a0,0x000d8467,0xfffa7063,0xffe650e7,0x0000c087,0xffaf6508,0xffb3b7a2,0xffc12a83,0xffb6c65c,0xffb8d03b,0xff81cc83,0xffc14f2f,0xffcac1d3,0xff8f9529,
-0xfffb58fb,0x0008bb82,0xffd1b107,0xfff58fee,0xffd92150,0x00050390,0xffec29b4,0xfff4bb10,0x0006bdfd,0x007aa0bf,0x007aa438,0x0001e5c1,0xffcdbce6,0xfffef84c,0x00ad1023,0x000dbb11,0xffb3d68e,0xffb968a4,0xfff756f0,0x004a9c59,0x00959565,0x00817dda,0x006337cb,0x004e65c0,0x001d0c0a,
-0xfff65544,0xffe0f32c,0xffa79fc8,0xffc9031b,0xffd70d47,0xfff8bc93,0xfffb77d9,0xfffde9ad,0xfff1a5b4,0xffea58ee,0xffa9b64b,0xffea3a57,0xfff204d7,0xff7e14c7,0xffb4b9e4,0x00ce04fa,0x00f3f7a4,0x0150b6d2,0x01615062,0x0134cb2e,0x00513b54,0xffec7fc8,0x003cdfbd,0xffd93786,0xffa4dd32,
-0xff94ac62,0x00359e74,0x00dcaa11,0x015bbd8c,0x0079fd96,0xffc9be09,0xff5c8a08,0xff0842ac,0xff005f06,0xff2c6e05,0xff32b508,0xff6474e6,0xffadd69c,0x004bfe3f,0x00366830,0xfffffbae,0x000e5a4a,0x000046a9,0x000908af,0x0002f801,0x0016754e,0x00167323,0x0045a7a6,0x008cf0ea,0x00b5ef9b,
-0x00bf4f20,0xffa847d3,0xfff82ff1,0xffcfdd75,0xff804b41,0xff5cbd0a,0xfed2b3a2,0xff0e7e67,0x001bd494,0x003627fa,0x0085e9a4,0x00a36a94,0xff65e803,0xfec0ed40,0xfefa70e0,0xff72c5e2,0xffff7147,0x007e59d0,0x008d1f01,0x005f3a26,0x000de419,0xffe40639,0xffe40a99,0x0013d581,0xffeea723,
-0xffebe2fc,0xfffb12f1,0xfffb35ce,0xfffcfc96,0xfffc9c21,0xfffc06ae,0xfff5f112,0xfffa4316,0xffd094fe,0xffd9f813,0x002fed4e,0xffc53f4b,0x006263a4,0x01369846,0x00323e14,0x0047d271,0x0120ca16,0x01413b28,0x011f15a0,0x01011188,0xffcab6bd,0xff4567f4,0xff4bcfc3,0x00a0e15f,0x0127c212,
-0x00c134a0,0x0023a883,0xffc2bb4e,0xffbcbbc2,0xffaa2939,0xffd0fd73,0x00026717,0x0013f9f9,0x000a3f8f,0xffe8cb9a,0x0004e3c0,0x00097190,0x00042b78,0x0002d14d,0x00030e2f,0x00022566,0x00036a89,0x0003d303,0x0004de08,0x00167626,0x0007b255,0xff797eec,0xffeb3ad2,0xff28bdbb,0x00ba7485,
-0xff474b3f,0xfec67d8a,0xfe7567e4,0xfed219c4,0xffd8bfe9,0x016d76a2,0x00f06c6c,0x007f5e76,0xffbd0b95,0xffbdc30d,0xffa40497,0xffad6024,0xffa633be,0xffc1979f,0xfff587e6,0x002c78cd,0x00573f93,0x007268d7,0x006561f1,0x004c1a56,0x001269fb,0xfff506f3,0xfff7d34b,0xfffcfb98,0xfffc1a0b,
-0xfffc50c9,0xfffd0b48,0xfffcc5ef,0xfffd2159,0xfffad2ce,0xfffb3c20,0xffae81c9,0xfe62bef8,0xfe38785a,0x01998134,0x0132d1f6,0x0080b88c,0x00355233,0x002e2a1d,0xfffa8bfa,0xffa0520a,0xff582324,0xff4727bf,0xff63f6e3,0xff9013e8,0xffa4a726,0xffcb05ee,0x0010478c,0x00226de2,0x00335568,
-0x003aa7c5,0x0038b3a7,0x00456527,0x005ad58a,0x00764629,0x007e7feb,0x005669aa,0x002833dd,0x000acf56,0x00043dcc,0x00074724,0x0006d735,0x0005ac79,0x00038225,0x0005b7a5,0x0005ecba,0xfffe336c,0x0042de03,0x00ae64e6,0x01992f32,0xffcc28f1,0xfff78098,0x0011f402,0xfff20af4,0xffcae838,
-0xffa66b6f,0xffafde86,0xffbdae27,0xfff72741,0x0007d29b,0x00016400,0x0009d4ae,0x0009a9dc,0x000481d7,0xfffeef96,0xffeea6d3,0xffd0f48b,0xffc87602,0xffcaf97c,0xffcfef8c,0xffd659eb,0xffeeeec9,0x001193c9,0x0011d5d1,0x00061419,0xfff21a8d,0xffeec2b1,0xfff0a7c2,0xfff4773a,0xfff8f601,
-0xfff7ecf2,0xffe842c8,0xffd9ff7f,0xffc99fea,0xffb97815,0xffbd38c7,0xffb1325f,0xff93e7a5,0xff90458d,0xff9ad5da,0xffa083a1,0xffc868f1,0xffe1fbf3,0xfff6dd94,0x000faa9c,0x002f0664,0x004f7d28,0x00580b6a,0x005e88a4,0x0063769c,0x004e4d4d,0x003beaa2,0x002acf79,0x001f9720,0x0011fbb8,
-0xfffe8b23,0x0015ceed,0x002705c5,0x00383d20,0x0034f7f1,0x003b1db0,0x00384729,0x002eb502,0x001a987c,0x001aad67,0x0002ccae,0xfff42f2f,0xffda6c15,0xffd86dfa,0xffd306bc,0xffce6c1d,0xffbd18fe,0x00591798,0x0046b908,0x00479d97,0x0046499e,0x0041af51,0x0043c5e4,0x00458091,0x004993a3,
-0x0044af36,0x003ae533,0x003158b1,0x002912ab,0x0022ac57,0x001cc260,0x001d31e2,0x001f4a87,0x00200fae,0x001fcd3c,0x0022166a,0x001e2b3e,0x0020bbaa,0x0034fe17,0x0044689f,0x0053973a,0x0061bbdc,0x007756f7,0x0071063f,0x006c80a0,0x00689278,0x005f7f0a,0x0059e54e,0x00561cf4,0x00518861,
-0x004e8811,0x0050e59d,0x0049d9af,0x002f548d,0x002aefa7,0x002f4b25,0x00311925,0x00346bf5,0x00330d78,0x0031daa0,0x0032005f,0x002fda3e,0x0030186b,0x002fe39d,0x00302015,0x002f37ad,0x002cbd6e,0x002d78b7,0x002cb6f9,0x002c60bd,0x002be05a,0x002b1eff,0x002ca502,0x002a591d,0x002b245d,
-0x002754b0,0x0038cf78,0x0037ebc4,0x0039ac8d,0x00344950,0x0033548e,0x003011f5,0x003060cc,0x002ec2c7,0x002bc141,0x002eef2b,0x0030957e,0x003015b0,0x0030cbef,0x00340f6a,0xfff01fb9,0xfff70c79,0xfffc023e,0xfff9abc9,0xfffa6ee1,0xfff6eeb7,0x00008fb0,0xfffdd5f8,0xfff20747,0xffee1beb,
-0xffef5549,0x00016d5e,0xfff5a3be,0xfff47296,0xfff345e5,0xfff04a65,0xfff12ac9,0xfffb8f6d,0xfff51782,0xfff389e7,0xffef2480,0xfff141d3,0xfff20ef5,0xfffbdc91,0xffe55ecd,0xffe523a2,0xfff51321,0xffec434d,0xffedeeb2,0xffef319a,0xfff4df8c,0xfff44115,0xffeac764,0xfff4e823,0xfff33a38,
-0xfff08fa3,0xfff48387,0xfff396c7,0xffff1308,0xfff8d8fc,0xfff8f9ce,0xfff0ec37,0x001358a5,0x0014010b,0xfff8e8a5,0xffe81588,0xffec7c8b,0x001704ab,0xfff5b0c8,0xffe3acfc,0xffdadc25,0xffd1d9fd,0xffdf3f28,0x0006080c,0x0000859f,0xfffe49bb,0xfff3b18c,0xfff4e49e,0xffeaf93a,0xfffe8636,
-0xffcfc7a7,0xffcba04b,0xfff02fac,0xffca8193,0xffc726d3,0xffcbafb5,0xffed1d50,0xfff60d37,0xffdebf84,0xfff5159d,0xfff1d932,0xffde8e19,0xffeaea3d,0x00009330,0x00238941,0x0014170c,0x002184e5,0x000be173,0x0046118a,0x003ed0b3,0x000b8bae,0xffe45d66,0xffdf6e4f,0x0036c2b7,0x0005cc30,
-0x00007592,0xffef9454,0xffde86d9,0xffe60ee0,0x00216a5d,0x000699ed,0xfffc1b90,0xffebb7b9,0xffe91396,0xffdad76c,0x00016b97,0xffa3b39d,0xffad90c6,0xffe3a6e9,0xffc19950,0xffcfcc4a,0xffc83438,0xffe3cedb,0xffe1e92d,0xffc8f551,0xfff76777,0xfffaf93f,0xffd3d410,0xffed585c,0xffe73bae,
-0x0004b70f,0xfff5d927,0xffe9c3a9,0xffd4b8e1,0x00550012,0x006ea6e8,0x0026d3aa,0xffdc2e92,0xffee4175,0x005bea06,0x000d1e23,0xffb71e70,0xff8a9c29,0xff765cb1,0xffbac20c,0x003b00fa,0x0037c91c,0x0026fa8b,0x000b7f02,0xfff399d0,0xffdc2075,0xffe829fc,0xffb33080,0xffe4df34,0x0000dfbe,
-0x0004f47e,0x000eeb81,0x000f5fc1,0x0004d17d,0x0004af5f,0xfff2497a,0xfff99bc6,0xfff94023,0xffadce78,0xffc69f1a,0x009cf999,0x00a8d2df,0x011fbc06,0x0154d0e2,0x015fc7f0,0x006b9451,0x0000ea8a,0x004d69d1,0xffea435b,0xffbf44b2,0xffc00bfc,0x00389288,0x00eb346b,0x018b4278,0x00f7fcd1,
-0x0053e257,0xffcd5db5,0xff56a1b0,0xff3eb4da,0xff66cc53,0xff6ccdc9,0xffb1a937,0x0003b58c,0x003685df,0x0013b0ab,0xfffe01b1,0x000063c3,0xfff9883b,0xfffa6f39,0xfffd9fd4,0x0000ef3a,0x00020445,0x000916ac,0x00390de9,0x0063c816,0x007cb8b2,0xffd0da58,0x003471ac,0x000735c1,0xffb37577,
-0xff7d3efe,0xfeecfb9c,0xfef6f186,0xffd49636,0xfff7d8f0,0x006a644e,0x00e5272b,0xffc1c632,0xfef9b834,0xfedd6f5c,0xff4d14e9,0xffd5a4cc,0x004a9104,0x00505ae1,0x002345a0,0xffd47d0d,0xffd0d887,0xffe620d0,0x00054854,0xffeaacc6,0xfff76f3d,0xffff3d04,0x00008e9e,0x00025de1,0x0002b3a5,
-0x00018be0,0xffff203c,0xffffc3aa,0xfff778e9,0xfffac615,0x000a8d96,0xffd9be0f,0x00da4722,0x0160409c,0x00a0b9bd,0x0054613b,0x004c3b48,0x0123b2aa,0x0140dfe8,0x00f6f35b,0x004b86fb,0xff9a5cbb,0xfef6f4b0,0x0032f5c7,0x00f464be,0x01344f8a,0x006f2fe8,0xfff64a15,0xffe57692,0xffd4a92d,
-0xfffb9e7c,0x0037b62c,0x003351bc,0x001caaf1,0x0001514d,0x000b8064,0x0003cdbc,0x0000e45e,0xffffb38f,0xfffede4b,0xfffe9a34,0xfffe77ab,0x000125e5,0xfffee325,0x00046181,0x000dbd0a,0xffb69814,0x002fcc01,0xff28b5e6,0xfea65400,0xfe7da5ea,0xfea5ac04,0xfe801004,0xfe65549e,0xff14bd16,
-0x0088e5f2,0x010a485a,0x00ef8b38,0xffd39081,0xffd19cb2,0xff8ccf83,0xff80f2a2,0xff7c0741,0xffa37892,0xffcec723,0xfffca1b2,0x001e21db,0x003e40ae,0x003de0b6,0x001944c7,0xffebb3be,0xfff7d4eb,0xfffd6ac5,0xffffb8c9,0xffff9911,0x0000d94d,0x000150fe,0x00017d3a,0x0000779c,0xffff87d0,
-0x0000fcea,0xffd96ae4,0xfee6862e,0xff064ee0,0x01b88b22,0x0171602e,0x005296ff,0xffb8855b,0xffdb38a2,0xffc28485,0xffaa783b,0xff86c83a,0xff6099d1,0xff6a439a,0xff88bf3c,0xff9cf5fb,0xffc51ebf,0x00088bef,0x0020e691,0x0034c6ee,0x00452736,0x0054898d,0x006ba127,0x007eae5f,0x008f2f4e,
-0x007561ca,0x0034b35e,0x000efe31,0xfffe24fd,0x00026ce1,0x00005078,0xffff2651,0xfffdcf1b,0xfffdeaed,0xfffcfe4a,0x00026983,0xfff97b01,0x0041e00f,0x0083fa2f,0x016beb52,0xfffff511,0x002c8a47,0x00321c7c,0x002645b5,0x00088d29,0xffe3fca4,0xffd4f8c6,0xffc1e3d5,0xffd7ba1c,0xffd77f23,
-0xffcb64c8,0xffcb92eb,0xffc2532f,0xffb49cbd,0xffbdd164,0xffc654c4,0xffc8cda2,0xffd05427,0xffdc98d5,0xffe42934,0xfff150cf,0x0009c2b8,0x00193010,0x00098263,0xfffec97b,0xfffb7d19,0xffff3364,0x0002beeb,0x0003d6e3,0x00066d9e,0x00062c28,0x0002d78a,0xfff74721,0xfff34a29,0xffe75f6b,
-0xfffb5410,0xff964d66,0xff8a805f,0xff95d648,0xff9c5c5c,0xffa5c9cc,0xffbadf63,0xffc74171,0xffce5d56,0xffe7462d,0x0003b211,0x002146ae,0x003adf52,0x0052ec4f,0x006a6361,0x00581da9,0x0045a84f,0x0033fe40,0x002af3e3,0x00230eac,0x00157487,0x001beedc,0x002369f6,0x002930f6,0x0019e203,
-0x0012be44,0x0002fa30,0xfffe7fc8,0xfff1539e,0xfff4502a,0xffe6a2fa,0xffde4bbd,0xffcd9436,0xffc05cf8,0xffb041c4,0xffa51fc0,0xff9af667,0x000fab9b,0xfff8bc33,0x00018c96,0x000992da,0x000fb85a,0x0018b760,0x00237ffd,0x002e5c93,0x00361b5f,0x00389a88,0x00398526,0x003a4641,0x003b0753,
-0x00403704,0x003e026f,0x00413017,0x004246d9,0x00433689,0x00448a61,0x00429e1b,0x0040354f,0x004d3f38,0x0054c063,0x005b6466,0x0061fd20,0x0067b8a8,0x005bc2ed,0x005062d7,0x00473030,0x003921bf,0x002ea678,0x0029a71e,0x0022d6c5,0x001f9a91,0x001beea1,0x000e9d1d,0x002e0c85,0x00280c54,
-0x002fe968,0x00331860,0x00375c60,0x00396bba,0x003ae27c,0x003cd1db,0x003e469b,0x0041b406,0x0045b75a,0x0049dc64,0x004ce3d6,0x004f4a87,0x004eaddc,0x004dcb14,0x004ceb5e,0x004bada1,0x004a4f0c,0x004b3fcf,0x004687ba,0x0044274f,0x00404ffc,0x004a526a,0x0048386b,0x004d9cf3,0x00489d3e,
-0x0046539c,0x0041ce8a,0x003fd8aa,0x003be7ab,0x00357096,0x00337490,0x0031e51a,0x002fabe5,0x002eda30,0x0051ded8,0xffe4d97f,0xffed6163,0xfff1314e,0xfff13f26,0xfff15e92,0xffe9bc19,0xfff58503,0xfff4f70d,0xfff07b5f,0xffe81c0f,0xffe6c73f,0xffecbdcd,0xffedfec8,0xffed14aa,0xffe78085,
-0xffdfdafc,0xffdf53ee,0xffea9747,0xffe7c64d,0xffe7554a,0xffe1c88d,0xffe5b634,0xffe728ab,0xfff1f708,0xffdb76da,0xffdcb0e8,0xfff253d3,0xffe3cd5a,0xffe49605,0xffec7e49,0xffee7c87,0xffef6767,0xffed8070,0xffeb6ea6,0xffe7c622,0xffe88ed1,0xffeae964,0xffeea20c,0xfff59c83,0xfff4b618,
-0xfff16229,0xffddd2f9,0x00013728,0x0007c314,0x0000f520,0xffe696c3,0xffe27aeb,0xfff06e61,0xfff4b39b,0xffe58ece,0xffca6880,0xffaee007,0xffb439e7,0xffdeecea,0xffe3d5f9,0xffe81709,0xffdc101a,0xffe4898e,0xffdf34ac,0xfff4f75a,0xffc98782,0xffc4f906,0xffecd347,0xffbb5be4,0xffba4ddc,
-0xffd48db5,0xffe8d82c,0xfff1be0a,0xfff0a547,0xffec5ab1,0xffe65058,0xffdef7e0,0xffe60d86,0xfffc6f01,0x001721c0,0x0012e5da,0x001b10a5,0xfff1ef11,0x0031d173,0x0035252c,0x002b4e6c,0xfff02e63,0xffdf80f2,0xfff5956d,0x000d47a7,0x0007db12,0xffdf70f4,0xffad816d,0xffaa7756,0xfff01fb3,
-0xffe5347e,0xffe55097,0xffcc6855,0xffd737c9,0xffd31d38,0xfff8295f,0xffadf7e7,0xffc1ce4f,0xfffc29e4,0xffe2623c,0xfff50817,0xfff73c2b,0xfffc2276,0xfff80685,0xfff94013,0xfff60428,0xffee2bd5,0xffdb8b7f,0xffe8cc8b,0xfff06209,0x0004ea12,0x000277d9,0xffe933c4,0xffaebe94,0x00271aed,
-0x0055dc48,0x0052dbcd,0xfff312f1,0xffdbec8d,0xfff0aa53,0x00186fd3,0xffdc5dd6,0xff75b7e6,0xff1836bc,0xff3c1fbe,0xffce2afb,0xffecb590,0xfff16559,0xffd182e3,0xffd3565c,0xffd277af,0xffec83a8,0xffdb9241,0x0008514e,0x0005d4c2,0x0009160f,0x0008c675,0x0003880d,0x0003530a,0x00027e02,
-0x0002622e,0x000178cc,0xfffb9051,0xffd62dba,0xffdb6611,0x006a5b47,0x00686323,0x00dc607f,0x0121a274,0x0165049c,0x009d40a1,0x00412232,0x006fecae,0x00109097,0xffeffac3,0x00047908,0x00421bad,0x00da1336,0x01703de4,0x014f7708,0x00d05c97,0x0023e280,0xffa1d22b,0xff784b8c,0xff8d936e,
-0xffa21da4,0xffeca687,0x002343b3,0x000c8bd0,0x00012498,0xfffbb04d,0xfffc6a8c,0xfffb46cd,0xfffe0e35,0xfffe0645,0xfffeb2e7,0xffffc7fd,0xfffe1f34,0x00073053,0x001e092d,0x003c1073,0x00071d6c,0x0056c33f,0x003e72b9,0x0005f029,0xffc6ced5,0xff38687c,0xff13dce3,0xff9bbbaa,0xffe18406,
-0x006132df,0x00ecce99,0x001a3866,0xff5807bf,0xfeea79c4,0xff2eb8cc,0xffa34ef6,0x000d1b90,0x0021dc71,0x0009e3c3,0xffcd977c,0xffe82d9f,0xfffa1ccc,0xfffa26ee,0xfff7533b,0x000018c6,0x0001d731,0x00020ccc,0x000276a6,0x0001523b,0x000170b3,0x000004da,0x00027b2b,0xfffe7dc3,0xfffc27c6,
-0x00080152,0x00079650,0x0113797e,0x0158daa0,0x00cb42a5,0x0038506c,0xff9f7e55,0x00eee1b3,0x01595b38,0x00f5f72f,0x00c78142,0xfffa51dd,0xfee52e34,0xffc6b441,0x00944281,0x014d54c8,0x00c3012f,0x00539458,0x0018a5f6,0x000b501d,0x001b38a7,0x003f05a7,0x0024e5bc,0x000eb628,0x0006dd26,
-0x00034aa2,0xfffff7fd,0xfffec859,0xfffe75e6,0xfffe84b0,0xfffe62e5,0xffff9567,0xfffd5a67,0x0001c38f,0xfff8c2b1,0x0015acb1,0xffd7c3a4,0x00313fb3,0xff143e64,0xfd1f3d64,0xfe8e4882,0xff4c5adb,0xff0f7472,0xfed8120e,0xfeed61ac,0xff783ab8,0x00d4da31,0x012a6f38,0x003ed4a2,0xfff7ab95,
-0xff8723c5,0xff799b4c,0xff6c77c3,0xff8d0e93,0xffaaff2a,0xffcc07f0,0xffdd180d,0xfff7c312,0x0001888a,0xffed10a2,0xffef6d4b,0x00025c04,0xffffabea,0x000199e6,0x00019d4a,0x00021fa2,0x00017557,0x00024b98,0x00012e45,0x0003bb53,0xfffee606,0x00079fa7,0xffa1fe31,0xffbf8128,0x0110ee4e,
-0x0102b5c2,0x0003dca2,0xff6d3ed3,0xff8481fa,0xff8c05bd,0xffb2486b,0xffc563a5,0xff8e148d,0xff79e25d,0xff891514,0xffa25b52,0xffcb2f34,0xfffcdd4a,0x0014eb04,0x002d9e97,0x004e72b8,0x00649f4a,0x00797150,0x008255bd,0x007bde57,0x00496c48,0x00106dc9,0xfffdc801,0xfffe801d,0xfffe0e08,
-0xfffc9b22,0xfffcdd51,0xfffc97a0,0xfffce505,0xfffaacce,0xfffea5b7,0xfff513b7,0x000cce4f,0x0054c5ef,0x00af7595,0x003c4371,0x00610c90,0x0059c4fa,0x0060a4c4,0x0044c324,0x001db790,0xfff35ecd,0xffcc71b5,0xffbbed80,0xffb5a0ee,0xffae506e,0xffae2d62,0xffa2e7c3,0xff8f060f,0xffa677d4,
-0xffbd58ac,0xffd163a8,0xffe2f200,0xfff5c19b,0x000344d8,0x00155f34,0x0020e934,0x001a0358,0x00068828,0x0002312a,0x0005fda1,0x0006155b,0x000719fb,0x00062399,0x0007c86b,0x000883b9,0x000ac990,0x00092eeb,0x0013791a,0x00142aa2,0x002c532b,0xffac571a,0xffad02f5,0xffb9fb5a,0xffb8ceaf,
-0xffc1741a,0xffcb2760,0xffd0d43b,0xffd00794,0xffde866d,0xffea823e,0xfff7c279,0x000ff990,0x0028c3ef,0x0041beb3,0x003a0fbe,0x0030889c,0x002778f3,0x00275a1c,0x0027533d,0x00283efd,0x001daf5a,0x0014d726,0x000df731,0x00002e88,0xfff7433a,0xfff02310,0xfff15ec0,0xffefb5dd,0xfff31d8d,
-0xffef9253,0xffead1cb,0xffe29c7c,0xffd288de,0xffbff84e,0xffb15a6a,0xffb0cdad,0xffd9bc2f,0xffc72bcb,0xffd6033e,0xffe5c53d,0xfff2ff1c,0xfffdbae7,0x000b8d31,0x001a3ee3,0x002786fe,0x003312b2,0x003c4f93,0x0043728c,0x0049372e,0x0054cbc6,0x0050e9a6,0x0052e411,0x0052c1d1,0x00531871,
-0x00520067,0x00524af8,0x00506bc9,0x004c619c,0x00471ba9,0x00417eeb,0x003c8324,0x0030e6bf,0x00240783,0x00177cd7,0x000dbe25,0x000192b5,0xfff7dd66,0xfff4845b,0xffef5e40,0xffef1b40,0xffea0884,0xffdc1e95,0x00282c0a,0x001d1ef5,0x00263e3c,0x0029378b,0x002d6846,0x003237a0,0x0035b67c,
-0x00388e0a,0x003be486,0x00402df9,0x00457685,0x004b30cf,0x00504f0d,0x0055ce5f,0x00541269,0x00533bef,0x00522951,0x0050cf90,0x004fae88,0x004e0cc2,0x004f023c,0x004e526a,0x0050fdfc,0x00487d76,0x004a7f26,0x0052daf0,0x004fba47,0x004c6ff9,0x0047fb58,0x0044576f,0x003fa420,0x00381f16,
-0x00306e91,0x002918d9,0x00302dda,0x002b19c5,0x0053edd5,0xffe12821,0xffe7ecbf,0xffeb0514,0xffed6a80,0xffed4aa1,0xffe3d0fc,0xffeeef55,0xfff0a439,0xfff4f7ed,0xffe8823a,0xffe4b607,0xffdec73a,0xffebb555,0xffebdd47,0xffe3cf77,0xffdb639f,0xffd98920,0xffe0316b,0xffe20eba,0xffe274a5,
-0xffde8625,0xffe0cca8,0xffe0abff,0xffe70a6a,0xffdcb895,0xffdd55e4,0xffebac96,0xffdb6ea9,0xffdaf52c,0xffe6dca4,0xffe7c231,0xffea3a35,0xffefac04,0xffe62e27,0xffe37882,0xffe23907,0xffe4dbf0,0xffe90721,0xffed42e5,0xfff22bba,0xffedb7be,0xffd6098b,0xfff3398d,0xfffe7981,0x000d9bbe,
-0xffeba95e,0xffdf54e1,0xffd114ab,0xfff4c197,0xffed598c,0xffca225f,0xffaaaf8b,0xffa6ff27,0xffc38c06,0xffd28497,0xffdc21a8,0xffd32c06,0xffdc38d9,0xffdea54b,0xffef1218,0xffcb4868,0xffc61916,0xffe99651,0xffca99e8,0xffcfe45b,0xffe88b55,0xfff0e798,0xfff6e070,0x0001cf57,0xffe9df76,
-0xffe0bad5,0xffe4294e,0xffe4ad55,0xfff73fd5,0x00038324,0x000dcc4d,0x00106a1a,0xffe1420e,0x0018fd8f,0x0024ba7b,0x0048c30a,0xfffdde36,0xffe41a78,0xffbd9cfe,0x000e559e,0x000f044e,0xffdc7102,0xffa47a76,0xff97876b,0xffc6fd47,0xffd068d4,0xffda2efa,0xffc1351d,0xffd27685,0xffd67c33,
-0xffebeaef,0xffd0cf01,0xffecd0cc,0x0006f87b,0x00014fc7,0x0009a9a2,0x0003ffc2,0x0003ae86,0xfffef2ee,0x00054afc,0xfffb60d4,0xffeb8c2d,0xffe28839,0xffea313a,0xfff05850,0xfff774bc,0x00056cc0,0xffe9f268,0xffa185ab,0xfffb060e,0x00374c73,0x00788039,0x0009b3d2,0xffcd415f,0xff919e97,
-0x0011d02a,0xffff0dc5,0xff84a81f,0xff11f72a,0xff0f380c,0xff771658,0xffb462f3,0xffcf5687,0xffb64f80,0xffc89bef,0xffda408c,0xfff48a29,0x0001a1ea,0x000b6b1c,0xfffe1798,0xffffe8c8,0xfffd7198,0xfffe51f8,0xfffeedf5,0xffffe3cd,0xfffde105,0x000269f5,0x00044b79,0xffeefe16,0xffe89bdf,
-0x00415a51,0x00423271,0x0081204d,0x00bf261e,0x0134a948,0x00af3026,0x00695efd,0x006d7687,0x003b8ffa,0x002f7fc4,0x00417cf9,0x004a655d,0x00a8a314,0x01174274,0x015b2386,0x0114d89c,0x00632cba,0xffefe0c0,0xffb87842,0xffb32f7a,0xffcfc6e7,0x000ce8f6,0x000f867e,0xfffc7de8,0xfffd35f5,
-0xffff11b6,0x00009263,0x0000943d,0x0000e074,0x00007cce,0x000051ec,0x00006623,0xfffec0f4,0xffffd38c,0x00022772,0x001896f1,0x0025aa20,0x004dcd32,0x00575d91,0x004c6207,0x00194802,0xff9a0a58,0xff5ee2a0,0xff8d2485,0xffe4113c,0x004e1cfb,0x00b099e5,0x005121fc,0xffc20a70,0xff3155e1,
-0xff2c6131,0xff6b1036,0xffc2cf8c,0xffeed941,0xfffbd575,0xffeaf055,0x0007880f,0x000253d4,0xfff7afad,0x00013bc3,0x0001cc10,0x00006848,0x000007aa,0xffffb6a0,0xffff9cfa,0xffffe0d4,0xffffe504,0xffffb096,0x000148fa,0x000030fc,0xfffd7fbd,0x0017667d,0x00e85192,0x011e2984,0x00a7ab07,
-0x0007ccff,0xff513026,0x008285ce,0x010e09e4,0x00bf93b5,0x00df7ee8,0x00310f29,0xff1a078a,0xff83e2cf,0x0025f244,0x00f7d050,0x00ed22c3,0x00b35dbc,0x0058b516,0x00468c85,0x003510ad,0x002c319f,0x0006ca33,0xffffb094,0x0004bb66,0xfffe5503,0xffff1735,0xffff5b8b,0xffffd4e1,0x00000c33,
-0x00001c35,0x00001eba,0xffffcee1,0x0000e9fe,0xfffbe3ad,0x00057ea1,0xfff2a9c4,0x001808a3,0xff164f26,0xfd237fe4,0xff0943c0,0xffe5bed5,0xffb47740,0xff8d62e2,0xff381121,0xfee781b4,0x0045b88e,0x00e183f4,0x00aa5c14,0x0019cea0,0xff9a1122,0xff8bf1b1,0xff7383a3,0xff8241d4,0xff93b56c,
-0xffa99b04,0xffb03348,0xffc0236a,0xffd4adce,0xffe6b024,0x00024747,0x0000c26a,0x0001743b,0x0000f844,0x000082a1,0x0000208c,0x000015ad,0x00000815,0x00003796,0x0000626f,0x0001c1bc,0x0001716a,0xfffe371c,0xfffcacfa,0x0005b223,0xfff2d93f,0xffced6c5,0xff93d891,0xff763cee,0xff93659c,
-0xffc60527,0xffea08e6,0xffb8f1b2,0xff927842,0xff93d706,0xffa9cb19,0xffce4a5b,0xffe830ab,0x0001a50c,0x001f582f,0x0048d20b,0x005d8800,0x006a81f9,0x006c0eb8,0x004f9d4b,0x001ed057,0xfffaefb5,0xfffd4538,0xfffde614,0xfffde6aa,0xffff2772,0xffff6389,0x00000034,0xffff8ef5,0x00003e40,
-0xfffd0742,0x000196e5,0xffef6f49,0x001b27b3,0x00025394,0x00575980,0x007875cf,0x00695c98,0x006dc9d3,0x004d0ac2,0x002a03ab,0xfff8e6de,0xffd964df,0xffb25af1,0xffa84700,0xffa1d0f3,0xffa74b7a,0xffa3b10f,0xff966a1b,0xffb8fdcf,0xffd12d09,0xffe1c5b9,0xfff90f96,0x000eb3ce,0x00226e95,
-0x002a996a,0x0024d88d,0x000d1792,0x00044f51,0x000546c8,0x000395dc,0x00020cc7,0x0000ec4c,0x00001b8b,0xffffbf02,0x000103d7,0x00014b72,0x0006a313,0x00080ac7,0x001e7897,0x003661c0,0xffccb1d7,0xffd085b0,0xffd7b3ff,0xffd2b0e0,0xffd6ae1c,0xffdae531,0xffddb0f4,0xffda185d,0xffdff080,
-0xffe00f87,0xffe03491,0xffe815e2,0xfff22591,0xfffb875c,0xfffe6447,0xffffad1e,0x00014cbb,0x00070d3e,0x000a779c,0x00144cfe,0x00059492,0xfffb1bcb,0xfff65957,0xfff0435f,0xfff213a9,0xfff96947,0xfffc51d9,0xffff7ff3,0x00013e5c,0x00027b85,0xffff9d1e,0xffff3494,0xfff056d9,0xffe2d028,
-0xffd34396,0xffd20f26,0xffc2b18b,0xffbe9440,0xffcc6279,0xffd997b6,0xffe53978,0xffebeac1,0xfff55587,0x00004ef1,0x000b039c,0x00163e43,0x00209a0e,0x00285217,0x002f22be,0x00397763,0x00392a5c,0x003ba451,0x003d5a8b,0x003f5567,0x00402574,0x00441b6a,0x0040c6a3,0x00302533,0x002441b2,
-0x00191ed2,0x000daecd,0xfffeb052,0xfff706bb,0xfff0bf6e,0xffea12dc,0xffe35049,0xffdc1244,0xffd77d24,0xffd35720,0xffd27a65,0xffce8d4a,0xffc961f8,0x000c7ed9,0x000557ea,0x000a58c0,0x000c40e4,0x000efc87,0x001362ae,0x0016a76c,0x0018cc4b,0x001b8d63,0x001e7d45,0x0022157e,0x00269d00,
-0x002b07b3,0x002fef30,0x002f6e2b,0x002fc75d,0x002fcda9,0x002fd537,0x00300796,0x002ed6b9,0x00318634,0x00324dea,0x003856ef,0x00267bc1,0x002a81a3,0x0030bf5d,0x002d4dcf,0x00285e96,0x00243d85,0x00202cbe,0x001cbeb1,0x0017d24b,0x0011f7a0,0x000b762c,0x001530a9,0x000eb3a9,0x002ca384,
-0xffe51aa7,0xffe9acdc,0xffea0a0f,0xffee21c0,0xffee3d91,0xffe71bf6,0xffedd396,0xfff02086,0xfff932b7,0xffec455d,0xffe7a858,0xffdca314,0xffec9637,0xffedde43,0xffe759b6,0xffe1f37d,0xffdfb6aa,0xffdfedb6,0xffe46894,0xffe58584,0xffe4b627,0xffe6298a,0xffe5b9d7,0xffe8b1ad,0xffe568b1,
-0xffe2971b,0xffe85114,0xffdd7900,0xffdf0abd,0xffea51d4,0xffeb181d,0xffee7296,0xfff77a45,0xffe98ad2,0xffe820ce,0xffe73714,0xffe7c2d1,0xffeac334,0xffe90725,0xfff1ccaa,0xffeed44d,0xffdd9aa6,0xffedd111,0xfff879d2,0x00109d16,0xffef99e6,0xffe0bd51,0xffc6d0e3,0xfff20add,0xfff26979,
-0xffd5f7f4,0xffc0c5ce,0xffb83986,0xffbf291c,0xffd03186,0xffdb7f2e,0xffda3cf8,0xffe4332c,0xffea0339,0xffe95ead,0xffd877c3,0xffde91af,0xfff708c8,0xffee9257,0xfff18521,0xfffad515,0xfffbf42e,0xfffd6c49,0x00075985,0xfff1e4b3,0xffe3f870,0xffe99d9a,0xffea9589,0xfff5125b,0xfff00513,
-0x00049521,0x000518c1,0xffe53d0d,0x0003f480,0x000e72fc,0x00469f36,0xfffecff0,0xffe579f8,0xffa81730,0xffffe711,0x00089a2a,0xffe16f99,0xffbdcf3b,0xffadf9cf,0xffb8e920,0xffccdf56,0xffdadf1a,0xffcf7cbd,0xffe16b79,0xffe493d5,0xfff1e880,0xfffd0628,0x00064ee1,0x00054691,0x00050d62,
-0x00062ba2,0x000287b8,0x00025b24,0x00003341,0x00002d05,0x0003159b,0xfffc7c90,0xffeecc83,0xffede8f6,0xffef8a60,0xffe643fa,0x00002894,0xffef98fa,0xffbb76d7,0xffe61340,0x00197027,0x00705cd2,0x00093430,0xffc4880b,0xff6e8794,0xfffa45af,0x00082337,0xffa95ece,0xff5839ae,0xff3e558c,
-0xff5edc52,0xff9db8f4,0xffc32cda,0xffbe9f20,0xffd873c1,0xfff0dd5f,0x0001c32e,0x0003a6e0,0xfffe205c,0xfffd75c1,0xfffde227,0xfffd80f1,0xfffe82fb,0xffff429c,0xffffe180,0xffffcad9,0xfffef97a,0x00036686,0x0002066c,0xfff4bd64,0x0022aaab,0x0027a4c2,0x002d0b45,0x00556c11,0x00d05a19,
-0x0087f797,0x0058fdcb,0x003381ff,0x00487015,0x004e5f0d,0x00432eb5,0x0031deff,0x0056c723,0x009a80d5,0x0101a0f2,0x00f15240,0x00755462,0x0029c98e,0xfff6bdc0,0xffe13ba0,0xfff9b02d,0x000c91be,0xfffe8417,0xfffec668,0x00001b3d,0x00016cd1,0x0000e8f7,0x000120b5,0x0000cd7d,0x00004fdd,
-0x00000c8e,0x00009b55,0xffffd295,0xffff1ba5,0xfffe7943,0x0006f5c1,0x00209786,0x002a9215,0x004838c2,0x0060adc3,0x004a14ac,0xffec530a,0xffb373f1,0xffa5f82e,0xffedafe8,0x002fa4ba,0x00612711,0x005cdfcc,0x000ce7c4,0xff8de577,0xff4eeaae,0xff50981b,0xff8c31c8,0xffbc5879,0xffe1fe19,
-0xfffbbf5d,0x000b7735,0xfffdc2d4,0xfffebc5d,0x0001bae6,0xffff8b6c,0xffff9400,0xffff5755,0xffff86b9,0xffff832e,0xffffc919,0xffffa4cf,0x00002381,0xffff92c9,0x0000cf32,0x000143b4,0xfffc59ab,0x0082e24a,0x00bd387b,0x00690052,0xfff30cdc,0xff6352c8,0x0016fcbd,0x008ea8d3,0x008266ce,
-0x00ad09a7,0x00453fcd,0xff812896,0xff86aff4,0xffdf2fde,0x007b6409,0x00ce4405,0x00d1b800,0x00852ef6,0x0067515b,0x003f8a69,0x00188500,0xfffa215c,0x000177d4,0x00009099,0xfffed3b5,0x000050f9,0x0000388b,0x00007749,0x000061a1,0x00005873,0x00007881,0x00000767,0x0000af64,0xffffa3c0,
-0x00013b48,0xfffd3f79,0xfff98d26,0xff5f199a,0xfe392572,0xff64d409,0xfffb74e3,0x0026957b,0x000683c2,0xffa5f912,0xff212e04,0xffd29ac7,0x0063e03e,0x00cea5bb,0x00449c1d,0xffdc171f,0xffb38e12,0xff9e1dd9,0xff9be5cb,0xff9b8600,0xffaa5779,0xffaf57a4,0xffb3d52c,0xffd28807,0xfffd36f4,
-0x000323fb,0xfffff6a0,0x00006a44,0xffff8547,0xffffa00c,0xffff816e,0xffff6ead,0xffff6739,0xffff7de1,0xffff47de,0xffffdc94,0x00009682,0xffff0548,0x001490df,0xff7d5083,0xff35f42a,0xfffb8243,0x00227856,0xffe54a6e,0xfff39e7a,0x0000d0ce,0x0002298e,0xffe04483,0xffbac181,0xffb9d915,
-0xffbd7201,0xffd6fdbd,0xffe01a95,0xfffa597c,0x00139f14,0x003220e2,0x0042b86a,0x004b8f7e,0x004f06e1,0x002e930a,0x0002ca42,0xfffa4c99,0x0000737c,0xffff2ae4,0x0000cd47,0x0000894a,0x0000ed97,0x00011f25,0x0000f581,0x000167d1,0x0000db99,0x000171cf,0xfffddf93,0x00034681,0xffe45d98,
-0x00558c11,0x00637fbe,0x004ba2e5,0x00426483,0x002cbff0,0x0017cf04,0xfff6f71e,0xffec017e,0xffc89fea,0xffbd7dd8,0xffb56a11,0xffba5c13,0xffbd162d,0xffbd6ffa,0xffde7371,0xfff201c7,0xfffbbe4b,0x001138fc,0x0021c4ce,0x00320346,0x003018d8,0x0019fd31,0x000221f3,0x00037906,0x00001858,
-0xffff22e1,0xfffe932e,0xfffe1a00,0xfffdbc67,0xfffd8c2d,0xfffda715,0xfffc913f,0xffffa423,0xffff4f41,0x0004edfb,0x00257444,0xffef9acd,0xfff7fad0,0xfff90e16,0xfff4048f,0xfff0e63c,0xfff042bf,0xfff0a5f8,0xffed42d2,0xffeb81a8,0xffe611a6,0xffdf41bf,0xffdc6f19,0xffdb189f,0xffd79488,
-0xffddf88e,0xffe394c7,0xffe95501,0xffee83e3,0xfff10a86,0xfff99793,0xfff12739,0xfff004b1,0xfff5de81,0xfffa9dd4,0x0000a431,0x00031d48,0x0003580e,0x000497ca,0x00053130,0x0005d44a,0x0005d79d,0x0007fe79,0x00053eb7,0xffff0bce,0xfffa9c92,0xfff8f0b1,0xffd37870,0xffd7ddba,0xffde7598,
-0xffe47aed,0xffea3f48,0xffed9bc7,0xfff15123,0xfff6434e,0xfffba164,0x00019c07,0x00078580,0x000bb933,0x000f9867,0x00146517,0x00175b22,0x001a44c5,0x001d9ba0,0x0020b2c6,0x00233936,0x0028df01,0x0026a694,0x00132c7f,0x0006c5b0,0xfffcfc58,0xfff7e253,0xfff5d59c,0xfff51ebd,0xfff36817,
-0xfff17e21,0xffef7277,0xffee2a3f,0xffe842dc,0xffe27dc6,0xffdcf563,0xffd81cb2,0xffd83c67,0xfffa7d45,0xfff7ff5f,0xfff94749,0xfffa73ee,0xfffbbc4b,0xfffdb1f6,0xffff60cf,0x00006832,0x00014a32,0x00023d5e,0x00039188,0x00058f69,0x0007c621,0x000a0f25,0x000afb8a,0x000c14e4,0x000ce812,
-0x000e0947,0x000f2b3f,0x000f1275,0x0011d309,0x0013413f,0x0017ed64,0x000994fa,0x0009ff82,0x0008f112,0x00058bd2,0x0001fa36,0xffff1b2c,0xfffc17b9,0xfff96afb,0xfff80b7e,0xfff81b84,0xfff75b55,0xfffdb974,0xfffb1fef,0x00085fe6,0xffebb4ce,0xffed8d05,0xffecf32a,0xfff0b6a8,0xfff148fb,
-0xffee7f9a,0xfff04385,0xfff1aa51,0xfff9ae0f,0xfff03156,0xffecb5c3,0xffe448f6,0xffeef97b,0xfff06b82,0xffed4af2,0xffebcabc,0xffea3bb4,0xffe711e2,0xffeafb0d,0xffec4907,0xffede5fb,0xffee9978,0xffee79d1,0xffe93ba1,0xffebfb14,0xffeae0c2,0xffedf2ec,0xffeab35f,0xffec7a3c,0xfff1f536,
-0xfff1ec4b,0xfff42787,0xfffaba6a,0xffef50c1,0xffed51b9,0xffeb36cb,0xffed1b9f,0xffee5598,0xffea23d3,0xfff24f02,0xfff1bdbc,0xffeb2ac3,0xffef2d31,0xfff53fae,0x00080634,0xfff062f5,0xffe52df8,0xffd1c80d,0xffeec3fe,0xfff2476e,0xffe38a2f,0xffdc07f7,0xffd48d14,0xffce6bf8,0xffd97e23,
-0xffe294b6,0xffe82946,0xfff0bd9d,0xfff355cc,0xffef6ac6,0xfff6f7b6,0xfffcab89,0x00025897,0x0000d5d3,0x000103c1,0x0001b4ac,0x00016ae0,0x0000ab16,0x0002eb63,0xfffe978d,0xfff6534f,0xfff0fa7f,0xfff0eca2,0xfff35bb3,0xffe57cf1,0xfffacc34,0xfffbb1b2,0xfff2dd47,0xfff9104d,0xfffcd6c9,
-0x002a3a71,0xfff7d789,0xffe6bb39,0xffb9c1ec,0xfff02f30,0xfffafaf6,0xffe8a3b9,0xffdea504,0xffd325bb,0xffc79c40,0xffd803d5,0xffe3be90,0xffe77a59,0xfff48fcf,0xfff9a6ba,0x000222eb,0x00046c3a,0x00013bf6,0x00000a86,0x000032cd,0x0000394e,0xffffa1ec,0xffffec55,0xffffdf5a,0xfffefe2b,
-0x000143d6,0x0003837f,0x000092f1,0xfff86ea9,0xfff678cb,0xffdd05bb,0xfff7a396,0xfff43b8e,0xffe22648,0xffe76ad8,0x000366c0,0x0042ffc0,0xfff9a5ed,0xffc7ab22,0xff8c2de7,0xffe5d9b1,0xfffbec13,0xffcd1506,0xffad2716,0xff92a1a0,0xff839af3,0xffaa59cd,0xffc9599b,0xffda53d9,0xfff333c4,
-0x0000ec06,0x00003815,0xfffdbe12,0xffff3222,0xffffdea9,0xffffb3ca,0xffffccad,0x00003d05,0xffffee88,0x00002655,0x00002cb5,0xffff6dab,0xfffe3e0d,0x00013b97,0x0000ed29,0x000ad6e3,0x0013ad26,0xffff2cd5,0x00123b62,0x0062c08f,0x0047e9f9,0x002f4088,0xfff97521,0x003d7084,0x004c39fa,
-0x0029a4ec,0x00121267,0x0014987f,0x0039e501,0x00875998,0x0096b7a0,0x0068ff11,0x0044e3c5,0x00211ff8,0x000ac3ff,0x0006b41f,0x000004a7,0xffffce33,0x0000dbf1,0x0000abf0,0xfffff32e,0x00003393,0x00001ce8,0xfffffb5a,0x000017c3,0x00000eca,0xffffa6d5,0x00009f3b,0x00005edf,0xffffa69e,
-0xfffeddbf,0x00048f97,0x001a08a1,0x002d6101,0x004de47a,0x004b3b03,0x001b0346,0xfff238d0,0xffc9ecbd,0xfff2e878,0x00139c07,0x002da82f,0x00502740,0x002f518b,0xffd9f9c5,0xff952c79,0xff75d087,0xff888e63,0xffa8250e,0xffcc0786,0xfff13b65,0xffff7b6e,0xfffe2bad,0x0000c1a6,0xffff48d8,
-0xffffd59a,0xffffe1ce,0x0000006d,0xffffe77a,0x0000082a,0xffffdd14,0x000041e9,0xffff78f6,0x0000f23c,0xfffdeb1f,0x00039fec,0xfffa512e,0x00204317,0x005629a4,0x002c8514,0xffee89d9,0xff9b1687,0xffd065a5,0x0018fc8c,0x0042d205,0x005ee9d0,0x0037e890,0xffd51856,0xffa7f5ed,0xffc49b4f,
-0x001dab01,0x00772456,0x009a1f44,0x007e6280,0x00604d9e,0x003b7619,0x0010cbcc,0xffffb81b,0x0001472f,0xfffed910,0x0000c11f,0xfffff5a9,0x000035f9,0xffffffae,0x00000f4b,0x000012d2,0xfffffb2f,0x00003ffc,0xffffc9b9,0x00009ac9,0xfffecb7c,0x000411a2,0xfff3f1dd,0xffdaed9d,0xff3b300d,
-0xff98e003,0xffdff53a,0x005bb33c,0x00228368,0xffdefdf6,0xff95df0c,0xffa8ca50,0xfffcfb99,0x008ae47a,0x0053014f,0x001ca859,0xffdefe3a,0xffd15dcb,0xffc6b095,0xffbd624c,0xffc64885,0xffcd8f41,0xffcdd7bf,0xfff13bd6,0x000504c0,0xfffeb0e3,0x00002c9f,0xffff980f,0x0000042f,0xffffe144,
-0xfffff12e,0xffffe2cd,0xfffffdfb,0xffffb0aa,0x00003d36,0xfffeb833,0x0001af92,0xfff99ec7,0x0011986f,0xffb99d94,0xff56354a,0x0048638b,0x0081ae97,0x005fa8b9,0x005010ae,0x003c55b6,0x001c333f,0xfffa8b99,0xffdaafb5,0xffd92805,0xffcbf109,0xffd81de1,0xffdc7080,0xfff3039d,0x000364d3,
-0x00120712,0x00219d84,0x0029050c,0x0032d5f0,0x0010909c,0xfff9618b,0x0001399f,0x00000885,0x0000676e,0x00001c22,0x00003012,0x0000300f,0x0000200f,0x000052b9,0x000004d6,0x0000a5e8,0xffffca9b,0x00020f6b,0xfffd554a,0x000bbd16,0x002e5828,0x00302190,0x000d0b90,0xfffa3c4a,0xfff3776a,
-0xffeb8c83,0xffe2413b,0xffe910c6,0xffdeed96,0xffdc07cc,0xffd6f36d,0xffd90c1e,0xffdc8482,0xffe40e9d,0xfff97fb5,0x00073832,0x000d264e,0x001a6957,0x001fe28b,0x0029a2fa,0x001d2fb3,0x0002fe1d,0xffff8fda,0xffff2864,0xffff64dd,0xffffac5a,0xffffafa4,0xffffae9d,0xffff9b63,0xffffa061,
-0xffff61f4,0xffffadf6,0xfffe4665,0xffff3cff,0xfffcdd0f,0xfffdfffc,0x00093738,0x0014f60f,0x0011b8f9,0x000e8366,0x0006f501,0x00015d6a,0xfffd6f98,0xfff7e06e,0xfff048d6,0xffe86fee,0xffdf8b37,0xffddaf41,0xffdc06c7,0xffd85c27,0xffdce24a,0xffe0f14f,0xffe531e7,0xffe70fa1,0xffe850af,
-0xffea916a,0xffecedb2,0xfff87546,0x0000f829,0x0001fea5,0x0000eb43,0x00006082,0x00006a58,0x00006ba8,0x00009222,0x000076e1,0x0000c0fd,0x00007502,0x00021638,0x0003600b,0x00037e97,0x000710aa,0xffe6fa79,0xffea6628,0xffeafade,0xffeab1f3,0xffeb6860,0xffecafce,0xffecc9cd,0xffed7e92,
-0xffef9e3e,0xfff1c37f,0xfff36328,0xfff41eb7,0xfff44578,0xfff46c9b,0xfff71e92,0xfff9425f,0xfffc322b,0xfffe9a74,0x00013dc0,0x00057b69,0x000583b8,0xfffa22b2,0xfff88a25,0xfffac2ba,0xfffe1b06,0xffffcde7,0xfffffbaf,0xffffa191,0xffffbb01,0xffffa522,0x0000134b,0xffff2446,0xfffcd2e4,
-0xfff5eb95,0xfff05a0d,0xffee715e,0xfff1f4e4,0xfff2d275,0xfff21dfe,0xfff2a444,0xfff2db08,0xfff2a684,0xfff2ca9f,0xfff2bb14,0xfff22fa3,0xfff1ad76,0xfff18db2,0xfff182d6,0xfff1e3df,0xfff20499,0xfff36036,0xfff45f3e,0xfff52e0a,0xfff65cf4,0xfff76626,0xfff7bfed,0xfffa2ed2,0xfffb56d4,
-0xfffc3a02,0xfff5274e,0xfff51e5e,0xfff4601f,0xfff307aa,0xfff228e6,0xfff12335,0xfff02392,0xffeee967,0xffeea8ee,0xffee8eae,0xffef0d3a,0xffefdc17,0xfff083f5,0xfff2a8da,0xfff7593a,0xfff7819a,0xfff7a86b,0xfff8daf4,0xfff97a34,0xfff96103,0xfff8f18c,0xfff934ef,0xfffc2daa,0xfff8c3d9,
-0xfff78a0d,0xfff4e310,0xfff7f6fb,0xfff88cb3,0xfff803a6,0xfff81413,0xfff796ff,0xfff5c56b,0xfff74ddc,0xfff7dbd1,0xfff91e2c,0xfff95850,0xfff859dd,0xfff3ddb9,0xfffce431,0xfffcd680,0xfffdc1bf,0xfffd674d,0xfffd95bd,0xfffe31f6,0xfffe2582,0xfffe6fb4,0xffff9212,0xfffd0021,0xfffc721c,
-0xfff5381c,0xfff6ddb9,0xfff6f02c,0xfff5e9bd,0xfff99dbd,0xfff9e031,0xfff9d526,0xfff8af4a,0xfffa0e8e,0x00005acb,0xfff7e824,0xfff3dffa,0xffede428,0xfff65c72,0xfff82bd4,0xfff4e4d7,0xfff40b58,0xfff14394,0xffecc6d5,0xfff01ae3,0xfff3b65f,0xfff7d785,0xfffacc08,0xffff6ad2,0x0000dd68,
-0x000265a5,0x00011c8f,0x00014e2c,0x00010390,0x00012c64,0x0000da0a,0x0000edeb,0x0000a503,0x0000b260,0x0000fc82,0x00022e51,0x00009f6e,0xfffe3560,0xfffe28b5,0xfff01c2f,0xfffc1c3a,0xfffc57a4,0xfffeae21,0xfffb8291,0xfffb14dc,0x000b0f0d,0xfff9a606,0xfff3e8bd,0xffe62874,0xfff4aaec,
-0xfff950e6,0xfff64bfe,0xfff69299,0xfff2b70a,0xffea459b,0xfff09b55,0xfff5241a,0xfff98f32,0x000049a8,0x00018b5d,0x0000197b,0xffff3418,0xffff9ee0,0xffff9991,0xffff9c4f,0xffffb3d2,0xffffc39d,0xffffcd49,0xffffdc49,0xffffcdd6,0xffffa466,0xffff585f,0x00006a1d,0x0001dc57,0x00029a68,
-0xffee1fb9,0xfffa6eb1,0xfffc78bd,0xfffd37ac,0xfff72643,0xfffd5b28,0x001231eb,0xfff822f7,0xffe6b095,0xffd55139,0xffeed28a,0xfff85006,0xffeee1f7,0xffea35ef,0xffdf221a,0xffd0db00,0xffdc6957,0xffe81195,0xfff62169,0x0000598c,0x00002106,0xffff58ac,0x000088f8,0x000025b2,0x00003040,
-0x00004078,0x00003781,0x0000202a,0x00004429,0x00002b9a,0x00003619,0x00004615,0x00005bed,0xffff7c02,0xffff84ca,0x0000423f,0x00046f89,0xfff9784d,0xfffdd73f,0x0015882d,0x00131967,0x000d103a,0xfff0db3e,0x00193f21,0x0021e100,0x000ed9f7,0x0004defa,0x0000ce98,0x000c5d43,0x00236804,
-0x003000a2,0x003155e2,0x0026e129,0x001a939a,0x000f7733,0xffff48b2,0x000004ec,0x00003d22,0xffffee06,0xffffcd50,0xffffeda3,0xffffdf97,0xffffefdf,0xfffff88e,0xffffe635,0xffffe27f,0xfffffaaf,0xffffad2d,0xfffff179,0x00005447,0xffffb845,0xfffb59e6,0x000b26f8,0x00118fdb,0x001e2795,
-0x0021a04c,0x00175bdb,0x000806d6,0xffed48aa,0xfff96ff4,0x0002c3ae,0x000d1840,0x00211a4f,0x0019ff6b,0xfffb56a0,0xffdeb697,0xffcb9c33,0xffc93734,0xffd25e7b,0xffe012ad,0xfff27b0e,0x00014206,0x0000268f,0xffffe623,0x000015d2,0x00001851,0x000018f3,0x00000f21,0x000011e5,0x00000930,
-0x000010ff,0xfffffd11,0x00004da6,0xffffe063,0x0000a1bb,0xfffee540,0x00022526,0xfffe8802,0x000ea2ca,0x0008575b,0xfff72710,0xffde3fee,0xffdb8766,0xfff1fca4,0x0012e661,0x001b07e4,0x0014c189,0xfffbdbca,0xffdd6a3f,0xffdedd68,0xfffb1fc1,0x001dd959,0x00326855,0x0034043d,0x0028d72e,
-0x001af707,0x000860ef,0x0000257b,0xffff8780,0x00006082,0xffffe0dd,0x00000142,0xfffff35a,0xfffff86c,0xfffff54c,0xfffff26b,0xffffff72,0xffffe3e6,0xfffffcc7,0x0000104f,0x00000f2d,0x0000162c,0x00006054,0x000b1ae7,0xffd322c4,0xffd7577e,0xffedc4f1,0x002f0f82,0x00146b92,0xfffcd7f0,
-0xffe937c8,0xffd67003,0xffecdcdf,0x00299c3a,0x002bdf28,0x0020fef2,0x00006e3b,0xfff78a6a,0xffefb289,0xffeba938,0xffed4de5,0xfff055ff,0xfff35cf6,0x0000c97a,0x000048ba,0xffffc468,0x00001885,0x00001500,0x00000a83,0x00000fa0,0x00000fc6,0x00000bda,0x00000c7e,0x00001341,0x00000570,
-0x00000e4b,0x00001448,0x00003812,0xfffcf226,0x00025eb9,0xffe1bb34,0x00369132,0x004c2e34,0x004cfba7,0x003e6a71,0x0030866f,0x001d1c4d,0x00094c5d,0xfff8a357,0xfff3fe14,0xffeb1e52,0xffed109c,0xffee9915,0xfff7062e,0xfffc7288,0x000089d6,0x0007f28a,0x000b2f6d,0x00105f64,0xfffdd22a,
-0xffffff1d,0x00007abc,0xffffcd05,0xfffff2b2,0xffffe703,0xffffe9ed,0xffffeb23,0xfffff014,0xffffe708,0xffffe419,0xffffe788,0xffffb4f6,0x00007271,0xffff2170,0x00013ce2,0x00034572,0x0008ad2f,0xfff407a3,0xffea85c2,0xffe95d30,0xffe7b4ac,0xffe8e08b,0xffefba95,0xfff24560,0xfff4e4e7,
-0xfff572a9,0xfff5fe57,0xfff75684,0xfffb717f,0x0001bf9e,0x00071011,0x000a1157,0x000e5211,0x000de0ec,0x00118452,0x00027526,0xfffe7d93,0x000077e3,0x0000066a,0x00006527,0x000026f6,0x00003145,0x00002312,0x000032b6,0x00002e6e,0x0000491b,0x000027f1,0x0000a757,0xffffa555,0x000179d9,
-0xfffcf17e,0x00047e19,0x0013021d,0x000eb213,0x000e7890,0x000a26e3,0x0006219e,0x00024dd1,0xfffe10f9,0xfff98093,0xfff540ec,0xfff0e28e,0xfff0fcc9,0xfff11312,0xfff06873,0xfff221a3,0xfff389dc,0xfff5243b,0xfff5715b,0xfff68385,0xfff5830c,0xfffd0bfb,0x00023519,0x00003a26,0xffff7590,
-0xffffa0cf,0xffff9d7a,0xffffa132,0xffff9a4c,0xffff86a6,0xffff9120,0xffff7eff,0xffff849d,0xffff6dfe,0xffff5cb0,0x00003bae,0xffff91ce,0xfffab350,0xfff9b7c8,0xfff88d02,0xfff78009,0xfff6cf86,0xfff6db6a,0xfff65039,0xfff5e15c,0xfff65868,0xfff6ba47,0xfff6ac9c,0xfff65c32,0xfff58d46,
-0xfff49577,0xfff55fbe,0xfff5f1f2,0xfff6f660,0xfff77e51,0xfff8d54b,0xfff939a0,0xfff9b59e,0xfffe3f01,0x000109d7,0x0001d659,0x000168d1,0x00017a89,0x0001317c,0x000177bf,0x00015daa,0x00017845,0x000125b6,0x0001bf24,0x00017729,0x0001d55c,0x0000bc8c,0x0000bafd,0xfff791c0,0xfff9cb0f,
-0xfff93aa6,0xfff92570,0xfff8f7a2,0xfff8848a,0xfff847dc,0xfff803e1,0xfff77ff2,0xfff6f7d2,0xfff6a07c,0xfff62c9c,0xfff5fd96,0xfff5ada6,0xfff63a65,0xfff685ba,0xfff6c4f9,0xfff72f17,0xfff756e1,0xfff8219c,0xfff7b122,0xfff7784f,0xfff68a1f,0xfffcae7b,0xfffcb53a,0xfffd35e7,0xfffd11bc,
-0xfffd0522,0xfffcf930,0xfffcff01,0xfffcfd89,0xfffcff41,0xfffc9a53,0xfffceec8,0xfff60ae3,0xfff6eb5a,0xfff60a41,
-};
-const UWord32 defaultHRIR_rom_AlphaR16_fx[470 * 43]/*Q30*/ = {
-0x20bc5600,0x1e5ed260,0x20e8da40,0x188db140,0x12958b20,0x0906c690,0x1a999ee0,0x12ba4920,0x097dce40,0x0906b8e0,0x08f8ab10,0x09bc0990,0x085c3450,0x081bb920,0x08157b10,0x123510e0,0x18bd42a0,0x07506690,0x1230f920,0x1711f640,0x1ee77fa0,0x1c814cc0,0x1dac1bc0,0x1e1c44c0,0x1e7a0b40,
-0x1ee88080,0x1f50d220,0x1febad40,0x2085ba80,0x2129d500,0x21bca140,0x22401bc0,0x231c2200,0x227fd880,0x21e17340,0x2090c740,0x1fec8d80,0x239775c0,0x22918780,0x1148e780,0x1c908300,0x15dcf3e0,0x1546c9e0,0x176b49a0,0x15864820,0x17de99a0,0x1652d300,0x13666440,0x15d3e660,0x15857380,
-0x1533c000,0x11ef5f40,0x141e81e0,0x15ce7080,0x163fb3a0,0x0ec15720,0x1c5a3ce0,0x1d7f55c0,0x1e7d0be0,0x2023db80,0x20f12d40,0x2229f440,0x236884c0,0x25063640,0x26c3e400,0x28b2f780,0x2aae0480,0x2cc17d40,0x2f0af400,0x2e77cec0,0x2c671ec0,0x284489c0,0x25d28c00,0x25b2b200,0x207c4f40,
-0x16c150a0,0x168bb320,0x0ff50dc0,0x0ffde430,0x0ea60190,0x0da4afd0,0x0ab40c40,0x0d861f50,0x08d9e1c0,0x0e7afe50,0x08b0c1d0,0x0d191480,0x09d24050,0x0d610d70,0x0efb5c40,0x0ee63660,0x1017dea0,0x15d2ae80,0x1b7c1f80,0x1cdb25c0,0x20b38ec0,0x226761c0,0x2518ce00,0x279bf100,0x2aea6cc0,
-0x2e31bc80,0x31e3d6c0,0x35237880,0x3892c880,0x3c40eb00,0x3a9ebd40,0x36ee5b80,0x2ed9eb80,0x29365440,0x28b68b40,0x1eba78e0,0x12220e40,0x12162c40,0x0d09d180,0x0ad1d260,0x09b99980,0x066fd2b0,0x04f7e9c0,0x032a5cdc,0x03fff268,0x0195cbea,0x01d69630,0x034b65e8,0x030ca4c8,0x05dd2d98,
-0x03cb52ec,0x092141c0,0x07c3c848,0x0fcac260,0x169d8ac0,0x190c8660,0x1dee9d00,0x2003c240,0x23845fc0,0x27225180,0x2bc18a00,0x31088740,0x36e87a40,0x3cdcb080,0x43e41500,0x4babb200,0x4adb6400,0x44364980,0x36b67d00,0x2cad6280,0x2f7e8f80,0x20e47840,0x1902ea20,0x13c03580,0x0cd7b3b0,
-0x09a8ae60,0x09e8db80,0x0703ba00,0x06189e30,0x04b77ea0,0x04e34a00,0x03aa9e24,0x02d68b60,0x01f5b88e,0x045d0ee0,0x070eff08,0x06dc95c8,0x0c901270,0x0df5f870,0x16ea2e40,0x22c46680,0x28507440,0x323e8e00,0x38456f80,0x3fb0dc00,0x46cff480,0x4c41e000,0x50e9d580,0x52c3cf80,0x597b0380,
-0x586a6400,0x50c5e700,0x4b327980,0x44f16000,0x40681b00,0x36625a40,0x38766b40,0x25ef9300,0x1a956780,0x1a3c8580,0x17d3a240,0x0ff8e640,0x0e039d20,0x089276a0,0x06682370,0x03644abc,0x04283ab8,0x040c1a20,0x03d1728c,0x05abffa0,0x06966390,0x08c5d3f0,0x0b5c5540,0x10beec80,0x10a51ae0,
-0x197a4560,0x24304e40,0x276c88c0,0x2eeaba00,0x335d8b40,0x3a05d200,0x41947700,0x47185900,0x4ba6fe80,0x4e10e380,0x55321400,0x57da3380,0x535a4900,0x54f15080,0x503e6f00,0x49f44c80,0x3e4abec0,0x4913d000,0x32358a00,0x19e25720,0x1b603120,0x124a02e0,0x14894380,0x08ce7910,0x0a5b96b0,
-0x053e1c60,0x0812d490,0x078062b0,0x0522cc58,0x067c96b8,0x08908b70,0x0978cc30,0x0ded6e50,0x0e5a38d0,0x105c0fa0,0x10c50fc0,0x15a20420,0x1e2a3780,0x2130c780,0x29749ac0,0x2defba00,0x35cc6d80,0x3f2e4540,0x471c9a00,0x4dd07400,0x5293a800,0x50425400,0x4dc00400,0x4d0c5700,0x4eac8100,
-0x51ac5500,0x55adbd80,0x4e198380,0x4cefa880,0x386c1300,0x22551100,0x21f0aac0,0x102923e0,0x13f66fe0,0x0bd31a20,0x08bddda0,0x05b44180,0x089ec630,0x0e38e4b0,0x084a3120,0x053caef8,0x06060118,0x0a3380e0,0x0aaf1b60,0x0e301750,0x13d4d0c0,0x0ed015e0,0x1715a160,0x1bcf4fa0,0x1e6259e0,
-0x25ad2640,0x2f9e2f40,0x375e08c0,0x3cbecf40,0x44ee5280,0x4aae0980,0x4e6b1b00,0x55f64000,0x59afbf00,0x5b16a400,0x54dd4700,0x4f3cd280,0x4cea8500,0x4df9a100,0x4ec01b00,0x3ec9edc0,0x2483fb00,0x1e73cb40,0x1a751240,0x0f44f510,0x12715b40,0x13514640,0x0a7623f0,0x0b325a00,0x088d31e0,
-0x082315f0,0x0904d9a0,0x0a864840,0x0ccf10c0,0x0d317c60,0x114cc940,0x14275200,0x11b7bce0,0x20a7b640,0x244e1e80,0x21dfe5c0,0x1fc17100,0x260bc980,0x2e2301c0,0x3935e180,0x40c79000,0x489d3380,0x4ff56b00,0x5158a600,0x530e4280,0x57e80800,0x54695a00,0x536ff480,0x52787d00,0x52f45300,
-0x446dca00,0x3a190cc0,0x22467780,0x20f5c2c0,0x15f3a8c0,0x14681800,0x13f70240,0x0e3e9b70,0x0febdb20,0x0e512250,0x123d3c40,0x08d395a0,0x090354d0,0x0bca0b70,0x0f41f130,0x13333680,0x19132920,0x193633c0,0x185719a0,0x227b6b80,0x2a46b2c0,0x278d7780,0x240975c0,0x26f26980,0x2b2b8fc0,
-0x30aaea40,0x35eb46c0,0x3ae54500,0x3fcfbdc0,0x43921480,0x47837800,0x4a97be00,0x4b258b80,0x49efad80,0x46684980,0x44f54300,0x3c088dc0,0x31c87480,0x23d27940,0x25ee06c0,0x1a77a1e0,0x182afe40,0x13ffe420,0x10299ba0,0x0c3a1eb0,0x1319fea0,0x0af23e90,0x1805ea40,0x0aee8fe0,0x13735da0,
-0x0c7f25e0,0x145ae780,0x13cb80a0,0x17492bc0,0x17396480,0x21dd01c0,0x286cd000,0x24e0f280,0x26df7580,0x28c33a00,0x2aa7d200,0x2b7c1600,0x31212640,0x35917380,0x39e36080,0x3d4bc880,0x406ce300,0x43de1b00,0x43377500,0x4299a400,0x42a1ac00,0x3cc23480,0x334b1580,0x33a8abc0,0x1345d280,
-0x2a8a4480,0x1f3a0900,0x1f0aad80,0x23e50b00,0x20d896c0,0x26f6f7c0,0x2518d9c0,0x1e7e4ec0,0x23e73580,0x23c85c00,0x22b82240,0x1c616dc0,0x2060cd40,0x22877d00,0x21bc8c40,0x10d6de40,0x2af9de80,0x2b9cda80,0x2bf7af40,0x2d2c09c0,0x2db65380,0x2ef662c0,0x2fbcd040,0x329d0b40,0x348af9c0,
-0x368c7300,0x38107cc0,0x3982c2c0,0x3b725400,0x39375b80,0x375475c0,0x3604c540,0x342f08c0,0x2ff57880,0x3579e7c0,0x257cebc0,0x1ab2cf80,0x08fb9dc0,0x2ac59f00,0x1b0176e0,0x09b698f0,0x08c33910,0x0885da60,0x0aad1c40,0x07e6a3d8,0x076e0038,0x0786fb80,0x1a5186c0,0x26eb2340,0x04f05738,
-0x19c4aec0,0x22ee4c00,0x32f55080,0x2d944000,0x2f408080,0x2f655740,0x2fac0b80,0x2fdaefc0,0x2fd9c880,0x3077a900,0x30fdd700,0x3191e580,0x324f9c40,0x32f64f00,0x34080580,0x332a5940,0x32c2ba80,0x32109200,0x31fef840,0x36429c00,0x138d94c0,0x135a5b40,0x10e20300,0x17dfc3a0,0x1bb0a4c0,
-0x2126e240,0x13e05900,0x19cb2420,0x1fb90ac0,0x1fc95840,0x1f802500,0x1f0c6be0,0x1fc8a8e0,0x201b2040,0x1ff87f80,0x199cfde0,0x14860180,0x21548dc0,0x1a7f91e0,0x170edf60,0x100dd460,0x1232c5c0,0x11975240,0x1155af20,0x11400a80,0x113eb1e0,0x117d1320,0x116c0320,0x115fefa0,0x114d40a0,
-0x1132a140,0x11447d00,0x111aa660,0x12038b40,0x12630320,0x12c0bd60,0x12bc9820,0x165c09a0,0x16c49d20,0x21645680,0x15a82280,0x184ada80,0x17a08f20,0x1461af60,0x143dbd60,0x10da3860,0x1211cac0,0x14d0dba0,0x12b219e0,0x127c8460,0x126d9a20,0x15d0e480,0x15320a40,0x14bfe720,0x15810d40,
-0x1cb0ee40,0x13de1020,0x139515e0,0x139ceaa0,0x12c1c320,0x12baeba0,0x12ea2640,0x13cc2ae0,0x13d2a0c0,0x13b124e0,0x1342c700,0x125050e0,0x11a6edc0,0x10c54fc0,0x12b89d60,0x14470620,0x15b2f6a0,0x16673e40,0x1aa60e60,0x1d2e31c0,0x1e3397c0,0x19214380,0x18341ac0,0x161f0b00,0x140093e0,
-0x11d70e60,0x116ec920,0x0ef897a0,0x1322db80,0x0f57cf10,0x126d6900,0x0f8db6b0,0x12d2b620,0x12263e20,0x13119840,0x1511f080,0x16aecec0,0x1587e2a0,0x132cf740,0x138936a0,0x11920320,0x113513a0,0x112fd320,0x129acca0,0x128d10e0,0x127742e0,0x11f5d580,0x10f429c0,0x107e6440,0x0f141d90,
-0x136f7400,0x161daea0,0x19837e60,0x1b9144a0,0x1e6c26a0,0x234fa980,0x22ad61c0,0x1a76fdc0,0x1591b840,0x1381da20,0x10261fe0,0x0cf15090,0x09c319e0,0x08e99b90,0x09542d90,0x088b6930,0x0874efb0,0x0864b400,0x0aa42d90,0x0c391ff0,0x0f09b360,0x106c4920,0x14fb6400,0x1590f960,0x14878680,
-0x1498c560,0x12cc78e0,0x13154ce0,0x1407cea0,0x16dd98a0,0x177dd820,0x1725bd40,0x1579fc60,0x120900e0,0x0e209310,0x0921e760,0x0e7202a0,0x1402ac00,0x1b210540,0x1f959900,0x293b9200,0x29a7ce80,0x27ba3700,0x22fecdc0,0x1cae3000,0x18e07e40,0x13de8fc0,0x0f7c9570,0x0b440630,0x0905a220,
-0x0a1c1070,0x09d2a590,0x09c4cfd0,0x093437f0,0x0a963a90,0x0c901930,0x10ba3a80,0x12a04ea0,0x167d9c40,0x14f1cce0,0x12895a00,0x11b0eea0,0x0b4a4590,0x072fb460,0x037017fc,0x026fa398,0x0102d50c,0x0245e180,0x07c243e8,0x08b91dc0,0x10ce3b40,0x1dbc4660,0x23d99f00,0x27e34c80,0x28bf5e80,
-0x2a339b00,0x2638bd80,0x2e1ec100,0x2f185300,0x272ee940,0x213390c0,0x1d0154a0,0x17445bc0,0x161831a0,0x117b7c80,0x0efe9760,0x0f60e430,0x0a1a46a0,0x085faed0,0x07b3ea60,0x0a4eaa60,0x0cb0d7c0,0x10730da0,0x12a3ef00,0x1956d960,0x1b12dca0,0x1897d7a0,0x186d09e0,0x135eabc0,0x12fed440,
-0x11642620,0x0fa26360,0x11269e60,0x14305380,0x1910ad60,0x195b63c0,0x1cfab280,0x25b24940,0x25739b80,0x28810e40,0x2a8d5000,0x294a5a40,0x1f018200,0x2ba8d480,0x34506b80,0x269abcc0,0x245c1340,0x1b2743a0,0x1b08ab40,0x148b3160,0x12a87d60,0x12314520,0x1bc26960,0x13e054e0,0x1280eae0,
-0x1002ab80,0x0fbddac0,0x11046800,0x166dcfe0,0x1a1de240,0x1d1cda80,0x1ee257a0,0x1d1790c0,0x1c84db20,0x17aa3160,0x168308c0,0x12d08980,0x0e6501d0,0x0ccf29a0,0x0f68da10,0x15ef3520,0x24881800,0x2ef3f140,0x3284d580,0x349dacc0,0x2cf17e00,0x1fb71c60,0x21dbb080,0x149e3940,0x25b36080,
-0x31374600,0x230f7480,0x264602c0,0x1b9660a0,0x1a8c5da0,0x17ec9880,0x14681aa0,0x1666e0c0,0x269f5f80,0x125c9f20,0x0e6540a0,0x148384e0,0x156a7c00,0x194a41c0,0x1ce543e0,0x1cefa340,0x2174b500,0x1f67bec0,0x1eb8a700,0x1dc432e0,0x19f6dcc0,0x146ea840,0x114f1820,0x116dda80,0x0f9287c0,
-0x11172f60,0x14edac60,0x17c223e0,0x1c7711a0,0x1f6ca480,0x2835ab80,0x2f1f31c0,0x32157980,0x2098a280,0x0f49da30,0x13fd4c40,0x2a897000,0x23e4ea80,0x1f19e1e0,0x21a0d2c0,0x198ff6c0,0x138a1a80,0x1972b1a0,0x18795aa0,0x1ec73860,0x182bb6c0,0x16561840,0x16768520,0x1771b000,0x1b4c83a0,
-0x1c851940,0x1edcc860,0x24bef4c0,0x1d19f760,0x1ad23180,0x1e7e5e80,0x222728c0,0x1ec42ba0,0x19f73460,0x134638a0,0x10013200,0x0d2b1f70,0x0c000560,0x0f311b20,0x14e00c00,0x1827e440,0x218b96c0,0x228ce1c0,0x1e9682a0,0x175d3920,0x10c0ec40,0x161d7360,0x2b35ed40,0x22339cc0,0x2300ef00,
-0x1e2edc80,0x197b1da0,0x1af823a0,0x1980e9a0,0x1a62a8e0,0x15711d60,0x1c2dd3a0,0x1b369a00,0x19a3f6e0,0x19cc17c0,0x1a6c7c60,0x197c7940,0x1e059ec0,0x23a98180,0x1bd725e0,0x18b2fb20,0x1e3cc8a0,0x21cbc080,0x2207c480,0x208e7880,0x1dcf2b60,0x1c042f00,0x1bbef2c0,0x1d9a7800,0x1da99e40,
-0x1d5d91e0,0x1cd19700,0x205b74c0,0x20ddc400,0x1e6af4a0,0x191f1b00,0x1656db60,0x1d86b0c0,0x28727b00,0x2051e7c0,0x2753c400,0x2381f640,0x22ac4280,0x1fcd4540,0x230f2840,0x1b68d820,0x22640a00,0x1731f340,0x2246e4c0,0x1bab8220,0x234c9280,0x1f0a44a0,0x21ff0a00,0x221611c0,0x25e8be00,
-0x1e855400,0x1ba47740,0x23997940,0x25cd8ec0,0x267e8300,0x26ebe780,0x28b07100,0x25c1a640,0x23a23bc0,0x215da900,0x1f69c040,0x1dd91c80,0x1c1273c0,0x1af7f4a0,0x1ad3d420,0x1adad3e0,0x1be49460,0x1641b080,0x1546eae0,0x3676c000,0x19e3f3e0,0x23e61140,0x21bae940,0x1a5f1380,0x1a7a5920,
-0x1450b9e0,0x171e3660,0x1d2ed320,0x17b1d480,0x168d0060,0x16ea59a0,0x1fa85bc0,0x1d81a700,0x1d1a1a00,0x1ea52500,0x326e7380,0x18ff2b00,0x199a0840,0x1ba7fee0,0x1c7c6960,0x1e0c3a80,0x1f089d00,0x208c28c0,0x1db43560,0x1c17dc00,0x1a77a8c0,0x1973d8a0,0x18534b80,0x173bc880,0x17676340,
-0x17783ea0,0x16d4a0a0,0x17263020,0x1280aa60,0x0b8eb6f0,0x20299ec0,0x2b47f900,0x3b0fff40,0x17656400,0x285cf540,0x37927600,0x38a97c00,0x38596940,0x35ff6740,0x38834840,0x3947c000,0x38c14d40,0x282a0300,0x1a540940,0x3d324400,0x2a767380,0x21084c00,0x0c7810b0,0x135351e0,0x12759560,
-0x12f18440,0x138da620,0x141bc0c0,0x152f54a0,0x146a31c0,0x140810e0,0x13856ec0,0x12ddb3c0,0x1240b3c0,0x11802800,0x117aaa00,0x11549cc0,0x114cb880,0x10fefe60,0x11532fa0,0x09419a20,0x077f9350,0x07bec660,0x07510f60,0x0713cf90,0x06cfb308,0x07c29688,0x06f04d18,0x06366ed8,0x062efa70,
-0x06673cc8,0x0712b990,0x06d51a28,0x06b30ff8,0x06672a40,0x0723e2e8,0x08052990,0x06a9b908,0x07506a38,0x07e47b48,0x08b812d0,0x08c114d0,0x08f145b0,0x093712b0,0x094f8d40,0x095897f0,0x09446240,0x091c8590,0x090bc520,0x09179bc0,0x08fb38b0,0x08ac4130,0x08444f30,0x077ebc28,0x07333d38,
-0x071f95a0,0x074e6f80,0x063503a8,0x067960c8,0x076075f0,0x08040a70,0x0872ebf0,0x0765e910,0x07751360,0x07e830d0,0x086e5fe0,0x08ca8a00,0x09a25f20,0x09980830,0x098cf8d0,0x08b3b3f0,0x08e6e8f0,0x0902d3b0,0x098248d0,0x09ab9cf0,0x09320b40,0x0992be10,0x0a013020,0x0a757140,0x0b247930,
-0x0b6d4520,0x0b5bf1d0,0x0aeee870,0x0a6f9f10,0x0a5d3380,0x0a97ca90,0x0ace2d10,0x0a299e60,0x08fc0a90,0x069dda20,0x056fed78,0x0556bbe8,0x05aee7f8,0x02ad9adc,0x0436c2d0,0x0776f7c0,0x082d9e30,0x09626ce0,0x07af63e8,0x071f5d00,0x07963f88,0x07425888,0x087e3610,0x0ad33210,0x0a9233e0,
-0x09e0cf50,0x080bf170,0x094063b0,0x09a3cc10,0x0a2ff660,0x0a882df0,0x0b11cf10,0x0a5bf0d0,0x0b06fc10,0x0bff7e00,0x0d25fd90,0x0dfb04c0,0x0dffc440,0x0d666c70,0x0c650dd0,0x0c086ba0,0x0c1e2420,0x0c0f6af0,0x0a630850,0x08206250,0x03278218,0x0143e0cc,0x00a1dd9b,0x01656196,0xfeadd870,
-0x018ac20e,0x05f27a88,0x064eaa48,0x085ea120,0x063b72f8,0x04e3d4a0,0x05f12f98,0x05a40a28,0x06ec1ed8,0x0af42f90,0x09b3c500,0x09f86000,0x089b2f20,0x0a57f930,0x0ab7c8d0,0x0bd10450,0x0c92c2d0,0x0d751620,0x0bdeb280,0x0c2e98a0,0x0d61a620,0x0eede1f0,0x0fd45220,0x0f98dcb0,0x0e233650,
-0x0c723350,0x0c4a0700,0x0d640c80,0x0ebdf010,0x0dd95840,0x0b3719d0,0x0387f980,0xff43633d,0xfd05b49c,0xfdd3fb58,0xfa2372f0,0x081ff210,0x0f1a5250,0x0f83b4d0,0x1140e960,0x1032ade0,0x0ddf53e0,0x0dd0c6d0,0x0ad1dc60,0x09be59e0,0x0aa35700,0x0a9a95d0,0x09b054c0,0x06567838,0x096ec3b0,
-0x0aeca1e0,0x0c71f670,0x0d30ea30,0x0d788e00,0x0e0300c0,0x0d170130,0x0e21c060,0x1203f1c0,0x123d0820,0x12b0e1c0,0x122027e0,0x10854c60,0x0cf40270,0x06bc0e50,0x01005642,0xf72b7880,0xecc57480,0xe76cc4e0,0xe88e4200,0xedad4fa0,0xf5fdfb60,0xec9ecf80,0xf72a3d70,0xffdd352d,0xff30091d,
-0x005b5994,0x05813a50,0x06440b78,0x08614500,0x0a9985f0,0x0c192410,0x0e11beb0,0x0b05c1f0,0x0a73a1a0,0x07797078,0x0a367b70,0x0b1ca560,0x0bdd0fa0,0x0d37d340,0x0e6cc670,0x0e544cd0,0x0d146e40,0x0e3a4520,0x10c88c40,0x0f64b430,0x0c530a10,0x075ec5e0,0xfeb8b114,0xf605d130,0xedafdda0,
-0xe756f020,0xe0fb3600,0xdb360100,0xda75d2c0,0xdaa66840,0xda9abbc0,0xe8b49680,0xdf7d1600,0xebbf6480,0xf5c7b9c0,0xf725c480,0xfeabc0c4,0xfef5f226,0x067f60f8,0x06a7a608,0x08a968f0,0x095cb8b0,0x12f0dae0,0x096e2560,0x0693d130,0x0698ca48,0x0b68f120,0x0d09a180,0x0e04d1c0,0x10097000,
-0x13050100,0x116a08e0,0x0fb994f0,0x0f418ab0,0x0bead5a0,0x05f01b88,0x011a20a0,0xfda029d8,0xf6b03790,0xed210360,0xe1e1f2a0,0xd32a0440,0xc9174140,0xc45ced00,0xc445c640,0xcad3da80,0xd1922780,0xda7276c0,0xdc059680,0xe27057e0,0xeb0f85e0,0xf2e90930,0xfc397234,0xff2b15f4,0x03c52d90,
-0x043ef070,0x0a7c6f40,0x096e5b50,0x039e3668,0x0bd293b0,0x0dea3530,0x07bda068,0x0826ba10,0x080832a0,0x06e56a98,0x06bdcd78,0x0c9a16f0,0x0d502100,0x0dc49520,0x0e811080,0x0baa1e10,0x09c226d0,0x04cd7b68,0xfc820a70,0xf68f45f0,0xeea140c0,0xe6074940,0xde050680,0xd7113300,0xd2f2e680,
-0xcdd5f2c0,0xc9904480,0xc4e13400,0xd2975200,0xde5abb40,0xe7b0e6a0,0xe8e3f220,0xf3093020,0xf6992010,0xfb71da48,0xfd5af248,0x009edbe1,0x01ba435c,0x029627f8,0x01bc7926,0x07e436c0,0x0866ef00,0x04ee9500,0x04dd5538,0x03c2182c,0x03244ac0,0x02506738,0x035aae78,0x02538188,0x0670b210,
-0x0853d3f0,0x073451a0,0x05e08050,0x0537fdd0,0x055c8620,0x027808bc,0xff1c3582,0xfaa1f290,0xf4a42670,0xeca21180,0xe4a67380,0xd9518000,0xd373b0c0,0xd0d9cdc0,0xd4b34680,0xe543c6a0,0xe91fbf20,0xe8e71000,0xf032e070,0xf5a6aba0,0xf9472ca0,0xfd22334c,0x00c4400e,0xff8d0076,0xfef2deca,
-0xff0f0717,0x00cf0b19,0x025ca420,0x03137e8c,0x003a5f88,0xfe11c526,0xfde6f118,0xfc689e7c,0xfaac9c68,0xfc4ae938,0xfdf40e44,0xfdf86c90,0xff960aba,0x0047c76b,0x012a8c5e,0x0305061c,0x00691547,0xfd4fdd60,0xf8d63210,0xf2b24040,0xecb2e800,0xe6ec5e40,0xe0110000,0xdc579140,0xdbbb7800,
-0xde9ff980,0xe97dcbe0,0xe89b5fa0,0xe94d25e0,0xee9e45c0,0xf0d9bb30,0xf51bc220,0xf766edd0,0xfb498dd8,0xfacb03e8,0xfc6df6c8,0xfb7331c0,0xfcde647c,0xfc574ba8,0xfc9fb0a0,0xfb227618,0xf9e14900,0xf7891f50,0xf5f1e0a0,0xf3c18450,0xf361b050,0xf368a7e0,0xf0d46b30,0xefd24320,0xefc39240,
-0xefba2080,0xef747960,0xee563ac0,0xed9446c0,0xed409d80,0xeb29ef40,0xe9343fe0,0xe7073f20,0xe6d92600,0xe5be9640,0xe3e2df80,0xe5f8f9a0,0xf0c0a1a0,0xf0db1fc0,0xe9fc4be0,0xf2c55330,0xf15b7b00,0xf29b3da0,0xf5bcf120,0xf75ef510,0xf8b7fc00,0xf74da670,0xf6269e60,0xf71f42a0,0xf81d6850,
-0xf8169788,0xf4e20e40,0xf43672a0,0xf3721c70,0xf2e8e9b0,0xeca588c0,0xf1937380,0xf14e6fc0,0xef895040,0xee5e8ca0,0xed003a80,0xebc36e40,0xea742d20,0xeb130440,0xeb46a680,0xeb78f4a0,0xeb771080,0xeba9e5c0,0xeb93e2e0,0xeca4b640,0xedb01680,0xeee16860,0xef883580,0xf3698e40,0xf5b512e0,
-0xed814f00,0xea8c4100,0xe8a427e0,0xf1c207b0,0xecd47040,0xeae97500,0xea78a760,0xeadb9c40,0xeb72a980,0xeafdf720,0xea827b60,0xeac99a60,0xece9b880,0xf14eccf0,0xe8f0f500,0xeb4d01c0,0xedf59d20,0xf6188b10,0xf3b6dcb0,0xf36f3fb0,0xf3090790,0xf26e1ab0,0xf1e5ad20,0xf11051e0,0xf15bb6f0,
-0xf16a25f0,0xf183a1c0,0xf1bee310,0xf1f43570,0xf20ec440,0xf2846960,0xf2d26c80,0xf33e1250,0xf36b3a60,0xf3d84850,0xfdf22ad8,0xfe402122,0xfcbf415c,0x01444d58,0x03d844b8,0x07b31a58,0xfff07f2b,0x03a4f5b4,0x07ca3358,0x08036690,0x080ca4a0,0x07b0ee00,0x084cbae0,0x08478180,0x07e35e80,
-0x0385b6dc,0x00313174,0x0861c9d0,0x03814194,0x012f5d64,0xfcd0113c,0xfe142a38,0xfda23688,0xfdaf3ed8,0xfdb4c29c,0xfdb8ce60,0xfdc30a00,0xfdb239b0,0xfd7b8e94,0xfd20f808,0xfca26414,0xfc442650,0xfbc27e90,0xfc576308,0xfcd4a998,0xfdded2c4,0xfdd373f4,0xfe795c04,0xfdbff944,0x050df3f8,
-0x005632d3,0x027e6818,0x025fc64c,0x0149de5c,0x02613070,0x015648b8,0x02458b90,0x03a926e4,0x026d71a0,0x0201ab40,0x01590f80,0x02cd7de8,0x019161a8,0x0130e76e,0x00d2f20d,0x04b0dbf8,0xfdf8b9c4,0xfd2b26bc,0xfd276edc,0xfd29ef10,0xfd4e9040,0xfd6b080c,0xfd76f440,0xfd5eedf8,0xfc915d74,
-0xfb378708,0xf97f43b8,0xf880e568,0xf8194570,0xf98b2e90,0xfb40ae68,0xfe01f5b4,0xfe39f8ca,0xfe709cfe,0xfd68fa28,0x01d4f75c,0x023b579c,0x040e9f90,0x037591ac,0x04049850,0x05b7d1e0,0x06f95be0,0x05862278,0x07ee3728,0x04b01550,0x06a5ff60,0x0294ca1c,0x042ed138,0x024709c8,0x01a17282,
-0x02275ff0,0x01af314a,0xff1ebc14,0xfc2a7668,0xfc4ad764,0xfc318118,0xfc3b0da8,0xfc75570c,0xfc7b6408,0xfc6a1760,0xfb117e78,0xf8ba3a00,0xf5b9cdd0,0xf376caf0,0xf245bb10,0xf52f7210,0xf7f19110,0xfda6e704,0xfe22b40a,0x019c94d4,0x0005c56c,0x0547da28,0x05d7fb10,0x05928788,0x044e8bd0,
-0x043e3f70,0x073192f8,0x06f03800,0x07a79c38,0x09663940,0x09a37330,0x07db7c88,0x040a1070,0x059374e8,0x043544c8,0x068b0d18,0x035097b4,0x043d9350,0xfff4b225,0xfbf4abc8,0xfc411248,0xfc93ad8c,0xfcdbd750,0xfd1db0f8,0xfdb9c294,0xfd9f5b8c,0xfb336fa0,0xf6ce8970,0xf0c7be30,0xecb2fc60,
-0xec210d60,0xf0c20f20,0xf71cbba0,0x00b09707,0x01ff4286,0xec9eaf60,0xe9bdef60,0xee4b2440,0xf35f46d0,0xfa202ed0,0xffa86ee8,0x02134718,0x04aadba0,0x06be47b0,0x07f36ef0,0x089444e0,0x08f8c480,0x09289640,0x07713588,0x06efdb28,0x04b333f8,0x057845d8,0x01c091fa,0x02742d7c,0xfe2db764,
-0xfa6c11c0,0xfa42ce18,0xf5871f90,0xf684a670,0xf5c00860,0xf49f6a80,0xf20360c0,0xf0fc8de0,0xf17e89a0,0xf18ae860,0xf56c7eb0,0xf928f6b0,0xf85fc678,0xf49ad0a0,0xef959700,0xed4860c0,0xf0f86ec0,0xedd9ef00,0xeea52120,0xf3a896e0,0xf7680a00,0xfa06e3b0,0xfd2f21bc,0xff08687b,0x020dcb60,
-0x05ed5698,0x09e0aec0,0x0adc8b70,0x0a725d70,0x06b1a448,0x074a83d8,0x05d966d0,0x0534eae0,0x02aca0fc,0x02f5df58,0xfe3b15d4,0xfcf0cdc0,0xff5f2dc0,0xff9860c2,0x0107dd62,0x0181cdb8,0x019580de,0x04b1be08,0x05ffe070,0x055b40b8,0x0515b760,0x033dd824,0x008ebd9e,0xfc6f30ac,0xfb568238,
-0xfdde5bc0,0xf4267140,0xfcc42b44,0xf3c77dc0,0xf3058950,0xf8300628,0xfab756f8,0xfe6be88a,0xffbe4577,0x00960aa3,0x05cff348,0x06db5188,0x046ffa78,0x0b74bac0,0x0ab40760,0x02f67690,0x03d48cec,0xff926179,0xfe9fd53e,0xfb3b6508,0xfc2f8234,0xfd67d14c,0xfde0184c,0x038a691c,0x0b70f6a0,
-0x10e26ca0,0x14394740,0x146db420,0x1820d8e0,0x1b6c4300,0x1dfb9740,0x20a4e180,0x1fe99e60,0x1d5dc2c0,0x146b4f80,0x0c8374b0,0x0608b970,0xffccdeca,0x09ce83b0,0x0118cfb2,0xfd5675a8,0xfdff15f8,0xfd4c7eb8,0xff77e7c8,0x00776b69,0x00111d1a,0x06d775e8,0x08d437b0,0x022dbffc,0x0b16cff0,
-0x09b06530,0x0164452c,0x01bb0c34,0x012bf4c0,0x0061aa95,0xff754e66,0x005df8e2,0xfe2cc35c,0x001e7b0d,0x0499e260,0x098b3a80,0x0d7be070,0x138c56a0,0x1abc6600,0x1f113280,0x22d3be40,0x25011bc0,0x2531a480,0x21d43cc0,0x1df7bc80,0x144778c0,0x0f6e7d50,0x0def8de0,0x0ce29bd0,0x11041560,
-0x0c3ba0e0,0x0877de00,0x04482b30,0x03b86efc,0x037e892c,0x056d9bb0,0x06bc6328,0x07a617c0,0x092c5610,0x09e355e0,0x08a86220,0x07d4d2d0,0x072d9e18,0x0642b7d8,0x05410980,0x049aabf8,0x03d3b6a8,0x044b8be0,0x01e48688,0x00188152,0x02c34350,0x0797f310,0x0c84c510,0x0fc5bf10,0x10fcae60,
-0x13072e40,0x13892440,0x127642e0,0x116ef360,0x0f817d70,0x0db61db0,0x0caf71e0,0x0d47a720,0x0f4d95a0,0x12ba75e0,0x0da35e80,0x0c66e840,0x0bb5bb90,0x0a9883c0,0x08dd2a40,0x08953140,0x06c8c608,0x044302c8,0x062ec298,0x077712a0,0x09211e10,0x084bf080,0x08a124b0,0x08cfa900,0x09eb34a0,
-0x0a704230,0x09046d80,0x09cae490,0x0a509ed0,0x0829d340,0x067e3b48,0x06622ae8,0x05332f58,0x04126e30,0x0389f11c,0x02aceb3c,0x0325903c,0x03f00344,0x054d0cd8,0x06820350,0x07892af0,0x08cbbd60,0x0a8ad2b0,0x0c1d9710,0x0d70c0b0,0x0e9e7f20,0x0bb9daf0,0x0bcdd510,0x0b39b800,0x0a1bfd20,
-0x09488360,0x078729b8,0x06f9bd90,0x059d1898,0x06ef07b8,0x07226458,0x087c4ce0,0x08955140,0x092126d0,0x09ac8d50,0x0af31390,0x0c5c28b0,0x0e551ba0,0x0ea2b080,0x0f3479a0,0x0f869a70,0x0ed90c80,0x0efa6210,0x0e4553f0,0x0cf940b0,0x0bb240f0,0x0a884360,0x0aaa8860,0x0a6d66d0,0x09f0b260,
-0x0a441770,0x0ac956a0,0x0b7c42e0,0x0bee4dc0,0x0caa6630,0x0dac8490,0x0cba56f0,0x0cf928c0,0x0d500170,0x0ecb5420,0x0c2fe570,0x0ccc4b10,0x0c7f1210,0x0b4116b0,0x0ac4f100,0x0a4b2ca0,0x0b841400,0x0c59ba70,0x0c3b9050,0x0be05eb0,0x0c6ed8c0,0x0d7ea070,0x0e078960,0x0eb0c020,0x0ef46290,
-0x10ffd0c0,0x11261a20,0x107037e0,0x10ce84a0,0x10ef0360,0x111c4a40,0x112e6b40,0x111e10e0,0x10ba77a0,0x106f18e0,0x10319780,0x10145ec0,0x0fcd3390,0x0f7f6e90,0x0ef9a290,0x0e645890,0x0dd6bd00,0x0d9a7270,0x0ca6d8c0,0x0bccddb0,0x0ff01820,0x10d142a0,0x100d3da0,0x0e0ca020,0x0fe52df0,
-0x0fc96550,0x102775a0,0x0ffed000,0x0fb8a670,0x10102d20,0x105ee560,0x10491a40,0x10d58420,0x0f5e1e50,0x10bb0260,0x11bde2c0,0x10fa5ba0,0x0d40cb30,0x0dd5cac0,0x0e0184a0,0x0e01b5a0,0x0e2adb00,0x0e54c3c0,0x0ea13020,0x0e664bb0,0x0e3e3f00,0x0e0fdbb0,0x0dc99c80,0x0d8e3010,0x0d5f3e30,
-0x0d3313a0,0x0d135780,0x0cdd0a00,0x0ccc2ea0,0x0e1b51f0,0x023eecbc,0x01e12bca,0x02e5c210,0xff029458,0xfcf7fb2c,0xfa3286f8,0x00a1e012,0xfd6d41e4,0xfa623358,0xfaab2238,0xfacbdaa8,0xfacfee58,0xfa80d8d0,0xfa42e140,0xfa4ce0a0,0xfd3c2670,0xffdfea5d,0xf921d428,0xfcd53e24,0xfed195a4,
-0x02d52084,0x01b5e1ea,0x021a35f4,0x022740d4,0x025cebf0,0x027541b4,0x0291c1a8,0x0265f578,0x025ccfb8,0x024f4a24,0x0284eebc,0x02be8bcc,0x0379ed38,0x02a39160,0x024ee04c,0x01bce9f0,0x0227295c,0x019e0050,0x014e8ae6,0xfc490374,0x01736bcc,0x00021265,0xffcb7c55,0x010e5db8,0x008485c5,
-0x03061634,0x029ad828,0x00823e7a,0x01e516ce,0x01c7efac,0x01b8e4dc,0xff1384bd,0xff326d5d,0xff884325,0xff93cca2,0xfc0e2d18,0x015ac1ea,0x01e3e590,0x01f8a22c,0x0240e3a0,0x02cd72e4,0x03127928,0x0323b158,0x029a2440,0x026a3d60,0x02656384,0x031b1038,0x03aaf504,0x05085a68,0x02aca020,
-0x018d7ac8,0x003dd310,0x012158e6,0x01915776,0xffae6826,0xfee0f7f8,0x000186f0,0x003fe1aa,0x0031fa73,0x004617b7,0xffcc8dfa,0x01fef22a,0x036c802c,0x006e55af,0x02bad768,0x00e98e70,0x026911d0,0xfeb1681a,0xfe910e56,0xfe988bd4,0xfe354d5c,0xfe20a280,0xff9a269a,0x017e4150,0x01b9eed6,
-0x025725fc,0x038ffb44,0x04079600,0x046bc418,0x0352577c,0x02f6e2c4,0x02f7ca14,0x0489a078,0x06694d00,0x0a759d60,0x0572d5d8,0x036eeb8c,0xffc91c36,0x0113e096,0xff07a9b3,0xfd70aeac,0xfe339cd2,0x01266558,0x02cc86c4,0x02c43b90,0x02de4384,0x02ebd31c,0x065759b8,0x06a3ebd0,0x056a9250,
-0x06116fc0,0x04667350,0x02f07d5c,0x00ae7aca,0xff2780d2,0xfdb8acfc,0xfea463c0,0xfd9ad474,0xff2a631b,0x012ed30e,0x017231f0,0x01daf66a,0x037a05a8,0x04472790,0x03f77ec0,0x0182efdc,0x0056d0cd,0x005ec1ae,0x035fa0b4,0x06fd0e80,0x0bd74c90,0x03ee4af8,0xff22eafc,0xfa422808,0xfc9e29a0,
-0x071674d0,0x03d091ec,0xff5236e2,0xfef66d18,0xfd906578,0xfdc5ba0c,0xff2e3233,0xff54d055,0x027473ec,0x0440ee80,0x043e8bc0,0x06cb1458,0x0720a6d0,0x05678cb8,0x02fcd434,0x00ffb316,0xff858763,0xfed500fa,0xfc8af6f0,0xfdf57918,0x00377ec8,0x012d64b4,0x05750dd8,0x07891b50,0x09da56a0,
-0x0cadd910,0x1081de80,0x12d002c0,0x12f5ffc0,0x14a6f2c0,0x13da0520,0x13c71560,0x1487ad60,0x1411c760,0x1222d800,0x0a021da0,0x031ddbfc,0x0016b9d6,0xfea574aa,0xffda5b73,0x0161fad4,0x0132095c,0x02081e10,0x00e341ea,0x022433c4,0x0385ea64,0x04783908,0x0846b400,0x076f0320,0x042b2280,
-0x036990c4,0x0163b952,0xffbd08ca,0xff216a0a,0xfdad5070,0xffb5d7d6,0xfdeab294,0xfc600eec,0xfd6fb288,0x03e330dc,0x09f19a80,0x108068a0,0x1037a7a0,0x10585120,0x0ff3b600,0x0d68ebd0,0x0af800a0,0x0887e370,0x068e24a0,0x02af8fa0,0xff4e5cbf,0x00e4101a,0xfed3cc0a,0x013e9e9a,0x0113de10,
-0x01ec813a,0x00c87a8a,0x0165324a,0x00ebb4f2,0xff173520,0x07be1d50,0x08a9cab0,0xfcfc7864,0x078f2ff0,0x04dc6d78,0xfd199a40,0xfdbb01f0,0xfd92c740,0xfc51fc60,0xfd8138c0,0xfccf03d0,0xfcb41ecc,0xfbcf7bb8,0xfbc35530,0xfb656398,0xfccddfd8,0xfd620d28,0xff026739,0xfada35c0,0xf84413b0,
-0xf68f9570,0xf5824870,0xf49163b0,0xf3a78330,0xf47b60f0,0xf7855b90,0x010c0980,0xfdb029c4,0xf8b69630,0xfb16f270,0xfe10c016,0xff4d4b72,0x0050f047,0x00d283f4,0x02c0ba78,0x030b3c74,0x04dbcb98,0x04ae58b0,0xfc8a6c90,0x03e54978,0x04a2d2e0,0x025eabdc,0x009a06a0,0xfde65c08,0xfcff21c4,
-0xfb7f16e8,0xfaeaa2a8,0xfb2e25a8,0xf809bde0,0xf5f07170,0xf4062ea0,0xf0f33930,0xedbca4c0,0xeb1e7780,0xe9e0e5e0,0xe8a20f80,0xe6d5ba00,0xe628aa60,0xe6086e40,0xe5aedc00,0xec27cd40,0xf1facf90,0xfb76dfc8,0xf7f24720,0xf5b340f0,0xf430a670,0xf7ea5370,0xfa3bdc30,0xfd7e9f7c,0xfef0dd98,
-0xfff0128e,0x0098bf0c,0x036d59e0,0x035cbd70,0x010aed84,0x003aa920,0xfedffa62,0xfeea826e,0xfe04c460,0xfd98e0d0,0xfcb45eac,0xfc612258,0xfb686358,0xf9fdf748,0xf8f16870,0xf66d6090,0xf4010c70,0xf02fa400,0xeccbeb20,0xeae5bb60,0xe963f100,0xe9494a60,0xea87ba20,0xeba70720,0xec6d3860,
-0xec76d5c0,0xf00b08d0,0xf39df4c0,0xf8c23da8,0xf6e2ba70,0xf90ac348,0xf891a2d8,0xf95c4260,0xf94e0138,0xfb024a10,0xfad00ab8,0xfce01408,0x00c0370b,0x01092c6a,0x00e8aca3,0xff52cae7,0x019a0d7a,0x010e1fe2,0xfe9976c0,0xfc452e44,0xfa3ac458,0xf97b5a60,0xf7dca130,0xf6f22190,0xf681d7c0,
-0xf5b37980,0xf51e8d10,0xf5221700,0xf5cea7c0,0xf5dce410,0xf65366d0,0xf6462360,0xf5fc1cc0,0xf54fd630,0xf4383b90,0xf3b04120,0xf35c5470,0xf3552a50,0xf4211050,0xf5b48f70,0xf7c4be30,0xf7c298d0,0xf9a2d788,0xfa596e10,0xfb64b198,0xfce34ed0,0xfe3f85e8,0xff0fe518,0x000546d7,0xffa3d485,
-0xff3322a4,0xff7b9510,0xfd2a9afc,0xfe0004aa,0xfc05bdc4,0xfc761998,0xfa126598,0xf8a990d0,0xf7a32fc0,0xf729ac90,0xf47a0980,0xf3a18790,0xf45de0a0,0xf47a8720,0xf535fc00,0xf5bb3a40,0xf6465e40,0xf519a5a0,0xf478b6f0,0xf41b3180,0xf3febe10,0xf3cc8ad0,0xf383d5f0,0xf3d47fc0,0xf3f21e40,
-0xf3af7b40,0xf5a7a8a0,0xf5017e80,0xf4a23f20,0xf6ab2ce0,0xf6310170,0xf6d4b150,0xf750c580,0xf7a97c10,0xf8470068,0xf8317740,0xf78561f0,0xf80214e8,0xf7868d40,0xf80643f8,0xf7e2db40,0xf8186428,0xf6f44dd0,0xf654c370,0xf65592a0,0xf7f0f830,0xf32db3f0,0xf3891c00,0xf33bf0b0,0xf2e8e910,
-0xf2c09b90,0xf29c01f0,0xf2abfc10,0xf2c49fa0,0xf2f58530,0xf304df80,0xf314f040,0xf334f850,0xf3579100,0xf3c032b0,0xf42b6f50,0xf491c280,0xf4bea710,0xf5ae0630,0xf59521d0,0xf504a9e0,0xf5a4f110,0xf85be5f8,0xf58010d0,0xf62c8100,0xf8590878,0xf84f0108,0xf88dff20,0xf89069a0,0xf8d19498,
-0xf8ce0050,0xf8fdb7d8,0xf5e55770,0xf51c0ae0,0xf9429070,0xf5677750,0xf4929890,0xf4775b80,0xf50aaeb0,0xf4aa7340,0xf4ad37b0,0xf48450d0,0xf4574c40,0xf40e99c0,0xf43a1020,0xf457a3f0,0xf47fdff0,0xf4aa8430,0xf4d3a2f0,0xf4f63f90,0xf51c5380,0xf539d600,0xf5671730,0xf56efe00,0xf46e39a0,
-0x0194e912,0x02155f14,0x00f3fe38,0x04552d28,0x05e7fbf8,0x07ee01a8,0x02afcab8,0x056f96b8,0x078ab640,0x08329770,0x082be960,0x07742938,0x0810aef0,0x08468230,0x08801560,0x05989ec0,0x031dcc58,0x084faa20,0x058446a8,0x03d24c1c,0x0016d989,0x012d5250,0x00e1522b,0x00cba39f,0x00b5df02,
-0x00b5564c,0x00b51bc9,0x00ec85d0,0x0112ad54,0x01408d8e,0x0158a7bc,0x016e5600,0x01852d6a,0x018a1690,0x01c44bcc,0x02956ec8,0x0203127c,0x024a56bc,0x02225888,0x064ead00,0x01d55a96,0x030b8860,0x037f8e48,0x02a46c40,0x024fc180,0x028171f0,0x035395dc,0x03a8eed0,0x03366800,0x0313a980,
-0x03b9b930,0x03b3ec80,0x02df12d8,0x029c602c,0x023f7b8c,0x05270e28,0x006396c0,0x002a9e69,0x002dd1d9,0xffd43d28,0xff954139,0xff77372f,0xff979760,0x00382391,0x00d0ee00,0x0167f610,0x01cfe0da,0x021ff104,0x02343c14,0x026fd608,0x02dc4d28,0x047048c0,0x03018fc4,0x045e5b70,0x04b19540,
-0x04cb5d88,0x0338a9bc,0x02c06608,0x02cdf420,0x02cef42c,0x0154605e,0x048ca028,0x03dfc240,0x0392b8f4,0x02d481f4,0x046f2570,0x04a61738,0x034e5f64,0x01df7216,0x01cf46f2,0x01b26604,0x01b3cec8,0xffc2ae3c,0xfec97ce0,0xfec19ece,0xfe07665e,0xfd8f63b8,0xfd8be830,0xfdd9c614,0xff0b509c,
-0x002dc58b,0x014d0c82,0x01c8fb80,0x01c4f00e,0x015ba516,0x027bc8d8,0x03c68c2c,0x07fc5830,0x0573e718,0x03d1a780,0x03cac07c,0x03010210,0x00f4aa8b,0xffec1c30,0x01385052,0x00e4016c,0xff1b12f1,0x03cfbb8c,0x052f3760,0x021598e4,0x0410adc8,0x03584110,0x03480ae4,0x002c3cf8,0xfedf737a,
-0x009515de,0xff60973a,0x00692d39,0xfe1066b8,0xfd673224,0xfd6adfbc,0xfc9af97c,0xfc05dea4,0xfba53cf8,0xfc3d4c34,0xfe822b12,0x00b56963,0x02b00a48,0x0376faa8,0x037fa0a0,0x022de7bc,0x03c5136c,0x05a0b1e0,0x0abacf70,0x06713fe0,0x0aee7d70,0x0a5c4e20,0x0c5461a0,0x0bac3660,0x0827ccf0,
-0x062b6e60,0x051330a0,0x04911ce0,0x03afcf6c,0x03b3af78,0x039a1fc8,0x03f3348c,0x03f94388,0x05b55730,0x026ef930,0x00ba3e3f,0x012d2728,0xffb8d1af,0x007ff5ab,0xfd9d1a74,0xfad32938,0xf9fbd2e0,0xf71a3370,0xf6f263d0,0xf74eced0,0xf7cc44a0,0xf886e758,0xf99212a8,0xfb3290f0,0xfaf46cb0,
-0xfc359054,0xfc9b1af8,0x034d9efc,0x060162a0,0x07332d90,0x09dfe680,0xfb5f8800,0x00a5a75a,0x008bc970,0x01691a8c,0x0277d520,0x02d0b810,0x04416368,0x06fba168,0x082c7f00,0x07ce3980,0x04945010,0x05fd5318,0x047cf1d0,0x04bc3f48,0x011a5ad6,0xffbc654f,0xff9d9248,0xfe1a0c3e,0xfda75bc4,
-0xf9235a98,0xf6320b50,0xf4eefff0,0xf2fa9310,0xecb1ac40,0xe98e5be0,0xe93806a0,0xee2c79a0,0xf2856660,0xf6f49530,0xfa897c88,0xff23fa1e,0x00906703,0x04f54040,0x05332d78,0x039e61cc,0xfd1f05a8,0xff4e533b,0x00ecf7ee,0x011e04ec,0x025ec3cc,0x02dd1d0c,0x0270d07c,0x0332fa20,0x03724a28,
-0x05334af8,0x06853ba0,0x0070b2d5,0x0567e068,0x064c7a00,0x09ad9dc0,0x04a278c0,0x0283da68,0x03471cf8,0x0120463a,0xffa15072,0xfd613424,0xfc47122c,0xfab7fcb8,0xf925c380,0xf7cd87a0,0xf86d8010,0xf9e27eb0,0xfd506698,0xff05a488,0xff9ff111,0xfd6dc17c,0xfcb36cd8,0xfa873b70,0x03e74f04,
-0x05e61a90,0x00c1160f,0x004fa959,0x012b682c,0x042fdc28,0x02066494,0x02d6deac,0x020c6b70,0x020f0364,0x031dabb8,0x0622a928,0x04199188,0x0288260c,0xff0c84a1,0x0152f920,0x01a99c92,0x048bbcb0,0x016cddc0,0x00326f54,0x00524854,0xffdccd6f,0xfd7eaa24,0xfccab6d8,0xfcbf8018,0xfcbc8278,
-0xfe26ff00,0xff14e86f,0xffcaf4e3,0x00009f6a,0xffe8f7b5,0x00d58a3b,0x042bcb58,0x03e45c7c,0x07418bf8,0x0a1159b0,0x0db798e0,0x0be148b0,0x056ccda0,0x014c16f4,0x0333c1c0,0x05b57960,0x03d2f4b8,0x03fd1dd0,0x033ee5e4,0x02eb19d8,0x03a6cc1c,0x04d7e7a0,0x02f2a800,0x02396000,0xfff8264f,
-0x0221e510,0x033569d8,0x04926c88,0x02f9ce5c,0x0161d8ca,0x00345a14,0x006313c0,0xffecd15b,0x01e83832,0x015216dc,0x00262e59,0xff42cb31,0xff6dd7b6,0x00b45c8b,0x0193bf7a,0x02de3894,0x03862604,0x04a52738,0x03039a20,0x04375cd0,0x0784c120,0x0b1afa40,0x0b6cfcf0,0x08f4c530,0x03d48dc0,
-0x03ac1c48,0x00feaabd,0x00ad509d,0x01311966,0x012fd7a6,0x0361f1c0,0x03f8205c,0x028e50f8,0x02f0f56c,0x02c9d5c4,0x036381fc,0x0161d612,0x00fbdaaf,0x021e084c,0x02718138,0x03a32f44,0x04a84d08,0x04680c70,0x036c42d4,0x03ce3de4,0x04c04cd0,0x03d8757c,0x021e4a3c,0xff75edde,0xfe2b5516,
-0xfcfd4cf0,0xfd23059c,0xfd131088,0xfd55fe0c,0xff4bf1bf,0x01e99eb0,0x04e87bf0,0x06be0620,0x081af210,0x09d6bc70,0x06d01d88,0x06dd4630,0x063b22b8,0x059a09e8,0x04607788,0x02a3c8a8,0x029df310,0x026be458,0x02b35a40,0x02a544a0,0x03ad1d44,0x0348e99c,0x051d22f8,0x032f994c,0x04cf1fd8,
-0x02b9f8fc,0x03ade8f4,0x0327d8b8,0x03f6e7b0,0x03d8da10,0x06cb8f78,0x0708d5a8,0x04e33c90,0x0420ab90,0x02d64b24,0x01b6b9e4,0x003679bc,0x018114c4,0x02352aa8,0x029e8ad4,0x034c0078,0x03b20810,0x0412a730,0x056278c0,0x06bb5120,0x08780f90,0x0788e2d0,0x061f89f0,0x06d17f10,0x037cce10,
-0x06096438,0x052ab558,0x05391000,0x05cd6b60,0x05839968,0x05f44640,0x05e3f538,0x04d9d048,0x0585ca20,0x0523f8d8,0x0501d6c8,0x03f0c6f0,0x04e45d68,0x04f5f158,0x048ddcc8,0x0161743c,0x067a2818,0x05dd1ea0,0x05a7db90,0x05806468,0x051b0138,0x04d65608,0x045040d8,0x04a34708,0x04b04a10,
-0x04ddfe00,0x04f31a18,0x051a8d08,0x05180d70,0x055d55a0,0x056c5080,0x05970708,0x05d60e50,0x05a0b3a0,0x0659c408,0x055eb688,0x046d0368,0x01bbe372,0x06194670,0x04a49200,0x0235cbc8,0x01eb223e,0x01b7c5f2,0x01c7d3b2,0x014c02ca,0x01259e12,0x010567e0,0x043fd6a8,0x059598b0,0x004cdeec,
-0x041c41b8,0x053da9a0,0x06b684a0,0x05a96368,0x05e1b058,0x05bb8bc0,0x05b980e8,0x05baa998,0x05b6d040,0x05b3f400,0x05a52be8,0x0594ad20,0x057d05d0,0x05660608,0x05491200,0x055b3758,0x056e8ee0,0x05790668,0x05ae9260,0x061900e0,0xfc4ff454,0xfbc2e1b0,0xfc5deeb0,0xfaef65d0,0xfa7700b0,
-0xf9ef1578,0xfc131d80,0xfaf6a440,0xfa2c0ef8,0xfa43ff80,0xfa6ed4c0,0xfaa7e1e0,0xfa76d3b0,0xfa79ae90,0xface0bf8,0xfb615ed8,0xfc516eb4,0xf9ddc230,0xfac0e408,0xfb7d13f8,0xfd98b39c,0xfcdefeb0,0xfcfd6974,0xfd30b8b4,0xfce4326c,0xfcb27648,0xfc5676a0,0xfc642900,0xfc5f1f5c,0xfc7392a4,
-0xfc46b32c,0xfc1cf308,0xfb960ea0,0xfbf2e680,0xfbdb7c40,0xfb68e360,0xfba16100,0xf973f900,0xfa1a3650,0xf9ba4970,0xfbb070d0,0xfba53198,0xfbe49560,0xfcaab004,0xfcdfaa28,0xfdcedc5c,0xfda3f60c,0xfd78cf80,0xfdb40538,0xfe0a68c0,0xfe9d8664,0xfd821ce0,0xfd5b5dd0,0xfc788ee8,0xfc8bac5c,
-0xfab87a58,0xfd63fdb8,0xfd588c4c,0xfd3ef758,0xfdc536a4,0xfcf80de8,0xfc59374c,0xfb5ea020,0xfb583338,0xfb4995a0,0xfb8ea280,0xfb2f2a70,0xfab80ad8,0xf95c9fa0,0xfa46e6d0,0xfa128820,0xf8db2f00,0xf918a9f8,0xf6e44ab0,0xf8e4cb60,0xfa6e4e10,0xfb8ffdf8,0xfc77d0f8,0xfd0fcc10,0xfdf6c128,
-0xfe599792,0xff05d750,0xfffb562d,0xff69e65b,0x00169e92,0xffddb39f,0x02016d4c,0x00151fe9,0xff5ee149,0xfdcf9c1c,0xfd2c6d9c,0xfc95faf8,0xfe029810,0xfe4050c8,0xfe0c30e0,0xff1acb6e,0xfdab0dcc,0xfc7ddc2c,0xfa69c258,0xfa6af2e8,0xfa3ddb00,0xfa724ba8,0xf9956a08,0xf8fd25d0,0xf5ee7590,
-0xf7a79800,0xf70c3e10,0xf4c6d140,0xf6075e40,0xf176cf20,0xf50f6bd0,0xf89f3660,0xfab7bf58,0xfc345b38,0xfd5e4048,0xfe55e282,0xfecc3188,0x016f62be,0x02f4e618,0x021e9a40,0x02687b20,0x02db8008,0x0496a3c0,0x01724910,0x004741a5,0xfda280ec,0xfdb06e64,0xfc3d0d54,0xfe72a600,0xfefce100,
-0xfefe16a6,0x00926100,0xfe3944a6,0xfc092ef4,0xf894f558,0xf83c2078,0xf8084b38,0xf88d6d00,0xf7f259c0,0xf6958850,0xf21f8f90,0xf4cbc730,0xf4054a00,0xefb100c0,0xf0b41280,0x06547b28,0x0945ef30,0x07dcd4f8,0x061f4c88,0x04d3b590,0x035080bc,0x037585c0,0x04ee8a58,0x04b9ba58,0x041dbe40,
-0x04941e20,0x01b6884c,0x00f342fb,0x03cd72dc,0x01311218,0x007ff61e,0xfdb6ef34,0xfeb557c2,0xfcb7eec0,0xfdfde2a8,0xff961c9f,0xfe523806,0xffa5c268,0xfdfada2c,0xfda6108c,0xfcb7ea80,0xfd5bc0e4,0xfc953124,0xfc2a0eb8,0xf93a10e8,0xf7d7cef0,0xf883c7f0,0xf5c094b0,0xf7f5a510,0xfb7346b8,
-0x02fdd514,0x0a862940,0x06acd2a8,0x055a6038,0x05689f20,0x05c899e0,0x06b61368,0x06380978,0x042a5120,0x06684a98,0x06a124e8,0x01cfbb50,0x033774ac,0x03c85828,0x06ea4118,0x024cdd40,0x012598d4,0xff288071,0xff95d7c0,0xfdf00210,0x001a4796,0x01f9bd18,0x00f871ad,0x0155fafc,0x032f27d4,
-0x03e02064,0x01cacaa4,0x010f39f6,0x0049fb74,0x012b4d22,0x0143c6c4,0x04840b50,0x0c900de0,0x0d8fc380,0x0cc3e550,0x042539a0,0x0a4053f0,0x029033b0,0x03e0aefc,0x03d40938,0x036fa1d0,0x03555bb0,0x0067d959,0x02483f8c,0x0a5be400,0x0489a720,0x0292b93c,0x002aaa6f,0xfdbc82d8,0xffcfb975,
-0x0b218f00,0x0173e284,0x00058680,0xfff8fce7,0x00728414,0x00b47005,0x012f5c1a,0x02b33c04,0x01a9501a,0xff53fb7a,0x007b3f0c,0x00d1f9c3,0x004e387c,0x0089a954,0x00765ec8,0x00e6cb26,0x010b57ce,0x02a9e8f4,0x083be470,0xff4c05cd,0xfb52e568,0xf7993110,0xfee68e10,0x01274c84,0x00fbe962,
-0x02182c3c,0x01058b14,0x017270f8,0x01ac9e22,0x02a5c330,0x069358c8,0x01678120,0x000fec32,0x026f7668,0x00c04bb7,0x02df11f0,0x0a12b660,0x0441e400,0x02e984ec,0x033b5c7c,0x03066658,0x03720784,0x04317d28,0x0485a700,0x03d602e8,0x02b22b68,0x03abcdb8,0x033e2434,0x015e0b66,0xfd71af08,
-0xf88b5de0,0xf34d23a0,0xf39ba060,0xf4daae00,0xf8c7f888,0xf7838e90,0xf81fef70,0xf527f6d0,0xfeb75120,0xfc78f758,0xfe6797f6,0xffdeeba8,0x009bc766,0x00dadafc,0x01bacf96,0x01574cfa,0x017f1d5c,0x01a7675a,0x01d96bea,0x026ca0d4,0x030e94fc,0x02f159dc,0x0251089c,0x01fe611e,0x02b40b5c,
-0x0320015c,0x02d06260,0x02a3adcc,0x02532048,0x0205e91c,0x0201a21c,0x01b12e3c,0x007a2a8b,0xfe194d6a,0xfb22c100,0xf7921380,0xf5447390,0xf3c44450,0xf6451030,0xf8609120,0xf9d68dd8,0xf9ff07b0,0xf8b05160,0xf32c4d40,0xf98e6bb0,0xf9b8ffa0,0xfdcb830c,0xff2f51ea,0x00f9284c,0x026d2a98,
-0x02441cfc,0x02787f38,0x02fb3c6c,0x035a7d18,0x03450558,0x01c81280,0x028fd374,0x0270cd90,0x01cd57c6,0x022de5e8,0x01ad1418,0x009d17a8,0x00d5782f,0x0120ae96,0x007edb3e,0xfeba9faa,0xfef6a54a,0x0046a266,0x024a969c,0x01ec1464,0x0004bba9,0xfeed7a9e,0xfe3d2658,0xfe06efc2,0xfd2b32d4,
-0xfc794b58,0xfb7edd58,0xfbeb51e8,0xfac04678,0xf7981fb0,0xf77c3920,0xfb61b608,0xfa7400a0,0xfbee2a48,0xfd1fc944,0xfe80fe2c,0xfed0b74c,0xff7a28a9,0xffc89da9,0x00a2f717,0x00aa9cb0,0x020c40f8,0x0100c4be,0x028ee6e4,0x01ee739c,0x026c8288,0x0155c0de,0x0130888c,0x004e6bbe,0x004e5710,
-0xfd91eb38,0xfd79d690,0xff350dbb,0xffb883e0,0xfffa7c85,0x005e61c2,0x01168e8c,0x002d0892,0xff6d068a,0xfed63d34,0xfe715950,0xfe2323d6,0xfd99a278,0xfd219a70,0xfca62888,0xfc68ada8,0xfc1c8e4c,0xff6d94a4,0xffafa9e9,0x01f57e38,0x00a6e5fd,0x0183eca4,0x01af0748,0x0196e4c6,0x0214a848,
-0x018c6882,0x016c6f7c,0x01e20eb4,0x01600e0c,0x017d019e,0x019a5f0e,0x01d612f2,0x00f070ca,0x00b55679,0x0073bd6d,0x01fce0aa,0xfe54124c,0xfe8c8e16,0xfe7fe9c0,0xfe78f4f2,0xfea76026,0xfebf7a14,0xfefd708a,0xfe8cebe0,0xfe5cc8b8,0xfe106730,0xfdd0ee98,0xfd91c634,0xfd70e410,0xfdd05cd4,
-0xfe2e603a,0xfe80812c,0xfedf9dee,0xff340605,0xff02ebfc,0xff48aa7d,0xffc80fd7,0x01181bf4,0xff2026c5,0xffcc4864,0x01254f96,0x014de4e0,0x01705b80,0x0158cd5a,0x01a7f39a,0x01b52324,0x01c2af8e,0x0015287b,0xff65beab,0x01c5d1ec,0xffc7dd05,0xff228e2c,0xfe554104,0xfef3987e,0xfec4c17c,
-0xfecf236e,0xfec83128,0xfeb97f8a,0xfeaf7cc0,0xfea5dd60,0xfea52ed6,0xfea944e8,0xfeaeb822,0xfeb5106c,0xfea2895c,0xfecc62be,0xfee27284,0xfefdeeda,0xff0b1b02,0xff33b4d6,0x00d07f68,0x0088be63,0x0055afdf,0x012f5aa0,0x018b0666,0x01ed821a,0x01639dfc,0x02045618,0x02669e7c,0x02464718,
-0x02401334,0x02292f54,0x02462d38,0x02636f3c,0x028ea2e8,0x023a1658,0x01a5fcec,0x0239e438,0x020c4830,0x01a45164,0x0073619a,0x00cf2f4b,0x00b8725c,0x009c0d2b,0x0095c171,0x008a96db,0x0083bff3,0x008472d8,0x0081cf9c,0x00539dd2,0x00a41f10,0x00aa9fb4,0x0072d1a5,0x0086b55e,0x00893b25,
-0x009740fa,0x009270e2,0x00897319,0x003d4aca,0x00518b38,0x0080e939,0x0174f4e4,0x01d052d2,0x01d9cd3e,0x01f71c16,0x013e228c,0x014335e2,0x01ba93ca,0x01956ffe,0x01bed302,0x021b2dec,0x0257152c,0x0206bf78,0x016531fe,0x015b60ca,0x0221fbc4,0x00dc525b,0x00d7f384,0x00e2b5db,0x00815b83,
-0x007ea327,0x007415d2,0x0081cf49,0x008ecb9a,0x007a3100,0xffea66de,0x00ace213,0x00977c5d,0xfff1eec6,0x001548eb,0x003d5e93,0x009921c5,0x00bbbc50,0xfff853c5,0xfef6d9e4,0xfe868c3a,0xff925117,0x00f23497,0x018a88be,0x023caf98,0x029f05a4,0x020a4358,0x01aa0f32,0x024026e8,0x0205e7b4,
-0x02c5744c,0x02f80d50,0x035c1f38,0x02cde578,0x0167ce2c,0x01cfd026,0x01e1bc16,0x012f8ae2,0x00f5a803,0x00d513bf,0x003926dc,0xffe18d87,0xffb7288a,0xffb595fb,0xffc7dd81,0xffc6d32d,0xfed0be86,0x00693516,0x00560a07,0xfeb63a22,0xff536f91,0xff6abd31,0xfff26384,0xfff34825,0xffe24216,
-0xfd41ebcc,0xfcb2c9e4,0xfed62f3a,0x017cabba,0x01eea1fc,0x02efc5e8,0x027f6358,0x01e704d6,0x0222d598,0x01f31af0,0x01fa8170,0x032073a0,0x04e79b58,0x03c73914,0x02ecc0ec,0x013710aa,0x017be698,0x01ce02ce,0x0121dc94,0x00e1523d,0x0115de0c,0x0027d2a9,0xffa6c1c6,0xff7832b9,0x0012c6c5,
-0x009810dc,0x009d32ff,0xfef73ffe,0x01324e1a,0x000f1b1a,0xfd8b5374,0xfeb22f30,0xffdce2e0,0x005b751d,0x007c762d,0xfe834770,0xfea2e138,0xfe91442c,0xfd85478c,0xfe779b48,0xfe483fd8,0xff2f39e4,0x01483ff4,0x03d3d53c,0x045040b8,0x03b29b98,0x02fad094,0x031ef804,0x04872d38,0x02e93b68,
-0x02b1cdc4,0x024d18f4,0x020d72d8,0x031ffd0c,0x03cac818,0x0165b8e0,0x007d9dd5,0xfd37fc70,0xff6bee67,0xff12b805,0xfd29d98c,0xfb242f78,0xf98afe30,0xf7b63a20,0xfa098c48,0xfbeb5680,0xffbf87de,0xf802e508,0xf61f3790,0xfa654ad0,0xfc43dfc0,0x0c2518c0,0x09a8ad00,0x0ad884c0,0x0a06b0b0,
-0x08dfd320,0x06d6f7e8,0x05cc4cd8,0x06e9ca98,0x044ec1d8,0x041fe730,0x01aecc22,0x01d67f88,0x02a65634,0x04fd33d0,0x0270e400,0x022e69f0,0x0150ffdc,0x0131d70e,0x01f0c996,0xff4bcc13,0xfd7b626c,0xfe705940,0xfd634788,0xfc70863c,0xfaa4c070,0xf91f85f8,0xf7f062d0,0xf7cb5890,0xf7d712e0,
-0xfb1ced28,0xfb2cee80,0xfccf62a0,0xf8a740e0,0xfe04dcf4,0x0b979580,0x0bf84510,0x01c2c236,0xff024863,0xffd3f4bb,0xfe8d8ef8,0xfeb3fcb0,0x0234f9bc,0x04771668,0x09e89fb0,0x02ec5a64,0x004ace26,0x019d1670,0x005bc0f5,0x0351aa50,0x09a569f0,0x04cb8518,0x02f7de98,0x0288a310,0x00e7ef13,
-0xffe09991,0xfd97cdb0,0xfaedff40,0xf8cd2ff0,0xf6ce9610,0xf6dfd410,0xf7544f40,0xf83504e0,0xfa7aa938,0xfcdde1dc,0xfe6e74a6,0x03c61c38,0x05161620,0x041533a8,0xffb97bf2,0xfe0beaf8,0xff16fbfe,0x0139ce6c,0x01089c6c,0x00781063,0x00c283e0,0x01a2bf50,0x01ee2328,0x02ecadf4,0x023d5480,
-0x03700a3c,0x01eb12bc,0x01950152,0x03f7d2a8,0x00a7a6aa,0x0170cf48,0x04b39e18,0x02eb11cc,0x032cfdfc,0x015041d6,0x01081988,0x0184f076,0x00a14291,0x01bd864e,0x02af4cfc,0x01e7582e,0x03d8dc34,0x050b92c0,0x06937550,0x08ec1dd0,0x0abeadd0,0x0b5cedf0,0x086bfbc0,0x0472ddd0,0x01d20b26,
-0xfe4de632,0xfeeed642,0x0446c358,0x02306fdc,0x022c3d04,0x01e61d36,0x012cbee2,0x01201576,0x0183e714,0x01952420,0x02c4428c,0x04affad8,0x0297ed30,0x015ef09e,0x00c830f1,0x019d6860,0x026b5244,0x029e92d0,0x01fc2632,0x0110c6fa,0xffa7512f,0xff502820,0xff904dba,0xfeecb44e,0x0043fc72,
-0x011979a0,0xffb650c8,0x021ebf94,0x0361005c,0x044891c8,0x060723e8,0x072da370,0x081b04a0,0x066e66a0,0x05215488,0x04f70478,0xff17a032,0xfde1e340,0x01b7c4ec,0x01c0bbf6,0x03cc10fc,0x03320e84,0x033f6cf8,0x02cb20b8,0x02290084,0x01a2e990,0x013c8664,0x01e40076,0x010fc50c,0x013141d0,
-0x019df0bc,0x018ee0c2,0x018f58fc,0x026bd2dc,0x0227a8f8,0x01f544da,0x01f1abc6,0x0174dc04,0x0134f6ea,0x01c53baa,0x0260f39c,0x0209f370,0x00f20da8,0xffedc401,0x0082d547,0x02857564,0x03a9f178,0x040f7558,0x036006a8,0x033b4b44,0x0309be54,0x044397d0,0x016a5ff0,0x00bc6c52,0x0073a936,
-0x030cc8d4,0x026393c8,0x0334d424,0x02e4cb04,0x0373102c,0x03d74004,0x03dd5c2c,0x03e8ac08,0x03f508d4,0x031f8678,0x02852c44,0x01633394,0x01d84d48,0x018371d6,0x01c0c3f0,0x0163b00e,0x01a9d908,0x01a3dcb2,0x019035b8,0x00a8b9c8,0x02022d00,0x01c4ab4c,0x002b9645,0xff6eb230,0xffdd3f97,
-0x00315a58,0x004ca9b2,0x00603b23,0x009daac5,0x00d5cc9c,0x020a6490,0x02fb8818,0x04502628,0x03099378,0x0218e100,0x009ccb9d,0x016ac562,0x022a5140,0x0195ce8a,0x00c10859,0x00e24f6a,0x0084146c,0x003b3606,0xfff1c715,0xffdd857f,0x00143ba5,0x00a74163,0x00e36e26,0x0139a0b8,0x01504e16,
-0x019f002a,0x014a3762,0x017e6a9e,0x015dd8f8,0x015fed8c,0x00413588,0x02477c24,0x0223a590,0x021e78d0,0x020a9374,0x01d2c18e,0x018afed8,0x013ec418,0x020bd6a4,0x02b92140,0x0351c85c,0x03e1a9cc,0x044eac20,0x04eee8c0,0x04513210,0x03f8af1c,0x03831f60,0x02f7e66c,0x033a6e34,0x030f76d4,
-0x0342c7e4,0x02fd28b8,0x025661c8,0x02fec16c,0x02c99fe4,0x0248a7d4,0x026ecf18,0x0264e740,0x0273a990,0x02723a80,0x027f2a98,0x0290b76c,0x031308a8,0x0355282c,0x020fe628,0x0308756c,0x03526b84,0x03a03c48,0x033d589c,0x03521380,0x0348794c,0x033be0f0,0x03407db4,0x03261da4,0x03699890,
-0x038ca2bc,0x03b869d8,0x03da5448,0x03fd6bcc,0x044481d0,0x03f844f4,0x03cdb124,0x03a35174,0x036d5af8,0x04446e50,0xfd923688,0xfd89bcf8,0xfdb2bae0,0xfd25feb8,0xfd26068c,0xfd81cce8,0xfdc6eee8,0xfd8d31cc,0xfd9fd428,0xfd605f80,0xfd61b58c,0xfd8a956c,0xfd8fccf4,0xfd88b15c,0xfd6fd540,
-0xfd8eec3c,0xfddd4bb0,0xfd51b62c,0xfd401674,0xfd62c0f4,0xfe240350,0xfdf58c84,0xfdf5d9bc,0xfdddfb64,0xfde2cd40,0xfdded98c,0xfe0571b0,0xfda0be80,0xfd7d7928,0xfd660cd4,0xfd81d2d8,0xfd5086f4,0xfc8ff754,0xfcf0e0d0,0xfcfd1280,0xfcda3808,0xfd58da44,0xfd633694,0xfd820da0,0xfd4c8dd8,
-0xfddeb9e0,0xfec98342,0xfebf5218,0xfeed4086,0xff1030a1,0xfe9346ce,0xfe5a3f5e,0xfe70ddf6,0xfec749a4,0xff0673ed,0xfeb1e84a,0xff0a10f0,0xfee0072c,0xfe51a96c,0xfe02806a,0xfd6d7df4,0xfe3da33a,0xfe3be950,0xfe0e5562,0xfdc25ef8,0xfdc5dff0,0xfdb32fc8,0xfdf20848,0xfcd71790,0xfc7cc7e0,
-0xfc64a6c4,0xfcb83540,0xfc28ecac,0xfa543db0,0xfb1136c8,0xfb440c68,0xfb510ca8,0xfcb7b500,0xfc7fa7d8,0xfcdbfbb4,0xfd12a1e0,0xfd8c601c,0xffc0364e,0xffe00e07,0x001dc39e,0x00797140,0xff71142b,0xff8a5cee,0x000f138a,0x008842b5,0x00a7cbe6,0xffc92ce8,0x0091ffc9,0x00688edf,0xff572270,
-0xfe90c324,0xfe2315ec,0xfeda2e6a,0xfee32994,0xfebeaf34,0xfe26d738,0xfe4c5d46,0xfdfc723c,0xfe88cf94,0xfc615d18,0xfbab66f8,0xfb483698,0xfbbdab70,0xfaa588c0,0xf75bf440,0xf8e48908,0xf92e1058,0xf8e46990,0xfb9a5c28,0xfdd291d4,0xfe55b336,0xfe7270bc,0xffb23589,0x028fb840,0x027c5654,
-0x0301c6f4,0x02c318e8,0x013902e8,0x012b4980,0x022d7a94,0x02696348,0x03553718,0x03266d44,0x0387bb6c,0x028bd5d8,0x00662d7f,0xffd0cfa1,0xff567914,0x002bd978,0xfff28d8a,0xff4f0796,0xfe302902,0xfe46ecf8,0xfe232e6a,0xfe8d66e0,0xfb341bd0,0xf9b84398,0xf9a02f90,0xfa599968,0xf8b88908,
-0xf43dcf70,0xf61f6410,0xf6872110,0xf6e6ac40,0xfbbadbf0,0xf81c22f8,0xfb7f3f18,0xf826a6f8,0xf888a290,0xfc629ef0,0xfef3e3e0,0xffac8a2a,0xfe7d9e18,0x026a4198,0x03c804e8,0x01a2380e,0x03a83fcc,0x03727610,0x00e8c768,0x0222eca0,0x0226d554,0xfff54086,0xfedda9b4,0xfde4a854,0xfe12b086,
-0xfeec223a,0xff8f8b64,0x00a49c1f,0xff30d265,0xfd7a9490,0xfd049798,0xfc0a371c,0xfc1cf998,0xfbd8da08,0xfb4ad6c0,0xf9b1e318,0xf5dc1760,0xf84c9fd0,0xf9027210,0xfb6cdcf8,0xf8c456c8,0x05b8d328,0x09447ec0,0x08e969c0,0x072e6510,0x044aa990,0x0220d694,0x02489da0,0x06891cb0,0x025a0f5c,
-0x00dc61ca,0x00872587,0x00011637,0x01c08562,0x0389f298,0x033bcf24,0x02383a64,0xff1b0b92,0xfe7e16c0,0xfc7da57c,0xfd7f5e90,0xff294bd7,0xfe35a812,0xfd19b0fc,0xfe7dad80,0xffbece0e,0x01df20d6,0x00a9b1a5,0x00206d15,0xfea8bea4,0xff039299,0xfac34858,0xf0dac4f0,0xf4e51350,0xf7fb0170,
-0xfea44d26,0x01829fbc,0x01ca7bd0,0x00285593,0xfce3de74,0xfe759fac,0x012fc3d4,0x075b8648,0x070c8160,0x04834be0,0x00c535f7,0xfe6ded74,0x0080a0ab,0xffa9faab,0x005f1fc5,0xfd193544,0x0356f34c,0x03d88b90,0xfd000d7c,0xfe938762,0xfdd5c044,0xfdaa468c,0xfcd7fb00,0xfd87d0d8,0xff26b4a8,
-0xfe4df1d2,0xfd43b618,0xfd3ee424,0xfc76d7e0,0xfde9ab14,0x004e79ca,0x03718f4c,0x06638358,0x08782210,0x0c6f0cf0,0x0e0bc250,0x128ac340,0x075a61e8,0x00ea3d86,0x017f6240,0x0177c212,0x01c94066,0x0105e872,0x01be6aca,0x01a0a940,0x01364664,0x03dd4be8,0x03946f80,0x02829a3c,0x021738b8,
-0x02ce4f54,0x00cc635d,0x047408b8,0x04629470,0xfff24d22,0xffa2736d,0xfe90c012,0xfed04028,0xfdac7128,0xfd526278,0xfdf825d8,0xfc7c46f8,0xfd18c7ac,0x0020df29,0x022cd04c,0x04e1d290,0x06230178,0x0b046080,0x0a608c40,0x06155318,0x00903c0e,0xfd8ab8bc,0xff1f11ea,0xfefaafd8,0x011fbeb4,
-0x00803c78,0x00989759,0x00c16b46,0x01217622,0x03138318,0x0328c874,0x019dc3ac,0x015a37ee,0x00ac33df,0x01241efa,0x006670ee,0x005d25fa,0x0171b56a,0x0073d918,0x00555acf,0x00abab64,0x00b48e3d,0xfff0a56e,0xff6121b4,0xff002921,0xff5d7f6a,0x01ce0fc2,0x01c96632,0x025120f0,0x04002010,
-0x026ba7fc,0x0142aede,0xfe7819be,0x006d4bf6,0xfffafe32,0xfebe44a0,0xfeda6724,0xff4fac83,0x01493e5c,0x0147e1dc,0x001da247,0x00323c25,0x000e4910,0x00127d94,0xff8997cc,0x002c09e0,0x008c29b4,0x00d8a6ef,0x00bdae3a,0x00999d9e,0x005e3b69,0x01181ca4,0x01ab5a5e,0x01c924fc,0x00f280d8,
-0x007818e4,0xfff4df0c,0x00043c60,0x002df4b8,0xff4f2dbb,0xff7019c9,0xffa623e5,0xff6db090,0x015bf11c,0x018f1c52,0x00535e32,0xfedb65ea,0xfe8b48dc,0xfef4afce,0x0144c748,0x00d4c138,0xfda004cc,0xfcc62dbc,0xfce1a830,0xff29cf25,0xff886258,0xffdec7d8,0x00911a9d,0x00a1376e,0x00ac6f64,
-0x00f0c561,0x00ed1d5d,0x00b8e4c9,0x00c3e807,0x01430fee,0x0194046e,0x023c0a8c,0x01400b02,0x00d95d67,0xffe4b92d,0x007cdd8e,0x00842042,0x00eb1728,0x00ec5fec,0x01734ab8,0x0085d198,0xffffe9d0,0x009c0337,0x007fddf2,0xffa8b276,0xfecff6ce,0xfe3f1f96,0xff575f64,0x003e4094,0x010f053e,
-0xff82a9c2,0xfe745ab2,0xfd82ce94,0xfe64ace8,0xfeb74da6,0xfee1e114,0xff52d95a,0xff185553,0xfef5047a,0xff8843b6,0xff094bb7,0xff194b3b,0xff3c7f65,0xff549210,0xff13b0d6,0xff40387f,0xff03e246,0xff316ab6,0xff226406,0xff66cadd,0xff71f81d,0x001ed5a4,0x00424c67,0x0068c8cf,0x00bf839e,
-0x01fb07be,0x013cff56,0x0174bcfa,0x0188cb5c,0x01bf2baa,0x01fb03c2,0x02559d80,0x028283f0,0x01e4f7a0,0x01273df8,0x00b5a400,0x0033a984,0xffd75c28,0xff259783,0xff20006e,0xff13f9ed,0xff1943de,0xff237169,0xfe471662,0xfe26888c,0xfea587ee,0xff1bb0a5,0x000a9dff,0xfe9b74b6,0xff37167b,
-0xffdaec61,0xffcd5890,0xffe30bb0,0xffe38f6d,0xffff4bca,0x000c9ef1,0x001a545b,0xff331730,0xfeab0382,0x00b30800,0xff9e0f24,0xff339774,0xfea96d6a,0xfef532fe,0xfef2f3f0,0xfefd4e9e,0xff0dc0d4,0xff11ac9a,0xff3b1d2a,0xfeedd380,0xfec2862e,0xfe811bda,0xfe630be4,0xfe3e824c,0xfe0fc4d2,
-0xfe2fb626,0xfe3654c2,0xfe3e8d70,0xfe39f5a8,0xfd6f2698,0x00ae4442,0x00aa0e63,0x007c5cf9,0x006e2949,0x005fc2a8,0x006bdeb3,0x0090cbdd,0x00b46c3f,0x00bddbfe,0x0084b92e,0x007ba565,0x006cbc89,0x00967a6b,0x009b1bb6,0x0071bab4,0x00d91df8,0x00e7ee12,0x00a45760,0x00c9e354,0x00b6b6c9,
-0x0061389c,0x008f4508,0x008eef98,0x006c7342,0x008345dc,0x008c36b1,0x00855a74,0x00af6c71,0x00bb56d8,0x00edfe88,0x008035a4,0x00743457,0x00bb5dd2,0x00b8241f,0x00cf9867,0x00e33298,0x00d2f692,0x0110a7a0,0x00a1f539,0xffb21fd1,0xffccba89,0x0067d544,0x0066ab97,0x00ac1fc2,0x012853e8,
-0x00b13f6b,0x0098020d,0x008ff1b6,0x00e776c3,0x00f386ff,0x00ac7a2e,0x0123a2ac,0x0138544a,0x013b06ba,0x00cdf099,0x00a685ab,0x003674ff,0x00837b17,0x00899dc5,0x0032688b,0x0065b038,0x00794763,0x007d5d65,0x01143dae,0x014b65f2,0x01a3e248,0x005a9764,0x00363cbe,0x0124fe7a,0x010ac6d6,
-0x01338aae,0x0149ed72,0x01545422,0x00da71ff,0xffab8c26,0xfe946144,0xfeb89966,0xffe48847,0xffcfd5e9,0x005b1a19,0x01affcaa,0x0077604f,0x0053b528,0x006ecfa4,0x00f302f2,0x013e7356,0x0057aa69,0x01641c0e,0x018b3edc,0x0189cdc4,0x00b8bc92,0x0067230c,0xff997d08,0x00410168,0x0042b597,
-0xff8bbf2d,0xfff5907b,0x00375bc8,0x003fdd7f,0x015074be,0x01863b82,0x025d3760,0xffe74762,0xff8dd822,0x01edb93a,0x01a84eea,0x0258f244,0x01f47918,0x0180b436,0x01ce5f28,0x004ac51f,0xfdf1c008,0xfdffd940,0x00576acc,0x0026637e,0x0109be08,0x02ad171c,0x00e8f93e,0x00d2e92a,0x01088034,
-0x026fe7e0,0x02be54d4,0x00d15c71,0x02737260,0x029fcf6c,0x02072940,0x00efc3fd,0x0064397a,0xff37f3be,0x001b8e6f,0x0024d5fd,0xff196646,0xffd8e8ab,0x00125c91,0x003de420,0x022d89d4,0x0307d6bc,0x04124228,0xffced384,0xff98722f,0x035eddbc,0x02db8fe8,0x02fb9774,0x02f46dec,0x026e9e68,
-0xf89ac560,0xfa19a3d0,0xfa9fe818,0xfba0dc10,0xfcd1ecd8,0xfe62f590,0xfebf0dee,0xfef09fd4,0x00dc8b44,0x0281ce54,0x013c565c,0x02a0d6b4,0x02728018,0x014de63c,0x01dd5f62,0x0109962c,0xffdd214c,0xff6b07c9,0xff692473,0xfec62cb4,0xfea5691c,0xfec0d7a8,0xfe3ac538,0xfdd4bb2c,0xfe95e640,
-0x003128cb,0x0010ed49,0xff93cce9,0x00418d71,0xfd4ef484,0xfcd0052c,0xfba219b0,0x004a6b70,0x01459772,0xfdc87af4,0xfa5cc7c0,0xf9fe7578,0xffa6c59e,0x00d19786,0xffa3417d,0xfcf31440,0x008ddd9e,0x02688e44,0x035b98dc,0x015c11d6,0xff9de684,0x00a5f0d2,0xffe46492,0x0129a256,0x019e28de,
-0x0301e298,0x032b84cc,0x01f96622,0x015c7dea,0x010b1654,0x00edfec0,0xff10a48a,0xfeca8eca,0xffbc0e5a,0xfc181d38,0xfa00b028,0xfa313920,0xfa37dbf0,0xfadd0a48,0xfca86ad4,0xf7f66740,0xf7fd9cc0,0xf8208e70,0xfb3648f8,0xf9925540,0xf48f5d90,0xf7ea1290,0x0bc05210,0x07d974b0,0x0412f678,
-0x0557ce40,0x0786cfc8,0x08b23e20,0x05cb0eb8,0xff05f32c,0x010ea178,0x00294172,0x0088f912,0x00874158,0x0142a9d2,0xfe17e042,0x0471ae30,0x05279148,0x006e631b,0xff7e8a87,0xfdf9983c,0xfded1ba0,0xfdbde514,0xfdff27e4,0xfe79beae,0xfd929078,0xfd93e7b8,0xfe93fe24,0xfce35044,0xfc2fbfe4,
-0xfcdc7064,0xfae31598,0xfa3fb3b0,0xf6ee6b10,0x03f6c0c0,0x0b0abbd0,0x0a116d60,0x0d056e00,0x00c8507c,0x0033a856,0x006e5e6f,0x007c9c25,0x0034cbd6,0x025a3120,0x03acdb50,0x032d0ed0,0x03e05af0,0x02996a24,0x00a7ecee,0x01c3d732,0x01cd3632,0xfee63268,0x026fe680,0x0296c814,0x000c699d,
-0x00778c25,0xff1938ec,0xfd8c6304,0xfc20c244,0xfae2cad0,0xf9904e30,0xf7dbc1e0,0xf6b925c0,0xf6003a10,0xf6c676b0,0xf9f5fd48,0xff267a67,0x01f5cc9e,0x0446ad60,0x0115ab18,0x06842098,0x06017fe0,0x01fd523e,0x01a19f7c,0x01f595d8,0x020ff9bc,0x01f256a6,0x02564c44,0x0293bedc,0x030a8d28,
-0x026d6da4,0x00f0a0db,0x00d157a9,0x00cf57fb,0x000e552f,0x004bcb22,0x00fb4712,0x01d23dd8,0x0343a1b4,0x0312e6cc,0x018314f4,0x01aaeada,0x0171846c,0x0210ccd0,0x0224cd20,0x02101734,0x021c5ef4,0x02413fd0,0x03449218,0x03d78338,0x0599d860,0x068c9b20,0x07fdf380,0x04335960,0x014b528e,
-0xfcb85cdc,0x0131cd50,0x03886d78,0x048aeb08,0x02d7c690,0x037b15b0,0x025e15cc,0x01d4507e,0x01804908,0x0182cf2a,0x022ac9b0,0x02c58760,0x02b59694,0x02f0fc34,0x0279abc0,0x01e73330,0x01a58e98,0x01798c00,0x0128d3a0,0x012d2746,0x0103c9d0,0x00b8a1aa,0xfff7c1d4,0xff7c3e5d,0x003444cc,
-0x0056a986,0xffd4795a,0xff78ce5f,0xfcc953d4,0xfc01d3d4,0xfd0c9b7c,0xfee99f4c,0x00361cb6,0x01881792,0xfeaa6e04,0xfe4f4ff0,0xfefd7e4e,0x01845b5e,0x02fe2180,0x0428c530,0x0439a030,0x027b5158,0x02b20a6c,0x023e7734,0x01d2bb82,0x01500a46,0x01405cc8,0x011162ee,0x00e6fdff,0x00d588f5,
-0x0130761e,0x012d61aa,0x01af1788,0x0162438a,0x01e3dab6,0x019b4f02,0x01e9d0a0,0x01e02d6e,0x0190d5c6,0x00e03575,0x015d3d54,0x01c40e2c,0x014bbcd0,0x017dc7bc,0x022de020,0x02c5ddf4,0x02f85f5c,0x0256e7f0,0x0191b45e,0x00f81ea9,0x00ab3a81,0x005e2422,0xffc63e63,0x008002cc,0x0145a94c,
-0x022f5d28,0x024b6dfc,0x007980af,0x00f0fab0,0x0074822f,0x01629bc2,0x01666124,0x0191a1b8,0x02036f94,0x025aa3dc,0x02411cfc,0x01f46d98,0x0179d812,0x01745738,0x014872e6,0x0109c3aa,0x00b41db2,0x00a97efd,0x00c20a65,0x00b2e99e,0x004bd6fb,0x007f5516,0x00365b76,0x0024c3f4,0xffe58867,
-0xff99f884,0xff476c7b,0xff2807f8,0xfefe59d4,0xfefa9a4c,0xfeded56a,0xfee43d50,0xfeea49d6,0xfeddc0f0,0xff49f812,0xff7f8dfc,0xffcf2bc5,0x001a8c53,0x00b5c5d8,0x00f4408f,0x0069f28b,0x00188ced,0xff706d28,0x00f0404e,0x005c2319,0xffc648e5,0xff9f4218,0xff9007ff,0xff8cd191,0xff5f3da5,
-0xff3f59d5,0xff1b3136,0x0010ee66,0x009abc09,0xff1ecb9f,0xffee0a73,0x004fb9fa,0x00bfbc0e,0x008dcbd8,0x0085981a,0x007b68ba,0x00726219,0x006bb782,0x005aaa62,0x005e0c8f,0x005d53e8,0x006122b0,0x00528ecd,0x0049f88f,0x003c30f4,0x005ae10a,0x00749f4a,0x0089cde9,0x00aa8104,0x00f38ccb,
-0xff5787cf,0xff266410,0xff401b6b,0xff393884,0xff3bc41f,0xff39c56f,0xff565e2e,0xff67a7dc,0xffaefbda,0xff71fb9e,0xff637804,0xff62101a,0xff6c22a2,0xff75d2e2,0xff8ab638,0xff881d05,0xff976b2c,0xffb09ce2,0xff8b2612,0xff892e1f,0xffbdacc7,0xff772e90,0xff71ecb1,0xff98b77f,0xff5ff2ca,
-0xff50d3fb,0xff4b400f,0xff5d0e3a,0xff53b2cf,0xff487439,0xff022209,0xfeff718e,0xff36d425,0xff4c2924,0xff4d611b,0xff42a5e0,0xff1eb8f6,0xfe6dce98,0xfe9c1d9a,0xfed47fb2,0xfec1eb50,0xfec3e05a,0xff6531ba,0xffc5f961,0x002ea90e,0xffb88464,0xff86a723,0xff834e07,0xff87e58f,0xffab388a,
-0x0009e31c,0x00054a4e,0x0029c117,0x003f2df8,0x002fc9d6,0xffc562b3,0x00114496,0xffa4113d,0xff70871f,0xffddaea9,0xff3d6699,0xff1cdfcf,0xff0afae0,0xff2d471d,0xff014113,0xfec05c7a,0xfdef370c,0xfdecdd98,0xfeb10f94,0xff246eec,0xff4bd4f1,0xff17c863,0xfe9b9956,0xfda7d49c,0xfe9eab24,
-0xfee37ae0,0xfed30e5a,0xfe8bb816,0xff87b159,0x0033ca39,0x01421790,0x002197a0,0xffcac88a,0xffdcf682,0xffde38bd,0x004ca231,0x012b4a14,0x00c9b837,0x0103cf6a,0x0161a92e,0x01062984,0x00632f50,0x007b4bbf,0xffde2357,0xff881fac,0x00646956,0xff3a0357,0xfef69084,0xfecd86ba,0xff106b58,
-0xfea34188,0xfe600100,0xfce0390c,0xfd034218,0xfe706d08,0xfee7bed2,0xfec4474e,0xfea0370a,0xfdbcb048,0xfd1578ec,0xfdef7390,0xfdc9edb0,0xfd6f907c,0xfde6a864,0xffa7d159,0x00e2996c,0x028da02c,0x00a8790a,0x00764d45,0x008b0eef,0x019d077e,0x016a37d0,0x014b620a,0x016a949a,0x0204b8b4,
-0x02128f64,0x016ca152,0x009a7a70,0x0112b4fc,0x005b1f63,0xffaedfc3,0x0101fdc4,0xff44b818,0xfee38f0c,0xfec60268,0xfeb60b30,0xfe4e21e4,0xfd8b40a8,0xfb065800,0xfb087f08,0xfdabe854,0xfedab12a,0xff4a5d95,0xff3aaa9d,0xfdbb4008,0xfacbe6f0,0xfc9c6418,0xff66b38c,0xfffd5ac6,0xfe85c074,
-0xfdf48614,0xfe7150ba,0x00578e75,0x003b20b9,0x011cd9ca,0x00e32ef8,0x012ec484,0x020d6adc,0x037c68e8,0x017b51f4,0x0120d59a,0x01f3815a,0x00daeb5a,0xff39893c,0xfe4b563c,0xff63cbb1,0xff64e096,0x0033dd1e,0xfe88dcde,0xfdec1048,0xfd1b01ac,0xfd3f18a4,0xfc4d3244,0xf9ea0748,0xfd021d10,
-0xfe3b67e6,0xfea2ba92,0xfdc4f154,0xfbe1ed28,0xf83a4648,0xf9e3e440,0xf8cfcc40,0xfacc15b0,0xfa6ebb08,0xfc107cc0,0xff1823d2,0x022765c8,0x0289a6f4,0xfee7fc52,0xfff2a854,0xff752b98,0x006c4a25,0xffebe097,0xffc85b9d,0xff29fd72,0x02c5ecf0,0x02f535ac,0x00cdaca5,0xffd0385b,0xff0e00bd,
-0xff283bf0,0xffb3d42c,0xff709e85,0xff0e91a1,0xffe0154a,0x00d6cfe6,0xffd08337,0x00df78f6,0xff5bb549,0xfc7c1e28,0xf93b12f8,0xfa465948,0x01a7d1ea,0x011c5a50,0x00fa33ca,0xfe1a8754,0xfa61b4a8,0x0abbac10,0x0d69bc70,0x0b428d30,0x0a14c000,0x0a0299d0,0x05797a20,0x02de4eb8,0xff6cda9f,
-0x0126d818,0x00773b51,0x001d5b47,0x00375be2,0x0048cac1,0xffc4a513,0x00aea109,0x015a268a,0x03051b88,0x00555b0b,0xff2684e9,0xff108dba,0xff9b9bea,0xfef45232,0xfdba1698,0xfc137ed4,0xfba5a708,0xfaf12038,0xfe733e1c,0xfea0c888,0xfdef3984,0xf8e1a100,0xf89bff28,0xfeba4546,0xfa1979c0,
-0xfba6e160,0x01deea9c,0x06fd4978,0xff0ae38f,0xfffc3d11,0x0036cca3,0x01c0a68e,0x02f28310,0x04214b80,0x0460e690,0x03c1e43c,0x010b2cae,0xffe39e25,0x0094b66a,0x0094dfca,0x005a3e44,0x007856de,0x00df4cee,0x0143d0fc,0x032d5c7c,0x009ad49f,0xff593509,0xfedd1ecc,0xfdb34360,0xfca10de0,
-0xfc88363c,0xfc3a24a4,0xfcc0deec,0xfc742e6c,0xfd52ef40,0xfc097f2c,0xfc588c48,0xf95d9180,0xfca993c0,0x06381168,0x091ea4c0,0x0a59f480,0x073336c0,0x01fba522,0x01745a42,0x024542b8,0x02336868,0x02882580,0x02d4e8cc,0x02925c00,0x01f92e7c,0x016c59d6,0x01d60f0a,0x029380d8,0x03b29d50,
-0x025f7ca4,0x020f89f4,0x01ab9fca,0x031778a0,0x02f71254,0x01f5d0aa,0x0100b2aa,0x00ffbc85,0x00df4597,0x0045e176,0x00311894,0x001a2672,0xff10ecf5,0xfef0c13e,0xff7a5f8c,0x01dacd28,0x0337ac14,0x04bd75d0,0x027bcd10,0x022a03a0,0x04c501e0,0x01313a08,0xffd215c4,0xfea737de,0x000ee131,
-0xfe1ca966,0xfec6001a,0xffb6ccaf,0x009e8a78,0x01ad8bca,0x027477b8,0x02ccc354,0x024fb7a4,0x02b3c304,0x028df538,0x0268e554,0x02042b00,0x01b19b4e,0x012b2892,0x0121c2ea,0x019bdbe8,0x0277de84,0x026f2764,0x02191de0,0x01a1c4e2,0x01b00182,0x0221204c,0x02d0b9e8,0x041cbef0,0x04fe8a68,
-0x04d52ba8,0x03cea080,0x01bb11ba,0xff3e09ee,0xfea554e4,0xfefb64e8,0x00ee91f8,0x013b4958,0x01379f1c,0x004e36fb,0xfea84982,0x0108845e,0x0070849b,0x00cdeb98,0x00b151f1,0x00938199,0x00be776c,0x010126d8,0x015e194c,0x01536940,0x01477d3e,0x015e9d12,0x01bf3514,0x02535cac,0x02e1504c,
-0x023afb8c,0x01549e56,0x0063788b,0x011a26de,0x02288aac,0x0224bcac,0x01e9a77e,0x0243ed90,0x023a9094,0x01bfbbc0,0x014f59a4,0x0129d81c,0x0096862b,0x0054eb2d,0xffee058b,0x00d0ad83,0x01534bcc,0x01b94ffa,0x0195a1ba,0x019eb238,0x01f78d4e,0x01990f50,0x019ccb6c,0x01c8c944,0x01bf22ee,
-0x01e90776,0x02072980,0x023d7584,0x0251b7e0,0x0275a794,0x026060d4,0x0261e348,0x025abcb4,0x024a60ec,0x022527d0,0x0222fe7c,0x01c15c9c,0x018b597e,0x013742b6,0x00c905f7,0x0043d52b,0xffb06d4e,0xffa74690,0xff8c97d2,0xff7e7b5f,0xff8d422d,0xff9aad52,0xff973bf5,0xffd70410,0x0012db8e,
-0x003c2a01,0x00626dab,0x00856f6c,0x00ca56ef,0x00fe3b9b,0x0128ef84,0x013c7b92,0x0159bb8c,0x01747726,0x01918510,0x017d1b22,0x018fef70,0x01a2593a,0x01836dfc,0x0191b57a,0x01b245ec,0x01b42da2,0x01bb2d54,0x01be52f6,0x01c4719c,0x01c93982,0x01da0f26,0x019caa86,0x01649748,0x017bee48,
-0x01381ab0,0x010a6858,0x00db2e47,0x00f42c77,0x00eef478,0x00ece1c5,0x00e5cdc4,0x00dc580d,0x00cac577,0x00ed554f,0x0101c0da,0x011a47de,0x0121cc9c,0x012977ec,0x0129a958,0x012ee792,0x013a45c4,0x014c9c08,0x016461e6,0x016f4f46,0x00564674,0xffed7410,0x004d2f11,0x002f83bd,0x002e5c33,
-0xfffacff4,0x006746f5,0x007351d0,0x00770def,0x00562258,0x0041e840,0x00218a4a,0x002ef1fd,0x00431ae0,0x008277f6,0x00866727,0x009107ee,0x00822de0,0x00a0912e,0x009c8ef6,0x007575f9,0x0062fe1c,0x00538c91,0x004a99e2,0x005314f4,0x0046ddba,0x0022f1c2,0x001a127a,0x0021b645,0x005d1172,
-0x003a8ee4,0x004b060e,0x00ac40f7,0x0046e661,0x0028399e,0x00299486,0xffed54ef,0xff54d0ec,0x000b2bc6,0xff6af25b,0xffaf6f48,0xff604ca9,0x0069d51a,0x00c13855,0x00cd0d6f,0x008534b7,0x00488706,0x0014bbf8,0x001b3f9e,0x0050a30a,0x00e744f1,0x00d92984,0x00fed3e3,0x011a197c,0x01379488,
-0x013fb01e,0x00e8c3de,0x008ea9a0,0x00695162,0x0040329b,0x005a8648,0x003c0d91,0xffea83a8,0xffe646be,0x000258e1,0x0084cd5a,0x00392b72,0x00806512,0x015e78f8,0x0091868e,0x003acc84,0x001f7d8b,0xff5bbcb5,0xfe0e497a,0xffbceba2,0xff094ff2,0xff8f0d4c,0xfed9c322,0x006b879c,0x01030ddc,
-0x013d454a,0x00b33e84,0x00208ccf,0xffc63272,0xffcf6e27,0x0050fccd,0x017d4842,0x016ddff0,0x0197c2d4,0x01b433b0,0x02007f64,0x01ff805a,0x0173d272,0x00b94f41,0x0065e49a,0x00361877,0x005ce915,0x002446e9,0xff6f99c6,0xff2607a0,0xff4e2c64,0x00ae675f,0x000cdeaf,0x0086ab48,0x0233cde4,
-0x0016d4a5,0xff756381,0xff4e2015,0xfdcccde0,0xfd0d1a38,0xff1717db,0xfdaa8a98,0xfdba133c,0xfd6605ec,0x009033c2,0x01905328,0x0206be34,0x00ec3fc7,0x003fbaac,0xffe3c46c,0x00a21467,0x013b8bd2,0x02ce02e8,0x01dac540,0x023b2d30,0x02ffdcb0,0x0351a764,0x033ae984,0x023474dc,0x010bd710,
-0x00a974f5,0x001dfb54,0x0050b76d,0xfff7a83b,0xff3630c9,0xff1c6d12,0xffab1de3,0x01193474,0xffd43fd5,0x00f611ea,0x03a81154,0x0124272c,0x0002beb0,0xffb0f6f0,0xfcd57b3c,0xfbda0940,0xfae21c30,0x01d69b0e,0x02b2026c,0xfe9bf1f4,0xff11dd79,0xff753184,0x00d2e8bb,0xff831510,0xffe2e9c8,
-0x00c3fc6e,0x001b3b6d,0x00c75828,0x02709f24,0x0187fa1a,0x015866c8,0x01b3c5f2,0x0113c2f2,0x00e8fac5,0x00e273ff,0xffb4307b,0xff07b766,0xfe370c28,0x0019d16f,0xffe29e38,0xfda93cb4,0xfc140fc4,0xfc970fac,0xfe0d2f8e,0x03a4d000,0x039bcb50,0xfe641d40,0xfdb8586c,0xfc19ffb0,0xfa108c28,
-0xfad3a4e8,0xfdc47d80,0xf9e89038,0xfa552ef0,0xfc1dc300,0x00d0e883,0x00a8fdac,0x006e7db6,0xfeebf692,0xffcf7540,0xffc9ab2b,0x003e99c7,0x000f51a1,0xfff0991e,0x00b6de65,0x0196556c,0x01fffd88,0x03450108,0x021ff7b0,0x01902712,0x0023d09d,0xffd8b8e7,0x0014e37e,0x0083ce3c,0xfefdd332,
-0xfe531306,0xfe74790a,0xfca7ec08,0xfb798b10,0xf8f5bde8,0xfc85361c,0xfe8d1120,0x00f53980,0xffc31730,0x003251de,0x01864368,0x00df2ee8,0xfe563524,0x034f9b48,0x0881d180,0x072ca050,0x069b6e38,0x012ce83a,0xffe2a606,0xffe3ecf1,0xffe6a352,0xffca3046,0x0026d0b3,0x007b74dc,0xff5884c7,
-0x0081a707,0xfe94579a,0xffc5ce26,0x053a7260,0x01d26084,0x0045f70f,0xff890105,0xffb07381,0xff34e853,0xfeefe952,0x00304530,0x00992376,0xff791727,0xfdbbc790,0xfbc9b9b0,0xf85bc408,0xfb185c98,0xfac1cea0,0xfb291f28,0xf603be70,0xf38c6370,0xf1f378b0,0xf8e56458,0x0a333490,0x05828ea8,
-0x03b874c8,0x0408e9e8,0x058ee238,0x049355b0,0x039ee79c,0x026b6bbc,0x00660d7d,0x0003490d,0x002b11a7,0xfff8bfa0,0x0004276c,0x01976b50,0x0073a34a,0x00a1aa1d,0x036e7014,0xffa57303,0xfe7d1860,0xfe6a0660,0xfdb0b258,0xfddeb560,0xfe4a4884,0xfe66e6f4,0xfed970b6,0xffacbdd0,0x006cab61,
-0xff226c75,0xfa408e80,0xfa1156e8,0xfa396588,0xfe473f5c,0x01e568f6,0x0673c2d8,0x0a577f50,0x0b952df0,0x00f958e5,0x018dba22,0x01e31bc0,0x02136c88,0x02d1d1e0,0x021bf020,0x024850e8,0x0325702c,0x03009ae4,0x02e370b4,0x02bda09c,0x02821904,0x01f87e68,0x00c4d75f,0x011f7c40,0x0173674c,
-0x0252946c,0x011444c0,0x000be487,0xff24b0af,0xfe8a3024,0xfd96bb78,0xfc55eba0,0xfcb52e9c,0xfcd07234,0xfd47aa08,0xfc4a8fb8,0xfce3d090,0xfdf7c828,0x039fd940,0x072a6b78,0x095be0a0,0x07598958,0x0436a2b0,0x00df946d,0x00e760d8,0x01c5f90c,0x01a204d0,0x01953492,0x022d1650,0x02eb4f70,
-0x028d7f10,0x02377f9c,0x01d61950,0x00dd371f,0x00a4cd5c,0x0113bcf8,0x0120cb32,0x013e3f36,0x01c9ee44,0x024bbe88,0x021a6254,0x014421e0,0x018957c4,0x01c07c18,0x02002998,0x02589c80,0x02f02680,0x03c4b034,0x04926570,0x04c19508,0x0514e888,0x042e7988,0x042b5058,0x041c1778,0x04258698,
-0x039546bc,0x02c6e6a8,0x019b6b7e,0x014cc874,0x010379ba,0x01882162,0x003f82d9,0x0047a33a,0x00b9cdbc,0x012f402e,0x0177fdd6,0x0185cf6a,0x01bbb074,0x01fc2d1a,0x01d236e0,0x01a25ea8,0x015ca0aa,0x013fd402,0x016cc1b8,0x014c0804,0x00fee481,0x00c2dd8f,0x00b54a85,0x002504f1,0xff77cd6f,
-0xff176bae,0xff2b0882,0xfeee2db6,0xfed23d80,0xfed0afa0,0xfee19b6c,0xfef169de,0xff6e0f6b,0xffefcb93,0x008d7e30,0x00e2468f,0x012efd12,0x015c8d3e,0x0109ab50,0x00955e69,0x00215ac7,0x00111486,0x01e46a6e,0x01fdb86c,0x01fea454,0x01c2eece,0x01c6f084,0x019fcb96,0x0171e2c2,0x01648e5c,
-0x014f444c,0x016642ca,0x017b4ef4,0x0177f694,0x016dffa8,0x017dcaf8,0x015ca91c,0x013c89c4,0x0127d2ca,0x01061644,0x00dca4da,0x00ec8047,0x011a6c5a,0x013bb8be,0x0163c220,0x017c0418,0x0191e0f4,0x019b65f0,0x01987f8a,0x0181a606,0x016655a6,0x0139857e,0x011d7a0a,0x01212258,0x0148bc4a,
-0x0185b1f4,0x01b53e5e,0x01e016a0,0x01bbfbb0,0x01d01660,0x01bbea2a,0x01a0fb30,0x017a81ca,0x01957fc8,0x017a34fa,0x016abb36,0x017ad1f2,0x01769e2a,0x01731112,0x0177439c,0x01767bd6,0x01769016,0x0167d1e2,0x017a3ff2,0x0124d386,0x0140ae36,0x014d4058,0x01690c5c,0x015fd7aa,0x01607b38,
-0x0160ed08,0x016423a4,0x016afbd2,0x01781d12,0x016deb28,0x016f062a,0x0176c35e,0x018b6e98,0x019a3926,0x01987e08,0x01a0464e,0x01a0e70c,0x01a5f298,0x01ab898c,0x021379c8,0xffbdb01d,0xff96353d,0xffd8bf64,0xffc89b05,0xffca6746,0xffadb862,0xfff1cd7a,0xfff5e2e0,0xfff602cb,0xffea93dc,
-0xffd54d1e,0xffb31054,0xffb8ccd9,0xffc1c65d,0xffdfbb97,0xffeff1ac,0xfffdb440,0x0011d706,0xffecfe55,0xffdc7dbf,0xffddc426,0xffc2d6ae,0xffb2c5f3,0xffa8f618,0xffad5f8d,0xffabdde6,0xff976410,0xffbe82fd,0xffc91c37,0xffb96315,0xffc2510e,0xffb6dfec,0xff9e289b,0xff87e177,0xff8022cc,
-0xffa4bc0f,0xff83fbe1,0xff51a4b2,0xffdd13f2,0xffda7101,0xffdf6921,0xff6852eb,0x0059a009,0x008ca1dc,0x00494757,0x002bff0f,0xffe9d09e,0xff9c5814,0xff940973,0xffbd484b,0xfffdb7de,0x005959b2,0x008a733a,0x007bb4e4,0x0065b198,0x003e6e8d,0x000eed19,0xffb7886e,0xff8aa075,0xff80ea96,
-0xff893eee,0xff854337,0xff43aec8,0xff9887e6,0xff9b4c37,0xff53de26,0xff7dbcfc,0xff649757,0xff1f50bc,0xfefbbdda,0xff042fd5,0xff7ccd86,0xff2bfacb,0xfedf713a,0x003615b8,0x0002c0bd,0x001af6d9,0xff4bb715,0x00e930d3,0x013c6010,0x00c8914d,0x00b0b654,0x0013a4a4,0xff71bc28,0xff5c97cb,
-0xffb11294,0x00702be6,0x012ef054,0x0168ce7a,0x0143c5e8,0x010e2432,0x00c2acc2,0x008e4149,0xffbac68e,0xff6c94a3,0xff4dcdd4,0xff49deae,0xff37ed9a,0xfebcb480,0xff9a97d6,0xffdfb64b,0xff49517c,0xffa1dec3,0xff558ec2,0xfe947caa,0xfe4c8274,0xfe179928,0xff2fa7fc,0xfe978198,0xff49766e,
-0x00d5cd62,0x004ced26,0xffc3221a,0xfe852106,0x01783d84,0x020ccc30,0x01d4f2da,0x0145aa56,0x003ca0c3,0xffba7829,0xffdbea60,0x009558a0,0x01d9bc2a,0x01c9900c,0x0237bad8,0x027a2830,0x025c51a4,0x01b93628,0x013d09a8,0xffc6bf00,0xff26d651,0xff24034d,0xff20b7a7,0xff1446da,0xfe311328,
-0xff59e435,0xff58deba,0xfe144746,0xfec9112a,0xfe7d28de,0xfd8770f8,0xfd6b0a58,0xfdd09268,0xff984f62,0xfede59f8,0xfb84b038,0xfa9112a8,0xff9ea98d,0x01d5deac,0xffc0beee,0x00a96a60,0x00e991e5,0x014cc0c0,0xff247902,0xfecd793e,0x0038f91a,0xff97b936,0x003e8755,0x018d2e92,0x026cd558,
-0x0268f4c0,0x01026ad2,0x01413a5a,0x0120b900,0x009f467a,0x006928dd,0x0020eb82,0x0056da2e,0xff5a28d6,0xfe72f4f8,0xfd790948,0xff3016ea,0x005e0e1c,0x0182b094,0x01df6c9e,0x00bb75b8,0xfe9bb74c,0xfcb4c678,0xfaf87c90,0xf9f191c8,0xfad88158,0x007d9cf9,0xfc8d4f68,0xfcd18c4c,0xfe6e2778,
-0x01bce5a2,0xff6b50e6,0xfe08d230,0xfe1fff72,0xfecb3e70,0xff1df9f9,0xff2a1775,0x0011a9a6,0xfff9c06e,0xffe328c5,0xff555083,0x002658a1,0x03166a48,0x0144ad8e,0x005b30a7,0xfff7373f,0x005222d8,0x003038c8,0x00017cc7,0x00e6237f,0x00064c70,0xfda89008,0xfcbca4e8,0xfd08e664,0xff0b5b42,
-0x00a9f952,0x008db684,0xfdbc5328,0xfed140d0,0x00027f8f,0x01cdbbe4,0x01425ca4,0xf227c720,0xf789a930,0xfe24fe8c,0xff5eaef2,0xfed214da,0xfe37cc44,0xff03052f,0x005c721a,0x0034d418,0x002d051e,0xffb991ca,0x000657f2,0xff529c5a,0x002ca0c9,0xff6fb2d3,0xffffdf2d,0x022f8864,0x01cb4a34,
-0x01a1e06a,0x00c21f52,0x00a90dee,0x00b5bc88,0x0082d6bb,0x00b39cfe,0x0010e4ae,0xffecac7a,0xfd99a8e4,0xfd5f6f54,0xfe3ce118,0x001e15ad,0x008f30d6,0xfd1aa588,0xfd6b0b4c,0xf9b8a4c8,0xf5eacf40,0xf1e1b720,0x0d294870,0x0be8c130,0x09988a80,0x080792a0,0x072e9728,0x052ff680,0x032ba144,
-0x014d96e0,0x0131bd0a,0x00a3a496,0xffde75fc,0x000e4c59,0xfffbf386,0x00b2f8ee,0x007e6607,0x00c7554a,0x01c5ad4c,0x012cc72a,0x007b80f5,0xff4a3c83,0x000281be,0x001550f7,0xff72667a,0x00affbad,0xffc8f788,0xfeb6dc06,0xfabb60d8,0xfa51bc60,0xfc762034,0xff240fc9,0xff230095,0xfb706fb8,
-0xfb1abca0,0xfe486f30,0x05cc0d48,0x0a9f1dd0,0x014645fc,0x010d5bbe,0x0171169a,0x0219d5a0,0x032894dc,0x02a145d8,0x02d325ac,0x035829f8,0x02c3730c,0x024e0160,0x01b3c1ce,0x026a1038,0x01dd554a,0x00b0d2f4,0x00501b2c,0x009323e4,0x01fe73ac,0x00fae580,0x0079e4b1,0xff6bf98c,0xfeedaaae,
-0xfe9e425c,0xfdf3db68,0xfd388ad0,0xfbb8aed0,0xfa6bfef0,0xf8ba8948,0xf948b7b0,0xfbc41770,0xfe178528,0x01ad1a16,0x055ecf40,0x07b1aca0,0x08011af0,0x0714e268,0x03214558,0x02583eac,0x02ae8958,0x03477df0,0x033a9108,0x02ad3f7c,0x020365c0,0x01765de8,0x01558a58,0x00db3e05,0x00a709a3,
-0x005cd4f3,0x00c78059,0x01738866,0x01e9d862,0x0212fde8,0x01d9a97e,0x01ff93c2,0x011a7f42,0x01120f48,0x00c0c01d,0x00595e4b,0xfff6fb9f,0xff531ace,0x0014fa09,0x00af3192,0x00b5bca5,0x03202edc,0x04caeb28,0x061762a0,0x06324068,0x05802bb0,0x04332b40,0x01eba396,0x00c50e52,0x00ea616b,
-0x01b86fa6,0x00cc70d8,0x0122c262,0x0152f27a,0x01c85a14,0x02455ce4,0x024ddcc4,0x025d44f4,0x026f3c84,0x0266f9a4,0x026173c4,0x0238c980,0x0204e908,0x016d8a78,0x01243fe8,0x01759900,0x020c8290,0x02908008,0x026ccb68,0x021bb5ac,0x021d262c,0x026cdb1c,0x029be7ec,0x02ba73d0,0x02790a4c,
-0x02419ce8,0x01e93cec,0x01e52cac,0x01b7b0c8,0x01c48c5e,0x010def06,0x00888b7a,0x0029e823,0x006ca1fc,0x007b1adb,0x00218d16,0x006a9c2e,0x0147c9b0,0x011ab270,0x01322f96,0x00fb5d98,0x00f6a365,0x00f0e491,0x00dd40bb,0x00c64f52,0x00c02f73,0x00c7eeb6,0x00d02179,0x00e67263,0x0109f376,
-0x011c972e,0x01350a6e,0x01479cea,0x0131afd2,0x015580d8,0x01518a28,0x02046ca4,0x01cc244a,0x0173a1e8,0x014f13ac,0x011e0cda,0x0102eed2,0x00ea3722,0x0126c9e4,0x0158b34e,0x018e8622,0x01bab3a8,0x01e5fe98,0x01e66d6c,0x01b456a2,0x018e4808,0x0182128e,0x016f6a1a,0x010428c2,0x00e9e049,
-0x01448966,0x0169ff2a,0x01a77a10,0x012aea44,0x0172052c,0x01a70444,0x01a9a86c,0x01a961d4,0x01ab1088,0x01a60656,0x01a50658,0x01a6620c,0x0176f2ce,0x015854a8,0x01b6e7d6,0x01a6e740,0x019536d2,0x01a254e8,0x016e04d8,0x0163b38e,0x0146c20c,0x013162de,0x01180e3a,0x00ecd474,0x00fd6afd,
-0x01000190,0x0100b73e,0x010d46ce,0x011ac9c2,0x013c2d98,0x01319780,0x012bd83e,0x01209cb2,0x010da63c,0x012c9e26,0x0070ade5,0x0058be38,0x005cdb23,0x0058a282,0x004a4a59,0xfffa58d2,0x0081871d,0x00788091,0x0039b858,0x004d0bf8,0x0039cbce,0x000553da,0x000d806a,0x0013d812,0x001f625d,
-0x006ab102,0x008f66af,0x0060766d,0x0064e4f9,0x005dd077,0x00511d0b,0x005c5ec4,0x00586d1a,0x0041857d,0x00566034,0x00611de7,0x005e1594,0x008dae77,0x008936e1,0x0055859f,0x003d0b2a,0x00373b8a,0x00694463,0x0048cd87,0x004c6c76,0x006318de,0x005c9dc6,0x0073134d,0x008e893a,0x00924ea6,
-0x00a325a2,0xfff47446,0x00bbb218,0x00e9a82d,0x008bbafb,0x00c221a0,0x008bf700,0xfffe3279,0x0011a69e,0x002a607b,0x004c13a6,0x00cbfcfb,0x00fb2fae,0x00f50412,0x00a6f4ce,0x006468ce,0x002f7dc5,0x00444c3f,0x003bc9c1,0x00083c56,0x003442e5,0x0058cfba,0x005a97f6,0x00edaef7,0x00db4890,
-0x0058a73e,0x001b94e0,0x0021a0fe,0x00cf6789,0x0085fd99,0x008d631f,0x009f4478,0x006edd6d,0x00375243,0x001b1aca,0x006d907d,0x00839346,0xff3de99f,0x0139b320,0x0164fab0,0x0087de7c,0x01095344,0x0098c47c,0xff65a79e,0xffa17560,0xffd03edf,0x001d7e76,0x014c5362,0x01a2d6b4,0x0182beda,
-0x00ec7210,0x0099a4cc,0x000c0644,0x002e3e05,0x001478d3,0xff989d24,0x0001277e,0x0044b696,0x002f22fe,0x0164d492,0x0140757a,0x00118801,0xff84f0a8,0xff4f8c4e,0x00a29a19,0x000d518f,0x0030e93a,0x00661700,0x0046abc2,0x00703c67,0x00eb9c12,0x01cc5bde,0x013f0e5a,0xfed269b2,0x01799a3a,
-0x024cbeb4,0x0168eecc,0x01e13514,0x00ab7ac0,0xff2b52b9,0xff5104ce,0x00258fad,0x00fa1d80,0x025cab14,0x02a8db70,0x021971bc,0x01893e54,0x00ddac05,0xffd64dc7,0xffe2bf99,0xffd566d6,0xff17612b,0xffc1f7f2,0x002549ce,0x0011c7a0,0x02070e18,0x019a47e6,0xffddcb7b,0xff4f648b,0xff9c4f97,
-0x01e1720a,0x014ecc8a,0x015e055c,0x012a606a,0x00728d5f,0xfea04b10,0xfc661d48,0xfb057000,0xfd5d4178,0x013b7ec8,0x017f717e,0x01221466,0x0003f93d,0xff19bd34,0xfeaf6d86,0xff638db9,0xff7c5806,0x002463a8,0x00d31b58,0x020d06b8,0x025b2704,0x0193a4c8,0x0191ee38,0x015a9e06,0x016e14b8,
-0x002bf302,0xff8f8e9b,0xff5b2ad5,0xff258be0,0xff510bfa,0xfff3b136,0x00ed64dd,0x01995844,0x02ddc650,0xff239b58,0xfd2f720c,0xfde19744,0xfc31aba0,0xfcb367ac,0xfe84a34a,0xff21a64b,0xfeacba38,0xffa871c2,0x00bbfd14,0x00401dfa,0xfe487fc8,0xfdd37630,0xfdf9659c,0xfeca3d48,0xfeea5180,
-0xff23b043,0xfef0db86,0x002e0315,0x004181c6,0xffeac80f,0xffb53107,0xfffbc278,0x010ab826,0x01b0511a,0x01bbed0c,0x008e37de,0xff967519,0xfeffff16,0xfe81b686,0xfe3c8918,0xfdcae778,0xfda8fd44,0xfe4408c8,0xfefd05d4,0x010688d6,0x00d227d2,0x014cffb8,0x013ccd6e,0x02216fe4,0x0175c2ac,
-0xffe4466b,0xfe49ff64,0xfab05500,0xf76ce680,0xf8d39c70,0xfb2e3d18,0xfcfda09c,0xfe9ae724,0xff88c414,0xff703be4,0xffc680be,0x003dcacf,0xffa1418e,0xffee75fb,0xffcea501,0xffa9c82f,0x001d0e39,0xff76c377,0xfef22bf8,0x011a49b4,0x018119f4,0xffe1d20f,0xff496f8a,0xfeb4f71c,0xfe7e9dc0,
-0xfe39af86,0xfd85cf20,0xfc5ac888,0xfd6a71c4,0xfe1177d4,0xff37f757,0xfddfe22c,0xfc94ed24,0xfbc5db80,0xfb8ecf50,0xfd759738,0xff60d68f,0xfcd152a4,0x02f89c08,0x06fb7138,0x09cf0250,0x083dbe20,0x06a97070,0x03f088a4,0x02042ec4,0x003010c8,0x00a003c3,0x001c8f05,0xffc4715f,0x001a174a,
-0xffffc008,0xff7698bf,0xffc73cfa,0x000fa34d,0xff9eafc5,0x01d5f794,0x01f2df40,0xff6b9c49,0x001585d0,0xffc7aeb5,0xffa66e8e,0xfe6846d8,0xfd8e93b4,0xfbec4ae8,0xfd5d4338,0xfd895f58,0xfd08b354,0xfc68cd68,0xfc77caf8,0xfcfe44dc,0xfa43b640,0xf96b7ae8,0xfb0daa48,0xfeb7b934,0x08b0d140,
-0x0661b2c0,0x04ce8d00,0x04573d18,0x03a75bb0,0x03513bb8,0x02ff78e8,0x029e2768,0x024cd240,0x019dc04c,0x0090cedc,0x004e1495,0x0093fb89,0x01b9c9f4,0x0098caba,0x003421f2,0x000e0ad6,0x0019034f,0xff912c9e,0xfde1195c,0xfcef3c70,0xfc33993c,0xfc375da8,0xfc46b068,0xfce18408,0xfc8b3934,
-0xfeac2afa,0xfe32d3d2,0xfb5a7990,0xfb105d28,0xfaf9a630,0xfbe219f8,0x012a14e8,0x0598d518,0x089a3220,0x0938a210,0x02096c98,0x01f5e9f4,0x01f64cf8,0x01fc9256,0x019638e8,0x01a5da78,0x01c762c0,0x01cd3646,0x0217f470,0x02229cdc,0x01ff63a6,0x0184724a,0x01253332,0x00f932ef,0x016bd740,
-0x01c31374,0x01bd24ec,0x01431496,0x006fbee9,0xff7c1cb5,0xfef66cb8,0xfe8a84a4,0xfe52436c,0xfd55600c,0xfd16e894,0xfdb56214,0xfea2e1d8,0xffb97080,0x00dcf7b5,0x032dc9e0,0x04d45f80,0x055c4ae8,0x0588ff30,0x049a57b0,0x0320cdfc,0x02670884,0x02601b3c,0x0286fe58,0x02646094,0x02788724,
-0x02b0c5c8,0x02568c80,0x01e9c0d8,0x018efeaa,0x01b43fb0,0x01be14fa,0x0200b808,0x01f174d8,0x0208c44c,0x01d2dbec,0x01dea634,0x01b143e4,0x01ad8b28,0x01de7bca,0x0224c970,0x02775110,0x02a72d40,0x02c7bebc,0x02fe33e8,0x035cb9dc,0x03b8bac8,0x040ac5e8,0x04241500,0x044790f0,0x045f93b8,
-0x036552fc,0x0299afc0,0x02226328,0x01ebb904,0x01dfc5a8,0x01ba0420,0x022616f0,0x00e50476,0x00e79b0f,0x00bf2315,0x00e89bba,0x00d333b8,0x00c739fa,0x00e4f935,0x00e4481c,0x0107a81a,0x0110b5e4,0x011e00ca,0x012c5d8a,0x0149feec,0x016a26a2,0x01b2eabe,0x01fe716e,0x025148b4,0x02973a70,
-0x02dc80e4,0x02e8cc8c,0x02b9342c,0x02acf8a4,0x0284a9b8,0x02670b64,0x023aceb4,0x021139d4,0x01d8d2a6,0x01a10bdc,0x018bb340,0x01785c90,0x01705cb8,0x013a02dc,0x012cd2e0,0x011186d0,0x00fc2b64,0x00e9cf59,0x00d4fd0e,0x00d524dc,0x0092d077,0x007797bb,0x005e176e,0x00b33854,0x00894ab2,
-0x00739021,0x0075d256,0x007bf309,0x0080a246,0x00893474,0x0089a1f4,0x0082bfec,0x00c62575,0x00f9fc63,0x00d87e3f,0x00ff8897,0x012751e2,0x01540e1c,0x014fcc4a,0x0150e9fa,0x01546490,0x01541e96,0x0157f35a,0x0163a08a,0x014a3f86,0x013160a2,0x010c718c,0x00f57bc5,0x00dd6edd,0x00c86a79,
-0x00d76a6e,0x00df436d,0x00e596e2,0x00e026c8,0x00d86404,0x00434dcb,0x002e5e9c,0x0001f8cf,0x0033f5b8,0x00420394,0x00266785,0x005503db,0x005b6f4f,0x0048ff70,0x00637e24,0x005cd19c,0x0042fa7e,0x003c7817,0x003be44d,0x003993c6,0x004f9eab,0x005f83ae,0x009afc43,0x006dd935,0x005cf06e,
-0x0049a4d9,0x004306a6,0x003d31c9,0x0034d15d,0x002eefa0,0x00380a69,0x0067dde5,0x004b7373,0x0032cfe7,0xffe258ec,0x000affe5,0x00178c7a,0x0037d1a5,0x003984d2,0x004376ca,0x00554e33,0x003a4a3b,0x00168151,0xffec2d6f,0x008c384d,0x00787a87,0x0015ad32,0x00710e63,0x007fc53f,0x00549226,
-0x00826d7b,0x0073769a,0x00356644,0x0012e818,0x0013a21b,0x002be665,0x0080d737,0x00b09a1e,0x00fb9d4c,0x00b57ee5,0x00789301,0x0058905b,0x00506ba1,0x003409a1,0x002a2a4d,0x000d8f6a,0x002f4390,0x00a7dc50,0x0052e3ae,0xfff5b6b4,0xff47d6f1,0xff9ad1d6,0xffdba060,0x004f6309,0x0057e62f,
-0x0063e247,0x00718b65,0x0038dfa4,0xffecaa4b,0xff5fb757,0x001e19b2,0x003c7859,0xff8a1000,0x00df5ad5,0x00de072c,0x002cd926,0x00b6d87a,0x009ac555,0xfff86963,0xffe6c812,0xffd5c218,0x000a7ae3,0x00b0d3af,0x013621ec,0x01cb3456,0x01362d80,0x00b3f87b,0x005b5c7f,0x006c17b9,0x003022ce,
-0x0013587f,0xffdf8ef1,0x00209af0,0x0113fc48,0x008505f7,0xfff6b98a,0xfe575786,0xff0df1bd,0xff5e4db7,0x00221633,0x006ebfb0,0x008631d4,0x00c25b71,0x004413f1,0xffd7a3d3,0xff83e86f,0x017b0bde,0x0130061e,0xff23c1e2,0x00be83ec,0x018b6fe4,0x00bd83f3,0x019d1bf8,0x00f69e82,0xff613a4f,
-0xff3cb74b,0xffc07ea3,0x0064728a,0x01a8b5c6,0x0215304c,0x026c4928,0x0175c85a,0x00a95f57,0x003c3557,0x0050cb0b,0xfff45b8b,0xffd9dc7d,0xff99b25f,0x001d04ef,0x0188a85c,0x0078cf8b,0xfef3f312,0xfcf3838c,0xfe42b9e0,0xff6981c2,0x00b6ca98,0x00ea342d,0x0120f2dc,0x01013274,0x0078a996,
-0xffb845e8,0xfe8e0e84,0xfa9524b8,0xfc43001c,0x02b62384,0x0154c4f8,0x00a6aad3,0x001f3592,0xff470234,0xfee923c8,0xff34b857,0xffef2eb7,0x005a31a6,0x002e8848,0x00f103df,0x01b01358,0x02fa8c30,0x01a067ca,0x010d0636,0x01008dc6,0x011418a0,0x00e7b0c5,0x0088a06f,0xff8fea78,0xffa3b033,
-0x00f35b9c,0x014d9cf4,0x01824030,0x021698e0,0xfcd65440,0xfba28248,0xfe1e8eee,0xfe43bcd0,0xfeb66a46,0xfebde7ea,0x0019205c,0xfef0c0a0,0xff88f28c,0x0223639c,0x0126adb6,0xfd5e9184,0xfcc9304c,0xfd3c6e34,0xfe944bf6,0xfed99d62,0xff5beef6,0xff31117e,0xffdc004b,0x000ebbc5,0xffd3ef3e,
-0xfff641b7,0xffa23442,0xff08c6f4,0x00ced1ca,0x011faa7c,0x002eda71,0xffd2641b,0xff1963f7,0xfec74864,0xff2944cd,0xff55ccd4,0xff03c8e9,0xffe28f9b,0xffc9cbc3,0xff9d42a2,0xff92aaa6,0xff4c2454,0xfe22d71c,0xfff8fd6f,0xffc3f606,0xfdbeae94,0xfe843cc8,0x029fb5b0,0xfea34680,0xfc726724,
-0xfcc86228,0xfd98bb6c,0xfee8c400,0x0010daa3,0xff78e8d2,0xff84193a,0x001beb76,0x0021724b,0x00135c85,0x001d9422,0x00226b02,0x00bc55c2,0xffdb6c11,0xfe9c4ecc,0x00e37d92,0x010a21c4,0xff81fe4a,0xff15ebbe,0xfe6353b0,0xfe217c06,0xfd899d38,0xfdca8d88,0xfe7e558c,0xff571c16,0xfeff40ec,
-0xfd411e34,0xfd0ee61c,0xfcf7c78c,0xfbd6ff78,0xfec181de,0x0012ad07,0x00674a52,0x033c6db8,0xf6306e00,0xfcdea9e0,0x01b384bc,0x0262041c,0x02458438,0xffcffb34,0xfecc9b60,0xfe7c3096,0xff7a358a,0xff5a5377,0xff2260b7,0xffb8e723,0xffcbddb9,0xff130c33,0xff42847b,0xff40ce78,0xfee3963e,
-0x00b4893e,0x00dd6ff5,0x000da107,0xff1b1143,0xfe6e98cc,0xfed5779e,0xfed33a82,0xfefa1626,0xfed5a448,0xfede675e,0xfedec012,0xfeecd280,0xff02162b,0xfe9b05d0,0xfc8998dc,0xfe84710a,0xfc666910,0xf6c2f8d0,0xf5572800,0x08f3b9f0,0x0a075f50,0x0835ec90,0x06b661b0,0x052c3168,0x0563cb70,
-0x04df43f0,0x0341c05c,0x021450f8,0x011ae5dc,0x0043c37d,0x000eab11,0x003ecb56,0x00b68359,0x008ae627,0x003f2103,0xff4944b5,0xff983fae,0xff3448dc,0xfedc3ea6,0xff027919,0xfececb02,0xfecf21f8,0xff00e484,0xff62be24,0x00053a7e,0xfecc4800,0xfe3aff72,0xfe85cf24,0xfd61721c,0xfc19e1d8,
-0xfa0b43b8,0xfa9657c0,0xfda946c0,0x02b170c4,0x066c8150,0x0473e348,0x034d5540,0x03190e1c,0x0326b6b0,0x02a496b4,0x02d80fb4,0x02c203ec,0x02423a14,0x029c1d7c,0x02993b00,0x02709768,0x02666244,0x01c9cca8,0x00a043af,0xffeeb872,0xffcf6219,0x002c38cd,0x00d5688b,0x00b17e5d,0xffbccee6,
-0xff021f7d,0xfe5068f2,0xfdb5a6b0,0xfce6b410,0xfc12957c,0xfb4ea438,0xfa720020,0xfac0a3c8,0xfc8a8a88,0xfdc7ad58,0x00470d59,0x038eea94,0x0690ad78,0x079758a0,0x06d2a540,0x05889f28,0x03fad970,0x034eb804,0x02ca4670,0x02818db8,0x0223b9d4,0x01cefbf2,0x016f6364,0x010e215a,0x010f36f2,
-0x012a2dbe,0x0129abce,0x014a370e,0x0158d664,0x018fc2b6,0x01ab7ef8,0x01af2ace,0x01a458fe,0x01856462,0x01cb6ede,0x0185e8be,0x014cbafa,0x015b3776,0x013d2fa0,0x01c7b446,0x02463a04,0x02be1c8c,0x039f780c,0x045c1de0,0x050264f8,0x05459098,0x05929380,0x05ea6658,0x05171fa8,0x04b62900,
-0x04a1c200,0x0452e518,0x02f70a3c,0x02e473a4,0x020d5e50,0x02b082e0,0x025f65a8,0x0264e29c,0x0292e4b0,0x027d5ca0,0x02a178b4,0x02723b30,0x0252ed60,0x024df39c,0x0236eac0,0x02171a34,0x01e4b032,0x01c10c0c,0x01c42c8e,0x01a44122,0x017d20fe,0x012ecfbc,0x017f2a52,0x01d2b756,0x020f6200,
-0x025948b0,0x0296e66c,0x02d8627c,0x02d9b944,0x02e2f1ec,0x02f7ec04,0x0329dc74,0x035aa9b0,0x03b2b3c0,0x039cbca4,0x0381b244,0x034dfe9c,0x03104118,0x02d74db4,0x02ed4b4c,0x02784a98,0x023a7048,0x01ce8240,0x029e9cf4,0x023e09c0,0x01d3c726,0x01c870cc,0x01ce0fee,0x01d418d4,0x01cffa6c,
-0x01d294a0,0x01d713c4,0x0219be88,0x0244992c,0x01bf1238,0x01f4b982,0x020abf44,0x02288604,0x025b3134,0x0276bb0c,0x029f7cf0,0x02ba316c,0x02d70000,0x02fe4438,0x02fccf28,0x030778e4,0x030f551c,0x03138ba8,0x031243ac,0x0315f9f4,0x02fd4930,0x02f32434,0x02eb628c,0x02ebe390,0x030a3190,
-0x0064fa64,0x0034a041,0x0024f01c,0x003aa0e9,0x0049daf8,0x0053a5bf,0x005fe71d,0x004b3e23,0x003e67c2,0x0045057e,0x004b79b7,0x00610767,0x003ee71e,0x0039d880,0x00389133,0x005579ff,0x006bd51f,0x007c6078,0x00803705,0x00846e9b,0x007dc002,0x00784d7e,0x00725be8,0x006949db,0x005e9174,
-0x005d2abd,0x0082646a,0x003cdeb8,0x00280ac3,0x0020ce37,0x003520e5,0x00475386,0x005a4c8a,0x0071b051,0x006e1a65,0x00417cde,0x0041f8b2,0x000b883e,0xffffdbf2,0x00281dac,0x007427c2,0x00a9773e,0x005793ff,0x0044271b,0x0061de0e,0x006f053c,0x0079d9e2,0x009863bf,0x005000d8,0x004095a7,
-0x0049dd59,0x007c3e54,0x00aa0c6d,0x00e5bd6a,0x00eb1d11,0x00d83edd,0x00bc2d6a,0x00c04e4b,0x00a514e4,0x0085369d,0x0064fe1b,0x005670b7,0x00a1b864,0xffde72d6,0xffa23460,0xffba0402,0xffdbc1a0,0x001d89de,0x004b7496,0x0093d84d,0x00857e17,0x0007a0a3,0x0013ff3d,0xff81d124,0xff2ffb32,
-0xffcfa809,0x005a5034,0x00cc66d8,0x00766fd1,0x00488441,0x00585af2,0x0062be2b,0x009276d6,0x00c766f1,0x0055c2d8,0x0012c8f0,0x0038fe61,0x009a0b8e,0x010865e2,0x01870678,0x0186cb94,0x01638284,0x00ffee69,0x010ee1e2,0x00db9195,0x00a04280,0x006901b0,0x005ef208,0x01190bda,0xff89aba9,
-0xff1b8663,0xff14b9e5,0xff79c7ba,0x00020e3a,0x0052439f,0x00f987f4,0x00d9ab9a,0xffb46128,0xffafb253,0xff29874c,0xff0fbab7,0x001e3b85,0x00ce44be,0x00f48b52,0x00407f22,0x00660be7,0x00636397,0x00e30e8c,0x00daa9d0,0x0049bdf2,0xff9d96f1,0xffca4a2e,0x0058c071,0x012b8e96,0x01b3971a,
-0x025b17bc,0x01e4d91a,0x01b4b628,0x014a46f6,0x017eb40c,0x0123d924,0x00b0639e,0x0059325f,0x00579760,0x012ec7a4,0xfed08e8e,0xfdbd6784,0xfe156da2,0xfed6f59e,0xfff7c0af,0x002d5096,0x0108fd58,0x00c2fa85,0xff0be3df,0xff3af921,0xff3091e5,0xff0e9a2e,0xfccda29c,0xfd5a7558,0x01a06e5c,
-0x019bd4d0,0x015c6eaa,0x004aceee,0x0015c7dd,0xffcc6a09,0xff743dfb,0x004981f8,0x0050ac7d,0xffdf2eba,0x00af32d9,0x01662194,0x02614788,0x021f5d38,0x01bfd870,0x00c0bd8e,0x00d7a54d,0x00aa3a46,0x0068d66d,0x007053d9,0x00860bb8,0x0113fe9c,0x003ed30b,0x00921729,0x0232d120,0xfe5fe608,
-0xfe1f17a8,0x00916446,0x01885e6a,0x01e160b0,0x00b11cce,0x000dcd73,0x015bca02,0x01c07c3a,0x00f47abf,0x00683cce,0xfeb1d802,0xfe2027e8,0xfe4fce8c,0xfefa34d4,0xff2fa058,0xff9c7fe0,0xffb896c7,0xffbd4e40,0x00112fff,0x005dc2a0,0x00b0cc23,0x004d535f,0xffeb65a5,0x00864aee,0x00d228d5,
-0x016d749a,0x00e1bde1,0x004b05b6,0xffeebbf0,0xff6a5cef,0xff744ff7,0xffbdd756,0xfecc1ea8,0xfe6a279e,0xfebc2394,0xfe7c4f2a,0xfe7f8f06,0xfeb90b68,0xfd617378,0xfc7d05bc,0xfbdb45a8,0xff492771,0x0106ad34,0x01bea166,0x003724bb,0xff1fc301,0xfdd85ed4,0xfec385dc,0xff5ad9c9,0xfe8e779c,
-0xff00c060,0xffb8fa72,0x001eb7ad,0xfff846f4,0x000d5358,0x0031eee0,0x003e6765,0x00075b6f,0xfffae52f,0x007d25bf,0x007bc00a,0x0108d966,0x001b0d42,0xffd53a15,0x0082bd26,0x004e89be,0x0028ed26,0xffd213b5,0xff8a1d47,0xff3e4784,0xfee3238a,0xfe029882,0xfe2484f0,0xffc48ba7,0x01452120,
-0x01e889f0,0x01bbeaba,0x00cdc250,0xf6893930,0xf7bd78b0,0xfa28f900,0xfbe0d498,0xfcf29d1c,0xfd289270,0xfdb12758,0xfdbfee94,0xfe93e130,0xfefa4ed0,0xff7bc2e0,0xfffe0d44,0x00315ca1,0xffe14ad2,0xfff409b4,0xffc059fd,0xff984f07,0xff82fa2e,0xfffb7abe,0x01b0318e,0x00a25ef4,0x0009f8e7,
-0xff642be6,0xff1f0759,0xff15ecab,0xff350f33,0xff5d0342,0xff686b53,0xffbc5093,0xfebac7be,0xfe243328,0xff1b0113,0xfcc366ec,0xfbe03928,0xfc3163ec,0xf80f7e88,0x03405f0c,0x05ecb478,0x075cf2f8,0x06cf5ee0,0x05afe568,0x0614d960,0x04988bc8,0x01c4dd20,0x014b9690,0x0093042d,0x00a7799a,
-0x000a1fb1,0xffbd34c2,0xff883689,0x000a3b21,0x001bc3ca,0xff8f7b09,0x0088cf8d,0x00861fc5,0x007b8e4c,0xffa3ef95,0xff60dbbd,0xffd0d5c0,0xff639c29,0xfea2f75a,0xfdc559a4,0xfdfd7b88,0xfdbecb84,0xfd51c434,0xfd82b0a4,0xfd7aa7cc,0xfd9ba554,0xfb5dd580,0xfab48b38,0xfc11bf80,0x001f2a4d,
-0x04dffb98,0x04b83d58,0x049357e0,0x0432f9b0,0x038d9844,0x03230908,0x0323bfcc,0x0367f120,0x03271cf8,0x02dcee4c,0x02b9771c,0x021b8e18,0x01ba9222,0x01a29be8,0x00d80939,0x006404b0,0xffcd0135,0xffabb204,0xff6048d5,0xfef678e6,0xfe2787ce,0xfdafb0a0,0xfd753558,0xfd020c4c,0xfd16c680,
-0xfddac844,0xfd4fce50,0xfcfdcf78,0xfc88bc7c,0xfc0d27a0,0xfbc2cc30,0xfc016eb8,0xfedf730c,0x0196f852,0x039d7494,0x0467eb18,0x04e3d378,0x044c9220,0x03e5ca40,0x039a1350,0x03275104,0x0308aa4c,0x02e5e9c8,0x029f3c70,0x02443bb4,0x022a9ecc,0x01c20324,0x01d99ac2,0x01bc1638,0x01c63dbe,
-0x018cea4e,0x0148a552,0x01088072,0x0092bd8f,0x00268e1d,0xffabc75e,0xff9b6600,0xff862e0c,0xff67d878,0xff9a1eae,0xff9cacf3,0xff9bdc07,0xffcd797b,0x00114f50,0x0035a534,0x02123cf0,0x03f14658,0x059ff8f0,0x05c48188,0x05d3a948,0x064e12c8,0x0572de98,0x04214860,0x044bb430,0x041ee6c8,
-0x04143220,0x03eb8498,0x03d2acfc,0x03b95214,0x03a01450,0x038ab620,0x03668020,0x03389cf0,0x031726ac,0x02e129a4,0x02a3b55c,0x02761c3c,0x024a6444,0x022f8fd8,0x020b1388,0x01f38672,0x01b08a94,0x01efb866,0x02283f14,0x025852c8,0x028565fc,0x02bc23c8,0x02effb18,0x03277d50,0x035ae504,
-0x036c8d68,0x037e1ac4,0x03593a44,0x037e4d84,0x0385e2e0,0x03b50160,0x03d390a0,0x03fc13b8,0x039da948,0x03b52a68,0x0397f9b4,0x03820220,0x035c77e4,0x037cb1b0,0x035a4b60,0x032da988,0x031c14b8,0x030906d4,0x02fe9878,0x02e9e27c,0x02dee39c,0x02d68e48,0x02ebb66c,0x02eac7fc,0x02b87950,
-0x02c06864,0x02be2ae4,0x029f8110,0x02c022ac,0x02d202f0,0x02e9b318,0x02fd3678,0x030f5704,0x0322cb68,0x0330a888,0x03442a70,0x03630c70,0x036d2cd8,0x03827108,0x038c0f08,0x038f624c,0x038d3aa0,0x03876ab4,0x03956c18,0x03c08c00,0x00929a73,0x0069936f,0x0063765c,0x00717316,0x0083a5e9,
-0x00c33598,0x0087e649,0x006f7769,0x0080b143,0x006ca8bc,0x0075d82c,0x00a4d097,0x00785be1,0x006c8fd5,0x005ffbd3,0x007caedd,0x008c9b99,0x009147a1,0x00a4e0fe,0x00acb0f5,0x00ad4d76,0x009ef8ab,0x0096ba1f,0x008dca3d,0x008acc7a,0x007f365d,0x00743410,0x004af5aa,0x003dbc94,0x0032b65e,
-0x00705b15,0x00853fcd,0x00734d51,0x009b555b,0x009b41de,0x00725eae,0x00757753,0x006fcc99,0x00662e36,0x00773b96,0x00c9a0d9,0x0169a5d0,0x00862b0a,0x00553268,0x00ae092e,0x0083fa4e,0x0098e2f2,0x00f49b79,0x008ec767,0x0074d766,0x00666493,0x00930c3f,0x00b87a21,0x00d8a835,0x010d462e,
-0x01043e02,0x00ee8b04,0x00df3b35,0x00c64d11,0x00ae2257,0x00a63cc2,0x00787dbf,0x0048e6e5,0xffc7bfea,0xffaa8a96,0xffb1316c,0x005225fd,0x0092d7b9,0x00500145,0x00aee067,0x009c0d06,0x0039f04d,0x006398b1,0x00238116,0xffedb3b7,0x0048e0d5,0x00d2717b,0x02391600,0x00814fd4,0x004145a9,
-0x00ee5de0,0x0070180b,0x009a0f9f,0x016c35e0,0x009d4b5e,0x004d007a,0x0056871b,0x00a63f14,0x00fa874f,0x0142499a,0x019fc288,0x019e2944,0x0158433e,0x012f363c,0x00f3e41b,0x00c7aa21,0x00af178f,0x006686fa,0x0025abe6,0xff238f36,0xfedd72ac,0xfecbe766,0x002f1d28,0x00bfad65,0x001be13f,
-0x0107fd42,0x00f17507,0x00233d6c,0x00482817,0x007a6d92,0x003f8466,0x00ad7340,0x016e505e,0x033aa314,0x006ebcbd,0xffcede92,0x00dde50b,0x008eca77,0x00d7b7b8,0x018123a4,0x003b280a,0xffde9ab8,0x0058b0f0,0x00ec9cfb,0x017aca6c,0x01f7870a,0x023484d4,0x0219dff0,0x01ade30e,0x0196daa4,
-0x013cea06,0x010b5f4c,0x00db79ea,0x005295e6,0xffb3d3ad,0xfe095c5e,0xfd9416d4,0xfdc83ea4,0x000c3542,0x00d5fa0d,0xffb183fe,0x00ca4877,0x0092fb6b,0xff57e44a,0x0010c349,0xffb4d065,0xfedb7030,0xfe5058a4,0xfeb4724a,0xffce5977,0x01392572,0x01e61070,0x017b64cc,0x0092b9f7,0x00001a4e,
-0xffc69010,0x00701c46,0x008c8d5b,0x004502e4,0x00ef517e,0x015d7c36,0x01c71e78,0x02ad0080,0x029034a8,0x017755b0,0x015d8af2,0x00cd70b7,0x004dfc9c,0x0006938a,0x00286b94,0x00a08744,0x004570b0,0x001b5373,0xffa619db,0xff7557e2,0x0010560a,0x01daee24,0x01bd10fa,0x0216219c,0x025f1130,
-0x01137bb2,0x01635c5c,0x051d7b50,0x005734a5,0xfef536ac,0xff791e4e,0xff4f234f,0xff32abb9,0xff287404,0xffb69edf,0x0006b3be,0xffe591a7,0xffab846a,0xffdff70e,0x004ee3ba,0x00abb132,0x00998f2d,0x00b3cdcc,0x003b3821,0x004ce382,0x0150e9c6,0x00b7bf06,0x00662d96,0x001a3a03,0xff8951b8,
-0xff467110,0xff4ce2be,0xff52f426,0xffe4cdae,0x00d0475d,0x008f060d,0x0012d955,0x008944e5,0xfc185a60,0xfb450fa8,0xfdf14e38,0xfebbf974,0xff6fda8c,0xfff53ab6,0x00b374bf,0x000ade65,0xfd861810,0xfe6725dc,0xff0f934a,0xfefa1b58,0xff101157,0xff78450e,0x000ac093,0x000e0762,0x005d6e48,
-0x00525763,0x006f5bc3,0x00ba29d4,0x01089824,0x006b2fbe,0x00c2d2cd,0x02bf1718,0x013b380c,0x00b8c8ea,0x0085b358,0x002dc8c6,0x0019c82a,0x0039f22a,0xff51802a,0xfeeae232,0xff41e346,0xffc7f445,0x005e68a1,0x00c0fc3d,0x027299a4,0x02193f98,0xffd7a783,0xffd7084d,0x003f0c29,0xfc65afbc,
-0xf9c1bfd0,0xfa464358,0xfb84b110,0xfdab09b0,0xff0008a7,0xfefebc2e,0xff1a259c,0xff89a4b0,0x0006b94a,0xfff3f61d,0x00084d4b,0x0043efd7,0x0045617f,0xfff5c1b2,0xffddd447,0xffb13880,0x001cfc17,0x016c6628,0x00a41418,0x0034d74d,0xff7672a0,0xff164489,0xfe862c36,0xfec8875a,0xfe9789b0,
-0xff07f594,0xffe5ad53,0x00034292,0xff5f3351,0xfd9d4aac,0xfdba12ac,0xfd9358e4,0xfd177798,0x0050797d,0xf8ee21c8,0xfc011c50,0x002d6054,0x01a87df2,0x02359134,0x01bc02a8,0x007381a6,0xff42cc25,0xff7fdae8,0xff78e724,0xffe5f0f0,0x00542bff,0x003b5b8c,0xffaf1bc2,0x003180ee,0x00717b9d,
-0x00afdf78,0xffd7fa64,0xffc67c5a,0x00ce83ba,0x0058697a,0xffd40223,0xfefa3ea8,0xfebe657e,0xfece0020,0xff6f7701,0xfedf3de0,0xfef68426,0xff98fa67,0xfeeb6b74,0xfed32bc0,0xfeb6e01c,0xff289621,0xfdbaf0f4,0xfab236e8,0xf94b8b08,0x050f3630,0x06444e10,0x065d5e08,0x05af7640,0x05441598,
-0x04199d50,0x03e781d4,0x049a0bc8,0x03e90cb8,0x0338138c,0x0228ed1c,0x01e95a2e,0x01d6efb2,0x01ca8504,0x0130e6d4,0x005496cf,0xff703661,0xff1302c3,0xfeea3b7a,0xff5128cd,0xfed84aac,0xfeb7410e,0xfefa6e72,0xfeb1bf2a,0xfec1fd4c,0xfed35d74,0xfeb8c932,0xfe799c60,0xfdb65408,0xfd672e50,
-0xfc9acb70,0xfb8096e8,0xfb3597f8,0xfc8de314,0xffd7fee6,0x02c5ba90,0x02d8a100,0x036d0524,0x037c4cc0,0x039d540c,0x03a47d2c,0x03b0a33c,0x03b198ec,0x03a7a998,0x03425f7c,0x02f08b18,0x02a9f518,0x02154720,0x01979fb8,0x01027790,0x00f0607d,0x00d6b34c,0x00b414d5,0x0089a83e,0x00419105,
-0xffc9ef54,0xff43dde8,0xfedee4c0,0xfe661012,0xfe0aa2ba,0xfdb5c598,0xfd577cb0,0xfd235bc8,0xfce30db0,0xfc8488d4,0xfd896b2c,0xfe664256,0xff3e910a,0x00a40fca,0x01ba5292,0x02a09368,0x02a08d08,0x02c15008,0x02e95428,0x0387013c,0x030f4a64,0x0348fb68,0x03517768,0x033fab94,0x034de034,
-0x02f6eca0,0x02bdc1f8,0x029b5a9c,0x024a1a64,0x0214a028,0x01dc9f68,0x01b117f0,0x013c9a56,0x00e15e3e,0x008d4e0d,0x00a0e47d,0xffe2e8e5,0x000ba510,0x0031a517,0x004d3eea,0x006e6e64,0x00830f50,0x00917d29,0x00d2e73b,0x0124ffac,0x016bcac2,0x019f1010,0x01c380f0,0x01e335e4,0x01f2f7e8,
-0x020b3968,0x0246e5d0,0x028fd248,0x02870728,0x02787b44,0x02f5fe1c,0x03304bd4,0x037dce7c,0x02db28ac,0x0331c7f8,0x037bdecc,0x036525b4,0x0353ebb8,0x03397770,0x0331780c,0x0325bee8,0x03157624,0x0297dfc0,0x023dda50,0x02d33754,0x025d050c,0x0214e9ac,0x018e05c4,0x01b8eff8,0x01b03e52,
-0x01b33a4e,0x01b23f26,0x01b69e58,0x01b5068a,0x01d9e044,0x01f1cbd2,0x020f38d8,0x02215230,0x023bbd40,0x025e2da8,0x0265b480,0x026f1844,0x026e1624,0x02751a2c,0x02e4d0c8,0x00b76383,0x009e3486,0x00a35c2b,0x00a7e723,0x00b25055,0x00f2ad57,0x00a154e3,0x00963edb,0x00acbf96,0x0099b951,
-0x009d5352,0x00bd85bb,0x00a0ff26,0x00983bee,0x0090c30b,0x009d6be8,0x00a543c4,0x00a70e83,0x00bf2f85,0x00c9fd65,0x00d5cbd4,0x00c09182,0x00b67501,0x00ac7ce1,0x00a891f5,0x0096da08,0x006e5f30,0x006a5d65,0x00697d7f,0x0065c284,0x009fbf81,0x00afc484,0x0091ae6b,0x00bac740,0x00bb5a93,
-0x009656be,0x00a40c89,0x00ae5966,0x00d58518,0x00e641fc,0x01204866,0x0197e2c2,0x00b19190,0x0078a1b7,0x00c789bc,0x00ae43ad,0x00c68bdc,0x00f4ee9b,0x00c1118f,0x00ac4c6f,0x00979613,0x00ace7ba,0x00bef0de,0x00d62593,0x0116de62,0x0129b4c6,0x013af76c,0x0107a5c8,0x00e9ad54,0x00cbc2d4,
-0x00be8cb9,0x007e3d89,0x00058779,0xffe5271d,0xffeb9e09,0xfff8ab0f,0x00a05ebe,0x00cfd0eb,0x006d4064,0x00d1e90e,0x00bd87f8,0x0065cbf8,0x00890c57,0x00a699a1,0x009f1626,0x00e100b6,0x01252e7a,0x024e2be8,0x009bf360,0x00609b57,0x01056e30,0x00a587e7,0x00b67196,0x0140cdf0,0x00b98a3d,
-0x008cbc22,0x007d3ea0,0x00b5e2eb,0x00e3e290,0x00f0e14a,0x017dc478,0x01a3a94c,0x01b0ac00,0x015164ce,0x01119fec,0x00d86c56,0x00c42884,0x004a9ca7,0xff780711,0xff3f4ac1,0xff44b710,0xff725472,0x00978a80,0x00fe14cc,0x00424521,0x010c1812,0x01175f76,0x006f96ad,0x00be0bfb,0x00e39e26,
-0x0128a4b0,0x0197c128,0x025d9d54,0x03cb45d4,0x00c724f1,0xffcd846b,0x010ef6a0,0x00a1a3d3,0x00e6e91a,0x01e49584,0x008e0ab7,0x0018dc98,0x0097df82,0x010b96c2,0x0143defc,0x016fa886,0x0228adf0,0x025779c0,0x02513858,0x01cc835c,0x016cdd60,0x011f0dd0,0x00dcedaf,0xfffebcef,0xfe81bcd2,
-0xfdf196f8,0xfe2fa144,0xfe9f0788,0x008f6a9c,0x010819fa,0xffdd6d67,0x010398a0,0x00974dea,0xffa078c2,0x0031cac5,0x007e68af,0xfff26b21,0xfe9ce522,0xfe19b5ba,0xfe60e4c8,0x00da9fd9,0x023de2ec,0x022d2170,0x011ebfec,0x001c0a49,0xffa501b1,0x00615ece,0x00ae8b48,0x00912dbe,0x0150b64c,
-0x017a5fd2,0x01875100,0x01ef4602,0x01f49c4a,0x01e10bfe,0x00e3a24b,0x00615d29,0x004d84d4,0x0036fcca,0x0048ad2d,0x003abd37,0x012ce4aa,0x010c3406,0xff1da254,0x010ea81a,0x01685b92,0x00b6bc69,0x011eb36c,0x0285e4f8,0x050f7ec0,0x02405628,0xffdaa64b,0x04933260,0x00c6f83a,0xff50fbcc,
-0x008ab410,0xff852567,0xff6fa789,0xffaca5a8,0x00444d78,0x0097058e,0x004f2db6,0x0000b807,0x001f8ba5,0x00998366,0x008c796f,0x00d52591,0x011da5e4,0x00d6d877,0x00cbf9fe,0x01238c94,0x00b29384,0x0079b23d,0xfff0e3a6,0xffd7790f,0xfff476f4,0x0075f056,0x00b5235e,0x012a8aaa,0x0165b178,
-0x009ed564,0x00cfec30,0x01edb49a,0xfeb161b4,0xfd3cb8c0,0xfda1e810,0xfdbc8a1c,0xff2d7417,0xff5da466,0xff6749cd,0xff4e541d,0xfe75ae52,0xfe2b7fb8,0xfe5d6d2c,0xffa1f435,0xff42f328,0xff61fbbd,0xffe81d3e,0x002fe68b,0x007b0e85,0x00245632,0x00807480,0x00f81fc8,0x010e15dc,0x00561e83,
-0x00b7288f,0x01aa0414,0x0138efa6,0x01173112,0x006d892d,0x005e5cea,0x0029c01f,0x00363a5f,0xff313485,0xff2abf32,0x0072ee35,0x008aadda,0x00f9b506,0x0171d326,0x0130e65e,0x0129e488,0x001cc1ad,0xffc68033,0x00cd4e12,0x00e3f323,0xfde7d48c,0xfcc05eb0,0xfd5ab4e4,0xfe5e97a8,0xff79eecc,
-0x0017ae43,0xffc6b763,0x003e70ac,0x0054e7a2,0xffff36f2,0x0013b0cd,0x00a22b02,0x0097e70e,0x0093b81e,0x00a896cd,0x00d8906d,0x00d64bef,0x00a8b79e,0x00e24068,0x00d37899,0x0048ffe9,0x0093cd2f,0x00875cba,0x00436698,0xff4dc58d,0xff497532,0xfff680c5,0xfeff6a28,0xfec006b6,0xfeb1f71c,
-0xfde07114,0xfded1730,0xfef6872e,0xfff2acb3,0xf90b8ed8,0xf809af10,0xfafbbff0,0xfd578b5c,0xfeb17704,0xfdb75310,0xfd5eea3c,0xfe4ddd14,0xfe5a9194,0xfead0156,0xff81636e,0x005d0ff2,0x008aa183,0x0048c97a,0x002d84b5,0x003f181c,0x00cc6e0f,0x0023f220,0x0024b373,0x00c278c6,0x00e01eff,
-0x009e1119,0xffd0396a,0xff875a7b,0xff41595e,0xfef7b304,0xff3ad50a,0xff7522ca,0xff115de6,0xffd92993,0xffc475ca,0xff297cc6,0xfe5feef0,0xfdb43000,0xfd199274,0xfa992cf0,0xffc97442,0x02107d78,0x03854fd0,0x034012ec,0x0378c31c,0x0342a160,0x0311ca58,0x035d7488,0x02fb5838,0x02933924,
-0x01b6d286,0x016af612,0x00f77f86,0x00a6cb2c,0x00cc9718,0x009f27e6,0x007d163f,0xffeb5946,0xffc3f646,0xffcf34ed,0xffb522cc,0xffaf6b09,0xff8e3a5a,0xff99bb5d,0xff6d5c0b,0xff5583af,0xff50c022,0xff05de14,0xfe562c8e,0xfed63982,0xfea996b0,0xfdfb4754,0xfd4d0fa8,0xfcbb1dd8,0xfca5c51c,
-0xfe290888,0x0176a49e,0x02cacf5c,0x03248c48,0x037217e8,0x0407c770,0x03b4a3ac,0x03765ef0,0x033d3e00,0x02f8e578,0x029c8418,0x0277955c,0x022bb770,0x0210ae44,0x01c9af0c,0x014213fa,0x00c089f7,0x0041fc1c,0xffb077a1,0xff009ef0,0xfe69e074,0xfe0672c4,0xfd9c902c,0xfd317420,0xfd162c94,
-0xfcfe6cd0,0xfce1c348,0xfcb2b218,0xfc8ad5e0,0xfc5dfe14,0xfc32a8a4,0xfbf5eeb0,0xfba533c0,0xfd06cff4,0xfe5b5f12,0xff758947,0x00a8f9a3,0x00b1c135,0x00e73725,0x01a2eaa4,0x011d028e,0x016a65de,0x01898d5a,0x017f2372,0x01b3ec28,0x013daf44,0x01132fc2,0x00e17df4,0x0081b8a2,0x0036ccf2,
-0xfff8d178,0x001575a2,0x001a0f6a,0xfffa3aaf,0xffff4ac1,0x00348927,0x00211183,0xfff30f0e,0xffbbafe0,0xff84ed44,0xff495524,0xff065c64,0xfebc4b4a,0xfeeff214,0xff16b7cc,0xff4225cd,0xff6b356b,0xffa7d8d0,0xffbbcecc,0xfff665b2,0x000c1dda,0x003e3941,0x006f2256,0x00298692,0x001c98c6,
-0x0098a4a8,0x00ea5e8f,0x017570b6,0x00797f95,0x00f6310f,0x01963142,0x0175b0d0,0x015c5ec0,0x013d4c3c,0x012fcb92,0x011d0508,0x00fc672e,0x0089a629,0x002b1fbe,0x00f94f29,0x0081e840,0x0042b50f,0xffea1830,0xffd7a9ea,0xffbf91a7,0xffa86652,0xff8da018,0xff77fb3c,0xff519ca0,0xff702b12,
-0xff7d79a2,0xff8c0643,0xff978e66,0xffa094b5,0xffaca02c,0xffc63493,0xffe2046b,0xfffb0659,0x000fe139,0xffd6a249,0x00a7df18,0x00a70925,0x0097902f,0x00a6fad7,0x00ae1113,0x00d51fb7,0x008df1ab,0x00923326,0x00a43606,0x00ab184f,0x00ad48a9,0x00b02a3b,0x00b004c1,0x00ab026c,0x0097f3eb,
-0x009290b4,0x00941f9e,0x00ae5012,0x00b2ce50,0x00b57919,0x00b903be,0x00acbd11,0x00a36369,0x00993073,0x00982381,0x008ac4de,0x006e7b6c,0x006dfb4e,0x006df0c5,0x006893ab,0x0088e0e3,0x00931048,0x00891223,0x009d0d3d,0x00a36838,0x00999bad,0x00a7b37c,0x00c81fcb,0x00be0912,0x0101b5d4,
-0x00f8d9bb,0x01260044,0x00962906,0x006f8a38,0x00918ee3,0x00b4626b,0x00d78280,0x00cdec64,0x00da9d10,0x00bfdaf1,0x008675ff,0x00918b7e,0x009c0b4e,0x00d171c8,0x00ea8254,0x01153602,0x011af56a,0x00e7545e,0x00cb708b,0x00a6608e,0x00a11b6e,0x007b0db7,0x002a4396,0x001bc320,0x001c3682,
-0x001b8a82,0x00836424,0x00a064d6,0x007e7105,0x00a20f08,0x009f0815,0x008cc857,0x00b2c934,0x00fd7131,0x00c552cf,0x010ab96c,0x00f4e36d,0x01874f1e,0x0075f215,0x00588dc2,0x00ac1bba,0x00ccdc93,0x00e94c6d,0x00eb6bae,0x00e6d0a0,0x00c76721,0x0055ee6d,0x008a2a4d,0x00a1be0f,0x00ed3710,
-0x0128de9e,0x015b5280,0x018bd79c,0x011831ba,0x00ec8fce,0x00a3cf61,0x00a41a8c,0x004857f3,0xffb4cb29,0xffabdf7e,0xffbb4317,0xffc07dcd,0x005644dd,0x00976c0e,0x005cc22b,0x00a99d52,0x00d470c5,0x00b9ffab,0x0113cafe,0x012dce9e,0x01269596,0x01bee3cc,0x021b9314,0x029edeb4,0x00a4b39a,
-0xffd2eeb1,0x0098e1db,0x00c0e4cd,0x012045e6,0x019cf378,0x00da6c55,0x00690203,0x004ddb54,0x00d88e3e,0x00e4c17b,0x013254dc,0x01bd9b8a,0x022988c8,0x026a48e8,0x019aebe4,0x012a0412,0x00ad90ff,0x0090903c,0x000fc249,0xff014b86,0xfebb2446,0xfef6d910,0xff36b977,0x00664fdf,0x009b5ef4,
-0x0047957e,0x009693fe,0x0065745b,0x0035abb4,0x00c8efee,0x016cbf24,0x005c10b6,0xff84f10d,0xfe88edf2,0xfdea4464,0x0043fa97,0x01c0f078,0x0250c8a4,0x01d61b80,0x0098bb5a,0xff9d1674,0x003d50d0,0x0091d587,0x00d06fa6,0x017076c0,0x0152b830,0x0136b8ce,0x00e972e4,0x00ec4d70,0x00f3bd15,
-0x00559ac8,0x007962d3,0x00bd7b18,0x0071c3bf,0x007a1321,0x0080dd35,0x0250e224,0x01f8518a,0xfef1e19a,0x003d587c,0x006def3f,0x00462e52,0x00a3e313,0x02058aa4,0x04b00500,0x02d71374,0xfe310cd4,0x001a3758,0x01993886,0x015294ea,0x00ac342a,0x00021d49,0xff727320,0xff5d8816,0x001f6968,
-0x00ad9b10,0x00e3423f,0x005f2e30,0x00446df2,0x009323f7,0x008638c5,0x00fc9302,0x01411114,0x01444612,0x01438110,0x00d2f51e,0x011e297c,0x00ffedf3,0x0021c1d3,0x004b0ac0,0x0068bb6c,0x00954250,0x013a03e0,0x012f0d50,0xffde2034,0x00ad0db6,0x00779c09,0xff689999,0xfeff1354,0xfe49e6d8,
-0xfd892e3c,0xfdbb19f4,0xff21115f,0xff960be0,0xffac30c0,0xff8e3955,0xffd3005f,0xff1f04b8,0xfeac54f8,0x0044c882,0xffbabfa5,0xffa340a7,0x000abd7b,0x0055d90a,0x0085e62d,0x004cd8a9,0x007eaa74,0x00f5d6b0,0x009360d9,0x005da7a2,0x0078de3b,0x0085a05d,0x016fbece,0x018e6fea,0x00a1dfdd,
-0x00f5ebaf,0x009a0c17,0xffebe09d,0xfff9d3df,0x00385e0a,0x009a4060,0x0167aa28,0x01f43ad2,0x02021ce4,0x00e59cf5,0x00306082,0xff704c53,0xff524c78,0x002eca85,0xfeea734c,0xffa06a94,0xff73921d,0xff0a279c,0xff036a26,0xff85ae76,0x00d4c33f,0x003dc55b,0x008aca6f,0x00924e5e,0x0032b38a,
-0x003bc3cf,0x00a3687b,0x00c1fdad,0x011027a4,0x011c8422,0x014557fa,0x012f3f6a,0x00a1e018,0x0112b29a,0x012ca552,0x00f42fd3,0x0119affa,0x00f141ea,0x00111e3c,0x00575cb5,0x001ad0f4,0xff473715,0xfeecbb18,0xfeb23e5a,0xfe532ae2,0xffdb9c23,0x007f748f,0xfff84d84,0x0097c371,0xfe87282c,
-0xfd13e79c,0xfc39050c,0xfc88d280,0xfd2bdcc8,0xfd259e34,0xfd851bd0,0xfe6e7220,0xfe6ac15c,0xfea7bef6,0xff10bbeb,0xffc00372,0x0041f90c,0x00b09d99,0x0082fdc6,0x00889bec,0x00c909a6,0x00acf8d1,0x00bda27d,0x00838df5,0x01047b74,0x00fb960b,0x009071f9,0x00144971,0xffdaf5ce,0xffe148ac,
-0x001d1a57,0x000f958c,0xff987f0d,0x0057108f,0xffd14936,0xfe28ad2e,0xfdade2f8,0xfd70db3c,0xfd52818c,0xfe4536cc,0xfc2f60c0,0xfd06e968,0xfe3f6bb8,0xff08c658,0xffb7f216,0x00c8a0ce,0x01047d44,0x00cce1bd,0x008204fc,0x0072c981,0x00718d49,0x0106bb38,0x0110ce8a,0x00f8e6c0,0x00c6e8fe,
-0x00a5eeb1,0x00b29bfd,0x001f23b0,0xffe809c2,0x000d1a61,0x009a8765,0x00b8f91e,0x0097c929,0xfff9a830,0xffa12d0a,0xff3fd827,0xff284f75,0xff0722c8,0xfef8bd54,0xfea916d8,0xff4964de,0x00cfa7e7,0x0041eae5,0xff766984,0xfe4a0f44,0xfcdc64d0,0xff5edaf1,0x0049debb,0x01070ca0,0x014214a0,
-0x01ffce0a,0x01dd899a,0x01ba31e4,0x01c72cd0,0x01e2d7ec,0x01d3c092,0x0200240c,0x0183de92,0x016b472c,0x0107ca60,0x00cf223f,0x006a949a,0x0029fccc,0xfffcd5e2,0xffc1340b,0xffb8fc50,0xff5595be,0xfede6aa4,0xfe83dc88,0xfe4958e8,0xfe160752,0xfdcdbe60,0xfdf0fcc4,0xfdfcca2c,0xfe218d6c,
-0xfdc44690,0xfd3ea668,0xfc9ec3d4,0xfcd55598,0xfd342510,0xfd8d2d50,0xfea1b04a,0xff7cdf32,0xffc138b4,0x002a480c,0xffe80add,0x001f56a8,0x00237545,0x003ad268,0x005f460f,0x00362745,0x0020fbba,0x001bd1a0,0xfff684ae,0xffe7cbb7,0xffd7ba4b,0xffc8fb85,0xffa56072,0xff7e1244,0xff5bca7b,
-0xff611344,0xfee056b0,0xfeaca010,0xfe9046b0,0xfe639ad2,0xfe3234b6,0xfdfd1fd0,0xfdbd9090,0xfdcc9a24,0xfdcf351c,0xfdd798f4,0xfdea9438,0xfe1b19f0,0xfe31552e,0xfe9d94c2,0xfee10154,0xff1403bb,0xff493163,0xff080d8b,0xff17c353,0xff2fa133,0xff5211c1,0xff7b69bd,0xff3e3bf9,0xff659b80,
-0xff994751,0xff8a6ebd,0xff84e2be,0xff74baef,0xff78b894,0xff708e5e,0xff6b2ca3,0xff3bf5a3,0xff10e4f3,0xff4e497c,0xff0f13de,0xfef0f2b4,0xfeb61b76,0xfeb3c718,0xfe9a2724,0xfe855838,0xfe70ddba,0xfe600b68,0xfe4643ee,0xfe573a14,0xfe5eeb3a,0xfe66c254,0xfe6de81e,0xfe70ff34,0xfe6ea758,
-0xfe894e4c,0xfea54636,0xfecc9144,0xfee7117e,0xfe8aa238,0x008b381d,0x008f76e1,0x0078110e,0x0080fd10,0x00838cc3,0x00937615,0x0073d311,0x007b2546,0x007d5c28,0x00933615,0x009a3cca,0x0093bb06,0x00a23bc6,0x009ddefa,0x007ec14d,0x007ad1f6,0x0078c9b4,0x009c3be6,0x008ea81d,0x0089f4bb,
-0x007dbc9f,0x0081e3a2,0x007f97c8,0x007ef7b3,0x00831249,0x0080c35c,0x0078377b,0x0074284c,0x0072ca00,0x00791e65,0x0072e6e7,0x00751f74,0x007a0d6f,0x007df1c2,0x007e3aba,0x00703f5c,0x008c035d,0x00943fa0,0x007bb8a1,0x00ae4a95,0x009b5e62,0x00a55f3e,0x006ed0ba,0x006003cc,0x00581f96,
-0x0096ddad,0x00ba403a,0x00aaa64c,0x00ded59d,0x00c38bf2,0x0070af52,0x00733c6a,0x007adb5b,0x00c1ffa6,0x00af43c6,0x00c74b9a,0x00a05999,0x0090a40f,0x008c3213,0x00877fac,0x0096edbc,0x0090acef,0x00711e06,0x006a3008,0x0069ae2f,0x0087f1ec,0x007ff648,0x00768169,0x0079279b,0x006bac5b,
-0x0066f2ed,0x004eca4f,0x00889bbe,0x00e15caa,0x007c3b65,0x0098729e,0x0078ad02,0x00af18b2,0x004e272e,0x004ea17d,0x00571bd4,0x00b5d377,0x00e23e57,0x00bc5280,0x01117758,0x00f9e6c1,0x0045395a,0x006b945c,0x0073ba86,0x00f25ccc,0x00c85fff,0x00d956c9,0x00bbfbe6,0x009275d8,0x00971525,
-0x00831853,0x00a4b1e9,0x008fda74,0x005aa103,0x0058686e,0x00561931,0x0090f222,0x0059332c,0x006170dc,0x0077ce0a,0x0077157a,0x0075c73c,0x003f0ba7,0x00d714df,0x009b83e9,0x00779868,0x00e759f4,0x0120fbd6,0x0143af2c,0x005f12b5,0xfffd98d7,0x001ba3d5,0x009edcfe,0x0111fc98,0x0122b5c4,
-0x0126fab8,0x00b421b1,0xffefca21,0x0089eea2,0x00aa646f,0x014c3592,0x01374362,0x016b10e6,0x01259726,0x00b82de2,0x00990182,0x007352e5,0x00a53251,0x00959d36,0x0017d234,0x00180212,0x0039cc25,0x00d763da,0x00bfbaec,0x006761e1,0x0067ef23,0x001c18eb,0xfff36dbe,0xffb2d1c9,0x00782cf8,
-0x0219d2fc,0x00efd62c,0xffa6b315,0xfe8c65f6,0xfe1cbaf8,0xffb8fb54,0x00d43a74,0x017ea130,0x024813bc,0x015d06a2,0xffe2df8e,0x000cbabd,0x006640d1,0x014418a8,0x014b14f0,0x010c6430,0x00ee5b2b,0x006cb62a,0x00339665,0x000af2f3,0x00593524,0x00b4f6f8,0x00f48d88,0x00ddf03b,0x00e1d263,
-0x00ead351,0x01f2da64,0x014a3582,0xff1e43ac,0xff15fe72,0xff8748dd,0x0125106a,0x011f5086,0x01afa7fc,0x03093258,0x027982ec,0xfe0b52b8,0xfc603ce8,0x02685940,0x035ab614,0xfffe1fed,0x00f146ef,0x0068ea13,0xff67a85f,0x0017058a,0x00ac7cfe,0x014a9100,0x00a2e933,0x005f19b3,0x00a3d35d,
-0x00e78409,0x015afa5a,0x00f4d787,0x00ef8208,0x00e4fe2f,0x007ceb40,0x013b0474,0x011e5930,0x006f5909,0x00846543,0x00bd2ab7,0x01169ff2,0x0112b0b2,0x00ba08ef,0xff308bc0,0x0130a1bc,0x005008e4,0xfcb1b008,0xfe353274,0xfeb2389e,0xfe62dcd6,0xfe967b62,0xffaa0b8a,0xff2ca057,0xff2e7755,
-0xff60f624,0x008befb7,0x00506758,0xffb13699,0x0083d103,0x003e4596,0xfff338ff,0x004166d7,0x003af12e,0x00676113,0x0074a8b8,0x002b61bc,0x005fa1ab,0xfff500c1,0xffdcf987,0x0004575b,0x0000f267,0x00bb05ab,0x00d54828,0x005e48c9,0x0054379e,0xfffe5837,0xffd16eab,0x006efac0,0x01066a82,
-0x0091ad90,0x01793396,0x01bde3ec,0x018813c6,0x00ace0d7,0x000fba94,0x00bda5a2,0xfffe2dcb,0x002194c7,0x0024d882,0x00807467,0x00ae4442,0xffdba46b,0xffe0c179,0xffc97561,0x0007bf3c,0x00014aaa,0x003a3912,0x0061e9f5,0x002aaa3b,0x003d6296,0x007b37c3,0x00a798c3,0x00f108fa,0x00a9a2d2,
-0x00aa2546,0x00c104d5,0x0074dde6,0x00ad62bc,0x00d08dd9,0x00d2814e,0x00a03b1d,0x007dd14e,0x005ff3c1,0x00545c33,0xff95c9e0,0xfe1ac06c,0xfeb476b6,0xfee58ba4,0xff4bed75,0x0027d2d8,0x00b742ed,0x011fb790,0x00381eaf,0xff9f7ca1,0xff50d58a,0xfe34077a,0xfd48f9a0,0xfc9b0a54,0xfda2dda4,
-0xfe4c5ab4,0xfeb14490,0xff1426c8,0xff3bbb16,0xff47bc09,0xff6ab551,0xffe01592,0x00b822b0,0x00706706,0x0074f969,0x006441a7,0x00c1d316,0x00c37d43,0x0032f069,0x0093a44d,0x00d9753e,0x010ec8ce,0x00dca125,0x00956de6,0x002cdbcc,0x000d86d5,0xffc8339a,0xff5a5ea3,0xff7479d2,0xff7e2ded,
-0xff6db8f8,0xfeddcd24,0xfeb6c0ac,0xff15848b,0xff8a30a7,0xfcfe0c78,0xfc959f94,0xfc9e39b0,0xfd7ec530,0xfeb0b402,0xff6b38d0,0xff708b14,0xfecbea84,0xfed82b1c,0xff132dab,0xff8a18fd,0x003df958,0x00932180,0x00a701a7,0x005791e3,0x0042d1a3,0x003e4b6e,0x005f1134,0x007a6e80,0x007b5717,
-0x00de354e,0x00dbc431,0x00940a18,0x0076dbc3,0x003021fb,0xfffd8f6c,0xffaadd71,0xff8c76de,0xffb90899,0xff43d617,0xfeea67fe,0xfeabf60c,0xff79e2af,0xff874d7c,0xfeaba988,0xfdbc3e7c,0xfe3f8c66,0xfe39e1ca,0xfecca7a4,0xfef5a164,0xff5da2f2,0xff7a087b,0xffafe744,0xfff95525,0x006d7cae,
-0x00a80d2b,0x011dbebc,0x00bc1d93,0x00b106bc,0x008f9f6f,0x005fc091,0x002c21d0,0xfffa7a3e,0xffce9799,0xffabdeb4,0xff76a1b4,0xff99c054,0xffbfba04,0xffec06c5,0xffc0e42e,0xff910e15,0xff5aef00,0xff581a70,0xff490683,0xff432f4d,0xff55964d,0xff82e01b,0xff8e9ea3,0xff174a0d,0xfea59e2c,
-0xfe5ed088,0xfe5637e6,0xff3de86b,0xff70ed54,0xffb5adea,0xffb2da1b,0xffe48344,0xfff6fa0f,0x000df302,0x002d7e5e,0x000a4571,0xfff21deb,0xffeb8435,0xffe113bd,0xffe115b8,0xffde5b0a,0xffa821ce,0xff857ab4,0xff5e1a86,0xff3a1386,0xfeee736e,0xff00ffdb,0xfee0389a,0xfeaaabce,0xfe84eb48,
-0xfe57a58c,0xfe3bb1fc,0xfe170cba,0xfe2de112,0xfe333d76,0xfe2af152,0xfe23eb68,0xfe0c6346,0xfe0a5c6e,0xfe4af356,0xfe980dbc,0xfed007ea,0xff07ba87,0xfeef8a26,0xff02c519,0xfef7af98,0xff017f25,0xff04a0e0,0xff188eb9,0xff1c50b4,0xff2e1bcd,0xff23282e,0xff216d4b,0xff12ac0c,0xff119e3d,
-0xff06520e,0xff02654a,0xfefe308e,0xff0628bb,0xfed0d8f6,0xfed8ac80,0xfed8b870,0xfef5357c,0xfed981c8,0xfeceea6a,0xfec067f8,0xfeb7b440,0xfeac359a,0xfe99e352,0xfe991b92,0xfe96a658,0xfe9a64e0,0xfe9be6ca,0xfea037f8,0xfe940b20,0xfeacec7e,0xfeb92dca,0xfecb3b2a,0xfedba996,0xfe9ac57e,
-0x0062952c,0x0061a21a,0x0056a256,0x005ed4dd,0x0060a5eb,0x0069517d,0x005a8aa2,0x0064fa75,0x0065025e,0x0075cfc5,0x007df9a2,0x007ad4fe,0x0090bf35,0x008dec53,0x006de4cf,0x006444f6,0x005621f9,0x007a5c71,0x00653819,0x005f9fd6,0x004f6950,0x00558a73,0x005763cf,0x00600048,0x005f71ca,
-0x005e816e,0x00592aa5,0x0051b573,0x00523816,0x006bb2b8,0x0054401a,0x0051f4ca,0x005b84d7,0x004e3348,0x0049fdee,0x003da213,0x0058f10d,0x0051b5cb,0x003e0496,0x00533d90,0x005289d5,0x006488ca,0x005f4bfa,0x0059da3e,0x0046b726,0x00747f27,0x008d6fc9,0x008b9e5b,0x00ca2068,0x00b851b4,
-0x006ab388,0x005f592b,0x0059dc33,0x0084aa71,0x00711619,0x00729ada,0x004c1125,0x004ca599,0x00546fa5,0x006b25fe,0x006b0ecb,0x00603098,0x004f41c4,0x003cad26,0x004cc152,0x009fa4c2,0x00686863,0x0057be4b,0x0061cfd8,0x0027c416,0x00169790,0x00069af6,0x00467e95,0x008fa825,0x0060be73,
-0x0056c387,0x0041c680,0x0050ab42,0x004d3ead,0x0064933a,0x005618da,0x009c5d77,0x00ca9787,0x00b428dd,0x0129fa9a,0x0119cd04,0x006dfbe0,0x006c212b,0x00548c1b,0x00a258af,0x007705b7,0x006a021c,0x003bb2e8,0x003a4ce1,0x005109bc,0x007b30dd,0x007fd194,0x007b0fbd,0x005735d8,0x003673f0,
-0x0033605c,0x00d69790,0x004fb7bf,0x0045e169,0x0073be63,0x00113eb2,0xfff6c9e3,0xffc29911,0x0054d2fb,0x0035be71,0x00155d13,0x001c0faa,0x0063de26,0x009eeb58,0x005228ea,0x00395dec,0x000c801b,0x007f94e0,0x00c974ac,0x00b5a8ad,0x015a5a10,0x00ff16fb,0x00008e47,0x005f63b3,0x00938921,
-0x01352a7a,0x00b49ccd,0x0082967b,0x001e9cdf,0x000babfa,0x002c1ad2,0x00703aa3,0x007ccf13,0x004ff499,0x0007b870,0xfff08e1c,0x00511cf7,0x017c655a,0x00bdee48,0x00663af5,0x00726ca9,0xff8a5bbc,0xff404772,0xff22f5ac,0x0002fe54,0x0188054a,0x013cadfc,0x002e491c,0xff157951,0xfe2ff04e,
-0xffb08b85,0x00858a31,0x00a4f44a,0x0220c360,0x01e7ae62,0x00970089,0x00113528,0x00587278,0x0173fe16,0x00eb7bb4,0x00a64483,0x00a88a2e,0x0044835e,0x002c9149,0x004e1c34,0x00b23689,0x00d4a850,0x010194ba,0x00eeee44,0x0131d444,0x01eb0e0e,0x00adc4f1,0xff7db18f,0xfe92ff5a,0xfecb11a0,
-0xff9aaebc,0x010b8fba,0x019d9706,0x01c007dc,0x01912ea6,0x015453a4,0xff13fda7,0xfbc76ad0,0x0139aade,0x02c51d10,0xffead708,0x00f56b1c,0x00ae7beb,0x002e6ade,0x00285aa7,0x006d10d2,0x0158b494,0x00fbd539,0x00b7db48,0x00a0ef2d,0x0121bdb6,0x015eb894,0x00874555,0x00904cca,0x00995a92,
-0x00891da0,0x00d49c9c,0x00efb6bb,0x0120b54a,0x011ad6f4,0x0121068c,0x0118beb6,0x00bb2e34,0x007f4ea7,0xffe71a14,0x01a3f82c,0x00eeae43,0xfe7898c0,0xfedb7dc4,0xff06b852,0xff372bea,0xffdb6533,0x00bf01fc,0xff05ba18,0xff010978,0xff38b6c7,0x002f4998,0x00f6f113,0x00b7af16,0x003de516,
-0x0079d26e,0x00538dd7,0x005e9e90,0x0049e9c4,0x0073a467,0x0097138a,0x000b1a9d,0xffc8c5c2,0xff7e895d,0xff9ae45d,0xffb891e1,0xffa1c6c0,0xffef367a,0x003741ee,0x00ac9a39,0xffbcb4b4,0xff76d4fc,0xffc0f214,0x007fe075,0x010cffec,0x00b352cb,0x0165f666,0x010b7728,0x00406029,0x00250ce3,
-0x0047f1b9,0x0179ba02,0x01290168,0x00cadd01,0x012ecbca,0x010a7796,0x00b93e0a,0xffece232,0x000c7cd3,0xffd7e1d1,0xff94cf66,0xfff28442,0x001408e9,0x003b7d53,0x003d95cc,0x004a448b,0x0049ad0f,0x0076059a,0x00903639,0x002e57a1,0x001fe453,0x002e618d,0x005dfb40,0x0091345d,0x00992291,
-0x00ba692e,0x003f3b61,0x00038b30,0x0021558f,0xffe64902,0xff6cc7db,0xfeadb000,0xff6a31ce,0xff9bbe7f,0xffdf38ea,0x0051424a,0x00b097b0,0x01151bb4,0x00b9ef0a,0xff4f2e00,0xfecfefb0,0xfe5115be,0xfda37738,0xfcb5df3c,0xfd438e00,0xfdf10ce4,0xfeb9699a,0xff5b6a84,0xffacca36,0xffba2311,
-0xff965295,0xffd06ea0,0x004108d0,0x00418951,0x004ba004,0xffffffe7,0x004e0843,0x005dfc84,0x0050d9a3,0x0005f862,0x0020ffbe,0x00b28668,0x00a14fbb,0x007a3558,0x0005989f,0xffd5f1ab,0xff8f2488,0xff634126,0xfec17e4a,0xfecf0e26,0xffcd928f,0xffabcc03,0xffa55047,0xffbc8832,0xff9e53c7,
-0xfe50b748,0xfe039cd2,0xfde0fbd0,0xfe5bd54a,0xff45166e,0xfef024f6,0xfea9ae86,0xfe632f86,0xfe674b3e,0xfe968c7c,0xfefc0290,0xff271107,0xff8d6787,0x0040af72,0x002babf9,0x004a258f,0x0043384d,0x0097b22b,0x00a19b97,0x00953a29,0x0076bbb4,0x0081f397,0x00e13104,0x006fefec,0x003d7f4f,
-0xffd4f9e9,0xffb813d2,0xff910a4f,0xff670e0d,0xff5d6268,0xfede9cee,0xfe14dca8,0xfda30b8c,0xfdbd5e70,0xfe475390,0xfe491bc2,0xfdb5d0b4,0xfd59ef2c,0xfda9dd30,0xfdc48960,0xfdf976b0,0xfe5af20c,0xfed86906,0xff45771f,0xffa1cd18,0xffd89714,0x00374217,0x0033b746,0x0063359b,0x007f23e6,
-0x003f31eb,0x0014e28b,0xffe1d5b8,0xfff58bee,0xfffcdecb,0x003ab0a8,0x00954a68,0x00c43551,0x01146690,0x00d5c2ba,0x00a75bcb,0x00729381,0x004bd7ee,0x00200780,0xffe28215,0xfff3c5bf,0x00116e65,0x003c8244,0xffbd5635,0xff1ea7cc,0xfe839522,0xfe0e49e8,0xff1d4bd5,0xff240abf,0xff5c63bd,
-0xff7c6447,0xffa283e3,0xffb16faf,0xffbf2e0b,0xffe050f3,0xffdb8031,0xffe2a411,0xfff0aef4,0x0009b4cf,0x0022a1a2,0x004697e8,0x0014f6c8,0xfffe8842,0xffeea3f8,0xffd49e60,0xff93d970,0xff9c3c8e,0xff903cce,0xff813674,0xff7b8199,0xff788056,0xff7eec79,0xff87fadd,0xff71ad41,0xff5b07d2,
-0xff42322f,0xff1fe99b,0xfeee955c,0xfec8d608,0xfec50d3c,0xfee11774,0xfef6be56,0xff0fec92,0xff83abc6,0xff845ef7,0xff719098,0xff657147,0xff4c9a92,0xff93a4af,0xff7f4ebd,0xff7032ce,0xff7abfad,0xff85129b,0xff8684f6,0xff8ada8b,0xff86b550,0xff8b3963,0xffa83124,0xffc579c2,0xff6055bb,
-0xff880b95,0xff995f39,0xffb858f1,0xffb1432f,0xffb5a118,0xffb4ae00,0xffb9f216,0xffbafc50,0xffbecb2f,0xffb0d5c7,0xffa7c9d8,0xff9efe01,0xff96ab66,0xff91b277,0xff840c59,0xff8da0c3,0xff8a3815,0xff877cb2,0xff82f454,0xffbff24a,0x002fe20b,0x00303d0c,0x004567f6,0x00425b7e,0x00413bd4,
-0x00446b09,0x003c0764,0x00461f41,0x0045037a,0x00531e3c,0x00590612,0x0059803c,0x006b6b58,0x00697fe8,0x0056dd15,0x003dafbd,0x0026daa3,0x003b8192,0x00347c1e,0x003541c2,0x002b0f03,0x00321f95,0x003190f1,0x003478a8,0x00258dcd,0x001a0c7a,0x0005f771,0x000689c3,0x000f2018,0x003ba2d2,
-0x00252377,0x0024c5e4,0x002da70c,0x001a971e,0x0014103d,0x000a6f5c,0x0020a5f5,0x00220772,0x00463427,0x002dddd5,0x003ab36e,0x00451a02,0x00606b1d,0x00588c00,0x00363934,0x0058ca88,0x006cb138,0x00737c13,0x00a3016b,0x0099a05e,0x006af182,0x0040f14e,0x0024c1d9,0x001d29b2,0x002dfa4b,
-0x003b987d,0x002bc6e3,0x003d8463,0x003e6212,0x003c3784,0x000e7461,0xffe0c1d1,0xffba1ddb,0xffb1aa8f,0xffdec1d5,0x005f313a,0x002f7975,0x002a6255,0x0029a47e,0xffe8dcc1,0xffd221ff,0xffd10c88,0x0004b21c,0x00571624,0x00ae6aa8,0x007708ce,0x00635baf,0x00473645,0x006fb51b,0x008c8caf,
-0x005abcb7,0x00a057eb,0x00c46840,0x00c57070,0x012726d6,0x0116e536,0x00a52cae,0x0060df37,0x001ed952,0x0008c36c,0x0034cb11,0x00441361,0x003180b8,0x004c2a1d,0x00506800,0x0057f0fb,0x000a37c5,0xffc86dda,0xff6ae645,0xff5d8063,0xff8d0724,0x0082f4a5,0x00185ca1,0x001dea52,0x003e2fc8,
-0xffc23177,0xff9e7d7b,0xff8be229,0xfff35735,0x002ee0f0,0x0074aa2a,0x00013a8d,0x00440994,0x00791c62,0x00acf319,0x009932e6,0x003b4cd7,0x009a837e,0x00bce07d,0x00c38d3b,0x01833b40,0x014900d8,0x00810661,0x00705067,0x005feb80,0x006e9018,0x003f0acf,0x002d9e16,0x000846f6,0x003c9ceb,
-0x004d6550,0x004fa1cd,0xffc389cb,0xff179782,0xfea9918a,0xfeb0cf0e,0xff7e6e7f,0x01091826,0x005c04ee,0x003fa989,0x002e8216,0xff291a76,0xfece955a,0xff13ef7d,0xffc42b0f,0x009aa1e6,0x01bfcc80,0x0191cfc4,0x00a252e4,0xfee44cac,0xff9341bf,0x003e6a06,0x0079a9f6,0x018ff11c,0x01f29998,
-0x0170ecc4,0x005b95c2,0x00515237,0x0131e482,0x008bc92a,0x006e9153,0x009fc503,0x00a8fe0c,0x00be0335,0x00be1ca0,0x00d4ff7e,0x00dcf51c,0x010dfe9c,0x012d4066,0x017420d8,0x021a0f1c,0xff977948,0xfe608496,0xfe62d7ea,0xff2588c2,0x0019282e,0x0054d36c,0x01fd2306,0x01f8ab3a,0x0088df7c,
-0x0023c6db,0x003bd00b,0xfcd1e0e4,0xfdbf71a8,0xff7795eb,0x012541d2,0x00d09d6f,0x00b573cd,0x00f76c64,0x005ec5bd,0x004ac541,0x0127462e,0x0152a434,0x011a2020,0x008e2f46,0x00f3f2c9,0x00e51ac5,0x005be1bb,0x0037f691,0x00365c5b,0x00705704,0x005ead30,0x00a76ee0,0x015abb3e,0x015c50c4,
-0x012f9f46,0x00e61f56,0x0059ff7d,0x0050688a,0x00b68129,0x0116e696,0x008d18fc,0xff2cb0f9,0xffa411ee,0xffb2d496,0xff5e4faa,0x00f7cf88,0x01c49124,0x00950631,0x00823540,0x0084ff98,0x009efb29,0x010eb8de,0x00cdf722,0xffed8257,0x0065b532,0x007a06c4,0x005a0209,0x0052db3b,0x006e7c49,
-0x00b7b32c,0x001b77bd,0xff9f95f5,0xffccb07a,0xffb8e4c2,0xffa30272,0xffb44923,0xff9d7906,0xffde323b,0x0095f32f,0xffc1f265,0xffbfadc7,0x001ac93e,0x0077a012,0x00926434,0x00e9145b,0xfffa1ca5,0xff605d8b,0xff467555,0xff509261,0x001e408c,0x013b5aa2,0x01a9d352,0x00ab891d,0x00accdf2,
-0x0046cc25,0xffe53d75,0xff69a543,0xffae4060,0xffa19fcb,0xff8dfb78,0x0033e1e1,0x00566c37,0x00368d8a,0x008424cf,0x007c0e7a,0x0034a2aa,0x001c6d0b,0x0017fb89,0x00215fe6,0xffe4b79d,0x000ad4f9,0x007fe518,0x00b4a2c5,0x00b4ccca,0x00b21996,0x0020fe2e,0xffdeb20d,0xffaed2d9,0xff6d14bd,
-0xff6eb03e,0x0022edd5,0xfffbf547,0x00792299,0x018194f6,0x0150f53e,0x010eb76c,0x00bf6de7,0x00c7d297,0xff2e5ed4,0xff2d2bcd,0xfe6ad6fc,0xfe011716,0xfdf36ea0,0xfda79ef4,0xfe0cbdfe,0xfea9dad2,0xff31c249,0xffa14109,0xffc71a35,0xffc898dc,0xffc76937,0xffa013b8,0x00028c21,0x00249541,
-0x0008aacb,0x0000901c,0x0005bdfa,0x0032377e,0xffe79abc,0xffe5453d,0x0001fb78,0x0032d5f2,0x003d73c4,0x0013e2e0,0xffd3b516,0xff89f307,0xff85e6a1,0xfec4f342,0xfe8c3a8e,0xfee097a4,0xff878d5c,0x000f3d90,0x0057fef9,0xff967ea1,0xfee35572,0xfedfb11e,0xfede0ed6,0xfeedaf20,0xff0fc3a5,
-0xfe874d88,0xfe318a40,0xfe270694,0xfe570480,0xfe86e466,0xfeb73ac4,0xfea92118,0xfef90e2e,0xff99c304,0x000a3cd4,0x004ebefb,0x0053202b,0x006f7bce,0x007639dd,0x0071e8a1,0x002b4b4d,0x001f34d6,0x002b0849,0x0063aa97,0x00466463,0xffffa0ef,0xffc0b8ad,0xff90a2e2,0xff69d885,0xff47fa69,
-0xff280e6c,0xfee5893e,0xfea0a078,0xfe550212,0xfe2a5bd6,0xfe997594,0xfe423a90,0xfe1a6f32,0xfe220d6c,0xfe4ceea6,0xfe6aea44,0xfeb95a90,0xff1aafab,0xff715ef7,0xff70ddac,0xff4cf616,0xff634f17,0xff891dd1,0xfff9374e,0x0020a69f,0x0027c5e0,0x00301ee4,0x0056456e,0x0064312c,0x00798f94,
-0x008a9502,0x00855472,0x008ac35a,0x0086360a,0x00944b6e,0x00a8b2c8,0x00d33edf,0x0077cfc4,0x001af6e7,0xffaf0dd9,0xff7b71a9,0xff4366c2,0xff1a1878,0xfedb2466,0xfea69bbc,0xfe5dc080,0xfe4ab05a,0xfee34958,0xfeb729c4,0xfee5d1a0,0xfefd64ce,0xff1e3eb4,0xff374440,0xff3dce79,0xff5c001c,
-0xff6465c5,0xff841fbf,0xffa43cb2,0xffb4d5ff,0xffc73415,0xffeff42d,0xfff7aaa9,0x0004e490,0x00078c7d,0x000cc47a,0xffff6edb,0x003b910a,0x004535b5,0x0045d821,0x004be6a9,0x0057c424,0x005d16af,0x006d5ad6,0x0044ca79,0x003200d0,0x001c6c87,0x000374d7,0xffe59b01,0xffc87ea8,0xff92e24a,
-0xff641795,0xff3dad74,0xff0ea6c7,0xffa57c1e,0xff89093b,0xffab282f,0xffb21ff0,0xffc34e69,0xffb4a1c0,0xffc857bf,0xffdfea3a,0xfff0f58a,0xffffa05a,0x000801f7,0x0015d635,0x001bafc4,0x00236402,0x000c7fde,0x000be924,0x000de888,0x00150f46,0x0017960e,0x00287e15,0x0022cd36,0x0028c1b1,
-0x002c751f,0x002d98b3,0x002e0929,0x00340bba,0x00262894,0x001a1654,0x000c7273,0xfffeb3e1,0xfff232eb,0xffe8d1e4,0xffdcb01a,0xffd07159,0xffc1573e,0xffb301da,0x000a0d63,0xfffe1089,0x0004bfad,0x0029ca98,0x0022ee41,0x00213733,0x001b2800,0x00162209,0x0020696a,0x00170599,0x002cf14b,
-0x0031ae8f,0x002f2e08,0x003d2479,0x003a82fa,0x0033808d,0x000cae6b,0xfff75fac,0xfffff456,0x0003c621,0x0006f3a4,0x0004b675,0x000ff9d6,0x000bc915,0x0002dd27,0xffe9c29c,0xffd9138e,0xffc39836,0xffd0d94c,0xffdc8bc1,0xfffe6fd4,0xfff202cd,0xfff4d9b1,0x0005fa7f,0xffe73877,0xffe083af,
-0xffe25997,0xfff071c2,0xfffa1370,0x0043911d,0x002e1342,0x0026d94c,0x001acc19,0x0052d2e8,0x004abf3c,0x000d397f,0x003d2dd2,0x004f9ff6,0x0055b17c,0x00704e02,0x006855cf,0x0057d89d,0x000ef3e3,0xffe6ca2d,0xffd16dcb,0xffebf540,0x000d3ed6,0x000f9e8c,0x002f60a9,0x00251991,0xfffcbd97,
-0xffb29455,0xff7fc4fb,0xff6279c6,0xff7ff5ef,0xffb28560,0x0006233c,0xffef441b,0xffee237e,0x0000fc5e,0xffafdce5,0xff9ccd48,0xffb22eb3,0xffd2a45d,0x002956e9,0x00e9614c,0x00a4eeb5,0x007be8a0,0x00368075,0x007e0dcc,0x00950634,0x00316c06,0x009fa409,0x00ba7bf3,0x00b780c0,0x00f5937a,
-0x00e54694,0x00a1dff6,0x002b811f,0xffd86eb9,0xffab0242,0xffec1633,0x00181f71,0x002c58a7,0x00655e89,0x00516bd6,0x000df33a,0xff87b4c1,0xff28e83f,0xfed79fc2,0xff0d4ef1,0xff531760,0xfff7cab7,0xffcdcc74,0xffd6b85c,0x00256058,0xff710e6f,0xff54c64f,0xff81bf40,0xffb69307,0x00189a84,
-0x00e62452,0x005a947f,0x00596dad,0x005902c3,0x010d2a4a,0x00ee6274,0x004997f4,0x00b78737,0x00cdf5ad,0x00ec993c,0x01a820e0,0x01808418,0x00d88290,0x00618baa,0xfff8334e,0xffa46e1b,0xffcc9652,0x000b0a6c,0x0025ecf1,0x008b6f60,0x0070e046,0xfff0077d,0xff0484d8,0xfe51b5ee,0xfe210254,
-0xfe919ce0,0xff6b6fbf,0x0054f422,0xfff009a7,0xffe2525f,0x002034d9,0xfeee2582,0xfeac5560,0xff3df33b,0xff9ae023,0x00608ab6,0x01f05528,0x028ea0a8,0x01c5ac52,0xffc9288d,0xff298f53,0xff9482ec,0x006d7a4e,0x00d3bb09,0x018bc63c,0x024051a4,0x009c7d14,0x0023fd92,0x00cc37ec,0x00494485,
-0x006f2cba,0x00cb00b4,0x00f1f327,0x00ffb8ee,0x00c3bab2,0x00ad4acd,0x00b9d46b,0x00d61489,0x0109b9e4,0x00fb618b,0x00aa731b,0xfebd363e,0xfdc96ce0,0xfdb12e8c,0xff43dea4,0x00312ab6,0xff65cd75,0x015bb35c,0x014642e8,0xff57ad38,0xffb3667d,0xffca3501,0xfde9a894,0xfb731160,0xfd030d94,
-0x025cbbdc,0x0114f1f2,0x00aa8741,0x00df1744,0x0081f82e,0x006856b0,0x00d406f9,0x01682790,0x01431b2e,0x0071a198,0x00879013,0x005b1cf7,0x004efb5e,0x0028a7a8,0x0025ee30,0x005735ca,0x000e2572,0x005ae3fd,0x0109f550,0x0136ccb6,0x00ec1a06,0x0066c9a2,0x00196c13,0x005b1578,0x0156eb4a,
-0xffe7deec,0xff439511,0xfef62c06,0x00372c99,0x00982701,0x000d214e,0x00bed3e7,0x027b17a0,0x02ac2db8,0x027cacb4,0x0203feb4,0x011bb040,0x00fc1637,0x00d7df7a,0x002606ff,0x00870c31,0x00982516,0x00470068,0x00552f61,0x0065f308,0x00a81c94,0x003dc95d,0xffd18bf2,0x00146081,0xffeeba44,
-0xffcfc106,0xffc6a27a,0xff9a2c44,0xffbdac6c,0xfffbc8f3,0x001bd067,0x006de295,0x0095914a,0x0072cf6e,0x00097595,0x007c87ee,0xfed75e1e,0xfe7e7ad4,0xff31f6c8,0xffc298e2,0x00b6d0d0,0x0150436a,0x01e60a62,0xfff092ee,0xff5b27f9,0xff220521,0xff4480fc,0xff804f3b,0xffd7c7dd,0xffc14e04,
-0xffc53122,0x003996f7,0x006c82c3,0x00541ff0,0x0098d9c0,0x006f5cbe,0xfff8227f,0xffe4fed9,0xffddccb4,0x00040c0b,0xffed4025,0x00111736,0x007034d6,0x008c8f30,0x00a37070,0x009d7b5e,0x00711176,0x0034893b,0xffa2c2ec,0xff5ec4d0,0xffbd50da,0x0113c898,0x00899178,0x012abfaa,0x0268eac4,
-0x0214e7ec,0x019db6b0,0x00cd78e0,0x0082589b,0xffbf20f7,0xff96cc8d,0xff0e965b,0xfecd0bb2,0xfed569c4,0xfea911ba,0xfee46e2e,0xff1f99f0,0xff4d4f49,0xff85040a,0xff7922bb,0xff8a59da,0xff937085,0xff67b989,0xffe8364f,0x000529ed,0x0007651b,0x0004573b,0x000aac9c,0x002473b7,0x0015e1f6,
-0xfffef6af,0xffe8f305,0xfffd3353,0x000dd704,0x003522c2,0x00203a54,0xfffd2185,0xffb97fa2,0xff593c91,0xfefab37a,0xfe552ff8,0xff32aa25,0xffca17f6,0x000c1600,0xffe2da08,0xff5ca91e,0xff4ed1b2,0xff4a1447,0xfeffc464,0xfe48c1c2,0xfe043e16,0xfddb656c,0xfdeb6e70,0xfe3b8350,0xfe856284,
-0xfeb967ec,0xfebed78a,0xfee5c4ec,0xff28b004,0xffb265a5,0x00109309,0x006c4fbe,0x00506c10,0x0044ea2b,0x00392a35,0x0014208d,0xfffa279d,0xffd32692,0x0005bd4c,0x002897fb,0x004a5d2a,0xffff06e8,0xffcc07f6,0xff9a33c9,0xffb211ba,0xffca0525,0xffb73b3b,0xff9e7085,0xff718f81,0xff725cda,
-0xff58a875,0xff1d0be7,0xff1b2e21,0xff0d9ec7,0xff334eee,0xff536e8a,0xff4e923f,0xff42961d,0xff4162c9,0xff0d5c7d,0xfec550b6,0xfe9c336a,0xfec8e7c0,0xff28780c,0xff3e3855,0xffbb38e0,0x000dc850,0x0090ce11,0x00733923,0x0065e3db,0x005e6321,0x00411aca,0x002fd5e8,0x00131a4f,0x00286c62,
-0x0036f11d,0x00583b44,0x000a20a3,0xffd09b75,0xff95eaf9,0xff4e4496,0xfefff5cc,0xfec0d8bc,0xfec9464c,0xfedcad86,0xfee66a08,0xfefdc64e,0xfef21636,0xfec2a22c,0xfea7a1fa,0xfebc2c02,0xfeb9459c,0xfec36658,0xfecbf9e2,0xfeda21f0,0xfef9f784,0xff24321f,0xff48ce90,0xff5916fb,0xff6c1d35,
-0xff825af8,0xffae855b,0xffc72d62,0xffed5909,0x00114722,0x00554d45,0x005f2f78,0x0056f635,0x0059b649,0x0056a9e4,0x00548c50,0x004ad4c3,0x004923e0,0x002d2b9a,0x001d12d0,0x000dbe85,0x00027dc5,0xfffc44d1,0xffeb5aeb,0xffbd27bf,0xff84c88c,0xff515876,0xff1f657a,0xff7fdce2,0xff6f28e2,
-0xff79103f,0xff7c4e50,0xff85dc9a,0xff81083a,0xff894f65,0xff97785e,0xffa3c8ed,0xffad0c60,0xffb6d135,0xffc2aad2,0xffcb555c,0xffd2f6fd,0xffcc0977,0xffcb488f,0xfff148ed,0xffef2d3d,0xfff46922,0xfff1e507,0xfff27a30,0xfff0b773,0xfff00664,0xffedf540,0xffed5abe,0xffeedf07,0xffe68986,
-0xffde5cd2,0xffd4b435,0xffcafcfd,0xffc0763b,0xffbd7a31,0xffad8a45,0xffa49e0b,0xff9ac226,0xff8df6e0,0xffbfb527,0xffdcdc36,0xffe2773d,0x0004c2da,0xffff08b1,0xfffc7e98,0xffe95faa,0xfff3ee15,0xfffc86b5,0xffe99c83,0x0007bb4e,0x000c386b,0x0006304a,0x00099d6d,0x00059a04,0x000b3f00,
-0xffe39878,0xffd4ee05,0xffd8902a,0xffdcbe6e,0xffe21771,0xffe9920d,0xfff00cbf,0xffea0243,0xffd8a074,0xffc6f38a,0xffbccf75,0xffb1f4d4,0xffc80455,0xffd0962b,0xffdb0fb6,0xffd61285,0xffd8222f,0xffeb556d,0xffc857cf,0xffc22834,0xffcbf28f,0xffd105cd,0xffd3778b,0x0019c62f,0x0014d2bd,
-0xfffe1221,0xffd1fb6b,0x002c2265,0x0032ee94,0xffea36be,0x00274107,0x0034152f,0x0038dc6c,0x00326d4e,0x002a1f73,0x003dea54,0xffdfea36,0xffba58b6,0xffb072aa,0xffbe9784,0xffded563,0xfff2e7ee,0x000a3bac,0xfff73075,0xffbbac28,0xff8726ff,0xff6eee3d,0xff6b5bb3,0xffaf5e51,0xffd7dd3d,
-0xffe36ac1,0xffd459a7,0xffcba155,0xffe99d94,0xff96ae72,0xff86cda7,0xffa5b008,0xffb19242,0xffe5f4b4,0x00a3db4b,0x007f67bc,0x00561844,0xffe5adb7,0x005eb02f,0x00776b5b,0xfffbd8ba,0x0093b7f6,0x00ac436d,0x0092526d,0x00937f74,0x007d4362,0x00871aa3,0xffe7b7b1,0xffa21d87,0xff94feaf,
-0xffb2dde8,0xffe4cb97,0x00170317,0x00432c3b,0x001d6994,0xffb08e3f,0xff49bbf9,0xff10c13c,0xfef7c87e,0xff6bfc40,0xffa6d1b2,0xffcc6d90,0xffc0d295,0xffb66328,0x0010d577,0xff545473,0xff398208,0xff8afd79,0xff8aabb1,0xffc7daf5,0x0098fe30,0x004e85a5,0x001556a5,0xffd0d5a8,0x010a667a,
-0x01190d4c,0x004a1f78,0x00cff7d3,0x00dc50f1,0x00e40dd0,0x01762eea,0x0157f6c2,0x00e82e7d,0x001cefc8,0xff9b7aa9,0xff65d32c,0xff7f71a8,0xffc9d3b1,0x001b6239,0x006d3186,0x002d7ea4,0xff675cdd,0xfeb7d10a,0xfe67ca5a,0xfe8bb844,0xff702ad1,0x00194db2,0x002c8fc1,0xffda2b11,0xffb42129,
-0x0013fba5,0xfefad1d0,0xfed6310e,0xff6d034e,0xff7dcf53,0x00392227,0x01b0b5de,0x02cf7e30,0x025e80c4,0x006c4c55,0xfec47e0a,0xfeb854c2,0xfff64640,0x0031a09b,0x00fdbb26,0x0268a420,0x00a43c47,0xfff8874c,0x006110ec,0x00288012,0x0064dc3d,0x0088ac3f,0x00bf75b8,0x00d455e3,0x00b2a229,
-0x0098cf1f,0x0090b1a7,0x007758b5,0x00c486c3,0x006c32b3,0xff6d78c7,0xfe8780f8,0xfe074bf4,0xfe06b022,0xff99344a,0x0034001f,0xff237bf9,0x00804f90,0x0027b4d3,0xfe5d14e8,0xff3acfaf,0xfe9290d8,0xfde7f838,0xfb877528,0xfcaf6440,0x016d4340,0x01682d74,0x01192c22,0x00a85406,0x00703f21,
-0x006aad84,0x0077c254,0x012f06e2,0x0135bf0e,0x008d8cf6,0x00568dd3,0x0022688d,0x0060dc1c,0x005d4393,0x00434a07,0x00149ab8,0xffe6a4ab,0x00123b90,0x00562322,0x00bfcd1f,0x009ab763,0x003ea55d,0xfffc5948,0x00580553,0x018621ea,0xff3d08f9,0xfeaf8154,0xff2f784c,0x0051839d,0x00e3b6d3,
-0x010c78a6,0x0008f891,0x026acfa4,0x034f6558,0x034e7c34,0x029260e8,0x00f5b8e1,0x0068bbe2,0x00a71cb6,0x00e181ed,0x00cd0aeb,0x00a78f3f,0x0040e068,0x003c6101,0x003c9bd7,0x006ba901,0x005c942a,0x001a5066,0x00173915,0xfff098e7,0xffbe5582,0xffa801d0,0xffc3448c,0xffcf59e4,0xffbfaca2,
-0x008fcca0,0x00ffe461,0x011f0422,0x00bec650,0x000e81b5,0xff852be7,0xfed8c326,0xfede9034,0xfec9280e,0x016fd7cc,0x020da440,0x00bf3fda,0x01a7d916,0xff2256c2,0xfeb969e4,0xfe572ebe,0xfee67006,0xffdf5d71,0xfff51ae8,0xffd5eb38,0x00006974,0xfffb1203,0x001f6e23,0x0031cad9,0x00396033,
-0x0014206e,0xffd9e481,0xffc7a59f,0xffabf617,0xffb4a24c,0xfff309c8,0x001904ea,0x00233b20,0x001c2ca6,0x004ef8cc,0x006f74a4,0x0092aa63,0x0062bd77,0x000d7bd3,0x000007b4,0x007acc74,0x0123518a,0x0174972a,0x01b7c4f2,0x0141489e,0x01753958,0x0116f2f4,0x00914613,0xffe57fcb,0x001b3cd5,
-0x0093bdf4,0x000370fd,0xffcbe5d3,0xffb6475c,0xffb2471f,0xffd02511,0xffc79458,0xffb296ec,0xffb54978,0xff84da23,0xff5d1109,0xff60a15b,0xff866e95,0xffab559e,0xffda0658,0x003453af,0x00057eb8,0x0003920a,0x00187259,0x0051bb35,0x005a23a4,0x0035aa25,0x002be52d,0x0022b60e,0x0027a100,
-0x002ff21e,0x0004f203,0xffa3b60f,0xffc12d84,0xffc78866,0xff905a1b,0xffb12b8a,0xffba9eb3,0xffe7e145,0xffd08212,0xffb655ef,0xff79211d,0xff34cf55,0xfed4f116,0xfe10b298,0xfddca6f4,0xfdda22e8,0xfe1139a6,0xfe4f6608,0xfe8c30e4,0xfebdf044,0xfef43df4,0xff130911,0xff1728ca,0xff60df05,
-0xffa9e9a3,0x001f0c4f,0x003ce9a4,0x0050f8da,0x00394da4,0x00316176,0x0017541b,0xfff93168,0xffec52e9,0x00062859,0x0067a632,0x00489e10,0x00287e87,0x00026287,0xffd18a05,0xffd16a99,0x0021ec5b,0x001224d8,0x0004f3c8,0x00019317,0xffe56a4a,0xffb86228,0xffbe3028,0xff9b9dc1,0xffa05927,
-0xffb0b43e,0xff6b73b4,0xff18a55a,0xfec9365a,0xfeae138c,0xfe94ab0e,0xfe6feef6,0xfe89de14,0xfea268d6,0xfeaf35e2,0xff42eea4,0xffba52a3,0x004224b1,0x00328e76,0x00382929,0x00466908,0x002bb70d,0x001b7da1,0x000ab277,0xfffa305e,0xffe01a0a,0xffc6610a,0xffbdf5d0,0xffc16078,0xffc7e59d,
-0xff9f0414,0xff74665d,0xff4692cf,0xff618374,0xff82cdb4,0xff9b27cf,0xffa3c4f7,0xff6593cb,0xff5c7575,0xff295cd2,0xff36486c,0xff1b82ad,0xff1ec57c,0xff2f5a5b,0xff2782a3,0xff48ea6e,0xff541ae7,0xff627a30,0xff6bb688,0xff74e2fd,0xff729587,0xff80814b,0xff7a34d9,0xff854abf,0xff9583ec,
-0xffbc0360,0xffb2fcd3,0xffb2cc5b,0xffb872e5,0xffba10e3,0xffbd6580,0xffc31ff4,0xffc60824,0xffc1de13,0xffb78227,0xffb0f4c5,0xffafce15,0xffb228e3,0xffa8cc83,0xffa0d929,0xff8b07c1,0xff7b5717,0xff6fdb54,0xff7c847d,0xff7e2a4b,0xff7c4a77,0xff7d1bf2,0xff7d6bac,0xff7fddca,0xff7f5159,
-0xff7af7c7,0xff7a48d3,0xff7d1988,0xff82956c,0xff84ebe0,0xff89fd52,0xff904a0b,0xff8c36e7,0xff8940be,0xffaa2586,0xffa22849,0xffa1bd3f,0xff9b538d,0xff9ff88c,0xff9ec000,0xff9f509b,0xff9f3802,0xff9ed7e1,0xffa1175c,0xff9aa4ab,0xff97447f,0xff92ddd6,0xff8ddf48,0xff899b2d,0xff89b538,
-0xff853b27,0xff851ab6,0xff84590c,0xff81c698,0xff7114ce,0xffd754e2,0xffd8bbbd,0xffee0019,0xfff00ac0,0xffed22fb,0xffcc7903,0xffe78a60,0xffeaea74,0xffd91f16,0xfff410ae,0xfff8f4da,0xfff897f3,0xffe9cff4,0xffe5bae5,0xfff9ba59,0xffd69c9f,0xffcd0758,0xffc6cc65,0xffcf9f3f,0xffd637ec,
-0xffe390db,0xffdf4fa9,0xffd9863c,0xffccbcfb,0xffc20d50,0xffc090ca,0xffc0d4c6,0xffdc23ad,0xffe25162,0xffdd089a,0xffd73b95,0xffd5f12f,0xffe25d55,0xffc861c9,0xffc333df,0xffcc7b62,0xffcd9308,0xffc8ad4a,0xfff06b68,0xfffc0788,0xffe9b24e,0xffa83d30,0x000aafc3,0x002055c5,0xfff07ca8,
-0x0021e424,0x00296dff,0x0037d60b,0x000a6c37,0x000083dc,0x00310c42,0xffcec020,0xffaf50fd,0xffa24ba5,0xffb5ab6c,0xffcdf065,0xffea61bd,0xffe3ac8a,0xffccc72b,0xffa5e7ba,0xff834870,0xff86b081,0xff9c5fab,0xfff99a8a,0x0017cbe4,0xfff34936,0xffd8a486,0xffc1705f,0xffd5c06c,0xff9fbb94,
-0xff9a7f3d,0xffb21042,0xffb2de50,0xffc7e363,0x003cd839,0x00531c1b,0x003edd0c,0xffa290b5,0x0031c8af,0x004a72d0,0xfff3f61c,0x00844e5c,0x00a0179f,0x0091f398,0x0045d16f,0x0024b552,0x0081b37f,0xffc551de,0xff958ef6,0xff89305b,0xffa3d3f7,0xffce9ad4,0x000605b5,0xfffc23ab,0xffd0b76a,
-0xff8897a0,0xff405ac8,0xff3d6a73,0xff5345ab,0xfff49fc9,0x00253688,0xfff53039,0xffdd6011,0xffb9dd46,0xffef68dc,0xff6d894a,0xff59c307,0xff9b30e7,0xff8a831d,0xffa96425,0x0020e49e,0x00270a75,0xffda961d,0xff4e4d94,0x00b5b29f,0x01119286,0x006147fe,0x00ef838f,0x01009d04,0x00ee3c4d,
-0x0102277e,0x00e9cbc9,0x00e4b82a,0xffd84248,0xff7362ee,0xff66906d,0xff8359c9,0xffbf041e,0x001dbe57,0x000989a6,0xffb63238,0xff2b3979,0xfeb918c4,0xfec80966,0xff261edf,0x006551da,0x00e43e50,0x005d8bb8,0xfff130d5,0xff97f1ba,0xffc3b4d4,0xff2cd466,0xff3ad907,0xff947a0f,0xff8591ed,
-0x000162a4,0x01031b5c,0x02700010,0x0268bd60,0x00e51458,0xfed124f8,0xfe4079ec,0xff57b184,0xffe1ce9e,0x008b647a,0x01a3762c,0x0099b3bf,0x000b073f,0xfffafcf0,0x0033313a,0x006c8ab4,0x0024b573,0x00593339,0x00741398,0x0083f910,0x0046832c,0x00436b28,0x00430ade,0x006bc67d,0xffffb74b,
-0xff0c4e3a,0xfe87d29e,0xfe5a19e2,0xfee16246,0x00053dc6,0x00662bd0,0xffdfbb83,0xfffd3e78,0xff532ef2,0xfe58b356,0xff120541,0xfe40152a,0xfddc9520,0xfc54d72c,0xfcecc1e8,0xff4d9b3e,0x015d6734,0x01b8adfa,0x00f14659,0x00456f0e,0x0024f21c,0x0028fbc4,0x00c4844c,0x00f34b07,0x00b1cd6a,
-0x0053e295,0x0018c0c3,0x00565d86,0x0065935a,0x003d31e7,0x000c2363,0xfffda711,0xfff8be1a,0xffd90245,0x002ea2be,0x002ffd29,0x00210337,0xfff9efcc,0x005847ff,0x015b766e,0xff38283f,0xfed5a9aa,0xffecf3b4,0x00292365,0x00f050e5,0x02297808,0xffde1eba,0x019a2b5a,0x030a20d0,0x02ac5908,
-0x01f090ec,0x0040ec24,0xff5d4db7,0xffe4b250,0x012a54b4,0x00f0a135,0x00b47ba8,0x00245723,0x001ce922,0x0010be91,0x001dd0aa,0x00716d6d,0x005e8b93,0x00065c01,0xffe9fb9e,0xffc1d925,0xffc9c002,0xffd5208f,0xffd80943,0xffea364c,0x00b7337b,0x011700c0,0x013196f2,0x00f6055c,0x003e98de,
-0xff19afb3,0xff8b185f,0x0004b277,0xffec42a7,0x0184afa6,0x011ce4a4,0xff43b34f,0x004d3b86,0xfec98606,0xfe7b625c,0xfe65d1d6,0xfeecd67e,0xffe65ad8,0x00067bf7,0x00032a6f,0x0012d8ac,0xffdad639,0xffdaccf2,0xfff7bf45,0xffcc0a67,0xffb82f07,0xffdaf660,0xff9f945d,0xff79c8e8,0xff86a347,
-0xffd287f6,0xffe0b628,0xffb2433a,0xffd3ca78,0x000ccf02,0x0036d8a9,0x005b8b32,0x00518f4b,0x00994f29,0x00beaf5d,0x0114b190,0x0115e89c,0x01d3ed78,0x0181894a,0xfffd357a,0x00063b7d,0x0007826b,0x0020f5b5,0xff7e2177,0x010fe212,0x01355bfa,0x00c1a61e,0x008cb0c2,0x0082d868,0x006828d3,
-0x004eba35,0x0030b018,0x000324f1,0xfff9aba2,0xfff99cc9,0xff92ce1d,0xff7032c0,0xff94216a,0xff935d8e,0xffc7f3be,0x000f19c2,0x000c1a1f,0x0019b196,0x001c182c,0x0055d903,0x006267d6,0x0052e677,0x00384b98,0x001b95ed,0xfff80a8e,0xffdf0d83,0xffbb3bb6,0xff8ec0ed,0x0003f666,0x00793dd3,
-0x01226c9c,0x00aa228d,0x0068ba7c,0x009d95b4,0x00cc872c,0xff5ac181,0xff40a5dd,0xfec53678,0xfe66bd2a,0xfe057bac,0xfdea500c,0xfe1a0a4e,0xfe921eb0,0xfe9c7e7c,0xfebf712a,0xfef20a56,0xff2bade3,0xff50511d,0xff56ed63,0xff4e5130,0xff66c1fe,0xffa89adb,0x0024eab9,0x005a80d8,0x00479748,
-0x0049b715,0x00443e75,0x00516379,0x000c2252,0x00151500,0x00433367,0x005793a9,0x00648f61,0x0045a07d,0x0032eb5e,0x000c2d71,0x00010b51,0xfff76bdb,0xffe5fcc6,0xffa15653,0xff8fd1d9,0x0006d849,0x00061350,0xffd78efe,0xffaed384,0xff94a361,0xff565fbe,0xff02f723,0xfeacb4e8,0xfea7d110,
-0xfeaeb742,0xfe93cbb8,0xfebd9ae2,0xfebfccaa,0xfee8e1bc,0xff3845d3,0xff9157dc,0xffd1da31,0xffeeb59e,0x00129929,0x00549646,0x004e24bf,0x00427493,0x00428786,0x002d6c0c,0x0014984d,0xfff3a713,0x0000ec82,0x000ebed6,0x0020bb24,0x0017e67f,0x00193e06,0x0013d91c,0x001a36fb,0x001c01b7,
-0x0023f3c5,0x00136566,0xff9a263d,0xff9bf16c,0xff8461f2,0xff91f5e7,0xff872dab,0xff87e37a,0xff991577,0xff9e26af,0xffa6f096,0xffa5416e,0xffa12928,0xffa35fe4,0xff9fa2cf,0xff9170dc,0xff8e03a6,0xff89d0c0,0xff9358a8,0xffa5411a,0xffa5a2c6,0xffc64de1,0xffc1aff8,0xffc59457,0xffc69a37,
-0xffca319c,0xffd12d6b,0xffd67181,0xffcf5947,0xffc22841,0xffb8940a,0xffafdec3,0xffa55260,0xff98a810,0xff987c9f,0xff96dfec,0xff963577,0xff97df95,0xffaad38a,0xffb2a637,0xff9c689f,0xff9312d2,0xff844d0e,0xffa0c0c4,0xff8f1d68,0xff8189a0,0xff7b391c,0xff76d7b3,0xff75dde2,0xff6e8e60,
-0xff6cbc8b,0xff69e152,0xff8105af,0xff95ab5d,0xff7f414b,0xff90f185,0xff9ca3d8,0xffb23acf,0xffae098f,0xffaf7ead,0xffaffd69,0xffb0bf4c,0xffb0db93,0xffb3c7cf,0xffadebec,0xffab8a62,0xffa7a6a3,0xffa440f7,0xffa1c9cb,0xff9e1436,0xffa23dde,0xffa4b77d,0xffa6e24b,0xffa9a077,0xff8f0b2b,
-0xffe0f6db,0xffe08255,0xffeb3ac5,0xfff102da,0xffefde7a,0xffd28fef,0xffee4079,0xffece0a3,0xffe54f2b,0xfff36e2c,0xfff8ca62,0x000351ec,0xffe6fb7d,0xffe23e6f,0xfff99102,0xffde5dc5,0xffd69329,0xffc61f54,0xffd1f6be,0xffd810f0,0xffe5f3f5,0xffdddb1d,0xffd90d1d,0xffd0ff31,0xffccecd5,
-0xffd09b33,0xffd88c66,0xfff08fb5,0xfff671b4,0xffef75d6,0xffe783dd,0xffe19bbb,0xffde5e36,0xffd45c3d,0xffd1e8b1,0xffda0b1d,0xffda34eb,0xffda87a0,0xffeb9a26,0xfffbb868,0xfff5fe49,0xffbd57f5,0x00044adb,0x001befa5,0x000e967a,0x0021ec15,0x00270625,0x0045a570,0x0001e917,0xfff647c4,
-0x002419ca,0xffd82332,0xffbc0399,0xff9b9e7d,0xffb5c097,0xffc8845c,0xffe0455c,0xffc9cb14,0xffb696d0,0xffa37f5f,0xff9428d9,0xffa9fb49,0xffd32bbe,0x0024c39f,0x0038bfa9,0x00111d7e,0xffeda64c,0xffcc580f,0xffc3de58,0xffb11981,0xffb7a7e6,0xffce93cd,0xffcc2e18,0xffd93f20,0x0006c8d4,
-0x00363acf,0x003bc5ae,0xffadf292,0x0026b533,0x0035b189,0x0018357f,0x00745c5b,0x008f34a4,0x00b3f999,0x002d7205,0x0005c153,0x0074ad60,0xffcaa5c3,0xffa7e625,0xff73f85a,0xff971824,0xffb9af4d,0xffebcc5d,0xffbf8f38,0xff9dc297,0xff790aa7,0xff56ba9e,0xff776cca,0xffaaaec7,0x004267f1,
-0x006a3404,0x002b5c54,0x000dd5ad,0xffd31197,0xffb93f28,0xff890d57,0xff81589a,0xffbc69bd,0xffb12d2b,0xffdbab4f,0xfffb9a97,0x002f6f82,0xfff0cda3,0xff4ffa4b,0x006cc825,0x00eb6e31,0x00900dd6,0x00fea152,0x01280914,0x0123eab8,0x00a5e072,0x008dbe57,0x00dba680,0xffc15198,0xff7be1e5,
-0xff5fc8a0,0xff86c1b4,0xffb63c43,0xfff3b760,0xff9a524c,0xff510fae,0xff0ccfaf,0xfee56a22,0xff32b0fc,0xffbefbb4,0x00e5fc7c,0x0129ab0e,0x008a448a,0x001843a2,0xff9ed920,0xff669322,0xff4af0a4,0xff8accd6,0xffd17145,0xffc2c99c,0xffc9393e,0x00384360,0x01834b98,0x01ecac9c,0x013175f0,
-0xff516f08,0xfe73e4f6,0xff0f7d20,0xffc9e7a4,0x0048a726,0x009dd11a,0x00b306c2,0x0058f51e,0xffaf547a,0x004c6ddb,0x0071c2a4,0xffde966f,0xfffc85fc,0x00004d36,0x001f47a9,0x0008588d,0x0020d689,0x0033bd7a,0x0022d16a,0xffbecfaf,0xff187f0b,0xfe8d26ba,0xfeb3d45a,0x000a46b1,0x00758bc3,
-0x00997c40,0x00a544b5,0xffbd2486,0xfee3ec78,0xfeb97df0,0xff29507a,0xfe9a1d34,0xfec99250,0xfd7dd450,0xfd79d994,0xfde12438,0x00d45da2,0x01ef17d6,0x0150b858,0x003d1479,0xffd69e47,0xffc79cd3,0x004b0459,0x009d97cb,0x00af0a16,0x00671fbc,0x00260483,0x00411eab,0x001d224f,0xffffe325,
-0xffff52c0,0xffe89414,0xffd885c5,0xffaceb08,0xffaf0d6b,0xffc6607f,0xffe296b2,0x004642fc,0x0082a330,0x00aaba1b,0xff44e2ee,0xff277391,0x00ae1531,0x0057f0a8,0x013c00b4,0x02fb1438,0x0005edc2,0x00b553c3,0x0307119c,0x0148e590,0x007db495,0xffba5db5,0xfedf5bd6,0xff507c0e,0x009b48f6,
-0x00c39e86,0x00aaed8a,0x000f4f71,0xfff6c460,0xffe3a929,0x000313dc,0x005e520c,0x00725521,0x000c113b,0x0010e2fd,0x000625f9,0x000b631d,0xffd87155,0xffe7016c,0x003fbe54,0x009df5bd,0x00d77394,0x00e06a41,0x00af5ea5,0x00438730,0xffab20c9,0x0002aa6d,0x00cb0b5c,0x021dda4c,0xffd15c83,
-0xfe52dd90,0xfdc92f38,0xfed9e630,0xfed9a31c,0xfe632630,0xff047cc4,0xff831c31,0xffd8d310,0x002c726e,0x00416031,0x001e4bfc,0xfffe1701,0xffccbfdf,0xffdbc4b0,0xffa60597,0xff9ef6d0,0xffd839ea,0xff8e8032,0xff70951d,0xff7db549,0xff94a1e8,0xff8deef8,0xff769543,0xff907e31,0xffadae5c,
-0xffdfc3fa,0xfff6f053,0x00473ad1,0x00dc89dd,0x01499d6e,0x016eb73a,0x0118a8ea,0x017c31e6,0x00ec7868,0x0023a642,0xff7fd823,0xff844d42,0xffa3a14a,0xff65d7a8,0x01af2ef4,0x01226bec,0x00f1ba05,0x00b0747b,0x00a6a0d2,0x00853a28,0x00556baa,0x002b12a7,0x0015d768,0x001cc92e,0x0049bd47,
-0x0001cafb,0xffc04a52,0xff8e8ccc,0xff93acfc,0xffb1ab0a,0xffc6ae0a,0xfffff8f7,0x0023c003,0x00273354,0x0048377c,0x004d5f31,0x003f4f1a,0x002b0fe0,0x00043bed,0xffbefd73,0xffa11856,0xffb9e92b,0xfff89f6c,0x008ccd51,0x00fefe59,0x01924eb6,0x014695ea,0x014dd9b6,0x01a909fc,0x01d4cef2,
-0xff130a43,0xff17f552,0xfe90b678,0xfe4decb2,0xfe445f28,0xfe7bf62e,0xfec82d58,0xff189363,0xff0bc93d,0xff177f5f,0xff411c2f,0xff54ef1d,0xff74a849,0xff802971,0xff630c7d,0xff62fe85,0xff6b3766,0xffdc4c59,0x001f8cf3,0x004ce94d,0x005460e3,0x005ed070,0x006abbc3,0x004eebe1,0x0040c75d,
-0x0042eb5a,0x006ac660,0x007b2c43,0x007d6803,0x005b7f35,0x00398ba0,0x0024f19c,0xfff16853,0xffbc9187,0xff693ff8,0xff3ef152,0xfff6a89a,0xffee39c9,0xffb350d1,0xff782778,0xff2fb0d8,0xff1094c3,0xfede9fdc,0xfeaf6162,0xfec482da,0xfee25520,0xfee21ad6,0xff1de11e,0xff2f6efe,0xff6b9152,
-0xff720c58,0xff8d8825,0xff8e44de,0xffd110ef,0x00157b37,0x005f154a,0x0056c8a9,0x005d79f0,0x00656fd7,0x005ea452,0x005a2d8b,0x004fc282,0x0056fdec,0x005f0464,0x0070cbf3,0x006e136f,0x006f53ec,0x006af1b1,0x004b5173,0x002fc9d8,0x001fe694,0x000ee3a2,0xffce7706,0xffd58a7b,0xffbed231,
-0xffc5ca7d,0xffbf2d92,0xffba97f9,0xffbba64d,0xffb81b3b,0xffbc133c,0xffbe3782,0xffba1869,0xffbfb395,0xffbc1ee9,0xffb677f9,0xffb77614,0xffc42c52,0xffd0764a,0xffe020b8,0xffdc0f65,0x0000ccca,0xfff83fa0,0xfff51ca1,0xfff0225f,0xffecc049,0xffea7df4,0xffe91975,0xffe1feb8,0xffd6c98e,
-0xffc91d21,0xffbd874a,0xffb4235e,0xffaf89c4,0xffb98652,0xffc3a8b5,0xffc84967,0xffca95a3,0xfffc4bd6,0x00070b4f,0xfff325da,0xffe7d25e,0xffd5c244,0xffe69a08,0xffd63126,0xffc67a03,0xffc642e6,0xffc3b10a,0xffc50181,0xffbffa27,0xffc0529e,0xffbf3700,0xffd6e338,0xffe68aaf,0xffcf9df4,
-0xffe23b29,0xffead973,0xfffd22d1,0xfff5ca86,0xfff52098,0xfff36326,0xfff25b1c,0xfff0b7de,0xffefbcfb,0xffec51bc,0xffeb2c36,0xffeaabeb,0xffea6cdc,0xffe89c6c,0xffe24810,0xffe7d093,0xffeaecac,0xfff00156,0xfff6f10e,0xfff68a0f,0xffee5fc8,0xffefa34d,0xfff2bf2f,0xfff86cea,0xfff8d580,
-0xffe7f703,0xfffaa9b9,0xfff66ec8,0xfff6e3c5,0xfff66f17,0xfffb2cdc,0x000ad74c,0xfff0adb3,0xffeba89a,0xfff9463b,0xffed59dc,0xffe84f6c,0xffcbad70,0xffdaaf51,0xffdefeb5,0xffe95154,0xffe23b1f,0xffdfcf45,0xffdc8204,0xffde3f75,0xffe52f30,0xfff50a18,0xffff13c1,0x00030ac0,0xfffd958e,
-0xfff8e430,0xfff0aee4,0xffe25794,0xffdec01e,0xffdde380,0xffe6f1ce,0xffeaf343,0x0001bba5,0x0001b70a,0x0010fae0,0x00137f7a,0xfff146f6,0x0010c9de,0x00202803,0x002958ed,0x001dbc49,0x001e60e6,0x0040415b,0x00066638,0xfffdab44,0x0010c946,0xfff01596,0xffd791f2,0xff9ef545,0xffb7aee7,
-0xffbf312d,0xffce845c,0xffb954cf,0xffb04070,0xffae60bc,0xffb30e64,0xffd50260,0x00113a61,0x0039f96e,0x003e42ab,0x001cb16c,0x0003727a,0xffe285ef,0xffc35582,0xffba0696,0xffc7aba8,0xffe8e809,0xfff36c12,0x0004bfa4,0xffffd61e,0x002ebd09,0x003fb3a6,0xffe9f4fc,0x003670c9,0x00345c16,
-0x00404be6,0x0056d577,0x0064dbc4,0x00b16a25,0x002e3d27,0x00104e9c,0x004e06a3,0xffec6603,0xffd2da01,0xff69c53c,0xff928c06,0xffa385fa,0xffc3eb41,0xff964239,0xff867bdf,0xff837199,0xff853c83,0xffbadfdc,0x00186f3a,0x005ee4e1,0x0072d86e,0x00395aad,0x00338dc5,0xfff3a33b,0xffa393c5,
-0xff8cbc9a,0xff8ca950,0xffd3a1c9,0xffe3f91a,0x00464eae,0x0030d5ec,0x006afb40,0x003f6741,0xffb815dc,0x005ff0cc,0x00ccd439,0x00c54234,0x00fb43f2,0x01340c04,0x014c5482,0x007b5329,0x0060fa56,0x00b7a3c0,0xffe102df,0xffaac2f2,0xff4224f6,0xff6f5209,0xff83973f,0xff973863,0xff38f634,
-0xff1504b5,0xff16d137,0xff30edf6,0xffae647c,0x00823a96,0x011d8c0a,0x0107a08e,0x00782696,0x00360ed2,0xffca0872,0xff4d8a1f,0xff4f1c3c,0xffa5781f,0x000e8e63,0x0028771a,0xff7899c7,0xff7cca73,0x00530439,0x00f0b7f2,0x012b89c0,0xffe0a856,0xfefd7198,0xff108054,0xff965066,0x000b5175,
-0x00039646,0x00e71fe9,0x00bd751e,0xff9d424d,0x004e5a28,0x005e90af,0xfff35dcf,0xffdd17b6,0xffd179f1,0xfff6cb59,0x001a676c,0x003dce83,0x00352771,0x0017ca6b,0xffb2e3ea,0xfefffb82,0xfea6c1aa,0xff21277e,0x00dc9f58,0x00b0ec40,0x00a535a4,0x00ced659,0xff7908f5,0xfea21830,0xfeba0f16,
-0xff1df56a,0xff5a229b,0xffdead4c,0xfed2d2b4,0xfe4609d4,0xfdc7b180,0xfffedaca,0x014f1e34,0x0140d2b0,0x006a1276,0xffd9cefe,0xff771a5b,0xffdf5acf,0x0047889f,0x00853942,0x00635b1b,0x0027f862,0x0034cf4c,0xffc73aed,0xffa29198,0xffa46aed,0xffaf969b,0xffb893d3,0xffae12c9,0xff73b742,
-0xff9501d7,0xffb31569,0x00d52727,0x00e7d413,0x001417d6,0xff601ec1,0xff7608e0,0x00ea685c,0x00da00f0,0x01ac2582,0x02e4a750,0x00662e40,0xff645929,0x0205c570,0xffff8772,0xff48427e,0xffbd2d00,0xff3abb5d,0xff6bbd6c,0xffc29005,0x003be92e,0x0067caed,0x001fca1c,0xffdd4a4e,0xffc77d7d,
-0x0006b7aa,0x002bfeca,0x00548800,0x0023fb6d,0x00331c62,0x003cc8a1,0x0048651a,0x000fedde,0x002a1481,0x00914d00,0x009a7a29,0x00a6b5e1,0x007f5c48,0x003fe08b,0x003030bb,0x00721b8d,0x005ad18c,0x00f466a7,0x02b59508,0xfe767580,0xfcbb6bdc,0xfd6cb0ac,0xfdf59cc4,0xff5acb95,0xfede3590,
-0xff9f57b0,0x0009b800,0x001d533e,0x002444d4,0x002c7991,0x000e5f2b,0x0011949b,0xffc73bfc,0xffc6ec30,0xffbc1108,0xffc54e5b,0xffcfeda8,0xffac0a3c,0xff92da2a,0xff7e6ea2,0xff693883,0xff5d78f6,0xff7292ca,0xff611dc2,0xff68b119,0xff8e4e7b,0xffc59f97,0x00568bca,0x00ec3018,0x014f5d92,
-0x016bb07c,0x015bb32c,0x00ff0ec8,0x0071ce31,0x0099c464,0xfff42008,0xfff3fcb5,0xffc15da7,0xffbaf660,0x010d4b74,0x00249942,0x00709407,0x0066a956,0x00866f27,0x009558f8,0x006ba021,0x0023565b,0x001b9e89,0x002b99dc,0x005641ad,0x00592b66,0x001710aa,0xff9f150f,0xff8f57fc,0xff84ea2e,
-0xff8d49aa,0xffdcb7cb,0x0017a73a,0x003bb41c,0x0038523b,0x003e3188,0x0047fe55,0x002e4ad2,0x00032edd,0xffce821b,0xfff0a4ad,0x003c377e,0x00b685a7,0x00f4e62d,0x01346a82,0x016ecab2,0x016033b6,0x017a2ed8,0x0193eb16,0x01883394,0xff8add84,0xff3ad194,0xfefb5146,0xfeddd86a,0xfee08aa0,
-0xff4c45ea,0xff9e1a9e,0xffaffb48,0xffa91a81,0xff9b0e42,0xffa06fa7,0xff76cab6,0xff7ad60e,0xff81ffae,0xff9352b7,0xff8b3a8f,0xff632029,0xff91520f,0xffc8fd92,0x0012df26,0x00302672,0x004d6c30,0x004fd308,0x005bbfc9,0x005bd4b1,0x0048d4d2,0x004a7f90,0x00483c9c,0x0066ff29,0x005bc06d,
-0x0050dec8,0x0038125d,0x001ee9f3,0x0005d67e,0xffdc1470,0xffc26532,0xffb82878,0xffb3ff55,0xff77953b,0xff3a10e3,0xfee2daf8,0xfee17ed0,0xfed459bc,0xfecac37e,0xfeeffcd8,0xff18e7ba,0xff35dc90,0xff63594b,0xff7bc432,0xffa03673,0xff99e08b,0xff9d65ff,0xff9b4dde,0xffcb9e2f,0xfff74081,
-0x00150dae,0x002087fc,0x003e1b44,0x00566324,0x005c00b0,0x006190d1,0x0069a9c4,0x006b4a0e,0x0070447d,0x0077d9dc,0x0069822d,0x005ae71a,0x00440218,0x00158fbd,0xffec8a71,0xffceb4bb,0xffc4dfd0,0xffefffd7,0xfff204df,0xffe7f544,0xffdbbae3,0xffd869e8,0xffd06a7c,0xffc175eb,0xffb2220e,
-0xffb65103,0xffbc7087,0xffbdfeaf,0xffc1d416,0xffc2f7c5,0xffc77b64,0xffda0fc6,0xfff1536f,0x0000a017,0x00101a68,0x0020722a,0x0038b1c2,0x00321fa1,0x002ad751,0x0025f349,0x001f79cb,0x001ac0c5,0x00166efe,0x000d0bc2,0x000238d4,0xfff6e4d5,0xffec42c6,0xffe62214,0xffe7d4b7,0xfff0a763,
-0xfffa00f2,0xfffbf16c,0xfff6bdb0,0xfff54114,0xfff75359,0xfff6dbfe,0xfff44bd5,0xfff2da36,0xffdd80f5,0xffdc56c5,0xffd8bec6,0xffdea6c6,0xffdf4f0c,0xffe337fd,0xffe57107,0xffe9dc27,0xffebbea0,0xfff0346b,0xfff12376,0xfffdc732,0x00004498,0x000139d6,0x00053d5c,0xffffabcf,0xfffdce15,
-0xfffab044,0xfff96d2f,0xfff78dfe,0xfff5bb57,0xfff40557,0xfff39c36,0xfff3afde,0xfff51590,0xfff435fa,0xffef145c,0xffee15c9,0xffec2906,0xffed1a6a,0xfff1338d,0xffec0132,0xfffa13bd,0xfffe35ab,0xfffac032,0x00013d8f,0x0003449e,0xfffebfec,0x000222b1,0xfffd293d,0x00050e2e,0xfff7f740,
-0xfff9ed08,0x0004b6d9,0xfffb564b,0xfff906ee,0xfff9d3e9,0xfffe02ae,0xfffc6c52,0xffdc87d9,0xffe967e4,0xffe9808e,0xffed2545,0xffe9a2a6,0xffe9bc64,0xffe85b3d,0xfff0ecc9,0xfffa2cda,0x000ffe15,0x00098cb2,0x00099d9f,0x0002d360,0x000572f9,0xfffd6fec,0xffeb1291,0xffe6ea4b,0xffe76bb8,
-0xfff41bc7,0xfffa489e,0x0028f766,0x0016fc89,0x00266217,0x0026aadf,0x001a1a25,0x0016662f,0x001b8b15,0x00348426,0x000fd023,0x000a64ce,0x001defcf,0x00097b98,0x0009cb42,0x00027122,0x000cbb8d,0xfff9afb2,0xffb9510e,0xffc4de06,0xffbfa992,0xffc4931e,0xffb7579b,0xffb7e487,0xffbedbe3,
-0xffdb8f35,0x00054b79,0x004b3821,0x0044d473,0x00375568,0x0014606d,0x000fe0a5,0xfff7712b,0xffd1707b,0xffc43475,0xffd4ac91,0x0005b3f3,0x001bc1f3,0x002ab5c3,0x00018ca2,0x00308e3a,0x00405a91,0x00274b3e,0x0036b0a9,0x0022c844,0x004dac5f,0x0021c909,0x001fd827,0x00646fe9,0x002987e9,
-0x00275a1f,0x0026d499,0x0018448d,0x000cf145,0xff8fde11,0xffa9b89d,0xffa0cb5b,0xffa98a49,0xff8c8309,0xff8ed228,0xff972d05,0xffc3423a,0x00040bae,0x0082aaa2,0x0065ea00,0x00622d1d,0x0027e739,0x0046a632,0x0010d2aa,0xffaafdbf,0xff93a54a,0xff9a4228,0xfff2e5c2,0x0012333a,0x00a99ee8,
-0x005bed97,0x0092cf9d,0x007b491f,0x0027fa75,0x00587135,0x009c7f49,0x00e8a364,0x00dbec26,0x0107c366,0x01257e02,0x006d4bbe,0x005a22d8,0x00894c0b,0x002398aa,0xfff5ec3d,0xff4b3ed5,0xff6bbe45,0xff62ecc1,0xff53ef61,0xff117cc6,0xff106b56,0xff33ace2,0xff97283f,0x003a7d0d,0x013826ce,
-0x012a85ea,0x00c66204,0x003a7507,0x003fdf28,0xfff88509,0xff69084c,0xff67fd71,0xffbf7c65,0x0058263c,0x00939604,0xff19a19e,0xff1e5548,0xff90a6dd,0x002bcc51,0x00e3e6bc,0x004f4d78,0xff8a0f22,0xff0fb16b,0xff4a41d3,0xffce75b1,0xffe02081,0x0109a2ea,0x00f928eb,0xffa88e46,0x00371356,
-0x0042a3a4,0x004b9872,0x0011bb3b,0xfff86714,0x0009cffb,0x00620348,0x007915b5,0x004e7df3,0x00135bdd,0xff98ae40,0xfee6e252,0xfed463de,0xff95237b,0x014ef8ce,0x00c50b95,0x00a0bea3,0x00c2ff0d,0xff4dbee6,0xfe9a36b0,0xfe97cace,0xfee42418,0x0074e6b2,0x0092dfbc,0xffb73b2c,0xfeccd392,
-0xfdffb974,0xff31c1af,0x005fcb45,0x00d0c5aa,0x00a31c24,0x00203bda,0xff5f27bf,0xff8f30db,0xfffb2b72,0x005ba280,0x004114aa,0x001203e4,0x000edae8,0xffab163a,0xff8b5031,0xff689937,0xffa3d32a,0xffb16197,0xffa9d14c,0xff6aaa97,0xffa4e81b,0xfff5d246,0x01485042,0x011e40bc,0xffd17bea,
-0xff7e37f0,0xffb7e3ea,0x00c88a30,0x0159b1b0,0x01d081fc,0x01efc8ee,0x00e44f54,0xfdbf831c,0xff5d0e5a,0xff519892,0xff3fe7c2,0xffce828f,0xffd924aa,0xffcafaf4,0xff3c1bb6,0xffb46803,0x0009be54,0x00387d1d,0xffe7e81d,0xffc8c293,0xfff99c68,0xfff3d510,0x001e0916,0x0030cff1,0x00293e78,
-0x0034952e,0x002874ae,0x00433070,0x0077233e,0x00a9bf3b,0x00a5c145,0x0084199f,0x002980c9,0xfffda93e,0x003a9254,0x00b718fe,0x012a27a4,0x01101322,0x009c87e7,0xfdf7028c,0xfd209318,0xfe2bf2ec,0xfd8d15d8,0x006fad54,0x001add1a,0x0030f3c0,0x005841e5,0x008f935d,0x0023f2ce,0x0006a2f9,
-0x000db2dc,0x000e71e9,0xffcfcc99,0xffbbccd2,0xffe27a24,0xfff545b2,0xffd2c457,0xffdde5a9,0xffbca124,0xff7ce424,0xff5d6673,0xff5af590,0xff6fcf6a,0xff5a59b9,0xff621f0f,0xff7ac876,0xffd86643,0x0056b0e0,0x00e1ba41,0x0113d0a4,0x01202494,0x01244da4,0x006c0de0,0x0011a35b,0x006a2dee,
-0x006c706c,0x00847a7c,0x006cd574,0x007cba06,0xff966d8a,0xff2aa385,0xffb741e7,0xfffe4fcf,0x0034cfb1,0x007d9ece,0x007c0e39,0x0041cfd4,0x0044dcb7,0x004ab092,0x0044acce,0x0062a7b4,0x00357b97,0xffd3ebab,0xff949339,0xff67eb9f,0xff70dfed,0xffa67c99,0xffea1731,0x001ec163,0x00262f8f,
-0x003765c7,0x0032e2b3,0x00410fba,0x003d500f,0x003e4144,0x00881a07,0x00d99be4,0x014e04cc,0x013ef59e,0x0156fe1a,0x01520320,0x0156314e,0x010cada2,0x0060f2aa,0x00036f56,0x006a4900,0xffe7aac4,0xffc5a404,0xffd775a7,0xfff02c2d,0x0035c40d,0x005e424f,0x004264da,0x004130b2,0x001e6d45,
-0xfffb8364,0xffafc4f9,0xff8fa8b5,0xff82c9a2,0xff9be10b,0xff9b2167,0xff8de03e,0xff721f29,0xff880f22,0xffbed849,0xfff5ee33,0x00208c1c,0x002447aa,0x00478b83,0x004af07d,0x0030d05f,0x00177f9a,0x000ac496,0x00252f51,0x002d7746,0x003bc461,0x0048e93b,0x00563bfa,0x007f25be,0x00b586dc,
-0x00a39762,0xff7abf4b,0xff682d8b,0xff420571,0xff107672,0xfec77d62,0xfed8b690,0xfeebb7ac,0xfefbf23c,0xff1eb205,0xff40be49,0xff6759b5,0xff7d2db5,0xff8fdf46,0xff9931a7,0xffa1ad3e,0xffa25bb9,0xffa81009,0xffbebf58,0xffd3e79e,0xffd0720d,0xffebe036,0x00162f4d,0x003e83f3,0x00343d40,
-0x002ef53a,0x00342744,0x00380292,0x003da140,0x0040c0c7,0x003819ba,0x0029a79c,0x0016d4b5,0xfff87085,0xffd4075f,0xffb28360,0xff8fa195,0xfff9427c,0xffee398d,0xffe85412,0xffd25c86,0xffccd147,0xffc115c0,0xffa75afd,0xff902c4a,0xff942833,0xff9c3eae,0xffa31d12,0xffa51239,0xffab3f4e,
-0xffb472d7,0xffcd09b5,0xffdfd54a,0xfff017ef,0xfffd7b91,0x0017a4dd,0x00165eff,0x001a6d8c,0x001aed24,0x001f94ac,0x0024e275,0x002d90bf,0x00321bd3,0x002f451c,0x002bae94,0x0028d5a7,0x00233a80,0x00204aaf,0x0020fe65,0x0018a60b,0x0015a0ce,0x00118ee6,0x0008ce66,0xffc6a88f,0xffc058ce,
-0xffc6a5b4,0xffc64d84,0xffc95f8a,0xffacb437,0xffaef99f,0xffaed551,0xffb8c797,0xffbba22a,0xffc011a5,0xffc6dc1f,0xffcd2621,0xffd046d8,0xffcda280,0xffcbf079,0xffe5219b,0xffe11769,0xffe27d09,0xffe06631,0xffe18ae2,0xffe0ea01,0xffdfa71b,0xffe0ebc7,0xffe10489,0xffe2d49b,0xffe1eeb4,
-0xffe24d7a,0xffe30f63,0xffe5bf6e,0xffe7b72c,0xffea7aeb,0xffe0bf7a,0xffd7b49f,0xffcf085e,0xffc992d9,0xffbb8695,0x00027a5b,0x00084e93,0xffff858a,0x0004cd11,0x0007aa44,0x000ce172,0x0003253b,0xfffc4f96,0x00084dd1,0xfff34afd,0xfff25014,0xfff3beae,0xfffea48a,0x00018b0b,0xfffb7017,
-0x00094b10,0x000b6d08,0xfff17ba5,0xfff63222,0xfff2b71a,0xfff23f34,0xfff23613,0xfff46d56,0xfff44755,0x00022f02,0x000c219a,0x0022e6a6,0x0010827f,0x000cf841,0x0002b744,0x000e6786,0x0008676f,0xfff2df1c,0xfff227c9,0xfff42189,0x00022847,0x000691af,0x003c133b,0x001c79bb,0x00281232,
-0x0025d9c8,0x002f1bbd,0x000bb497,0x0007efc2,0x002bf813,0xfff7c5a8,0xffec7402,0xffee7014,0x000532f6,0x0011bb89,0xffff17ef,0x0022234e,0x00169e82,0xffe41694,0xffd660bc,0xffc36800,0xffc1bd48,0xffbedf8f,0xffc9577b,0xffd7dceb,0x0008962a,0x003387d0,0x0072c8cd,0x004757d7,0x002b8717,
-0x0003e2fa,0x00198399,0x000c5705,0xffdfa4c1,0xffddcf12,0xffef7d2b,0x0022b220,0x0036a7b2,0x003a58eb,0xfffe5028,0x0022ff74,0x00314e83,0x00532226,0x001db2a9,0xfffaf61a,0x003792db,0xffdcce9c,0xffd0bb41,0xffeef5c0,0x00142c2b,0x0034865d,0x00112e7a,0x003c59a7,0x003d298f,0xffdbb766,
-0xffcc98f2,0xffac2f84,0xffa48f55,0xff9af729,0xffac0fe5,0xffb882b6,0x00079e9b,0x00479447,0x00c57bc4,0x00612aec,0x004e319c,0x000ee165,0x00523b8a,0x0030c6d8,0xffb84614,0xffbd4e80,0xffca7b4f,0x001db0fe,0x00337c8e,0x00cd6198,0x005c56ab,0x0082c453,0x007f7b19,0x0079daf2,0x0033f979,
-0x004dee00,0x00c9dcb6,0x00908af2,0x00a0e802,0x009623be,0x0062e561,0x006e5cbf,0x00670d34,0x00671f34,0x00486e9c,0xff9b867f,0xff86f854,0xff522030,0xff2c3d6f,0xff12efd3,0xff344ddd,0xff707f36,0x0014cf6c,0x00c44757,0x01a474bc,0x01131f28,0x00841157,0xfff62453,0x00495d34,0x0029146d,
-0xff880301,0xffb7a87f,0x000af40c,0x009e919c,0x00d17140,0xfee0df42,0xff18154b,0xff2e37e9,0xffac14ee,0x0098e38b,0x007286cb,0xffe6caac,0xff1dfcb8,0xff34a77a,0xffbe88d7,0xfff56ec7,0x00ee7e7c,0x00db966a,0xffd3b340,0x000dd00d,0x001c9473,0x0093e437,0x0071aece,0x00685360,0x0088c670,
-0x00dc5367,0x00be99dc,0x006bc0ed,0xffe47756,0xff4b7385,0xfedb865c,0xff0ff3f9,0x00055467,0x018629d2,0x00d9888e,0x00a00d3f,0x00c6fd89,0xff5a04c1,0xfed1bf58,0xfec1411c,0xfeca56b0,0x0121b60c,0x00e47de3,0x006ba299,0xff5a264d,0xfe396758,0xfea50fae,0xff9062e3,0x0052b09d,0x009e4219,
-0x004704d1,0xff7de0b5,0xff6612ea,0xffbe1ab6,0x003ce89f,0x000c37c4,0xffe8d008,0xffd81280,0xffcedbe0,0xffc4524d,0xff79ab9e,0xffbef99a,0xffb3e8ad,0xffa8b329,0xff88fd46,0xffe8a130,0x00a0ed3c,0x015b4312,0x00e09ea5,0xff8c9146,0xff84c4fe,0xfff5bdb0,0x00b2e43b,0x01a502f0,0x01a64192,
-0x00af5826,0x00e6b7d9,0xfce7e27c,0xfc92fecc,0xff06a690,0xffcaf244,0xff8a3aa0,0x0066991a,0x00302fad,0xff28a190,0xff7ce578,0xffd005eb,0x002f566b,0x00145046,0xffe6dac3,0xffd2b0e8,0xffcf2923,0xfffd199b,0x003dbf8b,0x0012c8cd,0x00015241,0xffdce73d,0x004797aa,0x007f6861,0x007f79ee,
-0x007d4596,0x0042d7cf,0xffef035d,0xffde15df,0x002d61b5,0x005bcce6,0x01eb297c,0x014f3d5e,0xfe769768,0xfe528418,0xfe56cc32,0xfebdbad0,0xfddbb5c4,0x018dcb36,0x01a2134e,0x00f6d899,0x00a2be18,0x00b90211,0x00240e83,0xfff6e9c1,0x001baec2,0x000d5ccc,0xffef5a35,0xffc47e32,0xffedb86b,
-0xffff9c78,0xffeaa06e,0xffff024b,0xffd5f9ae,0xff8a34b9,0xff667146,0xff66b94f,0xff68fa05,0xff6f3f54,0xff8217c5,0xff9acb4f,0x000e06b9,0x0068257b,0x00ddf5bc,0x00d3288d,0x00b53a06,0x0072c607,0xffbb052b,0xffa8024b,0xfff709a5,0x004ef9fd,0x0072cf0d,0x00acf4d3,0x010696f2,0xfe95b078,
-0xfebdff08,0xff492e34,0xffcaa4e5,0x0018f01d,0x00455779,0x00573350,0x00585ac6,0x005e3342,0x005aa23e,0x00308358,0x0037d880,0x00243355,0x000fc066,0xffa15ec0,0xff63bcbc,0xff64af23,0xff6f2568,0xff9e62e3,0xffc72793,0xfff1e9ca,0x001bb659,0x002010a9,0x004d056e,0x0075b1bc,0x00b73878,
-0x00ec3ec6,0x01248ea6,0x0172916e,0x014c0a82,0x0140db26,0x0105710e,0x0115d110,0x008c83bb,0xff70d877,0xfedd8c9a,0x010f2496,0x00ac02c0,0x009471a3,0x00a18608,0x00b93e4d,0x00d3f83c,0x00d3a59c,0x00ad2e20,0x00a8c927,0x007f88f9,0x0048b1e9,0xfffa1259,0xffb85eba,0xff843c15,0xff8f6ba9,
-0xff99f0e0,0xffad6261,0xff893fe8,0xff8aa5cc,0xff98af82,0xffcf9c5d,0xfff5d46e,0x0003a076,0x0021f0cf,0x00209d58,0xfffc86f4,0xffe8769f,0xffe4d22c,0xfff0e64a,0x000eaae4,0x002fa1f4,0x004f43a4,0x0078ba56,0x00bde468,0x011d79d4,0x0127be14,0xff75e187,0xff4c79e0,0xff3ce0af,0xff22d0e0,
-0xfef5cc7e,0xff0d6131,0xff2f531e,0xff490ebf,0xff55ac6c,0xff65ca82,0xff79643c,0xff7f51d1,0xff865623,0xff7c33b3,0xff8b49e0,0xff865b98,0xff865547,0xff901166,0xff9adac7,0xff96a146,0xffb71d61,0xffdbe11e,0x0003b52b,0xfffa4f14,0xfff8b395,0x00012714,0xfff9c66c,0xfff2afe4,0xffe8a5de,
-0xfff1e81a,0xfff572b6,0x0000a075,0x0004f769,0xfffc11f9,0xffea3dbe,0xffa33cda,0xffd4759e,0xffbe2061,0xffbce38b,0xffa31b74,0xff9b2f11,0xff8e9d98,0xff747143,0xff5eb8bf,0xff65337f,0xff704525,0xff7b066a,0xff7e9881,0xff874ba1,0xff92566d,0xffa533f8,0xffb1b9c4,0xffbfae3e,0xffcb13cd,
-0xffe067da,0xffd799c3,0xffe2bbb2,0xffeb5c1b,0xfff77ae8,0x000719ff,0x0018b7eb,0x0028a8ba,0x002aa3ab,0x002ff21a,0x00338c64,0x00332bb3,0x003086a3,0x002c4def,0x000e7048,0xfff8a58f,0xffecf3f0,0xffe40bf9,0xff9d7271,0xff923c95,0xff999bb4,0xff98ed3b,0xff9b5256,0xff84c262,0xff853e6c,
-0xff826918,0xff8dc5ac,0xff912640,0xff95ccfc,0xff9d7c0b,0xffa410aa,0xffa8712b,0xffa6a3c8,0xffa704db,0xffbb5de8,0xffb7aac7,0xffba73dc,0xffb7b5ec,0xffbe6fd5,0xffc18af0,0xffc434af,0xffc86e32,0xffcb65f3,0xffd0c264,0xffcf38df,0xffcedcf9,0xffcf0fcd,0xffcff7f1,0xffd1f924,0xffd95e0b,
-0xffcd2a46,0xffc29b7f,0xffb3c19f,0xffa6ff43,0xff985baa,0x000f0ecb,0x0013c72f,0x0008427c,0x00096e3f,0x000c4685,0x001b9ceb,0x0006fea5,0xfffe7740,0x000c5ea6,0xfff155ce,0xffedf9d2,0xffeb00a6,0x00013fd7,0x00087783,0x0001acee,0x001371cd,0x0018ce68,0x000a2cd1,0x0005147a,0x0000098e,
-0xfffe4c0a,0x000105fa,0x00056cb5,0x0008ea20,0x001721ef,0x001f97bc,0x00304098,0x001dc8eb,0x00190572,0x000b0b93,0x001d6428,0x00188028,0xfffec07a,0x000419fd,0x00079425,0x001699a5,0x00156f03,0x004175c1,0x001cdf75,0x001a9612,0x001abe04,0x0042b9eb,0xfffea328,0xfff29f2f,0x001ff5ad,
-0xffddd7b9,0xffcf72b2,0xffd102e8,0xfffd286f,0x0012e180,0x00047942,0x002ea8ae,0x002d815a,0x00162d71,0xffeeceea,0xffd11d0d,0xffcf412a,0xffd668bb,0xffeb1603,0x0004fc57,0x0039731a,0x005c82f5,0x00822e09,0x004e1afd,0x002e15d4,0x0003d337,0x002e5f9c,0x0029900a,0xfff5047b,0x00046857,
-0x0015f35a,0x00459c19,0x004877d2,0x003fc229,0xfffbc00c,0x0006e20c,0x0015c449,0x0074c05e,0xfffba913,0xffd17335,0x001d9c6a,0xff9c23c8,0xff8a5364,0xff93edfd,0xfff00912,0x0028db1f,0x00056b04,0x004c607a,0x0055b3d2,0x002e04f8,0xfff198ad,0xffc24485,0xffb30772,0xffc00173,0xffdc809c,
-0xfff728e4,0x004f6087,0x0082e48c,0x00d5a157,0x006c1a4d,0x0057c2dd,0x0012a4ed,0x006e7fe6,0x005797c1,0xffcd03bf,0xfff714cb,0x000b05c9,0x0054d6eb,0x004e9d6e,0x00c1498d,0x00455315,0x0041800c,0x0054507e,0x00bc0dd2,0xfff89c19,0xffe910ad,0x007a254c,0x00176184,0x000f87ad,0xffe46d24,
-0x0046c41a,0x00754ee0,0x004f18ac,0x008add81,0x00894e27,0x0022c546,0xffbb01b0,0xff566a69,0xff2b0316,0xff450d89,0xff88288e,0xffe478e5,0x009e3770,0x0132fc6a,0x01aa6e46,0x00f419b1,0x00649768,0xffe30ccd,0x0069d67d,0x00659342,0xffbbd2a1,0x001d78c2,0x0068e73b,0x00e8084f,0x00e84c67,
-0xfed89130,0xff3be217,0xfefd3162,0xff55a1a2,0x004d9196,0x00650034,0x001e6aa2,0xff715731,0xff74ddbe,0xffdcc036,0x0004178e,0x009186ab,0x007d750a,0x001e94ab,0xffdff7ec,0xffe73214,0x00913a8d,0x00b38c08,0x00e73940,0x0123e51c,0x012f712c,0x00db5d50,0x006aacb3,0xff9bdf81,0xff072a19,
-0xfefadb8a,0xff83d5ba,0x00960055,0x01ac9b84,0x01090464,0x009ff47b,0x008a2025,0xff778c29,0xff25eea2,0xff259849,0xfee725cc,0x010a4044,0x010e180e,0x012593c2,0x002dd237,0xfe96eb18,0xfe7f6612,0xff1bcae2,0xffef2cef,0x005bfd35,0x0030c04b,0xffb169a8,0xff746733,0xffa05dfc,0x001eadbf,
-0xffdd792c,0xffd3219b,0xffbbbf5f,0x000d6fbb,0x001a33da,0xffd5990f,0xffe5697a,0xffc2fe8d,0xffd42058,0xffc89b96,0x00456832,0x01480834,0x00fe86c6,0x0031e8d0,0xff09eaba,0xff7abe5c,0x00371ef5,0x00d1da24,0x01d37b2e,0x0169be5e,0xffad6a65,0x00570129,0xfd787864,0xfb1dcf08,0xfe248448,
-0xff742f90,0xff32804d,0x0086de6d,0x0062bb9e,0xff851bc5,0xff89bdfe,0xffbb3a06,0x001cdf6d,0x00377f18,0x0006dddd,0xffb2ede8,0xffc5b928,0xffef86b9,0x003cfc93,0x00187333,0xfffd4fcf,0xffe3938d,0x00392477,0x0054e06d,0x00467e59,0x0034f1b9,0xfff3e33a,0xffc2ed3d,0xffbbefd5,0x00120bc0,
-0x0026acef,0x01da66e4,0x0111d0c0,0xfddf5a0c,0xfe93e4fe,0xfeedf71c,0xff3077c1,0xfefaf9be,0x01fdbb98,0x02bdd8ac,0x01dea63e,0x01115436,0x0089a636,0x0039379b,0x001f258c,0x00263053,0x0012dea7,0x000f254c,0xffdde1f8,0xffe4d93c,0xfff56e7f,0x000d8431,0x000c9e4f,0xffee7c0b,0xffbc761a,
-0xff8fff1d,0xff7dcaab,0xff7e1c4a,0xff97d296,0xffb84c59,0xffea7e47,0x003b3e5d,0x007e133a,0x00c3fb2a,0x009c9342,0x004657f0,0xffa3e038,0xff640bfe,0xff86bbdd,0xffbc906b,0xfff3839f,0xffff57cc,0x0054d85c,0x00e7666b,0xfe84702e,0xfee8214a,0xff2792e3,0xffaec741,0x00035019,0x0004b5f1,
-0x00164201,0x00581357,0x004cf314,0x003d1d3b,0x00164f18,0x00059e1d,0x0000a84f,0x001901cd,0xffb04062,0xff77fd81,0xff53f33f,0xff54f9b1,0xff6629b1,0xff738436,0xffadf04f,0xffe72df9,0x000af3f5,0x00458a10,0x008b0771,0x00eded98,0x00fd358e,0x011e9666,0x01406738,0x012af678,0x00febaba,
-0x00a5455c,0x008d2ba5,0x00149a98,0xff4687dd,0xfeb8f088,0x011c53c4,0x00f7a49d,0x00fb94f2,0x00f4c801,0x00edc85a,0x00e9e216,0x00d1e837,0x00bbaea6,0x00bd5228,0x00a99101,0x007dd884,0x00435dd0,0xfff5d3c7,0xffa3b584,0xff95488d,0xff9dbc25,0xffbb671e,0xffb4e8da,0xffb3f9c8,0xffafedc1,
-0xffcc68eb,0xffdb6d68,0xffe54db4,0xffff3be2,0xfffab219,0xffde82d7,0xffe5ce53,0xfff778bf,0x0009998a,0x00288432,0x0057f812,0x0085f01f,0x00a360db,0x00c7f3a2,0x01019e5e,0x0113ccbc,0xff9a4eaf,0xff6edb74,0xff6a5580,0xff653a8c,0xff4ef519,0xff709798,0xff9bdb14,0xffbc7159,0xfface131,
-0xffa6fac7,0xff990d86,0xff928072,0xff817f05,0xff710e94,0xff78963a,0xff747f90,0xff6e50db,0xff78cec8,0xff84db65,0xff90220f,0xffa4bf1f,0xffb8559e,0xffce3503,0xffd2fae9,0xffde24d5,0xffee2019,0xffe6928f,0xffde4f0c,0xffd5cb0e,0xffda6062,0xffdea434,0xfff27d59,0x00013787,0x000ae8d0,
-0x0007f156,0xffc8d08b,0xff94de15,0xff7f189d,0xff7e3826,0xff6e8667,0xff647d67,0xff5969b3,0xff45dac5,0xff36e1d8,0xff4229f3,0xff50fba5,0xff5e0ccd,0xff694b5d,0xff75320b,0xff805dca,0xff88b8df,0xff907c61,0xff995bc7,0xffa13a6e,0xffab766f,0xffa5f0d3,0xffaf2367,0xffb8adce,0xffc36628,
-0xffd25971,0xffe0a03d,0xfff0f22c,0xfff05da5,0xfff517ce,0xfff86008,0xfffc02d7,0xfffca607,0xfff9455d,0xffd994e2,0xffbc984d,0xffaadcf7,0xffa0baeb,0xff8cc911,0xff81a962,0xff859ca6,0xff83187c,0xff825064,0xff7b4529,0xff783780,0xff6f8128,0xff7a7e99,0xff7df4d0,0xff833cc1,0xff88ac39,
-0xff8ed103,0xff94f361,0xff96b6c4,0xff988f7e,0xff9e99eb,0xff9e2ca7,0xffa0b6f7,0xff9f777e,0xffa79cfd,0xffacdf87,0xffb1e0c4,0xffb6957d,0xffba79b1,0xffc084d3,0xffbee96d,0xffbe3078,0xffbcf6ea,0xffbadf0d,0xffb96dd4,0xffbda3ac,0xffb4981e,0xffae69b2,0xffa33c75,0xff978587,0xff96a268,
-0x0019e264,0x001d9b13,0x0011909c,0x000f586b,0x00110c1f,0x0027d5bf,0x000bf147,0x00047d65,0x0012cc10,0xfff4b593,0xffefdec8,0xffefc0d3,0x00042ee5,0x000c91d3,0x00093e39,0x001a0684,0x00203c0a,0x001dfb5a,0x00118250,0x000c9bbf,0x0009bfc8,0x000eaa38,0x0014f4ce,0x001e7fc5,0x00282a77,
-0x002da21e,0x00356248,0x00282f55,0x0023fdf8,0x0017d20f,0x00275030,0x0022ec3f,0x000bf945,0x00144413,0x0018dbfd,0x0027e2f1,0x00220c3f,0x00403292,0x001d4200,0x000df974,0x00108740,0x004b7d64,0xfff7361f,0xffe57c6c,0x00141f0b,0xffcb60a8,0xffbd9de4,0xffcbee26,0xfff12c12,0x000a7c00,
-0x0008a8a3,0x00327a3b,0x003a06de,0x00370e16,0x00074d78,0xffe8f22b,0xffe6620e,0xfff3661e,0x00102385,0x0037a992,0x00604540,0x0074898b,0x00799114,0x004c207d,0x002f38a2,0x00105abb,0x0039d744,0x003a348e,0x000dfbb6,0x00252b42,0x0034c3a1,0x005d0490,0x0050339c,0x00461026,0xffffcb7e,
-0xfff1f47a,0xfffc6683,0x007c5515,0xffe2bdf9,0xffbb1b70,0x000bd4e0,0xff734ec7,0xff5d6889,0xff7471f1,0xffc615c1,0x00057698,0xfff86d33,0x0046dc3d,0x0053d49c,0x0058c964,0x000b89b0,0xffdc042f,0xffcbb85d,0xffe5bee9,0x000be1ba,0x0042b26c,0x0086faf6,0x00a6fa77,0x00c1426d,0x0072f653,
-0x0062028a,0x00305a4e,0x00753143,0x00615990,0xffee8292,0x0026c22b,0x0040e0ea,0x00800d53,0x006515d3,0x00a4f8d2,0x00318d35,0x0000c6f9,0x001a8cc5,0x00d11cac,0xffbeff13,0xff8e5feb,0x00242b86,0xff9ae31a,0xff838b96,0xff6b46d4,0x000cb7ab,0x00523cdc,0x0042a879,0x008e0635,0x00a74c26,
-0x008f0ff3,0xfff35342,0xff821eb1,0xff5b4d7b,0xff925f6e,0xfff17ed4,0x00788af7,0x010dc886,0x01680c3c,0x0163c29e,0x00b99102,0x0042c9ac,0xfffd1c0d,0x00713cfd,0x007d3f55,0x00063d7d,0x00721e2c,0x00acf16a,0x0112bca2,0x00e49ea2,0xff144f16,0xff6ce5f5,0xff02b50a,0xff39dbbb,0x00070016,
-0x005d1441,0x005d37ed,0xfffee5b9,0xffd0e588,0xfff27318,0xfff16208,0x001b7aa4,0x001f8357,0x005cb7bc,0xffacd279,0xff9bcb33,0x003b6590,0x009cda7a,0x00fc4fb7,0x0136104c,0x00fe6532,0x00986e06,0x001c9707,0xff61d0ce,0xff141bd4,0xff4cbb11,0x006a4b85,0x01685dd2,0x01a7b10e,0x012c05a0,
-0x00820076,0xfff88264,0xff707d24,0xff5e8c1a,0xff81dc5b,0xff3a3f21,0x007a5242,0x00fe4827,0x01ac5d16,0x00f09441,0xff29b1ab,0xfe85df2c,0xfec8aa94,0xff9802da,0x00090b66,0x000caf4f,0xffd71de5,0xffa7f7ed,0xff9ff91c,0xfff1dffe,0xffce7585,0xffeb7f59,0xffd0d3e1,0x0041ff9c,0x005bb978,
-0x003f6f66,0xfffc98ee,0xffdda373,0x001aa0c7,0x00298048,0x009d4026,0x0153d85e,0x00617a95,0xff74306f,0xfe832a0e,0xff70ac93,0x00651f45,0x00e794c5,0x01919978,0x00e97da0,0xfee06832,0xffa850f8,0xfed51420,0xfb499ed0,0xfccf6fa8,0xfe27eea4,0xff6ab76a,0x001c7855,0x001c98a6,0x000ab7f9,
-0xffbb98c3,0xffc5af44,0x000d1914,0x00354be1,0x00138094,0xffa62728,0xffc8cfad,0xffdcdece,0x001beca9,0x002c6ade,0x00294a7d,0x0028c132,0x003b5042,0x0027f15a,0x0005446f,0xffd7a12a,0xff9ecef3,0xff9a6104,0xff96f7cc,0x0009410e,0x008911fa,0x00f6f664,0x00247e79,0xfe67ee16,0xff25bee0,
-0xff8d88c8,0xff835fef,0x0056c029,0x0157c596,0x02902fe4,0x026a6bb4,0x018d9244,0x007fd526,0x006c855f,0x00701bc8,0x0036e238,0x0008c082,0x000ab4b1,0xfff0dc7c,0xffde11c2,0xffef4004,0x001a42f3,0x0010b830,0x000e1aad,0x00053f51,0xffd686c8,0xffb0cacb,0xffb3dac4,0xffca0ba3,0xfff21bc9,
-0x003ecdc1,0x004faf6f,0x007af183,0x00886eba,0x006071e7,0xfff195e7,0xff4aa011,0xff5ac49a,0xff912076,0xffb27ef0,0xffa0a1ef,0xffa2ba7e,0x00011445,0x005c7f5c,0xff2582c5,0xff535840,0xff391f21,0xff940dde,0xffdcece0,0xffd89c1c,0xffe70a8d,0x00469769,0x00227f74,0xffff8c59,0xffe88eeb,
-0xffe3d256,0xffe74343,0xfffb97bf,0xffc7a435,0xff9be7d0,0xff4c629e,0xff4d2970,0xff488f3d,0xff4c822e,0xff720ed0,0xffaaafa3,0xffefcc05,0x002b33d7,0x007730bb,0x00cf32f4,0x00e03924,0x00ff1875,0x010289a4,0x00f302f9,0x00a8d2d4,0x0049d701,0x0021b609,0xffdd3a43,0xff75a386,0xff3fb4d9,
-0x00ae5a57,0x00c44a15,0x00d16076,0x00bba53a,0x00b2d6c4,0x00a0c78c,0x00859b91,0x007aecf0,0x0082a34e,0x008db5f8,0x0081a180,0x00718f4a,0x0033e615,0xffddf1f7,0xffb404b5,0xffa9834c,0xffb6f930,0xffca1f1f,0xffd2a2d3,0xffd77690,0xffd8f616,0xffd71365,0xffd2f24b,0xfffb3288,0x00061986,
-0x0000114d,0x002832f5,0x0041ce20,0x0057ecb0,0x007711d0,0x00afb5c1,0x00e5f025,0x00d73f31,0x00c3d7c3,0x00bb13ef,0x00ab5ed1,0xffebffb4,0xffcb67e4,0xffcea10c,0xffe5693c,0xffe8a42e,0x000771c0,0x002df5ad,0x004d7e63,0x00257b63,0x000ba5a4,0xffdda48f,0xffc9a373,0xffa1f067,0xff8daee4,
-0xff8a3acf,0xff83996f,0xff752fac,0xff7ff7f0,0xff8a686d,0xff989521,0xff9fcdd3,0xffa68bf7,0xffa97d56,0xffc12672,0xffdab14a,0xfff5ff24,0xfff969cd,0xffffe7ac,0x0008fb43,0xfffaf1ef,0xffeec178,0xfff256fa,0xfff646c9,0x0001fe41,0x000be727,0xfffc8b5a,0xff6a952f,0xff61227b,0xff58629a,
-0xff5c2ff2,0xff4f061b,0xff4a8e3c,0xff42437e,0xff38e8b5,0xff477e5a,0xff54ca6f,0xff60b5cd,0xff70a340,0xff7c227b,0xff845195,0xff86c7d3,0xff8bb715,0xff8ee654,0xff9337b6,0xff953d04,0xff93acf3,0xff999a04,0xffa02ff9,0xffa69b6b,0xffae3c4b,0xffb2b590,0xffbb4d25,0xffb15698,0xffab9e3c,
-0xffa751fa,0xffa8ad56,0xffabfc06,0xffaa32b0,0xff9e58bc,0xff8c71c7,0xff7be612,0xff7070da,0xff906890,0xff8b2185,0xff899e51,0xff86cbb8,0xff8556bc,0xff8b7211,0xff88ae2d,0xff7e823d,0xff856062,0xff87c3da,0xff8c4a44,0xff8dfa6f,0xff928db1,0xff987653,0xff9911d2,0xff9957f4,0xff99eb4f,
-0xff993f04,0xff9963e6,0xff97d5e5,0xff9ebc34,0xffa3eb90,0xffa90839,0xffacd6f2,0xffb09d06,0xffb62edb,0xffb37126,0xffb1e4b3,0xffae7201,0xffa9f2fe,0xffa4483a,0xffa0dc13,0xff9d13e3,0xff9c1ae2,0xff9a6830,0xff96bdef,0xff9c7eec,0x001f5983,0x00230536,0x0018b9a8,0x00169e0b,0x0016948d,
-0x002a97e6,0x000fcfc1,0x000a9756,0x0015b3a5,0xfffa8ac6,0xfff5803e,0xfffaa171,0x0006586f,0x000d363c,0x000c7896,0x001be7f4,0x0021989f,0x0025b142,0x0019c5aa,0x0015aaf4,0x000f6e2a,0x001620c8,0x001d7dba,0x002bf6c2,0x0030ec3e,0x00332435,0x0031306d,0x002b04d7,0x0028607f,0x0022f1bb,
-0x0027ad62,0x0023d47c,0x0015cb45,0x001f260b,0x00248fd7,0x003336e1,0x0028ec16,0x003ac023,0x001ea49a,0x000de9c5,0x000d79d2,0x003cf827,0xfff4835e,0xffe0bf22,0x00026b64,0xffc2bd55,0xffb9e45e,0xffd4f219,0xffe70a63,0xfffda846,0x0002e7fc,0x002e3bdf,0x003ba983,0x003e7890,0x001d9507,
-0x0005f0d9,0xfffcb8a2,0x000c53c4,0x002c22d3,0x005c2c27,0x0076c9d4,0x007c8aef,0x00637041,0x00473831,0x00311727,0x00252e81,0x0036e10c,0x0037d0e5,0x00200660,0x003b3c61,0x004af870,0x006a5be1,0x004fcba7,0x004a6894,0x000c4e4e,0xfff7c38a,0xfff7a1c7,0x005fe878,0xffd9997d,0xffb86366,
-0xfff32827,0xff62d199,0xff4a78eb,0xff7ff3c8,0xffa4a35f,0xffddfda4,0xffdd685c,0x0034fcfa,0x00425221,0x0051644b,0x001d9aff,0xfff6f3a1,0xffdf3619,0xfffeb51c,0x0029eb55,0x0078e76b,0x00a3fa43,0x00b02635,0x0093d6aa,0x0072876c,0x006521ef,0x0055fd6f,0x005d7e19,0x004a4d82,0x000f4c98,
-0x004a9300,0x006a4fb3,0x009febc0,0x007215e5,0x007eb05d,0x00249657,0xffe76498,0xfff50675,0x009eaf07,0xff98fc8a,0xff53fe53,0xffd57dc7,0xff38bb89,0xff1de7e9,0xff4f265c,0xffc35e47,0x000ebbca,0x002971d4,0x00765810,0x009f4122,0x00afb63b,0x002f075b,0xffd5b432,0xffa95e40,0xffe5231b,
-0x004f2b56,0x00f135ff,0x01508d9a,0x016d3bfe,0x0106ac6e,0x00964465,0x00401742,0x003cd870,0x005d9a43,0x00683715,0x0042b5cd,0x00ab850a,0x00dff1ac,0x012aa1ea,0x00d0402d,0xffaf02fd,0xffbb4852,0xff64fc6d,0xff794991,0xffee9781,0x0070453f,0x00a5276d,0x00993d2d,0x001c2de6,0xffe542b5,
-0xffce0ae4,0xffc5e169,0xffe742ea,0x007c7dd2,0xff86ace1,0xff553b41,0xffc196ed,0x0018e45c,0x0073dc02,0x009883a7,0x004f75e4,0x0006bee3,0xff95ca72,0xff369310,0xff389fd7,0xff6c9a5a,0x01051ab4,0x01cb8aaa,0x014324cc,0x00ff4df2,0x003f1fc6,0xff6a227d,0xff6f3c9a,0xff8a7215,0xffa3b58d,
-0xffc38bb7,0xfff1b2bb,0x009d3b60,0x01b1b4a0,0x0141bc56,0xffbaaa6d,0xfe9a3478,0xfe836886,0xff3fbb88,0xffcc2134,0x00032a05,0xffeabca2,0xffdaeaee,0xffafbfb5,0xffc182f3,0xffe0fac2,0x001d15e7,0x00034d94,0x006024a0,0x0078a6c5,0x008c255a,0x0020cf87,0x0016c23e,0x0064b860,0x00a90c38,
-0x00e22b8c,0x00d02a09,0xffc36f12,0xfeeeba2c,0xfe4ef2c0,0xff8b2432,0x0086b6f7,0x00c7e84f,0x00e0998b,0x00228528,0xfe7bccea,0xff409408,0xff678cc0,0xfc2af704,0xfc2653ac,0xfd523214,0x0013da85,0xffa2f12d,0xff9c8f60,0x003bc7be,0xffe49dc8,0xffe21d20,0x0003e1e5,0x00195bc5,0x000aa8e1,
-0xffadce00,0xffc83402,0xffc0c416,0xffe4c949,0x0022bf1e,0x003eec7f,0x00448b90,0x00297cfc,0xfff575e7,0xffb2221b,0xff7d933d,0xff5fa5e3,0xff7c0b51,0xff8a5858,0x002c25f3,0x01393484,0x00023c20,0xff165466,0xfee07de6,0xffb909c6,0x00461326,0x0021b869,0x00a69e35,0x004e96e6,0x0123f2c6,
-0x023205f4,0x01d50bd6,0x00d7e091,0x008d8dba,0x009a707e,0x00669951,0x0007d5d1,0xffff0a1c,0xfffc7000,0xffe5bf9c,0xfff03e29,0x000283c1,0x000ded75,0x002a88a1,0x00438f76,0x001cfbba,0xfff47852,0xffede30d,0xfffe0126,0x00282a49,0x007b1d89,0x00644d39,0x0062ec07,0x00414248,0x002dabfc,
-0xffcfe53e,0xff6a3f43,0xff9a25ed,0xffca5b6a,0xffd01c8e,0xff974ab3,0xffb5ecd5,0x005c6978,0x000496e5,0xfff04a5b,0xffcdebeb,0xff6eb817,0xff7fb055,0xffadb25a,0xffd330ec,0xffe4cab0,0x002ee702,0xfffede1b,0xffd464cd,0xffc2c4d9,0xffd160c2,0xffdc6319,0xffe1fcf9,0xffe37a88,0xffc03fcc,
-0xff6149ba,0xff55aad9,0xff461117,0xff52fd57,0xff5c4b2e,0xff83a061,0xffce10ef,0x00155b64,0x00601d9f,0x009a06aa,0x00bc9374,0x00dd0bc9,0x00d84b29,0x00b748b1,0x0063e5e8,0x0022f661,0xfff38298,0xffd1d1fb,0xffb8f8df,0xffdcd96b,0x00059a36,0x0033e859,0x0054c7e5,0x0050ded8,0x00521ce8,
-0x0041967c,0x00323895,0x002d6971,0x0036edf6,0x004eb20c,0x0057c506,0x006e5052,0x005171ab,0x0013cd86,0xffddbb0a,0xffbfcaba,0xffb00941,0xffbfe799,0xffca8aa4,0xffdb318a,0xffe172e5,0xffe9332e,0xffe1f96d,0x00184b65,0x003bde12,0x0055f913,0x0090f16d,0x00ad3736,0x00c4b3e4,0x00db297a,
-0x0104f856,0x012a9426,0x00f7aaf7,0x00b7a238,0x006cbee8,0x0028373c,0x00698ef0,0x00552dcf,0x005164ae,0x006a6e1a,0x00794e99,0x008d8912,0x00a32c76,0x00bbdb78,0x008fbde4,0x00710f56,0x003f580a,0x001a5902,0xffe0b11c,0xffc3d81f,0xffb559af,0xffa9f690,0xff90cd07,0xff9ad268,0xffa1c81a,
-0xffabb593,0xffab6078,0xffaa60e8,0xffa520fa,0xffbf00c1,0xffd71694,0xffeedeff,0x00088940,0x00280b35,0x004bd18b,0x003b7813,0x002b8a68,0x0024f634,0x00206a4f,0x002a5082,0x00412840,0x005b46b7,0xff7f7cbd,0xff844664,0xff76941b,0xff8cd6f5,0xff8077de,0xff81ed75,0xff83a25c,0xff7e9b11,
-0xff81bfeb,0xff80198f,0xff7f1474,0xff8593bb,0xff874d52,0xff82e88e,0xff87dc36,0xff8d7dd5,0xff90679c,0xff945672,0xff921bdd,0xff9602cf,0xff9bede4,0xffa1ba81,0xffa6aafc,0xffaa043c,0xffab0c7f,0xffae1f07,0xffa11c3a,0xff93d8c1,0xff8b0cfc,0xff88012a,0xff8bc8cb,0xff8ba4af,0xff93b7f5,
-0xff92c7a1,0xff8a9aa8,0xff808d46,0xffa55b5c,0xffa70569,0xff9f4fa6,0xff9bcf07,0xff992674,0xffa98dba,0xffa7246c,0xffa006ca,0xff9d8a48,0xff9c1273,0xff9b7f75,0xff97a3d9,0xff978acf,0xff970f61,0xff992603,0xff9aae2b,0xff99f108,0xff9a9fd4,0xff9ba7ad,0xff9d78cd,0xffa10eee,0xffa47d19,
-0xffa801c2,0xffaa6dc4,0xffad0719,0xffb14009,0xffae58bc,0xffad6278,0xffaa2a7c,0xffa77fc3,0xffa295df,0xff9cc515,0xff9ca4ae,0xff9dc6c9,0xffa1e492,0xffa5d149,0xff9eb1f3,0x001aa326,0x001f1acf,0x0018dd85,0x001796b2,0x00165431,0x001fbc51,0x000e8d42,0x000b1ce3,0x000c755a,0xfffc2be0,
-0xfff75a07,0xfffc91bf,0x0002f566,0x00088460,0x0006d9e7,0x0016075c,0x001a065f,0x001f9e68,0x00184e93,0x001566f2,0x000e395c,0x0014c164,0x001b7873,0x0029b8b4,0x002cc77c,0x002ccf2b,0x0023ccc9,0x00241c21,0x00232a54,0x002585ed,0x001d03e3,0x00193fce,0x00130f09,0x001fb6fd,0x0025958d,
-0x0031a661,0x0024a65c,0x0029d7e4,0x0019f8d6,0x000eb691,0x00071d8e,0x00152809,0xfff2df20,0xffe11069,0xffe2e038,0xffc1ce6b,0xffc083d9,0xffd89214,0xffe1dd81,0xfff00729,0xffef8cdb,0x0021492a,0x0030df9a,0x002e3c0e,0x0026ccf6,0x001a982c,0x000f29cc,0x001e6070,0x0039b174,0x0063e2cb,
-0x0075ad3e,0x00713de1,0x00466caa,0x003cd616,0x002f5366,0x0036c543,0x002732b4,0x00240fb1,0x001bc2f7,0x00401618,0x0051d6f8,0x00647d6c,0x00408f33,0x00407d70,0x001d25b3,0x00074ccc,0xfffdc836,0x0026ee4d,0xffe176d1,0xffc673a5,0xffc3664d,0xff688b76,0xff4ae1ac,0xff82ac70,0xff8e073f,
-0xffc37671,0xffb69d42,0x002028f4,0x0028dfb9,0x002733e5,0x00210f82,0x00080ebd,0xfff21915,0x000ed357,0x0035a440,0x0082c55e,0x009f3a04,0x009e01e1,0x00615d7a,0x0068307a,0x005eab28,0x0071315d,0x0032d760,0x001f69ce,0x00124e85,0x005cfd3a,0x007e9250,0x00a287cc,0x0068fb80,0x0040ba6a,
-0x0017027b,0xffe11d8a,0xffd970e3,0x002d5fab,0xff93507e,0xff471f85,0xff7e3f8e,0xfefc4088,0xfee92946,0xff64d368,0xff8aa932,0xffc5f093,0xffedce73,0x0054835f,0x007cbc72,0x0087b15a,0x0056cf19,0x002adb1d,0x00051dd1,0x0037a5ea,0x0090ca48,0x0121f7e0,0x0158920a,0x0147a156,0x00b4e411,
-0x00853b46,0x0054b522,0x0083e592,0x003d375f,0x0034c4a5,0x0042832a,0x00baee64,0x00f32205,0x011924c4,0x009c8ee5,0x007fad4a,0x0033145a,0x001562ef,0x000f1357,0x0015bbb4,0x009de207,0x00ea9a4b,0x010e3708,0x005d1214,0xffec2cb6,0xffd1cad0,0xffb80027,0xffd7c342,0x007f6a7b,0xff850558,
-0xff3d0ed2,0xff54e980,0xff7b2a1b,0xffa35d77,0xff9d14c4,0xff80687d,0xff647476,0xff02d963,0xff0afe5e,0xff4617d4,0xff74532a,0x01097d74,0x017e4faa,0x00a5e9ee,0x008be445,0xfffb0bb5,0xff3b8816,0xff9ea3dc,0xffc8b8a0,0xffb25e21,0x006080e1,0xff94e94d,0x0023242c,0x012a9b74,0x01133e4a,
-0x002f2387,0xfeb577c2,0xfe4eaea8,0xff09ec39,0xffb38ea5,0x000826a0,0xfff96424,0xfffa1932,0xffc25e00,0xffa4564c,0xfffa0471,0x004105c8,0x003142b8,0x005d5fd5,0x007a8aaf,0x00be6f7f,0x00644edd,0x006e29fa,0x00a57f3d,0x010b269a,0x00e636d8,0x001ab802,0xff3cc00f,0xfead19c2,0xfe913686,
-0xffe1798f,0x00a67882,0x00908a6f,0x00183caf,0xff5eaf38,0xfe8df2f4,0xff1ee871,0xff4149b2,0xfd8503f8,0xfcc9380c,0xfd90cc50,0x0031fda3,0xff8646f6,0xff717e4e,0x0002b1c4,0xffef9f5f,0xfff9502e,0xfffd92c4,0x00081968,0x00035c82,0xffca1dfb,0xffbeac97,0xffa30699,0xffb5aed4,0xfff4b929,
-0x00167e26,0xfffd0af6,0xffec61b6,0xffc01c93,0xff6acc0a,0xff491b1c,0xff4aef7d,0xff6f3e1a,0xffbcc90b,0x00639bdb,0x017284a0,0xff4a2b1a,0xfe718d1e,0xff2756c4,0x0000fd4c,0x00c5ffcd,0x010b596a,0x002ccaf6,0xffebe6f4,0xffca824e,0x014c58e6,0x01903cc6,0x011621ec,0x006417b8,0x005f9c02,
-0x0073cf97,0x0017c532,0x00048b60,0x000bb6a8,0xfff79784,0xffedf1d3,0xffe3b684,0x00073423,0x003884e1,0x0061bf91,0x004a7b93,0x0030af7a,0x00211103,0x003a7fa7,0x0059cef0,0x008ecaef,0x007c1853,0x004b2f90,0xfffb8547,0xfffe37d7,0xffc6981e,0xffb97aa3,0xffcc4212,0xffee4723,0xffdaf4c4,
-0x001cbacf,0x00647bc8,0x00e508ec,0x00368df7,0x0070e0e8,0x0030e1bc,0xffc4c83a,0xff91dc79,0xffa6369a,0xffe69286,0xfffb3bec,0x000597ee,0xffef7f99,0xffd7a75d,0xffcbc728,0xffd1b73c,0xffdf6bbc,0xffe46529,0xfffd42e1,0xffe4087e,0xff9ec776,0xff7658a0,0xff5c4323,0xff6ab302,0xff6e1c71,
-0xff858c87,0xffb8c44a,0x0005cb9d,0x004aa8b8,0x00751c91,0x0097f2e3,0x00a7baac,0x009d8a6b,0x00640c3c,0x0019f03c,0xffe95029,0xffc62cb4,0xffb5c0ce,0xffc88414,0x0036eea4,0xff706a1c,0xff9aba53,0xffc8a52f,0xffe8a153,0x00035bcc,0x0000a669,0x00010212,0xffff018d,0x000796df,0x00131c5d,
-0x0019a277,0x0040fce7,0x0046ae64,0x00354444,0x000589c7,0xffe05b99,0xffb814a7,0xffae21db,0xffaed704,0xffbed9d2,0xffdaf897,0xfffba3ab,0x0006e949,0x004a4609,0x007cbd6c,0x009f1f36,0x00e011ef,0x010090e4,0x0117ccc6,0x010fed78,0x010aeda8,0x00fdf457,0x00c81bb0,0x007ee90e,0x00100917,
-0xffad025d,0x00bf986b,0x00b7c377,0x00afd5bc,0x00b44edb,0x00becfde,0x00c2b461,0x00c25be3,0x00c9f631,0x00b10f81,0x00a1a9c2,0x0087f599,0x0063dfaa,0x002ed195,0x00145940,0xfff2e175,0xffd9c842,0xffb0aff4,0xffb9e3ac,0xffbd14ea,0xffbfcf79,0xffbc1eff,0xffb6402c,0xffaf0f19,0xffc09f05,
-0xffd023b9,0xffdd77ce,0x0007dfcf,0x0032fde0,0x00640c71,0x0063f28f,0x006566f2,0x0067dd79,0x0064f757,0x006e535e,0x008bb338,0x00ab87df,0xffc3f5fa,0xffcb9fba,0xffba7543,0xffd37777,0xffca60bc,0xffcbeb63,0xffcfbab3,0xffcef20a,0xffc12129,0xffb03071,0xffa04d29,0xff991d4c,0xff9065fa,
-0xff816b5d,0xff898304,0xff92cf8d,0xff98dd7e,0xff9d4dc6,0xff9ad6f3,0xffa1f45e,0xffa89179,0xffaf2b75,0xffb44d65,0xffb656cc,0xffb7d929,0xffb82a38,0xffb2ae86,0xffab3c60,0xffa8a1db,0xffa79469,0xffad12e1,0xffb3162e,0xffc00bf5,0xffc8449c,0xffc89c2d,0xffc2933f,0xffc8aad6,0xffcf4aa4,
-0xffc2d2a3,0xffbec71e,0xffba5f25,0xffcca04c,0xffc912ee,0xffc7153e,0xffbce11c,0xffb73c98,0xffb115b0,0xffa8a271,0xffa29fac,0xff9a209b,0xffa31bc0,0xffa6b07d,0xffa26c75,0xffa693bb,0xffa995af,0xffad4171,0xffad8c48,0xffae9e47,0xffafe06c,0xffb0cc2f,0xffb1d7bc,0xffb35f1b,0xffb4454f,
-0xffb61cf0,0xffb6925d,0xffb95c83,0xffba4380,0xffb9c64f,0xffba845e,0xffbb7370,0xffbf4e5d,0xffc588fd,0xffa9c4c4,0x0013fc4e,0x0018b938,0x00177986,0x0014ab14,0x00126c8e,0x000fdc11,0x000d32b7,0x00099d97,0xfffc8c88,0xfffacffd,0xfff5d960,0xfff3a03f,0xfffbdf5f,0x0001399d,0xfffd2ded,
-0x000d43ba,0x001032c7,0x00135605,0x00121356,0x00116a1d,0x000dc92e,0x00123f7a,0x0017678a,0x0021b563,0x00255346,0x002497b1,0x0018b929,0x001ceaad,0x001d1565,0x00258c27,0x00131fdb,0x000f08cf,0x000b7f7f,0x001cc80a,0x002281e7,0x00299cd1,0x001cf7be,0x00181558,0x0014d2f0,0x0009be65,
-0xfffdb7b2,0xffee2203,0xfff4759f,0xffe72f36,0xffc5dbd3,0xffcf51c5,0xffd4c161,0xffd6256d,0xffe856c5,0xffecde18,0xffdcfc62,0x000f0082,0x001de507,0x0018e3a2,0x00232c35,0x00229b6e,0x001faae0,0x002c0b14,0x003ff28f,0x005b06b7,0x00699810,0x005f8a02,0x002fd57a,0x0031059a,0x002ca040,
-0x00452092,0x001af74d,0x0011642a,0x000c6331,0x003bf1e2,0x004ef4f0,0x00525e17,0x002da758,0x00314b94,0x002db6ab,0x000f7bf7,0x000225b1,0xfff161a2,0xfff2b9a2,0xffdc93bc,0xff8e63a1,0xff7e0da5,0xff5b10ed,0xff67db75,0xff87667c,0xffb6c6ec,0xff96f7bd,0x00098f3e,0x000aa739,0xfffcbe25,
-0x0016a7e6,0x000f603d,0x0009e88d,0x001e00ff,0x003b801b,0x00727dea,0x008e17b0,0x0086d857,0x0041eaa0,0x005a71be,0x0055dbb2,0x00840613,0x00154184,0x00022da4,0x00034d6b,0x0063223e,0x00820d8f,0x008b1545,0x00542445,0x0007e5f4,0x000ada2d,0xffd779c6,0xffc0bcce,0xffb618ed,0xffa825c7,
-0xff649fbf,0xff2c19c9,0xff019a4b,0xfefa8586,0xff751b42,0xff7e2f15,0xffa0d526,0xffa4baa3,0x002d2aff,0x0046f38c,0x003d3a2b,0x005edcbf,0x005cf2ca,0x00528320,0x0078f5d4,0x00b8171a,0x011843e8,0x013ee880,0x01131900,0x007b1e38,0x006d4328,0x0066a25f,0x00c067d6,0x002e6cfc,0x0009c9eb,
-0x001ac9c4,0x00ad2d2d,0x00e99dab,0x00dfc3f0,0x005f221e,0x0122ab26,0x00b599c7,0x00b33133,0x009b6472,0x006444c0,0x00cae20b,0x010d2a9a,0x0126df6c,0x0091da66,0x001ac414,0x00058184,0xffe59610,0xffebbfe0,0x006483f6,0xffb3eaab,0xff647510,0xff152c6b,0xff13a95c,0xff07dbc0,0xfef1e870,
-0xfef556e2,0xfeed2b30,0xfea34a4c,0xfef8bd3a,0xff593c7b,0xffabe8e4,0x00c9fad6,0x00e95211,0x001bf9c7,0x0014d794,0xffd9ad4c,0xff824430,0xffe9e2b0,0x000d0c23,0xffdf8592,0x00d95269,0xff70ce24,0xffc420ff,0x006deba7,0x009e5c61,0x0079047c,0xfef4a348,0xfe71e9e0,0xff1625af,0xffa414a1,
-0xfff9239d,0xfff7c155,0x00058c72,0xffd3005c,0xffa764fa,0x00047fdf,0x004388e6,0x0041239d,0x004403f8,0x006a0377,0x00c707d9,0x00ac8d5d,0x00c6d88c,0x00d1e4ca,0x010eeac4,0x009addc8,0xff9cc040,0xfeeb738a,0xfeabdeca,0xff17043d,0x004aef85,0x00b69970,0x005cbe97,0xff898e49,0xfeec4c42,
-0xfed9a81e,0xff2ebce4,0xfeec5796,0xfed2e00a,0xfe210f9e,0xfe65cadc,0xff91b335,0xffc4ba86,0xffc43704,0xffb54097,0xfffc6007,0x000af54c,0xfffce577,0x0003241a,0x000d97cd,0xffedc87e,0xffc28537,0xff98fecb,0xffa18c6c,0xffc8ed7e,0xffd675dd,0xffa23327,0xffaf713d,0xff97b1ff,0xff4d7c50,
-0xff4c5c2d,0xff63b38f,0xff775881,0x0029d8c2,0x00a067ba,0x010bfcc6,0xfef1f25a,0xfe81f6c4,0xffcaaf1d,0x00585984,0x01022232,0x01ade608,0xffa956de,0x0081baa5,0xffccca71,0x0030ac8a,0x00881e3a,0x00ab9bdc,0x000c2385,0xfffe5785,0x003b70da,0x001570c4,0xfffe09c5,0x0005b241,0x0003c7a7,
-0xfff14747,0xffdde666,0x0002a99c,0x0035988e,0x0066eec3,0x005d3646,0x0056977e,0x004e7bc5,0x006d13cd,0x00764b38,0x00799398,0x0075a11d,0x003ccc66,0xffdd5552,0xffdfa36e,0xffc03c34,0xffecf30d,0xffd82ee3,0x0007d93f,0x0020d99f,0x00da403b,0x011b6b04,0x00f14e80,0x00c2c94a,0x00900bfa,
-0x005e48d4,0x001f6634,0xffdc7fff,0xffe5b964,0x0001bd71,0x0005177f,0xffe3382b,0xfff35189,0xfff448ab,0xfff57b5e,0xffe8914b,0xffe94239,0xfff2b415,0x000dc394,0x00048781,0xffeb634b,0xffb335c3,0xff8ea78c,0xff8dd32f,0xff9a4ca2,0xffa9bab1,0xffc5631e,0x0000095b,0x00330c6b,0x00571d26,
-0x005ca03f,0x0053b877,0x00447da1,0xfffcb849,0xffc4d526,0xff9f196d,0xff8bc2b6,0xff9cea07,0xffd690cf,0x005fab13,0xff411e86,0xff43fa50,0xff7259c8,0xffa1c5aa,0xffc70329,0xffd845f5,0xffe87260,0xffecc5d9,0xfff291b3,0xffee30d7,0xffec3f06,0x00062800,0x00213848,0x0038e21b,0x001fab70,
-0x000076e9,0xffcfc561,0xffab1ca7,0xff9d0aac,0xffa640b6,0xffc7e805,0xfff46358,0x001c1f72,0x005fef06,0x009545c7,0x00b93f76,0x00f12bcd,0x010d20e4,0x0118bd72,0x00f145f9,0x00ba5a1b,0x0072f88b,0x003d66a9,0x000651b9,0xffb8ba6d,0xff702ce8,0x00a29607,0x00a9d02e,0x00aac29d,0x009eaba3,
-0x00a3161b,0x009d08bf,0x008e2688,0x008664a2,0x008bf743,0x00963179,0x009e2e28,0x00896bdd,0x0068b4cc,0x0058c7cd,0x0024b18f,0xffff7acd,0xffcf7ea8,0xffd7cdb9,0xffd8fef6,0xffd7678d,0xffd25b0b,0xffc8bb6b,0xffbe7f5c,0xffc6f2b7,0xffcf2c4e,0xffd33c0b,0xffff5463,0x0027b718,0x0056e90e,
-0x0066ec4e,0x007b87a2,0x008d37f9,0x0088177d,0x0086ecf6,0x00912d95,0x009c7880,0x0027eff1,0x00304ebd,0x0017a075,0x00234a0b,0x00171679,0x00124afe,0x0013a391,0x000ec2c9,0xfffe49fb,0xffe5b2c4,0xffcf3356,0xffc1caa9,0xffb55386,0xffa64550,0xffa814c6,0xffaefbe6,0xffb04442,0xffae40f6,
-0xffa6b525,0xffa8cbbd,0xffaf03b2,0xffb5d1c6,0xffbb886d,0xffbd8a11,0xffbf63a6,0xffbe4b74,0xffc70a58,0xffcce987,0xffd5e295,0xffdca397,0xffe69da6,0xfff589f1,0x00014699,0x000fa515,0x001a7c5c,0x00209ecc,0xffec503b,0xfff73005,0xffea541f,0xffe73338,0xffe0f9a8,0xffef92a2,0xffe98fde,
-0xffe557a1,0xffd92c8f,0xffd328a2,0xffcc1e22,0xffc3bf33,0xffbbbe71,0xffb1bc2a,0xffbd4afd,0xffbe79f7,0xffb536dd,0xffb92e4c,0xffba173a,0xffba5a0c,0xffb98d82,0xffb8c5de,0xffb84ed3,0xffb8091f,0xffb8518e,0xffb746db,0xffbd1951,0xffc1faaf,0xffc6af32,0xffce58dc,0xffd4c9c0,0xffda3426,
-0xffdce232,0xffdf22a4,0xffe22d2a,0xffe78ca1,0xffb79563,0x000b96f8,0x00106b06,0x0012e9f3,0x000d805d,0x000b1304,0x00039d38,0x0009b63c,0x0005617c,0xffed8104,0xfff82c27,0xfff3ab9b,0xffe82e80,0xfff50e94,0xfffa620c,0xfff4c2e6,0x0002134e,0x0004a5e9,0x0009b1f8,0x00096547,0x000a395b,
-0x000b3fcd,0x000db2be,0x00118562,0x0018ae13,0x001bb329,0x001a8258,0x000ee6a2,0x00137a30,0x00142121,0x0021c2da,0x000964be,0x0004feb3,0x0001cc5c,0x00156ff1,0x001aa1ac,0x001c1d7b,0x00131dfa,0x00094982,0x000efaf8,0xffff253b,0xfff2a6a7,0xffd94fec,0xfff6e837,0xffefbe17,0xffba9227,
-0xffe3f090,0xffeb6810,0xffd4bb54,0xfff2f0c4,0xffefd504,0xffd5b8bb,0xfff95877,0x000476c6,0x00099744,0x001559dc,0x001dccd3,0x0026985d,0x002f9e49,0x003d8e63,0x004c684a,0x00547b81,0x0046027c,0x0019a349,0x001a840c,0x001ee8a4,0x00492e9d,0x000ef0d3,0x000123e0,0xfffd2607,0x00309a48,
-0x0041265c,0x0036ac90,0x001a4064,0x00228677,0x0034dee5,0x000b1187,0xfffd9e4c,0xffd3ddc6,0x000134d1,0xffedc756,0xff6699e2,0xff959da6,0xff766f30,0xff4338b5,0xff8e408c,0xffb229f4,0xff89637b,0xffebf23a,0xffe92570,0xffea0554,0x00027e57,0x000be568,0x001c643f,0x00264539,0x003d19d9,
-0x00602153,0x00766121,0x006b8f31,0x0029962f,0x003f7ca2,0x003f39ee,0x0088c777,0xffffaaec,0xffee3e88,0xfff15e74,0x005907e9,0x00729eec,0x00618de1,0x003cf4c1,0xffe78dcc,0x00033890,0xffc9617d,0xffac6895,0xff6d4b4a,0xffc39296,0xff948af0,0xff1070e0,0xff4a506f,0xff4a4526,0xff96820a,
-0xffa63d3a,0xffadc323,0xff82a19e,0xfff96f1a,0x0001584d,0xffff65e7,0x00468603,0x005f9a26,0x007f069f,0x0097ca3f,0x00c3c6ab,0x00f72c87,0x010aeb36,0x00ca39f3,0x003a5402,0x002d974f,0x0053cbf7,0x00dd0227,0x00211067,0xffe7b261,0xfff72220,0x0091e3e5,0x00c2ffbf,0x008bf8bd,0x0028329c,
-0x0166e946,0x010ae3ec,0x00fb7f15,0x00e098cd,0x00aca287,0x00e113de,0x00f0febb,0x00d6f83e,0x008fdbf3,0x00387b5e,0x00291581,0x0012ce8a,0x000d160d,0x0035f8ba,0x0002a7b2,0xffbfb73f,0xff0ceb6c,0xfef7e0e8,0xfed1195a,0xfec0b5cc,0xfebd645a,0xfeb8b012,0xfe9cfb6a,0xff0f3b46,0xff91a74b,
-0x0035c5e0,0x0098ee3f,0x00653af6,0xffbecd0c,0xffc3d51a,0xffd0d64f,0xffe7f0f4,0x00095984,0x00342ca8,0x00432b77,0x011c6278,0xff7c6c32,0xffa28579,0xffdad704,0x0028abdb,0x0088f2ea,0xff51cc78,0xfee74f76,0xff589148,0xffbeed75,0xffeafef6,0xffeb31a4,0xfffb49a8,0xffee4a13,0xffbf9b69,
-0xfffb1867,0x002b443a,0x00332e47,0x0020c56c,0x00454247,0x00a32fa6,0x00c89bf2,0x00ea34cc,0x00d29a02,0x00b3a9ce,0x001e00e9,0xff572a50,0xfebac84e,0xfecb2f7c,0xffa30e83,0x008cfab5,0x00a97c6d,0x00489d6e,0xff4c69e2,0xfec752c6,0xff16f0c2,0xff49f624,0xfef3c4b6,0xffcf0ffe,0xff1af7ef,
-0xff0db39a,0xfef24a94,0x0008fe2d,0x001e6393,0xffbedb5a,0x00222585,0x000a71da,0x000b0261,0x0002245f,0x000d2d0b,0x000c1727,0xffdc8bae,0xffaff81f,0xffa3d0a2,0xffbd0aa9,0xffb94842,0xff8390c3,0xff930211,0xff846bc1,0xff606fed,0xff7303b2,0xff991f2e,0xffad1afc,0x00aa0b18,0x00cecdc0,
-0x005d78b8,0xfed11d40,0xfeccf5f8,0x0056662e,0x0093fb58,0x0111897e,0x01ed571a,0xff97b096,0x00fd12b1,0x00fc5ddc,0xff5f2630,0xff24353c,0xffa049a7,0xffc6c8bd,0xffe2b523,0xfffcc4bd,0x00018481,0xfff1ffda,0xfffa1581,0xfffcedd6,0xfffae0ae,0xffee1c7a,0x00000181,0x002343da,0x005f14ca,
-0x0062975f,0x00698179,0x006f19b7,0x00809a1b,0x006fee98,0x004ae63c,0x003cd444,0x001cd391,0xffdde644,0xffc8da4c,0xffb32b18,0xffef4cc8,0xffd83d53,0x0038006b,0x00c82af6,0x012d1216,0x00f741eb,0x0023eea2,0x00a633c5,0x007c6291,0x006b2497,0x007c8475,0x005fc0b6,0x004ad695,0x00132115,
-0xfff967ac,0xffe1426c,0x00039316,0x0009c0c1,0x000c2a77,0x0004bd8d,0xfffcc549,0xfffdb801,0x001462f6,0x001e9b6b,0x002bff14,0xfffdb0ae,0xffd69c50,0xffc4b51d,0xffcf01ea,0xffda9982,0xfff0e68d,0x00067ff5,0x001a92b8,0x0030eb55,0x00177f71,0xfffc2156,0xffe094a1,0xff9c69e2,0xff71ccd0,
-0xff589c82,0xff65e375,0xffb00ce2,0xfffdcbd9,0x0078efb7,0xff7a9433,0xff550958,0xff6491fc,0xff7f19f0,0xffa14cf6,0xffbcb75a,0xffd55b8a,0xffdbfa2c,0xffe82c6d,0xffe40375,0xffdfd3f6,0xffe31d93,0xfff8f84f,0x001cbc57,0x002345b9,0x0011dcde,0xffe7b37c,0xffb7fb6b,0xffa0c785,0xffa56d97,
-0xffb89023,0xffd95b77,0x00076bdc,0x004b4a1d,0x007ea4a7,0x009ecb67,0x00bfcd05,0x00c99aa2,0x00c12411,0x0094570d,0x004d17bf,0xffea6463,0xffb6f65a,0xff92d7ab,0xff7f77d1,0xff7a1957,0x0025807a,0x00366d73,0x0048f177,0x0042a375,0x00492cc1,0x0042c0d5,0x0033c245,0x0025a77f,0x00433d3e,
-0x005e5017,0x007d3e4c,0x007ac6fc,0x00787250,0x007a340d,0x0042b51f,0x001bf875,0xfff65ad6,0xfff45032,0xffed42ca,0xffde9d98,0xffdfcce4,0xffdbc1e2,0xffd40f80,0xffd9d3fe,0xffe055d7,0xffe53de1,0x000912e3,0x00290775,0x004ddfda,0x0056e2d6,0x00655bfe,0x00726220,0x0060f71e,0x004cfeaa,
-0x0034cca4,0x002e8fed,0x0068e934,0x00716952,0x00628c46,0x005cbb25,0x00539b4d,0x004bf4d1,0x004db91c,0x004abb57,0x003d7359,0x00281559,0x0014d080,0x000716e8,0xfff94543,0xffee7c9a,0xffe3a10d,0xffe287a7,0xffd99ea8,0xffcdc754,0xffbc58bf,0xffb9d6fa,0xffbf46f3,0xffc2b912,0xffc7966a,
-0xffc8a00d,0xffc99d80,0xffc70929,0xffd8722d,0xffe5dd09,0xfff59825,0x00031af2,0x00124687,0x00269667,0x002f0f46,0x003e4aac,0x004cfd3b,0x005cc74d,0x00036960,0x000c609d,0x0003bad7,0x00030e30,0xfffe1198,0x00088abf,0x000161fd,0xfffb212d,0xfff1c484,0xffed3fb2,0xffe79907,0xffe27b4f,
-0xffdc7523,0xffd61654,0xffde424a,0xffdd90cb,0xffca27ce,0xffcdefd3,0xffcc7e50,0xffcd0bfa,0xffcb4ce8,0xffca186a,0xffc8feb6,0xffc84d71,0xffc88717,0xffc64b2c,0xffce6eea,0xffd4801b,0xffdabc72,0xffe38a4d,0xffeb0c73,0xfff268c5,0xfff62212,0xfff9e2aa,0xfffd3a10,0xffffaef3,0xffceb6a9,
-0x000876c6,0x000d761e,0x0011aba8,0x000a63c9,0x00075f66,0xfffee370,0x0009138b,0x0004689d,0xffe97031,0xfff9b2bd,0xfff619ba,0xffe6991e,0xfff41297,0xfff8387d,0xfff490ce,0xfffad7a5,0xfffd9231,0x0006ef2b,0x00053645,0x0006c895,0x000a5ea8,0x000beb48,0x000f2c65,0x00162b7b,0x00158583,
-0x00140aab,0x000c3f16,0x000da926,0x000e6a6f,0x0020b3e9,0x00058eb9,0x00018330,0xffff8a70,0x0012bd48,0x00176a05,0x0014153a,0x000f69f1,0x0005a662,0x000f39d5,0xfffab494,0xfff109ec,0xffdab80a,0xfffcf83e,0xfffc102e,0xffc3b6cc,0xfff7fea3,0xfffdc9e3,0xffd7265e,0xfff8076e,0xfff23950,
-0xffde9240,0xffea5fa0,0xfff16274,0x000744cc,0x00089b54,0x0014e168,0x00243a78,0x002bc6a4,0x00369d2f,0x0041dd61,0x003be21e,0x002a7dac,0x000a8f7e,0x0004a800,0x001038a2,0x004968b2,0x00088992,0xfffacf56,0xfffbee74,0x002cbec1,0x0037e78c,0x0021e539,0x0010f12e,0x001ef852,0x00379fb5,
-0x00080f0f,0xfffae392,0xffcfc1c6,0x000b7bba,0xfff9099c,0xff6689db,0xffb1f129,0xff9b89f3,0xff443b7e,0xffa113ed,0xffb37dec,0xff9bf3b0,0xffcb988c,0xffca5d6a,0xfff356e1,0xfff19b0a,0x00054209,0x002209d6,0x00267c33,0x003bb1f1,0x0059a554,0x005b351d,0x004e4188,0x001dd094,0x00256e37,
-0x0026bba5,0x0087af39,0xfff56d12,0xffe93fc3,0xfff345e4,0x0054b7ed,0x006967ea,0x0044497b,0x0033edb4,0xffe59d5e,0x0003b86b,0xffca0bf3,0xffa981a4,0xff5fd7c9,0xffdd9984,0xffc6ef84,0xff4884a4,0xffa6f7a8,0xffb03922,0xffd208c2,0xffdffc04,0xffd8ade4,0xff9c4bf2,0xffd0499b,0xffc33a0e,
-0xffe213ac,0x001c9269,0x004283e1,0x007f10d9,0x00906c47,0x00b52067,0x00d42959,0x00bf43ba,0x006f9931,0xfffbd702,0xffe3ddb7,0x002da11e,0x00dcaa63,0x0016622e,0xffd95b1c,0xfff8b8d5,0x008b28e8,0x00a41da7,0x004553ef,0x00094bfb,0x016e6f92,0x01220576,0x00f756aa,0x00e3347f,0x00d5c2d7,
-0x00d13655,0x00a47f11,0x005f224e,0x00557550,0x001cfa4c,0x001fd56d,0x000f097b,0x0019bfa5,0x000f0b42,0x003814b2,0x00218f6a,0xff4514b6,0xff1eeb7b,0xfef47862,0xfee8d348,0xfece65c4,0xfecc66ca,0xfeef8f0a,0xff60056a,0x0006c698,0x00f17747,0x00c6de98,0x004b961d,0xffa24d04,0xffb21878,
-0xffdf6df9,0x00312c17,0x00032566,0x004a32fe,0x00d1d5d4,0x014d62ba,0xffa38577,0xffbce5bb,0xffa038fe,0xffe0102e,0x006b1d5a,0xffa2fa42,0xff688444,0xffbd9f73,0xffe85dd6,0xffec85d3,0xfff2fa35,0xfff31bc7,0xfffab1dc,0xffe5a509,0xffeba54a,0x000af240,0x00216953,0xfffd8e2f,0x00152072,
-0x00620a08,0x00a9ce11,0x00d118f4,0x00b5d7d1,0x004bdba7,0xffb8350e,0xff2ea885,0xfeb30e8a,0xff1583a9,0x0038bb2e,0x00a6d19d,0x008644f4,0x004a9589,0xff36e825,0xfecfb8f8,0xff4754e7,0xff67e18a,0xff90189e,0x00af92d2,0xffc3ea1e,0xff7e5f0b,0xff03b2bb,0x001d547b,0x002a7287,0xfffebacb,
-0x001906fc,0x0004e076,0x000aa2a2,0x0006adc0,0x000439fb,0x000e3487,0xfffe2efb,0xffde15c9,0xffc16536,0xffdcded2,0xffda8cfd,0xffb3da39,0xffa73290,0xff8f8086,0xff917ac0,0xffa25d4b,0xffe2b20b,0x002e27ab,0x0115b998,0x00e09e78,0xffc9d106,0xfef953d2,0xff45c9b4,0x00cf08ea,0x00e777de,
-0x01395e58,0x01c26b98,0xfffe42c9,0x0080e6b3,0x01bcdfc0,0xff1fcfca,0xfe3392f0,0xfe9ba75e,0xffafacf4,0xfff17df5,0xffeead6a,0xfffbf541,0xfff5e5e1,0xfff9a4bc,0xfff83b23,0xfffab92a,0xfffa1e0e,0xfff9f425,0x00085bcf,0x004431b2,0x0062c901,0x007090a7,0x0080def6,0x00798924,0x00555789,
-0x001fce2d,0xfffac42e,0xffeb0cf3,0xffdc97fd,0xffc25c2d,0xffbcda0c,0xffe05cce,0x0018c91f,0x009f52be,0x018107ee,0x00ca978c,0xfff85583,0xff16d76a,0xffc06d9a,0x00874d2e,0x00b901c8,0x0107a1b6,0x010f9336,0x00a211d0,0x002870c3,0xfff4a87b,0xfff7d8f2,0x000bc876,0x00094ddb,0x000be3f9,
-0x000c499f,0x000980a6,0x0004192c,0x0015a6f6,0x002dd4e3,0x0055905c,0x004c403c,0x002de8d7,0x00155c5f,0x000f29d2,0x0010e3e6,0x0021ccfc,0x0021af32,0x001dc667,0x001ff1a0,0xffec1277,0xffca3647,0xffb121ef,0xff77eea4,0xff535e9e,0xff4e0c99,0xff859dc1,0xfff529a2,0x003e2277,0x00857af1,
-0xffdee535,0xffaedc7d,0xff94e8a1,0xff8ba862,0xff9bb422,0xffb35c71,0xffcdf565,0xffd5816e,0xffea3245,0xffeb06d0,0xffe5c107,0xffdf960c,0xffe6449d,0xfffbc905,0x00153556,0x0016ce39,0x0000f458,0xffd26a3d,0xffba886e,0xffbcdd0d,0xffbfe73e,0xffcbd945,0xffe950a2,0x00228abb,0x004baaeb,
-0x0062fd53,0x006f51e7,0x006d09c3,0x005bb7de,0x00497b23,0x00195594,0xffc12d18,0xff97d021,0xff801e0a,0xff996626,0xffbdad54,0xffc072b6,0xffce67ab,0xffea34c3,0xfff626ad,0x00039d85,0x0001442d,0xfffa1cf6,0xfff06bf2,0x0010f7bd,0x002b7a99,0x004a6b9a,0x005095a6,0x005fd98c,0x006d3d13,
-0x004dc851,0x00336826,0x0021a948,0x0014cc9d,0x0003351e,0xffebc4b6,0xfffaa162,0x0000f057,0x0003e611,0x000e54c3,0x001a1518,0x0027c3d5,0x003adedb,0x004b6398,0x005c62c7,0x004f8b05,0x004593c2,0x003fc778,0x0023f1be,0x00033f49,0xffd4151b,0xffcc2535,0x0079fdd1,0x007f2604,0x0078c215,
-0x006cd430,0x006757ad,0x00611929,0x0064299a,0x00653731,0x006147ab,0x0059608e,0x0052c91e,0x004e81f3,0x0047c479,0x0044e19a,0x002cdf53,0x0024291b,0x0015a5ec,0x0003d504,0xffe910cd,0xffea69f5,0xffef7112,0xffef181d,0xfff227b4,0xfff292c2,0xfff2b567,0xfff0ac0f,0x0001bdab,0x000f5aa2,
-0x001f6483,0x002f55f3,0x004070ee,0x0052264e,0x00540b0f,0x005c58aa,0x0063e981,0x00714d5e,0x0022e9b5,0x0026a03f,0x00205c58,0x001ee8e1,0x0018094b,0x00249db9,0x001b10f8,0x00118cd9,0x000eac6d,0x000d056a,0x000a6f1f,0x00095279,0x000718fc,0x0007d4b6,0x000f8da0,0x0011f140,0xfff237a7,
-0xfffafc9a,0xfffaf8d7,0x00002d84,0xfffd2456,0xfffd4760,0xfffcd589,0xfffc9180,0xfffd1afe,0xfffb1bcc,0x00021c66,0x0006e6e0,0x000b4778,0x00111f1e,0x0015b13e,0x001bd38b,0x001db45d,0x0020d131,0x0023dd14,0x0022b331,0x0006e6ca,0xfffd05d6,0x0003fa38,0x00074311,0x000287cf,0x0000aef1,
-0xfffc024c,0x000012f8,0xffffef9e,0xffed1254,0xfffb928b,0xfffa5964,0xffef16ee,0xfff6d9bf,0xfff75c58,0xfff90039,0xfff22612,0xfff21496,0x00066286,0xfffea1f6,0xfffe32bc,0xfffde315,0x00010ec0,0x000375cf,0x000ad8e0,0x00050989,0x00036cc4,0x0000863d,0xfffff6cf,0x0000e3e7,0x001390bf,
-0xfff9fdf3,0xfff6f3b8,0xfff74eef,0x000807c4,0x000c361a,0x0005bad4,0x00052e9d,0xfffeca6c,0x000829fe,0xfff98821,0xffeecdb3,0xffded475,0xfffbe9f2,0xfffce2e6,0xffcf194b,0xfffb61cd,0xfffaac47,0xffcfe76b,0xffe362cd,0xffe2f7f2,0xffe9362a,0xffda8a2e,0xffe03de7,0x00050cb3,0xfffa2ae5,
-0x00082a47,0x000eda2a,0x00176463,0x001ee05b,0x0028c91e,0x00117907,0xffffe330,0xfff20f88,0xffed6e2b,0xfffd9311,0x0035ab8c,0xfff8dbab,0xffee0b8a,0xfff631e7,0x001f812c,0x00253289,0x0008289f,0x0003db59,0x00190127,0x002f7bae,0x0005ccc9,0xfff57ac5,0xffd1e388,0x00092938,0xfffb7bfb,
-0xff909aae,0xffcb51f2,0xffc13df6,0xff81ca58,0xffb8ce0f,0xffb70a50,0xffc18166,0xffb3b457,0xffaf2261,0x0000947f,0xffe642fc,0xfffa93b8,0x000d5e19,0x0014dd93,0x0026ffb9,0x0044faa1,0x0027ecf8,0x001a8e99,0x0004e9cb,0x00088f78,0x000b417d,0x006842de,0xffe49f12,0xffdf6fcb,0xfff5b0fd,
-0x0046255b,0x00565983,0x00274c23,0x002a3df2,0xffec3502,0x0004dc40,0xffd963e2,0xffb4e077,0xff7dbe1c,0xfff0a85b,0xffeaa36b,0xffa6e700,0xffe9f7a6,0xfff1e24b,0xfffda3b9,0xfffbb217,0xfff81aee,0xffd65d8e,0xffc905ec,0xffa84068,0xffe13dd5,0xfff6bf80,0x001c5427,0x004f15ff,0x00630954,
-0x00816e4e,0x0095e8f2,0x004a8927,0xfff75b62,0xffb9bc55,0xffb3a318,0x000da5d7,0x00ad0af1,0xfffecff7,0xffcdc186,0x0001fbc7,0x007af674,0x007b097b,0x00068088,0xfff4f3ce,0x014f9b9c,0x00f5deeb,0x00ce006f,0x00bd9e78,0x00b8d0fb,0x008f8fba,0x00476778,0x0015c608,0x00171964,0x0002ac1d,
-0x00091a7d,0x00004d65,0x000e5584,0x000068bb,0x00364481,0x004b9736,0xffaadf1b,0xff629042,0xff354f0f,0xff2a9fe4,0xff0129a6,0xff083fe3,0xff5c5ba5,0xffc9ac7f,0x007a4b26,0x015a5d9e,0x00dd118e,0x00359c92,0xff947061,0xffa4eb4a,0xffd943d6,0x003caf96,0xffec2888,0x0050a6b4,0x01351c38,
-0x01613f3c,0xffd0609b,0xfff76139,0xffa7fc43,0xffc7ad88,0x002e33e2,0xffd94c04,0xffd109fd,0xfffa00ba,0xfff5f95e,0xfffbfc2c,0xfffca6c6,0xfffcefcd,0xfffb3c30,0xfffb00f7,0xffebea8e,0xffef39f6,0x00149656,0xffe479f3,0xffe3c870,0x000ebc55,0x005ee69f,0x008cddf6,0x007eeaed,0xffff501d,
-0xff72b5e3,0xfefb201c,0xfec06200,0xff657e9b,0x00a3a59c,0x0085ca1d,0x00364f33,0x001b73e5,0xff0e2be1,0xfed21a0e,0xff5d1c28,0xff7ffa21,0x003366f9,0x01354e5e,0x005e4ad2,0xffe79f81,0xff7b52b4,0x0007d796,0x00169f80,0x0004d247,0x0003c969,0x00037600,0x00021dca,0x000318b3,0x0002cafb,
-0x00044c22,0x00094ba1,0x0004c179,0xffe8316c,0x000a48c1,0x001353ef,0x0001e724,0xffd13088,0xffaa36d2,0xffbca5f6,0xffc2bcd9,0x0023b864,0x00c0b563,0x012857e4,0x00a129c3,0xff4bfc4e,0xff451259,0xffcb1732,0x01002100,0x011f8144,0x01413320,0x0120ab60,0x00480ca8,0xff4638f8,0x00bdaaf8,
-0xff2ed8bc,0xfe3aa864,0xfe63eb74,0xffad8db1,0xfffb79cb,0xfffac17e,0xfffd21b8,0xfffcc549,0xfffd09e7,0xfffc4f7c,0xfffc0f6e,0xfffd0985,0xfff78785,0xfff5b174,0x00131ab1,0x004bc6bf,0x006640d0,0x00726cb6,0x005750af,0x002c6061,0xfff57ceb,0xffc19979,0xffa646d4,0xffad3bce,0xffa428da,
-0xffbdc1a4,0xffbcef93,0x007f5534,0x00f0db32,0x016be77a,0xffd8bcc1,0xfed1cfca,0xfe753f4a,0xfec7297c,0x0080e913,0x0132589a,0x01961a04,0x0192d9cc,0x00b16d58,0x0041b344,0xfffee735,0x0005e67d,0x0005d272,0x0003716d,0x0005b541,0x0006c718,0x00075d76,0x000413f7,0x000bc4f3,0x00281408,
-0x005531c8,0x007e9cb0,0x0074a4f1,0x005a4b5f,0x00459d34,0x0038b25d,0x003ab3f7,0x0033505a,0x002271d9,0x00102ee8,0xffcaf3cd,0xffa47ff0,0xff9052c1,0xff63d8b9,0xff472df3,0xff5860ca,0xffa05864,0xfffa9ed0,0x002dfe93,0x0035ac07,0x0011aaac,0xfff846b4,0xffcf48e4,0xffba8029,0xffb85acf,
-0xffc7e0dd,0xffdadaa4,0xffe7339b,0xfff877da,0xfff8de9f,0xfff47d3f,0xfff0aee5,0xffeeef32,0xfff1aae1,0x000641b1,0x00112109,0x00127751,0xffee06ae,0xffd718a8,0xffd0e61a,0xffca9af4,0xffc8a1ab,0xffd0d0f9,0xffeeae4b,0xfffef386,0x000479ba,0x0009b70a,0x0009df99,0x0001489b,0x0007ea45,
-0xfff70b57,0xffbddd77,0xffafb235,0xffa66884,0xffcae81f,0xfff2084b,0xff906bcb,0xff9353b0,0xffb025db,0xffbe20b1,0xffcf449b,0xffd3a076,0xffd852de,0xffdaacb0,0xfff41dd6,0x0002bea6,0x001ab6aa,0x001a8a73,0x002eb031,0x0038659a,0x003b272a,0x0035205d,0x00380f4c,0x00273e48,0x001590cc,
-0xfffe1bff,0x0012109a,0x001f93e4,0x002ad5db,0x003bec83,0x004e49be,0x00637ae4,0x005e8134,0x00580b6c,0x004f7f07,0x002f08f0,0x000fb267,0xfff6cd33,0xffe20a43,0xffc86e13,0xffa082f5,0xff9ad84e,0x00478ed2,0x0047224e,0x00598ff3,0x00495c9a,0x0050455f,0x004e385f,0x00517f6a,0x00560819,
-0x0059e447,0x005f8a56,0x00688e54,0x006c888a,0x0071064a,0x007749c7,0x0061acff,0x00538c14,0x004470e4,0x0034edbb,0x0020dc5c,0x001e67f2,0x0022166e,0x001fc88b,0x00200e82,0x001f48ad,0x001d3340,0x001cc135,0x0022afa2,0x002912e5,0x003158c6,0x003ae106,0x0044ace9,0x004999d5,0x00457b31,
-0x0043c0db,0x0041b126,0x00464305,0x002f4b64,0x002ac1f7,0x002f2e0a,0x0030f752,0x00305d86,0x0030b7ba,0x002ef85d,0x002bc6df,0x002ec4ac,0x00305d04,0x003011f3,0x00335261,0x00344976,0x0039b1a1,0x0037f344,0x0038d200,0x002755ad,0x002b269c,0x002a4bde,0x002c8e94,0x002b1ac8,0x002be3a1,
-0x002c6134,0x002cb78e,0x002d78a7,0x002cbd61,0x002f36d8,0x00301fb5,0x002fe3b5,0x00301a78,0x002fdac1,0x0031fede,0x0031dc2c,0x00330fb9,0x00346b38,0x00311e41,0x00340f3f,0xfff01fbe,0xfff9aceb,0xfffc032f,0xfff70a3a,0xfff4874f,0xfff0a251,0xfff34d0f,0xfff4f70f,0xffeadb3e,0xfff44e2b,
-0xfff4de18,0xffef3074,0xffededbe,0xffec42f0,0xfff516f4,0xffe51882,0xffe54168,0xfffbcf92,0xfff21b19,0xfff14678,0xffef2070,0xfff38816,0xfff517d2,0xfffb8a3f,0xfff1279d,0xfff04990,0xfff34353,0xfff47129,0xfff5a25d,0x000163fe,0xffef4d72,0xffee197f,0xfff20711,0xfffdcde3,0x000087dd,
-0xfff6ed9f,0xfffa6e69,0xfff8d5c1,0xffff0fb7,0xfff39bc6,0xffeae6cb,0xffde5e23,0xfff1ab16,0xfff4fd8a,0xffde88ff,0xfff5f3b7,0xffed249f,0xffcbafc4,0xffc72962,0xffca8428,0xfff02543,0xffcbb1e2,0xffd0180e,0xfffea0b5,0xffead97a,0xfff4d879,0xfff3bf97,0xfffe4ce7,0x0000808d,0x00061956,
-0xffdf4355,0xffd1dc03,0xffdae248,0xffe3b1d9,0xfff5af85,0x00171c1b,0xffec8899,0xffe81d3a,0xfff8e403,0x001416c9,0x00136c29,0xfff0ea8f,0xfff8fda1,0x00141d92,0x0023901b,0x00008db8,0xffed53c4,0xffd4289c,0xfffb4e11,0xfff77215,0xffc9677c,0xffe1fc56,0xffe3c20e,0xffc83781,0xffcfc5ea,
-0xffc196af,0xffe3b1e7,0xffad8ce1,0xffa31236,0x00015476,0xffdb00f9,0xffe935f0,0xffeb90e7,0xfffc1cb3,0x0006a8f6,0x00214378,0xffe610ba,0xffde80df,0xffef8b74,0x00006a17,0x0005d563,0x00369df0,0xffdf6be4,0xffe44c0b,0x000b9c8d,0x003ea87a,0x0045ef42,0x000becdb,0x00217873,0xfff5d79a,
-0x0004949f,0xffe73e72,0xffc6c385,0xffacff4a,0xfff8558c,0xfff9eaf9,0xfff0ea85,0x00050571,0x0004d5cf,0x000f5939,0x000f00d9,0x0004e8f8,0x0000eeb3,0xffe490a6,0xffb4f8ff,0xffe7f932,0xffdc3778,0xfff2da62,0x000c3540,0x0026bf7b,0x0037af1f,0x003b61bc,0xffbab03b,0xff766544,0xff8ac29f,
-0xffb724cf,0x000d23f1,0x005be442,0xffee14f1,0xffdc396d,0x0026b6ca,0x006ef6d2,0x005558cd,0xffd487a8,0xffe9ea26,0x011e91c8,0x00aad011,0x009d4ff6,0x007b7f67,0x0066fab7,0x003bd173,0x0009bcd5,0x0001da84,0x00010188,0xfffd8884,0xfffa768c,0xfff99f9a,0x00001ba8,0xfffea74c,0x001299fe,
-0x00355536,0x000213ff,0xffaf9dc0,0xff6fd3c4,0xff650e55,0xff3f8532,0xff56aa76,0xffcd3e3e,0x0053c8e0,0x00f845ee,0x018a0ed0,0x00eb7065,0x00387a97,0xffbfe5b0,0xffbf5ba0,0xffea5a10,0x004d3aed,0x000097be,0x006affa7,0x0160119a,0x0154d892,0x0007c240,0x00339e4d,0xffd03ad9,0xffda886b,
-0x0009f488,0xfff9c55e,0xfff70e7a,0xffffed28,0xffff1dfc,0x00019701,0x0002abc6,0x00026474,0x00008baa,0xffff2470,0xfff7b345,0xffeb4273,0x00058ac8,0xffe778de,0xffcf3fe2,0xffd4ff4a,0x00232524,0x00501600,0x004b1601,0xffd58844,0xff4cff75,0xfede3f0e,0xfef94f78,0xffc18626,0x00e5484e,
-0x006a36b2,0xfff7f39d,0xffd46ae7,0xfef692e6,0xfeec6cfa,0xff7d9899,0xffb31cee,0x00a1115f,0x015fb030,0x00d81a39,0x002d34f8,0xffb757e2,0x000e9288,0x00047892,0xfffedf82,0x00012acc,0xfffe6d91,0xfffe9dd7,0xfffedbea,0xffffb12b,0x0000e773,0x0003ca32,0x000b1ca5,0x00013b71,0x001bf29d,
-0x0034360c,0x00376211,0xfffbb169,0xffd4c8dd,0xffe54d39,0xfff65090,0x006f5036,0x0133697a,0x00f4db16,0x0032f944,0xfef74c4a,0xff9a336b,0x004bb6b7,0x00f6530f,0x01415adc,0x01240c06,0x004bfcde,0x0054a409,0xfe7a9b4c,0xfeac3724,0xff2f0e38,0xff048b82,0xfeeaed3e,0xffd82699,0x00017941,
-0xffff6091,0x00008912,0x00017b99,0x000154ac,0x0000d9cf,0xffff96eb,0xffffcd87,0xfffd1c1f,0xfff84a83,0xffec3be7,0x00184f47,0x003dfcea,0x003ec365,0x001df66e,0xfffcae28,0xffceb231,0xffa37f46,0xff7c13b1,0xff80f561,0xff8ce845,0xffd19cc3,0xffd35ce6,0x00efad5b,0x010a4b50,0x008852c7,
-0xff145067,0xfe64fce2,0xfe7fd628,0xfea6b0ce,0x0053a54d,0x016f442a,0x01ba8688,0x0172a58c,0x0081bab0,0x00423a5c,0xfff99444,0x00023fb7,0xfffd0fd2,0xfffdd36a,0xfffddd2e,0xffff1b64,0x000068de,0x00022d37,0xfffebfa6,0x000ef2d7,0x0032d81c,0x00776028,0x008efdd0,0x007e754a,0x006ba2f6,
-0x005495a3,0x0045257e,0x0034ca93,0x0020ddab,0x000885a9,0xffc4ffaf,0xff9cd8a4,0xff88f5d0,0xff6a3ac4,0xff60a4a3,0xff86e04a,0xffaa7252,0xffc2a1ec,0xffdafcef,0xffb8ea3c,0x003203a5,0x002d4e06,0xffffd652,0xfff7d8aa,0xffe61be2,0xfff1c686,0xfff7d8b5,0x00023b43,0x00067afe,0x00065c8e,
-0x0003de17,0x0002b996,0xffff2c4d,0xfffb89dc,0xfffebe7e,0x000945c9,0x001967a6,0x0008a5bc,0xfff19d50,0xffe4e73a,0xffdc4f32,0xffd072be,0xffc8b94b,0xffc65b27,0xffbdd176,0xffb4a47f,0xffc25eab,0xffcb9a6f,0xffcb517f,0xffd784e7,0xffd7ab44,0xffc1ff76,0xffd4e9c6,0xffe3fcac,0x000895ac,
-0x0026227e,0xff95d175,0xff8a3050,0xff968388,0xff9c4fe0,0xffa61ebb,0xffb0c0f7,0xffc055e6,0xffcdb06c,0xffde4c14,0xffe69de0,0xfff45256,0xfff15460,0xfffe82ed,0x0002f4bb,0x0012c726,0x0019ef0c,0x00293f13,0x0023c9ef,0x001bd8e6,0x00152373,0x00231e2f,0x002af2a7,0x0034005a,0x0045a966,
-0x00581b5b,0x006a6106,0x0052e5fd,0x003addb2,0x00214de1,0x0003b306,0xffe74926,0xffce53ff,0xffc74528,0xffbadfc6,0xffa5c764,0xff9c6f2a,0x000195e1,0xfff8e5d0,0x000f7b82,0x000ddb80,0x001b3ba9,0x001f5203,0x0022cc2a,0x00299eda,0x002ea008,0x00392566,0x00472f44,0x00506196,0x005bc224,
-0x0067ba69,0x0061f7c9,0x005b5f31,0x0054ac00,0x004d112d,0x00403eb5,0x0042c8f1,0x00448a81,0x00433299,0x00424737,0x00412eec,0x003e03ce,0x004038b9,0x003b0b00,0x003a46be,0x00398194,0x00389885,0x00361b2c,0x002e606b,0x00237f16,0x0018b72f,0x000fb82a,0x000987c1,0x002fe354,0x0027febc,
-0x002e2541,0x002f28b0,0x002ffb83,0x0032066a,0x00337c10,0x0035733e,0x003beae6,0x003fd7f8,0x0041ce96,0x00465489,0x00489d55,0x004d9d0a,0x00483a41,0x004a54f8,0x00405b82,0x0044373f,0x004684dd,0x004b308c,0x004a4c06,0x004bb032,0x004ceb74,0x004dcb76,0x004ead9a,0x004f49b4,0x004ce292,
-0x0049dc5f,0x0045b8cc,0x0041b545,0x003e4677,0x003cd0dc,0x003ae29d,0x00396bce,0x00375d73,0x00331c87,0x0051de4e,0xffe4d98a,0xfff14118,0xfff12f2f,0xffed6418,0xffeaf36e,0xffe898a4,0xffe7cd5c,0xffeb6fb4,0xffed7d10,0xffef65ca,0xffee7c7f,0xffec7ea2,0xffe49660,0xffe3ce0b,0xfff2569c,
-0xffdca6a3,0xffdb5eeb,0xfff1f19c,0xffe738e5,0xffe5bb98,0xffe1c568,0xffe755c4,0xffe7c818,0xffea934c,0xffdf50c3,0xffdfdba4,0xffe77f4c,0xffed0d86,0xffedf96d,0xffecbef2,0xffe6c3e1,0xffe81b3c,0xfff07fd6,0xfff4f357,0xfff57edf,0xffe9bb56,0xfff16093,0xfff4ae65,0xfff5a424,0xffee9cb0,
-0xffe5f3bc,0xffdee39b,0xffe63d37,0xffec59ad,0xfff0ae09,0xfff1c0bb,0xffe8d801,0xffd48d60,0xffba4c11,0xffbb5bff,0xffeccbb3,0xffc509d4,0xffc9c9af,0xfff50106,0xffdf09d4,0xffe47e62,0xffdc1af3,0xffe814a7,0xffe3ceab,0xffdef9f3,0xffb43f91,0xffaede9d,0xffca69b4,0xffe5a04a,0xfff4c1f9,
-0xfff067d5,0xffe282e4,0xffe69a84,0x0000e502,0x0007cf4e,0x00014638,0xffddd20d,0xfff16008,0x0012f815,0x001711e1,0xfffc7529,0xffe8fb59,0xffdba646,0xffee511e,0xfff6012a,0xfff931cf,0xfff803e9,0xfffc2318,0xfff73c33,0xfff50b58,0xffe26275,0xfffc3142,0xffc1c779,0xffad73c5,0xfff82803,
-0xffd36036,0xffd74f94,0xffcc4bf6,0xffe55903,0xffe5457d,0xfff00278,0xffaa73d2,0xffad812d,0xffdf7298,0x0007bcdb,0x000d2ef8,0xfff5a2c0,0xffdf79af,0xfff0242d,0x002b72d7,0x00350a3f,0x0031b83c,0xfff1f658,0x001b0dd3,0x000253c3,0x0004febe,0xfff06043,0xffdaf890,0xffd5f9a8,0xfffb2c3b,
-0x00019034,0x00027c87,0x00027c60,0x00035208,0x0003853d,0x0008c6ed,0x000905fb,0x0005e809,0x00081664,0xffdcfbcc,0xffec3c9c,0xffd2303b,0xffd2d7ea,0xffd20363,0xfff12d53,0xffec9241,0xffce7823,0xff3c1815,0xff183efc,0xff75aec5,0xffdca659,0x0018965b,0xfff0a7d9,0xffdbc20d,0xfff32967,
-0x005282e1,0x00562108,0x002753d1,0xffaea144,0xffe944b0,0x00db707a,0x0069fc44,0x006af8eb,0x003bea00,0x001fcad9,0x00083d93,0xfffdbf53,0xfffff3b2,0xfffe9e6a,0xfffe1391,0xfffdfff0,0xfffb5329,0xfffc55a4,0xfffbe81e,0x0000a89a,0x000c9f3a,0x0022d51b,0xffeb6e66,0xffa4a859,0xff8c3799,
-0xff78fdf6,0xffa1e6a6,0x0023bc78,0x00d043fb,0x014fad1e,0x016f7f70,0x00da1857,0x0041f333,0x00047528,0xfff00ed2,0x0010adc9,0x006fbc4c,0x0040e94a,0x009cccf4,0x016535bc,0x0121c224,0x003eae79,0x00565b5f,0x00062a06,0x0006ac8d,0x00080b12,0xfffc4c30,0xfffe4e49,0x000292a9,0xfffff41c,
-0x0001768a,0x00015090,0x000276ec,0x00020f17,0x0001cea5,0x00003a0c,0xfff755c6,0xfffa1e78,0xfffb40dd,0xffe63582,0xffcd98fb,0x0009f72c,0x00219a67,0x000d7f33,0xffa33f27,0xff2e9da9,0xfeeb3c78,0xff57cc9e,0x001a2aa9,0x00eccafb,0x00611017,0xffe1817c,0xff9be91e,0xff1379d0,0xff37fc80,
-0xffc710a5,0x0005ac7b,0x00cb4d29,0x0158b462,0x01146e4a,0x0032765a,0xffd79de4,0x0015dab9,0xfff8c010,0x0001c56d,0xfffd51e5,0xffff9d3d,0xfffe5fb7,0xfffe8509,0xfffe7aba,0xfffec3be,0xfffffd92,0x00031709,0x000727e1,0x000ddca3,0x0026baeb,0x003f07d7,0x001b1eed,0x000b7ac3,0x001865eb,
-0x00539e5b,0x00c325b7,0x014c665a,0x00948544,0xffc67fd5,0xfee59f2c,0xfffa5409,0x00c774da,0x00f5bf86,0x0159bc1c,0x00ef7412,0xff9f3a71,0x00387c5d,0xfe8b0524,0xfd241c28,0xff15728c,0xffb922cf,0xffa5f695,0x00075710,0xfffe95e8,0x0003dd42,0x00012352,0x00024d95,0x00017364,0x00021fdc,
-0x000199b1,0x00019f2d,0xffffa2f1,0x00028d2c,0xffef8f47,0xffec3102,0x0000bd48,0xfff8aba1,0xffdcb38c,0xffcc3631,0xffaae2a0,0xff8d1c51,0xff6c774e,0xff79bd7b,0xff871324,0xfff79b88,0x003ea1b9,0x012aa794,0x00d477e0,0xff78f65a,0xfeece988,0xfed7f1e8,0xff0f5896,0xff4ce99c,0x0004f76a,
-0x0100b948,0x0118e7a8,0x00c024b3,0x004dd1f0,0x000da8a7,0xfff54649,0xfffe94a8,0xfffab342,0xfffce787,0xfffc95d0,0xfffcdc38,0xfffc9dd2,0xfffe05d5,0xfffe9230,0xfffdaa1b,0x000f0522,0x004bc160,0x007d0804,0x00827e2f,0x00793e72,0x0064b06d,0x004e74a8,0x002da5d1,0x0014d92b,0xfffce993,
-0xffcb127d,0xffa252ce,0xff892f6e,0xff79f0eb,0xff8e2648,0xffc5307a,0xffb23703,0xff8c0f15,0xff8463ec,0xff6d7558,0x005a0078,0x0060fd8d,0x0037f6e1,0x002a88ca,0x0013bf46,0x0014901b,0x0008ae2b,0x000afff1,0x00086b2e,0x0007d14c,0x00061f0a,0x00071eab,0x00061222,0x00060b5b,0x00021135,
-0x0006c6c1,0x00191ebd,0x0020713d,0x00152bdd,0x00038125,0xfff5aca0,0xffe2fb22,0xffd15e35,0xffbd5b61,0xffa675a3,0xff8f1b11,0xffa2ef0a,0xffae31f3,0xffae48c5,0xffb5937e,0xffbbefcb,0xffcc7bdf,0xfff36e67,0x001db2cf,0x0044d7fe,0x0060641e,0xffb9c787,0xffad5e7c,0xffae0a9e,0xffb196ee,
-0xffb1a3bf,0xffbf8c4a,0xffd2a274,0xffe29a7a,0xffeacf96,0xffef948c,0xfff31bfa,0xffefb6b3,0xfff15bfb,0xfff02451,0xfff7442c,0x00002850,0x000e597d,0x00151712,0x001db9d6,0x00282da0,0x0027549a,0x00275ad3,0x0027789d,0x0030894b,0x003a0e99,0x0041b670,0x0028bfdc,0x000ff5cf,0xfff7cd32,
-0xffea81ff,0xffde82d8,0xffd00491,0xffd0cd94,0xffcb25ef,0xffc16fd2,0xffb8eb7a,0xffd61f01,0xffc6d839,0xffd8d10c,0xffdb907d,0xffe9e283,0xffef4941,0xffef5fcb,0xfff47dd6,0xfff7e139,0x00019107,0x000dbed2,0x00177ca4,0x0024091c,0x0030e4f1,0x003c865b,0x004178ba,0x0046e5ba,0x004c36d6,
-0x0050668f,0x005252ac,0x005201d1,0x00531726,0x0052c230,0x0052e375,0x0050eafd,0x0054cffe,0x00493aa3,0x004373b8,0x003c4955,0x003312f9,0x002789be,0x001a40ed,0x000b9051,0xfffdbe25,0xfff2fc81,0xffe5bbe1,0x00263779,0x001d4933,0x0028875a,0x002b5ba9,0x00303d8a,0x00290b4c,0x003069ed,
-0x00382295,0x003fa337,0x004457a6,0x0047fb9a,0x004c6fd6,0x004fba22,0x0052db7a,0x004a7d95,0x00488319,0x00511336,0x004e6521,0x004f0550,0x004e0a24,0x004fada5,0x0050d030,0x00522976,0x00533c32,0x005411de,0x0055ccdb,0x00504d7a,0x004b30e0,0x004578dd,0x00402e29,0x003be358,0x00388d3e,
-0x0035b551,0x00323614,0x002d6b0b,0x0029379f,0x0053ed48,0xffe127fd,0xffed6e3b,0xffeaffe0,0xffe7ede7,0xffe4e59e,0xffe23897,0xffe37419,0xffe62f76,0xffefad8f,0xffea3af7,0xffe7c249,0xffe6dc70,0xffdaf4dd,0xffdb6e2b,0xffebacd1,0xffdd5578,0xffdcb7dd,0xffe7173e,0xffe0c2a2,0xffe0d5a5,
-0xffde8648,0xffe2770f,0xffe21192,0xffe030eb,0xffd98743,0xffdb64e6,0xffe3cf44,0xffebd338,0xffebae71,0xffded14a,0xffe4b5e1,0xffe8827f,0xfff500a3,0xfff0a5de,0xffeeec12,0xffe3d0aa,0xffed4e81,0xfff21e18,0xffed52de,0xffe90811,0xffe48e1a,0xffe430db,0xffe0c496,0xffe9daf2,0x0001ccbb,
-0xfff6de79,0xfff0e7db,0xffe88bba,0xffcfe521,0xffca9b1e,0xffe99652,0xffc61874,0xffcb4cd1,0xffeef83b,0xffde6897,0xffdc2a6f,0xffd32bee,0xffdc1c6b,0xffd27ca0,0xffc38e62,0xffa70402,0xffaaac95,0xffca2090,0xffed70b5,0xfff4d8f0,0xffd0f543,0xffdf5b09,0xffebaa2e,0x000d81fe,0xfffe7970,
-0xfff341a2,0xffd6092a,0xffedb15a,0x000dea0f,0x000366a9,0xfff73377,0xffea7781,0xffe26b59,0xffeb82da,0xfffb6772,0x00054f06,0xfffef5eb,0x0003ad68,0x0003ff8a,0x0009a827,0x00014e22,0x0006f7a0,0xffecd3a3,0xffd0c6d6,0xffec0960,0xffd6ef86,0xffd27eed,0xffc138f4,0xffda33d6,0xffd07a80,
-0xffc6f565,0xff9780c5,0xffa47e13,0xffdc77c4,0x000edfc0,0x000e26e7,0xffbdd332,0xffe40bd6,0xfffdda0d,0x0048f6b0,0x0024b279,0x0018f126,0xffe14521,0x00106eee,0x00052e6d,0xfff79af8,0xfff09c1a,0xffe7d188,0xffef6a86,0x00044176,0x000269ac,0xfffdd0f4,0xffffe4a0,0xfffeefad,0xfffe5292,
-0xfffd74a4,0xffffebc8,0xfffe1a3a,0x000b6452,0x0001ad79,0xfff4672c,0xffd92fc4,0xffc89d67,0xffb647a1,0xffcf5284,0xffb42eb5,0xff773874,0xff0f38e7,0xff11fe9c,0xff848174,0xffff7816,0x001203d8,0xff91a5e6,0xffcd209e,0x0009d571,0x0077f660,0x00377866,0xfffb171a,0xffa17f60,0xffe9eca0,
-0x00808956,0x00437cbc,0x0041a4d7,0x0018e1cf,0x0002a0c6,0xffff9e53,0xfffecb22,0x00006410,0x000052bb,0x00007ad1,0x0000e45a,0x0000938f,0x00009106,0xffff117a,0xfffd3a33,0xfffc9694,0x00100bce,0x000c834c,0xffd1e5b6,0xffb1b478,0xffb93ba3,0xffefdb0f,0x0063102c,0x0114c17a,0x015b4402,
-0x0117052a,0x00a882b5,0x004a3a52,0x00419309,0x002f8be1,0x003b9b16,0x006d6ef2,0x00693a8a,0x00aef447,0x0134ad56,0x00bf7085,0x0056f61a,0x004e2541,0x0024cd85,0x0017977e,0xfffcbbed,0x00008515,0x00013213,0xffffb6d6,0xffffe621,0xffffe1d7,0xffff9b77,0xffffb7f8,0x00000621,0x000067eb,
-0x0001cc8b,0x00012c41,0xfff78931,0x0002a459,0x00061f70,0xffeab49d,0xfffc001f,0xffeea4e2,0xffc30575,0xff6b0e75,0xff2c476a,0xff31d4dc,0xffc1ff03,0x00513ea4,0x00b0788a,0x004e1288,0xffe3f235,0xff8d9158,0xff5e865c,0xff99d57c,0x00195799,0x004c677c,0x00a7722c,0x011f1948,0x00eabb74,
-0x00196fbb,0xfff26c27,0x00055b2b,0xfffbe668,0x0000f0e3,0xffffce4d,0x00001d5b,0x00001c9b,0x00000c18,0xffffd323,0xffff5c18,0xffff162b,0xfffe6114,0x0004be94,0xffff948e,0x0007e5b9,0x002c6bdf,0x0034e461,0x0046adf8,0x00587b51,0x00b36384,0x00ed3da8,0x00f73cfc,0x0025fd5a,0xff839978,
-0xff1a6ef7,0x00313095,0x00df56c9,0x00bf9c9e,0x010e3ca4,0x0083058f,0xff51006a,0x0007e43a,0xff082d26,0xfd236dac,0xff1308f5,0xfff96338,0xfffeba3e,0x0001fe02,0x000195d1,0x000076b2,0x00002cb1,0x00000eb8,0x00001319,0x00002258,0x0000835a,0x0000f817,0x00017208,0x0000ba25,0x00025e20,
-0xffe68072,0xffd3c398,0xffc0ce0d,0xffafe1e3,0xffa9c3f9,0xff939dda,0xff825157,0xff73769f,0xff8c2227,0xff99da61,0x0019b032,0x00aa427a,0x00e1a590,0x00454497,0xfee8d1ce,0xff37d2cb,0xff8d6ea3,0xffb498d2,0xffe56ff5,0xffcf14f8,0xfff2be4e,0x000c24c1,0x000e2e15,0x0015e5a3,0xfff04864,
-0x00011a1d,0xfffd417c,0x000020e7,0xffff9a7f,0xfffffad4,0xffff67a3,0xffff2457,0xfffdea32,0xfffde24d,0xfffd5a57,0xfffa9856,0x001fef17,0x0050f02a,0x006c62d7,0x006a4558,0x005d90cd,0x0048e01d,0x001f5dd6,0x000191b4,0xffe84ad4,0xffce3935,0xffa9d419,0xff93d3b7,0xff929149,0xffb90133,
-0xffe9b2d5,0xffc5f9d0,0xff935359,0xff7659ba,0xff93b234,0x0069a88f,0x0077b558,0x00536538,0x00360ac3,0x001fc27f,0x000945dd,0x00062a80,0x00017955,0x0000f171,0xffffc835,0x000016b9,0x0000ef21,0x00020649,0x0003a0ae,0x00052b35,0x00049f13,0x000bea19,0x0025004e,0x002a4f53,0x00224830,
-0x000ec559,0xfff90a80,0xffe1c272,0xffd12d47,0xffb8fabe,0xff96844c,0xffa3b101,0xffa74bd9,0xffa1d3b6,0xffa83242,0xffb26771,0xffd961b1,0xfff8feb4,0x0029f878,0x004d1dcc,0x006d9d8f,0xffd78f4f,0xffd1177c,0xffce4353,0xffd23019,0xffd2b333,0xffe24181,0xfff074cc,0xffff3182,0xffff9c13,
-0x00027cca,0x00013d44,0xffff81b4,0xfffc506e,0xfff96ce9,0xfff20eca,0xfff03f33,0xfff6c658,0xfffb2708,0x0005a1fb,0x001464d7,0x000a70d0,0x00070e98,0x00014e2f,0xffffade9,0xfffe63b9,0xfffb7ca3,0xfff2252a,0xffe811b3,0xffe04051,0xffe00e01,0xffdfea19,0xffda1a23,0xffdda8b9,0xffdae56f,
-0xffd6abef,0xffd2be10,0xffcc70c4,0xffbe26f9,0xffc1dbf8,0xffc93e05,0xffcee819,0xffd2ca3a,0xffd35422,0xffd7778f,0xffdc1540,0xffe34ef1,0xffea135b,0xfff0beb0,0xfff7073d,0xfffeada3,0x000db56e,0x00191531,0x00240cb0,0x003012eb,0x0040c191,0x00440dfb,0x004026d1,0x003f55e0,0x003d5950,
-0x003ba390,0x00392bc7,0x00397c6f,0x002f24bb,0x00285331,0x002092c1,0x00163fec,0x000b077c,0x00004ee9,0xfff558e1,0xffebecd2,0xffe53715,0xffd99698,0x000a5834,0x00058b14,0x000ccf6a,0x000ec7d2,0x00150bbb,0x000b55bd,0x0011f459,0x0017d5f0,0x001cbdc6,0x00202cf2,0x00243dba,0x00285ea1,
-0x002d4e2e,0x0030bfd5,0x002a7f18,0x002682cb,0x003869d1,0x00325876,0x003188d0,0x002edb4c,0x00300849,0x002fd4b4,0x002fce49,0x002fc7c7,0x002f6d60,0x002fed7e,0x002b0669,0x00269d3f,0x00221825,0x001e7ccd,0x001b8bd2,0x0018cc03,0x0016a65d,0x001361a3,0x000efe61,0x000c3e99,0x002ca33e,
-0xffe51a8b,0xffee26e2,0xffea0486,0xffe9a447,0xffe7c38c,0xffe738ef,0xffe81fe3,0xffe98a7d,0xfff779a2,0xffee721b,0xffeb1827,0xffea51f4,0xffdf0b06,0xffdd7939,0xffe8515d,0xffe296e0,0xffe5670e,0xffe8b947,0xffe5c790,0xffe62ff0,0xffe4b896,0xffe58802,0xffe46b03,0xffdff03b,0xffdfb684,
-0xffe1f455,0xffe759be,0xffedd55b,0xffec909e,0xffdcaf39,0xffe7a8eb,0xffec45b8,0xfff93c40,0xfff0257d,0xffedd317,0xffe71bf0,0xffee411e,0xfff1bcc0,0xffe91469,0xffeadbfb,0xffea8e54,0xffe99b5b,0xffe3fac4,0xfff1e4e9,0x00075b80,0xfffd6d38,0xfffbf413,0xfffad4e2,0xfff184a3,0xffee918d,
-0xfff708f6,0xffde90bc,0xffd87d49,0xffe950b9,0xffe9dbc1,0xffe42bd4,0xffda344d,0xffdb7b5c,0xffd02be9,0xffbf2229,0xffb83ba2,0xffc0c3ca,0xffd5f5f0,0xfff27d35,0xfff22041,0xffc6ac31,0xffe0c363,0xffef99de,0x001082ab,0xfff8711e,0xffedd299,0xffdd9a65,0xffeece54,0x0004b3f2,0xffeff2a5,
-0xfff4df33,0xffee018c,0xffeec8e3,0xfffc7b47,0x000314f8,0x00002982,0x0000323b,0x00025b60,0x0002880c,0x00062c2c,0x00050f14,0x000545b0,0x000650a2,0xfffcffbf,0xfff1f0f5,0xffe4e907,0xffe161d2,0xffcf9759,0xffdadcab,0xffcceba2,0xffb8f484,0xffadf434,0xffbdd2ab,0xffe1755d,0x00087ce9,
-0xffffb996,0xffa855b1,0xffe5678e,0xfffecea0,0x0046d1a0,0x000e7a5f,0x0003f316,0xffe53dbf,0x00051eb6,0xffffea75,0xffe64e7b,0xfff01759,0xfff46895,0x0002259a,0x00035ce1,0xfffeff8d,0xffffd110,0xffffe231,0xffff4124,0xfffe8341,0xfffd7e97,0xfffde116,0xfffd7266,0xfffe281b,0x00039b45,
-0x0001ea0e,0xffefe29b,0xffd8c977,0xffbe3ea8,0xffc351a6,0xff9d8be6,0xff5ecfeb,0xff3e5b31,0xff583fc4,0xffa93817,0x000880d4,0xfffa703d,0xff6e93e9,0xffc4760d,0x00095662,0x006fd221,0x00197e0f,0xffe6084d,0xffbb7d8e,0xffef8b09,0x002cbabe,0x0028ba44,0x00228de0,0x00067c2d,0xfffea8e3,
-0xffff168e,0xffffd44f,0x00009b75,0x00000c56,0x00005101,0x0000cb07,0x000120a9,0x0000eb2e,0x00016a3a,0x00001f12,0xfffea705,0xfffe9936,0x000ce3cd,0xfffabdbc,0xffe00acc,0xfff75704,0x0029b7f3,0x007546e3,0x00f1439d,0x0101aeec,0x009a8d3e,0x00569f5a,0x0031bde4,0x00434af4,0x004e663f,
-0x0048575c,0x0033c220,0x0058e54a,0x0087f563,0x00d037bd,0x0055cdd8,0x004790a3,0x002b1652,0x00207031,0xfffe40ce,0x0000b923,0x0000fceb,0xffff7f5f,0x00002c88,0xffff9e7d,0xffffcb1c,0xffff831f,0xffff862c,0xffff5881,0xffff9311,0xffff8dfe,0x0001be2d,0xfffec736,0xfffd5fcc,0x000b58ae,
-0xfffbc0c1,0xffe202e5,0xffbc48d0,0xff8c3943,0xff50a1c3,0xff4ed791,0xff8e17df,0x000cfd32,0x005d0f11,0x0060fd12,0x002fad99,0xffed89f9,0xffa66670,0xffb32e24,0xffec4930,0x004a009a,0x0060e5c9,0x00689e3e,0x00bede93,0x0084c026,0xfff86082,0xfffd1939,0x00017a09,0xffff8367,0x0000bc33,
-0xfffffebe,0x00007da6,0x00005600,0x000062bc,0x000077f1,0x000038da,0x00004ed3,0xfffed667,0x00007c03,0x0001dfa6,0xfffa270f,0x0018befe,0x003f6b97,0x00676029,0x0085192b,0x00d1b64b,0x00ce4ea8,0x007b3d81,0xffdf134e,0xff867030,0xff816ed7,0x004562fe,0x00acf1dc,0x00826279,0x008ebfb0,
-0x00173751,0xff6349d8,0xfff3061f,0xff66325d,0xfe34cc6c,0xff5c8951,0x0017f370,0xfffe0c8a,0x0000d9a3,0xffffb071,0xffff5bf8,0xffff75ea,0xffff6a57,0xffff6cdd,0xffff81ec,0xffff9f13,0xffff8459,0x00007165,0xffffe9ca,0x00033d6c,0xfffcfb1e,0xffd211c6,0xffb3d409,0xffaf5048,0xffaa5ffb,
-0xff9b75d4,0xff9bf133,0xff9e0ad4,0xffb3c77d,0xffdbe236,0x004489c4,0x00cea26c,0x0063db98,0xffd25f39,0xff22199b,0xffa5f211,0x00068675,0x0026db78,0xfffab29a,0xfffaddea,0xff376b61,0xff7cfa52,0xffe2b1f0,0x00036664,0xfffe0d8e,0x00016faa,0x0000dda3,0x0001675e,0x0000f780,0x00011d5b,
-0x0000ef2d,0x00008591,0x0000d590,0xffff181f,0x00009223,0xfffa298f,0x00035201,0x002f9fed,0x004f469a,0x004b6f30,0x0042b5de,0x00322eeb,0x0013a310,0xfffa4a69,0xffe035c8,0xffd6f41c,0xffbd7ef8,0xffb9c98c,0xffbad575,0xffe04932,0x0001f9c6,0x0000d3dc,0xfff382e1,0xffe58a50,0x002212bc,
-0x004bb0e1,0x0062f120,0x0054d7fb,0x00276d14,0x00058ee2,0xfffefc5b,0xffffb3f8,0xfffc8ee1,0xfffda696,0xfffd8c5b,0xfffdbba6,0xfffe1c69,0xfffe8f99,0xffff2cb5,0x000001ef,0x0003b181,0x00017467,0x001a9aaf,0x002fab4b,0x0031a052,0x0021edad,0x00112947,0xfffbbe17,0xfff1ffd3,0xffde7138,
-0xffbd8552,0xffbd0fe8,0xffba572f,0xffb57273,0xffbd6e08,0xffc8ab70,0xffebf495,0xfff703ab,0x0017c6b2,0x002cbf48,0x00427478,0xfff912e3,0xfff83e6b,0xffefcadd,0xfff830fa,0xfffa3401,0xffff2e3b,0x00053d98,0x0007fce5,0x0005d861,0x0005d423,0x000530f4,0x00049810,0x000356b1,0x00031eef,
-0x0000a1fd,0xfffa9b27,0xfff610c4,0xffefd8cf,0xfff145ba,0xfff9c8c0,0xfff0fee8,0xffee861d,0xffe95751,0xffe39569,0xffddf86d,0xffd78b9e,0xffdb1b84,0xffdc6d4b,0xffdf4a48,0xffe60fc8,0xffeb7d84,0xffed4824,0xfff0a231,0xfff04531,0xfff0e718,0xfff3fa7d,0xffde6eeb,0xffd7b341,0xffd36bc4,
-0xffd8a019,0xffd862f2,0xffdce8c6,0xffe27956,0xffe84553,0xffee298c,0xffef72a5,0xfff17e32,0xfff36812,0xfff51f7f,0xfff5d42e,0xfff7e620,0xfffcf63e,0x0006b374,0x00133a5c,0x002699b3,0x0028c2fd,0x00233af0,0x0020b3fa,0x001d9982,0x001a4434,0x00175c38,0x0014690c,0x000f9846,0x000bb929,
-0x00077fe1,0x00019db7,0xfffba397,0xfff6410f,0xfff15240,0xffed9ad2,0xffea3f38,0xffe480fe,0xfff94be6,0xfff81096,0xfffa7d83,0xfffafb04,0xfffd9b0b,0xfff75c62,0xfff81f1c,0xfff80a61,0xfff96b0a,0xfffc17bf,0xffff1b21,0x0001fa15,0x00058bc8,0x0008f12d,0x0009fe2a,0x000998e1,0x0017f1f3,
-0x00133efd,0x0011d782,0x000f1ccf,0x000f2c9e,0x000e0824,0x000ce8f0,0x000c153c,0x000afac9,0x000a0de2,0x0007c5a9,0x00058ff5,0x00039390,0x00023cd1,0x00014958,0x000068bc,0xffff60ba,0xfffdb23a,0xfffbbbfd,0xfffa718a,0x00085ff4,0xffebb4be,0xfff0ba6c,0xffecf77d,0xffed8c96,0xffed17a7,
-0xffeb353d,0xffed5260,0xffef5113,0xfffabad5,0xfff427ec,0xfff1ec4d,0xfff1f51f,0xffec7a16,0xffeab32e,0xffedf2f4,0xffeae0da,0xffebfb30,0xffe93bbb,0xffee76a0,0xffee988a,0xffedea68,0xffec4aca,0xffeafbc3,0xffe7151b,0xffea3c96,0xffebcae5,0xffed4acf,0xfff06647,0xffeef679,0xffe4510c,
-0xffecb580,0xfff03141,0xfff9b50e,0xfff1af59,0xfff04463,0xffee8008,0xfff14a44,0xfff246e6,0xffea186d,0xffee56a2,0xfff0f77f,0xfff0fd08,0xfff6518e,0xfffe974d,0x0002ea33,0x0000aa4c,0x00016b00,0x0001b4d6,0x0001042b,0x0000d642,0x000258b7,0xfffcaaf3,0xfff6f82e,0xffef6990,0xfff35cc0,
-0xfff0c3ae,0xffe819c5,0xffe293fa,0xffd97cec,0xffce6291,0xffd48cb8,0xffdc0795,0xffe3896a,0xfff252b1,0xffeed0a2,0xffd1af90,0xffe533bc,0xfff06375,0x0007f37f,0xfff5356e,0xffef2b8c,0xffeb29fb,0xfff1baf4,0xfffad745,0xffe59214,0xfff35a50,0xfff85a16,0x00009192,0x00038612,0x000143a8,
-0xffff0092,0xffffe03f,0xffffebfd,0xffffa1cb,0x00003885,0x00003241,0x00000a0e,0x00013d42,0x00046b5a,0x00022415,0xfff9a08e,0xfff47a83,0xffe7a0cf,0xffe3b606,0xffd807c2,0xffc7ad8d,0xffd32368,0xffdea646,0xffe8a5fa,0xfffaeb20,0xfff01328,0xffb9ebbd,0xffe6abcf,0xfff7d64f,0x002a5d37,
-0xfffce340,0xfff91420,0xfff2dcd7,0xfffbb728,0xfff794b0,0xffdccf0b,0xfff67957,0x000120c1,0x00013507,0xfffe3c0e,0xffff6e26,0x00002681,0x0000268b,0xffffef3d,0x00003d5a,0xffffce0e,0xffffb57a,0xffffde69,0xffff3230,0xfffdb95e,0x00004244,0x0000decd,0xfff38934,0xffd9db07,0xffc98c5f,
-0xffaa430e,0xff837a39,0xff92a668,0xffad2b91,0xffccff52,0xfffc2275,0xffe5f0ef,0xff8c3804,0xffc7a3f8,0xfff9be3f,0x00429f22,0x000361ed,0xffe755cd,0xffe23365,0xfff426d4,0xffff22c2,0x00142d74,0x000b1117,0xfffe6873,0xffffc2a5,0x00005161,0x0000a4c1,0xffffa3ba,0x00001071,0x00001658,
-0xfffffcfd,0x00001c85,0x000032dc,0xfffff326,0x0000ac95,0x0000ea85,0xffffc379,0x000009cc,0x00069fd8,0x000a4f1b,0x00215fb0,0x0044d8da,0x0069073b,0x0096b153,0x00875beb,0x0039ffec,0x001478cd,0x0011fc67,0x0029b841,0x004c4082,0x003d429d,0xfff9dcdc,0x002f3267,0x00480681,0x00629a41,
-0x00127e8d,0x002cd539,0x001a8149,0x00046bf9,0xfffabf88,0x0003a258,0xfffdde15,0x0000f9d4,0xffff75c8,0x0000445d,0xffffdc9a,0x000007ca,0xffffe833,0xffffff20,0xffffe368,0xffffd216,0xffff49a9,0x0000bc7a,0xfffe2df1,0xffffaa27,0xfff160d9,0xffcbf3e3,0xffa82e4f,0xff887760,0xff75dc2d,
-0xff9522c2,0xffda005b,0x002f7173,0x005052b6,0x002d8802,0x0013aa1d,0xfff2cc50,0xffca3a2c,0xfff21097,0x001b107c,0x004b1c32,0x004e2362,0x002c066d,0x0057cf5a,0x00210411,0xfff351e4,0x0003ff94,0xfffee60e,0x0000880f,0xffffd57b,0x00003c08,0xfffffc6b,0x00001255,0x00000f58,0xffffff5f,
-0x00003574,0xfffff78f,0x0000c118,0xfffed827,0x000156e5,0xffff73b3,0x0010ddef,0x003b77b7,0x0060472f,0x007e7370,0x009a183a,0x00772453,0x001dba69,0xffc47137,0xffa7ca16,0xffd53a0e,0x0037fe95,0x005ee7e3,0x0042b7c5,0x001902ad,0xffd06a31,0xff9b1e95,0xffee85a9,0xff9ad7fc,0xff36c280,
-0xffd95045,0x0014aaae,0xfff886fe,0x00021b76,0xfffe9aa4,0x00004806,0xffffabaa,0x00000078,0xffffe1e5,0xfffff1be,0xffffe1d4,0x000002ea,0xffff9921,0x000024c3,0xfffec76a,0x0004d1fa,0xfff120ef,0xffcd5030,0xffcdc081,0xffc63939,0xffbd598a,0xffc6b569,0xffd14efb,0xffdf2e70,0x001c976b,
-0x005309f8,0x008ae621,0xfffce60c,0xffa8c474,0xff962c4a,0xffdf026c,0x002268ed,0x005bee01,0xffdf6088,0x0047d512,0xff574673,0xffb5d5e8,0x00094ade,0xfffe1ce9,0x0001bcb2,0xffffd99f,0x0000a1bc,0x0000051a,0x000051fd,0x00002076,0x00003074,0x00002f58,0x00001da6,0x000064d7,0x000012e8,
-0x00011e5a,0xfff96a15,0x0011bed8,0x00332620,0x0028ec35,0x00219aa5,0x00120ace,0x00036844,0xfff2fa69,0xffdc8409,0xffd81380,0xffcbf68a,0xffd91b66,0xffdab963,0xfffa8bfa,0x001c2c4e,0x003c62a9,0x004ffb15,0x005fe33e,0x00814668,0x000cf04b,0x003021a9,0x002f3da3,0xffff9d6e,0xfffc7a32,
-0xffff5936,0xfffe49df,0xffffa8d1,0xffff6562,0xffff9f61,0xffff9b82,0xffffaefa,0xffffad1e,0xffffb140,0xffff5903,0xffff43a4,0xffff556a,0x0003c6ae,0x001c85e8,0x0028eb29,0x00202bf8,0x001a4c09,0x000d3085,0x00073330,0xfff97f8f,0xffe41a6b,0xffdc7e37,0xffd905b9,0xffd6fcaf,0xffdc0013,
-0xffdef23e,0xffe9054f,0xffe24090,0xffeb884c,0xfff36c41,0xfffa66bb,0x0011cb13,0x0014e53b,0x0008ca37,0x00067245,0x000381d5,0x000368f3,0x00020c08,0x000079c6,0x0000bf21,0x00007785,0x000091c7,0x00006c3f,0x000069dd,0x000061b8,0x0000e9bf,0x0001ff7d,0x0000fae0,0xfff83313,0xffed2b50,
-0xffeae50e,0xffe83ef7,0xffe711d0,0xffe53331,0xffe0f109,0xffdce2d5,0xffd856c0,0xffdc0a23,0xffddafc3,0xffdf8de8,0xffe86ffc,0xfff048b6,0xfff7e4ee,0xfffd7058,0x000160e2,0x0006f640,0x000e736f,0xffeaf21d,0xffea7471,0xffe740eb,0xffeec661,0xfff066da,0xfff5e281,0xfffcd856,0xffff22ef,
-0x00001358,0xffffa54f,0xffffbaea,0xffffa171,0xfffffbd0,0xffffcd29,0xfffe1cb6,0xfffabf25,0xfff891a5,0xfffa3e56,0x0005646c,0x00054c05,0x00013f92,0xfffe9d80,0xfffc3001,0xfff942a9,0xfff71ee3,0xfff46ee7,0xfff4445a,0xfff41df8,0xfff360f2,0xfff1c3a0,0xffef9de8,0xffed7c45,0xffecc8eb,
-0xffecad41,0xffeb69cf,0xffeab7f2,0xfff22098,0xfff2ca7d,0xfff1d674,0xfff062ee,0xffefd2a8,0xffef10b3,0xffee8d8f,0xffeea8a0,0xffeee9b4,0xfff0235f,0xfff1233f,0xfff228dc,0xfff307bb,0xfff4601a,0xfff51e0e,0xfff528b6,0xfffc34af,0xfffb4f23,0xfffa3a48,0xfff7d21b,0xfff7688d,0xfff65ac1,
-0xfff52ed5,0xfff45f53,0xfff35fc1,0xfff203f4,0xfff1e3fe,0xfff18359,0xfff18e93,0xfff1ad7a,0xfff22fd9,0xfff2bbd5,0xfff2cb3f,0xfff2a776,0xfff2d9e5,0xfff2a2fe,0xfff2a8fc,0xfff75925,0xfff8dc97,0xfff7b0c7,0xfff789ed,0xfff6df6e,0xfff53789,0xfffc7232,0xfffcfff7,0xffff91d1,0xfffe6f88,
-0xfffe2588,0xfffe320a,0xfffd95d7,0xfffd6773,0xfffdc1d4,0xfffcd65a,0xfffce454,0xfff3ddac,0xfff859bf,0xfff95b14,0xfff921fd,0xfff7dc70,0xfff74dcc,0xfff5c6e0,0xfff7979d,0xfff81405,0xfff8039b,0xfff88b52,0xfff7f647,0xfff4e575,0xfff789a8,0xfff8c3af,0xfffc301e,0xfff93710,0xfff8f22b,
-0xfff9617c,0xfff979bb,0xfff99cbe,0xfff5d4d0,0xfff6dbf9,0xfffe33bc,0x0000a067,0x00022e0b,0x0000fd05,0x0000b2f9,0x0000a577,0x0000edd2,0x0000d9f7,0x00012c2b,0x00010350,0x00014df3,0x00011cff,0x00026597,0x0000dce0,0xffff6c3f,0xfffac5d8,0xfff7cd22,0xfff3b680,0xfff01b63,0xffecc284,
-0xfff142d2,0xfff40b93,0xfff4e4a5,0xfff82ec7,0xfff65fcf,0xffeddcd9,0xfff3e281,0xfff7e897,0x0000547b,0xfffa09e1,0xfff8ae35,0xfff9d428,0xfff9e099,0xfffc17c7,0xfff0411a,0xfffe4a59,0x0001da99,0x00006a47,0xffff5831,0xffffa3e1,0xffffccac,0xffffdbb4,0xffffcd8b,0xffffc3a5,0xffffb432,
-0xffff9cb2,0xffff99de,0xffff9e6f,0xffff3349,0x00001be8,0x0001874b,0x000052a2,0xfff9a355,0xfff5207d,0xfff09a8e,0xffea4e1c,0xfff2b6dd,0xfff69280,0xfff64c88,0xfff94ce6,0xfff4a322,0xffe6350f,0xfff3e2e8,0xfff9a548,0x000b1a8b,0xfffb1b32,0xfffb84ef,0xfffeae0a,0xfffc5a2b,0xfffa8833,
-0xffedcab5,0x00025287,0xffff93ba,0xffff74ce,0x00006056,0x00004464,0x00003a8d,0x00002ae8,0x000043f7,0x00001fda,0x00003712,0x00003f2f,0x00003088,0x000024de,0x00008e0e,0xffff4f69,0x00002c60,0x00004bf6,0xfff5ec3c,0xffe82431,0xffdc67f7,0xffd0c787,0xffdf2461,0xffea3787,0xffeedc13,
-0xfff85ebc,0xffeed838,0xffd55443,0xffe6aeff,0xfff82b36,0x00121192,0xfffd5602,0xfff71a03,0xfffd41d6,0xfffc6657,0xfff9840d,0x00047e23,0x00007bd0,0xffffbefe,0x000051f5,0xfffff568,0xffffac1c,0xfffffb0a,0xffffe274,0xffffe6ad,0xfffff7a3,0xfffff009,0xffffdff4,0xffffed90,0xffffccad,
-0xffffe5c3,0x0000419c,0x0000020b,0xffff46ff,0x000fa7d1,0x001a84f8,0x0026e6ac,0x0031604f,0x002fffce,0x00236721,0x000c6647,0x0000c3dd,0x0004d756,0x000ee0d9,0x0021e488,0x00192666,0xfff11204,0x000d0c77,0x00132c28,0x0015785a,0xfffdea32,0x00114cae,0x000b845b,0xfffb4790,0x0001ef21,
-0xffff0023,0x000095a4,0xffffe55f,0x00004b98,0xfffffcfb,0x000010ba,0x000009a0,0x0000117f,0x00000fbf,0x00001870,0x000019d4,0x000015ce,0xffffe8eb,0x00002563,0x00013245,0xfff2649a,0xffe014ff,0xffd262bc,0xffc927d6,0xffcba083,0xffdeb49c,0xfffb53c2,0x001a0ef7,0x00212c4c,0x000d0c34,
-0x0002ca61,0xfff9659d,0xffed66d9,0x0007fc36,0x00176925,0x00218e0c,0x001e48d3,0x00081b43,0x000f3f53,0xfffef095,0x0000460f,0x000020fe,0x000010bf,0x00000fe3,0xfffffc74,0xffffe34f,0x00000015,0xfffff210,0xfffff585,0xfffff87f,0xfffff3d4,0xffffff9a,0xffffe30c,0x00005bc2,0xffff8936,
-0x00003b7b,0x00086bae,0x001afe24,0x0028ce0f,0x00341561,0x003263e6,0x001dd7de,0xfffb2ca3,0xffdec853,0xffdd5993,0xfffbe414,0x0014c776,0x001b0b01,0x0012d53c,0xfff1f97f,0xffdb7ec6,0xffde4459,0xfff72adf,0xffd82ce9,0xffd18b95,0x00098cfb,0xfffd70dd,0xfffffe37,0x000024af,0x000000fd,
-0x00000b3a,0x000010e0,0x00000d5a,0x00000b64,0x00000fd7,0x00000f5d,0x00000a5e,0x000016a6,0x000017dd,0xffffc162,0x00005d37,0x0000a16d,0xfff30fe8,0xfff06c2e,0xffed49be,0xffeba4ed,0xffefb444,0xfff785ba,0x00007cd8,0x0021048e,0x002beb82,0x00299bc4,0xffecd1fc,0xffd6772f,0xffe93b46,
-0xfffcddd6,0x00145bf8,0x002f25c1,0xffed9126,0x0036b0af,0xffe152ec,0x0002c390,0x000197db,0xffff02ba,0x000091db,0xffffae96,0xffffeb4a,0xffffe29c,0xffffe82f,0xffffef71,0xffffeb55,0xffffe99a,0xffffe7b1,0xfffff106,0xffffcb94,0x000089d1,0xffffd0ad,0xfffe4208,0x0010c8f2,0x000b0d52,
-0x0007f9c2,0x0000859b,0xfffc754e,0xfff702fa,0xffee9f6d,0xffed0b4e,0xffeb1eaf,0xfff3f8fb,0xfff8a58a,0x00094d5c,0x001d1b87,0x00308f52,0x003e5e5a,0x004d191c,0x004bf21c,0xfff40c3e,0x0008b483,0x000317c6,0xfffcc23b,0x000189bf,0xffff95dd,0x0000a766,0x00002938,0x000047f1,0x00002f05,
-0x00003256,0x000023a4,0x0000310a,0x00002837,0x00006246,0x00000eae,0x00005b9b,0xfffeb562,0x0001f165,0x0010f66a,0x000e1661,0x000e3da0,0x000a1a2f,0x00070cd0,0x0001bfea,0xfffb7500,0xfff7542b,0xfff5fb9f,0xfff57722,0xfff4e299,0xfff2466b,0xffefb673,0xffe8df3f,0xffe7b0db,0xffe95d40,
-0xffea8d38,0x000eaf12,0x001300fe,0x00049276,0xffffa528,0x00003982,0xffff6031,0xffff6fe2,0xffff8388,0xffff7f71,0xffff90f4,0xffff86a4,0xffff9a4e,0xffffa0c7,0xffff9e01,0xffff9fae,0xffff770f,0x00003db0,0x000228b1,0xfffd45a8,0xfff5c07d,0xfff67840,0xfff571ca,0xfff524e8,0xfff38927,
-0xfff22246,0xfff0669a,0xfff1146f,0xfff0fd73,0xfff0e1ea,0xfff5419a,0xfff98133,0xfffe1253,0x00024edd,0x00062379,0x000a2633,0x000e7617,0xfff88f38,0xfff9b71c,0xfffaa77b,0x0000aff4,0x0000bbbc,0x0001d447,0x000175b1,0x0001bf9e,0x000125a3,0x00017846,0x00015db0,0x000177c7,0x000131a3,
-0x00017a50,0x0001699c,0x0001d457,0x00010ae8,0xfffe4043,0xfff99463,0xfff916b4,0xfff8d5d0,0xfff780fd,0xfff6f516,0xfff5f272,0xfff55f9e,0xfff49635,0xfff58cae,0xfff65bc9,0xfff6acb2,0xfff6b9f0,0xfff657c6,0xfff5e0a6,0xfff64f60,0xfff6da68,0xfff6cff7,0xfff78167,0xfff939b0,0xfff9cbe2,
-0xfff79681,0xfff6efd6,0xfff60bef,0xfffcef12,0xfffc9aee,0xfffcff38,0xfffcfd81,0xfffcff0e,0xfffcf933,0xfffd051f,0xfffd11c2,0xfffd35df,0xfffcb524,0xfffcaf46,0xfff68911,0xfff779ec,0xfff7be7c,0xfff82f76,0xfff758ca,0xfff72d7a,0xfff6c569,0xfff685bc,0xfff63a4c,0xfff5ad85,0xfff5fdc3,
-0xfff62cd1,0xfff6a08b,0xfff6f7fb,0xfff78045,0xfff80434,0xfff8484b,0xfff884ee,0xfff8f780,0xfff924db,0xfff60a28,
-};
-
-const UWord32 defaultHRIR_rom_EL48_fx[HRTF_MODEL_N_SECTIONS * 470] /*Q28*/ = {
-0x047ee788,0x04713840,0x0529a410,0x03f0b798,0x047f3c18,0x04837bb8,0x04e6ef58,0x050a0848,0x0526d1d8,0x04dde4d0,0x04b03170,0x047a5f98,0x04557be8,0x0435aef8,0x04219f28,0x0409e930,0x03f53628,0x03e081f4,0x03d08964,0x0369480c,0x0461f8f8,0x03f57950,0x04942f18,0x079476f0,0x03dd0b88,
-0x04674460,0x06ce48b8,0x06f8dec8,0x06d02058,0x05eebea0,0x06d4bdf8,0x070a0ab0,0x06c2bbc8,0x04869fb8,0x043c8778,0x07602090,0x05466bc8,0x06734928,0x0623ed08,0x05ecd400,0x06cb3718,0x073ef9f8,0x08a6b430,0x0950db10,0x0967f000,0x08730820,0x0790aa90,0x06a725e0,0x06043808,0x05971410,
-0x055f9e40,0x051af2d8,0x04db0270,0x04a8cbc0,0x04471a50,0x03e65d80,0x03d55ac8,0x03f1c30c,0x0262b518,0x02aa95ac,0x020ed324,0x020401a0,0x02518068,0x024c6378,0x02ac6c04,0x028bd768,0x02a47034,0x029fb52c,0x023afb38,0x029aee10,0x02ab931c,0x03179200,0x03cc4100,0x04b6e170,0x05df2bb0,
-0x08df63b0,0x09850580,0x0af4f390,0x0df633e0,0x0f701810,0x101271e0,0x0df3a680,0x0c19c660,0x0a3635f0,0x08bb2910,0x079d8690,0x06f88bf8,0x06329f50,0x058aaa60,0x051baa78,0x040cf888,0x03d4db3c,0x0256c2bc,0x022f9468,0x018def10,0x017408d8,0x013c617a,0x012fb63e,0x011198c4,0x011fe900,
-0x01411f90,0x016e0bda,0x0103c6d2,0x0143d1f6,0x01458bb8,0x0184cb5e,0x01ccadcc,0x0295b4e8,0x03662edc,0x05779610,0x07f710d8,0x0c445550,0x0e438ad0,0x1188e8e0,0x171c20e0,0x1ada0d40,0x1b6493c0,0x16192cc0,0x11677b40,0x0ccb4360,0x09ca18e0,0x0830e800,0x078c3a60,0x06a08cf8,0x05cd1118,
-0x054eadf8,0x0414b7c8,0x033acf98,0x01e9b21a,0x0160ca16,0x00ef6077,0x00c4b0ec,0x0085342e,0x006c60d4,0x005f88cd,0x0068975f,0x00741f56,0x00849cbf,0x006357bd,0x00659d8b,0x0086da74,0x00ce2e2c,0x01862670,0x01d2066c,0x02f90050,0x0c7f6490,0x14248b40,0x1a759580,0x1bcefec0,0x1d850a60,
-0x1cb27bc0,0x1d2c0a00,0x1f48b040,0x1fa5a680,0x2106e2c0,0x215071c0,0x207a2f40,0x1dac2c80,0x19dcbbe0,0x149253a0,0x0fb48130,0x0bf3f700,0x075c72e8,0x05423308,0x0353ba94,0x02498c04,0x01465f62,0x00e61c88,0x0097185e,0x007ce61d,0x0067d1ee,0x0083dfbc,0x00880ea1,0x008bfb8e,0x008e3e9b,
-0x00ba2b8b,0x012fa7a4,0x01bf3ebe,0x02b2ff8c,0x03acf244,0x070e78e0,0x0ca20140,0x0f890ed0,0x29354340,0x2bcf8040,0x2b3a3e80,0x240b8800,0x24489e80,0x25947fc0,0x234bc5c0,0x22403600,0x223ca000,0x21a3e3c0,0x2049b680,0x1e08af60,0x1732d8c0,0x1173c560,0x0e068b50,0x08be8a00,0x06ad6568,
-0x03a3bb24,0x0316dae8,0x01d0338a,0x0143dbea,0x00c288a4,0x00951188,0x007a93fd,0x00904a92,0x00a6fca8,0x00cf20b7,0x00c09322,0x00d9f3cc,0x012d57e0,0x01910c14,0x02554ed8,0x03b701b8,0x06253a60,0x11551d60,0x1f1676e0,0x4044b000,0x3da3bc80,0x4e17c500,0x31e73a00,0x2a9f9500,0x2751f000,
-0x20b2e400,0x21318200,0x2531f5c0,0x2669ca80,0x26535c00,0x23492840,0x1b788160,0x13a8fa20,0x0ddb62b0,0x08b1d4b0,0x06d676a0,0x03af2978,0x032347a4,0x022ffd94,0x0221dcf0,0x01441378,0x00f73fcb,0x011cb7be,0x00e759bc,0x00ff6a8d,0x01a48b34,0x00e7597f,0x00e70b0f,0x013c8d22,0x02ae4ec8,
-0x02f0e6f0,0x07b76160,0x05f5cdc0,0x138c50e0,0x28bbd780,0x46277d00,0x3ebff580,0x4f610000,0x2e7bb300,0x2478e300,0x20d23a40,0x2413ebc0,0x26b52200,0x26356b00,0x22e968c0,0x1f3c8440,0x1a00eda0,0x13e04ce0,0x0e7bd920,0x0a2bc440,0x074c8bb8,0x060a9228,0x040a6380,0x03830810,0x024fb50c,
-0x02148b64,0x016f7ce2,0x011eb7e8,0x00fb9b42,0x00d09e3a,0x01027b8c,0x029a5434,0x0124cdc6,0x00fc2af0,0x0147ac78,0x0181d576,0x026f93b4,0x038fccec,0x05e7e960,0x102cf660,0x1a7a7ae0,0x2c199640,0x26fd9d40,0x26a159c0,0x1e245ea0,0x1bab0780,0x1b6280a0,0x1980e7a0,0x1a58bfe0,0x1e617140,
-0x1b48a2c0,0x17a105c0,0x12bb4020,0x0d828c30,0x09eb26d0,0x07f1e260,0x06c16588,0x06317170,0x052caff8,0x03f8c410,0x02eafcf0,0x0220fdec,0x01be0c20,0x0176ca92,0x0122d932,0x010ae908,0x01246a7c,0x01c39e6e,0x01477936,0x0163129e,0x01ca2e50,0x02567c68,0x02ece5d4,0x0466ca00,0x0c3a2e90,
-0x0f289960,0x0e3e8c90,0x11fd0680,0x108e66e0,0x11180280,0x11c29d00,0x1203bb60,0x12083580,0x112c6cc0,0x10ca35e0,0x0fd258b0,0x0dd57410,0x0c3b1710,0x0b1f8960,0x0a2f7110,0x08866af0,0x06c55750,0x05f76da8,0x06658848,0x0483a1b0,0x048a3498,0x0368db0c,0x033f1f24,0x02437f8c,0x0198f898,
-0x0153a220,0x0153ddba,0x016d4c8e,0x019e5a42,0x01948648,0x019641f0,0x01aed59a,0x021b9ec4,0x02eee54c,0x03ad5210,0x06315d90,0x074324c0,0x08fc5a60,0x0af9c4f0,0x0c24b8a0,0x0e698b40,0x0e373a80,0x0e840c30,0x0f2a08d0,0x0e309060,0x0da68af0,0x0d5591c0,0x0bb87800,0x0a7ffaf0,0x097a4700,
-0x087f8630,0x078c1ff8,0x06c7dbd0,0x062077e0,0x06381f98,0x054738b8,0x04b0cd00,0x03d48254,0x03581e28,0x02d0cf74,0x02c26abc,0x025017a8,0x027cc68c,0x024ef0d8,0x02af6178,0x01f80434,0x0286c61c,0x0229ac74,0x02f85a2c,0x03becc18,0x0526b818,0x05def660,0x0a70a8c0,0x08d26d40,0x086397f0,
-0x08e37d90,0x095e3750,0x09ebe390,0x0aa105e0,0x0b888390,0x0ac28de0,0x0a40c2e0,0x09c30e80,0x093f64f0,0x08d419a0,0x08691270,0x07f4f188,0x077796b0,0x07190288,0x06c584a0,0x065ad0b0,0x066464b8,0x06ed5930,0x04dc37f0,0x05305e80,0x04ab0e98,0x045a38a8,0x04c4df58,0x04d51490,0x055db0b8,
-0x04e1a428,0x0558f988,0x052b1f90,0x04822f78,0x051d4b90,0x055af080,0x05e288b0,0x06bbc6d0,0x07fcd0b0,0x08eb71f0,0x0740fbe8,0x07dd5a50,0x07def188,0x081c9770,0x083f32b0,0x088e4a80,0x082f0f50,0x07fc2d08,0x07c5ceb8,0x079b4468,0x07753950,0x07509840,0x073e8a48,0x0729f358,0x070d07e8,
-0x0700c520,0x068c57b8,0x07dba610,0x0758e450,0x0849b810,0x0c78aed0,0x0733fac8,0x07f231b0,0x0ba7d680,0x0bfe2840,0x0b8520c0,0x0a3fc6b0,0x0b73f8c0,0x0ba35810,0x0b0c2ac0,0x08203210,0x07ca9cd0,0x0c67e180,0x08feb900,0x09449080,0x0006fc56,0x0008df1f,0x000a4278,0x0004cb61,0x00061183,
-0x0004f88b,0x0007a721,0x000879d6,0x00084462,0x000826b9,0x0007c6d3,0x00072255,0x0006f4d1,0x0006ed76,0x0007381e,0x00075eb1,0x000768e3,0x00074e2f,0x00073e30,0x00059e09,0x000a1ac9,0x0008f8df,0x000ad6e6,0x0017f2f1,0x00090cf8,0x000a344b,0x0014b1c1,0x001521ca,0x0014c9e9,0x00113cfb,
-0x0013f39e,0x001410ea,0x00126b03,0x0009dca1,0x0009aee8,0x00158650,0x000c47be,0x000bed8b,0x0009c642,0x000556fe,0x00058723,0x00040d7e,0x000b6255,0x000ee551,0x000dd548,0x000e3bb6,0x000cf42d,0x000b55d5,0x000a5727,0x000a575b,0x000b67ed,0x000c5989,0x000cbd8a,0x000c707c,0x000ade5e,
-0x000960e6,0x00097a54,0x0009b236,0x0003d625,0x00056afe,0x00023d58,0x0002070b,0x0003b591,0x0003d353,0x0005e78d,0x00055cfd,0x0005763a,0x000465a7,0x00024e7c,0x0002e3e8,0x000240c8,0x000506d1,0x00064371,0x000658be,0x00067677,0x0006db36,0x0005e7ba,0x0003375f,0x001284b7,0x001c04d4,
-0x0018daac,0x00199664,0x0015f9ac,0x001320c6,0x0010aef4,0x000ff7f6,0x001235ac,0x00127fd2,0x00129e0e,0x0011f4a8,0x000d78dd,0x000e1153,0x0006469c,0x0006dd11,0x00054163,0x00048ce1,0x0002f3cf,0x00024184,0x0001e218,0x00029502,0x0003f2be,0x00046c67,0x000286aa,0x000265cc,0x00019c56,
-0x00017394,0x0001c8e8,0x00062252,0x00042855,0x0006e44a,0x0006c633,0x0004def7,0x00030808,0x00027ebd,0x0018c968,0x002c4ba5,0x00272969,0x00285429,0x0023b60d,0x00206cae,0x001ca112,0x001cfd55,0x0020d9f8,0x002392f0,0x00242754,0x00213255,0x00176a01,0x0011b0af,0x000a216b,0x0008e65a,
-0x00084098,0x00082551,0x0004ab60,0x000279dd,0x0001dfb0,0x00031336,0x00049d21,0x00063cad,0x00043ebb,0x00033a7b,0x0001a04f,0x00028e3a,0x000252b5,0x000c4521,0x0007d02b,0x001cbe59,0x00135b3a,0x001baf78,0x001f10c6,0x002b22db,0x0028dc28,0x0029273b,0x002cb33a,0x00246c03,0x001c83be,
-0x001e7015,0x00194ded,0x00127479,0x0009830f,0x0004e356,0x0004d96a,0x000d1b41,0x000af2ba,0x0011c250,0x000add73,0x0009f44d,0x00085465,0x0007bb19,0x000460a4,0x00031d10,0x00026d79,0x00012060,0x000167fb,0x0005cc43,0x0004c3ff,0x00064d09,0x00066521,0x000817a5,0x000491c2,0x000a96a6,
-0x00149d7a,0x001ec756,0x0028954a,0x000da90c,0x000782d1,0x0016dfe9,0x0017f089,0x00116698,0x000b844b,0x00052588,0x00052c29,0x0004cb1a,0x000357c2,0x00036ee5,0x0003e3b7,0x0008fd64,0x00132650,0x0023ff0b,0x0012ff5b,0x000bb185,0x0004030a,0x0002a2ae,0x0001d271,0x00023d54,0x0002b35a,
-0x00022ae8,0x000151fd,0x00022318,0x000295c0,0x00029690,0x0000d85c,0x00010d2f,0x0003b1e3,0x0006d54b,0x0006bec0,0x000a5c57,0x001849e4,0x000bbe10,0x000ffb4b,0x000bb429,0x00139559,0x005099df,0x006c795e,0x007850d1,0x006a5e77,0x003c4f07,0x0022e8a7,0x00149e82,0x0028203d,0x0034fc62,
-0x0030afcc,0x001faf17,0x000bdef1,0x0002031b,0x00029047,0x0004ba1a,0x000645db,0x0002e7f6,0x00014b1a,0x00018ff6,0x00016526,0x0000a80a,0x0000a76c,0x00008d43,0x0000465a,0x000039b0,0x00011bc8,0x0001e771,0x000262de,0x00035066,0x0004d778,0x00070aa2,0x00082857,0x001c3030,0x002426f0,
-0x004be8d2,0x00694b32,0x00a60355,0x006981bd,0x00371fca,0x000fe69d,0x000acd4a,0x000adc17,0x000b7434,0x0008c298,0x000744a1,0x00047daf,0x0007c815,0x000b5a6a,0x000c4fd5,0x000a0c31,0x0005cbc3,0x000307af,0x00024155,0x0001a290,0x00016e7e,0x00015fc4,0x0000df0f,0x00009e3c,0x00005504,
-0x000064bd,0x0000a43a,0x0000d0ef,0x000128de,0x00039257,0x0002dfe6,0x00067fc4,0x000d759a,0x00151f3d,0x003a4127,0x00594d27,0x0087c3ae,0x006cf9a4,0x0056d150,0x004c821e,0x0043e91d,0x002df039,0x001ca79f,0x0016e6cf,0x001d26dd,0x0011ef5c,0x000cf26f,0x000a9060,0x00037a21,0x0001981c,
-0x0001550e,0x00013719,0x00015ae4,0x0001c5bb,0x00016554,0x000126d1,0x000106ea,0x00008dc2,0x00008f4f,0x00010a6e,0x00008f9e,0x0000b6fd,0x00012d9a,0x000254e5,0x0004978e,0x000818bb,0x001646d6,0x00205ae1,0x0021a0f8,0x002c5e35,0x002cdc81,0x0028fd8f,0x002acf86,0x002048fb,0x001f410b,
-0x00204cd3,0x00200b31,0x0022ed83,0x000f57b8,0x000b795d,0x000b1258,0x000b69a5,0x000b3791,0x0008f18c,0x0009c4d7,0x000908d3,0x0006ca3a,0x00058f80,0x00033382,0x0000f6c2,0x0001222f,0x0000fedc,0x0001952b,0x00013f6c,0x0001d9a5,0x0003a591,0x00053755,0x0007506b,0x00094ce0,0x000e18fd,
-0x00129fd0,0x001616a4,0x0014b3e4,0x0015421e,0x001956c8,0x00202045,0x0014f449,0x00165b48,0x001700fd,0x0018a196,0x001e7fc1,0x001ca7bb,0x001f7ecb,0x0026df2e,0x001d1dc8,0x0017703c,0x00146295,0x000f82bf,0x000ba7e9,0x0009349a,0x0007797a,0x000641ea,0x0005692a,0x0003eba0,0x00038139,
-0x0002b4ae,0x0002186f,0x00010ee9,0x00017ed2,0x000200f2,0x00033fa3,0x000512e1,0x0006756e,0x0007fdcc,0x000aece7,0x000b1d30,0x000ca9e0,0x000ecd85,0x000ff899,0x00126206,0x00154015,0x001416c6,0x00103a48,0x000e58f6,0x000d81b6,0x000da472,0x000e04ee,0x000f0768,0x0010461f,0x00126206,
-0x000eef73,0x000d38d1,0x000b9f56,0x000a5783,0x00093893,0x0008a6f5,0x000733b8,0x0005fe70,0x0004e9c9,0x000401b6,0x00032654,0x0002981e,0x00030aa0,0x00031cd4,0x000445fe,0x0003cc43,0x00050f3a,0x0006b73d,0x00077c74,0x0008ea2f,0x00096b66,0x000a7f99,0x000b544c,0x000c26da,0x000c3ea5,
-0x000c3298,0x000c943d,0x000d35e9,0x000ca0cf,0x000c3e08,0x000b1bd3,0x000bada6,0x000bbfd9,0x000c494a,0x000cae12,0x000da71d,0x000c80aa,0x000bd2e0,0x000b3531,0x000a703e,0x0009cf42,0x00093aed,0x0008c20e,0x000851fd,0x0007e706,0x00077c55,0x0006fe57,0x0006d85a,0x000840bc,0x0009999e,
-0x000e2ae4,0x0009a19f,0x000aecd2,0x00105d40,0x001080eb,0x000fdecc,0x000e9ba7,0x000fa508,0x000fad99,0x000f71ab,0x000cce05,0x000c80ef,0x0010afd9,0x000d7bec,0x000dc1fa,0x000049bb,0x0000688b,0x000075e8,0x00003436,0x0000428f,0x00003cbd,0x00004e34,0x00005480,0x00005257,0x00005779,
-0x000057a6,0x00005611,0x0000502f,0x0000508d,0x00005879,0x00005aaa,0x0000592f,0x000052d6,0x00004c08,0x00003834,0x00006bb1,0x000065f6,0x0000937c,0x00011159,0x0000646e,0x00008f87,0x0000ec07,0x0000f6a1,0x0000f226,0x0000c792,0x0000ed9f,0x0000f089,0x0000dc9f,0x000084d5,0x00006213,
-0x0000f7b6,0x0000aae2,0x00009e0c,0x00006c3c,0x00004f0c,0x0000593f,0x0000655e,0x00008be0,0x00009d49,0x00008862,0x00009a09,0x0000965b,0x00009b7e,0x00007e2d,0x00009496,0x0000d1c1,0x0000f584,0x0000ed58,0x0000bde2,0x00008410,0x000066c1,0x00005e9d,0x00007dd2,0x00001db2,0x000034c5,
-0x00002bbe,0x00002b7c,0x0000276d,0x00002da0,0x00004019,0x000047b4,0x0000424e,0x000036f4,0x000029b0,0x00001d9e,0x0000174d,0x00003f27,0x000039d1,0x00004502,0x00004b97,0x00006e68,0x00007d61,0x0000a8e6,0x00010b52,0x000141a2,0x00010daf,0x000126eb,0x00012314,0x000146ad,0x0000e989,
-0x0000f81a,0x000179e0,0x00019659,0x00017e2f,0x00011f1e,0x00009e5f,0x00009241,0x00004186,0x00003bfd,0x00001d34,0x00002209,0x00004e0c,0x00003ff8,0x00004664,0x0000372a,0x00006b3a,0x0000f5d2,0x0000dffa,0x0000a14f,0x000070b4,0x00001d34,0x00000f8a,0x00005aea,0x00002328,0x00005012,
-0x00005266,0x0000d0fe,0x00012fe0,0x00021cfe,0x0002473d,0x00027c31,0x0001b982,0x0001c2dd,0x0001a771,0x00024410,0x000137e3,0x0002178f,0x000465b8,0x00057f01,0x0004ff75,0x000381a9,0x0001df48,0x00015497,0x0000fc04,0x00009e15,0x0000411e,0x00007468,0x00009cb2,0x000068a4,0x00004a47,
-0x00004359,0x00004797,0x0000a43d,0x00015d58,0x00013470,0x00010a68,0x00009d59,0x000039e8,0x00010363,0x00005a7d,0x0002cf3f,0x00027ef5,0x00051abf,0x0004d9cb,0x00041632,0x00024f93,0x0001f3a5,0x0002d64d,0x0001f670,0x0002dd6f,0x000473b6,0x0003e4d9,0x0002fce2,0x00043405,0x00036e99,
-0x0002b706,0x000326cb,0x0003165d,0x0003e40b,0x00033a6a,0x00027390,0x000191b3,0x0001320e,0x000099ae,0x000041e5,0x000046f3,0x00004334,0x000058d5,0x00000a55,0x00000d8d,0x00008b97,0x00017d89,0x00014e47,0x00012df3,0x0000cef3,0x0001b725,0x000323b1,0x00017cab,0x0001a1ae,0x00018344,
-0x00032e2b,0x00044853,0x0004907e,0x00014a76,0x0000c8bc,0x0000dbdd,0x0003fca9,0x0002d402,0x000385b0,0x000370ae,0x00020571,0x0002328a,0x00027b9d,0x0001b213,0x00010514,0x0000d70a,0x0000548a,0x00002b15,0x00001d11,0x000018bb,0x00000b03,0x000025a8,0x00002cfd,0x00003a48,0x00001896,
-0x000009a6,0x00003d7b,0x0001011b,0x0003e50f,0x0003a268,0x0001ea90,0x00018df5,0x000fa801,0x001c4aae,0x0006653a,0x0001df45,0x000795ce,0x0007573b,0x0008494e,0x0008f639,0x0006873e,0x0005854c,0x0003d929,0x0002bc39,0x0003ca3f,0x0003fa66,0x0002aa1a,0x0001abbd,0x0000dc1f,0x000084d0,
-0x00006801,0x00005472,0x00002c52,0x000019d8,0x000032c1,0x00002d84,0x00001b7d,0x0000216a,0x0000019e,0x000009c3,0x0000038f,0x00000e9f,0x00002a8d,0x00004ce3,0x000043ca,0x00004a2a,0x00015497,0x0006eb03,0x0007120e,0x000ec3ea,0x0005fe24,0x0004aecb,0x00091d43,0x0006a344,0x0003e514,
-0x0002f1d5,0x000179d9,0x0001bb00,0x00012b16,0x00008c97,0x0000cb80,0x0000ed7f,0x0000f48c,0x0000f309,0x0000f4f6,0x0000b9b2,0x0000a3b2,0x00008a1b,0x000081fe,0x00005d5a,0x0000461e,0x00000ed4,0x00000161,0x0000046c,0x000001c5,0x000003f7,0x000004c7,0x000000f4,0x0000027a,0x00002c25,
-0x00003db2,0x00005801,0x00030fcf,0x00061174,0x0003dd0d,0x0003c9d2,0x00049b6e,0x00042f73,0x00031339,0x0002c6e4,0x0002f154,0x0002818a,0x00027fe7,0x0002b020,0x00031ab7,0x0002516f,0x0001a0bd,0x0001394a,0x000069cd,0x00001ee4,0x000030c1,0x00006bcf,0x0000b64e,0x0000fa9d,0x000112a6,
-0x0000e076,0x0000b015,0x0000461e,0x000015b0,0x00000452,0x000005b4,0x00000ac9,0x00000d59,0x000012ce,0x000012c2,0x0000215d,0x00000ada,0x00001a5e,0x00008d94,0x00029562,0x00016edf,0x00017edf,0x0001d8f9,0x00018ec7,0x00017a2f,0x0001609a,0x000190cc,0x0002099e,0x00015c2c,0x000145d8,
-0x00016ad8,0x00014afd,0x0001201b,0x0000ced3,0x00008cc0,0x00004ce5,0x0000290f,0x000027b5,0x00002a72,0x00004318,0x00004b34,0x00003b28,0x0000319b,0x00002b2c,0x000026b7,0x00002328,0x00001a0c,0x00002e7c,0x000040f0,0x00005b89,0x000068d2,0x00006821,0x00008796,0x0000b224,0x0000c716,
-0x0000fd24,0x0000d8bd,0x0000d4f8,0x0000c604,0x00009cb2,0x0000807f,0x00006bda,0x0000724e,0x00009275,0x0000795a,0x0000726c,0x00006aaf,0x00003c92,0x000029e5,0x0000307d,0x00002b1f,0x00002cb3,0x00003636,0x000033d6,0x00003fe6,0x000046b5,0x000050ec,0x00005651,0x000065d7,0x00004f88,
-0x000053b6,0x000071de,0x00006458,0x00006597,0x00007ec3,0x00007bc8,0x00008ab1,0x0000aba8,0x0000b132,0x0000d8ad,0x000102bc,0x0000d521,0x0000b373,0x0000959d,0x0000847a,0x00007b99,0x00006ea7,0x000069cd,0x00006b47,0x00007d6a,0x000065b4,0x00005828,0x00004dd3,0x0000432b,0x000039c8,
-0x00003794,0x000038b9,0x00003d6e,0x0000442f,0x00004cb0,0x000056be,0x00006333,0x000063ac,0x00006094,0x00006dcf,0x000071ea,0x000086f7,0x0000a035,0x0000975b,0x00009e9a,0x0000a5e0,0x0000a79e,0x0000b23a,0x0000bfbc,0x0000abfe,0x0000991b,0x000097d5,0x00008cac,0x00006560,0x00005b16,
-0x00004eb9,0x00004ef0,0x00004f16,0x00004fb6,0x0000510d,0x00005600,0x00004f04,0x00004bf4,0x00004a5b,0x0000497c,0x00004a37,0x000049e2,0x00004d5b,0x00004f63,0x00005179,0x00005522,0x00005687,0x00006262,0x00006816,0x00007ec4,0x0000abd6,0x0000706a,0x00008b60,0x0000ca1f,0x0000c5e3,
-0x0000bba0,0x0000a655,0x0000b00c,0x0000aaff,0x0000a4e6,0x00007d8e,0x00006765,0x00009e3e,0x00007e4b,0x00007037
-};
-const UWord32 defaultHRIR_rom_ER48_fx[HRTF_MODEL_N_SECTIONS * 470] /*Q28*/ = {
-0x047ee4d8,0x03f280b8,0x05386b98,0x0472fda0,0x0546eb40,0x076f6d78,0x04382528,0x0488aa00,0x06bd5348,0x0704d428,0x06d60568,0x05f157b8,0x06d09290,0x06f92248,0x06cc8e98,0x0466c600,0x03db67c4,0x07924390,0x048ebf48,0x03f41dd8,0x04657680,0x036a1ca0,0x03cfde2c,0x03e0ba68,0x03f52760,
-0x0409ea10,0x0421a660,0x0435ba10,0x04558680,0x047a5fa8,0x04b01dc0,0x04dde948,0x0526fc60,0x0509efe8,0x04e6aa20,0x04840c20,0x047d6488,0x05ed4498,0x05ff8e50,0x068475b0,0x03d7760c,0x03201db0,0x02a62e40,0x02995154,0x02374fd0,0x029927f8,0x02a77ff0,0x028bc644,0x02ad3d58,0x024cb2e0,
-0x0250460c,0x02047db0,0x0211f2bc,0x02acc4b0,0x02629f04,0x03f5ad90,0x03cb3008,0x03e67e74,0x044851e0,0x04a7fb88,0x04db7d40,0x051ab720,0x055faf70,0x0596e218,0x06042ac8,0x06a71b70,0x0790f2e0,0x0872dea0,0x09677860,0x0950aa80,0x08a8a570,0x073c5fd0,0x06cf9508,0x08c03920,0x061f64b0,
-0x04bd3218,0x03613b94,0x028ce510,0x01d9e6e6,0x0183adbe,0x0148dec2,0x01406468,0x010020e2,0x0170bc02,0x013f19d8,0x01204b92,0x01122334,0x012d3c76,0x0137b028,0x0171e928,0x0188302e,0x022b99d4,0x02668e14,0x03cc7b80,0x040ed358,0x051b4aa0,0x058a64c0,0x0632f030,0x06f854e8,0x079df708,
-0x08bb3ec0,0x0a364c00,0x0c194380,0x0df3e010,0x10141dc0,0x0f6fd7b0,0x0df37fb0,0x0af6e3c0,0x09873b30,0x0d1b86e0,0x073af448,0x05695aa0,0x02e74d18,0x01edbf9e,0x0156b896,0x00d4a4b0,0x00830473,0x00636bf6,0x00633027,0x00849c4b,0x007311b6,0x00688dda,0x005fdbfe,0x006bd09e,0x008ca67b,
-0x00c97bcf,0x00e5b1df,0x01604b48,0x01be29e6,0x036304e0,0x03ff2e30,0x055b8690,0x05c727e0,0x06a36298,0x078a9d48,0x08310840,0x09c91de0,0x0ccc12f0,0x11672460,0x161d6a00,0x1b56a000,0x1aeb9640,0x1707dc00,0x11aa67e0,0x0df87900,0x1d1d6220,0x11667ec0,0x0ce28710,0x05efc370,0x03a9df90,
-0x028305f4,0x01cffa94,0x0127b864,0x00bce37f,0x008d3a24,0x008bafb0,0x00882a4d,0x008337ce,0x006c1535,0x00767a34,0x009889b4,0x00dbb356,0x0150c436,0x022975e8,0x02f4e404,0x05947408,0x073a4200,0x0c0ae070,0x0fa8f2b0,0x1498fc20,0x19d5b200,0x1db068c0,0x207bf300,0x214f34c0,0x2106d700,
-0x1fa7a260,0x1f394220,0x1d45c780,0x1c7d0160,0x1dfc11c0,0x1acf0620,0x2b8322c0,0x0dc91d00,0x0cadfcb0,0x056dbb38,0x042d8138,0x0256d654,0x016c6290,0x0131be08,0x00d4401d,0x00c230d7,0x00cc882f,0x00a65086,0x00914869,0x007c7e15,0x0091032f,0x00babdd2,0x015746a4,0x01d2ebac,0x03187b6c,
-0x0381e590,0x06d4d4a8,0x08a4d2e0,0x0e1a1c00,0x116a0bc0,0x1739b820,0x1dfddd20,0x204e1540,0x21a5c280,0x223e0a40,0x22421b00,0x234d4d00,0x25869840,0x245e9d80,0x23da8840,0x2bc98580,0x2a926240,0x4446f880,0x1b70e180,0x13adfa80,0x065b9490,0x07306290,0x030dc0a0,0x02778dcc,0x013a7c14,
-0x00e854e6,0x00eedb3c,0x01a81d84,0x01025efc,0x00e48a50,0x011a56cc,0x00f12947,0x01568176,0x020f4458,0x022c4848,0x032c4480,0x038e37d8,0x06fb3930,0x089c5830,0x0de9cf30,0x139f2b60,0x1b816c80,0x233b5100,0x265bf400,0x266a0880,0x2531b700,0x212f1700,0x20b54b80,0x27421200,0x2abab980,
-0x319c53c0,0x4ef60b80,0x3bc00480,0x4e432200,0x214d7480,0x13fffa40,0x07052408,0x03f7fd08,0x02818dac,0x016f39c2,0x01392b46,0x00fca113,0x011ed3b8,0x028e0018,0x00ff39be,0x00cfbdfb,0x01040e88,0x0125191a,0x016e8670,0x02210da4,0x0269f0f0,0x0387e120,0x03bca2c0,0x06471b60,0x072a9b40,
-0x0a3ffc30,0x0e707f20,0x13e7a960,0x19f91d00,0x1f414c20,0x22eaf940,0x2633c280,0x26b80800,0x24144440,0x20cf85c0,0x24933140,0x2e1e2c00,0x50825600,0x3be07000,0x2c4d19c0,0x1c18b7e0,0x13752260,0x08441920,0x04d9b360,0x031df4e0,0x01fe4556,0x01de7284,0x016c698a,0x014ac6a0,0x01b6abd0,
-0x0122aff0,0x010baf30,0x011ecc38,0x01610dba,0x01c7cfa0,0x021d9db8,0x02abaa48,0x0471d780,0x04f829e0,0x06561930,0x06b65288,0x07f63bc0,0x09e961a0,0x0d843360,0x12b78800,0x17a3ac20,0x1b4affe0,0x1e608c60,0x1a5954e0,0x19811f40,0x1b5fdbc0,0x1baf31c0,0x1e12e540,0x26d10140,0x26c37e00,
-0x11603060,0x0ed10140,0x0b193f10,0x06065dc8,0x03e96e30,0x033a0a1c,0x021f5510,0x01ac12a8,0x019686cc,0x0195b22e,0x018a4270,0x016d147c,0x015363a4,0x015954e4,0x019d60e8,0x0237c7b4,0x0312491c,0x035b6e10,0x044d1e80,0x04ce8658,0x06211b90,0x060e5f48,0x06bad678,0x088afa40,0x0a2da5c0,
-0x0b1fdda0,0x0c3aeb30,0x0dd64990,0x0fd1a650,0x10cb2040,0x112b9f80,0x12074500,0x1202e020,0x11c97500,0x11043b40,0x10c1fda0,0x0b1853d0,0x08ea3960,0x07751e50,0x061f3718,0x05015df8,0x03aa4c5c,0x02f34054,0x02283fa0,0x028a10d8,0x01f66c10,0x02acbb58,0x024c7950,0x027b1984,0x0248cc6c,
-0x02c0e30c,0x02d8ab8c,0x037898ac,0x03d15a1c,0x04b73198,0x0523a8f8,0x06458040,0x061fb090,0x06c79fb8,0x078ca200,0x087f20a0,0x097a5df0,0x0a7fb090,0x0bb86eb0,0x0d55bb90,0x0da69170,0x0e3088f0,0x0f2a3ce0,0x0e83a4d0,0x0e36ae40,0x0e6bcdc0,0x0c1cc900,0x085afeb0,0x08f3c7c0,0x09f0b3f0,
-0x068fbea0,0x05feee30,0x056c0e90,0x051f0618,0x047dda10,0x052b5098,0x055eb738,0x04de71c0,0x055c0698,0x04d6f468,0x04d04810,0x045f1958,0x04a83120,0x0531d350,0x04d79588,0x06db6b60,0x0675ab80,0x0659df58,0x06c40b60,0x07197510,0x07774418,0x07f51688,0x086925b0,0x08d41c20,0x093f5360,
-0x09c31970,0x0a40c6a0,0x0ac29b30,0x0b881f30,0x0aa187c0,0x09eb4c70,0x095f4620,0x08e38b10,0x0741ae98,0x08d01300,0x0809d1a0,0x08ea2c20,0x0c014ed0,0x07d64368,0x08187ec0,0x0b0834f0,0x0ba07ea0,0x0b786320,0x0a3fb370,0x0b821d30,0x0bff4b40,0x0baaff20,0x07f17cd0,0x0732b9b0,0x0c9eee70,
-0x084f1da0,0x07599348,0x07cc81b0,0x068af938,0x07028588,0x070cb410,0x072a1490,0x073e8f48,0x07509498,0x07754088,0x079b4ac0,0x07c5d9d0,0x07fc2df0,0x082f19f0,0x088e5aa0,0x083f2300,0x081cd6f0,0x07de1c78,0x07df0d58,0x094475d0,0x0006fc5c,0x0004cdf3,0x000a6bab,0x0008df72,0x000c4172,
-0x0015ae88,0x000998e6,0x0009ded0,0x00126090,0x00140bf0,0x0013f6ff,0x00113dbf,0x0014c5c2,0x00151d77,0x0014a6b9,0x000a35c4,0x00090fb9,0x0017fca1,0x000aa8b6,0x0008eb5d,0x000a33d6,0x0005a2e9,0x00073986,0x00074f9a,0x0007686b,0x00075eba,0x00073852,0x0006edb2,0x0006f518,0x00072271,
-0x0007c70b,0x000826f9,0x00084487,0x00087936,0x0007a5c6,0x0004fa24,0x00060d37,0x00056017,0x00096a5d,0x000c20b7,0x00066283,0x0005340c,0x0002435f,0x0002e37e,0x00024f8b,0x000466f9,0x00057626,0x000550a6,0x0005df22,0x0003d202,0x0003bbd1,0x00020a50,0x00023392,0x00058679,0x0003fe1c,
-0x0009c836,0x00092b20,0x000963b3,0x000ae749,0x000c6ad7,0x000cc120,0x000c57d4,0x000b680a,0x000a567a,0x000a56df,0x000b55ba,0x000cf402,0x000e3aaa,0x000dd549,0x000ee6a0,0x000b67ec,0x00040a54,0x00058b3a,0x000692eb,0x00071509,0x0006654b,0x00040d30,0x0005f62c,0x0001c594,0x0001713a,
-0x00019c26,0x000259f9,0x0002821e,0x00047590,0x0003f3c3,0x0002916c,0x0001e026,0x00022e9e,0x0002fef5,0x0004740f,0x0004f5a8,0x0006c200,0x0006be25,0x000dcf1d,0x000d878d,0x0011f120,0x00129bc9,0x00128251,0x001235e8,0x000ff9d5,0x0010ae81,0x001320d0,0x0015f944,0x001997eb,0x0018dc99,
-0x001bfe71,0x00127db7,0x000335f4,0x0005f4fe,0x00060431,0x00052bf4,0x0006bf9c,0x0007c1af,0x000c6f08,0x00025537,0x000289ce,0x00019ee0,0x0003359e,0x00043e30,0x0006390a,0x0004a051,0x00030b77,0x0001e23f,0x000275a8,0x0004c5aa,0x00085975,0x000801dc,0x0008ea00,0x0008c2ab,0x00130ff5,
-0x0016a43c,0x0021b090,0x0023ecdc,0x0023ae2b,0x0020c581,0x001d035d,0x001ca04e,0x00206c8e,0x0023b27f,0x002862dc,0x0027087b,0x002c7d54,0x0018c0fd,0x00027cfb,0x0002ddca,0x00215ec5,0x000ea3ca,0x001bf85d,0x0012191c,0x000ab848,0x00047b32,0x00081d49,0x00065b68,0x0006525b,0x0004bc73,
-0x0005d0ee,0x000165e9,0x00011e15,0x00027c73,0x000306dd,0x0004599b,0x0007a262,0x0008cf16,0x0008e1ab,0x00083ed5,0x00144ef8,0x000a1f3d,0x000d7e1f,0x0004c07a,0x0004ecc1,0x00097a02,0x00128133,0x00195773,0x001e7c4a,0x001c7dab,0x00247694,0x002c7935,0x0029712f,0x00285903,0x002c1b44,
-0x001ce160,0x000ea590,0x0026bb6d,0x00204264,0x001721cd,0x000bebc8,0x000694c1,0x0006ad53,0x0003ab34,0x00010c5c,0x0000cfca,0x00029adc,0x000293c3,0x000222f5,0x00015a98,0x0002103d,0x0002ab43,0x00025ae0,0x0001c131,0x00031800,0x000395df,0x000c4cb7,0x00127d37,0x002480f2,0x0012fed7,
-0x0009096d,0x0003dfa7,0x000371c0,0x000359ad,0x0004cda1,0x00052e34,0x00052718,0x000b6cca,0x0011793c,0x0017f484,0x0016dd83,0x00073869,0x000bee64,0x000fd96c,0x000c252c,0x000813a2,0x0006cb0f,0x0004eb07,0x00032e93,0x0002669a,0x0001ecc0,0x0001171b,0x00003986,0x000045db,0x00008e63,
-0x0000a7e1,0x0000a7ad,0x00017a5f,0x0001749c,0x000166b0,0x0002eeda,0x0005b49f,0x0004e290,0x00028908,0x0002061c,0x000bd1f6,0x001fc1bb,0x00308e00,0x00351377,0x002820b8,0x0014a68a,0x0022e43b,0x003c59c6,0x006a145a,0x007896f4,0x006c56b6,0x0050f000,0x0013535c,0x004e8c3b,0x0022f822,
-0x001cd8d4,0x001760d6,0x000d49f2,0x0006708f,0x0002fcee,0x00033b30,0x0001227b,0x0000d57f,0x00009cda,0x000061fe,0x0000520c,0x0000a576,0x0000e2b6,0x0001696b,0x000176e2,0x0001ac52,0x000236fd,0x0002c8d3,0x0006274b,0x0009c753,0x000c7989,0x000b4a13,0x0007cdfe,0x00047c69,0x00074820,
-0x0008c411,0x000b7205,0x000adfb5,0x000acc83,0x000fe2ab,0x00374325,0x0069300d,0x00a70f35,0x00678631,0x00880f67,0x0059cc5a,0x003f01d5,0x002a3422,0x0020ff73,0x0020d890,0x0015bfaf,0x0007f05c,0x00049d34,0x000257d3,0x0001295a,0x0000b08a,0x00008df0,0x00010f92,0x00008a33,0x00008cc4,
-0x000113ed,0x0000e78d,0x0001dc8f,0x00019f95,0x00016341,0x000137fb,0x00015756,0x00019749,0x00037b6f,0x000a88e9,0x000cf2a6,0x0011ed30,0x001d2f37,0x0016e348,0x001cadbd,0x002ddab6,0x00440aee,0x004c7725,0x0057009e,0x006cac55,0x0029f7bc,0x0029f500,0x002782e0,0x001f243e,0x001a46fc,
-0x0015f6e6,0x0014a832,0x00166e16,0x0012779f,0x000e1072,0x000948f0,0x00074bb7,0x00052f37,0x0003b139,0x0001e236,0x00012578,0x00015c61,0x00010365,0x00011ebf,0x0000f042,0x00031e19,0x00059954,0x0006c72c,0x00090a69,0x0009c4d9,0x0008f0de,0x000b39b6,0x000b6be5,0x000b1041,0x000b7958,
-0x000f5cde,0x0022cc9f,0x00201562,0x00205d19,0x001f24d1,0x00208df1,0x00172f0f,0x00160126,0x0015158b,0x00144910,0x001475b5,0x0011e713,0x000ff453,0x000eb2b6,0x000cb9b4,0x000b2ab5,0x000ae53e,0x000800dc,0x00067629,0x00050f4d,0x0003415f,0x000202cd,0x0001899c,0x00010d2f,0x0002239d,
-0x0002a1af,0x00038824,0x0003eb8e,0x000568f2,0x00064212,0x0007795d,0x00093468,0x000ba87c,0x000f832a,0x001464dd,0x00176eb1,0x001d1c8b,0x0026e19d,0x001f7c48,0x001ca7c7,0x001e800f,0x00189972,0x000d789b,0x000e93d7,0x000f9253,0x000ce4c0,0x000ca10d,0x000c571a,0x000c4a34,0x000c2903,
-0x000b5191,0x000a7ef9,0x00096c8e,0x0008e892,0x00077ad9,0x0006bc00,0x00050da1,0x0003c686,0x00044bde,0x00032069,0x00030690,0x0002a0d8,0x0003260a,0x0004018b,0x0004e9af,0x0005fe64,0x000733af,0x0008a69c,0x00093842,0x000a5776,0x000b9df8,0x000d3972,0x000ef00d,0x001260a1,0x001046ba,
-0x000f05d7,0x000e07fd,0x000da1ab,0x000b1b7a,0x000c1282,0x000ca182,0x000d7248,0x00102af5,0x000c882e,0x000cc057,0x000f6932,0x000fa807,0x000fa8d7,0x000e9a47,0x000fdb56,0x0010833a,0x001063ee,0x000af0e0,0x0009a5be,0x000e4c8b,0x0009a16c,0x0008404f,0x0006d177,0x0006fdad,0x00077d15,
-0x0007e6ea,0x0008520e,0x0008c223,0x00093b1b,0x0009cf5e,0x000a7061,0x000b35c7,0x000bd2c2,0x000c8074,0x000da73a,0x000cae2b,0x000c49b8,0x000bbe59,0x000bb188,0x000dc1ce,0x000049ba,0x00003457,0x000077fe,0x00006851,0x0000aa97,0x0000f908,0x00006154,0x000084f8,0x0000dc1f,0x0000f060,
-0x0000edba,0x0000c79c,0x0000f20f,0x0000f67a,0x0000eb79,0x00008fa3,0x000064b4,0x0001118f,0x0000910d,0x00006543,0x00006caf,0x00003863,0x00004bd7,0x000052e3,0x0000592b,0x00005aac,0x0000587f,0x00005095,0x00005035,0x0000560c,0x000057ac,0x0000577c,0x00005257,0x00005479,0x00004e27,
-0x00003cd0,0x00004259,0x00004f7f,0x000067dc,0x0000a0e7,0x00003aff,0x00004112,0x0000173a,0x00001d90,0x000029ed,0x000036c6,0x0000425d,0x00004758,0x00003fde,0x00002d9c,0x000027ba,0x00002ba7,0x00002b14,0x000035b6,0x00001f6a,0x00007f24,0x00005b9b,0x000066e6,0x00008474,0x0000bdb6,
-0x0000ed7b,0x0000f56e,0x0000d1a6,0x00009477,0x00007e1f,0x00009ba4,0x0000964d,0x000099fa,0x00008862,0x00009d5f,0x00008c1d,0x0000653c,0x0000596f,0x00006a92,0x0000531e,0x0000454c,0x0000221c,0x000058c2,0x00000fb7,0x00001d17,0x0000705d,0x0000a196,0x0000df70,0x0000f637,0x00006afc,
-0x000036fe,0x0000463b,0x00003f21,0x00004e4a,0x0000219e,0x0000199f,0x00003afc,0x000045b8,0x00008f99,0x00009ee1,0x00011ed6,0x00017e1b,0x00019676,0x00017a31,0x0000f85a,0x0000e9a5,0x00014643,0x00012329,0x00012718,0x00010dec,0x0001413e,0x00010aec,0x0000a8cd,0x00007e00,0x0000e1a6,
-0x00003de2,0x00004e14,0x00005999,0x00010426,0x000039b6,0x00009d90,0x00010b13,0x0001354f,0x00015b5f,0x0000a342,0x000047b1,0x000042a6,0x00004be5,0x00006713,0x00009f82,0x000074b1,0x00003f3e,0x00009c9a,0x0000f1ae,0x0001616b,0x0001d839,0x00038766,0x0004fce3,0x0005804d,0x000462e6,
-0x00021776,0x00013774,0x00024411,0x0001a77c,0x0001c334,0x0001b7b5,0x00027e49,0x000247db,0x00021d47,0x00012d3e,0x000553e0,0x00025c7b,0x0002c392,0x000191f4,0x0000d352,0x00012be2,0x00014ded,0x00017dc9,0x00008c34,0x00000d45,0x00000a1d,0x000058b5,0x0000421c,0x000048a1,0x0000417d,
-0x00009a31,0x00012f36,0x00019486,0x00026554,0x00031e02,0x0004034e,0x00030a6b,0x00032e45,0x0002b539,0x0003700d,0x00042dd3,0x0002ff41,0x0003e7b3,0x000474fc,0x0002dd1b,0x0001f7a9,0x0002d1c6,0x0001f6b8,0x00024aae,0x00042007,0x0004c2f4,0x0001b0b3,0x00016297,0x00033926,0x00018125,
-0x0001e3b1,0x0003afc9,0x0003d5b5,0x000102ed,0x00003ccc,0x0000093f,0x000018d0,0x00003a41,0x00002c90,0x000025fb,0x000009d3,0x0000171e,0x00001ea4,0x000028af,0x00005e4a,0x0000d21d,0x00010a39,0x0001ad21,0x00028121,0x00023132,0x00020642,0x00036b22,0x00038916,0x0002d636,0x0003fc3c,
-0x0000dbe7,0x0000c90e,0x00014868,0x00049544,0x00044c59,0x00032dc5,0x00018022,0x00066a0a,0x001c43eb,0x000fae6e,0x0006dee7,0x00014e8c,0x00004a2e,0x0000428b,0x00004b93,0x00002b59,0x00000e7d,0x0000039d,0x000009a2,0x000001ad,0x000021c6,0x00001b7a,0x00002d80,0x000030de,0x00001b35,
-0x00002dbf,0x00004e8e,0x000069ce,0x00008471,0x0000dc63,0x0001ab1e,0x0002ab35,0x0003f667,0x0003ccc3,0x0002bd39,0x0003d78d,0x00058a0a,0x00068575,0x0008eb6a,0x00084e13,0x000755ae,0x000798e1,0x0001dc28,0x00061e0b,0x000eb071,0x00071351,0x000612bd,0x00030e07,0x0000584d,0x00003e4b,
-0x00002be8,0x00000252,0x000000fd,0x0000050d,0x000003e7,0x000001ae,0x000004b6,0x00000180,0x00000f07,0x00004591,0x00005d1a,0x000082ad,0x00008843,0x0000a743,0x0000b6cc,0x0000f70c,0x0000f243,0x0000f4da,0x0000ecd6,0x0000cbd5,0x00008ca4,0x00012afd,0x0001bb6c,0x00017a65,0x0002ec63,
-0x0003e853,0x0006a18d,0x000926ab,0x00049eac,0x00049cef,0x0003d1cb,0x0004115f,0x0002767e,0x00008e96,0x00001b24,0x00000922,0x00001fdf,0x000013e7,0x000012de,0x00000d38,0x00000a5b,0x000005e4,0x0000042e,0x00001695,0x00004697,0x0000ac28,0x0000e3e4,0x00011ac1,0x0000f99f,0x0000b642,
-0x00006be6,0x000030e4,0x00001ede,0x000069fe,0x00013865,0x0001a10f,0x0002514f,0x00031b14,0x0002b02c,0x0002804e,0x000280af,0x0002f2b6,0x0002c686,0x00031543,0x00042ca9,0x0001cefb,0x00018b0c,0x00013f2b,0x0000f279,0x0000cc50,0x0000b3a3,0x0000893e,0x00006729,0x00006941,0x00005c03,
-0x00004036,0x00002f0e,0x00001963,0x00002322,0x000026d9,0x000029c4,0x00002be6,0x00003cc1,0x000049a9,0x0000419f,0x00002a15,0x000027f3,0x000028f8,0x00004cfa,0x00008cc5,0x0000ceaf,0x00012043,0x00014b37,0x00016aa2,0x0001460a,0x00015c4c,0x00020839,0x00019119,0x000160be,0x0001794a,
-0x0001919c,0x0000c759,0x0000d27d,0x0000da08,0x0000d2b1,0x0000f881,0x0000d42b,0x0000b165,0x0000aa8e,0x00008b49,0x00007c53,0x00007e89,0x000065e0,0x00006438,0x00007236,0x000053dd,0x00004ffe,0x00006738,0x00005623,0x000051a3,0x00004637,0x0000402d,0x000033d4,0x0000362a,0x00002cb4,
-0x00002b1f,0x0000307f,0x000029dd,0x00003c8c,0x00006ab5,0x00007265,0x00007951,0x000092a7,0x0000724c,0x00006be1,0x0000808a,0x00009c50,0x000083eb,0x000098ab,0x0000aea8,0x000089af,0x00009709,0x000098f8,0x0000abe2,0x0000bf71,0x0000b21a,0x0000a7c7,0x0000a5db,0x00009e90,0x00009762,
-0x0000a003,0x000086bc,0x00007153,0x00006d70,0x0000608f,0x0000634e,0x0000638a,0x000056ba,0x00004cad,0x00004436,0x00003d6e,0x000038b8,0x00003795,0x000039c6,0x0000432a,0x00004dc6,0x00005828,0x000065b6,0x00007d59,0x00006b47,0x000069b6,0x00006ec7,0x00007b81,0x00004eba,0x00005951,
-0x0000654d,0x00007d87,0x00009920,0x000067b9,0x00007d2a,0x0000a4b4,0x0000aad5,0x0000b032,0x0000a656,0x0000bb83,0x0000c5fe,0x0000ca75,0x00008ba1,0x000070cc,0x0000ad9f,0x00007f4d,0x00006826,0x00006217,0x00005680,0x0000552a,0x00005176,0x00004f63,0x00004d5c,0x000049e2,0x00004a38,
-0x0000497d,0x00004a60,0x00004bf4,0x00004f03,0x00005602,0x0000510f,0x00004fbb,0x00004f07,0x00004f16,0x00007035
-};
-const UWord32 defaultHRIR_rom_EL32_fx[HRTF_MODEL_N_SECTIONS * 470] /*Q28*/ = {
-0x054a4eb8,0x04f4f0d8,0x05569b70,0x04b47630,0x052be930,0x0558ee78,0x05a21340,0x05c92f10,0x06092e60,0x05a367d8,0x056ef578,0x053967f0,0x050b7040,0x04e48198,0x04c1a078,0x04ab4c58,0x04922828,0x04796a68,0x045da820,0x040c93f8,0x048b76b0,0x046b48d0,0x04a92308,0x0663b628,0x04465358,
-0x047a43a0,0x05ccc530,0x05e3ce48,0x05bf4e28,0x05441fe8,0x05c979c8,0x05fd7718,0x05df75e0,0x04a4ec80,0x04991e50,0x06641720,0x053f2f28,0x06b72af0,0x06f11a08,0x06feb018,0x080029f0,0x08c5c000,0x09cc9040,0x0a736fb0,0x0afda5f0,0x09a82a90,0x08b57570,0x07cbf1f8,0x070ce3d8,0x0679eea8,
-0x060e5dc0,0x05bead00,0x056ee598,0x052b2f60,0x04bdb2c8,0x04516048,0x04425da8,0x043a2360,0x0330b688,0x03505144,0x02d20d84,0x02b7914c,0x02dfe2c8,0x02dd17b4,0x03220308,0x030ea8d8,0x031f84e0,0x03222f38,0x02fbd6b4,0x03604ce0,0x0392cba8,0x0403a5d0,0x04a83a30,0x05dbb268,0x074d2070,
-0x09ef55e0,0x0b304cf0,0x0d769b90,0x0fa6d700,0x1115f4e0,0x13195140,0x0ffed690,0x0dfc85f0,0x0c115100,0x0a44f510,0x08e9f1b0,0x07c84a88,0x06fae100,0x062e2ae8,0x058caea8,0x047822b8,0x03e0b118,0x02ef4bcc,0x02b94338,0x02213cb4,0x02008c0c,0x01ab7996,0x0189f69c,0x016a467c,0x017d55c4,
-0x018e7b54,0x01bf16ee,0x016811a0,0x0197f27a,0x01bd7608,0x02109e40,0x027361c4,0x03563720,0x046994e8,0x06e2af70,0x09f91ae0,0x0e46bf60,0x112613a0,0x15bf40e0,0x191da600,0x1cc51e00,0x1ffa39e0,0x18c0e680,0x13a119c0,0x0ef0bdf0,0x0b6e8260,0x091c33a0,0x07afaaf0,0x06b23730,0x05bde110,
-0x050d5350,0x03c7d644,0x03055340,0x023a8a48,0x01cd71ea,0x013afa2a,0x01152b74,0x00bbeaa6,0x009b0ff8,0x008732a8,0x009a9b9d,0x00ad4ff1,0x00b9e2bc,0x0092e9a6,0x0092b4e1,0x00c6d7ac,0x012c8e8e,0x0220a6c0,0x029d10f0,0x040824f0,0x0fd4c5e0,0x1a18a380,0x21a08b80,0x24b737c0,0x289f8040,
-0x2536c000,0x23c6e780,0x24162940,0x26a450c0,0x2996a9c0,0x2a599400,0x2a0e8d00,0x270dc1c0,0x22e3ca00,0x1a8e5a40,0x1459c960,0x10659840,0x0a14ea00,0x068e2ed8,0x0404da60,0x02f2e68c,0x01c19c80,0x0140d402,0x00db46af,0x00b61b10,0x009b1c49,0x00c4ecec,0x00cb25c2,0x00d0f054,0x00ce4c6b,
-0x010bff58,0x01ad7a9c,0x0275acf8,0x039b7d60,0x050817d0,0x08f5aed0,0x123e5820,0x16816b60,0x391bc280,0x3adbdb00,0x39ca2600,0x2c7c9c40,0x29813980,0x2d0e1700,0x2e633400,0x2fabe540,0x30fdaa80,0x3026d740,0x2dc7c100,0x29d6b300,0x1fe30f20,0x16ea9880,0x10577d80,0x0a349a10,0x07cd9b40,
-0x04f91a30,0x04491018,0x02a26288,0x01c8f5ee,0x01138068,0x00d239db,0x00b551bc,0x00d746cb,0x00f960c6,0x0135781c,0x011ce15a,0x01440098,0x01b95968,0x0248fdf0,0x033f59b0,0x0568dc20,0x08dad320,0x161f8820,0x26bafb00,0x4d0b8200,0x41815100,0x3ffffdc0,0x296882c0,0x272dc080,0x2cf57c00,
-0x2b7c9700,0x2ddaaf00,0x32f82340,0x31551f40,0x2d2f3400,0x26a4e800,0x1fd44da0,0x183ee280,0x120e7a20,0x0b270b00,0x08aa60e0,0x052ce5c0,0x046bc158,0x0333b514,0x0313a6ac,0x01d48d8c,0x016cbee4,0x01a99918,0x015a895e,0x017db486,0x0275cf20,0x015a3e64,0x015861dc,0x01d2375c,0x03bf599c,
-0x043e1b38,0x0a16d280,0x0865daa0,0x129b9c40,0x2c1261c0,0x2e9bdd40,0x234a4680,0x24920480,0x1f485600,0x22154800,0x29973640,0x296fdf00,0x2a390680,0x280a7480,0x27478440,0x23fcd740,0x1d701360,0x17def060,0x11b2a2a0,0x0c4a2510,0x09220740,0x07a05150,0x059201c8,0x0488fc28,0x0348d540,
-0x0303f158,0x021b7c34,0x01a45066,0x0172bab6,0x0136e6b6,0x017e17c2,0x03da8680,0x01b0e29a,0x01712fa0,0x01ce8212,0x0224f7c8,0x034d7774,0x04ab5268,0x07bd2328,0x0ef47080,0x172e2f60,0x1a6b1480,0x1d27c2c0,0x1da66640,0x1d4e0b60,0x1dae3400,0x210eb040,0x1f14eaa0,0x1fd37240,0x21479f40,
-0x1e9ad9c0,0x1b00a200,0x163da740,0x1075a780,0x0c69a6a0,0x0a6cb490,0x08e14670,0x083b4b80,0x071c1cc8,0x05a25d00,0x043d7600,0x03201398,0x029320b0,0x02293090,0x01ad93b0,0x018ce9e0,0x01b25b2c,0x029aee74,0x01e34fc0,0x01fcd432,0x0258a95c,0x02fc4a88,0x03ae282c,0x0518b8a0,0x0c7cb500,
-0x0e030c70,0x0fb63d50,0x135f66c0,0x14e14b00,0x16378140,0x18446e40,0x18f6dc80,0x18d10ea0,0x1891f8c0,0x17cba540,0x164a2f40,0x136dc340,0x10b6d4a0,0x0e46e2c0,0x0c6d5930,0x0a8364a0,0x09105b10,0x0863f280,0x090ae9c0,0x069b0aa0,0x0663cb20,0x04de3d78,0x046a3bf8,0x032d3694,0x025a98d4,
-0x01fa103a,0x01f90f4c,0x02210ed4,0x025d1948,0x025856f8,0x0258822c,0x0267d390,0x030ad5dc,0x0426fdf0,0x052ced38,0x083c2650,0x0a16eba0,0x0cde3fe0,0x0f4c17c0,0x10fc3e00,0x13a40c60,0x136f0620,0x13d49300,0x14b984e0,0x1334a520,0x123c9200,0x11b89580,0x100080c0,0x0eaa8910,0x0d5b3ef0,
-0x0c0979b0,0x0ac61c90,0x09cac170,0x08e31770,0x08f195d0,0x07a37180,0x06c171e8,0x05938aa0,0x04e3c798,0x04273280,0x04024618,0x0367d580,0x03918078,0x035b12b8,0x03b4e6c8,0x02e7b1c4,0x03a2d174,0x033120e4,0x044da268,0x05451568,0x0700ab78,0x084383b0,0x0d7de180,0x0c817c80,0x0bd8a6e0,
-0x0c84be10,0x0d1b3bb0,0x0dcf7740,0x0ea830e0,0x0fc74e30,0x0f0aecf0,0x0ea4c6d0,0x0e257b90,0x0d944090,0x0d102240,0x0c8ad3e0,0x0bd782f0,0x0b18cb90,0x0a881dc0,0x0a08b2c0,0x096a0bb0,0x09654280,0x09e01450,0x071f0eb0,0x07653cf0,0x06c31eb0,0x06369d10,0x068f5608,0x06ad1908,0x07547df8,
-0x06c62e38,0x0770c568,0x07463878,0x068b0598,0x0767fc28,0x07d435e8,0x0888bc40,0x09bb6ce0,0x0ae24550,0x0c08a4e0,0x0a3cf8b0,0x0af482b0,0x0af35480,0x0b3c5460,0x0b63d850,0x0bb7bc30,0x0b5a8ea0,0x0b26b690,0x0af03600,0x0ac425e0,0x0a9e1300,0x0a7fac20,0x0a5d20a0,0x0a3f6120,0x0a1349e0,
-0x09fbc330,0x095cbbd0,0x0afa0fa0,0x0a240100,0x0ae20b60,0x0f8668a0,0x09cb3900,0x0a498340,0x0deafd10,0x0e538270,0x0dea74f0,0x0cab7750,0x0df939e0,0x0e4bad60,0x0db7d640,0x0a999280,0x0a8bd1b0,0x0f74df70,0x0bc07e00,0x0ce12080,0x000103b2,0x0000ceea,0x0000b005,0x0000ccbf,0x0000da29,
-0x0000b8ab,0x00010a9b,0x000103d4,0x0000b6a3,0x0000c80f,0x0000a789,0x0000706e,0x00006c1e,0x00007d7c,0x0000c81e,0x0000d4a1,0x0000ec3f,0x0000f085,0x0000feff,0x00011421,0x00013354,0x000142ea,0x00013e85,0x00014647,0x0000e662,0x0000d117,0x0000be67,0x00010122,0x0001159b,0x00012dc5,
-0x0000ff7c,0x0000ecfa,0x0000e07e,0x0000c4d1,0x0000cfc9,0x00017ae5,0x0000eb47,0x0001721e,0x0000f2b7,0x0000eb9b,0x0000cbe8,0x00009421,0x00014e77,0x00016a31,0x0000a535,0x0000f66e,0x0000b36d,0x0000aec6,0x00006957,0x00007a6f,0x00011e6c,0x00012124,0x00017217,0x00016712,0x0001a4f6,
-0x0001ff0f,0x0002703f,0x0002c591,0x0002b65f,0x00029012,0x00017615,0x0001039f,0x0000d750,0x000179c9,0x0001db8b,0x0002159c,0x0001a184,0x000134a9,0x0000f797,0x0000ab6c,0x0000fe7e,0x00039aad,0x0001e57b,0x0001c37a,0x000210b4,0x0001828b,0x0001b58d,0x000130b2,0x00031945,0x0002e128,
-0x000094fc,0x00014578,0x0000e8e7,0x0002f1b5,0x00021428,0x0001f792,0x000339ba,0x0001cc56,0x0002247a,0x0001da93,0x00027173,0x00035b1d,0x00047fb2,0x00056cd4,0x0005a65a,0x00055579,0x0002871b,0x00014a16,0x0001385a,0x0002b8bd,0x00038d27,0x00047963,0x0003163c,0x00022e8e,0x00018549,
-0x00011b81,0x00014127,0x0007189f,0x00020b18,0x0004cc18,0x00030fdb,0x00023495,0x00015292,0x0002b7af,0x000457ff,0x0004845b,0x0001467d,0x000194a0,0x0002b106,0x000b43e5,0x000a73a1,0x00094b78,0x0008706a,0x00049620,0x00047987,0x0003855a,0x00046fdf,0x00068e89,0x0008ce35,0x000a73a4,
-0x000a8f3c,0x000b6b9c,0x00065886,0x000366ef,0x00027867,0x0004725c,0x0006ea59,0x0008d831,0x000643ca,0x0004bbc8,0x000254a0,0x0003b4fd,0x0002c2d9,0x00125c37,0x0007e89f,0x001f7e71,0x0008e5c9,0x0005ad49,0x000d14f6,0x00265533,0x00118a22,0x00096de4,0x00059818,0x000a7c65,0x000844fc,
-0x000e9464,0x000d2935,0x000bd27d,0x00080c62,0x000321e6,0x0002a332,0x0002a80a,0x000290a1,0x0003393c,0x0004ce4e,0x0008dba8,0x000a356f,0x000ae3e2,0x0006407f,0x000474b2,0x0003a0e4,0x00018ae9,0x0001f1fd,0x0008b889,0x00072730,0x00095de8,0x00092b86,0x000bc946,0x000552ef,0x000dc9ac,
-0x00185e6e,0x00289661,0x003574dc,0x0009bc05,0x000915b7,0x00226389,0x001c6646,0x000ff074,0x000dae9d,0x0004fbd3,0x0005e40b,0x0006536e,0x0004632e,0x0003ee29,0x0002e29a,0x0003325a,0x0003c7d4,0x0002d50f,0x000257d2,0x0002c159,0x00037836,0x0002d8b3,0x00027ee2,0x0002ddfe,0x00036a5f,
-0x0002abd6,0x0001eed1,0x000331e5,0x0003d861,0x0003e047,0x0001367a,0x00019459,0x00057c2c,0x000ab730,0x0009a019,0x000eba0f,0x001ff155,0x0011c84e,0x0017101c,0x000f0c6f,0x000e6149,0x000c46ad,0x0011c843,0x000ac3d7,0x001187da,0x000cc9b4,0x000a61d0,0x00058639,0x0002e0e4,0x000245f7,
-0x000340c6,0x000387c4,0x000327cb,0x000255ee,0x0003831c,0x00036413,0x00063da7,0x000144d4,0x0000c315,0x00020b65,0x0001982e,0x0000d27f,0x0000f93c,0x0000c1ea,0x00004d51,0x00004bd5,0x0001a01e,0x0002d0b7,0x00036121,0x00049203,0x00074e0a,0x000a422a,0x000ccbdb,0x002a2744,0x0035aa19,
-0x005b3d77,0x0052fd10,0x002adf5a,0x00169cd5,0x000f4d66,0x000e856b,0x0008fdf9,0x0007e635,0x00075437,0x00050b66,0x0004bd3a,0x00034057,0x0002e507,0x0002a972,0x0002a282,0x00030b2d,0x0002bb6a,0x0003b1da,0x00020e43,0x000229a9,0x00020682,0x00020754,0x00014aeb,0x0000f526,0x000078a9,
-0x00008e4b,0x0000f9b0,0x00013809,0x0001b36c,0x00050223,0x0004504a,0x00090323,0x0014797d,0x00201108,0x004d9d85,0x006760d3,0x0057a229,0x00376de9,0x002339ad,0x001d538e,0x001f6a86,0x00173c01,0x000d8737,0x000965df,0x0006aa64,0x0005c465,0x00046371,0x0003755c,0x00027204,0x000231a8,
-0x0001e04a,0x0001e70f,0x0001ce4c,0x00016dd6,0x0000f745,0x0000d6ff,0x00017f0a,0x0000c379,0x0000c51a,0x00016e64,0x0000c9b3,0x0000f4f6,0x00017c5a,0x0003311f,0x00068164,0x000b8b4b,0x00217280,0x00309bab,0x0031f110,0x003b54e4,0x00380101,0x0033c1b5,0x002f0d18,0x00254678,0x002317c6,
-0x0025167f,0x002191de,0x001ac2c5,0x0011a1d7,0x0010506c,0x00105c7a,0x001199ec,0x00108d20,0x000b70ea,0x000af7e8,0x00096bfc,0x000750cb,0x0005c69c,0x0003aabf,0x00015ed6,0x0001ab3a,0x000159db,0x00013e5c,0x00014721,0x000298fb,0x000562cf,0x0007bff3,0x000b098b,0x000df4e3,0x001527f8,
-0x001bdecc,0x0020e099,0x001f0924,0x001ee03d,0x00252bfd,0x002c190c,0x001bd8f0,0x001eeaf7,0x001e4a07,0x0020dba0,0x00285979,0x002431e7,0x00273ace,0x002f6c35,0x0022ae2b,0x001a6ad0,0x0018386c,0x0013ec16,0x001072d3,0x000dd64f,0x000b09ac,0x000927b2,0x0007b3cb,0x00054104,0x00035e43,
-0x000250e8,0x0001b589,0x000144bc,0x00022f40,0x0002f908,0x0004d524,0x00079bac,0x000986f2,0x000bb705,0x000fbf7a,0x00108f1b,0x00129d3c,0x0015e903,0x00175e09,0x001a4f03,0x001d9424,0x001c5c21,0x00146b85,0x001401ba,0x00129469,0x00118e4c,0x0010fe0f,0x0010e92b,0x00111a77,0x00123b48,
-0x00106995,0x001044fe,0x000f53ee,0x000e9602,0x000da3e4,0x000d4a72,0x000af99b,0x00091258,0x000754e6,0x0005ebe6,0x00049388,0x00036354,0x0003e9a1,0x0003e315,0x00047e4e,0x00050944,0x00063738,0x00076135,0x0008c171,0x000a3c16,0x000bd285,0x000d7a61,0x000f707a,0x001196ad,0x0011a846,
-0x00120c8c,0x00123c45,0x0012b564,0x000ef66e,0x000eeae1,0x000e9e8a,0x000eab44,0x000e8a86,0x000ef87e,0x000f3974,0x000fabc1,0x000f0e9d,0x000e8ae3,0x000e396d,0x000d8e56,0x000d0e28,0x000cc499,0x000be288,0x000b37a2,0x000a9628,0x0009c861,0x00093cf2,0x00082e50,0x000929c9,0x0009b913,
-0x000acd58,0x000a0aff,0x000abd01,0x000bd45d,0x000c3976,0x000c84b0,0x000cfc9f,0x000d84ca,0x000e1f60,0x000ee853,0x000e7920,0x000e5073,0x000fa30b,0x000f1902,0x001152cf,0x00000c78,0x000007f6,0x000008c8,0x00000b67,0x00000e56,0x00001874,0x00000dfa,0x00000a00,0x000003e5,0x00000c50,
-0x00001016,0x00001571,0x00000f93,0x00001138,0x00001a3f,0x00001bf5,0x00001a87,0x0000144a,0x00000c10,0x0000093c,0x000008e1,0x000008f7,0x000009ba,0x00000c04,0x0000108a,0x00000e4b,0x00000470,0x0000097c,0x0000088d,0x000008dd,0x000005de,0x000003f1,0x00000721,0x000004c6,0x000006e6,
-0x00001089,0x0000088f,0x000008c5,0x00000c96,0x00002305,0x00003871,0x0000651c,0x00003e4d,0x000025cd,0x0000074d,0x000018a4,0x00001f06,0x00003df9,0x00001c85,0x00003b49,0x000088ea,0x0000afe3,0x0000a5b2,0x00006a8a,0x00003435,0x00002113,0x00001ea9,0x00001756,0x00001146,0x000017a4,
-0x00002e8a,0x00002a78,0x00000c21,0x00001a1d,0x00001b45,0x000029c3,0x000025fb,0x00001e29,0x0000257b,0x000009b5,0x000006b3,0x00002f3d,0x00000ad6,0x000003fb,0x00001bf4,0x000035ea,0x00007550,0x0000de1c,0x0000b025,0x00006f56,0x00002ac8,0x00003817,0x00005e48,0x0000d611,0x00006aed,
-0x000088a8,0x00012fb0,0x0001401c,0x000122b9,0x0000ac56,0x00003c3b,0x0000290a,0x000037ab,0x00001f6d,0x000016ab,0x000026a4,0x00006434,0x000049ee,0x00005b66,0x0000463c,0x000087b4,0x00015920,0x00014ac7,0x0000e2a2,0x0000a189,0x000021a4,0x000009a4,0x00006de5,0x00000816,0x00003835,
-0x00002175,0x0000e9c1,0x0001af74,0x00032b12,0x00023f44,0x00017358,0x00007fb3,0x00005dca,0x00006d70,0x0001dcd6,0x00007596,0x0001a8ea,0x0004cd7d,0x000607ab,0x00055202,0x000367f4,0x0001ae85,0x000150f8,0x00015091,0x0000c667,0x00005493,0x0000a54d,0x0000e371,0x0000981e,0x00006b80,
-0x00006437,0x00006d54,0x0000f44f,0x000211b1,0x0001ce8e,0x00019515,0x0000e9fa,0x0000510b,0x000185ef,0x000062f2,0x00034ba9,0x00031166,0x000668bf,0x00063127,0x00054f83,0x0001fdb0,0x0000e1ef,0x000146a8,0x0000a781,0x0002700c,0x0004f81b,0x00048d86,0x0003c905,0x00060f36,0x0004fbad,
-0x0003d652,0x0003b204,0x0003e467,0x0004af9d,0x0004653b,0x0003657e,0x00023f64,0x0001c763,0x0000e3bb,0x00006191,0x00006add,0x00006c4b,0x00008e09,0x00000f82,0x000014a1,0x0000d8e2,0x00024284,0x0001f3b4,0x0001ba35,0x000129b8,0x00021a89,0x00047ac6,0x0001da68,0x0001c2fe,0x00022b6a,
-0x0004ce43,0x00064bee,0x00069df5,0x0001d57a,0x00011a56,0x0001423e,0x0005fbb6,0x0004489a,0x00055b3c,0x00050f0e,0x0002a8e8,0x0002609d,0x0001b459,0x00018a58,0x0000fc0f,0x000130f2,0x000071c0,0x00003f41,0x000024f3,0x00001fb4,0x00000aed,0x00003889,0x0000445c,0x00005bb8,0x0000285c,
-0x00000e3a,0x00006015,0x000180eb,0x0005d9a7,0x000587fb,0x0002fb85,0x00023d17,0x001783ae,0x002af2bd,0x000a07bf,0x0002b87a,0x0007a3a5,0x0005d535,0x00061aa5,0x0007e199,0x00060a8a,0x00061108,0x0004924f,0x00018d24,0x00026f44,0x000311ce,0x0002142e,0x0001d552,0x000140c0,0x0000c281,
-0x000067a2,0x00005ed4,0x00002514,0x00001b21,0x000046a3,0x0000403c,0x000028e9,0x00003275,0x00000275,0x00000e18,0x00000567,0x0000165a,0x000042e4,0x000079ce,0x000061df,0x00006ffa,0x0001f2ac,0x000a6407,0x000aa60e,0x00163c56,0x0007d402,0x000360c5,0x00047309,0x000417e6,0x0002f027,
-0x0003f11a,0x0001f33b,0x00024518,0x00016127,0x00008525,0x0000f4ea,0x00013ef2,0x00010ee9,0x0000d3b8,0x0000cc25,0x0000a306,0x0000c535,0x0000cf27,0x0000b273,0x00008f1d,0x00006b5a,0x0000161f,0x0000018b,0x0000068c,0x00000271,0x000005cb,0x000007eb,0x00000186,0x00000351,0x00003e29,
-0x00005c8b,0x00007db4,0x00049f9a,0x00091e34,0x00053a14,0x0004af76,0x00030e5e,0x00027a90,0x00010dec,0x0000978a,0x00013caf,0x00018872,0x0002614a,0x0002f0ea,0x000327ec,0x000299e4,0x0001d6a8,0x00015f24,0x00008224,0x00002aa4,0x00004660,0x0000a1cd,0x00010e94,0x00016ba0,0x00018aa7,
-0x00014e9b,0x00010cc0,0x00006d86,0x00002249,0x0000059e,0x00000893,0x00000f89,0x000012ac,0x00001b22,0x00001b08,0x00002e51,0x00000ec9,0x0000241b,0x0000c728,0x00039ecb,0x0001aa82,0x0001e1b1,0x00021823,0x0001ecfd,0x0001b5c7,0x00018123,0x0001a505,0x0001fdbd,0x0001d045,0x0001dd04,
-0x00021a14,0x0001e78e,0x000196f7,0x00010df8,0x0000a118,0x0000414d,0x00001abc,0x00001e58,0x00003554,0x00006519,0x000072fa,0x00005b02,0x00003e95,0x00003e2f,0x00003bf1,0x000037a4,0x000027f0,0x00004569,0x00005e51,0x000088cc,0x00009e1f,0x00009bfa,0x0000d006,0x00010734,0x0001286a,
-0x00015790,0x000129af,0x00013428,0x00010914,0x0000cb4f,0x00008f29,0x000062d9,0x00005e7e,0x00006e22,0x00005d86,0x00005792,0x00006470,0x00003956,0x00003109,0x000044f2,0x00003bbe,0x00003e7e,0x00004b41,0x0000483e,0x00004fda,0x0000603b,0x00006beb,0x0000804d,0x00009adb,0x000079dd,
-0x00007e1a,0x0000ae20,0x00009552,0x00009ad8,0x0000b8e5,0x0000bea5,0x0000cfb0,0x0001073e,0x00010cab,0x0001406e,0x00016dc6,0x00013892,0x0000dd24,0x0000d60c,0x0000b8a4,0x00009f61,0x00007f29,0x000065fb,0x000054a6,0x000058cb,0x00005610,0x0000589d,0x0000576f,0x000053c7,0x00004e8b,
-0x000051a4,0x0000529c,0x0000596b,0x000062d4,0x00007005,0x00007e40,0x00008ee5,0x00008d95,0x00008b1e,0x0000963d,0x0000a6b4,0x0000bf0e,0x0000ddd5,0x0000d418,0x0000d984,0x0000e674,0x0000efb6,0x000105f8,0x00012025,0x00010145,0x0000e470,0x0000df68,0x0000cbf9,0x0000721e,0x00006cf9,
-0x000066f1,0x00005f38,0x00005c09,0x00005867,0x0000562c,0x00005266,0x000052b2,0x000052f8,0x00005635,0x0000595b,0x00005e23,0x0000626c,0x000066b0,0x00006a2e,0x00006dcd,0x00007219,0x000076b9,0x00007e7c,0x00007e2c,0x000080b7,0x0000843c,0x00008350,0x000086c8,0x00009561,0x0000903a,
-0x00008f5e,0x00008abf,0x00008b73,0x0000896d,0x00008d88,0x00007df7,0x00007884,0x00007bdd,0x00007824,0x00008e1d
-};
-const UWord32 defaultHRIR_rom_ER32_fx[HRTF_MODEL_N_SECTIONS * 470] /*Q28*/ = {
-0x054a4a90,0x04b59ef0,0x056004c0,0x04f624c8,0x05412248,0x06704ac8,0x0497dc00,0x04a6cb70,0x05db4030,0x05f962d0,0x05ca3a18,0x0545d3b0,0x05bf93a0,0x05e45250,0x05cc2d70,0x0479a490,0x0443aa10,0x06608268,0x04a79d68,0x046b7780,0x048cf9f0,0x040d0960,0x045d49a0,0x04798b10,0x049221d8,
-0x04ab4a30,0x04c19e60,0x04e487e0,0x050b7560,0x05396118,0x056ed2e8,0x05a36f38,0x06096f58,0x05c92ae0,0x05a1f158,0x05593640,0x052acdc0,0x06fdff08,0x06daac48,0x06c51e00,0x04ae7998,0x04066aa0,0x038b0910,0x035dec1c,0x02f83044,0x031c4304,0x0322f880,0x03106168,0x0324368c,0x02dda158,
-0x02dda124,0x02b7a97c,0x02d7a5cc,0x035008c8,0x032bd304,0x043cd348,0x043d7fa8,0x04516aa0,0x04be5bc8,0x052abe80,0x056f24d8,0x05be9088,0x060e7f78,0x0679cd48,0x070ce1f8,0x07cbfcf8,0x08b5d8f0,0x09a80d70,0x0afcb9c0,0x0a733f10,0x09cdcf00,0x08c3d910,0x0803aa60,0x09db3c80,0x07760478,
-0x05e1ce48,0x046b80b0,0x035440e8,0x02848114,0x021041cc,0x01c0d4d0,0x0195dc28,0x0164366a,0x01c04be4,0x018b63a6,0x017e2740,0x016b522e,0x018902aa,0x01a4256a,0x02003fbc,0x0221170c,0x02b63784,0x02f7fdec,0x03dc75ec,0x047946e0,0x058c5418,0x062e1dc8,0x06fb03a0,0x07c7f340,0x08ea3c80,
-0x0a4508d0,0x0c113cc0,0x0dfbffa0,0x0ffedc50,0x131c1040,0x1115e2c0,0x0fa4b750,0x0d793680,0x0b2fd610,0x0eee3250,0x096b6e80,0x06da2d70,0x03edbf04,0x02b0a2c4,0x01e530b4,0x01326718,0x00c10c60,0x009101d6,0x0093217b,0x00b9c9bb,0x00abc320,0x009b0c6e,0x0086a87e,0x009d1fa1,0x00bf43c2,
-0x0118a506,0x013a6262,0x01ce35d0,0x02268018,0x03172f4c,0x03bd9858,0x05144470,0x05ba8408,0x06b3c460,0x07af5cc0,0x091c2190,0x0b6df6c0,0x0ef13d70,0x13a11880,0x18c43a80,0x1feb67a0,0x1cd0fb20,0x190fc060,0x15d75c40,0x10ed03a0,0x2446ac00,0x17330660,0x1075c760,0x08030e20,0x04fa9cf8,
-0x0355c878,0x0289819c,0x01a2898a,0x010ea774,0x00cc95ee,0x00d09c62,0x00cb16e2,0x00c4135e,0x009f6925,0x00aecedb,0x00db63db,0x013642c8,0x01caf75c,0x02e380a8,0x03c7abf4,0x06cc73b0,0x09f30d10,0x107e40c0,0x144e0000,0x1a95e940,0x22d8fe80,0x27137180,0x2a10eb00,0x2a56ef40,0x2998bc00,
-0x26a46880,0x24091340,0x23e44e00,0x24f7ee00,0x29293d00,0x23aaaf00,0x3c3d3080,0x141d6560,0x12462960,0x07e0b878,0x05cb5b58,0x03523810,0x02112644,0x01c65f1a,0x013bb178,0x011fc388,0x01314438,0x00f85e8f,0x00d86f0e,0x00b76712,0x00d08001,0x010bb452,0x01e08818,0x02a871d8,0x0433b9d8,
-0x04df38a0,0x07ee9660,0x0a206120,0x106663a0,0x16e11280,0x1feb19e0,0x29c89a00,0x2dcd96c0,0x3029f480,0x30ff4580,0x2faee740,0x2e61a400,0x2d029d80,0x2997d640,0x2c371580,0x3a8afdc0,0x3934ee40,0x51beab00,0x22b27fc0,0x189b01e0,0x08e722e0,0x09757a10,0x0463a4d8,0x0376194c,0x01d1a076,
-0x01595d0e,0x0161e1a4,0x027b0c4c,0x01829a10,0x0155b614,0x01a69aa6,0x01645464,0x01e87210,0x02fdb8c8,0x032c5380,0x047347d0,0x050ccff0,0x08cf9b60,0x0b11aaf0,0x121ddd20,0x18351740,0x1fdc3f00,0x269b8340,0x2d363240,0x31569300,0x32f64880,0x2dd85940,0x2b7f5580,0x2ce75c00,0x27435c00,
-0x291fda40,0x40d7fd80,0x3f760080,0x33afd040,0x24de2b80,0x1311da00,0x09184de0,0x050a0d70,0x0362cc1c,0x02188584,0x01bfd860,0x0170481a,0x01a9b3ae,0x03c82244,0x017ab578,0x01362028,0x017b86a6,0x01ad6da4,0x021840c8,0x03103ebc,0x036cc880,0x048dc2d8,0x05422990,0x07dcd570,0x09008f70,
-0x0c5dab10,0x11a77260,0x17e62da0,0x1d691740,0x240271c0,0x274a7b00,0x2808a2c0,0x2a3b24c0,0x2971f2c0,0x298d6fc0,0x22227b80,0x1f1ee280,0x24fbf1c0,0x21d02700,0x1a1d2100,0x188a00e0,0x102726a0,0x0904b590,0x05dd5798,0x03b86338,0x02baaeb8,0x0274dc24,0x02045ee4,0x01e69104,0x028b94a8,
-0x01b0d906,0x018e404e,0x01a836fc,0x020b49ac,0x029f75c8,0x03218a14,0x03efc5fc,0x0624bf58,0x06e6f210,0x0860b230,0x08d4e990,0x0a7189c0,0x0c681670,0x10771ea0,0x16398040,0x1b030b00,0x1e9d4260,0x2145dac0,0x1fd46c60,0x1f151120,0x210afe00,0x1dadc9c0,0x1d4d4800,0x1dacba40,0x1d360700,
-0x1318e680,0x0fead0b0,0x0c34b580,0x08021030,0x05401528,0x046084b8,0x0310220c,0x025ef774,0x025329b0,0x025b0b04,0x02415960,0x02212e70,0x01f8d684,0x020149e8,0x025e0634,0x0326f428,0x043c4348,0x04cbf450,0x06281e28,0x06fe26e0,0x08b5b150,0x088001a0,0x09043180,0x0a8879c0,0x0c6b0410,
-0x0e481b60,0x10b66660,0x136ec480,0x16496c00,0x17cc9940,0x18911ba0,0x18d09300,0x18f6fec0,0x1848e600,0x162ca780,0x14fa44e0,0x0f5c9230,0x0cdd03e0,0x0a666620,0x0864de30,0x06e27798,0x052c0970,0x044a3a70,0x032d6e48,0x03a64014,0x02e582a8,0x03b36828,0x0357669c,0x038fda34,0x035cbfc0,
-0x03ff8858,0x04300230,0x0500c0a8,0x0593a5f0,0x06c621e8,0x07764d58,0x09028c90,0x08e20130,0x09ca75c0,0x0ac6cf00,0x0c08ee70,0x0d5b64e0,0x0eaa2f50,0x100092a0,0x11b859a0,0x123cd7e0,0x1334d2c0,0x14b97dc0,0x13d44400,0x136e3c60,0x13a58ea0,0x10f85380,0x0bd50ab0,0x0c8b8310,0x0d2e1980,
-0x0994a000,0x08a27180,0x07e28df8,0x07698140,0x0685afb0,0x074837d0,0x077817d8,0x06c18128,0x07525d90,0x06b02770,0x069e42b8,0x063dc828,0x06c28870,0x07685610,0x0719e7f0,0x09ca0390,0x097b3c10,0x0968da90,0x0a06c5d0,0x0a889ed0,0x0b1863b0,0x0bd7b3f0,0x0c8af5b0,0x0d1025a0,0x0d942080,
-0x0e25c840,0x0ea4abc0,0x0f0ad480,0x0fc71530,0x0ea88f30,0x0dcf60b0,0x0d1b8bc0,0x0c84f7b0,0x0a3d3cf0,0x0bfc3ea0,0x0af0ec00,0x0bab4a30,0x0f1ee8e0,0x0a969370,0x0a944050,0x0db5c340,0x0e49c540,0x0dfdb340,0x0cabe090,0x0de78ff0,0x0e544d90,0x0ded9980,0x0a478140,0x09c793a0,0x0fadfa20,
-0x0ae67ef0,0x0a255260,0x0ae8d0a0,0x095b3420,0x09fdc380,0x0a12f5a0,0x0a3f8930,0x0a5d2280,0x0a7fa0c0,0x0a9e19c0,0x0ac42c10,0x0af02990,0x0b26c200,0x0b5aa750,0x0bb7c950,0x0b63c760,0x0b3c6c40,0x0af2f840,0x0af545a0,0x0ce103a0,0x000103b3,0x0000ccb6,0x0000b051,0x0000ceed,0x0000eb5a,
-0x00017b93,0x0000cff1,0x0000c4ac,0x0000e02b,0x0000ec84,0x0000ff2b,0x00012d5a,0x000114f7,0x0001010f,0x0000be74,0x0000d155,0x0000e715,0x00014642,0x00013d8f,0x00014298,0x00013363,0x00011421,0x0000fefc,0x0000f085,0x0000ec42,0x0000d49e,0x0000c83e,0x00007d9c,0x00006c33,0x00007061,
-0x0000a7a8,0x0000c82d,0x0000b690,0x00010397,0x00010a68,0x0000b8ac,0x0000da42,0x0000ebce,0x0000f148,0x00017274,0x0001e568,0x0003976c,0x0000fe31,0x0000ab76,0x0000f7f3,0x000135a3,0x0001a2a0,0x00021654,0x0001ddb4,0x00017984,0x0000d70f,0x0001038f,0x0001736c,0x00028fbc,0x0002b952,
-0x0002c62a,0x00027012,0x0001fefb,0x0001a501,0x00016716,0x00017208,0x00012129,0x00011dcc,0x00007a80,0x00006978,0x0000af8a,0x0000b344,0x0000f61a,0x0000a550,0x00016af2,0x00014f17,0x00009439,0x0000cb89,0x00018293,0x000212ac,0x0001c3b1,0x00020908,0x0007235e,0x00013f54,0x00011cc3,
-0x00018522,0x00022d09,0x0003141b,0x000478fe,0x00038895,0x0002baae,0x00013977,0x0001486e,0x00028e61,0x00055583,0x0005a11f,0x00056c39,0x00047ff0,0x00035b48,0x0002716b,0x0001da72,0x0002249c,0x0001cc3d,0x00033c1b,0x0001f6c7,0x00021333,0x0002ef94,0x0000e901,0x0001461b,0x00009539,
-0x0002df60,0x0003178e,0x0001307a,0x0001b689,0x00023566,0x00030973,0x0004c2b6,0x0007f934,0x001224e7,0x0002c635,0x0003accb,0x00025531,0x0004bbc3,0x00064633,0x0008d850,0x0006e941,0x00046f6b,0x000274e0,0x00037676,0x0006316e,0x000b7997,0x000a9bd9,0x000a766f,0x0008ce32,0x00068f89,
-0x00046f0d,0x00038653,0x00047914,0x0004973e,0x00086473,0x000951b9,0x000a7bb9,0x000b3d51,0x0002b304,0x00019424,0x00014445,0x0004895c,0x00045c9d,0x0002b54f,0x00015467,0x0005b28c,0x0008e87a,0x001f840f,0x00183fe6,0x000dc59f,0x0005643c,0x000bb14b,0x0009249f,0x0009608e,0x00071c49,
-0x0008c2f9,0x0001eeba,0x00018857,0x0003abce,0x00047291,0x0006344d,0x000b0f1f,0x000a40d4,0x0008d1e0,0x0004d761,0x00033b42,0x00029070,0x0002a84f,0x0002a2c2,0x000323b0,0x0007ff72,0x000bdf8d,0x000d360d,0x000e9ec4,0x000847eb,0x000a6d9e,0x000592a3,0x000973aa,0x00118837,0x00265f4b,
-0x000d0fc1,0x0009cf7b,0x003553b0,0x0028ed3f,0x001fda23,0x000ec871,0x0009deda,0x000a4159,0x00059c69,0x000189bd,0x0001336e,0x0003e54a,0x0003d4bb,0x000332de,0x0001ecec,0x0002ada1,0x00037264,0x0002dd20,0x00027647,0x0002e850,0x00037578,0x0002c0b0,0x00025791,0x0002d69f,0x0003c707,
-0x00033362,0x0002e004,0x0003f111,0x0004663f,0x000656e7,0x0005e838,0x0004f82f,0x000d8ff9,0x000ff825,0x001c7525,0x0022578a,0x000910d6,0x000f26fc,0x00170c9c,0x0011dd99,0x000c5b9f,0x000a04c5,0x000763f7,0x000481ed,0x000372d1,0x0002d21e,0x00018b58,0x00004b2f,0x00004d3b,0x0000c2b2,
-0x0000fabc,0x0000d3a8,0x0001a03c,0x000206f4,0x0000bb54,0x0001485e,0x00063be4,0x00035f92,0x0003844a,0x000256a7,0x00032868,0x000387f8,0x00033eb6,0x00024728,0x0002e2d1,0x000584cc,0x000a63a9,0x000ccbcb,0x00116cec,0x000acce4,0x0011d888,0x000c45b9,0x000e56f5,0x005c762d,0x00343483,
-0x002b5ce8,0x002190e0,0x001435fe,0x0008e008,0x00046f84,0x0004c092,0x0001afac,0x00014264,0x0000ef6c,0x00008cd8,0x0000793d,0x0000fcf7,0x00014a88,0x00020d7b,0x00020546,0x00022904,0x000216a6,0x0003b00a,0x0002b923,0x00030b70,0x0002a3e5,0x0002a932,0x0002e57e,0x00033d87,0x0004bfbf,
-0x00050c97,0x000754ed,0x0007e69e,0x0008fe21,0x000e7c03,0x000f4ed6,0x00168e38,0x002b1280,0x00524435,0x00576805,0x006741d0,0x004f1231,0x003ddda1,0x0030ae44,0x003139cb,0x002113d8,0x000b6c21,0x00066d4d,0x00032714,0x0001844b,0x0000f310,0x0000c836,0x0001793e,0x0000c547,0x0000c43a,
-0x00018341,0x0000d9f0,0x00010046,0x00016dc6,0x0001cae7,0x0001e766,0x0001e16e,0x00023153,0x0002724a,0x0003722b,0x00046503,0x0005c622,0x0006ab05,0x00096521,0x000d8a91,0x0017261d,0x001f8435,0x001d5be9,0x002337b4,0x003771f0,0x002f1d06,0x00337a26,0x0035d94f,0x002c52f1,0x00261c26,
-0x001fece7,0x001ebe14,0x002195f6,0x001b8800,0x001528f6,0x000df3e7,0x000b0960,0x0007b63c,0x00056d1d,0x00029be5,0x000143a4,0x000140f3,0x00015c53,0x0001aa86,0x000160cc,0x0003a73d,0x0005c6f1,0x000751fe,0x00096be3,0x000af807,0x000b7029,0x00108f84,0x00119e31,0x001058e2,0x0010519f,
-0x0011a551,0x001aad70,0x0021a343,0x0025243d,0x0023174e,0x00253c56,0x001e3c9a,0x001f2419,0x001c6bbb,0x001bec9c,0x001cd56b,0x0019c5dd,0x00176253,0x0015b750,0x0012afbb,0x0010a2be,0x000fba9f,0x000bbaff,0x00098977,0x000799c9,0x0004d64b,0x0002f78f,0x0002332e,0x000140e2,0x0001b3b4,
-0x00025480,0x00035ce1,0x00054136,0x0007b3a8,0x000927be,0x000b09a7,0x000dd5c5,0x0010741b,0x0013ed9e,0x0018384f,0x001a69e1,0x0022ae24,0x002f6797,0x0027377b,0x00243060,0x002857fc,0x0020e07d,0x00129899,0x0013e86d,0x00142886,0x0012a52b,0x00125648,0x00122de0,0x0011b608,0x0011a171,
-0x000f723d,0x000d77aa,0x000bd379,0x000a3b06,0x0008c090,0x0007619a,0x000637df,0x000509da,0x00047d49,0x0003e777,0x0003ec1f,0x000360fe,0x000493fa,0x0005ec55,0x00075468,0x00091267,0x000af986,0x000d4a01,0x000da34a,0x000e95bb,0x000f530d,0x00104560,0x00106a1a,0x00123d27,0x00111b29,
-0x0010e99d,0x0010fe0f,0x00118d63,0x000e9df8,0x000ef263,0x000f0b06,0x000f2358,0x000f9891,0x000e4ccd,0x000e739c,0x000ee568,0x000e1e0e,0x000d8509,0x000cfc2c,0x000c84b2,0x000c3993,0x000bd418,0x000abc80,0x000a0abc,0x000acb91,0x0009b6d7,0x00092840,0x00082ecb,0x00093d05,0x0009c81e,
-0x000a964b,0x000b37ae,0x000be29a,0x000cc4d6,0x000d0e64,0x000d8e8a,0x000e39cd,0x000e8ade,0x000f0e3b,0x000fab15,0x000f392e,0x000ef877,0x000e8abb,0x000eab42,0x001152af,0x00000c78,0x00000b62,0x000008c8,0x000007f5,0x0000088c,0x00001087,0x000006e5,0x000004c4,0x00000707,0x000003f9,
-0x000005db,0x000008d7,0x00000892,0x0000097b,0x0000046a,0x00000e4b,0x0000109e,0x00000c0f,0x000009ad,0x000008ef,0x000008e2,0x0000093d,0x00000c0c,0x00001446,0x00001a87,0x00001bf5,0x00001a45,0x00001140,0x00000f98,0x00001567,0x0000101b,0x00000c51,0x000003e3,0x000009fb,0x00000df8,
-0x00001874,0x00000e56,0x0000230e,0x00000ca0,0x000008c4,0x00000ad8,0x00002f36,0x000006b9,0x000009a9,0x000025c1,0x00001dd1,0x00002624,0x000029e7,0x00001b59,0x00001a1d,0x00000c2f,0x00002a85,0x00002e39,0x0000176f,0x000011ae,0x0000176e,0x00001eae,0x0000210d,0x00003449,0x00006aa1,
-0x0000a5af,0x0000afdf,0x000088bb,0x00003b2c,0x00001c77,0x00003e3b,0x00001ef6,0x0000189b,0x00000749,0x000025e5,0x00003e5d,0x00006523,0x00003862,0x000035e2,0x00001bf4,0x00000400,0x00000815,0x00006e5d,0x000009be,0x000021b1,0x0000a10a,0x0000e3ba,0x00014a1f,0x00015945,0x00008739,
-0x00004646,0x00005b45,0x000049d9,0x0000644c,0x0000274b,0x0000160c,0x00001f71,0x0000377a,0x00002926,0x00003c14,0x0000ac20,0x000122be,0x0001401f,0x0001303e,0x000088e0,0x00006b11,0x0000d55b,0x00005e6b,0x00003846,0x00002b18,0x00006f0c,0x0000afe0,0x0000de0b,0x00007568,0x0000e7f6,
-0x000022b9,0x00003791,0x0000634f,0x000181a2,0x0000508a,0x0000ead0,0x00019658,0x0001d0c0,0x00020e23,0x0000f32d,0x00006d52,0x000063c0,0x00006d7d,0x000097c5,0x0000e249,0x0000a3cf,0x000057fe,0x0000c587,0x0001529d,0x00014fe7,0x0001af42,0x00036909,0x000551d9,0x000607da,0x0004ca0f,
-0x0001a8ab,0x00007555,0x0001dca0,0x00006dcb,0x00005d68,0x00007eaa,0x0001740e,0x0002406c,0x00032b15,0x0001af82,0x00066420,0x0003138e,0x00034c23,0x00021a1e,0x00012da2,0x0001b945,0x0001f1da,0x000243a9,0x0000d921,0x0000144f,0x00000f28,0x00008db1,0x00006a90,0x00006cd9,0x000061d4,
-0x0000e37f,0x0001c720,0x00023f3f,0x00036804,0x000462c4,0x0004b19d,0x0003e1c8,0x0003b584,0x0003d545,0x0004fd65,0x000605cf,0x0003cc6e,0x000491cd,0x0004f993,0x00027028,0x0000a7df,0x000143d5,0x0000e298,0x0001fe03,0x00055013,0x00062f76,0x0001c456,0x0001d4e7,0x00048845,0x000234dd,
-0x0002eafa,0x000598c3,0x0005c38c,0x000185f0,0x00005e19,0x00000e2c,0x000028d6,0x00005bbf,0x000043a9,0x00003821,0x00000aec,0x00001e0a,0x000025bf,0x00003cbc,0x000077b7,0x0001300a,0x0000fb1b,0x00018aa0,0x0001b4c6,0x000260e5,0x0002a979,0x000506e3,0x00056068,0x00044c00,0x0005fb17,
-0x0001425b,0x00011a9b,0x0001d290,0x0006a460,0x000652b0,0x0004cd05,0x00022cb0,0x000a106e,0x002ae407,0x0017857f,0x000a5172,0x0001ed3a,0x00006f66,0x00006179,0x00007a2d,0x000043cb,0x0000161c,0x00000588,0x00000df4,0x0000028b,0x00003307,0x000028c1,0x00003f78,0x000045bf,0x00001b52,
-0x0000252d,0x00005e95,0x00006783,0x0000c289,0x0001410a,0x0001d530,0x000214b8,0x00030da7,0x000271ba,0x00018ea7,0x00048f5a,0x0006184e,0x0006074a,0x0007d42a,0x00061e8d,0x0005d51d,0x0007a41a,0x0002b590,0x0007e67a,0x001625a4,0x000aa822,0x0009129f,0x00049d9e,0x00007de0,0x00005d14,
-0x0000404f,0x00000352,0x00000194,0x00000828,0x000005dc,0x00000271,0x000006c2,0x0000019a,0x000015aa,0x00006979,0x00008f9a,0x0000b5d7,0x0000cf04,0x0000c584,0x0000a29b,0x0000ccdf,0x0000d383,0x00010f07,0x00013ded,0x0000f54d,0x0000852f,0x00016129,0x00024581,0x0001f41b,0x0003e8ed,
-0x0002f308,0x00041991,0x0004736a,0x00035c7a,0x00030b71,0x0004aaab,0x00053e33,0x00039934,0x0000cb45,0x00002420,0x00000e39,0x00002c95,0x00001c2d,0x00001ab7,0x000012ca,0x00000f61,0x000008b0,0x00000584,0x00002360,0x00006e1c,0x0001071d,0x000154d0,0x00018b02,0x00016c1e,0x00010de0,
-0x0000a1e5,0x00004675,0x00002aa5,0x0000825c,0x00015e11,0x0001d72f,0x000299e2,0x00032801,0x0002f131,0x00026192,0x000187ec,0x00013d95,0x000097c1,0x00010e66,0x000279c5,0x00021680,0x0001e320,0x0001a462,0x0001573f,0x00012c41,0x00010bb5,0x0000cf4d,0x00009db1,0x00009ccd,0x000089ce,
-0x00005da9,0x00004660,0x000026f1,0x000037b8,0x00003c05,0x00003d40,0x00003cd6,0x00005c63,0x00007166,0x000063ca,0x000035d8,0x00001e28,0x00001ad3,0x00004153,0x0000a11f,0x00010dd2,0x00019722,0x0001e7e9,0x000219bd,0x0001dd5e,0x0001d046,0x0001fcdb,0x0001a561,0x00018113,0x0001b5c8,
-0x0001ed1c,0x00010858,0x000135ff,0x000129f0,0x000131e6,0x00016942,0x00013e3f,0x00010d1c,0x000105d6,0x0000d04d,0x0000bf6f,0x0000b8d2,0x00009b49,0x0000953e,0x0000ae9a,0x00007e41,0x00007a55,0x00009b94,0x00008028,0x00006bd7,0x0000604d,0x00004fd2,0x0000483f,0x00004b32,0x00003e7e,
-0x00003bbd,0x000044f4,0x000030ff,0x00003954,0x0000645a,0x00005794,0x00005d8a,0x00006e17,0x00005e82,0x000062d4,0x00008f2d,0x0000cb44,0x0000b869,0x0000d6df,0x0000de51,0x0000caeb,0x0000dd14,0x0000e2d0,0x000100f8,0x00011fcc,0x000105ee,0x0000efe6,0x0000e662,0x0000d977,0x0000d42c,
-0x0000dd6e,0x0000bed6,0x0000a64c,0x00009595,0x00008afc,0x00008d74,0x00008ebf,0x00007e46,0x00007006,0x000062db,0x0000596c,0x0000529a,0x000051a6,0x00004e87,0x000053c5,0x00005767,0x00005899,0x00005610,0x000058dc,0x000054a2,0x000065f0,0x00007f2f,0x00009f5e,0x000066f3,0x00006ce8,
-0x0000722b,0x0000789e,0x00007c98,0x000078ef,0x00007e1f,0x00008d9b,0x00008974,0x00008b66,0x00008ac2,0x00008f60,0x0000903c,0x0000957b,0x000086e2,0x0000837c,0x00008482,0x000080cd,0x00007e2d,0x00007e7e,0x000076b8,0x00007218,0x00006dcc,0x00006a2d,0x000066b1,0x0000626d,0x00005e25,
-0x0000595c,0x00005638,0x000052f9,0x000052b0,0x00005261,0x0000562b,0x00005869,0x00005c08,0x00005f3c,0x00008e1b
-};
-const UWord32 defaultHRIR_rom_EL16_fx[HRTF_MODEL_N_SECTIONS * 470] /*Q28*/ = {
-0x0624a2d8,0x0502a108,0x05b79728,0x056d4278,0x05b9bb98,0x05e5c5a0,0x06306120,0x0654ff78,0x067b1728,0x063a1c20,0x0613f848,0x05ee0980,0x05c33e88,0x059d3e18,0x057b0f90,0x05587a98,0x053bcb90,0x0523f068,0x050f7448,0x04db7478,0x0523f160,0x04961aa0,0x049bddb0,0x05a78478,0x046b85e0,
-0x04637c28,0x05380080,0x054a5d90,0x05363028,0x050b2de0,0x05249788,0x0537d5d8,0x053265e8,0x047e3db8,0x04ac31f0,0x05954f50,0x04ef02d8,0x063a6220,0x071ba9b0,0x074d5100,0x07f8d530,0x08ad8a40,0x09c936d0,0x0a6c9e40,0x0abe03a0,0x09ec2c90,0x093fda60,0x089fee20,0x0805d110,0x078068a0,
-0x07113e30,0x069a8fe0,0x063d24d0,0x05fd1120,0x05a84f60,0x0560f1b8,0x051edb20,0x04cd7c58,0x043a1788,0x04023720,0x03bcda18,0x039264e8,0x037f5924,0x03993a9c,0x03b1705c,0x03aa9534,0x03a49c58,0x03bc5730,0x03c748b4,0x0415fee8,0x044e85d8,0x0496d008,0x05614688,0x061778a8,0x07d401b8,
-0x08e3d410,0x0a423230,0x0c1ae360,0x0e9a3640,0x10088aa0,0x113c9b80,0x0f1d94d0,0x0d7fb680,0x0c0d7f90,0x0a957c00,0x096bf460,0x08781eb0,0x07806ca0,0x06b5b0c8,0x062c1d90,0x0566aa80,0x04f7ca40,0x041c4a40,0x03a244f4,0x03260ad8,0x02cac318,0x027afedc,0x02483b1c,0x020f71a4,0x024ae7b4,
-0x025bc7d4,0x02849c9c,0x021f34dc,0x0225460c,0x02617ba8,0x02bf0b30,0x03465ebc,0x03cfc0d8,0x04e170b0,0x06911b40,0x094cc250,0x0af33e50,0x0d161280,0x10885f20,0x152c92a0,0x18b0a460,0x1aca7ee0,0x15e14dc0,0x1212d800,0x0f1f4ef0,0x0c9ef5c0,0x0aa2a6b0,0x09304520,0x07b416f0,0x06971fe8,
-0x05dd11d8,0x04efd298,0x0449c788,0x037203f4,0x02e2fe84,0x02260c0c,0x01c953ae,0x0160b458,0x012c78d0,0x0104b350,0x0131e1fc,0x0156c9bc,0x016813c8,0x011c214a,0x0109f02c,0x015718e0,0x01ae7b0c,0x02489ed0,0x0301f85c,0x048b4748,0x0be97980,0x0eb9f950,0x12431220,0x16053d40,0x1b3b95e0,
-0x1e454380,0x204f6480,0x20e438c0,0x228e2180,0x22b17840,0x1e0fc940,0x1d0985c0,0x1a18efe0,0x167d71a0,0x12688ba0,0x0ed76a60,0x0c7a60b0,0x08bb6c10,0x06d53910,0x04d8fbe0,0x03ab79b8,0x02b2d390,0x0216eb08,0x01745d44,0x013c7076,0x012b97a0,0x017e3c6a,0x018e2c06,0x01801ec6,0x0160c0cc,
-0x0186e664,0x022a2058,0x02de0148,0x041699d0,0x05990d40,0x08f10090,0x0dc85720,0x10e886c0,0x15d9d8a0,0x1a0cd3e0,0x2301d1c0,0x265aefc0,0x28f166c0,0x2820ff80,0x265bc100,0x22be5180,0x1d8e31a0,0x1ab6a1c0,0x17ba5a20,0x1574a7e0,0x119a8760,0x0e5695f0,0x0be73ad0,0x09c9ad30,0x0892ce60,
-0x0674abb0,0x049e57e8,0x0330e1b8,0x024a83ec,0x01b620b0,0x01649f2a,0x01416fe0,0x0190bcc8,0x01dd9f6c,0x025dc42c,0x022350ac,0x02636e1c,0x0320d224,0x03895380,0x04eca110,0x073757a0,0x0a673ea0,0x0f044990,0x15234ce0,0x1e29dee0,0x24263140,0x2c386880,0x30414c00,0x344d9d40,0x343e5240,
-0x3142a000,0x2b597d00,0x243a3940,0x1d5cca00,0x1765d500,0x1294d8a0,0x0ef6c040,0x0c33c290,0x0a986780,0x08e3fa20,0x08229e90,0x06ef0d10,0x05f32760,0x04ded370,0x03e51784,0x02c034c8,0x023a7d98,0x02caf794,0x026cc4e4,0x02d7a04c,0x04b41980,0x0292040c,0x02584f90,0x033182e4,0x03ecd26c,
-0x05358700,0x0795b678,0x09fdeb80,0x1028b440,0x16ff2420,0x1eb27760,0x26345cc0,0x30ba6ac0,0x301470c0,0x3103b4c0,0x3373fdc0,0x31a9d680,0x2d540780,0x25c60900,0x2011c340,0x1a5b8be0,0x14c54780,0x1094fe40,0x0cf38b10,0x09e890f0,0x08b4e8e0,0x07e94ca0,0x06f462f0,0x0616a380,0x05164cb8,
-0x04612cf0,0x0365ed34,0x02b00f80,0x029c1c54,0x022bd440,0x02ca387c,0x06f131c8,0x031a3b84,0x02aca900,0x030f4ddc,0x03ba2ce8,0x04e50658,0x0701cc30,0x0a8cf270,0x0e903b40,0x145b6920,0x1f5ae020,0x26581a00,0x2946ec40,0x2a025780,0x28c33380,0x26b16e40,0x212d2000,0x1ec910c0,0x1e241960,
-0x19e84c00,0x15b26ea0,0x11a9d8a0,0x0db51b30,0x0b33bb50,0x09991cf0,0x08d9d610,0x0854d4d0,0x07cc3310,0x068f3da0,0x059da200,0x04ad4498,0x03d908a0,0x033f10d8,0x02e22714,0x02f268e0,0x0330596c,0x0492e2f0,0x03593910,0x0350b3e8,0x035af7f8,0x04642e08,0x058bf328,0x07489fd8,0x0a1d0120,
-0x0fc0a7b0,0x11ed4d40,0x17a7af60,0x1b047380,0x1e002b20,0x20198840,0x1f8502c0,0x1cbd4640,0x19e66800,0x16fb8720,0x14667bc0,0x11530f20,0x0f1885f0,0x0d6fe510,0x0c2ae5d0,0x0b21a6b0,0x0a39a850,0x0a69bb60,0x0a43e190,0x0844c790,0x085c8a70,0x06c99650,0x05c98220,0x04df7be8,0x040db858,
-0x038f4584,0x0398de18,0x03c5a980,0x03a4f86c,0x03e14bd4,0x03e4ce1c,0x03cd0f54,0x0489bb78,0x05bf05f0,0x079032c0,0x0a753ef0,0x0e139e20,0x10534980,0x130efaa0,0x157f4260,0x18ef2c80,0x184a9ac0,0x184e6200,0x18d4bee0,0x16e26de0,0x15483420,0x13cea400,0x127b2a00,0x112c45e0,0x0fcd8230,
-0x0f15d430,0x0e82fa50,0x0df43f00,0x0cb8ad60,0x0bb2a1d0,0x0a897590,0x0996b110,0x0852ad80,0x07463cb8,0x06549c68,0x06351e88,0x0524dae0,0x0593e9f8,0x04e6ce08,0x059461d8,0x04bec1f8,0x05c83d98,0x0554fbf0,0x06df2d20,0x0830b9d0,0x0a60f2b0,0x0b88f820,0x107e2700,0x0e6c0420,0x0e794df0,
-0x0f35fe20,0x100b60c0,0x10fe6dc0,0x1214e020,0x135bdd20,0x12af0860,0x12507320,0x11dcda00,0x116a4c00,0x111531a0,0x10d0ac60,0x0ff95670,0x0f1516a0,0x0e4fd8d0,0x0d855130,0x0cb04c10,0x0c64f800,0x0df96910,0x0a22e4c0,0x09e4eea0,0x09407da0,0x08940b40,0x07f95de8,0x082c6ab0,0x0894bb00,
-0x085ba730,0x08ba72d0,0x08990780,0x08279020,0x09204a20,0x09f9e440,0x0aceb060,0x0baf9b20,0x0c802c40,0x0d630f70,0x0c2f06e0,0x0ccb6be0,0x0ce416a0,0x0d3fc000,0x0d7ce630,0x0dedbf90,0x0da32640,0x0d8706e0,0x0d679610,0x0d4cece0,0x0d3152d0,0x0d26f6f0,0x0cd4b0c0,0x0c958530,0x0c4ccae0,
-0x0c2360d0,0x0b9495a0,0x0cab1b70,0x0c1ef330,0x0d196120,0x1203e700,0x0b1295f0,0x0c14e480,0x0fdd1380,0x10288c60,0x0fbbbb30,0x0ebcdd90,0x0fb5a5e0,0x0ffad130,0x0f7264e0,0x0c2a6500,0x0b6ec960,0x11a380c0,0x0d9bd9c0,0x0ed44760,0x000209d5,0x0001a183,0x0001605c,0x00019aba,0x0001b56c,
-0x000175aa,0x00021465,0x000205b5,0x00016c8a,0x00018f90,0x00014eca,0x0000e4b2,0x0000da0e,0x0000ffb3,0x00019425,0x0001aaae,0x0001d8a9,0x0001e03f,0x0001fe04,0x000228b1,0x000267e4,0x0002896e,0x000284fb,0x0002a28a,0x0001d3b1,0x0001a78c,0x00018023,0x000206d0,0x00022fe3,0x00025fdc,
-0x0002096b,0x0001e694,0x0001c827,0x00019141,0x0001a537,0x0002f840,0x0001dc20,0x000300fc,0x0001e10f,0x0001d3de,0x00019abe,0x00013150,0x00029617,0x0002c5e0,0x00013f9e,0x0001efa6,0x000172f4,0x000188a7,0x0000c66c,0x0000efaa,0x000235ea,0x000241bf,0x0002e030,0x0002c12d,0x00033b2e,
-0x0003efd1,0x0004d763,0x000584e8,0x00057976,0x00054759,0x000309d3,0x000216c3,0x0001ae27,0x0002f388,0x0003b726,0x00042887,0x00034dd6,0x000277fe,0x0001eda1,0x000164f7,0x0002051d,0x0007334e,0x0003d303,0x0003857d,0x00042a09,0x0002fc3f,0x00036162,0x00026ede,0x00060e59,0x00058946,
-0x00010c8a,0x0002bd6a,0x00020e00,0x0006d75c,0x00040721,0x0003e9d1,0x00064d17,0x0003969a,0x000444e8,0x000392f9,0x0004be50,0x00068ff6,0x0008e95f,0x000acc7e,0x000b7b82,0x000b51af,0x00056e6a,0x0002b543,0x00026b17,0x00056f50,0x000716ae,0x0008d2e7,0x00064000,0x000480c9,0x0002fabe,
-0x00026c91,0x0002b2c7,0x000e4c49,0x00040fab,0x00098fa2,0x000586a7,0x0003d9d5,0x00027648,0x00055a22,0x0008af2e,0x0008a3e1,0x00021122,0x00035235,0x00062735,0x00193b7b,0x001454c2,0x00119271,0x000f9c28,0x00091724,0x0008e774,0x000692e3,0x0008522d,0x000c7c47,0x0011488f,0x0014a237,
-0x00155315,0x0017c8c9,0x000de6fd,0x0007878f,0x0004b7b0,0x0008cf1d,0x000dd3d6,0x0010c8fd,0x000be76c,0x0009ac58,0x000433f6,0x0007d9b1,0x00057bec,0x002530f8,0x000fbdb7,0x0045bfbe,0x0011c48b,0x000ab541,0x001949a2,0x004c3d23,0x002303f3,0x001446f0,0x000c9c91,0x001a4ab5,0x00127f5a,
-0x001bc61f,0x0019fe46,0x0016bbea,0x000f4b91,0x00065750,0x00058270,0x000549a9,0x0005345b,0x0006d170,0x000a1b67,0x0011ff44,0x00151bc3,0x0017f025,0x000d465a,0x00092f7e,0x0007301b,0x000265d5,0x000315e2,0x00118af8,0x000eb7e9,0x00129460,0x0011b11f,0x00177a41,0x000b0485,0x001d0e04,
-0x0033275e,0x00523fe4,0x006a81f1,0x00144bf2,0x00124f97,0x0040e732,0x00364b59,0x001e6ee9,0x001ab2a9,0x0009900f,0x000b03c0,0x000bf0ec,0x0007a1f9,0x00067eb1,0x0005a208,0x00062182,0x00072f87,0x00063b06,0x0005130e,0x000586dd,0x0006c592,0x0005a60a,0x0004f5a0,0x00060cbb,0x0006e661,
-0x00054f23,0x0003cc55,0x00066361,0x00078ebf,0x0007a8bc,0x0002864b,0x000321a9,0x000acb42,0x0017cf61,0x00164bd5,0x001c5fc2,0x003eefbd,0x00290bb7,0x002fe104,0x001cb293,0x001bc942,0x001621b6,0x001ce2ff,0x001315da,0x002929c8,0x001b21ff,0x00160e91,0x000d219f,0x000621ca,0x00049ffb,
-0x00068e56,0x000927c7,0x000910cd,0x0005fdf6,0x0007ac61,0x0006e989,0x000c6dc7,0x000301c6,0x0001d6d6,0x0004d5c0,0x000329ec,0x0001dd24,0x0001f40a,0x00017aa1,0x000098f0,0x00008de7,0x0003460b,0x00059817,0x0006664f,0x00091278,0x000ebf87,0x00168438,0x001d6d45,0x00566f1d,0x006a1fe7,
-0x00bcdda5,0x00b4dd2b,0x0071046d,0x002ead66,0x001eed76,0x0021a47d,0x0012476e,0x000fb8bb,0x000dca3c,0x00097055,0x0009065f,0x0005e6a3,0x0005f7ff,0x0005b48b,0x0005856d,0x000709c2,0x0005c475,0x0007364d,0x000406d0,0x000431fc,0x000469cb,0x00042623,0x0002b7ba,0x0002240e,0x0000fd46,
-0x00011e73,0x000201ec,0x00026ca5,0x00035ca6,0x000a12b4,0x00085fc8,0x0011a58a,0x002bd6ed,0x0043da78,0x00a97d16,0x00e5b8ad,0x00c6361b,0x007d42b8,0x00491a4d,0x00385f6e,0x00419a76,0x003995a0,0x001e88ba,0x00136f50,0x000c7cb4,0x000a3d24,0x0007a005,0x0006982e,0x0004e5db,0x00047ecf,
-0x0004bcd8,0x00045981,0x0003c1b4,0x00034d34,0x00022f89,0x00019e8e,0x0002d627,0x0001521b,0x000188c5,0x00031478,0x00019d98,0x0001cc2f,0x0002eb4b,0x0006a8ca,0x000e1cb9,0x0019e6d2,0x004757aa,0x006672eb,0x0068cb5f,0x00800c36,0x0071a550,0x0069afc1,0x0062c235,0x005252ef,0x0052b8cd,
-0x005b6162,0x00526d28,0x003c97b6,0x00233d54,0x00204894,0x002279c0,0x0029e1b2,0x0029914f,0x001d86fe,0x001a4c34,0x001535b1,0x000ed734,0x000bc7c0,0x00077814,0x0002ae0d,0x00035020,0x0002b680,0x00025a14,0x00026cc3,0x00050664,0x000ab609,0x00105e6c,0x001794f2,0x001d185b,0x002c025f,
-0x00396d11,0x0042f5a8,0x003f7e9d,0x003f53b4,0x004bbd49,0x005a5018,0x0038c8e3,0x003f55cd,0x003ec78c,0x00443afd,0x005360fc,0x004baeee,0x0052a62c,0x006502a0,0x004b796a,0x003b4da3,0x003742d5,0x002da89c,0x002593f1,0x001f0834,0x0018a76a,0x0014009b,0x001054dd,0x000b9310,0x0007d2d1,
-0x000626d7,0x0004f301,0x000393ac,0x00053172,0x00069b4a,0x000a38c5,0x000f69cf,0x001351e5,0x00178e3b,0x001f98f4,0x0020f743,0x0024dcca,0x002b30cf,0x002e45e4,0x00344b15,0x003b0cbb,0x00394849,0x0029609d,0x00292e62,0x00266c2b,0x0024898e,0x0023aae1,0x0023bd28,0x00243ab9,0x00268608,
-0x00228d82,0x00220160,0x001fe93b,0x001e66af,0x001c921d,0x001bfa9b,0x0017252c,0x00133555,0x000f7a11,0x000c86b3,0x000994a5,0x00071767,0x00087ba2,0x00088069,0x0009ce89,0x000ad099,0x000d5502,0x000fcc06,0x00129091,0x00157b24,0x0018a998,0x001bf36c,0x00200cfa,0x002406a2,0x002447b1,
-0x0024dae8,0x00254f81,0x00267df4,0x001ed382,0x001f4ce3,0x001e9fb4,0x001ed132,0x001e9464,0x001f7664,0x00200213,0x0020fd35,0x001fce96,0x001edbf2,0x001e44dc,0x001cf62c,0x001bf4ac,0x001b7265,0x001966d1,0x0017e10a,0x00167b70,0x0014ac70,0x001379f0,0x00110fa3,0x00130646,0x00140a3d,
-0x001611e3,0x001506a2,0x0016336b,0x00181acb,0x0018dd28,0x00196d8f,0x001a4eb6,0x001b569e,0x001c7c48,0x001e0988,0x001d99ed,0x001dbc49,0x001f7a05,0x001ecf2d,0x00246f91,0x0000188d,0x00000f92,0x00001132,0x0000168b,0x00001c6a,0x000030a3,0x00001bec,0x00001406,0x000007dc,0x00001853,
-0x00001fe9,0x00002a54,0x00001ef0,0x00002254,0x0000350d,0x0000379c,0x000034ac,0x00002852,0x000017f7,0x00001269,0x000011c1,0x000011e7,0x00001346,0x000017b0,0x000020fe,0x00001c7b,0x000008c2,0x000012cf,0x000010f5,0x000011a9,0x00000bbc,0x000007dc,0x00000e30,0x0000096b,0x00000da8,
-0x00002093,0x000010bd,0x000012df,0x0000196e,0x000048eb,0x000072e3,0x0000ca93,0x00007cdd,0x00004d10,0x00000fac,0x000030cf,0x00003dc1,0x00007a8e,0x00003a89,0x00007b0f,0x00011c80,0x00016090,0x00014a49,0x0000d5d0,0x00006aec,0x00004620,0x000040e5,0x00003234,0x00002485,0x00003094,
-0x00005d21,0x000055b5,0x0000183f,0x00003473,0x00003695,0x0000537a,0x00004c10,0x00003c4e,0x00004cff,0x0000138c,0x00000d90,0x00006005,0x0000171c,0x0000096c,0x000036c0,0x00006e87,0x0000ec3f,0x0001bc4e,0x000164bf,0x0000e4b1,0x00005a38,0x00007101,0x0000c172,0x0001a99f,0x0000db87,
-0x00011a4d,0x000280de,0x00028294,0x00024467,0x00015d65,0x00007fe8,0x00005cd2,0x00007788,0x00004668,0x000030e9,0x00004fff,0x0000cae3,0x00009677,0x0000b75d,0x00008f33,0x0001106a,0x0002b208,0x0002968d,0x0001c596,0x000146d5,0x0000433d,0x000014ad,0x0000e09f,0x000012ff,0x000083f5,
-0x00004ac3,0x0001fbab,0x00038540,0x0006696d,0x00047e73,0x0002ef57,0x00010da1,0x0000bb23,0x0000dc68,0x0003b18d,0x0000fe34,0x00039f63,0x000a3bca,0x000c2705,0x000a9ed8,0x0006e144,0x0003862f,0x0002d91d,0x0002c963,0x0001a93d,0x0000b94e,0x00015956,0x0001c82b,0x000137bd,0x0000e2bf,
-0x0000d333,0x0000e517,0x00020cca,0x000447f8,0x0003b811,0x0003572c,0x0001ddc9,0x0000a61b,0x000314d7,0x0000d6ac,0x0006b74f,0x00065928,0x000d1d56,0x000cc273,0x000b0e5f,0x0004604e,0x0001e157,0x0002b348,0x00016524,0x0005069d,0x000a79cf,0x00091aae,0x0007d437,0x000c7282,0x000a0b1c,
-0x0007a3bc,0x0007645c,0x0007e0bf,0x00097cb2,0x0008d032,0x0006cd6e,0x0004862b,0x0003a13e,0x0001c8e4,0x0000c3c4,0x0000d8ba,0x00011051,0x00015b85,0x00001f49,0x00002de4,0x0001dd27,0x0004bb49,0x0003e910,0x000381a4,0x00026e74,0x00043468,0x0008f416,0x0003e1d6,0x0003c91f,0x00048f46,
-0x0009cca6,0x000d4f50,0x000ddc9a,0x0003c966,0x00023431,0x000292ed,0x000bfc2e,0x0008cb8d,0x000b2e1a,0x000a256f,0x00054d4c,0x0004c51f,0x000364c3,0x00031244,0x0001f974,0x00027681,0x0000e866,0x00008274,0x00004a6a,0x00003f88,0x00001659,0x000075ae,0x00008ba5,0x0000cd66,0x00006453,
-0x00002191,0x0000dd42,0x00030ced,0x000bb6c2,0x000b7943,0x0006cf4b,0x0004a1a5,0x002f363b,0x0057c488,0x00164c4f,0x0006c044,0x000fb618,0x000c7da2,0x000cf97f,0x00100fbf,0x000c72cd,0x000ce7f3,0x00092f08,0x000316c3,0x0004d8b7,0x000621b0,0x00042a2e,0x0003b28b,0x000289c7,0x00018fb0,
-0x0000d19d,0x0000bd9c,0x00004a05,0x000036b1,0x000090af,0x0000806a,0x000053cf,0x0000660d,0x000005ec,0x00001c10,0x00000d70,0x00002dec,0x000095c1,0x00012324,0x0000c3e9,0x0000e4c0,0x0003ed8c,0x0014ccf5,0x00156948,0x002cd4cb,0x00100955,0x0006f8e5,0x0008fbd8,0x00083edd,0x0005e85b,
-0x0007ddae,0x0003e29d,0x00048730,0x0002d29c,0x00012c85,0x0002174c,0x0002afcb,0x00022692,0x0001a595,0x0001a316,0x00015675,0x00019fa3,0x0001b3b8,0x00017bf5,0x0001369d,0x0000e62a,0x00002e5d,0x0000030b,0x00000de6,0x000004e7,0x00000bee,0x000013c3,0x000003a4,0x000006bb,0x00007ce2,
-0x0000b953,0x0000fc70,0x0009623d,0x00124b04,0x000a8a8f,0x0009b998,0x000675ce,0x000516e0,0x00020fc5,0x00013b95,0x0002cabd,0x00035a51,0x00052bf8,0x00064f52,0x0006da90,0x00058321,0x0003dc22,0x0002d3ba,0x00010e47,0x00005a8c,0x00008dba,0x00014461,0x00021c2d,0x0002d69e,0x00031b8c,
-0x0002af02,0x00022fc6,0x0000f393,0x00004df3,0x00000b1d,0x00001317,0x00002397,0x0000280f,0x00003eb5,0x00003f16,0x000063ad,0x000027c4,0x00004ec4,0x00018e64,0x00073d48,0x00035b09,0x0003d329,0x00046b9b,0x00042557,0x0003b48b,0x000320d2,0x00035481,0x0003ffe5,0x0003a1ec,0x0003b99d,
-0x00043361,0x0003ceb5,0x00032d10,0x00021b24,0x000143e4,0x00008431,0x0000350d,0x00003bc4,0x00006bb3,0x0000d2d2,0x0000f4b6,0x0000c623,0x000084fc,0x00008686,0x00008407,0x00007f23,0x000056d8,0x00008b06,0x0000bf25,0x00011c63,0x000150e5,0x0001505b,0x0001c3ce,0x00023264,0x000267cf,
-0x0002bcdc,0x000279ab,0x00028684,0x00022549,0x00019f84,0x00011ea5,0x0000c56b,0x0000bcd3,0x0000dc19,0x0000ba7f,0x0000ae17,0x0000c72c,0x00007118,0x000060a5,0x00008893,0x00007647,0x00007bfb,0x000095ef,0x00009053,0x0000a365,0x0000c9c9,0x0000dfad,0x00010a87,0x000141ca,0x00010016,
-0x0001077f,0x00016ae1,0x0001383e,0x0001468f,0x00018592,0x0001989e,0x0001c1b4,0x00023857,0x00024c9d,0x0002c3f8,0x00032a18,0x0002a685,0x0001bc09,0x0001adb6,0x0001713b,0x00013df7,0x0000fd5a,0x0000cb0c,0x0000a8e9,0x0000b30a,0x0000ae0b,0x0000b38e,0x0000b172,0x0000a9e3,0x00009f03,
-0x0000a511,0x0000a5cb,0x0000b279,0x0000c4f3,0x0000df4d,0x0000fbeb,0x00011d90,0x00011ab7,0x00011747,0x00012ea0,0x0001514c,0x00018421,0x0001c573,0x0001b43e,0x0001c0be,0x0001db2c,0x0001f041,0x00021f80,0x00025560,0x00021172,0x0001d199,0x0001c50a,0x00019d12,0x0000ec33,0x0000e38c,
-0x0000d58b,0x0000c4a9,0x0000bc7f,0x0000b366,0x0000add0,0x0000a546,0x0000a65b,0x0000a711,0x0000adaa,0x0000b3f7,0x0000bd81,0x0000c5eb,0x0000ceec,0x0000d62a,0x0000ddd5,0x0000e69e,0x0000f020,0x0001004f,0x0000ff52,0x000104a7,0x00010b0c,0x00010ccd,0x000113aa,0x00013070,0x000126bc,
-0x00012626,0x00011e5a,0x00012093,0x00011d2c,0x000127d3,0x0001087d,0x0000fe1f,0x0000ff1c,0x0000f85b,0x0001253d
-};
-const UWord32 defaultHRIR_rom_ER16_fx[HRTF_MODEL_N_SECTIONS * 470] /*Q28*/ = {
-0x0624a0e0,0x056db600,0x05bb77a0,0x0503cb18,0x04ef0160,0x05965d08,0x04a9add8,0x047e1d30,0x05325de0,0x053790e8,0x052407d8,0x050a5ea0,0x05357c10,0x054a7a30,0x05383838,0x04636030,0x046979c8,0x05a5d650,0x049bd6d8,0x04969ab0,0x0524e510,0x04dbc5e8,0x050f3628,0x05240978,0x053bc720,
-0x055879e8,0x057b1008,0x059d3f68,0x05c342b0,0x05ee07c0,0x0613ed00,0x063a23d0,0x067b3920,0x0654f4f0,0x06303e80,0x05e5f970,0x05b92728,0x074deba8,0x07120130,0x063be4a0,0x0563d9f8,0x049bfa40,0x04522128,0x04164b68,0x03c36a60,0x03b749dc,0x03a7aefc,0x03ae0df8,0x03b453fc,0x0399cf74,
-0x037cd76c,0x03920410,0x03c1bb4c,0x04013088,0x0434eba8,0x04ceb318,0x051bd998,0x0560ef30,0x05a8bf70,0x05fcb978,0x063d5258,0x069a7b28,0x07114bf8,0x07805d60,0x0805cd20,0x089fed90,0x09400960,0x09ec13d0,0x0abd8370,0x0a6c94a0,0x09ca0b10,0x08aca8e0,0x07f9fac8,0x08dcef90,0x07e0f8c0,
-0x06173070,0x04e32c30,0x03c9fb58,0x03444dd8,0x02bd62f0,0x0264df24,0x02271acc,0x021b8f18,0x02838a24,0x025805bc,0x024b5380,0x02111484,0x02481cb4,0x027470b8,0x02cbbda4,0x03279b68,0x03a0d4d8,0x04219ce8,0x04f50568,0x056768c0,0x062bfd38,0x06b59bb8,0x07808a10,0x0877f9d0,0x096c2130,
-0x0a957870,0x0c0d8590,0x0d7f4e80,0x0f1da1c0,0x113e4f60,0x100844a0,0x0e990be0,0x0c1b0f30,0x0a43b1c0,0x0b17f6f0,0x092e4530,0x06993bb8,0x047cd3b0,0x030cd48c,0x0247959c,0x01b33e86,0x0155ca44,0x01099616,0x011a9efe,0x0167862e,0x01546580,0x013306d0,0x0103c2f2,0x01309726,0x016254c2,
-0x01cb4764,0x02277268,0x02e14a60,0x0367b670,0x0454e5e0,0x04e97ae0,0x05e119a0,0x06951d08,0x07b51690,0x092fd090,0x0aa2c810,0x0c9ea280,0x0f200080,0x12125080,0x15e3d860,0x1ac029c0,0x18b8ed40,0x1524ace0,0x10956280,0x0d021a50,0x129721a0,0x0e7e8bc0,0x0bf03010,0x08e96060,0x05a524b0,
-0x0410cb90,0x02de0774,0x022ad9ec,0x0186d1a6,0x016069dc,0x01801c34,0x018e49ee,0x017d38a4,0x012fe7aa,0x01376c26,0x0174b720,0x02139104,0x02b63f48,0x03a071ac,0x04b0f9a0,0x06fb64a8,0x08a69340,0x0c89e210,0x0ecfbc90,0x126cde60,0x167a5000,0x1a1aff00,0x1d0aaea0,0x1e0c6960,0x22b16900,
-0x228fd140,0x20dc0fc0,0x205b9180,0x1e34a720,0x1b5cd020,0x15d07000,0x162175a0,0x10b1fa60,0x0dc795b0,0x0a212c90,0x076875e0,0x04f9d250,0x0384f918,0x03275cfc,0x025b21ec,0x022a24f0,0x0255fd8c,0x01dc0826,0x01944626,0x01410c94,0x01695c82,0x01af86b0,0x0253b9a0,0x0339ff30,0x0493c2e0,
-0x066e15d0,0x089f63a0,0x09c1b350,0x0bec9890,0x0e534590,0x119d1dc0,0x1570e9c0,0x17bbae40,0x1ab6bd00,0x1d8ea300,0x22be5b80,0x265dfbc0,0x2817acc0,0x28fe33c0,0x264c2e00,0x231de940,0x19e34340,0x1e979540,0x14d12880,0x0f559b10,0x0a1ac540,0x07771dd8,0x053bd648,0x03d35cc8,0x032df24c,
-0x025ba3a8,0x0291df58,0x04c1dce8,0x02dde778,0x026b54ac,0x02c9678c,0x0237cf2c,0x02cdfcec,0x03dc9798,0x04df1510,0x05f82680,0x06e82550,0x08283660,0x08e0fca0,0x0a9a3960,0x0c32e410,0x0ef73030,0x1294a620,0x1765cd20,0x1d5ce020,0x243a4a00,0x2b58b9c0,0x3145ee00,0x3431c040,0x345a4b00,
-0x303343c0,0x2c5f8dc0,0x23e29b40,0x1f875e00,0x16412bc0,0x104792c0,0x0a600920,0x0739f1e0,0x04e24b00,0x03b2de04,0x032201a4,0x02ac6f94,0x0319de88,0x06d978f0,0x02b65e84,0x0237fac4,0x02a1e580,0x02b02904,0x03672c98,0x046a42b0,0x051d0e88,0x060dc4b0,0x06e2fb70,0x07f33a38,0x08afce00,
-0x09eb5510,0x0cf180b0,0x10964a20,0x14c43ce0,0x1a5cb1c0,0x20129780,0x25c5a180,0x2d5487c0,0x31ac0140,0x336a42c0,0x310cd680,0x30073b00,0x30d0e800,0x25e23a40,0x1f403a20,0x1499fa60,0x0f048b30,0x09aa1a20,0x071f3530,0x05a8cc00,0x043dc730,0x036b581c,0x0366f34c,0x035a21f8,0x04822dc8,
-0x0336385c,0x02eef408,0x02dec4b4,0x03330658,0x03e5ef70,0x049c7aa0,0x057eb748,0x06bd71b8,0x07b70498,0x085f93e0,0x08d7a460,0x099925c0,0x0b342910,0x0db4be80,0x11a93540,0x15b2cec0,0x19e94e20,0x1e23aac0,0x1ec8df80,0x212f5d80,0x26ab5bc0,0x28c7fb00,0x2a0108c0,0x294967c0,0x26579b00,
-0x17740620,0x1215d8c0,0x0ec902f0,0x0a82dcd0,0x079eadb8,0x05e9c7f8,0x04862440,0x03db1c84,0x03d66d24,0x03e0901c,0x03893cf8,0x03c4c5e4,0x039bcc1c,0x038fd594,0x040f22a0,0x04dc6770,0x05a48d90,0x06cfb578,0x08385530,0x087037c0,0x0a1c7d80,0x0a734ea0,0x0a36c4f0,0x0b2304d0,0x0c29f310,
-0x0d70e9e0,0x0f17daf0,0x115337c0,0x14664d80,0x16fb8a80,0x19e66b40,0x1cbbff20,0x1f85fa40,0x201e2fc0,0x1df808a0,0x1b171320,0x13212ec0,0x10463c20,0x0e490ba0,0x0b8cf510,0x0a2ebb50,0x08090ae0,0x06de55f8,0x05527190,0x05cc4238,0x04bea140,0x059379e8,0x04e24758,0x05923fa0,0x051d8e40,
-0x06306f40,0x065fbf18,0x077024a0,0x084602e0,0x099f41a0,0x0a7770d0,0x0bba9c60,0x0cb8daf0,0x0df40620,0x0e833b90,0x0f15b430,0x0fcd1dc0,0x112c6ba0,0x127b7080,0x13ce78e0,0x15485800,0x16e26320,0x18d57a20,0x184d7e40,0x1849c5e0,0x18f0dea0,0x157a6ca0,0x0e736590,0x0e848c90,0x1039c960,
-0x0b83eeb0,0x0ace52c0,0x09fa07a0,0x091e47c0,0x081fc1c0,0x089a4f80,0x08c0f6b0,0x0855fe90,0x0893b6c0,0x082fdd70,0x08053c30,0x089b4eb0,0x0941aae0,0x09ea0ee0,0x0a210580,0x0defd9c0,0x0c7b0be0,0x0caecbd0,0x0d836d70,0x0e50a250,0x0f14a580,0x0ff98b80,0x10d0dfa0,0x111526a0,0x116a2620,
-0x11dcdf20,0x12506780,0x12aef660,0x135b8720,0x12156c00,0x10fe52c0,0x100be4c0,0x0f363e70,0x0c2fc730,0x0d5092d0,0x0c8545a0,0x0d90cb30,0x11605220,0x0b7f31a0,0x0c280b70,0x0f7230e0,0x0ffa4f20,0x0fb90290,0x0ebdb460,0x0fb9d900,0x1028e740,0x0fddf020,0x0c127d90,0x0b0d2e50,0x1221a0c0,
-0x0d1aa970,0x0c1cdeb0,0x0c9bb800,0x0b933ee0,0x0c253960,0x0c4c6910,0x0c95a640,0x0cd4b080,0x0d26e570,0x0d315aa0,0x0d4cfa00,0x0d679dd0,0x0d870b70,0x0da339c0,0x0dedd180,0x0d7cca10,0x0d3fda70,0x0ce38800,0x0ccc8c40,0x0ed42f80,0x000209d6,0x00019aad,0x000160f5,0x0001a179,0x0001dc43,
-0x0002f98d,0x0001a557,0x000190ed,0x0001c783,0x0001e591,0x000208b8,0x00025efb,0x00022e94,0x000206aa,0x0001803f,0x0001a80d,0x0001d521,0x0002a2b6,0x00028342,0x000288e3,0x0002680a,0x000228b1,0x0001fdfd,0x0001e040,0x0001d8af,0x0001aaa9,0x00019466,0x0000fff0,0x0000da37,0x0000e490,
-0x00014f08,0x00018fca,0x00016c64,0x0002053c,0x00021401,0x000175ad,0x0001b59b,0x0001d44b,0x0001de8f,0x00030259,0x0003d2d7,0x00072cc4,0x0002053b,0x00016503,0x0001ee4c,0x00027a28,0x00035035,0x00042a1f,0x0003bb78,0x0002f2fd,0x0001ada2,0x00021690,0x00030456,0x0005460d,0x00057e79,
-0x000585ed,0x0004d6fb,0x0003efb0,0x00033b42,0x0002c130,0x0002e013,0x000241ca,0x000234b3,0x0000efd2,0x0000c6ab,0x00018a84,0x000172ad,0x0001ef03,0x00013fda,0x0002c758,0x00029755,0x0001317f,0x000199fb,0x0002fc1e,0x00042d9c,0x00038547,0x00040bae,0x000e62e6,0x0002ac71,0x00026fbe,
-0x0002fa5a,0x00047d54,0x00063b64,0x0008d1ab,0x00070db7,0x00057340,0x00026d5b,0x0002b1e5,0x00057e0c,0x000b52b8,0x000b7403,0x000acb5d,0x0008e9e3,0x00069031,0x0004be3f,0x000392c7,0x0004452d,0x00039669,0x000651b1,0x0003e82b,0x0004053b,0x0006d1d9,0x00020e29,0x0002be96,0x00010cd7,
-0x000585e0,0x00060aff,0x00026e6c,0x0003635c,0x0003d991,0x00057ee8,0x000987a7,0x000fdbba,0x0024bce0,0x000588b3,0x0007c2a9,0x0004374a,0x0009aafe,0x000befb0,0x0010cac4,0x000dd0ae,0x0008c90f,0x0004aef9,0x0007a98e,0x000d9230,0x0017e791,0x001561e0,0x0014a7a1,0x00114a2c,0x000c7d9f,
-0x00085155,0x00069436,0x0008e6c8,0x00091943,0x000f858a,0x00119ebf,0x0014649e,0x00192dde,0x00062bb5,0x00035137,0x00020d3f,0x0008ada3,0x0008b7db,0x00055635,0x0002792f,0x000abc7a,0x0011d5b1,0x0045f4fd,0x0032e7cc,0x001ce87c,0x000b1c1f,0x00174924,0x0011a4e6,0x00129c21,0x000ea0b5,
-0x0011a09d,0x000310c0,0x0002628f,0x000746fb,0x00092d45,0x000d2b6f,0x001826b1,0x00152a6a,0x0011f522,0x000a287a,0x0006d707,0x00053330,0x00054a96,0x000581d1,0x00065a98,0x000f32d8,0x0016d4c6,0x001a1760,0x001bd925,0x0012861e,0x001a27e7,0x000c96b5,0x0014508d,0x0022fec7,0x004c515f,
-0x00193efc,0x00146f0a,0x006a41af,0x0052f5e9,0x003eba03,0x001c7e37,0x0016b945,0x0016f564,0x000afbd2,0x00031351,0x0002800a,0x0007b38b,0x00078773,0x00066547,0x0003c90d,0x0005537a,0x0006f7a3,0x00060854,0x0004e896,0x0005be7a,0x0006bff6,0x00058576,0x00051245,0x00063f3f,0x00072de5,
-0x00062360,0x00059d99,0x000682b4,0x0007a625,0x000bf717,0x000b0bf1,0x00098956,0x001a753b,0x001e7d1f,0x003668aa,0x0040d0a9,0x00124573,0x001ceb88,0x00300bfb,0x00297622,0x001c419f,0x00160760,0x000ef196,0x0008f281,0x000686b9,0x00059c5c,0x00031b78,0x00008cab,0x000098d6,0x00017cb9,
-0x0001f692,0x0001e113,0x00033a5c,0x0004c751,0x0001c33a,0x00030e3f,0x000c6a5f,0x0006e0ad,0x0007ae79,0x0005ff9e,0x0009119c,0x0009282c,0x00068c48,0x0004a1e5,0x000624d8,0x000d1efe,0x0016101c,0x001b2674,0x0028ee8d,0x0013252c,0x001cfdca,0x00162013,0x001bb021,0x00bf9cfa,0x0067138b,
-0x00591842,0x00467106,0x002b2a7d,0x0011602d,0x0008a8ca,0x00098489,0x000354d3,0x00028203,0x0001ea78,0x00011cd3,0x0000fcaa,0x000235e1,0x0002b576,0x0004316e,0x00046698,0x00043132,0x00041951,0x000733e7,0x0005bdf0,0x00070ae5,0x00058712,0x0005b441,0x0005f8b4,0x0005e2e1,0x00090ad4,
-0x00097269,0x000dcc03,0x000fb98d,0x00124821,0x002187f9,0x001ef09c,0x002e8972,0x00718b0d,0x00b342fc,0x00c5aab5,0x00e567ea,0x00ac3551,0x00849afd,0x0066a279,0x0067a2c0,0x0046b530,0x0019a48d,0x000dfa0c,0x00069477,0x0002f97d,0x0001c8d5,0x000197f4,0x000333e9,0x00018e57,0x00015381,
-0x0002e16e,0x0001a380,0x00024934,0x0003521f,0x0003b91a,0x00045b08,0x0004c0d1,0x00047dad,0x0004e66f,0x00069351,0x0007a185,0x000a3eee,0x000c7e79,0x00136d2f,0x001e9164,0x0039586f,0x0041d111,0x00386dcb,0x004913d0,0x007d51d2,0x0062e1a5,0x0069292b,0x006d7858,0x005a94e5,0x004d7797,
-0x00414138,0x003ef807,0x00445367,0x0038c3cd,0x002c020e,0x001d1605,0x00179449,0x00105638,0x000ac144,0x00050a9d,0x00026935,0x00025e1f,0x0002be29,0x00034f74,0x0002b1a2,0x000770f8,0x000bc8a5,0x000ed774,0x001535ce,0x001a4d0c,0x001d8185,0x002999ad,0x0029ece1,0x00227225,0x00204b11,
-0x002344ab,0x003c6851,0x005295a6,0x005b817a,0x0052b710,0x00523e9b,0x003eadc1,0x003fc1b0,0x0039e49d,0x00387cbb,0x0039ab71,0x00334af0,0x002e4be3,0x002ad0e1,0x0025004b,0x00211d56,0x001f9021,0x0017954e,0x001355dd,0x000f6927,0x000a3ac5,0x00069c66,0x00054042,0x00038aae,0x0004eb06,
-0x00062a51,0x0007d0d5,0x000b936a,0x00105407,0x001400b8,0x0018a76a,0x001f0620,0x00259794,0x002dacc4,0x003742ce,0x003b4b7c,0x004b7995,0x0064fadc,0x00529ea0,0x004baae3,0x00535e20,0x00444491,0x0026745c,0x00290014,0x0028ddc1,0x00265582,0x00257722,0x002514ec,0x002462c9,0x00241ade,
-0x00201045,0x001beecc,0x0018aad0,0x00157a24,0x00128f31,0x000fc9f5,0x000d556c,0x000acfcc,0x0009c924,0x000889a0,0x00088236,0x000712b0,0x0009958b,0x000c8799,0x000f795e,0x0013357c,0x00172507,0x001bf9f3,0x001c90aa,0x001e65cb,0x001fe75b,0x0022023e,0x00228e67,0x00268963,0x00243c69,
-0x0023be7c,0x0023aaef,0x0024879c,0x001e9e72,0x001f59f7,0x001efb98,0x001ee6a6,0x001f6921,0x001db936,0x001d8f9f,0x001e03dc,0x001c79c3,0x001b56ff,0x001a4de1,0x00196d39,0x0018dd6b,0x00181aed,0x00163305,0x0015076d,0x00160fbf,0x001405f3,0x0013028e,0x0011105c,0x00137a13,0x0014abe6,
-0x00167b8f,0x0017e117,0x001966f0,0x001b72cc,0x001bf542,0x001cf6c5,0x001e45ae,0x001edbde,0x001fcde6,0x0020fbf9,0x00200172,0x001f762f,0x001e94bf,0x001ed155,0x00246f44,0x0000188d,0x00001682,0x00001132,0x00000f91,0x000010b7,0x0000208f,0x00000da6,0x00000966,0x00000dfb,0x000007ee,
-0x00000bb3,0x0000119d,0x000010fe,0x000012cf,0x000008b6,0x00001c7a,0x00002124,0x000017c6,0x00001329,0x000011d7,0x000011c2,0x0000126b,0x000017ef,0x0000284a,0x000034ad,0x0000379d,0x0000351b,0x00002264,0x00001ef9,0x00002a3f,0x00001ff2,0x00001855,0x000007d8,0x000013fd,0x00001be7,
-0x000030a2,0x00001c6a,0x000048f9,0x00001984,0x000012d9,0x0000171e,0x00005ff8,0x00000d9d,0x00001376,0x00004d94,0x00003b9d,0x00004c65,0x000053c5,0x000036bc,0x00003475,0x00001859,0x000055d2,0x00005c87,0x0000302e,0x00002567,0x00003268,0x000040ee,0x00004611,0x00006b15,0x0000d5ff,
-0x00014a42,0x00016088,0x00011c18,0x00007ad2,0x00003a6e,0x00007b10,0x00003da1,0x000030be,0x00000fa3,0x00004d40,0x00007cff,0x0000caa3,0x000072c3,0x00006e7f,0x000036c4,0x00000979,0x00001300,0x0000e190,0x000014d8,0x00004357,0x000145c4,0x0001c7cf,0x0002952f,0x0002b259,0x00010f73,
-0x00008f43,0x0000b717,0x0000964d,0x0000cae6,0x0000513d,0x00002f82,0x0000466c,0x00007722,0x00005d14,0x00007f97,0x00015cf7,0x0002446f,0x0002829b,0x0002821d,0x00011abc,0x0000dbce,0x0001a837,0x0000c1ba,0x00007161,0x00005ae4,0x0000e41b,0x00016430,0x0001bc2c,0x0000ec71,0x0001f7b7,
-0x00004d7c,0x00008287,0x0000d772,0x00030c26,0x0000a544,0x0001df63,0x00035a67,0x0003bd12,0x00043fd7,0x000209bf,0x0000e526,0x0000d246,0x0000e6ff,0x000136d2,0x0001c659,0x000156ca,0x0000c0b8,0x0001a798,0x0002cd84,0x0002d6cc,0x000387af,0x0006e37a,0x000a9e87,0x000c2775,0x000a340d,
-0x00039f0f,0x0000fdab,0x0003b122,0x0000dd22,0x0000ba5d,0x00010b63,0x0002f0cb,0x000480c5,0x0006697d,0x00038560,0x000d1439,0x00065cfd,0x0006b866,0x000433af,0x0002770c,0x00037ff1,0x0003e579,0x0004bd5f,0x0001dd4e,0x00002d3f,0x00001e8f,0x00015a8b,0x00010c26,0x0000dcab,0x0000c42b,
-0x0001c855,0x00039fef,0x0004856b,0x0006d357,0x0008ca81,0x0009814a,0x0007db28,0x00076b78,0x0007a1a3,0x000a0e98,0x000c5f21,0x0007db65,0x00092345,0x000a7d74,0x000506af,0x00016603,0x0002ad3d,0x0001e2cc,0x0004615e,0x000b0f4b,0x000cbf24,0x0003cbc9,0x0003d646,0x00090f00,0x000492c4,
-0x0006abc6,0x000b9afc,0x000b8b60,0x00031780,0x0000d8ab,0x00002162,0x0000656d,0x0000cd64,0x00008a0e,0x000074b6,0x00001660,0x00003c1d,0x00004c01,0x00007d12,0x0000f501,0x00027497,0x0001f785,0x000312e5,0x0003658b,0x0004c5b6,0x00054e6d,0x000a1515,0x000b38f8,0x0008d2b9,0x000bfb0d,
-0x0002932d,0x000234bc,0x0003c377,0x000de9fc,0x000d5d7e,0x0009c9e5,0x0004920c,0x0016627b,0x00579caf,0x002f3925,0x0014a817,0x0003e265,0x0000e380,0x0000c341,0x00012523,0x0000972a,0x00002d75,0x00000dc0,0x00001bc9,0x00000623,0x00006739,0x00005365,0x00007ee1,0x00008ecd,0x0000370c,
-0x00004a3c,0x0000bd12,0x0000d143,0x00018fc6,0x00028a5c,0x0003b245,0x00042b43,0x00061963,0x0004dd9e,0x000319c5,0x00092915,0x000cf73f,0x000c6bf3,0x000ff427,0x000d01f9,0x000c7d64,0x000fb758,0x0006b8cc,0x0010300c,0x002ca34f,0x00156cc0,0x00123487,0x00095db9,0x0000fcd8,0x0000ba62,
-0x00008126,0x000006be,0x000003c2,0x00001455,0x00000c0d,0x000004e8,0x00000e51,0x0000032b,0x00002d72,0x0000e239,0x000137bf,0x00018327,0x0001b364,0x0001a04c,0x0001558f,0x0001a4a2,0x0001a52c,0x000226cf,0x0002ad98,0x0002181a,0x00012c95,0x0002d29e,0x00048803,0x0003e45e,0x0007cd59,
-0x0005ee15,0x00084233,0x0008fca5,0x0006efeb,0x00066fb0,0x0009afd1,0x000a929a,0x00073235,0x000196b4,0x00004ed7,0x00002674,0x0000605c,0x00004103,0x00003dd1,0x00002857,0x00002350,0x00001349,0x00000ae0,0x00005035,0x0000f4da,0x0002249a,0x0002bb2b,0x00031bc1,0x0002d77c,0x00021ac6,
-0x00014495,0x00008de1,0x00005a91,0x00010eb8,0x0002d198,0x0003dd31,0x0005831a,0x0006dac7,0x00064fe1,0x00052c9f,0x0003593c,0x0002cce0,0x00013c36,0x000210b4,0x0005156e,0x000467ca,0x0003d67a,0x00034fa9,0x0002b952,0x00026d89,0x000238d9,0x0001c3d5,0x0001525a,0x00014f70,0x00011e8d,
-0x0000bdce,0x00008cf1,0x000054ca,0x00007f43,0x00008411,0x000084b8,0x00008155,0x0000c909,0x0000f1f7,0x0000d07a,0x00006cb1,0x00003b65,0x0000353c,0x0000843b,0x000143f2,0x00021ad8,0x00032d67,0x0003cf6e,0x000432b4,0x0003ba51,0x0003a1f0,0x0003fe1d,0x00035532,0x000320aa,0x0003b47b,
-0x000425cb,0x000223ac,0x00028a9e,0x00027a8a,0x00029722,0x00031ef5,0x0002be85,0x00024db6,0x00023533,0x0001c329,0x00019a67,0x00018565,0x00014777,0x00013820,0x00016bdb,0x000107d6,0x00010105,0x0001434d,0x00010a32,0x0000df63,0x0000c9d9,0x0000a357,0x00009054,0x000095d0,0x00007bfb,
-0x00007646,0x00008898,0x00006092,0x00007113,0x0000c701,0x0000ae1b,0x0000ba85,0x0000dc04,0x0000bcda,0x0000c562,0x00011ead,0x00019f74,0x000170c7,0x0001af48,0x0001be60,0x00019b5a,0x0001c0db,0x0001ce98,0x000210dc,0x000254bd,0x00021f61,0x0001f086,0x0001db09,0x0001c0a2,0x0001b45f,
-0x0001c49f,0x000183ad,0x0001507c,0x00012d4c,0x00011706,0x00011a78,0x00011d46,0x0000fbf8,0x0000df51,0x0000c500,0x0000b27c,0x0000a5c7,0x0000a514,0x00009efb,0x0000a9de,0x0000b162,0x0000b384,0x0000ae0a,0x0000b32a,0x0000a8e2,0x0000caf7,0x0000fd65,0x00013df2,0x0000d58e,0x0000e379,
-0x0000ec4c,0x0000f920,0x0001005c,0x0000fed4,0x000108c7,0x000127f9,0x00011d3d,0x0001207f,0x00011e63,0x00012629,0x000126c2,0x000130a5,0x000113de,0x00010d27,0x00010b98,0x000104d0,0x0000ff4e,0x00010050,0x0000f01d,0x0000e69c,0x0000ddd1,0x0000d629,0x0000ceee,0x0000c5ee,0x0000bd83,
-0x0000b3fa,0x0000adb0,0x0000a713,0x0000a657,0x0000a53c,0x0000adce,0x0000b36a,0x0000bc7f,0x0000c4b0,0x0001253a
-};
-const UWord32 defaultHRIR_rom_ITD_W_fx[658] /*Q25*/ = {
-0xffffffde,0x00037a90,0xff0ed1ae,0xffc52953,0x002ad399,0x01085cda,0xfe7ecf7e,0xff6e3fa1,0xffe757e7,0x00e4982c,0xff986595,0xfe86d766,0xfe417af0,0xff6c553e,0xff9f2374,0xfe9eb08a,0xfdf3707c,0x00be1f75,0xff4511a2,0xff8274f1,0xfefa67d6,0x00016276,0x010869dc,0x008240b5,0x00c41384,
-0xff42893a,0x0205fee8,0x015e93cc,0x005e8d67,0x0095178f,0x01b7518e,0x016cd626,0x00661c05,0xff2e08f1,0x0028002f,0x008ed0a6,0x0178697a,0xfeee98ee,0xffd87cce,0x004284ad,0x00f1ac80,0x0029d91b,0xfff2fa8a,0x0083e76e,0x021c1194,0xfeced6a6,0xfe715f1a,0xfc1debf4,0xfa4b89a8,0xfa187350,
-0xf86ebf30,0xfb447e68,0xfc7b82bc,0xfd708f04,0xfb1dd548,0xfa4fe7b0,0xfbd43f60,0xfd27e7c0,0xff0fc532,0x00482bc9,0x028a1508,0x009390c2,0xfffd7fcc,0xff660df9,0xfd717c98,0xffa6b230,0x00ef141d,0x02e58130,0x042c7870,0x05b75600,0x04dbc1a8,0x029d0fd8,0x039771a0,0x04c03ee0,0x0771a8a8,
-0x05ccfc78,0x05bdbe38,0x03eaf48c,0x01a3b838,0x012351ec,0xfde5fe7c,0xff5f4199,0x0044f539,0x000b8fdf,0x00183620,0xfd268020,0xfa206b38,0xf860a4b0,0xf61c1900,0xf3cabcc0,0xefb2e160,0xf0ff6080,0xece44700,0xec4890e0,0xea1836c0,0xee0df160,0xee2c26c0,0xf28e3790,0xf3d2d3c0,0xf63d9790,
-0xf9449610,0xfbd574e8,0x0082debc,0x0002b7eb,0xff88a857,0x0429e930,0x06d2cd08,0x09c43430,0x0c19a0e0,0x0d7610f0,0x11c69ec0,0x11feff20,0x15d440c0,0x13a3a320,0x13141e20,0x0f2541a0,0x106fc980,0x0c22d260,0x09e44430,0x07799c98,0x06013010,0x02be127c,0x0022d553,0xffa9e8a1,0x00252250,
-0x00144635,0xfe2344ac,0xfa648e90,0xf5714ff0,0xf03fd070,0xeb896c80,0xe7fa1c40,0xe4f70d40,0xe44a3ac0,0xe4e25820,0xe6cff220,0xe82364e0,0xe6a614a0,0xebfd2fc0,0xf0bb1c10,0xf4e4ff50,0xfb750f00,0xfe6277c0,0x00806a7f,0xfffd5a00,0xff5dd577,0x01b0515a,0x04588548,0x0b15dfc0,0x0f70caf0,
-0x13f0b800,0x1978c480,0x17bba560,0x195add20,0x1b3a4e80,0x1bc65d60,0x1acb4e00,0x17c41560,0x14a003a0,0x0fb332d0,0x0ad4c240,0x05693130,0x01dc5e72,0x0014543d,0xfeef2e66,0x00642343,0xff41ca5f,0xf8af6218,0xf2e04cc0,0xed2ad2a0,0xe88db100,0xe2af45c0,0xdd5ec1c0,0xdac9f180,0xd64aab80,
-0xce158200,0xd04f8980,0xd4012500,0xdd0acd40,0xe09456a0,0xe4d67d80,0xec90a600,0xf152a540,0xf971a878,0xff012827,0xfffaddaa,0x017e8062,0x061f8bb0,0x0f414690,0x1384e740,0x1aa49ee0,0x1fb2fec0,0x22a3e200,0x2c636380,0x2f32c280,0x31b88040,0x299ac600,0x25927d80,0x235aae80,0x1cbe81c0,
-0x17eb27e0,0x11d1ff80,0x0e376c90,0x0611e978,0x024ff450,0xff052478,0x0032dd2e,0xff3b4502,0xf9b73680,0xf439b3f0,0xef265440,0xe8754520,0xe227bf60,0xde0d95c0,0xd9948a80,0xd55fc080,0xcf473700,0xcf5f75c0,0xd24efa00,0xdc108b40,0xdf4c2200,0xe5e6d320,0xec682be0,0xf39f2d10,0xf9394418,
-0xffce5a4f,0xffe66dc7,0x00edfc3c,0x058f7dc8,0x0cd13790,0x14152740,0x19984720,0x20a64b00,0x24b8cc40,0x2d629d00,0x30c52180,0x3134ec40,0x2a143f80,0x26b18b40,0x21319680,0x1e8921e0,0x1797d4e0,0x11b991c0,0x0b678550,0x05e02e90,0x01ecb168,0xfeda9d20,0x0066806b,0xff3b5040,0xf8a68990,
-0xf2481600,0xe9326260,0xe2ef8700,0xdbb353c0,0xd58fcf40,0xd0c98bc0,0xcc95bbc0,0xc54b6300,0xc8922900,0xcd245e80,0xd8a62780,0xdab39500,0xe21076c0,0xe82a9fc0,0xf0e06200,0xf8cf7a90,0xff216c04,0x0007fb22,0x00e43583,0x07d78ca0,0x0e9b99a0,0x17cf01e0,0x1ed05160,0x24c1ddc0,0x2712b100,
-0x33404d00,0x3744d580,0x3a956cc0,0x346055c0,0x2ed75ac0,0x2b68c7c0,0x232fd680,0x1de0c9e0,0x15a8b460,0x0f0a04b0,0x06633d50,0x01810b20,0xff3c6e35,0x008888bc,0xfecb0c76,0xf90a1248,0xf09f8420,0xe912a920,0xe0af3c80,0xd975adc0,0xd4ed8f00,0xcd7b2ec0,0xc71d8980,0xbe81f200,0xc34bb340,
-0xc95f8f40,0xd5b20880,0xd966d100,0xdf8690c0,0xe81b49c0,0xf0fa74b0,0xf8f8aa18,0xfea94afe,0xffff685c,0x0189a44e,0x06a9c958,0x0f773bc0,0x17f11920,0x1fd6a960,0x27aba2c0,0x29b36940,0x368d4b00,0x3d13fbc0,0x410e8900,0x38af1d40,0x31dcae00,0x2b0c6540,0x262e3a40,0x1fc95380,0x16c32300,
-0x0efad910,0x06ee9a88,0x019f426e,0xff05228a,0x00581ed5,0xff00e290,0xfa0c8c50,0xf1d8ceb0,0xe9dc5b00,0xe0428ca0,0xdb637c40,0xd3424300,0xcc5438c0,0xc3c0bd00,0xbc06f600,0xc2444ec0,0xc795b900,0xd5004f80,0xd6eeaac0,0xdf712a80,0xe6b0db40,0xf1da1820,0xf929b6f0,0xffe593db,0x0005031f,
-0x0048a5d7,0x07674148,0x0da5dbe0,0x196366c0,0x20556440,0x283f4700,0x2b74adc0,0x37fc5d40,0x3dc95600,0x44ac4380,0x3b583f80,0x35339b80,0x2b7be200,0x24e99a80,0x1f2d6080,0x15fb48c0,0x0f0593d0,0x05930bc0,0x01f951f4,0xfef5f254,0x006912e5,0xff018826,0xf9a100c0,0xf1f97b30,0xeb7fc420,
-0xe3530780,0xdae99cc0,0xd642d380,0xce53f1c0,0xc9617300,0xc046a900,0xc897fd40,0xcd9e7b00,0xd4ecb080,0xd92bc200,0xe09b0d60,0xe8d72320,0xf139f250,0xfa817310,0xfe674bea,0x00086e03,0x018a0dae,0x050981f0,0x0ea933b0,0x175d1820,0x1f7d59a0,0x27826580,0x2ab30040,0x33a1f040,0x3683d580,
-0x3f9d67c0,0x374365c0,0x30fa2c80,0x2b8fe7c0,0x23e8eb00,0x1d8d81c0,0x14699660,0x0d84ed70,0x057364d0,0x026654ec,0xfea4947c,0x004bf89d,0xfedf804e,0xfa6ffbb0,0xf4b971c0,0xeb672d60,0xe66c3ce0,0xdee688c0,0xd6e1fe80,0xd26b5b40,0xccf82c40,0xcb6a1d00,0xccfa3980,0xd0b3ebc0,0xd6cbf440,
-0xdcc99580,0xe42df080,0xeb0ae2e0,0xf45a1810,0xfbcf3138,0xff6a4b72,0xffe125c5,0x01985dd2,0x044be680,0x0c30eef0,0x1477ad80,0x1c1165e0,0x232c5e00,0x2a129a40,0x2df8f200,0x340a4b40,0x342858c0,0x32a1b580,0x2e9f2cc0,0x27903dc0,0x21722000,0x19686060,0x136809c0,0x0c8c7b80,0x05df1bb8,
-0x013c9990,0xff8d494e,0x00795a20,0xfe6ce02e,0xfcea7178,0xf5f515b0,0xf0e613a0,0xe9ae68e0,0xe33b5300,0xdfac6680,0xdb240340,0xd88a8980,0xd5bef980,0xd892a000,0xda9b8f00,0xdf549480,0xe2de7380,0xe928cde0,0xeeca9f00,0xf7444470,0xfc84447c,0xff4f6c76,0x002c1fae,0xff6a6646,0x03800cd0,
-0x092181a0,0x1058d300,0x16c52020,0x1d3cc540,0x1ffb9be0,0x262ccfc0,0x26d3ef80,0x2a925e00,0x27852000,0x2422bcc0,0x2191bfc0,0x1c146b00,0x174fcec0,0x0fd5ee20,0x0a726de0,0x02952814,0x0110147e,0xff77b0fb,0x002d720e,0x003706f6,0xfc1350ac,0xf8af0940,0xf3867670,0xefaa66a0,0xeb3e5d00,
-0xe6e96ba0,0xe4cd63c0,0xe35593c0,0xe0e3eea0,0xe2a9a4e0,0xe5145320,0xe561d240,0xeaf5b1c0,0xeea98440,0xf38949a0,0xf863c958,0xfcce1d7c,0x0051a873,0xfffa9df8,0x002326e6,0x03464ea4,0x07746010,0x0cce9330,0x115ee8e0,0x15069c40,0x1ae36c40,0x1a972a60,0x1d954f40,0x1ef6db40,0x1ca8f780,
-0x1b5c3e60,0x18a28ba0,0x14ee2420,0x0ffc8b40,0x0c02b580,0x07558f70,0x03e03498,0x008e90b7,0xfed31a64,0x0001ac1f,0x0029349d,0xfe3feac8,0xfb406fd0,0xf97cecb0,0xf67ea100,0xf3fd6a00,0xf04bfe40,0xf11dbc30,0xed7e0080,0xeea6a7c0,0xec9a1d00,0xefdab9c0,0xeef63fc0,0xf331f790,0xf4fbecf0,
-0xf72ef560,0xfb0ccb00,0xfccd66b4,0x00a47efb,0xfffeab29,0xff24ccf7,0x0322302c,0x0504a378,0x08a52610,0x0afdbce0,0x0ccb7fb0,0x10ea75a0,0x104c6260,0x134a70e0,0x116a43c0,0x1282d4a0,0x0ed55190,0x0fec8fb0,0x0bf36e40,0x09b36b00,0x06c08cc0,0x04cf2598,0x01928b6c,0xffd3a481,0xffb3863b,
-0xfffa05a6,0x0058f182,0x01447e48,0xfdbdf9fc,0xfd81915c,0xfbbed5d8,0xfa16f7b0,0xf99ddbd0,0xf84c34f8,0xfaad2370,0xfa73bf40,0xfb350da8,0xf98acd48,0xf9959ba8,0xfb39ba10,0xfc335610,0xfe1e98f0,0xfec90b2c,0x01ad3e90,0x006c3783,0x0003932e,0xffba31e3,0xfe616224,0x012e22d0,0x0200ea4c,
-0x03d47498,0x04cbf8b8,0x067d4f90,0x065d9000,0x04d98df8,0x05827a68,0x055257f8,0x07b6f588,0x063bb330,0x05ead9f0,0x041b5b20,0x02468c7c,0x02390f68,0xfedaab24,0xffade7f7,0x004f8d7c,0x00018e86,0xff48977f,0x0035e1f5,0x00e10b6c,0x019ba8de,0xfec09cfc,0xff97854d,0x002a2158,0x0102f1ca,
-0x00073c50,0xffc53d17,0xffaef3ae,0x006c6e6f,0x001e3554,0xff07f047,0xfe85f03e,0x01690b7c,0x002de0f0,0x0004a149,0xff2c94fc,0xfffd8383,0x00bfdc23,0xfff389ae,0xffd2c64d,0xfe883edc,0x0173389c,0x00f2eb6a,0xffdb167a,0xff9bf93c,0x004de8c3,0x003de697,0xfff9603a,0xfeffbcf4,0xffe7c878,
-0x006e0794,0x0155a804,0xfe867a7a,0xff23a62f,0xffbef3f5,0x00a43429,0x00169261,0xffff467a,
-};
-const Word32 defaultHRIR_rom_ITD_azimBsShape_fx[84]/*Q30*/ = {
-1073741824,782757760,549755840,368293440,231928240,134217728,68719480,28991030,8589935,1073741,0,0,275683200,466003936,582236480,635655168,637534208,599147968,531770624,446676608,355140096,268435456,195689440,137438960,92073360,57982060,33554432,17179870,7247757,2147483,268435,0,0,15121864,56550404,118380040,194705184,279620256,367219712,451597920,526849312,587068352,626349376,640397504,631360192,602995520,559061568,503316480,439518304,371425184,302795200,237386416,178956976,130459632,91625968,61382240,38654704,22369622,11453246,4831838,1431655,178956,0,0,178956,1431655,4831838,11453246,22369622,38654704,61382240,91625968,130459632,178956976,237475904,303511008,373841120,445244928,514501280,578388928,633686656,677173184,705627328,715827904
-};
-
-const Word32 defaultHRIR_rom_ITD_azimKSeq_fx[19]/*Q22*/ = {
- 0, 41943040, 83886080, 125829120, 167772160, 209715200, 251658240, 293601280, 335544320, 377487360, 419430400, 461373440, 503316480, 545259520, 587202560, 629145600, 671088640, 713031680, 754974720,
-};
-const Word32 defaultHRIR_rom_ITD_elevBsShape_fx[28]/*Q30*/ = {
-1073741824,318145728,39768216,0,0,606465280,556755008,268435456,79536432,9942054,0,0,142502768,424194304,626349376,589895168,394368128,178956976,53024288,6628036,0,0,6628036,53024288,178956976,397682144,616407360,715827904
-};
-const Word32 defaultHRIR_rom_ITD_elevKSeq_fx[16] /*Q22*/ = {
--377487360, -327155712, -276824064, -226492416, -176160768, -125829120, -75497472, -25165824, 25165824, 75497472, 125829120, 176160768, 226492416, 276824064, 327155712, 377487360
-};
-
-#ifdef FIX_989_TD_REND_ROM
-const int16_t defaultHRIR_rom_ITD_model_configuration[4] = {
-18, /* elevDim3 */
-41, /* azimDim3 */
-3, /* elevSegSamples */
-10, /* azimSegSamples */
-};
-const int16_t defaultHRIR_rom_ITD_elevBsLen[4] = {
-4, 7, 10, 7,
-};
-const int16_t defaultHRIR_rom_ITD_elevBsStart[4] = {
-0, 4, 11, 21,
-};
-const int16_t defaultHRIR_rom_ITD_azimBsLen[4] = {
-11, 21, 31, 21,
-};
-const int16_t defaultHRIR_rom_ITD_azimBsStart[4] = {
-0, 11, 32, 63,
-};
-#endif
-const uint32_t defaultHRIR_rom_ITD_azimBsShape[84] = {
-0x3f800000,0x3f3a9fbe,0x3f03126f,0x3eaf9db2,0x3e5d2f1b,0x3e000000,0x3d83126f,0x3cdd2f1b,0x3c03126f,0x3a83126f,0xa5800000,0x00000000,0x3e8374bc,0x3ede353f,0x3f0ad0e5,0x3f178d50,0x3f180000,0x3f0ed917,0x3efd9168,0x3ed4fdf4,0x3ea95810,0x3e800000,0x3e3a9fbe,0x3e03126f,0x3daf9db2,
-0x3d5d2f1b,0x3d000000,0x3c83126f,0x3bdd2f1b,0x3b03126f,0x3983126f,0xa6000000,0x00000000,0x3c66bdc8,0x3d57b901,0x3de1cac1,0x3e39af72,0x3e855555,0x3eaf1aa0,0x3ed756b3,0x3efb38a9,0x3f0bf7cf,0x3f155555,0x3f18aec3,0x3f16872b,0x3f0fc3ed,0x3f054a69,0x3ef00000,0x3ed19423,0x3eb11bfd,
-0x3e90624e,0x3e6263ab,0x3e2aaaab,0x3df8d4fe,0x3daec33e,0x3d6a2798,0x3d1374bc,0x3caaaaab,0x3c2ec33e,0x3b9374bc,0x3aaec33e,0x392ec33e,0xa6800000,0x00000000,0x392ec33e,0x3aaec33e,0x3b9374bc,0x3c2ec33e,0x3caaaaab,0x3d1374bc,0x3d6a2798,0x3daec33e,0x3df8d4fe,0x3e2aaaab,0x3e627984,
-0x3e90b9af,0x3eb242e7,0x3ed44f30,0x3ef55555,0x3f09e60f,0x3f17152a,0x3f21735f,0x3f283c13,0x3f2aaaab,
-};
-const float defaultHRIR_rom_ITD_azimKSeq[19] = {
- 0.000000f, 10.000000f, 20.000000f, 30.000000f, 40.000000f, 50.000000f, 60.000000f, 70.000000f, 80.000000f, 90.000000f, 100.000000f, 110.000000f, 120.000000f, 130.000000f, 140.000000f, 150.000000f, 160.000000f, 170.000000f, 180.000000f,
-};
-const uint32_t defaultHRIR_rom_ITD_elevBsShape[28] = {
-0x3f800000,0x3e97b426,0x3d17b426,0x00000000,0x00000000,0x3f1097b4,0x3f04bda1,0x3e800000,0x3d97b426,0x3c17b426,0x00000000,0x00000000,0x3e07e6b7,0x3eca4588,0x3f155555,0x3f0ca458,0x3ebc0ca4,0x3e2aaaab,0x3d4a4588,0x3bca4588,0x00000000,0x00000000,0x3bca4588,0x3d4a4588,0x3e2aaaab,
-0x3ebda12f,0x3f12f685,0x3f2aaaab,
-};
-const float defaultHRIR_rom_ITD_elevKSeq[16] = {
--90.000000f, -78.000000f, -66.000000f, -54.000000f, -42.000000f, -30.000000f, -18.000000f, -6.000000f, 6.000000f, 18.000000f, 30.000000f, 42.000000f, 54.000000f, 66.000000f, 78.000000f, 90.000000f,
-};
-#endif
#undef WMC_TOOL_SKIP
/* clang-format on */
diff --git a/lib_rend/ivas_rom_binauralRenderer.h b/lib_rend/ivas_rom_binauralRenderer.h
index bfb82b4619bb350f76168de80910a69f9aad8f7c..f7ecc3ddac87b8bdca88e061df55392e678b1d77 100644
--- a/lib_rend/ivas_rom_binauralRenderer.h
+++ b/lib_rend/ivas_rom_binauralRenderer.h
@@ -42,8 +42,6 @@
* Binaural rendering related ROM tables
*------------------------------------------------------------------------*/
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
-
extern const Word16 FASTCONV_factor_Q_HRIR_latency_s_fx;
extern const Word16 FASTCONV_factor_Q_FOA_latency_s_fx;
extern const Word16 FASTCONV_factor_Q_HOA2_latency_s_fx;
@@ -104,48 +102,4 @@ extern const Word16 parametricReverberationTimes_fx[CLDFB_NO_CHANNELS_MAX];
extern const Word16 parametricReverberationEneCorrections_fx[CLDFB_NO_CHANNELS_MAX]; /* Q31 */
extern const Word16 parametricEarlyPartEneCorrection_fx[CLDFB_NO_CHANNELS_MAX]; /* Q28 */
-#else
-/* Binaural rendering data set based on HRIRs */
-extern const Word32 FASTCONV_HRIR_latency_s_fx;
-extern Word32 leftHRIRReal_HOA3_fx[BINAURAL_CONVBANDS][HOA3_CHANNELS][BINAURAL_NTAPS_SBA]; /* Q29 */
-extern Word32 leftHRIRImag_HOA3_fx[BINAURAL_CONVBANDS][HOA3_CHANNELS][BINAURAL_NTAPS_SBA]; /* Q29 */
-extern Word32 rightHRIRReal_HOA3_fx[BINAURAL_CONVBANDS][HOA3_CHANNELS][BINAURAL_NTAPS_SBA]; /* Q29 */
-extern Word32 rightHRIRImag_HOA3_fx[BINAURAL_CONVBANDS][HOA3_CHANNELS][BINAURAL_NTAPS_SBA]; /* Q29 */
-extern Word32 leftHRIRReal_HOA2_fx[BINAURAL_CONVBANDS][HOA2_CHANNELS][BINAURAL_NTAPS_SBA]; /* Q29 */
-extern Word32 leftHRIRImag_HOA2_fx[BINAURAL_CONVBANDS][HOA2_CHANNELS][BINAURAL_NTAPS_SBA]; /* Q29 */
-extern Word32 rightHRIRReal_HOA2_fx[BINAURAL_CONVBANDS][HOA2_CHANNELS][BINAURAL_NTAPS_SBA]; /* Q29 */
-extern Word32 rightHRIRImag_HOA2_fx[BINAURAL_CONVBANDS][HOA2_CHANNELS][BINAURAL_NTAPS_SBA]; /* Q29 */
-extern Word32 leftHRIRReal_FOA_fx[BINAURAL_CONVBANDS][FOA_CHANNELS][BINAURAL_NTAPS_SBA]; /* Q29 */
-extern Word32 leftHRIRImag_FOA_fx[BINAURAL_CONVBANDS][FOA_CHANNELS][BINAURAL_NTAPS_SBA]; /* Q29 */
-extern Word32 rightHRIRReal_FOA_fx[BINAURAL_CONVBANDS][FOA_CHANNELS][BINAURAL_NTAPS_SBA]; /* Q29 */
-extern Word32 rightHRIRImag_FOA_fx[BINAURAL_CONVBANDS][FOA_CHANNELS][BINAURAL_NTAPS_SBA]; /* Q29 */
-extern Word32 leftHRIRReal_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS]; /* Q29 */
-extern Word32 leftHRIRImag_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS]; /* Q29 */
-extern Word32 rightHRIRReal_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS]; /* Q29 */
-extern Word32 rightHRIRImag_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS]; /* Q29 */
-extern Word32 FASTCONV_HOA3_latency_s_fx;
-extern Word32 FASTCONV_HOA2_latency_s_fx;
-extern Word32 FASTCONV_FOA_latency_s_fx;
-extern Word16 hrtfShCoeffsRe_fx[BINAURAL_CHANNELS][HRTF_SH_CHANNELS][HRTF_NUM_BINS]; /* Q14 */
-extern Word16 hrtfShCoeffsIm_fx[BINAURAL_CHANNELS][HRTF_SH_CHANNELS][HRTF_NUM_BINS]; /* Q14 */
-
-/* Binaural rendering data set based on BRIRs */
-extern const Word32 FASTCONV_BRIR_latency_s_fx;
-extern Word32 leftBRIRReal_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS_MAX]; /* Q29 */
-extern Word32 leftBRIRImag_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS_MAX]; /* Q29 */
-extern Word32 rightBRIRReal_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS_MAX]; /* Q29 */
-extern Word32 rightBRIRImag_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS_MAX]; /* Q29 */
-
-/* Reverberation parameters based on BRIRs for fastconv */
-extern Word32 fastconvReverberationTimes_fx[CLDFB_NO_CHANNELS_MAX]; /* Q26 */
-extern Word32 fastconvReverberationEneCorrections_fx[CLDFB_NO_CHANNELS_MAX]; /* Q31 */
-
-/* Binaural rendering data set based on BRIRs, to be used in a combined manner
- * with the above binaural rendering data set based on HRIRs for parametric
- * renderer */
-extern const Word32 parametricReverberationTimes_fx[CLDFB_NO_CHANNELS_MAX]; /* Q26 */
-extern const Word32 parametricReverberationEneCorrections_fx[CLDFB_NO_CHANNELS_MAX]; /* Q31 */
-extern const Word32 parametricEarlyPartEneCorrection_fx[CLDFB_NO_CHANNELS_MAX]; /* Q28 */
-
-#endif
#endif /* _IVAS_ROM_BINAURAL_RENDERER_ */
diff --git a/lib_rend/ivas_rom_binauralRenderer_fx.c b/lib_rend/ivas_rom_binauralRenderer_fx.c
index 630740efbc73d290ecd1071305b78da4c2acac81..3357eaeb870713885171a0cf4246d69078168189 100644
--- a/lib_rend/ivas_rom_binauralRenderer_fx.c
+++ b/lib_rend/ivas_rom_binauralRenderer_fx.c
@@ -51,7 +51,6 @@
* Generated with Matlab version 9.3.0.713579 (R2017b) by MUXE6256
*/
#endif
-#ifdef USE_FASTCONV_PARAMBIN_16BIT_ROM
const Word16 FASTCONV_factor_Q_HOA3_latency_s_fx = 31;
@@ -47514,47166 +47513,7 @@ const Word16 parametricEarlyPartEneCorrection_fx[CLDFB_NO_CHANNELS_MAX] = {
2439,2802,4265,3605,2976,2167,1871,1569,1359,1354,1788,2427,3143,4550,6343,7972,10444,13857,17347,19203,13634,5375,1542,723,614,534,562,1199,2377,3003,3009,3134,3112,2258,1055,373,214,225,208,146,91,65,52,44,37,32,33,45,61,69,67,175,317,271,172,82,32,12,4,1
};
-#else
-const Word32 FASTCONV_HOA3_latency_s_fx = 20833;
-
-const Word32 leftHRIRReal_HOA3_fx[BINAURAL_CONVBANDS][HOA3_CHANNELS][BINAURAL_NTAPS_SBA] /* Q29 */=
-{
- {
- { 189679184, 304322592, 107436456, },
- { 242399360, -302261536, 44863616, },
- { 11860552, 60100016, -1683090, },
- { 25304336, 104153, -207232, },
- { 21139292, -19353660, -8217883, },
- { 7248831, -2365453, 9037148, },
- { -26986890, 31329638, 9359807, },
- { -7344931, 43398496, -10575820, },
- { -19937238, 13084081, 28024662, },
- { 26909044, -42307040, -10624675, },
- { -2450816, 4110284, -718333, },
- { 5272609, -27694486, -1728188, },
- { -2057826, -12568685, -1696512, },
- { 4153234, -22881976, 5524939, },
- { 7628936, -1821066, -681826, },
- { -3011309, 570694, 995359, }
- },
- {
- { 5991480, -273394528, -70961448, },
- { 76770392, -439989344, 50001472, },
- { 1802813, 41517840, -4589173, },
- { 2413235, 12974559, 13751412, },
- { 11226508, 30864708, 13184476, },
- { 11241003, 13223667, 12262132, },
- { -26838176, -61006788, -28770912, },
- { 5379447, 112868520, 14491220, },
- { -50776712, -218518816, -55487220, },
- { 20914344, 47507172, 31159450, },
- { 1543504, 8399345, -417686, },
- { 11120744, 56255480, 37819336, },
- { -4721243, 1569811, 5162014, },
- { 2341294, -30473866, 3795677, },
- { 5437429, 39253852, 18807662, },
- { -3028489, -3227668, -131533, }
- },
- {
- { -103299336, -110683456, -102613208, },
- { -149763360, 126817496, -135879344, },
- { -1404454, 36626408, 381178, },
- { -23609436, 57801132, 3221226, },
- { -12256763, 65424164, 4438312, },
- { 4104915, 56324736, -8615704, },
- { 4727149, -149730608, 3177739, },
- { 8160438, 96794064, 20379620, },
- { -20394116, -285178304, -28841780, },
- { -28674812, 217949728, -35490388, },
- { 2268280, 26517128, -10790032, },
- { -17635672, 217100928, -30644592, },
- { -10921565, 13795972, 1620276, },
- { 214212, -26433914, 2987150, },
- { -10144176, 91749632, -2559801, },
- { -7639136, 26703960, -14314589, }
- },
- {
- { -33778308, 274702336, 33510408, },
- { -88140248, 585712192, 58195196, },
- { 4900021, 34997540, -1655173, },
- { -9982041, 43882756, -413927, },
- { -11105712, 50252728, 6448357, },
- { 443455, 63618128, -804233, },
- { 13956496, -165173168, -12775917, },
- { -4399121, 29312078, -5219459, },
- { 21663278, -239384304, -30239790, },
- { -16560857, 380443360, 43821016, },
- { 1107565, 18220326, -13462038, },
- { -14711874, 246313696, -17947058, },
- { -11474542, -3762928, -5577015, },
- { -1122060, -16861504, 4379793, },
- { -15287399, 38154880, -25150792, },
- { -4081293, 62483720, 1358820, }
- },
- {
- { 61600032, 37331856, 91757144, },
- { 56944824, 351084576, 99906848, },
- { 17413408, 12843026, 1846836, },
- { 26146150, 75161392, -28630788, },
- { 4660040, 135259792, -38225208, },
- { -2360622, 64597920, 166430, },
- { 13772886, -174139984, -3468723, },
- { -2582349, 33209760, -4078608, },
- { 52569864, -344211040, 8208220, },
- { 6097243, 299348480, 76846632, },
- { 2537252, -8970576, 233002, },
- { 7102266, 89445912, 49996640, },
- { -3978750, 6330782, -11567958, },
- { -2896956, -18562312, 6148783, },
- { 5714454, 6291590, -11762305, },
- { 2909304, 16636556, 23424214, }
- },
- {
- { 35767952, -48289928, 51695836, },
- { 122719024, 248484800, 12538620, },
- { 16426639, 29774324, 5659157, },
- { 56310780, 181175136, -1972464, },
- { 39025684, 217555120, -20864952, },
- { 2611340, 43738872, -11940546, },
- { 13994614, -115656488, 29881698, },
- { 8351564, 18503256, -14416595, },
- { 43786656, -177021376, 90108952, },
- { 2380486, 120777704, -14774687, },
- { 458488, -9656160, 627602, },
- { -9182103, 11922292, 14430553, },
- { 9099425, 37925100, -2336999, },
- { -3535295, -46244988, -2520609, },
- { 31896574, 57557392, 2627983, },
- { 3047279, -31762356, 1707250, }
- },
- {
- { -133453760, 248134224, -24065238, },
- { 49510236, 309569984, 16902306, },
- { -9960029, 63480152, -102005, },
- { 12905303, 103205376, 40805412, },
- { 39440148, 59966872, 45799920, },
- { 24383604, 28147068, -7584912, },
- { 2330557, -47321948, -1519345, },
- { 31236760, -36228588, 1898912, },
- { -60579440, 97428112, -7415261, },
- { 27457726, 30667678, 19580220, },
- { -1240172, -5094368, -1571958, },
- { -19764902, 37777996, 7081328, },
- { 13549548, 1037772, 12015708, },
- { 6334540, -37628744, -9266929, },
- { 42618424, -2711198, 22687628, },
- { 14770929, -17062294, -7906498, }
- },
- {
- { -316071488, 37549824, -63453848, },
- { -180852480, -46988552, -71499392, },
- { -49294412, 119185, -16876538, },
- { -128887672, -112254336, -14310831, },
- { -57196080, -112747184, -3730716, },
- { 46474768, 41647224, -7485055, },
- { 19670950, -6565932, 11464878, },
- { 32199906, -13280576, 9488120, },
- { -115142168, 14012331, -24771224, },
- { 8647380, -44480828, -6425271, },
- { -1937030, 11526618, 4697084, },
- { -24869472, -5836324, -8390219, },
- { -4409858, -42788076, -1603633, },
- { 28117540, 15736760, 7562364, },
- { 10062035, -60990148, 5612986, },
- { 31954556, 17682380, 2305324, }
- },
- {
- { -361012928, -107035952, 1838246, },
- { -339260544, -74138648, -23380192, },
- { -70194800, -31168040, -679679, },
- { -243166560, -1868311, -30283814, },
- { -153038816, 16125455, -30584462, },
- { 59203440, -6156299, 9015673, },
- { 35418448, 3013993, 2372970, },
- { -1691680, 25706990, 1106491, },
- { -87555056, -70230768, 971736, },
- { -10498511, -13577465, -12486544, },
- { -10082973, 18462454, 3297461, },
- { -1347009, -24953224, -4918812, },
- { -22036940, -12890807, -9094593, },
- { 35231080, 14661945, 5639829, },
- { -39492224, 21459268, -15654619, },
- { 33756296, 3649112, 6452652, }
- },
- {
- { -291765184, 31956168, 34410204, },
- { -375867072, 43094628, 22290880, },
- { -83209624, -4979478, 9856950, },
- { -254651840, 67848136, -1629403, },
- { -175750064, 61229052, -7963406, },
- { 38247220, -31672162, 2454574, },
- { 47128676, 67109, -594316, },
- { -50551764, -20916490, -6397891, },
- { -10248329, 29680372, 20811800, },
- { -12695386, 21452288, 1926293, },
- { -23096724, -7217156, -4312147, },
- { 41781980, 24153822, 5424007, },
- { -21937082, 11606612, 1177358, },
- { 24022288, -16567299, -4268661, },
- { -66468376, 30025580, -6706592, },
- { 13777718, -18653580, 1938641, }
- },
- {
- { -180420832, 15508053, 16914118, },
- { -315297312, -4876399, 22964654, },
- { -97981624, 13826037, 4172561, },
- { -176048032, -34457984, 18804440, },
- { -125448480, -36109936, 16757889, },
- { -3931506, 16374563, -7987029, },
- { 46259484, 3149285, -1439888, },
- { -84816480, -9487046, -4279935, },
- { 55625196, 20936354, 10554882, },
- { -4123706, -2500208, 8121783, },
- { -29963840, -9622337, -1771674, },
- { 77292232, 7432978, 4481262, },
- { -9511205, -2664490, 3375308, },
- { 4716948, -6528351, -3870839, },
- { -65016140, -18563922, 10410464, },
- { -17283486, 16813186, -5451387, }
- },
- {
- { -82274392, -4493610, -4998268, },
- { -215839824, 63351, 6945499, },
- { -107246944, -3540664, 659278, },
- { -69171520, 2429878, 10962367, },
- { -49844168, -5693516, 11807402, },
- { -41827076, 13609141, -1554241, },
- { 30812096, -4552129, -1991791, },
- { -88808648, 12234751, 4199405, },
- { 79944376, -20038170, -7359964, },
- { 6064494, -9715753, 3017752, },
- { -29600914, 4624069, 3562139, },
- { 86208584, -8352101, -3291556, },
- { 7969312, -1806034, 34360, },
- { -14738717, -891206, 2032593, },
- { -52577916, -17246978, 7355132, },
- { -40023188, 11195906, -3377992, }
- },
- {
- { -11520176, -16800838, -8475044, },
- { -121099824, -8950175, -2939905, },
- { -96168616, -3455301, 530965, },
- { 16582869, -2209761, -542240, },
- { 12630425, 2364380, -1235340, },
- { -61056720, -850404, 7627325, },
- { 3321620, 1947768, -172872, },
- { -70016016, 70867, 4503273, },
- { 71465032, -759672, -10794327, },
- { 14083735, 3701188, -3001109, },
- { -25223270, 6362994, 1888712, },
- { 66658428, 2034741, -3216931, },
- { 21100638, -2749316, -1918777, },
- { -33149632, 10821707, -206695, },
- { -39621612, 8810052, -4913980, },
- { -47799764, -4650376, 3549791, }
- },
- {
- { 42451456, 21299280, -1612760, },
- { -41670848, 17740900, -3934190, },
- { -48837536, 14950781, 521302, },
- { 65235720, -1077500, -5389647, },
- { 51329692, 3191161, -4767414, },
- { -53909892, -8493298, 3687766, },
- { -32504312, -6902013, 2399813, },
- { -41712184, 894964, -538482, },
- { 49881752, 9771587, -2830920, },
- { 21916682, 7760469, -2321967, },
- { -16160888, 1179505, -1459752, },
- { 23418310, -9116068, -65498, },
- { 22019224, 804770, -699543, },
- { -47476032, 4873714, -712428, },
- { -27396522, 13417478, -4742181, },
- { -48884780, -6140193, 2001455, }
- },
- {
- { 88989040, -11040213, 2617783, },
- { 27049704, -19992536, -533650, },
- { 37626060, -19404662, -939524, },
- { 90464360, -9076340, -4810900, },
- { 75970992, -7735236, -3192771, },
- { -12238509, -5801964, -3783329, },
- { -67951216, 8986682, 2831457, },
- { -14402636, -9207873, -1178969, },
- { 24434068, 2305861, 3216394, },
- { 29472066, -4461934, 941672, },
- { -1956895, -5533529, -1078574, },
- { -30696132, 7948374, 2563022, },
- { 5944235, 5713380, -133144, },
- { -58457188, -2496450, 4172024, },
- { -21294448, -10089415, 2979634, },
- { -49573588, -411780, -426812, }
- },
- {
- { 128727688, 3776350, 1412507, },
- { 85088672, 12749610, 1985349, },
- { 145171504, 23826868, -3697967, },
- { 111840408, 8870181, -1000191, },
- { 101389680, 9131637, -709207, },
- { 58888832, 21438330, -5841156, },
- { -87093344, -6423661, 1226213, },
- { 4442607, 5873905, 1722282, },
- { -4634270, -12062416, 2022393, },
- { 33332704, -2255395, 806917, },
- { 13388487, 5470178, 262530, },
- { -77616504, -11276437, 3949223, },
- { -24839944, -5436355, 712428, },
- { -68098856, -10958609, 2998961, },
- { -26676042, -6561100, 5107253, },
- { -54116588, -608275, 588947, }
- },
- {
- { 160432064, -3110093, -737124, },
- { 127650720, -4705674, 1635309, },
- { 241246704, -25421912, -2492155, },
- { 134621984, -2611877, -1050656, },
- { 131793216, -5808407, -472983, },
- { 134059888, -26525718, -2126546, },
- { -73410656, -4699231, -995896, },
- { 13879724, 1817308, 2222109, },
- { -35398048, 12080132, -1765232, },
- { 30884572, 4506495, -1458678, },
- { 24806658, -2606508, 1139777, },
- { -98636608, 8537858, 754304, },
- { -61230664, 6629282, 2826089, },
- { -69490424, 5415954, -2579665, },
- { -38364796, 12315282, 798864, },
- { -63967632, 4951561, 297963, }
- },
- {
- { 185763248, 4479114, -1353452, },
- { 153832304, -309238, -257698, },
- { 290788064, 7578470, 1229434, },
- { 153667488, 5258651, -2077154, },
- { 161042480, 5226439, -1700270, },
- { 176488800, 10183367, 3265249, },
- { -20143396, 18489298, -1172526, },
- { 22658100, -1901060, 338229, },
- { -62093952, -2499671, -2667712, },
- { 20965346, -1632625, -2285460, },
- { 30292404, 601295, 1700270, },
- { -77775952, 10266582, -1833414, },
- { -89274120, -9709847, 2138357, },
- { -54588496, 11563126, -2695629, },
- { -42026256, -3581466, -3647501, },
- { -75187160, -2548526, -672162, }
- },
- {
- { 208514224, -5304822, -991601, },
- { 169719920, -48318, -2152316, },
- { 275570464, 19114216, 161061, },
- { 159189200, -3106335, -143345, },
- { 178980944, -3876745, -1544578, },
- { 158604560, 22049288, 1932735, },
- { 61370252, -22639846, 114890, },
- { 43689480, -3373697, -1739462, },
- { -80673984, -3013993, 260382, },
- { 2893734, 114890, -209380, },
- { 34706020, 1522029, 1552631, },
- { -14364518, -24151138, 210453, },
- { -91525752, -1062468, -83752, },
- { -27262304, -13845901, 1780801, },
- { -25509422, -13974213, -2544231, },
- { -82675440, -2627446, 635118, }
- },
- {
- { 231195936, 5265630, -641561, },
- { 184304032, 5625334, -2100776, },
- { 208716624, -26603564, -4437238, },
- { 143026176, -9013526, 463856, },
- { 176169360, -4109210, -1348620, },
- { 83453896, -32672890, -5035849, },
- { 144423648, 14431627, -525060, },
- { 85177792, 13616120, -2009508, },
- { -92251600, 1479616, 3518652, },
- { -23432804, -5090610, 2103460, },
- { 48676476, -792421, -562641, },
- { 71161168, 19383724, 1622424, },
- { -57096760, 12967580, -226023, },
- { -279710, 5210332, 4049081, },
- { 10645613, 19659676, 3597035, },
- { -83698176, 1516124, 2621541, }
- },
- {
- { 253110480, -4453881, -644245, },
- { 202792784, -9002251, 316754, },
- { 126104536, 14142790, -4711579, },
- { 106415864, 15707232, -2575370, },
- { 149847648, 8284455, -1737314, },
- { -18028662, 17587892, -6094022, },
- { 199054016, -3391951, -3665755, },
- { 142919872, -15989626, -756988, },
- { -99546064, 6783901, 2951716, },
- { -53973244, 10205916, 1722819, },
- { 81119584, -5608154, -3808562, },
- { 147441392, -6831146, -2094333, },
- { 7497939, -16030429, -641561, },
- { 17021492, 5471789, 1440425, },
- { 55233280, -5935108, 5962489, },
- { -77189688, 3450469, 1087701, }
- },
- {
- { 271380192, 3393561, -754304, },
- { 225036960, 5210332, 2160369, },
- { 61864172, -3352759, -230854, },
- { 59377384, -7401840, -3531537, },
- { 106045960, -8349417, -395137, },
- { -111889800, -4412542, 1377611, },
- { 204785120, -613107, -4148939, },
- { 199535584, 8651675, -1597191, },
- { -102982040, -9226127, -2387465, },
- { -79090216, -8512088, -667331, },
- { 128752920, 15685757, -4660577, },
- { 186985152, 4001836, -5465883, },
- { 80273472, 16455093, -1806571, },
- { 26085484, -3606162, -2874944, },
- { 100301448, -5814849, -549756, },
- { -62251792, 960999, -2479270, }
- },
- {
- { 283445824, -2472291, -425739, },
- { 250145872, 394063, 347892, },
- { 31551366, 1824824, 2136746, },
- { 11241540, 1342177, 860067, },
- { 55291800, 12691628, 486942, },
- { -177572208, 8174934, 7242389, },
- { 157573760, 6961068, 1270774, },
- { 233900160, -4170950, -3251290, },
- { -101713416, -5664525, -4573604, },
- { -89047560, -841814, -1887638, },
- { 172231408, -18637474, -468688, },
- { 174405200, -2156074, -1228361, },
- { 133267464, -12697534, -599685, },
- { 36203888, -8750996, -2057826, },
- { 146519056, -4073240, -8343511, },
- { -41135048, -11688753, -1687385, }
- },
- {
- { 288816672, 65498, -69256, },
- { 279945440, 3285650, -3053185, },
- { 31862752, 1466195, 632971, },
- { -34104188, -8149164, 4543002, },
- { 9822053, -10109816, -583042, },
- { -205254336, -11177652, 4417374, },
- { 71791992, -27465242, 4102768, },
- { 229422656, -2577517, -2360085, },
- { -101560944, 13728326, 1846836, },
- { -82175608, 9631464, 331786, },
- { 185142624, 451508, 3894999, },
- { 109586088, -19167366, 4055523, },
- { 144640544, -3027415, 1314797, },
- { 52999360, 7438884, 1590212, },
- { 190781904, 21658446, -6819871, },
- { -23318988, 8011725, 2361158, }
- },
- {
- { 289866272, 1352915, -431107, },
- { 315025120, -12282533, -3040837, },
- { 47494284, -6703907, -4832, },
- { -71863928, 13118978, 2914672, },
- { -20838644, 2469606, -643708, },
- { -190062496, -3092377, -1194538, },
- { -19047644, 33006286, -2068027, },
- { 179018528, 16397111, -1230508, },
- { -115382688, 5246840, 7004018, },
- { -67956048, -5418638, 2936684, },
- { 153785056, 24093692, 775242, },
- { 14096620, 36050344, 586800, },
- { 111691696, 18995566, -474594, },
- { 75546328, -217433, 713501, },
- { 214077280, -14137959, 1343251, },
- { -18821620, 4057670, 3177739, }
- },
- {
- { 291103744, 370978, -772557, },
- { 348790528, 12458090, 287226, },
- { 58636504, 3210488, 1225139, },
- { -92223152, -5486821, -352187, },
- { -35514012, 2880313, 1367410, },
- { -136765712, 22014392, -1087701, },
- { -74584256, -4656819, -6522445, },
- { 90864864, -23682450, -1395328, },
- { -146371408, -21838298, 2491081, },
- { -59137940, -3469260, 1843615, },
- { 91215976, -23076860, -5398774, },
- { -71293232, -19409494, -4901632, },
- { 54820964, -17020418, -3295851, },
- { 101421896, 2614561, -2597918, },
- { 191872288, -16305306, 3377455, },
- { -27441620, -11033234, -479963, }
- },
- {
- { 296270592, -2617246, -364535, },
- { 370586944, -2314987, 2156074, },
- { 51345796, 5406827, 1508070, },
- { -86875376, -7421704, -424128, },
- { -40845676, 1283122, 2312840, },
- { -65692060, -21493626, 2470143, },
- { -77312632, -19687594, -1716913, },
- { -13135084, 21265456, -473520, },
- { -178148272, 11236171, -3562139, },
- { -60837676, 4228396, -497679, },
- { 25942676, 4966593, -4297115, },
- { -111659488, -8442832, -2335389, },
- { 3730716, 5009006, -2279554, },
- { 125576792, -7951595, -2874944, },
- { 119798984, 29526826, -1306744, },
- { -37692632, 1173600, -2627983, }
- },
- {
- { 306039520, 2916283, 55298, },
- { 375466048, -7729868, -229244, },
- { 26038776, -9740449, 701153, },
- { -57603564, 12832289, 1970853, },
- { -44336948, -3262028, 929324, },
- { -3132105, 10383083, 3685619, },
- { -45856828, 19236622, 5332739, },
- { -108694344, -19291920, 162672, },
- { -189576096, 8080444, -2288681, },
- { -69859256, -2285460, -953483, },
- { -23221814, -1700270, 803159, },
- { -101647920, 16965658, 4098473, },
- { -21590264, 2845953, 823560, },
- { 137975280, 4347581, -857920, },
- { 19513648, -26326002, -4456566, },
- { -37789808, 6197638, -426276, }
- },
- {
- { 318587776, -3032784, 149250, },
- { 369527168, 3953518, -2932926, },
- { -4318590, 9765682, -648003, },
- { -16476031, -8249022, 2439005, },
- { -49333604, 2521146, -493384, },
- { 34719440, 4065724, 518080, },
- { -16206522, 1155883, 5816460, },
- { -177921168, 8576513, 460635, },
- { -173933296, -13509820, 2663417, },
- { -79901960, -100932, 41876, },
- { -54387708, 3276523, 2781528, },
- { -61901216, -9036611, 5770826, },
- { -17591112, -6221797, 2840047, },
- { 128530120, 4281009, 378494, },
- { -77983184, 12730820, -2652679, },
- { -24894168, -6537477, 1983738, }
- },
- {
- { 331023328, 1572495, -158377, },
- { 363240416, 2485176, -2062658, },
- { -23373748, -2558727, -1784559, },
- { 23740432, 7432978, 1649268, },
- { -54683524, 3455838, 938450, },
- { 49672908, -3960497, -3744675, },
- { -12600360, -14341433, -257161, },
- { -215045792, 570157, 2612951, },
- { -140426640, 7584912, 4264903, },
- { -85427440, 1476932, 1599875, },
- { -74498896, -4804995, 2248952, },
- { -18589156, -258235, 1464047, },
- { 6771553, 3172370, 1788317, },
- { 94353992, -13314935, -484258, },
- { -151179632, -4474282, 2142115, },
- { -3787088, 1398012, 1156957, }
- },
- {
- { 341009120, -1515587, -616328, },
- { 361957824, -4287451, 532039, },
- { -22019224, -7435126, -636192, },
- { 56237228, -2128156, 529892, },
- { -57777512, 2005750, 2416993, },
- { 54333484, -2007360, -4508105, },
- { -34668440, 11482595, -5185100, },
- { -226664752, -2289755, 4807142, },
- { -102528920, -1979980, 1407676, },
- { -83640728, 810138, 1657857, },
- { -90878288, 4764193, 1228898, },
- { 12435004, -1063541, -3004867, },
- { 39201240, -5504001, -520765, },
- { 43192340, 13027173, -1552094, },
- { -195225056, 2522220, 5649493, },
- { 19146428, -3657165, -924492, }
- },
- {
- { 347595456, 1677185, -417686, },
- { 364211072, -656056, 1167694, },
- { -4296578, 10086731, 2272038, },
- { 82555176, 3663607, -807991, },
- { -54913304, -3373160, 198105, },
- { 57903676, 8464307, -1361505, },
- { -68560024, -1516124, -4011500, },
- { -222998464, -2698850, 3826816, },
- { -67095444, 6439230, -712428, },
- { -72852312, 1525250, 280247, },
- { -105808128, -4806069, 281857, },
- { 26526792, 4527433, -2848637, },
- { 68737728, 4700305, -1606855, },
- { -10790032, -9171366, -679679, },
- { -214334432, -5647345, 5347771, },
- { 39519068, 7033009, -117575, }
- },
- {
- { 350730784, -349503, -70867, },
- { 366636672, 1081258, -66572, },
- { 17701708, -3133716, 3336653, },
- { 108880104, -4415764, -1509681, },
- { -41920492, -3178813, -2012729, },
- { 59764468, -2437394, 1982664, },
- { -104399920, 922881, 396211, },
- { -208644144, -919123, 1145146, },
- { -34493956, -6276558, -525060, },
- { -52565568, -5551245, -316217, },
- { -117002960, 1362042, -101469, },
- { 23087060, -638876, -347892, },
- { 86126976, -3460133, -1624035, },
- { -55188184, 6024766, 777926, },
- { -210987040, 2057289, 2257542, },
- { 54660976, -2545305, 1357747, }
- },
- {
- { 351696096, -266288, -39192, },
- { 367900992, 301721, -442382, },
- { 34761856, -4679367, 199179, },
- { 138656576, 8657580, -1464047, },
- { -20651814, 10691784, -737661, },
- { 54502600, -6995965, 925565, },
- { -141045120, -5858873, 3105798, },
- { -183038080, 5861020, -58519, },
- { -2747169, 6265284, -612570, },
- { -25756382, 8061654, 273804, },
- { -122231008, 829466, 453119, },
- { 3658775, -5697811, 901406, },
- { 84907208, -1595044, -946503, },
- { -83002392, -2358474, 1876364, },
- { -183580864, 6935299, 32212, },
- { 66104380, -1711008, 297427, }
- },
- {
- { 352811168, 619549, -377957, },
- { 368510880, -630286, 12885, },
- { 47033648, -1253594, -2666638, },
- { 169054752, -8256001, -413391, },
- { -831613, -6984154, 2095944, },
- { 41806676, 5986648, -1675037, },
- { -178983632, 11828877, 2625836, },
- { -146943712, -10399190, 165356, },
- { 29367376, -6104759, -1154273, },
- { 1778117, -6456410, 1106491, },
- { -122834992, -752693, 854699, },
- { -26137024, 9786620, 279173, },
- { 62861140, 6782827, -481036, },
- { -93098784, 931471, 2050847, },
- { -133093520, -16054051, 366146, },
- { 79614200, -497142, -1923072, }
- },
- {
- { 356286336, 1079111, -706522, },
- { 370377568, -118112, 59056, },
- { 58491548, 7219303, -1080721, },
- { 192554656, 5204964, 554588, },
- { 7168301, -2298344, 2442763, },
- { 26358214, -807991, -1415729, },
- { -213923200, -11788075, -175557, },
- { -105548824, 10618233, 1021665, },
- { 59586228, 7743289, -1002338, },
- { 24626268, 2447058, 846109, },
- { -122507496, 52076, 792421, },
- { -56819732, -8184060, -1071058, },
- { 23933706, -11563663, -741956, },
- { -88090856, 888521, 1012002, },
- { -67978592, 17484812, 1989107, },
- { 99579352, 7204271, -2246268, }
- },
- {
- { 362722880, -2591476, -450435, },
- { 375905728, -1128503, -363998, },
- { 69048576, -3528316, 1149441, },
- { 203336096, 1549946, 347892, },
- { 2265595, 6801618, 430034, },
- { 12047383, 350577, 466541, },
- { -237117088, 1186485, -1096290, },
- { -67009008, -7736847, 1520955, },
- { 82461224, -4238059, -362388, },
- { 41384696, -653372, -377420, },
- { -124182536, -389231, 1152662, },
- { -79066592, 1724966, -1180042, },
- { -22692460, 11189464, -1503239, },
- { -71790912, -5228586, 567473, },
- { -1692217, -11481521, 1993939, },
- { 123079264, -8227547, -708133, }
- },
- {
- { 370373824, 2542084, 98247, },
- { 386556192, 3310883, -375273, },
- { 76104136, -1887638, 447750, },
- { 202242496, -3654480, -919660, },
- { -5905580, -2692945, -868657, },
- { 347355, -2221035, 1225676, },
- { -243896160, 5133023, 1224603, },
- { -37273872, 2496987, 845035, },
- { 92828200, 244813, -382252, },
- { 54846732, 2807835, -863288, },
- { -127560528, -631360, 1960116, },
- { -89395984, 3245922, 675384, },
- { -66122096, -5112622, -521839, },
- { -49948860, 4191888, 396211, },
- { 54602992, 4352413, -951335, },
- { 140605952, 3172907, 141197, }
- },
- {
- { 376587552, -702764, 275415, },
- { 401500000, -3802657, -158377, },
- { 78745008, 1107565, -1109712, },
- { 196230608, 2150168, -1660542, },
- { -5272073, -1649804, -909459, },
- { -8028368, 2726767, 667331, },
- { -238401280, -2830920, 2775623, },
- { -16224239, -919660, -752693, },
- { 89822800, 3003256, -701690, },
- { 68125696, -3136937, -624381, },
- { -128559648, 3267933, 1184337, },
- { -91821032, -606664, 2059974, },
- { -99711960, 4389457, 1236414, },
- { -28915330, -4508642, -1611, },
- { 96751120, -6563247, -3388192, },
- { 143558752, 1979980, -37581, }
- },
- {
- { 379933888, -866510, -223875, },
- { 418189152, 3509525, -179315, },
- { 78002512, 1551557, -689342, },
- { 193020128, 2717641, -788663, },
- { 10403485, 8171712, -40802, },
- { -11798812, -491774, 142808, },
- { -228333888, -441308, 1696512, },
- { 1134408, 3786014, -1302986, },
- { 77307264, -3585761, -798327, },
- { 82289424, 4401805, -170725, },
- { -120315992, 1399623, -513785, },
- { -92718680, -3023120, 1060320, },
- { -122189136, -4933307, 1023276, },
- { -13180181, 3692598, 535797, },
- { 124550296, 8669928, -1908576, },
- { 130201936, -6466610, -628139, }
- },
- {
- { 381073120, 535260, -813359, },
- { 433806208, -2840047, -312996, },
- { 75059384, 233539, 439160, },
- { 196453952, -3342558, 932545, },
- { 38315940, -9525164, 1642825, },
- { -9557376, -1625108, 333397, },
- { -218855968, -242129, 93952, },
- { 18570902, -4182761, -1089848, },
- { 61713312, 3343632, -601295, },
- { 96362960, -3289945, 426812, },
- { -98379448, -8465381, -415001, },
- { -95044944, 1895691, -373662, },
- { -134432480, 727460, 594853, },
- { -4395362, 85362, 781684, },
- { 136693232, -743029, -285615, },
- { 106566728, 7488276, -1481227, }
- },
- {
- { 381620192, 1278290, -573915, },
- { 446254624, 1850594, -471373, },
- { 70897024, -4185983, -520228, },
- { 205557136, -587337, 381715, },
- { 69342248, 4027606, 1483374, },
- { -1697049, 411780, -237834, },
- { -210835120, 3384971, 437550, },
- { 35998804, 6389301, -175557, },
- { 48716740, -2058900, -534723, },
- { 108493024, 300648, -104690, },
- { -65671124, 11233487, 1360968, },
- { -97958544, 1491427, 138513, },
- { -139136000, 694174, 1178432, },
- { 346282, -1947231, -251792, },
- { 133537512, -3973382, -887985, },
- { 82236816, -4588099, -1869921, }
- },
- {
- { 382351936, -1075352, 183073, },
- { 454615840, -816581, -748398, },
- { 66729832, 1833414, -2317672, },
- { 218169312, -1402844, -1505386, },
- { 96211024, -1338419, -772020, },
- { 9361418, -2212982, -1392106, },
- { -202981232, -1261110, 1223529, },
- { 50014896, -2319819, 700617, },
- { 41347652, -806380, 40802, },
- { 118474528, -668404, -1267552, },
- { -30713312, -5957120, 1932198, },
- { -99469296, -617938, 1403381, },
- { -139440944, -980863, 1854889, },
- { 6510634, 270583, -1832340, },
- { 119157424, 5541045, -1895691, },
- { 63735704, -129923, -788127, }
- },
- {
- { 383144384, -444529, 292595, },
- { 459259776, 1583769, -524523, },
- { 62185756, 3074660, -1435593, },
- { 231434320, 4502200, -1624035, },
- { 117318104, 4323959, -1771674, },
- { 19376208, 4671851, -766652, },
- { -192852624, 653909, 485331, },
- { 57789860, -828929, 118112, },
- { 38961260, -403727, 383863, },
- { 127578784, 3790846, -962073, },
- { -832687, 1974611, 172872, },
- { -97513472, -1676111, 812823, },
- { -137204880, -2003065, 1231045, },
- { 17623324, 6783901, -1333587, },
- { 99434400, -2160369, -1452236, },
- { 50520088, -871342, 569620, }
- },
- {
- { 384296480, 776852, -302795, },
- { 460956832, -68719, -89121, },
- { 53318796, 558883, 696322, },
- { 240763520, -4166118, -34360, },
- { 133587440, -4829691, -685584, },
- { 22540526, -171262, 424665, },
- { -177651120, -3570192, -296353, },
- { 61066920, 1590749, -952409, },
- { 39507256, -175557, 85362, },
- { 136151008, -2514167, 131533, },
- { 22209812, -2669859, -1468342, },
- { -89513024, -2073932, -286152, },
- { -132348344, -680752, -26307, },
- { 31038654, -5706401, 867047, },
- { 79264160, 2407866, 130997, },
- { 37860672, 2688113, 896574, }
- },
- {
- { 386752128, 849867, -627065, },
- { 460907424, -860067, -301185, },
- { 36146980, -8155069, 146566, },
- { 241739008, -2721936, 404264, },
- { 145550544, 1211181, -214212, },
- { 15294379, -6343130, -619549, },
- { -156943472, 6531572, 106837, },
- { 64532956, 837519, -1495186, },
- { 41670848, 206695, -30602, },
- { 143601152, -547071, -244276, },
- { 40169756, 4733591, -1357210, },
- { -74599288, 5961415, 316754, },
- { -124122408, 5115306, 801011, },
- { 40080636, -530965, 1106491, },
- { 61127048, -4632122, 347892, },
- { 22113176, -5246840, 465467, }
- },
- {
- { 391063200, -2029909, -237297, },
- { 461126464, 344134, -667331, },
- { 11589969, 8358007, -1996086, },
- { 233550128, 6007586, -1385127, },
- { 153602528, 243739, -1096290, },
- { -543313, 5778342, -2461016, },
- { -133317392, -5993627, 959925, },
- { 72045928, -3372086, -1061931, },
- { 44400300, 733903, -638876, },
- { 149664576, 162135, -1471563, },
- { 55261732, -5041755, 13422, },
- { -55586004, -4656282, 1148367, },
- { -113788176, -3487514, 2371896, },
- { 41438380, 2802466, -167504, },
- { 46727632, 3631932, -506269, },
- { 2968896, 5842230, -533113, }
- },
- {
- { 396734720, 1250372, 73014, },
- { 462726880, -500364, -1276142, },
- { -15785079, -1756105, -1324997, },
- { 219574304, -1741072, -1924145, },
- { 157631744, 1241782, -1465658, },
- { -20402168, -221191, -1504849, },
- { -110699560, 1782411, 261993, },
- { 83441016, 3263102, -599148, },
- { 47146928, 1730335, -814970, },
- { 153455424, 3345243, -1052267, },
- { 68853160, 576599, 130460, },
- { -36815924, 1578401, 375810, },
- { -102973992, -1618129, 1462436, },
- { 36476084, -3029563, -1205275, },
- { 36621576, -526134, -565325, },
- { -16523813, -1292248, -19327, }
- },
- {
- { 402814240, 31139, -442919, },
- { 465080000, -938987, -1842541, },
- { -41941968, -2105071, 3216394, },
- { 203479440, -2962454, 1204202, },
- { 157027232, -5337034, 1045288, },
- { -40497784, -2864743, 2887292, },
- { -91681984, -1256815, -1701344, },
- { 95501816, -3160022, -364535, },
- { 49006112, -3105798, 643171, },
- { 153419984, -6674916, 2768107, },
- { 82031728, 2663954, -2726767, },
- { -21534966, -1419487, -1041530, },
- { -92152280, 4112968, -2525978, },
- { 28469190, -468688, -843424, },
- { 29191282, -1108102, 650151, },
- { -33352032, 449361, 2191507, }
- },
- {
- { 408395008, 100395, -1385127, },
- { 466746432, 2885144, -1062468, },
- { -63879048, -1842541, 7820599, },
- { 187858656, 2120103, 6287832, },
- { 152399936, 4620848, 6424198, },
- { -57353384, -2039036, 6954089, },
- { -77235864, 4152697, -2153926, },
- { 105173008, 2572686, 300648, },
- { 49308908, 1588601, 2649995, },
- { 149810064, 3342022, 8390219, },
- { 95026152, -714038, -6820408, },
- { -11529840, 3498251, -875100, },
- { -82806432, 520228, -6441377, },
- { 19945828, 4118337, 2282238, },
- { 22079354, 539555, 2406256, },
- { -46061912, -2879239, 3273302, }
- },
-};
-
-const Word32 leftHRIRImag_HOA3_fx[BINAURAL_CONVBANDS][HOA3_CHANNELS][BINAURAL_NTAPS_SBA] /* Q29 */=
-{
- {
- { -102715752, 295527040, -88424248, },
- { -96281896, 56815440, 11869679, },
- { -8760123, 37118180, -14165876, },
- { -16805134, 23917600, -6433324, },
- { -6374269, -26807576, 12249784, },
- { 1127429, -13645648, 4787278, },
- { 4656282, 38743288, -16459388, },
- { 5360119, -24749212, 7655779, },
- { -9627169, 107434848, -38639672, },
- { -5340792, -41006200, 19219442, },
- { 268435, 7092602, -3980898, },
- { -2935073, -9185324, 4246112, },
- { -741419, -13098040, 6208912, },
- { 931471, -9216463, 4911295, },
- { -3754875, -8075076, 3953518, },
- { -147103, 2249489, -787590, }
- },
- {
- { -177186736, 179125376, -115792320, },
- { -239960896, -299077888, -104825120, },
- { -9208410, 46498388, -8622147, },
- { -28982440, 16567299, -3951907, },
- { -16998944, -27056684, 16417512, },
- { 7049115, 40280352, 29566554, },
- { 19155554, 43337292, -20049982, },
- { 6044093, -23644868, 7273527, },
- { 2528662, 81792824, -53621592, },
- { -29154238, -116467704, -7671349, },
- { 7763691, 48617956, 14192719, },
- { -10481331, -30494268, -1056025, },
- { -6800544, -35405564, -2618320, },
- { -5965173, -47450800, -11907260, },
- { -10130217, -13799730, 3756486, },
- { 438624, 4456029, 349503, }
- },
- {
- { -51999168, -317713760, 45510012, },
- { -132898096, -545737344, -39643620, },
- { -308164, 25183540, -2346663, },
- { -10490458, 16738024, -7422241, },
- { -20291572, 66797480, -22439594, },
- { -3951370, 103472744, 4090420, },
- { 38857104, -86104968, 33058364, },
- { -1992328, 11780558, -2269353, },
- { 60647084, -194886288, 50082004, },
- { -30465276, -48754860, -39180840, },
- { 3276523, 72164576, 4759898, },
- { -2859375, -54574540, 8997420, },
- { -1475858, -48667348, 3673808, },
- { -47782, -96552472, 8617315, },
- { 973884, -46942380, 19906100, },
- { 2827699, -5764920, 3810710, }
- },
- {
- { 34120832, -220877824, 40671192, },
- { 49936512, -199888848, 41771240, },
- { 3815542, 29523606, -4461934, },
- { 18192408, 43142408, -7209103, },
- { 7750269, 111525808, -8528194, },
- { -7198365, 69175280, -11199127, },
- { 13021804, -200965808, -12485470, },
- { -1145683, 12852153, 373662, },
- { 31666258, -357677888, -27057220, },
- { -7707856, -32124208, -42369316, },
- { -4867272, 29853244, -13622026, },
- { -4420595, -104069208, -21484500, },
- { 5786395, -47440600, 2157147, },
- { 3860102, -75734768, 17977660, },
- { 8563091, -98140536, -7536057, },
- { -2442226, -55461448, -19271518, }
- },
- {
- { 10460393, -181682480, 44848048, },
- { 108469400, -340663936, 99499360, },
- { 4267587, -36406292, 25516938, },
- { 26082262, -82588464, 40497784, },
- { 29406030, -4441533, 31512176, },
- { 13383655, -11658152, 22476638, },
- { -14169097, -91462400, -56171728, },
- { 7954280, -922881, 2018635, },
- { -27049704, -254546064, -60070488, },
- { 27341762, -175464448, 20010252, },
- { -3204046, 10685342, -5061619, },
- { -1270237, -125430760, -10515154, },
- { 7642358, -40255656, -4295504, },
- { -2068027, 463856, -14248554, },
- { 13204877, -75227960, -24315958, },
- { 3937948, -75275744, -8985608, }
- },
- {
- { -109123848, -363628576, 19850266, },
- { -9291625, -471410240, 91331408, },
- { -23200876, -97610112, 6461242, },
- { -36034776, -107364520, 42067596, },
- { -1789928, -2889439, 32729262, },
- { 20062330, -51043540, 1501628, },
- { -3835943, 12977244, -8718247, },
- { 13856101, 18894098, 5616744, },
- { -66184372, -170432352, 3189550, },
- { 38536596, -82056424, 61956512, },
- { -4857071, 3991635, -8170639, },
- { 4960687, -70343512, 20109574, },
- { 5545877, -7403987, 10499048, },
- { 9702868, 27723478, -3980898, },
- { 12382928, 13322989, 15064598, },
- { 12425877, -38941932, 6793028, }
- },
- {
- { -195198208, -105714176, -71322760, },
- { -215174640, 32808718, -78798688, },
- { -47779364, -19037980, -21328808, },
- { -133198744, 112761144, -23626616, },
- { -73338176, 144662544, -7880191, },
- { 21403432, -30356828, -10085120, },
- { 6622303, -32783486, 7916699, },
- { 880468, 11415486, 10504953, },
- { -88258896, -64644088, -35305168, },
- { 2688650, 66810364, 1264331, },
- { -3269007, -19416474, 1700807, },
- { 4816806, -14665166, -4730370, },
- { -14203457, 39763880, -4204236, },
- { 19469086, -13660680, 9423158, },
- { -25116432, 59262496, 6179921, },
- { 8930311, -33924872, 1862942, }
- },
- {
- { -75185016, 178007072, 17114908, },
- { -224526400, 173874768, -14468671, },
- { -35714800, 41899016, 1722819, },
- { -147797872, 57060788, -37157908, },
- { -110517560, 32109712, -40170292, },
- { 13028246, 9739375, 8776229, },
- { 11642583, -30146376, 6591701, },
- { -34980900, -38170448, -902480, },
- { -13600014, 85681376, 7280507, },
- { -15824270, 18907520, -12783433, },
- { -6081674, -16430934, 4125853, },
- { 29388314, 10895795, 162135, },
- { -25477210, 14954002, -10593000, },
- { 11839614, -21398600, 6806987, },
- { -62463320, -21545704, -17193828, },
- { -3930432, -23349052, 8411693, }
- },
- {
- { 124779536, -22646826, 48507360, },
- { -77259480, -69186552, 43811888, },
- { -10337449, -4553202, 13614509, },
- { -42608224, -104795592, 4864051, },
- { -49625664, -88771072, -3922379, },
- { -20056424, 35947804, 5018133, },
- { 1079111, -107911, -3783866, },
- { -63607928, -75699, -8749922, },
- { 70587248, -13620952, 24923158, },
- { -7115687, -30103962, 4275640, },
- { -10963441, 7543573, -4325569, },
- { 55031952, -24158654, 6695854, },
- { -15417322, -20169704, 1402307, },
- { -11427834, 19712826, -4295504, },
- { -59354836, -50075560, -6753836, },
- { -32708324, 12753905, -102005, }
- },
- {
- { 286679936, -42412804, 9840844, },
- { 116902568, -6942278, 25850872, },
- { 13852343, -19517406, 3364570, },
- { 110133696, 32694902, 25050396, },
- { 60822104, 43612172, 22499724, },
- { -56594248, -16292958, -8150238, },
- { -18313740, -4286378, -1090922, },
- { -58529128, 17256104, -2695629, },
- { 99918120, -48497696, 5523865, },
- { 9865540, -2490007, 9789841, },
- { -6185290, 13204877, -2734284, },
- { 57276072, -23256712, 6016713, },
- { 1996623, 1510218, 5279052, },
- { -33033130, 7542500, -4423280, },
- { -24627342, 22221624, 13475460, },
- { -56947508, -13872207, -4949413, }
- },
- {
- { 369951296, 11637214, -19057844, },
- { 275144736, 7006166, -4369593, },
- { 43432856, -7104413, -4556961, },
- { 223252400, 22448720, 7514046, },
- { 149661888, 27103392, 11121818, },
- { -66699232, -26035018, -1901060, },
- { -45021996, 6493454, -987306, },
- { -21727166, -23222888, 5068062, },
- { 68480032, 28010702, -14796162, },
- { 20506858, 13718662, 1280974, },
- { 7138236, -9458592, 3651796, },
- { 26306674, 18474264, -4527970, },
- { 12858595, 8259759, 213138, },
- { -42810624, -7886097, 3251290, },
- { 8556112, 19741280, 7248294, },
- { -62429496, -17578228, -3010772, }
- },
- {
- { 393655232, 18198314, -15280957, },
- { 366834752, 10258529, -13111461, },
- { 89055072, 13213467, -2873870, },
- { 262732272, -14457397, -9764071, },
- { 184219200, -16023449, -8928700, },
- { -46308336, 9028021, 7953743, },
- { -69313792, 40265, 445603, },
- { 25310780, -430034, 4767951, },
- { 12801150, 2143189, -12394202, },
- { 22710176, -4475356, -5142687, },
- { 21137144, -7526394, 1753420, },
- { -20363514, -2947958, -3504693, },
- { 10953777, -259309, -2443300, },
- { -43550432, -8719320, 2104534, },
- { 27887760, -11151346, -7304129, },
- { -48897128, 11552388, 5156108, }
- },
- {
- { 393587584, -16003585, -1691143, },
- { 407478592, -13923747, -8107825, },
- { 150810256, -17078400, -2028298, },
- { 246486560, 4512400, -10222022, },
- { 178807536, -2159295, -9586367, },
- { -6522445, 5173288, 2015413, },
- { -84209816, 1737314, 2623688, },
- { 61722976, 1511292, -2246268, },
- { -34659848, -12631499, 715649, },
- { 21009906, -8139500, -2964601, },
- { 33974264, -1009854, -2833605, },
- { -64991980, 3661997, 1915555, },
- { -3665755, 1257889, -104153, },
- { -37127844, -5294084, -829466, },
- { 37775312, -15984795, -6041409, },
- { -32945620, 7146826, 3170223, }
- },
- {
- { 389030080, -645856, 3390877, },
- { 422571104, 10395968, -1673427, },
- { 215616480, 13672492, -2324651, },
- { 210861424, 412854, -4902705, },
- { 159334160, 3248606, -3352222, },
- { 43313136, 6364605, -6125160, },
- { -83583288, -2106145, 1627793, },
- { 81618872, 6060736, -3098819, },
- { -65605088, -4659503, 7262790, },
- { 17300128, 3033321, 1637993, },
- { 46225124, 6788733, -1626182, },
- { -92247304, -4304631, 3346317, },
- { -26742076, -5826660, 1142461, },
- { -24902758, 7871065, 2764348, },
- { 40583684, 10146860, 3660923, },
- { -22914724, -646393, -1450088, }
- },
- {
- { 381346400, 8778376, 318901, },
- { 423162720, 911607, 1009317, },
- { 256772480, -5362267, -3470871, },
- { 181759264, -3532611, 468688, },
- { 143814832, -2244657, 301185, },
- { 86775520, -16913582, -5376762, },
- { -60142428, -4284767, -837519, },
- { 86478096, -3433290, 421444, },
- { -85866056, 12759811, 3310883, },
- { 9114457, 6254010, 1319629, },
- { 54241680, -2934537, 525597, },
- { -90273232, -1603633, 2403571, },
- { -48776332, 4350265, 1156957, },
- { -10286447, 5401458, 1887638, },
- { 36567888, 9317932, 4653060, },
- { -18476412, -3271691, -350577, }
- },
- {
- { 368989216, -5534602, -2714419, },
- { 410308960, -8353175, -446677, },
- { 249583776, -1581622, -1770063, },
- { 160193696, -6912750, 1336272, },
- { 132391296, -3189013, 680215, },
- { 98816464, 7694434, 409633, },
- { -12958453, 11945378, -2587181, },
- { 82759184, -5604933, 719407, },
- { -97562864, -6251325, -1469953, },
- { -4041564, -5899138, -1145146, },
- { 55416352, -1132261, 874026, },
- { -55714316, 4063039, -931471, },
- { -58292368, 212064, 1797981, },
- { 9628780, -887448, -3663070, },
- { 33955476, -9705552, -1395328, },
- { -17141752, -2013803, 310848, }
- },
- {
- { 354289152, 1707786, -2571075, },
- { 388501792, 8374113, -2523830, },
- { 184855392, 18489298, 1823214, },
- { 135551856, 5879274, -466541, },
- { 114764744, 6063420, -659814, },
- { 60275572, 12415677, 4552129, },
- { 46445776, -17685602, -2125472, },
- { 81105088, 2907693, -1739999, },
- { -98579160, -4654134, -1602560, },
- { -20057498, 1689533, -1277216, },
- { 51474648, 2972117, 359704, },
- { 5354214, -17738752, -3388729, },
- { -46520940, -505196, 658741, },
- { 37961068, -15249281, -3142842, },
- { 44451836, -3827890, -4762045, },
- { -13396540, -1116692, -637803, }
- },
- {
- { 340785792, -648540, -1286880, },
- { 367042528, -4130148, -3242164, },
- { 77211704, -35029752, 872952, },
- { 100708928, -5694590, 889595, },
- { 83269752, -6628745, -448824, },
- { -25592100, -34553012, 2397129, },
- { 94690608, 10888816, -446677, },
- { 89442160, 3150359, -2889976, },
- { -88895624, 9186398, 1739999, },
- { -36222680, 879931, 1087701, },
- { 48532592, -2396592, -495532, },
- { 74482784, 21537114, -996969, },
- { -9998684, 8573292, -2022393, },
- { 66636956, 12024298, 1883880, },
- { 71037688, 16143708, -2165201, },
- { -2926483, 5681705, 247497, }
- },
- {
- { 329444928, 1310502, -534723, },
- { 353794720, -2165201, -1990717, },
- { -35852776, 28246390, -2888366, },
- { 55373404, 13240310, 1661079, },
- { 37164352, 11212549, 545461, },
- { -127722128, 30776126, -3580392, },
- { 106435192, 4369593, -664646, },
- { 105386152, -7526394, -2194192, },
- { -73596952, -3322694, 3643743, },
- { -49728204, 2808372, 2727841, },
- { 53045532, 820339, -2132988, },
- { 122394760, -6372121, 637803, },
- { 44829796, -17051558, -1961190, },
- { 82841328, 1896228, 2768643, },
- { 103471664, -14290430, 3080565, },
- { 13754096, -4429722, 1447941, }
- },
- {
- { 318065408, -2289755, -362388, },
- { 349757984, 4101157, 578210, },
- { -113754360, -4496294, -1942399, },
- { 8507793, -14286135, -691490, },
- { -16632261, -13100724, 366146, },
- { -202864720, -2484639, -2860448, },
- { 68579888, -16773458, -2518998, },
- { 115998480, 4524748, -450972, },
- { -57802208, -2226941, 1721745, },
- { -55953760, -4285304, 1493038, },
- { 64990908, 3839164, -3566434, },
- { 125006096, -11333882, -2152852, },
- { 97701920, 11058467, -1133871, },
- { 83138216, -8892193, -703838, },
- { 125751272, -3743064, 3295314, },
- { 33724084, -200790, -140123, }
- },
- {
- { 303769600, 3554622, -392453, },
- { 350124128, 987306, 1495722, },
- { -137944144, -8970576, 2792266, },
- { -26552024, 2578054, -1378685, },
- { -65428460, 7725573, 780073, },
- { -224844752, -13725105, 4529043, },
- { -12483322, 17953500, -1854889, },
- { 103481872, 7759932, -520228, },
- { -43051680, 3295314, -2524367, },
- { -48843440, -154619, -881542, },
- { 73293616, -6476274, -2489471, },
- { 76880992, 14780593, -3942780, },
- { 123941480, -2439542, -1432372, },
- { 75282184, 4989142, -3872987, },
- { 130074160, 13528610, -3344169, },
- { 54148264, -2907693, -2643552, }
- },
- {
- { 285796256, -3981972, -291521, },
- { 350552544, -5566278, -934155, },
- { -118486872, 7196218, 3931506, },
- { -41846404, 7055021, 2590939, },
- { -97731440, -5333276, 1343788, },
- { -194669936, 10606959, 7839926, },
- { -113775832, -16637630, 2842195, },
- { 56706992, -15079093, -1974611, },
- { -29278256, 8361765, -3295851, },
- { -26415122, 8336532, -1655173, },
- { 59804736, 1544578, 1472637, },
- { -8213588, -12548284, 590021, },
- { 108378128, -5355288, -51540, },
- { 70177080, 6913287, -2084133, },
- { 118951264, -5292474, -8668318, },
- { 71132176, 9405978, -1124745, }
- },
- {
- { 266198848, 4580583, -198105, },
- { 350230976, 1767379, -3656628, },
- { -80328776, -6408091, 1429150, },
- { -38255272, -1089848, 5014911, },
- { -107569064, 468151, 574989, },
- { -127891240, -5308043, 2437931, },
- { -204628880, 22431004, 4451197, },
- { -21296058, 14463839, 33823, },
- { -19694036, -12688944, 2639258, },
- { 4931696, -13265006, 676457, },
- { 12508555, 14493367, 4561256, },
- { -104526616, 20976620, 5231270, },
- { 52614960, 17870822, 1361505, },
- { 70737040, -3554622, 1427003, },
- { 93311384, -9984188, -3721589, },
- { 78050296, -3340948, 2378338, }
- },
- {
- { 248731760, -3841312, -413391, },
- { 347933152, 4990215, -2474975, },
- { -48056924, 5582384, 192737, },
- { -17847736, -1597191, 1737314, },
- { -95645160, 7235410, 721018, },
- { -41769632, 15646566, -4005057, },
- { -254933696, -15661061, -967978, },
- { -116530512, -22162568, 2592013, },
- { -19997904, -4423280, 6172405, },
- { 32169842, 5239323, 2809446, },
- { -61610232, -30427696, 1196685, },
- { -179832432, -24736864, 1607928, },
- { -22802518, -23575612, -494995, },
- { 71613208, -3980898, 626528, },
- { 43881144, -3936338, 5649493, },
- { 71671728, -8278550, 1923609, }
- },
- {
- { 236869056, 1332514, -442382, },
- { 337984384, -1898912, 1230508, },
- { -36775656, -474057, 851477, },
- { 20679730, -7783555, -1839320, },
- { -70426728, -8507793, 2003602, },
- { 44932336, -25403120, -3211025, },
- { -247928592, -11966853, -4479651, },
- { -206551424, 20236276, 1881733, },
- { -25847114, 15595563, 737661, },
- { 45509472, 4691715, 1045288, },
- { -135022496, 19324132, -4323422, },
- { -203965856, 22549, -3609920, },
- { -85994912, 11100880, -2160906, },
- { 66792648, 5742908, -2680060, },
- { -36132488, 30173756, 5865852, },
- { 59363428, 8577050, -1539209, }
- },
- {
- { 231336064, 232465, -187905, },
- { 314608512, -9227200, 2216740, },
- { -47083580, -6296422, 1185411, },
- { 75150656, 17259326, -1380832, },
- { -43449500, 4299263, 2225330, },
- { 109668768, 16653736, 1604170, },
- { -196255840, 30693446, 824097, },
- { -266336288, -7691213, 1482838, },
- { -19513648, -40802, -5159330, },
- { 46906948, -3625489, -1585380, },
- { -178553600, 5398237, -2368675, },
- { -168658528, 26050588, -896038, },
- { -113106352, 3360275, -834297, },
- { 52196200, 1465658, -2229625, },
- { -130574520, -31559420, -607201, },
- { 54207856, 810138, -3128347, }
- },
- {
- { 229698608, -639413, 103079, },
- { 280268096, 14671608, -709743, },
- { -66435628, 8568460, -228170, },
- { 134516768, -15690052, 752156, },
- { -22232362, 897111, 233539, },
- { 135112160, 6288369, 1469416, },
- { -139269680, -16405701, 7248294, },
- { -280978368, -4770635, 2736431, },
- { 12651363, -20282446, -2835215, },
- { 45940044, -1393180, -1640141, },
- { -184659968, -12319577, 4322885, },
- { -97737352, -26691612, 5443334, },
- { -101278552, -13482439, 2464238, },
- { 23606750, 4308389, 1158567, },
- { -205791216, 10285910, -2576981, },
- { 63715304, -10809896, -556198, }
- },
- {
- { 228049344, -766115, 147103, },
- { 246180544, -7079180, -2858301, },
- { -76775224, -832687, -1352915, },
- { 183658704, 7169911, 1001801, },
- { -6696391, 2782602, -1196148, },
- { 122947200, -12901545, -2642479, },
- { -114430280, -11481521, 4749160, },
- { -251979824, 10114111, 2804614, },
- { 64481956, 19887846, 2881386, },
- { 50970524, 4954782, 78383, },
- { -167591776, 1422708, 5360656, },
- { -30406220, 4449586, 4957466, },
- { -66963908, 7187628, 3494493, },
- { -20111722, -12416214, 1946157, },
- { -235634256, 7168301, 1110786, },
- { 83446384, 6468221, 2186138, }
- },
- {
- { 223257776, 2434173, -358630, },
- { 222571648, -1423782, -1270774, },
- { -66901096, -5757941, -1224603, },
- { 213205392, -363462, -601295, },
- { 7517804, -5701032, 143345, },
- { 91403880, 10115722, -4810364, },
- { -129454608, 18477486, -2522220, },
- { -192888048, -18012020, 2818572, },
- { 116327040, -5597953, 3251827, },
- { 64936684, -4624069, 1325534, },
- { -144151984, -967441, 1925756, },
- { 7003481, 5485210, -1249299, },
- { -32142998, -2110440, 637803, },
- { -70955008, 14260902, 665720, },
- { -216462592, -14950781, 4974646, },
- { 102517112, 1085016, 637266, }
- },
- {
- { 214601264, -2141578, -664646, },
- { 210639152, 2856690, 1705639, },
- { -39098696, 12422119, 195421, },
- { 224401296, -1705102, -2122251, },
- { 23874650, 3256122, 1199370, },
- { 59892244, -667331, -3594888, },
- { -164760848, -9598715, -5667210, },
- { -122378112, 14896557, 3575560, },
- { 153078544, -1903207, -1206886, },
- { 86211264, 2884071, 637803, },
- { -122694328, 2251637, 253940, },
- { 11296301, -5420249, -4977867, },
- { -11534135, 192200, -1800665, },
- { -114549464, -8192650, -90194, },
- { -162886096, 13973139, 6212134, },
- { 113876224, -239981, -1750736, }
- },
- {
- { 203155712, 2066953, -350577, },
- { 204104896, 4072703, 1747515, },
- { -6510634, -9341554, 2334315, },
- { 225802000, 472983, -2469606, },
- { 44047572, -288837, -622770, },
- { 37247568, -4226785, 686658, },
- { -195934800, -5150203, -1933272, },
- { -55822764, -6788196, 1361505, },
- { 173047984, -2663954, -3274913, },
- { 111873696, -4126927, -835371, },
- { -104021424, -2258079, -476205, },
- { -6830072, -1428077, -2796024, },
- { -11289322, 1420024, -2125472, },
- { -137739072, 110595, 669478, },
- { -94089312, -7212324, 3067144, },
- { 116191752, -2365453, -1021665, }
- },
- {
- { 190689024, -2371359, 25233, },
- { 197546480, -3785477, -316217, },
- { 16255377, -399969, 1974074, },
- { 225470752, 848256, -2200097, },
- { 67733784, 5657546, -2481417, },
- { 19403588, -2711198, 3480534, },
- { -212375392, 4522601, 3687230, },
- { 2371896, 7086696, -2202245, },
- { 181697520, 2357400, -2130841, },
- { 138478336, 6050535, -1375463, },
- { -84387520, 5470715, -548682, },
- { -35806068, -4025995, 1049583, },
- { -31158914, -4240207, -985695, },
- { -135325296, 6150930, 2264522, },
- { -20935818, 10323491, -1573032, },
- { 111204760, -1440425, 493921, }
- },
- {
- { 179225232, 2760053, -17717, },
- { 190236448, 1275605, -811749, },
- { 24045912, 6411850, -1258962, },
- { 225514768, -2793339, -1294396, },
- { 90458992, -10246718, -591095, },
- { -167504, 10723460, 1471026, },
- { -217126704, 2069101, 4703526, },
- { 54550916, -13069585, -2480881, },
- { 184158000, -1075352, -1227824, },
- { 161489696, -6567005, -497142, },
- { -61848064, -6723235, 358093, },
- { -67046588, 7152195, 1881733, },
- { -66924716, 8096014, 238371, },
- { -111702976, -5281736, 2227478, },
- { 53031036, -16231755, -3055332, },
- { 102903120, 5515812, -529355, }
- },
- {
- { 170537584, -1824824, -342524, },
- { 183614688, -394063, -205622, },
- { 22137336, -1753420, -3557307, },
- { 221629984, 302795, -28454, },
- { 103760504, 3090229, 2041720, },
- { -20645370, -6936909, -1555852, },
- { -213660128, -3447248, 2346663, },
- { 100076496, 9751723, -1311576, },
- { 182113600, -1058710, -1208496, },
- { 176058768, 1651952, 193810, },
- { -38847980, 4515621, 702227, },
- { -92197376, -7477001, 769873, },
- { -110912696, -10102300, 789737, },
- { -75545256, 8342974, 1235877, },
- { 122212760, 16909824, -2013266, },
- { 96241088, -2203855, -2356327, }
- },
- {
- { 165191424, 577673, -507343, },
- { 179486688, 921807, -26307, },
- { 18013092, -6145562, -1138703, },
- { 208220544, 3984119, 584116, },
- { 103398656, 5571110, 1526324, },
- { -36229660, -1289564, -903017, },
- { -200551888, 775242, -777926, },
- { 134781984, -8606041, -266288, },
- { 173686336, 821413, -890132, },
- { 180358560, 1727651, -304406, },
- { -18604724, -3582003, 486405, },
- { -104140072, 1828582, -615254, },
- { -152703264, 9380209, 613107, },
- { -36066452, -5236639, -74088, },
- { 176816832, -12213276, -252866, },
- { 92410520, -2876554, -1875290, }
- },
- {
- { 161907920, 635655, -172872, },
- { 178636272, -357556, -479963, },
- { 12662100, -326954, 1681480, },
- { 184686816, -8484171, 18254, },
- { 95561952, -7052873, -1110786, },
- { -44053480, 1843078, 1413581, },
- { -174144816, 10176388, -1409823, },
- { 154284352, 120796, -38118, },
- { 156079104, -4118874, -20401, },
- { 177165248, -3488587, -1398549, },
- { -1976759, 2449742, 335007, },
- { -99716792, 5302137, -265214, },
- { -181908512, -4544613, 263067, },
- { -349503, 7743826, -988916, },
- { 206934208, -265214, -577136, },
- { 85982024, 1734093, 284542, }
- },
- {
- { 158032784, 541166, 315143, },
- { 180236160, -1362042, -498753, },
- { 3595425, 5788006, 567473, },
- { 157179168, 7753490, -1189706, },
- { 92995704, -1237488, -2185602, },
- { -45439144, 1014686, 1642288, },
- { -136143488, -13908178, 1192390, },
- { 158649648, 1945620, -955630, },
- { 128903776, 7742753, -26844, },
- { 171800832, -121333, -1593433, },
- { 13741211, -3517578, 564788, },
- { -83028696, -7720741, 1414655, },
- { -192142336, -2512556, 985695, },
- { 26982596, -4926865, -543850, },
- { 209874112, 5954436, -2946348, },
- { 68932080, 5796595, 1089848, }
- },
- {
- { 151386864, -2404645, 253940, },
- { 181588528, 503585, -170188, },
- { -8827768, -4410932, -1240172, },
- { 134659040, -2888903, -1367410, },
- { 104213624, 6438693, -1145146, },
- { -42312944, -794569, 366683, },
- { -95989296, 7403987, 2324114, },
- { 153781312, -4433480, -2048163, },
- { 96725344, -7683697, -385473, },
- { 167803840, 656056, -716723, },
- { 32862406, 1418413, -206695, },
- { -63042604, 3702799, 2165201, },
- { -183988880, 5443334, 2400350, },
- { 42643656, 1428077, -680752, },
- { 191339712, -6039798, -4101694, },
- { 38693360, -9665287, 308701, }
- },
- {
- { 142047456, 3342022, -296890, },
- { 179505472, 1129576, -209380, },
- { -22232362, 354335, -740345, },
- { 122268056, -1197759, -267899, },
- { 127089696, -8201777, -76773, },
- { -35804996, -1121523, -504659, },
- { -62621160, -1944010, 459562, },
- { 147204096, -1213328, -2026688, },
- { 66827544, 5657546, -360777, },
- { 164881648, -201327, -209917, },
- { 58692340, -5550709, -1727651, },
- { -47042776, 1225139, 587874, },
- { -163863744, -2279554, 1731946, },
- { 47356848, -1014686, -275952, },
- { 159833984, 1132261, -1580011, },
- { 1237488, 9800042, -374736, }
- },
- {
- { 131995080, -2185602, -686121, },
- { 172193296, -2389613, -385473, },
- { -34882112, -1754494, 548682, },
- { 118775712, 1829656, 1057099, },
- { 151923200, 6539625, 869194, },
- { -26918170, 2971044, -383326, },
- { -38384660, 2454037, -1380295, },
- { 142515600, 503048, -854162, },
- { 45397804, -2553895, 5906, },
- { 161184224, -705985, 71941, },
- { 90267864, 9992241, -1291711, },
- { -35852776, 878858, -1010391, },
- { -138178768, 5908265, 526134, },
- { 44611288, -2708514, -45634, },
- { 120780920, -8893267, 904628, },
- { -33002528, -6796786, -682900, }
- },
- {
- { 123259656, 386547, -297427, },
- { 159658960, 3253975, -445603, },
- { -46336256, 4461934, -53687, },
- { 118589952, 2868501, 408022, },
- { 167935376, 1099512, 287226, },
- { -18038862, -1049046, -440771, },
- { -20253992, -5125507, -966368, },
- { 137852352, -726923, -92342, },
- { 34689912, 804770, 202937, },
- { 155091264, 3265249, -384400, },
- { 120252640, -8320963, 351114, },
- { -26051124, -3993783, -417149, },
- { -111731424, -5927055, 835908, },
- { 39908300, 2525441, -925029, },
- { 78502336, 11174968, 89121, },
- { -55575268, 1717987, -388695, }
- },
- {
- { 116317912, -416075, 415538, },
- { 143268832, -3914863, -501437, },
- { -56534656, -2570538, -1308354, },
- { 116717344, -2132988, -1386738, },
- { 170748576, -4256850, -1899986, },
- { -12721693, 376883, -1067836, },
- { -4331475, 3602941, 61203, },
- { 130119792, -2341294, 446677, },
- { 32933272, 1725503, 509491, },
- { 146960896, -2652679, -1264868, },
- { 139780240, 676994, 488016, },
- { -14691473, 3594888, 795643, },
- { -87946968, 4322885, 1036698, },
- { 38193532, -301721, -1729261, },
- { 39508868, -8189966, -799401, },
- { -65048352, 2486249, 899259, }
- },
- {
- { 110479440, 2017024, 375810, },
- { 125087704, 3195993, -301185, },
- { -66401268, -1813013, -260382, },
- { 110462800, -526670, -1109712, },
- { 163715024, 1055488, -2429341, },
- { -14014478, -1299228, -401579, },
- { 11800960, -1622424, -513785, },
- { 118221120, 5338645, -335007, },
- { 35818416, -648540, 755914, },
- { 138514304, -256087, -814970, },
- { 145208544, 4230006, -1448478, },
- { -764504, -854162, 260382, },
- { -67583992, -1777043, 284005, },
- { 40011380, -4359929, -912144, },
- { 9163850, 2971581, -146029, },
- { -67017060, -1034013, 2039036, }
- },
- {
- { 105450576, -1956358, -323733, },
- { 106948440, -3267396, 158377, },
- { -78411072, -905701, 2007897, },
- { 97738424, -1114544, 679679, },
- { 151885616, 370441, -593242, },
- { -23703924, -2260227, 975494, },
- { 29065118, 3977677, -1253594, },
- { 105585328, -3322694, -1251446, },
- { 39151312, -676457, 128312, },
- { 130260456, -290447, 506269, },
- { 140068016, -2144263, -2621541, },
- { 15606837, 2944737, -1053341, },
- { -49851148, 2172180, -1049046, },
- { 40941240, 2907156, 1347546, },
- { -10340671, -733366, 1454383, },
- { -68507952, -2381023, 1583232, }
- },
- {
- { 101561480, 300648, -568546, },
- { 89951112, 4433480, -75699, },
- { -93799400, 7416872, 1560684, },
- { 78182904, 6487011, 1120450, },
- { 137742816, 3635690, 416612, },
- { -40410812, 7388955, 376347, },
- { 45799920, -4907000, -733366, },
- { 96689912, 514859, -1169305, },
- { 41371808, -478352, -199716, },
- { 121325312, 3826816, 365072, },
- { 130160056, 69256, -1712618, },
- { 32813550, -5970005, -579284, },
- { -33693480, -6060199, -606127, },
- { 35114580, 5337571, 1307818, },
- { -20415590, 2937758, 1492501, },
- { -71973992, 2348810, 609885, }
- },
- {
- { 98599568, 495532, -88047, },
- { 75073344, -2914672, -547608, },
- { -108793136, -4763656, -343061, },
- { 55084568, -7936026, -375810, },
- { 122353952, -4451197, -281320, },
- { -58283780, -4212826, -855235, },
- { 58262840, 2534031, -28991, },
- { 92815320, 1783485, -290984, },
- { 42135240, -676457, -319975, },
- { 111458696, -2683818, -582505, },
- { 119100520, -385473, -188442, },
- { 46731928, 2570001, 293668, },
- { -20077898, 2864743, 571231, },
- { 22313966, -5775121, -535797, },
- { -23293218, -1050120, 282931, },
- { -75310104, -1711545, -76236, }
- },
- {
- { 95407864, 774168, 247497, },
- { 62201328, 2433099, -663036, },
- { -117396488, -2913599, 489089, },
- { 34339336, 1861868, -654446, },
- { 106500160, 2358474, -437013, },
- { -70891656, -2207613, 473520, },
- { 63357212, 2029372, -622770, },
- { 91015728, -407485, 495532, },
- { 41493680, -763430, -267899, },
- { 100730408, -11811, -16106, },
- { 107888504, 3798362, 7516, },
- { 53526568, 1596654, -488553, },
- { -10588168, 2075543, -592706, },
- { 7605314, 3099893, -1168768, },
- { -21086678, -2073396, 204548, },
- { -74581032, -2846490, 326418, }
- },
- {
- { 90771448, -2081449, -117575, },
- { 49592376, -1717987, -501437, },
- { -116706608, 5574331, 3620121, },
- { 20064476, 2241973, 1702955, },
- { 90603944, -127775, 1071594, },
- { -75449152, 3895535, 3524021, },
- { 60686276, -2705830, -1933809, },
- { 86734184, -1172526, 712428, },
- { 39661340, 1410897, 824634, },
- { 88941792, 665183, 2068564, },
- { 96333432, -5178657, -1554778, },
- { 52489868, -1941325, -1625108, },
- { -5063230, -2674154, -3305514, },
- { -4338454, 185220, -432718, },
- { -16717623, 2758443, 1214402, },
- { -67415952, 3813394, 1714766, }
- },
- {
- { 84129280, 1676648, -499290, },
- { 35509180, 853088, 664646, },
- { -106909256, -1200443, 4897874, },
- { 13125957, 48855, 3714610, },
- { 76045616, 1665911, 3042984, },
- { -71664752, 399432, 4633196, },
- { 52086680, -175557, -1498944, },
- { 77734080, 1599875, 1329292, },
- { 36881956, 878858, 1655710, },
- { 77481744, 3317325, 3355980, },
- { 83693880, 1409286, -2289218, },
- { 45268420, 208306, -1228361, },
- { -3515968, -1600412, -4469987, },
- { -11599633, -2076080, 1337346, },
- { -12450573, -971736, 2001992, },
- { -54461260, -667867, 1289564, }
- },
- {
- { 75215616, -398358, 100395, },
- { 19555522, -3034395, 2166811, },
- { -88683560, -1553704, 2289755, },
- { 13752485, -4630512, 2234457, },
- { 65350612, -8352638, 1596654, },
- { -59645284, -3656628, 1658931, },
- { 39149164, -894964, 359167, },
- { 64903936, -2723546, 2352568, },
- { 34983044, -2870112, 938987, },
- { 69646112, -9290014, 470836, },
- { 67845448, 2728378, 355945, },
- { 34161096, -1496796, 13422, },
- { -7281044, 4550518, -2243047, },
- { -14781130, -1541356, 2099165, },
- { -7865696, 2147, 2094333, },
- { -36711768, 1573569, -861678, }
- },
-};
-
-const Word32 rightHRIRReal_HOA3_fx[BINAURAL_CONVBANDS][HOA3_CHANNELS][BINAURAL_NTAPS_SBA] /* Q29 */=
-{
- {
- { 189679184, 304322592, 107436456, },
- { -242399360, 302261536, -44863616, },
- { 11860552, 60100016, -1683090, },
- { 25304336, 104153, -207232, },
- { -21139292, 19353660, 8217883, },
- { -7248831, 2365453, -9037148, },
- { -26986890, 31329638, 9359807, },
- { -7344931, 43398496, -10575820, },
- { -19937238, 13084081, 28024662, },
- { -26909044, 42307040, 10624675, },
- { 2450816, -4110284, 718333, },
- { -5272609, 27694486, 1728188, },
- { -2057826, -12568685, -1696512, },
- { 4153234, -22881976, 5524939, },
- { 7628936, -1821066, -681826, },
- { -3011309, 570694, 995359, }
- },
- {
- { 5991480, -273394528, -70961448, },
- { -76770392, 439989344, -50001472, },
- { 1802813, 41517840, -4589173, },
- { 2413235, 12974559, 13751412, },
- { -11226508, -30864708, -13184476, },
- { -11241003, -13223667, -12262132, },
- { -26838176, -61006788, -28770912, },
- { 5379447, 112868520, 14491220, },
- { -50776712, -218518816, -55487220, },
- { -20914344, -47507172, -31159450, },
- { -1543504, -8399345, 417686, },
- { -11120744, -56255480, -37819336, },
- { -4721243, 1569811, 5162014, },
- { 2341294, -30473866, 3795677, },
- { 5437429, 39253852, 18807662, },
- { -3028489, -3227668, -131533, }
- },
- {
- { -103299336, -110683456, -102613208, },
- { 149763360, -126817496, 135879344, },
- { -1404454, 36626408, 381178, },
- { -23609436, 57801132, 3221226, },
- { 12256763, -65424164, -4438312, },
- { -4104915, -56324736, 8615704, },
- { 4727149, -149730608, 3177739, },
- { 8160438, 96794064, 20379620, },
- { -20394116, -285178304, -28841780, },
- { 28674812, -217949728, 35490388, },
- { -2268280, -26517128, 10790032, },
- { 17635672, -217100928, 30644592, },
- { -10921565, 13795972, 1620276, },
- { 214212, -26433914, 2987150, },
- { -10144176, 91749632, -2559801, },
- { -7639136, 26703960, -14314589, }
- },
- {
- { -33778308, 274702336, 33510408, },
- { 88140248, -585712192, -58195196, },
- { 4900021, 34997540, -1655173, },
- { -9982041, 43882756, -413927, },
- { 11105712, -50252728, -6448357, },
- { -443455, -63618128, 804233, },
- { 13956496, -165173168, -12775917, },
- { -4399121, 29312078, -5219459, },
- { 21663278, -239384304, -30239790, },
- { 16560857, -380443360, -43821016, },
- { -1107565, -18220326, 13462038, },
- { 14711874, -246313696, 17947058, },
- { -11474542, -3762928, -5577015, },
- { -1122060, -16861504, 4379793, },
- { -15287399, 38154880, -25150792, },
- { -4081293, 62483720, 1358820, }
- },
- {
- { 61600032, 37331856, 91757144, },
- { -56944824, -351084576, -99906848, },
- { 17413408, 12843026, 1846836, },
- { 26146150, 75161392, -28630788, },
- { -4660040, -135259792, 38225208, },
- { 2360622, -64597920, -166430, },
- { 13772886, -174139984, -3468723, },
- { -2582349, 33209760, -4078608, },
- { 52569864, -344211040, 8208220, },
- { -6097243, -299348480, -76846632, },
- { -2537252, 8970576, -233002, },
- { -7102266, -89445912, -49996640, },
- { -3978750, 6330782, -11567958, },
- { -2896956, -18562312, 6148783, },
- { 5714454, 6291590, -11762305, },
- { 2909304, 16636556, 23424214, }
- },
- {
- { 35767952, -48289928, 51695836, },
- { -122719024, -248484800, -12538620, },
- { 16426639, 29774324, 5659157, },
- { 56310780, 181175136, -1972464, },
- { -39025684, -217555120, 20864952, },
- { -2611340, -43738872, 11940546, },
- { 13994614, -115656488, 29881698, },
- { 8351564, 18503256, -14416595, },
- { 43786656, -177021376, 90108952, },
- { -2380486, -120777704, 14774687, },
- { -458488, 9656160, -627602, },
- { 9182103, -11922292, -14430553, },
- { 9099425, 37925100, -2336999, },
- { -3535295, -46244988, -2520609, },
- { 31896574, 57557392, 2627983, },
- { 3047279, -31762356, 1707250, }
- },
- {
- { -133453760, 248134224, -24065238, },
- { -49510236, -309569984, -16902306, },
- { -9960029, 63480152, -102005, },
- { 12905303, 103205376, 40805412, },
- { -39440148, -59966872, -45799920, },
- { -24383604, -28147068, 7584912, },
- { 2330557, -47321948, -1519345, },
- { 31236760, -36228588, 1898912, },
- { -60579440, 97428112, -7415261, },
- { -27457726, -30667678, -19580220, },
- { 1240172, 5094368, 1571958, },
- { 19764902, -37777996, -7081328, },
- { 13549548, 1037772, 12015708, },
- { 6334540, -37628744, -9266929, },
- { 42618424, -2711198, 22687628, },
- { 14770929, -17062294, -7906498, }
- },
- {
- { -316071488, 37549824, -63453848, },
- { 180852480, 46988552, 71499392, },
- { -49294412, 119185, -16876538, },
- { -128887672, -112254336, -14310831, },
- { 57196080, 112747184, 3730716, },
- { -46474768, -41647224, 7485055, },
- { 19670950, -6565932, 11464878, },
- { 32199906, -13280576, 9488120, },
- { -115142168, 14012331, -24771224, },
- { -8647380, 44480828, 6425271, },
- { 1937030, -11526618, -4697084, },
- { 24869472, 5836324, 8390219, },
- { -4409858, -42788076, -1603633, },
- { 28117540, 15736760, 7562364, },
- { 10062035, -60990148, 5612986, },
- { 31954556, 17682380, 2305324, }
- },
- {
- { -361012928, -107035952, 1838246, },
- { 339260544, 74138648, 23380192, },
- { -70194800, -31168040, -679679, },
- { -243166560, -1868311, -30283814, },
- { 153038816, -16125455, 30584462, },
- { -59203440, 6156299, -9015673, },
- { 35418448, 3013993, 2372970, },
- { -1691680, 25706990, 1106491, },
- { -87555056, -70230768, 971736, },
- { 10498511, 13577465, 12486544, },
- { 10082973, -18462454, -3297461, },
- { 1347009, 24953224, 4918812, },
- { -22036940, -12890807, -9094593, },
- { 35231080, 14661945, 5639829, },
- { -39492224, 21459268, -15654619, },
- { 33756296, 3649112, 6452652, }
- },
- {
- { -291765184, 31956168, 34410204, },
- { 375867072, -43094628, -22290880, },
- { -83209624, -4979478, 9856950, },
- { -254651840, 67848136, -1629403, },
- { 175750064, -61229052, 7963406, },
- { -38247220, 31672162, -2454574, },
- { 47128676, 67109, -594316, },
- { -50551764, -20916490, -6397891, },
- { -10248329, 29680372, 20811800, },
- { 12695386, -21452288, -1926293, },
- { 23096724, 7217156, 4312147, },
- { -41781980, -24153822, -5424007, },
- { -21937082, 11606612, 1177358, },
- { 24022288, -16567299, -4268661, },
- { -66468376, 30025580, -6706592, },
- { 13777718, -18653580, 1938641, }
- },
- {
- { -180420832, 15508053, 16914118, },
- { 315297312, 4876399, -22964654, },
- { -97981624, 13826037, 4172561, },
- { -176048032, -34457984, 18804440, },
- { 125448480, 36109936, -16757889, },
- { 3931506, -16374563, 7987029, },
- { 46259484, 3149285, -1439888, },
- { -84816480, -9487046, -4279935, },
- { 55625196, 20936354, 10554882, },
- { 4123706, 2500208, -8121783, },
- { 29963840, 9622337, 1771674, },
- { -77292232, -7432978, -4481262, },
- { -9511205, -2664490, 3375308, },
- { 4716948, -6528351, -3870839, },
- { -65016140, -18563922, 10410464, },
- { -17283486, 16813186, -5451387, }
- },
- {
- { -82274392, -4493610, -4998268, },
- { 215839824, -63351, -6945499, },
- { -107246944, -3540664, 659278, },
- { -69171520, 2429878, 10962367, },
- { 49844168, 5693516, -11807402, },
- { 41827076, -13609141, 1554241, },
- { 30812096, -4552129, -1991791, },
- { -88808648, 12234751, 4199405, },
- { 79944376, -20038170, -7359964, },
- { -6064494, 9715753, -3017752, },
- { 29600914, -4624069, -3562139, },
- { -86208584, 8352101, 3291556, },
- { 7969312, -1806034, 34360, },
- { -14738717, -891206, 2032593, },
- { -52577916, -17246978, 7355132, },
- { -40023188, 11195906, -3377992, }
- },
- {
- { -11520176, -16800838, -8475044, },
- { 121099824, 8950175, 2939905, },
- { -96168616, -3455301, 530965, },
- { 16582869, -2209761, -542240, },
- { -12630425, -2364380, 1235340, },
- { 61056720, 850404, -7627325, },
- { 3321620, 1947768, -172872, },
- { -70016016, 70867, 4503273, },
- { 71465032, -759672, -10794327, },
- { -14083735, -3701188, 3001109, },
- { 25223270, -6362994, -1888712, },
- { -66658428, -2034741, 3216931, },
- { 21100638, -2749316, -1918777, },
- { -33149632, 10821707, -206695, },
- { -39621612, 8810052, -4913980, },
- { -47799764, -4650376, 3549791, }
- },
- {
- { 42451456, 21299280, -1612760, },
- { 41670848, -17740900, 3934190, },
- { -48837536, 14950781, 521302, },
- { 65235720, -1077500, -5389647, },
- { -51329692, -3191161, 4767414, },
- { 53909892, 8493298, -3687766, },
- { -32504312, -6902013, 2399813, },
- { -41712184, 894964, -538482, },
- { 49881752, 9771587, -2830920, },
- { -21916682, -7760469, 2321967, },
- { 16160888, -1179505, 1459752, },
- { -23418310, 9116068, 65498, },
- { 22019224, 804770, -699543, },
- { -47476032, 4873714, -712428, },
- { -27396522, 13417478, -4742181, },
- { -48884780, -6140193, 2001455, }
- },
- {
- { 88989040, -11040213, 2617783, },
- { -27049704, 19992536, 533650, },
- { 37626060, -19404662, -939524, },
- { 90464360, -9076340, -4810900, },
- { -75970992, 7735236, 3192771, },
- { 12238509, 5801964, 3783329, },
- { -67951216, 8986682, 2831457, },
- { -14402636, -9207873, -1178969, },
- { 24434068, 2305861, 3216394, },
- { -29472066, 4461934, -941672, },
- { 1956895, 5533529, 1078574, },
- { 30696132, -7948374, -2563022, },
- { 5944235, 5713380, -133144, },
- { -58457188, -2496450, 4172024, },
- { -21294448, -10089415, 2979634, },
- { -49573588, -411780, -426812, }
- },
- {
- { 128727688, 3776350, 1412507, },
- { -85088672, -12749610, -1985349, },
- { 145171504, 23826868, -3697967, },
- { 111840408, 8870181, -1000191, },
- { -101389680, -9131637, 709207, },
- { -58888832, -21438330, 5841156, },
- { -87093344, -6423661, 1226213, },
- { 4442607, 5873905, 1722282, },
- { -4634270, -12062416, 2022393, },
- { -33332704, 2255395, -806917, },
- { -13388487, -5470178, -262530, },
- { 77616504, 11276437, -3949223, },
- { -24839944, -5436355, 712428, },
- { -68098856, -10958609, 2998961, },
- { -26676042, -6561100, 5107253, },
- { -54116588, -608275, 588947, }
- },
- {
- { 160432064, -3110093, -737124, },
- { -127650720, 4705674, -1635309, },
- { 241246704, -25421912, -2492155, },
- { 134621984, -2611877, -1050656, },
- { -131793216, 5808407, 472983, },
- { -134059888, 26525718, 2126546, },
- { -73410656, -4699231, -995896, },
- { 13879724, 1817308, 2222109, },
- { -35398048, 12080132, -1765232, },
- { -30884572, -4506495, 1458678, },
- { -24806658, 2606508, -1139777, },
- { 98636608, -8537858, -754304, },
- { -61230664, 6629282, 2826089, },
- { -69490424, 5415954, -2579665, },
- { -38364796, 12315282, 798864, },
- { -63967632, 4951561, 297963, }
- },
- {
- { 185763248, 4479114, -1353452, },
- { -153832304, 309238, 257698, },
- { 290788064, 7578470, 1229434, },
- { 153667488, 5258651, -2077154, },
- { -161042480, -5226439, 1700270, },
- { -176488800, -10183367, -3265249, },
- { -20143396, 18489298, -1172526, },
- { 22658100, -1901060, 338229, },
- { -62093952, -2499671, -2667712, },
- { -20965346, 1632625, 2285460, },
- { -30292404, -601295, -1700270, },
- { 77775952, -10266582, 1833414, },
- { -89274120, -9709847, 2138357, },
- { -54588496, 11563126, -2695629, },
- { -42026256, -3581466, -3647501, },
- { -75187160, -2548526, -672162, }
- },
- {
- { 208514224, -5304822, -991601, },
- { -169719920, 48318, 2152316, },
- { 275570464, 19114216, 161061, },
- { 159189200, -3106335, -143345, },
- { -178980944, 3876745, 1544578, },
- { -158604560, -22049288, -1932735, },
- { 61370252, -22639846, 114890, },
- { 43689480, -3373697, -1739462, },
- { -80673984, -3013993, 260382, },
- { -2893734, -114890, 209380, },
- { -34706020, -1522029, -1552631, },
- { 14364518, 24151138, -210453, },
- { -91525752, -1062468, -83752, },
- { -27262304, -13845901, 1780801, },
- { -25509422, -13974213, -2544231, },
- { -82675440, -2627446, 635118, }
- },
- {
- { 231195936, 5265630, -641561, },
- { -184304032, -5625334, 2100776, },
- { 208716624, -26603564, -4437238, },
- { 143026176, -9013526, 463856, },
- { -176169360, 4109210, 1348620, },
- { -83453896, 32672890, 5035849, },
- { 144423648, 14431627, -525060, },
- { 85177792, 13616120, -2009508, },
- { -92251600, 1479616, 3518652, },
- { 23432804, 5090610, -2103460, },
- { -48676476, 792421, 562641, },
- { -71161168, -19383724, -1622424, },
- { -57096760, 12967580, -226023, },
- { -279710, 5210332, 4049081, },
- { 10645613, 19659676, 3597035, },
- { -83698176, 1516124, 2621541, }
- },
- {
- { 253110480, -4453881, -644245, },
- { -202792784, 9002251, -316754, },
- { 126104536, 14142790, -4711579, },
- { 106415864, 15707232, -2575370, },
- { -149847648, -8284455, 1737314, },
- { 18028662, -17587892, 6094022, },
- { 199054016, -3391951, -3665755, },
- { 142919872, -15989626, -756988, },
- { -99546064, 6783901, 2951716, },
- { 53973244, -10205916, -1722819, },
- { -81119584, 5608154, 3808562, },
- { -147441392, 6831146, 2094333, },
- { 7497939, -16030429, -641561, },
- { 17021492, 5471789, 1440425, },
- { 55233280, -5935108, 5962489, },
- { -77189688, 3450469, 1087701, }
- },
- {
- { 271380192, 3393561, -754304, },
- { -225036960, -5210332, -2160369, },
- { 61864172, -3352759, -230854, },
- { 59377384, -7401840, -3531537, },
- { -106045960, 8349417, 395137, },
- { 111889800, 4412542, -1377611, },
- { 204785120, -613107, -4148939, },
- { 199535584, 8651675, -1597191, },
- { -102982040, -9226127, -2387465, },
- { 79090216, 8512088, 667331, },
- { -128752920, -15685757, 4660577, },
- { -186985152, -4001836, 5465883, },
- { 80273472, 16455093, -1806571, },
- { 26085484, -3606162, -2874944, },
- { 100301448, -5814849, -549756, },
- { -62251792, 960999, -2479270, }
- },
- {
- { 283445824, -2472291, -425739, },
- { -250145872, -394063, -347892, },
- { 31551366, 1824824, 2136746, },
- { 11241540, 1342177, 860067, },
- { -55291800, -12691628, -486942, },
- { 177572208, -8174934, -7242389, },
- { 157573760, 6961068, 1270774, },
- { 233900160, -4170950, -3251290, },
- { -101713416, -5664525, -4573604, },
- { 89047560, 841814, 1887638, },
- { -172231408, 18637474, 468688, },
- { -174405200, 2156074, 1228361, },
- { 133267464, -12697534, -599685, },
- { 36203888, -8750996, -2057826, },
- { 146519056, -4073240, -8343511, },
- { -41135048, -11688753, -1687385, }
- },
- {
- { 288816672, 65498, -69256, },
- { -279945440, -3285650, 3053185, },
- { 31862752, 1466195, 632971, },
- { -34104188, -8149164, 4543002, },
- { -9822053, 10109816, 583042, },
- { 205254336, 11177652, -4417374, },
- { 71791992, -27465242, 4102768, },
- { 229422656, -2577517, -2360085, },
- { -101560944, 13728326, 1846836, },
- { 82175608, -9631464, -331786, },
- { -185142624, -451508, -3894999, },
- { -109586088, 19167366, -4055523, },
- { 144640544, -3027415, 1314797, },
- { 52999360, 7438884, 1590212, },
- { 190781904, 21658446, -6819871, },
- { -23318988, 8011725, 2361158, }
- },
- {
- { 289866272, 1352915, -431107, },
- { -315025120, 12282533, 3040837, },
- { 47494284, -6703907, -4832, },
- { -71863928, 13118978, 2914672, },
- { 20838644, -2469606, 643708, },
- { 190062496, 3092377, 1194538, },
- { -19047644, 33006286, -2068027, },
- { 179018528, 16397111, -1230508, },
- { -115382688, 5246840, 7004018, },
- { 67956048, 5418638, -2936684, },
- { -153785056, -24093692, -775242, },
- { -14096620, -36050344, -586800, },
- { 111691696, 18995566, -474594, },
- { 75546328, -217433, 713501, },
- { 214077280, -14137959, 1343251, },
- { -18821620, 4057670, 3177739, }
- },
- {
- { 291103744, 370978, -772557, },
- { -348790528, -12458090, -287226, },
- { 58636504, 3210488, 1225139, },
- { -92223152, -5486821, -352187, },
- { 35514012, -2880313, -1367410, },
- { 136765712, -22014392, 1087701, },
- { -74584256, -4656819, -6522445, },
- { 90864864, -23682450, -1395328, },
- { -146371408, -21838298, 2491081, },
- { 59137940, 3469260, -1843615, },
- { -91215976, 23076860, 5398774, },
- { 71293232, 19409494, 4901632, },
- { 54820964, -17020418, -3295851, },
- { 101421896, 2614561, -2597918, },
- { 191872288, -16305306, 3377455, },
- { -27441620, -11033234, -479963, }
- },
- {
- { 296270592, -2617246, -364535, },
- { -370586944, 2314987, -2156074, },
- { 51345796, 5406827, 1508070, },
- { -86875376, -7421704, -424128, },
- { 40845676, -1283122, -2312840, },
- { 65692060, 21493626, -2470143, },
- { -77312632, -19687594, -1716913, },
- { -13135084, 21265456, -473520, },
- { -178148272, 11236171, -3562139, },
- { 60837676, -4228396, 497679, },
- { -25942676, -4966593, 4297115, },
- { 111659488, 8442832, 2335389, },
- { 3730716, 5009006, -2279554, },
- { 125576792, -7951595, -2874944, },
- { 119798984, 29526826, -1306744, },
- { -37692632, 1173600, -2627983, }
- },
- {
- { 306039520, 2916283, 55298, },
- { -375466048, 7729868, 229244, },
- { 26038776, -9740449, 701153, },
- { -57603564, 12832289, 1970853, },
- { 44336948, 3262028, -929324, },
- { 3132105, -10383083, -3685619, },
- { -45856828, 19236622, 5332739, },
- { -108694344, -19291920, 162672, },
- { -189576096, 8080444, -2288681, },
- { 69859256, 2285460, 953483, },
- { 23221814, 1700270, -803159, },
- { 101647920, -16965658, -4098473, },
- { -21590264, 2845953, 823560, },
- { 137975280, 4347581, -857920, },
- { 19513648, -26326002, -4456566, },
- { -37789808, 6197638, -426276, }
- },
- {
- { 318587776, -3032784, 149250, },
- { -369527168, -3953518, 2932926, },
- { -4318590, 9765682, -648003, },
- { -16476031, -8249022, 2439005, },
- { 49333604, -2521146, 493384, },
- { -34719440, -4065724, -518080, },
- { -16206522, 1155883, 5816460, },
- { -177921168, 8576513, 460635, },
- { -173933296, -13509820, 2663417, },
- { 79901960, 100932, -41876, },
- { 54387708, -3276523, -2781528, },
- { 61901216, 9036611, -5770826, },
- { -17591112, -6221797, 2840047, },
- { 128530120, 4281009, 378494, },
- { -77983184, 12730820, -2652679, },
- { -24894168, -6537477, 1983738, }
- },
- {
- { 331023328, 1572495, -158377, },
- { -363240416, -2485176, 2062658, },
- { -23373748, -2558727, -1784559, },
- { 23740432, 7432978, 1649268, },
- { 54683524, -3455838, -938450, },
- { -49672908, 3960497, 3744675, },
- { -12600360, -14341433, -257161, },
- { -215045792, 570157, 2612951, },
- { -140426640, 7584912, 4264903, },
- { 85427440, -1476932, -1599875, },
- { 74498896, 4804995, -2248952, },
- { 18589156, 258235, -1464047, },
- { 6771553, 3172370, 1788317, },
- { 94353992, -13314935, -484258, },
- { -151179632, -4474282, 2142115, },
- { -3787088, 1398012, 1156957, }
- },
- {
- { 341009120, -1515587, -616328, },
- { -361957824, 4287451, -532039, },
- { -22019224, -7435126, -636192, },
- { 56237228, -2128156, 529892, },
- { 57777512, -2005750, -2416993, },
- { -54333484, 2007360, 4508105, },
- { -34668440, 11482595, -5185100, },
- { -226664752, -2289755, 4807142, },
- { -102528920, -1979980, 1407676, },
- { 83640728, -810138, -1657857, },
- { 90878288, -4764193, -1228898, },
- { -12435004, 1063541, 3004867, },
- { 39201240, -5504001, -520765, },
- { 43192340, 13027173, -1552094, },
- { -195225056, 2522220, 5649493, },
- { 19146428, -3657165, -924492, }
- },
- {
- { 347595456, 1677185, -417686, },
- { -364211072, 656056, -1167694, },
- { -4296578, 10086731, 2272038, },
- { 82555176, 3663607, -807991, },
- { 54913304, 3373160, -198105, },
- { -57903676, -8464307, 1361505, },
- { -68560024, -1516124, -4011500, },
- { -222998464, -2698850, 3826816, },
- { -67095444, 6439230, -712428, },
- { 72852312, -1525250, -280247, },
- { 105808128, 4806069, -281857, },
- { -26526792, -4527433, 2848637, },
- { 68737728, 4700305, -1606855, },
- { -10790032, -9171366, -679679, },
- { -214334432, -5647345, 5347771, },
- { 39519068, 7033009, -117575, }
- },
- {
- { 350730784, -349503, -70867, },
- { -366636672, -1081258, 66572, },
- { 17701708, -3133716, 3336653, },
- { 108880104, -4415764, -1509681, },
- { 41920492, 3178813, 2012729, },
- { -59764468, 2437394, -1982664, },
- { -104399920, 922881, 396211, },
- { -208644144, -919123, 1145146, },
- { -34493956, -6276558, -525060, },
- { 52565568, 5551245, 316217, },
- { 117002960, -1362042, 101469, },
- { -23087060, 638876, 347892, },
- { 86126976, -3460133, -1624035, },
- { -55188184, 6024766, 777926, },
- { -210987040, 2057289, 2257542, },
- { 54660976, -2545305, 1357747, }
- },
- {
- { 351696096, -266288, -39192, },
- { -367900992, -301721, 442382, },
- { 34761856, -4679367, 199179, },
- { 138656576, 8657580, -1464047, },
- { 20651814, -10691784, 737661, },
- { -54502600, 6995965, -925565, },
- { -141045120, -5858873, 3105798, },
- { -183038080, 5861020, -58519, },
- { -2747169, 6265284, -612570, },
- { 25756382, -8061654, -273804, },
- { 122231008, -829466, -453119, },
- { -3658775, 5697811, -901406, },
- { 84907208, -1595044, -946503, },
- { -83002392, -2358474, 1876364, },
- { -183580864, 6935299, 32212, },
- { 66104380, -1711008, 297427, }
- },
- {
- { 352811168, 619549, -377957, },
- { -368510880, 630286, -12885, },
- { 47033648, -1253594, -2666638, },
- { 169054752, -8256001, -413391, },
- { 831613, 6984154, -2095944, },
- { -41806676, -5986648, 1675037, },
- { -178983632, 11828877, 2625836, },
- { -146943712, -10399190, 165356, },
- { 29367376, -6104759, -1154273, },
- { -1778117, 6456410, -1106491, },
- { 122834992, 752693, -854699, },
- { 26137024, -9786620, -279173, },
- { 62861140, 6782827, -481036, },
- { -93098784, 931471, 2050847, },
- { -133093520, -16054051, 366146, },
- { 79614200, -497142, -1923072, }
- },
- {
- { 356286336, 1079111, -706522, },
- { -370377568, 118112, -59056, },
- { 58491548, 7219303, -1080721, },
- { 192554656, 5204964, 554588, },
- { -7168301, 2298344, -2442763, },
- { -26358214, 807991, 1415729, },
- { -213923200, -11788075, -175557, },
- { -105548824, 10618233, 1021665, },
- { 59586228, 7743289, -1002338, },
- { -24626268, -2447058, -846109, },
- { 122507496, -52076, -792421, },
- { 56819732, 8184060, 1071058, },
- { 23933706, -11563663, -741956, },
- { -88090856, 888521, 1012002, },
- { -67978592, 17484812, 1989107, },
- { 99579352, 7204271, -2246268, }
- },
- {
- { 362722880, -2591476, -450435, },
- { -375905728, 1128503, 363998, },
- { 69048576, -3528316, 1149441, },
- { 203336096, 1549946, 347892, },
- { -2265595, -6801618, -430034, },
- { -12047383, -350577, -466541, },
- { -237117088, 1186485, -1096290, },
- { -67009008, -7736847, 1520955, },
- { 82461224, -4238059, -362388, },
- { -41384696, 653372, 377420, },
- { 124182536, 389231, -1152662, },
- { 79066592, -1724966, 1180042, },
- { -22692460, 11189464, -1503239, },
- { -71790912, -5228586, 567473, },
- { -1692217, -11481521, 1993939, },
- { 123079264, -8227547, -708133, }
- },
- {
- { 370373824, 2542084, 98247, },
- { -386556192, -3310883, 375273, },
- { 76104136, -1887638, 447750, },
- { 202242496, -3654480, -919660, },
- { 5905580, 2692945, 868657, },
- { -347355, 2221035, -1225676, },
- { -243896160, 5133023, 1224603, },
- { -37273872, 2496987, 845035, },
- { 92828200, 244813, -382252, },
- { -54846732, -2807835, 863288, },
- { 127560528, 631360, -1960116, },
- { 89395984, -3245922, -675384, },
- { -66122096, -5112622, -521839, },
- { -49948860, 4191888, 396211, },
- { 54602992, 4352413, -951335, },
- { 140605952, 3172907, 141197, }
- },
- {
- { 376587552, -702764, 275415, },
- { -401500000, 3802657, 158377, },
- { 78745008, 1107565, -1109712, },
- { 196230608, 2150168, -1660542, },
- { 5272073, 1649804, 909459, },
- { 8028368, -2726767, -667331, },
- { -238401280, -2830920, 2775623, },
- { -16224239, -919660, -752693, },
- { 89822800, 3003256, -701690, },
- { -68125696, 3136937, 624381, },
- { 128559648, -3267933, -1184337, },
- { 91821032, 606664, -2059974, },
- { -99711960, 4389457, 1236414, },
- { -28915330, -4508642, -1611, },
- { 96751120, -6563247, -3388192, },
- { 143558752, 1979980, -37581, }
- },
- {
- { 379933888, -866510, -223875, },
- { -418189152, -3509525, 179315, },
- { 78002512, 1551557, -689342, },
- { 193020128, 2717641, -788663, },
- { -10403485, -8171712, 40802, },
- { 11798812, 491774, -142808, },
- { -228333888, -441308, 1696512, },
- { 1134408, 3786014, -1302986, },
- { 77307264, -3585761, -798327, },
- { -82289424, -4401805, 170725, },
- { 120315992, -1399623, 513785, },
- { 92718680, 3023120, -1060320, },
- { -122189136, -4933307, 1023276, },
- { -13180181, 3692598, 535797, },
- { 124550296, 8669928, -1908576, },
- { 130201936, -6466610, -628139, }
- },
- {
- { 381073120, 535260, -813359, },
- { -433806208, 2840047, 312996, },
- { 75059384, 233539, 439160, },
- { 196453952, -3342558, 932545, },
- { -38315940, 9525164, -1642825, },
- { 9557376, 1625108, -333397, },
- { -218855968, -242129, 93952, },
- { 18570902, -4182761, -1089848, },
- { 61713312, 3343632, -601295, },
- { -96362960, 3289945, -426812, },
- { 98379448, 8465381, 415001, },
- { 95044944, -1895691, 373662, },
- { -134432480, 727460, 594853, },
- { -4395362, 85362, 781684, },
- { 136693232, -743029, -285615, },
- { 106566728, 7488276, -1481227, }
- },
- {
- { 381620192, 1278290, -573915, },
- { -446254624, -1850594, 471373, },
- { 70897024, -4185983, -520228, },
- { 205557136, -587337, 381715, },
- { -69342248, -4027606, -1483374, },
- { 1697049, -411780, 237834, },
- { -210835120, 3384971, 437550, },
- { 35998804, 6389301, -175557, },
- { 48716740, -2058900, -534723, },
- { -108493024, -300648, 104690, },
- { 65671124, -11233487, -1360968, },
- { 97958544, -1491427, -138513, },
- { -139136000, 694174, 1178432, },
- { 346282, -1947231, -251792, },
- { 133537512, -3973382, -887985, },
- { 82236816, -4588099, -1869921, }
- },
- {
- { 382351936, -1075352, 183073, },
- { -454615840, 816581, 748398, },
- { 66729832, 1833414, -2317672, },
- { 218169312, -1402844, -1505386, },
- { -96211024, 1338419, 772020, },
- { -9361418, 2212982, 1392106, },
- { -202981232, -1261110, 1223529, },
- { 50014896, -2319819, 700617, },
- { 41347652, -806380, 40802, },
- { -118474528, 668404, 1267552, },
- { 30713312, 5957120, -1932198, },
- { 99469296, 617938, -1403381, },
- { -139440944, -980863, 1854889, },
- { 6510634, 270583, -1832340, },
- { 119157424, 5541045, -1895691, },
- { 63735704, -129923, -788127, }
- },
- {
- { 383144384, -444529, 292595, },
- { -459259776, -1583769, 524523, },
- { 62185756, 3074660, -1435593, },
- { 231434320, 4502200, -1624035, },
- { -117318104, -4323959, 1771674, },
- { -19376208, -4671851, 766652, },
- { -192852624, 653909, 485331, },
- { 57789860, -828929, 118112, },
- { 38961260, -403727, 383863, },
- { -127578784, -3790846, 962073, },
- { 832687, -1974611, -172872, },
- { 97513472, 1676111, -812823, },
- { -137204880, -2003065, 1231045, },
- { 17623324, 6783901, -1333587, },
- { 99434400, -2160369, -1452236, },
- { 50520088, -871342, 569620, }
- },
- {
- { 384296480, 776852, -302795, },
- { -460956832, 68719, 89121, },
- { 53318796, 558883, 696322, },
- { 240763520, -4166118, -34360, },
- { -133587440, 4829691, 685584, },
- { -22540526, 171262, -424665, },
- { -177651120, -3570192, -296353, },
- { 61066920, 1590749, -952409, },
- { 39507256, -175557, 85362, },
- { -136151008, 2514167, -131533, },
- { -22209812, 2669859, 1468342, },
- { 89513024, 2073932, 286152, },
- { -132348344, -680752, -26307, },
- { 31038654, -5706401, 867047, },
- { 79264160, 2407866, 130997, },
- { 37860672, 2688113, 896574, }
- },
- {
- { 386752128, 849867, -627065, },
- { -460907424, 860067, 301185, },
- { 36146980, -8155069, 146566, },
- { 241739008, -2721936, 404264, },
- { -145550544, -1211181, 214212, },
- { -15294379, 6343130, 619549, },
- { -156943472, 6531572, 106837, },
- { 64532956, 837519, -1495186, },
- { 41670848, 206695, -30602, },
- { -143601152, 547071, 244276, },
- { -40169756, -4733591, 1357210, },
- { 74599288, -5961415, -316754, },
- { -124122408, 5115306, 801011, },
- { 40080636, -530965, 1106491, },
- { 61127048, -4632122, 347892, },
- { 22113176, -5246840, 465467, }
- },
- {
- { 391063200, -2029909, -237297, },
- { -461126464, -344134, 667331, },
- { 11589969, 8358007, -1996086, },
- { 233550128, 6007586, -1385127, },
- { -153602528, -243739, 1096290, },
- { 543313, -5778342, 2461016, },
- { -133317392, -5993627, 959925, },
- { 72045928, -3372086, -1061931, },
- { 44400300, 733903, -638876, },
- { -149664576, -162135, 1471563, },
- { -55261732, 5041755, -13422, },
- { 55586004, 4656282, -1148367, },
- { -113788176, -3487514, 2371896, },
- { 41438380, 2802466, -167504, },
- { 46727632, 3631932, -506269, },
- { 2968896, 5842230, -533113, }
- },
- {
- { 396734720, 1250372, 73014, },
- { -462726880, 500364, 1276142, },
- { -15785079, -1756105, -1324997, },
- { 219574304, -1741072, -1924145, },
- { -157631744, -1241782, 1465658, },
- { 20402168, 221191, 1504849, },
- { -110699560, 1782411, 261993, },
- { 83441016, 3263102, -599148, },
- { 47146928, 1730335, -814970, },
- { -153455424, -3345243, 1052267, },
- { -68853160, -576599, -130460, },
- { 36815924, -1578401, -375810, },
- { -102973992, -1618129, 1462436, },
- { 36476084, -3029563, -1205275, },
- { 36621576, -526134, -565325, },
- { -16523813, -1292248, -19327, }
- },
- {
- { 402814240, 31139, -442919, },
- { -465080000, 938987, 1842541, },
- { -41941968, -2105071, 3216394, },
- { 203479440, -2962454, 1204202, },
- { -157027232, 5337034, -1045288, },
- { 40497784, 2864743, -2887292, },
- { -91681984, -1256815, -1701344, },
- { 95501816, -3160022, -364535, },
- { 49006112, -3105798, 643171, },
- { -153419984, 6674916, -2768107, },
- { -82031728, -2663954, 2726767, },
- { 21534966, 1419487, 1041530, },
- { -92152280, 4112968, -2525978, },
- { 28469190, -468688, -843424, },
- { 29191282, -1108102, 650151, },
- { -33352032, 449361, 2191507, }
- },
- {
- { 408395008, 100395, -1385127, },
- { -466746432, -2885144, 1062468, },
- { -63879048, -1842541, 7820599, },
- { 187858656, 2120103, 6287832, },
- { -152399936, -4620848, -6424198, },
- { 57353384, 2039036, -6954089, },
- { -77235864, 4152697, -2153926, },
- { 105173008, 2572686, 300648, },
- { 49308908, 1588601, 2649995, },
- { -149810064, -3342022, -8390219, },
- { -95026152, 714038, 6820408, },
- { 11529840, -3498251, 875100, },
- { -82806432, 520228, -6441377, },
- { 19945828, 4118337, 2282238, },
- { 22079354, 539555, 2406256, },
- { -46061912, -2879239, 3273302, }
- },
-};
-
-const Word32 rightHRIRImag_HOA3_fx[BINAURAL_CONVBANDS][HOA3_CHANNELS][BINAURAL_NTAPS_SBA] /* Q29 */=
-{
- {
- { -102715752, 295527040, -88424248, },
- { 96281896, -56815440, -11869679, },
- { -8760123, 37118180, -14165876, },
- { -16805134, 23917600, -6433324, },
- { 6374269, 26807576, -12249784, },
- { -1127429, 13645648, -4787278, },
- { 4656282, 38743288, -16459388, },
- { 5360119, -24749212, 7655779, },
- { -9627169, 107434848, -38639672, },
- { 5340792, 41006200, -19219442, },
- { -268435, -7092602, 3980898, },
- { 2935073, 9185324, -4246112, },
- { -741419, -13098040, 6208912, },
- { 931471, -9216463, 4911295, },
- { -3754875, -8075076, 3953518, },
- { -147103, 2249489, -787590, }
- },
- {
- { -177186736, 179125376, -115792320, },
- { 239960896, 299077888, 104825120, },
- { -9208410, 46498388, -8622147, },
- { -28982440, 16567299, -3951907, },
- { 16998944, 27056684, -16417512, },
- { -7049115, -40280352, -29566554, },
- { 19155554, 43337292, -20049982, },
- { 6044093, -23644868, 7273527, },
- { 2528662, 81792824, -53621592, },
- { 29154238, 116467704, 7671349, },
- { -7763691, -48617956, -14192719, },
- { 10481331, 30494268, 1056025, },
- { -6800544, -35405564, -2618320, },
- { -5965173, -47450800, -11907260, },
- { -10130217, -13799730, 3756486, },
- { 438624, 4456029, 349503, }
- },
- {
- { -51999168, -317713760, 45510012, },
- { 132898096, 545737344, 39643620, },
- { -308164, 25183540, -2346663, },
- { -10490458, 16738024, -7422241, },
- { 20291572, -66797480, 22439594, },
- { 3951370, -103472744, -4090420, },
- { 38857104, -86104968, 33058364, },
- { -1992328, 11780558, -2269353, },
- { 60647084, -194886288, 50082004, },
- { 30465276, 48754860, 39180840, },
- { -3276523, -72164576, -4759898, },
- { 2859375, 54574540, -8997420, },
- { -1475858, -48667348, 3673808, },
- { -47782, -96552472, 8617315, },
- { 973884, -46942380, 19906100, },
- { 2827699, -5764920, 3810710, }
- },
- {
- { 34120832, -220877824, 40671192, },
- { -49936512, 199888848, -41771240, },
- { 3815542, 29523606, -4461934, },
- { 18192408, 43142408, -7209103, },
- { -7750269, -111525808, 8528194, },
- { 7198365, -69175280, 11199127, },
- { 13021804, -200965808, -12485470, },
- { -1145683, 12852153, 373662, },
- { 31666258, -357677888, -27057220, },
- { 7707856, 32124208, 42369316, },
- { 4867272, -29853244, 13622026, },
- { 4420595, 104069208, 21484500, },
- { 5786395, -47440600, 2157147, },
- { 3860102, -75734768, 17977660, },
- { 8563091, -98140536, -7536057, },
- { -2442226, -55461448, -19271518, }
- },
- {
- { 10460393, -181682480, 44848048, },
- { -108469400, 340663936, -99499360, },
- { 4267587, -36406292, 25516938, },
- { 26082262, -82588464, 40497784, },
- { -29406030, 4441533, -31512176, },
- { -13383655, 11658152, -22476638, },
- { -14169097, -91462400, -56171728, },
- { 7954280, -922881, 2018635, },
- { -27049704, -254546064, -60070488, },
- { -27341762, 175464448, -20010252, },
- { 3204046, -10685342, 5061619, },
- { 1270237, 125430760, 10515154, },
- { 7642358, -40255656, -4295504, },
- { -2068027, 463856, -14248554, },
- { 13204877, -75227960, -24315958, },
- { 3937948, -75275744, -8985608, }
- },
- {
- { -109123848, -363628576, 19850266, },
- { 9291625, 471410240, -91331408, },
- { -23200876, -97610112, 6461242, },
- { -36034776, -107364520, 42067596, },
- { 1789928, 2889439, -32729262, },
- { -20062330, 51043540, -1501628, },
- { -3835943, 12977244, -8718247, },
- { 13856101, 18894098, 5616744, },
- { -66184372, -170432352, 3189550, },
- { -38536596, 82056424, -61956512, },
- { 4857071, -3991635, 8170639, },
- { -4960687, 70343512, -20109574, },
- { 5545877, -7403987, 10499048, },
- { 9702868, 27723478, -3980898, },
- { 12382928, 13322989, 15064598, },
- { 12425877, -38941932, 6793028, }
- },
- {
- { -195198208, -105714176, -71322760, },
- { 215174640, -32808718, 78798688, },
- { -47779364, -19037980, -21328808, },
- { -133198744, 112761144, -23626616, },
- { 73338176, -144662544, 7880191, },
- { -21403432, 30356828, 10085120, },
- { 6622303, -32783486, 7916699, },
- { 880468, 11415486, 10504953, },
- { -88258896, -64644088, -35305168, },
- { -2688650, -66810364, -1264331, },
- { 3269007, 19416474, -1700807, },
- { -4816806, 14665166, 4730370, },
- { -14203457, 39763880, -4204236, },
- { 19469086, -13660680, 9423158, },
- { -25116432, 59262496, 6179921, },
- { 8930311, -33924872, 1862942, }
- },
- {
- { -75185016, 178007072, 17114908, },
- { 224526400, -173874768, 14468671, },
- { -35714800, 41899016, 1722819, },
- { -147797872, 57060788, -37157908, },
- { 110517560, -32109712, 40170292, },
- { -13028246, -9739375, -8776229, },
- { 11642583, -30146376, 6591701, },
- { -34980900, -38170448, -902480, },
- { -13600014, 85681376, 7280507, },
- { 15824270, -18907520, 12783433, },
- { 6081674, 16430934, -4125853, },
- { -29388314, -10895795, -162135, },
- { -25477210, 14954002, -10593000, },
- { 11839614, -21398600, 6806987, },
- { -62463320, -21545704, -17193828, },
- { -3930432, -23349052, 8411693, }
- },
- {
- { 124779536, -22646826, 48507360, },
- { 77259480, 69186552, -43811888, },
- { -10337449, -4553202, 13614509, },
- { -42608224, -104795592, 4864051, },
- { 49625664, 88771072, 3922379, },
- { 20056424, -35947804, -5018133, },
- { 1079111, -107911, -3783866, },
- { -63607928, -75699, -8749922, },
- { 70587248, -13620952, 24923158, },
- { 7115687, 30103962, -4275640, },
- { 10963441, -7543573, 4325569, },
- { -55031952, 24158654, -6695854, },
- { -15417322, -20169704, 1402307, },
- { -11427834, 19712826, -4295504, },
- { -59354836, -50075560, -6753836, },
- { -32708324, 12753905, -102005, }
- },
- {
- { 286679936, -42412804, 9840844, },
- { -116902568, 6942278, -25850872, },
- { 13852343, -19517406, 3364570, },
- { 110133696, 32694902, 25050396, },
- { -60822104, -43612172, -22499724, },
- { 56594248, 16292958, 8150238, },
- { -18313740, -4286378, -1090922, },
- { -58529128, 17256104, -2695629, },
- { 99918120, -48497696, 5523865, },
- { -9865540, 2490007, -9789841, },
- { 6185290, -13204877, 2734284, },
- { -57276072, 23256712, -6016713, },
- { 1996623, 1510218, 5279052, },
- { -33033130, 7542500, -4423280, },
- { -24627342, 22221624, 13475460, },
- { -56947508, -13872207, -4949413, }
- },
- {
- { 369951296, 11637214, -19057844, },
- { -275144736, -7006166, 4369593, },
- { 43432856, -7104413, -4556961, },
- { 223252400, 22448720, 7514046, },
- { -149661888, -27103392, -11121818, },
- { 66699232, 26035018, 1901060, },
- { -45021996, 6493454, -987306, },
- { -21727166, -23222888, 5068062, },
- { 68480032, 28010702, -14796162, },
- { -20506858, -13718662, -1280974, },
- { -7138236, 9458592, -3651796, },
- { -26306674, -18474264, 4527970, },
- { 12858595, 8259759, 213138, },
- { -42810624, -7886097, 3251290, },
- { 8556112, 19741280, 7248294, },
- { -62429496, -17578228, -3010772, }
- },
- {
- { 393655232, 18198314, -15280957, },
- { -366834752, -10258529, 13111461, },
- { 89055072, 13213467, -2873870, },
- { 262732272, -14457397, -9764071, },
- { -184219200, 16023449, 8928700, },
- { 46308336, -9028021, -7953743, },
- { -69313792, 40265, 445603, },
- { 25310780, -430034, 4767951, },
- { 12801150, 2143189, -12394202, },
- { -22710176, 4475356, 5142687, },
- { -21137144, 7526394, -1753420, },
- { 20363514, 2947958, 3504693, },
- { 10953777, -259309, -2443300, },
- { -43550432, -8719320, 2104534, },
- { 27887760, -11151346, -7304129, },
- { -48897128, 11552388, 5156108, }
- },
- {
- { 393587584, -16003585, -1691143, },
- { -407478592, 13923747, 8107825, },
- { 150810256, -17078400, -2028298, },
- { 246486560, 4512400, -10222022, },
- { -178807536, 2159295, 9586367, },
- { 6522445, -5173288, -2015413, },
- { -84209816, 1737314, 2623688, },
- { 61722976, 1511292, -2246268, },
- { -34659848, -12631499, 715649, },
- { -21009906, 8139500, 2964601, },
- { -33974264, 1009854, 2833605, },
- { 64991980, -3661997, -1915555, },
- { -3665755, 1257889, -104153, },
- { -37127844, -5294084, -829466, },
- { 37775312, -15984795, -6041409, },
- { -32945620, 7146826, 3170223, }
- },
- {
- { 389030080, -645856, 3390877, },
- { -422571104, -10395968, 1673427, },
- { 215616480, 13672492, -2324651, },
- { 210861424, 412854, -4902705, },
- { -159334160, -3248606, 3352222, },
- { -43313136, -6364605, 6125160, },
- { -83583288, -2106145, 1627793, },
- { 81618872, 6060736, -3098819, },
- { -65605088, -4659503, 7262790, },
- { -17300128, -3033321, -1637993, },
- { -46225124, -6788733, 1626182, },
- { 92247304, 4304631, -3346317, },
- { -26742076, -5826660, 1142461, },
- { -24902758, 7871065, 2764348, },
- { 40583684, 10146860, 3660923, },
- { -22914724, -646393, -1450088, }
- },
- {
- { 381346400, 8778376, 318901, },
- { -423162720, -911607, -1009317, },
- { 256772480, -5362267, -3470871, },
- { 181759264, -3532611, 468688, },
- { -143814832, 2244657, -301185, },
- { -86775520, 16913582, 5376762, },
- { -60142428, -4284767, -837519, },
- { 86478096, -3433290, 421444, },
- { -85866056, 12759811, 3310883, },
- { -9114457, -6254010, -1319629, },
- { -54241680, 2934537, -525597, },
- { 90273232, 1603633, -2403571, },
- { -48776332, 4350265, 1156957, },
- { -10286447, 5401458, 1887638, },
- { 36567888, 9317932, 4653060, },
- { -18476412, -3271691, -350577, }
- },
- {
- { 368989216, -5534602, -2714419, },
- { -410308960, 8353175, 446677, },
- { 249583776, -1581622, -1770063, },
- { 160193696, -6912750, 1336272, },
- { -132391296, 3189013, -680215, },
- { -98816464, -7694434, -409633, },
- { -12958453, 11945378, -2587181, },
- { 82759184, -5604933, 719407, },
- { -97562864, -6251325, -1469953, },
- { 4041564, 5899138, 1145146, },
- { -55416352, 1132261, -874026, },
- { 55714316, -4063039, 931471, },
- { -58292368, 212064, 1797981, },
- { 9628780, -887448, -3663070, },
- { 33955476, -9705552, -1395328, },
- { -17141752, -2013803, 310848, }
- },
- {
- { 354289152, 1707786, -2571075, },
- { -388501792, -8374113, 2523830, },
- { 184855392, 18489298, 1823214, },
- { 135551856, 5879274, -466541, },
- { -114764744, -6063420, 659814, },
- { -60275572, -12415677, -4552129, },
- { 46445776, -17685602, -2125472, },
- { 81105088, 2907693, -1739999, },
- { -98579160, -4654134, -1602560, },
- { 20057498, -1689533, 1277216, },
- { -51474648, -2972117, -359704, },
- { -5354214, 17738752, 3388729, },
- { -46520940, -505196, 658741, },
- { 37961068, -15249281, -3142842, },
- { 44451836, -3827890, -4762045, },
- { -13396540, -1116692, -637803, }
- },
- {
- { 340785792, -648540, -1286880, },
- { -367042528, 4130148, 3242164, },
- { 77211704, -35029752, 872952, },
- { 100708928, -5694590, 889595, },
- { -83269752, 6628745, 448824, },
- { 25592100, 34553012, -2397129, },
- { 94690608, 10888816, -446677, },
- { 89442160, 3150359, -2889976, },
- { -88895624, 9186398, 1739999, },
- { 36222680, -879931, -1087701, },
- { -48532592, 2396592, 495532, },
- { -74482784, -21537114, 996969, },
- { -9998684, 8573292, -2022393, },
- { 66636956, 12024298, 1883880, },
- { 71037688, 16143708, -2165201, },
- { -2926483, 5681705, 247497, }
- },
- {
- { 329444928, 1310502, -534723, },
- { -353794720, 2165201, 1990717, },
- { -35852776, 28246390, -2888366, },
- { 55373404, 13240310, 1661079, },
- { -37164352, -11212549, -545461, },
- { 127722128, -30776126, 3580392, },
- { 106435192, 4369593, -664646, },
- { 105386152, -7526394, -2194192, },
- { -73596952, -3322694, 3643743, },
- { 49728204, -2808372, -2727841, },
- { -53045532, -820339, 2132988, },
- { -122394760, 6372121, -637803, },
- { 44829796, -17051558, -1961190, },
- { 82841328, 1896228, 2768643, },
- { 103471664, -14290430, 3080565, },
- { 13754096, -4429722, 1447941, }
- },
- {
- { 318065408, -2289755, -362388, },
- { -349757984, -4101157, -578210, },
- { -113754360, -4496294, -1942399, },
- { 8507793, -14286135, -691490, },
- { 16632261, 13100724, -366146, },
- { 202864720, 2484639, 2860448, },
- { 68579888, -16773458, -2518998, },
- { 115998480, 4524748, -450972, },
- { -57802208, -2226941, 1721745, },
- { 55953760, 4285304, -1493038, },
- { -64990908, -3839164, 3566434, },
- { -125006096, 11333882, 2152852, },
- { 97701920, 11058467, -1133871, },
- { 83138216, -8892193, -703838, },
- { 125751272, -3743064, 3295314, },
- { 33724084, -200790, -140123, }
- },
- {
- { 303769600, 3554622, -392453, },
- { -350124128, -987306, -1495722, },
- { -137944144, -8970576, 2792266, },
- { -26552024, 2578054, -1378685, },
- { 65428460, -7725573, -780073, },
- { 224844752, 13725105, -4529043, },
- { -12483322, 17953500, -1854889, },
- { 103481872, 7759932, -520228, },
- { -43051680, 3295314, -2524367, },
- { 48843440, 154619, 881542, },
- { -73293616, 6476274, 2489471, },
- { -76880992, -14780593, 3942780, },
- { 123941480, -2439542, -1432372, },
- { 75282184, 4989142, -3872987, },
- { 130074160, 13528610, -3344169, },
- { 54148264, -2907693, -2643552, }
- },
- {
- { 285796256, -3981972, -291521, },
- { -350552544, 5566278, 934155, },
- { -118486872, 7196218, 3931506, },
- { -41846404, 7055021, 2590939, },
- { 97731440, 5333276, -1343788, },
- { 194669936, -10606959, -7839926, },
- { -113775832, -16637630, 2842195, },
- { 56706992, -15079093, -1974611, },
- { -29278256, 8361765, -3295851, },
- { 26415122, -8336532, 1655173, },
- { -59804736, -1544578, -1472637, },
- { 8213588, 12548284, -590021, },
- { 108378128, -5355288, -51540, },
- { 70177080, 6913287, -2084133, },
- { 118951264, -5292474, -8668318, },
- { 71132176, 9405978, -1124745, }
- },
- {
- { 266198848, 4580583, -198105, },
- { -350230976, -1767379, 3656628, },
- { -80328776, -6408091, 1429150, },
- { -38255272, -1089848, 5014911, },
- { 107569064, -468151, -574989, },
- { 127891240, 5308043, -2437931, },
- { -204628880, 22431004, 4451197, },
- { -21296058, 14463839, 33823, },
- { -19694036, -12688944, 2639258, },
- { -4931696, 13265006, -676457, },
- { -12508555, -14493367, -4561256, },
- { 104526616, -20976620, -5231270, },
- { 52614960, 17870822, 1361505, },
- { 70737040, -3554622, 1427003, },
- { 93311384, -9984188, -3721589, },
- { 78050296, -3340948, 2378338, }
- },
- {
- { 248731760, -3841312, -413391, },
- { -347933152, -4990215, 2474975, },
- { -48056924, 5582384, 192737, },
- { -17847736, -1597191, 1737314, },
- { 95645160, -7235410, -721018, },
- { 41769632, -15646566, 4005057, },
- { -254933696, -15661061, -967978, },
- { -116530512, -22162568, 2592013, },
- { -19997904, -4423280, 6172405, },
- { -32169842, -5239323, -2809446, },
- { 61610232, 30427696, -1196685, },
- { 179832432, 24736864, -1607928, },
- { -22802518, -23575612, -494995, },
- { 71613208, -3980898, 626528, },
- { 43881144, -3936338, 5649493, },
- { 71671728, -8278550, 1923609, }
- },
- {
- { 236869056, 1332514, -442382, },
- { -337984384, 1898912, -1230508, },
- { -36775656, -474057, 851477, },
- { 20679730, -7783555, -1839320, },
- { 70426728, 8507793, -2003602, },
- { -44932336, 25403120, 3211025, },
- { -247928592, -11966853, -4479651, },
- { -206551424, 20236276, 1881733, },
- { -25847114, 15595563, 737661, },
- { -45509472, -4691715, -1045288, },
- { 135022496, -19324132, 4323422, },
- { 203965856, -22549, 3609920, },
- { -85994912, 11100880, -2160906, },
- { 66792648, 5742908, -2680060, },
- { -36132488, 30173756, 5865852, },
- { 59363428, 8577050, -1539209, }
- },
- {
- { 231336064, 232465, -187905, },
- { -314608512, 9227200, -2216740, },
- { -47083580, -6296422, 1185411, },
- { 75150656, 17259326, -1380832, },
- { 43449500, -4299263, -2225330, },
- { -109668768, -16653736, -1604170, },
- { -196255840, 30693446, 824097, },
- { -266336288, -7691213, 1482838, },
- { -19513648, -40802, -5159330, },
- { -46906948, 3625489, 1585380, },
- { 178553600, -5398237, 2368675, },
- { 168658528, -26050588, 896038, },
- { -113106352, 3360275, -834297, },
- { 52196200, 1465658, -2229625, },
- { -130574520, -31559420, -607201, },
- { 54207856, 810138, -3128347, }
- },
- {
- { 229698608, -639413, 103079, },
- { -280268096, -14671608, 709743, },
- { -66435628, 8568460, -228170, },
- { 134516768, -15690052, 752156, },
- { 22232362, -897111, -233539, },
- { -135112160, -6288369, -1469416, },
- { -139269680, -16405701, 7248294, },
- { -280978368, -4770635, 2736431, },
- { 12651363, -20282446, -2835215, },
- { -45940044, 1393180, 1640141, },
- { 184659968, 12319577, -4322885, },
- { 97737352, 26691612, -5443334, },
- { -101278552, -13482439, 2464238, },
- { 23606750, 4308389, 1158567, },
- { -205791216, 10285910, -2576981, },
- { 63715304, -10809896, -556198, }
- },
- {
- { 228049344, -766115, 147103, },
- { -246180544, 7079180, 2858301, },
- { -76775224, -832687, -1352915, },
- { 183658704, 7169911, 1001801, },
- { 6696391, -2782602, 1196148, },
- { -122947200, 12901545, 2642479, },
- { -114430280, -11481521, 4749160, },
- { -251979824, 10114111, 2804614, },
- { 64481956, 19887846, 2881386, },
- { -50970524, -4954782, -78383, },
- { 167591776, -1422708, -5360656, },
- { 30406220, -4449586, -4957466, },
- { -66963908, 7187628, 3494493, },
- { -20111722, -12416214, 1946157, },
- { -235634256, 7168301, 1110786, },
- { 83446384, 6468221, 2186138, }
- },
- {
- { 223257776, 2434173, -358630, },
- { -222571648, 1423782, 1270774, },
- { -66901096, -5757941, -1224603, },
- { 213205392, -363462, -601295, },
- { -7517804, 5701032, -143345, },
- { -91403880, -10115722, 4810364, },
- { -129454608, 18477486, -2522220, },
- { -192888048, -18012020, 2818572, },
- { 116327040, -5597953, 3251827, },
- { -64936684, 4624069, -1325534, },
- { 144151984, 967441, -1925756, },
- { -7003481, -5485210, 1249299, },
- { -32142998, -2110440, 637803, },
- { -70955008, 14260902, 665720, },
- { -216462592, -14950781, 4974646, },
- { 102517112, 1085016, 637266, }
- },
- {
- { 214601264, -2141578, -664646, },
- { -210639152, -2856690, -1705639, },
- { -39098696, 12422119, 195421, },
- { 224401296, -1705102, -2122251, },
- { -23874650, -3256122, -1199370, },
- { -59892244, 667331, 3594888, },
- { -164760848, -9598715, -5667210, },
- { -122378112, 14896557, 3575560, },
- { 153078544, -1903207, -1206886, },
- { -86211264, -2884071, -637803, },
- { 122694328, -2251637, -253940, },
- { -11296301, 5420249, 4977867, },
- { -11534135, 192200, -1800665, },
- { -114549464, -8192650, -90194, },
- { -162886096, 13973139, 6212134, },
- { 113876224, -239981, -1750736, }
- },
- {
- { 203155712, 2066953, -350577, },
- { -204104896, -4072703, -1747515, },
- { -6510634, -9341554, 2334315, },
- { 225802000, 472983, -2469606, },
- { -44047572, 288837, 622770, },
- { -37247568, 4226785, -686658, },
- { -195934800, -5150203, -1933272, },
- { -55822764, -6788196, 1361505, },
- { 173047984, -2663954, -3274913, },
- { -111873696, 4126927, 835371, },
- { 104021424, 2258079, 476205, },
- { 6830072, 1428077, 2796024, },
- { -11289322, 1420024, -2125472, },
- { -137739072, 110595, 669478, },
- { -94089312, -7212324, 3067144, },
- { 116191752, -2365453, -1021665, }
- },
- {
- { 190689024, -2371359, 25233, },
- { -197546480, 3785477, 316217, },
- { 16255377, -399969, 1974074, },
- { 225470752, 848256, -2200097, },
- { -67733784, -5657546, 2481417, },
- { -19403588, 2711198, -3480534, },
- { -212375392, 4522601, 3687230, },
- { 2371896, 7086696, -2202245, },
- { 181697520, 2357400, -2130841, },
- { -138478336, -6050535, 1375463, },
- { 84387520, -5470715, 548682, },
- { 35806068, 4025995, -1049583, },
- { -31158914, -4240207, -985695, },
- { -135325296, 6150930, 2264522, },
- { -20935818, 10323491, -1573032, },
- { 111204760, -1440425, 493921, }
- },
- {
- { 179225232, 2760053, -17717, },
- { -190236448, -1275605, 811749, },
- { 24045912, 6411850, -1258962, },
- { 225514768, -2793339, -1294396, },
- { -90458992, 10246718, 591095, },
- { 167504, -10723460, -1471026, },
- { -217126704, 2069101, 4703526, },
- { 54550916, -13069585, -2480881, },
- { 184158000, -1075352, -1227824, },
- { -161489696, 6567005, 497142, },
- { 61848064, 6723235, -358093, },
- { 67046588, -7152195, -1881733, },
- { -66924716, 8096014, 238371, },
- { -111702976, -5281736, 2227478, },
- { 53031036, -16231755, -3055332, },
- { 102903120, 5515812, -529355, }
- },
- {
- { 170537584, -1824824, -342524, },
- { -183614688, 394063, 205622, },
- { 22137336, -1753420, -3557307, },
- { 221629984, 302795, -28454, },
- { -103760504, -3090229, -2041720, },
- { 20645370, 6936909, 1555852, },
- { -213660128, -3447248, 2346663, },
- { 100076496, 9751723, -1311576, },
- { 182113600, -1058710, -1208496, },
- { -176058768, -1651952, -193810, },
- { 38847980, -4515621, -702227, },
- { 92197376, 7477001, -769873, },
- { -110912696, -10102300, 789737, },
- { -75545256, 8342974, 1235877, },
- { 122212760, 16909824, -2013266, },
- { 96241088, -2203855, -2356327, }
- },
- {
- { 165191424, 577673, -507343, },
- { -179486688, -921807, 26307, },
- { 18013092, -6145562, -1138703, },
- { 208220544, 3984119, 584116, },
- { -103398656, -5571110, -1526324, },
- { 36229660, 1289564, 903017, },
- { -200551888, 775242, -777926, },
- { 134781984, -8606041, -266288, },
- { 173686336, 821413, -890132, },
- { -180358560, -1727651, 304406, },
- { 18604724, 3582003, -486405, },
- { 104140072, -1828582, 615254, },
- { -152703264, 9380209, 613107, },
- { -36066452, -5236639, -74088, },
- { 176816832, -12213276, -252866, },
- { 92410520, -2876554, -1875290, }
- },
- {
- { 161907920, 635655, -172872, },
- { -178636272, 357556, 479963, },
- { 12662100, -326954, 1681480, },
- { 184686816, -8484171, 18254, },
- { -95561952, 7052873, 1110786, },
- { 44053480, -1843078, -1413581, },
- { -174144816, 10176388, -1409823, },
- { 154284352, 120796, -38118, },
- { 156079104, -4118874, -20401, },
- { -177165248, 3488587, 1398549, },
- { 1976759, -2449742, -335007, },
- { 99716792, -5302137, 265214, },
- { -181908512, -4544613, 263067, },
- { -349503, 7743826, -988916, },
- { 206934208, -265214, -577136, },
- { 85982024, 1734093, 284542, }
- },
- {
- { 158032784, 541166, 315143, },
- { -180236160, 1362042, 498753, },
- { 3595425, 5788006, 567473, },
- { 157179168, 7753490, -1189706, },
- { -92995704, 1237488, 2185602, },
- { 45439144, -1014686, -1642288, },
- { -136143488, -13908178, 1192390, },
- { 158649648, 1945620, -955630, },
- { 128903776, 7742753, -26844, },
- { -171800832, 121333, 1593433, },
- { -13741211, 3517578, -564788, },
- { 83028696, 7720741, -1414655, },
- { -192142336, -2512556, 985695, },
- { 26982596, -4926865, -543850, },
- { 209874112, 5954436, -2946348, },
- { 68932080, 5796595, 1089848, }
- },
- {
- { 151386864, -2404645, 253940, },
- { -181588528, -503585, 170188, },
- { -8827768, -4410932, -1240172, },
- { 134659040, -2888903, -1367410, },
- { -104213624, -6438693, 1145146, },
- { 42312944, 794569, -366683, },
- { -95989296, 7403987, 2324114, },
- { 153781312, -4433480, -2048163, },
- { 96725344, -7683697, -385473, },
- { -167803840, -656056, 716723, },
- { -32862406, -1418413, 206695, },
- { 63042604, -3702799, -2165201, },
- { -183988880, 5443334, 2400350, },
- { 42643656, 1428077, -680752, },
- { 191339712, -6039798, -4101694, },
- { 38693360, -9665287, 308701, }
- },
- {
- { 142047456, 3342022, -296890, },
- { -179505472, -1129576, 209380, },
- { -22232362, 354335, -740345, },
- { 122268056, -1197759, -267899, },
- { -127089696, 8201777, 76773, },
- { 35804996, 1121523, 504659, },
- { -62621160, -1944010, 459562, },
- { 147204096, -1213328, -2026688, },
- { 66827544, 5657546, -360777, },
- { -164881648, 201327, 209917, },
- { -58692340, 5550709, 1727651, },
- { 47042776, -1225139, -587874, },
- { -163863744, -2279554, 1731946, },
- { 47356848, -1014686, -275952, },
- { 159833984, 1132261, -1580011, },
- { 1237488, 9800042, -374736, }
- },
- {
- { 131995080, -2185602, -686121, },
- { -172193296, 2389613, 385473, },
- { -34882112, -1754494, 548682, },
- { 118775712, 1829656, 1057099, },
- { -151923200, -6539625, -869194, },
- { 26918170, -2971044, 383326, },
- { -38384660, 2454037, -1380295, },
- { 142515600, 503048, -854162, },
- { 45397804, -2553895, 5906, },
- { -161184224, 705985, -71941, },
- { -90267864, -9992241, 1291711, },
- { 35852776, -878858, 1010391, },
- { -138178768, 5908265, 526134, },
- { 44611288, -2708514, -45634, },
- { 120780920, -8893267, 904628, },
- { -33002528, -6796786, -682900, }
- },
- {
- { 123259656, 386547, -297427, },
- { -159658960, -3253975, 445603, },
- { -46336256, 4461934, -53687, },
- { 118589952, 2868501, 408022, },
- { -167935376, -1099512, -287226, },
- { 18038862, 1049046, 440771, },
- { -20253992, -5125507, -966368, },
- { 137852352, -726923, -92342, },
- { 34689912, 804770, 202937, },
- { -155091264, -3265249, 384400, },
- { -120252640, 8320963, -351114, },
- { 26051124, 3993783, 417149, },
- { -111731424, -5927055, 835908, },
- { 39908300, 2525441, -925029, },
- { 78502336, 11174968, 89121, },
- { -55575268, 1717987, -388695, }
- },
- {
- { 116317912, -416075, 415538, },
- { -143268832, 3914863, 501437, },
- { -56534656, -2570538, -1308354, },
- { 116717344, -2132988, -1386738, },
- { -170748576, 4256850, 1899986, },
- { 12721693, -376883, 1067836, },
- { -4331475, 3602941, 61203, },
- { 130119792, -2341294, 446677, },
- { 32933272, 1725503, 509491, },
- { -146960896, 2652679, 1264868, },
- { -139780240, -676994, -488016, },
- { 14691473, -3594888, -795643, },
- { -87946968, 4322885, 1036698, },
- { 38193532, -301721, -1729261, },
- { 39508868, -8189966, -799401, },
- { -65048352, 2486249, 899259, }
- },
- {
- { 110479440, 2017024, 375810, },
- { -125087704, -3195993, 301185, },
- { -66401268, -1813013, -260382, },
- { 110462800, -526670, -1109712, },
- { -163715024, -1055488, 2429341, },
- { 14014478, 1299228, 401579, },
- { 11800960, -1622424, -513785, },
- { 118221120, 5338645, -335007, },
- { 35818416, -648540, 755914, },
- { -138514304, 256087, 814970, },
- { -145208544, -4230006, 1448478, },
- { 764504, 854162, -260382, },
- { -67583992, -1777043, 284005, },
- { 40011380, -4359929, -912144, },
- { 9163850, 2971581, -146029, },
- { -67017060, -1034013, 2039036, }
- },
- {
- { 105450576, -1956358, -323733, },
- { -106948440, 3267396, -158377, },
- { -78411072, -905701, 2007897, },
- { 97738424, -1114544, 679679, },
- { -151885616, -370441, 593242, },
- { 23703924, 2260227, -975494, },
- { 29065118, 3977677, -1253594, },
- { 105585328, -3322694, -1251446, },
- { 39151312, -676457, 128312, },
- { -130260456, 290447, -506269, },
- { -140068016, 2144263, 2621541, },
- { -15606837, -2944737, 1053341, },
- { -49851148, 2172180, -1049046, },
- { 40941240, 2907156, 1347546, },
- { -10340671, -733366, 1454383, },
- { -68507952, -2381023, 1583232, }
- },
- {
- { 101561480, 300648, -568546, },
- { -89951112, -4433480, 75699, },
- { -93799400, 7416872, 1560684, },
- { 78182904, 6487011, 1120450, },
- { -137742816, -3635690, -416612, },
- { 40410812, -7388955, -376347, },
- { 45799920, -4907000, -733366, },
- { 96689912, 514859, -1169305, },
- { 41371808, -478352, -199716, },
- { -121325312, -3826816, -365072, },
- { -130160056, -69256, 1712618, },
- { -32813550, 5970005, 579284, },
- { -33693480, -6060199, -606127, },
- { 35114580, 5337571, 1307818, },
- { -20415590, 2937758, 1492501, },
- { -71973992, 2348810, 609885, }
- },
- {
- { 98599568, 495532, -88047, },
- { -75073344, 2914672, 547608, },
- { -108793136, -4763656, -343061, },
- { 55084568, -7936026, -375810, },
- { -122353952, 4451197, 281320, },
- { 58283780, 4212826, 855235, },
- { 58262840, 2534031, -28991, },
- { 92815320, 1783485, -290984, },
- { 42135240, -676457, -319975, },
- { -111458696, 2683818, 582505, },
- { -119100520, 385473, 188442, },
- { -46731928, -2570001, -293668, },
- { -20077898, 2864743, 571231, },
- { 22313966, -5775121, -535797, },
- { -23293218, -1050120, 282931, },
- { -75310104, -1711545, -76236, }
- },
- {
- { 95407864, 774168, 247497, },
- { -62201328, -2433099, 663036, },
- { -117396488, -2913599, 489089, },
- { 34339336, 1861868, -654446, },
- { -106500160, -2358474, 437013, },
- { 70891656, 2207613, -473520, },
- { 63357212, 2029372, -622770, },
- { 91015728, -407485, 495532, },
- { 41493680, -763430, -267899, },
- { -100730408, 11811, 16106, },
- { -107888504, -3798362, -7516, },
- { -53526568, -1596654, 488553, },
- { -10588168, 2075543, -592706, },
- { 7605314, 3099893, -1168768, },
- { -21086678, -2073396, 204548, },
- { -74581032, -2846490, 326418, }
- },
- {
- { 90771448, -2081449, -117575, },
- { -49592376, 1717987, 501437, },
- { -116706608, 5574331, 3620121, },
- { 20064476, 2241973, 1702955, },
- { -90603944, 127775, -1071594, },
- { 75449152, -3895535, -3524021, },
- { 60686276, -2705830, -1933809, },
- { 86734184, -1172526, 712428, },
- { 39661340, 1410897, 824634, },
- { -88941792, -665183, -2068564, },
- { -96333432, 5178657, 1554778, },
- { -52489868, 1941325, 1625108, },
- { -5063230, -2674154, -3305514, },
- { -4338454, 185220, -432718, },
- { -16717623, 2758443, 1214402, },
- { -67415952, 3813394, 1714766, }
- },
- {
- { 84129280, 1676648, -499290, },
- { -35509180, -853088, -664646, },
- { -106909256, -1200443, 4897874, },
- { 13125957, 48855, 3714610, },
- { -76045616, -1665911, -3042984, },
- { 71664752, -399432, -4633196, },
- { 52086680, -175557, -1498944, },
- { 77734080, 1599875, 1329292, },
- { 36881956, 878858, 1655710, },
- { -77481744, -3317325, -3355980, },
- { -83693880, -1409286, 2289218, },
- { -45268420, -208306, 1228361, },
- { -3515968, -1600412, -4469987, },
- { -11599633, -2076080, 1337346, },
- { -12450573, -971736, 2001992, },
- { -54461260, -667867, 1289564, }
- },
- {
- { 75215616, -398358, 100395, },
- { -19555522, 3034395, -2166811, },
- { -88683560, -1553704, 2289755, },
- { 13752485, -4630512, 2234457, },
- { -65350612, 8352638, -1596654, },
- { 59645284, 3656628, -1658931, },
- { 39149164, -894964, 359167, },
- { 64903936, -2723546, 2352568, },
- { 34983044, -2870112, 938987, },
- { -69646112, 9290014, -470836, },
- { -67845448, -2728378, -355945, },
- { -34161096, 1496796, -13422, },
- { -7281044, 4550518, -2243047, },
- { -14781130, -1541356, 2099165, },
- { -7865696, 2147, 2094333, },
- { -36711768, 1573569, -861678, }
- },
-};
-
-const Word32 FASTCONV_HOA2_latency_s_fx = 20833;
-
-const Word32 leftHRIRReal_HOA2_fx[BINAURAL_CONVBANDS][HOA2_CHANNELS][BINAURAL_NTAPS_SBA] /* Q29 */=
-{
- {
- { 9749039, 528896224, 129120672, },
- { 41363756, -13267691, 139807088, },
- { 318364, 71011376, 4832, },
- { 4946192, 29243896, 2285460, },
- { 21379810, -23943906, -862215, },
- { 5953899, -15082851, 6302328, },
- { -30930744, 44672492, 2427730, },
- { 5499706, 15232638, -5888937, },
- { -57767848, 97858144, 28123982, },
- },
- {
- { -81891064, -177112640, -130106368, },
- { -112628000, -683750720, -60143500, },
- { -6127308, 43266964, -7260642, },
- { -18372260, 7399692, 4738423, },
- { -6642167, 7949985, 20505784, },
- { 1736777, 44741748, 36746668, },
- { 1779190, -17669496, -35038880, },
- { 1783485, 40972376, 4261145, },
- { -8154533, -118214144, -70245800, },
- },
- {
- { -12397960, -300077568, -81048184, },
- { -145049632, -316735584, -192968592, },
- { -1750199, 52096344, -8036958, },
- { -31417148, 57874148, -7852811, },
- { -45173928, 93462784, -3615289, },
- { -19227494, 151273584, -3310346, },
- { 62551368, -165313824, 10894185, },
- { -7194607, 46335716, 6969122, },
- { 112488416, -297701888, -26124676, },
- },
- {
- { 140419120, 163395056, 61220464, },
- { 134698768, 418562272, 37772088, },
- { 12770012, 47600584, -16543677, },
- { 1829119, 44066900, -22123914, },
- { -33349348, 25675314, -30729954, },
- { -13965623, 83586504, -35370128, },
- { 68233608, -88068304, 41433548, },
- { -11814381, 19326816, -3059091, },
- { 176067360, -24274618, 67555000, },
- },
- {
- { 193003488, 110340392, 58983324, },
- { 400174976, 27615030, 115993112, },
- { 35544612, -41037340, 13286481, },
- { 77038832, -66177928, 4207994, },
- { 52810916, -74782896, -8038032, },
- { 35016868, -65575024, 16007343, },
- { -10479720, 87943752, -12978317, },
- { 4599910, -13000866, 7131793, },
- { 59668372, 167397968, 11380053, },
- },
- {
- { 88669064, -136434464, -13708462, },
- { 418985344, -219153392, 13563507, },
- { 23226110, -44473848, 13935021, },
- { 115305912, -11606612, 14061723, },
- { 143302128, 39595840, 14180908, },
- { 59085864, -36939404, 20780126, },
- { -87146496, 9683541, -25189446, },
- { 25008520, -13014288, 2070174, },
- { -136447888, -56905632, -32251446, },
- },
- {
- { -95292440, 37550900, -37873020, },
- { 206629808, 110094504, -59848220, },
- { -19184546, 36173288, -7810935, },
- { 67421856, 33315524, 4643397, },
- { 158025808, 25906168, 14119168, },
- { 48429516, 45377940, -8228084, },
- { -113663088, -53688164, 4163434, },
- { 42060616, -12084964, -2563022, },
- { -283383008, -24645060, -13195213, },
- },
- {
- { -248765584, 30539902, -11682848, },
- { -81042808, 14250165, -36664524, },
- { -54503672, 436476, -13678397, },
- { -51027432, -48062296, -1750736, },
- { 72271416, -56135760, 543850, },
- { 31731756, 13630079, -15043123, },
- { -97211216, -3755949, 17327508, },
- { 44042744, -1282048, 987843, },
- { -314783520, 26202522, 8887361, },
- },
- {
- { -318032128, -23928874, 15863999, },
- { -309716544, -19851338, 11929272, },
- { -64207612, -32423782, -834834, },
- { -181705568, 34351684, -7874823, },
- { -67236640, 50014356, -11543261, },
- { 24249922, -23637352, 232465, },
- { -61846456, 13557064, 2641405, },
- { 22053046, 4669167, 2681670, },
- { -235416288, -29829084, 11263552, },
- },
- {
- { -321614656, -7707319, 17708688, },
- { -441777120, -23812372, 24769076, },
- { -63085552, 4299799, 10666551, },
- { -257657776, 10072235, -4187056, },
- { -182311168, -965831, -9856950, },
- { 15317464, -2199023, 7827578, },
- { -19076098, 8660265, -5299453, },
- { -16952772, -20622286, 530428, },
- { -101074536, 27609660, 8037495, },
- },
- {
- { -299877312, 14833206, 4658429, },
- { -501736992, 30001958, 10576894, },
- { -77060304, 21843666, 5098126, },
- { -255281040, -25045028, 6628745, },
- { -224941392, -25129854, 4932233, },
- { -10722923, 24297704, 745714, },
- { 21924198, -14825690, -2221035, },
- { -55880744, 8342974, -3590593, },
- { 24230058, -11106785, 2217814, },
- },
- {
- { -273169056, 1380832, -3224447, },
- { -518796608, -5689758, 501974, },
- { -107435384, -11543261, -1205275, },
- { -200896560, 11400454, 8522826, },
- { -205748256, 6176163, 10351408, },
- { -54589572, -4134980, -2393908, },
- { 52939232, 5274220, -91268, },
- { -76335528, 8250096, -39192, },
- { 108715824, 4263829, -4214437, },
- },
- {
- { -241493120, -13797582, -1484985, },
- { -506164576, -10208600, 1411971, },
- { -135031088, 2689187, -19864, },
- { -132891120, -9751186, 4269735, },
- { -159797472, -4487704, 4820027, },
- { -104600168, 5526013, 3636227, },
- { 68510096, -2899103, -59056, },
- { -75732088, -3214783, 3774203, },
- { 153326032, -4451197, -6740415, },
- },
- {
- { -201953664, 13988172, 2484102, },
- { -468066080, 11743514, 3473555, },
- { -135009072, 6645925, 2597918, },
- { -76960984, 1656247, 299037, },
- { -114370144, 4749160, 1355599, },
- { -142927920, -12561169, 4122095, },
- { 65720516, -3194919, 500901, },
- { -61929132, -2405182, 1045288, },
- { 170837152, 9755481, -3670587, },
- },
- {
- { -157771872, -7571491, 2987150, },
- { -409905760, -14218489, 3198140, },
- { -89839440, -11615202, 2513093, },
- { -38160248, -4485557, -2508798, },
- { -80043160, -2543695, -238908, },
- { -144927232, 1413044, 105227, },
- { 47504484, 7495792, 11811, },
- { -43118788, -5166309, -1449552, },
- { 169407472, 267362, 73551, },
- },
- {
- { -114906480, 5610838, 980863, },
- { -342850592, 13112535, 2252174, },
- { -257698, 17945448, -1500554, },
- { -6269579, 9542880, -1308891, },
- { -49730352, 6022081, -804770, },
- { -96365104, 14963666, -2623151, },
- { 26508002, -3325915, 172872, },
- { -27319214, 7948911, 848256, },
- { 152526096, -7221988, -119722, },
- },
- {
- { -76454176, -6929930, -69256, },
- { -279726400, -11549704, 1301375, },
- { 114208552, -28898688, -3926137, },
- { 26892938, -5211406, -841277, },
- { -12193949, -7994545, -1019518, },
- { -7168301, -27730456, -2589865, },
- { 18780818, -313533, 1094143, },
- { -20258824, -345208, 3060164, },
- { 125984272, 8527658, -1406065, },
- },
- {
- { -41962904, 7059316, 128849, },
- { -228333344, 8655970, 1010928, },
- { 219166272, 28090696, -1050656, },
- { 62499828, 7261179, -2414309, },
- { 36138928, 10872173, -2019708, },
- { 89954328, 27792196, 466541, },
- { 36580772, 5089000, 663036, },
- { -18362596, -4509179, 2020245, },
- { 97064112, -6015639, -1931662, },
- },
- {
- { -8992588, -6510634, 267362, },
- { -190033520, -4474819, 350577, },
- { 278282752, -5998459, 1591285, },
- { 95040112, -10720775, -1452236, },
- { 88483840, -14305462, -1738388, },
- { 153659440, -6827925, 2048699, },
- { 83558592, -11030550, -993211, },
- { -8813273, 2103460, -952409, },
- { 71897216, 1779190, -978179, },
- },
- {
- { 24793772, 6630893, -18254, },
- { -160462656, 4852776, -434865, },
- { 274668512, -17280800, -1229971, },
- { 113483776, 2928631, 500901, },
- { 129502928, 8119099, -592169, },
- { 157575904, -15821586, -1637993, },
- { 150618064, 16231755, -2345052, },
- { 22151294, 10189273, -2437931, },
- { 53149148, 1124208, 1559073, },
- },
- {
- { 59917480, -7263864, -350040, },
- { -132440688, -8647917, 547608, },
- { 222252208, 20497194, -5111011, },
- { 109086800, 9399536, -1176284, },
- { 144204064, 1976759, -942208, },
- { 105299712, 19787452, -5240397, },
- { 215895664, -14326937, -2713883, },
- { 77865072, -19022410, -732829, },
- { 40236328, 4224101, 2659659, },
- },
- {
- { 94547264, 7210713, -514322, },
- { -99481104, 9044127, 2510945, },
- { 154022352, -10442139, -4019553, },
- { 82563768, -8490077, -3492345, },
- { 128416840, -6362457, -1036161, },
- { 22603340, -12644921, -2655901, },
- { 252400736, 6924561, -1945620, },
- { 145012592, 13919989, -82678, },
- { 31737660, -10970420, -1664837, },
- },
- {
- { 125645512, -7259569, -85899, },
- { -56863756, -4744328, 1486596, },
- { 99314136, 4427575, -335007, },
- { 41075992, 3167539, -968515, },
- { 89500672, 12156905, -797253, },
- { -60453812, 10972568, 2783139, },
- { 242034288, 3270618, 1074816, },
- { 200968496, -7325604, -2245731, },
- { 27202176, -1326071, -5287642, },
- },
- {
- { 150700208, 4634807, 561030, },
- { -1191853, 8886824, -2146410, },
- { 70675296, -2062658, 1005022, },
- { -8423505, -8847096, 2709588, },
- { 41706816, -12612171, -1906429, },
- { -119930520, -13067438, 3780645, },
- { 186179856, -22568980, 1925219, },
- { 224940864, 2801929, -3001645, },
- { 21487184, 13031468, 194347, },
- },
- {
- { 169636176, -1192927, 61203, },
- { 66094176, -19737522, -2557653, },
- { 63994476, -1108102, 530428, },
- { -57278220, 13596256, 2472291, },
- { -166430, 4035659, -1475321, },
- { -140860976, 5550172, 35970, },
- { 109537232, 28074054, -2848100, },
- { 204103296, 8996883, -2008434, },
- { 1818919, 4411469, 6263673, },
- },
- {
- { 185916256, 1898376, -1018981, },
- { 133667976, 19608674, 745714, },
- { 64880312, 1573569, 387621, },
- { -92978528, -8923868, 155156, },
- { -29435022, -97174, 1298154, },
- { -120988152, 12420509, -1513976, },
- { 49056580, -7981660, -5492190, },
- { 139661056, -18445274, -1324997, },
- { -36724656, -22808960, 2743947, },
- },
- {
- { 203936864, -5097053, -1052804, },
- { 185728880, -7454453, 2333778, },
- { 58489400, 863825, 1222455, },
- { -104674256, -2811593, -115964, },
- { -48657148, 3922916, 2414309, },
- { -75116832, -19784230, 1840930, },
- { 26552024, -8952859, -2214593, },
- { 48134772, 21822728, -685047, },
- { -79321064, 15090904, -3412889, },
- },
- {
- { 225228624, 6438156, -157303, },
- { 214688240, -3755412, -329102, },
- { 38261716, -7221451, 1816234, },
- { -90862184, 8681203, 1593433, },
- { -62400508, -5262409, 942745, },
- { -28787556, 9220758, 4382478, },
- { 34985728, 13614509, 2888903, },
- { -46410880, -20306068, -564251, },
- { -104572792, 3867618, -2895345, },
- },
- {
- { 247859344, -4959614, 399432, },
- { 227028208, 1579474, -3234110, },
- { 9644886, 10700911, 573378, },
- { -60634200, -7675107, 1981591, },
- { -72839960, 2655364, -490163, },
- { -729608, 4192962, 1942936, },
- { 48766132, -369367, 4420595, },
- { -121884192, 11087995, -140660, },
- { -103912440, -11213086, 2019172, },
- },
- {
- { 268726976, 2394444, -181999, },
- { 235657344, 4387846, -2889439, },
- { -13455596, -6493991, -1464047, },
- { -25911538, 8749385, 2221035, },
- { -79648024, 3604551, 1035087, },
- { 8626979, -6051072, -2256469, },
- { 45754824, -10596758, 946503, },
- { -166654400, -1146756, 1919850, },
- { -84939960, 6331319, 4582730, },
- },
- {
- { 286211264, -2729452, -953483, },
- { 248872416, -8239358, -294742, },
- { -18828062, -4189741, -1525787, },
- { 4614406, -1637456, 1565516, },
- { -82404856, 1227824, 2612951, },
- { 11445014, 180926, -4145717, },
- { 21737904, 12543452, -3052111, },
- { -182342832, -2155000, 4099010, },
- { -60702920, 1326608, 2131378, },
- },
- {
- { 300383040, 3500935, -717796, },
- { 266191872, 3493956, 970663, },
- { -5042829, 10755135, 1197222, },
- { 30651570, 2687576, -321586, },
- { -79362408, -2752537, 858457, },
- { 18897856, 9425306, -1945083, },
- { -14038101, -5513665, -3498788, },
- { -178168672, -1279363, 3287261, },
- { -37468756, 3229816, -508954, },
- },
- {
- { 311666464, -2198487, -265214, },
- { 283031360, -1918777, 70330, },
- { 18464064, -6590091, 3395172, },
- { 58261768, -4366908, -1492501, },
- { -66921496, -2005750, -1306744, },
- { 31464394, -7336341, 1821066, },
- { -51994876, 2715493, -710817, },
- { -161833296, -2287607, 964220, },
- { -14486388, -4322885, -715649, },
- },
- {
- { 320947872, 1425929, -280247, },
- { 296547616, 1778653, -544387, },
- { 40380208, -2829847, 1201517, },
- { 91574608, 9750650, -1528472, },
- { -45061724, 9525701, -755377, },
- { 41256384, -2624225, 1612223, },
- { -89262840, -4065724, 2160369, },
- { -137527536, 5949067, 293668, },
- { 10603201, 5882495, -712428, },
- },
- {
- { 329596320, -1290101, -507343, },
- { 306918912, -2180233, -387621, },
- { 56913684, -266288, -2163590, },
- { 127935800, -9903658, -440771, },
- { -20552492, -7883413, 1342714, },
- { 43283608, 3977677, -1141388, },
- { -126284920, 9459129, 2925410, },
- { -109121696, -6815576, 498753, },
- { 38045356, -5915244, -879931, },
- },
- {
- { 338755872, 1985349, -662499, },
- { 316944416, 1728188, -217970, },
- { 70156144, 6400038, -1461900, },
- { 158782800, 7256347, 613643, },
- { -2733747, 1930588, 1903207, },
- { 38901128, 146029, -1503239, },
- { -160943168, -12184822, 650151, },
- { -80698680, 6174553, 687195, },
- { 63547800, 6309844, -729608, },
- },
- {
- { 348667584, -2622078, -528281, },
- { 330204608, -2903398, -394600, },
- { 80498424, -3464428, 624918, },
- { 176407184, -212064, 684510, },
- { 4530117, 2791192, 780610, },
- { 31255550, -34360, 15569, },
- { -186284000, 3796214, -1058710, },
- { -56010132, -4271882, 649077, },
- { 80058728, -2265595, -424128, },
- },
- {
- { 358330208, 2345589, -273267, },
- { 348918848, 4343823, -594853, },
- { 86404544, -1669669, 192200, },
- { 179864640, -3940633, -735513, },
- { 5645735, -2221572, -545461, },
- { 22848690, -2136746, 548682, },
- { -196971488, 3864397, 570157, },
- { -36806796, 2615098, 387621, },
- { 82155208, -1394791, -471373, },
- },
- {
- { 366297888, -1524177, -97711, },
- { 372433248, -5732171, -681826, },
- { 87542704, 938987, -1042066, },
- { 175921328, 2347200, -1906429, },
- { 9195525, -777926, -1210107, },
- { 15777025, 1827509, 136365, },
- { -195313632, -2768643, 2332167, },
- { -22068616, -1083942, -295816, },
- { 69850128, 4421669, -359704, },
- },
- {
- { 371749280, 51003, -288300, },
- { 397624864, 6229850, -351650, },
- { 84823456, 1105954, -449361, },
- { 173494128, 2942590, -1049583, },
- { 21438330, 6756521, -438624, },
- { 11614665, -5369, 123480, },
- { -188027232, -225486, 1703491, },
- { -8943196, 3022583, -632434, },
- { 48287780, -6484864, -573915, },
- },
- {
- { 375091296, 123480, -765041, },
- { 420282944, -3861713, -207769, },
- { 79324824, 1246077, 565862, },
- { 177637696, -3994320, 930934, },
- { 42110008, -7602629, 1375463, },
- { 11107859, -586800, 499290, },
- { -180578672, 130997, 265751, },
- { 4147328, -2578054, -663572, },
- { 25565792, 4443681, -760746, },
- },
- {
- { 377552320, 1293322, -671089, },
- { 437537440, 1720134, -741956, },
- { 72594072, -5038534, -627602, },
- { 187999840, -449898, 470836, },
- { 65652872, 2403034, 1189706, },
- { 13804562, -1540283, -333397, },
- { -174902880, 2426657, 401579, },
- { 16455093, 4543002, -142808, },
- { 8400419, -1613297, -322659, },
- },
- {
- { 379801824, -1159104, -98784, },
- { 449000192, -762357, -1505923, },
- { 66756140, 1897302, -2478733, },
- { 202493216, -1679332, -1592359, },
- { 87476672, -1024350, -1014686, },
- { 18439368, -616328, -1715839, },
- { -170510208, -614717, 1108638, },
- { 25653302, -1463510, 585726, },
- { -814970, -1081258, 744103, },
- },
- {
- { 381884864, 102005, 62277, },
- { 456018144, 2931852, -1144609, },
- { 61858268, 3501472, -1437203, },
- { 218079648, 5225365, -1717987, },
- { 106423384, 4740570, -1769527, },
- { 22399866, 3916473, -964757, },
- { -165222560, -275415, 569620, },
- { 30270930, -994285, 135291, },
- { -3977677, -1443109, 878321, },
- },
- {
- { 384165504, 471373, -382252, },
- { 459639360, -1001264, -163209, },
- { 53535156, 277025, 810675, },
- { 229669088, -4628364, -55298, },
- { 121935192, -5230734, -398358, },
- { 20921322, 307627, 477815, },
- { -155960992, -2059974, -151398, },
- { 32400696, 1212255, -745177, },
- { -3812857, 365609, 27380, },
- },
- {
- { 387472608, 773094, -761820, },
- { 460596576, -1338956, -388158, },
- { 37011880, -8176544, 218506, },
- { 232414640, -2472828, 367757, },
- { 132566312, 363998, 61740, },
- { 10568841, -6884296, -514322, },
- { -141396224, 5043366, 133144, },
- { 35882304, 890132, -1221381, },
- { -1747515, 906775, -19864, },
- },
- {
- { 392298016, -2099165, -467078, },
- { 460876832, 654983, -1044751, },
- { 12603045, 8705899, -2084670, },
- { 225417056, 5970542, -1477469, },
- { 137805104, 1513976, -1142461, },
- { -7254737, 6248641, -2473364, },
- { -123040072, -5198521, 973884, },
- { 43224012, -3112778, -925029, },
- { 770410, 405874, -242129, },
- },
- {
- { 398138112, 1664837, -5906, },
- { 462098752, -161061, -1531693, },
- { -15297063, -1983201, -1540283, },
- { 212177296, -1755568, -2101313, },
- { 138299024, 763430, -1508607, },
- { -28484760, -306016, -1535451, },
- { -104152424, 1582159, 476741, },
- { 53592600, 3449396, -330712, },
- { 2964601, 1447941, -306016, },
- },
- {
- { 404148384, -311922, -176094, },
- { 464220992, -1423782, -1687922, },
- { -42546484, -2144799, 3101503, },
- { 196518384, -3173444, 1027034, },
- { 134805600, -4870493, 1206886, },
- { -49714248, -2751464, 2964601, },
- { -87270512, -921807, -1372779, },
- { 64223720, -2987150, 277025, },
- { 4530654, -2358474, 919123, },
- },
- {
- { 409720000, -462783, -1084479, },
- { 466352928, 2785286, -731755, },
- { -65998616, -1939178, 7927436, },
- { 181019984, 2525978, 6302328, },
- { 129010616, 4121021, 6409165, },
- { -67529768, -2459406, 6993818, },
- { -73590504, 3739306, -1999844, },
- { 73398304, 1053341, 575526, },
- { 5841693, 808528, 2232309, },
- },
-};
-
-const Word32 leftHRIRImag_HOA2_fx[BINAURAL_CONVBANDS][HOA2_CHANNELS][BINAURAL_NTAPS_SBA] /* Q29 */=
-{
- {
- { -36158792, 332589920, -120427664, },
- { -74782896, 414234016, -138564768, },
- { -1993402, 15385110, -4536559, },
- { -12910672, 37127308, -11034308, },
- { -13785771, -13972065, 10325638, },
- { -5334350, -5939403, 4061429, },
- { 18512920, 23427972, -15831786, },
- { 3295314, -46312096, 20517058, },
- { 24953760, 133811320, -62957780, },
- },
- {
- { 6790344, 394416512, -99059128, },
- { -59612536, 289198400, -180918512, },
- { -1410360, -11168526, -15667504, },
- { -16600585, 2608119, -22172232, },
- { -27442156, -41982232, 5173288, },
- { -8725226, -15491410, 4438849, },
- { 45414448, 82660944, -348966, },
- { -9163313, -111122616, -6783901, },
- { 88319024, 252158064, -29414620, },
- },
- {
- { 119840864, -172064448, 92515208, },
- { 175912736, -498648928, 68749008, },
- { 10392747, -39891656, -8267812, },
- { 18903224, -44296144, -11482058, },
- { -1028108, 10605348, -22429930, },
- { 5090610, -2387465, -3582003, },
- { 21121038, 29187524, 28092308, },
- { -8322036, -78509320, -20295332, },
- { 75277352, 6205154, 71450536, },
- },
- {
- { 84888952, -211159920, 71064528, },
- { 293597536, -167443600, 152749440, },
- { 16649441, 19593640, 12747463, },
- { 57636852, 42297376, 10699837, },
- { 63173064, 90405304, -7914014, },
- { 33967284, 71368936, 15578920, },
- { -59171228, -125028112, -14110578, },
- { 14133127, -4103305, 8483097, },
- { -83939768, -238660064, 3744138, },
- },
- {
- { -84856208, 160208720, -34959960, },
- { 96670048, 340704192, -7391102, },
- { -6153078, 38164004, 9969156, },
- { 40164924, 26005490, 17468706, },
- { 94673424, -9172976, 21439402, },
- { 38052336, 47195784, 23022098, },
- { -105601432, -51099912, -31717796, },
- { 23212688, 3580392, 1049583, },
- { -236426672, 242666, -52827024, },
- },
- {
- { -241306288, 23081692, -47294568, },
- { -241835648, -76635640, -87011208, },
- { -44483512, -43661564, -12531641, },
- { -49227304, -61918932, 1545115, },
- { 32010928, -61011620, 12165495, },
- { 1369558, -61596812, -11496017, },
- { -72386304, 68689408, 8167954, },
- { 21155936, -1467805, -432718, },
- { -245244240, 94062472, -9156333, },
- },
- {
- { -279724256, -83891984, 187905, },
- { -487956064, -96942784, -27740120, },
- { -58395448, -28610388, -14624901, },
- { -154616144, 24776592, -8514773, },
- { -93974960, 58441620, -6685654, },
- { -32097364, -23796804, -18185966, },
- { -4830765, -6265821, 21151104, },
- { 2374043, -548145, 2821257, },
- { -121094456, -55359980, 19837918, },
- },
- {
- { -199590352, 46742664, 28198070, },
- { -542467776, 70228080, 36100812, },
- { -38022272, 34528316, 4661114, },
- { -204685792, -340913, -7135015, },
- { -201704016, -17952964, -12763569, },
- { -43963284, 32239098, 4910222, },
- { 53434760, -29083372, 1289564, },
- { -29628296, -16311749, 2477659, },
- { 61041148, 25417616, 12723304, },
- },
- {
- { -71485976, 3439732, 18509162, },
- { -449389952, 750546, 36375688, },
- { -10520522, -7513509, 13849659, },
- { -164350688, -39578124, -1079111, },
- { -224162400, -27566710, -6024766, },
- { -51943336, 8273181, 13044889, },
- { 88907968, -7683160, -11099806, },
- { -59125056, 6847252, -629750, },
- { 213081920, -12068321, 914291, },
- },
- {
- { 40884868, -8075076, -3076807, },
- { -300000768, -8685498, 6082211, },
- { 957241, -27275726, 4496831, },
- { -53774600, 43806520, 8965744, },
- { -154083568, 52445308, 9099962, },
- { -69969312, -27617176, 1512902, },
- { 104226512, 15185931, -3274913, },
- { -69255272, -3904662, -2665027, },
- { 282055872, -6979859, -5660230, },
- },
- {
- { 122261072, -14564234, -10473278, },
- { -150754960, -24950538, -8772471, },
- { 3320010, 4095788, -5724655, },
- { 66658428, -11882027, 7962333, },
- { -44114684, -12880607, 12540231, },
- { -90301152, 203474, -4349728, },
- { 99475200, 3833258, 1317481, },
- { -53058952, -18649822, -327491, },
- { 271441408, 13378286, -8655433, },
- },
- {
- { 185318720, 23846196, -4557497, },
- { -15679852, 37565396, -4328254, },
- { 21893596, 13773960, -2983392, },
- { 150678720, 46171, -1040993, },
- { 48956720, -813896, 947577, },
- { -95590400, 9763534, 1977296, },
- { 79202416, -6300180, 253403, },
- { -18629420, 9327058, 4054449, },
- { 217019872, -10098542, -7290707, },
- },
- {
- { 240183168, -16076599, 1266479, },
- { 105487080, -26186416, 283468, },
- { 70551816, -16828218, 678605, },
- { 189024736, -49392, -4967130, },
- { 105314744, -5423470, -4425964, },
- { -74048992, -757525, 2923262, },
- { 50586124, 7173133, 416612, },
- { 16224239, 1275605, 724239, },
- { 151719184, 2614025, -1576790, },
- },
- {
- { 286097440, 4743792, 1162862, },
- { 210780352, 18678812, -364535, },
- { 145435648, 16265578, -83752, },
- { 195911168, -2299418, -5272073, },
- { 130978784, 1410360, -3964255, },
- { -19889456, 9549323, -2411087, },
- { 22510998, -8150774, -128312, },
- { 42030012, 3780645, -2588255, },
- { 89983856, -10215043, 2976949, },
- },
- {
- { 319378048, -1308891, -1722282, },
- { 293717792, -12847321, -1720134, },
- { 224754560, -12506408, -3513820, },
- { 192708208, -6009196, -2883534, },
- { 143904496, -4290673, -3185792, },
- { 58067420, -21905944, -4212826, },
- { 7643431, 352724, -487479, },
- { 56253336, -7172059, -274341, },
- { 34664680, 15397458, 1792075, },
- },
- {
- { 340915712, 3598109, -2687576, },
- { 349467520, 7507603, -2401961, },
- { 278644064, 11220065, -4716948, },
- { 190083440, 34897, -506806, },
- { 157392304, 4962298, -2032593, },
- { 131253128, 19497540, -2294050, },
- { 14569066, 4827007, 163746, },
- { 60362544, -1574642, 1777043, },
- { -10620380, -9889162, -326418, },
- },
- {
- { 355079968, -3677566, -1744294, },
- { 381102656, -4260071, -2215130, },
- { 281619392, -1296006, -1116692, },
- { 185217248, 2087354, -1416802, },
- { 170087152, -3240553, -1831804, },
- { 165204304, -6737730, 682900, },
- { 41253696, -6271189, -472446, },
- { 62204012, 4499515, -101469, },
- { -42043436, 3895535, -408559, },
- },
- {
- { 366027840, 2317672, -1134945, },
- { 397606592, 1345399, -2006824, },
- { 223802160, -20542828, 1700807, },
- { 171571600, -425202, -704912, },
- { 171730512, 1431298, -1205275, },
- { 138801536, -16011638, 1830193, },
- { 75993000, 6881612, -2061047, },
- { 72658496, 653909, -2717104, },
- { -58964532, 883153, 773631, },
- },
- {
- { 375740384, -1729261, -1239098, },
- { 409371584, -2474438, -2047626, },
- { 121028960, 34863860, -778463, },
- { 143039056, 6924024, 1210644, },
- { 151491552, 5535676, 226560, },
- { 58364848, 31437014, -1287953, },
- { 100377680, -5044439, -2580739, },
- { 95764888, -8861591, -3254512, },
- { -64630132, -1622961, 2194728, },
- },
- {
- { 383609824, 1746441, -1296006, },
- { 424501696, 6113886, -1065689, },
- { 11184632, -24941948, -3841848, },
- { 99827928, -15702937, 8590, },
- { 106059384, -15424838, -74088, },
- { -42509976, -23139674, -3684545, },
- { 95006288, -2285996, -1535988, },
- { 122857000, 11319923, -1122060, },
- { -64195804, -1420560, 2232309, },
- },
- {
- { 387407136, -675384, -1110786, },
- { 446154208, -5822902, 92879, },
- { -67740760, 4913980, -1846299, },
- { 51632488, 11216307, -2097018, },
- { 45219028, 14675366, -887448, },
- { -123440048, 5479842, -469762, },
- { 48671644, 12622372, 137439, },
- { 134595152, 173409, 71404, },
- { -62093952, 6441377, -1045288, },
- },
- {
- { 385254816, -637803, -812286, },
- { 473090112, 2037425, -1216550, },
- { -99903624, 4727149, 2258616, },
- { 11749957, 366146, 526134, },
- { -13227962, -10634339, -147103, },
- { -159256848, 3637301, 4543539, },
- { -32711544, -19771882, 2049236, },
- { 113054816, -12186970, -1802276, },
- { -60602524, 2531346, -3322157, },
- },
- {
- { 377351520, 2255932, -482647, },
- { 501648416, -3520263, -4013647, },
- { -94568200, -5376226, 3605625, },
- { -11883638, 1945620, 3943854, },
- { -54005992, 6682969, 72478, },
- { -146007408, -3005403, 4282620, },
- { -125467272, 25107306, 1941325, },
- { 54234700, 12469901, -1246077, },
- { -62698468, -10954851, 1609002, },
- },
- {
- { 366280192, -4061965, -805843, },
- { 525283616, 9440875, -3562675, },
- { -73869144, 2709588, 2083059, },
- { -15278272, -3664681, 2474438, },
- { -69738456, 3156801, 746787, },
- { -94421632, 8872329, -543850, },
- { -197179808, -18215494, -1489817, },
- { -32488206, -20340428, 1323387, },
- { -73730096, -3738769, 6418292, },
- },
- {
- { 356168224, 2472828, -1493038, },
- { 533570240, -4927401, 20401, },
- { -58116276, -1755568, 771484, },
- { 5287105, -4551055, -365609, },
- { -63846300, -6586333, 2798171, },
- { -23891292, -20171314, -2127083, },
- { -223493984, -3424163, -3262028, },
- { -127029024, 21662742, 1534377, },
- { -90670520, 17609366, 2166811, },
- },
- {
- { 349922272, 618475, -1319092, },
- { 518373568, -8857833, 1140851, },
- { -56720948, -883690, 1331977, },
- { 48408040, 13831405, -606664, },
- { -47076064, 2146947, 2979097, },
- { 40385040, 19214610, 1528472, },
- { -205683296, 20291572, 840740, },
- { -203235712, -13549011, 1227824, },
- { -96553552, -4800163, -4361540, },
- },
- {
- { 346649504, -1439888, -318364, },
- { 483399104, 15989626, -1763621, },
- { -66776004, 6590091, 978179, },
- { 103736880, -14713484, 507343, },
- { -28132036, 848256, 367220, },
- { 75919456, 1214402, 2411087, },
- { -171571056, -12617003, 5709622, },
- { -240693728, 845035, 2171106, },
- { -76186280, -17254494, -3004330, },
- },
- {
- { 342597184, -1294933, 166430, },
- { 443682464, -9204115, -4066260, },
- { -75551160, -3277060, -437550, },
- { 156191856, 10443750, 1022202, },
- { -9059697, 4929549, -889058, },
- { 78208672, -9521942, -970126, },
- { -153513408, -5825587, 4600984, },
- { -233576432, 5917928, 2312303, },
- { -33381560, 19739132, 3035468, },
- },
- {
- { 334624672, 3918621, -566936, },
- { 413670304, -577136, -2447595, },
- { -70139504, -1757715, -1557999, },
- { 193998848, -3168612, 186831, },
- { 10993506, -6357089, 403727, },
- { 61479236, 9741523, -4020090, },
- { -164081168, 14096083, -239444, },
- { -189978208, -16337519, 2595771, },
- { 13108777, -5794448, 4198331, },
- },
- {
- { 322606816, -3232500, -1260573, },
- { 396880736, 2692408, 843424, },
- { -46797428, 11288785, -991601, },
- { 214848752, 153545, -1243930, },
- { 32719598, 4962835, 1389959, },
- { 44736380, 1035087, -4147328, },
- { -192954096, -10519986, -3456375, },
- { -127260952, 14543833, 3575024, },
- { 47788492, -2278480, -68719, },
- },
- {
- { 308399040, 1808181, -802085, },
- { 386778464, 3155727, 1571958, },
- { -13718662, -11858405, 1543504, },
- { 224974688, 794569, -2326799, },
- { 56534116, -457414, -206695, },
- { 37853156, -7458211, -425739, },
- { -221009888, -892279, -2015950, },
- { -63788316, -7458748, 1576790, },
- { 68279776, -1187559, -2947421, },
- },
- {
- { 293636704, -2662343, -128312, },
- { 375935808, -5361193, -153008, },
- { 14427869, 3656628, 2450816, },
- { 232371696, 2226941, -2764348, },
- { 82602960, 5332202, -2313377, },
- { 36209260, 2982318, 2959233, },
- { -236805168, 4200478, 2068027, },
- { -9079561, 6485938, -1704028, },
- { 79947592, 3765076, -2320893, },
- },
- {
- { 279406944, 3427384, -205085, },
- { 362203712, 3554086, -1072668, },
- { 28135258, 5444945, -106300, },
- { 240036064, -4869419, -1695975, },
- { 108520400, -9707163, -1090922, },
- { 30004104, 7593502, 1940788, },
- { -240686752, -710817, 3923990, },
- { 35410396, -11063299, -1749125, },
- { 87226488, -2617246, -1141924, },
- },
- {
- { 266644992, -2608656, -476205, },
- { 347585248, -2545305, -769873, },
- { 28486370, -4051228, -3284576, },
- { 243368416, 2174864, -173946, },
- { 127333968, 4950487, 1104880, },
- { 16089484, -7972533, -1418950, },
- { -236118512, -1354525, 3016678, },
- { 69019048, 5398774, -811212, },
- { 90053120, 663572, -781684, },
- },
- {
- { 255541424, 1991791, -520765, },
- { 335333856, 1934346, -435939, },
- { 22628572, -4581657, -1842541, },
- { 235510240, 2966749, 518080, },
- { 133714680, 2567317, 1082332, },
- { -433255, 551903, -1525250, },
- { -223574528, 2010582, 192737, },
- { 91384560, -5077188, -465467, },
- { 84883048, 1163399, -483721, },
- },
- {
- { 245329600, -1373853, -308164, },
- { 327304960, -1559610, -599685, },
- { 13842680, -357556, 1105954, },
- { 214584080, -8028905, 86436, },
- { 130002752, -5317707, -677531, },
- { -14326937, 83752, 653909, },
- { -200260368, 7125888, -1465658, },
- { 103070624, -522375, -449898, },
- { 68426880, -4463008, 12348, },
- },
- {
- { 234616880, 2107218, -43487, },
- { 322709344, 124554, -736587, },
- { 1589138, 5553930, 565862, },
- { 186385472, 9103183, -1245004, },
- { 125093072, 1516660, -1810866, },
- { -23804320, 2353642, 1084479, },
- { -166164768, -13082470, 473520, },
- { 106302048, -217433, -797790, },
- { 41465760, 7704098, -18254, },
- },
- {
- { 222323072, -2915746, -19864, },
- { 318206080, -789200, -656056, },
- { -13198435, -4537096, -923955, },
- { 161084352, -4031901, -1812476, },
- { 127196528, 2785823, -1559073, },
- { -28687698, -1585380, 195958, },
- { -128549984, 8349954, 2117956, },
- { 105128448, -2126546, -1066763, },
- { 10321343, -6656126, -12885, },
- },
- {
- { 208615696, 3557844, -220654, },
- { 309694528, 1555852, -404264, },
- { -28428388, 894427, -419296, },
- { 145905952, -1242856, -609885, },
- { 137842144, -5847598, -500901, },
- { -29700236, -334471, -172336, },
- { -96008088, -2522757, 846645, },
- { 103137200, -988379, -1157494, },
- { -16428787, 5519570, 15569, },
- },
- {
- { 194701072, -3233574, -540629, },
- { 294416256, -4551055, -296890, },
- { -42549168, -2559801, 639950, },
- { 140792256, 2094333, 1074816, },
- { 151768576, 4850629, 831613, },
- { -28312962, 867583, 33286, },
- { -71958416, 2250026, -940061, },
- { 101641472, 158377, -641024, },
- { -32029182, -1188095, -28454, },
- },
- {
- { 182000320, 1571421, -382252, },
- { 272313280, 6266358, -755914, },
- { -54702852, 4699768, -196495, },
- { 140131904, 2928631, 517544, },
- { 161241664, 1787243, 353798, },
- { -26629334, 1044751, -400506, },
- { -54589572, -4306242, -817118, },
- { 99131064, -478352, -254477, },
- { -34484292, -2201171, 446140, },
- },
- {
- { 170964928, -1386738, 183610, },
- { 245976000, -6084895, -1145683, },
- { -64347736, -2036351, -1435056, },
- { 138324256, -2430415, -1476395, },
- { 162479680, -3643206, -1773822, },
- { -26885958, -612033, -1231582, },
- { -40347996, 3263638, 82678, },
- { 94091456, -1321776, 241592, },
- { -27213450, 3658775, 1133871, },
- },
- {
- { 161127840, 2494839, 230318, },
- { 218601488, 4053912, -659814, },
- { -72627896, -2632815, -189515, },
- { 132085816, -731218, -1257352, },
- { 157013264, 20401, -2114198, },
- { -31015032, -1607392, -375810, },
- { -26279832, -1437203, -290984, },
- { 86541440, 3720516, -263067, },
- { -16163573, -1236951, 1034550, },
- },
- {
- { 152307600, -2508261, -267899, },
- { 192162736, -4103841, 425202, },
- { -82927768, -598074, 2172180, },
- { 118860000, -1208496, 657667, },
- { 147158464, 732829, -167504, },
- { -40805412, -1704565, 1273458, },
- { -10628433, 3490735, -980863, },
- { 79426832, -1911261, -1018981, },
- { -5949067, -68183, -201327, },
- },
- {
- { 144696368, 1319092, -537408, },
- { 167141872, 6891812, 175557, },
- { -97344896, 7576323, 1618129, },
- { 98060008, 6953015, 1093069, },
- { 133613752, 4267050, 679679, },
- { -55868396, 7104413, 654446, },
- { 5866926, -4824859, -618475, },
- { 75897976, -449898, -956167, },
- { 2306934, -2581275, -422517, },
- },
- {
- { 138049920, -252866, -158377, },
- { 144453168, -4816269, -712428, },
- { -112335944, -5070746, -423591, },
- { 73207184, -8397735, -449361, },
- { 117530168, -5335960, -373125, },
- { -71457520, -3936338, -759672, },
- { 20044612, 3259343, 43487, },
- { 76154064, 2106682, -241592, },
- { 8460549, 700080, -55835, },
- },
- {
- { 131315400, 1210644, 288300, },
- { 124574992, 3322157, -743566, },
- { -121577640, -2782602, 380105, },
- { 50560892, 2275796, -740345, },
- { 101227008, 2015950, -554588, },
- { -81823424, -2728915, 527207, },
- { 28654412, 806917, -407485, },
- { 77313704, -1054951, 514859, },
- { 12657805, -1239098, -40802, },
- },
- {
- { 123408904, -2617783, 91268, },
- { 106087304, -2538326, -300648, },
- { -121654952, 5787469, 3679713, },
- { 34478388, 2088965, 1676111, },
- { 86537688, 592706, 1213865, },
- { -84390736, 4424353, 3697967, },
- { 30545270, -1830730, -1678795, },
- { 75919992, -574989, 882616, },
- { 15829639, 1928977, 729071, },
- },
- {
- { 113971256, 2760590, -429497, },
- { 87232400, 2210298, 769336, },
- { -112382112, -1367410, 5208722, },
- { 25873420, 69256, 3870839, },
- { 75094280, 1138703, 3105261, },
- { -78730512, 127238, 4860829, },
- { 26732414, -753230, -1465121, },
- { 70934608, 1698660, 1145146, },
- { 18898392, -81604, 1235340, },
- },
- {
- { 102863928, -1541356, -380105, },
- { 67243080, -4695473, 1672890, },
- { -94158568, -1594507, 2707977, },
- { 24968256, -4831838, 2573759, },
- { 68827928, -7074885, 1530082, },
- { -64571076, -3093450, 1923609, },
- { 18269718, -35970, 229244, },
- { 63774896, -2209761, 1298691, },
- { 23650238, -587337, 591632, },
- },
-};
-
-const Word32 rightHRIRReal_HOA2_fx[BINAURAL_CONVBANDS][HOA2_CHANNELS][BINAURAL_NTAPS_SBA] /* Q29 */=
-{
- {
- { 9749039, 528896224, 129120672, },
- { -41363756, 13267691, -139807088, },
- { 318364, 71011376, 4832, },
- { 4946192, 29243896, 2285460, },
- { -21379810, 23943906, 862215, },
- { -5953899, 15082851, -6302328, },
- { -30930744, 44672492, 2427730, },
- { 5499706, 15232638, -5888937, },
- { -57767848, 97858144, 28123982, },
- },
- {
- { -81891064, -177112640, -130106368, },
- { 112628000, 683750720, 60143500, },
- { -6127308, 43266964, -7260642, },
- { -18372260, 7399692, 4738423, },
- { 6642167, -7949985, -20505784, },
- { -1736777, -44741748, -36746668, },
- { 1779190, -17669496, -35038880, },
- { 1783485, 40972376, 4261145, },
- { -8154533, -118214144, -70245800, },
- },
- {
- { -12397960, -300077568, -81048184, },
- { 145049632, 316735584, 192968592, },
- { -1750199, 52096344, -8036958, },
- { -31417148, 57874148, -7852811, },
- { 45173928, -93462784, 3615289, },
- { 19227494, -151273584, 3310346, },
- { 62551368, -165313824, 10894185, },
- { -7194607, 46335716, 6969122, },
- { 112488416, -297701888, -26124676, },
- },
- {
- { 140419120, 163395056, 61220464, },
- { -134698768, -418562272, -37772088, },
- { 12770012, 47600584, -16543677, },
- { 1829119, 44066900, -22123914, },
- { 33349348, -25675314, 30729954, },
- { 13965623, -83586504, 35370128, },
- { 68233608, -88068304, 41433548, },
- { -11814381, 19326816, -3059091, },
- { 176067360, -24274618, 67555000, },
- },
- {
- { 193003488, 110340392, 58983324, },
- { -400174976, -27615030, -115993112, },
- { 35544612, -41037340, 13286481, },
- { 77038832, -66177928, 4207994, },
- { -52810916, 74782896, 8038032, },
- { -35016868, 65575024, -16007343, },
- { -10479720, 87943752, -12978317, },
- { 4599910, -13000866, 7131793, },
- { 59668372, 167397968, 11380053, },
- },
- {
- { 88669064, -136434464, -13708462, },
- { -418985344, 219153392, -13563507, },
- { 23226110, -44473848, 13935021, },
- { 115305912, -11606612, 14061723, },
- { -143302128, -39595840, -14180908, },
- { -59085864, 36939404, -20780126, },
- { -87146496, 9683541, -25189446, },
- { 25008520, -13014288, 2070174, },
- { -136447888, -56905632, -32251446, },
- },
- {
- { -95292440, 37550900, -37873020, },
- { -206629808, -110094504, 59848220, },
- { -19184546, 36173288, -7810935, },
- { 67421856, 33315524, 4643397, },
- { -158025808, -25906168, -14119168, },
- { -48429516, -45377940, 8228084, },
- { -113663088, -53688164, 4163434, },
- { 42060616, -12084964, -2563022, },
- { -283383008, -24645060, -13195213, },
- },
- {
- { -248765584, 30539902, -11682848, },
- { 81042808, -14250165, 36664524, },
- { -54503672, 436476, -13678397, },
- { -51027432, -48062296, -1750736, },
- { -72271416, 56135760, -543850, },
- { -31731756, -13630079, 15043123, },
- { -97211216, -3755949, 17327508, },
- { 44042744, -1282048, 987843, },
- { -314783520, 26202522, 8887361, },
- },
- {
- { -318032128, -23928874, 15863999, },
- { 309716544, 19851338, -11929272, },
- { -64207612, -32423782, -834834, },
- { -181705568, 34351684, -7874823, },
- { 67236640, -50014356, 11543261, },
- { -24249922, 23637352, -232465, },
- { -61846456, 13557064, 2641405, },
- { 22053046, 4669167, 2681670, },
- { -235416288, -29829084, 11263552, },
- },
- {
- { -321614656, -7707319, 17708688, },
- { 441777120, 23812372, -24769076, },
- { -63085552, 4299799, 10666551, },
- { -257657776, 10072235, -4187056, },
- { 182311168, 965831, 9856950, },
- { -15317464, 2199023, -7827578, },
- { -19076098, 8660265, -5299453, },
- { -16952772, -20622286, 530428, },
- { -101074536, 27609660, 8037495, },
- },
- {
- { -299877312, 14833206, 4658429, },
- { 501736992, -30001958, -10576894, },
- { -77060304, 21843666, 5098126, },
- { -255281040, -25045028, 6628745, },
- { 224941392, 25129854, -4932233, },
- { 10722923, -24297704, -745714, },
- { 21924198, -14825690, -2221035, },
- { -55880744, 8342974, -3590593, },
- { 24230058, -11106785, 2217814, },
- },
- {
- { -273169056, 1380832, -3224447, },
- { 518796608, 5689758, -501974, },
- { -107435384, -11543261, -1205275, },
- { -200896560, 11400454, 8522826, },
- { 205748256, -6176163, -10351408, },
- { 54589572, 4134980, 2393908, },
- { 52939232, 5274220, -91268, },
- { -76335528, 8250096, -39192, },
- { 108715824, 4263829, -4214437, },
- },
- {
- { -241493120, -13797582, -1484985, },
- { 506164576, 10208600, -1411971, },
- { -135031088, 2689187, -19864, },
- { -132891120, -9751186, 4269735, },
- { 159797472, 4487704, -4820027, },
- { 104600168, -5526013, -3636227, },
- { 68510096, -2899103, -59056, },
- { -75732088, -3214783, 3774203, },
- { 153326032, -4451197, -6740415, },
- },
- {
- { -201953664, 13988172, 2484102, },
- { 468066080, -11743514, -3473555, },
- { -135009072, 6645925, 2597918, },
- { -76960984, 1656247, 299037, },
- { 114370144, -4749160, -1355599, },
- { 142927920, 12561169, -4122095, },
- { 65720516, -3194919, 500901, },
- { -61929132, -2405182, 1045288, },
- { 170837152, 9755481, -3670587, },
- },
- {
- { -157771872, -7571491, 2987150, },
- { 409905760, 14218489, -3198140, },
- { -89839440, -11615202, 2513093, },
- { -38160248, -4485557, -2508798, },
- { 80043160, 2543695, 238908, },
- { 144927232, -1413044, -105227, },
- { 47504484, 7495792, 11811, },
- { -43118788, -5166309, -1449552, },
- { 169407472, 267362, 73551, },
- },
- {
- { -114906480, 5610838, 980863, },
- { 342850592, -13112535, -2252174, },
- { -257698, 17945448, -1500554, },
- { -6269579, 9542880, -1308891, },
- { 49730352, -6022081, 804770, },
- { 96365104, -14963666, 2623151, },
- { 26508002, -3325915, 172872, },
- { -27319214, 7948911, 848256, },
- { 152526096, -7221988, -119722, },
- },
- {
- { -76454176, -6929930, -69256, },
- { 279726400, 11549704, -1301375, },
- { 114208552, -28898688, -3926137, },
- { 26892938, -5211406, -841277, },
- { 12193949, 7994545, 1019518, },
- { 7168301, 27730456, 2589865, },
- { 18780818, -313533, 1094143, },
- { -20258824, -345208, 3060164, },
- { 125984272, 8527658, -1406065, },
- },
- {
- { -41962904, 7059316, 128849, },
- { 228333344, -8655970, -1010928, },
- { 219166272, 28090696, -1050656, },
- { 62499828, 7261179, -2414309, },
- { -36138928, -10872173, 2019708, },
- { -89954328, -27792196, -466541, },
- { 36580772, 5089000, 663036, },
- { -18362596, -4509179, 2020245, },
- { 97064112, -6015639, -1931662, },
- },
- {
- { -8992588, -6510634, 267362, },
- { 190033520, 4474819, -350577, },
- { 278282752, -5998459, 1591285, },
- { 95040112, -10720775, -1452236, },
- { -88483840, 14305462, 1738388, },
- { -153659440, 6827925, -2048699, },
- { 83558592, -11030550, -993211, },
- { -8813273, 2103460, -952409, },
- { 71897216, 1779190, -978179, },
- },
- {
- { 24793772, 6630893, -18254, },
- { 160462656, -4852776, 434865, },
- { 274668512, -17280800, -1229971, },
- { 113483776, 2928631, 500901, },
- { -129502928, -8119099, 592169, },
- { -157575904, 15821586, 1637993, },
- { 150618064, 16231755, -2345052, },
- { 22151294, 10189273, -2437931, },
- { 53149148, 1124208, 1559073, },
- },
- {
- { 59917480, -7263864, -350040, },
- { 132440688, 8647917, -547608, },
- { 222252208, 20497194, -5111011, },
- { 109086800, 9399536, -1176284, },
- { -144204064, -1976759, 942208, },
- { -105299712, -19787452, 5240397, },
- { 215895664, -14326937, -2713883, },
- { 77865072, -19022410, -732829, },
- { 40236328, 4224101, 2659659, },
- },
- {
- { 94547264, 7210713, -514322, },
- { 99481104, -9044127, -2510945, },
- { 154022352, -10442139, -4019553, },
- { 82563768, -8490077, -3492345, },
- { -128416840, 6362457, 1036161, },
- { -22603340, 12644921, 2655901, },
- { 252400736, 6924561, -1945620, },
- { 145012592, 13919989, -82678, },
- { 31737660, -10970420, -1664837, },
- },
- {
- { 125645512, -7259569, -85899, },
- { 56863756, 4744328, -1486596, },
- { 99314136, 4427575, -335007, },
- { 41075992, 3167539, -968515, },
- { -89500672, -12156905, 797253, },
- { 60453812, -10972568, -2783139, },
- { 242034288, 3270618, 1074816, },
- { 200968496, -7325604, -2245731, },
- { 27202176, -1326071, -5287642, },
- },
- {
- { 150700208, 4634807, 561030, },
- { 1191853, -8886824, 2146410, },
- { 70675296, -2062658, 1005022, },
- { -8423505, -8847096, 2709588, },
- { -41706816, 12612171, 1906429, },
- { 119930520, 13067438, -3780645, },
- { 186179856, -22568980, 1925219, },
- { 224940864, 2801929, -3001645, },
- { 21487184, 13031468, 194347, },
- },
- {
- { 169636176, -1192927, 61203, },
- { -66094176, 19737522, 2557653, },
- { 63994476, -1108102, 530428, },
- { -57278220, 13596256, 2472291, },
- { 166430, -4035659, 1475321, },
- { 140860976, -5550172, -35970, },
- { 109537232, 28074054, -2848100, },
- { 204103296, 8996883, -2008434, },
- { 1818919, 4411469, 6263673, },
- },
- {
- { 185916256, 1898376, -1018981, },
- { -133667976, -19608674, -745714, },
- { 64880312, 1573569, 387621, },
- { -92978528, -8923868, 155156, },
- { 29435022, 97174, -1298154, },
- { 120988152, -12420509, 1513976, },
- { 49056580, -7981660, -5492190, },
- { 139661056, -18445274, -1324997, },
- { -36724656, -22808960, 2743947, },
- },
- {
- { 203936864, -5097053, -1052804, },
- { -185728880, 7454453, -2333778, },
- { 58489400, 863825, 1222455, },
- { -104674256, -2811593, -115964, },
- { 48657148, -3922916, -2414309, },
- { 75116832, 19784230, -1840930, },
- { 26552024, -8952859, -2214593, },
- { 48134772, 21822728, -685047, },
- { -79321064, 15090904, -3412889, },
- },
- {
- { 225228624, 6438156, -157303, },
- { -214688240, 3755412, 329102, },
- { 38261716, -7221451, 1816234, },
- { -90862184, 8681203, 1593433, },
- { 62400508, 5262409, -942745, },
- { 28787556, -9220758, -4382478, },
- { 34985728, 13614509, 2888903, },
- { -46410880, -20306068, -564251, },
- { -104572792, 3867618, -2895345, },
- },
- {
- { 247859344, -4959614, 399432, },
- { -227028208, -1579474, 3234110, },
- { 9644886, 10700911, 573378, },
- { -60634200, -7675107, 1981591, },
- { 72839960, -2655364, 490163, },
- { 729608, -4192962, -1942936, },
- { 48766132, -369367, 4420595, },
- { -121884192, 11087995, -140660, },
- { -103912440, -11213086, 2019172, },
- },
- {
- { 268726976, 2394444, -181999, },
- { -235657344, -4387846, 2889439, },
- { -13455596, -6493991, -1464047, },
- { -25911538, 8749385, 2221035, },
- { 79648024, -3604551, -1035087, },
- { -8626979, 6051072, 2256469, },
- { 45754824, -10596758, 946503, },
- { -166654400, -1146756, 1919850, },
- { -84939960, 6331319, 4582730, },
- },
- {
- { 286211264, -2729452, -953483, },
- { -248872416, 8239358, 294742, },
- { -18828062, -4189741, -1525787, },
- { 4614406, -1637456, 1565516, },
- { 82404856, -1227824, -2612951, },
- { -11445014, -180926, 4145717, },
- { 21737904, 12543452, -3052111, },
- { -182342832, -2155000, 4099010, },
- { -60702920, 1326608, 2131378, },
- },
- {
- { 300383040, 3500935, -717796, },
- { -266191872, -3493956, -970663, },
- { -5042829, 10755135, 1197222, },
- { 30651570, 2687576, -321586, },
- { 79362408, 2752537, -858457, },
- { -18897856, -9425306, 1945083, },
- { -14038101, -5513665, -3498788, },
- { -178168672, -1279363, 3287261, },
- { -37468756, 3229816, -508954, },
- },
- {
- { 311666464, -2198487, -265214, },
- { -283031360, 1918777, -70330, },
- { 18464064, -6590091, 3395172, },
- { 58261768, -4366908, -1492501, },
- { 66921496, 2005750, 1306744, },
- { -31464394, 7336341, -1821066, },
- { -51994876, 2715493, -710817, },
- { -161833296, -2287607, 964220, },
- { -14486388, -4322885, -715649, },
- },
- {
- { 320947872, 1425929, -280247, },
- { -296547616, -1778653, 544387, },
- { 40380208, -2829847, 1201517, },
- { 91574608, 9750650, -1528472, },
- { 45061724, -9525701, 755377, },
- { -41256384, 2624225, -1612223, },
- { -89262840, -4065724, 2160369, },
- { -137527536, 5949067, 293668, },
- { 10603201, 5882495, -712428, },
- },
- {
- { 329596320, -1290101, -507343, },
- { -306918912, 2180233, 387621, },
- { 56913684, -266288, -2163590, },
- { 127935800, -9903658, -440771, },
- { 20552492, 7883413, -1342714, },
- { -43283608, -3977677, 1141388, },
- { -126284920, 9459129, 2925410, },
- { -109121696, -6815576, 498753, },
- { 38045356, -5915244, -879931, },
- },
- {
- { 338755872, 1985349, -662499, },
- { -316944416, -1728188, 217970, },
- { 70156144, 6400038, -1461900, },
- { 158782800, 7256347, 613643, },
- { 2733747, -1930588, -1903207, },
- { -38901128, -146029, 1503239, },
- { -160943168, -12184822, 650151, },
- { -80698680, 6174553, 687195, },
- { 63547800, 6309844, -729608, },
- },
- {
- { 348667584, -2622078, -528281, },
- { -330204608, 2903398, 394600, },
- { 80498424, -3464428, 624918, },
- { 176407184, -212064, 684510, },
- { -4530117, -2791192, -780610, },
- { -31255550, 34360, -15569, },
- { -186284000, 3796214, -1058710, },
- { -56010132, -4271882, 649077, },
- { 80058728, -2265595, -424128, },
- },
- {
- { 358330208, 2345589, -273267, },
- { -348918848, -4343823, 594853, },
- { 86404544, -1669669, 192200, },
- { 179864640, -3940633, -735513, },
- { -5645735, 2221572, 545461, },
- { -22848690, 2136746, -548682, },
- { -196971488, 3864397, 570157, },
- { -36806796, 2615098, 387621, },
- { 82155208, -1394791, -471373, },
- },
- {
- { 366297888, -1524177, -97711, },
- { -372433248, 5732171, 681826, },
- { 87542704, 938987, -1042066, },
- { 175921328, 2347200, -1906429, },
- { -9195525, 777926, 1210107, },
- { -15777025, -1827509, -136365, },
- { -195313632, -2768643, 2332167, },
- { -22068616, -1083942, -295816, },
- { 69850128, 4421669, -359704, },
- },
- {
- { 371749280, 51003, -288300, },
- { -397624864, -6229850, 351650, },
- { 84823456, 1105954, -449361, },
- { 173494128, 2942590, -1049583, },
- { -21438330, -6756521, 438624, },
- { -11614665, 5369, -123480, },
- { -188027232, -225486, 1703491, },
- { -8943196, 3022583, -632434, },
- { 48287780, -6484864, -573915, },
- },
- {
- { 375091296, 123480, -765041, },
- { -420282944, 3861713, 207769, },
- { 79324824, 1246077, 565862, },
- { 177637696, -3994320, 930934, },
- { -42110008, 7602629, -1375463, },
- { -11107859, 586800, -499290, },
- { -180578672, 130997, 265751, },
- { 4147328, -2578054, -663572, },
- { 25565792, 4443681, -760746, },
- },
- {
- { 377552320, 1293322, -671089, },
- { -437537440, -1720134, 741956, },
- { 72594072, -5038534, -627602, },
- { 187999840, -449898, 470836, },
- { -65652872, -2403034, -1189706, },
- { -13804562, 1540283, 333397, },
- { -174902880, 2426657, 401579, },
- { 16455093, 4543002, -142808, },
- { 8400419, -1613297, -322659, },
- },
- {
- { 379801824, -1159104, -98784, },
- { -449000192, 762357, 1505923, },
- { 66756140, 1897302, -2478733, },
- { 202493216, -1679332, -1592359, },
- { -87476672, 1024350, 1014686, },
- { -18439368, 616328, 1715839, },
- { -170510208, -614717, 1108638, },
- { 25653302, -1463510, 585726, },
- { -814970, -1081258, 744103, },
- },
- {
- { 381884864, 102005, 62277, },
- { -456018144, -2931852, 1144609, },
- { 61858268, 3501472, -1437203, },
- { 218079648, 5225365, -1717987, },
- { -106423384, -4740570, 1769527, },
- { -22399866, -3916473, 964757, },
- { -165222560, -275415, 569620, },
- { 30270930, -994285, 135291, },
- { -3977677, -1443109, 878321, },
- },
- {
- { 384165504, 471373, -382252, },
- { -459639360, 1001264, 163209, },
- { 53535156, 277025, 810675, },
- { 229669088, -4628364, -55298, },
- { -121935192, 5230734, 398358, },
- { -20921322, -307627, -477815, },
- { -155960992, -2059974, -151398, },
- { 32400696, 1212255, -745177, },
- { -3812857, 365609, 27380, },
- },
- {
- { 387472608, 773094, -761820, },
- { -460596576, 1338956, 388158, },
- { 37011880, -8176544, 218506, },
- { 232414640, -2472828, 367757, },
- { -132566312, -363998, -61740, },
- { -10568841, 6884296, 514322, },
- { -141396224, 5043366, 133144, },
- { 35882304, 890132, -1221381, },
- { -1747515, 906775, -19864, },
- },
- {
- { 392298016, -2099165, -467078, },
- { -460876832, -654983, 1044751, },
- { 12603045, 8705899, -2084670, },
- { 225417056, 5970542, -1477469, },
- { -137805104, -1513976, 1142461, },
- { 7254737, -6248641, 2473364, },
- { -123040072, -5198521, 973884, },
- { 43224012, -3112778, -925029, },
- { 770410, 405874, -242129, },
- },
- {
- { 398138112, 1664837, -5906, },
- { -462098752, 161061, 1531693, },
- { -15297063, -1983201, -1540283, },
- { 212177296, -1755568, -2101313, },
- { -138299024, -763430, 1508607, },
- { 28484760, 306016, 1535451, },
- { -104152424, 1582159, 476741, },
- { 53592600, 3449396, -330712, },
- { 2964601, 1447941, -306016, },
- },
- {
- { 404148384, -311922, -176094, },
- { -464220992, 1423782, 1687922, },
- { -42546484, -2144799, 3101503, },
- { 196518384, -3173444, 1027034, },
- { -134805600, 4870493, -1206886, },
- { 49714248, 2751464, -2964601, },
- { -87270512, -921807, -1372779, },
- { 64223720, -2987150, 277025, },
- { 4530654, -2358474, 919123, },
- },
- {
- { 409720000, -462783, -1084479, },
- { -466352928, -2785286, 731755, },
- { -65998616, -1939178, 7927436, },
- { 181019984, 2525978, 6302328, },
- { -129010616, -4121021, -6409165, },
- { 67529768, 2459406, -6993818, },
- { -73590504, 3739306, -1999844, },
- { 73398304, 1053341, 575526, },
- { 5841693, 808528, 2232309, },
- },
-};
-
-const Word32 rightHRIRImag_HOA2_fx[BINAURAL_CONVBANDS][HOA2_CHANNELS][BINAURAL_NTAPS_SBA] /* Q29 */=
-{
- {
- { -36158792, 332589920, -120427664, },
- { 74782896, -414234016, 138564768, },
- { -1993402, 15385110, -4536559, },
- { -12910672, 37127308, -11034308, },
- { 13785771, 13972065, -10325638, },
- { 5334350, 5939403, -4061429, },
- { 18512920, 23427972, -15831786, },
- { 3295314, -46312096, 20517058, },
- { 24953760, 133811320, -62957780, },
- },
- {
- { 6790344, 394416512, -99059128, },
- { 59612536, -289198400, 180918512, },
- { -1410360, -11168526, -15667504, },
- { -16600585, 2608119, -22172232, },
- { 27442156, 41982232, -5173288, },
- { 8725226, 15491410, -4438849, },
- { 45414448, 82660944, -348966, },
- { -9163313, -111122616, -6783901, },
- { 88319024, 252158064, -29414620, },
- },
- {
- { 119840864, -172064448, 92515208, },
- { -175912736, 498648928, -68749008, },
- { 10392747, -39891656, -8267812, },
- { 18903224, -44296144, -11482058, },
- { 1028108, -10605348, 22429930, },
- { -5090610, 2387465, 3582003, },
- { 21121038, 29187524, 28092308, },
- { -8322036, -78509320, -20295332, },
- { 75277352, 6205154, 71450536, },
- },
- {
- { 84888952, -211159920, 71064528, },
- { -293597536, 167443600, -152749440, },
- { 16649441, 19593640, 12747463, },
- { 57636852, 42297376, 10699837, },
- { -63173064, -90405304, 7914014, },
- { -33967284, -71368936, -15578920, },
- { -59171228, -125028112, -14110578, },
- { 14133127, -4103305, 8483097, },
- { -83939768, -238660064, 3744138, },
- },
- {
- { -84856208, 160208720, -34959960, },
- { -96670048, -340704192, 7391102, },
- { -6153078, 38164004, 9969156, },
- { 40164924, 26005490, 17468706, },
- { -94673424, 9172976, -21439402, },
- { -38052336, -47195784, -23022098, },
- { -105601432, -51099912, -31717796, },
- { 23212688, 3580392, 1049583, },
- { -236426672, 242666, -52827024, },
- },
- {
- { -241306288, 23081692, -47294568, },
- { 241835648, 76635640, 87011208, },
- { -44483512, -43661564, -12531641, },
- { -49227304, -61918932, 1545115, },
- { -32010928, 61011620, -12165495, },
- { -1369558, 61596812, 11496017, },
- { -72386304, 68689408, 8167954, },
- { 21155936, -1467805, -432718, },
- { -245244240, 94062472, -9156333, },
- },
- {
- { -279724256, -83891984, 187905, },
- { 487956064, 96942784, 27740120, },
- { -58395448, -28610388, -14624901, },
- { -154616144, 24776592, -8514773, },
- { 93974960, -58441620, 6685654, },
- { 32097364, 23796804, 18185966, },
- { -4830765, -6265821, 21151104, },
- { 2374043, -548145, 2821257, },
- { -121094456, -55359980, 19837918, },
- },
- {
- { -199590352, 46742664, 28198070, },
- { 542467776, -70228080, -36100812, },
- { -38022272, 34528316, 4661114, },
- { -204685792, -340913, -7135015, },
- { 201704016, 17952964, 12763569, },
- { 43963284, -32239098, -4910222, },
- { 53434760, -29083372, 1289564, },
- { -29628296, -16311749, 2477659, },
- { 61041148, 25417616, 12723304, },
- },
- {
- { -71485976, 3439732, 18509162, },
- { 449389952, -750546, -36375688, },
- { -10520522, -7513509, 13849659, },
- { -164350688, -39578124, -1079111, },
- { 224162400, 27566710, 6024766, },
- { 51943336, -8273181, -13044889, },
- { 88907968, -7683160, -11099806, },
- { -59125056, 6847252, -629750, },
- { 213081920, -12068321, 914291, },
- },
- {
- { 40884868, -8075076, -3076807, },
- { 300000768, 8685498, -6082211, },
- { 957241, -27275726, 4496831, },
- { -53774600, 43806520, 8965744, },
- { 154083568, -52445308, -9099962, },
- { 69969312, 27617176, -1512902, },
- { 104226512, 15185931, -3274913, },
- { -69255272, -3904662, -2665027, },
- { 282055872, -6979859, -5660230, },
- },
- {
- { 122261072, -14564234, -10473278, },
- { 150754960, 24950538, 8772471, },
- { 3320010, 4095788, -5724655, },
- { 66658428, -11882027, 7962333, },
- { 44114684, 12880607, -12540231, },
- { 90301152, -203474, 4349728, },
- { 99475200, 3833258, 1317481, },
- { -53058952, -18649822, -327491, },
- { 271441408, 13378286, -8655433, },
- },
- {
- { 185318720, 23846196, -4557497, },
- { 15679852, -37565396, 4328254, },
- { 21893596, 13773960, -2983392, },
- { 150678720, 46171, -1040993, },
- { -48956720, 813896, -947577, },
- { 95590400, -9763534, -1977296, },
- { 79202416, -6300180, 253403, },
- { -18629420, 9327058, 4054449, },
- { 217019872, -10098542, -7290707, },
- },
- {
- { 240183168, -16076599, 1266479, },
- { -105487080, 26186416, -283468, },
- { 70551816, -16828218, 678605, },
- { 189024736, -49392, -4967130, },
- { -105314744, 5423470, 4425964, },
- { 74048992, 757525, -2923262, },
- { 50586124, 7173133, 416612, },
- { 16224239, 1275605, 724239, },
- { 151719184, 2614025, -1576790, },
- },
- {
- { 286097440, 4743792, 1162862, },
- { -210780352, -18678812, 364535, },
- { 145435648, 16265578, -83752, },
- { 195911168, -2299418, -5272073, },
- { -130978784, -1410360, 3964255, },
- { 19889456, -9549323, 2411087, },
- { 22510998, -8150774, -128312, },
- { 42030012, 3780645, -2588255, },
- { 89983856, -10215043, 2976949, },
- },
- {
- { 319378048, -1308891, -1722282, },
- { -293717792, 12847321, 1720134, },
- { 224754560, -12506408, -3513820, },
- { 192708208, -6009196, -2883534, },
- { -143904496, 4290673, 3185792, },
- { -58067420, 21905944, 4212826, },
- { 7643431, 352724, -487479, },
- { 56253336, -7172059, -274341, },
- { 34664680, 15397458, 1792075, },
- },
- {
- { 340915712, 3598109, -2687576, },
- { -349467520, -7507603, 2401961, },
- { 278644064, 11220065, -4716948, },
- { 190083440, 34897, -506806, },
- { -157392304, -4962298, 2032593, },
- { -131253128, -19497540, 2294050, },
- { 14569066, 4827007, 163746, },
- { 60362544, -1574642, 1777043, },
- { -10620380, -9889162, -326418, },
- },
- {
- { 355079968, -3677566, -1744294, },
- { -381102656, 4260071, 2215130, },
- { 281619392, -1296006, -1116692, },
- { 185217248, 2087354, -1416802, },
- { -170087152, 3240553, 1831804, },
- { -165204304, 6737730, -682900, },
- { 41253696, -6271189, -472446, },
- { 62204012, 4499515, -101469, },
- { -42043436, 3895535, -408559, },
- },
- {
- { 366027840, 2317672, -1134945, },
- { -397606592, -1345399, 2006824, },
- { 223802160, -20542828, 1700807, },
- { 171571600, -425202, -704912, },
- { -171730512, -1431298, 1205275, },
- { -138801536, 16011638, -1830193, },
- { 75993000, 6881612, -2061047, },
- { 72658496, 653909, -2717104, },
- { -58964532, 883153, 773631, },
- },
- {
- { 375740384, -1729261, -1239098, },
- { -409371584, 2474438, 2047626, },
- { 121028960, 34863860, -778463, },
- { 143039056, 6924024, 1210644, },
- { -151491552, -5535676, -226560, },
- { -58364848, -31437014, 1287953, },
- { 100377680, -5044439, -2580739, },
- { 95764888, -8861591, -3254512, },
- { -64630132, -1622961, 2194728, },
- },
- {
- { 383609824, 1746441, -1296006, },
- { -424501696, -6113886, 1065689, },
- { 11184632, -24941948, -3841848, },
- { 99827928, -15702937, 8590, },
- { -106059384, 15424838, 74088, },
- { 42509976, 23139674, 3684545, },
- { 95006288, -2285996, -1535988, },
- { 122857000, 11319923, -1122060, },
- { -64195804, -1420560, 2232309, },
- },
- {
- { 387407136, -675384, -1110786, },
- { -446154208, 5822902, -92879, },
- { -67740760, 4913980, -1846299, },
- { 51632488, 11216307, -2097018, },
- { -45219028, -14675366, 887448, },
- { 123440048, -5479842, 469762, },
- { 48671644, 12622372, 137439, },
- { 134595152, 173409, 71404, },
- { -62093952, 6441377, -1045288, },
- },
- {
- { 385254816, -637803, -812286, },
- { -473090112, -2037425, 1216550, },
- { -99903624, 4727149, 2258616, },
- { 11749957, 366146, 526134, },
- { 13227962, 10634339, 147103, },
- { 159256848, -3637301, -4543539, },
- { -32711544, -19771882, 2049236, },
- { 113054816, -12186970, -1802276, },
- { -60602524, 2531346, -3322157, },
- },
- {
- { 377351520, 2255932, -482647, },
- { -501648416, 3520263, 4013647, },
- { -94568200, -5376226, 3605625, },
- { -11883638, 1945620, 3943854, },
- { 54005992, -6682969, -72478, },
- { 146007408, 3005403, -4282620, },
- { -125467272, 25107306, 1941325, },
- { 54234700, 12469901, -1246077, },
- { -62698468, -10954851, 1609002, },
- },
- {
- { 366280192, -4061965, -805843, },
- { -525283616, -9440875, 3562675, },
- { -73869144, 2709588, 2083059, },
- { -15278272, -3664681, 2474438, },
- { 69738456, -3156801, -746787, },
- { 94421632, -8872329, 543850, },
- { -197179808, -18215494, -1489817, },
- { -32488206, -20340428, 1323387, },
- { -73730096, -3738769, 6418292, },
- },
- {
- { 356168224, 2472828, -1493038, },
- { -533570240, 4927401, -20401, },
- { -58116276, -1755568, 771484, },
- { 5287105, -4551055, -365609, },
- { 63846300, 6586333, -2798171, },
- { 23891292, 20171314, 2127083, },
- { -223493984, -3424163, -3262028, },
- { -127029024, 21662742, 1534377, },
- { -90670520, 17609366, 2166811, },
- },
- {
- { 349922272, 618475, -1319092, },
- { -518373568, 8857833, -1140851, },
- { -56720948, -883690, 1331977, },
- { 48408040, 13831405, -606664, },
- { 47076064, -2146947, -2979097, },
- { -40385040, -19214610, -1528472, },
- { -205683296, 20291572, 840740, },
- { -203235712, -13549011, 1227824, },
- { -96553552, -4800163, -4361540, },
- },
- {
- { 346649504, -1439888, -318364, },
- { -483399104, -15989626, 1763621, },
- { -66776004, 6590091, 978179, },
- { 103736880, -14713484, 507343, },
- { 28132036, -848256, -367220, },
- { -75919456, -1214402, -2411087, },
- { -171571056, -12617003, 5709622, },
- { -240693728, 845035, 2171106, },
- { -76186280, -17254494, -3004330, },
- },
- {
- { 342597184, -1294933, 166430, },
- { -443682464, 9204115, 4066260, },
- { -75551160, -3277060, -437550, },
- { 156191856, 10443750, 1022202, },
- { 9059697, -4929549, 889058, },
- { -78208672, 9521942, 970126, },
- { -153513408, -5825587, 4600984, },
- { -233576432, 5917928, 2312303, },
- { -33381560, 19739132, 3035468, },
- },
- {
- { 334624672, 3918621, -566936, },
- { -413670304, 577136, 2447595, },
- { -70139504, -1757715, -1557999, },
- { 193998848, -3168612, 186831, },
- { -10993506, 6357089, -403727, },
- { -61479236, -9741523, 4020090, },
- { -164081168, 14096083, -239444, },
- { -189978208, -16337519, 2595771, },
- { 13108777, -5794448, 4198331, },
- },
- {
- { 322606816, -3232500, -1260573, },
- { -396880736, -2692408, -843424, },
- { -46797428, 11288785, -991601, },
- { 214848752, 153545, -1243930, },
- { -32719598, -4962835, -1389959, },
- { -44736380, -1035087, 4147328, },
- { -192954096, -10519986, -3456375, },
- { -127260952, 14543833, 3575024, },
- { 47788492, -2278480, -68719, },
- },
- {
- { 308399040, 1808181, -802085, },
- { -386778464, -3155727, -1571958, },
- { -13718662, -11858405, 1543504, },
- { 224974688, 794569, -2326799, },
- { -56534116, 457414, 206695, },
- { -37853156, 7458211, 425739, },
- { -221009888, -892279, -2015950, },
- { -63788316, -7458748, 1576790, },
- { 68279776, -1187559, -2947421, },
- },
- {
- { 293636704, -2662343, -128312, },
- { -375935808, 5361193, 153008, },
- { 14427869, 3656628, 2450816, },
- { 232371696, 2226941, -2764348, },
- { -82602960, -5332202, 2313377, },
- { -36209260, -2982318, -2959233, },
- { -236805168, 4200478, 2068027, },
- { -9079561, 6485938, -1704028, },
- { 79947592, 3765076, -2320893, },
- },
- {
- { 279406944, 3427384, -205085, },
- { -362203712, -3554086, 1072668, },
- { 28135258, 5444945, -106300, },
- { 240036064, -4869419, -1695975, },
- { -108520400, 9707163, 1090922, },
- { -30004104, -7593502, -1940788, },
- { -240686752, -710817, 3923990, },
- { 35410396, -11063299, -1749125, },
- { 87226488, -2617246, -1141924, },
- },
- {
- { 266644992, -2608656, -476205, },
- { -347585248, 2545305, 769873, },
- { 28486370, -4051228, -3284576, },
- { 243368416, 2174864, -173946, },
- { -127333968, -4950487, -1104880, },
- { -16089484, 7972533, 1418950, },
- { -236118512, -1354525, 3016678, },
- { 69019048, 5398774, -811212, },
- { 90053120, 663572, -781684, },
- },
- {
- { 255541424, 1991791, -520765, },
- { -335333856, -1934346, 435939, },
- { 22628572, -4581657, -1842541, },
- { 235510240, 2966749, 518080, },
- { -133714680, -2567317, -1082332, },
- { 433255, -551903, 1525250, },
- { -223574528, 2010582, 192737, },
- { 91384560, -5077188, -465467, },
- { 84883048, 1163399, -483721, },
- },
- {
- { 245329600, -1373853, -308164, },
- { -327304960, 1559610, 599685, },
- { 13842680, -357556, 1105954, },
- { 214584080, -8028905, 86436, },
- { -130002752, 5317707, 677531, },
- { 14326937, -83752, -653909, },
- { -200260368, 7125888, -1465658, },
- { 103070624, -522375, -449898, },
- { 68426880, -4463008, 12348, },
- },
- {
- { 234616880, 2107218, -43487, },
- { -322709344, -124554, 736587, },
- { 1589138, 5553930, 565862, },
- { 186385472, 9103183, -1245004, },
- { -125093072, -1516660, 1810866, },
- { 23804320, -2353642, -1084479, },
- { -166164768, -13082470, 473520, },
- { 106302048, -217433, -797790, },
- { 41465760, 7704098, -18254, },
- },
- {
- { 222323072, -2915746, -19864, },
- { -318206080, 789200, 656056, },
- { -13198435, -4537096, -923955, },
- { 161084352, -4031901, -1812476, },
- { -127196528, -2785823, 1559073, },
- { 28687698, 1585380, -195958, },
- { -128549984, 8349954, 2117956, },
- { 105128448, -2126546, -1066763, },
- { 10321343, -6656126, -12885, },
- },
- {
- { 208615696, 3557844, -220654, },
- { -309694528, -1555852, 404264, },
- { -28428388, 894427, -419296, },
- { 145905952, -1242856, -609885, },
- { -137842144, 5847598, 500901, },
- { 29700236, 334471, 172336, },
- { -96008088, -2522757, 846645, },
- { 103137200, -988379, -1157494, },
- { -16428787, 5519570, 15569, },
- },
- {
- { 194701072, -3233574, -540629, },
- { -294416256, 4551055, 296890, },
- { -42549168, -2559801, 639950, },
- { 140792256, 2094333, 1074816, },
- { -151768576, -4850629, -831613, },
- { 28312962, -867583, -33286, },
- { -71958416, 2250026, -940061, },
- { 101641472, 158377, -641024, },
- { -32029182, -1188095, -28454, },
- },
- {
- { 182000320, 1571421, -382252, },
- { -272313280, -6266358, 755914, },
- { -54702852, 4699768, -196495, },
- { 140131904, 2928631, 517544, },
- { -161241664, -1787243, -353798, },
- { 26629334, -1044751, 400506, },
- { -54589572, -4306242, -817118, },
- { 99131064, -478352, -254477, },
- { -34484292, -2201171, 446140, },
- },
- {
- { 170964928, -1386738, 183610, },
- { -245976000, 6084895, 1145683, },
- { -64347736, -2036351, -1435056, },
- { 138324256, -2430415, -1476395, },
- { -162479680, 3643206, 1773822, },
- { 26885958, 612033, 1231582, },
- { -40347996, 3263638, 82678, },
- { 94091456, -1321776, 241592, },
- { -27213450, 3658775, 1133871, },
- },
- {
- { 161127840, 2494839, 230318, },
- { -218601488, -4053912, 659814, },
- { -72627896, -2632815, -189515, },
- { 132085816, -731218, -1257352, },
- { -157013264, -20401, 2114198, },
- { 31015032, 1607392, 375810, },
- { -26279832, -1437203, -290984, },
- { 86541440, 3720516, -263067, },
- { -16163573, -1236951, 1034550, },
- },
- {
- { 152307600, -2508261, -267899, },
- { -192162736, 4103841, -425202, },
- { -82927768, -598074, 2172180, },
- { 118860000, -1208496, 657667, },
- { -147158464, -732829, 167504, },
- { 40805412, 1704565, -1273458, },
- { -10628433, 3490735, -980863, },
- { 79426832, -1911261, -1018981, },
- { -5949067, -68183, -201327, },
- },
- {
- { 144696368, 1319092, -537408, },
- { -167141872, -6891812, -175557, },
- { -97344896, 7576323, 1618129, },
- { 98060008, 6953015, 1093069, },
- { -133613752, -4267050, -679679, },
- { 55868396, -7104413, -654446, },
- { 5866926, -4824859, -618475, },
- { 75897976, -449898, -956167, },
- { 2306934, -2581275, -422517, },
- },
- {
- { 138049920, -252866, -158377, },
- { -144453168, 4816269, 712428, },
- { -112335944, -5070746, -423591, },
- { 73207184, -8397735, -449361, },
- { -117530168, 5335960, 373125, },
- { 71457520, 3936338, 759672, },
- { 20044612, 3259343, 43487, },
- { 76154064, 2106682, -241592, },
- { 8460549, 700080, -55835, },
- },
- {
- { 131315400, 1210644, 288300, },
- { -124574992, -3322157, 743566, },
- { -121577640, -2782602, 380105, },
- { 50560892, 2275796, -740345, },
- { -101227008, -2015950, 554588, },
- { 81823424, 2728915, -527207, },
- { 28654412, 806917, -407485, },
- { 77313704, -1054951, 514859, },
- { 12657805, -1239098, -40802, },
- },
- {
- { 123408904, -2617783, 91268, },
- { -106087304, 2538326, 300648, },
- { -121654952, 5787469, 3679713, },
- { 34478388, 2088965, 1676111, },
- { -86537688, -592706, -1213865, },
- { 84390736, -4424353, -3697967, },
- { 30545270, -1830730, -1678795, },
- { 75919992, -574989, 882616, },
- { 15829639, 1928977, 729071, },
- },
- {
- { 113971256, 2760590, -429497, },
- { -87232400, -2210298, -769336, },
- { -112382112, -1367410, 5208722, },
- { 25873420, 69256, 3870839, },
- { -75094280, -1138703, -3105261, },
- { 78730512, -127238, -4860829, },
- { 26732414, -753230, -1465121, },
- { 70934608, 1698660, 1145146, },
- { 18898392, -81604, 1235340, },
- },
- {
- { 102863928, -1541356, -380105, },
- { -67243080, 4695473, -1672890, },
- { -94158568, -1594507, 2707977, },
- { 24968256, -4831838, 2573759, },
- { -68827928, 7074885, -1530082, },
- { 64571076, 3093450, -1923609, },
- { 18269718, -35970, 229244, },
- { 63774896, -2209761, 1298691, },
- { 23650238, -587337, 591632, },
- },
-};
-
-const Word32 FASTCONV_FOA_latency_s_fx = 20833;
-
-const Word32 leftHRIRReal_FOA_fx[BINAURAL_CONVBANDS][FOA_CHANNELS][BINAURAL_NTAPS_SBA] /* Q29 */=
-{
- {
- { 97523672, 405096480, 117391120, },
- { 168510352, -226681936, 72761040, },
- { 7752416, 62658204, -7288023, },
- { 23083838, 10139344, -8373576, },
- },
- {
- { -91860224, -231391360, -85269600, },
- { -87150256, -545616512, 29677688, },
- { -4872641, 57707180, -5408975, },
- { -1218160, 32580012, 7697655, },
- },
- {
- { -171940960, -134628432, -89749248, },
- { -368214528, 37159520, -138843408, },
- { -11674258, 43248712, 5395016, },
- { -37626060, 48839148, 9722195, },
- },
- {
- { -48351668, 213029312, 16819628, },
- { -294134400, 328650368, -34809100, },
- { -7545721, 5860483, -10766409, },
- { -56161528, -5217849, -7862475, },
- },
- {
- { 166833712, -29396904, 57186952, },
- { 41763724, -163917424, 77779176, },
- { 26105884, -27028766, -4032438, },
- { -19192598, -26607860, -4379256, },
- },
- {
- { 316903104, -63921460, 13246753, },
- { 380145408, -47550120, 50608136, },
- { 64360084, 26156350, 7871065, },
- { 64651068, 31446140, 2492692, },
- },
- {
- { 342714240, 40063992, -23562728, },
- { 562947776, 70490080, -20235738, },
- { 76979232, 18240190, 7850664, },
- { 157704224, -9568113, -242129, },
- },
- {
- { 279815520, -2827162, -22232898, },
- { 587650304, 112743, -39622684, },
- { 58521076, -19127636, -1853278, },
- { 218817312, 18382996, -1549946, },
- },
- {
- { 194067568, -7948911, -5098663, },
- { 529768096, -24970940, -15723875, },
- { 31035970, 14948634, -8168491, },
- { 219732144, 7948374, 3088082, },
- },
- {
- { 123001424, -5282810, 5087926, },
- { 450608096, 378494, 4850092, },
- { 19481434, 16145856, -5490579, },
- { 157347744, -37542848, -2373506, },
- },
- {
- { 67425616, 16203301, 3928821, },
- { 369236192, 28034862, 4899484, },
- { 28122372, -10347650, 1939715, },
- { 66008816, 19518478, -7190849, },
- },
- {
- { 16583942, -16200617, -446677, },
- { 285353856, -26029112, -2506114, },
- { 36405752, -2548526, 1474248, },
- { -13980119, -5101348, -2355790, },
- },
- {
- { -33802468, 10267119, -1898912, },
- { 201879040, 14075145, -3394635, },
- { 22816476, 7213935, -933082, },
- { -64834140, 4773320, 1056562, },
- },
- {
- { -80765248, -6639483, -563714, },
- { 125787248, -11312944, -415538, },
- { -24745454, -13758928, -980863, },
- { -87778392, 4248260, 3027952, },
- },
- {
- { -120569936, 5925445, 841277, },
- { 63367948, 11264625, 626528, },
- { -102320616, 17017734, 638340, },
- { -97495760, 4630512, 3665218, },
- },
- {
- { -152345168, -6521908, 893890, },
- { 16718697, -7630010, 377957, },
- { -190588640, -18248242, 2711735, },
- { -108214384, -6749541, 830539, },
- },
- {
- { -177624272, 5427765, 150861, },
- { -17577154, 5733782, 326418, },
- { -263011456, 15330349, 2882997, },
- { -121832120, 1862405, 221191, },
- },
- {
- { -198991744, -3744138, -146566, },
- { -45709188, -5207111, 259846, },
- { -295502880, -4590247, 1115618, },
- { -133506912, -1175747, 1578937, },
- },
- {
- { -219550144, 3167539, 266825, },
- { -72961832, 5575942, 307627, },
- { -277467232, -11616276, 259846, },
- { -136396880, 1964411, 1173063, },
- },
- {
- { -241995632, -4554813, 776315, },
- { -102694280, -7847442, -87510, },
- { -219062128, 21616034, 1965484, },
- { -124360240, 4155918, 24159, },
- },
- {
- { -267135696, 6463389, 639413, },
- { -136286832, 8490613, -1046361, },
- { -147398976, -16639777, 3440269, },
- { -95881920, -11134166, 1088774, },
- },
- {
- { -292788992, -5709086, 300111, },
- { -174024560, -6152541, -881005, },
- { -90929824, 4872104, 1822677, },
- { -56544856, 7351911, 1556926, },
- },
- {
- { -315248448, 4444755, 176094, },
- { -216430912, 5672578, 1190243, },
- { -63613836, 1815161, -973884, },
- { -14734959, -4429722, -980863, },
- },
- {
- { -331795360, -2286533, 193810, },
- { -263258944, -11120744, 2431488, },
- { -60858612, -1745367, -1487132, },
- { 22258132, 7237557, -2788508, },
- },
- {
- { -342355616, 841277, 440234, },
- { -309661760, 12847858, 1188095, },
- { -67215168, 2202781, -774705, },
- { 46283104, -5788006, -2136209, },
- },
- {
- { -349583488, -577673, 766652, },
- { -346501312, -7875360, -385473, },
- { -66369056, 1041530, -863288, },
- { 49858664, 1305133, -173946, },
- },
- {
- { -356901056, 1767379, 918049, },
- { -366997440, 160524, -299037, },
- { -49406084, -6653441, -853088, },
- { 30276836, 9475235, 200790, },
- },
- {
- { -366345152, -3576634, 425202, },
- { -372272192, 4114579, 1374390, },
- { -19810000, 8818642, -529892, },
- { -6595459, -12531641, -1695438, },
- },
- {
- { -377341856, 2646237, -90731, },
- { -370839296, -1026497, 2412698, },
- { 9653476, -7412040, -16106, },
- { -47739100, 6718403, -1707786, },
- },
- {
- { -387915552, -1152125, 230854, },
- { -371675744, -3176665, 1544041, },
- { 25164214, 1859184, 654983, },
- { -82804288, -5714991, -727997, },
- },
- {
- { -396796992, 1392643, 666794, },
- { -378056992, 4689031, -171262, },
- { 19768660, 6249178, 256624, },
- { -108289544, 1178432, 206695, },
- },
- {
- { -403633504, -1648194, 535797, },
- { -387308864, -1229434, -613107, },
- { -2716030, -9990631, -1557463, },
- { -127641056, -3103114, 1093069, },
- },
- {
- { -408498112, 863288, 293132, },
- { -395626080, 571231, 122407, },
- { -31068720, 5430986, -2434173, },
- { -147066656, 3565360, 1324461, },
- },
- {
- { -411884672, -142271, 401579, },
- { -401592320, -314606, 565325, },
- { -54940148, 1724429, 31675, },
- { -169158896, -6089190, 1395864, },
- },
- {
- { -414639904, 598074, 517544, },
- { -406241088, 1180579, 527744, },
- { -71434432, 2633889, 2132988, },
- { -191106720, 6543920, 594316, },
- },
- {
- { -417352160, -893353, 362925, },
- { -411894336, -1373316, 320512, },
- { -82008640, -5202279, 586263, },
- { -206321104, -3711389, -562104, },
- },
- {
- { -419996256, 636729, 215285, },
- { -420462816, 2209761, 267899, },
- { -86930136, -235686, -577673, },
- { -209848880, -3002182, -424665, },
- },
- {
- { -422230720, -221728, 270583, },
- { -432432352, -2306398, 485868, },
- { -86706800, 3112778, 707059, },
- { -203022560, 5057324, 1082869, },
- },
- {
- { -423848832, 489089, 251792, },
- { -446671776, 3304977, 759672, },
- { -83068424, 68183, 1319092, },
- { -192733440, -1730872, 1611150, },
- },
- {
- { -424760992, 63351, 202937, },
- { -460961664, -3841848, 443455, },
- { -76892800, -1149441, -119722, },
- { -185762160, -2057289, 271120, },
- },
- {
- { -425047680, -271657, 370441, },
- { -472584928, 1830193, 166430, },
- { -68005976, -2961380, -936303, },
- { -184923568, 1370095, -1126355, },
- },
- {
- { -425072928, -341987, 346819, },
- { -479999104, 78920, 590021, },
- { -57284128, 6429566, 824634, },
- { -189367248, 2083059, -15032, },
- },
- {
- { -424990784, 175020, 139050, },
- { -483562304, -411243, 1259499, },
- { -47154984, -1808718, 2434710, },
- { -197468640, 1500017, 1709934, },
- },
- {
- { -424858176, 115964, 77846, },
- { -484666112, -1862405, 847719, },
- { -38233800, -2864743, 878321, },
- { -206326464, -4465156, 1128503, },
- },
- {
- { -424940832, -514859, 297427, },
- { -483952096, 216359, -72478, },
- { -27022860, -1696512, -1106491, },
- { -210888800, 2183991, -452582, },
- },
- {
- { -425639840, -178778, 540092, },
- { -481676288, 1781875, 128849, },
- { -10166724, 7968775, -143345, },
- { -207172576, 4294968, -323196, },
- },
- {
- { -427088864, 1015760, 356482, },
- { -479221184, -1410897, 833761, },
- { 11272679, -7029251, 1931125, },
- { -195597648, -5826123, 1405528, },
- },
- {
- { -428821344, -734976, -3221, },
- { -477736736, 622233, 1392643, },
- { 33686504, 441845, 1117228, },
- { -180261920, 1124745, 1406602, },
- },
- {
- { -430334784, -178241, -29528, },
- { -476999616, 1311039, 1312649, },
- { 54553600, 3033321, -3351148, },
- { -164809712, 2705830, -1767379, },
- },
- {
- { -431378464, 1071594, 520228, },
- { -476083168, -2218351, 50466, },
- { 72254768, 1032403, -7908646, },
- { -151465776, -1608465, -6150930, },
- },
-};
-
-const Word32 leftHRIRImag_FOA_fx[BINAURAL_CONVBANDS][FOA_CHANNELS][BINAURAL_NTAPS_SBA] /* Q29 */=
-{
- {
- { -91827472, 317236480, -98863704, },
- { -131005096, 193167232, -34935264, },
- { -8050380, 19192062, -6576669, },
- { -16915192, 18672370, -5312338, },
- },
- {
- { -122729224, 256856768, -107804752, },
- { -251478928, -99211600, -118276424, },
- { -11542188, 14916958, -6755984, },
- { -32386738, 16429324, -1395328, },
- },
- {
- { 54239532, -244900640, 44591424, },
- { -23413478, -467581824, -29682518, },
- { 997506, 14816027, -8756365, },
- { -15600932, 18149458, -2875481, },
- },
- {
- { 220117072, -45366664, 74753368, },
- { 362508672, 117097448, 109974784, },
- { 21830246, 27549530, -9684614, },
- { 34092912, 30310658, -8868571, },
- },
- {
- { 223175088, 142300320, 1409823, },
- { 544197568, 179799680, 43528956, },
- { 34919156, -21948894, 6631430, },
- { 97193496, -32147830, 2729989, },
- },
- {
- { 79654464, -59800976, -39559332, },
- { 454156832, -134717024, -48993228, },
- { 13752485, -32286342, 6853694, },
- { 122940752, -17619566, 1726040, },
- },
- {
- { -104061688, -7630010, -21617644, },
- { 216328368, 10750840, -49867256, },
- { -31508954, 22065932, -4387309, },
- { 86880744, 8264591, -2589865, },
- },
- {
- { -240973440, 13051332, 6510097, },
- { -22812182, 23365696, -3999688, },
- { -69285336, -7475391, -7755637, },
- { -2561948, -22775674, 3018825, },
- },
- {
- { -312108832, 8353712, 14778982, },
- { -195600864, 15555298, 20933134, },
- { -81934016, -17370458, -3028489, },
- { -117253144, 40628244, -170188, },
- },
- {
- { -344269024, -17826262, 7607998, },
- { -309629568, -41896868, 13034689, },
- { -77344848, 11716671, 5335423, },
- { -210388432, -14371497, -5011690, },
- },
- {
- { -364532672, 11803644, 40265, },
- { -389468160, 26263726, -153008, },
- { -82385528, 12043088, 4489852, },
- { -249460832, -14286672, 965831, },
- },
- {
- { -380773536, -935766, -1196148, },
- { -445324224, -4230543, -1495722, },
- { -111708344, -12504260, 124554, },
- { -239833664, 7385197, 5639829, },
- },
- {
- { -389682912, -2850785, 1179505, },
- { -477684128, -1794223, 2923799, },
- { -159179008, 11199664, 247497, },
- { -206065008, -8614631, 4379256, },
- },
- {
- { -389125632, 2067490, 2549600, },
- { -488572384, -1506997, 3925600, },
- { -205428816, -7463580, 1919314, },
- { -171335376, 2811593, 2982855, },
- },
- {
- { -381444096, -631360, 1968169, },
- { -484414880, -1114007, 2336462, },
- { -226298608, 986232, 2987150, },
- { -148377168, 3444564, -363998, },
- },
- {
- { -370938080, 1025960, 766652, },
- { -474210560, 2183454, 1662152, },
- { -205100800, 6620155, 2010045, },
- { -132984000, 4664872, -1546725, },
- },
- {
- { -360993088, -2371896, 439697, },
- { -466023808, -693100, 1343788, },
- { -139791520, -16778290, -210453, },
- { -115541064, -5763309, 226023, },
- },
- {
- { -353560640, 1990717, 912681, },
- { -463320128, -323733, 1133335, },
- { -45342508, 24715926, -1067836, },
- { -90984048, 4257923, 55298, },
- },
- {
- { -348975232, -579284, 1252520, },
- { -465747872, 1912871, 869731, },
- { 50002548, -22956064, 155693, },
- { -59099824, -6874095, -1229434, },
- },
- {
- { -345565024, -584116, 925029, },
- { -471061824, -1830730, 382789, },
- { 116765128, 9101573, 934155, },
- { -25054692, 10072235, -651224, },
- },
- {
- { -340056736, -837519, 359167, },
- { -476513184, -745714, 787590, },
- { 139741600, 5599027, -766115, },
- { 1874216, -4294968, 311922, },
- },
- {
- { -329512032, 3326452, 347892, },
- { -479915360, 2155537, 2514703, },
- { 125933272, -9092983, -2538863, },
- { 13040594, -4439386, -1731409, },
- },
- {
- { -313767776, -4133906, 525597, },
- { -479220096, 1701344, 2884608, },
- { 97017944, 6705518, -2516851, },
- { 5670968, 1434519, -2862596, },
- },
- {
- { -295445440, 4591320, 667331, },
- { -470126592, -565325, 970663, },
- { 75033616, -697395, -1292248, },
- { -19925428, -3649112, -606127, },
- },
- {
- { -278323008, -3292629, 802622, },
- { -447673024, -5935645, -395674, },
- { 71051104, -2177012, -416612, },
- { -61827664, 9865003, 1088774, },
- },
- {
- { -265061760, 1615982, 630286, },
- { -412387200, 11010149, -35433, },
- { 81976432, 4446365, -627602, },
- { -112587200, -13473312, 853625, },
- },
- {
- { -255525856, -602369, 188979, },
- { -371971552, -11827803, 1505386, },
- { 95436856, -5326297, 31675, },
- { -160003632, 10853919, -83215, },
- },
- {
- { -247385824, 1291175, -201863, },
- { -337248896, 4990752, 2053531, },
- { 96728568, -2098092, 571231, },
- { -192391984, -3604015, -186294, },
- },
- {
- { -238005072, -3346853, 132070, },
- { -314504352, 184684, 539018, },
- { 78651048, 6275484, 510564, },
- { -205117440, -2432562, 940061, },
- },
- {
- { -226535360, 2879776, 651761, },
- { -301594208, -433792, -1168231, },
- { 45513232, -11270531, 24159, },
- { -202783120, 3430605, 2116345, },
- },
- {
- { -213762128, -1999307, 403190, },
- { -291736736, -3833258, -1039919, },
- { 9752260, 9126806, -1229971, },
- { -194716640, -1034550, 2008434, },
- },
- {
- { -200588400, 2588255, 24159, },
- { -280100576, 4541391, 303332, },
- { -15143518, -1603633, -1153199, },
- { -187583232, 324807, 1420560, },
- },
- {
- { -187805504, -2961917, 123480, },
- { -266554256, -3057480, 780610, },
- { -23128936, -5175973, 1080184, },
- { -181926224, 722628, 860067, },
- },
- {
- { -176120496, 2148021, 235686, },
- { -253305904, 2241436, 539555, },
- { -17506286, 2914135, 2852932, },
- { -173383536, 683437, -49392, },
- },
- {
- { -165675680, -1682554, 77846, },
- { -242489552, -1381906, 229244, },
- { -5524402, 2670396, 750546, },
- { -157129760, -4080756, -759672, },
- },
- {
- { -156013072, 1801202, -73014, },
- { -234474608, 1538135, 200790, },
- { 9308268, 3935801, -1162862, },
- { -132938904, 8243653, -340913, },
- },
- {
- { -146564688, -2241436, 11274, },
- { -227799696, -1290101, 381715, },
- { 25715042, -6164352, 228707, },
- { -106540424, -7786239, 1059246, },
- },
- {
- { -137148512, 1853278, 86973, },
- { -220042992, 1846836, 517007, },
- { 41445896, 2162516, 934692, },
- { -86086712, 1642825, 1195612, },
- },
- {
- { -127902512, -1851131, 9127, },
- { -208989888, -1779727, 242129, },
- { 55510304, -83215, -464393, },
- { -75707392, 1755568, -283468, },
- },
- {
- { -119002272, 2083059, 107374, },
- { -193420624, 4080219, -36507, },
- { 68245960, 3600793, -1138166, },
- { -73431056, -808528, -1282048, },
- },
- {
- { -110767744, -1299765, 119185, },
- { -173817856, -5373004, 339839, },
- { 79296904, -5206037, 417149, },
- { -74193416, -2953327, -99321, },
- },
- {
- { -103295040, 1255741, -75699, },
- { -152354304, 4845797, 751619, },
- { 87356952, 671089, 1484985, },
- { -73872904, 734976, 1438814, },
- },
- {
- { -96434360, -1574642, -77846, },
- { -131264936, -2705293, 316217, },
- { 92803504, 3612068, -277562, },
- { -69830264, 1721745, 538482, },
- },
- {
- { -90215248, 1533840, 112743, },
- { -111481784, 2989834, -623844, },
- { 98670968, 573915, -2318746, },
- { -59650116, 1540820, -1165010, },
- },
- {
- { -84677968, -1045288, 243739, },
- { -92820688, -5504001, -319975, },
- { 106743360, -6097780, -1290638, },
- { -43329776, -6536940, -955630, },
- },
- {
- { -79586280, 331786, 13959, },
- { -75807784, 3888556, 570694, },
- { 113984672, 2543158, 522375, },
- { -25049860, 5942624, 534723, },
- },
- {
- { -74304008, -947577, -310848, },
- { -60786672, -2461553, 690953, },
- { 115839024, 4283156, -547071, },
- { -10739566, 200790, 307627, },
- },
- {
- { -68309304, 1848447, -228707, },
- { -46586972, 1466731, 171262, },
- { 110702784, -5914707, -3579318, },
- { -3607773, -3080029, -1977833, },
- },
- {
- { -61599496, -2068027, 153545, },
- { -31771484, -1588064, -951335, },
- { 99163816, 1153199, -4716411, },
- { -3590593, 390842, -3318936, },
- },
- {
- { -54124640, 1265942, 319438, },
- { -15888158, 4613869, -1487132, },
- { 81348832, 1777043, -2140504, },
- { -10306311, 3014530, -1531693, },
- },
-};
-
-const Word32 rightHRIRReal_FOA_fx[BINAURAL_CONVBANDS][FOA_CHANNELS][BINAURAL_NTAPS_SBA] /* Q29 */=
-{
- {
- { 97523672, 405096480, 117391120, },
- { -168510352, 226681936, -72761040, },
- { 7752416, 62658204, -7288023, },
- { 23083838, 10139344, -8373576, },
- },
- {
- { -91860224, -231391360, -85269600, },
- { 87150256, 545616512, -29677688, },
- { -4872641, 57707180, -5408975, },
- { -1218160, 32580012, 7697655, },
- },
- {
- { -171940960, -134628432, -89749248, },
- { 368214528, -37159520, 138843408, },
- { -11674258, 43248712, 5395016, },
- { -37626060, 48839148, 9722195, },
- },
- {
- { -48351668, 213029312, 16819628, },
- { 294134400, -328650368, 34809100, },
- { -7545721, 5860483, -10766409, },
- { -56161528, -5217849, -7862475, },
- },
- {
- { 166833712, -29396904, 57186952, },
- { -41763724, 163917424, -77779176, },
- { 26105884, -27028766, -4032438, },
- { -19192598, -26607860, -4379256, },
- },
- {
- { 316903104, -63921460, 13246753, },
- { -380145408, 47550120, -50608136, },
- { 64360084, 26156350, 7871065, },
- { 64651068, 31446140, 2492692, },
- },
- {
- { 342714240, 40063992, -23562728, },
- { -562947776, -70490080, 20235738, },
- { 76979232, 18240190, 7850664, },
- { 157704224, -9568113, -242129, },
- },
- {
- { 279815520, -2827162, -22232898, },
- { -587650304, -112743, 39622684, },
- { 58521076, -19127636, -1853278, },
- { 218817312, 18382996, -1549946, },
- },
- {
- { 194067568, -7948911, -5098663, },
- { -529768096, 24970940, 15723875, },
- { 31035970, 14948634, -8168491, },
- { 219732144, 7948374, 3088082, },
- },
- {
- { 123001424, -5282810, 5087926, },
- { -450608096, -378494, -4850092, },
- { 19481434, 16145856, -5490579, },
- { 157347744, -37542848, -2373506, },
- },
- {
- { 67425616, 16203301, 3928821, },
- { -369236192, -28034862, -4899484, },
- { 28122372, -10347650, 1939715, },
- { 66008816, 19518478, -7190849, },
- },
- {
- { 16583942, -16200617, -446677, },
- { -285353856, 26029112, 2506114, },
- { 36405752, -2548526, 1474248, },
- { -13980119, -5101348, -2355790, },
- },
- {
- { -33802468, 10267119, -1898912, },
- { -201879040, -14075145, 3394635, },
- { 22816476, 7213935, -933082, },
- { -64834140, 4773320, 1056562, },
- },
- {
- { -80765248, -6639483, -563714, },
- { -125787248, 11312944, 415538, },
- { -24745454, -13758928, -980863, },
- { -87778392, 4248260, 3027952, },
- },
- {
- { -120569936, 5925445, 841277, },
- { -63367948, -11264625, -626528, },
- { -102320616, 17017734, 638340, },
- { -97495760, 4630512, 3665218, },
- },
- {
- { -152345168, -6521908, 893890, },
- { -16718697, 7630010, -377957, },
- { -190588640, -18248242, 2711735, },
- { -108214384, -6749541, 830539, },
- },
- {
- { -177624272, 5427765, 150861, },
- { 17577154, -5733782, -326418, },
- { -263011456, 15330349, 2882997, },
- { -121832120, 1862405, 221191, },
- },
- {
- { -198991744, -3744138, -146566, },
- { 45709188, 5207111, -259846, },
- { -295502880, -4590247, 1115618, },
- { -133506912, -1175747, 1578937, },
- },
- {
- { -219550144, 3167539, 266825, },
- { 72961832, -5575942, -307627, },
- { -277467232, -11616276, 259846, },
- { -136396880, 1964411, 1173063, },
- },
- {
- { -241995632, -4554813, 776315, },
- { 102694280, 7847442, 87510, },
- { -219062128, 21616034, 1965484, },
- { -124360240, 4155918, 24159, },
- },
- {
- { -267135696, 6463389, 639413, },
- { 136286832, -8490613, 1046361, },
- { -147398976, -16639777, 3440269, },
- { -95881920, -11134166, 1088774, },
- },
- {
- { -292788992, -5709086, 300111, },
- { 174024560, 6152541, 881005, },
- { -90929824, 4872104, 1822677, },
- { -56544856, 7351911, 1556926, },
- },
- {
- { -315248448, 4444755, 176094, },
- { 216430912, -5672578, -1190243, },
- { -63613836, 1815161, -973884, },
- { -14734959, -4429722, -980863, },
- },
- {
- { -331795360, -2286533, 193810, },
- { 263258944, 11120744, -2431488, },
- { -60858612, -1745367, -1487132, },
- { 22258132, 7237557, -2788508, },
- },
- {
- { -342355616, 841277, 440234, },
- { 309661760, -12847858, -1188095, },
- { -67215168, 2202781, -774705, },
- { 46283104, -5788006, -2136209, },
- },
- {
- { -349583488, -577673, 766652, },
- { 346501312, 7875360, 385473, },
- { -66369056, 1041530, -863288, },
- { 49858664, 1305133, -173946, },
- },
- {
- { -356901056, 1767379, 918049, },
- { 366997440, -160524, 299037, },
- { -49406084, -6653441, -853088, },
- { 30276836, 9475235, 200790, },
- },
- {
- { -366345152, -3576634, 425202, },
- { 372272192, -4114579, -1374390, },
- { -19810000, 8818642, -529892, },
- { -6595459, -12531641, -1695438, },
- },
- {
- { -377341856, 2646237, -90731, },
- { 370839296, 1026497, -2412698, },
- { 9653476, -7412040, -16106, },
- { -47739100, 6718403, -1707786, },
- },
- {
- { -387915552, -1152125, 230854, },
- { 371675744, 3176665, -1544041, },
- { 25164214, 1859184, 654983, },
- { -82804288, -5714991, -727997, },
- },
- {
- { -396796992, 1392643, 666794, },
- { 378056992, -4689031, 171262, },
- { 19768660, 6249178, 256624, },
- { -108289544, 1178432, 206695, },
- },
- {
- { -403633504, -1648194, 535797, },
- { 387308864, 1229434, 613107, },
- { -2716030, -9990631, -1557463, },
- { -127641056, -3103114, 1093069, },
- },
- {
- { -408498112, 863288, 293132, },
- { 395626080, -571231, -122407, },
- { -31068720, 5430986, -2434173, },
- { -147066656, 3565360, 1324461, },
- },
- {
- { -411884672, -142271, 401579, },
- { 401592320, 314606, -565325, },
- { -54940148, 1724429, 31675, },
- { -169158896, -6089190, 1395864, },
- },
- {
- { -414639904, 598074, 517544, },
- { 406241088, -1180579, -527744, },
- { -71434432, 2633889, 2132988, },
- { -191106720, 6543920, 594316, },
- },
- {
- { -417352160, -893353, 362925, },
- { 411894336, 1373316, -320512, },
- { -82008640, -5202279, 586263, },
- { -206321104, -3711389, -562104, },
- },
- {
- { -419996256, 636729, 215285, },
- { 420462816, -2209761, -267899, },
- { -86930136, -235686, -577673, },
- { -209848880, -3002182, -424665, },
- },
- {
- { -422230720, -221728, 270583, },
- { 432432352, 2306398, -485868, },
- { -86706800, 3112778, 707059, },
- { -203022560, 5057324, 1082869, },
- },
- {
- { -423848832, 489089, 251792, },
- { 446671776, -3304977, -759672, },
- { -83068424, 68183, 1319092, },
- { -192733440, -1730872, 1611150, },
- },
- {
- { -424760992, 63351, 202937, },
- { 460961664, 3841848, -443455, },
- { -76892800, -1149441, -119722, },
- { -185762160, -2057289, 271120, },
- },
- {
- { -425047680, -271657, 370441, },
- { 472584928, -1830193, -166430, },
- { -68005976, -2961380, -936303, },
- { -184923568, 1370095, -1126355, },
- },
- {
- { -425072928, -341987, 346819, },
- { 479999104, -78920, -590021, },
- { -57284128, 6429566, 824634, },
- { -189367248, 2083059, -15032, },
- },
- {
- { -424990784, 175020, 139050, },
- { 483562304, 411243, -1259499, },
- { -47154984, -1808718, 2434710, },
- { -197468640, 1500017, 1709934, },
- },
- {
- { -424858176, 115964, 77846, },
- { 484666112, 1862405, -847719, },
- { -38233800, -2864743, 878321, },
- { -206326464, -4465156, 1128503, },
- },
- {
- { -424940832, -514859, 297427, },
- { 483952096, -216359, 72478, },
- { -27022860, -1696512, -1106491, },
- { -210888800, 2183991, -452582, },
- },
- {
- { -425639840, -178778, 540092, },
- { 481676288, -1781875, -128849, },
- { -10166724, 7968775, -143345, },
- { -207172576, 4294968, -323196, },
- },
- {
- { -427088864, 1015760, 356482, },
- { 479221184, 1410897, -833761, },
- { 11272679, -7029251, 1931125, },
- { -195597648, -5826123, 1405528, },
- },
- {
- { -428821344, -734976, -3221, },
- { 477736736, -622233, -1392643, },
- { 33686504, 441845, 1117228, },
- { -180261920, 1124745, 1406602, },
- },
- {
- { -430334784, -178241, -29528, },
- { 476999616, -1311039, -1312649, },
- { 54553600, 3033321, -3351148, },
- { -164809712, 2705830, -1767379, },
- },
- {
- { -431378464, 1071594, 520228, },
- { 476083168, 2218351, -50466, },
- { 72254768, 1032403, -7908646, },
- { -151465776, -1608465, -6150930, },
- },
-};
-
-const Word32 rightHRIRImag_FOA_fx[BINAURAL_CONVBANDS][FOA_CHANNELS][BINAURAL_NTAPS_SBA] /* Q29 */=
-{
- {
- { -91827472, 317236480, -98863704, },
- { 131005096, -193167232, 34935264, },
- { -8050380, 19192062, -6576669, },
- { -16915192, 18672370, -5312338, },
- },
- {
- { -122729224, 256856768, -107804752, },
- { 251478928, 99211600, 118276424, },
- { -11542188, 14916958, -6755984, },
- { -32386738, 16429324, -1395328, },
- },
- {
- { 54239532, -244900640, 44591424, },
- { 23413478, 467581824, 29682518, },
- { 997506, 14816027, -8756365, },
- { -15600932, 18149458, -2875481, },
- },
- {
- { 220117072, -45366664, 74753368, },
- { -362508672, -117097448, -109974784, },
- { 21830246, 27549530, -9684614, },
- { 34092912, 30310658, -8868571, },
- },
- {
- { 223175088, 142300320, 1409823, },
- { -544197568, -179799680, -43528956, },
- { 34919156, -21948894, 6631430, },
- { 97193496, -32147830, 2729989, },
- },
- {
- { 79654464, -59800976, -39559332, },
- { -454156832, 134717024, 48993228, },
- { 13752485, -32286342, 6853694, },
- { 122940752, -17619566, 1726040, },
- },
- {
- { -104061688, -7630010, -21617644, },
- { -216328368, -10750840, 49867256, },
- { -31508954, 22065932, -4387309, },
- { 86880744, 8264591, -2589865, },
- },
- {
- { -240973440, 13051332, 6510097, },
- { 22812182, -23365696, 3999688, },
- { -69285336, -7475391, -7755637, },
- { -2561948, -22775674, 3018825, },
- },
- {
- { -312108832, 8353712, 14778982, },
- { 195600864, -15555298, -20933134, },
- { -81934016, -17370458, -3028489, },
- { -117253144, 40628244, -170188, },
- },
- {
- { -344269024, -17826262, 7607998, },
- { 309629568, 41896868, -13034689, },
- { -77344848, 11716671, 5335423, },
- { -210388432, -14371497, -5011690, },
- },
- {
- { -364532672, 11803644, 40265, },
- { 389468160, -26263726, 153008, },
- { -82385528, 12043088, 4489852, },
- { -249460832, -14286672, 965831, },
- },
- {
- { -380773536, -935766, -1196148, },
- { 445324224, 4230543, 1495722, },
- { -111708344, -12504260, 124554, },
- { -239833664, 7385197, 5639829, },
- },
- {
- { -389682912, -2850785, 1179505, },
- { 477684128, 1794223, -2923799, },
- { -159179008, 11199664, 247497, },
- { -206065008, -8614631, 4379256, },
- },
- {
- { -389125632, 2067490, 2549600, },
- { 488572384, 1506997, -3925600, },
- { -205428816, -7463580, 1919314, },
- { -171335376, 2811593, 2982855, },
- },
- {
- { -381444096, -631360, 1968169, },
- { 484414880, 1114007, -2336462, },
- { -226298608, 986232, 2987150, },
- { -148377168, 3444564, -363998, },
- },
- {
- { -370938080, 1025960, 766652, },
- { 474210560, -2183454, -1662152, },
- { -205100800, 6620155, 2010045, },
- { -132984000, 4664872, -1546725, },
- },
- {
- { -360993088, -2371896, 439697, },
- { 466023808, 693100, -1343788, },
- { -139791520, -16778290, -210453, },
- { -115541064, -5763309, 226023, },
- },
- {
- { -353560640, 1990717, 912681, },
- { 463320128, 323733, -1133335, },
- { -45342508, 24715926, -1067836, },
- { -90984048, 4257923, 55298, },
- },
- {
- { -348975232, -579284, 1252520, },
- { 465747872, -1912871, -869731, },
- { 50002548, -22956064, 155693, },
- { -59099824, -6874095, -1229434, },
- },
- {
- { -345565024, -584116, 925029, },
- { 471061824, 1830730, -382789, },
- { 116765128, 9101573, 934155, },
- { -25054692, 10072235, -651224, },
- },
- {
- { -340056736, -837519, 359167, },
- { 476513184, 745714, -787590, },
- { 139741600, 5599027, -766115, },
- { 1874216, -4294968, 311922, },
- },
- {
- { -329512032, 3326452, 347892, },
- { 479915360, -2155537, -2514703, },
- { 125933272, -9092983, -2538863, },
- { 13040594, -4439386, -1731409, },
- },
- {
- { -313767776, -4133906, 525597, },
- { 479220096, -1701344, -2884608, },
- { 97017944, 6705518, -2516851, },
- { 5670968, 1434519, -2862596, },
- },
- {
- { -295445440, 4591320, 667331, },
- { 470126592, 565325, -970663, },
- { 75033616, -697395, -1292248, },
- { -19925428, -3649112, -606127, },
- },
- {
- { -278323008, -3292629, 802622, },
- { 447673024, 5935645, 395674, },
- { 71051104, -2177012, -416612, },
- { -61827664, 9865003, 1088774, },
- },
- {
- { -265061760, 1615982, 630286, },
- { 412387200, -11010149, 35433, },
- { 81976432, 4446365, -627602, },
- { -112587200, -13473312, 853625, },
- },
- {
- { -255525856, -602369, 188979, },
- { 371971552, 11827803, -1505386, },
- { 95436856, -5326297, 31675, },
- { -160003632, 10853919, -83215, },
- },
- {
- { -247385824, 1291175, -201863, },
- { 337248896, -4990752, -2053531, },
- { 96728568, -2098092, 571231, },
- { -192391984, -3604015, -186294, },
- },
- {
- { -238005072, -3346853, 132070, },
- { 314504352, -184684, -539018, },
- { 78651048, 6275484, 510564, },
- { -205117440, -2432562, 940061, },
- },
- {
- { -226535360, 2879776, 651761, },
- { 301594208, 433792, 1168231, },
- { 45513232, -11270531, 24159, },
- { -202783120, 3430605, 2116345, },
- },
- {
- { -213762128, -1999307, 403190, },
- { 291736736, 3833258, 1039919, },
- { 9752260, 9126806, -1229971, },
- { -194716640, -1034550, 2008434, },
- },
- {
- { -200588400, 2588255, 24159, },
- { 280100576, -4541391, -303332, },
- { -15143518, -1603633, -1153199, },
- { -187583232, 324807, 1420560, },
- },
- {
- { -187805504, -2961917, 123480, },
- { 266554256, 3057480, -780610, },
- { -23128936, -5175973, 1080184, },
- { -181926224, 722628, 860067, },
- },
- {
- { -176120496, 2148021, 235686, },
- { 253305904, -2241436, -539555, },
- { -17506286, 2914135, 2852932, },
- { -173383536, 683437, -49392, },
- },
- {
- { -165675680, -1682554, 77846, },
- { 242489552, 1381906, -229244, },
- { -5524402, 2670396, 750546, },
- { -157129760, -4080756, -759672, },
- },
- {
- { -156013072, 1801202, -73014, },
- { 234474608, -1538135, -200790, },
- { 9308268, 3935801, -1162862, },
- { -132938904, 8243653, -340913, },
- },
- {
- { -146564688, -2241436, 11274, },
- { 227799696, 1290101, -381715, },
- { 25715042, -6164352, 228707, },
- { -106540424, -7786239, 1059246, },
- },
- {
- { -137148512, 1853278, 86973, },
- { 220042992, -1846836, -517007, },
- { 41445896, 2162516, 934692, },
- { -86086712, 1642825, 1195612, },
- },
- {
- { -127902512, -1851131, 9127, },
- { 208989888, 1779727, -242129, },
- { 55510304, -83215, -464393, },
- { -75707392, 1755568, -283468, },
- },
- {
- { -119002272, 2083059, 107374, },
- { 193420624, -4080219, 36507, },
- { 68245960, 3600793, -1138166, },
- { -73431056, -808528, -1282048, },
- },
- {
- { -110767744, -1299765, 119185, },
- { 173817856, 5373004, -339839, },
- { 79296904, -5206037, 417149, },
- { -74193416, -2953327, -99321, },
- },
- {
- { -103295040, 1255741, -75699, },
- { 152354304, -4845797, -751619, },
- { 87356952, 671089, 1484985, },
- { -73872904, 734976, 1438814, },
- },
- {
- { -96434360, -1574642, -77846, },
- { 131264936, 2705293, -316217, },
- { 92803504, 3612068, -277562, },
- { -69830264, 1721745, 538482, },
- },
- {
- { -90215248, 1533840, 112743, },
- { 111481784, -2989834, 623844, },
- { 98670968, 573915, -2318746, },
- { -59650116, 1540820, -1165010, },
- },
- {
- { -84677968, -1045288, 243739, },
- { 92820688, 5504001, 319975, },
- { 106743360, -6097780, -1290638, },
- { -43329776, -6536940, -955630, },
- },
- {
- { -79586280, 331786, 13959, },
- { 75807784, -3888556, -570694, },
- { 113984672, 2543158, 522375, },
- { -25049860, 5942624, 534723, },
- },
- {
- { -74304008, -947577, -310848, },
- { 60786672, 2461553, -690953, },
- { 115839024, 4283156, -547071, },
- { -10739566, 200790, 307627, },
- },
- {
- { -68309304, 1848447, -228707, },
- { 46586972, -1466731, -171262, },
- { 110702784, -5914707, -3579318, },
- { -3607773, -3080029, -1977833, },
- },
- {
- { -61599496, -2068027, 153545, },
- { 31771484, 1588064, 951335, },
- { 99163816, 1153199, -4716411, },
- { -3590593, 390842, -3318936, },
- },
- {
- { -54124640, 1265942, 319438, },
- { 15888158, -4613869, 1487132, },
- { 81348832, 1777043, -2140504, },
- { -10306311, 3014530, -1531693, },
- },
-};
-
-const Word32 FASTCONV_HRIR_latency_s_fx = 666667;
-
-const Word32 leftHRIRReal_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS] /* Q29 */=
-{
- {
- { 625042304, -38326140, 24910274, },
- { 335878240, 171201152, 7902740, },
- { 537386304, 24339580, 36527624, },
- { 610952640, -82900920, -32977296, },
- { 162773888, 291606816, 80030808, },
- { 672814144, -110260936, -35019552, },
- { 45806900, 473868032, 110131016, },
- { 704516928, -118449832, -48664128, },
- { 31259846, 506221504, 91921424, },
- { 555327488, 63325536, 28055264, },
- { 365311136, 194221648, 26628798, },
- { 616197376, -46350752, 6811282, },
- { 134318128, 374452416, 114475376, },
- { 584630400, -49424872, -314606, },
- { 269210176, 195440880, 39850856, },
- },
- {
- { 615573504, -83027624, 23161684, },
- { 153939680, -135309728, -82342040, },
- { 509388480, -61414812, 27712740, },
- { 678085120, 133931576, 33365990, },
- { -32580012, -194236672, -63221920, },
- { 725016256, 115785872, 39330088, },
- { -56443924, -209270128, -145981104, },
- { 738054144, 93220656, 26321708, },
- { -50629612, -88218632, -142844176, },
- { 558783296, -111704584, -44579076, },
- { 235484464, -10732050, -31916976, },
- { 626338304, -79976048, -6355478, },
- { -55024972, -244054000, -73130944, },
- { 589115456, -29078540, 8979703, },
- { 53143240, -92013232, -23232014, },
- },
- {
- { 613705728, 190158608, -87268368, },
- { -47502340, -225702144, 1009317, },
- { 500094176, 66390532, -18193482, },
- { 707738112, 53812184, 55165632, },
- { -160684384, -74954160, -65988952, },
- { 728532736, 116576688, 32762010, },
- { -24977920, -437184192, -53591528, },
- { 726640256, 153417312, 2280628, },
- { 6060199, -491625056, 15927886, },
- { 619300480, -227791104, -7439957, },
- { 68508488, -8391829, -511638, },
- { 642141120, 15699179, -49628348, },
- { -149295744, -68784976, -106736376, },
- { 583061120, 57918708, -26482768, },
- { -174591488, 17845590, -8568997, },
- },
- {
- { 711792064, 274690016, -82055352, },
- { -246570320, -252771712, 25805774, },
- { 569176064, 166868064, -9373229, },
- { 639823424, -91681448, 10991895, },
- { -120591408, 45267880, -33620468, },
- { 661089408, -61773976, -25802552, },
- { 45526652, 26081726, 112846504, },
- { 689595136, 6112812, -45711872, },
- { 39781060, -244305248, 111033496, },
- { 685362944, -63247152, 47053516, },
- { -118973816, -45193256, 16270947, },
- { 687694592, 133942848, -11167989, },
- { -50758996, 267372992, -9620727, },
- { 595376448, 97235912, -13216688, },
- { -268843488, -18899466, -7071664, },
- },
- {
- { 862057920, -196809360, 76299024, },
- { -363332768, -48200808, -38664368, },
- { 680975680, -66029752, 62313532, },
- { 517202656, 39182988, -13852343, },
- { 42142756, -224898448, 23900956, },
- { 578456384, -10711112, -26575110, },
- { 16899086, 240396304, 28621662, },
- { 675961792, -76532024, -7255274, },
- { -31825708, 272278368, -90252832, },
- { 694145088, 78392816, -15985868, },
- { -275402432, 19490024, 19011136, },
- { 699485376, 22428320, 29043106, },
- { 104157792, -106337488, 88669600, },
- { 594321984, 26122528, 13720810, },
- { -167101616, -96108480, -3835943, },
- },
- {
- { 893755328, -228144912, 63108100, },
- { -278544192, 77761992, 6783364, },
- { 720438336, -255192992, -13665512, },
- { 399979552, 6000070, -7042136, },
- { 156205280, -23141820, 77895672, },
- { 512157120, 10667088, -5974837, },
- { -31854698, -64270964, -75585520, },
- { 667064256, 27399744, 34042448, },
- { -14828375, 393006144, -40407588, },
- { 722442496, 111037256, 533113, },
- { -356493568, -38231652, 11823508, },
- { 626011904, -82572360, -625992, },
- { 115784800, -171748224, 61668752, },
- { 536772128, -35543540, -3380139, },
- { 45074072, 72021768, 15156940, },
- },
- {
- { 848944832, 184383488, -79126184, },
- { -73698416, 41248328, -20535312, },
- { 734158656, -104955576, -76299024, },
- { 328131200, -52250424, 26017302, },
- { 83268144, 220971232, 1210644, },
- { 478818528, -4858145, 3739306, },
- { -17207786, -185924832, -29459180, },
- { 647532864, 87085832, 14063334, },
- { 37145560, 13910862, 105687336, },
- { 766663488, 87857848, 5260261, },
- { -334238656, -15821586, -947040, },
- { 512291360, 14954002, -14906221, },
- { -16082505, 188711200, -38655244, },
- { 441034624, 10546829, -3133716, },
- { 202894256, -21919902, 18131742, },
- },
- {
- { 900337344, 202598976, -76710264, },
- { 182968832, 166872896, -25620554, },
- { 774260736, 183863248, 31660888, },
- { 287297888, -74439840, 22798760, },
- { -58633820, -30077656, -56673168, },
- { 481663936, 8292508, 8747238, },
- { 24970940, 68754376, 57749056, },
- { 644221504, -19704236, -26892400, },
- { -9427453, -322418912, -27601070, },
- { 828069184, 40436044, -29763586, },
- { -206094544, 45814416, -1173063, },
- { 412233120, -1234803, -1341104, },
- { -114652008, 22880364, -75015360, },
- { 329985568, -20840256, 6089727, },
- { 209146112, -50087908, 9846749, },
- },
- {
- { 1047088896, -194659728, 43730284, },
- { 366514784, -87303264, 40976672, },
- { 742656192, 139103248, 52795884, },
- { 272615008, 16188805, -11766063, },
- { -114707304, -54439248, -33390686, },
- { 510879904, 21948356, -520765, },
- { 17126718, 143042272, 28806346, },
- { 699449920, -91850024, -6042482, },
- { -24763170, -206299632, -69475392, },
- { 919253440, -104362336, 10414759, },
- { -14831059, -71486512, 9839770, },
- { 358785984, 5443334, 4399657, },
- { -63852204, -181701280, -10722923, },
- { 235267568, 42878804, -1713155, },
- { 77541336, 88224000, -13798119, },
- },
- {
- { 1123982208, -105683040, 55635932, },
- { 328002368, -158853120, 19053012, },
- { 635256832, -136615936, -37422052, },
- { 308759840, 62324808, 1898912, },
- { -54308788, 119649200, 13070659, },
- { 567933696, 23300734, -9535901, },
- { -19162534, -72129144, -44424996, },
- { 789915904, 13496935, 18928458, },
- { 20692616, 124913752, 58988692, },
- { 959227776, -50255412, 22593138, },
- { 169172320, 1418413, 5950677, },
- { 362694944, -3298535, -1773285, },
- { 54667956, 60081760, 48018808, },
- { 193888240, 11763915, -7717520, },
- { -84051976, -10931766, -20318954, },
- },
- {
- { 1061163456, 129533528, -23348516, },
- { 115933512, 54171348, -20616916, },
- { 550549824, -101550208, -32472638, },
- { 375784928, -266288, 15702937, },
- { 45247480, -22406844, 44503916, },
- { 652130624, -41226856, 1646046, },
- { -17834314, -101530880, -31956704, },
- { 872475392, 27085674, -3548180, },
- { 8262444, 212076896, 22017076, },
- { 921522816, 53132504, -10414222, },
- { 293410688, -7770670, -11642046, },
- { 410655776, -33762736, -339302, },
- { 94559608, 61743376, 34906272, },
- { 215555280, -39306468, 7264401, },
- { -169639392, -46001784, 9142912, },
- },
- {
- { 933114368, 22093848, -32720672, },
- { -121721520, -43738336, -8097624, },
- { 494997664, 19759534, 23136452, },
- { 444172096, -36144296, -12401718, },
- { 75576392, -114045880, 3667365, },
- { 733825792, -1081258, 2262374, },
- { 14139032, 87575992, 32541356, },
- { 939120896, 32734094, -12346420, },
- { -19392852, 7123204, -55031952, },
- { 852432896, -9301289, -18699750, },
- { 337437312, 5166309, -13647259, },
- { 472952672, 23739894, 11385958, },
- { 25549150, -84922776, 491237, },
- { 268112256, -3453154, 10877542, },
- { -152883648, -14016626, 17564806, },
- },
- {
- { 808061568, 12100533, -4268661, },
- { -269692256, 7937100, -2384781, },
- { 423107424, 58875412, 14115947, },
- { 507483136, -62690416, -14868640, },
- { 38092064, 6757594, -32236950, },
- { 786537344, -938987, -7950522, },
- { 18486612, 77123120, 34720516, },
- { 974787392, -12577812, 1095217, },
- { 1819992, -147699632, 6068252, },
- { 789703808, -11702712, -6681896, },
- { 289339072, -1104880, -3964792, },
- { 519936384, 28106802, 3049427, },
- { -67787472, 68001680, -30844308, },
- { 320355168, 12771085, -5028870, },
- { -55746528, 10052908, -11537356, },
- },
- {
- { 710308672, -16774532, -5884105, },
- { -264577504, 33274186, 2607582, },
- { 337924256, -31025770, -6185827, },
- { 532032096, 22328462, 13090523, },
- { -10758893, 44742820, -5711233, },
- { 795033344, 9193914, -5691369, },
- { -10329396, -93899256, -23986856, },
- { 953060224, -46311020, -9642738, },
- { 13652090, -58238144, 38045896, },
- { 745974592, 75162, 3201898, },
- { 153929488, -34870840, 5812165, },
- { 552490112, -8643085, -15971373, },
- { -79250736, 42124504, -40099424, },
- { 359595072, 18285286, -9487583, },
- { 79966920, 67082556, -16285442, },
- },
- {
- { 634855232, -24634858, 3785477, },
- { -141451520, -45782204, 6092411, },
- { 254404336, 7821136, -4571456, },
- { 477775936, 54230404, 9673877, },
- { -45016088, -10459319, 21311628, },
- { 744544960, 14347875, 413927, },
- { -18442052, -56763900, -35335768, },
- { 872367424, 952409, -17485886, },
- { -5615670, 84819160, -16463683, },
- { 706909760, 23321672, -1428077, },
- { -37825776, 60159608, 3164854, },
- { 584314176, -42927660, -8116415, },
- { 5742372, -135769280, 3150359, },
- { 369367712, -11576011, -375810, },
- { 172647488, -49075908, 8621610, },
- },
- {
- { 538955072, -13040594, 24205362, },
- { 15072651, 50944216, 13710072, },
- { 187226752, -5189394, 2030446, },
- { 367362496, -49736796, -9050570, },
- { -50834696, -49825380, 8231305, },
- { 638520448, -28745680, 1804423, },
- { 5716602, 87666192, 13341242, },
- { 736861248, 15118285, 10206453, },
- { -9424232, 56697328, -25742424, },
- { 649502144, -17821430, -9939091, },
- { -219684352, -36769752, -482110, },
- { 598292672, 6328635, 7124277, },
- { 81932408, 45398880, 53095460, },
- { 334426016, -10021232, 5326833, },
- { 149414400, -23850490, 21712134, },
- },
- {
- { 397379488, 104956656, 5082557, },
- { 125673968, 17753784, 9321690, },
- { 149467008, 2914135, 4262755, },
- { 257603008, 8898098, -11051488, },
- { -20718922, 27423366, -28011776, },
- { 506127552, 32068374, 2290828, },
- { 20265266, 5883569, 42024644, },
- { 544590016, 78309064, 19809462, },
- { 7227893, -67430448, 20556250, },
- { 556742656, -2592550, -1637993, },
- { -321714528, 9211631, 1069984, },
- { 567954112, 30062086, 1427540, },
- { 52476984, 129614056, 30575336, },
- { 260188048, 30055108, 3881577, },
- { 18473192, 89390080, 6312528, },
- },
- {
- { 258143104, -34475704, -23410792, },
- { 162220384, -35226784, -14843944, },
- { 143663440, 850404, 3514357, },
- { 196611248, 29874718, 7045894, },
- { 39367672, 96164856, -16363289, },
- { 391071808, -25950730, 772557, },
- { -3548180, -142337904, -8863739, },
- { 343604896, -82419352, -5340792, },
- { 7097434, -70594232, 19371376, },
- { 416423392, -35428112, 9055402, },
- { -306525920, 20317880, 2103997, },
- { 494898880, -19892678, -4767951, },
- { -42094436, -123787936, -41830296, },
- { 171719776, -38439956, -6002754, },
- { -125548336, -57329760, -18460306, },
- },
- {
- { 186234608, -56275344, -2545842, },
- { 149700544, -15543487, -19137300, },
- { 165364288, -8795019, 3685619, },
- { 207906480, -11742977, 21865142, },
- { 74812960, -56720412, 33527588, },
- { 342108096, -9793599, 3819837, },
- { -22778896, -28792388, -50524920, },
- { 224280512, -4655745, -12516608, },
- { -10169946, 55358908, -28482612, },
- { 240936384, 58211304, 3536906, },
- { -185469568, -39997420, 2193118, },
- { 395104256, 23114440, -3353296, },
- { -74164424, -86611776, -47780436, },
- { 105167104, -6638409, -7066295, },
- { -173409840, -28682866, -19873350, },
- },
- {
- { 179931744, 12965433, 22897544, },
- { 105323872, 22173842, 1312113, },
- { 207433504, 2630131, 1804423, },
- { 303123744, -13679471, 8104604, },
- { 30630634, -85687280, 33305860, },
- { 392402720, 24051816, 9910100, },
- { 6169721, 159945648, 18145700, },
- { 236913616, 52297132, 6293201, },
- { -2450279, 113075216, -6314676, },
- { 74994424, -41807748, -5413270, },
- { -14849313, 42407432, 1881733, },
- { 288295936, -18919330, -2345052, },
- { -10800769, 124163744, 16718697, },
- { 77771656, 19129784, 6313065, },
- { -94409288, 83413632, 5292474, },
- },
- {
- { 207316464, 32352914, 8996346, },
- { 28367722, 11352135, 17681306, },
- { 260098928, -1567663, -5674726, },
- { 493192160, -18697604, -19944218, },
- { -55946780, 123041688, -25584584, },
- { 544934720, -18092012, 1531693, },
- { 20092930, 83791056, 44481364, },
- { 367152064, -42682312, 18682570, },
- { 11063836, 15476378, 30881352, },
- { -38214472, 3738769, -4303021, },
- { 133796288, -29187524, 2644626, },
- { 197532528, -1098438, 5455146, },
- { 52898964, 14692009, 39791260, },
- { 79354888, 1855963, 11523934, },
- { 39827768, -23616414, 17642652, },
- },
- {
- { 255391104, -3300682, -12565464, },
- { -69984344, -64994668, 7815230, },
- { 309282752, 20043538, -7486665, },
- { 754250496, 88805968, -26157962, },
- { -81857248, 52066816, -46926276, },
- { 773598784, 38256884, -16646756, },
- { -7791071, -102232032, -24181202, },
- { 563862080, 4434554, 3325915, },
- { -3101503, -88045216, -9091372, },
- { -87747256, 15495168, 6041945, },
- { 207639120, -3164317, 795643, },
- { 138111120, -15164993, 10856067, },
- { 46018964, -69473240, 9407052, },
- { 103952704, -7817378, 4638565, },
- { 130414000, -16855600, 1413581, },
- },
- {
- { 314552672, -41536092, -8077223, },
- { -153698624, 52211768, -22286586, },
- { 332848704, -26689464, 4923107, },
- { 993195648, -101502424, -251792, },
- { -13014288, -137779872, 9877351, },
- { 1013642368, -73787000, -18562312, },
- { -14167486, -78821240, -29317446, },
- { 768001344, -13456669, -25697326, },
- { -8565239, -48564804, -23686208, },
- { -99047848, 2668785, 10101763, },
- { 197247984, 20113332, -4068945, },
- { 126544232, 16342887, 2228014, },
- { -9654550, 48223892, -18820546, },
- { 158825200, -2674154, -4586488, },
- { 130527280, 6726993, -6411313, },
- },
- {
- { 357153376, 23606214, 8338142, },
- { -173407152, 80022760, -10335839, },
- { 311526848, -16561931, 13072807, },
- { 1076533504, -11509975, 15732465, },
- { 60987460, -6754373, 41550588, },
- { 1159097344, 47392816, -2072859, },
- { 5602785, 54272280, 18927920, },
- { 918634432, 72778760, -22099754, },
- { 6779606, 63433444, 19216220, },
- { -104071352, -11424076, 4241280, },
- { 133954128, -19498078, -5927592, },
- { 182078704, 12781823, -7573101, },
- { -46579456, 18314278, -20225000, },
- { 249549952, 27696634, -7901666, },
- { 50426136, -12663711, 3757560, },
- },
- {
- { 354743360, 22876606, 8448201, },
- { -125086088, -64300492, 37410240, },
- { 263105408, 37308772, 4003983, },
- { 935057856, 98520104, -1078037, },
- { 59869696, 90144920, 3503083, },
- { 1110528256, 38748660, 6838125, },
- { 9542880, 47780436, 17816598, },
- { 936150912, -29707216, 10800769, },
- { 4467303, 80529024, 12106976, },
- { -115432080, 2697776, 1560684, },
- { 60918204, 12298639, -4695473, },
- { 298056224, -43240656, -7306813, },
- { -27349278, -44630616, -2356327, },
- { 360583456, -39258684, -2423972, },
- { -58851788, 43766252, 4701916, },
- },
- {
- { 311553696, -29218662, -2420751, },
- { -43643848, -73751568, 23637890, },
- { 249098976, -7734699, -6087043, },
- { 627708416, -90942712, -14872935, },
- { 5525476, -15845208, -22711788, },
- { 851950272, -100369088, 317828, },
- { -1866700, -29127394, -9088151, },
- { 758959936, -100101728, 13643500, },
- { -7909719, -9968619, -22215718, },
- { -129383744, -5531381, 2185602, },
- { 6927246, -2215666, -2097018, },
- { 428251712, 44209172, 894964, },
- { 18997714, 28491202, 12160663, },
- { 449487648, 13390634, 525060, },
- { -125575184, -25443386, -8341900, },
- },
- {
- { 261459888, 8723615, -6206228, },
- { 70837968, 58482960, -45040248, },
- { 325033472, -26867168, -9676561, },
- { 283930080, 67042292, -12214887, },
- { -40947680, -31508954, -4011500, },
- { 471827392, 110132624, -9797894, },
- { -7194607, -11471858, -12919262, },
- { 422992000, 129837400, -14223321, },
- { -559956, -64124936, -1170916, },
- { -133630928, 3575024, -60666, },
- { -25354802, -2267743, 1309428, },
- { 506878624, -6169184, 4694936, },
- { 39726300, 7045894, 15430207, },
- { 474422624, 6671158, -2348273, },
- { -102008696, -30327300, -11685532, },
- },
- {
- { 240484880, 14042396, -132607, },
- { 217952944, 121817624, -52187072, },
- { 494514496, 60224568, -7513509, },
- { 20397336, -24781962, -4145180, },
- { -48454212, -5237176, 7024419, },
- { 108569792, -68455336, -13811004, },
- { -1296543, 28807420, 542777, },
- { 50323596, -54717348, -17939542, },
- { 7339562, -6582038, 20469814, },
- { -115864792, 11620034, -204548, },
- { -52311628, -2201708, 4130685, },
- { 491351776, -30665530, -1449552, },
- { 14101451, -45034880, 3508452, },
- { 420662528, -21121576, -2969433, },
- { -7735773, 56921200, 1196685, },
- },
- {
- { 270012256, -23244364, 9095667, },
- { 302108544, -145636432, 25764972, },
- { 695182848, -53615688, -2393908, },
- { -111943488, -11172821, 7976291, },
- { -17125108, 6622840, -6611029, },
- { -130551976, 1461900, -3079492, },
- { 6505802, -8606578, 12640626, },
- { -250304256, 20928302, 3484292, },
- { -2710661, 67228048, -7895224, },
- { -75185016, -18063558, 3986804, },
- { -89183920, 11238319, 4881767, },
- { 386935200, 44014288, -10276783, },
- { -25879862, 31284004, -15047955, },
- { 302272832, 38888780, -4435091, },
- { 83388400, -25720412, 13156559, },
- },
- {
- { 357181280, 13597866, 10020159, },
- { 186142272, -78747152, 69059320, },
- { 826062336, 10807748, -4036733, },
- { -136869872, 11004243, 16057272, },
- { 30802432, 40938556, -4883915, },
- { -225224320, 22747758, 14950781, },
- { 2662343, -36271000, 3084860, },
- { -434281856, -19651086, 14351096, },
- { -5504001, 47386376, -15182709, },
- { -19873888, 9534291, 5590437, },
- { -132748848, -15060303, 3321620, },
- { 232506976, -29129542, -11449846, },
- { -32341104, 26803818, -15712064, },
- { 154529696, -33919504, -7061463, },
- { 104971688, -25116432, 9660992, },
- },
- {
- { 504227008, -10380936, -2932926, },
- { -114229488, 228196448, 14908368, },
- { 808694016, 22711788, -7024956, },
- { -107239424, 5180805, 11981348, },
- { 52182780, -21744882, 14767171, },
- { -224969856, -5100811, 21272974, },
- { -5783711, 8522826, -12138651, },
- { -503597248, 4022774, 13465796, },
- { 5198521, -30551176, 14821932, },
- { 44385804, -1563368, 157303, },
- { -158316784, 4875325, 1993939, },
- { 67911488, 13307956, -1172526, },
- { -302258, -49360448, 4401805, },
- { 13918378, 13386339, -2522220, },
- { 51097224, 43914968, -3702799, },
- },
- {
- { 701803008, 31803160, -19734838, },
- { -376732512, -105936976, -52158084, },
- { 622177024, -62460100, -6384469, },
- { -59612000, -13386876, -1971927, },
- { 20867636, -43538084, 14351096, },
- { -186044032, -19776714, 9260486, },
- { -2908230, 31246960, -3704946, },
- { -485769920, 526134, 8494372, },
- { 2085744, -53198000, 5521718, },
- { 117180664, 9884330, -6997039, },
- { -134485088, 9373229, 1622961, },
- { -86978456, -23970750, 8986145, },
- { 28893318, 8454106, 18998250, },
- { -101843336, -9178345, 6937983, },
- { -27663884, -22535156, -12045236, },
- },
- {
- { 904283328, -64888364, -21122112, },
- { -372928800, -118043416, -44813688, },
- { 301261344, 95022392, -11047193, },
- { -6813966, -10190884, -11519102, },
- { -33595772, 58286464, -11398306, },
- { -133000104, 10397042, -9189083, },
- { 4401268, -8411157, 9586904, },
- { -414447712, -6669011, -659278, },
- { -5110474, -309238, -14335527, },
- { 192929392, -26497264, -6411850, },
- { -45639932, -19439022, -1628866, },
- { -223085440, 39593692, 6857989, },
- { 20511154, 46442556, 7100118, },
- { -191062688, 25187836, 7979513, },
- { -72546832, -16858820, -6147709, },
- },
- {
- { 1020359680, 49040472, -3064996, },
- { -97977864, 172937392, 5498095, },
- { -83678848, -74016784, -12161737, },
- { 36763848, 26569204, -6542309, },
- { -51643760, 16670916, -23394150, },
- { -73004784, 22681186, -14823006, },
- { 3170760, -21297132, 4604205, },
- { -324642624, 17212082, -8062728, },
- { 271657, 39352100, 1069984, },
- { 250592544, 19866908, 323733, },
- { 91595544, 28620588, -8014409, },
- { -325997696, -26555782, -1130113, },
- { -10849624, -29150480, -13490492, },
- { -250334320, -19998978, 541703, },
- { -62478888, 26125212, 6773164, },
- },
- {
- { 950758144, 45088028, 7181722, },
- { 230774496, -94694368, 33468532, },
- { -466968160, 41601052, 4842039, },
- { 38146824, -9856413, 4327717, },
- { -12726525, -71256728, 816044, },
- { -34454764, -30524332, -4786741, },
- { -3117073, 13539348, -7080791, },
- { -263279888, -25294674, -5777805, },
- { 4219806, 10428181, 11727945, },
- { 262986752, 8453033, 1917703, },
- { 224959120, -37230388, -9239548, },
- { -382932832, -1334124, -1830193, },
- { -24196772, -24077586, -11637214, },
- { -273468608, -2460480, -2448131, },
- { -19270982, -700617, 7786239, },
- },
- {
- { 662759616, -123762704, -7464117, },
- { 372294208, -19914690, 33813740, },
- { -810661120, -51490752, 24456618, },
- { -34016676, -30839476, 7538205, },
- { 35114580, 11368242, 20448340, },
- { -70069704, -1327145, 8199093, },
- { -3339874, 17280800, -5366562, },
- { -282629248, 8960376, 7567196, },
- { -1795296, -34127272, -5259188, },
- { 219165200, -27831388, -4094178, },
- { 282418784, 23540716, 503048, },
- { -400790240, 10691784, 3843459, },
- { -8269960, 26900454, 3402688, },
- { -267513104, 12243878, 891743, },
- { 25067576, -6487011, -2902324, },
- },
- {
- { 221894656, 116763520, -22308598, },
- { 242817056, 136962208, 7746511, },
- { -1080360960, 71046816, 23397908, },
- { -178594944, 59281288, -1345399, },
- { 40003864, 38815232, 8348343, },
- { -215943984, 54989540, 10739029, },
- { 2113124, -13751948, 5187247, },
- { -410339552, 47098076, 15241765, },
- { -3170760, -24517820, -8753680, },
- { 131049656, 24807732, -8782671, },
- { 210557552, 27944668, 10531797, },
- { -405466400, -171799, 6650220, },
- { 13361643, -3181497, 8449811, },
- { -255399696, -5711770, 3862786, },
- { 50663436, -10238665, -5988795, },
- },
- {
- { -262315664, -71206264, -12941273, },
- { -31068720, -130587944, -33651604, },
- { -1221106432, -40506372, 7044820, },
- { -352367712, -35716948, -6782827, },
- { 5936719, -27122718, -7492034, },
- { -448329088, -80601504, 1251983, },
- { 3185792, -11842835, 5377299, },
- { -610926336, -79132624, 5086315, },
- { 3089692, 21311628, 8769786, },
- { 18001282, -15389405, -5661841, },
- { 21592948, -75939320, 6671695, },
- { -422662912, -11905649, 4202626, },
- { 17416630, -10782515, 4671851, },
- { -262331776, -7301445, 3401077, },
- { 46805480, 9417253, 2310156, },
- },
- {
- { -707435904, 51271172, 11145977, },
- { -226603008, -18327162, -38191388, },
- { -1183006336, -31270046, -1832877, },
- { -500287456, 8203388, 2072859, },
- { -28250684, 2456721, -9917616, },
- { -683104320, 48995376, -4758287, },
- { -1089848, 12928925, -2975339, },
- { -786317248, 39530880, -5663988, },
- { 1455994, 33645164, 3847754, },
- { -111193480, 20921322, 501437, },
- { -192634112, 63155348, -4294431, },
- { -461840512, 15453292, 817654, },
- { 2214593, 16510391, -981400, },
- { -300300896, 16017544, 1114544, },
- { 13194140, 15024869, 6694244, },
- },
- {
- { -1078223616, -68621232, 23726474, },
- { -224664912, 108171432, 4175782, },
- { -973332992, 83570936, 3840775, },
- { -591696192, -11749957, 9123047, },
- { -30763776, 19509352, -3448859, },
- { -830735232, -6813429, 331786, },
- { -3073049, 4521527, -5551782, },
- { -840708736, 18293340, -2704756, },
- { -3465502, -2225867, -9803263, },
- { -260984768, -36910412, 1418950, },
- { -311184352, -5189394, -6243809, },
- { -515333248, -12192875, -68719, },
- { -14047227, -9365176, -6448894, },
- { -362049088, -16235513, 537, },
- { -30389042, -25724706, 301185, },
- },
- {
- { -1362811904, 77688440, 13334263, },
- { -85414552, -51876764, 32028108, },
- { -671621760, -84929760, 12796318, },
- { -624009344, 13232257, 3234110, },
- { -3631395, -17330730, 3491809, },
- { -855872064, -12947179, 4281546, },
- { 216896, -15168214, 1034550, },
- { -747763456, -48717276, 4341138, },
- { 352724, -30451318, 1169305, },
- { -439059488, 42351060, -1467805, },
- { -265382800, -39658116, -1537061, },
- { -567934784, 5772973, 1864553, },
- { -12868259, -11892764, -6317897, },
- { -427521056, 10568304, 1278290, },
- { -51245404, 6357626, -6984691, },
- },
- {
- { -1546537216, -24615532, 2499134, },
- { 57335128, -21424908, 14519674, },
- { -387294912, 44589276, 12475806, },
- { -614494912, 9084930, -2698850, },
- { 22578106, 1583232, 3779034, },
- { -790453312, 28467044, 3361349, },
- { 3117073, 118112, 6264747, },
- { -561839168, 52027624, 6072010, },
- { 2966749, -11570642, 8281234, },
- { -644597312, -28553480, 3214783, },
- { -83245592, 55242408, -1686848, },
- { -603926656, 3766150, 6805376, },
- { 3478387, 23061826, 2260227, },
- { -473488992, -205085, 5046587, },
- { -31689880, 19377282, -6148246, },
- },
- {
- { -1607233664, -59374164, 24469502, },
- { 120469000, 22543210, -11138461, },
- { -194259760, -6671695, 2132988, },
- { -591490560, -34621196, 7472170, },
- { 24184424, -1061394, 4543539, },
- { -702711936, -44425532, 11446625, },
- { 248571, 18603650, -70867, },
- { -377655392, -42054172, 6758131, },
- { -1819456, 23494544, -5267778, },
- { -852840896, 11351062, 22712324, },
- { 128841504, -56617868, -2202245, },
- { -604490880, -11200201, 13851806, },
- { 14465987, -4428648, 10028749, },
- { -478025024, -8836358, 10008348, },
- { 11824582, -26652956, 1130113, },
- },
- {
- { -1516199168, 58139900, 60329796, },
- { 99128920, 3651796, -10679973, },
- { -95059440, -290984, -6617471, },
- { -570893504, 23903640, 28049358, },
- { 3212636, -14644765, 6335077, },
- { -640622272, 31571768, 31884226, },
- { -3208341, -1371168, -7168838, },
- { -266206912, 23772644, 13987635, },
- { -1759863, 24443732, -4776004, },
- { -995970176, -21615496, 41095320, },
- { 247099664, 32651416, 7637526, },
- { -542421632, 7269232, 14501957, },
- { 6749004, -25076704, 4926328, },
- { -421268096, 9819369, 10045929, },
- { 41754600, 11839077, 8631811, },
- },
- {
- { -1227817856, 31887448, 36262944, },
- { 31780610, 2109366, 4351876, },
- { -41796476, -6394670, -8111583, },
- { -526691296, 30912490, 26707180, },
- { -21230560, 42835856, -9363566, },
- { -582211840, 34218004, 32887102, },
- { -296353, -21707302, -4295, },
- { -226947680, 16712255, 18204756, },
- { 2781528, -8465917, 8039642, },
- { -966141632, 51030652, 20940114, },
- { 205733232, 29428580, 19158776, },
- { -389149280, -6488085, -1595044, },
- { -9344238, 25553444, -10163503, },
- { -290937312, -11132555, -1483911, },
- { 33305324, 17487496, 9344238, },
- },
- {
- { -702422016, -12524662, -63307816, },
- { -34587372, -31123480, 4677757, },
- { 13409962, 10168335, -9574019, },
- { -395849408, -55143620, -19904490, },
- { -22231288, 18446348, -21504902, },
- { -443376992, -79262008, -21980568, },
- { 3506841, 831613, 8366060, },
- { -192801616, -61860412, -7623030, },
- { -288837, -30697206, -807991, },
- { -676510528, -4662724, -44772348, },
- { 45564236, -99012952, 7204808, },
- { -144633568, 41230076, -25599616, },
- { -11819750, 21961778, -11959873, },
- { -98791224, 36429376, -16961362, },
- { -3271691, -40654548, -3177202, },
- },
- {
- { -2837900, -263309408, -104393472, },
- { -62903556, 22214108, -11652783, },
- { 83321288, -27225260, -9924059, },
- { -140510384, -68141264, -63327684, },
- { 8424041, -95043328, 15469935, },
- { -159801776, -62714576, -81861536, },
- { -774705, 31915902, -3386582, },
- { -88226680, 2919504, -50476604, },
- { -2260227, -16823386, -6184753, },
- { -164298608, -202133504, -72149544, },
- { -109439528, 88497264, -31301184, },
- { 129524936, -112725712, -21399674, },
- { 3622805, -46176268, 10753524, },
- { 102797360, -79412872, -12246026, },
- { -31066036, 12406013, -17940078, },
- },
- {
- { 621364224, 460767840, 43075300, },
- { -39567924, 46573552, -9427453, },
- { 141969600, 41977936, 2921115, },
- { 173183280, 253221616, -8589398, },
- { 22793392, -57216480, 28717226, },
- { 208237728, 318084736, -17783848, },
- { -2685428, 21849036, -7056632, },
- { 94066224, 175970720, -26878980, },
- { 2145336, 14760192, 6643778, },
- { 354849664, 357099680, 32628330, },
- { -143160928, 64352032, -39194796, },
- { 317177952, 112315008, 26720066, },
- { 10445897, -34724272, 13976360, },
- { 230905488, 66931696, 18525804, },
- { -21392158, 55930676, -4970888, },
- },
- {
- { 821677696, 19742890, 188074464, },
- { 8250096, -53528716, 19508816, },
- { 149194272, -2103460, 19142132, },
- { 366368768, -121583544, 100727720, },
- { -2042257, 85702848, -23702314, },
- { 447949504, -178254032, 129330056, },
- { 2202245, -13095355, 6751689, },
- { 249170912, -161775312, 71844600, },
- { -533650, 32718524, -1122597, },
- { 576970880, -17979806, 144182048, },
- { -50550692, -170051712, 27342298, },
- { 317480224, 68158448, 50017040, },
- { -1150514, 37701760, -12638478, },
- { 223188512, 53187800, 29809758, },
- { 7964480, -27748710, 20958366, },
- },
- {
- { 468054272, -778914880, -37406480, },
- { 25666188, -61740156, 13222057, },
- { 90884192, -81121728, 2451353, },
- { 283284224, -362074880, 32602560, },
- { -7944079, 107862200, -10186052, },
- { 350218624, -463973504, 48184700, },
- { 53150, -31307628, -1322850, },
- { 226416176, -237868704, 52872120, },
- { -569083, 32280438, -673236, },
- { 362591328, -576002368, -16647293, },
- { 40658308, -44644036, 57304528, },
- { 145049104, -242396672, -31521302, },
- { -3433826, 53061100, -4096862, },
- { 100901128, -152861648, -22567906, },
- { 13876502, -64969972, 4359929, },
- },
-};
-
-const Word32 leftHRIRImag_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS] /* Q29 */=
-{
- {
- { 5232344, 17252346, -539555, },
- { -135520176, 194871264, -54369992, },
- { -22220550, 117874840, -40396316, },
- { 11720966, -108904264, 36866924, },
- { -107257680, 255896304, -73097656, },
- { 11458436, -134486704, 49912352, },
- { -50680076, 336556864, -124497144, },
- { 8897562, -128660576, 50126028, },
- { -43055436, 307590528, -120338008, },
- { 10245644, 73467024, -31177704, },
- { -119941256, 172604528, -50995756, },
- { -908386, -22171694, 13412646, },
- { -103657424, 351444832, -110692048, },
- { -13219372, -29753386, 17103634, },
- { -139419472, 198506944, -49185964, },
- },
- {
- { 30917858, -50915228, -27016954, },
- { -305028032, 178966992, -27285390, },
- { -31333398, 17824652, -79691504, },
- { -27201102, -118149720, 33646236, },
- { -180582976, 181514448, -78655344, },
- { -25593174, -154673584, 44513576, },
- { -32651416, 465500896, -72493680, },
- { -21735756, -183458992, 31233540, },
- { -8945343, 553823680, -21647708, },
- { 46176804, 103967736, -27739584, },
- { -271011904, 228043440, 6618008, },
- { -21784610, -92931280, -13600551, },
- { -154800288, 253057328, -131308960, },
- { -57660472, -99732360, -5020280, },
- { -288599264, 110345760, -48391932, },
- },
- {
- { 99568616, -139327136, -15360414, },
- { -324153536, 9072045, 47385836, },
- { 46054396, -314262752, 41872708, },
- { -148029808, 81420232, -18759344, },
- { -52845276, -129020816, 7718056, },
- { -120695560, 51905752, -15993921, },
- { 49320720, -72422272, 121334976, },
- { -86364816, 64855080, -57959508, },
- { 48910012, 135625936, 140061024, },
- { 79715664, -68266896, 35842040, },
- { -347903616, 196710576, 28915330, },
- { -46603616, -98206040, -14537391, },
- { 3573950, -296180416, 41096932, },
- { -100602096, -66857072, -14718853, },
- { -211719872, -73775728, 8290361, },
- },
- {
- { 158430064, 109539384, 60192356, },
- { -238983248, -109216184, -20186346, },
- { 99478424, -106365936, 113992192, },
- { -268344720, -942208, -20194936, },
- { 108341624, 68608344, 33007898, },
- { -190794256, 31733902, -4362613, },
- { 17487496, -307243712, 28120224, },
- { -105947176, 126534568, -27926952, },
- { -23633058, -389901440, -67944776, },
- { 47435768, -191150208, -8434779, },
- { -342148384, 121005872, -7304666, },
- { -92741232, -11922829, 27136140, },
- { 137140448, -296890, 113191712, },
- { -144703888, 2766496, 20560008, },
- { -370978, 66400196, 11968463, },
- },
- {
- { 108209552, 185416416, 46416248, },
- { -18681498, -206867632, -19592568, },
- { 32727650, 247064240, -21903796, },
- { -329999520, -24774446, -2032593, },
- { 156707248, -9570261, 57924076, },
- { -212032336, -13562970, 13310641, },
- { -37249716, 38208564, -89804544, },
- { -104133096, -3824132, 22079890, },
- { -28955596, -346057312, -82060720, },
- { 9917616, -101770864, -34786552, },
- { -226855872, 54367844, 4613332, },
- { -200631344, 115047680, -3089155, },
- { 88293256, 239106192, 33024004, },
- { -231136352, 84634480, 1288490, },
- { 199597872, -60316912, 18438832, },
- },
- {
- { -18214956, -250354720, -92994632, },
- { 223436016, -51390356, -4157528, },
- { -57046828, 54381264, -80257904, },
- { -314948864, 58884000, 23173496, },
- { 29657286, -269596704, -5538361, },
- { -186629744, 5942088, 11245298, },
- { -15848966, 209089216, -23430120, },
- { -111910744, -61173756, 839666, },
- { 37234144, 136140800, 105880608, },
- { 6058052, -12533251, 5679021, },
- { -54005456, 101106752, -8387535, },
- { -303604800, 5211943, -23613730, },
- { -62708672, -138673760, -66732516, },
- { -322043104, 10297721, -10102300, },
- { 244338000, -47463684, 16740709, },
- },
- {
- { -54721104, -251287792, -88000656, },
- { 351504416, -67618888, -30714384, },
- { -113102056, -200841264, 31799938, },
- { -261045968, 42209328, 19190988, },
- { -118671560, 776852, -75185552, },
- { -135094976, 1285269, 3442416, },
- { 28601798, -63060856, 69197832, },
- { -105192872, 9150428, -24213416, },
- { 2437394, 384751776, 6705518, },
- { -12818330, 46677168, -22034792, },
- { 144857440, -12532715, 753767, },
- { -339585888, -34845068, 849867, },
- { -123130808, -83513488, -70629128, },
- { -376464608, 1576253, 6109591, },
- { 117476480, 73857872, -443992, },
- },
- {
- { -10631655, 188114192, 68762424, },
- { 326040096, 49028664, 22428320, },
- { -210201600, -159242352, 61620432, },
- { -201035072, -18813568, -14765024, },
- { -114390552, 143538880, -20566988, },
- { -80505400, 2159295, -3675955, },
- { 16927540, -165660640, 29322278, },
- { -70205536, 60418916, -11065983, },
- { -32559610, 127769912, -91239064, },
- { -37865504, 94677184, -2071785, },
- { 297682560, 66001300, 1824287, },
- { -309382048, 12906377, 11574400, },
- { -28137942, 205611360, 12385075, },
- { -382446432, -11492796, 1540283, },
- { -73100344, -77344304, -18161806, },
- },
- {
- { -77725488, 196784128, 67276368, },
- { 108923056, 190376032, 10649908, },
- { -352566336, 153094112, -37377488, },
- { -127077344, -64507724, -8101382, },
- { -4843650, -76424112, 31541702, },
- { -34963720, -2215666, -9452686, },
- { -22453552, 70792872, -51737176, },
- { -33504504, -29388314, 15022185, },
- { 17081622, -231734960, 49876920, },
- { -114809848, 67806256, 22993644, },
- { 356293312, 44757856, 889595, },
- { -239530320, 944893, 752156, },
- { 90251760, -22021908, 66466768, },
- { -332159872, -19122806, -6287296, },
- { -192860672, -19954954, -18575196, },
- },
- {
- { -277781312, -167457552, -35618700, },
- { -169595904, -62544388, -30911954, },
- { -434085376, 112163608, -35138740, },
- { -58242976, 19576460, 13532368, },
- { 88578872, 6706592, 41794864, },
- { -3717294, 35752920, -918049, },
- { -17199734, 127037080, -28944858, },
- { -43709884, -68236832, -158377, },
- { 16502875, -232059760, 46335716, },
- { -259441792, -90892784, -12786118, },
- { 302439776, -23015120, -15345918, },
- { -164977216, 30413738, -1911797, },
- { 86459840, -128010424, 25755846, },
- { -245588384, 51877300, 4899484, },
- { -172616352, 74084968, 11601244, },
- },
- {
- { -479058496, -34588984, -41318660, },
- { -325007168, -33243584, -8560407, },
- { -453216224, -58082452, 32525250, },
- { -30136712, 55057184, -7392176, },
- { 79122960, 135242608, -1163399, },
- { -6920803, 18053896, 5795522, },
- { 16492674, -71891848, 38566120, },
- { -104778408, -209380, -16012175, },
- { -21474300, 47109884, -60942900, },
- { -397912064, -312996, -21223044, },
- { 171231216, 24038932, -9402757, },
- { -118827248, -10425496, 7212861, },
- { -13937706, 81356880, -24482388, },
- { -170254656, 3934727, 10257993, },
- { -55324548, -9509058, 19807852, },
- },
- {
- { -601780224, 43026984, 9757629, },
- { -299565376, 35366372, 8828842, },
- { -474717888, -72621992, 25129854, },
- { -41837812, 31529354, -16467441, },
- { 1726577, -15290620, -40343164, },
- { -61786864, -31823560, -5519570, },
- { 18072148, -81266688, 33348810, },
- { -201226192, 67109, 2428804, },
- { -2217814, 185003568, -5108327, },
- { -490028928, 20321100, 1631014, },
- { -2594697, -20058034, 2413235, },
- { -118403656, -31147102, 808528, },
- { -87570088, -6750078, -36289788, },
- { -139467248, -25146496, -6270653, },
- { 75520560, -19526532, -10375030, },
- },
- {
- { -655855488, 25572236, 16110422, },
- { -132337072, -58881316, 8665097, },
- { -501111008, 30430380, -9394704, },
- { -91855928, -22336514, 14292041, },
- { -49204756, -74647608, -5505075, },
- { -155968512, 5469641, -3663607, },
- { -12157442, 97756680, -27805618, },
- { -336846240, 58492624, 1365800, },
- { 16540993, 44654240, 46456512, },
- { -548054464, 10231149, 11157251, },
- { -176553760, 33840048, 11727945, },
- { -150341040, 24950002, -15178414, },
- { -58025544, -70031592, -23076322, },
- { -148966640, -8432095, -10384694, },
- { 161219120, -49005040, -15503221, },
- },
- {
- { -677316864, 14061186, 9455907, },
- { 70368744, 40104256, 7168301, },
- { -505640608, 25171730, -6891275, },
- { -189773664, -74050072, 12053289, },
- { -53633940, 6905234, 24492588, },
- { -274234208, -24685324, 5230197, },
- { -18511310, 73076184, -34952980, },
- { -492537184, -25987774, -7692287, },
- { -4431870, -109918952, -13494250, },
- { -599594048, -23166516, 4469451, },
- { -306285408, -42193220, 5999533, },
- { -191659696, 30705258, -6935836, },
- { 38758320, 112756312, 18760418, },
- { -190430256, 6300180, 2592550, },
- { 155024704, 18436684, 11340861, },
- },
- {
- { -703675648, 6285148, 19589346, },
- { 201780240, -15927349, 6103149, },
- { -480631552, -14164802, 4212289, },
- { -289732576, 36455684, -11339787, },
- { -26402774, 37356016, 6506339, },
- { -392567520, 29936458, 4489852, },
- { 8114267, -85212688, 19082002, },
- { -637229248, -15723875, 13287555, },
- { -11103027, -59286116, -30707406, },
- { -666988032, 24908662, -3487514, },
- { -342789920, -1901597, -1787243, },
- { -247421792, 2945811, 11980811, },
- { 87287160, 509491, 50570020, },
- { -257889696, 23130010, 7347616, },
- { 45361296, 54193360, 18922016, },
- },
- {
- { -745239104, -65278672, 3823058, },
- { 218355600, -34307660, 480499, },
- { -427974176, 13306882, 4248797, },
- { -328094688, 20603494, -9194451, },
- { 16760573, -17125108, -23188528, },
- { -472696032, -13945222, 2480344, },
- { 18897320, -29428580, 37408092, },
- { -753866624, -50825568, 22191022, },
- { 6292664, 70817032, 18086644, },
- { -752061120, 3488587, 2753074, },
- { -262117552, 39137352, 463856, },
- { -333270144, -49004504, 5350456, },
- { 26259430, -141933104, 14274324, },
- { -328640160, -23949274, 2633352, },
- { -102069360, -82435456, -2142115, },
- },
- {
- { -754358400, 10646150, -22409528, },
- { 144449952, 51578264, -16460999, },
- { -357978016, -12630962, 2121714, },
- { -285058048, -47072840, 8100845, },
- { 55548960, -74437152, -11065983, },
- { -484483040, -2369211, 765041, },
- { -3855270, 108625088, -8880919, },
- { -806595392, 50464792, -6066105, },
- { 8435316, 56591564, 22964116, },
- { -842413824, 19781008, 13151727, },
- { -92471184, -44889924, 1385664, },
- { -431250688, 22603876, -4613332, },
- { -65707096, 88061328, -49775988, },
- { -372310304, 17492864, -4533875, },
- { -180423520, 15318001, -21953188, },
- },
- {
- { -684178112, 95209224, -2731062, },
- { 44034688, 8211441, -15715822, },
- { -287447136, 12063489, 279173, },
- { -179376624, 21377126, 15723875, },
- { 54791972, 38640212, 32280438, },
- { -417241056, 28506234, 754841, },
- { -22044994, 1953673, -47797080, },
- { -744435968, 54001160, -14835891, },
- { -8842264, -70665632, -25028922, },
- { -913782720, -34616364, 5817533, },
- { 101118560, 45958296, 417686, },
- { -510893888, -4614943, -121870, },
- { -69034616, 108603080, -42297912, },
- { -367728128, 21326660, -4706211, },
- { -127882648, 64976412, -14567455, },
- },
- {
- { -564688896, -35052840, 25179782, },
- { -42392400, -21832930, 8923331, },
- { -228388112, -6603512, -1784559, },
- { -45775760, 11540040, -2239826, },
- { -7439420, 99392520, 24076512, },
- { -287786976, -36048736, 3089155, },
- { 4673998, -168884560, 13025562, },
- { -578127296, -82212656, 6925098, },
- { -4969814, -100874824, -13440026, },
- { -928045824, -1262184, -3357591, },
- { 243358208, -19028316, -324270, },
- { -554744960, 3474092, 3419331, },
- { 15159624, -137618272, 30216706, },
- { -317898976, -36552856, 7756711, },
- { 15227807, -86528024, 12173011, },
- },
- {
- { -456805216, -32255742, 6639483, },
- { -112510424, -23877870, 18947786, },
- { -189299072, 1576253, -5324686, },
- { 84136264, 11220602, -24946780, },
- { -75048112, -87878256, -31089658, },
- { -142671296, 12062953, -4116726, },
- { 22120156, -68032816, 49400712, },
- { -386223872, 31193810, 14438069, },
- { 10969883, 14823006, 30617748, },
- { -868519680, 35133368, -316217, },
- { 284063232, -5093295, -1347546, },
- { -553373760, 14804752, 6683506, },
- { 68075232, -55910812, 46515568, },
- { -251979296, 713501, 10266582, },
- { 136529488, 2549063, 20943334, },
- },
- {
- { -378490784, -996969, -17370996, },
- { -156559072, 38678864, 4654134, },
- { -177369808, -8266739, -4779225, },
- { 164008688, -47361140, -20721606, },
- { -63569812, -68194416, -41852308, },
- { -41226856, -7129109, -16905528, },
- { -7510824, 127864400, -22777822, },
- { -250573216, 15700790, -3388192, },
- { -351650, 98158256, -1477469, },
- { -758244288, -43934296, 9135932, },
- { 221876944, 31637802, -2272038, },
- { -509314400, -7141457, 8430484, },
- { 32112934, 97078608, -2900177, },
- { -189582544, 6276558, -1442035, },
- { 150665312, 52821120, -552440, },
- },
- {
- { -328674528, 40242232, -8975945, },
- { -151924800, -20779588, -18118856, },
- { -197082096, 10024454, 5124433, },
- { 121245856, 23868208, 8290361, },
- { 23447300, 142530640, 18077518, },
- { -43131672, 14383309, -12541841, },
- { -17070348, 82138032, -36723044, },
- { -222328448, -24732570, -24415816, },
- { -10189273, 27262842, -28318866, },
- { -643103680, 13499619, 10624138, },
- { 98813240, -37815576, -5346161, },
- { -433130816, -2343979, -1904281, },
- { -32130650, -23995982, -29850560, },
- { -130950328, 6957310, -9563818, },
- { 66393216, -25447144, -11730629, },
- },
- {
- { -316999200, -14724222, 9760850, },
- { -82459080, -81389632, -9319542, },
- { -243403856, 21904334, 10335302, },
- { -99811816, 84763328, 21679384, },
- { 80673984, 31187906, 46925204, },
- { -198692160, 24356222, 7185481, },
- { 6947647, -79027400, 22248468, },
- { -320020704, -14198088, -14484777, },
- { 5288716, -85655072, 15171972, },
- { -556219712, 2996277, 857383, },
- { -23347980, 18650358, -4894652, },
- { -335211456, -24299852, -10462540, },
- { -50790672, -43757664, -17422534, },
- { -80444200, -19557134, -8613020, },
- { -48816600, 7784092, 60666, },
- },
- {
- { -347980928, -34109556, 8020315, },
- { 28313498, 68919728, 29562796, },
- { -287355328, -37504728, -2088965, },
- { -463089824, -142948320, 688269, },
- { 43435004, -117633784, -2157147, },
- { -511685216, -97947264, 14437533, },
- { 11658152, -67379984, 22993108, },
- { -545768448, -23956790, 19153406, },
- { 6668474, -75892608, 18337362, },
- { -496568000, 10121090, -3943854, },
- { -100530152, -2284386, -539555, },
- { -244320288, 33477122, -5918465, },
- { -11123428, 53504556, 7702487, },
- { -58093192, 16689706, -701690, },
- { -125293856, -21958020, 3791383, },
- },
- {
- { -396235424, 28530394, -5670968, },
- { 121521808, 72422816, 14588393, },
- { -282284032, -7220914, -12603045, },
- { -828566848, 74083352, -14059575, },
- { -29173566, 10940355, -32751274, },
- { -900029696, 114861920, 3750043, },
- { -3834869, 36973764, -14339822, },
- { -871949760, 122431264, 20877836, },
- { -7813620, 29796872, -22095460, },
- { -446641152, -12294881, -1540820, },
- { -124764504, -6745246, 2953864, },
- { -208990432, -14132590, 3662533, },
- { 35043712, -7324530, 17977122, },
- { -93645320, 16217797, 3842922, },
- { -118506736, 918586, -7269769, },
- },
- {
- { -419816416, 8409546, -7485055, },
- { 177756880, -53181360, -43604120, },
- { -214271616, 35051228, -9516574, },
- { -1052510208, -350577, -2594160, },
- { -58577984, 59515360, -5730023, },
- { -1222012160, -62816044, -4646081, },
- { -8056822, 27921046, -14477261, },
- { -1199319168, -109910896, -8547522, },
- { -2239289, 70632888, -5808944, },
- { -391830400, 9975598, -1738388, },
- { -115676888, 8247948, 5041755, },
- { -266380320, -31537408, 6293738, },
- { 37157372, -27774480, 10413685, },
- { -199360032, -39514236, 302795, },
- { -31960462, 46750720, -7976828, },
- },
- {
- { -396419040, -24897388, 826781, },
- { 199287552, -94219232, -37252936, },
- { -130629816, -32934882, -3066070, },
- { -1081162496, -33790120, 10034117, },
- { -33716568, -9487583, 13584982, },
- { -1362517120, -8376260, -2020782, },
- { 79457, -27114128, 4269735, },
- { -1395718912, -11603928, -10591926, },
- { 7618198, -1657857, 21300890, },
- { -326496960, -19525996, -1824824, },
- { -99994888, -1045288, 5325760, },
- { -410237024, 55961812, -733366, },
- { -1633698, 41486164, -4496294, },
- { -351074912, 34980900, -888521, },
- { 73531984, -48038136, 6064494, },
- },
- {
- { -333237920, 21934934, 6692096, },
- { 136010880, 91286848, 39137352, },
- { -113062864, 3367791, 2892124, },
- { -955450368, 55922084, 16620987, },
- { 12907987, -13196824, -686121, },
- { -1298857728, 66461936, 10081362, },
- { 6760816, 1138703, 12552042, },
- { -1401256192, 60880624, 15841450, },
- { -1005559, -65381212, -3132642, },
- { -258166192, 19531900, 1465658, },
- { -90000504, -4531728, 3397856, },
- { -588642432, -44282724, -6445672, },
- { -35472136, -13742822, -16918950, },
- { -504519072, -33069100, 473520, },
- { 120281096, -2138357, 13868986, },
- },
- {
- { -254524592, -2734284, 2728378, },
- { -61631708, 124418760, 64017560, },
- { -230375600, 51568600, 2342905, },
- { -770130560, -32261646, 16159814, },
- { 46897820, -24514062, -4051228, },
- { -1104524928, -65782256, 21886616, },
- { 2195265, 32971390, 1871532, },
- { -1255872000, -36322540, 23219666, },
- { -6711960, -24285356, -18641232, },
- { -201167680, -5025649, 1708860, },
- { -76220104, 3022046, 135828, },
- { -739942336, 13878650, -3015604, },
- { -25882010, -39599060, -10532870, },
- { -617759616, 16445430, 190589, },
- { 77534360, 47942036, 4677220, },
- },
- {
- { -187215472, -7235410, -10152766, },
- { -302229856, -201453824, -6583648, },
- { -488476288, -75664976, -1499481, },
- { -608733248, 6152541, 4904316, },
- { 40810244, 9884867, 11841762, },
- { -889736320, 22035866, 17557826, },
- { -6236293, -10264972, -12664785, },
- { -1036020224, 34490196, 10843182, },
- { 4205310, 55413132, 12076374, },
- { -163429408, -4794794, -3781182, },
- { -38071128, 9797894, -2145336, },
- { -828692992, 8045548, 7798050, },
- { 13130789, 43269112, 10496363, },
- { -667675776, 8978092, 4118337, },
- { -14405857, -42557220, -9413495, },
- },
- {
- { -160387504, -1212255, -19085760, },
- { -372883168, 9153112, -65391952, },
- { -823048896, 74214888, 928250, },
- { -502844576, 3480534, -8838506, },
- { -5722507, 47615080, 8771397, },
- { -725349632, 5845988, -944893, },
- { -2830920, -35772244, -3490735, },
- { -809384448, -33443836, 322123, },
- { 3865471, 58133992, 10559177, },
- { -145547856, -523986, -8354249, },
- { 35654672, -20708722, -2545305, },
- { -854448832, -1685238, 14260902, },
- { 33141042, 9367324, 18559090, },
- { -659427776, -14470282, 10415833, },
- { -82688320, 1826435, -12265353, },
- },
- {
- { -216790624, 7305740, -11348914, },
- { -163187280, 201135472, -33787432, },
- { -1140422784, -67091148, 2142115, },
- { -447214016, 13685913, -13014288, },
- { -49104360, -39777304, -14513768, },
- { -622485696, 1927367, -16253230, },
- { 5139465, 7147900, 11028939, },
- { -621990720, 24934970, -7023882, },
- { -5451387, -9884330, -15425375, },
- { -151061520, 8894877, -4932770, },
- { 130730216, 20885352, -3863860, },
- { -831482048, -8508330, 7725036, },
- { 12105365, -50302120, 1881196, },
- { -613759936, 203474, 8196945, },
- { -83483960, 32781338, -2046015, },
- },
- {
- { -404893024, 25424058, 9195525, },
- { 185291872, -169782208, 30771830, },
- { -1356832256, 19707458, 4005057, },
- { -434513248, -21893058, -2569464, },
- { -41713260, -31788126, -19857244, },
- { -568107648, -28803124, -13408351, },
- { 3011309, 25533580, 4052839, },
- { -497736256, -24537686, -8870718, },
- { -689342, -44617196, -1606855, },
- { -191575936, 2828236, 2968896, },
- { 208048208, -13804562, -6235219, },
- { -767861248, -8555038, -2246268, },
- { -20891258, 22090090, -17161078, },
- { -545730880, -3384971, -1339493, },
- { -29853244, -30506078, 9749039, },
- },
- {
- { -739606272, -100307352, 17949206, },
- { 398036096, -5266167, 44648868, },
- { -1428731648, 29643864, 17725330, },
- { -470966240, -4185983, 9080098, },
- { 10814728, 70556112, 6454262, },
- { -565363712, 21619792, 3001109, },
- { -3702262, -11188927, -8196408, },
- { -451304960, 16711181, -1861868, },
- { 4640176, -5299453, 12935905, },
- { -275544704, -30096446, 4315906, },
- { 219822864, 5193689, -3836480, },
- { -670961920, 34142844, -2099702, },
- { -24570972, 37352256, -10452877, },
- { -462515904, 25297894, -3964255, },
- { 29928406, -4066260, 7910793, },
- },
- {
- { -1158839040, 133191232, 3401077, },
- { 320299872, 114648784, 17737678, },
- { -1360001408, -29389388, 28477780, },
- { -553707200, 34342020, 9373766, },
- { 48848812, 1812476, 23652922, },
- { -629009216, 16498043, 14461692, },
- { -3304977, -18860812, -5110474, },
- { -484815360, 2575370, 9782862, },
- { -1039919, 36833104, -3190087, },
- { -390961216, 37847788, -1415192, },
- { 135019280, 15649787, 5561983, },
- { -562095808, -33288144, 4657355, },
- { 581968, -30288646, 8622147, },
- { -378714656, -26498338, 1365800, },
- { 58433032, 15504295, -4299263, },
- },
- {
- { -1534202624, -69030864, -7241315, },
- { 29576218, -145640736, -14351096, },
- { -1168657408, 18329310, 17115982, },
- { -649110784, -39743480, 20401, },
- { 31003222, -59195388, 4426501, },
- { -744678592, -49221400, 11759620, },
- { 2608119, 14380624, 6142340, },
- { -568391680, -36477156, 13024488, },
- { -3774740, 17121888, -10470057, },
- { -508062944, -21304648, -3766150, },
- { -33743412, -50315540, 11559368, },
- { -469737888, 12621298, 6405407, },
- { 20067698, -9561134, 10832444, },
- { -315902368, 10422812, 4415227, },
- { 50327888, 2709051, -6794102, },
- },
- {
- { -1751132288, -13207024, 7250442, },
- { -246708288, 73049880, -39247412, },
- { -862555584, -51076288, -4444218, },
- { -702395712, 1078574, -4603131, },
- { -14945949, 21788370, -14555107, },
- { -849413504, 41333156, -40802, },
- { 3284039, 15173046, 5415417, },
- { -631552384, 39072392, 281857, },
- { 2523830, -29244432, 7238094, },
- { -601198784, 3279745, 1770063, },
- { -217172336, 63978908, 4052839, },
- { -408027264, 255014, 2056753, },
- { 14478335, 20039780, 1262184, },
- { -285526752, 3602941, 2639258, },
- { 17275970, -4272419, 2461016, },
- },
- {
- { -1774035712, 41514616, 28337658, },
- { -311022208, 84281752, -26998702, },
- { -463400128, 103843184, -11556683, },
- { -673888960, 36447628, 4330401, },
- { -38556460, 16538308, -10299332, },
- { -860121984, 13616120, -5515275, },
- { -1606318, -12928388, -4128537, },
- { -589480512, 21443698, -10248329, },
- { 2370822, -30808338, 6453725, },
- { -663360384, -3179350, 8325257, },
- { -313834336, -20128902, -7716983, },
- { -367748000, 2401424, -1614371, },
- { -5477694, -12163884, -4982162, },
- { -279149792, -5903970, -234076, },
- { -24133958, -15887621, 5986111, },
- },
- {
- { -1633565056, -29656750, 29936996, },
- { -153765200, -139129024, 20012936, },
- { -41030360, -112123344, -2557653, },
- { -567753856, -29372744, 10521059, },
- { -22300008, -26103200, 1022739, },
- { -733468224, -61831424, 1477469, },
- { -3102040, -8038568, -5382668, },
- { -406942240, -78030968, -4046933, },
- { -3411815, 11391864, -9660992, },
- { -699962112, 10571525, 8303246, },
- { -254887520, -47447576, -7445326, },
- { -326485152, -11907797, -1275068, },
- { -17091822, -501974, -6423661, },
- { -272977376, -2227478, -886374, },
- { -50830400, 18388366, -1570347, },
- },
- {
- { -1375184640, 31143344, 11145977, },
- { 61715460, 32014150, 39172788, },
- { 300763136, 64285460, 5029407, },
- { -418000160, 20066088, 2936684, },
- { 12705050, 14372571, 7395934, },
- { -501899136, 63888176, 6962142, },
- { 612570, 13727252, 1901060, },
- { -136055440, 77131168, 5029407, },
- { -515933, 32912334, -1219234, },
- { -712420736, -4226785, 4772783, },
- { -62121332, 72037336, 844498, },
- { -264470672, 20142322, 1314260, },
- { -8580271, 16182900, -2963528, },
- { -242160992, 13138842, 776852, },
- { -42459508, 6663642, -7353521, },
- },
- {
- { -1027720192, -77440408, -3391414, },
- { 173917728, 60976724, 8347806, },
- { 483799072, -339839, 655519, },
- { -260935904, -33547452, -3558381, },
- { 30398168, 9349607, 5104569, },
- { -247261808, -51369956, 4529043, },
- { 3087008, 1705102, 5864778, },
- { 119048440, -45323180, 4776004, },
- { 3295314, 5176510, 9279277, },
- { -688588480, -17838610, 6984154, },
- { 158658240, -48439180, 2936684, },
- { -172061760, -25860534, 3860102, },
- { 9170292, -17559974, 4941360, },
- { -172681840, -21907018, 2871723, },
- { -2390149, -26675506, -3151432, },
- },
- {
- { -607247168, 129044440, 7869991, },
- { 148426560, -44091060, -21153788, },
- { 504355872, -35570920, -10821707, },
- { -122338920, 43845172, 3470334, },
- { 16774532, -11637751, 798864, },
- { -42919072, 41804528, 5733782, },
- { 70330, -16952772, -434865, },
- { 271430656, 12314208, 1133335, },
- { -1134945, -27432492, -3331284, },
- { -601181056, 36340256, 16134582, },
- { 284485760, 14280229, 1416802, },
- { -46436648, 27926414, 4838281, },
- { 14782741, -4701916, 8718784, },
- { -63385664, 26146688, 3585761, },
- { 38227892, 19090592, 4918275, },
- },
- {
- { -131955888, -102776416, 23400592, },
- { 50165220, -2446521, -14534706, },
- { 429276064, 26648124, -16449725, },
- { -5843840, -23798414, 13560285, },
- { -10225243, 10250476, 235149, },
- { 91384016, -18622442, 12086575, },
- { -3149285, 965831, -6698002, },
- { 302248128, 11066520, 1255204, },
- { -2464238, -18131742, -6780680, },
- { -411309696, -33869576, 17572322, },
- { 248285616, 21774410, 6012418, },
- { 112084152, -22398254, 80531, },
- { 2075543, 25417080, 1172526, },
- { 76741400, -22457310, -71941, },
- { 45845556, 5286568, 8261370, },
- },
- {
- { 373993952, 17577690, -7036230, },
- { -42478836, 3827353, 5222144, },
- { 342384608, -4961761, -11625940, },
- { 114021184, -14768782, 3609383, },
- { -25247966, -19390166, -7270306, },
- { 199094288, -22322018, 2608656, },
- { -331249, 19904490, -118112, },
- { 266570896, -30332670, -670015, },
- { 2378338, 17207250, 6906308, },
- { -89402432, 24081882, -7893613, },
- { 78420200, -62676456, 9542880, },
- { 293430016, 18987514, -13280576, },
- { -12401181, -14681809, -10343892, },
- { 228244768, 18317498, -9505836, },
- { 15437186, -26183194, 3886946, },
- },
- {
- { 865165312, -25497610, -74502112, },
- { -84415968, 16539382, 6498823, },
- { 288153120, -2291902, -5586142, },
- { 269447456, 15268609, -30878668, },
- { -14707042, -15683610, -13768591, },
- { 343504512, 29538100, -36380520, },
- { 3339874, -1758252, 7729868, },
- { 247785248, 36953360, -18047990, },
- { 854162, 28677496, 2340757, },
- { 336332992, -61252676, -49850076, },
- { -113531552, 79529376, -3664681, },
- { 461719200, -34638376, -24414204, },
- { -10072235, -23138600, -8646306, },
- { 356392640, -25852482, -16559783, },
- { -24495272, 27974196, -6864969, },
- },
- {
- { 1228776704, 177195312, -76141720, },
- { -67956584, -5862094, -7258495, },
- { 257796816, 5892159, -2051384, },
- { 447683776, 69246144, -48252348, },
- { 14698452, 70069168, 11866995, },
- { 530176128, 71143448, -61755188, },
- { 3221, -25773562, -967441, },
- { 289620928, 16216186, -37874096, },
- { -2878165, 2015413, -8126078, },
- { 735616256, 161502048, -48373680, },
- { -202235520, -27891518, -27511950, },
- { 549467520, 55591908, -11610370, },
- { 6163815, 36712844, 10152229, },
- { 412312032, 35161288, -6841883, },
- { -37738804, 3149822, -14293651, },
- },
- {
- { 1281082496, -211401504, 48896056, },
- { -14148159, -41238128, -6071473, },
- { 215368448, -6750078, 6689412, },
- { 560569984, -152013392, 4828080, },
- { 24906516, 30822296, 27560268, },
- { 662074560, -195179424, 1111323, },
- { -3439732, -5625334, -8611946, },
- { 355079968, -117149528, -9849434, },
- { 1498407, -29228326, 4475893, },
- { 905934208, -173703504, 37728068, },
- { -138740864, -89582280, -22839026, },
- { 489035168, -18500572, 24653112, },
- { 11938935, 25028386, 14175540, },
- { 355331232, -2408940, 16406238, },
- { -13491566, -49535468, -1341640, },
- },
- {
- { 894766784, -193518336, 137400832, },
- { 35444756, 40083320, 15843061, },
- { 135316704, -25804700, 14344654, },
- { 490654912, 5720360, 78753056, },
- { -4183298, -105033960, -19880330, },
- { 589552960, 32260036, 101505648, },
- { 1813550, 32169842, 6186364, },
- { 345121568, 67742912, 59600724, },
- { 810138, -33732136, 2275796, },
- { 704745088, -125802280, 102349072, },
- { 6849399, 137312256, 30303142, },
- { 274665856, -114824880, 32450088, },
- { -2047089, -48783312, -11823508, },
- { 192652368, -84133040, 18580028, },
- { 19188840, 24214488, 20062866, },
- },
- {
- { 204740016, 647619328, -38720204, },
- { 39803072, 51194400, 12788802, },
- { 30276298, 68772624, -49929, },
- { 214110032, 314792640, 22679038, },
- { -16612934, -90500864, -22324704, },
- { 262058496, 396546272, 36606544, },
- { 1224066, 38911328, 2881923, },
- { 187617600, 208635008, 42795056, },
- { -1625645, -15795816, -4760971, },
- { 215489776, 484327904, -23882166, },
- { 94519344, 41808284, 52547316, },
- { 5176510, 190813584, -29558502, },
- { -7446937, -47923244, -10260140, },
- { 1622424, 120248880, -21247204, },
- { 20531018, 61265560, 6198712, },
- },
- {
- { -328660576, -106819056, -240462336, },
- { 6014565, -55379308, -21743808, },
- { -49900540, -34383896, -26082800, },
- { -92435216, -211497072, -125123672, },
- { 251792, 29870960, 22744000, },
- { -116375896, -290485824, -160718208, },
- { -1044214, 21117280, -3644280, },
- { -39702140, -239503488, -88157424, },
- { 306553, -1584306, 1057636, },
- { -207131248, -121513752, -184537568, },
- { 55978456, -186956704, -25972204, },
- { -152331216, 24865176, -69481296, },
- { 48318, 9571335, 11224897, },
- { -104797200, 22180822, -42998528, },
- { -513249, -18034568, -19814832, },
- },
-};
-
-const Word32 rightHRIRReal_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS] /* Q29 */=
-{
- {
- { 335878240, 171201152, 7902740, },
- { 625042304, -38326140, 24910274, },
- { 537386304, 24339580, 36527624, },
- { 162773888, 291606816, 80030808, },
- { 610952640, -82900920, -32977296, },
- { 45806900, 473868032, 110131016, },
- { 672814144, -110260936, -35019552, },
- { 31259846, 506221504, 91921424, },
- { 704516928, -118449832, -48664128, },
- { 365311136, 194221648, 26628798, },
- { 555327488, 63325536, 28055264, },
- { 134318128, 374452416, 114475376, },
- { 616197376, -46350752, 6811282, },
- { 269210176, 195440880, 39850856, },
- { 584630400, -49424872, -314606, },
- },
- {
- { 153939680, -135309728, -82342040, },
- { 615573504, -83027624, 23161684, },
- { 509388480, -61414812, 27712740, },
- { -32580012, -194236672, -63221920, },
- { 678085120, 133931576, 33365990, },
- { -56443924, -209270128, -145981104, },
- { 725016256, 115785872, 39330088, },
- { -50629612, -88218632, -142844176, },
- { 738054144, 93220656, 26321708, },
- { 235484464, -10732050, -31916976, },
- { 558783296, -111704584, -44579076, },
- { -55024972, -244054000, -73130944, },
- { 626338304, -79976048, -6355478, },
- { 53143240, -92013232, -23232014, },
- { 589115456, -29078540, 8979703, },
- },
- {
- { -47502340, -225702144, 1009317, },
- { 613705728, 190158608, -87268368, },
- { 500094176, 66390532, -18193482, },
- { -160684384, -74954160, -65988952, },
- { 707738112, 53812184, 55165632, },
- { -24977920, -437184192, -53591528, },
- { 728532736, 116576688, 32762010, },
- { 6060199, -491625056, 15927886, },
- { 726640256, 153417312, 2280628, },
- { 68508488, -8391829, -511638, },
- { 619300480, -227791104, -7439957, },
- { -149295744, -68784976, -106736376, },
- { 642141120, 15699179, -49628348, },
- { -174591488, 17845590, -8568997, },
- { 583061120, 57918708, -26482768, },
- },
- {
- { -246570320, -252771712, 25805774, },
- { 711792064, 274690016, -82055352, },
- { 569176064, 166868064, -9373229, },
- { -120591408, 45267880, -33620468, },
- { 639823424, -91681448, 10991895, },
- { 45526652, 26081726, 112846504, },
- { 661089408, -61773976, -25802552, },
- { 39781060, -244305248, 111033496, },
- { 689595136, 6112812, -45711872, },
- { -118973816, -45193256, 16270947, },
- { 685362944, -63247152, 47053516, },
- { -50758996, 267372992, -9620727, },
- { 687694592, 133942848, -11167989, },
- { -268843488, -18899466, -7071664, },
- { 595376448, 97235912, -13216688, },
- },
- {
- { -363332768, -48200808, -38664368, },
- { 862057920, -196809360, 76299024, },
- { 680975680, -66029752, 62313532, },
- { 42142756, -224898448, 23900956, },
- { 517202656, 39182988, -13852343, },
- { 16899086, 240396304, 28621662, },
- { 578456384, -10711112, -26575110, },
- { -31825708, 272278368, -90252832, },
- { 675961792, -76532024, -7255274, },
- { -275402432, 19490024, 19011136, },
- { 694145088, 78392816, -15985868, },
- { 104157792, -106337488, 88669600, },
- { 699485376, 22428320, 29043106, },
- { -167101616, -96108480, -3835943, },
- { 594321984, 26122528, 13720810, },
- },
- {
- { -278544192, 77761992, 6783364, },
- { 893755328, -228144912, 63108100, },
- { 720438336, -255192992, -13665512, },
- { 156205280, -23141820, 77895672, },
- { 399979552, 6000070, -7042136, },
- { -31854698, -64270964, -75585520, },
- { 512157120, 10667088, -5974837, },
- { -14828375, 393006144, -40407588, },
- { 667064256, 27399744, 34042448, },
- { -356493568, -38231652, 11823508, },
- { 722442496, 111037256, 533113, },
- { 115784800, -171748224, 61668752, },
- { 626011904, -82572360, -625992, },
- { 45074072, 72021768, 15156940, },
- { 536772128, -35543540, -3380139, },
- },
- {
- { -73698416, 41248328, -20535312, },
- { 848944832, 184383488, -79126184, },
- { 734158656, -104955576, -76299024, },
- { 83268144, 220971232, 1210644, },
- { 328131200, -52250424, 26017302, },
- { -17207786, -185924832, -29459180, },
- { 478818528, -4858145, 3739306, },
- { 37145560, 13910862, 105687336, },
- { 647532864, 87085832, 14063334, },
- { -334238656, -15821586, -947040, },
- { 766663488, 87857848, 5260261, },
- { -16082505, 188711200, -38655244, },
- { 512291360, 14954002, -14906221, },
- { 202894256, -21919902, 18131742, },
- { 441034624, 10546829, -3133716, },
- },
- {
- { 182968832, 166872896, -25620554, },
- { 900337344, 202598976, -76710264, },
- { 774260736, 183863248, 31660888, },
- { -58633820, -30077656, -56673168, },
- { 287297888, -74439840, 22798760, },
- { 24970940, 68754376, 57749056, },
- { 481663936, 8292508, 8747238, },
- { -9427453, -322418912, -27601070, },
- { 644221504, -19704236, -26892400, },
- { -206094544, 45814416, -1173063, },
- { 828069184, 40436044, -29763586, },
- { -114652008, 22880364, -75015360, },
- { 412233120, -1234803, -1341104, },
- { 209146112, -50087908, 9846749, },
- { 329985568, -20840256, 6089727, },
- },
- {
- { 366514784, -87303264, 40976672, },
- { 1047088896, -194659728, 43730284, },
- { 742656192, 139103248, 52795884, },
- { -114707304, -54439248, -33390686, },
- { 272615008, 16188805, -11766063, },
- { 17126718, 143042272, 28806346, },
- { 510879904, 21948356, -520765, },
- { -24763170, -206299632, -69475392, },
- { 699449920, -91850024, -6042482, },
- { -14831059, -71486512, 9839770, },
- { 919253440, -104362336, 10414759, },
- { -63852204, -181701280, -10722923, },
- { 358785984, 5443334, 4399657, },
- { 77541336, 88224000, -13798119, },
- { 235267568, 42878804, -1713155, },
- },
- {
- { 328002368, -158853120, 19053012, },
- { 1123982208, -105683040, 55635932, },
- { 635256832, -136615936, -37422052, },
- { -54308788, 119649200, 13070659, },
- { 308759840, 62324808, 1898912, },
- { -19162534, -72129144, -44424996, },
- { 567933696, 23300734, -9535901, },
- { 20692616, 124913752, 58988692, },
- { 789915904, 13496935, 18928458, },
- { 169172320, 1418413, 5950677, },
- { 959227776, -50255412, 22593138, },
- { 54667956, 60081760, 48018808, },
- { 362694944, -3298535, -1773285, },
- { -84051976, -10931766, -20318954, },
- { 193888240, 11763915, -7717520, },
- },
- {
- { 115933512, 54171348, -20616916, },
- { 1061163456, 129533528, -23348516, },
- { 550549824, -101550208, -32472638, },
- { 45247480, -22406844, 44503916, },
- { 375784928, -266288, 15702937, },
- { -17834314, -101530880, -31956704, },
- { 652130624, -41226856, 1646046, },
- { 8262444, 212076896, 22017076, },
- { 872475392, 27085674, -3548180, },
- { 293410688, -7770670, -11642046, },
- { 921522816, 53132504, -10414222, },
- { 94559608, 61743376, 34906272, },
- { 410655776, -33762736, -339302, },
- { -169639392, -46001784, 9142912, },
- { 215555280, -39306468, 7264401, },
- },
- {
- { -121721520, -43738336, -8097624, },
- { 933114368, 22093848, -32720672, },
- { 494997664, 19759534, 23136452, },
- { 75576392, -114045880, 3667365, },
- { 444172096, -36144296, -12401718, },
- { 14139032, 87575992, 32541356, },
- { 733825792, -1081258, 2262374, },
- { -19392852, 7123204, -55031952, },
- { 939120896, 32734094, -12346420, },
- { 337437312, 5166309, -13647259, },
- { 852432896, -9301289, -18699750, },
- { 25549150, -84922776, 491237, },
- { 472952672, 23739894, 11385958, },
- { -152883648, -14016626, 17564806, },
- { 268112256, -3453154, 10877542, },
- },
- {
- { -269692256, 7937100, -2384781, },
- { 808061568, 12100533, -4268661, },
- { 423107424, 58875412, 14115947, },
- { 38092064, 6757594, -32236950, },
- { 507483136, -62690416, -14868640, },
- { 18486612, 77123120, 34720516, },
- { 786537344, -938987, -7950522, },
- { 1819992, -147699632, 6068252, },
- { 974787392, -12577812, 1095217, },
- { 289339072, -1104880, -3964792, },
- { 789703808, -11702712, -6681896, },
- { -67787472, 68001680, -30844308, },
- { 519936384, 28106802, 3049427, },
- { -55746528, 10052908, -11537356, },
- { 320355168, 12771085, -5028870, },
- },
- {
- { -264577504, 33274186, 2607582, },
- { 710308672, -16774532, -5884105, },
- { 337924256, -31025770, -6185827, },
- { -10758893, 44742820, -5711233, },
- { 532032096, 22328462, 13090523, },
- { -10329396, -93899256, -23986856, },
- { 795033344, 9193914, -5691369, },
- { 13652090, -58238144, 38045896, },
- { 953060224, -46311020, -9642738, },
- { 153929488, -34870840, 5812165, },
- { 745974592, 75162, 3201898, },
- { -79250736, 42124504, -40099424, },
- { 552490112, -8643085, -15971373, },
- { 79966920, 67082556, -16285442, },
- { 359595072, 18285286, -9487583, },
- },
- {
- { -141451520, -45782204, 6092411, },
- { 634855232, -24634858, 3785477, },
- { 254404336, 7821136, -4571456, },
- { -45016088, -10459319, 21311628, },
- { 477775936, 54230404, 9673877, },
- { -18442052, -56763900, -35335768, },
- { 744544960, 14347875, 413927, },
- { -5615670, 84819160, -16463683, },
- { 872367424, 952409, -17485886, },
- { -37825776, 60159608, 3164854, },
- { 706909760, 23321672, -1428077, },
- { 5742372, -135769280, 3150359, },
- { 584314176, -42927660, -8116415, },
- { 172647488, -49075908, 8621610, },
- { 369367712, -11576011, -375810, },
- },
- {
- { 15072651, 50944216, 13710072, },
- { 538955072, -13040594, 24205362, },
- { 187226752, -5189394, 2030446, },
- { -50834696, -49825380, 8231305, },
- { 367362496, -49736796, -9050570, },
- { 5716602, 87666192, 13341242, },
- { 638520448, -28745680, 1804423, },
- { -9424232, 56697328, -25742424, },
- { 736861248, 15118285, 10206453, },
- { -219684352, -36769752, -482110, },
- { 649502144, -17821430, -9939091, },
- { 81932408, 45398880, 53095460, },
- { 598292672, 6328635, 7124277, },
- { 149414400, -23850490, 21712134, },
- { 334426016, -10021232, 5326833, },
- },
- {
- { 125673968, 17753784, 9321690, },
- { 397379488, 104956656, 5082557, },
- { 149467008, 2914135, 4262755, },
- { -20718922, 27423366, -28011776, },
- { 257603008, 8898098, -11051488, },
- { 20265266, 5883569, 42024644, },
- { 506127552, 32068374, 2290828, },
- { 7227893, -67430448, 20556250, },
- { 544590016, 78309064, 19809462, },
- { -321714528, 9211631, 1069984, },
- { 556742656, -2592550, -1637993, },
- { 52476984, 129614056, 30575336, },
- { 567954112, 30062086, 1427540, },
- { 18473192, 89390080, 6312528, },
- { 260188048, 30055108, 3881577, },
- },
- {
- { 162220384, -35226784, -14843944, },
- { 258143104, -34475704, -23410792, },
- { 143663440, 850404, 3514357, },
- { 39367672, 96164856, -16363289, },
- { 196611248, 29874718, 7045894, },
- { -3548180, -142337904, -8863739, },
- { 391071808, -25950730, 772557, },
- { 7097434, -70594232, 19371376, },
- { 343604896, -82419352, -5340792, },
- { -306525920, 20317880, 2103997, },
- { 416423392, -35428112, 9055402, },
- { -42094436, -123787936, -41830296, },
- { 494898880, -19892678, -4767951, },
- { -125548336, -57329760, -18460306, },
- { 171719776, -38439956, -6002754, },
- },
- {
- { 149700544, -15543487, -19137300, },
- { 186234608, -56275344, -2545842, },
- { 165364288, -8795019, 3685619, },
- { 74812960, -56720412, 33527588, },
- { 207906480, -11742977, 21865142, },
- { -22778896, -28792388, -50524920, },
- { 342108096, -9793599, 3819837, },
- { -10169946, 55358908, -28482612, },
- { 224280512, -4655745, -12516608, },
- { -185469568, -39997420, 2193118, },
- { 240936384, 58211304, 3536906, },
- { -74164424, -86611776, -47780436, },
- { 395104256, 23114440, -3353296, },
- { -173409840, -28682866, -19873350, },
- { 105167104, -6638409, -7066295, },
- },
- {
- { 105323872, 22173842, 1312113, },
- { 179931744, 12965433, 22897544, },
- { 207433504, 2630131, 1804423, },
- { 30630634, -85687280, 33305860, },
- { 303123744, -13679471, 8104604, },
- { 6169721, 159945648, 18145700, },
- { 392402720, 24051816, 9910100, },
- { -2450279, 113075216, -6314676, },
- { 236913616, 52297132, 6293201, },
- { -14849313, 42407432, 1881733, },
- { 74994424, -41807748, -5413270, },
- { -10800769, 124163744, 16718697, },
- { 288295936, -18919330, -2345052, },
- { -94409288, 83413632, 5292474, },
- { 77771656, 19129784, 6313065, },
- },
- {
- { 28367722, 11352135, 17681306, },
- { 207316464, 32352914, 8996346, },
- { 260098928, -1567663, -5674726, },
- { -55946780, 123041688, -25584584, },
- { 493192160, -18697604, -19944218, },
- { 20092930, 83791056, 44481364, },
- { 544934720, -18092012, 1531693, },
- { 11063836, 15476378, 30881352, },
- { 367152064, -42682312, 18682570, },
- { 133796288, -29187524, 2644626, },
- { -38214472, 3738769, -4303021, },
- { 52898964, 14692009, 39791260, },
- { 197532528, -1098438, 5455146, },
- { 39827768, -23616414, 17642652, },
- { 79354888, 1855963, 11523934, },
- },
- {
- { -69984344, -64994668, 7815230, },
- { 255391104, -3300682, -12565464, },
- { 309282752, 20043538, -7486665, },
- { -81857248, 52066816, -46926276, },
- { 754250496, 88805968, -26157962, },
- { -7791071, -102232032, -24181202, },
- { 773598784, 38256884, -16646756, },
- { -3101503, -88045216, -9091372, },
- { 563862080, 4434554, 3325915, },
- { 207639120, -3164317, 795643, },
- { -87747256, 15495168, 6041945, },
- { 46018964, -69473240, 9407052, },
- { 138111120, -15164993, 10856067, },
- { 130414000, -16855600, 1413581, },
- { 103952704, -7817378, 4638565, },
- },
- {
- { -153698624, 52211768, -22286586, },
- { 314552672, -41536092, -8077223, },
- { 332848704, -26689464, 4923107, },
- { -13014288, -137779872, 9877351, },
- { 993195648, -101502424, -251792, },
- { -14167486, -78821240, -29317446, },
- { 1013642368, -73787000, -18562312, },
- { -8565239, -48564804, -23686208, },
- { 768001344, -13456669, -25697326, },
- { 197247984, 20113332, -4068945, },
- { -99047848, 2668785, 10101763, },
- { -9654550, 48223892, -18820546, },
- { 126544232, 16342887, 2228014, },
- { 130527280, 6726993, -6411313, },
- { 158825200, -2674154, -4586488, },
- },
- {
- { -173407152, 80022760, -10335839, },
- { 357153376, 23606214, 8338142, },
- { 311526848, -16561931, 13072807, },
- { 60987460, -6754373, 41550588, },
- { 1076533504, -11509975, 15732465, },
- { 5602785, 54272280, 18927920, },
- { 1159097344, 47392816, -2072859, },
- { 6779606, 63433444, 19216220, },
- { 918634432, 72778760, -22099754, },
- { 133954128, -19498078, -5927592, },
- { -104071352, -11424076, 4241280, },
- { -46579456, 18314278, -20225000, },
- { 182078704, 12781823, -7573101, },
- { 50426136, -12663711, 3757560, },
- { 249549952, 27696634, -7901666, },
- },
- {
- { -125086088, -64300492, 37410240, },
- { 354743360, 22876606, 8448201, },
- { 263105408, 37308772, 4003983, },
- { 59869696, 90144920, 3503083, },
- { 935057856, 98520104, -1078037, },
- { 9542880, 47780436, 17816598, },
- { 1110528256, 38748660, 6838125, },
- { 4467303, 80529024, 12106976, },
- { 936150912, -29707216, 10800769, },
- { 60918204, 12298639, -4695473, },
- { -115432080, 2697776, 1560684, },
- { -27349278, -44630616, -2356327, },
- { 298056224, -43240656, -7306813, },
- { -58851788, 43766252, 4701916, },
- { 360583456, -39258684, -2423972, },
- },
- {
- { -43643848, -73751568, 23637890, },
- { 311553696, -29218662, -2420751, },
- { 249098976, -7734699, -6087043, },
- { 5525476, -15845208, -22711788, },
- { 627708416, -90942712, -14872935, },
- { -1866700, -29127394, -9088151, },
- { 851950272, -100369088, 317828, },
- { -7909719, -9968619, -22215718, },
- { 758959936, -100101728, 13643500, },
- { 6927246, -2215666, -2097018, },
- { -129383744, -5531381, 2185602, },
- { 18997714, 28491202, 12160663, },
- { 428251712, 44209172, 894964, },
- { -125575184, -25443386, -8341900, },
- { 449487648, 13390634, 525060, },
- },
- {
- { 70837968, 58482960, -45040248, },
- { 261459888, 8723615, -6206228, },
- { 325033472, -26867168, -9676561, },
- { -40947680, -31508954, -4011500, },
- { 283930080, 67042292, -12214887, },
- { -7194607, -11471858, -12919262, },
- { 471827392, 110132624, -9797894, },
- { -559956, -64124936, -1170916, },
- { 422992000, 129837400, -14223321, },
- { -25354802, -2267743, 1309428, },
- { -133630928, 3575024, -60666, },
- { 39726300, 7045894, 15430207, },
- { 506878624, -6169184, 4694936, },
- { -102008696, -30327300, -11685532, },
- { 474422624, 6671158, -2348273, },
- },
- {
- { 217952944, 121817624, -52187072, },
- { 240484880, 14042396, -132607, },
- { 494514496, 60224568, -7513509, },
- { -48454212, -5237176, 7024419, },
- { 20397336, -24781962, -4145180, },
- { -1296543, 28807420, 542777, },
- { 108569792, -68455336, -13811004, },
- { 7339562, -6582038, 20469814, },
- { 50323596, -54717348, -17939542, },
- { -52311628, -2201708, 4130685, },
- { -115864792, 11620034, -204548, },
- { 14101451, -45034880, 3508452, },
- { 491351776, -30665530, -1449552, },
- { -7735773, 56921200, 1196685, },
- { 420662528, -21121576, -2969433, },
- },
- {
- { 302108544, -145636432, 25764972, },
- { 270012256, -23244364, 9095667, },
- { 695182848, -53615688, -2393908, },
- { -17125108, 6622840, -6611029, },
- { -111943488, -11172821, 7976291, },
- { 6505802, -8606578, 12640626, },
- { -130551976, 1461900, -3079492, },
- { -2710661, 67228048, -7895224, },
- { -250304256, 20928302, 3484292, },
- { -89183920, 11238319, 4881767, },
- { -75185016, -18063558, 3986804, },
- { -25879862, 31284004, -15047955, },
- { 386935200, 44014288, -10276783, },
- { 83388400, -25720412, 13156559, },
- { 302272832, 38888780, -4435091, },
- },
- {
- { 186142272, -78747152, 69059320, },
- { 357181280, 13597866, 10020159, },
- { 826062336, 10807748, -4036733, },
- { 30802432, 40938556, -4883915, },
- { -136869872, 11004243, 16057272, },
- { 2662343, -36271000, 3084860, },
- { -225224320, 22747758, 14950781, },
- { -5504001, 47386376, -15182709, },
- { -434281856, -19651086, 14351096, },
- { -132748848, -15060303, 3321620, },
- { -19873888, 9534291, 5590437, },
- { -32341104, 26803818, -15712064, },
- { 232506976, -29129542, -11449846, },
- { 104971688, -25116432, 9660992, },
- { 154529696, -33919504, -7061463, },
- },
- {
- { -114229488, 228196448, 14908368, },
- { 504227008, -10380936, -2932926, },
- { 808694016, 22711788, -7024956, },
- { 52182780, -21744882, 14767171, },
- { -107239424, 5180805, 11981348, },
- { -5783711, 8522826, -12138651, },
- { -224969856, -5100811, 21272974, },
- { 5198521, -30551176, 14821932, },
- { -503597248, 4022774, 13465796, },
- { -158316784, 4875325, 1993939, },
- { 44385804, -1563368, 157303, },
- { -302258, -49360448, 4401805, },
- { 67911488, 13307956, -1172526, },
- { 51097224, 43914968, -3702799, },
- { 13918378, 13386339, -2522220, },
- },
- {
- { -376732512, -105936976, -52158084, },
- { 701803008, 31803160, -19734838, },
- { 622177024, -62460100, -6384469, },
- { 20867636, -43538084, 14351096, },
- { -59612000, -13386876, -1971927, },
- { -2908230, 31246960, -3704946, },
- { -186044032, -19776714, 9260486, },
- { 2085744, -53198000, 5521718, },
- { -485769920, 526134, 8494372, },
- { -134485088, 9373229, 1622961, },
- { 117180664, 9884330, -6997039, },
- { 28893318, 8454106, 18998250, },
- { -86978456, -23970750, 8986145, },
- { -27663884, -22535156, -12045236, },
- { -101843336, -9178345, 6937983, },
- },
- {
- { -372928800, -118043416, -44813688, },
- { 904283328, -64888364, -21122112, },
- { 301261344, 95022392, -11047193, },
- { -33595772, 58286464, -11398306, },
- { -6813966, -10190884, -11519102, },
- { 4401268, -8411157, 9586904, },
- { -133000104, 10397042, -9189083, },
- { -5110474, -309238, -14335527, },
- { -414447712, -6669011, -659278, },
- { -45639932, -19439022, -1628866, },
- { 192929392, -26497264, -6411850, },
- { 20511154, 46442556, 7100118, },
- { -223085440, 39593692, 6857989, },
- { -72546832, -16858820, -6147709, },
- { -191062688, 25187836, 7979513, },
- },
- {
- { -97977864, 172937392, 5498095, },
- { 1020359680, 49040472, -3064996, },
- { -83678848, -74016784, -12161737, },
- { -51643760, 16670916, -23394150, },
- { 36763848, 26569204, -6542309, },
- { 3170760, -21297132, 4604205, },
- { -73004784, 22681186, -14823006, },
- { 271657, 39352100, 1069984, },
- { -324642624, 17212082, -8062728, },
- { 91595544, 28620588, -8014409, },
- { 250592544, 19866908, 323733, },
- { -10849624, -29150480, -13490492, },
- { -325997696, -26555782, -1130113, },
- { -62478888, 26125212, 6773164, },
- { -250334320, -19998978, 541703, },
- },
- {
- { 230774496, -94694368, 33468532, },
- { 950758144, 45088028, 7181722, },
- { -466968160, 41601052, 4842039, },
- { -12726525, -71256728, 816044, },
- { 38146824, -9856413, 4327717, },
- { -3117073, 13539348, -7080791, },
- { -34454764, -30524332, -4786741, },
- { 4219806, 10428181, 11727945, },
- { -263279888, -25294674, -5777805, },
- { 224959120, -37230388, -9239548, },
- { 262986752, 8453033, 1917703, },
- { -24196772, -24077586, -11637214, },
- { -382932832, -1334124, -1830193, },
- { -19270982, -700617, 7786239, },
- { -273468608, -2460480, -2448131, },
- },
- {
- { 372294208, -19914690, 33813740, },
- { 662759616, -123762704, -7464117, },
- { -810661120, -51490752, 24456618, },
- { 35114580, 11368242, 20448340, },
- { -34016676, -30839476, 7538205, },
- { -3339874, 17280800, -5366562, },
- { -70069704, -1327145, 8199093, },
- { -1795296, -34127272, -5259188, },
- { -282629248, 8960376, 7567196, },
- { 282418784, 23540716, 503048, },
- { 219165200, -27831388, -4094178, },
- { -8269960, 26900454, 3402688, },
- { -400790240, 10691784, 3843459, },
- { 25067576, -6487011, -2902324, },
- { -267513104, 12243878, 891743, },
- },
- {
- { 242817056, 136962208, 7746511, },
- { 221894656, 116763520, -22308598, },
- { -1080360960, 71046816, 23397908, },
- { 40003864, 38815232, 8348343, },
- { -178594944, 59281288, -1345399, },
- { 2113124, -13751948, 5187247, },
- { -215943984, 54989540, 10739029, },
- { -3170760, -24517820, -8753680, },
- { -410339552, 47098076, 15241765, },
- { 210557552, 27944668, 10531797, },
- { 131049656, 24807732, -8782671, },
- { 13361643, -3181497, 8449811, },
- { -405466400, -171799, 6650220, },
- { 50663436, -10238665, -5988795, },
- { -255399696, -5711770, 3862786, },
- },
- {
- { -31068720, -130587944, -33651604, },
- { -262315664, -71206264, -12941273, },
- { -1221106432, -40506372, 7044820, },
- { 5936719, -27122718, -7492034, },
- { -352367712, -35716948, -6782827, },
- { 3185792, -11842835, 5377299, },
- { -448329088, -80601504, 1251983, },
- { 3089692, 21311628, 8769786, },
- { -610926336, -79132624, 5086315, },
- { 21592948, -75939320, 6671695, },
- { 18001282, -15389405, -5661841, },
- { 17416630, -10782515, 4671851, },
- { -422662912, -11905649, 4202626, },
- { 46805480, 9417253, 2310156, },
- { -262331776, -7301445, 3401077, },
- },
- {
- { -226603008, -18327162, -38191388, },
- { -707435904, 51271172, 11145977, },
- { -1183006336, -31270046, -1832877, },
- { -28250684, 2456721, -9917616, },
- { -500287456, 8203388, 2072859, },
- { -1089848, 12928925, -2975339, },
- { -683104320, 48995376, -4758287, },
- { 1455994, 33645164, 3847754, },
- { -786317248, 39530880, -5663988, },
- { -192634112, 63155348, -4294431, },
- { -111193480, 20921322, 501437, },
- { 2214593, 16510391, -981400, },
- { -461840512, 15453292, 817654, },
- { 13194140, 15024869, 6694244, },
- { -300300896, 16017544, 1114544, },
- },
- {
- { -224664912, 108171432, 4175782, },
- { -1078223616, -68621232, 23726474, },
- { -973332992, 83570936, 3840775, },
- { -30763776, 19509352, -3448859, },
- { -591696192, -11749957, 9123047, },
- { -3073049, 4521527, -5551782, },
- { -830735232, -6813429, 331786, },
- { -3465502, -2225867, -9803263, },
- { -840708736, 18293340, -2704756, },
- { -311184352, -5189394, -6243809, },
- { -260984768, -36910412, 1418950, },
- { -14047227, -9365176, -6448894, },
- { -515333248, -12192875, -68719, },
- { -30389042, -25724706, 301185, },
- { -362049088, -16235513, 537, },
- },
- {
- { -85414552, -51876764, 32028108, },
- { -1362811904, 77688440, 13334263, },
- { -671621760, -84929760, 12796318, },
- { -3631395, -17330730, 3491809, },
- { -624009344, 13232257, 3234110, },
- { 216896, -15168214, 1034550, },
- { -855872064, -12947179, 4281546, },
- { 352724, -30451318, 1169305, },
- { -747763456, -48717276, 4341138, },
- { -265382800, -39658116, -1537061, },
- { -439059488, 42351060, -1467805, },
- { -12868259, -11892764, -6317897, },
- { -567934784, 5772973, 1864553, },
- { -51245404, 6357626, -6984691, },
- { -427521056, 10568304, 1278290, },
- },
- {
- { 57335128, -21424908, 14519674, },
- { -1546537216, -24615532, 2499134, },
- { -387294912, 44589276, 12475806, },
- { 22578106, 1583232, 3779034, },
- { -614494912, 9084930, -2698850, },
- { 3117073, 118112, 6264747, },
- { -790453312, 28467044, 3361349, },
- { 2966749, -11570642, 8281234, },
- { -561839168, 52027624, 6072010, },
- { -83245592, 55242408, -1686848, },
- { -644597312, -28553480, 3214783, },
- { 3478387, 23061826, 2260227, },
- { -603926656, 3766150, 6805376, },
- { -31689880, 19377282, -6148246, },
- { -473488992, -205085, 5046587, },
- },
- {
- { 120469000, 22543210, -11138461, },
- { -1607233664, -59374164, 24469502, },
- { -194259760, -6671695, 2132988, },
- { 24184424, -1061394, 4543539, },
- { -591490560, -34621196, 7472170, },
- { 248571, 18603650, -70867, },
- { -702711936, -44425532, 11446625, },
- { -1819456, 23494544, -5267778, },
- { -377655392, -42054172, 6758131, },
- { 128841504, -56617868, -2202245, },
- { -852840896, 11351062, 22712324, },
- { 14465987, -4428648, 10028749, },
- { -604490880, -11200201, 13851806, },
- { 11824582, -26652956, 1130113, },
- { -478025024, -8836358, 10008348, },
- },
- {
- { 99128920, 3651796, -10679973, },
- { -1516199168, 58139900, 60329796, },
- { -95059440, -290984, -6617471, },
- { 3212636, -14644765, 6335077, },
- { -570893504, 23903640, 28049358, },
- { -3208341, -1371168, -7168838, },
- { -640622272, 31571768, 31884226, },
- { -1759863, 24443732, -4776004, },
- { -266206912, 23772644, 13987635, },
- { 247099664, 32651416, 7637526, },
- { -995970176, -21615496, 41095320, },
- { 6749004, -25076704, 4926328, },
- { -542421632, 7269232, 14501957, },
- { 41754600, 11839077, 8631811, },
- { -421268096, 9819369, 10045929, },
- },
- {
- { 31780610, 2109366, 4351876, },
- { -1227817856, 31887448, 36262944, },
- { -41796476, -6394670, -8111583, },
- { -21230560, 42835856, -9363566, },
- { -526691296, 30912490, 26707180, },
- { -296353, -21707302, -4295, },
- { -582211840, 34218004, 32887102, },
- { 2781528, -8465917, 8039642, },
- { -226947680, 16712255, 18204756, },
- { 205733232, 29428580, 19158776, },
- { -966141632, 51030652, 20940114, },
- { -9344238, 25553444, -10163503, },
- { -389149280, -6488085, -1595044, },
- { 33305324, 17487496, 9344238, },
- { -290937312, -11132555, -1483911, },
- },
- {
- { -34587372, -31123480, 4677757, },
- { -702422016, -12524662, -63307816, },
- { 13409962, 10168335, -9574019, },
- { -22231288, 18446348, -21504902, },
- { -395849408, -55143620, -19904490, },
- { 3506841, 831613, 8366060, },
- { -443376992, -79262008, -21980568, },
- { -288837, -30697206, -807991, },
- { -192801616, -61860412, -7623030, },
- { 45564236, -99012952, 7204808, },
- { -676510528, -4662724, -44772348, },
- { -11819750, 21961778, -11959873, },
- { -144633568, 41230076, -25599616, },
- { -3271691, -40654548, -3177202, },
- { -98791224, 36429376, -16961362, },
- },
- {
- { -62903556, 22214108, -11652783, },
- { -2837900, -263309408, -104393472, },
- { 83321288, -27225260, -9924059, },
- { 8424041, -95043328, 15469935, },
- { -140510384, -68141264, -63327684, },
- { -774705, 31915902, -3386582, },
- { -159801776, -62714576, -81861536, },
- { -2260227, -16823386, -6184753, },
- { -88226680, 2919504, -50476604, },
- { -109439528, 88497264, -31301184, },
- { -164298608, -202133504, -72149544, },
- { 3622805, -46176268, 10753524, },
- { 129524936, -112725712, -21399674, },
- { -31066036, 12406013, -17940078, },
- { 102797360, -79412872, -12246026, },
- },
- {
- { -39567924, 46573552, -9427453, },
- { 621364224, 460767840, 43075300, },
- { 141969600, 41977936, 2921115, },
- { 22793392, -57216480, 28717226, },
- { 173183280, 253221616, -8589398, },
- { -2685428, 21849036, -7056632, },
- { 208237728, 318084736, -17783848, },
- { 2145336, 14760192, 6643778, },
- { 94066224, 175970720, -26878980, },
- { -143160928, 64352032, -39194796, },
- { 354849664, 357099680, 32628330, },
- { 10445897, -34724272, 13976360, },
- { 317177952, 112315008, 26720066, },
- { -21392158, 55930676, -4970888, },
- { 230905488, 66931696, 18525804, },
- },
- {
- { 8250096, -53528716, 19508816, },
- { 821677696, 19742890, 188074464, },
- { 149194272, -2103460, 19142132, },
- { -2042257, 85702848, -23702314, },
- { 366368768, -121583544, 100727720, },
- { 2202245, -13095355, 6751689, },
- { 447949504, -178254032, 129330056, },
- { -533650, 32718524, -1122597, },
- { 249170912, -161775312, 71844600, },
- { -50550692, -170051712, 27342298, },
- { 576970880, -17979806, 144182048, },
- { -1150514, 37701760, -12638478, },
- { 317480224, 68158448, 50017040, },
- { 7964480, -27748710, 20958366, },
- { 223188512, 53187800, 29809758, },
- },
- {
- { 25666188, -61740156, 13222057, },
- { 468054272, -778914880, -37406480, },
- { 90884192, -81121728, 2451353, },
- { -7944079, 107862200, -10186052, },
- { 283284224, -362074880, 32602560, },
- { 53150, -31307628, -1322850, },
- { 350218624, -463973504, 48184700, },
- { -569083, 32280438, -673236, },
- { 226416176, -237868704, 52872120, },
- { 40658308, -44644036, 57304528, },
- { 362591328, -576002368, -16647293, },
- { -3433826, 53061100, -4096862, },
- { 145049104, -242396672, -31521302, },
- { 13876502, -64969972, 4359929, },
- { 100901128, -152861648, -22567906, },
- },
-};
-
-const Word32 rightHRIRImag_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS] /* Q29 */=
-{
- {
- { -135520176, 194871264, -54369992, },
- { 5232344, 17252346, -539555, },
- { -22220550, 117874840, -40396316, },
- { -107257680, 255896304, -73097656, },
- { 11720966, -108904264, 36866924, },
- { -50680076, 336556864, -124497144, },
- { 11458436, -134486704, 49912352, },
- { -43055436, 307590528, -120338008, },
- { 8897562, -128660576, 50126028, },
- { -119941256, 172604528, -50995756, },
- { 10245644, 73467024, -31177704, },
- { -103657424, 351444832, -110692048, },
- { -908386, -22171694, 13412646, },
- { -139419472, 198506944, -49185964, },
- { -13219372, -29753386, 17103634, },
- },
- {
- { -305028032, 178966992, -27285390, },
- { 30917858, -50915228, -27016954, },
- { -31333398, 17824652, -79691504, },
- { -180582976, 181514448, -78655344, },
- { -27201102, -118149720, 33646236, },
- { -32651416, 465500896, -72493680, },
- { -25593174, -154673584, 44513576, },
- { -8945343, 553823680, -21647708, },
- { -21735756, -183458992, 31233540, },
- { -271011904, 228043440, 6618008, },
- { 46176804, 103967736, -27739584, },
- { -154800288, 253057328, -131308960, },
- { -21784610, -92931280, -13600551, },
- { -288599264, 110345760, -48391932, },
- { -57660472, -99732360, -5020280, },
- },
- {
- { -324153536, 9072045, 47385836, },
- { 99568616, -139327136, -15360414, },
- { 46054396, -314262752, 41872708, },
- { -52845276, -129020816, 7718056, },
- { -148029808, 81420232, -18759344, },
- { 49320720, -72422272, 121334976, },
- { -120695560, 51905752, -15993921, },
- { 48910012, 135625936, 140061024, },
- { -86364816, 64855080, -57959508, },
- { -347903616, 196710576, 28915330, },
- { 79715664, -68266896, 35842040, },
- { 3573950, -296180416, 41096932, },
- { -46603616, -98206040, -14537391, },
- { -211719872, -73775728, 8290361, },
- { -100602096, -66857072, -14718853, },
- },
- {
- { -238983248, -109216184, -20186346, },
- { 158430064, 109539384, 60192356, },
- { 99478424, -106365936, 113992192, },
- { 108341624, 68608344, 33007898, },
- { -268344720, -942208, -20194936, },
- { 17487496, -307243712, 28120224, },
- { -190794256, 31733902, -4362613, },
- { -23633058, -389901440, -67944776, },
- { -105947176, 126534568, -27926952, },
- { -342148384, 121005872, -7304666, },
- { 47435768, -191150208, -8434779, },
- { 137140448, -296890, 113191712, },
- { -92741232, -11922829, 27136140, },
- { -370978, 66400196, 11968463, },
- { -144703888, 2766496, 20560008, },
- },
- {
- { -18681498, -206867632, -19592568, },
- { 108209552, 185416416, 46416248, },
- { 32727650, 247064240, -21903796, },
- { 156707248, -9570261, 57924076, },
- { -329999520, -24774446, -2032593, },
- { -37249716, 38208564, -89804544, },
- { -212032336, -13562970, 13310641, },
- { -28955596, -346057312, -82060720, },
- { -104133096, -3824132, 22079890, },
- { -226855872, 54367844, 4613332, },
- { 9917616, -101770864, -34786552, },
- { 88293256, 239106192, 33024004, },
- { -200631344, 115047680, -3089155, },
- { 199597872, -60316912, 18438832, },
- { -231136352, 84634480, 1288490, },
- },
- {
- { 223436016, -51390356, -4157528, },
- { -18214956, -250354720, -92994632, },
- { -57046828, 54381264, -80257904, },
- { 29657286, -269596704, -5538361, },
- { -314948864, 58884000, 23173496, },
- { -15848966, 209089216, -23430120, },
- { -186629744, 5942088, 11245298, },
- { 37234144, 136140800, 105880608, },
- { -111910744, -61173756, 839666, },
- { -54005456, 101106752, -8387535, },
- { 6058052, -12533251, 5679021, },
- { -62708672, -138673760, -66732516, },
- { -303604800, 5211943, -23613730, },
- { 244338000, -47463684, 16740709, },
- { -322043104, 10297721, -10102300, },
- },
- {
- { 351504416, -67618888, -30714384, },
- { -54721104, -251287792, -88000656, },
- { -113102056, -200841264, 31799938, },
- { -118671560, 776852, -75185552, },
- { -261045968, 42209328, 19190988, },
- { 28601798, -63060856, 69197832, },
- { -135094976, 1285269, 3442416, },
- { 2437394, 384751776, 6705518, },
- { -105192872, 9150428, -24213416, },
- { 144857440, -12532715, 753767, },
- { -12818330, 46677168, -22034792, },
- { -123130808, -83513488, -70629128, },
- { -339585888, -34845068, 849867, },
- { 117476480, 73857872, -443992, },
- { -376464608, 1576253, 6109591, },
- },
- {
- { 326040096, 49028664, 22428320, },
- { -10631655, 188114192, 68762424, },
- { -210201600, -159242352, 61620432, },
- { -114390552, 143538880, -20566988, },
- { -201035072, -18813568, -14765024, },
- { 16927540, -165660640, 29322278, },
- { -80505400, 2159295, -3675955, },
- { -32559610, 127769912, -91239064, },
- { -70205536, 60418916, -11065983, },
- { 297682560, 66001300, 1824287, },
- { -37865504, 94677184, -2071785, },
- { -28137942, 205611360, 12385075, },
- { -309382048, 12906377, 11574400, },
- { -73100344, -77344304, -18161806, },
- { -382446432, -11492796, 1540283, },
- },
- {
- { 108923056, 190376032, 10649908, },
- { -77725488, 196784128, 67276368, },
- { -352566336, 153094112, -37377488, },
- { -4843650, -76424112, 31541702, },
- { -127077344, -64507724, -8101382, },
- { -22453552, 70792872, -51737176, },
- { -34963720, -2215666, -9452686, },
- { 17081622, -231734960, 49876920, },
- { -33504504, -29388314, 15022185, },
- { 356293312, 44757856, 889595, },
- { -114809848, 67806256, 22993644, },
- { 90251760, -22021908, 66466768, },
- { -239530320, 944893, 752156, },
- { -192860672, -19954954, -18575196, },
- { -332159872, -19122806, -6287296, },
- },
- {
- { -169595904, -62544388, -30911954, },
- { -277781312, -167457552, -35618700, },
- { -434085376, 112163608, -35138740, },
- { 88578872, 6706592, 41794864, },
- { -58242976, 19576460, 13532368, },
- { -17199734, 127037080, -28944858, },
- { -3717294, 35752920, -918049, },
- { 16502875, -232059760, 46335716, },
- { -43709884, -68236832, -158377, },
- { 302439776, -23015120, -15345918, },
- { -259441792, -90892784, -12786118, },
- { 86459840, -128010424, 25755846, },
- { -164977216, 30413738, -1911797, },
- { -172616352, 74084968, 11601244, },
- { -245588384, 51877300, 4899484, },
- },
- {
- { -325007168, -33243584, -8560407, },
- { -479058496, -34588984, -41318660, },
- { -453216224, -58082452, 32525250, },
- { 79122960, 135242608, -1163399, },
- { -30136712, 55057184, -7392176, },
- { 16492674, -71891848, 38566120, },
- { -6920803, 18053896, 5795522, },
- { -21474300, 47109884, -60942900, },
- { -104778408, -209380, -16012175, },
- { 171231216, 24038932, -9402757, },
- { -397912064, -312996, -21223044, },
- { -13937706, 81356880, -24482388, },
- { -118827248, -10425496, 7212861, },
- { -55324548, -9509058, 19807852, },
- { -170254656, 3934727, 10257993, },
- },
- {
- { -299565376, 35366372, 8828842, },
- { -601780224, 43026984, 9757629, },
- { -474717888, -72621992, 25129854, },
- { 1726577, -15290620, -40343164, },
- { -41837812, 31529354, -16467441, },
- { 18072148, -81266688, 33348810, },
- { -61786864, -31823560, -5519570, },
- { -2217814, 185003568, -5108327, },
- { -201226192, 67109, 2428804, },
- { -2594697, -20058034, 2413235, },
- { -490028928, 20321100, 1631014, },
- { -87570088, -6750078, -36289788, },
- { -118403656, -31147102, 808528, },
- { 75520560, -19526532, -10375030, },
- { -139467248, -25146496, -6270653, },
- },
- {
- { -132337072, -58881316, 8665097, },
- { -655855488, 25572236, 16110422, },
- { -501111008, 30430380, -9394704, },
- { -49204756, -74647608, -5505075, },
- { -91855928, -22336514, 14292041, },
- { -12157442, 97756680, -27805618, },
- { -155968512, 5469641, -3663607, },
- { 16540993, 44654240, 46456512, },
- { -336846240, 58492624, 1365800, },
- { -176553760, 33840048, 11727945, },
- { -548054464, 10231149, 11157251, },
- { -58025544, -70031592, -23076322, },
- { -150341040, 24950002, -15178414, },
- { 161219120, -49005040, -15503221, },
- { -148966640, -8432095, -10384694, },
- },
- {
- { 70368744, 40104256, 7168301, },
- { -677316864, 14061186, 9455907, },
- { -505640608, 25171730, -6891275, },
- { -53633940, 6905234, 24492588, },
- { -189773664, -74050072, 12053289, },
- { -18511310, 73076184, -34952980, },
- { -274234208, -24685324, 5230197, },
- { -4431870, -109918952, -13494250, },
- { -492537184, -25987774, -7692287, },
- { -306285408, -42193220, 5999533, },
- { -599594048, -23166516, 4469451, },
- { 38758320, 112756312, 18760418, },
- { -191659696, 30705258, -6935836, },
- { 155024704, 18436684, 11340861, },
- { -190430256, 6300180, 2592550, },
- },
- {
- { 201780240, -15927349, 6103149, },
- { -703675648, 6285148, 19589346, },
- { -480631552, -14164802, 4212289, },
- { -26402774, 37356016, 6506339, },
- { -289732576, 36455684, -11339787, },
- { 8114267, -85212688, 19082002, },
- { -392567520, 29936458, 4489852, },
- { -11103027, -59286116, -30707406, },
- { -637229248, -15723875, 13287555, },
- { -342789920, -1901597, -1787243, },
- { -666988032, 24908662, -3487514, },
- { 87287160, 509491, 50570020, },
- { -247421792, 2945811, 11980811, },
- { 45361296, 54193360, 18922016, },
- { -257889696, 23130010, 7347616, },
- },
- {
- { 218355600, -34307660, 480499, },
- { -745239104, -65278672, 3823058, },
- { -427974176, 13306882, 4248797, },
- { 16760573, -17125108, -23188528, },
- { -328094688, 20603494, -9194451, },
- { 18897320, -29428580, 37408092, },
- { -472696032, -13945222, 2480344, },
- { 6292664, 70817032, 18086644, },
- { -753866624, -50825568, 22191022, },
- { -262117552, 39137352, 463856, },
- { -752061120, 3488587, 2753074, },
- { 26259430, -141933104, 14274324, },
- { -333270144, -49004504, 5350456, },
- { -102069360, -82435456, -2142115, },
- { -328640160, -23949274, 2633352, },
- },
- {
- { 144449952, 51578264, -16460999, },
- { -754358400, 10646150, -22409528, },
- { -357978016, -12630962, 2121714, },
- { 55548960, -74437152, -11065983, },
- { -285058048, -47072840, 8100845, },
- { -3855270, 108625088, -8880919, },
-
- { -484483040, -2369211, 765041, },
- { 8435316, 56591564, 22964116, },
- { -806595392, 50464792, -6066105, },
- { -92471184, -44889924, 1385664, },
- { -842413824, 19781008, 13151727, },
- { -65707096, 88061328, -49775988, },
- { -431250688, 22603876, -4613332, },
- { -180423520, 15318001, -21953188, },
- { -372310304, 17492864, -4533875, },
- },
- {
- { 44034688, 8211441, -15715822, },
- { -684178112, 95209224, -2731062, },
- { -287447136, 12063489, 279173, },
- { 54791972, 38640212, 32280438, },
- { -179376624, 21377126, 15723875, },
- { -22044994, 1953673, -47797080, },
- { -417241056, 28506234, 754841, },
- { -8842264, -70665632, -25028922, },
- { -744435968, 54001160, -14835891, },
- { 101118560, 45958296, 417686, },
- { -913782720, -34616364, 5817533, },
- { -69034616, 108603080, -42297912, },
- { -510893888, -4614943, -121870, },
- { -127882648, 64976412, -14567455, },
- { -367728128, 21326660, -4706211, },
- },
- {
- { -42392400, -21832930, 8923331, },
- { -564688896, -35052840, 25179782, },
- { -228388112, -6603512, -1784559, },
- { -7439420, 99392520, 24076512, },
- { -45775760, 11540040, -2239826, },
- { 4673998, -168884560, 13025562, },
- { -287786976, -36048736, 3089155, },
- { -4969814, -100874824, -13440026, },
- { -578127296, -82212656, 6925098, },
- { 243358208, -19028316, -324270, },
- { -928045824, -1262184, -3357591, },
- { 15159624, -137618272, 30216706, },
- { -554744960, 3474092, 3419331, },
- { 15227807, -86528024, 12173011, },
- { -317898976, -36552856, 7756711, },
- },
- {
- { -112510424, -23877870, 18947786, },
- { -456805216, -32255742, 6639483, },
- { -189299072, 1576253, -5324686, },
- { -75048112, -87878256, -31089658, },
- { 84136264, 11220602, -24946780, },
- { 22120156, -68032816, 49400712, },
- { -142671296, 12062953, -4116726, },
- { 10969883, 14823006, 30617748, },
- { -386223872, 31193810, 14438069, },
- { 284063232, -5093295, -1347546, },
- { -868519680, 35133368, -316217, },
- { 68075232, -55910812, 46515568, },
- { -553373760, 14804752, 6683506, },
- { 136529488, 2549063, 20943334, },
- { -251979296, 713501, 10266582, },
- },
- {
- { -156559072, 38678864, 4654134, },
- { -378490784, -996969, -17370996, },
- { -177369808, -8266739, -4779225, },
- { -63569812, -68194416, -41852308, },
- { 164008688, -47361140, -20721606, },
- { -7510824, 127864400, -22777822, },
- { -41226856, -7129109, -16905528, },
- { -351650, 98158256, -1477469, },
- { -250573216, 15700790, -3388192, },
- { 221876944, 31637802, -2272038, },
- { -758244288, -43934296, 9135932, },
- { 32112934, 97078608, -2900177, },
- { -509314400, -7141457, 8430484, },
- { 150665312, 52821120, -552440, },
- { -189582544, 6276558, -1442035, },
- },
- {
- { -151924800, -20779588, -18118856, },
- { -328674528, 40242232, -8975945, },
- { -197082096, 10024454, 5124433, },
- { 23447300, 142530640, 18077518, },
- { 121245856, 23868208, 8290361, },
- { -17070348, 82138032, -36723044, },
- { -43131672, 14383309, -12541841, },
- { -10189273, 27262842, -28318866, },
- { -222328448, -24732570, -24415816, },
- { 98813240, -37815576, -5346161, },
- { -643103680, 13499619, 10624138, },
- { -32130650, -23995982, -29850560, },
- { -433130816, -2343979, -1904281, },
- { 66393216, -25447144, -11730629, },
- { -130950328, 6957310, -9563818, },
- },
- {
- { -82459080, -81389632, -9319542, },
- { -316999200, -14724222, 9760850, },
- { -243403856, 21904334, 10335302, },
- { 80673984, 31187906, 46925204, },
- { -99811816, 84763328, 21679384, },
- { 6947647, -79027400, 22248468, },
- { -198692160, 24356222, 7185481, },
- { 5288716, -85655072, 15171972, },
- { -320020704, -14198088, -14484777, },
- { -23347980, 18650358, -4894652, },
- { -556219712, 2996277, 857383, },
- { -50790672, -43757664, -17422534, },
- { -335211456, -24299852, -10462540, },
- { -48816600, 7784092, 60666, },
- { -80444200, -19557134, -8613020, },
- },
- {
- { 28313498, 68919728, 29562796, },
- { -347980928, -34109556, 8020315, },
- { -287355328, -37504728, -2088965, },
- { 43435004, -117633784, -2157147, },
- { -463089824, -142948320, 688269, },
- { 11658152, -67379984, 22993108, },
- { -511685216, -97947264, 14437533, },
- { 6668474, -75892608, 18337362, },
- { -545768448, -23956790, 19153406, },
- { -100530152, -2284386, -539555, },
- { -496568000, 10121090, -3943854, },
- { -11123428, 53504556, 7702487, },
- { -244320288, 33477122, -5918465, },
- { -125293856, -21958020, 3791383, },
- { -58093192, 16689706, -701690, },
- },
- {
- { 121521808, 72422816, 14588393, },
- { -396235424, 28530394, -5670968, },
- { -282284032, -7220914, -12603045, },
- { -29173566, 10940355, -32751274, },
- { -828566848, 74083352, -14059575, },
- { -3834869, 36973764, -14339822, },
- { -900029696, 114861920, 3750043, },
- { -7813620, 29796872, -22095460, },
- { -871949760, 122431264, 20877836, },
- { -124764504, -6745246, 2953864, },
- { -446641152, -12294881, -1540820, },
- { 35043712, -7324530, 17977122, },
- { -208990432, -14132590, 3662533, },
- { -118506736, 918586, -7269769, },
- { -93645320, 16217797, 3842922, },
- },
- {
- { 177756880, -53181360, -43604120, },
- { -419816416, 8409546, -7485055, },
- { -214271616, 35051228, -9516574, },
- { -58577984, 59515360, -5730023, },
- { -1052510208, -350577, -2594160, },
- { -8056822, 27921046, -14477261, },
- { -1222012160, -62816044, -4646081, },
- { -2239289, 70632888, -5808944, },
- { -1199319168, -109910896, -8547522, },
- { -115676888, 8247948, 5041755, },
- { -391830400, 9975598, -1738388, },
- { 37157372, -27774480, 10413685, },
- { -266380320, -31537408, 6293738, },
- { -31960462, 46750720, -7976828, },
- { -199360032, -39514236, 302795, },
- },
- {
- { 199287552, -94219232, -37252936, },
- { -396419040, -24897388, 826781, },
- { -130629816, -32934882, -3066070, },
- { -33716568, -9487583, 13584982, },
- { -1081162496, -33790120, 10034117, },
- { 79457, -27114128, 4269735, },
- { -1362517120, -8376260, -2020782, },
- { 7618198, -1657857, 21300890, },
- { -1395718912, -11603928, -10591926, },
- { -99994888, -1045288, 5325760, },
- { -326496960, -19525996, -1824824, },
- { -1633698, 41486164, -4496294, },
- { -410237024, 55961812, -733366, },
- { 73531984, -48038136, 6064494, },
- { -351074912, 34980900, -888521, },
- },
- {
- { 136010880, 91286848, 39137352, },
- { -333237920, 21934934, 6692096, },
- { -113062864, 3367791, 2892124, },
- { 12907987, -13196824, -686121, },
- { -955450368, 55922084, 16620987, },
- { 6760816, 1138703, 12552042, },
- { -1298857728, 66461936, 10081362, },
- { -1005559, -65381212, -3132642, },
- { -1401256192, 60880624, 15841450, },
- { -90000504, -4531728, 3397856, },
- { -258166192, 19531900, 1465658, },
- { -35472136, -13742822, -16918950, },
- { -588642432, -44282724, -6445672, },
- { 120281096, -2138357, 13868986, },
- { -504519072, -33069100, 473520, },
- },
- {
- { -61631708, 124418760, 64017560, },
- { -254524592, -2734284, 2728378, },
- { -230375600, 51568600, 2342905, },
- { 46897820, -24514062, -4051228, },
- { -770130560, -32261646, 16159814, },
- { 2195265, 32971390, 1871532, },
- { -1104524928, -65782256, 21886616, },
- { -6711960, -24285356, -18641232, },
- { -1255872000, -36322540, 23219666, },
- { -76220104, 3022046, 135828, },
- { -201167680, -5025649, 1708860, },
- { -25882010, -39599060, -10532870, },
- { -739942336, 13878650, -3015604, },
- { 77534360, 47942036, 4677220, },
- { -617759616, 16445430, 190589, },
- },
- {
- { -302229856, -201453824, -6583648, },
- { -187215472, -7235410, -10152766, },
- { -488476288, -75664976, -1499481, },
- { 40810244, 9884867, 11841762, },
- { -608733248, 6152541, 4904316, },
- { -6236293, -10264972, -12664785, },
- { -889736320, 22035866, 17557826, },
- { 4205310, 55413132, 12076374, },
- { -1036020224, 34490196, 10843182, },
- { -38071128, 9797894, -2145336, },
- { -163429408, -4794794, -3781182, },
- { 13130789, 43269112, 10496363, },
- { -828692992, 8045548, 7798050, },
- { -14405857, -42557220, -9413495, },
- { -667675776, 8978092, 4118337, },
- },
- {
- { -372883168, 9153112, -65391952, },
- { -160387504, -1212255, -19085760, },
- { -823048896, 74214888, 928250, },
- { -5722507, 47615080, 8771397, },
- { -502844576, 3480534, -8838506, },
- { -2830920, -35772244, -3490735, },
- { -725349632, 5845988, -944893, },
- { 3865471, 58133992, 10559177, },
- { -809384448, -33443836, 322123, },
- { 35654672, -20708722, -2545305, },
- { -145547856, -523986, -8354249, },
- { 33141042, 9367324, 18559090, },
- { -854448832, -1685238, 14260902, },
- { -82688320, 1826435, -12265353, },
- { -659427776, -14470282, 10415833, },
- },
- {
- { -163187280, 201135472, -33787432, },
- { -216790624, 7305740, -11348914, },
- { -1140422784, -67091148, 2142115, },
- { -49104360, -39777304, -14513768, },
- { -447214016, 13685913, -13014288, },
- { 5139465, 7147900, 11028939, },
- { -622485696, 1927367, -16253230, },
- { -5451387, -9884330, -15425375, },
- { -621990720, 24934970, -7023882, },
- { 130730216, 20885352, -3863860, },
- { -151061520, 8894877, -4932770, },
- { 12105365, -50302120, 1881196, },
- { -831482048, -8508330, 7725036, },
- { -83483960, 32781338, -2046015, },
- { -613759936, 203474, 8196945, },
- },
- {
- { 185291872, -169782208, 30771830, },
- { -404893024, 25424058, 9195525, },
- { -1356832256, 19707458, 4005057, },
- { -41713260, -31788126, -19857244, },
- { -434513248, -21893058, -2569464, },
- { 3011309, 25533580, 4052839, },
- { -568107648, -28803124, -13408351, },
- { -689342, -44617196, -1606855, },
- { -497736256, -24537686, -8870718, },
- { 208048208, -13804562, -6235219, },
- { -191575936, 2828236, 2968896, },
- { -20891258, 22090090, -17161078, },
- { -767861248, -8555038, -2246268, },
- { -29853244, -30506078, 9749039, },
- { -545730880, -3384971, -1339493, },
- },
- {
- { 398036096, -5266167, 44648868, },
- { -739606272, -100307352, 17949206, },
- { -1428731648, 29643864, 17725330, },
- { 10814728, 70556112, 6454262, },
- { -470966240, -4185983, 9080098, },
- { -3702262, -11188927, -8196408, },
- { -565363712, 21619792, 3001109, },
- { 4640176, -5299453, 12935905, },
- { -451304960, 16711181, -1861868, },
- { 219822864, 5193689, -3836480, },
- { -275544704, -30096446, 4315906, },
- { -24570972, 37352256, -10452877, },
- { -670961920, 34142844, -2099702, },
- { 29928406, -4066260, 7910793, },
- { -462515904, 25297894, -3964255, },
- },
- {
- { 320299872, 114648784, 17737678, },
- { -1158839040, 133191232, 3401077, },
- { -1360001408, -29389388, 28477780, },
- { 48848812, 1812476, 23652922, },
- { -553707200, 34342020, 9373766, },
- { -3304977, -18860812, -5110474, },
- { -629009216, 16498043, 14461692, },
- { -1039919, 36833104, -3190087, },
- { -484815360, 2575370, 9782862, },
- { 135019280, 15649787, 5561983, },
- { -390961216, 37847788, -1415192, },
- { 581968, -30288646, 8622147, },
- { -562095808, -33288144, 4657355, },
- { 58433032, 15504295, -4299263, },
- { -378714656, -26498338, 1365800, },
- },
- {
- { 29576218, -145640736, -14351096, },
- { -1534202624, -69030864, -7241315, },
- { -1168657408, 18329310, 17115982, },
- { 31003222, -59195388, 4426501, },
- { -649110784, -39743480, 20401, },
- { 2608119, 14380624, 6142340, },
- { -744678592, -49221400, 11759620, },
- { -3774740, 17121888, -10470057, },
- { -568391680, -36477156, 13024488, },
- { -33743412, -50315540, 11559368, },
- { -508062944, -21304648, -3766150, },
- { 20067698, -9561134, 10832444, },
- { -469737888, 12621298, 6405407, },
- { 50327888, 2709051, -6794102, },
- { -315902368, 10422812, 4415227, },
- },
- {
- { -246708288, 73049880, -39247412, },
- { -1751132288, -13207024, 7250442, },
- { -862555584, -51076288, -4444218, },
- { -14945949, 21788370, -14555107, },
- { -702395712, 1078574, -4603131, },
- { 3284039, 15173046, 5415417, },
- { -849413504, 41333156, -40802, },
- { 2523830, -29244432, 7238094, },
- { -631552384, 39072392, 281857, },
- { -217172336, 63978908, 4052839, },
- { -601198784, 3279745, 1770063, },
- { 14478335, 20039780, 1262184, },
- { -408027264, 255014, 2056753, },
- { 17275970, -4272419, 2461016, },
- { -285526752, 3602941, 2639258, },
- },
- {
- { -311022208, 84281752, -26998702, },
- { -1774035712, 41514616, 28337658, },
- { -463400128, 103843184, -11556683, },
- { -38556460, 16538308, -10299332, },
- { -673888960, 36447628, 4330401, },
- { -1606318, -12928388, -4128537, },
- { -860121984, 13616120, -5515275, },
- { 2370822, -30808338, 6453725, },
- { -589480512, 21443698, -10248329, },
- { -313834336, -20128902, -7716983, },
- { -663360384, -3179350, 8325257, },
- { -5477694, -12163884, -4982162, },
- { -367748000, 2401424, -1614371, },
- { -24133958, -15887621, 5986111, },
- { -279149792, -5903970, -234076, },
- },
- {
- { -153765200, -139129024, 20012936, },
- { -1633565056, -29656750, 29936996, },
- { -41030360, -112123344, -2557653, },
- { -22300008, -26103200, 1022739, },
- { -567753856, -29372744, 10521059, },
- { -3102040, -8038568, -5382668, },
- { -733468224, -61831424, 1477469, },
- { -3411815, 11391864, -9660992, },
- { -406942240, -78030968, -4046933, },
- { -254887520, -47447576, -7445326, },
- { -699962112, 10571525, 8303246, },
- { -17091822, -501974, -6423661, },
- { -326485152, -11907797, -1275068, },
- { -50830400, 18388366, -1570347, },
- { -272977376, -2227478, -886374, },
- },
- {
- { 61715460, 32014150, 39172788, },
- { -1375184640, 31143344, 11145977, },
- { 300763136, 64285460, 5029407, },
- { 12705050, 14372571, 7395934, },
- { -418000160, 20066088, 2936684, },
- { 612570, 13727252, 1901060, },
- { -501899136, 63888176, 6962142, },
- { -515933, 32912334, -1219234, },
- { -136055440, 77131168, 5029407, },
- { -62121332, 72037336, 844498, },
- { -712420736, -4226785, 4772783, },
- { -8580271, 16182900, -2963528, },
- { -264470672, 20142322, 1314260, },
- { -42459508, 6663642, -7353521, },
- { -242160992, 13138842, 776852, },
- },
- {
- { 173917728, 60976724, 8347806, },
- { -1027720192, -77440408, -3391414, },
- { 483799072, -339839, 655519, },
- { 30398168, 9349607, 5104569, },
- { -260935904, -33547452, -3558381, },
- { 3087008, 1705102, 5864778, },
- { -247261808, -51369956, 4529043, },
- { 3295314, 5176510, 9279277, },
- { 119048440, -45323180, 4776004, },
- { 158658240, -48439180, 2936684, },
- { -688588480, -17838610, 6984154, },
- { 9170292, -17559974, 4941360, },
- { -172061760, -25860534, 3860102, },
- { -2390149, -26675506, -3151432, },
- { -172681840, -21907018, 2871723, },
- },
- {
- { 148426560, -44091060, -21153788, },
- { -607247168, 129044440, 7869991, },
- { 504355872, -35570920, -10821707, },
- { 16774532, -11637751, 798864, },
- { -122338920, 43845172, 3470334, },
- { 70330, -16952772, -434865, },
- { -42919072, 41804528, 5733782, },
- { -1134945, -27432492, -3331284, },
- { 271430656, 12314208, 1133335, },
- { 284485760, 14280229, 1416802, },
- { -601181056, 36340256, 16134582, },
- { 14782741, -4701916, 8718784, },
- { -46436648, 27926414, 4838281, },
- { 38227892, 19090592, 4918275, },
- { -63385664, 26146688, 3585761, },
- },
- {
- { 50165220, -2446521, -14534706, },
- { -131955888, -102776416, 23400592, },
- { 429276064, 26648124, -16449725, },
- { -10225243, 10250476, 235149, },
- { -5843840, -23798414, 13560285, },
- { -3149285, 965831, -6698002, },
- { 91384016, -18622442, 12086575, },
- { -2464238, -18131742, -6780680, },
- { 302248128, 11066520, 1255204, },
- { 248285616, 21774410, 6012418, },
- { -411309696, -33869576, 17572322, },
- { 2075543, 25417080, 1172526, },
- { 112084152, -22398254, 80531, },
- { 45845556, 5286568, 8261370, },
- { 76741400, -22457310, -71941, },
- },
- {
- { -42478836, 3827353, 5222144, },
- { 373993952, 17577690, -7036230, },
- { 342384608, -4961761, -11625940, },
- { -25247966, -19390166, -7270306, },
- { 114021184, -14768782, 3609383, },
- { -331249, 19904490, -118112, },
- { 199094288, -22322018, 2608656, },
- { 2378338, 17207250, 6906308, },
- { 266570896, -30332670, -670015, },
- { 78420200, -62676456, 9542880, },
- { -89402432, 24081882, -7893613, },
- { -12401181, -14681809, -10343892, },
- { 293430016, 18987514, -13280576, },
- { 15437186, -26183194, 3886946, },
- { 228244768, 18317498, -9505836, },
- },
- {
- { -84415968, 16539382, 6498823, },
- { 865165312, -25497610, -74502112, },
- { 288153120, -2291902, -5586142, },
- { -14707042, -15683610, -13768591, },
- { 269447456, 15268609, -30878668, },
- { 3339874, -1758252, 7729868, },
- { 343504512, 29538100, -36380520, },
- { 854162, 28677496, 2340757, },
- { 247785248, 36953360, -18047990, },
- { -113531552, 79529376, -3664681, },
- { 336332992, -61252676, -49850076, },
- { -10072235, -23138600, -8646306, },
- { 461719200, -34638376, -24414204, },
- { -24495272, 27974196, -6864969, },
- { 356392640, -25852482, -16559783, },
- },
- {
- { -67956584, -5862094, -7258495, },
- { 1228776704, 177195312, -76141720, },
- { 257796816, 5892159, -2051384, },
- { 14698452, 70069168, 11866995, },
- { 447683776, 69246144, -48252348, },
- { 3221, -25773562, -967441, },
- { 530176128, 71143448, -61755188, },
- { -2878165, 2015413, -8126078, },
- { 289620928, 16216186, -37874096, },
- { -202235520, -27891518, -27511950, },
- { 735616256, 161502048, -48373680, },
- { 6163815, 36712844, 10152229, },
- { 549467520, 55591908, -11610370, },
- { -37738804, 3149822, -14293651, },
- { 412312032, 35161288, -6841883, },
- },
- {
- { -14148159, -41238128, -6071473, },
- { 1281082496, -211401504, 48896056, },
- { 215368448, -6750078, 6689412, },
- { 24906516, 30822296, 27560268, },
- { 560569984, -152013392, 4828080, },
- { -3439732, -5625334, -8611946, },
- { 662074560, -195179424, 1111323, },
- { 1498407, -29228326, 4475893, },
- { 355079968, -117149528, -9849434, },
- { -138740864, -89582280, -22839026, },
- { 905934208, -173703504, 37728068, },
- { 11938935, 25028386, 14175540, },
- { 489035168, -18500572, 24653112, },
- { -13491566, -49535468, -1341640, },
- { 355331232, -2408940, 16406238, },
- },
- {
- { 35444756, 40083320, 15843061, },
- { 894766784, -193518336, 137400832, },
- { 135316704, -25804700, 14344654, },
- { -4183298, -105033960, -19880330, },
- { 490654912, 5720360, 78753056, },
- { 1813550, 32169842, 6186364, },
- { 589552960, 32260036, 101505648, },
- { 810138, -33732136, 2275796, },
- { 345121568, 67742912, 59600724, },
- { 6849399, 137312256, 30303142, },
- { 704745088, -125802280, 102349072, },
- { -2047089, -48783312, -11823508, },
- { 274665856, -114824880, 32450088, },
- { 19188840, 24214488, 20062866, },
- { 192652368, -84133040, 18580028, },
- },
- {
- { 39803072, 51194400, 12788802, },
- { 204740016, 647619328, -38720204, },
- { 30276298, 68772624, -49929, },
- { -16612934, -90500864, -22324704, },
- { 214110032, 314792640, 22679038, },
- { 1224066, 38911328, 2881923, },
- { 262058496, 396546272, 36606544, },
- { -1625645, -15795816, -4760971, },
- { 187617600, 208635008, 42795056, },
- { 94519344, 41808284, 52547316, },
- { 215489776, 484327904, -23882166, },
- { -7446937, -47923244, -10260140, },
- { 5176510, 190813584, -29558502, },
- { 20531018, 61265560, 6198712, },
- { 1622424, 120248880, -21247204, },
- },
- {
- { 6014565, -55379308, -21743808, },
- { -328660576, -106819056, -240462336, },
- { -49900540, -34383896, -26082800, },
- { 251792, 29870960, 22744000, },
- { -92435216, -211497072, -125123672, },
- { -1044214, 21117280, -3644280, },
- { -116375896, -290485824, -160718208, },
- { 306553, -1584306, 1057636, },
- { -39702140, -239503488, -88157424, },
- { 55978456, -186956704, -25972204, },
- { -207131248, -121513752, -184537568, },
- { 48318, 9571335, 11224897, },
- { -152331216, 24865176, -69481296, },
- { -513249, -18034568, -19814832, },
- { -104797200, 22180822, -42998528, },
- },
-};
-
-const Word16 hrtfShCoeffsRe_fx[BINAURAL_CHANNELS][HRTF_SH_CHANNELS][HRTF_NUM_BINS] /* Q14 */=
-{
-{
-{
-15262, 9658, 3901, -1418, -6208, 15041, 14881, 14660, 14204, 13703, 13419, 13245, 13095, 12861, 12511, 12433, 12732, 13082, 13228, 13103, 12857, 12674, 12535, 12386, 12244, 12154, 12223, 12430, 12577, 12569, 12440, 12235, 11999, 11774, 11585, 11429, 11326, 11309, 11365, 11424, 11437, 11421, 11438, 11534, 11703, 11911, 12128, 12307, 12428, 12507, 12560, 7803, 353, 233, 185, 159, 141, 129, 120, 114,
-},
-{
-2512, 7073, 3663, -4932, -11832, 9125, 9258, 9001, 9549, 10692, 11890, 12599, 12894, 13032, 13105, 13144, 13280, 13430, 13430, 13294, 13274, 13495, 13890, 14466, 15013, 15123, 14698, 13966, 13231, 12756, 12530, 12357, 12159, 11993, 11874, 11774, 11758, 11938, 12322, 12777, 13151, 13382, 13513, 13613, 13702, 13762, 13802, 13836, 13861, 13868, 13854, 8509, 224, 69, 10, -28, -57, -78, -93, -103,
-},
-{
-1909, 491, -1490, -1812, -1939, 2695, 2572, 2313, 2118, 1834, 2422, 3343, 4702, 6558, 8164, 8525, 7404, 5240, 2686, 530, -697, -985, -667, -226, 2, -88, -459, -927, -1247, -1175, -592, 364, 1309, 1920, 2178, 2250, 2242, 2154, 2001, 1848, 1750, 1670, 1488, 1132, 617, -25, -757, -1460, -2044, -2505, -2833, -1911, -67, -26, -8, 1, 8, 12, 16, 18,
-},
-{
-1352, 749, -1645, -2697, -3639, 3522, 4737, 6008, 7651, 8786, 8842, 8532, 7930, 6997, 6499, 6176, 5536, 4673, 3558, 2162, 759, -365, -1149, -1511, -1268, -292, 1348, 3286, 5013, 6292, 7162, 7818, 8446, 9053, 9451, 9438, 9056, 8541, 8111, 7870, 7802, 7835, 7891, 7901, 7800, 7533, 7097, 6592, 6120, 5726, 5439, 3221, 144, 100, 82, 71, 64, 60, 56, 54,
-},
-{
-57, -757, -2771, -4035, -4237, 2024, 3174, 4548, 5873, 6766, 6152, 5490, 5138, 4788, 4745, 4906, 4987, 4705, 3868, 2359, 537, -1152, -2449, -3071, -2949, -2363, -1674, -1022, -389, 245, 847, 1472, 2246, 3043, 3445, 3217, 2621, 2163, 2162, 2601, 3254, 3888, 4376, 4728, 5014, 5258, 5411, 5446, 5386, 5256, 5093, 3070, 89, 31, 7, -8, -19, -26, -32, -36,
-},
-{
--227, 335, -2902, -2520, -2019, 593, 199, -974, -1944, -2169, -1372, -472, 171, 1206, 2475, 2936, 2001, -88, -2808, -5241, -6657, -7056, -6750, -5825, -4122, -1873, 115, 1229, 1485, 1330, 1220, 1326, 1481, 1383, 984, 499, 99, -181, -337, -313, -61, 337, 681, 803, 661, 271, -292, -881, -1388, -1800, -2101, -1437, -88, -60, -48, -41, -36, -33, -30, -28,
-},
-{
--181, 1118, 2818, 3684, 3341, -2320, -2914, -2841, -2539, -2909, -3164, -3287, -3378, -3519, -3097, -1559, 673, 2638, 3664, 3564, 2365, 323, -2103, -4328, -5612, -5607, -4829, -4102, -4010, -4659, -5684, -6646, -7402, -8060, -8598, -8842, -8709, -8308, -7828, -7397, -7045, -6717, -6318, -5790, -5143, -4430, -3746, -3199, -2822, -2574, -2418, -1452, -44, -12, -1, 5, 10, 13, 16, 18,
-},
-{
-208, -2005, -2657, -802, -194, -102, -968, -1233, -646, -223, 744, 1312, 1694, 2070, 2354, 2369, 2478, 3045, 3905, 4811, 5328, 5086, 4068, 2061, -1074, -4579, -7300, -8665, -8731, -7878, -6590, -5212, -3825, -2394, -1030, 56, 773, 1236, 1633, 2036, 2393, 2634, 2747, 2794, 2872, 3044, 3287, 3523, 3706, 3825, 3872, 2400, 105, 58, 38, 25, 17, 10, 6, 3,
-},
-{
-482, 4180, 6357, 5316, 2943, 2790, 3261, 4049, 3526, 1759, 136, -746, -1202, -1670, -2389, -3083, -3580, -3766, -3721, -3504, -3243, -3066, -2918, -3002, -3503, -3982, -3623, -2223, -366, 1255, 2487, 3507, 4413, 5157, 5639, 5817, 5677, 5265, 4686, 4057, 3483, 3033, 2731, 2550, 2440, 2349, 2225, 2057, 1876, 1711, 1600, 884, 71, 81, 83, 86, 88, 90, 91, 92,
-},
-{
--673, -4039, -7432, -9477, -7969, 1394, 1273, 1722, 1589, 743, 341, 266, 539, 698, 553, 268, -124, -490, -812, -1179, -1505, -1515, -1122, -772, -964, -1612, -2162, -2151, -1583, -741, 264, 1455, 2771, 3973, 4716, 4876, 4665, 4453, 4496, 4789, 5164, 5472, 5666, 5811, 5978, 6177, 6329, 6365, 6295, 6135, 5908, 3542, 61, -23, -57, -79, -95, -107, -117, -123,
-},
-{
--25, 563, -1623, -937, 97, 143, 46, -388, 38, 771, 1168, 1016, 925, 1244, 1570, 1830, 2133, 2599, 3152, 3747, 4305, 4670, 4517, 3350, 1238, -1011, -2726, -3794, -4328, -4495, -4472, -4379, -4176, -3806, -3362, -3028, -2910, -2898, -2744, -2281, -1517, -604, 262, 937, 1394, 1727, 2068, 2457, 2851, 3224, 3538, 2357, 106, 60, 40, 29, 21, 15, 10, 7,
-},
-{
--464, -2594, -6346, -3429, -2268, 408, 1246, 1126, 1423, 370, -768, -1616, -2586, -3550, -3776, -2915, -929, 1628, 3769, 4801, 4500, 3094, 888, -1968, -4831, -6457, -6194, -4598, -2800, -1518, -815, -597, -860, -1539, -2336, -2878, -3022, -2910, -2795, -2844, -3057, -3281, -3324, -3088, -2606, -1980, -1341, -824, -474, -262, -174, -76, -24, -40, -47, -52, -57, -60, -63, -65,
-},
-{
--205, -401, 437, 1642, 494, -311, -32, 875, 1027, 701, 615, 704, 534, -104, -1146, -2140, -2371, -1570, 320, 2713, 4714, 5885, 6067, 5127, 3396, 1693, 561, 43, 10, 282, 725, 1147, 1259, 823, -236, -1691, -3113, -4191, -4872, -5275, -5531, -5700, -5772, -5722, -5552, -5275, -4867, -4361, -3849, -3371, -2970, -1636, -72, -50, -39, -32, -27, -24, -22, -21,
-},
-{
--585, -463, 924, 2364, 1444, -871, -1456, -1290, -1372, -1161, -722, -1056, -1376, -1142, -1080, -1076, -469, 674, 1657, 2449, 2920, 3102, 3447, 4242, 5372, 6064, 5466, 3614, 1237, -1079, -3078, -4664, -5730, -6180, -5973, -5235, -4293, -3464, -2894, -2547, -2265, -1879, -1315, -667, -121, 182, 242, 175, 84, 27, 23, 16, -14, -7, -3, -1, 0, 2, 3, 4,
-},
-{
-108, -471, -1814, 888, 813, -1341, -518, 44, 1291, 1663, 1231, 744, 898, 1175, 1132, 992, 1153, 1783, 2823, 3915, 4657, 5033, 5245, 5052, 3755, 1132, -2032, -4707, -6378, -7010, -6834, -6122, -4960, -3218, -1003, 1201, 2935, 4075, 4749, 5071, 5039, 4652, 3991, 3191, 2419, 1815, 1415, 1186, 1070, 1013, 977, 562, 29, 21, 18, 15, 13, 11, 10, 9,
-},
-{
-1, 232, -515, -204, 275, -374, -1326, -2166, -2161, -2251, -1547, -696, -539, -756, -795, -979, -1389, -1454, -1000, -231, 661, 1631, 2559, 3165, 3164, 2711, 2425, 2692, 3254, 3766, 4170, 4506, 4702, 4810, 5123, 5773, 6496, 6846, 6578, 5791, 4779, 3827, 3101, 2583, 2096, 1493, 771, 59, -528, -962, -1225, -872, -36, -12, 0, 7, 12, 16, 19, 21,
-},
-},
-{
-{
-15262, 9658, 3901, -1418, -6208, 15041, 14881, 14660, 14204, 13703, 13419, 13245, 13095, 12861, 12511, 12433, 12732, 13082, 13228, 13103, 12857, 12674, 12535, 12386, 12244, 12154, 12223, 12430, 12577, 12569, 12440, 12235, 11999, 11774, 11585, 11429, 11326, 11309, 11365, 11424, 11437, 11421, 11438, 11534, 11703, 11911, 12128, 12307, 12428, 12507, 12560, 7803, 353, 233, 185, 159, 141, 129, 120, 114,
-},
-{
--2512, -7073, -3663, 4932, 11832, -9125, -9258, -9001, -9549, -10692, -11890, -12599, -12894, -13032, -13105, -13144, -13280, -13430, -13430, -13294, -13274, -13495, -13890, -14466, -15013, -15123, -14698, -13966, -13231, -12756, -12530, -12357, -12159, -11993, -11874, -11774, -11758, -11938, -12322, -12777, -13151, -13382, -13513, -13613, -13702, -13762, -13802, -13836, -13861, -13868, -13854, -8509, -224, -69, -10, 28, 57, 78, 93, 103,
-},
-{
-1909, 491, -1490, -1812, -1939, 2695, 2572, 2313, 2118, 1834, 2422, 3343, 4702, 6558, 8164, 8525, 7404, 5240, 2686, 530, -697, -985, -667, -226, 2, -88, -459, -927, -1247, -1175, -592, 364, 1309, 1920, 2178, 2250, 2242, 2154, 2001, 1848, 1750, 1670, 1488, 1132, 617, -25, -757, -1460, -2044, -2505, -2833, -1911, -67, -26, -8, 1, 8, 12, 16, 18,
-},
-{
-1352, 749, -1645, -2697, -3639, 3522, 4737, 6008, 7651, 8786, 8842, 8532, 7930, 6997, 6499, 6176, 5536, 4673, 3558, 2162, 759, -365, -1149, -1511, -1268, -292, 1348, 3286, 5013, 6292, 7162, 7818, 8446, 9053, 9451, 9438, 9056, 8541, 8111, 7870, 7802, 7835, 7891, 7901, 7800, 7533, 7097, 6592, 6120, 5726, 5439, 3221, 144, 100, 82, 71, 64, 60, 56, 54,
-},
-{
--57, 757, 2771, 4035, 4237, -2024, -3174, -4548, -5873, -6766, -6152, -5490, -5138, -4788, -4745, -4906, -4987, -4705, -3868, -2359, -537, 1152, 2449, 3071, 2949, 2363, 1674, 1022, 389, -245, -847, -1472, -2246, -3043, -3445, -3217, -2621, -2163, -2162, -2601, -3254, -3888, -4376, -4728, -5014, -5258, -5411, -5446, -5386, -5256, -5093, -3070, -89, -31, -7, 8, 19, 26, 32, 36,
-},
-{
-227, -335, 2902, 2520, 2019, -593, -199, 974, 1944, 2169, 1372, 472, -171, -1206, -2475, -2936, -2001, 88, 2808, 5241, 6657, 7056, 6750, 5825, 4122, 1873, -115, -1229, -1485, -1330, -1220, -1326, -1481, -1383, -984, -499, -99, 181, 337, 313, 61, -337, -681, -803, -661, -271, 292, 881, 1388, 1800, 2101, 1437, 88, 60, 48, 41, 36, 33, 30, 28,
-},
-{
--181, 1118, 2818, 3684, 3341, -2320, -2914, -2841, -2539, -2909, -3164, -3287, -3378, -3519, -3097, -1559, 673, 2638, 3664, 3564, 2365, 323, -2103, -4328, -5612, -5607, -4829, -4102, -4010, -4659, -5684, -6646, -7402, -8060, -8598, -8842, -8709, -8308, -7828, -7397, -7045, -6717, -6318, -5790, -5143, -4430, -3746, -3199, -2822, -2574, -2418, -1452, -44, -12, -1, 5, 10, 13, 16, 18,
-},
-{
-208, -2005, -2657, -802, -194, -102, -968, -1233, -646, -223, 744, 1312, 1694, 2070, 2354, 2369, 2478, 3045, 3905, 4811, 5328, 5086, 4068, 2061, -1074, -4579, -7300, -8665, -8731, -7878, -6590, -5212, -3825, -2394, -1030, 56, 773, 1236, 1633, 2036, 2393, 2634, 2747, 2794, 2872, 3044, 3287, 3523, 3706, 3825, 3872, 2400, 105, 58, 38, 25, 17, 10, 6, 3,
-},
-{
-482, 4180, 6357, 5316, 2943, 2790, 3261, 4049, 3526, 1759, 136, -746, -1202, -1670, -2389, -3083, -3580, -3766, -3721, -3504, -3243, -3066, -2918, -3002, -3503, -3982, -3623, -2223, -366, 1255, 2487, 3507, 4413, 5157, 5639, 5817, 5677, 5265, 4686, 4057, 3483, 3033, 2731, 2550, 2440, 2349, 2225, 2057, 1876, 1711, 1600, 884, 71, 81, 83, 86, 88, 90, 91, 92,
-},
-{
-673, 4039, 7432, 9477, 7969, -1394, -1273, -1722, -1589, -743, -341, -266, -539, -698, -553, -268, 124, 490, 812, 1179, 1505, 1515, 1122, 772, 964, 1612, 2162, 2151, 1583, 741, -264, -1455, -2771, -3973, -4716, -4876, -4665, -4453, -4496, -4789, -5164, -5472, -5666, -5811, -5978, -6177, -6329, -6365, -6295, -6135, -5908, -3542, -61, 23, 57, 79, 95, 107, 117, 123,
-},
-{
-25, -563, 1623, 937, -97, -143, -46, 388, -38, -771, -1168, -1016, -925, -1244, -1570, -1830, -2133, -2599, -3152, -3747, -4305, -4670, -4517, -3350, -1238, 1011, 2726, 3794, 4328, 4495, 4472, 4379, 4176, 3806, 3362, 3028, 2910, 2898, 2744, 2281, 1517, 604, -262, -937, -1394, -1727, -2068, -2457, -2851, -3224, -3538, -2357, -106, -60, -40, -29, -21, -15, -10, -7,
-},
-{
-464, 2594, 6346, 3429, 2268, -408, -1246, -1126, -1423, -370, 768, 1616, 2586, 3550, 3776, 2915, 929, -1628, -3769, -4801, -4500, -3094, -888, 1968, 4831, 6457, 6194, 4598, 2800, 1518, 815, 597, 860, 1539, 2336, 2878, 3022, 2910, 2795, 2844, 3057, 3281, 3324, 3088, 2606, 1980, 1341, 824, 474, 262, 174, 76, 24, 40, 47, 52, 57, 60, 63, 65,
-},
-{
--205, -401, 437, 1642, 494, -311, -32, 875, 1027, 701, 615, 704, 534, -104, -1146, -2140, -2371, -1570, 320, 2713, 4714, 5885, 6067, 5127, 3396, 1693, 561, 43, 10, 282, 725, 1147, 1259, 823, -236, -1691, -3113, -4191, -4872, -5275, -5531, -5700, -5772, -5722, -5552, -5275, -4867, -4361, -3849, -3371, -2970, -1636, -72, -50, -39, -32, -27, -24, -22, -21,
-},
-{
--585, -463, 924, 2364, 1444, -871, -1456, -1290, -1372, -1161, -722, -1056, -1376, -1142, -1080, -1076, -469, 674, 1657, 2449, 2920, 3102, 3447, 4242, 5372, 6064, 5466, 3614, 1237, -1079, -3078, -4664, -5730, -6180, -5973, -5235, -4293, -3464, -2894, -2547, -2265, -1879, -1315, -667, -121, 182, 242, 175, 84, 27, 23, 16, -14, -7, -3, -1, 0, 2, 3, 4,
-},
-{
-108, -471, -1814, 888, 813, -1341, -518, 44, 1291, 1663, 1231, 744, 898, 1175, 1132, 992, 1153, 1783, 2823, 3915, 4657, 5033, 5245, 5052, 3755, 1132, -2032, -4707, -6378, -7010, -6834, -6122, -4960, -3218, -1003, 1201, 2935, 4075, 4749, 5071, 5039, 4652, 3991, 3191, 2419, 1815, 1415, 1186, 1070, 1013, 977, 562, 29, 21, 18, 15, 13, 11, 10, 9,
-},
-{
-1, 232, -515, -204, 275, -374, -1326, -2166, -2161, -2251, -1547, -696, -539, -756, -795, -979, -1389, -1454, -1000, -231, 661, 1631, 2559, 3165, 3164, 2711, 2425, 2692, 3254, 3766, 4170, 4506, 4702, 4810, 5123, 5773, 6496, 6846, 6578, 5791, 4779, 3827, 3101, 2583, 2096, 1493, 771, 59, -528, -962, -1225, -872, -36, -12, 0, 7, 12, 16, 19, 21,
-}
-}
-};
-
-const Word16 hrtfShCoeffsIm_fx[2][16][60] /* Q14 */ =
-{
-{
-{
-973,5300,9536,10289,7948,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-9151,18404,17553,15119,10744,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
--429,-1502,-365,506,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-630,132,845,554,-945,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-142,618,178,151,-1950,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
--144,-942,-1322,573,141,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-399,946,954,317,716,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
--1391,-1978,495,375,-308,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-2594,4388,3089,1617,1339,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-120,2049,4760,7098,6418,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-81,-957,-1575,249,-254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-172,-152,4254,6571,4169,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-106,894,1364,326,-1185,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-278,1694,2518,1214,519,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-13,-146,1965,2096,179,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-41,30,104,1304,1210,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-},
-{
-{
-973,5300,9536,10289,7948,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
--9151,-18404,-17553,-15119,-10744,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
--429,-1502,-365,506,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-630,132,845,554,-945,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
--142,-618,-178,-151,1950,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-144,942,1322,-573,-141,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-399,946,954,317,716,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
--1391,-1978,495,375,-308,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-2594,4388,3089,1617,1339,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
--120,-2049,-4760,-7098,-6418,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
--81,957,1575,-249,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
--172,152,-4254,-6571,-4169,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-106,894,1364,326,-1185,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-278,1694,2518,1214,519,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-13,-146,1965,2096,179,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-{
-41,30,104,1304,1210,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-},
-},
-};
-
-
-/* Binaural rendering data set based on BRIRs */
-/* Tables derived from Mozart IIS BRIRs.*/
-const Word32 FASTCONV_BRIR_latency_s_fx = 937500;
-
-const Word32 leftBRIRReal_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS_MAX] /* Q29 */=
-{
- {
- {
- 955630, -56401512, 71553080, -7202124, 14854681, -289910, -25734370, -24148454, -9604084, 7688529,
- 3944928, 16365973, 24145770, 3041911, -18577344, 10116259, 1116692, 18020072, -8924405, -17782776,
- 2440078, -3891777, -11002096, -6689949, -1865090, -3699041, 1784022, 14807973, -2104534, 9245454,
- 3911105, -4662724, -8611409, 6744173, 8320963, 872415, -13594645, -4185446, 14039174, 11704860,
- 9465571, -18884972, -12775917, -2767570, 3891777, 3892851, 1280437, -3608310, -660351, -7697119,
- -4881767, -1100049, 6172405, 3729105, -2437931, 4495757, 11756399, 6304475, 1001264, 3349001,
- -1078037, -3046743, -1759326, -3722663, -3763465, -4314295, -9758166, -10887205, -4013110, 4864588,
- 3716757, 4247723, 7022272, 863825, 7347616, 4841502, 3462818, 1126355, 208306, -2952253,
- -451508, -1532230, -2476049, -4361003, -3837017, -731218, -1354525, -2653753, -1578937, 2069101,
- 2981244, 1188095, -620086, -981937, -645856, 2829847,
- },
- {
- -1311576, -44833016, 52809308, 20124070, -7298223, 7428683, -20112794, -26019448, -15743739, 7221451,
- 3786014, 9812927, 23059680, 8296266, -4772246, -9333501, -3495030, 22775674, 6451578, -15588047,
- -3861713, -3238405, -14569603, 4369056, -18870476, 1163399, -4538707, 4942434, 7320772, 16517907,
- 7077033, -9692131, -2573222, 6464463, 15781320, -7569880, -9329743, -1761474, 1338956, 8577587,
- 4078608, -13250511, -4842576, 1410897, -4496831, -6114423, 10885595, 2915746, -3623879, -9056475,
- -1188632, 920734, -630286, 769336, 3739843, 3173444, 8007967, 3762391, 6295885, 2049236,
- 2841121, -3790309, -4130685, 468151, -3692061, -9145059, -7194070, -9555228, -2115808, -1827509,
- 1188632, 5782100, 3993783, 4580046, 6547141, 7119445, 4317516, 6382859, -9127, -4071629,
- -1392106, -4250944, -3717831, -4915590, -4575751, -470836, -1989107, -2849711, -287763, 2491618,
- 2900177, 2003065, -734439, 3603478, -714575, -537,
- },
- {
- 846645, -51560008, 65578780, -3467649, 11985643, -14496, -34191696, -10616085, 6696928, -16768626,
- 3975529, 12719009, 17405892, 421981, 7388955, 8446590, -11999602, 5041218, 5821828, -4824322,
- 4554813, 7254737, -16798690, -12226161, -17508434, -12820477, -18455474, 12651900, 17714592, 31745178,
- -1173063, 2865280, 8354249, -6429566, -4991289, -2551211, 3945464, -6769942, -3623879, -2477123,
- 17372068, -1060320, -9668508, -6466610, 227633, 5158793, 355945, -9684614, -14144938, -3158412,
- 2430415, 4786204, 4989142, 4218195, 7206955, -497142, -4730907, 8289287, 16455630, 9026948,
- -95026, -4500052, -7610145, -1175747, -2637110, -12382391, -5749888, -10532870, -6753836, -8295193,
- -1273458, 5917391, 7514582, 8136279, 8282308, 6990596, 10880226, 4264366, 3420405, -731755,
- -3424700, -5625871, -5663452, -2662343, -3533148, -6499360, -3908957, 668404, 4457639, 2295123,
- -1757715, 917512, -1787243, -1447404, -3212636, -1024887,
- },
- {
- -3221, -14889041, 41400264, -24458766, 17313014, -4783520, -15139760, -12379169, -14835891, -15014132,
- 22133578, 12795781, 29772714, 780073, -1830193, -7704635, -15730318, 7419019, 479426, 2147484,
- 6044630, -15578920, -20714628, 21677236, 10593000, -19315542, -18246094, 18170396, 14378477, -641561,
- -7690676, 4871567, 3986267, -6784438, -1041530, 6685117, 1952063, -1824824, 2739652, -4158065,
- 3786014, 2329483, -10746008, 3197066, -2314451, -6073621, -227096, 6054294, 3076270, -6460168,
- 2093797, 4477504, -7090991, 421444, 3288334, -1559610, 5998996, 1897839, 899796, 1254667,
- -2653216, -1816234, 543313, -1127429, -1208496, -3417183, -1496259, -2777770, -1161252, -2347737,
- 3996467, 3113851, 4970888, 3305514, 434329, 954557, -2626373, 940598, -2228014, -49929,
- -1999307, -625992, 574452, -1304596, 1120450, -1971390, -1712618, -198105, 354872, 1163936,
- -645856, -1143535, 1695975, 1965484, 1514513, 1279900,
- },
- {
- -83215, -37740416, 48824116, 17595944, -16422881, 11187853, -15471009, -16932908, -20108500, -14439143,
- 20119774, 12538620, 27537720, 1609539, -1927904, -1859184, -14825153, 7864622, 14259291, -16841104,
- 2458869, -14470282, -9630927, 11508365, 10256382, -27176942, 4635881, 15280420, 11556146, 3828963,
- -15209016, 304943, 2483565, -3546569, 2515777, -1784022, -4479114, 17565342, -913217, -1464584,
- 460635, -5113696, -7748121, 4641249, 942745, -1860258, -14445049, 2402497, 9538585, 4505421,
- -926639, -2628520, -1157494, 3940096, -2921115, 1206886, -111132, 4532264, 3532611, -2791192,
- -3420942, -2048699, 3889630, 3206193, -3846680, -3086471, -6444062, -245350, -1256278, -1326608,
- 247497, 4518306, 4786741, 3178813, 3710315, -198642, 2398202, -1359894, 564788, -6035503,
- -1075352, -654983, 771484, -1928977, -659278, -391916, -413391, -2914672, 226023, 1316408,
- 229781, -285078, -147103, 1852742, 3003256, 2175938,
- },
- {
- 429497, -18229988, 51657184, -36218924, 24843702, -6630893, -25108378, -11571179, -11758547, 6728603,
- -10676215, 15838229, 37663640, 20347408, 4346507, 2557116, -40708236, -12735652, 8860518, 13119514,
- -22288732, -19586662, 4494684, 21735756, -1844689, 17537962, -7939784, -13899588, -1504849, 1108102,
- -1074816, 20643224, 9296994, -2589329, -23380728, 2994129, 3588445, 5702643, -377420, -6110128,
- -19216758, 12066711, 5181341, -503585, -7817378, 3932043, 3316789, 1403917, 3202972, 7062537,
- 688269, 1873143, 3183108, 1159104, -3831111, -8195335, -12437688, -2912525, 756451, 1042066,
- -3373697, 324807, -927176, 6636798, 3493419, 4437238, -3259880, 1663763, 2587181, 5145908,
- 2611340, 5506148, -2988224, -1916092, -2033667, -3062312, -4067334, -4774930, -4763119, -2268280,
- -1965484, 3067144, 4863514, 4336843, 3530463, -683974, -5199595, -2287070, 1170916, 1711545,
- 2158221, 2997350, 2338073, -262530, -448287, -668941,
- },
- {
- -1526861, -33169496, 43344808, 21916682, -18523120, 12035035, -13185550, -20113868, -16994112, -9774272,
- 5463736, 755377, 28490128, 36409512, 6133750, -6323266, -24343874, -16369194, 4869419, 15558519,
- -10058813, -26201448, -10751377, 19796578, 17725866, 1058173, -11373073, 4848481, 3506841, -11630235,
- 690416, 24461986, 4437775, -12823699, -14641544, 2276333, 2867965, 4917738, -603980, -12462384,
- -5184026, 11302743, 4664335, -10024991, -815507, 6053757, 1127429, 366683, -1631551, 3871913,
- 10836202, -1217623, 7317551, -2661269, -6754910, -8462696, -3441880, -6065568, 546535, -7093139,
- -736050, -612033, 8959839, 4692789, 5025649, 719407, -38118, -3905199, 2468533, 2549063,
- 3538516, 4129611, 681826, 526670, -5638219, -4138738, -446140, -4017942, -3112778, -2551748,
- -449361, 1946694, 3329137, 1299228, 1998234, -455267, -2357400, -1557463, 437550, 3346853,
- 1443109, 2259153, 788663, -2113661, -382789, -316754,
- },
- {
- 750009, -24122146, 57381300, -35054988, 20176682, -5215164, -15900506, -12277164, -19737522, -1633161,
- -4049617, 36446020, 29082834, 4054986, -6757594, -2123325, -16394427, 26415122, -11003706, -23857470,
- -13677860, -4743255, -7586523, -6018860, 37881612, 16131360, -12305618, -16450798, 5511517, 1006633,
- 5833103, 6218039, 2221035, 11902965, -6686191, -13548474, 2235531, 1147293, -7121056, -7100655,
- -5648419, -7016366, 4626217, 15558519, -5508833, -541703, 132607, 14230837, -674847, 2589865,
- 1608465, 7885023, 5064840, 289910, -8781598, -9659381, -10472741, -14414984, -2544231, 1030255,
- -1374390, 5420786, 2848637, 1905892, 4624069, 10380936, 6924561, -4703526, 132607, 4153770,
- 5338645, 3786551, -556735, -7385733, -4364224, -3168075, -7790534, -7292318, -1952063, -1578401,
- 1205275, 3726958, 5583995, 4036196, 1322313, -370441, -1847373, -2174327, 1073205, 4316442,
- 3537979, 3555696, 641024, -2540473, -2753074, -1714229,
- },
- {
- -1874216, -29564408, 40481676, 19535122, -17163226, 17681844, -19085760, -21491480, -17167522, -4613869,
- -2410014, 11465952, 29816200, 23623930, -7425999, 9899363, -14923938, -2356327, 3783866, -13794898,
- -18100066, -3794604, -10102300, -13139379, 35639640, 26870390, -9924059, -32071594, 8880919, 3996467,
- 19249506, 3389803, -80531, 4794794, -18520972, -2269890, 7998840, -6386617, -5887327, -9145596,
- -1483374, 4617090, -599148, 6725382, 22012, 477278, 1571421, 2169495, 9607305, 1828046,
- -7843147, 13845901, 9213779, -2003602, -7400766, -10539313, -8092256, -17858474, -3020973, 2206003,
- -2686502, 4949950, 4315906, 6871411, 6625524, 4543539, 4168266, -3417183, -1662689, 3568044,
- 6945499, 1603633, 1685238, -4859219, -7092065, -3569118, -3990562, -7015292, -2710124, 1207423,
- 2381023, 3413962, -9127, 4974109, 352187, -2240899, -2711735, -326954, 3468186, 7126425,
- 1637993, 1350230, 1037235, -3871913, -4494147, 10737,
- },
- {
- 1593433, -34591668, 53500796, 3851512, -4761508, -40943924, 20738250, -3905736, -347355, -7060390,
- -15420543, 23711440, 4525822, -11809013, 9135932, -4775467, 15676094, -107374, 6274947, -3478924,
- 18503256, -14930380, -4929012, -3094524, -33978024, 1962800, -1926293, 9983651, 33286, 16101832,
- -16172162, 6118181, 2520072, -1665911, 13992467, 5567888, -4168803, 739808, 11567958, 9804337,
- -6375342, -18939196, -12025908, -11606075, 11212012, -2457258, 15775415, 4415764, -2222646, -12043088,
- -5688148, -2718714, 2859375, 4567698, 2790655, 5479842, 1500017, -1793686, -2020782, -4501126,
- 3966939, 5257040, 4871030, 2639258, 1095754, -3595961, -7502771, -1962800, -6242198, -2481954,
- -3056406, -1401770, -1094680, 2836289, 4232691, 3797288, 5218922, 3291556, 3126736, 165893,
- 1950452, -2179159, -3988414, 1372779, -190589, -3409667, -1212791, -3323768, -4752382, -676457,
- 1213328, -1684164, 2152316, 1478006, 927713, -963683,
- },
- {
- 849330, -40848896, 61627412, 4379256, -12181064, -35042100, 6587406, 8983461, 9312026, -20839182,
- -4743792, 25668336, 2234457, -5073967, -1600949, 10459319, 185220, -7437810, 13970992, -10514080,
- 15386183, -9263708, -25761214, 358630, -23902030, 6389838, 11165841, 9736691, 12190191, 14259291,
- -1418950, -238371, -5638755, -8369818, 6783364, -3712462, -2825552, 941135, -2219424, -9336185,
- 158914, -8436390, -1947231, 8473434, 12742631, 5592585, 14663555, -4271882, -12898324, -5235029,
- -19659140, -2596308, 7956427, 13619878, 8919036, 6744710, -5397700, 2310156, -12255689, -849867,
- -6550899, 8961449, 3752728, 2012729, -4468914, -8303783, -725313, 590558, 746251, 1833414,
- 111132, 913217, -3850438, 985158, 5361730, 5450314, 1447941, -2041720, 2993592, -551366,
- 578747, -4333085, -5713380, -2801393, -599148, -2465311, -1998770, 2749316, 119722, 3831648,
- 3362423, 2167348, 2656437, -754841, -2534031, -912681,
- },
- {
- -3398393, -11048803, 41757284, -7365332, -16236050, -30749818, 31039728, -4917738, -5291937, -3270081,
- -28123982, 23676544, 1997697, 29744260, 16588774, -10045392, -18864570, 2202245, -12756053, -10382010,
- 6517613, 5865852, -4013647, 9783399, -17023102, 21246666, -3074660, 12327630, -27824946, -957241,
- 7638063, 8919036, -299037, 4124242, -7197292, -12458090, -6103686, -2087891, 14046154, -6683506,
- -2073932, 16040629, 9929428, -4022237, 10180146, 3019362, 1205812, -3857418, -3636227, 86973,
- -11580306, -8217346, -6092948, -5848672, -3990025, -8492761, 2646774, 7793755, 7849590, 16182900,
- 4663798, -1902134, -3831648, -1664300, -577673, -1951526, 468688, 7399692, 3216931, -386547,
- 571768, -2568927, 1585380, -3343632, -6716255, -4909685, -6404333, -3952444, -1707786, 2229088,
- 362388, 2727304, 2890513, 6395743, 2614025, 4796405, 5669357, 3487514, -2095944, 576063,
- -2179696, -5226975, -5710696, -4687957, -4366371, -1383516,
- },
- {
- 29528, -44947908, 61915712, 12115566, -12628814, -20714628, -6650757, 19307488, -13297219, -1597191,
- -44937704, 32720672, 11861626, 6560563, 32029718, 4384088, -17361868, -21849572, 9412958, -19053548,
- 9121437, -1537598, 5192079, 945430, -12446278, 6073084, 8098161, 302258, -4421132, -11719355,
- 10740639, 8796630, 12267500, -589484, -17199196, -15394773, -7385197, 3603478, -1011465, -1729798,
- 13524852, 15502684, 5885179, -9271761, 7295002, 3152506, 4947266, 2002529, -1640678, -151398,
- -10290205, -12147241, -14680198, -4065187, -3605088, -4036733, 9809705, 2471754, 6360847, 8842801,
- 4236449, 2621004, -3433290, 884226, 2703682, -3403225, 892279, 5160403, 6687264, -4771172,
- -1549410, 726923, -1240172, -3084860, -9038222, -4702453, -4214437, -4740034, -378494, 1117228,
- 3194382, 3299609, 4878546, 2765422, 5793374, 4018479, 3326452, 1392643, 455267, -763967,
- -2488397, -1197222, -5405217, -5071820, -4126390, -3290482,
- },
- {
- -2760053, -14543833, 43907452, -5901285, -7776039, -38376068, 32312650, -13619878, -1338956, 1401233,
- -22995254, 16763257, 22550188, 7672422, -13998372, 12149926, -7812546, -13275207, 1649804, 12042551,
- -3478924, 13375065, -11092827, -5349382, -1777580, 1404454, -7504919, -7371775, 3707631, -451508,
- -7431904, 1879585, 3214246, 3359738, -2794413, 20146618, -2887292, 5125507, 10362682, 4229469,
- -4213363, -17395154, -14405857, 8089571, -9727564, 3231963, 11468100, 4889821, -397284, 3156264,
- -12018392, -2040110, -10309532, -8879308, 6991670, 8815957, 5019206, 3175055, 333397, 2032593,
- -4130685, 1874216, 4569845, 6032819, -1329292, -3257733, -4106526, -6415608, -2876018, 1657857,
- -106300, 4438849, -1909650, -804233, -1865626, -286689, -1013075, -1095217, 4155381, 4021700,
- 1359894, 2034204, 1367410, -533113, -1873680, 522375, -2135673, -1770063, -1871532, -2578054,
- 445603, -1636919, -27380, 708133, 33823, 284005,
- },
- {
- 1373853, -38042672, 56327424, 1605781, -472983, -27903328, 2189360, 6993818, -18913962, 11134166,
- -17874044, 8638253, 10264435, 18843096, -15911780, 16057272, -3711926, -7901129, -5448703, 840203,
- 13704167, 6318434, -12747463, -9862319, -13860933, 3795141, 2682744, 3577171, 3865471, 1516660,
- -9586904, 13465259, -2474975, -10101763, -1691680, 13561896, -151934, 5605469, 4309463, 4927401,
- -8294119, -8853538, -7393250, -279173, 3113315, 945967, 9955197, 3187940, 4620848, -8117488,
- -16232292, -2612951, 4219269, -4006131, 4005594, 4014721, 3100430, 3945464, 1385127, -4629438,
- -903554, 2616709, 1367410, 723702, 3362423, -3689377, 3052111, 1139777, -8177618, 196495,
- -340376, -777926, -2470143, 80531, 991064, -806380, -2093797, 520228, 4050691, 2697776,
- 2427194, 162135, -255014, 2372970, 1640141, -1500554, -2754148, -4945118, -3174518, 1598802,
- -158914, 828929, 1123134, -500364, -751619, 294205,
- },
- },
- {
- {
- -3608846, -103232224, -7816304, 22453552, 30351998, -5068599, -5549098, 1506997, -5217849, -359167,
- 4461934, 3011846, 1022202, 3081102, 667867, 15144592, -5418638, 7482370, -7442642, -4961761,
- 5898601, 858457, -6945499, 1809255, 13787382, 11055783, 330176, 11804181, 1428077, 8237211,
- 4001836, 638340, -8912594, 4115653, 3964792, 5600101, 625455, -2366527, 6468221, 4332012,
- 11641509, 2997887, 2764348, -4411469, 341987, 5669357, 3309272, -2096481, 297427, -2401424,
- 758062, 124554, 2091649, 779000, -2553358, -3812857, 329102, -1327682, -3158412, 618475,
- -2338073, -1026497, 916976, -1852742, 1625645, 653909, -960462, -1508070, -1023276, 3594351,
- -966368, -1376537, 3215857, -1653562, 413391, 278636, 3443490, 334471, 1876901, 516470,
- 456877, 654446, 695785, 30065, -652835, 1331977, 68183, -554588, 25770, 1450088,
- 2750390, 1630477, -969589, -1425929, -1313723, 2123861,
- },
- {
- 2412161, -5752572, 53693532, 23626078, 6101001, 3279208, -9045201, -1270774, 469762, 8352638,
- 3594888, -4044786, 4073777, 2970507, 311385, -16589848, -15625628, 6380174, -3463354, -7988103,
- 3226057, -6164352, -12742094, 17654464, -7660074, -5208722, -7278896, 6918119, 4780836, 2203855,
- 2295660, -1457605, 7328288, -4587562, 7152731, -6226629, -4775467, 3340948, -4161287, -4369056,
- -967978, -1444183, 4031901, 3473555, -2749853, -3055332, 7412040, -628676, -2860985, -756451,
- 6953552, 401579, -3544959, -1493575, -3676492, -3024731, 4941897, -1450625, 1922535, 514322,
- 5224291, 376883, -2319282, -1053341, -144955, -3727495, -2296734, -3489124, 208843, -3084324,
- -1426466, 2228551, -1041530, -1101122, 1356136, 644245, -3024194, 1533840, 1090385, 158914,
- 792421, -2693481, 829466, 1578401, -579821, -52613, -966905, 751082, 1000191, -1114544,
- -420370, 1970853, -809064, 2061584, -1107565, 290984,
- },
- {
- -1280974, -55959664, 35691180, 19917374, 28632400, 94489, -12852153, -3586298, 2353105, 15569,
- 13412109, -1483374, 1015760, -3226057, 3391414, -3170223, -7722351, 12865038, 12896176, 2004676,
- -784368, 3453691, -7835631, -825171, -2155000, 5752035, -5617817, 3215320, -7728794, 6078453,
- -9371619, 923418, 2565169, -2400887, -3504157, -6050535, -1368484, -3797288, 3176128, -5833640,
- 8746164, -2472828, -4480725, -1622424, 1515587, 1688996, -5327907, -1743757, 2561411, 2560874,
- 2510409, 2752537, 976568, -973347, 7300371, 1187559, -6031745, 1124208, 3889630, 1371705,
- -175020, 419296, -636729, 5130876, 4334159, -4732517, -173409, -1327145, 2886218, -3702799,
- -3788161, -1008780, 1260573, 3202435, 2545842, -1496796, 2226941, -30065, 2617783, -444529,
- -1396401, -1016834, -689342, -257698, 285078, 377957, 67646, -436476, 1125281, 748935,
- -1943473, 155693, -1414655, 117575, 618475, 1708860,
- },
- {
- 952409, -80412528, -21235928, -17369384, 28725278, 4229469, -633508, 4485557, -4653597, -29805462,
- -121870, -535260, 10148471, -5505075, -11087995, -8692477, 2212982, 11460583, -1889786, -3393561,
- 2461553, -10461467, -10151155, 11399917, 4350265, -6658273, -9059697, 716723, -2457258, 1728188,
- -3469797, -1705639, 3383897, -4119948, -3297998, 6304475, 5325760, 2892661, 4305705, -4735739,
- -484794, -3512210, -8844948, 5364414, 2762738, 3695283, 2447595, 2234457, 3473555, -155156,
- 6830072, 9108015, -867047, 3804267, 4305168, -2059974, 971736, 214748, 343597, 39192,
- -3382824, 344134, 4984847, 580894, 564251, -3164854, -1694365, -622233, 3389266, 326418,
- 3908957, 574452, 1131724, 648540, -1051193, 1800665, -17717, 2429341, -1606855, 1079647,
- 845572, 1224603, 449361, -1131724, 814970, -1110786, 1224066, 1028645, -1724429, -1891933,
- -1699733, -1691143, -196495, -357556, 158377, 1564442,
- },
- {
- 398358, -17474074, 38814156, 13526999, -12416214, -2067490, -3679713, -862752, -7592429, -2185065,
- 21000780, -145492, 13270912, 5106716, -8755828, -14613089, -9073655, 1485522, 2933463, -12185896,
- -3099893, -9373229, 10138807, 4716411, -3070902, -14459007, 11177116, 5273683, 7058779, 4327717,
- -9452686, 734976, 3411278, -6149857, -4815195, -869731, 4038880, 10506027, -6701760, -2192581,
- 5222144, 4726075, 1091995, -528281, -5803038, 3283503, -9820980, -2783139, 1427540, 2941516,
- 3887482, 543850, 4137664, 7333657, -113817, -934692, -4135517, 1575179, 645319, 812286,
- 3167539, -1389422, 1125818, 2633889, -405874, 2649995, -1934883, 1466195, -1291711, -3158949,
- -2770791, -884763, -1438814, -1924145, 1796907, -384400, 2800856, -481036, 2009508, -2243047,
- -489626, -635118, 1427540, -2147, 394600, -902480, 1029182, -1564979, -497679, 1222992,
- 462783, 642635, -530428, -392453, 500901, 68183,
- },
- {
- 955630, -110530448, -32946158, -21823802, 40638444, 4989142, -5651640, 5108327, -7684234, 4206921,
- 4596689, 6036040, -12902619, -6771016, -2412698, 2203855, -11133629, 7967701, 9437654, 2867965,
- -13264470, -4049617, -12266963, -961536, -7042673, 10784663, -6791954, -15152108, -2068564, 6988449,
- -3672734, 7232188, -3449933, 3567507, -6725919, 9970767, 9443022, 597000, -3349001, -3728569,
- -12716861, 9658308, 1828582, 1523640, -1343251, 2868501, -3893388, -4117800, 424665, 4472672,
- -4081830, -368293, 7478612, 5977521, 1452773, 1789928, 2285996, 4026532, 1463510, -1265942,
- -4681515, 3081102, -1369021, 4303557, 1200980, -1339493, -3838627, 2719251, 1122597, 1344862,
- 160524, 28991, -4490389, 781147, -324270, -584116, 840203, -1279363, -2629594, 261456,
- -114354, 18790, -105764, -318901, 499827, -6979, -2842195, 831076, 812823, -526134,
- 758599, 1946694, 1960116, -156766, 475131, 1781875,
- },
- {
- 2129767, 15836618, 60158532, 10005126, -14842870, -1238561, -5565204, -1147293, -878858, -3143379,
- 6581501, 3985193, 8755291, 3813931, -14707042, -8743480, -13142600, -15482283, -4939750, 6463389,
- -1216550, -5111548, -6667400, 5066988, -6051609, -13630616, 1966021, 14614163, -6454799, -8797167,
- -2161979, 8516383, -5114769, -3762928, 2614025, 4486094, -4921496, -576599, 1013612, -2888903,
- -224949, 3601330, -3576634, -9708774, 1582159, 6767795, 4714264, 1410360, -6336151, -1443646,
- 6234145, -2426120, 7276749, 1488743, 363998, -115427, 1169305, -6497749, 2225330, -3146064,
- -439697, -2156611, 1025423, -1451699, 4110821, 1692217, 2428804, -2771328, -1611, 2053531,
- 775242, 1799591, 1985886, 3544422, -579821, 2254858, 2692408, -363462, 541703, -2326799,
- -111669, 2452426, 1621350, -216359, 803696, -1451699, -1671279, -1619740, -1224066, 273804,
- -1092532, 131533, 259846, -919123, -448824, 597000,
- },
- {
- -485331, -113216408, -30855582, -19718732, 30333744, -2593087, -2568927, -1943473, -8646843, 5921686,
- 131533, 11369315, -2492155, 7175280, -11780558, -9247601, -10125922, 12890271, -8807367, -6951405,
- -5269388, -8079371, 4155918, 3914326, 9517111, -2924336, -7107097, -10012643, 287763, -3171297,
- 3751654, -882616, -1438277, 4760971, -4773320, -2667712, 1594507, 2123325, -5879810, -7968238,
- -6306086, -7832947, -5340255, 2979097, -8580808, 1196148, 685047, 6550362, -9331353, 0,
- 3220152, -2218351, -5305895, -801548, -5117991, -2455111, 1791538, 1368484, 4099010, -1621887,
- -1116692, 2785286, -3098819, -932008, -492311, 504659, 2691871, -1851131, -482647, -1763084,
- 791348, 3633006, 861141, -1556389, 1386201, -661962, 230854, 690416, 750009, 1259499,
- 949725, -861141, -634581, -817118, -542240, 629213, 316754, 310848, 672699, 1017370,
- 327491, 1838246, 1989107, 780073, 60666, -483721,
- },
- {
- 2094870, 25104620, 65843996, 9574556, -13515188, 1946694, -14127221, -3082176, -1728188, -1318555,
- 157840, 3252901, 3789235, 5878737, -6725382, -1892470, -14003741, -8594766, 6660958, 7762617,
- -2854543, 8069170, 3131568, -26506390, -1184874, 6294275, 3324305, -12418361, 10960757, 3600256,
- 3589519, 1232119, -2177549, -1875290, -5760088, 332323, 8134668, -659814, -2993055, -3530463,
- -1300838, 1289027, -295816, 1957431, -3899830, 3555696, 5394479, 279710, 1972464, -1059246,
- -5532992, 7728794, 240518, -504122, 473520, -3379066, 2658585, -1239098, 1132798, 955630,
- -2047626, 1286880, -3072512, 208843, 912144, -1613834, 1692754, 154619, 1129040, 344134,
- 1941862, -3163780, -184147, 1832340, 1668058, 2367601, -3221, -1956358, 855772, 249108,
- 435402, 478889, -2753074, 2719251, -1070521, 549219, 2039036, 1250372, 772020, 2095944,
- -1063004, 806917, 1325534, -1868311, -587874, 2816962,
- },
- {
- -3263638, -94205272, -3779034, 4383551, 24987046, 4616553, 45722076, -16037408, -1414655, 2871186,
- -7677254, 15254650, 3180960, -12287901, -14781667, -11457899, 8864812, 3423089, 2820720, -13726715,
- 12467216, -9880035, 4190278, 17049410, -3636227, 6756521, -4368519, 9407589, 1548336, 17828946,
- -8489540, 4153770, 8993125, 8058970, 4044249, -3546032, -4835060, 69256, 370441, -1218697,
- -10812043, -16675747, -4291746, -8531416, 2841658, 331786, 10377178, -2595234, -600759, -2967286,
- 5894843, 149787, 8717710, 2946348, -8047158, -1001801, -967978, -1201517, 2507187, 181462,
- 5743445, 5478768, 3320010, 450435, -602369, 981937, -3692598, -2219424, -2064269, 824634,
- -409096, 2080375, 2808909, 470299, 693100, -738734, 480499, 429497, 1414655, -1028645,
- 438624, 1852742, 627602, 3433826, 3024731, 1548873, 1783485, 1993939, -695248, 970663,
- 1431298, -1937567, -661425, -1043677, 1513439, 1635846,
- },
- {
- -1304596, -43919260, 44362180, 4839355, 748935, -7063611, 12983149, -17871358, 6551436, 280784,
- -2444373, 11738682, 20938, 7121056, 2958696, 2675228, -1970316, -11294690, 12103755, 896038,
- 21547850, -3113315, -5194763, 18633178, -6969122, 5951214, 3994857, 2076080, -8838506, -5643587,
- -9209484, -2832531, -6557878, -3186329, 13431436, 3382287, -7245610, -4873178, -3807489, -594316,
- 10167798, -6660421, -4045322, 4366371, 12227235, 779000, 3129958, -5634997, -6073621, 1481764,
- -5748277, 179315, -1297080, 4764193, 3081639, 762357, -10152766, 2643552, -4519380, 3145527,
- -4590783, 3320010, -1587527, 309775, -2617783, -4082367, 1216550, 4020626, 2005213, 884763,
- -2051921, -2290291, -2777233, 1588064, -1257352, -693637, -876710, -4562866, 1669669, 780610,
- 967978, -1428614, 703301, 1538135, 415538, -2833605, -3796214, 1183800, -1520955, 323733,
- 1447404, 792421, 2884071, 923418, -320512, 849867,
- },
- {
- 10470057, -51960516, -23640036, -14092861, 12464532, 8300025, 23744726, -7282654, 7803419, 15278272,
- -36216236, -8474507, 2005750, 7727720, -19069118, -992137, 9869835, 23678154, 4810900, -497142,
- 11349451, 9425306, -5792837, 9421011, -13159780, 13979582, -8884677, 11370389, -8437463, 11059541,
- -3805878, -6633040, -6331856, 13300977, 5643050, -3421478, 7133941, -371515, 3093450, -8210904,
- -4999879, 4933307, 4554813, -8357470, 701153, 1920924, 4473209, -3684545, -2863133, 4970888,
- 1325534, 74088, -1527398, 443455, 3381750, 34360, 1807108, -626528, 1298154, 7126425,
- -159988, -5899675, -4446902, 1396938, 2831994, 693100, -2563022, 1972464, 406948, 164283,
- 1173600, -2821794, 671626, -1520418, -1697586, -1013075, -1515050, -212601, -1009854, 1401233,
- -241592, 2456721, 969052, 1566589, -2265595, -145492, 641024, 834297, -762894, 1591285,
- -1413581, -1607392, -31139, 592706, -797790, 770410,
- },
- {
- 77309, -32812476, 46692200, 12045773, 5170067, -11101954, -21934398, -9675488, -14898168, 9487046,
- -16544751, 18429704, -6990060, 12071542, 15193447, -3026341, -6673306, -8230231, 6424734, -6864969,
- 9753871, -3529390, 12613782, -3230889, -3999152, 11515881, 10923712, 16062104, 6564858, -9119826,
- 463320, -10068477, -229244, -10175851, -8902930, -3481608, -610422, 5247377, -5215701, -9019968,
- -1610076, 8303246, 7896298, -828929, 4471061, 3604551, 5678484, 3043521, 389768, 725313,
- 1233193, 1495722, -10142565, -4060892, -2551211, -1545651, 599148, -5753109, -304943, 2065342,
- -1120987, 308701, -1837709, 2193655, 4184372, -583042, 2738579, -969052, -15569, -3516505,
- 523449, -669478, -10201, 2818036, -4332549, -4156455, -1438814, -1984275, -395674, -928250,
- 1796907, 1537598, 711891, -3792993, -1609002, -2175938, -1064615, -867047, -301185, -632434,
- -1578401, 2728378, -613643, -936840, 918586, 437550,
- },
- {
- 8372502, -59508920, -21007222, -10066330, 21373368, 4319664, 28239946, -10634339, 30606474, 25651692,
- -13760538, 15524696, 1267015, 4730907, 8428336, 23728084, 726923, -3373697, 3645890, 4316979,
- -8088497, 6185290, -8622147, 5866389, 2389613, -7499013, -5548561, 3797825, 6227703, 1354525,
- -4554276, -1582159, -6886443, -1650878, -9174050, 9041980, -6833293, 3572339, 7062000, -7361037,
- -6268505, -4708895, -4014721, 8443906, -1185948, 3361886, -15032, 339302, 1267015, 3125663,
- -2495376, 9060234, -3109020, -8138963, -2886218, 3447785, 4442607, 1665374, -285615, -658741,
- -3150896, 1282585, 126702, 482647, -5046587, -2418604, 459025, 2187749, 4265977, 1268626,
- -629750, 6334540, -1290101, 921271, -1443646, -1814624, -503585, -1933272, 622770, -887985,
- -2561948, -1293859, -1552631, -4182761, -2559264, 1872606, -1008244, 730681, 384400, -1610613,
- 213675, -1551020, -632434, 1200443, 927713, -287226,
- },
- {
- -2407866, -59391880, 27748174, -278636, 9949292, -9721658, -4369056, -9340480, -14596983, 15402290,
- -5167383, 3488050, -8710194, 18867792, 18862422, 13421773, -16690780, -4814122, -5119064, -5949604,
- 12754979, 15676631, -7359427, 5538361, -1888175, 2858838, 3172370, 1533303, 2752537, 913217,
- -23975582, 5137318, 611496, 3141769, 3770981, 5995775, 4731980, 2910914, -7021198, 330712,
- -2050847, 294205, 932008, -1668058, 1144072, 332860, 3322157, -4852240, 3135863, 2798171,
- -3762391, 2465848, 6757594, -224949, 5913633, 4366908, 2710124, 6220724, 5842766, 181999,
- -948114, -2986613, -315680, 2483028, 6344741, -2269890, 775778, 1420560, -3023120, 1044751,
- -439160, 471910, 1524713, 738198, 195958, -3796214, -5374615, 918586, 2571612, -47245,
- 2205466, 1269163, -1514513, 2489471, 3140158, 2640868, 3201361, -284005, -2253247, 1406065,
- -174483, -70867, 563714, 111669, -555661, 1799591,
- },
- },
- {
- {
- 6043019, -64106680, -70795560, 69796440, -4854924, -8654896, 48855, 7141457, -9306657, -4489315,
- 3810173, 2935073, -6767258, 7310035, 10820633, 2839510, 1719061, -774168, 3064996, -44560,
- -2487323, 1902671, -6157910, 7858180, 17987324, 7971460, -4834523, 12410308, 7736847, -726386,
- 3311957, 9917079, -5487895, -3129958, 7228430, 2113124, 1827509, -1424855, 2461553, 5774047,
- 6043556, 10124849, 2005750, -1198833, 165893, 4068945, 830002, -404264, -2221035, 2538863,
- 4090420, -660888, -657130, -2649458, 677531, -4536023, -4317516, -808528, -1492501, -2125472,
- -2452963, 1731946, 1036698, -3786551, 3583613, -1129576, 1057099, 2189897, -917512, 3117610,
- -889595, -3753265, 2110440, 533650, -2965675, 2774549, 1460826, -371515, 1029182, -67646,
- -44560, 2303176, 1882269, 1563905, -365072, 1437740, 365609, -1625645, 1003949, 2059437,
- 1287953, 1652489, -1361505, -1446867, -78920, 737661,
- },
- {
- -825707, 57592292, -3376918, 17819282, 11344082, -1757179, -5005248, 8939974, -115964, 6402186,
- 4958540, -7959112, -4693326, 5594732, 718870, -17723720, -758599, -6763500, -8768713, 729608,
- 6565395, -543313, -11820287, 4440996, 7493108, -13039521, 758599, 3424163, 10334228, -13929116,
- 6255620, -9290551, 19190988, -10530723, -109522, 797253, -6204081, 1204738, -2641405, -2754148,
- -2234457, 3625489, -3183108, 12203076, -3811784, -471910, 2471217, -1829119, -663572, 3871913,
- 3146064, -661962, -506806, 196495, -4462471, -6027987, 4858682, -3416647, -537945, 3772055,
- 2447058, 1280974, -2297808, -481036, -1796907, 1364189, -669478, -1149441, -1443646, -3357054,
- -140123, -1262184, -468688, -2331630, -155156, -925565, -1554778, -652298, 352724, 2183454,
- -57445, -2463701, 2887829, 1765768, -218506, 220117, 329102, 1591285, 443992, -2396055,
- -977105, 1652489, 506269, 107911, 932008, -241055,
- },
- {
- -46171, 19914690, -42325828, 44809392, 13641353, -7347079, -1909113, -3744675, -10588168, 18205292,
- -451508, -391916, 579284, -772020, -6265821, -5505075, 10188736, 4351339, 12099460, 6803765,
- -367757, -8901857, 290447, -556735, 7306813, -1165547, -9127879, 4189204, -8742943, -57445,
- 345208, -5793374, 2067490, 4901632, -13394929, -3638911, 3013993, -7365332, 2857764, -2527588,
- 237297, 4389994, 312996, -268972, -7610682, 839666, -1571958, -2833605, 7699803, 2855617,
- 3915400, -5616744, 3824669, 2375654, 2799245, 255014, -2192044, 750009, -143345, -140660,
- -111669, 2486249, 1446330, 5308043, 2725694, 1006096, -2287607, 2057289, 1274532, -2216203,
- -1680943, -2455648, -1782411, 3464428, 1005022, -3627100, 2006824, -523986, 1997697, 690953,
- -1156420, -1107028, 1838783, -1882806, 1266479, 2899640, -943282, -185220, -70867, 1502702,
- -2643016, -1220308, 1071058, -820339, 1829119, 1391033,
- },
- {
- -3240553, -138196480, 21638582, 15132780, 93416, 257698, 2153389, 6693170, -527744, -13149579,
- -18536006, 5398774, -9016210, 2876554, -4941897, -17526150, 13278965, -2603824, 8862128, -10551661,
- -793495, -3103114, -2103997, 5532992, 1026497, -2782065, 646393, -6059662, -3284039, -1673964,
- -574989, -5737540, -1957431, 478352, 625992, 998043, 2784213, 6206765, 5434744, -3370476,
- 1595580, -10020159, 798864, 86973, 6475200, 4000225, 2434173, 281857, -1123134, 3989488,
- 9838696, 5201743, -465467, 3144990, 3256122, 832150, -1445257, -2656974, 3899830, 1217623,
- -4595078, 348429, 4885526, -1164473, 3299609, -2920041, -1319629, -2956548, 4422206, 1916092,
- 2520609, 1669669, 277562, -643171, 378494, 1731409, 1341640, 926102, -850404, 33823,
- 1830193, 1064615, -468151, 581968, -901406, 290447, 1409286, 139050, -792421, -2236067,
- -1218697, -2063732, 469225, -682900, -1683627, 2077690,
- },
- {
- -635655, 28030030, -4787278, 275952, 2809446, -3928285, 2180770, 959388, -4092567, 7539278,
- 4516695, 2870112, 6573985, 5997385, -5480379, -5060009, -8486319, -9501541, -5504001, -3234110,
- -5799280, -3948149, 14774687, 1249299, -12250857, -4397510, 2717104, 2151779, 10481331, -1338956,
- 6920803, -9919764, 9705552, -14175003, 1381369, -3617973, 10951630, 1991254, -3288871, -2028835,
- 3107409, 6665253, 5602248, -5981279, -5427765, 2438468, -6322729, -2621004, 2780455, 144418,
- -119185, 599685, 10971494, 4103305, 941135, -839666, -5658620, 72478, 634581, 3029026,
- 2640331, -1249299, 451508, 1375463, 3263638, -2381023, 145492, 866510, 252329, -921271,
- -3776887, -3224447, -1943473, -1416266, -244813, 1593433, 995359, 1723893, 697932, 181999,
- -2101850, -10201, 127238, 307090, 360777, 922344, -667867, 49929, -710817, 1384590,
- -231391, 962073, -985158, -265751, -4832, -576599,
- },
- {
- -5352066, -178341008, 18553184, 36218924, -9794673, 3006477, 1192390, 6875169, -1848447, -2981244,
- 9152038, 1577327, -21088826, -14695767, 2327872, -9474698, -1450088, 17266306, 5862631, 907849,
- -8510478, 609349, -13677323, -3146064, -1947768, 954020, -5451387, -7602092, -2932389, -390305,
- 2736431, 4852776, -1911797, -3580929, 3652870, 324807, 13499082, -3600793, 222265, -6336151,
- -645319, -4564477, 7472170, -1990717, 1088774, 2469606, -2935073, -482110, 1149978, 1436667,
- -6501507, 1053878, 8319889, 2819646, 2171643, 1250372, 7151658, 3038689, 1942936, -1793149,
- -2361695, 952409, -472983, 4170413, 213138, -3434900, 464930, -1746978, 2704219, -1803349,
- 2143189, -4041564, -1073205, 750009, -1751273, -84289, 1692754, -1024887, -1114007, -1117765,
- 1991791, 25770, -485331, -2016487, -611496, 698469, -2740189, 3419868, -798327, -162672,
- 282931, 1008244, 1990181, -191126, 748935, 2534031,
- },
- {
- 505732, 43532176, 31410706, -14201846, 9379672, -2557653, -5898064, 2621004, 5476084, -2522220,
- -1848447, 6633040, 7226283, -6944425, -7693360, -8854612, -17990008, -7288560, -8233989, 5216238,
- 5412733, -938450, -9285182, 14983530, -18221936, -11333345, 7590281, 2913599, -5219459, -6527277,
- -5544266, 12575664, -6220724, -4394826, 8633421, 2891050, -3405372, -3515968, -1630477, 5967320,
- -1745904, -2461553, -2923262, -2750390, 1257889, 1235877, 7416335, 1130650, -8098698, 1614908,
- 1065689, 4435091, 674847, 3321084, 805843, 1072668, 1128503, -5778342, 124554, -1205275,
- 1373316, -1698660, -4395362, 976031, 1460289, 2221035, 2492692, 1068373, -1417876, 3992709,
- -676457, -1443646, 3129421, 3114388, -489089, 5249524, -995896, 255014, 2528125, -1417876,
- -15032, 1646046, 2120103, -882079, 708670, -2216740, -1103807, -1293322, 171262, -553514,
- -1584306, -696858, -925565, 518617, -553514, 1559073,
- },
- {
- -2411624, -167409232, 1087701, 38270844, -11051488, -12924093, -3639985, 1688996, 2785823, 4868883,
- -2125472, -4271882, 6618008, 6861211, -16528108, -9155797, 7074348, -2963528, 4593468, -4566624,
- -9003862, -5295695, 6873559, 2376728, -3350075, -3825742, 237297, -7787313, -5430450, -610422,
- 256087, -4984847, 5137318, 2801393, -5122822, -1644436, -3279745, 6568616, -4901632, -5980742,
- -12277164, -1778653, -2174864, -6626061, -4545686, 63888, 4526896, 857920, -7904888, -3583077,
- 3097745, -5880347, 2828236, -6864969, -1809792, 423591, -513249, 7728257, 4194573, -1740536,
- -2687576, -842887, -1541356, -4541391, 2321967, -1257352, -1217623, 1648194, -636192, -3056406,
- -1535988, 2197950, 1372779, 1498407, 1115618, 1771674, 666257, 841814, 985695, 2144263,
- -326954, -1330903, -1225139, -512175, -214212, -246961, 1031329, 892279, -62814, 133144,
- 399969, 1117228, 2509872, 250182, 865973, 549756,
- },
- {
- 1627793, 35930084, 47619376, -9475772, 7186017, -2797098, -6171868, -1315334, -475668, -2955474,
- 4623533, -4149475, 3521873, -2818036, 4665945, -15448460, -1651952, -10280004, 8085813, 7682086,
- 2370285, 8300561, 7623567, -22017612, -12101070, -1569274, 1308354, 1483374, 6548215, 1268089,
- -1660005, -4760435, 4703526, -12725451, 7685307, 5514738, 3722126, -555125, -3779034, 19327,
- -4287988, 247497, -1198833, -686658, 849330, 3546032, 2308545, 402116, 2086817, -3921842,
- -1630477, 3525631, 13422, 811749, 370441, -2228014, 1649804, 5740761, -894964, -388695,
- 1563905, -1543504, -4543002, 354335, 260919, -1373316, 1770600, 1277216, 121870, 597000,
- 494458, -2889976, -1910187, 3060701, 1519882, 4342749, 835371, -642098, 1275605, -2236604,
- 1229971, 24696, -2103460, 1319092, -341987, 478889, 2007897, 2135673, -381178, 419833,
- -486405, 574989, 486405, -1516660, 675921, 3187403,
- },
- {
- 2649458, -117022288, 5672578, 722628, 16624745, 26971858, 35260072, -23047332, 40265, -4355634,
- 5094368, 4824322, 364535, 1290638, -19675246, -449361, -6027987, 10659035, -4140885, -6568079,
- 2503966, -5331128, -1334661, 9524627, 18268106, 3739306, -6830609, 12685723, 13334263, -2775623,
- 1849520, -2918967, 6903623, 17296370, -9009768, -5241471, -383326, 4668630, -8388608, 208843,
- -16546362, -11379516, -5926518, 1612223, -4636417, 3444027, 2872796, 176094, -110059, -2214593,
- 11409044, -2215130, 9559523, 884226, -10035191, -2222646, -2725157, -1582159, 8973260, 890132,
- 1737314, 7091528, 1159641, 1532767, -2957085, 2980707, -1054415, -2731062, 785979, -2646237,
- 1627256, -517007, 5611912, -1991254, 1990717, -1289564, -1893544, 2035278, -139050, 928250,
- -1969779, 4495757, -1903744, 5511517, 3248069, 2123861, 876710, 3474629, -720481, 1621887,
- 1130650, -1597728, -1267015, -1081795, 1891933, 1469416,
- },
- {
- 182536, 1384590, 536334, 3888019, -8990977, 3884798, 21963390, -15024332, -12039330, 17225504,
- -672699, -12273406, 7572564, 8241506, 6691559, -13831405, 1008244, 14966350, -7894150, 6423124,
- 18478024, -4495757, 7373922, 8949101, 2152852, 722628, 4794794, -3577708, -1184337, -3071975,
- -17761838, 517007, -15247134, 3128347, 10332618, 9731859, -7978439, -9262634, -3629247, 4366371,
- 7357816, -6112812, -5490579, 5298916, 8902393, 2204392, 571768, -8278550, -1268089, -3875134,
- 3921842, 119185, -5471789, 4508105, 694174, -27917, -6150930, -4989679, 1360431, 818728,
- 2901251, -4488241, -891206, 494995, -6315750, 4013647, 586263, 2291365, 1706713, 710280,
- -2251637, -4131222, -512175, 3955128, -4677220, -2513630, -210990, -1127966, -1204202, 674310,
- 413391, -467615, 3891240, 1979980, -2574833, -897648, -1830193, -289910, 516470, -871342,
- -689879, 1407676, 2547989, 493921, 173946, 312459,
- },
- {
- -16466905, -55472724, 5712307, -12472048, 10007811, 38982732, -14485851, -4619774, 6554120, -933082,
- -9547712, -12702366, 9294846, -4795331, -32320702, 10569378, 23639500, 15422154, 7853348, 5675263,
- 8748312, 2717641, -5953899, 4359392, 6645925, -4410932, -1462973, 4880157, -2610266, 8136816,
- -1250909, -8701067, -1774358, 11791833, 2426657, 6451041, 7108708, -1437203, -266825, -7942469,
- -3551938, 1716376, 816581, -2465848, -4601521, 2347737, 5405753, -2994129, 5369, -88047,
- 2142652, 2645163, 197032, 1718524, 2122251, 1135482, 7301445, -3087008, 1117765, 2182917,
- -1225676, -7949985, -1134408, 2759517, 1044751, 2592550, -3839164, 1092532, -1248225, 1034013,
- 207769, -643171, -2353642, -588411, 2490544, -2876554, -325881, 268972, -588411, 500364,
- 3110630, 1382443, -1810329, 1032940, -2059437, -1452236, 228707, 100932, 998580, 426812,
- -1676111, 141734, 1461363, 190589, 755377, -43487,
- },
- {
- -156766, 24595668, -14724222, 12851079, 7106024, -12699145, -10214506, -16578037, -7326678, -667331,
- 3235184, 5109938, -13132936, 22534620, -5306432, -5339181, -3058017, 21334714, -15519327, -3597572,
- 7798587, -6481106, 26596048, -10619844, 4167192, 5345087, 2281702, 22631256, 9607305, -5025112,
- -5209796, -19196894, 203474, -6746857, -7268159, 1022202, -4719632, 3328600, -3515968, -834834,
- -9080635, 5892695, 907849, 10632728, -472446, 6615324, 2253247, 4923107, 891743, -1423782,
- -1484985, 3832722, -3567507, -4375498, -5739687, 1516660, -4820027, -4005057, -641024, -562104,
- -2397129, 1466195, -722628, 3201898, 3542811, 436476, 1953136, -923418, -4478041, -595390,
- 648003, -160524, -2597382, 4352950, -1946694, -4983236, -112206, -3718368, 1302986, -179315,
- 792958, 775242, 561030, -2534031, -3493419, -3835406, -2223719, -685047, -511101, 1373316,
- -1378685, 2743410, -644782, -328565, 1341104, 310311,
- },
- {
- -12941273, -73660296, 5891085, -8218420, 13671955, 35088272, -5046050, 1278827, 23912230, 16773995,
- -1375463, 13080323, -9847823, 9853192, 23427436, 21769578, -2120640, -7126425, 15808701, -1105417,
- 605054, -14010720, -2161442, 9725953, 998043, -758599, -286152, 5637682, -4108136, -2298344,
- 2172717, 1886028, -10172630, 542240, -8941585, -1626719, 3118683, 3325379, 1633698, -8078297,
- -8130910, -4361003, 2872260, 1948305, 5151814, 2556579, -1871532, 2545842, 5425618, -6132677,
- 6739341, 2157684, 996969, -942745, -6080063, -347892, 6453189, -2352032, 4364224, -1345399,
- -2491081, 554588, -4417374, 460098, -3364033, -3292629, 3840238, 3949223, 5763846, -1936493,
- -1975685, 5970542, -820876, 503585, -26307, -2046552, -557272, -1280437, -127775, -1521492,
- -2777770, -552977, -1430761, -5114233, -2028298, 538482, 1045288, 742493, -981400, -869731,
- -348966, 2163590, -2102387, 695785, 772557, 187368,
- },
- {
- 1104344, -27430882, -17577154, 7247758, -3838090, -5990943, 9140227, -7703024, -5720360, -1101122,
- 4491462, -1957431, -977642, -10303090, 62797252, -11200738, -3979287, -5840619, -4023311, 1027034,
- -4477504, 30012694, -6815040, 7525320, -3961034, 5836324, -4818417, 5458367, 7078643, -1068910,
- -24263344, 5137318, -4430259, 6424198, 11887933, -4487167, 14073534, -8446053, -8886824, 1415192,
- 1388885, 496069, 7432978, -308164, 107374, -1630477, 930934, -1133871, -3574487, 6906308,
- -1468879, -1639067, 3863323, 5312338, 3329674, 4348655, 4718559, 2205466, 4739497, 5924371,
- -1498944, -8489540, 1382443, 2840047, 3922916, 1879585, -234076, -3624953, 3945464, -781684,
- -3200825, 1690607, 4231080, -2085744, 1639604, -2040646, -8680666, -901406, 2103460, 3542274,
- -1572495, 4539781, -1886564, 746251, 3160559, 3520263, 1782411, 2885144, -2004676, 950262,
- 376347, 90194, -1473174, 1695975, -668941, 1016834,
- },
- },
- {
- {
- -5580237, -1123134, 7883950, 48636208, -21001316, -867583, 6155225, 232465, -9314173, 2343979,
- 4431333, 3946538, -5533529, -2787971, 4573604, -66035, -8470749, 2303713, 19322520, -6112812,
- -4037269, 4604742, -1548873, 10656888, 7014219, -128312, -7050726, 4125853, -754304, 431107,
- 1658394, 4385162, -3128347, -3947075, 6504191, -2436857, -5587216, -2301029, 2148558, 3805341,
- 2150705, 3471944, -2257542, -991601, -4100083, 37581, 1479079, 302258, -383863, 3630858,
- 4558034, -2697776, -2077690, 443455, 1258425, -3556770, -1695975, 1806571, 93952, -779537,
- -421981, 2001455, 632971, -1328219, 3563749, -162672, -1124745, -368293, -1499481, 1243393,
- 397821, -2436320, 1891396, 685584, -1901060, 2094333, -3306588, -2651606, 1686848, -453656,
- -1207960, -542777, 699543, 1655710, 1296006, 927176, -460098, -1505386, 393526, 243739,
- -1568200, -657130, -1347546, 302795, 536871, -804770,
- },
- {
- -1407676, 45065480, -16638166, -13638132, -14268955, 1729798, -2289218, 3485366, -1409823, 9403831,
- 642098, -7870528, -5976984, -714575, 4294431, -34897, 14617921, 1475321, -416075, 8972187,
- 14626511, 10851772, -1653562, 2135673, 11511049, -3296924, -6132140, -10415833, 8432631, -13402445,
- 942745, -15581604, 8850317, -16712255, -5666673, 2260764, 466004, 3407520, -2226404, -328565,
- -3226057, 6648610, -1369021, 9892383, 2058363, 2047089, -2659122, -979253, -1908039, 1639604,
- 2302103, -674847, 1468879, 863288, 664109, -2403034, 2020245, -2061047, 2803540, 2454574,
- -1800128, -476741, -2643552, 2379949, -72478, 2086817, 843424, -5369, 371515, -1012002,
- 1051730, 476741, -599685, -2442226, -917512, -1502702, 544387, 1414118, -1122060, -1906966,
- 570157, 1341104, 2003065, 584116, 784905, 340913, 1012539, 1464047, 377420, -1002875,
- -271657, -219043, -1077500, -1119376, 823560, 489626,
- },
- {
- 1024350, 75613440, -12023224, -2294050, -18450642, -2206003, 5165772, 5546951, -8269423, 10694469,
- -4769025, -4914517, -7421167, -159451, -3281892, 2527588, 11564736, -2209224, 387621, 1400159,
- 5056250, -1786170, -1893007, -7520488, 5860483, -7716983, -11616276, 2348810, -9831180, -3965866,
- 999117, -3866008, -4960151, -230318, -10477036, -822486, 7496866, -1520955, 3123515, 322123,
- 46708, 3628711, 2538863, -2538326, -10142565, -273267, 4025995, 774168, 4123706, 960462,
- 2433099, -5641977, 3785477, 1902134, 171262, -1351304, -416612, 1284732, 1633698, 2658048,
- -317828, 3137474, 2010582, 3302830, 909996, 398358, -1127966, 3819837, 1038308, -1360431,
- 1227824, -657667, -2498597, 2517388, 796716, -1400696, 2476049, -1620276, 1357210, 2407866,
- -1956358, -1055488, 1745904, -2281165, -593779, 1007707, -1349157, -384936, -204548, 1799591,
- -577673, 284542, 1415192, -645856, 1034550, -41876,
- },
- {
- 5288179, -154425552, -1940252, 30995168, 4930623, -4924180, 3680250, 3307125, 2174327, 4851166,
- -9786083, 1971390, -8790724, 4435091, -202937, -12971875, 6714108, -1589675, 11576011, -12164421,
- 1092532, 1425392, 4815195, 10146323, -454193, 3590056, 9750650, 5530844, 5268851, 1116155,
- 1038845, -4502737, 578210, 3614752, -1596117, -5927592, -2521683, 3858491, 6651831, -1280974,
- 7834557, -3913789, 5009543, -2179159, 2666638, -1760937, -3463891, -2749853, -1530619, -110595,
- 1866700, 523986, -3147674, -1494112, -2531346, -690416, 1240709, -2180770, 2441689, 2314987,
- 638876, -4244502, -1739999, -2880313, 3089155, 115964, 2008971, -1287953, 1067299, -716186,
- 1564442, 1971390, 2849711, 464930, -73551, 864899, 19327, -1907502, -1480153, -237297,
- 314606, 46708, -595927, 542240, -996969, 585726, 1600949, 332323, 1133335, 454193,
- 347892, -1345935, 723165, -183073, -2300492, 918586,
- },
- {
- 259309, 47843788, 8533563, -4469987, 1637993, -2551748, 1142461, 4971425, -1661616, 4014184,
- -5127654, -4642860, 585726, 3207267, -4494147, -541166, -4427575, -8473434, 4470524, 4404489,
- 3558381, -4349728, 4052839, 2083059, -6237903, 3508988, 2386391, -4023848, 3112241, -11778411,
- 3625489, -4329327, 14307610, -6175626, 3527779, -10550587, -166430, -3970161, -105227, 457414,
- -2501282, 5916318, 4483946, -7068443, -7503845, 3256122, 192737, -419833, -503048, -3452617,
- -224412, -3893388, 371515, -1729798, 1073742, 3083250, -809064, 3013993, 396211, -89121,
- -402653, -3914326, -2748242, -1774895, 1861868, -4206921, -310311, 1564442, 3705483, 2771328,
- -1928440, 1500554, 1695438, -336618, 671626, 227096, -2369748, 265214, -1065152, -878321,
- -2135136, 1818382, 473520, -781684, -950262, 964757, -789200, 584116, 328565, 102005,
- -1407676, 1375463, -325344, -108985, -950262, -1387811,
- },
- {
- 8839580, -168851264, 14162655, 63670204, 1480690, -7216619, 2728378, 15695421, 1055488, -5820218,
- -1726577, 4419522, 230318, -7284802, -3466576, -9909563, -10934987, -3102577, 3849901, 14871324,
- 4512937, 7500624, -3944391, 6177237, -2879239, -2192044, 2976412, 1762010, 620086, 3482682,
- -99321, -4755066, -6258841, -5257577, 1077500, -3065533, 7869991, -3888019, 639950, -5231807,
- 4981625, -1946157, 6698002, 757525, 1555852, -2583423, 727460, 7850664, 5712844, 5958194,
- -3278134, -1608465, -621160, -5947993, 1282585, -50466, -2952253, -5415954, -201327, 1688996,
- 1085553, -169114, -1540820, 4373888, 358630, -4434554, 1387274, -2173254, 2420751, 217970,
- -214212, -5638219, -1154273, -593779, -1684701, -2148021, -100395, -831613, 46171, 619012,
- 1909650, 2020782, 3022583, -1393717, -144418, 627602, -3042984, 1238024, -2393371, 415001,
- 9127, 215822, 944356, -841814, -63888, 1245541,
- },
- {
- -2001992, -9344775, -17547088, -10288057, 7628399, -2590402, -2787971, -1685238, 484794, 2377265,
- 2032593, 3523484, 6793565, -10364830, -5282273, 785979, -4330401, 10135049, 7559680, 15401216,
- 10908143, 5261872, 469225, 22019224, -10349797, -4401805, 6665789, -728534, -2379412, 3100967,
- 4056060, 7071127, -6314676, 605054, 1719598, -438087, -597537, -3310883, -912681, 2948495,
- -6094559, 594316, 252866, 5225365, 4839355, -3306588, 1779727, 797253, -3073049, 6994891,
- 2163590, 1103807, -5753109, -2741800, -2667712, -347355, 2716567, -2072322, 1677185, 778463,
- 2467996, -2629057, -6250788, 404264, 835371, 854162, 1949915, 2138357, -467615, 4386772,
- -1285269, -4734665, -454193, 513249, -322659, 3924526, -3111167, -709207, 1312113, 193810,
- 2136746, 1083942, -261456, -1561221, -366683, -2267206, 2099702, 1142998, 607738, 525597,
- 442382, -635655, -293132, 1541893, 217970, 1362578,
- },
- {
- 5106716, -155342528, 14409615, 58158688, -1643362, -9759776, -913217, 4684736, 8438000, 5291937,
- -9948218, -3788698, 10312216, 3459596, 2989834, 12700218, 3854733, -5487358, 14439143, 5193153,
- 488016, -2331094, 3548717, -4881231, -3352222, -824097, 4048007, -3395172, -3500935, 2660195,
- -2985539, -5784247, 6077379, -511101, -6487548, -973347, -6470368, 1245541, -3672734, 983548,
- -3408594, 1880659, 129386, -849330, 1821066, 381715, 2285460, -455267, -3420405, -2026151,
- 3216931, -4788889, 7963406, -1951526, -2549063, 244276, 162135, 5970542, 474594, -2602750,
- -873489, -78920, 328028, -4378719, -1762010, -3267933, -2188823, -707596, 202400, -2525978,
- -2103460, 208306, -404264, 372588, 303332, 203474, -427349, 1059783, 548145, 2509335,
- -310848, 586263, 179315, 88584, 845572, 590021, 1721745, -258772, -442919, 216359,
- 437013, 213675, 417149, -1348083, -1035624, 471910,
- },
- {
- -2297808, -35518844, -18936510, -8089571, 8660802, 639413, -2272575, 2049773, 2415919, -1067836,
- 4008815, -9450539, 3056406, 803696, 6163278, -6401112, 4874788, -6835978, 1421634, 9620190,
- 4207994, 2905546, 5750961, -17559974, 3876745, -3215857, -2073932, -670552, 508954, -8988830,
- -3765613, 4239133, 4256313, -11220065, 3508988, -3722126, -249108, 2643016, -643171, -2528125,
- -6578816, -4272419, -536871, 1058173, 1624035, 3558381, -1182190, -1347009, 2280628, -2004139,
- 387621, 1248225, -605590, -497679, 301721, -3926137, -2487323, 4259534, -132607, -380105,
- 2608119, -495532, -2457258, 1178432, 920197, 198642, 2409477, 299574, -2700998, 149250,
- 1042066, -391916, 228707, 241055, -1583769, 2323041, -16106, 528818, 2499671, -1853278,
- 1640678, 2740726, 792958, 506269, -1229434, -471910, -679679, 1118839, 356482, -329639,
- -1109712, 466541, -763967, -918586, 387621, 743029,
- },
- {
- -2330020, -108627776, 11405286, -1995549, 7025493, -6475200, 5696201, -14897094, -957778, -12432320,
- -8301098, -2168959, 1474784, 16939352, 2749316, 2895345, -3278134, 1933272, -12819404, -6365679,
- 280784, -2782065, -5810554, 2294586, 6771553, 375273, -6433324, 4459250, 3579855, -16373489,
- -445066, 1047435, -5345624, -822486, -11328513, -2175938, 3423089, -1680943, -14807973, 4946192,
- -3959423, -1916629, 217433, 11978664, -6214281, -3885335, -682900, -2953327, -5162551, -5465883,
- 4439386, -5515275, 3818763, -1687922, -3292629, -2147484, -1723893, -121333, 6345278, 878321,
- 1976759, 5166846, -562641, 2050847, -775778, -37581, -1808181, 1009854, 2740189, -379568,
- 1422171, -1505923, 2224793, -4267050, 2039573, -1081795, -1305133, 5099200, 2309082, 1480690,
- -1024887, 3269544, -5826660, 3719442, 2655364, 628139, -886911, 242129, -2440078, -565862,
- -645856, 415538, 1403917, -847182, -453119, -1448478,
- },
- {
- 302258, 47582868, 23283554, -12269111, -14366129, -4854924, 17277042, -4396436, -12868796, -1030255,
- -6917045, -4640176, 13140452, 5979132, -16908212, -21921514, 7231115, 17324824, -8587250, -1075352,
- 11536282, -4189204, -3089692, -7046431, -3489124, -4295504, -7356205, -3184718, 8293045, 1656784,
- -11090679, 1262720, -18966038, 5645198, -1963337, -1423245, -445066, -3059091, -452582, -1538672,
- 2447595, -799938, -1722819, 4176319, 3595961, -1593433, 2641405, -6226092, -2531883, -3528853,
- 5328981, 1063541, -4232154, 3222299, -1398012, 2815351, -3147674, -6886980, -1328756, -2213519,
- 1913408, -2738042, 1871532, 3023120, -1963337, 4701916, 831613, -1129040, -3053722, -524523,
- 826244, 522912, 544924, 2741800, -4196720, 339839, 2789045, 4919885, 838592, -355409,
- 542240, -1273995, 1268089, 3359201, 2311229, 2423435, -1389959, 252866, 2317135, 1752884,
- 165356, 414464, -475131, -1311576, 253403, 201327,
- },
- {
- 18649284, -36027260, -11380590, -9975598, 1591285, 5653251, -33064268, -3752728, 4507568, 3874061,
- 10314364, -579284, 14125611, 7300371, -11055246, 15545634, 6929393, -2354716, 5433671, 1941325,
- -2395518, -2779381, 526670, 11882564, 10935524, 215285, -755377, -2811593, -1532230, 5479842,
- 4201015, 3362423, 3534758, 3596498, -5523328, 5702643, 2815888, 1853815, 4413616, -1924145,
- -3320010, 903554, -1924682, -6294275, -4056597, 2754148, 2451353, -1439351, 4583804, 1304596,
- -4224101, -4461398, -577673, 1519345, 6253473, 3927748, 3773129, -4190814, 3455838, 3300146,
- -270583, -3652333, 1715839, 3564823, 280784, 4089883, -2332704, 2788508, 2589865, -122943,
- -812823, 1668058, -2729989, -979789, 2674691, -1325534, 889595, 1626182, 766115, -156766,
- 2146410, -193274, -4174708, -925029, -1283122, 641561, 604517, -1373853, 1182190, 151934,
- -1202054, 1028645, 177167, 323733, 2636573, -1350230,
- },
- {
- -309775, 51508468, -3123515, 5962489, 3328063, -3793530, 1098975, -6655052, 573915, -2846490,
- 2707977, -1261647, -4935455, 31899796, -20039780, -18744848, -5115306, 19807316, -11359115, 2491081,
- 9315247, -10278930, 15655156, -17559436, 2446521, 1119376, -11853036, 76773, 511638, -637803,
- -239981, -8305930, 9068823, 12053289, 6619082, 7365332, -6483790, -7821136, -13160854, -395674,
- -2099702, 681826, -4830228, 10033580, -4409858, 676994, -3682935, 557809, 601832, 564788,
- -3002719, 1931662, -1295470, -949725, -1151051, 3071439, -1891396, -2813204, -3325379, 319975,
- -3618510, -178778, -1579474, -1580011, 694711, 2325188, 1326071, -1032403, -3264175, -960999,
- -36507, 1146219, -3951907, 3787624, -20401, -4559645, 1302986, -1277216, 1662689, 84289,
- 2462627, 2556579, 1114544, 189515, -220654, -558883, -1510218, 1215476, 767189, 1522029,
- -964757, -526134, -3875134, -1654636, 955093, -271120,
- },
- {
- 14489072, -62824636, -12155831, -12476343, 1893007, -251256, -27172110, -644782, 1166621, 1511292,
- -5588826, 14911053, -12731357, -268972, 10906533, 5854041, 8814347, 5618891, 9686762, -8505646,
- 1978906, -11049877, 706522, 10814728, 4934381, 1847373, -2423972, 9083319, 1831804, -298500,
- -1088237, 4459250, 1887101, 11442330, -5356361, -7654706, 633508, 846645, -1037772, -5337034,
- -6135361, 2532420, 1549410, -663572, 6736656, 5049808, 6556268, 3513820, 944893, -5537824,
- 11789148, 3036542, 4166655, 5380521, 2564632, 2645163, 6045167, -5341866, 4174171, 800475,
- -4409321, -1874216, -2309619, 573378, -1212791, -635118, 1628866, -565325, 1708323, -1709397,
- -2449742, 5796595, -1939178, -945430, 386547, 50466, 952946, -995359, 1075889, 811212,
- -1879585, -964220, 864362, -889058, -297963, 547608, -80531, -1082332, 81068, 746787,
- -273804, 2827699, -728534, 1381906, 331249, -822486,
- },
- {
- -343061, 16943110, 9826348, 6995428, -3531000, 2289755, 13439490, -4114579, 4097399, 3203509,
- 6150930, -4856535, -789200, -19245748, 47896400, 418759, 25931938, 12869870, 8022999, 9087614,
- -18212808, 14219563, -7045357, 3505767, -7062537, 10437307, 1217623, 10853919, -2304250, -3385508,
- -18143552, 1496259, -5369, 8312909, 7293928, -1672353, 10641318, -11121818, -3334505, 818191,
- -5049271, -2239289, 11081552, 6257231, 3525631, 564251, 826781, -1131724, -3150896, -210453,
- -4556424, -1314260, -3555696, 867583, -344134, -663036, 134755, -4023848, 862752, 1507534,
- -1188632, -6374805, -3353833, -1533840, 1921461, 2355790, 2309082, -1506997, 3866008, -1630477,
- -4528506, 1836099, 2595771, -3771518, -2231236, -1093069, -5104032, -2398202, -1697049, 2609730,
- -1612223, 4832912, 274878, -304406, -97711, 1267015, -1044214, 1794223, -539555, 574989,
- -255014, 184684, -1313186, 2856690, 568546, 2210835,
- },
- },
- {
- {
- 3358665, 41445360, 745177, -14806900, 21341692, 6475737, 1285806, -4821101, -8631811, 2261837,
- 5295158, 1830730, -1499481, -2285996, -4004520, 8824010, -11261941, 5379984, 4575751, -13863081,
- 10123238, 1299765, 6484327, 9695889, 3599183, -6009196, -3377455, -2344515, -3105261, 2927557,
- 10606422, -1738925, -5442261, 54224, 4498978, 2369211, -11208791, 2577517, 689342, 311922,
- 741956, 692027, -1195075, 1307818, -3664144, -4475356, 2946885, -2401424, 6097780, -919123,
- 2073396, 1946694, -2732136, 605590, 1012002, -1221918, -1872606, 3379066, -740345, 1654099,
- -305480, 2408940, -192200, 401579, -257161, 2079838, -5246303, -1930588, -101469, 733366,
- 1993939, -1833414, 204011, 1420560, 1020055, 626528, -3180423, -1483374, 668404, -2022393,
- 171799, -2330557, 2637647, 111669, 1286880, -402116, -221728, -961536, 357556, -740345,
- -1020055, -1511292, -900333, 495532, 432718, -1614371,
- },
- {
- 1781875, -12859669, 29088202, -25977572, -11693585, 335544, 2014877, -203474, -2689723, 7455527,
- -1044214, -4296041, 4210679, -12995497, 4689031, 5512591, 4221953, 2529199, 15090368, 6987375,
- 4556424, 13790603, 4830765, 670015, -326418, 5251135, -6210523, -8384313, 2348273, -3877819,
- -7975755, -9563818, -3572339, -6389838, -2215130, 3293166, -2608656, 1761474, -530428, 997506,
- -6016176, 4922033, 6538014, 169651, 5858873, 3132105, -1699196, -3306051, -1235340, 226023,
- -2102923, 3777961, 1365263, 3325915, 252866, -952946, -1694902, 1647657, 2781528, -229244,
- -865436, 2194728, -3999688, 1248762, 1213328, -1015223, 1942399, 1312113, -1190780, 486942,
- 2371359, -376347, -1821603, -385473, -833224, -1462973, 28991, 2687576, 170188, -3925063,
- 1657321, 2888903, -194884, -27917, 334471, -344134, 1554241, 1129576, 799938, -802085,
- -450435, -667867, -568009, -169651, -1104880, 120259,
- },
- {
- -661962, 83619256, -11442330, -39215200, 12374338, -2245731, 5437966, 4395362, -5590437, 2358474,
- -3707631, -9755481, -2259153, -1910187, -2192044, 7823283, 5782637, 7824357, -5817533, -1625108,
- 2508798, 7205882, -12069395, -5310727, 2818572, -9854266, -5144834, -4101157, -230854, -2003065,
- -6898255, 1593970, -4415227, -9203578, -2980707, 789200, 8840653, -319975, -390842, 1340030,
- 2404108, 476741, 1786170, -3179887, -2521146, -2801393, 3641596, -1959579, -434865, 3288334,
- 905164, 1074, -1868848, 3711389, -486942, -1325534, 3460133, -1649268, 2464774, 3300682,
- 947040, 4097399, 446677, -947040, 4537096, -1741072, 856309, 3041374, -1756105, -752693,
- 1498407, 2514703, -5114769, 2151779, -1237488, 2868501, 663036, 1494649, -1036161, 3693672,
- -2651606, 674847, -525060, -1481227, -1336809, -239981, -558883, -1030255, 768262, 493384,
- 1080184, 708670, -416075, 1174137, -740345, 582505,
- },
- {
- -6277632, -132227544, -3623342, 43730284, -3595961, -4878546, -528281, -1273995, -747324, 13734769,
- -6146635, -6441377, 861141, -2933463, -1654099, 1483374, -1406065, 2815351, 5409512, -1446330,
- -4392678, -449898, 6030134, 12524662, -6014565, 6160057, 7909719, 10733123, 7369627, 1862405,
- -2864743, 5260798, -4515621, -2373506, -1093606, -8824010, 7289633, -881542, 4981625, 1772748,
- 3576634, 4964982, 549756, 1235340, -1211718, -10474351, 3634616, -3547106, 1407676, 198642,
- -2080375, -200790, -2150705, -3382824, -4295504, 979253, -962610, -75162, 1465121, -957778,
- 6794102, -4409858, -6713571, 164283, -445066, 2622078, 3819837, -1750736, -1231045, -138513,
- -1071058, 3371549, 3896609, -507880, 980326, 312459, -852551, -1712081, -1676648, 801011,
- -826781, 631360, 372588, -1519882, -429497, 967978, -533650, 548682, 1482301, 2884071,
- -904091, -605590, 1157494, -1069447, -998580, 215285,
- },
- {
- 281320, 37402724, 17882634, -5386963, -2141578, -184684, -398895, 4208531, -877784, 2753074,
- -2965675, -5557151, -4142496, -2632278, -6444599, 204548, 7814156, -12488154, 5116380, 8832063,
- 2147484, 639950, -4929012, -5658083, 9268539, 809601, -2844879, -1946157, 608812, -15928960,
- 2517388, 7178501, 3460133, 4494147, 4310537, -13616120, -3213173, -5859409, -1966558, 10151155,
- -9613211, 7141994, -636729, -3694209, -6050535, 3098819, 1915019, -3277060, 617938, -1176821,
- -3033858, -5024575, -799401, -1758789, -226560, 5490579, -599685, 1476932, 2626373, -1494649,
- -1520418, -3845070, -2419140, -97711, -296353, -4083977, -2837900, 3992709, 2108829, 1756105,
- -478889, 2459943, 2598992, -245350, 993748, -341450, -1922535, -5906, -1726577, -1278290,
- -610959, 1636919, -1457068, 1150514, -1528472, 322123, -340376, 309238, 280247, 338229,
- -504659, 342524, 372052, -430570, 337692, -1771137,
- },
- {
- -9718437, -123653720, 2782065, 62712964, 2007360, -3588982, -3010235, 11143830, 1813550, 1425392,
- -7137699, 3391414, 9423158, -3211562, -10256919, -1899986, -13490492, -10776073, 2793876, 23838142,
- 2441689, 612033, 3800509, 7888781, 5633924, -6734509, 917512, 5302674, 3630858, -2567854,
- 3818226, -5125507, -9994389, -2036888, -4412542, 2073396, 190589, 1117765, 423591, -3291019,
- 4343823, -233539, 540092, 3143379, -636192, 2847027, 1948305, 7809325, 5302137, 4073240,
- 2355790, -3570729, -5655935, -3391414, 1685238, -922881, -5982353, -6103149, -2663954, 4260071,
- 1814087, 1076426, -525597, 819802, 1192927, -3176128, 501974, 137439, 722628, 2192044,
- -1453846, -4071092, -2729452, -139050, 147640, -3119220, -2188286, -746787, 310311, 1064615,
- 1262184, 1610613, 2465848, 813896, 267899, 470836, -1350230, -2534568, -268435, -102005,
- 673773, 453656, -1197759, 309238, -894964, 716186,
- },
- {
- 406948, -25714506, -17838610, 2356327, -4298726, 1993939, -2018635, -1209033, -4104915, -559420,
- 8071854, -3611531, 5528160, -4341138, -5879274, -8618389, 1861332, 16190953, 11252814, 12919262,
- 5783174, 9134322, 12697534, 3146601, 6912750, -5226975, -460635, -4016331, 10463077, 5080410,
- -1604170, 1770063, -97711, 7358353, -9583146, 3317862, -3071439, -1280974, 5978595, -6382859,
- -6076305, -542240, 5733245, 5687074, -2338073, 1562294, 184684, -2348810, 2907693, 6700149,
- 142808, -3448859, -2204929, -417686, -5598490, -1405528, 3135326, 1633161, -1772748, 1368484,
- 1803349, -3841312, -1887101, -1364189, 1983738, -113817, 3008625, 684510, 1622961, 765578,
- 1422708, -3639448, -2616172, -1168231, 2055142, 516470, -1247688, 41339, -830539, 394063,
- 1898912, 2815351, -2776696, -282931, -2481417, 151934, 1570347, 943819, 971200, 591632,
- 788127, -650688, 563714, -140660, 1045825, 397284,
- },
- {
- -5845988, -124948648, 13674102, 46074800, 5691369, 1279900, -10353019, 4950487, 10102300, 4163971,
- -10801843, -4137664, 12138651, -187368, 14730664, 9879499, -13614509, 11825656, 7239168, 9444633,
- -3990562, 868657, -3526168, -3116536, -2388539, 2592550, 3252901, -327491, -584116, -3163780,
- -3475702, -46708, 5021354, -2316061, -6335614, 1085016, -615254, -8928700, 1035624, -944893,
- 816581, -4377646, 303332, 4358855, 4935455, -960999, -3474092, -1349694, 2670933, -2913062,
- 247497, 1296006, 1656247, 1625645, -346819, 547608, 419296, 509491, -760746, -653909,
- 1478543, -3309272, 246961, 1187559, -4696010, -858993, -2000918, -3679176, 1410897, -2343979,
- -782221, -1985349, 1214402, 179315, -785979, -275952, 130460, 1415192, -249108, 1071594,
- 314069, 1540820, 887448, 882079, 270583, -928787, 3042448, -612033, -368830, -628139,
- 1133335, 645319, 365609, -1844152, -2250563, 602906,
- },
- {
- -1359894, -25210384, -42520176, 4947803, 354335, 2462627, -2866891, 2709051, 664646, 713501,
- 3054796, -7429220, -5867999, 7212324, 4478577, 16079821, -13908178, -4055523, 2767570, 6654515,
- 5213554, -4742181, -660351, -9738301, 15287399, -9989020, -2332704, 2536715, -2364380, -12172474,
- -723165, 3830037, -2783676, 1081795, -6444062, 2073932, -2891050, -4217121, 3897146, -4520453,
- -1495722, -8157217, 1650878, 2138357, 2477123, 840203, 1801739, 445603, -971736, 1376000,
- 417686, -2535641, 2913599, -1282585, 833224, -5254356, -330712, -745714, -818728, 1372779,
- 1917166, -659814, 2273648, -2656974, 1727114, 3369939, 45634, 535797, -4300336, 644782,
- 974421, 533650, 1132261, -564251, -2344515, 611496, -641561, 1020592, 1484985, 605054,
- 1797444, 1627793, 1173600, 776852, 574989, -2104534, -587337, 1289564, 1105417, -313533,
- -1695975, 1059783, -1708860, -292058, 869194, 155693,
- },
- {
- 4374961, -53333832, -38752952, -2828236, 279710, 2722473, -18733036, -8246337, -5542119, -4410395,
- -12113955, 4227322, 3421478, 9465034, 10684268, -14937896, 7587597, -4813048, -1433982, 595927,
- -10933913, 6358699, -3090766, 2796561, 2108829, -9240085, -232465, 1953136, -4070555, -11829951,
- -2882997, 5856725, -8445516, -4087198, -8203925, -2934537, 5326297, -8544301, -2644089, 797790,
- -3448322, -1872606, 2124935, 7900056, -1407676, -2237141, -2710124, -3904125, -7985418, -881005,
- -1045288, 1890323, -2124935, -10426570, 7574712, -3653944, 1241782, -2232846, 5876052, 1642825,
- 32212, 6680822, -3215857, 2946348, 156766, -3737695, 2126546, 4091493, -2724620, 2732136,
- 1565516, -3042448, 543850, -753767, 132070, 809064, -1074816, 1885491, 2840584, 3132642,
- 1809792, -1709934, -3771518, 3592740, 2216203, -397284, 2010045, -4702453, -899796, -807454,
- -1235877, 197032, 2843805, -250719, -1729798, -1565516,
- },
- {
- 445066, 62946504, 7030862, -14821395, -2178622, -6072010, 4540318, 2470680, -7496866, -5434744,
- -4169876, 1740536, 7380365, 499827, -25276956, 1893007, 2101313, 4820564, -2781528, -396211,
- 33286, 10134512, -14282914, -9805947, 1688459, -10482941, -5600638, 1674500, 6419903, -4490925,
- -4780299, -4594542, -9065602, 484258, -6647536, -4644471, 3798899, -1668058, 1658394, -355945,
- -6344741, 2681133, 5378910, 1705102, -3199751, 4172561, 1826972, -6934225, -1445257, -2661269,
- 5464809, -2170569, -2902861, 313533, 3066070, -711354, -1686312, -3674882, -1104880, -4061965,
- -886911, 1703491, 4235375, -1860795, 2300492, 363462, 685584, -1101122, -573378, -2816962,
- 571768, 1941325, -664646, 450435, -1545651, 4115653, 1695975, 2764885, 1865090, 717260,
- -1036698, -347892, -994822, 2728378, 3450469, 4406100, -1543504, 55298, 946503, 1773822,
- 1232119, -504659, -1023813, -877784, 903017, -1407676,
- },
- {
- -17597018, -31893354, 20425790, 3861713, -2332167, -18909130, -12247636, -2574296, -4063576, 5870147,
- 22516902, -5696737, 7556458, 3741454, 17390860, 9228274, -1547799, -5116917, 8491687, 3401614,
- -11300596, -2262374, 11927124, 3631932, 7057168, 8889509, -3491272, -7230578, 2117419, 1258962,
- 1974074, 12311524, 3582003, -122407, -10569378, 12351252, -959388, 2923262, 2582349, -1016834,
- -4014721, -2192581, 1846299, -6163815, -5785858, 7499013, -5199595, 2732673, 4913443, 405874,
- -4888210, -2782602, 359167, -2734284, 8242579, 19327, 1711008, -3069291, 5508833, 4158602,
- -1420024, 674310, 3947612, 762894, -2427194, 5461051, -2464774, 4869956, 3126199, -3587372,
- 1498407, 1842541, -1599875, 345208, -840740, -348429, 2664490, 1560684, -1477469, 600759,
- 2597918, -2987150, -190589, -2831994, -129386, 755914, 1319629, -117575, 1279900, -1326608,
- -550830, 578210, 479426, -363998, 2026688, -1153736,
- },
- {
- 855772, 35038880, 10974178, 6101538, -3037079, -618475, 2011655, 2450816, -1271310, -5852967,
- 999654, -661962, 8049306, 13871134, -9575630, -13502840, -4079682, 10421738, -11244224, -3278134,
- 18411988, 444529, -4735202, -12050604, 4459250, 3207804, -13155485, -11399917, 250719, 11018739,
- -12589623, 6671158, 2704756, 17748416, 8076149, 1149978, -6285148, -10488847, -3259880, 1342177,
- 12348, -6941204, 759136, -1589675, 3062849, -189515, -4426501, 775242, -1925756, 2468533,
- -6817724, 1068373, 556198, 670015, 3130494, -4607426, 5406827, -5494874, -1087701, 1926293,
- -3706020, -4322348, -1549410, 1707250, -1894618, -16643, 4642860, -2203855, -2168959, 389768,
- -1559073, 662499, -411780, 813359, -609349, -4738960, 4476430, -1052804, 175557, 988916,
- 802622, 3680250, -295279, 3148748, 280784, -733903, -2146947, 3966402, -1098975, -233002,
- 1668595, -1661616, -3492882, -3816079, 885837, -594853,
- },
- {
- -13685913, -59331752, 22281216, -5616207, -10701985, -8348880, -14110578, -6646999, -8588861, -30602,
- -8908836, 12920872, -6344741, -7691213, 10653666, 335007, 13135621, 4803921, 4440460, -3177739,
- 1166621, -6994891, -8177618, 16373489, 2903398, 1805497, 3715147, 2171643, -248571, 1190780,
- -1853815, 5412196, 3685082, 7421704, 5298916, -5840082, -4784594, 906238, -914828, -4389457,
- -4236449, 6613176, 2022930, -5393942, 4714801, 5366025, 9015673, 5763846, -6790344, 5377836,
- 5564667, -197032, 6764574, -937377, 9164386, 4321274, 2927020, -935766, 673773, 288837,
- -3320547, -5019743, -503585, -729608, 2336999, -1317481, -49929, -945967, -1431298, 2068564,
- -1430224, 1021129, -1285269, 1989644, -1504849, 2090039, -2204929, 2127620, 416612, 2056216,
- -1496259, -1352915, -784905, 2218351, -591632, -475668, 958851, -2059974, 504122, 545461,
- 43487, 229781, 1893007, 1335198, -33823, -1895154,
- },
- {
- 1270774, 48639968, -17685602, 9039832, 4757213, -2509335, 3039763, 8082592, 2617783, 4611721,
- 4147328, -4211216, -5896453, 24463596, -7516730, 18651970, 15097347, 21662204, 460098, -1141924,
- -449361, -2019172, 264677, 5668820, -11071352, 11163157, 5770826, 3868155, 4418448, -3258807,
- -19270982, 3101503, -317291, 10475962, -511638, 5130339, 2458332, -11278584, 1351841, 2876018,
- -7458211, -767725, 10244034, 3440269, 5239860, 5632313, -5450851, 2345052, 1809792, -3336116,
- -6158446, 734976, -6674916, -2161979, 271120, -234613, 2387465, -5321465, 719944, -3459596,
- 1790465, -3963718, -5577015, -601295, 1373316, 4290673, 295279, 3024731, -2392297, 1627256,
- -4376572, 233002, 734976, 922881, -5485210, -618475, -581968, -4218195, -2233383, 1448478,
- 846645, 1335198, 1620276, 872952, -535797, -701153, -355409, 23622, 224949, 622233,
- -1304060, 951872, 852551, 695785, 1152662, 1522029,
- },
- },
- {
- {
- -2916820, 107800992, 51271172, -41676752, -863288, 295816, 259309, -10057203, -9799505, 801548,
- 3963181, 6990596, 1890859, -1534377, -8939438, 8262980, -16124381, 2141041, 3326452, -13269301,
- 5778879, -2894271, 490700, 8286603, 4214974, -9178882, -6331856, -3675418, 1148904, 8873939,
- 7419556, -3870303, 1420024, 7847979, 2291365, 4649302, -1557463, 5777805, -4410395, -2996277,
- -315143, 1551557, -163746, -80531, -2922725, -1722282, 4816269, -2956548, 6185827, -2241973,
- 241592, 4507568, 1210107, 3012920, 1472100, -429497, 424128, 2470680, -3373697, 964220,
- -3456912, 908386, -1835025, -3027415, -614717, 3437585, -1902134, -387621, 599685, 1093606,
- 1395864, -807991, -1025960, -28454, 1546188, 428423, -1643362, -685047, 117575, -962073,
- 859530, -2616172, 1591822, 74625, 478352, -625992, 310311, -760746, -355409, -1974611,
- -234076, -905701, -813359, -412854, -558883, 37044,
- },
- {
- -417149, -55297168, 4265440, -1946157, 9483288, -3519189, -3835943, -510564, -2210835, -1890323,
- -5158256, -6119792, 5136244, -9782325, 6226092, -501437, -6021008, -8810052, 2694018, 2948495,
- 3330747, 4233227, -6412923, 301721, 2244121, 6182606, -1023276, -109522, 1705639, -2660195,
- -2542084, -857383, -24696, -4052839, 2727304, 5502927, -3172907, 5804112, 402653, -1631014,
- -3599720, 2397129, 4156455, -6383395, 2741800, 1219234, -1262720, -1834488, -4595615, -3893925,
- -2981244, 4370129, 2982855, 5159867, -1071058, -3678103, -2963528, 2410551, 2743410, -2665564,
- -2411624, 4693863, -2807835, -676457, -134755, -3050501, 424128, 1161789, 1561221, 2191507,
- 1646583, -999117, -1099512, 980326, 1194001, -330712, -902480, 895501, 346819, -2863670,
- 561567, -3221, -2397666, -165893, 1181116, 638340, 1369021, 728534, -98247, -892816,
- -750546, -350577, 394600, -144418, -697932, 533113,
- },
- {
- 648003, 54657216, -27606440, -40739376, 18991272, -1089848, 3633542, 5311801, -4984847, -4727686,
- -1892470, -8044474, -2066953, -5657009, -6869264, 4503810, 11351062, 17301202, -9540196, -6916508,
- -6527814, 2381023, -8207683, -5522791, 7130720, 7325067, 6957310, -973884, 2392297, 2304787,
- -3133716, 6038187, -3781719, -6695317, -657130, -391379, 4519380, -1592359, -150324, -450972,
- 1602560, -2699387, 4414690, 2186675, -1751273, -6021544, 133681, -4032974, -719944, -581968,
- -1878511, 5655935, 493921, 1133871, 3951370, 905701, 2178622, -1865626, 3504693, 5109401,
- 972810, 1942399, -265214, -53687, 4567161, -971200, -1214939, -965294, -2806224, -1388885,
- -2007897, 1112933, -3477313, 1636919, -3244848, -342524, -2107755, 3517578, -795106, 1512902,
- -2178085, 2859375, -26844, -981937, -308164, -967978, -1413581, -988916, 1260036, 78920,
- 1355062, 1197759, -284005, 1534377, -454730, 907312,
- },
- {
- 7413651, -82941728, 16804596, 38582764, -2313914, -1641751, 1611, -2000918, -5486821, 6384469,
- -6876243, -1597728, 2760590, -4417374, -3115999, 4031901, 5014911, 1037772, 149787, 4866198,
- 126702, 158914, 3280281, 1449552, -7846369, 6039798, 4525285, 8338679, 8209293, 5305359,
- 35433, 6193343, -4176319, -625992, -1493038, -7136625, 9097814, -2729452, -2259153, -5530844,
- -1590212, 2921115, 146566, 3508988, 290984, -5814312, 7856032, 2020245, 2763812, 2072322,
- 1181653, 190052, -1346472, -1526861, -3692598, -649614, -2695092, 1205275, 181999, -5730023,
- 3610457, -1368484, -3360275, 1462973, -3131568, -44560, 2189897, -1001801, 279710, 288837,
- -1963874, 704375, 795643, -676457, 566936, 1479079, 378494, 607201, -124017, 989453,
- -1402844, -389231, -1072131, -1803349, 336081, 609885, -2006287, -1715839, -710280, 1396938,
- -121870, 390305, 911607, -1212791, -760209, 598074,
- },
- {
- 40802, -8419210, -18143552, 1045288, 491774, -1368484, -876173, 4902705, -1624035, -2025077,
- -4102768, -2706366, 4101694, 915902, -10259066, -2000918, 6811282, -13655312, -2214593, -1561758,
- 92879, 1228361, -12552579, -13429826, 9272834, -3264175, -5994164, 2377265, 5516886, -6438156,
- 7018514, 4679904, 983548, 6442, 169651, -11913166, 382252, -1176821, -1561221, 3468186,
- -6924024, 7405061, -3667365, 212064, -834834, 1059246, -419296, -2136209, 1083942, -301185,
- 132607, 1398549, 448824, -5575405, -4825933, 2805151, 290984, -629213, 1644436, -3555159,
- -2748779, -3307125, -910533, 2092723, 654446, -483721, -1089311, 337155, -3053185, -271120,
- -985158, 670015, 1824824, -1838246, -1510218, -1373316, 249108, 3030636, 1112933, 1745904,
- 1273458, 967441, -2461016, 3448859, -696322, -1475858, -477278, 257161, 731755, 1338956,
- 1110786, 1138703, 773094, -892816, 1391033, 620623,
- },
- {
- 10924786, -80743240, -856309, 46406048, -262530, -9127, -6504728, 2474438, 6848862, 6036577,
- 636729, 7953206, 7963406, 9017821, 2553358, 1860258, -10566156, -5950141, -1877438, 9928354,
- -3773666, -5415954, 3926674, 4413079, 3757023, 4097399, 4053912, 1759863, -676994, -6704444,
- 6274411, 3902515, -3695283, 46708, 2035815, 7681012, 984084, -216359, 2572686, -2089502,
- 664646, 750009, -366683, 238371, 617938, 3306588, 3760781, 6473590, 1186485, 3126199,
- -537408, -5107253, -1721745, 2653216, 2087891, -848256, -1600949, -2144799, -3100430, 995896,
- 1955821, 2899640, 2213519, 554588, 67109, -2588792, 318364, 502511, -367757, 1175747,
- -313533, 762894, 1657321, 71404, 439160, -1242319, -772020, 129386, -150324, 501974,
- -1160715, -1200980, 1099512, 436476, 820339, 2080375, -91268, -1891396, -433792, -1764158,
- 453656, 1399623, -471910, 961536, -666794, -165893,
- },
- {
- 1117228, -7979513, 2522757, 6463389, -4166655, 2902861, 317828, 3281355, -1847373, -3355443,
- 2007897, -7158637, 5235029, 2393371, -4151623, -6818261, 1948841, 71941, -2581275, 4398047,
- -5218922, -5002027, 2493766, -166967, 11471858, -6186364, 1303523, -970126, 2413235, 4592931,
- 506806, 2625836, 2361695, 13086765, 2121714, 620623, -5582384, -19327, 3470334, -5708549,
- -1371705, -2142652, -3153043, -1842004, -5475547, 3146601, 452582, -2094870, 1199907, 1050656,
- 144418, -3614215, 192737, 2146410, -1875290, -767725, 2044404, 2522757, -4008815, 1146756,
- 3089692, -1972464, 1328756, -857383, -332323, -3407520, 547608, -1652489, -502511, -2784750,
- 675921, -168577, -111132, -113280, 1514513, 214748, 834297, 449361, 183073, 137976,
- 639413, 2804077, -2492155, 779537, -2494302, -775778, -191663, 549756, 285078, -685584,
- -767189, -998580, 669478, -1155346, -801011, -112206,
- },
- {
- 6838125, -97974112, 13422847, 31324270, -151398, 4628364, -10538239, -241055, -293132, -4109747,
- 819265, 2764348, -492848, -7592966, 2426657, -1503775, -21356188, 4702453, -1339493, 6247030,
- -6971269, -7504382, -1354525, 4429185, -3284576, 195421, 694174, 4822712, 5385889, -545461,
- -1455457, 3641059, 5181878, 581968, -150861, 3527779, 3484292, -4232154, 1371168, -6597070,
- -4271345, -7020124, -2552821, -582505, 338229, -3813931, -5771899, -4321811, 1053878, 150324,
- -593242, -1209033, -2456185, 412317, -652298, -912144, -2064269, -757525, 948114, -1024887,
- 4997732, -259846, 1011465, 3656628, -2966212, 2047626, -521839, -1630477, 2749853, -2937758,
- 2050847, -177167, 1134945, 1803886, -236223, -1240172, 1381369, 3051574, -1852205, -1982664,
- -663036, 1669669, 1241782, 655519, 550293, -1187559, 1561758, -550830, 622233, -759136,
- 897111, 565862, 412317, -818728, -1085553, 119722,
- },
- {
- 2578591, 30327300, -948114, 6719477, 1137630, 1310502, -2878165, 3393561, 4062502, 1701344,
- -1297080, -10256919, -4294968, 7585986, 451508, 8010114, -19254876, -6041409, -1242856, 5138392,
- 7309498, -4284230, 3907347, -5696737, 11937325, -16265041, -4146254, 5996311, -6695317, -9436043,
- 2841121, 4962835, -5579700, -840203, -6098317, 1629403, -5035849, -1678259, 2570538, -5961952,
- 4147328, -3143916, 6242735, -1117765, -966368, 5560909, 5346698, 5675263, 1517734, 1234803,
- 388695, -830539, 4746476, -1278290, 941135, -5071283, -1182727, -126702, -194884, 2152852,
- 771484, -1531156, 2374043, -3584150, 1138166, 2281165, -1621350, -62277, -4251481, -283468,
- 129386, -417686, 119185, 933619, -30065, 901406, -457414, 2226941, 1707250, 346282,
- 646929, 581968, 117038, 421981, 1352915, -816581, 199716, 1352915, 1411434, 602369,
- -1448478, 1577327, 324807, 153008, 1381369, 1086090,
- },
- {
- -7584912, -12648679, 3073049, -1243930, -9298604, -10339060, -11609297, 9945534, 9017821, 5571110,
- -6490770, 2536715, -6051072, -14862734, -9389335, -10009958, 12486007, -1872069, 18069464, 10988137,
- -4108136, 11247982, -3773666, 4939750, -2414309, -6083821, 4271345, -5019206, -4434017, -3178813,
- -2978560, 3195993, -6234682, 3653944, 2811056, -4249334, 4596689, -3113315, 551366, -1333587,
- -5287642, 4153234, 2071785, -3815542, 1211181, 2077690, -4686883, -591095, -2179159, 2811056,
- 394063, 710817, 1818919, -3591667, 9257265, -79457, 4646081, -4043712, 2681670, -1339493,
- -5025112, 4270808, -3006477, -137976, -1738388, 122943, 4481262, 3849365, -1705102, 861141,
- -198642, -1918777, 2389076, 1960653, 1074816, 1306207, -801011, -589484, 1140314, 2976949,
- 1118302, -1593970, -2514703, 991064, -91268, -2044941, 3020973, -2697776, 1281511, 620623,
- -878321, 661962, 2449742, 359704, -242666, -1115618,
- },
- {
- -302258, 32506996, -13065827, -2285460, 12066711, -6499896, -3013457, 21219822, 14478872, 6271189,
- 652298, 873489, 3286187, 2135673, -14936823, 4901095, -803159, -8014409, -2915746, -2366527,
- -16565152, 3376381, -126165, -2498060, -4734128, -3529390, 641561, -4320200, 3789235, -5444945,
- -4886599, 343061, -3894999, 5207648, -831076, -7034620, -1273995, -3095061, 1473174, 5452461,
- -6482180, -3937411, 2866354, -2423972, -5934571, 7991861, 5844377, -4831838, 2586644, 3101503,
- 5418638, -3748433, -1325534, -4376035, -1694902, -3168612, 2159295, -1394254, -937377, -1890323,
- 1496796, -158914, -1171989, -5230197, 674847, -446140, 675384, 640487, -482647, -1541893,
- 2782065, -538482, -3750580, 548682, -852551, 1092532, -1271310, -965294, 419833, 178241,
- -1221381, 118648, -2356863, -1243393, 330712, 2110977, -2456185, -96637, -935766, -76773,
- 1883880, -1092532, -1034013, -196495, -414464, -2630131,
- },
- {
- 16723529, -31288836, -13479218, 11572789, 5316633, 4074313, 6750615, -4735739, -4016868, 10848551,
- 12616466, -17177722, -181999, 1014149, 17685064, -1554778, 2251100, -5112085, 6383932, 15850040,
- -5012227, -939524, 10437307, -2018098, -3088082, 4724464, 1840930, -1249836, -1068910, 142808,
- 3190624, 7675644, -405874, 304943, -5610301, 12074227, -7218230, -1159104, -3607236, -6702834,
- -1359357, -806380, 36507, -5017596, -4481262, 6784975, -4188667, -3991635, -1729798, -652835,
- -265214, 2581812, -1714766, -2571075, 8711267, -4366908, -1439351, -2618856, 4904853, 1876364,
- 1845225, 4298189, 6097780, 1404454, -5717139, 2791729, -3073049, 526670, -1014686, -1717987,
- 4616553, 1086627, -1291711, 3427384, 168577, -448824, 1506997, -3047816, -2291902, 869194,
- 2083596, -1453310, 2966212, 108985, 2703145, 1012539, 1949915, 1096290, 112743, -1490354,
- 800475, 696858, 784368, 186294, 527207, -1010928,
- },
- {
- -371515, -622233, -18211736, -190589, 930934, 7208029, 5252745, -1466195, -1127429, -1192390,
- 1065689, 544387, 767189, 2914135, 673236, 1974074, -5026723, -958851, -6666863, -1692217,
- 26963804, 1431835, -5077188, 6187974, 9123584, 6742562, -7267622, -12684112, -1831267, 12684649,
- -2985539, 4452808, -8733816, 9414568, 5660767, 4151623, -1852205, -1983201, 5003637, 5413270,
- -1673427, -9217537, -1985349, -7318625, 2039036, -1127429, 1007170, 4072703, -5497558, 3573950,
- -3061775, 882616, -1193464, -2871186, 1862405, -1173063, 6984691, -3118683, 1171452, 1404454,
- -2524904, -1541356, 1311039, 4105452, 798327, -340376, 3685619, -2570001, -260919, 660888,
- -1010391, 1562294, 2246805, -1251983, -1342177, -2595771, 5171678, -1301375, -1391033, -106300,
- -1875827, -1943473, 88584, 2838974, -2666101, -961536, 868657, 6038187, -1009854, -1967095,
- -246961, -977105, -462246, -2026688, 853088, 828929,
- },
- {
- 13450227, -46428596, -188979, -1386738, -2246268, 9640591, 1516660, -3279745, -9610526, -5715528,
- -9709310, 18945638, 503048, -9895605, 3765076, -1855426, 12399571, -11753715, -6653441, 1882269,
- 3761318, -2935610, -12145094, 3760244, 2984466, 6655052, 6208375, -1925756, -3332358, 281320,
- -11012296, -7298223, -1417876, 3233574, 8476118, 656056, -115964, 978716, -1277753, 2302103,
- 4050154, 5832029, 925029, 18254, 3665755, -1491964, 2864743, 2344515, -5237176, 9452686,
- 4940286, -4660577, -2536715, -7424925, 5173825, 2670396, -751619, -3874597, 335544, -2360085,
- -3161633, -2529199, -1431298, -3066607, 1323387, -2759517, -509491, 113817, -214748, 4817343,
- -1253594, -1127966, -410706, 3055869, -2049236, 2062658, -1285269, 3190624, -568009, 1242319,
- -2480344, -1029718, -258235, 1658931, -1837709, -2366527, 1613834, 202400, -261456, -1015760,
- -1731946, -1183800, 930397, 433255, 980863, 21475,
- },
- {
- -1522029, 44431436, -13776108, 5807333, 6426882, 1796370, -1517197, 1987496, -3917547, -1555852,
- 162135, 3995393, 1242856, 5611912, -52787296, 5076652, -4063039, 5655935, -4281009, 1450625,
- 8773008, -2193655, 3360275, 7594576, -4335233, 9825275, -929324, -2563022, 11356430, 8853538,
- -8375186, 3609383, -1927904, 8450885, -8054138, 4631049, 5641440, -4829691, -493921, 4130685,
- 1598265, 3277597, 1633698, -7661685, 544387, 6220187, -8312909, 114354, 4201015, 552440,
- -1916092, 5661304, -3359738, 47245, 980863, -2141041, 5447629, -1519882, 3577708, -1719061,
- 3965329, 1176284, 560493, 5073967, 1457068, 2333778, -1422708, 3823595, 681289, 3896072,
- -2076080, 737661, 1204738, 4250407, -1797981, 1617055, 895501, -2791729, -1189706, -334471,
- -236223, -344671, 403190, 2025614, 2244121, -1083942, -379031, -207769, -2643016, -2488397,
- -1268089, 1513439, 1431298, 1014149, 107911, -1216550,
- },
- },
- {
- {
- 3725347, 151852864, -7415798, -49403936, 12467753, -8353175, 5320391, -7014756, -5769215, -10161893,
- 497142, 8489540, 7516730, 888521, -9994389, 4800700, -5044976, -813896, -8276939, 11805254,
- -6483790, -9843528, -1766842, 5170067, 6560563, -5349382, -7494718, 2854543, 510027, 12013024,
- -2450816, 3411278, 264141, 3609383, 2486249, 5745593, 4810364, -1075352, -2426657, -4806606,
- -2875481, 5694590, 1839320, -2442763, -1569811, 647466, 3173981, 934155, 43487, -778463,
- 210990, 4693326, 407485, 950262, 807991, 697932, 1245541, -1692217, -643171, -597537,
- -3481071, -180926, -28454, -2942053, -855772, 1936493, 1174674, 297963, 773094, 780073,
- 635655, 280784, -622233, -1538135, 558883, -257161, -70330, 169651, -265751, -814433,
- -637803, -149250, -349503, 1784022, -568546, -141734, 272194, -463320, -125091, -1665911,
- -376347, -803696, -53150, -621697, -1924145, 1284732,
- },
- {
- -512712, -41254772, -11320460, 14525043, 3586835, -3112778, -327491, 988916, -2554969, -5945846,
- -7625715, -2208150, 3393561, -7066832, 3883724, -220117, -1915019, -7182796, -4933307, 8498130,
- 1420024, -8375723, -1597728, -1921998, 8535711, 1818382, 3792456, -484794, -1976759, -1048509,
- 1526324, -985158, -1156957, -489626, -797790, 7478612, -2606508, 3359201, 1609539, -7165616,
- 3842922, 1933272, 111132, -2538326, 1017370, -1127429, -4046396, -1681480, -1858110, -2511482,
- -44560, 1125281, 1787243, 1961726, -455803, -3485366, -539018, 1195612, -996432, -367757,
- 1065152, 1401770, -1467805, -3038689, 450435, -457951, -25233, 585726, 2215130, -514859,
- 2402497, -1688459, 348429, 77309, 667331, 190589, -648540, -34360, -118112, -919123,
- -74088, -1347009, -2807835, 709743, 1309428, 1302986, -59593, 1866163, -986769, 168577,
- -543850, -972273, 649077, -1636919, 67109, 382252,
- },
- {
- -2159295, -18403398, 28989418, -19910932, 5834713, 1030255, 4808216, -3478924, -1743220, 3124052,
- -7895224, -7151658, 4152697, -8655433, 2988224, -9228811, 11862700, 13424994, -2065879, -3796751,
- -7421704, -4645544, -1328219, -2727304, 298500, 10648298, 7728257, 5251135, -2880313, 3993246,
- 251792, 3020973, -9394167, 2266669, -2241436, 588411, -2381023, -5020817, 7373385, 148176,
- 3776887, -6551436, 6682969, -1352915, 1336272, -1724966, -7092065, -2619930, 3189550, -2542621,
- 1607928, 1918777, 4070019, -2086280, 3565360, 4533338, -1313186, -276489, 1046898, 3791919,
- 466541, 1577327, 904091, 1305670, 1131187, 2926483, -2818572, -1365263, -1502165, -1694902,
- -2004676, -753767, 220654, -2225867, -2757906, 761283, -2612414, 1992865, -47245, -683437,
- -405338, 1579474, 1699733, -1504312, -784905, 39728, -589484, -1029182, 1030792, -29528,
- -320512, 1746978, 321049, 410706, 899796, 922881,
- },
- {
- -9699110, -43346956, 12327630, 29901026, -2193118, 2097555, -6758668, 1082332, -6198712, 3780645,
- -9800042, 7177964, 1542967, -5090073, -4747013, 543850, 18644990, -4753992, 2013266, 3596498,
- 115427, -3992709, 7990250, -3722663, 1304596, -2355790, 3640522, 11347840, 694174, 7516193,
- 6547678, -649614, -4653597, 1726577, -1739462, -712428, 2976412, 1120450, -5463736, -1934346,
- -802085, -4103841, 3742527, 341450, -2937758, 2971044, 3587372, 4392141, 512712, 3403762,
- 1830730, 2537789, -2173790, -975494, -2762738, -107374, -2593624, 841814, -3294777, -710280,
- -2713346, 1772748, 716723, -2250026, -2588792, 1062468, -797253, 921271, -557272, -782758,
- 202937, 599148, -381178, 625455, -1738388, 2943126, -1319092, 2425583, -344134, 602906,
- -673773, -475131, -1508070, -1034013, 251256, 569083, -1847373, -1684701, -1114544, 219043,
- -671089, 1260573, 1008244, -2350958, -164819, 872415,
- },
- {
- -982474, -34000036, 1091995, 2455111, -2472828, -1199370, 1427540, 4465156, -1706713, -4683662,
- 817118, -7792145, 2736431, -1154273, 6053220, -14380087, 3892314, -6036577, -12287901, 538482,
- -391379, -1067836, -10605348, 2258616, -4136054, -2109366, -2491081, 4244502, 623844, 4275640,
- 2946885, 496606, 4115653, -4474282, -3634079, -4340602, 3567507, -2740726, -3275986, -2007897,
- 2676302, -2931852, 675921, -1411434, 867583, 1865626, -2353105, -2647847, 341987, 837519,
- 1687922, 3711389, 2286533, -8127689, -2848637, -455803, 2418067, -3716221, 2266132, -4297652,
- -1058710, -119722, -3210488, 1922535, -153545, -457951, 2697776, -2328409, -3071439, 231928,
- -1002875, -1126355, 265214, -558883, -639413, -1674500, 432718, 2049773, 1466731, 2241436,
- 3157875, -1039919, -1334124, 2590939, 523449, -2716030, 396748, -340376, 654446, 881542,
- 2510409, 369904, 1457605, -1374390, 671089, 848793,
- },
- {
- -14061186, -30544734, -20122458, 45425184, -3114388, 3477313, -414464, 338766, 5948530, -2033130,
- 5565741, 11616276, 7416335, -915902, 9391483, -4252018, -3406983, -389768, -2805688, 3321620,
- -5235029, -4723391, 2145336, 4337917, 5547487, 6075768, -1098438, -231928, 387084, -5293547,
- 4904316, 3539053, 1367410, -4727149, 8500277, 1051193, 3684545, -1226213, 4322885, -2327336,
- -91805, -295816, -293132, 3128884, 823560, 3070365, 4311611, 1140851, 3401077, 1275068,
- -1779190, -949188, 17180, 4168266, -2544231, 1289564, 121333, -854162, -4050691, -702227,
- 3240016, 2682744, 627065, 2553358, -1301375, -2037962, -373662, 242666, 1240172, -1927904,
- 375810, 1508070, 1644436, -278099, 1184874, -296890, 418222, -585726, -243203, 1588601,
- -1355599, -2290291, 499827, 474057, 774168, 1949378, 358093, -1023276, -942745, -2190970,
- 1115618, 512175, 354335, 892279, -316754, -441845,
- },
- {
- -380641, 1848447, 7288023, -934692, 850404, 1234266, 1894618, 1247688, 906238, 173946,
- -2402497, -1598265, -1866700, 11895986, -14882062, 2221035, 1673964, -4900558, -567473, -9171366,
- -2360085, 384400, -1584843, 3907883, 2429878, 605590, -484258, 5739150, -2485176, 702227,
- 1563905, -459025, 8448201, 7982734, 8090108, -4973572, -2068564, -2967823, -193810, -2968896,
- 3313567, -1896765, -6641630, -2633352, -6290517, 2733210, 1326071, -266825, 485331, -3746822,
- -1154273, 889058, -2221035, 877247, 839666, 756988, 2647847, 558883, -1571421, -540629,
- 1028645, -417686, -609349, 917512, -805843, -370978, -1551557, -2737505, -1508070, -187905,
- -2608119, 1817308, 465467, 322123, 797253, -508954, 1251446, 913754, 1611687, -1964948,
- 1130113, 893353, -31675, -1105417, -15032, -1506460, -1083406, 660888, -224949, -132070,
- -2641405, 832150, -337155, -535797, -1623498, 490700,
- },
- {
- -10873247, -67457832, -4970888, 28981902, 6393596, 4166118, -3425773, -5793911, -2839510, -901943,
- 9901510, -4018479, -2541010, -2675228, -1176284, -14544370, -11366631, 1395328, -4580046, 2097555,
- 558883, -9413495, 2472828, 1997160, -4510253, -770947, -1660005, 6158446, 7195681, 2147484,
- 1059783, -939524, -2532420, 2259153, 6536940, 3788161, 3369402, -2624225, -1961726, -5594195,
- -4602058, -3329137, -3845606, -1563905, -3667902, -2695092, -1549410, -3485366, -3157338, -1467805,
- 1280974, -4508105, 437550, -1164473, -1881196, 165356, -1347546, -2257005, 2543695, -1934346,
- 4095251, 2805151, -416075, 372588, 1806034, 1417876, -2378875, 2034741, 1321776, -3709778,
- 143881, 190589, 2527588, 1832340, -1148367, -1813013, 3855270, 2410014, -2049236, -2200634,
- 307627, 1246077, -981937, 1042066, 667331, 685584, -1129576, 461709, 814433, -749472,
- -386010, 680215, 893353, -804770, 513785, -664646,
- },
- {
- 817118, 23875724, 17569638, 3994857, 3549791, -377957, -2434710, 3758097, 6791954, -2390149,
- -2426120, -4881231, 976031, 971200, -4012036, -3008088, -7033546, -1286880, -2465311, 820876,
- 8701067, 989453, 2229088, 3812857, -6551973, -11631845, -3499325, 2607582, -3479461, -8833674,
- 238371, 6682432, -6730214, -3112241, 2141578, -245887, -6582038, -311922, -2616709, 3571802,
- -3157338, -2376728, 8212515, -4392678, -2659122, 8089034, 1596117, 9381819, 2231773, -1575179,
- 973884, 3266860, 839666, -554051, -531502, -1722282, -482647, 64425, -1373853, 3550327,
- 341987, -964757, -1684164, -969052, 2323041, 68183, -927713, -33286, -2906082, -1665374,
- 690416, -791348, -324807, 2644626, 259309, 1677185, -584116, 2590402, 860067, -277562,
- 522375, 173946, -383326, 896574, -17180, -150861, 1098975, 929860, 1349694, 28991,
- -1286880, 217433, 2225330, 455803, 1025960, 224949,
- },
- {
- 9667971, -18764712, -6197638, 4876936, -12139188, -9232569, 12132209, -3087545, 11878269, -5073430,
- -528281, 8045011, -10391673, -16935056, -18538152, 7585986, -969589, -6731288, 20167018, 3446175,
- 13596256, 3345780, 4817343, 2099165, -374199, -1537061, -1925219, -3046743, -9737228, 6982006,
- -4258997, -3709241, 2462627, 4022237, 2223719, -7334731, 2564632, -777926, 2574296, -67109,
- -6949257, 2580202, 4938676, -8790187, 1738388, 563714, -867047, 1245541, -2380486, 1825361,
- 652835, 5572183, 613643, -624918, 3414499, 774705, 3350075, -1481227, -1128503, -690953,
- -570694, 2118493, -2350421, -4496831, 28991, 1966021, 3867618, 1063541, 1316408, 562104,
- -2123325, -208843, 2449205, 4295, 2344515, 787590, 1778117, -2719788, -169114, 2570001,
- 981400, -1410360, -1101659, 239444, -736050, -1302449, 1753420, 602369, -94489, 845572,
- -440234, 908922, -474057, 925029, 1188095, -1644436,
- },
- {
- -1637993, 2137820, 5357972, 6243272, 6973953, 319975, -6897181, 20410758, 10465225, 8145943,
- 5669894, -2741800, 2665027, -1170379, -3305514, 521839, -2101313, -14817100, 4027069, -11528766,
- -4465692, -3935264, -738198, 9000641, -7534983, 1776506, 2984466, -5590974, -4722854, -3365644,
- 4524211, -4244502, -2000381, 1283658, 472983, -5109938, -3839164, 607738, 1902134, 6216965,
- -4775467, -4907000, 747324, -3121368, -82141, 6257231, -2040110, 877247, 5515275, 1059246,
- 3848828, -2976412, 163209, -2975339, -943282, -4672925, 479963, -2096481, 5688684, -3956202,
- 2235531, -4596689, -3307125, 912144, -5364951, 863825, 241055, -10201, 1956358, -977642,
- 1706713, -1169842, -4663261, 507880, 209380, -1499481, 1494649, -2200634, -3151969, 1487132,
- -402653, -1359357, 1031866, -1336272, -838592, -759136, 50466, -1190780, -385473, -1573569,
- 1706713, -1249299, -394600, -774705, -451508, -1133871,
- },
- {
- -15919833, 992674, 1547799, 1680406, -8126615, 16358457, 3307662, -484794, 3165928, -1546188,
- 2954938, 112743, 2836289, -10004589, -425202, 2374043, 8454106, 4763119, 3965866, 13692893,
- -2634426, -957778, 1162862, 2907693, -5425081, -146566, 1723893, 3597572, 1267015, -676457,
- 2863133, 2413235, -2197413, -923418, 8318278, 3701725, -3963718, -5705327, -1755031, -4176856,
- 2674154, -5996311, -2869575, -2975339, 813359, -5042829, 5612449, -8195335, -4351876, 1376537,
- 739271, 811749, -2172180, 2631741, 5672578, -3507378, -1185411, -847719, 1356673, -2018098,
- 4031901, 3944391, 4721243, 2586107, -3535832, 720481, 1047972, -2710124, -1045288, -1730872,
- 3405909, 1380295, -395137, 812286, 559420, 514322, 1386201, -4216584, -387621, 222801,
- 1879585, -728534, 2907156, -268972, 1908576, 637266, 913217, 2208150, 118648, -475668,
- -347355, 736587, 309775, 1409823, -621160, 623307,
- },
- {
- -947040, -22508312, -1984812, -7035157, 10076530, 2004139, 3407520, -3323768, -1658394, 1941325,
- 3457986, 4128001, 4079682, -14492830, 10942503, -2011655, -3076807, -3806952, -1657857, 1299765,
- 13284334, -734976, -2891587, 13502840, 3085934, 4108673, -5308580, -236760, -470299, 5714454,
- 9725953, -10741176, -4421132, 5005248, 2932926, 208306, 6545530, 485868, 5223217, -64425,
- -8565775, -7934415, 1509144, -4062502, 151934, -4038880, 5218386, 3460133, -4344897, -2885681,
- 3862786, 2131378, -787053, -2872260, -3623342, 6534256, 287763, -603980, 471910, 1510218,
- 734976, -4223564, 3946001, 1515050, 2870649, -1697586, 2223183, 1170379, -1238561, -2157147,
- 1053341, 1487669, 2616709, -1429687, -607201, -2336462, 2542621, -1468342, 163746, -1820529,
- -3758, -3446711, -955630, 2767033, -1339493, -2666638, 2419677, 3715147, -493921, -770410,
- -1016297, -468688, -748398, -416612, -84289, 1731946,
- },
- {
- -14136885, -11653320, -10477036, 14267881, -2300492, 6045704, 12283606, -9763534, 397284, -3045669,
- -2020245, -546535, 8810052, 4972499, -2390149, -1667521, 8759586, -14609868, -5739150, 886911,
- 2811056, -654983, -2170032, -6958384, 6459631, 4831838, 7731478, -8744553, -1447404, -5120675,
- -12234751, -7009387, 7424388, -1732482, 195958, -1900523, 4368519, 2771328, -712428, 2424509,
- 2617783, -1804960, 6034966, 4464082, 1393717, 648540, 1032940, 2506650, 2069637, 1928977,
- 1891933, 180926, -8631811, -3074123, 1931125, 693100, -1812476, -1183800, 1203665, -6425808,
- -1036698, -2280628, -699006, -1683090, -3138011, 169114, -723702, 1727114, 1023276, 4312684,
- -410706, -1240709, -919123, 2585034, -1411434, -1053341, 2037962, 2558727, -1702418, 1127429,
- -1714766, 5906, 195421, -1103270, -1818382, -953483, 710280, 1371705, -1421634, -483184,
- -1976222, -528818, -312459, 332323, 390842, 2775623,
- },
- {
- -322659, 22283900, 4957466, -2974265, 9268003, -1408212, 6158983, -2139431, -6279779, 4522601,
- -12085501, 10910291, 3661460, -2728915, -29188060, -11814918, -2316598, 463856, 2931852, -5390184,
- 7779260, -3100430, 7244536, 1365263, 9326521, -1031329, 3772592, -3944928, 13762149, 3832185,
- -3536906, 3674345, -1183800, 928250, 3877282, -250719, -1461900, 5011153, -2258079, 2040646,
- 2030446, 5214091, -2274722, -3924526, -492311, -1225139, -4039417, 1120987, 1478543, 939524,
- 2143726, 2566780, -2598455, 744640, 2434710, -820876, 4732517, 1306207, 1245541, 513249,
- 20938, 3825742, 2702608, 3546032, 2071248, 853625, 59593, 2051921, 936840, 3210488,
- -1572495, 1676111, 2806224, 1025960, -242129, 1010928, 1108638, -1894618, -1043140, -835908,
- 817654, -1701344, 686121, 734439, 3496104, -1876901, 1803349, -1242856, -3440269, -2703145,
- 649077, 1700807, 1158567, 1013075, 323196, -2011118,
- },
- },
- {
- {
- -2363843, 127644280, -21640730, -59046672, 10511932, -6772627, 3824669, -6783901, -4228932, -3855270,
- 13273060, 12599287, 8771934, 4127464, -7676181, 4419522, 6990060, 7339026, -1647657, 7989176,
- -6266894, -6469295, -7913477, -4484483, -71404, -999654, -2435783, 416075, -6673843, 2706366,
- -7052873, 5308580, -1869385, -3087008, -6337224, -3440806, 3998078, 156766, -1036698, -2649458,
- 1814624, 7135552, 4225174, 527207, -1001801, -1678795, 738734, 3874061, -983548, -2113124,
- 1318555, 2762738, -4824859, -4663798, -3289945, -1120987, -1657857, -5303748, -2643016, -1986959,
- -3458523, -1601486, 1080721, -393526, -277562, 1595580, 3151969, 1544578, 148713, -247497,
- -535797, -1027034, -898722, -1236951, -379031, 52613, 608812, 129923, 140660, -230318,
- 191663, -536334, -1933272, 1688459, 169651, -373125, -130460, 41339, 776315, -541703,
- 686658, 372588, 96637, -527207, -1570884, 411780,
- },
- {
- -92879, -9542344, 10978473, 28873454, 9984725, 1800665, 627602, -45634, 674847, 1899449,
- -317291, -4271882, -1260036, -5971079, 3044595, 3290482, 1813550, 2361158, 5918465, 10356240,
- 1438814, -3610994, 7155416, -1807108, 8241506, 1392643, -682900, -5034776, -5912560, -2263985,
- 5842230, 10453414, 74088, -4477504, -8081518, 3952981, -6660421, -4058744, 3008625, -2230699,
- 8382166, -949725, -3958886, -706522, 1051193, -2363843, -2639794, 4109210, -688805, -1132261,
- 1561221, -1765768, -2749316, -2132988, 2078227, -1147293, 1650341, 1090922, -2014877, 755914,
- 293132, 466541, -536334, -3113851, -107911, 466004, 969052, -221728, 517544, -2289755,
- 1019518, -713501, 337692, -1973538, -1799591, -1287953, -1323924, 201863, -210453, -495532,
- 1086627, 28991, -1116692, 1030792, 322123, -617938, -1461900, 763967, -1167157, 209380,
- 714575, 452582, 657130, -1159104, 833761, 82678,
- },
- {
- 3495567, -60686816, -8715562, 671089, 15889768, -4807679, 1144072, -2735894, 1602560, 7284265,
- 600222, -747861, 5192616, 43487, 6510097, -7209103, 13816373, 13723494, 3911105, -898185,
- -6806987, -7066832, 447750, 764504, 309238, 1337882, -1404454, 4671851, -2059974, 5734855,
- 3761855, 2818036, -9149891, 2120103, -3883187, 608275, -3307125, -9549860, 6410239, -252866,
- 2656974, -4794257, 9060770, -432181, 762894, 1377074, -4653597, -2067490, 3090229, 2072859,
- 5734318, -2234457, 1027571, -1535451, -329102, 260919, -4037806, -18254, -650688, 508417,
- -3104725, -1396938, 823560, 1698123, -154619, 1966558, -2765422, -95026, 1038845, 1836099,
- -107374, -1459215, 1142461, -954557, -664646, 1278290, -3314104, -1390496, -1187022, -1008780,
- -2168959, -479963, 1246614, -1212255, -164819, 494995, -1037235, -1461900, 329639, -458488,
- -1072668, 1226213, -175020, 282931, 2222646, 1360431,
- },
- {
- 11849278, -7276749, 9550934, 22057342, -2717104, -1436130, -5410048, 6349036, -4189741, 1388885,
- -10057740, 11446625, 5627481, 6884833, 721018, -4493073, 17662516, 3361886, 2762201, -7875897,
- 88584, -3911642, 3730716, -819802, 5916318, -157303, -2951180, 5776194, -737124, -1650878,
- 3920232, 1165547, 828929, 2007360, 527744, 3848828, 3493956, 7029788, 460098, -1187022,
- -4457103, -6463926, 1795296, -5662378, -3490198, 6451041, 595390, 1057636, 784905, -1246614,
- -1185948, 2843268, -2011118, 1003412, 3109556, 4823785, -311922, -603980, -952409, 2623151,
- -4664872, 34897, 1044751, -2032593, -3690451, -1249836, -731755, 1950452, 544387, -3221,
- 1538135, 1235877, -411243, 1149441, -1117765, 1460826, -2962991, 1970316, 269509, -484794,
- -416075, 319438, -1074279, 1172526, 715112, 322659, -701153, -255014, -572841, -407485,
- -978179, 759672, 787053, -1931125, 235149, 1436667,
- },
- {
- 1080184, -35730908, -223338, 6977711, 2303713, -1213865, -415001, -3817152, -7734163, -7190312,
- 1675037, -8407398, -638876, 6767258, 21582210, -15021111, 4726075, 6820945, -10211822, -1090385,
- -260382, 3137474, -4406637, 9102109, -3456912, 4738423, 3822521, 2702071, -2939368, -1619740,
- -3540127, -845572, 3419331, -3176128, -468688, -1490891, 2408940, 3233574, -1599875, -4706211,
- 1345399, -2982855, -2280628, -5311801, -1590212, 2107755, 1107565, 281320, -634045, -1298691,
- 1261110, 4930086, 4553739, -5302137, 425739, 2336462, 3904125, -3457449, 3758097, -1042603,
- 1582159, 1883343, -2687039, -2686502, -2890513, -916976, 2996814, -963683, -1307818, -1443646,
- -2806761, -850940, 1677185, 2086817, 1935420, -1031329, -675384, 810138, 1143535, 2082522,
- 2057289, -1176284, -483721, 1512365, 466004, -3011309, -339302, -205622, 677531, 81068,
- 1132261, -1374390, 987843, -617402, -413391, -56371,
- },
- {
- 15705622, 14900315, -10428717, 48681308, -9069360, 2302639, -1160715, 695248, 600222, -11821361,
- -2857764, 9804337, 3742527, -5326833, 4227322, -8363912, 4869419, 5135707, -8988293, -4384625,
- -6612639, -2242510, 3724274, 4469987, 5040681, -332323, -6576669, 2974802, 1819456, -6065568,
- -1554241, 1148904, 2688113, -7599408, 11335492, -836982, 572304, 916976, 166967, -4323959,
- -438624, -609349, 2214593, 2519535, -32749, 3031173, 5872294, 1715303, 1005022, -619549,
- 37044, 793495, -1905355, 1804423, -4709432, 926639, -1152662, -1362042, -2836289, -2796561,
- -1461363, 1591285, -928787, 862215, -977642, -106837, 71941, -1544578, 1403917, -2052994,
- -976568, 418759, -1020592, -1346472, 1069984, 684510, 3080029, 775242, 1605244, 2263985,
- 767189, 337692, 686658, -788127, -434865, 73551, 551366, 487479, -449898, -1334124,
- 257161, -326418, 572304, 849867, 665183, 835908,
- },
- {
- -567473, 6839199, 6897181, -5145908, 286689, 824634, 744103, 122943, 235149, -791885,
- -307627, -3696356, -2601677, 21616570, -7307350, 6205691, 5497558, 1443646, 1802276, 202937,
- 10230612, 4265440, -7683697, -887448, -5829345, -2185065, 6237903, 10902774, -559956, -4815195,
- -6721087, -5666136, 7228967, 128312, 1377074, -3337727, 1100049, -4847945, -1705102, -117038,
- 2560338, 1781875, -418759, 2223719, -4548371, -506269, -2227478, -3991098, -1022739, -2625836,
- 586263, 4454418, -3442953, -886911, -781147, -2130304, -481036, -1808181, -1431835, -1201517,
- 118112, -1506460, -3031173, 147640, -105227, 1292248, -1513976, -2155000, -664646, 2712809,
- -2195802, 1389422, 1103807, -73551, -226560, -1017907, 207769, -2333778, -44023, -1650878,
- 731755, 421981, 970126, -795106, 881542, -921807, -595390, 1018444, 127775, 581968,
- -1408212, 1101659, -754304, 897648, -774168, -112206,
- },
- {
- 16920560, -35576288, 4833986, 40130564, -2227478, -5578626, -3039763, 290447, 151934, 749472,
- -8053, 774168, 13193603, 4603131, 7262253, -13267691, -6658273, 1752347, -1488206, -1399623,
- 3671660, 212601, 1573032, -5971079, -4217658, 1567663, 1950452, 5745056, 7007239, 3346853,
- -1370095, -6444599, -7325604, -2930778, 7188165, 3793530, -89121, -1727114, -406948, -1232656,
- -233539, -618475, 304406, 2910377, -2963528, -1735167, 1106491, -447213, -487479, -2298881,
- 1771674, -3369402, 4225711, -1270774, -1695438, 941672, -214212, -1529008, 1208496, -2989297,
- 1744294, 1200443, -2353105, -2854006, 1334661, -390305, -354872, 2852932, -187368, -2210835,
- -1642288, -2361158, -397821, -660888, 267362, 1002338, 3182034, 415001, -1270774, -1348620,
- -208306, 778463, -2538326, -1251983, -718870, 1023813, -913754, 489089, -60130, -1162862,
- -369367, -199179, -424128, -1235877, 957241, 335544,
- },
- {
- -2582886, -15503758, -7168301, -3925063, -1329829, -1907502, -3394098, 1573569, 599685, -3716757,
- 3592740, -238908, 2079301, 10083509, -399969, 1332514, 9493488, 12712029, 1715839, 415538,
- 7949448, 3782793, 2243584, 5107253, -4691715, -10545755, -8753143, -2187749, 1260036, -3486440,
- 3302293, 6077379, -9277666, -6352794, 849867, 580894, -5005785, 1983201, -1320703, 4365298,
- -2310693, -6678674, 1367947, -5760088, -7143605, 3032247, 671089, 5393405, -1672890, -1340030,
- 2450279, 1707786, -180926, -2295660, -1643899, 2790118, 2435247, -645856, -3522410, 2115272,
- 834297, -2144263, -1812476, 2429341, 3882114, 496069, 260382, 1387811, -1316408, -749472,
- -109522, -1591822, 989453, 2660195, -674847, 1173063, -1151588, 1530082, -1227287, -2353105,
- -448824, -444529, -211527, 540629, -2252710, -2227478, -799401, -531502, 213138, -1216550,
- -1950452, -303332, 1171452, -806380, -659814, -737124,
- },
- {
- -10428717, -26589068, 13351443, 8613557, -3744675, 12291123, 29135984, -9050033, 2892661, -10228465,
- -3468723, 924492, -6022618, -2827162, -11477763, 3081102, -4326643, -9174050, 3833795, -252329,
- 14821395, -2640868, 4318590, -3242700, -2109366, -7495792, -8016557, -2288144, -2065879, 11141682,
- -6309844, -3004867, -693637, -155693, 2264522, -898185, 6342593, 2451353, 5911486, 7031935,
- -6427956, -6015102, 2541547, -7376070, -4218195, -6879464, 1278290, 5222680, -601295, -345208,
- 2250026, 10400263, -753230, -2605972, 1152125, 256087, 3044595, 1855426, 821413, -336618,
- 7516, -5906, -3789772, -2680060, 1321776, -762894, 363998, -2178622, -1145146, -1277753,
- -2430415, 614180, 1296543, -1677722, 628676, -1008780, 491237, -2501819, -398895, 1824824,
- 401043, -504659, -888521, 606664, -721555, -3837017, 135828, 1808718, -1103807, -695248,
- -255551, 964757, -1664837, -676457, 835908, -1366337,
- },
- {
- 3234647, -8856223, -9630927, 900869, -3187940, -3311420, 2543158, 6711424, -14931454, -7878581,
- -2641942, -4695473, 6927246, 3047816, -6795712, -855772, 2101850, -9521942, 2541547, -2340220,
- 16653199, 8618389, -603443, 8659191, 1587527, 8318278, 4560182, -2858301, -2219961, -3567507,
- 6636262, -2015413, -2697776, -598611, 3106872, 2545305, 6877854, 5313412, -2013266, 882616,
- -2580739, -3458523, -1323387, -623844, 3221762, 3727495, -4430796, 5602785, -1611, -8385924,
- 1727114, 2280628, 4080219, 1894081, 4818954, 2590402, 4147865, -1410360, 6460705, -2893734,
- 1967095, -4613332, -1458678, 1412507, -5425081, 1695975, -3167002, -4505421, 570694, -459025,
- 867583, 368293, -2857227, 616865, -104153, -1865626, 1133871, -440771, -3220689, 575526,
- -83215, -1819992, 1444720, -433255, -1454920, -988379, 622233, -1471026, -636192, -1797981,
- 1517197, -751619, 147103, -181462, 221191, 799938,
- },
- {
- 10313827, 45134200, -3615826, -3078418, -13245142, -17444010, -14390288, 4370666, 5020817, -8417062,
- -3542811, 3066070, 520765, -27486716, -14261439, 297427, 960462, 254477, -7300371, 1238561,
- -8610873, -1550483, -956167, -613107, -8581882, -10888816, -8488466, -434865, 3996467, -2047626,
- 2217277, 3036005, 3303367, 2872260, 6597607, 4304094, 3783866, -387621, -3114388, -6376416,
- 5389647, -8383240, -2211908, 967441, 1742146, -3687230, 10251013, -4529580, 8053, 985695,
- -8893267, -3381213, 1223529, 3728569, 1724966, -5388574, 340913, -774705, -1881196, -3026878,
- -208843, -265214, 1233729, 384400, -909459, 3555696, 1708860, -3989488, -460098, -2953327,
- 665720, 688805, -2383707, -2281165, -2159832, 746251, 2170569, -3430068, 1362578, 1256278,
- 352724, -3599720, -621160, -768799, 67646, -1270774, -120796, 774705, -6442, 191126,
- -276489, 292595, -335544, 1315871, -935229, 1057099,
- },
- {
- 1440962, -23886460, -7018514, -7219840, 11009075, -3327526, -899259, 693637, 1684164, -1395328,
- -2050310, 6978785, -951335, -31817118, 5048734, 3508988, 7477001, 1909650, -5216238, -2922188,
- 341987, -5157719, -9738838, 501974, -1309428, -8735963, -11126650, 4463545, 2194728, 8526047,
- 14522895, -9008694, -194347, 367220, 2055679, 1045288, 1169305, -3502009, -1998234, -10319733,
- -6506876, -1953136, 3820374, -1817308, -92879, -5748814, -725313, -3055332, -2638184, -1795833,
- 3788698, 1727114, 751082, 1880659, 187905, 4529043, -1859721, -2051921, -1675037, 3838627,
- 3467112, -2572686, 2796561, -340913, 4000762, -599685, -1039382, -54224, -321586, -2396055,
- -2988224, -300111, 1442035, -617938, 802085, -1449015, 1594507, -1429150, -720481, -1569811,
- 1766842, -556735, 442919, 2761127, -1578401, -2199560, 1652489, 1267015, -385473, 888521,
- 1465121, 1039919, -1268626, 174483, -675384, 627065,
- },
- {
- 12159589, 32499480, 1376000, 17656074, 1067299, 1076963, 7223062, 3196530, 13938779, -5342403,
- -2302103, -9853729, 5685463, -1279900, -15586973, 6254546, 9647033, -13940390, 251792, -2951180,
- -6196564, -3261491, 3308199, -2683281, 9754408, -1134408, 3105798, -2720325, -2649995, -10558103,
- -5209796, -2171106, 4188667, -1123671, -540092, -5026186, -2127620, -4817343, -3808026, 27917,
- -3546569, -3141232, 6562173, 5615670, 1591822, -49929, 1067299, -75699, -4741644, -5369246,
- 1591285, 4976257, -2671470, -1293859, -3133179, -207232, 654446, -941135, 4015795, -2366527,
- 4352413, 479963, 1327145, 2701535, -1508070, 2442763, 1216013, 1612760, -802085, 1316408,
- -1357210, -892279, -1097901, 1081258, -340913, 816581, 3056406, 1689533, -345208, 2711735,
- -1918240, -1117765, -797790, -738734, -668941, 222265, -221728, 552977, -1110786, 294742,
- -1205812, -1046898, -791885, 748935, -1047972, 1379758,
- },
- {
- 2301566, 17746804, 270046, -4286378, 570157, -6452652, 10662256, -2595771, -8275328, 2201171,
- -8444443, 12979928, 1660005, 23677080, 37985228, -2976949, -1038308, -5433134, -3001645, -1617592,
- -1719061, -7850664, 3245922, 3707094, 14679124, -8590, 9740449, -2249489, -1874753, -607201,
- 1610076, 2705830, 2789045, 3360812, 12666395, -5108864, -5597953, 9736154, -2993055, -22012,
- -760209, 3474629, -121870, -852014, 1897302, -3686693, -2141041, -948114, -6866579, -2595234,
- 1450625, -4827007, -5427228, 2119566, 1318555, 200790, 3294240, 1967632, 3231963, 1216013,
- -3223910, 586800, 387621, -142808, 3221, -517544, -3364570, -1748052, -1509681, 2254321,
- -797790, 1101659, -2851858, -3587908, 292595, 1401770, 2184528, 126702, -627602, -1983201,
- 836445, 1271847, 1541893, -1734093, 532576, -1685775, 1459752, -2219961, -1514513, 111669,
- 1262184, 985158, 527744, -100395, 624918, -841814,
- },
- },
- {
- {
- -870268, 87214680, 15567109, -48448840, 2786897, 2233920, -4189204, -6790880, -3788698, -1385127,
- 7592429, 12568685, 13850733, -4987531, 2647311, -2080375, 7320235, 6718940, 9084930, -5076115,
- 801548, -6430640, -8850854, -3103651, -4985384, 1605244, 4351339, -7723425, -4629438, 308701,
- -1280974, 258235, -4463008, -3364033, -6131066, -3409667, 3067144, 1755568, 404801, -6130529,
- 4379256, -1149978, 6132140, 1403917, 5159867, -2292439, -1942936, 3270081, 610422, -319438,
- -3017215, 4580583, -3528853, -7297150, -2218351, 361314, -4133906, -4089883, -3714610, -3565360,
- 49392, -1131187, -1378685, -394600, -1270774, 1626182, 3754875, -915902, 105227, 230854,
- 46708, -1723893, -906775, 228170, -1925756, -70867, 1057636, 1090385, -1214402, 220654,
- 638876, -671626, -846645, 348429, 161061, 683974, -1631551, -960462, 2385854, -923955,
- 946503, 701153, -65498, 59593, -872952, -1127429,
- },
- {
- 997506, 21963390, -10499048, 25032680, 6158446, 641561, 3398930, -2733210, -690953, 1734630,
- -3623879, 360777, 4052839, -4181151, 1211718, -2880849, -2653753, 5898064, 16948478, 2601140,
- 4029753, 6423661, 4546760, -5639829, 2418604, 5481452, -6163815, -476205, -3715147, 994285,
- -1964948, 13140452, -1143535, -5405217, -6599754, 1690607, 1848983, -6585259, -1928440, 4632659,
- 3821447, -1562294, -4608500, 4111358, -4196720, -301185, -1981591, 5853504, -2027225, -2020245,
- 603443, -1820529, 1078037, -6409702, 4649839, -680752, 3437048, 716723, -3919695, 3360812,
- 504122, 311385, -3549791, -1146219, 535797, -147103, 669478, 180926, -2686502, 492848,
- 185757, -79994, 376347, -1171989, -2917357, -833224, -1123671, -778463, 1893007, -1020055,
- -75699, 1106491, 476205, -890669, -530428, -342524, -769336, -1387274, 595927, -231391,
- 1089311, 351114, 513249, 386010, 279173, -1582696,
- },
- {
- -2472828, -68286224, 8141111, 25946972, -13168907, -628676, -6312528, -1481227, 6426345, -3213709,
- -1552094, 13375065, -230318, 10672457, -312996, -4733054, 14894410, 4020090, 12874701, -3211562,
- -7817914, -6598144, 4863514, -2508798, 2181844, 1743220, -4810364, -1135482, 2220498, 7457674,
- -3359738, 8197482, -8105677, -2738579, -2542621, -4181151, 3062849, -6965900, 584116, 2757906,
- -1222992, 2035278, 3532074, 1847373, 161061, -142271, -1192390, -439697, -1052267, 2608656,
- 791885, 1339493, -2139968, 1468879, -2302103, -543313, -1349694, -1891396, 1411434, -2700461,
- -565862, -2002529, 3252901, -559956, 103079, 675384, -1505923, 436476, 6442, 2595234,
- -28454, -597000, 1480690, -1969243, 620623, 935766, -798864, -2806224, -1404454, 600759,
- -2832531, -942745, 748935, 91805, -592706, -634581, -1233729, -1217623, -386547, 1030255,
- -756451, 210990, 367220, -937377, 2419677, 403727,
- },
- {
- -11299522, 22217866, 11862700, 25817048, -7056632, -3822521, -1523640, 1634235, 3711926, -5565741,
- -8653285, 15908559, -321049, 4167192, 9921374, -7815230, 14669998, -1150514, -1815697, -6599218,
- 2876554, 3364570, -2408940, 3731790, 1397475, -1531156, 1820529, 1410360, 6037651, -7736310,
- 3950296, -2039573, 10740103, -467615, -2225330, 6282464, 1639604, 3402151, 2762738, 1496259,
- -6483790, -4500052, -1610076, -5107790, 1545651, 1605781, 2163053, -1140851, 2155537, -3956202,
- -1451699, 203474, 1187559, -1398549, 3246995, 5111548, 4522064, -4895726, 2605972, 877784,
- -911070, -3059627, 235149, -1102733, -3134253, -2058900, 1035624, 925565, 2710661, -2003065,
- 2482491, 323733, 700080, 1219771, 274341, -261456, -3061238, 860604, 1133335, -1395864,
- 1079647, -128849, -2017561, 1835562, 1025960, 1075889, -257161, -790274, -368293, -734976,
- -437550, 392990, 594853, -379031, -1231045, 2542084,
- },
- {
- 164283, -29047938, -2076617, 6350646, 3074660, -493921, -1585380, -11111080, -2611877, -4547834,
- -423054, -9606768, -1356136, 6962142, 21621402, -9988483, -5881958, 17926120, -9825811, -4981089,
- 3073586, 5024575, -4832375, 5177583, 6992207, -1555315, -5550172, 7999914, -2641405, -8575439,
- 947040, 5381594, -7765301, 4935455, -270583, 3547643, -5760625, 8186745, -2089502, -163746,
- -4173635, 2965138, -7766375, -5895380, -74088, 3252901, 3426310, -1458141, -1487669, 488016,
- 1323924, 3473018, 216896, 1282585, -1144072, 3866008, 3249143, -1887638, 1026497, 847719,
- 1270774, 988916, 249108, -5973763, -1597191, -2902861, 5149129, -3267396, 1673964, -2389613,
- -2657511, -11811, 1545115, 2847563, 870805, 52076, -1271847, 1087701, 1634772, 289910,
- 1460289, -319438, -1008244, 860067, 376883, -1115618, -1997697, -19864, 1613834, -413391,
- 123480, -1069984, 599148, 630286, -1479079, 541703,
- },
- {
- -11760694, 50627464, -2930242, 41247792, -547608, -2482491, -376347, 4585952, -11037529, -1178432,
- -9999758, 11664057, 1268089, -4060892, -104690, -3750043, 4385162, -2780455, -6140730, -5308580,
- -4024384, 1469953, 4722317, 4285841, 2275796, -92342, -4048544, 3714073, -4937602, 1420560,
- -3659312, -1073742, 6758131, -8953396, 6605660, 3415036, -3786551, 3787088, -3940096, -1167694,
- 2051921, -2689723, 3400540, 2223183, -1344325, 3999152, 6310381, 1663226, -1792612, -497679,
- 1833414, -1358820, -2100776, -844498, -476741, -151934, -2568927, -1637993, -3117610, -707596,
- -3864397, 2158221, 884226, -1806034, -484258, -492311, 1584306, -12885, -653909, -206158,
- -2907156, 766115, -2105071, -858457, 619012, -200253, 4697084, 271657, 2108829, 813359,
- 1461900, 1351841, 427349, -750546, 105227, -1248762, 654983, 1802813, -925565, -923955,
- 489089, -706522, 676994, 784368, 808528, 975494,
- },
- {
- 1611, 15441481, -9411884, -3137474, 811212, 1340030, -912681, 788663, -925565, -3685082,
- 6175089, -10560788, 5749888, 3707094, 714575, 7466264, -5816997, 16810502, 61740, 6502044,
- 11133629, 1921461, -5773510, -944356, -9088688, 2732673, 5425618, 2435783, 3030636, -4301947,
- -1407676, -5487358, 2763275, 1734630, -3277597, -3735011, 754841, -3580392, 985158, -768262,
- -4318590, 6912213, 3366718, -1000727, 222801, -2709051, -5137318, -1314797, -1708323, 521302,
- -268972, 3320547, -3478387, -1365800, -3192235, -2144799, 1717450, -2205466, -1341104, -3685082,
- 2182380, -1475858, -2458332, -1034550, -67109, 2513630, -2647311, 682900, -2726767, 3308199,
- -407485, 85362, 1991791, -1954210, -656056, -363998, -915902, -1950989, -38655, -994822,
- 2124935, -1722819, 1953136, 63351, -821413, 217970, 340376, 259846, 563714, -129386,
- 149250, 224412, -446677, 245887, -387084, 228707,
- },
- {
- -20530480, 12527883, 7493108, 41967200, -850404, -1520418, -12817793, 7834021, 1539209, -1264331,
- -16048682, 7550553, 23056996, -4939750, 11444477, -6802692, -1741609, -2070711, 3985730, 1224066,
- 565862, 1732482, -855772, -9330816, 630823, -4235375, 10358924, 4253628, -1447941, 7836705,
- -1082332, -8680666, 1640678, -5938866, 3264712, 2678986, -3406983, -222801, 935766, 848256,
- 99321, -2515240, 3235721, 2311229, -1393717, -4686346, 1704028, -1094680, 3306588, -3930432,
- 1603633, -1384590, 4399121, -1080184, -776852, 1692217, 2392297, -5213017, 1529008, -1054951,
- 569083, -2321430, 413927, -4514548, 959388, -1525250, 4025458, 966905, -3457986, 1220308,
- -1198296, -2193655, -3498251, 68183, 1379758, 1285269, 818191, 304406, -616865, -450435,
- -570694, 621160, -2605972, -1334124, -849867, 26844, 1115618, -744640, -563178, 452045,
- -712965, -267362, -705985, -2001992, 861141, 724239,
- },
- {
- -259309, -26332982, -8648990, -8605504, 1113470, -326418, -2428267, 2629594, -7893076, 405338,
- 3260954, 4277251, 1778653, 3894999, 7548942, 22163104, -1257889, 2442763, 5741835, 7384660,
- 3046206, 4021163, 226023, 2628520, -1911797, -1002338, -9119289, -6129455, 5694053, -1620276,
- -3062849, 6393596, -2398202, -2828773, -5854041, -6062883, 2203855, 2151779, -2457795, 2773475,
- -5650030, -2939368, 231391, -2377265, -4580046, -5153961, 5786395, 2630668, -1684701, -369904,
- 3854196, -337692, 85362, -4049617, -2375654, 3959423, 1110786, -2000918, -1765232, 4400194,
- -799401, -2595771, -750009, 2737505, 3276523, -1099512, -39192, 4516158, -2294586, -2313377,
- -1137630, -957241, 3296388, 461172, -1220308, 440234, 663036, -925029, -658204, -1957968,
- -809064, 32749, -732829, 202400, -1942399, -1255741, -1515587, -360777, -609885, -1307818,
- -2035815, 1221918, -955630, -176094, -1737851, 143345,
- },
- {
- 11231339, -40130564, -3810173, 9766219, 15793132, 7310571, 8593156, -3550327, -1366873, -4594542,
- -5636071, -15223512, -1787243, 5492190, 3384434, -8644695, -6547141, 3336653, -4945655, -2439542,
- 9739375, -2703682, 6597607, -3347927, -8968429, -3189550, -10143639, 177704, 3175055, 1301375,
- -2110977, 3257196, -5734855, 111132, -628676, 7780334, -230854, 4462471, 7180112, 3222299,
- 1219234, -8096014, -5545340, 1995012, -3232500, -12000139, 663036, 1779727, 2170032, 4998268,
- -2442226, 10676752, -927713, -3349001, -569083, 2048699, 2337536, 1918777, 14496, 1343251,
- -2058363, 3206193, -2430952, -2710124, 1711008, -1424319, -1750199, -1231582, -2067490, -1512902,
- -2840584, 2267206, -2927557, -159988, 1118839, 1568200, -2865280, -1320166, 960462, 1433445,
- 2079301, -2196876, -2851322, 2924336, -675921, -3736622, 1821066, -686658, -1585380, -709207,
- -228707, 44023, -69793, -1174674, -191126, 558883,
- },
- {
- -2763275, -17200808, 12770548, -4380330, -5608154, -11532524, 14397804, 3408057, -18065170, -10989748,
- -3586298, -1693828, 1944010, 6658810, -10513006, 6642167, 1816771, -1122060, -5252745, 2132451,
- 9644886, 6372658, 6446746, 4683662, 8855686, 4240207, -1991254, -1148904, 1938641, -226023,
- -2251637, 6018323, -1401770, -12250857, 3608310, 5218922, 7991324, 7545721, -9127, -3752191,
- 1411971, -5055714, -5588290, 6005975, -2268817, 4029216, -3952444, 6742562, -711354, -3956202,
- -2509872, 3661997, 2642479, 5705864, 2962454, 6778532, 54224, 1574642, 2885681, -597000,
- 1807108, -5181341, -970663, 979789, -1937567, 219043, -1675037, -5461588, -806917, 1773822,
- -1711008, 1924145, -1319092, -819802, -440771, 1249836, -1094143, 1053878, -2780991, -1216550,
- 517007, 919660, -2277407, -120259, 44023, 61740, -902480, -290984, -1874216, -310848,
- 63351, -311922, 83215, -658204, 38118, 639413,
- },
- {
- 2195802, 62867584, -13495861, 7122130, -5264556, -49113488, 218506, 613107, 6105833, -3226594,
- -19768660, 14983530, 3469797, -26698054, -18896782, 4270271, -11725261, 257698, 3224984, -9191230,
- -9457518, -3828963, 249645, 1311039, -1697049, -9670119, -6042482, -10955925, 7071664, 257698,
- -4730370, 4494684, 8049306, 3278134, 3017215, 5991480, -199179, -2357400, -805306, -3519189,
- -459025, -1302449, -57982, 558346, -2603824, 4270808, 4705674, -3777424, 3857418, -1333051,
- -8205535, -6277095, 1377611, 4716411, -785979, -4602058, -448287, 3746822, -4611185, 345745,
- -3533684, -406411, 1091995, 477815, -801011, 3795141, -1821066, -3088618, 1287953, -649077,
- -1015760, 220654, -1717987, -2076080, -4976257, 2210298, 1089848, -748398, -705448, 2677375,
- -1687922, -3241090, -1663763, 56908, 89657, -941672, -200790, 102005, -370978, 943282,
- -632434, 456340, -23085, -814433, 383863, 474594,
- },
- {
- -303332, -22381612, 38655, -5877663, -1008780, 4791036, -6616397, 7948911, -2207613, 3528316,
- -7271380, 7093139, -12714177, -25643102, 13115220, 7004018, 4345970, 287763, -6347962, 6899865,
- -10169946, -11647951, 2036351, -5116380, -8388608, -2736431, -8813273, -5987722, 15868294, 323196,
- 14584098, -4556961, 2345589, 430570, 949188, 1805497, 1756642, -4374424, -7973607, -7482907,
- -3656628, 974958, -1730335, 961536, -2122788, -2783139, -2090575, -6240588, 4035122, -1865626,
- 1231582, -2774549, 2967823, 1962800, 4947266, -3503083, 2443837, -639413, -2285460, 7215008,
- -358630, -3849901, 2578591, 1722819, -658204, 1257889, -666257, -2497524, -102542, 2442226,
- -5587753, 394600, -621697, 1491964, 54761, 849867, -1219771, -413927, -3257196, 2317672,
- 286152, 1217623, 257161, 2790118, -2300492, 760746, 248571, 1084479, 482110, 191126,
- 2292439, 344134, -2113661, -368293, -250182, 868657,
- },
- {
- -4783520, 53465364, 9924596, 10215580, 1756105, -1898912, -2229625, 13473849, 8095477, -6375342,
- -1115618, -17853642, 3265249, 8977555, -20145544, -3783329, 5137855, -28991, 200790, -6193880,
- -11556146, 722091, 3279745, -1398549, 7509214, 5108864, -3165391, 5439039, -47782, -14692546,
- -5881958, 1270237, -889058, 5042292, -8590, -3063386, -10184978, -5759015, -3138011, -850940,
- -5982353, 5718749, 1566589, 7365332, -2266132, 1451699, 3856881, -2364916, -7588671, -3590593,
- -71941, 3069291, 4313758, -3120294, -1816234, -4246112, 3910031, -1421097, 3997541, 585189,
- 2645700, 321049, 603443, 3318399, 986769, 2562485, -1350767, 1352378, -148713, 972810,
- -2674691, 529355, 287226, -2313914, 508954, 2108829, 3240016, -828392, 1214402, 2239826,
- -697395, -2844879, -2684892, 1749662, 55298, 1175747, -1792075, 792958, -61740, 811749,
- -565325, -1874753, -1611150, 1145146, -644782, -583579,
- },
- {
- -2646237, 21931176, -44023, -1585380, -3630858, -1787243, 6892886, -3412352, -3628174, -6932614,
- 7099044, 3216394, 4334696, -23105314, 84049824, 7576323, -6302865, 7916699, -17535814, 1960653,
- -8795556, -3354906, -7590818, 14457934, 2218351, 9772124, 3937948, 7126425, -4895189, 456877,
- 144955, -3373697, 8230231, -1431298, 14392972, -9288941, 4883915, 5978595, -2850785, -1425929,
- 1383516, -314606, 4543002, -3129421, 2345589, -1289564, -1599339, 2322504, -9366787, -6290517,
- 4320200, -6965900, -5795522, 3333968, -617402, 310311, 395137, 3482145, 3848828, 1939178,
- -3044595, 748398, -3474092, -384936, -661962, -96637, -4080756, -20938, -1946157, 1513976,
- 1082869, -1168768, -1981054, -2783676, -748935, 2119566, 1319092, -358093, -129386, -982474,
- 1037235, -118648, -1004486, 132607, -1409823, -554588, 577136, -1556926, -1915019, 2698313,
- -135828, -195958, 1173600, 63888, 81604, 234076,
- },
- },
- {
- {
- 3034931, 82389280, 2923262, -7816304, 29253560, 287226, -3659312, -4083440, -3837553, -2675765,
- 5233418, 7412577, 2135136, -6324340, 1398549, -5138392, -4886599, -755914, 6649683, -4905927,
- 5509370, -1412507, -219043, 8103530, 2694555, -488016, 3537979, -4178466, 2906619, 1286880,
- -2733210, -4153770, -4907537, -2794950, -7850664, -3262565, 65498, 3757023, 2544231, -5247377,
- 2057289, -6932614, 5818607, 5440113, 8352101, 811749, -1757715, 1512902, 3084860, 3312494,
- -198642, 3736085, 1277753, -991064, -1273458, -899796, -3684008, -417686, -1819456, -1133335,
- -1835025, -3110630, -2943126, -2665564, -4291746, -4015258, 1112933, -2287607, -1147293, -1018444,
- -715649, 289373, -442382, -945967, -2254858, -922881, -22549, 1488743, 332323, 2224793,
- 1838783, 790274, -637803, 558883, -485331, 825707, -503585, -723702, 2548526, -381178,
- 745177, 276489, 258772, 683974, -473520, -1459215,
- },
- {
- -677531, 41180148, 8926553, -11986180, -20994338, 2313377, 2544231, -5867462, -2924873, 1495186,
- 3322157, 3391951, 659278, -5562520, -1231582, -5632313, -5294621, -3425237, 1964411, -9676024,
- 9940165, 7993471, -1693291, 1615982, 9942849, 6776922, -7890929, 2843805, -462246, 1394254,
- -5941551, 12402255, 2293513, -3043521, 1755568, 5284958, 4938139, -1613297, -1367947, 1928977,
- 1444720, 1687922, -3508988, -147640, -9890236, -979789, 1819456, 4396973, -4914517, -2537252,
- 2918430, -8590, 7445863, -438087, 3317862, -2314451, 2560338, -10201, -6832756, 882616,
- 4130148, 2654827, -2416993, -2236067, -2142652, 297427, -93952, 763430, -3228205, -71941,
- 232465, -681826, 598074, 876173, -1194538, 291521, -740345, -942745, 3962107, 532576,
- -1256815, -195421, 329639, -1817308, -915902, -37581, -663572, -544387, 1498944, -1454383,
- -653909, -88584, 883153, 814970, -86973, -1832340,
- },
- {
- -496606, -78569448, -1372779, 53767084, 5677410, -2093260, -8383240, -7268696, 564251, -6489696,
- 4276714, 19036368, 1409823, 6726993, -6624987, -3224447, 14682346, 3838627, 14650133, -1054951,
- -5369246, -7124814, -205622, -4010963, 6999723, 1472637, -8220031, -1469416, 3820910, 3246995,
- -9982578, 11899744, -338766, -2243584, -4743792, -1209570, 5765994, -11042898, -6545530, 2330557,
- -45097, -185220, -3600256, -1963874, -3067144, 290984, 2387465, -4735739, -8227010, -1604170,
- -4359929, 231928, 416075, 980326, -2896956, 379568, 630823, 1510755, 6577743, -1318018,
- 2777233, 4249334, 4715874, -1555852, 1131724, -926639, -1483911, 2451890, -420370, 813359,
- -1470489, 122407, 2729452, -696322, 472446, 951872, 1793686, 1205275, 1195612, 2207613,
- -1002875, -140123, -1088237, -705985, 277562, 563714, -143345, -781684, 372588, 1883343,
- 178241, -943819, 176094, -815507, 2044404, 715649,
- },
- {
- 6525129, 41894184, 5248450, 36357436, 177167, -3074123, 2104534, 399969, 1785633, -6139119,
- -12028056, 3590593, -3463891, 1363652, -3046206, -18587008, 3356517, -13723494, -7256347, -4747550,
- 7754027, 4895189, -2706366, 494995, 5262409, -1445257, -2328409, -5889474, 5671505, 596464,
- 387621, -5052492, 11672647, -2784213, -303332, 5458367, -3040300, -3142842, -3676492, 3437585,
- -723165, -2709051, -2733747, -2242510, 2169495, -2306934, 2195802, 1288490, -426276, -4742718,
- -916439, -1595580, 2297271, -1061394, 1271310, 2001455, 3491272, -626528, -123480, -1673964,
- 4391067, 1432909, 1393180, -44560, 1881733, 827855, 2161979, -1125818, 1639604, -412854,
- 608812, -1679332, -57445, -978716, -801011, 1149441, -644245, 217970, -401579, -641024,
- 2725157, 761283, -1952600, 351114, 133144, 28991, 263067, 430570, 191126, 900333,
- 925029, 927713, 827318, 1025423, -419833, 1118302,
- },
- {
- -1551020, -25347286, 326418, -1586454, -2001992, 12885, -1668058, -7806103, 1669132, 1567663,
- 5110474, -8040179, -4084514, -1090385, 21724482, 1680943, -11515344, 7809861, -4374424, -11843909,
- -8508330, 5148592, -10133438, -4880157, 1115618, -13124346, -3673808, 16049756, 677531, -7983808,
- 4042101, 9744207, -8410620, 7187091, 3837553, 2498597, -6717329, 4728759, 4430259, 9075803,
- -6559489, -2026688, -3351685, 71941, 1240709, 2726231, 4917201, 1907502, 2550674, 3016141,
- -1526861, -1500017, -762357, 6011344, -383863, 1859184, 2043868, -609885, 1479079, 2100239,
- 2061047, -983548, 2008434, -31139, 3045132, -1755031, 1768990, -6184216, 563178, -741419,
- -1218697, -2006287, 264141, 1256278, -1510218, -651761, -1931662, -79457, 2486249, 196495,
- -253403, -1074279, -1274532, 932545, 55835, -275952, -934155, -330712, 1501091, 9664,
- -144955, 398895, 1752347, 933619, -927176, 744103,
- },
- {
- 2048699, 64054604, 1413044, 42819752, -110059, -3811247, -615791, 11398306, -11469173, -608275,
- -15646029, 2909304, 881005, 2884071, 4573604, -7962870, 1496796, 146566, -232465, -4389994,
- -3907347, 7057168, 8119636, -1823751, 1643362, 1644436, -2056753, 2916820, -5619965, 4071629,
- 1542967, -30602, 5443871, -3444027, 4232154, 2613488, -5992016, 265214, -388158, 3313031,
- 5433671, 332860, 1992328, -1447941, -4148939, 2364916, 3113315, 1533840, 868657, 2250026,
- 2004139, -6530498, -4217121, -2078227, -635118, 148176, 1414118, 807991, -2024003, 2440615,
- -849867, 739271, 1958505, 679142, -1723356, -2201708, 3267396, 2307471, 20401, 1080721,
- -680215, 2649458, -1810329, -2044404, 153545, -488553, 2516314, 505732, 2437394, 290447,
- -151934, -711891, -1205812, -723702, 279710, -1452773, 661962, 1919314, -463320, -342524,
- 1923072, -588411, 1087701, 1379221, -304406, 58519,
- },
- {
- 552977, 17011828, -6918656, -3478924, -1281511, 1642825, -924492, 1714229, -346282, -3060701,
- 4316979, -11050414, -601832, -6454262, -5847061, -2508798, -15429133, 13615046, 4356708, 6468221,
- 3235184, -6555731, -3616899, -3325379, -9951439, 2496987, 6688338, -1789928, 3565360, 2135673,
- -5007395, -4667019, -8126078, -6044630, 664646, -3134253, 918586, -3364033, 3926674, 2009508,
- -978716, 5784247, 347892, -3404835, -2014340, 351650, 1881733, 5276904, -332323, -2157684,
- -3558917, -758599, -1428614, 1509681, -121870, -2040110, 4096862, 1454920, -3049427, -3231963,
- 3725347, 452582, -783295, -1512365, -1838783, 828929, 341450, 2623151, -2168959, 2063195,
- -1285806, 1119913, 1634235, -2326799, 1339493, 688269, 938450, 1156957, 2472291, 544387,
- 3024731, -323733, 1211181, -852014, 127238, 1549946, 799401, -1666984, -1621350, -565862,
- -553514, -320512, -931471, -220654, -197569, 586800,
- },
- {
- 17542258, 61333208, 10848014, 30108258, -22590992, 2408940, -28755880, -3603478, 2084133, -5695127,
- -7450695, 4494147, 13788993, -5696201, 10823854, 2342905, 256087, -7027640, 4604205, 8555038,
- 245350, -1297617, 5105643, -3562675, -5266704, -7017977, 3185255, 2335389, -1172526, 5365488,
- -3305514, -7618198, 8262980, -4321811, 1779190, 3308199, -4279398, -2486786, 2607045, -367220,
- -3223910, -3905736, 3173981, 3001645, -3750043, -7110855, -1086627, -2568391, 5289789, -5030481,
- -480499, 1217623, 3959960, 4215511, 2911451, 586800, 4852240, -3689377, 2646774, 1675574,
- 1851131, -2208687, 2859911, -3411278, -41339, -2271501, 337692, -547071, -3229279, 490163,
- 1762547, 1033477, -1394791, 1398012, 2136746, 765578, -1671279, -1918240, -792958, 1454920,
- -214212, 179315, -423054, 735513, -426812, -477815, -244813, -1686848, 308164, 2404645,
- 857383, -836982, -803696, -1272384, 365609, -1249299,
- },
- {
- 2316598, -1928977, 3804267, -2222109, 6912213, 676457, -206158, 3682935, -5472862, 1806034,
- -2091112, -2014877, -8714489, -112206, 15744813, 24502252, 10756209, 9182640, 3821447, 9595494,
- 3808562, 5792301, 2306398, 2750927, 2565169, 12703440, 1124208, -821949, 9445707, 2392297,
- 2132451, 11214696, -4243965, -8830453, -10566156, -10969346, 2554432, 8153459, -1251983, 3726958,
- 3748970, 1880659, -3214246, 2248416, 2350421, -6860674, 82678, 95026, -93952, 2210835,
- 3383361, -1846836, -1476395, -1525250, -2224793, -896574, -593242, -1195612, 1788317, 5209796,
- -2097018, -1397475, -1193464, -2174327, -2811056, -4424890, -3189550, 2352568, -1971927, -2049236,
- -1894081, -479426, 3041374, -1044214, -438624, 332323, 688269, -1508070, -736587, -1234803,
- 122407, -20401, -291521, 903017, -1084479, 66035, -391916, 1219234, 1336272, 445066,
- -1143535, 1203665, -1804960, 427886, -694711, 1245004,
- },
- {
- -12380243, -65915936, -1963874, 2170569, 11618423, -11657615, -10644540, 1628330, -1531693, -6036040,
- -2596845, -9243843, 2997350, 8368744, 6898255, -4610111, -1251983, 5682779, -11808476, -14755897,
- 4021163, -234076, 4996121, 5623186, -7037304, 2016487, -4682588, 2405719, 4559108, -814433,
- 2975339, 2822867, -6215892, 839666, -2021856, 4830228, -5259725, 733366, 337155, 652298,
- 8668318, -1309965, -2270964, 5205501, 766115, -5701569, 649614, -1242319, 6389301, 7134478,
- -5993090, 3550327, -2375117, -1424319, -1896228, -641561, 1628866, 585726, -377957, 1925219,
- -5714454, 2627983, -1249836, 1717987, 4089346, 1948841, 305480, -1660542, -2065342, 271657,
- -63351, 3469260, -1918777, 1050656, -53687, 1282048, -1941862, -67109, 411243, 1343251,
- 2948495, -1490891, -1169842, 3789772, 2024540, 286152, 3759170, -649614, -685584, -850940,
- 99321, 258772, 435939, 408022, 308164, 1337882,
- },
- {
- 1465658, -24387898, 14615237, 335544, -2288681, 272730, 15400142, 5828808, -7358353, -1796370,
- 7315940, -1345399, -7843147, 1520418, -7669201, 9350144, 5291937, 9634685, 1872069, 6500970,
- -1562294, -1840930, 12934294, 5035313, 3810710, 2068564, -6825240, -2535641, 6219650, -6531572,
- -11352672, 3199751, -1422171, -8706972, 4667019, 5710696, 5641977, 1174674, -6031208, -8730058,
- 1649804, -3380676, -5638755, 7052873, -3338263, 5222144, -4008815, 112206, 1534377, 3618510,
- 286152, 579821, -1113470, 3226594, -504659, 1157494, -3165928, 809601, 1316944, 16106,
- 5275294, 895501, 564251, 2859911, 2499671, -180926, -624918, -441845, 904628, 435402,
- -1593970, 3294240, -587337, -1545115, -589484, 305480, -1290638, 1353452, -1889249, 1101659,
- 958851, 506269, -2132451, -863288, -750546, 187368, -1479616, -502511, -1212255, 433792,
- -223875, -879931, -1476932, -1783485, 34360, -183610,
- },
- {
- -15560667, 36120140, -9958955, 6309844, -6789807, -38044284, 14199162, -5011690, 1857037, 12360916,
- -16395501, 10892574, 3064459, -13527536, -7842611, 14670535, -9453760, -6875706, 2184528, -5664525,
- 660351, 3212636, 7090991, 5206574, 4679367, -688805, 4992363, -7541963, 5626407, -644245,
- -5440650, 7770133, 513785, -2178085, -4004520, -3425237, -8106214, -3732327, 2651606, -1665374,
- 1693828, 4445291, 1783485, -237834, -4226248, 53150, -1748589, -3695283, 6820945, 4355097,
- 1239098, -5244155, -2521146, 5031018, -2166274, -3664681, 1919314, 3457986, -4662187, 5465346,
- -1559073, -1748589, -1766305, 331249, 460098, 895501, -6340446, -2622078, 4281009, 2962991,
- 41339, -848256, 1510218, 1102733, -4864588, 1241246, -1886564, -1039919, -391379, 1235340,
- -2328946, -645319, 724239, -967978, 918586, 1269163, -1094680, -1214939, -88047, 808528,
- -514859, 1492501, -118112, -2844342, -276489, 226560,
- },
- {
- -1260573, -20422570, 5372467, -3667365, -4539781, 2282775, -9561134, 942208, 648003, 9058086,
- -6875706, 6162741, 8573828, -6135898, 2816425, 1933272, -6180995, -6553047, -6231998, 12065100,
- -6851010, -10011032, 13194140, 4359392, 2472828, 10411001, -2477659, -6762426, 15797427, -3921842,
- 4607963, -1693828, 9401683, 1790465, -214212, 4686346, 1574106, -401043, -6469832, -428423,
- -614180, -78920, 1660542, 4566087, -495532, -2109903, -1037235, -5587753, -1777043, -3677566,
- 1502702, -4386236, 1956358, 1097901, 6184216, -1133871, 5449240, -2080912, -2632278, 1655710,
- -3627100, -900333, 1107565, -1549410, -3988414, -409633, 104690, -606664, 813359, 2034204,
- -2967286, 1129576, -1770600, 352187, 60130, 2384244, -425202, -64961, -1450088, 3427384,
- -461709, 904091, 356482, 2382096, -3427384, -348429, -1113470, -214748, 51003, -760209,
- 223875, -735513, -1632625, 368293, 312459, 1051730,
- },
- {
- -5970005, 36843840, -16521665, -1808181, -2466385, -4424890, -3818763, 4080219, -8294656, -5633924,
- 7170985, 6419903, 10078678, 9131637, -14598057, -15296526, -545461, -5856725, -9419400, -5840619,
- -10817949, -1233193, 1901597, 3256122, 10506027, -4925791, -3876745, 17686676, 7617662, -4509179,
- 3499325, -619549, -7641284, 4183298, 5774047, 516470, -10079751, -2093797, 642635, 3399467,
- -1453310, 6950868, -1950989, 7619272, -1642288, -1728724, -1181116, -2915209, -1135482, 2761127,
- -5361730, -4689568, 7234336, -851477, 1829119, 265751, 3933116, -2385854, 1349694, 1748589,
- 1187022, -2511482, 469225, 682900, -1389422, 530428, -4223564, -1203665, -710280, -146566,
- -3076807, -772557, 511101, -949725, -521302, -331249, 1524177, -512712, -901943, -442919,
- -587337, -2683818, -2238215, 3514894, 1318018, 1844689, -1811403, 1167694, 35433, 373662,
- 325344, -1489280, -1858110, 147640, -675384, -246961,
- },
- {
- 2535105, 15714212, -16253230, -6390375, 1688459, -2909304, 1631014, -1177358, 958851, -2308545,
- 5034776, -5628018, 2665027, -37454800, 31453656, -3528853, -4276177, 16106664, -24432458, -22029424,
- -19118510, -668941, -10004589, 5687074, 233539, 3989488, -12054899, 7275675, 5637682, 5935108,
- 184147, 1813550, 10424422, -1379221, 3979824, -8384850, 16776142, 4093641, -2413772, -455803,
- -6624987, -4513474, 7034620, -4050691, 928787, 3287798, 2591476, 8671539, -526670, -7340099,
- -1903744, -5699422, -3603478, 3754875, 1129040, -1264868, -2180770, 755914, 3360275, 3055869,
- -2830920, -1605244, -1416266, 4160750, -1065152, 2593087, -3396246, -430034, -316754, 1898376,
- 1200980, -1187559, 2069101, -48318, -1594507, 38118, 251792, 347355, 183073, -1281511,
- 185757, -2027761, -2339684, 416075, -1264868, -787053, 127238, 671626, -665720, 1917166,
- -1378148, -756451, 238371, 784905, 52613, -56908,
- },
- },
- {
- {
- -4759361, 131479152, -26678190, 34133716, -11597485, 2794950, -2996277, 2653753, -5050345, 7352447,
- -10465762, 10237055, -1646046, -950262, -4553739, 883690, -5589900, -450972, -3383897, -254477,
- 7552700, -1522566, 6227703, 1896228, 7995082, -3245922, 3495030, 956167, 4426501, -2374580,
- -4751845, -4737349, -6329171, 2946348, -7367480, 266288, -3648038, 4294968, -2505040, -2414845,
- 1960653, -2310693, 5969468, 4794794, 817654, 4913980, 239444, -151934, 3010235, 2952253,
- 2202245, -61740, 2782602, -1009854, 658741, -161598, -688805, -854162, -2310693, 1033477,
- -5853504, -665183, -3406983, -2708514, -3512210, -4017942, -144955, -2259153, 217970, -1010928,
- -1515587, 77309, -1029718, -801548, -2612951, 50466, -1746441, 1626719, 673773, 2702071,
- 1219771, 1100585, -543313, 1011465, -1069447, 858457, 170725, -324270, 1435056, 1058710,
- 380105, -41339, 400506, 179315, -1008244, -377957,
- },
- {
- -593779, 47003584, 2055679, -40236864, 6259378, 2479270, -1389422, 77846, -1706713, -3628174,
- 1347009, 3103651, 2534031, -3025805, -1319629, -9074729, -1171452, -929324, -7213935, -5964099,
- 17179332, -1427540, -3738769, 14106820, 4651987, -566936, -8252780, 3211562, 7370164, -6563784,
- 457414, 5832029, 3404299, 2826089, 6853157, 5181341, 660351, 90731, -2554969, 498753,
- 1279900, 2393908, -6190659, -4855461, -499827, -3110630, 6482717, -5418101, -2126546, -3554622,
- 2463701, 1826435, 6292664, 279710, 3564823, -2425046, 68183, -85362, -3693672, -3191698,
- 4693863, 2564096, -501974, -3855807, -2760053, 4012036, -3780108, 1177895, -76773, -2601140,
- -180926, -1157494, 1861332, 932545, -935766, -726386, 744103, -1181653, 1865090, 1751810,
- -362388, -389768, -747324, -1765232, 106837, -430034, -90731, 887448, -2147, -622233,
- -1932735, 306553, 353798, 44560, -328565, -846645,
- },
- {
- 3326989, -88806504, 1459215, 45683420, 13360570, -2618856, -4001836, -6660958, -923955, -6760279,
- -4303021, 29256244, 360240, -1334124, 5716602, -12021077, 13571023, 2728378, 20247012, 8590,
- -8624294, -8203925, -1935957, -2124935, 4692252, 5318244, -2390686, -371515, -807454, -5068599,
- -1276142, 13377213, 96637, -1755031, -6889665, 5258114, -5814312, -4514548, -9170829, 1732482,
- 397284, -2196876, -1311576, -1359357, -4473209, -1614371, 3318936, -6783901, -4318590, -2775623,
- -3293166, -2802466, 4986994, -2778844, -206158, -4596152, 3555696, 1656247, 5142687, 1183800,
- 4356171, 5837935, 2205466, -708133, 1977833, -503585, -1915555, 2660732, 469225, -374199,
- -1884954, 952946, 714575, 535797, -1350230, 3508452, 283468, 786516, 936303, 1124745,
- -330176, 1451162, -2127620, 323196, 1883880, -623844, 567473, -851477, 2506114, -276489,
- 772020, -1210107, 373662, 162135, 1058173, 1025960,
- },
- {
- 1775432, 49378164, 2850785, 45544908, -7512972, -2193118, 1663763, 2423972, 2527052, -10917270,
- -6402723, -2754148, 5535139, -4002373, -14220100, -5980205, -1869385, -15057618, -8616778, 4670240,
- 3944928, -4252018, 1666984, 2439542, 1880659, -1418413, 8463770, -12906914, 1751810, 6445136,
- -3497177, -830002, 6260989, 1302449, 1406602, 619012, -668941, -4778688, -550830, -823560,
- 1868311, -3022583, -4583804, 3943317, -1918240, 861141, -2535105, 3184718, -718333, 174483,
- -2769180, -2338073, 521839, 2350958, -1635846, 2744484, 1675037, 5548561, -6616934, -333934,
- 4175782, 731218, -430570, 1562294, 3779034, 1631551, -593242, 1105954, -502511, 144955,
- -299574, -331249, -1112933, -2730526, -83752, 817654, 177704, 1916629, -2258616, 308701,
- 2816962, -665720, 52613, -1368484, 500364, -727460, 1241246, 1563905, -734439, 154619,
- 1051730, 1825898, -963683, 1328219, 668941, -236223,
- },
- {
- 2034204, -19025094, -10309532, -7266011, 2719788, 359167, -3712462, -1292785, -414464, 3876208,
- -649077, -3802120, -545461, -1889786, 30527554, -6555731, 4393215, -23632520, 4425427, -4236985,
- -13437342, -6803765, -1409823, -2852932, -396748, -13429289, 5510443, 10292889, 568546, -1433445,
- 6661495, 2873870, -5512054, 4770635, 2376728, -4092030, 4205310, -7223598, 6556268, 7274064,
- -122943, -7051800, -138513, 1308354, -2213519, 3547106, 7571491, 1129040, 2914135, 2966212,
- -4570382, 3701188, -1722819, 4362613, 102542, -642098, 1965484, 1413044, 1275068, 2064806,
- 1184337, 471373, 211527, 2481417, 624918, 371515, -1182190, -4258997, 872415, -2330557,
- 1335198, -799938, -2335925, -391916, -677531, -764504, -1091459, -1251446, 868657, 2333778,
- -811212, -1496259, -199716, -834834, 670552, -941135, 762894, 732829, -357019, 502511,
- 79994, 907312, 1969243, -103616, -4295, -274341,
- },
- {
- 10661183, 49352396, -2836826, 44430364, 5128191, -1362042, -417686, -1566053, 6930467, -3789772,
- -1654636, -5631239, -7717520, 10700911, 1761474, -15520401, 1222455, 13699872, -198642, -8287140,
- -5394479, 5559835, 4888747, 4757750, 3093987, -2247342, 1312113, -8553427, 2513093, 4686346,
- 3483755, 4778151, 269509, 1330366, 98247, 2661269, -337155, -8649527, 2441689, 7029788,
- 1948305, 2532957, 966905, -3586298, -1902671, 5155572, 1379758, 1745367, 1255204, 55298,
- 1243930, -5721434, -2738042, -3390877, 1088774, -1388348, 3114388, -205085, 450972, 590558,
- 2955474, -2723009, 1299765, 2871186, -2602213, -766652, 2084670, 2689187, -368830, 343597,
- -1103807, 2714956, -717796, -383863, -922881, 1144609, 220654, 2202781, 1432372, 67109,
- -322123, -351114, -1313186, -1163399, -532576, 89121, -251256, 936303, 500901, -838592,
- 2262374, 162135, 1002875, 858457, -452045, -469225,
- },
- {
- 58519, -1496259, 13545253, -1839857, -1397475, -1924682, 44560, 1773822, 246961, 2919504,
- -6418829, -4237522, 1814087, -9456981, -4961761, -10382547, -14219563, 14048838, 5398237, 7668127,
- 2675228, -15925739, -2644089, -14939507, 4326106, -1549410, 7281044, 9835475, -7240241, 8091719,
- -8855686, -3712999, -7750806, -4043175, 4512400, -8071318, -2370285, 678068, 2903398, 2863133,
- 2577517, -2213519, -4511327, 5458367, -3830574, -1899986, 6007586, 1320703, 1635846, -940598,
- -1903207, -4651987, 2847027, 987843, 1002875, -2674154, 2456721, 2199023, -4106526, 233002,
- 724776, 4177393, 505196, -2118493, -1345935, -1094143, 2072322, -1013612, 3229816, -1165547,
- -781684, 1970853, -2126009, -217970, 2478733, -298500, 2895882, 867583, 1542430, 151398,
- 3365107, 1278827, -1101659, 250719, 1410897, 560493, -267362, -505732, -1561221, 195421,
- -2335389, -59056, -1228898, 692027, -689342, 1218160,
- },
- {
- -6482717, 103470592, -12831752, 13959181, -2494302, 4186519, -17912698, -11582990, -3798362, -12546673,
- 18860812, 851477, -6660421, 10098542, -2267206, -3376918, 2100776, 7228430, 1717450, 4654134,
- 267362, -5956583, 2477123, 5201206, -12931073, 4875862, -678605, 1200980, 2064806, -751082,
- -4703526, -3277597, 4975183, -2582886, 2408940, 49929, 1436130, -5395016, 3581466, -496069,
- -3911642, -4326106, -914291, 4825933, -6779606, -429497, -3663607, -1633161, -1242856, -1704028,
- 517007, 3397319, -1748052, 5046050, 5218386, -1014149, 4475356, 529892, 1422708, 1770063,
- 1746441, 157840, -911070, 901406, -718333, -2780991, -242129, -1270237, -1299765, -3025268,
- 3071439, 1425392, -387084, 780610, 1257889, 728534, -432718, -2342368, -73014, 386547,
- 1534377, -350040, 290984, -448824, -143881, -220654, -1651415, -822486, 881005, 2092186,
- 1065152, -2649458, 471910, -260919, 1012002, -1239098,
- },
- {
- -142271, 21223580, -6332930, 5667210, 1903207, -1664837, 1933272, -177167, 279173, -435939,
- 797790, -3534221, -9808095, -2352568, 17333414, 12769475, 16013249, 6484864, 2510409, 14542759,
- 3110630, 368293, 6849399, -1037235, 6019397, 9819906, 7231651, 53150, 3311420, -5559835,
- 4559108, 15551540, -4808753, -9354976, -2688113, -16522202, 2926483, 5808407, -1704028, 1857037,
- 7737921, 6240588, -6062883, 2458332, -3823595, 3824669, -5173288, -2100239, 440234, 5546414,
- 2352568, -549756, -5028333, 2678449, -2485176, -891743, -198642, -594853, 4495220, -1518808,
- -98247, 1471026, -2584497, -3299072, -3258807, -5259188, -2459406, -403727, -1754494, 376347,
- -1439888, -1782948, 3584150, -1599339, 1540820, 1056025, -228707, -1446867, 561567, -1297080,
- -102542, 975494, -994822, -6979, 159451, 638876, -727997, 1958505, 1186485, -1026497,
- -227096, 834297, -1166621, -177167, 308701, 729608,
- },
- {
- 12808129, -96911640, 137439, -3785477, -331249, -9513353, -10602664, 27614492, -6117107, -21078088,
- -1169842, 149787, 5624797, 5138392, -1883343, 2735357, 2397129, -6292127, -11603928, -4532264,
- 3206730, -4358318, 879395, 16087874, -6837588, 588947, -2331630, -548682, 8334384, -4618701,
- 5843303, -1290101, -5507222, -1742146, 4350802, -1771137, -1196148, -2266132, 1725503, -974958,
- 4296578, -692027, -1971390, 3710315, 1189169, -2997350, 993211, 654983, 5338108, 827318,
- 2858838, -6413997, 1082869, 3251290, -397821, -6978248, 3562139, 3120294, -4522601, 3596498,
- -7341173, 5083631, -681826, 2478733, -1186485, 7529078, 112743, -155156, -3342022, 425739,
- 757525, 2611877, 1047435, 323196, -2363843, 977105, 232465, -408559, -210990, -143881,
- 3453691, 159451, -273804, 1920387, 2168422, 2510409, 2102387, -794569, 556198, -1479079,
- 378494, 1117765, -121333, 290984, 792421, -215822,
- },
- {
- -1029182, -36887328, 21726092, 2032056, -415538, 23702850, -10733123, 508954, 11304354, -1118839,
- 4613869, 1564442, -20398410, -1712618, 9046275, 3474629, 4770635, 13164612, 6169721, 3023120,
- -7298223, 1803349, 6561637, 7522635, 9719511, -4702989, -6119255, 970126, 3359738, -5191542,
- -6944425, -75162, -2409477, -4878546, 11240466, -1305670, 6074158, -505732, -4693863, -5071820,
- 1034013, -3280818, -4097936, 1213328, 1829119, -1545115, 2626373, -6697465, 2571075, 5520644,
- 1096290, -2692945, 811212, 1100049, 911070, -4384088, 3082713, 193274, -1799054, 733366,
- 368830, 5013838, 2200634, 2324651, 2589865, -1855963, -1947231, 3251290, -64961, -618475,
- 637266, 731218, -427886, -1807644, -386010, -535260, -415001, 168041, -2194728, 2222646,
- 818191, -241592, -21475, -1615982, -126165, -294742, -2039573, -1755568, 392990, 735513,
- -1210644, 733903, -3249680, -72478, -420907, -187905,
- },
- {
- 20421496, -36117992, 27560806, -3325379, -18095234, 9335111, -17328046, -5388574, 79457, 24402394,
- -12008729, 1707786, -8382703, 7281044, -9695352, 5719286, 9954660, -16107738, 359704, -7123204,
- 13419625, -3359738, 10420128, 3733400, 831076, 3995393, 4505958, -3568044, -908922, 12539157,
- -10594074, -1867774, 4648765, 1833414, -9443022, -1989107, -7711614, -594316, 866510, -5347235,
- 3599720, 6929930, -838592, -1540820, -1279900, -3541738, -7155953, -307090, 6728603, 1012002,
- 5786395, 683437, -8910983, 3821447, -1158567, 6979, 447213, 3446711, -1728188, 1390496,
- 1059246, -649614, -5133560, 467615, 3812857, 381715, -6176163, -1132261, 1982664, 2995203,
- 1504849, -1530082, 315143, 991064, -2201708, -900869, -201327, -748935, -1942936, 1347546,
- -1442572, -164819, 2703682, -2183991, 503048, 2812130, -2597918, -1769527, 1063004, 203474,
- 921807, -397284, 414464, -1823751, -1395328, 193274,
- },
- {
- 1894081, -27148488, 10708964, -6549825, -2856690, -187368, -9230958, -1266479, 709207, 7682623,
- 4284230, -1570884, -8945880, 14079440, -11211475, 6474663, -5543192, -8912057, -5499706, 10568841,
- 1331440, 461709, -6710350, 10302553, 6502581, 9275519, 5895380, -7142531, 9873593, 6207302,
- -6998649, 5859946, -806380, 2811056, 688805, 3929358, 3830037, 5124433, -9729712, -482647,
- 591632, 724239, 913754, 2502892, 1222992, -3112241, -3947612, 1639604, -7498476, -2489471,
- -897648, -46171, 1174137, 1086627, 3289945, 823560, 2057826, -1592896, -998580, -1449015,
- -287226, -877784, -2976949, 786516, -264677, -4033511, 1318018, 1323924, 1788854, -3071975,
- -227633, 207232, 928787, -2237141, 564251, 1286880, 130460, -247497, 500901, 2083596,
- 63888, -1192390, 1683627, 374199, -2982318, -1296006, -138513, -1642825, -45634, 43487,
- -2223719, 549756, -549756, 720481, 1236414, -1395864,
- },
- {
- 15196668, 7199439, -19578072, -4466229, 1941862, 7711614, -9517648, 1324461, -13415330, 6562710,
- -1062468, 5977521, 12163884, -5436355, 13100187, -5552319, -9740986, -7044820, -2610803, -2175938,
- -7186017, -6946573, -710280, 7924215, -2214056, -4765803, 6818261, 5978058, 8701604, 7890392,
- 284005, -6492917, -7930657, 6290517, 12663174, -11487964, -5894843, 5110474, 2586644, -2884608,
- 6096706, 1626182, 2455648, 770410, 4663261, 1045825, -5041218, -8486855, 4545686, 731218,
- -521839, -9370545, 2805688, 1826972, 3092377, 4581120, -3371013, 2706903, -3775276, 3118146,
- -730144, -457414, 392990, -403190, 856846, -2455648, -2101850, -1999844, 1509144, -1540820,
- -2299955, -2622615, 657667, 2021856, -1173063, -1472100, -650688, 68719, -835908, -594316,
- 480499, -1982664, -1252520, -98247, 2308545, 1624571, -846109, 653372, -253940, 1221381,
- -1186485, -336618, -1167694, -661425, 126702, 585726,
- },
- {
- -3483219, 12208445, -6128382, -11111080, 8310762, -1604707, -2711735, 1655710, -2769180, 3579318,
- -6337761, 712965, 296890, 12571906, -50443856, 13675176, -6359773, 8789651, -21750252, -22841172,
- -8391829, -10327786, -2711735, 6979, 3234647, 3289945, -12995497, 7042673, 5153961, 11940546,
- -5722507, 8650064, 5320928, 3964792, -4063039, -7634305, 14930917, 4468914, -3971234, -616328,
- -5555004, -1529008, 857920, -1693828, 1750199, 1989644, 80531, 9249749, 98247, -1715839,
- -9074192, -3594888, 3003793, 1537598, -362925, -3933653, 1842541, 775778, 810675, 2552821,
- -620623, -4918812, 855235, 5094368, -110059, 2127083, -2543158, 352187, -2574833, 898722,
- 1752884, -458488, 3052111, 759672, -1817308, -1412507, -207232, 960462, -337692, -920197,
- 874563, -2242510, -1848983, 122407, -371515, 30602, -1973538, 2484639, -801011, 122407,
- -307627, -424665, -114890, 1715839, -1278290, -615254,
- },
- },
- {
- {
- 8476118, 194603360, 18064096, 67243080, 9599789, 8686571, 561030, 3219615, -7808788, 6730751,
- -6866042, 16627429, 5761699, 5461051, -2617246, 3245385, 6285148, 4706748, -4914517, -4014721,
- 4510253, 1301912, 9800042, -209917, 9234717, -6313602, 3430605, 8946417, 7012071, -11133629,
- -8965207, -1865090, -5369246, 6415071, -2419677, 2234457, -9662066, -1611687, -1372242, -2342368,
- 7231651, 6444062, 2768643, -4987531, -4657355, 5884105, 840740, 631897, 2797098, 488553,
- 653372, 200253, 1566589, -2318209, 3256659, 2872796, 1573032, 2400887, 665720, 629213,
- -6664179, 1989644, -426276, 452582, -687195, -1602560, 1177358, -820339, -746787, -1495722,
- -3209414, -2847027, -1347546, -1121523, -2116882, 432181, -3304977, 285078, -432181, 185757,
- -818728, 474594, -303869, 651761, -463320, 886374, 142808, 112206, 56371, -66035,
- -138513, -122943, 736587, -19864, -423591, 946503,
- },
- {
- 1418950, 33784748, -10628433, -22093312, 20374252, 1516124, -3325379, 5361193, -491774, -3902515,
- -285078, 1960116, 4491999, 3833258, 315143, 2838437, 12889734, -4117263, -3748433, -239981,
- 4476430, -6922951, 6176163, 15568183, 4237522, 590021, -8464307, -3612068, 1647120, 788127,
- 7592966, 4512400, -4405026, 2394444, 11387032, -889058, -5878200, -1733556, -3585761, 3241627,
- 209917, -1617055, -4226785, -2391223, -1636919, -4677757, 7910793, -2108829, 1146219, -5993627,
- -470299, -574989, -727460, -5367636, 4481262, -3586298, -1876901, 119185, -1341640, -5559835,
- -748935, 887448, 745177, -1146219, -111669, 4881231, -2967823, 1739462, 3105261, -1520418,
- -2306934, -2553358, 1661616, -275415, -2564096, -413391, 963683, -2918967, -343597, 455803,
- -823560, -421981, 340913, -595927, 801548, -798864, 551366, 3186329, -788663, -1239635,
- -1003949, 117575, -121870, -1076963, -696858, -435939,
- },
- {
- -5030481, -80250392, 15880642, 2712809, -17063368, 410169, 3005940, -1869385, 5893232, -798864,
- -1931125, 32806570, -12492986, -9113384, 3787088, -15680926, 11302743, -1240709, 13240847, -3073049,
- 279710, -1435593, -1699733, -7357816, -1051730, 5757941, 1791001, 5860483, 2588792, -1433445,
- -1716913, 3413962, -1861868, -5002563, -2209224, 9410273, -8631274, -605590, -8062728, 2371359,
- 3674882, -2387465, -956704, 2862596, -3015604, -1280437, 5472325, -454730, 3710315, 3614215,
- 1680943, -2446521, 4989679, -4421132, -17180, -4066260, 2768107, -306016, 3034395, 569620,
- 3316789, 1586990, -2016487, 2113124, 5271536, -762894, -3082713, 2299418, 924492, 693637,
- -1427003, -1168231, -994822, 2371359, 163746, 2051384, -2241436, -741419, -451508, -570157,
- -1336272, 1526861, 336618, 1382980, 1535988, -253403, 453119, -1519882, 833761, -2239289,
- 472983, -471373, 34897, 190052, 796180, 1101122,
- },
- {
- -10524280, 24904368, -8654359, 53585624, 4032438, -2851858, 1184874, 2516314, 7224135, 505196,
- -14880988, -10585484, 7522099, -2057826, -6056978, 13614509, 12313134, 1621350, 12329240, 8151848,
- 3372623, 4846871, 2159832, 1865090, 9361418, -3243774, -2453500, -12987444, -813896, 325881,
- -1777580, 2710124, 693100, -1247688, 8360154, 5111548, 1940252, 1769527, 8311299, 4981089,
- 5222680, 777926, -3839164, 1144609, -1657857, 343597, -7454990, -1698660, -2536715, 650151,
- -2359011, -194884, 132070, 3561602, -229781, 1926830, 876173, 3486977, -6928856, -1015760,
- 508954, -1070521, -3273302, -1894618, 681826, 2540473, -2713883, 33286, 134218, -64425,
- -1451162, 713501, 533650, -2661806, 742493, 261456, -1504312, 1915555, -996969, 1054415,
- 180926, -2289218, 957241, -1373316, -104690, -1460826, -364535, 459562, -824097, -948114,
- 43487, 1709934, -1385127, -1213865, -1395328, -741956,
- },
- {
- -1954747, -3105261, 8837432, -8919573, 1020592, 1003949, -1895691, 2419677, -359167, 2240362,
- 2112587, 5065377, 940061, -6100464, 45679124, -2369748, 341450, -31918586, -8032126, -536334,
- -4545149, -1347009, 1376000, 2252710, 4238059, -6550362, 14773614, 9419400, 7092065, 11047193,
- 7221451, -1886564, -4643934, 1496259, -5077188, -9548786, 4249334, -7161858, 3370476, -649614,
- -3295314, -6529424, 153008, 1967095, -5140002, -782221, 5622112, -1528472, -2027761, -603443,
- -2938295, 6755984, -1000727, 2405719, -692564, -308164, 428423, 3875134, 4961224, 2014877,
- 477278, 1504849, -750009, -1202591, -2484102, 387621, -1313186, -4393752, 475668, -1796907,
- 3483755, 2820720, -1277216, -839666, 241592, 293668, 699543, -1371705, -1512365, -543850,
- -1697586, -1431835, 319438, -89657, 1564979, -1161252, 290447, 955093, -358630, 600759,
- 745177, 231391, 464393, -223338, 937377, -446677,
- },
- {
- -22309134, 10002442, 8775155, 47809964, -1345399, 216359, 10704132, 8706972, 17191144, -5887864,
- -2855080, -566936, -9655086, 364535, 3076807, -4218195, 2539400, 9695352, -2370285, -7415798,
- -4006668, 372052, -3303367, -1586454, 1837709, 3253438, 1772211, -6190122, 10351408, 7252589,
- 2530273, 4753992, 77309, -837519, -4138738, 938450, 6691022, -3998078, -966905, 946503,
- -4034048, -819265, 2397666, 105227, 2818572, 8676908, 352187, 2887829, 4382478, -2552284,
- 33823, -326418, 282931, -4569845, -1095217, -285078, 4110821, 580357, -493384, 277562,
- 1557463, -4115653, -904628, -226560, -1704028, -1490354, -3127810, -296353, -1685775, -194347,
- -1442035, 1537061, -278636, 1098438, -179315, 1206349, -1530082, 366683, 1091995, 619549,
- 565325, 925029, 66572, -413927, -1154273, -263067, -549219, 140660, 1054415, -73551,
- 1108102, -772557, 752156, 354335, -493384, -505732,
- },
- {
- -357019, -17834852, 2681670, -184147, 442382, -3127273, 1037235, 5417565, 4081830, 2157147,
- -6560026, 2084133, 6187974, -662499, 5850819, -7697655, -16232292, 4032974, -6474127, -1242856,
- 6056441, -14778982, -9631464, -8848706, 20140176, 2799782, 1775969, 8270497, -280784, 8185134,
- -8087424, 2470680, 1184337, 2943126, 7365869, -624381, -1198296, 1971390, 4552666, 1592359,
- -2600603, -2520072, -4698158, 4784057, -1966558, -1772211, 907312, 1536525, 2534568, 1039919,
- 4416300, -4612795, 1991254, 4855461, 3788698, -2409477, -692564, 2336999, -2224793, 1143535,
- 1431835, 3976603, 1435593, 2050847, 2422362, 386010, 1621887, -1242319, 4673998, -397821,
- -472983, -129386, -4243428, -1950452, 604517, -1622424, 1068910, -1223529, 482647, 13422,
- 1144609, -494995, -1120450, 386547, -326418, -204011, -66035, 633508, 387084, 545998,
- -1552094, 1490354, -1464047, 751619, -564251, 460098,
- },
- {
- -11401528, 101722008, 5282273, -809601, -19916300, 9881109, -11502996, -8265128, 985695, -7133404,
- 28235116, 8227547, -4060355, 11402064, -1175747, 7478075, 8450885, 7001334, 2092186, 1930051,
- -2968896, -14352170, -1919314, 11909407, -3956739, 7511898, 2520609, 1648194, 1365263, 2133525,
- -3634616, -4418448, -337692, -3426310, 6491843, -3939559, 2527588, -5263483, 2852932, 2768643,
- 1028108, 999654, -1095217, 1954747, -5522791, 370978, -802622, 265214, -6846715, -1310502,
- 2619393, 4028143, -3928285, -691490, 3257196, -2010045, 2578054, -883690, 305480, 3352759,
- 5903970, 2308545, -3766150, 1407139, 1652489, -2309082, -1619740, -1450625, -829466, -3188476,
- 472983, -275952, -571768, -1432909, 33286, 2100239, 635118, -3408057, 148713, 782221,
- 828392, -529355, 1582159, 639413, -768262, -1650341, -2110977, 365609, 1708323, 288837,
- -154619, -1167694, 2256469, 1144072, 1298154, -1646583,
- },
- {
- -1877975, 8194798, -10692321, 6910603, 152471, -2831994, 2433099, 3773129, 4540854, -3111704,
- 5309654, 2062121, -7677254, -11201275, -6204617, -6395743, -2072859, 4185446, 7074885, 5781563,
- -234613, 7313793, -214212, -8319352, 4956929, -4559108, -4468914, -1724966, 697932, -17217450,
- 4621922, 2341831, -17166448, -321586, 10298258, -8907762, 3178276, 3001645, 1970316, 2216203,
- 750009, 1560147, -9856413, 1154809, -3942780, 1806034, -4595078, -1287417, 649077, 4985920,
- 2894808, 1764695, -4358855, 3254512, -1610613, 2569464, 3005403, -1054951, 2625836, -2655901,
- 2240362, 829466, -2695092, -978716, 696322, -1441498, -862752, 819265, -2630668, 299574,
- 263604, -981937, 3471407, -1609539, 3467112, 3011309, 1397475, 820876, 1613297, 603980,
- 220117, 375273, -635655, -672162, -41876, 229244, -2328946, 606664, 622770, -838056,
- -235686, 181999, -292058, 1245541, 1516660, 489089,
- },
- {
- -11956652, -121959352, 11861089, -1336809, -18861886, 3637301, 22212498, 38017976, -7088307, -35902704,
- 2492692, 7970923, 3224984, 10474888, -3735011, -1093069, -2267743, -9335648, -8858370, -848793,
- 6797860, 3212636, 5525476, 14457934, -7743826, -9620727, -6358699, -8865349, -382252, -8270497,
- 2211908, -5026723, -4581657, -6959458, -1566053, -6791954, -1568200, -3293166, -86436, -2146410,
- -3127810, -7109782, -3936875, 3666828, 3605088, -2436857, 2064269, 2034741, 1613834, -7657390,
- 1100049, -4447439, 533113, -623307, 1326608, -405338, 6811282, 390305, -4045322, 7815767,
- -5117991, 1771137, -1916629, -39728, -2313377, 8292508, 1503239, 2905546, -1576790, 2481417,
- 2058900, 3278134, 1560147, -2515240, -5008469, -379031, -23622, -1261647, -1468342, -1517197,
- 2160369, 1719061, -997506, -2224793, -76236, 418759, 137976, 81068, -433255, -2582886,
- 282931, -65498, -360240, 244276, 765578, -924492,
- },
- {
- 847719, -46340548, 8791261, 1652489, -6819335, 12008192, -18903762, 3096135, 10448045, -5999533,
- 2470680, 11982422, -10452877, -9270687, 4012036, -1240172, -2056216, 10746545, 3693135, 12097849,
- 5053029, 3010235, -561567, -3412352, 4312147, -2695629, 359167, 11551315, 5987185, -4973036,
- 4680441, -1794760, 2258616, 2078764, 11352135, -4016868, 1818919, 3713536, 4895726, 1529545,
- 4435628, 3058017, 749472, -2958159, -3849901, -6561637, 1877975, -2350421, 4978404, -1590212,
- -5056787, -4239670, 1273458, 27917, 301185, -512175, 3902515, -3084860, -1959579, 147640,
- -2681670, 421444, -809601, -352724, -936840, -2684355, -3277060, 617402, -2989297, -1595044,
- 3275450, 1296543, -588947, -1517734, -2451890, -696858, 3038689, 2298881, -2429878, 1848983,
- -519691, -1886564, 149250, -235686, 274878, 346282, 489626, 861141, 2503429, 1842004,
- -911070, 1141924, -2465311, 750009, -641561, 263067,
- },
- {
- -12399571, -78685408, 33871724, 960999, -14150307, 39568996, 4675609, -1727651, 288837, 13629542,
- -4085051, 11996917, 3623342, 11388106, -13812078, 8150238, 11549704, -16408923, 13217762, -5237713,
- 9005473, -4906464, 5117991, -4173635, -10814728, 3826816, 8817031, 3109020, 248571, 9196062,
- -6580427, -4503810, 1203665, 5143224, -5873368, 448824, 579284, 4450660, -5479842, -7814693,
- 2563022, -652835, -5051956, -1239635, 1857037, -1247151, -5264020, -4749160, 630286, -1459215,
- 5305895, 2434173, -9790378, 2917357, 1913945, 4048007, 476205, 2121177, -439697, 990527,
- 3745212, 4370129, -1037235, 1140851, 2085207, 851477, -1210107, 2183454, 2092186, 773631,
- 1052267, -3319473, -2026688, 1043677, -1352915, -738198, 1818919, 2027225, -1527935, 1228898,
- -466541, 1249299, 3347927, -1427540, 39192, 2052458, -1054415, 497142, 598611, -558883,
- 1217623, -1188632, 423054, -504659, -1355599, -1526324,
- },
- {
- -1897302, -27089432, 12502113, -4090956, 4747013, 4247186, -10210748, -6327561, -4800700, 7215545,
- 4252018, -7449621, -20556788, 412854, -19190450, 1096290, -3848291, -8880382, -18999324, 10204842,
- 10267656, 3163244, -28395640, 3305514, 10238665, 13154948, 12004434, -9179956, 9104794, 5740761,
- -7386270, 5624797, -9380209, -2270964, -2142115, 6208375, 6762426, 3264175, -4509716, 243203,
- 441308, -2838974, -3474092, -2205466, -1449015, -3753802, -5031018, 594853, -6649146, 433255,
- -337692, -2430952, -5852430, -3451006, 2327336, -2029372, -340913, 3083250, 1380295, -591632,
- 2906619, 3658775, -707596, 1511292, 3119757, -3553549, -2245194, -278099, -2636573, -3983045,
- 2698850, 774705, 2569464, -1524177, -1138703, -1194001, -2257542, -175557, 115427, -1189169,
- 1150514, 59593, 284542, -2136746, -3849901, -2345589, -1745904, -2653216, -951872, -608275,
- -2575370, -345745, -368293, 1920387, 879395, -1298691,
- },
- {
- -18613314, -27649926, 1033477, 13717052, 11893838, 17867600, 2510409, 8087424, -7928510, 8708583,
- 9764071, 1613834, 7098507, 11096048, 44883480, 12585865, -2103997, 4563403, 13369159, 6842957,
- 10786273, -1651415, -12841415, -3620121, -2256469, -1440962, -526670, -7000260, -1491964, 10104447,
- -5094368, -13732084, -1695438, 9018894, 12818867, -8293045, -3109556, 1248225, 5164162, 1442035,
- 3641059, -6194417, -5480915, -2330020, 6240051, 1992328, 275952, -3825205, 5275294, -4320737,
- 1989107, -5976984, -2101313, 935766, 1268089, 4824859, -4766340, -2061584, -4085051, 2353642,
- -1496259, 945967, 2450816, 3068754, 3651259, 989453, 1921998, 542777, 2470143, -1078037,
- -2035815, -4959614, -281857, 2227478, -1163399, -1320166, -1418950, -37581, 834834, 1678795,
- 1610076, -1272921, -406411, -2764348, 253940, 709207, -1407676, -492848, -497142, 1776506,
- -1612760, 186294, 179315, 346819, 840740, 877784,
- },
- {
- 4708895, 23797340, -3089692, -12123619, 9571871, 7803956, 835371, -2913062, -3909494, 6273337,
- -7321846, 5497558, 5768141, 13948443, -42402600, 1592359, -18298172, 8404714, -430034, 1526861,
- 9905805, 1655710, -497679, 748398, -1105417, 7897908, 1647657, 11628624, -7631620, -6527814,
- -14144938, 3274376, 5462662, 1523640, -1731409, -4299263, 5421860, -3176665, -7710003, -3070902,
- -12941273, -6821482, 194347, 670015, 467615, -2653753, 1778653, 4052302, -5192616, -213138,
- -7547332, 795106, 2771865, 935766, 1959042, -4435091, -193274, -1225139, -2078227, -2214056,
- -1478006, -1963337, 1333587, 5184563, -1960116, -1549946, -758599, 802085, -5310727, 117575,
- 1632088, -783832, 510027, 158377, -1215476, -2365990, -1492501, 405338, -812286, -946503,
- 1698123, 1130650, 930397, -287226, -1416802, 1758789, -271120, 2303713, -2107755, -1181653,
- -45097, -291521, -927176, 932008, -921807, -1013075,
- },
- },
- {
- {
- -12286828, 243094608, 22276384, 71637368, -2269353, 5711233, 8790724, -2702608, -12295954, 11641509,
- 4535486, 15149960, 3449396, 2161979, 2353642, 280784, 11001559, -3729642, 8767639, -6497749,
- 470836, 381715, 11356967, -3487514, 3923453, -7051800, 5061082, 7869454, 8254391, -13240310,
- -4872104, -878321, -4052839, 4874788, 1236414, -3131568, -6145562, -5062693, 3203509, -5520644,
- 4285304, 13052942, -2410014, -9096741, -1815697, 4184909, -1340567, 1071058, 6789807, -2698850,
- 1217623, 3685619, -4250407, -3659849, 4983236, 926102, 2627983, 2636036, 47245, 379568,
- -3350075, -1331977, 228707, 2250563, -603443, 791885, -2884071, 1387274, -1736241, 679142,
- -3966939, -3667365, -1150514, -1451162, -2030446, -352724, -1968169, -353261, 657130, -2133525,
- 1282048, -909459, 794032, -163746, -590021, 631360, -518080, 861141, 850404, -180389,
- -925565, -208843, 988916, 289373, 683437, -540092,
- },
- {
- -1225139, 8748312, 11252814, 9914395, -9714142, 4459250, -1871532, 6366752, -2358474, -6927782,
- -13539884, 21649320, -5298916, 5288716, 5472862, -989990, 11865921, 1138166, -417686, -7522099,
- 9078487, -13966697, 11605539, 16601122, 1031866, 9067213, -13356811, -7631620, -4869419, 14993731,
- 1952600, 9185861, -10131828, 834834, 11834782, -3926137, -4147328, -4177393, -2046015, 7885560,
- -1202591, -2110440, -1460826, -5311264, 1916629, -1799054, -786516, 1866163, 1418950, -4471598,
- -1249299, -3615826, -1716913, -3240553, 3482145, -5290863, -1424319, -984621, 1599875, -3405372,
- -3320010, 804770, 548145, 382789, 2350421, -320512, 2333778, 376883, 2886755, -2262911,
- -1719598, -1110249, 222801, -996432, -1939178, -1460289, 885837, -468151, -1744831, 300111,
- -745714, -197032, 727460, -1740536, 875636, -1140314, 1378685, 2019708, 93416, -1008244,
- -322123, -137439, -709207, -517007, -1001264, -743029,
- },
- {
- 5963562, -52277804, -17857400, -31862752, 7567733, 1285269, -31139, 1263794, 7606387, -5446556,
- 11997991, 18823768, -17133698, 8206072, -13333189, 165356, 3120294, -5074504, 2674154, -1144072,
- 9087077, 4439386, -6288369, -1338419, -1961726, 1721208, -107911, 7425462, -1271847, 4214974,
- 1465121, -7973070, 640487, -7912404, 6961605, 3668439, -8667244, 786516, -4940286, -26307,
- 7227356, -5684926, -38118, 3079492, -537408, -4453881, 6477348, 6236293, 4335770, -520765,
- 6005975, -71404, -2889439, 324270, 747324, -1283658, -184684, -2981244, 1769527, 3512210,
- 92879, -601295, -692027, 1534914, 2521683, 3078418, -2666101, -1107565, 3538516, -226023,
- -645856, -1300838, -909459, 2437931, 2563022, -333397, -1490891, -1074816, 374199, -321049,
- -1875827, 1475858, 624918, 74088, 277025, 1516124, -819802, -695785, -1387274, -1499481,
- -406948, 322659, -559956, 516470, 947040, 1299228,
- },
- {
- 14835891, -23852100, 6388227, 59194312, -2726231, -5168993, -3782256, 5514201, -1133335, 12024298,
- -18859202, -9157407, 5613523, -1935957, -322659, 13562433, 16943110, 8137890, 8100309, 4488778,
- 3184718, 11653320, 2565706, 3991635, 1655173, 6965900, -10446434, 1061394, -626528, -11804718,
- 5861557, 3222836, 877784, -70867, 7000797, 2239289, 3384971, 3325379, 6599754, 10528039,
- 4368519, -643171, -1712081, -7385197, 2364380, -3597572, -6128382, 990527, -1780801, -3765076,
- -1569274, 1451162, -1061394, 1104344, 1339493, 4408247, 2136746, -2177012, -3593814, 2181844,
- -3193308, -670015, -1976222, -3316252, -16106, 3719442, -1161252, -1646583, -1171989, 985158,
- -1337882, 2056216, 586263, -1775969, -251256, -260919, -1402307, 287763, 472446, 1427003,
- -899259, -2091649, -1194538, 792958, -625992, -859530, -504122, -150861, 220654, -1129576,
- 241592, 1319629, -23085, -2592550, -1882269, -987306,
- },
- {
- 1956358, 9238475, 176094, -5532992, -1894081, -362925, -693637, 4300336, -528818, -1040993,
- -1955821, 11254962, -1004486, 5469641, 50214072, -15700253, -17136920, -6129455, -13700946, -5395016,
- 6746857, -8076686, -4426501, 6299644, 8489540, 1349157, 8142185, 6112276, 8506720, 6394670,
- 7384123, -5441187, 6203544, -5747203, -7004555, 2199023, -4627291, 271120, -1649268, -1268626,
- -1450625, -3549791, 1465121, 234076, -9023189, 2121714, 4684199, -2277943, -940598, -2559801,
- 696322, 1154809, -1093069, 2821257, -736587, 3097745, 1960653, 2510409, 5115843, -872952,
- 4687957, 898185, -2882460, -717796, -1405528, -1387274, -1253594, -2646774, 591095, -606127,
- 663572, 5068599, -894427, -2079301, 1678795, 1699733, -723165, -413927, 729608, -3349538,
- 51540, -1774895, -626528, -96637, 660888, -675384, 1445793, -338229, -171262, 864899,
- 660888, -64961, -42950, -687195, 1126892, 904091,
- },
- {
- 26694832, -73495480, 9372692, 55951076, -796180, 1387274, 11327976, 12079596, 15538655, 1687922,
- -6221260, -10446971, 12444131, -19675782, 2758980, -106300, -8577050, 9609452, -4022237, 117038,
- 1678795, -4784594, -5235029, -4235375, 4166655, 1146219, 1161789, 1200443, 8238821, 5854578,
- -3019362, 2109366, 5543192, -3243237, -900333, -1274532, 2450279, -1607392, -3345243, 1062468,
- 1039382, -2785286, -3343095, 5361730, 2759517, 5625334, 3468186, 2885681, 3446711, -4040491,
- 1288490, 2493766, -872952, -2740726, -3544959, 1806571, 1109175, 2199023, -1046898, -1082332,
- 1115081, -2055142, -4110821, 399969, 613643, -2365990, -5262946, -1014686, -669478, 1081795,
- -2702071, 2365453, 842350, -980326, -259309, 84289, 885300, -1024887, -6979, -16106,
- 1787243, 817654, 1662152, -981937, -1056562, -981400, 124017, 59056, 252329, 1571958,
- -138513, -350577, 647466, -355409, 518617, -599148,
- },
- {
- -431107, -15459735, -4312684, 965831, -216359, -1633698, 155693, 4610111, 3782793, 2490007,
- -6444062, -386010, 8353712, -10695542, 23883240, -13880261, 3295851, -10094247, -6626061, -5619428,
- 312996, 577673, -5921150, -3723200, 9306657, 541166, 2458869, 889058, 10692321, 5265630,
- -1542967, 1689533, 1302449, 11526082, -4207994, 8588324, -4138201, 9684614, -6548215, 6022081,
- -6227166, -3907347, 2596308, 4503810, -3674882, 401043, -3950296, 2682744, 4282620, 2700461,
- 2405182, 1256815, -2002529, 3218541, 3074123, -396211, 350577, -1889249, 198642, 3699041,
- 383326, 2571612, 1420024, 2165201, 336618, 2778844, 1018444, -37581, 1474248, 911607,
- 912144, -2841658, -1859184, -1525250, -2443837, -335007, 1088774, -2003602, -330712, 1777580,
- -166430, -2356863, 16643, 1656784, -2070711, 557809, 743029, -739808, 254477, 255014,
- 639413, 184684, -820339, 208843, -729608, -489089,
- },
- {
- 32830730, 54412404, -15163919, -10379325, 10639171, 3928821, -10354092, -7808251, 3264712, 6865505,
- 7832947, 19141596, 7012071, -1882806, -1378685, 14698452, 5178657, 12106976, 2547989, 365072,
- -6733972, -14541686, 251792, -3052648, 16437377, -226023, 6383932, -141197, -7569880, 10104984,
- 453656, -5441187, 2432562, -7533910, 9171903, -11704323, 4927938, -4387309, -832687, 6240051,
- 2553895, 561567, 2850785, -4114579, 6773701, -4624606, -1845762, 3917010, -10782515, -538482,
- 3221226, -55298, -881005, -1931662, 1377074, -304943, 1335198, -905701, 2024003, 3547643,
- 3814468, 1823214, -3570729, 1692754, 806380, -2266669, 873489, -3115999, -2554969, -153545,
- -340376, -1073205, -532576, -1457605, 167504, -926639, 2492692, -2712809, 551366, 1272384,
- -1472100, 1515050, 979253, -489626, 78920, -1379221, -2270427, 1165010, 2017561, -922881,
- -993748, 1097901, 1574106, 1163399, -719407, 983011,
- },
- {
- 268435, -9968619, -71941, -411243, 1979980, 357019, 1975148, 1201517, 5258114, 3933653,
- -54761, -114354, -3645890, 4680978, -23212150, -5748814, -12399034, 14256070, 14768782, -8115341,
- -4867809, 11835319, 1705639, -11833172, 10728828, -7803956, -3863860, -9466645, 11057930, -24232742,
- 210453, -6657200, -6973417, 5808407, -890669, 2783676, 1934346, -8596914, 11468100, -2202245,
- 4613869, -3296924, -8390755, 1986959, 2283312, -3313567, -3200825, -4667556, 5775121, 1956358,
- 1656247, 1423245, -2073396, 2612414, -1229971, 4387846, 1142461, -1028645, 2542084, -1853815,
- 1493575, -1540820, 890669, -1606855, -352724, 2367064, -2048699, 2006824, -2404645, 533113,
- -308164, -1105417, 2195265, 636729, 741956, 2621004, 1278827, 1736241, 1224603, 739271,
- 1496796, -1529545, 807454, -167504, -937914, -1137093, -675384, -60666, -545998, 375810,
- -856309, -1127429, 1228898, 379568, 809064, 1307818,
- },
- {
- 10399190, -119824752, -15640123, -17009144, -3307125, 17260400, 20033874, 12022150, -15301895, -10618770,
- -4661114, 18826452, -183073, -12275017, 18910204, -3531537, -8630737, -5228049, -9012452, -3733400,
- 4090420, 7155416, 10303090, 1088237, 1214402, -16286516, -2341294, -6925098, -6630356, -6851547,
- 5699959, -9545565, -11093364, -1669132, -3987340, -4697084, 886374, -4307316, -365072, -3155190,
- -5341329, -6461779, 687732, 1358283, 7124814, -5443334, 1607928, -141734, 1482838, -3639448,
- -467615, -3478924, -25770, -6679748, 4893579, 4049617, 4438849, -2178085, 84289, 1861332,
- 2551748, -2322504, 309238, -3872450, 4720169, 702764, 841277, 4480725, -790811, 4155381,
- 1706713, 293132, 2853469, -4974109, -2345589, -1808181, -592706, 141197, -1460289, 96100,
- 783832, 1442572, -793495, -3614215, -340913, 797790, -1256815, -169114, -123480, -2350958,
- 504659, -773094, -1067299, 750009, 545998, -1774358,
- },
- {
- 381715, -41173704, 602369, 1157494, -9052717, 583579, -2975876, 2668785, 4269198, -19327,
- -9525164, 7721815, 15067282, -14302241, -1246614, 2238215, -12611098, 11536282, 9257265, 10823318,
- -1552631, 3326452, -2206003, -1931662, 8135742, 927713, 3208878, 1173063, 12447352, -7706782,
- 7699266, -5347771, 455803, 4340065, 5095442, -4764730, 4228396, 4410932, 6642704, 795106,
- 1358820, 7656316, 2413772, -4286378, -4849018, -6391985, 2079838, 4235912, -2433636, -4166655,
- 857383, -6599218, 937377, -865436, 633508, 4156992, 1669669, -2660195, -2093260, -699543,
- -1589138, -1745904, -535260, -1341104, 1313723, -1201517, -3598109, -426276, -4327180, 456340,
- 1445257, 862752, -1525250, 1277753, -3204046, 113817, 2226941, 3278671, -1392643, -14496,
- 207232, -1577864, -772557, 170188, -486942, 502511, 2064269, 1977833, 1628866, 636729,
- -664646, 349503, 143881, -580357, -369367, 590558,
- },
- {
- -5402532, -83963928, 29687350, 10274099, -1751273, 24533390, -9398462, 7947837, 5985037, -14525043,
- 17785460, 2549600, 16422881, 1872606, 5368709, -13511430, 708670, -1655173, 13293998, -1828582,
- 8778913, -4029216, -3502546, -84826, -9370008, 1910187, 4269198, 2471754, 1307281, 49392,
- 2669859, -3311420, 1644973, 1997697, -5518496, 462783, -2102923, 3478387, -2565706, -5082557,
- -1147293, -2097555, -817654, -6602439, 2703682, 317828, -1067836, -3888019, 96637, -251792,
- -237834, 3182571, -4764730, -1003412, 5522254, -492848, 554051, 3095061, 537945, 766115,
- 4248260, 3469797, 711891, -22012, 2453500, -938987, 5148055, -259846, 3296388, 16106,
- -406948, -2134062, -1763621, -1283658, -970126, 1471563, 390305, 3885335, -313533, 232465,
- -948651, 1374926, 14496, 1788317, -47245, -158914, 730681, 1804423, -621160, -396211,
- 75699, 718333, -1397475, -355945, -1267552, -454193,
- },
- {
- 2254858, -9759776, -12107513, 53687, 8423505, 3029563, -15261093, 2015950, -4544076, 2966749,
- 1226750, -5387500, 1926830, -29800094, -15705085, 13205951, -18249316, 214212, -26754962, 18060338,
- -2302103, 10747619, -31875636, 5159867, 5844377, 12887586, 6287296, 1350767, 9002251, -5619965,
- 2694018, -7885023, 6908455, -9497783, 7056095, 1996086, 5883569, -2275259, 4098473, -7074348,
- 4624069, -6992744, 3581466, -6339372, -4591857, -3519726, -2143726, -2784213, -649077, 1935957,
- -1592896, -1858647, -9103720, -1576253, 1694365, -518617, -1592359, 2664490, -851477, 5363878,
- -170725, 4588636, 915902, -417149, 3059091, 62814, -5366562, -2674154, -2672007, -2590939,
- 2274185, 2829847, 1194001, 252866, -2552284, -1185948, -3360275, 550830, -1683627, -498216,
- 1544041, 1197222, -499290, -1167157, -2624762, -2007360, -1458678, -1694902, -3227668, -1180042,
- -535260, -1057099, -392453, 731755, 1340030, -629213,
- },
- {
- 13605920, -71223976, 13483513, 21029234, 2124935, -7399155, 25887916, 3711926, -7108171, 15701864,
- 10603737, -4537096, -1207423, 8856759, 48279192, 18666464, 1446330, 3859028, 9882183, -751619,
- 7040525, 3256122, -5182415, -10670309, -4052839, 7363185, -6419903, -5516349, -1545651, 2136209,
- -150324, -7874286, -131533, 6335077, 1575179, 542240, 932545, -1817308, 2700998, 4911832,
- 1493575, -8537321, -8630200, -3368865, 2144263, -2244657, 7552163, 4778151, -3657165, -5757404,
- 2925947, -1033477, -4274030, 884226, -1137093, 3266860, -334471, -4282620, -3347927, 1202054,
- 2413235, -520228, 2993055, 5287642, 3633006, 1870458, 319975, 788663, 1621887, -678605,
- -1911261, -2405182, -1130113, -1305133, 1008780, -1030255, -704375, -2377265, 1975685, 1913945,
- 417149, 988916, -1438814, -3308736, 358630, -217970, -463320, -882616, 576599, 867047,
- -663572, -664109, 956704, 618475, 73014, -142271,
- },
- {
- -5015985, 26367878, 12400107, -2582349, -11040750, 17599166, -267899, -2355790, -1393180, 3795677,
- -4988068, 1913945, 9277129, -42544336, 51074676, -16134045, -9004936, -10297184, 11141682, 13266617,
- -5645198, 11823508, -4527970, 3169686, 4654134, 2962454, 11386495, 1968169, -8261907, -20877836,
- -3287798, -1405528, 7586523, -3700114, 11252814, -1162326, -2344515, -3658239, -8685498, -1364726,
- -14185203, -9758166, 6709276, -1277753, 3015067, -9591736, 8705899, 4552129, -12679817, 1554241,
- -2645163, 16106, -1416266, 1235340, -804233, -970663, -170188, -1999844, -517007, -1632625,
- -2013266, 674310, 36507, 620086, -3339337, -564788, -656056, 744103, -3897146, 179315,
- -1455457, 2258616, -673773, -2309619, -430034, -2156074, -1403381, -433255, -2029909, 3927211,
- 179315, 1527935, 736050, -296353, -1825361, 2169495, 574989, -1573032, 297427, -1096290,
- -1147293, -452045, 1055488, -1673964, 410169, -660888,
- },
- },
- {
- {
- 13093208, 247990336, -14329622, 47121696, -12508555, -248034, 5756867, 7487202, -8693551, 23965380,
- 15388868, 7457674, -6705518, -7152731, 6803765, 796716, 1611, -17305496, 3553549, 93952,
- 3665755, 946503, 4393752, -5639829, 1272921, -8451959, -3954054, -1934883, 11125039, -7316477,
- 1573569, 8552354, -1289564, -3158949, -2373506, -3847217, 1284732, 762894, 6447820, -2627983,
- -4450660, -11274, -6177774, -9505836, -1268089, 984084, -5062693, -4278861, 5624260, 2428267,
- 2508798, 1368484, -6164889, -4903242, 2815351, -3513283, 2408403, 2741263, -2690260, 1866700,
- 861678, -3173981, -2500208, 203474, -760746, 2498060, -2843805, 1673427, -1289564, 2412161,
- -2414845, -2655364, -54224, -1384590, -4501126, -970663, 881542, -154082, 478889, 425739,
- 3117610, -1109175, -631360, -2090039, -1504849, -71941, 298500, 781684, 1205812, 1402307,
- 197569, -349503, -698469, -17180, 634581, -943282,
- },
- {
- 632434, -25645250, -15093052, 22436910, -2009508, 1265405, -4132296, 221191, -8254927, -1738925,
- -4194573, 20889648, -15071040, 1120450, 7966628, -9292162, 187905, -2259153, 2885681, -15147276,
- 7221988, -1167157, 3820910, -8740258, -9352291, 11959873, -17853642, -5690295, -1604707, 19136764,
- 1522566, 8120173, -8070781, -2401961, 4555350, -5006322, -3236258, 23085, -12348, 4205310,
- 2477123, 6159520, 4001836, -3135863, 5352066, -1865090, -8369281, 1076963, 1758252, -882079,
- 1269163, -3497714, -1728724, -2528662, -150861, -6257768, 3245922, 369367, 1370095, 303332,
- -844498, 77309, -27380, 1686848, 2399813, -1729261, 5192616, 925029, 925565, -213675,
- 1500554, -911070, 808528, 667867, 887985, -441308, -530428, -374736, -1884417, 690953,
- -1824824, -903554, 901406, -2929168, 227633, 48855, 1081795, -156229, 79457, 688805,
- -28991, -497142, -132607, 1285806, 447750, -788663,
- },
- {
- -6194954, -6754910, 25224342, -38967164, -41876, 1012002, 499827, -5455146, -2211908, -2696166,
- 16600049, 16423955, -16568910, 5691369, -11766063, 10462003, 5990943, -4439923, -1610076, -6937983,
- -1539209, -3987340, -5699959, 4893042, 6072547, 394600, 806380, 11245835, 1308354, 6697465,
- 2547453, -4967130, 5741835, -6786585, -1032940, 2745021, -6325413, 2619393, -4172024, -5803575,
- 3294240, -12739947, -5108327, 3490735, 5640366, 5660230, 13194676, 8914205, 5276904, -6241661,
- 3067681, 4846334, -5101885, -536871, 4567698, 173409, -1570347, -4744328, -1081258, 1794760,
- 419833, 440234, -1815697, -3799972, -2595771, 3929358, -190589, -1206886, 1898912, -22012,
- 1715839, 894964, 645319, 751082, 876173, 763967, 2820183, 796716, 905701, 702227,
- -1414118, 1047972, -482110, -948651, -1184874, 439697, -1117765, -597000, -1583232, -602369,
- -734976, -785979, -694174, 18790, -149787, 1238024,
- },
- {
- -10217727, -84373560, -15809775, 60349124, 3094524, -3694746, -4118337, -3364570, -5223754, 13458817,
- -18177912, -6790880, 4218195, 273267, -1287953, 65498, 15774341, 5617817, -3068217, -317828,
- -807454, 4796942, 12593918, 16902844, 7000260, 9777493, -10915123, 9549860, 13838385, -6573985,
- 4345433, 10796474, 6292664, -1336809, 2725694, 4391604, 4735202, 435939, -634045, 3800509,
- -4056060, -9666898, -3530463, -6601902, 1260573, -3091840, -2588792, 3062849, -341987, -5677410,
- -689879, 3907347, 1640141, 2514703, -142808, 938987, 2978023, 1328756, -2383170, 3485366,
- 1071058, -328565, -1121523, -58519, 2945811, 3795677, 2219424, 1629940, -1891933, 1512902,
- 2236604, 1168231, -906238, -231391, 72478, -902480, -2880313, 798864, 1591285, 1149978,
- 135828, -77846, -691490, 452045, -1096827, -1275605, -900869, -432718, 1055488, 657667,
- 118112, 189515, 736587, -310311, -60130, -372052,
- },
- {
- -1894618, 19062676, 9038222, -554051, 1471563, -89121, 121870, 715649, -1014686, -1605244,
- -1781875, 11710765, 1669669, -5938329, 19071802, -21467858, -10719165, 24029806, 6826851, -10961293,
- 2018635, -13154411, -14154602, -3848291, 6580427, 12205223, 12084427, 4066260, 6383932, -6295885,
- -1847910, 1047435, 18502182, 6576132, -2377265, 4017942, -1201517, 2891587, 3040300, 2833068,
- 215822, 625992, 1919314, -741419, -2453500, 2234994, 2093260, 478889, 1406065, -577136,
- 2330020, -2473901, -2782065, 4810364, 510564, 1257889, 4210679, 3694746, 1866700, -586800,
- 7431367, 3137474, -2008971, -1003949, -1480690, 427349, 4312147, -399969, 1241246, 336618,
- -1875290, 5628555, 1309965, -2137820, 1877438, 1377074, -1148904, 1801202, 2783676, -2851322,
- 2691334, -355945, -2287607, -705448, 99321, -1619740, 615791, -739808, -815507, -358630,
- -473520, -233539, 426812, 53150, 1365263, 542240,
- },
- {
- -17211544, -175136960, -10822781, 54636280, -12811887, -181462, 8150238, -4380330, 472983, 1893007,
- -4462471, -14125074, 1812476, -26986890, -612033, -4462471, -14723685, 1916629, -10359461, -8225936,
- -399432, 4758287, -4751845, -2370285, 11801496, -2701535, -6049462, -5921150, 2674154, 5818607,
- -1403917, -2506650, 5486284, -433255, -297427, -3215857, -568546, -4183835, -5949604, 2439542,
- 9075803, 3736085, -631360, 838592, -4710506, 558883, 290984, -1491427, -1210107, -3724274,
- 2203318, 2972654, 1424319, -275415, 46708, 2116882, -536871, 1290101, 437013, -1596654,
- -607201, 1002875, -1991254, 169114, 325881, -1457605, -1983738, 292595, -574989, 880468,
- -2939905, 2014877, 767725, -2150168, -864899, 252329, 3075197, 246424, -732829, -912681,
- 799401, -503048, 956704, -253940, 574452, -873489, 235686, 777389, 272194, -208306,
- -948651, 517544, 658204, -1003412, 421981, -389768,
- },
- {
- 611496, -3565897, 1760400, 1285269, -1180042, -825707, 1308354, 3402688, -2778307, 539018,
- -820876, -575526, 6736656, 3569118, 43670692, -14335527, 6380174, 2834142, 9215389, -2715493,
- -4594542, 5005248, 3341485, -11531450, 3195993, 7719130, -6642167, -9328132, 18321256, 22509924,
- 15532212, 1841467, -6041945, 13012677, -1846299, 8042327, -5568425, 10594074, -6714108, 5643050,
- 697395, -940061, -2241973, -30065, -1277216, 2894271, -4787815, -2858838, 2348810, 2790655,
- -1296543, 2953864, -5428302, -3544959, 1911261, 1313186, 1602560, -4123706, -2908230, 4043712,
- 1646046, 923955, -2009508, 853625, 322123, 340913, -218506, 1172526, 162135, -692027,
- 253940, -1933272, 188442, -226023, -1825898, -949188, 206695, -749472, -168041, 331249,
- -232465, -388158, 1324461, 2081449, -1738388, 5369, -432718, -2529736, -562104, -1066763,
- -955093, -762894, -1563368, -161061, -189515, -1188632,
- },
- {
- -53006340, -19168976, 28958816, -14985678, 4884452, 5558225, -19814832, 3686693, 18390514, 10092636,
- -893890, -2031520, -11176042, -9918690, 598611, 15738908, -5143224, 7079180, -2934000, 5919002,
- -3967476, -13948980, 8258685, 6127845, 20199768, 539555, 2571612, -5309654, -2004676, 11963095,
- 2232846, -1299765, 2891587, -5265630, 8107825, -18614926, -3312494, -9119289, -2404645, 2772938,
- 1529008, -266288, 7135552, -1196685, 10082436, -563178, -2568391, 2135673, -5387500, 2293513,
- -459562, -322659, -2614025, -7794829, -141734, 2704756, 588411, -399969, 3029563, -101469,
- -253940, 965831, 671089, 3995393, -1277753, -4119948, 1278290, -2085744, 306553, 3280818,
- 1413044, -1959042, -674310, 1126892, 1960116, -2549600, 3033321, 284005, -746251, 1636383,
- -670015, -616328, -828392, -1143535, -641561, 947040, 299574, 281320, 2174327, 175557,
- -887985, -47782, 357556, 278099, -1180579, 1307818,
- },
- {
- 1472637, -2182917, 5501316, -3651796, -1304060, 893890, -772557, 84289, 7055021, 1825361,
- -6862284, 2534568, 3128884, 8920110, -11034308, 14583025, 2574833, 10912975, 7173133, -18072148,
- -15073725, -2565169, -4227322, -12928925, 12731894, -12142946, -5526013, -7474854, 15675020, -6912750,
- 1283122, -1714766, 2675228, 4903779, -3251290, 3609920, -533650, -5033165, 12925167, -8430484,
- 2391223, -2664490, -5168993, 5377299, 6925098, -2973728, -1955284, -871878, 6152541, -4144644,
- -3339337, 2756295, 3314104, 5596343, -3361886, 1564979, 654446, 1476932, 2594697, 547071,
- 100395, -3709241, 877784, -1712618, 489626, 2307471, -2639794, 3481071, -47782, 651761,
- 104690, -547071, -974958, -989990, 679142, 190589, -1233193, 879931, 1165547, -957778,
- 129386, -823023, 1261647, -1593970, -790811, 675384, 1059783, 616328, -1074816, -198642,
- -798864, -1197759, 338229, 107911, -506269, 59593,
- },
- {
- -8538395, -155623840, -25984552, -10683194, -2404645, -6655052, -11654931, 2405719, -3359201, 8395587,
- 2214593, 17519172, 471910, -15809238, 17854716, -14057428, -16770774, 4904853, 3176665, 552977,
- -1160178, 5805185, 4504884, -7257421, -1170916, -11196980, -2061047, -6218039, -3614752, -8003135,
- 2515240, -2990908, -7357816, 3110093, 1203665, -5523865, -172336, -908922, 3835406, 3481608,
- 1200980, 332323, 4299263, -1886028, 9767829, 619012, -1172526, -2573759, 4873714, -824097,
- -168577, 162135, 2551211, -7384123, 1702418, 107911, 1381906, -4246649, -667331, 2234457,
- 4412005, -2987687, 767725, -1978906, 3437585, -1679332, 940598, 666794, -1058710, 5709086,
- 218506, -1906966, 2576444, -3156264, 646929, 602906, 620086, 346282, -215822, 73551,
- -2021319, -1306744, -626528, -1661079, 1202591, 478352, -739808, 380641, 477815, -559956,
- 587874, -612033, -1083406, -80531, 994822, -142271,
- },
- {
- -2179159, -46759308, 1395864, 4749697, -680752, 9454297, 10138807, 5230197, -4687957, 2239826,
- 119185, 6575058, 17727478, -12177843, 5531381, 16129750, -4788889, 10719165, -2224256, -9562208,
- -8726300, 631360, -6217502, -3018825, -1723356, -5741835, 1838783, -5689758, 5950677, -9258339,
- 5723581, -6947110, -7494181, -6269042, -3120831, -5541045, 1778117, -870805, -628676, -3277597,
- -1831804, 7077569, 5354214, -3508988, -2668249, 868657, 4530117, 1301375, -4579509, -1646583,
- 4974646, -3910568, -1543504, -3803731, 2049773, 3884261, 2485712, 446140, -1626719, 579821,
- 1599339, -748935, -1229971, 648540, 5028870, 2224256, 29528, 3008088, -1828046, -93416,
- -277025, 283468, -2080912, 1226213, -408022, 1002338, 772020, 2081985, -879395, -7516,
- -890669, -977105, -1006633, -770947, -1111860, 755914, 2637110, 583579, -554588, -468688,
- 227096, 1132261, -187905, -102005, 1193464, -37044,
- },
- {
- 24579024, -44977436, 13734769, -6491843, 3104188, 10145786, -17700098, 11157788, -4995047, -17995376,
- 17139066, -13494250, 3195993, -3788698, 5976447, -14878840, 10863583, 5488968, 10072772, -3674882,
- 3003256, 1901060, 9775346, 9417253, -7393786, -2727841, -3211562, -5196911, -4366371, -5080410,
- -4168266, -1341104, 741419, -3195993, -3349538, -891206, -12868259, -8805757, 432181, 3114925,
- 404801, -1660005, 8437463, 5142687, 4410395, 1340030, -350040, -496606, 7410429, 3837553,
- -4075924, 2352032, 449898, -1028645, -264677, -4682588, 1064615, 2827162, -998580, -744640,
- 4409321, 2588792, 1764695, 1025423, 1962263, -1009317, 5746130, 379031, 2326799, -719407,
- -1020592, 53687, 1435593, -878858, -253403, 1530619, 365072, 2321430, -2026151, 803159,
- 67646, 1760400, -1401770, 1691143, 407485, -1571421, -368830, 972273, -837519, 582505,
- 1367947, 1969779, -1449552, 481573, 64961, 88047,
- },
- {
- -2829847, 5697274, 268435, 879395, 9245991, 2916283, -11586748, 3141232, -5107790, -943282,
- 3053185, 3527242, -3427921, -28154048, -6476274, 15554761, -17401596, 7750806, -15829639, 7129646,
- -24429238, -4116726, -9404905, 12804908, 6435472, 13829795, 848256, -326954, 5309654, 139586,
- 11577084, -6272263, 17121888, -5769215, 8315057, 1386738, 6434935, -3641059, 4687957, 2008434,
- 10781442, -5038534, 2980707, -4218732, 1283122, 2224256, -767189, -1884417, 1808718, 3831648,
- -874563, 2068027, -2196339, -2650532, -2366527, 1221381, 1404991, 3036542, 1067299, 3772055,
- -8779450, 402116, 3595961, -1736241, -704375, 57982, -3107946, -1536525, 3957276, 1187559,
- -705985, 23622, -1115618, 1062468, 1103270, 2162516, -2284386, 1311576, -1393180, -221191,
- 1341640, 670552, -741956, -263067, 124017, 887985, 13959, 906238, -1646583, 456877,
- 1119376, -1475858, 139586, -906238, 82141, 621697,
- },
- {
- -195421, -83017960, 17576080, 7143605, -4573604, -27953794, 184147, -2931852, -8295193, 9160628,
- 3034395, 6714645, -3609920, -9557376, 23105314, -3069291, -19823958, -7444252, 1670205, -4908611,
- -8458401, -635118, -1812476, -4793184, 8510478, 8304856, 1268626, 9835475, 2134599, 9127,
- 2443837, -413391, -5748277, -2597382, -6287296, 1243393, 1857037, -7545721, -4532801, -3015067,
- 1111860, -5073967, -4081830, -6768332, -8160438, -4845260, 2973191, 2105608, -10009421, -3600256,
- 5292474, -2401961, -1635309, 2362769, -1840930, -1655173, -3004867, 106837, 1819992, 3364570,
- 2294586, -2612951, 3201898, 3943317, 1730335, -193810, -894427, 896038, -320512, 2064806,
- 1476395, -435402, -898722, -2347737, 1880122, -59056, 1514513, 600222, 770410, -683437,
- -1470489, 923955, -1770063, -3046206, 729608, 195421, 864899, 157303, -202400, 198105,
- -1105954, -1172526, 77309, -890132, -1086627, -944356,
- },
- {
- 5043902, 22341884, -2940442, 3421478, -7916162, 13878113, 269509, -265214, 6885370, 7990787,
- -6858526, -2784750, 8979166, -1460289, 101766568, -7903814, -10151155, -20432234, 11698417, 17050484,
- -9814000, 6488622, -3508452, 2680060, -1721745, -7187628, -847182, -4534412, -5307506, -20568598,
- -599148, -4043175, -490700, -8683887, 8303783, -2398739, 248571, 3691525, -2634426, -1765232,
- -10485089, -2529199, 13010530, -1203665, 6306086, -2430952, 10793790, 5396090, -14443438, 1114007,
- 954020, -928787, -3688303, -642098, -3353296, 1293859, 4613869, 1488743, 5080947, 7083475,
- 925029, 372588, -51003, -4438312, -3604551, -2645700, -5131949, 619549, -1119913, 1259499,
- -3379603, 1455457, -84826, -3462818, -983548, -2341831, -2182380, -15032, 1370632, 5155572,
- -2428267, 726923, 1574106, -916976, -2480881, 1517734, 413927, -2680597, -352187, 18790,
- 136902, -1617592, -1001264, -576063, 2339147, 266825,
- },
- },
- {
- {
- -13769128, 196635952, 36422396, 9848897, 18006650, 3500398, -1553168, 19172734, -12794171, 18114562,
- 16393353, -4264903, 2319819, -15243913, 2095944, 6289443, -14147085, -2522220, -2693481, 11176579,
- -2163053, 3524558, 486405, -44023, -1412507, -7329899, -8835285, -248034, 3322157, 519154,
- 2282775, 4100620, 2666638, -4046396, -7466264, -1742146, 4634270, 2171643, 3813931, -383326,
- -2745558, -7925289, 735513, -9407052, -127238, -7624641, 1584306, -2413235, 1639604, 7530152,
- -4453344, 936840, -1288490, -5150740, 1205812, -2017561, 2626373, 883690, -274341, -374736,
- -661425, 132070, -467078, -4471061, -81604, 1350230, -1057636, 562104, -695248, 1758789,
- -2550674, -1415192, -1376537, -1408749, -1110786, -2986076, 3075734, -1593970, 406411, 2419140,
- 1991254, -818728, -723165, -1386738, -1730335, -479426, 561030, 93952, 1773285, 1570884,
- 406948, -894964, -920734, 641561, -1039382, 418759,
- },
- {
- -291521, -54251880, 8797704, 17539036, 2263448, -4014721, 884763, -9541807, -2673617, -7744900,
- 16505559, 8160438, -10204842, 12255689, -8969502, 4387309, -9801115, -8026757, 1259499, -9499931,
- 4816269, 2115808, -17127256, -1558536, -308701, -3135863, -19266686, -2304787, 6131066, 21977348,
- -3906273, 8064875, -305480, -3161633, -2197950, -2962454, -8754217, 7552700, 428423, -1641751,
- 2536178, 8477729, 2005213, 1894618, 1824287, 892816, -9805410, -1323387, -3133716, 5479842,
- 3894462, -4710506, -2673617, 106837, -7296613, 1899449, 2534568, -1078574, -751619, -664109,
- 5712307, -3262565, -1433445, -278099, 4662187, 1663763, 1586990, 385473, 1329829, 642635,
- 1563905, -1334124, 2450816, -223338, 241055, 929324, -2294050, 1497333, -940061, 382252,
- -1530619, -885300, -90194, -819265, -2114198, 1221381, 400506, -470299, -513249, 433255,
- -323733, 411780, -351650, 1459215, 365609, -300648,
- },
- {
- 5318244, 53810036, -34609920, -25679610, -10337986, 7973607, -665183, -7299834, -11309186, 2153926,
- 29959008, 3973919, -4756140, -6768869, -2224793, 8082055, -7885560, 6260989, 2457258, -3385508,
- -8878771, -6837051, -3016678, 12351252, 3810710, -4263292, 6701760, 4832912, 9171903, 2105608,
- 189515, -196495, 1980517, 2780991, -8178692, 3234110, -4664872, 7332583, -6080063, -10009958,
- -1325534, -5405753, -5925445, -3202435, 9756555, 11476153, 10937134, 2526515, 8357470, -4002910,
- -2651606, 5247913, -4190814, -1953673, 5247377, 3133716, -3681861, -4949950, -3158412, 3090766,
- 1970316, 745177, -1868848, -3648575, -2001455, 2168959, 1582159, 649614, -949188, 1645509,
- 360777, 299574, 2213519, 573915, 345208, -157303, 3756486, 1320703, 1140314, 508417,
- 426812, 987843, -1120450, -1139777, -1288490, 490163, -341450, -1029182, -1115618, 71941,
- 395674, -2423435, 135828, -175557, 800475, 436476,
- },
- {
- -4359392, -121904056, 11380590, 60248728, -4923107, -6578816, 4004520, -6027987, -3533148, -3166465,
- -6504191, -1285269, -3149285, -1435593, 10484015, -9064528, 10041097, 6199249, -1253594, -7524783,
- 6577206, 376347, 10139344, 12509629, 8931921, 7896834, -2379412, 477815, 13018046, -5202816,
- 5849209, 11771432, 3146601, 4878546, -716723, 4593468, -1692217, 3564286, -2979634, -1855963,
- -2915746, -5586142, -6429029, -3894462, -2924336, 1015760, -1329829, 3636764, -3047279, 1734630,
- 1195075, -3907347, 4454418, 4076998, -1686848, -429497, 2593624, 2165737, 2337536, 25233,
- 1085016, -593242, 2112587, -1078574, 1777580, 2736431, 3371549, 1789928, -1282585, 865973,
- 1155883, 2071785, -2209761, 87510, 1397475, -1226750, -2089502, 779000, 1228898, 840740,
- 604517, 972273, -961536, -1341640, -789200, 290984, -892279, -63888, 123480, 143345,
- 432718, 1611, 486942, 863825, 89121, 132607,
- },
- {
- 1445793, 29196114, -4625143, 3432216, -1917703, 854162, 2680060, -3973382, -527744, 865973,
- -1960116, 9968619, 1856500, 8137890, -6434935, -9081171, -12799003, 14935212, 23262616, -17159468,
- -6870337, -7706245, -6681896, -4082367, 584652, 17616882, -1743757, 9414031, 6211597, -363462,
- 2174327, 5556614, 5288716, 1881196, 2870112, -2277407, 9157944, -2440078, 7683697, -2162516,
- 825707, -1866700, 902480, 1065152, 1159104, -392990, 951335, 2386391, 2178085, 2466385,
- -3290482, -1395864, -452045, 6573448, 3358128, -6929393, 7521025, 1540283, -1791001, 6460705,
- 3467112, 2885144, 720481, -1756105, 746251, 1239635, 25770, -2147, 2633352, 27917,
- 391916, 2233383, 1353452, 1035087, -2239289, 468151, 1214939, 1046898, 1649804, -549756,
- 1337882, -554588, -705985, -1178432, -412854, -625455, 184147, -474057, -1629403, 148176,
- -1813013, 1167694, 442382, 480499, 1066763, -475131,
- },
- {
- -7209640, -227025536, 5749888, 43080668, 5859409, 846109, 10384694, -4577899, -10197326, -10619844,
- -492848, 5835250, -13459354, -16373489, -5198521, -9615895, -6048925, -8117488, -8701604, -6944425,
- -5920076, 8046621, -3361349, 2082522, 8040716, -6804839, 3464965, -11027865, 1284195, 2979097,
- -1311039, -193274, 8679055, -4573067, 4859756, -576063, -5323612, -2370822, -4952634, -1445257,
- 7606924, 9728638, -158377, -1035624, -1200980, -2945811, 3030100, -7800198, 854162, -57445,
- 1752347, -1585917, 1823751, -2334315, 3995393, 2766496, -2981781, 1063004, 3609920, -5401458,
- 347355, 3855270, -3476239, -499290, 486405, -1633161, 779000, -53150, -855772, -657667,
- 1600412, -1121523, 886374, -1837709, 419833, 477815, 1467268, 2246805, -2378875, 53687,
- 392453, 99321, -172872, 736050, -988379, -188979, 474594, 61740, 1360431, -1831267,
- 479426, 798864, -524523, 207769, 208843, -442919,
- },
- {
- 535797, 1475858, 1185411, 756988, -1085553, 412317, 537945, 3262028, -4522601, 399432,
- 287763, 5405217, -1983201, 6356015, 42092828, 1069984, -149787, 3787624, 6905234, 103079,
- 93416, 2505577, 15927349, -21104396, -3868155, 5483063, -2092723, 2632815, 3553549, 35596688,
- 15630997, -13994077, 5425081, 862215, 7320772, 3228205, -2705830, 2118493, -3073586, 2423972,
- 4580046, -2150705, -51003, -6263673, 327491, 552977, 811212, -4651987, -34360, 1273458,
- -3762928, 4068408, -2138357, -7959112, 2729452, 1812476, -1975148, -12348, -4826470, 5465346,
- 342524, 1453310, -490163, -21475, -863825, 408022, 1168768, -975494, 163746, 377420,
- -3181497, 703301, -150861, 804233, -295279, -2392834, -1221918, 2165201, 100932, -1257352,
- 708670, 1159641, 1250909, 327491, -727460, -62277, -435939, -2782602, -1088237, -882079,
- -1064078, -179852, -1819456, -512175, -488553, -864362,
- },
- {
- 66209068, -113018304, -40916004, -28011240, 22887344, -6161668, -11080479, 8719857, 17756468, 3612604,
- 3286724, -57982, -16219407, -4537633, -7732552, 15251966, -3534758, 4515085, 2024003, -1333587,
- -6490233, -5860483, 10155450, 10370199, 11385421, 2467996, -1380832, -3413425, 5651640, 702764,
- -274878, 8347269, -736587, 139050, -2612414, -14115410, -4895189, -14915885, 6739341, -2850785,
- 5244692, -970126, 3080565, 2749316, 4322348, 7495792, -7100118, -1509144, 539555, -1479079,
- -2680060, 2675228, -3029563, -3876745, -1986959, 3037616, 730681, -774168, 641024, 2124398,
- 282931, -3463891, 5998996, 1481764, -494458, -1816771, -2393908, -955093, 3327526, 2018635,
- 705448, -1431835, -143345, -111132, 2162516, 916976, 67646, 1941325, -1589138, 383326,
- 1592359, -1374926, -2230699, -713501, -698469, 2012192, 368830, -551366, 1431298, 229781,
- 9127, -643171, 556735, -269509, 39728, -735513,
- },
- {
- -172872, 6419366, 2062658, -927713, -2382633, 621697, -127775, -795106, 5830418, 2334852,
- -9109626, 3584687, 11858405, -16996260, 11986180, 16547435, 7573101, 7627862, -9304510, -16779364,
- 4401805, -19386946, 10883447, -26280904, -522375, 1719598, -7252053, 1576253, 852551, 8004209,
- -4695473, -918586, 2775086, 7045357, -5421860, 3617973, 1047435, -18254, 8090645, -5326297,
- -1512365, -1420024, 919660, 2074469, 2062658, 2796561, -4793721, 2163590, 4318590, -1642288,
- -6210523, 5059472, 1823214, 7046431, -4443681, 259846, -347892, 3224984, 780073, 3018825,
- -2367064, 973347, -1952600, -1561758, 1912334, -3146601, 125628, 1410360, 2172717, 1012539,
- -2660732, 1007707, -977105, -1061394, 280247, 1104880, -425739, -1193464, 2413235, -1666447,
- -212064, -84826, 8053, -419833, -1431298, 1204738, 1347546, -98784, 32749, -69793,
- -418222, -1365800, -398358, -58519, 204011, -554051,
- },
- {
- 6034429, -183298464, -16548509, -18661096, 12693239, -20075750, -20339892, -978179, 15035607, 11163157,
- 1582159, 3277060, 4116189, -8250096, -4541928, -4284230, -11502459, 7900056, 4514548, -475668,
- 3235721, 7555921, -8875013, -621697, -4996121, -237834, -9481677, -4812511, 283468, -3185255,
- -9964324, 5455682, -8230231, 5558225, 2013266, -3195993, -6356015, 2892124, 6366216, 4000762,
- 801011, 1903207, 3674345, -2188823, 2295123, 9418326, -6162205, 394600, 2599529, 3405372,
- -1356673, -2295123, 535797, -90194, -886374, -2573759, 893353, -1201517, -1474784, 1561221,
- 2234457, 62277, -660888, 725850, 2143726, -238908, -393526, -451508, 558883, 586263,
- 1484448, 679679, 978179, 365072, 1075352, 952946, -986769, -1001801, 1599875, 326418,
- -1693828, -897111, -18254, -2641405, 289373, 1734093, 1058710, -1367410, 23622, 1410360,
- -1233729, 1169842, -356482, -612033, 130460, 1705102,
- },
- {
- 3244311, -51527260, 5285494, -1501628, 1703491, 12477954, 12247636, -3728032, 4497368, -2309619,
- 5215164, 1205275, 11962558, 6572374, 4078608, 2798708, 12981539, 1966021, -4101694, -12062416,
- 1314797, -8220031, -2749316, -1858647, -7730941, -7395397, 3661460, -4081293, -2018098, 3818763,
- -1250372, -5089536, -11664594, -7496866, -3599183, 4832, -79994, -3331821, -6907918, 678605,
- -1794223, 7165616, 2436857, -1427540, -1155883, 1290638, 1781338, -3235184, 1232119, -1291711,
- 1854352, -2574296, -2163590, -4140349, 2893734, 1415192, 3890704, -106837, 256624, -1224066,
- 2099702, 1595044, -3788698, 3636227, 2922725, 2625299, 3242700, 1727114, -159988, -1721745,
- -1649804, -706522, -417686, -91268, 1975685, 29528, -176094, 1793686, 1496259, -1853815,
- -747324, -1920387, 336618, 264141, -2193118, 923418, 2141578, 168577, -727460, -658741,
- 1056562, 64961, -404264, 916976, 999117, -762357,
- },
- {
- -33943128, 34809100, 12674985, -91805, 8810589, -25323664, -1498407, 20256676, -8578660, -8828842,
- -1438814, -5890548, 4398047, -1074279, -3876208, -9098351, 16223702, 2417530, 1066763, 2621541,
- 1316408, -866510, 13135621, 5538361, 4449586, -4753455, -2404108, -6651294, -5700496, -482110,
- -8011725, 2100776, -2478196, -7667054, -2114735, -7358353, -1253057, -15748034, 1814624, 6262599,
- -3075734, 6544457, 6354404, 4141959, -927176, 8523363, -3483219, -1302449, 9104257, 6715182,
- -2509335, -2491618, 3871376, -549219, -5941551, 630286, -1039919, 301721, 1959579, 766652,
- 1889786, -1038308, 3523484, -1134408, 4286378, 1110249, 724239, 2852395, 1207423, -276489,
- -2726231, 1924682, 2452426, -726386, 1308891, -505196, 779000, -508954, 726386, -369367,
- -388158, 2119030, 219043, 1042066, -1115618, -949188, 321586, -1119913, 777926, -299037,
- 1304060, 1859184, -1098438, 2320356, -1456531, 788127,
- },
- {
- 2672544, 18538690, -9710384, -703301, 66035, 2727304, -1550483, -5309654, 4277788, -2820720,
- 3192235, 3745212, -10980621, -12957916, -13561359, 15741055, -18073222, -2886218, 939524, 6162741,
- -11533598, -42729556, 35651988, -14095009, 18509698, 20328618, 1328219, -15959025, 11761231, -785979,
- 6980396, 10134512, -517544, 4727149, -1030255, 6122476, 4816806, -1375463, 5263483, 4649302,
- 6305012, 3009162, -2271501, 344134, -4295, 3905199, -405338, -965831, 1728724, 1676111,
- 42950, 724776, 113817, 39192, -5995238, 5087389, -782758, 1146219, 2510945, 680752,
- -5676873, -3646427, 3688840, -548145, -1801202, -141197, -74088, -5376762, 7099044, -979253,
- 930934, -1479616, -1040993, 1904281, 533113, 2000918, 589484, -906775, 356482, 1254131,
- -2077154, -644245, 860604, 761820, 353798, 710280, -9664, 2472828, -2175938, 40802,
- 891743, -1435056, 49929, -579821, 631897, 1218160,
- },
- {
- -16553878, -53583476, 7245073, -675384, -284005, -18553184, -12674985, -6730751, 3430605, 9609989,
- -16399259, 26590680, -14363444, 24746528, -16980690, -5392869, -11584064, -6550362, -8940511, -8410620,
- -8609262, -585189, 4591320, -656593, 6979, 10014790, 5082020, 7977365, -719407, -1165547,
- 3541738, 3653407, -638340, -7129646, -5739150, -3452080, -2596308, -1508607, -2067490, -8089571,
- 3103114, -9673877, 3332895, -6087043, -11171210, 3719442, -3505230, 2265059, -8688182, 463320,
- -1353989, -3329674, -11274, 1182727, -1305133, 268435, -3413962, -597000, -396748, 6978785,
- 1324461, -71404, 1795833, 606127, 2375654, 1121523, -3302293, 1899449, -207232, 4080219,
- 107374, -896038, -20938, 988916, 629213, -2000381, 306553, 2105071, 549756, -1005022,
- -896574, 1083942, -1649804, -1341104, -819802, 1231582, 533650, 814970, -997506, 344671,
- -1464584, 286152, -1604170, -608275, -119722, -621160,
- },
- {
- -5789079, 8327942, 14537391, 8180302, -2202781, 156229, 3061238, 4554276, 4604205, 7499550,
- 341450, -2785823, -810675, 42536284, 40102108, 2036351, -7952669, -13320841, 10224707, 7952669,
- -8876624, 5741835, -3962644, -2811593, 2879239, -12072616, -13320304, -5390184, -375810, 3321620,
- -10667088, -4301947, -6932077, -4151086, 5435818, -9655086, 2514703, 7906498, -1963337, -7901666,
- -1811939, 1859184, 6787659, -3277060, 1260036, 11541114, 3974992, -979253, -2455111, -2327872,
- -1088774, 963683, -4001836, -2463164, 212064, 2936147, 4956393, 1983738, 4165582, 5427228,
- 2257005, -1653562, 2333778, -4664335, -2201708, -6019934, -2199560, -2270964, 2152316, 13422,
- -2733747, 4832, -874026, -1655710, -2629594, -701690, -1496259, -321586, 370441, 1997697,
- 1853278, -3363496, 2814277, 102005, -517544, -1288490, 998043, -974958, -300111, -61203,
- -1017907, -1234803, -1514513, 741956, 1760400, 445066,
- },
- },
- {
- {
- 18800146, 128838280, -28095528, -9265855, -1516660, 2304787, -5511517, 21519396, -12749074, -14813879,
- -20008106, -23408108, 97174, -17536888, 562104, 7720204, -5631776, 7994545, 1207960, 16235513,
- 1595580, -4737886, -6890738, -3832185, -2251100, 200790, -4445828, -5938329, -7249368, -7319161,
- -9514426, -5937793, 2687039, 949188, -2058363, 4726075, 2553895, -3328063, -1032403, 4194573,
- 2195802, -2998424, 9257802, -5623723, -2058363, -9437654, 2519535, 2425583, 845035, 4255776,
- -5407901, 3301756, -959388, -2085744, 3112241, -2670396, 4410932, 6591164, 4688494, 296353,
- 1828582, 2684, -2158221, -3391414, -8590, 1221381, 576063, 1047435, 518617, 759672,
- -725313, 597000, -1665911, -937914, 2428267, -8053, 3154117, -2666638, -643708, 1063541,
- 180389, -836982, 842887, 677531, 315143, -681289, 417149, 294742, -501974, -654983,
- 941135, -90731, -233539, 1271847, -1051730, 387621,
- },
- {
- 195958, -53364968, 7775502, 8241506, -1676648, -2250563, 3762391, -5182952, 3417720, -1155883,
- 13245679, -459025, -5708012, 4532801, -25607668, 18701362, -7954817, -13532368, 15378667, 4869956,
- -2747169, -8803609, -21038360, -2873333, -13593035, -7151658, -3444564, 6186901, 8317204, 12640089,
- -1931125, 11712913, 3959423, -626528, -9644886, -6446746, -9922985, 3141232, -3620121, -175557,
- 3135863, 969052, -7708930, -1280437, -490163, 3643206, -7855495, -1648731, -3365644, 4399657,
- 6904160, -3018288, -1742683, 1326071, -5415417, 1892470, 980863, -742493, -2260764, -2441152,
- 5424007, -3584150, -1306207, 779537, 3682398, 3154117, 1588064, -2718714, -352187, -243739,
- -369904, -1978369, 2263985, 1344325, 2070711, 2623151, -785442, 1203665, -741956, 925029,
- -782221, -48318, 45097, -277562, -2021856, 49929, 185220, -182536, -2275796, -2297808,
- -998043, 1185948, -345208, 301185, -1431835, -386010,
- },
- {
- -3594888, 104227584, 11853573, -13211856, -2382096, 3315178, -4282620, -6209986, -4179003, 9678172,
- 16780974, -3220689, 11020886, -5833103, -8844948, 6351720, -3361349, 16797618, 4297115, 9594420,
- 3074660, -8991514, -4512400, 10351945, 4276714, -4154844, 1178969, -119722, 7878044, 645319,
- 6113886, 1525250, -1855963, 8277476, -2244121, 313533, -8676908, 8797704, 474594, 278636,
- 4377109, -1839857, -5775121, -4582193, 3890167, 4747013, 2497524, -2864206, 9161165, -523449,
- -2857227, 2700998, -1946157, -4182225, -206695, 1957968, -2773475, -482110, 905164, 3523484,
- 2058363, 2364380, 584116, 761283, 328028, 613643, 724776, 929324, -1348083, 1372779,
- -360777, 638876, 764504, -1781338, -1016834, -41339, 2841658, 903554, 3327526, 2185602,
- 965831, 1367947, -839666, 419833, 527207, 571768, 227633, -394063, 1442035, 1317481,
- 1339493, -129386, 840740, -427886, 580357, 336618,
- },
- {
- 25246354, -110589504, -16451335, 50345068, -3833795, -4308926, 3391414, -2374580, -6153078, -7752416,
- 4429185, 9330816, 5491116, 4621385, 7682086, -12663174, -5279589, -9316321, -527744, -4279935,
- 3017752, -10934987, -712428, 3763465, -1633698, 3012920, -1801202, -12659953, -1358820, -6417755,
- 2040110, -960462, -6921340, 3151432, -465467, 4367982, -185757, 1804960, -4735739, -4497905,
- 5945846, 5012227, -2324651, 3751117, 2318746, 1738925, -2900177, 3491809, -5524402, 570157,
- 1294933, -3567507, 5048734, 4773856, -1616518, -130460, 3740380, 3295314, 258235, -3717831,
- -818728, -1005022, 755377, -2288144, -1395328, -1445257, -1075352, 832150, -1092532, -1825898,
- -1801739, 1257889, -512712, 1341640, 1292248, -576599, -33823, 56371, -1866163, -964220,
- 570694, 973347, -241055, -400506, 305480, 1191853, -1245541, -347355, 440234, -723702,
- -1180042, -606664, 743029, 1169305, 158377, 894427,
- },
- {
- -789737, 29633664, -2384244, 6039798, -9664, 493384, 1146219, -3580929, -67646, -768799,
- -4667556, 5470715, -3536906, 7765838, 921271, 12005507, 6649146, -22953378, -10405095, -10475425,
- -5083094, 1530619, 3198140, 8695698, 2138894, 21084532, 12699145, 9349607, -6458557, -7956427,
- -6536404, -4105989, -5730023, -7761543, 305480, -11853573, 4253092, -2501282, 713501, -9140764,
- -2663954, -4262755, -701690, 5323612, -1457068, -3288334, -1755568, -1530619, 3979824, 5726802,
- -3732864, 1015223, 822486, 5416491, 2599529, -9710384, 4111894, -1002875, -3715147, 3941169,
- -398358, 292058, 1062468, -907312, -1410897, 168577, 1154273, 1872606, 722628, -2558190,
- 545461, 553514, -75699, 193810, -3328063, -1123134, 75162, 399969, -797253, -2089502,
- 637803, -41876, 1791538, 234613, -1109175, -532576, 543850, 905701, -332860, 1362042,
- -1228361, 584652, 19864, 664646, 484794, -1167694,
- },
- {
- 39355860, -200421424, -12813498, 27834072, -10924786, 2597918, 6113886, -11077794, -4987531, -9768903,
- -3986804, 7424925, -10992969, -1774895, -9526774, -7053947, -140660, -11054172, -473520, -7176891,
- -16604344, 10257993, 5199058, 3810710, 4430796, -2852395, 2703145, -8360154, 9836012, 9909563,
- 7062000, 3818226, 1937567, -10087804, 4282620, 935766, 1970853, 2610803, -519691, -1868311,
- 476741, 9301289, 5468567, -1066226, -3499862, -2320893, 6374269, -3444564, 2189897, 1854352,
- -675384, -7463043, -34897, -2271501, -329639, 1213865, -3309809, 1466195, 3709241, -4678830,
- 2482491, 3016141, -5457293, -3550864, 364535, 497142, 856309, 459025, -647466, -2425583,
- 1530619, -137976, 2561948, 887985, 1445257, 718333, 167504, 2823404, -1226750, 404264,
- 135828, 915902, 585189, 1417876, -1352915, -782758, -430034, -634045, 1346472, -1329292,
- 891206, 179852, -1363652, 1023813, 901406, -386010,
- },
- {
- -1102196, -1828582, 1755031, 1189706, 912144, 537408, -491237, 2193655, -3559454, 1401233,
- 404801, 6967511, -2851858, -1506460, 31026844, 14299557, -929324, -659278, 17039746, 10718628,
- 2816962, -229781, 22076668, -25213606, -15607911, 9268539, 3219078, 2796561, -10453950, 17248052,
- 3874597, -19881404, 4801774, -1028645, 5240397, -2464238, -6985765, -2183454, -9058623, -4548371,
- 2752000, -1326071, 912144, -6577206, -1032940, -3041911, 2274185, -6578280, -3882651, -897111,
- -6671695, 3737695, 30065, -9023189, 707596, 3040837, -2248416, 599148, -2698313, 5628018,
- -219580, 4588636, 3406446, 323196, -167504, 452582, -1658394, -2233920, 926102, 488553,
- -2986613, 752693, -472983, 648540, -1163936, -2480881, -1087701, 3102040, 1963874, 405338,
- 1806034, 321586, -775778, -351650, 32749, -78383, 821413, 222801, 437550, 732829,
- 1341104, 899259, -1591822, 468688, -13422, -368293,
- },
- {
- -67063768, -234838080, 15887621, -44022340, -9317932, -7390565, -4059281, -1245541, 2422362, -4158602,
- 3637837, 6412386, 5180268, 275415, -10895258, 16621523, -5623723, 4709432, 6695317, -12870943,
- -1943473, 7195144, 17542794, 10315975, -3345243, -5912023, -7604777, -4813585, 8217883, -3219078,
- -6179921, 5440650, -362925, -1791538, -9771051, -18422188, -816044, -7217156, 4857071, -3936338,
- 2713346, -4061965, 2267206, 4988605, -1074, 4040491, -3370476, -234613, 257698, -3890704,
- -5369783, 3520800, 4996658, 4014721, 3009698, 3584687, -3411278, -502511, 1079111, 756451,
- 974421, -2870649, 5079336, -847182, 105764, 1201517, -476741, 543313, 2185602, 494995,
- 408022, -1743757, 449361, -949188, -253940, 977642, -511101, 1782948, -28454, 138513,
- 434865, -1384053, -1395328, -539018, -928787, 1875290, 531502, -192200, 82678, -1083942,
- 224949, -892816, 1086627, 524523, 33286, -966368,
- },
- {
- -1260573, -4533875, -6289443, 1877975, 792958, -177167, 754304, -3042448, -1769527, 4075924,
- -4132832, 2935610, 7059316, -33916284, -2821257, 3481071, -7368554, 2241436, -10808285, -13567265,
- 10636487, -12505871, 965294, -40527848, -7016366, 752156, -959925, 6537477, 7786239, 6948720,
- 1117228, 8156680, -3187403, 4765266, -3200825, 4791036, 7373385, 1130650, 6610492, -1574106,
- -5717675, -2375654, 1578937, 1443109, -4510790, -455803, -6674916, 2400350, 3205656, -884226,
- -1810329, 4461398, -6133750, 2378875, -2950106, -576599, -2014340, 2330020, 609885, 1363652,
- -3730179, 3551401, -1500017, -1223529, 1957968, -1944547, 1465121, -1019518, 277562, 1198833,
- -1083406, 2277407, 429497, -389231, -188442, 2308008, 805306, -1567663, 1627256, -3246995,
- -484258, 1841467, -357019, -544924, 460098, 1296543, -215822, -1110786, 47245, -215822,
- -122407, -37581, 730681, -525597, -76236, 156229,
- },
- {
- -2866891, -205321456, 158377, -6618545, 7387344, 905164, 3336653, 309238, 11183558, 829466,
- -11415486, -10600516, 379568, 2369748, -4563403, 1803886, 3318936, 10183367, -2288681, -5807333,
- 6965900, 6948184, -6636798, 2183454, -603443, 8079907, 6305549, 4438849, 496069, 6049462,
- -10196252, 1896765, -6904697, 2853469, -1919850, 666794, -3046206, -899259, 934155, -1802813,
- -7525857, 468151, 7738458, 1200980, -1211181, 7580618, -7763154, -1840394, 1085553, 4176856,
- -850940, -5043366, -2260764, 6188511, 2548526, -2161979, 2112587, -1567126, 625455, 2968359,
- 1921461, 2573759, -362388, 14496, 2398739, 3863860, 1838246, -1044751, -1438814, -2017024,
- 1180579, 1728188, 1861868, 1704565, 667331, 135828, -3323768, -1198296, 1550483, 910533,
- 935229, 1219771, 1122060, -1920387, -1096290, 90194, 1409286, -319438, 61740, 558883,
- -998580, 1640678, -161598, -932008, -303869, 1457605,
- },
- {
- -3539053, -40709312, 18480708, 5542656, 6258304, 1332514, 2137820, -3523484, 12531641, -5461051,
- -1213328, -11516418, -4352950, 6458557, 8059506, -13038984, 16291348, 1872069, -13773423, 4996121,
- 26044144, -5647882, 869731, 4869956, -8702677, -7091528, 4040491, -4671851, -5135707, 11862163,
- 4908611, -3574487, -5086315, -2509872, 90194, 2610266, 1904818, -2453500, -9273371, -4380330,
- -2887829, 8075613, -2043868, -1477469, -1202591, -5499169, -3112241, -7329899, -2322504, -4290673,
- 273804, -1618666, -1838783, -2530273, 3734474, -486942, 2350958, -3002182, -2156611, 616328,
- 1881196, 729608, -1961726, 2895882, 143345, 2556043, 2217814, -1723356, -533650, -3648038,
- -2807298, -186294, -1582159, -2148021, 495532, -782221, -787053, 1631014, 2008434, -657130,
- 871342, -1129040, 1549946, 1897839, -457951, 1358283, 967978, -398358, -365072, -1085553,
- 396748, -796716, -1288490, 1326608, 459025, -878321,
- },
- {
- 24195698, 117742768, 7436199, -2589329, -1682554, -22870164, 15735686, 13683766, -4247186, 91805,
- 5681705, 2287070, 8422968, 5487895, -6789270, -2771865, 12936441, 6018323, 820339, -15308874,
- -4495757, -3056406, 7625715, 1840394, 11101954, 4956393, -2280628, -8387535, 3181497, 4191351,
- -10162966, 4054986, 3321084, -4065187, -2604361, 428423, 12595528, -1353989, 11797201, 3551401,
- -1506997, 11945378, -1312113, -7582765, -4753992, 5545877, 1620813, 1348620, 3172907, 1380832,
- -3077881, -3209951, -2119566, -1354525, -4391604, -777389, -1995012, -1886028, 129386, -831076,
- -2076080, -2808372, 3751654, -1693291, 1263257, 243203, -2547453, -438624, -382789, -1832877,
- -2808372, 2280628, 2185602, 106300, 1550483, -613643, 1704565, 124017, 1822677, 144418,
- -322659, 1034013, -1199370, -581431, -1975685, -1545115, -725850, -2239289, 1317481, -260382,
- -202937, 1597728, -766115, 2731599, -347892, 1855426,
- },
- {
- -1582696, 34277596, 8591545, 3966939, 248571, 1719061, 519154, -7832947, 1206349, -2524367,
- 1093606, 4658966, 4754529, 16542067, -27866822, -5801964, 4564477, 15491947, 11225434, 11055246,
- 6095096, -25496536, 30033096, -9438728, 20872468, -5528160, 672699, -5627481, 5596880, -9248138,
- -2320356, 5108327, -10266046, 1283658, -4854924, 5540508, 1813013, 559420, 9549323, -1914482,
- -1238024, 903554, 4591320, 5425618, -2716030, 5249524, 884763, -4443681, -944356, 4244502,
- 3571802, 1133871, -3258807, -679142, -6959458, 3273839, -3796214, 65498, 2400350, 2654290,
- -1051730, -2415382, 1638530, -1941325, -1044214, 1225139, 1064615, -3852049, 3949223, -3156801,
- 2519535, 596464, 687195, 2260764, -350577, -1188095, -478352, -119722, 1176284, 536871,
- -2815888, -957241, 2350421, 1249836, -1123671, 288300, -773631, 1613297, -1143535, 47245,
- 380105, -453656, -810675, -394600, 290984, 280247,
- },
- {
- 27209692, 3580392, 5492190, 2942053, -4166118, -7065221, 1424855, -7863012, -3846143, 7491497,
- -16534013, 12626130, -11625403, 29782914, -27410482, 1949378, 16456167, 7056095, -9717364, -3262565,
- 1091459, 1648194, -4093641, -10008348, -6641093, 7249905, 4551592, 1830193, -7276749, -5342940,
- 3337190, 2603824, -118112, -6335614, -4642323, -2572686, 3135863, 4811974, 4532264, -5466420,
- -1107565, -6723772, 10295573, 3502009, -3012920, 8999030, -4051228, 1512902, -912144, -425739,
- -7332583, -375273, 2257542, 531502, -243739, 2945274, -297427, -1692217, -2061584, 4392141,
- -472983, 2510945, 191663, -3967476, 1341640, 2290291, -1243930, 2246268, -275415, 2927020,
- -2047089, -1286880, 868120, 3779571, 2661269, -1569811, -185220, 2064269, 1981591, 99321,
- -260382, 2788508, 1591285, 583042, 306553, 3026341, 245887, -1799054, -881542, 1246077,
- -1073205, 1341640, -20401, -556735, -434329, -163746,
- },
- {
- 6671695, -607201, -7884486, 7286412, 1248225, -2866354, 1480153, 7138236, 612570, 5743982,
- -2641942, -8129836, -2476586, -1902671, -29395294, 2403034, 18314278, -172872, 2246805, 6918119,
- -11329587, -10241350, -11308112, -1260573, 4363687, -3791383, -1772211, 11014981, 5312338, 10438381,
- -13952738, -11494406, -2158758, 2662343, 4229469, -13552232, -5753646, 383326, -5496485, -3523484,
- 4985920, -2217814, -5305895, -3631932, -4177930, 2615635, -1756642, -2481417, -196495, -301185,
- 1154273, -470836, -4854924, 1318018, 3064459, 1681480, 3069291, -585189, -3319473, -3682935,
- -1031866, -1569811, 2256469, -4392141, 61740, -879395, 2841658, -2681670, -1656247, -1664300,
- -642635, -2983929, -2844879, -830539, -3781182, 1108102, 512712, -403190, -2041183, 337155,
- 2969433, -3779034, 2131915, 453119, -284542, -925029, 1826435, 713501, 433792, -452045,
- -725313, 108448, -722091, 485868, 693100, 1018981,
- },
- },
- {
- {
- -24676198, 87957176, 59894928, -17207786, 1128503, 2042794, 8681740, 816581, -5628555, -21022254,
- -10173167, -32556388, 4937065, -19888920, 1692217, 8370355, -1425392, 7827041, 8140037, 1049583,
- 7224135, -1975685, -6249178, -4052302, -9435506, -4483409, 7220377, -6549825, -15841987, -3133716,
- -16365973, -3278671, 479963, 1732482, 1113470, 13417478, -7068443, -1147830, -1445793, 3955128,
- 3919695, -253940, 4627291, -2199560, -6135898, -2088965, -3565897, 9423695, -2246268, 1563905,
- -6043556, 3725347, -1064615, -1076963, 5517423, -2643016, 2048163, 4669703, 12664785, -4988605,
- 3429532, -594853, -5464809, 603980, 303869, 1367410, 2151779, -1946694, 866510, -1626719,
- 2307471, 16643, -125091, -1478006, 2687039, 585726, 580894, -1253594, 987843, -1072668,
- 207769, -291521, 1006633, 1124208, -52613, -837519, 160524, 2396055, -1569274, -769336,
- 15032, -1291175, 1316944, 822486, -59593, -732292,
- },
- {
- -9664, -23517094, -9799505, -4247186, 3219615, 1100049, -374199, 5675263, -4379256, 4082367,
- 9725417, -5232881, -8624831, 10551661, -25918518, 7779797, -1208496, -1039919, -7329362, 27508728,
- -3184718, -26907970, -992674, -10340671, -17249126, 1228361, 5494337, -9891310, 20205136, -463320,
- 5020280, 9820980, -306553, 4505421, -11371463, -8316668, -3427921, -4695473, -3840775, 5603859,
- 1642825, -3206730, -4514011, -2702608, -92879, 3187940, -4152160, -2010582, -1750736, -251256,
- 4793184, 2248416, 576063, -4235375, 536871, -2316598, -850404, 2792803, -5376226, -143881,
- 4288525, -2211371, -550293, 1582159, 3041374, 84826, 554588, -761283, 918049, 474057,
- -1362578, -1200443, -1691680, 2511482, 1063004, 3003793, 881542, 796716, -775778, -1562831,
- 739808, 445066, 194347, -1233729, -462246, -382252, 72478, -250182, -2268280, -1773822,
- -1027034, 573915, 1345935, -447750, -1660542, -700080,
- },
- {
- 1937567, 118941600, 1022202, -11644193, -2388002, -3162170, -4014184, 536334, -3371013, 7323456,
- 12834436, -5648956, -4379256, 10695542, -809601, 7010461, -13675713, 30925912, -11683385, 13911936,
- 10363219, -9400610, 267362, 3360812, 2500745, 38118, 1036698, -7255274, 4231080, 6758131,
- 6273337, 4751308, -7063074, -858457, 5906117, -835371, -4812511, 2538326, -591095, 13474923,
- -4450123, -1878511, -1416266, 1816234, 485331, 1515587, -392453, 1293859, -812286, 8290361,
- -1829119, -4386772, 2762201, -350577, -5343476, 1000727, -5931887, 2561948, 777389, 3029026,
- 3153580, -52076, 1632088, 226023, 2995740, -804770, -1961726, 3546032, -611496, 3327526,
- -2159295, -70330, -224949, -1904281, 988916, 829466, 751082, 949188, 4085588, 1883343,
- 126702, 657130, -90194, 283468, 1509144, -1191853, 1063541, -24696, 2038499, 288300,
- 156766, 1952600, -1085016, 1218697, -209380, 489626,
- },
- {
- -45678588, -44128640, 10628433, 34409132, 5835787, -745177, -9157944, 4833986, -1280437, 3360812,
- -930934, 2972654, 4811437, 16109349, -1538135, -7986492, -729071, -5498632, -12572443, -4151086,
- 9803263, -7451232, -11421392, 1995012, 7063611, -11684459, 2168959, -8459475, -7659001, -2239826,
- -19864, -3331284, -8910447, -1887101, 8116415, 1930051, 2029909, -5294621, 1896228, 3794604,
- 4788352, 6055367, -4977867, 2121714, 3272765, 7055021, -4117263, -2962454, 975494, -5338645,
- 2333241, -2461016, 1357747, 5925981, -1385664, 2544768, 3243237, 947577, 568009, -1440425,
- -3762391, 1258425, -4756140, 2083596, -2605972, -2375654, -118648, -253940, -1401233, -509491,
- -4126390, -41876, 2034204, 943819, 824634, -1446867, 889595, -845572, -398358, -1324997,
- -912144, 857920, 463320, -157303, 453119, 360777, -791348, -709207, 1722282, -1591285,
- -550293, -203474, -618475, 676994, -603443, 1580548,
- },
- {
- 121870, 25420300, 1691680, 5995775, -364535, 111669, -416075, -1786706, 351650, -2005750,
- -1787243, 9404368, -278636, -5587753, -4998805, 3760781, 13658533, 17971754, -42398308, -26657788,
- 3672734, 11683385, 514859, 10097468, 6771553, 9503689, 24984898, -7558606, 5621576, -9732396,
- -9992778, 824097, -12952011, -12065100, 2221572, -11084774, 3156264, -2987687, -4629438, -1999307,
- -9615358, 1486596, -5813775, 4935455, -5266167, 10907069, -10669773, -3705483, 7247221, 1216013,
- -2863670, 1777580, 2712809, 328028, -121333, -2015950, 565862, 1734630, -1257889, 2145336,
- -4387309, -20401, 68719, -612570, 224412, -972273, 2238752, 2439542, -2091649, 523449,
- 737661, -615254, 200790, -244813, -4756677, 752693, 1411434, -957241, -955630, -1073742,
- -34360, -680752, 631897, 119722, -999117, 1804423, 239444, -237834, 173409, 237834,
- 756988, 53687, -967978, 384936, 392990, -343597,
- },
- {
- -68103152, -103333152, 26877906, 5235565, 5888400, 1177895, -698469, 2565706, -9797894, 239444,
- -10370735, 2648384, -6649683, 7663833, -10942503, -4999879, -7522635, -9658845, 552440, -7288560,
- -4909685, 4958540, 1955284, 6874095, -1522029, 7583302, -8255464, -1814624, 10980621, 8808441,
- 1576253, 1520955, 3655017, -8460549, -571231, 5134097, 8938364, 939524, -5752035, 367757,
- 684510, 1108638, 8660265, -1329829, -4568235, 1884954, 2906619, 1648731, -2882460, 6937446,
- -2401961, -3877282, -3066070, -156766, -5478231, 3074123, -3311420, 1598802, 433792, 8053,
- 2488397, -628676, -2800319, -4964982, 244276, 3170223, -1686848, -619012, -62277, -814970,
- -665183, 2660195, -536334, 2683281, 657130, -1074, 864899, 1378685, -437013, 791885,
- -792958, 3318399, -1098438, 2301566, -1554241, -241055, -794569, 396211, -208306, -401579,
- 112206, -457414, -1066226, 1049046, 641024, -492311,
- },
- {
- 91805, 323196, -1634235, -3000572, 2670933, 810675, 367220, -1403381, 45097, 1648194,
- -2555506, 8738648, -2459406, 3803194, 11221676, 12912282, -5128191, -1125281, 9967545, 20077898,
- 7207492, -4011500, 22267258, -27726698, -15967078, 15502148, -11545409, 5075578, -3041374, 3511136,
- -1130113, -4571993, 11759620, -4125853, -9877351, 2978560, -5006322, -4857071, -7310571, 2741263,
- -4869956, -26844, 3061775, -6756521, 928250, -1699196, -681289, -6283001, -117038, -2574296,
- -1888175, 872415, -1534914, -3388729, -3083787, 3076807, 143345, -2981244, 263604, 2386391,
- 3142842, 2035815, 2165201, 1444183, 2543158, 714038, -3726958, -587874, 529892, 724239,
- -2255395, 214748, -1213865, 783295, -1433982, -2057289, -506269, 2139968, 1549946, 2006287,
- 230854, -1479079, 604517, -601832, 858457, -218506, -122407, 2587181, -41876, -12348,
- 2218351, -29528, -319975, 1035087, -147640, 470299,
- },
- {
- 52943524, -362089888, -18888730, -23886460, -21437256, -9076877, 3303367, -6510634, 7955353, -4357245,
- -3146064, 6332930, 17403744, -14969572, 18952616, 1975685, 1386201, -4789426, -3047279, -5697274,
- -3037616, 14843407, 19837380, 8062728, -12540768, -639950, -5699959, -6095096, 10864120, -1609539,
- -8745090, -2309082, 2808372, -743029, -6656126, -14833206, -11566347, 2153926, 23085, 1724966,
- -477278, -2684892, 3992172, 7072738, 815507, -1724429, -34360, -4838818, 1081258, -1049046,
- -4039954, 3961034, 57445, 2108829, 10656351, -487479, -829466, -13959, -2855617, 2023467,
- 198642, -346819, 2340757, -242666, -1338956, 1988033, 1153736, 367757, 1149978, 885837,
- -1591822, 190052, -1487132, 823560, -843424, -355409, 1642825, -441308, 1502702, -864362,
- -659278, -92879, -847182, -378494, -1408749, 820876, 2354179, 325881, -1551557, -1369021,
- 1233729, -346282, 194347, 1454920, -719944, -688269,
- },
- {
- 50466, -12770548, -4178466, 3020973, 2096481, -134218, -1579474, 2911451, -8005282, 1589138,
- 4154307, -408559, 671089, -3395709, -50422380, -3570729, -10361072, 10911364, -13589277, -5448166,
- 1279363, -7765301, -930934, -15683073, -2754685, -15364172, 5741835, -1023813, 15346992, 5271536,
- -8259759, 5707475, -1979980, 9997073, -1933809, 4044786, 3596498, 5391795, 4078072, -4209605,
- -5484137, 1163936, -4799089, 7800735, -9197136, 171799, -5095442, 5495411, 2340757, -6219113,
- 2185065, 4171487, -6553583, 3057480, -1289027, -2043868, -3209951, 2433636, 437550, -1060857,
- -1905892, -50466, -519691, 3198140, 380105, -78920, 272730, -2233920, 75162, 1076426,
- 1020055, -1920924, 3878892, 1210644, -2123861, 1865626, -298500, 379568, -2114198, -760209,
- -219043, 1190243, 11274, -1032940, 2425046, -382252, 86436, -1488206, -301185, -613107,
- 499827, 251256, 653372, 29528, -1268626, 979253,
- },
- {
- -127238, -237073600, 17135308, 1104344, 4847408, 18209050, -14892262, 9631464, 8661875, 8426726,
- -15902116, -8023536, 6475200, 9812927, -4529580, -1083406, 18443126, 2520609, -4597763, -12343199,
- 11593727, -3429532, -1261110, -3094524, 8792335, -6979, 8512088, 3593814, -4726075, 9528922,
- -9444633, 3551938, -8005282, -1985886, 4080756, -943282, 4433480, 600759, -8386461, -1519882,
- -3004867, -4305168, 7846369, 2659122, -3460670, 3972845, -1793149, -2596308, -1209033, 3308736,
- -1978369, -153008, -3335579, 4369593, 3761855, -1495186, 163209, 510027, 542777, 4377646,
- 3963181, 1779190, -2717104, -1504849, 4273493, 3576097, 461172, 2402497, -5869610, 1644973,
- -275952, -183610, 3322694, 1640678, 2026688, -1704565, -5267778, 2632278, -823023, 558883,
- 1697586, 3055869, -974421, -1850057, -1137093, -437013, 649614, 1416266, -554051, -1845225,
- 1847910, -710817, 857383, -1767916, 432181, -652298,
- },
- {
- 3761855, -19571630, -11625940, 7412040, 12511777, -10275172, 4866735, 591095, 8740258, -8619999,
- -234076, -16996796, 6030134, 2057289, 1672890, -12448963, 18246632, -139586, 264141, 5509906,
- 7240241, 7505992, 1636383, -5213017, 3127273, -6462852, -3152506, 2626373, -2816425, 5003637,
- 8334921, -6836514, 4473746, -1508070, 4912369, -4172561, -4223027, -130997, -5417028, -4991826,
- -558883, 9082245, -2946885, -2295123, -1809255, -3881577, -5221070, -2753611, -3684008, -5932424,
- -4379256, -1868311, 2434173, 250182, 1295470, 2148021, -1564442, -2426657, -388158, -255551,
- 376347, -2471754, 3263102, -1650341, 631897, 3069828, 449898, -2949032, 1380832, -3410741,
- -2464774, 194347, -2116345, -1465121, -863288, 417149, -455803, 306553, 2656437, -1868311,
- 1501091, 224412, 77309, 2003065, 1381369, 419296, 863288, -670015, 650151, -1511292,
- -498753, -822486, -191126, 569083, -514859, 1020592,
- },
- {
- 4200478, 154511456, -5863704, 6663642, -3105261, -10195179, 6263673, -4336843, 12731357, 12300249,
- -525060, 8251169, 3666292, -3261491, -11432666, 9002251, 9448391, 4329327, 580357, -26884348,
- 5429376, 958315, 1322313, -9157407, 19803020, 9683541, -6958921, -5206037, 2361695, -3412889,
- 5363878, 4893042, -5244692, 1096827, -112743, -1056025, 8400419, 9625559, 2525978, 3054796,
- 1837172, 8289824, 2344515, -11411728, 1028645, 314606, 6521371, -66572, 2287607, -345208,
- -3285113, -3358665, -5733782, -151398, -652835, -3058554, -3561065, 1169842, -2884608, 615254,
- -5628018, 1805497, 923418, 2653753, -2084133, 350577, -1687922, -1267552, 3789235, -4908074,
- -3199751, 3541738, -687195, 1067299, -148176, 44560, 1648731, 19327, 1635309, 2003065,
- 410706, -2078764, -599148, 244813, -2295123, -1246077, -1575179, -1216550, 796716, 716186,
- -175020, 546535, 572304, 719944, 1326071, 273267,
- },
- {
- 293132, 51174536, -6075231, 5828271, -190052, -658741, -43487, -3668976, -3458523, 587337,
- -500901, 2353642, 390305, 18515068, -25938382, -2484639, 14432164, 29425358, -5506148, 18283138,
- 7357279, 8016557, -11180337, 3256122, 16699907, -18255758, 6921877, -3296924, -10763725, 17308718,
- -11931419, 180389, -8641474, -326954, -3308199, -4304094, 8275865, 1699196, 14672682, -6724308,
- 3233037, -5156645, 4142496, 713501, 246961, 5427228, 298500, -4890894, 594316, 8229694,
- 2429341, -2943126, -4577899, 453119, -2145336, 2437394, -5121212, 3499325, -1627256, 2484102,
- 2647311, 3103114, -4065724, -350577, -1403381, 1633161, -2865280, 2255932, -741419, -1945083,
- 284542, 3266323, -37581, 1635846, 1525250, -1699196, -685047, -318364, 2558190, -2313914,
- -1654099, -438087, 1826972, 559956, -52076, -216896, 590021, -810675, -69256, 299574,
- -581431, 198642, -2959769, 1110249, -392990, -372588,
- },
- {
- -24217710, 80835576, 1757179, 1268089, -6035503, -4544613, 3256659, -6782290, -2739116, -1848983,
- 3550864, -14289893, 2249489, 18786724, -15723338, -8109972, 29116658, 1845225, 3954591, -6534793,
- 6766184, 1120450, -11564736, -6247030, -6127308, 9279277, -2062121, -5318244, 6890202, -13018583,
- 2952253, -3073049, 1241782, 529355, 2714956, -6975027, -6162205, 11824582, 1745904, 4357781,
- -3439732, -3124052, -1051193, 5848135, -309775, 7157563, 4068945, -7052873, 1388885, -2083596,
- -6220187, 2821257, 1454383, -360240, 1875290, 1921461, 1956358, -121333, -5697811, 909459,
- 3256659, 1744294, -465467, -3285650, 1511829, -319438, 3021510, -1640678, 2158221, 3776350,
- -3403762, -1353452, -1438814, 2079301, 3712999, -656593, 2300492, 1190243, 894964, 1537598,
- 925029, 891206, 2468533, 284005, 1338419, 301721, 1391569, -2381023, -337692, 1139777,
- 647466, -605054, 1383516, -1296543, -348429, 359167,
- },
- {
- -6748468, -6373732, 9902584, 999654, 3952444, -2023467, 313533, 8749922, 991601, 3427921,
- -2316598, -2672007, 398358, -10638634, -16207596, -11509439, 8579734, 13316009, 3617973, 13791677,
- -23560580, -7784628, -17144972, 8673150, 1045288, -3540127, -1090922, 27213450, -10038412, 10609106,
- -4664872, -15226733, 10965588, -8319352, 11950210, -10788958, -12664248, -3613141, -1077500, 7775502,
- -12626130, 8308614, -9538585, -1498407, -6460168, -5360656, -615254, -349503, 4238596, -4015795,
- -573378, -341987, -2647847, 3489661, 864362, 1347546, -2394981, 813359, -3705483, -3424163,
- 1575716, -3805341, -2636573, -676457, 1525787, -198642, 2503429, -1360968, -3644280, -485868,
- -602906, -4632659, -3207267, -28991, -1414118, 684510, 62277, -5906, -2725694, 2050310,
- -814970, -910533, 639950, 797253, -1363115, 60666, 2119566, -489626, 934692, -11274,
- -215285, -263604, -478889, -471373, 285078, 1722282,
- },
- },
- {
- {
- 23896662, 80966576, -463320, -9268003, -523986, 257161, 6608344, -13535053, -5509370, -317828,
- 3854733, -29631516, 3037079, -9165460, 7212861, -1562831, -5337034, 6140730, 4172024, -5422396,
- 1563905, 1399086, -6669011, -16080358, -18839874, -6502581, 8579197, 2252710, -4609574, 1263794,
- -11442867, 1713692, 3602941, 5325223, -1555852, 14011794, -4201015, 625455, 5184563, 904628,
- 1204738, 337692, 1848447, -337155, -1900523, 997506, -4920959, 8178692, -1411434, 5621576,
- -4072166, 379031, -723165, -3550864, 1418413, -2158758, -5895380, -7582228, 8526584, -3337190,
- 2231773, -1091459, -3573413, 3452080, -23085, -1455994, 2972117, -2425046, -175557, -2574833,
- 1976222, 1551557, 816581, -2082522, 996969, -144418, 600222, -1147830, 1137093, -938450,
- 1185411, 1481764, 1227824, 1473174, -715649, -1312113, 574452, 2267743, -1149441, 478352,
- -1080721, -1903744, 2043868, -238371, 65498, -633508,
- },
- {
- -501437, 15582141, 24834574, -11506754, -5811091, -190052, -796180, 9675488, -8579734, -5780489,
- 664646, -10025527, -5405753, 26356604, -11957189, -5851893, -12786118, 1925756, -5503464, 13358422,
- -3722663, -6371584, 8438537, -18352932, -10297721, 14784351, 12107513, -16888348, 6264747, -5992016,
- 5669357, 10431402, 2415382, 3308736, -7733626, 632971, 8229158, 1812476, -6726456, -917512,
- 2104534, 904628, 4475356, -731755, -1531156, 1779727, -512175, 362925, -374736, -419296,
- -369904, 3013993, 8157754, 351650, 2016487, -3712462, -3838090, 464393, -5847061, 382252,
- 5947456, 1080721, 1067836, 1464584, 2608119, -2113124, 1555315, 2974802, 1088774, -1387811,
- -1214939, -1510755, -4948339, 232465, -1666447, 842887, 341450, -207232, -1217623, -1976759,
- 1257352, 812286, 729071, -689342, 479963, -176094, 365072, 1181653, -212064, 515933,
- -52076, 1350230, 1843615, 665183, -775778, -1205812,
- },
- {
- -736587, 90216864, -19402514, -6063420, 5615670, 1988570, -4541928, 5238250, -4060892, 4184909,
- 10873783, -7164006, -4126390, 10475425, 6586869, 12183748, -14324253, 25603910, -23288386, 5119601,
- 10487773, -11251204, -929324, -1902134, 3885872, 7169374, 2960843, -2126009, -446677, -783295,
- -3741454, -5373541, -11150272, 572304, 2609193, -2829847, -977642, 3680787, -3360275, 8932458,
- -9828496, -5419712, 4344897, 8141111, -2419677, -2598992, -928250, 3045669, -3970697, 10177462,
- 1280974, -4466766, 3801583, -183073, -7046431, -1458678, -6819871, 3375308, 488016, 1392643,
- 57982, -3380676, -541166, -1544578, 2128693, -59056, -1613297, 3303904, -366146, 2414309,
- -3243774, 406948, 2724083, 283468, 1549946, -1059783, -1835562, -707059, 1502702, 117038,
- -1510218, -285078, 462783, -839666, -105227, -912681, 1794223, -886911, 557272, 110595,
- -1160178, 719944, -626528, 1657857, -948651, 299574,
- },
- {
- 58298812, 57195004, -24242942, 22104586, 4252018, 566399, -10430328, 12438225, 3631932, 12026982,
- -5409512, -4827543, 6816113, 15484431, 2130841, 7094212, 10860362, 6495065, -5741835, -13617731,
- 8646843, 2237141, -6779606, -3503620, 762357, -16370268, 1348620, -4668630, -3172907, 1763621,
- -308701, 2042794, -3165928, -4011500, 8691940, 2698313, 6838125, 2368675, 8298951, 9451076,
- 1379221, 2277407, -3903589, -1858647, -3280818, 8404714, 1149978, -1420560, -40802, -8917426,
- 2758443, -3091840, -2147, 6865505, -1032403, -914291, 1362042, 1465658, 721018, 554051,
- -1047435, 3284039, -4413079, 3155190, -493384, -1040993, 541166, -2369211, -2733210, 1447404,
- -2418067, -1006633, 407485, 1123671, 748398, -2259690, -13959, -1811403, -109522, -30602,
- -22012, 866510, 766652, 631897, 830002, 50466, -122407, -1484448, 417149, -1260573,
- 135291, -180389, -1513439, -580357, -748398, 1489280,
- },
- {
- 683974, 24720222, 585189, 1209033, -3644280, -1540820, -9127, 3592740, 2436320, -967441,
- -1310502, 3871376, -8846559, -10707353, -23123568, -36668820, -10760504, 48382808, 1902134, -7703561,
- 2146410, -7965017, -9834401, 12262132, 9776419, -10833518, 6796249, -8307004, 8303783, -12857521,
- -6138045, -1368484, -14644765, -7788923, 9879499, -9259949, -2062658, 2822867, -2770791, 2659122,
- -6430103, 1374390, -2747169, 1012002, -10760504, 12597676, -6111202, -3999688, 3281355, 998043,
- -1634235, -2488934, 1323924, 834834, 60666, -415538, 2469606, 3120831, -3632469, 2188823,
- -3940096, -1612223, 1465121, 2024540, 1046898, -434329, 3634079, 2438468, -1594507, 1617592,
- -2553358, -2490007, 1935957, 1304060, -3731790, 863825, 3235184, 388158, 159451, 255551,
- 892279, -969052, -1872606, 353798, -139586, 1941325, 692564, -383326, 564788, 8053,
- 870805, -307627, -1563905, -94489, 144418, 236760,
- },
- {
- 83838832, 31754840, -32850594, -3351685, 6442, -4241817, 6406481, 12093017, -20223390, 2241436,
- -2004139, 12839805, 3910031, -4016331, -10750303, -2874407, -8952322, -683974, 11702175, 3905199,
- 9809168, 5111011, -2811593, 8508330, -6250251, 6140193, -3358665, -3427384, 32212, 2325188,
- -10041097, -10135586, 2294050, -8237748, -2616709, 4155918, 4424890, 1712081, -3144990, 1866163,
- 2254321, -4101694, 3171833, -3001109, -4410395, 1461900, 1387274, 1461363, -5082020, 3670050,
- -2848637, 1453310, 2505040, 961536, -5403069, 2782065, -2474438, 2495376, 78383, -812286,
- 77846, -424665, 2457795, -301185, 532039, 1469953, -3448322, -2611340, 115964, 1641751,
- -324270, 2374043, -1042066, 2609193, -408559, -1502165, -850940, -1270237, -223875, 1882806,
- -1260573, 2479270, -2928094, 525597, 329639, 1191317, -972810, 568009, 572304, 782221,
- -526670, -521839, -885837, -660888, -257698, -275415,
- },
- {
- 727997, 13659070, 7491497, -5888400, -1707250, -98247, -186294, -1604170, 699543, -4648229,
- -7931194, 2825015, -10428717, -14629732, -5576478, -13342316, -36774048, -14545980, 1462973, 5684389,
- 8253854, -1259499, 18698676, -26176752, -25363392, -307090, -23026930, -1276679, -2611340, 20869246,
- 19149648, 6643778, 7991324, 3504693, -1689533, 7868917, 1112397, 534187, -2672007, 8749922,
- -942208, 106300, 3841312, -4471061, 3651259, 155693, 2530273, -1469953, 2760053, 1909650,
- 2657511, 3757023, 3718905, 2745021, -1096827, 2086280, -361314, 1064078, 3212099, -1836099,
- -1243393, -3544959, 693637, 2690797, 796716, -77309, -1677722, 2804077, 3264712, 419833,
- -4563403, -384400, -1685775, 814970, 1758789, -954020, -370978, 1026497, 102005, 501437,
- -1804960, -1854352, 1897839, 238908, 653909, 120796, 355945, 2559801, 721018, 616328,
- 666257, -607201, 881542, 1861868, 615254, 189515,
- },
- {
- -26340498, -444684256, 10086731, 6280853, -7044283, -2522220, -3153580, -9565429, 5073430, -2310156,
- 7713225, -2059974, 5916318, 398895, 23066122, -6604049, -508954, -13381507, -8979703, 3237869,
- -1374390, 9335648, 8740258, 566399, -12775917, 3256122, 2848100, -5221607, 3212099, 933619,
- -4087735, -4741107, 1294933, 3200825, 1132798, -639950, 2624762, 10934450, 4404489, -386547,
- 84289, 3255048, 4640176, 1255204, 1367947, 1382443, 4944581, -2044941, 752156, 871342,
- -4876936, 4284767, -5110474, -4995584, 6219650, -4217121, 170725, 2065342, -1356136, 1401233,
- -2379412, -3657165, -264141, -758599, -1359894, 2068027, 2884071, 410169, 120796, 1617592,
- -2406792, -345745, -1625645, 2576981, 476205, -956704, 1672890, -644782, 1306207, -405874,
- -1342177, 289373, 563178, 1084479, 290984, 951335, 2783676, 1327145, -1182190, -1237488,
- 972273, 434329, 862215, 658204, -1788317, -542240,
- },
- {
- 1207423, 4853313, 5844914, 1469953, 4444218, -372588, -2459406, 3647501, -7957501, 1455994,
- 233539, -3120831, 4624606, -9471477, -79541720, -28169616, -22041772, 9912785, -15952582, 12003360,
- 10321880, -13095892, 1079647, 13442711, 22067006, -20137492, 5638219, 5275831, 4275640, 8200167,
- -8804146, 1817308, -3661460, 2940442, 812286, 2317672, -6732361, -735513, -1174674, -3049427,
- 528281, 3744138, -2841121, 8637179, -4919885, 7065758, -1217623, 3976066, 1059246, -2381559,
- 4107599, 2648921, -5028870, 4758824, 1305670, 94489, -1859184, 2912525, -1142998, -4492536,
- -5269925, 62277, 1014149, 2008971, -317291, 1953673, 397821, -1357747, -635655, -906238,
- -142808, -2419140, 3560528, 613107, -2938831, 37044, -841814, -750546, -3575024, 773094,
- 673236, -76236, 179852, -332323, 1767379, -2120640, 352724, 171262, -212601, -1101659,
- -64961, -464930, -73014, -407485, -1482838, 1397475,
- },
- {
- 2336462, -282472480, -23712514, 9703942, -6271189, 25596932, 13389561, 22093312, 15164456, 18771154,
- -8800388, 4212826, 18342194, 20233590, 4869419, 1282048, 21221970, 1704028, -1862942, -4147328,
- 9889162, -223875, 6128919, -12242267, -5869610, -2378875, -3459059, -9098351, -11938935, 4311074,
- -2061584, 7602092, -8888972, -1119913, 9425843, 181999, 4887136, 4671314, -8219494, -206695,
- 8777303, 42413, 1532230, -2488934, -4261682, -3484829, 272194, -183610, -215822, 5043902,
- 3072512, 6490770, -2646774, -4765266, -1466195, 1085016, 1352915, 2573759, 1479079, -100395,
- 139586, -284542, -2841658, 1847373, 2386928, -1413581, -472983, 2792266, -3410741, 2637647,
- -1079111, -463856, 2451353, 222801, -67109, -1372779, -2910377, 1927904, -1451162, 1383516,
- 153545, 402116, -2705293, -1574106, -9127, 421981, 1589138, 1182190, -2219961, -3613141,
- 1009317, -1777580, -972810, -2077690, 537945, -1000727,
- },
- {
- -3811784, 15006079, 13211319, -6893960, 3616899, -9544491, 10963978, 255551, -1944010, -13596793,
- 4925791, 365609, 21508122, -578747, 9706089, -6295349, 2131915, -12528420, 10736881, 663572,
- -12584254, 12414603, 12708271, -779000, 5480379, 1209033, -1901597, -583042, -7044820, -1950452,
- 9361418, 1490891, 11833709, -1949915, -3710852, -6893960, -3745748, -1317481, -646929, -1228898,
- 2583423, 16979616, 3112241, -601832, -3537443, -8404714, -7529078, 725850, 3781182, -555661,
- -1582159, -1032403, 2707977, -421981, 936303, 3481608, -1267552, 192737, 2915209, -1331440,
- -504122, -4547834, 171799, -4394826, -300111, 1890859, -1890859, -3654480, 3016678, 442382,
- 81068, 915902, 615254, 1000727, -358630, 726386, -1630477, -1096827, 1078574, -2582349,
- 2254858, 190589, -921807, 88047, 704375, -1385664, -1261647, -968515, 1745367, -314069,
- 509491, 19864, -261993, -816044, -210990, 2185065,
- },
- {
- -37507412, 105477416, -7289097, -8720931, 17165910, 22918482, -874026, -2289218, 11272679, 1158567,
- 2110440, 13123273, 2934000, -2060511, -16151225, 895501, 1339493, -2131915, 12867722, -23638964,
- -6228240, 1324461, 8967355, -2187212, 18356154, 7523709, -7676181, -4979478, 6942815, -3820374,
- -27917, -351650, -7985955, 2871186, -131533, 1337346, -3171833, -3521873, -3578782, 4649839,
- 4879620, 6654515, 578210, -1935420, 7851737, 904091, 7467338, -3248069, 1056562, -921271,
- -5722507, -2598455, -3543885, -2991982, 715112, 342524, -2915746, 3400004, -368293, 3030636,
- -1680943, 2556579, -1307818, 3482145, -984084, -12348, 1351841, 1250372, 3073586, -2803003,
- -378494, 2902324, -3452617, -2061047, -2048699, 229244, 1944010, 154619, 670015, 697395,
- 126702, -1512902, 460098, 1861868, -1382980, -1029718, -848256, -224949, 571768, 688269,
- -195958, 762894, 614180, -521302, 685584, -848793,
- },
- {
- 661425, 59564216, -5017596, 3427384, -120259, -6980933, -3511673, -1238024, -82678, 2699387,
- 442919, 1024350, -11712376, 39505108, 13794361, 24220394, 13164075, 11959336, -12539157, 14471892,
- -12950937, 10150081, 11264089, 3235721, 693637, -11558294, 9956808, -1465658, -4830228, 27070106,
- -10604274, -3848291, 815507, 6296422, 264677, -1236951, 12269111, -3553012, 11398306, -2354716,
- 4369593, -6463926, -293132, -3721589, -1902671, -2247342, -1451699, -4510253, 2686502, 9018894,
- 2595771, 4489852, 2388539, 2666101, 1355599, 5487895, 1269163, 7049652, -1717450, 2503429,
- 820339, 6906845, -694711, -2043331, -1546188, 1808181, -1692754, -4832, -3855807, -2328946,
- -4063039, 3307125, -768262, -1107565, 2990908, 1138703, 306553, -534723, 1216550, -2387465,
- -648003, -760209, 479963, -573378, 811749, 963683, -141734, -2957622, -979253, 1265942,
- -650151, 87510, -1480690, 893353, -1196685, -156229,
- },
- {
- 7981660, 132276936, 7296613, -8116415, -14487998, 144955, 525060, -8977555, 4934918, -3832185,
- -8246874, -31431644, -14924474, 11186242, 4321274, -10148471, 19498078, 1475858, -4802311, -10710575,
- 12265890, 9183714, 1631551, 7774428, 6305549, 10859825, -3171833, 165356, 25703768, -9456444,
- -5878737, -10200547, -1085016, 1142461, 260382, -12554189, -16683800, 7142531, 6502581, 13473849,
- -606664, -1682017, -4898947, 1547262, -6449967, 965294, 6367289, -6704444, -2532420, -681289,
- -2767570, 3264175, 3138011, 1478006, -1012539, 343061, 2347200, 1306744, -5953899, -1516660,
- 2178085, -233539, -128312, -1488743, 2740189, -1156420, 2269890, -1759326, -201327, -1816771,
- -2797098, -1002875, -3672197, 1052804, 1796370, -1477469, 2321430, -847182, -1701881, 855235,
- 1664300, 379031, 57445, -1868848, 73014, -1970316, 556735, -1808718, 573378, 2705830,
- 1734630, -1355062, 622770, -1080721, -19327, 1125281,
- },
- {
- 6345278, -21509734, -15453292, -726923, -3018288, -7050726, -816581, 11176042, 2983929, -4022774,
- 185757, 2015950, -2005750, 30765924, 41871636, -6926709, -14569603, -599148, 958315, -21094196,
- -30575336, 24942486, 407485, 10233833, 921807, 497142, -187368, 18041010, -11150809, 13028783,
- 19628000, 6900939, 13267154, -11366094, 6185290, -4100083, 974421, -7485591, -6013491, 14772003,
- -7129109, 11894375, -5181341, -3891240, -9031779, -6753299, -2362769, -5060545, -2567854, -5145908,
- 602906, 3959960, 4031901, 674310, -7980586, -2633352, -3940633, 1942399, 2665027, 5054640,
- 4095788, -1872606, -2843268, 220117, 3658775, -435402, -60130, -2857227, -994822, 1520955,
- 398895, -1058173, 338229, 1129040, 99858, 319975, 196495, 582505, -1955284, 1913945,
- -3442953, -1466195, -219580, -803159, -1115618, 193810, 336618, -1753957, 1365800, -150861,
- -434865, 157840, 121333, 518080, 647466, 399969,
- },
- },
- {
- {
- -17324288, 56052008, 12095702, 4318590, 6069863, -201327, -5438503, -10343892, -6130529, -6373732,
- 7749195, -11916387, -10055055, 4184909, 8159901, -8177618, -10258529, 3770445, -1098438, 7880191,
- -12135430, 6328635, -9965935, -10165114, -12592844, -3105798, -1432909, 37044, 7791071, -2324651,
- -4396436, -3300146, 2195265, 11328513, 734976, 4927401, 1440962, -3810173, 6929393, 2666638,
- -2815351, 5336497, 128312, -4922033, 2303176, -1588064, -3852586, 3586298, 1453846, 6081674,
- -1643362, -2825552, 1020055, -2339684, -900869, -3292093, -6164352, -6451578, 4210142, -2425583,
- -785442, 1295470, 309775, 1281511, -313533, -3138011, 1079111, -562641, 1321239, -1660542,
- -493921, 3180423, -1664300, -1071058, -514859, 550293, 211527, 239444, -977642, 245350,
- -380641, 3441343, 1207960, 656056, -907312, 215285, 853088, 168041, -703301, 1101659,
- -1002338, -1754494, 1793149, -758599, 527207, -910533,
- },
- {
- 1228898, 34475704, 9248138, -16758962, 1941862, -1372242, 1067836, 3345243, 1199907, -13589813,
- -3801046, -7341710, -3453154, 11908871, 6648073, -7826504, -12831215, -8491150, 22434224, -13544716,
- 231928, 10585484, -4570382, -6248641, -8933532, 1614371, 8693014, -10276246, 1528472, -5837935,
- 9386651, 1148904, 12039867, -2421825, 2309619, 622233, 5942088, 6343130, -7463580, -2863133,
- 6495065, -1452773, 5857262, -7255274, -1703491, 3492882, 7754564, -1290101, -2980707, 241592,
- 401579, 2257542, 7801271, 2820720, 809601, -816581, -4918275, -5941551, -1505923, 968515,
- 5305359, 2773475, 379568, 1153736, 2663417, -2600603, 1711545, 4161287, 1166621, -1751810,
- -2277943, -1542430, -2974802, -2022930, -813896, -854699, -699006, -76773, -226560, -1068910,
- 1582159, -301721, 528818, 491237, -245350, 329639, 114890, 1373316, -579284, 1288490,
- -173409, 1248762, 846109, 1209570, 210990, -995359,
- },
- {
- -350577, 37980396, 16942036, 11448772, -9852655, 2651606, -946503, 4486630, -856309, -7214472,
- 19141058, 1015223, -11608760, 4727686, 13351980, 4757750, 6481106, 8024610, -15163919, -2884071,
- 4574677, -10604811, 9277129, -3749507, -4944044, 10181757, 1764158, 6805913, -11003706, 597000,
- 5771363, -15730855, -9232032, 6260452, -8739722, 3942243, -3790309, 4434554, 100395, 233539,
- -7592966, -5462662, 2563022, 8689793, -1770063, -2316598, -1917703, 6418292, -5193153, 2423435,
- 2262374, 2603287, -1597191, -1448478, -2330020, -4141422, -4398047, 2633352, 363998, 3640522,
- -2627446, -2900714, -1746978, -1196685, 2338073, 410169, 530428, -722628, 971200, 1206349,
- -1181116, -1471026, 3050501, 425202, -166430, 138513, -906775, -1241246, 883690, 147103,
- -1110786, -309775, 827855, -781684, -1674500, 1071594, 1277753, 445066, -2364380, 882079,
- -564788, -238371, 777389, -17717, 203474, -225486,
- },
- {
- -57569740, 161161136, 25106232, 2588255, 10419591, 3792456, -3514894, 1799591, 4682588, 21961242,
- -4878009, -10611790, 8475581, 3145527, 12140262, -237297, 16168941, 11412265, -7714298, -4307316,
- -3259880, -4878009, 3579318, -6918119, -482110, -4782446, -15777562, 1318018, -2896956, 4344360,
- 2944737, 6042482, -865973, -219580, 1501091, 6155762, -325881, 6721624, 1398012, 16020228,
- 3302293, -4361003, -1002338, -7560216, 525060, 2545305, 9488120, -2439005, 1498407, -5936182,
- -2480344, 406411, -137976, 2890513, 242666, -2147484, 921807, 4308926, -872952, 140123,
- -573378, 3226057, -878858, -514859, 2754148, -2451353, 1883880, -2469069, -2313914, 2103997,
- -418222, 364535, -1702418, -507343, 493384, -383326, -603980, -858457, -471373, 248034,
- -626528, 390305, 1451162, 731755, 241592, -278099, 514322, -1815697, -946503, -96637,
- 728534, -738734, -949188, -1052267, -278099, 1341640,
- },
- {
- -1517197, 24329380, 1747515, -4476967, 2338073, -1446330, -220117, -201327, 3684545, -2695629,
- 5235565, -3624953, -2210835, -19344532, -27577986, -22477174, -10798622, 6065568, 32533304, 2389076,
- 6184216, -15871515, -16125992, 16403554, 410169, -13634374, 15105937, -4901632, 13273596, -21458194,
- 3007551, -2895882, -23934242, 8011188, 6737193, -7334194, -2616172, -463856, 1967632, -884763,
- -500901, 649614, -682363, -5985037, -3009698, 19327, 1732482, -4314295, 1745367, 1356673,
- 267362, -1563368, -1553168, 2592013, -1037772, 2984466, 2332167, -368830, -5063767, 1641751,
- -412317, -1891933, 2599529, 3489124, -514322, 893353, 2656974, 1989107, -252329, 1158567,
- -3385508, -1822677, 1401233, -116501, -1166621, -3758, 2086817, 1067836, 1619740, 1112933,
- -1738388, 29528, -1682554, -169114, 887448, 1883880, 868657, -549219, 184684, 256624,
- 590558, -217970, -478352, -854162, -493384, 94489,
- },
- {
- -80380312, 185176976, 12917651, 10482941, -2392834, -3777961, 4196720, 6613176, -15551003, -3732864,
- 8893267, -8194798, 20619064, -17981418, -2069101, 1650341, -15814606, 1476395, 7675107, 13024488,
- 10334228, 6100464, -4952634, 4663261, -1222992, 3841312, -1020055, -1077500, -6142340, -4766340,
- -5558225, -13212393, -711354, 3474092, -5454609, 5160403, -3278671, 1409286, 1707786, 4137127,
- 1053878, -3168075, -176631, -1785096, -5778342, 584652, 2604361, 387621, -6628745, 1862405,
- 2571612, 79994, 5491653, -2114198, 1735167, -1979443, 1111860, 357556, -1492501, -686121,
- 290447, -1279363, 2892661, 3289945, 850404, -2480344, -429497, -1060857, -1541893, 1095217,
- 920734, -162672, 2839510, -505196, 110059, -890669, 91805, 130460, -1540283, 1014149,
- -1013612, 1188095, -1321239, -1694902, 1762547, 643171, 143881, -473520, 1275068, -607738,
- -1156420, 1341104, -485868, -921271, -957778, 885300,
- },
- {
- -179315, 16481400, 6658810, -369904, -3853123, 52613, 525060, -2555506, 2982855, -10464688,
- -3416647, -5111548, -3197066, -15870978, 10407243, -10088878, -46981036, -5934034, 8942659, -10550587,
- -3502546, 16521665, 1970316, -27482422, -13063143, -9928354, -4163971, -14239964, -2030446, 26383984,
- 21106006, 7015292, -141734, 3600793, -200790, 7961796, 520228, 3984119, 620623, 5441724,
- 855772, 1080721, -4923643, 922881, 6360847, 559956, 699543, -882079, 3854733, 3373697,
- 2565706, 2082522, 4152697, 2216740, 106837, 860604, 319438, 910533, 6772090, -983548,
- -2217814, -4388383, -2694555, 3117610, 27917, 443455, -1322313, 2564096, 3602404, 172872,
- -5186710, -2455648, 949188, 355945, 2063732, 1074, 896038, -1205812, -76773, -60666,
- -388158, -847182, 703301, 1584306, -1355062, -216359, 3004330, -604517, 918586, 2403571,
- -960999, 225486, 609885, 818191, 1332514, -531502,
- },
- {
- -5526549, -455288000, -10961830, 5365488, 469225, 5386426, -15369540, 1637993, 145492, -2521683,
- 6848326, 22012, -9635759, 11234024, 9285719, 5750961, -13300440, 5060009, -15069430, 3224447,
- 2514703, 3686693, 6695317, -1343788, -7131257, -3876745, 5602248, -329102, -5334350, -2427194,
- 3707631, -1512365, 1695438, 3622268, 2910377, 7836705, -751619, 8611946, 2296197, 299037,
- -3347927, 5425618, 3906810, -140123, 1680943, 4746476, 7661148, -5229660, -3618510, 5976984,
- -6971806, 4253092, -4795868, -3238405, 2344515, -4406637, 1117228, 489626, 2276870, -401579,
- -1991254, -5332202, 1284732, -1573032, -1319092, 3664681, 2595771, 794032, -862215, 2803540,
- -3868692, -501974, -399432, 2448668, 943282, 1611, -214212, 549756, 463320, -92879,
- -1425392, -729608, 1030792, 1066226, 1961726, 1711008, 380641, 1000191, 37044, -601295,
- 780073, 37044, 731755, -327491, -1184874, -660351,
- },
- {
- -45097, 14008036, 960462, 1760400, 5891622, -1309965, -531502, -2426120, -1785633, 1186485,
- -3452080, 1274532, 1938641, -18181670, -72552200, -21399138, -14194330, 6803228, -18963354, 20048908,
- 9846749, -15232638, -11144903, 27202176, 307090, -3878892, 4237522, 7381975, -1860795, 18491444,
- -17242684, 3989488, 4511327, -2622615, -2560338, 6970195, -3928285, -5327907, 162672, -1129576,
- -3405909, 5958194, -430034, -1394791, 6413460, 2842732, 1124208, 1104880, 1918777, 4014184,
- -20401, 1316408, -1777580, 1880659, 1588064, 2487860, -4453881, 4097936, -2263985, -281320,
- -7467338, 1083406, -1313723, 4413616, -124554, 649077, 274341, -1580011, -26307, -3016141,
- 344134, -134755, 251256, 1656247, -743029, -3004867, 1268089, -1960116, -1769527, 984084,
- 939524, -1386201, -612033, 499290, -292595, -30065, 630823, 452582, -1238561, 259846,
- -1123134, -407485, 566399, -1707250, -318364, 1337882,
- },
- {
- -4174708, -295596288, -14305999, 20425254, -11135240, 2222646, 19961934, 21861384, 23863912, 13227426,
- -1001264, 4084514, 17186848, 8201240, 1243393, 19878182, 15861851, 9575093, 3878892, 1227287,
- -9169218, 844498, 3592203, -9352828, -10604274, 13081397, -14694694, -14629195, -13321915, 6182069,
- 2459943, 3091303, -5228586, 2706366, 5139465, 3321620, 13002477, -4814122, -7247221, -7527467,
- 17809082, -571768, 4188130, -9969156, 5635534, -6333466, -800475, 780073, 112206, 1256815,
- 10077604, 2508798, -3042448, -5281199, -1670742, 1193464, -578747, 5026723, 1107565, 1186485,
- -213675, -5818607, -991064, 3160559, -469762, -1716913, 3171297, 275415, -2150705, 1690607,
- 2112050, -1474784, -620086, 2013803, -1697586, -228707, -1155883, -1040456, -542777, 2313914,
- 184147, -1117228, -1263257, -653909, -882616, -1264331, 1301375, 969052, -1645509, -171799,
- -2024003, -787053, -1923072, -417149, -1504312, 943819,
- },
- {
- 3233574, 38340100, -7834557, -4478577, -6242735, 5730023, 2806761, -964220, -3849901, 1285806,
- -2718714, 8073465, 7461969, -845572, 20523502, -6398965, 10097468, -22820772, 7559143, 4299799,
- -11896523, 6198712, 19189378, -4578972, 9887015, 899259, -2710124, -6658273, -3358128, 5565204,
- -583579, 2639258, 12963822, -739271, -14231374, -75162, -623844, -3875671, 7095286, 756988,
- -1037235, 9604621, 4053376, -712965, -1075352, -4628364, -6950868, -3326989, 3821447, 3362423,
- -2770254, 536871, 4171487, -2861522, -472446, -11811, 3935264, -624381, 5405753, -3808026,
- -1437740, 1630477, -3310883, -3621194, -1719061, -1973001, 184147, 792958, 610959, 608812,
- 679142, -250719, 2473901, 1249836, -389768, 357556, -701153, -934692, -251792, -968515,
- 1537598, -1028108, 202937, -1345935, 1185948, -2618856, -488016, -996969, 2149094, -89657,
- -482647, 891743, -725313, -1371168, 1067299, 1538135,
- },
- {
- 56414932, -4102768, -17590576, -20058572, 20212116, 44369160, -22744000, 6284611, 7622493, 603443,
- 11537356, 995896, -4124242, -6770479, -8813273, 1712081, 6451041, -10615012, 10223633, -9370008,
- -11456288, 3558917, 12150999, 5238250, -5034776, 8333847, -2132451, 2572686, 2492155, -3016678,
- -721018, -1154273, -2401961, -2685428, -3853123, 17904108, -12378633, -8043937, -4474819, 7780334,
- -1075352, 14395120, -8504572, 3133716, 6689949, 3098282, 1306744, 2353642, -1139240, -1429687,
- -1283658, -3280818, -6720013, -1200980, 1313186, -2762738, 3904125, 1034550, 2462090, 272730,
- 2748242, 162672, -1185948, 756451, 885300, 2025077, -346282, 2209224, -625455, 1497870,
- 138513, 535797, -307090, -2689187, -2355790, 1064615, 960462, 451508, 615791, -1390496,
- 280784, 176631, 712965, 1119913, -1537598, -337692, -1413581, 421981, -379568, -56908,
- 815507, -401579, 1218160, -809064, 486942, 75162,
- },
- {
- -1409823, 50133004, 1138166, -2322504, 8616241, -13030931, 2786897, -1040993, -569620, -2821794,
- 1387811, 2237141, -13123273, 23868208, 3273839, 45230300, 3412889, 15409806, -3565897, 4364224,
- -19926500, 6277095, 37979324, 2891050, -20794084, 18295486, 11141682, -15384036, -1954747, 13925895,
- -541703, -2753611, 12618077, -4473746, 5556077, 3240553, 1621887, 4065724, 4182225, 7309498,
- -3129421, -129923, -6866042, 1920924, -3406983, -7924752, 4414153, -3595961, 5687611, 448287,
- 3795141, 7416872, 5974300, -3896072, 5879274, 3834869, 6517613, 2192581, 375810, 1409823,
- -2146410, 6187974, -752693, -3862249, 1311039, -333397, 2201171, -2442763, -2942053, -2621004,
- -4570919, 4223027, -2128693, 329102, 2010045, 12885, 1435056, -1264868, -237297, -664109,
- 1005559, -588947, -1012002, -284005, 45634, 1764158, -1624571, -1304060, -570157, -377957,
- -265751, -396211, -93952, -126165, -55298, -425202,
- },
- {
- 13532905, 125903744, -1050120, -10870562, -4846871, 3501472, -219043, -9416716, 2963528, -4645007,
- -13954349, -31478352, -14143864, -10257993, 30579094, 4049617, -3926674, 1445793, -10356777, 1126892,
- 7894687, 5289252, 9024800, 3963718, 17291538, -8538395, 10099616, 4687957, 19019188, -2019708,
- -11676942, -8969502, -106837, 127238, -1695975, -4821101, -11820824, -1946157, 4502200, 7997229,
- 11221676, -4231617, -6999186, 3689377, -10331007, 1968706, -1305133, -7128035, -4730907, 2173254,
- 2124398, 4901095, -392990, -1100585, 1954747, 22549, 237297, 1748052, -5085778, 2011655,
- 1088774, -2332167, -165356, 313533, 3809099, -633508, -757525, 766652, -1297080, -5954972,
- 1206886, -2627446, -2817499, 972273, -275415, -248034, 1307281, -461709, -777926, 791348,
- 373662, 622233, -1049046, -1848447, -744640, -1286880, 11274, -439697, 747324, 1700270,
- 768262, 133144, 24159, -1184337, 577136, 576063,
- },
- {
- -6078990, -28567974, 3081102, -2595234, -2485176, -5553930, -7347079, 3721052, 5689758, 1557999,
- 834834, 1059783, -12494597, 1388885, 60332480, 27766426, -11427297, -9888625, 3419868, -44259636,
- -7432978, 27830314, -4121558, -4296041, -1358820, -2082522, -1400696, 3102040, 18892488, -6591164,
- 21298206, 17507898, 1517197, -4384088, 6538551, -6015102, 2704756, -841277, -4677757, 3341485,
- 2789045, -414464, 6396817, -13489955, -5447629, 58519, -5015448, -1379758, -9785546, 1639604,
- 1908039, 2195802, 5738077, -806917, -7543573, -2830384, -6657200, 3504157, 5450314, 3628174,
- 3860639, 717260, -2892124, -707596, 1133871, -15032, 2827699, -7970923, 2986076, 2165201,
- -886911, 696858, 1950452, -861678, -190589, 1863479, -8053, -3280818, 1001801, 906238,
- -2521683, -1557463, 104153, -1767916, 1152662, -542240, -122943, -134218, -243203, -38118,
- 173409, -77846, -16106, 1341104, 423591, -312459,
- },
- },
- {
- {
- 12887049, -72975792, -120718112, -22524956, -4416837, 22549, -2949032, -4109210, -4001299, -17400524,
- -4450660, -7093139, -10411001, 5583995, 12326556, -4440460, -13365938, -2685428, -8637716, -17717,
- -16056198, 8545374, -5465883, 612033, 6642167, 9731322, 2165201, -5140539, 9374303, 1723893,
- -6667937, -4219806, 2068027, 5226975, -2314451, 5211943, 3074660, -2282775, 6460168, 6833293,
- -1395864, 2920578, -736587, -3078955, -2192581, -6285685, -824634, 1305670, -663036, 2188286,
- -7093676, -4348118, 1864016, -530428, 3505767, 517544, -4029753, -5508296, 1088774, -6366752,
- -3735011, 3166465, 2861522, -1073742, -3941169, -5909338, -449361, -852551, 874563, 547608,
- -354872, 1381906, -1833951, -449898, -761283, -230318, -951335, -100395, -1440962, 324807,
- -1520418, 617938, 157840, 1900523, -486942, -433255, 471910, 183610, -646929, 758599,
- -74625, -932545, 1005559, -823023, 481573, -775242,
- },
- {
- -1583232, 22929756, -3338800, -6072547, 14109504, -2315524, -3069291, -4051228, 1609002, -13014825,
- -1565516, -6819871, 355409, 16518981, 15650324, 13440563, 1970853, -11413339, 18708878, -11174968,
- 6369437, 17743584, -7722888, 2460480, -8755828, -14777372, -1235877, -10014253, 10121090, 3515431,
- 8574902, -4121021, 16444356, -3636227, 698469, -5133560, -1634235, 11142219, 2438468, 113280,
- 4245039, -2871186, 4949950, -4766877, 678605, 675921, 5896990, 3814468, 1129576, -621697,
- 1174137, 672162, 2959769, 735513, 4967667, 5769215, -2296197, -5964099, -2270964, -190589,
- 1739462, 1832340, 1292248, -7516, 1651952, -3076270, -1251983, 863825, -243203, -2509872,
- -1101122, 2208687, 1614371, -1854889, -1521492, -719407, -529355, -35970, 584652, -104153,
- 831613, -348429, 373125, 582505, -472446, -475668, -453656, 1114544, -1161789, 665720,
- 40265, 374199, -1037772, 256087, 823560, -92342,
- },
- {
- 1445793, -9406515, -14003741, 25727928, -838592, 3862249, 3030100, -1719061, -7057705, -1203128,
- 16152298, 6793565, -6359773, -10921565, 8607651, 8906688, -129386, 2507724, 1035087, -1714229,
- 6547678, -7406671, 11376295, -852551, -17726940, 5582921, 5238787, 3171833, -12887049, -3831648,
- 4448513, -10146323, -4530654, 7492571, -3995930, 6949257, -2486249, 935229, -4466766, -1534377,
- 925565, 28454, -2953327, 2663417, -2018098, -2093797, -5388574, 3249143, -3625489, -881542,
- -2541010, 1118302, -3215320, -634045, 1791538, -517007, -2187749, 2051921, 1216013, 3685619,
- -1681480, -2609730, -1342714, -940061, 88584, -1287417, 784905, 328028, 1092532, 719944,
- 415001, -2449205, 548682, -242129, -181462, 461172, -150324, -1474248, 153008, 1833414,
- 1745904, 863825, -174483, -430034, -518080, 1350767, -82141, 539555, -1445257, 1602023,
- -383326, -1297617, 731218, 509491, 819802, -581431,
- },
- {
- 42465416, 233372416, -26936424, -14180371, 243203, 6526203, 5468030, 52613, -7582228, 12502650,
- 5865852, -11312407, -4605816, 98247, 14243185, -8321499, 9579388, 15876883, -7718056, -4854924,
- -5122822, -11389716, 5753109, -3765613, 584116, 13720810, -2822331, 6899865, -1287953, 2385318,
- 4531191, 5237176, 1432909, 1329829, -4032438, 5961952, -5106179, -53687, -4052302, 4174171,
- -914291, -2254858, -354872, -1552094, 3142842, -4086662, 9354439, -1134945, 3907347, -536871,
- -2779381, 3162707, 727460, 176094, -2028298, -4973036, -47782, 1421634, -2320893, 656593,
- -1861868, 3935801, 469762, -1832340, 2774012, -1583769, 1734630, -834834, 410706, 3078418,
- 1272921, 3015067, -62277, -1154809, 332323, 900333, 563714, 578747, -198642, 387621,
- -140123, -552440, -540629, 294205, 379031, 412854, 760209, -1407139, -783832, -324270,
- 138513, -657667, 223875, -549756, -322123, 915365,
- },
- {
- 1934883, 25403120, 416612, -7817914, 1266479, 845035, -1192390, -3255585, 2939368, -1072668,
- 4835597, -6521371, -2776160, -15808701, -24520506, -6202470, 16996260, -24087250, 11104638, 15093052,
- 1025960, -6691559, -10634339, 283468, 3919158, 2323041, 21239688, -3917547, 10529112, -14497125,
- 4643934, 4220342, -5655398, 10245644, -3094524, -6691022, -2705293, -4527970, 3045669, -2056753,
- 3622268, 2239826, -5383205, -7596187, 2437931, 2827162, 1887101, -6254010, 2925410, 1693291,
- -271120, 77846, -2174864, 1648731, -75162, 3198140, 752156, -273267, -3129421, 3057480,
- -235149, -1363652, 2521146, 2514703, -3134253, -1052804, 1817308, 1805497, 307627, 700617,
- -2172717, -1286880, 454730, 112206, -949725, -1738388, -385473, 286152, 281320, 762894,
- -802085, 1414118, -790274, 434865, 624381, 812286, 528818, -153008, -588947, -700617,
- 310848, 739808, 843961, -783295, -885300, -434329,
- },
- {
- 56828324, 296987328, -36104032, 41038948, 16384763, 3805341, -7573638, -5905043, -4612258, -9688372,
- -3040837, -9927817, 23047868, -24350318, -8237748, 11729556, 3498251, 7102266, -637803, -5603322,
- -7534447, 4939750, -1962263, 2389076, -6832756, 3679713, 2903398, 5808944, 2137820, -5535139,
- -2537252, -861678, 1949378, 1173600, -1620813, 6448894, -8459475, -5832566, 774705, 3603478,
- 3038689, 5910949, -717796, -3992172, -2560338, 8689793, 6174016, -1309965, -3553012, 1165547,
- 3655017, 1731409, 5987722, -1932735, 2095944, 996969, -58519, -2660195, -3270081, -2091649,
- -823023, -2590402, 3520800, 2040646, 1159641, 998580, 2418604, 1471026, -1523103, 73014,
- 1182727, -1055488, 3435437, 1235340, 1796907, 503585, 156766, -23622, 91268, 1597191,
- -1224603, 1088774, -1428614, -2207613, 503585, -372052, 377957, -468688, 1745904, -228170,
- -578747, 2248416, 156229, -8053, -358093, 396748,
- },
- {
- -319975, 5053566, -1145683, 6100464, 1882269, 550293, -212601, -2705830, 6053757, -1173063,
- 4747013, 804233, 2586107, 9740986, 48348984, 42000484, 2048163, 10278394, 7437810, -15433428,
- -4773856, 12999255, 22180284, -11921219, -12042015, -7844758, -2651069, -5324149, 11723650, 10171556,
- -3951907, -4772783, 2092186, 6089190, -6307697, -489626, -2694555, -148176, -2262911, 85362,
- -9127, 1649804, -5985574, 1906429, 3164317, -4338991, 1615445, 2297808, 1356673, -1290638,
- -1963874, -2492692, -69256, 2376728, 476205, -256087, 970663, 2523830, 6380174, -755377,
- -85899, -847719, -1025423, 2082522, -1467805, -659278, -3029563, -635655, 878858, 1648194,
- -2484639, -1480153, 937377, -502511, 869731, -259309, 1633698, -1722819, -287226, -860604,
- 209380, 1068910, 287226, 1068910, -1258962, -1318555, 1925219, -1501628, 765041, 2798171,
- -840203, 627065, -257161, -762894, 851477, -853625,
- },
- {
- 34224448, -402438432, -7570417, -22028888, -19703700, 5527623, -5826660, 8591545, -61740, -6102612,
- -9154723, -6177774, -10000294, 19183472, 4323959, -11729556, -6727530, 23877334, -6138045, -2099165,
- -1807644, -5223217, -3293703, -2913599, 2178622, -1806571, 294742, 82141, 2091112, 4459787,
- 5788006, -3410204, 3309809, 5833640, 3410741, 10162966, -5930276, 3627100, 799938, -839129,
- -860067, 4131222, -94489, -2556579, 2130304, 6555194, 5267241, -2323577, -857383, 956167,
- -9337259, 6821482, -205085, -3312494, -2862596, -7892540, 824097, 1513976, 4935455, 5355824,
- 3868692, -3219615, 129923, -2956011, -1469416, 962073, -1813550, 724776, 1368484, 2333241,
- -3142842, 1709397, -1295470, 503585, 1193464, 47245, -471373, -485868, -121333, 1249836,
- -879931, -1008244, 871342, 287226, 1309428, 935766, -1360431, 373662, 910533, -363462,
- -109522, -1392643, -839129, -860067, -437550, 334471,
- },
- {
- -1137093, 462783, -8287140, -2235531, 1086090, -740345, 459025, -1924145, 120259, 1263794,
- -3584150, 1203128, 5587753, 15146739, -37127308, -396211, 10944114, 18895708, -24641302, 280247,
- 1470489, -12248173, -2707440, 7558069, -32755568, -6077916, -8310225, -4700842, -3739306, 17119202,
- -5486821, 12056510, 7006166, -5074504, -6833830, 10493142, 4480188, -5016522, 2172717, 6068252,
- -5756330, 165356, 2693481, -3382824, 3251290, -56371, -100395, 3242700, 4970351, 4227322,
- -1236951, 3627637, -1786706, 2305861, 3511673, 3609383, -4796405, 843961, -2695629, 4584878,
- -2345589, 4206921, -2775086, 2019708, 549756, -354335, 1031329, 811212, 1537598, -2696166,
- 1149978, 1689533, -1148904, 1178969, 404801, -1752347, 2196339, -1937567, -624918, 558346,
- -439160, 981400, 1321776, -780610, -1527935, 627602, 689879, -33286, -366146, 1364726,
- -1781875, -472983, 1328756, -744103, 518617, 186294,
- },
- {
- 6179384, -260080128, 16902844, 2930778, -25273198, -19360638, -956167, 5343476, 6026376, -5240397,
- -7749732, -5337034, -5131412, -6189585, 6012954, 30380988, 16909286, 2078764, 7035694, 7521562,
- -15337328, -5142150, 4922570, -2011118, -10555956, 9986336, -10830297, -6861747, -15781857, -311385,
- 6419366, 4436701, -3690988, 11741904, -2639794, -5277978, 10274636, -5359046, -2792803, -2887829,
- 14363444, -5373004, 8511015, -3735011, 7022809, -10089952, -1501091, 2948495, 1658394, 259846,
- 2610266, -2414309, -2161442, -4977330, -953483, 1085553, -4151086, 2922725, 1976222, 1619740,
- 94489, -5564667, -151934, 2299418, -68183, 96637, 193810, -922344, -1628330, 16106,
- 1340567, -1727114, -358093, 2541010, -1914482, 136365, -1531156, -1813013, -937914, 1458678,
- -581431, -443992, -582505, -1523640, -2023467, -2115272, 563178, 1275605, -98784, 1481227,
- -1303523, 745177, -617402, 223338, -702227, 1675037,
- },
- {
- -2336999, 53791244, 11376295, 1581622, -2857227, -792421, -8495445, -1511292, 7205345, 10373957,
- -10849087, -939524, 10756209, 9453760, 27791122, 3073049, 22469658, -4916127, -6529424, -8811662,
- 5076115, -1225139, 9375914, -1387274, 13390097, -1704565, -5021354, -11088532, 1833951, 9859634,
- -1343788, -4101157, 821413, 666257, -13331578, 1192927, 5225365, -4783520, 2953864, -869194,
- -681289, 2278480, -5094905, -6187974, -1097364, 3484829, -5249524, -5806259, 7252053, 9571335,
- 727460, -1987496, 4759361, 1249299, 78920, -3374234, 1964948, -1728188, 3299072, -1072131,
- 2795487, 662499, -5278515, -1313186, -1194538, -391379, 1976759, 603980, 507880, 1692754,
- 1242856, -175020, 3450469, 1504849, -816581, 1132798, 1353452, -67109, 690416, -1239098,
- -358093, 654446, 783832, -2170032, 834834, -2360622, 729608, -38655, 1904818, -448287,
- -1088237, 499827, 150324, -197569, 333934, -147103,
- },
- {
- -49341120, -131461968, -3267396, -17966386, -495532, 16640314, -19399830, 16634945, 3510062, -105764,
- 12338367, -7996156, -5884105, 11437498, 2845953, -1704565, 6706055, -9339406, 9233106, -1625645,
- -8377871, 3005940, 12578885, 1108638, -17377974, -1910724, -324270, 2188823, 2715493, 4135517,
- -966368, -3087545, 6031208, 578210, 903554, 28849832, -5540508, -6279779, -2765959, 1961190,
- -6408628, 7262253, -12457016, 2743947, -915365, -689342, -1702418, -5763846, -758599, 6059662,
- 2162516, 182536, -4881767, 2705293, 5626944, -2885681, 4045322, 2254321, 4929549, -1467805,
- -2108829, -1175747, -263604, -316754, 941135, 2285996, -2899640, 1099512, 640487, 3153043,
- 1168231, -260919, 583579, -646929, -821413, 959388, 645319, 339839, 248571, -1416266,
- 825171, 109522, 217433, 748398, -2192044, -385473, -2073396, -705985, -1226213, -1228361,
- 488553, -1367947, 601832, -44023, 560493, 300648,
- },
- {
- 2156611, 31230318, -13121662, -4676146, 12425340, -10836739, -1781338, 207232, 3951370, -5222144,
- -1136556, 2668249, -17069274, 2239826, -55645596, -18772766, -12924630, 7191386, 8335995, 14542759,
- 1036161, 24956444, 27050778, -2611340, -22478786, 12212740, 12130598, -3595961, 6365679, 5581310,
- -1750736, 3370476, 24910274, -3215320, -3612068, 4835060, 2136209, 3585224, -6026913, 950262,
- -5883032, 4629975, -163746, 6466074, -2666638, -7313793, 5720897, -3486440, 270046, -6256694,
- 1403381, 3008625, 1233729, -7544647, -922881, -2017024, 4567698, 98784, -997506, 1773285,
- -3084860, -962073, -3024194, -1380832, 1587527, 101469, 5676336, -725313, -2262911, -2106682,
- -4778151, 2296734, -1401233, -99858, -1221381, -1731946, 1421097, -1976759, -58519, 401043,
- 1102733, -675921, 560493, 591632, -1530619, 775242, -2144799, -396211, 162672, 157303,
- 350577, 40265, 519154, 22012, 841277, 95563,
- },
- {
- -30063698, 70062728, 8879845, -14611479, -1807108, 11261941, 3138547, -7429757, -2687039, -4919348,
- 6934762, -9578314, -7231651, -13587666, 14804215, -2133525, 5976984, 18575196, -7612830, -231928,
- 1897839, -4161287, 7786239, 6298033, 13129178, -15008763, 7854959, -303869, 6116034, -707059,
- 2983392, 1096290, 5015448, 2258079, -1409823, 2868501, -5794985, -2815351, -1855426, -8850317,
- 11432129, -4130685, -11684995, 3504693, -3136400, 6582575, -5502927, -10231149, -6154688, 2179696,
- 6127308, 3905736, -8274792, -7927436, 2314987, 2692945, 2291902, 3870839, -2339684, 1963874,
- -1873680, -2810519, 835908, 1849520, 3542811, -1330366, -1939178, 1771137, 523449, -1247151,
- 3425773, -1783485, -978179, 62277, -1442572, -537945, 1916629, 567473, -344134, 227633,
- -1246077, -912144, -823560, -536871, 168041, 826781, 1996623, -66035, 62814, 726386,
- 377420, 1025960, 188442, -962610, 661962, -264141,
- },
- {
- 5633924, -39715024, -13023415, -1726577, -3303904, -6797860, -16530792, -5440650, -1376000, 5852967,
- 6934225, -7082401, -12375411, -8485782, 32995550, 8604430, -16927540, -5215701, 5491116, -34569656,
- -11136850, 16818018, -15632070, -16857746, -12417287, -12846247, -12278775, -12688407, 29454348, -2206003,
- 2040646, 6191732, -3841312, -3102040, 8945880, -5839545, 3522947, 10058277, -2191507, -5244155,
- -52613, -11584601, 948651, -7284265, 2237141, 1379221, -1428077, 6123013, -3203509, 5248987,
- 4232154, 2383707, 3639448, -2387465, -4099010, 1515050, -6008659, -267899, 1635846, -771484,
- -2078227, -1056562, -672162, -1176821, -920734, -1270237, 3625489, -4740034, 5792301, 1505923,
- -2616172, 911607, 2264522, -601832, -1957968, 442919, -503048, -4187593, 1139240, 1748589,
- 202937, 332323, 995359, -1129040, 2121714, -379568, 413927, 1186485, 684510, 614180,
- 394063, -41339, -53150, 1059783, 89121, 399432,
- },
- },
- {
- {
- -12553116, -208790704, 37478420, -35157528, -2566780, 4525822, 1018444, -11977590, 1142461, -12719546,
- -24044838, -3308736, 5371931, 9185861, 5245766, -15751256, 4249870, -8460012, -5345624, -10068477,
- 2266669, -2770254, -3156264, 2170032, 11659762, 6471979, 10496900, -9503152, -6102612, 7821136,
- -7749195, 3539053, 4782446, -2360085, 377957, 1831267, 2358474, 4297652, 1867774, 4138201,
- -434329, -377957, 597000, 189515, -8164733, -2668249, -949725, -352724, 329639, -1654099,
- -4514011, -1934346, -135291, 1853278, 1707786, 1356136, -2738579, -1474784, -2084133, -3949223,
- -2286533, 159988, 1869921, 53150, -4645007, -2580202, -2647847, -1724966, 1250909, 334471,
- -32749, 364535, -328565, -1038308, -187905, 951872, -1397475, -760209, -11274, -807991,
- -658204, -896574, -266288, 1183264, 814970, -558346, 314069, 583579, -574452, 221728,
- -201863, -35970, 191126, -45097, -4832, 201327,
- },
- {
- 992674, 60130, 4272956, 11812234, 967441, 17180, -3464428, -7515656, 1147830, -12773770,
- -8590, 2947958, 2136746, 7835631, 16975858, 23482734, -3140158, -9346923, -2245194, 15893526,
- -7598871, 16557636, 3745212, -12214350, -22549, -10188199, 588411, -9775882, 6742562, 3367254,
- 4811437, 2048699, 10407243, 1025960, -3326452, -4878546, 27380, 6125160, 3583077, 3668976,
- 1221918, 1882269, -2923799, 855772, -1970316, 1567663, 2722473, 4440460, 1571421, -2973191,
- 3671123, 2841121, 1775969, -2258079, 5867999, 4815732, -515933, -2119030, -2720325, -1539746,
- -1013612, 1447941, 3028489, 93416, -1199907, -200790, -261993, -1444720, -370978, -3749507,
- 1763621, -40265, 345745, 66035, -80531, -1536525, 284542, -10201, 44023, 462783,
- -187905, 104690, 1100585, 827318, -746251, -1333587, -294205, 498753, -207769, -766652,
- 397821, 309775, -584116, -569620, 540092, 410706,
- },
- {
- -2066953, -36008468, 8871792, 13043279, 11221676, 2458869, 1584306, -782758, -4199405, 2643552,
- 7844758, 6976638, -8412767, -398895, 8961449, 11682848, 753230, -11358578, 6432251, 2913599,
- 4699768, -2667175, 606664, 2769717, -4514548, -13597330, 7848516, -1118839, -3441343, -6227703,
- -1291175, -6280853, 813896, -1622961, 6500970, 5003100, 2472828, -5938866, -1930051, -1268089,
- 3703336, 2098092, -2799245, -2265059, -991064, 403190, -2356327, -2926483, -2182917, 330176,
- -1116692, -2601140, -1658394, 515933, 1668058, -656056, 1894618, -1668595, 1748052, 2966212,
- -526670, -1904818, -2085207, -1461900, 1277753, -736587, -679679, 10201, 1216013, 402653,
- -113817, 217970, -1437203, 457414, 120796, -1015223, -1273458, 1292785, 465467, 1950452,
- 664109, 294205, -424665, 126165, 903554, -217433, 95563, 185757, 590021, -262530,
- -180926, -1093069, 19864, 1305670, 662499, 112206,
- },
- {
- -18137110, 238458736, 37935836, -10608032, -15128485, 3278134, 7624641, 2725694, -3204583, -3420405,
- 16661789, -12981002, -3139621, -7056095, 8841727, -3320547, -262530, 26811334, -9481140, 50466,
- -5055177, -3572876, -8240969, 553514, 2277407, 9861245, 1504849, 8004746, -1002338, 1917703,
- 2886218, 1602560, 3036005, 375810, -115427, 633508, -2517925, -5685463, 3804267, -1924682,
- -513249, 2780991, -2822331, -2643016, 3098282, -3943854, 2390686, 3563212, 3217468, 4452808,
- -1904818, -603980, -1884954, 2736968, -317291, -4185446, -667867, -3693672, 1005022, -387084,
- 1415729, 451508, -3230352, 1080184, 1613834, 1517197, 310848, -2162516, 1210107, 2715493,
- -151398, 3054259, 1101122, -1651952, 459025, 979789, 1298154, -79994, -383326, 122407,
- -154082, -579284, -987306, 491237, 579821, 566399, -75699, -364535, -655519, 349503,
- -178241, -918049, 501437, -12348, -199716, 134218,
- },
- {
- -1939715, 14103062, 14862734, -5101885, -1774358, 1216550, 471910, -1917166, -13422, -2299955,
- 4905390, -10352482, -4846871, -16275779, -22820234, -10222022, 34934728, 6817724, -27783606, 13979582,
- 6400575, -8792872, -6382859, -3236258, 2557653, 9911174, 18026514, -3134789, 1963337, 2908230,
- -5005785, 1751810, 1429150, 2275259, -6517613, -2418067, -3448859, 243739, 1395328, -4841502,
- -317291, 4594542, -4040491, -5248450, 2214593, -1352378, 261456, 146566, 160524, 2378338,
- -2167885, -1306744, -1066226, -648003, 1262184, 2939905, -278099, 467615, -2049236, 4488241,
- -3514357, 762894, 2421288, -771484, -1713692, -1677185, 2252710, 1636383, -1036698, 804233,
- -900869, -880468, 536334, -221728, -1840930, 818728, -2362769, 386547, -1463510, 1192927,
- -107374, 663572, -157840, -18790, 767725, 913217, -53687, 523449, -348429, -671626,
- 255014, 271120, 513785, -41339, -867583, -558883,
- },
- {
- -20638928, 313888544, 33945276, 63683628, -2433636, 6238977, 5430986, -27605366, 3327526, -154619,
- -16006269, -2063195, 12692165, -14079977, -9160092, 9247065, 3303367, 7692287, 1298691, -3335579,
- -13038984, 6139119, -4476967, 1131187, -5304822, 6702297, 4244502, 2563559, 9019968, -8266202,
- -8442832, 1144609, 838056, 93416, 2063732, 2251100, -1618129, -5284958, -2858838, 5972152,
- 4235912, 8352638, -3925063, -158914, -207769, 2938831, 6817187, -1343788, 1047435, 345745,
- 2202245, 1552094, 3572876, 2816962, -4305705, 3790309, -3308736, -1400159, -3908420, -561030,
- -1671279, -764504, 2316061, -901406, 1202054, 3089155, 1489280, 1323924, -271657, -694174,
- 215285, 562641, -194884, 3826279, 829466, 856846, 427349, 93952, 997506, 541166,
- 10201, -299037, -1327682, -470299, -410706, 174483, -365072, -172872, 1444183, 439697,
- -624918, 1464584, 485868, -26307, 221191, 118648,
- },
- {
- -267362, -2938295, 2433099, 5599564, 1013075, 331249, -249108, -69256, 2433636, 2778307,
- 5539971, -1070521, 5878200, 18644990, 44527000, 30292942, 16497506, 12485470, 3539053, -899796,
- -8040179, 10143639, 30536680, -35633196, 317291, -11863237, 7123204, 2320893, 9482751, -5876052,
- 284542, -8633421, 8697846, 7759396, -11179263, -1231045, 1562294, -4678830, -573915, -1284195,
- 404264, 755377, -3485366, 2337536, 1480690, -1351841, 452582, 4007205, -2849174, -2685428,
- -504659, -1551020, -4019553, 2394444, 552440, 994285, -373125, 2699924, 3647501, 561567,
- -880468, 1078037, -538482, 1440962, -371515, 438624, -2920041, -16643, -625455, -287763,
- -740882, -844498, 802622, -1867774, 1081795, 191663, 1662689, -1746441, -987843, -253403,
- 223875, 1627793, 476741, -361314, -597000, -548145, 284542, -503585, 1569274, 877784,
- 162135, 526134, -36507, -697395, -30065, -282931,
- },
- {
- -53262428, -318823488, 26640072, -50450832, 6956774, 341450, 4694936, 453119, 597000, -2645700,
- -20073066, -8389145, 13949517, 8729521, 3677566, -16403554, 12004434, -813359, 4405026, 1235877,
- -2559801, -4029216, -4473209, -6855305, 4245039, 250719, 537, -6291054, 4189204, 4284767,
- 5006858, 34897, 2798708, 4412542, 2264522, 4380330, -682900, -506269, 484258, 1051730,
- 119185, 102005, 488016, 2951180, 500901, 2029909, 5645735, 1953136, 61203, -1913945,
- -3580392, -392453, 1165547, -1856500, -2623151, -4111358, -4152697, 1311039, 3389803, 6891275,
- 3637301, -1298154, 249108, -3047816, 633508, 318901, -3147674, 1540283, 846109, 23085,
- -410169, -409096, 102005, -965294, 1190243, -271657, 425202, -1708860, 562104, 1698123,
- -387084, 50466, -59593, 15569, 1198833, 145492, -839129, 689879, -448824, -200790,
- -611496, -498753, -938987, -933619, 395674, 479963,
- },
- {
- 78383, -9289477, -3238942, 879395, -5153424, 1065689, 56371, -630823, -1594507, -104153,
- 1306207, -774705, -777926, -3412352, -15834471, 9164386, 6551436, 23215372, -18973554, 16385300,
- -31343598, 1532767, 8267812, -28958816, -17588428, -3714073, -4929549, -3235184, 1040993, -3617436,
- 8562017, 10196252, 446140, -1183264, 2572686, -722628, 8745090, -2822331, 6885370, 395674,
- -5532455, -1256278, 4768488, -4307316, -2057826, 1862942, 369367, 5131412, 4083977, 3561602,
- -2565169, 2755222, 1651415, 2490007, 1555315, 3734474, -1851131, -3708168, 184147, 1633161,
- 430034, 1658394, -1214939, 1360968, 1895154, -1676111, 2530273, 973347, 187905, -752693,
- -211527, 2299955, -108448, 294205, 311385, 532039, 261993, -1426466, 67646, -281857,
- -1372779, 1714229, 1339493, -91805, -2012729, 658741, -554588, 840740, -227633, 235149,
- -165356, -596464, 497679, 479426, 127775, -255551,
- },
- {
- -7980586, -249264336, 52805548, -15015206, -17092360, -1814087, -13305809, -12097312, 11537893, -7460358,
- -6231461, -12534325, -18434000, -2377265, 22049826, 15079630, 23779624, -2823941, 2849174, 7491497,
- -4051228, -11018202, 3722126, 834834, -2239289, -2426120, -8109972, -1212255, -13462038, -5590437,
- 4647155, 7015292, 122407, 7855495, -10496363, -672162, 2595234, 2220498, -844498, 3467649,
- 1222992, -2610266, 8494372, 2120640, -2341294, -7044283, 2439005, 745714, -423054, 5049808,
- -4479651, -438624, -1511829, -3188476, 312459, -2661806, 146566, 902480, 1857037, 1229971,
- 120796, -4795868, 1584843, 108448, -308701, 1810866, -1158567, 1177358, -2374043, -632434,
- 499827, -1104344, -911607, 2369748, -513249, -1208496, -102005, -1734630, -804770, 814433,
- -408559, 5906, -1465658, -323196, -3013993, -897111, -1034550, 825171, 563178, -124017,
- 51540, 48318, 303332, 891206, 155156, 174483,
- },
- {
- 1620276, 49974092, 11053635, 434865, -2048163, -5582384, -10679436, 520765, 14244259, -1292785,
- -2987150, -6667937, 6893423, 16716013, 18031884, 5829345, 14718316, 7707856, -12977244, -9614821,
- 15118285, 634581, 3736622, 839129, 8303246, -11441256, 2101313, -4894652, 7452305, -1024350,
- 4543002, -6966974, -909996, 2507187, -8843875, -6340446, 6544457, 1249836, 659814, -3924526,
- 3353296, -3751117, -3971771, -5801427, 393526, 3278134, -5395553, -2964064, 2705830, 6231998,
- 3406983, 1382980, 1116155, 4359392, -4005057, -2025077, 3937948, -865973, 1061394, 1707786,
- 1304060, -1518271, -2728378, 255551, -1851131, 160524, 434865, -194347, 836445, 1264868,
- 1653026, 1025960, 469225, 1719598, -768262, 2033130, 599685, 670015, 689879, -420907,
- -1685238, 1912334, -263604, -867047, -336618, -76236, -424665, 1178432, -3758, 73014,
- -544924, 1264331, -721018, 25770, 259846, -950798,
- },
- {
- 19436338, -190676688, -32729798, -12509629, -1629940, -17169668, 9876814, 5900748, -3410204, 13279502,
- 7647726, -6849936, -6490770, 7043747, 4177393, 1002875, 7800198, -9762998, 2429878, 1166621,
- 1582159, -2265595, 3837017, 2435247, -6430640, -7379291, 3072512, -4532801, 1401770, 6769406,
- 1018981, -1625108, 5947993, -995896, 11143830, 10188199, 2825552, -6395743, 4323422, -5606006,
- 1577864, -12885, -6067715, -3175592, -1601486, -7336341, 3022583, 448824, -2288681, 1228361,
- -1500554, 2529199, -1335198, 2290291, 4802311, -2793876, 2776696, 4020626, 771484, 3197066,
- -1533303, -1670742, -930934, -652835, 507343, 655519, -714038, 140660, 1319092, 802085,
- 1439351, 342524, 1646583, 88584, 239981, -43487, 664646, 846645, -1009317, -1082332,
- 157303, 1040456, 413927, -955630, -1122597, -1082332, -919660, -2048163, -1147830, 422517,
- -1246077, -950262, 474594, 369367, -113280, -179852,
- },
- {
- -2773475, -119185, 22829898, -2851322, 3524558, -1863479, -6980933, 2429878, -2440615, -4775467,
- 1229971, 2108829, 2611340, -16394427, -54278188, -42805792, 13769128, -9395241, 4555350, 15298674,
- 18110804, 26306674, -11258720, -3767760, 562104, -137976, 7948911, 6091874, 11312407, 5949604,
- -13362717, 17655000, 10186589, 284542, -3332358, -1899449, 9336722, 2020782, -9921911, -2313377,
- 1302986, 5306969, 4134980, 2410014, -4268124, 264141, -645856, -2613488, -3444564, -349503,
- 298500, -2539936, -2018635, -2840584, -2264522, -1819456, -231391, 1120987, 944893, -1187022,
- 438624, -1358283, -1861332, -2217277, 140123, 1567663, 1411971, 1597191, -3221, -5359583,
- -46171, -890132, 413927, -1318018, -1043140, -640487, -1062468, -1014149, -20938, 490163,
- 250182, -130997, 1352915, 568009, -1292248, -505196, -770410, -103079, -854699, 1006096,
- 317291, 791885, -49392, 168577, 661425, -362388,
- },
- {
- 33940444, -1020592, -4149475, -18380850, 32749, -7799124, 21164526, -3828963, 619549, -4628901,
- 6287832, -8831527, -3453691, 4025995, 2190433, -1844689, 12519830, 7827578, -2436320, 8499203,
- -3052111, -3955665, -168041, 12954158, -2408403, -4294968, 1963337, 3558381, 692564, -5267241,
- 7896298, 4090956, 1508607, 1793149, 3747359, 182536, -4906464, -3189550, 1183800, -5440650,
- 8891119, -12525198, -5839545, 2461016, -1056562, 4510253, -1672353, -9050033, -1310502, 965294,
- 6027450, -2525978, -5516886, -5208185, 325881, 1483911, 2072322, 1666984, 1663763, 1228898,
- -4560182, -526670, -434865, 2495376, 1422708, 346282, -1323924, 2005750, -1256278, 1689533,
- 1925756, -1827509, 950262, -1421634, -1527398, -787053, 2918430, 295816, 1503775, -875100,
- -1845225, -1250909, 1120450, -190589, -158377, 953483, 1120987, 208306, -179852, 162672,
- 1153199, 941135, 41876, -202937, 148176, -63351,
- },
- {
- -4719096, -47445968, 8315594, -245350, -11748346, -2573759, -12437152, -8614094, -3421478, 6671158,
- 6999723, -11558831, -9269076, 20308752, 2969433, -11450920, 3754338, -6514392, -4649839, -6924024,
- -29699162, 4494147, -9678172, -6643241, -13293461, -19243064, -12670154, -9706626, 20855824, 16567836,
- -6794639, -1872606, -1795833, -782221, 6532646, 2168422, 212064, 4407174, 1838783, -6902550,
- -4732517, -8468602, -777389, -6982543, 3713536, -3372623, 6377490, 3453691, 1164473, 852551,
- 6255083, 3578782, 845572, 880468, -3342558, -542777, -4471598, -3001645, 1255741, -2992519,
- -2312840, 704912, -364535, -2218888, -1782411, -51540, 111669, 1038845, 883690, 2816962,
- -1233193, 914291, 2684, 1079111, -1874216, 312459, -1455457, -2536178, 255551, 1080721,
- 507343, 380641, 2149094, 158377, 643708, -1400696, 1087164, 103616, 891206, 912681,
- 591632, 22549, 580894, -17717, 513785, 1069447,
- },
- },
- {
- {
- 10545218, -155981936, 75513576, -12360916, 7130720, -615254, -1094680, -10591926, 10537165, -290447,
- -12252468, 9058623, 6774237, -10770704, -146029, -5066451, 13489419, 1794223, 7774965, -4999879,
- 549756, -5023501, -1622961, -1340030, -1210644, -1345399, 10766409, -8472360, -8091719, 10752451,
- -5057324, -1461363, 2914672, -129386, 1559610, 33823, -731755, 3469797, 1778653, -1559073,
- -2860985, 1647657, -1856500, -1971927, -4929012, -983548, -1350230, 892816, 143345, -1544578,
- 15032, 1231582, -506806, 938450, -582505, 2478733, 1242319, 2447058, -725850, -975494,
- 1899986, 13422, -485331, 1405528, -1696512, -141734, -15569, -1232656, -377420, -1117765,
- -391379, 169114, 1869921, 1399623, 592169, 819802, -1640678, -982474, 230318, 30065,
- 956704, -968515, -1087701, 115427, 348966, 253940, 643171, 1300301, 164283, 13422,
- -38118, 490700, 384400, -118648, 27380, 183610,
- },
- {
- 118112, -8247948, -1217623, 2380486, -6412923, 2253247, -1270774, -2952253, 5929203, -250182,
- 7636452, -373125, -885837, 4700305, 6040335, 9159018, -4822175, -4017942, -17577690, 6930467,
- -10742250, 3524021, 4057670, 4046396, 11113228, -10601590, 8508867, -3698504, 4184372, -4656282,
- 3524021, 2871186, 737124, -3107409, -3214783, 1840394, 2748779, 3921842, 2054068, 2955474,
- -2464774, 671089, 110595, 1723893, -3646964, 1846299, 232465, 978716, -332323, -1761474,
- 3010235, 1328756, 2041720, -2216203, 2904472, -692564, -330176, 85899, -1937030, 913754,
- -594316, -56908, 62814, -667331, -818191, 1239098, 1720134, -2294050, -35433, -2388002,
- 1796907, -521839, -598611, -659278, 91805, -884763, 445066, 345745, -152471, -686121,
- 166967, 865436, 916976, 367757, -382789, -522375, -322659, -327491, -315143, -580894,
- 805306, 150324, -156766, -98784, -91268, 51540,
- },
- {
- 1779190, -26209502, 4473746, -10884521, 2263448, 1927904, -983011, 1106491, -3179350, -3317862,
- 4395899, 4737886, -8992588, 1243930, 5902896, 14096620, -3022046, -8313446, 4771709, -7257958,
- 3906273, 1268626, 2215130, 3238942, 806917, -11484206, 8938364, -921807, 2339684, 426812,
- -474594, -2604361, 6519224, -4199941, 947577, 2167885, 6061810, -3045132, 2852932, 3305514,
- 2080375, -504659, -520228, -506269, 1688996, 4025995, -147103, 909459, 691490, 729071,
- 1376000, -658204, 351650, 966368, 756451, -468688, 1589138, -2851858, -783295, 483184,
- 515933, 22549, -793495, -634045, 641561, -579284, -226560, -875636, -295816, 710817,
- 574989, 503585, -1509681, 271120, 28991, 311922, -26307, 1555315, -245350, -272194,
- -1152125, 297427, -470299, -457414, 801548, -581431, -51003, -176094, 617938, -555661,
- 4295, -839666, -411243, 352724, -413391, 614717,
- },
- {
- -6052146, 169877232, -38933880, 5683316, 4571456, -2968896, 6049462, 3247532, -2388539, -11405823,
- 8222178, -6263673, 4543539, -5217312, -2469606, -7353521, -4263829, 13553843, -15525770, 510027,
- -1523103, 1537598, -4188130, 2819109, -5933498, 725313, 167504, 7170985, 92342, -2926483,
- 304943, -115964, -705985, 876710, 1808718, 351650, 46708, -2701535, 5139465, -4174708,
- -970126, 3760781, -883153, -3870839, 846109, -964220, 973347, 648003, -1939715, 2433099,
- -2412161, -3286187, -648003, 2945274, 641024, -1647657, 75162, -2774012, 1568737, -2036888,
- 1209570, -423591, -3175592, 2510945, 588411, 608275, -56908, -3701188, -1015223, 399969,
- -2339147, 588411, 723702, -1300838, 80531, -133681, 269509, -166967, 236223, 777926,
- 492311, 356482, -534187, -104153, -203474, 198642, 552977, 250182, -303332, 785979,
- 213675, -712428, 589484, 469762, 86436, 348966,
- },
- {
- 2062121, -2738579, -2964601, -588947, 801011, 421444, 1178432, 274878, 1450625, 242666,
- 4327717, -8029442, 5872294, -1685238, -15338402, -21323976, 13375065, 23079544, -22565222, -2388539,
- 4212289, 676457, 7994545, -1006633, -3786014, -19138374, 1106491, 1111860, -1066763, 325881,
- -10872710, -4373888, -2590939, -2298881, -5054640, 237297, -2072859, 4980552, 3450469, -5707475,
- -1091995, 4915053, -1798518, 49929, 1529545, -3836480, 69256, 674310, -3077881, 1870995,
- 511638, -259846, -1548873, -1648194, 1898376, 2617783, -149787, 1761474, -3465502, 750546,
- -4343823, -89121, 443455, -2041183, -819265, -1455994, -391916, 182536, -418222, 2959769,
- 46171, -928787, 602369, 377420, -274878, 1819456, -2068564, 742493, -1095217, 461172,
- -629750, 394063, -334471, -113280, 314069, 539555, -286689, 368293, 217970, -461709,
- 129386, 245887, 51540, -293132, -241055, 204548,
- },
- {
- -14027363, 241383072, -22168474, 64337536, -7602092, 499827, 9688372, -19005768, 2698313, 6689412,
- -5450851, -6900402, 6554120, -621160, -3900367, 8476655, 345208, 1954747, -1454383, 2480344,
- -1755031, 6737730, -2854006, 5959804, -4253092, 406411, -2582349, -4378183, 7570954, -451508,
- -2669859, 2731062, -377420, -4387309, -2617783, -767189, 2463701, 1513439, -56371, 4812511,
- 1135482, 3542811, -2814277, 87510, -2302103, 3227668, 4699231, -5747740, -877784, 1254131,
- -271120, -630286, 1843078, 2352568, -4375498, 4032438, -828929, 1417876, -3083250, -2218351,
- -2385318, -1034013, -1037772, -2501819, 916439, 1028108, -158914, 891206, 251792, -634045,
- -1046898, 625992, -2142652, 1775969, -550830, 596464, 644782, -469762, 347892, -464930,
- -537945, 202937, 302258, 682900, 173946, 831076, -83752, -223338, 281857, 384936,
- -689342, 494458, 188979, -548145, 80531, 299574,
- },
- {
- 673773, -9727564, -6582038, -518080, -3019362, 559420, -971736, -89121, 1438814, -152471,
- 303869, -2594697, 3325379, 9143985, 25715580, -12046846, -12725988, 4318590, 6919729, 5946919,
- -12863964, 904091, 27895812, -29766270, 3418794, 698469, 12881144, -2660732, 504659, -10305237,
- 6282464, -6336688, 8821863, 14749455, -1773285, 3549791, 2414309, -481036, 5010616, 1221918,
- 930397, 1644436, -538482, 2679523, 41339, 1544578, 987843, 2970507, -2259153, -2598455,
- -774705, -1821066, -4105989, 1156957, -1145146, -580894, -921271, -1418950, 644245, 1162862,
- -2663417, -192737, -379031, 1632625, 1170379, 1745367, -1431298, 625992, -227633, -343061,
- -131533, 837519, 1192390, -1886564, 1573032, 644782, 1665374, -515933, -158914, 461172,
- -13422, 369904, -183073, -82141, 19327, -534723, -253940, 4832, 457414, -862215,
- 206158, 310848, 89121, 121333, 178241, -93416,
- },
- {
- 58703076, -180826720, 27219892, -45544908, -555661, 2329483, 1808718, -7089381, -2234457, 3465502,
- -8495445, -2462627, 15103252, -1678259, 8413304, -10249403, 532039, -14148696, 2245731, 5559835,
- 1724966, -83752, -1697586, -7232188, 2368138, 530965, 1036161, -4961224, 2964601, 1081258,
- 816044, -3090229, -2263448, 113280, -1875827, 402116, -3397856, -2850785, 717796, 2483565,
- -1542967, -4020626, 1415192, 1672353, 620086, 776315, -27917, 763967, 3099356, 1223529,
- 3301756, -742493, -1561221, 608812, 2543695, 1492501, -325344, 268435, -411243, 4441533,
- 359704, -1309428, 2464238, -1246077, 807991, 1024350, -981400, 226560, -1190243, 175020,
- -391916, -795643, 1373316, -2684, 843424, -649614, 823023, -1141924, 793495, 1028645,
- -192200, 964220, -46708, -637803, -631360, -848256, 405338, 672699, -595390, 466004,
- -501437, 229244, 6442, 146566, 442382, -152471,
- },
- {
- 1020592, 257698, 1773822, 2080912, -2103997, 951872, -599685, -408559, -2249489, 819802,
- -246424, -4691715, -2069101, 18110804, 7217693, -8534637, -20876762, 13515725, -16580184, 23155242,
- -12582107, 11601780, 7538742, -20091320, 121333, 1729261, 7181186, -290447, -2885681, -6752763,
- -1577864, 2713883, -1831267, -5128191, 2295660, -3460133, -517544, -5671505, 3939559, -2374043,
- -1284195, -1014149, 5892159, 2537789, 1439351, 3117610, 27380, 2391223, 989453, 1057099,
- -2003602, 2108292, 611496, 815507, -548145, 1654099, -622770, -2026151, -126165, -2172180,
- -1178969, 800475, -910533, 782758, 1106491, -1032940, 2073396, -545998, 104690, 157303,
- -1709934, 166967, -1606855, -184147, 1246077, 1256278, 39192, -884226, -15032, 427886,
- -1076963, -6442, 170725, 674847, -1488206, 671626, -731755, 239444, -560493, -163209,
- 608275, 38655, -537, 173409, 2684, -113280,
- },
- {
- 8958765, -195767296, 67240400, -7154342, 8884677, 9517648, -13260175, -5625334, 14176613, -2603824,
- -3127273, -4548371, -6240051, 1917166, 10834592, -6686727, 11885248, -2804077, -2725157, -920734,
- 2221572, -6174016, 6827925, -4430796, -7225746, 1949915, 1791001, 4027069, -7392176, -32749,
- 1068373, 1906966, -1865090, 6559489, -7351911, -2552821, -916976, 1998770, -2285996, 4475356,
- -2721399, -6097780, 4213900, -2171106, -755377, 1807644, 4171487, -1382443, -554051, 3634616,
- -2991445, 4042638, 140660, -1612223, 1758252, 521302, 1732482, -672699, 1669669, 782758,
- 2770791, -1029182, 906238, -1496796, -591632, 310848, -1357210, 1728188, -2368675, -700080,
- -420370, -723702, -297963, 1423245, 374199, -197569, 1041530, -356482, -1032403, -170188,
- -710817, 668941, -1115081, 455267, -1212791, 395674, -1013075, 574989, 41339, -861141,
- 267362, -232465, 717260, 862215, -57982, -204011,
- },
- {
- -825707, 29634738, -2203855, -1780264, -2728915, -2745021, -7344394, -4093104, 5614596, -4243965,
- 7079717, -3462281, 2830920, 3955128, -6732361, -11547556, -3694209, 9098351, 1511292, -6825240,
- 8223252, 2508798, -1201517, -7135015, 4277788, -7104950, 8741869, 335544, 1575716, -10945187,
- 8063801, -1751273, 1389959, 2756832, -2961917, -6163815, 2893734, 2836826, -401579, -2342368,
- -1024887, -4115653, 1732482, -5291937, 2167885, 3076270, -3088618, 803159, -1289027, 367757,
- 228170, 192737, -2484639, 1917166, -1701881, -719407, 1941325, -1026497, -1140314, 405338,
- 2798171, 151934, -1248225, 680752, 1181653, 1801739, -1903207, -2276333, -306016, -527207,
- -607738, -671089, -1028645, 1052804, -1282585, 1159104, 120259, 992674, 1145146, 763967,
- -1041530, 1789391, -268435, -759136, -368293, 404264, -361851, 618475, -808528, 366146,
- -159988, 1094680, -357556, 252329, 226023, -688269,
- },
- {
- 18522584, -172627088, -22141630, -13656385, -2644626, -28275918, 1275605, -1071058, -7378217, 5551782,
- 3700651, -2148021, -4745939, 430034, 2282238, 3147674, 10217190, -4602058, -3977140, -6963753,
- 5181341, -397284, -1308891, -2221035, 2992519, 171262, 5469104, -1683627, -157840, 3165928,
- 1496796, 3843996, 5666136, -6176163, 1675574, 84826, 1513439, -2951180, 5760625, -4544076,
- 1993939, -1221918, -2792266, -4393752, 3253975, -3394635, 1602023, 1112397, -1337882, -2809982,
- -2787434, 2224256, -382789, 833761, 2954938, -2698850, 973347, 2253247, -1983201, 1378685,
- -244276, 834297, 281857, 503048, -133144, 387084, -819802, -2139431, 951335, -625455,
- -459025, -229781, 2015950, 747861, 493921, -810675, -144418, 300648, -576063, -284005,
- -75162, 1046898, 67109, 294205, 386010, -1018981, 363462, -730144, -903554, 1137630,
- 258772, -105227, -32212, 109522, -92342, -365609,
- },
- {
- 3003793, -17754858, 7194070, 841277, 2689187, -366683, -6491306, 1316944, -3365644, -4626754,
- 1636383, 4082903, 2466385, -3495567, -14703284, -22910430, 17204566, -10458245, -10801306, 8185671,
- -6252936, -2637647, -19475530, -1203665, 1651415, -12699681, -1286343, -894964, 5278515, 10455024,
- -4576825, 17380658, -159451, -1553704, -4392678, -11862700, 1883880, -3419331, -8168491, -356482,
- 3940096, 2994666, 1578401, 3200288, -127775, 3693672, -1040993, -3109020, -2146947, 1741072,
- 314069, -3905199, -4109210, -466004, 1465658, -53150, -1480690, 395674, 593779, -1516124,
- 1989107, 1407139, 1716376, -81604, -1274532, -458488, 221191, 1832877, 1445793, -2386928,
- 2087354, -323196, 1449015, -782758, -97174, 303332, 193274, 33286, -1086090, -239981,
- 310848, -711891, -327491, -603443, -456877, 342524, -127775, 15569, -891743, 613643,
- -99321, 850940, -32212, -521302, -93952, 147640,
- },
- {
- -23082764, -66606888, -3415036, -20896626, 7028714, -6418292, 24336896, 3877819, 7654169, -5840619,
- 14256070, 3636227, -2383170, 4810900, -670552, -6598681, 3079492, 6498286, 1653026, 8814884,
- -3542811, -334471, -228170, 8611946, -4499515, 3423626, 3242164, 2349884, 2149631, -8660265,
- -921807, -224949, 537408, 1079647, 3138547, -309238, -4010426, -2068564, 4428112, -977642,
- 2731599, -11372537, -597537, 3010772, -1044214, 3211562, 2184528, -967441, 1795296, -678068,
- 1984275, -1562831, 563714, -3070902, 455803, 14496, -1229434, 49929, -64425, 1330366,
- -2546916, 243739, -1242319, -683974, -1259499, 85899, -1142461, 666794, -452582, 507343,
- -76236, 476741, 1874216, -1886564, -361314, -380105, 1610613, -1341104, 954557, 76236,
- 101469, -341450, 1027034, 417149, 523986, -521839, -698469, -272730, 163209, -106837,
- 47245, 25770, 257161, 258235, -177704, -143881,
- },
- {
- 3925063, -53127136, -2230162, 6480032, -5963562, 8702677, -292058, -4111358, -2412161, 516470,
- 3493419, -6514929, 3246995, 11770895, -8290361, -8186208, -2521683, -5560372, 2027761, 17484274,
- -16039555, 1664837, -4755066, 1808181, 5808407, 1535451, 4104378, -8534100, 2027761, 10913512,
- -6314676, -3595961, 1458678, -1774358, 2295660, 3842385, -1249836, 779000, 5387500, -2527588,
- 608275, 1518271, 6473053, -1827509, 310311, -5048197, 6417218, 710817, 1359894, -1019518,
- 3793530, 2932389, -2128693, 591632, -1658931, 1274532, -1252520, -1883880, 525060, -2246268,
- 31139, 236223, -172872, 1110786, 724776, -796180, -1784022, 1685775, -1410360, 1230508,
- -897648, 1222455, -208843, 1319092, -1106491, 209380, -36507, -438624, -363998, 184684,
- 10737, -1061394, -278099, -835908, 78383, -1001801, 1066763, -462246, 277562, 249108,
- -206158, -702227, 459025, -767189, -90731, 1020592,
- },
- },
- {
- {
- -4719632, -54504208, -7231651, 11147051, -3543885, -832687, -4064113, -3365107, 3572339, -2936684,
- 3223910, 7509751, -4373351, -5545877, -5827197, 1436130, 8383240, 7939247, 4271882, 1058710,
- -1705639, 1261647, -4570919, -1220308, -5250598, -699543, 4854924, -2978023, -3193308, 2765959,
- 2918430, -3417183, 1056025, 1591822, 1090385, 790811, -306016, -180926, 3913789, -804233,
- -5130876, 1535988, -2900714, -3507378, -1264868, 711354, -2985002, -16643, -36507, -1467805,
- 1458141, 1114544, 365609, -201863, 711891, 564251, 1903744, 1268626, 243203, -351114,
- 1850594, 345208, -23085, -200790, 519154, -47245, 741956, -832687, -1301375, -976568,
- 251792, 240518, 1534914, 1292785, -70330, 544387, -549756, -521302, 9664, 234613,
- 686121, -858457, -927176, 22549, 325344, 153008, 859530, 746251, 725850, 286152,
- 50466, 133681, 383863, -26307, 0, -67646,
- },
- {
- -541166, -1816234, -4041564, -8417599, 2040646, -713501, -421981, 3804804, -806380, 1739462,
- 6346351, 1294933, -1249299, 2898029, 7191386, -5485210, 8028905, 782758, -14107357, -13073344,
- 2183991, -3726421, 6904697, 4307316, 6602976, -1238024, 3299072, 2219424, -570694, 375273,
- -2830920, 4995584, -2605435, -5668283, -779000, 3651259, 2501819, 6217502, 366683, -514859,
- 228170, 17180, 2197950, -1281511, -3182034, 3762928, -1707250, 74625, 6979, -306553,
- 692027, 1183264, 1995549, -113280, 1252520, -2113661, 250182, 149787, -702764, -783832,
- 624918, 563714, -1216013, 80531, -505196, 442919, 1633698, -957241, -985695, 119722,
- 192737, -395137, -635655, -827855, -295816, 47245, 130997, 355409, -652835, -1288490,
- 1155346, 653372, 412317, -83752, 412854, -440234, -269509, -55835, -358093, 29528,
- 81604, -229244, 578747, 41876, -140123, -242666,
- },
- {
- -721018, 2912525, -14428406, -14440217, 1418950, 2802466, 173409, -2711735, -384936, -1721208,
- -1767379, 675384, 1669132, 295816, 6560026, 2171643, 3212636, -6141267, 195421, -2340220,
- -622770, -3451006, 9528385, -1543504, 5240934, -4940286, 2728915, 3227131, 1032403, -3014530,
- 2674691, 291521, 666257, -2684355, -2337536, 3987340, 5779952, -1664300, 4160213, 3330210,
- -514859, -1537598, -423591, 1060857, 1454383, 2052994, 1270774, 1594507, -336618, 945430,
- 2210298, 233002, -434865, 1631014, -164819, 1454383, -923955, -2318746, 260919, -958315,
- -176631, 1102733, -793495, -80531, -244813, 604517, -613107, -94489, -522912, 224949,
- 303332, -785979, -288300, -42413, 271120, 448287, 348429, 847719, -96637, -1352378,
- 214212, -92879, -113280, -520228, -146029, -437013, 245350, -259846, 50466, -2147,
- -361851, -530428, -280247, 21475, -409633, 301721,
- },
- {
- 21398064, 89652608, -632971, 6181532, -4305705, -1184337, 2010582, 1195612, 1136019, -8061117,
- -1800665, 1510755, 14496, -1264868, -2757369, -6081137, -4612258, 911607, -8025147, 3095598,
- -2809982, -1423782, 2087354, 2630668, -5723044, -517544, 469762, 2279017, 2470143, 616865,
- -3968013, -834297, -1789928, 1810329, 1750199, 946503, 1138703, -1341640, 2993592, -5317170,
- 421981, 3174518, -1198833, -1276142, 39192, 2364916, -2529736, -183073, -3000572, 350577,
- 2089502, -3218541, -1222455, 860067, 905164, -1606318, -266288, -996432, 1250372, -1333587,
- 1100049, -1619203, 434329, 624918, 420907, 156766, -266288, -2639794, -741956, -672699,
- -628139, -1115081, -386547, -33286, -452045, -132070, 154082, -130997, 264677, 555125,
- 876710, 57445, -103616, -353798, 449361, -96637, 185757, 397284, -301721, 304943,
- 348429, 40265, 102542, 229781, 396211, 297963,
- },
- {
- -2391223, -9405442, 2617246, 2188286, -385473, -351114, 73551, 2367601, 1730872, -833224,
- 1852205, -4312684, 1670742, 1757179, -10053445, -8272644, -8366060, 3413962, 13392782, -11006927,
- 2802466, 2121714, 6640557, -3815005, 5638755, -25224342, -8308078, 3063386, 8771934, -12637404,
- -1676648, -6623377, -4054986, -670015, -3292093, 448824, 831613, 2696166, 644782, 41339,
- -667867, 726386, 1344325, 1646583, 578747, -2633352, -993748, 668404, -2565169, 1487132,
- 1187559, -1104880, -1288490, -517544, 1212255, 1254667, 1225139, 684510, -278099, -2619930,
- -3268470, -391916, 142808, -1331440, -177704, -1542430, -347892, -721018, 1079647, 2240362,
- -972810, -464930, 1212255, -354872, 587874, 612033, 15569, -850404, -3758, -35433,
- 31139, 191126, -307090, 15569, -226023, -22549, 490700, -308164, 581431, -73551,
- 155693, 237297, -408022, -353798, 75162, 32212,
- },
- {
- 34433828, 129117992, 2196876, 46272368, 9802189, -1598802, 1686312, -891743, -4465156, 4125316,
- 1846299, -6135898, -2637647, 10324565, 2109903, -267362, 957241, -2669859, 3345780, -2011655,
- 3787088, -283468, 3107409, 2222109, -355409, -1233729, -3307125, -3548180, 2087354, 2331094,
- 1323387, -399969, -2354716, -3074123, -3001645, -1717450, 2397129, 5210332, -1854352, 366146,
- 2627446, -243739, 713501, -1039382, 1417876, 1178432, -394063, -1547262, -3905736, 26307,
- 1834488, -821949, 3251290, 410706, -365609, 482647, 2501282, 89657, -2175938, -3358665,
- -1925219, -545998, -2418067, -165893, -677531, 676994, -33286, 194347, 1328219, -405338,
- -932008, -3758, -864362, 169114, -384936, 300111, 1045825, -833224, -499290, -187368,
- 282931, -375273, 537945, 300111, 881005, 398895, -286689, 548145, -245887, -271657,
- -97711, 206158, 242129, -249645, -396748, 94489,
- },
- {
- -2147, -11709155, -2625299, -3059627, -1653562, -617938, 80531, 1649268, -681826, 104153,
- -1361505, -95563, -58519, 7188165, 19662898, -21005612, -7402913, -4054449, 4715874, 1522566,
- -4901095, 2702071, 7854422, -5509370, -2138894, 4231080, -3988414, 985158, 717260, 2831457,
- -3009162, -1488206, 8621073, 14118094, 2681670, 3063922, 994285, 1820529, 4566624, -22549,
- 1639604, -34360, 2046552, 3590593, -578747, 1946694, 940061, 2145336, -2088965, -2664490,
- -2148021, 275952, -1553168, -2201171, 1474784, -1961726, -832687, -1950989, 155693, 394600,
- -1005022, -678068, -598074, 200790, 1687922, 672699, -261993, -410706, 151934, 303332,
- -170725, 1240172, -3758, -9127, 866510, 978179, 535260, 1063004, -365609, 25233,
- 213138, 308701, -379031, -415001, 275952, 89121, -987306, 286689, -71404, -504659,
- -269509, 289910, 421444, 186294, 153545, -164819,
- },
- {
- -49496276, -17406428, -7807177, -27318676, 4700842, 1552631, -3574487, 1706713, -2345052, -3145527,
- -233539, 609349, 5300527, 1338419, 2149631, -3568581, -3162170, -7191386, -3656091, 7324530,
- -2855080, -2800319, 1739462, -1268626, -3016141, 2654290, -3317862, -484258, 2967286, -623844,
- 80531, -346819, -1929514, -341987, -3696356, -1617055, -2305861, -739271, 1693291, -589484,
- -479963, -2886218, 786516, -677531, 2129767, 228170, 1180042, 802622, 1437203, 956704,
- 3467649, -568546, -607201, 178241, 3024731, 1934346, 1124208, 119185, 251792, 856846,
- 928787, -68719, 506269, 1549410, 171262, 201327, -117575, -826781, -886911, -226023,
- 11274, -161598, 289910, 727460, -67109, -132607, 1085553, -56908, 340376, 306016,
- 539018, 532576, -242129, -275415, -541703, -794032, 529892, 267362, 96637, 44560,
- -207232, 46708, 244813, 625455, 41876, -108448,
- },
- {
- -100395, 3683471, 4094178, 446677, 640487, -194347, -409096, -257698, -1210644, 775778,
- -2160906, -3865471, 1427003, 6704444, 12224551, -19028316, -3263102, -2209224, -1532767, 13022341,
- 9172440, 269509, -1123671, -2944200, -1321239, 7677791, 9577240, -3675955, -8608725, 6500433,
- -5144297, -4976794, -3845606, -95026, -1108102, -4328254, -4182225, -2284923, 1162862, -2078227,
- 2126546, -1450088, 1372242, 3719979, 3726421, 4054449, 787053, 377420, 214748, -21475,
- 2039036, -1461363, 1165547, 551366, 270046, -139586, -744103, 595390, -172872, -2206540,
- -1571421, 81604, -451508, 238908, 210453, 361851, -53687, -197569, -104153, 306016,
- -1370632, -159451, -1534377, -337692, 1646046, 734439, -107374, -284005, -161598, 573915,
- -335544, -449898, -337692, 1014149, -979789, 62277, 66035, -199716, -593242, -338229,
- 301185, 176094, -96637, 167504, 53150, -57982,
- },
- {
- -9454834, -123983896, 3035468, 8761196, 15422154, -2979097, 2018635, 243739, 2976412, 2339684,
- -2236067, 2943663, -3072512, 4142496, -1743220, -2825015, 3244311, 3651796, -2272038, 1486596,
- -530428, -3645354, 3458523, -2346126, -9645960, 2346126, 3380139, 482647, 1378148, -2309082,
- 198105, 1469416, 40802, -1034550, -759136, -1664837, -2171643, 4132832, -2632278, 326418,
- -2770254, 268435, -2095944, -4890357, 4057134, 3168612, 925029, 373125, 1080721, 12885,
- 1614908, 1564979, 336618, -1193464, 911607, 1683627, 981937, 439697, -71941, 725850,
- 1488743, 1099512, 37581, -730681, 26307, -1495186, 339839, 930934, -1614371, -1088237,
- -447750, -373125, -45634, 397284, 1194001, -377957, 425202, 338766, -738198, 247497,
- -491774, -733366, -690416, 216896, 264677, 90194, 26844, -267362, -228707, -914828,
- 605054, -455803, 676994, 621160, -190589, 115964,
- },
- {
- -372052, 15610059, 5768141, -3589519, -1801739, -2414845, -1689533, -3866544, -270583, 1460826,
- 2316598, 4400731, 1583769, 1284195, -16748225, -5922223, -6023692, 7953206, 2538326, 3819837,
- -9591736, 6687801, -1801739, -1160178, -1655173, -3739306, 2443300, 6384469, -940061, 348966,
- -4379793, 498753, 2403034, -1596654, -2115272, -987843, 1059246, 3609383, -2486786, -358093,
- -4340065, -1373853, 2225867, -1787243, 2265595, -882079, -67109, 1995549, -1535988, -258235,
- -2028835, 498753, -1155883, -73551, -354872, -2025077, -49929, 1046898, -418222, 236223,
- 1437203, -12348, 1156420, -859530, 1584843, 577136, -1750199, -1111860, -351114, -1175210,
- -372052, -749472, -72478, -226023, -741956, 414464, 355945, 761283, 486405, 973347,
- 203474, 259309, 120259, -637803, -272730, -132070, 336618, -82678, -339302, -293132,
- 557809, 434329, 191663, -19327, 159451, -109522,
- },
- {
- -46248208, -95826624, -9324374, -12163347, -5207648, 2036888, -19378892, -9594420, 5795522, -1315871,
- 5898601, -3126736, -5172215, -2949032, 4067871, 2156074, 5507222, -3886946, -2540473, 2866354,
- -2019172, 3465502, -1548873, 371515, 2477123, 2924873, 1983738, -1591285, -1687922, -521839,
- 3140158, 3784403, 1953136, -1934883, -1022202, -3577708, 761283, 3503083, -976568, 1658394,
- -2223719, -2225867, -2345052, 866510, 1624571, -1737314, 825707, 2164127, -380641, -3688840,
- -34360, -1064615, 2483028, -1431835, 509491, 1353452, 326954, 1501628, -1129576, -910533,
- 1699733, 424128, 47245, 829466, 744103, 27380, -1491427, -1672353, 753767, -885300,
- 559956, -881542, 1216550, 180389, 1086627, -571768, -468151, -238908, -293668, 223875,
- -18254, 758062, -106300, 805306, 174483, -483721, 197569, -635118, 20401, 467078,
- 661962, 123480, 70330, -157840, -57445, -102542,
- },
- {
- -2677375, -23368380, 9707700, 7227356, -172336, -2443300, -2304250, -652835, -3376918, -1962263,
- 908922, 1538135, -2058363, 4107599, -13646185, 969589, 2896419, -5916855, -5646809, -2133525,
- -15342160, -8909373, -2961917, -1724966, -1248225, -10853382, -5781026, 2347200, 6140730, 2441152,
- 7453916, 11846594, -1414655, -5905580, 1794760, -10581726, -1748589, -6026376, -4439923, -707596,
- 5221070, 2680597, -2462627, 2570001, 1903744, -1091459, 991601, -2561948, -606127, 2024540,
- 276489, -2187749, -3326989, -2150705, 2727304, 289373, -796180, 1750199, -1181653, -795106,
- 1453310, 1439351, 2636573, -262530, -1651952, -1101122, 1118839, 593242, 1892470, -217970,
- 1045825, 250182, 1341104, -1198833, 914291, -64425, 212601, 114890, -445066, -233002,
- 496069, -966905, -1171452, -470299, -336081, -149250, 368830, -431107, -212064, 410169,
- -181999, 65498, 402116, -171799, -374199, 319975,
- },
- {
- 2539936, -101021392, -5902359, -8655970, 570157, 10860362, 53150, 12964359, -205622, -312996,
- 3846680, 11054709, -3070902, 4689031, -1730872, -3009698, -4135517, 835371, 6580427, 5697274,
- -1855963, 949188, 2648921, 3543348, -1976759, 2428267, 2030446, 5952825, 1264868, -3110093,
- -4741644, -2905009, 1222992, 39728, 394063, 2024003, -3671123, -505732, -502511, 1572495,
- -1564979, -3589519, -1327145, 2661806, 2403034, -145492, -821949, 4003447, -895501, 685584,
- 1916629, -134755, -533113, -684510, 76236, -603980, -2857764, 302795, -1292248, 1683090,
- 209917, -972273, -464930, -1784022, -1792612, -293132, -784905, -265751, 737124, -406411,
- 312459, 1254667, 56371, -1235877, 111132, -783295, 987306, 54224, -153008, 532039,
- -161061, 114890, 206695, 515933, 427349, -1210644, -539018, 215285, -177167, 139586,
- 37581, -268972, 110059, 163209, 198105, -215285,
- },
- {
- -3549254, -45527728, -2059437, 3244311, 1067299, 3301756, 4111358, -1401770, -732829, -1936493,
- -1516124, 5906, 8227547, 15365246, -9771587, -10363756, -10142565, -5963562, 4039954, 11848204,
- -628139, -7889318, 5078799, -3973382, 11980811, 2505577, 8685498, -7372312, 1487132, -86973,
- 803696, 901943, -2761127, -619549, 4760971, 1681480, -1960653, 3428995, 666257, 1160715,
- 2091112, 5370320, 5619428, -1571958, -4287451, 1021129, 1795296, 1100585, 302795, -823023,
- 1753420, 4181151, -2043868, 54761, -1073742, 321586, -677531, 3758, 805843, -1383516,
- 570157, 995359, -507880, 264677, 979789, -74625, -1739999, 1133871, -497679, -432181,
- 913217, -76773, 946503, 482110, -196495, -304943, -440771, 399969, -733366, -768262,
- 405338, -522912, -1088237, -701153, -267899, -199716, 608275, 64425, -387084, -41876,
- -105227, -285615, -359704, -381715, -91805, 384400,
- },
- },
- {
- {
- -296890, -28368796, -19063750, 6348499, -3533148, -1118839, -215285, 2534031, -214748, -4662187,
- 5350456, 3365644, -4503810, -204548, 779537, 3435974, -2412161, 1964948, -1828046, -1516124,
- -3050501, 2159832, -241055, 5494337, 560493, -1196685, -1603633, -1957431, 959388, 1251446,
- 3680250, -1353989, 1188095, 849330, 1344325, 434865, 2537252, 2450816, 3462281, -463320,
- -4409321, 628676, -3398930, -2076080, -371515, 705985, -2398739, -24696, -196495, -1066763,
- 1628330, 55835, 12885, -193274, 1150514, -497142, 1388885, 964220, 792958, 898185,
- 1072668, 643708, 970663, -755377, 691490, -374736, 1186485, 518617, -166430, 629213,
- 861678, -75699, 140660, 56908, -877247, -312996, -118112, 26307, -148713, 40265,
- 77309, -155693, 257161, 125091, 55298, 5369, 224412, -90194, 472983, 286152,
- 296353, -14496, -11811, -286152, -15569, 9127,
- },
- {
- 23622, 6746320, -1289027, -5175436, 5161477, -470299, 1264331, 2928094, -2116345, -638340,
- 2830920, -2803540, -3184182, -242129, 5774047, -1691143, 10282689, 3621731, -585726, -6721624,
- 5859409, -687195, 2336462, -4565550, 475668, 1447404, 1904818, -2531883, -2660195, 3111167,
- -1767916, 2711735, -4966056, -3461744, 2588255, 3102040, 1878511, 2780455, -1615445, -257161,
- 337692, -2221572, -77846, -742493, -1736777, 1754494, -3040300, -963683, -1799591, -706522,
- 675921, -884763, 195421, -574452, -1611, -1964411, 466004, -219043, 22012, -657130,
- 712428, 437013, -1103270, 956167, 621160, -9127, 318901, 31139, -100395, 92879,
- -265751, -216896, 213675, -9127, 71404, 818728, -56908, 369904, 1611, -880468,
- 536334, 92342, 464393, 95026, 436476, -237834, -308701, 49392, -417686, 136365,
- 88047, -235149, 483184, -126165, -135828, -52613,
- },
- {
- -527207, 19980188, 4352413, 6295885, 7241315, 651761, -668941, -2118493, 2313377, 339302,
- -621160, 1821603, 1986422, 179315, 967441, -8134131, 2350421, -6237367, 3685082, -517544,
- -914291, -8712878, 8290361, 1436130, 8142185, -522912, 962073, 2617246, 1068910, -616865,
- 4812511, 523449, -2208150, -4449049, -4095251, 1966021, 3133179, -1652489, 1675574, -96100,
- -1341104, -592169, 281857, 630286, -712428, -969589, 1367947, 1469416, -1495186, -778463,
- -422517, -353261, -526670, 198105, -73014, 2323577, -1640678, -521302, 2429878, 417149,
- -1036161, -316217, -1227824, 445066, -663572, 508417, 162672, 540629, -761283, -1292785,
- -521302, -603980, 419833, 186294, 20401, -53150, 113280, 446140, -249645, -1031866,
- 509491, -200253, 156766, -157840, -47782, 537, 495532, -315680, -106300, 264141,
- -156766, -63351, -84289, -42950, -424665, -36507,
- },
- {
- -23567022, 18550500, -17559974, -788127, 5498632, -1318018, -1999844, -1063541, 4946729, 555125,
- 1455994, -777926, -1306207, 2333241, 7557532, 1609002, -3379066, -2422899, -7905424, 3519189,
- -317291, 180926, 4118337, 2831994, -5536750, 2375117, -1850057, -2325188, 1240172, -541166,
- -3360275, 1130650, -2154463, 1429687, 1575179, 2678449, 1738388, -1437203, 456877, -3551401,
- 863825, 1144072, 748398, -2181307, -244276, 4637491, -2294050, -246424, -2192044, -666257,
- 1212791, -1268089, -166430, -706522, -398358, -1194538, 1230508, -469762, 404264, -718870,
- 1685238, -920734, 916439, 229244, 973884, -147640, 363462, -969589, 254477, 907312,
- 1378148, -486942, -706522, -93416, -544387, -448287, -1611, -8590, -435939, -442919,
- 376347, 159451, 263604, -513785, 176094, 73014, 6979, 275952, -377957, -30065,
- 82141, 293132, -141197, -416075, 105227, -96100,
- },
- {
- 2338073, -13304735, -4548371, 2257005, -161061, -488553, -289373, 1289027, 407485, 28991,
- 3804267, -847182, -115427, 1526324, -2951716, 9635222, 5100274, -11251741, 8284992, -10091026,
- 5455146, 5692979, 9485972, 29528, 8626979, -9330816, 1772748, 2187749, 8278013, -13067438,
- 5304285, 744640, -1046898, 2709051, 1965484, 3086471, -522375, -1251446, 225486, 3303367,
- 2757369, 318364, 978716, 1706176, 1627793, -895501, 151934, 841814, -1503239, 1547799,
- 1898912, -22012, -781684, -7516, 570157, -266288, 1307281, -928787, -1180042, -737124,
- -528818, 85362, 464393, -499827, -172872, -746251, -111669, -1304596, 308164, 488553,
- -1147293, -563178, 848793, -579284, 557272, 215285, 523986, -621160, 77846, 246961,
- 272194, 444529, 314606, 255014, -136902, -417149, 284005, -651224, 272730, 135828,
- 372052, 352724, -27380, 211527, 92879, -292595,
- },
- {
- -35866736, 17620640, -7864622, 36538896, 3591667, -1979980, 1707250, 7601555, 2759517, 2679523,
- 884763, -2852395, -3311957, 5437966, -1879585, -4026532, 867047, -4745402, 2705830, -2195265,
- -1377074, -5628555, 4200478, 460098, -1338419, -11274, -286689, -855235, 1267015, 1422171,
- -549756, -959925, -2220498, -2408940, -3584150, -2764348, 15569, 2062658, -3239479, -649614,
- 1784022, -1283658, 703301, 1414655, 2752537, -583579, -2602213, 26307, -2589865, -516470,
- 3216394, -816581, 657130, -318901, 1753957, -745714, 389768, -149787, -391379, -828929,
- 1850057, 1024887, -2517388, 540092, -750546, 544924, 156229, 336081, 1472100, 378494,
- 27380, 184147, 92342, -283468, -403727, 80531, 55298, -942745, -197569, 209917,
- 463856, -438624, 567473, -392453, -20401, -98247, -161061, 380641, 168577, -576063,
- -683437, 4295, 84289, 164819, -235149, -246961,
- },
- {
- -538482, -13049721, -1442572, -1087164, -36507, 126165, 386547, 1388885, -1479616, -192200,
- -1178969, -974421, -4108136, -697932, 6841346, -13548474, 4413616, -2214593, 1030255, -2621541,
- -4341675, -5112622, 5747740, 11594801, 7635915, 6250788, -12972412, -2763275, 2148558, 8601746,
- 3820910, 2542621, 7231115, 5603322, 786516, 528281, -1065689, 438087, 2470680, -3215320,
- -1676648, -1716913, 123480, 2500208, -1811939, 929324, -22549, 1758789, 58519, -301185,
- -1296543, -583579, -20938, -362925, 2805688, -1989107, -2403034, -1453310, 988916, -330176,
- -1097364, -175557, -1377611, -1539746, 17717, -56908, 163746, -550293, -504659, 369904,
- -83215, 671626, -101469, 713501, 690416, 161598, -501974, 743029, -442919, -430570,
- 162135, -33286, -377420, -168041, 187368, 30065, -525060, 389768, 44023, 326418,
- -349503, 85362, 248034, 122943, 292058, -175020,
- },
- {
- 29112362, 95771864, -3612604, -25240986, -613643, 3562675, -741956, 1618129, -3895535, -4253628,
- 3934190, 1531156, -1117228, -1169842, 1035624, 2191507, 1364189, 3564823, -2561948, 3168075,
- -2743947, -3212099, 3059627, 17717, -3811247, 3139621, 827855, 4373351, 2098629, -3899294,
- 1710471, 3093987, 602906, -102005, -464930, 549219, -978716, 1261647, -1104344, -4010963,
- 664109, -2543695, -1333051, -1111323, 1115618, 350040, 1848983, 719407, 579284, 292058,
- 1356673, 1277216, 1699196, -363998, 1180042, 947040, 1901060, 314069, -510564, -1345399,
- 1161252, -1104344, -1364189, 1019518, -847182, -316754, 377420, -526670, -445066, -547608,
- -1074, 27380, -220654, 957778, 367757, 494458, 901943, 114890, 44023, 54761,
- 422517, 267899, -150324, -226560, 97174, -100932, 99858, -49392, 311922, -221191,
- -329639, -173409, 113280, 178241, -384400, 89121,
- },
- {
- -839129, -3177202, 425202, -668404, -200790, -344134, 666794, 490700, -539555, 206158,
- -1349694, -268972, 925029, -1379221, 10502806, -14554034, 9887015, 7209640, 2179696, 9076340,
- 8746164, -5857262, 1839320, 3786551, -7014219, 8608188, 12501039, -62277, -4976257, 9199820,
- -2389076, -4468914, -1023813, 2563022, -3875671, -4665945, -4311074, -2995740, 1094143, -3042448,
- -109522, -82141, 4295, -1432372, -270583, 1745367, 1131724, 1625645, 452045, -360777,
- 729071, -853625, 802085, -216896, 1078037, 124554, -126165, 1422708, -948114, -1728188,
- -297427, 1084479, 230318, 626528, 412317, 508417, -82141, 395137, 376883, 748398,
- -504122, 318901, -1199370, -56371, 1532230, -110595, 154082, -90194, -391379, 499290,
- -9127, 91268, -502511, 1036698, -796180, 18790, 58519, -252866, -130997, -406411,
- -271657, 65498, -91805, -53150, -129923, -38118,
- },
- {
- 10341208, -113788720, -23324894, 6403260, 12664785, -5187247, 8298414, 2255932, -712428, 154082,
- -931471, 3226594, 2763275, 8548596, -1318555, 483721, -1524177, 5191542, -3670050, -454193,
- -728534, -3997541, 987306, 1190243, -4645007, 6410776, -758062, -4698158, 4394289, 4329864,
- 860604, -3833258, -3293166, -2264522, 4416837, 817118, -2206003, 4303557, -329639, 1382443,
- -2728378, -249645, -1224066, -3615289, 2784750, -75699, -2659122, -588411, 812286, -3064459,
- -344134, -687195, -213138, -806380, 78383, 38118, -754304, -784905, -774168, 173946,
- -410706, 289910, -404801, -697932, 411780, -544387, 466541, -297427, -840740, 452045,
- 688805, -199716, -299037, 382789, 651224, -406948, -259309, 354872, -143881, 870805,
- 177167, -240518, -368830, -361851, 2684, -337692, 106300, -60130, -288837, -737124,
- 409633, -423054, 176094, -62277, -215822, 399432,
- },
- {
- 1435056, 8686571, -466541, 3702799, 1879048, 2084133, 4070019, -3061238, -2706903, -85899,
- -344671, 9364639, 1201517, -1233729, -12890271, 1687385, 473520, 1924682, 1443109, 12584254,
- -7384123, 2940979, -540092, -1597728, 1554241, 3298535, -132607, 2614561, -4079682, 2472291,
- -3247532, 1108638, -163209, -315143, -913217, 393526, -209380, 1590749, 741956, 3798362,
- -1274532, 2645700, 2975339, -572304, 2221572, -726386, -703838, 886374, -1167694, -686658,
- -1854352, 874563, 256624, -44023, -17180, -1964411, -1252520, 496069, -436476, -1199907,
- 357019, -511101, 74088, -1404454, 515933, 8590, -973884, -573378, 222801, -537,
- 1014149, 347355, 670552, -199716, -193274, 251792, -261456, -248571, -940598, 440234,
- 201327, -125628, 381178, -201863, -20938, -541166, 154619, 37581, 425739, 2147,
- 318901, 292595, 280247, -71941, -27380, -97174,
- },
- {
- 50413252, 35258996, 702227, -7250442, -6380174, 29391534, 5249524, -4972499, 2742337, -7398618,
- 7158637, 299574, -1242856, -2199560, -4487704, -3618510, 7365869, 2858301, -1229971, 4539244,
- -667331, 3035468, 333934, 1690070, -346282, -1438814, 1449015, -1046361, -1875827, -2151242,
- -17180, 462246, 632434, 2084670, 2680060, -1481227, -312459, 4767951, -1348620, 2536715,
- -2702608, -1379221, 1228898, 4188667, 732829, -829466, 1095754, 3206730, 890132, -556198,
- 1948841, -287763, 923418, -3132642, -60130, 1745367, -789737, 740345, 977642, -536871,
- 740345, 645319, 580357, -411780, 274341, -206158, -510564, -312459, 123480, -1290638,
- 1287953, -664109, 574452, -248571, 749472, -674310, -836445, -471373, -221191, 286689,
- -64425, 258772, -19864, 591632, 336081, 161598, 62277, -314606, 65498, -569620,
- 269509, -37581, 152471, 64961, -2147, 45634,
- },
- {
- 1793686, -28652264, -1344862, 5824513, -1291711, -4742718, 702227, 3080029, 160524, 602369,
- -384936, -843424, -2978560, 8870181, -13907641, 2818036, 6579353, 1820529, 1702418, -2950106,
- -1313723, 1944010, 4516158, -3038689, -8684424, -3687230, -3251827, -6707665, -5639292, -5921686,
- 3175592, 5375689, -4371203, -5535139, 5264556, -4173635, 119722, -3060164, 302795, 1495722,
- 2303713, -1558536, -6741488, -763430, -1313186, -1458678, 1190243, -2699924, 236760, -178241,
- -263604, 652835, -150324, 221728, 2309082, -555125, -277025, 1379221, -1157494, 540092,
- -82141, -1003949, 868657, -194347, 34360, -778463, 1220308, 978179, 2269890, 34897,
- 651761, 391379, 943819, -1242319, 288837, -753230, 418222, 356482, 198105, 76236,
- 550293, -290984, -751082, -317828, -479426, -598074, 83752, -86436, 253403, 35433,
- -528818, 2147, 552977, 412854, 66572, 89121,
- },
- {
- 17248588, -83963928, -3230352, -716723, 360777, 16364899, -7184407, 3784403, -4637491, -2284386,
- -4023848, 4317516, -1746978, -882616, -10179609, 2697240, -985695, -629213, 2407329, 541703,
- -5435281, -4695473, -349503, -2046552, -3602404, 1484985, -339839, 1246077, 2991982, 3386045,
- -340913, -3088082, -565325, -581431, -537945, -1054415, -1890323, 3034395, -990527, -966905,
- 1594507, 1142998, -2927020, 434329, -223338, -449898, 1617055, 4720169, -220117, 1240709,
- 1219771, 681826, 633508, 985158, 1613297, 542777, -2605972, 1649804, -942745, 1007707,
- 1264868, -258235, -313533, -645319, -451508, 409096, -339839, -222801, 369367, -969052,
- 453656, 715112, -105764, 518080, 1018981, -557272, 505732, -62814, 6442, 657130,
- -62277, 237297, -115427, -260919, 222801, -621160, -484258, 196495, -255551, 263604,
- 268972, -127238, -14496, 403727, 449361, -30602,
- },
- {
- 2876554, -37217504, -4278861, 1187022, -275952, -11811, 3360812, 1114544, 2131915, 328028,
- 1214402, 4806069, 4843650, 8324184, 551903, 1869921, -5279589, -3790846, 1684164, 34360,
- 3656628, 705448, 5233418, -11482058, 5147519, 1293322, 7626252, -7131793, 6372121, 1478543,
- 5534066, 5004174, -1085553, 1053878, 4035659, -86436, -330712, 2122788, -2896956, 1200443,
- 1977833, 966905, 1585917, -1585380, -2835752, 1511829, -751082, -525060, -675384, -783295,
- -261993, 2717104, -1507534, 1119376, 1012539, 734976, -1352378, 840203, 2253784, -200253,
- -57445, -256624, -1242856, -481036, 224412, -241592, -914828, 1040993, -79994, -698469,
- 763430, -390305, 613107, -530965, -1051193, -741419, -736587, -107374, -676457, -439697,
- 571231, -303869, -343597, 69793, 566399, -537, 242666, 282394, -413391, -115964,
- 76236, -45097, -543313, -234613, -14496, -78383,
- },
- },
- {
- {
- 2433099, -13093208, -18281528, -13930190, 6962679, -1974611, 1298691, 1913408, 1882269, -416612,
- 1573569, -5011690, -1278827, 3055869, -153008, 3550327, -2765959, 274341, -1898376, -6189048,
- 1571958, -1040993, 2762738, 964220, 4214974, -248034, -3554622, 846645, 2025077, -110595,
- 2459943, 1949378, -1664300, -656056, 2054605, 928250, 4438849, 2153926, 492848, 1144609,
- -2043868, -350577, -2395518, -2598455, 264141, -200790, -2527588, 825171, -363998, -1023276,
- 393526, -294205, 572304, 896574, -717796, -315680, 1066226, 501437, 2484639, 733366,
- 216359, 1112397, 351650, -211527, 34897, -541703, 564788, 1003412, -231391, 1302986,
- 380641, -186294, 698469, -767189, -747861, -353261, 118648, -296890, 78383, 34897,
- -375273, -112743, 608275, -15569, 249108, 174483, -316217, 93952, 273804, 133144,
- 319975, -74625, -195958, 26844, -270583, 172336,
- },
- {
- 100395, 10466298, -6157910, 12530567, -9897215, 996969, 2131915, -1363652, 2730526, -2241973,
- 2459943, -2522220, -2775086, 2978560, -3827353, 9302362, 5542656, -2238752, 680752, 4875862,
- 1286343, 4556961, -3002719, -6236293, -4850629, 4717485, 1714229, -819802, -1689533, 2364916,
- 1286343, -4615479, 2839510, -6015102, 750009, 4780836, -20401, -484794, 1101122, 192737,
- 621160, -2557116, -927176, 1567663, -2301029, -2356863, -41339, -119185, -2304787, -1497870,
- 32749, -460098, 132070, -266288, -1252520, -105227, 760209, -416612, 373125, -1240709,
- 640487, -629213, -384936, 1711008, 491774, -94489, 35970, 158914, -295279, -34360,
- -466004, 317291, 604517, 128849, -178778, 692027, -91805, 22012, 176631, 264677,
- -680752, 748398, 92342, 351114, 90194, -39192, -104153, -536871, -148713, -125091,
- 344134, 70867, 123480, -341450, -221191, -15569,
- },
- {
- 1192927, 13865765, 6801081, 33137284, -10918344, 1063541, -138513, -734439, -221191, 1330366,
- 1392106, 2335389, 267362, 3993783, -992674, -7793755, -870805, -2093797, 2357400, -3160022,
- 2285996, -9189619, 5714454, 3167539, 3445638, 5458367, -1785096, -836982, 1555315, 4904316,
- 418759, 3093987, -1813013, -5914170, -1130650, 2036888, -396748, 122943, -839666, -159988,
- 273267, 2258616, 473520, -1319629, -347355, -2223183, 1151051, 421981, -274878, -73551,
- -1517734, 558346, -359167, 200253, -361851, 1420560, -1249836, 988916, 1026497, 1162862,
- -1042066, -731755, -1591285, 1067836, -828392, 106837, 262530, 638340, -161598, -1596117,
- -349503, 36507, -134218, 289373, -13959, -200790, 349503, -132070, -286152, 102005,
- -116501, -282394, 11274, 333934, 43487, -27380, -129923, -212601, 268435, 73014,
- -150324, 501974, -149250, -250719, 6442, -459025,
- },
- {
- 13217225, -31369904, -2071248, -4114579, -4758287, -128849, -934155, 387084, 1484985, 905164,
- 6890738, -3654480, 2062658, 1163936, 7343321, 832687, -1792612, -3406446, -1105954, -518617,
- 1676111, -2725694, 4348655, 592706, -2649995, 2048163, -2572149, -1852205, -1321776, -779537,
- 325881, -338766, -280247, -12348, 2180770, 1397475, 1537598, -337155, -1695438, 126702,
- 1194001, -340376, 970126, -3251827, 1362042, 3499325, -1575179, -1814087, 102005, -1931125,
- -297963, 706522, 624381, -1624035, -1363115, 656056, 170188, -950262, 153008, 102005,
- 47245, 475668, -347892, 1205275, 165893, -501974, 425202, 130460, 367757, 1093069,
- 1011465, -12348, -278636, -378494, -354335, -466541, -383863, 110595, -108448, -174483,
- -163746, -74088, 230854, -176094, -161061, 401043, -98784, 18790, -172872, 139586,
- -270583, 259846, -92879, -396748, -98247, 2147,
- },
- {
- -1617055, -20333448, 7088844, 2279554, -467615, 4832, 115427, -1213328, 839666, 1075889,
- -812823, 5463199, -3894999, -606127, 2640331, 4931160, 8203925, 4698158, -7626252, -4474282,
- 783832, 4643934, 9880035, 3623879, -1584306, 9575093, 2136209, -2289218, 3919158, -4519380,
- -74625, 2197413, -1244467, 821413, 5752035, 454730, -1145146, -2330020, 363462, 3776350,
- 719944, 2083059, 1294396, 443992, 954557, -1175210, 914291, 722091, 271120, 597537,
- 1600412, -248034, -270046, -797253, 310848, 296890, 915365, -868657, -1340567, -632971,
- 1002338, -1264331, 97174, 358630, -448824, -983011, -550293, -256087, -682900, -36507,
- -48855, -736050, 442382, 188442, 374736, 106300, -55835, -396748, -39192, -225486,
- 493384, 197032, 941135, 207769, 171262, -324270, -491774, -124017, 189515, -148713,
- 421444, 516470, 219580, 8053, 69256, -253940,
- },
- {
- 21093122, -66791036, -3159485, 40919228, 1719598, -1477469, 4646618, -110595, 5756330, 4628901,
- -2662343, -653909, 647466, -9127, -3674882, -2079838, 740345, -3004330, 2344515, -4582730,
- -3011846, -1304596, 2070174, -855235, -884763, -1653026, 2692945, 1369021, 2283849, -1632088,
- -1135482, -216896, -3615826, 277025, -2414845, -1666984, -2442763, 631897, -1979443, -836982,
- 523449, 148713, -212064, 3876208, 687195, 366146, -727460, -1602560, -1687922, 753230,
- -62277, 3208878, -1719061, 2397129, -705985, -507343, -1493575, -541703, 5369, 350040,
- 1411971, 830002, -799401, -623307, -85899, 615254, -190052, 489626, 391916, 1353452,
- 10201, -751082, 256087, 263067, -98784, 99321, -232465, -428960, 39192, -199179,
- 565325, -68719, 363998, -65498, -467078, -139586, -148176, -3758, 370441, -314069,
- -597000, -12348, -92342, 231391, 21475, -314069,
- },
- {
- 118112, -5201743, -10254234, -228170, 1155346, -260382, -111132, 1227824, -1379758, -2014877,
- 2683281, -2288681, -5570573, 5759551, -1181653, 7024956, -10023380, 8039105, 5225902, -14727980,
- 1173063, -6474663, 6207302, 12396349, 9160628, -5778342, -9507447, 4742718, 4258460, 2978560,
- 9176734, -1483374, 6291590, 3802657, 3240553, -4518306, 1159641, 1714766, -678068, -4430796,
- -2270427, 180926, 53687, 168041, 469225, 63888, -284542, 611496, 1316944, -918586,
- -517544, -1050120, 824634, -227096, 321586, -111132, -2800856, 239981, -171262, -432718,
- -206158, -178241, -1273458, -612570, -950262, -303869, -438087, 423591, -1020592, 413927,
- 417686, -183073, 283468, 691490, -87510, 139586, -114354, -365609, -134755, -663572,
- 576063, -202400, -71404, -386010, 183610, -129386, -143881, 287763, 296353, 269509,
- 23622, 137439, 52613, 266288, 16643, -79994,
- },
- {
- -5393405, 131886632, 8508330, -35214972, 6905771, 2022930, 3821984, -3484292, -1846836, -2554969,
- -318364, 4953708, -583579, -576063, -2376728, 3484829, 1673964, 2855080, 5907728, -1822140,
- -911607, -3582540, 10737, -1548873, 560493, 1557463, 2326262, 4905390, 2663954, -3131031,
- 113280, 820876, 3859028, -2512019, 1930588, 1379758, -67646, -507343, -2363306, -2867965,
- 115964, -1427540, -1508070, -796180, -260382, 252329, 877247, 1635846, 1245004, -209917,
- 763967, 703838, 3405909, -456340, 556198, 685584, 866510, -182536, -206695, -1991254,
- 1588064, -382252, -727997, -818191, -302258, -454730, -309238, 66035, -659278, -487479,
- 354335, 22549, -537, 335007, -5369, 907849, 259309, 263067, 412317, 205085,
- -264141, 208306, 17180, -463856, 408022, 188442, -184684, -108985, 332323, -83215,
- -458488, -347355, 289910, -361851, -388695, 448824,
- },
- {
- 1611, -2850785, -5083631, -659278, 99321, -387084, 552440, 1280437, -383326, -885837,
- 388695, -833224, 1549946, 1140314, 6048388, -2754685, -1194001, 9899900, 5356361, 1731409,
- 3521873, -2888366, 2298344, -672162, -3583613, 3863860, 10512469, -1709934, -636729, 1813013,
- -1409286, 1962800, -520765, 246424, -3792993, -2596308, -4348655, 12348, 307090, -1218697,
- -2443837, 253940, 740345, -2670933, -810675, -653909, 1985349, 2770254, 164283, -501974,
- -857920, 1566053, -894427, 867583, 386010, -117575, 890669, 722091, -1636919, -408022,
- -54761, 134218, 1034550, 719944, 231928, 121333, 783832, 265214, 452582, -94489,
- 793495, -17717, -650688, 535260, 609885, -251256, 92342, 85362, -239444, 341450,
- -367757, 903554, -332860, 24696, -209380, 28454, -109522, -428423, 169651, -380105,
- -253403, -156766, 120796, -193810, -25770, -122407,
- },
- {
- -11510512, -100749736, -2134062, 2820183, 3777424, -4875325, 5105643, 1567126, -3702262, -425202,
- 3115999, -1700807, 2542621, 4090956, 2281165, 4155918, 557272, -3089692, -1819992, 1638530,
- -4532264, -993748, -2902861, 1845762, 1560684, 879395, 1439351, -1246614, 1436130, 954020,
- 2907693, -3056943, -3089155, -518617, 1184874, -592706, 498753, 2513093, 2222109, 120259,
- -2289218, -1071594, -479426, -1767379, 1320166, 360240, -2501819, -267899, -577136, -2289218,
- -2178085, 145492, -1329829, 593242, -651761, -299574, -690953, -1939178, 1322313, -8053,
- -1517734, -60130, -824634, -393526, 863288, -76773, -109522, -814970, 160524, 1128503,
- -527744, 267362, -530428, 587337, -195421, -268435, 81068, -161598, 337692, 110059,
- 492311, 445066, -674847, -566399, -264677, -216359, -451508, 94489, -477278, -166967,
- -53687, 140123, -309775, -33286, 148713, 172336,
- },
- {
- -1678795, 8750459, 679679, 10854993, -890132, 540092, 4806069, -2341294, -1592896, -1912334,
- 3221, 7515656, 1806571, -1037235, -8373039, -2552821, 6217502, -1415192, 6495065, 3164317,
- 8597988, -3225521, -79457, -2412698, -3212636, 7192997, -1471026, 1909650, -1997697, 2560338,
- 112206, -2063195, -4294968, 1465658, 1289027, -310848, 679679, 1227824, 1450088, 2261837,
- 727997, 3743064, -1090385, 2212982, -1051730, 1544578, -235686, -887985, 42950, -2704756,
- 621697, 656056, 1012539, -1251983, 720481, -647466, -1277216, -230854, 244276, -914291,
- -692027, -802085, -139050, -703838, -20938, -685047, -336618, -290984, -521839, 35433,
- 959925, 1034550, 628676, -112206, -467078, 544387, -458488, -282394, -527207, 28454,
- 63888, -119185, 339839, 30602, 149787, -629750, -134755, 519691, 269509, 551903,
- 76773, 279173, 130460, 127775, -381715, -77309,
- },
- {
- -29445222, 140576432, 5521718, -2935073, -12776991, 22927072, 17396228, -3273839, 2069637, -3869229,
- 1259499, 1798518, 1960653, 1375463, -5435818, 163746, -1654099, 3011309, 539018, 176631,
- 9049496, -1502702, 1233193, -1441498, -2173790, -3011846, 5463199, -1876364, -1362042, -3078955,
- 125628, 495532, 85362, 3809636, 391379, 3679713, -2008434, 2610266, 3374771, -1052804,
- -1486059, 869731, 274878, 2433099, 698469, 1614371, -919123, 2810519, 1079111, 1163936,
- -594316, 413391, 34897, -2647847, 376883, 493921, -878321, 489626, 1066763, 1343251,
- -1311576, 1425929, 394063, -963683, -12885, -83215, -379568, 164283, -198105, -538482,
- 424128, -301185, 417686, 180926, -39728, -215285, -643708, -205622, -88584, 70330,
- 278099, -454193, 389231, 8590, 310848, 6442, -161061, -100395, -183610, -382789,
- 233002, -164283, 85899, 156229, 30065, 64425,
- },
- {
- -653909, -32959042, 7090991, 4155918, -406948, -3388192, -1625645, 1594507, 3088082, -813896,
- 3358665, -2336999, -1324997, -5229123, -6539625, 289373, 4128537, 2975339, 1228898, -2555506,
- 13326210, 1243393, -4786741, -4775467, -14400488, 9422621, -7961259, -6666326, -5141613, -2627446,
- -1132261, 3255048, -2309619, -2979097, 110059, 2602213, -3980898, -1023276, 1804960, 583042,
- -1547262, -2721399, -2542621, -2184528, -78920, -551903, -2065342, 139050, -756451, -1068910,
- 51003, 1078574, -483721, 1512902, 281320, -454730, -367757, -255551, -734439, 2507724,
- -1532767, 113280, -1044751, 675384, 168577, -68719, 48855, 2450816, 392990, 962610,
- 240518, 654446, 125091, -351650, -496069, -637266, 380105, -143881, 368293, 258235,
- -103616, 532039, -212601, -309775, -382252, -909459, -89657, 427886, 20401, -94489,
- -297963, 263604, 29528, 286152, 479963, -236223,
- },
- {
- -26346404, -25414396, -132607, -2088428, -4167729, 8647917, 890669, 1539209, -4334159, -2390149,
- -2934000, -547608, 3630858, 3761855, -15872052, 2292976, 1685238, -200253, -2016487, -3067681,
- -874026, -3009162, -2043331, -3699578, -695248, -3200825, 4002373, -2667712, 2437394, 3670587,
- 2743947, -3764539, 427349, -1281511, 683974, -4478041, -181999, 2517925, -719407, 162672,
- 717796, 933619, -2694018, -513785, -1804960, 2408940, 2277407, 1462436, 2589329, -452045,
- 1551020, -13422, 1068373, 1043677, 627602, 1737851, -1559073, 301185, -235686, 1421097,
- 175020, -23622, 200253, -948114, 258235, 748398, 121870, -671089, 548682, -831076,
- 952409, -104690, 300111, 466004, 914828, 255551, -67646, -26307, 381178, 557809,
- 8590, 168577, -200253, -255014, 343597, -77309, -118648, -569083, 110595, 345745,
- 204011, 140123, -93416, 441308, 180926, 121870,
- },
- {
- -1608465, -34250216, 1440962, -1984275, -828392, -38655, 627602, 2823404, -1206349, 4095251,
- 1137630, 3387656, 5115306, -3696356, 20219096, -5206574, -1100049, -4203163, -1392643, -1983738,
- 3144453, 445066, 3260417, -5733782, -4121558, 4154844, 3047816, -4095788, 5030481, 6405944,
- 3804267, 2231236, 3018288, -1444720, 4020090, 1083942, 752156, -1795296, -604517, -347355,
- 4494147, -3244311, -909996, -387084, 741419, -645856, -161061, -1115081, -1259499, 740345,
- 738734, -143881, -736050, 922344, 1708323, 990527, -1430224, 17717, 814433, -307090,
- 371515, -663036, -753230, -632434, -461709, 224412, -147640, 678605, -751619, 10201,
- -319975, 562104, -563178, -924492, -1145146, -442919, -180926, -466004, -662499, -476205,
- 468151, -165893, 94489, 617402, 98247, 66035, 17180, 267899, 25770, -40802,
- -56908, -147640, -314606, -318364, 106300, -239981,
- },
- },
- {
- {
- -5139465, 15106474, 27575838, -24948392, -253940, 351114, -462783, 849330, 7381975, -218506,
- -5063230, -5754720, 157840, -3034931, -5279589, 2017024, -2396055, 192200, -168041, -6970732,
- 2812130, 655519, 3298535, -1606855, 1914482, 1168231, -2112587, 1944010, 4105989, 306016,
- -862215, 1979443, -671089, -868120, 2732673, -978179, 1345935, 349503, -1646583, 775242,
- -154619, 859530, -918586, -386547, 554051, -985695, -713501, 2042794, 122407, 786516,
- 505732, -1796907, -817654, 213675, -1642288, -1434519, -323196, -297427, 1652489, 72478,
- -253403, -126702, -73014, 443992, -9664, -550830, -351114, 266825, -854162, 745714,
- 163746, -220117, 1031866, -289910, -278636, 147640, 557272, -395674, 55835, -113280,
- -62814, -165356, 390842, 83215, 69256, 147103, -78920, 202400, 11274, -73551,
- 184147, 185220, -159988, -15569, -300648, 26307,
- },
- {
- 1030255, 16428787, 76236, 17314624, -9386651, -729071, 668941, -1291175, 3673808, -1542967,
- 1807644, -2404645, -3704946, 748398, -7461969, 4020626, -1952600, -4945118, -4058744, 6029597,
- -1024887, 1384590, -360777, -574452, -4999879, 3342022, 660888, -490700, -316217, 1648194,
- 801548, -2576444, 6357626, -5444945, -1828582, 2743947, -437550, -951335, 2353105, 890132,
- 953483, -150861, 377957, 2617246, -2565169, -3220152, 440234, -654446, -1561221, -388695,
- 1227287, 1187559, 1343788, -285615, -908386, 15032, 476205, -2147, 356482, -537945,
- 192200, -775778, 307090, 1129576, 82141, 164819, 172872, -270046, -384400, -11811,
- -985695, -588947, 358093, 100395, -462246, -31675, -638876, -90194, 150324, 297963,
- -926639, 488016, -44023, 120259, 62277, 69793, 49929, -614717, -537, -288837,
- 284005, -5369, 30602, 48318, -39728, 134755,
- },
- {
- -545461, 13346074, 1617055, 21673478, -11505681, 4618701, 2719251, 1489817, -1639067, -1384053,
- 804233, 2728378, 1464047, 507880, -1322850, 315143, 4355634, 2252710, -2437394, -6857989,
- 6114960, -2967823, 1930588, -1621887, -1254131, 2786897, -2937758, -1252520, -54224, 3937948,
- -3129958, -733903, 533113, -2000381, 452045, 1384590, -462783, -1074816, -1027034, 1157494,
- 1911797, 3803731, 831613, -782221, 1921998, 657130, 1953673, 739271, 353798, -454730,
- -734976, 743029, -666794, 1322313, -38118, 14496, -1842541, 520228, -16643, 1459215,
- -240518, 264141, -421444, 1778653, -670552, -621160, -323733, 248034, -323196, -999117,
- 573915, 715649, 174483, 481573, -30602, -183610, 363462, 258235, -9664, 305480,
- -346282, -185757, -208843, -119185, 16643, 78920, -251256, -97174, 311922, -170188,
- -117038, 529355, -44023, -96637, 99858, -416075,
- },
- {
- 4689031, -24580634, 4743792, 2150705, 9389335, -355409, -1230508, 2621004, 2435247, 438624,
- 2918967, -7910793, 7076496, 4429722, 5448166, -1540283, -3633006, -5050345, 532039, 1261110,
- 1670742, -3237332, 1945083, 1136019, -2328946, -382789, -68719, -821949, -1103807, -91805,
- 2816425, 1821603, 909459, -1258962, 2165737, 2529199, 2827699, 79994, 428423, -121333,
- 341987, -18254, -1264868, -3097208, 2046552, 1469416, -2474975, -1336809, 2275259, -462783,
- -319438, 191663, 548682, -926102, 137439, 1071058, -266825, -1162326, -178241, 55835,
- -813359, -390305, -819265, 1712618, 146029, -182536, 309238, 391379, 468151, 762894,
- 130460, -202937, 576063, 363462, -264141, -195421, -146566, -324270, 58519, 469762,
- 103616, -86973, 41876, -186294, -197569, 129386, -230854, -163209, -236223, 392453,
- -352187, -125091, -227633, -169114, -153008, -180389,
- },
- {
- 674847, -27861452, 135291, 1843078, -1269163, 281320, -1141388, -2806761, 646929, -184684,
- -1235340, 3869229, -8090645, -776315, 4104378, -1772211, -6305012, 10393821, -6468758, -7540352,
- -3721589, -2891050, -177167, 988379, -1014686, 9942849, -970663, -4294431, -1105954, -3390340,
- -2427194, -3115999, -3229816, 353798, 1467268, -5534066, -4460324, -428960, -951335, 943282,
- -366683, 900869, 91268, -948114, -1083406, -1874753, -673773, -414464, 136365, 259309,
- 1423245, -577136, -54761, -1396938, -301721, -83752, 861678, -1074, -1052804, -165893,
- 687195, -1541356, 122407, -91268, 627065, -558346, -639413, -441845, -1040456, 201327,
- 284542, 273804, 557272, 221191, 193810, 51003, -411780, -214212, 78920, -254477,
- 312996, -373662, 314606, 60130, 192200, 22012, -393526, -26844, 95026, -215285,
- 556198, 400506, 123480, 168577, 175557, 194884,
- },
- {
- 2645700, -86882896, 6856379, 39015484, -6385006, -2887292, -101469, -9063455, 761283, 4443144,
- -2548526, -1714766, 340376, -3543885, -4971425, 743566, 4137664, -1065689, 1655173, -1708323,
- 2205466, 2932389, 2254858, -2721936, -2410551, -1633161, 2708514, -1198296, 519691, 1343788,
- 2229625, 1064078, -3501472, 1306207, 409096, 247497, -2184528, -941135, 297427, 1456531,
- -2001455, -1201517, -432181, 2040646, -153008, 626528, 1236414, 869194, 724776, 2078227,
- -3182571, 438087, -1973001, 2337536, -1938104, 696322, -986232, -220654, 357556, 221728,
- 275415, 140123, -267362, -48855, 443455, 972273, -222265, 66035, 13422, 568546,
- -137439, -303332, -418759, 469762, -57982, 290447, -24159, -293668, 325881, -275415,
- 102005, -395674, 236223, 299574, -100932, 111132, -114354, 50466, 231928, 79994,
- -257698, 45634, -55835, 142808, 159988, -28991,
- },
- {
- 166430, 7435126, -1184874, -949188, -90731, 43487, -173946, 345745, -2340220, -2008971,
- 2146410, -1780264, -3195993, 3468186, -612570, 12266427, -10743324, 1922535, -975494, -13695040,
- 7791608, 852551, 14510010, 5236639, -6467147, -12329777, -4930623, 4522601, -517007, -1399086,
- 5291937, -4354560, 2136209, -676994, 3295314, -900869, 140660, -1560147, -1819992, -1651415,
- -512175, -1516124, -1202054, 997506, 1230508, 1354525, 289910, -987306, -412854, -901943,
- 1007707, -522912, 625992, -237297, -31139, 1405528, -654983, 1037772, 732829, 381715,
- 98247, -141197, -33823, 894427, -1021129, -885300, 136365, 2013266, -814433, -632971,
- -485868, -324270, 417149, 6442, -98784, 345745, 147103, 3221, 46708, -532576,
- 386010, -463856, -18790, -208843, 314606, 61203, -20401, 292595, 82141, -129923,
- 180389, 216359, 12348, 112743, -214748, -78920,
- },
- {
- -13350369, 98702640, 91805, -40874668, -3871376, -1868311, 511638, -2742874, -508954, -2062658,
- -3251290, 5175973, 4061965, -3651259, -1757715, 1418950, -861678, -2362232, 4215511, 852551,
- 621160, -1729798, -615254, -3230352, -2978023, -60130, 626528, 1847910, 1832340, -2352568,
- -2436857, -1971390, 2824478, -2537789, 2772938, -1122597, -1419487, -711354, -2884608, -2479270,
- -470299, 212601, -890132, -1719061, 83752, -643171, -1086627, -1726040, 328028, -72478,
- 469225, -1687385, 759136, -796180, 719944, 727997, -331786, -1552094, -89657, -1422171,
- 1215476, 60666, 289910, -206695, 74625, -339302, -367220, -111132, -138513, 462246,
- 554588, -87510, -20938, 199179, -399432, 195421, -1611, 53150, 305480, 82141,
- -477278, -2147, -82678, -237297, 353261, 5369, 413927, 206695, -164819, -213675,
- -358630, -133144, 322659, -140660, -105227, 266825,
- },
- {
- 733366, 2719251, -1591822, 2209224, 907312, 60130, -585726, 1283658, 1175747, -1076426,
- -1036161, 390305, 903017, 962073, -2583960, 3111167, -5157719, -5007932, -151398, -3905199,
- -2936684, -1864016, -3487514, -9117679, -2398739, -4907537, -2196876, -3720516, 1396938, -1560147,
- -5419175, 313533, 83215, 977105, -1001801, 2929705, 1453846, 3124052, 339839, -153545,
- -1138166, 2150168, 2347200, -1498407, -128312, -874563, 1566053, 192200, -302795, 284542,
- -1324997, 1196148, -577136, 505196, 563714, 1083406, 332860, 238908, -82141, 1080184,
- 471373, -488553, 495532, -527744, -416612, -307627, 31139, -544924, -251792, -485331,
- 471910, -266288, 226023, 1362042, 336081, -375810, -287763, -231391, -2147, 665720,
- -392990, 572304, -520228, -9664, -143345, 49929, 144955, -339302, 135828, -16106,
- 55298, -269509, 44023, -143345, 92342, -76236,
- },
- {
- 11827803, -96535296, -20988968, 989453, 254477, -11179263, -7928510, -2356863, -5925445, -346819,
- 2814814, -731218, -1264868, -3297998, 1497333, 3189550, -2639258, -3499325, 872952, -5478768,
- -7735236, 947040, -405874, -1399086, -269509, -944356, 2429341, 1104344, 2122788, -379031,
- 3874597, -7516, -705448, 2296734, 1255204, -2724620, 1438814, 969052, 522375, 3123515,
- -1232656, 110059, 3111167, -1313186, 1170916, 2419677, -1633698, -77309, -636192, -970663,
- -3170223, 293668, 1018981, 2352032, -1323924, 183073, 1295470, -608275, 2490007, -246961,
- -1787780, 417149, -363462, -933619, 137976, -623844, 153545, 97174, 354335, 1199370,
- -614180, 464393, -31139, 135828, -490163, -556735, 298500, -65498, 146566, -722628,
- -408559, 223338, -615791, -504659, -447213, 48318, -583579, -161061, -82141, 347892,
- 201327, 140123, -119722, 270583, 237834, 18790,
- },
- {
- 1295470, 9687836, 766115, 8556649, -2920578, -1117765, 2793339, -2615098, 2071785, -1250372,
- 1118302, 1869921, 507880, 1511292, -6197101, -6299644, -969589, -2433099, 11858942, 4347044,
- 9072582, -4400731, -426812, 2539936, 122407, 4776541, -4101157, -1795833, -4170950, -843424,
- -418759, -2828773, -3306051, 2740189, 1145146, -1890859, 832687, 344134, -2071248, 246424,
- -1483911, 1046361, -2597382, 2547453, -1457068, 313533, 609349, 1323387, 1165010, -1757179,
- 2572686, 393526, 185757, -777389, 1737851, 497142, 368830, 586800, -310848, -1546188,
- -723702, -653909, 904091, -256624, -34360, -1014149, -282931, 62814, -636192, -375273,
- 21475, 97711, -245350, -6442, -245350, 541166, -364535, 7516, -35970, -180389,
- -360777, -362388, -259309, -301185, 317291, 214748, -2684, 214748, -192200, 537408,
- -46708, 46171, 37581, 206695, -196495, -72478,
- },
- {
- -4894115, 175148768, 3061775, 3670587, -12068321, -531502, 1335735, -249108, 7013682, 3117610,
- 2210298, 2537252, 197569, 2286533, 2978560, 4155381, -3777424, 832150, -89657, -5787469,
- 4853313, -1439888, 2167885, -107374, 2467459, -1643362, 2935073, -5008469, 426276, 513249,
- 3699578, 1121523, -2117956, 4892505, 1138166, 3038689, -3311420, 815507, 2792266, -3287798,
- 1041530, 1153736, -1131724, 2229625, 1891933, 1297617, -2491618, 810675, 695785, 186294,
- -2342368, -369904, 29528, -3315178, -627602, -1386201, -1148367, 163209, 104690, 1686848,
- -715649, 1232119, 237297, -407485, -743029, -366683, 19327, 141734, 530428, -69793,
- 84826, -118648, 164819, -107911, 201863, 229781, -315143, 169114, -241055, -355945,
- 162135, -261993, 24696, -414464, 201863, -386547, -58519, -9664, -214212, 12885,
- 404264, -38118, -25770, 6442, -30065, 144955,
- },
- {
- -242666, -32731408, 7166690, -952946, -1351304, -1174137, -1301375, -130997, 1494112, -699543,
- 2703682, -2508261, -1399086, -8818105, -10660109, -10005663, -1038308, -2540473, -2679523, 236223,
- 4255239, -7432978, -4526359, 9804873, 2614025, 10907069, -7055021, 4437775, 1136019, 3812857,
- 2065342, 3331821, -785442, -2825552, -1309428, 2495376, -1555315, 1080721, 1340030, -2299418,
- -1519882, -1731409, 1266479, 1550483, 1255741, 102542, -1284195, 1488743, 89121, -88584,
- 498216, 1353452, -920197, -416612, -278636, 655519, -275415, -700617, -355409, 3032784,
- -709207, 1475321, -185220, 471373, -378494, -204011, -1449552, 1370632, -159988, 590558,
- -520228, -51003, 145492, 338766, 136365, -319975, 181999, -161598, 284542, -91268,
- -539018, 622233, -67646, 91805, 170725, -443455, 204548, 181462, -11274, 232465,
- -80531, 178778, -359167, -134755, 340376, -269509,
- },
- {
- 21289080, 38065760, -4314295, -17584670, -15117748, 598074, -2598992, 5572183, 1451162, 299574,
- -98247, -573915, 980863, 11597485, -6549289, -1665374, -4481799, 499290, -486405, -4410395,
- 4282620, 1569274, -1816771, -2764885, -900333, -5718749, 1788317, -4066797, 1139240, 3274913,
- 3775276, -1190243, 4067871, 1163399, 1574106, -4321274, -2303176, -1128503, -1891933, 2230699,
- -205085, 3293703, 416612, -2800856, -3272765, 2024540, -258772, -1570347, 1460289, -1759326,
- -1656247, -1141388, 1607392, -353261, -580894, 158914, -1642288, 605054, -314069, 1005022,
- -591632, -95026, 528818, -467078, 1214402, 955093, 368293, -766115, 129386, -588947,
- 1189706, -524523, 656056, 366683, 432718, 114354, 93416, -493921, 139050, 795643,
- 282394, 114890, -2147, -200790, 42413, -10201, 125091, -489089, 442919, 368830,
- -12348, -33823, -16106, 71404, -268435, 10737,
- },
- {
- 672699, -37949796, -3228742, 229781, 21475, -1939715, -34897, 2882460, -1648194, 1449015,
- -2736968, -3117610, -2243584, -4252018, 22085258, -9454834, -1562831, -2636036, -5626407, -8775692,
- -7827578, -8613020, -399432, -525060, -4206384, 1150514, 1070521, 3326989, 6201933, 2008434,
- 903554, -297963, 4995047, -864899, 1246077, -516470, -899796, -2928094, 1034013, -1818919,
- 1401770, -1637456, 639413, 750009, 714575, -1884954, 1217086, 16643, -352724, 404264,
- -371515, -621697, -174483, 383863, -519154, -668941, -724776, -1213865, -515396, 913754,
- 990527, -387084, 224949, 403727, 265214, 1546188, 258772, 255551, -1619740, -587337,
- -626528, 637266, -332323, -182536, -133681, -112743, 212601, 205085, -566399, -430570,
- 252329, -219580, -281857, 124017, -440771, -4832, -67109, -105764, 47782, 8590,
- -253403, -99321, 142808, -52613, 281857, -151398,
- },
- },
- {
- {
- 9375377, -7703024, 16856672, -14875619, -5719823, -686121, 255014, 1161789, 2615635, 4749160,
- -6598681, -1774358, -4641786, -159988, -8370355, -2561411, 3111704, 279710, -1805497, -2431488,
- 970126, 5516349, -1290101, -76773, 1330366, -676994, 552977, 226023, 4924717, -188979,
- -49392, -2841121, 1923072, -224412, 516470, 2719251, -2309082, 3040837, -1146219, -2869038,
- 263604, -163209, -1061931, 867047, 682363, -1246077, 536334, -404801, 217433, 2093797,
- 552977, -1554241, -632434, 67109, -1415729, -1387274, -1461900, -542777, 1255741, 277562,
- 410706, -712965, -367757, 599685, 1033477, -439160, -592169, 301185, -994285, 63351,
- -46171, 95026, 326954, 607738, -216896, 120796, 272194, -86436, -299037, 214748,
- 546535, -265214, 58519, 100395, -13959, 12348, 156766, 102542, 211527, 81068,
- 104153, 144955, -80531, -138513, -190589, 21475,
- },
- {
- -2068564, 25906706, -1523103, -2641942, 6611029, -146566, 969589, 1722819, -266825, -6360310,
- 4524748, -507880, -2398202, -1669669, -3029563, -1884417, -7660611, 2985539, -6250788, 6257768,
- -3623342, -957778, -275415, 2283312, -5822365, 589484, -798327, 6213744, 179315, -44023,
- -535797, 1923072, -415538, 2008971, -3077344, 865436, 3527242, -1170916, -1025960, 1848983,
- -137439, 957778, 713501, 1261110, -2287070, -2895882, 1372242, -1872606, 619549, -667867,
- 685584, 1256278, 2512019, -569083, -691490, -545998, -260382, 324270, 310311, -285078,
- 106300, -913217, 1350767, -407485, -4832, 241592, 264141, -187905, -459562, 403727,
- -1262184, -818728, 41339, 51540, -540629, 199179, -652298, -27380, 154082, -290984,
- -351114, 30602, 235686, -349503, 239981, 157303, -180926, -463320, 13959, 16643,
- 86436, -5906, -120259, 463320, -41339, -69256,
- },
- {
- -1524713, 32131724, -19266686, -13800267, 22395570, 2877628, 2496450, 1633698, 310311, -2213519,
- 3179887, -2803003, 3905199, -5662378, -3330747, 8582955, -2453500, 4308389, -4951024, -549219,
- 2363843, 14496, -1751810, -52076, -1431835, 676994, 299574, -3269544, -1312113, 1169305,
- 65498, -2908230, 2456185, -2336999, -476741, -1454920, 1726577, -1229971, 177167, 1861332,
- 2152852, 1186485, -495532, 1610613, 1359357, 1815161, 1638530, 884763, 124554, -614717,
- 498753, -403727, -142271, 1417876, -406411, -390842, -1237488, -30602, -790811, 133681,
- 297427, 1598802, -16643, 1548336, -241055, -1707250, 165893, 493921, -1296543, 556735,
- -11811, 752693, 121333, 77309, 51003, 437013, -374199, 467078, 265214, -24696,
- -161061, -99321, -167504, -235686, -304406, 262530, -122943, 111669, -127238, -148713,
- 242129, -127238, 204548, 37044, -108985, -244276,
- },
- {
- -21989158, 18165564, 11307575, 11535745, -6531572, -744640, 533113, 650151, 3168612, 798864,
- -427349, -6203544, 4311611, 5879274, 363998, 881542, -873489, -6237903, 1475321, -125091,
- 117575, -1285806, 2961917, 104153, -2523830, 942208, -159988, -3616363, 1261110, -2170032,
- 5556614, -197569, 11811, 1063541, 865436, 3431142, 3122441, -1122597, 1431298, 932545,
- -1414118, -1049046, -2198487, -799401, 687732, 1522029, -1458141, -500901, 1612223, -192737,
- 312996, -1869385, -30065, 977642, 424128, 498753, -251256, 74088, -932545, 270583,
- -853088, 346282, -629750, 921807, 139586, 756988, -126702, 202937, 159451, 331249,
- 87510, 246424, 20401, 518617, -216896, 274878, -356482, -476205, 282394, 242129,
- 110595, 199179, 61203, -214748, -149787, -6979, -166430, -295816, -222801, 241592,
- -132607, -68719, -415538, 50466, -90731, -155693,
- },
- {
- 89657, -32839320, 898185, 331786, 574989, -625992, 146029, -1479616, 202937, -2692408,
- 1890323, 2869575, -5768141, 4179003, 4295, 1219771, -11086384, -945430, -10419054, 919660,
- -9620190, -5420786, -1247151, 4929012, -4663798, 8167417, -4290136, 3306051, -4555887, 352187,
- -4051228, -8378408, -1954210, -1885491, -2567854, 0, -4084514, -1147830, 540092, -379568,
- -651224, 1266479, -365609, -166430, -2089502, -1420024, 577136, -825171, -467615, -83752,
- 1020592, 11811, -602906, -1149441, 460098, -970663, 880468, 632434, -864362, -580357,
- 324807, -705985, -133144, -403727, 1278827, -496606, 57982, -883690, -908386, 324807,
- -90194, 940598, -336081, 311385, -155156, 11811, -234613, -128849, 287763, 368293,
- -249645, -60130, -327491, 290984, 135291, -214212, 248571, -74088, -278099, 180389,
- 285615, 610422, -100395, 215822, 169114, 420370,
- },
- {
- -24588150, -30686468, -15333033, 33062122, 4126390, -2505577, -2434173, -7467338, -1217086, -1536525,
- 3199751, -1762010, -4032974, -3626563, -2725694, 3496640, 2600066, 1550483, -812286, -337692,
- 5477694, -810138, 1186485, -1636383, -2653753, -1033477, 1006096, -1811403, -782221, 1901597,
- 3424163, 139586, -542777, -2215666, 1197222, 1567663, -1771674, -602369, 1421097, -831613,
- -2267743, -103616, 1021129, 82678, 601295, -1189169, 838056, 1923609, 1545651, 275415,
- -1654099, -542240, -1664837, 568009, 914291, -394600, -204011, 166430, -241592, 532039,
- -364535, -668404, 270583, 763967, 460635, -295816, 5906, 290447, 555125, 120796,
- 364535, -348429, -561567, 451508, -389768, 224412, 326954, 249645, -78383, -272730,
- 88047, -480499, -107374, 381715, 96637, -11274, 133681, 6979, -49392, 314606,
- -191663, -47245, -96100, 83215, 214748, 30602,
- },
- {
- 333397, 11041287, -38655, -1515587, -935229, -472983, 219580, 203474, -1713155, 212064,
- -2196876, -1257889, 432718, -3504693, 2625299, -2577517, -1343788, 1663226, -1735704, -7738994,
- 2887829, 1029182, 9149891, 5737003, -9614821, -4866198, -6813429, 1283658, 1621350, 18254,
- 3433826, -2793339, 845572, -1625645, -947577, 5030481, -2520609, -1408212, -3046743, 253403,
- 882616, -2730526, -993748, 1791538, 535797, 1917703, 147640, -1094680, -433255, -431644,
- 174483, 17180, 339839, 661962, 563178, 45634, 1218697, 45634, 496069, 997506,
- -405338, 82678, -209917, 488553, -758062, -124554, 486942, 891743, 279173, -593779,
- -1132798, -258772, 556735, 92879, 185757, 255551, 42950, 301185, -324270, 607201,
- -404801, -359704, 1611, 132607, 86973, 129923, 146566, 67109, 37581, -299574,
- -5369, 96100, 201327, 68183, -250182, -78383,
- },
- {
- 22140556, 14825690, 13077102, -33357938, -1233729, -2556043, -212601, -760746, -486942, -409633,
- -1973538, -1476395, 5114769, -1133871, -4269198, 2320893, -3229816, -748935, -1918240, 1043140,
- -668404, 2293513, -5038534, 696322, -6657736, 2077154, 958315, -2203318, 1977296, 216359,
- -1477469, -2161979, -230854, -1103807, -482647, -1766305, -2645163, 229781, -2747705, -3065533,
- -974958, 1150514, 637266, -2244121, 589484, -1789928, 436476, -4735739, 832150, 995896,
- 506806, -1655710, -1265405, -15569, 956167, 961536, 271120, -1733556, -281857, -379031,
- -571231, 615791, 1007170, 241055, -251256, -306016, 167504, -99321, -531502, 1341640,
- 267362, 38655, 321586, 92342, -170188, -576599, 338229, 556735, -164283, -104153,
- -184147, -42950, -128312, 24159, 85899, -23085, 635655, 130460, -463856, 10201,
- -198105, -61740, 118112, 105227, -2684, 10737,
- },
- {
- 137976, 5055714, 2508798, 1202591, -668404, 569620, -1245004, 1267015, 944893, -1004486,
- -3265249, 4456566, -2154463, 5396090, -4009352, 3016678, -4246112, -7683160, -2826625, -4261682,
- -1643362, 2605972, -10161356, -5275831, -1242856, 52613, -4417911, -657130, 37581, -4587025,
- -2850248, -415538, -1278827, 1203128, -1073205, 379568, 2188823, 3137474, -1229971, -1224066,
- -31675, 4516158, 1383516, -1416802, -211527, 1418950, 1243393, -1776506, 429497, 200253,
- 409633, 140123, 40802, 663572, 255551, 752156, -359167, 770410, 774705, 557272,
- -287763, -138513, 518080, -187905, -887985, -340913, 16643, -541703, -653909, -670015,
- 354872, -780610, 1168768, 765041, 399432, 204548, -722628, -272194, 551903, 366146,
- 162135, -74088, -457951, -19864, -76773, -44023, 130997, 96637, -339302, 379031,
- 34897, -330712, -187368, -215285, 369367, 234076,
- },
- {
- -10801843, -112000936, 16863652, -4826470, 2937758, 2287607, -26201448, 1947231, -3799972, 4235912,
- -4310000, 1815697, -162135, 725850, -604517, -1921461, -790274, -3505230, 2290828, -5895380,
- -4190814, -1665911, 440234, -2286533, -956167, 175557, 4331475, -2098092, 3207267, -2001455,
- 4189741, -1719598, 2547989, 2483565, 1511829, -248571, 975494, 55835, 1643899, -273267,
- 370441, 1897302, 2504503, -1199370, -496606, 3140695, -1378148, 1082332, -1446330, -202937,
- -860067, -1511829, 2317135, 2363843, -2120640, 491774, 1444183, 1327682, 617402, 285615,
- -1396401, -820876, 1372242, -1897839, -367757, -161598, 81068, -406411, 262530, 1093069,
- 253403, 16643, 186294, 54224, 82678, -664646, 246424, -9664, 2147, -472446,
- -542240, -294205, -459025, -78920, -228707, -210453, -93416, -181999, -6442, 398895,
- 178241, -54761, 6442, 278099, 173946, 144955,
- },
- {
- -865436, -1763621, 14794015, -1753420, 2761664, 1395864, -1047972, -4207458, 3653944, -2103460,
- 3583077, -2616172, 3155727, -2064806, -1585380, -5811628, -9473624, 1351841, 6634651, 10201621,
- 4537096, -4706211, 2624762, 587874, 4897874, -5577015, 3925063, -2944200, -3870303, -4206384,
- 457414, -2816425, -1670742, 2471754, -649077, 970126, -1570884, 299037, -2100776, 95563,
- -3009698, -534187, 945430, 341450, -201327, -158377, -18254, 704375, 1378685, -830539,
- 2171106, 352724, 286152, -127775, 785442, -452582, 1222992, 1091995, -763430, -955630,
- -14496, -954020, 854699, -1165010, 152471, -576599, -447213, 334471, -409096, -6979,
- -180926, -424128, -115964, 126702, -379568, -66572, -13422, -147103, 51003, 102542,
- -812823, -246961, -133144, -282931, 194347, 156229, -18254, -127775, -113280, 169114,
- 170188, 328565, -103079, -25233, 196495, -105764,
- },
- {
- 34209416, 127855272, -10086731, 3004867, -9673877, 1051730, -2407329, 971200, 5604933, 7978439,
- 1350767, 412317, -952946, -2846490, 10204305, 558883, 2120640, -637803, -2425046, 4482335,
- -3934190, 602906, 1225676, 3139621, 1082869, 896038, -875100, -3371549, 119185, 889595,
- 3759707, 627602, -830002, 763967, 5060545, 2908767, -4058744, -235149, -506806, -438624,
- -90731, 2078227, 975494, 2434173, 2978560, -1273458, 125628, -883690, 1234803, -1662689,
- -1286880, -2194728, 1826435, -3008088, -659278, -1714229, 340913, -741956, -318901, 768262,
- 1337882, 714038, 570694, -180926, -215822, -1293322, 190052, -65498, 584652, 373662,
- -271120, 129386, 268972, -484794, 81068, 657667, -178241, -183610, -75162, -563178,
- -4295, 116501, -377420, -6442, 177167, -396211, 107374, -20938, -5369, 10737,
- 110059, 409096, -1611, -119185, -111132, 355945,
- },
- {
- 680752, -25341918, 1859721, -8660802, 1239098, -328028, -32212, -4860293, 2334852, 2028298,
- -1407676, -1183264, 1483911, -11480448, -9680856, -1160178, -9487583, -2658048, 226560, -1173063,
- -3111167, -3064459, -737661, 9604084, 6669548, 1877438, -555125, 4609574, 2174327, 3108483,
- 6204617, -171799, 1839857, -2404108, -923418, -870805, 446677, 818728, 1558536, -2393371,
- 242129, -2386391, 955630, 3411815, 545461, 846645, -1354525, -507343, 2313914, -72478,
- 1400159, 299037, 501974, -1837172, 60666, 590558, 833761, -711354, 151934, 1563905,
- -14496, 1112397, 1282585, -1104344, -274341, -145492, -827318, 628676, 258772, -456877,
- 439697, -516470, 467615, 414464, 510027, -34897, -244276, 562104, -237297, -135828,
- -212064, 244813, -249108, -370978, 523449, -240518, 201327, -43487, 18254, 168577,
- 24696, 24696, -31139, -118648, -228170, 31675,
- },
- {
- -6262063, 69701952, 3873524, -21772800, -4933844, -1402844, -6950331, 4643397, 1662152, 5085242,
- -5530844, -46171, 2926483, -4408784, 17994302, -3002182, -5904507, -2310693, -3311420, 1669132,
- 2680060, -608812, 1648194, -2024540, -3637301, -765041, -2888903, -1478006, 138513, 3009698,
- -164283, 1882269, 4010426, 1939178, 538482, -645319, -2645700, -3690988, -2132451, 3054796,
- -2280628, 3659312, 1685238, -1865626, -2330557, 395674, -1731946, -137439, 114890, -780073,
- -2275796, -522375, 1222992, -1036698, -608812, 83752, -675921, -363462, -190589, 55835,
- 435402, -911070, 549219, -45097, 861141, 248034, 351650, -238908, 172872, -395674,
- 348429, 112743, 964757, -222801, 372588, -140123, 215285, -676457, 261456, 477278,
- 507880, -121333, -236760, 44560, -284542, -136365, -99321, 248034, 363462, 206695,
- -85899, -397821, 204011, -144955, -261456, 38118,
- },
- {
- -668404, -39142184, -93416, 2997350, -2992519, -1340030, 2244657, -1296543, 2519535, -1051730,
- -4541391, -1984812, -3428458, 13954349, -12496744, -3573950, 639950, -2145873, -7113540, -3900904,
- -6962679, -11757473, 905701, 1199370, -4511863, 243739, 335007, 5844914, 4541928, -2238215,
- 2321430, 666794, 3082176, 557272, 1602023, -583579, -3403225, -578747, 919123, -744640,
- -2617783, 2303713, 694174, 577673, -1650341, -1328756, 2154463, -897648, 633508, 133681,
- -38118, 149250, -903554, 965294, -1080184, -1101122, -122943, -1357210, -362388, 715649,
- 1689533, 353798, 549219, -170188, 353798, 1448478, 218506, -338229, -665183, -329102,
- -480499, -294742, 296890, -11274, 417686, -259309, 160524, 157303, -172872, -452582,
- 64425, -192200, -602906, -16643, -129386, -177167, 13422, -19864, -118648, -263604,
- -266288, 27917, 300111, 9127, 136365, 157840,
- },
- },
- {
- {
- -11457362, -89982248, -50322520, -3307125, 5466420, -202400, -659278, 650688, -275952, 5541582,
- -2870112, 3014530, -5375689, -3140695, -9424232, -1068373, 8347269, 3494493, 4612258, 7119445,
- 2115272, 3343095, -834834, -692564, 1211181, 1735704, -444529, -2883534, 492848, -2900177,
- -80531, -408022, 5795522, 674847, -1411971, 794032, -4493610, 2771865, -2511482, -5195300,
- -2951716, 700617, -906238, -1839857, -50466, -1648731, -996432, -2506650, -905164, 416612,
- -791348, -1807108, 1443646, 1927367, -483721, 263604, -118648, 194347, 744640, -157303,
- 1365263, 105764, -105764, 440771, 1443646, 316754, -394600, -90194, -413927, 695785,
- -115964, -684510, -638340, 753767, 402116, -54224, 126702, 204548, -147103, 352187,
- 400506, -315143, -234076, -25770, -227096, -230854, 194347, -10737, 373125, 252329,
- 52076, 31675, 49929, -41876, -49929, 271120,
- },
- {
- 1274532, 17466022, -12073153, -12280385, 1887101, 25233, 1374390, 236760, -3502009, -6259915,
- 5396090, -679679, -2915209, -641561, 801548, 6442988, -1450625, 2901787, -4469987, 2781528,
- -2581812, -5058935, -2627446, 1437740, -8278550, 782221, -2469606, 6609418, 1393717, -1196148,
- 1329829, 5088463, 495532, 3963181, -1277216, 2687039, 3384971, -2805151, -3462818, 1448478,
- 513249, 1037235, 774705, 91805, -1468879, -19864, 2332704, -1619740, 559956, -1085553,
- -13422, -678605, 1521492, -507343, 23085, -717796, -1035087, 20938, 557272, 539018,
- 869194, -872952, 628139, -1130113, -181999, -1144609, -1831804, -667331, -6979, 551366,
- -702764, -198642, 95026, 96100, -688805, 443992, 226023, 328565, -390842, -448287,
- -48318, -137976, -11274, -489089, -221728, -139586, -384400, -337155, -48855, 67109,
- 86436, 17180, -155156, 392990, 45634, 38655,
- },
- {
- 4035122, 68698536, -2807835, -45866492, 2555506, 3117610, 872415, 2020782, 5072357, -3652333,
- -12271258, -11909944, 2696166, -10669773, -4133369, 5922760, -8255464, 820339, -3022046, 671089,
- -3033858, -4341675, -2427730, -284005, 5278515, -1213328, -2827699, -3221762, -3148211, -1251983,
- 583042, -5007395, 1652489, 824097, 1035087, -2195265, 1070521, -471373, 271657, 2356863,
- 1040456, -3143916, -55298, 2875481, -14496, -1023813, -70867, 496069, 173409, 81068,
- 1966558, 593242, -950798, -943282, -1513439, 738198, -816581, -1068373, -2048163, -672699,
- -41339, 1569274, 512175, 1204738, -282394, -1247688, 198105, 983548, -865973, 437550,
- -147640, -332323, -810138, -282394, 117038, 389231, -919660, -133681, 331249, 139586,
- 131533, 226023, 78920, -19864, -352187, 158377, -84289, 221191, -96637, -231391,
- 124017, -413927, -30065, -130997, -118112, -133681,
- },
- {
- 30370250, 87747792, -2608119, 15194521, 7772280, -2020245, 903554, -2233920, -599148, 38655,
- 2149631, -5949604, -4736812, 543850, 2318746, 2511482, 3248606, -4550518, -616865, -1239635,
- -1071594, 727460, 4638028, 1239635, -2170569, 2125472, -2081985, -4017405, 2703682, -2032593,
- 2044404, -3248606, -2863133, 431644, -99858, 1012539, 1527935, -1302449, 418759, -572304,
- -673773, -552440, -1567126, 380105, -169651, 353261, -82678, 1576790, 789737, -1184874,
- 422517, -364535, 441308, 1480690, 11811, -424665, -183073, 772020, 71941, 911070,
- -646393, 625992, -1611, 33286, -416612, 1039919, 104690, -234076, -639413, -154619,
- -42413, 141197, -400506, 413391, 23622, 108448, -408022, 41339, 511101, -79994,
- -424128, -77309, 98247, -166967, 2147, 37044, -83215, -80531, -220654, 73551,
- -140660, 26844, -335007, 239444, 184684, -28991,
- },
- {
- -756988, -38426000, -4110821, -1714229, -498753, -1226750, 78383, -1580548, 1207423, 666794,
- 4022237, 5120138, -129923, 2962991, -2629594, 10431939, -8878234, -22157200, -13646185, 6704444,
- -10561861, -1384053, 75699, 4707284, -257698, 6330245, -3720516, 5810554, -2062658, 2739652,
- -1285806, -8800925, -4044249, -3121368, -3319473, 1975685, -1106491, 12885, 3028489, 1923609,
- 104153, -536334, -1102196, 1085553, -130460, 235149, 527744, -2699924, -1678259, 448824,
- 1644973, 488553, -548682, 99858, 987306, -999654, 401043, -420907, -972810, -594853,
- 923955, 236760, 179315, 29528, 829466, -398895, 607201, -163209, -396211, -9664,
- -389768, 205085, -589484, -91805, -555661, -180926, -89657, -90194, 463856, 184147,
- -503585, 315143, -244276, 76236, 151398, -376347, 519691, 228170, -85899, 199179,
- -130460, 431107, -178778, 83752, -70867, -48855,
- },
- {
- 33094334, 78980152, 8528194, 19462108, -9596568, -702764, 239444, -3903052, -5034239, -11853573,
- -3686156, -3477313, -2987687, 132607, -606127, 5776194, 3339874, 402116, -960462, -3045132,
- 998043, -317291, 919660, -3637837, -2829847, -2489471, -592706, 42413, -618475, -1189169,
- 380641, 921271, 3688840, 261456, 308701, 784368, -941135, -135291, 3013457, 1406065,
- -831613, 801011, 971200, -964757, -136365, -412317, 933619, 1007707, 1480153, 58519,
- -828392, -908922, -2108292, -1516124, 1546725, -102542, -48855, -647466, -1038308, 485331,
- 285078, -478352, 1114544, 1833414, 92342, -779000, 37581, 231391, 1262184, 455803,
- 465467, 693637, 270046, -93952, -17180, 199716, -301185, -13959, 139586, 334471,
- 442919, -297427, -253403, -60130, 43487, -121333, -200253, -285615, -266825, -69256,
- -108448, -41339, 22549, 226023, 89657, -48318,
- },
- {
- -487479, 8890582, 2421288, 1271847, -17717, -1229434, -155156, 1478543, 486942, 155156,
- -3503620, -657130, 1904818, -5176510, -1353989, -2457258, 7314866, 3360275, 2692408, -6060736,
- -1544041, -5486284, -6744710, 3246995, -2820720, 4034048, -5756867, -1848447, 1309965, 1858647,
- 1444183, -6858526, 818728, -1909113, -889595, 3535832, -5074504, -1362578, -2348810, -265214,
- 153008, -586263, 869194, 1400696, -1771674, 274878, -114890, -680215, -860604, 267362,
- 1497333, 745714, -147640, 570694, 1648731, 91805, 1769527, 151398, -948651, -239981,
- -256624, 767725, -489089, 18790, -798327, 292058, 159451, 95026, 418222, 190052,
- -486405, -293668, 533650, 700617, 212601, 34897, -286152, 194347, -30602, 938450,
- -723702, -549219, 380641, 458488, 173409, 206158, 304406, 18790, 96100, 136902,
- -81068, -222801, -62814, 87510, -206695, -124554,
- },
- {
- -19469086, -99778536, -31398358, -21603686, 7414724, -751082, 6367826, 6271726, 5450851, 2470680,
- -1014686, -3386045, 2764885, -4587562, -9627169, -21475, -5789616, 1243393, -6659884, -1384053,
- -3616899, -2697776, -7051800, -1001264, -7810398, 1136019, -137976, -3866544, 142808, 526670,
- 3060164, -427886, -2623688, -4857071, -3138547, -4631586, -6334540, -308164, -2558727, -2861522,
- -289373, -157303, 939524, -31675, 1588601, 1611, 1851131, -3173444, 1967095, 773094,
- -510564, -944356, -1461900, -870805, 44560, 1029718, 923955, -403190, 1481764, 702764,
- 69256, 548682, 536334, 550293, 372588, 556735, 336618, 453656, 387621, 1119376,
- -210990, 241055, -25233, -184684, 527744, 6442, 40265, 223875, -10201, 73014,
- -78383, -202937, -458488, -76236, 376347, -62814, -28991, 74625, -133681, 206695,
- 87510, -42950, -33823, 170188, -18790, -192200,
- },
- {
- -723702, -3084324, -1292248, 86973, -1674500, 1291711, -580357, -1162862, -1822677, 1673964,
- 1167694, 7584376, -3095061, -1491964, -7067906, 3449933, 11922829, 4072166, 2637110, 2552284,
- -95026, 3811247, -4955319, 753230, 2008434, 12839805, 4925254, -1576253, -3634616, -2767570,
- -3808026, -2165737, -445603, -3566434, -2288681, -634581, -1950452, -494458, -1126892, -861141,
- -1154809, 3462818, -793495, -1268089, -2684, 1085553, 1457068, -146566, 1113470, 1307818,
- 1706713, 1611, 379568, 1305133, -600759, 164283, -523986, -447213, -635118, 479963,
- 222265, -96100, 543850, 845572, -84826, -252866, -77309, 162672, 88047, -505196,
- 928250, 29528, 1117765, 463320, 35433, 140660, -226023, -27917, 541166, 176631,
- 259846, -191663, -341987, 89657, -171262, -94489, 188979, 258235, -482110, 130460,
- -111132, -279710, -346819, -219580, 279173, 118648,
- },
- {
- 9314710, -134149544, -13415867, 9664213, 11344619, -8732742, -25824028, 4995584, 5719823, 6718940,
- -5823439, 6706592, 7098507, 1764695, -1531693, -666794, -3732864, -2096481, 3955128, -1810329,
- -3420942, -1804960, 1853815, -4087198, -6698002, -324807, 4221416, -2234994, 3412889, -2747169,
- 4931696, -1447404, 492311, 1495722, 3403762, 4240207, 4994510, 1765768, 808528, -3323768,
- -97174, 3249680, 1517734, -636192, 1690607, 2852932, -2049236, -346282, -2178085, 1698660,
- 2159832, -2309619, 540092, 1206349, -2523293, -175557, 312459, 829466, 53687, 779537,
- -1226750, -1545651, 1263257, -1409286, -1348083, -1029182, 613107, -726386, -150324, 911070,
- 121333, 137439, 336618, 135291, 423054, 130460, 191663, 14496, 559956, 212601,
- 145492, -205085, -297963, 355409, 263067, 126165, 117575, -246961, 6979, 175557,
- -82678, 159988, 99321, 67646, 151398, 352187,
- },
- {
- 467078, -19673634, -10503343, -8313446, 5987185, -2104534, -5446019, -4232691, 2940442, -2997887,
- 2980171, -1416266, -515933, -2080912, 289373, -5065377, -3883724, -295279, -3049427, 5727339,
- 2276870, -6158446, 4631586, -4415227, -229781, -8771934, 1432909, -1057099, 1160715, -853088,
- 166430, -641024, -1576790, -1309428, -1654636, 2525978, -1810329, -469762, -2973728, 801548,
- -530965, 306553, 1295470, -776852, -467615, -356482, -867047, -1038845, 96637, -1293322,
- 668404, -171799, 23085, -11274, -84289, -1476932, 271120, 415538, -747861, -324270,
- 838592, -1000727, -309238, -1918240, -752156, -134218, 190052, 523986, -82141, 568546,
- 439697, -66572, 61203, 40802, -423054, -178778, 262530, -227633, -450972, 191126,
- -328565, 62277, 288837, -23085, 121333, -55298, 155156, -86973, -57445, 38655,
- -5906, 223338, -20938, -16643, 79994, -180389,
- },
- {
- -44754632, 23427436, -9914395, -4918275, -11890617, 4257923, 1794223, 488553, 45097, 9686225,
- 7372848, 752156, 3299072, 2030983, 12763569, 1392106, 8750459, 3440269, -5027259, 3121904,
- -4397510, 1180579, 674310, 3008088, 1729798, 6030671, -1785096, -1095754, 466004, -310311,
- 2286533, -2860985, 100395, -382252, 2873870, 2870649, -1036161, 1322313, -923418, 1714766,
- -906775, 2253784, 4633196, 4456029, 1091459, -506269, 2502355, -634045, 1192927, -852014,
- -797253, -1216013, 2408940, -1683090, 1093069, 310311, -64961, -955093, 479963, -130997,
- 1695975, 310311, 338229, 18790, 750009, -565325, 570694, -15569, 332860, 850404,
- 118112, 74088, 292058, -384936, -209380, 497679, 63888, -38655, 122943, -332323,
- 170188, 105764, -143881, 267362, 384400, -175020, 27917, -121333, 141197, 153545,
- 19327, 306553, 62277, -171262, -273804, 374199,
- },
- {
- -910533, -17472464, 3337190, -14734422, -2136209, -1879048, 3076807, -3770981, -2636036, -185757,
- -6701760, -3228205, 2362769, -4666482, -1238024, 5216775, -6852621, 1619740, 5054103, -4444755,
- -3682935, 4682588, 5953899, 4503273, 4310537, 3898220, 4460324, 2956548, 2378338, -1071058,
- 5111011, 603443, 2216740, -1880659, -1165010, 40265, -67109, -1567126, 1823214, 1342177,
- 697395, -3033858, 348966, 3895535, -925029, -1904281, -1920924, -1532230, 1704028, 1188632,
- 3592203, 215822, 78920, -2390149, -1135482, 57982, 1175210, -450972, 70330, 547608,
- -613643, 172336, 281320, -1194001, 469225, 220117, -13959, 494995, 203474, -492311,
- 491774, -323733, 1062468, 393526, 755377, 27380, -617402, 168041, -304406, -132070,
- -270583, -94489, -509491, -531502, 361851, -126702, 195958, -229781, -253940, -191663,
- -162135, -58519, 50466, 52613, -209917, -69793,
- },
- {
- -10340134, 66593468, 7887171, -5986111, 13765370, 4304094, -6426882, 5126044, 3957812, 5549635,
- -6374805, 1607392, 4056060, 1180042, 34241628, -1335198, -5602248, 521839, 487479, 4147865,
- 3368865, -4577362, 1768453, 2147, -5681705, -1245004, -990527, -1838783, -2269890, 519154,
- -4076461, 1055488, 3605088, 2967823, 1967095, 1279363, -16106, -2116882, -1269700, 2217814,
- -2521683, -172872, -178778, 1267552, -190589, -473520, -875636, 2174327, 497142, 268435,
- -454193, -300648, -1340030, -2601677, -277562, 537, -740882, 452045, 1056025, -3758,
- 527207, -539018, 335544, 289910, 1124208, 69256, -78383, -200790, 198642, -548145,
- 351650, 686658, 399432, -831076, -170725, -253940, 83215, -363998, 101469, -59056,
- -65498, -189515, 234613, 59056, -146029, 30602, -301185, 222265, 79457, 117575,
- -12348, -306016, 28991, -235686, -226023, -66572,
- },
- {
- 804233, -27578522, 5862631, 2668785, 615254, -822486, 1931125, -1147830, 1862942, -908386,
- -2296734, 3985193, -3088618, 1852205, -25380572, 4345433, 5291400, -1577864, -2435783, 1702418,
- 875100, -8303246, 2215666, 1709397, -3111704, 2690260, -1822677, 1577327, -523986, -9877888,
- 362388, 3136937, 1474248, -2675765, -432718, -1309428, -2446521, 257698, 594853, 513249,
- -1884417, 589484, -1670742, -195421, -2177012, -1016834, 1852205, -1995549, 894427, 1257352,
- 46708, 275415, -1571421, 199179, -1394791, -603443, 581431, -231391, 743029, -127775,
- 541166, 64425, 237297, -648540, 375810, 545998, -863825, -1071594, -159451, 521839,
- 584652, -465467, -349503, -447750, 235686, -123480, 125628, 430570, 367757, -216359,
- 302795, -81068, -326418, 227633, 328565, 94489, 506269, 334471, -203474, -187368,
- -135828, 14496, 41339, -110595, -100395, 144418,
- },
- },
- {
- {
- 10678362, -82407000, -70637176, 13256417, -10868415, -70867, 3263102, 1279900, -4611185, 4893042,
- -1235877, -4083440, 3999152, -4863514, -7488813, 5181878, 700080, 1792612, 8396661, 5357972,
- 1539746, 3725347, 897648, -1701881, 872415, 1435056, 860067, -1911261, -3454764, 437013,
- -2718714, 3403225, 4726075, 335007, -2908767, 3060164, -4036733, 3983582, -5940477, -1567126,
- -2886755, 415538, -1080184, -1822677, 1081258, -1877975, -2692408, -2143726, -490700, -1410897,
- -877247, -1474784, 1564979, 1187022, 1408212, 5369, -234076, 1221381, 556735, -86436,
- 779537, 763967, -179852, 124017, 259846, 885300, 597000, -968515, 182536, 376883,
- 143881, -697932, -760209, 150861, 832150, 155156, 93952, -292595, 235686, 322123,
- -82678, -293132, -89657, 267899, -113817, -216896, -107374, 73551, 228170, 299574,
- 240518, -125091, -41339, 304943, -217433, 309775,
- },
- {
- 607201, -14942191, 12894566, -7234336, -4172561, -452582, 270583, -776315, -4630512, -1126892,
- 3053185, -885837, -1666984, -3645354, -1805497, 6988449, 3428995, -1385664, 7041599, -4951561,
- 1874216, -12540231, -372052, 591632, -4119411, -1785096, 673773, -261456, 5635534, 1159104,
- -2349347, 5075041, 1658394, 2501282, 2554432, 1043140, 1198833, -1438277, -3350611, 2754148,
- 1300301, -1579474, 751082, -410169, 701153, 1482301, -323733, 450972, -216359, -2448131,
- 226023, -297963, -58519, -386547, 467078, -332323, 100395, -1169842, 1313186, -172336,
- 479963, 69256, -680215, -735513, -365609, -516470, -1683090, -1090922, 471373, -158914,
- -379031, 230318, 195421, 135291, -548682, 158914, 584116, -6442, -670015, 304406,
- -220654, 30602, -329639, 9664, -644782, -226560, -266288, -239981, 79457, 47782,
- 63888, -15032, -68719, 81068, 24159, 108448,
- },
- {
- -5484137, 91242288, -3514894, -31868658, -13865228, 2713346, 4460324, -898185, 1938104, 628676,
- -16474958, -4394826, -2646774, -9923522, -2942590, -2731599, 2179159, -9104257, -273804, -424128,
- 1497333, -7628399, 1701344, -2649995, 6013491, -139586, -2038499, -6250788, -383326, -2207613,
- -227096, -2263985, 1342714, -2301566, 1714229, 1514513, -2711735, 1110786, -1320703, 1697049,
- 3573413, -4762045, 3000035, -29528, 1137630, -2740726, 710817, 468688, 914291, -176094,
- 1342714, 722091, -424665, -1341104, -1693291, 545998, -108985, -1358820, -1175210, -655519,
- 95563, -507880, 1626719, 262530, 57982, -337692, -161061, 467615, 616328, -503585,
- 27380, -598074, -885837, 23085, 204548, -315143, -518617, -424665, 113280, 299037,
- 535797, -146566, 445066, 31675, -96100, -286689, -60666, 77846, 297963, -244276,
- -189515, -5369, -200253, -136902, -133144, -77846,
- },
- {
- -25880936, 150172992, 17743584, 10232223, 1393180, -2275259, 2236067, -4235375, 213675, -1581622,
- 4039417, -2678449, -10755135, 2916283, 9874667, -3321620, 1292248, -4446902, -3328063, 3293166,
- -3376381, 2165737, 1435056, 3876745, -5165772, 2127620, 612570, -3213173, 1355062, 617402,
- -898722, 1503775, -5157719, -287226, 1284195, -3470871, 721018, -230318, 1225139, -1759326,
- 632434, -724239, 1380295, -2413235, 819802, 643171, 449361, 899796, -1600949, 862752,
- -839666, 874026, -933619, 2401961, -687732, 897111, -387621, -756988, 1420560, 21475,
- -295279, -414464, 898722, -557809, -50466, 418222, 566936, -222265, -665183, -290984,
- 170188, -185220, 121870, -467078, 548145, 102542, -369367, 613643, -193810, 162135,
- -434865, -323196, 48318, 62814, -102005, -13422, 42950, -277562, 284542, -286689,
- -108448, -6442, -165893, 176631, 86436, 27380,
- },
- {
- 1340567, -34415572, -7325604, -1839857, -633508, 92879, -1353452, -2936684, 2356327, 223875,
- 2996277, 9156870, 789200, -2522757, -11902965, 12811887, -5652177, -19478750, -2701535, 10397042,
- -6567005, -4011500, 6652905, -1206349, 2858838, 3449396, 7029251, -3292629, 1081795, -1720671,
- 2913062, -4442607, -6128382, -1199907, -3011846, -944356, 4625680, -3534221, -424665, 4054986,
- 754841, -340913, -439160, -409096, 1253594, 1281511, -1452236, -603443, -1888712, 154082,
- -324270, 2036351, -508417, 486405, -475668, -122407, 96637, -905164, 31675, -1607928,
- 282931, 1540283, -468151, 617402, 473520, -290447, -288300, -64425, 558883, -903017,
- 453119, -380641, -237297, -279173, -481036, 42950, -89121, -299037, 580894, -127238,
- 43487, -360777, 179852, -93416, 219580, -477815, 484258, 315680, -102005, 315680,
- -217433, 180389, 40265, -167504, 18790, -280784,
- },
- {
- -22552336, 187826432, -13705241, 4410932, 1460826, 909996, -426276, -1532767, -3920232, -4791036,
- -13197898, -226023, -7643431, 1741609, 1634235, 2767570, 5537287, 1584843, -3103651, -385473,
- 724776, -3751654, -914828, -4581657, 715649, -3407520, -925029, 2365453, -800475, -1084479,
- 483184, -351650, 6227703, 2313377, -3127273, 206695, -2303713, 860067, 4635344, 483721,
- 919123, 378494, 161061, -466541, -1451162, 2237141, 287226, 492848, 2529736, -354335,
- -28454, -2269353, 416075, -2683281, 1573032, -348966, -1068373, -1388348, -1329292, 762894,
- 1690607, -724776, 1191853, 1159641, 504122, -794032, -1074, 382252, 1015223, 563178,
- 755914, 107911, 650151, 289910, -74625, -268435, -535260, -131533, 505732, 335007,
- 431644, 198105, -270583, 119185, -217433, -120259, -287763, -396748, -212064, -299037,
- 94489, -201863, 103616, 346819, 69793, -158914,
- },
- {
- -249645, 5381057, 2724620, 1905892, 457414, -722091, -732292, 1257352, -132070, -242666,
- -814970, -2501282, -1263257, 2079838, -8595840, 3339874, 9873593, 3382287, 7757785, -7641284,
- -660888, -5801964, -7888245, 1454383, -962073, 3148211, -3061775, -1883880, 2513630, 1039382,
- -1733556, -4748623, 3418794, -5926518, 1259499, 867583, -4258997, -1801739, -2185602, -587337,
- -822486, 1566589, 590558, 443992, -919123, -992137, -1356673, 251256, -1083942, 298500,
- 1214402, 915365, 1469416, -325344, 892279, 734976, 1233729, -804770, -660351, 265751,
- -876173, 975494, -245350, -81604, -596464, 1272384, -1009854, -108448, 192737, 558883,
- 554588, -373662, -157840, 444529, 451508, 98784, -586263, 178778, 172336, 326418,
- -135828, -519691, 198105, 255014, 323733, 277025, 213675, 119722, -2147, 356482,
- -30065, -310848, -67109, 205085, -274878, -156766,
- },
- {
- 6436546, -193885568, 15567109, -14799920, 53150, 294205, 6822019, 2194728, 9789304, 4210679,
- -1834488, 1068373, -1451162, -2752537, -8307004, -1276679, -3802120, 2313914, -7672959, -4602058,
- -1455457, -1962263, -5907191, -3803194, -3182571, -1792075, 1996623, -3266860, 545998, -1679332,
- 4414153, -1632088, -1643362, -4147328, -3293166, -5450851, -6134824, 471910, -1654099, -3389266,
- 1719061, -1353989, 1734630, -280247, 845572, 1313723, -380641, -515396, 1611687, -1320703,
- -377957, -365609, -1848447, 1198296, -1000191, 1518808, -17717, 503048, 1608465, -307090,
- 854699, 1010928, -19864, 25770, 136902, 1519345, -238371, 574452, 656593, 781147,
- -534187, 25233, 164283, -389231, 179852, 491237, -5369, 10737, -27917, 143345,
- -16106, -134218, -765041, 75162, 627602, -134218, -98784, 96100, -56371, -82141,
- 216896, -10737, -16106, -7516, -4832, -20938,
- },
- {
- -253403, -3357054, -3848828, -1131187, -1321776, 1738925, 457414, -332860, -4181151, -492311,
- 4256850, 4043175, 5416491, -7912941, -6552510, 8363375, 12545599, 1466195, 2698850, 548682,
- -2865280, 5906654, -4679904, 4226248, 2090039, 9247065, 10152766, -5874442, -6751152, -970663,
- -1158567, -4932233, 1397475, -3870303, -118112, -1014686, -3006477, -2350958, 321586, 1403917,
- -2694555, 234076, 475668, 427886, -1118839, 2288681, 309775, 1918777, -1504849, 2263985,
- 843961, 767189, 736050, 1270774, -2238752, 446677, 1118839, -2156611, 12885, 553514,
- 533113, -95563, 171262, 432718, -257161, 373662, 209380, 266288, 97711, -317828,
- 573915, 590558, 843961, 105227, -74625, 198105, -120259, 168041, 112206, 283468,
- 276489, -379568, -16106, 311385, -277562, -223875, 49392, 209917, -357019, -91268,
- -62814, -258235, -268972, -13959, -48855, 83215,
- },
- {
- -8198556, -175519744, 42853572, 16414291, 10428717, -34012920, -4621922, 2957085, 9659918, -2034741,
- -729071, 10153840, 7241315, -579821, 954557, -7614977, -1397475, 2209224, -5555004, 3566434,
- 336618, -2977486, -3084860, -1909113, -8178155, 792958, 2642479, 1981054, -1674500, 315680,
- 5763309, -1607392, 563178, 1904818, 852014, 6044093, 2656437, 3980361, -1763084, -490163,
- -1185948, 2372970, 1195612, -434865, 3653944, -1267015, 542240, -1781875, -1136019, 872415,
- 1613834, -525060, -1479079, 151398, 352187, -569620, -838056, 296890, 675384, -1064615,
- 48318, -758599, -980863, 139586, -1124745, -1436667, 317291, -235149, -779000, 874563,
- 278636, 391916, 248571, 212064, -528818, 376883, 193274, 64425, 723702, -62277,
- 737124, -97174, 60130, -284542, 74625, -11274, 323196, -67646, 12348, -20938,
- -17180, 220654, 93416, -191126, 140123, 253403,
- },
- {
- 25233, -31807990, -8301635, 1920924, 388158, -3040837, -5826123, -834297, 2117419, -1289027,
- -2429878, 505732, 1614371, -3863860, 3699041, -7153268, 8167417, -6503654, -2633352, -9227737,
- 10278930, 104690, -1560684, -5430986, 998043, -4583267, -3739306, 1443109, -1572495, 5173288,
- -1858647, -3117610, 475668, -3822521, 89657, 803159, 550293, -78920, -2742337, 350040,
- 2258616, 606127, 691490, -784905, -1001264, 158377, -1010391, -1214939, -1448478, 157303,
- -1202054, 1364726, -268435, -601295, -889058, 823023, -1392106, -125628, -590021, 122943,
- 295816, -399969, -710817, -649077, -1370632, -178241, 217433, 461172, -545461, 387621,
- 1002338, 83752, 323196, -229244, -216896, -249108, 4832, 340913, -651224, 134218,
- 46708, -9127, 164283, 113280, 82141, -14496, 190052, 181999, 13959, 31675,
- -172336, 35433, 35970, 19327, -4295, -219580,
- },
- {
- 34730180, -79009144, -5535676, -11675332, -6516539, -884226, 5929739, -1417339, -3059091, 8499740,
- 5860483, 294205, 4603668, 4017942, 16944720, 352187, 7781944, 106300, 1029718, -3273839,
- -3802120, 4287988, 1359894, -358630, 257698, 6681359, -2852932, 1741609, 1398012, -1744294,
- -163746, -2145873, 92879, 457414, 987843, 2830384, 3066070, 1276679, -1525787, 2467459,
- -1259499, 2316598, 2696166, 3570192, 1482301, 577673, 1963874, -397284, 592706, -1062468,
- -388158, 594316, 18254, -628676, 937914, 1823751, -1445793, -156229, 233539, -402653,
- 492848, 485868, 102542, -80531, 1288490, 207232, 337692, -184684, 529892, 698469,
- 260919, 361314, -496606, -431644, 681289, 434329, -193274, -275415, 46708, -203474,
- 260382, 312459, 124017, -66035, 32749, 177704, -37581, 35433, -151398, 293668,
- 118112, 1074, -70867, 74625, -47245, 115427,
- },
- {
- 1159641, 667867, -16474421, -7212861, -6463926, 1184337, 92879, -2553358, -4346507, 1154273,
- -5539434, -4479651, -11860552, 3446175, 9896142, -1093606, -2202781, 1993402, 5373541, -928787,
- -4057670, 14152991, 14865419, -15859704, 6089190, 1071594, 7822209, -442382, 4493073, -1578937,
- -618475, 2965138, -1892470, 696322, 870268, -2648384, 1198833, -136902, -143881, 607738,
- 1261647, -599148, -1090385, 1258425, 26307, -613107, -1840930, -2521683, 1195075, 2165737,
- 2876554, 699543, -1235877, -871878, -1962263, -1206349, -336081, 689879, 467078, -507880,
- 1035087, -610422, -646393, -308701, 475668, 1074, -73551, 394600, 324270, -588947,
- 943282, -200790, 599148, 176094, 446140, -130997, -176631, 45097, 164819, -557272,
- -73551, -547071, -347892, -2684, 184684, 33286, 15032, -90194, -368293, -382252,
- -55835, 130460, -72478, 93416, -29528, -245887,
- },
- {
- 20453708, 33825016, -1324997, -2171106, 12276090, 1389959, -1304060, -1074279, 13384729, -958315,
- -299037, -2612414, 7853885, 358093, 35216584, -6354941, -848256, 1446867, 4910758, -1027571,
- 2466922, -4048544, -404801, 2488397, -5109938, -3187403, 415001, -5783711, 822486, -541703,
- -2901251, 408022, 2408403, 1971927, 2594160, 349503, 102005, -638340, -247497, 323733,
- -433792, -4048007, 1196685, 2057289, -212601, -939524, -1093069, 3188476, 211527, -344134,
- 1239635, -431107, -3158949, -1488743, -387621, -138513, 36507, 440234, 826781, -306016,
- 603443, 636729, -68183, 294205, 740882, 146566, 133144, -133144, -185220, -106300,
- -319438, 1305133, -475668, 274341, -645319, -15032, -214748, 339839, -53687, 156229,
- -63351, -214212, 322659, -68183, 48318, -76773, -169651, 162672, -18254, 140660,
- -85899, -166967, -119722, 58519, -143881, -234613,
- },
- {
- -343597, -13043279, -3202972, 774168, 2907156, 545998, 886374, -2157147, -2605435, 2184528,
- -1877975, 4594542, -1111323, -19004694, 9286793, 5093831, 6998113, -2578054, 1885491, 2197413,
- 1548336, -4642323, -6527277, 3940096, -5362804, 7090991, -2902324, -5412733, 66035, -3336116,
- -2440078, 3758097, 1829119, -4046933, 536334, -2714956, 209380, -1742683, -1850057, 278636,
- 610959, -2587181, -1614908, -85362, -97711, -1830193, 1590212, -4832, -612033, 1169305,
- 563178, 374199, -1280437, -489089, -1515050, -171262, -7516, -742493, 1335735, 199716,
- -338229, -1226750, 403190, -201327, 384936, -186294, -763967, -650151, -257698, -355409,
- 1015760, -30602, -1237488, -257698, -152471, 79994, -5906, 462246, 288300, 70330,
- 444529, -45634, -40802, 10201, 173946, 417686, 472983, 386547, -79994, -179852,
- -3758, 23622, -113280, 129923, -311922, 27380,
- },
- },
- {
- {
- -10850161, 43330852, 71965936, 23055384, -3146601, 2725157, 4556424, 5232344, -4334159, 144955,
- -3103651, -6871948, 5566278, -4351339, -1681480, 9705015, -3206193, 4517769, 6449431, -781147,
- -4753992, -672699, -1150514, -3322694, 3851512, 1075352, 1576790, 1643899, -1894081, 3476239,
- -3278671, 2684892, 5780489, 2914135, 1797444, 4130685, -2447058, 8837432, -1852205, 2073932,
- 120796, -469762, -1428077, 178241, 2620467, -84826, -979789, 372588, -250182, -1283122,
- 87510, -1213328, -206158, -130460, 2130304, 562104, 226023, 1166084, 653909, -102542,
- -8053, 35970, -370441, -698469, -1204738, 464930, 501974, -517007, -9664, -479426,
- 335544, 85362, -200790, 96100, 780610, 27917, 104153, -258772, 184684, 175557,
- -106837, -71941, 263604, 498753, 18790, 259846, 228707, -3221, -69793, 107911,
- 59593, 77846, 104153, 190052, -185757, 202400,
- },
- {
- -1197222, -58245664, -12547747, 4491999, 144418, 497142, 654983, 796180, 1694902, 2399276,
- 527744, -341987, -1701344, -5792301, -5104032, -3451543, -415001, 482647, 3277597, -5071283,
- 4931160, -16137266, 461709, 4516695, 5785321, 4744865, -5651640, -10816875, -807454, -828929,
- -3169149, 2971044, 1212255, -273804, 1728188, 3347390, 4599910, 1910187, -216359, 2254858,
- -773631, -596464, 3143916, -651224, -853625, 1534914, 324807, -180926, -905164, -1242856,
- 453656, -280247, 48855, -629750, 690953, -526134, 932008, -773631, -150324, -1163399,
- -176094, -192200, -393526, 88584, 64961, 607738, 276489, 92342, 332323, -51003,
- 68183, 5369, 126165, 366146, -32749, 230854, -34897, -133681, -93952, 565862,
- 16106, 216896, -186294, 317291, -202937, -55298, 12885, 235149, 432718, -11274,
- 196495, 75699, -159451, -121870, -67109, 62277,
- },
- {
- 5260261, 77239616, -17600776, -2052994, 1856500, -103079, 4591320, -1382443, -715112, 5131949,
- -12995497, -1889249, 5007395, -57982, -3777424, -9599789, 2642479, -7370701, -713501, -2887829,
- 756988, -7189239, 5989332, 1826435, 529355, 973884, 7643968, -999117, 1151588, -1982127,
- 2279554, -853625, 3329674, 228707, 1122597, 1239098, -2097555, -1050120, -4322348, 882079,
- 4560182, -2126009, 3858491, -1485522, 2069101, -221728, 1668595, 561030, 1845762, -233539,
- -303332, 1221918, 804770, -268435, -842887, -128849, -399969, -294205, 809601, -18254,
- -364535, -847719, 1330903, -545998, 431644, -177704, -588411, 67109, 252866, -753767,
- 217433, 388695, -76236, -311385, -268435, -562641, -64425, 62277, 49392, -23622,
- 274341, -122943, 192200, -72478, 128312, -488016, -198642, 134755, 611496, 59593,
- -106837, 153545, -62814, -180389, -205622, 94489,
- },
- {
- 11020886, 172255568, -13164612, 4463545, 2902324, -476205, 3601330, -3919695, -1771137, -4053376,
- 3181497, 40265, -2314987, 2772402, 4520453, -2731062, 977105, -6947110, -6085432, 1840930,
- -3660386, 1362578, -3772055, -133681, -4097936, 1477469, 1109175, -2392297, 2185602, 2185065,
- 1260573, 4387846, -1682554, 193274, -232465, -4695473, 1726040, -489626, 1441498, -1037772,
- 910533, -358630, 2388539, -1049046, 1897302, 775242, -146029, 136365, -1490891, 1464584,
- -712965, -330712, -2199023, 1599875, -1250372, 704912, 279173, -2046552, 513785, -246961,
- -954557, -409096, 841277, -150324, 211527, 2147, 369367, -214748, -519154, -440234,
- -268972, -816044, 215285, -481036, 229781, 3758, -30065, 546535, -86436, 641024,
- -26307, -1611, 169651, 236760, -5906, 122407, 89121, -259309, 441845, -162672,
- -119185, -49392, 49929, 88584, -91805, -7516,
- },
- {
- -1598265, -15299210, 11188927, -1220845, -377420, 185757, -370978, -2290291, 1059246, -1642825,
- -1023813, 3769371, -275952, 1025423, -27054536, 3308199, 16851842, 29704530, 17030082, 5013301,
- -4728759, -5870147, 7335268, -1094680, 352724, -2152316, 5857262, -4935991, 3678640, -2672007,
- 2481954, 2072859, 1612223, 4882841, 1351304, 1178432, 3988414, -5793374, -2573222, 3297998,
- -162672, 370441, 777926, 390305, 1993939, 245887, -1401233, 1700807, -804233, 2040646,
- -800475, -1267015, -1988570, 18790, -1090922, -222265, -585726, -1101659, 1343251, 167504,
- -917512, 71404, -1078574, -663572, 163746, -33823, -620623, 22549, 999654, -534187,
- 324807, -388695, -121333, 267899, -8053, 88047, -216359, -118112, 638876, -149250,
- 64961, -564788, 491774, 122943, 73551, -460635, 188979, -70330, -90194, 232465,
- -108985, 92879, -3758, -202400, -89121, -108448,
- },
- {
- -2043331, 232085536, 2161979, -1461363, -5226439, 1054415, 4224101, 2700461, 378494, 3911105,
- -11658152, -343597, -4025458, 3134253, -254477, 1577327, 483721, -1064078, 37044, 1412507,
- 5517959, 345745, -581968, -5284421, 112743, -1181116, 1252520, 3390877, 1273995, 732292,
- 743029, -2560874, 3459059, 1841467, -3120294, 819802, 23085, 1619203, 2138357, -390842,
- 2373506, -288837, -2849174, -59056, -1014149, 130997, 477815, 1025423, 2805688, 1730872,
- 1512365, -2114735, 1049583, -1160715, -149250, -1192927, -426812, -486942, -231928, 450435,
- 1144609, -753230, 415538, -544387, -274878, 10737, 596464, -382252, -133144, -93416,
- 152471, -619549, 134218, 484794, -39728, -16643, -475668, 37581, 810138, -349503,
- -445066, 233002, 18254, 523449, 38655, 170725, -164283, -14496, 217970, -112743,
- 197569, -117038, -158377, -42413, 39192, -9664,
- },
- {
- 632971, 2719788, -2438468, 636192, 236760, -270583, -250182, 754304, -1686848, 767725,
- 3245385, 212064, -2077154, 1946694, -5646809, 4333085, 3063386, -1737314, 3962644, -4715337,
- 8384313, -2027761, -15794742, -3623879, 1567663, 465467, 5278515, 2894808, 2009508, 2161442,
- 1866700, 2139968, 1967095, -4933307, 4808753, 577673, -3534758, -2013266, -1993402, 763430,
- -1425929, 899796, 92879, -610422, -65498, -783295, -2646237, -783832, -1762010, -152471,
- 133681, -427886, 1676648, -982474, -368830, -120259, 683974, -1364726, -50466, 1031866,
- -892816, 1183800, -110595, 103616, -441308, 1061394, -289373, 885837, -72478, -194347,
- 744103, 214748, -381715, -141197, 321049, 411780, -278636, 270583, 64425, -143345,
- 153545, 5906, -33286, -275952, -74625, 57982, 57982, 134218, -41876, 56908,
- -42413, -105227, -2684, 27917, -321586, -149250,
- },
- {
- 12297028, -221074848, -5077725, -8498130, 1843615, -1071058, 1302986, -3351685, 4253092, 1612760,
- 2496450, 2771328, -1627793, 16091095, 11641509, 483184, -1872606, 1418413, -1966021, 2772938,
- 4073777, 591095, -4599373, -2371359, -316217, -1423782, 2420751, -1148367, 3681861, 920197,
- 483184, -2072859, 2131378, 448287, 107911, -3233037, -3776887, 2543695, 1635846, -1286343,
- 1030792, -2051921, 3691525, 1195612, 69256, -2387465, -1491964, -1548336, -180389, 292595,
- 1116155, -841277, -2056216, 1979443, -476741, 1555315, 441845, 50466, 56908, -1217623,
- 246961, 284005, -204011, -697395, -1061931, 821949, -172872, 366683, 27917, 348429,
- -550293, -418222, 20938, -68183, 165356, 236223, 20401, -35970, -115427, 310311,
- 195421, 114890, -459562, 13959, 309775, 41339, -27917, 79457, 88584, -128312,
- 238371, 88047, -289910, -146029, 74625, -52076,
- },
- {
- 789737, 4584878, 878858, 77846, -767189, 1338419, 868120, 316217, -3563212, 186294,
- 2590402, -1511829, 3037079, 1148367, -5814849, -2365990, -5905580, -10677289, 4029216, -3834869,
- -9121974, 5301064, -3488587, 4928475, -3139621, -6962679, 3541201, -3332895, -4682588, -4111358,
- 3098819, -1621887, -673236, 1977296, 4316442, -230854, -674847, 1334124, 2120103, 3892314,
- -1171452, -2669322, -1770600, 1376000, 43487, 2246268, 1232119, 932008, -3250753, 1868311,
- 138513, 13959, 432718, 1564979, -1873680, 548145, 1056562, -1944010, 57445, 353798,
- -217970, -1228898, -180389, -309775, -1169842, 55298, 99321, 97711, -278099, -810675,
- 214212, -419833, -100395, -243739, -442919, -113280, -265751, -14496, -563178, 79457,
- 217433, -118112, 161598, 219580, -277562, -25770, -18790, 107911, -333397, -67109,
- 185757, 2147, 38655, 207232, -118648, -3221,
- },
- {
- 7019587, -170832864, 20489678, -7201587, 2559264, -15582678, 8477729, -2146947, 3388192, -6056978,
- -3223373, 5728950, 3584150, -2624225, 2295123, -7573101, -4074850, -2965675, -9578851, 1391569,
- 2032056, -2934000, -5662378, -1392106, -2439005, -1023813, -146566, 2041183, -1932198, 1460826,
- 6311992, 3278671, -539018, -171799, -468688, 467615, -1640678, 2218351, -2234994, 5028870,
- -640487, -1105417, 877247, -223338, 3592740, -1665374, -29528, -1233729, 78383, 339302,
- 59593, -244813, -475668, 517007, 964220, -466541, -1568200, -484794, 881005, -1973001,
- 398895, -680752, -1656784, 1127966, 44023, -1043140, -61203, 302795, -824097, 184684,
- -610959, 374736, 365609, -408022, -860067, 66572, -20938, -104153, 512175, -171262,
- 667867, -49929, 93416, -311922, 34897, -104690, 268435, 128849, 3758, -118112,
- 19327, -39192, 246424, -114354, -38118, 70330,
- },
- {
- -408559, -29588030, -4781909, 3346853, -539555, -1806034, -1728724, 2130841, 3067681, -536871,
- -1734630, 2014340, 6478422, 2742337, 7457137, -6163278, 6613713, -8233989, 601295, -11298985,
- 8853538, -828929, -148176, -1396938, 2069637, 4911295, -1048509, 370978, -926102, 785442,
- -3675955, -3816615, 2190433, -2136209, -586263, -1154809, 1383516, 3005403, 714038, 1664837,
- 1889786, 1120450, 1389422, 235149, -19864, 475668, -739808, -215285, -955630, 889058,
- -1799591, 842350, -334471, -592706, -776315, 1764158, -1155883, -1123134, -774168, -375273,
- 587874, 254477, -628676, 591095, 131533, 25770, 158914, 310311, -726923, -110059,
- 472983, -140123, -167504, -252866, -1074, -86973, -172336, 355945, -273267, 110059,
- 73551, 224949, -17717, -78383, 1074, 106837, 178778, 165893, -133681, 16106,
- -300111, -175020, -141734, -103079, 3221, -293668,
- },
- {
- -12972412, -116163296, 24059334, -4421669, -4230543, -4604205, 1163399, -5431523, -3866008, 2731599,
- -3985193, -4887673, 7293928, 6577743, 12254079, -5306432, 3692598, -3221, 4398047, -4163971,
- -3338263, 4111358, -3149822, -2838974, -1493575, 2483028, -1567126, 205622, -907849, -1056025,
- 2364916, 901943, -886374, 1142998, -176631, -2951716, 11811, 1279900, -229244, 2001992,
- -491237, 1157494, -3696893, -1482301, 724239, -141197, 612570, -2207613, 472446, -205622,
- 449898, 318901, 24696, 258235, 1611, 402116, -2061047, 131533, 459562, -629213,
- -1708323, -787590, 26307, -500364, 753767, 268972, 481573, 140660, 755914, 705985,
- 165356, 26307, -491237, -228707, 436476, 339839, 126702, -78920, -256087, 128312,
- 565325, 527744, 218506, -229781, -257698, -23622, -148176, -15569, 51003, 549756,
- 208843, 8053, -10737, 172872, -81068, 16106,
- },
- {
- -1256815, 12212203, -90731, 2044941, -6136972, -192737, -609885, 585726, 612033, 3595425,
- -1040456, -2428804, 11162083, 27715424, 1677185, -5077188, 1465121, 6810208, 8001524, 3037079,
- -5755793, 13196824, 22079354, -17084306, -2694018, -2624762, 7335268, -4242354, -4508642, -3456912,
- -764504, 1892470, -3339874, -914291, 2364380, -3817152, 1520418, 578747, -2944737, -563714,
- 772020, 796180, 1729798, 437550, -929324, -646393, -1709397, -418222, 1083406, 102005,
- 998043, 1039382, -794569, -681826, -1338419, -1156420, -1175747, 664646, 745714, -643708,
- 861678, -95026, 155156, -514859, 48318, 179315, -182536, 23085, -166430, -268435,
- 737124, -519691, 77846, 167504, 369367, -99321, 83215, -197032, 170188, -400506,
- -86436, -34897, 95563, 136902, 177704, -5906, 207769, 23622, -331249, -326418,
- 84826, 303332, -17717, 130997, 154082, 49392,
- },
- {
- -19899658, -20944944, -2029909, -5191542, -320512, -652835, 1826435, -4829154, 13422847, -760209,
- 5203890, -282931, 5238250, -23447838, 7386270, 437550, 6856916, 1568200, 1876901, -2572686,
- 3028489, -2432562, -1112933, 330176, -3831111, -161598, 1133871, -6882685, 1185948, 504659,
- 738734, 602906, 2372433, 2349884, -124554, -1137630, 936303, 172336, -431644, -840740,
- -613107, -3394635, -1930588, -2260764, -1372242, 141734, -233002, 1342177, -1956895, -4295,
- 938450, -921807, -1687385, 726386, 1007170, -810675, -600759, -31675, -463856, -966368,
- 30065, 725850, 132607, -652835, 92879, 288300, 267362, -108448, 303332, 137976,
- -293132, 1120987, -419296, 708133, -476741, 257698, -130997, 206695, 105227, 547608,
- 230318, -183610, -88047, -267899, 50466, -200790, 18254, 187905, 27380, 244276,
- 32212, 537, 68719, 195421, -104153, -324807,
- },
- {
- -154619, -3784940, 2997887, -1513976, 870268, -808528, -449361, -1411971, -2303713, 2188286,
- -3004330, 3479997, 3901978, 19107236, 67623720, 14482630, 3991635, -1166084, 6111202, 8119636,
- 1717450, -5507222, -8331700, 388158, -5757404, 6944425, -3231426, -4250944, 1148904, -63888,
- -2708514, 1828582, 3324305, 6442, 2099702, -1755568, 1095754, -4208531, -2982855, -311922,
- 755377, -1204202, 746787, 1690607, 1075889, -1998234, 1586454, 108448, -506806, 818191,
- -651224, -861678, -810138, 1024350, 284005, 712428, 500364, -1464584, 490700, 300111,
- -405874, -1455457, 569083, -222265, -574452, -1283658, -971200, 191126, -42950, -644245,
- 146566, 366683, -901943, -453119, -139586, 143345, -20401, 408022, 126165, -39192,
- 328565, -88584, -197569, -69793, -212064, 173409, 154082, 114890, 126702, 140660,
- 246424, 17717, -149787, 272730, -158377, 9664,
- },
- },
- {
- {
- 12665322, 122841432, -2311766, 15420543, 4258997, 2945811, 2921652, 1799054, 2412161, -2011118,
- -3883724, -1632088, -1228898, 1182190, -1756105, 9621264, -4031901, 4530117, -4190814, 6212134,
- -3851512, -1489280, -5171141, 11274, 1757715, 2951716, -540092, 1032940, -135291, 5567352,
- -2732136, -555125, 5350993, 1975148, 7121056, -381715, 1542967, 3902515, 1886564, 1136019,
- 1012002, -2268817, -1761474, 1810866, 2059974, 1220845, -93416, -420907, -636729, 84826,
- -141197, -147103, 383863, -504659, 921271, 517007, 1387811, 153545, 768799, -224949,
- -162135, 345745, -872952, -829466, -643171, -85899, 227096, -17717, -497142, 18790,
- -489089, 743029, -197569, 49392, 672162, 562641, 242129, -427349, -361851, 353798,
- 96637, 354872, 68183, 98247, 314606, 145492, 387621, 112206, -43487, -1074,
- -300648, 168041, 244813, -152471, 207232, -8053,
- },
- {
- 82678, -67210336, -4274566, 6007586, -40802, -608812, 3649112, -493921, 2777770, 3394098,
- -207769, -2204392, -1662152, -6425808, 2516314, -12489765, -1618129, 5665062, -5324686, 1895691,
- 6357626, -13217762, -3684545, 1925219, 7413651, -104153, -1717450, -9017284, -4935991, 811212,
- 1208496, -636729, -757525, 924492, 354872, 5113159, 3869766, 1124208, 2424509, -1109175,
- -49929, 3378529, 1197222, 30602, -3966402, 3228205, 175557, -432181, -1875827, -419296,
- 1165547, -738198, 943282, -1607928, 1540283, -1142998, 952946, 491774, -1845762, -750009,
- -93952, 33286, -7516, -194347, -26844, 1001801, 605590, 163209, -455803, 413391,
- -306553, 300648, 28454, -32749, 403727, 399969, -266825, -314606, 424665, -19864,
- 411780, -105764, 102005, 189515, 91805, -283468, -23622, 518617, 268435, 193810,
- -60130, -28454, 14496, 59593, -83215, -33823,
- },
- {
- -4304631, 7198365, 37008124, 12514998, 293132, -2531346, 2273112, 1529008, -1594507, -1852742,
- -3091303, -2389613, 3221762, 2344515, -2678986, -13329431, 6955700, -9175124, -2357937, 4273493,
- -5203890, -4329327, 3847754, 4750771, -319438, 238908, 6323266, 1220845, 1247688, 1297617,
- 84826, 1101122, -1726040, 2228551, 3058554, -1880659, -460098, -2808372, -1350767, -433792,
- 1549410, 1123671, -254477, 874026, -931471, 4004520, 447750, 713501, 999654, 476205,
- -91268, 333934, 1054951, -282931, 316754, -1052804, -606664, 991601, 597537, -705448,
- -70867, 559956, -306553, -697395, 694174, -44023, -530428, -149787, 141197, -337155,
- -115427, 834297, 360777, -495532, -488553, -681289, 278099, -4295, -120259, 194884,
- 353261, -290984, 14496, 61740, 71404, -468688, -12885, 189515, 308164, 258772,
- -34897, 142808, -213675, -272194, -82141, 30065,
- },
- {
- 7585449, 166463808, -3743601, 4883378, -4075387, 1865090, 915365, -478352, -4571993, -3271691,
- -464393, 2226404, 2749316, 4437775, -1957431, -983548, 1946157, -13889924, 0, -2414309,
- -157303, 1226750, -3342558, -2921115, 261993, -2647311, 883153, -2178085, 2041183, 802622,
- 3120831, 4349192, -743566, -1091459, -1700270, -2823404, 1660005, 34360, 1003949, 438624,
- 1192390, -869731, 168577, 482110, 1785096, -423591, 2189897, -687732, -656056, 848793,
- -311922, -1112933, -1554778, 914828, 177167, -405874, -302258, -1147830, 177704, -470299,
- -501437, -91805, 1038845, -133144, -68183, 376347, -297963, 347892, -213138, -566399,
- -371515, -688269, 99321, -734439, -6979, 269509, 231391, 181999, 150324, 314069,
- 363462, 25233, 257161, -67646, 89657, 236760, -56371, 47782, -9127, 70867,
- 85899, -224412, 11811, 17717, 55298, 28454,
- },
- {
- 1583232, 5313949, -8252243, 514322, -339839, 83752, -1059783, -1077500, 168041, -434329,
- 967441, 1474248, -4224101, -1712618, -20041928, 2158758, 11668889, 42315628, 10392747, -2308008,
- 2590402, -18095234, 11122892, -723702, -1611687, -4365835, -408559, -47245, 2393371, -958315,
- 1758789, 3037079, 1892470, 4340065, 2247879, 1689533, 311385, -3860639, -1469416, 1420024,
- -662499, 480499, 1369558, -41339, 2078227, -668404, 908386, 643171, -1542430, 2666638,
- -784905, -1852205, -1918777, -379568, -304943, -577673, -1501628, 137976, 1243393, 635118,
- -1480690, -466541, -359167, -845035, 210453, 679679, -651761, 244813, -186831, 353798,
- -265751, 395137, -365609, 24159, -330712, 260919, 97174, 57982, 339302, -26844,
- 193810, -492848, 223338, 229781, 34360, -73014, -9664, -157840, 71404, 3758,
- -13959, 50466, 141197, -223338, -243739, 192737,
- },
- {
- 29030758, 198603040, -9038759, 130997, -2969970, 1112397, 479963, 5521181, 1319092, 194884,
- -3228742, -5095979, 1175747, 3176128, -191126, 208843, 135828, -481036, -359704, 686658,
- 6897181, 2740189, -2711735, -2677375, -1443109, -158377, 1760937, -1446330, 257698, 1992328,
- 4793721, -1618129, 743029, 2147, -1178969, 973884, -494458, 923955, 1838783, 1666447,
- -35433, -288300, -3344706, -1490891, 1060320, -794569, 1905892, -504122, 1744831, 2199560,
- 134218, -845572, 293668, 646393, -1592359, -699006, 815507, -193274, 900333, -564788,
- -140660, -98247, 603980, -845035, -263067, 338229, 162672, 38655, -700080, -245887,
- 184147, -311922, 23622, 311385, -482647, 99858, -58519, 299574, 251256, -416612,
- -598611, 41339, 309775, 355945, 190589, 90194, -59056, 61203, 215822, 172872,
- -7516, -98784, -127775, -109522, 6442, -54224,
- },
- {
- -45634, -2187212, 3583613, -1320166, 325881, 304406, -1058710, 856846, -977642, 97174,
- 2142115, -1108102, 7585449, -7585449, 729608, 4500589, -6553047, 212601, 1983201, 329102,
- 5433134, 14496, -15708843, -4618701, -2878702, 1436667, 2336462, 7780334, 989990, 1217086,
- 1649804, 6777996, -4836133, -482110, 2164127, 3100430, -2610803, -824634, -949188, -991064,
- 754841, -788663, -225486, -583579, -343597, -635655, -1792612, -1015760, -1443646, -787053,
- -30602, -503585, 1854889, -737124, -84826, 317291, -514322, -395674, 1011465, 416612,
- -496069, 300648, -313533, -347892, 513785, -353798, 314606, 637803, 230318, 38655,
- 222801, 204548, 245350, -6979, -114354, 391379, -236223, 326418, 91268, 68183,
- -110595, 324270, -157303, -139586, -247497, -91268, 199716, 15569, -144418, -81604,
- -75699, -38118, -133681, -1611, -171799, -130460,
- },
- {
- -29072634, -188097552, 10158671, -2690797, -2010045, -665720, -2194728, 1166084, -3829500, 4422743,
- 3828963, 903017, 1820529, 6413460, 20597052, -849330, 353261, 1868848, -2222646, 6750615,
- 1873143, -1817308, -1868848, 1613297, -2869575, -1662152, 450435, 4100083, 926639, 2476586,
- -2470680, 3644280, -3646427, 773631, 3446711, -7904351, 2742337, -1579474, 877784, 3134789,
- -1192390, -1000191, 2790118, 1349157, 1787780, -4031901, -2249489, 638876, -1137093, 687732,
- 216896, -1382443, -1604170, 1151051, 1824824, 533113, 311385, -329102, -94489, -1183264,
- -316754, -76236, 239444, -338229, -913217, 384936, 271657, 258772, 55298, -206695,
- -173409, -251792, 24159, 183073, 215285, -180389, 162672, 192737, 13959, 134218,
- 288837, -118112, -279710, -177167, -9664, 443455, -167504, 208843, 6442, 40265,
- -97174, 255014, -199179, -149787, 98247, -128312,
- },
- {
- 294205, 3294777, 5073430, -778463, 941672, 436476, 113817, -1265942, 274341, 418759,
- -248034, 520765, 1199907, -818728, -4220879, -1252520, -13355738, -2902324, -2989834, -4527970,
- -4009352, 2435783, 4524211, -7345468, 5388574, -9432285, -6536940, 6209449, -6303402, -5706401,
- 4567698, -928787, -1248225, 2291902, 2836289, 2694555, -1660005, 2102923, 1089848, 2772938,
- 99321, -2834142, -999654, 1025423, 1629403, 846645, 1626182, -741956, -547071, 290984,
- -273267, 40265, 307090, 739271, -373125, 376883, 192200, -163746, -1421634, -161598,
- 79994, -378494, -402653, -608275, -1343251, 96100, -83215, 193274, 183610, -1479616,
- 158914, -982474, -103079, 34360, -613107, -116501, -428960, 148713, -511638, 139050,
- 74625, -48318, 89121, 95026, -374199, 88584, 66035, 141197, -264141, 1611,
- 133681, 148176, 39728, 270046, -98784, -29528,
- },
- {
- -5132486, -143588272, -3620121, -2132988, -4246649, 108448, -796180, 3668439, -5950141, -103079,
- -1439888, 1327145, 3870839, 77309, -5575405, 329639, -7143605, -7255811, 4522064, -10872710,
- 2016487, 169651, -4169876, -3042984, 3119220, -3765613, -1421097, 1098975, -3033321, 3352222,
- 5198521, 5716065, -2262911, -1857573, 2384244, -4692252, 553514, 2319819, -43487, 4779762,
- -1192390, -658741, 632971, -783295, 829466, 567473, 1064078, -1239635, -895501, 953483,
- -231391, -69793, 913754, 1647657, -721555, -736050, -819802, -5369, -32749, -1282585,
- -41339, -695248, -845035, -46171, 418759, 130997, -637803, 102542, -253940, -322123,
- -427886, 680215, -83752, -694174, -350040, 192737, -90731, -234076, 88584, 208843,
- 193274, 282931, -204011, 76236, -140660, -73551, 453656, 201863, 44023, 104690,
- -197569, -179852, 83752, 233002, -115964, 29528,
- },
- {
- 566399, -19683836, -10023917, 3635690, -2079838, -898722, 133144, 1669132, 1935957, 69256,
- -358630, 1569811, 6424198, 1733019, 7010997, -3263638, -1527398, -1034013, -673236, -4006668,
- 3833258, -155156, 1560147, 947040, -2609730, 5955509, 3184182, -1471026, -742493, -4293894,
- -2692408, -1231582, 1003412, -268435, -2764885, 736050, 478889, 2600066, 782758, 2743410,
- -1790465, 1981054, 2055142, -249645, 1599339, -387621, 13959, -735513, -252329, 153545,
- -971736, 287763, 448287, -662499, -255014, -5906, -340913, -730681, -132607, -893890,
- 401043, 66572, 26844, 77309, 841814, -288837, 290984, 281320, -514322, -14496,
- -242666, -68183, -574989, 120796, 56908, -26844, -330176, 279173, 48318, -42950,
- -39728, 179852, 193810, -152471, -123480, 188442, -27917, 118112, -173946, -157303,
- -91805, -202937, -133681, -146566, 82141, -229781,
- },
- {
- -8072928, -102590664, 5985574, -205622, -2001992, -1486596, -4872641, -2679523, 81068, -373662,
- -5971079, -5853504, 12355010, 3107946, 3058017, 2550137, -1392106, 2137820, 2112587, -279173,
- -3151432, -403190, 232465, -2189360, -3023657, -1091995, 55298, 281857, -1738388, 1400159,
- -435402, 5110474, -3740380, 2500745, -870805, -4696010, -4295, -730681, 793495, 374736,
- 1949378, 1432372, -3410741, -4264903, 1564442, -420907, -295816, -1748052, 1181653, -1396401,
- 171262, 714575, 86973, 1337346, -54224, -853088, -991064, -356482, -317291, -272194,
- -685047, -1394791, -261993, 363998, 49392, 377420, 469225, 240518, 568009, 499827,
- 113817, 320512, -602906, -34897, -90731, 742493, 96100, -156766, -137976, 292595,
- 330176, 380641, 317291, 19864, -518617, -128312, -41339, 141734, 209380, 223875,
- 321049, 99858, 177704, 70330, -111669, -37581,
- },
- {
- 989990, 14798847, -449361, 1512365, -4565550, -2445984, -1186485, 1479079, 2334852, 2956548,
- 750009, -3446175, 1358820, 47720844, -6256694, 2852395, -2968359, 7278359, 2677912, 648540,
- 8739185, 1580011, 17411260, -10598369, -3328600, -1510755, 5384815, -521302, -10089415, 231928,
- 369367, 1206349, -2529199, -2495913, 3244311, -4852776, 1060857, 2410014, -5796059, 2475512,
- -362925, 1899449, 2223183, -550830, -388695, 526134, -2241973, 1061931, -1636919, 1643899,
- 1315334, 251256, 1427540, -2109366, -724776, -899259, 13959, -682363, 1567126, -1194001,
- 670552, 251256, 525597, -724776, -311922, 442382, 108448, 227633, -226023, -207232,
- 128312, -169114, -32749, 266825, 170725, 168041, 557272, -154082, -255551, 10737,
- -273804, -24159, -7516, 3758, 118648, 57982, 36507, -33286, -20401, -345208,
- 202937, 149250, 173409, 45097, 156229, 210453,
- },
- {
- 10201084, -62707596, -3063922, -3342558, -2973728, 3179350, -4083977, 1401233, 7015292, 675384,
- 5289789, 2066953, -4656819, 6473590, -24710020, -2007360, 7817914, 2823404, -1825361, 1966558,
- 1064615, -1785096, 3081639, -3935801, 2684, -1287953, 458488, -2413772, -3208341, 3038153,
- 1181116, 745714, 1304060, 3350611, -2852932, -534723, -403190, 2065342, -868120, -1500017,
- -581431, -1171989, -4733054, -1443646, -206695, -921271, 153545, -981937, -506806, 521839,
- 388158, -1024350, 175020, 1052804, -704912, -830002, -377420, -355409, -629750, -1218697,
- -146029, 553514, 79994, -450435, -111132, 24159, 190052, 178778, 170188, 93952,
- 44023, 246424, -30065, 774705, -239981, 530965, -275415, -4832, -34360, 322123,
- 262530, 118648, -486942, 12885, -131533, -300648, 105764, 105227, 119185, 148176,
- -24159, 96100, -63351, 216896, -13422, -78383,
- },
- {
- -2147, -1624571, -811749, -1480690, 1999307, -51003, -1453310, 46171, -1348620, -1682554,
- 1341104, -918049, 6513855, 20312510, 58092116, 15263240, 1043140, 304943, 7298760, 7639136,
- -130997, -6557878, -3679713, -1084479, -2955474, 2021856, -2451353, -718333, 2357400, 145492,
- -2656974, 54761, 1499481, 2862059, 1078037, -2098092, 1457068, -3941169, -1008244, 500364,
- -2111513, 2630668, 664109, 1002875, 1640141, -1198296, 757525, -615791, -115964, 446677,
- 286689, -1943473, 77309, 785442, 323733, 227096, 1603097, -1421097, -85362, 672699,
- 482110, -1021129, -539018, 351114, -899259, -675384, -632971, 54761, -264141, -134218,
- -154619, -171262, 42413, -301185, -26307, -169651, -155156, 301185, 227633, 66035,
- -54224, -67109, -300111, -85362, -156229, -135828, 226560, 77309, 99321, 198642,
- 201863, -6979, -70867, 23085, 140660, -81604,
- },
- },
- {
- {
- -12409234, 136878464, -1792612, 214212, 920734, 389768, -2427194, -3382824, -1498944, -1737851,
- 2833605, 3481071, -2416993, 3302830, -8351564, 6831146, -2477659, -4326106, -4923107, 9341554,
- -4306242, -1073205, -1976759, 432718, -3792456, 1453310, -1945620, -472983, 727997, 4678293,
- -2057826, 407485, 2210298, -3368328, 4225711, -2778307, 171262, 2023467, 721018, -2828773,
- -2324651, -1728188, -2760053, 325881, 2716567, 1701344, 902480, 466004, 818728, 1482838,
- 706522, 93952, 867047, -569083, 881005, 640487, 249108, -1202054, 1285269, 271657,
- -105227, 1304596, 61203, -801548, -23085, 57445, 143345, 374199, -104153, 139586,
- -840740, 729071, -438087, 179315, 707596, 550830, 529892, -5369, -426812, 197569,
- -154619, -90194, -238371, 53150, 301721, -170725, 144418, -101469, -131533, -70330,
- -299574, 10201, 126702, -198642, 203474, -88584,
- },
- {
- 548145, -24512452, 23887534, 4824322, 2234994, 9127, 3286187, -1618129, 475131, -653909,
- -230318, 639413, 727997, 1167157, 13371307, -9417253, -796180, -1249299, -10913512, 6092948,
- 6673306, -7321846, -955093, -2144263, 472983, -2208687, 831076, -3343095, -929860, 210990,
- -794032, 552977, 1605244, 2648384, -1621887, 897648, 772020, 375810, 407485, -3633542,
- -732829, 3405909, 734976, 943282, -2446521, 2164127, -1606318, -756988, -1333051, 228707,
- 1181116, -1575179, 642098, -1198833, 1376537, -1298154, 241055, -24696, -884763, 301721,
- -452045, -581431, 126702, -251792, -22012, 562104, -213675, -181462, -171799, 818728,
- -385473, 182536, -242129, -187905, 273804, 212064, -166430, -357019, 111132, -143881,
- 543850, -235686, 176631, 289373, -64961, -359704, -548145, -180926, -221728, 66035,
- -22549, 118648, 40265, 139050, -20938, -52076,
- },
- {
- 3965329, -81712288, -38707320, 9801115, 2644089, -1120987, 1742683, 2268817, -613107, -934692,
- 975494, -4560182, 1074816, 2698850, 1294933, -7573101, 5509370, -9882720, -1221381, 5226975,
- -1889249, 755377, 5433134, 3543885, -5596343, -3205656, 4268661, -2268817, -1627256, -28454,
- -2458869, -1221918, -3455301, -1833414, -22012, -259846, 1545115, -1042066, -1134945, -1728724,
- 567473, -1232656, -4788889, 672162, -71404, 4108136, -1033477, -589484, -181999, 184147,
- 525060, -18254, 282394, -434329, 665183, -4832, 258772, 618475, -384400, -1015760,
- 95563, 1071594, -379031, -755377, 340913, -613643, -246961, 146029, -182536, 132070,
- 64961, 470836, -31139, -510027, -15032, 97711, 147103, -194884, 222801, -24696,
- 312459, -47782, 211527, 135291, 180926, -94489, 54761, 44560, -122943, 146566,
- 3758, 66035, -123480, -104690, 134218, 69793,
- },
- {
- -23098334, 136796320, 749472, 3469260, -821413, -599685, -2773475, 216359, -700617, -424128,
- -1105417, 1459752, 3341485, -233002, -8397735, 2607582, 2544768, -16109885, 2243047, -2281702,
- 988916, 1663226, -1546725, -2878165, 1721745, -1179505, -1394791, -4520453, -733366, -3694209,
- -599148, 3862786, 750546, 1014686, -827855, -1516660, 1832877, 1115618, 75162, -275952,
- 1098438, -1656247, -224949, 1032403, -470836, -2966749, 2314987, 674310, 106300, 525060,
- -271120, 332323, -233002, 1469953, 1270774, -589484, -546535, -67109, 241592, 274341,
- 303332, -286689, 580357, -172872, 370978, 406411, -493384, 595927, 47782, -25770,
- 500901, -66572, -2684, -395137, 173946, 188979, -112743, -352187, -140660, -51540,
- 293668, -219580, 537, -237297, 3221, 89657, -117575, 103616, -236223, 45097,
- 210990, -147640, -153545, -73014, 91805, 39192,
- },
- {
- -1628866, 19983946, 3625489, 523986, 272194, -185220, -306016, -194884, 173946, 969052,
- 637803, -2180770, -6807523, 5324686, -8659728, -2266132, -13176960, -11665668, -10547366, 1682554,
- 4866735, -19505058, 1811939, -3120831, 2543158, -2048699, 29528, 2873333, 1262720, -3051038,
- -2159832, 84826, -3054796, 2157684, 4286378, 482647, -1494112, -3906273, -2848637, -1569274,
- -3113315, -1915555, 224949, 171262, 2204929, -77846, 1637456, -716186, -2668785, 1682017,
- -993211, -294205, -576599, 648003, 814970, 395137, -711354, -481573, 777389, 908922,
- -830539, 11274, 576599, -286689, 588947, 1032403, -973347, -212064, -641561, -38655,
- -218506, 786516, -512712, -259846, -222265, -100395, -242129, 119185, 353798, -242666,
- -51540, -204548, 298500, 133681, 194347, 278636, 284005, -31675, -37044, -10737,
- 72478, -33286, 145492, 63888, -215822, 86973,
- },
- {
- -48019880, 126092720, 14288819, 6507949, 1784559, 80531, -2452426, 4335233, 2022393, 1138703,
- 3703873, 610422, 5317170, 1537061, 482647, -852014, -2510409, -1170379, -649077, -259309,
- 3257733, 2833605, -547608, -1162326, -955630, 267362, -9664, -2618320, 494995, 2083596,
- 5134097, -1737314, 990527, -770947, -230854, 2163590, 295816, -18254, -1251983, -991064,
- -4552666, -1364189, -2386391, -2947421, 370441, -644245, 1801739, -1656784, -1489817, -467078,
- 541703, -219043, -858993, 1015223, 869194, 1063541, 1883343, 401043, 1129040, -853088,
- -403190, 32212, 664646, -490700, 448287, 419296, 102005, 387084, -569620, -178241,
- 77309, -184684, 227096, -417686, -578747, 106300, -246961, 245350, 178778, -265751,
- -517544, -67109, 97711, 29528, -47245, -177167, 10201, 63351, 96637, 97711,
- 15032, -19864, -128849, -41339, 21475, -115964,
- },
- {
- -314606, -10023380, 112206, -412317, -22012, 65498, -887448, 1465121, 71941, 73551,
- 1214402, 1069447, 7251516, -5895917, 9294846, 2664490, -11596949, -1537598, 8857296, 5845988,
- 1038845, -3514894, -23215372, -3959960, -415001, -871342, -4403415, 4742181, -123480, 325344,
- 190589, 6178311, -4135517, -1387274, 1779727, 4310537, -630823, 991064, 929324, 276489,
- 1692754, -362388, -678605, -1264868, -1337882, 456877, 142271, -1006096, -980863, 358093,
- 321586, -925565, 1366873, 309238, 1454383, 783295, -210453, 102005, 756988, -468688,
- -908922, 1074, -645856, -715649, -76773, -958315, 111669, 447750, 231928, -176631,
- -419296, -176631, 606127, 132607, -459562, 376883, -105227, 303332, -163209, 124554,
- -225486, 231391, 103079, 234613, -49929, 35970, 207232, -220654, -74088, 61740,
- -10201, 183073, -127775, 12348, 36507, 17717,
- },
- {
- 37951940, -137174272, -25514790, -804233, 5257577, 357019, -882079, 724776, -7711077, 1845225,
- 623844, -147640, 367220, 1878511, 14519137, -2965138, 1402307, 4303021, -1347009, 5794448,
- 1761474, -654983, -1304060, 2662343, -126702, -1970316, -173946, 5272073, 22549, 796180,
- -2778844, 4993973, -4929549, -189515, 1758252, -9149891, 4167192, -1096290, 590021, 2530810,
- -987843, -242666, 1585380, 1024887, 2461553, -365072, -404801, 1509144, -91268, 479426,
- -296353, -273267, -1589138, 475131, 1225139, -307090, 42413, -704375, 1275605, -189515,
- -740345, -546535, 278636, 912144, -70330, 603980, 892816, 510564, 63888, -57982,
- 221728, 301721, 38655, -12348, 326954, -30602, 36507, 4295, -3758, -142808,
- -168577, -161061, 151934, -101469, -187905, 228707, -394063, 31139, -33823, 4295,
- -207232, 194884, -10201, -27917, 237834, 67646,
- },
- {
- -872415, -7146289, -1878511, -1699733, 1435593, 88584, 443455, 670552, 2208687, 1008780,
- 893890, 1742683, -864899, -379031, -7853348, 775242, 3619584, 3083787, -4136591, 2327336,
- 3638911, 1637456, 5385352, -12444668, -2238752, -2253247, -5198521, 3956202, -581431, 136902,
- 4397510, -513785, 1297617, -896574, -2866354, 1167157, -2730526, -217970, -1458678, 1906966,
- -351114, -1140314, 346282, -799938, -122407, -1352915, -357556, -224949, 805843, 268435,
- -1095754, -915902, 188979, 326418, 220654, 34360, -756988, -269509, -506269, 642635,
- -259309, 275415, 401579, 240518, -752156, -22012, -124554, 634045, 1223529, -907312,
- 251792, -520228, -53687, 9664, -391379, 239444, 70330, 134218, -318901, 199179,
- -62277, -84289, -41876, 75162, 84289, 104153, -190589, 262530, 13422, 60666,
- -85362, 83752, -53687, 198642, 17180, 118112,
- },
- {
- 3200288, -133982040, -11696807, -93952, -303869, -1631014, -5581847, 6419366, -3779571, 3823595,
- -1292785, -1612223, 3389803, 2391223, -4975720, 3098282, -2417530, -3184718, 8775692, -8036958,
- 2097555, -370441, -1196148, 212601, 2277407, -3941169, -1806034, 282931, -3096135, 2706903,
- -695248, -1019518, -1941862, -190052, 4974109, -1382443, 1811939, 181462, -1470489, 3314104,
- -726923, 69793, 1825898, 348966, 189515, 491774, 653909, -1036698, 126165, 943282,
- -217433, -393526, 223875, 337155, -1145683, 35433, -692027, 458488, 424665, -275415,
- 262530, -457414, -719407, -41339, 398358, 144955, 152471, 210990, -19327, 227633,
- -228170, 353798, -243739, -284542, 48855, 184684, -255551, -67646, 1611, 165893,
- -42950, -42950, -141197, 529355, 68183, -85899, 142808, -6979, 24159, 176631,
- -248571, -48855, -85899, 32212, -132607, 104690,
- },
- {
- -803159, 569083, 8353712, 2413235, -3148748, -603443, -347355, 509491, 909996, -292058,
- -86436, -1247151, 1343251, -2079301, 966368, -6359773, -5276904, 1713155, 33286, 3605088,
- 7512435, 261993, 7066832, 2783676, -4122632, 1767916, 1185948, 467615, 542777, -2287070,
- -157303, 1064078, 2797634, -141197, -1953136, 2930778, -672162, -572304, -1837709, 789200,
- -2782602, 1495186, 507880, -855772, 2382633, -821413, -286152, -922881, -831613, -338229,
- 299037, 1300301, 667331, -289373, -231928, -1006096, 177167, 73551, 756451, -667331,
- -232465, -74625, 390305, 59593, 753230, 51003, 143881, 104153, 198642, 267899,
- -801548, -512175, -568009, 363998, 61203, -5369, -99858, 366683, 15032, -3221,
- -41876, 81604, 6979, -236760, -24159, 104153, -75162, 144418, -122943, -49929,
- 237297, 104153, 96100, -70330, 47782, -63351,
- },
- {
- 19447612, -64608120, 5835250, 2017561, -551903, 6837588, 546535, 1840930, 1209570, 445066,
- -441308, -3240016, 5102958, -11952894, -2905009, 6768332, -738198, 228170, 1354525, 2378338,
- -3488050, -514322, 609885, -1337346, -1204738, -709743, -2190970, 918586, -948651, 70330,
- -3098282, 3243774, -3122978, 493384, -725850, -1870458, 241592, 750009, 542240, -1476932,
- 1672353, 628676, -2089502, -2313914, 459025, -797790, 405338, -291521, 1234803, -1614908,
- -382252, 1154273, 476741, 1310502, 281320, 234613, 586800, -337692, -76773, 998580,
- 591632, -831076, 91805, 246424, -359704, -17180, 463320, 84289, 202937, 361851,
- -260382, 204548, -498216, -133681, -164283, 636729, -71941, -20401, 97711, 171799,
- -75699, -63351, 183610, 111669, -336081, 43487, 70867, 283468, 86973, -204011,
- 228707, 100932, 169114, 22549, -157303, -127775,
- },
- {
- -530428, 12821551, 960462, 2789581, -408559, 1465658, -939524, 1313186, 854699, -1037772,
- -3743064, -3206193, -4458713, 35022236, -8247948, 7736310, -2794950, 865436, -1609002, -2252174,
- 6433861, -8771934, -1000727, -11754789, 6888054, 3299072, 1635309, -1392106, -6154688, 3059091,
- 4195110, 3280281, 1495186, 107374, 5259188, -1333587, -545461, 3361349, -3510599, 2618320,
- -1500017, -389768, 860604, 1328219, 1490891, 1394791, -1175747, 2937221, -959388, 965831,
- 1066226, 215285, 2404108, -2046552, -794569, 8590, 1701344, -717260, 1620813, -339839,
- 591095, 427349, 861141, -686121, 180389, 535260, 354335, 149787, -24696, 194884,
- 504659, 527207, 231928, -159451, -28991, 260382, 742493, 24159, 154082, 462246,
- -17180, -257161, -380105, -201863, -38655, 331249, -39728, -59593, 82141, -277562,
- 60666, -379031, 128849, 95026, -98784, 146566,
- },
- {
- 2579128, -73901888, 3930432, 5585605, 2425046, 5025112, -5243082, -1736241, 106300, -766652,
- -2010045, -5747740, -7722888, 8047158, -31071404, -496606, 8052527, 1809255, -2180233, 2630668,
- 2258079, -644782, 3324305, -2633352, 3775813, -244813, 644245, 1170916, -4110821, 399969,
- 312996, 681826, 1043677, 875636, -2241436, 2284386, -2492692, -755377, -187368, -136902,
- 1700270, 1915555, -3185255, -816581, -268435, -147103, -462783, -1920387, 999117, 1592896,
- 486405, -1442572, 366683, 1607928, 15032, 271120, 617938, -863288, -603443, -529355,
- 329639, 190589, -501437, -393526, -260919, -169651, 98247, 398358, 165356, 64961,
- -137439, 277562, -87510, 440771, -129386, 617402, -476205, -94489, -178778, -64961,
- 276489, 345745, -193274, 267899, 38655, -41339, -62814, -91805, -87510, -22012,
- -314606, -33823, -107911, 144418, -76236, -43487,
- },
- {
- 407485, -2374043, -1466731, -1632088, 701690, 1162326, 912681, -409633, -1234803, -462783,
- 3457986, -4346507, -4344897, -37352792, -26722750, 3187403, -2510409, -6507949, 5018133, 7984344,
- 3504157, -4678830, -1188632, -2864206, -1330903, 6337224, 3221226, 775778, -897111, -3479997,
- -1669132, 1699733, -1615982, -860067, 1016297, -2485712, 2480344, 2876554, 3346317, 870268,
- -2545305, 2039036, 834834, 541703, 840740, -24696, 349503, -1688996, -1555852, -94489,
- 1789928, -593242, 170725, 384400, 134218, 26307, 2063195, -796180, -493384, 338229,
- 619549, -1440425, -828929, 478889, -534723, 964757, 424128, -830002, -54224, 279710,
- 80531, -83752, 539018, -98784, -292058, 28454, -429497, -209917, 186294, -190589,
- -151398, 56908, -310848, -303869, -60130, -159988, 150324, 85362, -25770, 25770,
- 163746, 24696, -62814, 20401, 215822, -87510,
- },
- },
- {
- {
- 9602473, 175600272, -76570144, 2070174, 4548371, -687195, -1898376, -3208341, -5107253, -1168768,
- 1358820, 6780143, -1411434, 1438277, -3906273, 350577, 874026, -5732171, 1672890, 1844152,
- -2731599, -2896419, 428960, 2002529, -2328946, -2594697, -1192927, -3418257, 5247377, 788127,
- 110595, 2467996, -1957431, -150861, -114354, -1063541, 436476, 908922, 751082, -3211025,
- -1783485, -1380832, -2421288, -610959, 1910724, 753230, 947040, -212064, 1122597, 2256469,
- 1133871, -1544041, 790274, 649077, 1187022, -334471, 92879, -290984, 563178, 583042,
- 682900, -6442, 957241, -707059, -26307, 154619, 106300, 198642, 63888, 239981,
- -85899, -69256, -313533, 460098, 556735, 411780, 308701, 120259, -95563, -68183,
- -489089, -155693, -29528, 5906, 238371, -235686, -81068, -81604, -153008, 22012,
- -183073, -105764, 79457, 10201, 63888, -1611,
- },
- {
- 627602, 35140348, -22903450, 1286880, 2106145, 2102387, 663572, 2091649, -1065152, -3355443,
- 68719, 1762547, -58519, -2410551, 14756434, 3811247, -5121749, -1512902, -10866267, 2095407,
- -238908, 3872987, -2414845, -2858301, -854162, -2803003, 1600949, -1956895, -1059246, 652835,
- -296353, 3264712, -723165, 1195612, 12885, -1257352, 288837, 1417876, -1364189, -1737314,
- 452582, 818728, -1460826, 924492, 1345935, -542240, -10201, -872952, -845572, 518080,
- 357556, -1257889, -936303, -79457, -347355, 341450, -82678, -277025, 415001, -111669,
- -641024, -889058, 269509, -302258, 360240, -173409, -76773, -345208, -99858, 597000,
- -377957, 162135, -112206, 47782, 66035, 191126, -103079, 1074, -108448, -211527,
- 244276, 102542, -68719, 280784, -106837, -162135, -585189, -308164, -254477, -236760,
- 282931, 45097, 184684, -11274, -150861, 99321,
- },
- {
- -4199405, -132250096, 14464913, 9352828, -2280091, -678068, -1588064, 1531156, 897111, 651761,
- 289373, -1808718, -2810519, 5015448, -3041911, -2904472, -4680441, -4495757, 911070, 2329483,
- -410706, -300111, 7619272, 1198296, -4769025, -3833795, 604517, -672162, 2285996, -1166084,
- -2403571, -1360431, -4019553, -331786, -4868346, 4514011, -1061931, -132070, -696322, -1722819,
- -1427540, 284005, -3284576, -199179, 1336809, 378494, -683437, 689342, -1066226, 285615,
- 1125281, -198642, -679679, 92342, 559956, 191663, -46708, 494995, -137439, -849330,
- 274878, 890669, -328565, -909459, 373125, -838592, -56908, 479963, -20938, 61203,
- -53150, -39728, -285615, 168577, -112743, 52613, -8590, -228170, 388158, -175020,
- 325881, 236760, -50466, 304406, 220654, -55835, -25233, -37581, -168041, 170725,
- 81068, -115427, -30602, 26844, 148713, 108448,
- },
- {
- 30729418, 88684096, -11206643, 3570729, -5124970, -811749, -2885144, -346282, -199179, 341987,
- -1080184, 2186675, -5906, 175557, -10087804, 4702453, 3304977, -13804562, 856309, -3681861,
- 705985, -1751810, 2771328, -1410897, -446677, 317828, -2056753, -1713692, -2392297, -1981591,
- -3052111, 2075006, 1582159, 1919314, -1500017, -551903, -221728, 2518462, -195958, -1103807,
- 593779, -503585, 218506, 360777, -1025423, -1760400, 225486, 1751810, -288300, 577136,
- 170725, 105764, 220654, 1683627, 765578, 139050, -943282, 86973, 201863, 1111323,
- -675384, 354335, -176094, 102542, 63888, 154082, 14496, 369904, 23085, -93952,
- 571768, 3221, -60130, 277025, 207769, -225486, -198642, -421981, -6442, -141734,
- -109522, -166967, 89657, 18790, -207769, -51003, 40265, -40265, -128849, 150324,
- 38118, -61203, -166967, -15569, -62277, 79994,
- },
- {
- 1646046, 21906480, -751619, 1210107, -364535, -38655, 168577, -261456, 378494, -700080,
- 1530082, -1037772, -4337917, -909459, 2218351, -7183870, -159451, -37058588, -5529234, 10773925,
- -6609418, -6386080, -6345814, -3955665, 4012573, 867047, 1526861, 1950989, 1560684, -1982127,
- -3130494, -708670, -833224, 852014, 1560684, -535797, -253403, -2566780, -2643016, -2945274,
- -2071785, -1500017, -1292248, 2011118, 1430761, 151934, 852551, -1296006, -635655, -628676,
- -483721, 825707, -953483, -42950, 2037962, 12885, 78383, -1624035, 785979, 305480,
- 346282, 229244, 370441, 526134, 89121, 300648, -731755, -149787, -235686, -824097,
- 309238, 465467, -299574, -249108, 121870, -619012, -100395, 126165, -52076, -122943,
- -108985, 32212, 370441, 39192, -8053, 390842, 217433, 102542, -45097, 116501,
- -4295, 66035, -138513, 213138, -129386, -3758,
- },
- {
- 53814328, 51080584, -33344516, 8837969, 3195456, -636192, 938987, 139586, 2566243, 2495376,
- 656593, 637266, 7882876, -2741800, 3233037, -2334315, -3692061, 1688996, -1524177, 1239635,
- -877784, 3568581, 497142, -1294396, 390842, 566936, -376883, -761820, -838592, 143345,
- 6010807, -226560, -1700270, 256087, 1673427, 1171452, 1451699, -1447404, -921271, -1007707,
- -4870493, -291521, -1866163, -3283503, -1367947, 539555, -131533, 293132, -1368484, -1857573,
- 1217086, 104690, -623844, -412317, 1350767, 1408212, 900869, 1308891, 345745, -273267,
- -311385, -71941, 675384, -284005, 706522, 35433, 280784, 91805, 33823, -75699,
- -45634, -77309, 83752, -601295, -286689, 189515, -354872, 99321, 129386, 160524,
- -324270, -184684, -188979, 190589, -73551, -239444, -132607, 109522, 34360, 60666,
- -22549, 27917, -1611, -127775, 126165, -233002,
- },
- {
- -181462, -9439801, -3185255, 2140504, -728534, -157303, -763430, 1298691, 794569, 550830,
- 415001, 2258079, 4909148, -7160248, 13274670, 2753074, -5790690, -2379949, 1978369, 10901164,
- 307090, -3029563, -19486266, -6674379, -241592, 1651952, -2826089, 985695, -841814, -365609,
- 105227, 1679332, 316217, -2079838, 291521, 3165928, 1190243, -144418, 2266669, 529892,
- -899259, 779000, 1204738, -2572149, -593779, 65498, -157840, -939524, -279173, 100932,
- -8590, -191126, 1182190, 418759, 1047972, 175557, 256624, 854162, -494458, -547608,
- 41339, -390842, -601295, 5906, -618475, -1111323, 163209, 324270, 235686, -57982,
- -330712, -344671, 311922, 452045, -238371, -37044, -63888, -39192, -53150, 211527,
- -32212, -100395, 204011, 103079, 16643, 105227, 91805, -67109, 86436, 297963,
- -56908, 79994, -86436, -7516, 91268, -62814,
- },
- {
- -38442640, -105970264, 32438278, -207232, 3629784, 395674, 2578054, -2223719, -4495220, -102005,
- -478352, 2915209, -1842541, 4916127, 6295349, 1371168, -22549, 4493073, 48855, 1167694,
- 2430415, -699006, 1142998, -367220, -274341, -914828, 1532767, 3583077, 391916, -711891,
- -685584, 1850594, -1909650, -1464584, 2056216, -4102231, -1269163, -986232, 369367, 1241246,
- -598611, -107911, 1265405, 2152852, 819265, 1957431, -1574106, 2377801, 948651, 417686,
- -1334124, -228707, -981937, 503585, 668404, -368830, 476205, -803696, 598074, 348966,
- -398895, -238908, -368293, 788663, 1057636, 333397, 16643, 1003949, -146566, 312996,
- -222265, 442382, 257161, -347355, 318901, 309238, -7516, -335007, 164819, -122943,
- 8053, -330712, 116501, -62814, 229781, -177167, -83215, -214748, 4295, -42950,
- -107374, -28991, 78383, -7516, 54224, 265751,
- },
- {
- -275952, -6934225, -7456600, 1637456, -520228, 474594, -293132, 1675574, 1217086, 539018,
- 2512019, 792421, -949725, -4638565, -5193689, 5677410, 9450002, -12348, -5574868, 300648,
- 5178657, 5412196, -4245039, 2688113, -9956808, 2689723, -2110977, -4736812, 4507032, 1031329,
- 2529736, -565325, 424665, -445066, -935229, -865436, -2674154, 672699, -668404, 226023,
- -1604170, -532039, 689879, 166430, -2334315, -942208, -270046, -1020055, 1747515, -1132261,
- 725850, -665183, -869731, 683437, 625455, -729608, 57982, -859530, -317828, -126702,
- 57445, 843961, -121333, 859530, -592706, -101469, 333934, 417149, 733903, 181462,
- 42413, -339839, -48855, -88584, 156229, -84826, 182536, 59593, 47245, -28454,
- -177167, 121870, 27380, -140660, 299037, -124017, 47782, -94489, 300111, -17717,
- -266825, 86973, -20938, 232465, 6979, 12885,
- },
- {
- -2483028, -121585152, -11395085, 372588, 3907347, -5592048, -1047435, 926102, 1275605, 505732,
- 351650, -1275068, 602906, 4030827, 798327, -1604707, 3176665, -3172370, -1862405, 2341831,
- 11811, -2618320, 2253247, 2327872, -1717987, -2117419, -1875290, -219043, -1755568, 949188,
- -2625299, -1721745, -331249, 1321776, 2463164, 1661079, 1238024, -2534031, 1432909, 1174137,
- 1235877, -1301912, 2485176, 420370, 961536, 205622, -969052, -570694, 399969, 232465,
- -959925, -434329, 17180, -409096, 199179, -293132, -359167, 294742, 382789, 126165,
- -244813, -648003, 86973, -5906, -193810, 81068, 585726, 60130, 143881, 161598,
- 185220, -432718, -143881, 239981, -100395, 229244, -384936, 143345, -122943, -45097,
- 53687, 40265, 42950, 204548, 28991, 60130, -81068, 76773, 25770, -63351,
- -83752, -20938, -7516, -140123, 1611, 1611,
- },
- {
- 1204202, 15008226, 1495186, -5535676, 212064, -2586644, -825707, 3350611, -1896765, -1131724,
- 392990, -2180770, 2684, -3368328, -486942, -1867774, -8206609, 8533026, -3117073, 545461,
- 13707388, -4927401, 4233764, 1691143, 2047626, 1643899, -2208150, 5216775, -4336843, 1089848,
- -3252364, 3102577, 5055714, -3139084, 11274, 759136, 631897, -1535988, -2262374, -459025,
- -399432, 1192390, -68183, -336081, 908386, -716723, 652835, -1393180, -1132798, -542240,
- 1056562, 535260, 747861, -12348, 451508, -1427540, 81068, 335544, 556198, -88584,
- -515396, -212601, 270583, 401579, 127775, 411780, 51003, -346819, 235149, -150324,
- -253940, -293132, -464930, 346282, -236760, 107911, 12885, 369367, 43487, 42413,
- -126165, 96637, -218506, -19864, 95026, 107911, 69256, 88584, -98247, 57445,
- 109522, 209917, 60666, 155693, -209917, 7516,
- },
- {
- -19209242, -16858820, 11042361, -4396973, 1447404, 6880001, 4268661, 1024350, -1315871, 870268,
- 3095061, -1898376, -40802, -5365488, -6162741, 3365107, 786516, -645856, 1886564, 2460480,
- -2072322, -228170, -613643, -1440425, 34360, -1105954, -1159641, -2315524, 301721, -2106145,
- 449898, -988916, 983548, -2442226, -2403571, 627065, 1637993, 1030255, 530428, -1596654,
- 1899986, 1601486, -3308199, -1594507, 184684, -347355, 281320, 1851131, -2267206, 19864,
- -470836, 1319629, 319438, 1289027, 297963, 501437, 872415, -132070, -362388, 599685,
- 456340, 16643, 112743, 76773, -428960, 223338, 3758, 286152, 196495, 170725,
- -215285, 246961, -524523, -192200, -34897, 179852, 148713, 125091, 103079, 8053,
- 104690, -206695, 260919, 12885, -105764, -76236, 26307, 191126, 199716, -277025,
- 81604, -56371, 176094, -16643, 32212, -94489,
- },
- {
- 183073, 11292543, -1156957, 4100620, 635655, 2029372, -2343979, 2317135, 348966, -2225330,
- -3142842, -2067490, 14861124, 3660923, 2205466, -3194382, -2582349, -157303, -3416110, 178778,
- -7427072, 2776696, -7543037, -947577, 2922188, 3685082, 816581, -4793184, -1976222, -2778307,
- 6291054, 4552666, 1053878, 1334661, 1871532, 1930588, -1409286, 2287070, 297963, 470299,
- -955093, -332860, -541166, 1074816, 1233729, 2204392, -390842, 165356, 319438, -404801,
- 1481764, 964220, 1868848, -1529008, -532039, -305480, 1207960, 16643, 206695, 899259,
- 53687, 792958, 322659, -460635, 321049, 526670, 564788, -498216, 293668, 24696,
- 854699, 665720, 355409, -553514, -32749, 403727, 499827, -279173, 420907, 193810,
- 249645, -273267, -357019, 59056, -155156, 448824, -537, -97711, -137976, -144418,
- 177167, -448287, -177704, 170188, 43487, -125628,
- },
- {
- -11824045, -60889216, 8794482, 9618579, 1644973, 3204583, -724239, -1845762, -2171643, -149787,
- -4009889, -4252555, -5035849, -6415608, -16318728, 3029563, 3403762, 1063541, 391916, 2384781,
- 1495186, 2194192, 590558, 1096290, 755914, 236223, 81068, 1012002, -2992519, -1278827,
- 1625108, -1431835, 2030446, -932008, 1160178, 571768, -2404108, -259309, -1711545, 866510,
- 3214246, -494458, -2139968, -109522, -186294, 329639, -1835562, -172872, 1157494, 300648,
- 997506, -443992, -599148, 854699, 887985, 201327, 985695, -855235, 103616, -461709,
- -150324, 297427, -712428, 139586, -399432, -290984, 499290, 723702, 20938, -333934,
- -69256, 537, 176094, 404264, 213138, 209380, -340376, -31139, -19327, -237834,
- 172336, 319975, -30602, 135828, 329102, 144955, -281320, -39192, -238908, -84289,
- -30065, -87510, -51540, 56371, 22012, -213138,
- },
- {
- -448824, -1575716, -698469, -1313186, -1611, -121870, 587874, -197032, 1044214, 1571421,
- -539555, -2971044, -9021042, -2940979, -82478408, 11960947, -574452, -3256659, 2024540, -2080375,
- 12291660, -3726958, -6963753, -4832375, 6506339, 2909304, 2885681, 1222992, -583042, -4268124,
- -635118, -1644973, 1314260, 222801, 639413, -3965866, 1285269, 5449240, 1148367, 1090385,
- -113817, -724239, 1291175, -66035, -79994, 533650, -730144, -594853, -695248, -220654,
- 1195612, -400506, -531502, 295279, 96100, 565862, 1569274, -703301, -337155, -403727,
- -98784, -1000191, -383326, -275952, -137976, 505196, 542777, -846645, -17717, 309775,
- 132070, 166967, 82678, 20938, -262530, -41876, -286689, -403727, 146029, -179852,
- -123480, 224949, -215822, -412317, 45634, -81604, -15569, 278099, -59056, 10737,
- 104690, 70867, -537, -36507, 144418, -122943,
- },
- },
- {
- {
- -8045548, 170596640, -38579544, 9034464, -1607928, -612570, -245887, -1997160, -2284386, 2559264,
- 1545115, 2965138, -1723356, -1080721, -2207613, 2128693, 1925756, -132070, 3574487, -2034204,
- -894964, -1962800, -104153, 1997160, -497679, -1033477, 1678259, -2915209, 3680250, 1154809,
- 2354179, 3212636, -1869921, -331786, -389768, 740345, 394600, 589484, 425202, -3344706,
- -1175210, 375810, -1111323, -639413, 247497, -1132261, -88584, -579284, 164283, 304406,
- 141734, -1034550, 172336, -259309, 557272, -565325, 519691, 177704, 189515, 186294,
- 572304, -472983, 468688, -277025, 214748, 265751, 57982, -128849, 17717, 284005,
- 239444, 18790, -166967, 33823, 109522, 22549, -18254, -31139, 244276, 209917,
- -241055, -159988, 142808, 178241, 162135, -58519, -140123, 25770, -120796, 3221,
- -52613, 34360, 105227, 78920, 96100, 54224,
- },
- {
- -1981591, 50608672, -10912438, -3982509, -4468377, 126165, -1392643, 1177358, -1332514, -841814,
- 1018981, 553514, -1780801, -4276177, 7454990, 4820564, -1770600, -898185, -9470403, -419296,
- -3712999, 2700998, -1098438, -1529545, 3406446, 956704, -593779, -3269544, -1513439, -223875,
- -1940788, 3655017, 2868501, 1124208, 1671279, -2454037, -2339147, 941672, -779000, 207769,
- 845572, 525060, -1501091, 574452, 2194192, -1066763, 249108, -116501, -161598, -140123,
- -234613, -300648, 20938, 483721, -533113, 509491, -526134, -496606, 449361, -15032,
- 180926, -96637, 352187, -397284, 262530, 38118, 226560, -264677, -182536, 100395,
- -233539, 314069, -162135, 133681, 148176, 48318, -141197, 231928, 90731, -187368,
- -46708, 113817, -55298, 151934, -46171, 123480, -127238, -25770, -63888, -270583,
- 271120, -38118, 93952, -122943, -188979, 126165,
- },
- {
- 3461744, -110886928, 25243670, 11279658, -4230543, -137439, 70330, -377957, 187368, -180926,
- -177704, 1294933, -3966939, 3197066, -2645700, 1249836, 926639, -731755, -4566087, -1139777,
- -1183264, -1756105, 2770791, -1755031, -1413581, -2618856, -660888, -486942, 2659122, -2428267,
- -1917166, 2622078, 180926, 1411971, -5468030, 4181151, 952946, 1342714, -915902, -261993,
- -545998, 2618320, -312996, -555125, 449898, -486942, 46171, 464393, -1272384, -7516,
- 773094, 67109, -449361, 1015223, 813359, 90731, 69793, 0, -245887, -564251,
- -386010, 290447, 417149, -301185, 687732, -241592, 19864, 250719, 226560, -35970,
- -259309, -206695, -107374, 496069, -172336, -268972, 39728, 33823, 314606, -258235,
- 19327, -25233, -169651, 125628, 168041, -200253, -84289, -74625, -107911, 156229,
- -59056, -38655, 112206, -43487, 22549, 170725,
- },
- {
- -28643136, 40293236, 12128988, 3809099, -236223, 90194, -1802813, 175020, -989990, 142271,
- -1682017, 1421634, -212601, 612033, -10683194, 871878, 1508070, -11012296, 2537789, -2387465,
- 857920, -1027034, 3687766, -64425, -490700, 1431835, 531502, 892279, -300648, 0,
- -1793149, 181999, -1106491, 473520, -842350, -1265942, -1464584, 1757715, -1209570, -639413,
- 1337882, 147103, 34360, -1130650, 104153, 279710, -330712, 642098, -832687, 215822,
- 74088, 302258, -243203, 512712, 504659, 1036698, -427349, 198642, -163746, 557272,
- -572841, 463320, -579284, 111132, -190589, 85899, 102542, -49929, 63888, -23622,
- 426812, -216359, -115964, -28454, -46171, -236223, -170725, -106837, 214748, -26307,
- -190589, -164819, 112743, 177167, -120259, -81068, 41339, -73014, -47782, 104690,
- -15032, -19327, 23085, 26844, -117038, 95026,
- },
- {
- -1214402, 15358266, -1526324, 1439888, -1044751, -147103, 177167, -403190, 537408, -515933,
- 1149441, -536871, -1861868, -668941, 9405442, -198105, 2499671, -6021544, 15421080, 6287296,
- -3752728, 3663070, -336081, -1458141, 2648384, -1036161, 168577, -329639, 1538135, 1450625,
- 832150, 60130, -1494112, -1423245, 2073932, 312459, 478889, -1178432, -531502, 825171,
- 796180, 710280, -734976, -2147, -385473, 302258, 148176, -557809, 634045, 97174,
- -26844, -19327, -794032, -681289, 605054, -577136, 284542, -1160178, 681826, 272194,
- 944893, 209917, -574989, 66572, 63888, 191663, -410706, 113280, 258772, -570694,
- 98784, 336081, -125091, -96100, 527207, -8053, 103616, 114354, 213138, 51540,
- 20401, -29528, 179315, -19864, -150324, 98247, -73551, 68183, -60130, 200253,
- 23622, 1074, -190052, 259846, 27917, -40265,
- },
- {
- -45934140, -2149094, 32672890, 3327526, -1082869, 562104, 755377, -3623879, 1423782, 2110977,
- -2434710, -1773822, 3531000, -4890357, 2668249, 702227, -2297808, 193810, -792421, 2180770,
- -1371705, 1887638, -67646, -922344, 1191317, 1253594, 561567, 1110786, 668941, -963146,
- 4166118, 276489, -652298, 910533, 957241, -442382, 647466, -1835562, -337692, 145492,
- -1713692, 1619740, 137439, 750546, -692564, -7516, -1365263, 263067, 956704, -1339493,
- 857920, 326954, -103616, -339839, 292058, 716723, -25770, 451508, -176094, 291521,
- -278636, -321586, 754841, -285615, 450435, -46708, 441308, 53150, 234076, -88584,
- -122943, -97174, -5906, 134755, 150324, 314069, -206695, 11811, -10737, 382252,
- 24696, 14496, -136365, 303869, 12885, -18254, 25233, 10737, -215285, 91268,
- 57445, -5369, 19864, -134218, 163209, -87510,
- },
- {
- 398358, -2341294, -489089, 2003602, -451508, 287763, -387084, 1056025, -21475, -163209,
- -209917, -677531, 2035815, -6436546, 9509594, 5966247, 4422743, 792958, -943819, 7246684,
- -290447, -942208, -13385266, -3872450, 790811, 1644436, -1206349, 678605, -1513976, -2063732,
- -2277943, -1137093, 2923799, 1044214, -431644, -634045, -369904, -329102, 1382443, 1079111,
- -647466, -333397, 1229434, -289373, 1431298, -22012, -134218, -468688, 299037, -263604,
- -317291, 47245, 537945, -66035, 188979, 201327, 596464, -83752, -443455, -9127,
- 332323, 19864, -309238, 221191, 121870, -452045, -149250, 91268, -175020, -96100,
- 133144, -368830, -219580, 317828, 159988, 181999, 122407, -106837, -306016, 133681,
- 139050, -261456, 127775, 8053, -69793, 41339, 23622, 87510, 77309, 208306,
- -81068, -20938, -38655, -62277, 37581, -20938,
- },
- {
- 33119030, -70817568, -13683229, -3478924, 343061, 86973, 2279017, -845035, -21475, 909996,
- -374736, 2952253, -1403917, 394600, -1798518, 276489, -2194728, 41339, 345745, 1068373,
- 128312, -2401961, 525597, -1191317, 969589, 259846, 1108102, 1660542, -597000, 564788,
- 403190, -774705, -986769, -1948841, 338229, 411780, 601832, -312996, -1243393, -178241,
- 1185411, 811212, 793495, -145492, -672162, 1451162, -973347, 1899449, -70867, 417149,
- -789737, -526134, -95026, 828929, -150861, 607738, 1173063, -523449, -108448, 221728,
- 304943, 4295, -413391, -169114, 299037, 230318, -426812, 525597, -130460, 421981,
- -594316, -425202, 95563, 74625, 317828, 250182, 251256, -146029, 494995, 54761,
- 126165, -62814, 195958, 41876, 196495, -209917, 63888, -130460, 40265, -1611,
- 88584, 112206, 2147, -93416, -46708, 124017,
- },
- {
- 971736, 6599754, 986769, 2087354, -1763084, 140660, -510027, 1364189, -337155, -384400,
- 2376728, 140123, 2425046, 2468533, -2449205, 4296578, 2380486, -163746, 1682017, -2738579,
- -1613297, 3098819, -2959233, 7564511, -9423695, 1976759, 1967095, -4565550, 2032056, -1746978,
- 1374390, 599148, 1585917, 1392643, 19327, 106300, -876173, 597537, -1017370, 874563,
- -337155, -489089, 308701, 1442035, -418759, -5369, 204011, -1548336, 1414655, -933082,
- 613643, -146029, -805306, 30602, -173946, -751082, 195421, -816581, 635655, 85362,
- 160524, 628676, -630286, 381178, -242129, -22012, 79457, -68719, -191126, 261456,
- 352187, -88047, 302795, -35433, 97174, -151934, 2147, 151934, 117038, 73551,
- -41876, 27917, -41876, -237297, 170725, -190052, 84826, -122407, 216359, 9127,
- -44560, 21475, -141197, 99321, -79994, 81068,
- },
- {
- 2952253, -80271328, 21221970, -857920, 3464965, -4030290, -1212791, -1969243, -390842, -1242319,
- 1842541, -226023, -3031173, 20401, 3508452, -2928631, 5968394, 2124398, -1837709, 5635534,
- 2831457, -3059091, 1106491, 2134062, -1991791, 89657, 1511829, 654446, -2104534, 952409,
- -2349347, -2048163, 235149, 29528, -1826972, 1239098, 1572495, -2572686, 1484985, 831076,
- 1301912, -1240709, 1637993, 682363, 979789, -680215, -970126, 331786, -89121, 17180,
- -582505, -240518, 111669, -650688, 531502, 370978, -68183, -294205, -108985, -419833,
- 167504, -279173, -55835, 176094, -315680, 76236, 500364, -186831, 1611, -53687,
- 135828, -284005, 51540, 188442, -96637, 94489, -275952, 83215, -61203, -33823,
- -39728, -5369, 17180, -38655, -15032, 69256, -75162, 121333, 15032, -53687,
- 119185, -51003, 84826, -53687, 119185, 8590,
- },
- {
- -1288490, 14818174, 4721780, -4306242, 1233729, -1952063, -924492, 4001836, -184147, -647466,
- 914828, -1062468, -3641596, -2924873, 3177202, -2006824, -4603131, 8339216, -1937030, -5767068,
- 6449967, -6452652, 2198487, 1037235, 2223183, 630823, -4472672, 4814659, -2072859, 4435091,
- 227633, 493921, 1574642, -2332167, 786516, -697395, -1327682, -1533303, -469225, 442919,
- -26307, -321586, -275952, 463320, 216896, 251792, 815507, -1212255, 341987, 558346,
- 981937, -246961, 156229, -323196, 936840, -104153, 320512, -98784, -193274, -273267,
- -20938, -81068, -135828, 308164, -44023, -155693, -26844, -119185, -46708, -62814,
- 290447, 75699, -210990, 385473, -224949, 129923, -125091, 146566, 8590, 23622,
- -8590, 133681, -303332, -26844, 34897, 135291, -537, 82678, -127775, 22549,
- -34897, 115964, 11811, 116501, -137439, 60666,
- },
- {
- 11497627, 12676059, 302795, -4154844, 1493038, -3768834, -2102923, 333934, -1975148, 2145336,
- 1420024, -1082332, 3960497, -1061931, -6146635, -813359, -2141578, -1891396, 1570884, 172872,
- -467078, 165356, -2134599, -1491427, 133681, -1023813, 884226, -1519882, 591632, -2665027,
- -132607, -3333968, 838056, -795106, -739808, 551366, 838592, 793495, 663036, -1955821,
- 469225, 781147, -1158567, -146029, 653909, 408559, -177704, 939524, -2062658, 1540283,
- 139050, 459025, -1003949, 271120, -353798, 23622, 788127, 179852, -379031, 402116,
- -159988, -242129, 102005, 35970, -526134, 325881, 154619, 53150, 1074, 224949,
- -303869, 210453, -293668, 117038, 115964, -2147, 68183, 209380, -24696, -24696,
- 325881, -65498, 108448, 16106, 69256, -116501, 22549, -132607, 94489, -24159,
- 56371, -91268, 87510, -41339, 92342, 5369,
- },
- {
- 33823, 6331319, -7087233, 2043331, -732292, 1249836, -2697240, 1438814, 115427, -734976,
- -1973001, -651761, -6290517, -19853486, 8371965, -9520869, -5015448, 190052, -4184372, 612570,
- -5857262, 6535867, -3767223, 2960843, -3357591, -3346317, 812823, -2952790, -1301912, -2437931,
- 1296543, 817654, 82678, 1138166, -522912, -302258, -2377265, 217970, 651761, -1357747,
- -1713155, 961536, -599685, -381178, -721555, -120796, -651224, 153545, 965294, -863825,
- 116501, -281857, 619549, -956704, 388695, -556735, -195421, -270583, -190589, 653372,
- -35433, 737124, -256624, -239981, 170188, -17180, 163746, -240518, 387084, -363462,
- 417149, 88047, 280247, -100395, 240518, 89657, 26307, -368293, 207769, -186294,
- 167504, 2147, -124554, 122943, -211527, 255014, 136902, -108985, -126165, -53150,
- 176631, -92879, -129386, 20938, 178241, -135828,
- },
- {
- 14137959, -30617748, -918049, 746251, -5572720, 4269198, 6763500, -623307, -89657, -142808,
- -384400, 1185948, -786516, 6640020, 1781338, -3757560, -3551401, 2093797, 499290, -67109,
- 1188095, 1999307, -1662689, 268972, -386547, -103616, -706522, 383863, -1033477, -1926293,
- 1226750, -1616518, 1260573, -615254, 2000918, 489626, -1864553, 476205, -1425392, -88047,
- 405338, -1661079, -1548336, -330712, -894427, 6442, -923418, 409096, 629750, -196495,
- 692564, -266825, -442382, 738198, 433255, -154082, 615791, -574452, 398895, 40802,
- 44023, 359167, -117575, 264141, -326954, -235149, 467615, 181462, -181999, 6979,
- 36507, -128849, 204011, -117575, -91268, 162672, -39728, 20938, -29528, -162672,
- -70330, 64425, -134755, -56371, 33286, -75699, 90194, 214212, -222265, 27917,
- 100395, -195958, 15032, 43487, 96100, -150861,
- },
- {
- 373662, -4010963, -2139431, -409633, -559420, -495532, 75699, 205085, 1044214, 561567,
- -1841467, -2228551, -4751845, 28738700, -51363512, 4473209, -2385854, -2816425, -2391223, -6880001,
- 3936875, -7474854, -3116536, -58519, 2811056, -236760, 903554, -1468879, -678605, -1637456,
- 268435, -1732482, 1529008, 25233, 1465658, -1839320, 976031, 1659468, -1137093, -8590,
- 608812, -952409, 535260, -419296, -9127, 62277, -546535, -133681, -742493, 217970,
- 1035087, -610422, 124017, -704912, -1447404, -323196, 711891, -410706, 53687, -492311,
- -167504, -514322, -113280, -368830, -224412, -307627, 165893, -212601, -7516, 304943,
- 111132, 450435, -159988, 10737, -64425, -6979, 116501, -123480, 97711, -125628,
- -233539, 28454, -45634, -44023, -64961, -44023, -33286, 60666, -21475, 84289,
- -60666, -32749, 41876, -33823, 81068, -139050,
- },
- },
- {
- {
- 8143258, 81192064, 40925132, -4341675, 1081258, -93416, -260919, -1383516, 1123671, 191663,
- 1206349, 1614908, 271657, -2321430, -77846, 2550137, -67109, 3339337, -1942936, -1223529,
- 957778, -632971, -644782, 245350, 283468, 84289, 1741609, -1013075, 1013075, 1181653,
- 3625489, 1133335, -181999, 162135, -429497, 1895154, -856309, 1286880, 4832, -2046015,
- -722091, -233539, -17717, -81068, -514322, -186294, -173946, -1599339, -3221, 9127,
- 6979, -26307, -245350, -79994, -46171, -286689, 301721, 387621, -308701, 163209,
- 321049, -90731, -83215, -44560, -16643, 240518, 75699, 25233, -30602, 48318,
- 344671, -112206, 225486, 16643, -193810, -107374, 72478, 113280, 83215, 103079,
- 102005, -4832, 85362, 129923, 107374, 35433, -17180, -32749, -29528, -60666,
- 64961, 25233, 68719, 105227, 51540, 62814,
- },
- {
- 1477469, 26302916, 6548752, -4999342, -2914135, -820339, -846645, -118648, 165893, 221728,
- 477815, -923418, -1136019, -243203, 2250026, 3333968, -4005057, -1319092, -5454072, -2443300,
- -2088428, -908386, 373662, -530428, 4638565, 1105417, -1407139, -3746822, -1257889, -1183264,
- -110595, 2034741, 3059627, 1086627, 1780264, -1229434, -556735, -740345, 13422, 618475,
- -943282, 1182190, 90194, 139586, 1052267, -587874, 48855, -290447, 176094, -259846,
- -117575, 174483, 414464, 91268, -102542, -88584, -484258, -228170, 75699, 127775,
- 52076, 409096, 98247, -161061, 47782, 229781, 289373, 113817, -245887, -127238,
- 88047, -102542, -82141, 30602, 185220, 37581, -124554, 51003, 148713, 8590,
- -26844, 27380, 11274, -39192, 91268, 116501, 36507, -6442, -34360, -3221,
- -10737, 42950, 35433, -75699, -66572, 10737,
- },
- {
- -785442, -57276612, -17016124, 6589554, 4851703, 314606, 325881, -91805, 35433, 126165,
- -2030983, -45634, 1838246, -64961, -2860985, 1811403, 180389, -311922, -3804267, -2481417,
- -2500745, 3430068, -745714, -927713, -1020055, -1192927, -1219234, 295816, 361314, -423054,
- -586263, 868657, 2766496, -806380, -1307281, 667867, 1291711, 1342714, -1167694, 213138,
- 405338, 1424855, 1317481, -562104, -263604, -26844, 217970, 347355, -348429, -1611,
- -667867, 494995, 156229, 1142461, 1014149, -157303, -108448, -109522, -335544, -289910,
- -352724, 192737, 123480, 193810, 173946, 321049, -181999, 170725, 224412, 15032,
- -398358, -163746, 216359, 290984, -118648, -159988, 2147, 140123, -25233, 61740,
- -166430, -144955, -61203, -8053, 55835, -78920, -56908, -96100, 24696, 60130,
- -49392, -16106, 60130, -33286, -3758, 110059,
- },
- {
- 18640158, -3452080, -2207076, 2463164, -858993, -830539, -788127, -53150, -233002, -844498,
- -765041, -150324, -1105954, -509491, -5353140, -1149978, 815507, -5891622, -2700461, -970126,
- 616328, 820876, 938450, 1032403, 318364, -24159, 673236, 425202, 435939, 617402,
- -46708, -995896, -1018981, -343597, -265214, -940598, -1007170, 301721, -247497, -92879,
- 333397, -315680, -375273, -146029, -253403, 785442, 1611, 274341, -359167, -346282,
- 217970, -186831, 181999, 194884, 480499, 804770, 106837, 85899, -12348, -19327,
- -155156, 71941, -124017, 134755, -152471, 112743, 218506, -215822, 91805, 150324,
- -75162, -122407, -146566, -45634, -313533, -60130, -84826, 67109, 81604, 109522,
- -68183, -21475, -17717, 49392, -11274, -56371, -15032, -84289, 8590, 55298,
- -1611, -8053, 45634, 12348, -16106, 19327,
- },
- {
- 449898, 8844948, 1218160, 379031, -120259, 138513, -174483, -33823, 208306, 19864,
- 120796, -658741, -514859, 919123, 4969814, 380641, -2647311, 10695005, 13036836, 2688650,
- -537945, 151934, 2236604, 1932735, -93952, -496606, -1498944, -67646, 448824, 1255741,
- 2930778, -963146, -892816, -1374390, 1219771, 839666, -248034, 1000191, -442382, 184684,
- 417686, 947040, 238371, -352187, -856309, 98247, -275952, 522912, 454730, 469762,
- -124554, -447750, -512712, -263067, -433792, -196495, 27917, -545461, 206695, 622770,
- 609349, -167504, -340913, -115427, 137976, 47245, 189515, -54224, 64961, -161598,
- -29528, 172872, -17180, 55298, 229781, 214212, 179315, 127775, 156766, 187905,
- 104690, 10201, -157303, 6442, -20401, -43487, -17180, -20938, 82678, 94489,
- 30602, -537, -76773, 51003, 87510, 54224,
- },
- {
- 27994060, -45991584, -9912248, -99858, 437013, 343597, 177704, -1432909, -590558, 838056,
- -704375, -332860, -2635499, 363998, 352724, -678605, -612033, -88047, 858457, 867047,
- 926639, 466541, -120796, -861141, 1005022, 636729, 1491427, 192200, 504122, 588411,
- 1984275, -770410, 1245004, 812286, 1103807, -762357, -677531, -756988, 71404, 39192,
- 256087, -580894, -52076, 777389, 264141, -437550, -689342, -124554, 822486, 157840,
- -471373, 404801, 378494, -33823, -84826, 36507, 395674, 406411, 230854, -260382,
- -81604, 71404, 280784, -67109, 59593, 189515, 257161, 185757, 0, -147103,
- -44023, 46708, -190589, 264141, 100932, 122407, 127775, 6979, 19327, 210453,
- 44560, -33286, -41876, 27917, 174483, 110059, 33286, -14496, -135828, -17717,
- 54761, 63888, -5906, -66035, 1074, 108448,
- },
- {
- 244276, 3697967, -1068373, -1191853, 17180, 267899, 246961, 19864, 117038, -356482,
- -76773, -50466, -1475321, 6009733, -278636, 3772592, 3430068, 534187, 3598646, 1432372,
- -1396401, -1834488, -4007205, -8935143, -332323, 1647657, -245887, -1204202, -937377, -1466195,
- -171262, -1119913, 1446330, 1311576, 392990, -1020592, -726386, 445066, 366683, 748935,
- 572841, -481573, 151398, 292058, 1356673, 200253, 159988, -146566, -197569, -469225,
- -187368, 369904, 134218, 109522, 114890, 188979, 463856, -272194, -119722, 214748,
- -61203, 4832, 6979, 130997, -10201, -147103, -234076, 237297, -131533, -20401,
- -246961, -103616, -176094, 83752, 273804, 239981, 265214, -16643, -210990, -120259,
- 57982, 76773, -19864, -4295, -72478, 51003, -18254, 54761, 38118, -69793,
- -11811, -90731, -3221, -4832, -18790, 12885,
- },
- {
- -23595476, -11735998, -3514357, -2415382, -1688996, 31139, 348429, 46708, 590558, 632434,
- 1377611, 193810, -335007, -805306, -821413, 129923, -2433636, -1762010, 1415192, 315143,
- -47245, -774168, -100395, 357556, -895501, 832687, 1193464, 86973, -233002, 1414655,
- -255551, -1076963, -1030255, -1366873, 110595, 2230162, 264677, 357019, -1497333, -1126892,
- 373125, 1254131, 1011465, -84826, -423591, -409633, 201863, 996969, -318901, 461172,
- 16643, -861678, -18254, 174483, 122407, 851477, 529892, 274341, -227633, -298500,
- 490700, -181462, 4832, -225486, 172336, -149787, -63888, 61740, 114890, 82678,
- -246961, -428960, 12885, 223338, 144418, 187905, 331249, 144955, 278636, 87510,
- 151398, 89657, -27917, 125628, 19864, -47245, 27380, -46708, -39728, 174483,
- 75162, 56371, 26307, -75699, -27917, -18254,
- },
- {
- 137976, 8718247, 4467303, 735513, -221191, -265214, 201327, 291521, -259846, -158914,
- 1369021, 61203, 2001455, -205622, 2176475, 2944200, 1256278, -1633698, 2932389, -4238596,
- -496606, 1133335, -712965, 3884798, -3405372, -1651415, 185220, -15032, -1439888, -1691143,
- 383326, 1527935, 1498944, 849330, 407485, 359704, -69256, -240518, 572304, -146029,
- 144955, 353261, -246424, 676457, 843961, 442919, -82678, -519691, 34360, 22012,
- -76236, 133681, -537408, -575526, -213138, -225486, -10737, -32749, 395674, -4832,
- 122943, -99321, 118112, -255551, 37044, -351650, -173409, -69793, -117038, 310848,
- 119185, -197569, 158914, -54761, 47782, 26307, -120796, 154619, 76773, 60130,
- -33286, -24696, -127238, -106300, -46708, -537, 53150, 34360, 86436, -2147,
- 81604, -22549, -84826, 4295, -9664, 93952,
- },
- {
- -3395172, -48153564, 1472637, 1220845, 1776506, 4276714, -6838125, -2346663, -1072131, -368293,
- 258772, 364535, -1101122, -2421825, 2826089, 48855, 5724655, -101469, -637803, 3766150,
- 1874753, 922344, -368830, 660888, -1089848, 180926, 1331440, -175557, -291521, 211527,
- -807454, -1340567, -1757179, -725313, -746251, -14496, 493921, 155693, 307090, 737661,
- 448287, 379568, 264677, 548145, 615254, 148713, -689879, 41876, -354335, 384936,
- 134218, -196495, 12348, -20401, 162135, 423054, -79994, -302795, -264141, -205622,
- -36507, -56371, -234076, 42413, -80531, 104153, 88584, 228170, -237834, 11811,
- 38118, -30065, 54761, -64961, 73551, -114354, 41339, -89121, -67109, 2147,
- -205085, 20938, 77309, -129386, 99321, 78920, 55298, 90731, 44023, 21475,
- 58519, -31139, 537, 79457, 49392, 77846,
- },
- {
- 819802, 10079751, 2531346, -317291, -952946, 421981, 554051, 887448, 390842, 726923,
- 540092, -516470, -1626719, -3650185, 4536023, -4079682, 1554241, 1313186, 1109712, -3053185,
- -1212255, -1509144, 192737, 581431, 1687385, 456877, -594316, -5906, 1271310, 425739,
- 1316944, 1368484, -330712, -1222992, -942745, 36507, -1430224, -282394, -370441, 619012,
- -252329, -352187, 371515, 273267, -69256, 590021, 307627, -548145, 934692, 750546,
- 464930, 151934, -177167, 126702, 166430, 77309, 51540, 14496, -275415, 198105,
- -155156, -161061, 11274, 88047, 153008, -178778, -152471, 223875, -108985, 52613,
- 78383, -147640, 133144, 92342, -88047, 98247, -39728, -99858, 5906, 34360,
- 51003, 27380, -100395, -148176, -5906, 47782, -13959, 27380, -62277, -92879,
- 11274, -12885, 10737, 34897, 65498, 40265,
- },
- {
- -2569464, 24303072, 1796907, -346282, 1984812, -4080219, -4157528, -883153, 642635, 1851668,
- -1059246, -734976, 1329829, 1719061, -1842541, -4432943, -1633161, -455803, 57982, -967441,
- 246961, -121333, -1440425, -293668, -433255, -269509, 58519, -763967, -680752, 118648,
- -2337536, -2010045, -425739, -286689, 374736, -229244, 350577, 468151, -358630, -1159104,
- 296890, -556735, -209917, 897648, 655519, 73014, 19864, -496069, -71404, 2147,
- 1001264, -181999, -400506, -84289, -117038, -146029, 77309, 377957, -95563, -17717,
- -324270, -114890, -32212, 64425, -298500, 67646, 263067, -70867, 27380, 130460,
- 44023, -119185, 61740, 24696, 105764, 96100, 38655, 131533, -148713, 52076,
- 168577, 156766, 28991, 82678, 6442, -32749, -85362, -108448, 11811, 124017,
- 90194, 34897, 1074, -5369, 44023, 77846,
- },
- {
- -251792, 404801, -1811403, 934155, 70330, -10737, -486405, -435939, 510564, 215822,
- -562641, -1129576, -4487167, -17009144, -537408, -3092377, -4024921, -1614908, -2123861, -1100585,
- -679679, 355945, 4343286, -507343, -3688303, -4629975, 609885, -2679523, -1533840, 94489,
- -152471, 273267, -857383, 1432372, -302795, -1523103, -933082, -615254, 260382, -793495,
- -1093069, -217433, -143345, -1046898, -463856, -402116, 41876, 148176, 284542, -79994,
- -759672, -114890, 204548, -165893, 472446, -247497, -682363, 31139, -36507, 121870,
- 63351, 73014, 142271, 41339, 30602, -41876, -85899, -132607, 302258, 16106,
- 104153, 87510, 32749, 170188, 177167, 84289, -81068, 11811, -97711, -27380,
- -71404, 17180, 16106, -15569, -118112, 89121, 117038, 17180, -57982, -30065,
- -11274, 84289, 9127, -51540, 115964, 2684,
- },
- {
- -10199474, 104690, 840203, -4031901, -2747169, 1216550, 5759551, 603980, 1017907, 39192,
- 1430761, 108985, 1132798, -2813204, 11311870, -2057289, -3926674, 643708, 246961, -940061,
- 1163399, 1733019, -1057099, -934155, 14496, 723165, -221728, -107911, -1314260, -362925,
- -781147, -33286, 66035, 746787, 294205, 103616, -276489, -321586, -937377, -114890,
- -657130, -865436, -1277216, -1188632, -747324, -590558, -411780, 343597, 416075, 236223,
- -11811, -274878, 648003, 130997, 353798, -329639, -318901, 212064, 6442, 217433,
- 23085, -95563, 376347, -170188, -92879, -173946, 207769, 61203, -6442, 73551,
- -111669, -70867, 96637, -16106, -110059, -61740, 166430, 27380, -169651, -68183,
- -110595, -86973, -100395, -97174, -57445, -155156, 172872, 104153, -25770, -1611,
- 90731, -134218, -51003, 18254, 5906, -19327,
- },
- {
- -569620, -5401458, -706522, -452582, -349503, -9127, -548145, 118112, 876173, -424665,
- -1838246, -1308891, -520228, -9583146, 8574902, -4240744, -3882114, -2800319, -1614371, -1713155,
- -5196374, -5840082, -1582696, 1574642, 1510755, -1186485, -503585, -396748, 320512, -522375,
- -1298691, 321049, 517544, 349503, 457414, -146566, 1086090, 99321, -450972, -363462,
- 171799, 622770, 215285, -908386, 268435, -293132, -194347, -691490, -63351, 481573,
- -17180, 31139, 51540, -645856, -995359, -473520, 23085, 15032, 128312, 59056,
- -246424, -224949, 115964, -392453, 31675, -564251, -237834, 316217, -13959, 150324,
- 33286, 452582, 77309, 78920, 22549, -108448, 34897, 94489, 99858, -47245,
- -264677, -155156, -88584, 47782, -72478, -91805, 13422, -22549, 10201, 5906,
- -10737, -68183, 13422, 5906, -4295, -28991,
- },
- },
- {
- {
- -6244883, 19388556, 14042396, -5833640, 1089848, 311385, -158914, -830002, 847719, -1510755,
- 83215, 1292248, 624381, -709207, -1017907, 1737851, -769336, 783832, -3694746, 1117228,
- 414464, -336081, -1168231, -610959, 708133, 312459, 1191853, -240518, -284542, -646929,
- 1949915, -467615, 742493, 1467268, 733366, 1261647, -1306744, 1262720, 718870, -405338,
- 411243, -109522, 305480, 447750, -580357, 182536, 541166, -1363652, 241592, 431107,
- 385473, 291521, -233539, -72478, -33286, 12885, -91805, -131533, -282394, -6979,
- 234076, 21475, -189515, -145492, -250719, -12348, -68183, 38655, 24696, 1611,
- 178778, -40265, 271657, 175557, -46708, -121333, 87510, 250719, -84826, 33823,
- 70867, -6979, 25233, 64425, 38118, -99321, 133681, -49929, -23622, -52076,
- 68183, -32749, 9127, -12885, -3221, 44023,
- },
- {
- 313533, 10649371, -52613, -2095407, 1498944, 75699, -416075, -920197, 676994, -51003,
- -437013, -719407, 554588, -805306, -913754, -204011, -5460514, 550293, 987843, 1504849,
- 563178, -796716, -326954, -1609539, 2042794, 669478, -792421, -1769527, 675921, -511101,
- -462783, -445603, 931471, -5906, 492311, 206695, 1850057, 814433, 709743, 760209,
- -1091995, 1341104, 504659, -322123, -117575, -139050, 227096, -374199, -47782, -356482,
- 18254, 23622, 345745, 178778, 143345, -419296, -326418, 120796, -61740, -183610,
- 89121, 352724, 86436, 47245, -33823, 3758, -90731, 211527, -47245, -8053,
- 69256, -90731, -40802, 11274, 96637, 22012, -96100, -21475, 76236, 10737,
- 47245, -51003, 7516, 12348, 69793, 37581, 2147, 12348, -68183, 122407,
- -79457, -20401, -5369, 4832, 41876, -4295,
- },
- {
- -2523830, -28018220, 2684, -5265630, -550293, 268972, 70867, -199716, -261993, 390842,
- 195421, 453656, 2108292, -1774358, -2561948, 792958, -784905, 2153926, -865436, -75699,
- -1546725, 2935610, -387621, -132070, 659814, 879931, -186294, 741419, -876173, -216896,
- 249645, -175020, 1895154, -779537, 104153, -1100049, -157840, 579821, -582505, 413927,
- -401043, -420370, 457414, -170725, 85899, 677531, 85899, 173946, -291521, 5906,
- -945967, 434329, 195421, 233539, 79457, -227633, -34897, 118112, -143345, 42950,
- 46708, 57982, -296353, 205085, -120259, 235686, -280247, -120259, -104153, 214748,
- -127238, -70330, 128849, -11811, -20938, 164283, 10201, -2684, -144955, 130460,
- -20938, -93416, 90194, -34360, -47245, -10737, 0, 24696, 20938, 35970,
- 5369, -19864, -12348, -16106, -4832, -10737,
- },
- {
- -5659157, -32762548, -3720516, 1093069, 1104344, -213675, 25233, -228707, -225486, -303332,
- 261456, 256624, -443992, 1417876, -1261110, -337692, 294742, -2656974, 314069, 176094,
- 442382, 215822, 57982, 389768, 504659, 15032, -988916, -486405, 387084, 524523,
- 525597, -524523, -523449, -119722, 120796, 442382, -511101, 134218, -431644, 65498,
- 423591, -441308, -168577, 505732, -358093, 106837, 284542, 185757, -207769, 58519,
- 359167, -308164, 72478, 56908, -197032, 85362, 39728, 335544, 187905, -33823,
- 86436, 42413, 121333, 105764, 31139, 143345, 31139, -24159, -40265, 55835,
- 56371, 179852, -157303, 25233, -135291, 86973, -19327, 18790, -537, 52613,
- 15032, 73014, 8590, -52613, 28991, -12348, -48318, 2684, -47245, -13422,
- 18254, 18254, -15569, -8053, 31139, 13422,
- },
- {
- 10737, 6659884, -1217086, -882616, 398895, 57982, -296890, 130997, -206158, 190589,
- 150324, -154619, -260919, -2669322, -550293, 559956, -2489471, 78920, 1657321, -1457068,
- 484794, 19864, 967441, 1232119, -46708, 361851, -1848983, -21475, -413927, -148176,
- 1339493, -1038845, -22012, -531502, 148713, -543313, -1641751, 847719, -148176, -494995,
- 74625, 363462, 16643, 61203, -535260, 274878, 48855, 63351, -162672, -18790,
- -52076, 41339, -289373, 201863, -317828, -215285, 129923, -53687, -117038, -7516,
- -47245, -365072, -152471, -54761, 200253, -9664, 221191, 69793, 55298, 23622,
- 80531, 98247, -1074, 14496, -108985, -139586, 46171, -10201, -1074, 141197,
- 38655, 114890, -160524, -97174, 66572, -13959, 47782, 3221, 23085, -32212,
- -2684, 53150, 6979, -22549, -53687, 59593,
- },
- {
- -7111392, -72378792, 3397319, -983548, -479963, 332323, -115427, 692564, -920734, -959388,
- 1044214, 623307, -2509335, 1633161, 228707, -312459, -195958, -459562, 895501, -449898,
- 289373, -128849, 251792, -354872, 217970, -199179, 245887, -544387, -615254, -856846,
- 523986, -1232656, 1057099, -962073, -132607, -687195, -657130, -63888, 375810, 331249,
- 44023, -1141924, -224949, 501974, 409633, -336618, 42950, 26307, -78383, -58519,
- -330176, -4295, 154082, 54224, 364535, -119722, 358093, 98784, -22549, -265751,
- -17180, 30065, 126165, -81604, -47782, 18790, 27917, 102005, -74088, -136365,
- 4832, 133144, -52076, 9664, -24696, -31139, 59056, 34897, -65498, 63888,
- -8053, 3758, -5906, -198642, 86973, 45634, 41339, -39728, 66035, -1074,
- 31139, 19864, -39192, -9664, -47782, 63888,
- },
- {
- -597537, 3061238, 1689533, -733366, 241055, 9127, -16643, -278099, 235686, -17180,
- -151398, 182536, -1217086, 5190468, -2143726, 1772211, -572841, -1420560, 639950, -2231236,
- -773631, -14496, -718333, -3686156, 1071058, 415001, -1042066, 576063, 144955, -916439,
- 1086090, 166430, -265214, -937377, 339839, -90194, -576063, 229244, -102542, -190052,
- 794032, -351650, -254477, 169651, 144955, -391379, 306553, -103616, -235686, -432181,
- -345745, 102542, -208843, 1611, 198105, -34897, 75162, 140660, 75699, 172336,
- -134218, 151934, 120796, 23622, 9664, -28991, -126702, 195421, -30065, 39728,
- -308164, 37044, -59056, -74625, 28991, 9664, 103079, 46171, -76236, -95026,
- -78383, 67646, -48318, 55835, -70867, -5369, -12885, -40802, 16643, -53687,
- -13422, -13959, -6979, 31139, -5369, 2684,
- },
- {
- 11368778, 35348656, -8437463, -1424855, -299574, -178241, -214748, -343597, -233002, 75162,
- 1324997, 78920, -376883, -1016297, -287763, 1082332, -548682, 230854, 204548, -482647,
- 926102, 61740, -216896, 1063541, -214748, 334471, 55298, -188442, -299574, 491774,
- -681826, 18254, 119722, 69793, 179315, 832687, -578747, -232465, -921807, -454193,
- -374736, 260382, -100932, -15032, 139586, -304406, -354335, 680215, -383863, 118112,
- 153545, -107374, -71941, -279710, -53687, 125628, 10201, 200790, 172872, -119185,
- 279173, -247497, -37581, -244276, 319975, -23622, -5369, -74625, 56371, -98784,
- -63351, -184684, -68183, 60666, 56908, 9127, -4832, 92342, 32749, -103616,
- 136365, 73551, -95563, 39192, -11274, 10201, -35433, 5906, -78383, 104690,
- 4832, -13422, 44023, 7516, 46171, -50466,
- },
- {
- -962073, 192200, 760746, -1061394, 291521, -150324, 110059, -246424, 321049, -14496,
- -381715, -903554, 901406, 421981, 4299799, 237834, 1822677, -1030255, -209380, -3039763,
- 2989834, -293132, -2518462, 812823, -1266479, -642635, -2143726, 436476, -476741, 253940,
- 605590, -1267552, -185757, -533650, 18790, 750546, 90194, -244813, 485868, -319975,
- 341987, 614180, -563714, -280784, -124554, -117038, -230318, -82141, -307090, -112743,
- 66035, 47782, -264677, -85362, 410706, 142271, -171799, -38118, -15569, -237297,
- -33823, 51003, 261993, -326954, 11811, -159451, -91805, -136902, 14496, 105764,
- -77309, -175557, -26307, -247497, 23622, 78920, -97711, -10201, 1611, -34897,
- 5906, 37044, -154082, 11274, -57982, 28454, 37044, 108448, 62814, -55298,
- 20401, 35970, -34897, -14496, 8590, 39728,
- },
- {
- 3330747, -26655104, 3765076, -3930432, -1661616, 3132642, -6720550, 599685, -469762, -636192,
- 746251, 185220, 427886, -1155346, -175020, -8053, 2682744, -1602023, 656056, 1559073,
- -628139, 601295, -1127429, -148713, -833224, 75162, 354872, -862752, 84826, 301185,
- -428960, -637803, -1285806, -324807, 11274, -357019, -70330, -4832, 386010, 112743,
- 85362, 203474, -164819, -30602, -39728, 648540, 3758, 286689, -266288, 157840,
- 292058, -90194, 77309, 299574, -150861, 27917, -14496, 133681, -116501, 166967,
- -171262, -1611, -136902, -40802, 66572, -28991, -126165, 138513, -272194, 86973,
- 99321, 23085, -88584, -98784, 118648, -79994, -34360, -81604, -132070, 144955,
- -107911, -6979, 59593, -50466, 3221, -30065, 42950, 41876, -10201, 48318,
- -51003, 11811, -25233, 43487, -47782, 59056,
- },
- {
- -310311, 4945118, -3381750, -1435593, -250182, 745177, -99858, -960462, 28454, 213138,
- -283468, 882616, 166430, -961536, 4293894, -2981781, 5280126, -523986, -759136, 582505,
- -1269700, -1072668, 671626, 1073205, 282931, -176094, 1296006, -984084, 648540, -856846,
- 17717, 718333, -290984, 237834, -517007, 894964, -457951, 692564, 12885, 895501,
- -188979, -246424, 803696, 136902, -185757, -160524, -166430, -223338, 625992, -48855,
- 71941, 344671, -10201, 63351, -16643, -37044, -193274, -65498, -67109, 231391,
- -206695, -53150, 28454, -99858, 68719, 130997, -81604, 233002, 82141, 107374,
- -27917, -238371, 1074, -74625, -54224, 13422, 47782, -5906, -31139, 111132,
- 25770, -40265, 106300, -75699, -75162, -31139, -32749, -51003, 57445, -88047,
- 31675, -10737, -25770, 20401, 50466, 39192,
- },
- {
- -3144990, 18596672, -2466385, 1425392, 1596117, 75162, -1115081, 41876, 672162, -247497,
- -797253, -439160, 774705, 2666101, 1551557, -2493229, 45097, 907312, -347355, 209917,
- 280247, 376883, 123480, 544387, -757525, 636192, -14496, 334471, -607201, 1082869,
- -1120987, 195421, 48318, -574452, 732292, -179315, 21475, 97711, -471373, -351650,
- 179852, 56371, 27380, 434329, 424128, -225486, -150861, -491237, 503048, -277562,
- 463320, -90731, 103616, 188442, -106300, -190052, -24696, 101469, -95563, -309775,
- -267362, 18254, -22549, -5906, -25770, -35970, 37581, -49392, 78383, 25233,
- 113280, -114890, 175557, -22549, -52613, 106837, -22549, 47782, -83215, -23622,
- -18254, 58519, 16106, 26307, -105227, 72478, -62277, -2147, 5906, -18254,
- 63351, -4295, 4295, 33823, -13959, 31139,
- },
- {
- 407485, -307090, -702227, 1560147, -556198, -463320, 864899, -1096290, -170725, 805306,
- 395674, 111669, 7565585, 246424, -842350, 2477659, 9127, 646393, 535797, 297963,
- 5619965, -3062312, 694711, 136365, -359704, -1257352, 1643899, -1251983, -409633, 25233,
- 994285, 113817, -926639, 281320, -698469, -506806, -44023, 137439, -408022, -43487,
- -287763, -62277, -342524, -487479, 264141, -163746, 120796, -82678, -137976, 489089,
- -431644, -207232, 331249, -277025, 250719, 198642, -113280, -41876, -14496, -302258,
- -281857, -92879, 333397, -20938, 38118, -178778, 75162, 72478, -1611, -78920,
- -7516, 53687, -89657, -26307, 1074, 43487, -3221, 101469, -33823, 134218,
- -3758, -17180, -83752, -10737, -102005, 23622, -33286, 107374, 71404, 13422,
- -25233, 40265, 92342, 13422, -9127, 2147,
- },
- {
- 3282429, 18373334, -135291, -3684545, 372588, 314606, 793495, -2017024, -619549, 482647,
- 952409, -252329, 2451890, -4229469, 5591511, 885837, -214212, -278099, 446677, 507343,
- 332323, 518080, 514859, -1294933, -215285, 313533, -762894, -534187, -1241782, 1009854,
- -854162, 809601, -151934, 1021665, -822486, -150324, 448287, -278099, -394600, -190589,
- -327491, 661425, 96100, -361314, 370978, -69793, -316754, -131533, 123480, 86973,
- 341450, -116501, 249645, -249108, 263067, -180926, -367757, 186294, 63888, -108448,
- 5906, -12348, 235686, -204011, 84289, -133681, -60666, 118112, 5906, 10737,
- -156229, 32749, 64961, 63888, -207232, -192737, 31675, 55298, -63888, 25770,
- -36507, 10201, 47245, -18254, -57445, -86973, 45097, 20938, 71941, -37044,
- 6979, 18790, -35970, -18790, -1074, 67109,
- },
- {
- 718333, -3234647, -525597, -142808, 272194, 64961, 192737, 207232, 426276, 41876,
- -42950, 345745, -386010, -11653857, 16106664, -1057636, -1157494, -629213, 507343, 2878165,
- -135291, -1357747, 1570347, 348429, 189515, -672699, -699543, -258235, 540092, 169651,
- -246424, 1088237, 366146, 727460, 988916, -734976, 737661, 691490, -207769, 46171,
- 111669, 566936, 187368, -624381, -236760, -45634, -156229, -625992, 295816, 96100,
- -433255, 85899, 142271, 23622, -96100, -143345, 129386, 158377, -229781, -9127,
- 243739, 110059, 189515, -106837, 212064, -129386, 82678, 26307, 71941, 106300,
- -35433, 106300, 55298, 92879, -9127, 20938, -94489, -68183, -9127, 10737,
- -19864, -84289, -24696, 1074, 58519, -54761, 56908, 32212, 12348, -25770,
- 26844, -17717, 2147, 1611, 11811, 1074,
- },
- },
- {
- {
- 2762738, 31606664, -20196010, -3455838, 2815351, 386010, -489089, -379568, -504122, -1047435,
- -406411, 1388885, 57982, 972810, -2305861, 607738, 843961, -1564979, -1183800, 303332,
- 76236, -43487, -951872, -1139240, 1044214, 742493, 542240, -399969, -394063, -796180,
- 678605, -167504, 1189169, 732829, 940598, 620086, -804770, 619012, 649614, 260382,
- 91268, -314069, 406948, 4295, -4295, 67646, 106837, -365072, -184147, 365072,
- 178778, 209917, -4832, -20938, -45097, 315680, -234613, -241055, 122407, -132607,
- 3221, 199179, -14496, -171262, -161598, 12885, -238371, 56371, 25233, 149250,
- -2147, 103079, 56908, 165893, 88047, 77846, 32212, 134755, -21475, -40802,
- -49929, -68183, 35433, 42413, 24159, -70867, 57445, -45097, -71404, -38118,
- 22012, -29528, 0, 10737, -3758, 19864,
- },
- {
- -1293322, 5884105, 3535295, 208306, 575526, 151398, -332323, -918049, 289910, -88047,
- -1184874, -513249, 510027, 466541, -1610076, -1806571, -1097364, -418759, 4915053, 166967,
- -242129, -1013075, 146566, -1121523, -495532, 421444, 433792, -1532767, 317828, 46171,
- 163746, 384400, -956167, 1079647, -656056, 462783, 1226213, 900333, 499827, 605590,
- -259846, 606127, 302258, -168577, -420907, 490163, -151934, -157303, -188979, -389231,
- 14496, -63351, -63351, 142271, -18254, 73014, -291521, -23085, 42950, -188979,
- 0, 124554, 75699, 173409, -93952, -67646, -157840, -26307, 18254, -6442,
- 107911, -36507, 63888, 18254, -35970, 0, 71404, -55298, -12348, 3221,
- 59056, -17180, 13422, 42950, 2684, -40802, 7516, -39192, -57445, 12348,
- 24696, -33823, -45634, -22549, 41339, 19327,
- },
- {
- 4143570, -27677306, -4313221, -8581345, -564251, 270583, -503048, -383326, 235686, -217970,
- 836982, 506269, 754304, -168577, -2730526, -149787, -1706713, 2100776, 1039919, -23622,
- 320512, 490700, -8590, 171262, -30065, 882079, 51003, 457414, -809601, -201863,
- 277562, 346282, 280784, -1073742, 798864, -818191, -942745, -445066, 644782, -73014,
- 36507, -660888, -123480, -434329, 348429, 464930, -194884, -47782, 69793, -215285,
- -204548, -24696, 55835, 131533, -340376, -119722, 82678, 210990, -94489, 100395,
- 151934, -57982, -139586, -25770, -41876, -129923, -95026, -2684, -143345, 79994,
- 19864, -46171, -19327, -74088, 130460, 279173, -89657, -79457, -49392, 90731,
- 41339, -64961, 34897, 12348, 10737, -8590, -62277, 78920, 24159, 17180,
- 23085, 3221, -37044, 2147, 47245, -68183,
- },
- {
- -4763656, -31879394, -3071439, -738734, -205085, -12348, -55298, -708133, 57445, 453119,
- 259309, 61203, -155156, 243739, 768799, 32212, -207769, -2377265, 512712, 383326,
- 480499, 74625, 70330, 102005, 29528, 339302, -1012002, 62277, 8590, -305480,
- 203474, -388695, -98247, -176631, 121333, 836982, -565862, -86973, 28454, -40265,
- 371515, -322659, 140660, 176631, -16643, -218506, 303332, 64425, -10737, -165893,
- 236223, -37581, 2684, -23085, -187905, -24159, 66572, 258772, 157840, 126165,
- 29528, -91268, 134218, -41339, 74088, 59056, -44023, 61740, 51540, -87510,
- 126165, 278636, 3758, -32749, 8590, 39192, -537, -61203, -13959, -33823,
- -35970, 17717, -4832, -37044, 32749, 39192, -33823, -6442, -20938, -35970,
- 9664, 20938, -8053, -18254, 15569, 2147,
- },
- {
- -16643, 6328098, -479963, -619549, 112206, 66572, -38655, -70867, -498753, 663572,
- 179852, -764504, 372052, -337692, -5974837, 2770791, 394063, -6579890, -2215666, 65498,
- 1136556, 994285, -665720, -531502, 1331977, 594316, 951872, -492311, -710817, 89121,
- -34897, -315680, -386547, -11274, -838056, -460635, -891743, 106837, 23622, -433792,
- -455803, 217433, -175020, -32212, -172336, -64425, 420907, -127238, -50466, -202400,
- -140660, 42413, 51540, 55835, -294742, -13422, 73014, 9664, -47245, -140660,
- -394600, 32749, -77846, 81604, -55835, -52613, 20401, 108448, 158377, -61203,
- 155156, 81604, -52613, 15032, -74088, -128312, -63888, -53150, -54224, -45097,
- -3221, 95563, 11811, -79457, 16643, 34360, 30602, 26844, 38655, -61740,
- -23622, 19864, 57982, -1611, -72478, -16106,
- },
- {
- -9006010, -64548528, -1328219, -623844, 391916, 346819, -246961, 501437, 97711, -1062468,
- 405338, 384400, 74088, 197569, -343597, 791348, -620086, -545461, 640487, -650688,
- -501437, -129923, 497679, 16106, -68719, -296890, -493921, 335007, -937914, 67646,
- -737124, -340913, 298500, -1182190, -136902, -106300, -127775, -223875, 15032, 126165,
- -694174, -751619, 105227, 489626, 336081, -125628, -17717, 105764, -231928, -514859,
- 177167, 66572, -276489, 181462, 429497, -12885, -5369, -14496, -162135, -167504,
- 63888, 81604, 5369, -108985, -18790, 44023, 21475, 75162, -8053, -54761,
- 3758, 12348, 69793, -81604, 2684, 31139, -39192, -27917, 14496, -11811,
- 62277, 48855, 7516, -91805, -25233, -73551, 59593, -105227, 90731, 31139,
- 10201, 25233, -47782, 4832, -1074, -20401,
- },
- {
- 36507, 1826972, 357019, 280247, 245350, 48318, -238371, -115427, -15569, 204548,
- -41339, 497679, 339839, 211527, 2626909, 2257005, -2423435, -422517, -989990, -1381369,
- -578210, 90194, -1749125, 70867, 1052804, -301185, -1570884, 997506, 343061, -168041,
- 117038, 129923, 161598, -1366873, -587874, 251792, -696858, 38118, 153008, -494995,
- 307090, -23085, -97711, -6442, 41876, -292595, 15032, -45634, -301721, -233002,
- -158377, -102542, -260382, -72478, 101469, 113817, -222265, 217970, 219043, 40265,
- 45634, 77846, 163746, -46171, 34360, 2684, -93952, -89657, 72478, 52613,
- -62277, -132070, 53150, -110059, -115964, -31675, -14496, -83215, -55298, -9664,
- -44560, -41339, -18254, 24159, -12348, -23085, 24696, -23622, 37581, 37044,
- 18254, 68719, -19864, 5906, 13422, 537,
- },
- {
- -457414, 49272400, -777926, -3153043, 76773, -377420, 116501, -272194, -135828, 115427,
- 55835, 270583, 574989, -177167, -628676, 755377, 28454, 1613297, -119722, -808528,
- 213675, 460098, 186831, 192200, 1015760, 54761, -472983, 342524, -649614, -359167,
- -97711, 584652, 112743, 324807, 298500, -753230, -51540, -579821, -566936, 185757,
- -572841, 49392, -254477, 279710, 297963, 8053, -644782, 499290, -1074, -9127,
- -84826, 358093, 136902, -272730, -107374, -179852, -104690, 86973, 280247, 97711,
- -3221, 17717, -294742, 45634, 137439, 137439, -34897, -5906, 144955, -200790,
- -67646, -17717, -76236, -192737, 6979, 98247, -53687, -7516, -46171, -16643,
- 51003, -8590, 12885, 20401, 20938, 2147, -77846, -22549, -45634, -15032,
- 22549, -22549, 25770, 45634, -16643, 2684,
- },
- {
- 20401, -7200513, 926102, 39192, 102005, 78383, 171799, -110059, 169114, -59056,
- -318901, -9664, 462783, 909459, 3348464, -400506, 3477313, -942208, -1270237, -1138166,
- 1481764, 308164, -215822, -2186675, -1562831, 172336, -719407, -2177012, 1615982, -22012,
- 1024350, -1091995, -464930, -554051, -150324, 168577, -234613, -306016, 452045, 174483,
- 66035, 242129, -179315, -493384, -720481, -283468, -281320, 54761, -234076, -215822,
- 171799, -118648, 186831, -120796, 421981, 154619, -243739, -113817, -353798, -119722,
- 93952, 248571, 6442, 71941, -37581, 37044, -34360, -61740, 122943, 12885,
- -125091, 37044, -89657, -99858, -90731, 68183, 53687, -88047, -33286, -35970,
- -30602, 81604, -63351, 32212, -6442, -9127, -85362, 85362, 27380, -7516,
- -16643, 18254, 11811, -16643, -5369, -5369,
- },
- {
- -3499325, -15612206, 4034048, -4231080, -1446867, -3527779, 394063, 139050, -865436, -90194,
- 488016, -645319, 212601, 478352, -398895, 113817, 1089848, -339302, 92342, 1058710,
- -62814, 56908, -583042, -613643, -312459, -24159, -397821, -471910, 125628, -138513,
- -375273, -881542, -142808, -546535, 72478, -116501, 246961, -410706, 381178, -270583,
- -46708, 373125, -250182, 43487, 13959, 195958, 184147, 228170, -6979, -132607,
- 29528, -23085, -149250, 48855, 296890, -118112, -123480, 154619, -132070, 85899,
- 50466, -56908, 48855, -142271, -71404, 3758, -33286, -63351, -18254, 13959,
- 100395, -37044, -100395, -3758, -23085, 0, -120259, -51003, -24696, 35433,
- 56371, 13959, -50466, -5369, -57982, -69256, -36507, 0, -38118, 8590,
- -42950, 15032, 32749, -37581, -18790, 2147,
- },
- {
- 221191, 2254858, 559956, -2760590, -981937, 98784, -1398549, -142271, 69256, -493921,
- -83752, 145492, -660351, 1007707, 1376000, -306016, 2563022, -55835, 391916, 270583,
- -1002338, 492311, 391916, 209917, 471373, -383863, 904091, -246424, -176631, 103616,
- -497142, 389768, -85362, 567473, 155693, 173409, 544387, 220117, 220654, 174483,
- 36507, 289373, 428423, -25233, -106837, -350577, -220117, 32749, -70867, -122943,
- 27917, 153008, 329639, 226023, -89121, -184147, -162135, -138513, 27917, 68183,
- -171799, -21475, 44023, -34360, -111669, 136902, 60130, -20401, 104690, 65498,
- -41339, -61203, -51003, -105764, 537, -31675, 126165, 108448, 12885, 52076,
- -22549, -40265, 63888, 41339, -47245, -13422, 30065, -46708, 57982, 39192,
- -6442, -3758, -15569, 55298, -19864, 15032,
- },
- {
- 4573067, 6027987, -703838, 694711, 351114, 936303, 1305670, 641024, 171262, -667867,
- -1177358, 973884, 1775432, -496069, 2836826, -1302986, -228707, 955630, 85899, 42950,
- 104690, 446140, 279710, 497679, -766652, 656593, 25770, 60666, -144955, 136902,
- -97711, 160524, 36507, -81604, 493921, -50466, 494995, 108448, -42413, -59593,
- -381178, 443992, 559420, -37581, -413927, 154619, -183073, -106837, 83752, 85362,
- 10737, 11811, 260919, -66035, 187905, -187368, 1074, -19327, -8590, -262530,
- -143345, 25233, 69793, -194347, 51003, -51003, -6979, 78920, 87510, -49392,
- 56908, -5369, 51003, -43487, -62277, 73014, -33286, 34360, 12348, -11811,
- -30602, -35433, -5369, -55835, -57982, 69256, -36507, 35433, 3758, -78383,
- 6979, -31675, -27917, 26844, 3221, 3221,
- },
- {
- -358630, -239981, 40802, 1968706, -1153199, 215822, 522912, -318901, -361851, 359704,
- 381178, 681289, -14496, 9622337, -1554241, 1302986, 1253594, 770947, 638876, -226560,
- 3878892, 1440425, -3642669, 395674, 503048, -718333, 715112, -676457, 381178, -1099512,
- 1618666, 159451, -426276, -164283, -758599, 486942, -222265, 108448, -167504, -132607,
- -20938, -134755, -709743, 103079, -219043, 335544, -69256, -524523, -314606, 503048,
- 76773, -63888, -171262, 205085, -145492, -85362, 200253, -56371, -240518, -57982,
- -253940, -3221, 13959, -37581, 128312, 35970, -58519, 219580, -163209, -104153,
- 81604, 28991, -3758, -46171, -166430, -43487, -17180, 93416, 146029, 40265,
- 57982, 18790, -82141, -5906, -54224, 48855, -71941, 61740, 84289, 31139,
- 21475, 9664, -2147, 66035, -59593, -56908,
- },
- {
- 2691871, 17367238, -80531, 1228898, 1036698, -100395, -1117228, -334471, -1280974, 658741,
- 354335, -1151051, 1949915, 3525095, -5078262, 1298154, 2956011, -830002, 613643, 998580,
- 557272, 98784, 392453, -293132, -1204738, 25233, -705985, -728534, -1023276, 129386,
- 270583, 447750, 65498, 552440, -459025, 143345, 242129, -106837, -169114, 86436,
- -305480, 624918, -171262, 128849, 515933, 178778, -203474, -51540, 459562, -197569,
- 420907, 181999, -401579, -234613, 248571, 137976, 4295, -216359, 163746, -98784,
- 29528, 204548, 6979, -97174, 215822, -19864, 537, 100932, -6442, -46171,
- -17717, -73014, 65498, -10201, -138513, -92879, -39728, -21475, 100932, 31139,
- -2147, 13422, 114354, 52076, -59056, 29528, 10201, -64425, 13422, 8590,
- -4832, 52613, -5906, 8590, -9664, 28454,
- },
- {
- -507880, -2043331, 1220308, -538482, 137976, -74625, 251256, 624381, 101469, 218506,
- 790811, 600759, -1782411, 3768834, -8878234, 2639794, 596464, -242666, 1553704, 2334852,
- 207232, 1459215, 574989, -1541356, 1123671, 24696, -654446, 172336, -144418, -227633,
- 181462, 476205, 466541, 537945, 795106, -506806, 88047, 915365, 461709, -93416,
- 42413, 84826, -529355, 175557, -42950, -311385, -297963, -200253, 164819, -203474,
- -100932, -2147, -177167, 17180, 294742, 11811, -106300, 184684, -316754, -232465,
- 2684, 166967, -70867, 114890, -1074, 72478, 225486, -176631, 119722, 25770,
- 72478, -60130, -84826, -9127, -39728, 63351, -90731, -165356, -60130, 2147,
- 76773, 2684, 26844, 2147, 32212, -9664, 27917, 45634, 41339, 13422,
- 20401, 20401, -4295, -17180, -17717, 42950,
- },
- },
- {
- {
- -2608119, 72520520, 9321690, -7005629, 1081258, 746251, -486405, -338766, -280784, -259309,
- -471373, 660351, 68719, 429497, -2131378, -164819, 693637, -620623, 1451162, -35433,
- -448287, -329102, -289910, -893890, 677531, -250719, 209380, -399969, -369367, -530428,
- 826781, -61203, -124554, -338766, 251792, 863288, -505732, 178241, -201327, -77309,
- 228170, -236223, 386547, -159451, -26844, -340913, -373125, 392453, 191663, -66572,
- -287763, 39192, -38118, -161598, -275952, 120796, -104153, -27380, 392990, 25233,
- -168041, 37581, -18254, 23622, -78920, 156229, -99321, -42413, -19864, 91268,
- 31139, 48855, -83215, 9664, 28991, 155156, 5906, 11811, 159451, 0,
- -26844, -92879, 5369, 6979, -19864, 35433, -8590, 31139, -27917, 6979,
- 17180, 12348, 0, 33823, -5906, 1074,
- },
- {
- 889595, -1014686, -5995238, 772020, -256087, 417149, -325344, -200790, 228170, 321586,
- -738734, -199179, 600759, 841814, -1986422, -1291711, 2204929, 128312, 2717104, 614180,
- -5369, -1547262, 968515, -177704, -1448478, -271657, 989453, -1223529, 584116, -39192,
- 304943, 649077, -1677722, 821949, -117038, 216896, 37581, -459562, -549756, 383326,
- 37581, 89121, 18254, -120259, 38655, 449361, -166430, -51003, -51540, -405874,
- -113817, -27380, -252329, -85362, -270046, 480499, -57445, -245350, -156229, -100932,
- -142808, -126702, -155693, 66035, -112743, -74625, -10737, -173409, -47245, -56908,
- 98784, -123480, 48318, 30065, -108985, -121333, 96637, -3758, 76236, -17717,
- -88047, 49392, 84289, -14496, -42950, -37044, 38655, -5906, 50466, -95026,
- 42950, 26844, 0, -48855, -12348, -2684,
- },
- {
- -3537443, -23163832, 11367168, -4335770, -1406602, -814433, -549756, -1318555, -667867, 266825,
- 507343, -679679, -1322850, -343061, -1726577, 1138166, -1797444, 766652, 1486596, 1435593,
- 178241, -27917, -644245, -1293859, -304406, 884226, -702764, -129923, -417686, 99858,
- 614717, 131533, -1166084, -1556926, 138513, -439697, -1034013, -318364, 797253, -377420,
- 3221, 73551, -44023, -970126, 213138, -480499, -570157, -8053, 231391, 106300,
- 308701, 102542, -222265, -35970, -350577, -226560, 204548, 401579, 181462, 162135,
- 97174, -130460, 15569, -63351, 182536, -88584, 25233, 201327, 34360, -149787,
- -56908, 131533, -26844, -78920, 81068, 80531, -28454, 45634, -49929, 81604,
- 14496, 21475, 18790, 12885, 105764, -20401, -88584, 12348, 25770, 15032,
- -11811, -5906, -3758, 17717, 46708, -30602,
- },
- {
- 9378598, -12838731, -3021510, -690416, 67109, -33286, 146029, -354872, -264141, 154619,
- 121870, -552440, 73014, -20938, -676457, -57982, -93952, -2923799, 197569, 494995,
- 373125, 93416, 27917, -153545, -557809, -34897, -53687, 595927, -151934, -784368,
- 326954, -99858, 72478, -117038, 192200, 825171, -140660, -104690, 519154, 26844,
- 237297, 212064, 710280, 9664, -111669, -155693, 61203, -46708, 15569, -237297,
- 8053, -101469, 98247, -226560, -190589, -88584, -132607, 31675, -14496, 8053,
- -134218, -183073, -121870, 1074, -17717, -31139, -17717, -60666, 138513, -96100,
- 5369, 41876, 150324, 79457, 75162, 41339, -29528, -41339, -1611, -5369,
- -55835, -25233, -41339, 64425, 30065, 48855, 39728, -47782, 62277, 24696,
- -9127, -18254, -3758, -11811, -29528, -11274,
- },
- {
- 56908, 6751689, 681826, 22012, -216359, -5369, -148176, 199179, 10201, 125091,
- 168041, -108448, 1001264, -1131724, -7858180, 2492692, 263067, -1453846, 100395, 1027034,
- 1781338, 2230699, -331249, -861141, 693637, -937914, 2040110, 559956, -51003, 59593,
- 562104, 930934, 440771, 13959, -322123, 331786, 323196, 117038, -289373, -206158,
- -553514, 324270, -370441, -85362, 221728, -102542, 155693, -22012, 90731, 174483,
- -109522, -85362, 70867, -292058, -136365, 184147, 155693, -139586, -67646, 61740,
- -90194, 196495, -194347, 2684, -44560, -83215, -100395, -92342, 76236, -72478,
- -38118, 29528, 11274, -11274, 78920, 69793, -158914, -52613, -11274, -153008,
- -70867, -57445, 37581, 40265, -61203, 43487, -17180, -9664, 44023, -51540,
- 8053, 10737, -22012, -1074, 26307, -3758,
- },
- {
- 15960635, -34335044, -1597728, -242666, -452582, 199179, 389768, -393526, 1085016, 623844,
- -949188, -160524, 949188, -70330, -1013075, 672699, -303869, -264141, -207769, -697932,
- 224412, -90731, 316217, 476741, 409096, -13422, -424128, 601295, 60666, 521302,
- -614717, -84289, 507880, -398358, -27380, 88584, 498753, 64961, -7516, 8053,
- -288300, -239444, 152471, 113280, -89657, 26844, -166430, 13422, -19864, -257161,
- 332860, 324270, -27380, 104153, -119722, -146566, -253940, -71941, -162135, -37044,
- 46171, -4832, -73014, -216359, -23622, 74625, 32749, 47245, 120796, 82678,
- -13959, -38118, 15569, 15032, 38118, 92879, -66572, -44023, 54224, 17180,
- -8590, -24696, -2147, 40265, -24159, -92879, 7516, -48318, -38118, 28454,
- -2147, 15032, -19864, -25233, 55298, -19327,
- },
- {
- 363462, 3356517, -427349, 457414, 2684, -45097, -199716, 44023, -337692, -20401,
- 45097, -146566, -763430, -1691680, 2377265, 2565169, -2777233, -1318018, -333934, 770947,
- 932008, 1261647, -1075352, -106837, 1202054, 650688, -89121, 414464, 530428, -274341,
- -309238, -329102, -329102, -868120, -825707, -205085, -284005, 116501, -34360, -139586,
- 176631, -115427, 195421, -124017, 399432, -83215, -141734, 67109, -112206, -6979,
- 196495, 84826, 34360, -142271, -202400, 150324, -140660, -189515, -110059, -24696,
- 47245, 55298, 204548, -115964, -61203, 59593, 82141, -10201, -51003, -33286,
- 212064, 8590, 55835, -1074, 2684, -7516, -18790, -142271, -73014, -12885,
- 34360, -61203, 0, -25770, 30602, 23622, -7516, 13959, 12348, 2147,
- 27917, 61740, 18254, -31139, 20401, 10737,
- },
- {
- -4854387, 42746736, 5855114, -46171, 996432, -287226, -102005, 84826, 315680, 148176,
- -777926, -928250, 795106, 1488743, 288300, 1187022, 82141, 260919, 788127, 97174,
- -316754, 560493, 260382, -685047, 473520, -11811, -25770, 677531, -405874, -8590,
- 319438, 609349, 461709, 213138, 394600, -489626, -134218, 198642, 280784, 469762,
- -108448, 347355, 18254, -108985, -89657, 103079, -146566, 456340, 165356, -306016,
- -351650, 120796, 284005, 119722, -41876, 130460, -24159, -103616, -3758, 16643,
- -27380, 159988, -202400, 29528, -114354, 63888, 26844, 62814, 90731, -67109,
- 11811, 31139, 105764, -69256, -84826, 5906, 77309, -52613, -12348, 98247,
- -17180, -42950, 74088, 57982, 34360, -6979, 19327, -17180, -30602, -64961,
- 29528, 45634, 1074, 22549, -27917, 32749,
- },
- {
- 829466, -4415764, -751619, 717260, -289910, 145492, 169114, 124017, 56908, 46171,
- 197569, -45634, -267362, -2527052, 1957431, 645856, -34897, -1868311, 343597, -1112933,
- 233002, 1225139, 535260, -297963, 272730, 1525787, 1125281, -2416993, 2108829, -11811,
- 543850, -238371, -62277, -14496, 39728, -714038, -445603, -56908, 319438, 458488,
- 137439, 3221, 170188, 163746, -366683, -208843, -6442, 135291, -90731, -96100,
- 325881, 537, 408559, -40265, 133144, -90194, -100932, -98784, -278099, -41339,
- 26844, 23622, -6442, 210453, 44023, 217970, 129386, 39192, -2147, -60666,
- -138513, -48855, -16106, 146029, -77309, 26844, 72478, 25233, -67109, 6442,
- -92342, 15032, 53687, 48318, 38118, 2147, -85362, -17717, -537, -7516,
- -1611, -23085, 25233, 24159, -24696, 2147,
- },
- {
- 4216584, -9441412, 5290326, 1663226, 772557, -1609539, 3759170, -644245, -475131, 105764,
- 360777, -732292, -848793, 677531, 1181653, -1297080, 872952, 7516, -368293, 1054951,
- 191126, -344671, 350577, 314606, 445603, 166430, -173946, 277025, 271657, 11811,
- 110059, 90731, 953483, 295279, 294742, -35433, 477815, -548682, -288837, -109522,
- -106837, -3758, -514322, 112206, 173409, -132070, -94489, 171262, 141734, -31139,
- -177167, 115964, -33823, -330712, 258772, -44023, -190052, 2684, -24159, -98247,
- 245887, -93952, -42413, -92879, -135291, 76773, -23622, -28991, 141734, 26844,
- 88584, -23085, -40265, -42413, -59593, -64425, -33823, -87510, 89657, -14496,
- 42950, 71404, 17180, 2147, 42413, -1074, -68719, -6979, -12885, -54761,
- 4832, -51003, 67646, -17717, 15569, -46708,
- },
- {
- -301185, 290984, 2492692, -273804, -202937, -174483, -1971927, -223875, -384400, -157303,
- 454193, -1028108, -1131724, 33286, 353798, -1478543, -820876, -1466731, 467615, -1742683,
- 366146, 1202591, 84289, -602906, 140123, -694174, -402116, -249108, -377957, 422517,
- -260382, 149250, -377420, -172336, 103079, -437013, 129386, -331249, -49392, -24696,
- 88584, 197569, -77846, -115427, -84826, -347892, -173946, 167504, -219043, 11274,
- -69256, -272730, 5369, 58519, -59056, -87510, -31675, -69793, -51540, 146566,
- -24159, -142271, 34360, 113817, -42950, -48855, 106300, -76773, -67109, -17180,
- -25233, 73014, -9664, -47782, -11274, -12348, 34897, 27380, 93952, -34360,
- -53687, 41339, -41339, -1074, 41339, 44560, -12348, 19864, 4832, 76773,
- -3221, 11274, 9127, 15032, -33286, -44023,
- },
- {
- -3181497, -4219806, -1379758, -2261837, -5369, -1151588, 2084133, 1389422, 22012, -35970,
- -2287070, 743566, 294205, -2092723, 2724083, 229781, 724776, 209380, 208843, -679679,
- 619012, 515396, -214748, 283468, -548145, -329102, -353798, -858993, 64961, -454193,
- 496069, 139586, 91805, 286689, -127775, -551903, 461709, 366683, 362925, -183610,
- 10201, 191126, 236760, -348966, -401043, 163746, -139586, 98247, -336618, -41876,
- 130997, 47782, 159451, -386010, 232465, -121333, 86973, -67646, -201863, 11811,
- -80531, 34360, 101469, -75699, -30602, 25770, -10737, -7516, 117575, 15569,
- -70330, 62277, -13959, -57445, -48318, -17180, -51540, 56908, 26844, 6442,
- -9127, 22549, -47245, -97174, -16643, -46171, 56371, 45097, 11811, 12348,
- -18254, 1611, -38118, -6442, 12885, -6979,
- },
- {
- 182536, -1655710, -1264331, 2681133, -1596654, 472446, -101469, 200790, 67109, 45097,
- -736587, -116501, -4413079, 2167348, -2117956, -2330020, -2191507, -775242, 632971, 152471,
- -1698660, 587337, -3935801, -1306207, 95026, 974958, 161061, -593242, 822486, -700617,
- 418759, 92879, 340376, 3221, -336081, 490163, 87510, 253940, 568546, -266288,
- 62814, 304406, -432718, 112743, -220654, 53687, -312459, -500901, -142271, 528818,
- 378494, 51003, -513249, 207769, -23085, -178778, -178241, 53687, -136365, 57982,
- -37581, 283468, -241592, -158914, -10201, 180926, -205085, 63351, -77309, -54761,
- 147103, 9127, 52076, -17180, -25770, 7516, -45634, 77846, 66035, -86973,
- 11811, 53150, -31139, 15032, -40802, 23622, 5369, -41876, 537, 51540,
- 38118, 53150, -56908, -3221, 16106, -68719,
- },
- {
- -5033165, 3708704, 483721, 4627291, 64425, 51540, -384936, 465467, -174483, -199179,
- 467615, -1253594, 1268626, 1433982, -8435853, -594316, 2326262, -602369, 1420024, 373125,
- 92342, 468688, 141734, 975494, -697395, -8053, -745714, 274341, 49929, -863825,
- 120796, -244813, -277562, -96637, -24159, 290984, 11274, 139050, -152471, 244813,
- -348429, 592706, -19864, 71941, 279173, 287763, 17717, 464930, 458488, -561030,
- -52076, 416075, -175557, -299574, 156766, 193274, 178241, -224949, -25770, 34897,
- 52076, 221191, 45097, -79457, 153008, -33823, 241592, 77846, 21475, -35970,
- 97711, -122943, 3221, -71404, -15032, 9664, 51003, -131533, 21475, 41339,
- 31675, -83752, 11274, 63888, -24696, -8590, 78920, -44560, -40265, 27917,
- 5906, -26844, 32212, 27380, 9664, -16106,
- },
- {
- 312996, -2630668, 130460, -61203, 362925, -171262, -169114, 708133, -98247, 208843,
- 1144609, 420907, -769873, 8815420, -12646531, 258235, 1708323, 861678, 1027034, 1858110,
- 179852, 2321967, 1013612, -789200, 1068373, 203474, -576599, -310311, -317291, 191126,
- -274878, -875100, 26844, -330712, 238371, 375810, -103079, -208843, 264677, -359167,
- 162135, 173409, -392990, 141197, 475668, -217433, 85899, 117038, 96100, -195421,
- 95563, 12348, -116501, -213138, -44023, 69256, -89121, 16106, -73551, -84826,
- -199716, 73014, -117038, -78383, -130460, -80531, -15569, 28991, -38655, -82141,
- -30065, 36507, -158914, -71941, -45634, -61203, 91268, -11811, -53687, -26307,
- -18790, -8053, 2147, 68719, -26307, 26844, 2147, -39728, 5906, 67109,
- -2147, -5369, 50466, 537, -33286, 24159,
- },
- },
- {
- {
- 6017786, 73981352, 5279589, -3736085, -273267, -518617, -59593, 281320, -464393, -178778,
- 644245, -133144, 472983, -1730335, -1255741, 963146, -89657, 965831, 858993, -318901,
- -628139, -685047, 275415, -146566, -419833, 260919, 47782, -374199, -236760, 290984,
- 265214, 787053, -651224, -176094, 17180, 660888, 416612, -126702, -108448, 6442,
- 126165, -27380, 102005, -248034, -76773, 49929, -488553, -73014, 648003, -121333,
- -194884, -1074, -114890, -187905, -294742, -73014, -45097, -70330, 118648, 252329,
- -106837, -134755, -47245, -2147, 21475, 34360, 75162, -42950, -70867, 61203,
- 77846, -46171, -20938, -53687, -38655, 94489, 42413, 57982, 104153, 108985,
- 13959, -6442, 5369, -1611, -37581, 40265, -3221, 84289, 23085, 32212,
- -22012, 22012, 22549, -6979, 537, 6442,
- },
- {
- -339302, -9844065, 1868311, 665720, -537945, -261456, 97174, 566399, 35433, 12885,
- 554051, -746251, -249108, 263067, -634045, -576599, 1443646, -494995, -348966, 1078037,
- 681289, -1094680, 468688, -18790, 91268, 611496, -1025960, -45634, 300111, -759672,
- 96637, 811212, -561030, 74088, 605054, 544387, -340376, -339839, -530965, -155693,
- 5369, 51540, 270046, 245887, 42950, 12348, -25770, -13422, -30065, -336081,
- -5369, -110059, 19864, -53150, -241592, 104690, 90731, -144955, -344671, -35433,
- -89657, 27917, -200790, -78920, -102542, 32212, 105227, 11811, -143345, -51540,
- 96637, -145492, -66572, 15032, -28991, -75162, -59593, -13959, 86973, -8590,
- -47245, 22012, 48855, -20401, -12348, -2684, 63888, 23085, 86973, -55835,
- -20938, 31675, 24696, -2684, 8590, -36507,
- },
- {
- 2445447, -4502200, -7992398, -1730335, -2272038, -710817, 18790, -1435593, -1129040, 628139,
- 185757, -415538, -1586990, -2165737, 1005022, 629213, 471910, -368293, 1486596, 399969,
- 217433, -559420, -426276, -1090385, -507343, 289373, 425202, 57982, -309238, -39728,
- 303332, 417149, -886374, -667331, -937914, -671089, -178241, -82141, -244813, 114354,
- 47782, 299037, -265214, -362388, 34897, -804233, -179852, -33823, 420907, -64961,
- 76236, 500901, -201863, -76773, -200253, -157303, 238908, 190052, 94489, 167504,
- 15569, 137976, -139586, -3221, 235149, 83752, 34360, 20401, 127775, -115964,
- -105227, 159988, 53150, -33286, -14496, -23622, 55298, -2684, 26307, 22012,
- -58519, 92342, 44560, -48318, 60666, 12885, -41339, 17717, -39728, 36507,
- -21475, -22549, 18254, 4295, -5906, 30065,
- },
- {
- -8229158, 5852967, 1449015, 471373, -1460289, 590558, -203474, 250182, -404264, -469225,
- -318364, -417149, 1294396, -569620, -1473174, -551366, 179315, -3041374, -16106, 341987,
- 415538, 185757, -60130, -125628, -482647, -430570, 407485, 816044, -721555, -120259,
- 547071, -93416, 228707, -46171, 16643, 414464, 272730, -71404, 398895, 20938,
- 239444, 348429, 420907, -203474, -9127, 321586, -33286, -110595, 180389, -423054,
- 129386, -89121, -31675, -95563, -43487, -271657, -142808, -33286, 137976, -187368,
- -88047, -56908, -84289, 37581, 31139, -85362, 16643, -32749, 68183, -2147,
- -45097, -95563, 77309, 91268, 8590, 27380, -16643, 18254, 19864, 26307,
- 38655, -33286, -2147, 56908, -16643, 55835, 20938, -3221, 31139, 38655,
- 13959, -38118, -9664, 3758, -12348, -11274,
- },
- {
- -324270, 7033009, 592169, -12885, -140660, 5906, -163209, 78383, 259846, 227633,
- -4832, 536334, 173409, -219580, -7587597, -1060320, 535260, 3545496, 2910377, 355409,
- 406411, 1442572, 602369, -695785, 838592, -1724966, 509491, 714038, 238371, 104153,
- 1551020, 467615, 183073, 493384, 104690, 116501, 466004, 200253, -264141, 62277,
- -353261, 75162, -22012, -265214, 123480, 106300, -339839, 312459, 302795, 185757,
- 26307, -210990, -102005, -180926, 40265, -151934, 61740, -57982, -56908, 38118,
- 8053, 98247, -241055, 40802, -17717, 37044, -81604, -84826, 22549, 18254,
- -96637, -47782, 75699, -30065, 10201, 133144, -77309, -52076, 39728, -84826,
- -37581, -69256, -25233, 19864, -26844, 5906, -22012, 13422, 10737, -6442,
- 4832, 19327, -34897, -28454, 28991, 28991,
- },
- {
- -14146549, -2924336, 5970005, -1063541, -434865, 135291, 481573, -499290, 777926, 765578,
- -408559, -294205, -206695, -40265, -180926, 136365, 366683, -296353, -274341, -255014,
- 251792, 99858, 4832, 463320, 495532, 183610, -121870, -348966, 197569, 13959,
- 370978, -117038, 242129, 184147, 30065, 241592, 87510, 477278, -249108, 140660,
- -27917, 155156, -456877, 109522, -74088, 20401, -193274, -380641, 280784, -22549,
- 149787, 1074, 462246, 119722, -403727, -233002, 73014, 18254, 19327, -120259,
- -136365, 1074, 27917, -125628, -93416, -61203, 126702, 66035, 75162, 55835,
- -35970, 10737, -24696, 30602, 20938, 69256, 3221, -32212, 76773, -28454,
- -76236, -73551, -17180, 19327, -4295, 5906, -27380, 18254, -67109, -10737,
- 35970, -5369, 13422, -27380, 19864, 11811,
- },
- {
- 34897, 2876554, 1468879, -77846, -14496, 86973, 121333, -111669, -518617, -179315,
- 24159, 40802, -1399623, -619549, -849330, 1441498, -1418950, -1086627, -1051193, 1609539,
- 803696, 441308, 139586, -99321, -304943, 140123, 1402307, 59056, -524523, 494995,
- 262530, -89121, -810675, -30602, -622233, -114354, -287226, 172336, -347892, 349503,
- 244813, -201863, 360240, -129923, 121870, 112206, 202937, -92879, -232465, 62277,
- 137439, 9664, 113280, -60130, -137439, 134755, 3758, -223875, -211527, 220117,
- -71941, -63888, 64425, 25770, -68183, 33286, 159988, 154619, -180389, -76773,
- 74088, 129386, 39192, 62277, 74088, 46708, -9664, -35433, -69793, -19327,
- 11274, 15032, -49392, -26307, 26307, 12885, 8053, -11811, -30065, -49392,
- -6442, -31675, 39728, -15569, 9127, 8590,
- },
- {
- 4593468, 31177704, 2406256, 3064996, -388158, 49392, -999654, 497142, 209917, -153008,
- -190589, -692027, -476205, 770947, 1781338, 738734, -252866, -799938, 594316, 959925,
- -39728, 28991, 491237, -386547, -315143, 258772, 113280, 4832, 239444, 227096,
- 459562, 172872, 608812, 226023, -46708, 401043, 50466, 169114, 82141, 218506,
- 289373, 368830, -89121, -465467, -67109, -34897, 119722, 132070, 166967, -106300,
- -240518, -153008, 133144, 195421, -25233, 231928, 69793, 23622, -84826, 28991,
- -147640, 115427, -2684, -107911, -151934, 537, 55298, 104690, -4832, 66572,
- 11811, -66035, 119722, 100395, -37581, -62814, 64425, 93416, -24159, 82141,
- 11811, 8590, 32749, 64425, -16106, 20938, 60130, -19327, -16643, -10201,
- -1074, 73551, 5369, 1074, 6442, 1074,
- },
- {
- -95563, 2930242, -2324114, -71404, -35433, -78920, 103616, -5906, 260382, -4295,
- 552440, -723702, -312996, -2321967, 1778117, -605054, -599685, -1174674, 1362578, -1317481,
- -922881, 1454383, 540629, -110595, 1075889, 1249836, 777389, -816581, 170725, 685584,
- -157840, 1106491, -201327, -2684, -282931, -956704, 294742, 172336, -65498, 170188,
- 294742, 176631, 288300, 140123, 111132, 217970, -121333, -197569, 107374, -71404,
- 79994, 184147, 79994, 168577, 9664, -68719, -84289, 29528, -100395, -40802,
- 17717, -58519, -69793, 13959, 71404, 116501, 8053, 44560, -85899, -106837,
- -107374, -159988, -52613, 180389, -9127, -57982, 32749, 110595, -59056, -19327,
- -10737, -67646, 48855, -31675, 44560, -8590, 41876, -1611, -12348, -34897,
- 37044, -27380, -4832, 27380, -3758, 27380,
- },
- {
- -4587562, 4080219, -431107, 3313567, 571768, 2532957, 1611, -1055488, 119722, 505732,
- 332323, -419296, -602906, 38655, 1646583, -2739116, 1825361, 316754, -862752, 875100,
- 211527, -289373, 325881, 660888, 367757, -51003, 185220, 474057, -48318, 219580,
- 403190, 272194, 401043, 736587, 654983, -529355, 320512, -58519, -424128, 48855,
- 102542, -296890, -152471, -337155, 82141, 319975, -68719, -158914, 232465, -10201,
- 24696, 68183, 197032, -130997, -58519, 88047, -89657, -96100, -18790, -104690,
- -3221, 86436, -89657, 11274, -149250, -3758, 25770, 40802, 93416, 70867,
- 5906, 28454, -8053, -60130, -48855, -88584, 62277, -63351, 41339, 11274,
- -60130, 54224, 52613, 24696, 81604, 37044, 20938, -8053, 25233, -15032,
- 17717, -51003, -2684, 20401, 14496, -9127,
- },
- {
- 196495, -522912, 947577, 1172526, 432181, -125628, -1321239, -215285, -905164, 625455,
- 432718, -529892, -996969, 366146, -132607, -1435593, -1457068, -2383170, 2357937, -2603287,
- 466541, 205085, -127238, 45634, 561030, -935229, -516470, -490700, -54224, -477278,
- -293132, 325881, -668941, 27917, 165356, -595927, -347892, -118648, -162672, -13959,
- 83215, 288300, -178241, -191126, -110059, -181999, -155156, 120259, -55298, 492848,
- -296353, -166967, -246961, -180926, 137976, -74088, -100932, 69793, -67646, 113817,
- 104153, -46708, -15032, 27380, 99321, -100395, 69256, 64961, -53150, -37044,
- 15032, -10201, -72478, -12885, 18254, -25233, -50466, -63351, 99321, -41339,
- -55298, 70330, 1074, -78383, 8590, 41876, -39192, 6979, -30065, 6442,
- 34360, -5906, -1611, -15032, 16106, -22549,
- },
- {
- 1226213, -7696045, -3108483, -3291019, 309238, -570694, 1278290, 574989, 25770, -10201,
- -2040110, -229781, 17717, -580357, 473520, 1253057, 301185, 149250, 259846, -531502,
- 506269, 519691, 15032, -64961, 81068, -694711, -378494, -500364, -374199, -420370,
- 811212, -119722, -181462, 177704, -114354, -599148, -248571, 146029, 492848, -170188,
- 466541, -177704, -425739, -10201, 45097, 13959, -100395, -205085, -71404, -153545,
- 259846, 113280, -108448, -163746, -34897, -6979, -5369, 23085, -298500, -9664,
- 38655, -98247, 3758, 119722, -54761, 46708, -6442, -46708, -12348, 137439,
- -53150, -4832, 15569, -42950, 10737, -34897, -9127, 12348, -26307, -17180,
- 23622, 95563, -4295, -90731, 17717, -83752, 73551, 18254, 8590, 59056,
- 2147, 26844, 27380, -13959, 9127, -11274,
- },
- {
- -74088, -3474629, 557272, 1138166, -160524, 78383, -115964, 78383, -102005, 295816,
- -108448, 537408, 2619930, -8672613, -2776160, -596464, -3041374, -1264331, 303332, 949188,
- -2685965, -629213, -947577, -1338419, 70330, 842350, -381715, -206158, 606664, -141197,
- -237834, -35970, 184147, -41876, 634581, -146566, -167504, 473520, 232465, -62277,
- 236223, 249645, -217970, -79994, -15032, -200790, -388695, -128849, 211527, 36507,
- 350040, 140660, -76773, -111669, 247497, -170725, -158377, -97174, -47782, 31675,
- 0, 219043, -226023, -27917, -67646, 20401, -73551, -91268, -14496, 74625,
- -8590, 16106, 26307, -30602, 168041, 17717, 29528, 84826, -54761, -72478,
- -17717, 12885, -29528, -45634, -13959, -14496, 53687, -35433, -75162, 77846,
- 12348, 49392, 43487, -29528, 11274, 8590,
- },
- {
- 3691525, -8641474, 525597, 1921998, -88584, -857383, 795106, 1027571, 153008, -380641,
- -395137, 928787, 388695, -2401961, -2532420, -268435, -1149441, -253403, 1202591, 151934,
- -223875, 676457, 706522, 803159, 269509, -570157, -761820, 689342, 113280, -555125,
- -144418, -492311, -143881, -397821, -22012, 93416, 196495, -187905, -63888, -1074,
- 292595, 85899, 425202, -61203, -100395, -4832, 71404, 395137, 189515, -196495,
- -258772, 113280, 195958, -97711, -34360, 171799, -107911, -28991, -236760, 260382,
- -34360, 21475, 47782, -20938, -84289, 48855, 83215, 60666, 93952, -38655,
- 34360, -83752, 5906, -30065, -9664, -17717, 21475, -58519, -81604, -42413,
- 31139, -54761, -64425, 3758, -8590, -67109, 52076, 66572, -38655, 10201,
- -2147, -40802, -4832, 8053, 35433, -10737,
- },
- {
- -447750, -2280628, -329102, 572304, 8590, -193810, -154082, 49929, 930934, -471910,
- 770947, 194347, -179852, -3228742, 4725001, 1737314, -603443, 1595580, 28454, 1217623,
- 486405, 433792, 1261110, 700617, 692564, -932008, -484258, -417149, 280784, 463320,
- -339302, -193810, -379031, -802622, 254477, 433792, 153008, -504122, -89657, 16106,
- 390842, 147103, 510027, -260382, 184147, -159988, 347355, 40802, 16643, -187368,
- 193810, 89121, 124017, -372588, -207769, -68183, 17180, 76236, 78383, 286689,
- -83215, -57445, 12348, -64961, -41876, -137976, -179852, 104153, -22549, -68183,
- -132070, 72478, 67109, -51540, 15569, -47245, 51540, 48855, 5369, -61203,
- -97711, -63888, -17180, 17717, -26844, 49929, 6979, -49929, 3221, 33286,
- -11274, -24159, 18254, 46708, -4832, -22012,
- },
- },
- {
- {
- -7271917, 33774548, -8458938, -1249299, 1243393, -663036, -159988, 990527, -67646, -595927,
- 665183, -310311, 369367, 328028, 207232, 1326608, 121333, 1265405, -1289027, -370441,
- 540629, -68183, 586263, 318901, -459025, 388695, -105227, 318364, 11274, 150324,
- -49929, 625992, -460635, -73014, 196495, 392990, 246961, -475131, -164283, -74088,
- 139586, 230854, 3758, -664109, -310311, 261456, 34897, -264677, 493384, 183610,
- 65498, -15032, -45634, 112743, 59593, 48855, -41876, -84826, -164283, 99858,
- 69793, -64425, -38118, -181462, -26844, 28454, 120796, 60130, -128849, -44023,
- 537, -71404, 1611, 61203, -16106, -55298, -92879, 58519, -75162, 69256,
- 4832, 112206, 33286, -39728, -13422, -58519, 42413, 6442, 2684, 13422,
- -22549, -13959, 32212, -26307, -2147, 6979,
- },
- {
- 411243, -14034343, 320512, 1056562, 142808, 206158, 737661, -86973, 65498, 241592,
- 1394254, -320512, 90194, 832687, 741956, -495532, 401043, -346819, -493921, -292595,
- 748398, -1181116, -150324, 569083, 1194538, 891743, -1300838, 1067299, 392453, -536334,
- 162135, 129923, -158914, 223875, 292595, 742493, 107374, 223338, 158914, -182536,
- -284542, 329639, 536871, 259309, -497679, -99858, 43487, 8053, 41876, 150324,
- 331249, -213138, 13959, 149250, 193810, -105764, 22012, -47245, -151398, 45634,
- -47245, 14496, -76236, 25770, -61203, 193274, 88047, 171799, 6442, 22012,
- 82141, 3758, -63888, -78383, -13422, 83752, -51003, -43487, 22549, -47245,
- 64425, -19327, -66035, -18254, -28454, -11811, 57982, 12885, -3758, 40265,
- -53687, -37581, 13959, 38655, 33823, -38655,
- },
- {
- -2348273, 15447924, 8396661, -392453, 1043140, -121870, 375810, -387621, -85899, 324270,
- -412317, -176631, 609349, -1184337, 1821603, 857383, 932008, -195421, 2697240, -181462,
- -361314, -408022, 127775, -24159, -41876, -245887, 271120, 665720, 39192, -173946,
- 485331, 1014686, 142808, 334471, -432718, -856309, 221191, 41339, -33286, 319438,
- 193274, 268435, -119722, 25233, 103616, -281320, -167504, -178241, 238908, -3221,
- -347355, 310311, -99321, -47782, 172872, 12885, 16643, -19327, 36507, 165893,
- -117038, 189515, -150324, 156766, 13422, 70330, 21475, -145492, -21475, 75699,
- 30602, -12885, 28991, 40265, -18790, 1074, -10201, -71404, 64961, 32749,
- -3221, 48318, 41876, -61203, -26844, 50466, 20401, 72478, -85899, 47782,
- 30065, -28991, -19864, -17717, -27917, -9127,
- },
- {
- 3809636, 12603582, -8112657, 468151, -322659, 294205, -242666, 67109, -201863, -217970,
- -60130, -150861, 1300301, -460098, -565862, -557272, 554051, -1906966, 69793, -66035,
- 314069, -236760, -104153, 185220, 86436, 132070, -177167, 802622, -789737, 238371,
- 938987, -71941, 392990, -16106, -328028, 197032, -358093, -27380, 147640, 17717,
- 444529, 118112, 156229, 19327, 4295, 200253, -80531, -214212, 380105, -358093,
- 118112, 64425, 6442, 239981, 78920, -172336, 85899, 48318, 162135, -191126,
- -37044, 100395, 156766, -24696, 74088, -38655, -27917, 60130, -2684, 27917,
- 16106, -20938, -136902, -60130, -35970, 35433, 19864, 38118, 0, -537,
- 72478, 31675, 58519, -20401, -35433, 15032, -55298, 58519, -19327, 0,
- 25233, 2147, -16643, -15032, 34897, 15569,
- },
- {
- 459562, 6847252, -828929, -342524, 177167, -8590, -248571, 183610, 23085, -205085,
- -219580, 233002, -485868, 1568200, -4687957, -1133871, -942745, -238371, 2911988, -337692,
- -743566, 56908, 1163936, 166430, -348966, -2465848, -952946, -129386, 306553, 651761,
- 1173063, -211527, -165356, 224412, -392453, -582505, -180926, 220654, -545998, 90731,
- 110059, 10201, 252866, 16643, 110595, 26307, -297963, 117038, 157303, -68719,
- 124554, -68183, -190589, 186294, 180389, -271657, -32212, 129386, -111132, -165893,
- 32749, 40265, -315680, 10737, -71404, 64961, -11811, 15569, 4832, -3758,
- 44023, -32212, 51003, 11811, -42413, -46171, -43487, -14496, 32749, 37581,
- 8053, 56371, -16106, -69793, 24696, -56908, 13959, 31675, -42950, -22012,
- -27917, 19864, 3221, -23085, -37581, 18790,
- },
- {
- 7437273, 10664941, -7522635, 484258, 165356, -159451, -583042, -45097, -10737, -737124,
- 658204, 196495, -328565, 245887, -89657, 81068, 462246, -437550, 240518, -264141,
- 12885, 213675, 104690, 290447, -223338, 18254, -210453, -645856, -646393, -302258,
- 785979, 144955, 7516, -47245, 352724, 59593, -721018, 110059, -341450, 177704,
- -80531, 506269, -462783, -145492, -9664, 44023, 69793, -201327, 65498, -54224,
- 467615, -226023, 164819, 85362, 97174, -253940, 197569, 105227, 73014, -114354,
- -173409, -41876, 104690, 63351, 24159, -115427, 60130, 71404, -59593, -93952,
- -70867, 41339, 75699, -22549, -6979, -74625, -18254, -9664, 47782, -30065,
- -32749, 2684, 4832, -105227, -32212, 22012, 27380, -19864, 42950, -55835,
- 20938, 12348, 14496, 15569, -5906, 10201,
- },
- {
- -283468, -787590, 905701, -232465, -69256, 35433, -215285, -184684, -30065, -45097,
- -11811, 191663, -237834, 1632625, -2080912, -1705102, -1489817, 130997, -485331, 2204392,
- -62277, -412854, -242666, -484794, -657667, -325881, 609885, 640487, -1450088, 839129,
- 900869, 786516, 70330, -267362, -211527, 267362, -615791, -55835, -329102, 70867,
- 421444, -110059, 63351, -126702, -323196, -216896, 128312, -73551, -215285, 141734,
- 36507, -129923, 77846, 188442, 122407, 87510, -44560, 209380, -46171, 179852,
- -34360, -63888, -141197, -68719, -66572, -32212, 18790, 168577, -25233, 5906,
- -134755, 17180, 14496, -22012, -44560, 69256, 22549, 17180, 9127, 53687,
- -35433, 33286, -43487, 43487, 3221, -12885, 61203, -54224, -22012, -7516,
- -22012, -49929, -3221, 8053, -12885, -25233,
- },
- {
- -2457795, 27229556, 1571421, 2682744, -382789, -60130, -748935, -77309, -355945, -193810,
- 368830, 395674, -928787, -879395, 59593, -716186, -854699, -398895, -563178, 272730,
- 467078, -187905, -55835, -45634, -24159, -34360, 51540, -159451, 496606, 36507,
- 38118, -99321, 33286, 261993, -19864, 363998, 275415, -134218, -382252, 171799,
- 37581, 60130, -95563, 174483, -346282, -27380, 146029, -34360, -178241, -60666,
- -26307, 328028, 268435, -82141, -83752, 141734, 126702, 76236, 159451, 182536,
- -175557, -18790, 50466, 163746, 52076, -15569, -26307, 27380, 90194, 4295,
- -11274, -10737, 13959, 52613, 103079, -1074, -135828, 127775, 4832, -3758,
- 15032, 38118, -9664, 1074, -31675, 16643, -20938, 35433, 8590, 32749,
- -9127, 0, -28454, -12885, 26844, -30602,
- },
- {
- -649077, 2926483, 1521492, 50466, 265214, -126702, -262530, -652298, 250182, -8053,
- 355945, -484258, 335007, -1925219, 2929168, 905701, 1646583, 143345, 1633161, -666257,
- 167504, 151934, -96100, -773094, 1001264, 954557, -942745, 256087, -590558, 68183,
- 759136, 801011, -661962, -70867, -380641, -395137, 237834, -437013, 80531, -106837,
- -209380, 258772, -98247, -288300, 13959, 272194, -207769, -138513, 198642, 63888,
- -53687, -79994, -232465, -20401, -52613, -1074, -165893, 162135, -36507, -55298,
- 63351, 34360, -84826, -80531, -155156, -70867, -25233, -23085, -17717, -6979,
- 43487, -12885, -103616, -8053, 36507, 2147, 11811, 16106, -45097, -82678,
- 53687, -27380, -72478, -78383, 4295, -24696, 15569, 44023, 17180, -20401,
- 6979, -3758, -16643, -10201, -1074, -537,
- },
- {
- 3943854, 10637023, -12178917, -3655017, -780073, 715649, -3334505, 45634, -173946, 25233,
- 571231, 69256, 165893, 489089, 525597, -1846836, 844498, -295279, -254477, 214212,
- -557809, -213675, -197569, -38118, -19327, 61740, 421981, 114354, -241592, -34897,
- -180926, -139586, -132607, -178241, 520765, -162672, 152471, -43487, 142808, 30065,
- 205622, -344134, -20938, -128849, -110595, 341450, 211527, -233539, -219580, -233002,
- 261993, -207232, 124554, 365072, -168577, -73551, 58519, 122943, 33823, 135828,
- -216896, 114354, -12348, 30602, -59593, -111132, 15569, 35433, -38655, 22549,
- 1074, 55835, -42950, 49392, 16643, -2684, 64961, 55835, -25770, 61740,
- -83752, -19864, -5906, 32749, -16643, 9664, 75699, 1611, 1074, 40802,
- 1611, 37581, -40265, -12348, -31139, 25233,
- },
- {
- -77846, 1359894, -151934, -432718, 235149, 191663, -171262, 321586, -979789, -60666,
- 15032, 898722, -121870, 321049, 137439, 614180, 27380, -2237678, 1926830, -190052,
- -136365, -964757, -350040, -43487, 556198, -1063004, 357556, -699543, -104153, -60130,
- -142808, 329639, -392453, 176631, -285615, 258772, -8053, 294205, 27917, -1074,
- -76236, -183073, -46171, 93416, -98784, -15032, 100932, 60130, 83752, 447213,
- -307090, 88047, -87510, -190589, 115427, -21475, -55835, 106837, 20401, 50466,
- 44560, 116501, -9127, -60130, 6442, 6442, -31139, 91268, 111132, -46171,
- 31675, -69793, -108448, 8590, 104690, -4295, 9127, -55835, -53150, 22549,
- -26307, 18254, 103616, -28454, -23622, -20938, -18790, -22549, 28991, -63351,
- 3758, -12348, -30065, 3758, 19327, 41876,
- },
- {
- -118648, -7268696, 111669, -1060320, 99858, 1409823, 492311, -225486, 79994, -51003,
- -426276, -726923, 595927, 398358, -687195, 263604, -381178, 565325, 92342, 34360,
- -443455, -220117, -76236, 195958, 200253, 69256, -501437, -172336, -476205, 28991,
- 343597, -200790, -97711, -304943, 120259, -423054, -505732, -88584, 220117, -54761,
- 166967, -211527, -413927, 302795, 198642, 158914, -90731, -197032, 251256, -105227,
- 2147, -50466, -198105, 18254, -97711, 39728, -54761, 73551, -19864, -141197,
- 63351, -102542, -64425, 75699, 64961, -10201, -31139, 6442, -105227, 5906,
- 19864, -79994, 26844, 0, 22549, 32212, 44560, 14496, 3758, -14496,
- -11274, 8053, 55835, 17717, 45634, 51540, 25770, 2684, 6979, -11811,
- 17180, -12348, 62814, 31139, -8053, -2147,
- },
- {
- 54761, -4461398, -159988, 275415, 207769, -165356, 494458, -439160, -428960, 299574,
- -221191, 861141, 1459215, -7247758, -2325188, 1292785, -413927, -125628, 1024887, 880468,
- 998580, 114890, 1155346, 728534, 786516, 246424, -476205, -607738, 633508, 240518,
- 1051730, -189515, -84289, -328565, 676994, 187905, -529355, 159451, -361851, 398895,
- 289910, 85899, 69793, -14496, -41876, 188442, -301185, -16643, 78920, -311922,
- 175020, -6442, 216896, -82678, 108448, -13422, 228707, -182536, 31139, 71404,
- -103079, -41876, 20401, 122943, 36507, -63888, 67646, -38655, -67109, 80531,
- -71404, 32212, 25233, -91268, 21475, -12885, 53687, 49929, -69793, -4295,
- 41339, -18254, -24696, -4295, -9664, 3221, -30602, 51003, -57445, 31675,
- -4832, -61203, 45097, 42950, -49929, 34897,
- },
- {
- -880468, -11464341, 375273, -3198677, -617938, 161061, 449898, 397284, -203474, 222265,
- 86436, 1345399, -230318, 785442, 2605972, -265214, -2400887, -93416, 12348, -292058,
- -475668, 3758, 916976, -16106, 1051730, 267899, -357019, 1066226, 71941, 182536,
- -445603, -392453, 57445, -166430, -718870, -293132, 417149, -155693, 6979, -233002,
- 736050, -146029, 321586, -23622, 9664, 166430, -163746, -188979, 37044, -10201,
- 101469, -75699, 179315, 149787, 23622, -5369, -357556, -58519, -64961, 143881,
- -199716, -63888, -21475, -47245, -197569, -537, -213138, -20401, 48318, -49929,
- -13959, 22012, -35433, 46708, -19864, -79457, -93952, 53150, -8053, -80531,
- 15032, 28454, 1611, -40802, -7516, 12348, -57982, 62814, 31139, -6442,
- -22012, 25770, -38118, -12885, 1074, 22549,
- },
- {
- 554588, -741956, -649077, 245350, -152471, -99858, -44023, -1238561, 40265, -856846,
- 284542, 997506, -410169, -2774012, 11453604, 1282048, -2213519, -534187, -180389, 386010,
- -1578937, -1176821, 513249, -1016834, -486405, -603443, 668404, 256087, 561030, 388695,
- -3758, 788663, -150861, -487479, 311385, -439697, 297427, 18790, -199179, 61203,
- 166430, 455803, 745714, -392453, -268435, 44560, 175557, -209917, 36507, -113817,
- 33823, 66035, 215822, -118112, 60666, 37581, 84289, 142271, 26844, 317291,
- 168577, 31675, -118648, -44560, 106837, 24696, -38118, -120796, 162672, 90194,
- 16106, -24159, 152471, 63351, -6442, 68183, -81068, -65498, 45097, -8590,
- -22549, -54761, 9127, -111669, 15569, 24159, 13959, 13422, 8053, -36507,
- -8053, -9127, -35433, 44560, 26844, -25770,
- },
- },
- {
- {
- 4486630, 12626667, -9462350, -610422, 223875, -348429, -15569, 646393, -241055, -619549,
- 77309, 34360, 156766, 826244, 1034550, 792421, 224412, 434865, -526670, -657667,
- 79994, 510564, 540092, -21475, 12885, 589484, -332860, 366683, -156229, -36507,
- -189515, 154082, -101469, 232465, -154619, 340913, -240518, -141197, -579284, 277562,
- 20401, 12885, 71404, -454193, -296890, -30065, 129386, -78920, 238908, 120796,
- 99321, 40802, 56371, 122943, 170188, 81068, -62814, 78920, -105227, -87510,
- 81604, 61740, 26307, -163209, -67109, 73014, 32749, 537, -27917, -27380,
- -42950, -28454, -36507, 40265, 45097, -19864, -82678, 11274, -57445, -31675,
- -12885, 34897, 13959, -24696, 14496, -53687, -11811, -25233, -9127, -28991,
- 13959, -25770, 9664, 3758, 1074, 5369,
- },
- {
- -511638, -10001905, -389768, -94489, 219043, -126702, 1073742, -303869, 40265, 273804,
- 593779, 489089, 28991, 359704, 936840, -572841, 1004486, 386010, 373125, -443455,
- -359167, -900333, 44560, 1046361, 754304, 119722, -689342, 1010928, 510027, -106837,
- 244813, -330176, 204011, -117575, 239444, 191663, 470836, 172336, 538482, -238908,
- -78920, 172872, 326954, -46171, -311922, -56371, 50466, 81068, -34897, 238371,
- 167504, -97174, -186831, 85362, 270046, -57982, -40802, 6442, 114890, -66035,
- -130460, -93416, 13959, 144418, -69793, 164283, 17717, 2147, 112206, 22012,
- -1611, 87510, 20401, -74625, -12348, 46708, 33823, -6442, -49392, -32212,
- 69793, -2684, -52613, -36507, -32212, -22549, -24696, 11811, -39192, 15569,
- -9127, -26844, -28991, 12885, 19327, -11811,
- },
- {
- 2681133, 26009248, -4133906, -420370, -250719, -76236, 119722, -163746, 407485, -97711,
- -439160, -255551, 833224, -296890, 1058710, 569083, 394600, 423054, 1596654, 534187,
- 126702, -129923, -208306, 399969, -573378, -292595, 140660, 479426, 20401, -360240,
- 930934, 834297, 223875, 46708, -51003, -346819, 0, -270046, 243203, 395674,
- 340376, -40802, -45097, 129923, -231928, -102542, -278636, -22549, -110059, 161061,
- -195421, -102005, 15569, -18790, 8590, 63888, -25233, 19864, 71404, 113817,
- -39192, 40802, -180926, 222265, 3221, -68183, -15032, -85899, -78383, 93416,
- 79994, -52076, -30065, 41339, 39728, 75699, -52076, -80531, 18254, 47782,
- 75162, -3758, 31675, 29528, -51003, 537, 27917, 46708, -15569, 6979,
- 24159, 9127, -21475, -25770, -2147, -21475,
- },
- {
- 469225, 6001680, 693100, -132607, -166430, -112743, -59593, -361314, -148176, -125091,
- 610959, 245887, 302795, -181999, 767725, -600222, -368293, -513249, -153008, -166430,
- 37044, -55298, -308164, 156229, 142271, 437013, -210453, 366146, -310848, 166967,
- 57982, 245887, 159988, -176094, 267899, -421981, -36507, 112206, -91805, 127775,
- 421981, 96637, -59593, 155693, 253940, -66572, -128849, 38655, 33286, -20938,
- -180389, 165356, 69793, 121333, 42950, 12348, 20938, 148176, -51540, 6979,
- -41339, 123480, 54761, -29528, -32212, 11274, -29528, 60130, -9664, -17717,
- 52076, 100932, -98784, -81068, 15569, 30065, -5906, 7516, 18254, -9664,
- -12348, 22012, 11274, -30065, -2147, 10201, -47245, 33823, 15569, -15569,
- 11274, 18254, -24696, -16643, 19327, 20938,
- },
- {
- -359167, 5031018, 1789391, -492311, 142808, -27917, -153545, 168041, -129386, -178241,
- -216359, 46171, -282931, 1363115, -3849901, -707596, -861141, -1815161, -935766, 796180,
- -99321, -241055, 680215, 282931, -1002875, -1326071, 81604, -370978, 229781, 1078574,
- 194884, -303332, -529892, 278636, -584652, -641024, -449361, 114354, -82141, -294742,
- 159988, -278099, 115427, 217970, 67109, -39728, 77309, -82678, 111669, -174483,
- 54761, 111669, -180926, 250182, 12348, -20938, -157840, 86973, -8053, -184147,
- -3221, -39728, -126702, -142808, -121333, 5906, 15569, 73551, 27380, -89121,
- 91805, 78383, -24696, 11274, -16643, -96637, -22549, -56371, -53687, -1074,
- -537, 74625, 43487, -70330, 16643, -34360, 8590, 35433, -25770, -47782,
- -34897, 5369, 6442, 4832, -46171, -11274,
- },
- {
- -878858, 8626979, 1539746, 1165547, 423054, -23622, -748398, 321049, -57982, -1062468,
- 224412, 392990, 247497, -256087, 853625, 193810, -351650, -621697, 129386, -141197,
- -398895, -132070, 18790, 588947, -54761, -86436, -619549, 3758, -467615, -451508,
- 91805, 584652, -173946, -35970, 469225, -149787, -906775, 132607, -17717, 27917,
- -307627, 85362, -10737, -86436, 24696, 74088, 57982, 174483, -62277, -46708,
- 289910, 15032, -63351, 9127, 246424, -79994, -107374, 17717, -18790, -22549,
- 1074, -117038, 27917, 106837, 57445, -71941, -28454, 48855, -24159, -56908,
- -26307, 4832, 78383, -2147, -4832, -75699, -91268, 8053, 11274, 8590,
- 16106, 40802, 27380, -59056, -77846, -19864, 21475, -56371, 38655, 1611,
- -7516, 9127, 6979, 29528, 9127, -4832,
- },
- {
- -163209, -2688650, 787053, 176094, 45097, -45097, -224949, -118648, -60666, 81068,
- 170188, -81604, 139586, 305480, -559420, -1072668, -61740, -344671, 426276, 1489817,
- -134755, -306553, -1515050, 462783, -170725, -101469, 236223, -438087, -454193, 454193,
- 799401, 515933, 345208, -385473, -645319, 267362, -249645, -370441, -206695, -129923,
- 256087, 60130, 121333, -136902, -540092, -234613, -184147, -92342, 70330, 45634,
- -15569, -26307, -81604, 163209, 207769, 12885, -62814, 251792, 18790, 60130,
- 19864, -15569, -75699, -111132, -71404, 30602, -89121, 17180, 92879, 99321,
- -132070, -41339, 20938, -53150, -118112, -25233, 22549, -17717, -12348, 60666,
- 0, -20938, -27917, 49392, 10737, -15032, 36507, -9127, 15032, 28991,
- 27380, 15032, -15032, -15032, 0, -27380,
- },
- {
- 1059783, 30806726, -3474092, 300111, 403727, -223338, -274878, -346819, -316754, 20401,
- -31139, 355409, 20938, -604517, -1440962, -584116, -284005, 338766, -415538, -460098,
- 522375, 83215, -614180, 49929, 224949, -105227, -25770, -168577, 466004, -88047,
- 32749, 174483, 30602, -47245, 323196, 3758, 83752, -86436, -697932, 375273,
- -123480, -22012, -181999, 484258, -204548, 235686, -280247, 153008, -38655, -180389,
- -204548, 484258, 394063, -23622, -19327, -74625, 48855, 55298, 182536, 174483,
- 16643, -70867, -46171, 192737, 132607, 42950, -68183, 29528, 95563, -19864,
- -5906, 1611, -25770, -57445, 41876, 78920, -133681, -24159, 16643, -10737,
- -9127, 42413, 26307, -32749, -9127, 17717, -56371, 28991, -537, 26307,
- -9127, -21475, -24159, -36507, 4832, -3758,
- },
- {
- 59593, -144955, 1149441, 86436, 0, 34897, -488553, -233002, -15569, 49929,
- 242129, -2684, -11274, 299037, 638876, 500901, 4199941, 428960, 1422708, -328028,
- -666794, 509491, -13959, -391916, -133681, 507880, -660888, -403190, -153545, 194347,
- 996969, 282931, -620086, -442919, 54224, -196495, -396748, -238371, 64961, 39192,
- -651761, 112206, -37581, -246961, -289910, -89657, -65498, 9664, 137976, 54761,
- -92879, -196495, -154619, -111669, 53150, 11811, -108448, -13959, -52613, -68719,
- 38655, 70867, -4295, 47782, -125628, -77309, 132607, -64425, 63351, -30065,
- 73551, 59593, -16643, -65498, -2684, 5369, 60130, -45097, -20401, -70867,
- -3221, 50466, -42950, -44560, -54761, 3758, -51540, -9664, 37581, 14496,
- -35433, -2684, -6979, -26844, 9127, -16106,
- },
- {
- -2909840, 9758703, -1966558, -4818954, 38118, -2003065, -2139968, 910533, -441308, -311922,
- 132607, 194347, 30065, 624918, 153545, -40802, -23622, -212064, -415001, 104690,
- -464393, -307090, -286689, 88584, -273804, 81604, 408022, -201863, -24696, -3221,
- -402653, -251256, -170188, -499290, 270583, 419833, -63888, -149787, 282394, 6979,
- -77846, -233002, -57445, 96637, -10201, -30602, 146029, -35970, -321586, -291521,
- 112743, -165356, -169114, 208306, 56908, 24696, 12348, 69256, 69793, 186294,
- -110059, 80531, -5906, -55835, 13422, -82678, -11274, 5906, -37581, -28454,
- 38655, 4832, -47245, 50466, 25770, 40265, -9664, 48855, 18790, 37581,
- 4832, -18254, -45634, 25233, -65498, -41339, 13422, 7516, -25770, 18254,
- -18254, 48318, -3221, -34360, -33823, 3221,
- },
- {
- 171799, 3932580, -1699733, -913217, -277562, -179315, -825707, 507343, -86436, -535260,
- -512175, 741419, 104690, -363998, 438624, 891206, -598611, 184147, -852014, 1598265,
- -33823, -693100, -93952, -578210, -63351, -364535, -48855, -382252, 5906, 333397,
- -38655, 38655, 40802, 60666, -380105, 530965, 185757, 359704, -147640, -4295,
- -41339, 33823, -75162, 61203, -95563, -61740, 80531, -2147, 197569, -99858,
- -121333, 83752, 82678, -88584, 133144, 4832, -11274, -27380, 39728, 49392,
- -31139, 77846, 34360, -36507, -70330, 41876, -25233, -7516, 78383, -8053,
- 43487, -46171, -63888, -12885, 56371, 41876, 38655, 36507, -62277, -13422,
- 4295, 5369, 59593, 39192, 1611, -21475, 26307, 537, 37044, -15569,
- -15569, 6979, -18254, 12885, -11274, 17717,
- },
- {
- -268435, -8311836, 978179, 1015760, -825171, 1750199, 1179505, -244813, 42413, -392453,
- 172872, -48318, 107374, 610422, -435939, 87510, -328565, 306016, -45097, 84289,
- -296353, -601295, 281857, -259309, 107911, 371515, -400506, -443992, -194884, -45634,
- 46171, 8590, 248571, -463320, -108985, 181999, -133144, 53150, 0, 13422,
- -111132, -110059, -74625, 164283, 100932, -28991, 98784, -44560, 224949, 3221,
- -242129, -164283, -35970, -29528, 2684, 54224, -76773, 75162, 92342, -158914,
- 12885, 0, -6979, -55298, 78920, -5906, 8053, -12885, -2684, -104690,
- 8590, -43487, -1074, -12885, -10201, 26844, 44560, 47245, 50466, -5906,
- -22549, -50466, 9127, 55298, 10201, 71404, 15569, 10201, 7516, -51540,
- -2147, -34897, 19327, 31139, 9127, -9127,
- },
- {
- -7516, -3833258, -685584, 47782, 526134, -31675, 251256, -38655, -307627, -370441,
- 68719, 252329, -1734093, -893353, -2418604, -28991, 1383516, -91805, 567473, 430570,
- 1964948, 474594, 395137, 609349, 1341104, -26844, -448287, -570157, 1076963, -62814,
- 838592, -177704, -425202, 421981, 428960, 330176, -436476, 537, -189515, 145492,
- 320512, -279173, 219043, -47782, 130460, 192737, -186294, -136365, -86973, 43487,
- -113280, -108985, 182536, 2147, -95563, -15569, 183610, -79994, 10737, 52076,
- 67646, -176631, 11811, 71404, 84289, 17180, 29528, 23085, -34897, -9664,
- -35970, 45097, 13959, -66572, -74088, -55835, -537, 12885, -4295, 12348,
- 43487, 10201, 8590, 40265, -1074, 16106, -49392, 26844, 17180, -23622,
- 9664, -45097, -24159, 33823, -30065, -10737,
- },
- {
- -1085553, -7220914, -1210644, -4057134, 455803, 1141924, -236760, -111669, -483721, 255551,
- -29528, 834297, -298500, 792958, 2843268, 264141, -1220308, -197569, -374736, -190052,
- 22549, -331786, 438087, 460635, 501437, 666257, 75162, 289910, -202937, 240518,
- -370978, 295279, -241055, -219043, -516470, -141197, 263604, -106300, 56908, -237834,
- 425202, 70330, 146029, 94489, 143881, 176094, 13422, -338766, 183073, 94489,
- 25233, 89121, -5369, 118648, 27380, 39728, -134755, -197032, 102542, 33286,
- -134218, 27380, -77309, 11811, -75162, -537, -155156, -68719, -32212, 20938,
- -48318, 39728, -35433, -23622, -6442, -21475, -93416, 37581, 41339, 1074,
- -9127, 17717, 80531, -2147, -10201, 64425, -26307, -32749, 18254, -1074,
- -14496, 48855, -7516, 1611, -10737, 15569,
- },
- {
- -351650, -455267, 1176821, 23085, -284005, -88047, 100395, -877247, -650688, -420907,
- 147103, 685584, 357556, 3613141, -461709, 745714, 485331, -1184337, 479426, -946503,
- -416612, -401043, -44023, -1923609, -498216, 68719, 777926, 466004, -410169, 525060,
- 731755, 318364, -226023, 46171, 288300, -781147, 210990, 370441, -316754, 249645,
- 62814, 216359, 232465, -215285, -112743, 45097, -54224, 18790, -84826, -119722,
- 40802, 106300, -26307, -63351, 156766, 46708, 63888, 27380, 63351, 75699,
- 60130, 83215, -205085, -45634, 32749, 78920, 63888, -79994, 75162, 44023,
- 114890, -46708, 1074, 59056, -60130, 63888, -54224, -109522, -537, 4832,
- 35970, 8053, 59593, -89121, 1611, 0, -6979, 40265, 14496, -26844,
- 16106, 5369, -8590, -8590, 6979, 8053,
- },
- },
- {
- {
- -2527052, 31641560, 12085501, 359167, -410169, -59056, 336618, -136365, -464393, -28454,
- -280784, -121870, 386010, 465467, 469225, -465467, -288837, 38655, 225486, -1018444,
- -92879, 48318, 328028, 59593, 172336, 278099, -139050, 507880, 302795, 118112,
- -359704, -74625, -503048, 164283, -235149, 398895, -367220, 207232, -609349, -4832,
- -66572, -27380, 96100, -110059, 27380, -25770, -30602, 3221, 177167, 1074,
- -6442, -49392, -16106, 69793, 42950, 30602, -22012, 111132, 18254, 52613,
- 6979, 48855, 51003, 81068, 2147, 106300, 54224, -120259, 25233, 1074,
- 7516, 54761, -12885, -43487, 11811, 101469, 5906, -97174, 55835, -33286,
- -28991, -50466, -11811, -1074, -4295, 55835, -61740, 12348, 1074, -28991,
- -19864, -3221, -14496, 15032, 11811, 9664,
- },
- {
- 93952, -4209605, 2421288, 22549, -680215, -455267, 472983, -278636, -350040, -333934,
- -712965, -25770, -472983, -115964, -484258, -1275605, 1469953, -521839, -839666, 179852,
- -317291, -477815, 192200, 434865, 458488, 163746, 100932, 367757, 85899, 460098,
- 675921, -173946, -157303, -600759, 260919, -368830, 231391, -14496, 234076, -51540,
- 272194, 6979, 220117, -146029, 134218, 15032, 19327, -71404, -64961, 56908,
- -7516, 112206, -189515, -45097, -56371, 137439, 61740, 0, 39192, 31675,
- -34897, -31139, -50466, 93952, -71404, -10737, 47782, -108448, 17717, -47245,
- 10201, -20938, 35970, 45097, 15569, -81068, 10737, 25770, 34897, -6979,
- -20401, 39728, 34897, -19864, 13422, -11274, -37581, 12348, 24696, -66035,
- 25233, 20938, -8053, -30065, -31675, -6979,
- },
- {
- -2240899, 21569326, -501974, 1886028, -126165, 246961, 170188, -190052, 207769, 73551,
- -44023, -401579, -110595, -259846, -96637, -251792, -758599, -266825, -218506, -4295,
- 92879, -17717, -601295, 365072, -259309, -322123, -150324, -6979, 56371, -161598,
- 497679, 549219, -177704, -315680, -83215, 357556, 289910, -179852, -4832, 121870,
- 159988, -56908, 143345, 20938, -98784, -105227, -253940, 12885, -136902, 93952,
- 64425, -152471, -160524, 56371, -144418, -35433, 12348, -52076, 9664, 68183,
- 9664, -108448, -145492, 74088, 72478, -57982, -49392, -71404, -4295, -27380,
- 32749, 48855, -72478, 3758, 16643, -22012, 39728, 45634, -46708, 11274,
- 62814, -9664, -31139, 65498, 30065, -37044, -15569, -31139, 23622, -1611,
- -20938, 16643, 18254, -9127, 13959, 11274,
- },
- {
- -1988570, -5050345, -3690451, -248571, 381178, 5906, -51540, -12348, -120796, -217433,
- 431644, 196495, -408559, -719944, 877784, 367220, -83215, -614717, -41339, -32212,
- -31139, 116501, -236760, 169651, -165893, 144955, 301185, 220117, 13959, -275952,
- -393526, 312996, 191663, -100395, 507343, -537945, 149787, -264141, -53150, -73014,
- -35433, 99858, 68719, -17717, 147103, 54761, -40802, 85899, -16643, 306016,
- -177704, -68719, 90731, -161061, -99858, 40802, 7516, 75699, -226560, 74088,
- 22549, 73551, -96100, 94489, -90731, -28454, 39728, -101469, 43487, 2684,
- -14496, -537, 64961, 28991, 51540, 46708, -22549, -26844, 17180, 21475,
- -61740, -32212, -58519, 29528, 9664, -1611, 4832, -38655, 47782, 18254,
- -5906, -13422, -2147, 4832, -21475, -4295,
- },
- {
- 387084, 2006287, -143881, 299037, -195421, 10737, 265751, 267362, -195421, -155156,
- 2147, 53150, -175020, 56908, -4442070, 379568, -171262, 626528, -3739306, -433255,
- 142271, 1025423, -69793, -850940, -586263, -762357, 1154809, -549756, -176631, 290447,
- -340913, -284005, -226023, 318901, -377957, -482647, -387084, 121870, 330176, -176631,
- -117575, -84826, 107374, 32212, 67109, 32212, -7516, -51540, 24159, -245887,
- -141197, 35433, 45097, 62814, -52613, 156766, -52076, -26307, 40265, 2684,
- 94489, 21475, -10201, 4295, -44023, -46171, -6442, 56908, 69793, -70867,
- -28454, 82678, -6979, -11811, 17717, 2684, -21475, -7516, -16106, -68183,
- -10201, -41876, 41339, 48855, -23085, 22549, -18254, -3758, 16106, -22012,
- -16106, -6979, -22549, 13422, 21475, -10737,
- },
- {
- -1786170, -3008088, -4202089, 775778, -68719, -52076, 312459, -249108, -537, 322659,
- -515396, -135291, 202400, -467615, 299037, -325344, -103616, -566399, -401579, 203474,
- 142271, -467078, -517544, 251792, 23085, 53687, -341987, 162135, 382252, 42413,
- -626528, 31139, 107374, 133681, 168577, -111669, -540629, 328028, 108448, 204011,
- -2147, 73014, 156229, -233539, -48855, 279173, 190589, 399432, 184684, -22012,
- -66572, 156229, 20401, 40265, 10201, 131533, -86973, -88584, -87510, 68183,
- 71941, -18790, -45634, -82678, 23622, 12885, 3758, 10737, 68719, 46708,
- 15569, -16643, -55298, 56908, -1074, 44560, -39192, -20401, -26307, 6442,
- -2684, -4832, 31675, 85899, -13422, -6979, -10737, 3221, -58519, 60666,
- -537, -20938, -17180, -13422, 47245, -1611,
- },
- {
- 397284, -1392106, -964220, 173946, 82141, 25233, -91805, 158377, -103616, -29528,
- 113817, -262530, -438624, -1287953, -565325, 872952, 2694555, 230854, -712965, 240518,
- 250182, 46708, -1650878, -624918, -525060, 66035, 636192, -1014149, -257161, -78920,
- -7516, -427886, 162672, 322659, -723165, -8053, -141734, -255014, 139586, 363462,
- -143345, -190589, 370441, -124017, -195958, -24159, -196495, -95563, 116501, 33286,
- 53150, 22549, -59056, -65498, -19327, -35433, -70330, -32212, -77309, -10737,
- 26844, 16643, 81604, -48318, -27380, 107911, 24159, -25770, -93952, 8053,
- 30602, 24696, -49929, -25233, -24696, -36507, 39192, -38118, -40265, -5369,
- 54224, -22549, 3758, 13422, 10737, 3221, -16643, 22012, 3221, -12348,
- 38655, 36507, 36507, -40265, 22012, 15032,
- },
- {
- -556735, 31577136, 1684164, -880468, -411780, -115427, -208843, -5369, 47245, 337692,
- -219043, -337692, 691490, 522375, -697395, 200790, 630823, 239981, 439160, -28991,
- -121333, 253940, -302795, -312459, -47245, 72478, 190589, -268435, -290447, -133144,
- 6979, 46171, 362925, -202400, 362388, 94489, -199716, 261993, -348966, 67109,
- -104153, -85899, -117038, 372052, -46708, 85899, -282931, 48318, 34360, -166967,
- -333397, -114890, -12348, 44560, -6442, -8590, -12348, -115427, -97711, 69793,
- 105227, 47245, -41876, 41339, -34897, 40802, -74625, 30065, -1074, 15032,
- 27917, -46708, 33823, -39728, -104153, 25770, 59593, -135828, -49929, 48855,
- -53687, -17717, 5369, -22012, 1074, 9664, -6979, 9664, 5906, -7516,
- -25233, 23085, 11274, -18254, -22549, -6979,
- },
- {
- 511638, -308701, -2519535, 219043, -384936, 69256, 86973, 526670, -103079, -67109,
- 53150, 64425, 176631, 1145683, 380105, -1004486, 1973538, -345208, 660351, -880468,
- -1067836, 987306, -394600, 94489, -685584, -410706, 482647, -1345399, 151398, -366146,
- -205085, 307627, -442382, -171799, 129386, -620086, -324807, 243739, -59056, 357019,
- -234076, -126702, -32749, -51540, -221728, -248571, -48318, -1074, -9664, -142271,
- -44560, -55835, 89121, 20938, -38118, -23622, 128849, -73014, -118112, -143345,
- -24696, -26307, -3221, 46708, 13959, 36507, 162135, -537, 13959, -102005,
- -10201, -10201, 46708, 88584, -14496, -46171, 42950, 0, -9127, 24159,
- -42413, -537, 33823, 22549, -537, 32749, -20401, -72478, -3221, 11274,
- -18790, -35433, 19327, 9664, -9664, -1074,
- },
- {
- 2253247, 15704011, 5106716, -701690, 969052, 73551, 611496, 375273, -71941, -229244,
- -287763, 125091, -460098, -30065, 889058, -84826, 662499, 204011, -1008780, 123480,
- 428960, -206158, 7516, 370441, 187905, -71404, -172872, -322123, -83215, 146029,
- -30602, -125091, 256087, -264141, -188979, 137439, -257161, -54224, -100395, -38118,
- -256624, -59593, -20938, 148176, 223338, -197569, -264677, 12348, 27380, -105764,
- -109522, 106837, -32212, -159988, 157840, 218506, -537, -157840, 35433, 29528,
- 120259, 99858, -4832, 25770, 6979, 36507, -19864, -19864, 32212, -77309,
- -29528, -25770, 24159, -17180, 22012, -12348, -537, -47782, 66035, -60666,
- 17717, 61203, 6442, -18790, 12348, 1074, -41339, -1611, -9664, -46171,
- 0, -29528, 33823, -3758, 12885, -30065,
- },
- {
- -266288, 4753992, 618475, -664109, -109522, -59056, -376347, 665720, -119722, -340913,
- -838056, -282394, 33286, -726386, 354872, -782221, -1557463, 1353452, -1460826, -911607,
- 219580, -196495, 547608, -70867, 194884, 405338, -384400, -171799, -35433, 242666,
- 35970, 79994, 113280, -63888, 63888, -83215, -140660, 327491, -91268, 223875,
- -30602, 234613, 100932, -1074, -26844, 106300, -11811, 16643, 31675, -171262,
- 37581, 25233, 8053, -95563, 137439, 41876, 90731, -30602, -34897, 61740,
- -38655, -162135, 12348, 76236, 25770, -68183, 31139, 3758, -37044, -32212,
- 16643, -3758, -11811, 12348, -27380, -1074, -21475, 48318, 78920, -42413,
- 4295, 53687, -48318, -16643, 44560, 35433, 15569, 40802, -30065, 45097,
- 1074, 6442, 18254, 4295, -1611, -41876,
- },
- {
- 786516, -7619809, 398358, 383863, -20938, -71404, 523449, -324807, 134218, 208843,
- -227633, 635655, -81604, -183610, -521839, 22012, -309775, -197569, 127238, -153545,
- 507880, -364535, 339839, -316754, 276489, -205622, 19864, -456340, 376883, -370441,
- -133681, -192200, 105764, -83215, -519691, 24696, 33286, 27917, 159988, -103079,
- 103079, 44560, 172872, -100932, -139586, -123480, 173409, 24159, 164283, 100395,
- -108448, -223338, 107374, -45097, 65498, -33823, -74625, 28991, -68183, 76236,
- 31139, -8590, 41876, -12885, -79457, -18790, 11274, -67646, 109522, 15569,
- -37044, 35433, 5369, 6442, -16106, -35970, -8053, 3221, 31139, 21475,
- -13422, -9127, -52613, 0, 0, -46708, 46708, -2147, 9127, 15032,
- -18790, -1611, -33286, -22012, 25233, -11274,
- },
- {
- -89657, -1916629, 542240, -247497, -213138, 106837, -325881, 32212, -315143, -333934,
- -2684, -657667, 1868848, 4929549, -319975, -1297617, 706522, -237834, -216359, 102005,
- -469225, 1258962, -82141, -1100049, 171262, 160524, 548682, 364535, 755377, -215822,
- -828392, 23085, -164283, 263067, 59056, 60130, 233002, -169114, 135828, -267899,
- 86436, -153545, 317828, -227096, 271657, 274878, 76236, -46171, -95026, 70867,
- -117038, -63351, -112206, 17180, -33286, -125091, -173946, 9127, -44023, -56371,
- 155693, 118112, -51003, -61203, -46708, 185757, -51540, -12885, 39728, -47245,
- -14496, 30602, 57445, -18254, -1074, -30602, -62277, -30602, 35433, -1074,
- -40265, 34360, 56371, 13959, 14496, 13959, 33823, -42413, 2684, -3221,
- 34360, 57445, -52076, -53687, 39728, -16106,
- },
- {
- 1469416, -1959042, 1707786, -1010391, 654983, 892279, -94489, 44023, 223875, -295816,
- -494995, 172336, 93952, 60666, 537408, -508417, 267362, 16106, -168577, -349503,
- 296353, 310311, -309775, 380105, -539555, 198642, 120796, 348429, -16643, -308701,
- 198105, 329639, -230854, -18254, 62814, -187368, -42950, -57445, 157303, 220654,
- -68183, -171262, -103616, -141197, 6979, 89657, 117575, -64961, 177167, 153545,
- -282931, 97711, -165893, -170725, -122943, 71941, 147640, 41339, 56908, 11274,
- -116501, 91268, -16106, 41876, 68183, -537, 84826, -19864, -48318, -10201,
- 36507, 0, 11811, -83752, -9664, 10201, 22012, -33286, -12348, 39728,
- 15032, -38118, 11274, 31139, 10737, 14496, 74088, -33286, -42950, 8053,
- 1611, -19864, 15569, 2147, 17717, -19327,
- },
- {
- 191663, -1103270, 758062, 289373, -95026, -66572, 7516, -99858, -449898, -114354,
- 99321, -299574, 128312, 2761664, -5304285, 1107028, 1757715, -23622, 682900, 234076,
- 1504312, 769336, -187368, -451508, 659278, 147640, 657130, 440771, -834834, 708670,
- 520765, -146566, -48855, -33823, 197032, -234613, 104690, -222801, 74625, 577673,
- 75162, -308164, -132607, -157303, 353798, 10737, -43487, 97711, -23622, -113280,
- 66572, 70867, -115427, -206158, 5369, 20938, 46171, -95563, 149787, 6442,
- -264677, -38655, -48318, 32749, -51540, 3221, -58519, 146029, -70867, -17180,
- 63888, 44023, -83215, 9127, -3758, -47245, 59593, -10737, -12885, -18254,
- 4295, 39192, 41339, 61740, -38118, -1611, -8053, -16106, -1611, 30602,
- 15569, -24159, 32749, -2147, -15032, 19327,
- },
- },
- {
- {
- 3958886, 46572476, 524523, 559420, -817654, 5906, 119722, -582505, -76236, 254477,
- -99858, -14496, 370978, 727997, -822486, -115964, -304943, -158377, 30065, -207232,
- 215822, -450972, 108448, 28454, 185757, 97711, 69793, 126702, 548145, 311922,
- 158914, -347892, -301721, -39192, 156766, 50466, 81068, 120796, -312996, -266288,
- -71941, -46708, -7516, 88047, 216359, -39192, -202400, 83215, 24696, 122407,
- 75162, -54224, 21475, 45634, -105227, 13959, 56371, -41339, -63888, 160524,
- -49392, -12885, -11274, 112743, 39192, 71941, 68183, -74625, 4295, -37044,
- 56371, 37581, 19864, -41339, -36507, 16106, 47782, -63351, 47782, 23085,
- 23085, -11811, -24159, 17717, -27917, 51003, 3758, 3221, 16643, 5369,
- -36507, 11274, -1074, -1074, -1611, 6442,
- },
- {
- 406948, -1582696, 28454, -625455, -229244, -254477, 27917, -44023, -165356, -206158,
- -876173, -268972, -623844, -241055, -1017370, -586263, -140660, 304943, -1256278, -121333,
- -222801, -96637, 104153, -186831, 1004486, 521302, 300111, 132607, -96100, 151934,
- 419296, 130997, -259309, -482110, 142808, -139586, 89657, 68183, -17180, 41876,
- 150324, 113280, 309775, 68183, 86436, -47245, 23085, -296353, 96100, 27380,
- 0, 159451, 39192, -30602, -169114, 60130, 31139, 61740, -82678, 26844,
- 41876, 87510, -57445, -54761, 13959, -42413, 88047, 16106, -66035, -35433,
- 45097, -91805, 4832, 24696, 34360, -87510, -70330, -9664, 70867, 38655,
- -30602, 11811, 34360, 5906, 12885, 31139, -5369, 3221, 57982, -41876,
- 4832, 14496, 20938, -2147, -32749, -13422,
- },
- {
- 1209570, 13038447, 3415036, 3160022, -656593, 382789, 532576, -135828, -382252, 35970,
- -154619, 59056, -698469, 223338, -277025, -306553, 12348, -896574, -243739, -147640,
- -231391, -243203, -578210, -128849, 399969, -175020, -46708, -196495, 139050, 143881,
- 515933, -144418, -119185, -10737, -178241, 511638, 162672, 55835, -287226, -103616,
- 101469, -43487, 128312, -2684, 16106, -51003, -130460, 32212, -27917, -39728,
- 26307, -31139, -165356, 148176, -52613, -102005, -69256, -13959, -73551, 63888,
- 45097, -47782, -19864, -55298, 49929, 16106, -22012, -59056, 21475, -42413,
- -30065, 60666, -33823, 34360, -31139, -99858, 52076, 97711, -22012, -35433,
- 8590, 35433, -11274, 4832, 20938, -6979, -11811, -30065, 18790, -4832,
- -20401, -19327, 24696, 7516, -8053, 14496,
- },
- {
- 264677, -16058883, 3007014, -42950, 217433, 92879, 128849, 213675, -190589, -151934,
- -190052, 70867, -286152, 306016, -584116, 335544, 268972, -798864, -271120, 133144,
- -131533, -123480, 270583, 8590, -255014, -24696, 523986, 315143, -38655, -287763,
- -166430, 328565, 193274, 8053, 307627, -384400, 121333, -209380, 25233, -85899,
- -234613, 101469, 62277, -61740, -32212, 191663, 194884, 10737, -17717, 244813,
- 53687, -239981, 70867, -183610, -21475, 26307, -75162, -11274, -143881, 6979,
- 73551, 60130, -23085, 105227, -12348, 6442, 29528, -124554, -1074, 63351,
- -11811, -86436, 12885, 46708, 22549, 8590, 18790, 9664, 9664, 52613,
- -14496, -24159, -27917, 21475, -2684, -17717, 28454, -25770, 2147, 23085,
- 11274, -12348, -9127, 12885, -8053, -5369,
- },
- {
- -607738, -96637, 1919314, 523986, -202937, 4295, 315143, 150324, 8590, 7516,
- 0, -94489, 227096, 41339, -4158602, -529355, -492311, 1304596, -304943, -1358820,
- 239444, 642098, -557809, -505732, -624381, 39192, -687732, -394063, 38655, 100932,
- -237297, 41876, -174483, 99858, -273804, 119722, -472983, -163746, 414464, 184147,
- -237834, 13422, 301185, -65498, -58519, 42950, -10201, -27380, -53687, -537,
- -9127, -301185, 153008, -31675, -81604, 85899, 59056, 18790, -24696, 56908,
- 115964, 37044, -41876, 28454, 28991, -13959, 25233, -20401, 63351, 47245,
- -89121, -1074, 35433, -17180, 5906, 17717, -23085, 28454, 33823, -9127,
- 5906, -56371, 4295, 31139, -19327, 16643, -21475, -4832, 5906, 2147,
- -5906, -3221, -9127, -15569, 37581, 9127,
- },
- {
- 32749, -14112189, 2840584, 372588, -464393, -6442, 450972, -315143, -193810, 756451,
- -187905, -310311, -183610, -293668, 250719, -675921, -151398, -299574, -142271, 26307,
- 437013, -148713, -483721, -184147, 149787, 83215, -4832, -234076, 268972, -21475,
- -222265, -171799, 323196, 199716, -223875, -51003, 74088, -6442, 140660, 340376,
- 449361, -161061, -120259, -174483, 73014, 193810, 135291, 182536, 209380, 159988,
- -197032, 5906, 173409, 185220, -83215, 74625, 119185, -65498, -66035, 47782,
- -27380, 29528, -5369, -42950, -25770, -6442, 27917, -8590, 76236, 47245,
- 2147, 1074, -53687, 18790, -8590, 55298, 35970, -15569, -40265, -32212,
- -5906, -39192, -19327, 69256, 24159, 28454, 537, 45634, -52076, 12348,
- 1074, -8590, -8053, -9664, 8053, 11811,
- },
- {
- 60666, 247497, -881542, -153008, 24696, 38655, -275952, 213675, 82678, -83215,
- -67109, -327491, -455267, -2421825, -755377, 2772402, 963146, 181462, -402653, 29528,
- -96100, 642635, -1200980, -1978906, -414464, 321049, -169114, 93952, -583042, 120259,
- 178241, -133681, -364535, 303332, -136902, -178778, -244813, -34897, 286152, 394600,
- -186294, 9664, 189515, -273804, -4295, 125091, -99858, -39728, -21475, 1074,
- 92342, -13959, 31675, -60666, -63351, -40802, 26844, -129386, -56908, -72478,
- 73551, -32749, 29528, 15569, -40265, 34360, 98784, 43487, -113280, -67109,
- 13959, 62277, -22549, -5906, 41876, 18254, 37044, 21475, -6979, -33286,
- 38655, -4295, 35970, -32212, 18790, 10201, -28454, -5369, -26307, -42950,
- -12885, 9664, 36507, -18254, 6979, 27380,
- },
- {
- 1203128, 32046362, -1016297, -1136019, -66572, -31139, -499827, -181999, 410706, 124017,
- 273267, -442382, 228707, 56908, 413927, 227096, 573378, -235686, 203474, 599148,
- -288837, 44023, 27917, -284542, -158377, 84826, 237297, -188979, -701153, -25770,
- 65498, -186831, 649077, -282394, 153008, 514322, -222265, 112206, 370978, -315680,
- 59056, -360240, 157840, -61203, 31675, 63351, -231928, -171799, 18254, 22012,
- -229244, -284542, -245350, 13959, 114890, 76236, 42413, -85362, -180389, -1611,
- 52613, 25770, 33823, -2147, -47782, -27917, -52613, 44560, -20401, 16106,
- 20401, -45097, 56908, 19864, -40265, -59593, 97174, -33823, -58519, 30602,
- -41876, -3758, -30602, -537, -17180, 1611, 48318, 16106, 537, 2684,
- -7516, 21475, 18254, 6979, -25233, -22012,
- },
- {
- 41876, 1112933, -1054951, -390305, -181462, -47245, 119185, 466004, 293668, -206158,
- -221728, 85899, 418759, 999117, 1195075, -2893734, 1239098, -150324, -3758, -555661,
- -597000, 414464, 788663, -585726, 22012, -1000727, -164283, -796716, 609885, -754304,
- -351114, -537, -50466, 85362, -266288, -333397, -12885, 82678, -15569, -31139,
- 443455, -176094, -83215, 45634, -106300, 57982, -35970, -26307, -100395, -144955,
- -85362, 92342, 14496, 28454, -63351, 9664, 140123, -38655, 2684, -105227,
- -41339, -118112, -12348, -48855, -18790, -4832, 40802, -23622, 19864, -92879,
- -46708, -84826, -32212, 128312, 26844, -44023, -13422, 55835, -4832, 20938,
- -10737, -60130, 9127, 18790, 21475, 17717, 51003, -13422, -34897, -11811,
- 11811, -33286, 1611, 21475, -11811, 15032,
- },
- {
- -1676648, 19016504, 5695127, 1406065, 235149, 1154809, 1192390, -424128, 324270, 74625,
- -157303, 41339, -75162, -578747, 390842, 186294, 721018, 135291, -688269, -129923,
- 513785, -153545, 230318, 174483, 370441, -99858, -222265, -62277, -172336, -4832,
- 138513, 257698, 96100, 188442, -63351, -267362, -246961, 67646, -337692, 16106,
- -92342, 101469, -214748, 80531, 159451, 48318, -268972, -74088, 28991, 71941,
- -69793, 146029, 115427, -103079, 63888, 142808, 122943, -187905, 35433, -95026,
- 120796, 114890, 5369, 59593, -36507, 71941, -18254, -9664, 25233, -43487,
- -62814, 11274, 50466, -10737, 13959, -28454, 40265, -45097, 11274, -37044,
- -30065, 30602, 35433, -8590, 56908, 60666, -3221, 2147, 9127, -24696,
- 22012, -60130, 10201, 12885, 26307, -9664,
- },
- {
- 150324, 3391951, 1465121, -550830, -226023, -1074, 218506, 277562, 161598, -35970,
- -490163, -118648, -489089, -1026497, -186831, -290447, -789737, -323733, -370441, -1443109,
- -293668, 39728, 804770, 74088, 454193, 178241, -220654, 263604, -313533, -217970,
- -160524, 20401, 146566, -117575, 180926, -167504, -335544, 132607, 39728, 241055,
- -13959, 8590, 321586, -38655, 22012, 128849, 6442, 119722, 28991, 2684,
- 96100, -2684, -105764, -136365, -15032, 150861, -2684, 33286, 5906, 7516,
- 35970, -107911, -33286, 60666, 60666, -40265, -1074, 78383, -47782, -2147,
- -1611, -36507, -23085, 14496, -24159, -22549, -68183, -1074, 58519, -17180,
- -2147, 64961, -19327, -53150, 2147, 30602, -8590, 8590, -40802, 5906,
- 17717, 11274, 8590, -6979, 18790, -30602,
- },
- {
- -1552094, -5116917, -70867, 154082, 643171, -1378685, 696322, 118112, -147103, 638876,
- -767189, 201327, 108448, -394600, -483721, -369367, 144955, -366683, 42950, 89657,
- 169651, 144955, 19864, -83215, 246424, -204011, 110595, -427349, 183073, -34360,
- -221191, -198105, -390305, 170725, -192200, -546535, -105764, -198642, 168577, -9664,
- 44560, 171799, 110595, -59056, -153008, -41876, -37581, 186294, 19864, 5369,
- 132607, -92342, -44023, 2147, -62814, -15569, -74625, 5906, -121870, 95563,
- 51540, 9127, -20401, 37581, -82141, -537, -22012, -59593, 30065, 88047,
- 1611, 10201, 11811, 10201, 20938, -11274, -36507, -15569, -15569, -2147,
- -537, 42950, -15569, -14496, 5369, -51003, 28454, -2147, 15569, 35433,
- 0, 28454, -10737, -19864, 10201, -1074,
- },
- {
- 161061, -579284, -430034, -861141, 187368, -31675, -271120, -169114, -396748, 57445,
- 45634, -222265, 555661, 4752382, 682363, -428960, -454193, -113280, -593242, 813359,
- -1629940, 89657, 985158, -1067836, 192737, 198105, 238371, 986769, 183073, 469225,
- -1062468, -313533, 53150, 117575, -65498, -300648, 308164, 109522, 273804, -164819,
- -251792, 164283, 177167, -118648, 324807, 103079, 178241, 25233, 54761, -111669,
- -79457, 42413, -67646, 27380, -58519, -12885, -205622, -1611, 63888, -136365,
- -3758, 187905, 35970, -23622, -121333, 112743, -12885, -41339, 57445, -2684,
- -17180, -4295, 13959, 18254, 41876, 15569, -10737, -2147, 8053, -8053,
- -46708, -17717, 30602, -13959, 12348, 3221, 39728, -32212, -8053, 16643,
- -2147, 63888, 8053, -46708, 22549, 27380,
- },
- {
- -813896, 2183454, -1584306, 1194538, -99321, -1147293, 1359894, 545998, 458488, -361314,
- 576063, -607201, 515933, -49392, -628676, -402116, 156229, -297427, -46171, -493921,
- 140123, 584652, -239444, 204548, -350577, 45097, 108985, 371515, 185757, -173409,
- 365609, -224949, -92342, -171799, 166430, -171262, -163746, 79457, -34360, 170188,
- -164819, 9664, 4295, -188979, -161061, 17717, -119185, 30065, 81604, 53150,
- -180926, -53687, -68183, -92879, -183610, 32212, 61740, 124017, -63888, 2684,
- 13959, -46171, 64961, -67646, 59593, -71941, 78383, -17717, -2684, -27380,
- 52076, -2147, 9127, -32212, -35433, -26307, 37044, -31139, -62814, 0,
- 7516, -27380, -50466, -10201, 20401, -46708, 62814, 38655, -25770, -10201,
- 537, -48318, 0, -4832, 17180, -2147,
- },
- {
- -322659, -864899, 99321, 147103, 265751, -8590, -330176, 797790, -952409, -249645,
- 169114, -264141, 430570, -434865, 1543504, 1484448, 303869, 237834, -384936, 923418,
- 1197222, 758062, -284542, 624381, 796716, -128312, -180389, 213675, 482110, 208843,
- 449361, 54761, 49392, -168041, -100932, 44023, 84289, -317291, 251792, 328028,
- 330712, -179852, 97711, -156229, 113280, 100932, 20938, 10737, 34897, -107911,
- 74088, 39728, 13422, -157840, -178241, -4832, 32749, 51540, 57445, 236760,
- -116501, -99321, 11274, 70330, -3758, -33823, -118648, 120796, -9127, 20938,
- -56371, 90731, 42950, 6979, 31675, -44023, 23622, 71404, 2684, -5906,
- -40802, 2147, -41876, 70330, -11811, -6442, 5906, -29528, -12348, 15569,
- -2684, -31675, 27380, 19864, -2147, 4832,
- },
- },
- {
- {
- -5036386, 39122320, 2305861, -1589138, 910533, -33286, -503585, -264141, 99858, -125091,
- 508954, 517007, -269509, 181462, -1171989, 723702, 136902, -111132, -184147, 892279,
- 782758, -71404, -201863, -183610, 91805, 74088, -335007, -123480, 56371, -36507,
- 427349, -196495, 136365, 55298, 336081, -317828, 65498, 118648, 219043, 233539,
- 167504, -61740, -30602, 43487, 65498, 9127, -64961, 9664, -6442, 136365,
- 154082, -47782, -35970, 13422, -93952, 66035, 73551, -90731, -204548, 6442,
- 49929, 21475, -39192, -48318, -5906, -32212, -19864, 46171, 26844, -5369,
- 28454, -32212, 15032, 55298, -1074, -95026, -16106, 26844, -46171, 46708,
- 10737, 39728, 11811, 11274, 17717, -45634, 59056, -38118, 537, 17717,
- 4832, -8590, 17717, -9127, -11811, -8053,
- },
- {
- -445066, -1631551, 1545651, -1260036, 181999, 90731, 221191, -266825, 285078, 15569,
- -247497, -60666, -407485, 641024, 599148, 89657, -894964, 794569, 357556, -38118,
- -39728, 130997, -311922, -748398, 251792, 410706, 42413, 289910, -49392, -585726,
- -164819, -212601, -209917, -128849, -227096, 130997, 40802, -1611, 91268, 156766,
- -70867, -67109, 171799, 136902, -176631, 33823, 31139, -178241, 110595, 51540,
- 151398, 19327, 81604, 69256, 130997, -157840, -194884, 39728, -26307, -54224,
- 20401, 91268, 9127, -62277, 14496, 54761, -43487, 95563, -11811, -41339,
- 11811, 1611, -26844, -82678, 12885, 50466, -48855, -54761, -6442, 38118,
- 53150, -28991, -37044, 21475, -19327, 30602, 25233, -2684, -5369, 53150,
- -9127, -32212, -3758, 34360, 24159, 2147,
- },
- {
- -616865, 10325638, 2598455, 2634426, 1049583, 408559, 315680, 289373, 90731, -180389,
- -10201, 647466, -479426, -219580, 204548, -142271, 474057, -389231, 920734, -121870,
- 155693, -99321, -282394, -200253, 212064, -171262, 300111, 225486, 237834, 152471,
- 374199, -918049, -254477, 119722, -156229, -132070, 30065, 27917, -210990, -128312,
- -63888, -374736, -190052, -20401, -192737, 106837, -104690, -15569, 17717, -66572,
- -256624, 2684, 126702, 134218, 42413, 76236, -30065, 66035, -68183, 34360,
- -77309, 66035, 87510, 73551, -93416, 14496, 47782, -3758, -35970, 27917,
- -537, -59593, -35433, 81068, -16643, -33286, -32212, -12348, 35433, -24696,
- -18790, 4295, 40265, -21475, -62277, 28991, 27380, 25233, -26844, -2684,
- 17717, -17717, -5906, 2684, -20938, -20401,
- },
- {
- 3104725, -14253386, 956704, -1333051, -282394, 115427, 193810, 79994, -54761, 306016,
- -181462, -244276, -348966, 543850, -211527, 53150, 260919, -181462, 23622, -45097,
- -164819, -270046, 410706, 139050, -81604, 37044, -218506, 506269, -337155, -113817,
- 153545, 181462, 62277, 106300, 35433, -70330, 164283, -10737, -112206, -9664,
- -33286, -19864, -112206, 86973, -241055, -143881, 235686, -51540, 27380, -13959,
- 95563, 30065, -67109, -12348, -13422, 11274, -34360, 13422, 95563, -49392,
- -55298, 37044, 52076, -41876, 62814, 52076, -2684, 67109, -66035, 55835,
- 70330, 23085, -110059, -19327, -6442, -48318, 6979, 25770, 4295, 18254,
- 29528, 31675, 48855, -22549, -4832, -2147, -20401, 33823, -47245, -23622,
- 18254, 27380, -15569, 0, 20401, 4295,
- },
- {
- 626528, -960462, -975494, -90731, 232465, 25770, -39728, 139586, 175020, 127238,
- 87510, -84826, -169114, 165893, -2360085, 585726, -802622, -398895, 3400004, -376347,
- 493384, -485331, -394063, 612570, -622770, 512175, -1323924, -338766, -317291, 277025,
- 609349, 586263, -282394, 179315, -11811, 341450, -689879, -146029, 28991, -107911,
- -59593, -164819, 191126, -69256, -210453, 13422, 78920, -31139, 133144, -23622,
- 152471, -167504, -42950, 108985, -3221, -10737, -60130, 125091, 62277, -29528,
- 30065, 48855, -51003, -56908, 2147, 29528, 20938, 59593, 26307, 5906,
- 48318, -33823, -38118, -5906, -10201, -28991, 18790, -17717, -6979, 59056,
- 18254, 43487, -14496, -81068, 33286, -18254, 13422, 12348, -27380, 11274,
- -21475, 5369, 36507, -23085, -28991, 2147,
- },
- {
- 3723200, -12448963, -691490, 269509, -347892, 12885, -285615, 452045, -282394, -461709,
- 486405, -24159, -272730, -120796, 533113, 63351, 250182, 20401, 537945, -149787,
- -19864, 131533, 161598, -94489, -206158, -80531, -204548, -84826, 33286, -100395,
- 374736, 185220, 177167, -127238, -230318, 61740, 342524, 137439, -32212, 176094,
- 206158, -232465, -163746, 103079, 42413, -117575, -111132, -110595, -28454, 92879,
- 75699, -210990, 4832, 17717, 120259, -120796, 59593, 81068, 99321, 9127,
- -132607, -23085, 41876, 89121, 58519, -42950, -13959, 38655, 19864, 8053,
- -6979, -11811, 33823, -42950, 1074, -20401, 56908, 31675, -12348, -24696,
- 25233, -4832, -30065, -66035, -22549, 18254, 19864, -9127, 52613, -32212,
- -3758, 6979, -2684, 20938, -32212, 537,
- },
- {
- -320512, -671089, 834834, -34360, 52613, -88584, -285078, 103616, 178241, 4832,
- -127238, -6442, 301721, 1566053, 1070521, 1328219, -464393, 76773, -703301, -871342,
- -278636, 441308, -915902, -398358, 297427, 663572, -525060, 1149441, -84289, 392990,
- -68719, 186831, -326418, -427886, 128312, 335544, -211527, -129923, -88584, -155156,
- 76236, 161598, -89121, -162672, -212064, 57445, 106837, 41876, -30065, 24696,
- -73014, -103079, 44560, 45634, 2684, -45097, -10737, 43487, -51540, -78383,
- 64425, -28991, -81604, -20938, -59056, -17717, -34360, 44023, 37581, 9664,
- -138513, 1074, 52076, 5369, 9664, 44560, -8590, 38118, 37044, 7516,
- 3758, 12348, 15569, -24696, -10201, -537, 31139, -34360, -14496, 3758,
- -35970, -24159, -12885, 24159, -4832, -4832,
- },
- {
- -3728569, 30757334, 26844, -966905, 231391, -52076, 148713, -144418, 217433, -186294,
- 446677, 349503, -313533, -414464, 931471, 277562, 60130, -26844, -785442, 127775,
- 294205, -301185, -294205, 77309, 46708, -81068, 318901, 124554, -242129, -93952,
- 25233, -330712, 100932, -462783, -269509, 364535, 264677, 241592, 466541, -105764,
- 86436, -204548, 190589, -9127, -257698, 63888, -27380, 37581, -124017, 156229,
- 67646, 147640, -78383, -170188, 24159, -44023, 64425, 11811, -12885, 13959,
- -86436, -80531, 9127, 37581, 44023, -38118, -28454, 15569, 5906, -36507,
- -1611, 13959, -11274, -22012, 89657, -18254, -74625, 72478, 1074, -8590,
- 25233, 40802, -40802, -537, -11811, -5906, -20401, 28991, -8590, 11811,
- 4832, -18790, -5369, 13422, 11811, -6442,
- },
- {
- -467078, -743029, 1437740, -213675, 231391, -16106, -23622, -268972, 273804, 118112,
- -100932, 1611, -85362, -383326, 1722282, -893890, 1763084, -1034550, -214212, 78920,
- -185220, -209380, 1693291, -134218, 1120987, -260919, -757525, 336081, 194884, -476205,
- 528281, -376347, 59593, 2684, -576063, 192737, 237297, -137976, 260382, -261993,
- 158914, 18790, -111132, 62814, 56908, 194884, -155156, -21475, -85362, 31139,
- 9127, 83215, -135291, -12885, 76773, 76236, -93416, 35970, 113280, -49392,
- 95563, -13422, -44023, -1074, -44560, -70867, -73014, -153545, 52076, 11274,
- 23085, -26307, -84826, -41339, 15569, -6442, -10737, 32212, 46171, -8590,
- 54224, -7516, -67646, -16106, -12885, -26844, 24696, 60130, 6979, -11811,
- -11274, 2147, -12348, -3221, -2684, -7516,
- },
- {
- 653372, 17278116, -3023120, -164819, -13422, 1109712, 139050, -486405, -30065, 54761,
- 17180, -304406, 301185, -175020, -981937, -70867, 121333, 34360, 154619, 71404,
- -34897, 8590, -48855, -210990, 48318, 302258, 105764, -270046, -121333, 37044,
- 61740, 290447, -289373, 85362, 446677, 61203, 2147, 121870, 84289, -168041,
- -163746, -5369, -121870, -92342, -327491, 217433, 97174, -124554, -145492, 6979,
- 164283, -33286, 35433, 221191, -49929, -108985, 194884, 63351, -19327, 6442,
- -69256, 48855, -52613, -8590, 23085, -7516, 22012, 15569, -76236, 2147,
- 4295, 39192, -32749, 22012, 2684, 21475, -5369, 36507, -39728, 48318,
- -32749, -30602, -22012, 20938, -20938, 23622, 38118, 7516, -6979, 29528,
- 537, 12885, -13422, -12348, -12885, 27917,
- },
- {
- -32212, 2171643, -442919, -588411, -257698, -26307, 163746, -396748, -248571, 149250,
- 260382, 633508, -593242, -605590, -805843, 289373, 227633, -941135, -274341, 944893,
- -407485, -745177, 475668, 140123, 494458, -51540, 303332, 214212, -159988, 537,
- -157303, -83752, -81068, -34897, -133681, 221728, -163209, 30065, -70330, -27380,
- -104153, -210453, 177704, 25233, 87510, -17180, -6442, 37044, 42950, 57445,
- 35970, 52613, 14496, -53150, -101469, 52076, -133681, 10737, 126165, 15569,
- -11274, 84826, -17717, -34897, -63888, 73551, -60666, 15569, 39728, 17717,
- 32749, -30065, -41339, -17717, 31139, 10737, -1074, -14496, -92879, 22549,
- -1074, -12348, 58519, 9664, -37044, -28991, 1611, -32212, 24159, -49929,
- -8590, 11811, -12348, 9127, 3758, 29528,
- },
- {
- 1720671, -99321, -1112933, -1159641, -351114, -642635, -391916, -204548, -120259, 329639,
- 155693, -310311, -129386, 72478, -181462, -282394, 265214, 0, -350040, 324807,
- -419833, 206695, 212064, 135291, -244813, -94489, -289910, 112206, 98784, 369367,
- -203474, -39192, -241055, -120796, 267362, -127238, 26844, -92879, -41876, -41876,
- -245887, 157840, -133144, -68719, -69793, 97174, -66572, 52613, -110059, -165356,
- 74088, 98247, -144418, 112206, -167504, 64425, 34897, 50466, 38118, -92342,
- 71404, 73551, -78920, -4295, 89657, 30065, -44560, 5369, -46171, -31139,
- 75162, -34360, -5369, 3221, 27917, 27917, -13959, 2684, -28454, -52613,
- -18790, -2684, 31139, 15569, -6442, 46171, -25770, 0, 20401, -24696,
- 18254, -1611, 38655, 15569, -22549, -1074,
- },
- {
- -181462, 161598, 1474248, -490163, 373125, -134755, 521302, -314069, -392990, 99321,
- -124017, 319438, -2029909, 715112, -1147830, 847182, -412317, 93416, -93416, 485331,
- 410706, -938987, 1546188, 246961, 204011, -194347, 28991, 462246, -112743, 348429,
- 388158, 4295, 187368, -193274, 62277, 9127, -366146, 186831, -131533, -80531,
- -297427, 171262, 195421, 17180, -4295, -142808, 24696, 83215, 159988, -107374,
- -13422, 43487, 137976, -14496, -92342, 77309, 118648, -35433, 76773, -24159,
- -102005, -123480, 41876, 20401, 14496, -16106, 33286, -24159, -24696, 48318,
- -4295, -6979, -38655, 17180, -26307, 26844, 81604, 56371, 18790, 7516,
- 32212, -35433, -29528, -12885, -10201, 6979, -38655, 27917, 3758, 14496,
- -17180, -34897, 28991, 44023, -44023, 28454,
- },
- {
- -108985, 3949223, -1646583, 602369, -330176, -1881196, 136365, 79457, -28454, 170188,
- 221728, -559420, 773631, 48318, 336081, 665720, -152471, -122943, -143345, -365609,
- -120259, -31675, 31139, -302795, -137976, -375810, -426276, 256624, 537, 419833,
- 256087, -44560, 162672, -121870, -76773, -34897, -125628, -86436, -55298, -41876,
- 142271, 53687, 150861, -26844, -40802, -2147, -341987, -306553, -77309, -158377,
- 157303, -57982, -6979, 149787, -55298, 30065, -77309, -44023, -51003, -14496,
- 105227, -116501, 19864, -32212, -6979, -41339, -62277, 29528, 8053, 22549,
- -27917, 30065, -10737, 56371, -7516, -26844, -42950, 49929, 8053, -28454,
- -30065, 28991, -4832, -63888, -9127, -20401, -49929, 32749, 46708, -9664,
- -19864, 15032, -16643, -2147, -14496, 27917,
- },
- {
- 396211, -573915, -1636383, -415001, 143345, -69793, -54761, 662499, -655519, 130460,
- 77309, 42950, -494995, -828929, 7073811, 2587181, -421444, 323733, -792421, 82141,
- 290984, -31675, 125628, 300648, 387621, -152471, -474594, -344134, 501437, -230854,
- 100932, 324270, 103079, -204548, 2684, -326954, -95026, 44560, 132070, 247497,
- 118112, -46708, 340376, -12348, -321049, -17717, -143881, -149250, -8590, -537,
- 30602, -30602, 83752, 33823, -31675, -49929, -28991, 186294, -147640, 133681,
- 154082, 26307, -60666, 537, -11274, 38118, 57445, -130997, 52613, 25770,
- -54761, -54224, 57445, 28991, -3221, 118112, -53687, 23085, 27917, 19864,
- 21475, -23622, -44023, -61740, 32212, -18790, 537, 16643, 5369, -30065,
- 6442, -3221, -22549, 8053, 18254, -2684,
- },
- },
- {
- {
- 3361349, 28029494, -5697274, 1323387, 664646, -139050, -528818, 57982, -184147, -285615,
- 346819, 355945, 55298, -392453, -1611, 145492, 876710, -391379, 6442, 444529,
- 708670, 278099, -198105, -139050, 25770, 53150, -92879, -444529, 135291, -318901,
- 122407, 110595, 155693, -56908, 148713, -114890, -63351, -218506, 334471, 246961,
- 255014, 57982, -230318, 40265, -25233, -91805, 23085, 57982, -26844, 49929,
- 156229, 49392, -63351, -24159, -22549, 136365, 26307, -6442, -73551, -84826,
- 65498, 6442, 75699, -76236, -23622, -32212, -30602, 28454, 35433, 22549,
- 26307, -56908, -13959, 64425, 23085, -30602, -51003, 20401, -28454, -13422,
- -19864, 12885, 18254, -21475, 52076, -51540, 537, -22012, -11811, -11274,
- 10737, -6442, 13959, -4295, -1074, -7516,
- },
- {
- 207232, -1056562, -54761, -196495, 6979, 116501, 285615, -357556, 10201, 12885,
- 43487, 56908, -280784, -30065, 1730872, 491774, -236760, 81604, 690953, 265214,
- 47782, -301721, 83215, -354335, -548145, 209917, 267362, -214748, 31139, -263067,
- -316217, -48855, -91805, -69256, -288837, 104690, 8053, -357556, 91268, 441308,
- -100932, -163746, -169651, 279710, -191126, 69256, 4832, -68719, 83752, 61203,
- 165893, -89657, -4295, 1074, 161598, -80531, -86973, -49392, 38655, -27917,
- -53687, -12885, 44023, 2684, 24696, 66572, -92342, 8053, 1611, -14496,
- -20938, 65498, -21475, -36507, -30602, 57445, 26307, -20401, -44560, 0,
- 53150, -10201, -37581, 16106, -8053, -22012, 12885, -1074, -42413, 43487,
- 5369, -20401, -19864, 7516, 22012, 14496,
- },
- {
- 573378, 8791798, 2680060, 1093606, 1284732, 400506, 138513, 318901, 417686, -166430,
- -259846, 359167, 215822, -427886, 107911, 328565, 185220, -151398, 508417, 874026,
- -191126, 140660, 182536, -134218, -158914, -470299, 529892, -135291, 262530, 397284,
- -71404, -461709, -606664, 94489, 55298, -136365, -73014, -137976, 157840, -279710,
- -46171, -493921, -98784, -216896, -32212, -59056, -35433, -63351, 4832, -139586,
- -172336, -28454, 136902, -5906, 89657, 55298, 30065, 54761, -3758, -8590,
- -25770, -16643, 31139, 136902, -88584, -31675, 8590, -1611, -20401, 18790,
- 32749, -70867, -23085, 29528, 28454, 41339, -51540, -74088, 35433, 18254,
- -13422, -9664, 29528, 24159, -66572, 5369, 19327, 16643, -9127, -5369,
- 24159, 11811, -21475, -537, -6979, -24159,
- },
- {
- -5862631, -3359201, 1529008, -2110440, 231928, 192737, -108985, 88047, -3758, 321586,
- 218506, -108448, -503048, 314606, 153545, 25233, 93952, -38118, 279710, -9127,
- -61740, -216359, 80531, 231391, 537, 393526, -303332, 416612, -584652, -81068,
- 227096, 16643, -114890, 248034, -86436, 188979, -77846, -19864, -62277, -141197,
- 34360, 55835, -155693, 172336, -108448, -327491, 7516, 77309, 20401, 0,
- -48855, 161598, -127775, 109522, -93416, 1611, 24696, -15032, 100932, 33823,
- -58519, 16643, -9664, -98247, 2147, 32212, 16643, 90194, -27917, 537,
- 76236, 88047, -47782, -44023, -5369, -16643, -22012, 16106, -13959, -5906,
- -11274, 25233, 44560, -23085, -15569, 18254, -33286, 27917, -11811, -34897,
- 2147, 24696, 4295, -18790, 19327, 1611,
- },
- {
- -367220, -1901597, 804770, -175557, 131533, 95026, 125091, -3221, 8590, 259846,
- -1611, -57982, -66572, -955093, 81068, 1148367, -1213865, -1089848, 1370095, 527207,
- 71941, -717260, -220654, 365072, 84289, -73014, -330176, 384936, -288300, -55835,
- 551903, 222801, -114890, 84289, -242666, 75699, -501437, 37581, -248034, -127775,
- -77846, 26307, -247497, -56371, 16106, -64961, 136365, 4295, -60130, 49929,
- -26307, 119185, -75699, 63888, 63888, 35970, -64425, 103079, 106300, -40265,
- -53687, 59593, -2147, -116501, -74088, -10201, 27380, 74088, 8053, -42950,
- 104690, 25770, -82141, 17180, -17717, -28991, 4832, -61203, -54224, 22549,
- 5369, 66035, 27380, -84826, 9664, -11811, 18790, 15569, -14496, 537,
- -22549, -6979, 29528, 2147, -39192, -19864,
- },
- {
- -6454799, -319438, 623307, 1052804, -348429, 16106, -237834, -45634, 226560, -654446,
- 115964, 63888, 33286, 42950, 139050, 658741, 138513, 146029, 263067, 28991,
- -406948, -67646, 294205, 73014, -226560, -279173, -35433, -54761, 44023, -107374,
- 388158, 425202, 79457, -224949, -213675, 102542, 206695, 178778, -8053, -20401,
- -239444, 3758, 64961, 174483, -148713, -240518, -39728, 65498, -28991, -31139,
- 123480, -144955, -85362, -118112, 124554, -45634, -19864, 34897, 47782, 15569,
- -66035, -51003, 30065, 73551, 20401, 30065, -30602, 49392, -4832, -5906,
- 12885, -8053, 55835, -55298, 22549, -14496, -4832, 11274, 18790, 10201,
- 16643, 45097, 2684, -75162, -33823, -23085, 6442, -40265, 54761, -6979,
- -11811, 1074, -2684, 24696, -8590, -20938,
- },
- {
- -64961, -1471026, 255551, 434329, 99858, -27380, -154082, -48855, 90731, 115427,
- -90194, 88047, 274341, 1305133, 1926830, 852551, 317828, -135828, -537, -534723,
- -173409, -239981, -1216013, 1224603, -61740, 346282, 28454, 564788, 272194, 27917,
- -85362, 186294, -46708, -392453, -127775, 333934, -294742, -137976, -201327, -388695,
- 148713, 99858, -60666, -49929, -216896, -83215, 44560, 19327, -53150, 45634,
- -64961, -10201, -63351, 41876, 44023, -61203, -97711, 103616, -21475, -53687,
- 32749, 42413, -85899, -46708, -27917, -20401, -71404, -10201, 41876, 61740,
- -90194, -33286, 42950, -16106, -32212, -22549, -14496, -13422, 14496, 41876,
- -2684, 8053, -18254, 8053, -19864, -2147, 30602, 2684, 2684, 39192,
- 5906, 537, -26844, 26307, 5906, -21475,
- },
- {
- 7013682, 19668802, -2019172, -236223, -361851, 5906, 141197, 199716, -107911, -61203,
- -14496, 541703, -149250, 4295, 269509, 368293, -147103, 425202, -464930, -365609,
- 219043, 30602, -391916, 22549, 141734, -67646, 169114, 51003, -110595, -6979,
- 74088, -124554, -304943, -214212, -377957, 42413, 390842, 304406, 117575, 190052,
- -111669, 36507, -17717, 24696, -28991, 21475, -10201, 143881, 33823, -71941,
- 61203, 276489, 113280, -125628, -55298, -90731, -34897, -18790, 48318, 81604,
- -110595, -27380, 0, -4832, 98247, -10201, -12348, -24696, 20938, -23622,
- -5369, 32212, -44560, -69793, 43487, 26307, -100395, 4295, 24696, -17180,
- 24159, 27917, -5369, -7516, -5369, -3221, -49929, 1074, 10201, -15569,
- 11274, -20938, -22012, -3758, 9127, 9127,
- },
- {
- -112743, -1967095, 731218, -338766, 114354, 47245, -137976, -233539, 175020, 113280,
- 110059, 117575, -47782, 591632, -182536, 2274722, 475668, -419296, -983548, 168577,
- 188979, 59593, 435402, 926102, 223338, 654983, -804770, 277562, -378494, 100395,
- 555125, -212601, -223875, -2147, -493921, 111669, 290447, -111132, 133681, 23085,
- -355409, -28454, 62814, -114890, -58519, 3758, -167504, 79457, 26844, -82141,
- 49929, -16643, -57982, -64961, 134218, 59056, -161061, 46708, 12348, 57445,
- 46708, 48318, -25233, 60666, -3221, 24159, -66572, -69256, -9127, 41876,
- 100395, 4295, -33823, -76236, -45097, 15032, 1611, 31139, 50466, -15032,
- 12885, 49929, -19864, -30602, -13959, -25770, -44560, 34360, 29528, -4295,
- -34360, 13959, -6442, -13959, -4295, -16106,
- },
- {
- 392453, 14866492, -1662689, -853088, -135291, -100932, 30602, 272730, -367220, -89657,
- -56908, -450435, 95026, 554588, -1203665, -139050, 165893, -12348, 191126, 192200,
- -152471, 45097, -173946, -98784, -157840, 34897, 311922, -253403, -140123, 49392,
- -16643, 26307, -226560, -75699, 293668, 239981, 198105, -39192, 274878, -242666,
- -98784, -223875, 23622, -102005, -170725, -154619, 213138, -64425, -186831, -147103,
- 110059, -113817, -115427, 244813, 80531, -134755, 73551, 142808, -53687, 71404,
- -23085, -17717, -49929, -41876, 67109, -39192, -12348, 35970, -70330, -22549,
- 37044, 10737, -56908, 18254, 0, 33286, -34360, 34360, -13959, 46708,
- 9127, -17180, -26844, -2147, -51540, -30065, 3221, -1611, -20401, 9127,
- -17180, 43487, -5369, -12348, -26307, 4832,
- },
- {
- 108985, 1155346, -1316944, 213138, 119722, 90731, -560493, -322123, -326954, 15032,
- 357019, -5369, 49392, 90731, -1548336, -15569, 242666, -110595, -574452, 1391569,
- -190052, -314606, -242666, -18254, 219043, 160524, 163746, 35970, 4295, 346819,
- 123480, -146029, -128849, 45634, -98784, 200790, 117575, -16106, -94489, -106300,
- 62814, -105764, -103616, 30065, 73551, -44023, -4295, 5369, 25770, -57982,
- -34360, 18254, 62814, 100932, -29528, -35970, -63351, -48855, 103616, 51540,
- -51540, 30602, 23085, -8590, -127775, 64425, -13959, -65498, 22012, 24696,
- 20938, 17180, -12348, -35433, 21475, 19327, 58519, 20401, -74625, -12348,
- 13422, -28454, 42413, 37044, -2684, -29528, 17717, -12348, 48855, -21475,
- -20938, 3221, -1611, 19327, -13959, 18790,
- },
- {
- -740882, 2389076, -198642, 10201, -1388348, 340913, -651224, -35433, 72478, -439160,
- 711891, 34360, -352187, 397821, 105227, -361851, 69793, 215285, -417149, 122407,
- -316754, 22549, 259846, 63888, -374736, 83752, -333397, 222801, 60130, 105764,
- 46171, -78383, 44023, -195958, 91805, 358093, -85899, 127238, 72478, -180389,
- -190052, 74088, -44560, -141197, 5906, 45097, -5906, 60666, -75162, -191126,
- -62277, 90194, -66035, 71404, -118648, 74625, 93952, 17180, 102542, -66035,
- -6442, 82678, 0, -63351, 62814, 38655, -3221, 24696, -9664, -81604,
- 41876, -16643, -26307, -1611, 2684, 12885, 0, 13959, 10201, -42413,
- -5906, -32749, -12885, 18254, -15032, 52613, -5369, -537, 15569, -49392,
- 9664, -30602, 11811, 15569, -11274, 0,
- },
- {
- 174483, 646393, 784368, -37044, 71941, -35970, 436476, -75699, -324807, -134755,
- -121333, -2684, 395137, -937914, -2786897, 672699, 1059246, -64961, 56908, -55298,
- 1272921, -417686, -258235, 483721, 960999, -105227, -251256, 557809, 60666, -212601,
- 931471, 436476, -63888, -84289, -15032, 295279, -461172, -103616, -128849, -76236,
- -85899, 49929, 162135, 129386, -126702, -138513, -91805, -6979, 108985, -31139,
- 26844, -48318, 112743, -50466, -66035, 10737, 70867, 59593, -35433, 102005,
- -19327, -207769, -35433, -4832, 59593, 13422, 4295, 17717, -27380, 8590,
- 12348, 13422, -30065, 2147, -37581, -40265, 52076, 40802, 24696, 18254,
- 54761, 15569, -30602, 30065, -11811, 6442, -51540, 17180, 32749, 1074,
- 2684, -49929, -18254, 48855, -32212, -13422,
- },
- {
- 681289, 3221226, -1899449, 1138166, 81604, 322123, -1985349, 122407, -242666, 332323,
- -625455, 113817, 117575, -197032, 1468342, 591095, 76773, 419296, -264677, -22012,
- -139050, -342524, -97174, -236223, -158377, -367220, -303869, 191126, -463856, 574452,
- 76773, 81068, 258235, 191126, -322123, 58519, 145492, -188979, -69256, -155693,
- 186294, 32212, 82678, 40802, 104690, 14496, -109522, -330712, -41876, -236223,
- 178241, 16643, -60666, 96637, 69793, 34897, 6442, -84289, 20401, -8590,
- 68183, -47782, -59593, 48855, 4832, 15569, -49392, 20401, -15032, 20401,
- -37581, 41876, -28454, 38118, 12348, 13959, -48318, 27917, 66572, -2147,
- -17717, 25770, 45097, -24159, -29528, 40265, -49392, -22549, 28454, 0,
- -11811, 38118, -8590, 12348, -14496, 14496,
- },
- {
- -192200, -193810, -503585, -297427, -282931, 5369, 10201, -118112, -227633, 326418,
- 2147, 293132, -52613, 1623498, 1188095, 2830384, 138513, 3758, -996432, 238371,
- 517544, -848793, 490163, 564251, -302258, -183610, -482647, -40265, 239981, -79457,
- -56371, 339302, 97711, -408559, 41339, -42950, -407485, 259846, -112743, 239444,
- 44023, -41876, -41339, 62814, -202400, -143881, -134218, 9664, -57445, -73014,
- -36507, 0, -31139, 53687, 54224, 11274, -25770, 68719, -114890, -127775,
- 134218, 30602, -59593, -104690, -19864, 30065, 152471, -105764, -17180, 15569,
- -7516, -77309, -27380, -9664, -18254, 95563, -9127, -14496, 2684, 10201,
- 63351, 1611, 16106, -68719, 537, -6979, -4295, 20938, 12348, -12885,
- 4295, 22012, -17180, -18790, 9127, 15032,
- },
- },
- {
- {
- -1995549, 25309168, -5073967, 1267552, 169114, -6979, 155156, 134218, -37044, 15032,
- -274341, -362388, 89657, -41339, 1313186, -600222, 132070, -404264, 250182, -332860,
- 129923, -54761, -75699, -188979, 130460, 29528, 283468, -364535, 143345, -381178,
- -68719, 315143, 41876, -76773, -176094, 86973, -95563, -362925, -81604, -28991,
- 302258, 318901, -81604, 28991, -46171, -168577, -84826, 222801, 127238, 99858,
- 26307, 16643, -28454, -9664, -15032, 11274, -58519, 56908, 74625, 42413,
- -31675, -66035, 16643, 33823, 25233, 42413, 62277, -45097, 20401, -2684,
- 41339, -2147, -2147, -7516, -13422, 88047, 18790, -53687, 89121, -23622,
- -13422, -30065, -12348, -34897, 3221, 43487, -60666, 32749, 7516, -15032,
- -8590, 12348, -14496, 6442, 15569, 2684,
- },
- {
- -127238, 1480690, 957778, 352187, -84826, -70330, 48855, -74088, -273267, 193810,
- 70867, 244813, -336618, -251256, 1438277, 93416, 307627, -512175, -1245004, -88584,
- -176631, -471373, 865973, 105227, -836982, -576063, 270583, -568009, 143345, 198105,
- 191663, 724239, -117038, -241592, 121333, -13959, 130997, -476741, -160524, 329102,
- 125091, 89121, -218506, -105764, -82678, 27380, -1611, -12885, 184147, -55298,
- -77846, -18254, -35433, -115964, -170188, 69256, 145492, 15032, 32749, 86973,
- -75699, -91268, -25233, 26844, 62814, 18790, 54761, -49929, -62277, 4832,
- 15032, -36507, 4295, 58519, 5906, -32212, 31139, 26307, 18790, -22012,
- -44560, 29528, 36507, -2684, 23622, -18790, -19327, -3758, 14496, -52076,
- 20401, 35970, 7516, -26307, -28454, 537,
- },
- {
- -365072, 7806103, 3410741, -268972, -1649268, -426812, -375810, -70867, 61740, 172872,
- 40265, 27917, 44560, 81068, -334471, 415538, 132607, -86436, -701153, 853088,
- 120796, 879931, 228707, 54761, 119185, -271657, 217433, -550830, 368830, 120259,
- -296890, 415538, -341987, 19864, -51540, 193274, -100395, -178241, 107374, -266288,
- 10737, -142808, 325881, -189515, 173946, -167504, 126702, 37581, 18790, -155156,
- 3758, 44560, -20401, -5369, -15569, -76773, 75162, -68183, -71941, 5906,
- 63888, -111132, -16106, -14496, 73014, -41876, -73551, -15569, 58519, -23085,
- 24696, 42950, -13959, -25770, -11274, 1074, 33286, -15569, -28454, 22012,
- 1074, 12348, -30065, 47782, 20938, -19327, -11274, -34897, 24696, -17717,
- -11811, 11811, 9664, 1074, 14496, 22012,
- },
- {
- 6416145, 10945724, -792958, -2652142, -174483, 54224, -499290, 139586, -198105, 10201,
- 376347, 116501, -532576, -250182, -388695, 41339, 118112, -372588, 9664, 225486,
- 23085, -12348, -130460, -31675, 24159, 312996, 323196, 409096, -15569, -59593,
- -190052, 31675, -171799, -98247, -185220, 62277, 129923, -357556, -45634, -271657,
- -94489, 155693, -129386, 36507, 120259, -55835, -177704, 59056, 0, 173409,
- -66572, 49929, 15032, 57982, -39728, -6979, 42413, 30602, -53687, 55298,
- 12348, 21475, -85362, 28991, -100395, -59056, 34897, -81068, 49929, -19327,
- -30602, -15569, 68183, 12885, 15569, 31675, -30602, -6442, -15569, 15032,
- -36507, -15032, -36507, 6979, -16106, 13959, 4295, -36507, 38655, 11811,
- -5906, -20938, 16643, 4295, -11274, -17180,
- },
- {
- 228170, -4134980, -769873, 279173, -260919, 42950, 175020, -34897, 38655, 258235,
- 6442, 103079, 219043, -74088, 1950452, 1478543, 115964, 642635, -3660923, -381178,
- -105764, -164819, -205085, -593242, 263604, 295816, 1599339, 431107, -756988, -776315,
- -226023, -126702, 141197, 49392, -41876, -123480, -141197, 327491, -36507, 219043,
- -139586, 198642, -169651, -83752, 177704, 64961, 58519, 176094, -103079, -34897,
- -186294, 115427, 162135, -74625, -35970, 32212, -20401, -6979, 47245, 59056,
- -35433, 21475, 34897, -23085, 25233, -66035, -44023, -10201, 9127, -17180,
- -39192, 20938, -34897, 4832, -15032, 33823, -11811, 6442, 5369, -54224,
- -10201, -33286, 36507, 33286, -52076, 18254, -18790, -8590, 26844, 537,
- 1611, -6979, -23085, -1611, 26307, -7516,
- },
- {
- 6360847, 15802795, 107911, 2433099, 941135, 28454, 440234, -794569, 481036, 631360,
- -518617, -317828, 60130, 263604, 394063, 419833, -37044, 251792, -87510, 307627,
- -19327, -448824, -203474, -55298, 42413, -211527, 163746, 36507, 334471, -108985,
- -157840, 69793, 258235, 77309, -206695, 158377, -18254, -88047, -52076, -129923,
- -259309, -151398, 97174, -34360, -209380, -128849, -116501, 65498, 17180, -31139,
- -81604, 170725, 85899, -85899, -133144, 123480, 65498, -80531, -107374, 24159,
- 23085, 37581, -10201, -73551, -78383, 67646, 1611, -14496, 26844, 10737,
- -8053, -10737, -7516, 20401, -8053, 40265, -24696, -43487, -2147, 17717,
- -19864, 13959, 24696, 39728, 537, -23622, -25233, 10201, -48318, 25233,
- -5906, -5906, -8590, -13959, 31139, -6979,
- },
- {
- 252329, 417149, -508417, 205085, -38655, 27380, 70330, 162135, -67646, 114890,
- 62277, -5906, -246424, 410706, 1437740, -1653562, -570157, 422517, 568546, -136902,
- 306016, -424665, -1247688, 1047972, 32749, 335544, 401043, -341450, 253403, -122943,
- -38655, 301721, 103079, 242129, -245887, 32212, -144418, 130997, -67646, -107911,
- -125091, -226023, 153545, -26307, 128849, -30602, -153545, -12348, -12885, 11811,
- 42413, 37044, -97711, -74088, -4832, -4295, -2147, -46708, 20938, 20938,
- 20401, -11274, 28991, 57982, -2684, 3221, 15569, -29528, -58519, 9127,
- 66035, 46171, -16643, -23085, 9127, -56371, 13422, -23085, -26844, -19864,
- 33823, -4832, -9664, 8053, 3221, 1074, -29528, 38118, -10737, -9127,
- 24696, 31675, 15569, -18254, 5369, 2147,
- },
- {
- -8404177, 340376, 2654290, 338766, -265214, 29528, -293668, 441308, 16643, 55835,
- -435402, -412317, 345745, 516470, -156766, 284542, -319438, -70330, 708670, 101469,
- -355409, 477815, 210990, -75699, -114890, 190589, -25770, -52613, -277025, 102005,
- 268972, -12885, 56908, 83752, -98784, -104690, -195421, 38655, -184147, -70867,
- -95563, 97711, -13422, -198105, 235149, -208843, -273804, -16106, 160524, -103616,
- -32749, -129923, 37581, 199716, -38118, 17180, -23085, -33286, -47782, 30602,
- -31675, 91268, 57445, -73014, -7516, 35970, 18790, 3758, -13422, 33286,
- 38118, -3221, 11811, -5369, -78383, -31675, 82678, -90194, -35970, 19327,
- -37044, -15569, 16106, -6442, -6442, 15569, 18790, -24696, 10737, -26844,
- 2147, 11811, -9127, -3221, -17717, 0,
- },
- {
- 454193, -96637, -1671279, -207232, -218506, 51540, 54224, 69256, -158377, -124554,
- 2147, -5369, -400506, -285078, -824097, 1985886, -2044404, -217433, 329102, 216896,
- -402653, 624918, -969052, 656593, -540092, 508954, 747861, -442382, 196495, 390842,
- -331786, 193274, -347892, 414464, 260382, -113817, 247497, 97711, -223875, 208306,
- -227096, -269509, 168577, -43487, -204548, -178241, -18790, -17717, -13422, -165893,
- -3758, -37044, 106837, -49392, -42950, 30065, 96637, 34360, -64961, 42950,
- -60666, -4832, 43487, -22012, 26307, 127238, 40265, 85362, 0, -15032,
- 23085, -15569, 68719, 89121, -57445, -13422, 8053, 42413, -22549, -3221,
- -57982, 2147, 64425, 13422, 24159, 10201, -13959, -36507, -18254, 8590,
- 2684, -11811, 2147, 5906, 1074, 8053,
- },
- {
- -763967, 10313827, -874026, -59593, 173946, -647466, 238908, 185220, -85899, 100932,
- -238371, -274878, -284005, -18254, 126165, 93416, 261456, -172336, -328565, 135291,
- 366146, -132070, -79457, 81068, 96100, -67646, 117038, -172336, -168577, -39192,
- 158914, -2684, -30065, 66572, -78383, 24159, 133144, -61740, -20401, -42413,
- 18790, -59056, -114354, -26307, 205622, -260382, 6442, -31675, -19864, -106300,
- -162672, -24159, -89657, -150861, 76236, 15032, -18254, -34360, -21475, -69256,
- 127775, -18790, -34360, -7516, -15569, 38118, -38118, 21475, 33823, -43487,
- -9127, -18254, 22549, -42950, 4832, -1074, 22549, -47245, 48318, -27917,
- 6442, 40265, 31139, -35433, 20401, -5906, -52076, -15569, -1074, -43487,
- 3758, -21475, 18254, 16106, 19327, -18790,
- },
- {
- -201863, -142808, -1137093, 53687, -27380, -112206, -1083942, -135291, 78383, 81604,
- -28991, -600222, 679142, 308701, -495532, 6979, -263604, 641561, -193810, -656593,
- -216896, 451508, -417686, -762357, -555125, 626528, -254477, -369367, -377957, 49929,
- 282931, 150324, 95563, 51003, 233539, -299037, 47245, 85899, 35433, 76236,
- 108448, 121333, -110059, -82678, -33286, 10737, -12885, 76773, 27380, -71404,
- -55835, -148176, -77846, 97711, 124554, 5369, 27380, -17180, -13422, 24159,
- 28454, -87510, 5369, 70330, 25233, -17180, 74088, -5906, -61740, 4832,
- -34897, 26844, 31675, 2684, -34897, -23085, -4832, 12885, 69256, -37044,
- 10737, 23085, -44023, -26844, 25233, 10737, 0, 13422, -18790, 43487,
- 1074, -11274, 15569, 1074, 4832, -35433,
- },
- {
- -772020, 1961726, 507343, 602906, -301185, 158377, 645319, 216359, -179852, -224412,
- -3221, 508417, -179315, 388695, 379031, -106300, 181999, 21475, -9664, -340913,
- 190052, -141197, -109522, -169651, 74625, 96637, -6979, -226023, 146029, -456340,
- 113817, -6442, -21475, 67109, -341450, 88584, -212601, 169114, 491237, -35433,
- 6979, -76236, 67109, -133144, 159988, -74088, 11274, 206695, -7516, -30602,
- 71941, -33286, 115964, -16643, -40265, -19864, 34897, 15032, -8053, 95563,
- -46708, 0, 66035, 22012, -103079, -9127, 20401, -10737, 75699, 13959,
- -70867, 28454, 5369, -2147, -18254, -33286, -5906, -1611, 19864, 18790,
- 24696, 15032, -64425, -3758, 4832, -50466, 40802, -537, 17180, 12348,
- -10737, 5369, -33286, -25233, 14496, -3758,
- },
- {
- -140123, 762894, 433792, 207232, 150861, 139586, -241592, 241055, 133144, 253940,
- -27380, -505196, 1036161, 409633, 452045, -128312, 609349, 375273, -296890, 592169,
- -621697, 997506, 614180, -154082, 435939, -86436, -188442, 871878, -191126, 437013,
- 194884, 326954, -199716, 87510, -52613, 117575, 163746, -314069, 193274, -100395,
- 46171, 45634, 59593, -16106, 136902, 27380, -61740, -97174, 85899, 33823,
- -9664, -45097, -91268, 18254, 113280, 28991, -204011, 81068, -146029, -21475,
- 119185, 85362, -118648, -96637, -71941, 128849, -64961, -38118, 60666, -23622,
- -10201, 16643, 3758, -12885, 48318, -30065, -24159, -25770, -10201, -11811,
- -17180, 42950, 9664, 20938, 5369, -5906, 32749, -42413, 11811, -12348,
- 14496, 45097, -41876, -34897, 36507, -17180,
- },
- {
- -564251, 1533840, -1431835, 1286880, -90731, 1714229, -800475, 366683, 285615, -134755,
- -273267, 127775, -558346, -101469, 948651, -520228, 156229, 350040, 188442, -80531,
- -81068, 161061, -292595, 303869, -184684, 137976, -52613, 339839, -139050, -142271,
- 62277, -169651, -79994, 169651, -72478, -78920, 77846, 20938, -70330, -7516,
- -34897, 113280, 19864, -40802, 52613, 60666, 261456, 82141, 11811, -27917,
- -71404, 103079, 13959, -52076, -22012, 16106, 115964, 38118, -19327, 21475,
- 6442, 5906, -48855, -2147, 81068, 19327, 90194, -5906, 12348, -18254,
- 24696, -5906, -5906, -34360, 3221, 23085, 57445, -42950, -20401, 24696,
- 35433, -10737, 15032, 44023, -3221, 10737, 53687, -25233, -40802, 9127,
- 21475, -13422, 11811, 12348, 15032, -18790,
- },
- {
- 54224, 108985, 755914, 423591, -169114, -81068, -241592, -159988, -248571, -56908,
- -171799, 79994, 416612, 3907883, -4510253, -1826972, 35970, 37581, -1030255, -29528,
- 326954, -842350, 90194, 766652, -592169, 202937, -27917, -116501, -53687, -113280,
- 64961, 182536, 224412, -187368, -156229, 277025, -264141, -184147, -124554, 134755,
- 153008, -42950, -345208, -186831, 222801, -64961, -44560, 237297, 81604, -148713,
- -63888, 7516, -62277, -74625, 20938, 139050, -537, -85899, 81604, -66572,
- -146029, -81068, 53687, -47245, -3758, -89657, -537, 180926, -96637, 14496,
- -1074, 60666, -37044, -49929, 10737, -70867, 56371, 26307, -23085, -33286,
- -20938, 29528, 26307, 68719, -44023, 9664, 10201, -25770, -3221, 32749,
- -4295, 2147, 27380, -11811, -22549, 10737,
- },
- },
- {
- {
- 2965138, 14825690, 2505577, 1581085, -605590, -73014, 354335, -175020, 53687, 248034,
- -88047, -294742, -38655, 79457, 651761, -96100, -565325, -95026, -114890, -91805,
- -45097, 92879, -253940, -74088, 102005, 59593, 213138, -134218, 61740, 145492,
- -206158, 280247, -143345, 1611, -242666, 186831, -136365, -220654, -55298, -119722,
- 108448, 341450, 78383, -15032, -48855, 10737, -113280, 169651, 62277, 156766,
- 18254, 72478, 26844, -52076, -57982, -48318, -68183, 12885, -15569, 113280,
- -31675, -93416, -60130, 86436, 48855, 24159, 62814, -10737, -2147, 12348,
- -25233, 43487, 15569, -25233, -30602, 44023, 47245, -32749, 63351, 35433,
- 9664, 13959, -31139, -9127, -33823, 49392, -12348, 25770, 18254, 8053,
- -10201, 14496, -11274, -5369, 10737, 4295,
- },
- {
- 188442, 3919158, -1459215, 561567, -162135, 37581, -391916, 250719, -89121, 17717,
- 116501, 181462, -577673, 318364, 1016834, -241592, -325881, 60130, -2008971, -590558,
- 223875, -688805, 738198, 517544, -519691, -624918, 435402, -512175, 65498, -73551,
- 369367, 792421, -215285, -13422, 75162, -29528, 139586, -195958, -171262, -17717,
- 246424, 250182, -47245, -172336, -93416, -41339, 60666, -4832, 2684, 72478,
- -110595, 33286, 41339, -41339, -235149, -48318, 147103, 32212, 9664, 5369,
- 6979, -2684, -35433, 6442, 43487, -19864, 119722, 7516, -50466, -8590,
- 23622, -70330, -11274, 22549, 39192, -38655, -24696, 23622, 20938, 10201,
- -43487, 15569, 35970, -7516, 29528, 16106, -11811, 4832, 40265, -38655,
- -537, 26844, 20938, -8053, -16106, -11811,
- },
- {
- -103616, 10422812, 401043, -819802, -762894, -540092, -211527, -120796, -106837, -21475,
- 282931, -63351, 116501, 476741, -399432, -50466, 263604, -11274, -762357, 388158,
- 210990, 603443, 59056, 117575, 151398, -11811, 150861, -158914, 209917, -181462,
- -31675, 234076, 537, -61740, 11274, 147640, -29528, -134218, -19864, -153008,
- -172336, 90194, 144418, -5369, 149250, -4295, 104690, 78920, 19327, -46171,
- -96637, 82141, -5369, 31675, -40265, -76773, 24696, -49929, -61740, -32212,
- 37581, -19327, 2147, -62277, 41339, 35433, -69256, 23085, 35433, -16643,
- -20401, 54761, 34897, -16106, -38118, -51003, 29528, 44023, -31139, -8053,
- -2684, 15569, -16106, -1611, 45097, -10201, -14496, -20938, -1074, -8590,
- -13422, -8590, 15569, 5906, 2147, 28991,
- },
- {
- -4252018, 25422448, -1135482, -2385318, 12348, -5369, -265751, 66572, -69793, 154082,
- -241592, 25233, 31139, -838056, -160524, -460635, 239444, -484794, -158914, 186294,
- 58519, 12885, 38118, -89657, -2147, 47782, 452582, 272194, 203474, 32212,
- -125628, 24696, 6442, -199716, -258235, 145492, 158377, -258235, -23622, -373125,
- -43487, -100932, 129386, -58519, 61203, 31139, -87510, 89657, -74625, 169114,
- 70867, -82141, 91805, 23085, -40802, -15032, 4832, 64961, -51540, -15032,
- 33823, 56371, -59593, 97711, -60666, -59593, 22549, -78920, 17180, 2684,
- -23085, -70330, 17180, 41339, -6442, 21475, 4295, -14496, 1074, 18254,
- 6442, -13959, -33286, 10737, -17717, -5906, 22549, -26307, 7516, 23622,
- 5369, -19327, 2147, 13422, -12348, -8053,
- },
- {
- -312459, -5055177, 368830, 108448, -153008, 7516, 157840, 180926, -157303, 194347,
- 170188, -75699, 274878, -517544, 3732864, -612570, 594316, 688805, -1137093, -1339493,
- -349503, -233002, 93952, -888521, 682363, -118112, 648003, 164819, -124554, -878858,
- -254477, -24696, 57445, 112743, 78920, -34897, -77309, 223338, 17180, 347892,
- -32749, 48318, 2684, -44023, 161598, 76773, 70330, 84826, -46708, -68183,
- -12348, -42413, 157303, -91268, -44023, -22012, 7516, 32212, -53150, 38118,
- 49929, 2684, 3221, 29528, 71404, -36507, -10201, -30065, 8053, 19327,
- -79457, -33823, 21475, -11811, -30602, 42413, 3221, 35433, 41876, -27380,
- 13422, -48855, -25770, 66035, -34897, 6442, -18254, -18790, 22012, 9664,
- 7516, 2684, -26844, -12348, 31139, 6979,
- },
- {
- -3065533, 30309048, -665720, 2697240, 14496, 28991, 324807, -354872, 123480, 849330,
- -309775, -355409, -117575, -125091, 766115, 177704, 125628, 207232, -119722, 233539,
- 206695, -17717, -640487, -183610, 222265, -68183, 50466, 37581, 40802, 183610,
- -163209, -149787, 184684, 339839, -158377, 110059, 38655, -241592, 34897, -73551,
- -210453, -9664, -13422, -206695, -229781, 52076, -198105, -35970, 7516, 99321,
- -164283, 95563, 169114, -21475, -79994, 47782, 146029, -25233, -51003, -24696,
- -34897, 91805, 7516, -45634, -94489, 7516, 29528, -10201, 30065, -13959,
- -13422, 17180, -34360, 35433, -14496, 15569, 8053, -17180, -17180, -9127,
- -19864, -33286, 5369, 39192, 9664, 12885, -16106, 31139, -42950, -537,
- 8053, -8590, 2684, -26307, 15032, 8590,
- },
- {
- 137439, 1209570, 194884, -412317, -53150, 45634, 122407, 218506, -67109, -40802,
- 17180, 44560, -404264, -353798, 1185948, -1716376, -617402, -144955, 405338, 317828,
- 126165, 42950, -2012192, 311922, 402116, 369904, 702764, -222265, -61740, 272730,
- -223338, 120796, 137439, 341450, -537, -170725, -64961, 235149, 8590, 116501,
- -124554, -235686, 98247, -55835, 176631, 62277, -74625, 3221, -45634, -33823,
- 4832, 60130, -51003, -59593, -27917, 28991, 77846, -106837, 19327, 49392,
- -11811, -75699, 52076, 30065, 13959, 15569, -10201, 37581, -57445, -35970,
- 45097, 64961, 1074, -22012, 57982, 6442, 17717, 12348, -5369, -30602,
- 18790, 2684, 11274, -13422, 11274, 2147, -32212, 1611, -12885, -37581,
- -9664, 7516, 26307, -22012, -8590, 16106,
- },
- {
- 6863895, -18351858, 137439, 296353, -56908, -8590, -325881, 115427, 59593, 146029,
- -237834, -475668, -1611, 428423, 350040, -73014, 14496, -491774, 425739, 497679,
- -235686, 205622, 336081, 54224, -146566, 115964, -82678, 102005, -474057, 119722,
- 347892, -61740, 141734, 38655, -34897, 31675, -190052, -163209, -13959, -133681,
- -114890, 63351, 24159, -259846, 48318, -220654, -224949, -56908, -32212, 74625,
- -4295, -224949, -119185, 162135, -7516, 88047, 84826, -6442, -68719, -45634,
- -41876, 72478, 42413, -25233, -34360, 16106, 19327, 17717, -24159, 34360,
- 33286, -5906, 24696, 66572, -56371, -55835, 88047, -38118, -26844, -2147,
- -4832, -37581, -537, -1074, -8590, 11811, 39192, -6979, 1074, -3758,
- 1074, 6979, 10201, 3758, -8053, -10201,
- },
- {
- 146029, 1570884, -1810866, 213138, -183073, -59593, 67646, 131533, -106300, -133144,
- -52076, -304406, -253940, 285615, -2074469, -900333, 478889, -939524, 368293, -111669,
- -252866, 492848, -869194, 944356, -402116, 371515, 308164, 76773, 159451, 133681,
- -428960, 82141, 83752, 35970, 380641, -86436, 230318, 132070, -149250, 104153,
- -6442, -219580, 42413, 159451, -95563, -42950, 33286, -133681, -60130, -134755,
- -63351, 3221, 79457, -9664, -19864, 37044, 133681, 64961, -3221, 8590,
- -56908, -82141, 35970, -91268, 18790, 55298, 23622, 57982, 13959, -18254,
- -35970, -30065, 39192, 94489, -5906, -22012, 6979, 32749, -20401, -6979,
- -32749, -41339, 38118, 22549, 22549, 20401, 25770, -8590, -37044, 1611,
- 28991, -13959, -2684, 6442, -1074, 23622,
- },
- {
- 695785, 5738613, 2564096, -289910, -197032, 404264, -35970, -270046, 64961, 165893,
- -146566, 22012, -137976, -525060, 616328, -308701, 124554, 12885, -122943, -33823,
- 525597, -270583, 24696, -149250, 352724, 4832, -51540, -66572, -63351, -181462,
- 265751, 176094, -39728, 95026, 111132, -139586, -30065, 51540, -180926, 61740,
- 55835, 89121, -113280, -92342, 112743, -62814, -107374, -537, 114354, -42413,
- -180389, 71941, 42413, -157840, -20938, 32212, 537, -68719, 5369, -89121,
- 38655, 2684, 12885, 16106, -41876, 32212, -2147, 2147, 56908, -14496,
- -33823, -14496, 53150, -52613, 15032, -13422, 46708, -45634, 19864, -34360,
- -8590, 19327, 37044, -12348, 45634, 37581, -20401, -5906, 6979, -21475,
- 12885, -35433, 0, 20401, 27917, 1611,
- },
- {
- 155693, -1011465, -509491, -384400, 322659, -113280, -359704, -330712, 211527, -16106,
- 27917, -108448, 319438, 41339, 82141, -146566, -439697, 234076, 173409, -865973,
- -589484, 394063, -689342, -125091, -567473, 356482, -164283, -267362, -595390, -14496,
- 42950, 166430, 127238, 36507, 295279, -358093, -59593, -33823, 105227, 71404,
- 91268, 8053, 16643, -39728, -41339, 62277, 24159, 4832, 113817, 24696,
- 5369, -136902, -108448, -46708, 75162, 23085, 28454, 39192, -36507, 16106,
- 54761, -57982, -13422, 40265, 117038, -34897, 42950, 62814, -21475, -20938,
- -27917, -4832, 13959, 12885, -35433, -34360, -43487, -30065, 63351, -5906,
- 4832, 26844, -35970, -48855, -7516, 20401, -18790, 1074, -48318, 25770,
- 10201, -9664, 8590, -3221, 17717, -22549,
- },
- {
- 1660542, -3008625, 2036888, -138513, 245350, 275952, 202400, 281857, -393526, 231928,
- -300648, -74088, 351114, 183610, 232465, -114890, 3758, -120259, 249108, -366683,
- 384400, -18790, -401579, -11274, 215285, 13959, -33286, -196495, 42413, -239981,
- -116501, 98247, -122943, 34360, -201863, -179852, -276489, 12885, 310311, -15569,
- 144955, -52076, -107374, -32212, 122407, 37581, -15569, 89657, 54761, -3758,
- 184684, -24696, 107374, -39192, -38118, -70867, 10737, 53150, -79457, 65498,
- 43487, -24159, 7516, 48318, -64961, -33823, 13959, -31675, 24696, 56371,
- -41876, 13422, 27380, 2147, 7516, -26307, -25233, -15569, -3221, 28991,
- 11811, 39192, -35433, -4295, 19327, -63888, 25233, 4295, 6442, 44560,
- -2684, 26844, -15032, -22549, 5906, 3758,
- },
- {
- 88047, 1545115, -596464, 175557, 26307, 191663, -343597, -32212, 292595, 388695,
- 38118, -365609, -96100, 1335198, 853088, 857383, 164283, 170188, -345208, 781147,
- -1128503, 565862, 1339493, 193810, -476741, 214212, -95563, 942208, -124554, 718333,
- -249108, 70330, -145492, 86973, -15032, -141197, 114354, -83752, 148713, 2684,
- 32212, 124554, -4832, -19864, 180926, 16106, 10737, 18254, 45634, 24159,
- -30602, 62277, -35970, -37044, 154082, 103616, -161598, -537, -69793, -77309,
- 13422, 108985, -26307, -83752, -83752, 62814, -18790, -60130, 44023, 27380,
- -23085, -11274, 11274, -11811, 62814, 35970, -9664, -22549, -24696, -17180,
- -33286, 1074, 8053, -13422, 5369, -19327, 56371, -34360, -17180, 3221,
- 0, 46708, 8590, -45634, 25233, 19864,
- },
- {
- 53687, 640487, -737124, -239981, -1611, 503048, 805306, -128312, 652835, 29528,
- -49929, -158377, -365072, 964220, -668404, -581431, -93416, -320512, 337692, -115427,
- -94489, 283468, -128849, 386010, -139050, 71941, 10201, 304943, 200253, -268435,
- 60130, -202937, -142808, -92879, 89657, -226023, -65498, 88047, -79457, 46708,
- -92879, 79994, 114354, -63888, -25233, 36507, 114890, 134218, 20938, 49392,
- -115964, -35433, 141734, -23085, -84826, -26844, 52076, 54224, -16643, -3221,
- -4832, 28454, -14496, -73551, 49392, -20938, 76773, 0, 30602, -38118,
- 46171, -8053, 5906, -23085, -3758, -5369, 63888, -24159, -68183, -11811,
- 31139, -6442, -21475, 12348, 5369, -26307, 46171, 22549, -28991, -1611,
- 21475, -32212, 1611, -3758, 19327, -8590,
- },
- {
- -180926, 63888, 661425, 398895, 14496, -93416, -317291, 95026, -303869, -87510,
- -77846, -111669, 160524, -144418, 530965, -906775, -623307, 5906, -386547, -412317,
- 216896, -62277, -537945, 755914, -10201, -214748, 647466, -661962, -261993, 84826,
- 6442, 228707, 253403, -13959, -196495, 155693, 33823, -265751, -154619, 21475,
- 101469, 121333, -195421, -74088, 84826, 69793, -39728, 233002, 85899, -76236,
- -73014, -44560, 44023, -43487, -36507, 35970, 40802, -68183, 117575, 117575,
- -84826, -117038, 93416, 6442, 38118, -90194, -85899, 146566, -38118, 19864,
- -18790, 72478, 33286, -11274, 46171, -74625, 28991, 46708, 7516, -20938,
- -61203, 4832, -20938, 60666, -7516, 2147, 10737, -25770, -6979, 17180,
- 0, -17717, 20938, 11274, -11274, -8053,
- },
- },
- {
- {
- -3539590, -1454383, 1249299, 2408403, 357556, -194884, -104153, -29528, -10201, -302795,
- 179852, 394600, -77309, -622233, -784905, 578210, -193274, 50466, -42413, 784368,
- -192200, 39728, -18790, 37044, -87510, 40265, -282394, -274878, -48855, 346819,
- 13422, 44023, -221728, -131533, -13959, -137439, -75699, -222801, 6979, 33286,
- -129386, 30602, 65498, -40265, -108448, 102542, 49929, 11274, -115427, 54224,
- 35970, -7516, -19864, 2147, -63351, -38655, -63888, -35433, -109522, -22012,
- 85899, 16643, -5906, -19864, 24696, -38118, -10201, 99321, -31139, 9664,
- -53150, -7516, 6442, 40265, 18790, -43487, -20401, 31139, -63351, 38655,
- 537, 52613, 4832, 16643, -1611, -57982, 53687, -17180, 9127, 21475,
- 16643, -8590, 19327, -8590, -6442, -3758,
- },
- {
- -149250, 4440460, -423054, -142808, 310848, 178778, -336618, 119722, 215822, -183610,
- 73014, 34897, -308164, -379031, 180389, 1119913, 266288, 1093606, -105227, -592706,
- -106837, -833761, -357019, -23622, 442919, 491774, 562104, 102542, 309775, -155156,
- 146029, 174483, -252329, 467615, 93416, 214748, -42413, -16643, 131533, -64961,
- -121870, 78920, 114890, 99321, -205622, 21475, 47782, -24159, -155156, 99321,
- 15569, -60666, 28454, 64961, 90194, -181462, -5906, -23622, -14496, -135291,
- 6442, 70867, 73551, -25770, -40265, -16106, -27917, 90731, 39192, -24696,
- -12348, 48318, -16643, -76773, 8590, 71941, -26844, -18790, -48855, 28454,
- 37581, -24159, -33286, 11274, -8053, 7516, 25770, 19327, -12885, 48855,
- -16643, -30602, -11811, 17717, 27917, -2147,
- },
- {
- 254477, 11651173, -591095, -1414655, 882616, 51540, 99321, 25770, -41876, -330712,
- 210990, 176094, 19864, -99321, -302795, -516470, 402116, -68183, 467615, 128849,
- -416075, -230854, -34360, -178241, -172336, -103616, 279173, 229781, 77309, -116501,
- 361851, -308701, 177167, 378494, 309238, -259846, 10737, -8590, 128849, 19864,
- 27380, -35433, -199179, 127775, -18790, 119722, -10201, -19327, 89121, 109522,
- -254477, 30602, 44560, -100395, -12348, 77846, 37044, 72478, 18790, 10737,
- -68719, 61740, 41339, 53687, -92879, 60130, 19327, 40802, -37044, 44560,
- 537, -51540, 23085, 34360, -8053, 24696, -40265, -12348, 49392, -20938,
- -23622, -11811, 38118, -14496, -24159, 10737, 9664, 38118, -28991, 4832,
- 18790, -14496, -16643, 6442, -16106, -12885,
- },
- {
- 32749, 32927366, -282394, -2457258, 111132, 141734, 152471, -48318, 118112, 447213,
- -562104, -387084, 162135, -466004, 317291, -747324, 31139, -35970, 51003, -104153,
- -144418, -238371, 235686, 170725, 91268, 247497, -374199, 10737, -86973, 177167,
- 317828, 114890, 60130, 154619, -88584, 353261, -56371, 24159, -138513, -221191,
- 298500, -286689, 44560, 111669, -69793, -87510, 178778, 161061, 12348, 23622,
- 26307, 34360, -20401, 88047, -7516, 38655, -23622, 13422, 61740, -104690,
- -53150, 74625, 64425, 3758, 38118, 9127, -40265, 62814, -61203, 23622,
- 62277, 29528, -92342, -3758, -7516, -5369, 25233, 7516, -9664, -28454,
- 29528, 14496, 38655, -15032, -8590, 8590, -16106, 39192, -38118, -26307,
- 5369, 19327, -6979, -6979, 15032, 10737,
- },
- {
- 257698, -4125316, -170188, -406411, 242666, -30065, -156229, 88047, -181999, 83215,
- 52076, -11811, 383863, -499827, 4559645, -33286, -1282585, -2118493, 3093450, -405338,
- -192200, -680752, 420907, 42413, 111669, -722091, -1163399, -405874, 998580, 95026,
- -268435, 271120, -186831, 172336, -263604, 11811, -75162, 13959, -32749, 142271,
- -44023, -111132, 115427, 38118, -47245, -103616, -33823, -78920, 49929, -185757,
- 84289, -31139, -84826, 47782, 0, 3221, -31675, 70867, -17717, -64425,
- 37581, 44560, -43487, -56908, 27380, 53150, 54761, 35970, -8590, 6979,
- 88584, 2684, 13959, 24159, -22549, -37581, 15032, -14496, -2147, 37581,
- 15032, 46708, -27917, -33286, 39192, -24159, 8590, 11811, -16106, 5906,
- -13959, 5369, 23085, -1074, -25233, -3221,
- },
- {
- -2416993, 34308736, 918586, 2543158, -642098, 2147, -207232, 519154, -246961, -396748,
- 471910, 220654, -156229, -532039, 406411, 130460, -44023, -146029, -26307, -68183,
- -61203, 543850, -71404, -189515, -79994, -4832, 3221, 216896, -464393, 0,
- 156766, 120796, 64961, 144418, -45097, -75162, 9664, -188979, -25233, 15569,
- -110059, 353798, -172336, -114890, 1074, 127238, -2684, -107374, -192737, 6979,
- 41876, -166967, 41339, -33286, 169114, -94489, 56371, 60666, 79994, -23085,
- -96100, -10201, 0, 63888, 31139, -19864, -12885, 41876, 10201, -11811,
- -6979, 2147, 15569, -20401, 18254, -66035, 20938, 39192, -5369, -13959,
- 32212, -537, -18790, -56371, -11274, 10201, 26307, -4295, 59593, -40265,
- 6442, 3221, 13959, 8053, -29528, -4295,
- },
- {
- -288837, -4832, 1939715, -95026, 3221, -46708, -53150, -28991, -24159, -5906,
- -71941, 154619, 85362, -272194, 1178432, -30602, -128312, -119185, -79994, -347892,
- -351650, 45097, -2529199, -116501, 45634, 605054, -360240, 93416, -282394, 221728,
- -248571, 158914, 214748, -234613, 262530, 174483, -53150, 232465, 116501, -34360,
- 209917, 38655, -125628, -16643, -81604, 11274, 108448, 75162, -41339, 46171,
- -78920, -26307, -40265, 23622, -4295, -23622, -9664, 60130, -4295, -20401,
- -25770, -29528, -30065, -42413, 0, -13422, -127238, 59593, 74625, 22549,
- -87510, -23622, 49929, -18254, 16106, 42950, -19864, 24159, 36507, 24696,
- -17717, 8053, 0, -4295, -8053, 3221, 31139, -31139, 6979, 7516,
- -30065, -28454, -22012, 14496, -13959, -3221,
- },
- {
- -3602404, -30939870, -1835025, -336081, 107911, 125628, 363462, -115964, -59056, 12348,
- 9127, 449898, -434865, -105764, 762357, -79994, 219580, 207769, -556735, -73014,
- 202400, -200253, -22012, 400506, 87510, -277025, -192737, 97174, -442919, -276489,
- 88047, -141734, -41876, 16643, -211527, -13422, -98247, -318901, 177704, 53150,
- -148176, -3758, -16643, -140660, -216896, 118112, 17717, 69256, -339839, 32749,
- 47782, 97711, -42950, -127775, -30602, -3758, 105227, 58519, 32212, 31139,
- -37044, -62814, -40802, 63888, 46708, -40265, -12348, -15032, 13422, -18254,
- -24159, 33286, -40802, 1074, 82141, 23622, -69256, 57982, 28991, -45097,
- 45097, 0, -14496, 0, 9664, 4832, -20938, 16643, -1611, 24159,
- 14496, -26307, 3758, 4832, 17717, -2147,
- },
- {
- -431107, 299574, 884226, 116501, 142808, -27380, -60130, -178241, 102542, 20938,
- 77846, -93416, 83752, -598611, -1467805, -1195612, 322123, -1343251, -365609, -39728,
- -69256, -614180, -601295, 525597, -282931, 557272, -226023, 1066763, -13959, 28991,
- 29528, -472446, 310848, -161598, -19327, 58519, 41876, -259846, 154082, 41876,
- 20401, 183073, -28991, 57982, -61740, 72478, -37581, -14496, 56371, 61203,
- -12348, -40802, -93416, 8053, 113817, 41339, -69256, 44023, 53150, 41339,
- 28454, -38655, 1611, 22549, -25233, -31139, -26307, -36507, 52613, 22549,
- -1611, 8590, -49929, -58519, 52076, 53687, 22012, -16106, 27380, -27380,
- 38655, 5369, -62277, -26844, -3758, -9664, -8590, 49929, -1074, -5369,
- -2684, 13422, -4295, -6442, -2147, -3758,
- },
- {
- -830002, 2627446, -114354, -570157, -66572, 907312, -256624, -215285, -409633, -213675,
- 164819, 59593, 346282, -31139, -55298, -119185, -307090, -8053, 256624, -70330,
- -18254, -246961, -40802, -273804, 15032, 39192, 34360, -230318, 37581, -59593,
- 124017, 197569, -291521, -48855, 446140, -5906, -127238, -65498, 114354, -130460,
- 30065, 122943, 112743, -44560, -175020, 118648, 200253, 12885, 4295, -4832,
- 106300, 10201, 56371, 194347, -34897, -92879, 59593, 71941, -39192, 46708,
- -134755, -15569, 41339, -10737, 19864, -35970, 32749, 12348, -33823, 26307,
- 15569, 3221, -19864, 9127, 1611, 22549, -8053, 36507, -50466, 34360,
- 2147, -40265, -24696, 24159, -30602, 9664, 31139, 9664, -5369, 36507,
- -2147, 32212, -24696, -11274, -16643, 22012,
- },
- {
- -128849, -79994, 787053, 232465, 15032, 192200, 279173, -437013, -88047, -297427,
- 127775, 366683, -287763, -332323, -563178, 327491, 63351, -354335, 2147, 1053341,
- -764504, -351650, -303869, 565862, -240518, -38655, 249108, -197569, -423591, -35970,
- -494458, -165356, -79994, 74625, 1611, 19327, -63351, -222801, 18254, -85362,
- 145492, -140123, -49929, 60130, 24159, -96637, 537, -81604, 80531, 27380,
- 78920, 68183, 28991, -50466, -52613, 10201, -35433, -5369, 11811, -26844,
- -23622, 105764, 2147, -67646, -24159, 52076, -40802, 12348, 73014, 2684,
- 15032, -23085, -23085, -17717, 22012, 8053, 8053, -26307, -67109, 27917,
- -2147, -27380, 52076, 18790, -33823, -10737, 9127, -20938, 17180, -30602,
- -9664, 1611, -16643, 6442, -2684, 36507,
- },
- {
- -1240172, -8070244, -10737, -844498, -273804, 763967, -497142, 57982, -266825, 133144,
- 409633, -544387, 235686, -137976, -217970, -359167, -10201, 238908, -537, 60130,
- -133681, 141734, -200790, 162672, -97174, 164819, -253940, 326418, -180926, 260382,
- -147103, 76773, -14496, -132607, 297963, 44023, -128849, -84289, -186294, -153008,
- -36507, -69793, -337155, 47782, -9127, 100395, -68719, -61740, 69256, -39192,
- 68183, 103079, -22549, 63888, -41339, 15569, 5369, 68183, 40802, -123480,
- 56908, 33286, -57982, -46171, 117575, 5369, -28991, -1074, -62814, -42413,
- 78920, -16643, -2147, -2147, 18254, 18254, -5369, 8053, -8590, -18254,
- -20938, -6979, 25770, 13422, -2147, 25770, -33286, -537, -5369, -16106,
- 15569, -6979, 32749, 19327, -18790, 3758,
- },
- {
- -61740, 1658931, -281857, -295816, 132070, -66572, 190589, -296890, -77846, -39192,
- -341450, 317828, -669478, 1064615, 200790, 1852742, 24159, 41876, 64425, 249108,
- 360240, -274341, 1701881, 623844, -552440, 181999, -9664, 508954, -243739, -497142,
- -144418, -139050, -84826, -6442, -130460, 5369, -245887, 343061, -95026, 111132,
- 93952, 66035, -61740, 83752, -56908, -10201, 11274, 69256, 74088, -63888,
- -58519, 48855, 165356, -75162, 10201, 130460, 137976, -62277, 20938, 17717,
- -102542, -107911, 95563, 14496, 26307, -67646, 88047, 20938, -68183, 49929,
- 10737, -12885, -20938, -10737, -31675, 23622, 51003, 30065, -2147, 6979,
- 30602, -28454, -37044, -19864, -23622, -10737, -12348, 37044, -6979, 8053,
- -8590, -43487, 29528, 32749, -47245, 17180,
- },
- {
- 82141, 2718714, 805843, -1102733, -184684, -933082, -13959, -90194, 112206, 422517,
- -336618, -223338, 246424, -405338, -1631551, 603443, -540629, -404264, 117575, -136902,
- -161598, -146029, 234613, -238371, -56371, 41339, -118112, -158377, -163746, 315680,
- -180926, -104690, 53687, -154619, -93416, -115427, 22549, -132607, -31675, -154619,
- 57445, -37044, 96637, 47782, 52076, 31139, -167504, -162135, 25233, -61203,
- 162672, -139050, 42950, 76773, -8053, -9664, -69256, -55835, 119185, -21475,
- 32749, 32749, 32749, -2684, -32749, -23622, -83215, -2147, 20938, 30602,
- -23622, 27917, -6442, 42413, -6442, -19864, -26307, 59593, 12885, -39728,
- -27380, 15032, 7516, -45097, -13422, 4832, -59056, 15569, 38118, -2147,
- 2147, 24696, -20401, -14496, -18790, 19864,
- },
- {
- 245350, 623844, -661425, -146566, 165356, 46171, -103079, 68183, -105227, 298500,
- -84826, -152471, -404801, -2553895, 4179003, 2784213, -471373, -130460, 68719, 88047,
- 668941, 138513, -2147, 552440, -279710, -362925, 527744, -633508, 86973, -220117,
- -258772, 197032, 125091, 151934, 40802, -354872, 192737, 264141, -249108, 16643,
- -160524, -9127, 151398, 303332, -248571, 160524, -4295, 14496, -40802, 37044,
- -4295, -11274, 96100, 92879, -12885, -73014, -31139, 537, -60666, 20938,
- 135828, -15032, -15569, -3758, 96637, 18790, 18254, -145492, 42413, 40802,
- 4295, -61740, 57982, 38655, 17180, 72478, -49929, -12885, 25233, 32749,
- 15032, -11274, -19327, -56908, 53687, -7516, 4832, 17180, 5906, -27917,
- 8053, -3758, -23622, 8053, 24159, -4832,
- },
- },
- {
- {
- 2046552, -6139119, -3609383, 1780264, 945967, -40802, -221728, 53150, -100395, -584116,
- 148713, 423591, -27917, -331786, -1061394, 420907, 347355, -249645, 354335, 720481,
- -139586, -57982, 177167, -52613, -88047, 11274, -161598, -527207, 263067, -7516,
- -106300, -83215, -132070, -104690, 137976, -309775, -42413, -365609, -42413, 164819,
- 34897, -84826, -42950, -133144, 44023, -111669, 185757, 39728, -123480, -114890,
- 78383, -107911, 19327, 91805, -78383, 14496, -35970, -37581, -38118, -70867,
- 90194, 40802, 34360, -44023, -8590, -17180, -26844, 69256, -3758, 1611,
- -15569, -31139, -14496, 47245, 36507, -3758, -53150, 27380, -54761, -6442,
- -9127, 3221, 11274, 9664, 24696, -64425, 23085, -13422, -5906, 2147,
- 20401, -8590, 14496, 5369, -4295, -4832,
- },
- {
- 18790, 2990908, 652298, -227633, 368830, 102005, -50466, -85899, 126165, 93952,
- 30602, -179852, -474594, 947040, -964220, 1574106, 395137, 337692, 602369, 238371,
- -242129, -626528, -541703, -240518, 296890, 487479, 190052, 602369, 225486, 17180,
- -281857, 35970, 228170, 252329, 190589, 254477, -181462, -42413, 120259, -17180,
- -136902, -13959, 10201, 70867, -72478, -22012, -22012, 33823, -100932, 53150,
- -5906, -17180, -95563, 54761, 147640, -56908, -66035, -57445, 2147, -112743,
- -30065, 23622, 69256, 6979, -37581, 4832, -74088, 35433, 32212, -4832,
- -17180, 55835, 16643, -39728, -16643, 61740, 18254, 5369, -60130, 3221,
- 27917, 5906, -42413, 11811, -23085, -10201, 10201, 15569, -37581, 37581,
- 1074, -26844, -26844, 10201, 20938, 5369,
- },
- {
- -41876, 9500468, 1522566, -1263794, 358093, 279710, 34360, -84289, 139586, -143881,
- 74088, 216359, -45634, -90731, 47782, -806380, 100932, -41876, 1028108, -519154,
- 391379, -783832, 157303, 111669, -495532, -264141, 200790, 217433, 41339, 72478,
- 382789, -417149, 100932, 277562, 419296, -163746, -86973, 16643, 117575, -10737,
- 170188, -157840, -86436, -3221, -56371, 95563, -28991, -44560, 32212, 105227,
- -127775, -60666, -44023, -50466, -45634, 105764, -13959, 87510, 65498, 30065,
- -59056, 24696, 12885, 90731, -73014, -33286, 47782, 20401, -22012, 44023,
- 18790, -48855, -24159, 24696, 33823, 61740, -40265, -62277, 64425, 1611,
- -8590, -26844, 23622, 17180, -30602, 3221, -1074, 33286, -15569, 5369,
- 20401, -2147, -14496, -1074, -1074, -22549,
- },
- {
- 4438849, 28569586, -960999, -2702071, 30602, 0, 240518, -90194, -96100, 373125,
- -61740, -307627, -74088, -59056, -332323, 41339, -193810, 212064, 292058, -230318,
- -184147, -40802, 54761, 157303, 139050, 295816, -381715, -141734, 10201, 88584,
- 191126, 166430, 24159, 103616, 20401, 161598, -56371, 178241, -260919, -127775,
- 312459, -121333, -55298, 136902, -49392, -128312, 141734, 76773, 55835, 10737,
- -108985, 156766, -46171, 59593, 31139, 42413, 73551, -85362, 53150, -30065,
- -51540, 22549, 67646, -92342, 36507, 9664, -40265, 79994, -40265, -2684,
- 26844, 93416, -34897, -28454, 9127, -537, 10737, -2147, -23622, -27380,
- 1611, -8053, 42413, -16106, 6442, 17180, -23622, 22549, -13959, -28991,
- -8590, 19864, 2684, -12348, 13422, 4295,
- },
- {
- 17717, -3473555, -287226, -243203, 168577, 8590, -185220, 11811, -133144, -93416,
- 93416, 140660, 9664, 734976, 3055869, 973347, -1679869, -1649804, 789737, 312996,
- 44023, -276489, -259309, 1136556, -732829, -515933, -681826, -786516, 814970, 800475,
- -344134, 476205, -215285, -40802, -187368, 17717, -56908, -208843, -39192, -85899,
- 13959, -64425, 35433, -24159, 42950, -141734, -62814, -94489, 56371, -156229,
- -25233, 107911, -149250, 105227, -27380, 70867, -37044, 32749, 73551, -95563,
- -19327, 41339, -37044, -62814, -23085, 39192, 20938, 57445, 2684, -23622,
- 121333, 45097, 1074, 21475, -3221, -54224, 537, -18254, -37581, 13422,
- -7516, 48855, 20938, -53150, 26844, -10737, 9127, 22549, -18790, -2147,
- -17717, -1611, 25770, 8053, -32749, -9127,
- },
- {
- 7599945, 23500450, -847719, 1565516, 10737, 60666, -242666, 320512, -57445, -618475,
- 369367, 214212, 136902, 179315, -681826, 269509, -28454, -231391, 47782, -164283,
- -134218, 183073, 299574, -71941, -219043, 177167, -202400, 313533, -376347, -100395,
- 156766, 290984, 4295, -47782, -52076, 104153, -100395, -25770, -191126, 10201,
- 6979, 120259, -22549, -137439, 187368, -47245, 212064, -153008, -153008, -92342,
- 149787, -98247, -103616, -82141, 150861, -20938, -62814, 17180, 40802, -9127,
- 6979, -69256, -33823, 52613, 63888, -7516, 3221, 25770, 10737, -3221,
- 1074, -12348, 31675, -30602, 27917, -61203, -7516, 22012, 14496, -2147,
- 25233, 47245, -1074, -45097, -30065, -11274, 15569, -22012, 53150, -15569,
- -2684, 3758, 3221, 23622, -20401, -13959,
- },
- {
- -113817, -331249, 1200443, 226560, 10737, -35433, -130460, -73014, -25770, 124017,
- -68719, 68183, 79457, 4832, 1956895, 559420, -213138, 149250, -11274, -736587,
- -166967, -301185, -2736968, 608275, -136365, 1017370, -804233, -219043, 158914, 282394,
- -380641, 85899, 292058, -256087, 79994, 17717, 135291, -537, 166967, -71941,
- 107374, 50466, -50466, -27917, -132070, -79457, 170725, -20401, 2147, 44560,
- -6979, -76236, -56371, 27380, 41876, -44560, -78383, 95563, -34360, -22549,
- -24159, 12348, -48318, -26307, 1074, -34897, -87510, -20938, 72478, 46708,
- -25770, -65498, 13422, 9664, -46708, 14496, -21475, -14496, 23085, 38118,
- -9127, -2147, -4832, 4295, -15569, -6442, 40265, -9664, 19864, 33286,
- -537, -12885, -25233, 10201, 2684, -14496,
- },
- {
- -327491, -35970888, -976568, -616865, 170188, -34360, 753767, -166430, -110059, 3221,
- -5369, 350040, -64425, -27380, 428960, -91268, 41339, 686121, -449898, -473520,
- 229244, 64425, -377420, 236223, 144955, -207232, -92879, -160524, -173409, -146566,
- -119722, -150861, -162672, -51003, -156766, -191126, -17717, -235686, 25233, 180389,
- -96637, -24159, -101469, -537, -223338, 255551, 25770, 82678, -178778, -34360,
- -55835, 199179, 105764, -127775, -38118, -45097, 1611, 41876, 51003, 28454,
- 46708, -46708, -68183, 29528, 80531, -5369, -13422, -45097, 22549, -17180,
- -27917, 30065, -37044, -60130, 49392, 69793, -92879, 24696, 27917, -23622,
- 4295, 28454, -11274, 10201, 18254, 537, -41876, 5906, 3221, 10201,
- 9664, -22012, -2147, -6442, 11811, 9664,
- },
- {
- -170725, -905164, 633508, 70867, 125091, 24696, -24159, -226560, 101469, 72478,
- 145492, -27917, -40265, -1506460, -205622, 606127, -861678, -292058, -460098, -439697,
- 112206, -447750, 135828, -753230, -28991, 790811, -42950, 596464, -67646, 34897,
- 80531, -199716, 208306, -105227, -232465, 74625, -6979, -203474, 205622, 1611,
- -95563, 122943, 45097, -161598, 10201, -77846, -63351, 108448, -1611, 48855,
- 59056, -32212, -97174, -25770, 140660, 57445, -97174, -20938, -31675, 60130,
- 63351, 81604, -27380, 23622, 20401, -17180, 13422, -31139, 32749, 52613,
- 42413, 28454, -27917, -71941, 20938, 56371, 37581, -21475, 23085, -20938,
- 12348, 46171, -40802, -28454, -10201, -25770, -32749, 16106, 24159, -4295,
- -18790, 15569, 1074, -4832, -3221, -22012,
- },
- {
- 1017907, -2684355, 436476, 630286, -157303, -111132, 361314, -144418, -504659, -336618,
- 123480, -108985, 272730, 402116, -372588, 47782, -388695, 25233, 127775, 73551,
- -222265, -219580, -131533, -19864, -101469, -19864, -128312, -40265, 34897, -118648,
- -61203, 107911, -285078, -215285, 358630, 210990, 18790, -67109, 91268, -94489,
- -75699, 11274, 103079, 99321, -171262, 33286, 206158, -9127, -48855, -11274,
- 53150, -3758, -44560, 112743, 66572, -70867, 63888, 63351, -38118, 75162,
- -60130, -57982, 26307, -35433, 53150, -33823, -537, 11274, -41339, 20401,
- 26844, 8590, -57445, 23622, -3758, 24696, -39192, 54761, -33286, 38118,
- 18254, -21475, -44560, 7516, -42950, -37581, 12885, 7516, -14496, 18790,
- -11274, 39728, -2684, -17717, -23085, 4295,
- },
- {
- 200790, 1949915, -560493, -124554, -69256, -15032, 166430, -345208, -249645, -207232,
- -119722, 298500, -157303, -44023, -808528, -117575, 606127, -256087, 13422, 1025960,
- -104153, -600222, -1074, 82141, -12348, -344671, 151398, -166967, -52613, 2684,
- -401043, -155156, -286152, 54761, -115427, 223338, -51540, -121333, 40265, -124554,
- 99858, -29528, -85899, -28454, -10737, -120796, -9664, -16643, -33286, 3221,
- 15569, 75162, 93952, 31675, -46171, 12348, -29528, -36507, 11274, -18790,
- -55835, 62814, 30602, -54761, -64961, 39728, -26307, -35970, 34360, 15032,
- 21475, 19864, -17180, -30602, 16643, 27380, 39728, 9664, -57982, 4832,
- -4832, -26844, 38118, 45097, -6979, -20938, 24159, -4295, 40265, -17717,
- -15569, 0, -10737, 12348, -16106, 25233,
- },
- {
- -415538, -10173167, -2684, -172872, -358093, 154619, 185220, -129386, 20938, -179315,
- 426276, -25233, 153008, -278099, -155156, -77309, 15032, 172336, -121333, 112206,
- -281857, 30065, 47782, 17717, -164283, 185220, -181999, 186831, -96100, 250719,
- 93416, -67109, 4295, -17180, 172336, 222265, 129923, -13959, -173409, -139050,
- -165356, -88584, -166430, -56908, -67646, -16106, 55835, -10737, 39728, -15569,
- -66572, 95026, -57982, 86973, 6979, 54761, 11811, 26307, 120796, -156229,
- 27380, 32212, -20401, -62277, 92342, 10737, -8590, 11811, -44560, -67109,
- 58519, 5906, -20938, -10201, -537, 17717, 1611, 23622, 14496, -27380,
- -7516, -41339, 15032, 1611, -12348, 39192, -22012, -2684, -5369, -38655,
- -1074, -22012, 16106, 21475, -10201, -3221,
- },
- {
- 54224, 1249836, 245350, -234613, 26307, -73014, 228170, -52076, -155156, -370978,
- -213138, 130460, 829466, -797253, 15032, 1801739, 449898, -405874, 205085, 70330,
- 1779727, -633508, 854699, 364535, 322659, -292595, 289373, 170725, -48318, -568009,
- -181462, -81604, -78920, 37581, -149787, 118112, -197032, 241055, -117575, 76236,
- 34360, 8590, -28454, 89657, -89657, 11274, 50466, -56908, 45097, -46708,
- -44023, -13422, 102005, -17717, -23085, 6442, 150324, -32749, 4295, 77846,
- -55298, -134218, 16643, 47245, 57982, -56908, 59056, 68719, -69793, -4832,
- 32749, -6442, -10737, -5369, -48855, -31139, 34897, 22549, 18790, 12348,
- 33286, 5369, -30602, 6979, -19327, 3758, -39192, 34897, 10737, 1074,
- 3221, -48318, -8590, 36507, -35433, -16106,
- },
- {
- 482110, 3390340, -150324, -2147, -15569, -739808, -671626, 20938, -146566, 282394,
- -364535, -108448, 186294, -564788, -925565, 236760, 15032, -169114, -35433, -81604,
- 27380, -331249, 300111, -323733, -75162, -178778, -130997, -301721, -149250, 170188,
- -113280, 31139, 106300, -57982, -2684, -132070, 19864, -162135, -48855, -67646,
- 24696, -112743, 76773, 127775, 68719, 76773, -132070, -128312, -15032, -39192,
- 116501, -10737, -84289, 26307, 108448, 16643, -30602, -69793, 87510, 18254,
- 53150, -2147, 35970, 55298, -25770, 3221, -72478, -11811, 3221, 46171,
- -32212, 15569, 1611, 28454, 4832, 537, -34897, 51540, 54224, -4295,
- -33286, 12885, 32212, -24696, -9664, 32749, -48855, -26844, 24696, 13959,
- -2147, 36507, -6442, -6442, -14496, 9664,
- },
- {
- -83752, 1682017, -935766, -201327, 127775, -40802, 205622, 85899, -210990, 111132,
- 47782, 235149, -1140851, 2448668, -2413235, 2309082, 429497, 387084, -48318, 137976,
- 1018444, 35433, -101469, 136365, -140123, -172872, 198642, -60130, -319438, 35970,
- -454730, -41876, 344134, -50466, 115964, -217970, -65498, 126702, 146566, -172336,
- -155693, -178778, 130460, 208843, -105764, 4832, 68719, 9127, -74625, 17717,
- 25233, 15032, 7516, 46171, 57982, -17180, -95026, 22012, -118112, -95026,
- 55298, 66572, -86973, -17717, 34897, 40802, 94489, -153008, 8590, 10201,
- 31139, -73014, -8053, 28454, -22012, 81068, -26844, -35970, 3221, 17717,
- 59593, 537, 27917, -52613, 15032, 0, 3758, 22012, 10201, -13422,
- 537, 16643, -21475, -4295, 9664, 6979,
- },
- },
- {
- {
- -1145146, 7047505, 5786395, 97174, -794569, 171262, 230854, 100395, 192200, -178241,
- -369367, -115964, 140123, 438624, 130997, -52613, 391379, -272730, 324807, -358630,
- 19864, 159451, 320512, 5906, -101469, -159988, 137976, -553514, 293132, -67646,
- -76773, 125628, -9127, 132070, 35970, 82141, 127775, -209380, -137976, 70330,
- 86973, 23085, -115964, -114890, 220117, -271657, -44560, 57445, -79994, -76236,
- -2684, -109522, -30602, 12348, -20401, 15569, -47782, 18790, 80531, 27380,
- -50466, -40802, -4295, 34897, -8053, 31139, 29528, -41876, 0, -9127,
- 25770, 28454, 4832, -18790, -30602, 64961, 9664, -34360, 52613, -23085,
- -8590, -49929, -14496, 1611, -13422, 38118, -36507, 20938, -8053, -13959,
- -11811, 7516, -13422, 16106, 9664, 2147,
- },
- {
- 53150, 1136019, -690953, 325881, -400506, 26844, 48855, -32212, -294205, 285615,
- -4832, -65498, -583042, 394063, -2593624, 601295, 626528, -419833, -379568, 666257,
- -227096, -430034, 273267, 136365, -91805, -366683, -386547, 50466, 153008, 220654,
- 22549, 414464, -51003, -199179, 271120, -3221, -62814, -141734, -39728, -31139,
- 40265, -1074, -143881, -71404, 96637, -127775, -112743, -58519, 97174, 73551,
- -84289, 201327, -30065, -44023, -183073, 121870, 59593, -54761, -1611, 41876,
- -27917, -35433, 20401, 45634, 28454, -3758, 50466, -67646, -54224, 11274,
- 15569, -46708, 46171, 51003, -8590, -57445, 17717, 60130, 17717, -12348,
- -63351, 44560, 32749, -537, 11274, -11274, -28454, 2684, 8053, -52076,
- 14496, 25770, 7516, -8590, -24159, -3758,
- },
- {
- 35433, 3639448, -1124745, 472983, -488016, 8053, -47782, -248571, 47782, 229244,
- 151398, 23622, -108448, 592169, 202400, -229244, 135828, -134755, 66035, -498753,
- 256087, -509491, -6979, 226023, -107374, 53150, -44023, -170188, 118648, -164283,
- 113280, 124017, 101469, 15569, 96100, 267899, -35970, -58519, 53687, -82678,
- 51540, -19327, 211527, -165356, -26844, -99858, -23622, -57445, -66035, -30602,
- 83215, 59056, -119185, 10737, -90194, -65498, -16643, -38655, 11811, 38655,
- 32212, -35970, -16106, -67646, 42950, -51540, -19327, 6442, 51540, -33286,
- -3758, 64961, -24696, -26307, 2147, 4295, 57982, 9127, -24159, 1074,
- 23085, 0, -37044, 28454, 38118, -12348, -19864, -22012, 17180, -6442,
- -13959, 6442, 20401, -10737, 14496, 24159,
- },
- {
- -7080254, 14835354, 1129576, -2214056, 297427, -78920, -155693, -42413, -258772, -88047,
- 113817, 361851, 122407, -194347, -788127, 363462, 87510, 8590, 226023, 20938,
- -15569, 318364, -88047, -118648, 131533, 106837, 184684, -136902, 246961, -106300,
- -192200, 89657, -74088, -79457, 107911, -255551, -102005, -116501, -30065, -1611,
- 34360, -103616, -78383, 10737, 115427, 39192, -176631, -84826, -109522, 118648,
- -106300, 38118, 60666, -37044, 70330, 6442, 18790, -95563, -47245, 79457,
- 82678, -18254, -71941, -13422, -28454, -16106, 31675, -39728, 47245, -22549,
- -60130, -16106, 83215, 14496, -9127, 17180, -10201, -7516, -10201, 16106,
- -3221, -24696, -26307, 537, -6979, 9127, 20401, -37044, 36507, 17180,
- -11811, -19327, 9664, 6979, -9664, -16643,
- },
- {
- -149787, -3486977, 539018, 268972, -192737, 57445, 40265, 40265, -5369, -147103,
- 0, -68719, 177167, -845572, 160524, 639950, -240518, 1553704, -3066070, -318364,
- -103079, 246961, -501437, 1001801, -174483, -250182, 1108102, -198105, 443455, 534187,
- -442382, 302258, 413391, 38655, 537, -130460, -102542, -88584, -18254, 14496,
- 73014, 193810, 0, -166967, 161598, -24696, -31139, 100932, 107374, 85362,
- -123480, 69793, 110059, 26307, -91805, 74088, 48318, -49929, 48318, 537,
- -57982, -36507, 3758, -8590, 0, -15032, -37581, -24696, 11811, 9127,
- -39728, 22012, 15569, -10737, 13422, 41876, -10201, 19327, 8053, -37044,
- -19864, -52613, 20938, 29528, -47782, 25233, -10737, -4295, 16106, -4832,
- 1611, -4832, -27380, -1611, 28991, 6442,
- },
- {
- -9774809, 1189169, 1531156, 1238024, 4832, 20938, 37581, -693100, 280247, 440771,
- -438624, -348429, 62814, 374736, -732292, -22012, 98784, 126165, -102542, 122943,
- 220654, -292058, 95026, 163746, -8590, 19864, -202400, 63351, -78383, 107374,
- -33823, 66035, 11274, -36507, -169114, 282394, -34360, -62814, -90731, 161598,
- 149250, -186831, 27380, 46708, 333397, -169114, 159451, -12348, 22549, -77846,
- -69793, 135291, 39728, -16643, -114354, 61740, -59593, -83215, -71404, 8590,
- 92342, 21475, -35970, -51003, -61203, 3758, 48855, -46708, 15032, 26844,
- 18790, -8590, -41876, 9664, -3758, 18254, -24159, -40802, 5906, 11811,
- -40265, -4832, 17717, 60666, 5369, 537, -24159, 17180, -47245, 27380,
- -1611, -6979, -8053, -12348, 20938, -537,
- },
- {
- 260382, 718870, -732829, 3758, 8590, 71941, 10201, -5906, -226023, 102005,
- 45634, 66572, -61203, -304943, 2093260, 1314260, 962073, 1074, 74088, -532039,
- 162135, 214748, -1695975, 773094, -69256, 345208, -598611, -623844, 271120, 63351,
- -194884, 38655, -124554, 199179, -54224, -270046, 199716, -54224, 112206, 162135,
- -115427, -136902, 155156, -93952, 148713, 9664, -54761, -100395, 42413, -33823,
- 121870, 1074, -24159, -27917, 31139, -4832, -15032, -68719, -16106, -15032,
- -63351, -19327, 40802, 6979, 2684, 8590, 48855, -39728, -60130, -52613,
- 102542, 30065, -46708, 14496, -5906, -27380, 9127, -37044, -32212, -21475,
- 19327, -5369, 9127, 3221, 1611, -13422, -23085, 17717, 1074, -5369,
- 22012, 20938, 24159, -18790, 17717, 4832,
- },
- {
- 4620311, -32770064, -661962, -207232, 214212, -133681, 232465, 142271, -50466, 179852,
- -13422, -384936, 420907, -30602, -386010, 30602, -233002, -93416, 468688, 246961,
- -176631, 212064, -341450, -317291, -119722, 131533, -64961, -44560, -108448, -21475,
- -213138, -227096, 29528, 56908, 158914, -10201, -265751, -118648, 7516, 54761,
- 37581, 128312, 20938, -117575, 129923, 163746, -26844, 81604, 198105, 35970,
- -109522, -104690, 26307, 160524, 34360, 4832, -90731, -2684, -34897, -39728,
- 62814, 84289, 44023, -55835, -22549, 18254, 3758, -2684, -12348, 30065,
- 20401, -11274, 24696, 3221, -78383, -1611, 70867, -54761, -24159, 23085,
- -45634, -4295, 1074, 12348, 12885, 14496, 18790, -18790, 8590, -13959,
- -16106, 9664, 9127, -10737, -15032, 1611,
- },
- {
- 397284, 507880, -1720671, 204548, -200790, -3758, 140660, 255014, 81068, -37044,
- 76773, -30602, 274341, 1242319, 1877438, 2159295, -366146, 55298, 139050, -439160,
- -609349, 28454, 455267, -84826, -567473, -131533, 562641, -332323, -199179, 66035,
- -180389, 245350, -104153, 102542, 70330, -279710, -59056, 69256, -141197, 108448,
- 2684, -147103, 236223, -20401, 59056, -191663, -15032, 76773, -47245, -99321,
- 60130, 31139, 89657, -67646, -30602, -16106, 106300, 10201, -161061, -38118,
- -33286, 42413, 1611, -63888, 36507, 58519, 77846, 37044, -19864, -14496,
- -537, 15032, 41339, 49929, -29528, -15569, 3758, 5906, -30065, 9664,
- -47245, -6442, 51003, 24159, 20401, 11274, -537, -51003, -7516, 2147,
- 1611, -16643, 6442, 13422, 6442, 12885,
- },
- {
- -701690, -8054675, -903017, 548145, 227633, -973347, 318364, 9664, 193274, 189515,
- 24159, -102005, -299037, -200253, -41339, -583579, -105764, 186831, -256624, 17717,
- 274878, -213138, 26844, 183610, 127775, -185757, -196495, 275952, -99858, -316754,
- -130997, -146566, -82678, -35433, -148713, -99858, 175557, 64961, -172872, 183073,
- -118112, -68719, -86973, 102005, 212064, -85362, -152471, 6442, 137439, 29528,
- -173409, 54761, -90731, -239981, 117038, 76773, -17717, -39728, 45097, -68183,
- 128312, 1074, 1611, -44560, -10201, 49929, -26307, 1074, 37044, -18254,
- -19327, -12348, 13959, -18790, 19327, -19864, 1611, -30602, 32212, -22549,
- 6442, 23622, 16106, -22549, 28991, -13422, -32749, -8590, 4832, -34360,
- 2684, -24159, 24159, 13422, 19327, -19864,
- },
- {
- -173409, 4221416, 1459752, -702227, 120796, -195958, -204548, -136365, -32212, 118112,
- -62277, -348429, 336618, 54224, -530428, -437550, 511638, 751082, 583579, -1006633,
- 52076, 401043, 340376, -151398, -176094, -52613, -344671, -270583, -226023, 10737,
- 150324, 76236, -315143, -192200, 5906, -238908, -130460, 15569, 127775, 64425,
- -8053, 120259, -10201, -113280, -43487, 15032, -2147, 116501, 24696, 29528,
- -55835, -117038, -19864, 44560, 57982, 17717, 53687, 23622, -42950, 24159,
- 41876, -106300, 3221, 31675, 51540, -71941, 47245, -7516, -84826, 537,
- -24696, 25233, 26307, 15032, -33286, -20401, -9664, 9664, 70330, -30065,
- -1074, 33823, -40802, -18790, 24159, 7516, -11811, 18790, -19327, 33286,
- 6442, -7516, 12885, -1611, 1074, -36507,
- },
- {
- 2574296, -7587060, -884226, 25770, 383326, -1162862, 451508, 216359, 68719, -193274,
- -359704, 476741, 158914, -108985, 236223, 410706, 461709, -106300, -5906, -331786,
- 222265, 71404, 92342, -115964, 130460, 9127, 96637, -348966, 66035, -170725,
- 127238, -113280, -166430, 376883, -123480, -113817, 13959, 166430, 257161, -19864,
- 28454, -7516, 190052, -90194, 10201, -129386, 78383, 44560, -61740, -75699,
- -537, -41876, 40802, -56908, 42413, 35970, -3758, -17180, 17180, 20938,
- -13422, -38655, 51003, 32749, -72478, -19327, 28454, -10201, 37581, 19864,
- -68719, 28454, -1074, -14496, -5906, -18790, -6442, 10737, 10201, 4295,
- 14496, -2684, -36507, -16643, 4832, -51540, 31139, -2147, -4832, 14496,
- -27917, 2147, -30602, -23085, 11274, 3221,
- },
- {
- -10201, 1111860, 398895, 448287, -88584, 117575, -281320, 209380, 62277, -155693,
- 335007, -104690, -169651, -691490, 1420560, -191126, 1041530, -368830, -343597, 44560,
- 133144, 841277, 326418, -461172, 680215, -168041, -133144, 337692, 91268, 396211,
- -269509, 270046, 38655, 158377, -73014, -76773, 238908, -38655, 63351, -132607,
- -129923, -116501, -2147, 13959, 86973, 14496, 55298, -199716, -39728, 83215,
- 32212, 537, -88584, 16643, 42950, -55835, -157840, 28991, -18254, -5906,
- 57445, 115427, -80531, -53150, -48855, 77309, -26844, -1074, 30602, -25770,
- 8053, -25233, 15032, 12348, 52613, -17717, -30602, -45097, -3221, 5369,
- -27380, 30065, 11811, 17717, 19864, -1611, 21475, -34897, 4832, -4832,
- 11274, 42950, -28454, -42413, 42950, -11274,
- },
- {
- -1234266, 1752347, 988379, 932545, -103616, 18790, -243203, 222801, 202400, -342524,
- 233002, 137439, -427886, 405874, 274341, -455803, 162135, -207769, 71404, -116501,
- 168577, 109522, 42413, 212064, 25770, 127775, -21475, -319975, -166430, -298500,
- 250719, -77846, -36507, 187368, 358630, -139586, -26307, 27917, 44023, 257698,
- -147640, -154619, -227633, -192200, -99321, 66035, 83752, 112206, -58519, 92879,
- -169114, 115427, -13959, -82141, 39728, -3758, 91268, 30602, -71404, 23622,
- -6979, -1611, -5369, -38655, 22549, 3221, 85899, -24696, 2147, -11274,
- 51540, -20938, 22012, -47245, -2147, 23085, 53150, -39192, -23085, 27917,
- 16106, -18790, 4832, 39192, 6979, 0, 59056, -24159, -42950, 14496,
- 8053, -23085, 20938, 5906, 19864, -21475,
- },
- {
- 17180, 2062121, 301721, 114890, 50466, -30065, -46171, 1611, -185220, 171262,
- 187905, -37581, 234076, 3027952, -8257075, -61740, 688269, 709743, -482110, -154082,
- 864362, 63351, -469225, 453656, 618475, 268435, -2147, 293668, -130460, 506269,
- -184147, -376347, 193810, -307627, -273804, 341450, -75162, -503048, 365609, -24159,
- 96637, -90731, -138513, -220117, 210990, -95026, 45097, 173409, -25770, -13959,
- 46708, 23622, -18790, -125628, 5906, 111669, 5906, -37044, 37044, -28454,
- -147640, 13959, -13959, -27380, -9664, -46171, -10201, 154082, -53687, -23085,
- -10201, 42413, -39192, -20401, 0, -69256, 63351, 28454, -13959, -43487,
- -27917, 2684, 26844, 66572, -48318, 11274, 10737, -23085, -8590, 29528,
- -7516, 3221, 24159, 1074, -27380, 3221,
- },
- },
-};
-
-const Word32 leftBRIRImag_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS_MAX] /* Q29 */=
-{
- {
- {
- 5312338, -15328201, 16282758, 29370596, -15591268, 12818330, 1811403, 182536, -9895068, 2481417,
- 491237, -11926587, 5715528, 5282810, 6278706, -12351789, 2285460, -4657892, 11144366, -3479461,
- 4906464, -3717831, 3595961, -5890011, 6990596, -3155727, -4663261, -1210644, 6162205, -3131031,
- 4348655, -2241436, 2251100, -799401, -1116155, 9625559, -1194538, -4785131, -2711735, 572304,
- 6594923, 6273874, -7301982, -2674691, 1289027, 1906966, -487479, 1509144, -726386, 770410,
- 226023, -288300, -2494302, 4155381, -2242510, -2687576, 521839, 1523103, 280247, 1378148,
- -532576, 742493, -259846, 596464, 257161, -393526, 1384053, -1336272, -2343442, -372588,
- -831076, 597000, 5369, 1152662, -3325915, 3321620, 296353, -28991, 1579474, -716723,
- -1385664, 824097, -137976, 889058, -1136556, 190052, -27917, 1329829, -2356863, 166967,
- 546535, 307090, 70867, 149250, -1052804, 570694,
- },
- {
- -1878511, 17737678, -17321604, 19983410, -14324253, 7502234, 2997887, 3507378, -8614631, -1859184,
- 1334661, -6471979, 993748, 1572495, 8171176, -13944148, 4880694, -3664144, 10201084, -4412542,
- 730681, -2709588, 8744553, -5805722, 1595580, -5035849, 3263638, -2362232, 540629, -3300682,
- 6315750, 2110440, -6184216, -4188667, 5704254, -1165010, 4133369, -6009733, -1692217, -3385508,
- 5913633, 5572183, -5843840, -2107755, 4840965, -2926483, -1759326, 2276333, -584652, 3922916,
- -2763812, -1257889, -41876, 1346472, -2653753, 3075734, -2070711, 2164127, -2144799, 1511829,
- 1400696, 883153, -2318746, -430034, 2891050, -3351685, 4524748, -2738042, 1201517, -2592550,
- 1482838, -2003602, 494458, -41339, 85899, -975494, 364535, 1664837, 1857037, -461709,
- 230318, -395674, 814433, 67109, -1385664, -938450, 1464584, 335007, -806917, -1799054,
- 1691680, -73014, 67646, -622770, 793495, 709207,
- },
- {
- 1511829, 1513976, -4419522, 27764280, -14358076, 13790603, 3252364, -9540733, 794032, 5572183,
- -6106370, -10015327, 8767102, 3111167, -2601677, -3448859, 7910256, -4816269, 2439542, -885300,
- -1461900, 4851166, -1792075, 1909113, -579284, 5089000, -9176198, -9768366, -688805, -1454383,
- 9844602, -1716913, -1995549, 9068823, -1946157, -3422015, 2071785, 4333085, -2915209, -3728569,
- -13959, 2765959, 3430068, -293668, -28454, -5693516, 4027069, 4806069, -1596654, -4428112,
- 1627256, -1127429, -3068217, 1995549, 1992865, 16106, -1770600, -3318399, -153545, 3567507,
- 1425929, 1480153, -384936, -407485, 2409477, -1116155, 1678259, 139050, 826244, -3308199,
- -1213865, -1698123, 1036161, -883690, 1144072, -2500745, 1324461, 1468342, 670552, 235686,
- 1043140, 724239, -1097364, -133144, 239981, 1453846, -2284386, -932545, -658204, 2100776,
- 11811, -593779, 243739, 1205275, -233002, -308164,
- },
- {
- 14759118, -47656956, 15619185, 18750216, -6482717, 6076842, -2073396, 3107946, -3583077, -8136279,
- 5846524, -5396627, 5415417, 3515431, -757525, 9468255, -2396592, -4336307, -2494302, 4351876,
- -3119220, 7886097, -6424198, -7972533, 10735808, 5888400, -7277285, -6745783, 6926709, 6168110,
- -3765613, -1012539, 4037806, -4781909, 1706176, 630286, 2334852, -3817152, 2831457, -2628520,
- 685584, 682363, 853088, -1152662, 1496796, 1825898, -3122978, 358093, 3617973, -2821257,
- 649077, 2146410, 584652, -2779918, 1059246, -1236951, -1378148, 2666638, -2761664, 2726767,
- -300648, 172872, -129386, -22012, 34360, 664109, -46171, 652835, -871878, -1017370,
- -888521, -346819, 330712, 368830, -168041, 1155883, 159988, -90194, 309775, 184147,
- 350577, -603980, -401579, 405874, -298500, 578747, 475668, -1049046, -585726, 303332,
- 681826, -453656, -831076, 666257, 137439, 340913,
- },
- {
- -235686, 11187316, -20111722, 23366770, -21138218, 8778913, 6176700, -1894618, 927176, -2820183,
- -3235721, -7745974, 5153961, 7634841, -10519986, 10456098, 8409009, -14551886, 10614475, -1965484,
- -3012383, 6664179, -2268817, -12690018, 16714939, -3394098, -7367480, -9629317, 10082973, -6877854,
- 10856604, -9347459, 6423124, -5399311, -974421, 3379066, -2268817, -4389994, 7019051, -2147484,
- 2791729, 865973, -1511829, -3963181, 2746095, 5527623, -6184753, -1511292, -1290638, 6837051,
- -1390496, -1603097, 1284195, 691490, 1523103, -1762010, 821413, -711891, -444529, 3688840,
- -1002875, -2233383, 92342, 1019518, 1869385, 1480690, -2762201, 734976, -2713883, 2064806,
- -1337882, 135291, -1392106, 1134945, 481036, -286689, 561030, -596464, 1449015, 423054,
- -1340030, 628139, -649077, 1489817, -2268817, 967978, 784905, -872415, -373662, 521302,
- -136365, 692027, -1122597, -38655, -172872, 428960,
- },
- {
- 19509352, -64412700, 23457500, 21772800, -2419677, 2259153, 3331821, -3532611, -4037806, 1436667,
- 5179194, -17941690, -4281546, 16269873, -9058086, 14944339, -3533148, -10220948, -1289564, -2030446,
- 15389942, -11142756, -10510859, 4478577, 5759551, -5384815, 12187507, -11731166, 9569187, -7611756,
- -1301912, -5772436, 8174397, 8390755, -2353642, -2870649, -582505, -3890704, 5292474, 463320,
- 1320166, -7281044, 2638721, 3129421, -1117765, -3943854, -228707, 807991, 28454, 1709934,
- -1439351, -63888, 2142652, 401579, 752693, 1597728, -635655, -3596498, 497142, -411780,
- 688269, 2191507, -5393405, 3028489, -1174674, 90731, 2779918, -830539, -1854352, 920734,
- -1211718, 120259, 1400696, 1611687, -2023467, 1606855, -110595, -204548, -257161, 272730,
- -1467268, -1513976, 706522, 87510, 536334, 1636383, -404264, -173409, -1279900, 243203,
- 35970, -163746, 515396, 511101, -33823, 1058173,
- },
- {
- -1795833, 20707112, -32792076, 23744726, -18837726, 7560216, 6619619, -1218697, -2314451, -2202781,
- -556735, -3958886, -12127914, 5669357, 3277060, 12116640, 62277, -9705015, -2224256, -2025614,
- 10918344, 76236, -12405476, -7141457, 6460168, -2634426, 15206332, -15780784, 4519380, 1002338,
- -9215926, -4342212, 11005854, 613107, -744103, -6572911, 1298154, 1505386, 2160369, -143881,
- -920734, -3894462, 4447976, -434865, 1169842, -1978906, 2633889, -1066226, 268435, -2422899,
- 1462973, -549756, 3957812, -616865, 2720325, -884226, -37581, -2654827, 3102040, -2392834,
- 158914, -987306, -2294586, 1512365, 1766842, -1382980, 2263985, -2747705, 431107, 519154,
- -271120, 505196, 587337, 449361, 1513439, -989990, -251792, -56371, -712965, -1046898,
- 572304, -1304060, -386010, 1265405, -1028645, 2281702, -1120987, 100932, -1631014, 972810,
- -12885, -137976, 1039919, -540092, -463320, 731755,
- },
- {
- 16981764, -56895432, 24611774, 21936546, -5342940, 7660074, -2584497, -2967286, 2484639, -5905580,
- 1956358, -16724066, 7751342, 14867029, -12740484, 7344394, -7058242, -4048007, 13473312, 1557463,
- -4805532, -4983236, 12642236, -12135430, -9858024, 14453102, 2812130, -1634772, -7023346, 5540508,
- -4072166, 250182, -526134, -2897492, 10938745, -3962107, -4967130, 3672734, -421444, 1986422,
- -1153736, -2592550, -2722473, 4157528, 947040, -353261, -2173790, 667331, 1450088, 1864553,
- -881005, -6741488, 4555887, 4300873, -1057099, 2744484, 181999, -53687, -4269198, 1094680,
- 2002529, -4604205, 2578591, 229781, -4285841, 1513976, 2944200, 382252, -1535988, -819265,
- 1133871, 173409, 216359, 2851858, -2499134, -28991, 4573604, -3896609, 262530, -426812,
- -1157494, -1235340, -180389, 484794, 1307281, 831613, 513249, -397284, -1567126, -351114,
- 404801, 401579, 1215476, 453119, -745714, 415001,
- },
- {
- -1898912, 22643068, -38548944, 24912420, -17003238, 4400194, 9096204, 234613, -3450469, -3834869,
- 1771137, -10518912, -3963718, 12140799, -550293, -2965138, 2650532, -8160438, 11890617, -548145,
- -4634807, 3637837, 1883343, -11204496, 126702, 4858682, 16890496, -12792560, 1769527, -4717485,
- -3195993, 11159399, -11986180, 10284836, -4656282, -2163053, 2572149, 3319473, -1615445, 2324114,
- -4486094, 1670742, 1240172, -3856344, 2228551, 1751810, 1069447, -5204427, 759136, 4014721,
- -1615445, -5482526, 4042101, 3636764, 1723356, -2246268, 3710852, -1366337, -4788889, 1828582,
- -1134945, -581968, -762357, -503585, 766115, -510027, 2339147, 2078764, -2164127, -1748589,
- 1334661, -159988, 2298881, 1909650, -998580, -1019518, 928787, 876710, -1318555, -897648,
- -462783, -170725, 436476, -336081, 753230, 1717987, -747324, -1275605, -1265405, -448287,
- 1691143, -322123, 566936, 796716, -415001, -1191317,
- },
- {
- 11045045, -32876364, 8340290, 18104360, 3212099, 104153, -14018773, -575526, 11572789, -3147674,
- -4546760, -7494181, 12850542, -10114648, -1496259, 5943698, -2239826, 7892540, -8507256, 4433480,
- -1641214, 12130598, -9672266, 10990284, -9851581, -3774740, 3331821, -4731444, 5446019, 3574487,
- 3012383, -7050726, 7794292, -6359773, 57445, 1829656, 71941, -1643362, -2571075, 2026151,
- 5374615, -2528662, 4089883, -10426570, 1915555, 2698313, -8253317, 6000070, 1835562, 3655554,
- -4281009, 830002, 207232, -2386391, 1966021, 487479, 822486, -890669, 2156611, -792958,
- -744640, -1085553, 725313, -119185, 1049583, 1367410, -440771, -945430, 2914135, -1796370,
- 243203, -572304, -81604, -2814277, 1590749, -1954747, 1560147, -646929, 1949915, -1267552,
- 1114544, 1047972, -198642, -2451890, 2932926, -1191317, 93416, 584116, -635118, -1181116,
- 538482, -92342, -998580, 431644, 909996, 844498,
- },
- {
- 1951526, -1252520, -4450660, 17591650, -3061775, 5971615, -19012746, 4438849, 15155329, -4493610,
- -1342177, -2172180, 4929012, 1711008, -6664716, 6905771, -10448582, 2665027, 5218386, 1537061,
- -8198019, 11589969, -5337034, 3729642, -3327526, -9520869, 3167539, -1369021, -9149354, 10700374,
- 2361158, 1968706, 1963874, -3059627, 964220, 1821603, -1794760, 4209068, -2830384, 6850473,
- -3741454, 2296197, -4121558, -1649268, 1862942, -1991791, 336618, 8039642, -4155381, 4155918,
- -1076426, -5590437, -2149094, 1104344, 1330366, 219043, 832150, 3549254, -1814087, -1007707,
- -1184874, -1226750, 308164, 1119376, 2521146, -4012573, 1813550, -699006, -248571, -637266,
- 798327, -874563, 1723893, -2705293, -93416, 949725, -143345, -324807, 1677185, -877247,
- 52613, 1293859, -403727, 368293, -659278, -456340, -1469953, 1380295, -2007897, 1666984,
- -294205, -61740, 1183264, 321049, 226560, -384400,
- },
- {
- 16724066, -54424216, 24016384, 16218333, 2622615, -229244, -6679211, 10845866, -2998961, 9867150,
- -29236916, 9869298, 8449811, -15844134, 12715251, 3453154, -523986, 2774549, -205085, -4210142,
- 2449205, 2014340, -3876745, 2466922, -905701, -826781, -2839510, 6432251, 7812009, -13349295,
- -910533, 1897839, 856846, 5768678, -2393908, 651224, 3175592, -8968429, 1388348, 5872294,
- -7933879, 1311576, 3837553, -3561065, 1435056, 3999688, -2183991, 2351495, -1664300, 3901978,
- 57982, -2732136, 38118, 252329, 676994, -1644436, -5184026, 3423089, -1054415, 238371,
- 3646427, -732829, 863288, -879395, 911607, -338766, -2291902, 691490, 768799, 116501,
- 194884, -969589, 623844, -92342, 918586, -228170, 537408, -2114198, -1280437, -439160,
- -796716, 1575716, -1374926, -634581, 849867, -1003949, 252329, 1002338, 1103270, -932545,
- 1130650, 507343, 540092, -635655, -231391, -486942,
- },
- {
- 448287, 6634651, -9032853, 15345381, -2375654, 1223529, -19807852, 11365557, 2129230, 5767068,
- 2703682, -26346940, 23375360, -14102525, 4283156, 3120831, 4329864, -9807021, 5224291, 5291937,
- -14072997, 4913980, -9549323, 9849971, 787053, -3354370, -170188, 5004174, -2477123, 2615635,
- -7850664, 4985920, -4202089, 4719096, 6729677, -7505456, 2442763, -7187091, 3899830, -5713917,
- 1315334, -271657, 5739687, -4461934, -100395, 2415919, -2565706, 3275450, 180926, 644245,
- 4545686, -4531191, -175020, -348966, 599685, -2886755, -2801393, 1971390, -2143726, 1848447,
- -2724620, 3562139, -918049, 301721, -636192, 2759517, -2583423, -2193118, 3487514, 1781875,
- -2218351, 187368, 1857573, 212601, -249108, -1234803, 2329483, -2800856, -848256, -776315,
- 1190780, -1357210, -404264, -535260, 454730, 149250, 34360, 652298, -919660, 1036161,
- 156766, 1289027, -439160, 186831, 399432, -1067836,
- },
- {
- 16133508, -50945292, 22196928, 6430640, 8043400, -3537443, -11391864, 12313671, 920197, -6473053,
- -4886062, -5131949, -10255308, 13766444, -3438658, -466004, 7041599, -5843303, -7774428, 1607928,
- 1829119, -209380, -28991, 3231963, -8385924, -570694, 7070053, 923955, -3607236, 2573222,
- -3866008, -164819, -3471407, 7772280, -7465727, 2116345, -3626026, 5818607, -3962107, 1343251,
- 6237367, 2172180, -9084930, 847182, 3152506, -7275675, 1183800, 1473711, 2120103, 1200980,
- 3020973, -1214939, -876173, -3531537, -1597191, 3324305, -1464047, 1251446, -1532230, 1237488,
- 2059437, -3098282, 1225139, -2407329, 3711389, -1664300, 1575716, 532039, -406411, -1537598,
- 853088, -668941, -57982, 989453, -2013803, 1045825, -754304, -674847, -1480690, 153008,
- 6979, -359167, 1414118, -320512, 1423245, -1261647, 406411, 1002875, -241592, -1040456,
- -416612, -256624, 1267015, -649077, 394600, -1297080,
- },
- {
- 3932043, -8747238, 1968169, 7729868, 2339147, -1849520, -22146998, 18181670, -3309809, 3830037,
- -809064, -12105365, 399969, 9071508, 5670431, -18088792, 12317429, -708670, -4087198, -1396938,
- 2544768, -1189706, 5521181, 6648073, -9254581, 2428804, -771484, -5743982, 3870839, 2408403,
- -8186208, 10273562, -1151588, 5949067, -11838004, 6634651, 569620, -566399, -3616899, 5836324,
- -1320703, 4142496, -3505767, -443455, 3020973, -170725, -2520609, 3269007, 2726767, 4345970,
- -634045, -3609383, -460098, 457414, -831076, -218506, -190052, 3064996, -1687385, 2042257,
- -1031866, -1002875, 890669, 1019518, 823023, -854699, -76773, 2980171, -1726040, 729608,
- -856846, -3758, 1760400, -1726577, 615791, 61740, 1741609, -1194001, -2136209, 990527,
- 1548336, -1329829, 896574, 156766, -466004, 2329483, -551903, -305480, -814970, 44023,
- -388695, 617938, 274341, -285078, 633508, 244276,
- },
- },
- {
- {
- -4482872, 28839632, 76304392, 61546344, 2663417, 13988172, 4247186, 4619774, -6138045, 3905199,
- -2973191, -18294950, -830539, -1454920, 11599096, -15888695, -936840, -6803228, 7468412, 1937030,
- 11842299, -9400610, 2805151, -2087354, 14620069, -1771674, -5182952, -4300873, 6912213, -2089502,
- -1600412, -4452271, 10584947, 9364639, 3853123, 12952548, -18254, 654983, 1224066, 2383707,
- 5071820, 2677375, -8999567, -2144263, 6462852, 5727876, -1794223, -110595, -2606508, 529892,
- 3830574, 4368519, 864362, 3654480, -3748433, -321049, 1378148, -193274, 1062468, 2030983,
- -1656784, 1757179, 1085016, 966905, -401579, -3160022, -1963874, -1500554, -76773, 1246077,
- -704912, 2110440, -654983, 849330, -2720862, 4781909, 1413581, 707059, 1231045, -3215320,
- -4275103, -1117765, -706522, 1465121, 221191, 1032940, 338229, 1593970, -2112587, 1344325,
- 1056562, -468151, -699006, -231928, -463856, 849867,
- },
- {
- -338766, 61415348, 15611669, 9440338, -21532818, 2443300, -3299609, 6394133, -1631551, 307090,
- -1473174, -7240778, -2691871, -6294812, 319975, -22467510, 12042551, 175557, 1326608, -9340480,
- 821413, -2894271, 19238770, -8172249, -6328635, -7420630, 5719286, 5753646, 7582228, -3056943,
- 1290101, -3332358, -10959146, -5172751, 1697049, -8074539, 4212289, -11470247, -8075076, -5384815,
- 6061810, 7973070, -6896107, -4566087, 5655935, 743566, -389231, -1331440, -2468533, 8692477,
- -1590749, -5043366, -759136, 4623533, 1286343, 7335268, -1056025, 2297808, -3507378, 518080,
- 374736, -2478196, -3925600, -1590212, -111132, -5529234, 6795175, 883153, 4900021, -1301912,
- 5432060, -793495, -160524, 929324, 382789, -2499134, 846645, 2493229, 51003, -935766,
- 28991, -1445793, 963146, -52076, -2120103, -1299228, 2304250, 2145873, 57445, -1854352,
- 1767379, -1159104, 46171, -558346, 955630, 1686848,
- },
- {
- 380641, 59243704, 48001092, 42336568, 635118, 15008226, 8574902, 350040, 1510755, 9108015,
- -5251135, -17617418, 7868380, 5167920, -5149129, -14354318, 11403675, 3655554, 2236604, -534723,
- 3555159, 225486, -10012106, 1254667, 2330557, 4824322, -14513768, -18128520, -5068062, -6743099,
- 10276783, 2444910, -1569811, 13202193, 840203, -2855617, 5487895, 8312373, -3521873, -1575179,
- -1035087, -974421, 8238821, 8363912, 4868883, -8895414, 2909840, 6211060, 206695, -1698660,
- 4402342, -2556579, -6953552, 3302830, 2627983, -4975720, -1792612, 743029, 1102733, 1414655,
- -483184, 1181653, 1640141, 1957431, 326418, -931471, 5162014, 2567854, 1180042, -4600984,
- 1174137, 1159641, 2928094, -685047, 165356, -4046933, -180926, 226560, -6979, -1546725,
- 463320, 938987, -701153, 355945, 33286, 2727304, -1365800, 242129, -51003, 2112587,
- 132070, -1199907, -243739, 2097555, 344134, 249108,
- },
- {
- -12965433, -93600224, 11103564, 47905528, 15134928, 2648384, -5536750, -22549, -9589588, 3934727,
- 24285892, 3155727, 6387153, -3045132, 2965675, 17890150, 6890738, -1830730, -7762617, 6073084,
- -8128763, 4532264, 4820027, 1049046, 9186398, 6004365, 2037425, 3870303, 12895102, 10055592,
- -1724966, 2524904, 1289027, -10789495, 4014721, 2691871, -1365263, -6886443, -407485, -3709778,
- 2429878, -2164127, 3537979, 3473555, 3887482, 5180268, 536334, 4088272, 3243237, -3252364,
- 5898601, 3380139, -591632, -2377265, -1393717, -1538135, -1088774, 329102, -4570919, 3502546,
- -89121, 1686848, 418759, -1439888, -623307, 1275068, 1467805, 1001264, -2708514, -1158567,
- -1006096, -955093, 210453, -1321239, -690416, 1775432, 1180579, 592706, 853088, 995896,
- 483721, -460635, -1238561, 347892, -469762, 507880, 1168768, -2232309, -1656247, -28454,
- 741419, 98247, 235149, 1672890, 643708, -8590,
- },
- {
- 280784, 46764676, 59056, 2466385, -39307540, 6648610, 5394479, -1607928, 3771518, 11492796,
- 1255204, -11431055, 4279935, -217433, -16392280, 19051402, 26164940, -5289789, 7523172, -8365523,
- -4125316, 8746701, 7299834, -12686260, 12147778, -3869229, -9096204, -22466974, 720481, -20535312,
- 10363756, -5583995, 4239670, -11470784, -5002563, 3631932, 1839857, -4620311, 5309654, 1415192,
- 5276368, 911607, -806917, -4153234, 4014721, 5682779, -7584376, 3403225, 3831648, 12488691,
- -1707250, -3879429, 4882841, 4713190, 3608310, 537945, 3716757, 701153, -1301375, 5381594,
- -37044, -1482301, 2265059, 1849520, 4023848, 2126009, -4087735, 126702, -4682588, 2435783,
- 915365, 996432, -3210488, 1045825, -541166, -1728188, -162672, -1001264, 1537061, 1014686,
- 418759, 2005750, -1242856, 329102, -3324305, 1411971, 823560, -1049046, 831076, 1343788,
- 468151, 1033477, -1182190, 387084, 115427, 602906,
- },
- {
- -15682536, -120856088, 18982144, 65122980, 29969744, -4514011, 4304631, -2905009, -2981781, 5942624,
- 7777649, -19528680, -11659762, 9244917, -18276696, 2150705, -17572322, -10454487, -1418413, -12364674,
- 9629317, -14058502, -9901510, 5478231, 10171556, -4277251, 6251862, -11213086, 19978578, -10095858,
- -3325915, -3831648, 12777528, 10835129, 1889249, 2812667, -3924526, -9249212, 2401961, -2114198,
- 8253854, -2933463, -1868311, -275952, -5413270, -7293392, -2016487, 3751117, 6029597, 3490735,
- -3102577, 1628866, 4018479, -528281, -1092532, -1621887, -1995012, -2887829, 580357, -1323387,
- 2394444, 4003447, -4621922, 5526549, -2177012, -1012002, 5303748, 1527398, -2064806, -296890,
- -3376918, -2279017, 690416, 3534221, -2705830, 1056025, -699543, -1232656, 280784, 677531,
- -1766305, -343061, 1240172, -12348, -449361, -435939, -936303, 1309428, -125628, 1339493,
- 1347546, 510564, 43487, 308701, 717796, 1654099,
- },
- {
- -1073742, 45053672, -20771536, -2367601, -40050032, 6734509, 3884798, -2544231, 412854, 4087198,
- -797790, -8554501, -17715130, -6356015, -4284767, 12298102, -5752035, -13150653, -2108292, -9127879,
- 3032784, -3943854, -12318503, -6820945, 3287798, -2856153, 24058796, -22105660, -8840116, -5879274,
- -15313706, -13260712, 5637145, -2702608, -1101659, -7940321, 664109, 2047089, -544387, -1126355,
- 4842039, -4241280, -345208, 2389076, 8027294, -620623, 1736777, -2494839, 375273, 1052804,
- 760209, 393526, 6613176, -2077154, 3469260, 461172, -493921, -2445984, 3239479, -5060009,
- 460098, 354335, -2422362, 1714229, 1547799, -3830037, -89121, -3066607, 3737159, 3277060,
- 1703491, 1487132, 948114, 30602, 1064615, -251256, -1708860, -2900714, -2763275, -1126355,
- 1777580, -1459215, -1368484, 1408749, -1676111, 1819456, -1701344, -333397, -742493, 2377265,
- 490163, -148713, -66035, -1893007, -774705, 718870,
- },
- {
- -14235132, -96278136, 29791504, 61176976, 29850022, 8715562, -7289633, -10312753, 4875862, -1081258,
- 5609228, -21945136, 478352, 13081397, -19822884, 1300838, -3351685, 1022202, 13382581, 10632728,
- 1532230, 376347, 22500796, -5738613, -11087995, 5625871, -671626, 2239289, -4132296, 6255620,
- -5669894, -4024384, -727997, -2639258, 12090870, -1688459, -5740224, 1754494, -394600, 5862631,
- -1082869, -2287607, 4660577, 7233799, 263067, 3247532, 1813550, 1385664, 795643, 4743792,
- -3438658, -12179454, 5492190, 4766877, -1584843, 7055021, 2633352, 2602213, -1100049, 4789963,
- 6404870, -5018670, 911607, -626528, -4942971, 3653944, 1817845, -677531, -46708, 255551,
- 1910724, -2081985, -3576097, 2308545, -1946694, 647466, 7444789, -2734284, 1634772, 295816,
- -1387811, -1977296, -792958, 688269, 2603287, 1785633, 656593, 297427, -813896, -399969,
- 424665, 510564, 805843, -182536, -1189706, 1107565,
- },
- {
- -1804960, 38754564, -34475704, -1616518, -35203700, -1082869, 6202470, 4700305, -1883343, -3794604,
- 3324305, -11288785, -5713917, 5170604, -5426155, -7887708, -1584306, -3618510, 19141596, -557809,
- -3837553, 8811125, -649077, -1149978, 17872432, 4751845, 10720238, -11770358, 12353400, -4874788,
- -2738579, 4350265, -21752936, 2378338, -11214696, 4840965, 8922795, 3805341, -1577327, 4395899,
- -2051384, 2887829, 1789391, -6944962, 2721399, 5892159, 1193464, -6276558, 671626, 2050847,
- 37044, -4748623, 1183264, 3518652, 1192927, -2850785, 3253438, -1150514, -3163780, 1406602,
- -354335, 197032, -1329292, 30602, 319975, 309775, 4044249, 3678640, -200790, 477278,
- 2210835, 585726, 3679713, 1701344, -1103807, -1379758, 1023276, 2826625, 785979, -817654,
- -673236, -1232656, 646929, -629213, 7516, 2447595, -734439, -1162326, -1117228, -2100776,
- 533650, -677531, -1184874, -1031866, -501974, -1263794,
- },
- {
- -8017094, -33328946, 36980744, 30870614, 2998961, 8695161, -8949101, -12361990, 10516764, -14118631,
- -5706938, -7732552, 1393180, -17019882, -1250909, 16457241, 4964446, 7500087, -9989557, 13060996,
- 3111704, 12058121, -6903623, 675384, -17580912, 763430, 6641093, 1042603, 18919868, 10800232,
- 5258651, -811749, 7103876, -4774930, 414464, -4293357, -2723009, -125091, 202937, -838592,
- -1599875, -7156490, 4340065, -10692321, 3725347, 4792647, -11287174, -134218, 28454, 5703717,
- -908922, 5946382, 4151623, -3286187, 2279554, 1153199, -400506, -2699924, 3298535, 4216048,
- 2527588, -1635846, -290447, -1331977, -170188, -1029182, 536871, 1767379, 6802155, 71941,
- 715112, -650151, -1535451, -3638374, 1435056, -1784022, 2102923, -773094, 1133335, -1924145,
- 1792612, 260382, -442382, -2620467, 2421288, -2069101, -576063, -826781, -1248762, -806917,
- 324807, -42950, -1040456, 671626, 1667521, 1499481,
- },
- {
- -76236, 41194640, 25232932, 8623221, -13406740, 3605088, -19074486, 12307766, 23641648, -2561411,
- 16917876, 1474248, -3274913, -4441533, -12097312, 2539936, -25176024, 8136279, 14166413, 4678830,
- -10611790, -5369, -2301029, 4459787, -6022081, -8602283, 2014340, -4147328, -10136660, 20033874,
- 10279467, 6615860, 4266513, 2448668, 2941516, 3891777, 3601330, 9716827, -1259499, 14377940,
- -109522, 2210298, -1076963, 2889976, 715649, -4151086, -575526, 4191888, -4647155, 2948495,
- -1389959, -1564979, 729071, 2151779, -248571, -4089883, 475668, 3623879, -4355097, -1691143,
- 1056025, 1756105, -1474784, -862215, -1854352, -5026186, 5641440, -41876, -609885, -1426466,
- 185220, -2848100, 1329829, -1693291, 769336, 340913, -2182917, 684510, 3028489, -1981591,
- -2194192, -212064, 966905, 2456185, -2156611, -3216931, -492311, 3476239, -484258, 4480725,
- 30602, -86436, 1064615, -428423, -234076, -1477469,
- },
- {
- -12283606, -108481208, 18961206, 30659088, 18592914, 24953224, 12961674, 12153147, -1122060, -10529649,
- -44325136, 23794118, 22448184, -16109885, 6549825, 2846490, 8701604, 11500849, -577136, 3860102,
- 14048838, 3277060, -3991635, -2239289, 2108829, 3988414, -5944235, 6244346, 7047505, -15465640,
- -6221260, -270046, 5229660, 9252970, -6354941, 3124052, 10443750, -6169721, 979789, 3491809,
- -5611375, 4240744, -1282048, -4011500, 6161131, 5425081, -2965138, 3177202, 2896956, 4756677,
- -4505958, -4464619, 1335198, 2634426, 1171989, -3677566, -4165582, 8637716, 5283347, 1621887,
- 164819, -3773666, 1604170, 1686848, 1656784, -1206886, -2067490, 1015760, -2073932, -3073586,
- -2502355, -3204046, -1879048, -3780645, 162135, -545461, -390842, -3445638, -2629057, -1956895,
- -634045, 3060701, -1768990, -2345052, -2684, -949188, -824097, -195958, 1339493, -1414655,
- -197569, 317291, 1796370, 336618, 383863, -227096,
- },
- {
- -234076, 51933132, 22157736, 1258425, -19265612, -13864154, -26694832, 14337138, 6314676, 5217312,
- 9405442, -21334714, 24902758, -14698452, -8342437, -16292422, -7948911, -4663261, 12680891, 3289945,
- -21385716, -1300301, -12458626, 11163157, 11587285, 4145180, -1193464, 1584306, -4843650, 7894150,
- -3425237, 3404299, -10512469, -2093260, 4326643, -9272834, 8053, -15973520, -2813204, -1435056,
- 10333154, 832150, 694711, -8048232, 1406065, 4195646, -1684701, 4351876, 2384244, 987306,
- 1792075, -12242804, -2067490, 2863133, 910533, -4092030, -6351720, -1696512, -2117956, 230318,
- -7234336, 1212255, -1950989, 2463164, 388158, 3913252, -2064269, -2189897, 1911261, 489089,
- -1423782, 341987, 1843615, -2069637, -2760053, -662499, 3266323, -3560528, -1687922, 57982,
- 2425583, -2571075, -2617246, -544387, 1459215, -597537, -1723893, -826244, -2896419, 185220,
- 970126, 1669669, -1212791, 909996, 652835, -1866163,
- },
- {
- -12437688, -101058968, 16285979, 14797236, 11887933, 6774774, -2981244, 13169980, 4867809, -29398514,
- -20458002, -10951093, -29929480, 2319819, -4666482, 1996623, 1404454, -13603772, -13431436, -217433,
- 5256503, -3365644, -10587094, -1216550, -18570902, -5313949, 15609522, 12817793, -3008088, -6585259,
- -10653666, 169651, -3228205, 7223062, -6831683, 180926, -6358699, 13513578, -4157528, -2139431,
- 5931350, 514859, -8674760, 1316944, 840203, -6660958, -356482, 1036698, 5916855, 2724083,
- 5456756, -2820720, -7478612, -1961190, 4338454, 5472862, -3350611, -1492501, -2315524, 1696512,
- 4231617, -587337, 647466, -7263864, 1504312, -2387465, 2186675, 3498788, 3119757, -534187,
- 1767379, -2804077, -4112968, -689342, -4396973, 559956, -2306934, -1152125, -1725503, -1683090,
- -1320703, -151934, 1996086, -140660, 3212636, -1423245, 15569, 2496450, -366683, -2014877,
- -1088237, 584652, 4094178, 726386, 449898, -613107,
- },
- {
- -1429150, 24830280, 28164784, -2260227, -13288092, -22554484, -35943508, 17277042, 7279970, 6673306,
- -8926553, -17107392, 1483374, 6848326, 996969, -23703388, 6081674, -967441, -6298033, 1754494,
- 2851858, -7979513, 7490423, 13524852, -5607617, 7391639, -1644973, -11587822, 3638374, 1588064,
- -3359201, 22934052, 1499481, 8313446, -6750078, 12313671, 3071975, -13959, -8020852, 2738579,
- -3053722, 8050380, 1410360, 7711077, 10707353, 6447283, -18254, 8635569, 8305393, 5628018,
- 4697621, 1108102, -2324114, 707059, 1533840, -55835, 1773285, 5250598, -4274566, 1873680,
- 2234994, -87510, 1506460, 3875671, 514859, -791348, 2969970, 1196148, -2230162, 3009162,
- -896038, -575526, 2197413, -1544578, 626528, 1871532, 4715337, -386010, -3965866, 1641751,
- 2743947, -1465658, 2727304, 1484448, -629213, 2389613, -2054068, -1454383, 762894, 1407676,
- 401043, 2132451, 1078574, -272730, 1748589, 683437,
- },
- },
- {
- {
- 1350230, 101808976, -14503031, 20640002, 38388956, 12414066, 3110630, -132070, 8665097, -9302899,
- -5192616, -7151658, -5890548, -9973988, 11929272, -10640781, -1409286, 5288716, 3876208, -9809705,
- 12771622, -10890963, 6227166, -8224326, 8856759, 7098507, -3207804, -6770479, 3061775, 2683818,
- -13397614, 9386651, 6941204, 4152697, 5705864, 6131603, 3962107, 1660005, 1465658, 703301,
- 1941325, -1884417, 642098, -2574296, 2711198, 5628555, 979789, -2807298, -928787, -475668,
- 2331630, 2162516, 6589554, -221728, -2528662, 3412889, -868120, -995896, 1779190, 588411,
- -59593, -4832, 3609920, 1054951, -2784750, 1117765, -5929739, 1483911, -2362232, 1050120,
- 2660732, 32749, -1707786, 545461, 387621, 485868, 1354525, 3369402, 119185, -2764348,
- -3995393, -2607045, 611496, 1688996, 1485522, -978179, 2374043, -580894, -748935, -120259,
- 646393, 570157, 733366, -570157, -904628, 261993,
- },
- {
- 2139431, 24499030, 34134252, -14110041, 15166066, -4140349, -3494493, -2616172, 8981850, -5733245,
- 181999, -811212, -6829535, -3704946, -323196, -3251290, -4506495, 277025, -6826851, -1053878,
- -4836670, 6191732, 7336341, -5652714, -453119, -7844758, -4707821, 6591701, 12649752, -1325534,
- -947040, -9066139, -7432978, -212601, -5103495, 1842004, -1959579, -9605157, -8122857, -1093069,
- 616328, 4956929, -9150965, 113280, 6405944, -4599373, 1889786, 1764695, -4656819, 6950868,
- -2405182, -2514167, -590558, 2139431, 9385577, -1644436, 464393, 2459943, -1975685, -3486977,
- 955093, -1982664, -124017, -1864016, -1862405, -1942936, 2244657, 3169686, 4432943, -885837,
- 3564286, 1575716, -1285269, 1076426, -1267015, -8053, 497142, 375273, -1987496, -97174,
- 2209761, -1545115, -2115272, 2785286, -1951526, -790274, 700617, 1376537, 760746, 1005022,
- -2310156, -791348, -287763, 437013, 1354525, 1196148,
- },
- {
- -1371168, 87235080, 24251532, -7520488, 44567800, 10901164, 7180649, 6446746, -3707094, 37044,
- 4475356, -15188615, 2549063, 3910568, -1651952, -13008382, 1065152, 3648038, 3191698, 5153961,
- 6858526, -419833, -8805220, -2768107, 5825587, -1646046, -3725347, -19935090, -4122632, -7320772,
- 13351980, -6465000, 3471407, 8316131, 4174171, -5480379, 6118718, 7073275, -5342940, 3314104,
- -7477538, 5173825, 4643397, 7694434, 5461051, -4087198, 5034239, -1258425, -569083, 1374926,
- 3420405, -773631, -5208722, -743566, 2907156, -3623879, 1275068, -1553704, 3694209, -1672353,
- -624918, 1235877, 733366, 366683, 402653, 2527588, 2806761, 2540473, 137976, -540629,
- 587337, 1420560, 1105954, -1855963, 1771674, -2632278, -2283312, -1093069, 996969, -439160,
- -84289, 1119376, -834297, 1290638, -2077690, 3460133, -397284, 670552, -814970, 2243584,
- 556198, -1041530, -777389, 1018444, -288300, -176094,
- },
- {
- 11821897, -78383688, -28942174, 46219752, 9999221, 10705206, -7208029, -3323768, -214748, 14944339,
- 6511171, 6327561, 4110284, -4823785, 10437307, 5242545, 1524177, 8439611, -7818451, 5395016,
- -3463354, 1546188, 6178848, 1749662, 8053064, 5829881, 4090956, 8550206, 7067906, 8606041,
- 327491, 1888175, 678605, -7045357, -3573950, 289910, -5995775, 620086, -4891431, 2485712,
- 1802813, -1282048, 3261491, -2349347, 8904004, -222801, 3123515, 5117454, 947577, -2877628,
- 2595771, 6874632, -1478006, -996432, -3786551, 3162170, 348966, -3814468, -3665755, 5555004,
- -379031, -2767033, 3399467, -2861522, 2160906, -30065, 2618856, -1161789, -4940823, 1819992,
- -2208150, -4295, 813359, -1816234, -810138, 1631551, 279173, 1218160, 1365800, -234076,
- -148176, 398358, -221728, -200253, -105227, -50466, 674847, -2103460, 291521, -976568,
- 1381369, -1315334, 1334661, 1192390, -165356, -617938,
- },
- {
- 107374, 36960340, 11705933, -12811351, -12065100, -6012954, 3106872, 3806952, -1700270, 7338489,
- 265214, -1822677, -335007, -913754, -4269198, 9899363, 15385110, 6476811, 2752537, -11055783,
- 6451578, -11934640, 16368120, -2494839, 3060164, 507880, -11430519, -16602196, -6743636, -11443403,
- 1605781, 1036161, -1394254, -2983392, -9650255, 2203318, -3805878, 7031935, 321586, 1736777,
- 450972, 3256659, 683974, 2163053, -1735167, 5569499, 133681, -1672353, 2836289, 10039486,
- 1690607, -6934225, 139050, 9701257, 2374043, 5229660, 2464774, -991064, -906775, 2847027,
- 2289755, 234613, 612570, 2197413, 4554276, 1458678, -2057826, -2404108, 1477469, -1699733,
- 2632278, 377420, -3134789, -56908, -1044751, -3063386, 188442, 77846, 1121523, 1746978,
- 687732, 2007897, -2011655, -844498, -1543504, 1273458, -138513, 556198, -74625, -84289,
- 2116345, 452582, -44023, -616865, 201863, 1199370,
- },
- {
- 13508746, -84147536, -46176804, 66787816, 16287590, 8158291, 2383170, -468151, -4221953, 4474282,
- -2812667, 5634997, -6355478, -10631118, -11267847, -2405182, -23652922, -9392557, 3101503, -4213900,
- 878858, -10414759, 26844, -4022237, 2190970, 5938329, 3187403, -5530308, 11096048, -3546569,
- -9026411, 3281892, 11498164, 4975720, 2323041, -1208496, -3332895, 320512, -2797098, 2090039,
- 3712462, -260919, -5642514, 3022583, -11645804, -3961571, 3715684, 355409, 5976447, 3573413,
- -987306, -1199907, -710280, 1448478, 3053722, -5400922, -4062502, 1899986, 221191, 1806571,
- 387621, -108448, 1325534, 1883880, -378494, 514322, 3189550, -576063, 972810, -1228898,
- -3365644, 1655710, -2341294, 2084670, 346282, -2018098, 924492, -1105954, 478889, -481036,
- -2985002, 3497714, -1187559, 85899, -372052, -974421, -132070, -1006633, 2269890, 1122060,
- 482110, 1018444, -166430, 667867, 8053, 952946,
- },
- {
- 2144263, -16780974, 43761960, -16339666, -24133422, 2939368, 61740, -6042482, 6257231, 5476620,
- -7132330, -7807177, -9937481, -7109782, 1080184, 5784247, -8806830, -8913131, -8566312, -9787694,
- -111132, -3526168, -5306432, -2607582, 6219113, 775778, 2490544, -6765111, -10643466, 1606318,
- -21692270, -13439490, 8473434, -4961761, -6497749, -28991, 1839857, -3976066, 3049427, -3952981,
- 6593312, -3862786, -2553895, 8752606, -2688113, 939524, -872952, 4664872, -2874944, 2224256,
- -2673080, 2078227, -127775, 2823404, 2855617, -453119, 1908039, -582505, -216359, -3678640,
- -572841, 332860, -1794223, 656056, -1515050, -1231045, -1873680, 1088237, 1698660, 3030636,
- 1770600, 2107218, -609349, 2384781, -522375, -472446, -365609, -2587181, -2693481, 1581085,
- -1247151, -1108102, -808528, 1906429, -1635309, 1075352, 353798, -2370285, 172336, 2139968,
- 594853, -566399, 115964, -1868311, -649614, -945430,
- },
- {
- 12784507, -53531936, -40072580, 52984328, 32631014, 12775380, -7900593, -8029978, -530428, 5971079,
- -2979634, -9334038, -8841190, 9659918, 2616709, -8793409, -11470247, 14088030, 6094022, 15019501,
- 5060545, -1128503, 11796665, -4159676, 4960687, -8951249, 7947300, -1654636, 3588982, -2864743,
- -3389266, -2624762, -3920768, 5633387, 5632313, 1276679, -6702297, 2651069, 2885144, 7963406,
- -1069984, -3563212, 2997350, 7789460, -1224066, 3552475, -804233, 4442607, 2098629, -104153,
- -3325915, -5966247, 5182952, -141197, -1171452, 6665789, 1396401, 1286880, 1540820, 7273527,
- 3854196, -354872, -1570884, -1945083, -3438121, 4467840, -823560, 1148904, 1196148, -558883,
- 625992, -3113851, -1329292, -964220, 1086627, -265214, 5676873, -1078037, 1594507, 368830,
- -303332, -415001, -1586454, 1609539, 1964411, 1137630, -774705, 1030792, 566399, -907849,
- -155156, -279173, 821949, 887448, -1612223, 2079838,
- },
- {
- 2202245, -34957812, 45122388, -17801028, -18653042, -2827699, 1369021, 3699578, -851477, -4525285,
- 285078, -5654862, -955630, -7394860, 470299, 30065, 3165391, -6931541, 3722126, 13673565,
- -7522635, 6733435, 3442953, 8527658, 11105175, -4286914, 11633993, -14003204, 16528645, -10672457,
- 14852534, -11569568, -11571716, -2837900, -13138842, 2400350, 13378286, 3238405, -1629403, 1817845,
- 71404, -562641, 2861522, -7428146, 4557497, 844498, -936840, 1250909, -451508, 2828236,
- -2673080, -2454574, -376347, 1974611, 2112587, -2263985, -877784, 1792612, -1765232, -880468,
- 1351841, 329639, -1158567, 25770, -928787, 1810866, 2419140, 2538326, 1446867, 1846299,
- 1444720, 3364033, 17717, -363462, 767189, -1837172, 2703682, 1142998, 1474248, -1870995,
- 294205, 293132, -757525, -2326799, 2114735, 22549, -1239635, 806917, -619549, -1901060,
- 373125, -1191853, -407485, -681826, -2740726, -777389,
- },
- {
- 5463736, 9644886, -1623498, 14336064, -173409, -9395241, 33851320, -8151848, -9658845, -13521631,
- -7347079, -539018, -7357279, 3088618, -2887292, 4953708, 2748779, -6827388, 10210211, 2907156,
- 11083163, -2913062, 787590, -11202348, -7574712, 12650289, -9507447, 8224863, 11565810, 14604499,
- 4287988, 5790690, -12254615, 8529268, 6352257, -8014409, 543850, -8160438, 9974525, 1026497,
- 4296041, -13653164, 1034550, -6663642, -1874216, 40802, -11274, -6082211, 1501628, -1353989,
- 2263448, 5548024, 2313914, 4830228, -783832, -3238405, 3506304, -6524056, 1074, 8836895,
- -1473174, -11811, 1206886, -279710, 1129040, -5133560, 4862977, 1628866, 5391258, -457951,
- 797253, -589484, -4196720, 1315871, -1002875, 1436130, 121333, 196495, -1744294, -556735,
- 1747515, -1093606, -1785633, -906775, 867583, -759672, -430034, -645319, -402116, -1809255,
- 1395328, 1140851, -1797981, 387084, -592169, 1496259,
- },
- {
- -835908, 61262876, -199716, 7210713, -414464, -18003966, 2005750, 15685221, 1853278, -2771865,
- 26856968, -4040491, -5506148, -7779797, -14706505, 6749004, -19047106, 4587025, 10968810, -8410083,
- 8985608, -10787347, 4433480, -5550709, 7552163, -9563282, -1400696, 5009543, -1999844, 16655883,
- 10021769, 634045, 3859028, 4193499, -12739410, 18403398, 5436355, 6062883, -1100049, 3398930,
- 8423505, 3415036, -3666828, 1708323, -1724966, -1625645, 6785512, -2695629, 33286, -2239289,
- -1197222, 2750390, -465467, -2123861, 325344, 1900523, -1298154, -755914, -3007551, -1523640,
- 2035278, 2823941, -1621887, 1918240, -5284958, -2640868, 3733400, -2551748, 1551557, 569083,
- 1518271, -2697776, -2536715, -113817, 1879585, -1132798, 238371, 1509144, -2206540, 719407,
- -2047089, -1596654, 381178, 3694746, -1403917, -3260954, 584116, 1751273, 2203855, 2380486,
- -502511, -431644, -866510, 2134062, -1288490, -451508,
- },
- {
- 7954817, -112769200, -3224447, 17062294, 14304389, 10513543, 39204460, -1023813, 2731599, -17031156,
- -9236864, 1308891, 11835319, 7146289, -4396436, -5325223, 1048509, 14023605, 7536057, 4301947,
- 10089415, 6337761, 2711198, -4815195, -1844689, 10682657, -8210904, 5396090, 551366, -10919954,
- 882079, -4870493, 2998961, -2066953, 6226092, -4311611, 12582107, 1506460, 3907347, 796180,
- -5621576, 1707786, -5477694, 5159867, 568009, -282394, 2510409, 2572149, 5086315, 500901,
- -5995775, -1516124, 4528506, -949188, 5509370, -7361574, -730681, 6375879, 4123706, 1612223,
- 2674691, -2733210, -1395328, 2644089, -617938, 1332514, -2695629, -113817, -795106, -6318434,
- -205622, -2717104, -3583077, -2618856, -319975, -102542, -2660732, -530965, -2587718, -3780108,
- 1271847, 1236414, -1433982, -976031, 81068, -702764, -2681133, 290984, 1489817, -894964,
- 615254, -1195075, 790811, 2582886, -627602, -469225,
- },
- {
- 400506, 53145924, 7208029, 1581622, -10533944, -6047314, -19955492, 9653476, -567473, 2969433,
- -115427, -5567352, 13405130, -11519102, -16944182, -4189741, -16699907, 6330245, 16094853, -14053133,
- -8687108, -7253663, 1785096, 3517578, 11510512, 1319629, -2140504, -8766028, 12569222, 3157875,
- 9519795, -8788577, -4156455, -313533, -5044976, -2000918, -10289668, -12353937, -5875516, 8272644,
- 5676873, -4294431, 2228551, -4441533, -3191698, 3674345, 1796370, 2335925, 4808216, 1931662,
- -1809792, -8101919, -423054, -577673, 2727841, -6466074, -1986422, -5640366, -2844342, 1735704,
- -6535867, 994822, -4570382, 217970, 4600984, 1177895, -2214593, 3054796, -2568927, -1440425,
- 867047, 383863, -2193655, 1246614, -1466195, -1204738, 880468, -421444, -3913252, 1591822,
- 392990, -1637993, -1489280, 1702418, 1027571, 33823, -3997004, 503048, -3527779, 280784,
- -543850, 581431, 1189706, 370978, -814970, -1134945,
- },
- {
- 8718247, -101567920, -13317620, 19938312, -2522757, -3420405, 29215978, -3986267, -6157910, -7323993,
- -21974126, -4101157, -29250874, -4400194, -17530446, 12973486, 7735236, -15547245, -16100222, 9371619,
- 2967286, 3524558, -18174154, -7199439, -7531225, -6273874, 9487583, 13829795, -197032, -10174778,
- -11576011, 6439230, 235149, -2513093, -4321811, -2790118, 3385508, 1167157, 5785321, -166967,
- 1188632, 870268, -9851581, 6624987, -7915625, 3528853, -4657355, 865973, 4130148, 4777078,
- 2434710, -3204046, -3031173, 1227287, 2005750, -1599875, -18790, -2878702, 2342905, 1193464,
- 1120987, 2742874, -528281, -7572564, 3362423, -3841312, -324270, 1786170, 4203163, 2866891,
- -1627793, -737661, -5124970, 216896, -3536369, 1343251, -2825552, -1438814, -285078, -459025,
- -1544578, 58519, 2863670, -307090, 882079, -953483, -346282, 1998770, 1391569, -2075543,
- -1176284, 1903207, 1999307, 1712618, -5906, 833224,
- },
- {
- -66572, 59507308, -5701569, -1591285, -9918690, -18682570, -26866632, 8261907, 8293045, -1403917,
- -8035884, -6191196, -331786, -15650324, -6248641, 21561810, -9753871, 409633, -3970161, -2223719,
- -15722265, 6124624, 6285685, 3211562, 9119289, -3394635, 6429029, -12000675, -1895154, 17012902,
- -814970, 3433826, 13093745, -8638790, 8982387, 5414343, 1847373, 9097278, -9422085, -4827543,
- 322123, 3083250, 4221416, 10280541, 4091493, 9816148, -1069984, 9671729, 5169530, 2360085,
- 11086384, -1168768, -3899294, 2764885, -1153736, 1236414, 2067490, 2463164, -635118, -520765,
- 8153996, -923418, -3007014, 2733747, -170188, 1730335, 4325569, -2319819, 374199, 215285,
- 1772748, -2497524, -313533, 452045, -662499, 7015829, 1093069, -2463164, -3858491, 3209951,
- 315680, 1696512, 2038499, -1422708, 1010391, 397821, -1054951, 582505, 921807, -415001,
- 2753074, 77846, 2090575, 83752, 746787, 146566,
- },
- },
- {
- {
- 2621541, 113498808, -31434866, -45505180, -16387448, 6688338, 3369402, -4683662, 12765180, -5724118,
- 930397, -1476395, -4806606, -8799851, 9031779, -7468412, 7291244, 19567872, -3917010, -32796370,
- 491237, -13707925, 9641665, -2094333, 2220498, 1131187, 1602023, -3764539, -4490925, -2379412,
- -11190000, 10875931, -1557999, -2514167, -881005, -2956011, 2382096, 2754148, 3806415, -1253057,
- -4177930, -7395397, 1065689, -737661, 2037962, 3148748, -2143189, -5009006, 843424, -162672,
- -3789772, -3703873, 5046050, -2299955, -4171487, 2234994, -611496, -2267743, -519154, -430570,
- 1684164, 1608465, 3216931, 4407710, 846645, 3524558, -4042101, 409096, -3424163, -476741,
- 449898, -526670, -2302103, -1613834, 1278290, -994822, -819265, 4289062, 1660005, -811212,
- -1037235, -607738, 1823214, 1926293, 1185411, -1828046, 323733, -1036161, 625992, -525597,
- 66572, 546535, 1247688, 539555, -132607, 1611,
- },
- {
- -1574642, -38419556, -16041703, -23359790, 16935056, -5950677, -2490544, -2133525, 10171556, -5297842,
- -2197413, 2837900, 5893769, 7166690, 1061394, 4904316, -8822400, -13167833, -4155381, 15103252,
- -1505923, -5152350, -317291, 5026723, 1220308, -12664785, -8968965, 4405563, 3487514, -3999688,
- -1649268, -4856535, -6089190, -3703873, 2800319, 9583683, 3085397, -3077344, -4300873, 1257352,
- -3180960, -1427003, -6024229, 1448478, -359704, -7058779, 2560338, 1883343, -5288179, 4413616,
- -4747550, -1792612, -159451, -1305133, 5406827, -3842385, -92879, 1137093, 572304, -5162551,
- -181999, 107911, 4027606, 749472, -667867, -498753, -1462436, 1136019, 2175401, -2019708,
- 2212982, 1238561, -2394981, 235686, -1273995, 159988, -1089311, -2345052, -2744484, 348429,
- 2782602, 981400, -346282, 3507378, -511638, -587874, -1227824, -821413, -409096, 1250909,
- -2571612, -917512, -685047, 929860, 522912, -2015950,
- },
- {
- 406948, 39811124, -34553012, -52451752, 12463458, -1156420, 3573413, 3375308, -3341485, -2985539,
- 3117610, -13634374, -2527052, -3322157, 861141, -2068027, -1971927, -1149978, 4515085, 7140920,
- 3287261, 3136400, -2901251, -55298, 4417911, -9427453, 5202279, -8643622, 2279554, -19864,
- 8392366, -11465415, 1377611, -3937411, -3296388, -578747, 3959960, 4012573, -2816425, 5145908,
- -4526359, 5224291, -2881923, -3270618, 5122286, 7378217, 8213588, -2738579, -2155000, -1031329,
- 1344862, 4261145, 471910, -2305324, 754841, -3601867, 4407174, 296353, 2933463, -4627828,
- -1478006, 1248225, 354872, -3053185, -2939905, -23622, 249108, 1726040, -1289027, 64961,
- 860067, 1560147, 1988033, -2296734, -1241782, -1754494, -728534, -928250, 1578937, -1161789,
- -717260, 2229088, -786516, 1035087, -1765232, 1563905, -648003, 1566589, -454193, 603443,
- -281857, 517544, -1029182, -397284, -707596, -508417,
- },
- {
- -12721156, -33964064, 22435298, 25370908, -7486665, 10660109, -2889976, -5004711, -4467303, 3434363,
- -4645544, -1379221, -2693481, -8016557, -5274757, -3295314, 2064806, 11108933, -3775813, 8571681,
- 6442451, 1727114, 5454072, -55835, 1417876, 801548, 1207960, 2960306, -998043, 983548,
- -3322157, 2165201, 6255620, -6219650, -12300249, -7816841, -5189394, 5821292, -5305359, 4221416,
- 1190780, -122407, 6912213, -1614371, 7672422, -8070244, -2417530, 1053341, -38655, 1876364,
- 1349157, 1947231, -1446867, 1430761, -3104188, 4240207, 606127, -2665564, -2156611, 1415729,
- -1833414, -1134945, 4334159, -2160369, 1989107, -2079301, 2626373, 730681, -2085207, 2668785,
- -2012192, -881542, 616328, -1846299, -481573, 842350, -2165737, -935229, -171799, -925565,
- -670015, 376347, 1244467, 682900, -91805, 106300, -451508, -2560338, 550293, -651761,
- 1484448, -1321239, 1741609, -441845, 5369, 477278,
- },
- {
- -605590, 6204617, -4849018, -5094368, 5698885, -4067871, 1330903, 1460826, -5894306, 2098092,
- 965294, 8140037, -175557, -11078331, -14306536, -12010876, -7604777, 5963025, -1312649, -8316668,
- 9156870, -13172128, 15275588, -5739150, -660351, 8750459, 2626909, 436476, -1001264, -6367289,
- -3598646, 2814814, -1480153, 559420, -107374, 6784438, 278636, 6887517, -4459250, 594853,
- 3029563, 3481071, -2937221, -655519, -2316598, 4286378, 2764348, -909996, -2670933, 3671660,
- 1385127, -6049462, -4122095, 3578245, -1165010, 3563212, 987306, -1145146, -2078764, 769336,
- 1059783, 726386, 1800665, 3347927, 2718178, 418759, 125091, -1105954, 3867081, -4342749,
- -170725, 485868, -2164127, -376347, 244813, -1749662, 1806571, 1020592, -249108, -353798,
- 178778, 1667521, -2588255, -663572, -461172, 744103, -1251983, 807991, -884226, -1585917,
- 1655173, 54761, -561030, -768799, 180926, 1096827,
- },
- {
- -15248208, -26445188, 22428856, 26043072, -25992606, 4932233, 6174553, -2090039, -10772852, -734439,
- -2867965, 9695889, -4001299, -8716636, -8768713, -4660577, -10529649, 2314987, 4793184, -2622078,
- 576599, -8031589, 4223564, -6481643, 3256659, 12109123, 2824478, -4013110, 9810779, 3571265,
- -2547989, 5206037, 2511482, -1919850, -804770, -1014686, -4077535, -339839, -3436511, 1378685,
- 2270964, 2121177, -6576132, -1098438, -11463268, -790811, 9170829, 142808, 2626909, -1761474,
- -1988033, 2655364, -2572686, 66035, 4693326, -2753074, -2219961, 2950106, -848256, 442382,
- -1404991, -848793, 4829691, 195421, -3617973, -473520, 1078574, -1269163, 3044058, 257698,
- -1342177, 3785477, -2199560, -250182, 1520418, -68719, 1760937, -1583769, 137439, 3221,
- -1978369, 3607773, -3469260, -1125818, 909996, -794569, 1407676, -786516, 1056025, 1352378,
- 700080, 1917703, -729608, -486405, -756451, -1044214,
- },
- {
- -2147, -35017404, 36735392, -3869766, -384936, 3086471, -726923, -1313186, 6488622, 1973538,
- -5395016, 1757179, -6242198, -8502962, -1395864, -9424769, -16602196, -4109747, -175020, -5425618,
- -7765301, -4880157, 13979045, 2767570, -780610, 6174553, -635655, -3804267, 905164, 21727166,
- -1020592, -7306276, 4184909, 3874061, -1649804, 350040, 1460289, -5719823, 7865159, -2510945,
- 2801929, -5425081, -3040300, 9860171, -7601555, -1443646, -1991254, 1526861, -3666828, 5043366,
- -4714801, -4472672, -7270843, 1663763, 1564979, -1967095, 584652, -458488, 484794, -1779190,
- -2386928, -3936338, -1628866, 759136, -2464774, 802085, 397284, 2029909, 1350767, 1185411,
- -706522, 3729105, 1531156, 1839857, 289910, -29528, 172872, 1997160, 492311, 1932735,
- -1236414, -287763, -713501, 797790, -2956548, 148713, 1522566, -2134599, -425202, 503585,
- -583042, -549219, 1074816, -1156957, -433792, -1489280,
- },
- {
- -14815490, -6765111, 15340013, 7113003, -15660525, 5867462, 2510945, 1824287, 2137820, 6442988,
- 2942590, 5505611, -5577552, 5041218, 16214575, 4728759, -13905493, 12805445, 2044941, 6997039,
- 1258962, -1371168, 3985730, -7941395, 8144869, -10189273, 7130183, -1144609, 10267656, -2070711,
- -4248260, 3020973, 135828, 1122597, -2606508, 1508607, 1465658, 4806606, -1386201, 3904662,
- 351650, -1390496, -4378719, 1435593, -412854, 5486284, -2137820, -1829119, -495532, 792421,
- -2031520, 284005, 3235184, -6710350, -1334661, 6606734, 3646427, 2877628, -2270964, 2798171,
- 2882997, 1209570, -3159485, -770947, 846645, 4876936, -2684, 2699387, 310848, -907312,
- 1938641, -2168422, -2684, -710817, 1045288, -2187212, 3166465, -157840, 2275796, 526670,
- 500901, 2059437, 150324, 2588255, 1316944, -169114, -1580548, 1029718, 1656784, -599685,
- -521302, -634045, 401579, 994285, -1111860, 1047435,
- },
- {
- 1521492, -29921426, 57892400, -3823595, 4829154, 289373, -2518462, 2601140, -440771, -2652679,
- -405338, 2678986, 3729642, -13237089, -1590749, 10116795, 15131707, -3444564, 4303021, 16420197,
- -4938139, 4911832, -9990094, -1352915, 7212861, -11523397, 8697309, -10999411, 14300094, -10240813,
- 17987860, -8375186, -9826885, -865973, -5915244, -328565, 9190156, -3456912, -9340480, -3035468,
- -230318, -1564979, 1873680, -6243809, 4909148, -4153234, -3417183, 5306969, -1537061, 57445,
- -83752, -815507, -3352222, -1695975, -343597, -2519535, 2131915, 3803731, -2680597, -2083059,
- -383326, -1601486, 390305, 1454383, -1794223, 1746441, 870805, -717260, 542777, 1547799,
- -736587, 1344325, -1083406, -591632, 2217277, -1491427, 167504, -1362578, -1056562, -2176475,
- 2472828, 411243, -1808718, -2735357, 1881733, -343061, -529892, 2223183, 1017907, -137976,
- 981400, -231928, -281320, 139050, -736587, 680752,
- },
- {
- -5399848, 67294624, 38191388, -4364761, -11905112, -9943923, 38082940, -12244415, -16401406, -15743203,
- -3623879, 4402342, -31675, 10858214, -2249489, -8533026, -14431090, -21933862, 2013803, -3498251,
- 5434208, -13805636, 8515846, 3681324, 6725919, 14063870, -13575318, 6561100, -7408819, -709743,
- 377957, 4167192, -11267310, 8470212, 4387309, -3891240, 4804995, -13273060, 11228118, 6115497,
- 6897718, -8450348, 3341485, -4854387, -4828617, 1064078, 6032282, -4575751, -1194001, -2728378,
- 209917, 4434017, 3983582, -2289755, -6901476, -4456566, 3382287, -4101157, -2068027, 3686693,
- -1582159, 806380, 142271, -1482301, 1189169, -6222871, 2924336, 1812476, 2225330, -2689187,
- 1743220, 1298154, -3236795, 3183645, 529892, 1578937, 1825898, -19327, -4953708, -2410014,
- 1750199, -2406792, -1977296, 2266669, 264141, -55835, 2049773, 401579, 195958, -908922,
- 1207960, 887448, -1675037, 306553, -1659468, 311385,
- },
- {
- 16106, 45294188, -25884158, -11874511, 2122251, -3728032, 10402948, -2375654, -14257144, -11429445,
- 12062416, -2938295, -408022, -14549202, -25694104, 13003013, 5658083, -1787243, -4296041, -11151883,
- 8858907, -8471823, 10732586, -10767483, 13273060, -1092532, 611496, 14879377, 6707665, -579821,
- -614180, -8597451, 773631, 8534637, -20201916, 6182606, -5966247, -686658, -2357400, -638340,
- 1766305, -2602750, 781684, 6628745, -1023276, 572841, 5399311, -5864778, 3261491, 15032,
- 387621, 1189169, -1667521, -5322538, -1010391, 1862405, -4998805, -1291711, 2884071, 3258807,
- 1196685, 1857573, 3610994, 5112085, -309775, 1729261, 690953, -4667019, 2634963, 3167539,
- 1228361, -2492692, -1833414, -2471754, -1487669, 939524, 3808026, 1122060, -4497905, 1551557,
- -583042, -1327682, -391916, 1140314, -1101122, -1236414, 2448131, 2516314, 1485522, -430034,
- -1735704, -1120987, -2542084, 1240709, -695785, 868657,
- },
- {
- -5981279, -122469384, -15280957, -4373888, 4240744, -22921166, 7501698, -4306242, 5464809, -8653822,
- 7187091, 86973, -1068373, -5546951, -5930276, 6184216, -1427003, 5547487, 10522670, 4370129,
- 2201171, 710817, 10867341, 3451543, -5850283, 8195335, -4898410, -922344, -1369021, -2121714,
- 1364189, -7789997, 2055142, -7390028, 4891968, -7590281, 8567386, 5362267, 4108673, -374736,
- -1238024, -334471, -9820443, 4788889, -1284732, -1735167, -1174674, -2344515, 3608846, -2321967,
- -3664681, 2080375, 7920457, 1590749, 5989869, -6182606, -3461744, -1729798, -982474, -2631741,
- -1202591, -2334315, 1623498, 1360968, -3780645, -755377, -3402688, 845572, 1119913, -4679367,
- 276489, -2056216, -1291175, 1771674, -773094, -1620813, -1334661, 3188476, 694711, -1581085,
- 1869385, -1610076, -979789, 1377074, 310311, -273267, -2492155, 526134, 2278480, -143345,
- 1165010, -1072668, -113817, 2649458, -1306207, -1302986,
- },
- {
- -711354, 11768210, -26962730, 3099893, -4589173, 3704409, -11918534, 6234682, -2515240, -1276142,
- -3597035, -3591667, 16842178, -6260989, -20696374, 11966853, 4162360, 13009993, 6578816, -10657961,
- -1136556, 5782100, 10777684, -10356240, 4016868, -3474629, -1966558, -9227200, 5201206, -1455457,
- 6202470, -8998493, 7369627, 834834, -3155190, -2014877, -12749074, -10718628, -2173790, 12706661,
- 5183489, -4399121, 5035849, -2157684, -6685117, 3046206, 2558727, 13959, 1482301, -560493,
- -3053185, -5667746, -1522029, -1724429, 7188702, -1883880, 544387, -2370285, -46708, 4910758,
- -575526, 3371549, -6363531, -410706, 2991445, -2420751, -4293894, 2324651, -4118337, -928787,
- 1430224, -1667521, -2306398, 3110630, -2388539, -1568737, 644245, 2927020, -580357, 2815888,
- -26307, 41339, 288300, 1560147, 2037962, 2114198, -1491964, 2598455, -1896765, -1243393,
- -2068564, 103616, 1629940, 687195, -1300838, -1263257,
- },
- {
- -7057705, -98912560, -7292855, 17723720, 576599, -12536473, 27945742, 3669513, 693100, 9635759,
- -482110, 9611063, -19826642, 6027450, -17463338, 7249905, 2900714, -7573638, -7394860, 9040369,
- 831076, 8076686, -7082401, 413927, 3097208, -5094905, 3782256, 6586333, -5204964, -10479720,
- -9171366, 6244883, 1017370, -7456600, -4235912, 5571110, 8884140, -4570919, 3908420, -1500554,
- -874563, 4735739, -390842, 12471511, -8298414, 5907728, -3475166, 1149441, -1231582, 4787278,
- 2754685, -4831302, -388695, -207232, -3337727, -2811056, -1132798, -574989, 6021008, -2701535,
- -1240172, 1406602, -1071058, -5858336, 3502546, -1664300, 25770, -871342, 803696, 321586,
- 1034013, 1327682, -5879810, 1969779, -722091, 2922188, -1732482, -579284, 1712618, 967441,
- 664109, 1906429, 1389959, -1584306, 972273, 207232, 388158, 1216550, 1904281, -123480,
- 930934, 742493, -800475, 2106145, 401579, 736587,
- },
- {
- -566936, 59870772, -9744207, -4672925, 1207960, 6823630, -14387604, -2469606, 2194192, -2018098,
- -1635309, 2293513, -2105071, 9245991, 24234352, 31976032, -941135, 4031364, 2335925, -11554536,
- -16294032, 7067906, -6280316, -3967476, 10872173, -5866389, 9251360, -3257733, -2207076, 12955769,
- -882079, -2971044, 10286984, -9250823, 7822209, 2211908, -6311992, -1955821, -7598871, -5028333,
- -2248952, -201327, -535260, -454193, -6214818, 4459787, -5403069, 2103460, 1175747, -234613,
- 9334038, 920734, -1214939, 1886028, -5210869, 294742, 1358283, 2558190, 3479461, -2998961,
- 2916283, -1817308, -2038499, 821413, -1664837, 1474784, 2210298, -561567, 947577, -4396436,
- 2081449, -1598265, -4174708, -1887101, -2048699, 1468342, -1960653, 622770, -604517, 1536525,
- -979789, 1251983, -1337882, -1673964, 1236951, -1463510, -815507, 216359, -928250, -1120450,
- 1739462, -1858110, 2843805, 886374, -532039, 6442,
- },
- },
- {
- {
- -4447439, 113771536, -5532992, -60713120, -17794050, 7514582, 4105989, -1789391, 12902619, -7812009,
- 4068408, -2722473, -2980171, -3130494, -1172526, 1700807, 3547643, 15830176, -4363150, -25338696,
- -4204236, -8628589, 868120, 3672734, 977642, 1898376, 387084, -3926137, 348429, -9430138,
- -1302449, 7704635, 3935264, -7623567, -3826816, 4247723, 4526359, -3432216, 2280091, 1218160,
- -5971079, -3723737, -1061931, 1899449, 3367791, -402116, -3239479, -2647311, 501974, -1964948,
- -2334852, -533113, 870805, -2252174, -3011309, -95026, -247497, -3764002, -993211, 889058,
- -1002875, 3621194, -59056, 5521181, 2354179, 2091649, 555125, -4520453, -792958, -2668249,
- 378494, 13422, -2964064, -464930, 33286, -20401, 1145683, 493384, 2201708, 772557,
- -1034550, -413927, 462246, 2339147, -326954, 819802, -1484985, 461172, -823560, 815507,
- 858993, -114890, 895501, -100395, 947577, 260919,
- },
- {
- -321049, -58269284, -2615635, 4285304, -16777216, -3316789, -2861522, 6474127, -1345399, -2967823,
- 4656282, -2612951, 11964705, 4319127, -372588, -4106526, -1711545, -15078556, 1385127, 12167105,
- 3425237, -9564355, 855235, 7600482, -979789, -5950141, -3435437, 719944, -6458020, 4146254,
- -3660923, 492848, -11848741, -714575, 809601, 6990596, 3272765, 1919314, -5513128, 3514894,
- -6622840, -4938139, 458488, -2640868, 467615, -3486440, 5149129, -2105608, -5234492, 1669132,
- -2256469, -1021665, 209917, -348429, 655519, -1561221, 1330366, -1528472, 929860, -5149666,
- 577673, 3337727, 838592, 889595, -1610076, 299037, -1093606, 1455994, 2235531, -2157684,
- 471373, 1660542, -1285806, -84826, -581431, -690953, -2711735, -2021319, 823560, -501974,
- -76236, 1926293, 1859721, 1010928, 1168231, -928250, -1548873, -957241, 595927, 482110,
- -1014149, -387621, -419296, 69256, 278099, -2779381,
- },
- {
- 434865, -18435610, 814970, -32908576, -14950781, -1683090, 4221416, 5127654, -5701569, -4948876,
- 10050760, -16388521, 547071, -8587250, -513785, 2188823, -2264522, -225486, -224412, 11427834,
- -5909338, 12023761, -1110786, -3568581, 5506685, -4572530, -5835787, -1327145, 1429687, 3522947,
- -944893, -1797981, -3416647, -1050120, -6990060, -817654, 3033321, 1906429, 207769, 921271,
- 1345399, 470299, 2107755, -3473018, -934155, 9595494, 5219459, -454730, -2680597, -3293166,
- 3125663, 7156490, -3880503, 1298154, 697395, -3974992, 3411278, 1122597, 695785, -3437585,
- -1341640, -807991, 3571802, -5004174, -1316944, -227633, -1805497, 1387274, 1697049, -1794760,
- -881005, 3854196, 1153199, -2039036, -2889439, -2970507, 2114198, 702764, -1210644, -454193,
- 1161252, 535797, -103616, 1008244, -942745, -1352915, 1235877, 670552, 125628, -212064,
- 413391, -63351, -43487, -927713, -98247, -564251,
- },
- {
- 14150307, -601295, -35464620, 12750684, 11872900, 4233227, 804233, -5663988, -6039798, -4016331,
- 3974992, -6980396, -3850438, -1330366, -10261751, -4011500, 5059472, -1176284, 6059662, 11157251,
- 5220533, 573915, -5892695, 3842922, 5577015, -3959423, -1130650, 1918240, 1521492, -1204738,
- 857920, 608812, 8041790, -8097624, -6659347, -10162429, -2610266, 103079, -407485, 798327,
- 3406446, 1173600, 5645735, 3068754, 4077535, -5709086, -3875134, 759136, -3869229, 5947456,
- 469762, -232465, 2264522, 653372, -1164473, -53150, 901943, -1372779, -527744, -5350993,
- 3502546, 1289564, 2400887, -1840394, -1130113, -492311, 2484639, 2146410, 738734, -1228361,
- -869194, -3163780, 2009508, -54224, -1203128, 1067299, -1857037, -26307, -1887638, -941672,
- -603980, 28991, 1263257, 2233383, -1418950, 417686, -1660005, -1198296, -857383, 687195,
- 2168959, -2046015, 1882269, -607201, 234076, 430570,
- },
- {
- 377957, -37719476, 26203058, 5384815, -1317481, -1020592, -1674500, 1828046, -2656974, -1479616,
- 5915781, 7947837, -1440425, -13236552, -14278082, -9495099, -12782896, 10207527, -18708878, 5349919,
- 2806224, -403190, -4801237, 3441880, 344671, 1411434, 6026376, 4544076, -29528, -206695,
- -10455024, 682900, 1413044, -2123861, 10220412, 3294240, 3627637, 4845260, -8847096, 149787,
- 9908490, -5480915, 1407676, 1561221, -3441880, -1997160, 4968204, 245887, -3602404, 1494649,
- 1921461, -2852932, -5711770, 1442035, -2957085, 4878546, -1111323, -490700, -1656784, 328565,
- 952409, 1648194, 1647120, 1702418, 2782065, 1751810, -2502355, -2162516, 2216203, -345745,
- -1579474, -1050656, 688805, -2540473, 1505386, 256087, 2478733, -81604, 297427, -1557999,
- 85899, -447750, -905701, 898722, -2174327, 750546, -1309965, 751619, -1287953, -485868,
- -11274, 183073, -715649, -150324, 732292, 928250,
- },
- {
- 16756278, -13580687, -23517630, -182536, 5786932, 227633, 543850, -3297461, 3172370, -11024107,
- 5956046, -8491687, 4951024, -15569, -9165997, -8260296, -3357054, 477278, -10648298, 1017370,
- 7958038, -9028021, 5323612, -14014478, 17925046, 9034464, -1679869, 164283, 2183991, 6382322,
- 2150705, 9700721, -4851166, 140660, -976568, -2918967, -4165045, -2874944, 1213328, -1781338,
- -453656, 3527779, -7623030, -3234110, -4168803, -3445638, 8080981, -4203699, 2894271, -324270,
- -2149631, 5171678, -204548, 26844, -1852742, 3659849, 209380, 937377, -4525285, -886911,
- -188442, 1204738, 3143916, -3059091, 1629403, -2452963, 477278, -1231045, 1879048, 870268,
- 1979443, 2984466, -2438468, -2550137, 2558727, 1473711, 652835, -1477469, -836445, -444529,
- -374199, 726923, -1475858, -953483, 986232, 360777, 1305133, 358630, -1214402, 1021129,
- 748935, 2113124, -767725, -102005, -1292785, -1089311,
- },
- {
- -1590212, 885837, -8295730, 6650220, 2043331, 850404, -655519, 4871030, -1709934, -909996,
- -3861176, 3751117, -5291937, -487479, -4490925, -10744398, -19495394, -11842299, 6150393, -3023657,
- -11901354, -3735548, 12377559, 5985574, -367757, 2123861, 3497714, -6662031, 2189360, 21437792,
- 3733400, 468151, -5976447, 11664057, 1284732, -6521908, 7371238, -7363722, 5150203, 3969624,
- -1269163, -4959077, -4234301, 6886443, -2115808, -1866163, -2512019, 2842732, -6702834, 5286568,
- -1347009, -5797669, -3546569, -1478006, 2305324, -5590974, 1632088, -436476, -836982, 1254131,
- -2576444, -2546916, -1670205, -2900714, -1423782, -168041, 2477123, 1236414, 453656, 725850,
- 2660195, 2663954, 1771137, -1080184, 741419, 1580548, 233002, 814433, 3669513, -2319282,
- 81604, -95563, 1607928, -1250909, -1887101, -664646, -209917, 331249, -1939715, 737124,
- -1061394, 275415, 79994, -852014, -1130113, 191663,
- },
- {
- 17732310, -3774740, -17266842, -17226576, 5059472, 2291902, 6064494, -3115462, 3809636, 2706903,
- 19835232, -4755603, -4160213, 5726802, 8138963, 16050830, -12292196, 1095217, 3811784, 7461432,
- -1303523, 365072, 5296769, -5280663, -19327, -5444945, 4511863, 1374926, 6425271, 1062468,
- -3474629, 2346663, -1335198, 959925, -3988414, -2314451, 9091909, 2024540, -3550864, 79457,
- 826781, 1366337, -6388227, -2752000, 3310883, 2335925, 2472291, -4788889, 2593624, 230854,
- -4058207, 2852932, -2719251, -53150, -1823214, 4435091, 2148021, 5298916, -1827509, 45634,
- 3994857, -1447404, -543313, -875100, 2596845, 3274376, 1059246, 1818919, -568009, 1171452,
- 1680943, -3910031, -62277, 1968169, -1382980, -967978, 879395, 1828046, -228707, 1115081,
- 456877, 2566780, 388158, 1658931, 1584306, -1093069, 25233, 963146, 1363652, -935229,
- 14496, -1132261, 1191853, 906775, -199179, -1051730,
- },
- {
- -2460480, 35443680, -16487843, 11696807, 3757560, 2581275, -2606508, 89121, 962610, -366683,
- -3183108, 6367826, -245887, -9795747, -4449049, 8980777, 13253732, -246961, 2921115, 7504382,
- 3477850, 3656628, -3908957, -7264401, 4639102, -7631083, 4791036, -2660732, 3183108, 4862440,
- -3378529, 1146756, -7029788, -3098819, -1450625, 149250, 3740380, -105227, -12957916, 624381,
- 2386928, -3802657, -575526, -6501507, 4009352, -3147137, -1156420, 2502355, -1544578, -1549410,
- 1263257, -1162862, -1814624, -3428458, 1765232, -3206193, 2386391, 2585570, -1727114, -2215666,
- -2074469, 76773, 1290638, -1088774, -589484, 301721, 1388348, 328028, -22549, -1092532,
- 169651, -450972, -71404, 1225139, 664109, -906775, -41339, -1785633, -1432909, -981937,
- 851477, 714038, -1898376, -421444, 832150, 221191, -966368, 1408212, 1071594, 2222109,
- -1077500, 1442035, -954557, -394600, 352724, 1389422,
- },
- {
- 5996311, 103329400, -9637907, -1889786, -16936666, 2253784, 20498268, -3635153, -14235132, -8203388,
- -12679280, -1724966, 5503464, -776315, 10312216, -7864085, -17727478, -12895102, -2854006, -11382200,
- 5054640, -12913893, 6316823, 6615324, 7354058, 15023796, -10510859, -53150, 1092532, -6367289,
- -1450088, -1316944, 1181653, 5425618, 2793876, -8154533, 5555004, -5319317, 155156, 6795712,
- 4068408, 1390496, -9747428, 270046, 1627793, -3362423, 3732327, 3746822, -2372433, -3554622,
- -1502702, 1968169, 11440719, -8047158, -5397164, -396211, -2761127, -2935610, -316217, -1839857,
- -498753, 2900177, 639950, -3745748, 2073932, -2630131, -2579128, 3401614, 842887, -3585761,
- 4052302, -505732, 556198, 637266, 744640, 695248, 1638530, -1186485, -3475702, -1487132,
- -313533, 1446867, -3846680, 587337, 969589, 747861, 3546032, 616328, 421981, -969052,
- 1052804, -877247, -114354, 152471, 256624, -1711008,
- },
- {
- 192200, -8720394, 21160766, -8390755, -3484829, -3893388, 14208289, 557272, -15083388, -5320391,
- -3999152, 2858838, -3448322, -3105798, -15653008, -3299609, 10594611, -8747775, 4611721, -14246407,
- -6089727, 11297911, 10760504, -18407692, 11040750, 5599027, -2785286, 4563940, 16215649, -12250320,
- 5469104, -5096516, -1299765, 1327145, -6731825, -10560788, -1443109, -4437775, -180926, 3003793,
- -4578972, -5488968, 5706938, 1030792, 3594351, 3409667, 3033321, -3889630, 2707440, 26844,
- -1844152, 3040300, -2415919, -7856569, 2012729, 555661, -285615, -5549635, 5533529, 3823595,
- 157840, -2398739, 5334887, 3806415, 3947075, -73014, -172872, -1844689, 584116, 5364951,
- -2327872, -1533840, -987306, -1046898, -3868692, 208306, 3073586, 682900, -841277, -1216013,
- 2391760, -2356863, -1418413, -1269163, 955093, 39192, 3530463, 1239098, -322659, 187905,
- -369367, -1787243, 82141, -1702955, -32749, 914828,
- },
- {
- 3674882, -133233640, -8039105, 439160, -6259915, 229244, -22420266, -2069637, 1413581, -4095788,
- -6376416, 10768557, -9536975, -523449, -12122545, 2345589, 13429826, -8663486, 16879222, 6834367,
- 1354525, -3082176, 4878546, 5114769, -2585570, 4462471, 4799089, -6926709, -4638565, 5628555,
- -4463545, -5627481, 2906619, -3031173, 348966, -7737384, 5326833, 5951751, -592706, 3689914,
- 3681324, -4698158, -4297652, 2398739, -3336116, 502511, -2995740, -6505802, 3826816, -2273648,
- 4027606, -1451162, 2316598, 5080947, -1642288, -1233193, -1236951, -2799245, -4781909, -809064,
- -249645, -3611531, 1847910, -980863, -3986267, -452045, -1659468, -1846299, 3491809, 411243,
- -3706020, -1379758, 1603097, 1887638, -2751464, -484258, -2254321, 2670396, 2738042, -2201708,
- 1481764, 60666, -98247, 1990181, -1343251, -1677185, 210453, -885837, 1137630, 2505577,
- -217970, -763430, 387084, 461172, -806380, 1082332,
- },
- {
- 277025, -29930554, 2793339, 1950989, 2611877, 729071, -7844758, -803696, 2961917, -2813204,
- -6990060, 6089190, -5477694, 11725261, -3766686, 11141145, -8104604, 17885318, 2161979, -7133941,
- 2615635, -4377109, 16305843, -5195300, -13871671, 9650792, -7062000, -3227668, -6295349, 4500589,
- 6602976, -14532022, 8404714, -6230924, 10819559, -7797513, -3367254, -8079907, -1364726, 6496675,
- 2895345, -962610, -2322504, -156766, -2498060, 1515050, 3745748, -2645163, 926102, 1370632,
- -6861747, -3790309, -1471026, -318364, 5450851, 1108102, 132607, 2051384, -2072322, 3188476,
- 3624416, 2567854, -6553583, 1556926, -1218697, -1963874, -4509716, 3515968, -2085744, -227633,
- -1245004, -244276, -1056025, -403190, 2378875, -2357400, -1323924, 3133716, -538482, 3734474,
- -3419868, 2236604, 2758980, -2653216, 4327717, 2336999, 338229, -587337, 729071, -3216931,
- 88047, 1028645, 2483565, -1964948, -881542, -645319,
- },
- {
- 5792301, -94302984, -16056735, 8788040, 4922570, 3534758, 5674726, 9230422, -5931350, 10967736,
- 3221226, 3929895, -8549669, -4570382, -7835631, 5257040, -2086817, -8377871, 7244536, 332860,
- 2911451, 5760088, -8286603, -784368, 12763569, -5713917, 3399467, 1173063, -2520609, -7431367,
- -9339406, -1086627, 2095944, -3794604, 3798899, 3140158, 2371896, -4612258, 5186710, 2003602,
- -3113315, -3900367, 7606387, 7424925, -9467719, 3594888, -1156957, 4009352, 1194538, 2552821,
- 571231, -2784750, -1262720, -576063, -5920076, 2552284, -3919695, 3542274, 3993783, -3067681,
- 3336653, -2843805, -2937758, -1819456, 346819, -1310502, 1423245, -1940788, 878321, -600222,
- 752693, 716723, -2079838, -1346472, 2623688, 18790, -137439, -1735167, 1249299, 477278,
- 1832340, 2098629, -16643, -460635, 286689, -542777, 2966749, 140660, 115964, 928250,
- 623844, 35433, -912144, 1696512, 1707786, -4295,
- },
- {
- 609885, 28419262, 12946105, -13696651, 10355166, 2823404, -11425150, -1960653, -2604361, 684510,
- 4566624, 2401961, -6613176, 37044, 52470004, 6118718, 8699993, 3512747, 14582488, -11875048,
- -7833484, -2546916, -2581275, -1161789, 5452461, -6648610, 2692408, 1440962, 5359046, 10067403,
- -159451, -9663676, 8880382, -8766565, 7358890, 1144609, 1187022, -10369662, -6684580, 337155,
- -1721745, -7124814, -3053722, -2480344, -357556, 1519345, -2684892, -1372779, 2483028, 3721589,
- 3959423, 2145873, 208843, -971736, -6205691, -46708, 4157528, 1612223, 4348118, -2499134,
- 1540283, -1076426, 450972, -2404108, -3018288, 3042448, -515933, 4668630, -754304, -2360622,
- 673236, -3805341, -1154273, -648540, -471373, -3209414, -477815, 1361505, -619012, -1920924,
- 462246, -418222, -1540283, 1005022, -183073, -1843078, 71941, -524523, -2170032, 237297,
- 240518, -1077500, 2039573, 783832, -404801, -725850,
- },
- },
- {
- {
- 5102421, 100581688, -6474127, -33172180, 5548024, 5698885, -16643, -900869, 16603270, 1442035,
- 1475321, -11895449, -4654671, -674310, 124017, -1311039, -2187212, 12134893, -5849209, -3991635,
- 18676128, -4326643, -3064996, -3009698, -8426189, -5453535, -2108829, 314069, 11295227, 3540127,
- 5141076, 5095979, 10310069, -2027225, -2440078, 7029251, 8540006, -1802276, 413391, 5149666,
- -1078574, -1181653, -2622078, -1147830, 645856, 1871532, 748935, 2815888, 1401770, -3117610,
- 1350230, -136902, -2343442, -2310693, -4664335, -3251290, -519154, -4756140, -2362769, 8053,
- -2940442, 1471563, -4270808, 2682207, 1242856, -1392643, -536871, -3454764, 823560, -2309082,
- -1215476, -28454, 254477, 1804423, -911607, -1393717, -656593, -1038845, 1174137, 740882,
- -1778653, -547071, 106837, 707059, -1283122, 660888, -1259499, 779000, -1105417, 1287417,
- 1428077, -818728, 532039, 213138, 900869, 488016,
- },
- {
- 1148904, -16487843, 33478196, 21979496, -17253420, -4578972, 628676, 10343355, -2134599, -3041374,
- -1639067, -8003672, 6112812, -764504, 1083406, -8255464, 6033356, 4358855, 12207371, 7541426,
- 6963753, -8637179, -3566970, 400506, -2524367, -1301912, 1634235, 3272765, -7417946, 4176319,
- 1850594, 6358699, -11087995, 1322850, 544924, 690416, 1065689, 6471979, -4457103, 2660732,
- -3638374, 2959769, 3400004, 306016, 7068980, -700080, 2582349, -6433324, -6089727, 3040300,
- 3467112, 3336116, 1115618, -1539746, -4439386, -2379412, 3036005, -106300, -1040993, -5822365,
- 3937411, 3695283, -2622078, 163746, -2595771, 1155346, 2329483, 1947768, 2655901, -2297271,
- -1418950, -361851, -643708, 949188, -178241, -337155, 306553, 1589138, 2058363, 1078037,
- 1222455, 839129, 795643, -377420, 389768, -115427, 256624, -366683, 391379, 861141,
- 2222646, 1819992, 445066, -632971, -28991, -1792075,
- },
- {
- 155156, -80633176, -37771552, 12735115, 5561446, -3390340, 6076305, -1910187, -10265509, -2882460,
- 7128035, -15818365, 6347425, -3243774, 7439420, 10686416, 550293, -11688753, -15070503, 5114233,
- -6964290, 7363722, -4342212, 1502165, 5316096, -6543383, -10757282, -1348083, 1280974, 89657,
- -166430, 369367, -8217883, -256624, -1749125, 797790, -2379949, -7377143, -4731444, -879395,
- 3918084, 1963337, 4566087, -5567352, -7159174, 4758287, 1375463, -672699, 603980, -1935420,
- 2763275, 4238059, -4187593, 3967476, 545998, -2667175, 2900177, 763430, 2339147, -2215666,
- -2056216, -2253784, 3163244, -1154273, -815507, -2048699, -1456531, 230854, 1141924, -2241973,
- -2235531, 769873, 969052, -345208, -2894271, -2070711, 4002373, 2054068, -740345, -533650,
- 1298154, 756451, -789737, 1179505, -478352, -1999307, 1058173, 1633161, 1453846, 861141,
- 933619, -847719, 631360, -76773, 289910, -405874,
- },
- {
- -13597866, 1911261, 5051419, 8906688, -1347009, 1999844, 1669132, -6715182, -6038187, -9734007,
- 1156420, -3524021, 1724966, 3754875, -6107444, -2013266, 3646427, -3398930, 1527398, 5496485,
- -513785, -1671279, -8347269, 507343, 8316668, 2201171, -4683662, 2574833, 537, -2476049,
- 6379637, 1129040, 3907883, -4239133, 2309619, 3658239, 5527623, -1639604, -325881, 60666,
- 8801462, 3610457, 3820374, 2371896, -643171, -723702, 269509, 1286880, -3795141, 2775623,
- -973347, -91805, 2573222, 1233729, 473520, -913754, 892279, 1472100, -1066226, -5200132,
- 3433826, -1695438, 3131568, -92879, -1273995, 2972117, 2477659, 2305861, 1554241, -2708514,
- 22549, -773094, 2226404, 1702955, 4832, 965294, -1287417, 587337, -1374926, -792958,
- -381715, -96637, -28454, 1968706, -945967, 536334, -1078574, 665183, 146566, 415538,
- 879931, -1990717, 1074279, -1261647, 527207, 430034,
- },
- {
- 249108, -50768124, 15869367, 9508521, -5370857, -149787, 1129576, 2837900, 1129040, 528281,
- 5337034, 5206037, -217433, -9468255, -5123896, 6338298, -12598213, -395674, -15163919, 2538863,
- -4545149, -5969468, -17506286, 7640747, 6457484, -7179575, -1093606, 3242164, -1997160, 4332549,
- 455267, 267362, 1008780, -4255239, 1506997, -1188632, 7795903, 5661304, -4671314, -1714766,
- 10501195, -6038187, -3552475, 543850, -2218888, -1420024, 1142461, -1501091, -4235912, -549219,
- 1961190, 2250026, -2595771, 1629403, -441845, 4182225, -3341485, 271120, -2677375, -2768643,
- -1922535, 847182, 1242856, -1111860, -321049, -539018, -1850594, -1472637, -249645, 1410360,
- 1170916, 900869, 268435, -2974265, 2176475, 1239635, 3215857, -955630, -472446, -1813550,
- -70330, -779000, 238908, 1585917, -3516505, 498753, -584116, 681826, -1220308, -658741,
- -1204738, -180926, -719407, 280784, -53687, -488016,
- },
- {
- -13888314, -24870008, 16313896, -3171297, -4729833, -3624953, 974421, 6293201, 10038412, -12192875,
- 6275484, -12235825, 7698192, 4958540, -7422777, -5400385, -3257196, 729071, -6223408, 1671816,
- 4509716, -6756521, 6783364, -11433740, 15615964, 4059818, -675384, -1794223, -5322538, 2508798,
- 2276870, 3726421, -5791764, 5281736, 3288871, -3463891, -6571300, -5992553, -1467805, -3260417,
- -2241973, 1755031, -6425808, 505196, 3184718, -1583769, 5401995, -8298414, -1656247, -2485712,
- -5986111, 2556579, 3692061, 3690451, -3136937, 2416456, -249645, 685047, -2865280, -468151,
- 1262720, 1745367, -374199, -2899640, 3104725, -1676648, 1252520, -1260036, 1277216, -103616,
- -112206, 1143535, -1568737, -2185602, 572841, 860604, 985695, -429497, -493921, 1074,
- 137976, -17717, -1139777, -1283658, 591095, -421981, -286689, 223338, -1682017, -93952,
- 168577, 839666, -1080184, 585189, -586263, -705448,
- },
- {
- 503048, 14470819, -14491220, 1902134, -3888556, 396211, -376883, 2246805, -8101919, 801548,
- -1031329, 6090801, 2097018, 4677220, -2553358, 1826972, -2959769, -6753299, 8738111, -2020782,
- -16493748, -7885560, 1072668, 3482682, -5295158, -1587527, 9215389, -3429532, 1117765, 8084202,
- -1832340, 4373888, -1410360, 9597104, 941135, -7003481, 7238631, -3805341, -409633, -1809792,
- 59593, 2069637, -346282, 3741454, -529892, 608275, -3155727, 5027796, -1235877, 4903779,
- -2494839, -3413962, 907312, -4851703, -1586990, -4687957, 3072512, -798327, 905164, 4710506,
- -1938104, -1805497, -1413581, -2762738, -459562, 1053341, 3582003, 209917, -313533, 864362,
- 2073932, 34360, 1082869, -809601, 856309, 507880, -1567126, -1166621, 3675418, -2253784,
- 1214939, -1670205, 344134, -1346472, -968515, 1238561, 149250, 1134408, -2190970, 308701,
- -1681480, -148176, -339302, -873489, -1088237, 919123,
- },
- {
- -17801028, -19022410, 20524574, -24596204, -6451041, -3655554, 7316477, -1882806, -347355, -4284230,
- 21369072, 1342714, -1073742, 6717329, 355945, 4625143, -9514963, 3404299, -2136746, -3722126,
- -6752226, 1414118, 10147397, -2402497, -239981, -476205, 2385318, -3991635, -1358820, 345208,
- 2393908, 4866198, -6778532, -6564858, -2764348, -1955821, 5075041, 216896, -4693326, -3456912,
- -1204738, 3610994, 1341104, 1747515, 1899986, -1289027, 4949950, 3224447, 7191386, 1870995,
- -3103651, 1746441, -1594507, 4308389, -679142, 1602023, 200790, 4165045, -2822331, -127238,
- 1726040, -3264175, 2531346, -1404454, 485868, 3407520, 714575, 2216203, 695248, 1563905,
- 1282048, -3937948, 567473, 2814814, -1579474, -1049583, 31139, -81068, -2817499, -118112,
- 166430, 1743220, -1657857, -1044214, 244276, 364535, 1207960, -484258, -33286, -469762,
- 792421, -1569811, 193274, -92342, 710280, -355945,
- },
- {
- -1096290, 22863722, -48716740, 4384625, -3584687, 499827, 177167, 1532230, 1651415, 1170916,
- -6517613, 920734, 9878962, 4406637, -5288716, -11453067, -5768678, 2181307, 5257577, 1313186,
- -3141232, 1765768, 559420, -71941, 4474819, -10464688, 10659035, -3121368, -4470524, 5187784,
- -6066105, -424128, -5192079, -129386, 3468723, 4292820, 1616518, 5120675, -8376260, 4873714,
- 3524558, -3835943, 1183264, -7276212, 3273839, 19864, -2238215, -3571802, -2619930, -1080721,
- -1363652, 133144, 963683, -3163780, 1169305, -3365107, 2312840, 344671, -1580011, 359167,
- -1574642, 949725, -137439, -2671470, 929860, -1345399, -362388, -1034550, -925029, -1097364,
- -581431, -780073, 983548, 1224603, 663572, 116501, 1744294, 615254, -455803, -645319,
- -151934, -8590, -1011465, 484258, -661962, -478889, -454193, 896038, -102005, 1141388,
- -1005559, 1418413, -1461900, 824634, 1548873, 307090,
- },
- {
- -5032628, 81429360, -20787642, 3922916, -6858526, 4976257, 8598525, 7422241, 161598, -4347044,
- -15068356, -3493419, 3203509, -9446244, 5099737, 7793218, 1844689, -4328254, -6578816, -24332064,
- -3557307, -9578851, 193810, 3588982, -4310537, 11113765, -2524367, -135828, 3911105, -5563057,
- 2818036, -2515777, 3937411, 6885907, 1785096, -5778879, 2079301, -8104604, -5666136, -2416456,
- -1225139, 5008469, -7890929, 1080184, 2760053, -5337034, 1213865, 7301445, 2434173, 1880122,
- 56908, 810138, 10597832, -969052, 3030100, 802085, -4175782, -2244657, -616865, -7714298,
- 92879, 3246995, 575526, -3629784, 556198, 573378, -1924682, -774705, -1093069, -1598265,
- 3069291, -699543, 1687922, -2254321, -1624035, -1457068, 1530082, 2042257, 813359, -287226,
- -1769527, 1338419, -2413772, 850940, -795106, 397821, 2537789, 291521, 2062121, -456877,
- 1497870, 484794, -414464, -1417876, 466004, -1306744,
- },
- {
- 1156957, -43517684, 893353, 4450660, 466004, -1569274, 16324097, 4517769, -6480569, -2479270,
- -4575751, 8884677, 2028835, 972810, -3024194, 5317170, 5295695, -10602127, 9815074, -9654013,
- -8583492, 7092602, -3675955, -19690814, 4559645, 1528472, -2940979, -1874216, 5000416, -17920214,
- 9718437, 1792612, 1897839, 1314260, -4889821, -11631845, -3109020, -7304129, 312996, 1238024,
- -6604586, -2837363, 3246995, -5465883, 5683316, 5131949, -2604361, -6198175, 2296197, 2535105,
- -2068564, -49392, -943819, -1857573, 6516003, 2853469, 1580011, -6512244, 4607963, 4001299,
- 1346472, -4275103, -1235340, -424665, 4198331, -3058017, -1541356, -1836635, -959925, 5011690,
- -1381906, -1058173, 504122, 25770, -2874407, -406948, 992674, 1934346, 379031, -3118683,
- 1616518, -2135136, -78920, 1332514, 3623879, -588411, 1457068, 993211, -71404, 2048699,
- 732292, -1308354, 1742683, -1690070, -1139777, 1054415,
- },
- {
- 1550483, -109188272, 31849866, 18242874, -12984760, -1420024, -25272124, -5055714, 1263794, -4468377,
- -31805844, 1097364, 92879, 7098507, -15065672, -15729244, 590021, -12715251, 15930571, 119185,
- -2605972, 1316408, -5277441, -4705137, -3377455, -594853, -288837, -3151969, 886374, 8599598,
- -19327, -2109366, 800475, -7707856, 3270618, -2217277, -2377801, -4485557, -10581726, 4260071,
- 8576513, 1449552, 191663, 139586, 3085397, 3093987, -5712844, -4888747, 1433445, -4946729,
- 4113505, -3766686, -5789616, 3412889, -3871376, -1569811, 1372779, 2566243, -640487, -2365990,
- -1464047, -2996814, -1094680, -5310190, -964220, 1573032, 170725, 1050656, 4141422, 4417911,
- -286152, -1112933, 3329674, 2367064, -3332895, 1671816, -2071248, -404264, 2922188, -400506,
- 651224, 1284732, 1867774, 2255395, -1264868, -1110249, 528281, -1795296, -327491, 2388002,
- 419833, -470836, -57982, -1063004, -1424319, 1169305,
- },
- {
- 622770, -40018356, 4548371, 7705708, 4317516, 1925219, -7655779, -3393024, 639950, -1640678,
- -1190780, 9278203, 27917, 19854560, 6977711, 15425375, -8681203, 8526584, 565862, 12577275,
- 4416837, -24685862, -928250, -584652, -14148159, -1656784, -13337484, 2905546, 5440650, 6295885,
- 8122857, -8783745, 8159901, -2514703, 11002632, -11721503, 261993, 3699578, 4800700, 406411,
- -6247567, -7678865, -7706782, -109522, 752156, -2220498, 785979, -3374771, 1524713, -146029,
- -6211060, 607738, 2044941, 3048890, 2248416, 984084, 940598, 1394254, -9127, 1599875,
- 2587718, 4639639, -772020, 3955665, -2429878, -302258, -4963909, 2377265, 2215666, 627065,
- -1518808, 2749853, 971200, -791885, 3248606, 1577864, -629750, -1442572, -2122788, 2552821,
- -3331821, 2614025, 2025614, -5359583, 1939715, 2550137, 2684355, -861141, -314069, -830539,
- 2467459, 606127, 868120, -1469953, 548682, 459025,
- },
- {
- -2891050, -73767672, 8530342, -1334661, 7761543, -1818382, -14103062, 191126, -15084999, 1098438,
- 7183870, 188979, -12625056, 6621229, 15818365, 16352551, -2568927, -7223598, 10033580, -3577171,
- -2968896, 454193, 4080219, 10826539, 13789529, 114890, 7041599, -923418, -104690, -2198487,
- -9113384, -3722663, 6910603, 8361228, 2233920, -9775346, -8102993, -6281390, 3533684, 2263448,
- -889058, -10124849, -4752382, 576599, -9022116, 412317, -303869, 1895154, 7364259, 9175124,
- -168577, -2595234, -2187749, 721555, 159451, 4734665, -6269042, 2879239, 3566970, -3260954,
- 2790655, -4010963, -1768990, 1209033, -1436667, -3304441, 1018981, -2486249, 1280974, -918049,
- -103079, 2127620, 1749125, -1337882, 1665911, -2381559, -1168768, -1646046, -802085, -3230889,
- -1411434, 1334661, 1255204, -124554, -1165547, -510564, 2694555, -845035, -810675, -189515,
- -59593, 1001801, 256087, 357019, -165356, 376347,
- },
- {
- 1332514, -11084774, -9531606, -9211631, 1397475, -5880347, -9990094, 1558536, -2726231, 4925791,
- 4209068, -5294621, -4738960, -15302968, 29761440, -6257231, 4917201, 48318, 18655190, 3665755,
- -737661, -5844377, 1335198, -3659312, 561567, -4941360, -5519570, -2310693, 4160213, -1927367,
- -4993437, -4586488, 9265318, -10412074, 763430, 1469953, 241055, -9664213, 908922, 6208912,
- -664646, -4880694, -5247377, -874563, 5772973, -3537443, -5702106, 714575, 2798708, 1151588,
- 504659, -308164, -1001801, 134218, -3781182, 2666638, 4106526, 1460289, 3511673, -1933809,
- 869731, -2129767, 3768297, 237834, -1846299, 1251983, -803696, 5226975, -54224, -1369021,
- -111669, -2019172, 3377992, 1864553, 392453, -2191507, -759672, 603980, -107374, -1287953,
- 2231236, -188979, -1148904, 607738, -1746441, -2209761, -42413, -1118839, -2720325, -540092,
- 16643, 353261, 1474784, 344134, 733903, 267362,
- },
- },
- {
- {
- -7822746, 32813550, 46029700, -7864085, -2717641, 1533303, 1664837, 8675834, 5188858, 9671193,
- -9982041, -13928579, -2262374, 5174362, -6620155, 2854543, 830539, 1957431, -4044786, 1515587,
- 21647172, -4437775, -8504035, -7288560, -3242700, -1156420, -5743982, 1673964, 2353642, 7092602,
- 8527658, 4541928, 5396090, 954557, -3393561, 6400575, 8513162, 2591476, 1824287, 4890894,
- -1630477, -3748970, 294742, -3201898, -1475321, 1419487, 2946885, 4051765, -1947768, 1554241,
- -1391569, -1962263, -126702, -3036542, -2924873, -2014340, -1968169, -2464774, -1682017, -649614,
- -2153389, -102005, -343597, -154619, -954020, -1909650, 446140, -2421288, -506269, -1807108,
- -374736, -536871, 1999844, 861141, -1037235, -375810, -2169495, -37044, 952409, -181999,
- -912144, -2015413, 412317, 84826, 238908, -1151051, 1011465, -1192927, 619012, 439160,
- 711891, -557809, -438624, 1221918, 297963, -562641,
- },
- {
- -324807, 29778618, -83215, 17859548, -985158, -4305705, -1830193, 8796093, 1282048, 1859184,
- -7615514, -12974022, 7749732, -2441689, -134755, -363998, 1525250, 12015171, 3147674, 3302293,
- 8050380, -872952, -1873143, -7603166, -3334505, -2498597, 4898410, 1192927, -947040, 1034550,
- 7121056, 2921115, -9069897, 3385508, -6929930, 5011153, -5910412, 11187853, -2859375, 2979097,
- -3687766, 2253784, 2741263, 4175782, 4533875, 1567663, 1438277, -6222871, -3212636, 2386928,
- 1272384, 1612223, -28454, 425202, -1995012, -2089502, -88047, 439160, -1302986, -3061775,
- 1779190, 3344706, -193810, -2697240, -59593, 364535, 2049773, 893890, 2091112, -2311766,
- 66035, -4295, -911070, -3221, 404801, -161061, 1564442, 1876364, 732292, 2797634,
- 758599, 1063004, 59593, -838056, -868120, 75162, 1031866, -408022, 864899, 229244,
- 3455838, 579821, 423591, 380641, -991064, -807991,
- },
- {
- -360240, -96124592, -16568373, 30740692, -7712151, 1877975, 3961034, -2155537, -7600482, 2619930,
- 116501, -11914776, 1753957, 2980171, 6040872, 5077725, -4041027, -6332393, -8392366, -2124398,
- -1776506, 53687, -948651, 4194036, -4914517, -5665599, -3463354, 380105, -2903398, 1391033,
- 2042257, -3244848, -946503, -9084930, 2418067, -1644973, -4843650, -7767985, -5255430, -2450279,
- 6058588, 1356136, 3051038, -4389994, -1570884, 2265595, -187905, -2250026, 1863479, 1877975,
- -506806, -2854006, 3799436, -153008, -1091995, -22549, 4173098, 532576, -381178, 147640,
- -3070902, -324807, -286152, 2391760, -3396782, 304406, -431644, 416075, -420370, -3221,
- -3167002, -307627, 1036698, 746787, -2895345, -421444, 893890, 810138, 1668058, -483721,
- 604517, -8053, 821949, 1344325, -129386, -1037235, 447213, 1221918, 855235, 1227824,
- 514859, -683974, 704375, 173946, 149787, -542240,
- },
- {
- 9865540, -23895050, -9671729, 14856292, 4041027, 1804960, 2886218, -7041599, -6985228, -5145908,
- -1372779, -3755949, 6000070, 1362578, -8003672, -3244848, -1189169, 12727062, -13566728, 6054830,
- -409096, -3745748, -2523830, 5229123, 2282775, 5999533, -14513231, 10620380, -2859375, -299574,
- 7414724, 5397700, -2436857, -455803, 4025995, 2778844, 3700651, 2969970, -3061775, 176094,
- 6562173, 6170258, -470299, 2941516, -112206, 1437203, -4385699, 5556077, -2335389, -977105,
- -69256, 2127620, 959925, 3208341, -608812, -891743, 640487, 1503239, -1202054, -1386738,
- -1986959, 1534377, 540629, 2783139, -3623879, 3540127, 1472637, 2429878, 229781, -362925,
- -1899449, 1616518, -524523, 3947075, -610422, 554051, -194347, 143881, -612570, -1082332,
- 954557, -326418, 312459, 232465, -1132798, 1044214, 870268, 154082, -447750, 270583,
- -355945, -1120987, 750009, 187368, -721555, -464393,
- },
- {
- 21475, -26081188, -7648800, 10261751, -3219615, -606664, 858993, -960999, 6048925, 1205275,
- 7512972, -1009317, -1362578, -2315524, -319975, -1053878, -1708860, -9013526, -3342022, -10061498,
- -5005248, -2414845, -9890773, 75162, 3357054, 5005248, -8775692, -806917, -52076, -752693,
- 3625489, 425739, 492848, 484258, -3051574, -1532767, 6179384, 5686000, -2525441, -488553,
- 3852586, -183610, -4565014, 210453, -3405372, 2557116, 1732482, -2399813, -4567161, -302795,
- -11811, 4322348, 321049, 2204392, -624381, 315680, -222265, -433255, -420370, -1982664,
- -3007014, 1202591, -1074, -3413962, 1894081, -3172370, -623307, 2110440, -2908230, 666257,
- 2225867, 1184337, -984084, 70867, 503048, 808528, 1073742, -828929, 290984, -1364189,
- -763967, 2163590, -1036161, -668941, 124554, -1188095, 743566, -1020055, -552977, -1233729,
- -771484, -434329, 727997, 156766, -1351304, -351650,
- },
- {
- 7074885, -41459320, 1162862, -8944806, 7617662, -2441689, -1950989, 9853192, 2162516, -3127810,
- -741956, -5920613, 5914170, 6416145, -9841381, 3687766, 278099, -6387690, -6796249, 4144107,
- -397284, 222265, -3279745, 800475, 2214056, 1471026, 5509370, -1675037, -1411434, -3027415,
- 1261110, 1623498, -363462, 1673964, 3207804, -6881075, -830002, -5129802, -5363341, 1117765,
- -4516158, 2949032, -6074695, 225486, 3263638, -523449, 2081449, -3848828, -3458523, -1224066,
- -1470489, -1571421, 1986959, 3172370, -231391, 818191, -413927, 1647657, -627065, -4455492,
- 2183454, 1861332, -1580011, 1114007, 1387811, 1126892, -2301566, 224949, 1411434, -403727,
- -503048, -964757, -741956, 220117, -1500554, 1688996, -622770, 1021665, -1427540, -17180,
- 1304060, -1029182, -2050310, -735513, -542777, -590021, 762357, -536334, 94489, -1085553,
- -892279, 979789, -1114544, 646393, 168577, 148713,
- },
- {
- 728534, 10603737, -4658966, -3241090, -3905736, 269509, -361851, -271120, -4843113, 619012,
- 3323768, -45634, 4629975, 9514963, -8142185, 2073396, -55835, -851477, -99858, 4440996,
- -17660368, -5249524, -9477382, 9596568, -6637335, 5644661, 5990943, -2354716, 3281892, -3588445,
- -2131378, 4008815, 1784022, 1488743, 6805913, 410706, 67646, -1510755, -529892, -2552821,
- -3015067, 5365488, 1830193, 2350958, -3893388, 461709, -1972464, 904091, 5405217, 431107,
- -853088, -1448478, -1406602, -3616363, -4060355, -3764002, 1566053, 1798518, 2470680, 909459,
- -878858, -183610, -2862596, -380105, -978179, 2401424, 1774358, 1218697, 347355, 538482,
- 424128, 258235, 571231, 946503, -383326, 59056, -1563905, -2355790, 3423626, -736587,
- 394063, -623307, -904628, -128312, -270046, 299037, 408022, -50466, -368830, -120796,
- -905701, -1179505, -172336, 629750, -2175401, -84826,
- },
- {
- 14043469, -49450104, 966368, -24424406, -242129, -1602560, 11302206, -4893579, -1518808, 1386201,
- 3729642, 10741176, -1367410, 7151658, -2329483, 743029, -1906429, -527744, -1605781, -10543071,
- 8057359, -1613834, 2636036, 1714766, 2811593, 230854, -3299609, -2278480, -1959042, -1224066,
- 6774774, 1384590, -4859756, -6283001, 913754, -1622961, 2457795, 1613297, -1853815, -1738388,
- -204011, -69793, 5444408, 2095407, 819265, 1859184, 247497, 8107288, 2844879, 1591285,
- -45634, 82141, 529355, 1554241, 2005750, -1405528, 3966939, -492311, -1516660, 1176821,
- -1750199, 1449015, -220654, 1070521, -1404991, 2630668, 2864743, -603980, 3686693, 905701,
- -1681480, -528818, -1280437, 1817845, 1956358, -1965484, -2692408, 844498, -144955, -1547262,
- -46708, 515933, -963146, -2015950, 680215, 799938, 425739, -162135, -1021129, 928787,
- -390842, -1434519, 596464, -52613, 243203, 373125,
- },
- {
- 2600066, -24688546, -2888903, -11773579, 892279, -1401233, 2968359, -2785286, 3848291, 618475,
- 2003065, -6084358, 9132174, 10608569, -10836739, -2632278, -1631551, -4118874, 1160715, -349503,
- -1717450, -574989, 1985886, 4254165, 3338800, -4616016, 1698660, -2257542, 2397129, 821413,
- -4960151, -5151277, -1444720, 599685, 3176128, 5456219, 162135, 4206921, -4576288, 5404143,
- 1866163, -8180302, 1218697, -296353, -4019016, 2681133, -5350993, -3425237, 1010928, 2137283,
- -5462125, 1467268, 1374926, -1433982, -776852, 1137630, -2524904, 231928, -3963181, 1756105,
- 1153736, -177704, -294205, -1595580, -1057636, 726386, -1583769, 280784, 550293, -1416266,
- -2078227, 450972, 428960, 259309, 1090922, 39192, 1398012, 652298, 23622, 5369,
- -427349, -322659, 332860, -876173, -534723, -577136, -284542, 505196, 384936, 427886,
- 321586, -913754, -207232, 581968, 1480690, -143345,
- },
- {
- 3362960, 64331632, -13942538, -632971, 4907537, 13532368, -3297461, 7592966, -906775, -202937,
- -11457362, -2955474, 5107790, -6808597, -6408091, 6215355, 9080098, -10977936, -11789685, -5494874,
- -20429548, 2731062, -5917391, 5015985, -2364380, 941672, 4654134, 638340, 5612986, -9623948,
- 4242354, -409633, -766652, 6497212, 3531000, 158377, -4602595, -4692789, -4251481, 702227,
- -7755637, 1964411, 136902, -103079, -1908039, 903017, 1046361, 3926674, 135828, 960462,
- 4929012, -2289755, 7658464, 1731409, 3062849, -1903744, 259846, -1533303, -3503083, -5101348,
- -630286, 340376, 4191888, -1162862, -3661997, 1103270, -1264331, -989990, -1096290, 1690070,
- 1637993, -678068, 37581, -2503429, -2414309, 199179, 1515050, 2059974, 103616, -303332,
- 159988, 1906966, -2694018, 529355, -736587, -890132, 2029372, 1736777, -49929, 1064615,
- 771484, 615791, -1382980, -1003412, 202400, -345208,
- },
- {
- -1763621, -41950556, -4382478, 7681549, -31675, 7792682, -1699733, -4684199, 7807177, -4396436,
- 3249143, 2929168, 4639639, 1258962, -1197759, 5848672, 3866008, -2881386, -1140851, 5888937,
- -6772627, -3908420, -16702054, -67109, -1969779, -191126, -434865, 2083596, -6456947, -4473746,
- 2637110, 4232154, 1804423, 299574, -4619774, -5294621, -6563784, -10343355, -992674, -86973,
- 1275068, -3529390, -1085016, -1699196, 2344515, -1909113, 2925947, -6441377, -2682744, 2991445,
- 3112241, -113817, -1791538, 3062312, 4380330, 3525631, 627602, -5601174, 3739306, 1973538,
- 2938831, -186831, -4187593, -2040646, 2937221, -4133906, -1465121, -1197759, 59593, 1699196,
- 274341, 1707786, -853088, -1278290, -1044751, -918586, 738198, 3618510, -1796907, -1139777,
- -1034013, -534723, 1159104, 914828, 2050847, 1025423, 440234, 978179, 1581622, 621697,
- 1218697, -432181, 827855, -478889, -1398012, 637803,
- },
- {
- -8335995, -61356828, -1616518, 22414360, -10470057, -20642150, 1272921, -7585986, -4046396, -5644661,
- -23641110, -5862094, 5100811, 3769908, -7879655, -14891725, -11184095, -4216584, 156229, 10488847,
- -3582540, 6965363, -14012331, -2145336, -5164698, -1157494, -2533494, 3190624, 894964, 2888903,
- 943819, -773631, 1973538, -9369471, -1854889, 8360691, -1477469, -7227893, -10922639, 5128728,
- 5971615, -365072, 6896644, -3911105, 4355634, -1306744, 81068, -1488206, -1052804, -5971615,
- -536871, 1629403, -5955509, -2991982, -140660, 1711008, 163209, 326418, 2339147, -2463164,
- -4514011, -811212, -3337727, -265214, 1874216, -1474784, 1232119, 1341104, 3310346, 863288,
- 2008971, 270583, 1742683, 1279900, -1453310, 992674, -363462, -109522, 1326071, -359704,
- 814970, 472446, 1768453, 1801739, -2162516, 1445257, -1949915, 100395, 373662, 1147293,
- 510564, -1001264, 455267, -1243393, -1080184, 1032940,
- },
- {
- -512712, -22282828, -4718559, 5805722, -1380832, -213675, 681289, -1995012, -1315871, -7170985,
- 6183143, 3039226, 8676908, 5789079, 11381126, 11756399, 1056025, -504659, 766652, 8482024,
- -59593, -2430415, -21456046, 3493956, -2934000, -16281147, 4925791, -9588514, 10283225, 3445638,
- 6254546, 5076115, -5096516, 1044751, 7000260, -7886097, -2547989, 9192841, -1195075, 3569655,
- -57982, -11403675, -7013145, -1783485, 169114, -4740034, -2596845, 219580, 3768834, -3890167,
- -1364189, 514322, 2779918, 3911105, -1461900, -2230162, 3911642, -2141041, 2690260, 447750,
- 5651640, -482110, 923955, 2218351, 1603097, -3576634, -1952063, 800475, 3103114, -2819109,
- -2684, 2061047, 1482838, 1345935, 2094870, 1260573, 227096, -1834488, -1676111, 276489,
- -132607, 1763084, -1923609, -1501628, 655519, 2134599, -292058, 886911, 1172526, 376347,
- 2324114, 221728, -310848, -64961, -1646583, 432718,
- },
- {
- -1578401, -52490944, -6982543, -5386963, 13710072, -16787954, -3154117, 1180579, -11063299, -8315594,
- 13000329, -11800960, -517544, -3320547, 29111826, 10363219, -8269960, 9918690, -558883, -2257005,
- -4532264, 4162897, 7711614, 9403831, 1920924, 3682398, 13752485, 839666, -1909113, 3587372,
- -3442953, -12090870, 4706748, 11215233, -546535, -8645232, -8489003, -3673271, 2444910, -1850594,
- 186294, -6127845, -7999914, -2995740, -1239098, -6014565, 2490007, -122407, 7796440, 6600828,
- 3220152, -409096, 724239, -4364224, 2357937, 4036196, -4463545, 1817845, 1921998, 2206003,
- -1934883, -2375654, -1748052, 1813550, -4237522, 129386, -2843805, -942745, -1928440, 1296543,
- 1554241, 959925, 2409477, -1036161, 1322313, -3159485, -1473711, -529892, 68719, -3303367,
- -1040993, -112743, 1086627, 372588, -940061, -18790, -467615, 675921, -271657, 204548,
- 75162, 590558, 1003949, -249645, -1410360, 1264331,
- },
- {
- -2947421, -20555714, -126165, -3592203, -9251360, -3547106, -2436857, -1923609, 649077, 1105417,
- 4378183, -10665478, 1513976, 10252087, -23853712, 940061, 1238561, -2771328, 17415556, 6975027,
- -4545686, -962610, -5928129, 766115, -3948686, -3343095, 790274, -9439264, 296890, 8421357,
- -8094940, -177704, 700617, -3867081, -2554969, -3571802, 3053185, -2750927, -1927904, 5318244,
- -3201898, -104690, -4607963, 2526515, 1476395, -3529926, -2939368, -3069291, 3826279, 950798,
- -1493575, -69793, 3176665, -4505421, 1452773, 1657857, 1044214, 3628174, 905701, -12348,
- -1619203, 150861, 2677912, -1542967, 2086817, -2447595, 1395328, 605054, 1923609, -529892,
- 1022202, -2558727, 840203, 4911832, 43487, -1211718, 1607392, -643708, -585726, -1152662,
- 3916473, 198642, -1594507, -2259690, -148713, -719407, -1852742, 842350, -1127966, -2001992,
- -1184874, 694174, 659278, 455267, 2042794, 704375,
- },
- },
- {
- {
- 11903502, -27575300, -40581536, 10498511, 16882980, 3590593, 7062537, 6158446, 3342022, 12780212,
- -4609574, -12839268, -3788698, -2285460, -7905424, 5793911, -2917894, -1555852, -459025, -1444720,
- 7572564, -4872104, -2090039, -1833951, -1851668, 309775, 806380, 2729989, -2217814, 1025960,
- 4319664, 3165391, -2743947, -3454764, -3702799, 3636227, 6476274, 3625489, 3260417, 3688840,
- -377420, -4152697, -1541356, -5845451, -2237678, 3401077, 3695283, 2206003, -2638184, 4895726,
- -781147, -4271882, 1790465, -1379221, 192737, 2472828, 737661, 511638, 1268626, -834297,
- -1574106, 3533148, 2953864, -545998, -1263794, -245887, 2289218, -1032940, -386547, -839129,
- 1624571, -245887, 524523, 295816, 229244, -198105, -1387811, 1163399, 745177, -1077500,
- -486405, -2474975, 1278827, 730144, -66572, -631360, 1304060, -2470680, -463320, -1396401,
- -973347, -1002338, -991601, 205622, -26307, -614717,
- },
- {
- -479426, 46526844, 4541391, -96637, 5354751, 737661, -4168803, 3745212, 2020245, 1358283,
- -10236518, -15261093, 4737349, 3836480, 7976291, 2208150, -8702677, -1652489, -5237176, 2383707,
- 4479651, 6721087, 9500468, 1702418, 19327, -10191957, -4899484, -3967476, 2303176, 4907000,
- 7205882, -337692, -9803263, 1420024, -6257231, 4559108, -7727183, 14828911, -1860258, 5545877,
- 122407, -2905009, -2699387, 2542084, 1000191, -1731946, 3349001, -883690, 85899, 2801929,
- -2645700, -2297808, -527744, 104690, -2133525, -2047626, 239444, -198642, -415001, 394063,
- 1785633, 1509681, -833761, -3307125, 2013803, 972273, 347355, -1046361, -989453, -1992865,
- 1123134, -155693, -662499, 31675, 432718, -134218, 1037235, 158377, -1583232, 1930051,
- -510027, -425202, 302795, 745714, -1141924, -915365, 690953, -876710, -200253, -731218,
- 1212255, -844498, -387621, 1084479, 384936, -616865,
- },
- {
- -1685775, -57585312, 25708600, 50136764, 3684008, 1404991, 1036698, -2262374, -66035, 1484985,
- -8183524, -10512469, 2541010, 2587181, 4607426, 3424700, 600759, -3999152, -8176007, -2271501,
- -4207994, -2294586, 529355, 7032472, -3371549, 428960, 8384850, 3773129, -3342558, 2640331,
- 641024, -5626407, 1962263, -8450885, -995896, -4751845, -9911174, -1989644, 1701881, -3198140,
- 82678, -577136, 3430068, -3305514, 4323959, 1512902, -1321239, 33286, 5309654, 3947612,
- -2965675, -5745056, 3192235, -3887482, -1342177, -1801739, 2935610, 962073, -1176284, -1663226,
- -3016678, 841814, -1517197, 2279017, -2211371, 844498, 89657, 1848447, -248571, 1585380,
- -1509144, 1171989, 878858, 235149, -1002338, 83752, -739271, -39728, 938987, -959925,
- 364535, 215822, 316217, 1694365, 2142115, 535260, -239981, 475131, -222265, 35970,
- 1093069, 337155, 954020, 397284, -96637, -1897302,
- },
- {
- -3286187, -39884140, -2860985, 10580652, -6397891, -1299228, 2820183, -3825742, -365072, 774168,
- -2068027, 1676111, 2807835, -7833484, -11958263, 5261335, 94489, 8000451, -21594558, -1247151,
- -3385508, 829466, 5645735, 6257768, -2083059, -1613834, -10603201, 10341208, -3520800, -632434,
- -309775, -780610, -4239670, 2339684, 2855617, -1222455, 671626, -866510, -6827925, -1076963,
- -1108102, 2106145, -4315906, -2350421, 3013993, 4839355, -3304977, 5731097, -2425583, -587874,
- 388695, -150324, -1684701, 2013266, -1804423, -2248416, 551903, 1251446, -30602, 2552821,
- -1006096, 3071975, -2255932, 1235877, -3535832, 1113470, -1195612, -787590, -281320, 1614371,
- -1581622, 978179, -1851668, 2674154, 604517, 1653562, 184147, 559956, -257698, -317291,
- 1828582, -114890, -69256, -500364, -1001801, 1372779, 2490544, 1018981, 384936, -125091,
- -605590, -677531, -346282, -19327, -626528, -1432372,
- },
- {
- -1328219, -2840047, 6382859, 3623342, -354335, 1009854, 709743, -6229313, 306553, 2047626,
- 4636417, -4278325, 1364726, 4758287, -2311766, -5758478, 4723927, -4306779, -2210298, -9514426,
- -966368, 2272575, 1731946, 3749507, 2822331, 15910706, -4560719, -4592394, -4901632, -5742908,
- 1051193, 4377646, -1292248, -252866, -2575907, -117038, 3710315, 2847027, -475131, 1212791,
- 79457, 4085051, 886374, 754304, -1267552, 4683125, 4578972, 1402844, -2547989, 469762,
- 677531, 4399657, -1938104, 1297080, 2396055, 2608656, 1364189, 1772211, 2036351, -397284,
- -653909, -71941, 619012, -1934346, 1438814, -3216931, -573915, 1018981, -1976759, -217970,
- 443455, 1981054, 570694, 993748, -945967, -1141924, 621160, 1021665, 2536715, 128849,
- -1431298, 1186485, -702227, -1007707, -233539, -466004, 1705639, -781147, 752156, 52613,
- 140660, -34897, 734439, -236760, -659814, 557272,
- },
- {
- 1639604, -54639500, 9613211, -12458626, -7666517, -144955, -1395864, 5731097, -7643968, -974958,
- 4937065, 6264210, 843961, 1690607, -11634530, 3180423, 6851010, -6364605, -8781061, -640487,
- -6073084, 3691525, -1291711, 1254131, -6309307, -8185134, 5082020, 934692, -2940442, -4382478,
- 1988570, 842350, 459025, 2938831, 2552821, -7102266, 4185983, 1225139, -3505767, 3087008,
- -638876, 5107253, -2528125, 942745, 2583423, 2991445, 5066451, 1851131, -140660, -39192,
- -783295, -3849901, -1732482, -1096290, -412317, 2465848, -369904, 1978906, 1194001, -1621887,
- 2201708, 504659, 862215, 1833414, -1525787, 1223529, -2313914, 1553168, 1957431, -760746,
- 144418, -1731946, -2393371, 565325, -1554778, 169651, -1605244, 971736, -1035087, -1337346,
- -1012539, -849867, -1666984, -257698, -506269, -881542, 4295, -830002, 803696, 168041,
- -300648, 1061931, -380105, 474594, 317828, 798327,
- },
- {
- -141734, 9942312, 4864588, -4436701, -302258, 848256, -2475512, -744103, -1335735, 588411,
- 411243, -2714419, 7219840, 500364, -22362820, -2351495, -8684424, -4173098, -5495948, 5651103,
- -7471096, 663572, -7019587, 8530879, -4705674, 9494025, 6427419, -5491653, -3511673, -10071698,
- -2978023, 7457674, 2303713, 1081795, 6258841, 2408940, -2200634, -1997697, 3770445, 1532767,
- -4532801, -1661616, -418222, -61740, -4146791, 3581466, -3558917, -2676838, 1835562, -1309428,
- 2257005, 8590, -2147484, -422517, -3285113, -3707094, 803159, -258772, 521302, -1238561,
- -2157684, -126702, -663572, 1853278, -1009854, 2006287, 41876, 1428614, 1816234, -559420,
- 265214, 2442763, 587337, 1728188, -1341104, -624381, -1216550, -2900177, 1356673, -698469,
- 1284732, -135291, -1822140, 805843, -107374, -1401770, 281320, -500901, 621697, 70330,
- 316217, 254477, 561567, 1246614, -1764158, 206695,
- },
- {
- -7342247, -70134128, 11629161, -27398134, -8466454, -2693481, 5298379, 846109, 3694746, 3833258,
- -12177306, -1851131, -7537668, -1324461, -13202729, -9805947, 2304787, 4025458, 4946729, 1095217,
- 14787572, 765578, -1346472, -2479807, 4931696, -329102, -1103270, 6759742, -508954, -6426882,
- 1333051, 568546, 4660040, 8442295, 9065602, -1390496, -2115808, 352187, 1562294, 2114735,
- 3518115, 728534, 6243272, 362925, -1180579, 1843078, -3858491, 2962454, -2358474, -864899,
- 283468, 1107565, 1214939, -1833414, 783832, -470836, 4925791, 372588, 67109, 3308199,
- 887985, 2204392, -2384781, 901406, -2116345, -903017, 2407866, 802085, 1315871, -331786,
- 247497, 2828236, -412854, -413927, 2322504, -125091, -1969779, -397284, 782758, -2684,
- 1021129, 206158, -370978, -1004486, 392453, -998043, -1149441, 323196, -1203128, 824097,
- -420370, -1185948, 314606, -311922, -510027, -35433,
- },
- {
- 543850, -25732760, 21643950, -5605469, 1653562, -3012383, 4016868, -382789, 1154809, -3284039,
- 2934000, -3222836, 11210402, 8445516, -7250442, 21668646, 21807696, -6104759, -7494181, 3326989,
- 2328409, -368830, 1421634, -398895, -5710696, -5581310, 3006477, 1385664, 4711043, 3401614,
- 817654, -10564009, -5193153, 6239514, 6466074, -2147, -977105, 6653441, -2237141, 3818226,
- -4857071, -11131481, 1081258, 1085553, -459025, 2389613, -4106526, 756988, 863825, 4063576,
- -2033130, 3266860, 955630, -1313186, -2024540, 1721208, -3934727, -1572495, -3102577, 2856153,
- 1574642, -73551, 1492501, 1671816, 339839, 1111860, -1524177, 1891933, 3228742, 977642,
- -2348273, 285078, 347892, -510564, -23622, -1129576, 781684, 425739, -843424, 1206886,
- 1091995, 582505, 1244467, -1740536, -789200, 797253, 1737314, 1756642, 569083, -960999,
- 226023, -183610, 449361, -366146, 182536, -239981,
- },
- {
- -3347927, 65460672, 889058, -3595425, 12862353, 28169080, 3013993, 318364, -1927904, 4851703,
- 4083440, -4600447, -10643466, -11858942, -4326106, 1450625, -599685, -8107288, 3009162, 10293963,
- -12280922, -417686, -6337224, 1108102, -5701569, -5744519, -275952, -658204, 6660421, -9689446,
- -1726040, 836982, -1293322, 4825933, 2370285, 4711579, 1873680, 1320703, 4715337, 4782446,
- -6223408, 5751498, -617938, -2575370, 620623, 4932770, 302795, -5122286, -7305203, -2500208,
- 6221797, -6131066, -922881, -1151051, -905164, -4111358, 1929514, -2109903, -3676492, -3212099,
- -970126, -2040110, 5277978, 4755066, -752156, 2597918, 265214, 2684, 919660, 1635846,
- 630823, -70867, -1447404, -3136937, -1710471, 1665911, 770947, -680215, 11811, 966905,
- 962073, 2272038, -1811939, 728534, -1236951, -645319, 2617246, 905164, -1919850, -148713,
- -113280, -1147293, -1934346, -322659, -1171989, -264141,
- },
- {
- 75162, -33103998, -3556233, 5266704, 307090, 2804077, -6458020, -10438918, 3191698, -686121,
- 3327526, -3729642, 770410, -8291435, -3232500, 5766531, 5794448, 7115687, 3520263, 10765336,
- 685047, -9668508, -13188771, 6132140, 1510218, 3842922, -5058935, -767189, -6544994, 1343251,
- 1113470, -1508070, 4881767, 1064615, -8239358, -2625299, -5114233, -10566693, -412317, 737661,
- 6321118, 1330903, 340376, 177167, 723165, -8565239, 230854, -5005248, -4362613, 3969087,
- 6360847, 771484, -843961, 3245922, 2398739, 2993055, 2185602, -1458141, 2837900, -552977,
- 3826816, 899796, -2098629, -3528853, 731218, -2433636, -263604, 1356673, 113817, -40265,
- 396748, 260919, -1260573, 462246, -721555, 96100, 1376537, 1677722, -1063004, 972273,
- -2366527, 1069984, 1694365, -1882269, -12348, 1736777, 294205, 730681, 1728724, 433255,
- 909996, -1187559, 126702, 389231, -834297, -346819,
- },
- {
- 13602161, -23221814, -15723338, 6030671, -1836099, -12025372, 16864190, 2043331, 2075543, 6869800,
- -4334696, -3861176, 929860, 9333501, 11285563, -591095, -9701794, -7926899, -1993939, 11537356,
- -6281927, 5538361, -14507863, -4318590, -5523328, 4177930, 5907728, 6338835, -2157147, 113280,
- 2530810, -6150393, -1810329, -4137127, 248571, 7643431, 529892, -1733019, -7289633, 3682935,
- -1312113, -6823630, 9075266, -1290638, 1579474, -121333, 6283001, 48318, 4333085, -5253282,
- -1693291, 4577899, -631897, -2854006, -1653562, 344671, -10201, -1627256, 4418448, 1780264,
- -1139777, 1572495, -820339, 3274913, 3677566, -637266, -1682017, -1968706, -311922, -1358283,
- 3097745, -184684, -219580, 161061, -617402, 549219, -1595580, 999654, 2136209, -636192,
- -344671, -1315871, -336081, 308701, -1330903, 1893007, -1443646, 1046898, 56371, -236760,
- 329102, -867047, 552977, -583579, -855772, 752693,
- },
- {
- -977642, -7379291, 724239, 7360500, -5172751, -4066797, 3636227, 952409, 623307, -6697465,
- 8419210, -525597, -14398341, -23568096, -245350, 1180042, -111132, -5003637, -4760971, 3986804,
- 66572, 4477504, -11779485, 6697465, -2033667, -19145354, 10819023, -9828496, 7376070, 1879048,
- -4056597, 2821257, -1626182, -983548, 2680060, -5822365, -2573222, 5892159, -6851010, 1678259,
- 3485366, -709743, -487479, -3534221, -3633006, -5875516, -1263794, -2173790, 4087735, 3893388,
- 5130876, 470299, -619549, 257698, -868657, -4263292, -2833605, -5320391, 3942243, 1147293,
- 4393215, -3396246, -2078227, -413391, 1249299, -4792647, -567473, -1703491, -3058554, -5134634,
- 1699733, 1156957, -743566, 912681, 1238024, 1478543, 798864, -1428077, -1972464, -527207,
- 129923, 551366, -739808, -154619, -2021319, 1212255, 27380, 830002, 1774358, 1128503,
- 1538672, -494458, -256087, 222801, -1658931, 934692,
- },
- {
- 6847789, -39060580, -2265595, -1185411, 7127498, -8777839, 8950712, 6043019, 1006633, -2696703,
- 14857902, -8029442, -6982006, -17626546, 14269492, 1456531, -22113176, 2433636, 3964792, 3809636,
- -1954210, 8088497, 5186173, 5675263, -5356898, -1329829, 14651744, 3346853, 3325379, 8649527,
- 5556077, -6826851, 1909113, 4133369, 2493766, 1652489, 2353642, -2602750, 1233193, -5211406,
- -3176665, 1459215, 1047972, 338766, 162135, -3544422, 3949759, -1158031, 855235, 1206349,
- 368830, -789200, 2435247, -1260036, 2798171, 1207423, -5417565, 708670, -1301912, 2319819,
- -2558727, -1636919, -1898912, -1794223, -3534758, 2833068, -2980707, -1317481, -1628866, 1779190,
- 527744, -106837, 3270081, -187368, 726386, -368293, 1738388, -523449, 697395, -1189706,
- -23085, -256624, -1148367, -1445257, -1236414, 346282, -1423782, 38118, -23622, 1610076,
- 1302449, 1222455, 1230508, -210990, -236223, 1265405,
- },
- {
- 2430952, -16182363, -2393908, 2455648, -5535139, 5146445, 7780334, -5629629, 2040646, -5802501,
- 5234492, 357019, 3952444, -10752451, -66944580, -6637335, -915902, -5729487, 5157182, -2056216,
- -5251135, 5641440, -6691559, 2369211, -4531191, -7701950, 4490389, -3243774, 6776922, 16134582,
- 1214402, 908386, -3276523, -2619393, -6385543, -10168335, 4181688, 1023276, -4071629, -1290638,
- -4083977, 4174171, -3049427, 1901060, -2586107, -2743947, 1164473, -1538135, 1240172, -1531693,
- -1332514, -102005, 5887327, -504122, 3243237, 1037772, -1742683, 458488, 554588, -383863,
- 208306, 2949032, 2250026, -3884798, 738198, -4912369, -1814624, -1382443, 2399813, -365609,
- 1990717, -927713, -1488743, 4279398, 2388539, 2246268, 3321084, -697932, 246424, 697932,
- 5060009, 1740536, -2106682, -3077344, -272730, -392453, -1578401, 1141388, 423591, 11811,
- 442919, -12348, -621697, 171799, 494995, -379031,
- },
- },
- {
- {
- -14176613, -31330176, 6281390, 33364916, -18781356, 11200201, 9088151, 1411434, 6992744, 2699924,
- 3623342, -17961554, 4734128, -956704, -5596880, 2595234, -9220758, 6133750, -954557, 3688840,
- -2902324, 3703336, -1082869, 976568, -5753109, -2162516, 6038187, 2735894, 65498, -4062502,
- 5899138, 763967, 812823, -7955353, 3816079, -3532611, 5951751, 5081483, 5337571, -830539,
- -1311576, -3828427, -252329, -2887292, -553514, 3508452, -213675, 2337536, 369367, 3309272,
- -268972, -5679021, 7583302, -4278325, -814433, 362388, 4982699, 522912, 289373, -552440,
- -3617973, 4133906, 1908039, 758599, -2304250, -1159641, 3824669, -963146, 221191, -798864,
- 2321430, 1168231, -1832877, 221191, 1233193, -2249489, 768262, 484258, 1461900, -2251637,
- 772557, -1575179, 220117, 901943, -1231045, 1461363, 82678, -2109366, -1364726, -715112,
- -1909113, 99321, -475668, 95026, -364535, -904091,
- },
- {
- -76236, 40592808, 7234336, -33953864, 25744570, 390842, -1620276, -352187, 3239479, -1647657,
- -3332895, -15741055, -256624, 9169755, 4973572, 4152697, -11733851, -10312753, -5422933, 8334921,
- 6838125, 2403571, 13309030, 6605123, 1153736, -8136816, -7315403, -5324149, 1547262, 4813585,
- -2944737, 3167539, -5784784, -106300, -1724966, -3002182, 4643934, 5813238, 2077690, -1294933,
- 4514548, -514322, -3766686, -1729261, -98784, 1943473, 475131, 1899986, -132070, 2652142,
- -3396246, -2965138, 3685619, -3933653, -4045859, -17717, -71404, 1044751, -2129230, 1942399,
- 2238752, -119722, 1784559, -5488432, 1506997, 1169305, 5369, -197569, -2818572, -95563,
- -121870, -882079, -59593, 1894081, -850940, 634045, -1146756, -83752, -596464, 355409,
- -1620813, 839129, 348966, 426812, -301721, -682900, -219043, 312996, -1170379, -734439,
- 107911, -264141, 184684, 146566, 1028645, -825707,
- },
- {
- 4715337, -28390270, 385473, 45222784, 3368865, 3191161, -454730, -4473209, 3012920, -729608,
- -8556649, -14885283, 10762114, -7124277, 11569031, 659814, -5772973, 777389, -6529424, 9924059,
- -6067715, -5248450, -4441533, 8618926, -4040491, 536334, 8320963, 5312338, -2507724, 813896,
- -4843650, 6082748, -731218, -3018825, -3617973, -3279208, -7014756, -4494684, 4371740, -1982664,
- -850940, -5376762, 3148748, -45634, 3642669, 2684355, 544387, -2753611, 5036386, 2301029,
- -2637647, -1104880, 863288, -4463545, 1023276, -1924145, -262530, 2171643, -2055679, -3619584,
- 297963, -132607, -2520609, 1778117, -377420, -320512, 1924145, 824634, -666257, 906238,
- 380641, 1542430, 456877, 606127, -2047089, 322659, 1551557, 329639, -1379758, -410169,
- 7516, -1032403, -361314, 1730335, 2468533, 1099512, -427349, -174483, -538482, 499290,
- 784368, 83215, 1837709, -527744, -63888, -813359,
- },
- {
- -4638028, -45992656, -3160559, 15367393, -3071439, 895501, -2962991, -1117228, 790274, 7672422,
- -15479062, 3373160, 4660040, -6694244, -12832289, 8698919, -3406983, 5727876, -12986907, -3067681,
- -3376918, -153008, 2347200, 176094, 6756521, -17661442, 5232881, -4486094, 5921686, -1243393,
- -8790187, 1465658, -4213900, 4508642, 4032974, -6422050, 3092913, -4620848, -1519882, 3985730,
- -3974455, -2070711, -3732327, -1678259, 139050, 1078574, 4329864, -504659, -1785633, 3067144,
- 144955, -2181844, 609349, -1659468, -1212255, -3938485, 3211025, 2515777, -3344706, 5763309,
- 783832, 2250026, -4305705, 1967095, -386547, -2722473, -826781, -4100083, 4111894, -267899,
- -1960653, 1273995, -636192, -207769, 1959579, 2621004, -407485, -1710471, 1708860, -159451,
- 1179505, 399969, -338766, -1430224, 305480, 312459, 3777424, 410706, 1530082, -478352,
- -830539, -715649, -133144, -168041, -905701, -2159295,
- },
- {
- 2220498, 10094247, -3958349, -7131257, 7822746, -511101, 3473018, -3472481, -3594888, 2842732,
- 2292439, -4376572, -3320010, -4497368, 8360691, 155693, -8967355, 9084393, -6963216, -9499931,
- 2719788, 4773320, -6334003, 9329743, 36507, 14473503, 445603, -5306969, -2458869, -4057670,
- -2732136, 9714142, -5068062, 1653562, -862215, 1163936, 539555, 945430, 5348308, -862752,
- -3889630, 6497212, 6398965, -4642323, -1104344, 501974, 4928475, 4094715, -1565516, -855772,
- -704912, 859530, 4389457, -130460, 1729261, 1132261, 2392834, 3129958, -469762, 1060857,
- -236223, -2030983, 4622996, -140660, -917512, -4480188, -658204, -158914, -387621, 2176475,
- -3172370, 1466731, 1289564, -212601, 315680, 261456, -793495, 1695438, 2119030, -1006096,
- 743566, -346819, 237834, -1216550, -255014, 1193464, -287226, -913217, 1463510, -153545,
- 468688, 547608, -695248, 503048, -30065, -111669,
- },
- {
- -11018739, -43763032, 5666136, -19487340, 7070053, -4642323, 6161131, 311922, -11370389, 6557878,
- -11196980, 18765248, -4500589, 3124589, -7126962, -2633352, 1580011, 1582696, -4502737, -5908802,
- -4369593, 466004, -4784594, -3338263, 5685463, -9621264, 6549825, -3006477, -1896765, -4728222,
- 4001299, -5210332, 7650948, 2109366, -4833986, 2951716, -463320, 3495567, 429497, -1080184,
- 3602404, -461709, -107374, 1580548, 108985, 3360812, 3009698, 7796440, -653909, 909459,
- -3804267, -1606318, -1226750, -3007551, -530428, 3649112, 1273995, 344134, 0, 2506114,
- -2313914, -639950, 3327526, 700080, -2644089, 285615, -221728, 1591285, 1366337, 568546,
- -133144, -1962263, -2332704, -1280437, 454730, -2499671, -478352, 1352378, -798864, -715112,
- -2217277, 27380, -718870, 884226, -1580011, 399969, -1296006, 490163, 386547, 741956,
- -415001, 19327, 1156420, -543313, 154082, 851477,
- },
- {
- -553514, 4940823, 6537477, -4185983, 1893544, -559420, -2290291, -277025, 105764, -894427,
- -1739999, 1530082, -5751498, 4132832, -20637318, 317291, -19445464, -1735704, -2643016, -3051038,
- 166967, 4940823, 1762547, -6755984, 476205, 773631, 3914863, -5341866, 4333622, -12623446,
- 4443144, 5429913, -8221105, 12293807, 3754875, 4115653, -3329674, -1709934, 3637837, 2490544,
- -1749125, -6736656, 1143535, -3524558, 1843615, 3092377, -2083596, -1562294, -5426155, 1175210,
- 263604, 1271847, 158377, -10737, -1423782, -5039071, 2080912, -2449742, -660888, -440234,
- -3340411, 449361, 60130, 818191, -1515587, 2077154, 1990181, -791885, 1045825, -539018,
- 825707, 2726231, -209917, 1582159, -392990, -1344862, 9664, -1335198, -471910, -1310502,
- -42950, 1156420, -2614561, 1397475, 173409, -1220845, -472446, -1489817, 1472637, 500901,
- 158377, 608812, 398358, 566399, -403190, -113817,
- },
- {
- -1983738, -77126336, 8180302, -40745280, 10353019, 5181341, -16032576, 19491098, -2023467, 5674726,
- -8295193, -13903346, -774705, -6145025, -3801046, -6444062, -8793409, 248571, 9475235, 7672422,
- 4003447, 4573604, 2374043, -6548215, 1661079, -2999498, -2352568, 12348031, -3219615, 324270,
- -3396782, 3938485, 5080410, 5564667, 6425808, 70330, -499290, -1339493, 3221762, 208306,
- 4663798, 1768990, 1750736, 460098, -862752, -463856, -1203665, -964757, -241055, -4684736,
- 2439542, 162672, -209917, 2215666, -4270271, 1990181, 4475356, 469762, 1755568, 1439888,
- 1721745, 957241, 239444, -2774012, 781684, -3016678, 99858, 5385889, -1388885, 591095,
- 2199560, 1697049, 366146, -1899449, 1067836, -933619, 153008, -876710, 2252710, -107911,
- -300111, 1564442, 852014, -1036161, -909459, -1179505, -1321239, 963683, -955630, 749472,
- -429497, -886374, 113817, -285078, -1792612, 310311,
- },
- {
- -2484102, 7605850, 193810, 3508988, -2397666, -1105417, 2437931, 457951, 2410014, -6532109,
- -1673427, 3328063, 4879083, 7029788, -6161131, 20529406, 31012886, -11119133, -4918812, -973884,
- 7381975, 3523484, -2202245, -594853, -5191542, 1566053, -3925600, 6677601, -932008, 4637491,
- -3658775, -7344931, -2136746, 4208531, 8371428, -2487860, -518617, 6427419, -3730716, 2904472,
- -3162707, -11049340, -733903, 6818261, -2852932, -4619774, -824634, 3339874, 161061, 106837,
- 1249836, 3309272, 470299, 2625299, -6326487, 84289, 164819, -1534914, 21475, -1328219,
- 2955474, 979789, 843961, -1015760, 2823404, 1891933, -3050501, 3574487, 2758443, 849330,
- -2056753, 31675, -2250563, 2195802, -1109712, -282931, 485868, 502511, -486942, 2204392,
- 81068, 824634, 1504849, -1568737, 213675, 651761, 2129230, 1036698, 1722819, -805306,
- -649077, -463856, 986232, 74088, -733903, 401579,
- },
- {
- 5454072, 61184492, -3600793, -8434242, 19455664, 2442763, 18079128, -6028524, 11199127, 1373853,
- 10875394, -9604084, -13768591, -9595494, 3622805, -6586869, -1613297, -8396661, 3797288, -1948841,
- 8604967, -9587441, -1207960, 2954938, -6669011, 646929, -6337224, -1070521, -3033321, 1489817,
- -4278325, -3292093, 6497749, -3839701, 3536369, 1432909, 5248987, 447213, 2693481, 9423695,
- 1535451, 4146254, -2680060, -3671123, 3622268, 3902515, -7140383, -4100083, -3103651, -5468567,
- 967441, -2923799, 613107, -1869921, -2790655, -2493229, -989990, -1313723, -525597, -3863323,
- -2256469, -763430, 4649839, 5264556, -1046361, 2227478, 408559, 507880, 2319819, 510027,
- -787590, -1145683, 365072, -3954591, -860604, 794569, 2717104, -2381559, -1196148, 1622424,
- 712965, 2974265, -1550483, -751619, 1759326, -708670, 726923, 1349157, -1057636, -1427003,
- 526134, -2899103, 709743, -876710, -1430761, -382252,
- },
- {
- 2101850, -31751082, -212064, -2961380, 6027450, -563714, -5209259, -1407139, -289373, 1754494,
- 938987, -8141111, 1513439, -13408888, 5577552, -5500243, 13643500, 6707129, 6984691, 2505040,
- -7082938, -1020592, -4072166, -5630702, 5326297, 6355478, -8652748, 625992, -4684199, -6420976,
- 5497558, -5814312, 12879533, -5452461, -8504035, -3806952, -7308424, -4085051, 126702, 1734630,
- 8603893, 1140314, -3758, -476741, -1718524, -1315871, -7255811, -1683090, 309238, 3656628,
- 2079838, -1654099, 1102733, 900869, 1876901, 1549946, 2791192, 2509335, 1316944, 1571958,
- 3300146, 209380, -3109020, 849330, -1352378, -1593970, 1453310, 1958505, -2533494, 252866,
- 896574, -166430, -986769, 612570, -1364189, 256624, 2297271, -290447, 1137093, -154082,
- -2651069, 1901597, 872415, -1997697, -288300, 2265595, 127775, 1102196, 266825, 359167,
- -97711, -127238, -555125, 53150, 520765, -2066416,
- },
- {
- -14987288, 11746199, -10723460, 246424, 8489003, 8176007, -2226404, -6972880, 12134893, 10021769,
- -720481, -8846559, 10802916, 8885750, 6786585, -2645700, -6037114, -5447629, 597537, 8417062,
- -620086, -5796059, -8053064, -3731790, 1393180, 1990181, 10422275, -3879966, -236223, -977642,
- 10002442, -13386339, -7290170, 6429029, -3506841, 3513283, 3561065, 1980517, -2383170, -1850594,
- -2442763, -3369402, 3194382, 1506460, 893890, -2350421, 9376987, -2343979, 4823249, -1344325,
- 2200097, -4993973, 3750580, -4230006, -226023, -955630, -79457, -3520263, 6344204, 2260764,
- -1592896, 790811, -1014149, 4814122, -985158, 1347546, -441308, -558883, -2057826, -107911,
- 398895, 878321, 2393908, -2268280, 522375, -2774549, -869194, 3671123, -1193464, -381715,
- 1004486, -327491, -2080912, -875100, 1583232, -439160, -391379, 572304, 50466, -686121,
- 528281, 432181, -1494649, 483184, -207769, -434865,
- },
- {
- 2285996, 823560, -8149701, 8230231, -10390063, 2527588, -3637837, 1259499, 4609037, -4348655,
- 4359392, 1951526, 2905546, -50143208, -8590, -6129992, 5513665, -4020626, -2830384, 879395,
- 2692945, -2818572, 264677, -2015950, -2116345, -11454141, 3522947, -7023882, -2964064, 367220,
- -2543158, 6442988, 2237141, -8507256, 4098473, -5824513, 639950, 4902705, -4893579, 3447248,
- -6739341, 5996311, 782758, -5158256, -2664490, -3658775, -820876, -3430068, -61203, 9091372,
- 366146, 853625, -1746441, 180389, 304406, -341987, -6460705, -2430952, 2019172, -2575907,
- 8994735, -3139084, -5216238, -1491964, 1058710, -2898566, -353798, -909996, -6052146, 96637,
- 1294933, -2441689, -213675, 473520, 1316408, 1338956, -83752, 181999, -1379758, -2384244,
- 1389422, -848256, 44560, -70330, -1007170, -715649, 622770, 365609, 2099702, 446677,
- 706522, 642098, 966368, -841277, -440234, 584116,
- },
- {
- -11993159, -24495272, -821413, 10468446, -8760660, 13032541, 4957466, -4459250, 9505299, 11292543,
- 3678640, 4860829, -33260764, 7684234, -11418171, -831613, -10864120, -10072235, 6047851, 8505109,
- -1789928, 3823595, 2164664, 5195837, -3789772, -8615168, 19498614, 1422171, 7664906, 8462696,
- 5265093, -9960566, 3298535, -3921305, 13238700, 680752, 5215164, -5589363, 1870458, -4901632,
- -5552856, -1854889, 2723009, 5542656, -3893925, 2522757, 2100776, 5653251, -2835215, -382252,
- -7226820, 5109938, 744103, 1032940, 1137093, -165893, -5138392, -180389, -2677375, 2750390,
- -4420595, 263067, -1860258, -5084705, 17180, 1159641, -2037962, -1297080, -287763, 992674,
- 1166621, -1389422, 2746632, 442919, -355409, -140660, 2624762, -319975, -2143726, 1236951,
- 1308354, 219580, -1978369, -1760937, -1826435, 633508, -1535451, 599685, -1184874, 2266132,
- 2121714, 170188, 726386, -1367947, 2015950, -544387,
- },
- {
- -1376000, -20265804, 5302674, 908922, 2927557, -1390496, 9946607, -1628330, 3579318, -6460705,
- -2835215, 3903589, 7397008, -36441188, -36921688, 5586679, -3204583, 5665062, -7352984, -8783208,
- 5048197, 6243809, -13347148, 1147830, -382789, -11161009, 1722819, 7707319, 5389647, 9121974,
- 8684424, -380105, -3951907, -2400350, -7707319, 2469606, -8307004, -955630, 4568235, -9409736,
- -5488968, 7987029, -730681, -1202591, -4301947, 3840775, -1609539, 2911451, 511101, -7299297,
- 2482491, 1838246, 199179, 2784750, 2250563, -1999844, -1013612, -1535988, 3665755, -122943,
- 2464238, 473520, 4662187, -4683662, -1026497, 1239635, -6615324, 2676838, -675384, 211527,
- 214748, 1837172, 719407, 422517, 2692945, 928250, 3864397, 269509, 867047, 897111,
- 2087891, 2419140, -1780801, -1422171, -1064615, -276489, -903554, 1847910, -1182727, -12348,
- 743566, 149250, -1665911, 2485176, -1746441, 1402307,
- },
- },
- {
- {
- 15158550, 7257958, 25109990, 67189392, -5123896, -1721208, -2311766, -3549791, 5548561, 10082436,
- 20861194, -6715718, 7956427, 3886409, -540092, 5371394, -554051, 13078175, -2579665, 1803886,
- -2598455, 6945499, 6474127, 7722888, -5093831, -2456721, 3056406, 2446521, 4209605, -4665945,
- 3360812, -3518115, 2101850, -6054830, 7543573, 1075352, 6154152, 3928821, 118112, -2124935,
- 1641751, 1307281, 6066105, 3434900, 726386, -2479807, -2206540, 2092723, -1064078, -1607392,
- 1102733, -4766877, 1666984, -7732552, -3048353, -4439923, 3537979, 705985, -984084, -478352,
- -3640522, 1465121, -1653026, -177704, -1762547, 383863, 2826625, -3303904, 324270, -340376,
- 1501628, 1176821, -1940788, -222265, 913754, -1382443, 1416802, -1137630, 542240, -1559073,
- 1222455, -934692, -165356, 402116, -1595580, 572841, -886374, -53150, -863288, 495532,
- 559420, 1404454, 484794, -17180, -746251, -653372,
- },
- {
- 1238024, 19815368, -8079907, -47639240, 2799782, -3001109, -1993939, -1690070, 3484292, -131533,
- 615791, -12440373, -4183298, 643171, -608275, 870805, -11174968, -3000572, 153545, 4540854,
- 9470403, 376883, 8827232, 10171556, 8934606, -5294621, -5786932, -6946573, -963146, 475131,
- -5834713, 1622961, -12722767, 1039382, 5179194, 1538135, 7662222, 1127966, 2973191, -1551557,
- 2600066, 621697, -1951526, -7269232, -1513976, 10348187, 6382859, 2129230, -4945118, 2137283,
- -2279554, -1810329, 2814814, -3503620, -2250026, 1032403, 193274, -1939178, -1814624, 3301219,
- 1028108, -2804077, 924492, -3799972, 804233, 386010, 32749, -958315, -1526324, 788663,
- -1861332, -1646583, -319438, 877784, -967978, 585726, -2204929, 1928440, 208306, -2189360,
- -1590212, 2135673, 343597, -814433, 177704, -230318, 562641, 1973538, -750546, 93952,
- 1437740, 756451, 569620, -1237488, -377420, -483721,
- },
- {
- -6091874, -9818832, 17046188, 9210020, -25745108, -2051921, -2015950, 401043, 4851703, -1614371,
- -1986959, -16512002, 4389457, -13244069, 5419712, 8421894, -1472100, 1055488, -4250407, 10580115,
- -2678449, -2677912, -8273181, 2484102, -3918084, -5113159, 2673617, 9757092, 1743220, -5945846,
- -6316823, 12007118, 2332167, 6188511, 5799280, 6507949, 204011, -4262218, 8891119, 778463,
- 59593, -7479149, 1996623, 725850, 1059246, 1818382, -861678, -4607426, 2534568, 1461363,
- -625992, 2638184, 1034550, -1866700, 3325379, -1712618, -4170950, 1217623, -3987877, -4189741,
- 2854543, 2016487, -1107028, 1549410, -761820, -1858647, 2400350, 863825, -312996, 274341,
- -419296, 2374580, 434865, 431644, -2052458, 455803, 2924873, 1002875, -2046015, -2140504,
- -2136746, -1834488, -1870458, -688805, 1059783, 30602, -1467268, -167504, 1123134, 1580011,
- 303869, -206158, 1536525, 848793, 1676648, 233539,
- },
- {
- 11021960, -24312736, 6377490, 17143362, -9356049, 1654099, -3321084, -979253, -1868848, -105764,
- -12103755, 7555921, 7482907, 6757058, -10215043, 10612864, -4896263, 1778653, -7192460, 1315871,
- 518617, -11157251, -16297253, -8298414, 216359, -25596932, 4510253, -3431142, 5529234, -643171,
- -6852084, 5621039, -577673, 3412352, 10085120, -4075924, 3053185, -1717987, 4952098, 6056441,
- -4187593, -2452963, -3811784, 1443109, -803159, -1872069, 2684892, -4810364, -3113315, 5130339,
- 3263102, 439697, 431644, -1635309, 733903, -3212636, 1218160, 2770791, -1931125, 4199941,
- 1539209, 1031329, -6169721, -308701, 1341640, -1611, 512175, -1298691, 4671851, -1982664,
- -1837172, 1922535, 18790, -1875290, 69793, -157303, -1810329, -1527935, 1232656, -481573,
- 97174, -1260036, -386547, -357556, -103616, -1519345, 1506997, 467615, 2235531, 458488,
- 426276, 509491, -75699, -918049, 787053, -303332,
- },
- {
- -1772748, 17264694, 5051419, -11188927, 1399086, -2854006, 687195, -329102, 518080, 2491081,
- -3508988, -9499931, -2230699, 4861366, 16233366, -3406446, -3064459, 5598490, -7985418, 2201708,
- 13045426, 483184, -18945638, 8797167, -5986111, 7601019, 11410654, 4566624, 157303, 4238059,
- 4973572, 7265474, -3681324, 6914898, -134755, -1642288, 47782, -331249, -1537598, -9207336,
- -6980933, 2324651, 3102040, -4138201, -2542084, -3777961, 176631, 1839320, 1060320, 88047,
- -1352378, 78383, 6552510, -723702, -489089, -1057636, -1762547, 1932735, -559420, 787590,
- -896574, -1846299, 3595961, -335007, -812286, -3452080, -3025805, -1946157, 779000, 2659122,
- -2639258, 2902861, 2633889, -994285, 49929, 1462436, 58519, 1341104, -296890, -2456721,
- 1351304, -285615, 2048699, -188979, -1730872, -562104, -908386, 713501, 1702418, -832687,
- -105227, 635655, -578210, 208843, -184147, -560493,
- },
- {
- 17949206, -11323681, 5850283, -22002044, -3098282, -3295851, 8574365, -9967545, -18662706, 4677220,
- -1931125, 25185152, -5189394, 9540196, -1216013, -5901285, -9671193, -1101122, 1829119, -963683,
- 1569811, 551903, -9258339, -4220342, 18742700, -1739462, 7435662, -6027450, -4276177, -3617436,
- 3910568, -2383170, 6686191, 2908230, -609349, 3507378, -623844, 1435056, -2631741, -2129230,
- 2171643, -1090922, 864899, -681826, -879931, 2695092, 288300, 6214281, -663036, 463856,
- -5485210, -1561221, 1482838, -1693291, -23085, 3330747, -247497, -3803731, -2138357, 2149631,
- -2991445, -302795, -650688, -2037425, -2254858, 1334124, 2368675, 1340030, 525060, 774705,
- 133144, -1986422, -1829656, 35433, 2465311, -374199, 1152662, 2135673, 1084479, 490700,
- -845572, 1241782, 1330903, 2385318, -763967, 2276870, 828929, 718870, -639413, 1031866,
- -367757, 227633, 2662880, -251256, -243203, 405338,
- },
- {
- -38655, -12328704, -14940044, -578210, 4776004, -227633, -996969, -363462, -4064113, -1100049,
- -4538707, -2276333, -6715182, 7999914, -8104604, 3160022, -18256296, 1626719, -2069637, 3446175,
- 4235912, 2156074, -321049, -15379204, -8911520, -6349036, -3988414, -4388920, 9690520, -10842645,
- 6167036, 4294431, -8260296, 13516262, 4584878, 3253975, -3915400, -1451162, 2645700, -477815,
- 3777424, -4051228, -6174553, -6692096, 4758824, 1933272, 102542, -768262, -9738838, 1280437,
- 757525, 1268626, 3738769, 2881923, 1023276, -2074469, 2391760, -5369246, -3963181, 1008244,
- -2290291, -822486, 737661, 1693291, 51540, 1358283, 950798, -3325379, 190589, 346282,
- -110595, 1693828, -3088082, -1494649, 524523, -652835, 1351841, 978716, -126165, -2708514,
- -1962263, 486405, -2180770, 9127, 1052267, 826244, -903554, -1535988, 1628866, 1368484,
- 705985, -108985, -806380, 525060, 583579, 1091459,
- },
- {
- 13654775, -57584776, 12052752, -60455960, -1927367, 4744865, -10195179, 31941672, -3223910, 1282048,
- 10296110, 11549167, 7885023, -1690607, 6532646, -7053947, -20633022, -3423626, 12062416, 2301566,
- -6152541, -910533, -122943, -12560095, -5272609, 107374, 5224828, 10411001, 565325, 5196374,
- -8078297, 4212289, 839666, -2253247, 2540473, -4155381, -463856, 43487, 2225330, -2981781,
- 1749125, -164283, -3144453, -5182952, -5625871, 426276, 4105989, 726386, -577136, -5603859,
- 3857418, 1913945, -145492, 870268, -5684926, 751619, -430034, -552440, 4253092, 877247,
- 10737, -1380295, 397821, -2161442, 4115653, -1641751, 547071, 3549791, -1498407, 1595044,
- 725850, -589484, 309775, -668941, -259846, -2612951, -825707, -781684, 2375654, -490700,
- -770947, 2393908, 2050310, -239444, -1193464, -249108, -728534, 1167694, -111132, 865436,
- -226023, -1017907, -1069984, -101469, -1002875, 1054415,
- },
- {
- -31675, 24305756, -1226750, 10347650, 3347927, 88047, 3656091, -2525441, 93416, -3563749,
- -94489, 633508, -247497, 9320616, 1644436, 3679176, 12865575, -8740795, 272730, -2484102,
- 9105868, -831076, -8723615, -2905546, 403190, 6474127, -1913945, 14878304, -3008625, -3632469,
- -8046621, -10194642, -2245731, 3145527, 7331509, 3686693, 3803194, 1422708, -7901129, -2779918,
- -5303211, -4927938, 1144072, 6460168, -7941395, -3740380, 4463545, 512175, -3435974, -1226750,
- 142808, -18254, -1606318, 3564286, -2302639, 3000035, 3003793, 2132988, 5993627, -1651952,
- -1442035, 206695, 1724429, -1054415, 1703491, 548682, -1192927, 899796, -3406446, -327491,
- 237834, 2216203, -1781338, 1925756, 201327, 1713155, 711354, -165356, -207232, 2156074,
- -257161, 890669, 2285460, -583579, 842350, 1131724, 1991791, 1487669, 2249489, -755377,
- -676994, -340376, 395674, 23085, -1052804, -525597,
- },
- {
- -8323110, 57692148, 9366787, -6742562, -1939178, -22450868, -2923262, -9657234, 14960445, -2063195,
- 4517769, -9224516, 7218230, 2514167, 4249334, -4492536, 5999533, -5928129, -9986873, -3502546,
- 18051748, -4744865, -2793876, -1001264, -6379100, 5345087, -3380676, 901943, -1675037, 6265821,
- -1025960, -4755066, 5573794, -9394167, 1539209, -1544041, 3563749, 1477469, 722091, 9190693,
- 1220845, 336081, -1490354, -3287261, -2906082, -1066763, -5775658, 2559264, 3122978, -8130373,
- -1554241, -2172717, -2797634, -777389, 3760781, 1973001, -3511136, -1051193, 2815888, -5360119,
- -3387119, -764504, 1475321, 3764002, -1610076, -756451, -1152662, 337692, 1857573, -418222,
- -375810, -2224256, 659278, -1468879, -197569, -2196339, 999654, -472983, 243203, 1225676,
- -1932198, 1167157, 144418, 383326, 1359894, 697395, 956704, -362388, -624381, -404801,
- 1342177, -1194538, 2851322, 252329, 169651, -474057,
- },
- {
- -2737505, -27110908, 7237557, -13045963, 247497, 12487617, 10483478, -5051956, -4602058, 7958575,
- 4155918, -5644661, -1028645, -18586470, 4573604, -3843996, 9114457, 1125281, 9745818, 6258304,
- -13668197, 4764730, -2274722, -15468862, 456877, 528281, -11887933, 1307281, -7568806, -11965242,
- 7318625, -4096862, 7280507, -5255966, 3661460, 860067, -2910377, -345745, -586800, 3355980,
- 7282654, -620623, 4065187, 215822, -100395, 3821984, -4286378, 4677220, -996432, -1857573,
- -2012729, -3292629, 319975, -1546725, -565325, -2036888, 292058, 6121402, 2496450, 1199370,
- -1971390, -4723391, -382252, 4710506, 1192927, 324270, 686658, 2203318, -368293, 1801739,
- 2721399, 667867, -1287953, 116501, -883153, 645319, 1935420, -2054605, 361314, -285078,
- -2145336, 244276, 388158, -192737, 1060320, 2183991, -143881, -483721, -1827509, -283468,
- -1049046, -122943, -267899, 5906, 1753957, -344671,
- },
- {
- 10001905, 36636072, -352724, 15062450, 2649458, 38445328, 11372000, -13792214, 7075959, 263604,
- 8158827, 4585952, -3846143, -9316321, 11477763, -197569, -2412698, 11200738, 2218351, -2072859,
- 2507187, 521302, 1007707, 3007014, 4424890, 3361349, 6626598, -4234838, 1255204, -1329829,
- 16481937, -8955007, -6549289, 8825621, -3768297, -729608, 1377611, 3142306, -133681, -943819,
- -501974, -664646, 1344325, 161598, 2987687, -619549, 549756, -7335804, 4044249, -2422362,
- -575526, -6455336, 6705518, -3478387, -4624069, -1603633, 707596, -4988068, 4555350, 1001264,
- -3595961, 597537, -3241627, -1486596, -4309463, 548682, 491774, 4643934, 1292248, -154082,
- -1456531, 456877, 3006477, -4625680, 93416, -1663226, -1223529, 3053185, -1857573, -1663226,
- 184147, 1420560, -489626, 277025, 2218351, -549756, 204011, -339839, -592169, -518080,
- 1060857, 963146, -2445984, 337692, 528281, -702227,
- },
- {
- -2110440, 4366908, 1120450, 9067213, -3918084, 1862405, -8178155, 1174674, 7552163, -4424353,
- 3624416, 6484864, 2595234, -42248520, 5055714, -12723841, 1535451, -6637335, 2103460, 1610076,
- -3548717, 1265405, 5029407, -6788196, -2815351, -8782671, -3511673, -667331, -4802847, -5123359,
- 923955, 2519535, 1290101, -13095892, 3604551, -5225365, -3142306, 3081639, -3148211, 1331977,
- -9448928, 6584722, 2477659, -3602941, -1485522, -292595, -2625299, -3583077, -1709934, 4684199,
- -6426882, -2502892, 694711, 4908611, 1826972, 2151779, -2752000, -2560874, 488553, -5521181,
- 5403606, -1264868, -5127117, -4413616, 711354, -970126, -444529, 1562294, 340376, 4254165,
- 1074, -2518998, 417149, -527207, -449361, -625455, -1806034, 21475, 617938, -432718,
- 1658931, -1039919, 239444, -1869385, -1337882, -255014, 1014149, 52613, 500364, -443992,
- 278636, -257698, 2193655, 1217086, 1868311, 1021665,
- },
- {
- 14015552, 10865730, 6696391, 13216151, -10849087, 19385872, 2268817, -8617852, -2388539, 10161893,
- -3119220, -1930051, -32075890, -5764383, -34561600, 5162014, 588947, -13713294, -59593, 6634114,
- 2163053, -607738, -4043175, 4851703, -4704600, -22917408, 10916733, -7318088, -7369627, 1656784,
- 4333085, -8288750, 3748970, -4698158, 11409044, -7990787, -3546032, -3684545, 8202314, -2567317,
- -1374926, -1620813, 3971771, 6440304, -5200132, 6953015, 4611185, 4130685, -3796214, -2503429,
- -5798206, 6651294, -4419522, -4491462, -1096290, 2764348, -4867272, -631360, -1793149, -336618,
- -5492727, -635118, -433255, -3733400, 1065689, -247497, -2236604, 164819, -201863, -868120,
- -396748, -1774358, 811212, -571768, 1058173, 576063, 694711, -2329483, -3078418, 111669,
- -204011, 856846, 1730872, -33286, -2229088, -746787, -1477469, 913217, -2144263, 529892,
- -428960, -1859184, 643708, -1147293, 1571421, -297427,
- },
- {
- 1595580, -28702192, -3502546, 3435974, 8061117, -1089848, 6362457, 625455, 7611219, 1673427,
- -3250753, -1692217, 3338800, 15223512, 32712618, 3306588, 7539278, 3788161, -17336636, -8023536,
- 10633802, 1919850, -10595147, 2602750, -357556, -8461086, -189515, 5037460, -5824513, -2971044,
- 4634807, 7022272, 3448322, 4072166, -1945083, 8206609, -7136625, -8411693, 2389076, -8177618,
- -5776194, 11500849, 969052, -659278, 1247151, 7975755, -252329, 704912, -1825898, -3452080,
- 3810173, -1895691, 683437, 6730751, -271657, -5523865, -143881, 1388348, 3860102, -1819456,
- 3153043, -266288, 5228586, -2419677, 138513, 5308580, -3060701, 5810554, 42413, -110059,
- -2753611, 494458, 1618666, -1198296, 1326071, -1278290, 969052, -1024887, -598074, -401579,
- 279710, 593242, 511101, 1169842, 468688, 2127620, 252866, 340913, -1315334, -151934,
- -446140, 1095754, -679142, 3096672, -1513976, 1386201,
- },
- },
- {
- {
- -17311940, 31659278, 31516470, 60117196, 13035763, -8324721, -4337917, 3634616, -3938485, 14585709,
- 11527692, 4550518, 4603668, 5090610, -390842, 3515431, 10096931, 1634235, 955630, -303869,
- 1216550, 8342974, 1192390, 8428873, -2742874, -2824478, 370441, 6118181, -1759863, 308701,
- 2481417, -3012920, -1198833, 453656, 2704756, 5032091, -2021319, 8012262, -346819, -1425392,
- 3085397, 54224, 2302639, 3224984, 3597572, -4568772, 1963874, -3125126, 1201517, -4258997,
- 1240709, -571768, -2610803, -5909338, -1810866, -4785131, 1489817, 1077500, -987306, -2312303,
- 1013612, -297427, -3081102, -361314, -1115081, 521302, -174483, -2099165, -1870995, 2108292,
- -1207960, 1461900, -472446, 3221, 267362, -1114544, -522375, -1204738, -665183, -710280,
- 147640, 1038308, -935766, 41876, 69793, -1555315, 39192, -698469, -777389, 1185948,
- 1378148, 786516, 630286, -105764, 624381, -375273,
- },
- {
- -1476932, -8652212, 15042586, -10937671, -26320634, -2330557, 1006096, 2033130, 126165, 4651987,
- -8885214, -8848170, 2773475, -7013682, -2450816, 6291590, -15721191, -3295314, 13423920, -14033806,
- 5652714, 13516262, -1979980, 5434208, 10459856, -1976759, 2152316, -14061723, 3920232, 1140851,
- -7000260, -2736431, -8302709, 3592740, 1961190, 577136, 10599979, 168041, 404264, 1957431,
- -1744294, 4003983, 2269353, -8145406, -2480881, 10464151, 5350993, 3848291, -3884261, -1585380,
- -1211181, -1388885, -2880849, 1524713, 563714, -135828, -1119376, -1060320, 739271, -2084133,
- 253940, -474057, 649614, 330176, -1801202, -309238, 376347, -1481764, 2216203, -1975685,
- -2357400, -612033, -347892, -848256, 821413, -6979, -2029372, 1461363, -54224, -1692754,
- 454730, 848793, 1939178, -1823214, 195958, -890669, 1605781, 1148904, -1339493, 2544231,
- 505732, 460098, 462246, -1100585, 80531, -1042066,
- },
- {
- 5236102, 22016002, -26234198, -32693292, 12039867, 113817, -2266132, -833224, 5849209, -2956011,
- -9029095, -6640557, -11692512, 5401458, -3299609, 8458401, -2135673, -1932735, -3480534, 9152038,
- 4153770, -4226248, -4847945, -7569343, 1636383, -1880122, 3654480, 5417028, 2936147, -6336151,
- -6478422, 4153770, 11911555, -1589675, 13964012, -1964411, 8506183, -3105798, 702227, 103616,
- 2460480, -4858145, 252866, 3897683, -1506460, 1556389, -4072166, 3522947, -2873870, 2882460,
- -2641405, 3675418, -2813204, 2872260, 1614371, -440234, -5010080, -701690, -3821447, -834834,
- 290447, -142271, 2350958, 3289945, -3411815, -583042, 1695975, -590558, 509491, 1794223,
- -1502165, 767725, 996969, 1186485, -2570538, 518617, 2073932, 928250, -2203855, -479426,
- -2610266, -641024, -489089, -2931852, 732292, 267899, -952409, -530428, 781147, 1993939,
- 559956, 13959, 96100, 1195075, 781147, 1085553,
- },
- {
- -12320114, 2381559, -1311576, 23119272, 2717104, -1265942, -1954747, -6347962, 7186017, -6062347,
- -9580998, 8434242, 568009, 13670881, -1595580, 3202972, -7230041, 10101763, -8240432, -11128797,
- 5470715, -8837969, -21729850, -2044941, -5303211, -20758114, 1103807, 5516349, -1613834, 365609,
- 3487514, -1527398, -646393, 6848862, 8577050, -1136019, 1691143, 2824478, 1691680, 2186138,
- 686658, 1310502, -6149320, 2269890, -1199907, -282394, -3089155, -2608656, 683974, 4225174,
- 659278, 3303367, -3730716, 2276333, -3655017, -397821, 862752, 2475512, 2821257, -3147137,
- 4233227, -1469953, -2084670, -4413079, 1971390, 2740726, -1690070, 4174171, 29528, -852014,
- -1347009, 2499671, -105764, -672699, -571768, -2491618, -1032940, 117038, 293668, -1165547,
- -1640678, 1511292, -1634235, -529892, -577673, -868657, -1298691, 2195265, 1307281, 525597,
- 251256, 1305670, 63351, -1385127, 1423245, 553514,
- },
- {
- 727997, 29198262, -7778723, -7572564, -2850785, 76773, -940598, 239444, 1013075, 623307,
- -347355, -7744363, -3750580, -4515085, 28505162, -5509370, 10442139, -9213242, 3369939, 6642704,
- 7027640, -1355062, -16538845, 3651259, -3439195, 7580618, 5319854, 6063957, 8413841, 1731409,
- 1256815, 4301947, 694174, 4223027, -3885872, 1791538, 338229, -1141924, -7878581, -9262097,
- 1815161, -1921998, -740345, 688805, -5760088, -5817533, 3450469, -2036888, 3279745, 1130113,
- 1604707, -840203, 3489124, -1500554, 899796, -3324842, -688805, 2144799, 24159, -388695,
- -1375463, 2722473, -1605244, -540629, 38118, -1004486, -3547106, -767725, -233539, 1700270,
- -445603, 3134253, 343061, 320512, -1197222, 2119566, 1007170, -1360968, -1277216, -964220,
- 2155000, 396748, 1624571, -478889, -1186485, -2039036, -437013, 1595580, 266825, -4832,
- -141197, -547608, 265751, 1015223, -856309, -777389,
- },
- {
- -16760573, 42374684, -16533477, -16273631, 4741644, 1865626, 4293894, -14353244, -6912750, -5557688,
- 20135344, 7796440, -843424, 7360500, 8686571, -1955821, -21963926, -2434710, 7480223, 2060511,
- -133144, -5221070, -3712999, -2691334, 14215805, 6359236, -1224066, 227633, -6637335, -1353989,
- 198642, 1280437, 3298535, 1583232, 1216550, 3064996, 4586488, -2859911, -8581882, -1200980,
- 688269, 3375844, 1126892, -1846836, 125628, -2258616, 1289027, 4668630, 1960653, -4173635,
- 1083942, -798864, -114890, -2316598, 2167348, -490163, 114354, -3730716, -1279363, -292058,
- -1554241, 2344515, -5429376, -353261, 1323924, -1589138, 1717987, 1657321, 187905, 1945083,
- -1221918, -2415382, 1887101, -584652, 1915019, -848256, 1064615, 1399623, 2377265, 179852,
- 518080, 899796, 2102387, 1219234, -276489, 1802276, 485331, 422517, 602906, -493921,
- -100395, 932545, 1512365, 527207, 466541, -81604,
- },
- {
- 457951, -23007602, -6371047, 3019362, 503048, 403190, -190589, -1125818, -4474282, -1854352,
- 3445638, -8091719, -1072668, 5151277, -2022930, -2511482, -14728517, -948651, -4525822, 9806484,
- 9001715, -2549600, -3458523, 142808, -15162845, -8506183, -10856604, 4557497, 5625871, -6614787,
- 5517423, -1323924, 3045669, 671626, 9266929, 407485, -5195300, 160524, 1122597, -5760625,
- 5762773, -968515, -10613401, -2760590, 5710696, -4751845, -22549, 552977, -8291435, 3985193,
- 541703, -2113124, 5558762, 1512902, 1427003, -1777043, -911070, 1063004, -6017249, 422517,
- -2191507, -673236, 2771865, 2617783, -313533, 18254, -433255, -1149978, -443455, 680215,
- -69256, -504122, -682900, -3208878, 1042603, -1720134, 1610076, 781684, 547071, -2695629,
- -1448478, 293132, -559956, -1431298, 299037, 2473364, -1144072, 935766, 187905, 771484,
- 1697586, -314606, -1925756, 1570347, -361851, 1020592,
- },
- {
- -25283936, -10525354, 7628936, -64885144, 9825275, -1654099, 10150618, 11121281, 1380832, -3477313,
- 11931956, 9807558, 13209709, -1541356, 8712878, -3524021, -21680994, 999654, 8328479, -94489,
- 1306207, -6506876, 1941862, -5437966, -9133248, -426812, 8836358, 2836826, 4339528, 2637647,
- -1073742, 343061, -3346853, 4387309, -3776350, -1228361, 938987, -1296006, 1087701, -1420560,
- 3984656, -3401077, -5490042, -3564286, -437550, -1015760, 6089727, -2087354, 914828, -2036888,
- 243739, 2987150, -1873143, -2247879, -104153, -1838246, -823023, -418759, 4027069, 1562831,
- 2021856, -3185255, 1318018, -501974, 4166655, -2182380, 1714229, 1719061, 822486, -671626,
- -1739999, 1773285, -773631, -741419, 230854, -1030792, -2787971, 679679, -39192, 498216,
- -1203128, 2596845, 1895154, 301185, -2238752, 1074279, -600759, 551903, -619549, -131533,
- 1280437, -160524, -1890859, -85362, -720481, 1103270,
- },
- {
- 2108292, 6694781, 10003516, 3684008, 4218195, 1942399, 1674500, 741419, -4469451, -2560338,
- 8524436, -2994129, 1783485, -6296422, 13254269, -6487011, 1873143, 4587562, 810138, -4300873,
- 14851997, -10989211, -6589554, -44023, 510027, 481036, 10771241, 8626979, -653372, -2979634,
- -7495792, -19225348, 11820287, 4247186, 4939750, 1343251, 1303523, -3140158, -1357210, -9529996,
- -7593502, 6030671, -3153043, 5238250, -7281044, -26844, 4779762, -3663607, -2939905, -1356673,
- 992674, 802085, -2180770, 865973, 1217623, 3304441, 1586454, 1321239, 3819300, 2477659,
- -2343442, -881005, 2437394, 894964, 1146219, -1496259, 288300, -1233729, -3920768, 544924,
- 1601486, 227096, -941135, 1555315, 1571958, 284542, 2294586, -1524177, 1156420, 707596,
- -1065689, 1633161, 1227824, 102005, 1310502, 686658, 383326, 2001992, 1706713, 699543,
- -1582696, 130997, -27380, 322123, -1594507, -1387811,
- },
- {
- 11324755, 58631672, -5798743, -3145527, -25812754, 17995912, -28595892, 5419712, 5350993, -4872104,
- 8108362, -19915226, 20345260, -782221, -4058744, 8621073, 1120450, 6986301, -14928769, -1901597,
- 3084324, 6665253, -15753403, 4689568, -5989869, 4548907, -2544231, -1358820, 3491809, 3874597,
- -882079, 5734318, -1590749, -10349261, 2152852, -1847910, 5550709, -1216013, 4638028, 2621004,
- 1009854, -281320, -1902671, -697932, -1066763, -4297115, -2433099, 1631551, -1955284, -3476239,
- 1390496, -1562294, -5501853, -405874, 6946573, 2175938, -6154152, -87510, 3198677, -3284039,
- -4802311, -1605781, 3412352, -1254131, 1312649, -1585917, 767189, 798327, 333397, -539018,
- 128849, -1624035, -482647, 155156, -788663, -1488743, -1254131, 750009, 1038308, -1194538,
- -405338, 1795296, -1283122, 483721, 1074279, 108985, 2661806, -696322, -727997, 1197222,
- -926102, 1211718, 1979443, -443992, 1284195, -1214402,
- },
- {
- 2624762, -24327232, -3974455, -6465000, -6210523, 7276212, 15752866, -4883915, -5426155, 8246874,
- 2217277, 5299990, -11919608, -12159052, -3111167, 1752347, 980863, 562641, 6791417, 17925582,
- -13093208, -3203509, -7555921, -13192529, 2746095, 3076807, -4840965, -498216, -12921946, 5038534,
- -2406792, -2758443, 7963943, -10792179, 8111046, -2493766, -429497, 4800163, 477278, 1337346,
- 1212255, 5369246, -383326, -1278290, 700080, 2505040, -604517, 6693170, -4750234, -6686191,
- 1330903, -472983, -2303176, -1089848, -336081, 1188095, -4042101, 7203197, 2225867, 36507,
- -3696893, -4767414, 1339493, 2112587, 1828046, 4210142, -1641214, 1025423, 750009, 2687039,
- 2832531, -435939, 1398549, -2167885, 265214, 774705, 1896765, -2446521, 422517, -2421825,
- -70330, -821413, 1815697, 181462, 980326, 1399623, 1291711, -1509681, -1110786, -660888,
- -860067, -310311, 508417, -338766, 161061, 1161789,
- },
- {
- 2808372, 51627656, -6118181, 27131308, -793495, 47436840, 515933, -7399692, -6838662, -2762201,
- 17871358, 1547799, -884226, -14618458, 10907606, 3749507, -7006166, 13836774, 6513318, -17229798,
- 8128763, 2496987, 2615098, 648540, 3957276, 9391483, -144955, 3322157, -7869991, 4327180,
- 11086921, -8531416, -205085, 5934571, -89657, -492848, 3662533, -6131603, 2070174, 2988760,
- -5199595, 1266479, 3697967, 1836099, 425739, 3306588, -7080254, -5601174, 76236, 1487132,
- -3692598, 698469, 71941, -1793686, -2603287, 246424, -5750961, 1603097, 1065689, -492311,
- -665720, 438624, -2070174, -7261716, -1801739, 1697586, 1968706, 2064806, -185757, 871878,
- 287226, -545998, 1768453, -1770063, -1705639, -1237488, 807991, 173946, -733903, -913217,
- 940061, 379568, 113280, 962073, -293668, 1287953, 1447404, -1420024, -1724429, 811749,
- 610422, -208843, 559956, -747861, -247497, -1973538,
- },
- {
- 1126892, 9105868, -581431, 3757023, 2448668, -85899, -5122822, -4808753, 5269925, -1702955,
- 2319819, 4346507, -6235219, -8682276, -11824045, -7185481, 3123515, -7219303, -4037269, 4661114,
- -1970316, 6274947, -2611877, -3030100, -2820183, -3978750, -5544803, -7143605, 6757058, -11755325,
- 14488535, -10931229, -565325, -3873524, -5082020, 4669167, -10474888, 6987375, 2178085, -5872831,
- -3903052, -132070, 8053, 1999844, -3020973, 2405719, -6503118, -176094, -1505386, 729608,
- -5734318, -1609539, -1757715, 5952288, 1468879, -286689, 2367601, -438087, -4969814, -1344325,
- 1065152, 686121, -4131759, -4001299, 1413044, -1915555, -579284, 646393, 1585917, 6220724,
- -3599720, -509491, 1189706, -647466, -1930588, -127238, -1752884, 1091995, -2011118, 531502,
- 2554969, -1821066, -505732, -1058173, 849330, -1661616, 1274532, 851477, -489089, -182536,
- 546535, -1060857, 2913599, 153008, 2158221, 1126355,
- },
- {
- -8752070, 59652800, 252329, 5832566, -2598455, 11953431, -9568650, 9645423, -16184511, 5725192,
- 4180614, -19100256, -8881455, -11815992, -28290950, 2837363, 2141578, -1163936, -5606543, 5418101,
- 9948755, -14921253, -1432372, -229244, 3337190, -21568788, 14496, -10358924, -4221953, 4174171,
- -6887517, 7889855, -3305514, -5610301, 7033546, -1174137, -10478646, -3558381, 11415486, -5482526,
- 2464238, -2041720, 3977677, 2296734, -177167, 3190087, 7482907, -1055488, -1313186, -6432251,
- 5949604, -3267933, -4275640, -3110093, -3118146, 4173098, -4554813, -594316, 1961726, -6152541,
- -282931, -2502892, -308701, -1328219, 933082, 381715, -1442572, -765578, -1429687, 1046898,
- -1398549, -1942399, 1507534, -1849520, 2180233, 45634, -380105, -1206349, -1780801, -759136,
- -967978, 1271310, 1954747, -2428804, -273267, -1527935, 112743, -1226213, 100395, -765578,
- -527744, -264677, -487479, 478889, -362925, 269509,
- },
- {
- -2165201, -22868554, -3056943, 4328790, 3193308, 2916283, -83215, 2455111, 7866770, 1901060,
- 656593, -5251672, 3326989, 18950470, 27439472, -7806103, 16437377, 770947, -235149, -10673531,
- 10408316, -16283295, -1026497, -9227200, -1412507, 5433671, -2290828, -1684164, -10137733, -741956,
- 1099512, 3437585, 7694434, 230318, 9061307, -802085, -6318434, 878858, -2131915, -1301912,
- -3563212, 4863514, 1312113, 2480344, 1292248, 6694781, -2638184, -1482838, 4940286, -818728,
- 3055332, -1673427, -3650722, 8782671, -233539, -4606353, -1243393, 2591476, 214212, -301185,
- 5762236, 599685, -875100, 1789928, -2402497, 3963718, 3765076, -603443, 2476049, -1703491,
- -1006633, -2148558, 1618666, 1350230, -385473, -841277, -1058173, -526670, -1196685, -919123,
- 2464238, 82678, 1545115, -870805, 2224256, 1792612, 1003412, -1590749, -590021, 262530,
- -142808, 204548, 92342, 2181844, 72478, -156766,
- },
- },
- {
- {
- 19127100, 11673184, -30871688, 34294240, -252329, -6068789, 310311, 5751498, -6817187, 4677220,
- -1269163, 6859600, -2560874, -1524177, -3189013, 490163, 4987531, -8022999, 1418950, 8728447,
- 7446400, 5904507, -3562675, 5117991, -4954245, -5714991, -718870, 3612068, -9087077, -4481799,
- 3338263, -704912, -934692, 3103114, 1504849, 3710315, -3049427, 8687645, 121333, 834834,
- 1261110, -1720671, 1054951, -1654099, 3874597, -2913062, 16106, -4087198, 3610457, -1383516,
- 590558, 2545842, 293668, -3070902, 1706713, -3642669, -870805, -1593970, -1365263, -3685619,
- 1465658, -189515, -3619584, -930934, -1017907, 1029182, -1580548, -2962454, -2659122, 1171989,
- -1944010, 1047972, -398895, -1928440, -737661, -1888175, -1644436, -753767, -381715, -832150,
- -1188095, 187905, -1068910, 584652, 988916, -1127966, -17180, -1071058, 485868, 1190243,
- 330176, -340376, 42413, 273804, 2099702, 862215,
- },
- {
- 581968, -34977140, -2430952, 31884226, 7192997, -2274185, 3556770, 5989869, 1910187, 6586333,
- -14783814, -9724880, 3350611, -7676717, -6487548, 6550899, -13124346, -6586333, 10317585, -15592342,
- -364535, 4844723, -13797046, -5647345, 5290863, -4318590, 7005092, -5710696, 2947421, 2341831,
- -2684, 619549, -1076963, 7030862, -1841467, -6254546, 2980707, -2862059, -2099702, 4310537,
- 222265, 3315715, 4115116, -2603287, -1878511, 7755637, 1748589, -362925, -2935073, -181999,
- 1746978, -517007, -6251862, 2951180, 1611150, -2226941, -1717450, -3676492, -1475858, -2056753,
- 1348083, -348429, 35970, 1345935, 1273995, -222265, 274341, 1263794, 2561411, -2274722,
- -1626719, 1360431, 1134408, -2516851, 114354, -388158, -3031173, 357019, 1118839, 63888,
- 1426466, 1191853, 1980517, -768262, 734976, -1143535, 1302449, -208306, -2042794, 2220498,
- -336081, 438624, 170188, -576063, 56371, -1344862,
- },
- {
- -3468186, 63171452, 10226317, -54509040, 3635690, 2797634, -3880503, -3972845, 3965329, -2635499,
- 7591892, 62814, -24955908, 15143518, -6049462, 6491306, -499290, -4305705, -17812304, -13229036,
- -4337380, 1529545, 3477313, 2058363, 13654238, 4726075, 6952479, 1216550, -2114198, -5364414,
- -893353, -2825552, -2202781, -16270410, 9561134, -6988986, 10737, -6622303, -3603478, 907312,
- 2170032, -1293859, 3549791, 3534758, -318901, 3136937, -6898255, 2375654, -856309, 2473364,
- -3459596, 5003100, -4308389, -127775, 727997, 3811247, 1917703, 871342, -2332704, 1080721,
- -108448, -4763119, -1262720, 2209224, -4678293, -2061584, 2061584, -845572, -972273, 1702955,
- -2250026, -470299, -34360, 403727, -879395, 586800, -1357210, -685584, -762357, 1748052,
- 513249, 2390149, 2177549, -1199370, -179852, 198105, 282931, 195421, -231391, -143345,
- -512712, -883153, -724776, -129386, -35970, 1020592,
- },
- {
- 6516539, 22121766, 9213779, 28926604, -4960687, 2586107, 644245, -6332930, 4784594, -13033078,
- -9605694, 11041824, -5580773, 1424855, -1675574, 6237903, -5812165, 14153528, -941135, -10452340,
- 4225174, 1033477, -2355253, 9103183, -3056943, -14242648, 4530117, 12603045, 8931921, 700617,
- 7384660, 3113315, -1350767, 7654169, 8003135, -2452426, -2079301, 2109903, -3199214, -1632625,
- 1044751, 5292474, -287226, 2887829, -2255932, -1483911, -6063420, 1881733, 3301219, 2019172,
- -1772748, 3402688, -2455111, 1060857, -6286222, 1421097, 2731062, -1690607, -413391, -809064,
- 2732673, -3471944, 1833951, -593779, 1824287, 1358283, -994285, 3962107, -2744484, -461172,
- -1297617, 1575179, 9664, 1505923, 1233193, -2517388, 739808, 1040993, -728534, -444529,
- -1858110, 1400696, -3047816, -2568391, -1427540, -931471, -1119376, 650688, -191663, 54224,
- 198105, 726386, 639413, -40802, 753230, -547608,
- },
- {
- -38655, 35416836, -3127810, 906238, 5534602, 441845, -717796, 2222646, 4565550, 2204392,
- 1835562, -4132296, -2191507, 7282654, 37847788, -3484292, 12357695, -3159485, 8160438, 695785,
- 2026688, 3661997, -7648800, 3955665, -2655901, 14367202, 8808978, 1982127, 4459787, -5278515,
- -6185290, -4634270, -1327145, -941135, -15478525, 1361505, 390842, -167504, -2930778, -8814884,
- 205622, -325881, 2251637, 4359392, -2709588, -1762547, 4610111, -4958003, 1523103, 638340,
- 3900904, -2292976, -2130304, -4714801, -1493575, -2392297, 3643206, 2985002, -480499, -2052458,
- -1553704, 2862059, -4334696, -1879048, 1739462, 1934883, -2758443, 91268, 803696, 1126892,
- 259846, 507880, -2909304, -683437, -2860448, 200253, -497679, -2221035, 278636, 640487,
- 1968706, 366146, 824634, -276489, -998043, -2376191, 633508, 1081795, -809064, 325881,
- 638340, -55298, 607738, 401579, -1346472, -293132,
- },
- {
- 4380867, 73555072, -6576669, -23722714, -12002286, 869194, 3182034, -8382703, 3964792, -895501,
- 23096724, 56371, 4590247, 15479062, 7734699, 2770791, -10985453, -7008850, -4917201, 460635,
- 8048232, 2442226, 2022393, -489089, 1103807, -2612414, -7861401, 6635188, 5814849, 2953327,
- -3315715, -3834869, -2583960, -3095598, 885837, 4267050, 1246077, -6549289, -7589744, -1342714,
- -278099, 4151623, -2404108, -6395743, 1791538, -4628901, -2206003, 2440078, 486405, -4217658,
- 3292629, 595927, -464393, -251792, 4105989, -661962, 1240172, -1292785, 1625108, -308164,
- -1947231, 3403762, -3540664, -382789, 1560147, -839666, -194347, -1361505, -1605781, 978179,
- -442919, -270583, 3652870, 875636, 1222992, -1271310, 474594, 1114007, 646929, -1800128,
- -697932, -544387, 258235, 425739, -846109, -2147, -695248, 62814, -180389, -864362,
- 117038, 574989, 421981, -251792, 817118, 840203,
- },
- {
- 203474, -10271951, 10502806, 1672353, -1657321, 918049, 1834488, -664646, -2903935, -935766,
- 5253282, -4446365, -1407676, -4274030, -15199889, -10362682, 7630010, 16842714, -5834176, 3888019,
- -7456600, -10053445, 5845988, 26336740, 7368017, -5862631, -9360344, 2744484, 3045669, -5982890,
- -127238, -4556961, 3213173, -318364, 3651259, -3296924, -1692754, 5629092, 1268626, -10368051,
- -724239, -6957847, -7390565, 1864553, 1918777, -6515466, -2434173, -382252, -4071092, 4195646,
- -1759326, -2673617, 5421860, -278099, -2130304, -2258616, 1223529, 2669322, -3839164, 4912906,
- 2451890, 1596117, 3428458, 3914326, -1396401, -600759, 576599, 2164127, -557809, -2194192,
- -486405, -1676111, -97711, 435939, 1200443, -2514167, 1538672, 217970, 1250372, 548682,
- 1561221, 437550, -185757, -394600, -103616, 1751810, 157840, 1965484, -552977, -1502165,
- 1795296, 938450, -630286, 2432562, -973884, -348429,
- },
- {
- 32181654, 63592360, -3870839, -72375032, 5761162, -8029442, 1500017, 3553549, -5407901, 2251100,
- 4049617, -11272142, 16727824, 7095286, 8106214, 2356863, -4720706, 9621800, 14053133, 8148627,
- 5179731, 674847, 13095892, -484258, -5568962, 4265977, 2005213, -1316408, -2085744, -6883222,
- -1058173, 3423089, 784368, 11578695, -2215130, -1605244, -1748589, -1045825, 2112050, -2847027,
- 3645890, -1891933, 341450, -1623498, 5252745, 4449049, 6008123, -423591, 4600984, 1289564,
- 534723, -1355599, -5938866, -37581, 2595234, -1321239, -91805, -1416802, 4066797, 3901441,
- 4051765, -2313914, 2035278, 524523, 899259, -2517388, 2572149, 1560147, 444529, -929860,
- -1232119, 1806571, -155693, 602369, 1831267, -1100049, -4392678, -203474, 378494, 1765768,
- -1955284, 676994, 958315, -616865, -2404108, 1479079, -721018, 1052804, 332860, -798864,
- -442919, 484258, 176631, 555661, -1357747, -389231,
- },
- {
- -238371, -15433428, 2872796, -4152697, -4721780, -1336272, 792958, 1173063, -6529424, 64425,
- 12902082, -6025839, -256624, -769873, 20507932, -5670968, -7286949, 515396, 5925445, -3588445,
- 5298379, -12409234, -1108638, 8697846, 1326071, -5268315, 13338021, 4811974, 2731599, 6251862,
- 2638721, -24142012, 4104915, 5790153, -2288681, -6046777, 5301601, -4769561, -4044249, -7220914,
- -3259343, 3518115, -5116380, 5692443, -929860, 4743255, 3775276, -1994476, 1154809, 2066953,
- 1273458, 175557, -1156957, -690416, -73551, 4362613, -730681, -990527, -79457, 2691871,
- -878321, -2461016, 1182727, 2018098, -242129, -2027225, 2076080, 365609, -916976, 3282429,
- 1459215, 721555, -1602560, 1111323, 1966558, -2938295, -46708, -2182917, 183610, -942745,
- -1036161, 751082, -651761, 103616, 1712618, -1181653, -709743, 1480153, -485868, 188979,
- -553514, -797253, -519154, 462783, -2276870, -1272384,
- },
- {
- -15086609, 72861976, 43891344, -3354370, -19514184, 51233592, 14260902, 13674102, -28341416, -9874130,
- 21878564, -8699993, 23564338, -11438572, -17554068, 6754373, 1728188, 9379672, -2882997, 2542084,
- -8355322, 2177549, -11584601, 452582, -11810086, 3489124, -2291365, 7246684, 5875516, 3568044,
- 6949257, 10433549, -5005248, -4950487, 3414499, -2515777, 8135205, 1796907, 6225555, -1140851,
- -6160057, -4936528, 506806, 4926865, 2473901, 233539, 1488743, -879931, -6782290, -1007707,
- 7410966, 1847910, -3012383, -2905546, 946503, 2818572, -856846, -2328409, 4034048, -1147293,
- -3266860, 1114544, 3817689, -1693291, 4791036, 2157147, -1068373, -1962263, 547608, 1726040,
- 2136746, 11811, -2022393, -1399086, -137439, 615254, -2698313, -1173063, 326418, -133144,
- 1890323, 1726040, -476741, 1735704, 762357, -683974, 2173254, -1348083, -1238561, 1753957,
- -70330, 1164473, 293132, -1101122, 816044, -1650341,
- },
- {
- -3325915, -5735929, 13203266, -8463770, -4737886, -11758547, -2097018, -2365990, -7552700, 6784975,
- 1888175, -8814347, -13788456, 5544266, 9149891, 2092186, -3321084, -7883950, -6104759, 12023224,
- -8370355, -10235444, -12786655, -7198902, 5576478, 10813654, 13027710, 10971494, -8664560, 14363981,
- 2422899, -1923609, 6240051, -7222525, 5076115, -7339562, -491774, 2947421, -1137093, -573378,
- -2589865, 2343979, -2508261, -2218888, -726386, 937914, -672162, 6390375, -2434173, -8750459,
- 2098629, 3171297, -1127429, -935229, -895501, 3220152, -4112968, 1904818, -613643, -1069447,
- -1504312, -2078764, -366146, -1642825, -1453310, 3433290, 407485, 1807644, -390842, 2846490,
- 2299955, -2761127, -919660, -2661269, 1276679, 690953, 1571958, -3497714, 918586, -1272384,
- -270583, -154619, 2058900, 122407, 68183, -143881, 969052, 736587, 2027225, -508954,
- -1065152, -2036888, -467078, 483721, -1093606, 275415,
- },
- {
- -18874234, 44227964, -3861176, 12754979, 15445239, 37826852, -9736154, -4093641, 397284, -8963060,
- 4036196, -5177583, 3308736, -7539815, 17624398, 15014669, -22082574, -3470871, 6119255, -13861470,
- 14975477, 8631274, 4588636, -8352638, 2279017, 10916733, -3059627, 338766, -7067906, -4647692,
- -767725, -1570347, 5952825, 2773475, -655519, -220654, 1540283, -8207146, 1588064, 7864085,
- -1398549, -345745, 5530844, -339302, -7585986, -5122822, -7178501, 1101659, 2219961, 750009,
- -2980707, -1328219, 36507, 1538135, 1633698, 2867965, -5558225, 758599, -878321, 938450,
- 1582696, -816044, -1089311, -3715147, -892816, -1175747, 725313, 1531156, -1467268, 693100,
- 64425, -1327145, 1815161, -833761, -1720134, 537408, 2209761, -737661, 2665564, 3099893,
- 2377801, 1286880, -1227824, -451508, 180926, 383326, 457951, 577136, 165356, 1734093,
- -287763, -938987, 1265942, -1505386, -1150514, -1427540,
- },
- {
- -591632, 27997282, 7424925, -5256503, 1422708, -3107409, -5856725, -5637682, 5863167, 169651,
- -3944391, -6545530, 7937100, 22490060, -5130876, 899796, 556198, -9468255, -3127273, 6342593,
- -5410048, 3562675, 4058744, 10136123, 8414378, 40802, -8066486, -3230352, 23533200, -9019431,
- 9713069, -15373835, -4191351, 2102923, -744640, 12991739, -7379291, 1067836, 3291019, -23085,
- -3267933, -6679211, -1974611, 5632313, -4345970, -3401077, -6397891, 281320, -1269163, 4410932,
- -150861, 4032438, -2160906, 3899294, 593779, 358093, 5440113, 469762, -5784784, -621697,
- 1567126, 2366527, -119722, -112743, 1507534, -360240, 3050501, 25233, -3048890, 985695,
- -4101694, 1039382, 1575179, 1317481, 502511, 190052, -1862942, 1003412, -4095251, -1149441,
- 643171, -2606508, -1045288, -600759, 2560338, 163209, 2149631, 2733747, 1036161, -741419,
- -177167, -792958, 2411624, -1479616, -23085, 955630,
- },
- {
- -3911642, 74225624, 842350, 11839077, 3970161, -10313827, -15995532, 14695231, -11477763, 11666742,
- 17424146, -2024540, 6116571, 3003793, -12850542, -5611375, 10729902, 22621056, 6170258, 106837,
- -579284, -19861540, 2174327, 3451006, 3439195, -14160507, 2755759, -8979166, -1130113, -5528160,
- -19163070, 7596187, 3686693, 388695, -6354404, -7865696, -2995203, 2916283, 10249939, -2375117,
- 6003291, -1229971, 889058, -2434173, -3849365, -8791261, -4589173, -1145683, 2659659, -4023848,
- 3291019, -4555350, 2819109, 439160, -3688840, -1522029, -4255776, 2043331, 2949569, -4974646,
- 1079111, 1171452, 3034395, 1556926, 2961917, 2733747, 1698660, 375273, -502511, 1486596,
- -839666, 838592, 5572183, -1178969, 1401770, 500364, 1679332, 327491, -704912, -399432,
- -2472828, -453119, 845572, -1938641, 1217623, -1865090, 74088, -1056025, 1767379, -71941,
- 56371, 1624035, 493921, 2062658, 359167, 485331,
- },
- {
- 1656247, -25487410, -9934796, 14742475, 5921686, -1115081, -2742337, -1559610, 7475391, -3354906,
- 2627983, -1100049, -1352378, -32716914, -37142876, -14634027, 13240847, 2342905, 2918430, -3411278,
- 6861211, -19553376, 678605, -12270722, 1207423, 9381282, 4010963, 1039919, -11629698, -4138738,
- -6039798, -3569655, -2925410, -9548786, 7026567, 7851200, 6425808, 5459441, 178778, 1548336,
- 627602, 6357626, 1314260, 4202626, 986769, 2716030, -2341831, -1483911, 3834869, -1494649,
- 4696547, 5708549, -1408212, 4562866, -2094333, -899796, 1893544, 2385318, 888521, 702764,
- 3688303, 2319282, 1207960, 1124745, -6634114, -2338073, 2220498, -4094178, 2284386, 898185,
- -3221, -1778653, 1110249, 395137, -2049773, -1140851, -438087, -703301, -2543695, -1285806,
- 3903052, 1261110, 948651, -2174864, 2483565, 1568737, 1621887, -1405528, -600759, 1681480,
- -128849, -1224603, 710817, 1846299, -1003949, -144418,
- },
- },
- {
- {
- -17922898, -48811768, 40914396, 7658464, 20284056, -3288334, 7634841, 6793028, -6800544, 4177930,
- -12203613, 7945690, -849867, 893890, 850940, -6278706, -491774, -10128070, 9611063, 6929393,
- 9797357, -3849365, 2189897, 3351685, -1379758, -2063195, -8559870, 639950, 1933809, -4072166,
- 2137820, 3376381, -8239358, 3303367, 6590091, -149250, 6248104, -2746632, 5385352, -484258,
- -7560216, 2869575, 6861211, -1263794, -454730, -270583, -3376918, -1841467, 2563559, 5669894,
- -3828427, 3426310, 2271501, -656056, -2632815, -949188, 636192, -3030100, -862752, 763967,
- -887448, -4828617, 1200443, -2489471, 1717987, -584652, -1471026, -2604898, -1319629, 358093,
- 169114, -1224066, 62277, -3749507, -1428077, -265214, -1583769, -1729798, 183073, 31675,
- -2241973, 284005, -1590212, 1859721, -177167, 33823, 485868, -2467459, 1826972, 753767,
- 352187, -1176284, -382252, 1568737, 799938, 1412507,
- },
- {
- 398895, -50371912, 4351339, 35530652, 8644695, -2182917, 2714956, 3412889, 4051765, 9238475,
- -22604412, -5197984, -5162551, 5028870, -3781719, -5731634, -219580, -3669513, 4454418, -12249784,
- 3700114, 2586644, -25677462, -8829916, 16107201, 1578937, -1276142, 1908576, -10952703, 3087545,
- 1451699, 1651952, 6993818, -4965519, 306016, 2507724, -4327717, 841277, -5055177, 1333587,
- 6892349, -127238, 3375844, -1846299, 2399276, -2296197, 3857954, -317828, -1863479, 790811,
- 688805, 136365, -4758287, 1417876, -1617055, 375273, 592706, -7109245, 72478, -786516,
- -1122060, 237834, 171799, -93416, -941135, 1967632, 1338956, -334471, 1482301, 1638530,
- -1826972, -833761, 1770600, -738198, 46708, -3118146, -1665911, -883690, 824097, 1396401,
- -269509, 2622078, 117575, 790274, 443992, -207232, -1308354, -191663, 857383, 688269,
- -1421097, 980326, -108985, 358093, -634045, -1442572,
- },
- {
- 1568737, 97345432, -13851806, -38049652, -11704323, -15569, 1778653, -10835666, 5322002, -3031173,
- -2354716, 10647761, -13232257, 9705552, -898185, 2973728, -6304475, -1122597, -21660594, -7543573,
- -15393700, 10615549, 341987, 9339406, 9007620, 1962800, 9303973, -2695629, 639413, -3726958,
- 2518462, -2469606, -7058779, -11790759, -2617783, 5099200, -8852464, 408022, -4344897, -972273,
- -173946, -105764, 5855651, -815507, 3957812, -577136, -5141076, -521302, 2938295, -2113124,
- 2912525, 2651606, -3394098, -671626, 801011, 1675574, 5542656, -1474248, -2212982, -244276,
- 1782948, -4373888, -1712081, -3389803, -416075, -192200, 1170916, -1421634, -1141388, 2051384,
- -772557, -1189706, -1367947, -1782411, 1855426, 1057636, -735513, -2790655, 1218160, 367757,
- 1574106, 1138703, 2609730, 0, -885300, -186294, 2148021, -388158, 492311, -1740536,
- -340913, -908922, 11274, -1341104, -48318, 1611687,
- },
- {
- 5318780, 21294984, -2908230, 24933896, 16194711, -142808, -1119913, -5555540, 5359583, -10623602,
- -436476, -3577171, -360240, -4006131, -6556805, -237297, 10067403, -1958505, 6516539, -928250,
- -4416837, 1673964, 16700443, -3767223, 689342, -9963250, 10787347, 4887136, 14727980, -6762963,
- 2408940, 8730595, -3306051, 6798933, 3084860, 5634460, -7124814, 1520955, -6474663, 1297617,
- -1883343, 7269232, 4651450, -132607, -4793721, 2015413, -7808788, 3165928, 1682554, -713501,
- 3589519, -1287953, 221728, -1829656, -5152350, -89121, 4058207, -478352, -3774740, 4298189,
- -641561, -3065533, 3036542, 2821257, -2368138, -126702, 3865471, -354335, -2796561, 1432909,
- -1006633, -2725694, 4056597, -171799, 796716, -1218160, 564251, 1264331, -1749125, -74088,
- 685584, -31675, -2454574, -3012920, -1083942, -1437203, 558883, -835371, 1231045, -821949,
- -724776, 373662, 1922535, 1209033, -529355, -1032940,
- },
- {
- -421444, 31644782, 2076080, 7392713, 571231, 1188095, -243739, 876710, 6556805, -435939,
- 1864016, -5512054, 4799089, -10408316, 32890322, 27511414, 6949794, 5899675, -10787347, 1810329,
- 3302293, 2691334, -4044249, -785979, 6157910, 15213848, -992674, 109522, 4479114, -11978664,
- 4850092, 35433, 405338, -3947075, -14046154, -117575, 177704, -1757179, 1240709, -5428302,
- -2019708, 2659659, -3290482, 7524783, 517007, -6837588, 2475512, 1256278, -2747705, 2621004,
- 1028108, -3474629, -2000381, -4377646, -161598, -3124052, 5933498, -1326071, -427886, -1421097,
- 111669, 967978, -2405182, -1187022, 848793, 3402688, 440234, -5037460, 2598992, -1087164,
- -974421, 1452236, -2212982, -1796370, -1211181, -2297808, 338229, -974421, 79994, 1328219,
- 1968169, -1489817, -130997, 380105, -1281511, -1589675, 433792, 811212, -1086090, 128849,
- 806380, 18254, 1026497, -685584, -768799, -387084,
- },
- {
- 15926276, 51602420, -3301756, -41211820, 8722542, -4752382, -376347, -9687299, 17190070, 2457258,
- 13626321, -5860483, 12317429, 13314399, 3207804, 1108102, -3855807, -7742216, -6186364, -4198868,
- 13327284, 5506148, -5055714, 8139500, -7185481, -5068599, -5275831, 6968585, 3324842, 7747048,
- -5158793, -6700149, 856309, -858993, -1903744, 5409512, -652298, -6102075, -3009698, -2188286,
- 1651415, -514859, -816044, -11839077, 4660040, -5050345, 1513439, -1069447, 1114544, 1217086,
- -1378685, 3502009, -821413, 2212445, -472983, 387621, 316754, 1155883, 3007551, -1799591,
- -1618666, 4117263, -2944737, -1479616, 532576, 2139431, -2029372, -2375654, -1442572, -249645,
- -357556, 1441498, 1233193, 2821257, -1186485, 1094143, -181999, 1175747, -893353, -1403917,
- -1696512, -172336, -253940, 1821603, -835908, -1389959, -525597, 31675, -1325534, -861678,
- 1019518, 469225, -277562, -163209, 1152662, 701153,
- },
- {
- -377957, 6656126, -570694, 91805, -534723, 1269163, -412854, -1899986, -2480344, 5179194,
- 117038, -5881421, 128312, -5507222, -22090090, -4547297, 13220446, 14396730, -2314451, -8690329,
- -10775536, -2207076, 9816148, 6285148, 21678310, -9965398, -12106439, 6315750, -2206540, 1492501,
- 4808753, -8807367, -461172, 4791036, -2209761, 1311576, -426812, 6840809, -1763084, -3136937,
- -191663, -12137578, -5427765, 4345970, 227633, -3889093, -3843459, -4833449, 3993783, -2276333,
- 300648, 1225139, -1373316, 2249489, -2174327, 1245541, -645856, 8053, -1394254, 4545149,
- 2760590, 996969, 2545842, 5019743, -1651415, -2346663, 3282966, 1879048, -2164664, -841277,
- -217970, -565325, -672699, 1107028, 218506, -2032593, 956704, 883153, -329102, 901943,
- 2758980, 912681, -1319092, 1035624, 93416, -721555, 1835562, 1019518, -110595, -2262374,
- 1587527, 1063541, 1116155, 1064615, 194884, -1904281,
- },
- {
- -29520920, 172526144, -16822850, -67843304, -612570, -6914361, -3679176, 6975564, -12579959, 2711735,
- -8429947, -8415988, 18662170, 10708427, 7861401, -11396159, 10066866, 2762738, 16483011, 19743964,
- -643708, 7028714, 4495220, 399969, -7995619, 11785390, -11155104, 10470057, -5965710, -9832254,
- 1247688, 920197, 4343286, 8963597, -1405528, -2172180, -2979097, 1888175, -4242891, 459562,
- 408022, 1686848, 3610457, -3844533, 5048734, 6953015, 1114007, 3618510, 6769406, -4287988,
- -427886, -247497, -6951942, 673236, 4310000, -1596117, -641561, 2324651, -1008780, 2763812,
- 4222490, 2374580, 333934, 296353, -2292976, 1879585, 1033477, 2272575, -280784, -739271,
- -26307, -362925, 2020245, 883153, -274341, -2424509, 927713, -2274185, -669478, 2710124,
- -1907502, -703838, 1423245, -1009317, -1001801, 2592013, -1632625, -949725, 1822677, -410169,
- -1015760, -1030255, 1742146, -206158, 316754, -872952,
- },
- {
- -1660005, -5536750, -3141232, -7601555, -1559610, -2469606, -1204202, 1952600, -5657009, 2226941,
- 6211597, 1694365, -2158221, 8636642, 5944235, 9813463, -14955076, -6381248, 9368397, -664646,
- -5612986, -2769180, 7068443, 7958038, -3039226, -7044283, 19133542, -6298033, 16243029, 3271155,
- -5973226, -4893042, -10113037, 694174, 2111513, -10334228, 5807870, -1711008, -10573673, -3864934,
- 2595771, -976568, -155693, -901943, 3955128, 3256659, 4625680, -1935957, -2545305, 1900523,
- 4504884, 859530, 1507534, -2916820, -91268, 1766305, 2265059, -1065152, -1507534, 3924526,
- -3128347, 1266479, 486405, 2400887, -989453, -115964, -242666, 2507724, -5906, 2595771,
- 1288490, -898722, -2071785, 2562485, -397284, -2978023, -182536, -539018, -911070, -988916,
- 714575, 1171452, -2106145, 659278, 2400887, -1752347, 258235, -157303, -556735, -122943,
- 1316408, -2028835, -435402, -58519, -2858301, 591632,
- },
- {
- 19713364, 58990304, 32221918, -13069049, -5414343, 16208133, 29895120, 17799418, -17570174, -1387811,
- -38118, 8681740, 11990475, -8321499, -13669807, -4556961, 11411728, 2044404, 7410429, -6131066,
- -7952669, -614717, -4152160, -1427003, -1443109, 1939178, -3182034, 8316131, 2842732, 1198833,
- 8251169, 12778065, -9841918, 2344515, -2312303, -517544, 6093485, 3437585, 3146601, 2921115,
- -7170448, -945430, -4278861, 2223183, 5556614, 3038689, -2796561, -519154, -3551401, -1225676,
- 6886980, 2946348, -2697240, -3559454, -4308389, 1343251, 2966212, -942208, 1789391, -82678,
- -1241782, 399969, 3131031, -200253, 395137, 5722507, -2416993, -3118683, 3770981, -548682,
- 230854, 1258962, -90194, -424665, -418222, -114890, -1626182, -2308545, -52613, -813896,
- 1820529, 1423782, 2917894, 1242319, -753230, -846645, 2720325, -1467268, -74625, 536334,
- 78920, 645856, -450972, -861141, 1394791, -1844689,
- },
- {
- 4272956, 1826972, -612033, -1063004, -3903052, -14203994, -2729452, -9089225, -5561446, 12307229,
- -2868501, -19778862, 1758789, 1130113, 18000744, -2808372, -3022583, -12982612, -6328098, -1384053,
- 10560251, -18323942, -5172215, -6522445, 490163, 12384538, 12629888, 3689377, 1919314, 8423505,
- 6067178, 587337, -1013612, -2597382, 653372, -4502200, -2498597, 513249, -976031, 2051384,
- -3516505, 479963, 2074469, -2662880, 3843459, -2017024, -2050310, 467078, 2464774, -3863860,
- 1416802, 1480153, -3286724, 224949, -1279363, -1289564, 2695092, -940598, -1305133, 245350,
- -2116882, -380105, -1634772, -1200980, -898185, 2205466, 908386, 3098282, -747861, 325881,
- 952409, -1496259, -2785823, -301185, 1480690, -2064806, 163209, -1964411, 2379949, -1520418,
- 158914, 1469416, -1160178, 1509144, -1057099, 106300, -682900, 982474, 1979443, 221191,
- -105764, -2152316, -1344862, 1498944, -1371168, -743029,
- },
- {
- 27001386, -23561654, -8497056, 12603582, 37156300, 2367601, 13393319, -13517873, 9955197, 130460,
- -11165841, -10355703, 7596724, 5139465, 16690780, 7738458, -3675418, -21801790, 6060736, -6639483,
- 14820858, 8514773, 4898410, -8810589, 5000416, -1491964, 3709241, -3332895, -86436, -5801427,
- -3139621, 6777459, -1931662, 7321846, 291521, -4569309, -4660577, -517007, 3610457, 2711198,
- -686658, -2878702, 12171937, -7087233, -8344048, -7835094, 435939, -2306398, 3605088, -5280126,
- 746251, 435402, 1208496, -2337536, 883690, 2087891, -868657, -3455301, 70867, 380641,
- 3259880, -2294586, 1282585, -3191161, -1871532, -586263, 108985, 489626, -1422171, 1645509,
- 211527, 856846, -476205, -306016, -755377, -462246, 2056216, -1979443, 4622459, 3700114,
- 1136556, 175020, -1016834, 488553, 568546, -1182727, 684510, 849867, 1829119, 1094680,
- -750546, -169651, 142271, -61740, -1312113, -1174137,
- },
- {
- 369367, 40541808, -5799280, -1153199, -5980742, 1942936, -4285841, -6754373, 670015, 1266479,
- 1635846, -3088618, 1436667, 37143416, -21920976, 12386686, -3530463, 251792, -13879724, -6087043,
- 3866008, 688269, 12385075, -5033702, 6726993, -4202626, 6855842, -1320703, 9465034, 13624173,
- -15788837, 221728, -4722854, -2398739, 2338610, 2870649, 6657200, -8189429, 7460895, 1284195,
- -4473746, -6015102, -239981, 4168266, 536871, -8211978, -4081830, 220654, -1937567, 5119601,
- -621160, 9033927, -2569464, -2047626, 1216550, 5122286, 1361505, 1074279, -2717641, -2374043,
- 323733, 5069135, 564251, -409633, 391379, 3717294, 3321084, -394600, -1100049, -5673115,
- -2901787, 1468879, 294205, 3901978, 1433445, -898722, -1894081, 555661, -4216048, -801011,
- -1422171, -1446330, -1067836, 811749, 2382096, 296353, 1461363, 3179350, 857920, -212601,
- -1681480, 106837, 971736, -2766496, 1236951, 819802,
- },
- {
- 17496624, 51660404, -12904229, 5289789, 20058034, -31362924, 6268505, 4468914, 2243047, 1233193,
- 21031918, 9259949, -3111167, -15018964, 10395431, -10577968, 22697828, 11752641, 18256832, -8007967,
- -10642392, -2289755, -3352222, 11173357, -6918656, -10633802, 10370199, -9840307, -1749662, -13008382,
- -3925063, -2441689, -1644436, 6672232, -10173167, 344134, -5509370, 5042829, 666794, 4046396,
- 6479495, 1690607, -595390, -8472360, -3124589, -6601902, -10840497, 5272073, -1462973, 6732361,
- -8194798, 2027761, 1650341, -290984, -4099010, -5447629, 2132988, 3694746, -3954054, -2827699,
- -6979, 1681480, 3291556, -872415, 5140002, 1698660, 5920076, -3435437, 2946885, 1820529,
- 265214, 1014149, 2603287, 678068, 2550674, -75162, 3469797, -1983738, -2277407, 37044,
- -1552094, 639950, -433792, -188442, -719944, -884226, 269509, -1105954, 508954, 1158567,
- 170725, 1311039, 353261, 1132798, 1515050, 343061,
- },
- {
- -761820, -39068096, 1888175, 20786032, -2838437, 132070, 1415729, -1423245, 6974490, -7182259,
- 3440269, -454730, 534187, -14348949, -66022236, 4495220, 310311, 979253, 3915400, 834834,
- -6103686, -5213017, 2832531, -12834436, 1449015, 4178466, 3549254, 4202626, -5554467, -3209951,
- -6424734, -10044318, -3864397, -7978976, 4442607, 8453033, 8055211, 6149857, 1486059, -1955821,
- 5450314, 1040993, -54761, 2527588, 2624225, -1583232, -1420560, 4031364, -1556389, 2724083,
- 1400696, 3811247, 2952790, -1334124, -1482838, 2901787, 1138166, 1835562, 2647311, 4103841,
- -3389803, 5289789, -72478, 723165, 76773, -8130373, 1658931, -660351, 587337, 1069447,
- -1515587, 1139240, 642635, -333934, -338766, -2157684, 243203, -365609, -1064615, -4286914,
- 2867428, 3413962, -1351841, -265214, 1168768, 1239635, 1084479, -313533, -39728, 2312840,
- -492848, -2641942, 1062468, 2405182, -1775969, 706522,
- },
- },
- {
- {
- 16249472, -134402944, -42671572, -33271502, -20793548, -1506460, 8770323, 3401614, -2864206, 8311299,
- -9752797, 3587372, -1257889, 8520141, 2009508, -11514270, -11996381, -12722767, 11769284, 3686693,
- 6241125, -3910031, 5632313, 7292855, 5206574, 2676838, -6100464, 3029026, 1694365, -6947647,
- 7935489, 5227512, -4959614, 3840775, 5111011, -4668630, 5569499, -4420058, 5802501, -508954,
- -2932926, 4121021, 2786360, 1535988, 4745939, -77846, -3180423, 5613523, 5784247, 7140383,
- -959925, -1165010, 103079, 5637682, -903017, 1801202, 7313256, -1149441, 176631, 3036005,
- -3228742, -5164698, 6003828, 897648, 2729452, -1266479, -30065, -174483, -241055, -1120450,
- -2076617, -2520609, -1152125, -4974109, -459562, 2190970, -13959, -816044, 442919, 1759863,
- -992674, 983011, -865973, 2135673, 350577, 1151588, 1334124, -1669132, 1241782, 703301,
- 1003412, -871878, -210453, 1176284, -1199370, 49392,
- },
- {
- -742493, -49639620, 2505577, 14337675, -7592429, -4543539, -1827509, -6411313, -8631811, 283468,
- -9212705, 4908611, -5167920, 22510460, 12623983, 8179765, 13934485, 6331856, 5763309, -5328981,
- 10313290, 4184909, -18249852, -15202574, 15294915, 1313723, -14090714, -2485176, -11684459, 3096672,
- -1819456, -3870839, 3021510, -1613297, 411243, -317828, -5314485, 858993, -339302, -375273,
- 497679, -7032472, -2941516, -796180, 4738960, -5986111, 3537979, 1728724, -6084895, -1722282,
- 250719, 628139, -1292248, 1087701, -5468030, 503585, 6296959, -3795141, 614717, -2341831,
- -113280, 1933809, -416612, -3089155, -4585952, 2978023, 1238561, -3520263, -981400, 1734630,
- -1222992, -680752, 2254858, 540629, -894427, -3868155, -2298344, -2235531, 765578, 695248,
- -1911261, 2572149, -1283122, 957778, 1225139, 235149, -1017907, -613107, 15569, -931471,
- -1932198, 470836, -32212, 202937, -558346, -67646,
- },
- {
- 634581, 120387936, 7793755, -5623723, 2185602, -3267396, 4303021, -7961796, 2873870, -6223945,
- 595927, 12086038, -2762201, 7085086, 3391951, 13285944, -9684078, -3532074, -9214315, 7907572,
- -11439645, 3443490, -3809636, 9103183, 4060355, -5661841, 5193689, -3288871, 3019362, 2487860,
- 1156420, -1512902, -3038153, -2670396, 1329292, 2958159, -4975183, 10426033, 3538516, 3307125,
- -6008659, -7160784, 8212515, -1720134, 536871, 4270808, 3689377, 1010391, -310848, -1268626,
- 7288560, -573378, -4148402, 1417876, 512175, -662499, 3575560, -1238561, -1743220, -3082713,
- 1369558, -2830920, -1654099, -3849901, 2066953, -395674, -972810, 448824, 32749, 969589,
- 114890, -1738925, -1581622, -838592, 2705293, 1573032, 482110, -1403381, 1764158, -1473174,
- 1160178, 346819, 1333587, 415001, -431107, -940598, 1293859, -423591, 867047, -893353,
- 1371168, 299037, 799401, -205085, 1359894, 2150705,
- },
- {
- -19335942, -9638443, 12137041, 20390358, -1625645, -5126581, -393526, -1123134, 11478837, -9889699,
- -4105452, -441845, 2448668, -8178692, -5327907, 6604586, 8589398, -10649908, 11745125, 5706938,
- -1305670, 8080444, 20111722, -9400073, 1958505, -9896678, 6873559, 876710, 2838437, -12863964,
- -1367410, 5334350, -5519570, 5368709, 4073777, 9252970, -8234526, -1233729, -3882114, 1094680,
- -8451959, 900333, 2556043, -345208, -7982734, -2492155, -4133906, 1167157, -4483946, -485331,
- 10656351, 660351, -907849, -1445257, -2181844, -609349, 657667, -3506841, -2368138, 7139310,
- -646393, -1995012, 2818036, 4771709, -1210644, -1717450, 2233920, -1149441, -1238561, 2617246,
- -743029, -3921842, 2257542, -2700461, 244813, -612033, 879395, 1398012, -1036698, 762357,
- 1294396, 687195, 814433, -824634, -754304, -694711, 2180770, 1038308, 2239826, -1023276,
- -677531, 305480, 897111, 478889, 26307, 393526,
- },
- {
- 1083406, 27699318, 471373, 8534637, -1181653, 1175210, 2109366, 447750, 1962263, -2615098,
- 6147709, -2649458, 4903779, -1956895, 18233210, 6892349, -2754685, -10388452, -7729868, 9918153,
- 4383551, -1096290, 4519916, 14379551, 15080704, 16525424, -11065446, -14896557, -4568235, -7689065,
- 19394462, 22049826, 12404939, -4872641, -7836705, 805306, 1348620, 2557653, 7480760, 1422171,
- 236760, 1541356, -7033546, 1092532, -468688, -4798016, -1521492, 1222455, -1592896, 1973001,
- -1716913, -6173479, 159988, 1611, 3031173, -1187559, 2662343, -4459250, -4288525, -481573,
- 1462973, -3139621, -1251446, 388158, 1141388, 6081674, 841814, -7903277, -223875, -2296197,
- 784368, 1996623, -3290482, 471373, 2056753, -3772592, 553514, 811749, -1910187, -75699,
- 1497870, -3740380, -470836, 438087, -1451162, -253940, 810675, 136902, -1033477, -453656,
- -1030792, -1040993, 90194, -547071, -273804, -1443646,
- },
- {
- -37085968, -3175592, 26751204, -49744848, -5713917, 381178, 3424163, 758062, 19264002, -18629958,
- -12644384, -10681584, 10582799, 6469832, 5913096, 1042066, 4372814, 551366, -6529424, -6455336,
- 12527883, 3568581, -8284992, 13803488, 337692, -5063230, -710817, 13127031, 3751654, 3027952,
- -8577587, -7648800, 470836, -154082, -2962991, 7205345, 801548, -2681670, 5364414, 688805,
- -1675574, -5217312, 720481, -9205726, 8171176, 1372779, 4813048, -1410897, -948651, 4630512,
- 1344862, 4310537, -1165547, -693637, -2689187, 2294050, -102542, -556198, 543850, -1575716,
- -3024194, 1446867, -2433099, -1007170, -1199907, 217433, -899796, -121870, -1242319, -1336809,
- 1226213, 3098819, -1845762, 95563, -818728, 2579128, -457951, -376883, -1760937, -674310,
- -1065689, 496069, 27380, 1345935, -1142461, -1438277, 9664, -236223, -1577327, -1204738,
- 683974, 324270, -462246, -329639, 574452, -64425,
- },
- {
- -608275, 10902238, -3114388, -1108102, -2225330, 437013, 338766, -2323577, -4221953, 1062468,
- -4439923, -1677185, -46708, 4671314, -16626355, -3988951, 7506529, 2445447, -9139690, -19271518,
- -9068823, 2660732, 4190814, -7638600, 15633144, -16717086, -18333604, 10743324, 4198868, 3293166,
- 11108933, -6312528, 3776887, 6075231, -4214974, 3198677, 3554086, 4799089, -4491999, 3614215,
- 2990908, -5092758, 1839857, 4953171, 1074, -1436130, -504659, 389768, 7070053, -4108136,
- -39192, 807991, -2530273, 5314485, 781684, 2245194, -4145180, -3234647, 691490, 3062312,
- -655519, -2206540, -1619740, 2479807, -1923609, -3077881, 2535641, 915365, -2372970, 561030,
- -764504, -1604707, -853625, -707059, 831076, 314606, -38118, 81068, -34360, -499827,
- 435402, 535260, 456877, 1042603, -657667, -712965, 818728, 37581, 239981, -1768453,
- 650688, -163746, 961536, 583042, -37581, -1360431,
- },
- {
- 14976014, 281923264, 21198348, -61312804, 3754875, -18498424, -16544751, 10606422, -9171366, -2318746,
- -10026601, -4465692, 10733660, 3813931, 12820477, -12083354, 6553583, -1261647, 3656091, 9573482,
- -12599287, 4013110, 5969468, 2042794, -8953933, 5364951, -13979045, 11010686, 3438658, -3187403,
- -6216965, -1959042, 733903, 4506495, -6046777, -5592585, 906238, -1959042, -4255239, 3176128,
- -703301, 7000260, 5124970, -1385664, 998580, 3030100, 2177012, 346282, 3795677, -2960306,
- -1358820, 1610076, -3512210, 3596498, 6866042, -574989, 362388, 4835597, -3791919, -1629940,
- 2299955, -258235, -855772, -623307, -3439195, 3582540, 623844, 139050, 877247, 2188823,
- 381715, -1562831, 2276333, -40802, -2391223, -100932, 4891431, -1482301, 56908, 1310502,
- -1997160, 520765, 1163399, -905701, 276489, 2858838, -549756, 111669, 832150, -1535988,
- -741956, -768262, 1816234, -941672, 1039382, -1190243,
- },
- {
- 235686, 6306086, -2129767, -3323231, 3268470, 215285, 268435, 4363687, -1561758, -1597191,
- -1024350, 2782065, 112206, -1106491, -5801427, 16695075, -933619, 3685082, -4267050, -16916802,
- 2094333, 7296076, 4729296, 10850698, -3558381, -9814537, 14923938, 1022739, 12310987, -6218576,
- 588947, 89121, -11913166, -5306969, 210990, -8686034, 169651, 1562294, -6075768, -4252018,
- 2053531, -5383205, 2647847, 1675037, -2879776, -3856881, 3376381, 1239635, -2741263, -446677,
- 6194417, 1316944, 4346507, 353798, 1884417, 1636383, 3304441, 855235, -457414, 2157147,
- -2645700, 4333622, 2591476, 3428995, 3008625, 1056562, -1184874, 2229625, -1072131, 2155000,
- -102542, -2067490, -1820529, 2463701, -868120, -1555852, 1342714, 1291711, -933082, -308701,
- 1781338, 1707786, -2070711, 431644, 2591476, -1139777, 334471, -1257352, -555661, 415538,
- 2148021, 168041, 333934, -207769, -1424319, 1364189,
- },
- {
- -24207510, 23035520, 38223060, -13353590, 1102733, -4734665, 993748, -2524367, -8170102, 13988172,
- 6904160, 7348152, -1865090, 5819681, -3546032, -17569638, 8893267, 3689914, 7053947, 331249,
- 7875360, 14031121, 3934190, 2495376, 1500017, 6081674, 688805, -1865626, -3077881, 1036698,
- -2586107, -1294933, -7098507, 3445638, -5219996, 737661, 1211181, -1665911, 1867237, 5891622,
- 1772748, 10703059, 248034, 2269890, 786516, -3497714, -5481452, 3403225, 702764, -1797981,
- 2701535, 1029182, -3369939, -969589, -1534914, 1074, -988379, -944893, 4449049, 1206349,
- -2430952, -1780801, 600222, 353798, 550830, 4443144, -2282238, -3533148, 3677566, -3573950,
- -6105296, -1057636, -802085, -1118302, 1805497, 1184874, 445603, -1606855, -459025, -450435,
- 1209570, 1705102, 3045132, 921271, -941135, -1494649, 3073049, -112206, -491237, -754841,
- -682363, -911607, 533650, 724776, 1748589, -794032,
- },
- {
- -4021163, 9318468, 17048872, 2770254, -3815542, -8587787, 15032, -9277129, -9339406, 1503239,
- -10606959, -14578193, -2614561, -620086, 23564874, -7195681, 4466766, -6135898, -4974646, -1437740,
- 12598213, -8606578, 6589017, -3118146, -6412386, -2063732, -2844342, -4600447, -1533840, 1083942,
- 4882841, -1552631, -339302, -2042257, -1417339, -1744294, 936303, -1277216, -5487895, -552977,
- -90731, 1250372, 113817, -2635499, 6245420, 2227478, -2241973, -5473399, 2641942, 4020626,
- 284542, -3043521, -3631932, 836982, -675921, -3199214, 1895691, -2439542, 574452, 2804077,
- -2866354, -148713, -597537, 1336809, -418759, -1162326, -345208, 2308545, -1541356, -363998,
- -459562, -2970507, -2939905, 8053, 911070, -1166084, 724239, -1640141, 3307662, -84826,
- -22549, 437550, -2661806, 1398549, -342524, 920197, -1497333, -1102733, -420907, -231928,
- 1171452, -769873, -1096290, 1728188, -789737, -731755,
- },
- {
- -18009872, -86291800, -6187438, 9612674, 35537096, -11175505, -1783485, -10249939, 13727252, 16193637,
- -5522791, -12617003, 15835544, 7472170, 7289633, 3082176, 15012521, -10553272, 51003, -10239202,
- 8406325, -3635153, -763967, -14561013, 1320703, -937914, 5115843, 1433445, 7259032, 466541,
- 3956739, 13673565, -427349, 4071092, -2409477, -9762998, -8972724, 2885144, -3316252, -6950331,
- -5372467, -4746476, 7467338, -8156143, -6565932, -5039071, 2948495, -4770098, 488553, -6590091,
- 3442953, -675921, -1246614, -731218, -4380330, -299574, 2479270, -4852776, -862752, 2279554,
- 4953708, -3192235, 257161, -4342212, -2566243, 1319629, -177167, -387084, -317828, 1260036,
- -492311, 1278827, 318364, 644782, 1944010, 413927, 1518271, -4006131, 912144, 739271,
- -1614371, -1867774, -856309, 1738925, -147103, -2111513, 1272921, 381178, 1118302, 664109,
- -402116, -691490, -894964, 1512365, 347355, -816581,
- },
- {
- 477815, 40863928, -107911, 9925133, -7327751, -9084393, -5891085, -3297461, 756451, 7288023,
- 7448547, 2427194, -13605920, 14792941, -17041894, 20251308, 537408, -1203128, -16160888, -4596152,
- 9256728, -11792370, 2690260, -5161477, -8950712, -4821101, 15220290, -4359392, -12011413, 6461779,
- -20528334, 8842801, 35970, -7094212, 1675574, -7294465, 2731062, -9826885, 3344169, -463856,
- -4012036, 204548, 4400731, 551366, 4582730, -2236604, -858993, 2520072, 1409286, 4903242,
- -3898220, 3312494, -4852776, -124017, 3510062, 7422241, 2422899, 3701188, 1957431, -2134062,
- -53150, 6704444, -749472, -570694, 1052804, 2603824, 2399276, 1350767, 408559, -4201015,
- -1581085, -135828, -2333241, 842887, -1134408, -2985539, -1102733, 1549946, -2380486, 1984275,
- -564788, -2486249, -2146947, -1117228, 1099512, -179315, 171262, 1625108, 483721, 591632,
- -1694902, -634045, -367220, -2666101, 1319092, 672699,
- },
- {
- -23490250, 6266894, 2109903, -8274792, 5084705, -16029892, 15811385, -10472204, 6534256, 7429757,
- 6218039, 355409, -2602213, 8752606, 32084480, -16360067, 13501230, 678068, 11709155, -16069620,
- -14100915, -2319819, -6964290, 15744276, 1251983, -7045894, 14754286, -7060926, -1191853, -8281771,
- -258235, -7718593, -174483, 12542915, 282931, 8591545, -10551124, -4535486, -4117263, 895501,
- 1418413, -5279589, -2631204, -6894497, -967441, 1637456, -3020973, 5878200, -2502892, 12242267,
- -5702643, 1090922, -1971927, -1538672, -3928821, -3039763, 2700998, 2313377, -5864778, -2942053,
- -1212791, 1447404, 3438121, -2990908, 1566053, -1193464, 4680978, -4078072, 2787434, 1639067,
- -41339, -375810, 78383, 2410551, 4364224, -738198, 1234266, -3605625, -3306588, -1011465,
- -525060, 1444183, -1217086, 1606855, 764504, -187905, -164819, -1034013, -117038, 102005,
- -823560, 992674, -468688, -966368, 1432372, 1376000,
- },
- {
- 635118, -53541600, -13065291, 10757282, -235149, 372052, -6870874, -1023813, 5964099, -8774081,
- 696322, 11097659, 7633231, 43961136, -2016487, 289910, -4671851, 2466922, 15648713, -104690,
- -9882183, 1400159, 9990094, -5608691, 143881, -1761474, -8461622, -13051869, -20360830, -2785286,
- 8078297, 881005, 2838437, -2936684, 461172, -5663988, -4621922, -4006668, -3861713, -8370892,
- -1944010, 3724811, 1448478, -3083250, -5521181, -1896765, 4044249, -4367982, -5900748, 7043210,
- -3881040, -2958696, 784905, -2890513, -2965138, 4730907, 1681480, 2163590, 3253438, 2809446,
- -5385352, 3978214, -1458678, 1483911, 6099928, -3858491, 2145336, 853088, 69256, 1865626,
- -558346, 2465311, -136365, -1239098, 1234803, -730681, 2783676, 2707977, 2492155, -5165235,
- -1060857, 936303, -3459059, -1282048, 1188095, 841277, -1374390, -485331, 796180, 2367064,
- -608812, -2443837, -108448, 1951526, -1343788, 1052267,
- },
- },
- {
- {
- -17692580, -206925088, 32919850, -45740328, -11418171, 320512, -2026688, 15496242, -9665824, -9490804,
- 9565966, 5631239, 1747515, 9643812, -7803956, -3632469, -6476274, -10691247, 3304441, 5489505,
- -659814, -1630477, 9275519, 5454072, 10946798, 2462627, -7133404, 1053878, -77309, -4651450,
- 3765613, -1065689, 9804873, -1765768, 4468377, -7039452, 2379412, -4618164, 7960185, 455803,
- 2334852, 2900714, 2050310, 328565, 4403415, -3440269, 1660542, 3001109, 4560182, 2909840,
- 6117644, -5486821, 1199370, 4172561, -1973001, 2775086, 5515812, 1840394, -1052804, 4152160,
- -3089692, -2330557, 3777961, 2854543, -1782411, 1541356, -408022, 1242319, -1322850, -1891396,
- 1074, -3549791, -2362769, -1943473, 153545, 440234, -1072668, 296890, -919660, 1554241,
- -100395, 2509872, -527744, 2078764, 283468, -61203, 628139, -360777, -528818, 1986959,
- 2144263, -819802, -43487, 156766, -510027, -847182,
- },
- {
- 680215, -21925808, -16470126, -3693672, 3083250, -2617246, -1660005, -6003291, -6178311, -11220602,
- -8580808, 13554380, 550830, 5966784, 22297860, 20668456, -3823058, 20895552, 3580929, -11202885,
- 10977400, 1096290, -4592931, -12448963, -6060736, 17024176, -9762998, -12310450, -15766288, 4109210,
- 4486094, -5433134, 4781909, -1902134, 1271310, -57445, -4413616, -5360119, 2587181, 751082,
- -5203890, -7888781, -1349157, 845035, 2376191, 4203163, -2194192, 2714956, -7655779, -2165201,
- 1555315, -477278, 2659659, -1615982, -2209224, -3521336, 4716948, 3758, 600222, -4556961,
- 2312840, 1191853, 157303, -3843996, -4312684, 4581120, -2119030, -2588255, -528818, 683437,
- -548682, 1717987, -680215, 2679523, -3181497, -1079647, -3054796, -1303523, 1004486, -289373,
- -663572, 770410, -573378, 1335735, -116501, -521302, 879395, -887448, -983548, -1460826,
- 561567, -1214939, 308701, -449361, -2684, 1108638,
- },
- {
- -2831457, 116383952, 13092671, 14573361, -14215268, -2259690, 3026341, 2893734, -819265, -12826383,
- -7131793, 25279104, 5352066, -12676596, 10368051, 11079942, 40265, -14966887, 3425773, 8077223,
- -4725001, -4844723, -652298, -35970, 10209674, -6540162, -268972, 1653562, -1434519, 7127498,
- 3102040, -7542500, 4187593, 1242319, -782758, -2994129, 3250753, 7696582, 7947300, 799938,
- -3813931, -6436009, 2955474, -1741072, -4394826, 5666673, 4413079, 6227166, -1411434, 3510062,
- 3738232, -918049, -114354, -2864206, 1764695, 1862942, 3114925, -374199, -3080565, -6012954,
- 1765768, -739808, -799938, -1562294, -2498597, -340376, -1323924, 119722, 996432, -568009,
- 1969243, -2206540, -1875290, 8590, 2080912, 1538135, -614717, 906238, 1390496, -857383,
- 636729, 663036, 671089, 1272384, -1032940, -237297, -27917, 512712, 972273, -799401,
- 1832340, 858457, -884226, 226560, 1601486, 1165547,
- },
- {
- 30003030, -65086472, -11195906, 14396730, 15551540, -5099737, -2200634, 3320010, -1076963, 4082367,
- -1866163, -2234994, -763430, -9482214, -247497, 6007049, -8418673, 7465190, 13606456, -2014877,
- -1838783, 9875204, 8924942, -6229313, -154082, 5827197, -5123896, 661425, -1646046, 1212791,
- -11345693, 3211562, 638876, 4861903, 816044, 10026601, -5004711, -2840584, -2857227, 443455,
- 1874753, -4768488, 2938831, -1896765, -7058242, -7397008, 3012920, -4403415, -2976949, 1447404,
- 6937983, 3384971, -4581657, 260919, 272730, -1438814, -18254, -2964601, -1551020, 5178120,
- 695248, 486942, 316754, 2197413, -646393, -1069447, 8053, 3183108, -1268626, 560493,
- -143345, -1320166, 830002, -2835215, 43487, 1176821, 55835, -1501091, 201327, 1666447,
- 908386, 380641, 2203318, -447213, -759136, -353798, 799401, 1646583, 1568737, -653372,
- -389768, 1057636, 443992, -196495, 664109, 415538,
- },
- {
- -1758252, 17311940, 10597832, 6629819, -281320, 329102, 1722282, 3710852, -2922725, 734976,
- -49392, 668941, 4730907, 11339787, 12662100, 3882114, -15046881, -40876816, 49386220, -5621039,
- 3174518, -3851512, 8326331, 12075837, 2889439, 16113107, -2037962, -19450296, -9309878, 7317551,
- 10088878, 21343840, 13612362, -1439888, -588411, -9022116, 8071318, 2135136, 1976222, 6941204,
- 929324, -2020782, -3413425, -675384, -7838852, 3578245, -3234110, -1234803, 3515968, 624918,
- -2656974, -2914135, -4248260, 2675765, 1387811, 702227, -3886946, 47245, -4635881, -259846,
- 1614371, -2820720, 2472828, -1820529, 296353, 5127117, 112743, -3797288, -4650913, 198105,
- 926639, 441308, -718870, 1245004, 1854352, -4697084, 1870995, -102542, -1317481, -318901,
- 1114007, -1528472, 637266, -1968169, -991064, 142271, 750009, 694174, -910533, -445603,
- -2290291, -836445, -329102, -291521, -896038, -159988,
- },
- {
- 51679192, -91778080, -15012521, -45780056, 6099391, -518617, -695248, 12016782, 15976741, -23019414,
- -9361418, -10017474, 20411832, -2139431, 3205656, 11410117, -3933653, 3198140, 2583423, -11906186,
- 4369593, 6853694, -1487132, 243739, 7436736, 185220, -75162, 12012487, -377420, 3349538,
- -5046050, -10733123, -3994857, 5300527, -5500780, 7109782, 2572149, 2115272, 3853123, -5991480,
- -4839892, 1022739, -779000, -4092567, 3306588, 3721052, 4635344, 134755, -3780645, 4795868,
- 554051, 3449396, 2164127, -2684355, -3926137, 4326106, -1163936, -1032940, -1584843, 1179505,
- -3457986, -714038, -4832, -2100239, 64425, -1224066, 97174, 543313, -1788854, -1450625,
- 2318746, 1388348, 695248, -2485712, 911070, 220117, -347355, 639413, -1549410, -888521,
- -908386, 1105954, 430034, 103079, -116501, -1797981, 421444, -1265942, 409633, -1166084,
- 215822, -539555, 346282, -141734, 147103, -236760,
- },
- {
- 923955, 4648229, -820339, 93952, -2256469, -1013075, -547071, -1071058, -2172180, -2600603,
- -3311957, -721018, 1319629, -12724377, 3943317, 7352447, -7849590, 2858301, -5440113, -20282446,
- -396211, -4473209, 13396003, -5925981, -833761, -3627637, -14118631, -1800665, 275415, 1198296,
- 16590385, -1567126, 4083977, 6010270, -3637837, 1743757, 4960151, 2134062, -7282654, 4149475,
- 2228551, 748935, 1948841, 3297461, -3270081, -260382, 3312494, -1771137, 4647692, -1686312,
- -1093069, 2243047, 746251, 751082, 1682554, 1711008, -3349001, -597000, -568546, -1767379,
- -225486, 670015, -3083250, -523449, 40802, -1794760, 49929, 1793149, -1774895, 1134408,
- -662499, -2376728, 134755, -2015950, 1589138, 1241782, -1615445, 35433, 937914, -591632,
- -239981, -1407676, 1488206, 1184874, -600759, 194884, 1147830, -250182, -308701, -36507,
- -531502, -601832, 370441, 446140, -662499, -224949,
- },
- {
- 9676024, 340333760, -14088566, -59960964, -2997350, -6263136, -19224274, -5865315, -4803921, 6126771,
- -10706280, 9492951, 8674223, -8672613, 7403987, 2794413, -6344741, 16454557, -10996727, 1416266,
- 3117073, -9992778, 5422396, -4047470, -1017907, 1028645, -1405528, 3803194, 2320356, 4170950,
- -7247221, 295279, 546535, -64425, -163746, -1327145, 4016331, -9296994, -7159174, 6091874,
- -3542811, 10652593, -1311039, 6871948, -5868536, 10066866, 3546569, -1171989, -232465, 964757,
- -2922725, 3777961, 4124779, -2126009, 3718368, -745714, 604517, 6634651, -5407364, -1179505,
- 2520609, -1976759, -1108102, -673773, 1969779, 1031329, 1380295, -2474975, 254477, 3422015,
- 428960, -629750, 1814624, -2942053, -744103, 1378685, 2010045, 1385127, 507880, -1399623,
- -422517, 2094333, 304943, -692027, 457951, 318901, 1073742, 746787, -1007170, -357556,
- -471373, -471373, 1006633, -711354, 752693, -282931,
- },
- {
- 1344862, -2071248, 712428, 4077535, -1245541, 1429687, 1947768, -2023467, 2055679, 3816079,
- -5759015, 1706176, 74625, -1335198, -741956, -3475702, 7609072, 8104067, -736587, -16832514,
- 5160940, -392990, -4314832, 18061412, -8687108, 8508330, -1020055, 8843875, 3601867, -6059662,
- 11926587, -11404749, -11207180, -1835562, -2579128, -2189897, -920197, -8025684, 6504728, -3950833,
- -4713190, 278099, -1909113, 2581812, -5895917, -533650, -393526, 621160, 74625, 3459596,
- 1050656, -1765768, 1642288, 5042292, 5992016, -2234457, 4515621, -1407139, 4025995, -3097208,
- 3388192, 1981591, 2064269, 2114735, 3824132, 2469069, -2146947, -135291, -176094, 2476586,
- 516470, -2092723, -930934, 1468879, -1750736, 1756642, 16643, 875636, -404264, -448824,
- 2129767, 373125, -1249299, 1363652, 870805, -944356, -277562, -270583, -258235, 662499,
- 993211, 2021319, -920734, -639950, 615791, 296353,
- },
- {
- 27893666, 9901510, -12355010, -15246060, -3383361, 20134270, -23162222, -17951352, -999117, 8984535,
- 10124849, 1255741, 3282429, 11354283, -5308580, -724776, -2721399, 5796059, -188442, 7736847,
- 6628209, 15340549, 7095286, -1339493, 5906654, 5043902, 6189585, -13401909, 615254, 4663798,
- -12470974, -2880849, -385473, -7470559, -76236, 6068252, -6550362, -3212099, 3113851, 3218541,
- 7322919, 9874130, 1776506, 3705483, -5373004, -1477469, -3275450, 2961917, -234076, 2071785,
- -313533, -1982127, -914291, 2552821, -3071975, 2466385, -5189394, 1949915, 2752537, -1694902,
- 194347, 226023, -1023276, -395137, 1417339, 3854733, -2764348, -1078574, 198642, -3703336,
- -2653216, -4273493, 344134, -1531693, 2027225, 1655173, -427349, 476741, -1568200, 1713155,
- 113280, 1670742, 2954401, 194884, -2434710, -266825, 2462090, 431107, -306553, -1596117,
- 137439, -1350230, 1370632, 519154, 547071, 464393,
- },
- {
- 2768107, 28269474, -11360725, 9171366, -15050639, -4155918, -3295851, 1008780, -8811662, -7816841,
- -13055090, -9705552, -12399571, 16680579, 4218195, -9622337, 16922708, -14694157, 9272298, 10649371,
- -1378148, -7373385, 15269682, -10810433, -1012002, -7633768, -6306086, -5995238, 1424855, 2634963,
- -865436, 4883378, -978716, -3950833, -1576253, 2332167, -818728, -1231582, -5970542, -5549635,
- 1195075, -144955, -639950, 5175973, -2334315, 2688113, 351114, -4589173, 2080912, 3784403,
- 318901, -3439195, -2545305, 499290, -2433636, -2217814, 2239289, -3077344, 3149285, 1949915,
- -3479997, 941135, -943282, -1123134, -464930, -47782, -948114, 828392, 1252520, -1735167,
- 825171, -2955474, -1859721, -1207423, 372052, 433255, 13959, -48318, 1957968, 2065879,
- -1061931, -415538, -1545115, 664646, 785979, -1056025, -491237, -163209, -663572, -462246,
- 584652, -184147, -319975, 818728, -817118, 559420,
- },
- {
- -5958731, -114272976, 1268089, 18770618, 11177116, 18241262, -26461830, -2754685, 15844671, 5589363,
- 10351945, -16762720, 20071456, 1701881, 7719667, -3838090, 3667365, 14262513, -14732812, -6789807,
- 4483946, -6644852, -3206730, -8589398, -1642288, 6544457, -3140158, 8726300, 5177583, -3354370,
- 5650567, 11756399, 5772436, -2872796, -2123325, -142271, -13094282, 7743289, -14960445, -6775848,
- -3634616, -2670396, -8047695, 5067525, -9410810, 245887, 2797098, -6884296, -6646462, 3246995,
- 2019708, -1302449, -5629629, 7023882, -7882339, 879931, 168577, -3919158, 362388, 590558,
- 2877628, -1879585, 175020, -5850283, -629213, 1082869, -1604707, 67646, 1837172, 2281165,
- -938987, -432718, 1577327, 719944, 1428614, 1145146, -69793, -1589675, -1331977, -318364,
- -1107028, -2178085, -716186, 1806034, 11811, -1313723, 610422, -116501, 1074279, -881542,
- -3758, 448287, -1459752, 1889249, 609349, 106300,
- },
- {
- -1916092, 39021388, 6309307, 7858180, -7107634, -6480032, -4048544, -3626026, -165893, 7113540,
- 1156957, 10481331, 583579, 513249, -32851668, 27756764, 4531728, -7089381, -12221329, -6062347,
- 22972706, -9966472, -14174466, 8919036, -30491584, 4105989, 23388782, -7538742, -21617644, 198642,
- -5301601, 2588255, 2201708, -5173825, -77309, -8664023, -5974300, 2544768, -5061082, -3005403,
- -167504, 4904316, 7372312, -5449240, 671089, 3781182, -92879, -1501091, 4209605, 1460826,
- 2210298, -3532611, -3297998, 2427194, 1371705, 4254702, 3493419, 2278480, 2339147, 756988,
- 552977, 1809255, -227633, 491237, 2864743, 416075, 2920578, -1502702, -977642, 472983,
- -1420560, -1003412, -1962263, -1788854, -1857573, -2968359, 2091649, -902480, 139586, 1241246,
- 354872, -3216931, -838056, -2731062, 613643, 728534, -1054951, 2374043, 601832, -761820,
- 163209, -319438, -2683281, 177167, -1364189, 1453846,
- },
- {
- 17675938, -58137216, 16204375, -8858907, -4533875, 11468636, -7528004, -9554692, -4126390, 18014704,
- -8215199, -2582349, 8331163, 7668664, 29197724, 51540, 7172059, -7503308, 5811091, -4400731,
- -12339441, -6418829, -6524056, 10254234, 1334661, -1449015, 9248138, -7286949, -230318, -4300336,
- -2319282, -6891812, 4389457, 4495220, 8798241, 5187247, -6628745, -12918188, 4936528, -8485245,
- 5496485, -3026878, -4772783, -1344862, -5669894, -485331, 380641, 6919729, 1582696, 102005,
- 2131915, 2869038, -8844411, 1300838, -4861366, 2845953, -1209033, 325881, -3807489, -4719632,
- 554588, 2711735, -2063195, 990527, -708670, 1360968, -92879, -998043, -1346472, 1946157,
- 1826972, 371515, -970663, 2479807, 1984275, 782758, -2740189, -767189, -2052994, -1429687,
- -465467, 1804423, -287226, 1101659, -62814, 1051193, -2731599, 797790, 208306, -889058,
- -96100, 805306, -105764, -1683090, 1198296, 1166084,
- },
- {
- -659814, -62466540, -5071820, 6435472, 34897, -1324997, -8792872, 4088809, -7599945, 7316477,
- -8198019, 16245714, 1949915, 1258425, 58140436, 15911243, -5500243, -10489384, 3667365, 14327474,
- -6796249, -7382512, 13047574, -9170292, 6726456, -2241436, -9146670, -19206020, -18109730, -7332046,
- 9210557, -875636, 9921374, -6981470, -951335, -3757560, -11581379, -2901251, -4017942, 1485522,
- -6681359, -7129109, 7606924, -1132261, -9924059, -2078764, 4459787, -3283503, -2733747, 6481643,
- -5709086, -3607773, -145492, 84289, -4438849, 2497524, 1836099, 2141578, -689879, 1407676,
- 1942936, 1697049, -1945620, 2399813, 3890704, 2842195, -2790655, 143345, -1291175, 3755949,
- 857920, -1795296, 2950643, -2973191, 1321776, 1446867, 1088774, 1749662, 570694, -1652489,
- -118112, -2882460, -958851, -1035087, 1469416, -559420, -572304, -32749, 33823, 1318018,
- 362388, -541166, -1213865, -348966, -425202, 1215476,
- },
- },
- {
- {
- 18675054, -221013104, -25792890, -38145752, -2182917, -5805185, -3124052, 9785009, -18712098, -13724568,
- 1191853, 7927973, -2439005, 4224637, -5386963, 1771674, 6018323, -469225, 3871376, -938987,
- -12177843, -4718022, 4866198, 1894081, 9751723, -224949, -2782065, 6203544, -1460289, -5004711,
- -939524, -5104569, 6039798, -10030896, -529892, -1316408, 2106682, -3266860, 6882148, -1219771,
- 2536715, 2897492, -334471, -5352603, 441308, -4105452, 5386426, -38118, 2994129, -3911642,
- 372052, -8178155, -4087735, -1134945, -1716913, 2200634, 2028835, 299037, 51003, 5560372,
- -561567, -332323, -297427, 508954, -2229625, 3498788, 959388, 2071785, -1766842, -2471217,
- 656056, -1312113, -145492, 2092186, 1533840, 464930, -2598455, -1125818, 287763, 1721745,
- -706522, 1920387, -475131, 1390496, -388695, -772557, 315680, 446140, 738198, 2319282,
- 1531693, -1028108, -261993, -457414, 232465, -229781,
- },
- {
- -694174, 21036750, 18170396, -12390981, -645856, 1338956, 1326071, 1967095, 3636764, 283468,
- -1467805, 8026757, -2552821, -12999255, 6024766, 6251862, -26390426, 20681878, -2629057, -19720880,
- 11256572, -2146947, 103616, 475131, -7822746, 16372415, 3690451, -645856, -3258807, 5856725,
- 5136781, -2693481, -839129, -5834713, 441308, 373125, -628676, -5419175, -4451197, 2012729,
- -1598802, -6138045, -628139, 410169, 418759, 2906619, -2934000, 6059662, 287763, 2537789,
- -2600066, -1527398, 6256694, -746251, 1166621, -1430761, 540092, -860067, 1045288, -1519345,
- 2682744, -638340, 3838090, 3105261, 1054951, 3435437, -5292474, -3261491, 369904, 1436130,
- 1381906, 3663607, -485331, 1235877, -2578054, 324270, -780073, 845035, 1423245, -507880,
- -899259, -11274, -662499, -204011, -738198, 138513, 1607928, -1167157, -1014686, -268972,
- 2096481, -1171989, 379568, 223875, 30065, 1636383,
- },
- {
- 4133369, 72959144, -30057792, 18019536, 4332549, 4287988, 124554, 9475235, 8948564, 4684199,
- -8419210, 13319767, -12557411, -26976152, 8641474, 10551661, 6056441, -6025839, 2927020, 5097590,
- -3782256, 82678, 12216498, 5608154, 9807021, -1984812, 8732742, 5452998, -7622493, 530428,
- 3373160, -2586107, 13195750, -1854352, -6810745, -4118874, 6350109, 2960306, -4153770, 1316408,
- 1400159, -4780299, 2017024, 5175973, 4881767, 8403104, 1860795, 8106751, -1592896, 275952,
- 2514167, -1538672, -1129040, -311385, 5348308, 638876, -322123, -1733556, -1384590, -5115843,
- 206158, -1898376, -1346472, -1157494, -3094524, -399969, -3365644, -2827162, 497679, 856309,
- 3208878, -86436, -2095407, -2365990, -442382, 1454920, -571768, 814970, 1502165, -104153,
- 590558, 497679, -332323, 1117228, 3221, 870268, -801548, 698469, 2117419, -271657,
- 201327, -74625, -1491427, -811749, 483721, -136365,
- },
- {
- -31609348, -143212464, 7333120, 3861176, -8851928, -1521492, -1649804, -4000225, -5223754, 16268262,
- 11922829, 7581691, -1682554, -2443837, 2114198, 1772211, -7835094, 18070002, 5854578, -10700374,
- -2135136, 6514929, 3314104, -8019241, -472983, 6806987, -11605002, 2406256, 1097901, 7856569,
- -2950106, 2490007, -1826435, 282394, -5197984, 6156836, -2052458, -4442607, -7689602, 3367791,
- 10532334, -1427540, 2950106, -2163590, -2037962, -1422171, 8220568, -2431488, -1343251, 4035122,
- 362925, 2885144, -1423245, -1188632, -1972464, 1091995, 3064459, -1487669, -3323231, 2370822,
- 503585, 330712, -2603824, -1829656, -150861, -306016, -498753, 3305514, -980326, 1687922,
- 1712081, -273804, 973347, 74088, -82678, 11811, -398895, -1495186, 1128503, 2907156,
- 676994, -613107, 987843, -156766, 161598, -930397, -1242319, 20938, 652298, -193274,
- 579284, 2154463, 870268, -822486, -360240, -705985,
- },
- {
- 2136209, 4173098, -6441914, 982474, -1569274, -384936, -1532230, 1034550, -3867618, -355409,
- 1376000, 6965363, 12991202, 14155138, -7827578, -16985522, -12717935, -5956046, 62711892, -21528524,
- -14130979, -10009421, 9439264, 2126546, -9514963, 4443144, 1741609, -12852153, -10612327, 8200167,
- -29528, 7423314, 7722888, 1756642, 673773, -8762270, 12096775, -214748, -6928319, 2807835,
- 131533, 463320, 1640141, -3423626, -11681774, 9979893, 4351876, -273804, 4973572, -696322,
- -4194573, 378494, -1066763, 1080184, -8589935, -1758252, -1071594, 199716, 2283849, 5342940,
- 1443109, -1853815, 744103, -4575751, -1447941, 2384244, 432181, 647466, -3376918, 629750,
- 2623688, 2281165, 1053878, 434865, 109522, -2678986, 3620121, 390305, -91805, 1670742,
- 3323768, 832150, 1356136, -2793876, -1130113, 916439, 2050847, 1123134, -352724, -700617,
- -1524177, 531502, 251256, -389768, -1596654, -73014,
- },
- {
- -52590264, -215328192, 10482941, -38849052, -3071975, 1840394, -6744173, -3871376, 11414412, -4081830,
- 14878304, -6305549, 6550362, -4711043, 8521752, 17582522, -1821603, 5932424, 8465917, -11428908,
- 6547678, 11201812, 1341640, -3659312, 360240, 2967823, -2930778, 4157528, 2312303, 3843459,
- -5742372, -9517111, -9685688, 2362232, -5222680, 1726040, 6058052, 7102802, 906775, -5308580,
- -718870, 954557, -6058588, -7927973, -4247186, -696858, -679679, -3447785, -4995584, -827318,
- -2739116, 2978560, 3629784, -1245004, -1441498, 830539, -1311576, 1117228, -4444218, 359704,
- 1663226, -1312113, -723165, -55298, 644782, -805843, 1032940, 181999, -1091459, -106837,
- 1864553, 506806, 1707250, -2334852, 392990, -1537061, -671089, 399969, -1381906, 8053,
- -807991, 1134408, 134218, -476205, 381178, -755914, 1246077, 652298, 2122251, -580357,
- 204548, -1535451, -304406, -79457, -388158, -1070521,
- },
- {
- 250182, 4085051, 3535295, -800475, -2113124, -752156, 229781, -894427, -1048509, 1062468,
- 3574487, 1627256, 5146445, 4870493, 17460652, -7124277, -9704479, 12003897, 3183108, -9324911,
- 13421773, 3897146, 11062762, -8928163, 10964515, 15832860, -15569, -5781563, 8263517, 4895726,
- -8853001, -9119289, 14143327, 13939853, -4656819, -9592809, -4621922, -5580773, -11744051, 3775813,
- -690953, -2600066, -3633542, -1828582, -3855807, -30602, 1702955, -6481106, 4163971, -479963,
- 2370285, 4971425, -2643552, -1040993, 3726958, -139050, -548682, 2513630, -812823, -3154117,
- -754841, 3430068, -3136400, -3025268, 424128, 1029182, -438087, 2648921, -782221, -685047,
- 186294, 397821, 1172526, -776852, 508417, 418222, 698469, 1270774, 668404, 421444,
- 489089, -2506650, 62814, 54761, -220117, 955093, 600222, -398358, 388158, -119185,
- -1293322, -2283849, -1155883, 65498, -1278290, 302795,
- },
- {
- -38931196, 320280544, 13930190, -37283000, 13684303, -4806606, -13490492, -2501819, -1827509, 16269873,
- -5143760, 1175210, 1006096, -18486612, 6975564, 13904957, -6804302, 20959440, -19942070, -10200010,
- 4232154, -7469485, 6993818, -1545651, -543850, 736587, 2669322, 4899484, 4719632, 10489921,
- 4758824, 5448703, -1606855, 2219424, 3685082, 12876849, 9434433, -5702643, -3252901, 5049271,
- -2394981, 6721624, -1333051, 9724880, 906775, 10156524, 2160906, -2374043, -3821984, 421444,
- 1488206, 7358890, 2228551, -8010651, -148176, -2142115, -493921, 7501161, -2845953, -401579,
- 391379, 993748, 2065879, 135828, 3094524, -692027, 926102, -1494649, 710280, 1462436,
- -1724429, -308164, 1746441, -2384781, 1847910, 790274, 335544, 1756105, 609885, -871878,
- -764504, 921271, 159988, 82678, 254477, -1294933, -153545, 846109, -1268626, -448287,
- -125091, 551903, 607201, -1228898, 222801, 241055,
- },
- {
- -109522, -9240622, 425739, 4273493, -3015604, 344134, -157303, -2309619, 4074850, 1893544,
- -4717485, 7315403, -8042327, 4077535, 16545288, -25364466, -12058121, -5282810, -5315559, -5592585,
- -5764920, -18629420, -21920976, 22311818, 14197551, 16943646, 4605816, 6772627, 2544768, 894427,
- 11285563, -15819438, -9841381, 2994129, 2191507, 3313567, 1074279, -4835597, 11206107, -3549791,
- -4010426, 3252364, -1901597, 163209, -4075387, -1391569, -3110093, 3672197, 3556233, 2100239,
- -2838974, -4129074, -758599, 4233227, 5643587, -593779, 3582003, -2081449, 2744484, -5216238,
- 3804267, -829466, -3776350, 13959, 2879239, 2620467, -741419, -1093606, -809064, 851477,
- 895501, -562641, -1918240, 1885491, 905701, 2664490, -1996623, -35970, -1241246, -2152316,
- 1349694, -827318, -1529545, 346819, 22549, -646929, -4295, 625455, -279173, -361314,
- -547608, 1381369, -653372, 140660, 1356136, 240518,
- },
- {
- -31049930, -18639084, 23391466, -12547210, -365072, 33593088, -20351702, -22393422, -11901891, -11824045,
- -2281165, -3001109, 5120675, 11646878, 659278, 12847321, 11255499, 15543487, 5237176, 13456669,
- 4501126, 1220308, -7642895, -11207717, 3952981, 2357400, -467078, -13123273, -2221035, -2877091,
- -13455596, -1566053, -2147484, -7815230, -1484448, 3215857, -2656974, 6090264, 4727686, -2208687,
- 3089692, 5777805, -2454037, 2168959, -3704946, -1296006, -1813013, 5434744, 1020592, 1340567,
- -2972654, -3036542, 2146947, 4810900, -2160906, 4325569, -4625143, -188979, 892279, -1395864,
- 4694936, 4147865, 1537061, 32212, -330712, 2665564, -1611150, 628139, 338766, -889058,
- 3155190, -2576981, -3758, -1350230, 2277407, 1546725, -1563905, 2052458, 533650, 847182,
- -991064, 848256, 1400696, -248571, -961536, 297427, 292058, -933619, 638876, -1119913,
- 1325534, -280247, 489089, 76773, 351114, -79994,
- },
- {
- -1669669, 50149648, -5162014, -2964064, -13649406, -632971, -8462159, 2399813, -7279433, -6405944,
- -4765266, -5407901, -11809013, 10965588, -12478491, -18402324, 14316200, -16036334, 21553220, 23855858,
- -1074279, -14155675, 14709726, -15105400, -246961, 2534568, -2848637, -5386963, 6623914, 7766912,
- -7734163, -1294396, -2731062, 552440, 6926172, 9476845, -3783866, -6781217, -6006512, -4116726,
- 4973572, 1813013, -5188321, 2183991, -9636833, -55835, 4039954, 1403917, 4907000, 3010772,
- 800475, -4853850, -2086280, 4601521, 3047279, 1515587, 1973001, -3850975, 3439732, 2209761,
- -1816234, -1110249, -924492, -1322313, -1648194, -363998, -3262565, -2010582, 843424, -1096827,
- 3362423, 105227, 722091, 143345, 1119913, 588947, 1895154, 1331440, -255551, 1313186,
- -1656247, 229244, 857920, -126702, 1183800, 212601, 856846, 1189706, 1001264, 571231,
- 209380, -1176284, 78383, 1177895, -1258962, 887448,
- },
- {
- 31930398, -66307316, -12788265, 6236293, -1290638, 23147726, -6098854, -9720585, -7276212, 4899484,
- 28950228, -2897492, 18523120, -13373454, -9185324, -7646653, -3126736, 14202383, -17326972, -15285789,
- 1631014, 3006477, 4942434, -8513162, -8845485, -1171989, -12368969, 3433826, -1046898, -17940616,
- -2528662, 10702522, 1998234, -5898064, 2787434, 12444131, -9546639, 11789685, -5964099, -4609037,
- -523449, -3152506, -13849122, 8155069, -2996814, 3014530, 475668, -2572686, -3681861, 2254321,
- -288837, 1493038, -5684389, 4821101, -2828236, 3787624, -889595, -592169, 1274532, -1940252,
- -2015950, -2634426, 650151, -2801929, 2166811, -71404, -1478543, -85899, 2134599, 3337727,
- 1037772, 875100, 294742, -104690, 119185, 186294, -369904, -1166621, -2056753, -693637,
- 1688996, -684510, -1586990, 388158, -660351, -147103, -119185, -927713, 545998, -1348083,
- 1095754, 877784, -654983, 1389422, -307627, 386547,
- },
- {
- 2965675, 33890512, -4742718, 3618510, -4580046, -718870, -2237141, -1093606, -857383, 911070,
- -3712999, 3441343, -3194382, -8256001, -49162880, 5552319, -14766098, -3160559, -2610803, -8912594,
- 9959492, 28527172, 11459510, 11398843, -13839995, -1094680, 8870718, -6327561, -16910360, -749472,
- 8724152, 206695, 472446, -731218, -687732, -7931194, -14559402, 3610457, -1737851, -1096290,
- 4364224, 4228396, 3236258, -11907797, -5997385, 216896, -3382824, -4209605, 4980552, 1160715,
- 5388574, -4005594, -6319508, -3071439, -2270964, 530965, -520228, 17717, -544387, -3532611,
- -3301756, 2550137, -507343, -1541356, 2447595, -2372433, -2189897, -3033321, 180389, 387084,
- -448287, -942745, -1088237, -1447941, -515396, -637803, 3365644, -48855, 1604707, 636729,
- 368293, -282394, 1426466, -2231236, 618475, 550293, -703301, 1743220, 180926, 496606,
- 696858, 147103, -2363306, 271120, -2110977, 187905,
- },
- {
- -1917166, -88507464, 8805220, -12334072, -9641128, 11782169, -11601780, -5266167, -5451924, 1053878,
- -9811316, -1577327, 10462540, -3745748, 3291556, -1500554, 133681, -16258599, 1693291, 14855755,
- 8161512, 6079526, -5812165, 3696356, 4061965, 2631204, 972810, -12366821, -2925410, -3700114,
- -2704756, -8653822, -5277441, -6497749, 8115878, 9060234, 1812476, -6162741, 8542153, -7287486,
- 9472014, 9749576, 2340757, -4290136, -4370666, 734976, 644245, 3515431, -4254165, -7579007,
- -330712, 4830765, -5421860, 1091459, -3671660, 4173635, -2558727, 2888903, 2536178, -2706903,
- -911607, 2154463, -4464082, 1678795, -106300, -1491427, -2826089, -1362578, -3724811, 1537061,
- 2707977, 1619740, -229244, -1532230, -4957466, -2197950, -1547262, 2924336, 737124, 267899,
- 1614371, 1976759, -1122597, 430034, 613107, 723165, -3788698, 836445, 1430224, -759672,
- 304943, 1016834, -142271, -1133871, 115964, 212064,
- },
- {
- -200253, -60617020, -1290638, 335007, -8877697, 700617, -3828427, 2190970, -11440182, 5806796,
- -11120744, 11458973, 5280126, -10382010, 35960152, 12839805, -17391396, -18294950, -2216740, 12156368,
- 5529234, -6488085, 3358128, -11425150, 4653597, -7078106, -5819144, -9510131, -6871411, -11828877,
- -3651796, -8958228, 8049843, -6500433, -2440078, 3155190, -2998424, -3273839, -401579, 14587320,
- -391916, -9868224, 6458557, 893353, -3213173, -2899103, -4560719, -5411659, 2474975, 9044664,
- -2059974, -2091112, 1063004, 4533338, 653372, 4159676, -350040, -2665027, -3741990, -103079,
- 3519189, 1973001, -6304475, -2857764, -529355, 2139431, -3566970, -1246614, -817654, 2842195,
- 630286, -3936875, 737124, -4136591, 1475858, 2762201, -198105, -849330, 97174, 1891933,
- 142271, -2185602, 1681480, -1371168, 787053, -631897, 545998, 236760, -651761, -4295,
- 1595044, 1280974, 10201, -391916, -1094143, 130460,
- },
- },
- {
- {
- -13242458, -207497920, 3590056, -21601002, -9122511, -5292474, -773631, -4591320, 5003100, -11305428,
- -11086921, 7880191, -6223945, 6066642, -17283486, 7461432, 4180614, 466004, -1367410, 366146,
- -8043937, 2196876, -2340220, 483721, 10695542, -4183298, 4056060, 6589017, -1929514, -1880122,
- -571768, -4956393, -4409858, -5085778, -7696582, 10373957, -1426466, 3357054, -1116692, -3716757,
- 6913824, -2279017, 4444218, -3080029, -941135, -2651606, 758599, -1556926, 3774203, -765041,
- -4575214, -6520297, 417149, -9348533, 4711579, 1252520, -5549635, -494995, 5604933, 5340255,
- -3424700, 4880694, -3209951, 1229434, -4294968, 4589710, 1337346, 687732, -865436, -1176821,
- -785979, 1684164, -469762, 1553704, 70867, 979253, -1503239, -1251983, 1085016, 134755,
- 640487, -425739, 244813, 1309965, -1067299, 358630, -469225, 590021, 2208150, 1247688,
- -392990, 999654, -1854352, -279173, 1120987, -308701,
- },
- {
- 900869, 47197932, -1457605, -15532212, 482110, 2033667, 425739, 6658810, -53687, 4571456,
- 2190970, 5576478, -2120640, -2993055, -7274601, -12045773, -9423695, 8939974, -12223477, -8912594,
- 14841796, 8570607, -18358838, 10149008, 5302137, -1803349, 7364259, -7362648, -3758, 8623221,
- -2281702, 4627291, -5391795, -1625645, 1377074, 2755759, -4306779, -1227287, -11828340, 1591285,
- 1776506, 364535, -91805, -3373697, -3311957, 42950, 3738769, 1094680, 4591857, -1260036,
- -3942780, 4532801, 4023311, 365072, 315143, 638340, -2056753, 916976, -1290101, -722091,
- 1709934, 1781338, 1813550, 2105071, 4003983, -312996, -1058710, -2947958, -763430, 1815697,
- 4543539, -328028, 1214402, -1005022, -1342714, 374736, 271120, 277025, 1848983, -968515,
- -153545, -966368, 673236, -1075889, -75162, -683974, 1595044, -469225, 178241, -584652,
- 357556, -573915, -454730, 1725503, -411780, 594853,
- },
- {
- -4362613, 7737921, 33356864, 13084081, 8577587, 2229088, -3024194, 13907104, -3250217, 12771085,
- -12191802, 19109384, -24196236, -10499048, 236223, 7968238, -3663607, 7690139, -2374043, 2774012,
- 1222455, 1986959, 8338142, 8004209, 10376641, -994822, 10572062, 4214437, -9847286, -3748970,
- 1870458, 10920491, 6518150, 1103270, -12130598, 5516349, 94489, 813359, -8751533, 5004174,
- 1289027, 716186, 473520, 1836099, 5896990, 7592966, 2308545, 5064840, -368830, 2927557,
- -2194192, 1245004, -1443109, 571231, 3549791, 822486, -604517, -3856881, -2130304, -3178813,
- -574452, -1765232, -860604, -2524367, -1234266, 210453, -3582003, -2079838, -1094143, 1830193,
- 2226404, 1367410, -1570884, -2656437, -2346126, -664109, 1007170, -7516, -263604, 2496987,
- -699006, 2010045, -522912, 199716, 488016, 1344862, -913754, 387621, 1662152, 317828,
- -1216013, 170188, 16106, -1525787, -277025, 158377,
- },
- {
- 20981452, -224266544, 5721970, -3499325, 694711, 2457258, -532576, -1529008, -11282342, 21398064,
- 2421825, 16393890, -8257612, 4202089, 5787469, 5966247, -10694469, 28957206, -12021613, -6306623,
- 5267778, 6187438, -6208375, -5249524, 18254, 6155762, -5025649, -1634235, 1920924, -37581,
- 122407, 6631430, -4689568, -4510790, -1253057, -1058173, 6837588, -7864085, -5894843, -3105261,
- 8588861, 4780299, 3578782, -8223252, -620086, 5684926, 3365107, 2125472, -2809446, 6389838,
- -2348810, 310848, 261456, -62277, -3620121, -272730, 2513630, 367220, -845035, 1253057,
- 273267, -1377074, -1130650, -2101850, 758062, -1001264, -694711, 699006, 1391033, 2229625,
- 681289, -863288, 477815, 2233920, -1158031, 423591, -962073, 214212, 1241246, 2809446,
- -198105, -420907, 159451, 453656, -180389, -579284, -228170, -1964948, 625992, 706522,
- 363998, 1478006, 180389, -73014, -715649, -1550483,
- },
- {
- -2320893, -2156074, 521302, -3463891, 2750390, -1713155, 1361505, -927176, -5338645, 2364380,
- -4990752, 9163850, 10444824, 21918292, -28890634, -14254996, -5244155, 43761960, 14244259, -10610180,
- -33496986, -108448, 5864241, -1882269, -3910568, -18842022, 10029286, 88047, -7346542, 9223442,
- -4104378, 3288334, 7972533, -3512210, 5590437, -10336376, 9800578, 2582349, -9076340, 6487548,
- -5892695, 4396436, 1834488, -7838316, -4821101, 7526930, 6923488, -3570192, -303332, 4311074,
- -5591511, -874563, 1960653, -2071785, -5373004, -4556961, 2886755, -2199560, 3316252, 5637145,
- -1144072, 71941, -1206886, -2663954, -1538672, 454193, -117575, 775778, 10737, -566936,
- 457951, 3661997, 1516124, 709743, -1819456, -1166621, 2717104, -428423, 2047089, 1595044,
- 2925947, -184147, 285078, -132070, -2321430, 744640, 2270964, 690416, 214748, -1669669,
- 363462, -262530, 1053341, -1293322, -448824, -485868,
- },
- {
- 35219268, -342133344, 6471442, -23888072, -7276212, 252329, 3870839, -12655121, 2618856, 13871134,
- 4903779, 8469139, -18522046, 4460861, 12859669, 7380902, 7881265, 2177012, 425739, -4904853,
- 5791764, -1991254, 9446781, -3976066, -4424890, 8010651, 2670396, -9473087, 4192425, 2513093,
- -7141457, -2320356, -6860674, -1974074, -1663226, -3417720, 6321118, 10252087, -2187212, -1745904,
- 118112, -5055177, -3805878, -3038689, -5753109, -5582921, -1398549, -2900177, -3512747, -7292318,
- 3995930, 997506, 2723546, -2886218, 1941862, -3332895, 2254321, -781684, -1282585, -2985539,
- 2656974, 770410, 958315, -2324114, -715112, -506806, 1246077, -1030255, 1703491, -719944,
- 58519, -75162, 1014686, 144955, -1950989, -272730, -2203855, 1458141, 372588, -736050,
- -1482838, 598074, -577673, 795643, 1226750, -886374, 422517, 1649268, 1598802, 127775,
- -1679869, 282931, -1615982, -591095, 322659, -965831,
- },
- {
- -1020592, 11063299, -1050656, -2797098, -655519, 311385, -341987, 1196685, -1569811, 9127,
- 3709778, -313533, 4370666, -121870, 14919106, -8999567, 6606197, 4638565, -395137, -245887,
- 20131586, -8830453, 23631446, -6664179, 5587216, 2767033, 19508816, -11144366, 7286949, 8883603,
- -9939091, -7380902, 6573985, 22706418, -10787884, -5699422, -7314866, -5840619, -7893613, 998580,
- -1348083, -5340255, -730681, -6441377, -101469, -2165201, 5089000, -8079371, 2110440, 1005022,
- 2991982, 1663226, 2288144, -2324114, 1347009, -2788508, 3431142, 3242164, -5761699, -653372,
- -35970, 2593624, 568546, -3779571, -1211181, 4025995, 331249, 965294, -731755, -1139777,
- 370441, 1968706, -2212982, 2975339, 121333, -1293322, 1554778, -240518, 1059246, -68719,
- 1491964, -712965, -634045, -857383, 915365, -120259, 144955, -142808, 961536, -1740536,
- -1271310, -501974, -1247688, -682900, -537945, -515933,
- },
- {
- 65725348, 244537184, -30870614, -9565966, -9591199, -3473018, -16566763, 1446867, -5075041, 19393388,
- -2748242, -15190762, 6304475, -1722282, -21406654, 25824564, -2290828, 4764730, -1484448, -8256538,
- -9438191, -4175782, -1372779, 15452755, -1454920, 4199941, -76236, 5906, 2152316, 16110959,
- 681826, 4858145, -3368328, 11161546, 1820529, 22609782, -3528316, -1114544, -2639794, -1872069,
- 6941741, -3238942, 1208496, 1387811, 12978854, 1341640, 7617125, -4796405, -3434900, -1154809,
- 2001455, 4004520, -3532074, -4145717, -2935073, 2458869, 810138, 4019553, -787053, -106300,
- -1366873, 1760400, 850404, 3187940, -177167, -747324, 1287417, -672699, 943282, 706522,
- -734439, 35970, 144955, 213138, 1253057, -278099, 900869, 658741, 1233193, 241055,
- -1081258, 617938, -649614, 900869, -959388, -1668595, 471373, 400506, -436476, -767189,
- -694174, 1908576, -1136556, -151398, 18254, 395674,
- },
- {
- -1214939, 6245420, -12308303, 2327872, -1230508, -139050, -699543, 1288490, 475131, 335544,
- -4249870, 6754373, -205622, 8003135, 13360570, -31027918, -9121437, -13093745, -1457605, 4408247,
- -22788022, -6797860, -15325517, 19893214, 13671418, -3600793, 21068962, -7208029, -3806415, 24169928,
- -8294656, -4085051, -14148159, 5749351, 6681359, -6847789, 5328444, 542777, 5861020, 4644471,
- -2778844, -1196685, 1908576, -6341519, 5162014, -2754148, -3566434, -58519, 5849746, 4046396,
- -7144141, 1434519, -843961, 3045132, 2594160, 3891240, -1137630, -849867, -190052, -1394791,
- 2095407, -390842, -4359392, -1973538, 5099200, 914291, 1395864, -935229, -1584843, 169651,
- -11274, 651224, -3275986, 2456185, 1557999, 832687, -1060857, -708133, -663572, -690416,
- -1095754, -221728, -209380, -903554, -1086627, -78920, 1631014, 700617, -1161252, -504122,
- -264141, -293668, 441308, 854162, 160524, 539018,
- },
- {
- 33704220, -48572324, -9854802, -14758581, -3067681, 33494840, -12033425, -30499636, -7411503, -11634530,
- 2108292, -7310035, 4600984, 7909719, 2882997, 301185, 18788334, 7982197, 26458072, 4712116,
- 3595425, -355409, -6887517, -18191334, 2125472, 4445291, -10009421, 4154844, -13203266, -2854006,
- -2130304, -6727530, -2823404, -6640557, -44023, -5451387, 5636071, 12763569, -1030792, 639950,
- -86436, -1256815, -4918275, 5916855, -6539625, 2003602, 4427575, -1672890, 3557844, -2251100,
- 1377074, -1029182, -510027, -2355790, 5237713, 1191317, -1265942, -1733556, -572304, -3301219,
- 8993662, 3292629, 4180614, -787590, -4151086, 2808372, 556735, 2294050, 1042603, -3230352,
- 4360466, -1207423, -1258425, -412854, 1669132, 3891777, -1345935, -1750736, 3009162, -1489817,
- -541166, 801548, 2102923, 649614, 63888, -231928, -1187022, -1074816, 547608, -434865,
- 1421097, -226560, 18790, 1079111, -641561, -373125,
- },
- {
- 831613, 67124968, -25729538, -6118718, -3697430, 2225867, -7204808, -3910031, -5814312, 1008244,
- 4870493, -5915781, -8413304, -8335995, 5947993, -25702694, -455267, 3290482, 20353314, -2312303,
- 12701292, -8071318, 6505802, -10504416, -1487132, 8474507, -7481296, -31675, -2444910, 5687611,
- 1251983, -3847754, -4405563, 2385854, 2714956, 12071006, -6584185, -4320200, -3194382, -1014149,
- 1082332, 3000035, -3933116, 28991, -8546985, 1180579, 3359201, 5993090, 3966402, 1272921,
- 1539746, -7132330, 499290, 1518271, 4906464, 1295470, 954020, 94489, 439160, 123480,
- 1125818, -3981972, 1688459, -1825361, -610959, -2462627, -2035278, -916439, 1253594, 907849,
- 321586, 245887, 2106682, -946503, 1129040, -366146, 1387274, 1022202, -258772, 1387274,
- -849867, 65498, 702764, -976031, 1764695, -540629, 1537061, 1503239, 1498407, 1052804,
- -223875, -1251446, -369367, 28454, 384400, -221728,
- },
- {
- -44815300, 35121560, -7034620, -5817533, 27322972, -2649458, 8117488, -7605850, -19021874, 13753559,
- 23621784, 9168681, 6905234, -1554241, -23758148, -1231045, -8205535, 11172821, -98247, -19603304,
- -7226820, 10147934, 2525441, -3686693, -16153372, -149787, -7001334, -2226404, -1289027, -17227650,
- -6526740, 8777303, 2184528, -162135, -1703491, 9632538, -8041253, 9154186, 154082, 46171,
- -3731253, -6609418, -180389, 4255239, -6955700, 3633006, -2594160, -982474, 1755568, -1393717,
- 1234803, 4549444, -3948149, -4482872, 6618545, -1161252, -2261300, 2765959, -1393717, 989453,
- -4145180, -3032247, -1788854, 2921115, -845572, 249645, 1600949, -2945274, 1650341, 5492190,
- -569083, -227633, 55298, 794569, 136902, -235149, -261456, -1088774, -1756642, -61203,
- 2180770, 398358, -1389422, -29528, -294205, -39728, -141734, -1359357, -142271, -503585,
- 590558, 816044, -241592, 331249, -388695, 294742,
- },
- {
- -3142306, 21552682, 6951942, 2147, -2430415, -680752, -1367410, 1796370, -1242856, -2343979,
- -2376191, -2900714, -15671799, 15908559, -46628848, -13945222, -34882112, 4195646, 6118718, -5648419,
- -5651103, 35231616, 17963164, -9941776, 13555991, -2495913, -1096290, 4170413, -11716134, -5254893,
- 5113159, 1095754, 3434900, -1028108, -4850629, -2593087, -13580687, -7237020, 6362994, 2800856,
- 3119757, 2737505, -3618510, -6058052, -5296769, -7447474, 3979287, -6321655, 4519916, -2041183,
- 7260642, 528818, -5532992, -5330592, -3240016, 973347, 344671, -1574106, -1074816, -3008625,
- -4057134, 6156836, -2448131, -1342177, 404264, -2105608, -1335735, -5449240, 3579318, -2302103,
- -1623498, 1264331, -2508798, -820339, 2873870, -35433, 1175210, 245887, 994285, 1713692,
- -740345, 540629, 321049, -275952, 1091995, -610959, 515933, 124554, 1564442, 1214939,
- -892279, 1435056, -1266479, -2241436, -469762, -560493,
- },
- {
- -17501454, -72622528, -15569, -8776766, -145492, 4526359, -10065256, 4858145, -2284386, -12658342,
- -1260573, 2401961, -7369090, 8641474, -7170985, -10547366, -760209, -4049081, -8036958, 20722680,
- 4007205, 13272523, -1430761, 1739462, -3939022, 5154498, -8107825, 1041530, -3142306, -8312373,
- -3856881, -7022272, -6445672, -5630702, 4749160, 6499360, 1636919, 3066070, 4547834, -705448,
- 3490735, 14102525, -1265405, -1105954, -4763119, 1402844, 5550172, -2378875, -5354751, -4006668,
- -4270808, -971200, 4400731, -4699768, -2560874, 3442953, -1916092, 5648956, -781684, -2097555,
- -574452, 1439351, -603443, -274878, -19864, -1596654, -1420024, -840740, -4107063, 1697049,
- 5663988, -1291711, 940598, -3721589, -4617627, -1387811, -894964, 1546725, 1276142, 1493575,
- 2209224, 51540, -68719, 150861, 1054951, -1388885, 110595, -323196, 1067299, -219043,
- 377957, -325344, 501974, 317291, -1176284, 855235,
- },
- {
- 1476395, -66013112, 6626598, -5247913, -6360310, 3528316, -1199370, -3107409, -5660230, -4112968,
- 9485435, -4904853, 10261214, 20977158, -28804736, 11342472, -22920092, 5243082, -8235600, -1093606,
- 31958314, 1331977, -10805601, -7295002, 249645, -3464965, -15490873, -7934952, 6828998, -9570261,
- 2409477, -17223892, -169114, -4887136, -3647501, 16705812, -5828271, -11695196, 7002944, 11843372,
- 87510, -4633733, 3015067, -425202, -294742, -3786014, -6508486, -5556077, 5873368, 4161287,
- 2328946, 663036, 1635309, -2744484, 6085969, 3215320, 1131187, -4725001, 2787971, -3004330,
- 1430761, 3445638, -5831492, -1729798, -2799245, -1022202, -1570347, 1139777, -339302, 363462,
- 1391569, -660351, -3068754, -1515587, -169114, 773631, 1850057, -1195075, -696322, 869194,
- -61203, 309238, -809601, -44023, 579284, -1480690, 498216, 1051730, 297963, -1170379,
- 2567317, 511638, 977642, -748935, -994822, -1741609,
- },
- },
- {
- {
- 4159676, -204280448, 4672388, -15679315, 2480344, 4366908, -2863670, -19111530, 3983582, -15636365,
- -28038620, -835908, -1225139, 10691247, -6197638, 3918084, -3007551, -3441880, -9283035, 3155190,
- 730681, 314069, -10719165, -4348118, 11413876, 6288906, 5566278, -3025268, 358630, 333397,
- 6800544, 5371394, -2638721, 317291, 6547678, 14573361, -3090229, 4929012, -3070902, -5121749,
- 2764348, -2551748, 7350837, -2336462, -1485522, -1206349, -705985, -4810364, -1247688, -2437394,
- -3499325, 331249, 3160559, -4466229, 5511517, -3563212, -8091719, 1972464, 3226594, -1009854,
- -5713380, 1597191, -1714229, 4200478, -3182034, 3999152, -1144609, -1952063, 1387811, 2720325,
- 1219234, 2182380, -1359357, -128849, -1195075, 596464, -318901, -44560, 906775, -1348620,
- -689879, -1816234, 345745, 147640, -2764348, 1400159, 1480153, -114890, -228170, -509491,
- -1893544, 1600949, -1122597, -628139, 328565, -304406,
- },
- {
- -1053878, 44601088, -4260608, -12858595, -438087, 766115, 2212445, 3089155, -2828773, 11462194,
- 777926, -511638, 8216273, -4215511, -19691352, -9861245, -4439386, -180926, -1370095, 3732327,
- 1291175, 7664906, -18482854, 10198937, 19765976, 1722819, -8529805, -7978439, 149787, -463856,
- -8561480, -88047, -12207908, -7400766, -1688459, 8252780, 1112397, 3451006, -6473053, 4864588,
- 5870147, 6368900, 1860258, -6231998, -9167071, -7671349, 3887482, 3059091, 3262565, -1940788,
- -1206349, 5342403, 762357, -985695, 1010391, 1489817, 841814, -2038499, -4063039, 2051921,
- 840740, 468151, -67109, -255014, 1016834, -1690607, 2907156, 583042, 563178, 2395518,
- 3922379, -2465311, 1854352, 188979, -104690, 456877, -1782948, -2546379, -304406, -784368,
- 982474, -298500, 102542, -815507, 598074, -823560, 1308354, -374199, 223338, -938450,
- -151398, -251792, -1604170, -229781, -1544041, 141197,
- },
- {
- 4194573, -50203336, -14827838, 17610976, 5249524, -6622303, -8243653, 4373351, -6741488, 12555263,
- -20534238, 18509698, -8944806, 3202435, 1044751, -3488050, 2238215, 18584860, -1981591, 10881300,
- -6554120, -7652558, 6286759, 6082748, 5369246, -5760088, -2419140, 45097, -6415071, -4420595,
- 3684008, 11444477, 1477469, 10144176, -7696582, 5069672, -2408403, -382252, -2995203, 5188858,
- -4326106, 1641751, 699543, -4105989, -2676838, 1525787, -782221, 2373506, 2299418, 225486,
- -10579578, 1889249, -312996, -4162360, -851477, -1808718, -912144, -536334, -910533, 90731,
- 323733, -1249299, 70330, -1759863, 1278290, 1767379, 2043331, 1365263, -2030983, -763967,
- -235686, 1913945, -1023813, -1975148, -3101503, -3329137, 892279, 95026, -745177, 839129,
- -1735167, 794032, -1090922, -10201, -486942, 589484, -336081, 683437, 948651, -1352378,
- -1614371, 392453, 1469416, -774168, -825171, 360240,
- },
- {
- -142808, -285146624, -11870753, -4354023, -4968741, 244813, 6603512, 5128191, -13024488, 16627429,
- -1181653, 18153754, 4234301, 8924405, 27917, 8595303, -9009231, 18148922, -13833016, 14397267,
- 15028627, -1703491, -6968048, -304406, -1182727, 7086696, -4033511, -13038984, -7982197, -10524280,
- -6206228, 3958349, -2515777, 3767223, 6161668, -1176821, 3591667, -7451769, -3403225, -8349417,
- 4937602, 2336462, 2850248, -7121056, -2284923, 1161252, -3864934, 2061584, -2675228, 7546795,
- 583579, -285615, 3473555, -597000, -6288906, -1681480, 828392, 33286, 1288490, 269509,
- -39728, -2124935, 188979, 430570, -224412, -816044, -934155, -1163399, 1667521, 1232119,
- 675384, 1986959, 2704219, 1758252, -2264522, 580894, 449898, 1329292, 1485522, 1984275,
- -74625, -923955, -198642, 954557, 53150, -630823, -131533, -1677185, -588411, -813896,
- -256087, 29528, -468151, 284542, 280247, -439697,
- },
- {
- 2345052, -6350646, -7417946, -7786239, -807991, 6442, 2819646, -1510218, -8237211, -2115808,
- -8521215, -1126892, -7356205, 7380365, -31958852, 11725261, 19945292, 9608916, -37808060, -7554848,
- -13863618, 10077604, 278099, 1752884, -3348464, -27060978, -1820529, 2692408, -3221, 6362457,
- 33286, 3168075, -2521683, -5890548, 9399536, -5934034, 10450192, 2939905, -3092377, 7194607,
- -4041027, 7358890, 5420249, -1771674, 5508833, 1571421, -6900402, -2360622, -1898912, -58519,
- -5216238, 1294933, 3052111, -1739462, -1486596, -624918, 6884833, -3732327, -1727114, -1988570,
- -6356015, 238371, -15032, -227096, -1116692, 1208496, -130460, -2093797, 153008, -941672,
- -2306398, 2124935, 817118, -2303713, -1721745, 1171452, 1089848, -2676302, 1558536, 1224066,
- 642098, -3636764, -592706, 586800, -1933272, 582505, 557272, -180926, 297427, -682900,
- 1168231, -672699, 1253057, -56908, 283468, -887448,
- },
- {
- -2568927, -415679296, 178778, -2191507, 3945464, 2915746, 8815420, -14105209, -4867272, 8479876,
- -650688, 5052492, -31191664, -6456410, -137976, -74625, 1355062, -7783018, -14550812, -11700028,
- 8091719, -5369246, 8843338, -4138738, -2063732, 9642202, 3895535, -2693481, 5339181, -5415954,
- -9662603, 2825552, -8624831, -2596308, 6370510, -1219771, -2788508, -1301375, -2190433, 4953171,
- 4793721, -2158221, -581968, 121333, 592169, -3379603, -3136937, -3968550, -2469069, -8717173,
- 1639604, -486942, 939524, -5297306, 4117263, -533113, 2699387, 1427003, -536871, -3132642,
- 812286, 187905, -446140, -3084324, 2014340, -1269163, -1108638, 248034, 2987687, -998580,
- -805306, -1729261, -15569, 432181, -3964255, -499827, -1699196, 3038153, 2910914, -515396,
- -1384590, -824634, -1307281, 1515050, 785979, -689879, 380105, 1396401, 157840, -1009317,
- -3030636, -295816, -1242856, -61203, 90194, -433792,
- },
- {
- 273267, 9292162, -9973451, -2614561, 2156611, 1380832, 498216, 2954401, -374199, -3545496,
- -929324, -8359617, -7481833, 461709, 14978698, 2091649, 9401683, 9472014, 12508019, 9116605,
- 8541616, -12194486, 10969346, -36964100, -1292248, -12681428, 17644262, 4243428, 7529078, 6453189,
- -3863323, 1333051, -652298, 6034429, -14783814, -1703491, -7050726, -2520072, 1209570, 4609574,
- -1370632, -2134599, -2055679, -8172249, 2996814, 234076, 6991670, -6698539, 1962263, 585189,
- 4109210, 1427540, 3299072, -1972464, 135828, -3264175, 1029718, 1398549, -4640176, 4451734,
- 3927211, 4095251, 2824478, -3104725, -2510409, 1515587, 543850, 1052267, -180389, -1380832,
- -303869, 305480, -4028143, 2616172, -1324461, -1573569, 2476049, -594316, -628676, -2436857,
- 1036161, 1818382, 899259, -266825, 748935, -1787243, 667331, -62814, -243739, -1497333,
- -281320, 1056025, 478889, -325344, -340376, -1031866,
- },
- {
- -83508120, 128919888, 40486508, -7271380, -8318278, 7296613, -7252589, 9024800, -4449049, 9877888,
- -3549254, -10101763, 7482907, 6578280, -34029024, 8856223, -7266548, -4118874, 9624485, 2921652,
- -2278480, 6634651, -1216550, 9629317, -642098, 6499896, -6150393, 1983201, -2363306, -1665911,
- -14564234, 2215130, -1264331, 8464307, -4037269, 17711372, 144955, 6361384, -4431333, -4487704,
- 3469260, -8003135, -3776887, -7033009, 4644471, -5382668, 5011690, -3146064, -4574677, -7197292,
- -362925, -617938, -8573292, 2091112, -1126355, 1433982, 1502702, 694711, -1300301, -34360,
- -4398584, -1911797, -2307471, -208306, -2713346, -401043, 2116345, 1486059, 1535451, 124017,
- 299574, -852014, -327491, 1702955, -431644, 116501, 1212791, -950262, 867047, -175557,
- -1440962, -179852, -1863479, -267362, -418759, 811212, 806917, -1552631, -1308354, 86973,
- -72478, 1481764, -839129, -554051, -691490, 413391,
- },
- {
- 25233, 14208826, -11945378, 353798, -498753, -178241, 1764158, -935766, -3259880, 1926830,
- -5093295, 6801081, 130460, -21326660, -8309688, -3848828, 12550431, -8422968, -3842385, 15887084,
- -11544335, 12163884, -3104725, 286689, -14032732, -24796994, 15184320, -8447127, -5165772, 17160542,
- -12605192, 2545842, -8015483, 6597070, 4103305, -7489349, 8018704, 4872104, 4265440, 7865696,
- 1675574, 141197, 6417218, -7721815, 5714454, 1725503, 452582, 145492, -348966, 4981089,
- 1270774, 3255048, 1374926, 3487514, -2818572, 924492, -1408749, -1559610, -1887101, -248571,
- 3016678, 1982127, -2333241, -1212791, 5209259, 779000, 2115808, 390842, -1206349, -1156420,
- -1997697, 1138703, -2584497, -719407, -220117, 139050, -1395328, -733366, 892816, 2581275,
- 1170916, 1966021, -504122, -807454, -1686848, -683974, 1977296, 467078, -1027571, -292595,
- 112743, -354872, 591632, 50466, -540092, 783295,
- },
- {
- -34957812, -56202332, 53233436, -8817568, 3682935, 12478491, -16765942, -21170430, 2323577, -10609643,
- 2443837, 2173254, 6077379, -4502200, -13859859, -10776610, 6986838, -5224291, 27814208, 10773389,
- 7670275, -2823404, -6134287, -18114562, -1406602, 5290863, -3654480, 4709969, -13117904, -153008,
- 4398047, -8643622, -1430761, 998580, -1348083, -5803575, 11655467, 10538239, -5928666, -818191,
- -7512435, -4732517, -5766531, 564251, -7751342, 5015448, 5890548, -2140504, 4684199, -4410932,
- 1474248, 1249836, -3397856, -5478768, 4739497, -433792, -55835, 65498, 1367947, -1404454,
- 8270497, -948114, 1212791, -395674, -5451387, -1629403, -744103, 1486596, 855772, -2910914,
- 3281355, 2352032, 435939, -1726040, -1069984, 815507, -63351, -1744294, 1135482, -1260036,
- 166430, 455267, 1118302, 2805688, 2651069, 607738, -1820529, -3152506, -1919314, 586263,
- 1995012, -1213865, -698469, 1243393, -335007, -915365,
- },
- {
- 294742, 69712688, -15089294, 7228967, 598611, 7469485, 5660230, -1086627, -3172370, 8687645,
- 15515032, 12686260, 2404645, -17260400, 7589207, -19594714, -292595, -2316061, -2225330, -22798760,
- 10365904, -4530117, 926639, -10532870, -4384625, 1704565, -9261023, -4528506, -7786776, 3918621,
- 3286187, -6249178, -4714801, -1698123, -9024263, 991064, -6558415, 838592, 5875516, 12484396,
- 11698954, 2034204, -8622147, -979789, -3828963, 5393942, 5147519, 9921911, 2309082, -1030255,
- 5906, -3573413, 4182761, -471910, 742493, -5174362, -2047626, 1888175, 178241, -223875,
- -1163399, -2435247, 6280316, 2399276, 3620121, -2554969, -3934190, 1809792, 2930778, -450435,
- -1909113, -1487132, 239981, -2042257, -104153, -1963874, -859530, 884763, -564788, 1057636,
- 1430761, -317828, -809064, -1165010, 193274, -1913945, 62277, 597537, 306553, 557272,
- 45634, -802622, -383326, -1075889, 664646, -621697,
- },
- {
- 35743792, 152235648, 10940355, 5041755, 31583578, 518080, 17546016, 6628745, -6171868, 13311714,
- 16922708, 9911174, 1128503, -6587406, -24393266, 8146479, -4392141, 7298223, -5210869, -14796162,
- 985695, 11917997, 912681, 8414915, -11283416, -13311177, -13848048, 433792, 4434017, -9778567,
- -5228049, 3287798, 3490198, 5277978, -5904507, 6090264, -4875325, 7590281, 959388, 3881577,
- -1202054, -2112050, 3810710, 1182190, -8111583, 4179540, -5716065, -2218351, 6609955, -4303557,
- -190589, 4835597, -3709778, -6025302, 2654827, -7569880, -2929705, 3042448, -2060511, 491774,
- -1245541, 1516660, -49392, 2171643, -3578245, 797253, 3187403, -1371705, -2010582, 970663,
- -316217, -1452236, -687732, 2284386, 1797981, 1933809, 1529545, 692027, 1160178, 516470,
- 68719, 562104, 1380295, 437013, -409096, 367220, 748935, 390842, 848256, -558346,
- 58519, 186294, -1052267, -435939, -1040456, -24696,
- },
- {
- 2856153, -5564667, -19971598, -3857954, -7587597, -4822175, -654446, 6896107, 2317135, -3707631,
- -5534066, -8472360, -10800769, 12058121, -57964880, -8793409, -28494424, 768262, 10697153, -4406100,
- -19770808, -2196339, -6994354, -12526809, 8657580, 2742874, 16209743, 14516989, -212064, -12141873,
- -15833397, 904628, 7972533, -3712999, -3263638, 8624831, -6312528, -10776073, 2206540, -1129576,
- -857383, 208306, -3361886, -1986959, 527744, -7104413, 3141769, -3158949, 9330280, -2066416,
- 1398549, 763967, 343061, -1720671, -190052, 4694936, 4917201, 2311229, 1951526, 2627446,
- -1330366, 4757750, -4308926, -2272038, -859530, -973347, 263604, -4045322, 2813204, -2933463,
- -433255, 3117073, -1976759, 1409286, 4166118, -933082, -1041530, -759136, -1683090, -1044214,
- -418222, 2543158, 1567663, -4295, 1337346, -620623, -141734, -350577, 2997887, 1390496,
- -1844689, 957778, -280247, -1490891, 391379, 90194,
- },
- {
- 31779000, -20089172, -17475686, -19908784, 3492345, 5433671, -4152160, 12577275, 7116224, -7215545,
- -4381404, -6709813, -13089987, -7445326, -23091354, 7933879, 16148003, -10478110, -21122650, 9960566,
- -1326608, 5492727, -1093069, 2407866, -5827734, -2792266, -13588740, 12539157, -1429150, -8840653,
- 178778, -7042136, -2794950, -5404143, -5339718, -1665911, 9510668, 13353053, -177167, -3904662,
- -1912334, 8206609, 1296006, 6085432, 2011655, 5045513, -705448, -9663676, -6539625, -4215511,
- -4634807, -382789, 5029944, -4599373, -1307818, 3911105, -2278480, -39192, -4832375, 1309965,
- 2745558, 2093797, 1075889, 1234266, 2928631, 2978560, 3993246, 3384434, 1404454, 622233,
- 2223183, -2353642, 1839857, 98784, -1998234, 601832, -72478, -1627793, 330176, 2457258,
- 1999307, 17717, 417149, 457414, 765041, -813896, 1121523, -785979, 1924682, 388695,
- -1331440, -1682554, 237834, 257161, -335544, 697932,
- },
- {
- -2272575, -65906812, 16539919, 2197413, 2085207, 9387725, 8210904, -581968, -6828998, -2018635,
- 13695577, -8292508, 4766340, -6110665, -86388976, -18185966, 4191888, 36209796, 3357054, -11021423,
- 41260140, 28205050, 6873022, 6546067, -4264366, -2872260, -8985608, -7301445, 13414257, 1249836,
- 1484985, -13299366, -4207994, -5056787, -1525787, 12252468, -4209605, -8092256, 11424613, 3757023,
- -3917547, -3657165, -3826816, -3209951, -4309463, -344134, 1085016, 210453, 2434173, 166967,
- 5863167, 4019553, 2141041, -5136781, 5717139, 3247532, 1945083, -1713692, 6942815, -1509681,
- -2256469, 3771518, 693100, 4096325, -1570884, -2217277, 137439, 2480881, -792421, -920734,
- 339839, 1694365, 344671, 298500, -1297080, -384936, 2441689, -1859721, -1573032, -1660005,
- -2127620, 971200, -1348083, -498216, 498216, -330712, 207232, 1549410, 1278827, -1786170,
- 1402307, -317828, 917512, 402116, 284542, -984084,
- },
- },
- {
- {
- 255551, -253332736, 31951336, -18279380, 7977902, -760746, 5468030, -18949396, -1925219, -24830280,
- -6965363, -15489263, -319438, 2225867, 11463805, -2207076, -7515119, -3291019, -9934259, 2529736,
- 3790309, 1900523, -9399536, 4299799, 1935420, 7301982, 437550, -3431679, 4795331, -2927020,
- 5717139, 2865280, -228170, -1580548, 15843597, 4649839, 3779034, 424665, -1949378, 1635846,
- -4653597, 1083942, 3848291, 3642669, -9058086, 5621039, -5342403, -4980552, -3143916, -3212099,
- -1282585, 3623342, -2300492, 3244311, 1346472, -3256122, -3740380, -1440425, 150861, -2025077,
- -1715839, -588411, -363998, 852014, 1721745, 5906, 557809, -3394635, 2330020, 3626563,
- -942745, 1293859, 1202054, -1751810, -1117765, -392990, 707059, 578747, -137976, -435939,
- -2456185, -1766842, 1841467, -350040, -1938641, 638340, 1319092, 917512, -1436130, -425202,
- 86436, -645319, -630286, 469225, -834297, 299037,
- },
- {
- 732292, 14085345, 9034464, 9953587, -12839268, 945967, 520228, 454193, 3465502, 7355132,
- -1398549, -1464047, 5980205, -7125888, -12657805, 5527086, -3680787, -14316737, 763967, 12763032,
- -4708895, -1346472, -1482301, 14087493, -4557497, 8922258, -11200201, 5682779, -5806259, -1095217,
- -16239271, 1664300, -9787157, -4084514, 34897, 551903, 4552666, 7553774, -190052, -1839857,
- 4716948, 7168838, 2024003, -2659659, -9171903, -11171747, 5400922, 6735046, -566399, -4075387,
- 2488934, -1886564, 2354179, 128849, 5055714, -989990, 3591667, -4504884, -2197950, -873489,
- -1058173, 3213173, -1482301, -25233, -65498, -477815, 458488, 2244121, 2496450, 2852932,
- 1726577, 1312113, -712965, -1256815, 865973, 38655, -2147484, -1931662, -809601, -932008,
- 54761, 1096290, -1591822, 1192927, -243203, -44023, 26307, 529892, -589484, -200790,
- -597000, -1057099, -804770, -731755, -242129, -348966,
- },
- {
- -3968550, -72685880, 5727876, 18524194, -1443109, -5513665, -3346317, -10009421, 8302172, -1639604,
- -16464757, 23248658, -8789114, -6228777, 9729712, -1923609, 777926, 26014080, 3693135, -1547262,
- 5161477, -11498701, 6601902, 1820529, -3591130, 7948374, -15557445, 3827353, -4006668, -3883187,
- 6184753, 12496207, -8366597, 10518375, -2783676, 1143535, -1189169, -2951716, 1955284, 4113505,
- 743029, -4957466, -3555696, -91268, -2183991, -565862, -2146410, 4147328, 1855963, -4575751,
- -5385889, 983011, -1047435, -273804, -3282429, 271120, -5017596, 2056216, -2641405, 1799054,
- 1968706, -1214402, 719407, -3186866, 821949, 2109366, 3695283, 1246077, -2492692, 55835,
- 397284, -1667521, 462783, -1096827, -1190243, -3104188, 873489, -2430415, 1367410, -54761,
- 712965, -2863670, 149250, 169114, -194884, -1405528, 237297, 1957968, -4295, -902480,
- -1449015, 78920, 886374, 44560, -672699, -1611,
- },
- {
- -24011014, -297949920, 14456323, -1330366, 601832, 1937030, 4675609, -2405182, -7532299, 10035728,
- 16310675, -1171989, 8807367, 11227581, -6130529, 3849365, -5027259, 10659035, -1931125, 17275432,
- 7092065, -253403, 1879585, -5900748, 2707977, 12366285, -12702903, -9134859, -14411763, -9237938,
- -4587562, -2045478, 6210523, -877784, 5570036, 4857071, -6160057, -1530082, -6479495, -7374459,
- 11003169, 887985, 3060164, -27380, -10554882, -3118146, 116501, -2241436, 4706211, 1752347,
- 2874407, 1786170, -1628330, -951872, -1631014, -2215130, 1159641, -3062849, 5666136, -1848983,
- -387621, 1105417, -1269700, -673236, 376883, -167504, -553514, 1549410, -663572, 199179,
- 2051384, 1997697, 3325915, -1333587, 659278, -664646, 1840930, 699006, 1294933, 675384,
- 769336, -2414309, 465467, 1025960, 59056, -57445, -842350, 83215, -1698660, -1137630,
- -71404, 426812, -230318, -315680, 106837, -33823,
- },
- {
- -1942936, -11636140, 141197, -5860483, -1708860, 1808181, -1228898, -19864, -5451387, -3310346,
- -7794829, 587337, -5952825, 4614406, -21454436, 13727252, 3736085, -34569120, 1838246, -13916231,
- -3066070, 25710212, -27212376, 4749160, 5669894, -22595286, -8713952, 2386391, 5039071, 9265855,
- -4161287, 16474421, -6441914, -15182709, 8622147, 6987375, -2007897, 4444218, 4437238, 1561758,
- 4039417, -685584, 6163815, 4562329, 6179921, -2631204, -8922258, -136902, -314069, -4032438,
- 1135482, -144418, 381715, -1200443, 1053341, -896038, 4113505, 938987, -3214783, -5717675,
- -2695629, -2297808, -219580, 609349, -858457, 836445, -563178, -709207, 226023, -1331440,
- 947577, -1847910, 863825, -1241246, -817118, -828929, 819265, -1430761, 249108, 1454383,
- 576063, -3231963, -482110, -816581, -1856500, 505732, 441845, 296353, -705985, 603980,
- 361314, 740345, -62277, 560493, -8590, -818728,
- },
- {
- -33925408, -403652288, 14730127, 14885820, 2021856, 2798708, -8160438, 16813724, -10386305, -5212480,
- 1198833, -653909, -16575353, -5371394, -9218074, 11537356, -6678138, -16066936, -17269526, -10104984,
- 8326868, 3994320, 4672925, -5676336, 2381559, 7007239, 3947075, 7573101, 1187022, -5491116,
- -1631014, -1514513, -16330003, 814433, 3826816, -1735167, -4954782, -3854196, 1321239, 301721,
- 9236864, 387084, -2634426, 3350075, 3238405, -1851131, -7819525, 1399086, -3513283, -7296076,
- 2098629, -2034204, 137976, -1699733, 2315524, 3004867, -2993592, 3694746, -2371359, -39192,
- -2273112, 800475, -1177358, -2711198, 4031364, -530965, -1828046, 1874753, -559956, 759672,
- -1551020, -1258425, -330712, 10737, -2377265, -957241, -1510218, 2552821, 3142842, -1330903,
- 19864, -1089848, -233002, 306553, -676457, 806917, 789737, 126702, -5369, -512175,
- -2264522, -1167694, -366683, 375810, -1057636, -210453,
- },
- {
- 403727, -7232725, 2440078, 3295851, -849867, 22012, 1530082, 1177358, 3091840, 370441,
- -7463043, -2830384, -12872017, 15784005, -5145908, 41683196, -13467944, -2005750, 6011881, 20799452,
- -6711960, -6444599, 24607478, -36175972, -10950556, -11318313, -1361505, 23193360, -6624450, -15146739,
- 9676024, 9443559, 1728724, -4493073, -11585674, -1225139, -4798016, -1393717, 1019518, 1531156,
- 1846836, -230854, -2262911, -6798933, -1486059, 3629784, 5674189, -2719788, -1591285, 945430,
- 3226594, 1664300, 2092186, 2295660, -3342022, 185220, -525597, -1959579, -1212255, 5396627,
- 5094368, 2543158, -39192, -3228742, 138513, -1040993, 1658931, -2386391, 2952790, 1590212,
- -122407, -3361886, -2013803, -510564, -1174137, 454730, 1093606, -251792, -796180, -2758443,
- 1748052, 649077, 430570, 1064615, 341987, -2676838, 1183800, -243739, -485868, -403190,
- 430034, 468688, -31139, -202400, 452582, -1121523,
- },
- {
- 87199112, -9591736, -33244658, -24223078, 3947612, 4665945, 7199976, -3171833, 2867428, -1501628,
- -6772627, 7827578, -6520834, 11599633, -30072288, 3178276, 6187974, -2563559, -741956, 704375,
- 2675228, 2516314, 6153078, 7695508, 5834713, -4203699, -2305324, 6485401, -1286880, -8636642,
- -14166413, -90194, 2987150, 751619, 2026151, 7817378, 134218, 11039140, -7778723, 4603131,
- -4951561, -4773856, -7427609, -697395, -1949915, -3223910, -141734, 7389491, -10038412, -4515085,
- 627602, -919123, -4392141, -1423782, -173409, 2167885, 1721745, -2605972, 380105, -127775,
- -1907502, -5216775, -3019899, -672699, -3286187, -1129576, 1988033, 3911105, 770947, -400506,
- 2651069, -1991254, -2755222, 2435783, -1190780, 1236414, 485331, -1479616, 905701, 252866,
- -1414655, -471910, -1662152, -1263794, -40265, 1474248, 27380, -266288, -647466, -869731,
- 302258, -140123, 213675, 43487, -535797, 66035,
- },
- {
- 1183264, -2422899, 4301947, -6109591, 4612795, 348966, 2400887, -921807, -2557653, -911607,
- -427886, 1615982, 5315022, 12734041, -45384920, 10688563, -11400991, 5316096, -18301392, 6847789,
- 17497696, 180926, 10259066, -33027224, -2698313, -11970611, -13539348, 8705899, -3449933, 6516539,
- 709743, -9158481, 2611877, -1774358, 1290638, 3493419, 3820374, 2625299, 6595459, 9840844,
- -5847598, 4529043, 5387500, -4718022, 507343, 1580011, 2595234, 169651, -588947, 780073,
- 7587060, 52076, 1646046, 2717104, -1662152, -363998, 169114, -3468186, 1580011, 1675037,
- 991601, -137439, -3097208, 576599, 4446902, -253403, 3655017, 89121, -255551, -2363306,
- -446140, -1471563, -1032403, -464930, 22549, 61203, -910533, 216359, 845035, 1189706,
- 1855426, 3884261, -2740726, -367757, -860604, -126165, 96100, 360777, 877247, -1130113,
- -180926, 638876, 141197, 444529, -1057099, -280784,
- },
- {
- 34180960, -23936390, -67143224, 2261300, 16079821, -20580410, -819265, -21876952, 1319092, 646929,
- 7576859, -2688650, -3724274, 115427, -11378442, -9981504, -3033321, 5686537, 22112640, 8456791,
- 8100309, -2732673, -916976, -9245991, -8470212, 3034395, 12579959, -5619428, -10359461, -5669357,
- 7709467, -13278428, 7032472, -2126009, -9042517, 1587527, 8019241, 8975408, -583042, -5689221,
- -10901701, -440771, 185757, -2221035, -4872641, 446677, 5573794, -243203, 2021856, -5871221,
- -971200, 5427765, -1329829, -4799089, 3373160, -2399276, -2069101, 2368675, 1234803, 1694365,
- 5486284, -413927, -1799054, -2280628, -49392, -5660767, -2091112, 4156992, -1702418, -894427,
- 842350, 3605088, -312996, -1490354, -197569, -755914, -184684, 548145, -2274722, 584652,
- -146029, 2823941, -970126, 3546032, 1779190, 556198, -2139431, -1270237, -1991254, 792421,
- 430034, -88047, -1015223, 243203, 386010, -1442035,
- },
- {
- -1453846, 50971600, 6870337, 8400956, -1006633, -2891587, 11889543, -1322313, 6065568, 1557999,
- 4557497, 15377057, 5500780, -17725330, 1326071, -6257231, -132070, 4894652, -37461240, 9659918,
- -5656472, -10166724, 4852240, -2076617, -5858336, -4341675, -5164162, -7882339, 573378, -7555385,
- 7305740, -13325136, 271120, 4825933, -9715753, -4336843, -3806952, -2840047, 6940131, 12808666,
- 8462159, -2026688, -1994476, -1724966, 2042794, 8705362, -1865090, 9715753, -1413581, 2894808,
- -6191732, -341450, 4827543, 1188632, -3410204, -6762426, -842350, 1364189, -585726, 5589363,
- -5404680, -295279, 5547487, 4548907, 622770, 392990, -5225902, 1845762, 1306744, 788663,
- -3160559, 320512, -1848447, -564251, -1580011, 343597, -1387811, -89121, 879395, -1465121,
- 2204392, 984621, -3131031, 828929, -1387274, 238371, -962073, -324807, -533113, 969589,
- -536334, 186294, 875100, -2015950, -588947, -106300,
- },
- {
- -6385543, 223364608, 16920560, 4106526, -6701223, 21663278, 21103858, 3599720, -1229971, 11440719,
- 9619116, 11285027, 6550899, -897648, -25004226, -1683090, 4487167, 2741263, -10003516, 2000918,
- -10369662, 9871445, -5766531, 10866267, -12479027, -6933151, -10382010, -1683090, 2072859, -111669,
- -8526047, 4277788, 5806259, -447750, -2769717, 3486440, 1698123, 3564823, -4977330, 1762547,
- -2615635, 1484448, 8732742, -5553393, -6398965, 5396090, -8930848, -600222, 10649371, -3699041,
- -1378148, 2117956, -3846680, -2573759, -3349538, -6966437, -2144263, 307627, 122407, -4223564,
- 2336999, 3613141, 504122, -1394791, -1504312, 359167, 183073, 2302639, -1704565, -1323387,
- -343597, -2029909, 1728188, 1774358, 1625108, 810675, 2331094, 833224, 2453500, 325344,
- -506269, -812823, 2648384, 639413, -23085, 767189, -209380, 1288490, -301721, -127238,
- 501974, -1371168, 41876, -573915, -791348, -124554,
- },
- {
- -2505040, -31853624, 4572530, -5710159, -185220, -8258685, -488553, 8747775, 1792612, -7384660,
- -4875325, -5426155, -6828998, -9303973, -54526220, -5751498, -1402307, -4414690, 18172544, -16198469,
- 9627169, -32904282, -13173202, 10599442, -12875775, 4108136, 22661322, 16667157, -11780022, -6588480,
- -9914932, -4290136, 12691091, -15430207, 5291400, 1431298, -2618856, -8183524, -4697084, 1851131,
- -1294933, 3702262, -3330747, 171799, -630286, -2212445, -853625, 548145, 1637456, 2642479,
- -747324, -1880659, 4420058, -674310, -1320166, 5129265, 5393942, 3066607, 2471217, 4975720,
- -2413772, -35970, 3425773, -2759517, -3740917, 1569811, -599685, -1277216, 518617, -411780,
- -3473018, 2368138, 428423, -9664, 1069447, 1459215, -1465121, -975494, -1172526, -1933809,
- 14496, 1698660, 2252174, -1063004, 409633, 421444, -74625, 732292, 1265942, 892816,
- -832687, 39192, -172872, -755377, 814970, -570157,
- },
- {
- -32857574, 51849384, 9971303, -29685740, 14685567, -16546898, 8372502, 2255395, 3115999, 5837935,
- 9724880, -21233782, -12805982, -26264262, -14595373, 17220672, 19696720, -7701950, -17534204, -2129230,
- 250182, 496606, 4958540, -3486977, -630823, -7019587, -7158637, 1414655, -701153, 7835631,
- -1879048, -10085657, -2603287, -7237557, -3788161, 4442607, 479426, 8541079, -8987756, -2956548,
- 11711302, -1358283, 1902671, 7253663, 6654515, -3579318, 595927, -6810208, -7431367, -3956739,
- -1306207, -1679332, 121333, 62814, 1656784, 578747, 659814, -2755759, -2463701, -1065152,
- 4165582, 1488206, 1955821, -409096, 2747169, 3578245, 4594542, 3091840, 4814122, 597537,
- -2590939, 1852742, -1845225, 558346, 115427, -453119, 297427, -1759863, 306016, 1976222,
- 763430, 765578, 1615982, 976568, -373662, 906238, -105764, -916976, 758062, -30065,
- -554588, -994285, 79457, -117038, -35433, -588411,
- },
- {
- 2828773, -60342680, 8106751, 1165010, 10065793, 1924682, 6001143, -1709934, -6163815, 6942815,
- 3252364, -2673617, 6887517, -51484848, -41808824, -29317446, 36089536, 16250546, 19699404, 5735392,
- 2419140, 29333552, 11184632, 12569222, -8125542, 2330557, -13766444, -8669928, 13731010, -8257612,
- -1380832, 736050, -1722819, -2888366, 2411087, 1495186, 817118, 4151086, -3260417, 4172024,
- -3999688, -5509906, 620086, 2360085, -11685532, -785979, 2512556, 4823249, -3077881, -1032403,
- 2679523, 3644280, 8053, 2967823, 4938139, 2503966, -1256278, -1736777, 3786551, -152471,
- -2339147, 5394479, 2942590, 1230508, -257161, -2018098, 2796561, 1593433, -3200825, -1819992,
- 1276679, 1089848, 1331977, 386010, -2266132, 622233, 2192581, -1406065, -1626182, -1541893,
- -344134, -1565516, -769873, -110059, 96100, 379568, -12885, 1196685, 363462, -466541,
- -370441, 526670, -286689, 714575, 162135, 1055488,
- },
- },
- {
- {
- 792958, -284313952, -28560996, -21189758, 2056216, -11126650, 4334696, -11194832, -4807679, -16561931,
- 1730335, -26154204, -8393440, 5810017, 15590194, -12287901, -7234336, 1774895, -9058086, -8847096,
- 733366, 7218767, -8415452, 5952825, 1577327, 7538742, 1230508, 4493073, 1843615, -16193100,
- -7904888, 1532230, 10358924, 1117765, 9562208, -2103460, -1114544, 4544613, 6174016, 2665564,
- -5027796, -2471217, -5897527, 1437740, -10503879, 2711735, -2325725, -4488778, -4240744, -7028714,
- -4842039, 2310156, -3690988, 2384781, -285615, -3837017, -2426657, 454730, -1167694, -1544041,
- 4719632, 1512365, -2479807, -2975339, -1178432, 340376, 2602213, -2933463, 199716, 703301,
- -2201708, -774705, 419296, -1434519, -1027034, -933082, 677531, 611496, 608275, 1527398,
- -52613, 292595, 2019172, -805306, -1423245, 590021, 687195, 760209, -594316, 726386,
- 494995, -89657, 39192, 784905, -351114, 1180579,
- },
- {
- 232465, -12226698, -14989436, 16798690, -1582696, -1255741, -1874216, -1540283, -5210869, -6477348,
- -11713986, -3779034, 13887240, -515933, -4524211, 14596446, -711891, -4822712, -9508521, 1821066,
- -118112, -5910412, 2792266, 7754564, -28309204, 11344082, 1745904, 18329846, 3102040, 4005057,
- -9719511, 6560026, -826781, -423054, 4909148, -929860, 7789997, 7248831, -1751810, -1879585,
- 146566, 5478768, 2580739, 377957, 1685775, -2959769, 3551401, 34360, -4199405, -5761162,
- -33286, -3182034, 2691871, -500901, 3129421, -6693707, -474594, -1582696, 4770635, 1948305,
- -1670742, 665720, -1984275, 1613834, -1145146, -761820, 879931, 2268280, 1018444, -165356,
- 1079647, 2215666, -4031901, -3830037, 969052, 888521, -265751, 398358, -62277, -55298,
- 239981, 288300, -1155883, 2077154, 338766, 513249, -10201, -20938, -512175, 825707,
- -580357, -1200443, 177167, 216359, -193810, -471373,
- },
- {
- 3318399, -62000536, -1871532, -4825933, -14368276, -2672544, -2571612, -12885976, 6971269, 6245956,
- -7932268, 9031242, -17302276, -2172180, 21641266, 8713952, 6715718, 20880520, -5318244, 2746632,
- 13945222, -1404454, 7365332, -10248866, 3549791, 20732344, -15293305, -2652679, -3973919, 2789045,
- -4247723, -2318209, -9446781, 619549, -6516003, 1689533, 1543504, -1053878, 184684, 1441498,
- 648003, -2617246, 827855, 2382096, -2692945, -927176, 1735167, 4709432, -2631204, -2781528,
- -46708, 575526, -2390149, 1495186, -1878511, 1222992, -981937, 5280126, -1374926, 1052804,
- 745177, 259846, 2734284, -1859184, -537, 1932735, 2982855, 514859, -989453, 857920,
- -927713, -1749662, 2457795, 740345, 2415919, -862752, -1192390, -2986613, 3197603, 1250909,
- 1993402, -2717104, -552977, -347355, 827318, -679679, -316754, 873489, 479426, 732829,
- -1381906, -285078, -326418, -471910, -406948, 176094,
- },
- {
- 43122544, -260294352, -16658568, 22654342, 10446971, -1852742, -4373888, -7585449, -379031, 4228932,
- 1635309, -9078487, 3157875, 2069101, -23130546, -9551470, -13471702, -5260798, -9748502, 9482214,
- 725313, 9391483, 11624329, -6220724, 5187247, 10611254, -9436043, 4160213, -3675955, 5047661,
- 4490925, -3795141, 4589710, -3322157, 4462471, 4464082, -6631430, 2029909, -1316408, -1005559,
- 8518531, 251256, 4596152, 4430259, -7002944, -1129576, -2379412, -8704288, 2080375, -1145683,
- 5706938, 5598490, -3208341, -972273, 2300492, 3622268, 5885716, -3580392, 3374771, -1496796,
- 3555696, 4796942, -2963528, -1847910, -12348, 1763621, 2268280, 2856153, 299574, 792958,
- 1531693, 306553, 678068, -1707786, 1649268, -699543, 1780264, 149250, 373662, -658741,
- -133681, -2244657, -93952, -244813, -619549, 108448, -1625108, -107911, -693100, 99858,
- 598074, 857920, 301185, 45097, 1264868, 666257,
- },
- {
- 1201517, -20895552, -9480603, 413391, 3850438, 845035, -1572495, 6214818, 1694365, 1647657,
- -5300527, 187905, -12548284, -8405251, -26530550, -2383170, -12070469, -7741142, 42171212, -6841883,
- -4582730, 19470698, -24819006, 4162897, 955093, -6267968, 5491653, -117038, -2261837, 7773891,
- 4509716, 14681272, 2368138, -5362804, 578747, 3579318, -1688459, 8250632, 8011725, 2874944,
- 5786395, -6144488, 2980707, 7782481, 8709120, 1101122, -5979668, 4201015, 7762617, 967441,
- 5315559, -633508, -625992, -601295, 1250909, -2246268, -328565, -870268, -965294, -900333,
- 856309, 73014, 2295123, -562104, -1285806, 1704028, 1549946, 1802276, 877247, -1585380,
- 1094680, -930397, 1861332, 216896, -570694, -584116, 2181307, -228170, -712965, -641561,
- 909996, -1129576, -49392, -758062, -1216550, 162672, -519154, -68183, -581431, 1128503,
- 601295, 729608, -1149441, -114890, 345745, -40265,
- },
- {
- 60972428, -328603648, -20302848, 23801636, -2189897, 269509, -3550864, 24013700, -9729175, 1777580,
- 4490925, 10050223, -1846299, -3881040, 5020280, 16212428, -8369818, -7485055, -3456912, 2612951,
- 12461848, 5697811, 3704409, -7652021, -1034550, 5743445, 5013301, 11218991, 4718559, 2880849,
- 1532767, -4565014, -18330920, -5741835, -3019899, -6932614, -6649146, 570694, 1386201, -4824859,
- 6431177, 3295314, -1153736, 4233764, 11039677, 6591164, -7838852, 1030792, 2888366, 2645163,
- 5235029, 1047435, 1027571, 1121523, 3401614, 1808718, -5815386, 446677, -3925600, 1459215,
- -1371168, 3060701, 2794413, -777389, 2473364, -390305, -373662, 768799, -1314260, 2102923,
- -608275, 763430, 4832, -730144, -1089848, -601832, -1687922, 676457, 1893007, -1240172,
- 1489817, 172336, -1381369, -81604, -329102, 892816, 433792, -249645, 356482, 312459,
- 272730, -6979, -543313, 389231, -423054, 96637,
- },
- {
- 105764, -13833016, 6254010, 6109054, -801548, -841277, -479963, 2581275, 4049617, 2498597,
- -657667, 4996121, -4799626, 29331942, -3927211, 10153840, -30853434, -1158031, -8428873, 11485816,
- 5841693, 9225053, 25732222, -31772558, -8469139, -9717900, -15861851, 17813376, -2511482, -19593104,
- -2299418, 1699733, 2434710, -3003793, -6395207, 533113, -2620467, 236223, -2068564, -2274722,
- 310848, -1642825, -631360, -722091, -3125663, 2065879, 6268505, 1770063, -21475, -1717450,
- -9127, 1318555, 1360968, 592169, -3629247, 2283312, 799938, 2147, -1266479, -1516660,
- -1061931, -1517197, -637803, -2596845, 216359, -1561221, 2381559, 593779, 4740034, -53687,
- -1207960, -1382443, 129386, -943819, -1174674, 506269, 119185, -578747, 179315, -1960116,
- 1118302, -693637, 572841, 457414, -488553, -712965, 1460826, -801011, 1228361, 159988,
- -316754, -410706, -623844, 272730, 148713, -1196685,
- },
- {
- -74568688, -150067232, 11241540, -49376016, 108448, 3248606, 9047349, -678068, 1865090, -625992,
- -6866042, 3891777, -4230543, 23800024, -17091822, 2161442, 19248970, 5978058, -12069932, 2347737,
- 8045011, 4075924, 7468948, 5838471, 5901822, -2021319, 4910222, 6393596, -955093, -5229660,
- -9627706, 1653026, 6600291, 622770, 1566053, -1687922, -6258841, 10192494, -8148627, 5885716,
- -3323231, 317291, -5878737, 4365298, 4217121, -421981, -4614406, 8953933, -620086, 3073586,
- 7878581, 5224828, -2262911, -944356, -213675, 3746822, 3856881, -3591667, -306016, -2139431,
- -3747359, -3958349, -1647120, -397821, 566399, 971736, 969589, 2480881, 1121523, -2551211,
- 932008, -866510, -3115462, 1083942, -2464774, -627065, -1353452, -1842541, -175557, -665183,
- -804770, 1706176, 427886, -217970, 250182, 666257, -84826, 1260036, -4832, -1397475,
- -858993, -1133335, 308701, 349503, 109522, 1513976,
- },
- {
- -56371, -12335683, 7082401, 2109903, 6939594, -666257, 1661079, 567473, 1233729, -506806,
- 1228361, 3709241, 3125663, -9775346, -69837240, 4440996, -20075214, -1356136, -18289582, 23190140,
- 16389595, -15643882, 15648713, -37316824, -12759274, -5110474, -13981729, 11773042, 6958921, -2039573,
- -1730872, -4355634, -1889249, -10038949, 6614250, 7226283, -5134097, -471373, 9954124, 7806640,
- -7605314, 5883569, 4399657, -1421097, -3360812, -5574868, -1195075, 343061, 143345, -3138547,
- 2568927, -6017786, -2233920, 3458523, 130997, -1917166, 1599875, -952409, 2709588, 207769,
- -429497, -1884417, -3855807, -6979, 674847, -2437931, 1318018, -863288, -105227, -1525787,
- 1408749, -1748589, 659814, 1375463, 311385, 2093260, 949188, 297427, 1764695, 530965,
- -27380, 2284923, -2678986, 358630, 717796, 709207, -1196685, -396748, 1772211, -1167694,
- -368830, 1780801, -183073, 485331, 284542, -435402,
- },
- {
- -32006634, -12793634, -3519189, -4419522, 9408663, -147640, 30983894, -5019206, -1591822, -41876,
- 10553272, -1096290, -13629005, -7096897, 448287, 2352032, -9337259, -2557653, 1924682, -10849624,
- 1605244, 6005975, 4279398, -4151623, 7972533, 7622493, 6167036, -6438156, 2816962, 3151432,
- 5507759, -11657078, 12233677, 1546725, -13200582, 768799, -5295695, -5514738, 3139084, 7940858,
- -4122632, 865973, 3363496, 2355790, -1695975, -6258304, 4279935, -630286, -459025, -3343095,
- -868120, 537, -1686312, -1064615, 4924180, -3518115, -2675228, 3604551, -476741, -1084479,
- -1065689, -3677029, -783295, -1872606, 320512, -4655745, -1815161, 2360622, -1386738, 948651,
- -1029182, 751082, -533113, -1789928, -127775, -809064, -491237, 1980517, -537945, 1946694,
- 20938, 2772402, -1996086, 1959579, 476741, 1923609, 888521, 608812, -960999, -183073,
- -1413581, -242129, -1571421, -273804, 1349157, -109522,
- },
- {
- 2048163, 27309012, -14113799, 1403917, -5037460, -10131291, 1450625, -3283503, 7462506, -8294119,
- -9301289, 6106907, -127775, -12284680, -3899830, -6279779, -4474282, -142808, -32311576, 14776835,
- -5633387, -5252745, 8413841, 6581501, -113817, -12083890, -11208254, -4127464, 11574400, -4211216,
- 2645700, -9942312, 2066953, 740882, -4119411, 1059783, -5888400, -5907191, 1654099, -381178,
- 302258, -3598109, -4151623, -628676, 2916283, 4059818, -6933151, 7190312, -2310693, -2722473,
- -10595684, 1239098, 3281355, -340913, -4095251, -6293201, -877784, 1247688, -250719, 6897181,
- -1751273, -2070711, 697932, 3231963, 781147, 3099356, -3182034, 447213, -331249, 922881,
- -1461363, 3426310, -183073, -1175747, -1412507, 1972464, -868657, -600222, -155693, -2236067,
- 877247, 518080, -3205656, 1222455, -1357747, 1009854, 343597, 289910, -695785, -852551,
- -666794, 1226213, 1647120, -1076426, -311922, -315680,
- },
- {
- -30332670, 205869600, 20309826, 3735011, -9598178, -2123861, 4093104, 7165616, -10263361, 3983582,
- 4771709, 1940788, 8942659, 4509179, -19239842, -3548717, -2474975, 703838, -12972949, -1278827,
- -4876399, 13399761, -12412992, -2503966, -2861522, 11778948, 2930778, 2312303, -1404991, -519691,
- -5882495, 4947803, 2007897, -5880884, 8588861, 1915555, -13972602, -2724620, -7569343, -1843615,
- -1785096, -384936, 3968550, 1581085, -4151623, -1010391, -13537200, 1114007, 12681965, -2032056,
- -6485938, -5727339, -3564286, 2697240, -3731790, -4760435, -1061394, -2356327, -3173444, -7056095,
- 3759707, 4511327, 966368, -1183800, 55298, -1888175, -2931852, 3332895, -153545, -2159832,
- -2077154, -2212445, 1357747, 926102, 2217814, 1603097, 2430952, 1224066, 1949915, -96100,
- -59593, -1324997, 2595234, -73551, -887448, 712428, -494995, 816581, -1299765, 780610,
- 745714, -1675037, 688805, 119185, -410706, -1073742,
- },
- {
- 1986959, -50778324, -10514617, 6194954, 5182415, -5625334, 5488968, 6705518, -2743410, -10136123,
- -280784, -2252710, 10242960, 7875897, -24151138, 17336098, 19470698, 5849209, 15049565, -17251274,
- 26014616, 5522254, -10153303, -14526116, -24947854, 2960306, -876710, -242666, -2909840, 7987566,
- 1225676, 726923, 7041062, -24385750, 2153926, -6128919, -3620658, -2558727, -5084168, -2142115,
- -1204738, 7744900, 5081483, 5521718, -1683090, 5354751, 3459059, -82141, -1498407, 2950106,
- 5299990, -1784559, -643171, -673773, 1020055, 3492345, 1341640, -2764885, 77309, 2334852,
- -3427921, -351114, 5658620, 1227824, -1507534, 2444373, -1817845, -4646618, -795643, -667867,
- -2356327, 2069637, -1018444, -1571421, -2251637, 1667521, -1151588, -2054605, -663036, -1328756,
- -1357210, -1650878, 364535, -2062121, -49392, -712965, -1349157, 896038, -504659, -336618,
- -482110, 213675, 342524, 361851, 1036698, -517544,
- },
- {
- 18741626, 120687504, 10581726, -19832548, 17694192, -28229210, -10350334, -11126113, -2381559, 7979513,
- 11653320, -24515136, -1968169, -1571958, 10725607, 15402826, 24035174, -292595, -11339787, 8179229,
- 7781944, 4811974, 6375879, -1475321, -3794604, -7384123, -2679523, -3809636, -3444027, 1379758,
- -4849018, -5448166, -916976, -11702175, -4866198, -1183800, -11576547, -2662343, -11819750, 485868,
- 12254079, -10860362, -2994666, 1227287, 1415192, -9179956, -4081830, -1560147, 3491809, 7427072,
- 8150774, -1352915, -4144107, 5694590, 7570417, 549756, 1227824, -3500935, 252329, 961536,
- 912681, -94489, 950262, -1179505, -867583, -1548336, 1334124, 1090922, 1533840, -26844,
- -2008434, 1415192, -1649804, 802622, -118112, -887448, -105227, -870268, 1606855, 1523103,
- -956704, -574989, 1032403, 1709934, 358093, 1504312, -811212, -1287417, 398358, -1071594,
- -109522, 201863, -199179, -64961, 311385, -355409,
- },
- {
- -3604551, -56316148, 14999100, 1649268, 5236639, -8167954, 1291175, 2178085, -2909840, 6117644,
- -4933307, -7812546, 9263171, -4950487, 32597192, -22196390, 20557860, 4929549, 6273337, 5159330,
- -3007014, -1915019, -17855790, 8738111, 77309, 5427765, -13429289, -7359964, 2134599, -14059039,
- 8489540, 6290517, -159451, 2348273, 3246459, 501437, 11355894, 9439264, -7541426, 5257040,
- -3202972, -4450123, 2767033, 1182190, -10062035, -4031364, -856846, 1927367, -3481608, -575526,
- -2578054, 163746, -2161979, 3000572, 5281199, 1304596, -1884417, -869194, -653909, -2013803,
- -2982855, 2652142, 1415192, -71404, -1129576, -1206349, -759136, -1309428, -2021856, -4499515,
- 509491, 896574, -166967, -888521, -609349, 1890323, 194884, -658741, 1506997, -96637,
- -118112, -1986959, -45097, 1947768, 2046552, 326418, -289910, -340376, -1528472, -1285806,
- -1360968, 57982, -433792, 12348, -284005, 1519882,
- },
- },
- {
- {
- -456877, -149100320, -129279592, 1933809, -26450020, -2972654, -1858647, 2414845, -10599979, -1469416,
- -11051488, -16430397, -21800180, -752693, 24366424, -13361106, -6267968, 205085, -2709588, -15932181,
- -2928094, 6587943, -742493, -4588099, 1128503, 7617662, 4910222, 10635950, -7598871, -5376762,
- -13665512, 33286, 9452149, 7374459, -1132798, 1735704, -2089502, 5965710, 4580583, 607201,
- 1989107, -4350802, -7880728, 926102, -2644626, -6394670, 2252174, -6212670, -3026878, -5604933,
- -1376537, -5436892, 683437, -3106335, 641561, -620623, -764504, -1218697, -1565516, 1560684,
- 2000918, -619549, -2179159, 31139, -2377265, 1096827, 1260573, -2087354, -1369558, -389231,
- -1130650, -798327, 1127429, -1396401, -1428614, -1001801, 1076426, -61203, 1337346, 1562831,
- 880468, 210990, 551366, -1068373, 343597, 404801, -509491, 1293859, -300111, 794032,
- 488016, 51540, 20938, 289373, 534187, 554588,
- },
- {
- -1223529, -15771120, -8932458, 950798, 10409390, -856846, -2067490, -150324, -2844342, -6533719,
- -17442936, -4635344, 9496710, -5539434, -1410360, 9360881, 7134478, 1601486, -20300700, 5757941,
- -4789426, -6015639, 11200738, 9096204, -28865938, 6854231, 12324409, 7055021, 4451197, -2090575,
- 8245801, -9033927, 9374840, -1666984, 9942849, -2163053, 2598992, 3322694, 1870458, -1919314,
- -668404, 5216775, 5068062, -2418604, 3288334, -1069447, 454193, -3307125, -183073, -3066070,
- -5464272, -336618, 2623151, -45634, -2742874, -2333241, 940061, -986232, 5326833, 887448,
- -1774358, -1922535, -594316, 3289408, -1294933, 667867, -316217, 1388885, 2344515, -1570884,
- 771484, 1204738, -3156264, -2985539, 950262, 115964, 223338, 992137, -141197, -47245,
- 927176, -1215476, 141197, 1190780, 1316408, 685047, -1097901, 63351, 219043, 765578,
- -792958, -867583, 531502, 175557, -825171, 482647,
- },
- {
- -2067490, -24927990, -23626616, -20511690, -443455, -3700651, -1726040, -3206730, -1944547, 817118,
- 6829535, -7290707, -4489315, -5478768, 12643310, 15889232, 7216619, 21902722, -18066244, 10536092,
- 10936597, 6292127, 358093, -4379793, 10761041, 8236137, -5363341, -4372277, 2862596, -815507,
- -6702834, -2943126, -4330401, -10660109, -4898410, 1781338, 4784594, 427886, -845035, -1054415,
- -1611150, 2020782, 2882997, -1181116, 1770600, -2574833, 3435974, 3794067, -4601521, -2479807,
- 2952790, -1552094, -1190243, -2536178, 2109366, -1287417, 3062849, 562641, -117038, 755914,
- 2293513, 91268, 2161442, -1788854, -667867, 2863133, 1290638, -1040456, 824634, 1018981,
- -934155, -888521, 1657321, 250182, 2123861, 1208496, -3209414, -1407676, 1261110, 1129576,
- 1774358, 5369, -1520418, -128849, 469762, 140660, -466541, 248571, 554588, 755914,
- -327491, -890669, -1079647, -1068373, 447750, 644245,
- },
- {
- -50762220, -185044368, 24664386, 49833968, -12402255, -542777, -4167192, -5697274, 4534412, -6724308,
- 2881923, 2598455, -4683125, -6798933, -21949430, -3077344, -22525492, -6447820, 1122060, 124017,
- 4207994, 8283918, 9492951, -6330245, 424128, 6292664, -1135482, 3680787, 1926293, 2812130,
- 9658308, -5663988, 3296388, -424665, 1257889, 1363652, 937914, -622233, -3810710, 5095442,
- 628139, 4105452, 4647692, -1950452, 799401, -336618, -5794985, -5495948, -2281702, 3801583,
- 2375654, 6813429, -1582696, -2508261, 4958003, 3893388, 2477123, 913217, -2568927, 1089848,
- 3251827, 3978214, -1045825, -2148021, -1510755, 2855617, 2917357, 1419487, -335007, 1754494,
- 503585, 330712, 605054, -271657, 143345, -413391, 1402844, 1062468, -139586, -309775,
- -871342, -253940, -1613297, -935766, -610422, 479963, -693100, -884763, -223875, 157840,
- 657130, 467615, 370441, 523986, 580894, 716723,
- },
- {
- -643708, -34526704, 4282083, 5663452, -26844, -366683, 1162862, 3773129, 4313221, 390305,
- -3694209, 2664490, -7097434, -9627706, -20715164, -28564216, -16499654, 39346196, 6025302, 3100967,
- 2647847, 9729175, -8587787, -10107669, -4247186, -11308112, 22636626, -7455527, 1057099, 4963372,
- 6125697, 6803765, 2711735, 4138201, -1125281, -818191, 2289218, 6367289, 5040144, 3794604,
- 3458523, -3655554, 5873368, 4899484, 2546916, 3630858, 496606, 959925, 5243618, 5554467,
- 4842576, -1199370, -1076426, -529892, -378494, -2501282, 322123, -1491964, -1647657, 1671279,
- 3120831, -2811593, 3402688, -956167, 1872069, -1810866, 1061931, 3621731, 392990, 769336,
- -941672, 315143, 456340, 2131915, -1137093, -155693, 1463510, 751082, -1002338, -1158031,
- 683974, 468688, -503585, -677531, -875636, -224412, -267899, -39192, 215822, 243739,
- 692564, 564788, -818191, -45634, 536334, 119722,
- },
- {
- -70165272, -201386192, 14257681, 5180268, 12611635, -306016, 13483513, 7443179, -8581882, 11998528,
- 3136400, -6408091, 11938398, 195958, 2983929, 7167764, -5494874, -2240362, 1153199, 13470628,
- 2931852, 2949032, 3240016, -2391760, -6222871, 1159641, 8331163, 4211753, 10266046, 9009768,
- -2413235, -7791608, -11868068, -7998303, -6481643, -4539244, -1723356, 1938641, -3161096, -4823249,
- 1256278, 4395362, 5000953, -1199907, 8923331, 5559835, -5489505, 581431, 3862249, 4052302,
- -120259, 4793184, -1750736, 6739341, 134755, 1366873, -1610076, -615791, -3174518, -361314,
- 1014149, 560493, 1531156, 3025805, -1596654, -616328, 1884417, -755377, 701153, 432181,
- -56908, 1405528, -1889249, -26844, -345208, -107911, -1100049, 394063, -151934, 332860,
- 745177, 1535988, -1466731, -734439, 31675, 813359, -12885, -343597, 75162, 1328756,
- -187368, 152471, 24159, -169651, 476741, 62277,
- },
- {
- -484258, -12397960, 6337224, 1298691, 3925600, -844498, -1124745, 3361349, 1862405, 576599,
- 3629247, 4002910, -74625, 5081483, 5597953, -15367930, 1452236, -1591822, 769873, -607738,
- 7234873, 6254546, 20937966, -4378183, -17690434, 730681, -20944944, 4101694, -5190468, 1740536,
- -7757248, -6087580, -1217623, 6231998, 112206, -7284802, 1075889, 1174674, -3262028, -3322694,
- -102542, -1637993, -1422708, -1389422, -565325, 3979824, -132070, 5702106, 1435593, -1680943,
- -1603097, 1796907, 949725, -2770791, -323733, 1074279, 1857573, -3379603, 3031710, -3180960,
- -2213519, -654983, -934692, -1273995, -174483, -46708, 1688459, 1219771, 3314641, -1062468,
- 118112, -836445, 184684, -1138703, -169114, -827855, 791885, 261993, -226023, -851477,
- -496606, -825171, 1460826, 206695, -519691, -117038, 746251, -620623, -22012, 870805,
- -57982, -1120987, 318901, 255551, -637803, -208306,
- },
- {
- 48508972, -232052256, -38760468, -50966228, -10098005, 3468186, -1574106, 3856881, 3599720, 7152195,
- -2062121, -11774116, -3141769, 7592966, 15353434, -9999221, 7988639, 13290239, -9242770, 6672232,
- 5880347, 4608500, 4502200, 4561792, 2369748, 1414118, 8082592, -471373, -3253438, -4795331,
- -1909113, -259846, 3648575, 3273302, 1108102, -1298691, -4128537, 3342022, -1056025, 1881196,
- -3642132, 1089848, -1245004, -624918, 7982197, -3158412, -2856690, 8277476, 2934000, 5835250,
- 6728067, -373125, 1739462, 72478, 624381, 3406446, 1096827, -4874788, -927713, -2633889,
- -2638721, 448287, -1577864, -753230, 525597, 2509335, 741956, -1119376, 2485176, -1185411,
- -1031329, 244813, -1044214, -1658931, -1027571, -1658394, -1327682, -521839, -2039036, -514322,
- 523449, 955630, 376883, 55298, -417686, 1400696, 119722, 227096, 1051193, -1181116,
- -1316944, -260382, -178778, 390842, -484258, 1189706,
- },
- {
- -1098438, -361851, -5362804, 10003516, 1128503, 116501, 605590, 1711008, 1222992, 911607,
- -1218160, 4608500, -1447404, -2557653, -53888416, -30093226, -16087874, 4174171, -11090142, 25682830,
- 11785390, -17898202, 3735548, -5840619, -24065776, -10558103, 2210298, -6536404, 13484050, -7183870,
- -3882114, 3710315, -4080756, -9477919, 11218455, -2723009, -2729452, 3737159, 3780645, 8569533,
- -408559, -437013, 4951024, 1195612, -6127845, -4684736, -3281892, -785979, 518080, -405874,
- -665720, -4830765, -2820183, 1744831, 162672, 335544, 2457795, -120796, -132607, -471373,
- 919660, -2798708, -1411971, -2187749, 157840, -807454, -1298154, -522375, 1433445, -1739462,
- -217970, -1211181, 854699, 1571958, 1112933, 817118, 1968169, 164819, 1066763, 896038,
- -544924, -1001264, 525597, 683974, 532576, 383863, -1050656, 52076, 971200, -627602,
- 632971, 209380, -9127, 276489, 967441, -201863,
- },
- {
- 29383482, -13627931, -57869316, 13467407, -3045132, 6312528, 26089778, 2859375, -8737574, 8589935,
- 2915746, 6930467, -13535589, -18662706, -6647536, 1844689, -657667, 4976257, -12890807, -49392,
- 3932580, 2507724, 1265405, -3790309, 13616120, 9154186, -449361, -2602750, 5743982, 1074279,
- -8443369, 4327180, 2038499, 7209103, -8310762, -5551245, -6161131, -4599373, 3958349, 6034966,
- -1345399, 145492, 1684164, 1787243, 5487358, -5440113, -3901441, 1573032, -1977833, -1794760,
- 4062502, -4676683, 351114, 508954, 404264, -17717, -4489852, 2358474, -246961, -1491964,
- 518080, -3998615, -2592013, 185220, -1758252, -2291902, 159988, -574989, 1641214, -938450,
- 352187, -147640, -1000191, -1850057, 1634772, -1058173, 463856, 355945, 239444, 843961,
- 1790465, 1313723, -500364, 982474, 1000727, 799401, 933082, 541166, -338766, -199179,
- -1684164, -96100, -1663226, -55835, 521302, 1022202,
- },
- {
- -2288144, -4282083, 15157476, -2231236, -2317135, -1479616, -9292162, -4700305, 809064, 2885144,
- -2747705, -9282498, -4348655, -9808632, -5506685, -1726040, -9074729, 6612102, -9569187, -7473780,
- -2135136, -443455, 571231, 6936372, 4868883, -5403606, -14007499, -1828046, -1182190, 7699803,
- 1204202, -5560909, -869194, -1636919, 5734318, -10703059, -1540283, -5418638, 1698660, -1990181,
- -6629819, 4691715, -6172405, -1180042, 1884954, -950798, 2093260, -2391760, -2280091, -4134980,
- -3652870, -427886, -818191, 1724966, 281857, -7824357, -1175210, 556198, 351114, 3684545,
- 3163244, -1697586, -960999, 1685238, 2622078, -449361, -722091, -402116, -649077, -154082,
- 373125, 2268817, 547608, -388695, -944893, 398358, 440234, -591095, -749472, 146566,
- -1619740, 156766, -720481, -394600, -505732, 457414, 343061, -110595, 278099, -818728,
- -861678, 1004486, 1321776, -399969, -243739, 140660,
- },
- {
- 55097988, 108452216, -1363115, 1680943, -5108864, -6706055, 1983201, 2656974, -8121783, -2072322,
- 12831752, 4656282, 3497177, -5441187, -2385318, -9740449, 1115081, -3083250, -15083925, -148713,
- 6323266, -1425929, -2902861, -8517994, 15104326, -1792075, 13739064, -3883724, -1705639, -6256694,
- 3489124, 450972, -1997697, -5841156, 4828080, 4078072, -8931921, -3320547, -7466801, 91268,
- -4799626, 4510790, -2639258, 2451890, 2738579, -9737765, -10524817, 5218922, 3561065, 498216,
- -4027069, -7246684, -1488743, -1400696, -1162862, -2282775, -3776350, -1425392, -4034585, -3163780,
- 3897146, 2308545, 625992, -294205, -760209, -392990, -3221762, 931471, 959925, -2172717,
- -1765232, -493384, 529892, 1078574, 1340567, 1532767, 1738388, 1668595, 1986959, -759136,
- 121333, -357019, 1123671, 1282585, -1152125, 169114, 592169, -289910, -1621887, 1439351,
- 384400, -1404991, 10201, 620623, -522912, -827855,
- },
- {
- -1118302, -54681912, -2930242, 5501316, 3476239, 1396401, 3069291, -175557, 908922, -10009421,
- 1114007, -2946348, 8560944, 24438900, 9742596, -22241488, 17591650, 3648575, -1700807, 4481799,
- -11746736, 31153008, -4295, -18853296, -18865644, -3197066, -7745437, -7796977, 7270306, 11577621,
- 4221416, -8473970, 4887136, -6869264, -5637145, -8505646, -2582886, 2914135, -213138, -7314330,
- 386547, 2418067, 9625559, 5399848, 2039036, 1713155, 3410204, 363462, -791348, -214212,
- 6868190, -799401, -884226, 96637, 646393, 875100, -1305133, -1871532, 1010391, -944356,
- -592169, 444529, 4518843, 814970, -1198296, -192737, -549756, -4274566, 867047, -1024350,
- -2077154, 37044, -467615, -1235340, -1858647, 813359, -82141, -2690260, -1480153, -201327,
- -1511829, -1949378, -1202591, -19327, 115964, -1328219, -929860, 475668, -1209570, -651761,
- 13959, 388158, 280247, 180926, 751619, 330712,
- },
- {
- 3792456, 139589120, -2181844, 11089606, -7197292, -15275051, -13290239, -6674916, 1625108, -4611185,
- 17920752, -21294984, -394063, -4701916, 21357262, 757525, 15707769, 7739531, -6256694, 6787659,
- 9456444, 7969312, -2680060, 1312649, 820876, -4112431, -7174743, -5208185, 3568044, -8910447,
- -4033511, -974421, -3249680, -9941776, -3095061, -3358128, -4655208, -11167989, -1143535, -4660040,
- 4555350, 1952600, -7235410, -3877819, -842887, -5500780, -772557, 511638, 118112, 5292474,
- 6220724, 5994701, -2167348, 2238215, 5850819, -607738, 524523, -690416, -553514, 3892851,
- -1065152, 404801, -1884417, -611496, -603443, -304406, -1088774, 970663, 1315334, -3104188,
- 2679523, 533650, -1117228, 580894, -166430, -2321967, -1232656, 1186485, 1578401, 2014340,
- -321586, -1444720, 103616, 1968169, 513785, -372052, -191663, -34897, 32749, -1715303,
- -5369, 818728, 85899, -5906, -332860, 827855,
- },
- {
- 4147328, -45686104, -1513439, 6462315, -98784, 251792, -4647155, 623844, -2794950, -1889249,
- 1045825, -561030, -2761127, -5839545, 56588880, -11303817, 412854, 8435316, 851477, 17311402,
- -12173548, -12080132, -11346230, 2633352, 12323335, -3521336, -8390755, -19005768, -8841727, 5926518,
- 3455301, 6983080, 1269163, -2641405, 2062121, 7502234, 6717329, 7153805, 2007360, 475131,
- 3507915, -6420976, 5517959, -5456219, -6176700, -3478387, -4663261, 508954, 1203665, -3630321,
- -2429341, -2147, -766115, 5347771, 2717641, 2263985, -1220308, -2240899, -2663954, 896574,
- -2450816, -954020, 3482145, -141197, -2326262, -2231236, -883690, -2724620, -1718524, -2327872,
- 530428, -30065, -656056, -90731, 693637, 998580, 1167157, -1146756, 297427, 437550,
- -244276, -2327336, 656056, 2039573, 2382096, 134755, -471910, -475668, -1866163, -1017370,
- -1090922, -74625, 77846, -733903, 155156, 595390,
- },
- },
- {
- {
- -3329674, 22081500, 33061584, 26717918, -10223633, 4555887, -2651069, 8275328, -966905, -2687576,
- -5443871, 5267778, -16864190, -9838696, 8787503, -15717433, -6306086, -4460861, -1523103, -11558294,
- -2080375, 5959267, 5208185, -2492155, -1453846, 3766150, -3481071, 2221572, 1523103, 5469641,
- -7268159, 4955319, 4052302, 3135326, -2340220, 4628364, 1508070, 2679523, -2449205, -2156611,
- 5495948, -560493, -4818417, 729608, 1091995, -2161442, 5472862, -1738388, 694174, -1702418,
- 1465658, -4418448, 2579665, -3435437, 1800665, 850940, -225486, -1792612, -1766842, 1253057,
- -1145146, -2018635, -1138166, 710280, -2524904, 1361505, 1063541, -622233, -200790, -421444,
- 197032, 806917, 1538672, -882616, -982474, -1226750, 525597, 288837, 1580011, 1156957,
- 427349, -805843, -176631, -693100, 584116, 508954, -809064, 625455, -876173, 397284,
- 188442, 244813, -373662, -89121, 488553, -214748,
- },
- {
- 1282048, -1080721, 881542, -9238475, 1960653, -1234803, -3681324, 3453154, 718333, -461709,
- -9619653, -6301791, 6459631, -3197066, -2847563, -9538585, -3765613, 7569880, -708133, 10533944,
- -5438503, -1017907, 2260227, 11388106, -18003430, 6116571, 6445136, -2075006, 3258807, 296890,
- 14260902, -9550397, 6586333, -6307160, 4498978, -3701725, -2333241, -2076617, 658741, -3115462,
- -2640331, 2066416, 2514167, -5065377, 424665, -1291711, -397284, -4093641, 763430, 1527398,
- -2838974, -427349, -280784, -1104880, -2175401, -728534, 1647120, -1997160, 3395709, 174483,
- -1667521, -1100585, -748398, 2137283, -658204, 1045288, -1481764, -431107, 809064, -577673,
- 1761474, 158914, -83215, 79457, 1216550, 53687, 983548, 1328219, 537, -477815,
- 806380, -391379, 317828, -775242, -56908, 190052, -950798, 533650, 540629, 1191853,
- 59593, -497679, 215285, 297963, -487479, 695248,
- },
- {
- 746251, 14342506, 12866111, -5818607, 7135015, -2639794, 2712272, 1483374, -4364761, 2312303,
- 7230041, -15700253, 868657, 3888556, 7779260, 2032593, -11328513, 15787763, -16611860, 8089034,
- 4383014, 529892, 424128, -897111, 2735357, 4765803, 3978214, -25770, 7020661, -1088774,
- -5000953, 5087389, 374736, -8146479, -2318209, 1426466, 816581, -635118, 1475321, 840740,
- -1021665, 2049236, 2487323, -2055142, 3110093, -3300682, 77309, 366683, -4331475, -2357937,
- 1482838, -1463510, -182536, -2615635, 2339684, -1782411, 1414655, -2578591, 181462, -103079,
- -146566, -2333241, 571768, -1216550, -352724, 1145146, -81604, -1016834, 1603633, 1020055,
- -98784, -1095217, -192737, -1305670, 60666, 798327, -930397, -192737, -702764, -1042603,
- 678605, 1342177, -354872, 990527, 367757, -141734, -554588, -303869, -338229, -111669,
- -294742, -556735, 70867, -571231, 466541, 326418,
- },
- {
- 44230648, -75366472, 11722039, 55511916, -11158862, 5391795, 3321620, -3178276, 2611340, -2654827,
- 2078227, 1673427, -2552821, -890132, -6139656, 10430328, -5657546, -8472360, -6542309, 1291175,
- 2035278, -2603287, 628676, -6317897, -75162, 5010616, 2542621, 3323231, -608812, 1077500,
- 10127533, -5066988, 1195075, -1381906, -823023, -1311039, 1514513, 1116155, -2950106, 834834,
- -4238596, 1088774, -548145, -3209414, 6499896, 5778342, 423054, -1309428, -2842732, 797253,
- -2604361, 6102612, 2532420, -1672890, 352187, -787590, -1546188, 554588, -2860985, 1185411,
- 1326071, -402116, 703301, 1787780, -1867237, 258772, -1283658, -1502165, 680215, 957778,
- -248034, 342524, -610422, -509491, 48855, -651224, 572841, 456340, -148713, 93416,
- -360240, 278099, -1373853, -431644, 99321, 1340030, 180389, -752693, 172872, -24159,
- -667867, -215822, 129923, -72478, -433792, 106300,
- },
- {
- 346282, -33032594, 5680094, 4760971, -968515, -354335, -52076, -777389, 1359894, -126702,
- -8327942, -398895, -6270653, -11456288, -9690520, 4254165, 3039226, 5230734, -27686970, 12087112,
- 3773129, 7905424, -1248225, -10048613, -2782602, -5142150, 19121732, -14727443, -285615, -2718714,
- -2572149, 404264, -2083059, 3237869, 13959, -1473174, 2204392, 3701725, -3986804, -1620813,
- 4174708, -3394635, 844498, 591632, -1534914, 2283849, 2232309, -2109903, 833761, 3388729,
- 1113470, -2079838, -699006, 558346, 613107, -2569464, 300648, -2689187, 339839, 2987687,
- 1794223, -2341294, 2047626, -1621887, 2316598, -1502702, 122943, 1416802, 685047, 1882269,
- -2157147, 570694, 543313, 1669132, 154619, 138513, 946503, 1137630, -232465, -446140,
- 571231, 816581, 200253, 1031866, 66572, -293132, -300648, -13422, 22549, -18790,
- 816044, 688805, -367757, -159988, 311922, -206158,
- },
- {
- 59356448, -50589348, 6092411, -19987704, -18952080, -2337536, -1641214, -7757785, -3314104, 3877282,
- -6661495, -8196945, 4980552, -4531191, 7392713, 7828652, -840203, 2018098, 613107, 7304129,
- -3641059, -4022774, -802085, -1349694, -5851893, -553514, 2079301, -1421634, 3586835, -45634,
- -256087, 2663417, -1868848, -1764158, -556735, 1675574, 1537061, 3638374, 1672353, -2730526,
- -4245575, -4801237, -794032, -6220187, 2502355, 3418257, -7157026, -2529199, 1376000, -1287953,
- -5286568, 2265059, -2452963, 3646427, -861141, 2291902, 888521, 1652489, -1290638, 380641,
- 780610, -1227287, -1450088, 1717987, -1795296, -1473174, 1064078, -1644436, 39728, -380641,
- -34360, 783832, -1431835, 1023276, -440234, 654446, -670015, 441308, -1014686, -489626,
- -153008, 1524713, -572841, 121870, 560493, 684510, -542777, 159988, 66572, 249108,
- -533113, 597000, 4295, 109522, 940061, -140123,
- },
- {
- -204548, -8548059, 3265786, -3238405, 2388002, -106837, -913754, 3666292, 128312, -772020,
- 2244121, 4584878, 2098092, 3739306, 895501, -17919678, 20906828, 11191611, 3254512, -13166222,
- 605054, 10733660, 5044439, 89121, 8930311, 15984258, -15193984, -5463199, -8176007, 15351287,
- -889595, -6474663, 1686312, 4533338, 1259499, -1862942, 3085934, 3330747, 430570, -2409477,
- -142808, -3045132, -680752, 1253057, 2924336, 5123359, -888521, 3823058, -141734, -644782,
- -2365990, -460635, 2911451, -528818, 377420, 193274, 1551557, -2446521, 3514894, -3003256,
- -346282, 2405182, 1909650, 1207960, 757525, -46708, 547608, -701690, 27917, -1742146,
- 1432909, 789200, -128312, -83215, 1306207, -870268, 181999, -234076, 507880, -185220,
- -144418, -244813, 1104880, -428960, -682900, -117575, 423054, -635118, -681826, 112206,
- 91805, -559420, 703838, 457414, -237297, 205085,
- },
- {
- -17097192, -219883536, 32938642, -40616432, 6738804, -272730, -12703440, 250182, 5908265, 5013838,
- -1737851, -3440269, 189515, -2020245, 10272488, -14455786, -1022202, 9548249, 3009698, 8906688,
- -3068754, -4495220, -6569153, 271120, 835908, -235149, -463320, -6631967, -3174518, -1397475,
- -503585, -2560874, 1446330, 2947958, 632434, -2414309, -6292664, 801548, 16643, 374199,
- -4085051, 2746632, 2968896, -2940442, 5069135, -2751464, -1006096, 6249178, 915365, 569083,
- -294205, -5673652, 23085, 1653562, -133681, 971200, 215285, -2166811, 1989107, -864899,
- -2734821, 2724620, 191126, 122407, 1771674, 2348810, 483721, -1733019, 1612223, -398895,
- -563178, 1524177, 807991, -1009317, -1156957, -1911797, -836982, 200253, -664646, -468151,
- -96637, -120259, -979253, -394063, -651761, 1056562, 25770, -716186, 813896, -445066,
- -565325, 382252, -411780, 332860, -605590, 616328,
- },
- {
- 113817, 5618891, -9957345, 4087735, -3136400, -38118, -368293, 190052, 721555, 1598265,
- -3655554, 2160369, 2023467, 10523744, -30219926, -22947474, -156766, 4662187, -9680856, 13535589,
- 380105, -707596, -2446521, 2507187, -1961190, 5479305, 14374182, -9866614, 5894306, -2820183,
- 5479842, 9189619, -5886790, -6774774, 8807904, -8179765, -3988951, 3074123, -2106682, 2282775,
- 3043521, 1535451, 1637993, -3158412, -2717641, -81068, 609349, 268435, -1078574, -2017024,
- 627065, 199716, -1938104, -71404, -957241, -460098, -593779, -1340030, -695248, 376347,
- 3318399, 158914, 1377611, -566936, 112206, 294205, -863825, -1572495, 176094, -3114925,
- -1004486, -1321776, -261456, 922344, -45097, -1300301, -149787, -1209033, 156766, 106837,
- -545461, -435402, 1478006, 377957, 421981, 1027034, 73014, 632434, 393526, -114354,
- 635118, -725313, -272194, -89121, 560493, -106837,
- },
- {
- -26319022, 17317308, 31625992, 4482872, -2986613, -9915469, 6155225, 11644193, -2144263, -829466,
- -5683853, 8774081, 3573413, -1245541, -4757213, -2559264, -1822140, -1148367, -10130217, 6626598,
- 3241090, 780610, 543313, -8611409, 7417409, 887985, -7729868, -4597763, 3369939, 4127464,
- -8507793, 4648765, 150861, 4532264, -7368554, -1334124, 504659, -161598, 2632815, 1263794,
- -6327561, 807991, -196495, -5180268, 3518115, -1081258, -4549444, 552977, 1326071, -1053878,
- 4787815, -2285996, -764504, -677531, -617938, 1141924, -2800319, 2055679, 361314, -1459215,
- 171262, -2690260, -825171, 909459, 175557, 341450, 1553704, -442919, 2557653, 5906,
- 778463, 291521, 1147293, -627065, 1505386, -427886, 126165, -1300301, 244813, 463856,
- 1432372, 294205, -1031866, -315143, 108448, 42950, 558883, 610959, -725313, -20401,
- -809601, 523449, -559956, 156229, -288837, 433792,
- },
- {
- 2607045, -17992692, 2072859, -1772748, -281857, 1584306, -6863358, 1691143, 566936, 8014409,
- 4147865, -5310727, 4771709, -1148904, -2603824, 261993, -3652870, 11077258, 57982, -1173063,
- 3075734, -2588792, -8709120, 1642825, 5446019, 171799, -8768713, -5524402, -7512972, 12463995,
- 10051297, -4517769, 188979, -6318434, -8590, -9395241, 4689031, -1293322, 2497524, -1279363,
- -7494718, 3840775, -6760816, -924492, 3869229, -4168266, 818191, -1003412, 1474248, 1224066,
- 670552, -1449552, -1348083, 1691680, 2521683, -3049964, -498216, -1156957, -532039, 2094870,
- 2343979, -2974265, -311922, 1999844, 2158221, -2454037, -1516124, 356482, 265751, -442382,
- -606127, 413391, 928250, 372588, -632434, -346282, 30065, 27380, -141734, 412854,
- -709207, 810138, -947577, -556735, -121333, -96637, 241592, 112743, 646393, 67109,
- -236760, 254477, 124554, -31675, -13422, 198105,
- },
- {
- -53388056, -58040040, -20283520, 3034395, 3397319, 11293617, 13772350, -6634651, -5182415, 4563403,
- 8346195, 1040993, 1953136, -4516695, 6074158, 2361158, 1955821, -9575093, -12076911, 6949794,
- 9607305, -2226941, 5142150, -245350, 17921288, -2061584, 14539538, -4398584, 2206540, -6574521,
- 2273112, -826244, -5133023, -4565014, 2282775, -818191, -7857643, 3199751, -1829119, 2901251,
- -3263638, 1169842, -7542500, -438087, 2737505, -5959804, -3444027, 2581275, -2415919, -154082,
- 1982664, -1933809, 65498, -539018, -1571958, -1191853, 62277, 1448478, -420370, 228170,
- 1585917, -305480, -892816, -99858, -421981, 1427003, -1873143, 46708, 1032940, -506269,
- 591095, 1525787, 195421, -1191853, -1164473, -437550, 91805, -409633, 242666, -789200,
- 922881, 201327, -172336, 662499, -1300301, -378494, 394600, -748935, -700617, 1460826,
- -26844, -541703, 223338, 454193, -244813, 223875,
- },
- {
- -20401, -38917772, 4840965, -1904818, -1070521, -3664144, 3758, -2829847, 578210, -4299799,
- 5040144, -6221797, -6414534, 7474854, 571231, -17511656, 9210020, -12648142, -1191853, 6541772,
- -31474058, 970663, -8521752, -7154342, -5397164, -506269, -8639864, -7829726, 9962714, 2339147,
- 3940096, -1382443, 5140002, 983011, -812823, 3004867, 6777996, 1962263, 5140539, -818728,
- 1988570, -414464, 5192079, 500901, 1095754, -2941516, -3863323, -2673617, -178778, -1789928,
- 2959769, -1070521, 1512902, 685584, -1358283, -1373316, -1833414, 106300, 921271, -1429150,
- 954020, 387621, 1142461, -629213, -1248762, -568009, 736587, -2345052, -21475, -563714,
- -65498, 60130, -234613, -289373, -9127, 663036, -148176, -2072322, -638876, 1215476,
- -123480, -164819, -418222, 591095, 809601, -706522, -448824, -5369, -635655, 208843,
- 386010, 266288, -703301, -638876, 337692, 114890,
- },
- {
- -23136988, 90272696, -16360067, 21669184, 6598681, 14099841, 6781217, -1029182, 2862059, -10659035,
- 11769821, -18603114, 4021700, -5791764, 10466835, -8368207, 5268851, -2823941, -8334384, -1566053,
- -3767223, 4556424, -570157, 1600949, 563178, 813896, -5782637, -2094870, 2514167, -7166690,
- 3561602, 1670205, 622770, -987843, -246961, -2524367, 3837017, -202937, 3586298, -6813966,
- -5284958, -379031, 193810, -1328219, 3390877, 4297652, 1847910, 434329, -1127966, 352187,
- -89657, 5145908, -466541, -47782, 3776350, -1345935, 740345, 286152, -2532957, 1101659,
- -1577864, 1512365, -542777, 1111860, 509491, 193274, -918049, -16106, 461709, -2409477,
- 3499325, 1120987, -717260, -290984, 20938, -1038308, -1282585, 639950, 885300, 1259499,
- 440771, -464930, -219043, 641561, -277025, -1506460, 54224, 470299, 295816, -814970,
- 330712, 511638, 173409, 26844, -331249, 903554,
- },
- {
- -4112968, -31117038, 17310866, 171262, -1391569, 4224637, -7339562, 2650532, 2055142, 676994,
- 613107, -1919850, 5576478, -3015067, 43873092, -7209103, -4605279, 1903744, -5838471, 2605435,
- -8295730, -948114, -8676908, 410169, 5814312, -4643397, -1895691, -4354023, 6976101, 5864778,
- -6525666, 2545305, -1365263, -4393215, 1848983, 6107444, -1507534, 1242856, 1450088, -3016141,
- 5124433, -819802, 6827925, -2998424, -117575, 2871723, -186294, 60666, 2496450, -1218160,
- -19327, -1126892, -1651415, 1698660, -1086090, -82678, -2210835, -389231, -994822, 1351304,
- -1451162, -1062468, 3346853, 122943, -2243047, -2159295, 1145146, 81068, 853625, -66035,
- 750009, 649077, -340913, 80531, 469225, 431107, 794032, -831613, 237834, -782221,
- -1085016, -1034013, 818191, 795643, 457414, -301185, 109522, 307090, -272194, 2147,
- -496069, 481036, 473520, -515396, 468688, -232465,
- },
- },
- {
- {
- 5377836, 48751100, 34792992, 10805601, 2505040, 2987150, 1786170, -559420, 449898, -476205,
- -6336688, 4396973, -3812857, -7764227, -2832531, -14814416, -6546067, -3252364, -3818763, -624918,
- -3053185, 4361003, 5227512, 1546188, -3623342, -1688996, -2564096, 2193118, 1269163, 2120640,
- 958851, 4743792, 329639, 1294396, 1992865, 1218160, 5979132, -1728188, -3039763, 1308891,
- 3311420, -1452773, 1918777, -1206349, -1081258, 2459943, 1169305, 641561, 136365, 216896,
- -980326, -1308354, 217970, -370978, 757525, -531502, 768799, -2100239, 500901, -423054,
- -2761127, -121870, -740345, 198105, -742493, -205622, 858993, 112206, 261993, -379568,
- -138513, 636192, 17717, 694174, -1109175, -258235, 310848, 397821, 708133, 704375,
- 235149, 165893, -958851, -584116, 280247, 302795, -667867, 309238, -565862, 324807,
- 119185, 164283, -408022, 282394, 133681, -125628,
- },
- {
- -501437, 8760660, -2758980, -1373853, -5772436, 838592, -3162707, -17180, 806380, -1876364,
- -4039417, -2530273, 1338956, -2927557, 398358, -10442139, -1324997, 7857106, 13013751, -1327145,
- -4704063, 1736777, -4068945, 2472291, 481036, 1422708, -2059437, -315680, 3830574, 4628901,
- 5319317, -2172180, -122943, 4840965, -9486509, 1685238, -5237713, -3331821, 2628520, -1593433,
- -2160369, 262530, -785979, 1474784, -4239133, -1257889, -753767, -1206349, -530428, 1565516,
- -1468879, -1985349, -424128, -1849520, -260382, -8590, 674847, -454730, 1403917, -374736,
- -1351841, -238371, -339302, 149787, 544387, -1042603, 98784, 308701, -662499, 246424,
- 1168768, -382252, 1744831, 540629, 514322, 268972, 406411, 1404991, 96637, -686121,
- -479426, 866510, 194347, -964757, 27380, -292058, -214212, 487479, 288837, 653372,
- 274341, -24696, -213675, 179852, -5906, 374736,
- },
- {
- -76773, 25235618, 6281927, 10774999, -3597572, -982474, 3197066, 2844879, -2427730, 783832,
- -238371, -8713952, 1003949, 5432060, 430034, 2187749, -3550327, 1708860, 1519882, -1541356,
- 4464082, -6980396, 2965675, 2114735, -343597, 1059246, 2421825, 3031173, 4247723, 108448,
- -3018288, 4125853, -1511829, -1044751, -4220342, -953483, 1113470, 352187, -230318, 1992865,
- 1070521, 1287953, 840740, -810138, -611496, -500901, -527744, -2784213, -1347546, -2622615,
- -572841, 444529, -271120, -1967095, 1969779, -1483374, 911607, -1196685, -307090, -209917,
- -1553168, -1070521, -409096, -460635, -392990, 158914, 351114, -307627, 891743, -28454,
- 1205812, -382789, -1126355, -997506, -425739, -309775, 733366, -334471, -548682, -831076,
- -302258, 1000191, 521302, 757525, 187905, -199716, -429497, -532039, -264141, -418222,
- -78383, -247497, -95026, 78920, -88584, 281320,
- },
- {
- -25823490, 33841656, -1362042, 44868988, 1385127, -697395, 3772592, 1875827, 2610266, 1196685,
- -2570538, 182536, 2280628, -743029, 6709813, 2266669, -1466731, -7707319, -4423280, 810138,
- 4509716, -5673115, -4570382, 416612, -191126, 4002910, -1205812, 3763465, -668404, 1301375,
- 6422587, -1685238, -1258962, -798327, -28991, 144955, -252866, 82678, 224949, -61203,
- -6543383, 2256469, -325344, -2733210, 5694590, 4271345, 1895691, 683974, -2456721, -2176475,
- -553514, 4494147, 1229971, 224412, -985158, -484258, -1271310, -1931125, -387084, 1072131,
- 106300, -1017907, 172872, 1930588, -569620, -1112933, -610422, -1575179, 593242, 326418,
- 88047, -77309, -324807, -592169, -141197, -523449, 343597, -175557, -187368, -150324,
- 462246, -77309, -555125, -568009, 377957, 917512, -28991, 213138, -248571, -170188,
- -733366, 90731, -591632, 130997, -588411, -95026,
- },
- {
- 225486, -26521960, 566399, 1942399, 593779, -78920, -32212, -2573759, -56371, -24159,
- -4964446, -4255239, -7269769, -6478958, -2842195, 12473659, 1756105, -28486908, -8972724, 8203925,
- 6142877, 98784, 3246459, -5877126, 161598, 9762461, -7034620, -5526549, -1535451, 2233920,
- -3610457, 203474, -4216048, 917512, 1628866, -917512, -1761474, 3423626, -3276523, 386547,
- -247497, -771484, -1463510, 797790, 229781, 1859721, -1022202, 311922, -1058710, 1764158,
- -22012, 537945, -1302449, 625992, -1114544, -479963, 130460, -2316061, 2436857, 2681670,
- -852551, -750009, -23085, 208843, 486942, 738198, -1336272, 151934, 245887, 1216550,
- 331786, -667867, 755914, 600759, 1105417, 352724, 1112397, 237297, -27917, 86973,
- -235149, 639413, 518080, 945967, 124554, -213675, -157840, -268435, 216359, 260382,
- 362388, 386010, 471910, -24159, -369367, -6979,
- },
- {
- -32417876, 72615552, -6223945, -24308978, -1711008, -2783676, -4107063, -4212826, -2435247, -7139847,
- -1521492, -3336653, -6069863, -816044, 5962489, 5433134, 3809099, -1611687, 3900367, 854699,
- -5725729, -2421825, -220654, -3665755, 722628, -1432372, 530428, -1569811, 1066226, -2073396,
- -146029, 5738613, -1128503, -92342, -447750, 2502355, -1025423, 2491081, 3379066, -1876364,
- -4514011, -4744865, -2135136, -1898912, -2061047, 320512, -1410897, -163209, -2476586, -3687766,
- -1985886, -2999498, 361851, 1902671, 1437740, -564788, 2202245, 2070711, 658204, 184684,
- -57445, -2528662, -727997, -486942, -787053, -673773, -442382, -591095, -467615, 312459,
- 17180, -268435, -538482, -177704, 344671, -338229, -30602, 770947, -867047, -449898,
- -477278, 908922, 63351, 134218, 258235, 859530, -329639, -67109, 584652, -796180,
- -155693, 173946, 219043, 732292, 141734, -18254,
- },
- {
- 708133, -1872606, -3120831, -2298344, 120796, 389768, -508417, 1702418, 520765, 567473,
- -14496, 4403952, -1463510, -2756832, 296890, 15276125, 6726993, 4153234, 4671851, -2384781,
- -4978404, 2163053, 8642011, 3712462, 9918690, 6453725, -11737609, -3496640, -6372121, 11605539,
- 1603633, -4531191, -5712844, 1586990, 5884642, 111669, 2698313, 535260, 3475702, -2416993,
- -909459, -1901060, -465467, 1702418, 3067144, 3811784, -180926, 3555159, 526134, 726923,
- -3272228, -856309, 3239479, 412317, -293132, 213138, -380105, 938987, -327491, -707059,
- 831613, 2202781, 832687, 1476395, 545461, 1270237, -121870, -1101122, -1305670, 186294,
- 398895, 592706, 88047, 248571, 105227, -293668, -118112, 234613, 186831, -164819,
- -346819, 339302, 845035, -566399, -522375, 22549, 227633, -768799, -183073, -31675,
- -401579, 254477, 199179, 500901, 221191, 60666,
- },
- {
- -10277857, -173792624, -2592550, -27268748, -6432251, -32749, -8149164, -1258962, 4635344, 3337727,
- -1768990, -2228551, 3668439, -2233920, 5919539, -6998649, -947577, 3039226, 2741263, 6476274,
- -804233, -4759898, -6213744, -2062658, -1094143, 2277943, -3664681, -5603859, -4528506, 1612223,
- -1237488, -1511292, -751082, 1953673, 1729798, -5069672, -467615, -3163244, -1157494, 1098438,
- 175020, -832687, 2612951, -321586, -1010928, 85362, 1189169, 1726577, 2512556, -1590212,
- -2412161, -831613, -2552821, 2020245, -1246614, 1946157, -1006096, 562641, -663036, 448287,
- -898722, 300648, 1159641, 585189, 1038308, 2612951, 384936, -400506, 155156, -272730,
- 582505, 25770, 949188, -381715, -1363115, -1447941, -580894, -320512, -196495, -115964,
- -528281, -70330, -810138, -646393, 115964, 147103, -369904, -156229, -71941, 67646,
- 56371, -108448, -302258, -114354, 5369, 272194,
- },
- {
- 913754, -2190433, -727997, -3288334, -294742, -60130, 448287, -692564, 617402, -126702,
- 1101659, -98784, -2039573, -282931, -7299834, -11164231, 637803, -2783676, -5182415, 334471,
- 1359894, 8482024, 1223529, -3688303, 376347, 8298951, 7449621, 5667746, -7252589, 2069101,
- 7653632, 2653216, -598611, -3813931, -320512, -1632088, -3543885, -1046361, -141734, -1252520,
- 4862977, 2168422, -2527052, -3609920, -614180, 870268, 2454037, -197569, -872415, -2094870,
- 545461, 2530273, -2789045, 265751, -782221, -499827, -1109712, -1321239, -724239, 2081985,
- 1510755, 1336272, 827318, 23085, 304943, -195421, -149787, -970663, -1552094, -1320166,
- -1773285, -300111, -411243, -481573, -679142, -708670, -26844, -1244467, -120796, -84289,
- 150861, 155156, 558346, 838592, 117038, 717260, 328565, 874563, 71941, 52076,
- 66572, -231391, -410169, 89121, -104690, 561567,
- },
- {
- 22490060, -22122840, 18592376, -2646237, 7431367, -8760123, -4279398, 7227893, 3762928, -3513820,
- -2871186, 3696356, 10360535, -1478006, -101469, -8127152, -1291175, 241055, -9119826, 8165807,
- 3322157, -1221918, -789737, 507880, -1183264, -3490735, -9186398, 1917703, 1192927, 4094715,
- -9319542, 3540127, -118112, 2881923, -1897839, -3672197, 1004486, 1311039, 2201171, -1551020,
- -4744328, 31139, 452045, -4897337, -3697967, 2468533, -2988760, 1850594, 9664, 710817,
- 566936, 1864553, -806380, -1213328, -747324, 92342, 156766, 23622, 937377, -820339,
- -835371, -719944, -482110, -234613, 1390496, 652835, -461172, 1204738, 2106682, 504659,
- 220654, -26307, 1141388, -213138, 655519, 59056, -626528, 6442, -484258, 843961,
- 432181, 716186, -1268089, -399432, -197569, 4295, 452582, 276489, -578210, -258772,
- -352724, 61203, -168577, 66572, 217433, -471373,
- },
- {
- -2617783, -17875654, 5194226, 3005403, -2216203, 1137630, -3418257, -7516, -73014, 4578435,
- 2276333, 3543885, -1202054, 6907381, 1484448, -3783866, -2654290, 846109, 8712878, 2285996,
- -2421288, 187368, -3776887, -3660386, 8119636, -6030134, -5106716, -8747775, -677531, 6414534,
- 13352516, -6240588, 1028108, -3967476, -5340792, -4729833, -14496, 2952253, 3799972, -2808372,
- -1535451, -2240899, -3407520, -1098438, 1399086, -1246614, -1839857, 1910724, 454730, 2206540,
- 174483, -1262720, 457951, 158914, 1458678, -534723, -1923609, -510564, -541703, 1077500,
- 928787, -1664837, 783832, 1553704, 607738, -501437, -1040993, -387621, 930934, -688805,
- -595927, -467078, 595390, 483721, -108985, -1272384, 91268, -264677, 355945, 69793,
- 375273, 57982, -379568, -238908, -175020, -434865, 4832, 464930, 375810, 47245,
- -81604, 307090, -229781, 191663, 38118, 195958,
- },
- {
- 25705380, -167028592, -10723460, -5082020, 432181, 24049670, 2992519, -9969156, -4275103, 5320391,
- 5779416, 3912178, 90731, -4083977, 318364, 9594420, 2080912, -6533719, -11865384, 7988639,
- 164819, 4868346, 2572149, 8615168, 3263638, 4864051, 7197292, 1420560, 1875827, -4683125,
- -537408, -2276870, -1229971, 333934, -2575907, -5026723, -2558727, 1451162, -368293, 3146601,
- -2374043, -49392, -3303904, -5471252, 137976, -1468342, -656593, -1290101, -338766, 147640,
- 332323, 630823, -2160369, 1285269, -2931852, -64425, -951335, 2873870, 605054, 816044,
- -1050656, 1469416, -1832877, -398895, -405338, 1441498, 920197, -1607392, 0, 110059,
- 1534914, 134218, 96637, -1229434, -813896, -329639, -339302, -282931, -430570, 24696,
- -48855, 513249, -37044, -105764, 115964, -744640, 63888, -384936, -442919, -9664,
- 505196, -76773, 204548, 18254, 156766, 202400,
- },
- {
- 1182190, -28792388, -5260261, -1964411, 1189169, -3131031, 1661079, -3649649, 1065152, -2608656,
- -878321, -552440, -4361540, 2195265, -12719546, -1788317, -2747705, -3991635, -2758980, -1844152,
- -4032438, -25479356, -3023657, -10887742, 1724429, -2985539, -6535330, -11075647, 6345814, 966905,
- -1073205, 4968741, 6431714, 3665218, 783295, 6375879, 4555887, 1964411, 3485903, -1522566,
- 337692, 521839, 3015067, -1584306, 2152316, -660351, -6066105, -843961, -927176, -2097555,
- 1756642, 763967, 2204929, -688269, -2474975, -258772, -1099512, 402116, 592169, -416612,
- -707596, 1012002, -541166, 1052267, -541703, -1410360, -390305, -120796, -865436, -471373,
- 562104, -240518, 330176, 64961, 66035, 67109, -309238, -923418, -366146, 165893,
- 566399, 886911, -541703, 563178, 140660, -157303, -318901, -164283, -179315, -126165,
- 640487, -173946, -581968, -236223, -212601, -256624,
- },
- {
- 30147450, 9507447, 4332549, 5346698, 6761353, 15018427, 531502, 7474317, -357556, -2086817,
- -8511015, -1843078, 28991, -3477850, 4471061, 3926137, -5272609, -3924526, -7749732, -1329292,
- -7097434, 2092186, 350577, 876710, 2112587, 180926, -8224863, 3318399, 134755, 705448,
- 2131915, -551366, 208843, 3546569, -3005403, -392990, 4716948, 1421634, -851477, -4800163,
- -1268089, -4704063, -718333, 466004, 1816771, 7657390, 1989644, -2345589, 2037962, -3251290,
- 421981, 3983582, 1075889, -350040, 1193464, 710280, 367757, 102005, -3425237, -385473,
- 1132798, -74088, 977105, 1643362, -370441, 397284, -307627, -588947, -447213, 161598,
- 827855, 997506, 682900, -70330, -862752, -101469, -1479079, 408559, 628139, 661962,
- 794569, -271657, 137976, -583579, 596464, -1021129, -111132, 141197, -102005, 148176,
- 97711, 37044, 405874, -23085, 39728, 424128,
- },
- {
- 4124242, -16398185, -3321620, -643708, -1534914, 2910914, -3152506, 3821447, -132070, 1409286,
- 1098438, -2595234, -1618666, 10986526, 19986630, 5677947, -2479270, -3089155, -8071854, -6127845,
- 6808597, -3799436, -5922760, -2427730, -2379949, 802085, -898722, 3808562, 2777233, 2066953,
- -2076080, -2194192, 1013075, -5000953, 639413, 4482872, -1336272, -3120831, 3693135, -3009162,
- 668404, 2268280, 2975339, 3270618, -578747, 792421, 1650341, 727997, 1521492, -1032403,
- -647466, 294205, 22549, -252329, -788663, -1591285, -891206, -339839, 517007, -593242,
- -1706713, 586263, 1334124, 443455, -1527398, -396211, 622233, 1027034, 267362, 723702,
- -210453, 918049, -183073, 391379, 24159, 303869, 418759, -217433, 289373, -1398549,
- -1321776, 404801, 366683, 275415, -282931, -407485, 97711, 443992, 311922, 67109,
- -26844, 423591, 63351, 99858, -5369, -335544,
- },
- },
- {
- {
- -3609383, 34920768, 11556683, -11941083, -2731062, 642635, -87510, -2455111, -3156264, 4763656,
- 5834713, 5297306, 432718, -754841, 5123896, -5342940, 3164854, 2964601, -1893007, 3419868,
- 1367947, 3466576, 2862596, 1585380, -5430986, -2309619, -3552475, 1160178, 1023276, 1068910,
- 315143, 4511863, 620623, 63351, 246424, -2506650, 5114769, 436476, -847719, 113280,
- 1582159, -424665, 3804267, 690953, -678605, 3193845, 301721, 752693, -73551, 1165010,
- -521302, -758599, -44023, 2374043, 923955, -1279900, 1073742, -1891396, 615254, 463320,
- -522375, 1827509, 86436, 208843, 216896, -401043, 161061, -389768, 234076, 501974,
- -339839, -221191, -318901, 768262, -676457, -40265, -218506, -188979, -418222, 74625,
- -138513, 467078, -75162, -138513, 122943, 312459, -202400, 393526, -205085, 410706,
- 104690, -22012, -463320, 255014, -91268, -110595,
- },
- {
- 185757, 7402913, -1664300, 13563507, 2627446, 810138, -1508607, -2177549, -1199907, 690953,
- -375273, 662499, 2850785, 2799245, 5797669, 922881, 4201015, -1498407, -196495, -3570729,
- 386547, 6265821, -1184874, -1903744, -3296924, -4543539, -8312373, -1126892, 5134634, 2542084,
- 1446867, -1134945, -2433636, 8993662, -6907918, 4103841, -1141388, -2552284, 887985, -826781,
- -1969779, -371515, -893353, 3798362, -1348083, -1079647, -1567663, 1271847, 113280, 1438814,
- -993211, -2843805, -790274, -975494, 507343, -1302449, 517007, -417149, 635118, -533650,
- -318901, -93416, -633508, -243739, 404264, -914291, -103079, 229781, -668941, -387621,
- -65498, -288300, 1443646, 79994, 444529, -42413, -478889, 192737, -976031, -151934,
- -31139, 679679, 105764, -363998, 73014, -293132, 378494, 97174, -509491, 133681,
- -27380, 190052, 151398, 62814, -17180, -11811,
- },
- {
- 437013, 10944114, -10727218, 18161270, 4123706, 148176, 811212, 2392834, 15032, -1138703,
- 644245, -305480, -438624, 2330020, -806380, 5568425, -477815, -913754, 5896990, -4496294,
- 1052804, -7692287, 2128693, -3963718, -5680094, -2735357, 162672, -2399813, -5021354, -280247,
- -2735357, -776315, -1876364, 1517734, -5906, 1899986, -388158, -1080721, -987306, -862215,
- -444529, 376347, 703301, 1073742, -383863, 513785, -905164, -3797288, -1219234, -1150514,
- -284542, 811749, 2068564, 483184, 2521683, -1317481, 690416, 1926830, 1114544, -785979,
- -1130650, 46708, -81604, -147103, -1034013, -452045, -46708, -630823, -20938, 73014,
- 1553704, 562104, 476205, 140660, 237297, -190589, 965831, -345208, -360240, 119185,
- -2147, -24159, -76773, 233539, 260919, 196495, -208843, -505196, -123480, -381715,
- -179852, -7516, 39728, 169114, -256087, 134218,
- },
- {
- 3108483, 73293616, -9967545, 39740796, 1315334, -2231773, 2757369, 5162551, 2766496, 723165,
- -2039573, 2715493, 7995619, 4358318, 5859409, -5320391, 280784, -509491, 5754183, 7012608,
- 6012418, 750009, 1727114, 2588255, 629750, 6223945, -3583077, 3405909, -1954747, -2100776,
- 3133179, -698469, 607201, 1859184, 1787243, 1140314, -3277597, 37581, -676994, 1310502,
- 317291, 3846680, -359167, -1210644, 3184718, -784905, 32212, 1789391, 199179, -571231,
- -1836635, 897111, -184147, 1658931, -308164, 1197759, 498753, -1779190, 558883, 506269,
- -875100, -1025423, -79994, 942745, -42950, -1104880, -452582, -397284, 903554, 326954,
- -74088, -154082, 118112, -459025, -23622, -251792, -141197, -1044214, -176631, 359704,
- 754304, -144955, -161598, -206158, 214748, 123480, -266825, 389231, -312459, 166967,
- -216359, 387084, -622233, 280784, -199716, 245350,
- },
- {
- -1228361, -23799488, -32212, -1626182, 489626, 40802, 580357, -1162326, -861678, 2020245,
- -1629403, -2071248, 437550, 1138703, 2277407, 8457327, -7048578, -14706505, 9532680, 5148592,
- 5452461, -5779416, -476205, -2223183, -3898757, 6177774, -1505923, 4380867, -2278480, 5180805,
- 4134443, 1712618, -1588601, -1433982, -483721, 2684, -3117610, 2276333, -2087354, 2110977,
- -1759326, -1532230, -421444, 1860795, -823560, -268435, -2099165, 1000727, -7516, 1997160,
- -230318, 836445, -850940, 1188095, -754304, 766652, 919123, -1179505, 1855426, 512175,
- -838056, 969052, -914828, -105227, 302258, 1092532, -1072668, 317828, 185220, -323733,
- 833224, -149250, 77846, -195421, 969052, -107374, 235149, -566399, 20401, 108985,
- -730144, -46171, -176094, 115427, 223338, 511101, 156229, -57982, 526670, 361851,
- -34360, -19327, 687732, 313533, -435939, 251792,
- },
- {
- 88584, 110776872, -4670240, -12641699, -2009508, -88047, 767725, 3171297, -1850594, -7400766,
- 95563, 1046898, -360240, 315143, -222265, 2490544, 630286, -2303176, 4838818, -1304060,
- -5330055, 2735357, 3817152, -4459250, 2490007, -1169305, -923955, 992674, 3628711, -1064615,
- -2749316, 462783, -5628018, -504659, -195958, 3628711, -752693, -959925, 928250, 132070,
- -1322313, -799938, 405338, 2230699, -1174674, -331786, 2296197, 2592550, -2139431, -599148,
- -650151, -2867965, 2003065, 2154463, 2948495, -648540, 454730, 27917, -689879, 259846,
- 73014, -2842732, 541166, 874026, 1030255, 916439, -348966, 341987, -796180, -255014,
- 102542, -848256, -853088, -1062468, 2147, -591095, -550830, 656056, 137976, 118112,
- -558346, 584652, 69793, -87510, -93952, 470836, -102005, -248571, 166967, -986232,
- 216359, 219580, 51003, 349503, -339302, 12348,
- },
- {
- -163746, 5514201, 6781754, -52076, 488016, 551366, -863825, -751082, -62814, 177167,
- -2403034, 1756642, -2532957, 2192581, -173409, 18673444, -670552, -4046396, 9589588, 8798777,
- -3223373, 1566053, 6115497, -6439767, -1529008, -8835821, -18865106, 491237, -3264175, 3205119,
- -818191, 2467996, -4649839, -4806069, 2563559, -1787780, -1551020, -528818, 2708514, -3785477,
- -1384053, -487479, 2099165, 143345, -1413044, 1633161, -1227824, 1389422, -1143535, 1353452,
- -1867237, -69793, 2279017, 1523640, -1013075, -1300301, -619012, 2965138, 236760, -945967,
- 581968, 964220, -644245, 1133871, 601295, 725313, -570694, -738198, -352724, 807991,
- 68183, 104690, 30065, 442919, -133144, -419833, 113280, -70330, -732829, -310848,
- -424665, -353261, 358093, -140660, -97174, -152471, 393526, -257698, 209917, 64961,
- -265214, 390842, -220654, 279710, 70867, -67646,
- },
- {
- 27063126, -113911656, -7978976, -24446954, 3600256, 2485176, 268435, 212601, -344134, 3752191,
- 2162516, 3436511, 4894652, 74625, 4247723, -4568772, 25770, -3600256, -2257005, 3425237,
- 811749, 666794, -2496987, -5462662, -1618129, 2091649, -1224066, 677531, -915365, 3367791,
- 1884954, -200790, -1262720, -395674, 1108102, -2668249, 5144834, -446140, -1986959, 1945083,
- 1317481, -1767916, 1644973, 1554778, -1566589, 39192, -632971, -1775432, 1357210, -62814,
- 38655, 2274185, -944893, 2018635, -280784, 2327336, -805843, 421444, -1027034, 1169305,
- -676457, -1163399, 1618129, 625992, -434329, 1177895, -392453, -289910, 27917, -656593,
- 506806, -417149, 976568, 478352, -127238, 134755, -272194, -269509, 463856, 787590,
- 25770, 92879, -472446, -372052, 3221, -28454, -189515, 41876, -394063, 139586,
- 445066, 10737, 44023, -107374, -180389, 144418,
- },
- {
- -50466, -2486249, 8074539, -3128347, 299574, -68719, 54224, -969052, 470836, -969052,
- 2318209, 839666, -1795833, 4095788, 2617783, 8967355, 8237748, -924492, 331786, 1279363,
- -3551401, 1757715, 1432372, -6793565, 1635846, 8530342, -1402844, 4934918, -4039417, -249645,
- -2626373, -3821447, 6473590, -736050, -3489124, 1995012, -1710471, -836445, 1887101, -1482838,
- 2886218, 1716376, -1648731, -352724, 1433445, 471910, 296353, -184147, 1127966, -600222,
- -164283, 2021856, -1675037, 1542967, 795643, -710817, -501437, 117038, -730144, 1079647,
- 345745, -547608, -881542, -161061, -73014, -1140851, -171799, -376883, -437013, -103616,
- -774168, 410706, 14496, 450972, 4832, -399969, 107374, -884226, 449898, -135828,
- 130460, 62814, 126702, 7516, -868120, 311385, -371515, 354335, -8053, -20938,
- 8590, 203474, -207769, 69793, -343061, 384936,
- },
- {
- -18632642, -61074972, 29118804, 5755256, 12265890, -2658585, -2936684, -2008971, -1449015, -2486786,
- 2219424, 1500017, 6320045, -2346663, -325881, -3715147, 3324305, 2864743, -10526428, 5204964,
- -1023276, -1194538, -220117, -1703491, -544387, -246424, -5781026, 6656663, 3722126, 1697049,
- -9592273, 1124208, -1605244, 4041027, 53150, -4383551, -74088, -834297, 1523640, -1331440,
- -4283156, 1198833, 241055, -2272575, -2892124, 1173063, -152471, 3548717, -1039919, 257698,
- 249108, 3297998, 1056562, 936303, 780073, 415001, 501974, -609349, 970126, 872952,
- 461172, 200253, -897648, -935229, 1083942, 47782, -665720, -6979, 287763, 1165010,
- 141197, -687732, 507880, -301721, -348966, -692564, -329639, 605054, -753767, 170725,
- -992674, 441845, -862752, 81604, -273804, 186831, 282394, 66035, -537945, 275415,
- -62277, 213675, 28454, -334471, 266825, -216359,
- },
- {
- 1794760, -13486734, -1861868, -1177895, -3136937, 367220, -3067681, -779000, -881542, -1992865,
- -179315, 3118146, -5082557, 677531, 484258, -128312, -759136, -2087891, 7832410, 204548,
- -3315715, 6501507, 4941360, 1456531, 4721243, -9697499, -1713155, -5332739, 1837172, 929324,
- 7818451, -3018288, 2411087, -3445101, -3576097, 549219, 902480, 1299228, 2964601, -2402497,
- 1555315, 1423245, -384400, 374199, -234076, -985158, -152471, 1917166, -1969243, -222265,
- -1214939, 439160, 1418413, -770947, -1049046, 176094, -78383, 399432, -271120, 1821066,
- 1265942, -157303, 746787, 461172, 125628, 242666, -455267, 159451, 1142998, -326954,
- -256087, -542240, 143345, 224949, 498753, -590021, 146566, -707596, 77309, -113280,
- 146029, -187905, -135291, 259846, 199716, -143881, -292595, -99321, -115964, -170725,
- 107374, 441845, -156766, 178778, -209380, 6979,
- },
- {
- 12531104, -178495088, -3811247, -8516920, -7511898, 4082367, -15109695, -4589710, -2055679, 3178813,
- 1416266, -4577899, -2173790, 435939, -594853, 10741176, 2434710, -3271691, -9508521, 2019172,
- -4110284, 7950522, 533113, 4736812, -7588134, -1792075, -747861, 533650, 4020626, -874563,
- 215822, -2437931, 878321, 974958, -4376035, -4165582, 995896, -1381906, -4104378, 955093,
- -3225521, 1248225, 2421288, -2287070, -920197, 1416266, 2754148, -527207, 467615, 1590749,
- -161061, 641561, -2743947, 1893007, -782221, 897111, -1388885, 1517197, -913754, 129386,
- -839129, 1852205, -1307818, -469762, -629213, 155156, 434329, -896038, -566399, -324807,
- 940598, -1276142, -54761, -303869, -117038, -609349, 14496, 279710, 205622, 613107,
- 173409, 340913, 215285, 161061, 427349, -379568, -328565, -278099, -499290, -505732,
- 446677, -111669, 344134, -48318, 205085, 192200,
- },
- {
- -2037962, -18428094, 6043556, -851477, 2298344, 1411971, 6655589, -2732136, 424128, -1949378,
- 472983, 5127117, 2592013, -8402030, -18642842, 14948634, 5240397, 811212, 1048509, -623307,
- 17716740, -973347, 10557030, -7089381, -5629092, -4143033, 1938104, -7945690, 810675, 2155537,
- 1869385, 98247, -1776506, 3426310, -231391, 2639258, 1211181, -1197222, 1279900, 420907,
- -56908, -5086315, -382789, -2140504, 1089848, 3423089, -2998424, 1059246, 1121523, -1491964,
- 1311576, 260919, 1817845, 1488206, -235149, 438087, 820876, -418759, -772557, 525060,
- -1480690, 251256, -702227, 296353, 32212, -454193, 375810, 1125818, -658741, -607738,
- 880468, 176631, 302795, -57982, -125091, 204548, 703301, 114354, -112743, -309775,
- 46708, 133681, -275415, 545998, -124017, 337692, -161598, 256087, 226023, -444529,
- 267899, -17717, -41876, 63888, -429497, -209380,
- },
- {
- -22597970, -60014116, 7789997, -4670240, 3304977, -1389959, -12239046, 3955665, -5107790, 1899986,
- -5844377, -614180, 745177, -1072668, 6886980, 9700721, -2831457, 3705483, -5657009, -3854196,
- -9651328, 555661, -455803, -1524177, 1964411, 2197950, -3828427, 6748468, 1741609, 3632469,
- 1191853, 437013, 1494112, 2398202, -2371359, -1611687, 769336, -2099702, -2746632, -844498,
- 3860639, -4452271, -1865090, -177704, -2152852, 1817845, 436476, -3393561, 1440425, -2234457,
- 556735, 1260036, -634045, 117038, -108985, -999654, 964757, 692564, -1928977, 594853,
- 879931, -937377, 110059, 498216, -1231582, -85899, -454193, -333934, -506806, 628139,
- -293668, 178241, 494458, 185757, -982474, 610959, -616328, 107911, 401043, -317291,
- -171262, -382252, -52076, -1123134, 399432, -302795, 328565, 120259, -13422, 437550,
- 121333, 75162, 493921, 68719, -135291, -55298,
- },
- {
- -4505421, -13131326, 6445136, 777389, -2637110, 2481417, -1865090, 1186485, -4008815, -1279900,
- -30602, -944893, -1774358, -2281165, -4391604, -445066, 1545115, -1458678, -5289252, -8430484,
- 2373506, -3808026, -4240207, 724239, 75162, 1889786, -2507187, 885837, -3419868, -3997004,
- -183610, -3197066, 2036351, -2655364, -2521146, -2433636, 165356, -2951716, 778463, -2098629,
- 870268, 1381369, -1264868, -314606, -1414118, 855235, 1335198, -333397, -963146, -1195612,
- 1431835, 1160178, -401043, 342524, -317291, -656056, 832687, 1187559, 93952, -1654636,
- -986232, 648003, -117038, 801011, -125091, 827318, 932545, 569620, -830539, 698469,
- -128312, 513249, -61203, -610959, -1091459, -386010, 30602, -223338, 447213, -103616,
- -549756, -136902, -268972, 32749, -36507, -210990, -537, -26844, 218506, 396211,
- 180926, 160524, -290447, 213675, 34360, -156229,
- },
- },
- {
- {
- 2041183, 48557828, -26601416, -11613055, 334471, -947577, -3712999, 2849174, -3810710, 2974265,
- 9363029, 5349919, -2367601, -2047089, 8084202, -2626373, 2899640, 3483755, 3020436, -2805688,
- 4344360, 861678, 3207804, -3678640, 675921, -2105608, -2029909, 972273, 965831, -446140,
- 106300, 5608154, -1230508, 1690607, -3420405, -1198296, 1867237, 2555506, 1745904, 1926293,
- -662499, 1842004, 969589, 1859721, -1934883, 3204046, 1187022, -829466, 462246, 1131187,
- -1731946, -30065, -90731, 2570001, 601295, -832150, -135291, -875100, -690953, 1469416,
- 585189, 1315871, 879395, -614180, 567473, 135291, -675384, 629213, -510027, 666257,
- -325344, -230318, -107911, 755377, -468151, -132070, -359704, -362388, -363998, -132607,
- 437550, -49392, 431644, 537, -226023, 450435, 157840, -231928, 388158, 272730,
- 204011, 74088, -372588, 192737, -243203, 84826,
- },
- {
- -883153, 4781373, 1394791, 9955197, 3882114, -1677722, -108985, -114354, -761820, 227633,
- -3056943, 5175436, -2084133, 5798206, 1662689, 3915937, 1629940, 2410014, -10355703, -220117,
- 1926830, 3865471, 6629819, -2873870, -8810589, -5232881, -6658273, 2135136, 2656974, 930397,
- 849867, 2611877, -960462, 2236067, -1361505, 4832, 2798708, 76773, -1022202, -1510755,
- 157840, -591632, -271657, 2291365, 824634, -1636383, -1825361, 405874, 1549410, -228170,
- -976568, -2388002, -562641, 45097, 341987, -2234457, 283468, -98247, 778463, -360777,
- -445066, 334471, -1237488, -252329, 498216, -285078, -623844, 389768, -229781, -638876,
- -593242, 221191, 467615, -168577, 375810, -471910, 224412, -597000, -394063, 203474,
- -79457, -163209, 335007, 58519, 28454, 75699, 399969, -308164, -199179, -396748,
- 135828, -132607, 637266, 119722, -35970, -252866,
- },
- {
- -1785633, 4222490, -10158135, 6128382, 12131135, 2414309, -707059, 1343251, -965294, 199716,
- 398895, 5029407, -4352413, 12348, 5452998, 3929895, 2359548, -3063386, 137976, -804770,
- 3357054, -5688148, -3687230, -5099737, -1887101, -1433445, 1656247, -2966212, -8067559, 572304,
- -3505230, -911070, 3574487, -432718, -1953673, 2044404, -1234803, -35970, -1551020, -779537,
- -967978, 950262, 311922, 2026151, 853088, -257161, -2119030, -926102, -2273648, -685047,
- 936303, -545998, 1868311, 1860258, 685584, -156766, 1000191, 1142461, 911607, -31675,
- -1110786, 823023, -567473, -357019, -989990, -206695, -984084, 82678, -241055, 916439,
- 278099, 439697, 1207960, -151934, 438087, 11811, 266825, -34360, -94489, 213675,
- 304406, -105764, -423591, -32749, 563714, 171262, -168041, -230854, -500364, 33286,
- -375273, 27917, 52613, 27917, -94489, -36507,
- },
- {
- 14019847, 58200564, -11102490, 43271796, -2717641, 323196, -121870, 5742372, 409096, 876173,
- -3900367, 7012608, 5216775, 3077344, 830002, -4639102, 2287607, 299037, 7932805, 3089692,
- 4017942, 3117610, 3008088, 4791573, -1283122, 5034776, 1500554, -704912, 200253, -1006096,
- 84826, 2107755, -1618666, 1693291, 425739, 1451162, -2331630, 1694365, -1990181, 62814,
- 4364761, 1079111, -204548, 2197413, -2257542, 280247, 1607392, 816044, 1595580, -489626,
- -1119913, -578210, -154619, 1827509, 196495, 251256, 1031866, -648003, -55298, -238371,
- -910533, 165356, 350577, -597537, 917512, -1008244, 5906, 215822, -214212, 448287,
- -156229, 369904, 1611, -106837, -492311, 390305, -737661, -863288, 95026, 488016,
- 120259, -2684, -157303, 22549, -106837, -278636, 292058, -168041, 10737, 73551,
- 28454, 90731, 22549, 86436, -128849, 193810,
- },
- {
- 2079301, -21859236, -5711233, -1822677, 1905355, -616865, -634045, 1422708, -290447, 227633,
- 363462, -2087354, 2688650, 3221226, 3097208, -3395172, -11663521, 19814294, 7752953, -3064459,
- 3211562, -10211285, -1611150, 2591476, -2069101, -4394289, 7232188, 318364, 2114735, 4241280,
- 5057324, -1911261, 3493956, -4156992, -3977140, 964220, 1690070, -481573, -3442953, 3451543,
- -1984275, -1984812, 1702418, 242666, 412317, -1046361, -1946157, 1959042, 529355, 1091995,
- 977642, 538482, 273804, -399432, -404264, 287763, 564251, 826781, 442382, 120796,
- -239444, 1507534, -1449552, 85362, 1078037, -420907, 308701, 48318, 476741, -911070,
- 1158567, -152471, -347892, 83215, 219580, 70330, 161061, -240518, -90194, -119722,
- -434865, -399969, -167504, -3221, 512712, 584652, 100932, 92879, 179315, 423054,
- -210990, 86973, 674847, 184684, -153545, 533650,
- },
- {
- 23030152, 74546672, -10910828, -14401562, 10972031, -259309, -159988, 4578972, -4808216, 1606318,
- -2266132, 3219078, -715649, 1149978, 1203128, 338229, 1086090, -1641214, 4322348, 494995,
- -1693828, 1809255, 537945, -1226213, 1249836, -1338419, -804233, -244276, 3416647, 3371549,
- -3555159, -1830730, -4744328, 697395, -1747515, 2475512, -1154273, -310311, 1793686, -1960653,
- -1772748, 2183454, -1586454, 1523640, 1542967, 104690, 2437931, 1725503, -1514513, 190052,
- -3508988, 1052804, 1937030, 957778, 3602404, 753767, -545461, -5369, -776315, -269509,
- -359704, -819802, 967441, 799401, 508417, 873489, -306553, -127238, -574452, -702764,
- 1164473, -1109175, -1003412, -648003, -549756, -352187, -455803, 346282, 414464, -182536,
- -224412, 271657, -78383, 171262, 65498, 69793, 2684, -73551, -323196, 93416,
- 21475, 130460, 37044, -66035, 9664, 186831,
- },
- {
- -278099, 15457587, 1123671, -1469953, 830539, 341987, -1155346, -568009, 519691, -104153,
- -1449552, 1994476, -2209224, -748935, 7295539, 8344048, -5134097, -5248450, 11742977, 11329587,
- 213138, -839129, 641561, -12382391, 162135, -4793184, -10723460, -12251931, 3026878, -2521146,
- 410706, 4869419, -5667746, -1069984, 4261145, -2288681, -3823058, 629213, 2739116, -1606318,
- -2373506, -2192044, 2361695, -91268, -1935957, 1566053, -1014149, -223875, -143881, 1696512,
- -1094680, 303869, 188442, 1302986, -572304, 459025, -714575, 1491427, 496606, -585726,
- 68719, 190589, 684510, -230854, 272194, 5906, 379568, -158914, -396211, 96637,
- 107374, 518080, -234076, 363998, 530965, -594316, 513249, -131533, -713501, -483721,
- -216359, -468688, 227096, -59593, 61203, -74625, 58519, -197569, 228707, -17717,
- 24159, -154082, -29528, 73014, 95563, -73014,
- },
- {
- -30361124, -50160924, 8891656, -24643986, -3646427, 1059783, 2766496, 4200478, -3429532, 4199941,
- -99858, 6269042, -2255932, 4299263, 1779190, -4679904, 3126736, -7617662, 1476932, 1913945,
- 2667175, -6979, -834834, -5427765, -2032593, -400506, 398895, 819265, 2417530, 1940788,
- 1880122, 541703, 759672, 81068, -174483, -1795296, 5711233, -1062468, 1463510, -1661616,
- 1461900, -649077, -135828, 1006633, 874563, -1295470, -1675574, -1939715, 1439888, 279710,
- 1848983, -158377, 1327682, 693637, 685047, 1358283, 178778, 628139, 295279, -496069,
- -521302, -399969, 1143535, 761283, -273804, 108985, -526670, 199716, 284005, -1146219,
- 26307, 219043, 357556, 759136, 202937, 78383, -329102, 246424, 196495, 885300,
- 235149, -145492, 121333, 537, -518617, 25233, 346819, -296890, -206695, 358093,
- 293668, -48855, 78920, 272730, -369367, -227096,
- },
- {
- -779537, 3633006, 5609228, -1062468, -340913, -456877, -1471563, 862752, 709207, -1330903,
- 1235877, 1436130, -2510409, 1750736, 1908039, 23482196, -13871671, 4735739, 3748970, 585189,
- 23085, -1763621, -3025805, 571231, 498216, -3777424, 3482682, 6725919, -145492, -1164473,
- -7013145, -102542, 4967667, 268435, 710280, 1088774, -2264522, -2029372, 1757179, 976031,
- -705448, 1645509, -621697, 2108829, -883690, 412317, -1924145, 164283, 2680597, 66035,
- -1433445, 795106, 59056, 166967, 2137283, -794032, -1253594, 1717987, 415538, -339302,
- -481036, -1580011, -1011465, -497679, 460098, -1644436, -168577, -395137, 576063, -535797,
- -154082, 151398, 103079, 205622, 53687, 293132, -520765, -215285, 270583, -175020,
- -76236, -250182, 325881, -197569, -571231, 38118, -66572, -165893, 195958, -58519,
- -75699, 63351, 16106, -144955, -38655, -85899,
- },
- {
- 16166794, -75663368, -4833986, 11712376, 369367, 7638063, 3957276, -3501472, -4117800, 279710,
- 3879966, 1596117, -4527433, -535260, 641024, -719407, 1118839, 6106907, -9208947, -392990,
- 1100585, 250719, -1875827, -4792647, 2783676, -1015223, 670552, 3711926, 3486977, -2131378,
- -1894618, -575526, -1426466, 2644089, -1791538, -1910724, -1333587, -3687230, 3425773, 1255204,
- -4151623, 1950452, -915365, -2539936, 123480, -1528472, 1976222, 467615, 898722, -66572,
- 191663, 2017024, 2034741, 969052, 106300, 1287417, 104153, -207232, -10201, 909996,
- 1271310, 82678, -930397, -274878, -616328, 756451, 454730, -482110, -889595, 1484448,
- 72478, 141734, -477278, -386010, -26307, -587874, 135291, -25233, -241592, -548682,
- -482647, 194884, 61203, -385473, -26307, 573378, -239444, 251256, 115427, -27380,
- -131533, 209917, -125091, -262530, -84289, 401579,
- },
- {
- -565325, -11800960, -4238059, -3092913, 473520, -642635, -1138166, 541166, 32749, -4765266,
- 231391, -5013838, 4186519, -1715839, 1707250, -4107599, -826781, -2666101, 5674189, -4965519,
- 4567698, 1568737, 9162776, 5204964, -2830920, -7218230, -2602750, -624381, 1861332, 881542,
- 579284, 4674535, -1388885, -2736431, -1812476, 1595580, 914291, -1596654, 1277753, 993748,
- -602906, 1784559, 617402, 2030983, -2911988, 575526, 1374926, 262530, -1530619, -292058,
- -2289218, 414464, 618475, 397284, -1464047, 517007, -42413, 90731, 146566, 1624035,
- 1529545, 860067, 216896, -406948, -26844, 449898, 138513, 248034, 123480, -160524,
- -331249, -129923, 201863, 754841, 69256, -157840, 180926, -622770, -231928, -236223,
- 70330, -506269, 303332, 6442, 534723, 135828, -745177, -301185, -158377, -162672,
- -55835, 321049, 253940, 140660, -108985, -125091,
- },
- {
- -41438920, -102870912, -1599875, -3454228, -13900125, -20557860, 1620276, 2389613, -4454955, 4615479,
- -4291746, -1140314, -6516003, 8514236, -2434710, 4621922, -2020245, 1311576, -6504191, -5993090,
- 3091303, 7430294, 382252, 1831267, -3010235, -5539434, -2185065, 2594697, 2990908, -727460,
- -988916, -3035468, 389768, -67109, -4248260, 682900, -1619740, -2616172, -3332358, -212601,
- 242666, -3542274, 3505230, 170188, 93952, 628139, 993748, 691490, 1676648, 1212791,
- 137439, -641561, -925029, 478352, -303869, 609885, -284542, -595927, -959388, -146566,
- 491237, -372052, 976031, -404264, -398895, 111669, -819265, -30602, -385473, -326954,
- 25770, -785442, -586263, 500364, 149250, -682363, 324270, 55835, 227096, 373662,
- 710280, 187368, -117575, 321049, 232465, -46171, -285615, -365072, -324807, -223338,
- -537, 0, 333397, 73551, 115427, 132070,
- },
- {
- 2279017, -9187472, -7915625, 1919850, 4379793, 2848637, 3525631, -3595425, 15569, -577673,
- 1122597, 4904316, 2432562, -3099893, -12596065, 6878927, 8323110, -1005022, 5849209, -1294933,
- 3580929, 22694608, 7111929, 4767951, -13020730, -7758322, 5490042, -1567663, -7082938, 5442261,
- -1233729, 307627, -1316944, 1435593, 163746, 1457068, 669478, -819802, -2123325, 2213519,
- 928250, -3852586, -947577, -1409823, -974421, 3268470, 540629, -511101, 482647, -318901,
- 621160, 1299765, -260919, 841814, 1930051, 306016, 264677, -447750, -989990, 53150,
- -481036, -501437, 336618, -710280, 361314, -476205, -301721, 341987, 625992, -605054,
- 245350, 479963, 366683, 207769, -155693, 296890, 464393, 340376, -23622, -527744,
- 66035, -445066, 502511, 263067, -91805, 341450, -570157, 353798, 156766, -52613,
- -318901, 81068, 192737, 43487, -228170, -111132,
- },
- {
- 5168457, -91169272, -1447941, -5808407, 4752382, -9473087, -3357054, 1246077, -2378338, -900333,
- -329102, -4816806, -1407139, 10168335, -847182, 4330401, -1601486, 11104638, -10451266, -1116155,
- -4003983, -2093797, -1665911, 1560147, -1685238, 251256, 1873680, 2158221, 3113851, 2267206,
- 1355062, 1610613, 1040993, -1255204, 836982, -1082869, -2587718, -2351495, -856309, 1134945,
- 343597, 1793686, -4064650, -2116882, -599685, -3034395, -881542, -248034, -36507, 341987,
- -415001, 1518271, -1471026, 1238024, -506806, -989453, 2189897, -484258, -22012, -128849,
- 619549, -178241, -406948, -56908, -998580, -998043, 53150, -651224, -245350, 572304,
- -412854, -66572, 885300, -461172, -504659, 265751, 306016, -242666, 252866, -125091,
- -403190, -95563, -309775, -935229, 18790, 272194, 27380, 155693, 78920, -28991,
- 380641, 292058, 128312, -91268, 158377, -119722,
- },
- {
- 4455492, -13472776, -4573067, 4975720, -3467649, -920734, 1322850, -1971927, -1785633, -3260954,
- -442382, -2581275, -1387274, 97711, -1087164, -2630131, 3272765, -4756140, -4637491, -8268349,
- 1269163, -6696391, 1814624, 2149094, 106837, -2488934, 814970, 1261647, -9740449, -2146947,
- 1224066, -1780801, 2448668, -3542811, -2808372, -2134062, 3176665, -2006287, -543313, -2527588,
- 3027952, 1101659, -413391, -2189897, -797790, 261993, 758062, -353261, -1695438, -1185948,
- 653909, 2374043, -747861, -414464, -555661, 1380295, 1600412, -972810, 959925, -901406,
- -1117765, 994285, -32212, 558346, -311385, 1364726, -877247, 526670, -373125, 216359,
- 622233, -281320, 703301, -844498, -390842, -1153199, 186294, -125628, 111669, 256087,
- -388158, -312996, -755377, 84826, 424128, 46171, -267362, 27917, 41339, 308164,
- 90731, 183073, -199716, 171799, -353261, 139050,
- },
- },
- {
- {
- -2159295, 38489348, -16426639, 7100655, 11072963, 1425392, -624381, 9301825, -522375, -1335735,
- 2273648, 3131031, -3781719, -2706366, 7845832, -2125472, -1555852, 1353989, 2401961, -5013301,
- 2763812, -446140, 3121368, -5218386, 5476620, -143881, 765041, 4032974, 1869385, 656593,
- 1369558, 2487323, -6018860, 365072, -4792647, -594316, 824097, 875100, 2915209, 2305324,
- 170188, 1628330, -2949032, 1647120, -845572, 1481764, 1656247, -54761, -226560, 771484,
- -1422708, 893890, 1584306, 843961, 573915, 1129040, 654983, 63888, -738198, 837519,
- -6442, 257161, 193274, -531502, 538482, 1009317, 318364, 1133335, 273804, 715112,
- -784368, 114354, -359167, -31139, -244813, 543313, -123480, -463856, -107911, -410169,
- 420907, -121870, 323733, -85362, -273267, 377957, -12348, -273267, 233002, 89121,
- 138513, 206695, -175557, 188979, -25233, 301721,
- },
- {
- 1231582, 2248952, -1872069, -10039486, -12232604, -8053, 2323041, 4379793, 2173790, -794569,
- -6690486, 361314, -1801739, 4320737, -639413, 1018444, -8431558, -1523103, -4587025, 5548561,
- 890669, -1711008, 1932198, -3274913, -3559454, -739808, -6887517, -396748, 20401, 19864,
- -111132, 3224447, -3362423, -3378529, 3979287, 321586, 2079301, 3551938, 1146219, -365072,
- 1700270, -124554, -8053, -1593433, -1684164, -1242856, -1556926, -1494649, 1140314, 1119376,
- 275952, -212064, 934155, 206695, 701153, -281857, 1125281, -125628, 855235, 268435,
- -605590, -100932, -532576, 17180, -599148, -818191, -598611, 248571, 31675, -324807,
- -337155, -139050, -148176, -940061, -186294, -693637, 474057, -259846, 315680, 13422,
- -229781, -301721, 154619, -217970, -146029, -140660, -284005, -454730, 105227, -301721,
- 241592, -232465, 302795, -137976, -99321, -161061,
- },
- {
- 3555696, 13049721, -9837623, -28749974, -12380780, 2432025, -1803886, 530965, -1983738, 2073396,
- 4654134, 9543417, 156229, 747861, 2398739, 278099, 1120450, -5406827, -6046777, 1897302,
- 6561637, 980863, 819265, 1068373, 4840428, -1866700, 3688840, 2519535, -1418413, 872952,
- -3103651, 3292629, 5390721, 1433445, -614180, 742493, -3081102, 277562, -166430, 1448478,
- 720481, 1835025, -622770, 181999, 376883, -186831, 56908, 1093606, -923418, 19327,
- 1910187, -1478543, -118112, 574989, 63351, -994285, -1611, -268435, -20938, -681289,
- -2174864, 0, -289373, -62814, -391379, 248571, -1103807, 95026, -1125818, 392453,
- -66035, -262530, 629750, -772020, -288300, -152471, 79994, -240518, -190589, -108448,
- 120796, 163746, -353798, -70330, 204548, -184147, -237834, 147640, -344671, -9127,
- -48318, 9127, -170725, 24696, 27380, 36507,
- },
- {
- -18684182, -1570347, -15871515, 51452096, -1888712, -599685, -199179, 3473018, -2405182, 1174137,
- -5624260, 3619047, 1222992, -1366337, -4194036, -6736120, 1180042, -1899986, 5785858, -1091995,
- -1195075, -119185, 1213865, 148713, -4311611, 2393908, 2403571, -1481764, 481573, -1603633,
- -951872, 1418413, -3955128, 863825, 28454, 1318555, -504659, 1285806, -1823751, 497679,
- 3252901, -1553168, -2385318, 1648731, -1326608, 30602, 1001264, 1596117, 1527398, 726923,
- 1211181, -35970, -1901597, -619549, -363462, -1015223, 81604, 527207, 91268, -237834,
- -426812, 767725, 1664837, -344671, 194884, -317291, 685584, -97174, -273804, -163746,
- -1113470, 24696, 133681, -113280, -721018, 664646, -60130, 63351, 344671, 62814,
- -613107, -159451, -212601, 75699, 84826, -134218, 447213, -442919, 156229, -13422,
- -243739, -54761, 122407, 220654, -113280, 158914,
- },
- {
- -2352568, -15167140, 7211250, -2017024, -355945, -918586, -557272, 3604551, 2712272, -661425,
- 884763, -1779190, 2477659, 8150774, 8257075, 1036161, 1890859, 24653650, -3891240, -6796786,
- 3213173, -8179229, -3433826, 1411434, -513785, -10663330, 445603, -3059091, 2047089, 2007897,
- 4018479, -4581120, 3034395, -2693481, -7705172, -3405372, 3477850, 545461, -2736968, 2292976,
- -2817499, -1647657, 934155, -1675037, -433255, -1290101, -787590, 2177012, 991064, 1509144,
- 101469, -657667, 59593, -1090922, -341450, -275952, -537408, -692027, -209917, 941135,
- -452045, 771484, -346282, 45634, 212601, -1265942, 607738, -2684, 836982, -233002,
- 438624, 347892, 68719, -220117, -289373, -439697, -318364, -156766, -222801, -26844,
- 113817, -184684, -20938, 49929, 64961, -80531, -98784, 266825, -133144, 151934,
- 3758, -42950, 185757, -3758, 13422, 459025,
- },
- {
- -27074400, 6662031, 4483409, -22800370, -4152160, 1922535, -273267, 2104534, 52076, 4125316,
- -3308736, 4256850, 14496, -1544041, 142271, 1307281, 2800319, -212601, 3759707, 2003602,
- 4821638, 2427194, -3299609, -1745904, 660351, 7516, 703301, -2288144, 1336809, 2690260,
- -1661079, 454730, 344671, 2568927, -3779571, 493384, -799401, 1651415, 3578782, -2413235,
- -4083977, 1123671, -777389, 780610, 1743757, -133144, -1211181, -1113470, -91805, 235149,
- -2930778, 2982318, 1351841, -784368, 1554241, 1434519, 62277, 875636, 312996, 499290,
- 800475, -209380, 288837, 5369, -385473, -280247, -1128503, -543850, -49392, -831076,
- 994285, -377957, -562641, 67646, -434865, -288837, -624918, 459025, 609885, 118648,
- -114890, 294205, 52613, 279710, 246961, -57445, 23622, 371515, -291521, 472446,
- 266825, 374199, 108448, -115427, 178241, 316754,
- },
- {
- -120796, 12208445, -4772246, -904091, 1025423, 56371, -456340, -187368, -732292, 1791538,
- 303869, 619012, 433255, -2132988, 1508607, -10282689, -11894375, -3088082, 1862942, 4054986,
- 5664525, -718333, -425739, -15285789, -2310693, 1177895, 4825396, -5650030, 5002563, 3651796,
- 1100585, 5792301, 2884071, 5176510, 3463354, -3219078, -326954, 957778, 993211, -944893,
- -83215, -1970853, 1574106, -71941, -130997, 2071785, -1211181, -575526, -163746, 2071248,
- -513249, -492848, -1251983, 358093, 501974, 483184, -956704, -88584, -804770, -611496,
- -315143, -509491, 693100, -1334124, -1126892, 11811, 1673427, -108448, -936303, 251792,
- 402116, 787053, -231928, 97711, 670015, -415538, 363998, -143345, -651761, -126165,
- 275415, -93416, 380641, 64425, 266288, -217970, 32749, -73014, 91805, -73014,
- 23085, -290447, 83215, -54761, -32749, 42413,
- },
- {
- 20410222, -252866, -9818295, -16699907, 7064148, -143345, -220117, 3417720, -3714610, 2280628,
- -659278, 1563905, -10678899, -1425392, 4545149, -2670396, 5120138, -2464774, 5408975, -1553704,
- -4069482, -1165547, 37044, -3602941, -105764, 1137093, 1761474, 261456, -1382980, 696322,
- 3373160, 3367791, 1578937, 1615445, 882079, -4348655, 1756642, -3716757, 664109, -3432216,
- -83752, -1721745, -83752, 1069447, 2930778, -1036161, -794569, -994285, -173409, -1927904,
- 246424, -2016487, -166430, -335007, 241592, 364535, -346819, 1136019, 366683, -543850,
- -180389, -854699, 331249, 368293, -481036, -352187, -586263, 357019, 267899, -617402,
- 239981, 227633, 367220, 779000, 130997, -102005, -336618, 435402, -47782, 6979,
- -122943, -74625, 382252, 689879, 44560, 270583, 750546, -106837, 16106, 133144,
- 122943, 321049, 141197, 193810, -113817, -124017,
- },
- {
- -69793, 3898220, 1468342, 2686502, 944356, -70867, -725313, 1282585, 381178, -1875827,
- -1785096, 156229, -3679176, 1791001, 1909650, 20429548, -11330661, 5407364, 2857227, -2985002,
- -4738423, -2479270, -6112276, -544387, 286152, -5259188, 2648921, 3188476, 4018479, 41339,
- -5124433, 7793218, 2768107, 720481, 5663988, 431644, -1481764, -158377, -362925, -1250372,
- -2098092, 723165, -1264868, 694174, -2227478, 416075, -462246, -846645, 308164, -960999,
- -1126355, 1116155, 722628, 115427, 1652489, -229244, -1250372, 675921, 345745, 18254,
- -892279, -1043140, -162135, -388695, 1037235, -773631, 568009, 353261, 746251, -772557,
- -271657, -790811, -133144, -78920, -1071594, -140123, -534187, -284005, 144955, -205622,
- -173946, -299574, 387084, 86973, -221191, 195958, -142808, -514859, -129386, -200253,
- -8053, -168577, -108985, -326418, -92342, 47245,
- },
- {
- -15434502, -99636264, 9715753, 9466108, -16417512, 5508296, 13651017, 292058, -284005, 3023657,
- 718333, -3272765, -9545028, -2410014, 4059818, -2951716, -4246649, 5135707, -7996692, -3675418,
- 3391414, 4163434, -1564442, -5161477, 4053912, 2646774, 3538516, 2984466, 590021, -1331440,
- 128312, -2572686, -1496796, 2839510, -1935957, 1108102, 3138011, -2550137, 2991982, 1251983,
- -2659122, 2931852, -1238561, -575526, 2748242, -4131222, -2070711, -1526324, 704375, -1006096,
- -152471, 506806, 556198, -748935, -922881, 1503775, -341987, 1234803, 832150, -584652,
- 1277753, 585189, -318364, 976568, -991064, 1462973, 1298691, -407485, -633508, -45097,
- -470836, 731218, -338766, -237834, 529355, 368830, 586263, -191126, 150861, -288837,
- 391916, 120259, 175020, -121870, 452582, 255551, -630823, 391916, 496069, 115427,
- 54224, 49392, -38655, 142808, -57445, 228170,
- },
- {
- -268972, -17964238, -3283503, 592706, -650151, 4038343, 1846299, 1205275, 1414655, -1279900,
- 2865817, -7381975, 2857227, -4800700, 151934, 835908, 415001, -2565706, 1358820, -10673531,
- 463856, -5458904, 2184528, -1376537, -1899986, -4802311, -2645163, 2234994, 2079838, 82678,
- -2447058, 2376191, -1497333, 456877, 50466, 763430, 1362042, -2740189, 1258425, 2863133,
- -1447941, -279173, -435939, 2138894, -2229088, 1674500, 1111323, -1029718, -2301566, 353798,
- -1180579, -1401770, -971736, 1294933, -216896, -641024, -442382, -162672, -992674, 254477,
- 1180042, 881005, 251256, -770947, -341987, -359704, 263067, -82141, -455803, 183610,
- 230318, 199179, 322123, 803159, 108985, -227633, -68183, -259846, 155693, 145492,
- 59056, -473520, 200790, -127238, 551366, 140123, -426276, -261993, -171799, -179852,
- -513785, 57982, 161598, -141734, -92879, -35433,
- },
- {
- 48309792, 18202072, -2199560, -3094524, -6160057, -11316702, 6806450, 4530117, -2076080, 6186364,
- -2675228, 1640678, -7078643, 2922188, -7052873, -3462281, -6424198, 138513, -5806796, 526670,
- 7879655, 2559264, -781684, 1837709, 3134789, -3044595, -2266132, -833224, 68183, -1979980,
- -1381369, -3885872, 455267, -394063, -3062312, 3251827, -59593, 1443646, -2715493, -1255204,
- 766652, -4146791, 3530463, 965831, 1647657, -716723, 202400, 1468342, 570694, -1264868,
- -674310, -1246077, -2536178, -817118, -17717, -377957, -2147, 335544, -572304, -401043,
- 142271, -898722, 1197759, 555661, 560493, 903017, -487479, 234076, 252329, 156229,
- 43487, 87510, 15569, 490163, 15032, -556198, 456340, 73014, -68719, 76773,
- 246424, 13959, -485868, 25233, -136365, -273267, 197032, -106300, 255551, 429497,
- -155693, -207769, 136902, -4295, 68183, 194884,
- },
- {
- -1935420, 5818607, 8629663, -143881, 925565, -183610, 2051384, -4853313, -1087164, 709743,
- -382252, 220654, 688269, 6852621, -3415036, 3337727, 2847563, -5644124, 3708704, -532039,
- -9532680, 12902619, 8738111, 12591233, 605590, -5496485, 1161252, 3452080, -4563940, 3150896,
- -2589865, -1018981, -2919504, 875100, 1702418, -569083, -1543504, -168577, -1601486, 12348,
- 155693, -883153, 1706176, 446677, -1333587, 1133871, 1713692, -1145146, -456877, 591632,
- 487479, 32749, -1606318, -167504, 1298691, -337155, -905701, 233002, 931471, -35433,
- 54761, 379031, 480499, -516470, -548145, -769873, -22549, 261993, 608275, -963146,
- -739271, 221191, -217433, 96100, 76236, 51540, -102542, 107374, 264677, -376347,
- 359704, -14496, 484794, 234076, -226560, 405874, -193810, 127238, 51540, 112206,
- -214748, 307627, 271120, 373662, 154082, -53150,
- },
- {
- 13105556, -79381736, -5752035, -2001455, 12525198, 1953673, 7574175, 4507568, -2132988, -1304596,
- 2360085, -4185983, -2619393, -536334, -19114752, 89121, 1540820, 13775034, -8808978, 4490389,
- 2974802, -986232, -860604, 3408057, -2842732, 2095407, 3702799, -1159104, 1991791, -1716913,
- -2799782, -477815, 458488, -947040, 791348, 797790, 2893197, 2490007, 2617783, 1788854,
- -2329483, 1933272, -3537979, -1338419, 2245731, -284542, -372588, 1291711, -353261, -53687,
- -1227824, 2065342, -742493, 553514, -49929, -706522, 3052111, 1202054, 921807, -214212,
- 79994, 252329, -435402, 470836, 357556, -980326, -336618, -490700, 134218, 767189,
- 307090, -495532, 937914, -120796, 48318, 153008, 328565, -271120, 390305, 482647,
- 199179, 425739, -60666, -302258, 108985, -227633, -313533, 144418, 373662, -102005,
- 126165, -96100, -138513, -209917, 154619, 7516,
- },
- {
- -3517041, -10901164, 6266894, 7977902, -569083, -416612, 3537979, -1554778, 579284, -962610,
- 550830, -2917894, -1366337, 14271103, 11526618, -11614665, -1957431, -3600793, -1456531, -1765232,
- 9024263, 1129040, 8028905, 3748970, 4120484, -807454, 674310, 4281546, -4494684, 1218697,
- 1976222, -651224, 193274, -2986613, 1960653, 2851322, 3615289, -506269, 2798171, -303332,
- 2263448, -752693, 749472, -1157494, -603443, -868657, -900869, -1228898, -599685, -809601,
- -293132, 1505923, -629213, -313533, -49392, 1844689, 1414118, -955093, 1596654, -310848,
- -1525787, 685584, 1068373, 917512, -538482, -155693, -2193655, -47782, -403727, 778463,
- 982474, -440234, 91805, -535260, 510027, -550293, 696322, -228707, -335007, 263604,
- -176094, -2147, -301721, 289910, 290984, 251792, -205622, -12885, -124017, -120259,
- -439697, 1074, -75162, 338766, -279173, 366146,
- },
- },
- {
- {
- 531502, 1617055, 35664336, 16703128, -488016, 1822140, -25770, 7082401, 900869, 1034550,
- -170725, 3299609, -7241315, 5544803, -1134945, 1948841, -2319819, -1695975, 3642132, -1989644,
- -4715337, 631897, 4864051, -5144297, 6684580, -864362, 869194, 642635, 1797981, 3013457,
- 2360622, 318364, -3856344, -2618856, -2451890, -1708860, 1808181, -307627, 3799436, 2684,
- 1754494, 2272038, -3500398, 187368, 1906429, 540629, 672162, 876710, -455803, -602369,
- 1016834, 872415, 2153389, -890669, 1476932, 2081449, -283468, -135828, -914828, 830539,
- 82678, -246424, -154619, 68719, 320512, 1015223, 82678, 992137, 1088237, -85899,
- -486405, -96637, -306553, -3221, 46708, -10201, 314069, -439697, -78383, -706522,
- 348966, -257698, -47245, 11274, -24159, 200253, -114354, -122943, -40802, -107374,
- 159988, 305480, 78920, 31139, 247497, 1074,
- },
- {
- 33286, -11009612, 13259638, -18561238, -6276558, -82678, 2829847, 1475858, 5370320, -2451890,
- -4685810, -1544041, 1588064, 3192235, -2747169, 3177202, -11493869, -3236258, 842350, 5770289,
- 544387, -4776004, -94489, -4367982, 1124745, -2605435, -7826504, -193274, -2925410, 3280818,
- 969052, -1074279, -1448478, -3185255, 3607773, 141197, -89121, 3685619, 1406065, 729608,
- 2063732, -224949, -909459, -2298881, -69256, -1144072, -2007360, -348966, -27917, 1512902,
- -492311, 181462, 1302986, 113280, 1360431, -457951, 1665374, -491237, 767189, 831076,
- -944893, -411243, -548145, 335007, -1071058, -1341640, 129386, 270583, -110059, 104690,
- 407485, -1056025, -24696, -326418, -578210, -147103, 446140, -492311, 184684, -57445,
- -130997, -338766, 170725, -477278, -165356, -241055, -214212, -187368, -297963, -30602,
- 120259, 102005, -232465, -126702, -2684, -120796,
- },
- {
- -4608500, 24676734, -4981089, -41104448, -3507915, -1417876, 475668, 2486249, 10201, -1453846,
- 976031, 12557411, 3460670, 2483565, 59056, -4109210, -22012, -1148367, -4321811, 543850,
- -302258, 9057549, -3971771, 8624831, 1494112, -4869419, 7245610, 1755031, 1008780, -581968,
- 373125, 1682017, 5093831, 3842922, -1758789, -1235877, -1027034, -607201, -24159, 995359,
- -46708, 1604707, 1774895, -2575907, 65498, -836982, 1358283, 185220, 1063541, 59056,
- 1149978, -1177895, -1014149, -217970, 923955, -332323, -933619, -661962, -466004, -380105,
- -1879585, -491237, -650688, -32749, 889058, -428960, -1224066, 645856, -1235877, 35970,
- -77846, -358630, 26307, -308701, -310311, -256624, 142271, -511101, 195958, -542240,
- 105227, 32212, -171262, 284542, -406948, -100932, -255551, 164819, -181999, -249645,
- 110595, -115964, -46708, 67646, 252329, -35970,
- },
- {
- 10260677, -75571024, 9964324, 49963892, 151398, -809601, 2272038, -1727114, -788127, 1910187,
- 1133871, -1766842, -3591667, -170725, -124017, -1996086, 2274185, -4070555, 1919314, -1163399,
- 1379221, -2991445, -1313186, 469762, -1736241, -1730872, 2044941, 720481, -1742146, -2552821,
- -2204392, 2276870, -2556043, 936303, -390305, 645856, 1422171, -91268, -252866, 642098,
- 2362769, -2151779, -287226, -651224, -1494112, 885837, 2128693, 736587, -308164, 1314260,
- 1611150, 579284, -2751464, -940061, -1066763, -668941, 399432, 311385, 445066, -318901,
- 22012, 35970, 1050656, -280784, -37044, 395137, 20401, -279710, 83215, -641024,
- -695785, 90194, 53687, -47782, -406948, 166430, 490163, 270583, 16106, -363462,
- -301721, -214212, 43487, 115964, 191663, -59593, 362925, -211527, -61203, -29528,
- -301185, 26307, 35970, 135828, -57982, 35433,
- },
- {
- 2264522, -7090454, -1612760, -2602750, -697932, -345745, 1255204, 796716, 3612604, -291521,
- -3782256, 2911451, 3417720, 1636919, 10415296, 6692633, 8980240, -3439732, -1095217, -3466039,
- 525597, -1178432, -10660646, 5378910, -3944928, -7456600, 316217, -1453846, 2480881, 1887638,
- 1648731, -954020, -1584843, -1674500, -4395899, -3595425, 1627256, 890132, -1338419, -1563368,
- -1788854, -1444720, 588411, -1056025, -162672, -1702955, -390305, 156229, 2384781, 608275,
- -556198, -613643, 744640, -972810, -179852, -590021, -839129, -577136, 699006, -10201,
- -175020, -437013, 695248, -652835, -367757, 197032, -2147, 274878, -241055, 618475,
- -705985, 964757, 166967, -347892, -67109, -215285, -506806, -166967, -517544, -90194,
- 413927, 74625, -280247, 250719, -69256, -153545, -134218, 382252, -137439, -272730,
- 57982, 137976, 34360, 85362, 23085, 117038,
- },
- {
- 12874164, -48668420, 3062849, -34368328, 8013335, 1542967, 2579128, -2698850, 1464047, -1647657,
- 3238405, 1075889, 5546414, -6296959, -481036, -486942, 2054605, 1229434, 4387309, -2842732,
- 8270497, 1813013, -3840775, -226023, -198642, -972810, 628139, 34897, -751619, -2012729,
- 1415192, 2553358, 2344515, 401579, -2792803, 637266, -10737, -167504, 3399467, -606664,
- -4010426, -1032403, -362925, 1016297, 447213, 1193464, -3233037, -1468879, 1093069, -603443,
- -423591, 1485522, -177704, -578210, 859530, 2008434, 75162, 233002, 568546, 135291,
- 1129040, -229244, -95026, -893353, -23085, -62814, -1356136, -596464, 288300, -705985,
- 526670, 806917, -1438277, 390842, 122407, -783832, -385473, 366683, 598611, 197569,
- -103616, 435939, -54761, 283468, 403190, -195958, 23085, 363462, -245887, 453119,
- 224412, 181462, 165356, -132607, 239444, 228170,
- },
- {
- 268972, 3305514, 99858, 466004, -623844, 247497, -448824, 1166621, -1174674, 358093,
- 1724966, 191663, 591095, -3972845, -1801739, -8285529, -6525666, -6518687, 8712341, -7350837,
- 8788040, -6818798, -4124242, 427349, -1050120, 1774895, 92879, -879395, 2090575, 4810364,
- 2007360, 2035815, 8507256, 2896419, 479963, -2588792, 3893925, -387621, 373125, -2741263,
- 1193464, 256087, -648540, -1083942, 1449552, 931471, 506269, -870268, -200790, 1528472,
- -103079, -1559073, -992137, 847719, 609885, -365072, 157840, -1124745, -1372779, 146566,
- 369367, -760746, 20938, -762357, -825707, -55835, 748935, -346282, -164283, 519154,
- 531502, -245350, 250182, -155156, -99321, 387621, -313533, -8590, -319438, -158377,
- 32212, 523449, 128849, -70330, 149250, -140123, 126702, -31675, 149787, 92342,
- -160524, -130460, 4832, 179852, -34897, 41876,
- },
- {
- -1351841, 10548440, 9773735, 1086090, -11592654, 1822677, 436476, 303332, -1734630, 860067,
- -943819, -1729798, -2857227, -5357435, 6485401, -3413425, 4641786, 938987, 3143916, -795643,
- -8910447, 1780801, -819802, -2315524, 287763, -743566, 1559073, 378494, -2235531, 3448322,
- 1970853, 2301566, -416075, 2304250, 1234266, -3267396, -957778, -2032056, -537, -1800128,
- -2498597, -1850594, 2275259, 814433, 842350, 70867, 483184, -197032, -2182917, -2155000,
- -1015223, -272730, -1971390, -104690, -332860, 271657, 12885, 1364726, -238371, -62814,
- -739808, -838056, 51540, 384400, -213138, -210990, -616865, 768262, -654983, -221728,
- 617938, 104153, 16643, 913754, 34897, -251256, -473520, 252329, 540629, -627602,
- -2147, -135291, 318901, 156766, 713501, -186294, 521839, 438624, 66035, -72478,
- 199716, 117575, 66572, 154619, -140123, 107911,
- },
- {
- 724239, -2837363, 3900367, 2134599, 1699733, 483184, 82678, -914828, 1828582, 836982,
- -4394826, -981937, -3740380, 3333968, 4794794, 7212324, 13259638, -4568235, 4555350, -6131066,
- -7456600, 2794950, -2726767, -6954089, 1343251, -299037, 341450, -48318, 4214437, 964757,
- -3081639, 9212168, -2270964, 1930588, 6793565, -2292439, -158914, 265214, 862215, -2936147,
- -1223529, -2160906, 677531, 585726, -2816425, -569620, 2098092, -362925, -1396938, -951335,
- 83215, 101469, 1644973, -153545, 435402, 184147, -348966, -1237488, 388158, 1131187,
- -611496, -503585, 419833, 301185, 449898, -573378, 817118, 818728, -83752, -824097,
- 180926, -1297617, -202400, -440771, -1044214, 156766, -222801, -571231, -345745, 100932,
- -71941, 200790, 236760, -112743, 169114, -90194, -86973, -368830, -298500, -172872,
- 244276, -234076, -231928, -202937, -468151, 358630,
- },
- {
- 15352361, -111282064, -17894982, 13058848, -17673254, 8094403, 4129074, -722628, 5136244, -4427575,
- 770410, -4270808, -2331094, -5963025, 9315247, -5643050, -3657702, 2047626, -3751117, -2812130,
- 1745367, 4248797, -1558536, -3597572, 595927, 2072859, 3098819, 3033858, -883690, -1028645,
- 1592896, -3652870, -2069101, 2202245, 200253, 2450816, 3350611, -1275068, 1362578, -794032,
- 1364189, -783832, -1611, 2142652, -494995, -2221572, -2672544, -1305133, 848793, 353798,
- -1140851, -625455, -720481, -369904, 386547, 279710, -129923, 1361505, 1281511, 648003,
- 74088, 296353, 495532, 762357, -906775, 1542430, 606127, -238908, -207232, -1065689,
- 80531, 747861, -273267, 193274, 678068, 366146, -217433, 323196, 177167, -4295,
- 459562, -157840, 231391, 97174, 258772, -251792, -507880, 267899, 234613, -81604,
- 440234, 44560, 121333, 19327, 184684, -207232,
- },
- {
- 636729, -26593900, -2566780, 10107669, -3217468, 1274532, 5654862, -267362, 92342, 1095754,
- 783832, -3071439, -3178813, 3765613, -5287642, 6243272, -991064, -3640522, -6426882, -2027225,
- -4402879, 1577864, -3395709, -8074539, 2525978, -2314987, -3092913, 4460861, 623307, -2839510,
- 2267206, -1190780, -2954401, -63888, 1431835, -1094143, 939524, -281320, 355409, 2579665,
- -663036, -1505923, -421981, 453656, 991064, 194347, 489626, -1464584, -717796, -1086090,
- -545998, -1454920, 1074, 673236, -403727, -541703, -762894, -177167, -311385, -183073,
- 484258, -358093, 881542, -276489, -256624, -136902, -341987, -311385, 7516, -149787,
- 202937, 325344, 63888, 833761, -129923, 176631, -494995, 162135, -16106, 505732,
- 115964, -287226, -198105, 60130, 156229, 80531, -15032, -306553, -209917, -73014,
- -496606, 93416, 82141, -253940, -34897, 45097,
- },
- {
- -32785096, 121550792, 2334852, 1401233, -6349036, -2335925, 4742181, -1527398, 155156, 5704791,
- -56908, 134755, 302795, -9639517, -3201361, -3424700, -996969, -5075578, -5093831, 4709432,
- 5543729, -2769717, 2894271, 122407, 5021354, -1407676, -2942590, 1487669, -4793184, 1316408,
- -4345970, -489089, 186294, -3354906, -2253784, 3193845, 2707977, 217970, -358630, -1408749,
- -1919314, -699543, 2304250, -2747705, 2992519, 1226213, 490700, -328028, 1312113, -1595580,
- -657667, -1141924, -2175401, -140123, -1010391, -479426, -1184337, 2109903, -1267552, -66035,
- -533650, -704912, 1308354, 219580, 1062468, 523449, 341987, -639413, 640487, 231391,
- -5906, 309775, 459562, -137976, -708133, 621697, 118648, 275415, -296890, 284542,
- -665720, 235686, -300111, -63888, -295816, -220654, 169651, -42413, 509491, 86436,
- -230318, 10737, -84289, -20401, 67109, 248571,
- },
- {
- 1425392, 15989090, 1384053, -1640141, 1082332, -2541547, 6292127, -7186554, -1468342, 1525250,
- -1450625, 2655364, 507343, 6288906, -4672388, 1803886, -2607045, -1424855, -2801929, 1378148,
- -2192044, -215285, 7162932, 6976638, 8079907, -956167, -1723356, -609885, 2412698, -5357972,
- 2451890, -2556579, 1067836, -2107218, 2494839, -647466, -2232309, -1856500, 3141769, -1767379,
- -1921998, 1737851, -286689, 487479, -1089311, 681826, 2256469, -2231236, -261993, 1737851,
- -688805, -840203, 713501, -459562, 261993, -219043, -697395, 389768, 591095, -367757,
- 1017370, 9127, 77846, 797253, -1228898, 103616, -628676, 249645, 67109, -290984,
- -1174674, 779537, -697932, 50466, 348966, -384400, -426276, 31675, 510564, -11274,
- 91805, 645856, 46708, 193810, -150324, 493384, -133681, 27917, 62277, 98784,
- 76773, 218506, 54224, 462246, 194347, -122943,
- },
- {
- -23034984, -25968446, -2390686, 9948755, -3230352, 7421167, 5327370, 2046015, -2951716, 2062658,
- 38118, -2769180, -4971962, -1640141, -21887154, 5111548, 4727149, 5931350, -2136746, 1969779,
- 2047089, -1660542, 3395709, 479963, -279173, 2513093, 3278134, -2887829, -338766, -1320703,
- -984084, -754304, -617938, 3012383, -1338956, 3626563, 2825552, 3658775, 216896, 616865,
- -1699196, -2739652, 851477, 1712618, -252866, 1721745, 1200980, -987843, 532576, -374199,
- -627065, 302795, -321049, 243739, 99858, -42413, 2219961, 1500554, 499290, -849330,
- 686121, 83215, -76773, 672699, 204548, -393526, -362388, -128849, 278636, 187905,
- 466004, -595927, 169114, 246961, 568009, 177704, -40802, -27917, -234076, 658741,
- 358093, 919660, -6442, -90194, 201327, -481036, -181462, -189515, 303332, 293132,
- 81604, -238908, -229781, 42413, -2684, -99321,
- },
- {
- 2583960, 1676111, -8455717, 5048197, 4051228, -3513820, 4596689, -1079111, -364535, 1313186,
- 1673427, -2551748, -2770791, 5223754, 15599321, -7032472, -6507413, 1944547, -452045, 2098092,
- 7010997, 4237522, 5266167, 1894618, 3498251, -916976, 307627, 1959579, -1707250, 1817308,
- 1673964, 138513, -2098629, -74088, 2728378, 5960341, -604517, 1403917, 2173254, 1082332,
- -780073, -1109712, -420370, 1641751, -1198296, -872952, -1797981, -567473, 584116, -1169305,
- -13959, 493384, -123480, -80531, 947577, 1318018, 596464, 257698, 79994, -1287953,
- 22012, 152471, 1064615, 566936, 11274, -1569274, -31139, -286689, 117038, 699006,
- 187368, -219580, -466541, 21475, 45097, 112743, 242129, 136902, -350040, -229781,
- -88584, 314069, 114354, 54761, -155156, 244813, 11274, -243739, 282931, -140123,
- -491774, -119185, -17180, 239444, 26844, 382789,
- },
- },
- {
- {
- 3406446, 38968240, 51804820, 24119462, 5182952, -656593, -692027, 4836133, -1748589, -1626719,
- -2886755, -100932, -7752953, 6526740, 739808, 9727027, 4618701, -3660386, -1573032, -1803886,
- -6295349, -780610, 3095061, -976568, 4595615, -4861366, -1762010, -1468879, -1309965, -130460,
- 319438, 2419677, 1171452, -1798518, -932008, -3857954, 2917357, 307627, -518617, -1949915,
- 1889249, 2081985, -1692754, 644782, 2280628, 1600949, 770410, 420370, 26844, -523986,
- -53150, 114354, 1262184, -1518808, 266825, 1548336, -648003, 267899, -699006, 729608,
- 172872, -263604, 344134, 142808, -664646, -848793, -537945, 542240, 504659, 5906,
- -496069, -154082, 119722, 23622, -489626, -595390, 330176, -437550, -169651, -480499,
- -84826, -609885, -229244, -89121, 121333, 250719, -52076, -126165, -94489, -223338,
- 179852, 248034, -15569, 18790, 336618, -83215,
- },
- {
- -1750199, -36481452, 1746978, -26307, 9622874, 3110630, 1508070, -2682744, 451508, -489626,
- 944893, -745177, 1247151, 1095754, -4082367, 920734, -10572062, -3315178, 294742, 4813048,
- -3482682, -6197638, -1251446, -8152385, 405874, -3009698, -6751152, 1133335, -4952634, 5485210,
- 1795296, -2334315, -774168, -1711008, 2581812, 2362232, -3014530, -1039919, 899796, 1060320,
- 1513976, 528818, -1280974, -2195802, 1102733, 3211025, 372052, 914828, 784905, 838056,
- -907312, 25233, 182536, -1289564, 873489, -1615982, 1631551, -205622, 497142, 767725,
- -836982, 352724, 23622, -185757, -927713, -1100585, 682900, 762357, 306016, 146566,
- 254477, -224412, 639413, 131533, 192737, 416075, 230854, -576063, -685047, -251792,
- 224412, -48318, 8590, -217433, 78920, -255551, -12348, 43487, -203474, 300648,
- 188979, -22549, -84826, 64425, 78383, -34897,
- },
- {
- 3940096, 11895449, -19366008, -4907000, 23634668, -1352915, 2108292, 4317516, -944893, -7617662,
- -6273337, 13735305, 3078418, -717796, 1377611, -5188858, 112743, 2921115, -4293894, -2591476,
- -5658083, 7845295, -1299765, 9401683, -332860, -1606855, 7437273, 988916, 1138166, 2704219,
- 697932, -287226, 4920422, 1161252, -4379793, -1031866, 547608, -1877438, -189515, -532039,
- -2623688, -448824, 1692754, -2273112, -842350, -1363652, 294205, -887448, 1160715, -58519,
- 322123, -1391033, -811212, -489089, 644245, -259846, -944356, 92342, 66035, 765578,
- -35970, 45097, -1235877, -842887, -952946, -681289, -149250, 324270, -903554, 872952,
- 150861, -409096, -224949, 221728, 488016, -324270, -63351, -379568, 124554, -890669,
- -105227, -258772, -130460, 406411, -165356, 196495, -80531, 205085, -136365, -45634,
- 26844, -154619, 5906, -5906, 125091, -103079,
- },
- {
- 6696928, -118189984, -15247671, 39666172, -5995775, -54761, 1668595, -2787434, 486405, 3661997,
- 1125281, -1079111, -353798, 1567663, 7610682, 4858682, 2009508, -5402532, -998043, -2587718,
- 2472828, -1140851, -1765768, -253940, -828392, -4111358, -3172907, 2442226, -942745, 151398,
- -992674, 2838974, 2871186, 3888019, 1648731, 1612223, -1843615, -2102923, 33286, -554588,
- 1082332, -1651952, 1906429, 1022202, -1111323, 183610, 1920387, 913754, -2239826, -1108102,
- -184147, -30602, -1965484, -374199, -960462, 782221, 1242856, -590021, 916976, -518617,
- -78383, -594316, -454193, -685047, 102005, 280247, -607201, -32749, 261993, -37044,
- 175557, 476741, 173946, -31139, -395674, -37044, 492311, 603443, 287763, -350040,
- 357019, 341450, 272730, 117575, 301721, -181462, 23622, -33823, 6442, 60666,
- -187905, 155156, -37044, 94489, -97711, -41339,
- },
- {
- -2039036, 5528160, 8828305, -2388002, 905701, 732829, 1125281, -2093260, 973884, -471373,
- -2801393, 2653753, 4561256, -5225902, -3310346, -7174743, -15617575, -30425012, -10102837, -4033511,
- 1619203, 7850664, -2675765, 7639136, -1611150, -282931, 4816269, 4490389, 2168422, -588411,
- -2267743, 3013457, 3244848, 2188286, 3528853, 389768, 1269163, 4226248, -72478, -3387656,
- -1569811, -810675, 1159104, 114354, -190052, -16106, -74088, -601295, 3026878, 809064,
- -1866700, -1822677, 1057099, 676457, 246424, -377957, -110595, -88584, 1163936, -511638,
- -1433982, -1285269, 59056, -427886, 205622, 1083406, -47782, -370441, -815507, 283468,
- -610959, 532576, -81068, -132607, -115427, 66572, -32749, 304406, -88584, 56908,
- 659278, 626528, -246424, 127238, -176094, 35970, 31675, 259846, 24696, -24159,
- 274878, 125628, -10737, 88584, -215285, -118648,
- },
- {
- 10983842, -66147328, -2395518, -35261144, -1954210, -1267552, -903017, -5244155, -165356, -752693,
- 8661338, 1838783, 5462662, -8405788, 970663, -558883, -2885144, 395137, 3697967, -3068754,
- 8640937, 1537061, -4680441, -4551055, -1274532, -680215, -210990, -106300, -2284386, -3757560,
- 930397, 1120450, 440234, 1762010, 375273, 562104, -2236604, -3106872, 806917, -277025,
- -1206349, 100395, -1015223, 335007, -2626909, 930934, -776852, 69793, 444529, -1040993,
- -588947, -1322850, -1024350, 755377, 744640, 1059246, -577673, -868657, -869194, -1342177,
- -298500, -281857, 628676, -856309, 159451, 729071, -621697, 222801, 652835, -454730,
- 556198, 877247, -762357, 821949, 887985, -515933, -417686, -99321, -110059, -289910,
- -285615, 272194, 64425, 237834, 287763, -93416, 47782, 243739, -139050, -65498,
- -227096, -277025, -51003, -111132, -5369, -164283,
- },
- {
- 393526, -2859375, -1063541, 876710, -1538672, 339839, 161061, 535260, -1737851, -1822140,
- -399969, -1138703, -4046396, -5398237, -672699, -2013266, -2537789, -7529078, 6371047, -4027606,
- 8855149, -5880884, 4016331, 10728828, 1146756, 860067, -2085207, 2247879, 1553704, 1595580,
- -2400887, -2557116, 5041755, -1862942, -840740, -3801583, 930397, -2005213, -136902, -2689187,
- 441308, 1433982, 532039, -1239635, 115427, -298500, -521302, -1219234, -746787, 634581,
- -1104344, -1554241, 206158, 2089502, 431107, 200253, 1216013, -739808, -855235, 394063,
- 814433, -984084, -656056, -387621, -73551, 564251, 309238, -692027, -480499, -153008,
- 185757, 12885, 660351, -516470, -661425, 371515, -381715, 150861, 249108, -102542,
- -413927, 632434, 202400, -215822, 30065, 176094, 388158, 32749, 156766, 54761,
- -171799, -115964, -172872, 134218, -74088, 94489,
- },
- {
- -19211926, -12928388, 4869956, 13179107, 502511, 3748970, 1979980, -2804614, -3598109, 1236414,
- 1404991, 5417028, 6812892, -2794950, 3680250, -4216048, 2706903, 791348, -988916, -2658585,
- -9343164, -796716, -865973, -1743220, 1598265, 413391, 107911, 2162516, 1695438, 2530810,
- -1592896, -887448, -3169686, 84826, 903554, -3310346, -24696, 124017, -129923, 1347009,
- 119185, 1060320, 3248069, 965831, -1216550, 976031, 648540, 321049, 1152125, -876710,
- -2076617, -56908, -2181307, -380641, 37581, 514859, -824097, 367220, -48855, 271120,
- -674847, -346819, 135828, 9664, -183073, 300648, 18254, 869731, -100932, 81068,
- 268435, -255014, -439697, 529892, -118112, -311922, -380641, 124554, 436476, -632434,
- -13959, -314606, -213138, -479426, 380641, -600759, 57445, 359704, -17717, -185220,
- -95563, -321049, -90194, 98784, -201327, 187905,
- },
- {
- 192200, -4382478, 6538551, -911607, 496606, 660351, 715112, 53150, 3489124, 1445793,
- -2794413, -1964948, -1475321, 4034048, -1147830, 5122822, 16685948, 475668, 5508296, -5958731,
- -2286533, 2789581, -153008, -2711735, 6213207, 5258114, 484258, 738198, -542240, -482110,
- 539018, 3551401, -3484292, 606664, 3575024, -559420, 1641751, -1202054, 67646, -2232309,
- 688805, -3170760, -1964411, 1335198, -580357, 1420024, 2697240, 828929, 824634, -110059,
- 28991, -1158567, 1539209, -223875, -612033, -992674, -339302, -1042603, 493921, 1691143,
- 316217, 697932, 1296543, 34360, -679142, -879931, 548682, 309775, -192200, 338229,
- 872415, -616328, 558883, -500364, -596464, 324270, 112743, -66572, -34897, 78920,
- 178241, 35970, -193810, -133144, 401043, 70330, 52076, -64961, 105227, 72478,
- 91805, -104153, -42950, 249108, -251256, 136365,
- },
- {
- -15091441, -115461072, -4157528, 12757127, -5172215, -5959804, -15000173, -1353452, 3578782, -9673877,
- 105764, 3761855, 7828652, -195421, 10997801, -5594732, -4866198, 3597035, -1228361, -3202972,
- 1080184, 5676336, -668404, -3341485, -1341104, -601832, -670552, 667867, -610959, -1248762,
- 3566434, -2312303, -368293, 4192962, 1667521, 2739116, 1937567, -1238561, 792421, -1191853,
- 2709588, 194347, 252329, 1927367, -111669, -1237488, -1065689, 128312, 642098, 1755031,
- -1828046, 464393, 1112933, -822486, 410706, 1740536, 922344, 1010391, 891206, -23622,
- -1276142, 812286, 509491, -392990, -99858, 1097364, -158914, -130460, 331249, -657667,
- 66572, 865973, 102005, 658741, 287763, -410706, -757525, 442919, -62277, -208306,
- -15032, -261456, 390305, 377957, -306016, -481036, -398895, 267899, 204548, 91268,
- 466004, 372588, 295279, -119722, 95026, -408559,
- },
- {
- -893353, -24312736, -5242545, 8710194, -2534568, -5354751, 1300838, -619012, 308164, 495532,
- 1131187, -2049236, -3215857, 4843650, -7823283, 4344897, 4472672, 5608154, 1753420, 2120640,
- -11692512, 3025805, 1175210, -7908109, 2819646, 1200980, -1165010, 2153926, -2571075, -3925600,
- 2738042, -3359201, -3263102, -2136209, -1421097, -3012383, -1272921, -462246, -1295470, -514859,
- -630823, 371515, 519154, 35970, 1090922, -421444, 234613, -183610, -348966, -1265405,
- -207769, -264677, 944356, -200790, -2011655, -223875, -699006, -1238024, -1011465, -446140,
- -769873, -1758252, 144418, 31675, 578210, 679142, -155693, -326954, 180926, -382252,
- -285078, -145492, -339302, 316754, -153545, 503048, -571768, -88047, -141197, 227096,
- 260919, 247497, -16106, 111669, -96100, -19864, 118112, -69793, 224412, 204011,
- -111132, 125628, -95563, -155156, -122407, 33286,
- },
- {
- 4955319, 164296464, -5665599, 2938295, 273267, 9342091, 3566434, -896038, 1948841, 2456721,
- -4453881, -2912525, 954557, -8555575, -1643899, 1401770, 5181878, -4707821, -2673617, 2782602,
- -1931662, -4006131, 4100620, 725850, 1363115, -927176, -4659503, 2643552, -1484448, 6007049,
- -3578782, -1349157, -53150, -3064996, -3219615, -2231236, 1531156, 970663, 1233193, -292058,
- 93952, 1520418, 1203665, -4707821, -71404, 1290638, 390305, -1038308, 1570884, -1758789,
- -1007170, 1175210, -450972, 110059, -836982, 157840, -804770, 2645700, -588411, -67109,
- -936840, -1001264, -349503, -1465121, 62814, 44023, 856309, -539018, 380105, -197032,
- -174483, 201327, 146029, -827855, -377957, 1336272, 252866, 120796, -662499, 49392,
- -949725, -36507, 76773, 272730, -399969, -249108, -42950, 68719, 352187, -302795,
- -49929, 106300, -214212, -175557, 268972, 323196,
- },
- {
- -1056025, 25661892, 6757058, -2187749, 5553930, 1228898, 9061844, -4456029, 732829, -569083,
- -1368484, 4926328, -8971650, -20480552, -13416404, 1961726, -1729798, 3423089, -5629092, -608275,
- 5779952, 4328790, 11512660, 3555159, 1939715, 393526, -2635499, -4397510, 1866163, -1073742,
- 4400731, -4029216, -1700270, -5990943, 1276679, -1224603, -2602213, -1253594, 3437585, -2493229,
- -2949569, 2374580, 968515, -2150705, -3946001, 224949, 2529199, 337692, 622770, 1998770,
- 458488, -250719, 1673427, 583042, 1662689, 448824, -836445, -1070521, 58519, -954557,
- 209380, -10737, -522375, 885300, 123480, 348429, -547071, -237834, -836982, 87510,
- -532039, 1269700, -91805, -278099, -650151, -1137093, -440771, 144955, 627065, 237834,
- 280784, 278099, -848256, -20401, -219580, 423054, -77846, 46708, 28454, -62814,
- 24159, -27380, -84289, 368830, 26844, -2147,
- },
- {
- 20223390, 42061688, 4088272, 8222178, -5834713, -1497333, -4471598, -1424855, -4422206, 1872606,
- -1122060, 2005213, -4230543, 9324374, -2557116, 4417374, 1393717, 3891240, 3286187, 6221797,
- -1078037, -2152852, 3679176, -1461900, 3608846, 5508296, 2270427, -1446330, 2648384, 3554622,
- 3282966, 4092567, 1553704, 1600949, -3804267, 1137093, -2076617, -1290638, -1722819, -796180,
- -416612, -3106335, 519691, 2777233, 174483, 1413581, 742493, -2169495, 229781, -540092,
- 181999, 375273, -1047435, 329102, 198105, -1223529, 492311, 530428, -77309, -1277753,
- 233539, 422517, 661425, 931471, 13959, -472983, -513249, 74625, -147640, -357556,
- -196495, -966368, -899796, -504122, 294205, -155156, -610959, 51540, 537, 185220,
- -114890, 770947, 178778, -5369, 408559, -94489, 26307, -37044, 311385, 253403,
- -52076, -161598, -238371, -88047, -31139, -31675,
- },
- {
- -2408940, 13359496, 2259153, -1200443, 576063, -2255395, 5751498, -482110, -2885681, -3529390,
- -245887, -1456531, -3375844, -14772540, -13414257, -3621731, -2210298, 1931125, 2232846, 4102231,
- 634581, 4616553, 4027069, -4592394, 196495, 310848, 1720671, -340913, -8418673, -770410,
- 4319127, 2502355, 609885, 1457605, 1217086, 1605244, -1564442, 2671470, 20938, -1733019,
- -2122788, -1576790, -1797981, 558883, -2289218, 797253, -755377, 623844, 2525978, -922881,
- -31139, 936303, 1856500, 1872069, 842350, 607201, -338229, -221728, -462246, -434329,
- 1656247, -249108, -976031, -455803, 741419, -640487, 1051193, 159988, 712428, 162672,
- -616328, -321049, -361851, 198642, -70867, 122407, -127775, -86973, -420370, -11811,
- 186294, 177704, 356482, -62814, -499290, 44023, 183610, -194884, 417686, 121333,
- -19864, 162672, 1074, 259846, 269509, 275952,
- },
- },
- {
- {
- -5731634, 173194016, -66737888, 23475218, 7413114, -4203163, 898722, 4907000, -7759932, 3169149,
- -861678, -3298535, -2282238, 2469606, 6833830, 869731, 7153268, 1298154, -9888088, 964220,
- -5922223, 4726075, -2376191, 5148592, -675384, -5061619, 2130304, -1347546, -1529545, -970126,
- -1000191, 621160, 3004330, 197569, -1036698, -3965329, 3389803, 1879585, -1142461, -924492,
- 45097, -853088, 1916629, -846645, 1869385, 2345589, 1576253, -396211, -1335198, 1352378,
- -1502165, -242666, -1458141, 1506997, -574452, 936303, -680215, 111669, -6979, 632971,
- -144955, 683974, 672699, -1159104, 13959, -1117765, 277562, 738734, -972273, 417149,
- 164283, -219043, 56371, -499290, -506269, -610959, 700080, -361851, -441308, -135291,
- -139050, -112743, -289373, -161061, 108985, 406411, -201327, -252329, 145492, -26844,
- 160524, 273267, -210453, 49392, 257698, -130460,
- },
- {
- 1758789, -50797652, 5105643, 12222940, 3994320, 2979097, -1425929, 2616172, -2215666, -2966212,
- 1557463, 3741454, -2524904, 1134408, -4138201, -6380711, -1343251, -4379256, -4866198, 4955319,
- -26307, -3364033, -2016487, -6521371, 2118493, -8704825, -6908455, 1510218, -3876208, 6266358,
- -1402844, 859530, -1918240, 88047, 1225676, 3637837, -1059783, -20401, -1866163, -228170,
- 27380, 3388729, -1802276, -663036, 139050, 3201898, 1379758, -372052, 2622078, -282394,
- -1821066, 410706, -438624, -213675, -682363, -850404, 904628, -183610, 37581, 522375,
- -166430, 471373, 724239, -658204, -620623, -61203, 718870, 104153, -253403, 693637,
- -513785, 156766, 282394, 225486, 403727, 13422, -323733, 498216, -1081258, 41876,
- 68719, -17717, -114890, 317828, 8053, -165893, 3221, -54224, -205085, 279710,
- 226023, -220117, 99321, 72478, 205085, -199179,
- },
- {
- -1764158, -32673964, 22291954, 21601002, -2776160, -133144, 3629784, 1468342, 120796, 469762,
- -7156490, 8207146, 3329137, 459025, -6583648, 193810, -273267, 7078643, -10987600, -333934,
- -2956011, 4308926, 2921115, 2217277, -4592394, 13677323, 234076, 3316252, -4862977, 6021544,
- 275952, -1292785, 5879274, -3064996, -3622268, 1673964, -113280, -2659659, -278099, -1401233,
- -739808, 319975, -1829119, 84826, 304943, -1527935, -843424, -633508, 1233193, -1330903,
- 62814, 438087, -954557, 454730, -593779, -545461, -245887, 934155, 107374, -508417,
- 304943, 136902, -1270774, -845035, -802622, -970663, 367757, -957778, 137439, 745177,
- -48318, 270583, -302795, -214748, 773631, -137439, -96100, -284005, -396211, -734976,
- 295816, -265751, -234613, 354335, 215285, 59593, 89657, -36507, 44560, 225486,
- -276489, 23085, 61203, -187368, 44023, 9664,
- },
- {
- -25255482, -121609312, 21619792, 26099442, 3593814, 2276333, -1959579, 564251, -754841, 1961190,
- -897648, 4000225, 1233729, -7826504, 11485816, 6084358, 1023813, -1651415, -5793911, 79994,
- -697395, 1490354, -2669322, 2624225, -50466, -4189204, -2138357, 1592896, -1157494, 2013803,
- -873489, 3593277, 5086852, 172336, 2159295, 1368484, -2450279, -2512019, 61740, -313533,
- 173409, -176094, 1867237, 724776, -1449015, 322123, 382252, 2147484, -1853278, -554051,
- -1210644, -796180, -1148367, -397284, -476741, 1573569, 1260573, -1817845, 1534377, -903554,
- 198642, -144955, -1226750, 408022, -528281, -28991, -133681, 373125, -64425, 332860,
- 211527, 175020, 366683, -85362, -635118, 405874, 244813, 235149, 700080, -153545,
- 601832, 244813, 169114, 70867, 105227, -59593, -130997, 89121, -122407, 186831,
- -97711, 293132, -126165, -105227, 88047, 6979,
- },
- {
- 1569811, 26112328, -13079249, 87510, 524523, 354872, 2379949, -3201898, -900869, -959388,
- -2221572, 1968169, 8937290, 186294, -23082228, 2452426, -16400333, -9677635, -26918708, -365609,
- 4919348, 1658394, 954020, 6082748, -3404835, 2736431, 4684199, 5936719, 2702071, -5120138,
- 3051574, 4212289, 4042638, 122943, 4132296, 23085, 1207960, 3396782, -604517, -2218888,
- -605590, 57445, 803696, 632434, -1432909, 462783, 1452773, 576599, 925565, 1311039,
- -2906619, -1286880, 1436130, 608275, 52613, -299037, -334471, 335544, 1271847, -528818,
- -2859375, 228170, -1128503, -190589, 856846, 786516, -34897, -55298, -538482, -391379,
- -188979, 93416, -5369, 427886, -799401, -89657, 342524, 213138, 48318, 475668,
- 250719, 855772, -332323, -78383, -126702, 268435, -231391, 301721, 149250, 125091,
- 306553, -96100, 296890, -99321, -165893, 173409,
- },
- {
- -34601332, -39729520, 15455440, -23793046, -3147674, -2797634, 1563368, -6058588, 1581085, 3035468,
- 3628711, 2893197, 1059783, -7662222, 1596117, -2032593, -4911832, 6915971, 1823751, -1541356,
- 7877507, 185757, -844498, -7119982, 216896, -832687, -1282585, -1052267, -2046015, -2949569,
- -260919, -1631551, -36507, 4326643, 1075352, 254477, -1316944, -5688684, -1449015, 1735167,
- 1151051, -1093069, -1032940, 1588601, -4635881, -34360, 1802813, -204011, -674310, 1709934,
- -1183800, -2141578, 191126, 867583, -627065, 1604170, -146566, -303332, -1753420, -1874216,
- -289373, -67109, -66035, 6442, 508954, 931471, -573378, -323733, 525597, -127238,
- 574989, 93952, 536871, 312459, 992674, -350577, -279710, -321049, -280247, -842887,
- 289910, 13959, 121870, 146566, 256624, 161061, 46708, 267362, -85899, -427886,
- 90194, -419833, -285078, -83215, 168041, -159451,
- },
- {
- -659278, -5666673, 3428458, 216896, -588947, 336618, 128312, -1149441, -448824, -655519,
- -891743, -2214593, -7548942, 1819456, -3032247, -5430986, -5417565, -2115272, 678605, 11006927,
- -406948, 1991791, -3009698, 16986596, -5243618, 2277407, 2191507, -5616207, 4638565, -295279,
- 629750, -1234266, -3071439, 3812857, -4649302, -947040, -667331, -2187212, 288300, -1851131,
- -1504312, 1730335, -503048, 382252, -373125, -560493, -1351841, -336081, -904628, -335544,
- -2359011, 136902, 459025, 1221918, 242129, 588947, 1734630, -583042, 600222, -424128,
- 711891, -744640, -565862, -82141, -330176, 675921, 616865, -691490, -783295, -530428,
- 554588, 339302, 37581, -90731, -216359, 324270, -184684, 68183, 35433, 15032,
- 275952, 3758, -162135, 39192, -61203, 417686, 139586, 289373, -25233, -111132,
- 2684, -68183, -408022, 87510, 46708, -106837,
- },
- {
- 34171832, -46002856, -20896626, 10390600, -658204, 2024003, -2156074, -515933, -5099200, 4606353,
- 6158446, -173946, 6816650, 13089450, -14545444, 3055332, -3565360, 3295314, -1516660, -3311420,
- -4741107, -3583077, -443455, -578747, 867047, -2467459, 1936493, 635118, 5294084, -2402497,
- -1286880, 2065879, -220654, -1598802, -28991, -244813, -3757023, 2332704, -1762010, 1116155,
- -1209033, 3374234, 1370632, 1245004, -1996623, 1940788, 1144609, -1906429, 2961917, 1305670,
- -2419140, -51003, -2232309, -594853, -615791, 1234803, -8053, -1057099, 446140, 557272,
- -1227824, 211527, 361314, -125628, -469762, 326954, 724239, -41876, 426812, 263604,
- 251256, -476741, 205622, 137976, 59593, -523449, 69256, 51003, 60666, 36507,
- -55835, -61740, -242666, -770410, -22012, -39728, -333397, 427886, 17180, -219043,
- -90194, -445066, -24696, 166430, -91805, 26307,
- },
- {
- -740345, 3739306, 1888175, -780073, -677531, -133681, 1685775, 1003412, 2843805, -1021129,
- -3207267, -3532611, 4220342, 10417980, -14072997, 7174743, 1753420, 13414793, 4046933, -5883569,
- 2955474, -3625489, 4346507, 314606, -3129958, 6097243, 5536750, 5658620, -1964948, -4303021,
- 8006356, -9041443, 4138738, 920734, -1656784, 1806571, 2683818, -2244121, -1563368, 166967,
- -630286, -3655017, -1254667, 1648194, -325881, 1702955, 1703491, 131533, 2352032, -176631,
- -157840, -1280437, 1163399, 554051, -256624, -2072859, 322659, 331249, -168577, 477278,
- 330176, 823023, 999654, -192737, -865973, -406948, -33286, 135828, 406948, 632971,
- 186831, -434329, 478352, -5369, 181462, -233539, 441845, -456877, 353261, -202937,
- 603980, -248034, -361314, -31675, 485868, -13959, -112206, 269509, 103616, 18254,
- 11811, 86436, -33286, 84289, 537, -67646,
- },
- {
- 15060840, -88888104, -62315144, 5779952, 20624970, 1444183, -28020366, -4794257, 19327, -3133179,
- -2437394, 1992328, 8738648, 4880694, 6060199, -3456912, -3545496, -1367410, 1930051, -1361505,
- -198642, 3004867, 309238, 118648, -671089, -6436009, 2069637, -1865626, 3767760, -6048925,
- 4641786, 1792612, -2629057, 5151277, -173946, 704912, 125091, 1270237, 1529545, 2841121,
- -3311957, 2520072, 1180579, 136365, 25770, -464393, -595390, 2251637, -1870458, 758599,
- -828929, 1527935, 781684, -236760, 655519, 1129040, 1045825, 536871, 1054415, -731755,
- 445066, -623844, 1364189, -741956, 668941, -374736, 354872, 13422, -357019, -191663,
- 19864, 887448, 260919, 565862, 186294, -722628, -150861, -1074, -154619, 57982,
- -516470, 308701, 252329, 421444, -477278, -214212, -206695, 408559, -117575, 659814,
- -40265, 540092, 186294, -177167, -69793, 8053,
- },
- {
- 1016297, -7062000, -16575353, -1481764, 2877091, -3246995, -236223, -3861176, 1836635, -408559,
- 2110440, -4559108, 2281702, -723702, -2714419, 1089311, 1107565, 9306657, 4792110, -3142306,
- -9241159, 2022393, 6382859, -3385508, -342524, 5741835, -7420093, 5553393, -6274411, -892816,
- 332323, -951872, -1744831, -2937758, -3375844, -1672890, -1228361, 45097, -1118302, -3132105,
- 243739, 193810, 1551020, 169114, 359167, -657667, 1085553, -224412, -338229, -853088,
- -1440962, 875636, 370978, 19327, -2185602, 592169, -1527398, -845035, -518617, -1168231,
- 418759, -1716376, -361851, 679679, 118648, 236223, -195958, 125091, 76773, -865973,
- 143881, -489089, -9127, 53150, 225486, -17717, -269509, -355409, 199179, -307090,
- 432181, 94489, 186831, 12885, -89121, 52076, -23085, 15569, 356482, -21475,
- 146029, -55835, -68719, -10737, -56371, 19864,
- },
- {
- 20788716, 150155280, -8466991, 635655, 888521, 5658083, -2111513, 5981279, -1583232, -1266479,
- -1818919, -2646774, -152471, -5979668, -4303021, 5484673, 4763119, -138513, 1364189, -1607928,
- -1722282, -2732673, 288300, 6250251, -5869610, 2545842, -2134599, -1813550, 2356863, 4224637,
- -1063004, -2017561, -2302639, -1486596, -2880313, -4377646, 2838437, 311385, 1555315, -1509681,
- 2414309, -1286343, -1018981, 816581, -1589138, 1409823, -431107, 123480, 1305133, 23622,
- -1701881, -118112, 1417339, -938987, -1098438, 1088774, 298500, 947577, -173409, -960999,
- -1141388, 416075, -1442035, -1154273, -48318, -134218, 518617, 73014, -513249, 251792,
- -244813, 26307, 549219, -1138703, -12885, 753767, 985158, -528818, -249108, -119185,
- -649614, -78920, 121870, 185220, -271657, -90194, -418222, 414464, -28454, -234076,
- 61740, 55835, 59593, -176094, 144418, 253403,
- },
- {
- 685584, 28858422, 4849018, -32749, -734976, 4680978, 3457986, 1983201, -1542430, -1937030,
- 4405563, -1702955, 4471598, -46134928, -3054259, 2786360, 1182727, -892279, -2383707, -1996086,
- -664646, 11853036, 16156593, 2292439, -6379637, 6045704, -5812165, -406411, -3608310, 9409200,
- -1777043, -501437, -3612068, -4176319, 1646583, -4039417, -27917, -1738388, 666257, -1232656,
- -1515587, 1676648, 850404, -3821984, -1503239, 134218, 2509872, 1249836, -1393717, -270046,
- 2927557, 1394254, 1209570, 958315, 1993939, -624918, -321586, -1652489, -33823, -830539,
- -715112, 947577, -129386, -525060, 1140314, -576063, 303869, -1599875, 559420, -516470,
- 117575, 308164, 242666, -176094, -933619, -359704, -402653, 25770, 805843, 102542,
- 382789, -121333, -768262, -347892, -139050, 166430, 116501, 22012, -3758, -138513,
- -192737, -59593, 217433, 135828, 16106, 331249,
- },
- {
- -7481296, 76884744, 10439992, -2356863, -5539971, 6956774, -11840688, -3287798, -1374390, 3808562,
- 734976, 621697, -2776160, -12652437, 31122406, 5059472, -5135707, 1957431, 3642132, 7524783,
- -1524177, 2148558, -2197413, 2838437, 4391067, 5021891, -1170379, 3438121, 75699, 5613523,
- 2658585, 1858110, 2943126, -1400159, -1210644, 794032, -2284923, -3066607, -884226, -1263257,
- 2103460, -2247879, -2257542, 1513439, 2506114, 20938, -1087164, -2003602, 420907, 1243930,
- -913754, 1750736, -485868, 1121523, -1001264, -1516660, 139050, -53150, 10737, -144955,
- -844498, 1029718, 282394, 74088, 309238, -235149, -574989, 340376, -281320, -554051,
- -484794, -814970, -443455, -574989, -176631, -231391, -429497, 105764, 227633, -237834,
- 127238, 180389, 43487, 238371, 256624, 54224, 41339, 38655, 224412, 104690,
- 92342, -70867, -300648, -164283, 28454, -49392,
- },
- {
- 2362232, 13932337, -3485903, -3018288, -795106, 986769, 3811784, 1068373, -2475512, -5032628,
- -3204046, 413927, -1458678, 2729452, -40387188, -1683627, -660888, 4127464, -1613297, 7686381,
- -3092377, 8005819, -4894652, 32749, 402116, -1500554, 3842385, -3310346, -6073621, -140123,
- 1135482, 1714766, 4099546, 1799591, -1642825, 486405, 541166, 1170916, -1214939, -1342177,
- -944893, -988916, -653372, -2534031, -679142, 41876, -554051, 1248225, 1285269, -612033,
- -95026, 1973538, 2061047, 2533494, 207769, -221191, -31675, -926102, -606127, 800475,
- 1375463, 77309, -1264331, -802622, 270046, 350577, 1005559, -26844, 1007707, -1023813,
- -57982, 316754, -266288, -246424, 325881, -155156, -390842, -229244, -62277, 84826,
- 343061, -112743, 257161, -193810, -122943, -291521, 143345, 173946, 282931, 44560,
- 259309, -155693, 226023, 181462, 227096, -62277,
- },
- },
- {
- {
- 5740761, 224000800, -45141716, 6156836, -9006546, -3108483, -406411, -950798, -7930120, 7232725,
- -1203665, 1331440, 782221, -1609002, 9502078, 1482301, 4178466, 7600482, -7004555, -2921115,
- -2052994, 8249559, -4151086, 2443837, 934692, -1596654, 5219459, -954020, 331786, 349503,
- 1585917, 2350958, -390305, -2038499, 1299765, -1590749, 4615479, 892279, -3540664, 188442,
- 217970, -1424319, 418759, -122943, 498216, -404264, 1166621, 53687, -2022393, 847719,
- -2418604, -550830, -360777, 2880849, -289910, -472446, -256087, 1437740, 815507, 747861,
- -67109, 885300, 544387, -932545, 1243393, 254477, 317291, 309775, -1085553, 399432,
- 446140, -200790, 170188, -87510, -236760, 36507, 1289564, 193274, 41876, -117038,
- -58519, 399432, 437550, -1611, -107911, 495532, -159451, 11274, 577136, 245887,
- -48855, -17717, -301185, -226023, 70330, -67109,
- },
- {
- -226560, -29983704, 17002702, 6843494, -2934537, -540092, -2326262, 3915937, -1472637, -946503,
- 2327872, 2005750, -6077916, 329639, -2496450, -4908611, 2156074, -1787780, -4284230, 5173288,
- 3189013, 5955509, 11121281, -587337, 3953518, -9265318, -8363375, 3507378, -2872260, 1129576,
- 1017907, 6367826, -1851131, -1039382, 105764, 3047816, -478889, -1423782, -3076807, -1392643,
- -2142115, 4890357, 477278, -268972, -979789, -210453, -690953, -1774358, 923955, -1166621,
- -1854352, 379568, -533113, -357556, -1549946, -340913, 299574, -201863, 66572, -173409,
- -431644, 235686, 814970, 103079, 203474, 550293, 756451, 157303, -599148, -34360,
- -1245541, -493384, -122943, -348429, -233539, -246424, -277562, 769873, -89657, 460635,
- -156229, -119185, 53150, 256624, 25770, -48855, -191126, 155156, 53687, 133144,
- 194347, -350040, -37581, 26307, 142271, -140660,
- },
- {
- -466541, -99884296, -28919088, 20478940, -3298535, 2298881, 1554778, -1778117, 1610076, -732292,
- -9458592, 7583302, 1367947, -1431835, -5924371, 1968706, -2558190, 5136244, -9268003, 5131412,
- 375810, 3036005, 899259, -3236258, -5553393, 13244605, -6419903, -1614371, -5704254, 6161668,
- 1751810, 2248416, 4804458, -4114042, 1233729, 3926137, -39192, -1403917, 2001992, 3755412,
- -23622, 848256, -408559, 590021, 281857, -2039573, 5906, -324807, 44560, -2170032,
- 821413, 599148, -1743757, -387084, -794569, -586800, -990527, 310848, 255014, -812823,
- -79994, 926639, -423054, -1073742, -475668, -1076963, 433792, -1089311, -202400, 140660,
- -297963, 189515, -96100, -24159, 645319, -146029, 194884, 175557, -374736, -300111,
- 804233, 149250, -278636, 100932, 148176, -92342, 180389, 177167, 85899, 187905,
- -34897, 340913, 230854, -232465, 62814, 55835,
- },
- {
- 38179040, -66944044, -3221762, 19674172, -1335735, 1703491, -2964064, 1283122, -1652489, -1187559,
- -4427038, -393526, 2789581, -4546760, 8196945, 2132451, -1156420, -2640868, -2210835, 1242319,
- -1747515, 3082176, -767725, 3251290, 3040837, 1189169, -703301, 1072668, 558346, 802622,
- 37581, 2152852, 1552094, -2432025, -2771328, -1179505, -1395328, -2828236, -1150514, -1124208,
- 526134, 682900, 326418, -1495722, -1660542, -467615, -624381, 1824824, -293668, 1407676,
- -741956, -444529, 346282, 199716, -572841, 924492, -365609, -1817845, 1184337, -1331977,
- -42950, 690416, -93416, 1125818, -479963, -147640, -176631, -226023, 99858, 666257,
- -6442, 35433, 639413, 204011, -612033, 181462, 41339, 48318, 596464, -123480,
- 68183, -53687, 9664, -110059, -149250, 33823, -35970, 136902, -12885, 107374,
- 41339, 289373, -31139, -31139, 78920, 159451,
- },
- {
- -925565, 38784092, -1083942, 1078574, 305480, -45634, 1400159, -2044941, -261993, -185757,
- 1974074, 2687576, 5650567, -5155035, -19506668, 20885352, 3217468, 21991306, -938987, 7310571,
- 4761508, 2908230, 1481227, 5789079, -639413, 1674500, -1593970, -3034931, -858993, -6620155,
- 4555350, 1601486, 3932043, 16643, 1224066, -528818, -1911797, -2207613, 1310502, 491774,
- -326418, 602369, 974958, 592169, -1268089, -1064615, 1688996, 666257, -382789, 966905,
- -2200634, -492848, 897111, -479963, -799938, -444529, -1651952, -752156, 520765, -421981,
- -1915555, 391916, -1458678, -108448, 180389, -610959, -134218, 775242, -182536, -549219,
- -281320, -14496, 299574, 524523, -959925, -460635, 130460, 490700, -85899, -146029,
- -391916, 490163, -179852, -22549, -290447, 421444, -106300, 71404, 179852, 103079,
- 111132, -235686, 197569, -44023, 26307, 286152,
- },
- {
- 49469972, 27491548, -14863808, -10915659, 1762547, -92342, 2036351, -7274601, 1412507, -2312303,
- -4507568, -1108102, -1308354, -2004676, 3601330, -938987, -2513093, 6685117, 1151588, -638876,
- 3938485, -2166811, 861141, -2129230, 4141422, 1080721, 1851668, -1142998, -3655017, -3673808,
- -1560147, 1321239, 3138547, 969589, -67646, 1171989, 492848, -3787088, -2052994, 1281511,
- 1301912, -1520418, -1010391, 1250372, -2595234, 1398549, 3003256, 849867, -70867, 1971390,
- -1885491, -1293322, 723165, 745177, -1266479, 395674, -113817, 566399, 278099, 301721,
- -37044, -495532, -237297, -74625, -44560, 564251, -343597, -600222, 263604, -515396,
- -159451, -277025, 651224, -90731, 309775, -487479, 52613, 481573, 72478, -932545,
- 325344, -214748, 129923, 200253, 157303, 56908, -74625, 246961, -177704, -62814,
- 446140, -187905, -56371, 81068, 306553, -2684,
- },
- {
- -37044, -7300908, -583579, -813896, -854162, 56371, 80531, -1908576, -457414, 559956,
- -1781338, -3666828, -3459059, 6711960, -1334661, -151934, -834297, 3046206, -980863, 8741332,
- -636729, -1501091, -4069482, 18478560, -5972689, 2352032, 2881386, -6488622, 6305012, 1273995,
- 1525250, 665183, -6150393, 4597226, -2503966, -3168612, -1132798, 30065, 3510599, 494458,
- -939524, 1016297, -1630477, 182536, 69256, -710817, -1523103, 220117, 2147, 581431,
- -2013266, 750546, -281320, -303332, 94489, 501437, 731755, -1118302, 2348273, 516470,
- 1810329, 935229, 460098, 219043, 180389, 735513, 490163, -586263, -1034550, -260382,
- 809601, 187368, -11274, 831076, 726923, 227633, -129386, -31675, -387084, -18790,
- 375810, -22549, -106300, 234613, 53150, 138513, -289373, 159988, -130460, -190589,
- 35970, 90731, -264677, -191126, -91805, -27380,
- },
- {
- -40378600, -90514288, 20464982, 9139154, 642098, -331786, -4663798, 2465311, -2725157, 1118302,
- 3147674, -5601174, 4070019, 10812043, -22694608, -450972, -5120675, 2187212, 1391569, 3528316,
- 362925, -4928475, -2405719, 1662152, 1686312, -2125472, 577136, -984621, 4817880, -3157338,
- -90731, 4831302, 2695629, -2422362, -1942399, -808528, -1695438, 3198140, -5098663, -1272384,
- -1280974, 2630131, 64961, -566936, -955093, 1352378, -23085, -1153199, 4124242, 2384244,
- -1086090, -1057099, -1020592, 974958, -147640, 2479807, 388695, -394600, 170188, -144418,
- -794569, 81068, -87510, -315680, -147103, 524523, 377957, -232465, 475131, 49929,
- -136365, -217433, 454193, 197569, 187368, -390842, 199716, -81604, 183073, 535260,
- 264677, 205622, 202937, -193810, -149250, 49392, -206158, 192737, 27380, -10201,
- 70867, -355409, 39192, 205622, -78920, -265214,
- },
- {
- -288837, 2590402, -4934381, -1149441, -634045, -398895, 7516, -3046206, -942745, -254477,
- -2471754, -2385318, 2352032, 4191351, -17324824, 6519761, -11471858, 6225555, 4439386, -8470749,
- 2355790, -4530654, 5054103, 936840, -6328635, 6489159, 1493575, -35970, 983011, -3459059,
- 4915053, -8608188, 4758287, -138513, -2922188, -697932, 3117073, -61203, -102542, -28991,
- -2064269, -2373506, -6979, 991601, 82678, 1133335, -12348, -2253247, 1739999, 1192390,
- -506806, -419296, 1229434, -683974, -241055, -262530, 366146, 923955, 320512, -1496259,
- -1675037, 370441, 825171, -429497, -53687, 548682, 264141, 503585, 669478, 497679,
- 143881, -524523, 234613, 183610, 376883, -375810, 136365, -620623, 453656, 24159,
- 350040, -192200, 230318, 83752, 108448, -248571, -141197, -71941, -226560, 24696,
- -22012, 9127, 92879, 129923, 161061, 53150,
- },
- {
- -15652471, -33052458, 16859358, -918049, 7642358, 4522064, -7353521, 2106145, -1183264, -4274566,
- 112206, 154619, -1369558, -2267743, -2776160, -6001143, -154082, -5697274, 3783329, 2795487,
- -4713190, -3904662, 35433, 876710, 3066607, -1032403, 4752918, -2729989, 2467459, -5049271,
- 2921652, 1518808, -1301375, 2624762, -2810519, -3922379, -3478924, -1198833, 1837172, 5023501,
- -4021163, 3090229, 551903, -249108, -1316408, -2910377, -1559073, 2261300, -1952600, -987843,
- -1800128, -343597, -79994, 541166, 956167, -472983, 6442, 856309, 346282, -1051193,
- 1350767, -1480690, 1506997, -337692, -700080, -192200, 1257352, -280784, -19864, 27380,
- -243203, 937914, -91805, -376347, 30065, -7516, 548145, 51003, -188442, 27917,
- -386547, 248034, 231928, 222801, -142271, -54761, -207769, 265751, -147640, 621160,
- -133681, 202937, -153545, -124554, 205085, 227096,
- },
- {
- -869194, 10977936, 2646774, 79457, 3045669, -631360, 1405528, -1050120, 1630477, -1707786,
- 2296734, -2359548, 3651796, -2985539, -3723737, -687195, -4658966, 3257196, 3323768, 3383361,
- 2805688, 4104378, 8742943, 2738579, 2168422, 4823785, -5288716, 9553618, -1956358, 1750199,
- -1114544, 3427921, 1848447, -427886, 805306, 1008780, 1802813, 805843, 867047, 128849,
- 558346, -1328219, -23622, -884763, 181462, -725313, 1452236, -163209, 587874, 148713,
- -887985, 413927, -734976, 1068373, 333397, 1290638, -1327145, 523986, 931471, 137439,
- 1661079, -959925, 153545, 737661, -120259, -316754, -113817, 55835, -141197, -587874,
- 24159, -744640, -52076, -257161, -73551, -247497, 57982, -248034, 412317, -178778,
- 198642, -253940, -28454, 74088, 212064, 209917, 39192, -91268, 160524, -84289,
- 53150, -60666, -20401, 59593, 34360, -25770,
- },
- {
- -33187212, 85803248, -1764158, -4618701, 1343251, 4103305, -4148402, 4315906, 2531346, 3816079,
- -386547, 2513630, 6418292, 7199439, -537, 2667175, 4675072, 1170916, 3115462, -2221035,
- 5821828, 577673, -1850057, 7851200, -1742683, 850940, -2762738, -2486786, 5906, 1711545,
- 172872, -619549, -5369, 2241436, 751619, -2072322, 3014530, -919123, 1074, -2338073,
- 1606855, -1457605, 1108102, 4163971, -955630, 898722, -1126892, 103079, 1136019, 338229,
- -1126892, -1199907, 404264, -1075889, 193274, 750009, -145492, 401579, -755914, -1316408,
- -738734, 1041530, -884763, -72478, 236760, -293132, 228170, 198642, -89657, 92342,
- -718333, -211527, 487479, -450435, 129923, -345208, 367220, -621697, 145492, 436476,
- 120796, 112743, -266288, 72478, -47245, -112743, -358630, 287763, 91805, 52076,
- -136902, -115964, 86973, -100932, -38118, 55835,
- },
- {
- -125628, 18733036, -535260, 724776, -1314797, 2528662, -3256659, 405874, -785979, -1382443,
- 3365107, -1342714, 12600360, -33557116, 3435437, 3084324, 2615098, -353798, -3149285, -9936944,
- -3107409, 16138876, 679142, -4328254, -352724, 6805913, -4082903, 3321620, -1891396, 9436580,
- -994285, 2272575, 88047, 1059246, 2301566, -4195646, 1611150, -3062849, -1763084, -884763,
- -1094680, 923955, 1969779, -1747515, 172336, -546535, 1762010, 1212255, -2489471, -2303713,
- 1656784, -43487, -439160, -128849, 1208496, -284542, 857383, -65498, 350577, -387084,
- -375810, 936840, -492311, -1183800, 432181, -1126892, 490163, -880468, 1641214, 98784,
- -15569, -488553, -41876, 142808, -297427, 57445, -81604, 151934, 468688, -272194,
- 171262, -104153, -165893, 1074, -83215, -134755, -263067, -579284, -368293, -67109,
- -146566, 44560, 171262, -141197, -17180, 289910,
- },
- {
- -7602629, 69839928, 642635, -2857227, -864362, 10041634, -6270653, 5708549, 5075578, 412854,
- 1668595, 3631395, -1825898, 340376, 45916420, 47782, -9555765, -2456721, -3186866, 2698313,
- -2172717, 1181653, -1522566, 3026341, 824097, 2902861, -3760781, 4099546, -333397, 1609002,
- 907312, 1499481, 2860448, -553514, 860067, 703838, -1704565, -398895, 2605435, 136365,
- 1540283, -333397, -2396055, -1280974, 2231236, 459025, -249645, -865436, -51003, 2316598,
- -1473174, 1887101, 1646046, 3644817, 108985, -839129, 698469, 101469, 189515, 680752,
- -579284, 194884, -761820, -311922, 803159, 161598, -103079, 506269, 58519, -434329,
- 605590, -403190, -352187, -441845, -175557, 301185, 322123, 366146, 228707, -105764,
- -68719, -274341, -210990, 122407, 57445, -234076, 134755, -85899, -129923, -253403,
- -179315, -74625, -157840, -210990, -4832, 201863,
- },
- {
- -1702418, 7620883, -2809446, -2696166, -619012, 991064, 1111323, 293132, 2483028, -2131378,
- -738198, 1870995, 539018, 23002234, -15164993, -4782446, -6713571, 3544422, -258772, 5595806,
- -8212515, 362388, -5704791, 3219615, 4766877, -2265595, -3389803, -2990908, -324807, 3199751,
- 2580739, 1034013, -1001801, -708133, -2692945, 14496, -762894, -1935420, -1069984, 625455,
- -1074, 254477, 1498407, -2126546, 216359, 1337882, 303332, -92879, 257161, -234613,
- 38655, 936840, 400506, 915902, -1022202, -551903, -493921, -724239, 212064, 81068,
- -440771, 622770, 376883, -823560, -354335, -263067, 464393, 376883, 857383, -630823,
- 795106, 296890, -264677, 129386, 896038, -42950, -99858, -18254, -178241, -40802,
- 132607, -484794, -19864, 62814, 255014, -169114, -103079, -37581, -70867, -67646,
- 155693, -344134, 221728, -122407, -249645, -200790,
- },
- },
- {
- {
- -7170448, 169747312, 36805184, -10990284, -2754148, -300648, -2362769, -1342177, -2161442, 5435818,
- -671089, -770947, 2246268, 922881, -2027225, 12424804, -3206730, 4526896, 3492882, -7642895,
- 4697621, 1411971, 2678449, -7466264, 4023311, 1996086, 2547989, -1336809, -108985, 525597,
- 4196183, 10737, -3794067, -1664837, 2822331, 679142, 1952600, -377420, -1328219, -694711,
- 2007897, 1390496, -3707631, 1811939, -744640, 177704, 514322, 785442, -1698660, -845572,
- -814970, -874563, 422517, 826244, 1209570, -1003949, -111669, 1570347, 1850594, -489626,
- 565325, 874026, 17717, 148176, 595390, 261456, 227096, -49392, -128849, -317291,
- 466541, 51003, -165893, 84826, -358093, 863825, 776315, 645856, -214212, -128312,
- -114890, 62814, 695248, -12348, 32212, 101469, -7516, 249645, 259846, 281857,
- 22012, -356482, -6979, -195958, -63888, 14496,
- },
- {
- -479426, 26133802, -21820044, 1069984, -2525441, -1173063, -1103270, 2020782, -272730, 661962,
- 3648575, 2147, -2359548, 563178, -6131603, -5369, -404264, -6899328, 10180146, -1830730,
- 4326643, 10772315, 4228396, -1459752, 1553704, -1785096, -5107253, 1876901, -3604551, -3688840,
- 3097745, 6679211, -1335198, -1369021, -2222646, 422517, 841277, -681826, -2511482, -35433,
- -1761474, 3019899, 943282, 1302449, -1927367, -2877628, 146029, 510027, -741419, -1305133,
- -781684, -103079, -135828, -927713, -1365263, 500364, -863825, 862752, 711354, -690953,
- -1154273, 664646, 121333, 713501, -263604, 584116, 292058, 637803, -411780, -362925,
- -980326, -721555, -127775, -77846, -751619, -8053, 392990, -82141, 548145, 88584,
- -103079, -37581, 226560, -252866, 184147, -30065, -559956, 188442, 229781, 52076,
- 249645, -140660, -312459, 147103, -122407, 110595,
- },
- {
- 1555315, -145632672, 4447976, 9782325, 4372277, 2695629, -1096290, 376883, 388158, 391379,
- -4379256, -790274, 4575751, -2224793, 4992363, -5060009, -3026878, -81604, -4099546, 1797981,
- 7191386, -3513820, -2774012, -2258079, -1784022, 4697621, -5454609, -2872260, -370978, 3516505,
- 1487669, 6545530, -194347, -2652679, 5395553, 2317135, 902480, -106837, 375273, 3925600,
- 256624, -724776, 909459, 1308354, -1351304, -1457068, -319975, 221191, -676457, -556735,
- 617938, -598611, -595390, -732292, -629213, 21475, -1553168, -1040993, 828929, -104690,
- -544387, 418759, 253940, -998043, -452045, -740882, 306016, -1040993, 38655, -72478,
- -305480, -180389, 32749, 495532, 403190, -27380, -350577, 503048, -529892, -227633,
- 537408, 336081, -177167, -70867, 295816, -146566, -122407, 155156, 27917, 202400,
- 158377, 403727, 188979, -41876, -35433, -63888,
- },
- {
- -40146132, 27867358, 3850438, 18485540, 689342, -1865626, 631897, 2553358, -527207, -3870303,
- -3291556, -2800856, 2261300, -2763275, 8297877, 1622424, -568009, 205622, -2375117, -537945,
- -677531, -69256, 934692, 1292785, 3393561, 762357, -300648, -301721, 657130, -2233383,
- 2263448, 1449015, 1101122, -1229434, -2217277, -2882997, -1286343, -2306934, -1359894, -849330,
- 366683, 512712, 64961, -2181307, -1702955, -290984, 197569, 996432, 118648, 522912,
- 323196, 926102, -1159641, 128312, 187368, -444529, -20938, -753767, -797790, 806917,
- -1058710, -149250, 634045, 1130113, -491237, -276489, -149787, -271657, 561567, 270046,
- 63351, -2684, 436476, 258772, -557809, 73551, -259309, 346819, 41339, 199716,
- -223875, -240518, 38118, 135828, -237297, 77846, 102005, 44023, 62277, 46171,
- 118648, 97711, -46708, 88584, -60666, 214748,
- },
- {
- 432181, 37153076, 1115618, 958315, -1151588, 1379758, -80531, -684510, -919660, 1021129,
- -967441, 5508833, 1089848, 2939368, -11403675, 5345087, 894964, 8935143, 28469190, 5132486,
- 10732050, -3081639, -229781, 7269232, 3127810, -2415382, -922344, -6809671, -1596654, -2975339,
- 1402844, 1668058, -223875, 4855461, -461172, -2241436, 1010928, -3270618, 19864, -208843,
- 349503, -25770, 952946, -682900, 655519, -978179, 863825, 180926, 85899, -574989,
- -82678, 982474, -836445, -690416, -1031866, 723702, -2272038, -1280974, -321049, 333397,
- -1145146, -353798, -599685, -539018, -206158, -739271, -53687, 328565, 206158, -451508,
- -127775, 169651, 166967, 223875, -224412, -825707, 0, 416075, -300111, -401579,
- -32749, 19864, -32749, 28991, -46708, 154619, -57445, 49392, -20938, 236223,
- -78383, -204011, 214212, 148713, -68183, 56371,
- },
- {
- -49280456, 137562976, 2404108, -250719, -5317170, 1708323, -3187940, -1347546, 230854, -850404,
- -4097936, -3078418, -4588636, 987306, 1862405, -1489817, 1624035, 1864016, 1605244, -904091,
- -1006096, 2444910, 591632, 1299765, 1486596, 1665374, 615791, 1567126, -3951370, -4522064,
- -1883880, 4173098, 3606699, -1968706, 2049236, -797790, 1521492, -3615826, -1008244, 922344,
- -251792, 1756642, -237297, -1522029, 518617, 331249, 2005213, 20401, 545461, 739271,
- 477815, -1111323, -343597, 1091459, -762357, -569620, -605054, 372052, 725850, 788127,
- 75699, -682900, -519691, 172336, 17717, -299574, 115427, -285078, -90731, -267899,
- -582505, 371515, -135828, 174483, 236223, -503048, 135291, 274341, 329102, -310848,
- 51003, -252866, 150861, 104690, 228170, -54224, 197569, -263604, -38118, 202937,
- 236760, -11811, -1074, 184684, 117575, 92879,
- },
- {
- 453119, -9691057, -518080, -1011465, -90194, -24696, -220117, -1593970, -217433, -759672,
- -1090385, -3178813, -1770600, 10431939, -8229694, 3679713, 1640678, 3695283, 3635690, -5129802,
- 4093641, 1868311, -18790, 9695352, -4130148, 514859, -1061931, 2083596, 2545842, 3335042,
- -776852, 2428804, -1374390, -801011, -1311576, -2593087, 1360431, -852551, 3264712, 43487,
- 165893, -528281, -406411, 14496, 166967, 702227, -1658394, -467615, 627065, 48855,
- -1151051, -676994, -107374, 630286, -409633, 359704, -194884, -550830, 1401770, 873489,
- 1801739, 1065152, 941672, -214212, 558883, 443992, -67109, -509491, -784368, 172336,
- 434329, 169114, 158377, 420907, 824634, 272194, -82141, -384400, -411780, 289373,
- -11811, 296353, 69793, 205622, 3758, -91805, -336618, 191126, -39728, -75162,
- 229244, 49392, -176631, -196495, 30065, -117038,
- },
- {
- 37616936, -153301872, -13430363, 11347840, -1471563, -2718178, -573378, -931471, 348429, -2396055,
- -450972, 825707, 703838, -2882460, -9191767, 890132, -3258807, 1751273, 2735357, 354872,
- 3160559, -2416993, -4134980, 2486249, 2130304, -3866008, 717260, -1495186, 2878165, -1305670,
- 1876901, 2557653, 2855617, -2485712, -876173, 493384, -490163, -243739, -3938485, -2129230,
- 1888712, -1327145, -223875, -509491, 1694902, 1751273, -2215130, 954020, 2106682, 654983,
- 1228898, -1311576, -1005559, 410706, -115427, 2267743, -2147, 904091, 297963, -1008780,
- -282931, -353798, -71941, -2147, -621697, 801011, -89121, -134218, 287226, 315680,
- -195958, -201863, -5369, 143345, -129923, 158377, -147103, -150324, 398358, 51540,
- 343597, 672162, 32749, -190589, -267899, 152471, 537, -39192, 117575, 18790,
- 28991, -75162, 94489, -140660, 115427, -248034,
- },
- {
- 826781, -6180995, -1809792, 521302, -911070, -224949, 121870, -2433099, -3274376, -253403,
- -1461363, -1358820, 503048, 1930051, -15241228, 9824201, -4693326, -4495757, 4042638, -3446175,
- -6972880, -1886028, 5260798, -7204271, 3847217, 7235410, -5382131, -302795, 6099928, -5814849,
- -1002338, 1284732, -574989, -4162897, 587337, 255551, 1769527, -751082, 1177358, 330712,
- -1787780, 270046, -2112587, -693100, 1121523, -905164, 1253594, -272194, -804770, 1527398,
- -1431835, 1979443, -632971, -181462, -51003, 171262, 257161, 979253, 814970, -2211371,
- -1567663, 1046898, 132607, 290984, 201863, -114890, 717260, 478889, 988916, -294205,
- 433792, -187905, -326418, 290984, -99321, 178241, -408022, -323196, 235686, 118648,
- -44023, 328028, 164819, 340913, 38118, -629750, 14496, -100395, -166967, -67646,
- -49392, 10201, 32212, 154619, 204548, 103616,
- },
- {
- 15966541, -16408386, -12262132, -4128001, 754841, -5090610, 5727876, -362925, 547608, -4081293,
- -2748242, -774705, -2634426, 230318, -3114388, -3375844, 2534031, -7573101, 3279745, 214212,
- -3164854, -5560372, 3257733, -2752000, 2740726, 2107218, 2053531, -613107, -1232119, -2384244,
- -2959769, 2834679, 4415764, -3487514, 1038845, -4639102, -2592550, -3381213, 2227478, 2353642,
- 1118839, 226023, 1276142, -177704, -2267743, -1737851, -1296543, 1515050, -852551, -2542621,
- -556735, -1674500, -1021129, 211527, 2570001, -922344, -559956, 937914, 275415, -172872,
- 439697, -643171, -57445, 574452, -1392643, 605590, 700617, -341450, 367757, -116501,
- -497142, 623844, 73551, -104153, -403727, 179315, 580357, 30602, -170188, -208843,
- 2684, 26844, 500901, -172336, 160524, -584652, -154082, 105764, 178778, 165893,
- 251792, -97174, -195421, 100932, 213675, 37044,
- },
- {
- 694711, 25877178, -5408975, -203474, 974421, 1941862, -1801202, 1730872, 216896, 395137,
- -894964, -1569274, 1551557, -2639794, -3338800, 2088428, -3823595, 2639258, 492848, 6318971,
- 1612223, 8820789, 2267743, 3066070, 1397475, 716186, 2597382, 6882685, 1620276, 2888903,
- -821949, 294205, 2716567, 388158, 2757369, -1171989, 2024540, 434865, 1829119, 677531,
- 1267552, -2544768, -179315, -73551, 593242, -820339, 1578937, 100395, -61203, 303332,
- 252866, -1163936, -212064, 1358820, 610959, 738734, -70330, 79457, 1005559, 190052,
- 472446, 217970, 517544, 8053, 312459, -478889, -123480, 54224, 177167, -817654,
- -301721, -158377, -62277, -391379, -250719, -33286, -64425, 1611, 268435, 537,
- 82141, -366683, -192200, 312459, 264141, -33286, 237297, 13959, -34360, 235686,
- -165356, 34360, -70330, -87510, 127775, -30602,
- },
- {
- 29394756, -7802345, 7896834, -3459059, 427349, 2670933, 504122, 966905, 1229434, 5761699,
- 1975148, 1172526, -1730872, 9662603, 8519605, -53687, 1794760, 424128, 3714073, 20938,
- 5881958, -425202, 1188632, 3855270, 3641059, -4138738, -701690, -439160, -1679332, -1075352,
- 44023, 1073742, 2126546, -54761, 3887482, -1725503, 208306, 1835025, -3578245, 100932,
- -992674, 779537, 4917201, -579284, -322123, 870805, -75699, 245350, -71941, -6979,
- -1129040, -385473, -1355062, -128849, 957778, 439160, 146566, -586263, 277025, -847182,
- -766652, 323196, -507343, -223875, -68719, 180926, 373662, -381715, 673236, -491774,
- -359167, 237297, 110059, -234613, -88047, -620623, 217433, -122943, 48855, 49392,
- 174483, 48855, -132070, 229244, 37581, -288300, 5906, -170725, 118648, 97174,
- -77846, -157303, -142271, 127775, -83215, -28991,
- },
- {
- -424128, 8762807, 7817914, -209380, 3185792, -2102387, -4048007, 328565, -2298344, 1719061,
- 160524, 4522064, -15447387, -667867, 6255620, 4163434, -2178085, -2660195, 1278827, -9460202,
- -435939, -775778, -848256, 8059506, 3525631, -4926328, 1617055, 6444599, 2587718, -765578,
- -48855, 2964601, 3325379, -470836, 1714766, -1677185, -3056406, 1533840, -3607773, -1633698,
- -730144, -202400, 2399276, 833761, -372052, -374199, 1604707, 37044, -2412698, -2237141,
- -245887, -56371, 500364, 365072, 40265, 469762, 242666, 192200, 614180, 71941,
- -282394, 601832, -685047, -171799, -766652, -510027, -54761, 402116, 957778, 271120,
- -275952, -11274, -597537, 184147, 30602, -231391, 99858, 308701, 220654, -178778,
- 66035, -87510, 151934, -92342, 33286, -26307, -505732, -272194, -403727, 537,
- -338229, 162672, 27380, -206695, 70867, 171262,
- },
- {
- 17635136, 35580584, -206158, -2691871, 2146947, 1643362, 5252208, -2336999, 8151311, -1297080,
- 1249299, 2036351, 4843650, 11268920, 22454090, 2845416, -8453033, -568546, -4259534, -773094,
- 981400, -1451162, 49929, 4463008, -304406, -234613, -416075, 3601867, -3779571, 759672,
- 1611150, 1765232, 661962, 1234266, 3918084, -1151051, -2617246, 2285996, 3394098, -747861,
- 1118839, 799401, -2171643, -2114198, 1056562, 2474438, -1427540, 807454, -111132, 489626,
- -663572, 1959579, 1684164, 2367064, 967441, 379568, 127775, -337155, 999654, 261993,
- -397821, -718333, -30602, -119185, 607201, 73014, 299574, 53150, 468151, -217433,
- 233002, -4295, -886911, -27380, 149250, 368293, 348429, 223338, 15032, 139586,
- 57445, -242129, 186294, -253940, 151398, -250182, -27917, -260919, -97174, -231928,
- -300648, 34360, -94489, -161598, 35970, 253403,
- },
- {
- 898185, 470836, 2452426, -4296578, 578747, 1773822, -280784, -1170916, 3555159, -122407,
- 1885491, -4118337, 1698123, -22612466, 35378720, 540092, -3949223, 1314260, 3657165, 1234803,
- -1080184, -620086, -2087891, -1849520, 3555159, 531502, -4195110, -4226785, 890669, 4552666,
- 2292976, 31139, -5616207, 1431835, 1063541, -279710, -1952063, 1031329, -3655554, 839129,
- -773094, 108448, 969052, -800475, 1145146, 965831, 142271, -131533, -772020, 1028645,
- 1058173, 121333, -931471, 30602, -500364, -737124, 47782, -111132, -319975, -159988,
- -678605, 497679, 881542, -655519, -102005, 128849, -589484, 606127, 408559, -147640,
- 677531, 71941, 12348, -38655, 497142, 408022, -361314, 146029, -277025, -161061,
- 80531, -55835, -137976, 112206, -10201, 16643, -383863, 64425, -108448, 49392,
- -59056, 16643, 27917, -150324, -217433, -109522,
- },
- },
- {
- {
- 10453950, 129184024, 11629698, -7159174, -922344, 2124398, -1192927, 2363306, -77846, 1945620,
- -3332895, -4104378, 2002529, -368830, -2576981, 11570642, -8709657, 1404454, 9058623, -2619930,
- 747861, -3850438, 1581622, -6629282, 5324686, 1401770, -2648384, -4694400, -1018981, -1586454,
- -107911, 339839, -4036733, -1060857, 2071248, -3066070, 812823, -885837, -1295470, -1115081,
- 2653216, 2766496, -1304060, 4044249, -295279, -253403, -643171, -195958, -1902671, -683974,
- 1155346, 317828, -821949, -376883, 1758789, -321049, -877247, 475131, 758062, -1637993,
- 920197, 177704, -1161789, 9127, 97711, -341987, -251256, -289910, -26307, -600222,
- 479426, 224949, -318901, 771484, 212064, 504659, -162672, 165356, 1611, 235149,
- -220117, -270046, 486405, 74088, 19327, -263604, -147640, -124554, -275415, -39192,
- 125091, -131533, 107374, 7516, 38118, -64961,
- },
- {
- -552977, 69077568, 13482439, -390305, -3114388, 573378, -882079, 1204202, 3330210, 1475858,
- 1364726, -286689, -747324, 994822, -9814000, 3861713, 6224482, -4876936, 14177687, -1794760,
- -9553618, -1369021, 415001, -2696703, 807454, 547608, -3186866, 2426120, -1022202, -2202781,
- 1694365, 6742025, 969052, -1030255, -3576634, -1485522, -544924, 657130, -680215, 2048163,
- 1694365, 2524904, -1978906, -1036698, -1276679, -1483911, 114354, 1770600, 81068, 1158031,
- 1072668, 630823, 341987, -219580, -609885, -541703, -855235, 460098, 1075889, 383863,
- -498753, 737661, -215822, 467078, -9664, 165356, -541166, 671089, 208843, 15032,
- -272194, -148176, -199179, 265214, -290984, 126165, 175020, -289373, 373125, 9127,
- -157303, -187905, 85362, -607738, -249108, -95563, -213675, 208843, 49929, -67109,
- 67109, -73551, -154619, 258772, -102005, 158377,
- },
- {
- -1928977, -127387656, 22408454, 9104257, 5713917, 5805185, 60666, -842350, -1225139, 1040993,
- -32749, 1831804, 7007776, 739271, 5732171, -2706903, -6187438, -9320079, -494995, -2703145,
- -585189, -6571300, -4293894, -3739306, -5340255, 468151, -7103339, -4734665, 990527, 2987687,
- 1204738, 4721243, -686658, 442382, 4294431, 61740, 1131187, -1466731, -1065152, 2135673,
- -1612760, -3659849, 537408, 2490544, 828929, 9127, -2100239, 137439, 327491, 471910,
- 666257, -190052, 318364, -164283, -32212, 668404, -930934, -1299228, 59056, 79457,
- 119185, 668941, 408022, 37044, -18254, -497679, 547071, -217433, 612570, 540092,
- 295816, -236760, -474057, 319975, 348966, 537, -654983, 206695, -322659, -296890,
- -159451, -4832, 11274, -154619, 70867, -156766, -27917, 30602, -137976, -32212,
- -12348, 52076, -267362, -5369, 39728, -54224,
- },
- {
- 30507152, 110248056, -10401874, 17074642, 482110, -1075889, 2188286, 2380486, 989453, -87510,
- 960999, -590021, 1503775, -6440304, 3251290, 117575, -3761855, 4533875, 4622459, -419833,
- -399969, -4843650, -3689914, -446140, 745177, -2237141, -3100430, -202937, 778463, -836982,
- 4045859, -1043140, -702764, 493921, -192737, -287226, 850940, -777926, 73551, 524523,
- -763430, -1045825, 548145, -637266, -1364726, 420370, 484258, -1059783, -784368, -879931,
- 167504, 952946, -1400159, 871342, 121333, -612033, 482110, -123480, -432181, 1444183,
- -688269, -112743, 255551, 502511, -76236, -214212, -42413, 267362, 181462, -77846,
- -175557, -413927, -434329, 84826, 240518, 180389, -413927, 66572, -301185, 133144,
- -382789, -412854, 39192, 269509, 23622, -54761, -100932, -10737, -125091, 53150,
- 19327, -19864, -67109, 93416, -79457, 537,
- },
- {
- -63888, 24761024, -6790880, 652835, -1067836, 929324, -345745, 799938, 533650, 893890,
- -3680787, 1952600, 1854352, 6257231, -4220879, 1688459, -1979980, -50466, 14314052, 1293859,
- 3318399, -3771518, 2916820, 401579, -2279017, -3775813, 1205275, -3320547, -130460, -2684,
- 550830, -544924, -1402844, 7555921, -586800, -4854924, -1251983, -2531346, 1412507, -983011,
- -729071, 16106, 223338, 11811, 2279554, 225486, 243739, -1307818, 1313723, 59593,
- -621697, 1280437, -413927, -135291, -465467, 1469953, -730144, 455267, -82678, -507343,
- -966905, 382252, 49392, 434865, 1069984, -249108, -239981, 319975, 384400, 18790,
- 461172, 120796, -334471, 340913, 498753, -345745, -107374, 331249, -472983, -491237,
- 15569, 79457, 112206, -20401, -55835, -154082, -208843, -105764, -162672, 202937,
- -61740, 3758, 200790, -47782, -214212, -31139,
- },
- {
- 33130304, 246435024, -4412542, -229244, -5056787, 1677722, -610959, 4783520, 546535, 504122,
- 398358, -89657, -2048699, -1336809, -512712, -2632278, -2440078, -2372970, 1089848, -236760,
- -1578937, 656593, -814433, 750546, 939524, 2216203, 801548, 5026186, 693637, -1283658,
- -1846836, 2275259, 658204, -4684199, 2060511, -429497, 2480344, -842350, 1081795, 1020592,
- 721018, 4081830, 2027225, 1230508, 1153736, -395137, -858457, -1410897, 550830, -45097,
- 899796, -1095754, 67646, 900333, -810675, -634581, -1444720, -339302, 62277, 1611,
- 62277, -93416, -243203, 281320, 692027, -181462, 140660, -193810, -89121, 468151,
- -1611, 785979, -33286, -119722, 253403, -311922, 267362, 166430, 194347, -35433,
- 518080, 230854, 32212, -295816, -37044, -64425, 177704, -398895, 128849, 27917,
- -97174, -176094, 56908, 160524, -105227, -51003,
- },
- {
- 42413, -5131412, 5140002, -110059, 978716, -73014, 426812, -435939, 517544, 849330,
- 1368484, 2022930, -2234457, 6086506, -5915781, 2297271, 439697, 6157373, 1104344, -13728863,
- -913754, -5017059, 1242856, 11814381, -3425773, 674847, 2323041, 7864622, -752156, 886911,
- -448287, 1393180, -1498407, -609885, 292058, -2358474, 1267552, -1241782, 1562831, 220654,
- 159988, -1326071, 763967, 860604, 136902, 1457605, -846645, -462783, 802085, 433255,
- -879395, -481573, 402653, 1178969, -397284, -622233, -1267552, -174483, 45097, -1457068,
- 360777, -142271, -271120, -194347, 531502, -376883, -422517, -137976, -220117, 328565,
- -82678, -106300, 46708, -385473, 471910, 348966, -77309, -296890, -221728, 453119,
- -57982, 405874, 93416, 1611, -201327, 537, -253940, 5906, 125091, 212601,
- 343061, -1074, -134218, 26844, 88584, -115964,
- },
- {
- -26595512, -220707088, -3674882, 8376260, -1441498, -1916092, 3129958, -2116345, 1786170, -403727,
- -1262720, 4057134, 1349694, 1445793, 535260, 3276523, 2849711, 3348464, 2835215, -869194,
- 356482, -810675, 99321, 3572339, 565862, -3705483, 4018479, -522912, 1682017, -1015223,
- 1971927, -1714229, -251792, 579284, 687195, 6533182, 5625334, 243739, -320512, 333397,
- 831613, -2301566, -811212, -227096, 507343, 710280, -1451162, 243203, 99321, 257161,
- 1658394, -296890, -74088, 282931, -795106, 654983, -858993, 1085553, 38118, -1252520,
- -171262, -231391, -41876, -372052, -329102, 1170379, -535260, -632434, -390842, -233539,
- -492311, -543313, -380105, -90731, -276489, 126165, -268435, -188442, 112206, -521302,
- 85899, 449898, -265214, -368830, -12885, 114890, 60666, 291521, 109522, 66035,
- 230854, 26844, -35970, -89657, 171262, -155693,
- },
- {
- 306553, -4850092, 3462281, 1083942, 639413, 3758, 180926, -1076426, -1967095, 28991,
- -357556, -1935957, -3473555, -4489315, -15425375, 10901701, 1517197, -2374043, -1529545, -6235756,
- -9654013, -2618320, -4357245, -12225088, 8617852, 6633040, -2022930, 822486, 2841658, -1740536,
- 1608465, 1051730, -2044404, -6259915, 1870995, 1109175, -375810, -815507, 3798362, 1791001,
- -1898912, 1161252, -1425392, 305480, 785442, -1718524, 1476395, 229781, -1371168, -499290,
- -2120640, 2434173, -747324, -42413, 551903, 455267, 173409, 1070521, 1731946, -841814,
- -863825, 685047, -438087, -41339, -107374, -554588, 447750, 2147, -274341, -694174,
- 685584, -110059, -346819, -355409, -87510, 624918, -195958, -201863, 238371, 176094,
- -163746, 290447, -3221, 147640, 82141, -504122, 267362, 226560, 94489, 132070,
- -21475, -36507, -26307, 106300, 127238, 86436,
- },
- {
- -14836965, -8647380, 19660212, -7245073, -3524558, -8271570, 7370701, -1329829, 310311, -879395,
- -1498944, 1867237, 8590, 1322850, 3988951, 3539590, 7303592, 1552631, 30065, -4202626,
- 779537, -5251672, 3580392, -665720, 1403381, 226023, 1749662, -1355599, 310311, 488016,
- -5363878, -1372779, 2458869, -1852205, 3839164, -473520, 1817308, -3416647, 1591285, 181999,
- 1371705, 833224, 1940788, 804770, -437550, 1838246, 600222, 956704, 454730, -565325,
- -283468, -1611687, -1254131, -1255204, 1199907, -1083942, -569083, 675921, -163746, 212601,
- -131533, -1200443, -431644, 1049583, -841277, 52076, -231928, -458488, 250182, 45097,
- -176631, 174483, -619549, 115427, -85899, 65498, 166967, 284005, 33286, -209917,
- -203474, -355945, 279173, -252866, -179852, -476741, 30065, 12348, 136365, -124554,
- 59056, -6442, -69256, 22549, 68719, -104690,
- },
- {
- -644782, 30466888, 4340065, 1749125, -1847910, 1093606, -1292248, 3359738, 163746, -1211181,
- -1620813, -1386201, -1489280, -972810, -6087043, 1730335, 891743, 4555350, 1467805, 8156680,
- 215285, 6533719, -3944928, -6043556, -937914, 3205656, 4817343, 7318625, 2792803, 2596308,
- -1693291, -3061775, 2526515, -79457, 2865280, -1649804, -280784, -414464, 573378, -1927367,
- 798864, -728534, 709207, 1255204, 900869, -1757715, 584116, 212601, -48318, 11811,
- 884763, -409633, -504122, 221191, -154619, 586263, -118112, -307627, 433792, 537,
- 461172, 595927, 681289, 116501, 492311, 232465, 478889, 154082, 498753, -684510,
- -333397, 229244, 353798, 86436, -98247, 17180, -71941, -102542, -183610, -60130,
- 99858, -329102, -343597, 45634, 31139, -195421, 245350, 27917, -156766, 180389,
- -220117, -12885, -162672, -107911, 19864, -67646,
- },
- {
- -15113990, -66559644, 11098732, -5399848, -3524021, 515396, 1328756, 580357, -2193655, 523986,
- -1178432, 2388539, -7642895, 1075889, 10203232, -2870112, -3693672, -2117419, 747861, -2327872,
- 2835215, 528818, 1635846, 839129, 3692598, -880468, 2816425, 1996086, -2712809, -2684892,
- -233539, 991601, 1855426, -1158567, 154619, -3904125, -578747, 1199907, -3965866, 610959,
- -455803, 950262, 3422552, -2339684, -112206, 873489, 370978, 1180579, -114354, -1120987,
- -488553, 624918, -733903, 903017, 624381, 464930, 368293, 197569, 1389422, -302795,
- -1335198, 190052, 229244, -51003, 231928, 577136, 360777, -672162, 697395, -621160,
- -15569, 208843, -16106, -16643, 205622, -469762, -107911, 14496, -42950, -255014,
- -222265, -98247, 28454, 172336, 145492, 147103, 114354, -230854, 1074, 77309,
- 52076, -208306, -236760, -51540, -125628, 67109,
- },
- {
- 656593, 1295470, 616328, -1554241, 4344897, 271657, 190052, 2404645, -922881, 1427003,
- -588411, 8838506, 9496710, 29605210, 7906498, 10219338, 173409, 591095, 3201361, -2254858,
- -3789772, -16323023, -9018358, 7908646, 9110163, -2225330, 4196183, 1814087, 2216203, -2973728,
- -3054796, 188442, 1045288, -1554241, -1438277, -3304441, -2585034, 1400159, -1826972, 1191853,
- 690953, 1358820, 1991254, 445066, -1018444, -271120, 2301566, 288837, -2001455, -1455457,
- -1864553, -657667, 355409, -140123, 443455, 1112397, 399969, 294742, 553514, -91268,
- -167504, 45097, -492311, 580894, 10201, 82678, 198642, 261993, -357019, -69793,
- -117038, 475131, -148713, 201863, -107911, 25770, 267899, 28454, -25770, -349503,
- -143345, -231928, -12885, -81068, 178778, 266825, -134218, 383326, -117575, 118648,
- -61203, 226560, 37044, -131533, -2684, 60130,
- },
- {
- -18957986, -11485816, 1751273, -3890167, 775778, -3985193, 1141388, -3676492, 4116189, -3052648,
- -1547799, -1618666, 7853348, -8453033, -11828877, 4959077, -1327682, -1452773, -5138392, -346282,
- -983548, -1698123, 173946, 4001836, 1228898, -301721, 271120, 1480690, -2971044, 2923262,
- 1750736, 1188095, -665720, -1128503, 2809446, -775242, -2731062, 1531156, 311385, -2419140,
- 1453846, -450435, -1464047, 88047, 505196, 2290828, -1802813, 887985, 905164, -359167,
- -1285269, 702764, 688805, -12348, -554051, 260382, -693637, -875100, 1042603, 517544,
- 104153, -744640, -151934, -265751, -68183, -481573, -163209, -63351, 682900, -62277,
- -349503, -116501, -914291, 108985, 412317, 197569, -264677, 118112, 55298, 115964,
- -52613, -308701, 122943, -488553, -23622, 10737, -35433, -285078, 53687, -170188,
- -186831, 300648, 162135, 35970, -16643, 85899,
- },
- {
- -652835, -2180233, 2952253, -1891396, 2175401, 60666, -2387465, -3970697, 1936493, 3115999,
- 2360085, -6061810, -879931, -12576738, 50838992, 934155, -3095061, 4658966, 9188546, -3417183,
- -5496485, 2871186, 1712081, -7969312, 1219234, 4101694, -3427921, -3473018, -445603, 1653026,
- 1495722, -344671, -5219459, 5248450, 4395899, 1565516, -431644, 3256122, -2698313, -317291,
- 170188, 1450625, 1329829, 976031, 132070, -638340, -1154809, -1200443, 258772, 2840584,
- 915365, -312996, -810675, -479963, -159988, 310311, 587337, 105227, 184684, 336081,
- -680752, -292058, 1000191, -53150, 447213, 602369, -1016297, -398358, 22012, -324270,
- 91268, -330712, -105764, -348966, 88047, 485868, -406411, 294205, -220117, -116501,
- 106837, 62814, -49929, -104690, -185220, 178241, -222265, 98784, 70867, 137439,
- -70867, 72478, 14496, 66035, 10201, -4295,
- },
- },
- {
- {
- -11696270, 94897840, 47954920, -14658723, 1869385, 2012192, 57445, 3111704, 439697, -741419,
- -5320391, -3820910, 2544768, -1991791, 4614406, 869731, -75699, 1719598, -290447, 4167729,
- -1083406, -3488050, -2918430, 708670, 1648194, 1392106, -3453154, -4146254, -3481608, 1706176,
- -3517578, 792421, -1585917, -1074816, 609885, -2480344, -625455, -649614, 830002, -1148904,
- 2246805, 1410897, 1155883, 589484, 319438, 253403, 428423, -1306744, -1770600, -709207,
- 2282775, 539555, -1932735, 127238, 681289, 904091, -867583, -114354, -559420, -389231,
- 737661, -261993, -587874, 255551, -607738, -293132, -421444, 48318, -352724, -106837,
- 12348, 432181, -347892, 423591, 421981, 23085, 60130, 84826, 301185, 279710,
- -97711, -222801, 271657, -63888, 52613, -102005, -212601, -79457, -322123, 34360,
- 48318, 10737, -80531, 100395, 31139, 22549,
- },
- {
- 1375463, 56866976, 19222664, -2750927, 1486596, -548682, -133681, 899796, 4307316, 2264522,
- -2012729, 586800, -150324, -3547106, -8982387, 12090333, 439160, 5176510, 1646583, -2851322,
- -7466801, -3776350, 580357, -2365453, 1731409, -2122251, -1316408, 3180423, -3163780, 1446867,
- -2436320, 7192997, 1498407, -1711545, -313533, -4032438, 745714, 1165010, 981400, 1165547,
- 1127966, 1995012, -1635846, -1455457, -593242, -266825, 382789, 1027034, 289910, 622770,
- 1762010, 879395, 493384, -416612, -280784, -1554778, -264141, 277025, 532576, 845572,
- 810138, -399432, 184147, -311922, 589484, -140123, -213138, 516470, 89121, -130460,
- 492848, -291521, -297963, -3221, 114354, -13959, 26844, -45634, 5906, 68719,
- -197569, -44023, -198105, -265751, -199179, 77309, 102542, -144955, 19327, -91268,
- -182536, -73014, 129386, 223875, 73014, -44023,
- },
- {
- 3019899, -51266876, -40070436, 7767985, 7471096, 6862284, -783832, -1577327, 427886, -1656784,
- 5637682, 1052267, 911607, 4665408, 4286378, -380641, -2812130, -12514998, -4307316, -389768,
- -6726993, -4426501, -6502044, 1977296, -2841658, -4393215, -4276714, -3845070, -933619, 2313377,
- 3383361, 1927367, 354872, 1653562, -1101122, 790274, 2591476, -2836826, 535797, -619012,
- -2085207, -1209033, -857920, 951872, 1000191, 1349157, -2065879, -419296, 965831, -141734,
- 584116, 348966, 309238, -41876, -45097, 693637, -572841, -871878, 26844, -66572,
- -403190, 1372242, 512712, 74088, -534187, 567473, -798327, 547071, 309238, 791348,
- -3758, 17180, -179315, 51003, 100395, -16106, -321049, -97174, -246961, -111132,
- -456340, 122943, 2147, -256624, 161598, -63351, 216896, -244813, -8590, -158377,
- -537, -21475, -291521, -140660, 26844, 53150,
- },
- {
- -14014478, 153095184, 3491272, 15102179, 2624762, -421444, 2079301, -151398, 1714229, 1343788,
- -943282, 2042794, -936303, -608812, -3251827, -2928631, 3547643, 5186173, 1774358, -1088237,
- -909996, -3713536, -2594697, -852551, -688269, -1032403, -2732673, 721018, -744103, 2397666,
- 667331, -2126546, 225486, 1243393, 1379221, -1054415, 559956, -309775, 126702, 2182380,
- -2123325, -125628, -1252520, 796180, 357556, -558346, -739271, -923418, -40802, -1451699,
- 895501, -293668, -1069984, 356482, 859530, 274878, 164819, -7516, -603980, 933082,
- 403190, -218506, 16643, 158377, 199179, 19864, -180926, 515396, -1611, 26307,
- -181999, -415538, -661962, -118648, 649614, 30065, -55835, -87510, -322123, 51540,
- -204548, -139586, -118648, 192737, 103079, -201863, -77309, -1074, -283468, 91268,
- 100932, 57445, -22549, -90731, 108448, -140660,
- },
- {
- -507880, 8832600, 4540318, -290984, 566399, -277562, 558883, 550293, 1224066, -44023,
- -1928977, 1443109, 3699041, 671626, 6542309, -7528004, -842887, 22357990, -22587234, 7638063,
- 5349382, -1156957, 191126, -4038880, -4996658, -792421, -850940, 1203128, -421444, 3614752,
- -2398202, -62277, -1214939, 4722317, 1231582, -2975339, -1741609, 80531, 1163399, -106837,
- -2000381, 200253, -1370095, -210453, 2238752, 1545115, -753230, 765578, -82141, 1129040,
- -1096827, 252329, 958315, -1518271, 386010, 688269, 1094680, 267362, -773094, -297427,
- -151934, -189515, -120259, 1057636, 828929, 536871, -83752, 213675, 322659, 47782,
- -24696, 287763, -238908, 351650, 304406, 210990, -417686, 223338, -33823, -363462,
- 52076, -45097, -40802, 51003, -71941, -376883, 118112, -185757, -76773, 179852,
- -83215, 245350, 28991, -59593, -173409, 2147,
- },
- {
- -7902740, 302563264, -6205154, -6868190, 3997004, -952409, 497142, 3797288, 539018, 475668,
- 4170413, -2770254, 270583, -1871532, 740882, 367757, -7047505, -1320703, 1396938, -1330903,
- 10201, -697932, 1731409, -1079111, 1016297, 1134945, 2130304, 3430605, 791348, -1959042,
- 331786, 1602560, -1975148, -1911261, -387621, 1147830, 1629403, 889058, 1254131, 1324461,
- 3124589, 1302449, 3539053, 1684701, -2391223, 801548, -2851858, 1265405, -232465, -703838,
- 617938, -875100, 1105417, -411780, -358630, -979789, -752693, -540092, 512175, -39728,
- -626528, 334471, 218506, 301721, 161061, 322659, 11811, 17180, 70867, 148713,
- 574989, 219043, 493384, 22012, -256624, -13422, 215822, -111132, 11274, 472983,
- 284005, 257698, -318364, -164283, -102005, 259309, -161061, -253403, 175020, -87510,
- -64425, -239444, 212601, -138513, 32749, -90194,
- },
- {
- -290984, 4507568, -318901, 273267, 883153, -5906, 89121, -110059, 472983, 878858,
- 948651, 375273, 2873333, -2754685, 168041, 4456029, 2311229, -2208687, -2442226, -7058242,
- 823023, -525060, 6786049, 895501, -2615635, 163746, 3720516, 5069135, -805843, 316754,
- -1467805, 1735704, 583042, -1280974, -1465658, -1455457, 1418950, -715649, -164283, 2004676,
- -503585, -1926293, 2223719, 1378148, -1400696, 789200, 463856, -367757, 426276, -844498,
- 159988, -794569, 288300, 1051193, -486942, 333934, -1596117, 312459, 83215, -1452236,
- -135291, -335007, -715112, 150324, 792421, -1051730, -590558, 120259, 93416, 315680,
- -227096, -263604, -13959, -15032, 351114, 157303, 116501, -189515, -10201, 333934,
- -6979, 110059, 234613, -134218, -91268, -59056, 18790, -169114, 64425, 206158,
- 112743, 2684, -50466, -3758, 32212, -63888,
- },
- {
- 10323491, -241567216, -21978958, 1082332, 2101313, 172336, 1523640, 1598802, -113817, -1326608,
- 1037235, 1723356, 1498407, -3561602, 6395743, 4374961, 2058900, 2606508, 2255932, -120259,
- -1455994, 1268626, 1723356, 3046206, 103079, -2587718, 1607392, 910533, 1465121, 1478543,
- -191126, -2318746, 2012729, -2270964, 3637837, 8071318, 2518462, 1697049, -1198296, 3176665,
- -1220845, -1418950, -2199023, 129386, 814433, 550293, -146029, -1989644, 813359, 1579474,
- 1159104, 213675, 451508, -1931662, 702227, 184147, -310848, 449361, -611496, 146566,
- -759136, -44023, -279710, -824634, 428423, 710817, -680215, -204548, -231391, -547608,
- -491774, -646929, 230854, -180389, -196495, -154619, 81068, -12885, -132070, -457951,
- 339839, -53687, -134218, -377957, 11274, 92342, 79457, 388158, -70867, 236760,
- 114890, 15032, -150861, 190052, -152471, 46708,
- },
- {
- -939524, 7732552, -2573222, -1304060, 1413581, -164819, -462246, -609885, -508954, -644245,
- -622770, -1354525, -782758, -5679021, -12520903, 1089848, -1003949, 10793790, -8775155, -6693170,
- -9312563, 62814, -6180995, -4025995, 3554622, 3399467, 3324305, -1004486, -1729261, 2126546,
- 1324997, -548682, -1100049, -3899294, -20938, 2614561, -2171643, -390842, 2659659, 2338073,
- -476205, -592706, -842350, 2026151, -153008, -928250, 384400, -660888, 450435, -1927367,
- -578747, 850940, -368293, -306016, 819265, 454193, 112743, 1698123, 904628, -453656,
- -160524, -627602, -201863, -55298, 66572, -931471, 93952, -450972, -242129, 273267,
- 239444, 53150, -334471, -514859, 359167, 171799, 19327, 55298, 101469, 163746,
- 41876, -271120, 181999, -140123, 122943, -161061, 267899, 181462, 131533, 242666,
- -8053, -182536, 37581, -537, 279173, -4295,
- },
- {
- 12544526, 15264314, -35879620, -5926518, -487479, -1441498, 1064615, -1035624, -1138166, 1810866,
- 767189, -184147, -148713, 1188632, 6693707, 1509681, 9255118, 5099200, -3384971, -2901787,
- -348966, -2762738, 773094, 1813013, 1683627, 1525787, -482110, -1522029, 1170916, -115964,
- -2383170, -1802276, 547071, -1686848, 2415919, 2713883, 212601, -751082, -203474, -549756,
- 2877091, 47782, 1483911, 788663, 288300, 2450816, 1917703, -126165, -809601, 1843615,
- -1006633, -1011465, -759672, -959388, -408022, 126702, -569083, -154619, -129386, 492848,
- -124554, -858993, -429497, 482647, -383863, 4295, -800475, 61740, -15569, 135828,
- 348429, -142808, -502511, 49392, 89657, -41339, 157840, 69793, 229781, -227096,
- -423591, -205622, 6979, -34897, -295816, -45097, 64425, -16643, 132070, 76773,
- -118112, 10201, -15569, -73014, 29528, -36507,
- },
- {
- 381715, 18848464, 12095702, 860604, -74088, -876710, -625992, 2080912, 1833951, -2920041,
- 1153199, -2500208, -4674535, 5275831, -8279623, 3463891, 16106, 874026, 8337069, -3030100,
- 4682051, 5085242, -3001109, -3692061, -2459943, 4721243, 3716221, 6715718, 4283156, 1234266,
- -2116345, -6796249, 5346698, 1260573, -77309, -762357, -1996623, 1740536, -1222455, -1921461,
- -916976, -288837, 2515777, 184684, 277025, -5369, -1200443, 1504849, -127775, -427349,
- -60130, 350040, -150324, -513785, 621697, 223875, -672699, -230854, 56371, 521302,
- 937377, 2684, 113280, 411243, 231391, 622233, 781684, 271120, 14496, 169114,
- -388695, 165356, 6979, 210453, 30602, -115427, -161598, -270046, -155693, 62814,
- -76773, -191663, 6442, -338229, -155156, 0, -11811, 157303, -69793, -133144,
- -69256, -49392, -150324, 23085, -2684, -58519,
- },
- {
- -149787, -81451368, 1145146, -377957, -5628018, -4092567, 5211943, 906238, -2178085, -427886,
- -2822331, 3039763, -4142496, -1203665, 3542811, -1874216, -2088965, -1290638, -1373853, -248034,
- 1531693, 63351, 2486786, 446677, 819265, 2989297, 2382096, 971200, -2507187, -1276679,
- -1432909, 566399, 1583769, 96637, -1685775, -4556961, -540629, -1088774, -325344, -1452236,
- -168577, 2588255, 2476586, -3030100, 789737, -249108, 102542, 1084479, 1464047, -1489817,
- -826244, -85362, 81068, 1067299, 141734, 1114544, 131533, 989990, 240518, -73551,
- -806917, 60130, 101469, 234076, 346819, 144955, 146566, -500901, 210990, -43487,
- 1611, 97711, 201327, -31139, -57982, -185220, -132607, 100395, -254477, -64961,
- -213138, -133144, 45634, 310311, 78383, 236223, -172872, -179315, 172872, -19864,
- 31139, -116501, -83215, -139586, -57445, 162672,
- },
- {
- -617938, -2754685, 716186, 1107565, 2200097, 2640868, 2013266, -654983, 2717104, 530428,
- 1975685, 5144834, -1664300, 46750720, 4938139, 8269960, 3968013, 1472100, -316754, 1731946,
- -4234301, -16121160, 1215476, -579284, 2126546, 4461934, 6283537, -714575, 871342, -2937221,
- -5317707, 1591285, -111669, -1483374, -2990908, -1266479, -2410551, 104690, 622770, 226560,
- 2484102, 1465658, -172336, 457414, -2267743, 1491964, 2053531, 365609, -1043677, -1997697,
- -1334661, -951335, 964757, 311922, 657667, -19864, 637803, 75162, 346282, -402116,
- 40802, -542240, 403190, 570157, -295816, 73551, 628676, 33823, -942745, -98784,
- -114890, 341450, 681826, 64961, -406948, 14496, 482110, 92879, -355945, -108448,
- -89121, -194347, -315143, -54224, -49392, 150324, 320512, 214212, 209380, -208306,
- 176631, 267899, -109522, -15032, 3221, -17180,
- },
- {
- 12499429, -47209744, -9903121, -136365, -1274532, 2767570, -5485747, -364535, 119722, -965294,
- 1204202, -53687, 3371013, 1370632, -25301116, -3587908, 4828080, -704912, -5564667, 1256278,
- -2732136, 317828, 239981, 2544231, 1947768, 579821, 563178, 1127966, 1237488, -492848,
- 2805688, -293668, -285615, -749472, 512712, 505196, -1386201, -5906, -1452236, -2249489,
- 872952, 1768453, -1100049, 173409, -645319, 1194001, -670015, -659814, 783832, -195421,
- 80531, -312459, 596464, -680752, -492311, 93416, -1039919, 448287, -18254, 1020055,
- -636729, 73551, -421444, -442919, -382252, -618475, -675921, 151398, 667331, 310311,
- -841277, -28991, -747324, -170725, 435939, 88584, -52613, -16106, 169114, -170188,
- -307090, 63351, -292595, -314069, -261456, 379031, -7516, -128849, -71404, -67109,
- -130460, 249645, 106837, 16643, 166430, -39728,
- },
- {
- 682900, -4238059, 2612951, -747324, 761283, -694174, -1689533, -2666101, -434865, 2372970,
- 1481227, -1460289, -1780801, 29315836, -3700651, -3135863, 6933151, -2009508, 7709467, -5711770,
- -2899640, 6596533, 3107946, -11116986, -2721399, 5483063, -3306051, -1007707, 242129, 1391033,
- -508417, -405338, -2782602, 4728759, 3365644, 2114198, -1522566, 1532767, 403190, -634045,
- 1866700, 171262, 1905355, 814433, -267899, -699543, -744640, -1206886, 505732, 2236067,
- -88047, 859530, -128849, -1695975, 675921, -422517, 1308354, 528818, -74625, 410706,
- 442919, -455267, -14496, 506806, 142271, 147103, -166967, -725313, -72478, -326418,
- -166430, -267362, -97174, 64425, -47782, 307090, -192200, -33823, -121333, 258772,
- -264141, 69793, 165356, -255551, -172336, 138513, -167504, 48318, 172872, -44560,
- -10201, 111132, -24159, 128312, -3758, 3758,
- },
- },
- {
- {
- 10436771, 1122597, -54734528, -8111046, -1735167, -984084, -2094870, 36507, 850940, 1204202,
- -3856881, -4147865, 177167, -3046206, 5106716, -675921, 983548, 2410551, -4013110, -739271,
- -2250563, -318901, 84826, 2274722, -1115618, 1256815, -49392, 1627256, 231391, 1612760,
- -2804614, 55835, -1385127, -66035, 232465, -946503, 60666, -809064, -534723, -1986422,
- 1643899, -414464, 579821, 514859, 663572, 1057099, 1939178, 133681, -55298, -432181,
- 251256, -171799, -856846, 721018, 53687, 736050, -213138, 293132, -40802, 345745,
- 92879, -209917, 79994, 452045, -233002, 63351, -214212, 250182, -62277, 200790,
- -93416, 267362, -307090, 296353, 100395, -177704, 88584, 24696, 291521, -88047,
- -203474, -45634, 201327, -180389, -96637, 64961, -76773, 52613, -117575, 81068,
- -22012, 144418, -114890, 68183, 60666, 40265,
- },
- {
- -278099, 6653441, -21526912, -4282620, 1410897, -691490, -457951, -737661, 135291, 1104344,
- -1689533, -578747, -2051921, 3274376, -1498407, 6219113, -3775813, 645319, -3819300, 811212,
- -448824, -1422708, -454730, -75162, 3399467, -2959769, -1897839, 1641214, -3216394, 1272921,
- -3121904, 5115843, -1308354, -1807108, 1576253, -2043331, 3849365, 1979443, 272194, 809601,
- 51003, 244276, -919660, 639950, 129386, -120259, -13422, -673773, -188442, -287763,
- 371515, 452045, 751619, -418759, -190052, -522375, 103079, 167504, -92342, 430034,
- 585726, -686121, 64961, -553514, 541166, -115964, -27917, 169651, 110595, -60130,
- 565325, -237834, -191663, 32749, 12885, -336081, -13959, 110059, -197569, 0,
- -8053, 136365, 100932, 62277, -25233, 52613, 28991, -130997, -11274, 19327,
- -39728, -33286, 114890, -13422, 49929, -55298,
- },
- {
- -5155572, 27065274, 23555748, -7904351, -8467528, 2016487, -1695975, -869194, 1475321, -407485,
- 4059818, -4646081, -1914482, 2301029, -440234, 9664, 267899, -9204115, -5073430, 349503,
- -7516730, 1118839, -2068564, 2799782, -665183, -733366, -69793, -1035087, -3380676, -2044941,
- 2063195, 505732, -790811, -1200443, -2025614, 2227478, 270583, -3451543, -295279, -1709397,
- -740882, 554051, -1311576, 520765, 222801, 488553, -1419487, -861678, 439697, 177704,
- 287226, -660351, -210453, 270046, -122943, 490163, 537, -291521, -95026, -74088,
- -169114, 970663, -331249, -152471, -456877, 308701, -899259, 254477, -246424, 121333,
- -484794, 29528, -34360, -223338, -281857, 184147, 236760, 223338, -276489, 92342,
- -56908, 141197, -64961, -153008, 59056, -177704, 238908, -276489, 173946, -9664,
- -18790, 113280, -16643, -80531, 122943, 77846,
- },
- {
- -2134599, 142359376, -11998528, 12627204, -124017, -300111, 638340, -1012539, 832687, 915365,
- -155693, 3389803, -1909113, -4025995, -3284039, 2389613, 1648194, 5205501, 3885872, -900869,
- 1138703, 1627793, 1094680, -436476, 1374390, 1441498, -504122, 679142, -1237488, 1127429,
- 104690, -556735, 475668, 113280, 492848, -857383, 1840930, -289910, -617402, 3110093,
- -1213865, 171799, -1926830, 481573, 800475, -457414, -360240, -245350, 919660, -140660,
- 579284, -946503, -329639, 151398, 410169, -199179, -111669, 513785, -378494, 433255,
- 397284, -135291, -178778, 149787, 45097, 90731, -59593, 275952, 6979, 366683,
- -90194, -412317, -168577, 18254, 254477, -140660, 56371, 226560, -1074, 114890,
- 49929, 280784, 3221, -26307, -51003, -67109, 66572, -73014, -128312, 160524,
- 10737, -8590, 36507, -80531, 168577, -81068,
- },
- {
- 1142998, -559420, -2865817, -198105, -146029, 117575, 1078037, 328028, 862752, 544387,
- -637803, -593242, 1715303, 768262, 6021544, -7410429, -4909148, 23011898, -22001506, 1149441,
- 1023813, -2033130, -3054796, -1765768, -1137630, 919660, 1407676, 3518652, 438087, 2113661,
- -1517197, 1291175, -730144, 2805688, 1043140, -1223529, -143345, 1328219, 3008625, 1806034,
- -1224066, -133681, -1226213, -472446, 732292, 293132, -1589138, 645319, -628676, 1092532,
- -1020055, -501437, 930397, -650151, 416612, -213675, 822486, 238371, -167504, 461172,
- 361851, -421981, -269509, 808528, 136365, -120796, -106300, 329102, 35970, -69256,
- -73551, 246424, -178778, 452045, 93952, 290984, -88047, 402116, 228707, -173409,
- 97711, 3758, -44560, -31139, -41876, -191126, 162672, -129386, 67646, 209917,
- -102542, 126702, 4295, 537, -103616, 26307,
- },
- {
- -15321759, 269466784, -16434692, -4959614, 4298726, -399969, -259846, 1568737, 1854889, -344134,
- 1586990, -604517, 440234, -761820, 3055869, -610422, -5362267, 911070, 1584843, -479963,
- 1668058, -545461, 901406, -1024350, 976031, -889058, 90194, 2684, -570157, 669478,
- 1205275, -1638530, -1473711, 910533, 475131, 1344325, 263604, -23085, 1459215, 482110,
- 2836826, -461172, 492848, -861678, -3619047, 608275, -1926830, 2059974, -685047, -25233,
- 956704, -663572, 1276679, -51003, 450435, -333397, -78920, -541166, 389768, -127775,
- -666257, 921271, 281320, 13959, -294205, 199716, 92879, -83215, 27380, -322123,
- 244276, -175557, 354872, 35970, -217433, -53150, -15569, -105764, 35433, 325881,
- -88047, 114890, -55298, 164819, -111669, 247497, -120796, -95026, 76773, -58519,
- -59056, -217433, 105227, -174483, 127775, -25770,
- },
- {
- -293132, 8510478, 2100239, 1056025, 206158, 67646, 763967, 246424, -459025, 45097,
- -6979, 318364, 1176821, 3953518, 11051488, 2803003, 822486, -3366718, 4357245, 3786014,
- 2375117, -3952981, 5333813, 4446365, -432718, -109522, 2332704, -615254, -3335579, 287226,
- -387084, 2996814, 859530, 2147, -596464, -784368, 1003949, 303869, 81604, 705985,
- -1102196, -1081795, 1366337, 212601, -1552094, -207769, 72478, -81068, 338229, -1291711,
- 499827, 37044, 213138, 389231, -108448, 1103270, -698469, 120796, 499290, -288300,
- 155693, -333397, -250719, 355945, 324807, -733903, 166430, 139586, -101469, 321049,
- 31139, -46171, 164283, 185757, 99321, -199179, 90194, -87510, 62277, 121870,
- -300648, -98784, 212601, -147640, 35970, 30602, 95563, -71404, 15032, -107374,
- -183073, -20401, -33286, -49392, 38118, 33823,
- },
- {
- 4777078, -186416608, 31012886, 3188476, 3581466, 620623, -988916, 1124208, 240518, -31675,
- 2352032, -1982664, -300111, -3304977, 2558190, 818728, -815507, -5369, 1386738, 591095,
- -3133179, 1044751, 1654636, 2392834, 696322, -988916, 1414655, -313533, -321586, 876173,
- -452045, -1533840, 1913408, -2842732, 1160178, 3336653, -670552, 1733556, -125091, 2970507,
- -1692754, -449361, -1384053, 213675, 1528472, -146029, 455803, -1090922, 617402, 638876,
- 113280, -35433, 1229971, -957778, 807454, 536334, -586800, -253940, -266288, 452045,
- -712428, 40802, -21475, -175557, 613643, 207769, -320512, 279710, 63888, -243739,
- -160524, 118648, 903017, 216359, -70867, -242666, 256624, 184684, 69256, -174483,
- 333397, -101469, 155693, -98247, -26844, 28991, -23085, 90194, -177704, 141197,
- 48855, 22549, -163746, 185757, -181999, -51003,
- },
- {
- -207232, 8127152, -7565048, -2545842, -81068, -61203, 619012, 784905, -70330, -78383,
- -486942, 122407, 1910187, -3208878, -9310952, 25233, -5782100, 9809705, -5870147, -215822,
- -2207076, 2646237, -487479, -137439, -1124208, 2422899, 1557999, -690416, -668404, 1047435,
- -1030255, -1591285, 818191, -1428077, -984084, 153545, -2045478, -847719, -231391, 1264331,
- -1042066, -775242, -124017, 552977, -1498407, -577136, -681289, -652298, 1219234, -1065689,
- 317291, -83215, 125091, -205085, -359167, -206158, -301185, 1081258, 380641, -358093,
- 419833, -758062, -186831, 82141, 460098, -224412, 81604, -363998, 179315, 657667,
- 165356, 186831, 59593, -145492, 226560, -195958, 144418, 176631, 41339, 77309,
- -6979, -422517, 172872, -93952, 118112, -55298, 187368, -72478, -68183, 24159,
- 4295, -182536, 93952, -62277, 180389, -8053,
- },
- {
- -10336376, 26012470, -6486475, -3463891, 2806224, 2924873, 4871030, 1088774, -491237, 2950106,
- 214212, -2973191, -892816, -218506, 1375463, -1043140, 8009577, 2654827, -914828, 90194,
- -1709397, -906775, 3083787, 1442035, 1066763, 2152316, -188442, -1797981, 1577327, 1056562,
- 1029718, 2190970, 1737314, -2423435, 74088, 1377074, -1861332, 581968, 1458141, -369367,
- 544387, -958851, 434865, -765578, -576599, 99321, 450972, -452582, -1563905, 879395,
- -774168, 369904, 183073, -346282, -47245, 646929, -201327, -98784, -239444, 293668,
- 477815, -102005, 92879, 191663, -434865, 545461, -525597, 80531, 98784, 22012,
- 240518, 99321, 86436, 59593, 79457, -167504, 140123, -122407, 249645, -56371,
- -194884, 28454, 114890, 30602, -33823, 137976, 63351, -44023, 25770, 107911,
- -147103, -47245, -10201, -45634, 43487, -26844,
- },
- {
- 246961, 5611912, -2697240, -2069637, 1749662, -377420, 1915019, 1202054, -93416, -1722819,
- 2483028, -2052458, -2121714, 8898098, -4349192, 2168959, 2457795, 605054, 3144990, -3378529,
- 3410741, 2424509, 3126736, 761283, -2096481, 1176284, 742493, 2797634, 517544, 455267,
- -2011655, -3707631, 3435974, -1308891, -1860795, -2626909, -2829310, 1225676, -561030, -679142,
- -1286880, -410169, 1926293, -770410, -329639, 254477, -1694902, 742493, 350577, 258235,
- -360777, 97711, 81068, 303869, 1136019, -173409, -578210, -258235, -396211, 263604,
- 943282, -480499, -151398, 305480, -83752, 17180, 393526, 123480, -169651, 440771,
- -207769, -202400, -65498, 148713, -186831, -169651, 48318, -3758, 57982, 37044,
- -70330, -119722, 105227, -214748, 12885, 43487, -178241, 71941, -7516, 20401,
- 107911, 1611, -99321, -10201, 43487, 37044,
- },
- {
- 9080098, -58520004, 3062849, -1701344, -1791001, -4600984, 3753265, -39192, -700080, 2505040,
- -3226057, 3712462, -2844879, -5111011, 927713, 1240709, 1020592, 2197413, 1167157, -1190780,
- 60130, -2192581, 107374, 201863, 180926, 2111513, 939524, -446677, -1278290, 766115,
- -76773, -125628, 497142, 135291, 91268, -1296006, 1301912, 13959, 957778, -830002,
- 567473, -176094, -281320, -1209570, 1997697, -636192, 105764, -28454, 1498944, -129923,
- -481036, -550293, 35970, 501437, -249108, 1391033, -85899, 33286, -233539, 411243,
- -395674, 56908, 19864, 47782, 73551, -18790, -13959, -325881, 172336, 44560,
- -32212, 97174, 214748, 128312, 24159, 30602, 130460, 146029, -142808, 222801,
- 2684, -13422, -34360, 106837, -122407, 44560, -129923, -120796, 99858, -98247,
- -6979, 50466, 57982, -87510, -33286, 81604,
- },
- {
- 542240, -7679939, -4013647, 338229, -1650878, 213138, 339839, -663572, 1716376, -297963,
- 1277216, 2179696, -11708618, 29821568, -6635188, -4295504, 2689723, 175020, -1453310, 2058363,
- 1984275, -3768834, 8977555, -840740, -2471217, 2631204, 1813550, -4074313, -1187022, 553514,
- -2456721, 1076426, -1154809, -811749, -1262184, 161061, 38118, 803696, 511101, -492311,
- 2444910, 814970, -1603097, 16106, -1996623, 402653, 787590, 518617, -384936, -973884,
- -24159, -717796, -415001, -721018, 580894, -563714, -65498, -332860, 409633, -491237,
- 380641, -467615, -522375, -187368, -484258, -56371, 213138, -343597, -645319, 63888,
- 11811, 37044, 358630, 42950, -91268, -141734, -84826, -63888, -142808, 56371,
- -17180, -226560, -129923, 76773, -16106, 46171, 57445, -153545, 221191, -49392,
- 86436, 139586, -11811, 70867, 59593, -8053,
- },
- {
- -2728915, -54953032, 933082, 1498407, 1345399, 7738458, -6627135, -799938, 918049, -200790,
- 3778498, 33286, 52613, 784368, -21100638, -2071785, 6031208, 2624762, -1901597, 3103651,
- -1520955, 1044214, -1149441, 470836, -308164, 3221, 1030255, 1560684, 1442035, -1212791,
- 1480153, -1198296, 631897, 128849, 118112, -424128, -299574, 817118, -357556, 8590,
- 137439, 1509144, -423054, 281320, -1049046, -77846, -687195, -282394, 379568, 438624,
- 112743, -702227, 1076963, 168041, -231391, 446140, -760746, 566936, -506806, 637266,
- -515396, 148176, -491774, -406411, -186294, 38655, -83215, -79994, 156229, 261456,
- -370978, 235149, -335007, -290984, 176094, -85899, 33823, -20938, 69793, -8590,
- 31139, 133681, -266288, 112743, -142808, 314069, 224412, -53687, -169651, 81604,
- -106837, 118112, 89657, 7516, 117038, -112743,
- },
- {
- -464393, -6464463, 1620276, -840740, -243739, -255551, -102005, -964757, -1478006, -2089502,
- -1631014, -1285806, 2172180, -6696391, -46322832, 3498788, 5035313, -4495220, 3658239, 1643362,
- 1458678, 898722, 2986076, -4527970, -476741, 2374580, -3849365, -159451, 811212, 2274722,
- -729608, 1092532, -665720, 1962800, -1738925, 811749, -401579, -391916, 637803, 197032,
- 1299765, -445066, 1088774, -875636, 537, -263604, -260919, -726386, -176094, 1099512,
- -1258425, 301721, 92342, -1882269, 797790, 105764, 693637, -536871, -227096, 334471,
- 241592, -466004, 89657, 359167, -51540, 79994, -10737, -161061, 456340, -136902,
- -71941, -73014, -78920, 169651, -26844, -17717, -224412, -78920, -106837, 169651,
- -208843, 85362, 98784, 9664, 4295, 143881, -88584, 11274, 36507, -118112,
- -55835, 64961, -31675, 75699, -178778, -57982,
- },
- },
- {
- {
- -10386305, -38035156, -2546916, -6651294, -3600256, -887985, -835908, -2153926, 887985, -499290,
- -2794950, -1761474, 156766, -937914, 460098, 142808, 1477469, 150861, 934155, -4735739,
- -1108102, 1065689, 440771, 779537, -263604, -280784, 2529736, 1247688, 286152, -406948,
- -369904, -249108, -365072, -235149, -519154, 37581, 58519, -1227287, -280784, -238371,
- 115964, -695785, 323196, 513785, 338766, 1290101, 1520418, 906238, -50466, -365072,
- -537945, -387084, 127238, 442919, 264677, 274341, -9664, 725850, 368830, 102542,
- -263067, -32212, 408559, 362925, -261456, 394063, -299037, 186831, 141734, 79994,
- 121870, 51540, -104690, 176631, 49392, 19864, 14496, 124017, 86436, -198105,
- -184684, -33286, 32749, -79457, -99858, 116501, -1074, -6979, -25233, -42413,
- -22012, 66572, -57445, 38118, 74088, 39728,
- },
- {
- -1562831, -17983028, -4020626, -1478006, -3164854, -359704, -682363, -833224, -552977, -201327,
- -45097, -665720, -1308354, 74088, 3042448, 1457605, 1034013, -1293322, 620623, -540092,
- 1439351, -1826435, -231928, -869731, 1649804, 125628, -1042603, 162135, -2290828, -992137,
- -1385127, 966905, -758599, -450972, 1195612, 1054951, 2120640, 1032403, 196495, 1165010,
- -521302, -457414, -97174, 288837, 272730, 187905, -394600, -534187, -343597, -350577,
- 61203, 247497, 257698, -149250, -308701, 560493, 183073, -124017, -268435, 301185,
- 3758, -479426, 67109, -107911, -122407, 13959, 159988, 28991, 122943, 77309,
- 97174, -44560, 62277, 11811, -270046, -114354, 76773, 32749, -87510, -163209,
- 68183, 183073, 139050, 4832, -7516, -58519, -29528, 23085, -83215, -19327,
- 56908, 30065, -12885, -61203, -42950, 21475,
- },
- {
- 6691559, 52292300, -5473936, -15159624, -4165582, -119185, -865973, -143881, 573378, 2682744,
- -201327, -4393215, -784905, 1069447, 556735, -2812667, -133144, -3419331, -5475010, 81604,
- -6421513, 648003, 220654, 1225676, 478352, -1021129, -838592, -851477, -2574296, -1146756,
- 66572, 398358, -688805, -248034, -868657, 588411, -934155, -881542, -741419, -1263794,
- -862215, 491237, 40802, 81604, -244813, -683437, -335007, -785442, -24696, 438624,
- -13422, -661425, -661962, -211527, 249108, 650151, -223875, 180389, -196495, 202400,
- -211527, -108985, 19864, -208843, -41876, -251256, -376347, -169114, -62277, -57445,
- -229244, -174483, -384936, -41876, -69793, 145492, 311922, 41339, -151398, 146029,
- 78920, 37044, -116501, -68719, -31675, -127238, 16643, -44023, 41876, 18790,
- 103616, 69793, 104690, 12348, 51003, 34897,
- },
- {
- 12407624, 89098560, 15500537, 8785892, 1029718, 534187, -344134, -408022, -47245, 1065689,
- 1341640, 956167, -907849, -2173254, -1176284, 474594, 2818036, 5554467, 1096290, 8590,
- -213675, 2229088, 527744, 802085, 1353452, 1521492, -41339, 396211, -678068, -367757,
- 244813, 682363, -486405, -142271, 37581, 366683, 272730, -120796, 281857, 1089848,
- 234613, 170188, -1328219, -226023, 171799, -461172, 18254, -134218, 1089311, 398895,
- -401579, -420370, -23085, -346282, -168577, 18790, 45634, 349503, 14496, 294205,
- 170188, -332860, 117575, -16106, -21475, -144418, 187368, -17180, 108985, 201863,
- -19327, -117038, 113280, 81604, -51003, -112206, 11811, 118648, 138513, 7516,
- 110595, 114354, 83752, -41876, -45634, 24696, 65498, -76236, 38118, 2147,
- -4832, -60130, 51540, 537, 11274, 57982,
- },
- {
- -1291711, -1812476, 1008780, -23085, -385473, 324270, 985158, 10201, 362388, 284542,
- 420907, 392990, -981937, -1118302, 4138738, 640487, 2495376, -6709276, -514859, -674310,
- 2381023, -2223719, -4545686, 540629, 1066763, 877247, 1098438, 1328219, 1239098, -592169,
- 1003949, 1848983, 615254, -97174, -260382, -537, 221728, 1292785, 2268817, 1027571,
- 119185, -1146756, -223338, -206158, 31139, -641561, -913754, -316217, -178778, 126702,
- 124017, -251256, 18254, 129923, 37581, -120259, 515396, -125628, -271657, 460098,
- 179852, 100395, -45097, 245350, -179852, -413391, 197032, 88047, 150861, -27380,
- -200790, 268435, 174483, 55835, 147103, 126165, 154619, 169114, 73551, -60130,
- -4832, 47245, 76773, -95026, -44023, -33823, -55835, 29528, 5369, 103079,
- 45634, -36507, -3758, 10737, -9127, 19864,
- },
- {
- 28201292, 164564352, 19489488, -2960306, 1283658, 1060857, 232465, 156766, 1685238, -176631,
- -1067836, 803159, 218506, 658204, 530428, -34360, -2258079, -224412, -146566, 542240,
- 612570, -367757, 1278827, -347892, 278636, -842887, -159988, -78383, -746251, -25233,
- 1425392, -1134945, 114354, -739271, 2059974, 820876, 586263, 11811, 845035, 1029718,
- 858457, 15569, -522375, -1724966, -1200980, -559956, 203474, -78383, -91805, 548682,
- 78920, 212064, 415001, 28454, 302258, -146566, -194347, -549756, 510564, 162672,
- -337155, 377957, 48318, -29528, -209917, 57982, 24696, -14496, 167504, -278099,
- -57445, -30065, 47782, -33286, 13959, -149787, -58519, 27917, 87510, 139586,
- 11274, 162135, 121870, 105764, -10201, 2684, -1074, 4832, -52613, -12348,
- -137976, -77309, 8590, -13422, 45634, -32212,
- },
- {
- 556198, 5025112, 2357400, 1250372, 1074, 169651, 670015, -20401, -261456, 145492,
- -437550, 525597, 28454, 5031554, 9241696, 3591130, 1991254, -322659, 1596654, 7669201,
- 2279554, -908922, 3329674, 3437048, -2229088, 1185411, 1836635, -1546188, -1739999, -653372,
- 1286880, 744640, 359704, 1125281, -435939, 366146, -116501, 369904, 406411, -455267,
- -372588, 125091, 261456, -605054, -547071, -199716, -122943, 199179, 88584, -535260,
- 69256, 57445, 219043, -100932, 440234, 147103, 241592, -134218, 159451, 457414,
- -40802, 178241, -91805, 314069, -98247, 78383, -90194, -185757, -87510, 398895,
- 323196, -86436, -155693, 200790, -121333, -165356, 43487, 30065, -3758, -126702,
- -171262, -74088, 96637, -6442, 18790, -41339, 83752, 40802, 19864, -83215,
- -42413, 16643, -53150, -49392, 43487, 16106,
- },
- {
- -12950937, -105440376, -5204427, 3141769, 897111, 203474, -738734, 923955, 139586, 227096,
- 594316, -730144, -370978, -1086627, -559420, 1063541, -745177, -544387, 653909, 802085,
- -1503775, 432718, 0, 1933272, 950262, 19327, -116501, 651761, -886911, 99858,
- -155693, 691490, 381178, -1619203, -505196, -3758, 416612, 1533840, 1268626, 188442,
- -851477, -914291, -358630, 801548, 1061931, -324807, -190052, 650151, 62277, -289910,
- 472983, -153545, 589484, 493921, -195421, 264677, -221191, -266825, 228170, -186294,
- -154619, 22012, -309238, 80531, 513249, -14496, 20938, 47245, 73551, 144955,
- 37044, 161598, 491774, 113280, -155693, -63351, 202937, 30602, 132070, 124554,
- 62277, 119185, 69256, 42950, 19327, 43487, 10201, -125628, -106837, -5369,
- 104690, 26307, -33823, 0, -89657, -100395,
- },
- {
- 974958, -3587908, -3367791, -319975, -705985, 171799, 542777, 489089, -2684, -590021,
- -921271, 1246614, 229244, -955093, -6659347, -3337190, 1968706, 1004486, -621697, 1678259,
- -2432562, 957778, 452582, 2388002, -1096290, 644782, -627065, 467078, 819265, -673773,
- -2782602, -320512, 115964, 431644, -748935, -1535451, 53150, -1442572, -1022739, 746251,
- -1069984, -621697, 172872, -1105954, -1218160, -163209, -589484, -130460, -409096, 512175,
- 168041, -134218, 551903, -350040, -629213, -196495, -71404, 2684, 231391, -20938,
- 168041, -15569, -264141, 233002, 554051, 340913, -214212, -68183, 104153, 280247,
- 427886, 179852, 86973, 55298, -185220, -73014, 120796, 37581, 108448, 41876,
- -9127, -92879, 142808, -7516, -57982, 48855, -60130, -148176, -68183, -16106,
- 12348, -41876, 17180, -33286, 16643, -5906,
- },
- {
- 8521752, 11991549, -8935143, -2181307, 229781, 3811247, 4931696, 2001455, -878858, 745714,
- 99858, -3234110, 466541, -1340030, -1451162, 1029718, 3168075, 3577708, -671626, 90194,
- -1120450, 934155, 1784022, 1736777, 865973, 801011, 385473, -69793, -173409, 1471563,
- 1765232, 2500208, 673236, -1330366, -1502702, 388695, -1141388, 937377, 617402, 597537,
- -922881, -452045, -92342, -621697, -309775, -540629, -338229, -188442, -795643, -1010928,
- 149787, 314606, -345745, -79457, 218506, 428423, 124017, 68719, -78383, 8590,
- 374199, 236760, -16106, 41339, -200253, 46708, -61740, 85899, 98784, -58519,
- -23622, 282931, 84826, 70867, -25233, -19327, 47245, 4832, 61203, 93952,
- -11811, 26844, 46171, -44023, 12885, -24159, -52613, -6979, -60666, 25233,
- -46708, -37044, 6979, -2684, -25233, -55835,
- },
- {
- -727997, -766115, -231928, 3014530, -475668, 90194, 1381906, 671089, 14496, -929860,
- 863288, 702764, 1198296, 2377265, -1057099, 2969433, 1067836, -675921, 1220308, 1092532,
- 2389613, 547608, 3138547, 597537, -913217, 756988, 402653, 680752, 328565, 436476,
- -1548336, -75699, 617402, -149787, -2617246, -2456185, -630823, -379031, -230854, 74088,
- -1089311, -105227, 178778, -457414, -28454, -588947, 53687, -209917, -271120, 440234,
- -115964, 18254, 141197, 850940, 1002338, -177167, -385473, -140660, -380105, 227633,
- 308701, -258772, 88584, 86436, 90194, -134218, 13422, -28454, 12885, 97711,
- 69793, -219043, -133681, 78383, -222265, -106837, 148176, 192200, 92342, -55835,
- -34897, -40265, -60666, -30065, 72478, -15569, -79994, 15032, 79994, 85362,
- 55835, -8590, -45634, -57445, 34897, 8053,
- },
- {
- -9929428, -23024246, -3331284, -1228361, -2482491, 1537061, -716186, -590558, -284542, 1625645,
- 1170379, -37044, -1074279, -1144609, -289910, 1567663, 663036, 1062468, 1250372, -198105,
- -701153, -1386201, -724239, 6979, 1180042, 466541, 539555, -357556, -616865, 902480,
- 1374926, -827318, -384400, 219043, -18790, 486405, 769336, 1370095, 876710, -129923,
- -420907, 179315, -2062121, 796180, 762894, 47782, 454193, 16643, 438624, 26307,
- -383863, 42413, -256624, 34360, 162135, 657130, 105227, -187905, 146566, 249108,
- -76773, -9127, -22549, 35433, -67646, -57982, -18254, 115427, 66035, -115964,
- 57982, 170725, 102005, 26307, -30065, 105764, 86436, 143881, 77309, 4832,
- 81604, -9127, -61203, -15032, -48318, -37581, 49392, -127775, -30065, -82678,
- -50466, 34897, -18254, 0, -46171, 7516,
- },
- {
- -442919, -6296422, -1962800, -2394444, -1560147, -159451, -698469, 91805, 401043, 1336272,
- 424128, 381715, 7568269, -1747515, -1123671, -4061429, 232465, -288837, -61740, -140123,
- 2595234, -3158949, 6418292, 1057636, 1797981, -1678795, -431644, -817118, -2999498, -631897,
- -860067, 499290, -583579, -1034550, 846109, 256087, 797790, -460635, 315680, 456340,
- 1119913, 282931, -938987, -38655, -836982, -746787, 230854, -233002, 189515, -361851,
- -551366, -792958, -685584, -530965, 193274, -172872, -488016, 78920, 31139, -157840,
- 578210, -364535, -753767, -553514, -201327, -94489, 88047, -350040, -259846, 34897,
- -91268, 184684, -70867, 161061, 94489, -279173, -231928, -166967, 123480, -54761,
- 58519, -62277, 10201, 158377, -59056, 10201, -63888, -87510, 91268, 108448,
- 28991, 50466, -56908, 47782, 67109, 4832,
- },
- {
- -4954782, -40358732, -5492190, 2629057, 1809792, 1478543, -1079111, -12348, 859530, 385473,
- 2652679, 289373, -241055, -6094022, -7178501, 1079111, -12885, 2139968, 1844689, -528818,
- -412317, 886374, 279173, -1255741, -590558, -490163, 1251983, 1189706, 1076426, -1255204,
- 537945, -750546, 314606, 1464047, -984084, 647466, 61740, 1117228, 227633, 301185,
- -108985, 1318555, -308164, -162672, -196495, -461172, -108448, -683974, 246961, 302258,
- 312996, -213138, 250182, 529355, 268435, 495532, -97711, -12348, -290984, -51003,
- 214212, -242666, -327491, -5906, -18790, 57982, 139050, -28454, -25770, 97174,
- 164819, -114890, -124017, -115427, -31675, 82678, -23085, 9127, 69256, 179852,
- 91805, 19327, 10201, 119722, -5369, 108985, 115964, -19864, -100395, -32749,
- 19327, 74625, 33823, 41339, 56908, -80531,
- },
- {
- 237834, -3848828, -1644436, 230854, -1306207, 285615, -172872, -712428, -1265942, -1042066,
- -1495186, -600759, 2248416, -15369004, -30295088, -1999844, 2505577, -925029, -876173, 7165079,
- 2663954, -1839320, -494995, -2107755, 744103, -352187, -1760937, 118648, 826781, 2647311,
- -1423245, 622233, 196495, 93416, -878321, -291521, -482647, -505732, 852014, 787590,
- -389231, -119185, 511101, -586263, 14496, 265751, -293668, 92342, -846645, -193810,
- -102005, -317828, -257698, -533650, -2684, 202400, -43487, -490700, -86436, -6442,
- -73014, -244813, 350577, -19864, 47782, 41876, -51003, 192737, 85899, 49392,
- -78383, 11274, -64961, 110059, 6979, -84289, -60666, -185220, -96637, 63888,
- 9664, 56371, 66035, 55298, 20938, 37581, -78920, -28454, 43487, -56908,
- -54224, 46171, 11274, -70867, -88584, -80531,
- },
- },
- {
- {
- 11484743, 7770133, 20168092, -4594542, 709743, 133144, 5369, -982474, 658741, -327491,
- 941135, 776852, 476741, -722628, -504659, 117038, -97711, -1777043, 2758443, -2067490,
- -306553, 525597, 211527, -266288, -221728, -355945, 1306207, -505196, -376883, 230854,
- 411243, -688805, 370978, 150861, 14496, -554588, 187905, -244276, -146029, 511101,
- 399432, -593242, -21475, -321049, -543850, 697395, -13422, 549756, 423591, -261456,
- -209917, -231928, 95563, 223875, 97711, 142808, -78383, 452582, 146566, -97711,
- -121870, -179315, 88584, 87510, -208843, 493921, -292595, 184147, 118112, 41876,
- 15032, -62277, -11811, 33823, -69793, 67109, 78920, 133681, -100932, -74625,
- -73551, 19864, 100395, 39192, -41876, 16643, 79994, -1611, -14496, -10737,
- -3758, -39192, -10201, 19327, 13959, -37044,
- },
- {
- 1934346, -16189879, -1743220, 3030636, -363998, 255014, -270583, -61203, 228170, -401579,
- 193274, -103616, -1009854, -1615445, 1859721, -2202245, -424665, 434865, 5582921, 1784022,
- 835371, -1468879, -489626, -1331977, 275415, 208306, -1200980, 1096827, -862215, -1154809,
- -661962, 832687, 391916, 872952, 523449, 767725, 242129, -591632, -99321, 532039,
- -602369, 103079, -111669, 484258, 26844, 172336, 41876, 307090, -165356, -83752,
- 272194, -31675, 8053, 40265, -13422, 253940, 92342, 42413, -197032, 1611,
- -64425, -114354, 182536, 104690, -188442, -53150, 84289, 93416, 64961, -18790,
- -43487, 149787, 216359, 148176, -147103, 107374, 125628, -15032, -86436, -166430,
- 53687, 68183, -8053, -50466, -34360, -88047, -4295, 52076, -54761, 45634,
- 47245, 15569, -80531, -37044, -11811, 46708,
- },
- {
- -5878737, 38694436, -3030100, -9038759, 2689723, 1060857, -523986, -44560, 5369, 807454,
- -1646583, -1556926, -137976, -140123, 2935073, -1807644, 695785, 425739, -343597, 2557653,
- -1022739, 2219961, -1295470, -7516, 163209, -1531156, -632971, 434865, -168041, 780610,
- -200253, 519691, -170188, 382789, 507880, 324807, 249645, -67109, -417686, -82141,
- -217970, 545998, 144955, -91268, -388158, -541166, 157303, -481036, -134218, 251792,
- 30065, 97711, -188979, -147103, -1611, 382252, -299037, 230854, -213675, 238908,
- -263604, -324270, 312996, 227096, 64425, -251256, -93952, 51003, 99858, 37044,
- -21475, -37581, -246961, 153008, 98784, 90194, 18254, -117575, 65498, 165893,
- -63351, 20938, -6442, -61740, -57982, -89121, 0, 59056, 30602, -10737,
- 86436, 13422, 28454, 52076, 8053, -14496,
- },
- {
- -14889578, 30404074, -475668, 6350109, -361851, 302795, 177704, -155693, -68183, 1244467,
- 1107028, -907849, 382789, -486942, 448287, 501437, -279173, 2474438, -272194, -445603,
- -739271, 671089, -316754, 388158, -310311, -356482, -1399623, 872415, -224412, -305480,
- -121870, -77309, -405874, 199716, -98247, 242129, -406411, 37044, -15569, 430034,
- 333934, 292058, -338229, -293668, -370441, -99321, 628676, -242666, 628676, 38655,
- -474594, 125628, 47245, -268435, -157303, 155693, 119185, 130997, 19327, 72478,
- -87510, -330712, 194347, -95563, 91268, -95026, 48855, -27917, 15032, 77309,
- 77309, 80531, 118112, 32749, -48318, -92879, -4832, 9127, 36507, -95563,
- -6442, -55298, 44023, -53687, -48855, -17180, 0, 35970, 49392, -76773,
- -16106, -27380, 27380, 3758, -11811, 68719,
- },
- {
- 937914, -644245, -1037235, 53687, 195958, -83215, 316754, -16643, -37044, 337155,
- 639950, 421444, -1766842, -52076, 4318053, -235686, 993748, -10093710, 7726110, 360240,
- 2186138, -72478, -1459215, 752156, -704912, -993748, -710280, 82141, 175557, -62814,
- 485331, 681826, -338229, -551903, -999654, -864899, -71404, 379031, -90194, -87510,
- 758062, -705448, 361314, 213138, -59593, -425739, -600759, -352187, 228707, -75699,
- 570694, -1611, -376883, 335007, -69793, -89657, -54224, -232465, -33823, 175557,
- -310311, -5369, 13422, 162672, -44560, -141734, 207769, -129386, -4832, 37581,
- 73014, 138513, -47245, -202937, -40265, -84289, 82678, -21475, -38655, -26844,
- -34897, -24159, -19327, -90194, 86973, 3221, -54224, 54761, -68719, 21475,
- 16106, -92342, -3758, 51540, -14496, -1611,
- },
- {
- -28696288, 53993644, -3640522, -3054259, -397821, 396211, -457414, -192737, 190589, -704375,
- -285615, 462246, 764504, 819265, -1127966, 755914, -83215, 83752, -325881, 96100,
- -168041, -77846, 1148367, -134755, 376347, -350040, -481036, 343597, -887448, -346819,
- 1027571, -98247, 537408, -2145873, 894427, -273804, 963146, 505196, 416075, 25770,
- -842887, -152471, -23622, -200790, 757525, 334471, 747861, -326954, -177704, 136902,
- -59593, 13422, -259846, -166430, 376883, -54761, 1074, -301721, 315143, 181462,
- -208306, 45097, -121870, 33286, 133681, 18790, -53687, 74088, 156766, -27917,
- 60130, 55835, -73551, -78920, 135828, -145492, 66572, 80531, 85362, 2147,
- -61740, 112206, -27380, 1074, 23085, -63351, 35970, -20938, 24696, 8053,
- -70330, -4832, 49392, 64425, 6979, -59593,
- },
- {
- 87510, 731755, 86436, 50466, -231391, -137439, 181462, -157840, 49929, 1074,
- -373662, 306553, 804233, 45634, 1240172, 1839857, -415001, 190589, -1501628, 936303,
- -781147, -2582886, -1147830, 1814087, -373125, 455267, -657130, 113817, -1200980, -515396,
- 1370095, -343597, 53687, 718870, 254477, 811212, -36507, -90194, 79457, -341450,
- 241592, 357556, 49929, -460098, -201327, 279710, 231391, 170188, 199179, 24159,
- 274341, -53150, 63351, -109522, 72478, -336618, 142271, -209917, -193810, 318364,
- 92342, 459025, -149787, 107374, -102005, 272194, -79994, -103079, -97711, 200253,
- 90731, -93952, -69793, 143345, -126702, 30065, 21475, -65498, -41339, 1074,
- 14496, 30602, 62814, -9664, -8053, -29528, 83215, 47245, 70330, 16106,
- 53150, 20938, -20401, 41876, 23085, -20938,
- },
- {
- 13999446, -47897476, 2852932, 1740536, -504659, -79994, 58519, -507343, -63351, -42950,
- -579284, 312996, 280247, 46708, 925029, 1068373, -328565, 620086, -313533, 471373,
- -45634, -270583, -1086090, 644782, 592169, 466004, 40802, 667867, -436476, -424128,
- -506269, 493384, -67646, -403190, -28454, -1315871, -401043, 146029, 16106, -60130,
- 209917, -339839, -57445, 654983, 251792, -79994, -48318, 480499, -1059246, -866510,
- 224949, -89657, 257161, 263604, -257161, 56908, -120259, -11811, 272730, -56908,
- 9664, -208843, -387621, 129386, 289373, -255551, 6979, -60666, 39728, 143881,
- -1074, 13422, 84289, -83215, -29528, 55298, -17180, -7516, 121333, 56371,
- 18254, 62277, -52076, 34897, 35433, -5369, 20938, -23085, -10737, -19327,
- 29528, -15032, -29528, -19327, 8590, -39192,
- },
- {
- 62277, -8417599, -867583, 731218, -104690, 245887, 144955, 44560, 116501, -20938,
- -538482, 1156420, 83752, 2975339, 744640, -13959, 3491809, -1774358, -1058173, 3130494,
- -732292, -1170916, 925565, 2180770, -588411, -83215, -2584497, 719944, 397821, -718333,
- -1831804, 432718, 445603, 613643, 541703, -329639, 512712, -1181116, -576063, 59056,
- -498753, 60666, 47245, -549219, -382252, 328028, 161061, 375273, -655519, 554588,
- -32212, -386547, 220654, 96100, -40265, -10201, -98784, -322659, 167504, -63888,
- 161061, 320512, -163209, 91805, 151934, 124017, -156766, -33286, 5906, -66572,
- 56908, -51003, -63351, -66035, -66035, 63351, 79994, -20401, 44560, -45634,
- 69256, 60666, 15032, 2684, -14496, 41876, -73014, 5906, -7516, -66035,
- 20401, 30065, 0, -8590, -32212, -35970,
- },
- {
- -6302865, -1666447, 2161442, 102005, -658204, -3422552, -2270964, 1365263, -1679869, -446140,
- 969052, -1762010, 1201517, -321586, -566936, 1090385, -1570884, -154082, -208843, -267899,
- -1428614, 529892, 420907, -27917, -656056, 60666, 70867, -91268, -566936, 58519,
- -772020, 114354, 199716, 276489, -315143, 792958, -457951, 525597, 180926, 24696,
- -751082, -133681, 580357, -12885, -221191, -347892, -95026, 156229, -27917, -456877,
- 261993, 118648, -371515, 106837, 245350, 111132, 110595, 175557, -49929, -156766,
- -309775, 12885, -57445, 196495, -26844, -223338, -25770, 15569, -62814, 122407,
- -141197, 21475, -115964, 177167, -53150, -11811, -28454, 125628, 22012, 130460,
- 40265, 61740, -70330, -70330, -53687, -77846, 3221, 31139, -82678, -16643,
- 16643, 55298, 20401, -27380, -31675, -39192,
- },
- {
- 647466, -1574106, -927176, 5281736, -337692, -441845, -277025, -184147, 371515, -603980,
- 376883, 1461900, -696322, 901406, -2499134, 2083596, 382789, -4476430, -528818, 3076270,
- -202400, -1638530, 1430224, -420370, -539555, 391916, 129386, -5906, 195958, 212064,
- -339302, -82678, -846109, 87510, -309775, -24696, 745714, 98247, 233002, 341450,
- -559420, 62277, -179852, -226560, 197032, -434865, 600759, 78383, -419833, 74088,
- 146566, 63351, 11811, 419296, 282931, -130460, -166430, 9664, -39728, -35970,
- -366146, 10737, 277025, -49929, 74625, -6979, -131533, -110595, 97711, -78920,
- -1074, -63888, -109522, -18790, -61740, 83752, 53150, 79457, -23085, -15032,
- -537, -33823, -98247, 45634, 60666, -33823, 35970, 41339, 17717, 2147,
- 19864, 11274, -537, -19864, -12348, 16643,
- },
- {
- 5807870, 3173981, 672699, 325344, -2535105, 2422362, -942208, -227633, 4295, 565862,
- 1289564, -811212, 914291, 1416802, -1245541, -1074, -513249, -803159, -35433, 486405,
- -415538, -488016, -275952, -491774, 499827, -104153, -71404, 550293, -199716, 245350,
- 585726, -117038, -309238, -323196, 456340, 695785, 306553, 427349, -336081, 422517,
- -210990, 624918, -715112, 1385664, -15032, -23085, 506806, -84289, -42950, 96100,
- 11811, 476741, -152471, 198105, -69793, 119722, -75162, -214212, 143881, -78383,
- 19864, 275415, 39192, -66572, 52076, 13422, -11274, 171262, 105227, -243203,
- 88584, 73551, -38118, -95026, -35433, 89657, -38118, 50466, -33286, -89121,
- 17717, -60666, -32212, -66035, -27917, 58519, 54761, -43487, -1611, -42950,
- -537, -26844, -2147, 38655, -38655, -25770,
- },
- {
- 206695, -3712999, 1144072, -1561758, -769336, 99321, -430034, -112743, -70330, 626528,
- -551903, 1848983, 1547262, -14733885, -43487, -295816, 306016, 971736, 919123, -534723,
- 619549, -6254546, 2827699, 507880, 3355980, -1468342, -656593, 73014, -775778, -190589,
- 434329, 485868, 239444, -572841, 638876, 226560, 493921, -307090, -130997, 135828,
- 393526, 193810, -255014, 847719, -72478, -344671, 179315, -419296, 191663, -373662,
- -630823, -83215, 123480, 51003, 333934, -88584, -81604, 306016, -37044, -73014,
- 392990, -199179, -222801, -125628, 100395, -24159, 159451, 40265, -99321, 157303,
- -16106, 146029, -234613, 114354, 73014, -195958, -67646, -84289, 193810, -22549,
- 107374, 20938, 34897, 66035, -101469, 79994, -63351, 31675, -35433, 23085,
- -5369, -23622, -74625, 86436, -45097, -39192,
- },
- {
- 7443179, -15265924, -380105, -865436, -194884, -1287953, -977105, -721555, 684510, 846109,
- 663572, 222265, 943282, 1459752, 5230734, 2731062, -3015604, 577673, 876173, -1722819,
- -223338, 217433, 277025, -869194, 504122, -958315, -13422, -564788, 216359, -692027,
- 421981, -1074, 13959, 700617, -1381369, 786516, -493921, 268972, -8053, 425202,
- 461709, 695248, -504122, 233002, 239981, -221728, 212601, -353261, 272194, 3221,
- 721555, 9664, -179852, 264141, 139050, 191663, 68719, -44023, -158377, -303869,
- 271120, -86436, -61203, 135291, -96100, 27380, 153008, -13959, -75162, 44560,
- 106837, 52613, -3221, 6979, -80531, 157303, -54224, -9127, 38655, 71404,
- -56908, 17717, 100395, 5369, -34360, 26844, -75162, -37581, 8053, -48318,
- 18254, 41876, -29528, 10201, -9664, -62277,
- },
- {
- -353798, -2388539, -370441, 1001801, -607738, 374199, 51003, -34360, 16106, 963146,
- -118648, -153545, 625992, 5407364, 7639673, 3959423, 1321239, 613643, 844498, 5159330,
- -897648, -1506997, 970126, -1637993, 264141, -175557, -235149, 738198, -44023, 931471,
- -1352378, 674847, -263067, 234076, -194884, -823560, -156766, -345745, -318364, 465467,
- -819265, -305480, -54761, -51540, 251792, 421444, -256087, 467078, -318364, -181462,
- 328028, -69793, -60130, 58519, 19864, 204548, -68719, -179315, -16106, 32212,
- 187368, -48318, 63351, -184147, 180389, 192200, 144418, -1074, -21475, 161598,
- 121870, 47245, -43487, 69793, -47782, 170725, 11811, -67109, -37044, 73551,
- 40802, 23085, 19864, -84289, -58519, -17180, -51540, -55298, 46708, 2147,
- -22012, 52613, -18790, -71941, 29528, -9664,
- },
- },
- {
- {
- -9538585, 61473332, 92342, -757525, 1265405, -427349, 162135, 995359, -450972, 339839,
- 1058173, 283468, 88584, 239444, -419296, -734439, -101469, -383326, 945967, -386010,
- -564788, 53150, -12348, -687732, -415001, -471373, 591632, -136902, -590021, 498753,
- -504659, -527207, 287763, 512712, -223338, -245350, -34897, 103616, 130997, 655519,
- 32212, -90731, 16106, -500901, -119722, 182536, 234613, 234076, -214212, 51540,
- 119185, 73014, -201863, 40802, -140660, 251792, -22549, -49392, -114890, -112743,
- 163746, -133681, -106300, -118112, -22012, 121870, 28454, 78920, -52613, -9127,
- -3221, -68183, 55298, 11811, -79994, -52076, 66035, 103079, -45634, 103616,
- 49392, 51540, 2684, 79994, 4832, -12348, 68719, 26307, 40802, 18790,
- -10737, -51003, -5906, -9127, -11274, -12885,
- },
- {
- -761820, -15353971, 4461934, 2233383, 1597191, -128312, -301721, 515396, 3758, 258772,
- -261456, 39192, -1087164, -966368, -321586, -1129576, -548145, -650688, 2459406, 3225521,
- -1001264, -804233, -475131, -876173, -2114735, 1409286, -124554, 938987, -934155, -872952,
- -571768, 168577, 1385127, 1030255, 299037, 547071, -591095, 321586, -104153, 254477,
- -348966, 253940, 273804, 282394, 115427, 178241, 294742, 284542, -28991, 283468,
- -66035, 84826, 3221, 396211, -41339, -253940, -46171, -21475, 40265, -38118,
- -25233, 170188, 83215, 98784, -11274, -32749, -49929, 289910, 33823, -114354,
- 65498, 221191, -15569, 62814, 90731, 131533, -27380, -63888, -45634, -35970,
- 11274, -37581, -40265, -14496, -10201, 24696, 30602, -2684, 26307, 24696,
- -41339, 11811, -5906, 50466, -1611, -10737,
- },
- {
- 3216931, 31268972, -9087077, 113280, -452045, 966905, 59593, -425202, -99321, -418759,
- -1228361, 229781, -804770, 1033477, 1883880, -179315, -494995, 3221, 3118146, -663036,
- 741956, 1113470, -1088774, -522375, 435402, -1131724, -297963, 489626, 257161, 1017907,
- -441845, -956167, 1359357, 485868, 31675, 162135, 707059, -225486, -595390, -537408,
- 323196, -25770, -61740, 141197, -223338, -132607, 16106, -115964, -38655, 219580,
- -384936, 516470, -226023, 183610, 201327, -42950, 46171, 107374, -146566, -179852,
- -21475, 28454, 277562, 127238, -78383, 21475, 5369, -19327, 69793, 45634,
- 82678, -72478, 9664, 37044, 56908, 1074, -2147, -65498, 128312, 36507,
- -17717, 48318, -20401, -92879, -23622, 44560, 2684, -6979, 7516, 46708,
- -12348, -27917, -14496, 22549, -27380, 17717,
- },
- {
- 10899553, -11294690, 1690070, 4962835, 431107, 429497, 419833, -243739, 351650, 784368,
- 150861, -992674, 1337882, -763967, 234613, -103079, 843424, 549756, -841277, -513785,
- -370978, 161061, 77309, 6979, -714038, -778463, -1030792, 460635, -57982, 639950,
- 40265, -671626, 294742, 9664, -166430, 341450, -302258, 96100, -122943, 172872,
- 213675, 61740, 151398, -221191, -632971, 413927, 363998, 132607, 197032, -291521,
- -77309, 167504, -171262, 15032, 64425, 63351, 203474, -30602, 109522, -141197,
- 104690, -28991, 10201, -18790, 199179, -26844, 32212, 71941, -60666, 124017,
- 29528, -13422, 13422, 3758, 55298, -91805, 68719, -52076, -13959, 4295,
- 33286, -34360, -10201, -61203, -53150, -49929, -13959, 35970, -42413, -31139,
- 24696, 22012, -34360, 42950, 11811, 26307,
- },
- {
- -675384, -200253, -588947, 296890, 327491, -274878, 41876, 879395, -518617, 229244,
- 1085553, -188442, -84826, 1844152, 1754494, -2952790, -4243965, 3373697, 803159, 1446330,
- -318901, 464930, 1236414, -1447941, -2354716, -622770, 33823, 895501, -1024887, 709743,
- 194884, 561030, -929860, 260382, -666257, -357019, -389231, 14496, -314606, 282394,
- 125628, 51003, 293668, 629750, -412854, -141197, -299037, -277025, 389231, 290984,
- 205085, 71941, -332323, 374199, -48318, -150861, -197032, 65498, 16643, 93416,
- -178241, -140123, -89121, 136902, 324270, 106837, 36507, -176094, 20401, 71941,
- 89657, 2147, -112206, -139050, -32749, -115427, 81068, 24696, 67646, 22549,
- -6979, -20401, -110059, -21475, 27917, 0, 17717, -38118, -13422, 25770,
- 9127, -15032, -9127, 23085, -13422, 8053,
- },
- {
- 19914690, -25227028, 1344862, -2295123, -528818, -239981, 155693, 294742, -848256, 108448,
- 1157494, 181999, 668404, -546535, -179315, 311922, 277025, -47245, -213675, 551903,
- 264677, 63888, 512712, -137439, -145492, 281320, -789737, 534723, -783832, 13422,
- 201327, 99858, -593242, -490163, -806380, 380105, 685047, 705448, -26844, 92879,
- -11811, -109522, -472983, 300648, 805306, 629750, 45634, -5906, -184684, 286152,
- -351650, -52076, -137976, 54761, 285615, -100932, 188979, 162135, 16106, -47782,
- -155693, -69793, 227096, 147103, 111669, -126165, 29528, 160524, 35433, 163746,
- 15032, 129923, -44023, -66035, 54224, -98784, 204011, -4295, 6979, -16106,
- -53150, 10737, -129386, -35970, 32212, 30065, 26307, 31675, -13422, -30065,
- -11811, 40265, 34897, 6979, -22549, -26844,
- },
- {
- -501974, 962610, 1431298, -653372, -120259, -65498, 135291, 114890, 112743, -285078,
- 22549, 31675, 1291711, -2021319, -595927, 755914, -1309428, 466541, -624381, -2512019,
- -989990, -1186485, -925029, -591632, 426276, 357556, -1974611, 629213, -971200, -377420,
- 534187, -110059, -362925, 1068910, 444529, 642635, -1074, -555661, -143345, 297427,
- 360777, -277025, 98247, -348966, -52076, 277562, 431107, 248034, 89121, 99858,
- -20938, 74088, 96100, -161061, -107374, -105227, 32749, -136365, -222801, 71404,
- 140660, 180926, -189515, -3221, 83215, 128312, -11811, 164819, -19864, -53687,
- -73014, 47245, 116501, 37044, -12885, 108985, 27380, 88047, -22012, 35433,
- 19327, 63351, 2147, -18254, 10201, 15032, 27917, -22549, 49929, -8053,
- -28454, -33823, 13959, 51540, -13422, -27380,
- },
- {
- -11702175, -10211285, -2412161, 1237488, -464393, 48318, 235686, -950262, -165893, 96100,
- -259846, 35433, 11811, 1118302, 559956, 1116155, -61740, 108985, -239444, 231391,
- 315143, -518080, -200790, 396211, -318364, 827318, 714038, 196495, 222801, -723165,
- 537, -505732, -105227, 275415, 296890, -382789, -20938, 153008, -319438, -41876,
- 119185, -52076, 46171, -51003, -28454, 864899, -491774, -466541, -701690, -311922,
- 216359, 135828, -90731, -211527, 190052, -78920, 14496, -9664, 193810, -5906,
- -34897, -198642, 0, -19864, -109522, 537, -44023, -114354, 99321, 13422,
- 58519, 20938, -51003, 44023, 55835, -54224, -8053, 140123, 8053, 20938,
- 24696, 28991, -77309, 11274, 18790, -20938, 40802, 82141, -3758, -18254,
- -4295, -49392, -6442, 45097, 23622, -24159,
- },
- {
- -912681, -2956011, 600759, -777389, 306553, 21475, -251256, 415001, 354335, 164283,
- -26844, 102005, -133681, -368830, 6123013, -1546725, 714038, 871342, -527207, 1110786,
- 414464, -1842541, 1684701, 1213865, 1235340, -2259153, -219580, 114354, -1137093, 108985,
- -1068910, 194347, 636192, -73551, 779000, 189515, -110059, -685047, 62814, -644782,
- 410169, 91268, -41339, 316217, 49929, 76773, 479963, -15569, 65498, -102542,
- -294742, -270583, -19327, 110059, 193810, -103079, 163746, 1611, 154082, -137439,
- -56908, 38118, 188979, -188979, -169651, -19864, -134218, -95563, -11811, 2147,
- -73551, -181999, -35433, -82141, 157303, 18254, 31675, 44560, -7516, -4832,
- -5369, 11274, -95563, -3758, 47245, 40265, 5369, 112206, 19327, -71404,
- -2147, 48318, -15032, 27380, -23622, 13959,
- },
- {
- 3502546, -17054242, 5060545, -271657, -907849, -1371168, -4482872, -460635, -523449, -730681,
- 1256278, -98247, 435939, -121333, 260919, 109522, -1774895, 1024350, -468151, -1478006,
- -162135, 362388, 471373, -639950, 92879, -571231, 49929, -382789, 366683, -807454,
- -253403, -462783, -286689, 937914, 459562, -119185, 247497, -180389, 264141, -294205,
- 62814, 37581, 593242, -116501, -154082, 391916, 179852, -88047, 88047, 460098,
- 2147, 4832, 180926, -92879, -99858, 195421, 183073, 65498, -75699, -141734,
- -438624, -86973, 90194, 146566, 25770, -217433, -46171, -37581, -52076, 149250,
- 39192, -128312, -76773, 158377, -33823, 19327, -26844, 61203, 59056, 24159,
- -26844, 19327, 9664, -12885, -58519, 61203, 59593, 37581, 16106, -12348,
- 20938, 36507, -27917, -41339, -9664, 42413,
- },
- {
- -354872, -1399086, 2925947, 1683090, 93416, 221728, -1167157, -228707, 60130, 741956,
- -34360, 493921, -565862, -998043, 116501, -355409, -759672, -2242510, 475131, 2646237,
- -2218351, -505196, 148176, -384936, 181462, 430570, 537408, 120259, 502511, -556735,
- -311385, -745714, -417686, -700080, 954557, 564251, -402116, 293132, 60666, -49392,
- -144955, -199716, 187368, 399432, -206158, -108985, 333934, -39728, -29528, -88584,
- 287226, 34360, 53687, -129386, 20938, 61740, -38655, -120259, 138513, -158914,
- -146029, 83752, 9127, -34897, 34897, 166430, -49929, 29528, 114354, -81604,
- 9664, -39728, -81604, -45634, 54224, 30602, -98784, -98247, -43487, 52613,
- -19327, 5906, -18790, -14496, -57445, -53150, 52613, 46171, -56371, -66035,
- 44023, 18254, -26307, 7516, 9127, 11274,
- },
- {
- -1166084, 14136348, -993748, -341987, 82141, -337155, 122407, -327491, 462783, 287226,
- -296890, -1334661, -118648, 1687922, -453119, 438624, -1563905, -1010391, -3758, 323733,
- -636729, 287763, -122943, -117575, -630823, 520765, -145492, 1126355, -220117, 89657,
- -134755, 328565, -474057, -602369, 467078, 233002, -221728, -387084, -406411, 572841,
- 243203, -137976, 733903, 566399, 173946, -127238, 351114, -2684, -122943, 91805,
- 345745, 280784, 156766, 138513, 100395, -45634, -47782, -233539, 175020, -272194,
- 233002, -26844, 115427, 10737, 156766, -169114, -38118, 8590, 24159, -41876,
- 111132, -47245, -36507, 20938, -19864, 57982, -34360, 14496, -95026, -71404,
- -37581, 37044, -1611, -9664, -31139, 71404, -32212, 6442, -11811, 0,
- 44023, 8053, 61203, -27380, -19864, 19327,
- },
- {
- 73014, -3241627, 686658, -1169842, 375273, -134218, 346282, -436476, 163746, -680752,
- 331786, 2247879, -4679904, -4770098, 219580, 901406, -588411, 2236604, 169651, -183610,
- -4159676, 515396, 911070, 323733, 2688113, 485331, -1915019, 983548, -651761, 804770,
- -587874, 995359, -301721, -399969, 258772, -390305, 327491, 90194, 48855, 185757,
- 255014, 299574, 175020, 327491, -208306, 104153, 377957, 130997, -474594, -189515,
- -228707, 134218, 242666, 96100, 372588, 103079, 51003, 146566, -76236, -102542,
- -168577, -45634, 139050, 46171, 31675, 73551, -8053, 60130, -38118, 71941,
- 42413, -13422, 21475, -41339, 57445, -11811, 71941, -64425, 21475, 99858,
- -11274, -56908, 3758, -70330, -73014, 23085, 22549, 74088, -63888, -16106,
- -62814, 23622, 63888, 54224, -65498, 12348,
- },
- {
- -5312875, 3722126, 953483, -4857608, -188979, -1556926, -2535641, 370978, -474594, 1228361,
- -214748, 764504, 405338, 1887101, 6515466, 124017, -1445793, 120796, -619549, -654446,
- -195421, 212601, 369367, 438087, 599148, -667867, 0, -85362, -334471, -190052,
- -197569, 497679, -462246, -595390, 48318, -215822, -372052, -246961, -340376, 388158,
- 941672, 240518, 170725, -137976, -17717, -259846, -310311, 116501, -108985, 344671,
- 486405, 237297, -92342, -17717, -59593, -79457, 3221, -31675, -23085, -119722,
- -27380, -27380, 95026, -162672, -221191, -40802, -34897, 2147, 71941, -17717,
- 31675, 38655, -19864, 107911, -98247, -29528, -39192, 50466, -29528, -76773,
- -81604, -27917, 5369, -79457, 37044, -73014, -57982, 59056, 33286, -69793,
- 27380, 28991, -44023, -22012, -19864, 2147,
- },
- {
- 474057, -3422552, -259309, 1017370, -191126, 28454, -225486, -34897, 45634, 1188632,
- -406411, 885300, -1198833, 9064528, 10408853, 2892124, 809064, -179852, 2455648, 870805,
- -626528, 724776, 165893, -1317481, -223338, 959388, -539555, 54761, 75699, -224949,
- -245887, 26844, 174483, 73014, 274341, -552977, -66035, -14496, -595390, 69793,
- -5906, 227633, -141734, 7516, 158377, 256624, -193810, -108985, 241055, 92342,
- 61740, 221191, 258772, 17180, -33286, 227633, -100395, 148713, 56908, 271657,
- 331786, -25770, -234076, 22549, 277025, 141734, 4832, -112206, 99858, 112743,
- 100932, 23085, 138513, 12348, 12885, 178778, -26844, 22549, 6442, 116501,
- -51003, -35433, -92879, -64961, 28991, -92879, 29528, -54224, -32212, 30065,
- 8053, 7516, -31139, 4295, 17180, -32749,
- },
- },
- {
- {
- 4958540, 59452012, -26463978, 251792, 4090420, -448287, 105764, 1644436, -207769, 238371,
- 341450, 113280, 217433, -445603, -892279, -1126892, 3758, 321586, 197569, 242666,
- -529892, -779537, -943819, 196495, -1074, -688805, 485331, -70867, -542240, 762357,
- -662499, -486405, 182536, 460635, -217970, -312459, -338229, 344134, -63888, 513785,
- 198642, 423591, 405338, -353798, 126165, -54761, 387621, -68719, -420907, 204011,
- 84289, 89121, -281857, -97711, -224949, 115964, -181462, -193274, -276489, -126702,
- 45097, -108985, -109522, -82141, 61203, 11274, 20401, 18254, -114890, 39728,
- 108985, 40265, 35433, -68719, -134755, -83215, 9127, 16106, 30065, 84289,
- 46171, 4832, -76236, 21475, -20401, 62814, -52613, -39728, 56371, 59593,
- -11811, -6979, -30602, -37581, -20938, 6979,
- },
- {
- -223338, -16971564, 1843078, 381715, 744103, -468688, -964757, 794032, 39192, 98247,
- -551903, 527744, -809601, -1572495, -2070174, 718333, 2201708, -392453, -3027415, -1359894,
- -2702071, -616865, 512712, -425202, -1396401, 1496259, -383863, 181462, -580894, -191126,
- -726386, -780073, 605590, 481036, 373662, 848793, -16643, 768799, 167504, 113817,
- -117038, 232465, -355409, -384400, 366683, 180389, -113817, -116501, 153545, 308164,
- -140660, 190589, -1611, 203474, -247497, -173946, -213675, -63351, 103616, 116501,
- 60130, 87510, 35970, -37044, 18790, 62277, -33286, 151934, 7516, -5906,
- 60666, -6979, -96100, -28991, 93952, 83215, -12885, 50466, 59056, -36507,
- -14496, -7516, 15569, -6442, 39192, 67109, -10201, -32212, 35433, -46708,
- -61203, 18790, 22549, 34360, -12348, -19864,
- },
- {
- -986769, 42009612, 5597416, 4808216, -233002, 260382, 219580, -15569, 384936, 615254,
- 277025, 899796, -340376, -858993, -208306, 537408, 622770, 1424319, 2177549, -1409286,
- -47782, 557272, -1169305, 178778, 1080184, -1022202, -431107, 397821, -198642, 732292,
- -186831, -1096290, 670015, 353261, -404264, -220117, 281320, 518080, -289910, -992674,
- 283468, 92879, -477278, 129386, 428423, -233002, -68719, 110595, 52613, 32212,
- -454730, 425739, -263067, 331786, -18790, -153008, 340376, 104690, -195421, -317828,
- -42413, 94489, 11811, -222265, -107374, 100932, 26844, -103616, -132607, -94489,
- 23622, 41339, 68719, -55298, -17717, -54224, 113817, -7516, -26307, -21475,
- -41339, 36507, -49392, -13959, 38655, 16106, 13959, -44023, -8053, 11811,
- -89657, -44023, 19864, -19864, -39192, 26307,
- },
- {
- -3846143, -35816808, -2084133, 4117263, -271657, 278636, -30602, -248034, 247497, -213138,
- -867047, -343061, 1775432, -522912, -176094, 109522, -51540, -581431, 69256, 139050,
- -247497, 159988, -35970, -319438, -323733, -208843, 153008, 349503, -354335, 521839,
- -117038, -642098, 298500, -135828, 195958, -118112, -328028, 176631, -111669, -63351,
- -331249, 92342, 178778, -359167, -532576, 394063, -78383, 43487, 27917, -50466,
- 145492, 42413, 77309, 22549, 246961, 2147, 56908, -78920, -92879, -153008,
- 234076, 141197, 91268, 72478, 103616, -54761, 0, 14496, -13959, 79994,
- -17180, -116501, 12885, 10201, 95026, -35433, 34360, -42413, 19327, 39728,
- 56371, 2147, -46171, -3758, -22012, -34897, -3758, -45634, -12348, 32212,
- 33286, -2147, -37581, 40265, 5369, -6442,
- },
- {
- 725313, -717260, -1693291, 521839, 43487, -186294, 236760, 699006, -666794, -19327,
- 794032, 273804, 1065689, -679142, 1137630, -1602560, -3658239, 8845485, -3725347, 949725,
- -232465, -420907, 219580, -1586454, -1639604, 865436, 1276142, 746787, -949725, 510027,
- 132070, 357556, -891743, 309238, 454730, 617402, 116501, -82141, 1074, 723165,
- 199179, 418222, -89657, 294742, -409633, 111669, 19864, -147640, 143881, 362388,
- -206695, 90731, 49392, 202400, 195421, 129923, 4295, -44560, -93952, 157303,
- -47782, -232465, -180926, 128312, 171799, -73551, -69793, -134755, 102542, 27917,
- -62277, 21475, 15032, 58519, 63888, -77846, 64425, 89121, 83215, -42413,
- -33286, -48318, -46171, 53687, -62277, -2147, 0, -52076, 33286, 38118,
- 67109, 44023, -12348, 11811, 26844, 9664,
- },
- {
- -7559143, -64206540, 1686312, -1435056, 619012, -233002, 339839, -48855, -403190, 443992,
- 461709, -365609, -123480, -1311039, 57982, -82141, -151934, 718333, -151398, 875636,
- 819802, -728534, -141734, -543313, -407485, 70330, -270046, -17717, -749472, -209380,
- -791348, -185757, -484794, 487479, -510027, 568546, 135828, 387084, 104690, 258772,
- 477815, 230854, 87510, 67646, -32749, 158914, -111132, 218506, -94489, 651761,
- -183073, 79994, 135291, 174483, -103079, -282931, 235686, 58519, -49392, -13959,
- -19327, 31139, 139586, 84826, -6979, -111132, 64425, 38655, -30065, 54224,
- -8053, 74088, 38118, 18254, 11274, -7516, 141734, -47782, 16643, 52076,
- -50466, -22549, -69793, 62277, 33286, 66035, -23085, 45634, -69256, -14496,
- 18254, 24696, -30602, -25233, 40265, 11274,
- },
- {
- 41876, 342524, -1474784, -1023276, -89657, 6442, 393526, 527744, 31139, -129386,
- 83215, -255014, 1009317, -843961, -1024887, -3775276, -2522220, 899796, 562104, -1205812,
- 140123, -638876, -1338419, -325344, 512175, -764504, -1239098, -271120, -1127966, -620086,
- -505732, -523449, -1314797, 809064, -108448, -75162, -47245, -92342, -195958, 448287,
- -93416, -832687, 345208, 250719, 209380, -159451, 248571, 162672, -119185, -41339,
- -39728, 29528, -81604, -373662, -8053, 24696, -27380, -101469, 11274, 108448,
- 56371, 34360, -214212, -39192, 105227, 94489, 183610, 278636, 0, -63888,
- -2147, 98784, 36507, 62814, 107911, 75699, -7516, 78920, -5369, 6442,
- 19327, 46171, 537, -26307, 21475, -22549, -45097, -40265, 2147, -33823,
- -5906, 1611, 537, -23622, -4295, -3221,
- },
- {
- 8518531, 12212203, -4954782, 770947, 300111, 73014, -209380, 226023, 221728, 177167,
- -51540, -687732, -28454, -85899, -1271847, 353261, -740882, -346819, 41876, 86436,
- -111669, 23085, 93416, 454193, -841814, 303869, 332323, -521302, -144955, -256087,
- 503048, -136902, 409633, 383326, 338766, 195958, 463320, 529355, -91268, -350040,
- -66035, 408022, -11811, -702764, -293668, 497142, -329102, -345208, 36507, 341450,
- 421981, 34897, -155156, -130460, 356482, 37044, -53150, -106300, 70330, -48855,
- 69793, 56908, 295279, -6442, -232465, 62814, -34360, -10201, 57445, -30602,
- 141197, 51003, 22549, 57445, -31675, -111132, 76236, 35433, -98784, -4832,
- -46171, -4295, 19864, 38655, -15032, 8053, 44023, 6979, -11274, 22012,
- 1611, -30602, 8590, 45634, -28454, -33823,
- },
- {
- 71941, 5179194, 3093987, -685047, 42413, -67646, -373662, 421444, 177704, 24159,
- 24159, 286689, -540629, -1110786, 4890357, -4204236, -3034395, 1809792, 851477, 1125281,
- 1201517, -938987, 1080721, 408022, 561030, -1925756, 1198833, 395137, -864362, 290447,
- -849867, 129386, 1010391, 381178, 437550, -591095, 3221, 745177, 750009, -208306,
- 461172, -317291, 137976, 445066, 123480, 199179, 359167, -306016, 241055, -20401,
- -205085, -145492, -32749, -229244, -8590, -252866, 224412, 78383, -65498, -110595,
- -8053, 26307, 298500, -207769, -10201, 157840, -29528, 27917, 55298, -17717,
- -90731, -108448, 67109, 23622, 126165, -128849, -90731, -16106, -28454, 31675,
- -46171, -31139, 37581, 43487, 10737, 16106, 32749, 62814, -14496, -11811,
- 10737, -6442, -12885, 1074, 6442, 37581,
- },
- {
- -1112933, -19773492, 5193689, -1859184, 282931, 2699387, -152471, -776852, -15032, 196495,
- 616328, -547608, 84289, -6979, -134218, -162135, -484258, 1841467, 187905, -837519,
- 170725, 65498, 56908, -207769, 928250, -443455, -181462, -365072, 489089, -852551,
- 411780, 9664, -698469, -25770, -32749, -470299, -32212, -253403, 347892, 194347,
- 488016, -537, 243739, 103079, 244276, 460635, 215285, -35433, -17717, 417149,
- -185220, -79994, 215822, -200253, -230318, 174483, 179852, 55835, -41339, 5369,
- -77846, -139586, 49392, 38655, 17717, 34360, 2684, 11274, 66035, 61740,
- 85899, -70867, -15569, 20401, -59593, -23622, -8590, -81068, 107374, -54224,
- -57982, 24696, 74625, 18790, 34360, 66572, -7516, -3758, 27917, 17180,
- 1611, 8590, 2684, -6979, 14496, 47245,
- },
- {
- 317828, -292595, 803159, -2331630, -91268, 419833, -907312, 246424, -154082, 941672,
- -289373, -880468, 232465, 345208, 1407676, -1171452, -937377, -79457, 1196148, -53150,
- -517007, 1223529, -115964, -54761, 518617, 930397, 440234, 34360, 794569, -98247,
- -105227, -338766, 117575, -599685, 1000727, 394600, -643171, 258772, 27917, -8590,
- -258772, 197032, 641561, 201327, -351114, -40265, 39728, -200253, 93416, -39728,
- -8590, -183610, -79994, -393526, -18254, 4832, 66035, -67646, 96637, -94489,
- 121870, 17180, -17717, 48318, 25233, 34897, 85362, 110059, -7516, -33823,
- 69793, 31139, 60666, 39728, 26307, -49392, -84289, -91268, 55835, 12885,
- -59056, 22549, -3758, -70867, -45097, -47782, -13959, 37044, -37581, -33823,
- 42950, -3221, -16643, 6442, 32212, -28454,
- },
- {
- -1481227, 13782013, -255551, 964220, 1066226, -1409823, 1415729, 403190, 248034, -686658,
- -1057099, 291521, -791348, 1396938, -319975, 168041, -331786, -441308, -179315, -197032,
- -117575, 14496, -10201, 214748, -668941, 572304, -307627, 661962, 191126, 124554,
- -13422, 403727, -175557, 89121, -187368, -237834, -153545, -507343, -165893, 301185,
- 563714, -56371, 258772, -428423, 97174, -430034, -30065, -82678, -111669, 78920,
- 170188, -200253, -56371, -218506, 41339, -77309, 78920, -249108, 48318, -165893,
- 228707, -236760, -22012, -9127, 45634, -142808, 11274, -14496, -3221, 70867,
- 41339, -24159, -10201, 20401, -21475, -5369, -17180, 8053, -63351, -22549,
- -8053, 96637, -12348, 51540, 0, 10201, -4295, 13959, 6979, 24159,
- 5906, 2147, 25770, -32212, 14496, 44560,
- },
- {
- -192200, -3782793, 1362578, -1025423, -529355, 406411, 60666, -312459, 585726, -922344,
- 576063, 1612760, 3323231, 9587441, 1019518, -774705, -974958, 1404991, -1144072, -284005,
- -3802657, 2213519, 1058710, -498216, 1156420, 1346472, -1387811, 1577327, -382252, 1786706,
- -1369558, 240518, -881005, -534723, 423591, -156766, 530428, -31675, 145492, -226023,
- 91268, 76773, -115427, -72478, -114354, 22012, 54761, 147640, -21475, 257161,
- -69256, -61740, 126702, 100395, 317291, 136902, -52613, 81068, -106837, -178778,
- 39728, 246961, 39192, -51540, -16643, 37044, -69256, -22012, 9127, 37044,
- -28991, -128312, 51540, -112206, 101469, 50466, 110059, -15032, -70330, 53150,
- -59056, -88047, 10737, -47782, -13422, -1611, 46708, 14496, -35433, -23622,
- -88584, 40265, 37044, -27917, -18790, 45097,
- },
- {
- 1315334, 13368086, 2196339, -2783139, 362388, -404801, -2776160, 1053878, -346282, 386010,
- -1103270, -249645, -522912, -3594351, -243203, 596464, 914828, 185757, -522912, -8053,
- -38655, 308701, 177167, 853088, 972273, 122943, 472983, 593779, -352187, -485331,
- -169114, 137439, -236223, -377957, 447750, -41876, 54224, -31675, -353798, 24696,
- 338229, 341987, 140123, 6979, 286689, -258772, -255551, 417149, -428960, 247497,
- 73551, 47782, -181462, -116501, -121870, -148713, -11811, 142808, 39192, 177167,
- 87510, 57982, -54224, -186294, -30602, 19327, 33823, -59593, 39192, -86973,
- 18254, -131533, -55298, 22012, -83752, -32749, 7516, 4832, -39192, -45097,
- -47245, -66572, -54224, -56908, 16643, -41876, 60666, 54761, -18254, -48855,
- -14496, -25770, -31139, -39728, 16106, 12885,
- },
- {
- -256087, -3570729, 1088237, 1098438, 81068, 47245, -180389, -30065, -100932, 977642,
- -155156, 479963, -770947, -3524021, -13105019, -1723893, 544387, -267362, 1518808, -1605244,
- 376347, 1923609, -952409, -496069, 828392, 359704, -1337882, -367220, 1074, -66035,
- -79994, 408559, 613643, -148713, -255014, 25770, -221191, -465467, -392453, -180926,
- 777389, 360777, -241055, -34360, 182536, -103079, -197569, -78920, 255014, -45634,
- -170188, 270046, 303869, -150861, -65498, 68719, -172336, -22012, 52613, 242129,
- 157840, -77846, -107374, 143345, 141197, -27380, -26307, 112743, 125091, -48318,
- -61203, -63888, 54224, -25770, 2147, 6442, 26307, 54761, 11274, 19864,
- -146029, -35433, -49929, 62277, 33286, -81604, 34360, -30065, -28991, 22549,
- -10201, -9127, -4295, 12885, -23622, -42950,
- },
- },
- {
- {
- -3366181, 17725330, 15316927, -652835, 804770, 1091459, -278099, 763430, 446677, -361851,
- -842350, 758062, 950262, 706522, -3020973, -721018, 82678, 587337, -970126, 1639067,
- -529355, -1046898, -413391, 61203, -307090, -136902, 768262, 34897, -449898, -90194,
- -199179, 50466, -355409, 213138, -147640, 115964, -573915, 161598, -260919, 413927,
- 645319, 381178, -111132, 178241, 18790, -81604, 524523, -373662, 28991, 95563,
- -208306, -11274, 110595, 10737, -29528, -199716, 141734, -134218, -145492, 1074,
- -243203, -50466, 57445, 49929, 34897, 74625, -68719, -71404, 5369, 38655,
- 224412, -1074, 24159, -126702, -59056, -10737, -45097, 1611, 68719, -83752,
- 26307, -59056, -74625, -4295, 18790, 35970, -99321, -30065, 8590, 4832,
- 8590, 2147, -25233, -8053, -20938, -11811,
- },
- {
- 222801, -13282723, -2872796, -776852, -424128, 460635, -1388885, 264677, 6979, 294205,
- -325344, 151398, -826781, -602906, -1842004, 920197, 1851131, 306553, -2742874, -1446330,
- -875100, -830002, 302795, -297963, 153545, -204011, 494995, -1214402, -241592, 392990,
- -1278290, -224949, -383326, 121333, 351650, 598611, 651761, 212601, 559420, -51003,
- 197032, -353261, -463320, -260919, 240518, 72478, -102005, -147640, 429497, -124017,
- -7516, 68719, -127238, -96100, -62814, 197032, -124017, -25770, 132607, 11811,
- -166430, -56908, 90731, -38118, -45634, 67109, 11274, -76236, 75162, 24696,
- 3221, -59056, 44023, 5369, 10201, 40265, 87510, 109522, 5369, -118648,
- 48318, 18254, 44560, -20401, 24159, -32749, -43487, -1611, -20938, -30065,
- 9127, 7516, -2147, -99858, -537, 31139,
- },
- {
- 423591, 48506824, 4428648, 2609730, -2400350, -218506, 332323, 623844, 43487, 415001,
- 249645, 714575, 1418950, -2095407, -1418413, 568009, 258235, 1673427, 460635, -138513,
- 794569, -70867, -100395, 608275, -256624, -1510218, -277562, 406948, 351650, -788663,
- 562641, 260382, -297963, 340376, -138513, 265751, -819802, 812823, -332860, -288837,
- 67646, 465467, -252329, -339839, 450972, -457951, -97174, -228707, 75699, 137976,
- -357019, 133144, -183610, 461172, -330176, -140660, 25233, 137976, 33286, -182536,
- -162672, 46708, -127238, -259309, -21475, 45097, -88584, -7516, -187368, -31675,
- -86973, -13959, 18254, -2684, -103079, 75699, 179852, -20938, -137976, 27380,
- -25770, -85362, -4295, 85899, -26307, -28991, -47782, 4832, 0, -20401,
- -30602, 18790, 26307, -16106, 10737, -4832,
- },
- {
- -2281165, -39209832, 190589, 3272765, -987306, 256087, -205085, 229244, -268972, -178778,
- -425739, 167504, 209380, 991601, 192200, 596464, 140660, -484794, -351650, 424665,
- -186831, 26307, -51003, -130460, 149787, 3758, 212064, 192200, -212064, -551903,
- -198105, -185220, -67109, -476205, 388158, -592169, 47245, 46171, 114354, -280784,
- -136365, 176094, -17717, -402116, -119722, -176631, -217970, 155156, 200790, 74625,
- -52613, 81604, 203474, -68183, 87510, 24696, -125628, -218506, 9127, 90731,
- 1074, 33286, 56371, 79994, -139586, 70330, -134218, -46708, 124554, -79457,
- -32212, 15569, 125628, -8590, 71941, -15032, -7516, -32212, 26307, -11811,
- -19327, 7516, -50466, 48318, -42413, 18790, 4295, -37581, 53687, 13959,
- -28454, -537, 1074, -12348, -2147, -5906,
- },
- {
- -693100, -2204392, 2406256, -244276, -235686, 252866, 196495, -105227, -404801, -199716,
- 645856, 246961, 795106, 1494649, 630286, -1580011, 1415192, -486942, -1449015, 1170916,
- 312996, 399969, -1084479, -170725, -797790, 1873143, -377957, 394600, 223338, -336081,
- -59056, 873489, -421444, -501974, 914291, -49392, 621160, -475668, 466541, 754304,
- -537, 378494, -392453, -42413, -212064, -116501, -68183, -161061, -102542, 220117,
- -108985, 196495, 186831, 13422, 284542, 170188, 98784, -226560, -98247, 124554,
- -30602, -263067, 35433, -40802, -207769, -167504, -80531, -41339, 90194, -15032,
- -35970, 89657, 115427, 76773, 70867, -72478, 90731, -1074, -47245, -79994,
- -107374, -43487, 80531, 7516, -84826, 10737, -42950, -9127, 53687, 18254,
- 32749, 0, 9127, 56371, 5906, -26844,
- },
- {
- -2494302, -68554120, 2163590, -489089, -664646, 163209, -208843, -402116, 646393, -105227,
- -1007170, -68183, -59593, -586263, -854699, 427349, 221728, 410169, 10201, 394600,
- 191663, -1002875, -113280, -440771, -44560, 73551, 145492, -511638, -289373, -474594,
- -821413, -15569, -1074, 270046, -12885, 292058, -236223, 419833, 351114, 342524,
- 37581, 296890, -4295, -125091, -33823, 59593, 289910, 64425, 3221, 382789,
- 64961, 42413, -89657, 201863, -190052, -132070, -95563, -204011, 157840, 127775,
- 5906, 38655, -137439, 14496, -18790, -19327, -40802, -62277, 61740, -54761,
- 46171, -39728, 69256, 52613, -33286, 77846, -5369, -10201, 93952, 70867,
- 2147, 37581, 60130, 93952, -18254, 5369, -32212, -11274, -56371, 8053,
- -1611, 10737, -46171, 44023, 35433, 22012,
- },
- {
- 278099, -3185792, -885300, -5906, -102005, 144955, 82141, 892279, -409633, 202400,
- -228170, 221191, 594316, 953483, -2839510, -2104534, 1273995, -1042603, 777389, -38655,
- -399969, 161598, -1939715, 90731, 1216013, -1906966, 918049, -1580011, -477278, -413391,
- -1165547, 303869, -652298, 28454, -629750, -285615, 32749, 322123, -55835, -265214,
- -326954, -42950, 110059, 551903, 219043, -417686, 78920, 264141, -163746, 89657,
- -53687, -13959, -190052, -237297, -125091, -11274, -98247, 10201, -49929, 195421,
- 165893, -19327, 4295, 33286, 33286, 76773, 162135, 64961, 22549, 102005,
- 111132, -64425, -75699, 90194, 40802, 42950, -63351, -30602, -16643, -43487,
- 25770, 18790, 34897, -26307, -12348, -39192, -21475, 31139, -2684, 30065,
- 61203, 49929, -10201, -46171, 24159, 14496,
- },
- {
- -4775467, 21806086, 5585605, 361314, 478889, 266288, -300648, 341987, 566399, -170188,
- -274341, -155693, 55835, -1539746, -1255741, 204548, -341450, -54761, 383326, -257698,
- -257698, 340376, -410169, 299574, -49392, -93416, -1611, -743029, -95563, -374736,
- 242129, 225486, 686658, 31675, 198105, -287763, 484258, 194347, 88584, -432718,
- 76773, 148176, 413927, -566399, -455267, 164283, -113817, 48855, 282931, 172872,
- 94489, -153008, 157840, 242129, 48318, 93952, -220117, -79457, 31139, 11274,
- 151934, 102005, 183610, -26307, -133144, 39192, -89121, 114890, 7516, 78920,
- 126702, 9664, 35970, -38118, -135828, 18790, 1611, -98784, 22549, -80531,
- -31675, 24159, 48318, 38118, 28454, 17180, 33286, -56371, -27380, 12885,
- -9664, 11274, -10201, -6979, -46171, -13959,
- },
- {
- 743029, 4154844, 26844, 227633, -281857, 112743, -161598, -30065, -183073, -23085,
- 250182, 797253, 205622, -514322, 920734, -1821603, -1890323, 1251983, 1061394, 1224603,
- -240518, 253940, 1247688, -241055, -836445, -358093, 988916, 20938, -683974, -564251,
- 631360, -476741, 1234803, 853088, -136902, -515396, -117575, 715112, 568009, 10737,
- -154619, -346819, 253940, 28454, -96637, 196495, 140660, -105764, -22012, 155156,
- -38655, -12348, -8053, -409096, -136365, 125091, -48855, -99858, -217433, -537,
- 75162, 222265, 115427, 24696, 224949, 234613, 159451, 48855, 54224, -537,
- 2147, 13422, -10201, 19864, -70330, -118648, -95026, -32212, 537, 16106,
- -18254, 35970, 138513, 46171, -29528, -16643, -46171, -60130, 5369, 44023,
- -19327, -10737, -6979, -33823, -8053, -3758,
- },
- {
- -243203, -19477140, 622233, 931471, 734439, -561030, 4094178, -883690, -285615, -200253,
- -20938, -595390, -557272, 227633, -243739, 137976, -888521, 1813550, -670015, 593779,
- -78383, 70330, -639413, 393526, 435939, -133144, 16643, -372052, -246424, -292058,
- 324807, 81604, -248571, -1478543, 377957, -175020, -115427, 60666, 271657, 296890,
- 124554, -177704, 192200, 428423, -175020, -111669, 217433, 40265, -37044, -130997,
- -179315, -91805, -90731, -107374, 2684, 176094, 70330, 102005, 56908, -67109,
- 153545, -134755, 11811, -19327, 11811, 25770, 11811, 41339, 55298, -71941,
- 42950, 61740, 17717, -77846, -38655, -53150, 12348, -66035, 30602, -6442,
- 49392, 27380, 9664, -25770, 56908, -63888, -89121, -21475, -50466, 20401,
- 10737, 1611, 44560, 26307, -8053, -27917,
- },
- {
- -395137, 2467996, -2856153, -171262, -380105, 368293, 248034, -440771, -292595, -333934,
- 141197, 55298, 337692, -271657, 2105071, -587874, -552977, -67646, -411780, -163746,
- 1119913, 998043, -408022, 82678, 824097, 411243, 418759, -359167, 683437, 847182,
- -215822, 39728, 126702, -482110, 542777, 2684, 237834, 243203, 33286, 100395,
- -371515, 251256, 706522, -320512, 33823, 97711, -307627, -135291, -125091, -21475,
- -144955, -201327, -36507, -59593, 120259, 17180, 17180, -76236, -116501, -4295,
- 62814, -106837, 199179, 78920, -17180, -132607, 52076, 18790, -86436, 5369,
- 125091, 44560, 135828, -19327, -42950, -41876, 57982, 31139, 91805, -12348,
- -45634, -46708, -55298, 29528, 22549, -34360, 12885, -5369, 26307, 33823,
- 4832, 4832, 7516, -11274, 9664, -17717,
- },
- {
- 2195265, 9210557, 1816234, -163209, -652298, -658204, 1123671, 1113470, 348429, 65498,
- -363462, 83215, 995359, -689879, 44023, -35970, 412854, 60130, -264141, -411243,
- -92879, -507343, 24159, 616865, -143345, 153008, -363998, 138513, 486942, -235149,
- 236223, 299574, 333934, 318901, -319975, -66035, 318901, 56371, 278099, -168041,
- 293132, 310848, -151398, -595390, 109522, -264677, -18254, -88584, -195421, 61203,
- -282394, -103616, -177167, -216359, -44560, -63351, -2147, 33823, 6979, -4832,
- -83215, -71941, -41876, -78383, -128849, 97174, 80531, 51540, 17717, -2147,
- -4832, 46708, 4295, -26307, -77846, -12348, -4295, -4832, 46708, -17717,
- -24696, -6979, 39192, 32212, -24696, -20938, 30602, 1074, 37044, -12348,
- -46708, -30602, -52076, 20401, 23085, 13959,
- },
- {
- 159451, -2771865, -314069, -721555, -526670, -209917, -85362, -22549, 576599, -557809,
- 257698, 479426, 4819490, 12750147, -4400731, -137439, -491774, -422517, -1185411, -651761,
- 391916, 238908, -406411, -397821, -213675, 562641, 455803, 273804, 309775, 820876,
- -1173063, 281857, -746251, -98247, 120796, 892279, -13959, -251256, 391379, -470299,
- -124017, 222265, -63351, -514322, 461709, -216896, -347355, -158914, 34360, 167504,
- -55835, -348966, 166967, 102005, 67646, 149250, -136365, 215285, -113817, 33286,
- 260919, 199716, -152471, -197569, -18254, 80531, -98784, 89121, 22549, -23622,
- -74625, -13422, -49392, -63351, 38118, -22012, -89657, 41339, 38118, -14496,
- -537, 69256, 54761, 17180, 16643, -10201, -9664, -24696, -37044, 8590,
- -11274, -45634, -60130, -6979, 28454, -18790,
- },
- {
- 1982127, 14843407, -2486786, 1895691, 426276, 711354, -1653562, 959388, -43487, -361851,
- -84289, -2419140, -12885, 527744, -5749351, 567473, 2863133, -529892, -491237, 291521,
- -17717, -127775, -114354, 650151, 1015760, 398358, 96637, 443992, -676457, -362388,
- -145492, -155156, 513785, 329639, -228170, 200253, 551366, 334471, -92342, -99321,
- -277025, -39192, 363998, 31675, 707596, 24696, 70867, -51540, 9127, 54761,
- -175020, 31675, -52613, -123480, -71404, 77846, 275952, 13422, -35970, 45634,
- 202400, 123480, -119185, 77309, 104153, 129923, 62814, -20938, -23085, -18254,
- 82678, -195958, -41876, -17717, 10201, 31139, 11274, -55835, 13422, 61203,
- 17717, -57982, 14496, 28991, 11274, -5369, 33823, -18254, -59593, 17717,
- -57982, -30602, 10737, -24159, 1074, -4832,
- },
- {
- 39192, -2292976, 144418, 332860, 530428, 103616, -184684, -403727, 551903, 380105,
- 349503, 605590, -35433, -4687420, -18485540, -1934346, 1574106, 66572, 1324461, -1481764,
- 1938104, 280784, -353261, 162672, 773631, 372052, -828929, -473520, -244276, 79994,
- -230318, 671626, 242129, -310848, -631897, 468688, -924492, -532576, 260382, -652298,
- 572304, -140660, -250719, 124554, 386547, -321049, 16106, 133681, 36507, -253940,
- -157303, 117575, 76236, -57982, -23085, -54761, -289373, -166430, 61740, -177167,
- -37044, -9127, 97174, 74625, 8053, -71404, 164283, 198642, 18254, -34360,
- -61203, -97711, -81068, -10201, -75162, -15032, 95026, 9664, -8053, -107374,
- -24696, 18790, 32212, 52076, -68183, -2684, -42413, -11811, 25770, 1074,
- -6442, 11811, 2147, -22549, -26844, 3758,
- },
- },
- {
- {
- 5842766, 4699768, 5328981, 1782948, 363462, 211527, -358093, -222265, -336081, -360240,
- -457414, 501437, 475668, 407485, -2301566, 1079647, 297963, -215285, -1027034, 1891933,
- -290447, -362925, 583042, -381178, -228707, 270046, 521839, -63351, -403190, -259309,
- 287763, 38118, -603980, 501437, 421981, 173946, -598611, 76236, -177704, 329639,
- 467078, -56371, -630286, 217970, 326954, 158914, 245350, -71941, 301721, -240518,
- -220117, 77846, 373125, 282394, 230854, -72478, 220117, 127238, 188442, 59056,
- -133144, 28991, 101469, 61740, 40802, 117575, -114890, -87510, 56908, 27917,
- 97174, -110595, 73014, -22549, 25770, -42413, -72478, 59056, 8053, -107911,
- 13422, 5369, -30065, -12348, 24159, -29528, 1611, -13959, -37581, -52613,
- 13959, 8053, 20401, 23085, 2684, -12348,
- },
- {
- -69793, -3772055, 5218386, 191663, -660888, 462246, -1384590, -353261, -46171, 419296,
- -400506, 22549, 186294, -18790, -1192927, 210453, -770947, -54224, 1206349, 1188632,
- -20401, -931471, -64425, -208306, 738734, -398358, 460098, -388695, 102542, 698469,
- -505196, -155156, -375810, 325344, -399969, -229244, -167504, -301185, 549219, 217970,
- 335544, 37581, 121333, 18254, -73014, 537, 45634, 124017, 209380, -159451,
- 58519, -160524, -25233, 95563, 249645, 117038, -205622, -120259, 124017, -62277,
- -251792, -96100, 65498, 60130, -16643, 85899, 537, -48318, 72478, 32212,
- -25770, -9127, 65498, 11274, -19327, 61203, 27380, 20938, -78920, -97711,
- 116501, -537, 10201, -15569, -16106, -12348, 15032, -13959, -54761, 23085,
- 30602, -3221, -13959, -85899, 11811, 27917,
- },
- {
- -491237, 41166188, -1089848, 874563, -337692, 415001, -27380, 388158, 150861, -319975,
- -926639, 35970, 814433, -831613, 289373, -312459, -941672, 1066226, -90731, -1333051,
- 732292, -57982, 452045, 403190, -599148, -1216550, 150324, 179315, 175557, -967441,
- 545998, 0, -788663, 192737, -40265, 420907, -293132, 566936, -181462, 409096,
- 267362, 271120, -49929, -36507, 223338, -468688, 139586, 45634, 204548, 197569,
- -102005, 82141, -212601, 402653, -190052, 92342, -121333, 99858, 187368, 6979,
- -137976, -31675, -25233, 37581, 5906, 16643, -98784, 70867, -38118, 88047,
- -40802, -121870, -51540, 74625, -39192, 74625, 19327, -42950, -2684, 20401,
- -46171, -91805, 22012, 82141, -30602, -42413, -54761, 27917, -4295, 12348,
- -6979, 5369, -21475, 9127, -1074, -32212,
- },
- {
- 4787278, -29979946, -86436, 2945274, -1125818, 310848, -131533, 226023, -420907, 159988,
- 25233, 162135, -643171, 525060, 1040456, 1064615, -368293, 401043, 734439, 547608,
- -100932, -124554, 227633, 127238, 99321, 3221, -188979, 14496, -483721, 150861,
- 147103, -306016, -128849, -841814, 140123, -631360, -317291, 353261, 227096, -60666,
- 367220, 51540, -257698, -484258, -4295, -249645, -127238, 279710, 221191, -155693,
- -71404, 64425, -41339, -144955, -222265, 35433, -28454, -229781, 59056, -47245,
- -181462, -69793, -43487, -48318, -151934, 53687, -104690, 45634, 46171, -142271,
- -5906, 79457, 68719, -54761, 40265, -61203, -19864, -61203, 3758, -4832,
- 2684, 33823, 17717, 13422, -47782, 10201, -20401, 35433, 23085, -34897,
- -41876, 24696, 2684, -27380, -1074, 8053,
- },
- {
- 429497, -4204773, -554588, -659814, -56371, 55298, -176631, -271120, -228170, -91268,
- 364535, -302258, -18790, 77846, 703301, 579284, 372588, -5051956, 2115272, 689342,
- 571231, 1056562, -1277216, 629213, -1187559, 814970, -1178432, 112206, 667331, 593242,
- 99321, 830539, -217970, -724776, 17180, -555125, 477815, -555125, 215285, 404264,
- -68719, 126702, -472983, 43487, -148713, -303869, -120796, 34897, 33286, 25770,
- 216896, 302795, 104690, 185220, 132070, 83215, 105227, -128849, -9664, 91805,
- 121870, -138513, 122943, -73551, -280247, -73014, 21475, 80531, 30602, -19864,
- 102542, 75699, 63888, -43487, -2684, -126165, 88047, -22549, -86436, -33286,
- -19327, 42950, 46708, -62277, -1611, 26307, 3758, 27917, 10201, -7516,
- -3221, -23085, 12348, 46171, -30602, -7516,
- },
- {
- 6715718, -50121196, 5780489, -355945, -1292248, 127775, -448824, 392453, 729071, -529892,
- -552977, 251792, 227633, -433792, -514322, 1778653, 464930, -281857, -73014, -235686,
- -270046, -415001, 64425, -506806, 88047, 358093, -58519, 66035, 329102, 157303,
- -293668, 176631, -204011, -266288, 214212, -163209, -401043, 65498, 93416, 337155,
- -168577, 81068, -666257, -32212, 274878, 82141, 89121, -151934, -161598, 137976,
- 63351, -287226, -292058, 68183, -63351, 46708, -96637, -221728, 88584, 53150,
- -7516, 29528, -168577, 15569, 139050, 55835, -61203, -80531, -20938, -63888,
- 66035, 29528, 31675, 9664, 25233, -2147, -33286, 30602, 76773, -12348,
- 33286, 83215, 4295, -10737, -40265, -3758, 7516, -30602, 24159, 12348,
- -5906, 4832, -5906, 85362, -16643, -6442,
- },
- {
- 134218, -3762928, 630286, 333934, -49392, -66572, -370978, 535797, -335544, 235149,
- -148176, -19864, -23085, -261993, -2735357, 723165, 2506650, -823023, 1304596, 673773,
- -792958, 418222, -1043677, 134218, 1236951, -710280, 1653562, -852014, -268435, 436476,
- -409096, 925565, -47782, -521302, -296890, -24696, 139586, 473520, 129386, -258772,
- 56371, 672162, 159451, 267362, 16643, -169651, 56908, -23622, -55835, 302795,
- -216359, -121333, -70330, -33823, -143881, -110059, -56908, 158914, -167504, 84826,
- 41339, -28454, 6979, 31675, -6979, 9664, -82141, -183073, -57982, 146029,
- 27380, -150324, -46708, 20401, -54224, 44023, -117575, -42413, 38655, 3758,
- -7516, -10737, 37581, -4295, -25770, 8053, 10737, 0, 13959, 31675,
- 19864, 10737, -6442, 8053, 11811, -10737,
- },
- {
- 1801202, 21794812, -809064, 78383, -697932, 238371, 273804, -391916, 200253, -270046,
- -218506, 685584, 178241, -526670, 93416, -27917, 62277, 507343, 98247, -244276,
- 241592, 331249, -684510, 168577, 434329, -275952, -17180, -514859, 120259, -426276,
- 100395, 69793, 410169, -129386, 111669, -332323, 395137, -96100, 218506, 5369,
- 128849, -397284, 339302, -132070, -382252, 409633, -52076, 90731, -156229, -198105,
- -47245, 2684, 14496, -62277, -30065, 120259, -141197, 71941, 185220, -3221,
- 105227, -9664, -13422, 3758, 3221, 65498, -32212, 150861, -11274, 23085,
- 46708, 1074, -43487, -61203, -16106, 73551, -71941, -34897, 87510, -96100,
- -21475, 32212, -12348, -11274, 20938, -35433, 12348, 3758, -29528, 2147,
- 19864, 23622, -5369, -1611, -5906, 20401,
- },
- {
- -93416, -1131187, -424128, 606664, -79457, 140660, -294742, -310311, -137439, 82678,
- 54224, 350040, -120796, 847182, 1119913, -1234266, 52613, 173409, -276489, 766652,
- -214212, -600222, 283468, 79457, 1002875, 245350, -1069984, 9127, -259846, -414464,
- 1418413, -1024350, 355945, -59593, -500364, 417149, 30065, -215822, 409633, -299037,
- -305480, -222265, -215285, -208306, -19864, 32212, 78920, 315680, -5906, 198642,
- 58519, -44560, -81604, -253403, -24696, 186294, -106300, -129386, -4832, 217970,
- 101469, 15569, -96100, 89657, 121333, 82141, 92342, -25233, 15032, 46171,
- 68183, 7516, -41339, -42413, -86436, 18790, -19327, -56908, -25233, -3758,
- 26844, 44023, 17180, 19327, -30602, -65498, -64961, -22549, 14496, 16643,
- -28454, 22549, -10737, -41876, -43487, -17717,
- },
- {
- 1188095, -24677272, -6532109, 1099512, 706522, -2956011, 1604707, -591632, -246424, -479426,
- -75162, -591095, -135828, 291521, -1328756, 455803, -810138, 437550, -825171, 781684,
- -720481, 28454, -509491, 114354, -345208, -357019, 254477, -410169, -323733, 113817,
- 108985, 227633, 454730, -905701, 710280, 143881, 125628, -48318, 212601, -33286,
- -111669, -277025, 367757, 308701, -438624, -218506, 64425, -81604, -59056, -95563,
- 50466, 56908, -48855, -28991, -59593, -30065, -6979, 39728, 32749, -61740,
- 35433, 8053, 19864, -65498, 8590, -63351, 27917, 47245, -37581, -47245,
- -6979, 6979, -23085, 4832, -30602, 15569, 19864, 37044, -54224, 11811,
- 76236, 10201, -70330, -34360, -10201, -72478, -42950, 3758, -48855, 18254,
- 20401, 11274, 1611, -9127, -20938, -31139,
- },
- {
- 288300, 4468377, -1628866, 2158758, 31675, -108448, 205085, -1150514, -555661, -333934,
- 463856, 813896, -107911, -1045825, 319975, -401579, -588947, -445603, -1320166, 391379,
- 462783, -53150, -84289, 349503, 70867, -681826, 337692, -707059, 523449, 507343,
- -150861, -147103, -5906, -207232, 60130, -135291, 485868, 133144, -219043, -168577,
- -292595, -98784, 214748, -289373, 186294, 137439, -129923, -64961, -107911, -102005,
- -117575, 64961, 71941, 139050, 71941, 55835, 15569, -66035, -48855, 13422,
- -118112, -44023, 199716, -26307, -34360, 25770, -2684, -20401, 17180, 28991,
- 153008, 8053, 73014, 3221, 12348, 35433, 97174, 41876, -3758, -29528,
- -3221, -6979, -55835, 71941, 32749, -35433, 38118, -11811, 24159, -10201,
- -33286, 5369, 20401, -537, -24696, 11274,
- },
- {
- -2051384, 2142115, -797253, -1422171, -460098, 865973, 284005, 161061, 127775, 244276,
- 617402, 55835, 937914, -1300301, 455803, -39192, 332323, 377420, -400506, -148176,
- -208306, -205085, 143881, 397284, -369904, -94489, -503585, 128849, -51540, -266288,
- -155156, -210453, 228707, -195421, -263067, 120796, 688805, 594853, 153008, -331249,
- -156229, -40802, -85362, -204011, 181999, 24696, 7516, 20401, -83215, 82141,
- -291521, 113817, -107374, 95026, -13422, -88584, -69256, 73551, 63888, -44023,
- -159988, 88584, 76236, -73014, -43487, 117038, 83752, 76236, 37581, -86436,
- 22012, 28454, 6979, -8590, -43487, 38655, -9664, 22012, 61203, -11811,
- -25770, -59593, 38118, 12885, 2147, 39192, -6979, -20938, 4832, -46708,
- -22012, -21475, -13959, 25770, -8590, -8053,
- },
- {
- -146029, -705985, 1015223, -919123, -192737, -199179, 104153, -337692, 566399, -231391,
- -122943, 202400, -2693481, 1276679, -4266513, 2544768, 338766, 1098975, 268972, -17717,
- 1809255, -1707786, -2177549, 167504, -49929, -347892, 163746, -332860, 301185, 169651,
- -194347, 297427, -822486, -23622, 97174, 616328, -520765, -73014, 317291, -95563,
- -118648, -82141, -242129, -552977, 333397, -286689, -474594, -95026, -72478, 189515,
- 77846, -379031, 192737, 51003, -202937, 15032, -61740, 122943, 17180, 178778,
- 105227, -53150, -96637, -18790, 57982, 30065, -105227, 110595, -49392, 61740,
- 15032, 108448, -97711, -56908, -18790, -32749, -61740, 37581, 44023, -12348,
- 45097, 60666, 9127, 3758, 2684, 8590, -46708, 13959, -20401, 60130,
- 4295, -79994, -33823, 47782, -19864, -15032,
- },
- {
- -3231426, 9835475, -624381, 1867774, 159988, 1210107, 408559, 900333, -456340, 221191,
- 511101, -1476932, 793495, 1411971, -4882841, 454193, 1716913, -206695, -373125, -377420,
- -122943, -227096, -456340, -368830, 421444, -113817, 406411, 487479, -774705, 270583,
- -32212, 326954, 856309, 217433, -447213, 510027, 437550, 127238, 28991, 45097,
- -288837, -631360, 276489, -70330, 488016, -139586, -85362, -357556, -45634, -202400,
- 13959, -107374, -70867, 98784, 98784, 2684, 119722, -148176, 17717, -223338,
- 86436, 132070, -17717, 184147, 70867, 127775, 39728, 69793, -36507, 56371,
- 81068, -50466, 34897, 19864, -16643, 30602, -5906, 25233, 44560, 48855,
- 23085, -15569, 74088, 9127, 31139, -537, -54224, -22549, -9664, 23085,
- -32749, 10201, 16106, 16106, -17717, 2147,
- },
- {
- -142808, -2066416, -601295, -321586, 129386, 29528, -66572, -49929, 781684, 564788,
- 459562, 95563, -166967, 5590974, 209380, 715649, 349503, 53150, 1990181, -1350230,
- -67109, -567473, 245350, -69256, 39192, 496606, 199716, -343061, -757525, -830002,
- -491774, 355409, -653909, -3221, -13422, 54761, -552977, 143345, 299037, -497679,
- 55835, -212601, -112206, 159451, 163746, -155693, 54224, 81068, -42950, -173946,
- 73551, 18254, -81068, 125091, 75699, -91805, -285615, -137439, -78920, -304943,
- -4295, 24159, 23622, 9664, 14496, -17717, 119185, 19327, 12348, 11274,
- 3758, -60130, -37044, 20938, -67109, 78383, -28991, -22549, 11811, -29528,
- 74088, 45097, 30065, -36507, -24159, 40265, -50466, -18254, 34360, -23085,
- -12348, 24696, 12348, -14496, -1611, 12885,
- },
- },
- {
- {
- -6917045, 33987148, -3126736, 2028835, 504122, -552977, 119722, -388695, -25770, -160524,
- 468151, -317828, -367220, -460635, -273267, 789200, 315680, -651224, 391916, 630823,
- -201327, -287763, 500901, -198642, -300111, 118648, 37044, 125091, -142271, -268972,
- 38655, -62814, -4832, 506806, 139586, -242129, 248034, 303869, 31139, -142271,
- 227096, -207769, -60666, 64961, 236760, 406411, -184147, -86973, 124554, -78920,
- 116501, -55298, 290447, 136902, 126165, 142808, -45634, 56908, 106837, 40802,
- 137976, 5369, -25233, -6442, -49392, 19327, 36507, 21475, -11274, -41339,
- -31139, 0, 32749, 36507, -38118, -93952, -15032, 2147, 15032, 39728,
- 38655, 78383, 7516, -9127, -11811, -30065, 62814, -28454, 24696, -29528,
- 5369, 3758, 14496, 5369, 10737, 1611,
- },
- {
- 408022, 4048007, 62814, 1083406, 412854, -775778, -542240, -78920, 12885, -279710,
- -1074, 181462, 172336, -618475, -261456, -927713, -1892470, -377957, 1829656, 641561,
- 56908, -839666, -1347009, 110595, 261993, 702227, 45634, 45097, 570694, 367757,
- -316754, -107374, 386010, 46171, -377957, -278636, -164283, 57982, 140660, 383326,
- -103616, 438624, 436476, 161598, -25233, -66572, 137976, 38118, -537, 78383,
- 87510, -135291, 223338, 213675, 100932, -285615, -113817, -122407, -8590, 70330,
- -1611, -1074, -84826, 76236, 42413, -45097, 112743, 134218, 4832, -17180,
- 72478, -1611, -27380, -12885, 43487, 41876, -78383, -52076, -43487, 47782,
- 19327, -35970, 11274, 39728, -26844, 55298, 47245, -51003, 17180, 34897,
- -45097, -12885, 27917, 20938, 34897, -30065,
- },
- {
- -151398, 23111220, 8017630, 3263102, 2166811, -353261, 212601, 195958, -221191, -497679,
- -7516, -488553, -427349, 86973, 539555, -340376, 19327, 176631, -376347, -539018,
- -31139, 439160, 188979, 77309, -383863, -230854, 248571, -225486, 18254, -295279,
- -715649, 1611, 15569, 186294, -307090, 63351, 748398, -382252, 4832, 11274,
- 293132, -121870, 348429, 151934, 304406, -35970, -93952, 226560, 173946, 2684,
- 150324, -13422, 166967, -32212, 280247, 85899, -68719, 25770, 2684, 26844,
- 22012, 33286, 119722, -55298, 23085, 125628, -52076, 1074, 62814, 67646,
- -27380, -75699, 22012, 25770, 5369, -15569, -68183, 16106, 46708, -36507,
- -28991, -22549, 45634, -13422, 20938, 12885, -2684, -24159, 6442, 12348,
- -22549, -54224, -34897, 5369, -45097, -1611,
- },
- {
- -3411815, -14536854, -3791919, 1699196, 102542, -147103, 144418, 78383, -83752, -146029,
- -574452, 237297, -642098, 610422, 756988, 391916, -94489, 720481, 73014, 53150,
- 153545, -21475, 512712, -159988, -276489, -164283, -522912, 248034, -45097, 539018,
- 290984, -517007, 275952, -570694, -292058, -140660, -569083, 328565, -20938, 136902,
- 208306, -127238, -27380, -325881, -250719, 222265, 123480, 15032, 206158, -172336,
- -19864, -81068, -112743, -24159, -139586, 140660, -55298, -63351, -40802, -149787,
- -114354, 37581, -32749, -41339, 51540, -46708, 56908, 20938, -40265, -3758,
- 0, -26307, -79994, -10737, -23085, -11811, -13422, -57445, 5369, 47782,
- 76773, 53150, 21475, -41339, -28991, -45097, -537, 7516, -47245, -7516,
- 21475, 35433, -18254, -6442, 8053, -3758,
- },
- {
- -284005, -6557878, 518080, 20401, 71941, -213138, -90194, -170188, 18790, 326954,
- 3221, -349503, -2147, 877247, 1344862, -1719598, -3398393, 485868, 1680406, -206695,
- 562104, 292595, -441845, 328028, -716723, -859530, -518080, 126702, 47782, 740345,
- 746787, 308701, 49392, -190589, -255014, -197032, -68719, 74625, -35433, -27917,
- 313533, -144418, 32749, -49392, -44023, -104153, -120259, 131533, 166430, 41876,
- 482110, 76236, 142271, 156229, 106837, -35970, 51540, 54224, 108985, -42950,
- 190589, -15569, 66572, -59593, 4295, 26307, 53150, 44560, -55835, 74625,
- 64961, -52076, 5906, -37044, -91268, -1074, 65498, 13959, 38655, 29528,
- 48318, 16106, -58519, -11274, 29528, 6442, 29528, -3221, 14496, 11274,
- -16106, 32212, 18790, -30065, -11811, 28454,
- },
- {
- -5254893, -24915106, -3515431, -558883, -300111, -152471, 293668, 180926, -144955, 497142,
- 558346, -53150, -195421, -457951, 37581, 1754494, 374199, -325344, 130997, -102542,
- -57982, 211527, -481573, -630286, 154082, 551366, -220117, 121870, 369904, 134755,
- -377957, -23622, -311385, -442919, 335007, -184684, 119185, -426276, 28454, 287763,
- 240518, 122407, -759136, 68183, 199179, 133681, -204548, -144955, -177167, 38118,
- -51540, -278636, -40802, 111669, 136365, 18254, 80531, 16106, -30065, -129923,
- -9664, 28991, 3758, 119185, 147640, -37581, -3758, -11811, -77846, 33286,
- 42950, 61203, 537, 22012, 31139, 5369, 37044, -4832, -33823, 2684,
- 1611, -12885, -91268, -37044, 16643, 10737, 41339, 14496, 30065, -18790,
- 1074, 6979, 26844, 16643, -26307, 3221,
- },
- {
- -352724, -1049583, 956704, -201327, -79457, -115427, -107911, 98784, 106300, -266825,
- 116501, 164283, -351650, -1945083, -1576253, 762894, -57982, -399432, -641561, 744640,
- 168577, 19327, 811749, -1291711, 263604, 290447, 213675, 494995, -985695, 149787,
- 191663, 641561, 193274, -282931, 464930, -257698, 140660, 124554, 189515, -47782,
- 326418, 246424, 321049, 100395, -148176, 265751, 70867, -227633, 80531, 4832,
- -197569, -39192, -12348, -67646, -36507, -79994, 89121, 120259, -158914, -52076,
- -20938, -47245, -86436, -8053, 17717, -105764, -47782, -66572, -2147, -28991,
- -106837, -3758, 64961, 39728, -6979, 34360, -17717, 79994, 39192, 11811,
- 13959, -537, 14496, -30602, 3221, 47782, -19864, -51540, 1611, -42950,
- -68183, -38118, 20938, 31139, -22549, -13959,
- },
- {
- -1793149, 12440373, 5942624, 168041, 238371, 472983, 198105, -839666, -130460, 53150,
- 329639, 178778, -408022, 890669, 439160, -405338, 439160, -375810, -445603, 253403,
- 372588, 122943, 159451, -53687, -94489, -155156, 286689, -427886, 22549, -18254,
- -74088, -70330, 60130, 295279, 25770, 503048, 188979, 342524, -93952, 99858,
- 85362, -330176, 62277, -117575, -147640, 336618, -32212, -437013, -158914, 183610,
- -132070, -42950, -296890, -153545, 135828, 66572, 125091, 51540, 189515, 7516,
- 20401, -23622, -1611, 11811, 33823, 20401, 25233, 35970, 30602, -19864,
- 24696, 27917, -56371, 63351, 106837, -28991, -17717, 60666, -3758, -29528,
- -537, -59056, -17180, 0, -17717, -57982, 18254, 80531, -10737, 3221,
- 12885, 12885, 40265, 25770, 16106, 537,
- },
- {
- -569083, -1356136, 3013457, -69256, 235686, -68183, -42413, -485331, 333397, -61203,
- -38655, -56908, -351114, 1074279, 1145683, -2127620, -121333, -89121, -541703, 2070711,
- -301185, -1376000, -140123, 1567126, 645856, 624918, -989453, 140123, -617938, 111669,
- 237834, -96637, 279173, -896574, 126702, 567473, 19864, -403727, 221191, -179315,
- 134755, -232465, -294205, 183610, 271120, -99858, 209380, 216359, 114354, 83752,
- -3758, -151934, -128312, 3221, -33286, 29528, 10201, 109522, 145492, 107374,
- 9127, -191126, -57445, -16106, -77309, -136902, -42413, 2147, 30065, 53150,
- -31139, -40802, -92879, 13959, 73551, 18790, -36507, -1074, 9664, -39728,
- 20401, -76236, -63888, 20401, -15032, -35970, 38655, 49929, 4295, -34897,
- 10737, 17717, -10201, -24696, -24159, 22549,
- },
- {
- -2325188, -20565378, -4748623, -2065879, 558346, 457951, -3019899, 35433, -396211, 56908,
- 71941, 191663, 60666, -803159, -471910, 14496, -299574, 251792, -161061, -282394,
- -232465, -181462, -200790, -246961, -62277, -527207, -160524, -13422, 168577, 52076,
- -28991, 60130, 446140, 89121, 502511, -41339, 189515, 113280, -113817, -129386,
- 274341, 214748, 154082, -286152, 51540, 224949, 23622, 1611, 11274, 212064,
- 121333, 162672, 121870, -52076, -281320, -70867, 95026, -130460, 4295, 9664,
- -174483, 93952, 64961, -537, -47782, -40265, 10201, -24159, -12885, 55298,
- 3758, -52613, -12885, 38655, 9127, 10201, 9127, 41876, -64961, 21475,
- -8590, -22549, -17717, 5906, -2684, 43487, 51003, 23085, 33286, 15569,
- 16106, 5369, -48318, -28991, 9664, 23085,
- },
- {
- -154619, 3354370, 1119913, 1173600, 290447, 328028, -456877, -1616518, 133681, 181999,
- 287763, 381178, -226560, -565862, -1196148, -467078, 418222, -1279363, -803696, 773094,
- -1293322, -96100, 989453, 88047, -253940, -88047, -52613, -206695, 192200, -426276,
- -83215, -243739, -94489, 39728, 15569, -78920, -13422, -63351, -192737, -314606,
- -261993, -3221, -33286, 136365, 63351, -49929, -25233, -63888, -12348, 147640,
- 64961, 103616, -71404, -85899, -195958, 180389, -34360, 11274, 65498, -57982,
- -22549, 99321, -33823, -69793, 52076, 161061, -9664, 108448, 88584, 30065,
- 75699, 22012, 2147, 24159, 60666, 29528, 2684, -81068, -44023, 9664,
- -31139, 22549, 41339, -24159, -41339, -17717, 0, -5369, -25233, -62814,
- -22012, 10201, 8053, 9127, -6979, 15569,
- },
- {
- 1717450, -2412161, -3391951, -1019518, 727460, -291521, -522912, 843424, -184147, 577673,
- 95563, -564788, -208306, -442382, 442382, -240518, 418222, -85899, 38655, 79457,
- -357556, 340376, 266288, -321049, -342524, -95563, 437013, -86436, -350040, -420370,
- -369367, -131533, -178241, -421444, -2684, 116501, -183610, 48318, -59056, 49392,
- -11274, -194884, 13422, 48855, 38655, 187368, -214212, 57445, 164283, -31675,
- 112743, 60130, 139586, 83215, -112743, 14496, -78920, -59593, 31675, -107374,
- -23622, 34360, 11274, 55298, 63351, -51003, 12885, 19864, -11811, 16106,
- 72478, -81068, 50466, 16106, 17717, 27917, -32749, 10201, 12348, -6442,
- -11811, 21475, 24696, 1074, 47782, 31139, -54224, 16643, -26307, -2147,
- 29528, 9664, 49392, -11274, -9664, 6442,
- },
- {
- 191663, 1886564, -1901060, -615254, 220654, 214212, 204011, -523449, 357019, -20401,
- -2147, 374736, 816581, -6958921, 1187559, 1542430, 169651, 1614371, -325881, 850940,
- -361314, -715112, -770410, -55298, -134755, 970663, -101469, -1055488, 229781, 386547,
- 565325, 208306, -1255741, -284542, 3221, 267362, -446140, 88047, 82141, 289373,
- -15032, -121870, -311922, -240518, -155156, 52613, 22012, -5906, -200790, 114354,
- 270583, -4832, 89121, -10737, -7516, -11274, 98247, -146566, 83752, -14496,
- -145492, 22012, 111132, 53150, 84289, -67646, 15569, -60130, -63888, 110059,
- 57982, 22012, 3758, -61740, -25233, 104690, 24159, 35970, 1611, -4295,
- -33823, -43487, -68719, -51003, -2684, -11811, 18790, 29528, -6442, 9127,
- -34897, -6979, 66035, 22549, -38118, 32749,
- },
- {
- 2339684, 1752884, 2027225, -1476395, -607201, -110595, 159451, 606127, -149787, 494458,
- -820339, 1536525, -83215, -1266479, -305480, 429497, -353261, -338229, -199179, -374736,
- -237834, -137439, -524523, -195958, 241592, 313533, 616865, 296353, 103079, 461172,
- -95563, 460098, 302258, -260919, -165356, 144418, 6442, -170188, 116501, -44560,
- -138513, -238908, 136902, 45634, -128849, -372588, -227096, -294742, -123480, 20938,
- 50466, -295279, 10737, 185757, -20938, -122407, -75699, -20401, -70330, -143881,
- 48855, -8590, 114354, -17180, -34360, -61740, 69256, 13422, 1074, 42950,
- -1074, 77309, 49392, 0, -73014, -39728, 14496, 74625, -15569, -84289,
- -2147, -4295, -39192, -26844, 15569, -34360, -44023, 62277, 29528, -28991,
- 11811, 8053, -33286, 10201, 1611, 10737,
- },
- {
- 240518, -3020436, -864899, 205085, -70867, -39192, 153545, 338766, 574452, 243739,
- -344134, 24159, -856309, 3864397, 11783780, -1212255, -214748, -357556, 1455457, -636729,
- -1561758, -509491, 860604, -76773, -362388, -171799, 523449, -852551, -540629, -1080184,
- -97711, 406411, -636729, 290447, 90194, -449898, 413391, 201863, -112743, -128849,
- -210453, 249645, 455803, -16106, -261456, 171799, -255551, 39728, 146566, -8053,
- 7516, 133681, 176631, 187368, -115427, -76236, -95026, -43487, -160524, 98247,
- 202400, 12348, 2147, -44023, 57982, 121333, -179315, -64425, 86973, 74088,
- -50466, -1611, 89657, 53687, 34360, 44560, -104153, 38655, 23085, 97174,
- -1611, -54761, -39728, -8590, 27380, 6979, 15032, -21475, -31139, -12348,
- 0, -22549, 13422, 23085, 9664, -29528,
- },
- },
- {
- {
- 4245575, 51441360, -9879499, 276489, 442919, -186831, 628139, -261456, -21475, 52076,
- 172872, -564788, -336618, 338766, 1050120, -179315, 93952, -259846, -335544, -125091,
- 386010, 192200, 148176, -27380, -162672, -180389, 26844, 253940, -237297, -289373,
- -150861, -46171, 177167, 385473, -70330, -28454, 398358, 347355, 92342, -104153,
- -23085, -159451, 68719, -180389, 122943, 141734, -317828, -162135, -90194, -143881,
- -3221, -279173, 41876, -84826, -44560, 96637, -25770, -9664, 18790, 137439,
- 93952, -39728, -70330, -13422, -18790, 21475, 73014, 21475, -9127, -38118,
- 15569, 95026, 15032, 18254, -15032, -13959, 5369, -53687, 68719, 49392,
- 29528, 44023, -20401, -6442, -15569, 21475, 12885, -14496, 44023, -6442,
- -10201, 10737, -10737, -4295, 13959, 8590,
- },
- {
- -731755, 5573257, 1144072, -636729, 77309, -177704, 186831, 212064, -8053, -139586,
- 279710, 40265, -11811, -205622, -954557, -533113, -514322, -973347, 80531, -224412,
- -171799, -222265, -257161, 567473, -148713, 137439, 181462, 296353, 263067, 302795,
- -275952, 20938, 406948, 5369, 334471, 48855, 137976, 153545, -358093, -107374,
- -266825, 268435, 17180, -229244, 155693, 6979, -3221, -342524, -35433, 76236,
- -51540, -97174, 177704, 53687, -211527, -216359, 23622, -58519, -24159, 150324,
- 102005, 17180, -83752, -20938, 36507, -6979, 86973, 59056, -56908, -21475,
- 102542, -62277, -8590, 20401, 57445, -30602, -74088, -537, 17180, 42413,
- -46171, -45634, 12348, 32212, 4295, 44023, 17717, -25770, 33286, -26307,
- -49929, 9127, 51540, 40265, 20401, -33823,
- },
- {
- 1184337, 7301445, -5523865, 3452617, 732829, -671626, 358093, 360240, 11274, -6442,
- 448824, -691490, -626528, 253940, 518617, 148713, 794032, 615254, -347892, 444529,
- 62277, 365072, -130997, -19864, -96637, 613107, 514859, -387084, -289910, 243739,
- -209917, 168577, -70867, -39728, -395137, 515933, 765578, -270583, 337692, -260919,
- -48318, -229781, 222801, -201327, 172872, -16106, -88047, 210453, 86436, -118112,
- 147103, 50466, 142271, -76773, 287226, 49929, 4832, -65498, -97711, -74088,
- 75162, 104153, 191663, -46708, 28454, 76773, -86973, -20401, 62814, 22549,
- -6442, 24696, 53150, -35433, -28991, -26307, 8590, 30602, -18790, -9664,
- 13959, 13422, 25770, -31675, 27380, 31675, 19864, -58519, 23085, 20401,
- -19864, -24696, 3758, -9664, -12885, 27917,
- },
- {
- -110059, -6858526, -2466385, 1012002, -95026, -337692, -164819, -55835, -130997, -190052,
- -694711, 325881, -645856, 777389, 215822, -336618, -386547, 15569, -277025, -185220,
- 47245, -305480, 122943, -429497, -360777, -149787, 42413, 236760, 168041, 337155,
- 138513, -268435, 333397, -181999, -134218, 33286, -233002, -92342, -86436, 112206,
- -137439, -126702, 168577, -62277, -173409, 257161, -8590, -73551, 96100, -69256,
- 68719, -69256, 45097, -26844, 23085, 164283, -4832, 17717, -192200, -90194,
- 72478, 93416, -10201, 37044, 32212, -1611, 117038, -49929, 1074, 34897,
- -21475, -85362, -40265, 33286, -13959, 8590, -22012, 1611, 31675, 27917,
- 35970, 9127, -25233, -9664, -537, -32212, 27917, -24696, -19327, 22549,
- 18254, -2684, -13959, 15569, 5906, -9664,
- },
- {
- 341987, -7179038, -571768, 125628, -24696, -77309, 265214, -59056, -140123, 267899,
- 121870, -237297, 503585, -285615, 1705639, 450972, -619012, 4452808, -1939178, -64425,
- 897648, 369904, -282931, -326954, -410706, 429497, 1198833, 310848, 29528, 312996,
- 282394, -370441, 352724, 27917, -255014, 8590, 231391, 128849, -383326, -192737,
- 201863, -17717, 210453, -88047, 75699, 28454, 30065, 208306, -118112, -1611,
- 296353, -130997, 164819, -62277, -57445, -222265, 25770, 79457, 69256, -15032,
- 151934, -70867, 78920, 69793, 166967, 25233, 17717, -48855, -102005, 52076,
- -24696, -68719, 1074, 43487, 2684, 82141, 7516, 0, 64425, 4832,
- 16106, -37581, -22012, 72478, -24159, -12348, -11274, -51003, 8590, -1074,
- -1074, 39192, -6442, -37044, 28991, 24696,
- },
- {
- 876710, -11529840, -614180, -299574, 560493, 9664, 567473, -507343, -376883, 958851,
- 537945, -82141, -24159, 540629, 488016, 639950, -319975, -197032, 237834, 268972,
- 115427, -124017, -93416, -180389, 6979, 85362, -34897, 50466, 161598, -126165,
- -425739, -537, 107374, 190052, 98784, -387621, 432718, -71941, -65498, 114354,
- 383326, 270583, -325881, -11274, -14496, 150324, -95563, 89657, -99321, 110059,
- -83752, 37581, 155156, 95563, 58519, 24696, 251792, 102005, -38655, -185757,
- -22549, 57982, 21475, 85899, -24159, -69793, 100395, 1611, -41876, 18254,
- 2147, -15569, 10201, 44560, -43487, 44560, 37581, -23085, -55835, 15032,
- -41876, -32749, -31139, 19864, 32749, 10737, -4295, 35970, -6442, 6442,
- -12348, -8590, -5906, -18790, 10201, -1074,
- },
- {
- -122943, 1073205, 858457, -355409, 29528, 39192, 5906, -205085, -104153, -176631,
- 115964, -13959, -188979, -1533303, -1867774, 239444, -811212, -1424855, -1154809, 961536,
- 458488, -246961, 1060320, -1118302, -124017, 188442, -660888, -722628, -413927, 219580,
- -138513, 241055, 169651, 165356, 472983, -288837, -212064, -96100, 304406, 258772,
- -105764, -311385, 223338, -133681, -57982, 297963, 39192, -105764, 77846, -192200,
- -76236, 125091, 45097, -85362, 104690, 1074, 88584, -18790, 16643, 20938,
- -50466, -15569, -40802, -10737, 84289, -68719, 78920, 3758, -20938, -101469,
- -30602, 118648, 27917, 70867, 51003, 26307, 23622, 70330, -1611, -3758,
- 37581, -11811, 8590, -24159, 15032, 25770, -43487, -39192, -20401, -47782,
- -45634, -4832, 22549, -9664, -2684, 6979,
- },
- {
- 4327717, 6724308, -4487167, -435939, 186831, 187368, -276489, -244276, -127775, 110059,
- 271120, -605590, -303869, 579821, -494995, -372588, 93416, -776315, 25770, 474594,
- -174483, -191126, 325344, -28991, -315680, 263604, 404801, -210453, 49392, -75699,
- -264141, -183073, -70330, 184147, 32212, 418759, -131533, 29528, -289373, 88584,
- 113280, -22012, 30065, -345745, -144955, 110595, -4832, -476205, 537, 267362,
- -40802, -84289, -244276, -30602, 143345, 88047, 139586, -41339, 74088, -84826,
- -57982, 9127, 79994, -39728, -47782, 2684, -537, -2147, 25770, 7516,
- 10201, 15032, 38118, 67646, 6979, -89657, 43487, 15032, -28454, 27380,
- -10737, -83215, 6442, 11811, -18254, -23622, 19864, 45097, 6442, 5369,
- 537, 20938, 27917, 31675, 537, -22549,
- },
- {
- 11274, 382789, 1429687, -293132, 22549, -71941, 181462, -198642, 474057, -13959,
- -212601, 26307, 119722, 1083942, 1431835, -1227287, -1188632, 207769, -170188, 1016297,
- 380641, 321586, 749472, 2193655, -167504, 452582, -85899, -570157, -516470, 459025,
- -316217, -131533, -77309, -488016, 199179, -66572, 330176, 203474, 57445, -119185,
- 284005, -74625, 30602, 230854, 93416, -260382, 44560, -50466, 92879, -24159,
- -50466, -40802, 113817, 58519, -133681, -70330, 73014, 126165, -102542, -32212,
- 38655, -74088, 105764, -39728, -14496, -56908, -70867, -19327, -2684, 5369,
- -44023, -6442, -19864, 70867, 44560, -39192, -20401, 28991, 31675, -15032,
- -24159, -118648, -13422, 15032, -2147, 15569, 52613, 20401, -1074, -23085,
- 20401, -1611, 16106, -2684, 15032, 28991,
- },
- {
- 3174518, -12686260, -3504157, -1912334, 971200, 850940, -2805151, 188979, -272194, 416612,
- -12885, 145492, -60666, -520765, -363998, -123480, 566936, 257161, 92342, -108448,
- 179315, -122407, 98247, 35970, 375810, -258235, -399432, 111669, 517007, -165356,
- -200253, -188979, 79994, 155156, 374736, -303332, 173409, 281320, -239444, -98247,
- 275952, 369904, -64961, -319975, 477815, 326418, -24159, 177167, 69793, 223338,
- 34897, 45634, 79994, -142271, -201863, 34360, 26307, -132607, 41876, -39728,
- -78920, -4295, 2147, 26307, -102542, 38655, -2147, -77846, 12885, -8590,
- 9127, -32749, 14496, -2147, 35433, -16106, 19864, -27917, 10201, -23622,
- -25770, -2684, 35970, 1611, 36507, 64961, 33286, 3758, 32212, 1074,
- -3221, -12885, -24159, -6442, 23622, 26307,
- },
- {
- 231391, 1081258, -674847, 14496, 143345, 89121, -609349, -1148367, 372588, 494458,
- 158914, -195421, -18790, -458488, -1345935, -1715839, 926639, -142808, -308701, -262530,
- -1427540, 220117, 1066226, -99858, -163746, 134218, -415001, 201863, 444529, -318364,
- 20938, -166967, -162672, -126702, 57982, -222265, -178241, -144955, -116501, -21475,
- -239444, 118648, -37581, 27917, -61740, -125091, -75699, 55298, 164819, 224949,
- 46171, 6442, -150324, -40802, -80531, 69256, 12885, 52613, 55298, -68183,
- 62814, 39728, -61203, 12348, 50466, 23085, 52076, 125091, -56371, -30065,
- -13422, -26844, 40802, 44560, 10737, -56908, -37044, -70330, 29528, 6442,
- -26307, 20938, 35433, -51003, -11811, 1074, -20938, -8590, -34897, -16106,
- 10201, 6979, 3758, 9664, 20938, -16643,
- },
- {
- -1314260, -4736812, -1553168, -224412, 1086090, -2046552, -1292248, 1116155, 263604, 570694,
- -386010, -144955, -111132, 150861, 433255, -61740, 491774, -23622, 322123, 172872,
- -98784, 191126, 46171, -491774, -273804, -219043, 667331, -113280, -60666, -294205,
- 1074, 75162, -322123, -161061, 130460, 34897, -621160, -351114, -143881, 90731,
- 125091, -224412, 100395, 116501, 49392, 35970, -280784, 86973, 228170, -134218,
- 188979, -11811, 248571, -79457, -84826, 78920, 23085, -121870, -72478, 17717,
- 68719, -95563, -1074, 96637, -16106, -93416, -41876, -13959, -8053, 70867,
- 22549, -59056, 49392, -16643, -9664, -8590, -13959, -20938, -15569, -20401,
- 537, 59593, -7516, 3221, 12885, -20401, -16643, 17180, -3758, 28454,
- 10201, 15032, 15032, -32212, 0, 15032,
- },
- {
- -197032, 3002182, -231928, -308164, -50466, 176631, -139050, -545998, 225486, -93952,
- 239444, 95563, 2053531, -5190468, 1376000, 337692, -502511, 776852, -653372, 831613,
- -1082869, 899259, 228170, -889058, -469225, 1096827, -395137, -653372, -203474, 295279,
- 121333, 360240, -869731, 126165, -173946, -407485, -462783, -227096, 26307, 311385,
- 66035, 74088, -122943, -51540, 124554, 159988, 309775, 148713, -62814, 52076,
- 193274, 97711, -37044, -49929, 135828, -38118, -20401, -152471, 58519, -84826,
- -82141, 86973, 41339, -23622, 48318, -53687, -7516, -92879, 41876, 40802,
- 12885, -13959, 51003, -24159, 27380, 67109, -20401, 3758, -30065, 3758,
- -50466, -33286, -49392, -40802, 20938, -23085, 39728, -33286, 8590, 5369,
- -34360, 32749, 38118, -33823, 11274, 27917,
- },
- {
- -396748, -3001109, -291521, -2773475, -198105, -1649804, -2147484, 55298, -121333, -129386,
- -148713, 2365990, -651761, -142271, 1245004, -709207, -692564, -219580, -8590, 160524,
- 86973, 225486, -179852, 215822, -537, 301185, 552440, 310311, 78920, 135828,
- 105227, 64425, -283468, -346282, 3221, -49392, -49392, 20401, 297963, -51003,
- -333934, 91805, 51540, -51003, -33823, -164819, -44023, 96100, 54761, 103616,
- -133681, -67109, 32749, -26307, -108985, -45097, -5369, 166430, -48855, 21475,
- 53687, 12885, 104153, -82678, 16106, -61740, 96100, -37044, 13959, -17717,
- 25233, 25233, 23085, -9127, -15569, -33823, 47245, 6979, -55835, -55298,
- 21475, -15032, -75162, -5906, -1074, -24159, 34897, 49929, -7516, -23622,
- 7516, -16106, -34897, -2684, 26307, 537,
- },
- {
- -50466, -2775086, 809064, 462783, -134755, 125091, 120796, 445603, 462783, -264677,
- -489089, 273267, 187905, 83752, 3994320, -1959579, 767189, -218506, 309775, -544387,
- -277025, -213675, 135291, -81068, 6979, -471373, -13959, -1368484, 332860, 244276,
- 33286, 339302, -142271, 490163, -139050, -74625, 386547, -291521, 318901, 54761,
- -45634, 415001, 304406, -210990, -40802, 133681, -219580, 52613, 194347, 86973,
- -37581, 114354, 61740, -11811, -113280, 22012, 47245, 15032, -15032, 93416,
- 39192, -35433, 51003, -37044, -1611, 31139, -186831, 66035, 47245, 59056,
- -55835, 27917, 97174, 33823, 37044, -58519, -52613, 51540, -7516, 33286,
- -50466, -38118, -38118, 44560, 15032, -5906, 30602, 537, -32749, 9664,
- -8053, -47245, 20938, 21475, -16643, -31139,
- },
- },
- {
- {
- -2151242, 36612448, 4134443, 2065879, 20938, 386010, 162135, -69256, -122943, -369367,
- -463320, -208843, -79457, 838592, 744640, -558346, 76236, 233539, -308701, -616865,
- 722091, 234076, -180926, 269509, -189515, 14496, 298500, -68183, -503585, 86973,
- 32749, 66572, -17180, -142271, 215285, 241592, 111132, 123480, 52613, 114890,
- -40802, -98247, -6442, -223338, 40265, -175557, -33823, -34897, -200253, -270046,
- -181462, -132607, -47782, 19327, 55298, -18254, 208843, 94489, 94489, 31139,
- -27917, -71941, 78920, 66035, 13959, 18254, 22549, -15569, 56908, 18254,
- 63351, 53150, 4295, -7516, 40265, 88047, -44560, -18790, 30065, -60666,
- -45634, -25770, -16106, -10201, 24696, 3758, -39192, 4295, -30065, 3221,
- -13422, -5369, -2147, 19864, 537, -8053,
- },
- {
- 501974, 3761855, -302795, -1286880, -344671, 293668, 104690, 36507, -40265, 134218,
- 335544, -314069, 75699, 417686, -1530619, 246961, 424128, -329102, 153008, -389231,
- 58519, -15032, 339839, -97711, -137439, 246961, -42413, 131533, 99858, -88584,
- 375273, -178778, 26307, 2684, 246424, 146566, -19327, -47782, -178778, 64961,
- -188442, -258772, -340913, -44023, 175557, -25233, -124017, -103079, -180389, -114354,
- -7516, -6979, -91805, -224949, 19864, 90194, 25770, 21475, 49392, 17180,
- -79457, -76773, 17180, -42950, -14496, 62814, -40265, -51540, -28454, 39728,
- -17180, -15032, 79457, 54224, -6442, -13959, 40265, 28454, -3758, -71941,
- -16106, 47782, -12348, -17180, 4832, -22549, -33823, 22549, -30065, -38118,
- 30602, 16106, -18254, -17180, -12348, 25233,
- },
- {
- -1516124, 2767570, 1167694, 1398549, -715649, -311385, 452045, 578747, 298500, 290447,
- -40802, -732829, 56908, -90194, -3758, 222265, 503048, 754841, -571768, 1149978,
- 650151, -81068, -126165, 44560, -91805, 241055, -197032, 153545, -377420, 6979,
- 295816, 538482, -393526, -260919, 222265, 458488, 143881, 360777, 372052, -90194,
- -19327, 105764, -117038, -304943, -139050, -23622, -50466, 23622, -15569, 74088,
- 37044, 61740, -70867, 12885, 537, 74625, -17717, -75162, -537, -64961,
- -2684, 99858, 5369, 2147, 103616, -120259, 17717, -537, -60666, -33286,
- 56371, 10201, -41339, -18790, -6979, 49929, 64961, -42413, -35970, 17180,
- -9127, -6442, 0, 42950, -1074, -31139, -22549, -10737, 20938, 3221,
- 17717, 47782, 6979, -1074, 33286, 0,
- },
- {
- 3314641, -7538742, -4111358, -441845, 52613, -366146, -172336, -124554, -189515, -31139,
- -166430, 97174, -344671, 654983, 603443, -262530, 21475, -308701, -66035, -150861,
- 114354, -467078, -449361, -102005, -65498, -243739, 491237, 114354, 141734, -364535,
- -193274, 91268, -199716, 100932, -32212, 177167, -125091, -360777, 255551, -162135,
- -90194, 87510, -31139, -23622, -86436, -82141, -166430, 51003, 12348, 12885,
- 163209, -22012, 32749, -44023, -48855, 82141, -44560, 9127, -121870, -62277,
- 20938, -55298, 6979, 40265, -109522, 45097, 24159, -28454, 5369, -52076,
- -29528, 59593, 98247, -15032, -5906, -21475, -30065, 32749, 7516, -24159,
- -23622, -48855, -1074, 28991, 10737, 18790, -5369, -4295, 49929, -5369,
- -32749, -12885, 14496, -4295, -26844, 17180,
- },
- {
- -236223, -6412923, 240518, 137976, -233539, 178778, -74625, 202937, -367220, 48318,
- 121333, 103079, -13422, 558346, 2112050, 1319092, 3040300, -180926, -2518998, 1064615,
- 668941, 300648, 186294, -321049, 304943, 1349694, 714038, -127238, 13422, 482110,
- 164283, -189515, 69793, -71404, 90194, -347355, 294205, -350040, -394063, 142808,
- -52613, -19864, -130997, -20938, 93416, -49929, 16643, 147103, -235686, -102542,
- 70330, 38118, 10201, -72478, -12885, -106300, -14496, -10201, 82678, -1611,
- -21475, 41876, 99858, 2684, 537, -168041, 21475, -45634, -19864, -15032,
- -7516, 46708, 47245, 66035, 113817, 40265, -75699, -30065, -63351, -57982,
- -47782, -30065, 96100, 47782, -55298, 5369, -66572, -9664, 15032, -17180,
- -7516, -18254, -15032, 30065, 21475, -23085,
- },
- {
- 3071439, -10159208, -2523293, 268435, 388695, 98247, 9664, -297963, 265214, -92879,
- -485868, 225486, 530428, 708133, 249645, 324270, -186831, -69256, -287226, 200253,
- -297427, -384936, 318364, -18790, 48318, -265214, 317291, 209917, -19327, -334471,
- -292595, 63888, 432718, 281320, -54761, -32212, 22012, 113817, -130997, 87510,
- 2147, 126165, 346819, -248034, -223338, 157303, 28991, 258235, 24159, 96637,
- 24159, 170725, -137976, -96637, 48855, 5906, 77309, 11274, 10737, -51540,
- 46708, -13959, -133144, -22549, -30602, 30602, 15569, -43487, 28454, -16643,
- -44023, -53150, 41339, 38655, -43487, 54761, -41339, 5906, 36507, 1611,
- -19327, 45634, 98247, 29528, -3758, -42413, -29528, 537, -12348, 41876,
- -25770, -17717, -30602, 17180, 39192, -14496,
- },
- {
- 381715, 268435, -1047435, 289373, 89121, 135828, 126165, -566936, -110595, 110059,
- 93952, -127238, -54224, 1817845, -5175973, 835371, 352187, -259309, -1116155, 1196685,
- 611496, -162135, 493384, 44023, -267362, -281857, -242666, -1125281, 632971, -1088774,
- 13422, 167504, 421981, 126165, -290447, 69793, -146566, -149787, 31139, 224412,
- -358630, -33823, 194347, 133681, 24159, -87510, -45634, 32749, -15032, -119185,
- 82141, 59593, -17180, -126165, 112743, 8053, -67646, -125091, 224412, -1074,
- 30602, 62814, 95026, -5906, 46708, 20938, -15032, -47782, -40802, 41339,
- 98784, -17180, -55835, 48855, -6442, -33823, -38655, -22549, -55298, 8053,
- 31675, -19864, 3758, 537, 6979, -25770, 2684, 20401, -9664, 23085,
- 36507, 42413, -537, -18790, 19327, 18254,
- },
- {
- -6286222, 13415330, 3370476, -115964, -667331, 74625, -13959, 18790, -139050, -199179,
- -258772, -157840, 485868, -388695, -748398, -345745, -499827, 260382, 503048, -119722,
- -273804, -134218, 59056, -243203, 206158, 268972, 26844, 220117, -245350, -303332,
- -297427, -136902, 75162, -140123, -126702, -121333, -6979, -285615, -179315, 103616,
- 162135, 185220, -308164, -66035, -244276, -11811, 245887, -133681, 76236, -70867,
- -28991, -263604, 284542, -1074, -23085, 44560, -2147, -13422, -77309, -56908,
- 57445, 44023, -39192, -81068, 35433, 44023, 2684, -56371, 45634, 74625,
- 7516, -26844, 63888, -73551, -115427, 21475, 10737, -85899, 22012, 9664,
- -44023, -11274, 31675, 1074, -1074, 13959, -14496, -33286, 9664, -1074,
- 22549, 19864, -6979, 2147, -15569, 3758,
- },
- {
- 479963, -614180, -1110786, 352724, -327491, 151398, 42950, -377957, 304943, 113817,
- -93952, 96637, 383863, 291521, 1725503, 455803, -1828582, 1425392, 850940, -639413,
- 9664, 1708323, 1246077, 943819, -294742, 322659, 607738, -1706713, 223875, -67109,
- -40802, -20938, -297963, 227096, -151398, -351650, 373125, 305480, -55298, -537,
- -216359, 41876, 196495, -52076, -362388, -237834, -73014, -70330, 36507, 125091,
- -7516, 95026, 115964, -113817, -128849, -4832, -36507, -50466, -242129, 25770,
- 129386, 106837, 103616, 90194, 191126, 19864, 65498, -26307, 2684, -24159,
- 31139, 87510, 36507, -51003, -75699, -38655, 8590, -9664, 24159, 10201,
- -45097, 24696, 60130, -9127, -24696, 0, -42950, -56908, 15569, 23622,
- 537, -11274, 11811, -8053, 5906, -26844,
- },
- {
- -3145527, -10226317, 3474092, -366146, -495532, -855772, -222801, -163209, 171262, -280784,
- -436476, -408022, -166430, 220654, -549756, -264141, 915365, -130460, 267899, -30602,
- 365609, -265214, 8590, 121870, 225486, 76236, -309238, 120259, -16643, -61203,
- -151398, -190589, -149787, -145492, -60130, 215822, 184147, 2684, 56908, -86973,
- -50466, 61740, -42950, 54761, 212601, 16643, -92342, 309238, 6442, -180389,
- -93416, -27380, -225486, -125091, 123480, 15569, -7516, 48855, -48318, -3758,
- 65498, -96637, -37044, 16106, -31139, 18254, -16643, -25233, -9664, -70330,
- -51540, 26844, -28991, -31675, 22549, -11811, 537, -10201, 40802, -28454,
- 46171, 18790, -17717, -17180, -5906, -42950, -51003, -8053, -37581, -13422,
- -7516, 1074, 35433, 6979, -5369, -29528,
- },
- {
- -338766, -273267, 457951, 168041, -320512, -362388, -440771, -359704, 130460, 280784,
- -118648, -298500, 695248, -667331, -989990, -1145146, 498216, 193274, -448287, -985695,
- 515933, -331249, 229781, -223338, 195958, -140660, -438624, 263604, 333934, 488016,
- 130997, -232465, -184684, -18254, -271120, -155156, 247497, -143881, 120259, -80531,
- 77846, -78383, -51003, -102005, -5369, -158914, -25233, 24159, 119185, 41339,
- -165356, -18790, 102005, 139050, 66035, -41339, 105227, -24159, -48318, 1074,
- -29528, -44023, 71941, 111669, -66035, -69793, 22549, -57982, -72478, -27380,
- 16106, 43487, 39192, -537, -45634, -6979, 16643, 64425, 69256, -32212,
- -8053, -42950, -11811, 46708, 45097, 3221, 6442, -6442, 16106, 44560,
- -9127, 10737, 7516, -537, 4832, -15032,
- },
- {
- 737661, -5728413, -1981591, 616328, -224949, -1871532, -81068, 690416, 579284, 325344,
- 146566, 468688, 186831, 773631, -55298, 394063, -176631, 404801, -99321, 78920,
- 273804, -469762, -125628, -96100, -279710, -104153, 136365, 93416, -84826, -35970,
- 276489, 54761, 5906, 118648, -4295, 142271, -32212, 44560, -191126, 8590,
- -217433, 85362, -199716, 135291, 59593, -78383, -40802, -74088, 54761, 16643,
- -17180, -32749, -17717, -55835, -22549, 53150, 31139, -60130, 13422, 31139,
- 1611, -83215, 83215, -49392, -75162, 34360, 23085, 33823, 28991, -37044,
- -18254, 56908, -33823, -37581, -57445, -25233, 30065, -20401, 13422, -3221,
- -5906, -21475, -26844, 15032, -38118, -23085, 44560, -13422, 28454, -6442,
- -40265, -16106, -57445, -7516, 14496, -5906,
- },
- {
- 127238, 2468533, 1105417, -1041530, -410169, -99321, -290984, 68183, 127775, -457414,
- 107911, -238371, -1856500, 1666984, -730144, -1523103, 610422, -10737, -23085, -160524,
- 1087701, -335544, -93416, -1801202, -176631, 9127, -201863, -233002, -268972, 175020,
- -265214, 412317, -290447, 108985, 130997, -489626, -241055, -413927, 18254, -67109,
- 129386, 6979, -3758, -65498, 179315, 81604, 126702, -57982, 216359, 10201,
- -90194, -148176, -91805, 92879, 48318, -188442, -27917, -12348, 10737, 111132,
- 136902, -48318, -152471, -25770, 10201, -17180, -40802, 39192, 92342, -39192,
- -12885, 3758, 17717, 28991, -5906, -77846, -107374, -2147, -3758, -6442,
- 44560, 45097, 16106, 36507, 17180, 8053, -13422, -68719, 28454, 16643,
- 17717, -16106, -69793, -13422, 28991, -38655,
- },
- {
- -988379, -1796907, -1228898, -1296006, 99321, -1329829, -1293859, -109522, 49929, -628676,
- 724776, 359704, -97174, 770947, -351114, -262530, 250182, 103079, 85899, -71404,
- 132607, -56371, 49929, 90731, -228170, 49929, 221728, 374736, -329102, -125091,
- 429497, -144418, 92342, 117038, 137439, -223338, 251792, 413391, 275952, -118648,
- -510027, 50466, -143881, 128312, 196495, 266825, 228707, 43487, 9127, -21475,
- -124554, 188979, -115427, -115427, -33823, 180389, 114890, 39728, -18254, 138513,
- 25770, 62814, 77309, 73014, 143881, 104153, 89121, -37581, -12885, 2147,
- 12885, -16106, 1611, 7516, 73551, 33286, 10201, -79457, 36507, 60666,
- 28454, -7516, 24696, 48318, -23622, 28991, 34360, -52613, -11811, 11274,
- -25770, -11274, 17180, -4295, 1074, -5906,
- },
- {
- -107374, -2041720, 1143535, 67646, 52076, 206158, 178778, 402116, 532576, -519154,
- -51003, 69793, 1003412, 374199, -5015985, 14496, 2688113, 615254, -1224603, 144418,
- 889595, -136365, -216896, -177704, 170188, -102542, -636729, -763430, 362925, 400506,
- -178778, 269509, 455803, -154619, 196495, 213138, -679679, -91805, 466004, -205622,
- 112743, 38118, -146029, 136365, 126702, -192737, 227633, 35433, 65498, 26844,
- -128312, 6442, -103616, -101469, 40802, -78920, -12348, -63351, -69256, -184147,
- -137439, 46171, 37581, -88584, -49392, -67646, 144418, 43487, -45634, -12348,
- 45097, -27917, -39728, 2147, -22012, -45634, 50466, -20401, -55298, -61740,
- 23622, 48855, 52613, 14496, -38118, 6979, -23085, 10201, 32749, 3221,
- -13422, -3758, 537, -16106, -22549, 20938,
- },
- },
- {
- {
- 3149285, 19451370, -8847633, 1924145, 21475, -34360, -397821, -124017, -117038, -434865,
- -82678, -74088, 17717, -46708, -643708, -202937, 98247, 357019, 528281, -50466,
- 133681, -222265, -61203, 349503, 66035, 52076, 156766, -36507, -303332, 442382,
- 282931, 185757, 181462, -64961, 214748, 43487, 134218, 40802, 56908, 251792,
- 36507, -34360, -35433, -181462, -89121, -203474, 46708, 62277, -102005, -292595,
- -165893, 18254, 73014, 55835, 31675, -110595, 62814, -47782, 40802, -73551,
- -6979, -89121, 62814, 54761, 13422, 5369, -35970, 8590, 77309, 20938,
- 24159, -47782, -3758, -8590, 5369, 16643, -64961, 32749, -15569, -71404,
- -48318, 4295, 31139, 7516, 36507, -41339, -9127, -1611, -31675, 5906,
- 2684, -15569, 23085, 24159, -11811, -14496,
- },
- {
- -49929, 3245385, -890669, -1023813, 266825, 353261, -154619, -231391, 59056, -255551,
- 56908, -297427, 162135, 176094, -1206349, 619012, 674847, 219580, 603443, -372588,
- 76773, -15569, -148713, -386010, 70330, 510564, 77309, 59593, -278636, -476741,
- 290447, -593779, -100932, 250182, 42950, 326954, 64961, -48318, 64425, 242129,
- -124554, -262530, -289910, 54761, 62814, -19327, -52613, 252866, -129923, -120259,
- 129923, -48318, -113817, -99321, 235149, -9127, 35433, 103079, 23085, -132607,
- -140660, -55298, 45097, 11274, -24159, 27380, -78920, -12348, -6442, 30602,
- -51540, 50466, 39728, 10737, -22012, 22012, 43487, 12348, -19327, -54224,
- 24696, 32749, -44023, -31139, -14496, -25233, -24159, 23085, -40265, 17717,
- 41339, -11811, -37581, -24159, -5906, 36507,
- },
- {
- 1161789, 3470871, -1464047, -1830193, -1532767, -243203, 95563, 181462, 58519, -143881,
- -336618, -725313, -28991, -166430, -296353, -212064, -82141, 622770, -254477, 603980,
- 633508, -560493, 165893, 591632, -6442, -107374, -212064, 556735, -108985, 57445,
- 100395, 77309, -280247, -102542, 397821, 11274, -146566, 139050, 238371, 246961,
- 55298, 12885, -137976, -246424, -208843, -15569, -52076, -13959, -22549, 58519,
- -121333, 19327, -3758, -69256, -176631, 65498, -85362, -20401, 84289, 2684,
- -104153, 12885, -82141, -11274, 6979, -117575, 73551, -9127, -72478, -11811,
- 17717, -105227, -32212, 57982, -2684, 59593, 9127, -55298, 27917, 25770,
- -24696, -28991, 18254, 39728, -15569, -25770, -24159, 22012, -9664, -10737,
- 26307, 45097, -16106, 12885, 14496, -23085,
- },
- {
- -4136054, -14179835, -763430, -955093, 74625, -166430, 88047, -82678, 91805, 453119,
- 144418, -127775, -78383, 462783, 524523, -272194, -166967, -246424, -41876, -247497,
- 108448, -124554, -177167, 34897, 98784, -62277, 421981, 139586, -352187, -459562,
- 75699, 242666, -267899, 169651, -12885, 409633, 52613, -74625, 359704, -121870,
- 150861, 0, -154082, -18790, -26307, -74088, -94489, 13959, 89121, -55298,
- 97711, 30602, -108448, 40265, -61203, 57982, -79994, -58519, 3758, -45097,
- -46171, -60130, 1074, -10737, -90194, -1074, -66572, 20938, 2147, -29528,
- 12885, 90731, 61203, -13422, -6979, -41876, 6979, 22549, -5906, -39192,
- -24159, -29528, 40802, 20938, 5369, 6979, -33823, 30602, 32749, -17717,
- -22549, 5906, 12885, -9664, -22549, 28454,
- },
- {
- -101469, -5373004, 813359, -55835, -107911, 114890, -159988, 424128, -204011, 110059,
- 70330, 140660, -296353, -463856, 1081795, 1506997, 1576253, -3126199, 940598, 1901060,
- 530428, -186831, 76773, -38118, 317828, 651224, -1316408, -597000, 594316, 1259499,
- 458488, 309775, 18790, 176094, 120259, -720481, 33823, 20938, -88584, 150324,
- -32749, 130460, -17180, -37044, 75699, 49392, -73551, 97711, -119185, -232465,
- 30602, 37581, -40802, -5369, 45097, 49392, 40265, 75162, 125091, 6979,
- 27380, 85362, 69793, -51540, -54761, -133144, 100932, 67109, -15032, -39728,
- 77846, 56908, 41339, 22012, 53687, -18254, -26844, -16643, -83752, -29528,
- -12885, 26307, 57445, -29528, -2147, 6442, -36507, 26307, 0, -12348,
- -8590, -15032, -2147, 35433, -8590, -20401,
- },
- {
- -3996467, -17223892, 505196, 1044751, -270583, 68719, -106837, 258772, 111132, -638876,
- -470836, 217433, 253403, 119185, -468688, -7516, -115427, 48318, -227633, -171262,
- -495532, -82678, 309238, -192200, 5369, -267362, 145492, 395137, -309238, -421981,
- -17180, 275415, 170188, -154619, 118112, 161598, -71404, 67646, -39728, 113817,
- -504659, -106837, 372588, 69793, 1074, -4832, -147103, 121870, 6979, 68183,
- 78920, -23622, -268435, -115427, 1074, -146029, -106837, -1074, 101469, 51540,
- 40802, -34360, -99321, 4832, 35433, 5369, -52613, 6979, 30602, -35433,
- -63351, -1611, 35433, -4295, 1074, 15569, -41339, 12885, 52076, 14496,
- 28454, 61740, 59056, -33823, -18790, -23085, 1074, -27917, 18254, 12348,
- -22012, -11811, -8053, 37581, 1611, -22549,
- },
- {
- 38655, -686658, -555661, 250182, -27917, -13959, 322659, -128312, 135828, 80531,
- 537, -51003, 9127, 2050310, -5077725, 336618, -192737, 28991, -1094680, 912144,
- 598611, -530428, 139586, 1001801, 603443, -478889, 90731, 19864, 432718, -1301375,
- -90731, -15032, 95563, -304943, -44560, 404801, 7516, -64425, -168577, -112743,
- -134218, 358630, -22549, 35433, -12348, -78383, 15032, 98784, 1611, -41876,
- -42413, -68719, 10737, -33286, 28991, -31675, -57982, -65498, 68719, -18254,
- 77846, 40265, 89121, -27380, 15032, 32212, -104690, -24159, 20938, 69793,
- 31139, -76236, -33286, -2684, -48318, -6442, -62277, -35433, -40265, 30602,
- -3221, -27380, 3221, -9127, -9664, -20938, 25233, 15032, 15569, 40265,
- 35433, 15032, -26844, 5906, 8053, 1074,
- },
- {
- 5768141, 22973244, -2921652, 554588, 12348, 292595, 444529, -173946, 42950, -286689,
- -337155, 440234, 200253, -565325, 180389, -134218, -354872, 372588, -22012, -350577,
- -6442, -190052, -17180, 25770, 562104, 39728, -169651, -66572, -424665, -192200,
- -100395, 31139, -53150, -294742, -74088, -376347, 13422, -109522, -63351, 137976,
- 54224, 31139, -161598, 49392, -317291, -20401, 197032, 121870, 32212, -179852,
- -27917, -78920, 330712, -88584, -61740, -11274, -48855, -18254, -30065, 23085,
- 56908, -33286, -78383, -8590, 82141, 6442, 17180, -38118, -11274, 14496,
- -5906, -27917, -19327, -80531, -10737, 74625, -55835, -51540, 70867, -11274,
- -3758, 41339, 8053, 537, 25770, 4832, -11274, -17180, -13959, -6979,
- 20401, 2684, -12885, -15569, -7516, 26844,
- },
- {
- 84826, -1757715, 474594, 643171, -118112, 125091, -162135, -564251, 104153, 27380,
- 103079, 60666, 228170, 836445, 1620276, 1949378, 987843, 1404991, 670552, -1194001,
- -193274, 1381906, -221191, -651761, -98247, 299574, 330712, -353261, 672162, -411243,
- 508954, -103079, 141197, 219043, -194884, 17717, 57445, -90194, 87510, -55835,
- -306016, 29528, 45097, -122407, -289373, -67646, -18254, 65498, 48855, 183073,
- 10737, -14496, -106300, -109522, 30065, 58519, -177704, -123480, -99858, 121870,
- 126165, -6442, -41876, 37581, 70330, -6979, 74625, -19327, 36507, -35433,
- 60666, 74088, 10201, -103079, -84289, 11811, 3221, -53150, -4832, -1074,
- 537, 67646, 23622, -2684, -17717, -10737, -50466, -28454, 33286, 14496,
- -19327, 8053, 4295, -6979, -17180, -32749,
- },
- {
- 2646774, -7114614, 1080184, 972810, -304943, -1134945, 124554, -203474, 71404, -635655,
- -311922, -282931, 38655, 496069, 59056, -57982, 8590, -607738, 254477, 171799,
- 90731, -191126, 137439, 122943, 53687, -34897, -304943, -12885, -168041, 163209,
- 64425, -71404, -64961, -58519, -39728, 165893, -57445, -244813, 126165, -214212,
- -66035, -81068, 186294, 177167, -153008, -73551, -108448, 134755, -53150, -155156,
- -48318, -31139, -216896, 72478, 233539, 42413, 29528, 47782, -44023, 62277,
- 42413, -39192, -37581, 23085, 69256, -31139, -23622, 7516, -39192, 10737,
- -23622, 29528, -46708, 13959, -3221, -537, -26844, 49929, -18254, -12348,
- 45097, -6442, -56371, 3758, -35970, -54761, -37044, 5906, -41339, 537,
- 3221, 24159, 23622, -8590, -8590, -33823,
- },
- {
- 251256, -823560, -2017561, -702227, -600222, -29528, 502511, 251792, 38655, -184147,
- 127775, 81604, 290447, 294742, 493384, -31139, -351650, -938987, -467615, 301185,
- 631897, -416612, -157303, -541166, 169651, -439160, -265214, -272730, -205622, 198642,
- -44560, -227633, -156229, 41339, -231391, 34360, 406411, -67646, 72478, -234613,
- 263067, 20938, -28454, -107374, 20401, -112206, 64961, -43487, -97174, -79457,
- -88047, 69256, 99858, 88584, 34897, -30065, 2684, -27917, -10201, 19864,
- -80531, 6979, 76236, 34897, -83752, 11811, -61203, -94489, 38655, 17717,
- 40802, 21475, -23085, -25233, -15032, 42413, 34897, 52076, -7516, -19864,
- 8053, -39728, -20938, 59056, 16106, -4832, 22012, -10737, 32212, 18790,
- -20401, 9664, -3758, -6442, -23622, 17717,
- },
- {
- 135291, -5541582, -1386738, 527207, -295279, 532576, 979789, -82678, 262530, 81068,
- 320512, 66035, -14496, 278636, -184684, 316217, -616865, 105764, -358630, -16643,
- -35433, -325344, -23622, 26307, -123480, 6979, -226560, 436476, 30065, -24159,
- 147103, 95026, 268972, 74088, 51540, 343061, 355945, 274341, -240518, -158377,
- -330712, 216359, -359704, 32749, -3758, 104690, 150861, -112743, -95026, 70867,
- -149250, -11274, -105227, 75162, -30602, 8053, -16643, 43487, 71404, -36507,
- -18254, -17717, 53150, -92342, -13959, 31675, 23622, 57982, 17180, -104690,
- 17717, 36507, -50466, -12348, -30065, -4832, 13959, -10737, -3758, -12885,
- -12348, -48318, 12348, 9664, -30065, 15032, 14496, -6979, 11274, -38118,
- -16106, -13959, -28991, 6979, 537, -10737,
- },
- {
- -44023, 2213519, 897111, -765041, 231928, -150861, -6979, -54761, 67109, -437013,
- -216896, -164819, -39192, 4278325, -846645, -1232119, 1041530, 381178, 693637, -110595,
- 1584843, -947040, -1207960, -2219961, -455267, -783295, 75699, -357556, 28991, -286152,
- -433255, 357556, 86436, 130460, 258235, -41339, -26307, -99858, -237834, -325881,
- 132070, 141197, 100932, 48318, 156766, -5369, -127238, -173409, 99321, -112206,
- -141734, -164283, 40802, 80531, -76773, -130460, 71941, -10737, -13959, 158377,
- 105764, -135828, -95026, 30065, 42950, -48855, -79457, 59056, -9127, -40265,
- -2684, 17717, -36507, 3221, -40802, -31139, -48318, 18790, -4832, -37044,
- 53687, 44023, 20401, 40265, -537, 14496, -44560, -16106, 9127, 11274,
- 33286, -48855, -56371, 35433, -8053, -33286,
- },
- {
- 1049583, 871878, -562641, -297427, 139050, 1038845, 1598265, 204011, 36507, 69793,
- 46708, -649077, 417686, -81604, -1489817, 357556, 223875, 84289, 36507, -125628,
- 388158, -192200, 51003, -234613, -116501, -120259, 85362, 383326, -331786, 193810,
- 231928, -243203, 190052, 248571, 148176, -155156, 341987, 389231, 164283, 0,
- -135291, -89121, -120259, 152471, 148176, 143345, 100395, -42950, 79457, -64961,
- 105227, 58519, -146029, 11811, 54761, 178778, 5906, -102542, 66572, 94489,
- 33823, 45097, 63888, 108985, 69256, 53150, 15032, -15032, -16106, 35970,
- -54224, -1074, -20401, 1611, 33823, 30065, -16643, -34897, 66572, 32212,
- -10737, 10201, 54761, 24159, -11274, 31139, -27380, -50466, 20938, 4295,
- -18254, 16106, 18254, -5906, -31139, -8053,
- },
- {
- -13959, -1668058, 352724, 14496, 193810, 107911, 252329, -557272, -253403, -147640,
- 68719, -176094, 641024, 2481417, -1464047, 810675, 1903207, 228707, -904628, 547071,
- 498216, -524523, -206695, 322659, 686121, 362925, -453656, -235149, 112743, 144955,
- 74088, 293668, 326954, -238908, 180389, 5369, -301185, 496606, 287763, -284005,
- -205622, -169651, -127238, 235686, 6442, -239444, 236760, 99321, 46171, 42413,
- -47782, -57445, -96100, 37581, 122407, -111132, -8590, -19327, -92342, -175557,
- -73014, 52076, -23622, -65498, -21475, -16643, 158377, -98784, -48855, -28991,
- 48318, -70330, -61740, -13422, -27917, 39728, 1074, -23622, -19864, -6979,
- 71404, 39728, 48855, -41339, -40265, 5369, -29528, 3221, 35970, -11811,
- -9127, 13959, -10737, -24696, 2684, 33286,
- },
- },
- {
- {
- -3847754, 16582869, 3030636, 707596, 300648, -287763, -125628, -4295, -320512, -78920,
- 379031, -421444, -120259, -203474, -466004, -466004, 439160, 104153, 338229, 470836,
- -759672, 395137, -91805, 120259, 172336, -98247, -51003, 42950, 15569, 431107,
- 133144, 322659, 278099, 330176, -257161, 99321, 322659, 139050, 144418, 56908,
- -49392, 139586, -68183, -177704, -23622, 109522, -157840, -118112, -48318, -126702,
- -64961, 82678, 60130, 5906, -136365, -107911, -100395, -119722, -91805, -26844,
- 113817, -67109, -90194, -27917, 32212, -35433, 65498, 33823, -14496, -12348,
- -26307, -13959, 14496, 2147, -50466, -92879, 9127, 14496, -25233, 51540,
- 35433, 64961, 30602, 9127, -10737, -8053, 38118, -4832, 21475, 24696,
- -2147, -12885, 20938, -1074, -8590, 6979,
- },
- {
- -99321, 4264366, -1219234, 1001801, 156229, -187905, -12348, 104690, -1611, -159988,
- -303332, 239444, -198642, -922881, 100395, -437013, -16643, 171799, -356482, -113817,
- -130460, -49392, -636192, -73551, -88584, 225486, 679679, 296890, -83752, -610422,
- 17717, -368293, 294205, 239981, -2684, 277025, 270046, 91805, -99858, -186831,
- 148176, 146029, -83215, -46171, 114890, -33823, 131533, 107374, -164819, 63351,
- 46171, 21475, 98247, 226023, -62814, -220117, 34897, 18254, -44023, -67109,
- 24159, 40265, 14496, -15032, 34360, -50466, 52613, 83752, -4295, -20938,
- 3221, 51540, -75162, -33286, 47245, 5906, -61740, -39192, 537, 51540,
- 11274, -57445, -14496, -1611, 3221, 34897, 11274, -11274, 20401, 34360,
- -31675, -16106, 19864, 37044, 16106, -13422,
- },
- {
- -983011, 1951526, 91805, -1307818, 1453846, -517544, 205622, -150324, -103079, -228707,
- -93952, -527744, -457414, 134755, -209917, 81068, 255014, 243203, -198105, -5369,
- 325881, -252329, 233002, 367220, 327491, 155693, 56371, 443992, -218506, 79457,
- 114354, -212601, 53687, -51003, -226023, -144418, 400506, -243203, 118112, 161061,
- -19327, -152471, -81068, -7516, -38655, 68719, -537, -41339, 175020, -156229,
- -59056, 38655, 47782, -71941, 26844, 61740, -85362, -2147, -20938, 28991,
- -64961, 74625, -55835, 8053, -69256, 37044, 43487, -71941, 57982, 13959,
- -64425, -77309, 67109, 537, 15569, -8053, -91805, 40802, 57445, -11274,
- -1611, 5369, 15569, -7516, 12885, 31675, 11811, 1611, -38118, 13422,
- -13422, -27380, -9127, 3221, -18790, -5906,
- },
- {
- 1850057, -23840290, 1169842, -930397, -234076, -25770, 99858, 48318, 193274, 254477,
- -34897, -185757, 408022, -314606, 96100, -520228, 192737, -306016, -438624, -112743,
- -131533, 263604, 16643, -47782, -28991, -184684, 85362, 251792, 92879, -122943,
- 148713, 133144, 50466, -11274, 6442, 360777, 60130, 202400, -2147, 212064,
- 48855, -325344, 16643, 49929, 57445, 81604, -5369, 17180, 38655, -76236,
- 94489, -8590, -125091, 172872, -33823, 32212, -19327, -48855, -56908, -74625,
- -10737, 100932, 17717, -36507, 68719, -76773, 13959, 27380, -10737, 19327,
- 59056, -34897, -85899, 33286, -15569, -3221, 21475, -1611, 1074, 24696,
- 41876, 18790, 15569, -12885, 2684, -45634, -5369, 15569, -39192, 9127,
- 25233, 12348, -2147, 3758, 11274, 2147,
- },
- {
- 273804, -5436355, -368293, 147103, 176631, -285615, 56908, 510027, 85899, 213138,
- 61740, 121333, -104153, 973884, -1280437, 37044, -1068373, -785442, 3089692, 1233729,
- -375273, 396748, -292058, -91268, -314606, 155156, -1473174, -432718, 768262, 950262,
- 265214, 861678, -202937, 702227, -253403, -186831, 52076, 53150, 99858, 23622,
- 19327, 180389, 344671, -114354, 14496, 151934, -96637, 258772, -100395, -51540,
- 151398, -123480, 47782, 16643, -44023, 12348, 85899, 143881, 90194, 63351,
- 102005, 75162, 22012, 59056, 87510, 14496, 77846, 50466, -32749, 31675,
- 17717, -22012, 12885, -19327, -53687, 8053, 79994, 27380, 25233, 22012,
- 56371, 14496, -47782, -18254, 33823, -20938, 24696, 537, -22012, 16643,
- 9664, 21475, 1611, -13959, -8590, 34360,
- },
- {
- 1068910, -25136296, 301721, 1481227, -525060, -44560, 309238, 280247, -592706, 278636,
- 580357, -95026, -339302, -237297, -241055, -260382, -32749, 286152, 537, -134218,
- 13959, 358093, -239981, -367757, 47245, -56908, -70330, 61203, -518080, 13959,
- -84289, 100932, -190052, 48318, 144418, -36507, -27917, 69793, -7516, 155156,
- -118648, -60130, -100932, 301721, 246424, -255014, -244276, -153545, 8590, 130997,
- 56908, -181999, -38118, 97174, -54761, -84289, 24159, 107911, 21475, 30065,
- -47245, 0, 79994, 90731, 20401, -73014, -6442, 48318, -17717, -11274,
- -13422, 62814, 1611, -23622, 0, -6979, 48318, -1074, -25233, 15569,
- 9127, -13422, -78383, -31139, 4832, 40265, 22549, 11274, 15032, -37044,
- 18254, -5369, 15032, -12885, -23622, 3221,
- },
- {
- -264677, 950798, 246424, -454193, -537, -32749, 261993, 158377, 224949, -106300,
- -10737, 47782, -92879, -1239098, -2112050, -2356863, 426276, -235686, -866510, 21475,
- 331249, 56908, 895501, -551366, 521839, -579284, -90731, 796180, -621160, 36507,
- -124017, 162672, -685584, 127775, 482647, 234613, -9127, -2684, -276489, 79457,
- 90731, 90194, -69256, -63351, -119722, 139586, 140660, 61740, -22012, -83215,
- -172336, -48318, 83752, 54761, -6979, 11274, 75699, 30602, -115964, -26307,
- -20938, -31139, 17180, -16106, -49392, -12885, -45097, 104153, 35970, -79457,
- -96637, 24696, 73551, -10737, 23622, 33823, 22549, 44560, 16643, 3758,
- -4295, -9127, 11811, -22549, -13422, 14496, -9127, -33286, -3221, -34360,
- -41339, -40265, -6442, 16106, -21475, 1074,
- },
- {
- -3492882, 29197188, -24159, 714038, 441845, 300111, 115427, -369904, 42950, -61740,
- 238908, -25233, -461709, -191126, 662499, -185220, 106300, -134755, -624918, 31139,
- 209917, -126165, 273267, 156766, -30602, -14496, -136365, 184684, -460098, -88047,
- 75162, -88584, -91805, 128849, -219043, -82141, -32212, 82141, 137439, 150324,
- -33286, -142271, 58519, -220654, -8590, -147103, -8053, -137976, -12885, 139050,
- -6979, 54761, -79994, -179315, 37581, 62814, 57445, 55298, -4832, 20401,
- -53150, -88047, 35970, 40802, -2147, -6979, -10737, 17717, -41876, -69793,
- 12348, 14496, -49929, 94489, 85362, -23085, -12885, 58519, -537, -537,
- 33823, 5906, -25770, 5369, 15032, -24696, 26307, 24159, 3221, 5906,
- -9127, -4832, 23085, 13422, 10201, 0,
- },
- {
- -461172, 570157, 2141041, -84289, 162135, -103079, -257698, -265751, 156229, 52613,
- -16106, -78920, -343597, 791348, 3123515, -1283122, 2392834, 1218697, -121333, -401579,
- 250182, -315143, -1152125, 565862, 337155, 724239, -250719, 727997, 418222, -415538,
- 241592, -72478, 343597, -53150, 52613, 67109, -273267, -88047, 130997, -56908,
- 216359, -26307, -161061, 120796, 83215, 144955, 12348, -35433, 255014, -48318,
- -76773, -158914, -89121, -25770, 77309, 3758, -57445, 2684, 140660, 25233,
- -20938, -100395, -105227, -126702, -139586, -46171, -41339, -11811, 46171, -61740,
- 7516, 0, -72478, 12885, 45097, 19864, -67646, -23622, -2147, 3221,
- 23085, -49392, -59593, 22012, 1611, 14496, 43487, 44023, 13959, -11811,
- -6979, 15569, -11274, 19327, -8053, 11274,
- },
- {
- -2329483, -4128537, 2047626, 1147830, 222265, -290984, -350040, -297427, -219580, 53150,
- 187905, 184684, 88584, -321049, 963683, -656056, -733366, 322659, 171262, -165893,
- -66035, 154082, 209380, -20938, 137439, -114354, -336081, 70330, 119722, -46708,
- 156766, -30602, 140660, 279173, 138513, -123480, -257161, -18790, -10201, -172872,
- 277025, 39192, 147640, -49392, -63351, 312459, -38118, -118112, 61203, 197569,
- 29528, 9127, 96637, 35970, -26844, 57982, 66572, -41876, 9664, 1074,
- -94489, 77309, 30602, -14496, 29528, 8053, -16643, -22012, 4832, 80531,
- 3758, -17180, 12348, 28454, 0, 11811, -2147, 15569, -44023, 0,
- -42950, -32212, 11811, 24159, 0, 52076, 48855, 24159, 31139, 14496,
- 8053, 3758, -37581, -11274, 18790, 18790,
- },
- {
- -128312, -938987, -991064, -1695438, -75699, 389231, 407485, 232465, -12348, -79457,
- 437013, 323733, -343061, 881005, 719944, -252866, -988916, -1030255, 180389, 244813,
- -650688, -38118, -22012, -401579, -139050, 190052, -354335, -299574, -335544, -634581,
- -85899, -68719, -126702, -107374, 32212, 164283, -133681, -71941, -119185, -237834,
- 161061, 26307, 47245, 27380, -134755, 47782, 23622, -68719, 537, 39728,
- 153008, 77846, -98247, -121333, -76236, -7516, -39728, 20401, 50466, -14496,
- 119185, 36507, -103079, -53150, 77846, 49929, -20401, 60666, 83752, 2684,
- 6979, -32749, -32749, 9127, 34897, -9664, -27380, -76236, -38118, 18790,
- -26844, 31139, 28454, -33823, -54761, 0, -9664, -16643, -4832, -43487,
- 537, -7516, -6442, -537, 5369, 14496,
- },
- {
- -1060320, -3312494, -2283312, 33823, 388158, 1463510, -267899, -459562, 210453, 95026,
- -100932, -580894, -111132, -298500, 351114, -202937, -119185, -263604, -18254, -156766,
- -200790, 136902, 151934, -193274, 135828, 19327, -65498, 265214, -51003, 19864,
- -38655, 79457, -92879, -98247, 184684, 148176, -111669, -216359, -79457, -61740,
- -196495, 10201, -39192, 125091, -125091, 77846, 42950, 19864, 25233, 62277,
- -99858, 127238, 30602, 90194, -53687, -49392, -32749, 66572, -62277, -64961,
- 39192, 8590, -16643, 40802, 26844, -83752, -11811, -15032, -38655, 10737,
- 33823, -30602, 4295, 9127, 29528, 24159, -29528, -28454, -26307, -20401,
- -13422, 30065, 40802, -17180, 28454, -3221, -35433, 18790, -17717, -1611,
- 36507, 21475, 38655, -8590, -19864, 4832,
- },
- {
- -20401, 1828582, -101469, 759672, 246961, -70330, 323196, -347355, 17180, -150324,
- -187905, 294742, 790811, 2081985, 1822140, -1732482, 1360968, 377420, 572841, 623307,
- -845035, 605054, -795106, -1467268, -756988, -199716, -55835, -906238, 595390, 58519,
- -261993, -100932, 175557, -37581, -15569, 126165, -44023, -21475, -162135, 32749,
- -31675, -31675, 155693, 139586, 118112, 40265, -45634, 83215, -135828, -68183,
- 53687, 96100, 113280, -22549, -51003, 108448, -4832, -125628, 18254, -32749,
- -82141, -24159, 106300, 54761, -30065, -54224, -16643, -75162, -60130, 23085,
- 22549, 1074, -33823, -31675, 18790, 79457, 60666, -4832, -20401, -15032,
- -36507, -47245, -32212, -25233, -14496, -2684, 1611, 32212, -38655, -537,
- -5906, 537, 59056, 17180, -35970, 39192,
- },
- {
- -399969, 2516314, -387621, -1212791, -130460, 1803349, 603443, -36507, 58519, 754841,
- -297427, -18254, 186831, -836445, -253403, 145492, -656593, 89121, -38655, 19864,
- 183610, 149250, 82678, -223875, 480499, -119185, -42950, 421981, 281320, 80531,
- 62814, -91805, -171799, -37044, 61740, -12348, 71404, 41339, -37044, 98784,
- 301185, -171799, 162672, -64961, -148713, -204548, -50466, -90731, 79457, 135828,
- 53687, -170188, 30602, 73551, -19864, -111132, -110595, 32212, 85362, -41339,
- 69793, 19327, 28991, -40265, -56371, -82141, -61203, 52613, 14496, -16643,
- -53150, 44023, -1611, -3221, -63888, -32212, 18790, 39728, -34360, -60130,
- -32212, 6442, -29528, -34897, 4295, -28454, -32749, 60666, 22549, -18790,
- 15569, 1611, -30065, -13959, -10201, 4295,
- },
- {
- 97174, -1235877, -1105954, 477815, -67109, 143881, 62277, -557809, -286152, -444529,
- 155156, -106837, -434329, 3006477, 576063, 3223910, -485868, 501974, -85899, -592706,
- -544387, 398358, -445066, 421444, 726923, 1057636, -1071058, 222801, -568009, 213138,
- 465467, 183073, 166430, 397284, -560493, 59056, 761820, 260382, -226560, 19864,
- -13959, 166967, 161598, -72478, -86436, 34897, -173946, 114890, 165356, 57982,
- 62814, -5369, 163209, 66035, 28991, -84289, 28454, 64425, 14496, 98247,
- 115964, -537, -63351, 59593, -4295, 13422, -104690, -93952, 52076, 22012,
- -38655, -22549, 73551, -19327, 45634, 1074, -63351, 18254, 77846, 47782,
- 5369, -26307, -47782, -12348, 15032, -5369, 13422, -3758, -32749, -11811,
- 1074, -16643, -9127, 17717, 0, -9127,
- },
- },
- {
- {
- 2058363, 12707198, -8399345, 1435593, -59056, -122943, 346819, 184147, -275952, 31675,
- 220654, -269509, -36507, 387084, 607201, -529355, 388695, -112743, -209917, -45634,
- -953483, 370978, -267899, -537, 85362, -122407, -34360, 300111, 252866, 420370,
- 179852, 237297, 28454, 277025, -376347, 147640, 95563, -43487, 112206, -11274,
- -120259, -19327, -48318, -82678, 537, 95563, -42413, -33823, -26307, 12348,
- -122407, -74625, 3758, -20938, -105227, 9664, -21475, -31675, -41876, 62814,
- 65498, -24159, -65498, -15569, 62814, -6442, 97711, -23622, -56371, 3758,
- -8053, 24696, 19327, -18254, -40802, -35433, 22549, -18790, 12348, 51003,
- 38118, 28991, -18790, -2684, -22012, 28454, 16643, 10201, 23622, 14496,
- -11274, 5906, -4832, -14496, 0, 14496,
- },
- {
- 21475, 4876399, -468688, 1198296, 72478, -122407, 164283, 245887, 52613, 147103,
- -148176, 242129, -289373, 149787, 1124745, -532576, -20401, -267362, -930934, -122943,
- -344134, 0, -463320, 219580, 198642, -51003, 373125, 148713, 235149, -330712,
- 161598, -82141, 136365, 52613, 199179, -50466, -117038, 2684, -21475, -347355,
- 51003, 309775, 52613, -141734, 157303, -8053, 35433, -40265, -49929, 46708,
- -53687, 97711, 136365, 154619, -207769, -66035, 39192, -100395, -53150, 26844,
- 39728, 14496, -33823, -32749, 78383, -45097, 74625, 11274, -35970, 12348,
- 26307, -25770, -48318, -7516, 48318, -44023, -70330, -8053, 35433, 38655,
- -20938, -33823, 35433, 16106, 13959, 33823, 537, -10201, 32749, -8590,
- -36507, 2147, 26307, 23622, 537, -22012,
- },
- {
- 1131187, 3338800, -233002, -820339, 1054951, -456340, 285078, -178241, -17717, 138513,
- 378494, -295816, -190052, 680752, 621160, 935766, 374199, 45097, -2147, 112206,
- 105764, 230854, -185757, -54761, 112743, 260919, -54224, 190052, -48855, -83752,
- -43487, -104153, 233539, 6442, -479426, 77846, 407485, -200790, 24159, -81068,
- -41339, -18254, 69256, -8590, 79994, 71404, 75162, -29528, 113817, -197569,
- 158914, 97174, -11811, 24696, 111669, 5369, -46708, -82141, -48855, 41339,
- -32212, 98784, 537, -8053, -37044, 11274, -25770, -52613, 97711, -13959,
- -49392, -2684, 75162, -55298, 4832, -5369, -40802, 66035, 4832, -24696,
- 34360, 38118, -5369, -27380, 12885, 45097, 12885, -22549, -20938, 12348,
- -30065, -32212, 18254, -11811, -7516, 13422,
- },
- {
- 2403034, -24460376, -220117, -581968, 489626, -106837, -16643, 61203, -8590, 86436,
- -120796, -47782, 576063, -366146, -99321, -89657, 318901, -405874, -140660, 2684,
- -257698, 274878, 128849, -38655, 110595, -168577, 66572, -96100, 212601, 46708,
- 47245, -48318, 39728, -81068, -111669, 75699, -149787, -15032, -32212, 268435,
- 0, -262530, 178778, 214748, 107911, 216359, 25770, 53150, -9664, -68183,
- 27917, -83752, 2684, 108985, -53150, -39192, -33286, 8590, -126165, -51003,
- 55835, 89657, -10737, -16643, 59593, -33823, 60666, -22549, 33823, 16106,
- 11274, -81604, -58519, 56371, 5369, 29528, 10201, 5369, 6442, 35433,
- 33823, 9664, -33286, -25233, 6442, -36507, 11811, -18790, -34360, 23622,
- 24159, -3221, -1074, 9664, 2684, -19327,
- },
- {
- -178778, -4602595, 799401, 271120, 50466, -136365, 195958, 424665, 184684, 39728,
- -68183, 86973, -216896, 768799, -1088237, -1061931, -1227287, 1309965, 38118, 410169,
- -746251, 336081, -253403, -140660, -137439, 721018, -143881, -367757, -22549, -18254,
- -24696, 396211, -256624, 488553, -178778, 309238, 308164, 17180, 19327, -106837,
- -54761, 104690, 91805, -246424, 9127, 90731, 25233, 269509, -213675, 77309,
- 135291, -52613, 170188, -40265, -26844, -28454, 77846, 93952, 4295, -537,
- 11811, -32212, -51540, 79994, 116501, -27380, -5906, -32749, -537, 60130,
- -68719, -59593, -537, 6442, -37044, 40265, 51003, 34897, 61740, 4295,
- 32212, -28991, -52076, 11811, 8590, -3221, 26307, -13959, -8053, 13959,
- 12885, 28454, -11811, -24159, 12885, 24696,
- },
- {
- 4021163, -21920976, 504122, 1734093, -296890, -24159, 115427, -287763, -249645, 695248,
- 344671, -319438, -333397, 74088, 3758, -408559, -21475, 403190, 15569, 97174,
- 121870, 120796, -332860, -338229, 47782, 9127, -11274, -276489, -391379, 219043,
- -16643, -25233, -255014, 38655, 19327, 20401, 24696, 28991, -18790, 130460,
- 135828, -25770, -113817, 83215, -2684, -193274, -61740, -96100, 4832, 121333,
- 1074, 38655, 119185, 71404, -28454, 92342, 95563, -8053, -66035, -52076,
- -70330, 40265, 76773, 69256, -16106, -44560, 45634, 26307, -5906, -8053,
- -537, 31139, -3758, 10737, -5906, 34897, 34360, -23085, -38655, 18254,
- -21475, -41876, -62277, 28991, 18254, 31139, 2147, 27380, -26844, -18254,
- 30065, 4295, 6442, -32212, 1074, 17180,
- },
- {
- -114890, 1787243, 40802, -383326, -29528, -51003, 180389, 102542, 108985, -132607,
- -49392, 10737, -134755, -915365, -446677, -2218888, 1082869, 13959, -987843, -194884,
- 351650, -98247, 660351, -1534914, -273267, -454730, -41876, 546535, -65498, 1061394,
- 421444, 191126, -727997, 552977, 361851, -186831, -229244, 56908, -234076, 291521,
- -35970, -235686, -17180, -38655, -6442, 118112, 70867, 12348, -11274, -79994,
- -112206, -6442, 36507, -9127, 28991, 35970, 120259, 22549, -3758, 51003,
- -25233, -58519, 14496, -17180, -68719, -1611, 44023, 55298, -42413, -121870,
- -48318, 73551, 15569, -11811, 34360, 1611, 56908, 52613, 0, -15032,
- 22549, -8590, 6979, -16106, 3758, 10201, -29528, -36507, -30065, -41876,
- -31139, -12885, 17717, -4295, -19327, 5906,
- },
- {
- 291521, 32250372, -310311, 539018, 311922, 177704, -84289, 155693, -61203, 9127,
- 394063, -467078, -121870, 250719, 230318, -351114, 48855, -112743, -190589, 84289,
- 38118, 1611, 140123, -278099, -529892, 31675, -237297, 140123, -245887, 195421,
- 51003, -13959, 129386, 160524, -101469, 187905, -45634, 105764, -54224, -79994,
- -48318, 1611, 41876, -234613, 212064, -323196, -69793, -230854, 35433, 187905,
- 11274, -49929, -107911, -60666, 30602, 45097, 50466, 41876, 8053, -15032,
- -71941, -3221, 54761, -46708, -67646, 0, -11274, 27917, -2147, -23085,
- 20401, 10737, 1074, 114890, 8053, -51540, 58519, 16106, -44023, 18790,
- 17180, -19327, -12885, 5906, 1611, -5369, 20401, 0, 14496, 5369,
- -18254, -9127, 18790, 18254, -4832, -15032,
- },
- {
- -134755, 1882269, 358630, -688805, 97711, -88584, -88584, 49929, 183610, -38655,
- -94489, -98784, -501437, 168577, 2534568, -5063230, -1031329, 1085553, 106300, -144955,
- -46708, -639950, -729071, 1572495, 287763, 1049046, 204011, 310311, 354872, -264677,
- -217433, 63888, 297427, 47245, -84289, -183610, -228707, -22012, 537, 75162,
- 291521, -109522, -156229, 38655, 141197, 165356, 37044, -133144, 141197, -181462,
- -98247, -134218, 28991, -40802, -3758, 2147, 121333, 125091, 95563, -66572,
- -60130, -4295, 9664, -119185, -45097, -9664, -71404, 7516, 7516, -67109,
- -44560, -25770, -9127, 95563, 52613, -4295, -33286, 26844, -3758, 4295,
- -6979, -78920, -28991, 28991, 4832, 24696, 57982, 7516, -22549, -10737,
- 8053, 4832, 2684, 23622, 9664, 18254,
- },
- {
- 1972464, -1752347, -1442572, 936840, 646929, 616865, -10201, -190589, -86973, 354872,
- -63351, 145492, -537, -716723, 820339, -511101, -409633, 288300, 101469, -141197,
- 181462, 139586, 132070, -125628, 137439, 41876, -333397, 42413, 312459, -106300,
- 81068, -191126, 49392, 192200, -84289, -247497, -134755, 151934, -122407, -46171,
- 317291, 34897, -65498, -52613, 169651, 297963, -167504, -198642, 93952, 243203,
- -4832, 0, 170188, -82141, -158914, 38118, 16643, -104153, 1074, -14496,
- -37581, -1611, 15569, -16643, -40265, 47782, -4295, -31675, 30065, 39728,
- 25770, 1611, 37581, -10201, 22549, 8590, 14496, -47245, 11274, -19327,
- -47245, 537, 42950, 0, 33823, 55298, 28991, 13959, 35970, 6442,
- 537, -18254, -22012, 5906, 19327, 24159,
- },
- {
- 169114, -317828, 639950, -1131187, 119185, 22012, -249645, 297963, 285078, 278099,
- 84289, 114890, 22549, 148713, 591632, -149787, -259309, 112206, 606664, -580894,
- -469762, 449898, -2147, -336618, 126702, 453656, -741956, -192200, -167504, -434865,
- 143345, 143345, -13422, -56908, 74088, -4295, -204548, -12885, -8590, -29528,
- -72478, -113280, -5906, 9664, -132070, 61740, 20401, -5369, 90731, 102542,
- 96100, -20401, -61740, -40265, -31675, -67109, -5369, 56371, 21475, -49929,
- 155156, -39728, -125628, -25770, 103079, -3758, 40265, 74625, -6979, -31675,
- -35970, -20938, 22549, 33286, 11811, -53150, -34360, -64425, 18790, 22012,
- -10201, 46171, 20938, -62814, -34360, 10201, -18254, -5906, -15032, -26844,
- 10737, -12885, -1611, 3221, 26844, -15569,
- },
- {
- 1219234, 781684, -841814, 543313, 509491, 505196, -586800, -165356, 250719, 162672,
- -244813, -325344, 75699, 178778, 427886, 91805, 519691, -357556, 98784, -172336,
- 121333, 268435, 151934, -201327, 249108, -34360, 92879, -77846, -141734, -2684,
- -26307, -76773, -227096, 84826, 77309, -59593, -272194, -68183, 103079, -25233,
- -9127, -1611, 99858, 140123, -137439, -136365, 3758, 79457, 6979, 65498,
- 66572, 76236, 93416, -51003, -31675, 27917, 5906, 4832, -106300, -3758,
- 71404, -12348, -3221, 76236, -1074, -59593, -6442, -19864, -22549, 67646,
- -10201, -26844, 27380, 6442, 25770, 12348, -14496, -28454, -9664, 7516,
- 19327, 47782, -3221, -12885, 22549, -26307, -9664, 12348, -12885, 18254,
- 23622, 20401, 16106, -16643, -6979, 11811,
- },
- {
- 70330, 1740536, -199716, 1052804, 206158, 47245, 279710, -260919, 231391, 86436,
- 97174, 388695, -305480, -610959, 1143535, -2042257, 1025960, -205622, 186294, 495532,
- -1648194, 2137820, 645856, -416075, -116501, 98247, 117575, -596464, 314606, 740345,
- -5369, -89657, -8590, 42950, 30602, 98784, -10201, -113280, 25770, 83752,
- -63351, -129386, -24696, -41876, 9664, -82141, 41876, 172872, -141734, -93952,
- 100932, 151398, 22012, -52076, 54224, 82678, -75162, -64425, 18790, -70867,
- -31675, 45634, 32749, -32212, -37581, 15032, 4295, -75162, 23085, 5369,
- 9664, -20938, 4295, 6442, 49929, 53687, 46708, -25233, -18254, 18790,
- -47782, -54224, -32212, -28454, -4832, -8053, 33823, 8590, -20401, -6979,
- -15569, 34897, 55298, -19864, -5369, 38655,
- },
- {
- 17717, 1621350, -456340, -71404, -289373, 5369, -1173600, 69256, -186831, 141197,
- -537, 411243, -411243, 479963, 1781338, -119722, -333397, 187905, -317828, -68183,
- 53150, 227633, 58519, 121870, 558346, 35433, 15569, 235149, 222801, -186294,
- -53687, 2684, -34360, -96100, 63351, 46171, -112206, -207769, -90731, 61740,
- 201327, -35970, 43487, -229781, -153008, -180926, -51540, -45097, 17717, 214748,
- -76773, -91268, 81068, -16106, -72478, -101469, -46708, 114354, -16643, -26844,
- -9127, -30602, 23622, -73014, -26844, -78920, -15032, 33823, 15569, -69793,
- -3221, 11274, 2147, -9127, -49929, -27917, 47245, 9664, -55298, -27380,
- 2684, -6442, -55298, -17180, -537, -25770, 23622, 57982, -9127, -6979,
- 16106, -19327, -23622, -6442, 20401, 6979,
- },
- {
- 82141, -1180579, -454193, 509491, -322123, -15569, -66572, -53150, 167504, -321049,
- 441845, 279710, -212601, -656593, -5369783, 612033, -1692217, -19864, 47245, -6979,
- -434329, 1010928, 369367, -214748, -232465, 815507, -654983, 1065689, -376883, 114890,
- 277025, -76236, -158377, 328028, -502511, 330176, 566399, -138513, 13959, 195421,
- 39728, 84289, -39728, -300648, 31139, 85899, -215285, 44560, 63351, 16643,
- 86436, 35433, 106300, -79457, 10201, -17717, -4832, 5906, 45097, 123480,
- 42950, -7516, 11811, 88047, -5906, -10737, -82678, 23622, 42950, 11811,
- -69256, 29528, 60130, -40265, 55298, -64961, -2147, 17180, 40802, 2147,
- -32212, -23622, -46171, 39192, 11811, 2147, 11811, -11811, -39192, 2684,
- 3221, -18254, 4295, 26307, -12885, -20938,
- },
- },
- {
- {
- -691490, 4330938, -881542, -101469, 459562, 315680, 215285, -50466, -27917, -464393,
- -351650, 463320, 143345, 136902, 658204, -70330, 64961, 167504, -329102, -823023,
- -159988, 140123, 105764, -304943, -3758, 60130, 264677, 185220, 47782, 427886,
- 111132, 119722, -150324, -19864, 124017, 49929, 15032, -425739, -41339, 94489,
- -119185, 26844, -7516, 3221, -124554, -136365, 46708, 124554, -64425, -113280,
- -198642, -91805, 23085, 74088, -7516, 76236, 104153, 133681, 60666, -29528,
- -28991, 17180, 46708, 46171, 47782, 28991, -1074, -65498, 4295, 70867,
- 37581, -4295, -20938, -26307, 39728, 66035, -46171, -15569, 5369, -52613,
- -33823, -52076, 2147, -14496, 7516, 12348, -33823, 10737, -22549, -17717,
- -4295, 9127, -1611, 537, 3758, -1074,
- },
- {
- -48855, 3148748, 612033, -300648, -6979, 291521, 216359, -104690, -38655, 201327,
- 70330, 153545, 46708, -353261, 1217086, 1574106, 180389, -103079, 170725, -753230,
- -45097, -33286, -403190, 655519, 738734, -663036, -55835, -161061, 177167, 108985,
- -198105, -30065, -160524, 148713, 129923, -279173, -209380, -34897, -63351, 5906,
- -177704, 68719, -90194, -5906, 56371, -49392, -104153, 15569, 64961, -155156,
- 57982, 48855, -88584, -120796, 83215, 215822, -42950, -55835, 26844, 18254,
- -154082, -57982, -40802, -12348, 10737, 29528, -26844, -91805, 4832, 11274,
- 4295, -40802, 81068, 6442, -18254, -30602, 47782, 44023, 9664, -68719,
- -11274, 65498, 10201, -8590, -11274, -26307, -16106, 10201, -25770, -30065,
- 37044, 5369, -27380, -45634, -15032, 20938,
- },
- {
- -1021665, 2455111, 3988951, -685584, -1372779, 19327, -28454, -157303, 361851, 292595,
- -129923, -187905, 323733, 467615, 710280, 603980, 146029, -32749, 532576, -112743,
- 412317, 365072, -251256, 49929, -537, -290447, -272730, 113280, 150861, 20401,
- 74088, 194347, -11274, -204011, 73551, 217433, -63351, 163209, 100932, 14496,
- 164819, -88047, 89657, -230318, -112206, -56371, 52076, -13422, -9664, 62277,
- 127775, -88584, -89657, 104153, -40265, -42413, -2684, -97711, 83215, -12348,
- -49392, -15569, -36507, 17180, 38655, -111669, -47245, 13422, -11274, -54224,
- 54224, -14496, -42413, -6442, 19864, 57445, 51540, -21475, -49392, 18254,
- 25233, -6979, -4832, 25233, -12885, -17180, -20401, 2147, 16643, -23085,
- 5369, 34897, 15569, -5369, 24696, -1074,
- },
- {
- -6279779, -13621489, 1176284, -355409, -544924, -40265, -122407, -77846, -144418, 55835,
- 308164, 206158, 223338, 203474, 187368, 149250, -34360, -184147, 181462, -97174,
- 17180, -165893, -15569, 98784, 135291, 133681, -133144, 28454, 537, -303869,
- 6979, -137976, -101469, 122943, -102005, -245350, -18790, -101469, 236223, 9664,
- -57982, 70867, 81604, 106837, 174483, 36507, -117575, 40265, 2684, -20401,
- -84289, 53687, 22549, -67109, 28991, -149787, -44560, -13959, -56371, 38118,
- 537, -78383, 1074, -28454, -64425, 15569, -31139, -11274, 55298, -46171,
- -51003, 65498, 93416, -6442, 27917, 2147, -10737, 23622, -17180, -17717,
- -37044, -34897, -9127, 14496, -1611, 19864, -16643, -3221, 31139, -4832,
- -26844, -4295, 12885, -9127, -17717, -5906,
- },
- {
- 184684, -2092186, -617938, 24159, -165893, 174483, 63351, 136365, 155693, -381178,
- 144418, 78383, -26307, -1726577, 1505386, 414464, 858993, -138513, -2199560, 625455,
- 84289, 99321, -273267, 85899, 190052, 1050656, 192737, -103616, 250182, -1061394,
- 286152, -156766, 122407, -141734, -66035, 561567, -55298, -102542, 40265, -268435,
- 44560, 20938, -281320, -245350, 62277, -115427, 141197, 71404, -146566, -53687,
- -63351, 139050, 76236, -29528, 40265, 104153, -68719, -7516, 66572, -42413,
- -86973, -38655, 7516, -24696, -66572, -100395, -68719, -31675, 73551, -16643,
- -14496, 51540, -4832, 57982, 49929, -5906, -42413, -11274, -35433, -55298,
- -43487, -4295, 52076, -3758, -18790, 4295, -15032, 5906, 9664, -8053,
- -2147, -17717, -4832, 23622, 8590, -38118,
- },
- {
- -8008504, -6386080, 2169495, 640487, 1018981, 96637, -272730, -455803, 420907, -90194,
- -565325, 1074, 81068, 156229, -314069, -102005, 202400, -89657, -14496, 141734,
- -237834, -289373, 89121, -144955, -30602, -64425, 128849, -239444, -22549, -134218,
- -32749, 159988, 26844, 3221, -81068, -41876, 194884, -28454, 128312, -48318,
- 9127, -159988, 94489, 123480, -308164, 82141, 73014, 1074, 43487, -28454,
- 104690, 132607, 12885, -197032, 6442, 77309, -91805, -102005, -7516, 13422,
- -9664, -27917, -81604, -13422, 25233, 15569, 9127, -38655, 65498, -23085,
- -32212, -50466, 26844, 44560, 1074, 38655, -45097, -6979, 28991, 23622,
- -6442, 23622, 78383, 55835, -27380, -35970, -11274, -24159, -25233, 37044,
- -9127, -537, -13422, 9127, 28991, -3221,
- },
- {
- 270583, -96100, -555661, 370978, -81068, 73551, -31675, -66035, -26844, 168577,
- -112206, -40265, 3221, -646393, 451508, 583042, 282394, -143881, -443455, 179852,
- 341987, 511638, -958851, -1117765, -31139, -176631, -70867, 342524, 438624, 671089,
- 264677, -82141, 228170, 213675, -311385, -54761, -155693, 13959, -31139, -40265,
- -195958, -56908, 45634, 108448, 69256, -130460, -76773, 65498, -30065, 57982,
- -35970, 14496, -85899, -81068, 32212, 12885, -34897, 2147, 126165, 62814,
- 69793, 56371, 16106, 1074, -11811, 47245, -5906, -100395, -68183, 42950,
- 78383, -66572, -60666, -25233, -33823, -52613, -9664, -47782, -38118, 1611,
- 19864, -13422, -4295, 10201, -1611, -19327, -2684, 19864, -12885, 32749,
- 44560, 36507, 4295, -15569, 15569, -2684,
- },
- {
- 3827353, 28887414, 1076426, 47245, 30602, -14496, 247497, 366683, -12348, -144955,
- -159451, 29528, 411780, -137976, -284005, -24696, -86436, 215285, 450972, -453119,
- -126165, 88584, -143881, -486942, -30065, -52613, -210453, -12885, -86973, -79457,
- -14496, 274341, 186294, -213675, -30602, -175020, -187368, 144955, -281320, -69793,
- 73551, 39728, -16643, -6442, 66572, -191663, -23085, 16643, 17717, -93416,
- -53687, -57982, 184684, 115964, -66035, -100395, -30065, -22012, -25770, 53150,
- 537, -537, -15569, -113817, -16106, 38118, 13959, -12348, 24696, 55835,
- -24696, 4832, 10737, -48318, -84826, 51003, 8053, -85899, 9127, 8053,
- -28454, 28454, 16643, 1611, 5906, 23085, -19327, -45097, 7516, -10737,
- 2147, 6442, -26307, -15032, -19327, 8590,
- },
- {
- 450435, 304406, -2209224, -41876, -136902, 86973, 20938, 10737, -172336, -9664,
- 130460, 181999, 122407, -230318, 1114007, -4001299, -974958, 1012539, 278099, -322123,
- -1046361, 609349, 102542, 578210, -360777, 1326608, 552440, -494458, 414464, -223875,
- -54761, 262530, -28991, 359167, -353798, -428960, 155693, -24696, 32749, 162672,
- -107374, -188979, -56371, -212064, -115964, -51003, 31675, -2147, -74088, -36507,
- -48855, -7516, 50466, -130460, -128849, 89657, 75162, -68719, -32749, -38118,
- 97174, 98247, 114354, 45097, 100395, 79994, 31139, 26844, -83215, -9127,
- 11811, 47782, 54761, 19327, -67109, -23622, 16643, 2147, 17717, -537,
- -25770, 25233, 56371, -1074, 4295, -11274, -45097, -60130, -4295, 16106,
- -5906, 2147, 20401, -7516, -537, -24159,
- },
- {
- -1082869, 1147293, 335007, 969589, -244813, 74088, 371515, 236223, -146029, -162672,
- -437550, -307627, -228170, 293132, -14496, -38655, 128849, -469762, -146029, 306553,
- 312996, 11811, 32212, -118112, -171262, 128849, 28991, -79457, 60666, -31675,
- -163209, -91268, -41876, -411243, -301721, 99858, 108448, 13422, 20401, 33823,
- -51540, -89657, -54224, 224949, 76773, -238908, -126165, -2684, 18254, -108985,
- -114890, -49929, -110059, -107374, 137439, -26844, -74625, 31139, -20938, 22549,
- 83215, -91805, -31139, -31139, 11274, 8053, -21475, 11811, 2147, -47782,
- 12885, 28991, 3758, -38118, 4832, -537, -4295, -16643, 33286, -16643,
- 35433, 23622, -12885, -28454, -7516, -49392, -48855, -10737, -26307, -16643,
- -5906, -1074, 39192, 9664, -16106, -26844,
- },
- {
- -246961, 1522566, 358630, -1046361, -233539, -176631, -264141, 335544, 5906, 185757,
- -451508, 95563, 619549, -222801, 557272, -129386, 353798, 733903, -430034, -253403,
- 834834, 340913, -219043, -500901, 171262, -163746, -486405, -10201, -142808, 184147,
- 234076, 145492, -67646, 82678, -151934, -85899, 213675, 91805, 140123, 75162,
- -70330, -71404, -145492, -59056, -23085, -74088, 47245, 30602, -32212, 16643,
- -92342, -56371, 110595, 161598, 61203, -24696, 12885, -31139, -67109, 18790,
- -32212, -77309, 46708, 39728, -46708, -50466, 22012, -80531, -62277, -8590,
- -22549, 47782, 48318, -6442, -33823, -8053, 27380, 78383, 41876, -26307,
- 25770, -13422, -30065, 28454, 44560, 0, 12348, 9664, 12885, 37044,
- -4832, -4295, -3221, 537, 4295, -14496,
- },
- {
- 1074, 3320547, -581431, 1511829, -731755, -449361, 664109, 173946, 330712, -146566,
- 198642, 474057, 50466, 476741, 363462, 440234, 285615, -204011, 21475, -248034,
- 294742, -98247, -92342, 98247, 537, -44023, 111669, -292058, -27917, 126165,
- -18790, 2147, 135828, 354335, -249645, 132070, 246424, 230854, 105764, -31675,
- -39728, -12348, 119185, -162672, -70330, -78920, 32212, 26307, -17717, -11811,
- -14496, -23622, -42413, -34360, 61740, -29528, 26307, 4295, 42413, 49929,
- -64961, 44023, 42413, -49392, -19864, 43487, 37581, 39728, 37581, -32749,
- -35970, 22012, -12348, -20401, -26844, -3221, 20938, -7516, 18790, 18790,
- 13422, -10201, -48855, 4832, -30065, -5369, 34360, -16643, 11811, -3758,
- -32212, -18254, -46708, 1611, 11811, -6979,
- },
- {
- -93952, 1206349, 1089311, 205085, 93416, -50466, 118112, 141197, 102542, -66035,
- 178778, 146566, -925029, 782758, -2240362, -1308891, 709743, 164283, -28454, -390842,
- 757525, 963683, -530965, 9127, 254477, -218506, -402116, 359704, -366146, 129923,
- 345208, 390305, 56371, 211527, 17180, 321586, -49392, -166967, -141734, -111669,
- -50466, -116501, -29528, -117575, 18254, -58519, -114354, -97174, 64425, -78920,
- -84289, -109522, -44560, 42413, -21475, -61740, -49929, 121870, -25233, 71941,
- 185757, -33823, -169651, -88047, -10201, 51003, -10201, 40802, 28454, -26844,
- -13959, -6979, 17717, 23085, -7516, -78920, -46171, -1611, 11811, 4295,
- 24696, 52613, 17180, 27380, 17717, 5369, -2684, -35970, 20401, 6979,
- 17717, -1074, -63351, -4295, 21475, -37581,
- },
- {
- -158914, 1936493, -272730, 617938, 289910, -1248225, 163209, -41876, -503585, -188442,
- 325344, -245350, -344671, 253940, 2203318, -201863, 568546, 362925, -381715, -15032,
- 32749, -10201, -60666, 136902, 177704, 159451, -171799, -198105, -34360, -226023,
- 15569, 123480, 253940, 276489, 100395, 56908, 27380, -11274, 211527, -288300,
- -47782, -135291, -132070, -31139, 152471, 150324, 163209, 4295, 16106, -48318,
- -43487, 124017, -103616, -68719, 52613, 130460, 90731, 17717, -43487, 23622,
- -24696, 39728, 29528, 50466, 72478, 75162, 37044, -30602, 2147, -26307,
- -6979, -35970, -8053, -18254, 49929, 36507, -537, -45634, 46708, 65498,
- 12885, -7516, 44560, 44560, -18254, 32749, 27917, -54224, -12885, 20938,
- -17180, -537, 20401, 4295, 3221, -3758,
- },
- {
- -215285, -759136, 585726, 12348, -49929, -50466, -222801, 443992, 33823, 122943,
- 158914, 344134, 846645, -3963718, -4460861, -2588792, 319975, -31675, -92342, 610959,
- 467078, 381178, 521302, -504659, -363462, 268972, 71404, 1318555, -392990, 119722,
- -341987, -116501, 76236, 27917, -19864, 486405, -465467, -62814, 362388, 1611,
- -222265, -178778, -270583, -46171, 83752, -43487, 20401, -44023, 18790, 20938,
- -2147, -41339, -198642, -67646, 3758, 92342, -149787, -30065, -73014, -168577,
- -92879, 31675, 54761, -17717, -23085, -54224, 130460, 92879, -85899, -26307,
- -6442, 4832, -98247, -27380, -45634, -19864, 78383, -44560, -34360, -48855,
- 23622, 47782, 48318, 19327, -45634, 9127, -30065, -9127, 24696, 9664,
- -8053, 16106, 8053, -18790, -1611, 9664,
- },
- },
- {
- {
- 1556389, 7426536, 3563749, -209380, -343597, 181999, 47245, -76773, 26844, -471910,
- -84289, 518617, -10201, -165893, 63888, -23085, -350577, -14496, 32749, -361314,
- 255551, 83752, 133681, -362925, -63888, -47782, -13959, -77846, 19327, 346282,
- -22012, -132607, -361314, -190589, 280784, -100932, -45634, -359167, -36507, 28991,
- -12885, 128849, -82141, -54224, -165893, -112743, 40265, 128312, 30602, -87510,
- -110059, -25770, -16643, 132070, 70867, 47245, 92342, 124554, 48855, -68719,
- 12885, 15569, 62814, 16643, -16106, -22549, -41339, -44023, 18254, 41876,
- 6979, -30065, -12885, -6442, 36507, 25770, -61740, 12348, -19864, -59056,
- -35970, -31675, 18790, -15569, 9664, -22549, -12348, 0, -24159, -16106,
- 3221, -3758, 14496, 10737, 0, -8590,
- },
- {
- 173946, 248571, -1688459, -528818, -97174, 99321, -26307, -213675, -19864, 248034,
- 361851, 71941, 16106, -161061, 1842541, 2051384, -20938, -419833, 59056, -673236,
- 150324, 505196, 241055, 409096, 457414, -344671, -286689, -226560, 252866, 156766,
- -220117, -686121, -362925, 299574, -183610, -74088, -46171, 94489, 158914, 187368,
- -217970, -138513, -118648, 84826, -38655, 7516, -92879, 93416, 63888, -127775,
- 89657, -40265, -141734, -105764, 239444, 204548, 5369, 40802, 47245, -51540,
- -130997, 22012, 7516, -14496, -45634, 14496, -49392, -41339, 19327, -19864,
- -3221, 6442, 38655, -13959, 2684, 22012, 62814, 15569, -14496, -42413,
- 19327, 58519, -15032, -6979, -25233, -27380, 5906, 4832, -44023, 0,
- 37044, -13422, -35970, -34897, 0, 26307,
- },
- {
- 602369, -1411971, -1285806, -823023, -544924, 103616, -27917, -125628, 179315, -26307,
- -213675, 54761, 278099, -31675, 204011, 170725, -287763, -297963, 743566, -650151,
- 106300, 73551, -244276, 186294, 92342, -260919, -248571, 163209, 84826, 165356,
- 262530, 95563, -22012, -124017, 208306, -70867, -179315, 198642, 71941, -19864,
- 96100, -227096, 26844, -168577, -190052, -88047, -3221, 10737, 24159, 61203,
- 35970, -25770, -82141, 35433, -50466, 60666, 6979, -68719, 82141, -39728,
- -75699, -26844, -40802, 35970, 38655, -70867, 11274, 25770, -48855, -15569,
- 71941, -52076, -47245, 22012, 19864, 48318, 2147, -49929, -16106, 22549,
- -1074, -23622, 19327, 31139, -24696, -26844, -16106, 23085, 5369, -17717,
- 24159, 31139, -12348, 6442, 19327, -13959,
- },
- {
- 7829189, 2540473, -2046015, 175557, 327491, -42950, -90731, -15032, -27380, -193274,
- 27917, -22012, -237297, 249108, 93952, -384936, -95563, 69793, 272194, -130460,
- 101469, -97174, 104690, 141734, 103616, -10737, -373125, 114354, -214212, -167504,
- 127238, -122943, -20401, 195421, -34897, -225486, -162672, -9664, 153008, -101469,
- 10201, 55835, 103079, -35433, 6979, -124017, 9664, 29528, 32749, -9127,
- -97711, 119722, -62814, -57982, 20938, -51003, 37581, 35970, 53687, 56908,
- -1074, -69256, 30065, -24696, -47782, 19327, -47782, 29528, 17180, -24159,
- -33286, 60130, 59593, -35433, 11274, -23622, -4832, 8590, -33823, -23085,
- -24159, -25233, 17717, 5906, 4832, 34360, -23085, 27917, 15032, -22549,
- -25770, 5369, 3221, -14496, -6979, 9127,
- },
- {
- -384936, -318364, 840203, -214212, 5369, 117575, -143345, -87510, 34897, -331249,
- 62814, 157840, -147640, -241592, 2811593, -349503, 504659, -902480, 208843, 335007,
- 180389, 435402, 143881, 623307, 114890, 405338, -440771, -256087, -189515, -1421634,
- 226560, 51003, 183073, -270583, -226023, 364535, -18790, 90194, 100932, -226023,
- -9127, -44560, -176631, -25770, 94489, -91805, 47782, -45634, -43487, -117038,
- -19327, 112743, -78920, -10737, 28991, 102005, -122943, -24159, 61203, -26844,
- -21475, 13959, -13422, -78383, -73551, -32749, 2684, 10201, 31139, -31139,
- 66035, 60130, -5906, 30602, 24696, -38655, -51540, -28454, -44023, -17180,
- -16106, 28991, 44023, -31675, 1074, -9664, -11811, 22549, 1611, -16106,
- -13959, -24696, 7516, 27917, -17717, -31675,
- },
- {
- 8542153, 13803488, 87510, -615254, -591632, 54224, -267362, 82141, 231928, -622770,
- -491237, 229781, 185757, 527207, 172336, -20938, 8053, -411780, -53687, -64961,
- -361314, -199179, 112206, -89657, -91268, -15569, 233539, 3758, 26307, -143345,
- -47245, 235149, -11274, -233002, -148713, -71404, 113817, 3221, 207232, -134218,
- 30065, 9127, -13959, 153545, -223875, 134218, 45634, -9664, -20938, -92342,
- 113817, 38655, -59593, -172872, 35970, -37581, -130997, -29528, 46171, 38655,
- 23622, -24696, -94489, -42950, 57445, 19327, -25770, -12348, 58519, -8590,
- -23622, -26307, 22012, 19327, 3758, -10201, -33286, 16106, 43487, 12348,
- 3758, 37044, 59593, 6442, -30065, -25233, 9664, -30602, 10737, 19327,
- -18790, -4832, -5369, 26844, 10737, -10201,
- },
- {
- 137439, -555125, -11274, 286689, -33823, 26844, -135828, -198642, -17180, 234076,
- -33823, -60130, -54761, 28454, 568009, 1404991, 10201, -146029, -17717, 98247,
- -74088, -536334, -1114007, 90194, 165893, -306016, -415538, 137439, -294205, -126165,
- 37044, 162672, 425739, -90731, -200790, 180389, 32749, 56371, -83215, -128312,
- -15032, 200253, 22549, 98247, -45634, -201863, -61203, 91268, -50466, 108985,
- -37581, -17180, -89121, -13422, 1074, 8053, -45634, 40802, 16643, -32212,
- 58519, 68719, -14496, 2147, 31139, 14496, -57982, -26844, -8053, 72478,
- 52613, -89657, -37581, -34897, -42950, -44023, -39728, -54761, -12348, 19327,
- -3758, -9664, 9127, 21475, -6442, -8590, 15569, 26307, 15032, 41876,
- 34897, 12348, -16106, 2147, 14496, -3221,
- },
- {
- -7713762, 15267535, 1941325, 73551, -71941, -2147, 452582, -63351, 57445, -176631,
- -183073, 526134, 226023, -215822, 245887, 151398, -9127, 219580, 261456, -401579,
- 47782, 71941, 18254, -137439, 222801, -206695, 2147, -69793, -183073, 104690,
- 145492, 176094, 40802, -350040, -129923, -343061, -250719, 208843, -99858, 23085,
- 135291, 537, -101469, 55835, -25233, -50466, 64961, 75162, -117038, -117575,
- -44560, 15569, 184684, 26844, -43487, -50466, -6979, -26307, -27917, 41339,
- -4295, -17180, -29528, -40265, 25770, 14496, 26307, -16106, 0, 22549,
- -34360, -5906, -42950, -70330, -37044, 61203, -61740, -50466, 39192, -9664,
- -25770, 27380, -1611, -5906, 16106, 2147, -24159, -20401, -3221, -12885,
- 3221, 3221, -21475, -15032, -3758, 23622,
- },
- {
- 151934, -1246077, -1124745, 505732, -75162, 118112, 17180, -70330, -203474, 104153,
- 227633, 117575, 1074, -1759326, -425202, -797790, 430570, -142808, 158914, -447750,
- -1020055, 879395, 785979, -143345, -947040, 944356, 56908, -318364, 127238, -373125,
- -39192, -70330, 37581, 303332, -234076, -125091, 172336, -117038, 300648, 45097,
- -226023, 70867, 48318, -234613, -207769, -56371, 41876, 156229, -75699, 3758,
- -19327, 27380, -11274, -67109, -32749, 75162, -18254, -155156, -28454, -8590,
- 93416, 70330, 121333, 88047, 51540, 45097, 20938, -5369, -77846, 3221,
- 51540, 41339, -9664, -61203, -64425, 9127, 4832, -27380, 8053, -11811,
- 6442, 56371, 28991, -8590, 3221, -41339, -62277, -27380, 19327, 13959,
- -18254, 9127, 5369, -13422, -8053, -29528,
- },
- {
- -12348, 1018444, -1868311, -93416, -624381, -727997, 45634, 270046, -208843, -296353,
- -240518, -268435, -104690, 550293, -168577, 101469, 213675, -418759, -122943, 338766,
- -117575, -270046, -80531, -97711, -143881, 137976, 128312, -140123, -11274, 161598,
- -74625, -84289, -36507, -261456, -197032, 202400, 144418, 44023, 248034, 9664,
- -45634, -67109, 83752, 202400, -131533, -199716, 117575, 76236, -75162, -184684,
- -41876, -17717, -113817, 1611, 130997, -95026, -18254, 70330, -45634, 28991,
- 40265, -18790, -26307, -28991, 70867, -33286, -10201, 15569, -52076, -31139,
- -15032, 1611, -23622, -2684, -5906, -4832, -30065, 34360, 3221, 19864,
- 45634, 3221, -37581, -17180, -35433, -52613, -37044, -1074, -26307, -5369,
- 5906, 13959, 23085, -3758, -17717, -25770,
- },
- {
- 230854, 3344706, 948114, -74088, 6442, -192200, -99321, 244276, -253940, -47245,
- -265214, 156766, 317291, -204011, 644782, 352724, 307090, 241592, -519691, 503048,
- 824097, 273804, 135828, -75699, 296890, -129386, -185220, -112206, 131533, 479426,
- 85899, 41339, -82141, 70867, -363462, -77309, 243739, 44023, 151934, 51003,
- 121333, -36507, -24696, 81068, 4295, -113280, 41876, 24696, -123480, -91805,
- -82141, 5369, 119185, 122943, 15569, 32749, -19864, -59593, -34897, 47782,
- -99858, -22012, 68719, -1074, -83752, -537, -43487, -109522, 1611, 3221,
- 2684, 44023, 0, -35433, -20938, 34360, 36507, 67109, -5369, -21475,
- 15032, -30602, -26307, 53150, 36507, -6442, 15032, 1611, 23085, 22549,
- -12885, 7516, 1611, 1611, -15032, 11274,
- },
- {
- -1955284, 2288144, -78383, 383326, -1112933, -227096, 520765, -162135, -38655, -143881,
- 271657, 147640, -3758, -9127, -112743, 176631, 65498, -30602, -76773, -76773,
- 172872, -291521, -128312, 158377, -113280, -66572, -63351, -91805, -137439, 71941,
- 15569, 184684, 180926, 147640, -265751, 62277, 362388, 316754, -53687, -8590,
- -38118, -37581, 34360, -58519, -1074, 4832, -25233, -16643, -40265, 34360,
- -42950, 16643, -119722, 33286, 71941, -20938, 33286, 60130, 82678, 13422,
- -81604, 60666, 1074, -76773, 23085, 19864, 17180, 31675, 3758, -88584,
- 3221, 15032, -24159, -4832, -21475, 2684, 23085, 13422, 11811, -537,
- -10201, -35970, -9664, 13959, -33823, 17717, 16106, -11274, 9127, -18790,
- -28454, -25233, -28991, 9664, 8053, -10737,
- },
- {
- 92879, 363998, 43487, -272730, 47782, -192200, 99321, 156766, 83752, -177167,
- 16643, 168577, 109522, 2365990, -2307471, 164819, 534187, -94489, -265214, -628676,
- 1793686, 261993, -1520418, -540629, 130997, -339302, -121870, 455267, -485331, -186294,
- 508417, 282394, -11811, 41876, -130460, 232465, -128312, 58519, -225486, -66035,
- -13422, -93952, 45097, -71941, -30065, 28991, -105764, -35433, 174483, -3221,
- -74088, -118648, 1074, 79994, -25770, -63351, -17180, 82678, -35970, 105764,
- 107374, -94489, -117038, -16106, 56908, 28991, -27917, 49929, -12885, -3758,
- -23085, -1611, -10201, 2147, -35433, -60666, -35970, 10737, 22012, -5906,
- 39728, 45634, 15569, 31675, 4295, 18790, -23622, -13422, 11811, 9127,
- 19327, -34897, -63888, 22549, -2684, -37581,
- },
- {
- 500364, 2739116, -1061394, -228170, 326954, -645319, 1085553, -72478, -484258, -195958,
- -157303, -541703, 192737, -768262, 835371, -66572, 217970, 428423, -192737, -80531,
- 48855, -49392, 90731, -20938, 175020, 32749, -389768, -433792, -18790, 129923,
- -42950, 134755, 275415, 253940, 45634, 120796, 98784, -13959, 132070, -352187,
- 4832, -320512, -82141, 162135, 264141, 154082, 101469, -37044, 50466, -133681,
- 110595, 83752, -108985, -19327, 85362, 164819, 57445, -47782, 16643, -35433,
- 28454, 38655, -13959, 79457, 45634, 68719, -8053, -28454, -3758, 30602,
- -30065, -17180, -19327, -6442, 49392, 38118, -35970, -27380, 59056, 42950,
- -3758, 10737, 62277, 12885, -10737, 35433, -24159, -52613, 15032, 16106,
- -14496, 13959, 16106, 3221, -17180, 1074,
- },
- {
- 109522, -30602, 409096, -192200, 31139, -73014, -70330, 517007, 260382, 271657,
- -376347, 67646, 710817, -95563, 3961571, -826244, -1611, -68183, 94489, 898722,
- 404264, -139586, 582505, -230854, -344671, 459562, -101469, 744103, -312996, 111132,
- -250719, -8053, 54224, -31139, 70867, 237297, -479426, 15032, 127775, -2684,
- -326418, -174483, -43487, 212601, -24159, -78383, 104690, -24159, -44023, 3758,
- -12348, -20401, -139586, 33286, -8590, 48855, -157840, 4832, -97711, -171799,
- -30602, 34360, 4832, -16643, 9664, -25770, 146029, -3221, -67109, -11274,
- 5906, -29528, -86436, 8590, -46708, 38118, 32749, -48855, -21475, -25770,
- 43487, 38655, 47782, -14496, -34897, 2147, -30065, 537, 40265, 4295,
- -6442, 19327, -537, -23085, 15569, 16106,
- },
- },
- {
- {
- -1933272, 23130010, -1709397, -1115618, 722091, -237297, 114890, 219580, -59056, 24159,
- 349503, -117038, -193274, 315143, -775242, 303332, -419296, -260919, -201327, 580357,
- 149787, -161061, -5906, -220654, -17717, -244276, -65498, -173409, 180926, 313533,
- 99321, -247497, 134218, -193810, 22012, -126702, 198642, -8053, -60666, -245887,
- -17717, 148713, -77846, -37044, -46708, 41339, -60666, -103079, 192737, 4295,
- 56908, 12348, -121870, 105227, 47245, -65498, -25233, -59593, -55298, 3758,
- 108985, -6442, -35433, -86436, 1074, -56908, 27380, 25233, -21475, -31139,
- -40265, 537, 15032, 2147, -56371, -74088, 42413, -9664, -16643, 49392,
- 31139, 57982, 3221, -10737, -22549, -4295, 33823, -14496, 34360, 13422,
- -1611, -4295, 10737, -2684, -5906, 9664,
- },
- {
- -202937, -1863479, 1013612, -128312, 267899, -114890, -234613, 30602, 146566, 74088,
- 361851, 260919, -320512, -280247, 1620276, 430570, -467078, 89121, -825707, -541703,
- 103616, 671626, 60666, 71941, -264677, 220117, -250182, 491237, 44560, -25770,
- -126702, -872415, 162672, 69793, -217433, 355409, 164283, 187368, 137439, -210453,
- 11274, -28991, 258772, -11811, -89121, 63351, 537, 39192, -33823, 79457,
- 20401, -54761, 98247, 125628, 30065, -121333, 47245, 54224, -33286, -23622,
- 49929, 99321, 16643, -35970, 0, -41876, 16643, 94489, -1074, -38118,
- 23085, 17717, -86973, -40265, 60130, 18254, -38118, -38655, 8053, 69793,
- 4295, -40802, 9664, 17717, -1074, 31675, 23085, -18790, 22549, 22549,
- -42413, -12885, 20401, 31675, 15032, -13959,
- },
- {
- -433792, -6602439, 1647120, 923955, 668404, -182536, 84826, -90194, -260382, -363998,
- 253940, 224412, -312459, 387621, 81604, 387084, -372052, -203474, 375810, -590021,
- -473520, 168577, -213138, 201327, 304943, 145492, -105227, 271120, -281320, 195421,
- 169114, -145492, 136902, -13959, -204011, -23622, 141734, -103079, -3758, -143345,
- -168577, -121333, -92879, 91268, -28454, 65498, -61740, 99858, 59056, -25770,
- -20938, 184147, -31139, -31139, 84289, 65498, -4832, -41876, -32749, -46171,
- 9127, 45097, 8053, -13422, 0, 71941, 10201, -27917, 28454, 38655,
- -19327, -28991, 56371, -17180, -9127, -30065, -48855, 10737, 22012, 3758,
- -1611, 16643, 11811, -26307, 14496, 28991, 21475, -7516, -20401, 6442,
- -2147, -36507, -16643, 1074, -11811, 4832,
- },
- {
- -6517076, 18342732, 1458678, 502511, -300111, 51540, -27917, 210453, 13959, -390842,
- -172336, -151398, -64961, -74625, -526134, -670015, 164819, -95563, -120796, -30065,
- -19327, 214748, 210990, -44560, 68719, -367757, -83752, -72478, -137439, 442382,
- 54224, -24696, 239444, 21475, -76773, -280247, 23085, 86436, 80531, -67109,
- -55835, -157840, 185757, -32749, 18254, -59593, 192737, 6442, -5369, 48318,
- -20401, -13959, -82141, 113280, -41876, 56371, 23085, 128312, 4295, -9127,
- 13959, 65498, 61740, 16106, 92342, -38655, 35433, 27917, -38655, 59056,
- 14496, -93952, -66572, -8053, -11274, 2684, 32212, -7516, -9664, 24696,
- 47245, 20938, -10737, -28991, 5906, -13422, 13422, 10201, -48318, 1611,
- 23622, 3758, -18254, 9127, 15032, -2684,
- },
- {
- 426276, 222801, -1253057, 48318, 181999, -122943, -62277, 103616, 86973, -70867,
- -39192, -133144, 334471, -688805, 1924682, -762894, -549219, 526670, 2525441, -752156,
- -115427, 299037, 336081, 563178, -153008, -413927, -288837, -758599, -595390, -227096,
- -337692, 417149, 216359, -111132, 48318, -136902, 380641, 280247, -88047, 57445,
- -32749, -62814, 205622, 33823, 14496, 144418, -59593, 17717, 129386, -3221,
- 22012, -69793, -17180, 35433, -70330, -12885, -10201, 52613, 8590, 25233,
- 52613, 41876, -35970, -35970, 106837, 82141, 47245, 6442, -41339, 32212,
- 8053, -32749, -7516, -12348, -49929, 537, 18790, 18790, 64425, 59593,
- 33286, 17717, -74088, 6979, 20938, -10737, 22012, -4832, -9127, 3758,
- 5369, 10737, 9127, -22549, -13422, 28454,
- },
- {
- -5558762, 29923574, 771484, -752156, -197032, -111132, 25770, 563178, -671089, 79994,
- 545461, -67109, -244276, 350040, 545998, -210453, -117575, -45097, 7516, -219580,
- 90731, 210990, -142271, -376883, -128312, 99858, 46171, -66572, -87510, 114354,
- -67646, -86973, -264677, -45634, -97711, -48855, 74088, -17717, 136902, -32749,
- 162672, 80531, -131533, 197569, -172872, -43487, -51003, -42950, -163746, 42950,
- -43487, -49929, 106300, 88047, -33823, -93416, 126165, 102005, 0, -48318,
- -25233, 30602, 85899, 13959, -6979, -31675, 8590, 40265, -11274, 41339,
- 0, 51003, -20401, -11811, 9127, -22012, 35970, 9664, -12885, -10201,
- -20938, -26844, -64425, -30065, 28991, 33286, 15569, 22549, 20401, -35970,
- 7516, 7516, 9664, -6979, -17717, 10201,
- },
- {
- -288837, 469225, 1254131, -155156, -7516, -83215, -33286, -20938, 89121, -41876,
- 42950, 71941, -268435, -1004486, 80531, 1235877, -1166621, -63351, -15569, -216359,
- -292058, 205085, -478352, -760746, -587874, -445066, 142808, -14496, -1066226, 312996,
- 287226, 89657, -271657, 310848, 455803, 116501, -111669, 26307, -74625, 156229,
- 252866, -15569, -68183, -72478, -93952, 34897, 18790, 125628, -95026, -6442,
- -78920, -11274, 31675, 41339, -29528, 49929, 83752, 76236, -135828, -53687,
- -15569, -24159, -61203, -32212, 31139, -44023, 5369, 96637, 14496, -92879,
- -46171, 32212, 42413, -9127, 17180, 14496, 27380, 26844, 46708, -10201,
- -6442, 12885, 14496, 4832, -6979, 20938, -15569, -23085, 1074, -27917,
- -48855, -36507, -537, 15032, -21475, -2147,
- },
- {
- 9059697, -5171141, -2802466, 593242, 22549, 151934, 18254, -229781, 5369, 150324,
- 383863, -15032, -504659, -141734, 1056025, -31139, 59593, -248571, -230854, 399969,
- -107374, -20401, 125091, 300648, -171799, -216359, 164283, 28454, -264677, 55835,
- 332323, -76773, -94489, 87510, -124554, -34897, -136365, 198105, 24159, 78920,
- -8053, -26844, -42413, -95563, -37581, -22549, -35433, -149250, -120796, 74625,
- 66035, 13959, -177704, -89121, 60130, 50466, 91805, 57445, 16643, -50466,
- -88584, 23622, 10201, 37044, -23622, -40802, 33823, 17717, -42413, -54761,
- 12348, -4832, -24696, 70330, 63351, -53150, -6979, 68719, -21475, 2684,
- 16106, -30065, -29528, -1074, 3758, -25233, 20938, 27917, -3221, -537,
- -12885, -4295, 15569, 18790, 16643, -1074,
- },
- {
- -411780, 151934, 1739999, -384400, 171262, -118112, -2147, 61740, 62814, 64961,
- 25770, -144418, -168041, 11811, -2924873, 1045288, 2147, -1312113, 127238, -26844,
- -142808, 5369, 621160, -20401, -463320, -55835, 124017, 506806, -366146, 380641,
- -373662, -508417, 395674, -179852, 219580, 86973, -177167, 30065, 179315, 10201,
- 158377, 197569, -56908, 95563, 48855, 104153, -14496, 144955, 5369, -33286,
- -111132, -22012, -102005, 37581, 75162, -52076, 81604, 40802, 52613, -21475,
- -35433, -67109, 56371, -71404, -123480, -36507, -76773, -54224, 40802, -55835,
- 25770, -58519, -79457, 2684, 69256, -2684, -24159, 5906, -5906, 3221,
- 15032, -51540, -39728, 4295, 10201, -3221, 32212, 48318, 4295, -28454,
- 3758, 5906, -10201, 11811, 8590, 13422,
- },
- {
- 654446, -1031866, -2321430, 253940, 76236, -435402, 32212, 88584, -148713, 91268,
- 221728, -6979, 132607, -269509, 118648, -30065, -4832, 207769, 146566, -194347,
- -210453, -41876, -128312, -150324, 140123, 45097, 53150, -144955, 159451, 148713,
- -98247, 147640, 15569, 239444, -172336, 129386, -57445, 140123, 172872, 2684,
- 108985, 201327, 93416, -141734, 53687, 176631, 159988, -28454, -37044, 145492,
- 110059, -22549, 179315, 47245, -175020, -76236, 78920, -11811, -27917, -40265,
- -48318, 75699, -19327, 18790, 5906, -8053, 28991, -45097, -16106, 53687,
- -12348, -24159, 15032, 32212, -7516, -2147, -3221, 10201, -25770, 27380,
- -42413, -15032, 20938, 11274, 2684, 59056, 37581, 19327, 38655, 13959,
- 12885, -3758, -38655, -8590, 16643, 25770,
- },
- {
- -254477, 4253092, -99321, 682900, 63351, 142808, 187905, -166967, -89657, 94489,
- 370441, -231928, 27380, 205622, 603980, 311385, -274878, -373662, 352187, 488553,
- -378494, 220117, 477815, 354335, 54224, 122407, 81068, -246424, 29528, 10201,
- -153545, -25770, -41876, -159988, -61740, 63888, -178241, -166430, 13959, -48318,
- 98784, 5369, 181462, 108985, -53687, -12885, -31139, -12348, 0, 537,
- 102542, 78383, -93416, -101469, -92342, 35433, -36507, 40802, 35433, 17717,
- 17717, 44560, -90194, -73014, 37581, 56908, -37581, 49392, 63351, -8590,
- -17717, -30065, -25770, 14496, 11811, -5906, -21475, -79457, -34897, 32749,
- -22012, 23622, 23085, -28454, -40265, -5369, -20938, 537, -20938, -34360,
- 8590, 0, -3221, 4832, 5906, 16106,
- },
- {
- 3062849, -4083977, -1094143, -689342, 104153, -19327, -375810, -13422, -423591, 100932,
- -171262, -716186, 63888, -211527, -314606, -4295, 67646, -20401, 2147, 205622,
- -166967, 216896, 32749, -157303, 5906, 45634, -52613, 63351, -168041, -133681,
- 6979, 173946, -241055, -61740, -54761, -143345, -81604, -92342, -86436, 154619,
- 10201, 63888, -114890, 160524, -61203, 1074, -164283, 25770, 34897, 85362,
- 73551, 74625, 35970, 14496, 25233, 14496, -17180, 55835, -9127, -45634,
- 44023, 16106, -61203, 55835, 31139, -62277, -44560, -20401, -69256, 15569,
- 16106, -26307, 15032, 36507, 32212, 11274, -10737, -9664, -20938, -8590,
- -6442, 26307, 48318, -16643, 27380, -5369, -32212, 14496, -12348, 9664,
- 18254, 16106, 37581, -10201, -9127, 11811,
- },
- {
- -104690, 62814, -188979, 174483, 115427, 107374, 96637, -166967, 65498, 137976,
- 157303, 66035, -349503, 2686502, -1550483, 2296197, -219580, 9664, -290984, -297963,
- 431644, 68183, -568546, 98784, -102542, -81604, -121870, 127775, 160524, 511101,
- 95026, -179852, -164283, -188979, -9127, -220654, -26307, 147103, -124017, 204011,
- -137439, 47782, 22549, -19864, -105764, 75162, 90194, 179852, -5906, 115427,
- 40265, 106837, 93416, -39192, 6979, 133681, -26844, -52613, -7516, -56371,
- -145492, 24696, 83752, 41339, 25770, -49929, 8590, -58519, -7516, 25770,
- -1611, -24696, -537, -27917, 15032, 76236, 41339, -3221, 4295, 2684,
- -33286, -59056, -22012, -26307, -13959, -5369, 6442, 38118, -27380, -6442,
- -16106, 1611, 57982, 2147, -22549, 31139,
- },
- {
- -717260, 3663607, -612570, -1395864, -31139, 325344, 110059, -300648, -73551, 163209,
- -222801, -146029, 256087, -178778, -40265, -284005, -566936, 8590, -27380, 52613,
- -134755, 157303, 205085, 145492, 540092, -177167, -110595, -317291, 368293, 368293,
- -185220, -43487, 44560, -157303, 27917, 131533, -119185, -134218, -185220, -11274,
- 118648, -271657, 67109, 39728, -20401, -143345, -148176, -35433, 52076, 83215,
- 118648, -147640, 85899, 55835, -66035, -56908, -51540, 4295, 45097, -78920,
- 56908, -30602, -31675, -41339, -52613, -60666, -65498, 22549, -8590, 22549,
- -23622, 26844, -11274, 1074, -37581, -30065, -16106, 51003, -39192, -56371,
- -13959, 13422, -31139, -51003, 6979, -25770, -26844, 62277, 12885, -19864,
- 17717, 2684, -21475, -11274, -4832, 16643,
- },
- {
- -59593, -20401, -381715, -29528, 104690, -73551, 54761, 128849, 587337, -132070,
- -472446, 132070, -185220, 548145, 8169028, 379568, -1454383, -404264, 446140, -148713,
- -221728, 672162, 61740, 211527, 387084, -20401, 22012, 171799, 22012, 82678,
- 147103, -204548, 537, 254477, -193274, -33823, 458488, -55298, -168577, 87510,
- -18254, 136902, 146029, -49392, -49929, -22012, -68719, -18254, 68719, 59593,
- -25233, 89657, 150861, 35433, -30602, -53150, 55835, -11274, 29528, 132070,
- 140660, -54761, -33823, 62277, 55835, 38118, -99321, -48318, 55835, 5906,
- -31139, -17180, 70867, 17180, 35970, 17180, -67646, 29528, 38655, 30602,
- -24696, -39192, -37044, -5906, 41339, -17180, 17180, 3221, -23622, -4832,
- 8590, -18790, -1611, 17717, 10737, -20401,
- },
- },
- {
- {
- 275415, 30352534, -1484448, -2320356, 59593, -168577, 129386, 217970, -73551, 124017,
- 272194, -301185, -306016, 151398, -668404, 631897, 39728, 193810, 149250, 793495,
- 43487, -84289, -86973, -120259, 135291, -54224, -34897, -75162, 236223, 27380,
- 144955, -38655, 448824, 114354, -64425, 44560, 140123, -83752, 30065, -137439,
- 15032, 122407, -70867, 115427, 79457, 44560, -7516, -208843, 97174, 105227,
- 91805, 33286, -47245, 22549, -35433, -93416, -68719, -60130, -28991, 60130,
- 31139, -30602, -5906, -50466, 30065, -18790, 73551, 8053, -37044, -19864,
- -21475, 27917, 537, -21475, -56371, -43487, 55298, -23622, 11274, 49929,
- 26844, 45097, -9127, -12348, -32212, 33286, 23622, -9127, 40802, 17180,
- -7516, 3221, -3221, -8590, -5906, 10201,
- },
- {
- 146029, -2222646, 777926, 152471, 180926, -214748, -284005, 95563, 64961, -101469,
- -128312, -96100, -333934, -1189706, 59593, -514322, -893353, 291521, -440771, -8053,
- -54761, 840203, 197569, -42413, -670552, -39192, 117575, 624918, -215822, -259846,
- -1611, -539018, 133681, -69256, 5906, 157303, -41876, 119722, 76236, -279173,
- 185220, 101469, 245887, -188979, -130997, 6442, 42950, -6979, 1074, 60666,
- -67109, -45097, 86973, 106300, -113280, -90731, 1611, -45634, -60666, 56371,
- 124017, 97711, 3221, -45097, 34360, -6979, 60666, 54224, -9127, -10737,
- 18254, -9664, -46171, -20401, 54761, -11811, -37581, -38118, 5906, 54761,
- -16643, -41339, 14496, 9127, 4295, 25233, 8053, -8053, 39728, 1074,
- -41876, 5369, 37044, 30602, 537, -20401,
- },
- {
- 592169, -8673686, -844498, 1351841, 661425, -192737, 33823, -77309, -182536, -92342,
- 448824, -11274, -237834, 576599, -237834, 723165, 30065, -14496, 325344, 109522,
- -372588, 368830, 135291, 16643, 5906, 187905, -69256, 87510, -515396, 51540,
- 52613, -171262, 273267, 114354, -241592, 164283, 196495, -94489, 5369, -147640,
- -90731, 23085, -133144, 52076, 110059, 90194, -72478, 77846, 51540, -62814,
- 19864, 151398, -74088, -41339, 71941, -4832, 8053, -28454, -24696, -17717,
- 61203, 66572, -2147, -49392, 12348, 72478, -14496, -26307, 60130, 8590,
- -33823, 10201, 54761, -53687, -23622, -33823, -13422, 32212, -13959, -19864,
- 537, 16106, -12885, -35433, 11811, 18790, 17717, -26844, -11811, 11811,
- -18254, -38655, 5369, -12885, -11274, 12348,
- },
- {
- 3030100, 28354838, -987843, 838056, 347355, 235149, 176631, 246424, -537, -332323,
- -114890, 34897, -12885, -542777, -512712, 23622, 274341, -333397, -203474, -122407,
- -89657, 164283, -66572, -129386, 181999, -233539, 90194, -194347, 0, 354335,
- 43487, 10201, 62814, -224949, -208306, -417149, 102005, 44560, 227633, 301721,
- -33286, -175557, 234076, -18790, -15569, 7516, 123480, -33286, -16643, 69793,
- -30065, -60130, -10201, 104690, -51540, 0, -61203, 88584, -51003, -15032,
- 11811, 40265, 31675, 25770, 76773, -44023, 67109, -8590, -30065, 39192,
- 17180, -86436, -49392, 1074, -8053, 27917, 16643, -13422, 8590, 40802,
- 36507, 18790, -22549, -15569, 15032, -14496, 20401, -17717, -37044, 11274,
- 20401, -5369, -11274, 13959, 7516, -8590,
- },
- {
- -224412, 895501, 79994, 163209, 40802, -127775, 39192, 87510, 68719, 77309,
- 73551, -66035, 658741, -78383, 1925756, -1426466, -274341, 1072668, 392990, -452045,
- 181999, 231928, 561030, 399432, -615791, -135291, 332323, -367757, 329639, 115427,
- -161061, 613107, 200790, -71941, 117575, -264141, 267362, 186294, -69793, 104690,
- -537, 53150, 202400, 5369, 55835, 91268, 9664, 159451, 102542, 25770,
- -66035, -129923, 60666, -18254, -46708, 38118, 57445, 104690, 9664, 28991,
- 45634, 24696, -16106, 17717, 132607, 44023, 9127, -19864, -22012, 41339,
- -45097, -25770, -5906, -7516, -32749, 35433, 33823, 37581, 69256, 30065,
- 9664, -8053, -53687, 44023, 8053, 7516, 20401, -16643, -1074, 9127,
- 15032, 17717, -1074, -25233, 10737, 27380,
- },
- {
- 460635, 36651104, -215285, -898185, -205085, -93416, 76236, 324807, -464930, 488553,
- 489626, -239444, -300111, -129923, 144418, -139050, -126165, 39728, -40802, -60666,
- 243203, 103616, -339839, -460635, 33823, 70330, 33286, -238371, -89121, 307627,
- 4295, -83215, -127775, 99858, -110595, -90194, -111669, -237297, 42950, 3221,
- 38655, -168577, -161598, 272194, -123480, -107911, -111132, -158377, -113280, 115964,
- -71404, 56371, 148176, 50466, -100932, -37581, 171799, 51003, -39192, -77309,
- -47782, 17717, 108985, 25770, -58519, -12885, 43487, 16643, -14496, 34897,
- 4295, 37044, -25770, 3758, -12348, 6979, 42950, -537, -25770, -6442,
- -24696, -31139, -54224, -5906, 32749, 30065, -1074, 33286, -11811, -24159,
- 15569, 15032, 5906, -25770, -7516, 11811,
- },
- {
- -105227, 848793, 522912, -378494, 7516, -25233, 114890, 121333, 106837, -43487,
- 95026, 111669, -268435, -388695, 671089, 251256, -1174674, 41876, -351114, -214212,
- 199716, -16106, 13959, 149250, -365072, -620623, -305480, -208306, -613107, 323733,
- 102542, -73551, -524523, 498216, 365609, 35970, -68183, 132607, 45634, 181462,
- 19327, -224412, -17180, -76236, 79994, 151934, -22549, 54224, -63888, -17180,
- -51003, -9127, 63351, 40265, -28454, -3221, 46708, 5369, -89657, -28991,
- -46708, -11811, -28454, -48318, -1611, -40802, 63351, 69793, -37581, -105764,
- -13959, 46171, 34360, 20401, 39728, 5369, 38655, 35970, 31675, -30602,
- 9127, 10737, -3221, -17717, -8590, 13959, -26307, -17180, -8053, -37044,
- -47245, -18254, 13959, 537, -18790, -2147,
- },
- {
- -7210177, -24259586, 96637, 588411, 174483, 99321, -449361, -183073, -10201, 213675,
- 261456, -529892, -381178, 26844, 453119, -477278, 18790, -256087, -25770, 442919,
- -412854, -365609, -322659, 69256, -383863, -126702, -60666, -239444, -390842, -67646,
- 93952, -116501, 29528, 267899, -92879, -92342, -193274, 332860, 144955, 69793,
- -42950, 28454, -46708, -159988, 181462, -3221, -60666, -185220, -40265, 74088,
- 45634, -17180, -162135, -4832, 49929, 49392, 80531, 34360, -537, -34360,
- -47782, 49392, 11811, 9127, -39728, -33823, 16643, 16643, -20938, -30602,
- 23085, 5369, 25233, 88584, 31139, -56371, 51540, 49929, -49392, 13959,
- 18254, -27380, 1611, 21475, -3758, -13422, 27917, 19327, 5906, -4832,
- -20938, 1074, 18790, 22549, 11811, -16106,
- },
- {
- -187368, 733903, 847719, -471373, 20938, -120796, 30065, 125628, 61740, -99858,
- -184684, -63888, 120259, 735513, -2770791, -927713, -813896, -607738, 475668, 969052,
- 1206886, 462783, 173946, -17180, -413927, -358630, -165893, -118648, -478352, 717260,
- -353261, -154082, 230854, -280784, 233002, 2684, -119185, 214212, 46171, 83752,
- 220117, 52613, -87510, 135291, 83215, 78383, -5369, 25233, 44560, 105227,
- 19327, 3221, -55835, 38655, 48855, -86436, 120259, 47245, 41339, -9127,
- -59593, -95026, -32749, -133144, -64425, 537, -64961, -24696, 76773, -60666,
- -5369, -60666, -27380, 66035, 61740, -38118, -25233, 15569, -11811, 13422,
- 4295, -62277, -13422, 13422, 12348, 19864, 50466, 26307, -13959, -27917,
- 11274, -9127, -1611, 16106, 16643, 18254,
- },
- {
- -956704, -955093, 803696, 989990, 241055, 426812, 498753, 152471, 177167, 484794,
- 152471, -133681, -34897, -562104, 143881, -43487, 582505, 693637, 341450, -195958,
- -88047, 45634, 38118, -54761, 118112, -118112, 45097, -76236, 67109, 25770,
- -20938, 132607, -33823, 383326, -127775, 104153, -79994, 1074, -27917, 55298,
- 107911, 264141, 5369, -124554, 223338, 176094, 31139, -17717, 29528, 143345,
- 110059, -13422, 141197, 1611, -148713, -16643, 61203, -34360, 2684, -49392,
- -8053, 51003, -11811, 16106, -49392, 3758, 13422, -41339, 31139, 28454,
- -6442, -6979, 32749, 10737, 7516, -4832, 21475, -31675, 0, 3758,
- -58519, -5906, 41339, 8590, 28991, 59056, 28991, 10201, 36507, 6442,
- 6442, -16643, -28991, 1611, 17717, 22549,
- },
- {
- 387084, 4021163, -1015760, 168041, 185757, 184684, -107374, -400506, 51540, 260382,
- 358630, -320512, 124017, -178241, 357019, 140123, -329102, -286689, 48855, -623307,
- -754841, -150861, 98247, 54224, -156229, 169651, -103616, -132070, 47782, -35433,
- 13959, 10737, -112743, -79994, 162135, 33823, -252329, -134218, -29528, -70867,
- -45097, -20401, 120796, 3758, -49392, 41876, -54224, -13422, 82141, 53687,
- 61203, 23622, -134755, -99858, -46708, 11274, 24159, 73014, 10201, -2684,
- 65498, 20401, -102005, -40802, 56908, -2684, 25233, 76773, 11274, -11811,
- -32212, -33286, -7516, 30602, 7516, -24696, -22012, -71404, -537, 21475,
- -15032, 37581, 17717, -54761, -38655, -1611, -24159, 7516, -27380, -20938,
- 11274, -10201, -5906, 2147, 18254, -5906,
- },
- {
- -2334315, -11600707, -489089, -104690, 344671, -211527, -19864, 397821, -169114, 71941,
- -290984, -361851, 54224, -100395, -312459, -113817, 137439, -161061, 71404, 155693,
- -76773, 274341, 30065, -164283, 169651, 42413, 96100, 106837, 71404, -71941,
- -27380, -92342, -346819, 55835, -175020, -149250, -236760, -206158, -51003, 158377,
- 51003, -16643, -232465, -3221, -135828, -65498, -105227, 60130, 46708, 59593,
- 79994, -17180, 84289, -71941, -6979, -4295, -24696, 24696, -70867, 6979,
- 104153, -28454, -54761, 78383, -21475, -47245, -37044, -28454, -35970, 80531,
- -4295, -25233, 17180, 36507, 34897, -5369, -11274, -17717, -22549, -537,
- 9127, 45634, 24696, -15032, 30602, -23622, -10737, 6979, -11274, 18254,
- 15032, 28454, 28454, -14496, -3221, 19864,
- },
- {
- 125628, -30602, -412317, 429497, 83752, 143881, -37581, -223875, -9127, 105227,
- 16106, -317828, -1338419, 1949378, -311922, 1786170, -825707, -171799, 520765, 229244,
- -1108102, 59593, -548145, -174483, 97174, 209380, 104690, 195958, 160524, 548145,
- -517544, -247497, -227096, -179852, -11811, -250182, 97174, -1074, -116501, 170725,
- -71941, 166430, -4295, -30602, -108448, 2147, 62814, 99321, -90731, 66035,
- 34360, 134218, 38655, -72478, 32212, 97711, -80531, -22012, 1074, -115427,
- -112206, 104690, 66035, -6442, -28991, -39192, 23085, -76773, 40265, 22012,
- -3758, -32212, 35433, -9664, 36507, 61740, 26307, -22012, 4295, 18254,
- -44560, -58519, -19864, -24159, -2684, -12348, 26844, 18254, -19864, -8053,
- -18254, 28991, 60130, -17717, 4295, 32749,
- },
- {
- 548145, 4978404, -406411, -850404, -34360, 318364, -113280, 116501, 110059, 11274,
- 54224, 75162, -84826, -35433, -67109, -479963, -447213, 37044, 97174, 108448,
- -181462, 154619, 81068, 236760, 555661, -128849, 20401, -179315, 471910, 321049,
- -129386, -163209, 51003, -139586, -95026, -27917, -91268, -102542, -89121, 26844,
- -78920, -118112, 39192, -127238, -76236, -188979, -178778, -1611, 38655, 164283,
- -19864, -77309, 148176, 32212, -115427, -114354, -28991, 59056, 15569, -3221,
- 41339, -35433, -15032, -64961, -23085, -49392, -29528, 20938, 10201, -1074,
- 16106, 20401, -4832, -13959, -41339, -29528, 11811, 26307, -63351, -40802,
- 8590, 11811, -42950, -32212, 4295, -30602, 7516, 56908, -8590, -11274,
- 13959, -10737, -18790, -8053, 13422, 12348,
- },
- {
- 215822, -802622, -1011465, 169651, 100395, -2147, 71404, -106300, 418222, -227096,
- -205622, -28454, -53150, -3725884, 2831457, 1924145, -1016297, -926639, -272194, -119185,
- -170188, 453656, 60130, 370978, 382252, 19327, 307627, 344134, 521839, 357556,
- 42413, -31139, 118112, 164819, -260919, 99321, 414464, -80531, 31139, -40802,
- 171799, 264677, 44560, -258235, 29528, -9664, -127775, -101469, 537, 15032,
- -77846, 96100, 155156, -25233, 18254, -28991, 94489, 6442, 112743, 150861,
- 74625, -85362, -24159, 64961, 20401, -3221, -122943, 2147, 39192, 12885,
- -30602, 20938, 79457, -9664, 30602, -33823, -34360, 32212, 13422, 1611,
- -46708, -32749, -33286, 19864, 37581, -3758, 20938, -8590, -38655, -4295,
- 2684, -23085, 8053, 20401, -5906, -22549,
- },
- },
-};
-
-const Word32 rightBRIRReal_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS_MAX] /* Q29 */=
-{
- {
- {
- -1409823, -49383532, 60373280, 17657148, -10086194, 10809896, -21563958, -24934970, -21000780, 7203734,
- 9224516, 3362423, 27784680, 9658845, -9273371, -7822746, 2589865, 24520506, 1350767, -15502684,
- -9993315, -125091, -7628936, -185220, -17885318, -125628, -4449049, 7846369, 1426466, 22142704,
- 4288525, 519154, -8935143, 1160178, 9670656, -2841121, -10553808, -2444373, 8581882, 13063143,
- 6616934, -15243376, -19841676, 6442, 7655243, 2362769, -785979, -3533148, 3619584, -11263015,
- -1623498, 2724620, 678068, 1828046, 709743, 4689031, 9005473, 8693014, 2547453, -1622961,
- -906238, -164283, 271657, -5508296, -3926674, -5305359, -6541772, -11915850, -2745558, -546535,
- 5127117, 4666482, 4561256, 2406256, 6228240, 5369783, 3754338, 2274185, 1139777, -994285,
- 55835, -2911451, -2268280, -4362613, -4982162, -2238752, -825171, -2682744, -4558571, 3070365,
- 3326989, 1661616, 187368, 83215, 2015950, 1184337,
- },
- {
- 2640868, -51209968, 66600448, -8427263, 19280646, -9943386, -19514184, -28194312, -7065758, 5252745,
- 4778688, 19797652, 20707648, 2399276, -13477071, 8817568, -4998268, 26811870, -12322798, -12193412,
- 1767916, -14763413, -8566849, -2130304, -3816615, -7808251, 300648, 17030620, 5651103, 3369939,
- 195958, -2847027, -3904662, 4616016, 13066901, 3541201, -12065637, -3132105, 5776731, 7214472,
- 289910, -11136313, -5040144, 3871913, -3246995, -8171176, 5030481, 2472291, -936303, -5090610,
- -4539781, -1574106, 1792612, 1438814, 405874, 10526965, 6155225, 5143760, 3433290, 5608691,
- -432718, -2986076, -4282083, -2412161, -6130529, -8191040, -8491150, -9539122, -1684701, 814433,
- 941135, 5207111, 7240778, 5467494, 9451076, 6065031, 4384625, 3262028, -2108829, -4870493,
- -1611687, -2846490, -4686346, -6813429, -3148748, 251792, -1254131, -1297080, 1067299, 949188,
- 3482682, 1179505, -561030, 1930051, -286152, -46708,
- },
- {
- 1272921, -54889144, 70116416, -6897181, 16925392, -1021665, -36054640, -9810242, 1701881, -13785234,
- 5661304, 11031087, 20417200, 998043, 5360656, 4662724, -6286222, 5044439, 1260573, -995896,
- 3775276, 3366718, -13290776, -12804371, -17464410, -14049375, -20833276, 9896142, 23509040, 30144764,
- 4813585, -433255, 7194070, -2523830, -8381092, -3804804, 3205656, -2633352, -6980396, -891206,
- 13872744, 1356673, -8372502, -5862631, 1686848, 1702955, 127775, -11855183, -9174587, -4013110,
- -1461363, 5991480, 8189966, 2024540, 7959112, -426276, -5205501, 9494025, 17304424, 8923868,
- -1685775, -4265977, -6469832, -1288490, -6101538, -10669236, -6327024, -12343199, -6592775, -8380555,
- -1020055, 8147016, 6357089, 7927436, 9974525, 8219494, 9265318, 5656472, 2799245, -530428,
- -4935455, -5570036, -6389838, -2803003, -3718368, -5420249, -5058935, 739808, 5608154, 1812476,
- -2076617, 789737, -777926, -2099165, -2935073, -1791001,
- },
- {
- 302795, -35748624, 46741056, 14091788, -13078175, 8090645, -13390097, -13390634, -23165980, -17209398,
- 21987012, 9961103, 33659120, 2245731, 2648921, -13372381, -20544976, 14322642, 8817568, -3461207,
- -833224, -11237245, -10543608, 5988795, 11776263, -15676631, -12724914, 12333535, 6473590, 6332393,
- -4284230, 3198677, 6997039, -9420474, 563178, 4193499, 2041720, 179315, 692564, -1603633,
- 4122632, -6548215, -6513855, 3765613, -3609920, -2307471, -777926, 5057861, -14496, -5568962,
- 7927436, 2255932, -5209796, 43487, -383326, 1794760, 2317672, 323733, 3340948, 75162,
- -2856690, -2090039, 3027415, 39728, -4125316, -2095407, 473520, 423054, -6690486, -2167885,
- 3740917, 3506841, 2694018, 3041374, 261993, 971200, -2269353, 2956548, 855772, -2236604,
- -1044214, 503048, -480499, -1503239, -674310, -152471, -2263448, -3066070, 923955, 1133871,
- -491774, 61740, 304406, 4186519, 1574106, 1433982,
- },
- {
- 894427, -22213570, 52410948, -28141700, 19387482, -6890738, -13024488, -20635708, -14133664, -12416750,
- 21714818, 19566798, 21471078, 10114648, -6567542, -6053757, -15620259, 16610249, -8315057, -375273,
- -375273, -20699594, -19310172, 30071750, 8432631, -22284438, -6532109, 14757508, 21944062, -4385699,
- -13106093, 7596187, -6125160, -5790153, 6795712, -1991254, -4116726, 12633109, 3142306, 947040,
- -995896, -5932424, -4259534, 5695664, -659278, -9580461, -7081864, 1276142, 12220793, 941135,
- -3306588, 1144609, -6426345, 4789963, 2598992, -4763656, 6116571, 4332012, 1699733, 509491,
- -7274064, 1597191, 2325725, -2075543, -1742146, -6379637, -4589710, -2240899, 2876554, -1418413,
- 2293513, 2956011, 6820408, 3365107, 3838627, 2365990, -1065689, -3002719, -1931125, -5215701,
- -2274722, 495532, -644245, -140123, 135828, 9127, -2310693, -690416, 1311039, 1393180,
- -850940, 692027, -501974, 1322313, 1557463, 2510409,
- },
- {
- -2174327, -39218420, 51765092, 21826486, -19683836, 9637907, -10777684, -24227910, -20179366, 1060320,
- 1462973, -2109366, 24901684, 44676788, 2937758, 9046812, -40161704, -11121281, -1750199, 11840151,
- -8417599, -23329726, -17503066, 39338144, 5929739, 13909788, -18638010, -7882876, -755377, -5949067,
- 2456185, 32213866, 3215857, -10001368, -12062416, -5646809, 4457103, 6508486, -141734, -4693863,
- -18727668, 13702019, 7455527, -10590316, -7826504, 3514357, 8119099, 753230, 4570919, 3813931,
- 3748970, -91268, 6427956, -976031, -3645890, -7919383, -10511932, -5186710, 798327, -962610,
- -3868155, -601295, 2339147, 7064148, 6287832, 3100967, -2883534, -747861, 2184528, 5322538,
- 1320166, 5812165, -729071, -662499, -3864934, -2881923, -6546604, -4999879, -3001109, -176631,
- -2882460, 2809982, 5816460, 3599720, 2478196, -1408212, -4614943, -1457068, 699006, 2652142,
- 2536715, 3017752, 1249299, -441308, -1480153, 519154,
- },
- {
- 681289, -20648056, 55862492, -37233072, 26775900, -12299713, -15882789, -16690780, -16576426, 2185602,
- -3208878, 11117523, 50726248, 15768436, 10390600, -16327318, -37793028, -6031208, 16632798, 9248138,
- -22032646, -24631100, 1111860, 14659797, 11395622, 14268418, -9106941, -6336151, 1821603, -2564632,
- -3263638, 21037286, 10415833, -16028281, -13706851, 6088116, 5675800, -3831111, -1673427, -10510322,
- -5630702, 8755828, 4897874, 696322, -1547799, -1131724, 5972689, -3944391, -223338, 7804493,
- 7908109, 609885, 2508798, 143881, -7151121, -12479027, -6106370, -2218888, 1404991, -6316823,
- -1436130, 4199941, 5660767, 1766842, 3411278, 3328063, -571768, -1709934, 3825742, 1909650,
- 4785668, 4417911, -1284195, -196495, -6131066, -3427384, -2891587, -4278325, -2648384, -1997160,
- -1262720, 2762201, 2569464, 3692061, 1576790, 367757, -2669322, -2284923, 666794, 3171297,
- -203474, 1603633, 2676302, -1391569, 158377, -1851668,
- },
- {
- -2231773, -32385664, 44669272, 21364242, -19712290, 11218991, -13425531, -18399640, -16681653, -13292924,
- -535797, 11979738, 37871948, 26555782, -20732880, 10612864, -19675782, 15820512, 5489505, -25715580,
- -14566918, -9815611, -7732015, -15022185, 36152352, 37011344, -9113921, -38042136, 11484743, -7961796,
- 9352828, 16327855, 11623792, -3575024, -13794361, -719407, 1136019, -1843615, -9474161, 1292248,
- -9757629, -5267778, 7261179, 7984344, -1647120, -3428458, -945430, 14117558, 5657009, -3885335,
- -1653562, 10754061, 11876658, -2871186, -9183714, -7931731, -9817758, -15568720, -5756867, 6821482,
- -2978560, -2496987, 4871567, 5652177, 7286949, 9693741, 7801808, -5740761, -5400385, 7022272,
- 6113886, 2405719, -1774358, -2884608, -4546223, -2372433, -9902584, -9753334, -2665564, 1197759,
- 1218697, 5181878, 3921842, 4881767, 1394791, -1002875, -3957276, -2243584, 3769371, 6373195,
- 2428267, 3568044, -52076, -3879966, -3664681, -1582696,
- },
- {
- 505196, -23672786, 58950572, -39694624, 29988536, -10748156, -19057306, -19891604, -12819404, 121333,
- -4966056, 32779190, 37850472, 5066451, -5269388, -4802847, -13202193, 17317308, -16662862, -17555678,
- -12997645, 5594732, -15477988, -11404749, 42913704, 5759015, 3413962, -29726542, 7137699, 15580531,
- 14463302, -9109089, -7243999, 14100378, -8392903, -5187247, 4181688, -2557116, -11395622, -15515032,
- 1283658, 4194573, 1712618, 11727945, -2987150, -1975685, 5687074, 6843494, 3393561, 3169149,
- -1404991, 5014375, 9095130, 4537096, -13118441, -9497783, -13768055, -16826072, -4735202, 2071785,
- 2434173, 6408628, 6199249, 2297808, 2051921, 11358578, 3344169, -2887829, 1827509, 2063732,
- 7382512, 2152852, 133681, -7374459, -8681740, -1252520, -6386617, -4397510, -3347927, -950262,
- 3278134, 3867081, 3058554, 2565706, 1114007, -1478543, -1952063, -96637, 1146756, 5506148,
- 2982318, -394063, 918049, -1374926, -1918240, -1637456,
- },
- {
- 1175747, -48246440, 61643520, 14976014, -5596343, -35421668, 1482301, 3964792, 8601209, -20506858,
- -9141838, 19321984, 4430796, -10534481, 6553047, 14601278, -1751273, -6371047, 20891794, -5011153,
- 15548318, 1244467, -13179107, -15462956, -28265716, -13903883, 4622459, 299037, 12273943, 10872710,
- 5585605, 9662066, -1119913, -8187819, 9550397, 272194, -2044404, 3475166, 12263205, 885837,
- -6578816, -16409996, -13150116, -4911295, 9878962, 3880503, 18626200, -271120, 2157684, -18178986,
- -14155675, 1925756, -509491, 6496675, 7353521, 9165997, 1765232, -7173133, -1304060, -4327717,
- -2928094, 7886634, 10071161, 3365107, 231928, -5365488, -4858145, -2771328, -4422206, -4886599,
- -2982318, -4285304, -2383707, -73551, 7909719, 6329708, 4896263, 2521683, 4309463, 4782446,
- 303869, -3779571, -2232846, -1671279, -571231, -3085934, -4338454, -3039763, -5512054, 524523,
- 2144263, 376347, 3010772, 1712618, 1290101, -1316944,
- },
- {
- 1604170, -26516054, 53627500, -7368017, -9885941, -48229800, 36755256, -537945, -2905546, -11680700,
- -1831267, 26469884, -3442953, -11504070, 18430778, -13696651, 5567888, -3740917, 16069083, -13791140,
- 7562364, -9415642, -10963441, -8048232, -20043538, 18779744, 5143760, 13532905, -1481764, 23033372,
- -24456080, 8807904, -5728413, 4305168, 9899363, -3841848, -2404108, -108985, -3943317, -6619619,
- -8248485, -8050916, -2447058, 4922033, 10504953, 10230075, 12763032, -3663607, -10157061, 2063732,
- -18285824, -9047885, 10926397, 9452686, 3295314, 6766721, -1013612, 340913, -7857106, -1548336,
- -1662689, 1404454, 2378875, 3109556, -6729677, -4853850, -1628330, 1470489, 231391, 3403225,
- 578747, 884763, -2574296, 582505, 4343286, 2353105, 1794223, 775778, 1203128, 176631,
- -1279900, -3732864, -5260798, -3029563, 1632625, -1564442, 1049046, 232465, -1476932, 2788508,
- 2771328, 978716, 2365453, 714038, -1279363, -1267552,
- },
- {
- 234076, -46947212, 65129420, 13270375, -13859859, -23969138, -5111548, 20105816, -12599287, -5757941,
- -45093400, 36184024, 10451266, 7917236, 36391256, 4824322, -25516938, -15707769, 6913287, -22622666,
- 7525320, -628139, 889058, 15003931, -20185810, 14603426, 7456063, -6069326, -13461501, -7243463,
- 13579613, 5361193, 8141648, 4757750, -13634911, -16875464, 2266669, -365609, 2864206, -5165772,
- 5418638, 14464913, 1295470, -1050656, 10700374, 4439923, 159451, 28454, 1509681, 577136,
- -17026860, -12734578, -2236067, -6259378, -6900402, -7039989, 4022774, 5695127, 4137664, 19157702,
- 7243999, 1366873, -7561827, -1261110, 2851858, -2163590, -6665253, 7592966, 8096014, -349503,
- -3201898, 778463, 2057826, -4056060, -9747428, -3681861, -6831683, -4269198, -1149441, 2821257,
- 1547262, 1324997, 2502892, 5913096, 3479461, 5750425, 6564321, 3487514, -662499, -1435593,
- -1520418, -5232344, -6679211, -4447976, -4803921, -2160369,
- },
- {
- -3971234, -9535364, 43525200, -9983115, -16724603, -29968134, 30095910, 1534914, -10022843, -11896523,
- -29360934, 40623948, -3479461, 33114198, 13394392, -10668162, -21431350, 2080912, -7763154, -14673219,
- 9120363, -1094680, 8735427, -5005785, -9941776, 9255118, 12442520, 1821603, -15027017, -2310156,
- 5516886, 7544110, 5554467, 2872796, -10613938, -19851876, -12724377, 7407745, 3510062, -7715909,
- 17491254, 14340359, 15673946, -15201500, 9279277, 11144366, -5679021, -4577899, 1796370, -2358474,
- -9701794, -15756624, -10186589, -4242354, -7437810, -1680406, 12244415, 3235721, 9339406, 9204652,
- 1956895, 1222455, -2624762, 317291, 2108292, -2166811, 1403381, 10476499, 11274, -4170950,
- -82141, -2672007, -955630, -4200478, -5456219, -3374234, -7783555, -4592931, -1024350, 2547989,
- 2882460, 4632122, 5257577, 5501853, 3469797, 3915400, 2960843, -463856, 287226, 66035,
- -1749125, -2384244, -5471789, -5461051, -4342749, -2372970,
- },
- {
- 1509144, -43656196, 61792232, 6542309, -3508988, -32420560, 4681515, 7604777, -7219303, -10520522,
- -15596637, 11097659, 11508902, 24399172, -10087804, -1730872, 1122597, -3949759, -7318088, 10950556,
- 5814312, 9847286, -12242804, -9059160, -5037997, 4551592, -10337449, -10649908, 3439195, 4971425,
- -5629092, 11039140, 912681, 1184874, -4449049, 23153632, -9287867, 15965467, -3614215, 7935489,
- -12067784, -18742700, -9169755, 3283503, 198642, 1751810, 15826954, 9500468, 1777580, -4422743,
- -18173080, -2618320, -5552319, -6178848, 5890548, 5892159, 3289945, 1288490, 1941325, 5890011,
- -904091, -1303523, 6095633, 4331475, -1979980, -3812320, -4486094, -1112397, -5953899, -166430,
- 66572, 809064, -2707977, 923955, 486405, -944356, -1183264, 8053, 4858145, 3147137,
- 2788508, 2012729, 67646, 1520418, -2632815, 533650, -2655364, -3997541, -3631395, 1191317,
- -154619, 382789, -767725, 1257889, -912681, 1401233,
- },
- {
- -3337727, -7187628, 36425616, -6924024, -11460046, -30481920, 28965796, -8285529, -11516955, 6017249,
- -17506824, 7351911, 32678258, -5300527, -6774237, 17162152, -10046465, -13087302, 5586679, 2232846,
- 221728, 1602023, 1318018, -10911364, -11923366, 5714454, 3606699, 2070711, 528281, -175557,
- -7841000, 3500398, 2882997, -2362232, -8793409, 11165841, 4884452, 2534568, 9129490, 8513162,
- -5368172, -13432510, -7108171, 6071473, -9955197, 4425964, 4413079, 10166188, -4207994, -4359929,
- -12864501, -2779381, 169114, -1383516, 5806796, 6344204, 6575595, -1352915, 1624571, -6076305,
- 68183, 144418, 1194538, 3437585, 2346126, -2916820, 1724966, 195958, -4953171, -1961190,
- -731218, -169651, -1379221, -328028, 482110, 643171, -3022583, -1524713, 4546760, 3580929,
- 522912, 2019708, 466004, 1999844, -1424319, -497679, -1532767, -4019553, -1430224, -1772748,
- 1461900, -1374926, 649614, -899796, 1257352, -528818,
- },
- },
- {
- {
- 2688113, -7674033, 59079424, 25202868, 8602819, 6252936, -6974490, 2416456, -600222, 7293928,
- 808528, -10261214, 2238215, -6776385, 792421, -7646653, -14761803, 10013716, 2700998, -4631586,
- 3245922, 12875238, -1184337, -1051193, -19454054, -6010270, -12169790, 1423782, -8114267, 12258374,
- 1461900, 2948495, -336081, -2065879, -1647657, -4902705, 4028679, -25770, -1609539, -2365990,
- -6519224, -1343788, -4721243, 2449205, 2340220, -2987687, -2805688, -1433445, 4034585, -8342974,
- 571231, 1575179, -1512902, 179315, -2538326, 2863670, 5976984, 82678, -3827353, 307090,
- 4669703, 4804995, 1753420, -3423089, 1193464, -84289, 221191, -2543158, 3298535, 807991,
- 5375689, 3079492, 1845225, 1297080, 1897302, -1031866, -883690, -354335, 1872606, 620086,
- 3088618, -53150, 1267552, 1650878, -1320166, -1483911, -724239, -1861332, -2289218, -60666,
- -265214, 904091, 742493, 754304, 1206886, -336081,
- },
- {
- -5723581, -121847152, -21115132, 19022410, 36347772, -8276939, -11709691, -9825811, 7669738, 1997160,
- 2407866, -489626, 683974, 1451162, 5103495, 21265994, -9092446, 7399692, -8014946, -6728067,
- 2591476, -3082713, -3117610, -3195456, 4648765, 4722317, -3642669, 2758980, 5746666, 3941706,
- 4723391, 3833258, -9143985, -1946694, 1167157, 4066797, 3187940, 3104188, 1675037, -1040993,
- 1854889, 2861522, -2172180, -804770, -2549063, -7968238, 168041, 938987, -660888, 497679,
- -2871723, 2074469, 1660005, -2807298, -5571110, 2580739, 3933653, 3105798, -366146, 558346,
- -2918967, 1115081, -3364033, -1908576, -200253, -736587, 448287, -2324651, 1912871, 2916820,
- -1219234, -1766842, -137976, -909996, 3318936, 1281511, 1547799, 1305670, -850404, -4491999,
- -1424855, 118112, -761820, -2252710, -164819, -465467, -773631, 1328756, 1442572, -1796907,
- -613107, -874563, -1613297, 886911, 613643, 1170379,
- },
- {
- -2095944, -68863360, 30504468, 18279380, 35343824, 1394254, -12001749, 4635881, 10972031, 1337882,
- 11312944, 947040, 4396436, 392990, 1826435, -8186208, -6371047, 1396938, 1416266, 3576634,
- -4856535, -7064685, -6307160, 3148211, -2088965, 2613488, -15234786, -324807, -4292820, -805843,
- -5202816, 6192806, 7922604, -1360431, -6306623, -4726612, 234613, 125091, 3058554, 3205119,
- 3506304, -3109556, 184147, 2124398, 2791729, 958315, -1188095, -3402688, 5018670, 4973036,
- -4814659, -1900523, 1945620, -4504884, 2823941, -2161442, -2319819, 4640712, 3858491, -1939178,
- -1482301, 2720325, 1348620, 1239098, -2788508, -3758633, 1757715, -1560147, 2689187, -613643,
- -217433, 2125472, -694174, -137439, 592169, -833761, 976568, 175557, 443992, 1373316,
- 637803, 2086280, 319438, 758062, -1615982, -1094143, -1898912, -1057636, 1387274, -1022739,
- -2087354, 1249299, 663036, 626528, -1462973, -2000381,
- },
- {
- -112206, -22228604, 36974300, 13831405, -7192460, -4263829, -6691022, 1223529, -6744173, -5806796,
- 15625091, -1597728, 12141873, 4092567, -395137, -18397492, -4455492, 16508244, -4903779, -10711648,
- -2172717, -434329, 12020540, 13172665, 3016141, -3892851, 4663261, 3383897, -3919158, -565325,
- -7323993, 9079024, 7203197, -5530844, 1739999, 5724655, 5326833, -491774, -2434173, -3446175,
- 4772783, 2369748, 3118146, 3532611, -9507447, -775778, -665720, 268435, -1584843, -582505,
- 2965138, -5456756, -2935610, 2428267, 752693, 2783139, 2003065, 165893, -1866700, 2066953,
- 3491272, 186831, -2414845, -2123325, 850940, 2560338, 2095944, 2636036, -1525250, -2274722,
- 759136, 223875, 2319282, 3127273, -452582, 815507, -861678, 1906429, 451508, -302795,
- -291521, 1209033, 521839, 130460, 637266, 222265, -990527, 209917, 2405719, 1638530,
- 75699, 102005, 369904, 3040300, 760746, 213675,
- },
- {
- -1326071, -107807976, -27940372, -13987635, 39588860, 2778307, -3538516, -7281580, -7989713, -24969330,
- 9994389, 1265942, 6152541, 4630512, -15479062, -5221070, -2098629, 22629646, 475668, 8660802,
- 3300146, -13336947, -20726976, 6852621, 2711198, -2635499, 2931852, -2123861, 2830920, 2209224,
- -135291, -216896, -5966784, -3557307, -46708, 2789045, 1997697, 4361540, -3404835, 488553,
- -3192235, -13842143, -10522133, 3310883, -2465848, 748935, 6720550, 748935, 4911832, -709743,
- 617938, 8658117, 350577, 6339909, 1431835, -4413079, -900869, -7886634, -3636227, 579284,
- -2295123, 6946573, 4881767, -2838437, -3834332, -3765613, 2101850, -1037235, 2243047, -461172,
- 760209, -3442416, -1042066, -838056, 1642288, 2238752, 1551557, 1291711, 329639, 708133,
- 3131568, 2593624, 220654, 1046361, 1320166, -470836, -2526515, -893353, -1502702, -998043,
- -1181653, -387084, -1199370, -508954, -468151, 1197222,
- },
- {
- 2840584, 19521700, 72428720, 8179229, -19241990, -6729140, -3208341, -4123706, -3352759, 3201361,
- -3748433, -6656126, -963146, 9094593, -13149579, 11170136, -16363825, 1872069, -161061, -10790032,
- -16603270, -4431870, -3796214, 27523762, -18025440, -997506, -4805532, 7494718, -3742527, -6160594,
- -5187784, 9824201, -18676128, -6065031, 385473, -4685810, -1553704, 5662378, -1823751, 4057134,
- -6467147, 8670465, 956704, -222801, 4481262, 1813550, 3257733, 1797981, 2385854, 789200,
- -571231, -4328254, 1437203, -79457, 2760053, 3762391, -5000416, -9319005, -4965519, -882079,
- -2515777, 2632278, 3940096, 1468342, 3735548, 3185792, -2738042, -575526, -228707, 3105261,
- 4651987, 5493263, 465467, 834834, -3428995, -267362, -1138703, 798327, 1821603, 2280628,
- -483184, 1029718, 898722, -1233729, 539018, 1440962, 24696, -21475, -1075352, -258772,
- 115427, 177704, -1333051, -1074, -462783, -54761,
- },
- {
- -110059, -116359256, -32743220, -29892436, 35485020, -1203128, 1138166, -3376381, -4884452, 2858838,
- 1922535, 3825205, 14903000, -6165426, 7366406, -1086090, -12905303, 168041, 12025908, -3001645,
- -19264002, -5626407, -5781563, -1730335, 4005594, 1698123, -10488847, -8413841, -227633, 4650913,
- -4880694, 7022272, 1766842, -273804, 5072893, 8187282, 3508452, -4601521, 3630858, 2437931,
- 2516314, 4398047, 3227668, 5944235, -130460, -9123047, -4925791, -3935264, 4879620, 5014911,
- 3167539, -409633, 4933844, 8540006, 2953327, 577673, 2040646, -436476, 7777649, 536871,
- 581968, 4367982, 4963372, -1917166, -2658585, -12348, 1276679, -656056, 2651069, -1007707,
- -1219771, -2634963, -3870303, 1568737, -68719, 256087, -3550864, -4062502, 649614, 2227478,
- 1730872, 2201171, 311385, 1496796, -1662152, 339302, 905164, -1282048, -134755, 717260,
- -1354525, -157303, -348966, -3120831, -726386, -453656,
- },
- {
- 2425583, 28625958, 74911744, 7096360, -13113072, 600222, -9455371, -2309619, 2728915, -4089346,
- -2017024, -3335042, 7347616, -3579855, -32488206, 8150238, -33888364, -4146254, 7224672, 3732327,
- 3085397, -2595771, -1759863, -15017890, 14488535, 17285632, 5854041, -19937776, 14428943, -5717139,
- -2312840, -1478006, -4074850, -6109591, -7028177, 5366562, 8867497, 7182259, -1919850, -1389959,
- -6934225, 4573604, 4156992, -3379603, -1505923, 3190087, -624918, 5231807, -855772, -231391,
- 3824132, 1187022, 3558917, 2101850, -2315524, -4295, 1880122, -2211908, -2516851, 1466731,
- -213138, -2687576, -433255, 1635846, 143345, 1220845, 5265630, 1870995, -1891396, 2481954,
- 4265977, 625992, -1919314, 948651, 2109366, 2321967, -4362076, -2598455, 1253594, 509491,
- -2052458, 1910187, 1239098, 1713155, -709743, -844498, -2099702, -608275, 641024, 1101122,
- -971200, 1282048, -845035, -941135, -453656, 15032,
- },
- {
- 291521, -117202680, -32640678, -31412854, 37101540, 4227859, 5443871, -2132988, 1046898, 2382633,
- -3817152, 8106751, 5514201, 2924873, 1137093, -6921877, -3882651, 7703561, -14851997, -10074383,
- -1019518, 36507, -16736414, -1857037, 20851530, -16414291, 3663607, -10456098, 9254044, 8129836,
- 11380590, -8959302, -6221260, 10748156, -4366371, -2882997, 2134599, 944356, -9257265, -15941845,
- 1418950, 1987496, -2864743, 6227166, -9197136, -5902896, 5765994, 5065377, -2803003, 484258,
- 3499325, 1597728, -3085934, 995896, -3309272, 2144799, -693637, -5987722, -1166621, -4209068,
- -2681133, 1370095, -2305324, 351650, 58519, 5182952, 3117610, -1252520, 3334505, 64961,
- 172872, -978179, 1255204, 98784, -2672544, 987306, -2749853, -287763, -1573032, -1551020,
- -179315, -2666101, -2755222, -248571, -700080, -1873143, -100395, 998580, 570157, 2275796,
- -255014, -1036698, 885300, 132070, 39728, -690953,
- },
- {
- -1876901, -53823456, 41023916, 11574400, 10167798, -5745593, 6069863, -18894634, 12590697, 440771,
- 3104188, 4104378, -11781095, 6207839, 10764262, 15918223, 1977833, -9730785, 20125680, -471373,
- 11725261, 6162741, 5315022, 1906429, -8167954, -6075768, 1087164, -7350300, -6575058, -7321309,
- -2320893, 931471, -7814693, -6950331, -6565932, -2757906, 7437273, 3851512, -260919, 3912715,
- 5825587, -4586488, 3971234, 1350767, -322123, -4165582, 1059783, -11812771, -648003, -12928388,
- -4391067, -434865, -8895414, 1716913, 1145146, -868120, -356482, -7435662, 5916855, 392453,
- -2411624, 2589865, 131533, -6613713, -6801081, -3231963, 1323387, 2672007, 1663226, -3183108,
- -3061238, -2901787, -68183, 1374926, 3056943, -575526, -1894618, -2269890, -57982, 864362,
- -1247688, -2234457, 344671, 904628, 1250909, -2196339, -4865661, -399969, -302795, 622233,
- 856309, 562641, 2616709, 759672, 2206540, 8590,
- },
- {
- -3345243, -97843112, -6881612, 1919850, 21837762, -5849746, 54575612, -20984136, -6523519, 13361643,
- 752693, 10982768, -1336272, -5866926, 6695854, -8827232, 12081743, 15543487, 28243704, -13143674,
- 10166724, 4944044, 932008, -14496, -9770514, 15855946, 3461207, 10054518, -3845606, 15150497,
- -20538534, 5883032, -5692979, -3687766, -4599373, -3944928, 2462090, 4513474, -1031329, 174483,
- 1992865, -1857037, -983548, -1773822, -2971044, 1285806, 3325379, -1798518, -106837, -216896,
- -9670656, 1739462, 9358197, 759672, -4509716, 3543885, -6254546, 2450279, -2008434, -2867428,
- -337155, 2949569, -549756, 419833, -751619, 655519, -4195110, -221728, -1492501, -380105,
- -285078, -285078, -2135136, 1074816, 848256, 1095217, -113817, -602906, 2066416, 251792,
- -102005, 864362, -1707786, -2166811, 1879585, 1541356, 3093450, 352724, 110595, 1642825,
- 565325, -2336462, -256624, 1815161, -188979, -16643,
- },
- {
- -194347, -36638756, 48154636, 13392782, 5698885, -9632001, -18341658, -34360, -8987219, -876710,
- -25784300, 26134876, 11570642, 12614856, 14025753, -9343701, -23434952, -2729989, 13749264, -5842766,
- 15379204, 7581154, 6629819, 11803107, -17057462, -630286, -892279, 10880763, -1430224, -6323803,
- 2393908, -11952894, -13045426, -3394098, 2113124, -4927938, 11023570, 3745212, -1061394, -8231305,
- 1407139, 4132832, 2359011, 11431592, 6308770, -3183645, -787053, -357556, -2481417, -2266669,
- -4186519, -1806034, -211527, 585726, -2208150, 1295470, 2469606, -3841312, -1308891, 5882495,
- -1364189, 3752191, -5879810, -5424544, -253403, -1474784, -3657165, 6175089, 3255048, 481036,
- 841814, 890132, 1291711, 2427730, -2325188, 170188, -1178969, -1187559, 715649, 2447058,
- -1466195, 508954, 484258, 1662689, 401043, 2080912, -995359, -1940788, -984084, 181999,
- 1942936, 571231, -564788, 195958, -2005213, -309775,
- },
- {
- 11995307, -53174380, -26763552, -9985799, 17700634, 11715597, 32778654, 9242233, -1393717, 3657702,
- -17557290, 24019604, -12178380, 928787, -17156246, -9944997, -20139638, 8185671, 595927, -6781754,
- 12210592, 3320547, 6948720, -4150012, -13031468, -4571456, -1506997, -81604, -1220845, 6573985,
- -1589675, -12791486, -15239618, -6007049, 398895, 666794, 3139621, 9533754, 4207994, 477815,
- 8830453, -8923331, 2670933, -16621523, 3075734, 4488778, -3046743, -647466, 8003672, 4810364,
- -2694555, -7594039, -4909148, 4975720, -5912560, -3149822, 4973572, -3958886, 876710, 865973,
- 207769, 2612951, 1114544, 579821, 2177012, -1192390, -4927938, -1167157, -4012573, 1702418,
- 3877819, 34897, 2764885, -530428, -88047, 1421097, -3170223, -262530, 1072668, 2426120,
- 1373316, 1322850, 1971927, 678605, 979789, 2668249, -993748, -2325725, -57982, -734976,
- -1758789, -1232119, -436476, 153545, 647466, 1756642,
- },
- {
- -2769717, -63939180, 32897838, 161598, 6072010, -8055211, 3435974, -2244121, 13243532, 2166811,
- -7989176, -1430761, -16013249, 11568494, 5647345, 5945846, -8694088, 1822140, -2937221, 2959769,
- -925029, 8119636, -3959423, 18603650, 6665789, 5930276, 2753074, 1301375, 6325950, 4182761,
- -17182016, -3129958, -2487323, 6036040, -9148817, 14370424, -1803349, 12700218, -9144522, 8628589,
- 4205310, 291521, 2240899, 7143605, -485331, -4903242, 4276177, 6288369, 7260106, 6905771,
- -2301029, 7514046, 1222992, -1105954, 2963528, 2771328, 1687922, -106300, 2668249, 3803194,
- -1047435, -2923799, 752156, 1486596, 2004676, 2789581, -262530, -77846, -3362423, -1074279,
- -903554, 1272921, -1183264, -490700, -2328946, 941672, 334471, -419296, 390842, -1193464,
- 2764348, 4239133, 963146, 1587527, -969052, 1516124, -1790465, -2993055, -1287417, 3009162,
- 265214, 1247151, 404801, 1598265, 1053878, 1216013,
- },
- {
- 9769977, -53098144, -27269284, -9379135, 23380192, 19413790, 31679678, -14296336, -20302310, 4613869,
- -6808060, 10069014, 31686122, 747324, 20963736, 30127584, -2164127, 2165201, 14933064, -4929012,
- -10440529, 4318053, 5173825, -8502962, -308701, -2908767, -4304094, -504659, -2199560, 1261647,
- -715649, 4082903, -3003256, -10276783, -21744346, -843961, -2660732, -8066486, 493921, 2695629,
- -431107, 2781528, 3142842, 4685810, -3817689, 703838, -8444443, 1032940, -2723546, -2524367,
- -5902896, 5281199, 1321776, -3243237, -774705, 318364, 3325379, -2682207, 2326799, -4560719,
- -462783, -2148558, -2510945, 2092186, 360777, -5019743, 1083942, 2735357, -489089, -1129576,
- 616328, 2615098, -2039573, 1565516, 3150896, 3101503, 362925, -1963337, 1016297, -154082,
- 332860, 973884, -1726040, -704375, -1683627, 1392106, 1280437, 523449, 2512556, -945967,
- 376883, -1934883, 1600412, -312996, 941135, 1279363,
- },
- },
- {
- {
- -1074279, 64811592, -9386651, 19950124, 22123376, -231928, 629213, -780073, 5285494, 5345087,
- -1084479, -7245073, 1781875, -11851962, -6980396, -972273, -9569724, -5005248, 3846680, -3317325,
- 13835163, 20823612, -8036958, -15164993, -5007932, -15404437, -1117765, -4191888, 1264331, -11127187,
- 6630356, -673236, 4551055, 2903398, -10674067, -1463510, 6487548, -2608656, 781147, -7766912,
- -5565204, 4756677, -2791192, 2952790, -4130148, -1642288, 4126927, 1518271, -7433515, 79994,
- 44560, -76236, -647466, -93952, -5713917, 531502, 8153996, -2785823, -1705102, 3574487,
- -2355253, 6888054, 2362769, -3284576, 1365800, -77309, 500901, 1029718, 2110977, 3074123,
- 6784975, -236223, 1129040, 2563559, 1015223, -4500052, -1925219, 1427003, 1602023, 755377,
- 3122978, 54224, 674310, 3030100, -674847, -1751810, 381178, -1336272, 251256, -1525787,
- -1455457, 727460, -77846, 1475321, 1300838, -656056,
- },
- {
- 5630166, -95685968, -77680392, 71777496, -311385, -8258149, -14732812, 6178311, 6627135, -1569811,
- 658204, -5616207, 1562831, 1768990, 11697343, 6031208, 1445257, -7712688, 11219528, -15909633,
- -14496, 6737193, -4626754, 3201361, 7283191, -837519, 3627637, -4278861, 3859565, 10496363,
- 2345589, 2172717, -4531191, -1198296, -2835215, -1007170, 5805722, 2943126, -4485020, 5206037,
- 485868, 6812892, -314606, -3408594, 2324651, -8997956, -1017370, 1175747, -4174708, 5519033,
- -4452808, -206695, 4203699, -5969468, -953483, -2375117, 2794950, 3177739, -2566243, 393526,
- -2927020, 656593, -1925219, 1499481, -1490891, 328028, 2423972, -1507534, 1799591, 3942243,
- -723702, -2417530, -2027225, -1627256, 730144, 592169, 1237488, 540629, -8590, -3118146,
- -1203665, -1481227, 183073, -111669, 597000, -1029718, -1266479, 996969, 2209224, -1762010,
- -1518271, -761820, -855772, -956167, 925565, 105764,
- },
- {
- 336618, 10593000, -56006912, 52958556, 10283762, -9141838, 448824, 1947231, 16557099, 7068443,
- -2212445, 3525631, 3864934, 1600949, 704375, -6005975, 1256815, -8791261, 1609002, 5747203,
- -10000831, -7915088, -4707821, 4976794, 678068, 1927367, -17828946, 5015985, -1075352, -9535901,
- -3770981, 2958159, 5776731, 5077188, -6386080, -4508642, 1799054, -995359, 5159330, -1944547,
- -681289, 1436667, 1178969, 2080375, -2271501, 5454072, -2717104, 145492, 6579890, 4000225,
- 1012002, -6769406, -827318, -1821066, -1433445, 345745, 1991791, 1675574, -1269163, -3214783,
- 1049583, 2409477, 624918, 2455111, -2843805, -1217086, 305480, 4262755, 1010391, 533113,
- 1233193, -1837709, -186294, -261456, -3317325, -333397, -347355, 981400, 1309428, 272194,
- 1438814, 3198677, 1427540, -1636919, -797790, 163209, -507880, -1232656, 391916, -352187,
- -2337536, 154619, 312996, 2597382, -1054951, -1914482,
- },
- {
- -803159, 22520662, -6762426, 3120294, 5821828, -4398047, -2863670, -1412507, 4361003, 10607495,
- -11466489, 4205310, 4266513, 4044249, -6601365, 1724966, -4417911, -2771328, -8264054, 372052,
- -5450851, 5379447, 16248398, 16438450, -5944235, -4000225, 6168110, 2060511, -5257040, 1139240,
- -3389803, 4101157, 8509404, -5546951, 3404299, 1455994, 4057670, 6534256, -3141769, -5005785,
- 5037997, 2716030, 1917166, 4591320, -12731894, 975494, -806380, 2376191, -4983236, 5148055,
- -5238250, -7421167, 3133179, 2529736, -1324997, 3745212, -963683, 2813741, -2961917, 5085242,
- 1351841, 1505386, -3137474, -170188, 1424319, -2358474, 5195300, -235686, 1439351, 1393180,
- -1594507, -1989644, 4560182, 806380, 364535, -49929, 1111860, -222265, -666257, 947577,
- -457951, 1384590, 447750, 16106, 819265, 923955, -1653562, 2932389, 862752, 1401233,
- -219043, 45097, 1262184, 855772, 1737314, -1089311,
- },
- {
- -385473, -176216064, 13844827, 27766964, 4578972, 3609383, -11180337, 4177930, -9029095, -27807228,
- 13125420, -7774428, 7097971, -372052, -12459163, -1090385, 12474733, -8871792, 14133127, 3794604,
- 1110786, 2239289, -15861314, -2422899, -908922, 3815005, 7634841, -3932043, -4057670, 5323075,
- -3085934, -2531883, 410706, -3479997, -1540820, 3795677, 3012920, 1920387, -1978906, -971200,
- -4316442, -12830678, -10648835, 897111, -3046743, 3978214, 14468671, -1576253, -4023848, 3189550,
- -2825015, 10972031, 6398965, 126702, 1607392, -1382980, -5058935, -8486319, -667867, 50466,
- -1890323, 7860327, 2123325, -3438658, -1461363, -54224, -682900, -1893544, 1244467, -310848,
- 459025, -1247688, -1806571, -73014, 1315871, -32212, 1463510, 5046050, -1560684, 2288681,
- 2213519, 1950989, 1482301, -483721, 1133335, 352187, -1505923, -869194, -1811939, -1927904,
- -1071594, 503048, -1488743, -1705639, -165356, 1378685,
- },
- {
- 1111323, 54024248, 34416108, -16654273, 6667937, -7014219, -5723044, 1159104, 4083440, 1891396,
- -11433740, -2220498, -294742, -12768938, 2069637, 6112276, -7465727, 118112, 2206003, -15590194,
- -13213467, 69256, -1112397, 20812338, -21613350, 5235029, -2983929, 7677791, -4989679, -8834211,
- -788663, 2586644, -17373142, -1429687, -3674882, 346819, -2464238, 735513, 383326, 9367861,
- -4701379, 3268470, 492848, 3673808, 8675834, -1293859, -2796024, 5309654, 3148748, 1447941,
- -1122597, -4584341, -1791538, 4655208, 2426657, 4020626, -6869800, -8038568, -6693170, 1291711,
- -1655173, 1001264, 4751308, -227096, 3743064, 2881923, 1781338, -3107409, -1319629, 792421,
- 9545565, -51540, 84289, -417149, 545998, 732292, -215822, 9664, 3783866, 2210298,
- -936303, 495532, 2167885, -1548336, -465467, -381178, 2336999, 446140, -1378148, -293668,
- -1520418, 464393, -3008088, -70867, 1722819, -671089,
- },
- {
- -3237332, -190296576, 18593450, 28940026, -19192062, 1638530, 4634807, -8120710, 6613713, -8473434,
- 14755897, 4121021, -1739999, 1142998, -1711545, -10888816, 10240276, -4949950, 1971390, 1096827,
- -15673946, -427349, -9185324, 2061584, 3467112, -7660611, -471373, -8686034, 864899, 4945118,
- -5937256, -590558, 4169876, 4715337, 5327907, 4772246, 1819992, -3007551, 7028714, 3431142,
- 5104569, -3448322, 7999377, 3630858, -2258079, -4115653, -8226473, 24159, 7171522, -1668595,
- -308701, 4291746, 6692096, 5185100, 7554848, 3396246, 3028489, 16106, 4454418, 1820529,
- 2724083, -1572495, 4902169, 1648194, -6834367, -83752, 2622615, 122943, -39728, 55835,
- -632434, -5151277, -1671816, -250182, 812286, -369904, -1468342, -2578054, -515396, 2233920,
- 2406256, 1181116, 200790, 26307, -497142, -403727, 2237678, -643708, -1407139, 1073742,
- -1260036, 4295, -1809255, -1957968, -1735167, 1254131,
- },
- {
- 2084670, 40535364, 55119464, -13316546, 5469104, 1269163, -2270964, -553514, 3891777, -2393371,
- 1277216, -11481521, 4065724, -11195906, -22644142, 8650601, -32423782, -15829639, 4663261, 15688442,
- -530965, 1724429, 4172561, -13501767, 7699266, 5320928, 8842264, -6453189, 6973953, 3115462,
- -5442798, -11606612, -8853538, -2037962, -3692598, 4878546, 6444062, 10634339, -767189, -2748779,
- -1807108, 3235721, -869731, -4114042, 2915209, 1075352, -339839, -133144, 5231807, -2058363,
- 5833103, 1120987, -828929, 3475702, 674310, -3329137, 2937758, 1769527, -57445, -5104569,
- 2171643, 66035, -1977296, 2285996, -1899986, -746251, 3282429, 4128537, 2328409, 163746,
- 4939213, -232465, -2306398, -846645, 3110093, 2435247, -1741609, -1622961, 2458869, -490700,
- -2228551, 717796, 872952, -503048, -115964, 274878, -1214402, -130997, -1991791, 1117228,
- -157840, 691490, -1515050, 828929, -667331, -42413,
- },
- {
- -3593814, -177594752, 7354595, 31607738, -14659260, -4070555, 8518531, -1302986, 13085692, -96100,
- -1469953, -14723685, 9043591, -463856, -1769527, -5677947, 9957882, -7373922, -719944, -15555835,
- -2724083, -4927401, -6817187, 459562, 6625524, -6868727, -6496675, 5956583, 3243237, 4859756,
- 2294050, 659278, 2537252, 1860258, -2474438, -1937567, -151398, 4659503, -8928700, -15081778,
- -2156611, 2716030, 1373853, 907312, -4970888, -7057705, 2319819, 3057480, -5397700, 3724811,
- 4749160, 709743, -5152350, -4201552, 4798016, 1100585, -124554, -1124745, -252329, -4219806,
- -4546760, 573378, -3142842, 319438, 800475, 1946157, 2717641, -1097364, 849867, 2097018,
- -3446711, 267362, -834297, 5230734, -3151969, -963683, -1327682, 295816, 36507, -372588,
- -2260227, -3542811, -1852742, 288300, -1784022, -2169495, 1920924, -102542, 1433445, -184684,
- -1323924, 250182, 3758, 2076617, -571231, -1647120,
- },
- {
- 388695, -6835978, -2883534, 8643085, -1477469, 754304, 21290152, -14504641, -537945, 2413772,
- 9173513, -3044595, -8417599, 11725798, -3650185, 7761006, 14231911, 11056320, 6665789, -8223789,
- 12211129, 3745212, 11484743, 994822, -2390686, -2884608, -6830609, -6543383, 217970, -10462003,
- -2184528, -2852932, -16234976, 3535295, -16062104, 3053185, 10365904, -789200, -9737765, 10708427,
- 1556926, 1325534, -2617246, 11225971, -8629126, 2785823, -11100343, -5301064, -2604361, -12925167,
- 5800890, -6755984, -11341935, 7653632, 2843805, -7129109, -2976949, -3902515, 5323075, -1239635,
- 3430605, 916439, -2375117, -9845139, -6665789, 3058017, 1573032, 484258, 5148055, -5814312,
- -3610994, -1883880, 965294, 5322002, -2973728, -1625108, -1532230, -1243393, -976031, -1136556,
- -1254667, 131533, -96637, 1597728, -1421634, -1047435, -3032247, 628676, 1562831, -977105,
- -74625, 363462, 2724620, 366146, 1490354, 745714,
- },
- {
- 2899103, -130011344, 4263292, 397284, 10437307, 32434520, 22788560, -24237574, 1045825, 21194052,
- 5437966, -6129455, 8367133, 7656316, -13720810, 12620225, 11023034, 23104776, 14329622, -824097,
- 942745, -3855270, 9284109, -5477694, -681289, 16660178, 3530463, 3310346, 5867999, -13721347,
- 3668976, 570157, -6668474, -3614752, -13848585, 2867428, 2042794, 5413270, -1221918, 584116,
- 7262253, -1360431, 5936182, -5782100, -12018392, -2392297, -286689, -96100, 9280887, -10492605,
- -1516124, 4960687, 4303557, 1188632, -5317170, 1345399, -4164508, -226560, 575526, -8567386,
- 5528697, 3667902, 1234266, -4605816, 1433982, 3356517, -7393250, 1612760, -1459752, -3833795,
- 4252018, -3327526, -1904281, 4295, -2137283, 2613488, 186831, 1130113, -93952, 864362,
- 801011, 758599, -2240362, 383326, 456340, 1136019, 1998770, 622233, 3609920, -555125,
- -852551, -560493, -1115081, 1209033, -981937, 413927,
- },
- {
- -273267, 24588688, -17058536, 14903537, 6541235, -10857677, -3721589, -10392747, -3422015, -6706055,
- 9240085, -7969849, 10973641, 25065966, -13582297, -2654827, -18658948, 12423730, 1693291, 2378338,
- 6494528, 11288785, 25364466, 2762201, -11065983, -9432822, -4196720, 14616311, 7982197, -6450504,
- -3584687, -16396575, -17305496, -5197984, 9043054, -3917547, 7953743, 1754494, 2683818, -3179350,
- -5743445, 2904472, 6183679, 11751031, 5498095, -5377299, -718870, -1341640, -2282775, -3680250,
- -3758097, 4388920, -5060009, 6781754, -3932043, 3369402, 2774549, -5637145, 3002719, -5970005,
- 1464584, 5425081, -5382131, -5396627, -3300146, -1630477, 2115808, 2586107, 1607928, 2413235,
- -244813, 3992172, -2009508, 1513976, 1262720, -345208, 1854889, -2176475, 885837, 3433290,
- -4149475, -67109, 2117956, 549756, 289373, 1853815, -2471217, -1780801, -2338073, 1100049,
- 1531693, 2248416, -339302, 1229434, -2090575, -1292248,
- },
- {
- -18018998, -55444268, 1780801, -4210142, 14332306, 37106368, -6190659, 9109626, -1481764, -2969970,
- 654983, 17292612, -10095858, -5542656, -16081968, -6213207, -16641925, 1509681, 376883, 3719442,
- 10778757, 7319698, -5422933, -5787469, -8803072, -569083, -3628174, -4539244, -2885681, 216359,
- 6910603, -20651276, -12793634, -3067681, -5316096, 11433740, 6671695, 3861713, 1191853, 3892851,
- 5463736, -9273908, -2652142, -6829535, 609885, -6005975, 5982890, 98784, 622233, 8391829,
- -2997887, 1347546, -4355097, 4517769, -7104950, 309775, -2005750, 1346472, -3372086, -2571612,
- -515396, 3111704, 3729105, 1192927, 126165, 2424509, -6000606, -4466766, -4980015, 4212826,
- 386010, 3706557, 1494649, -825707, 2842195, -1199907, 1809792, 115427, -31139, 2321967,
- -892279, 708133, 989990, 439160, 2531883, 3326989, -3771518, -674310, 119722, -1656247,
- -748935, -1381369, 494458, 838592, -404264, 1418413,
- },
- {
- 1600412, -32166620, -12130598, 4434017, -4866735, -4128537, 18082350, -6502044, 6463926, 15548318,
- -4890894, -5592048, -7899519, -16248398, 31989990, 13929116, -25713432, -1234266, -345745, 3824132,
- -6531572, 10713259, 10854993, 14905147, 3543885, 7963943, -7298223, 11702175, 14493904, -1387811,
- -20185810, -4101694, -2641942, -433792, 3473018, -633508, 12038793, 2995203, -6385006, 2836826,
- 10296110, 6935299, 5112085, 5187784, 2619393, -8699993, -663036, 5247913, 4009889, 9201431,
- 8453569, 1221381, 763430, 6467684, -3819837, 187905, 3722126, -581431, 3032784, 2616172,
- -1305670, -1414655, 1397475, -1911797, 1882806, -522375, 6310381, -3046206, 92342, 612570,
- -2364916, -1289564, 854162, 335007, -5418638, 2285996, 488016, 1789928, -1240709, -2797098,
- 2354179, 5748814, -24159, 355945, 1668058, 256087, -1552094, -2298881, -809064, 2687039,
- -683974, 2026151, 1874216, 655519, 474057, 1175747,
- },
- {
- -14275398, -72769096, 8062728, -3331821, 14369887, 44408352, 5703180, -8891119, -24415278, -1595044,
- 4536023, 2641942, 29028074, 3379066, 39849780, 16346109, -10277320, 5446556, 25934086, 1324997,
- -8442295, -6917582, 4262218, -11175505, 8982387, -209380, 5404143, -15182173, -2011118, -666257,
- 7186017, 8676371, -11583527, -14059039, -13606456, -2752000, -2677375, -12838194, -2705830, -803696,
- 1567126, 4224637, 6099391, -5185636, 11900818, -4678293, -7665443, -5774047, 1483911, -3052648,
- -412854, 2413772, 2275259, -1658931, -4756677, -1983738, 1411971, 102542, 3680787, -1911797,
- -4544076, 2930778, -6706592, 1177358, -3267396, -2149094, 1115081, 1408749, 510027, 1155346,
- -687195, 5842230, -3730716, -404801, 5313949, 2007360, 2327872, -2323041, -344671, -2015950,
- 2663954, -317828, -1898376, -2048163, 1369021, 1680943, 470299, 1408749, 2628520, -1345399,
- 876173, -1508607, 376347, 1345399, 325881, 285615,
- },
- },
- {
- {
- -1527398, 52698176, -22193170, -22399866, -15205795, 1461363, 3707094, -772020, 208843, -2526515,
- 8063264, -4469451, 768799, 4362076, -5555004, 905164, -1810329, -10914049, 7479149, 4619238,
- 8782134, 6646999, 55298, 4881231, 9058086, -16809428, -3018825, -3957812, 4129611, -18316424,
- -1465121, -6149320, -6919729, 3755949, 963683, 3060164, 3051038, -2750390, 4839892, -4594542,
- -4699231, 8889509, 2992519, 716723, -3022046, 1372242, 8112120, 2001455, -7399692, 8104604,
- 3867081, -876710, -711354, -1641751, -8005282, -2557653, 4753455, -1381906, 1835562, 1811403,
- -5893769, 951872, -2322504, -3790309, -529892, -4081830, -1163936, 1432909, 2057826, -23085,
- 811212, -1853815, 921807, 1526861, 925029, -2600066, -754304, 862752, -166430, -927713,
- -183610, -1632088, -1249299, 894427, 3758, 121333, 1484985, 1071058, 2067490, 413927,
- 539555, 985695, -747861, 879395, 1095217, 677531,
- },
- {
- -5530308, -17485886, 8638790, 69162392, 476205, -5715528, -9089225, 3867081, -1654636, -594853,
- 86973, -2231236, 1651952, -7636989, 6245956, 7187091, -5796595, -5444945, 22434762, -10364293,
- 362388, 8742406, 3332895, 4896800, 2491618, -182536, 11855183, 5643587, -1432372, -1722819,
- -2621004, 2221572, -2039036, 3663607, 561030, -1502165, 3467649, 5381057, -2538863, 1614371,
- 736050, 5804649, 1132798, -789200, 7251516, -6369437, 776852, 2081985, -2765422, 3282966,
- -4032974, -4017405, -1176821, -5488432, 3488587, -467615, 515396, 1161789, -3448859, -1799591,
- -4838281, -1280974, -2680597, 4844723, 5167383, 2895345, 3929358, 1908576, 47245, 1415729,
- 293132, -615254, -1684701, -3298535, -942745, -375273, 42413, -1193464, 901406, 359167,
- 570694, -635118, 1095217, -1289027, -119185, 972273, -661962, 112206, 756451, -1089311,
- 48318, 539018, 884226, -457414, 105764, -1438814,
- },
- {
- 1301912, 82709256, -13147969, 5898601, -22315040, -1650341, 3963181, -6402723, 6171868, 2262911,
- -1944010, 888521, 176631, -5514201, -382789, 3112778, 4617627, -9171903, -5108864, 2641942,
- -1646046, 2858838, -3834869, 411780, 2007897, 9040369, -6550362, 8945880, -3724274, -12636331,
- -3980361, -3495567, 73551, 930397, -1227824, -91268, 3625489, 346819, 5113696, -4147328,
- -2575370, 4046933, 4896800, -540629, -7264401, 3890704, 1110786, 2004139, 68183, 1180579,
- 7242389, -4389994, -2015950, -526670, -785442, -153545, -448824, 168577, 2899103, 576063,
- -2162516, 294205, 506806, 4239133, -645856, 1708860, -1476932, 1440962, -1882269, -2187212,
- 183610, -2459943, 940061, 1005022, -4079682, -274878, -682363, -1278827, 1780801, 2331094,
- 1477469, 2396592, 549219, -2193655, 257698, 1600412, 449898, -998043, 119185, 533113,
- -860604, 639950, -301185, 1716913, -812823, -535260,
- },
- {
- 695785, 49483392, 8672613, -6139119, 419296, -350040, 369904, -464393, 2513630, 12277164,
- -9881109, -2021856, -1815161, -4785131, -15630460, 382252, -11687680, -5691906, -3773129, -2806224,
- -5459441, 1160178, 6862821, 12829604, -1389422, 2245731, 2028298, 3337727, 287763, -2828773,
- -3600256, 6354941, 7882339, -5493263, 1030255, -12316892, -7381975, 4341675, -1526324, -4817880,
- 6032282, -2283312, -8259222, 2937221, -11268384, 4676683, -790274, -1656247, -3586835, 2246805,
- -6417755, -7380902, 2386928, 5300527, -4255239, 1786170, 1728188, 4220879, -2819646, 587337,
- -2395518, -590558, -1007707, 1905892, 3402688, -2862596, 4408247, -324270, -1174674, 728534,
- -847182, -2149631, 2371359, -1134408, 793495, 1544578, -1076426, -4403415, -2668785, -63888,
- -2127083, -872952, -484794, 220117, -102005, 586263, -629750, 3010772, -1100585, -183073,
- -469762, -979253, -1876364, -2155537, 336618, -1375463,
- },
- {
- 2222109, -186639952, 6117107, 37877852, 1799054, 2062658, -10998874, 8242042, 2318209, -17170206,
- 20549272, -14178224, -470299, 215285, -1586990, -3606699, 2602213, -12360916, 10521596, -585726,
- -7507066, -2914672, -1046898, 6986838, -212601, 166430, 5180805, 4958540, 4683662, 8925479,
- -2551748, 1843615, 2094333, 2774012, 1314797, 3293703, 1720671, 1413044, -1122597, 1407139,
- 4239133, -1479616, -7290707, -279710, 289910, 4136591, 8149164, -8412230, -7507603, 3155727,
- -7530152, 4012036, 4549444, -364535, -1052267, 119185, 339302, -431107, 4310537, 1502702,
- -3102577, 1815161, -4542465, -3254512, 3096135, 2856153, -1855426, -1122060, 637803, -843424,
- 1537598, 360777, 1392643, 410169, 1150514, -220117, -2036888, 928787, -2423435, 1984275,
- -107374, 796180, 290447, -3096135, 57982, -1060857, -405338, 492311, -530428, 190589,
- -44560, 2889976, 28991, -710817, 34360, 377957,
- },
- {
- -2834679, -17379586, -32096290, -14485314, 10947335, -1881733, -4675072, 2805151, 5490579, 3156801,
- -3484829, 8249559, 6739341, 860604, 13782013, 2753611, -10653666, 1843615, -1105417, 1012539,
- 3181497, 1764695, 2635499, 16863116, -14150843, 21749178, -6104759, 2745021, 2196339, 4354023,
- 13282186, 8677981, -8537321, 5914707, -2309082, 1231582, -81604, -6409702, -3344706, 6681359,
- -3457449, 795106, -370441, 4340065, 2876018, -3445101, -1451162, 2640868, -192200, 3310346,
- 3081639, 1214402, 3992172, 2800856, -1268089, 1382980, -4038343, -999117, -3438658, 1042603,
- 2189897, -59593, 526134, -887448, 1906429, 162672, 846109, -1764158, 3244311, 188979,
- 3652870, -3996467, -3626563, -683437, 965294, 361314, 1483911, -216896, 2359548, 284542,
- -2099702, 739808, 1174674, -639413, -137976, -1999844, 1392643, 35433, -857383, -26307,
- -682363, -4295, -3262028, -275415, 1117765, -149250,
- },
- {
- 6238440, -191446016, 7990250, 54451596, -1531156, -3234647, 227096, -10946798, 14160507, -5280663,
- 2378875, -1913945, 2379412, 1535451, -4409321, -2091649, 16335371, -10456098, -6252399, 10972031,
- 872952, 1149978, -9506373, 11201275, 9343701, -3276523, 8611409, 244813, 3946538, 4109747,
- -3528853, -2317135, 2068027, 411780, 3723737, -813896, -1118302, -5299990, 1265942, -230854,
- 2308008, -3192771, 6090264, 2074469, -2042794, 1214939, -3960497, 205085, 4992900, 191663,
- -1480153, -2945274, 5615133, 2751464, 2738579, -2019172, -4064650, -8123931, -321586, -314069,
- 1000191, -5870147, -337155, 4119411, -3850975, -1674500, 671089, -815507, -578210, 271120,
- 861678, -324807, -696322, -2294586, 1693828, 1887638, 649077, 760209, -863288, -1398012,
- -277562, 97711, -1421097, 1134945, 1520955, 77846, 1463510, 456340, -753230, 59056,
- -490700, 1205812, 830539, 73014, -1328219, 2080912,
- },
- {
- -2734821, -44521632, -28163712, -8975408, 9496710, 4300336, -1694902, 278636, 2275259, -288837,
- 7126962, -1938641, 1847373, -2288144, 4277788, 14339822, -28190018, -9751186, 13686987, 16671452,
- 431644, 5774047, 2020782, -14693083, 7291244, -12172474, 650688, -3680250, 8543764, -537945,
- -9240085, 1571421, -6324876, -2570001, -1394254, -7397008, -5010616, 8666707, -5237713, -988379,
- 2717104, -221728, -5091147, -6080063, 1761474, -1353989, -2373506, 2845416, 9285719, -4388383,
- 5245766, -721555, -6621229, 2473901, 3459596, -1803886, 3950296, 1852205, 186831, -5781563,
- 401043, 1349694, -1771674, 119722, 133144, 1162862, -102542, 372052, -905164, -3118146,
- 247497, 1053878, 2531346, -453119, 2677375, 3522410, -326418, -2299955, 1697586, 643708,
- -683974, -172872, 894427, -1052267, 743029, 1603633, -1858647, 413391, -981400, 898722,
- 170188, 1090922, -1112933, 12885, -1242319, 111132,
- },
- {
- 6260452, -174626928, -445603, 55148992, 220117, -11848204, -4032974, -8598525, 6080063, -7567733,
- -6129455, -12533788, 10126996, -2849711, -7167764, -15605764, 6171331, 506806, -1569811, -10741713,
- 3971771, 963146, 4129074, -2725157, -678605, -1285269, -4958003, 8093866, -23085, -1316944,
- 1772211, 5122822, 6842420, 3229279, -274341, -798864, -1688996, 8139500, -2451890, -6884296,
- 3488587, 4296578, -557809, -1955821, -4641249, -9268539, -3292093, 8486855, 528818, 2798708,
- 1755568, -1688996, -635118, 322659, 3526705, 2098629, -595927, -1024887, -1219234, -950798,
- -1152125, -4403952, -6274947, 1702418, 1924145, 105764, -1437740, -3662533, -2477123, -2196339,
- -3690451, 4076461, -1371705, 3010772, -2299418, 940598, 1210107, 1005022, -833224, 89121,
- 701690, 864362, 2610803, 2323041, -525597, -1363115, 1865626, -277025, 61740, -2017024,
- -501974, 649077, -765041, 1442035, -111669, -287226,
- },
- {
- 404264, 50472844, 27436252, -13194140, -14865956, -7306276, 23393614, -2248952, -2737505, -4820564,
- 9580998, 4804458, -7299297, 6272800, -7254737, -2710124, 14936823, 8328479, -4701916, -17541720,
- 9923522, -25233, 7937100, -6031745, -1852205, -4445291, -6644852, 1493575, 10467372, -5600101,
- -4015795, -1440962, -11977590, 6749541, -18832894, -4181151, 8604430, 2107755, -9033390, -222265,
- -1874753, 3994857, -4008815, 13961865, -15577310, -1217086, -5717675, 1041530, 4951024, -4975720,
- 5808944, -4905927, -7441031, 7503845, 6787659, 2985002, 1391569, 954557, 7466264, 2750390,
- 7651484, -222265, -362388, -1890323, -983548, 4390531, -118112, 344134, 4947266, -3371549,
- -1179505, -2279017, 1331440, 5559835, -3387656, -1413044, -211527, 2688113, 2825015, 1403381,
- 1508070, -598611, -2525441, 779000, -2531883, -1052804, -1757179, 1338956, 1349694, -926102,
- 518080, 569620, 1964411, -489089, 586263, -71941,
- },
- {
- -2816962, -137203808, -9673340, -3029563, 9947144, 2661806, -5363878, -4179003, 14921253, 9758703,
- -4997732, -1234266, 12623446, 18671834, 7571491, 17905182, 1418413, 8733279, 11062225, 9005473,
- 2730526, -4670777, 3409130, -8443906, -286689, 9672803, -5998459, -4825933, 3098282, -16583942,
- -402653, 2760053, -2870649, -1833951, -13702019, 6378027, 2875481, -2359548, 971736, -1405528,
- 1707250, 4677220, 7392176, -5123896, -8990440, -2854006, -960462, -8137890, 3034931, -6444599,
- 2856153, 173946, -6712497, -1803886, 1035087, 4080219, -2881386, 840203, 3930969, -6453189,
- 5763309, 588411, 2996814, -3229279, -2181844, 3656091, -1847910, 3917547, -123480, -1405528,
- 3792993, -4726612, -3460670, -4497368, -3686693, 1832340, -1266479, 2658048, -1097901, 96637,
- 734976, -2091112, -2698313, 477278, -497142, -493384, -231391, 632434, 2934000, -985695,
- -1574106, 249645, -799401, -607738, -2779918, -769873,
- },
- {
- 51540, 58884540, -1977296, 1416802, 678068, -2942053, 4215511, -10733660, -2086280, -5696201,
- 7677254, -9474161, 6056441, 13829258, -7868917, 27427662, -4558034, 3564286, -4826470, 3759170,
- 4019016, 1314797, 13401372, -5493263, -6436009, -19327, 1632088, 1013075, -1302449, -9440338,
- 1741609, 2559264, 4682051, 2099165, -702227, -5467494, 13002477, -2328946, -2024003, 2527588,
- -1030255, -1063004, -4192425, 5578089, -24696, -5646809, 3090229, -943819, 1648194, -5612449,
- -8909373, 2406256, -5850283, 4806606, -5756867, 3937948, 5725192, -1343788, 6268505, -3149822,
- 2647847, 3799972, -4023848, -2172717, 1519345, -766115, -1662152, -2128693, 526134, 1247151,
- -4504347, 914828, -2544231, 1281511, 1577864, -1098975, 125091, -1371168, 867047, 3075197,
- -2473364, -1384053, -565325, 637266, 1014149, 2157684, -659814, -57982, -641024, 1407676,
- 163209, 1869921, -657667, 1838783, -368293, -148713,
- },
- {
- 18800682, -44586056, -34293704, -18275086, 7318088, 10382547, -36784248, -1597191, -5382668, 3874597,
- -5441187, 4665945, 264141, 19406810, 11696807, -2218351, -10852845, -1200980, -2877628, 942208,
- 2034204, 4521527, -911607, -71404, -7601019, -352724, -8174934, -2655364, -1844689, -8474507,
- 1729798, -13807246, -1109175, -719407, -7332583, 4283693, 716723, -266288, -2350421, 4950487,
- 6658273, -5370320, 1408212, 307627, 736587, -5813238, 5983427, 2729452, -11274, 4192962,
- 272730, 3112778, -1109712, 4966593, -9022653, 272194, -5633924, 1628866, 2268280, -2125472,
- -2944737, 1567126, 4669167, 5184563, -467078, 1044214, -5924371, -4031901, -5996311, 1724966,
- 515933, 5716602, 343597, 392453, 4963372, 556735, 1639067, -3960497, -4451734, -1114007,
- -1275068, 418222, -923418, -1449015, -235686, 1683090, -2605435, 1464584, 2317135, 719407,
- -1086627, -1853815, -1288490, -620086, -1348620, 335544,
- },
- {
- -884763, 14228153, 13981192, 694711, -2917894, 3073049, 17096654, -6529961, 1698660, 9405442,
- 1671279, -2749316, -11248519, -28245852, 31757526, 26216480, -4725001, 11800423, 8241506, 5906117,
- -23258858, 1978369, 6714645, 2591476, 5408438, 964220, -13953812, 9834401, 12847321, 9423158,
- -9826348, -4428648, 1679332, 1204202, -4444755, -6033356, 11143830, 645319, -3604015, -2866354,
- 314606, 792421, -417686, -2318746, 2895882, -3010772, -1817845, -2390686, -2167885, 2023467,
- 2752537, -1868848, -338766, 8308614, -570694, 835908, 1826972, -976031, -362925, -3762928,
- -4597226, -4612795, -3490198, -3026341, 562104, -2419677, 3260417, -3077344, 1085553, 1696512,
- 520765, -1641751, -795106, 2429341, -3558917, 842887, 616328, 3594351, 1516124, -944356,
- -308164, 3048890, 953483, 100395, 754304, 3044058, 828392, -2798171, -699543, 2152316,
- -1963337, 828392, -702764, -1277753, -1242856, 1146219,
- },
- {
- 14837501, -66016332, -11934104, -9308268, -4827543, 3536369, -18589156, 5839008, -6877317, 4231080,
- -4889284, -8969502, 8180302, 588411, 33723548, -611496, -535797, 9695889, 10933913, 1907502,
- 1990181, -8114804, 6049999, 2266669, 12737799, -2655364, 7419019, -4721780, 7806640, -2719251,
- -9361955, -716186, -2188823, 3502546, 946503, -966368, 993211, -8677445, -7822209, -4601521,
- 1666447, 2110977, 8016020, -2363843, 10268193, -1176284, 4635344, -1433445, 1475858, -1711545,
- -1678795, 1429687, 1599875, -2238752, -1142998, 530965, -973884, -7136625, -944356, 5140539,
- -993748, 3442953, -3821984, 421444, 682363, -650688, -3649112, -23085, 1579474, 2255932,
- -1291711, 4547834, -3149822, -3343095, 854699, 720481, 1709397, -2493766, 2418604, 609885,
- 166967, -1410897, -1992328, -1226750, 1298691, 41339, 776852, 970663, 1151051, -2232846,
- 940598, 809601, 3069828, 2399813, 215285, -938987,
- },
- },
- {
- {
- 2229088, -15325517, 34388192, -31453120, -25071872, 5809480, 536334, 4423280, 1504312, -7795903,
- 9941776, -2895345, -2981244, 5945309, -11225434, 1198833, 6073621, -4217121, 8955544, 5835250,
- 11199127, -9896678, 6941204, 15214385, 11756399, -27055610, -1401233, -2091649, 7284265, -6249715,
- -15392089, -4828617, -5803575, -47782, 6178311, 3420405, -2989834, 3221226, -1743757, -637266,
- 2298344, 957778, 11854647, -8759049, 1546725, 4949413, -96100, 1287953, 679679, 5322538,
- 280784, 1367947, 892816, -6619082, 209917, -2177549, -3054259, 2261837, 3655017, -3082176,
- -30065, -3762391, -710280, -3129421, -3319473, -329102, -2024003, 3140695, -934692, -526134,
- -2130304, 925565, 893890, -227633, -176631, 1404991, -689342, -278099, -1636919, -73014,
- -1233193, 192200, -1290638, -45634, -778463, 941672, -40802, 2386391, 107374, 1417876,
- 2037962, 833761, -492848, -208306, 566936, 161061,
- },
- {
- 6598681, 38855496, -10582263, -84826, 37965900, -4428648, 912144, -8488466, -6535330, 7901129,
- -7719667, 3835406, -1365800, -533113, -3544959, 3925600, -8135205, 3882651, 9768366, -4094715,
- 552977, 8669928, 6955163, 5629092, -8074539, 1906966, 12050068, 12341589, -2518462, -6359236,
- -4201015, 3904662, 517007, -59056, 4143570, 2043868, 111132, 5602785, 573378, -3011309,
- 5570036, -4074313, 7031935, -2734284, 4935455, -5508833, 745177, 3839164, 1253057, -4900021,
- 3432753, -8207146, -3575024, -3308199, 6190659, -1148367, -1770063, 3391414, -1735167, -5120138,
- 1203665, -2993592, -2359548, 5335423, 4385699, 64425, 2302639, 4664872, 1025960, -1131187,
- 1600949, -1081795, -1581622, -1222455, -2062121, -1139240, 684510, -971200, -726923, 5310190,
- -1013075, -1563905, 817118, -1881733, 1735167, 481036, -1116155, 857920, -1306207, -1283122,
- 1417876, 1078574, 1660005, -628139, -351650, -2865817,
- },
- {
- -1131187, 102627704, -17991082, -38919384, 16342887, 3126736, 147640, -4822712, -1687385, -979789,
- 4749697, -8221105, 2005213, -7973070, -1265942, 10797548, -238371, 194884, -13355738, -2420751,
- 1898376, 8460549, -6864969, -4329327, 15125264, -3354906, 527744, 1503239, 3292093, -10436234,
- -5878200, -3056406, 5441724, -8218420, -1308891, 2778844, 3490198, 5800354, 1948305, -6037651,
- 1694365, 1911797, 8171712, -4709969, -7979513, 5000416, 2646774, 792958, -3933116, 3283503,
- 6708739, -4370129, -2052994, 2847563, -4540854, -924492, -4049617, 3951907, 3353833, 3046206,
- -3453154, 639950, -594853, 5998459, -1491964, 1066763, 834297, -3022583, -2192044, -1909113,
- -967441, -2369211, 2137820, 1068910, -3385508, 389768, -649077, 858993, -594316, 834834,
- 2378338, 851477, -548145, -2713883, 1216550, 1952600, -378494, -632971, 310848, 411243,
- 737124, -157840, -449361, 222265, -312996, 155156,
- },
- {
- 361851, 45829448, 13651554, -10020159, -2656974, 2175401, 629750, -1228361, -2440078, 5312875,
- 9734543, -11996381, 1504849, -12286291, -14108431, -2617246, -8821326, -10051297, -10104984, 4090956,
- -10602664, 295816, 4038343, 6499896, 6080063, 8581882, -4094178, 1228361, 5411122, -9692667,
- 4647155, 5844377, 4290136, -973884, 78383, -14175540, -9271761, 724239, 1787243, 2252174,
- -2795487, 425202, -12300786, 2496987, -8723079, 1002338, 3156801, -8530342, 7882876, 1080184,
- -13589277, -2922188, 3172907, 5008469, -7560753, 747324, 6813966, -2340757, 4235375, -883690,
- -3127273, -3802120, 1800665, 1524713, 2360622, -1517197, 1814087, 1641751, -3264712, 1557999,
- -264141, -479426, -84826, 425739, -2735357, 2856153, 299574, -5252745, -1296543, -2546916,
- -1732482, -1552094, 315143, -253940, -1496796, 1287953, 537, 1656784, -842350, -698469,
- -610422, -2684, -3034395, -2571075, 1244467, -1053341,
- },
- {
- -2675228, -154456144, -7058779, 39858372, 658204, 1263794, -5263483, 1557463, 4247186, -7979513,
- 7237020, -3804267, -5636608, -323733, 3777424, 2101850, -1178969, -4552129, 3100967, -6403260,
- -2042794, -11920682, 13139379, 2140504, -250719, -2095944, 1822677, 6083285, 7767985, 8473970,
- 682900, 6633577, -4507032, 7401303, 108448, 2512556, 1105417, -1598265, 4385162, 675921,
- -1657321, 4862977, -5569499, 325344, 156766, 1960653, -476741, -2003065, -4373888, 233002,
- -2038499, -6496675, 4381404, -540629, 1107565, 2474975, -1688996, 2404645, 3002719, 2214593,
- -998043, -1692217, -6576132, -974421, 2979634, 4468377, -4163434, 254477, 830539, -380641,
- 2329483, 584652, 1640678, -2688650, 2698850, -91268, -4832, -3482145, -1843078, 711354,
- -122407, 2286533, -578747, -3907347, 989990, -2204929, -299574, 1519882, -731755, 645856,
- -621160, 4329864, 27380, -330712, 296890, -1241782,
- },
- {
- -94489, -36177584, -34224984, 4571456, -3150359, 899796, -2302103, 643708, 2096481, 3348464,
- 362925, 3726958, 10874320, 6520297, 5504538, 13296145, -19940996, 2552284, -13632226, 7420630,
- 2419677, 3297998, 5339181, 11999602, 3083250, 13047037, -6571300, -45634, 10168872, 6849936,
- 7243463, 5944235, 3430605, -3114388, 3988414, -1532767, 3241627, -6855842, 2760590, -7293392,
- 310311, 181999, 3779571, 2033667, 1873143, -5189931, 2313914, -3155190, 3036005, 3826816,
- 2954938, 193274, 8267275, -2488397, 24159, -1664837, -1934883, -994822, 3218541, -2181307,
- 2520609, -2025614, -769336, 449898, 2447058, 1303523, 384400, -1418413, 767725, 2864206,
- -1826435, -398895, -4245039, 1104344, -761283, -397821, 897111, -587874, 2078227, 1846836,
- -3319473, -409633, 2754148, -1296543, -233539, -872415, 381178, -151934, -1107565, -170188,
- -155156, -614180, -1748052, -697932, 1552631, -752693,
- },
- {
- -7284802, -146537312, -4139812, 58178016, 308164, -8280697, -2028298, -3429532, 2379949, -1216013,
- -10969883, 7464653, 1781875, 10224170, -10695542, -287226, 5668283, 162135, -15093052, 8626979,
- 11384348, -4272419, -9119826, 19160922, 7575786, 3184718, 1701881, 4395899, 7580618, -4050691,
- 81604, -5968931, 6078990, 757525, -994822, -1946157, 2021856, -1253057, -4184909, 300648,
- -2940442, 6578816, -752156, 3163780, -2255395, -981400, -552977, -1110249, 1599875, 3732327,
- -1246614, -6870337, 7025493, 879931, 2478733, -6768332, -2704756, -4041564, -3141769, -4268124,
- -1262184, 529892, -1024350, 2208150, -1829656, -3753265, 2532420, -796180, -3189013, 3097745,
- -893353, 3293703, -463856, -2260764, -1413044, 2423972, 1753957, 2369211, -1672353, -1374926,
- -2006824, -83215, -2533494, 3031710, 1047972, 1163936, 202937, 1182727, -139586, -1775969,
- 501974, 571231, 2165201, 515933, -1600949, 1149978,
- },
- {
- -1887638, -30037390, -66124244, 17649632, -3877819, 4572530, -2120640, 1207960, -1574642, 1365263,
- 8817568, 6021008, -5559299, 4074313, 21811454, -11846057, -14584635, -6422587, 2661806, 9684078,
- 7950522, 3410741, 3629784, -10385768, 5098663, -11750494, -4250944, 7514046, -919660, -5792301,
- -7355669, 5324686, -3967476, -466004, -5365488, -8567386, -5466957, 3731790, -621697, 2678986,
- 370441, -3782256, -1440425, -6427419, 2826625, -2626373, -965831, 2095944, 2950643, 2057289,
- -725313, 4900558, -8929774, 2988760, 5926518, -17180, 76773, 296353, -3260417, -75162,
- -3659849, 1034013, 731218, -833761, 1755568, 136902, 3190087, -1377074, -3106872, -2740726,
- -281320, 458488, 2686502, 380641, 3227668, 1944010, -1255204, -2161979, 563178, -167504,
- 2996814, -1421097, 563714, -635655, 1177895, 1118302, -2726767, 850404, 1377074, 84289,
- 1368484, -989453, 762894, 52076, -2494839, -641561,
- },
- {
- -6706055, -143407344, 1773285, 58175868, -8348343, -8339216, -9223979, -569620, -4771172, -1418413,
- -19058918, 3407520, 7243463, -1410360, -8462696, -6187438, -6215355, 1956358, -3156264, 2563022,
- -7708930, 4908611, 5429376, -4969277, 372588, 2404645, -1335198, 161598, 3361349, -6402723,
- 4292283, 9152575, -577673, 3241090, -893353, 4472135, -3449396, 7177427, -123480, 623844,
- -1139777, 3351148, -13422, -2187749, -855235, -10056129, -1745367, 6801618, -177167, 5111548,
- 215822, -2461553, 1013075, 4889821, -1980517, 2025614, -1595580, -1778117, -3389803, 1623498,
- 1085553, -7087770, -2949032, 1620813, 1420560, 76236, -2012192, -3283503, -3464965, -3118683,
- -360777, 4554813, 111132, -1196148, -1051730, -897648, 2204392, -35433, 371515, -1819992,
- 2182380, 2644089, 3485366, -380105, 948114, 355945, 146029, 380105, -279710, -654446,
- -1275605, 175020, 1009854, 479426, -1178969, 1554241,
- },
- {
- 543313, 77125264, 601295, -15147813, -11914239, 1551557, 15881178, 6123550, -7757248, -6866042,
- -354335, 5092221, 13231184, -11928198, 2671470, 3147674, 3048890, -1153199, -230318, -11567421,
- 6233608, 1620276, 9129490, -7854959, -1816771, -12591770, -1845762, 11397233, -720481, -3115462,
- -2237141, -2597382, 5530844, -12351252, -4892505, -4400731, 1047972, 561030, 6874632, -12071542,
- -636192, 7067369, -4963372, 4481799, -11230803, -1082869, -1046898, 1025960, 5177583, 2162516,
- -4536023, -5673652, 248034, 6498823, 4473209, 5997922, -1054415, 3346853, 3873524, 6275484,
- 2316598, 587337, 1054951, 603980, -337692, 3091303, -945967, 2579128, 1200980, -99321,
- -22549, -1676111, -25770, 5101885, -2628520, -557272, -688805, 2167348, 4004520, 1642288,
- 2851322, -1809792, -2108829, 932545, -2034741, -1229971, 193810, 1373853, -2138894, 565325,
- -556735, 1632625, 1196148, -1351841, 1354525, -258772,
- },
- {
- 5128728, -93384936, -45937896, -1149441, -37044, 12323335, -23810762, -5628018, 14359149, -2238752,
- 11249056, 1169305, 10098005, 8727374, 30967788, 3031710, -3962644, 8759049, 8524973, 11097122,
- -318901, 508954, -2136746, -4925254, 3622268, -4144107, -3519726, 6431714, -6361921, -4705137,
- -7994545, 7271917, -5991480, 501974, -4600447, -4828080, 9235253, -3954054, -288300, -1487132,
- -4669703, 8675834, 760209, -1567126, -1460289, -4163434, 2144799, -12934294, -2189360, -957241,
- 1360968, -1437203, -7565585, 2474975, -33823, 2509335, -1509144, 1861332, 180389, -1344325,
- 6112812, -668941, 769873, 109522, -3546569, -1183800, 6647536, 3517041, -2417530, -181999,
- 1491964, -3179887, -2615098, -4753455, -2037962, 1211718, -1246614, 2362232, -1282585, 1746978,
- -2983392, -3262565, -727460, 280784, 252866, -380641, -743566, 1405528, 431644, -1231045,
- 882616, -1604707, 151398, -1082869, -2223719, -662499,
- },
- {
- 625455, 48310328, 9256191, -1928977, 1337346, -366683, -2673617, -2811593, -6248104, -4338454,
- -8423505, 10036802, -918049, 6790880, 8885214, 18519898, 4054986, -8644695, -594316, 1724429,
- 11790222, -10586558, 12234214, -9982041, -9119826, 11607686, 968515, -6853157, -1896228, -5934034,
- -1799591, 4685273, 10813654, 6478422, -7649337, -3042448, 4359929, 71941, 4691178, -161598,
- 4558034, -6802155, -2277943, 2990371, -3220689, -2022930, 2463701, -639413, 3599720, -4482872,
- -3412889, -5885179, -3378529, -2369211, 3679713, -1551557, 2025614, 1213328, 5983427, 2325725,
- 105764, 858457, -1155346, -1196148, 3432216, -3812857, -3081102, -317828, -2177549, 2186675,
- -1744831, -166430, -2217814, -1573032, 3984656, 238371, -3316252, 505732, 1068910, -765041,
- 1811939, -2006287, -2485176, -248571, 2008971, 1562831, 945967, -84826, 1387811, 474057,
- -760209, 2170569, -1474784, -460635, 1689533, 1296006,
- },
- {
- -16055125, -47720844, 3505230, -12955232, 4374961, 5682779, -31148176, -16742856, -1244467, 1901060,
- 2971581, -5978595, 118112, 23918672, 12112345, -12479027, 13921600, -10321343, 5930276, 7831873,
- -9986873, 2959769, 3678640, -8603356, -1138166, -2445447, -5885716, 2295123, 2639258, -15904801,
- -3160559, 644782, -4813585, 4731980, -11856794, 1968169, -1458678, -6800007, 3504693, 833761,
- 4599910, 1229434, 5967320, 3412889, -8986682, -2317672, 3929895, 7124814, -3071439, -1066763,
- 8016020, -4329864, 3422552, -1370095, -5934571, 293132, -6153615, -692027, 5964636, 465467,
- -118648, -143345, 547071, 6040335, -918586, -1915555, -2654290, -2753611, -7895761, 3118146,
- -583042, 4703526, 865436, -346819, 5384815, -329102, 1955284, -6084358, -5193153, 778463,
- -1569274, 785979, -1028108, -185220, -1872606, 550830, -323733, 2230699, 2153926, 987306,
- -2501819, -896574, -3578245, -44560, -1298691, 814433,
- },
- {
- 1790465, 54135380, -24278376, 2097555, 4439386, 1159641, 5361193, 5349919, 3184182, -576063,
- 5731634, -4252018, -4016331, 1878511, 9817758, -10464151, 12131672, 20866024, 8737574, 1200443,
- -14742475, -6586333, 7019051, 3886409, 1879048, -9703405, -3529926, 7322919, 7425462, 12523588,
- -9199283, -3165928, 2042257, 3442416, -3217468, -8986682, 6036040, 3204046, 917512, -1253057,
- -6197638, 444529, 3234110, -9257802, 235149, -1672890, -1640678, -638876, 521839, 416075,
- -6627135, 2608656, 1139240, 1905355, 2482491, 7021198, -5504538, 2663417, -2258616, -2446521,
- -5114769, -6791954, -3102577, 2029372, -700617, -1851668, -2200097, 231391, -670552, 2830384,
- 2439005, -4566087, -697395, 1711008, -1578401, 569620, 1166621, 2037962, 1307818, 1910724,
- 1040456, -1339493, 1380832, 1107565, -358093, 4998268, -1118302, -2023467, 1513439, -2030446,
- 537945, 1358820, -3381213, 418222, -2208687, -93952,
- },
- {
- -12835510, -73173360, 31595390, -12801150, -17647484, 3082176, -11307575, -7854422, 4041027, 5192616,
- -10983305, 1617055, -14831059, 18084496, 25387014, -2880849, 5995775, 14552423, -7656853, 8231305,
- -1437203, -1604707, -1881196, 12800613, 7148973, 3057480, -4752918, 5818070, 2396055, 4053376,
- -14559939, -6831146, 4840965, 4958540, 9179419, -13558138, 5390721, -689879, -3376381, -7240241,
- -3234647, 3272228, 2545842, 318364, 7863012, -1054415, 7120519, 2469606, -881542, 6884296,
- -1977296, -5347771, 1012002, -1912334, 1934346, 1365263, -1488743, -3130494, -3708168, 5819681,
- -164819, 2258079, 1013612, -5020280, 4475356, -1373316, -2010045, -4944044, 447750, 2231773,
- 3221, 2180770, -911607, -168577, -4113505, 1851131, -765578, -730144, 2864206, 2034204,
- -2283312, 1116155, -3223910, -188442, 999117, -234613, 1263794, 885300, -801011, -2587718,
- 1246614, 1933809, 4360466, 301721, 875636, -1383516,
- },
- },
- {
- {
- -662499, -64932388, 7669738, -290447, -3830037, 3348464, -2785286, 4898410, 6309307, -1954210,
- 5632850, -2968359, -5960341, 376347, -9329743, 13889387, 20087562, 1047435, 2226404, -2035278,
- 12962211, -14861124, -2117956, 8574902, 5250061, -23401666, 423054, 2587181, 8535711, 7906498,
- -55835, 1084479, -6320045, -5865315, 3019362, 575526, 2036888, 8313983, -3562139, -117038,
- 3400004, -4591320, 9065065, -7846905, 2573759, 2435247, -3803731, 3346853, 3331284, 2353642,
- -1716913, -934692, -389768, -4317516, 2981244, -781147, -5130339, -1245541, 1882806, -545998,
- 3819837, -2314987, 2177012, 2091112, -351114, 3592740, -335007, 2014877, -2019708, 498753,
- -912681, 3758, 322659, -634581, 149787, 2302103, -418759, -651761, -1323924, 748935,
- -1366873, 2236067, 616865, 651224, -803159, -1212791, -1860258, 1081795, -1930588, 410706,
- 2818036, 716186, -133144, 884226, -367757, 184684,
- },
- {
- -6640557, 95624760, 43958452, -67384280, -27935542, -3250217, 1345935, -19187230, -9822053, 11256572,
- 4199941, 8225399, -8769249, 324807, 1684164, 3704409, -6099391, -7397008, -9121974, -10370735,
- -6607271, 504659, 1254667, 8549669, -10669773, -2051921, 8790724, 5003100, 1018444, 5028870,
- -478352, -491237, 3158949, 5176510, 6694781, 5317170, 625992, 1897839, 579821, -1711545,
- 959388, -7274064, 3504693, -7607998, 1307281, -2287070, 1787780, 1564979, 362925, -4677757,
- 2623688, -7109782, -2684, -718870, 6264210, -2358474, -1427003, 3060164, 1069447, 1718524,
- 4748087, -162135, -335544, 2342905, 213138, -3383897, -2246805, 1059783, -440234, -1573569,
- 4251481, 1810866, 1559610, 219043, -1328756, -675384, 240518, -2390149, -2421825, 3313567,
- 90194, -269509, 374736, -1041530, 1655173, -1212255, -2301029, 1652489, -883690, -380641,
- 594853, -222801, 1174137, -1036161, -37581, -1126355,
- },
- {
- 908922, 80654656, -27680528, -44707924, 22502408, 6215355, 5657546, -1499481, -5122822, -3442416,
- 2539400, -13540421, -6573985, -1889786, 3048353, 7215545, -2147, 6160057, -9139154, -8580271,
- 1429687, 6131603, -9849971, -6545530, 13735305, -1809255, 4574140, 2089502, -3266860, -9167071,
- 4320200, 7064685, 7739531, -10641318, -4213900, 3243774, -6105296, 3878356, 8114804, -5254356,
- 3323231, 5328981, 10524817, -2076080, -9798968, -731755, -2447595, -3113851, -2233383, 3152506,
- -2855080, -8694088, -2479270, 856846, -4198868, 2843805, -1298691, 3518115, 894964, 4923643,
- 27917, 2005750, -2109366, 3325379, -1708860, -1679332, 137976, -1993939, -2603287, -288837,
- -823560, -2808909, 2073396, -1206349, -2708514, 988916, -2638721, -339839, -3005403, -2174327,
- 188442, -704375, -102005, -1428614, -817118, -646393, -1111860, -1375463, -144955, -956167,
- 914828, 686121, -550830, 218506, -278099, 202400,
- },
- {
- -286689, -3245385, -21391084, 1152125, 4184372, 852014, -1516660, 1686312, -2183991, -3704946,
- 479426, -17824652, 1846836, -11637214, -7487202, 114354, -16777216, -12797929, -14092861, -7500624,
- -15687368, -860604, -569083, 378494, 7900056, -14496, -11927661, 6531035, 12551505, -3892851,
- 4577362, 1763084, 3606699, 5465883, 2053531, -1912871, -3224447, -5320391, 733366, -1407676,
- -5309117, 4134443, -12079059, 1351304, -5622112, -251792, -135828, -9101573, 9460739, 4507568,
- -6687801, 3048353, 821413, 5954436, -3912715, -915902, 3614752, -4032438, 4758287, 63351,
- -792958, -743029, 1176821, -838592, 2642479, -3047279, -1314260, 2649995, 375810, 2434710,
- -908386, -935229, -1609539, 647466, -4196720, 461709, 1503775, -1745367, 714038, -2778844,
- -2365453, -2119566, -256624, 522912, -195958, 517007, -1437740, 963146, -364535, -647466,
- -255014, 875100, 182536, -154619, 3091303, 642635,
- },
- {
- 3016678, -94094680, 30355756, 31911608, -4177930, -20401, 1693828, 564251, -659814, -5508833,
- 12683575, 12123619, 4476967, 5555540, 710817, 4149475, 15136002, -2412698, -6769406, -1689533,
- 7494181, -1678795, 13495324, -9164386, -5170067, 1002875, 3784940, 2766496, 6347962, 9150428,
- 7697119, 9001178, -1690607, 13979582, 2131915, -2341831, -4345970, -9140764, 902480, -3908420,
- -10445360, -3663070, -6359236, 450972, -2655364, -298500, -2396055, 2799245, 2678986, -2272575,
- -3339874, -2935610, 4546760, -1457605, 2947421, 2895882, -1249836, -1088237, -2375654, 1129576,
- 774705, -2687576, -1945620, 2640331, 1973538, 4302484, -1306207, 1401233, -339302, -2753074,
- 335544, -1292785, -1516660, -3391414, 1542430, -2130841, 761283, -1165547, -1126892, 605054,
- 790811, 672162, -1618129, -1830730, 1954747, -1389959, -200790, 1348620, -1674500, -540092,
- -471910, 3493956, -288837, -372052, 120796, -798864,
- },
- {
- 2073396, 774705, 2895882, 8302172, -6855842, 824634, -952409, -2056753, -6541235, -1027571,
- -4813048, -2471754, 11614128, 1016834, 1036161, 16001438, -19347754, -8409546, -18457622, 124017,
- -6037114, -1119913, 3572876, 529892, -9993852, 8157754, 1741609, -1109712, -7198902, 256624,
- 1188095, -1683627, 3739306, -3611531, 3943854, -1704565, 2732673, -7350837, 3710852, -6492917,
- -325344, -4000225, 3843459, 2139431, 2509335, -18790, 3452617, -4466766, 2497524, 5767068,
- 5005248, -1672353, 6129992, -5499706, -586800, -1289027, -2239289, -908386, 2660732, -5968931,
- 3035468, 2588255, 1896765, 1525787, 1648194, 323196, 158914, -3038689, -1435056, 967441,
- -1457605, 1944010, -1417339, 3788161, 741956, 479963, 922344, -1406602, 527744, -83215,
- -2011118, 698469, 768799, -1994476, 621697, -2113124, -1634772, 69256, 342524, 868657,
- -1644973, -1799591, -144955, 149787, -45634, -1057099,
- },
- {
- 8689793, -95684896, 12219719, 50826108, -216359, -3959960, -494995, -11251741, -12214350, 915902,
- -1808181, 9381819, -11586748, 1261110, -8222178, -542240, -5900212, 4714801, -14939507, -2543158,
- 7460895, -2074469, -5346161, 11442330, -2584497, -2303713, 608275, 3959423, 4810364, -2958159,
- 8109972, 4360466, 8376797, 4217121, -4427038, -2560338, 4650376, -698469, -2774549, 4067334,
- -477815, 9228811, -5030481, -2564632, -3776350, -875636, 752693, -2881386, -2498597, 2172180,
- 1207423, -5100811, 2222109, -4524748, -2865817, -5486284, 3092913, 368293, 601295, -960462,
- 1791001, 3073049, -711891, -813896, -1001801, -1071058, 3732327, -584116, -4312684, 3952981,
- -869194, 876173, 956704, -41876, -906238, 2322504, 2311766, 1468342, -1493038, -509491,
- -2302639, -1331440, -1582696, 2635499, -2181844, 1335735, 132607, -641024, 204548, -551366,
- -179315, -1162326, 2100239, 724239, -1749125, 1372242,
- },
- {
- 3265786, 42392400, -8279623, 14108968, -8647917, 355409, -4908074, 1193464, 159451, -527744,
- 1508070, -1614371, -4278861, 9407589, 14974940, -14009110, -6873022, -3308736, -9102646, -10564546,
- 2062658, 1555315, 1433982, -1979980, 7307350, -13751412, 4824859, 7066295, -12757127, -8887361,
- -12624519, 3143379, 3335042, 5545340, -1846299, -1975148, 872415, 7164006, 3840238, 389231,
- -2623151, -1509681, 2289755, -2404108, 5284958, -354872, 1494649, 4991826, 580894, 3702799,
- 1447404, 4311611, -8805220, 4705137, 2395518, -2625836, 510027, 447213, -2333241, 4778688,
- -3787624, -2197413, -10737, -330176, 2178622, -2467459, 1437203, 269509, -1571958, -614180,
- 1064615, -644782, 1483374, -2148558, -451508, 894427, -242129, -500901, 2153926, -363998,
- 1448478, -3572876, -784368, -458488, -364535, 390842, -1021129, 630286, 1059246, 604517,
- 1700270, -485868, 550293, -1198296, -3045132, -1598802,
- },
- {
- 7540352, -106754096, 8996346, 50601156, -4881767, 2924336, -3114388, 5590437, 1291711, 4616553,
- -5315559, 11721503, -1192927, -848793, 7248831, 8561480, 173946, 3652870, 926639, 4522064,
- -2558727, 230854, -692564, -2451353, -4239670, 3635153, 930934, -6009733, -3781182, -15315317,
- 53150, 4915590, -4389994, 2024003, -650151, 5349919, 1362042, 8836358, 2045478, 6285685,
- 1095217, 3850438, -889058, 2878702, 5777268, -4187056, -770410, 4191888, -1494649, 5549098,
- 3728032, -869194, 2837363, 3454228, -3132105, 250182, -612033, 330176, 312996, 568009,
- -925565, -2758443, -877247, -41339, -4212289, -3419331, 2521146, 276489, -1254131, -500364,
- 2173790, 3741454, -733366, -3453154, -1257889, -1464584, 479426, 157303, 584652, -2767033,
- 554588, 2725157, 3091303, -2447595, -870268, -70330, 948114, 1606855, 918586, 473520,
- -825707, 435402, 1796370, 1506997, -1081795, 1381369,
- },
- {
- -639413, 40507984, -27567248, -5382668, 3020973, 3855270, 10270877, 13571560, -2013266, -7366406,
- -7025493, -1464584, 4720169, -13087839, 7539278, 3480534, 2849711, -1482301, 14439680, 13213467,
- 2193118, -1934883, 2566780, -10027675, 1458678, -8194261, 478889, 7201587, -3462818, 4494684,
- 1268626, 321586, 13657996, -1788854, 5287105, -5961952, 1381369, 5193689, 11708081, -11974369,
- -1897839, 1773822, -10162966, -3047279, -6003291, 5577552, 3557307, -470299, 1900523, 2058363,
- -5714991, -1338419, 4628364, 3127810, -6639483, -4073240, -7001871, -3019362, -642098, 90731,
- -5906117, -894427, 1427540, -2662880, -4438849, -183610, 686121, 4336307, 3724274, 3790846,
- 280784, -925029, -1781338, 1373853, -1664300, 1237488, -1155346, 650151, 2432562, 378494,
- 1443646, -2225867, -3781182, 12885, -144955, 1256278, 1580011, 609885, -1737851, 1056025,
- -982474, 86436, -849330, -1311039, 2741800, -373125,
- },
- {
- -8597451, -40403296, 20844550, 2339147, -9700184, 9745818, -24729884, -34907884, 5884105, 15444166,
- 14906758, -14848239, -17661980, -16527034, 23432804, 4125316, -2840047, 1855963, -1917166, 4634807,
- 1439351, 3825742, -4713727, -4532264, 6243272, -288300, 1139777, 11036455, 5695664, 8812199,
- -6324876, -750546, -10544145, 5378910, 2182380, -7941932, 5059472, -3140695, -2295660, 1629403,
- -3245922, 7529615, -3748433, -2819109, 4064650, 2794950, 10947335, -7517804, 1040456, 6531035,
- 4683125, 783295, -3391951, 4203699, -1364726, 1533840, -1986422, 7053947, -1574106, -5809480,
- 3278134, 319975, 2812667, 2333778, -2381023, -2444910, 3324305, 2882460, -1096290, 121870,
- -193274, -2780455, 1937567, 2083059, 711891, 398358, -2401961, 2011118, -1272384, 1612223,
- -1916092, -2756832, -2102923, -802085, 648003, -457951, -847182, 721018, -564251, -1814087,
- 1899449, -930934, 845035, 281320, 1258425, 577136,
- },
- {
- -168577, 6542309, -17686138, -3067144, 2669859, 2406792, -8303246, -289910, -920734, -1369021,
- -15096810, 5770826, -9986336, -9225590, 1140314, 2236067, -3801046, -628139, 16115791, 5768141,
- 3086471, -22701050, 4592394, -10666551, -9245454, 513785, -6685654, -16783658, -9506910, 7206419,
- 4134980, 1377074, 6178848, 8217883, 2825552, 3467649, -4177930, -8574365, 3265786, -4019553,
- 7209640, 636729, 3208878, 3985193, 845035, -589484, -767189, 2992519, 7982197, -1963874,
- 5147519, -2641942, -438087, -2667175, 4220879, -2037425, -835371, -340913, 1438277, 1102733,
- 624918, -1580011, -2228014, -776852, 2417530, -89121, -1036698, -1389959, -3674882, 1039919,
- 180389, 1711545, 1338419, 49929, 1612760, 1619740, -865973, -267362, 747324, -880468,
- 64425, -3772592, -2964601, -1838246, -235686, -656056, 1153199, 970126, 2782602, -284005,
- -2280628, 2188823, -615791, -876710, 941135, 278636,
- },
- {
- 15192910, -59070832, -29281476, -840203, 3952444, 10617696, -16786342, -6783364, 1607928, 5341329,
- 6103149, -5601174, -2676838, 10809896, -1674500, -21937620, 21437792, 2447595, 17395154, 12678743,
- -11702175, 2361695, 486405, -1523640, 9337259, 816581, 356482, 3365644, 5931350, -7576859,
- 5051956, 10484015, -5172215, -1830730, -12069395, 5328444, -2872796, -7460358, 3626026, -4972499,
- 4716411, 2142115, 763967, -2492155, -8227547, -3005940, -1817845, -2059974, -10119480, -2284923,
- 9308268, -31675, 7172596, -1063541, -2536715, 1329829, -5385889, 138513, -620623, -5623186,
- 202400, -1345935, -4912369, 1625645, -3333968, -3212099, -534187, 1320166, -5463199, 1239635,
- -2915746, 2382633, 1282585, -492848, -377957, -5160940, 2677912, -3238942, -2377265, 1597728,
- -1523640, -983011, -1446330, 1669132, 1398549, 545461, -1477469, 483721, -715649, 237297,
- -2286533, -1400696, -2065342, 2529736, 1265942, 1783485,
- },
- {
- -2010582, 56491704, -16152298, -2345052, 610422, 2732136, 2308008, 115427, 7061463, 1245541,
- 5641977, -3120294, 9562208, -4754529, -24046448, -18360986, -2764348, 2026151, 1846836, 13350906,
- 3794604, -2226404, 4789426, 10214506, 1214939, -16401943, -4060892, -3172907, 11661910, 18160732,
- -11836930, -8546448, -1536525, -559420, -3557844, -5512591, -409633, -797790, 4587562, 5383742,
- -7901666, -2444910, 1956895, -8943196, -833761, -4939213, 122943, 4210679, 2034204, -2965675,
- -7797513, 6308770, 1430224, 3352222, 1400696, 6366752, -6222334, 3159485, -2348273, -626528,
- 4828080, 2229625, -1460826, 4748087, 1457605, -586263, -1465121, 1025423, -501437, -326418,
- 1117228, -3574487, -2228551, -82141, 441845, 3514357, 1414655, 484794, -1459752, 300648,
- 2761127, 155693, 1538135, -755377, -2900714, 2127083, -814970, 419833, 2999498, -1970853,
- 803696, 2177549, -1396938, 646929, 4295, 54761,
- },
- {
- 12208445, -65768836, 1174137, -18540300, -14968498, 4679904, -8137890, -7351374, 8696235, 9911174,
- 3506841, 5859409, -14815490, 12607340, 8208756, -5063767, 7303592, 10403485, -18598282, -1811939,
- -1394254, -2442763, -11330124, 14741402, 6891812, 1551557, -8646843, 3245922, 2041720, 11556146,
- -9178882, -14909979, -7157026, -3761318, 11649562, -8665633, 2913062, -1293859, 7900056, 3256659,
- -2168959, 7372848, 2594697, -1396401, 6007586, -4844723, -1484985, 2705293, 4361003, 11672647,
- 1721208, -5006858, -286152, -3249143, 2550137, 2184528, 326954, 2944737, 143881, 6580427,
- -1665911, -681826, 41339, -4786741, 4081830, -2648384, -3003793, -5325223, -524523, -876710,
- -2476586, 372588, 1378685, 3742527, -1757715, 1141388, -3280818, 1462436, 5904507, 2151242,
- -4500589, 1839320, 189515, -933082, -1341104, -1214939, 1140314, 2266132, -519691, -3959423,
- 639413, 1634235, 3054796, -1356673, -249108, 18254,
- },
- },
- {
- {
- -725850, -48672180, -10793253, 26825828, -13721884, -1583232, -677531, 6623914, 5341866, 5925981,
- -2944200, -2213519, -6088653, -10966662, -2985002, 16268262, 4800163, 4699768, -2437931, 8260833,
- 11633456, -10618233, -9186935, 4762582, -2639794, -9334038, -3203509, 5481452, 3723737, 8752606,
- 7130720, -6005975, 1762547, -11996917, -917512, 2500208, 11123428, 2393908, -1222455, -751619,
- -377957, -3962107, 3896072, 2301029, -197569, -3842385, 1840394, 1524713, -540629, 454193,
- 375810, 3157875, -3513283, 707059, -3211025, -1027034, -947040, -2593087, 583042, 1919314,
- 144955, 2588255, 1866163, -542777, 4352413, 2139431, 243203, 1547799, -1490891, 606127,
- 619012, -1493575, 452045, 1024350, -2436320, 1776506, 312459, 230854, -596464, -818191,
- 1304596, 1162326, 208306, 1627793, -1481227, -245350, -2188823, -798327, -112743, 69793,
- 1497870, 336618, 145492, 1924682, -2147, 144955,
- },
- {
- 5100274, 149795040, -29055990, -63755568, -29988536, -2662343, -10143639, -12006581, 4735202, -779537,
- 10866267, 6054830, -7879655, -2295660, 5372467, 255551, 5743445, -15037754, -14165876, 618475,
- -7965017, 1544578, 202937, -3100967, -2526515, 333934, 3351148, -615254, 1379758, 12126303,
- -3883187, 456340, 9999758, 2692945, 6507413, 5888937, -1156420, -3780108, 3645354, 5141613,
- -3764002, -3850438, -13422, -5261335, -831076, -1282048, 2334852, 3155190, -2570001, -2649458,
- -2503966, -1287953, -153545, 1460289, 611496, -2813741, 3837017, -1289564, -1014686, 6967511,
- 3180423, -489089, 2309082, -2712809, 1338956, -1789391, -1865626, -1347009, -200253, -1495186,
- 4573604, 1886028, 1316944, -709207, -974958, 1544578, -1122597, -2346126, 317828, -1277216,
- 301721, 914291, -862752, 940598, -417149, -933082, -265214, 735513, -8053, -852014,
- -530965, 426812, -886911, 317828, -226023, -71941,
- },
- {
- -2479807, -3910568, 39440148, -24020142, 5921686, 6106370, 8356396, -4100620, -7729331, 9629317,
- -11310796, -2756295, -4404489, -1842004, 7915088, -1399086, 7400229, -5815923, -233002, -1549410,
- -2085207, -5150203, -6659884, 4487167, 3277597, 2563022, 3126736, 2254321, -2297271, -1773822,
- 3769908, 3102577, 538482, -3579318, -2123325, 4775467, -7438347, -508417, 3630858, 5240934,
- -1701881, 3633542, 9066676, 784905, -6405944, -3636764, -5368172, 924492, -1045288, 4706211,
- -8240432, -4483409, -2254858, -2760590, 1611, 1130113, 580357, -428423, -831076, 5267778,
- 1974611, 2340757, -1652489, -1528472, 983548, -3102040, 238908, 605590, -1825361, -88047,
- -1716913, -15569, -729608, -2265595, -1075352, -1272384, -2721936, -612033, -2168422, -1382980,
- 127238, -357556, -758599, -396211, 144955, -1610076, -1403381, -2218888, 238371, 56371,
- 23622, -462783, -222801, 1406602, 289373, -944356,
- },
- {
- -1188632, -35694400, 3466039, 7341173, -1184337, -242666, -588411, 1957431, 2021319, -10638634,
- 1178969, -12371116, -7348689, -5335960, 1386738, -13968307, -7824894, -9147207, -14609331, -7614440,
- -13157095, -6266358, 5170067, 2001455, 530428, -6123550, -769336, 7159174, 3910031, 2072322,
- 1786706, 2792266, 1537598, 8995272, 292595, 2190970, 3781719, -7743826, -2651069, -6949794,
- -3151432, 4958003, -6959458, -2036888, 1216013, -3244848, -4015258, -1298691, 1078037, 4286914,
- -366146, 874563, -2534031, 4778688, 2245731, -719407, -1550483, -24159, 1198296, 2436857,
- 800475, -336618, -440234, 212064, 1197222, -2119030, -1278827, 2724620, 2183991, -457951,
- 520765, -1236951, -914291, 493384, -3974992, -1613834, 1358820, -380641, 411243, -6979,
- -4328790, -1895691, 580894, -432181, 148713, 993748, -877247, -906238, 315143, -191663,
- 1056562, -651224, 1044214, 1826435, 1672353, 450972,
- },
- {
- -5354214, -58648852, 6532646, 29533806, 2025077, 1027034, -1179505, 2003602, -6952479, 8893267,
- 6140730, 10189273, 5861020, 5330592, 2727304, 6584185, 14669461, -4247723, 10062035, -6522445,
- -1665374, 4252018, 4592394, -8844411, -1303523, 2014877, 7424388, -351650, 613107, 11594801,
- 11239929, -3056943, 9444633, 9360881, 3499862, -2199560, -1073205, -7837779, -1095217, -5197448,
- -10150618, -9916006, -4808753, -2424509, -113280, 1954210, -3722663, 4147328, 4648229, -2521146,
- -3386045, -1400159, 3160022, -1145683, 5487358, -1939178, 1072668, -2403571, -4514548, 1234803,
- -614180, -1431298, 2931852, 257161, 3560528, -1512902, 2404108, 2596845, -2118493, -1192927,
- -373662, -1992865, -3197066, 37044, -1805497, -789200, 757525, 491237, 98784, -596464,
- 1089848, 183610, -1320166, -269509, 1675574, -70330, -800475, -583579, -948651, -1339493,
- 745714, 373662, -187905, 1850057, -1240709, -295279,
- },
- {
- -64961, 13326210, 8554501, 3414499, -3622268, -1842541, 645319, -1444720, -1527935, -4794794,
- -5592585, -4515085, 6235219, -10259066, 19351512, 1090922, -2616172, -16336982, -6642167, -6743636,
- -7070053, 4665945, 2265595, -5230734, -6806987, 1519345, 9441949, -4699231, -10122701, 2287607,
- -5947993, 290984, -2762738, -3689377, 5197448, -2049236, 333934, -3293166, -2495913, 1166621,
- -3099356, -2571612, 2593087, 2835215, 1730335, 5167383, -108985, -1072131, 365072, 4817343,
- 4013647, 1774895, 3578245, -6045704, -196495, -1538135, 146029, -641024, 209917, -1870995,
- 1446330, 1189169, 3040300, 391916, 1062468, 229244, 90194, -1807108, -828392, -3644817,
- 2194728, 565325, 122943, 2769180, 2228551, 468688, -363462, 689879, 284005, -1971390,
- 920734, -838056, -596464, 212064, -1029718, -1625108, -891743, -1262720, 1610613, -16106,
- -1644436, -934155, 284542, -808528, -1243930, -301721,
- },
- {
- -12358768, -38145216, -12065637, 43195560, 1193464, -99858, 3294777, -12123619, -19227494, 2378875,
- 2513630, 4767951, 2540473, -9259413, -12354473, 73014, -11315091, 8466454, -3008625, -12589623,
- 4073240, 7532836, 2735894, -7240778, 24159, -344671, -1437203, 1081795, 885300, 1151588,
- 4255239, 8296803, 3755412, 10211822, -5257040, 3222836, -2576444, 1473711, -883153, 6328098,
- 4582193, 1998770, 1848447, -8438537, -2130304, -741419, -1290101, 1347546, -1810866, 2042794,
- -2656974, -1796907, 1294933, -6358699, -1963337, -62814, 1977296, -506269, 2217277, -449361,
- 2375117, 2478196, 1440962, -1826435, -2113661, -665720, 2150168, -370441, -399969, 2179696,
- -704912, -3214783, 219043, 1916629, 2178622, -263067, 3639985, -2702071, 558883, 67646,
- -598611, -1998234, -904091, 443455, -1145146, 750009, -749472, 286152, -1016834, 854162,
- -1229434, -475668, 1348620, -449898, -312459, 1349694,
- },
- {
- 1238561, 30175366, 25905096, -3987877, 4176856, -4817343, -3788161, -826244, 3320010, 110595,
- -2166274, 1556926, 3608310, -1883880, 4540854, -8336532, -3833795, -3889630, -13196287, -8842264,
- 1562831, -1184874, 6519224, -4391067, 1252520, -5188858, 4042638, -142808, -4101694, -3058554,
- -14588930, 2746095, 1549946, 6311992, -2285996, 150324, 6063957, -387621, 9984188, -977642,
- -6681896, 3025268, 2814814, 2847027, -1229971, 7775502, 1165010, 1881196, 1966021, -195421,
- 342524, 4815732, -5651640, 3707631, -589484, -3302830, 4036196, -1801739, 289373, 3421478,
- -703301, -1408212, -629213, 1282585, -559420, -1481764, -2689187, 2961917, -967441, 1091995,
- 505196, -269509, 1708323, -3054796, -767725, -24159, -13959, 822486, 1451162, -374736,
- -1065152, -1286343, -887448, 800475, -2423972, -888521, 513249, -169114, 1096290, 562104,
- 1214402, -170725, -355945, -1162862, -1199907, -2378338,
- },
- {
- -11447698, -61982820, -9947681, 39128764, 1698123, 6791954, -4288525, 3262028, 11485816, 2060511,
- 15129022, -6891275, 1014149, -4796405, 17741974, -2677375, -5918465, 10018011, 4023311, 5776731,
- 2807298, -4641786, -4187593, 274341, -1884954, 504659, -589484, -1451162, -12954158, -11664594,
- -1246614, 3109556, -1453310, 3715147, 4031901, 2843268, -884226, 5739687, 5359583, -572841,
- 4314832, 4454418, -2040110, 6080600, 5569499, -1721208, -217970, -618475, 1321239, 1197222,
- 6309844, -644782, 2713346, -1730335, 3474629, -3450469, 2308008, 329102, 988379, -162672,
- -3453691, -62814, -675384, 97174, -4987531, -3959423, 2829847, 2030446, -763430, -91805,
- 3344169, -565862, -560493, -510564, -2255395, 752156, -508954, -868657, 583042, -591095,
- -1292248, 1867774, 614717, -796180, -413391, -530428, 677531, 1848983, -141197, 265214,
- -104153, -290447, 2135673, 2140504, -222801, -594316,
- },
- {
- -1632088, 3269544, -6765111, -927176, 13701483, 7824357, -9382356, 6000606, 10759430, -4799626,
- -9515500, 1510755, -4336307, 5637682, -3206730, 4544076, 8188892, -6331856, 13506598, 27921046,
- -14747307, 4921496, 2047089, -3402688, -5739687, -2713883, 1934883, 226023, 679142, -2099702,
- 6088653, 6446209, 1385664, 3408594, 322659, -2607045, -645319, 2818572, 7445326, -3747896,
- 301185, -5545340, 562104, -10596221, 492311, 3093450, 3614215, -4037269, -57445, -1182727,
- -9664, 376883, 2843805, 628676, -1737851, -9047885, -5255966, -5665062, 135291, -2295123,
- -9480067, 1834488, 1069984, -3859565, -4287451, -2428804, 2369211, 5868536, -396748, 5098663,
- -402116, -166430, -1552631, -435402, 992674, 1649268, -2182380, 2406792, -664646, -1715839,
- 389768, -1493575, -1900523, 843961, -238908, 1041530, 1847373, -476205, 1277216, -503585,
- -1692217, 1105954, -1591285, -632971, 1221918, 416075,
- },
- {
- 10834055, -41480796, 2058900, 4400194, 3070365, -9868224, -106300, -27536646, -5497558, 14898168,
- 5283347, -4325032, -22435836, -16905528, 7119982, 7923678, -5319317, 1964411, 2163590, -3255585,
- 10553808, -815507, -2404108, -6944962, 377420, 5004711, 8217883, 6654515, -846109, 9241696,
- 3238405, -9485972, -5095442, 5458904, -836982, -8519068, 2743410, -107911, -722628, 40802,
- 4855461, -2209761, -45097, 550830, -181462, 3371549, 4625143, 1657857, 2697240, 6002754,
- 1421097, 4206384, -2226941, 5281736, -4124242, 1977833, -3602404, 8106214, -850940, -4525822,
- -558883, 5864778, -518080, 1840394, -2169495, 282931, -1944547, 2429341, 1447404, -955630,
- -72478, -708133, 620623, 2294586, 1913408, -134218, -706522, -993211, 470836, 170188,
- -154619, -3273839, -1642288, -1301375, 210990, -497142, 266288, -224412, -292595, -1928977,
- 1198296, -920197, 2117419, 1063541, 1002875, 1220845,
- },
- {
- -1509681, -20153060, -925029, -5461051, 3854196, 2039573, -3556770, -1976222, 1312113, -3612604,
- 1090385, -9284109, -17717, -29016262, 8636642, -5722507, -4862440, 260919, 18676666, 10168872,
- -2020245, -12007655, -3491809, -6107981, -5957120, -9177271, -4266513, -5829881, -17689360, 8898098,
- 17382806, -6800007, -1216013, 11698954, 2937758, 3628711, -3201898, -3190087, -2185065, -4063039,
- 5122822, 1847373, 9550397, -3180423, 2680597, -5130876, 2200634, 9214315, 732829, -4314295,
- 12349105, -5653788, 1680943, -1857037, 1001264, 2377801, -1846836, -218506, -926639, 4619238,
- -1791538, -617402, -1027571, 1127429, -3369939, 897111, -1118839, 759672, -3639985, -69793,
- 1104344, 1897302, 286689, -729071, 1091459, 3140695, 1397475, 950798, -2138357, -2115272,
- 1403917, -3547643, -2172717, -2687039, 304943, -1133335, 1770063, -398895, 2714419, -329102,
- -834297, -135828, 2102923, -376883, -1906966, 684510,
- },
- {
- -16718160, -28388124, -19813758, -9964324, 10300942, -7052337, 1819456, 5461588, -3864397, 38118,
- -2488934, 4245575, 11853573, -4319664, -14510010, -12338904, 19716048, 4768488, 21288006, 6952479,
- -5173288, -1361505, -2808372, 3682935, 9065065, -5632313, 716723, 3874597, 1760937, 4216048,
- 5408438, 1861332, -8040716, -3058017, -4155381, 10984916, -10369662, -2935073, 2026151, -2184528,
- 795106, -2035815, 1541356, -4848481, -164819, -4992900, -2046552, -4431333, -6883759, 452582,
- 6703370, 1963874, 1199907, -132070, 1492501, -1239098, -3278134, -13422, -2838974, -7204271,
- 1186485, -1268626, -3070365, -3227668, -5212480, 729071, 1508070, -274341, -1865090, -1347546,
- -168041, -2703145, 2729452, -777926, -2782065, -2544768, 2185065, -3679176, 17717, -1392106,
- -801548, -1485522, 984084, 779537, 1449552, -654983, -296353, 328028, -1637993, 282931,
- -1072131, -1711008, 273804, 1578937, 1450088, 415538,
- },
- {
- 217433, 34089156, 4236449, -8269423, -239981, 2646774, 6475737, -76236, 5583458, 4318053,
- 1474784, -1838783, 8329552, -10598369, -8379481, -5069135, -20876762, -5390721, 7157563, -3449396,
- 18472118, 4523138, -321049, 8735963, 4193499, -14663555, -2334852, -6984691, 11183021, 4397510,
- 3467112, -4950487, -2239289, -6298570, -802085, -5130876, 1351841, -1797444, -756451, 5411659,
- -3201361, -2108829, -2784213, -3899294, -1391569, -5665062, -1417876, 6965900, -916439, -638876,
- -2335389, 5360656, -2567317, 6496138, 2596308, 1962263, -5401995, 4653597, -2218888, 848793,
- 901406, 3874061, 2506650, 4053376, -743029, -248034, -29528, 2505040, -1136556, -1287953,
- 832687, -3089692, -2373506, -845572, 744640, 3797288, 2012729, 321586, -1181116, 649077,
- 1686848, 1038308, 333397, -2518462, -764504, -1279900, 1434519, -64425, 2800319, -1234266,
- 541703, 1171989, 1802813, -1018981, 220117, 634045,
- },
- {
- -13926431, -29716342, -10151692, -9612137, -5331128, -11691438, 114354, -4956929, 8257612, 2161979,
- 9905268, -9738838, 6841883, 22570054, -17868674, -2300492, 6801618, 6997576, -10536629, -576063,
- 1251983, 2158758, -8910983, 423591, 7636452, 2287070, -9026411, 2580739, -181999, 2688650,
- -1394791, -3969087, -6109054, -7231651, 1064615, 2155537, 315143, -379568, 6226092, 2674691,
- -3737695, 9513889, -1079647, 2480881, -2696703, -899259, 1310502, 762894, 3311957, 3675955,
- 5207648, -3169686, -2647847, 107374, -1742146, 730681, 3554086, 5539434, 1376537, 2234457,
- -384400, -3232500, -3176128, 2454574, 559956, -467615, -1414655, -5112085, -2656974, -1790465,
- -2806761, 1819992, 849867, 1885491, -1061394, 722091, -2576981, 4687957, 3009162, -983548,
- 669478, 542777, 1169842, -1270774, -3231963, 424665, 1351304, 357019, 1254667, -1819456,
- -632434, 1728724, 1893544, -1557463, -1347546, 25770,
- },
- },
- {
- {
- 131533, -7552700, 14386530, 34977140, -11138998, -2277943, 887448, -1216550, 649077, 2995740,
- -4364224, -9797894, -9903121, -4195646, 1085016, 5925981, -12258374, -5026723, -10474351, -2743947,
- 4755066, -8660802, -21897354, -6375342, 4516158, -351650, -170188, -1844152, -3439195, -201327,
- 5083094, -4329327, 3817152, -7746511, -578747, 1819456, 7969849, -422517, -2397129, -3354906,
- -1100049, -4184372, 3610994, 2085744, -749472, -6172405, -714575, 947577, 959925, 3790846,
- 2326799, 5484673, -2057826, -387621, -4485020, 2130304, 1481227, -4640712, -872952, 564251,
- -3209951, 862752, 2892124, 133144, 650688, -1934346, 231928, 2554432, 2144799, 1323924,
- 1547262, -2696703, -3663607, 1956358, -1540283, 869731, 2222109, 2193655, -1107028, 187368,
- 820339, -960462, 375273, 1963874, -260919, 1505923, -452045, -223338, 23622, 915365,
- 1961190, 1229434, 1383516, 1700807, -286689, -587337,
- },
- {
- -4088809, 157826096, -9466645, -56996364, -17453136, 4512400, 8425652, 13111998, 6182069, -16705275,
- 1282585, 19478214, 6270116, 2714956, -106300, -283468, 16580721, -6305549, -663036, 12566537,
- -1831267, 2389076, -5959267, -9595494, -4050691, -2542084, 8139500, -189515, -8486319, 10274636,
- -4834523, 825171, 9532143, -300111, -425202, -870268, 3626563, 7118372, 9954124, 5408975,
- -4281009, -3787624, 2837363, -1832877, -592706, -2653216, 1296543, 4421132, 3824669, -1447404,
- -1046361, 3507378, -1848447, -3595961, -2050310, -1387274, 1331977, -4565550, -4680978, 362388,
- -345208, -2026688, 1832340, -1450625, 2535105, -10737, 104153, -2961380, -1509681, -1216013,
- 3404835, 1069447, -572841, -2404645, -1444720, 2993055, -602906, -102005, 2282775, -2046552,
- -1269700, -255014, -548682, 809064, -731218, -301185, 565325, 1282585, 803696, -1056025,
- -705985, -76236, -1581622, 496606, 166430, 532576,
- },
- {
- 4485557, -65009700, -16127602, -1738925, 10189810, -2481954, 7635378, 740345, -2815351, 11502996,
- 2937221, 6869264, -1880122, 4619774, 12875775, 6712497, 11751031, -9690520, 2078764, 11697343,
- -26307, -2468533, 3440269, 9845139, 5765457, 2122251, -3097745, 3108483, 5717675, 523449,
- -6979, -220654, -235149, -5422396, -1858110, 7071127, -2443300, -1995549, 981937, 5520644,
- -1586454, -74625, 5204964, 2552284, -2886218, 5783711, 2991445, 1549946, -3204046, 3644817,
- -574452, 3489124, 2171643, -507880, 2996277, 2585570, -1209033, -2159832, -3526705, 1052804,
- 187905, 1411971, -2957622, -2146410, 2538863, -2130304, 1146756, 2458869, -1612223, -616865,
- 85362, 1117765, -1000191, -310311, -326418, -2748779, -2448131, 850404, 1981054, 2805688,
- 555661, -1085016, -301721, 316754, 2528125, 171799, -721555, -1450088, -556735, 327491,
- -935766, -1864553, -487479, 1873143, 458488, -2039573,
- },
- {
- 1698123, -36913096, -2229088, 9039832, 3253438, -772557, -1170379, -657130, 1636919, -10640245,
- -1473174, -7581691, -3842922, 1263257, 13833553, -2655901, 7264937, 3856344, 2218351, 660351,
- -8711267, -7933879, 5492190, 2432562, -5966784, -5489505, -4090956, -2390686, 2101313, -2070711,
- 2155000, 8024073, -18254, 6997039, 1315871, -999117, 6944962, -2829310, 360777, -2637110,
- -1354525, 7531762, -1216550, 1367410, 6078453, 860604, 631360, -682900, -4647692, -1647657,
- -1805497, -1665374, -4515621, 1991254, 1059246, -881542, -206695, 2035278, -585726, 3480534,
- 971736, 1136556, 1552094, -748398, 2129230, -1526861, -3812857, -244276, -1485522, -1308354,
- 3285650, 1308354, -51540, 650151, -2758980, -1021665, 656593, -1741609, -1353989, 1796907,
- -2127083, -258772, -138513, -932008, 1095217, 767189, -1194001, -292058, 151934, -73551,
- 1335198, -1799591, 312996, 436476, -289910, -311922,
- },
- {
- 9601936, -33931852, 6974490, 22638236, -4017942, -2915746, -1309965, 8007967, -7510824, 9353365,
- 6954089, 7872138, 1658394, 2573222, 3410204, -6267431, 4583267, -173946, 22019760, -2244657,
- -1846299, 3308199, 6503654, 1122597, 2105071, 765578, -749472, -929860, 4649302, 3204583,
- 4393215, -3304977, 6875169, 2626373, -64425, -4257923, 1483374, 4839355, 1024350, -3089692,
- -2541547, -5392332, -481573, 3832185, 6267431, 3479461, -4744328, 3230352, 2291365, 102005,
- -415538, -3010772, 783832, -1352915, 3111167, -4334696, -2285996, -1895154, -1021665, 3750580,
- -1921998, -698469, 1588601, -2544768, 3354906, -404264, 2398739, 1370632, -2270427, -498216,
- -649077, -500364, 421981, 1960653, -948651, -1582159, 319438, 2048163, 369367, -153545,
- 767725, -170188, -294742, 708133, 1180042, -72478, -984621, -1832877, 527207, -44560,
- -110595, -1147830, -1356136, 1098975, -1554241, 296890,
- },
- {
- -1560147, 3236795, 2679523, 3621194, -1526861, -969589, 2906082, 310848, -197032, -4151086,
- -4078072, -2735357, 2276333, -5339181, 37633040, 14531485, 17263622, -2035815, 1640141, -224949,
- -731218, 9584756, -2229625, -5428839, -414464, 4660577, 13445932, 2793339, 2303176, 1143535,
- -11197517, -6553583, -6827925, -3942243, -162672, -3479997, -875100, -4323422, -1440425, 4919348,
- -3211562, -4844186, 2233383, 2319282, 965831, 5077188, 2447595, 3464965, -954020, 3724274,
- 1472637, -9664, 4504347, -4271882, -2797634, -2143726, 2407329, -1203665, -1079111, -1887101,
- 1276142, 1006633, 1818382, 600222, 2610266, -98784, -1510218, -714038, 351650, -4094178,
- 1629403, -1163399, 94489, 2871186, 2488397, 827855, -897648, -1454920, -1888175, -2590939,
- 1206886, -385473, 97711, 2002529, -433792, -837519, 511101, -309775, 1877438, 219580,
- -311922, -1311039, -1162862, -619549, -914828, -1173600,
- },
- {
- 16268262, 1003412, -11643656, 42217916, 1309428, 3846680, -462783, -1495722, -1262720, -7085623,
- -3929358, 7051263, 6732361, -5231807, -11176042, 6037651, 9348533, 10514080, 4118874, -1038845,
- 6342056, 5599564, 1766842, -10008348, 3984656, 1621350, -5801964, -2253784, 3067681, 16643,
- 7595650, 11156178, -6441377, 4773320, -836445, 10930155, -2274722, 1576790, 1251446, 1383516,
- 940598, -23622, 3352759, -4099546, 6022618, -209917, -527207, 4258460, -468688, 5577015,
- 1863479, 900333, 994822, -3421478, 1709397, 758062, 4096862, 663572, 3006477, 344671,
- -929860, -1148904, 2169495, -379568, -3713536, -2635499, -2000381, -37044, 4376035, 3535832,
- 726386, -2371359, -671089, 326418, 2261300, 140123, 2120640, -3386582, 1165547, 150324,
- -841277, -599685, -1749125, -1913945, -1443646, 1151051, -85899, 810675, -1379221, 797253,
- -1781338, 246961, 1190780, -604517, 1057636, 846109,
- },
- {
- -3520800, -23306104, -8737574, -9805410, 4884989, -593779, 548682, 3191698, 3148748, -3580929,
- -1628866, 8390219, -1870995, -24978992, -1021665, 6917582, 12402792, 5941551, -7103876, -2967823,
- -5046587, -8391829, 4429722, -8169028, 163209, -6158446, 1354525, -2724083, 4791036, 6449967,
- -3730179, 8313983, -2855617, 5591511, 1761474, 1405528, 8551280, -2833068, -2598992, -6448894,
- 253403, 6114960, 2254858, 3000035, -785979, 6410239, 23085, -1197222, 566399, -1382443,
- 1312113, 4814659, -3804804, 2112587, -2923799, -2615635, 3860639, -2585570, 2463164, 5632313,
- 1845225, 1050120, 1536525, 2825015, -1975148, 80531, -1867774, 2420214, -743029, 2439005,
- 2674691, 806380, 1757715, -2996814, -3224984, -784905, 238908, 890132, -240518, -2699924,
- -1312649, 218506, 762894, 562104, -2807835, -376883, -86436, -1447941, 294205, -47245,
- 124554, -1240172, -824097, -257161, -11274, -1618666,
- },
- {
- 17164836, -23952496, -4939213, 43456480, -4658966, 2587181, -4276714, 1662689, 8938901, -9310415,
- 10460930, -3941706, -6337761, -8514236, 16138876, 1629940, -7686918, 1160715, 879395, -862752,
- -3355980, -9430138, -5341329, 2849174, 3879966, 4342212, -3746285, 2621004, -6774774, -2477123,
- -2947958, -4072703, -769873, 1855963, 4478041, 5267241, -960462, -2218351, -220654, -1971927,
- -482110, -827318, -3484829, 3084324, 3755412, -2047626, -697395, -409096, 1829656, -3234110,
- 2636573, -30065, 2247342, -4081293, 4512937, -1343251, 302258, -2005213, -1917166, 1678259,
- -3148748, 591095, 491774, 2133525, 60666, 387084, 1089311, -75162, -1051193, -770947,
- 1981591, -60666, 92342, 1595580, -342524, 1440962, -519154, -1327682, -297963, 876710,
- -684510, -307090, -44023, 25770, 25233, -375273, -491774, -332323, -2174327, -341450,
- -436476, -577673, -52613, 1156957, 650151, -776852,
- },
- {
- 3896072, -7478075, -8754754, 788663, 6593849, -9643812, -22565758, -2540473, 7546258, 1660005,
- -1547799, 8707509, -312459, 16161962, 5331665, -1119913, 2013266, -6478422, -5974300, 10485626,
- -13679471, 2926483, 3800509, -10887205, -9347459, 2430952, -3116536, -3980898, 3321084, -4273493,
- 6159520, 7614977, -3810710, -6036040, -6474663, -248571, -1695438, -1327145, 6466074, -630823,
- -703838, -5401995, 5930276, -1873680, 3915937, -310311, 875100, -4793721, 1983201, -245350,
- 33286, 1536525, -2118493, 53687, 4109210, -6708739, -1170916, -1422171, 1933272, 1932735,
- -5507222, 3262028, 1342714, -3626563, -2928094, 1517734, 444529, 474594, -5474473, 890669,
- -769873, 417686, -722091, 2052458, 448287, 52076, 4832, 2630131, -1710471, -1799591,
- -554051, -294205, 59593, 450972, -1220308, 899259, 397821, -1605244, 2217277, 111132,
- -2001992, 697395, -1442572, -963683, 355945, 157303,
- },
- {
- -11449309, -58306328, -2510409, -4204236, 7005092, 779000, 13882945, -4757213, 7313793, 11292006,
- -507880, -41339, -5502390, -6415071, -4475893, -1809255, -10472204, -6317897, -3555159, -10551124,
- 5303748, -1840930, 1017370, -8763881, -4897874, 3374234, 666794, -300648, -5915781, -5102958,
- -5765994, -10443750, -3795677, -4373888, 508417, 8009041, 12963822, 1292248, 5605469, -396211,
- -3906810, -7365332, 3036005, 2728378, -494458, 3573950, -129923, -3431679, 2470680, 2098092,
- -7835094, -876173, -3917010, 5779416, -652835, 5702106, -3281355, 3788161, -97711, -2289755,
- -3639448, 3770445, 1874753, 2089502, -3701725, 120259, -1258962, 1504849, -890669, -1683627,
- 1206886, 692564, 60130, -460098, 1341640, -648003, -511638, -271657, 293132, -850404,
- 2397666, -1005022, -910533, -985158, -255551, -1338956, -836982, -1573569, -817654, -790811,
- 587874, -1022202, 2331094, 257161, 921807, 1093606,
- },
- {
- 2374043, -26933740, -9123584, -4179003, 1571958, 1309428, 4053912, -2597918, -311922, 478352,
- 13247290, -3541738, 6883759, -27695022, 2219424, -5375689, -2275259, -471373, 7155953, 1669669,
- 3907883, 2646774, 1831267, 241592, -1976222, -6255620, 11093364, 14113799, -1053341, 6801081,
- 14334990, -1814087, 2316061, 12009802, 2112587, 589484, -5329518, 5456219, 385473, -2731599,
- 5143224, 765578, 7838316, -6453189, 1191317, -6989523, -1705102, 6908992, -116501, -8833674,
- 9021579, 891743, 9099425, 629213, -343597, 3745748, 2099702, 4269735, 999654, 2996814,
- -998580, 547608, -3532074, 1498944, -2341831, 1415729, 367757, 1392643, -3301219, 182536,
- -3134789, -1919850, -1662689, -104690, 1491427, 399432, 774705, 1112933, -249645, 985158,
- -261993, -2030983, 1468342, -525060, 1000727, -1852742, 1243930, 42950, 1905355, -1746978,
- -1005559, 279173, 2930242, 277562, -1725503, 1086627,
- },
- {
- 14626511, 33636572, -7126962, -6645388, 8007967, -25297894, -4287451, -3249680, -12026445, -5563057,
- -7335268, 8636105, 7939784, -16162499, 2805151, -2667175, 8125005, -1482301, 16750909, -683974,
- -8238284, -2529736, 3222836, 4926865, -145492, -8609262, -3719979, -6849399, -3511673, 1714766,
- -4459250, -5284958, -6295885, -13422, 687195, 10111427, -6416681, 6901476, -5915781, -5723581,
- 523449, -8157754, 1661079, 6218039, 10130217, 1177358, 3741990, 3163780, 481573, 1259499,
- 4967667, -1546725, -4757750, -3456375, 114354, -753230, 215822, -1134945, -3564286, -3912715,
- 1966558, 55298, -2978560, -5252745, -3736085, 1315334, -792421, 1335735, 450435, -2566243,
- 1259499, -2309619, -61740, -2906082, -2845416, -28454, 4035122, 283468, 1914482, -2270427,
- 356482, 961536, 343597, -1683090, 796716, 89657, 893890, 1275068, 222801, 1382980,
- -154082, -601295, -602906, -68183, 89657, -351114,
- },
- {
- 1633698, 28687160, 3595425, -408559, 7292318, 2790655, 1161252, -10422275, -5065914, 4804995,
- 5150203, -4375498, -2608656, 30769146, 78653736, 21549998, -22196928, -11889543, 5932424, -10497437,
- 12584254, 11220065, 2668249, -5143224, -2934537, -14541149, 238371, -1640141, 7199439, -4326643,
- 4526896, -6320581, -194347, -2972117, 4667556, -335007, 6762963, 593779, -10127533, 2114198,
- 1496259, -6727530, -6926709, -618475, -153545, -6146635, -1114544, 5982353, -5968394, -2224256,
- -671089, 1964948, -3794067, 4645544, 3393024, 914291, -6717866, 2990908, -1776506, 2020245,
- -4126927, 656056, 2057826, -1131187, -3387119, -449898, 265751, 2454037, -2572686, -1151051,
- 690953, 449898, 155156, -1715303, -277025, 2190433, 1784559, 66035, -649614, -603980,
- -1002338, 235149, -268435, -2022393, 874563, -512712, 1217086, -1625645, 698469, -827318,
- 132607, 1611, 293132, -2800319, -1144609, 251792,
- },
- {
- 14353244, 16797618, -1596654, -3663607, -2238752, -7489349, 6191196, 1105417, 3269544, -15585899,
- -15180025, -20020454, 6326487, -6345278, -47505024, -6615860, 18410378, 16261820, 5556614, 15881178,
- 6376953, 2686502, 725850, 3615826, 14356465, 6623914, -8446590, 8855686, 3786014, 4533338,
- 16556025, 9380745, -9615895, -3509525, 3137474, 223875, -5377299, -1710471, -4485020, -2987687,
- -4357245, 2885681, -5818607, -1538135, -6481643, -2156611, 2193655, -1165547, -1167157, -5370857,
- -900869, -6155762, -2834142, -165893, -4909685, 616328, 4548371, 2687039, -499290, -3122978,
- -2780991, -4624069, -2656437, 4729833, -621160, 260919, -383863, -2512556, -1624571, -309238,
- -1674500, 1649268, 275952, -914828, -1800665, 2467459, -704912, 4243965, -1491427, -3452080,
- 1546725, 18254, 1079647, -928787, -2783676, 748935, 2250026, 85362, 1948841, 560493,
- -363998, 287763, -173409, -1866163, -615254, 175557,
- },
- },
- {
- {
- 1149441, 31255550, -8657580, 8272107, 1319629, -2571075, 1788317, -4310000, -6483253, 3133716,
- 6871411, -19773492, 1708860, -4694936, -3508988, 2205466, -8919036, -944356, -987843, -10065793,
- -2815351, -5595269, -12822625, -7055558, 7818988, -5011153, 3252364, -13898514, 3904662, -3234647,
- -3833795, 1179505, 1559073, 1418950, -188979, -6116034, 4552666, 3258270, -4486630, -5890548,
- 2514167, -1406065, 3619047, -2170569, 811749, -6599754, -1931125, 3741454, -2826625, 6129992,
- 4518306, 2510945, 1470489, -2248952, -4830228, 1194538, -455267, -2721399, 2649458, -964220,
- -1766842, -753230, 250719, 1563368, -1268089, -2563559, 2371359, -1923609, 5464272, 1709397,
- -1074, -2242510, -3228742, 1865090, -1591285, -412317, 2257542, 3165928, 508417, -659814,
- 447213, -417686, 1478006, -352724, 12885, 1363652, 51003, 1010391, -1104344, 2121714,
- 1436667, 862215, 2202245, 0, -17180, 627602,
- },
- {
- 3928285, 127469264, 18202072, -86937120, 16760036, 303869, 10386305, 18039400, -1738925, -8843338,
- -309775, 25605522, -205622, -1066226, -2589329, 1119376, 6455873, 2903935, 12962211, 2483028,
- -5791764, 2400350, -5892159, -4846871, -1208496, -5152887, 3470334, 5858336, -8283382, 4174708,
- -510027, 2625836, 2059437, -1869385, 870268, 2399276, 2574296, 7582228, 8863202, 1531156,
- -1012002, -5893769, -2157147, 895501, 4160750, -4780299, 1850057, -183610, 10510859, -6209986,
- -1898376, 3251827, -1826972, -1845225, -1276142, -168577, -2878702, -3054796, -1205275, -3307662,
- 979253, -4643934, -1314797, 1548873, 542240, 3234110, 539555, -1277216, -3930969, 1755568,
- -1413044, 801011, -1311576, 472446, -1794223, 2410551, 94489, 947040, 612033, 443455,
- -1856500, -1400696, 826244, -1406065, 1157494, -449898, 1399623, -347892, 388695, -856309,
- -264677, -273267, 117575, 1571958, -608812, -713501,
- },
- {
- -4208531, -81110992, 8606578, 34127812, -30116310, 8112657, -553514, -6437082, 11005317, 874563,
- 4466766, 10787347, -1664300, 9458592, 9754944, 8915278, 11725798, -7963406, 737661, 26529476,
- -13231184, -3084860, 10584947, 4173635, 4034048, 3302293, -6667937, 9787157, 5362804, -770947,
- -2686502, 1445793, 3316789, -8979166, 3115999, -1707250, 9741523, -7948374, 2573222, 2469606,
- 4763656, -4086125, -2438468, 7595113, -2965675, 5206037, 5515275, -595927, -310311, -2036888,
- 6280316, 3401077, 3602404, 38118, 1002338, 2357937, -556735, -959388, -2103460, 13422,
- 345745, 777926, -3964792, -652298, 2740726, -928250, 23085, -215822, 2261300, -2955474,
- 215822, 1176284, -352724, 738734, 955093, -2432562, -1350767, -2136746, 3760781, 3306588,
- -25233, -3036005, 106837, 878321, 2367601, 1169305, -2151242, 242666, -2106682, 2215130,
- -2049773, -1342177, -476741, 1370632, 348966, -1104344,
- },
- {
- -135828, -28561532, -3698504, 7231115, 2057289, -633508, -413391, -5156645, 2194728, -933619,
- -8474507, -10138807, 369904, -7291781, 16652125, 7378217, -4613869, 3722126, 17449916, -6606197,
- -7119445, -3264175, -6505265, 3291556, -1152125, -7132330, -7263864, -5472325, 7199439, -261993,
- 6761889, 5368172, -679142, 6352794, 2716030, -3184718, 2470680, -4167192, 5955509, 563714,
- -1754494, 554588, 4599373, 2578591, 2523830, 2324114, 2694018, -2120640, -1518271, -4281546,
- -1683090, -3485366, 664109, -547608, -918586, -1524177, 1216550, 2215130, -2054068, 3106872,
- 1493575, 1928977, 1142998, -164819, -35433, 644245, -4731444, 894427, -3383897, 791348,
- 2530810, -445066, -257161, 588411, -1440425, 1086627, -3293703, -95026, -1594507, 761820,
- 649077, 1042066, -4316979, 611496, -296353, 376347, -283468, 131533, -1114007, 811212,
- 891743, -517007, -703301, -155156, -1069447, 1005022,
- },
- {
- -13147969, -10094784, 11083700, 29593936, -7990250, -3782793, 106837, 3392487, -1263257, 4922570,
- 8526047, 13681081, 4655208, -5072893, 3737159, -7004555, 1137630, -1476932, 18928994, -2712272,
- 4847408, -4590247, 9296994, 10478646, -4720706, 4629438, -5388037, 5319854, 1950452, -3708704,
- 110595, 5517423, 2717641, 2525978, 268972, -2563559, -716186, 7284265, 768262, -5015985,
- 1732482, 3462281, -1111323, 5207111, 4752918, 2721936, -6459631, 3855807, -1308354, 4760971,
- -4135517, -971736, -2594697, 3127273, -2351495, -495532, -5498095, 473520, -2438468, 3797825,
- -325881, -536334, -886911, 463320, -416612, 2025077, 2180770, -1373316, 341450, -512712,
- -2804077, 1592896, 619012, -141197, 1804423, -1345935, 977105, 112206, 357556, 691490,
- -1607392, 662499, 1567126, -305480, -1451162, 874026, -224949, -1007707, 61203, 866510,
- -1548336, -856846, -1502702, 1076963, -1144609, 1316408,
- },
- {
- -149787, 3995930, -7248831, -1147830, 5309117, -128312, 82678, -114890, -920197, -2407329,
- 2648921, -4034048, -3971234, -11167452, 45170708, 18908594, 13882408, 904091, 19327, 4163971,
- -1356136, 10736881, -6426345, -1669669, 8071854, 986232, 10299332, 1272921, 7952132, -8578660,
- 4888210, -9417253, -1984812, 471373, -2566780, -3859565, -1859184, -3082713, 1260036, 2754685,
- -3322157, -2277407, -3427921, -1446867, 2222646, 4399121, 5708549, 1855426, 635118, 609885,
- 2013803, 79994, 2905009, -821413, -4663798, -2823404, 3980361, -581431, -3193845, 775242,
- -18254, -387084, -540629, 2946348, 652835, 1340567, -969052, -442919, -887448, -892816,
- 97174, -1353989, -520228, 1733556, 2076080, -362925, 2718178, -2768643, -3721052, -842887,
- -1801202, 825171, 518617, 2895882, 454193, -336081, -1044214, -936303, 1352378, 519691,
- 1175210, -1455994, -1691680, -438624, 294205, -1247151,
- },
- {
- -16642998, 37642168, -264141, 44350908, -1636383, 2124398, -5684389, -2497524, 16620987, -13793824,
- 2820183, 2996277, 3084324, -1323387, -10509248, 4017405, 31343598, -6111739, 5124970, 5454609,
- 4671851, -539555, 3057480, -10308458, 10822781, 6318971, -2208687, -8304856, 569620, -2071248,
- 7628936, 10070625, 289910, -1638530, 3551938, 7802345, -3179350, 4327180, 3455838, -1903744,
- -595927, -1678259, -580357, -4358318, 10234907, -2571612, 2257005, 3659849, -2812667, 7130720,
- 1770600, 659814, 404801, -2356863, 3259343, -1066226, 3154654, -42950, 2501819, 2006824,
- -1237488, 331249, -867583, 1325534, -3414499, -2393371, -2107755, 91268, 5698348, 2415382,
- -787053, 185757, 1103270, -782758, 817654, 2213519, -1977296, 423054, -1146756, 1761474,
- -1973538, 344671, -3351148, -807991, -448824, 1140314, 5369, 376883, -1362578, 341987,
- -332323, 210990, 84289, 206695, 1381906, -833224,
- },
- {
- -369904, -38284800, -13328357, -965294, -4446902, 5624260, 2149094, 3616363, -1022739, -2364380,
- -3994857, 8659191, -4364761, -13333189, 2662343, 994822, 21239150, -6716255, -11598022, 1993402,
- -3522410, -3694746, -1482838, -10805601, 1270237, -4370129, 4738423, -7490960, -319438, 3999688,
- 7267085, 6940131, -3111704, 3010772, 6152004, -1842541, 4843113, -3571265, -8755291, -1163399,
- 3059091, -1014686, 6403260, -991601, 2632278, 2753611, 231391, 679679, -1656247, -465467,
- 4364761, 2671470, 688269, -2091649, -850940, -1287417, -430034, -1739999, 2870649, 6660421,
- 1113470, 2494302, -616865, 3539590, -3259880, 3272228, -1817845, -454193, 412854, 1795296,
- 958851, 1952600, -620623, 561567, -2688113, -2459943, 149787, 1239098, -320512, -1626182,
- -573915, -449361, -655519, 619012, -242666, -1804960, -1348083, 447213, 149250, 267362,
- -114354, -1618666, -1347009, -12348, 676994, -1702955,
- },
- {
- -20862804, 19301584, 9181566, 52396452, -12221866, -1289027, 3310346, -5848672, 3739306, -1655710,
- -16229608, 21267604, -14960982, 2218351, -9272298, -6752763, 16473884, -4607426, -3132105, -6128919,
- -6611029, -7451769, -1926293, 4568235, -92342, 11799886, -7974144, 502511, -4858682, -161061,
- -1130650, -2481954, -3437585, -2342905, 1818919, 4750771, 1730335, -3299609, 1270237, -681289,
- -1226750, -251256, -3597035, 823023, -414464, 695785, 1400696, -3068217, 5099200, -1138166,
- -2260227, 2451890, -2006287, 1689533, -1064078, 3354370, -6768332, 1470489, -5979668, 6803765,
- -1221918, -2572149, -732292, 646929, 1719061, 1919850, -109522, 661425, -598611, 516470,
- -427349, 2348810, 244813, -537408, 1481227, -1060320, 526670, -682363, -870268, 463856,
- 205622, -929860, 657130, 790274, -550293, -128312, -62277, -1580548, -2148021, 873489,
- -1973538, 9664, -1464047, 1803886, 899259, -699006,
- },
- {
- -3701188, -14157286, 16251083, -4116726, -2171106, -21832930, -756988, -5726265, 563714, 10375030,
- -7293928, -1738388, 14746233, 6352794, 14501957, -3561602, -4290673, -2972654, -8432095, -1659468,
- 1905892, -6036577, 3708704, -16279537, -12126840, 4523138, -6199786, 3207804, 5785321, -294742,
- 2487860, 5526549, -2537252, -6907918, -6351183, 1397475, 78920, 809064, 3148211, 4769561,
- -4716411, -1314260, 2792266, 51003, 3302293, 3867618, -2435783, -3019899, -4875862, 5655935,
- -226560, 793495, -1076963, -3038153, 2462627, -4254702, 328028, 4227322, -2899640, 3852586,
- 308701, 1447941, -597000, -818728, -2592550, 2972654, -1960116, -3228742, -965294, -1269163,
- 226560, -1701344, 1432909, 2790118, -1621887, 229244, -17717, 266288, 2504503, -2077690,
- -208306, -85899, -832150, 842350, -2010582, 2035278, -795106, -183073, 206158, 1191317,
- -579821, -138513, -1892470, 1078037, -1019518, -710280,
- },
- {
- 11542725, -68426344, -29792040, -12466679, 21052856, 21870510, 2089502, 3753802, -2350958, 1846299,
- -6373732, 4143570, 11722039, -6504191, 1794760, -12444131, -5122286, -16550120, 2108292, -1600412,
- -2419140, 753767, -294205, -15477988, 1787243, -3033321, 6054294, -907312, -8615168, -8917426,
- -4153234, -7322919, -2760590, -7647190, 5936182, 3179350, 11618423, -998580, 8782134, -344134,
- -4293894, -8377334, 7598871, -761283, 2318746, 3467649, -3143916, -2094333, 413391, 348429,
- -7601555, -4023311, -3092377, 3555696, 1033477, 3779571, 631897, -2129230, 2237141, 287763,
- -85362, -2335925, 2189897, 1178432, -1386738, -882616, -499290, 1285806, -405338, -2129230,
- 2187212, -68719, -951872, -1475321, 2008434, -514322, -98784, -98784, 1553168, -1530082,
- 1062468, 178241, -1773285, 937377, -223338, -1357210, -1995012, -741419, -2559264, 1163936,
- -751082, 1349694, 866510, -532039, 974958, -25770,
- },
- {
- -1285269, -23409720, -4841502, -3023120, -6915434, 5543729, 4213900, -2934000, 1073205, -1577327,
- 10495289, 3817152, -8406862, -8891119, 2895882, -1809792, 1080184, 7004018, -3921305, -187368,
- 365072, 8362838, -4966593, 2132451, 6068789, -10151155, 12856985, 14472429, 19413252, -6982006,
- -1102733, 9356049, 6808597, 6912750, -6170258, 6187438, -4600984, 8893267, -2912525, 778463,
- 360240, 3027952, 951872, 1214402, 595390, -1027034, -3478924, -2986076, 1692754, -2216740,
- 4412005, 3175055, 4556424, 402116, -540629, 5067525, 4167192, 2081449, 2968359, 1578937,
- -833224, 1974074, -4623533, 255014, 439697, 402653, -529355, -623844, 717260, -59056,
- -3957276, -4204236, -2579128, 3425237, -510564, -114354, 832150, 310311, -1304060, 3259880,
- -1506997, 6979, 158377, 257698, 2063195, -2040110, 2327872, 459025, -603443, -940598,
- -32749, 419296, 691490, 341987, 139586, 320512,
- },
- {
- -5070746, 68691024, -5311801, -16479253, -9595494, -7754027, -6541772, -3056406, -11530377, -12926241,
- 5974837, 1363115, 13936632, -17317846, 9004936, -2388002, 2385318, -1315334, 8161512, -4792110,
- 3145527, -5902359, 421981, 10030896, -3898220, 1466731, -7486128, -14026826, -3248606, 1136019,
- -1018444, -9388799, 1183800, -2537252, 4164508, 6817724, -11273215, 12204686, -5033165, -4285304,
- -1013075, -8164733, -96637, 8002598, 10662793, 6054830, 3034395, 1422708, 1347546, -474594,
- 5101885, -2937221, -3317325, -1854352, -3590056, 1035624, -282394, -9664, -1333051, -3685082,
- -170188, 1719598, -4212826, -6882685, 2673617, 237297, -4391604, 2330557, -3200288, 57445,
- 603443, -936840, 278636, -3190087, -2020245, 1255204, 369904, 2696703, 288837, -1747515,
- 1617055, 1297617, -1325534, -1490354, 594316, 1918240, 746787, 729071, -430570, 2723009,
- -487479, 312996, -2397129, 963146, -686121, 324270,
- },
- {
- -1947768, 29174102, 3479997, 5580773, 7178501, 916439, 816581, -11686069, -5541045, 1768990,
- 8781598, 1662689, -10702522, -3891777, 134051296, 21170430, -13606993, -19416474, 8837432, 333934,
- -5826660, 12996571, 12370043, -8076149, -11290395, -14424111, 3781182, 1235877, 173946, -1240709,
- 2566243, -6359236, -1326608, -7828652, 11785390, 308701, 3062312, 1771674, -7409356, -2308545,
- 4931696, -11077258, -1389959, -1299765, -4113505, -380641, 1232656, -2813204, -122407, -4265977,
- -2110440, 1636383, -3699578, 1338956, 3060164, -3033858, -964220, 919660, -2240899, 3953518,
- -6090801, -4909148, 7059853, -3504157, -3001109, 118648, -2145336, 4837207, -5191005, 2094870,
- 171799, 353798, -294742, -1430224, -616328, 1090385, 1730872, -2006824, 1902134, 328028,
- -962610, -795106, -2039036, 1935420, -1682017, 491237, -415001, 317828, -1733556, 1448478,
- 267362, -774705, -1983738, -1068373, -2360085, -92342,
- },
- {
- -9994926, 52307868, 2322504, -9782862, -10830834, 6233608, 3155190, 3524021, 1378148, -11501386,
- -23198728, -12671227, -4678293, -17322676, -48951888, 2399813, 32321240, 5162551, 21235928, 4904853,
- 13423383, -6120329, 10122164, 5214091, 10375030, 7667591, -3362960, 7374996, 8109972, 6039261,
- 8831527, 11085847, -3215857, -1862405, 1698660, -1267015, -8523899, 2244657, -5353140, -9865540,
- 2370822, -1468342, 2236604, -6445136, -2708514, -4306242, 3798899, -1391569, -5155572, -2973728,
- -635118, -7285339, 2981781, -6521371, -1979443, 1353452, 6110665, -2328409, -1644973, -2149631,
- -4764730, -3624953, -102005, 2537789, -1236414, 903017, -1063004, 1401770, -1415192, -4380867,
- -720481, 1522566, 2105608, -1062468, -1444720, 2652679, -891743, 2075543, -790811, -3140695,
- 1792612, 492311, 673236, -1149978, -427349, -22549, 1021129, 389768, 265751, 27380,
- 579821, 319975, -534723, -1386201, 901943, -76236,
- },
- },
- {
- {
- -811749, 49443664, 12200391, -25987236, -14734422, 5256503, 986232, 1384590, -3481071, 4656819,
- 11781095, -6412923, 14505178, -1970316, -10521059, 7330973, 12712566, 19576460, 8520141, -15389942,
- 5020280, 9145596, -848793, -632971, 1404991, -8493298, 4165045, -15649787, -524523, -2681133,
- -2573222, 2276870, 2292976, -2284923, -5612986, -9747965, 1011465, -2239289, -10125385, -3661997,
- 7327214, 4275103, 2509335, -6573448, 5318780, -3204046, -3898220, 1041530, -4331475, 3192771,
- 181462, -1073205, 426812, 756988, -1798518, -1258962, -1841467, -1047972, 91268, -6126234,
- -1580548, 1190243, 1982664, 2236604, -2025614, -2334315, 2454574, -88584, 5776194, 586263,
- -3189013, -219043, 1027034, -294205, -1404991, -142271, 717796, 1313723, 1969779, 1200443,
- -107911, -201863, 976031, -721018, 214748, 165356, -1144609, 1034013, -1442572, 861141,
- 186831, -391916, 840203, -347355, -529892, -38118,
- },
- {
- -2596845, 98028872, -1411971, -56482040, 48894444, 7583839, 4537633, -3245922, -4180077, -5537824,
- -18447422, 7295002, -4317516, -3983582, 2634963, -5825587, -10718091, -4745402, 7581691, -3347927,
- -2554969, 3849901, -5849746, -2680060, 4444755, 4218195, 7661685, 7733089, -12029130, -3167539,
- -7348152, -100932, 4523675, -1706713, -4508105, -2769180, -1644436, 2006824, -141197, -4875862,
- -3104188, -7775502, -2341831, 149787, 2823941, -4917201, -814970, -4163434, 2368675, -8548059,
- -1998234, 2470143, 639413, 267899, 443992, 431107, -1386201, 573378, 281320, -5409512,
- 681289, -4410395, -787590, 3220689, -2563559, -605054, -1794760, 2430415, -894964, 747324,
- -4500052, 172872, -235686, 2004676, -3015067, 483184, 1787243, 743029, -264141, 2251637,
- -113280, -380105, 1224066, -2413772, 1961726, 4832, 888521, -1015760, -1912334, -535797,
- 1682554, 1052267, 1795296, 1757179, -692564, -983011,
- },
- {
- 1167157, -84636088, 4165582, 65485904, -9416716, 7714298, 2027761, -1894618, 8654896, -1061394,
- 13346074, 19814832, -4032438, 6253473, 10372883, 355945, 7197292, -436476, 1814087, 19432042,
- -7980049, 4992900, 7817914, 3020436, 1835562, 277025, -4940286, 8779987, 830539, 1044214,
- -7030862, -3760244, 11401528, 1758252, 4552666, -2720862, 7373385, -9396852, 2566243, -4825396,
- 3593277, -2127083, -4290136, 12033961, -1354525, -4602595, -1451699, -1883880, -1228898, -1709397,
- 4721243, 1252520, 1722819, 218506, -1633161, -1649804, 129923, 2687039, 2464238, 1836635,
- 2141041, 3509525, 21475, 956167, 1600949, 551366, 1544041, -2072859, 2983929, -4250407,
- -2190433, 214748, 631360, 908386, 251256, -2434173, -808528, -2185602, 600222, -936303,
- -1455457, -2951716, -509491, 121870, 795106, -257698, -1701881, 1171452, -1113470, 2593087,
- -1329292, 111669, 27917, 1389959, 598074, 44560,
- },
- {
- -1607928, -27254788, -1809255, -969052, -3727495, -877247, -2404108, -1321776, 2968896, 627602,
- -1756642, -11672647, 79457, -8129836, 2726767, -2558190, -15899969, 25233, 18166638, -8286603,
- -1060857, -2639258, -15376520, 2799782, -4326106, -8982387, -1232656, -4711579, 4076461, 468151,
- 6133214, 8766565, -1969779, 4221416, 1743757, -2341294, 3061238, 1165547, 10606422, 3585761,
- -3796751, -32212, 5796595, 2301566, -4490389, -4844186, 196495, -1129040, 4192962, -4564477,
- -1969779, 2098092, 2880849, -1675574, -541703, 258772, 625455, 1693828, -1953136, 557272,
- -814433, -614717, 382252, 1740536, -765041, 2692945, -1166621, 2818572, -1685775, 1245541,
- -397821, -2354179, -484258, -1223529, -2201708, 537408, -1691680, 2438468, -310848, 1717987,
- 1229971, 1171452, -1718524, 1130113, -2587181, -376883, -151934, 424128, -813896, 540629,
- -41339, 566936, -317291, -1102733, -1028108, 1971927,
- },
- {
- 12816719, 16492138, 9426379, 40597104, -2695092, 3129421, 663572, -2257542, 2507724, 9600326,
- 1748052, 7710003, 9104257, -4181151, 4349728, -5091684, -2984466, -8475044, 12649752, -6251325,
- -1626182, 1002875, 4739497, -9186935, -7775502, 4397510, 1249299, 23625004, 7131257, -6781754,
- -1962800, 5360119, 455803, 4030827, 6438156, 175020, -5658083, -1778117, 2098629, 951335,
- 5290863, 6647536, -156229, -306553, 1126355, 4090956, -5103495, 3064996, -5108864, 3515431,
- -1450625, 315143, -7196755, -1855426, -4485557, 1796907, -1492501, 2983392, -1187559, 2799245,
- 1660542, -643708, -1442035, 1195612, -295279, 699006, -755914, -4252018, -148713, 1103270,
- -2306398, -628139, -1396401, 1633698, 4544613, -226560, -27917, -1458141, -1129040, 216359,
- -2267743, 420907, 1102733, -945967, -3728032, 956167, 905164, -347355, 628676, 1854352,
- -1034013, -4832, -251256, 1488743, -412854, 1603633,
- },
- {
- 1576790, 15247671, -3168075, -3479461, 3623879, -1215476, 1174137, 547608, 1637993, 5681168,
- 2263448, -10934987, -9036611, -23354958, 33403034, 6686191, 1663226, -5862631, -2857764, -264141,
- -10580115, 5047124, 11781095, 10931766, 1121523, 67646, 6550362, -6385543, 7929047, -3052648,
- 11615739, 2314987, 5737003, 3505230, -1096827, -814433, 4072703, -2204929, -2274722, -4800700,
- -3055869, 3289408, -3226057, -2078764, 394600, -195421, 3897146, 461172, -1985349, -2054068,
- 1027571, -1094680, 653372, 192737, -1141924, -4089883, -282394, -1184337, -217433, 2961917,
- -1385664, -2361158, -2410014, 2252710, -672162, 1653026, 691490, 805306, -416075, 772020,
- 1042603, 1868848, -1160178, -2339684, 343597, -1336809, 4228932, -332860, -1663226, -1391033,
- -3005940, 2719788, 78383, 1600949, 59593, -1654636, -1293322, -104690, 318364, -1206886,
- 950262, -196495, 269509, 605054, 658204, -299037,
- },
- {
- 11186779, 67065916, 613107, 53717692, -1391033, 4291209, -1051730, -9183714, 9592809, 2513093,
- -1743757, -9414031, 14232448, 12565464, -45097, 12120398, 33846488, -9683004, 1402307, 6979,
- 1892470, 2058363, 10079751, 2445447, 6379637, 668404, -3045669, -4748623, 2808909, -3285113,
- 4500052, 6822556, -3112778, -7968238, -947577, 1370095, -6675990, 3735011, 4783520, -1799591,
- 1961190, -18254, -2797098, -4952634, 3786014, -6376953, -2953864, -3859565, -5552856, 1220845,
- -1518271, 539018, 869731, -15032, 4709432, -927713, 2232309, 1320166, 2114198, -506269,
- 268435, 2580739, -1655173, 2626909, 710280, 1111323, -1207423, -2206003, 3060701, 2818036,
- 719944, 2336462, 2384781, -505732, 420370, 1052804, -594316, 3537443, -1586454, 330712,
- -3112778, 2195265, -982474, -5906, 185220, 1155346, 1198296, 1232119, -2627983, -535797,
- 1504312, 480499, -245887, -80531, 960999, -1624571,
- },
- {
- 3331821, -2354716, 8230768, 14755360, 3757023, 2727841, 3804267, 2021319, -5211406, -274878,
- -5057861, 963146, -1939178, 2000381, 15141907, 4346507, 10162429, -11077794, -7053410, 7609072,
- -18790, -955093, -1975148, -6838662, -1682017, -15392626, -1600412, -7945690, -2449205, -260382,
- -6422587, -5398774, -1591822, 3984656, 5744519, -5525476, -1983738, -9286256, -7447474, 2702608,
- -1102733, 880468, 8011188, 165356, 2570538, -446140, 829466, 2688113, 403727, 1559073,
- 2033667, 3428995, 2397666, -2122788, 3446175, 913217, 1074, -354872, -747324, 1134945,
- -2800856, 2835752, -3250217, 3247532, -3335579, 1798518, -62277, -2681670, -1012539, -484258,
- -2772938, 159451, -2479807, 315680, -723165, -1466195, 1049583, 4372814, 1516124, 85362,
- 1452773, -1240172, -2316598, 640487, 690416, -463856, -91805, 1823214, 307627, 701153,
- 995896, -576063, -425202, 98784, 1465121, -2011118,
- },
- {
- 19276886, 65860640, 10897943, 71233640, -5573794, -127238, -1175210, -18450642, -4771709, 1371168,
- -26909044, 8442295, -12574054, 729608, -26113938, -11876121, 21395380, -13248900, -9394704, -6471979,
- -8861054, -10384157, -1787780, 3303904, -2182917, 10741713, -3464428, 6847789, -431107, -1157494,
- -2614025, -10154376, -13726715, -5354214, -5158256, -2417530, 1194001, 478889, 5929203, 4577899,
- -2383707, 234076, -4219269, 1530619, 331249, 2364380, 4625143, -4656819, 1145146, -11811,
- -3036005, -790811, -3763465, 289373, -3451006, 2738579, -7179575, 3095598, -1791001, 7400766,
- -2426120, -3970161, -3122978, -3365107, -4403415, -858993, 2660732, 2165201, 2011118, 3425773,
- -895501, 708133, -444529, -2950643, 1414118, -2598455, -2514167, 685047, 1589138, -116501,
- 1018444, 712428, 2523830, 397821, -2630668, -452045, 560493, -965294, -1625108, 456877,
- -1037235, 916439, -2049236, 976568, 628676, -640487,
- },
- {
- 2161442, -24640228, 3652870, -2398739, -4779762, -98784, 21160230, -17069274, -15615427, 15982110,
- -557272, -7281044, 159988, -14288819, 5673115, 1197222, -100932, -8074002, 2969970, 8151848,
- 4925254, -2643552, -27917, -12145094, -12910135, 3429532, -1480153, 197569, 4645007, 5910412,
- -833761, 6534256, 9587978, 759136, -9123047, 326954, 5890548, -552440, 2641405, 16565689,
- 4475356, 1049046, 2341294, -6871411, -3810173, 3794067, -2121714, 1635309, -5800890, 2271501,
- 2799782, 1489817, -304406, -6235756, -2244657, -6863358, 6442, 6125697, -3533684, 3433290,
- 1079647, 529355, -2327872, -2907693, -853625, 3317862, -1983201, -1460826, 3104725, 1169842,
- -198105, -2371896, 826244, 1064078, 983548, 1041530, -1759326, 2109366, 6076842, 995896,
- -863288, -897111, -248571, 2179696, -1234803, 922344, -825171, 332323, -412854, 1494649,
- -3221, -274878, -849330, 2054068, -913754, -294205,
- },
- {
- -11192148, -88514448, -17909476, -5229660, 14723148, 6447283, -730681, 5546414, 7036767, -3738232,
- -4540854, 6597070, 22847616, 11977590, 8811662, -14886894, 3729105, -5560909, 7906498, -140660,
- -2640331, 2636036, 5298916, -5658083, 9314173, -11416560, 3921842, 3069828, 2774549, 5128728,
- 8995272, 4085051, -4212289, -9473087, 362925, -13761075, -508954, -989990, 8536248, 3537443,
- 4865661, -2065342, 6137509, -1376000, -797253, -2246805, -5746666, -4353486, -2123861, -2035815,
- -100932, 2364380, -3454764, -1512365, -1074279, 4837744, 777389, -3344169, 1577864, 53150,
- 3452080, -1080721, -1193464, -2122788, -2753611, -1615445, 787590, 1886028, -230318, -1400159,
- 1557999, -937914, -2685428, -380105, 4337917, 243739, -535797, -14496, 2108292, -870268,
- -355945, -1538135, -2956011, -103616, 358630, 2229088, -770410, -1184874, -1771137, 1420024,
- -936303, 1490354, 628676, -1257889, -414464, -1022739,
- },
- {
- -369904, -25200184, -2398739, 2367064, -9456981, -4017942, -4103305, -689342, -261993, -367220,
- 3019362, -1551557, 6869264, 16307991, 7289097, -2528125, 8904541, 13664438, -10298258, -6358699,
- -5276904, 3173444, -5565204, 5711770, 17125646, -615254, 4013110, -6868727, 5865315, -9002251,
- -9142912, 845572, -2150168, 4416300, -7931731, -3192771, -3861176, 15754477, -1147293, -1120450,
- -1259499, 1218160, 1158031, 3969087, 1129040, 7203197, 2728378, -7270843, -4502200, -2066416,
- 1883343, -4180077, -1611687, -1656784, 1772211, 3542274, -2844342, -4312147, -763967, -213138,
- 797790, 1416266, -4742181, 1620276, 2450816, 2863670, -1269700, -2021319, 3292629, -540629,
- -3019899, -1212255, -2176475, 4682051, -637803, -83215, 1307818, -1231045, -2752000, 2418067,
- -2481954, 915902, -260382, -1833951, 1657321, -2622078, 1833414, 1458141, -139050, -178778,
- 524523, 537, -537945, -1101122, -826244, 87510,
- },
- {
- -8252243, 48535276, -13069049, 3263638, -3866544, 10670309, 8231305, 5261872, 1642288, -13250511,
- 1989644, -6312528, -5513128, -22651120, 13551159, -9540196, -2883534, 4892505, -4224101, 2396055,
- 18032420, -3524558, 4941360, 2578054, -2273648, 13696114, -4217121, -4427038, 7512972, 556735,
- 1550483, -1647120, 11395622, 2227478, -3042984, 284542, -6296959, 12805445, 1049583, 4226785,
- 4328790, -5298379, -854699, -1132261, 937914, -1234266, -2141578, -1580548, -4707284, -5208185,
- -514859, -2064806, 4454418, 2075543, -1829119, 5871221, 999654, -979253, -2507724, -2684892,
- -1261647, -713501, -226023, -2361158, 1947231, 1252520, -3155190, -1629403, -5595806, -1297617,
- -1248225, -1767916, -113280, -1033477, -364535, 2154463, 1432909, 2644626, 166430, -1250372,
- 1673427, 1224603, -461709, 542777, 1113470, 1598265, -747861, -924492, -2650532, 1810866,
- -242129, 1482301, -1753420, 610422, -1055488, 841277,
- },
- {
- 2007897, 22851374, -7220377, 1945620, -1445793, 929324, 9372692, 1820529, 4915053, 194884,
- 4914517, 577673, -7917236, -28599650, 80781896, 13974750, 9496173, -2035278, 15582141, 14845554,
- -12919798, -3543885, 4715874, -14129906, -14998563, -4330938, 3479461, -11074036, -1628330, -3829500,
- 778463, 1759326, 1467268, -5522254, 7039989, -4960687, 4541391, 3696893, -3942780, -1908039,
- 2910914, -5354214, -49929, -2563559, -2224793, 1282048, 4411469, -1637993, -913217, -2065879,
- 531502, 2859911, -9004936, -10558640, -1793149, -1722282, -217433, 1520955, -2246268, 2764885,
- 469225, -3563749, 2319819, -46708, 2241436, 207232, -5375152, 2343442, -3616363, 4090956,
- 45097, -2794413, -1976222, -576063, -2046015, -379031, 2147, -2263448, 1304060, -181999,
- 1392106, 481036, -760209, 3136400, -2691334, 207232, -528818, 1991254, 555125, 562641,
- -284005, -419833, -1518808, 505196, -2115272, 227096,
- },
- {
- 1142998, 61005716, -7754564, -24566676, -12037183, 24122684, 14116484, 6469832, 800475, -1942399,
- -14015552, -4101694, 550293, 17709760, -1406065, 9089761, 27057758, 2554432, 14737107, 4330401,
- 11686069, -12989055, 12746926, 3847217, -3211025, 2724620, -427886, 12156368, 11362873, -7421167,
- -5913633, -1721745, -5682242, -967978, 4353486, 1348083, 1045288, 5340792, -6378027, -3739306,
- 9183177, 4362613, 8613557, -7172596, -1282048, -3350075, 1835025, 586800, 2912525, 434865,
- 381178, -5812702, 2037962, -3584687, 1671279, 3559991, 6313065, -1247151, -2871186, -3616899,
- -2888903, -601295, 1603633, 1006633, -507343, 697932, -1928977, -723165, -675384, -2200097,
- 201327, -246424, 2120640, 4314832, 916439, 708670, -3841848, 1070521, 1205275, -3053185,
- 291521, -271657, 574452, -419833, 365609, 183073, -796180, -239444, -33286, -1385664,
- 1284195, 300111, -700080, 344134, 2542084, 712428,
- },
- },
- {
- {
- -981400, 51845088, 10529649, -39899708, 6249715, 1483374, -2984466, 6328098, -2798171, 5464809,
- 8562017, 2840584, 2082522, 4316979, -9384504, 10744934, 17311940, 17083232, 5609764, -13262859,
- 8159901, 1719061, 6227166, 8866423, -11613592, 3457449, -12905840, -1655173, -3707094, 1399086,
- -6398428, -6061810, 5120138, 1581085, -11900818, -5218922, 4355097, 324270, -11045045, -1878511,
- -420370, 4439923, 7073275, -6776385, 2980171, -2077690, -2488934, 3732864, -3541738, -1976759,
- 1918240, 1418413, -3973919, -1098975, 4846334, -888521, -5010616, -763430, -3581466, -5438503,
- 2327336, 1074, 1300301, 165893, 538482, 2403034, -2531883, 3706020, -438624, 1904281,
- -1887638, 446140, 2916283, -1138703, -1356673, -277025, 1092532, -1337882, 1433982, 2304250,
- 135291, 2650532, -1594507, -444529, 843424, -1299765, -1634235, -421981, 783832, 626528,
- -828929, 100932, -198642, 1557463, -1203665, -618475,
- },
- {
- -37581, 126462088, -19444928, 3119220, -23490250, 16802986, 12697534, -20459076, 3763465, 2266132,
- -10306311, -19952808, 7059316, -7024419, 3998615, -5387500, -10106595, -2914672, -6550362, 3339874,
- 7690139, -8196945, -1912334, -2156611, 5093831, 5080947, 1522566, 7376070, -2159295, -9827959,
- -4640176, 1139777, 1727651, 688805, -3878892, -213675, 187905, -1791538, -2694018, -3731253,
- -4159676, -9987410, -1486596, 38118, -14496, 4233227, -8268886, -2143189, -4407710, 1348083,
- -4723927, -443455, 2328946, -1416802, 847182, -20938, 33286, 5130339, -5522254, -2519535,
- -1788317, -205085, -418222, 450435, -2422899, 844498, -5389110, 3220689, 1796370, -1562831,
- -4533338, 1131724, 1032403, -1286343, 304943, -2467996, 2477659, 2047626, 264677, -159988,
- 994285, 217970, -199179, -1072668, 1632625, 538482, 468151, 147640, -2787971, -156766,
- 1354525, -13422, 2920041, -301185, -5906, 614717,
- },
- {
- 2704219, -102313104, 16855062, 51069844, 1140314, 4874251, 6732898, 9679246, 1077500, 1996086,
- 386010, 25221658, 8458938, 1411971, 12036646, -1110786, 1675037, 1425929, 12570296, 4138738,
- -3024194, 11332808, -1695438, 6782290, -229781, 124017, 1677722, 1241246, -1930588, 2334315,
- -890669, -3285113, 14023605, -41339, -2696166, 10988137, -7415798, -6825777, 5639829, -5346698,
- -4143033, 3711389, -4737349, 6900939, 1653026, -5967320, -1368484, -989453, -4290136, 4592394,
- -506269, 3557844, 3462281, -3244848, -4597226, -5296769, 3643743, 3539053, 1705639, 3702799,
- 2499134, -340376, 3583613, -624381, 100395, -1497870, 5986111, -2356327, 1210107, -2920578,
- -1236414, -2559264, 340376, 133144, -1060857, -592706, -2631741, 807991, -834297, -3415573,
- -1270774, -426276, -1216550, 695248, 74625, -1709397, 62277, 192200, 1557463, 218506,
- -176631, 226560, 143345, 1615982, -840740, -111669,
- },
- {
- 1921998, -28099286, -5528697, -5465346, 954557, -1467805, -4837207, 3765076, 2332167, -115427,
- -396211, -13226352, -1106491, 2498597, -9866077, 4661114, -16009491, 1070521, 9131100, -2771328,
- 2101313, -1173600, -18889266, 3171833, -4839355, -11933030, 5382668, -5530844, -6393596, 8398809,
- 8745627, 6849936, -4399121, 7789460, -8067023, 13348758, 19327, 3445101, -1269163, 10449119,
- -10820633, 5364951, 3451006, 1975148, -2910377, -4648765, -197032, -176631, 5287105, -3260954,
- -4852240, 2907156, 1043140, -597537, 803159, 950262, 99858, 1034013, 107911, 2490007,
- -247497, -2101313, -2445984, 3612068, -3327526, 1869385, 597000, 289373, 2895345, 1296543,
- -543850, -3655554, 387621, -2207076, -537945, -804233, 1487132, 672699, 88584, 1506997,
- 1179505, -475131, 995896, 1450088, -3240553, 60666, -675384, 976568, -485868, 29528,
- 50466, 1358283, -537945, -1496259, 238371, 896574,
- },
- {
- -6869800, 40854804, 44023, 48129404, 3712999, 932545, 5403069, -2554432, 4202626, 10170483,
- 1760400, 1529008, 6505265, -2033130, -1692217, 1322850, -4241817, -5755793, 6201396, -342524,
- -10863046, 10960757, -4573067, -16236587, -5987722, 9588514, -1286343, 18836652, 10386305, -1493575,
- 3451006, -4931696, 4252018, -1274532, 10413685, -1020055, -25233, -6788196, -1739999, 5253819,
- 5983427, 2924336, 1283122, 1831267, -4482872, 2858301, 3263638, -662499, -7892540, 4078608,
- 3480534, -3127810, -7294465, -5287642, 2406256, -1258962, 1687922, 1961190, 151934, -1075352,
- 1986959, 571231, 1939178, 1378685, -2911988, -107911, 547608, -4246649, -1817308, 1322313,
- -572304, -818728, -2614561, 1970853, 2851322, 3338263, -2508798, -440234, -2505040, 1197222,
- -2210298, 1061394, 24159, 99858, -2856153, 218506, 190589, 1846836, -370441, 1663763,
- -383863, -1457605, 320512, 838056, 1292785, 536334,
- },
- {
- 8590, 8035884, 10741713, 1102733, -3884261, -535797, 336618, 2062658, 3326989, 2083059,
- 4079682, -13360033, -8660265, -17907866, 32016296, 5316633, 3629247, -14127758, -2754148, -8634495,
- -4976257, 3762928, 13329968, 13852343, -1647120, 2291902, -2480344, -3088618, -5195837, 7732015,
- 4323959, 5389647, 1136019, 1628866, 2677375, 813359, 4196183, 1106491, -2223719, -5223754,
- -1030792, 164819, -4989679, 1523103, 2313377, -3139621, 1277216, 537945, -2278480, 812823,
- -944893, 890132, -2219961, 3345780, -1011465, -2140504, -6003291, -1152125, 2156074, 3520263,
- -4100083, 734439, -2541010, -499290, 839129, 134218, 1766305, 1152125, -329102, 1804423,
- 313533, 1821603, 286152, -746787, -1653562, -396211, 3001109, -722091, 89121, -2456185,
- -1476932, 1356673, -828929, 1938641, -92879, -1472637, -423591, -923418, -447750, -1488743,
- 794032, 657667, 450435, 991601, 229244, 98247,
- },
- {
- 555661, 80521512, -4786741, 63122060, -4601521, -1675574, 5242545, 1433445, -9195525, 13478144,
- -2238215, -11199664, 17849884, 1126892, 16055125, 11900281, 16445967, -7672422, 2359011, 8826158,
- -9361418, 10993506, 1722282, 22278532, -6708202, -2695092, -6321118, -4469987, 1629403, -1433982,
- 951872, 5883032, -5573257, -5473399, -3009162, -5849746, 2610266, 1629403, 748935, 2221035,
- 2181844, 1363652, -2819109, -108448, -2007897, -7271380, -4460324, -517007, -4117263, 669478,
- -3968550, -4529580, 8085813, 779537, -102005, 1733019, 2333241, 1086627, 2570001, -1866163,
- 1432909, 5133560, -2702071, 1681480, 2768107, -1762010, 1302449, -643171, -981937, 2095944,
- 2124935, 890132, 1471026, 543850, 1473711, 282394, 326418, 2476049, -1629940, -501974,
- -544387, 544924, 1871532, -1535988, 1184874, -486942, 2316061, 210990, -2222109, -412317,
- 1104880, -446677, 796180, 521839, -529355, -851477,
- },
- {
- -421981, 33929704, -5997385, 8229694, 9929428, -1296006, 4783520, 2108829, -6881075, -4426501,
- 7240241, -2981244, -5334350, 8051990, 19224810, 8607651, -9263171, -10003516, 343061, 16360604,
- -2297271, 3478387, -12481175, -339839, 3673271, -19408958, -8283382, -4157528, -9814537, 12805982,
- -19658602, -8730595, 8547522, -814433, 12178380, -2776160, -16139413, -1766305, 3597035, 1489280,
- -5767604, 4995047, 2230699, 7566659, -4504884, -1298691, 2651069, 3218541, 2705830, 6272263,
- -8032663, 5544803, 1766305, -1730872, 2833605, 2729989, -2663417, 857383, -637266, 333397,
- -222265, -2238215, -476205, 4242891, -3817689, -25233, 977105, -1108102, -2188286, -1465121,
- -2571612, 479963, -3332358, 65498, -925565, -1109175, 1159104, 3821984, 2415382, 599685,
- 1546725, -581431, -2202781, 772020, -39728, -1027571, 943282, 1474248, 781684, -335544,
- 415001, 1566053, -306016, -1013075, 1922535, -1594507,
- },
- {
- -10428717, 112048720, -2241436, 78006808, -4555887, -9418326, -492848, -12322261, -2214056, 1964948,
- -14054207, -5851893, 8572755, -14697378, -15470472, -2349884, 5437966, -9571871, -8099235, -9190693,
- -9103183, -3381213, -4408784, -4479114, 3435974, 2544231, 3901441, 4153770, 1800665, -3298535,
- -3072512, -6722161, -14130442, -845572, -13458817, -1625108, 3000035, 8297877, -3748433, 4605279,
- 106837, -4372814, -3066607, 4906464, -2309619, 5306969, 1222455, -4184909, -2752000, 1697049,
- 1794760, -5849746, -4473746, 399969, 1447404, -3592203, -2149631, -588947, 3572339, 1173600,
- 328028, -1965484, -1128503, -5039608, -6055367, -3570729, 4196183, 1661079, 3741454, 787053,
- 404264, 643171, -221191, -5705327, 2426657, -1207423, -4603131, 546535, 2670396, 97174,
- 240518, 1722282, 2930242, -1166621, -2172180, -590558, -37581, 223338, -1461363, -292595,
- 546535, -736587, -478352, -565862, 777389, -70330,
- },
- {
- -1543504, -35333084, 625992, 5914707, -6172405, 12646531, 7489349, -15818901, -11777874, 11952894,
- 2210835, -5677410, -860604, -4839892, -5037460, -5793374, 7019051, -1979443, 2186138, 10092636,
- 4891968, 2148021, -10450192, -3716221, -4349192, -5114769, 1082332, -1235877, 460098, 14126684,
- -8304320, 3882651, 16652125, 2434173, -13422847, 1412507, 7939784, -552977, -1705639, 15873662,
- 12642773, -2653753, 191126, -7859254, -838592, 2212445, 1793149, -1918777, -468688, -4645007,
- 2850248, 1527935, -2811056, -2939905, -970126, -9575093, 585189, -545998, 1571421, -464930,
- 964220, 52613, -1914482, -3038153, 2238215, -841814, -1072131, 475668, 2434173, 731755,
- -785442, -748398, 2484102, -20938, -127775, 2106682, -2381023, 1115618, 4051765, 4801237,
- -1429150, -870805, -654983, 2461016, -1648194, -508417, 1151588, -267362, -749472, 645319,
- 591095, -1824824, 1666447, 314069, 405338, -827318,
- },
- {
- 9378598, -138181984, 11348377, -2073932, 11179800, -30580704, 43831752, -2158221, 2929705, -19864,
- -666257, -3810710, 24065238, 4854924, 12892418, -13875429, 13959181, 855235, 3692061, -6532646,
- -192737, -3167539, 6241125, 2833605, 4291746, -6134824, 6231461, -6704444, 8701604, 13383655,
- 87510, 6002754, 1357747, -10098542, -7217156, -2542084, -7795366, 1975148, 4515621, 754304,
- 8508330, 5165235, -1923609, 121333, 2565169, -5415954, -4744865, -6473053, 2501282, -5563594,
- 2748779, 1348620, 538482, -4674535, 1054415, 2448668, -712965, -791348, 260919, -2905009,
- 4857071, 1329829, -2884608, -3756486, -1520418, 1041530, -1467805, 2334852, -362388, -133681,
- -778463, -80531, -2178622, 727460, 1808181, 1213865, -1067299, 440771, 1516660, 868657,
- -2708514, 39192, -1478006, -2180233, 274341, 2410551, -1419487, -1188632, -91268, -461709,
- 1027571, 335544, 599148, 689342, -1816234, -495532,
- },
- {
- 1069447, -34568044, 372588, 4169340, -4484483, -1101122, -12209518, 3663070, -1101659, 2945274,
- -16574279, 6487548, 5913096, 13695577, 17222282, -7846369, 8925479, 15192910, -19535658, -4323422,
- -2129230, -103616, -2972117, 1368484, 18375480, 392453, 10694469, -2053531, -10070088, -4884989,
- -7886634, -5658620, -11026792, 10128070, -574452, -6025302, -221728, 5311264, 2401961, -2718714,
- -2579665, -835908, 4722854, 4481262, -716186, 5891622, 428423, -5940477, -1496259, 292595,
- -2330557, -3368865, -3043521, -327491, 1352915, 5790690, -6951942, -15032, -1412507, -2608119,
- 489089, 332323, -565325, 1843615, -671089, 1990181, 271657, -1880122, 2338073, -1073742,
- -808528, -192200, -1737851, 2924336, 974421, 755377, -1226213, -1005022, -1175747, -327491,
- -2348810, 3328063, -706522, -2595234, 944893, -1334124, 748935, 1568737, 675384, -1284195,
- 659278, 798327, -641561, -1722819, -712428, 1522566,
- },
- {
- 18575734, 2554432, -10027675, 12652974, -5210869, 25620016, -6183679, 12804371, -1899449, 4966056,
- -19053548, 9561134, -20956756, -13787919, 40802, -5761699, -347892, 11767137, -6208375, 4330401,
- 10129143, -567473, 8382166, 2857227, 1991791, 7668127, -4501663, -1872069, 3509525, 1265942,
- 6907918, -11630771, 13108777, 2379949, -3748970, 869731, 4981089, -732292, 6228777, 1765232,
- 8035347, -165893, -2451890, -4509179, -3322694, 1242319, -1909650, 188442, -9643812, -1247688,
- -4622459, -1807108, 4687957, 3934190, -3011846, 4612795, -674310, -2349884, -763430, -1642288,
- -3013457, -1341640, 665183, 537408, -2245731, 1851131, 1991791, -4879620, -5364414, -1964411,
- -2816962, 49392, 61740, -1007707, -431107, 1359357, 2647847, 2020782, -1559073, 306553,
- 2317135, 1353989, -557272, 1356673, 534187, 214748, -389231, -203474, -2747705, 1374390,
- -92879, 455267, -1080721, 763430, -725850, 485868,
- },
- {
- -3101503, 27545772, -5514738, -374199, -6332393, 5761699, 11090679, 2708514, 6798933, 2262374,
- 381178, -3194919, 4417374, 53789096, -36862092, -381715, 13995151, 16452409, 4672925, 12570296,
- -6505802, -7532299, -2937221, -9759239, -17507898, -3843996, -3517578, -6373195, -4398047, 3607773,
- 1002875, 9114457, 31675, -1607928, -3949759, 141197, 2799245, 4205310, -2893734, 2005213,
- -1126355, 1018444, -410706, -3934190, 1785633, 1666447, -3962644, 1426466, -3385508, 4362076,
- 1207423, -139586, -5724118, -9613747, -7316477, 2279554, -1730335, -1027571, 3538516, -1576790,
- 3272765, -657667, -4228396, 3975529, 4833449, 197569, -4472672, -521839, 3008625, -284542,
- -727460, -1640141, -3426847, 890669, -3103114, -210990, -1375463, 1696512, -1888712, -308701,
- 1950989, -368830, 1433445, 1197759, -698469, -690953, -721555, 1168768, 2121714, 459562,
- -1670742, 1085553, -1421634, 570157, -18790, -1372242,
- },
- {
- 9534291, 45748380, -3171297, -30621506, 2518462, 19943144, 13248900, 4379256, -5323612, 5367636,
- -3631932, -1022202, -17037062, 3813931, 45746772, 7330436, 4153234, 16689169, -1221381, 10007274,
- 1100049, 132607, 5122822, 2209761, -8138963, 7136625, 11238319, 2943126, 2712809, -12229919,
- 2956011, -11684995, 1369021, -1809792, 4938139, -7378754, 7552700, 571231, 3330747, -2165737,
- 6686727, -203474, 13225278, -1937030, -3674345, -3209951, -5120138, 2335389, 2976412, 2819646,
- -3413425, -1751810, -5228586, 5601174, -630823, 3868155, 3559454, 821413, -2244657, -3992172,
- -2487323, 269509, 4029216, 799938, -5014375, 821949, -49929, -2186138, -903554, 940598,
- 813359, 575526, 434329, 3875671, 595927, -824097, -1719598, 329102, -35970, -1965484,
- 1418950, -630286, -871342, 1611, 478352, 505196, -1557999, -326954, 1537061, -3134789,
- 1592896, 1295470, -501437, 835371, 1006096, 887985,
- },
- },
- {
- {
- 1968169, 37911676, -4532264, -9005473, 26009786, -527744, -6450504, -3251827, -9100499, 3974992,
- 121333, -7848516, -1990181, 9692131, 230318, 9660455, -3808562, -6896107, 1801202, -1799054,
- 16534550, 540092, -3971234, 8573292, -11667816, 3116536, -11417634, 6971806, 119185, 2092186,
- -9789304, -10280004, 3294777, 1168231, -3717831, -3165928, -595390, 6702834, 690416, 1526324,
- -3039226, 6607271, 9147207, -4114042, 2869038, 2019708, 6680822, 7039452, -2786360, -2453500,
- 2841658, 3192771, -2957622, -680752, 5657546, 1445257, -5505075, -486942, -93416, 1533303,
- 3223373, -2455111, 121870, -1436130, -811749, 477815, -3196530, 3380139, -753230, 1131724,
- -1419487, 1947768, 3417183, 31139, -1329292, -872415, -418759, -2152316, 218506, 2163590,
- 69793, 3227131, -1469416, 861141, -304943, -1907502, -692027, -354872, 1432909, 1196685,
- -119185, 781684, -624381, 639950, -727460, 513785,
- },
- {
- 2043868, 190358320, 19965156, 53814868, 9767293, 7145752, 15769509, -68719, 13427142, 9983115,
- -3948149, -36134632, -2856153, -4949950, 11701102, 4573067, -10218264, -8599061, -4228396, 1970316,
- 2168422, -2491618, 3116536, -4400194, 1648731, 2505577, -1122597, 3524558, 7756174, 610422,
- 217433, 1875827, 4038343, 8754217, 809601, -4034585, -5551245, -2199560, 1954747, 3299609,
- 361851, -5061619, 5430986, 649077, -2862059, 2594160, -4740570, 2234457, 2705830, 7416872,
- -2811593, -749472, -1264331, -6621229, -3409130, 2083596, 1294396, 2772938, -5081483, 1177895,
- -4205847, -469762, 1946157, -856309, -367220, 4143570, -4224101, 1160715, 1177358, 1297080,
- -2066416, 348966, 1671279, -763967, 1819992, -3602941, 482647, 1051193, -945967, 205085,
- 329102, -1549410, -180389, 556198, 1320703, 1898912, 1435056, 505732, -1351304, -796716,
- 882616, -8053, 1695975, -381715, 1405528, 625455,
- },
- {
- -5552319, -112415400, 12339441, 614180, -30407832, 6821482, 7882876, 8053601, -2807835, -4105989,
- 858993, 34320008, 9681393, -367757, 13808857, -1073205, -628139, 2590939, 15553150, -8288750,
- -9208410, 11718281, -3153043, 6745783, -9116605, -7006703, 557272, 2678449, 3509525, 3671660,
- 3291556, -2877091, 8829916, -3952981, 2847027, 12119324, -15141907, -7611219, 5107253, -5009006,
- -8479339, 445603, -2865280, 3971771, -547608, -1219234, 2833605, -2713346, -8000987, 5338108,
- 2530273, 1678259, -411780, -4627291, -1399086, -4550518, 1205275, 1878511, -418222, 4035122,
- 1439888, -4735739, 566399, -3746822, -2047089, -4308389, 5178120, -2215130, 336081, -301721,
- -682363, -3452617, -2229088, -2884608, -2083059, 62277, -1041530, 2469606, -1343251, -2334315,
- 2469069, 1768990, 410706, 1255741, -296353, -518080, 1555315, -103616, 1332514, -84289,
- 1049583, 1313186, -472983, 316754, 70867, 772020,
- },
- {
- -1738925, -12582644, 13608067, -7244536, -1539209, 739808, -776852, 6194417, 1437740, -1551020,
- 5077725, 2035278, 7235946, 2081985, -15410880, 10093710, -327491, 7127498, 8577050, 201863,
- -162672, -570694, -11989938, 4136054, -8300025, -10224707, 12409771, 4723927, -1897839, 8964134,
- 5495948, -2406792, -5129802, 6449967, -5009006, 17813914, 5609764, 716186, -13236015, 8624831,
- -6301791, 4864588, -2016487, -1071058, 620086, -3809099, -99858, 66035, 3848828, 550830,
- 1358820, 2027225, -1341640, 1242319, -1543504, -3747896, -1136019, 1289027, -656593, 3260954,
- 4136591, 1395328, -1594507, 2161979, -5103495, 1642288, 2437394, 507880, 3160022, 1200443,
- 1476932, 2259690, 3123515, -4245039, -1086627, -215822, 2146410, 285078, -1242319, 1782948,
- 2654290, 263604, 588411, 1415192, -960999, 1360968, -23085, 2848100, 383326, 251792,
- 548682, -553514, -673236, 834834, 1368484, -575526,
- },
- {
- -3909494, 33703144, -1854352, 47809964, -3721052, 681826, 10075993, -893353, -3822521, -9172976,
- -23154706, -8981850, 8323647, 1773822, 10201084, 14192719, 3877282, -12841952, -16895864, -12072079,
- -17943836, 6387153, -6908992, -15352361, -1883880, 12537546, -8931384, 2095407, 2037962, 7201050,
- 6485938, -8090108, 2435783, -6364068, 9419937, 2528125, 3204046, -8602283, -10514080, -78383,
- -1028108, -1319629, -1039919, 5218386, -2008971, 1001264, 10307922, 4211216, -6298570, 2554432,
- 638340, -5754720, -4565550, 1323387, 6379100, 1122597, 770947, 2684, 783832, -2794413,
- 549219, 4216048, 4854924, -892279, -5370320, 1874216, 928250, 209380, 999117, 1912871,
- 1115081, 1189706, -1282048, 179852, 339839, 3099893, -1791001, 259309, -2743947, 209917,
- -1695438, 838056, -126702, 1279363, 71941, 1350230, -1261647, -317828, -1722819, 1067836,
- 303869, -104153, 1204202, 640487, 387084, -644782,
- },
- {
- -1373316, -16004122, 339839, 7123204, -2927020, -1862405, -465467, -1392643, -1382443, -2610266,
- 4105989, -7655243, -1372242, 947577, 47097000, 2542084, -4096862, -8375723, -7882339, -11644730,
- 7408819, 8273181, -3763465, 321586, -1007170, 2346126, -10525891, -4232691, 3769908, 6846715,
- -10441065, -12406013, -7394860, 191663, 4511327, 6722161, 1648731, -2697240, 188442, 995896,
- -6111739, -5514738, 549756, 2194728, 3130494, -3677566, -1731409, 1661616, -1845225, 3861713,
- -579284, -284542, -1587527, 6015102, 195421, 284542, -2462090, -176631, 1912871, 4577362,
- -1824824, 2353642, -1449552, -4614943, -1217623, 662499, 1369021, -606127, 818728, 4217121,
- 155156, -785979, -51003, 1130113, -624918, 714575, 1160178, -3420405, 750546, 529355,
- -40802, -529355, -3211562, 1169305, 113817, -1472100, 1071594, -856846, -1795833, -1888175,
- 776315, 1480690, -100932, -892279, -1088237, -296353,
- },
- {
- -16930762, 62250184, 4119411, 61998928, -7750806, -2100776, 13135621, 15557982, -7445863, -81068,
- -775778, -1195075, 16988744, -2486786, 12572980, -746787, 399969, -17035450, -2564096, 2578591,
- -8250096, 17197050, -2343979, 6101001, -11489574, 583579, -9670119, -9658845, -1253594, 2623151,
- -7415798, -5150740, -4695473, 1695438, 4532264, -4377646, 2816425, 3879429, 2316061, -42413,
- 488016, 6083285, -168577, 719944, 1652489, -3755412, 732292, 1500554, -6739878, 2369748,
- 1025423, -4471061, 7959648, -1160178, -2717104, 2579665, 2459943, 959388, 2706366, -2911451,
- -63351, 1512902, -4191351, 537408, -2104534, -3431142, 3576634, 2316061, -461709, 919660,
- 1095754, -818728, -1127429, -94489, 1459752, -1144072, -1007170, 697932, -173409, -602906,
- -1372242, 249645, 2093260, -215822, 2438468, -2360622, 233002, -214212, -845035, 1240709,
- 756451, 397821, 1480690, -238371, 169651, 93416,
- },
- {
- -2711735, 17519172, -12557948, -3876745, 560493, -1733556, 2874407, 261456, -6416681, -200253,
- 12243878, 2004676, 102005, 8318815, 17634598, 436476, -12725988, -2833605, 6044630, 17535814,
- -5937793, -2528125, -10725070, 6803765, 9325985, -17665200, -15278272, -51003, 1313186, 4895726,
- -19978040, 5728950, 14353244, -958851, 9526774, 3604015, -7941932, 9479530, 7072738, 1536525,
- 927176, 3544422, -5557688, 2753611, -5711770, 1023276, 4788889, 2146947, 3863860, 4685273,
- -8771934, 3183645, -4057670, -4843113, -386547, 488016, -2783676, 826244, 2334852, 3473555,
- 1821066, -1408749, -2074469, 4095251, -775242, 2535641, 754841, -1152125, -142271, 244813,
- -2794413, 99858, -4217658, -867047, -336618, -822486, -923955, 1207423, 2092723, 932008,
- 2269353, 1185411, -1091995, -587337, -1366337, -820876, -186294, -425202, 1181116, -54761,
- 589484, 270583, -823023, -595927, 1435593, -886911,
- },
- {
- -6248641, 131025496, 8307004, 64698312, -11713450, -2466922, 11022497, 7632157, 12740484, -4081293,
- -5101885, 6858526, 18210124, 6923488, 5624260, -3192235, 8312909, 7296613, -2457258, -882616,
- 3313567, -1205812, -9253507, -6403260, 8113193, 2435783, 2951716, 3474629, 1485522, -4781909,
- -1080721, 5573257, -818728, 5493263, -6925635, 3522947, -214212, 5313412, -8734890, -4616553,
- -4148402, -2544768, -1814087, 1715839, -1910187, -682363, -5982353, -1413044, -6108517, -9667971,
- -3322157, -5745056, -3364570, -2191507, 383326, -1597728, 1557463, 1762010, 6014565, -345745,
- -2086280, -554588, 129923, -5061619, -3642132, -3672734, 1132261, -1881196, 99858, -2398202,
- -313533, 866510, 180389, -5648419, 1110249, -376883, -3077344, 658741, 1665911, 1799591,
- 2071248, -68183, 2025614, 605590, -1347009, 831076, 539555, -773094, -2012192, -586800,
- 998580, 459562, 885837, -1382443, 260919, 934155,
- },
- {
- 1586990, -54997592, -28629178, -741419, -5719286, -5528160, -7774428, 404264, 4170950, 17575006,
- 7827041, 10302016, 15638513, 3261491, -7874286, -4093104, 4337917, -6876780, -163746, 6263673,
- 8216273, 9709310, -7204271, -2163590, 7233799, -2127620, 4918275, 383326, 1096290, 10025527,
- -13135621, 7833484, 10185515, -6476811, -7614440, 637803, -5172215, -10158671, -5240397, 4757750,
- 5602785, -3107946, 2543158, 294742, 2148021, -420907, 464930, -2334315, 6025302, -3461207,
- -3718368, -5238250, -4474819, 1283658, 1872069, -4798016, 317828, -2155000, 2346126, -2415382,
- -1176284, -1675574, 943282, -1379758, 335544, 563714, 55835, 312996, 37581, -408559,
- 111132, 501974, 2575907, -1846836, -2474975, 1105954, -1454383, 922344, 850940, 3482145,
- -1239635, 1206886, 626528, 492848, -3278671, -2098092, 635655, -607738, -2147484, -1694902,
- 104153, -2057289, 118112, -6442, 703838, -840740,
- },
- {
- -5980205, -139731936, 45206680, -1411971, -5456756, -49499500, 32278290, -149250, 6321655, 10017474,
- 1934883, -6897718, 7009924, -18486612, 4617627, -7385197, 19434728, 17863306, 10460393, -9979893,
- 817118, -1802813, 4183835, -1907502, 606664, -3748433, -1609539, -10846403, 1483911, 8199630,
- -1314260, -646929, 3020973, -7752953, -3875671, 7271380, -3813931, -1479079, 4377109, 1940252,
- 4562329, 3564823, -574989, 2588255, 1893544, -4181688, -816044, -7854959, 2739116, -1820529,
- 2824478, -4179540, -2121714, -1287953, 3544959, -1661079, -3375844, -3792993, -828929, -2126009,
- 1156957, -1762547, -2807835, -779000, 1050656, 3618510, 647466, 114354, -222265, 1453846,
- -900869, 97174, 192737, 102005, -603443, 337692, -2452963, -469225, 1319092, 2936147,
- -1350230, 49929, 165893, -1321239, -6979, 594853, -1718524, -1282048, 409096, 570157,
- 10737, -2160906, 17180, 2058900, -421444, -511101,
- },
- {
- -1327682, -39150236, 4840965, 12226161, 4460324, 2974802, -9696426, 6118181, -1885491, 1754494,
- -14452028, 1859721, -11251741, -7623030, 17785996, -15380278, -4456566, 5594195, -24794310, 245887,
- 5706938, 709207, -11274289, -9019431, 6000070, 3786551, 15280420, -3211025, -4338454, 1287417,
- -3863860, -2656974, -8159901, 13437342, 1064615, -5509906, -8092256, -14960982, -9542880, 622233,
- 8625368, 1243930, -6057515, -1892470, -1290101, -417149, -1559610, -2149094, 901943, 2597918,
- -2253784, -2638721, -637803, -48855, 1445257, 4858145, -4409858, 7926362, 5739150, -248571,
- -3961034, 1296006, 1357747, 1923609, -1444183, 906775, 2546916, 432181, -206158, -1192390,
- -559420, -626528, -2229625, 168577, 1047972, 2602750, -2492155, -1002338, -45634, -1358283,
- -2350421, 1923609, 129386, -1954747, 1074, 651224, -685047, 774168, 1023813, -668404,
- 1034550, 210453, 158377, -244813, 188442, 1382980,
- },
- {
- -21053930, -43906912, -5141076, 13419625, -5768678, 12824235, -19304804, 11777874, 11429982, 8313446,
- -32901060, 13128641, -528818, -2323577, -4547297, 6934225, 11145977, 3482145, -11036992, -3953518,
- -4706748, 120796, 1530619, 5983427, 4866735, -9746891, -11754252, -7631620, -13146358, -2927020,
- 11684459, -19792284, 3668976, 6894497, 2759517, 4271882, 6704444, -5047661, -3759707, -6059662,
- 10828149, 9089225, 214748, -1195075, -1299228, 5781026, 3727495, 4352950, -8021389, -3432216,
- -4692789, -4971962, -1461900, -2150705, -9393630, -4656819, -5142150, 663572, -347355, 417149,
- 1641751, 1443109, 3381750, 901943, -3313031, 3219615, 5389647, -2838974, -5375689, -1878511,
- -1859721, 2456185, -615791, -2731599, -904091, 685047, 2721399, 238908, -1054951, 1816771,
- 1870995, 2404108, 760746, -244276, -1586990, -296890, 305480, 625992, -3149285, 624381,
- 97711, 733903, -11811, 75162, -2069101, -1534377,
- },
- {
- 4138201, 42913164, -3671123, -1762010, -1622961, 6845104, 6645925, -1412507, 2956011, 3004330,
- -5439039, -2841121, 7779797, 20439212, -67007932, -4454955, -1279900, 13670881, -12694850, -9570261,
- -726386, -336618, -3684008, -6093485, -12217571, -1400696, -6636262, 3034931, -6308233, 2675228,
- 6168110, 13154411, 2318746, -1701881, -308164, 12177843, 5961952, 1461363, 940061, 1624035,
- -4561256, -1974074, -3990025, 1930588, 2905009, 1103807, -2336999, 2909840, -2440615, 4736812,
- -149787, -2331094, 4706211, 609885, -4769561, 4710506, -1805497, 2366527, 3751654, -5228049,
- 494458, -930397, -757525, 7543037, 3479997, 1462973, 1558536, 2719251, 4872104, -1849520,
- 315680, 3696356, -600222, -366146, -5037997, 1801739, 989453, 830539, -4259534, -1083942,
- 646929, -55298, 1240172, -938987, 550293, 2238215, 2041183, -521302, 1780801, 2232846,
- -3424163, 1162862, 430570, 1600412, 1449015, -1263257,
- },
- {
- -18571976, 20185272, 23265838, -19611894, 1984275, 6010270, 2138357, 3511136, -8849243, 3805878,
- 8041253, 56908, -17197050, 5804112, 43861280, 3751654, -4489315, -3002719, -20086488, -972273,
- -7985418, 8307004, 9951976, -2763812, -10166724, 7095286, 1200980, -10549513, -6053757, -11759084,
- 467615, -12057584, 7892540, 3684545, 3322694, -6953552, 3790846, -255551, 5687611, -6649146,
- 941135, -4385162, 8241506, -2158221, -5989332, -4930623, -7961796, -4825396, -6809134, -2153926,
- 315680, 1530619, -8202851, 7866770, -456340, -2813204, -964757, 2715493, -836445, -5869610,
- -1613297, 3534221, 4475893, 1739462, -803696, 2017024, -748935, -75162, 373662, 1504312,
- -1080721, -753767, -1539209, 796716, -630823, -1772211, -1865626, 1338956, -492311, -2198487,
- 2251100, 323196, -1550483, -460098, 282931, 345745, -307090, 23622, 1640678, -1242319,
- 2159832, 1525787, 426276, 540092, 525597, 752156,
- },
- },
- {
- {
- -1199907, 7886097, 16495896, 28274306, -13778255, 2535641, -5597416, -2557116, -6295885, 2521146,
- -4835060, -9968619, -2599529, 8355322, 13087839, 2055679, -24565066, -5636608, 13564580, -2028835,
- 10472204, -700080, 1357210, 7126962, -10522670, 5951214, -17942226, 11729556, -2926483, 579284,
- -1867237, -13240310, 4105989, -157840, -2047089, -2152316, -4002373, -586800, 7627862, 1280974,
- -3193308, 8779450, 4784057, 761283, -2507724, 1359357, 15099494, 3252364, -6762963, -635118,
- 2178622, 7406134, -4677220, 4603668, 6056441, -828392, -4988605, 1851131, -1945620, 2644626,
- 485868, 1277753, -329639, -3833258, -507343, -1291175, -813359, 1253594, 1804960, 2491081,
- -958851, 1984812, -2177549, 4112431, -2149094, 295816, -995896, 1142998, -2859375, 2081985,
- 955093, 1661079, 1085553, 722628, -2377265, -1240709, 559956, 99321, 755914, 1229434,
- 1115618, 302258, -66572, -1039382, 126702, 1016834,
- },
- {
- -3462818, 249409824, 2187212, 70927088, -11260331, 6198712, 8661875, 9023726, 8841190, -1926830,
- 3474629, -25819196, -9657234, -1498407, -512712, 10708964, -249645, -9191230, 1978369, -2193118,
- -2091112, -1735704, 4243428, 57982, -418759, -7662759, 1378148, 4013110, 12816182, -1719061,
- 837519, 7128572, -3477313, 8341364, 5864241, -4898947, -1712618, -1343251, 1330903, 468151,
- 2171643, -900333, 8242042, -5711770, -457951, -5917928, -267899, 5070209, 5833640, 2092186,
- -790274, -280784, -318901, -9771051, 16643, 5735392, -5129265, -89121, -1833414, 386547,
- -1059783, -1238024, 1818919, -560493, 2406256, 957241, 545461, -1645509, 274341, 1890859,
- -1942399, 42950, 1624571, 628676, 907849, -177167, -826244, -1016834, -1848983, 222801,
- 1910187, -1367410, -801011, 637266, 1017907, 1881196, 1999307, -1032940, -1611, -502511,
- 853625, 1606855, 1026497, -807454, 926639, -259309,
- },
- {
- 6969122, -95834680, -19422916, -38830800, 15126338, -3598109, 10581726, 745714, 3488050, -10929081,
- 1845762, 26203058, 9502078, 3372086, 2088428, 9710384, -3619047, 8428873, -3504157, 6136972,
- -7858717, 1276142, 1722282, 5700496, -4150549, -7140383, -7691213, -1430224, 11709155, -4213363,
- 8659728, 3791919, 1749662, -5579700, 9853192, -3940096, -1967095, -7144678, -3162170, 13959,
- -6561637, -2842732, 2009508, 660888, 1985349, 1552631, 1235877, -2326262, -6861747, -243203,
- 10529112, -2401961, -646929, -3711389, 501437, 742493, -1056562, -590558, -743566, 5078262,
- 1184337, -5235029, -1990717, -3377455, -2230699, -1155883, 2410551, -2320893, -1891933, 1176821,
- -759136, -3656628, -3164317, 556198, -1221918, 683437, 98247, -120796, -60666, -2468533,
- 2093260, 1807108, 2022930, 3758, -149250, 229781, 1249836, -738734, 2037425, 740882,
- 1481227, -172872, -502511, -1056562, 1867237, 1152662,
- },
- {
- 2202245, 3486977, -1862405, -3917547, -2212982, -1279363, 3240553, 2679523, 2372970, 3881040,
- -3905736, 7507066, 4769561, 6272800, -16746614, -8552354, 13774497, 21826486, 7161858, -5820218,
- -1112397, 3117073, -7027640, -13036836, 4173635, 7955353, 1184874, -2161979, 1427003, 3644280,
- 7234873, -11740830, 8246874, -5359583, -2029372, 8735963, 17080548, -1000191, -2585570, -1609002,
- 5118528, -1659468, -7670275, -1663763, 1889786, -592169, 23085, -442382, 5620502, -732829,
- 1078037, -3764002, 3271691, 4721243, -4444218, -1515587, -2603287, -1344862, 1950989, 1589675,
- 3318936, 1078037, 1034013, 1173600, -1270774, -227633, 2647847, -2242510, 3655017, 2490544,
- -658204, 3530463, 1192390, -522912, -2699387, 1877975, -100395, -676457, 515396, 545461,
- 1715303, -226023, 864899, 410169, 404801, 311385, 1860795, 2661806, -663572, 569620,
- 2268280, -725313, -1168231, 749472, 921807, -1565516,
- },
- {
- 16281684, -4242891, -4405026, 45101452, 6790344, -949725, 2449205, 3577708, -9620727, -3874061,
- -27844810, -10298795, 21056078, -4854387, 17097192, 9424769, 157840, -14992657, -15583215, -19238232,
- -5622112, -3777961, -15333033, 1901597, -6686191, 9805947, -11553462, -935229, 5279589, 10900627,
- 72478, -375810, -2395518, -5818070, 2012729, 10401874, -10646150, 10102837, -13162464, -2719788,
- -3720516, -423054, -1644973, 4444755, 4254165, -4584878, 8621610, 3872450, -4127464, 1575716,
- -1481764, -5590437, 890669, 1151588, 3719979, 1568737, -1519345, 1429687, 175557, 2102923,
- -7478075, 4352950, 4361540, 1842004, -5651103, 6104223, -4481799, 2564632, 2299955, 1038308,
- -1443646, 1797444, 2018635, -330176, 756451, -780073, -1051193, -1029182, 591632, -2018635,
- 418222, 234076, 1648194, -2603287, 3017752, 1611150, -767725, -2120103, -2029372, 1191317,
- 215822, -841814, 1434519, 1508070, -1154809, -85362,
- },
- {
- -102005, -25512106, 1700270, 6191196, -492311, -1865090, -1006096, -1273995, 25233, -2863133,
- -1121523, -3721589, 2967823, 10693395, 26499948, 2380486, 820339, -4330938, -6171331, -3749507,
- 9607842, 4126927, -6666863, -878321, -4808216, 1174674, -3857954, -15037217, 12844637, 3204046,
- -5567888, -3602404, -10897406, -3006477, 2230699, 10728828, -3965866, -5055714, 3999688, 305480,
- -7907572, -3994857, 1196685, 3711926, -858457, 2782602, -4380330, 1319629, -1880122, 1455994,
- 1409286, 118648, 3070365, 3405909, -2895345, -1965484, 2505577, 27380, 4567161, 456877,
- 1241246, -348966, -935766, -4748623, -375273, -270583, 1316944, -3376918, 4607426, 1111323,
- -1312649, 1629940, 468151, 1443109, 10737, -891743, 1748589, -2440078, 1059246, -777389,
- -90194, -466541, -3187403, 852551, -242666, -1034550, -172872, -264141, 146566, -1287953,
- -535797, 842350, 665183, -1983738, -457951, -411780,
- },
- {
- 32663226, -14175540, 7279970, 51556252, 8069170, -3136937, 6932077, 10026601, 8668855, -9522479,
- 13014825, -2215130, 13817984, 4036196, 7700340, -5799817, -11963631, -16536698, 3056943, 4781909,
- 573378, 926639, 6507413, -9496173, 3059091, 4232154, -5845451, -13984950, 2002529, -3311957,
- -3274913, -5822902, 1285269, 1129040, 4338991, -2986613, 733366, 3464428, 692027, -1186485,
- 3924526, 1680406, 2312840, 4157528, -577673, -5636608, 10902774, -3114388, -7735773, 823023,
- 2805688, -4302484, 4868883, -876173, -343061, 657130, 2982855, -485331, 2735894, -1072131,
- -1851131, 1072131, -6721087, 4207994, -4268661, -363998, -1256278, 4185983, 174483, 62277,
- 1487132, -584652, -1183800, -1116692, -82141, -602369, 380641, -92342, -392990, 422517,
- -417149, -904628, 453656, 1788317, 315680, -2119030, -416612, 86436, 462783, 2695092,
- -446140, 1006096, 385473, 176631, -115427, 905701,
- },
- {
- 796716, -15107547, 4886599, -5568425, -4010963, 1586990, -1044214, 1007707, -5366025, 1875290,
- 7873749, 4796942, 11591580, 9006546, 100395, -8793409, -2477659, -4835597, -759672, 17357036,
- -2644626, -9983651, -3398930, 255014, 8901857, -19689204, -13092134, 5095442, 12569222, -6442988,
- -18059800, 15380278, 805843, 4125316, 6839736, 359167, -9689983, 17185774, 1671816, 231391,
- 8658654, -5993090, 5578626, -6476274, -2182917, 1911797, 4212826, 790274, 2586644, 5776194,
- -4406637, -2128156, -2647847, -3869229, -1135482, -316754, -3543885, 2726231, 1093606, 4716411,
- 1134945, -8590, -1043140, 2482491, 3119757, 2189897, 675384, -1355599, 354335, -144418,
- -5858873, 504659, -797790, -2632278, 429497, 339839, -890669, -438087, 1722819, 1535988,
- -76236, 1230508, 932545, -2512019, -306553, 168041, -550293, -1652489, 769336, 227096,
- 768799, -1627793, 613107, 1263257, -796180, -484794,
- },
- {
- 28493886, 101802536, -13259101, 59931972, 15812459, -10063108, 7876970, 7633231, 21943524, -10306311,
- 11698954, -3141232, -2008434, 13982803, 13329968, -2908767, 9681930, 2400350, -3979824, 4640176,
- 6714108, 2001455, -8509404, -4626754, 13365401, 2631741, -3440806, 707596, 1188095, -1669669,
- 6937983, 3709241, -1790465, 5060009, -773094, 622233, -3161633, 3961034, -280784, -11562052,
- -9654550, 1413581, 4376035, -1080184, -7387344, -768799, -2874944, -3894999, -1822140, -10906533,
- -5596880, -3926674, 2809982, -8086887, -3413425, 83752, 559420, 2713346, 2271501, -836445,
- 952946, -384400, 2517925, -4654134, -5449777, 105227, -3851512, -1611150, -442382, -3107946,
- 2704756, 374736, 483184, -3744138, -2367064, -21475, 43487, -1784022, 1180042, 3168612,
- 4172024, -1000727, -457414, 4139812, -2453500, 684510, -651224, -1539209, -331249, -1003949,
- 424128, 758599, 867047, -1023813, -144418, 1203665,
- },
- {
- -610422, -53592600, -23914914, -5643587, 3255048, -16925392, -9746891, -2256469, 10953240, 11019812,
- -2474438, 24508158, 11791833, 12558484, -10232760, -6284611, -8201240, 5543192, 5372467, -7624104,
- 20554640, -2226941, 5018670, -10273025, 14129906, -2276333, -1528472, 1818382, 7951058, 4604742,
- -12702903, 3394635, 16649978, -11579232, -4922033, 4810364, -17810156, -2328946, 1282585, -6673306,
- 1647657, 1561221, -1600949, 3917547, 4851166, -1009854, -1276142, -614180, 9406515, -4679904,
- -6770479, -5966784, -4380867, 10380399, -4560182, 2124935, -591095, -570694, -1765232, -1258425,
- 287226, -1600949, -871878, 2994666, -2429341, 2077154, -2410551, 507343, -1425929, 2094333,
- 788663, -328028, -1483911, 2050310, -3307125, -1276679, 2273112, 853088, 627602, 1966558,
- 30602, -601832, 277562, 402653, -2367601, -1379758, -243203, -869194, -2617783, -2726767,
- 541166, -594316, -497142, -1403917, 798864, 613107,
- },
- {
- 2032056, -144386592, 38611220, -1897302, -16852378, 9129490, -15853261, 8146479, 1974074, 2428804,
- -3100430, 11533598, -8829916, -7092602, -1382443, -6284611, 9250286, 27839442, -5365488, 1098438,
- 3055332, 8267812, -4443144, -1365800, -10833518, 4930086, -4096862, -6170795, -10650982, 5172215,
- 8638790, -10284836, 3765076, -5913633, -2072859, 6370510, 1859721, -5847061, 4939213, 6210523,
- 430034, -542240, 2597918, 4350265, -2953864, -2226404, 70330, -4685273, -410169, -1356673,
- -2034204, -3859028, -351114, -3388192, 4303021, -1661616, -2953864, -4398584, -278636, 2226404,
- -4677220, -3405372, 1574642, -51540, 852014, 3022046, 1997697, -3663607, 1741072, 707596,
- 1961190, -2010045, 3179887, -2573759, 843961, 887448, -2332167, -782758, -19327, 2164664,
- 173409, 3221, -450435, -93416, 827318, -1365263, 149250, -1225139, -1307818, 1336809,
- 54761, -1997160, 1254667, -418759, 575526, -893890,
- },
- {
- 2232309, -28723130, -3317862, 2042794, 13741748, 2742337, -4616553, -54761, 1418950, -5132486,
- 649614, -8803072, -7850664, -19925428, 17279728, -7929047, 2425583, 3230889, -26272314, -7078643,
- 11205570, -4500052, -13760538, 4622459, -647466, -1382443, 24089934, -5704254, -2594697, 7217156,
- -10246718, 1533840, -6780143, 12552042, -1072131, -9139154, -1894618, -10424959, -14219563, 176631,
- 12864501, 812286, -3937948, -6194954, 72478, -3628711, -7635378, 5179194, -2081985, 1947231,
- -421981, -726923, 1577864, -2768107, 595927, -869731, 1678259, 8737574, 5877126, 2592013,
- -5518496, 3572339, -1648731, 5720897, -2375654, -278636, 3469260, -1612760, -1014686, 1116155,
- -884763, -2513093, -1925756, -729071, 2197950, 1152125, -2632278, -920197, 472446, -1042603,
- -851477, 1611, -520228, 575526, -2891050, 1144609, -450435, 1385127, -726386, 1745904,
- 565325, -1265942, 33286, 59593, 897111, 519154,
- },
- {
- 12639552, -90119688, -5200132, 26521424, -20492900, -17553532, 5561983, 2777770, 11700028, 8316668,
- -25083682, 7031399, -739808, 12352326, -5753646, 576063, 18194018, -9137006, 1409823, -439697,
- -17514876, -1307818, -3287261, 9118216, 1836635, -6217502, -9790378, -5852967, -17745732, 3704409,
- 2962454, -9732933, -314069, 6904697, 7291781, 787590, 1450625, 1828582, -8197482, -1936493,
- 1209033, 9769977, 5076652, -36507, 441308, 2674154, 4510790, 2326262, -2368675, -384400,
- -9008694, -3184182, -2250563, -7999914, -5277978, -6430640, -7006166, 2225867, 423591, 3517041,
- 63351, 3432753, 2217814, -976568, -513785, 4045859, 559956, -481036, -3120831, -709743,
- -1884954, 2156611, -979253, -4274030, 934692, 216896, 1335735, 193274, -448824, 1275605,
- 2181307, 1593970, 2858301, -934155, -2311229, -1407139, 2745021, -361851, -2914672, 311385,
- 2102923, 130997, 211527, -2539400, -1073742, -1645509,
- },
- {
- -4067334, 53679576, 3758, -2449742, 3281355, 8425115, -6098317, 2529736, -4087735, 6272800,
- -5890548, -4002373, 10846940, -35004520, 13346611, -11267310, -5273683, 6401112, -7779797, -8906152,
- -10152766, -2379412, 8550743, -7100118, -14796162, 6680822, -9731322, 12773233, -19349364, 2316061,
- 7303592, 9640054, 6914361, 6952479, -6919193, 12163884, 6191196, 1733556, 423591, -12538620,
- 1900523, 1038308, -6483790, 3882114, 4450660, 1432372, 1484448, 2774012, -2367601, 4217658,
- -1642825, -9039296, 8227547, -57445, 1168768, 5495411, -3804804, 601832, 96100, 673236,
- -1478006, -1387811, 3093987, 4618164, -262530, 4236985, 1889249, 4158602, 2724083, 1678795,
- -1882269, 4547297, 614180, -1591822, -2975339, 39192, 1321239, -261456, -2130304, -826244,
- -1095217, 957241, 659814, 4295, -532039, 593242, 3505767, 496069, -1337882, 2760053,
- -2116882, 326954, 104690, 1076963, 1923609, -1098975,
- },
- {
- 21107616, -31886374, 27006754, -17996986, -9289477, -5534066, 10402411, 5592585, 4794794, -10137197,
- 17999134, -13991393, -6247030, 27954868, 3573950, -10216653, 10072772, -15424838, -1328219, -4807142,
- -14323179, 14840186, 8181913, 5995238, -9927280, 4887136, -7598871, -13023951, -10088878, 8412230,
- -7284265, -3534758, 1460289, 10211822, -7807714, -1511292, 2542084, 10857140, 3100430, -8037495,
- -5504538, -6515466, 505732, 6174016, -8581345, -5835250, -6970195, -7952132, -5647345, -324807,
- 4460861, 395137, -3633006, 3235721, 4406100, -4501126, -5738077, 76773, -678068, -3977140,
- 1371705, -318364, 3915400, 625992, 3754338, -266825, -3401077, 2943663, 96637, 1312113,
- -3753265, -2144263, -197032, 199716, -332860, -1751810, -2732673, 2024540, -1430761, -146566,
- 2146410, -110059, -782221, -110595, 374199, -26307, 1191853, 17180, -860067, 938987,
- 2410014, 39192, 1637993, -983548, 2198487, -320512,
- },
- },
- {
- {
- 139586, -41724532, -25381110, 26025892, -16516297, -924492, -7022809, 3457986, 93416, -471910,
- -7346005, -5614059, -5246303, -15149423, -8003672, -6157910, -18617072, 2636573, 11627550, -5375689,
- 14341433, 6191732, -3392487, 2934537, -4625680, 6416681, -15915001, 6643241, -4880157, 1097901,
- 4998268, 3629784, 9604084, -5265093, -1330903, -942745, -6283001, -3157338, 5806796, -359167,
- -4268124, 2754148, 1708860, 1069447, -2491618, -1271847, 9303973, -2219961, -7855495, -1058173,
- 3260954, 6965363, -2710661, 10137197, 4166118, -2098629, -1936493, 885837, -3969624, 2860985,
- 90194, 4443681, 3902515, 1188095, 2466385, -517007, -1720671, -739808, 2835215, 5184563,
- 2353642, 3095598, -3147137, 4918812, 273804, 3121904, -427886, 2190433, -195421, 2290828,
- -281320, 421444, 1435593, 988379, -1046898, 413391, 1418950, -28991, -22549, -498753,
- 1001801, 934155, 378494, -1722819, -946503, 122407,
- },
- {
- 6022081, 295972096, 29658360, 66723928, -12819941, -7683697, -8451959, -6227166, -4762045, -16382616,
- -5943161, 1835562, 6888054, -10394358, -9528385, -677531, 2785823, 4505958, 10293426, 4811437,
- 1852742, -3216931, 5369246, 7722351, 2580202, -4407710, -2250026, -3128347, 4708895, -3388729,
- -85899, 2329483, -9675488, 881005, 3645890, -5360119, -464930, -251256, -155156, -1560684,
- 3813394, -2721399, 6533719, -3034395, -1796907, -9422621, -954020, 2242510, 1281511, -2812130,
- -3404835, -1499481, 3000035, -3218004, 3073586, 3411815, -8167417, -868120, -274878, 3600256,
- 2648921, -1941862, 3812320, 5452461, 1401233, -1866163, 2344515, 581431, 3071975, 2561948,
- -2014877, -1007170, 1053341, 1027571, -55835, 776852, 822486, 670552, -1134945, -468151,
- 2159295, -1888175, -1771137, 440771, -652835, 150861, 969589, -781147, 1432372, 601832,
- 795643, 1287417, 827318, -777389, 983548, -810675,
- },
- {
- -7383586, -46135464, 30711700, -44594644, 16874926, 661425, 5548024, -5476084, 3716221, -7759396,
- -9813463, 5720360, -6358699, -7370164, 4147328, 12431783, -10427107, 10382547, -6867653, 1772211,
- -10288594, -5290326, -4700305, -666794, 292595, 2667712, -4853850, 994285, 3335042, -16535087,
- 7854959, 9698036, 1654099, -10379325, 4184909, -3697967, 13816373, 7929047, 5205501, -1098438,
- -6203007, 4052302, 4410395, -217433, 3373697, -1838783, -4887673, 443992, -262530, 1214402,
- 10113574, -4997195, -1064615, 55835, 3584150, 4142496, 731755, 429497, -230318, 3343095,
- 432718, -3835406, -700617, -129386, 105764, 454730, 876173, -2341831, -2852395, -3469260,
- 1329292, 110595, -397821, 4451197, 1451162, 3651796, 1254667, -2681133, -1808181, -3025268,
- 15032, -435939, 2347200, -195958, -168041, 709743, 166430, -722628, 1901597, 303332,
- 324270, -1980517, -83752, -45634, 1727651, 1331440,
- },
- {
- -2574833, 11496017, 8655433, 832687, 134218, -1144609, 3248606, -2239289, -496069, 2930242,
- -5360656, 4290673, -429497, 608275, -18485002, -9192841, 13550622, 8470212, -4460324, 3631932,
- 10760504, -1463510, -3723737, -2288681, 9325448, 17151952, 7203734, 499290, 564788, -10835666,
- -1011465, -2841658, 9795210, 773094, 2039573, 1220308, 16523276, 2697240, 6284074, -1011465,
- 6443525, -2645700, -9307731, -3784403, 2410551, 5708549, 328565, -3156264, 3127810, -3683471,
- 2150168, -1665911, 1032940, -1658931, -2926483, 93952, -5641440, -3598646, 3574487, 2756295,
- 1866163, 1337346, 1758789, 744103, 1532767, 2813204, 1335735, -4354023, -985158, -298500,
- -914828, 2080912, -941135, -652835, -468151, 2013803, -904091, 363998, -265214, -1675037,
- -218506, -995359, 1000191, 1667521, 582505, -1624035, 458488, 1924145, -180389, 267899,
- 1516124, -544387, -553514, -67646, -118112, -612033,
- },
- {
- -25891674, -70017632, -3376918, 36766532, -7155953, -2370285, -4667556, 683437, -9316321, -10088341,
- -2532957, 16321413, 13104482, -11316702, -23622, -3186866, 2171106, -14721537, -11017665, -15149423,
- -3213173, -6352257, -11799886, 3853123, -8572755, 11542725, -7010461, 7984344, 10688563, 201863,
- -8880919, 3093450, -6482180, -3336116, 3274913, 1149978, -14654965, 10778757, -9564892, 3024731,
- 2440078, 5322002, -4042638, -2048163, 133144, -7599408, 1617055, -1057636, -211527, 839666,
- -2858301, -3460670, 2785823, 195421, 1517197, -410706, -2689723, 761283, 363462, -838056,
- -10506564, 821949, 1360968, 6264210, -4176319, 3783329, -4403415, 1021665, 202937, -1250909,
- -2911988, 1731409, 2356863, -293132, -228707, -256087, 2736431, 292058, 879931, -2155537,
- -967441, 78383, 3071975, -3786014, 495532, 1424319, 325881, -2749853, -1720134, 1219234,
- -445066, -1052267, 1592359, 795106, -1016297, 863825,
- },
- {
- 1423245, -8196945, 9011915, 2012729, -781147, 275415, 353261, 36507, 1953673, -5152887,
- -6948720, -4079682, 5302137, -4435091, 3294777, -7021735, 4631049, 8860518, 8342974, 7604240,
- 7001334, -3459596, -924492, 7388418, -12000675, -6682969, 8027831, -12640089, 4689031, 1624035,
- 9947144, 8390755, -10277857, -1725503, -3985730, 1137630, -6299644, -6250788, 2016487, -3706557,
- -6959995, 4063576, 8054138, 9909563, 3161633, 4509179, -5364414, 1166084, -6652368, -535260,
- 5683316, 1112397, 1953673, -2590939, -2334315, -679142, 3545496, 836982, 3202972, -1371168,
- 1347009, -1349157, -671089, -2961380, 2614025, -428423, -1233193, -4105989, 4894652, 411243,
- -1764695, 2609730, -656593, 1032940, 1546725, -341987, 2804614, -33286, 2513093, -1068373,
- -789200, 264677, -2434173, -77846, 135291, 607201, 527744, -176094, 1132798, -375810,
- -1606318, -98784, 1618129, 60130, 432718, -614717,
- },
- {
- -40080096, -140051360, -10832444, 42709692, 4855461, -1429150, -3599720, 11265162, 15219753, -6007586,
- 28225452, 1239635, 6342056, 5963562, 2078764, 219580, -1699196, -8056285, -2227478, -1723893,
- 4652524, -6918656, 7748658, 2574296, 15505369, 3095061, 1278827, 5369, 9536975, -1010928,
- 3733400, 2441689, 6646999, -581431, 7110855, 3351148, -1316408, -1320703, -1364726, -1599875,
- 1913408, -1370632, 1532767, 4174171, 5593658, -3512210, 3171833, -10060424, -5996311, -1531156,
- 1207960, -3412352, -385473, -5846524, -1352915, 393526, 1242319, -3924526, 1089311, 196495,
- -1711545, 6693170, -3327526, 4043712, 410706, 4620311, -2844342, 436476, -440234, 253403,
- -919660, -710817, 642098, 18254, -178778, -333934, -301185, -1131187, -1392106, 1488743,
- -218506, -2246805, 370441, 1550483, -1003949, -1337346, -55298, 313533, -651224, 2253247,
- 340913, 300111, -871878, 609349, 889058, 1181116,
- },
- {
- 1998234, -15781857, -467615, -1028108, -2101313, 1352378, -2132451, 2006824, -3601867, -1271847,
- -2166811, -1466195, 4394289, -3729642, -18211736, -9868761, 8510478, -8160438, -20373178, 1086627,
- -10787884, -13723494, 11378979, 4635344, 4837744, -9463424, -5138929, -7084012, -3645354, -6973417,
- -7241852, 9061307, -8193724, 739271, 861678, 4557497, -11487427, 4552666, -8713952, 249108,
- 13174812, -8150774, 6364068, -4330401, -1341640, 579284, 6283001, 5893232, -2649458, 5797669,
- 3088618, 3390340, 908922, -2516851, 1049046, 94489, -2331094, 5491116, -4993437, -3514894,
- -124554, 4323959, -170188, 598611, 4467840, 2854543, 1626719, -2786360, -2371896, 1004486,
- -3258807, 2938831, 3041374, -1171989, 1581622, 114354, -1376537, -1224066, 544387, 534723,
- -1005559, -845572, 625455, -905164, 982474, 1923072, -503048, -2544231, 228170, 570694,
- -552977, -1464047, 998043, -93416, -2273648, -1389959,
- },
- {
- -50927576, 34244848, 23307176, 66274568, 18968186, -4975720, 16915728, -8135205, -1266479, 446140,
- 14747844, -7608535, -7100118, -2074469, 784368, -6179921, 1861868, -9155797, 865973, 4926328,
- 7999377, 10185515, -4156455, -4332012, 8915278, 4123169, -3491272, -2975876, 76773, 2690797,
- 11594264, 1025960, -10098005, 4738960, 9924059, 11681237, -6743636, -7165616, 6194954, -3512210,
- -5618891, 9910637, 6966437, -4061429, -6021008, 176631, 1327145, 920197, -139050, -7554848,
- -819802, -3227668, 2269353, -7258495, -1335735, -1393180, -5324149, -315143, 335544, 1239098,
- 3624416, -1329829, 1629940, -1068910, -1851668, 2322504, -2672007, -620086, 447213, -2732673,
- 2084133, -164283, 1401233, -382252, 514859, 1512365, 2321430, -1224603, 632434, 2832531,
- 2954938, -1775969, -237834, 918586, -3441343, -670552, -2169495, -335544, 1836099, -223338,
- -790274, -663036, -312996, -70330, 156229, 165893,
- },
- {
- -1390496, -52297668, -12945568, -539018, 1093606, -13879724, -3956202, -3639448, 5603322, 2728915,
- -14527190, 10259603, 4530654, 12579422, -11620571, -5087389, -10147934, 2467459, 4885526, -22310208,
- 120259, -6894497, 12640626, -2806224, 4714801, -3863323, 4684199, 6422587, 6598681, -1692217,
- -7955353, 805306, 9112310, -3773666, 1375463, 9425843, -10073846, 1064078, 63351, -6569153,
- 5454072, 3210488, -1418950, 5242008, -2103997, -5381057, -1546725, 3888019, 13675713, -1175210,
- -1782411, 3460133, 2480881, 7421167, -8943196, 3357591, -1785633, -1097901, 1092532, 2709588,
- 3246995, -1728724, -4085051, 5430986, -2812130, 387621, 621697, 2054605, -2152852, -693637,
- -1258962, 162135, -3342558, 1409286, -1299765, -1960653, 1185948, -839129, 283468, 1397475,
- 1663226, 324270, -229781, -64425, -1430761, 1016297, -325881, -1589675, -1996086, -1903207,
- 46708, -360777, -645319, -1636919, 695785, -47245,
- },
- {
- 2097555, -171451872, 5058398, -4554276, -4037269, 26747982, -32433982, 1250909, 6053220, -5996848,
- -7861938, 7248831, -10395431, 745714, -1830730, -8273718, 3134789, 27532888, -5655398, 2815351,
- -1330366, 6267968, 4103841, -2537252, -14883135, 6897181, 85362, -4806606, -17423608, -6758131,
- 4386236, -5110474, 2425046, -5565741, 9174587, 10768020, 39192, -6276558, -3355443, 4147865,
- 4472672, -3234647, 4230006, 2688650, -10133438, -4019016, -48855, -2608656, 730144, -5959267,
- -3216394, -2104534, -900333, -2035278, 5620502, -1837172, -3980898, 377420, 849330, 2525978,
- -861678, 1548336, 3830574, -137976, 281857, 2600603, 3270081, -2416456, 2285460, -64425,
- 196495, -1493575, 5429913, -1534914, 1554778, 1333051, -622233, 725850, 49929, 3195993,
- 1115618, 472446, -230854, 898722, 736050, -198642, 2197413, -50466, -1734093, 265214,
- 424128, -1544041, 748935, -2692945, 711354, 79457,
- },
- {
- -3378529, -23884314, 5222144, -965831, 4299263, -2377265, 142271, -755377, 2189360, 212064,
- 9109089, -2973191, -6950331, -1082869, 28033788, -1990181, 11400991, 10873247, -12182138, -11387569,
- 1195612, 12134356, 10937134, 10403485, 1753957, -13815299, 10248329, -1562294, -3895535, 3728569,
- 668404, 12662637, -5783174, 10744934, -4020626, -11143293, 8269423, 3102040, -7834021, -214212,
- 6831146, -5836324, -4911832, 925565, 4435628, -499827, -5939940, 4993973, -117038, 4177930,
- -1641751, -3423089, -1195075, -4984310, 674847, -1580548, 2362232, 1889786, -1580011, 2846490,
- -646929, 6732898, 995359, 2979097, -6546067, -2551748, 1679869, -2659122, -358630, 905701,
- -1706176, -279710, 2808372, 1619740, 574452, -355945, -995896, -785442, 964757, -158377,
- -1005559, -1420024, -3031173, 541166, -2092186, -380641, -2133525, 917512, -2341831, -1065152,
- -585726, -893353, 440771, 430570, 1761474, 1201517,
- },
- {
- 6524056, -109026672, -17107392, 15016279, -33375118, -26015690, -211527, -4352950, -4121558, 6433324,
- -10129680, -1182727, -928787, 12603045, -7596187, 6739878, 19079318, 7027640, 13219372, 2338073,
- -6954626, 4900558, 4107063, -723702, -7770133, 2407866, 661962, 12438225, -3483755, 6204617,
- 8025684, -932545, -1014686, 7679402, 3966939, -3736085, 5362267, 3762928, -4901632, 1844152,
- -371515, 3910031, -777389, -4122632, -49929, -3767223, 3096672, 6988449, 64425, 2551211,
- -4901632, -3632469, -3576097, -1905355, 3279745, -1865626, -7355132, 773094, 1188095, 5371394,
- 1635309, 3719979, 3172370, 3748433, 871878, -1500017, -5643587, -405874, -2624225, -1519882,
- -1515050, 154082, -324270, -423591, 2309619, -1462436, -1932198, -102005, 864362, -377420,
- 1493038, -151934, 702227, -718870, -424128, -1527935, 1362042, 81068, 189515, 102005,
- 1331977, 377957, 635118, -2094870, 288837, 1749125,
- },
- {
- 4089883, 45419280, -16275779, -5679558, 2677912, 2124935, -10390600, 5989869, -413927, 9094056,
- 1537598, -1433982, 3661460, 6432788, 80675056, -18707266, -5727339, 4689031, -14883672, 870805,
- -13989782, -5647882, 18910204, 395674, -6438156, 17786534, -3764002, 8458401, -17235704, -3764539,
- -8490613, -8522826, -403727, 5137318, -5708012, 10129143, -3216931, -6322192, 3319473, -11274289,
- 2317672, 4748623, -2940979, 4597763, 1035624, 3107946, 5395016, -5766531, -5086315, -1013075,
- -1591285, -3573413, 5954436, 2088428, 4191888, 5493800, -5526549, 1874216, 1332514, -140123,
- -758599, -770410, 1451699, -233002, -2831994, 1383516, -1039919, 4324495, 1741609, 2226941,
- -2427194, 1046361, -880468, 1892470, 1014149, 83752, -965294, -804233, 153008, 1452236,
- -362388, -900333, -178241, 448824, -1177895, -79457, 1484448, -1393717, -2996814, 2153926,
- -374199, 1191853, -1828046, -600759, 1770063, -933619,
- },
- {
- -12856448, -103979544, -7039989, -21319144, -3441343, -5063230, 11943767, 12212740, 14624901, -19936702,
- 10211285, 11029476, 7744900, -21596706, -56396140, 84289, 27415314, -1961726, 27392764, -248034,
- -19543712, 13351980, 14860587, 11099806, -11800423, -5959267, -9165460, 7748121, 1954210, 14290967,
- -2084133, -4389994, 35970, 17335024, 4007205, 4685273, 395674, 4804458, 11147051, 1759863,
- -3666292, -7373922, -4040491, 10918881, -3116536, 933619, 4735202, 898722, 1108102, 5866389,
- 5723581, 2299418, 692564, 60130, 2412161, -3804804, -6088116, -4618701, -1554241, -1097364,
- -340376, -4644471, -176094, -1520955, 851477, -3767760, -2585570, -786516, -4077535, 1313723,
- -1762010, -3534221, -623844, 1390496, 1903207, 933082, -1736777, 1828582, 2684, 298500,
- 1794223, 1168231, 1212255, 619012, 1408212, 544924, 1609002, 161598, -1665374, -1708323,
- 110595, -828929, 1613297, -259846, 1724429, -891743,
- },
- },
- {
- {
- -108985, -75054552, 1265405, 10029822, 443455, -4516158, -2462627, 1236951, -3029026, 4760435,
- -11126113, -17190070, 14040248, -7562364, -13635447, -15052787, -4225174, -2858301, 18304076, -565862,
- -4857071, 5372467, -1202591, 5925981, -2735894, 188979, -1940788, -8846022, 3455301, 3356517,
- 5870684, 3743064, 5935645, -5188321, -4406637, -1739462, 33286, -6033356, 8857296, -4059818,
- -2547989, -537408, 1657321, 104153, -3643743, 2654290, 10609643, -6692096, -3937411, -4734665,
- 2820183, 2725157, -330176, 10312753, 3374234, -179315, 2254321, -5316633, -734976, 667331,
- -769336, 6379100, 2965675, 3653407, 1002338, 1500017, -1180579, -1677185, 177704, 6286222,
- 2663954, 2616709, 568546, 1495186, 2116345, 1742683, -110059, 728534, 1628866, 1462973,
- -452582, 672699, 1129040, -368830, 1035624, -249108, 1893544, -778463, -781684, -1526861,
- 916439, 1372779, 1285269, -1662689, -1013612, -366146,
- },
- {
- -9288404, 315762240, 29853244, 38034084, 7771744, -7396471, -14884209, -7317014, -8839043, -2773475,
- -26674968, 8960912, 10729902, -15127949, -4320737, -2804614, 15275588, 7277285, 5505075, 5417565,
- 3055869, -5431523, 273267, 13829795, 3723200, -1427540, -12082280, 6969122, -7149510, 5568962,
- -1721745, -7579544, 1853815, -9208947, 525597, -1390496, 5156645, -2393371, 200790, -1686312,
- 2317672, 2012192, -5657009, 2852395, -6003291, 335007, -3295851, -3470871, 3944391, -3406983,
- -3093987, -1024350, 1998234, 438624, -2237141, -1258962, -2917894, -1613834, 1417339, -25233,
- 4728222, -3481608, 4218732, 7396471, -33286, -1089848, 2874944, -146029, 3529926, 444529,
- -1210644, -986769, 296353, 1646046, 446677, -788663, 933619, 286689, -197569, -436476,
- 1509681, 445603, -3870839, 607738, -5369, 2684, -724776, 840740, 678068, 1091459,
- 657667, 85899, 1045288, 10201, 27380, -236223,
- },
- {
- 7123204, 29364692, -40241160, -20907900, 3879966, 6449967, -7745437, -2783139, -3905736, 10586021,
- -5490042, -5587753, -8483097, -4221953, 8616241, -104153, -4991289, 18358300, -11798275, 3289945,
- -3475702, -6589017, -12404402, 7200513, 3324305, -3913789, -1363652, 1000191, -4619774, -6902013,
- 5948530, 3705483, -3073586, 1859184, -1764695, -4771172, 18432926, 9068823, 8839043, -5881421,
- -5314485, 5260798, -297427, -1263257, 6152541, -2207613, -10158671, 7837242, -486405, 2141578,
- 3412352, -2405719, 382789, 1406602, -883690, 5435818, 1972464, 1461363, -273804, 284542,
- -274878, -1910724, -112206, 1345935, -1311576, 3622805, -648540, -6140193, 352724, -4393752,
- 1376000, -1222455, 1689533, 3430068, 3416647, 1564979, -467615, 700080, -2177549, -3013993,
- -395137, 893890, -567473, 568546, 178241, -381715, -387621, 1489280, 483184, -477815,
- -300648, -1251446, 77309, 619549, 1000191, 770947,
- },
- {
- 2005213, 19526532, -2286533, 1080721, -931471, 509491, 1903744, -2378338, -2466922, 4126927,
- -4279935, -849867, 1645509, 1924145, 2594697, -19153944, 7019587, 7332046, 3371013, -14340896,
- 16574279, 5413807, -10580652, 1245004, 2047089, 18473728, 11638288, -1183800, -70867, 3911105,
- -21384642, 15789910, -4608500, 8409009, 7740068, -2124935, 12181064, 491237, 12443057, -881005,
- 5778879, -7125888, -768799, -3390877, -2943663, 5684926, -3059627, -773094, -3144453, 412854,
- 1423245, -1832877, 236223, -3692061, 1830193, -3939559, -1455457, -5585068, 4304094, 3173981,
- 77846, 3149822, -26307, 127238, 1706713, 4386772, -468151, -1952600, -3695819, 387621,
- 1634772, -2134599, -1229971, 1010391, 186831, 446140, -214748, -290984, 833761, -1874216,
- 1545115, -1116692, 13959, 1460289, -321586, -782758, 192737, 708133, 820876, -52613,
- 498753, 448287, 188442, -838056, -862215, 979789,
- },
- {
- 28960964, -139638512, -20114406, 25958782, 12155831, -340376, -6418829, -13755170, 6643241, -21512418,
- 5807333, 22697828, 11950747, -2863133, -15588047, 8675834, -6157910, -19673634, 7122667, -16139950,
- -814970, -11126113, -4909685, 4002910, -9524090, 9967545, -1562831, 8991514, 6493454, -1076426,
- -8123394, -3029026, -5094368, -1384053, 1165010, -2957085, 8361765, -12487081, 861678, 4391067,
- 5117991, 1243930, -3377992, -3689914, -4105989, -1639067, -2858301, -2052458, 7429757, -4461398,
- -5092758, -1466195, 3867618, 794569, -1767379, -4227859, 5201743, -3192771, -23622, -3281892,
- -4460861, 76236, 1256278, 1299228, 894427, -636729, -1273458, -261993, 583579, -1648194,
- -1506460, 619549, 675921, 752693, -692564, 734439, 2439542, 289910, 1939178, -3782256,
- -666257, 2807835, 390305, -1191853, -756451, 263067, 1073742, -1465121, -1134408, -645856,
- 742493, -783295, 704375, 1279900, 169651, -340913,
- },
- {
- 82678, 13008382, -2050847, -2350421, -243203, 428423, 1167157, 2478733, -601295, -4699231,
- -4781909, -6019397, 6231461, -5297306, -3888019, -3279208, 15122043, -8543227, 27400818, 48855,
- -2913599, -620086, 5520107, 9470403, -22935126, -1912334, 12401718, -11194295, 5985037, -1899449,
- 637266, 12965433, -11214160, 5373004, -2963528, -4432406, -6149857, -5437966, -1819992, -1253057,
- -823023, 5406827, 2007897, 11996381, 2138357, 2492155, -3418794, -1435593, -9130564, 3723200,
- 8472360, -1678795, 518617, -6067715, 2938831, -2829847, 5133023, -717796, 2550137, -468688,
- 1178432, 216896, -1289564, -228170, -104153, 3376381, -2540473, -4575751, 1186485, 2450816,
- -1443109, 1276679, 10737, 1305133, 3794067, -715649, 833761, 1076963, 4066797, -2652679,
- -1147830, 430034, -179852, -2336999, -164283, 1736777, 696322, -570157, 747324, 517007,
- -1622961, -478352, 959388, 2010045, -83752, -830539,
- },
- {
- 33948496, -253037456, -14239964, 42426224, 5490042, 4303021, -5355288, 13982266, 3886946, 6528351,
- 15006616, 3024731, -3661997, 8578123, 6567542, 6650220, -11904576, 4523138, 2786360, -19298362,
- 16575353, -8515310, 1667521, 14306536, 17623862, -4286378, 1257352, 4762045, 5735392, 4868346,
- 3373160, -2214593, 10380399, -163209, 5510443, 1202591, 5720897, -3963181, -5144297, 3652333,
- -3178276, 504659, 1007707, 2078227, 7125888, 477278, -6020471, -7260106, -2276333, -8308078,
- -1160178, 2587718, -725313, -7487739, 737124, 4483946, -2338610, -5493263, -55298, 1772748,
- -759136, 7243463, 199716, -390305, 3894462, 3546032, -1806034, -1447941, -245350, -305480,
- -2449205, 608275, 780610, -756988, 281857, 1097901, -2758980, 321049, -1879585, 1644973,
- -15032, -2014877, -173946, 2271501, -2397129, -586800, 47245, 483721, 460635, 498753,
- 606664, 40802, -517007, 383863, 843961, 556198,
- },
- {
- -724239, 5094905, -12241731, 3426310, -2526515, -1241246, -866510, -1248225, -445066, 1625645,
- -8643622, 5337034, -6583648, -7377680, -12099460, -14264123, 4138738, -1270237, -8315594, -1900523,
- -13546864, -4945118, 17542794, 10473278, -9672266, 3096135, 552440, -17357574, -15488726, 3962644,
- 3867081, -7827578, -1000191, -1536525, 2036888, 8916352, -11251204, -12520367, 766652, 3565360,
- 763967, -169651, 7437273, -1548873, -2130841, 3200288, -4020090, 13950591, -4004520, 2864743,
- 9974525, 3096672, -3488587, -969589, -3130494, 1549410, 1792075, 4263829, -4854387, -3373160,
- -907849, 2843805, -1411971, 1656784, 2487860, 2836289, 1443646, -3794067, -114354, -999654,
- 121333, 435402, 4105452, -2305324, 2334315, 220654, -625455, -1048509, 823023, -988379,
- -553514, 311922, -1149978, 1078574, -631360, 2355253, 638340, -920734, -1554241, 956704,
- -1796370, 697932, -1021129, -244813, -1853815, -1480153,
- },
- {
- 67313408, -60659432, -41886132, 76131520, 13296682, 8732742, 15900506, -5658083, -19363860, -1954210,
- 13760001, 2994666, -431644, -4977867, -4938139, -2900714, 7764227, -29160144, -2656437, 10721849,
- 1711545, 11577084, 825707, -2151779, -2117956, 8067023, -876710, -809601, -6164889, 4483409,
- 7470022, 1807644, -13385802, 7239168, 10668699, 6664179, 6439767, -11202885, -2509872, 6458020,
- -2765422, 9568113, 5900748, -4466766, -8401493, 1428077, 7563975, -286689, -4120484, -2501819,
- 1225676, -2787434, -852551, -4810900, -467615, -507343, -7435126, -2542621, 882616, 2261300,
- 3452617, 2627446, -3377455, -43487, 916976, -743029, -839666, 557809, 854699, -1173600,
- 54761, -521302, 1049046, -19864, 1854352, 673773, 2582349, -179852, 2112587, 103616,
- 2560338, -1189706, 1346472, -3597572, -461709, -2579665, -1369021, 1308354, 1903207, -1481227,
- -461172, 79994, -832687, -352724, -856309, 284542,
- },
- {
- 3045669, -64961380, -11425687, 12177843, -4013110, -20105816, 1624571, 2241973, -3490735, 4355634,
- -7652558, 7716983, -551366, 7876970, -8681740, -1033477, -3771518, -12331925, -5251135, -1990181,
- -10707890, -1028108, 5929203, 4603668, -4501126, -387621, 8438000, 10274636, -5319317, 4496831,
- -2110440, -1676111, 4596689, 1187022, -4119948, 3341485, -515396, -858457, -7390565, 4487167,
- 10072772, -4049081, 528281, 4946192, -9634149, -103616, -2221035, 9386651, 6502581, -438624,
- 701690, 2905546, 5062156, 881005, -3422015, -704912, -2458869, -1855963, 1745367, 3783866,
- -423054, 1167694, -4471061, 2578054, 301185, -1637456, -955630, 1589675, -1453310, 222265,
- -582505, -447213, -1660542, -1218697, 1202054, -2408403, 115964, -1269163, 3298535, -321049,
- 785442, -97174, 462783, 285078, -2068564, 516470, 533113, -885300, -1445793, -1198833,
- -262530, -479963, -551903, -1089848, -760746, 576063,
- },
- {
- -7137162, -203074640, 39251708, -3849365, -2605972, -1284195, -2028298, -1677722, 4729833, -7659001,
- 7300371, -20554640, 2764885, 92879, -3102040, -6509560, 9148280, 14826227, -6923488, 13367012,
- -1975685, -2901787, 5784784, 1334124, -8185671, 2186675, -4750234, 615254, -12887049, -10228465,
- 4429185, -10943577, -3913789, 3448322, 9007620, 8475581, 1816234, -1962800, -6031208, 439697,
- 1828582, 3573413, 3647501, 1072131, -8245801, -3079492, -540092, -4295504, -1189706, -5902359,
- 642635, -1771137, 1175210, -1862942, 1198296, 4260071, -7525320, 4945655, 38655, 1016834,
- 587337, 3472481, 2262911, 1921998, 622233, -906775, 3388192, 2488934, -823023, 2297271,
- -2706903, -1538135, 3005940, 2423972, -62277, 1199907, -695248, 2415382, 901943, 2816425,
- -908386, -104153, 150861, 1423245, 596464, 1964948, 245887, -24159, -729608, -275415,
- 891743, -900869, -204548, -2826625, 682900, -846109,
- },
- {
- 3710315, -13613436, -9304510, -966905, -6369437, 1275068, 2543158, -1655173, 798864, 4354560,
- 10724533, -4508642, -19201726, 14607721, 25332790, 5265093, 15738908, -4509179, -4600984, 10468983,
- -13547937, 2263448, 32744830, -8485782, 7968238, -1183264, -10988674, 5427765, -6793565, 11767674,
- 4428112, 7859254, -3745748, 13893145, -6302328, -8485782, 5098663, -252329, 4351876, -4398047,
- -1682017, -3494493, -1242856, 2902861, 426812, 2790655, -4810364, 2078227, 3312494, -937377,
- 1515587, -4005594, -4807142, -5929739, 2879776, -54761, 712965, -1267552, -1651415, 398358,
- 4458713, 3356517, 4842039, -797253, -4134980, -4735739, 1640678, -1829656, 322659, 79457,
- -1134945, 1357210, 3242164, 1534377, -1600412, -912144, 2894808, -1610613, -1008244, -156229,
- -1004486, 1335735, -3061775, -2040646, 156766, -1612760, -1563905, 98247, -1066226, -1563905,
- -621697, -2146410, 2059437, 449898, 176631, 72478,
- },
- {
- -28457916, -64673616, -10402411, 3833795, -22384296, -11790759, -17008608, 3646964, -1336272, -5049808,
- 3942780, -5303211, -5555004, 5630702, -13661217, 19726248, 17249662, 17809082, 15421080, -6508486,
- 3928285, -5612986, 7329362, 384936, -10262287, 1744831, -2394444, 13492103, 14704894, -6244346,
- 3210488, 9638980, -302258, 2697776, 819802, -1863479, 6106370, 4882304, -1595580, 147640,
- 2669322, -707059, 2737505, -11157788, 2080375, -1213865, 2735357, 1956895, 2803003, 1188632,
- -4693863, -5022965, 229244, -534187, 1355062, 1144609, -5688684, -504122, 649614, 3167002,
- 3256659, 4919348, 2389076, 4223027, -738734, -2037425, -7221988, -1211718, -67109, -2550674,
- -248034, 471373, -803159, 1676111, -1389422, -2541547, 345745, -996969, 2284923, -2925410,
- 2064269, -522375, 86436, 64425, -819802, -2684, 549219, -1919850, 2659122, 81604,
- -166430, 520228, 1651415, -1840930, 138513, 2582349,
- },
- {
- -5418638, 35595616, 519691, -9446781, -2969433, -3666292, 7391639, -2043331, 6985765, 5363878,
- 5756867, 4290673, -392453, 37514392, 41101228, -29459180, -517544, -1561221, -12797929, -974421,
- -7660074, -16826072, 18869938, 7472706, 1661616, 2751464, 11080479, -9899900, 3352222, -6568079,
- -9340480, -14010720, 1121523, 3361349, -1140314, -1183264, -5129265, 3942780, 4224101, -5215164,
- -8103530, 6801081, 4223027, -3258270, 4866735, -63888, 1832877, -9642738, 4185446, -2972117,
- -543313, 2316061, -3060164, 6764574, 447750, 6250788, -4861366, -537, 179315, 2373506,
- -30065, -2301566, 1884417, -511638, -3860639, 19864, -667331, 1932735, 2512019, 2432562,
- -1906966, -1344325, -2359548, 3007014, 4059818, -1049583, -430570, 777926, -612570, -1273995,
- -169114, -1186485, 1289027, 585726, -526670, 1495722, -3075734, 1254667, -679679, -2433636,
- 1523103, 968515, -150861, -1569811, 721018, -1100049,
- },
- {
- -4511327, -115785336, -20034412, -18613852, 4899484, -1258425, -2943663, 12321724, 9131100, 3663070,
- -15097347, 15736223, 17824652, -14434848, -69171520, 15259482, 31494996, -7194607, 28547574, 49929,
- -858993, -974421, 13142063, 5203353, -7772280, -4993437, -12783433, 6109591, 5925981, 5677947,
- 2910377, -8982387, 9559523, 6878390, 10619844, 8746164, -1713155, -1756105, 18277770, 1576790,
- -13773423, 9807021, -5777268, 9041443, 4996121, -1345935, 2266669, 1283122, 4158602, 9124658,
- 4022237, 41876, 3648575, -1878511, 101469, -2673080, -1455457, -2672007, -3078955, -1222992,
- -2895882, -3550327, 2559801, -4541928, 1423782, -4239133, -623307, -7398618, 974421, -2510945,
- 273267, -3595425, 1705102, -777389, 947040, 4449049, -1120987, -129386, 1960653, -1221918,
- 3249680, 1128503, 1829119, -705448, 1705102, 233539, 1599339, 314069, -2556579, -1364726,
- -271120, -1090922, 398358, 1087164, -702764, 1439888,
- },
- },
- {
- {
- 455803, -59528248, 14878840, -6979, -2509872, -1504312, 321586, 1570884, 9886478, 15543487,
- -11267847, -24023900, 19024020, 1091459, -16101296, -11425687, 10009421, -9718974, 2189897, 11320997,
- 6002754, -3745748, -9395241, 6216429, -6986301, -4547297, -1366873, -9098888, -3871913, -7364259,
- 6022081, 3109556, 2457258, -2916283, -5414880, 1873143, 12718472, 8121247, 12750147, -2111513,
- -870805, -3055332, 4205310, 3753265, -3101503, -1186485, 6032282, -930934, 202937, -6681359,
- 1343788, -2411087, -2394444, 4153234, -1200443, 2723546, 7100655, -2387465, -1962800, -3850975,
- -931471, 1514513, -958851, 3353296, 163746, -1514513, -3376918, -2138357, -4801237, 3104725,
- 4102768, 1970853, -738734, -78383, -660888, -147103, -1344325, -722091, 867583, -1159641,
- -1302449, 758062, -1352378, -2327872, 585726, 29528, 2124935, -1149441, -918049, -1218160,
- -230318, -652835, 702764, 52613, 1111860, 447213,
- },
- {
- 11625403, 272233824, -30630634, 3373697, -5509906, 5037997, -7450695, 7409356, -337692, -8130373,
- -16274705, 21336324, 9719511, 2913062, 11170136, 9015136, 19414862, 1036698, 9007620, 15182173,
- 8798777, -8220031, -10480794, 6863358, 7136088, 6710350, -10686416, 2971581, -14981920, 2812667,
- 507880, -3598646, 8218420, -3553549, 4083440, 739271, 7035694, 728534, 2557116, 4051228,
- -2456721, -749472, -4969814, 688805, -7417946, 4357245, 1393717, 379031, 8441221, -4378719,
- -2462627, 1533303, 1247151, 3912178, -1747515, -4596689, -2606508, -4216584, -737661, 1429687,
- 3811784, -2306934, 2151242, -505732, -1509144, -422517, 310848, -3281355, 118112, -950262,
- 958315, -102542, -728534, -536334, 563714, -1108638, -338229, 799938, 836982, -417686,
- 419296, 221191, -3562139, 173946, 414464, 632971, -423591, 869194, -735513, -726923,
- -758599, -772557, 128849, 140660, 836982, 808528,
- },
- {
- -6138045, 100035160, 24973088, -7541426, 6213207, 3142842, -8169565, -151934, 4507032, 12960064,
- -22454626, -4411469, 6402186, 2208150, 14244796, -19327, -1098438, 17056926, -14481019, 16260746,
- 11869142, -1295470, -7801808, 19295140, 19043884, 3132642, 2931315, 1811939, -2205466, -2029909,
- 2730526, -5208185, -5085778, 2747705, -5249524, -4518306, 11557220, -688805, 5567352, -4732517,
- -7534447, 132607, -2528125, -2328409, 2863133, 1170916, -7735236, 3551938, -1875290, 180926,
- 1669132, 838592, 2809446, -201863, -5038534, 2820720, 688805, 279173, 151398, 3462818,
- -474057, -2577517, -802085, 108448, -2661806, 2457795, -3031173, -4730370, 4035659, -3202435,
- 126702, -2309619, 892816, -40802, 690416, 331249, 212064, 3389803, -355945, -681826,
- 695248, 541166, -1926293, 697395, 1035087, -908386, -561567, 1666984, -729071, -1583232,
- -690416, -769873, 45097, 294205, 365609, -440771,
- },
- {
- -1238561, 24970402, 2569464, 2852395, 1407139, -942745, 382789, 554588, -1990181, 5269925,
- -935766, 777926, 5827734, 3913252, 17014512, -5650030, -69793, -13530758, -1085553, -7590818,
- 15494095, 5582384, -10987600, 4884452, 7206419, 17860084, 4405026, -6310918, 1860258, 23352810,
- -4474282, 13977971, -11218991, 2275796, -1109712, -14801531, 10512469, 8462696, 5411122, -6332930,
- 5376226, -3657702, -2622615, -6869264, -4589710, 1763084, -4493073, -925029, -9968619, -2765422,
- 1043140, -3899294, 372052, 766652, 3763465, -3671660, 1156420, -2666638, 3510062, 875100,
- -454730, 2334315, -1198833, 336081, -1439351, -105764, -449898, 1473174, -1736777, -933082,
- 668404, -2554969, -769336, 165356, 132070, 741956, -1053341, -765041, 1428077, 26307,
- 3296924, -1066763, -1040993, 533650, -1211718, -169114, 97711, -220654, -356482, 56908,
- 865436, 304406, 810138, -1475321, -1496259, 125091,
- },
- {
- -23270132, -200074080, 2221035, 9211094, -10608032, 1265942, 1460826, -10771778, 17846126, -20466592,
- -3026878, 14374182, 14125611, 7963943, -24238112, 585726, 4638565, -15313169, 11788075, 5536213,
- 7405061, -234613, 8587250, 3779034, -9850507, -1079111, -9317395, 14206678, 11076184, -2957085,
- -7233799, -4763656, -1075352, -2687576, -4571456, 4034585, 21907554, -12951474, 372588, 1191317,
- -1839320, -6272263, -3234647, -5369, -1983201, 4835060, 1256278, 73014, 8871792, -5193153,
- -155156, -3058017, -4891431, -2916283, 491237, -609885, 7873749, -2062121, 2343979, -1668595,
- -1584306, 3111167, 1165547, 2551211, 3138547, -1275605, -454730, -643708, 2195265, 295816,
- -1238024, 360777, -38118, 1534377, -500364, -898185, 1392106, 2219424, 4432406, -1597728,
- 458488, 1589675, 235149, 1362578, 4295, 192737, 1225676, -19864, 1261647, 215822,
- 714575, -712965, 162135, 1221381, 498753, -862215,
- },
- {
- -1685775, 7183870, -3619047, -2003602, 264141, -280247, -377957, 499827, 632434, 3127273,
- 5111548, -2112050, 7759932, 15848429, 1897839, -6086506, 12656195, -18458158, 3496104, -13460964,
- 4540318, 5652714, 5902359, 13043816, -4378719, 5980205, 4790499, -16108812, -5130339, -8239358,
- 1148904, 12277701, -6676527, 6747931, -3270081, -5645735, -8451959, -7780334, 1547799, 4284767,
- 1232656, 755377, -4120484, 6959458, -53150, 1081795, 935229, 4141422, -9445170, 1510218,
- 2189897, -7588671, -294742, 1537598, 6988449, -3872450, 2981781, 1661079, 3279745, -836445,
- 1162862, 3611531, 4367982, 2261300, 661962, 3513820, -1629940, -1846836, -1887638, 729608,
- -2077154, -1081258, 176631, 1830730, 1449015, -2605435, -751082, -814433, 3193308, -1541893,
- 117575, 185757, 935766, -992137, -771484, 174483, 1169305, 134755, -390842, 221728,
- -1187559, -206695, 96100, 1017907, -328028, -59056,
- },
- {
- -14573361, -325324992, -5325223, 35034048, -15249281, 238908, -10298258, -6009733, -12713640, -4323422,
- -8932458, -6157373, -931471, 9473087, 12206297, 2190970, -10369125, 10344429, 3292629, -9730248,
- 26148298, 5871757, 6364068, 1408749, 3870839, -2103997, -1631014, -5628018, -5194763, 9482751,
- 6834904, -4185446, 10205916, -3226057, -6607807, -6418292, 7089918, -3041911, -4963909, 1385127,
- -4363150, 1300301, -171262, -2223183, 2991445, -727997, -5127654, 17180, -1519882, -9426916,
- -60130, 5089536, 6332393, 927176, 3382824, 3382824, -560493, 1394254, 643708, -446677,
- -59056, 6653441, 2753611, -1039919, 1394254, 625992, -3081639, -1239635, 1563368, -779537,
- -4595078, -702227, 899259, -1112397, 165356, 1502702, -4109747, -1146219, -2668785, 750009,
- -368293, -181462, 919123, 1738388, -707059, 530428, -238371, -1163399, -568009, 31139,
- -108448, -674310, -641024, 288837, 896038, 615254,
- },
- {
- -1540820, 3223910, -9775346, 1360968, -2672544, -929324, -1757715, 158377, 4329864, 4881767,
- -3059091, 7209103, -11547556, 827855, 6449431, 5792301, 15017890, -111132, 2367064, 9753871,
- 1996086, 1541356, 19078244, 20434918, -6056978, 9920838, 17103096, -17726940, -12501039, 17793512,
- -817654, -12910135, 3759170, 1595044, 10711112, 11710765, -12997645, -12766253, 3322157, -5504538,
- -11297375, 2650532, 7935489, 1547262, 1353452, 2356327, -11915850, 7447474, 2656974, 5765457,
- 4474819, -1541893, -749472, 1101659, -5577552, 245887, -1697049, -535260, -1782948, -1325534,
- -2233383, -505732, -6886980, -595390, -645319, 394600, 2216203, -1154273, -1298691, -679142,
- 2513093, -2118493, 1707786, -1781338, 1551557, 659814, -126702, -680215, 2714956, 1007170,
- 905701, -33286, -2548526, 1315871, -280247, 2142652, 559956, -261993, -1463510, -1006633,
- -1701344, 1466731, -1189706, 1378148, 424665, -65498,
- },
- {
- -72807752, -177383216, 21170430, 53271552, -23345832, -6786049, 8746701, 577136, -17826798, -5854041,
- 3549254, 10155987, 16136729, 13640816, 10212895, -4497368, -6001143, -28128278, -1637993, 7638063,
- -6813966, 7472706, -3494493, -6826851, -10039486, 419296, -5374078, 4512400, -1882269, -2304250,
- -2950106, -133144, -7981660, 4763656, 4496831, 3877282, 9006010, -609885, 1903207, 7532299,
- -4708358, 2135673, 5227512, -75162, 898185, 5259725, 2084670, -1803349, -359704, 3799436,
- 915365, -4330401, 1977833, -1560147, -1119376, 4578435, -411243, -661962, 4115116, 1707786,
- 44023, 478889, -3936338, 3718368, 4339528, 48318, 582505, 2083596, 3906273, 319438,
- -1696512, -72478, 610959, -1548336, 1221918, 911607, 2229625, -1374390, 1148904, -1915019,
- 976031, -1057636, 1036161, -3737695, 1518271, -101469, -419833, 452582, 593779, -1064078,
- 500364, 207769, -970663, 88584, -678068, -271657,
- },
- {
- -3911642, -62111132, -1769527, 6740415, -8164196, -19419694, -4066260, -3554086, -7571491, 7361037,
- 6878927, 17099876, 1394791, -3117073, -19582366, 5481452, 3125126, -11637751, -8397735, -3477850,
- -4348118, 10408316, 3796214, -3039226, 2537252, 2938295, 2245194, 2207076, -4627291, 3740380,
- -4380330, -5053566, -748935, 1124208, -9325448, -116501, 1131187, -4299263, -7527467, 12094091,
- 16192027, -710817, 1893544, -550830, -10291815, 6018323, -1967095, 2742337, -2130841, -10385768,
- -1286343, 819265, -3173444, -4248797, -403727, 965294, -3396246, -5004174, -4164508, -3055869,
- -1571958, 5951751, -2342368, -1003412, -2329483, -973347, -1276142, -1722819, -883153, 1033477,
- -3003256, -1207423, 616328, 203474, 1956358, -1309965, 481036, -2660195, 2412161, 1571958,
- 2044404, 654446, -85899, -9664, -1694365, -169651, 1282048, 122943, 1133871, -413927,
- -513249, 74088, 500364, -665720, -1691680, 135828,
- },
- {
- 13037910, -215081232, 16703665, 7992398, 26339424, -10657424, -8177081, 1136019, 10943577, 1699196,
- 14828911, -17750026, 11292006, -658741, -3602941, -3956739, -797253, 1853278, -18943490, -7167764,
- -16422881, -8235600, 7449084, 2167885, -6651831, 3118683, -309775, 8161512, -4895726, -7443179,
- -343061, -5428839, 3937948, -1208496, 591632, 5720360, 693637, 260382, 689342, 2990371,
- -2257542, -826244, 4043175, 3236258, 1135482, 425202, -1513976, -4527970, -1788317, -86436,
- 4828080, 552977, 2180770, -3066070, 2994129, 8540006, -2536715, 7107097, -2953864, -462246,
- 1486059, 3810173, -631360, 1347009, 4405563, -896574, 1690607, 4133906, 42413, 2486786,
- -2525441, -3813931, -877784, 476205, -2154463, 340913, -782758, 3457986, 729608, 2158758,
- -1457068, -780073, -525597, -497679, -1567663, 1052804, -540092, -500364, -519154, -294205,
- 1185411, 246961, 1051730, -511638, 1548873, -751082,
- },
- {
- -3281892, 7427072, 13870597, -2636573, -12181064, -1902134, 3550327, -4252555, 186294, 2574833,
- 7410966, -2564096, -3792456, 17696340, 10148471, 15439871, 31675384, -2943663, -8680666, 11844983,
- 2891587, 10203769, 15380278, -25831544, 2153926, 5784784, -18148384, 2007360, 9033390, 19155554,
- 1913945, 3135326, -3816079, 9756555, -3626563, 2685965, 830002, -10429791, 1342177, -3240016,
- -1643362, -750009, 575526, 2294586, -1352378, 211527, -640487, 688269, -6011881, -6356015,
- 4839892, 330176, -1072668, -2553358, 577136, -3218004, -2035815, 1740536, -1414655, -2366527,
- 3729642, 2227478, 529892, -1229434, 2251100, -3973919, -904628, -1691680, -1979443, 1469953,
- 2092723, 2420214, 3147674, -1301912, -3238942, 838592, 4191351, -1062468, -819265, 1008780,
- 1585917, 3751117, -2561948, -903017, 1789391, -231928, 357556, -337155, -667867, -712965,
- 675384, -887448, -237297, -1612223, -164819, -1935957,
- },
- {
- 39071316, 33714420, 927713, 3891777, -13885092, 13709536, 7108708, 22972706, 6437619, -6328098,
- -3262028, 7206419, 5370320, 8069707, -13533442, 27954868, 16397111, 648540, 8684961, -13429289,
- -4954245, -16789564, 29528, -721018, -13106630, -3609383, -7841537, 3101503, 8570607, -3650185,
- 7868380, 5192079, -4921496, -5917928, -5039608, -2568391, 2100776, 5334350, -1978369, -5485747,
- 7714298, -32212, -594316, -10837276, 5290326, 6947110, 2146410, -2170569, 1464047, 5630702,
- -1214402, -4940823, 5494337, -3271155, -1954747, 2876554, -6433324, 590558, 1866700, 812823,
- 636729, 4342212, 1109712, 1513976, -892816, 262530, -4967667, -217970, -1233729, -3566970,
- 842350, -91268, -1848447, -653909, -3157338, -1555852, 1989644, -150861, -330712, -3598109,
- 1827509, -716186, -252329, -1665374, -1873143, -595927, 426812, 143345, 2787434, -1410360,
- -273804, -61203, 1840930, -1315871, 608812, 2145336,
- },
- {
- 6962142, 39587252, -4722854, -3863323, -2929705, -4236985, 3852586, -7711077, 5839008, 8818105,
- 1930051, -2390149, -9127879, -59290412, -66369056, -19763292, -1113470, -1133871, 7129646, -2506114,
- -19679004, -15143518, 15199889, 3383361, 14977088, 9807021, 8121783, -1653562, 14283451, -1243930,
- -693637, 904628, 12150462, 1147293, -1293859, -7283191, -426812, 9524627, 4584878, 4159676,
- -10420128, 2202245, 3952444, -6291590, -1956895, -6257768, 602369, -8410620, 6628209, -796180,
- -987843, 3707631, -2001455, 1962263, -3527242, 4601521, -3963181, 506269, -2369211, 925029,
- -2446521, -4220879, -1590212, -2514703, -4281546, 3464428, 1982127, -4191888, -2884608, 810675,
- -2097555, -1327145, -2228551, 263067, 3569655, -48318, 1981591, 810675, -3131568, -1445793,
- -1034550, 143881, 3118683, 241055, -71404, 3141232, -867583, 2616172, 224412, -2010045,
- 642635, -553514, 574989, -635118, 313533, -171799,
- },
- {
- 22066468, -71123584, -13103408, -13896367, 7534983, 6216429, 3958886, 9232569, 1039919, 3978750,
- -21556440, 8868571, 19683298, 28150826, -19257022, 12193949, 11547020, -13140452, 21245592, 4322348,
- 533650, -12559021, 2301029, -2859911, -5313412, 3333432, -5698885, -4567161, -5590974, 6168110,
- 2747705, -14465987, 5674726, -2018635, 3668976, 5141076, -5061619, -2353642, 10206453, 1357210,
- -7150047, 15146202, -2648384, 7583302, 4345433, 2478196, 3806952, -2588255, 681289, 5015985,
- -2616709, -2608656, 4342212, 3205119, 825171, -2290828, 7865159, 2285996, -3439195, -875636,
- -2886755, -3275986, 5529234, -3197603, 820876, -673236, 5105106, -1155346, 2887829, -5529234,
- 587874, 134218, 1368484, -2000918, 382252, 5529234, 754841, -471910, 2346126, 103079,
- 5067525, 980863, 89121, -1562294, 692027, -1024887, -950262, -1328219, -2002529, -1537061,
- -1913945, -1060857, -561030, -1024887, -1811939, 1796370,
- },
- },
- {
- {
- -2147, -13490492, -15266461, -12771622, 1262184, 3697430, -1728188, -2753611, 7575249, 2408403,
- 5865315, -11163694, 2327336, -2859375, -197569, -16129213, -5182952, 9361955, -11629698, 19396072,
- 7103339, -5655935, -9346923, -3704946, 5079336, -13976360, -7836168, -2538326, -10147397, 3320547,
- -5886253, 9880035, -10879689, 4377109, 4057134, 10152766, 800475, 7529078, 15644955, -2871186,
- -1445793, -4156455, 3484829, 7129646, 134755, -1948305, -2718178, 1574642, 1967095, -2163053,
- 1053341, -6089727, 4615479, -1094143, 3533684, -2025614, 8179765, -1617055, -333397, -4461398,
- 190589, -2073932, 368293, -1426466, 1293859, -3218004, -3919695, -1498944, -1088237, 2873333,
- -23085, 1092532, -1168768, 1149978, -1165010, 781147, -1472100, 762894, -694711, -1288490,
- -548682, 413927, -1100585, -956167, -939524, -605590, 2456185, -1043677, -964220, -647466,
- -26307, -243203, -668941, 702764, 1915019, -21475,
- },
- {
- -13927505, 209854256, 33974800, -8231305, 12692702, -2600066, -6554657, 16852378, -7308424, -12289512,
- -2058363, 21515102, 2676838, 6840809, 189515, 16436840, 27227946, -7265474, 12255689, 16452409,
- 2546916, -9284646, -10945724, 7426536, 7721815, 681289, -7036230, 6667937, -8841727, -4226785,
- -3075734, 6047851, 5152350, -3692061, 4250407, -1886564, 3255048, 11135776, 1254667, 8229694,
- -5264020, 1602023, 731755, -7931194, -938987, -1888175, 520765, 1456531, 8705899, -1533303,
- 3319473, 3875671, -2186675, 4440996, -2516851, -5095442, -53150, -6098854, -1147830, 4818417,
- 1937030, 1490354, -1061931, -5199058, 2888366, -1271310, -1859184, -428423, -177704, -3550864,
- 2697240, -90194, -2206540, -305480, 1821066, 133681, -2556579, 1785633, 520765, 1084479,
- 419296, -2807835, -77309, -258235, 348429, 48318, 893890, -127238, -1229434, -1777580,
- -204011, -214212, 278099, 462246, 515933, 444529,
- },
- {
- 4337380, 134573680, -7617662, -5797132, -5881958, 4602595, -4541928, 5747203, -1203665, 8042327,
- -20137492, -17217450, 15365782, 16287590, 1416266, 1205812, 1910187, -4134980, -8665633, 18831820,
- 7145215, 3144990, 5014911, 9127879, 18565534, 5080947, 6436009, 1752347, 6522982, -7691213,
- 84826, -4917201, -8988293, -1990181, -211527, 2453500, 2668785, -599685, 4184372, -358093,
- -3532611, -10034117, -1366337, 399432, -1965484, 5288179, -703838, -5101885, 3551401, -513249,
- 2851322, 3802120, -2448131, -214748, -1314260, -127775, 1794223, -999654, 2607045, 1335198,
- -1317481, -1584843, -1595580, -654446, 1091995, -1146219, -5482526, -1160178, 976568, 512175,
- -1469953, 364535, 162135, -760209, 468688, 281857, 1020592, 2331094, 142808, 1386201,
- 177704, -213138, -839129, 470836, -540092, -117575, 370978, 874026, -1444720, -782758,
- -796180, -948651, 1212791, -417149, -216359, -552440,
- },
- {
- 1038308, 27571542, -1247688, 5684389, -1465121, 775778, -1682554, 2334852, -3347390, 2699387,
- 5954972, -3043521, 5966784, 5181341, 3842922, 17956722, -13036299, -15359877, 79457, 3127273,
- -2390686, -5844914, 3144990, -1613834, 12604118, 11545409, -2415919, 3653407, -8396124, 20824148,
- 15621870, -1848983, -1993939, -3925600, -4832, -8828305, 2905009, 12207908, 2218888, -5180268,
- 3804804, -2876554, -7139310, -2247342, -7720741, 1535451, 1439888, -651224, -13833016, 703838,
- 1929514, -6118718, 2084670, -392453, 1084479, -1180579, 210990, 2703145, 298500, -216359,
- 776315, 948651, -1469416, 2099165, -2865280, -901943, 1165010, -1793686, 963683, -1081795,
- -2843268, -45097, -1119376, 51003, 648003, 1035624, -2182917, 321049, 733366, 1465658,
- 1700270, 1642288, -3037079, 111669, -1582696, 665720, 530428, -807454, -467078, 956167,
- 1119376, -386547, 226023, -672162, -2061584, 176631,
- },
- {
- 8872866, -259941616, 11618423, -3833795, 4665945, -1614908, -367220, -4602058, 12848395, -23862838,
- 7757785, 8359617, 15946140, 2770254, -19147502, -2962454, 4206921, -18910204, 17929878, 7955890,
- -3347927, 7645579, 7666517, 1468342, -5259725, -4578435, -7658464, 14617384, 4362613, -2222109,
- 3099356, -16135655, 6559489, -8955544, -1590749, 2936147, 2731062, 11931419, -11144366, 3607773,
- -885837, -7604240, -1782411, -4025995, 2682207, 1806034, 6694781, -2437931, 10198937, -3400540,
- 358093, -1808181, -8810589, 1232119, -1573032, 2412698, 1222992, 3221762, 2362769, -2459943,
- -1494649, 3495567, 2621541, 644245, 4707821, -1372779, -4279398, 1232119, 2405719, 1131724,
- -134218, -776315, 921807, 780073, -545461, 3758, 687732, 1396938, 4339528, -876173,
- 1434519, 30602, 933082, 1103270, -268435, 1130113, 490700, -243203, 1969243, 652835,
- -526134, -212064, -1611, 404264, 1101122, -212064,
- },
- {
- 523449, -2927557, -1573569, -2043868, 2107218, 544924, -1270774, 1578401, 1066763, 2228014,
- 3500398, 4322885, 181999, 11383274, -9452149, 13567802, 80531, -4706748, -4040491, -2407866,
- -833224, 9361418, 4249870, -4510253, -1166621, 10771241, -6052146, -16062641, 4664872, -7767985,
- 6767258, 5148055, 2258079, 1293859, -1356673, -6910066, -7146826, -4434554, 5494874, -2985539,
- 4881767, -5890011, -2754685, 6680285, -1220308, -209917, 1889786, 2037425, -4145180, 1714766,
- -2758980, -2617783, -3426310, 7486665, 2483028, -3202972, 314069, 5737540, -759136, 4910222,
- -958851, 2818572, 6708739, -724776, 2202781, 1953673, -1500554, -572304, -2051384, 1154273,
- -3818763, -1699733, 75699, 2530810, -1737314, 93416, -444529, -2524904, 1159641, 293132,
- 1189706, 57982, 297963, 288837, -481573, -1624035, 475668, 836982, -492848, 65498,
- -813896, 78920, 479426, -188979, -178778, -344671,
- },
- {
- -13453448, -360643040, 21974664, 18873696, -2342905, -1960653, 379568, -13909788, -10150618, -11324218,
- -862215, -2276333, 5258114, -15127412, 11523934, 9400610, -5011153, 17833778, -15061377, 5301064,
- 6984691, 19015430, 6252936, -2405719, -2199023, 4107599, -7490960, -849867, -7803956, 5144834,
- 10743861, -819802, -1280437, 5821292, -12197707, -7097971, 10962367, -5157719, -1377611, -6657200,
- 3317325, 362925, -1437203, -1292785, 1379221, -3101503, -8220568, 9584756, -8595840, -1740536,
- 2640331, -361851, 8663486, 3047279, 3495567, 206158, 908922, 3124589, -1199907, -417149,
- 1070521, 1910724, 6092411, -1220845, -599685, -489089, -831076, -479426, 2283849, -1324997,
- -4141959, -1861332, 1678259, -252866, -2932926, 358093, -339302, -2056753, -3742527, 2214056,
- -1891396, 1063004, 1927904, -1218160, 2119566, 447213, 1136019, -2371359, -275415, -11811,
- -883153, 811749, -1640141, -759672, 1828582, 264677,
- },
- {
- 484794, -10037875, -1355599, -4050154, 868657, 254477, -1128503, 1629940, 1125818, 3040837,
- 1409823, -428423, -4762045, 3153043, 3283503, 18582712, 13239237, -13742822, 26277684, -17174500,
- 16131360, 7766375, -3594888, 5752572, 8536248, 5770289, 13925358, -2588792, 6196564, -8680666,
- -6613176, -5960878, 5957657, 13158169, 1109712, 4912906, -7217693, -2537252, -6946036, -6711960,
- -5015985, -189515, 4896263, 2440615, -2223183, 4039954, -4847408, -5677947, 10288594, 6717866,
- -420370, -2274185, 1509144, 681289, -5027259, 2815888, 545461, -5799280, 949188, -923955,
- -4275103, 1767379, -7650948, -849867, -1248762, 2678449, -3515431, 3030636, -272194, -1333051,
- 2596845, -1084479, -155156, -645319, -2106145, 1966558, 137976, -253403, 1168768, 2063195,
- 108448, -715649, 492311, -1513976, 1813013, 45097, 778463, -910533, 1139240, -2629057,
- -879931, 335007, -288837, 555125, 1316944, 925029,
- },
- {
- 64707440, -304361248, -20417738, 31197568, -8887898, -5872831, 1872606, -90194, -5600638, 266288,
- -12205223, 20320564, 10241886, 24781424, -1034550, 4813585, -21237540, -6652905, -8572755, -778463,
- 1417876, 2416993, -5501316, -3416647, -7185481, -1387811, -6589554, 3430605, 2029372, -252866,
- -5633387, -1131187, -4770098, 8545374, -661962, 1622424, 3462818, 11857331, 3381213, -4117800,
- -3058017, 2229088, 5392332, -3170223, 2342905, 2630131, 3027415, 257161, 528818, 4228396,
- -2050847, -6036040, 2534031, 1826435, -5778342, 5862094, 2510409, 1084479, 1814087, 2188823,
- -1215476, -1859721, 3446711, -963683, 3532611, 1900523, -292595, 2822867, 2633889, 1660542,
- -2252174, 321586, 441308, -725313, -712965, 399969, 3529926, -1271847, 131533, -1556926,
- 388158, 3758, -1045288, 351114, -563178, 1958505, -203474, -607738, -1406065, 724776,
- 860067, -796180, -370978, -1081795, 188442, 859530,
- },
- {
- 4495757, -45518064, -23191212, 855235, -8232916, -7588671, -9390946, -4465692, -5262946, 7445863,
- 9922448, 9122511, 5659693, -11592654, -15758235, 8045011, -11168526, 2640868, 13437879, -37754912,
- 11710765, 12738873, 6842420, -8282845, 10288057, -2797098, 5069672, 1444183, -4552129, -5851356,
- -4212289, 3228742, -2524904, -2149631, -4350802, -4592394, 2977486, -2487860, -2545842, 3435437,
- 13706851, 993211, 4477504, -2468533, -3308199, 683974, 1365263, -3505767, 2317672, -11307575,
- 314069, -364535, -8187282, -2080912, -2521683, 3328600, -2594160, -391916, -8482560, -2960306,
- -301721, 3965329, -806380, -1999844, -2578591, 769336, -492311, -5470178, 2162516, -137439,
- -940598, -3939559, -193274, 1671816, 700080, -1271847, 1798518, -165356, 20401, 760209,
- 158377, 1901060, 1738388, -912681, -1020055, -1784022, 2102387, -173409, 1664300, -723702,
- 650151, -1409823, 2077690, -1750199, -1302986, -58519,
- },
- {
- -18148922, -231587328, 56870736, 13689135, 28991566, -2921652, -2587718, -2312840, 11192685, -913217,
- 4209605, -201327, 7618735, -5139465, -2905546, 5167920, -4737349, -6293738, -16470126, -1441498,
- -24939264, -961536, 840203, 5277441, -8750996, 5214627, -5763309, 2787971, 2556579, 4786741,
- -5018133, -3306051, 4065724, -4242891, -782758, 1754494, 6847252, -194347, 6566468, 411780,
- -3903052, -4007205, 2584497, -1746441, 3624953, 5240934, -2123325, -6952479, -3092377, 9046812,
- -3045132, -517007, 5702643, -3775276, 2945811, 2426120, 5311264, 4532264, -2291902, -2798171,
- 2885144, 827318, 2857764, 234613, 3656628, -1589675, 467078, 2693481, 2557653, 2423972,
- -2949569, -3606162, -514322, -206695, -2331094, 1547262, -691490, 3000035, -77846, -282394,
- 228170, 499827, -2229625, -44560, -1858647, 351650, -403190, -55298, -856846, 185220,
- 323196, 936303, -66035, 834834, 1243930, 459562,
- },
- {
- 2803540, 30292942, -4715874, -6266358, -5894843, -4648765, 2815888, 423054, -4906464, 4441533,
- 8108362, -6193343, 14179835, 1654099, 12251394, 2450279, 38676180, -9806484, 3695283, -7490960,
- 3769908, 26277146, -15838229, 4277788, -15875810, 13114683, -14324253, -930934, 10479720, 19352048,
- 1503775, -7973070, 13753559, -2299955, -5078262, 9202504, -8450885, 3764002, -5181878, 125091,
- 912144, 1360431, 1715303, -1772748, 2908767, -9993852, 5841156, 383863, -5228049, -1689533,
- -220654, 766652, 113280, -89121, -5200669, -6129992, -681289, 5203353, -1399623, 2218888,
- -169114, 979253, -499827, -862215, -512175, 541166, -3706557, 839129, -2543158, 752156,
- 1150514, 2084670, 2519535, -2796561, 1278827, 2380486, -513249, 2451353, -1387811, -1367410,
- 4266513, 2018635, -1515587, 1861332, -1054951, 1605244, -548145, -674310, 1014686, -991601,
- 620086, -136902, -1903207, -827855, 284005, -2455648,
- },
- {
- -28943784, 139476384, 22012, -6705518, -14390288, 25698936, 4225174, 21734146, -14655502, 8777839,
- -1014686, 11870216, -2596845, -1622961, 7757785, 19302120, 15525233, -922881, 393526, -7510824,
- -11074036, -7610145, -9263171, -5862094, -5444408, -3013457, 3762928, 1279900, -9258339, -5800354,
- 12887586, 5071820, -5020817, -4070019, 2541010, -7484518, -3907347, 775242, 2462090, -5289789,
- 7689602, -5143224, -3649649, -3952981, -646929, 13386876, -2787434, -3631932, 2330020, 5150740,
- 3020436, -7072201, 2178085, 1756642, -2657511, -1910724, -414464, 1806034, 464930, 1064078,
- -1099512, 5648419, 1248762, -568546, -848793, 617938, -3511673, 23622, 919660, -4387846,
- -121870, -368293, -1739999, -343061, -2821257, 462783, -136365, -106300, -3017752, 229781,
- -964220, 1829119, -536871, -2421825, -609349, -1627256, 825171, 2025614, 1407139, -2617783,
- 1846836, -1022739, 472446, -180389, 795643, 1039382,
- },
- {
- -7241315, 43906376, 7307887, 7102802, -10000294, 2261837, -5730023, 3525095, -3111167, -3390877,
- 1450625, 3222836, -6567005, -40622336, -98909872, 3423626, -24673514, 12756053, 10246718, -36740760,
- 13282723, -9110163, 4442070, 10159745, 1804423, 18670760, 1562294, 8724689, 7058242, 9232569,
- -7894150, 3576097, 9539122, 4700842, -1671816, -17425220, 11454141, 8459475, -882079, 5889474,
- -5483063, -4735739, 4938139, -2636573, -6784438, -3428995, -931471, -3599183, -1545651, 3240553,
- 1177895, -1705102, 1600949, -3325915, 635655, 2775623, -2538863, 3182034, -5510980, 826781,
- -3419868, -2101850, -4196720, -3650722, -969052, 144418, 4181151, -2554969, -3519189, -43487,
- -4594542, -830002, 3869766, -2608656, 1560147, 2036888, 332860, 882079, -1443109, -150861,
- -2214056, 1219771, 1418950, -1806034, 1915019, 2062121, -68183, 3196530, -104690, -782758,
- -1027034, -1130650, 541703, 1083942, -610422, 1433982,
- },
- {
- -29923574, -5252208, 4825396, -1319092, -15112379, 6959995, 6106370, 17088064, -2114735, -2407329,
- -10042707, 9489193, -396748, 5791764, 28906204, 13491029, -561030, -4733054, 518080, 15277736,
- -5194763, -10362682, 5310190, -3397319, -10819023, 6873022, -6156299, -2754148, -1056025, 2710661,
- -6441377, -3969087, -3316252, -1687922, 10408316, 5857799, -16273094, 9411884, -1035087, 4695473,
- -7478612, 3425773, 4430796, 2902861, 3489661, 3073049, 7479686, -2017561, -1096290, -1655173,
- 645319, -3215857, 56371, 9061307, -3616899, -4448513, 10790032, 2511482, -1774358, -2826625,
- -4693326, 198642, 3999152, -256624, 1048509, 94489, 3062312, 3723200, -3156264, -794569,
- 203474, 1435056, -3285650, -1243393, 1459215, 3129421, 4317516, -2115808, 1035087, 3058017,
- 1452773, 3179887, -1249299, -671626, 689342, -1927904, -955093, -797790, -1658394, -757525,
- -2920041, -190589, -2394444, -928787, -100395, 827318,
- },
- },
- {
- {
- -1056025, 32141924, 16557636, -22859964, -10030896, 1992865, 1153199, -3208878, 2787971, 3856344,
- 7206419, -5392332, -2299955, -14992120, -13644037, -28285580, -18778670, -2626373, -18520972, 8691940,
- -5235565, 4821101, 5631776, -4417911, -6512244, -18739480, -10378788, -5233955, -8738111, 4858145,
- -15646566, 1504849, -8660265, 6833830, 2891050, 12308303, 1640678, 3157875, 6784438, -5126581,
- -1243930, -3621194, -245350, -2008434, -1563905, 5376226, 103616, 3253975, 3854733, 3374771,
- 5833640, 1203665, 8400956, 115964, 7836705, -2134062, 2870112, -3718368, 2735357, -2334852,
- 1688459, 1409286, 1763084, -3525631, -644782, -1906429, -2393908, -1071594, 2272038, 2571612,
- -3158412, -1661079, -1383516, 3699578, 47782, 1769527, -200790, 1147830, 1420560, 123480,
- -1357210, 1818919, 1672890, 271657, 10737, 180926, 2095944, -252866, 22549, -420907,
- 266288, -823023, -852014, 1389959, 1968706, -929324,
- },
- {
- 17460652, 149785904, -35497368, -3950296, 5856188, -348429, -7390028, 206158, -20883742, -3567507,
- 8083129, 13321915, -6576132, -5414880, 2527588, -6927246, -2365990, -3750043, 6956774, 6521908,
- -2932389, -12639015, -12764643, 8260296, 3809099, -3680787, -1109712, 10520522, -2149094, -4335770,
- -5179731, 9877888, 1237488, -11812771, 12852690, 8516383, 1349694, 5140539, -6745246, 5885179,
- -3698504, 6420439, 2369748, -6017786, 6675453, -1600949, 2915746, 2077154, 5366562, 2971581,
- 6969658, 8455180, 3353833, 7391639, 1437740, -2189360, 4590783, -299574, 1182190, 5106716,
- 2698313, 3948149, 56908, -5585605, 2193118, -727460, -2677375, -467615, 2684355, -1288490,
- 1828582, -431107, 141197, 2417530, 534187, 699543, -1335198, 751082, 641024, 1723893,
- 761283, -2356327, 1350767, 776315, 422517, -961536, 1366873, 1042066, -773094, -1222455,
- 1567126, 851477, 610422, 2069101, 688805, -1381369,
- },
- {
- -2119030, 118753160, -23189066, -8553427, -4473209, 4613869, -4804458, 5433134, -7385733, -8905078,
- -23308250, -21383568, 1352378, -566936, -6742562, 4808753, -1453310, -9177271, -8313983, 2774012,
- -7943542, -6833830, -2908767, 2356327, 16907138, 6048925, 2337536, 1415729, 6570763, -13527536,
- -6053757, -2047626, -799401, -4289062, -7474854, 853625, 350040, -6138582, 5324686, 6007049,
- 1555315, -3664681, 4176856, 3213173, 1283122, 5131412, 2616172, 809601, 7081328, 1422171,
- 3258270, 1819992, -3481071, 1959579, 191126, -3566434, 2787971, 1273458, 1410360, -1895691,
- 362925, -530965, -895501, -1446867, 3769371, 404264, -4125853, 1652489, 2463164, 4552129,
- 912144, 643171, 471910, 1461363, 884226, -1462973, -955630, 683974, 1442572, 1966558,
- -384936, -1011465, -620623, -17717, -1086627, 612570, -413927, -731755, -578747, 443992,
- 380641, 333934, 1227287, -787590, -339839, -709743,
- },
- {
- -718333, 23880556, -1679869, 7883950, -559956, 806917, -372052, 2036351, -4489852, 152471,
- 1891396, -8404177, 8926553, -3448859, -33062658, 675921, -10832444, -9538049, -2565706, -4933307,
- -14564234, -14547054, -1973001, -1121523, 10893111, -2317672, -8937827, 4126390, -10602127, 11538967,
- 9157407, -1121523, 923955, -6246493, -2597382, -1533303, 7274064, -3792993, -2848637, 135291,
- 2154463, -1184874, -7069516, -1249836, -2641942, 6228240, 5591511, 2104534, -3746285, 5119064,
- 18790, -7429757, 715112, -1547262, -212601, -1619740, -166967, 3809636, 967978, -2080912,
- -2334315, 1381906, 514859, 3863860, -1850057, -2211908, 583042, -483721, 1318555, -2107755,
- -3869766, 1326608, -157840, -498216, -477815, 476741, -252329, 2015950, -101469, 942208,
- 393526, 2289218, -1473711, 516470, -1312113, 40265, 306016, 137439, 92879, 1538672,
- 766652, -990527, 380105, 627602, -683437, 445603,
- },
- {
- 11076184, -292373984, -9938554, -7005092, -2616172, -104153, -2028835, -898185, 15547782, -16666084,
- 261456, -5497558, 11542725, 2623151, -6931004, -5195837, 6128919, -14703821, 4839892, -8990440,
- -10267656, 6047851, 3776887, -4172024, -8672076, -2847027, -15264851, 1272921, -4860293, 782758,
- 15129559, -8570070, 4584878, -10504953, 3030100, 5260261, -23267986, -6908992, -9334038, -2007360,
- -7929584, -7895761, -461172, -117038, 1713692, 3402151, 6595459, -6601902, 7595650, 1953673,
- 5187247, 2114198, -2090039, 5359583, 2361158, 1231045, -5546414, 2808372, 1242856, -48855,
- -3758, 654446, -169114, -1305670, 5339181, 798864, -6361921, -393526, 2237141, 175557,
- 79457, -1005022, -1422708, -666257, -1621350, -1902671, -565325, -748398, 2730526, 581968,
- 1821603, -422517, 1540820, 369904, -1672353, -1069984, -689342, -266288, 592169, -722628,
- -1174674, 8053, -148713, -1645509, 390305, -104690,
- },
- {
- 1194538, 4672388, 1777580, 642098, 3658239, 135291, -260382, 1760400, 1757179, 1029718,
- 1910724, -581968, -13795435, -16760573, -54692112, -224412, 5650030, 1654099, -4843650, 8919036,
- 12610024, -2012729, -12150462, -13431436, -10431402, -8062191, -9999221, -14117021, 11631845, -4278325,
- -5872831, -8344048, -2369748, 11398843, 12338904, 3760781, 5439039, -609885, 981937, -10106595,
- 3388729, -6581501, -6633577, 2508261, -2500745, -1855426, -1532767, 694174, 2294586, 4005594,
- -2498597, 1804960, -243203, 6328098, 2428804, -2297808, 351650, 6454262, -1687385, 4229469,
- -3324842, -328028, 4385162, -3573413, -613643, -881005, -2438468, 1451162, 164283, -3044595,
- -5368709, 606664, -2069101, -1002338, -1973538, 1963874, 1722282, -2643016, -457951, 188442,
- 500364, -140123, 38118, 608275, -991064, -2193118, 469762, 942208, -587337, 654446,
- 229244, 17717, -49392, -581431, 69793, -384936,
- },
- {
- 43120396, -341536352, -24247774, 9126806, -1198833, 3797288, 7574712, 2231773, 1661079, -7216082,
- -4119948, 173946, 9685688, -27049168, -120259, 6160057, -1269700, 19065360, -20792474, 1840930,
- 5951751, 6109054, -3753802, 585726, 2328409, 9323837, -2685965, 52613, -6437619, -125628,
- 157840, 994285, -702764, 2277943, -11856794, -1204202, 11482058, -7152195, 1297617, -6189585,
- 5575942, 712965, -337155, -2372970, 2479807, 2994666, -9764608, 6792491, -2634426, 3237332,
- 3314641, -1760400, 7078106, 3153580, 1742146, -510027, 2591476, 5628018, 2185602, 568546,
- 280784, -3337190, 3834869, 759136, -2280628, 1185948, 2998424, 2222646, 1481227, 328028,
- -1799054, -1785096, 2632815, 457951, -2597918, 933082, 1994476, 200253, -2659659, 2924336,
- -2628520, 145492, 2495376, 231391, 1461363, -649077, 1948841, -1138703, -10201, 99321,
- 170188, 1608465, -922881, -969589, 1029182, 725850,
- },
- {
- 1406602, 387621, 5078262, -1131187, 1567126, 1218160, 879395, -4216048, -4156455, 5564130,
- -3956739, -365072, 4832, 9951439, -2983392, -2626909, -10539313, -36674188, 12838194, -34335580,
- 1808181, -11274, -3548717, -6971269, -2961917, -6186364, 4603131, 4119948, 6002754, -32789390,
- -14176613, 5168993, 1364189, 14170171, -741956, -725313, -1491427, 7218767, -4080219, 2139431,
- 4012036, -5407901, 2156074, 274878, 221191, 8782134, 1909650, -4717485, 2050310, 188979,
- -1893544, 2776160, 2528662, 2618856, -1298154, 3277060, 1304060, -7089918, 960462, 2208687,
- -2960843, 3701725, -3335579, 862215, -970126, 1610613, -4566087, 2359548, -1651415, -234613,
- 4020626, -752693, -852551, -1068910, -2880849, 857383, -811212, -830002, 950798, 2292976,
- -934692, -1950452, 1606855, -1265942, 1737851, -1279363, -265751, -1991254, 1203665, -556735,
- 692027, -361851, 26844, 332860, 72478, 695785,
- },
- {
- -43431248, -396807744, 26431766, 34184180, 591632, -1273458, 6720013, 2005750, 6869264, 9212705,
- -19850266, -5544266, -8906152, 16672526, -9780177, -740882, -5011690, 11157788, -5066988, 418222,
- -4594005, -8294119, -3138547, 10529649, 7322383, 6456947, -3348464, 3576634, 4739497, -2706366,
- -5915781, 6305012, -3315178, 6590628, -3710315, -3238405, -4065724, 7359964, 523449, -11586211,
- -8903467, -796180, 805306, -3090229, -875636, -2721936, 7422241, 5443871, -4077535, -4452808,
- -2816962, -4694936, 3134789, 3308736, -5357435, 3896072, 2748779, 3656091, 1401770, -165356,
- -1922535, -1205275, 3932043, -1953136, 1006633, -704912, -250182, 1800665, 762894, 1717987,
- -507343, 1709934, -138513, -1841467, -348966, -960999, 1163399, -167504, 1064078, -59056,
- 1318555, 6442, -335544, 2292976, -1316408, 471910, -916976, -1667521, -874026, 2091112,
- 953483, -784905, -470836, -1641214, -215285, 1968706,
- },
- {
- -4781909, -15111842, 10331544, -3146064, -14993731, 4503810, 4307852, 4306779, 2672544, 6052683,
- -1154809, -4132832, -2668249, -24176908, -21080236, 2484102, -19461570, 13932874, 48187924, -14700599,
- 1007707, -8964670, -6170795, -9423158, 17769890, -1621887, -1096290, -7012071, -6777996, -7380902,
- -11164767, 1913408, 11982422, 7556458, 46708, -3279745, 956167, 13017509, 1122597, -12472048,
- 4137127, -2952253, -263067, -876173, 6365679, 3623342, 3342558, -762357, 5209796, -909459,
- 8100845, -1493038, -6518150, 108448, -6143951, 4839892, 2463701, 180926, -8705899, 2574833,
- 3419331, 1392106, -1044214, -460635, -1229971, 2010045, -995896, -5874979, 4161287, 1381369,
- 2085207, -3311957, -2328946, 1348083, 831076, -978179, 2423972, 462246, -1185411, -1191317,
- -314069, 1331977, 2088428, -798327, -760746, -1613297, 1344862, -368830, -135828, -1345399,
- 1403381, -528281, 2670933, -1468879, 374199, 1316944,
- },
- {
- 21157546, -246447904, -2017024, 10850161, 5231270, 12321724, 18292266, 3229816, 3619047, -14674830,
- -4631049, 12509629, 18887118, 11058467, 6008659, 3789235, -4620848, -552977, -11310260, 7488813,
- -17001628, -3899830, -4850092, 1397475, -6236830, 8419747, -13774497, -205085, 5144297, 9660992,
- 2116345, 2649995, 3892314, -8096550, -930397, 2952790, 9301825, 990527, 3170760, 2634963,
- 3358128, -6394670, -4825396, -8764955, 450435, 2910377, -4626754, -3590593, -2989297, 5870684,
- -9430674, -7851737, 763967, -1007170, 4871567, 1256815, 3695283, 2079301, 2754685, -2094870,
- -4122095, -5647882, 2002529, 186294, -219580, -3800509, -2077154, -1443646, 2392834, 2885681,
- -1290101, -956704, 848256, 2135136, 1892470, 1603097, -317828, 570694, -3578245, -894427,
- 1089311, 583042, -2864206, 869731, -753767, 743029, 448287, -90194, -1249836, 1115081,
- 932008, 1050656, -302258, 587874, 1497870, 578210,
- },
- {
- -2254321, 46684148, 11242614, 557272, 9555228, 3820374, -414464, -1328219, -4334696, 5997385,
- 9574556, -8295193, 21795348, -6536940, -2135136, -16376710, 19963008, -6790880, 9593883, -17218524,
- -3468723, 7374459, -14379551, 31527744, -15675020, 1725503, -3608310, 8519068, 3505230, 15936476,
- -4831302, -13120588, 26124138, -3519726, -10732050, 8448738, -9835475, 13999983, 9117679, 14146549,
- 10146860, -3795677, -242129, 6948184, 6414534, -9478993, 4284230, 1220308, 5032628, 2375654,
- -3819837, -694711, 1771674, 1002875, -7471633, -3827353, 456340, 1351841, -2167348, -194884,
- -3570729, -862752, -463320, 425202, -3076807, -1076426, -3283503, 12348, -1143535, 722628,
- -350040, -52613, 1050656, -1522566, 3890167, 3382824, -3167002, 1991254, -139050, -1235340,
- 3675418, 1821603, -512712, 2660732, -1320703, 1358283, -484258, 13959, 1974074, -358630,
- 323733, -193810, -1156420, 734976, 438087, -1174674,
- },
- {
- 1233729, 182113056, 1316944, 1617055, -12113418, 24406688, -16455630, -14671608, -36153960, -4112968,
- -10447508, 6768869, -4708895, 370978, 2716567, 5817533, 7975218, -4123169, -10921565, -732292,
- 5660230, -8626442, -16276852, 1929514, 9732933, 9439801, 10327786, -279173, -13145284, -5146445,
- 3775276, -3266860, -81604, -1240172, 1083942, -1690607, -6060199, -8144332, -2224793, -10449119,
- 795106, -1964411, 3335579, 1349157, -6824703, 1101659, -3748970, -6627135, -3728032, 811749,
- 5616744, -5027259, 1910724, 6488622, -2828773, -255551, 3218541, 5713380, -497679, 1097364,
- 2877628, 4904316, 98784, 1423782, 2252174, 1043140, -2597918, 2191507, 4998805, 740882,
- 1877975, 130460, 606664, 1642288, -1227824, -35970, -1995012, -1618129, -3422552, 3320547,
- 958315, 641024, 443455, -1405528, 544387, -50466, 880468, 455267, 786516, -2129767,
- 1971927, -897648, 239981, 321586, 227633, -198105,
- },
- {
- 6831683, 35669168, -11880953, 10786810, -2644089, 4704063, -10935524, -207232, -9823664, -10012643,
- -5651103, 1430761, 1239635, 24888262, -25872882, 7214472, -15599321, 5498632, -1544041, -15327128,
- 34049428, 5927055, 1350767, -7168838, -15795279, 9767829, 14597520, 30242476, 2361695, -3588445,
- -15870441, -1750199, -2335389, -4971962, -8636105, -12033425, 12920335, 2453500, -2393371, -1937567,
- -8099235, -7009387, -1660542, 244813, 923955, 1712081, 1438277, -1084479, -5058398, -3820910,
- -2396055, -2129230, -636192, -1996623, 2533494, 340376, -6091338, 2186675, -1800128, 863825,
- -826781, 1087164, -631360, -900333, -68719, -688269, 1771137, -462783, -105227, 1509681,
- -1332514, 4112968, 7154879, -2633352, -678068, 3003256, -127238, 150324, 287226, 1580548,
- -2594160, -821949, -92342, -3154117, 56371, 725850, 426276, 1600949, -2287070, -658741,
- 1034550, 1300301, 607201, 781147, -417149, 496069,
- },
- {
- 24074902, 75182328, 3749507, -2719788, -13708462, -3293166, -1360431, 21818970, 5280126, -7992398,
- 12069932, 22659174, -8328479, 10433549, 28362354, 11324218, 10424422, -488016, -9284109, -433255,
- -16639777, -10716480, 3065533, -2682744, -3326989, -4188130, -10123238, 1697586, 4063039, 8398272,
- -7771207, 3991098, -10737, -2810519, -6569690, -8128763, -14106283, 8191577, -10481331, -2418067,
- -7314866, -5195300, -4529580, -3000035, -421444, 1899986, 3221, -7528541, 3180423, 2112587,
- 181462, -1827509, -50466, 6346888, -2472828, -4858682, 4483946, -1478006, -1385664, -1181116,
- -708670, 1356136, 2977486, -508417, 1489280, -5906, -629213, 1825898, -2012192, 1743757,
- -2431488, 761820, -35970, -99321, 646929, -1340567, -340376, -1628330, 746787, -583579,
- -2012729, 2728378, -959925, -390305, 491774, -1500017, -405338, 1382443, 644245, 278636,
- -1224603, 1138703, -790811, -964220, -115427, -214748,
- },
- },
- {
- {
- 1659468, 43694312, -1130113, -5679021, -15483357, 504659, 954020, 2163053, -4516695, 16495359,
- -4649302, 7646116, -18400176, -1056025, -32696512, -11315091, -20421496, -14693620, 1362042, -1345935,
- -5236102, -4093104, 4343286, -11688753, -1453846, -6610492, -17100950, -10096394, -13415330, 3228205,
- 772020, -4634807, -7413651, 6628745, -2984466, 11326903, 501437, 10735271, -3810710, -2397666,
- -6116571, 1613297, 3354370, -7553774, -4592394, 8625905, 4913443, 2390686, -1086090, 4668630,
- 3234110, 2166811, 7222525, 3835943, 5464272, 2379949, -2587181, -1845225, 1687385, -1592896,
- 2546379, 3973382, -1233193, -429497, -872952, -756988, 48855, -2398739, 1759326, 2710124,
- -2399276, -1860795, 203474, 4734665, -315680, -352187, 2276870, 231928, 1918240, -526134,
- -236760, 510027, 1669132, 1212791, 974421, -736587, 549756, -206695, 649614, -189515,
- 140660, -696858, -153008, 1110786, 1452236, -600222,
- },
- {
- -19493246, 123713848, 11343545, 13790603, -5155035, 24696, -777389, -14802605, -10577968, 919123,
- 11311333, -5759015, -689879, -9993852, 1882269, -23429584, 4361003, 7385733, 590021, 2042794,
- -5702643, -11628087, -9985262, 12384538, 198105, 8189429, -1901597, 1420560, 3032247, -1911261,
- -6245420, 2260764, 2528662, -10234370, 9177271, 9725953, -293668, 6874095, -52613, -2857764,
- -3380139, 563178, -762894, 4434017, -2499671, 3121368, 1244467, 7129109, -282394, 4796942,
- 5199595, 4845260, 6873559, 7007239, 3751654, -3352222, 972810, 2565706, 2767033, 6812892,
- -1906966, 3598646, 2224793, -442919, -2442763, 1289564, -3320010, 798327, 2026151, -655519,
- 1349157, 90731, 1680406, 670552, 312459, -96100, 1888712, 363998, -617402, 849330,
- 421981, 507880, -110595, -12885, 426812, 575526, 753230, 881542, -388695, 55835,
- 547608, 850404, 544924, 2092723, 649077, -1578937,
- },
- {
- 260382, 76726904, 6925635, 6446746, -13419625, 100932, -3051038, 2639258, -3904662, -11500312,
- -16299938, -16360604, -4639102, -120796, -4641786, -3500398, 1455457, -5033702, 2887292, -15834471,
- 4831302, -11519639, 5240934, -6672769, 2806761, 6775848, -936303, 5021354, -2087354, -10607495,
- -14858976, 8104067, -3122441, 1903207, -8574902, 675384, -1539746, 517007, 3125663, 6408628,
- 711891, -840203, 8326331, -4850092, 2586644, 9292162, -277025, 3247532, 6512781, -486405,
- 4660040, -1338956, -3412352, 2288144, 2214056, -4567161, 3856881, -1977296, 1226213, -2241973,
- 4338991, -4414690, 3062312, -2394981, 2938831, 852551, -956704, 154619, 2664490, 3286187,
- 2426657, 274878, 312459, 1324997, 846645, -1749125, -1255741, -666794, 1782948, 717260,
- -985158, -271120, 774168, 618475, -1257889, -204548, -5906, -876173, -326418, -3221,
- 322123, 803696, 359704, -882079, 172336, -288837,
- },
- {
- -306553, 20314658, -876710, 4720169, 4095788, -465467, 1447404, -2782602, -2041720, -164819,
- -149250, 637266, 3650722, -8075076, -31554588, -12404402, -5463199, 9184788, -6764574, -14079440,
- -14340359, -40802, -14914811, -2159832, 12933757, -10737, -7283191, -8373039, 5345087, 3029563,
- 1351841, -6722161, 1050656, 11689827, -9520869, -5392332, 14410689, -9658308, 5167920, -4388920,
- 1225139, 18790, -6068789, -900333, 242666, 3473555, 1486596, -1910724, 9702868, -1163399,
- 217433, -3184182, -3461744, -360240, -776852, -1167694, -1163399, 4221953, -785979, 1402844,
- -2518998, -183610, 3606162, 1989644, -2416456, 1693828, -253940, -1724429, -663036, 391916,
- -767725, -2164664, -234613, 978716, -1206349, -653909, 366146, 2885144, 342524, 183073,
- -405874, 1898912, -147103, 202937, -406948, -818191, -20938, -490700, 1294933, 1474784,
- -353261, 345745, -774168, 619012, 386010, -380105,
- },
- {
- -30802968, -281631744, 15406585, 1222992, -3622805, -722628, -2847563, 5669357, 2746095, -2742874,
- -1529008, -2319282, 7543037, 431644, -6064494, -16800838, 5044976, 6200859, -2367601, -12514461,
- -8107288, 9126806, -8652748, 1247688, -5204427, -8539469, -9585830, -2993592, -8883066, 5711233,
- 9028558, 1235340, -4303557, -5238787, 3524558, 4319127, -16750909, -16441672, -9619653, 1080184,
- -5395553, -4573604, -4254165, 661425, 156766, 995896, 6794639, -5607080, 4013647, 7373922,
- 1960116, -677531, 2416456, 5601174, 2869575, -1509681, -3277060, 2660195, -2724083, 2441689,
- 523449, -430570, -874026, -55298, 1719598, 1333051, -3717831, -664109, 2143726, 227633,
- -605590, -1981054, -2893197, -360240, -3110093, -567473, -434865, -317291, 1650341, 1012539,
- 369904, 649614, 671089, 483184, -459025, -2189360, -8053, 217433, -1280974, -1184874,
- 256087, -842350, 610959, -1758789, 281857, -1011465,
- },
- {
- -613107, 17244830, -2179159, 1318555, -263604, 244813, 879395, -1362578, 4281546, 4213900,
- -6009196, -1866163, -6863358, -29739428, -65799436, 12357695, 941135, 106837, 6390375, 11014981,
- -3394098, -16073378, -157303, -10952167, -13445932, -12976170, -1905892, -15555298, 9783399, -2681133,
- -10838887, -1414118, -11611444, 13276281, 14261976, 4010963, 1612223, 531502, -972273, -494458,
- -4261145, -6036577, -4191888, -5083631, 3959960, -3845606, -537, 3654480, 1670742, -3579318,
- 1968706, 754304, 2828773, -111669, 4527970, 1977296, -1835025, 6324340, 69793, 2334315,
- -4877472, 76773, 2129230, -1473174, -1861332, -2537252, 2587181, -1842541, 845572, -584116,
- -2773475, -541166, -3571802, -3645890, -111669, 163209, 3215320, -789200, -1592896, 2478196,
- -439160, -478352, -45634, 133681, -1697049, -92342, -718870, 1370095, -404801, 173946,
- -17180, 92342, -192200, -733366, 1132798, -805843,
- },
- {
- -65582540, -257999216, 15594489, 17696876, -1660005, 1828046, 4052839, -5189931, 9891847, 10537165,
- -5113159, -4283156, -3485903, -13158169, -12601971, 5074504, 8609799, 6598681, -8122857, -930397,
- 5648419, 826244, -8698919, 7119982, 4344360, 3784940, -1128503, 3447785, 956167, -8014409,
- -820339, 5902359, -2614025, 168577, -4511863, -3622268, 3099893, -7102802, 5363341, -891206,
- 2042794, -2709051, 5804112, -5163625, 5160940, 532576, -4736812, -2737505, 2856153, 4947803,
- 2138894, 7856032, -5908265, 2425583, 5788542, -2034204, 3520263, 4256313, 1739462, 828392,
- 397821, 829466, 368830, 3743601, -2521146, 1764695, 370978, 2485176, -932008, 1129576,
- 1423782, -1170916, -526670, -626528, 1234803, -11811, 796716, 1605781, -1660005, 1221918,
- -1192390, -198105, 1258962, 1167157, 996432, -225486, 1269163, 172336, -300111, -91268,
- 67109, 408559, 186831, 435402, 149250, 1648731,
- },
- {
- -408022, 17659294, -7078643, 2522220, 45097, 2114198, 1341640, 1488743, -7792145, 2312303,
- -6353331, 2733747, 7087770, 1865626, -6147709, -9663676, -13796509, -16086263, -9734007, -22100292,
- 4868346, -13201656, 8527658, -11456825, -1660005, 3285113, -660888, 13091060, -12391518, -28672128,
- -11480984, 7733626, -4299799, 13937169, 3946001, -3444564, -2134062, 11154030, -7598334, 6259378,
- 8945343, -10517301, 6132677, -4359392, 3578782, 2481417, 3802657, 1819456, -5888400, 1478006,
- -1014686, 7853348, -2332167, 3828427, 4320737, 1639604, -2363843, -2910914, -1786170, 938450,
- -1040993, -1235340, -477815, 2155537, 730144, -2346126, -1221381, 1353452, -1668595, -131533,
- 3236258, 132070, -1530619, -375273, -421444, -1845762, 137976, -195421, 641024, 2122251,
- -1600412, -2082522, 2030983, -989990, 588947, -973884, 24159, -1392106, 380641, 266825,
- 766652, -926639, 108448, -320512, 828929, 94489,
- },
- {
- 13789529, -432349120, -9316858, 37692632, 6614250, -6586333, 9441412, 2237141, 7334194, 2596308,
- 10031433, -32259500, -7840463, 7767449, 8599061, -21467858, 10155987, 9037685, -2418604, -2457258,
- 1271847, -14106820, -2142115, 11009075, 7947300, 1110786, 1835025, 1000727, 1811403, 1659468,
- -669478, -1690607, -5004174, 9897215, -3594351, -5173825, 1263257, 3148211, -6870337, -5577552,
- -11755325, -2580739, -1453846, 1780264, -2351495, -2221035, 6360310, 4881231, -5039608, -167504,
- -1143535, -7447474, 4519380, -2344515, 4657355, -462246, 3080565, 3932043, 766115, -74088,
- -2269890, -936303, 585189, 136365, 794032, 904628, 5369, -714038, 1534914, 731218,
- 1824287, 572304, -2482491, -517544, 1098975, -394063, 45634, 1597191, -715112, 337692,
- 803159, 326418, 170188, 2047626, -731218, -1403381, -710817, -1363115, -470836, 1398549,
- 782758, -610959, -843424, -643708, -665183, 1723356,
- },
- {
- 4402342, 24000278, -20638392, -10007274, -11377368, -4130148, 11584064, 11420318, -3773129, 9361418,
- -11887933, -2324651, -11295764, -24926380, -12458090, 153545, -4541928, 6148783, 13810467, 14764487,
- 3675418, -9804337, -6129992, -5861557, 4399121, 2236604, -3870839, -12070469, -6546604, -4025458,
- -1159104, -4667556, 10943577, 16042777, -5806796, 351650, -7486665, 21470004, 1228361, -11120207,
- -606664, 1439351, -8379481, 5412733, 2002529, 7183333, 1577327, 2310156, 2073396, 3308736,
- 5296232, -1016297, -1560147, -4778151, -2421825, -43487, 1527398, 1326071, -3729105, -113280,
- 6309307, 1425929, -4292820, 1824824, -1005022, -170725, -3052111, -3672734, 4619774, -78383,
- 5130339, -3076807, -3811784, 386010, 2335389, 1685238, 391916, -337155, -675384, -2082522,
- 1414655, -1064078, 1513439, 1261647, -502511, -1166084, 92342, 125091, -1316408, -375810,
- 955093, 535260, 1667521, -1088237, 703838, 991601,
- },
- {
- -22715546, -242671552, 27535572, 22225918, -18429168, 27138824, -2397129, 14084808, -8698919, -6353867,
- -6542309, 10031970, 16514686, 34616900, -12924630, 5430450, -11161546, 1603633, -9094593, 5031554,
- -3446175, -4982699, -7240778, -10573673, 4159139, -494995, -5663452, -1707250, 771484, 11167452,
- 6093485, 638876, 1045825, -2805688, 3115999, 4617090, -782758, 3008088, -5614059, 7562364,
- 4290136, -4291746, -8140037, -4775467, -2543695, 2164127, -2317672, 192200, 3037079, -5430986,
- -8883066, -6760816, -2700461, 7911330, 1111860, 4146254, -1792075, -439160, 5907728, -2885681,
- -3190087, -5768141, 1936493, 785442, -2138357, -1207423, -3002182, -3107946, 3437048, -1001264,
- 423591, 2835752, -23085, 767725, 4185983, -551366, 351114, -1055488, -3451543, 670015,
- 945430, -233002, -2273112, 285615, 782758, 767725, 340376, -355409, -750546, 495532,
- 772557, 656593, 1014686, 596464, 387621, 213138,
- },
- {
- 1212791, 57120380, -9315247, 8318815, 10450192, 7386807, -806917, -5233955, -2434173, 2804614,
- 2126546, 1678795, 564788, -19940996, 45847164, -12065100, -7490423, -1639067, 25330644, -15655693,
- -4089346, -2389076, 3927748, 9267466, -6273874, -11809013, 8712878, 13330505, 3746822, 5954436,
- 5203353, -3019899, 15180562, -6738267, -4700305, 2457258, -3048890, 7066295, 15782394, 8243116,
- 8967355, -737124, 564788, 7953743, 1286880, 4987531, -595927, -3008088, 3094524, 2496450,
- -2157684, 3414499, -5906654, 195958, -3717294, -241592, 2237141, -4091493, 4115653, -3228742,
- -3570192, -3430068, 1513439, -372588, -2765959, -4251481, 3075197, -1337346, 411243, -2032593,
- 907312, -1577327, -1384053, 4167192, 2424509, 185220, -1509681, 2315524, 1285806, -553514,
- 584116, 2506114, 88584, 847182, -132070, -466541, -312459, 847182, 754304, 1100585,
- -660888, -599685, 92879, 1280974, -1246614, 588411,
- },
- {
- 31481036, 167113424, -32633698, 28570122, -18475338, -6715718, -5379447, -12356084, -22699976, -19477676,
- -9053254, -11516418, 4145180, 1056025, -1463510, 17522930, -6660421, 6940667, -11511586, -5376226,
- 15472620, -20029044, -9550397, 10825465, 13274133, 3957276, 4693863, 6955700, -202400, -6364068,
- -5103495, 1793149, -12344273, 8447664, 2269353, -1960653, -1774358, -16052440, -4221953, -1331977,
- -1550483, -6307160, 8311299, -4930086, -1976759, -4415764, 3878356, -2241436, -8994735, -1791538,
- 945430, 437013, -3540127, 10198937, -4216584, 4505958, 2262911, 6549289, 389768, -3016141,
- 4904316, 2263448, 681826, 1693828, 3959960, 1265405, -1214939, 1759326, 2137820, 1891396,
- 3092377, -410169, 2212445, 472983, 634045, -1830730, -2029909, -2629594, -264677, 419833,
- 4236449, -2386391, 1586454, -1388348, -1868848, 3433826, -107911, -1353452, 1376000, -327491,
- 243203, 493384, -527744, 1330366, -24696, -914828,
- },
- {
- -7019587, 15181099, 16768089, 4073240, 5211406, 6684043, -13003550, -6158983, 1838783, -12561706,
- -872415, -393526, 2696703, -24519432, 43195560, -4212289, 10876468, -8980777, -19085224, 24189792,
- 4064650, 11868068, -2536715, -13620415, -13289703, 4772783, 16028281, 25185152, -5537287, -3910031,
- -4922033, -10950556, -5500243, -373662, -15261093, 4545149, 1724429, 2667175, -4105989, -4454955,
- -6150393, -3368328, 906775, -3903589, -71941, 6240588, -3965329, 142808, -4903779, -1096827,
- -6402723, 3374771, -4917201, 1312649, 1601486, -188442, -6479495, -3533148, 3444564, -2661269,
- 4000762, -150324, 650151, -312459, 2005750, 544924, -3716757, -1574642, 3396782, 1581622,
- 2168422, 3809099, 3693135, -502511, -2215666, 3019362, 358093, -1051730, 69793, 1017370,
- -1523103, 112743, 636192, -1774358, -1462973, -866510, 1442035, 681289, -1291711, -583579,
- 1430761, 306553, 394600, 905701, 294742, -296890,
- },
- {
- -7113540, 126151776, -8680129, 2920578, -15522549, -19883552, 13873281, 10191957, 6629282, 2054605,
- 15210627, 17116518, 3558381, 13173738, 9708774, -402116, 21347598, -6773164, 2871186, -2418067,
- -11730093, -4393752, -2061584, -6754910, 6888591, -23833848, 1854352, -3272228, 282394, 20447266,
- -5288179, 3526705, -6584722, -5443871, -3829500, -8205535, -3262028, -13764833, 5983963, -11077258,
- -8839580, 4701916, -13041668, 4594005, -2853469, -181462, -2510945, -3563212, 10349261, -187368,
- -129386, -3499325, -1918777, 1976759, 3405909, -1773285, -1390496, -241592, 1850057, -1118302,
- -2471217, 2655364, 150324, 1916629, 799938, -1405528, -1835562, 930397, 1551020, -988379,
- -751619, -207232, 1059783, 394063, -180389, 25770, -2861522, -372052, -417149, 587874,
- -1984812, 496069, 863288, -2073396, -30602, 855772, 578210, -335544, 1957431, -1057636,
- 790811, 167504, -81604, -679679, -1087164, -724239,
- },
- },
- {
- {
- -1377611, 26974006, -11714523, 15314243, 6136435, 788127, 3769908, 7408819, -1481764, 9885941,
- -9555765, 14015552, -19273128, 688269, -26709328, 12967043, 2658585, -872415, 7468412, -15247134,
- -13518946, -13762686, -3675418, -27098022, -9053254, 5835787, -9786083, -5213017, -11176579, -11405823,
- -10476499, -2422899, -577673, 7712688, -5547487, 9488120, 2098629, 9423158, -6889128, 1898376,
- -2800319, -713501, 2191507, -2196339, 2586107, 5617281, -790274, 3118146, -766652, 1859184,
- 151398, -1892470, 2724083, -201327, 805843, 315680, -4432406, -933082, 4846334, 1966558,
- 4270808, 2368675, -599685, 5050345, 3754875, 739271, -322659, -728534, -73551, 2157147,
- 876710, 505196, 1378148, 2888903, -1317481, 1048509, 1959042, -1713155, 1320166, 511638,
- 562104, -1584306, -468688, -181462, 1193464, -627065, 19864, 411780, 1122597, 158914,
- -125628, -1202054, -343061, 397821, 585726, -456340,
- },
- {
- 16781510, 106806712, -29781840, -2672544, -14772003, 2020245, -3032247, -3692061, 2252174, -8607114,
- -11590506, -15705622, 6040872, -7547868, 8546985, -6709813, 8542690, 1709934, -337692, 1133335,
- 4288525, 8925479, -2445447, 2981244, -7542500, 9917616, -2260227, 3019899, 7698192, 3501472,
- -6847789, -2328946, -947040, -5781026, 3689914, -1995012, -2258079, 1986422, -2765959, -5367636,
- -8398272, -6986301, -2115272, 5288716, -9368397, -508954, 111669, 6388764, -5161477, -227633,
- 2942053, -368830, -893890, 1936493, -2146410, -5570573, 192200, -188979, -719944, 2236604,
- -3010235, 2775623, 736050, -243203, -1637993, 2177012, -1396401, 3974992, 1964411, -300648,
- 533650, 635118, 3140158, 591095, 2046015, 1180579, 2647311, 150861, -1345399, -1487132,
- -1134945, 2473901, 426812, -1269700, 170188, 1535988, 345745, 283468, -772557, 344134,
- 836445, 699543, -75699, 734976, 359704, -518080,
- },
- {
- 912144, 24743844, -22196928, 33037962, 3935264, -2644626, -6556268, -482110, -237834, 3925063,
- 14539001, 5364414, -2943663, 14147622, 11687680, -1377074, 4440996, 11978664, 15969762, -11262478,
- 10928544, -14331232, 6584722, -3923990, -6211597, -346819, -8797167, -6912213, -6612639, -6348499,
- -7057705, 12948253, -6578280, 1864553, -6641630, -1979443, -45097, 3975529, -2025077, 7391639,
- 2656974, -728534, 4911832, -8056285, 2690797, 7546795, -609349, 839666, 328028, -3352759,
- 4882841, 70867, -4336843, -2592013, -2260227, -5076115, 266288, -2687039, 3193308, -2233920,
- 4180614, -3775813, 4675072, -772557, 405338, -163746, -606664, 452045, 4032974, 758599,
- -1372242, -1093606, -678605, -726386, -331786, -1846299, -1023813, -703301, -961536, -1605244,
- -781684, -384400, -340376, -18790, -829466, 187368, 1223529, -537, -599148, 201863,
- 64425, -309775, -380641, -331786, 1090922, 900869,
- },
- {
- 1184337, 26674968, 2776160, -2526515, 29528, -343597, 565862, -2348810, 1349694, -2573222,
- -4642860, -1482301, 5924371, -4731980, -13475460, 29572460, 20386600, 665720, 1550483, 2830384,
- 8082592, 15904264, -10104984, 2269890, -586263, 7783555, 8504035, -21261162, -526670, -9063455,
- -5582384, 814433, -5284958, 12262132, -92879, -9723269, 6924024, -9235253, -1520418, -6718940,
- -149250, 3227131, 2620467, 6963216, 4789963, -6981470, -9754944, -4108136, 4982162, -4397510,
- 2884071, -1326071, -3171833, -1401770, -506806, 3071439, 1756642, 1221918, 527744, 6759205,
- 2901251, -25233, -1516660, -344671, -992674, 3095061, 631897, 900333, 250182, -257161,
- 2826089, -130997, -1446867, 834834, 1381369, 836982, -911607, 574452, -849330, -768799,
- -1770600, 89121, 330712, 850404, -137439, -316754, -642098, -1542430, 37581, -70867,
- -488016, 525597, -984621, 413927, 13959, -1099512,
- },
- {
- 44453984, -243696448, -28391882, 17664664, 5859946, 1834488, -510027, 8242042, 842887, -5176510,
- -11084237, -4523675, 7035157, -4313758, -5464272, -6120866, 17598092, 9832254, -801011, -2201708,
- -346819, 639950, -20623896, 4707284, -228707, -879931, 2782065, -7792145, -15520401, 9508521,
- 9950902, -1260573, -9338333, -1307818, 2811056, -542777, 5443871, 8040179, 8443906, 8438537,
- -2379412, -2742337, -11179800, -6650757, 2624762, -850940, -1950452, -3233037, 4944044, -682900,
- -5629092, -1887101, 2608656, 3911105, 1552631, -4228932, -2605435, 1971390, -4236449, 2081449,
- 288837, -1655710, -3226594, -1155346, -172336, 2301029, 1315871, 1198833, 905701, -456877,
- -65498, -1335735, -1991254, 525597, -4664335, -191126, -629750, -1112397, 265214, -433255,
- -9664, -258235, -136902, 1619740, -443992, -1692217, 1292248, 656056, -1152662, -543850,
- 1176821, -132607, 1678259, -927713, 641024, -810675,
- },
- {
- -650151, 6317360, -8517457, 2198487, -1167694, -141734, 89657, -2009508, -39728, -3878356,
- -8592082, 4095788, 1847910, -6553583, -45891724, -16262357, -22831510, 3938485, 563714, 7593502,
- 3569655, -9284646, 6526203, -8921184, -9682467, -2468533, -3017215, -21919366, -12793097, -19848118,
- -2596845, 10401337, -11905649, -3543348, -1339493, -628139, -2250563, 3103651, 2309619, 1561758,
- -3674882, -468688, 748398, -6393059, 584652, -3899294, 982474, 5469104, 833761, -5954972,
- 804770, -105764, 456340, -3869229, 5811091, 1372242, -6151467, 2453500, -1403917, 3948149,
- -2246805, -266288, 1005022, -722091, -1380832, -2062121, 3322157, 916439, 3003793, 1629403,
- 1639604, 2197950, -2615635, -1362578, 961536, -3170223, 682363, 572841, 352724, 2598992,
- -992674, 65498, 428960, -195958, -258235, 900869, -592169, 1450088, -972273, -187368,
- 789200, 774168, -743029, -588411, 1345935, -721555,
- },
- {
- 72727752, -153870432, -47540992, 40022116, 11057930, -22012, -1344862, -15895137, 395674, 4968204,
- -2542084, -1122060, -8202851, -6306623, -5370857, 11674258, 7284802, 6495065, 5616744, 2134062,
- 1388885, -6742025, -9539122, 2408403, -1064078, 611496, -319438, 6892349, 5813238, 527744,
- 437013, -2093260, -5555004, 3376918, -2747705, -4961761, -1327145, -14125611, -853088, -939524,
- 2407329, -134218, 11194295, 1759863, 12095165, 4767951, 122943, -1765232, 1020055, 1644436,
- -1235877, 7262253, -7741142, 732829, 6034966, -3423626, 1571421, -1488206, -1490891, -296353,
- 1000727, 4647692, 611496, 2280091, 201863, 1778653, -5368172, -1561221, -1694902, 2912525,
- 2785286, -388158, -1187022, -1732482, 2001455, 39728, 260382, 2979634, -6979, 1068910,
- -372052, 99858, -132070, -880468, -175557, -779000, 398895, 113280, -1611, 1176284,
- -173409, -244276, 736050, 281857, -648540, 72478,
- },
- {
- -1296006, 6168647, -15374372, 2079301, 520228, 664646, 783295, 1682554, -7037841, 1622961,
- -3723200, 4880694, 1458141, -14409078, -16664473, 7171522, 16320339, 2411087, -12153684, -135828,
- 33729452, 5994701, 24628416, -1148904, -1299765, 9907953, 7021735, 12928925, -14285061, -1698660,
- 8676908, 6403260, -347892, 19981798, 8477192, 244276, 920734, 7205345, 128849, 6724845,
- 3257196, -9460202, 5312875, -287226, 4844723, -2354716, -324807, 6033892, 116501, 1342177,
- -1323924, 1307818, -5559299, -214748, -1263257, 2659122, -1927367, 438624, -1327682, -1872069,
- -708133, -2993592, -1234803, 2311229, -549756, -3128884, 1236951, 403727, -1863479, 824097,
- 2572686, -1004486, -1257889, 301185, -580357, -1304060, 671089, 592169, 1132261, 1432372,
- 331249, -916439, 1635846, 1075352, -270046, -1549946, 1136019, -470299, 806917, -402116,
- -157840, -1158031, -694174, -462246, 343597, -628676,
- },
- {
- 16157667, -406241632, 2036351, 52777096, 13452911, -10241886, 1083406, -1722819, 8130910, -2989297,
- 22189948, -4803921, 12438225, 15877957, 24910810, -15637439, -396748, -5332202, -3027415, -6446209,
- -1963337, -8362838, 3758, 6040872, -1027034, -3470334, -3515431, -6149857, -471373, 1100049,
- -7863012, -6488622, -1224066, 3695283, -9819369, -1585380, 5630166, -3096672, -9551470, 1512365,
- -4323959, -1045825, -1146219, -877247, -1898912, -1039382, 235686, 1218697, -374199, 11148124,
- 7339562, -4849018, 3179887, -4138201, 4949950, 965294, 1897839, 1758789, 3912715, 2570538,
- -2418604, -916439, -2056216, -834834, 1556926, 494458, -505732, -267899, 3088618, 1640141,
- 2670933, 1079647, -2313377, 240518, 1828582, -904628, -1262184, 1047972, -657667, -628139,
- -772557, 454730, 143881, 762357, -619012, -219580, 359167, -1644973, -1427540, 770947,
- 787590, -503048, -204011, 164283, -1207423, 1491427,
- },
- {
- -3670587, 53792856, 8395587, -4719096, -2297808, -7168838, 6618545, 6046777, -3777424, 10385231,
- -14855218, -5414880, -1697586, -10428717, -9611600, 4864588, 1335198, -7438347, -18254148, 12206297,
- 12822088, -11443403, -9270687, -12407624, -10723460, -3681324, 2500745, -2900177, -135828, 8724689,
- 7196218, -4260071, -3368328, 8764955, -8140037, -706522, -9569187, 11161009, -2217277, -6239514,
- -1772211, -1284195, -4578972, 6659884, -5826123, 4113505, 257698, 3508988, 4667556, -649077,
- -3136937, -4225174, 1297080, -2365453, 372588, -1172526, -1834488, -1535451, -5301064, -1062468,
- 5423470, 993211, -4056597, -203474, -2381023, 2279554, 680752, -3301219, 799938, 340376,
- 6058588, -8590, -1078037, 2031520, 2746095, -154619, -522375, 263067, 1451162, 128312,
- 3022046, -1240709, -39192, 219580, -625455, -319975, 627065, 880468, -29528, -202937,
- -280247, -35433, 363462, -1757715, -2147, 194884,
- },
- {
- 24057186, -245443952, -24823838, 6665789, -35250944, -14558865, -45432700, 14822469, 9667435, -1218160,
- -8814884, 5478231, -5519570, 5348308, -27521076, 4052302, -9678172, 939524, -7385733, 1574106,
- 1361505, -2272575, -10299868, -9494025, 1028645, -8586176, -395137, 238371, -5135171, -1551557,
- -94489, 441845, 4342212, 443455, -2501282, 2528662, -2178622, 3943317, -1770600, 4892505,
- -890132, -4695473, -1999307, 1161789, -2117956, 2931315, -1967632, 2128156, 4406100, -454730,
- 1282585, -1550483, -996969, 6359773, -2077690, 3730179, -1745367, -63888, 4754529, -1459752,
- 1672890, -818728, 2661806, -190589, -1773822, 352724, -1459215, -3272228, 984084, -3405909,
- -1045825, 1884417, -681289, -650151, 1840930, -3100430, -1594507, 258772, -1078037, 1985886,
- 950262, 39728, 32212, 142271, 410169, 1215476, -785442, -191663, -453656, -465467,
- 392453, -290984, 678068, 968515, -277025, -547071,
- },
- {
- 76773, 55642376, -13594108, 4536023, 1316944, 5835250, 4002910, -6565932, 1436667, -313533,
- -4865124, -486942, 3191161, -3270081, 55682640, -8630200, 1824287, 6020471, 33527588, 13408888,
- 19640348, 5971079, -6525129, -4741644, -4862440, 5481452, 25710748, 20477868, 15168214, -795643,
- 8397735, -851477, -595927, -2079301, 2904472, -189515, -1992865, -1641751, 4804458, -573915,
- -3316252, -3313567, 900869, 6279242, 1070521, 7157563, 925565, -3063386, -1631014, -1442035,
- -153008, 5399311, -5717675, 1160178, 930934, 5335423, 2630668, -2826089, 6167036, 159451,
- -171799, -2571612, 5278515, 1013075, -1739999, -3777424, 4782446, -236223, 772020, -1877438,
- 1635309, -608812, -1599875, 4260608, -907312, -2929168, -827855, 1385664, 103616, -291521,
- -180926, 473520, -1347009, 643708, 355409, -984621, -1595580, 272730, 34897, -216896,
- -685584, 93952, 780610, 1432909, -1033477, 943819,
- },
- {
- -54889684, 95779920, 5037997, 19902342, -22550188, -28474560, -20681342, 8353175, -4365835, -17105780,
- -424665, -11843909, 3615826, 7879118, 2166274, 17614734, 4935991, 20106890, -8405788, -16631187,
- 7257958, -15715822, 5154498, 20243792, 9193377, 1620276, 5078262, 1768453, 2303713, -784368,
- -5091684, 552977, -6549289, 9421548, -5219996, -983548, 6651294, -6305012, 4194573, -2544768,
- -4011500, 231391, 12998182, -1751273, 10082436, 2329483, 6206765, 769873, -6027987, 1611687,
- 694711, 302258, -4196720, 6594923, -8181376, 1934883, -934692, 5164698, 1848983, -4085588,
- 2937758, -772020, -606127, 2802466, 4363150, 1534914, -1191853, -372588, -2283849, -1043140,
- 2937221, 354335, 1589675, -1366873, -650151, -1799054, 1284195, -683974, -641561, -2900714,
- 1271310, -2944200, 32749, -1862942, -1555315, 2683281, 488016, -556198, 1605244, 339839,
- -241592, 963146, -1400696, 434865, 444529, -130460,
- },
- {
- 7519951, 729071, -9247065, -3708168, -397821, 9335648, -3388192, -3235184, 12254079, 4357781,
- 8099772, 8977555, 6062883, -42720428, 32102196, 1064078, 11389180, -22605486, -13267154, 19397682,
- -24498494, -15103789, -14664629, -13726179, -16726750, -14645838, -9030706, -2233920, -4114042, 1701344,
- 2979634, -333934, -2012192, 4621385, -5397164, 8573828, -2022393, -712428, -1114007, 1310502,
- -1511829, 528818, -1536525, -5441187, -3052111, 9169218, -5152887, -5317707, -1712618, 3409130,
- -5308580, 2408940, -4866735, 2736968, -2712809, -5217312, -3416647, 858457, 3706020, -1098438,
- 6356552, -2774549, -1114007, 260919, 810675, -663036, -2128156, -550293, 3864397, 1472100,
- 1007170, -586263, -132607, 1632088, -1120987, 985158, 438087, -612570, -887985, 1440962,
- -321586, 26307, 1069447, 974958, 1269163, -43487, 964757, 129386, -184147, -623844,
- -71404, -625455, 329102, 801011, 193810, 475131,
- },
- {
- -14421963, 143354736, -3893925, -14194867, -8977019, -22566296, 3073049, 6190659, 8683350, 10363756,
- 9863929, 8332774, 5659693, 323196, -1247688, 5164162, 14265734, -7218230, 4867809, 1540283,
- 3774203, 1218160, -6694244, -21918292, -1031866, -19572702, 6011344, -863825, -4860293, 19406810,
- 3078955, 1107028, -4341138, 421444, 4614406, -4124779, 1197222, -20987894, 4648765, -2284923,
- -5115306, 10449655, -465467, 14761266, 1542967, 748398, 1541893, 2514167, 15063524, 613107,
- -2869575, -2035278, -1738388, 909996, 3101503, 988379, 2151779, 3624953, 4639102, 1341640,
- -3241627, 1110249, -7516, 1678259, -1104344, -2521683, -2321430, -3700114, 955630, 1434519,
- 565325, -49929, 932008, 1428077, 412317, 648540, -588411, 1496796, 92342, -61203,
- -3392487, -605054, 1724966, -1513439, 1553704, 851477, -615254, 280784, 1674500, -2010582,
- 57982, 165356, 1437740, -163209, -1098975, 1275605,
- },
- },
- {
- {
- 585189, -77846, 9246528, 12181064, 10125922, -695785, 2975339, 4236985, 439697, 12907987,
- -4264366, -991601, -3684008, 2978023, -32589674, 11512660, 10708964, 3332358, -8315057, -18931678,
- 5913096, -19453518, -3696356, -21154324, -4955319, -9342091, -5423470, -3682398, -5153424, -16916266,
- -7402913, 1315871, -5643050, 12465606, 76773, 7750806, -1168768, -2903935, 2437931, 2933463,
- -922881, -2973728, 1707786, 1515050, 5220533, -3425773, 1614908, 6288906, 2663417, 2351495,
- -3596498, -3623879, 2085207, 90731, 3133179, -2204929, -3196530, 691490, 1981591, 2266669,
- 3721589, 3773129, -492311, 3828427, 2869575, -523986, 1276142, -827855, -893353, 1422708,
- 1582159, 1992865, -24696, 2292976, -702227, 1602560, 1203128, -1569274, 679142, 18790,
- 523449, -1033477, 3758, 565862, -775242, -724239, 684510, 699543, 318901, 965831,
- -591632, -96100, -725313, 239981, -63888, 464393,
- },
- {
- -11904039, 13554917, 70801464, -30354682, 10802916, 2882997, -8716099, 5764920, 777926, -13833553,
- -9743670, -5194763, -395674, -4313221, -1654099, 10922639, 3501472, 4124779, -1636383, -5489505,
- 11453067, 12559558, -7323993, 555661, -2217814, 5789616, 1117228, 7985955, 3479997, 4497905,
- -8629663, -1308891, -7729331, 2131915, 3717831, -7007239, -2029372, 1792075, -5578626, -7773891,
- -1081795, -9682467, 979789, 1505923, -6815576, -3201898, -521839, 2732136, 3171833, -1259499,
- 1508607, -792421, -5352603, 806917, -938450, -1247151, -2007897, -1066763, -1841467, -549756,
- -1102196, -68183, 293132, -56908, 1254667, 221728, 1228361, 2889439, -310311, 2940979,
- 618475, -327491, 3032784, 294742, 2357400, 932008, 1534377, -378494, -931471, -488016,
- -931471, 2654827, -707596, -894427, 975494, 774168, 827318, -527207, -451508, 283468,
- 35433, 1128503, 724776, -365609, 208843, -20401,
- },
- {
- -1697586, -23950348, 14733885, 25521770, 12185359, -4151086, -2930242, -905701, 2282238, 6634651,
- 10682121, 7920457, -1225139, 14300630, 11995307, 3571802, 8805757, 8078297, 6799470, 8967355,
- -3620658, 3544422, -584652, -3336653, -1491964, -7956427, -9518721, -9245454, 1214939, -3912178,
- -5842766, 4811437, -5383742, -1835562, 1636383, -2058363, -4721780, 6992207, -8212515, 10490458,
- 3513820, -1896228, -1341640, -4409858, 5298916, 2063732, 312996, 3163244, -1198296, -1117765,
- 586800, 1640141, -1264331, -3337727, -5958731, -1834488, -1391569, 610959, -507343, 946503,
- -356482, 2665027, -817654, 609885, 226560, 1261110, -502511, -137439, 3732864, -275952,
- -1797444, -439697, -669478, -1081258, -2889976, 391916, -279710, -343597, -1619740, -761283,
- -614180, -843961, -641024, -664646, 529892, -690953, 952409, 1069447, -729608, -76236,
- -140123, 211527, -1023813, 174483, 653372, 934155,
- },
- {
- -1212791, 27013734, 7228430, -6409702, 588411, 830539, -1478543, 748398, -651224, -4774930,
- 1089311, -4629438, 3291556, 11906723, 13827110, -6725382, 32503238, 5063230, 3920768, 1741609,
- 4056060, 14931991, -7688529, 1292248, -7885560, 7250442, 17265232, -12200928, -15709380, -1484985,
- 2212445, -8511015, -11017665, 8260296, 3954054, -470836, 4439923, -4502200, -12005507, -3397856,
- -239981, 4632659, 3950833, 6710887, 4053912, -6020471, -10230612, -2813741, -83752, -809064,
- -1924145, -305480, 197032, -2337536, -2208150, 2978023, 1967632, 2676838, 3255585, 2690797,
- 4781373, -346282, -2911451, -1275068, 916976, 1385664, 2281165, -57445, 620623, -24696,
- 2095407, 112743, -34360, -847719, 2318746, 606127, -835908, -699006, -1427540, -114354,
- -1106491, -740345, 604517, 571768, 1074, -960462, 571231, -1257889, -905164, -807454,
- 281320, 43487, -136902, -330712, -379031, -956704,
- },
- {
- -48462264, -172067120, 15042049, 28164784, 1133871, 2815888, -1941862, 9408126, -591095, -8276402,
- -4985920, -16342887, 13955422, -572304, -14271639, 6300180, 6669548, 1434519, 17458506, -825171,
- 2241973, -14243185, -12465606, 6225018, -958851, 8337069, 5010616, -3542274, -21269214, 3190087,
- 566399, 2129230, -351114, -5056787, -2319819, 3907347, 16886200, 4118874, 11086384, -4143033,
- 5743982, -2643552, -7190312, -9025874, 3735011, 3475702, -7519414, -1762010, 5316096, -5829881,
- -4746476, 134755, -2116345, 5965710, -998043, -1679332, -527744, -3514894, 902480, 2143189,
- -3835406, 1660005, -3810710, -1054415, -325881, 2761664, 750546, 1261647, 662499, 1327682,
- -2393908, 34360, -1926830, 242129, -1460289, -1267015, -872415, -330176, -639950, -446140,
- -887448, 570694, -538482, 1604707, -675384, -1600412, 1832877, 260382, 419296, -227096,
- -241055, -34897, 999654, 702764, 42950, 151398,
- },
- {
- 93416, -6894497, -4215511, -435402, 3405372, 104690, -560493, -3628174, 234076, -7481833,
- -590021, 988379, 2652679, 8476118, -31932008, -27576374, -25235080, -1237488, 8466991, 1065152,
- 4254165, -3502009, -288300, -16361141, -4811437, 23816668, -20774756, -16764868, -6681896, -21791590,
- -5626407, -2310156, 991601, -3875134, -13894219, 7238631, 2310693, 952946, -2056753, 2027225,
- 1627256, -1326071, -4203163, -6073621, -3172370, 878321, -1116692, 3502546, -3400540, 1563905,
- 3505230, 106837, -3520263, -508954, 3460133, -1432372, -3004330, -57445, -159988, 4115116,
- -370441, -33286, -1188095, -444529, 722628, -957778, 27917, 2487323, 2401424, 1905355,
- 1429687, 1202591, -925565, -628139, 1109175, -1915555, -600759, 82141, 665720, 1149441,
- 406411, -1894081, 1052267, -159988, -274341, 1356673, 318364, 619549, -1064078, 450435,
- 482647, -330176, -130460, 91268, 228707, 4295,
- },
- {
- -61954368, -58377732, 28474560, 60321740, -7135015, -4290136, -4249870, -5937256, -5246840, -9185324,
- 3478387, -3447785, -2421825, -2200634, 6788196, -3547643, 7552700, 10303090, 1258425, 5972689,
- 1136019, -7878044, -1699733, -6085969, -456340, 93416, 3948149, -1003949, 6023692, 5639292,
- 1692217, -5031554, -7358890, 8036958, -3612604, -8299488, -5925981, -13254269, 1542967, 2454037,
- -2240899, 7425999, 2599529, 10350334, 9232032, -821413, 4215511, -1800665, 2500745, 133681,
- -1166621, 4148402, 33823, -1338956, 3847754, -1900523, 900869, -1499481, -1047435, -2123325,
- 579284, 4082367, 2194728, -317828, 505732, -32212, -3557307, -3112778, 854699, 2079838,
- 1466731, 635655, -1046898, -1159641, 306553, 566936, 569083, 1631551, 199716, 615791,
- -335007, 872952, -1025423, -945967, 468688, -1632625, 21475, 791348, -16643, 1304060,
- -408559, 374199, 387084, -339839, -201863, -1115081,
- },
- {
- 397821, -15282567, -664646, -1733556, 2014340, 978716, -188442, -552977, -4006131, -40802,
- 1362578, 1630477, -9669582, 1742146, -14835354, -3259880, 23965918, 2538326, -13358959, 14281303,
- 18102750, 20085414, 10563472, 3688840, 8989367, 9977746, 13620415, -2521683, -12455405, 13524315,
- 2216203, -1757715, 10618770, 16623134, 15213848, -4566624, 6425271, -1169305, 9747965, 4290136,
- -6903086, 5906, -6129992, 1426466, 5744519, 2098092, 111132, -2432025, 8512625, -2203855,
- -1079111, -3669513, -387621, 267899, -3128884, -165356, -460098, -1522029, -364535, 605590,
- -1283658, -3948686, 408022, -446140, -1004486, -2096481, 3652870, -2092186, -1888712, 2255932,
- 673773, -197032, -974421, 561030, -1243930, 152471, 813359, 753767, -30065, 1760400,
- 797253, 61740, 712428, 348966, 628139, -1409823, -96100, 1067836, 427886, -17717,
- -1023813, -890669, -701153, 87510, 295279, 158914,
- },
- {
- -38660612, -325942368, -1202054, 75983344, -9721658, -6199249, -6213207, -2864743, 14892262, -7669738,
- 5937793, 23763518, 10829223, 14239427, 16929688, 2807298, -14195404, -3511136, -1484448, -2985539,
- -9201967, -4568235, 2638184, 1905355, -2382096, -60666, -854162, -8049843, -1925219, -1709934,
- -5094368, -11858942, 5985574, -7655779, -2439005, 2760053, 914291, -6573985, 2234994, 1569811,
- -1660542, -9328132, 1335198, -2707440, 905701, 3938485, -2703145, -1273995, 1282585, 8782671,
- 6770479, 1270237, 1202054, 177167, -1979443, 2365453, 1422708, 697395, 3857954, 3141232,
- -1841467, -1681480, -2106145, 836445, 806917, -593242, 23622, 508954, 695785, 3218004,
- 2440615, 673773, -1084479, 789200, 353798, -846109, -312459, -1065689, -329639, 571231,
- -370441, -846645, 157840, 676994, -650151, 521302, -121333, -899259, -1023813, 128849,
- -12885, 46708, -295279, 845035, -1116155, 490163,
- },
- {
- 3061238, 58544700, -5272073, -211527, 2759517, -6304475, 2362232, -209380, 1577864, 3779034,
- -1369558, -8304856, -13124346, 15186467, -8135205, -7702487, 7969849, -7063611, -26742614, 5450314,
- 16091095, -6651831, -7147363, -13436268, -9067750, -1146756, -1237488, 4129611, -1749662, 13521094,
- -815507, 825707, -12922483, 3942243, -4009352, -1783485, -657667, 2018635, -1332514, -7642895,
- -2151779, 3792993, -916976, -2229088, 376347, 2716567, 287763, 634045, 4710506, -2647311,
- -4434554, -3241627, 641024, -1648731, 1399623, 476741, -1641751, -2120103, -4505958, -1981591,
- 912144, 3511136, -4772246, -12348, -842887, 1408212, 995896, 275952, -3228205, 1381906,
- 2075006, 3370476, 1002338, 2744484, -292595, 177167, 1238561, -1450625, 1415729, 1339493,
- 1445257, 82678, -358093, -1537598, -571231, 1009854, 1061931, 281320, 239981, 69256,
- -485868, 192737, -807454, -588947, -594316, 238908,
- },
- {
- -24922622, -210356224, -2458332, -12569759, -3488587, -34763464, -32127430, 4790499, 12367358, -2412698,
- -2755222, 6994891, -10813654, -5837398, -13996225, 1025960, -7196755, -11115375, -3044058, -12127377,
- 9221832, -298500, -6267431, -8992051, -1577864, -7465190, 6466610, -5745593, -7097971, 759672,
- -3234110, 208843, 4004520, -2100239, 1691680, 620623, 4474282, -6034429, 4911295, 3846680,
- -5179731, -1134408, 1176821, 3565360, -1756642, -1217086, 1284195, 2390686, -1165010, 4489315,
- 2600603, -2909304, -519691, 2266132, -1504849, 5164698, -965831, 2124935, 1215476, 1818382,
- 1392643, -176631, 299037, -2474438, 1469416, -1240172, 548145, -2905546, -1046898, -1177358,
- -655519, 448824, -430034, -784368, 293132, -1268089, -3404299, 927713, -752693, 1954210,
- 490700, 60666, 960999, -184147, -133144, 1002875, -1371168, 569083, -629750, -201863,
- -130997, 62814, 330176, 822486, -74088, -987306,
- },
- {
- -1068910, 40505300, 6753299, -2727304, -3794067, 4140349, 10030896, -2348810, 233539, -1145683,
- -8596914, -753230, -7085086, 17685064, 28854128, 24867324, -9666898, -388158, 36179732, 19054086,
- -2756832, 34413424, -8141648, -9774809, -8301098, 16848620, 24857660, 8201777, 26670136, -3807489,
- 1389422, 3368328, -4861903, 4831838, 1088774, -343061, 1038845, -392453, -6566468, 1382443,
- -3690451, -4250407, 3757560, 2623688, -1419487, 8231842, 2552284, -1381369, -5118528, -4930086,
- 5836861, 1329292, -1333051, 16643, 731755, 5101348, -1540820, 4563403, 1460289, 352187,
- 3350075, -2339147, 1304596, 1402844, 1806034, -1564442, 2803540, 507343, -1321239, 1383516,
- -1321239, -1581085, 821413, 593779, 151398, -692027, 93952, -897648, -1060320, -75699,
- 1461900, -1047972, -1913945, 1119376, 497142, -958851, -1206349, 831076, -481573, 496069,
- 241055, -66572, 574989, -134755, 971200, -193274,
- },
- {
- 57936960, -22634478, 2653216, -2272038, -6982543, -30773978, -16587701, -168577, -5748277, -2383707,
- -8125542, -10630581, -1753420, 13897977, 15892453, -1985349, 15829102, 3779571, -3309809, -9993852,
- -7617662, -4437775, 9620727, 19585050, 3885872, -753230, 5380521, -4306242, 9704479, -2940979,
- 2651606, -6317897, 2043868, -2465848, -126165, 1456531, 1014149, -755914, 3612604, -1496259,
- -5050345, 3467112, 9795210, 883153, 6488622, 7147363, -1469953, -2010045, -665720, 5282810,
- -1141924, 246424, 3986804, -353261, -2787434, -2506650, -1757715, -403190, 5057324, -1218697,
- 2042794, -1541893, -1019518, 3322694, 2100239, -876710, 1555852, 408022, -2188823, -3218541,
- 2300492, 3202435, -1321776, -165893, -176094, -1315871, 558346, 477815, -2159832, -1624035,
- -1198833, -79994, -1508607, -1791538, -1060857, 601832, 1331440, 1217086, 176631, -275952,
- 164283, 1250372, -963683, -372588, 456877, -363462,
- },
- {
- -7331509, -4227859, 6176700, -2895882, 1955284, -1150514, 5276904, -1023813, 8202851, 12011950,
- 5902359, 10188736, 2275796, -12724914, 5181878, -10402948, 6848326, -15362561, -4313758, -17272210,
- -7012071, -28302760, -3665755, -15861314, -4660577, -21145734, -12023761, -6552510, 5591511, 2297271,
- 3570729, 3624953, 1347546, 1104880, 2425046, -1061394, 5458904, -5804649, 1484985, 5109401,
- -4367982, 3124589, -9458592, -3100967, 1299765, 8957691, -4099546, -9124658, 549219, 1347009,
- -804770, -1629403, -1491427, -3307662, -315680, -5516886, -261993, 2560338, -471910, 2575370,
- 3077344, -2310156, -3977677, 562641, 1544578, -2507724, 2412698, 324807, -16643, 1539209,
- -822486, -600759, 776852, 3447248, -563714, -2621541, 2092186, 1243930, -493384, 775242,
- -982474, 538482, 425739, 1365263, 732829, 874026, 780073, 514322, 897111, -1098438,
- -1512365, -440234, 78920, 600222, 293132, 316217,
- },
- {
- 31731756, 100152728, -1818382, -11399917, -13154411, -15752866, -8021389, 6714645, 9640591, 5770826,
- -563178, 15707769, 3295314, 2015950, -9869298, 12358768, -5305895, -6606734, 5921686, 11200201,
- 9266929, -3928821, -9294309, -13313325, -4874788, -17631378, 5103495, 1081795, 4177393, 6023692,
- 5679021, 1787780, -257161, -6119255, 5726265, -6105296, 239981, -8730595, -5385352, 59056,
- 118648, 6197638, 10887742, 6752226, 498753, 1227824, 3469797, 6122476, 7303055, 4000225,
- -5092221, -625992, -1793686, 3388729, 1110249, 162672, 2120103, 3866008, 3202972, 3082713,
- -557272, -717796, -1343251, 1234266, -277562, -1465121, -1189706, -2602213, -1690607, 1407139,
- 1028645, -858457, 1590749, 1371168, -82141, 1901060, 549219, -258235, -170725, -923955,
- -979789, -353798, 617402, -168577, 539018, 1277753, -1148367, 430570, 482647, -289373,
- -1906966, 518617, 1598265, 336081, -888521, 1533303,
- },
- },
- {
- {
- 201327, -13214004, 2683281, -4859756, -4590783, 293668, -770947, 471373, -450972, 13018583,
- 384400, 3451006, 9732396, 7620346, -21898964, 557272, -14116484, 941672, -1198833, 3633542,
- 21256866, -10541460, 8477192, -18957448, -5113696, -4327180, 9694815, 7667591, 8524973, 816581,
- 735513, 4374424, -9838159, 5250598, -1844152, 5938866, -5651640, -7462506, 3361886, 4306242,
- 3446711, -2377801, -3053185, 1671279, 7863548, -3812320, -1461363, 5420786, 2032056, 2517925,
- 2579665, -745177, 1523103, 601832, 1888712, -1814087, 326418, 288837, -481573, 530428,
- 289910, 1967632, -1806571, -221728, 781147, 190589, 1576253, 638876, 1188632, 214212,
- -572841, 956167, -1057099, 2218351, 224412, 1372242, 563714, -679679, 512175, -595390,
- 409096, -516470, 520765, 529892, 139586, 143345, 544924, 610959, -239444, 323196,
- -760209, 258235, -504122, 433255, -112206, 614717,
- },
- {
- 9801652, -82937432, -20039244, -30176440, 4469451, -2437931, -3164854, -1218160, -6061810, 2508798,
- -1424319, -4756140, 4029753, 103616, -4393215, 9736154, -5010080, -1047972, -1151588, -7581154,
- 6270116, 8024073, -3850975, -4675072, -9389335, 892816, -1776506, 7198902, -173409, 1651952,
- -1677185, 3468723, -5153961, 1261110, 1159641, -5639829, -5448166, -972273, -3084860, -3082176,
- 4063039, -4293357, 4085051, 2796561, 52613, -13959, -1628330, -3220689, 262530, -2868501,
- -372052, 625455, -2403571, 2525441, -139050, 853088, 1347009, 131533, -2054605, 240518,
- 193810, -835908, -818191, 926639, 2182917, -479963, 1047972, 3083787, -152471, 1768990,
- -228170, -907849, 1336272, -601832, 760746, -850940, 118648, -745714, 42413, 1239098,
- -682900, 554588, -1089848, -630286, 702764, -8590, 798327, -881542, -1048509, 147640,
- 66035, 695785, 516470, -988379, -235149, -17180,
- },
- {
- 2039573, -38922604, -9605157, -7341173, -3240016, 1180579, 1062468, 412854, 216896, -7334731,
- 2353105, 12856985, -11137924, 132070, 10654203, 1190243, 2203855, -597537, -7923141, 5674189,
- -2743410, 5644661, 6728603, 6010807, 5303211, 349503, -722628, -5007395, 675921, -2282238,
- -616328, 811749, -8626979, -2689723, 3361886, 1151588, -4064650, 5812165, -8701604, 3373160,
- -308164, 1352915, 2109366, -1335198, 3708704, 646393, 449898, 2189360, -1198296, -102542,
- 277025, 897111, -293668, -1352915, -1648194, 1973538, -67109, 3795677, 884763, 373125,
- -2268817, 2900177, -2036351, 106300, -592169, 867047, -441308, -1416266, 1230508, -505732,
- -779000, -528281, -364535, 887448, -1062468, 234076, -214748, 1673964, 53687, 863288,
- 512712, 175557, 311385, -937377, 510564, -401579, -405874, 162672, -601832, -161061,
- 312459, 816581, -882616, -406948, -184147, 475131,
- },
- {
- 1221918, 17468168, -3716221, -4954782, 1305670, 303332, -1639067, 1610613, 376347, -2793876,
- 1497870, -6382322, -754304, 7064685, 32483912, 746787, 8441758, -13241384, -4514011, 2699387,
- -1909113, 14496051, -467615, -1356136, -2834142, 4092567, 10679436, -283468, -7278896, 4656282,
- 2190970, -10994043, -6706055, 4113505, -1033477, 5513665, 8848706, -2232846, -5417028, 3657165,
- 5424544, 5190468, -2593087, -68719, 4232154, 343597, -2092186, 194347, -2461553, 2097555,
- -1723893, -768262, 1664837, -166430, -1226750, 1418950, -1913408, 1799591, 1736777, -3274913,
- 2187749, 554051, -2131378, -1704028, 1861868, 256624, 909996, 410169, 561030, -1294933,
- -708133, -1144072, -433255, -1097901, 1068373, -185757, -497679, -270583, -1009854, 149787,
- -428960, 309775, -176094, -240518, 714575, -585726, 614180, -421444, -132070, -277025,
- 208306, -398358, 574452, 154082, -325344, -634045,
- },
- {
- 41880764, -70008504, 8005282, 36514740, -1853278, 3137474, -4110284, 813359, -6084358, -5641977,
- 10264972, -9822053, 12087112, 437550, -8940511, 8642011, 308701, -7961259, 15100568, 3341485,
- -1951526, -7250442, 348429, -1476395, -5767068, 4781373, -2597382, 10107669, -7342247, 993748,
- -926102, -1700270, 220117, -414464, -2033667, -1930588, 3863860, -4889821, 9343701, -4786741,
- 6626598, 336618, 856309, -3218004, 538482, 2343442, -4966593, -1267552, 3230352, -5965710,
- -1590212, 1224066, -5105643, 1475858, -3354370, 1319092, 656593, -4714801, 573378, 3423089,
- -1801202, 2519535, -2828236, -979789, -784905, 2182917, -1291711, -415001, -277025, 1020592,
- -1891396, 972810, -1523640, 459025, 66035, -179852, 907312, 1037235, -280247, 57982,
- -623307, 253940, -601295, 916976, -393526, -883153, 715649, -651224, 590021, 279173,
- -37581, -132070, 72478, 281857, 108448, 345745,
- },
- {
- 935766, -10346039, -7285339, -1535451, 1643362, 748398, -501437, -1923609, 2824478, -2742874,
- 5849746, 2596308, -1854352, 741956, -4477504, 3860639, -16386374, 2196339, 5068062, -5965173,
- 10546829, -1010391, -2552284, -11304891, -4583804, 29266980, -3732327, -4582193, 7143605, -8635569,
- -49392, 151934, 3490735, 2638184, -7242926, 2425583, -3109020, 1913945, -614717, 1230508,
- 5117991, -1702418, -6003291, -3176128, -2473901, 2204392, -1762547, 703301, -2894271, 4388383,
- 4518306, -171262, -2204392, 2160906, 2479807, -3758, -1392643, -609885, -1326071, 1125818,
- -1738388, -1453846, -1555315, 481036, 3258270, -430570, -1647120, 983548, -974421, -299574,
- 660351, 666794, 113817, 1102733, 2244657, -1105417, -679142, 73551, 623844, -650151,
- -86973, -1787780, 300111, 2684, -359704, 419296, -234076, 53150, -1337882, 231391,
- 61740, -493384, 151934, -76773, -30602, 122943,
- },
- {
- 37877316, 28761786, -5166846, 56526600, -6617471, 565325, 6816650, 2672544, -8530879, -12159589,
- 5873368, 1129576, 9901510, 4789426, 10058813, -1211718, 4981089, 4595615, 42413, 3816615,
- -10268730, -10144176, 1644436, -8026757, -1015223, 1108638, 5690295, -1634772, 1250909, 295816,
- -942208, -629750, -4995584, 4903779, -980326, -3036005, -2753611, -5051956, 4977330, -1525787,
- -6570763, 3885335, -1940252, 1186485, -1775432, -3586298, 4673462, -2889976, 1202054, 1083406,
- -3034395, 2290291, 6396280, -370441, 434865, -948651, 3286724, 1118302, -848256, -1450088,
- -510564, -205085, 287226, -724239, -779000, -234076, -484794, -96100, 776852, 132070,
- 299574, -73014, 122407, 9664, -652298, -648003, -964757, -30602, -600759, -198105,
- -810138, 752693, -593242, 304406, 718333, -851477, 295816, -107911, -765578, 338766,
- -919123, 692027, 519691, -500364, -133144, -1035624,
- },
- {
- 1133335, -7596187, 7786776, -3126199, -1706713, 302795, -750009, 1531693, -1610076, -309238,
- -28454, -2587718, -7092065, -445066, -3875671, -7863548, -8979703, -5310727, -2851858, 16228534,
- 642635, 2206003, -1634772, -2029372, 12693239, 10543608, 2332704, -550830, -6484864, 10227928,
- 3381750, -7301445, 7075959, 180389, 2520072, -7141457, 5628555, -5236639, 5027259, -510564,
- -9907953, 2489471, -4594005, 128312, -2828236, -843424, 971200, -4602595, 7114614, -3257733,
- -348429, -3444027, 1647657, 1178432, -2115272, 94489, -510027, -2959233, -734976, 1933809,
- 1080184, -629213, 1279363, -965831, -488553, -2565169, 1532230, -1133335, -483184, 1600949,
- 191126, 99321, -888521, 814970, -502511, 574452, 648540, 646393, -643708, 950798,
- 535797, -619549, -619012, -887985, 1155346, -630823, 173946, 957241, 346819, 948114,
- -8053, 241055, -111132, -93416, 140660, 307090,
- },
- {
- 48860084, -197135776, 4823785, 62398360, -16840030, 1022202, -804770, -2381559, 10311143, -3648575,
- -1268089, 5468030, -10146323, 1017370, 7711614, 6932614, -9579388, 6448894, 5833640, 1268626,
- -2707440, -2987687, 1532767, 2410014, -4435628, 2334315, 4223564, -7477001, -2654290, 582505,
- 1760937, -6029061, 6920266, -5821292, -1410897, -246961, -203474, -966905, 9744207, 415001,
- 2904472, -1348083, 4727686, -607738, 421444, 3450469, 489626, 855235, -1141388, 1248225,
- 2589865, 2079838, 748935, -756451, -3472481, 876710, -1125818, -1219234, 1878511, 1018981,
- -2092723, -673773, 40265, 962073, -888521, -881005, -272730, 573915, 310848, 1762010,
- -219043, -150324, 201863, -173409, -288837, -232465, 25770, -1119376, -487479, 1385664,
- 830002, -1060320, -648540, 567473, 0, 434865, 122407, 711891, -494458, -136902,
- 300111, 539018, -1041530, 586263, -270046, -192200,
- },
- {
- -2210298, 46339476, 2477123, 7050189, -112743, -10340671, -6528351, -3257196, -785442, 1573569,
- 2360085, -5609764, -987306, 17995912, -6307160, -4704063, 2235531, 2385318, -5574331, 8447127,
- 7596724, -1704028, 9672803, 3012383, 5200669, 1796370, 1437740, 17144436, 466541, 5800354,
- -4374961, 4138738, -9764071, 2038499, -3935264, 948114, -397284, -1061394, 480499, -4576825,
- -2903398, 4141422, 672162, -3787088, 1181653, 2418604, 2140504, -1260573, -734439, -5131412,
- -1526324, -486942, 1251983, -648003, 2859375, 1771137, -1159641, -2041720, -821949, 1100049,
- -1766842, 2845416, -1698123, 605590, -1603633, 486405, 338766, 1191853, -1217086, 1047972,
- -841814, 813896, -733903, 1656784, -1521492, 71404, 2274722, -1516124, -418222, 92879,
- 157840, -205622, -130997, -337155, 1175210, 281857, -285615, -638340, 4832, 76236,
- -685584, 332323, 17717, 565325, -375810, -81604,
- },
- {
- 24257976, -155260928, -6591701, -268435, 12761958, 3675955, -3133716, -7854959, 6742025, -1634235,
- 444529, 7113003, -5551245, 3341485, -7219303, 5138392, -742493, -9232032, -1733019, -3244848,
- 5156108, -2733747, 2456721, -5218922, 2171643, 1864016, 4894115, -5756330, 709743, 4947266,
- 544924, 3041374, 2494839, -2144263, 2602750, -2816962, 4919348, -2126546, 4000225, 151398,
- -1043677, 906775, -1212255, 1235340, -542240, 674847, 443455, 634581, -1521492, 4074850,
- -1091995, -4615479, -1792612, -688269, -18790, 4236985, -1825898, 1010928, -63888, 911070,
- -19327, -287763, -787053, -3576097, 1006096, 532039, 3414499, -1906429, -805306, 1078574,
- -306553, 605590, 1368484, -448824, -775778, -212601, -1547799, 1486596, -1108638, 1154809,
- 634045, -437550, 121870, 676457, -354335, 404801, -1348620, 814433, 141734, 345745,
- -66572, 527207, -58519, 141197, -110595, -831613,
- },
- {
- 1831267, 25471840, -4570919, -1883880, -1483911, 5216775, 7803419, -1298691, 1334124, 378494,
- -4946192, -1655710, -2441152, 21579526, -4398584, 1883343, -11041824, -397284, 22949084, 3854196,
- -6969122, 30350386, 3338800, 3988951, -11170136, 5779416, 3554086, -8122320, 18894098, -1965484,
- 159988, 559420, -7226820, 2741800, -2524367, -270583, 2954938, 73014, -6684043, 4257387,
- -552440, -743029, 4907000, -2526515, -5172215, 1367410, 928787, 2697240, -563714, -1688996,
- 4313758, 549756, 689879, -1741072, -2454037, 1020055, -3154117, 3544422, -416075, -908386,
- 2414309, 93952, -926639, -2604361, 2415382, 410706, 690953, 243203, -1433982, 906238,
- -486942, -1349157, 415538, -37581, 1093069, 522912, 1179505, -809064, -1391569, 12885,
- 1605781, -664109, -1757179, 1087164, 1527398, 734976, -310311, 294205, -448824, 1067836,
- 1102196, 256087, -24159, -527207, 675384, -687195,
- },
- {
- -37128920, -146997408, 1265942, -7851200, 5735929, 11895986, 16006806, -926102, -10103374, 8164196,
- 4688494, 354872, 4482872, 10228465, 3129958, -6976638, 6249178, -10957535, 2011655, 2276333,
- -4777614, -9680319, -1433982, 6840809, -4803921, 4946729, 5864241, -10809359, 10602127, -616865,
- 3100430, -6963753, 3633006, -5348308, -758062, 1549410, -296353, 1751273, 4753992, 384936,
- -2585034, -921807, 3408594, -1792075, 712965, 3711926, -4523138, 47245, 2344515, 3204583,
- -2137820, -1150514, 2630131, 716186, 1236951, -2226404, -1668595, -1777043, 3303367, -522912,
- 2121177, -1449015, -2949032, 311385, -90194, -2294050, 1600949, 1372779, 79457, -1116692,
- 942745, 2348273, -294205, -124554, 137439, -395674, 568009, 1432909, -72478, 48855,
- -1669132, 717260, -663572, -427349, -16106, -723165, -106300, 503048, -560493, -889595,
- -447750, 597537, -709743, -274878, 527207, -345745,
- },
- {
- 6634114, -9028021, -13011067, -907849, 2181844, -5943161, 1203665, -5894306, -5746666, -1419487,
- -4887673, 6069863, 14956687, -21729850, -10303090, 3974455, 13445932, -4254702, 2364380, -12769475,
- 7654706, -9017821, 14374182, -4555887, 8101919, -4381941, -3527779, 2241436, 5769215, -8089571,
- 2233383, 5191542, 1253594, 6136972, 4819490, -5616207, 6233608, -4038880, -2043331, 1338956,
- -2036351, 5703717, -5364951, 712965, -42413, 2375654, -3161633, -1636383, 3634079, 845572,
- -533650, -1333587, 1381369, -3917010, 2861522, -2222646, 915902, 2491618, -2934000, 360777,
- 816581, -1434519, -3047279, 170188, 579284, -2434710, 3966939, 1143535, -2426120, -195421,
- -121870, -53150, 871342, 3246995, 147640, -1505923, 1869921, 1100585, 299037, 908386,
- -954020, 273267, -1243393, 205622, -137976, 621160, 608812, -332323, 235686, -870805,
- -923418, 28991, -749472, -256087, -131533, 67109,
- },
- {
- -36290328, 23754928, 10712185, -567473, 17505212, 10191957, -5559835, 18254, 54224, -7209103,
- -9378598, 5791227, -12429098, -7192997, -13477071, 1273458, -12969727, -230318, 5257040, 5857262,
- 2848100, -8945880, -1377611, 4332549, 4459250, -7472170, 8932995, -946503, 1823751, -2449205,
- -2587718, 1042603, 1358283, -5513128, 5694053, -4487167, 2226404, 2669322, -906238, 231391,
- 3312494, 3080565, 306553, 179852, -1328219, -3104188, -769336, 1937030, 3123515, 526134,
- -5921150, 1327145, 938987, 2915746, -753767, -1478006, 1010928, 599685, -1028108, 3517041,
- 2333778, -978179, -2120640, -474057, -8590, 1666447, 500364, -1234266, -847182, 2368138,
- 657667, -1561221, 634581, 766115, -816581, 868120, 374736, -1244467, -676994, 132607,
- 308701, 217433, -630286, -437013, 367757, -34897, -1544041, 920734, 66035, 170188,
- -979789, 422517, 313533, 278636, 130460, 1087701,
- },
- },
- {
- {
- -568009, -7240241, -3147674, -7619809, -1931125, 159451, -1612760, 323196, 1991254, 3008625,
- 10047539, 7788387, 3412889, -443455, -12673375, -5146445, -12399571, 316217, 1367947, -1016297,
- 16280074, 3069291, 4701916, 2430415, -14382772, -171799, 1798518, 2725694, 11043435, 10614475,
- -358630, -3292629, 4213900, -1884417, -866510, 422517, -706522, -5675800, -1173063, 4253628,
- 307090, 774705, -1950989, 949725, 3287798, 1050656, -900333, 2257542, 723702, 3066607,
- 2783139, 632971, 539555, 2050310, -87510, 108985, 1213865, -332860, -1105954, 992137,
- -57982, 1814087, -998043, -111132, -967978, 1229434, 1322850, 641561, 2456185, -219043,
- -515396, -108448, 229244, 234613, 1140851, 943282, 460635, -35970, -60130, -130997,
- 348429, 388695, 362388, 215822, 395137, 394600, -25770, 767189, -303869, -75162,
- -398895, -214212, 23085, 693637, -257161, 165356,
- },
- {
- -9474698, -92130272, -11975979, -10887205, -6487548, -1676111, 1727651, -7427072, -5739150, 1846299,
- -2233383, 1858110, 420370, -3397319, 1567126, 2900177, -5512591, 1760400, -3288871, -6132140,
- 7910256, -2229088, 4543539, -5233955, -12019466, 848793, -1737851, 3483219, 1105417, -3321620,
- 4214437, -1992865, 3325379, -3597572, -3610994, 677531, -2859375, -3378529, 70330, -1346472,
- -227633, 663572, 2093797, 673773, 3917010, -1067299, -1559073, -1308891, -1716913, -1983201,
- -1222992, -110059, 3129958, -681289, 540092, 651761, 737124, 1851668, -1183800, -620086,
- 1228898, 204548, -2184528, 2193655, 1431298, 641561, 522375, 1826435, 793495, 562104,
- 191126, -686121, -64961, -125091, 143881, -897648, 83752, -477278, 721018, -48855,
- 273267, -348429, -703838, -5369, 119722, 245350, 183610, -490163, -777389, -153008,
- 394600, 344134, 483721, -549756, -384400, -93952,
- },
- {
- -1249836, -18828062, -19967840, -22099754, 1862405, 1656784, 3476239, 892279, -1799591, -4223564,
- 223338, 4981625, -1699733, -4465156, -1326608, 2177012, -1774358, -2165737, -1496259, -1912334,
- 5862631, 1938104, 6077379, 5210332, 4355634, 2082522, 456340, -331249, -3956739, -2931315,
- 1126355, -756988, -5196911, -4625143, 4105989, 1735167, -903017, -3583077, -408022, 402653,
- 149787, 784905, 1862405, 802085, 2084133, 2026688, -2770254, 865436, 1803886, 1327682,
- -967441, -281857, -146029, -438624, -1061931, 770947, 1296543, 2374043, 1427540, -201327,
- -666257, 614180, -10201, 448287, -1352378, 31139, 341450, 343061, -964220, 386010,
- 133681, -840740, -603443, 903554, -118112, -147640, -547608, 774168, 1018444, 778463,
- 405338, 528818, -381178, -295816, 458488, 81604, -755914, -464930, -151934, -253940,
- 462246, 419833, -353798, -207769, -258772, 18254,
- },
- {
- -2008434, 9203041, 3401614, -1329829, -298500, -201327, -1319092, 921807, -184147, -1227824,
- 653372, -3400004, 226560, 7508677, 29160144, 6999723, -15173583, 5287105, -11531987, -7219840,
- 7086696, 7419019, 3082176, -1246614, -613643, -1502165, 6051609, 3256659, -1247151, 7089381,
- -7948374, -10909217, 2953864, 3212636, -227096, 4981625, 6177774, -425739, -796180, 2142652,
- 4344360, 4268124, 628139, -2639258, 814433, 2222646, 1264331, 511638, -1905355, 2728378,
- -2966212, 318901, -214748, 1525787, -720481, 170725, -1231045, 1178969, 104690, -2714419,
- 162135, 1295470, -1566589, -709743, 1109175, 644782, 544924, 472983, 254477, -318364,
- -2175938, -1476395, -741419, 69256, -26844, -230854, -79994, -77846, -824097, 31675,
- 318901, -66035, -36507, 181462, 96100, 11811, 0, 191126, 5906, -254477,
- -139050, 117038, 235149, 550830, -374736, 94489,
- },
- {
- -26312580, 37583112, -11651173, 37882684, 5630166, -89657, -3557844, -1940788, -1619740, -5634460,
- 4264903, 4316442, 2281702, 243739, -187905, 3481608, -781684, -4467840, 7422777, 3338263,
- -3501472, -1681480, -1391033, -4700305, -67646, 2851858, -5456756, 7678865, -200253, -1902671,
- 1453846, -2481417, 937377, -951335, 295279, 665183, -6910066, 730681, 1642288, 97711,
- 4274030, 709743, 856846, 504659, -3445638, -421444, -1094143, -920734, -2850248, -1231582,
- -141197, -1044751, -205622, -2836826, -1603097, 724776, -40265, -1059783, -312459, 274341,
- 832150, -523449, 564251, -903017, -694174, -322123, 346282, -1472100, 320512, -610959,
- -1234266, 362925, -541166, 529892, -267899, 166967, 717796, 909996, -76773, 297963,
- -573378, -153545, 348429, 15032, -425739, -657667, 98247, -208306, 179315, 89121,
- 136902, -76236, 126702, -454193, 172336, 343061,
- },
- {
- -231928, -8172786, -3378529, -751619, -1544041, 886374, 478352, -640487, -185220, 3354906,
- 2865817, 142271, 447750, 1098975, 286152, -7872138, 3357591, -3444027, 5154498, -7512972,
- 3244848, 4154844, -4639639, -129386, -2365990, 6587406, 10845866, -2207613, 1017370, -3927211,
- 3007014, 3106872, 1487669, 5645735, -2902861, -4923643, -643708, 285615, 4142496, 198105,
- 1120987, -1755031, -3706020, -2178085, -603980, 1013075, 430570, -2344515, 909996, 1839320,
- 3773666, -892279, 495532, 1388885, -274341, 789737, 916976, -1552094, -747324, -1159104,
- -1439888, -1127429, -1684164, 1335735, 2461553, -311922, -810138, -715649, -996969, -208843,
- 18254, 956167, 1131187, 395674, 1739462, 381715, -711354, 192200, 653372, -1353452,
- -467615, -675921, -633508, 189515, 77309, -172336, -12348, -455267, -520228, -209917,
- -10201, -405874, -373125, 433792, -63351, 31139,
- },
- {
- -9091909, 79809080, 4988605, 47700980, -3866008, 2354716, 2592013, 4159676, -4788889, 239444,
- 24159, 483721, 10179609, 3285113, 4755603, -1267552, 5439576, 5676336, 1933809, 1511292,
- -9394167, -8664023, 258235, -6163278, 1170379, -314606, 2952253, 2739116, -463320, -3612068,
- -817118, 995359, -1753420, -758062, 3047816, -1717987, -4371203, -96100, -407485, -972273,
- -1026497, 622233, 59056, -3953518, -1201517, -3255048, -107374, 1840930, -2010045, 1373316,
- -3729642, 4811974, 2567854, 1398549, 341450, 484794, 1694902, 590558, 922881, -998043,
- 11274, -448824, -1604707, 699543, -1070521, -624918, 415001, 1357747, -409633, -722628,
- 906775, -385473, 359167, 646929, -820339, -768262, -883690, -513785, -111132, -443992,
- -284542, 41876, -161061, 882616, -402116, 244276, 224949, -775242, -392990, 14496,
- -248571, 9127, 163209, -107911, -481036, -182536,
- },
- {
- -345208, 4253092, 861141, 39728, -1327145, -428423, 135828, -260919, 474594, -1246614,
- -432718, -2401961, -310848, -2480344, 3601867, -10738492, -15253576, -9737228, -958851, 15870978,
- 8000987, -9571871, -3760781, -238908, 7511361, 7321846, 3244311, -3629247, 609349, 2506114,
- 5132486, -4180614, -4629438, 2845953, -890669, -2789045, -597000, -3298535, 2122788, -563178,
- -3623879, -1693828, -1729261, 433792, -6823093, -341450, 1139240, 571231, 613643, -3295314,
- 972273, -1178969, 2237141, 135828, -738734, -774705, 198105, -1651952, -1256815, 1345935,
- 1344325, -321049, 734439, -976031, 451508, -1699733, -731755, 606664, 180389, -498753,
- 989453, -62814, -40265, -562104, 725313, 172872, 753230, -370441, -169651, 631897,
- -270583, 300111, -589484, -620086, 359167, -253940, 251792, 574452, 37044, 784368,
- 305480, 274341, 12348, -499827, 690953, -234076,
- },
- {
- -45213656, -56690348, 907849, 43763032, -668404, -573378, 889058, -633508, 1871532, 5373004,
- -4873178, -6526740, -6167036, -1670742, 6282464, 2414845, 511101, 3416647, 2153389, 4843650,
- -519154, -3308199, -940598, 1178432, -2737505, 3984656, 2471217, -3973382, -5036386, 766652,
- 229781, 1052267, -2674691, 665183, -3060701, -1498944, 753767, 2723009, 8003135, 597000,
- 798864, 2300492, 2390149, 1394254, -1080721, 2412698, 3383361, -1858647, 1396401, -1902671,
- -460635, 3306588, -996432, 618475, -2270427, -1813013, -266825, -551366, 1411971, -888521,
- -973347, -149787, 1194001, 537, -1086627, -234076, -770410, 351114, 623307, 441845,
- -404264, -739271, 1476932, -535797, 146029, -146566, -635655, -112743, 4832, 827318,
- 286689, -446677, -769336, 342524, 598611, 17717, -105227, 411780, -5369, 27917,
- -256624, 392453, -263604, 92879, 198105, -76236,
- },
- {
- 646393, 28188944, 9237938, 8492761, -1372779, -4114579, -6965363, -5987185, 1910724, -4014721,
- 2231773, -2530273, 579821, 8087424, -292595, 2650532, 2171106, -2728378, 12381854, -1800128,
- 5790690, 2726767, 1888712, 8689256, 7388955, 5326833, -3565360, 10331544, 7107097, 3898757,
- -4088272, -457414, 1147830, -1598265, -4850629, 2242510, -3101503, 4757750, -2624762, -3393561,
- 2413235, 296353, -2345589, -2989297, 2563022, 890132, 2585570, -699006, -3358665, -2445984,
- 1192390, -768262, 1482301, -696322, 1430761, 457951, 467078, -1897302, -707059, 721555,
- 502511, -128849, 1074, -376347, -81068, -107911, 683974, 504122, 583579, 6979,
- 114890, -1258962, 228170, 507343, -960462, 599685, 438087, 31675, -754304, -485868,
- -179852, -535797, 341987, -35433, 1259499, -98247, -602906, -215285, -379031, -583042,
- 170188, 9664, 277025, 578747, -91805, -265751,
- },
- {
- -22428856, -95513096, -3176665, 5723044, 9048959, 6965900, 6530498, -5664525, -2867965, -2049773,
- 2574833, 5532992, -143345, 2800856, -4101694, 4907000, -326418, -1825361, -4698694, 1975148,
- -4410395, -852014, 2254321, -815507, -2703145, 8832063, -3939559, 3267933, 3329137, 1808718,
- 4678830, 1716913, 1538135, -1379758, 35433, 345745, 3062849, 1720134, -1285269, 98247,
- 1789928, -412317, 646393, -439160, -101469, -977105, 1280437, -336081, 1115618, 1723356,
- -2614561, -2245194, -3139084, -588411, 2193655, 680752, 427886, -471373, -337692, 1600949,
- -1661616, 457951, -1726577, -977105, -1506997, 1203128, 1469416, 137439, -1642825, 1921998,
- 766115, -64961, 1315334, 233002, -597000, -887448, 476741, 704375, -891743, -41876,
- 723702, 86436, -118648, 384400, 57982, 194347, -689342, 271120, 423054, 264677,
- 41339, 315680, 184147, -41876, -280247, -8053,
- },
- {
- -2626373, 13203266, 5518496, -2244657, 5119064, 6229313, 577136, 3981972, 818191, -688269,
- -618475, -5167383, 2027761, -242666, 7059853, 424128, -11673184, 5673115, 7947300, 4874788,
- 8557185, -4080219, 14615237, 5265630, 110059, 3623879, -8265128, -450435, 8250096, -2647847,
- -759672, 3288334, -2997887, -3967476, -1869385, -873489, 3638911, 1008780, -1817308, 477278,
- 1983738, 1306744, 849867, -1566053, -3420405, 774705, 2518998, 181462, 847182, 3257733,
- -490163, -251256, 1852742, -3221762, -830002, -1076426, -439697, 23085, -520765, -655519,
- 1296543, 314069, -243203, -1844152, 11274, 1450625, -261456, -609885, 274878, 425202,
- -281857, -1255741, 905164, -110059, 1075889, 147640, 1169305, -494458, -503048, 725313,
- 5369, -758599, 137439, 234076, 1421097, 192200, 83752, -118648, -290984, 944893,
- 951872, 524523, 98247, -89657, -47245, -214212,
- },
- {
- 733366, -191791760, -24925842, 4694400, 6714108, 27434104, 13261785, -6123013, -9939628, 10362682,
- 6002217, -934692, 5504538, 1890859, 1420560, -1684701, -5087926, -2799782, -1873680, 5748814,
- -3526168, -8069707, -4292820, 3733400, 2764348, 3604551, 281320, -5597953, 1018981, 5368172,
- 548145, -3950833, 102542, -932545, -1897302, -724776, -1071058, 4398047, 2817499, 2783676,
- -713501, -3258807, -409096, 2412698, -4352413, 1255204, -53687, -1198296, 1949378, 1400159,
- 760746, -2452963, 519154, 1815161, 140123, 4295, -1354525, -1063004, 402116, 311922,
- 1535451, -699006, -1487669, -2845953, -197032, -504659, 978716, 582505, 309775, 2059974,
- 44023, 55298, 1872606, 226560, -267362, 260382, 523449, 535797, 186294, 290984,
- -943819, 23085, 81604, -82678, 88584, -906238, 106837, -293668, -251792, -1001801,
- -134218, -185757, 9664, -41876, 273267, -231391,
- },
- {
- -6184216, -9221295, -1402307, 1878511, -190589, -4187056, -2618856, -285078, -10474888, -3760781,
- -6349036, 4805532, 11426224, -1326071, -16074989, -525597, 8140574, 3642132, -519691, -8193187,
- 4012573, 4036733, 8257075, -2742874, 4997195, 1741072, 1457068, 5000416, 178778, -3033321,
- -3673271, 8181376, 56908, 1306207, 4275640, -719407, -520765, 2804614, -1881733, -2565706,
- 1144609, -1482838, 255551, 1179505, 1165010, -1989644, 376883, -97174, 1548873, 567473,
- 1313186, -1730335, -33823, -2462090, 2528125, 650688, -165356, 1527935, -2388002, -25233,
- 131533, -441308, -596464, -1490891, 350577, 67646, 221191, 1045288, -113817, -1458141,
- -184147, 871878, 1759863, 1468342, 286689, 391916, 873489, 359167, 377420, 256087,
- -112206, -6979, -793495, -219043, -562641, 81604, 644782, -354335, 248034, -650151,
- -563714, 288300, -871878, -247497, -42950, -197032,
- },
- {
- 25045564, -55550032, -6820408, 8394514, 12961138, 8447664, 7473243, -5168457, 2181307, -11731703,
- 3477313, -9509594, -7582228, -4929012, -13762686, -3244848, -4354560, -3742527, 3655554, 1966021,
- -1868311, -3237869, -3787624, 8500814, 1409286, 3478924, 412854, -376347, 2208150, -1519345,
- -2059437, -2757906, 1467805, -77309, -1966021, 353798, 40802, 6321655, -396211, -3347390,
- 3173444, 2076617, 194884, 813359, -2756295, -2902861, -1840394, -610422, 3785477, -1073205,
- -1536525, 64425, 1446867, 47782, 1087164, -326418, -616328, -61203, -494995, 1748589,
- 2717641, 598611, -2385318, -1214402, -216359, 1895691, 365609, -393526, -829466, 2223183,
- 403190, -542240, -47245, 928250, -635118, -301721, 179315, -1155346, -168577, -828929,
- 570157, 716186, -947577, -75699, -382789, -283468, -1031866, 842350, 429497, -102005,
- -236760, -48318, -324270, 425739, 494995, 92342,
- },
- },
- {
- {
- 428960, 3100430, 1490891, 6196027, 7572028, -772020, -1132261, -1269163, -1840394, -1124745,
- 4081830, -2044404, -1842541, 4065187, -1755568, 9210020, -1016834, 9212705, 3166465, -9743133,
- 10370199, 1979980, 1085016, 7180649, -9831180, 3673808, -2545842, -8650601, -73551, 9073118,
- 2501282, -1013612, 7553774, -3533684, 144955, -400506, 126165, -1583232, -1209033, 1804423,
- -1540820, 1255204, -1279363, -1469416, -573378, 1596117, 768799, 1130650, -537945, 526134,
- 184147, -630286, 14496, 1906429, -1213328, 1212791, 1239635, 20401, 150324, 1001801,
- 154619, 2673617, 10201, 1442035, 978179, 1400696, 459562, 24159, 1142461, 154619,
- 341987, -100395, 311385, -794569, -143345, 274878, 375810, -518617, 4832, 115964,
- -170725, 9664, -211527, 86436, 300111, -94489, -785442, -24696, -320512, -215822,
- -409096, 136902, 127775, 317828, -306553, 102005,
- },
- {
- 6183679, -66507032, -9096741, 9263171, 3282429, 1401770, 3029026, -3911105, -85362, -2160906,
- -6958921, 1236951, -692564, -552440, 245887, -1296543, -3432216, 3573413, 2368138, 2254321,
- 9189083, -4635344, 6239514, -972810, -12739410, -2435783, -704912, -329639, -2111513, -3555696,
- 1473711, -6303402, 7472170, -49929, -2811056, 2908230, 2342368, 3073586, 4316979, 59593,
- -2243584, 1371705, 1722282, -523986, 3576634, 2369211, 1005022, 571768, -335007, -663572,
- 867047, -831613, 1735167, -2249489, 362388, 1107565, -282394, 1110249, -241055, -411780,
- 75699, 875636, -1508070, 693100, 99321, 924492, 140660, -27917, -525597, -559956,
- -481036, -714575, -4295, -217433, 254477, -252866, 946503, -622233, 265214, -670015,
- 203474, 200790, -182536, 153545, -271120, 332860, 112206, 248034, -131533, 94489,
- 76236, -197569, 143345, -22549, 38118, -287226,
- },
- {
- -658204, 3100430, 6278706, -177167, 6389838, -1020592, 1989644, 2005750, 1826972, 1609539,
- 2493766, 768262, -2200634, -2587181, 916976, 1936493, 187905, 4817880, 4403415, -6087043,
- 1323924, -5893769, 730144, 1466731, 122407, -711891, -2371896, -3124052, -2316598, -404801,
- -1212255, -2962991, 1424319, -1415729, 3370476, 1121523, -4045859, -4402342, 4806069, 1018981,
- -3958349, -1275068, 173946, -2189360, -593779, 692564, -3143379, -424128, -464393, 766115,
- -176094, 567473, 90194, -379031, -1071058, -210990, -288837, -194347, 397821, 64961,
- -441308, -25770, 130460, 579284, -560493, 185220, 1122060, 1092532, -941672, -303869,
- 155156, -839129, -1096827, 317291, -200790, -117575, -1137630, -450972, -15032, -213138,
- -66035, 797790, -28991, 8053, 564788, 55298, -332323, 77846, 100395, -322659,
- 32212, -123480, -170188, 95026, -281320, -185757,
- },
- {
- 2807298, 7039989, -2641405, 652298, 1169305, -309238, -477278, 722091, -804233, -2645700,
- 1517734, 2519535, 2973728, 1809792, 19940996, 5735392, -8973797, 6669548, -8055748, 2495376,
- 9383430, 3167539, 1430761, 2066416, -2212445, -4641249, 5874442, 2508261, -42413, 5932424,
- -4206384, 762357, 6979859, 2714419, -832687, 1963337, 1004486, -3329674, 1513439, 564251,
- -170725, 782758, -126702, -2496450, 1244467, 1824287, 1058710, 1406065, -1503239, 1998770,
- -357019, 1364726, -2188286, 1445793, -488553, -1231582, -1541893, 71404, -186294, -78383,
- 485331, 1261110, -45634, -121870, 676457, 468688, 191663, -500364, -496606, 698469,
- -860604, -791348, -280784, 387621, 156766, -259309, -28454, 291521, -36507, 440771,
- 427349, -318364, 89121, 256624, -100932, 43487, 148176, 459025, -41339, -215285,
- -74625, 258235, 126165, 554588, -235149, 184147,
- },
- {
- 6747394, 86356224, -9360344, 35399656, -1530082, 437550, -818728, 331786, 1401770, -5170067,
- -2021856, -621160, -1457068, 1421097, -1296543, 427886, -4743792, -3079492, 4312147, -2340757,
- -2962991, 1061931, -1745904, -1758789, -341987, -1177358, -5077725, 6695317, 1367947, 121870,
- 1805497, -1603633, 3320010, 2544231, 2023467, 1037772, -4961224, 52076, 1272384, 2692945,
- 1824287, -2614025, -3517041, -1206349, -3295314, -2115808, -1765768, -1033477, -3570192, 792421,
- 1794223, 195421, 2100239, -518617, 749472, 847182, 1661079, 963146, -1362578, -445603,
- 2113124, -1545651, 406411, -406411, -347355, -398895, 1373316, -418759, 772557, -1235340,
- -1093069, 424665, 8590, 302258, -1194538, -172336, 406948, 511638, -234076, 221191,
- -744640, -186831, 223338, -283468, -231928, -656593, -190589, -278636, -450435, -146566,
- 543850, 124554, 270046, -357019, -264677, -38655,
- },
- {
- -953483, -8377871, 61203, 1186485, -1131187, 46171, -37044, -314606, -32212, 2716567,
- -1549410, -724239, 1400159, -4347044, 3390340, 2556043, 13560822, 8249559, 5813775, -8712341,
- 345745, 5030481, 4315906, 4085051, -8310762, 3088618, 12412455, -31675, 765578, -8152922,
- 2626909, 5868536, 1310502, 10004053, 2121714, -4536023, -2165201, -2013803, 2135136, -1279900,
- -452582, 289373, -275415, 213675, 234076, -1194538, 316217, -969052, 982474, -739808,
- 334471, -2496987, 94489, -252866, -937914, 132070, 472446, -1019518, -273267, -846109,
- 428423, 1006096, -104690, 1260573, 970126, -219043, 584652, 602906, 333934, 929324,
- 190052, 934155, 1491427, -144418, 203474, 530428, 132607, -24159, 344671, -918049,
- -344671, -214212, -195958, 272730, 45097, -360777, -78383, -106300, 95026, -301721,
- 47782, -311922, -536334, 380105, -91805, 253403,
- },
- {
- -15338402, 76453640, 406411, 42577620, -3631395, 1196148, -1227287, 6417755, -805843, 5638219,
- -526134, -4773856, -446677, -6037114, 1737851, 722628, 925565, -470299, 4609574, 4891431,
- -372052, -4596689, 2175938, 1248225, 3090766, -4053376, -3400004, 723702, -222265, -2626373,
- -2097018, 1091459, 1639067, -2171643, 1268626, -645319, -2585034, -819802, -1675574, 2378338,
- -382789, -1246614, 2432562, -4232691, -776852, -3816079, -3324842, 970126, -1255204, 2497524,
- -4000225, 1529545, -525597, 2471217, 1204738, 480499, -274341, -830539, 901406, -650151,
- 693637, 781147, -925565, 1626719, -328565, -627065, 459562, 1009854, -583042, -894427,
- 579821, 331786, 235686, 840203, 549756, 125091, 53687, -217970, -250182, 226560,
- 792421, 38118, -264677, 83752, -874563, 322123, 287226, -613643, -183073, 221191,
- 237834, -70867, -65498, -30065, -465467, -85362,
- },
- {
- -948651, 1216550, -2149631, 1764158, 1114544, 49392, 223875, 1159641, 3113851, 7516,
- 3036005, 870805, 246424, -7507603, 5595269, 9463424, 12219719, 5681168, 1609002, 7758859,
- 1283658, -7398081, -2342905, -7041062, -2854543, 3933653, -109522, -3995393, 2720325, -804233,
- 3728569, -3078955, -10402948, 446677, -816581, 1021665, 2907156, -1209570, -1132261, -1904818,
- -490163, 2111513, 2525978, 1810866, -6137509, -50466, 528818, 1449552, 687195, -992674,
- 3496640, -704375, 1094143, -1717450, -222265, -820876, -823023, 916976, 702227, 1042603,
- 507343, -1825361, -814970, -666794, 1544041, -1170379, -841814, 130460, -876710, -925565,
- 1519345, -546535, -806917, -916976, 1105417, 103079, 2684, -1098975, -311385, 197569,
- -483184, 424665, -6442, 40265, 11274, -322123, -132070, 42413, -283468, -77309,
- -153008, 76773, -199716, -587337, 618475, -397821,
- },
- {
- 29759828, 53611928, -64961, 38219304, 1241782, -67109, 1675037, 1647657, 986232, 1436667,
- -4996658, -5703717, -24159, -1611687, 547071, -3138011, 738734, 897648, -4010963, 1997160,
- 673773, -598074, -708670, -1300301, -3495567, 469225, 1088774, -763967, -4196720, 1461363,
- -1362042, -516470, -5872294, 2506114, 237297, 1463510, 2305324, -978179, 578210, -3146064,
- 1353989, 5086852, 801011, 427349, -1883880, 638876, 1647657, -3902515, -505196, -4184909,
- -3410741, 1435593, -2874407, 1466731, 1477469, -1386738, 139586, 172336, 908922, -468688,
- -467615, 319438, 273267, -753767, -258772, -204548, -795106, 330176, -8053, -627602,
- 29528, -164819, 1260036, -163209, 480499, 547071, -132607, 556198, 144418, 673773,
- -187368, -502511, 1611, 239981, 128312, -420370, -441845, 237297, -242129, -72478,
- -166430, 242666, -67109, 0, -192200, -184684,
- },
- {
- 1034550, 19182398, -6762963, 1136019, 3712999, -2142115, -2985002, -893353, 1956895, -4816806,
- 930934, 966368, 1049583, -36507, -2110977, 3647501, 5010616, -4096862, 12737799, -1598265,
- 1719598, 1382980, -4007741, 3219078, 3675418, 4634270, -1260036, 2827699, 2418604, 3208878,
- -1693828, 2115808, 4614406, -473520, -6200859, 1982664, -3224984, 4728759, -3047279, -1211181,
- 3052648, -3762391, -3365107, -1557463, 55298, 540629, 671626, -1305133, -247497, 1138703,
- 2182380, -1726577, 1012002, -809601, -606664, 404264, 782221, -1992865, 425739, 686121,
- 1357747, -621697, 696322, 934155, 352187, -576063, -301721, -963146, 112206, -148176,
- 551903, -1021129, -156229, -91268, -464930, 316754, -612570, 733903, 80531, -111132,
- 369367, -127238, 148176, -193810, 253940, -449361, 61203, 185757, -88584, -264677,
- 30065, -487479, -138513, 292058, 81604, 9664,
- },
- {
- 21097954, -57905824, -18009334, 10249403, 5547487, -6953015, -17180, -1795296, -4452271, -2181307,
- 100932, 6232535, 588411, 379031, -2370822, 5467494, 1848447, 1249299, -5775658, 1204202,
- -7182259, -1953673, 3242700, 2761664, -2607045, 8297340, -2561411, 6754910, 7072738, -273267,
- 868657, 478352, 2082522, -1161252, -225486, 758062, 622233, 1416802, -3115999, -2057826,
- 669478, 310848, 2273112, 1933272, -60130, -1644436, 1148904, -1074279, 438087, 204548,
- -1304060, 1375463, -709743, -1138166, -246961, -762894, 1016297, 117575, -573378, 920734,
- -1404454, 1215476, -243203, 201863, -1742683, 441308, -852551, 327491, -926639, 466541,
- 4832, -226560, 689342, 460098, -338766, -888521, 798864, 351114, -956167, -153545,
- 298500, 212064, 188442, 17180, 182536, 286152, -246961, -81604, 143881, 120259,
- 2684, -30065, 112206, -2684, -358630, 244276,
- },
- {
- 3074123, 3670050, -8563628, -2437931, 6954626, 5049808, 1131187, 6230387, 111132, -2570001,
- 1586454, -1089848, 683974, -14190572, 4467303, 2058900, -6294812, 2908767, -5744519, -1108638,
- 1524177, -19043348, 5603859, -3331284, -4125853, 3612068, 698469, 3213173, 350040, -10193568,
- -3985193, 3318399, 3264175, 1580011, 1327682, -2753611, 426276, 2668249, 468151, -1165547,
- 1275605, 361314, -1185411, -1708860, -1520955, 2427194, 2401961, -1244467, 507880, 3982509,
- 323196, 920197, 978716, -2112587, 941135, -269509, 233539, -1156957, -222801, -466004,
- -862752, -579821, 904628, -491237, -630286, 474594, 384936, -518080, 983011, 484794,
- -322659, -613107, 258772, -665183, 579284, -250719, 860604, 64425, 832150, 1036698,
- -106837, -88584, 576599, -240518, 408022, -671626, -283468, -311385, -646393, 12885,
- -104153, 53687, 254477, 314606, -301185, -93416,
- },
- {
- 33856692, -149360176, -21298206, 12832289, 13589277, 9284646, -12388296, -4577899, -5811091, 7717520,
- 7725036, 2652142, -323196, -6828998, 972810, 704912, -3259880, 411243, -7757785, 1027571,
- -358630, -4209068, -2940979, 3382287, 788127, -6365142, 288300, 2187212, 807454, 2865817,
- 858457, -1648731, -2338073, -1092532, -1798518, -1970316, -3415573, 907849, 971736, 2660195,
- 1410360, -1118302, 263067, 4923643, 781147, 4952098, 19327, -2358474, -1447941, -2015950,
- -1952600, -2251100, 2024540, 2075543, -630823, -606127, -1700807, -371515, -82141, -1214939,
- 472983, 124017, 210453, -1457605, 93952, -122943, 31139, -108985, 1032940, 2279017,
- 277562, 34897, 1575179, -22012, -469762, -594316, -636729, 9127, -208843, -49392,
- -252866, 90194, 217433, 199716, 862215, 35433, 499827, -62814, 370441, -128849,
- 441845, 266825, -32212, -103616, 253403, -77846,
- },
- {
- 5824513, -6990596, -9474161, 973884, -512175, -703838, 1586454, 5253819, -1257889, 3375308,
- -3583613, -1262184, 3422552, -9201431, -6226629, 12140262, 3595425, 2790655, -747861, -1721745,
- 7339562, 1412507, -1616518, -10305774, -2377801, -912144, 3742527, 10929618, 4748087, 4279935,
- -7161858, 826781, -2314987, -63351, 3071975, 2006287, 3141769, 4835597, -3083787, -1471563,
- 949725, -1620813, 949188, -1690607, -284542, -1034550, 1765768, 1457068, 617938, -625992,
- 1915555, -1075889, -281320, -854699, 1802276, 1574106, -1083942, 1074279, 542240, 169651,
- -1168231, 127775, 1380295, -498216, -235686, -246961, -1535988, 347892, 1330366, -1061931,
- -39192, 60666, 683437, 426812, -14496, 179315, 266825, -77846, -24696, 74088,
- -111132, 472446, 184684, 510564, -296353, -311385, 770947, -231928, 567473, 296353,
- 118648, 721018, -161061, 187905, 514322, 144955,
- },
- {
- -3554086, -109644072, -16634408, 9715753, 4388920, -8732205, 666257, -6823093, 262530, 605590,
- 10111427, -8761733, 2232846, 2916283, -4741107, 3915400, 3293703, -7164543, -6849399, -7438347,
- 2812667, 1614908, -6792491, 1301375, 2074469, 7573638, 1436667, 433792, 1958505, 1160715,
- 1553704, -1672890, 482647, 2309619, 768799, 2150705, -1367410, 910533, 152471, -1984275,
- -2152852, -3105261, -2639794, -214212, -959388, 605590, 1570884, 956704, 2203855, 666794,
- 2485176, 1239635, -1094680, -2330557, 746251, 383863, -644782, -1160715, -1154809, 759672,
- 181462, 1147830, -1132261, -681826, 186831, 1039382, 25233, 628139, 563178, 1748052,
- -197569, 287226, 87510, 388158, -401043, -62814, -238371, -613107, 549219, -609885,
- 130997, -443455, -860067, -16106, -666257, -235686, -905164, 437550, 212064, -254477,
- 238908, -69256, -624381, 51540, -139050, -289910,
- },
- },
- {
- {
- -361851, 13681618, -6291590, 16907676, -1526324, 205085, -1680943, -1508070, -676457, -60666,
- -3055869, -4917738, 1202054, 3711926, 3087545, 14648523, 4900558, 3365644, 3277060, -5426155,
- -467078, 3078955, 3758, 6147709, -1152662, 778463, -11184632, -4116189, -1875290, 5222680,
- 1052804, 842350, 4512937, -1221381, 1105417, -1165010, 1275068, 519154, -1777043, 794569,
- 1979980, -3216931, -1823751, -500364, 1417876, 568009, 1109712, 810138, -1124208, 9664,
- 643171, -1066226, -456340, -110595, -481573, 1299228, 631897, 636729, 816044, 1447404,
- 312459, 805306, 1440962, 1215476, 1248762, 962610, 66035, -105764, -80531, 401043,
- 1002338, -35433, -12885, -79457, -665720, 249108, 296890, -186294, -753767, 392453,
- -193274, -137976, -685584, 249108, 39192, -248571, -541703, -300648, -11811, -317291,
- -208306, 15569, 192200, -143345, 96100, 20401,
- },
- {
- -688269, -54430656, 79994, 6750615, 2541547, 1648194, -1175747, 2955474, 784905, -3207804,
- -10206453, 4912369, -2098629, 2931315, -274878, -4381404, 1281511, 2945811, 4784057, 3432753,
- 8563091, 374736, -2764885, 1188095, -7160248, -3530463, 665183, -2633889, -3024731, 2085744,
- -4675072, -4080756, 3590056, 2399276, -819265, 1489817, 2500745, 3813394, 2282238, 1475321,
- -763430, -74088, 1774358, 373662, 621160, 2092723, 1539209, 1078037, 1457605, 244276,
- 1063004, -2590402, 238371, -554051, -1440425, 1246077, 118112, -236760, 461709, 68183,
- -1032940, 710280, -962073, -314606, 941672, 312996, 689879, -1052804, -118112, -850404,
- -678068, -649614, 447750, -352187, 795106, -400506, 761283, -576063, 202937, -253403,
- -587874, 562641, -272194, 152471, 50466, 308164, -111132, 272194, -537, 252866,
- -395674, -111132, 5369, 55298, 128849, -353261,
- },
- {
- 2337536, -1289564, 11767137, 33516314, -19545322, -554588, 331786, 2152852, 3186866, 2294050,
- 1863479, 528281, 379031, 1897302, 5094905, -5450314, 4628364, 2956548, 6332930, -766652,
- -2424509, -11324755, 3687766, 1270774, -2325725, -489089, 433792, -4593468, -1088774, -307090,
- -3204046, -5077725, 5163625, 375273, -178241, 1346472, -4727686, -1037772, 1201517, 3456912,
- -3738769, -1806034, -1547799, -3013457, -597537, 738734, -1219234, -984084, -980863, -629213,
- 1374926, 1615445, -298500, -1533840, -1505923, 23085, -278636, 122407, -294742, 745177,
- -838592, -695785, 708670, -464930, 748935, 186831, 886374, -351114, 589484, -415538,
- -639950, -98784, -435402, -268435, -437013, -320512, -636192, -576063, -428423, 187368,
- -67646, 90194, 179852, 31675, 482647, -362388, 295279, 95026, -68719, -56908,
- 249108, -536871, -12348, 64425, -208843, 78383,
- },
- {
- -2651069, 6271726, 4582193, 482110, 491237, -668941, 715112, -1335198, 577136, -1903744,
- 253403, 2079301, 6113349, 5528160, 4598300, 4318053, 17956184, -14171781, 8094940, 4820564,
- 1881196, 5424544, -1804960, 3674345, -4512937, 3210488, 4078072, 219580, -3461207, 3851512,
- 1255204, 577673, 4962835, 4015258, -1324997, 1534914, -2252174, -465467, -398895, -1170379,
- -918586, 297427, -711891, 2269353, 372052, 971200, -60666, 588947, -523449, -370978,
- 2107755, -157303, -902480, 1406065, -661425, -1523103, -851477, -59056, -875636, 859530,
- 1003949, 11811, 466541, 362925, 870268, -258772, -169114, -820876, -313533, 133144,
- 483721, -559420, 386010, -127238, 638340, -159451, -810675, 219580, 408022, 248571,
- 428960, -399969, -44023, 439697, -456877, 83215, 160524, 475668, -534187, -48855,
- 301721, 89657, 197032, 40265, -48855, 59593,
- },
- {
- 9275519, 73656544, -7544647, 33267206, 3298535, 861141, 2347737, -3794067, -532576, -4658429,
- -166430, -2228551, -4574677, 4141422, -8334384, 4632122, -4963909, 981400, -678605, -1052267,
- -3825742, -49392, -222801, -334471, 932545, -2581812, -2371896, -795106, 2212445, 210990,
- 2797098, 95563, -266288, 6541772, -120796, -523449, 2361695, -2373506, 2572149, 708670,
- 649077, -2233920, -3842922, -1873143, -1425929, -1250372, -1080721, -1864553, -3322157, -816044,
- 2353105, 1532767, -583579, 1844689, 892816, 432718, 2106682, -6442, -44560, 26307,
- 1480690, -1580548, 449361, -79994, -1253594, 460635, 1571958, -94489, 1083406, -1123134,
- -748935, 173409, 486942, 55835, -1057099, -82678, -96100, -115427, -121870, -147103,
- -465467, 19327, 17717, -223338, -135291, -300648, -241055, -297427, -507343, 311385,
- 191126, 227633, 176094, 134218, -325881, -326954,
- },
- {
- 504659, -8881455, -1945083, 943819, -1111860, 307090, 239444, -1017907, 648540, 1684164,
- -2753074, 10201, -518080, 7228430, -3525631, 4179540, 6608881, 14273250, 210453, -2215130,
- 974958, 1131187, 3703873, -804233, 2345052, 1694365, -5297842, 14048301, 1797444, -8952322,
- 2564632, 615791, 2542621, 7463043, 886911, 759136, -3322157, -1732482, -647466, 821949,
- -2109366, -474057, 2744484, 216896, 39728, -1803886, -1108102, 1018981, 124017, 331249,
- -2150705, -807454, -391916, -1426466, 392453, -339302, -542777, -242666, -629750, -84289,
- -31675, 1621887, 1062468, 462783, -60130, 875100, 688269, 1252520, 207769, 1060857,
- 1222992, 629750, 330712, 627065, -731755, 634045, 287226, -327491, -138513, -166430,
- 133681, -263604, -330176, -5369, 356482, -444529, 329639, -267362, 81068, -218506,
- -238371, -24159, -302795, 50466, 129386, -144955,
- },
- {
- 27306866, 28926604, -2156611, 42886324, -6209449, 293132, 689342, 462246, 329639, 2436857,
- 1963874, -3564823, -6212134, -4650376, -1932735, 2747705, 1860258, -840203, 2652679, 3811247,
- 3989488, -2011118, -2989834, 3222836, 1051730, -3460670, -2262374, -1302449, -1787780, -509491,
- -2527052, 1992865, 1181116, -882616, -597537, 593242, -1180042, -3438658, -909459, 2310156,
- -1677722, -1330903, 1109712, -594853, -2084133, 530965, -3659849, -1425929, 81604, 149250,
- 258235, -2120640, -788127, 2276870, 1038308, 576599, 171262, -1207960, 386547, -138513,
- 845035, 402116, 301185, 238908, -135828, -140123, 580357, -292595, -646929, -261993,
- 32749, 1161789, 23622, 223875, 1545651, -130997, -319438, -97174, 426812, -103079,
- 632971, 437550, -462246, -738734, 155693, -23085, 321586, -604517, -119185, 297963,
- 284542, 81068, -131533, -29528, -263604, -317291,
- },
- {
- 143881, -611496, -4728222, 1046361, 295816, 1031866, -619012, -403190, 5440650, -405338,
- 3228742, -477815, 2255395, -2617246, 1367947, 8977555, 11750494, 7963406, 4694400, -1132798,
- 2022930, 44023, 17717, -6934762, -3286724, 5565741, -3266323, -3830574, -3558917, 9014599,
- -4182761, 2071785, -3438658, -2590402, -1092532, 1888175, 2491081, 2709051, -1316944, -3781719,
- -535260, 2942053, 2871186, -585189, -2451890, -1966558, 977105, 810675, 1388348, -199716,
- 2510945, -726923, -340913, -447750, -1234266, -605054, -397284, 550293, 830002, 864899,
- -572841, -1086090, -854699, 262530, 1130113, -1326071, -143881, -930397, -810138, 203474,
- 1181116, -1248225, -918586, 161061, 24159, 263067, -213675, -1032940, -310311, 417149,
- 25233, 102005, 388695, 39192, -155693, -157840, -210453, 98247, 19864, -185220,
- -233002, -111669, -285078, -575526, 336081, 41339,
- },
- {
- -8302172, 109266112, 1895691, 39673148, -3632469, -956704, -735513, 2913599, 2091112, -2415919,
- -5464809, -465467, 865973, -734439, 1895691, 61740, -3891777, 596464, -4757750, 3477850,
- 2645700, -399969, -2376191, -542240, -1567126, -13422, -1230508, -432181, -1057099, -488553,
- -2505577, -3462281, -1137093, -139050, 2689187, 1181653, 281320, 1263257, -2542621, -710817,
- -302795, 3915400, 1036161, -458488, 47245, 580357, -921807, -3026341, -966905, -3034395,
- -1347009, -629213, -557272, 654983, -358630, 1095217, 223338, 1523640, -2090575, 726386,
- -618475, 1135482, -1201517, -534187, 634581, -791348, -33286, 146029, -497679, 198642,
- -128312, 625992, 310848, 205622, 189515, 503585, 609349, 372588, 204548, 158377,
- -596464, 66572, 108448, 191663, -255014, -214748, -378494, 177167, -351650, 141197,
- -115964, -119722, 55298, 13422, -278099, -6979,
- },
- {
- -1846299, 20069846, -2814277, -3994320, 4552129, -4775467, 2580739, 1990717, -650151, -4220879,
- 593242, 2603824, 3327526, -624918, 1598802, -2709051, 4173098, -2675765, 8617852, -1202591,
- 2114198, -3009698, -2495376, 1457605, 3088618, -2243047, 3320547, 1601486, -1855963, 3473555,
- 3590056, -368293, 5469104, -2763275, -5881421, 3571802, -1278827, 941135, -1882269, -147640,
- 942208, -1934883, -2969970, -592169, -2573222, 1234803, -679679, -796716, 893353, 2106145,
- -72478, -1269163, -128849, -910533, 289910, 587337, -295279, -399432, 26307, 457951,
- 1200443, -608812, 527207, 839666, 97174, 297427, -673236, -1072668, -172336, -369904,
- 593779, 339302, -1073742, 394063, -427349, 384936, -405338, 461709, 176094, 412317,
- 336081, 102005, -195421, -35433, -621697, 328565, -35433, 11274, -89657, 316754,
- -278636, -35433, -502511, -183610, 250719, -10201,
- },
- {
- -20850992, -29579440, 3541201, 6255620, 2638184, -4858682, -7849053, 59593, -4920959, 2072859,
- -935229, 4809290, -2707440, 3244848, 111132, -2266669, 6269579, -1210107, -2765959, -5721970,
- -4691178, -1115081, 731218, 3371013, -1874216, 4980015, 3462818, 2237678, 4657892, -307090,
- -1205812, 2223719, 735513, -954020, 4723391, -1208496, -3271691, 3207267, -2641405, -1067836,
- -2607582, 1942936, 2952790, 1350230, 832687, -1911261, 1645509, -1195075, 94489, 882079,
- -1014149, -148176, 874563, -705448, -2630131, 981937, 369367, 1066226, -521302, -1851668,
- 551903, 588411, 689342, -199179, -194347, -329102, -1314260, 39728, 19327, -555125,
- 33286, 149250, -449361, 528818, -292595, -618475, 784368, -896574, 336081, -144955,
- -15569, 297427, 583042, -17180, -40265, -346282, 268972, -117575, -261993, -144418,
- 296353, -263067, 277025, 254477, -277562, -110059,
- },
- {
- -2675228, -5415417, 7152195, -5264020, 5435818, 150861, 7081328, 4677757, 119185, -3055869,
- 1609002, -318364, -616328, -12060268, 7241315, -4399121, -183610, 1866700, -12800613, 6646462,
- -10050223, -2988224, -7519951, 796716, 1676648, -4936528, 2925410, 10153303, 387084, -11089069,
- -1152125, 2197950, -145492, 2815351, 3430605, -117575, 102542, 683974, -2969433, -2163590,
- 2859375, 292058, -2853469, -2437394, 1400159, 2326262, -374199, -1301912, 2480881, 350577,
- 1079111, 1307818, -47245, 480499, -1337346, 1467805, -91805, 131533, 283468, -468151,
- -2092723, 534187, -305480, 761283, 216359, -1238024, 614180, 865436, 153545, 697395,
- -1240172, 12885, -411243, -130460, 210990, 73014, -120796, 428960, 1246077, 10201,
- 628676, 273267, 77846, 537, -265214, -256087, -512712, -13959, -478889, -348429,
- -237297, 23622, 103079, 364535, -459562, 134755,
- },
- {
- -50934016, -54827940, 14853608, 4773856, 20151986, -15551003, -7312719, 6500970, -3778498, -3400540,
- 6340983, 6868190, 1032403, -5746130, 371515, -3691525, 2991445, 2683818, -11222213, 2827699,
- -5014911, -2317672, 1373316, -1705102, 1870995, -8343511, 1593970, 3173444, 2331094, -673236,
- -40802, 74625, -3450469, -1946694, 834297, -1562831, -1715303, -282394, -1676648, 1415729,
- 1316408, 1088774, 3120831, 2828773, 2435247, 6316823, -476205, -1224066, -1440425, -1821603,
- -4540318, 871342, 24159, -66572, 323196, -1534914, -1057099, 703838, 16106, -237297,
- -1832877, 606127, 15569, 397821, -531502, 119185, -31139, 888521, 353798, 609349,
- 921807, 326954, 307627, 545998, -998580, -271120, -670552, 420370, -625455, -541166,
- -187905, 318364, -245350, 514322, 381715, 448824, 276489, 442382, -21475, 88047,
- 269509, 671626, -143345, -193274, 69793, 114890,
- },
- {
- -5032091, -12279311, 8117488, 1087701, -1282048, 8590, 4680978, 738734, 7831873, 2159295,
- -2105608, -1626719, -1308891, -14971719, 13484050, 5659693, 201327, -32212, 3889630, 3408594,
- -2560874, 3034395, -5290326, -5596880, -9142912, 5963025, -8256538, 15920370, 5935645, 5400385,
- -4765803, -6019397, 987843, 3922379, -954557, 2421825, 5000953, 2265595, -15032, 1228361,
- -2308008, -517007, -748398, -1496259, -1985886, 1305133, 1087701, 1803886, -500364, -722628,
- 1212255, -81068, 82141, -386547, 609349, 378494, -710817, 1626719, 92879, 1195075,
- -1643362, -6979, 489626, -763430, -494458, -176631, -416612, -462783, 1222992, -470299,
- 459025, -1182727, 439697, 526134, -245350, 178778, 374199, -145492, -173946, 732829,
- -192737, 358630, 214212, 590021, -104153, 298500, 234076, 124017, 520765, 450435,
- -62277, 258235, 235686, 289910, 310848, 258772,
- },
- {
- -17486422, -98455680, 3553012, -6730751, 2152852, -1704028, -5369246, -43487, -6291590, 5942088,
- 4564477, -8884140, 9029095, -5927592, 9374303, 3988414, -4203699, -5497022, -5009006, -5583995,
- 2419140, 1345399, -1137630, -4859219, 2978023, 2893734, 6755984, -1971390, 1787780, 2221572,
- 2539936, -3305514, 2528662, 6567005, 20938, 275952, 505196, -2012192, -490700, -108985,
- -5577015, -820876, -1632088, -2319819, 1677722, 1336272, 1178969, 1844152, 105764, 1667521,
- 1201517, 2592013, -3781182, 366683, -1582696, 1672890, -1316408, 320512, -1636919, 240518,
- -1195612, 2217277, -878321, -549219, 740882, 105227, 547071, 1178969, -230854, 1187022,
- -328028, 1139240, 34897, -290984, 295816, -64961, -354335, -95026, 199716, -466541,
- 213138, -359704, -530428, -119722, -255551, -788663, -189515, -262530, 99321, -151934,
- 301185, -181462, -243203, -346282, -360777, -23622,
- },
- },
- {
- {
- 969052, 22889492, -600759, 2787434, -13801341, -725313, -717260, 1015760, 523449, -1262720,
- -6460168, -4789426, 4217658, 523986, 2657511, 12582644, -162672, -665720, 936303, -4516158,
- -7523172, 1389422, -1365263, 1089311, -1082869, -3466576, -8222178, -741956, -1020592, 4503810,
- -447750, -619549, 2045478, -149250, 1545115, -1596117, 579284, 1493038, -1416802, -2204929,
- 2380486, -1589138, -2291365, 2263985, 4283156, -1672353, -656593, -199716, -2121177, -148713,
- -45097, -756988, -735513, -1429150, -180926, 583579, 484794, 805843, 475668, 974421,
- 184684, -42950, 496069, -84289, 301721, 375273, -621697, -1188095, -577673, 137439,
- 577136, -77846, 44023, 319975, -334471, -11274, 135828, 156766, -759672, -77846,
- -488016, 76773, -469762, 418222, 275415, 89121, 37581, 68719, -82678, -443992,
- 28991, -115964, -167504, -417149, -67646, -31139,
- },
- {
- -1756642, -48007532, 9258876, -16416439, -12880607, -736587, -330176, 5405753, -681289, 2172717,
- -5131412, 2122788, 964757, 9249749, 3937411, -6672232, -5020280, -1465121, 4536023, 2782065,
- 7173133, 4286914, -1376000, 551903, -2538863, 3352222, 5186173, -2967823, -4547834, 4231617,
- -1805497, -2576444, -1005022, 701153, -1985349, 674310, -391379, 1348083, -779537, -215285,
- -1392643, -1359357, 1794760, -595390, -26307, 691490, 424665, 46171, -454730, -129386,
- 726923, -2997350, 391916, 827318, -980863, -13422, 90194, 923955, 333934, 700080,
- -375273, 233539, -995896, -788127, 784905, -188979, 665720, -388695, 1068373, 193274,
- -128849, -848256, 401043, 10201, 664646, -639413, 276489, -876710, -59056, 104690,
- -615791, 223875, -255014, 171799, 226560, 251792, -331249, -349503, -484258, 125091,
- -367220, 79994, 30602, -77846, 258772, -166430,
- },
- {
- -2629594, -5983963, 8587787, 34946000, -12437152, 492848, 1507534, 2031520, 1643899, -1488743,
- -4136054, 2743947, 1227824, 896574, 6008123, -6830609, 2629057, -1909650, 733903, -3521873,
- -2889976, -7878581, 1084479, -2763812, 1016834, 2182380, 4948876, 763430, -590021, 462783,
- -3034931, -2700461, 4313221, -1456531, -1576253, 152471, -4314295, 2348810, -339839, 2849174,
- -1858110, -158377, 248571, -1745904, -1257352, 557272, 697932, 951872, 431644, 15569,
- 1363652, 907312, -725313, -903554, -984084, 1177895, 743566, 674310, -1044214, 818191,
- -608812, 154082, 1618129, -242666, 1056025, -229244, 211527, -98247, 1355062, 124554,
- -642635, 291521, -38118, 135828, -182536, -104153, 50466, -202937, -106837, 377957,
- 175557, 267362, 20401, -603980, 170188, -376883, 12885, 54761, 94489, 58519,
- 493384, -118112, 351650, 108448, -117038, 76773,
- },
- {
- 1993939, -4310000, -8063264, 1597191, 394600, -849330, 703301, 164819, 2121177, -1891933,
- 279710, 293132, 1682017, 6892349, -1502702, -1645509, 15373835, -9424769, 13386339, 83752,
- 1197222, 1275068, -3470334, 2554432, -4088809, 5041218, 4839355, -39728, -6233608, 5142687,
- 3700114, -3117610, 322659, 679142, -3445638, -1889786, -4417911, -1152662, -2729452, -300111,
- 390842, 376347, -610422, 3386045, 493384, 382252, -1399623, 1463510, 607738, 630286,
- 1577864, 46171, -212601, 321586, -948114, -213138, 453656, 734976, -991064, -375810,
- -199716, -968515, 469225, 920197, 896574, -989990, 339302, -150324, -685047, -84826,
- 747324, -379568, 500364, -165893, 406948, 261993, -284005, -141734, -230318, -118648,
- 188979, -295279, -354872, 154619, -667867, -128312, 330712, 555661, -359704, -39192,
- 197032, -204548, -27917, -210990, -120796, 39192,
- },
- {
- -15811385, 16307991, -17729088, 24616068, -8121783, 16643, 514322, -8151311, -4054449, -8018167,
- -3430068, -7868380, -5034776, 6711424, -7683697, 8648454, -1879585, -3725884, -5161477, -195958,
- -4060892, -3392487, 2696166, 2285460, -376347, -3475166, -4913443, -4072166, 107374, -2094870,
- 1545115, -306016, -3730179, 1454920, -3583077, 54224, 4694400, -2031520, 2912525, -1363652,
- -2444373, -3410204, -463320, 2090039, 690953, -11274, 1729798, 351114, -1856500, -1655173,
- 419833, 833761, -823560, 2121714, 442919, -441308, 6979, -664109, 645319, 59593,
- 566936, -1308354, 326418, 448287, -153545, 1292785, 816044, -529892, 1020592, -438624,
- -60130, -68183, -481036, -6442, -503585, 329639, -357019, -264677, -70867, -125091,
- -348966, -192737, 292595, 303332, 124554, 74088, -145492, -45634, -102542, 199716,
- -259846, 94489, 123480, 302258, -49392, -66035,
- },
- {
- 553514, 2603824, 4868883, 33823, -2065342, -90194, -188442, -509491, 532039, 483184,
- -661962, 819802, -786516, 4864588, -5554467, -1412507, -11439109, 4908611, 2165201, -804233,
- 2256469, -2357400, 458488, -284005, 2295660, -629213, -9540733, 12630425, 833224, -8902930,
- 3992172, -5055714, -3952981, 1261110, -796180, 5995775, 2748242, 2379412, 256624, -620086,
- -260382, 1107565, 2576981, -155693, -1713692, -1605781, -541166, 274341, -1771137, 646929,
- 220654, 1021129, 313533, -761283, -46708, -742493, -746787, -345745, -756451, 364535,
- -24159, 1653026, 1040456, 359704, -110595, 216896, -119722, 539018, 16106, 338229,
- 355945, 259846, -239981, 511638, -938450, 194347, -159988, -476741, -98247, -87510,
- 693637, 165893, -304943, -66572, 341987, -456340, 341450, -233539, 66035, -111132,
- -427886, 34897, -118648, -60130, 192200, -114890,
- },
- {
- -22243636, -33153390, 3820910, 47270948, 2033667, 986769, -2970507, -2733210, 409633, -4952634,
- -598074, -2343442, -16106, 943282, 708670, 1520418, 208843, -366683, -1538672, -1055488,
- -1152125, -913217, -3149822, -3237332, -5523328, -2655901, 157840, -3526705, -3113315, 508954,
- -1526861, 914828, 1287417, 2917894, 1212791, 2138357, -1068373, -1817845, -1632625, -866510,
- -156229, -1105954, 251792, 2447595, -321586, 2644089, -527744, -1045288, -901406, -549756,
- -1096290, -3172370, -1449552, -93952, -113280, 1132798, 897111, -1455994, 577673, -428423,
- 337692, 313533, -104153, -609885, -42950, 471373, 705448, -254477, -210453, 29528,
- -194884, 897648, 52613, -101469, 483184, -479426, -154082, -177704, 231928, -31139,
- 293668, 498216, 145492, -42413, 565862, -164283, 298500, 40802, 12348, -13959,
- 220117, 148713, 13422, 104690, 274341, 239981,
- },
- {
- 966905, 5768141, -1756642, -1733019, -2850248, 671089, -1156957, -2363306, 2556043, -2106145,
- 2659122, 459025, 3440806, -2094870, -45097, -7947837, -17884780, -876710, 10343892, -5277441,
- -1187559, 6013491, 428960, -3473018, -290984, -2772938, -9012452, -3569655, 1784022, 11120207,
- -5684926, 6961605, 6524056, 3584687, 1320703, -128312, 1961190, -71941, -1948841, -178241,
- -857383, 625992, 1200443, -1515587, -1685238, -1154273, 219043, -409633, 2615098, -517007,
- 226023, -982474, 240518, -24159, -565325, -385473, -431644, -846645, 37044, 1511829,
- 569620, 718870, 47245, 55835, 891743, -835908, 471910, -570157, -391379, -88047,
- 342524, -596464, 102542, 619549, -187905, 27380, -221728, -702227, -137439, 970126,
- 466004, -12348, 528281, 43487, 52076, 252866, 428423, 438087, 143881, 132607,
- -139050, -273267, -101469, -537408, 32749, 28991,
- },
- {
- -11508365, 89314384, -9924596, 48168596, 4358318, -792421, -1838783, -2609730, -2365453, -1913945,
- -3706557, -459025, -1973001, 6497749, 6732898, 4721780, -2089502, -576063, -4875325, 4576825,
- 3949223, 936303, -610959, 2378338, 648003, 1389959, 667331, 1885491, -515933, -2522757,
- -2317135, -2211371, 200790, -847182, 1432372, -2193655, 454193, 3214783, -491774, 1015760,
- 55298, 1628866, 677531, -677531, 2014877, 1865090, -367757, -762894, 3094524, -1191317,
- -643708, 1274532, 253403, 533113, -1011465, 1947231, -6442, 597000, -1867237, 2200634,
- -408022, 173946, -336081, 774705, 219580, -666257, 543850, 564788, 318364, 521839,
- -420907, 681289, 265214, 97711, 172336, 196495, 335544, -26844, 33286, -54761,
- -785979, -175020, 95026, 88047, -471910, 432718, -147103, -215822, -433792, 462783,
- 111132, -275415, -299037, -94489, -114354, 290447,
- },
- {
- 1786706, 22038550, -103616, -5015448, -2170569, 1631551, 8316668, 2066416, 4161823, -2363306,
- -2167885, -3207804, 952409, -1859721, -640487, 264141, -617402, -1533840, 8363375, -6345278,
- -3459596, -11781095, -6839199, 1428614, 30065, -6571300, 3862249, -117038, -5725192, 2877091,
- 3917010, -621160, 3013457, -4256850, -2296197, 2568391, -788127, 2326799, -100395, -427349,
- 2640331, 2270964, 1191317, 513249, -2771865, 811749, -138513, -904091, -501437, 1418413,
- -288300, -1392106, 94489, -452045, 218506, 442919, -664646, 1018981, 259309, -681826,
- -73014, -572841, -348429, 555125, -314606, 304406, -119722, -616865, 242666, -94489,
- 694711, 703301, -758599, 991601, 115964, 820876, 78383, 306553, 35433, 108448,
- -324270, 347355, 287226, 73551, -244276, 552977, -151934, -142271, -268972, 320512,
- -248571, 26307, -347892, -188442, 258772, -170188,
- },
- {
- 20541218, -10235444, -29348586, -5096516, -3409667, 1465121, -6252936, -3849901, -4949413, -1314260,
- -4085051, 1868848, -3499325, 2349347, 2216203, -4741107, -1805497, -1590212, 4867809, 1011465,
- 3953518, 2776696, -4379256, -1395328, -3172907, 2848100, 753230, -4960151, -617938, -2768643,
- -2185602, 1374926, -1331440, -2757906, 6025302, 499290, -3383897, 2288681, 20938, 938987,
- -2525441, 1357210, 1052804, -244276, 1374390, -499290, 2761664, -1260573, -52076, 1784022,
- -1534377, -1481227, 158377, -1060857, -2318209, 921271, -1374390, -233539, -587337, -500901,
- 1308891, -574989, -169651, -908922, 472983, -127238, -454730, 434865, 500364, -224412,
- -121333, 360240, -602906, 384400, -13422, -745177, 320512, -1090385, 653909, 253940,
- 216896, 198642, 368830, -38118, -231928, -476205, 112206, 143881, -255551, -180926,
- 205622, -173946, 241592, 346819, 81604, -134755,
- },
- {
- 1765232, -18196702, -2752537, -3912178, -555125, -2576981, 4874251, -1047435, -889595, 1359357,
- 150324, -2915746, 1134945, -4798016, 5981816, -2436320, 2229088, 5416491, -4469451, 9208947,
- -5402532, 6703907, -5724118, 5065377, 1271847, -2655364, -22012, 2338073, -2093797, -5047124,
- -725850, -155693, -2137820, 1488743, 2367601, -660351, 1172526, -106837, -2146947, -1699733,
- 1721745, 970663, -2412161, -2434710, 577136, -1931125, -3084860, -3301756, 1132798, -607201,
- 643171, 317828, 894964, 1910187, -2252174, -207769, -745177, 1295470, 1063541, 574452,
- -1072668, 1403917, -946503, -951335, -94489, -438624, -227633, 529355, -637803, -62814,
- -1122060, 248571, -862752, -581968, 606127, 690416, -34360, 27917, 202400, -807991,
- 584116, -34897, -199179, 82141, -281857, 183610, -439697, 134755, -14496, -324270,
- -381715, 137439, -51003, 235149, -335544, 224949,
- },
- {
- 45488000, 61630096, 892279, -4978404, 16331613, -14806363, -773631, 8176544, -7302518, -9097278,
- -1502702, 7088307, 4256850, -4275640, 1692217, -2233383, 4044786, 2923262, -11470247, -370978,
- -6822556, 792421, 5749351, -92342, 4255239, -1706176, 4671851, 2277943, 1207423, -864362,
- 1589138, 839129, -1074816, -967441, 1405528, -810138, -998580, 2989834, -801548, -2666638,
- 583042, 548145, -72478, 1996623, -1479079, 1660542, -865436, -587874, 202937, 1150514,
- -2367601, 1756105, 1025960, 307627, -719944, -796716, 138513, 869731, -68719, 466004,
- -1057636, 412854, 254477, 1164473, -461709, 17717, -185757, 757525, -463856, -794032,
- 132607, -328565, -576063, 85362, -799938, 433255, 341987, 675384, -942745, -725850,
- -901943, 299574, -504659, 90194, -38118, -147103, -183610, 277025, -169651, -15032,
- 100395, 700080, 101469, -171262, 96637, -17180,
- },
- {
- 4102231, -16379932, -4167729, 2417530, 222801, 2532420, 6465000, -860067, 7732552, -1898376,
- -3736622, -1322313, 745714, -2331094, 29152628, 8551280, -2304250, -7648263, -1868848, 3349538,
- 1155883, 5046050, 1542430, 2662343, -8367133, 6379100, -9160092, 7233262, -1650341, 3621731,
- 928787, -552440, 2062121, 3900367, -3027952, -1445793, 3183108, 2403571, 2386928, 1895691,
- -2602750, 260382, 362388, -588947, 538482, 2244657, -2109903, 96100, 215285, -577673,
- 807991, -289373, -198642, -2321967, -907849, -146029, -1387811, 911070, -854699, 352724,
- -1078574, 157840, -876173, -847182, 713501, 339302, 418222, -98784, 306016, -466541,
- 641561, -1030792, 29528, 345745, 284542, 623844, 424128, -49392, -292595, 469762,
- -106837, 437013, -285078, 468688, 53687, 540629, 141197, 46708, 70867, -1611,
- -293132, 102005, -94489, 15032, 249645, 97711,
- },
- {
- 28984050, -38580080, 2386391, -14267881, 1460289, 6015639, 225486, 6349573, -5329518, 2104534,
- 1949378, -348429, 6586333, -9077950, 12467753, 3185255, -7622493, 205085, 2095407, -334471,
- -628139, -1992865, 1905892, -1710471, 2801929, -2761664, 4529580, -3431142, 2512556, 3852049,
- 820339, 107374, 4836133, 4204236, -2284386, -1535988, -112743, -1841467, -599685, 3499325,
- -530428, -362925, -338766, -1574642, -657667, -1099512, 57982, 259309, -2376728, -540092,
- -386010, 2478733, -3629784, 338229, -2894271, 690416, -2142115, 584652, -1418413, -382789,
- -1517734, 1317481, -183610, 180926, 951872, -396211, -170188, 449361, -1557463, 655519,
- -257698, 875636, 215285, -143881, 384936, 219580, -101469, 44560, 569083, -223875,
- 588411, 850940, -35433, -5369, 539555, -291521, 47782, -170725, -183610, -16106,
- 136365, -327491, -53150, -129923, -162135, -11274,
- },
- },
- {
- {
- -1656247, 23449448, 1792075, -14124000, -1604707, 1885491, 488553, -2416456, 5230197, -4719632,
- -5170067, -3269007, 3211562, 580894, 3762391, 5083094, -8357470, 7420093, -2627983, -4983773,
- -6761889, -1523103, 440771, -2729989, 1708323, -4775467, -1402307, -2155000, 212601, 1443646,
- 3694746, -3925600, 3005940, -312996, -1808181, 3104725, -2386391, 3033321, 703301, -2895882,
- 2761664, -111132, -5199595, 3721052, 4305705, -857383, -1850594, -903017, -1067299, -83752,
- -1934883, 533113, 181462, -906238, 867583, -47245, -12348, 731755, 398358, -106837,
- 796180, -241592, 785442, -758062, 718333, 456877, -665183, -952946, -393526, 341450,
- -333934, -39728, 477278, -18254, 112743, -381715, 106837, 331786, -151934, -571231,
- -250719, -167504, 322659, 105227, 118648, 144955, 209380, 19327, -210453, -293132,
- -222801, -171799, -186831, -80531, -141734, -65498,
- },
- {
- 1266479, -39521216, -5704254, -27304718, -3798362, -2976412, 3138011, 2635499, -2610266, 3663607,
- 4796405, -10110353, 7364259, 4281546, 5760625, -10509785, -2266132, 461172, -2339147, 2900714,
- 3316252, 9428527, -539018, -2753611, 1788854, 834834, 2417530, 1516660, -3055869, -985158,
- -3112241, 4172561, -737661, -979253, -3737695, 1553168, -2570001, 1809792, -1984812, 519154,
- -1191317, -1078574, 1610076, -986232, -70330, 1633161, -822486, -372052, -1225139, 1055488,
- -765578, -1454383, -640487, 606664, 1420024, -938450, 110595, 1787780, 715649, 44023,
- 508417, -134218, -309775, -602906, 570157, -46708, -156766, 348429, 1090385, 488553,
- -492311, -558346, -120259, 535797, 157840, -104153, -700617, -252329, -81068, 56371,
- -255551, -120796, -130460, 79994, 369904, -33286, -406948, -140660, -458488, -130460,
- -101469, 78383, 1074, -128849, 169651, -4295,
- },
- {
- 1735704, 13484050, -21270288, -7835094, 27815818, -293668, 3438658, 1636919, 1118302, -595927,
- -5668820, 2672007, -957241, -2631741, 179852, 570694, -2550674, -67109, 1795833, -5114233,
- -3671123, -9380745, -889058, -345208, -1087701, 6117644, 3650185, 3648575, -3500935, 813359,
- -2217814, 2305861, -3948149, 3266860, -1887638, -588411, -3377992, 2338610, -1906429, 2732673,
- 235686, -9664, -199179, -379568, -1797981, 535260, 989453, 127775, 699543, 2173790,
- 206158, -263604, -2046015, 1287953, -119722, 1138166, 53150, 1208496, -1736241, -198105,
- 84826, 626528, 1438814, 119722, 122943, 680215, -235149, 481573, 102542, 892279,
- -119722, -19864, 371515, 143881, 522912, -418759, -26307, -494995, 266288, -92879,
- 371515, 20401, 333934, -323733, -297963, 59593, -110059, -80531, 155156, 4295,
- 303869, 222801, 368293, 21475, -209380, 19327,
- },
- {
- -1667521, -21677236, 5808407, 3423089, 431107, 277025, -33823, -85899, 3268470, -814970,
- -2138894, 1479616, -1475858, 6926709, -6220724, 6735583, -4643934, -713501, 12833899, 895501,
- 3255585, -1474784, -1369021, 2585570, -3636227, 3658239, 3070902, -255551, -3577708, 4979478,
- 1825898, -6486475, 978716, 1492501, -2206003, -2813741, -2618856, -3167002, -1248225, 1105954,
- 658741, -625992, -804770, 3764539, -215285, 141197, -830539, 1392643, 1583232, 2273648,
- -46708, 791348, -202400, -277025, -842887, 991064, -176094, 144955, -672699, -727997,
- -507343, -384936, 473520, 917512, 665183, -868657, 288837, 78383, -556198, 433792,
- -391379, -118112, 73551, 166430, 296890, 4295, 241055, -277562, -382252, 65498,
- 13422, 40802, -344134, -44023, -303332, -147640, 311385, 295279, 19864, 18254,
- 125091, -257698, -14496, -66035, -63351, 2147,
- },
- {
- 11935177, -56594784, 1795833, 14442901, 5864778, 1180579, -2581275, -4219806, -5821828, -3341485,
- -6913824, -11547556, 1810329, 5468567, -6209449, -4475893, 6046777, -5699422, 21475, 1567663,
- -7592966, -3786014, 4939213, -3163780, -2381023, -142271, -1938641, -4308926, 848256, -3920232,
- 1038845, 723165, -4643934, 1184874, -217970, -1597191, 3194919, -3441343, 840203, -903017,
- -1972464, -1580011, 485868, 2100776, 711891, -256087, 845572, -497142, 367220, -1036161,
- -983011, 73551, 122943, 1030792, 915902, -179315, -1445793, -302795, 33823, 1258425,
- -940598, -1045288, 628676, 782758, 152471, 759136, 156229, 226560, -642635, 140123,
- 470299, 12885, -1652489, 319438, -624918, 615254, -372588, -8053, 161598, -109522,
- -352187, -149250, -127238, 519691, -76236, 105764, -214212, 188442, 133144, -328565,
- -238908, 258235, -10201, -61203, -54224, 199179,
- },
- {
- -254477, 17551920, -3111167, -1491427, -1750199, -192737, 20938, -831076, 1284732, -2107218,
- 5763309, -2748242, -2733210, 4354560, -2160906, -10411538, -10537702, 4062502, 7510287, -12693776,
- 11293080, 730681, 118648, -374736, -3740917, 2164664, 2139968, 1211718, -142271, -3534758,
- -1600949, -5313949, -1311039, -3790846, 2654827, 7136088, 4198868, 1439888, 122407, 332323,
- 737124, 1937030, 1243930, -944356, -744103, -1822677, -667331, -162135, -668941, -974958,
- 822486, 2088965, -357019, -119722, 258235, -1038845, -768262, -854699, -663572, -24159,
- 51540, 1462436, 624381, 433792, -253403, 155693, 191126, -150861, 920734, -705985,
- -129386, 738198, -339302, -53150, -140123, -299037, -504122, 91805, -88584, 263067,
- 104690, 136365, -215822, -128312, 125628, -351650, 226560, 48318, -255551, -125091,
- -170188, -93416, -199179, -80531, 194347, 250182,
- },
- {
- 2974802, -73421392, 9941239, 46668040, 353798, 436476, 1424855, -6222871, 1935957, -2871186,
- -1049046, -1755568, 2563022, 1273458, 291521, 1144609, -1384590, 2912525, -2532420, -439160,
- -7351374, -266288, -253403, -1817308, -9468255, -1284195, 125628, -2503966, 113817, -3270618,
- 1101659, 1391569, -1407676, 3316252, 598611, 3155190, -2798708, 2786360, -1343788, -3454764,
- 2126546, -1912334, -2130841, 2607045, 392453, 2404645, 169114, -2011118, -396748, 629750,
- -1973001, -2257542, -1133335, -419296, -547071, 1050120, 1756105, -1408749, -83752, -207769,
- 455803, 716186, -957241, -614180, -267362, 1089311, 402116, 95026, -438087, -1611,
- -63888, -197569, 484258, 472446, -543850, 245350, -428423, 427886, -385473, 325881,
- 213138, 277562, 175557, 341987, -70330, 149250, 48855, 283468, 47782, -89121,
- 235149, 78383, -1611, 298500, 205085, 351114,
- },
- {
- -9664, 7756711, 3109556, -4378183, -2589865, 193810, -714038, 346819, -1999844, 465467,
- -1930588, 4334159, 3371013, 2906082, -6788733, -11082089, -20312510, -2626909, 10624138, -2196876,
- 446677, 3126199, -1185948, 1061394, -4377646, -2473364, -2712809, -8740795, 7905961, -629750,
- 1032403, 2435783, 7310571, 3913252, 3212636, -4675609, 1108102, 215822, -600222, 2685965,
- -3818763, -395137, 2013266, -1969243, -2035815, 554588, 1143535, 374199, 231391, -1375463,
- 1025960, 298500, -699543, 541703, 970126, -1298154, 673236, -1500554, -354872, 1633161,
- 255551, 609349, 1138703, 23622, 521302, -1103807, 188442, -185757, 448824, -652835,
- 146029, 130460, 123480, 272194, 373125, -590558, -379031, -2684, -17717, 500364,
- 642098, -104690, 198105, -537, 255551, 13422, 639413, 359167, -110059, 157840,
- 72478, -88584, -35433, -305480, -380641, 154619,
- },
- {
- 23422068, 7062000, 14412300, 49093624, 1126355, 825707, 807454, -5477694, -5994164, 4233764,
- -6172942, 2747169, -4357245, 388158, 4258460, 7960722, -1503239, 319975, -1207423, 2582349,
- 2584497, -1859721, 2629057, 1397475, 2725157, -870805, 3221762, 638876, -391379, -3871376,
- -1698123, -1211181, 986232, 115964, -743566, -2445447, 2964064, 583042, -386547, 1964411,
- 1100049, 1072668, 266825, -382789, 1605781, 1654636, -396211, 2071785, 2734821, -2835215,
- 736050, 474594, -159451, 912144, -265751, 1552094, -387084, 57982, -85899, 769873,
- 743566, -862752, 887448, 601295, -823560, -67109, 175020, 1042066, 478352, 393526,
- -124554, 202400, 273804, 174483, 642098, 39192, -163209, -40265, 241592, -218506,
- -525597, -217433, -294742, 34897, -406948, 406411, -88584, -326418, -30065, 242129,
- 93952, -235686, -120259, -227633, 47245, 487479,
- },
- {
- -1549410, 8670465, 5792837, 7372312, -3117610, -4786741, 11842299, 717796, 3583077, -144955,
- -2347737, 2021856, -6385543, 4473746, -10779294, 5320391, -1862405, 998043, -5101885, 4064650,
- -1657857, -10802380, -5610838, 3386045, -1612760, -6972343, 726386, 2450816, -2381023, -1835025,
- 4489315, -1107028, 2407329, -89121, 1312113, -2240362, 1648731, 16643, 1254667, -1809255,
- 2442763, 2183991, 1414655, -629750, 28991, -91268, 401579, 137439, -1808718, 1223529,
- 1128503, -198105, -807991, -1204738, 505196, -676994, 477278, 509491, -38655, -110595,
- -845035, 308164, -148176, 81604, -350040, 161598, 270583, -702227, -49392, 715112,
- 121870, 89657, 18790, 345745, 627065, 430570, 66035, 420907, 295279, -254477,
- -338229, -27380, 467078, 40802, 261993, 148176, 162672, -166430, -197569, -55835,
- 93416, -17717, -333934, -52613, 197032, -133144,
- },
- {
- -19452444, -4708358, 3044058, -7554311, -1347009, 7254200, -1726040, -8742406, -682363, -5971079,
- 3704409, -7453379, 3467649, -547608, 3732864, -4795868, 1564442, -5120138, 5835250, 6470905,
- 4907537, -1886564, -1964411, -3430605, -70867, 1364726, 173409, -1986959, -2428267, -2267743,
- -477815, 470299, -3665218, -746251, 3843996, -1048509, -1617055, 2313914, 179315, 1452773,
- -369367, -1448478, 923955, -408559, 1432372, 95563, 1191317, -550830, 1058173, -161598,
- 875100, -2129230, -1485522, -426276, -981937, 638340, -1987496, -789200, -296353, 330176,
- 812286, -568546, -205622, -667331, -476205, 53687, -99858, 323733, 812286, -221728,
- -194884, -23085, 280784, 6442, 132070, -488553, 186831, -370441, 437550, 250182,
- 311922, 87510, 24696, -20401, -203474, -212064, 219043, 479426, -431644, 191126,
- -205622, -30602, 154082, 238371, 129923, 25770,
- },
- {
- -1075352, -28394028, 3246459, 3753802, -7366943, 4603668, -3131031, 503048, -88584, 2648384,
- -1788317, -271120, -4497905, 8446590, -4954782, 2869038, -908386, 4808216, 5815923, -2264522,
- 2305324, -1609002, 3877819, 882616, 742493, 1673964, -8125542, 3763465, -2510409, -3860639,
- -1445257, -1379221, -1941862, 2263448, 2871723, -2733210, 7124814, -3664144, -1005559, -132070,
- 2436857, -1947768, -2451353, -887448, -877784, -3174518, -3060164, -1002875, 1380295, -1002875,
- 1669669, -848793, 645319, 52613, -1063004, -1403381, 521839, 865436, 96637, 1019518,
- -368830, 286152, -588411, -1026497, -432718, 306016, -393526, -276489, -307627, -321586,
- -430570, -189515, -481573, -203474, 290447, 1116155, 32749, -135828, -218506, -703838,
- 421444, -260382, 3758, -49392, -285615, 206158, -248571, 34360, -147640, 1611,
- -183073, 47782, -38655, 289373, -234076, 129386,
- },
- {
- -23124104, 153413008, -18264348, 6784975, 14489609, -14009646, 6308233, 1181653, -12002823, -7255811,
- -3216931, 8703214, 2796561, -4328254, -3205119, 4450123, -403727, 3508988, -8529805, -2107755,
- -2506650, 1899449, 2540473, 644245, 134755, 4944581, 3691525, -870268, 4239670, 455803,
- -330176, 1228898, 1794760, -1102196, -477278, -1479079, -606127, 3889630, -1884417, 203474,
- -351114, 580357, 117575, 1284195, -5167383, 24159, 1146219, 456340, 257698, -345208,
- -96100, 427349, 766115, 746787, -1782411, 1283122, 46708, 848793, 34897, 431107,
- -363998, -557272, 355945, 504659, 86973, -110059, 200790, 824097, -642098, -366683,
- -286152, -671626, 191126, -655519, 367757, -376347, 912144, -251256, -49392, -817654,
- -856309, 252329, -4832, -486405, 147103, -184147, -206695, -135828, 19327, -517544,
- 340913, 404801, 141734, 127775, 339302, 55298,
- },
- {
- -3553549, -25572236, 8360691, 7591355, 572841, -1292785, 3831111, 1779190, 4425964, -6077379,
- -1869921, 300111, -1230508, 14536317, 13489419, -469225, 2696166, -4749697, -555125, -3106872,
- 6113349, 7558606, 3107946, 3297998, -3351148, -204011, 3521336, -8157217, 632434, 2978023,
- 171799, 3371013, -673236, 2768107, -2874407, -2223183, 3297998, 78920, 3141769, -47245,
- 2633352, -2071248, 905701, -980863, 1801202, 2677912, -2562485, -1294396, 1125818, 130997,
- -1437740, 903554, -22549, -2724083, -169114, -71941, -235686, 194884, -1138166, -419833,
- 53687, 80531, -1102733, -844498, 1426466, 653909, -198642, 197569, -520765, -133144,
- 412854, 513249, -947577, 67109, 772020, 754841, 128849, -252866, -413927, 650151,
- -3221, 95026, -64425, 111132, -14496, 448287, -537, 324270, -125628, -278636,
- 54761, 53687, -91268, 17180, 167504, -10201,
- },
- {
- -27358942, 28654412, 1192390, -10802916, 5615670, 6965900, 4683125, 5717139, -4086125, 360777,
- -1572495, 6402186, -2930778, -708133, -868120, 4976257, -5259725, 4402879, -4119948, 3719979,
- -1721208, -6956774, 893353, 6270653, -4229469, -2222109, 3322157, 3288334, -2151242, 5048197,
- -3913789, 2907156, 5324686, -1096290, -1962800, -1620276, 2214593, -2559264, 476741, 2847027,
- 1671816, 826244, -1559610, -1339493, -2218888, -725313, -2285996, 95026, -1732482, -257161,
- -75699, -437550, -565862, -1510755, -2062121, 335544, -1058173, -690416, -486405, 37581,
- 194347, -1218697, 513249, -56908, 415538, -128312, -291521, -120259, -973347, -213138,
- 1004486, -102005, -119185, 344134, 692564, 157303, -270046, 2684, 469225, -222265,
- 601295, 641024, 31675, -39192, 775242, -204011, -114890, -105227, 66035, -11274,
- -255014, -41876, -279173, -95026, 103079, -11274,
- },
- },
- {
- {
- 1120987, 8665633, -11523934, -8941585, 5273146, 2800856, 2686502, 1625108, 6049999, -2556043,
- 3321084, -4388920, -7686381, -7647726, -4554813, -6500433, -14333916, 966368, -7102266, -2036351,
- -910533, 714575, 6942278, 621697, -1624571, -2747169, 858993, -2159832, 3174518, 3917547,
- -1624571, -8754754, 500901, -4066260, -2859911, 6212670, 3406983, 8442295, 2762201, -2249489,
- 748935, 958315, -2920041, 692564, 2852395, 790274, -2463164, -857383, -656056, -125628,
- 775242, 2670396, 923418, 463856, 795643, 309238, 537, 1716913, 1161252, -1251446,
- 82678, -909459, 187905, -732829, 650151, 1072131, 392453, -190052, -780610, -121333,
- 412317, 108985, 245350, 265214, 119722, -827855, -324270, -13959, -113280, -142808,
- 20938, -54761, 214748, -33286, 150861, -36507, -104153, -214212, -105764, -300648,
- -394063, -26307, 216359, 411780, 13422, 16106,
- },
- {
- -3559991, -43344272, -9321690, -17828410, 7256884, 135291, 1389422, -313533, -1370095, 4440460,
- 3991098, -14030048, 2590939, -1250909, 5376226, -6965900, -800475, -4399657, -8866423, -928787,
- -2147484, 1822677, -2238215, -2063732, -1230508, -1781338, 1161789, 2653753, 66572, -1015760,
- 594853, 9045201, 1402307, -2488397, -3435437, 4963909, 64961, 1744831, -199179, 1727651,
- -1435593, -4440460, -651761, -911070, -1020055, 1177358, -701153, 1467805, -281320, 1784559,
- 479426, -25233, -806917, -840203, 2155537, -466004, 639413, 2854006, 1561758, 3758,
- -120796, -90194, 264141, -209380, -68719, 144418, -236223, -432718, 535260, 141734,
- -697932, -130460, -252866, -11274, 112206, 47782, -666794, 579821, 418222, 96637,
- -120796, -226560, -32749, -185220, 107911, 124554, -354335, 335544, -234613, -326954,
- -88047, 101469, 8590, -30065, 78920, -9664,
- },
- {
- -135291, 53624276, 7070590, -48777944, -693637, -1789391, 63351, 612570, 1841467, 2849711,
- -5363341, -2856690, -5196374, -679142, 5987185, 6046240, 2546916, -108448, 707059, -3048890,
- 412854, -12671764, -7226283, 1079111, 1553168, 4597226, -1556926, 2756832, -2752000, 426276,
- 387084, 2940979, -5257040, 3882651, -1428077, -100395, -155156, 790811, -4509716, 669478,
- 5906, -29528, 47245, 566399, -1672353, 632434, -453656, -1365263, 692027, 2592013,
- -412854, 942745, -355409, 1995012, -780073, -557272, -686658, 512712, -2190433, 50466,
- 143345, -557809, 332860, -1219771, -1601486, 504659, -13959, 297427, -376883, 742493,
- -43487, -228170, 619012, 791348, 573915, -600759, 27380, -487479, 155156, -370978,
- 184684, 77309, 601295, 95026, -86436, 526134, 180926, -113817, 213138, 5906,
- 252866, -51003, -20938, 54224, -150324, -55835,
- },
- {
- 1373853, -33123324, -6332393, 337155, 294205, 780073, -861678, -690953, 2680597, -2743947,
- -2075006, 3712999, -6245420, -1226750, -14569603, -4944044, -7692824, 4538707, 7160784, 3526705,
- 4653060, -3542274, 1334124, 6847252, -866510, 1326071, 1423782, 1046898, 449361, -274341,
- -6023155, -5152350, 5003637, 3368328, -481573, -508417, 3620658, -1136556, 608275, 1493038,
- -340376, -1473174, -3320547, 1565516, 408559, 1445257, -51540, 885837, 2064806, 1928977,
- -301185, 1804960, -123480, -661962, -756451, 1436667, 22012, 35433, 44560, -168577,
- -31139, 27917, -151398, 492311, 713501, 367220, 544387, 321049, 533650, 593779,
- -578747, 158377, 127775, 51003, 100395, 6979, 540629, -1074, 237297, 616328,
- 282394, 300648, 18254, 413927, 143881, -193810, -53687, 99321, 97174, 219580,
- 135291, -247497, 86436, 153008, 36507, -109522,
- },
- {
- -439160, -113562696, -18185428, 7849053, -4895726, -224949, -1620276, 1548873, -1467268, 4125853,
- -1165547, -4881767, 3555159, -3578782, -12793634, -7943542, 3325379, -6990596, 8367133, 11772505,
- -5274220, -1598802, 1788317, -8187282, -3476239, 1268089, 4546223, -755914, 3067681, -3796751,
- -2554432, -1409823, -1105954, 3087545, 76236, -148713, 5209796, -4143033, -64425, 1216550,
- 535797, -406411, 427886, 3273839, 199716, -2483565, -788663, 4295, 13959, 155156,
- -2029372, -1884954, -230854, -869194, 183610, -392453, -483721, 263604, -825707, 547071,
- -583579, -1040456, 810675, 1348083, 422517, 361314, 161061, 27380, -1667521, -1000191,
- 321049, 297963, -899796, 504659, -972810, 567473, -546535, -303332, -37581, 117038,
- -545461, -827855, -554051, 327491, -154082, 59056, -578747, 109522, 87510, -268435,
- 198642, 137439, -452582, -339302, -1611, 204011,
- },
- {
- -616865, 16970490, -1472637, -1110786, -672699, 151398, 293132, -260382, 1341640, -2545305,
- 6144488, -2072322, -705448, 10017474, 4064113, -2824478, -4993973, -1293859, 3697430, -18333068,
- 10330470, 7023882, -514859, -6630356, -2239826, 3108483, -1303523, -2646774, 266825, 1081795,
- -1041530, -2531883, 2762738, 1501091, 5535676, 5881421, 2923799, -113280, 1319629, 2656437,
- 1321239, -547608, -795106, -607738, 275415, -1159641, -234076, 357556, 937914, -424128,
- -1074, 380641, -673773, 428960, 521839, -418759, 115427, -1425929, -746787, 3758,
- -208306, 573915, -790811, 117038, -10737, 446677, 597000, -163746, 909996, -1125818,
- -902480, 380641, 20938, -353798, -852014, -678605, -205085, -33286, -346819, 34897,
- -387621, 27380, 17180, -275415, -63888, -187368, 405338, 199716, -330712, -219043,
- -537, -88047, -527207, -62814, 339302, 538482,
- },
- {
- 20897164, -69663296, -11171747, 40984724, -1803886, 960999, 2746632, -5581310, 3121904, 4671851,
- 6661495, 6140730, 4450123, -158914, -1283122, 2234457, -1131187, 1101122, -1919850, -786516,
- -5867462, 2119566, 2328946, 2162516, -2243047, 2223183, 749472, 2101850, 3500935, -3151969,
- 294205, 333934, -4184372, 1234266, -96637, 1737314, -481573, 3900367, -1623498, -1189169,
- 4539781, -1628330, -3343632, 674310, -149250, 1130113, 1286880, -374736, 889595, 602369,
- -2268280, 529355, 314069, 1176284, 187368, 445066, 892816, -1431298, -8053, -537,
- 636729, 386010, -1367410, -869194, -964757, 285615, -302258, 34360, -745177, -250719,
- -143881, -577136, 69793, 107911, -164283, 556198, -710280, 209380, -207769, 687732,
- 227633, -312996, -37044, 230854, -544924, -66572, -57982, 139050, 266825, 134755,
- 83752, -188442, -115964, 113817, -227633, -42413,
- },
- {
- -1143535, -4924717, -95563, -155693, -795106, 374199, 170725, 1618129, -2150705, 1273995,
- 573378, 6412923, 2906619, 3076270, -6153615, -1764158, -5457830, 6104759, 3552475, 2865280,
- 11567958, 163746, -4304094, 4898947, -2494302, 1280974, 3346853, -154082, 8699456, -8022462,
- -1606318, -4299263, 1899986, -658741, -309775, -3949223, -1473711, -1607928, 1096827, 3560528,
- -3148748, 441845, 3445101, -1549946, -1144072, 3222299, 2571075, 1311039, 2102387, -264677,
- 131533, -401579, 323733, 2398739, 2020245, -439160, 1484985, -1566053, -1433982, -403190,
- -1054415, 379568, 649077, -604517, 581968, -1123134, 209380, 340376, 228170, -555661,
- 901943, 469225, 73014, -192737, 325344, -762894, -332323, 427349, 392453, -211527,
- 191663, -185757, 46708, 164819, -32212, -260919, -193274, -212064, -174483, -3758,
- 63351, -34897, -140660, -151398, -321586, -119185,
- },
- {
- -24229522, -110183624, -23643794, 40080636, -4096862, -1216550, -1666447, -4618701, -7311108, 778463,
- -10906533, 5441724, 3292629, -4821101, -9859097, 647466, 2591476, 3578245, 2552284, 522912,
- -2391760, -3613678, 2677912, 829466, 982474, -2604898, 2671470, -103079, 238908, -1460826,
- 957241, -1213328, -2780455, 234076, -151934, -1068373, 5428839, -896038, -3122441, 2602213,
- 2266132, 1502702, -1376537, -103616, 137439, -1574642, -459562, 3535295, 2804614, -2653753,
- -955093, -1688459, -972273, 735513, -673236, -280247, -205622, 819265, 803696, 940598,
- 1103270, 229781, 821949, -289373, -1058710, -222265, -66572, 853088, -137439, 91268,
- 397284, -226560, -85899, 325344, -107911, -534187, 537, 147640, 28991, 129923,
- 7516, -84826, -341987, 256624, 8053, 293668, -176631, -337692, 262530, 208843,
- 26844, 83752, 231391, 11811, 124554, 423591,
- },
- {
- 1316408, -12787191, -22057342, 2247342, 4482872, -6489696, 7706245, 2621541, 3535832, 1757715,
- 2361158, 7729868, -1785096, 8321499, -12693776, 6647536, 5947456, -5409512, -17843978, 3905199,
- 7787313, 5654325, 143345, 1376537, -3736085, -4675072, -4710506, -2685965, 785442, 3198677,
- 8520678, -1546725, 2698850, 2605435, -215822, -5684926, -422517, -2933463, -67109, -1709934,
- 907312, -1322313, 1372779, 2804077, 668404, -26844, 401043, 55298, -648003, 2998961,
- 1565516, 1093069, -476741, -2322504, 128849, -594316, 1374390, 938450, 891206, 836982,
- -257161, 493921, 28454, 133681, -361851, -175557, -37581, -1428077, -344671, 620086,
- -302258, -206158, -180389, -670015, -292058, -281857, -296890, 400506, -63351, 157303,
- 319438, -341450, -33823, -282931, 190589, -338766, 56908, 12885, -6442, -173946,
- 152471, 202400, -155693, 76236, 171262, -136902,
- },
- {
- 18603650, -21329882, -46880104, 1937567, 178778, 3422552, 11800960, 441845, 5418101, -814970,
- 7174206, -7517267, 766115, 2756832, 10914049, -695785, 4874788, -5517959, 3625489, -362388,
- 987843, -1559610, 232465, 602369, 1516660, 57982, 1358820, 3259343, 2588255, 820876,
- 428423, -319438, -3475166, 416612, 874563, -1959042, 42413, 1440425, -1527935, -1176284,
- -2363306, -1012002, 1858110, 1141388, 1776506, -823560, -215822, -1018981, 1107565, -2179696,
- 686658, -95563, -1267552, 700080, 923418, 1036698, -857383, -496606, 748935, 500364,
- 107374, -412317, 234613, 292595, -1260036, -210453, -457951, -304943, 703301, 317828,
- 442382, 189515, 307090, 52076, 511638, -207232, 344134, 162135, 669478, 278099,
- 142808, -238371, -202400, 2684, 246424, 144418, 348966, 435939, -249108, 336618,
- -263067, -113280, 23622, -53150, -61740, 3758,
- },
- {
- 666794, -39666708, -9201967, 14305999, 3277597, 6941741, -4547834, -1307818, -1653562, 2838437,
- 882616, 3735548, -2652142, 5886253, -5986648, 9349070, 470836, 3754875, 4168803, -4066797,
- 6673843, -7410429, 3940096, -1264868, 2214593, 2897492, -6528887, 773094, -4516695, -4085051,
- -1814624, 1040993, -875100, 424665, -1045288, -6012954, 5091147, -2673617, 3569655, -694174,
- -1282585, -2546379, -192200, 206158, -135828, -208306, -846109, 152471, 1578937, -1821066,
- 1178969, -1581085, -638340, -460635, -289910, -1533840, -459562, 440234, 657667, 1116155,
- -360240, 202937, -258772, -502511, -80531, 567473, -149250, -538482, 102542, -692564,
- 492848, 1396401, 152471, 290984, 140660, 711354, 27917, -283468, 35970, -214748,
- 45097, -306016, 252866, -165893, -122407, 275952, -215822, -128312, -310311, 55835,
- 71941, 440234, 92342, 131533, -302258, 116501,
- },
- {
- -4918275, 168472784, -39914740, -404801, 11804181, -12491376, 686121, -6473590, -9031779, -2654827,
- -7154342, 1549410, -994822, -4190814, -3620121, 7564511, -2752000, -110595, -6150393, -1769527,
- 2272038, 5346698, 949188, -2358474, -4981089, 1656784, -1872069, -343061, 6579353, 168041,
- -293668, 2625836, 4594542, -340376, -4221416, -474057, 2217814, 2483028, 555125, 2089502,
- -932545, 1100049, 77309, 1377611, -2864743, 544387, 942208, 821413, 554051, 190589,
- -475131, -1979443, -1333587, -1896228, -2479270, 1949378, 34897, 1162862, -404264, -18254,
- -589484, -1236414, -617938, -521839, 122407, 960999, 623307, 273267, -275952, 878321,
- 647466, -161061, 785979, -835371, 567473, -341987, 542240, -605590, 451508, -395674,
- -124554, 347355, 118648, -435939, -93952, 230318, 462246, -177167, 155693, -540092,
- 133144, 30065, -164819, 202937, 364535, 120796,
- },
- {
- 3112241, -26804354, 708670, 4405026, -3481608, -4100620, 1281511, -1474248, -752693, -3802120,
- 1792612, 3029563, -2211371, -16374026, -16719234, 3096135, 5332739, 2943126, 8511551, 773631,
- 5981279, 1445257, -4351339, 2582349, -4480188, -6354941, 1117765, -11485816, -164819, -487479,
- 685047, 882616, -4510790, 3043521, -1648731, -1561758, 1309965, -2688650, 2010045, -123480,
- 5215164, 98247, 1880122, 834297, 2225867, 1462436, -1553168, -161061, 820339, -32212,
- -1465658, 1045288, 79457, -891743, 1233729, 758062, -224412, -113817, -24159, 894964,
- 913754, 12885, -508954, -374736, 424665, 717796, -450435, -505732, -199179, -56908,
- 290984, 777389, -572841, 623844, 840740, 103079, -535797, -977105, -740345, 353261,
- -413927, -35970, 251792, -134755, -329102, 204548, -265751, 65498, 57982, -278636,
- 3221, 1074, -140660, 24159, 133681, -78383,
- },
- {
- 14681272, 77221904, -7211250, -9825275, 5228586, 4090956, -1024887, 1485522, -3279745, -1308891,
- -3479997, 6196027, -653909, -10241886, -22996328, 3135326, 3635690, 2307471, -10612327, -2611340,
- -4754529, -5090610, -1493575, 1330903, -3326989, 4302484, 1952063, -1754494, -7526930, 3923990,
- -4497368, -2771328, 406948, -1040993, -2196339, -2544768, 2907693, -3330210, 579821, 2461553,
- -78920, 1233729, -1131187, -1226213, -3063922, -2172717, -3444564, 720481, -1100049, 1075889,
- 1785096, -686658, -893353, -1582159, -783832, 1313186, 565325, -103079, -287763, 541166,
- 867583, -828929, 724776, -680752, -726923, 311922, 402653, 150861, -135828, -418222,
- 645319, -585189, -1046898, -101469, 514859, 8590, -303869, -135291, 682363, -167504,
- -322123, -398358, -99858, -268435, 339839, -501437, -630823, -427886, 153008, 224949,
- -5906, 127238, -31675, -10201, 37581, 8590,
- },
- },
- {
- {
- 525060, -25992606, 15164993, -184147, 403190, 497679, 4446902, 2621541, 4685810, -392990,
- 2867428, -7828652, -7895224, -2151242, -5872294, -7700340, -8789114, -7613367, -1892470, -2870112,
- 6830072, -745714, 4258997, 2541547, -10635950, 2797098, -1771674, -3200288, 2238215, 4878546,
- -4570382, -4312684, -1058710, -5824513, 1410360, 5251135, 1905355, 8746164, 2643016, 478352,
- 1145683, -737661, 401043, -1246077, 935229, 963683, -2111513, -2490544, 1059246, 1403381,
- 1566053, 957778, 507880, 1265405, -482647, 1258425, 224412, 595927, 1385664, -196495,
- -485331, -1547799, -157303, 794569, 141734, 499290, 59593, 164283, -461709, -259309,
- 468151, 218506, 314069, 551903, -830539, -385473, -532039, 271120, -308701, -163209,
- -150324, 338766, -185220, 31139, -314069, 46708, -63351, -379031, 246424, -134218,
- -395674, -127238, 219580, 475668, 190589, 121870,
- },
- {
- 9494562, -103414760, 27251030, -1721208, -3601330, 1901060, -1377074, -97174, 731755, 3515968,
- -2192044, -3660386, -2369211, 594853, -2661806, -4580583, -1435056, -3620121, -5542119, -5381057,
- 1275068, -3752191, 2203855, -577673, -2975876, -1010391, -871342, 6014565, -737124, -1726040,
- 1511829, 6983617, 4596152, -6276558, 2368675, 609885, 2177012, 443992, 1071058, 2552821,
- 11811, -6288369, -1861868, 489089, -290984, -591095, 1662152, 1518808, -10201, -11811,
- 1981054, 328565, -1235340, -1468879, 1648194, -260382, 1802813, 609885, 1426466, 681826,
- -1068373, 680215, 288300, -527207, 277562, -190589, 73551, -595390, -358093, -30602,
- -104153, 359167, -253940, -939524, 453119, 355409, -637803, 628139, 39192, 428423,
- 27380, -373662, -117038, -67646, -39728, 11811, 66035, 239981, -164819, -315680,
- -145492, 129923, -5906, 19864, 120259, -47782,
- },
- {
- -2283849, 89398136, -7417409, -30775588, -18985902, -1216550, 939524, -875100, 1708860, -2383707,
- 2873333, -7059316, 484794, 2597918, -732292, 4529043, 4117263, 3077881, 1161252, -1102196,
- 1479079, -7248831, -7518877, 3286724, 1330366, -1720134, -1223529, 517544, 474057, -1546725,
- 3779571, -1801202, -1255204, -1908576, 1292785, -2886755, 4082903, -1333051, -2797098, -1707250,
- -772557, 1022739, 321049, 47245, -2092723, 1556926, -858993, 24159, 865436, 916439,
- -560493, 497679, 1347546, 1157494, -319975, -1202054, -151934, -899796, -744640, 453119,
- -512175, -140123, -759672, -1030792, -1462436, 110595, -200790, -147103, 100395, 277025,
- 163746, -23622, 519691, 843961, -175557, -105227, -177167, -505196, -114890, 216896,
- -89121, 183073, 523449, 273804, 112743, 275952, 223875, 44023, 139586, -137976,
- 241592, -139586, -68719, -40802, 280784, -128849,
- },
- {
- -519154, -39882528, 3120831, -2771328, 1270774, 351650, -795643, 10201, 1089848, -1105417,
- -2056216, 5456756, -4704063, -9461813, -14070850, -4504347, -1595044, 6204617, 2378338, 6132677,
- 372052, -3196530, 8259222, 796180, 1881196, -2204392, 4384088, 426276, 2163590, -3220152,
- -5573257, -558883, 1505386, 2975876, 642098, -3886409, 6265821, -1640678, 3091303, -809064,
- 769336, -1605244, -1580011, -213675, 942208, 696858, 2215666, -1500017, 2628520, 471373,
- -107911, 1413044, 872952, -1111323, -300648, 1573569, -117038, 177704, -547071, -213138,
- 185757, 811749, -936303, 649614, 558883, 576599, 124017, 141734, 969052, 14496,
- -77846, 285078, 58519, 346819, 18790, 381178, 85899, 304943, 461709, 348966,
- 401579, 212601, -153545, 583042, 154082, -151934, -137439, 43487, 5906, 212601,
- 67646, -63351, -28991, 59593, -26307, -131533,
- },
- {
- -15248745, -149736512, 19799262, 1854889, 3755412, -2884608, -35433, 2715493, -219580, 6529961,
- -1705102, -1786170, 428960, 1273995, -18023830, -3100430, -4249334, -2552284, 9659918, 7628936,
- -494458, -3354370, 3716757, -8365523, -4959077, -1770600, 7159174, -3347390, 5630166, -3863323,
- -3054259, -1821603, 3673808, 1498407, -1810866, 853088, -1469953, 3322694, 425202, -900333,
- 858993, 1183264, 208843, 1698660, 716186, -644782, -2084133, 1266479, -1174137, 1927904,
- -2091649, -2727304, -913754, -1477469, 1050656, 518080, -229781, 363462, -411780, -567473,
- 250719, -770410, 1044214, 1013612, 51003, 144418, 543313, 411243, -1468879, -1126892,
- 599685, -597537, 625455, -32749, -572304, -390842, -199179, -269509, -456877, 339302,
- -510027, -1037235, -489626, 48855, 126165, -137976, -404801, 154619, -161061, 10201,
- 539555, -198105, -367757, -268972, 81604, 32212,
- },
- {
- 316217, 3077344, 7365869, -2625299, 635655, 573378, -63888, 356482, 1192390, -154619,
- 2870112, -2309082, -2836289, 7640210, 6587943, 2416993, 140660, -3352759, 1635309, -11898670,
- 4436165, 5304285, 2558190, -13775571, -3893925, 11630771, -3234110, -1999844, 2134599, -792958,
- -4540318, 3833258, 1379221, 3062312, 5413270, 3412889, 1359357, -2796561, 2779381, 4483946,
- -704912, -1057099, -87510, -430034, 1148367, -35433, -805306, -337155, 1399623, 336618,
- -834834, 645856, -1700270, 954557, 484258, -1741072, 648540, -281857, -1158031, -934692,
- 1420560, 209917, -705985, -392453, 948114, -85362, 625992, 118648, 342524, -738198,
- -497679, -108448, 308164, -740345, -680752, -790811, 200253, -379031, -241055, 278636,
- -491774, -341987, 415538, -370441, -54761, 66572, 245887, 214212, -140123, -485331,
- 263604, 31139, -651761, -176631, 409633, 294205,
- },
- {
- -39411156, -28177132, 20963736, 30373472, 2283312, 3472481, -1940252, -302795, -5105106, 7910793,
- 8443906, 8431021, 2628520, -4180614, 4387846, -302795, -1981054, -590021, 104690, -3015067,
- -821413, 1515587, -243739, -2099165, 7023882, 2196876, 1803349, 3310346, -1870995, 2238215,
- -1242856, -2609193, -1568200, -240518, 796716, -858993, 4189741, -2661806, 1739999, 822486,
- 1570884, 447213, -4830228, 139586, 2506650, -351114, 111669, 1151051, 605590, 126702,
- -567473, 79457, 1843615, 801548, 72478, 60666, -124554, -167504, -782758, -159451,
- -134218, -689342, -261456, -233002, -921807, -83752, -232465, -652298, -327491, -319975,
- -519154, -524523, 644245, -664646, 387084, 359167, -324807, -113817, 357019, -102542,
- 254477, 77846, 30602, -309238, -323196, 39728, -5369, 110059, 394600, -128312,
- 161598, -252866, -54224, -205622, -19327, -268972,
- },
- {
- 124554, -14337138, 1078037, 3406446, -390842, -966368, 243739, 500901, 1052804, -637266,
- 2674154, 8018167, 436476, 4035122, -10681584, 5869610, -1527398, 3433826, 1127966, 11957189,
- 3608846, -453119, -3409667, 4443681, -373662, -1364189, -1866700, 9890773, 4306779, -5551782,
- 877247, -2416993, -1409286, -1131187, -3738232, 3258807, -2275796, -1184874, 2510945, 767725,
- -1278290, -973347, 2909840, 245350, -637266, 2109366, 1118839, 1731409, 2901251, 620623,
- 307627, -1304596, 848256, 1543504, 896038, 971200, 1166621, -1960116, -1185411, -78383,
- -740882, -1186485, -418222, 809601, 12348, -101469, -292058, 142808, 55835, -630286,
- 1190780, 322123, 449898, -495532, 363462, -775242, -497679, 193274, 621160, -45097,
- 4295, 37044, 75699, 499827, -424128, -86973, -535797, -55298, 46708, -235686,
- -245887, -44023, -158914, -47245, -93416, -179852,
- },
- {
- 13874355, -213935536, 14082661, 22922778, 7787313, -179315, -7261179, -2696166, -5468030, -756451,
- -9328669, 5922223, 865436, -690416, -3626563, -5771899, 5954436, -284005, 288837, 868657,
- -1685238, -1720134, 1121523, 2711735, -938987, -1511292, 1273995, -157303, -4295, 44560,
- 2845953, -3148748, -1641214, -2746095, 791348, 3007551, 1842541, -680215, -3595425, 2388002,
- 3587908, 1813013, -2801393, 836445, -621160, -3177739, 371515, 2343979, 779000, -271120,
- -2828236, -1116692, 461709, 257698, -607201, -2250563, 1162862, 1285269, 82678, 1059246,
- 820876, 1026497, -496069, -258235, -205622, -163209, 18790, 226560, -250719, 155693,
- 584652, -456877, -484794, 409096, -425739, -331249, 426276, 2684, -382789, 322123,
- 347355, -71404, -309775, 62814, 498753, 345745, -127238, -349503, 20401, 188979,
- -98784, 175557, 317291, 390305, -11274, 5369,
- },
- {
- -795643, -35422744, 6140193, -7712688, 8740795, -1025960, -3184718, 2994666, 1668058, 3363496,
- 7567196, 7325067, -923955, 2796561, -3995393, -1877438, 9011915, -7926899, -14622753, -1065152,
- 7372848, 16620987, -3642132, 2537789, -4697084, -11039677, -1798518, 2109366, -3288334, 6278706,
- 4268124, -399432, 1150514, 2515240, -2241973, -5152350, -2214056, -383326, 1171452, -1869385,
- 1279363, -2101850, -1013612, 4143570, 2273112, 632971, -3041911, 132607, 1779727, 2625836,
- 209917, 1654636, -1620276, -571768, -646393, -290984, 1206886, 1604707, 1440425, -365072,
- 729071, 297427, -366683, -308164, -144418, 279710, -704375, -735513, -484794, 0,
- -40802, 63351, -514322, -388695, -659278, -492848, -419833, 708133, -58519, 167504,
- 408559, -308164, -272730, -229244, -207232, -463856, 188979, 41339, 220654, 158377,
- -293668, -61740, -41876, 192200, 144955, -220117,
- },
- {
- -18945100, -47771312, 12080669, 8652748, 3250753, -7913477, 11435887, 4187593, 1334124, 8104067,
- 1004486, -1299228, -2749853, -1843615, 12070469, 3375308, 1525250, -2675765, -972273, -1696512,
- 735513, 386547, 1053341, -1236951, 2910914, -3266860, 2328409, 1640141, 4564477, 1423782,
- -1925219, 458488, -1507534, -913754, 34360, 362388, 1032940, -328028, -531502, -2360622,
- -2303176, -1051193, 2871186, 1210644, -739808, 1876901, 193274, -659278, -1378148, -489089,
- -214748, 793495, -262530, -192200, 738734, -547608, 1733556, -789737, 855772, -181999,
- -1111860, 971200, 303332, 664109, -1551557, -852551, 105227, -227633, 274878, 672699,
- 322123, -68183, 371515, 175020, 190052, 128849, -281320, 694711, 539555, 212064,
- 80531, -39192, -185220, -116501, 73551, 262530, 236223, 206158, 44560, -105764,
- 2147, -84826, 537, -42950, -156229, -199716,
- },
- {
- -86973, -32603096, -7635915, 9131100, 8239358, -1336809, -762894, -3536369, 1603097, -1984812,
- 3335042, 8138426, 3170223, -8920647, -513249, 8930311, 4441533, 591632, -296890, -133144,
- 2349347, -3940096, 5072357, -4143033, 5156108, -5945846, -858993, 757525, -2917357, 275952,
- -5432597, 2576444, -1111860, 692564, -3155190, -2106145, 335007, 121333, 4072703, -1893544,
- -4849018, 823023, -474057, -1689533, -525060, 1780801, -453656, 1202054, -1140851, -660888,
- -95026, -510564, -381178, -1473711, 1350767, -2389613, -637266, -18790, 2163590, 494995,
- -222801, 179852, -638876, -628676, 766115, -76773, 286152, -389231, -360777, -46171,
- 289373, 1844689, -412854, 580357, 81604, 380641, -537, -5906, 265751, -258772,
- 29528, -643708, 648003, -201327, 3221, 416612, -453656, -165356, -216896, 66572,
- 129923, 162135, 57982, 34360, -32212, -88584,
- },
- {
- 26305064, 111772768, -16186121, -5039071, 5713380, 118648, -13638669, -1661616, -8938364, -3037616,
- 2042794, -4610648, -28991, -1395864, -2983392, 2435247, -3119220, 4763119, -4648229, -1980517,
- -675921, 7780870, 1035087, -4532264, -7416335, -253403, 1368484, 1195075, 2572686, 970663,
- 2971581, -1315871, 4608500, 2024540, -6853157, 3071439, 1207423, -3748970, 4198868, 61740,
- 528281, 1619740, 3896072, -2579665, -1126892, -263067, 1127429, 1139240, 875100, -126165,
- -2142652, -996432, -2639794, -2432562, -258235, -316754, 151934, 1521492, -169114, 373662,
- -814433, -766115, -870805, 47782, -374199, 709743, 608275, -83215, 74088, 982474,
- 543313, -402653, 1364189, -530428, -116501, 338766, 207232, -696322, 399432, -289910,
- -76773, 254477, 2684, -372588, -134218, 290984, 437013, 30602, 197032, -91268,
- -344134, 98784, 104690, 89657, 170188, 230854,
- },
- {
- -2341831, -21883396, 4880694, 916976, -2649458, -708670, -354335, -651761, -6228240, 2312303,
- 258235, -122943, 2730526, -25269440, -4351876, 9526237, 1233729, 2843268, 11525545, -6649683,
- 7754564, 2310156, -5663452, -2624762, -3766686, -2320893, -4641249, -6754373, -1016297, -4483409,
- 5448703, -1883880, -3307125, 2202245, -3692598, 286152, 1971927, -2764885, 2670933, 1164473,
- 2270964, -37581, 1437203, 2449742, 766115, 32749, 159988, 493921, 1360968, -824634,
- -938450, 362925, -678068, 804233, 922881, 260919, -713501, 771484, -322123, 677531,
- 1521492, -657130, 38118, -122943, -294205, 695248, -374199, -787053, 129923, 347355,
- -59593, 389231, -124017, 723165, 524523, -307627, -382789, -1088774, -240518, -53687,
- -356482, -282394, 532576, -244813, -52076, 190052, -255014, -47245, 81068, -114890,
- -221728, 16643, 11274, 17180, -63351, 86436,
- },
- {
- 2677912, 85435488, -1120987, -4849555, 2034741, 1449015, 1080721, 1772211, -4367445, 4384625,
- -2886218, -4662724, 7262253, -8436926, -24400246, -859530, 12377559, -110595, -6871948, -9057012,
- -3331284, -842350, -2495913, -1284732, -2555506, 8017630, -309775, -5404680, -3937948, 1155883,
- 999117, -4740034, -3941169, -1176284, -2358474, 479963, -359167, -711354, 1571421, -153008,
- 803159, 2218351, -2349347, -2024003, -2680597, -1760400, -1038845, -670015, -964220, 865973,
- 719407, 1308354, -177704, -2285996, 701690, 27917, 312459, 854699, 402653, -37044,
- 387621, -620086, -172336, 252329, -841814, 816581, 170725, 198642, 330176, -357556,
- 274341, -548682, -597000, -491774, 169651, -199716, -41876, -19864, 303869, 304943,
- -366683, -843424, 170725, -286689, -322659, -372052, -701690, -344671, 122407, 372588,
- 134218, 35433, 128849, -236760, -70330, -141197,
- },
- },
- {
- {
- -1444183, -61152820, -4096325, 5303748, 299574, -909996, 3486977, -993748, -290984, 2561948,
- 4019553, -3469260, -2574833, -4629438, -2587718, 7293392, 1459215, -2292976, 12981002, 5454072,
- 1364726, 111132, 2506650, 4561256, -5450851, -4541928, -8320963, -3967476, -2559264, -7099044,
- -6070937, 3979287, 4043712, -1022739, 412317, 570157, -731755, 4471598, 1017370, 608812,
- 653372, -1898376, -728534, -1911797, -97174, 392453, -585189, -993211, 3196530, 1649804,
- 879395, 455803, 152471, 619549, -734439, 544387, -832687, -1052267, 794032, -301185,
- -1204202, -629750, 551366, 188979, 153545, 67109, -768799, 219580, 171799, 56371,
- 287226, -86436, -210453, 183073, -688269, 576063, 91268, 907312, -23085, 178241,
- -56908, -76773, -285615, 225486, -293668, -20938, 6442, -449361, 231928, 239981,
- 253403, 146566, 31139, 80531, -26307, 175020,
- },
- {
- -13082470, -180136304, 5481989, 12925704, 3625489, -406948, -2146947, -309775, -4131759, -4857071,
- -9632001, -3658239, 1422171, -1490354, -10346039, -5722507, -4378719, -889058, 2837900, -1837172,
- 1464047, -4064650, 4176856, 1039382, -3731790, -990527, 1567663, 5818607, -473520, 1366873,
- 650688, -186831, 2186675, -806917, 2930242, -1536525, 3480534, 1312649, 1958505, 3495030,
- -279173, -3180423, -143881, -340913, -99858, -1825361, 942745, 459562, -107911, -78383,
- 2417530, 1999307, 848256, -2226404, -244276, -246424, 1347546, -1445257, -316217, 624918,
- -1248762, 25233, -96637, -657130, -181462, -966368, 407485, -348429, -522912, -145492,
- 256624, 579284, 194884, -541166, 59593, 621697, -258772, 79994, -185220, 542777,
- -134755, -284542, -44560, -56371, 191663, -90194, -13422, -31139, -110059, 103616,
- 66572, 265751, 133144, -61740, 14496, -85899,
- },
- {
- 4992900, 132666704, 24612846, 2901251, 5644661, 2042257, 2002529, -1284195, -2849711, -5880347,
- 2304250, -6046777, -2195802, 984621, 627065, 2921652, 5358509, 2637110, 2113661, 3648038,
- 4272956, -60130, 3806415, 8055748, -3364570, -2359011, -1772211, -3218004, -1457068, -3523484,
- 737661, -1102733, 485331, -4537633, 558346, -2235531, 3246459, -824634, 89657, -3115999,
- -1889249, 1082332, 883153, 1704028, -751082, 1505923, -377957, 1346472, 663572, 486405,
- -845572, 602369, 1678795, -622770, -1570347, -242666, 1384590, -748935, 476205, 2006287,
- -144418, -124554, -563714, 641561, 268435, -220654, -801011, -545461, 307627, 29528,
- -126702, 378494, 456877, 147640, -836982, -34360, 61740, -15569, -13422, 153008,
- -143881, 106837, 328028, -55298, 25233, 70867, 38655, -115427, -98247, -192737,
- 177704, -255551, -99858, -38118, 381715, -100395,
- },
- {
- -471910, -38225744, 4778151, -3633006, 222801, 231928, -126702, 64961, -248571, -1741072,
- -1701881, 7125888, -2371896, 2988760, -3833795, -7668127, -2568391, -1947768, -7421167, 1557999,
- -5506148, -9083319, 6189048, -2301029, 3701725, 110595, 4055523, -27917, 947577, -5427228,
- -335007, 3617436, -925565, 3313031, 358630, -4945655, 3111167, -1970853, 2865280, -2141578,
- 1736777, -329639, -558346, 106837, 1431835, 1435593, 2471754, -2771865, 38118, -1680406,
- -1091995, 456340, 759136, -716186, -526670, 1184337, -243203, 540629, -227096, -659814,
- -871878, 55835, -1293322, -25233, -142271, -66035, -463856, 252866, 571231, -404801,
- 177167, 51003, -145492, 461709, 22012, 250719, -56908, 249108, 134218, -49929,
- 271120, -30602, -838056, 262530, 209380, -105764, -231391, -130997, -193274, 41876,
- 119722, 16106, -28454, 12885, 14496, -150861,
- },
- {
- 31093952, -134768016, -11723650, 2530273, 883153, -1386201, -273267, 2661269, -1644436, 2985539,
- 5845451, 8718784, 1623498, 3256122, -12329240, -199716, -4382478, -7036230, 676457, 2299955,
- -257698, -2273648, 4668630, -4234301, 142808, -951872, 612033, -8230768, -283468, -4119948,
- 530965, -2063732, 1322313, -1880659, -4670777, 308164, -8489003, 715649, 3379603, -2892124,
- -2304787, 2507187, 373125, 395674, 4006668, 3163244, 955630, 4409858, 124554, 928250,
- -291521, -115427, -39728, -12348, 1435593, 670015, 513249, 1179505, 384400, -291521,
- -17717, -551903, 1034013, 501437, -491237, 729608, 753767, 952409, 80531, -25233,
- 813896, -415538, 647466, -442382, -432181, -557809, -359167, -455803, -419833, 136365,
- -486942, -102542, 113817, -214748, -94489, -43487, -156766, 92342, 25233, 86436,
- 383863, 73014, -169114, -104153, 181999, -7516,
- },
- {
- 557809, -9088688, -1051193, 734439, 840740, 391379, -78383, 1049583, 1883880, -2678449,
- -614180, -3180960, -5833640, 3648575, 4545686, 325344, 1093069, 3096135, 6231461, -14220637,
- -1398549, 2021319, -1826972, -15402826, -4922033, 11440182, -1547799, -1097364, -1196685, -3976603,
- -2400350, 5727339, 1693828, -679679, -177704, 940598, 1338956, -3555696, -420370, 1709397,
- 329639, -565325, -220654, -214748, 1813013, 555661, -627602, 296353, 1775969, 835371,
- -1894081, -435402, -2265595, 47782, 13422, -820339, 862215, 416075, 418759, 91805,
- 1410360, 365609, 86436, -320512, 765041, -683974, 261456, -119722, -347355, -710817,
- 483721, -1611, 49392, -237297, 249108, 418759, 712965, -122407, -292595, 458488,
- 90194, -333397, 406411, -105764, 333934, -17180, -96637, 173409, 322123, -537,
- 166430, 86436, -249645, -171262, 75162, -78920,
- },
- {
- 47308528, 45417132, -13591961, 14976014, -7237557, 167504, -1399086, 557809, -6407018, 3394098,
- 1222992, -3703873, -6185827, -4571456, 8207683, -844498, -656593, 1722819, 1236414, -540629,
- -855772, 242129, -1986959, -3179350, 8525510, 1917703, 134218, 547608, -2937221, 3233037,
- -20938, -1308891, 1376537, 2118493, 1769527, -1804423, 1612760, -6487548, -676994, 600222,
- 2254858, 1991791, -4627828, -589484, 1532767, 848793, 295816, -152471, 377420, 1169305,
- -47782, -1811939, 1799591, -357019, -913754, -614180, -709743, 114354, -681289, -482110,
- -95026, -152471, -229244, 105227, -419296, 125628, 662499, -672162, 19864, -105764,
- -603980, -168577, 718870, -849867, 361851, 610959, -13959, -402116, 257161, -527744,
- -357019, 153008, 363462, 177167, 353261, 195958, -37581, -56908, -78383, -372588,
- 233002, -188979, -40265, -342524, -87510, -147640,
- },
- {
- 1226213, -3809636, 1766842, 600222, 316217, 53150, 78920, 206695, 2793339, -539555,
- 16643, 2475512, -1643899, 6282464, -12671227, 3061775, -976031, -1457605, -1468342, 12664785,
- -4995584, -7823283, -3751654, 7516, 2979097, -1925756, -5958731, 6156299, -883690, -730681,
- 5418101, 3833795, 774168, -1380295, -669478, 5782100, -1308354, -883153, 2006824, 52076,
- -926639, -1896228, 273267, 1188095, -73551, -658741, -838592, -1239635, 1137093, 1511829,
- -101469, -1213865, 723702, -276489, -153545, -617938, -344134, -2367064, -1068910, 730681,
- 57445, 267899, 64425, 809064, 109522, 37044, -665183, -432181, -68719, -1511292,
- 572304, 135828, -111132, -199179, 535797, -304406, -1074, 384936, 845035, 717796,
- 470836, -38655, 64961, 446677, -294742, 19327, -452582, 235686, 338229, -76236,
- -112743, -60666, 30065, 368293, 283468, 18790,
- },
- {
- 4035659, -252788896, -450972, 10101226, -2935610, -3568044, -6620692, -721018, -2690797, 2977486,
- -7873212, 208306, -4240744, 2189360, 4893579, -1098975, 397821, -1093606, 1764695, 2751464,
- 4098473, 1515587, -149787, 1323387, -894427, -498753, 222265, 58519, 866510, -419833,
- 2329483, -4017405, -255551, -2078764, 1737851, -1594507, -2212445, 2315524, -727460, 1364189,
- 3817689, 448287, -1623498, 2393371, 78920, -3333432, -384936, 415001, -902480, 73551,
- -1146219, -9127, 252329, 94489, -154082, -1221918, 967978, -775778, -1850057, 292058,
- 134755, 975494, -428423, 229781, 529355, -355945, -616865, -212064, -454193, -317828,
- 474057, 151398, -587337, 162672, 45097, -191126, 220654, -14496, -284542, 269509,
- 510564, 62277, -215822, -64961, 503048, 455267, -121870, 166430, 35970, 45097,
- -13422, 232465, 95026, 241055, -177167, -143881,
- },
- {
- 63351, -44396004, 8288750, -5747740, 3521873, -681289, -3288334, 1918777, -1203128, -1051730,
- 4190814, 4796405, -1710471, 4010963, -2137283, -9430674, 1311039, -3676492, -1311039, 2348273,
- -1767916, 10403485, -3971771, 2502355, 2939368, -4846334, -161598, -1115081, -8562554, 4385162,
- 494458, -3762391, -2103460, -1556389, -3628174, 47782, 2866891, 881005, 2390686, -743566,
- 1982664, -1205812, -1291711, 2348810, 1087164, -2147, -3601330, -549756, 440771, -37581,
- -1610076, 1376537, -775242, 1523640, -129386, -366683, 557272, 466541, 245887, -2134062,
- 135291, 745714, -321586, -105227, -270583, 113817, -459562, 501974, 1611, -595927,
- -143881, 67109, -804770, -507880, -1174137, -237834, -356482, 307090, -542777, -501974,
- 382252, 9664, -12348, -97174, -297427, -253940, 77846, -32212, 147103, -24696,
- -413927, 19327, 124554, 40265, -96637, -54761,
- },
- {
- 19487878, -47419124, -24921548, 486942, 10452340, -3735548, -243739, 2525978, -4072703, 4541391,
- -4453344, -2561948, -1112397, -1481227, 3823058, -2175938, 301721, -2238752, -3444564, -5385889,
- 91268, 2498597, 619012, -3461744, 2282238, -5222144, 2142115, -1716913, 940598, -52613,
- -1330366, 399432, -1098975, -600222, 1098975, 2898029, 938987, -992137, -23622, -1313186,
- -533650, 179315, 2431488, 82678, -1186485, 3286724, 1408749, -1049583, -2745558, 140123,
- 449361, 976568, 447213, -813359, -793495, -2419140, 729071, -77846, 69793, -1104880,
- -634045, 1427003, 54761, 463856, -229781, -513785, -2684, -251256, 107911, 599148,
- 70330, -304406, 36507, -347355, -188442, 323196, -159988, 235149, -67109, -13422,
- 181999, 201863, 37581, 40265, -89121, -76236, -415538, -88047, 68183, -182536,
- -60666, -92879, -64961, 24696, -24696, -233539,
- },
- {
- -670552, -17137456, 5895917, 3495567, 4753455, -2431488, 2046015, -3715147, -175020, -2674691,
- 1278290, 4217658, -9450539, -27775016, -3326452, 5231807, 1647120, 1425392, 583579, 1331977,
- 1419487, -3432216, 5922223, -3787624, -1129040, -4310537, 4861366, 4729296, 2914135, 3306588,
- -6122476, 3879966, -113280, 1566589, -3170760, -1537061, -4485557, -2955474, 1708860, -1576790,
- -3186866, 1939178, -895501, -2325725, 52076, 1748589, -1379221, 1357747, -2073932, -1377611,
- 222801, -156766, 157840, -357556, 851477, -2966212, 456877, -579821, 676994, -416612,
- -368830, 244813, 44023, -62814, 634581, -183610, -294205, -483184, -368830, 643708,
- -219580, 790274, -104690, 671089, -52076, 324270, -132070, -157303, 336618, -26307,
- 432181, -310848, 585189, -92879, -176094, 107374, -309238, 15569, -240518, -49929,
- -61740, -144955, -108448, -27917, 71941, 46171,
- },
- {
- -32661616, 37917580, 3176665, 1256278, 12453795, 10897943, -14489072, -3794067, -4913980, 1679332,
- 11073499, 3430068, 697932, 3124052, 7146289, 805843, 362925, 6874632, -1566053, 787590,
- -4182225, 510027, -2951180, -1850057, -5167383, -1786706, 911607, 1778653, 3506841, -1420024,
- -359167, -2425046, 3376381, 2698850, -2783139, 4470524, -4000225, -6051072, 3333432, -1410897,
- 386547, 649077, 3504693, -5209259, -3685619, -1870458, 345208, -90731, -691490, -244276,
- -1262720, 295279, -1937030, -1851668, 770410, 344671, 1229434, 1487669, 257161, 1961190,
- -265214, -538482, -52613, 511101, -841814, 148713, -297427, -819802, -451508, -283468,
- 205622, 121333, 1845225, 56371, 53687, 520228, 491774, -411243, -181462, 193274,
- 259846, 28454, -347355, 26307, 221728, -104690, 75699, 8053, 23622, 184684,
- -110059, 65498, 156229, 58519, -26844, -47782,
- },
- {
- 1539209, -17925582, 827318, 170188, 1387811, 1210107, 829466, 2164664, -2971044, 4621385,
- 3180960, 2637110, 3109020, 17157320, 56652768, 10924786, -5942624, -1031866, 7701413, -8540006,
- 2940442, 1563368, -3927748, -4816269, 528281, 4019016, -1037235, -2324651, -1152662, -5452998,
- 5526013, 2451890, -1195612, 1430224, -5007395, -868120, 1949915, -3977677, 3199751, 2499134,
- -853088, -929324, 1626182, 850940, -1530082, -1057636, 955630, -240518, 441845, -139050,
- -514859, 660351, 209917, 149250, 199179, -818728, -566936, 1123671, -1134408, -47245,
- 475668, -1043677, 819802, 557809, -865973, -309238, -298500, -721018, 187905, 314606,
- -734439, 243739, 60130, 32749, -132607, 33823, 105764, -164283, 357019, -121333,
- -16643, -314069, 310848, -69793, -40802, 132070, -134755, 105227, 8053, 24159,
- -125091, 67109, -1074, 76236, 2684, -169651,
- },
- {
- -16694001, 58594092, 7710540, -312996, 27380, 1249299, 2916820, 7565048, -1469953, 6065031,
- 1249836, 993748, 9388799, 12528956, 6313602, 4428648, 11605539, -5492190, -2223183, -402116,
- 2663954, 2925410, 95026, -803696, -1850594, 6663105, 1250909, -5760088, -3360812, -236223,
- 688269, -971200, -448824, 2890513, -128849, 406411, -3796751, -1762010, 516470, -191126,
- 1910724, 2603287, -2094870, -3062849, -620086, 178778, 1455994, 810675, -439160, 193810,
- -171799, 2051384, 1485522, -520765, 2194728, -676457, -1316944, 977105, -134755, -1159104,
- -729071, -1566589, -317828, 818191, -605054, 381715, -161598, 177167, 677531, -479963,
- -303332, -365609, -86973, -273804, 127238, 66572, 421444, 28991, 193274, 102005,
- -76773, -418222, 305480, -376347, -606664, -6979, -72478, -56908, -219043, 194884,
- 147640, -20938, 185757, -7516, 71404, -361851,
- },
- },
- {
- {
- 683437, -64956548, -354335, 5129265, -2940442, 75699, 1962263, 936840, -2845953, 3157338,
- -253403, 228707, 409633, -373125, -7449621, 12062416, -500364, 639413, 1854889, 11382200,
- -966905, 773631, 980863, 853625, 7478075, -9598178, -7951058, -2792803, -2337536, -13283797,
- 1673427, 1931125, -296353, 3087545, 876710, -1119376, -1473711, 965831, 4588636, -1656247,
- 985158, -824097, -3310883, 715112, 84289, -1519345, 294742, 155156, 2104534, 906238,
- 745714, 22549, 500364, -334471, 904628, -653909, -412317, -1321776, 267362, -1136019,
- -108985, -88584, 632434, 213675, -576063, 635655, -593779, -158914, 482110, 312996,
- -124554, -41876, -43487, -159451, -141197, 400506, 248571, 783295, 47782, -19327,
- 324807, -252866, 191126, -183073, 17180, 31139, 156229, -334471, -127238, 200253,
- 329102, 117575, 62814, -11811, -117575, 224949,
- },
- {
- 11942693, -202772928, 1644436, 10498511, 957778, -3388729, 840203, -85362, -4415227, -8293582,
- -6927782, -5018133, 4163434, -4782446, -7787850, -3660386, -10908143, -2459406, 7933342, -2231236,
- -1932735, 4423280, -3113851, 3185792, -2692945, -2161979, 5759551, 1261110, -635655, 682900,
- 823023, -2684, -1875290, 5022428, -2044941, 2128693, 1198833, 3566970, 2598992, 651761,
- -1748052, 411243, -1522029, 442919, 1599875, -2338073, -812286, 617938, 112206, 981937,
- 2246805, 161061, 1388885, -844498, -1293859, 556735, 607201, -510564, -1193464, 1043677,
- -650688, -428960, -236760, -126165, -164819, -1578937, 256087, 151934, -93416, -591095,
- 79994, 178778, 404801, -191663, -303332, 294742, 587874, -391916, -268972, 416075,
- 284542, -372588, -85362, 90194, 299574, -194347, -124554, -50466, -210453, 314606,
- -195421, 315680, 128849, 53150, -102542, -76236,
- },
- {
- -6373732, 132961448, 28509456, 15159624, 4150012, -1984275, 856846, 1093606, -3474629, -3293166,
- -945967, -3559991, -4534412, 323733, -2950643, 7249905, 3910031, -4798016, 734976, 5789079,
- 3679176, 1352915, 1870995, 8965744, -3095598, -2442763, 620623, -3527242, -7372312, -1065152,
- 242129, 1382980, -1745367, -831613, -2162516, 1168768, 797253, -438087, 3349001, -3958349,
- -929324, -231928, -801011, 4975720, -1272384, -20938, 1791538, 658204, 52613, 289373,
- -201327, 498216, -249645, -215822, 241055, -412317, 136902, -293668, 679142, 1655173,
- 84826, -387621, 585189, 381178, 827855, -537945, -732292, -550293, 308164, -175020,
- 551903, 24159, 717796, 19327, -649614, -204011, 38655, 29528, -166430, 171799,
- -67646, 261993, -150861, 0, 169651, -144955, -143345, 136902, -138513, -37581,
- 27917, -231391, 100395, -75699, -1074, 151398,
- },
- {
- 898185, -28623272, -4964982, -2269353, -275415, -255551, 11811, 1366337, -2404108, 1042603,
- -1413581, 2718714, 1050656, -1094143, 4578435, -8927626, 1448478, -7207492, -11993696, 2084133,
- -4388920, -9922448, 370978, 891206, 2209761, 2860985, 885300, 2332704, -3500398, -3693672,
- 648003, 1996086, 831076, 2872260, -2141041, 588411, -2091649, 642635, -1532230, 278636,
- 1505386, 458488, -221728, 295816, 423591, 2080375, 1073742, -1416802, -682363, -1449552,
- 89657, -366683, 158377, -619012, -480499, 1578401, -775242, 450435, 282394, -962610,
- -494458, -949188, -804233, 212601, -347892, 234613, -284542, -208306, 341987, -331786,
- 168041, -329102, 22549, 320512, -85899, -27380, 71941, 231391, 177167, -247497,
- 194347, -1611, -471373, -135828, 125628, 213675, -482110, -181462, -8590, 57982,
- 128312, -56908, 11811, 94489, 62814, -34360,
- },
- {
- -41422812, -52562348, -6573985, 5956046, 3468186, -810675, -1050656, 632434, 738734, 896574,
- 5119064, 7877507, 3621731, 1282585, -2111513, -4952098, -6146635, -991601, -1656784, -2197950,
- -1916629, 3993246, -542240, -811749, -432718, -662499, -2312840, -2400350, -6958921, -1689533,
- 1591285, -2482491, -581431, -2472291, -3839164, 1034550, -9404368, -1141924, 2935610, -1488206,
- -2115808, 1572495, 51540, 882079, 4360466, 3078955, 1421097, 2318209, 2371896, -988916,
- 1393717, 541703, 346819, 321049, 316754, 1473174, 93416, 1272384, -110059, -380105,
- 70330, -242666, -159451, 1125281, -479426, 284005, 785442, 214212, 861141, 49392,
- 446677, 767189, -447213, -759672, -109522, 193274, -833224, -249645, -367757, -62277,
- -347892, 247497, -147103, 138513, -335544, 90731, 25233, -456877, 229781, 201863,
- -73551, 136365, 41876, 40802, -45097, 134755,
- },
- {
- -496069, -7247758, -1518808, 1787780, 245887, 195421, 44560, 955630, 1404454, -402116,
- -1728724, -4663261, -1188095, -1274532, 4416837, -4453344, 3723200, 3707094, 2805688, -18103824,
- 2515777, 332860, -4967130, -6488085, -4310000, 860067, 1771674, 134218, -1387811, -5168993,
- -804770, 3036542, -256087, 504659, 1221381, 881005, 1048509, -1315334, -2682744, 253940,
- 2437931, -740345, -1302986, 818191, 980326, 747324, 201863, -367220, 1063541, 1093069,
- -1757715, -958851, -253403, -1016297, -847182, -115427, 277025, 1170916, -86436, 788663,
- 1052267, 433792, -37044, -340376, 701153, -340913, 492311, -855235, -596464, 25770,
- -277562, 665720, -49392, -8590, -18790, 889595, 215822, 210990, -332323, 518080,
- 293668, -177704, 61203, 46708, 180389, 203474, -299037, 49929, 469762, 82678,
- -98784, 7516, 70330, -137976, -3758, -158914,
- },
- {
- -43166032, 147417776, 5950141, 6203544, 756988, -2794413, -190589, 658741, -1064615, -2893197,
- -556735, -7762080, -4829154, -2143189, 6694781, -361851, 2173790, -29528, 2545842, -850940,
- -403190, -2078764, -2062658, -2416456, 3227668, 5109938, 1506460, 134755, 483184, -1854889,
- 981937, -2600066, 2987687, 941672, 984084, 485868, -1939715, -1785096, -3313567, -650688,
- 2653216, 1511292, -1142461, -3103114, 678605, 1272384, -390305, 1136019, 287226, 1787780,
- -234613, -1406602, 670015, -1701881, -490163, 93952, -454193, -214212, -61203, -799401,
- 211527, -51540, -478352, -77846, 50466, -415538, 926102, -492848, 76236, -144418,
- -238908, -255014, 188979, 173409, -89657, 186294, 284005, -155693, 74088, -617402,
- -72478, 169114, -19864, 649077, 432718, 31675, -88047, 40265, -237834, -200790,
- 84289, -67109, -126702, -190052, -206158, 143345,
- },
- {
- -402116, 13136694, -5600101, -1859184, 397821, -25233, -207769, 1157494, 1619740, -527744,
- 2147, -1402844, 1540283, 2533494, 3271155, -13480829, 5303748, -3038689, -787590, 3309272,
- 296353, -9601936, 3093450, 1816771, -4221416, -4173635, -4930086, 3490735, -3391951, 3971234,
- 1265942, 3849365, 772020, 665183, -944893, 2132451, 493921, 284005, 1507534, 2054605,
- -1530619, -2335389, 385473, 138513, -762894, 710817, -702764, -1152125, -981400, 2298344,
- -185757, 18254, 401043, -1432909, 808528, -1458141, -546535, -1563368, -885837, -90194,
- 164283, 822486, 774705, 350577, 496606, -82678, -874026, -358093, 484258, -1939178,
- -26844, 743029, -152471, -289373, 256087, -32749, 330176, 401579, 282394, 1108102,
- 330176, -321049, 629213, -128312, -129386, 133681, -317828, 81604, 302795, 59593,
- 114890, -49392, 199716, 143881, 154082, 57445,
- },
- {
- -22677964, -234276512, 14849313, 4716411, -42950, -3482682, -2799782, -1469953, -1524177, 853625,
- -1625645, -6116571, -5259188, -3657165, 7672422, 2028835, -2008434, 3086471, 1565516, 435402,
- 4693326, 2360622, 336618, 2275259, -60666, -1722282, 523449, -52613, 1002875, -1044751,
- 3299609, -4770098, 171262, -2158758, 1935420, -4016331, 467078, 1156957, -475131, 1180042,
- 5996311, -4583804, 1661616, 553514, 1061394, -1589675, 623307, -2183991, 945967, -1058173,
- -538482, 580357, -1428614, -566399, 1444720, -249645, 596464, -1702418, -962073, 51003,
- 106300, 506269, -322123, 435939, 70330, 13422, -6979, -194347, -27380, -185220,
- -311385, 245887, -375810, -79994, -20938, 144955, 21475, 338229, -24696, 205622,
- 59593, 108448, -141197, -31139, 279173, 342524, -228707, 439160, 32749, 139586,
- 5906, 392453, -38118, -91268, -6979, -184684,
- },
- {
- 511101, -38246684, 1909650, 928787, -4239670, 2649458, -1208496, -2146410, 544924, -1491964,
- 2038499, 218506, 3869229, -4265440, -791348, -6034429, -3103114, 2037962, 2703682, 2903398,
- -5302137, 5827197, 2668249, -1611687, 660888, 2870649, -3917547, -3958886, -3082713, -2596308,
- 5366025, -3717831, -3695283, -2654290, -3015067, 1420560, 1294396, -75699, 3504693, 428423,
- -506269, 1147830, 446677, 1267552, -629213, 892279, -1452236, -1954747, 279173, -2174327,
- 312996, 248571, -92879, 1065689, 285078, -751619, -84289, 828392, -1190243, -1652489,
- -48318, 1097364, -198642, -280784, -206158, 209917, -634581, 1188632, -330176, -547608,
- -126165, 299037, -757525, -505732, -867047, -121870, -405338, -300111, -90731, -803159,
- -2147, 253403, 92879, 77846, -357556, 134755, -155693, 80531, 14496, -126165,
- -91268, -202937, 169114, -75162, 94489, -14496,
- },
- {
- -18639622, -42894912, 11987254, -4678830, 8457327, 10438918, -10202158, -2132451, -2960843, 911607,
- -479426, -4105989, -2377265, 2516851, -850940, 356482, -4960151, 2734284, -2415382, -7406134,
- 2214056, 1416802, 1473711, -6782827, 6331319, -3820910, -122943, -2506114, -965294, -819802,
- 570157, 914828, 433255, -1006096, 850404, 2123861, 2215130, 213138, -3270618, 1276679,
- 534723, 1598802, -731218, -41876, 349503, 1442035, 814970, -540092, -1454920, -1171989,
- 628139, 638876, 1089848, -569620, -2283312, -570157, -955630, 53687, 114354, -411780,
- -9664, 399969, 316217, -359704, 437550, -288300, -383863, 182536, -43487, 496069,
- 184147, -299037, -264677, 203474, -183610, 48855, 433792, -63888, -534723, 117038,
- 210453, 55298, 316754, -86973, -278636, 50466, -281857, -92342, 215822, -391916,
- -51003, -141197, 2147, 31675, 16643, -170188,
- },
- {
- 1138703, -5090073, -3545496, -256624, 2255932, 363998, 897648, -1916629, -1192927, -2642479,
- -63888, 359167, -3220152, -22029962, -7937100, -1702418, -866510, 1925756, 4864588, -501437,
- 631360, -4725001, 7900056, -797790, -8348880, 2288681, 1304596, 5701032, -1077500, 2837363,
- 1858110, -4072703, 1732482, 1550483, -4865661, 791348, -4227859, 298500, -1735704, -1548336,
- 145492, 984621, -762357, -1170916, -1335198, 217970, -293668, -532039, 496606, -1420560,
- -471910, -725850, 410169, 947577, -66572, -1881733, 289373, -875636, -643171, -195421,
- 389231, -287226, 323196, -443992, -418759, 432718, -106837, -418759, -360777, 637266,
- -161598, -139586, 358630, 413927, 617402, 316754, -134755, -221191, 233002, 64961,
- 93416, 200253, 117038, -189515, -287226, 33286, -17180, -309775, -40265, 140660,
- -105227, -245887, -3221, 27917, 2684, 164283,
- },
- {
- 24401856, -35608500, -11285027, 12262132, 8211978, 933082, 5425618, -7327751, -2267743, 778463,
- 8952322, 4258460, 8484171, -7524246, 9554155, 1389959, -624381, 882079, 2834679, -3474092,
- 2044941, -4358318, -2681670, -4037806, 526134, -919123, 2279554, 964757, -1798518, 872415,
- -863288, 3214783, -302258, 2219961, 0, -1290638, -1236951, -2764348, -2230162, 1448478,
- 1355599, -731755, 868657, -2504503, -4799626, -2532420, -109522, 1250909, -782758, -2015950,
- -308701, -389768, -170725, -72478, 140123, 813359, -212601, 2290828, 527744, 654983,
- 607201, -896574, -90194, 1020055, -459025, -63351, -1013075, -710817, -412317, -259846,
- 661425, -183610, 1001264, 932008, -260919, 482110, 106300, 301185, -210990, 134218,
- 107374, -20938, -281320, 135828, 266288, 225486, -336618, 71404, -175557, 104153,
- 96100, 65498, 202937, 40802, -38118, 20401,
- },
- {
- -1117228, -10252624, -2137820, -943819, -42413, 1988033, 1963337, 1597191, 31675, 428960,
- 2051384, 3349538, 4580046, 12513924, 74107512, -5686000, 3362960, -6468221, 3609920, 1904281,
- -3262028, 3737159, -3282966, -4984310, 2132451, 3983045, 3267396, -2940979, -6703907, 3578782,
- -1785096, 3970161, -539018, -748398, -2664490, 1851131, 391916, -4236449, 544924, 3868692,
- -1858647, 6979, 2072322, -654983, 365609, -896574, -571231, -192737, 1390496, -309238,
- -301185, -583042, 883153, 310311, 473520, -940598, -716723, 211527, -525597, -373125,
- 393526, 140123, -103616, 178778, 54224, -692027, -647466, -195421, 99321, -49929,
- -602369, 537, 106837, 1611, -16106, 52076, 192737, 158377, 187368, -12885,
- 133144, -198105, 68183, -108448, -60130, 109522, -149250, 57445, 48855, -78383,
- 141734, 70867, 83752, -68719, 47245, -158914,
- },
- {
- 21772262, 3587908, 7837242, -974421, 750546, 2822331, 1708860, 8740258, -2027761, 5833640,
- 1639604, 6794102, -1672353, -6938520, 42298984, 1340567, 7369090, -5656472, 541703, 242666,
- 2860448, 1480153, 1170916, 1241246, -745177, 1316408, 2963528, -7394323, 1411434, -1636383,
- -3270081, 1628330, -597000, 4533875, 989990, 1444720, -4621385, -1277753, -787053, -234076,
- 3990025, -266288, -49929, -2938831, 1625108, -553514, -839129, 359167, 661962, -258235,
- 830002, 1061931, 980863, 686658, 1708323, -593779, -1675574, 150324, 165893, -971200,
- -733366, -872415, -565862, 21475, 455267, -777926, -166430, -292058, 969589, -415001,
- -120259, -186294, -418759, 85362, -57445, 205622, 557272, -87510, 416075, -388158,
- 30065, -306553, 427886, -323733, -502511, -39728, 188442, -102005, -99321, 5906,
- 134218, 44023, 161061, 124017, -9127, -120796,
- },
- },
- {
- {
- 253403, -22121230, 26970784, 3881040, -2605435, -300648, 793495, 928787, -2887829, -699006,
- -858457, 962073, 3740380, 7291781, -10024991, 3135326, -7929584, -3957812, -4881231, 913754,
- -7719130, -3771518, -790274, 4274566, 9017821, -3222299, -2413235, -4292283, -4571993, -9589588,
- 5009006, -3019899, -1847373, 1677722, -979253, -3477850, -1329829, 346819, 3471944, -1543504,
- 1046898, -303332, -2844342, 1006096, -278099, -835371, 1191853, -648540, 501974, 61740,
- -919660, -159988, 636192, -983548, -299037, -531502, 606664, -252329, -197032, -1783485,
- 351650, 38655, 660888, 32749, -1248225, 542240, -428423, -97174, 814433, 602369,
- 146029, 82141, 130997, -100932, 289910, 283468, 89657, 315143, -186831, -172336,
- 307090, -5906, 281857, -187368, 304406, 172336, 276489, -227096, -201863, 91805,
- -125628, -184147, -13422, -75162, -228707, 58519,
- },
- {
- -11297375, -129168992, 68403256, 3505230, -1319629, -135291, 3299609, 2413235, 496606, -2760590,
- -14496, -6703907, -747324, -4286378, -506806, 716186, -2951180, -4220342, -3182571, -281320,
- -1147830, 6112276, -1595580, 2616709, -2823404, -3196530, 5265630, -1305670, -1120987, -747861,
- -593242, -387621, -2053531, 2503429, -3702262, 1758789, 364535, 4031364, 1560147, 1597191,
- 718333, 1688459, -1564442, 2807835, 3362960, -608275, -1177358, -273267, 1180579, 732829,
- -995359, -1437740, 1522566, -172872, -685584, 579284, 1203128, -466004, -1899986, 287226,
- -657667, 537, 373125, 817118, -157303, -1462436, -137439, 297963, -76773, -980863,
- 216359, -365609, -118112, 2147, -108985, 242129, 495532, -350577, -271657, 40802,
- 539555, -140660, -21475, 175020, 305480, 60130, -99321, -86436, -248571, 128849,
- -403727, 146566, 54761, 115427, -181999, 11274,
- },
- {
- 5999533, 57179436, -55948392, 268972, 1051730, -5535676, -1479079, 1517197, 448824, 1874753,
- -1175210, -5185100, -8671539, 1005559, 2519535, 4772783, -1592359, -2959769, -5512591, -6603512,
- -4452271, -9265318, -2181844, 6060736, -1613834, -321586, -59056, -3363496, -5790153, 2806761,
- 3970161, 4936528, -2901787, 2377265, 1664837, 1638530, -82141, 908922, 5352066, -1604707,
- 1163399, -337692, -1331440, 4024384, -1738388, -1108638, 136365, -835908, -106837, 1455457,
- -276489, -1217623, -1414655, -1072131, 351114, 379568, -1620813, -1096290, -6979, -60130,
- 14496, 227633, 558883, -754841, 287226, 258235, -251792, -43487, 743566, -95563,
- 741956, -2147, 723165, 159451, -566936, -458488, -133681, -175557, -204011, 191126,
- -30065, 85362, -365609, 105227, 365072, -57982, -77309, 100395, 74625, 331786,
- -537, -191126, 164819, -22012, -53687, 115427,
- },
- {
- -1008780, -11202885, 8416525, -2678986, 62814, -255014, -779000, 804770, -1712618, 1174137,
- -2164127, 1304596, 1014686, -1394254, 13962939, 3850975, 1221918, -10339060, -16046535, -2152316,
- -1157494, -10171556, -6495065, -5570036, -3498788, 3745212, 558346, 3375308, -1206349, -1471563,
- 247497, -3080565, -1578937, 879395, -3302293, 2111513, -593242, 2301029, -2917357, -248571,
- 828392, 1135482, -479426, -150861, 286689, 302795, -448824, 439160, 1486059, -344671,
- 1987496, -7516, -1326608, -661962, -1050656, 1239635, -244813, -263604, 68183, 67646,
- 311922, -473520, -220117, 391916, 40802, 488553, -1074, -471373, 24696, -303332,
- -49929, -480499, 8053, -5369, -325344, -426276, -81604, 176631, -15032, -434865,
- -300111, -115427, 233539, 55835, 110595, 236223, -325344, 55835, 44560, 59056,
- 91805, 6442, 89121, 190589, 88584, -28454,
- },
- {
- 41596760, 38851200, -25278030, 9210557, 3135863, 537408, -802085, -1687922, -1990181, 3077881,
- -1460826, -1017370, 2848637, 3925600, 10421738, 1798518, 4896263, 4072703, -8598525, -6894497,
- -3482682, 1675574, -3743064, 490700, 1177358, 1276679, -1811403, 1563368, -2645163, 717260,
- 2887292, -2922188, -3726421, -4046396, -355945, 3394635, -1816771, 1779727, 1881196, -343597,
- 617938, 1611150, -2542084, -601832, 830002, -176631, -919123, -728534, 978179, -938450,
- 1096827, 219580, 1136556, 578210, 236223, 628139, -317291, -135291, -1481764, -158914,
- 340913, -573378, -727460, 851477, -752156, -281857, 564788, -547071, 143345, -450972,
- -163209, 415538, -627602, -600759, 43487, 532576, -285078, 488016, -14496, 103079,
- -188442, 689879, 127238, 341987, -351650, -133144, 85362, -198105, 76773, 54224,
- -145492, -5369, -10737, 4295, -141734, 233539,
- },
- {
- -108448, -5097053, -976568, 1090385, 861678, 347355, 499290, 1444183, 25770, -911070,
- -799938, -1241782, 936303, -4089346, 3941706, -3991098, -464393, -2429341, -2461016, -29721710,
- -927176, 5798206, -6960532, -3042984, 1269700, -6307697, -932008, 3463891, -1343788, -5813238,
- -1034013, 1097901, -1600412, -1156420, 2368675, 1258962, 1629940, 608275, -3222836, -477278,
- 2551211, 236760, -686658, 454730, -793495, -128312, -488016, -1663226, 450435, 1059783,
- -295279, 922344, 1340567, -1335735, -663572, 321049, -367757, 243203, -504659, 1010928,
- 399432, -472983, -68183, -307090, 253940, 267362, 692027, -549219, 287226, 417686,
- -325344, 584652, -372588, 46171, 153008, 200790, -483721, 312996, 45634, 358093,
- -297427, 69793, 113280, -164283, -62277, 27917, -298500, 113280, 336081, -43487,
- -27917, -4832, 163209, 102005, -18254, -316754,
- },
- {
- 27494770, 263698640, 15381888, 11534135, 6713034, -2012729, 290447, -191663, 452582, 161598,
- 4516695, -3409130, -2246268, 816044, 3272765, -5501853, 832687, -2160369, 687732, -1525787,
- 480499, -172336, -1788854, -3405909, -2176475, 629213, -669478, 1549410, 2940979, -2669322,
- 1333587, -2322504, 812286, -2135136, -1828046, -2260764, -2020782, 1565516, -1659468, 149787,
- 1605781, 341450, -603443, -985695, 979789, -635655, 459025, 1503239, 708670, 1720671,
- -222265, -114890, 436476, -1690607, -818191, 389231, -322123, -184147, 137976, -959925,
- 752693, 857920, -378494, -339302, 56908, -819802, 232465, -40265, 418222, -216896,
- 236223, 8053, -63351, 213138, -4832, 115427, 260919, 82678, 266825, -37581,
- 435939, -210990, -435402, 325881, 101469, -70867, -143881, 364535, 227633, -90194,
- 12348, 230854, 176631, 120796, -37044, 228707,
- },
- {
- -1042066, 10919954, -1740536, -425202, 509491, -282931, -1143535, -1028645, -900333, -1228361,
- -1168768, -2033667, 2983929, 4248260, 23602992, 4027069, 12370043, 3042984, 4137127, 1307281,
- 7373385, 2215130, 8220031, -2605435, -12888660, -616328, -5590974, -423591, -4918275, -1350230,
- -3205119, 184147, -2185065, -102005, -514322, -1483374, -1571421, 825707, 574989, 1714766,
- -35970, -1905892, 1479616, 1668595, -629213, 319438, -711354, 413927, -932008, 1458678,
- 415001, 671626, 205622, -1216550, 1012002, -2266669, -607738, -335544, -347355, -898185,
- -113817, 1411434, 1067836, -374199, 429497, 574452, -719407, -396211, 1198296, -957241,
- 83752, 53687, -379568, -171799, 233539, 32749, 219043, -186294, -468151, 356482,
- -125628, -308164, 643708, -369367, -130997, 389768, -235686, -121333, -9664, -69256,
- 193274, -142808, 42413, -43487, -100395, -162135,
- },
- {
- 35606888, -184248192, -10375030, 5145371, 3058554, 308701, 863825, 1329829, -1066763, 847182,
- 2272575, -3741454, -599148, -4037806, -681826, -2752537, -3745212, 2713346, 6084358, -603443,
- -768799, 289373, 3077344, 2823941, -2382633, -1331440, 595390, -1029718, -558346, -4276714,
- 4981625, -2364916, -1493038, -1206349, 1148904, -3446175, 2267206, 64425, -605054, 2933463,
- 3661460, -5569499, 3812320, -330176, 203474, -674847, 614180, -836445, 2517388, -1343251,
- -1194538, -387084, -2089502, 181999, 2611877, -45097, 627065, -884226, 562641, 620086,
- 164283, 476205, 526134, 843961, 169114, 505732, 149787, -5369, 561567, 59056,
- -512712, 372588, -22012, 118648, 331786, 402116, -19327, 700617, -9127, -96637,
- -13959, 169114, -345745, -297427, -137976, 117575, -211527, 274341, 35970, 23085,
- -69793, 305480, -124554, -191126, 52613, -5906,
- },
- {
- -925029, -24735790, 10902238, 3523484, -5330592, -845035, -725313, 1105954, 1494649, -2801393,
- -3619047, -2691871, 67646, -7992934, -2796024, -11030013, 1311576, 3877819, 3980898, 12445741,
- -3451006, 3659312, -349503, -4260608, 1121523, 2116882, -4046396, -2986076, 1042066, -3277597,
- 6094559, -47782, -64961, -1033477, -2910377, 87510, -1254131, -1613297, 270046, -1437203,
- -1056562, 1087164, 1137630, 1274532, -313533, 1471563, -1089848, -1296543, 429497, -2910914,
- 758599, 253940, -1556926, 139586, 324270, -1975148, -1935420, -296890, -1010391, -869194,
- 387621, 1200443, 31139, -170188, 159988, 412317, -451508, 834834, -395674, 82678,
- -236760, 392453, -88584, 265214, 239981, 606127, -234613, -226560, 466004, -136365,
- -149250, 67109, 248571, 427886, -53687, 295279, 80531, 86436, 150324, -168577,
- 90731, -133144, 91805, -31675, 132070, -67109,
- },
- {
- 16645683, -52162916, -26298084, -5212480, -3699041, 6542846, -5539434, -6005975, -5912023, 2386391,
- 3038689, -4426501, -4915590, 1789928, -4762045, -1394254, -10072772, 1698660, 6130529, -3086471,
- 5370857, 1749662, 2127083, -6403796, 4496831, -3008088, 1040993, 512712, -1697586, -2838974,
- 93952, 2469606, 4140349, 1808718, 1232119, 1897839, 1157494, 131533, -2411624, 2202781,
- 1730335, 1970316, -1583769, -806917, -252866, -6442, -235149, 588947, 299037, -2186675,
- -375810, 323733, 522375, 55835, -485331, 519691, -425202, 90194, 328565, 98784,
- 409633, 317828, -43487, -711354, 193810, 82141, -304943, 711354, 4295, -254477,
- -113817, 147103, -8590, 210990, -323733, -342524, 202400, -166967, -532576, 10737,
- -5369, -206695, 158377, -330176, -179852, 217433, 79457, 41339, 291521, -331786,
- -82678, -140660, 167504, 166967, 39192, -114890,
- },
- {
- -1151588, 3242700, -46708, -5270999, -2751464, -1007707, 870268, -744103, -818191, -1475321,
- -365609, -1820529, 11304354, 1461363, -3152506, -3421478, -4914517, 622233, 6380174, -423054,
- -304406, -6618545, 2083059, -6795175, -10904922, 4709432, 666257, 96100, -3469260, -71404,
- 1767379, -3771518, 1600412, 723165, -2854006, 2883534, -568009, 2433099, -792958, -2301566,
- 185757, 2212445, 854162, -300111, -2225867, -221191, 166430, 323196, 2384781, -896574,
- -551903, -9664, 144418, -569620, 143881, 105227, 1874753, 154619, -582505, -300111,
- 415538, -308701, 208843, -905701, -870805, 469225, 249645, -219580, -233002, 66572,
- -358630, -217970, -214212, -148176, 625455, 256624, 31675, -185220, 154619, 106837,
- -84826, 181462, -115427, -365609, -181462, 8590, 186294, 44023, 115964, 83215,
- -51003, -19327, 115964, 25770, -120796, 70330,
- },
- {
- -9626632, -71746888, -16812650, -88047, 4169340, -1110249, 5247377, -10049687, 1615445, -1969243,
- 1635846, 637803, -7873749, -18575196, 8301635, -6674916, -7479149, -1583232, 6317897, -1681480,
- 4313221, -2659122, 2871186, -233002, 1292785, -2029372, -1495186, -1493038, -2993055, 386547,
- -1807108, 3287798, -2122251, 1807108, 1174137, -2507724, 1146756, 10737, -2283312, 130460,
- -81068, -838592, 2000381, 2861522, -1786706, 348429, 1677185, 731218, -1429150, -1023276,
- 1032403, -727997, 992674, 1589138, -331249, 92879, -947577, 1964948, 345208, -1714229,
- -685047, -239444, 232465, 1146756, -10737, 717260, -132607, -470836, -836982, -587874,
- 189515, -834297, 5906, 278636, -241055, 60666, 48318, 384936, -479426, -344671,
- 139050, 279173, -279710, -84289, 206158, 610422, 8590, 287763, 100932, -63351,
- 10737, 31675, 156229, 214212, 6979, 84289,
- },
- {
- 838056, -5982353, -683437, 2017561, -230318, 1229971, 2737505, -1483374, -2389076, -472446,
- 799938, 2800856, -1735704, -44364328, 16131897, -8879308, -5091684, -7281044, 4039417, 7774965,
- 783295, 2376728, -3820910, 2102923, 3929358, -641561, 4633196, -4161823, -7370164, 5223217,
- -1775432, 777389, -3909494, -2078764, 16106, 4905390, 2480881, -715649, 15569, 2287070,
- -869731, -179852, -241592, -1402307, 1560684, -253403, -207769, -583042, 1225676, -194884,
- -427886, -1095217, -234613, 15569, 338229, 193810, -174483, 412854, 135828, -193810,
- 882616, 123480, -176094, 159988, 78920, -640487, -846645, 83215, 12885, -602906,
- -437013, -137439, -70330, 114354, -45097, 57982, 81604, -186294, 326418, 272194,
- 304943, 285615, 207769, -167504, -176631, 27380, -11811, 119185, 354872, -62277,
- 124017, 58519, 169651, -36507, 82141, 30065,
- },
- {
- -17528298, -51153596, -1013075, -4613332, 2563559, -4524211, -5811091, 5977521, -528818, 5576478,
- 333934, 742493, -7413114, -2028298, 44441100, -10293426, -5627481, -8478802, 1158031, -385473,
- -125628, -1771674, -1507534, 783295, 1251983, 2318746, 2593087, -9351218, -629750, -597537,
- -3535295, 2580739, -911607, 1319092, 642635, 3598109, -433255, 1124208, 925565, -980326,
- 2553358, 1835025, 1643362, -2377801, 933082, 774168, 331786, -759136, -689342, -266825,
- 336618, -656056, -675384, -849330, 339302, -810675, -831613, -32749, -208843, -255551,
- 608812, -470836, -1138166, -674310, 339302, -661962, 2684, -346282, 1244467, -79994,
- 424665, 443992, -424665, -117575, -9664, 184684, 341450, -296890, 440771, -225486,
- 57445, -397821, 455803, -39728, -319438, -156229, 119185, -79994, 150324, 78920,
- 136365, -59593, -49392, -54224, -33823, 111669,
- },
- },
- {
- {
- 318364, 45221172, -28611998, 848793, 4017942, -2257005, -140660, 23622, -38118, -1821066,
- -1941325, 10737, 7327751, 4566087, -11970611, -1180042, -330712, -3191161, -10392210, -5844377,
- 1938641, -8296803, -386010, 7007776, 3900367, 3445101, -3857954, -6959995, -1870458, -8393977,
- 4552666, -4533338, -3670050, -2916820, 332860, -1083942, -699543, 2206003, 1595580, 559956,
- -418759, -673236, -304406, -265214, -2013803, 377957, 1206886, 208306, -1981591, 813359,
- -202937, -486405, -15032, -40802, -1580011, 353798, -287226, 963683, -590021, -1068373,
- 843961, -724776, 572841, 99321, -1027034, -25233, 242129, -62277, 410169, 644245,
- 155156, -102542, 120796, 419296, -29528, 111669, 441845, -412854, -93416, -8053,
- 19327, 269509, 45634, -239444, 250182, 56371, 189515, -176631, 149787, 118648,
- -335544, -211527, -176094, -13422, -45097, 41876,
- },
- {
- 14432701, -18698140, -48010220, 7584912, 124017, 2917894, 1573569, -244813, 4603131, -814433,
- 271120, -6646999, -641561, -578210, -6817187, -1607392, 9446244, 2363843, -15559593, 3715684,
- -3068754, 1141924, 3654480, 429497, 196495, -4265440, 2504503, 928250, -1292248, -908386,
- 385473, -411780, -169651, -2570538, 1962800, -511101, 898185, 2608119, 2430415, 296353,
- 696858, 2922725, -287226, 2000918, 2144799, -400506, 220117, -687195, 1158567, -251256,
- -1533840, -81604, 65498, 117575, 651224, -646929, 494995, -790811, -560493, 1611,
- -321586, -17180, -53687, 367757, -358630, -403727, 50466, -404801, -20401, -557809,
- -2147, -649077, -49392, 28991, 165893, 214748, 323733, -175557, -198105, -230854,
- 518080, -132607, 271120, 35433, 129386, 177704, 6979, -54761, -4295, -137439,
- -163746, -171262, -105227, 169651, -28454, 62814,
- },
- {
- -5698885, -49152680, 33502892, 3451543, -4278325, -6203007, -2861522, -470299, 1759863, 2716567,
- -4169340, -988916, -8968965, 2371896, 9128953, -2298344, 396211, 1458141, -7916699, -9305047,
- -5843840, -6692633, -130997, 1369021, 878321, -1755568, -181999, -5978595, 791348, 4172561,
- 2085207, 865973, -50466, 365609, 3570729, 4162360, -3293166, 853088, 4660577, -819265,
- 2177012, -1718524, 1423245, 2353642, -678605, -2667175, 159988, -1385127, 1153736, 1528472,
- -841814, -1485522, -1527935, -1241782, 1078037, 477815, -2591476, -538482, -666794, -502511,
- 650688, 86436, 205085, -739808, -441308, 1081258, -780610, 329639, 520228, 52076,
- 889595, -16643, 27917, 535797, -367220, -678068, 72478, -304406, -410169, 273267,
- 257161, -280247, -82678, 100395, 368293, -74625, 6442, -33286, 248571, 184684,
- 60666, -96100, -19327, -68719, 63888, 31675,
- },
- {
- 1347009, 5449240, -5899675, -1552094, -296353, 73551, -1121523, -532576, 4295, 457414,
- -637266, -223338, 1593433, -2549600, 11574400, 6374269, 2277943, -12154221, -13304735, 1151051,
- -2261837, -7758322, -7094212, -4681515, -4182225, 2522757, 2122788, 1979443, -1327682, -1658931,
- 265214, -4185983, -20401, -854699, -302795, 892279, -818728, 2873333, -2136746, -115427,
- -320512, 939524, -1625645, 809064, 1523103, 41876, -1895691, 687195, 1968169, 505196,
- 1009317, 91805, -1219234, -352724, -602369, 130460, 147103, -335007, -606127, 1082869,
- 57445, 99321, 49929, 35433, 181462, 25770, 498216, -268972, -187905, -246424,
- 100932, -780073, 350577, 5906, -418759, -62814, -287226, -3758, -137976, -143345,
- -321049, -240518, 404801, 39192, 209917, -3758, -65498, 118112, -191663, 149250,
- -25770, 55298, 63351, 45634, 87510, -41339,
- },
- {
- -32203664, 109582336, -6657200, 6067715, 7064148, -816581, 703301, -1694902, -2823941, 5150203,
- -3549791, -1851668, 1179505, 3602941, 15635828, -158914, -3758, 4345970, -2465311, -11635066,
- 570157, -2304787, -1705102, 66035, 5350993, -3768297, 355945, -3998615, 5808944, -594853,
- 886374, -474594, -4246112, -2679523, -806380, 466541, 9451612, -4199405, 1638530, -813896,
- 1972464, 1008244, -2374043, -128312, -331786, -624918, -2070174, 157840, -723702, -306553,
- 990527, 625992, 1025960, 296353, 695248, 139586, -69793, -1547799, -382252, 324270,
- -506269, 17180, -839666, -156229, 359167, -614717, 411243, -48318, -29528, -570694,
- -554051, 324270, -242129, -308164, -115427, 207769, 375273, 446140, -248034, 177167,
- -112743, 290984, 321586, 123480, -118112, -127775, -119185, 133144, -99858, 94489,
- -121870, 159988, -110595, 175020, -233002, 178778,
- },
- {
- 125628, -4381941, -3754338, 1916092, 1115618, 256087, 254477, 495532, -950798, 790811,
- -1670205, -362388, -2082522, -2608656, 8681740, -1203665, -1067836, -5823976, -2629057, -27222576,
- -3277060, 5396627, -2139431, -8221105, 4339528, -7350300, -3568581, 2956011, -3202972, 1576790,
- -3116536, -2055142, 448287, -1025423, 3615826, -116501, 525060, 350040, -1266479, 693100,
- 1503775, -1740536, 497142, -651224, -694711, -114354, 255551, -889058, -728534, 585189,
- 608275, 1302986, 481036, -750546, 340913, -1225676, 435402, 150861, -250719, 254477,
- 365609, -564251, -471910, 777389, -352187, 833761, 19327, 330176, 253403, 390842,
- -154619, 291521, -240518, -18254, 52076, 61203, -670015, -57445, 464393, 20401,
- -253940, 148713, 256624, -154619, -266825, -117575, 105764, -101469, 383863, -194884,
- 207232, -52613, 123480, 129923, -108448, -185757,
- },
- {
- -4307852, 344780096, -11269994, 17569100, 2172717, -1230508, 55298, -464393, -2405182, 3656091,
- 4266513, 311922, -3338263, 4832, 3514357, -8025147, 667331, -508954, -1360968, 212601,
- 758599, 781147, -1879585, -3037616, -2026688, -1374390, -2036888, 2093260, 1599875, 142808,
- 2387465, -1925219, -1337882, -3646964, -1899449, -2270964, -2206540, 1884417, -518617, 235149,
- -141197, 1043677, 69256, -196495, 1248225, -2849174, 2193118, 208843, 1801739, 828929,
- -1369558, 1301375, -463320, 199179, -1034013, 530965, -437013, -522375, 660888, -785979,
- 534187, 382789, -195958, -146566, -139050, -838056, 133144, -88047, 551366, -228170,
- -221191, 433255, 9127, -83215, 349503, 71941, 135828, 319438, -111669, 76236,
- 490700, -246424, -338229, -37581, 96637, 35433, -4832, 97174, 213675, 216359,
- -89121, 297963, 127775, 170725, 75699, -15032,
- },
- {
- 565862, -7046968, 9045738, 707596, 556198, -292595, -1042603, -995359, -1531156, -281857,
- -710817, 514322, 2095944, 2513630, 31526134, 11556146, 3039763, 2445984, 7220377, -6776922,
- 8044474, 11642046, 128849, 2640868, -10799158, -673236, -1774895, -3303904, -1929514, -6179384,
- 935766, -1258962, -4177393, 1893544, -63888, -1490354, -2739116, -122943, 1848447, 877784,
- 762894, -898722, 671626, 842887, 452045, 266825, -137976, 6442, -472983, 759136,
- 767189, -503048, 1497870, -270046, -506806, -936840, -1540820, 213138, -474594, -779537,
- 1240709, 201327, 670552, -454193, 97711, 371515, -69256, 182536, -188442, 459025,
- -117575, -896038, 16643, -104690, 68719, 178241, 352187, -629750, -136365, 61203,
- -515396, 230854, -11811, 102005, -49392, 83215, 79994, -148713, -259846, -68183,
- 181462, -75162, -91268, -26844, -147103, -207769,
- },
- {
- -40492952, -130419904, 22989886, 12023761, -2024540, 590558, 7516, 1040456, 296353, -539018,
- 416612, 2149094, 727460, -2703682, -5941014, -1502165, 2024003, -2069637, 2762201, 686121,
- -980326, -502511, 3959423, 303869, -666257, -1467805, -263067, -1053341, -1437740, -1629403,
- 2360085, -454193, -3452617, 594316, -1032940, 1500554, 74088, 168041, -34360, 2515240,
- 86973, -1149978, 1138703, 905701, -986769, -151934, 49929, 26307, 501437, -54224,
- -640487, -1349694, -976568, 135828, 1855963, 176094, 191126, 109522, 979253, 194347,
- 538482, -147103, 705448, 605054, 372588, 738198, -360240, -15032, 322123, 132607,
- 13959, 70330, 103079, 68719, 261456, -175557, 525597, 512175, -70330, 22012,
- -3221, 132070, -433255, -119185, -134755, 105227, 113817, -76236, -11274, 22549,
- -11811, 102542, -20401, -113817, -64425, 56371,
- },
- {
- 1378148, -2185602, -7522099, -576063, -413391, -316754, -6375879, 3170223, 1416802, -2007360,
- -5813775, -2713883, 545998, -8940511, -5890011, -5668820, 6120866, -812286, 4092567, 11142756,
- 1821603, -1293859, 4822175, -6145025, 754841, -2345589, -285615, -3382824, 3762391, -232465,
- -724239, 1421097, 2044404, -1686312, -2852932, 732829, -595927, -3057480, -368830, -681826,
- -1144609, 109522, 799401, 1827509, 1260036, 155156, -743566, -943282, 165356, -1835025,
- -488553, 62814, -927176, 213138, -563714, -772557, -1740536, -928250, -872952, -68719,
- 328565, 544387, 561567, -527207, 737661, 249645, -268972, 184147, -453656, 409096,
- -297963, 1074, 379031, 341450, 358630, 383863, 69793, -192737, 310311, 534723,
- -253940, -148176, 301185, 205622, 139586, -87510, 205622, 212064, 172872, -78383,
- 21475, -106300, -54224, 115427, -42413, 23085,
- },
- {
- -15126338, -72033048, 18456548, -1056025, -3459059, -5873905, -1517197, 906775, -6517076, 2399813,
- 5977521, -5954436, -2646237, 785979, -8330089, 1974074, -6980933, 1847910, 3113851, -1864553,
- 4177393, 1229971, 352187, -2182380, -1723893, 1204738, -793495, 3515431, -461709, -3107946,
- -2920578, -910533, 7661148, 3873524, -320512, 1755031, 3065533, 220654, -2243047, 2054605,
- 1336272, -453656, -966368, -86973, -1146756, -13959, 322123, -316217, 626528, -1805497,
- -690953, 331786, 925565, -583042, 359167, -116501, 1010391, -888521, 801548, -288300,
- 366146, 501437, -204011, 61740, -477815, 215285, -196495, 561030, 69256, -287226,
- -184684, 89657, 95563, 190052, -357019, -178241, -224949, -118112, -55298, -322123,
- 91268, -306553, -100395, -148713, 106837, 16643, 104690, 201863, -81604, -149250,
- -192200, 71941, 166430, 69793, 8053, -88047,
- },
- {
- 979253, 10808285, -11221676, -4188130, 144955, -925029, -404801, 1548336, -2194728, -724776,
- -709743, -3540664, -2960843, 23500450, -2695092, 2115808, -5634997, -804770, 2215666, 5719823,
- -10837813, 2767033, -1068373, -5233955, -4740570, -2908230, 5250061, -3986804, -24696, -2413235,
- 777389, -1588601, 3109020, -401579, -417686, 730144, -536871, 751619, 431644, -2260764,
- -487479, 1274532, 1224066, 224949, -1889249, -385473, -467078, 1735704, 1737851, -279173,
- -680215, 405338, -69256, -1255741, 238908, 389231, 1211718, 909996, 720481, 67109,
- 391916, -1161789, -28991, -450435, -708133, 145492, 461172, -174483, 28991, -316217,
- 33823, -231928, -613643, 83752, 379031, -15032, 156766, -212601, 122943, 121333,
- -8053, -162135, -108985, -157303, 13422, -7516, 58519, 147640, 174483, 65498,
- -41876, 14496, 122407, -99321, 17717, -51003,
- },
- {
- -3138011, -79870824, -11457362, -8468065, 10299868, -3048353, -4759361, -4058744, 361314, 41339,
- -5440650, 3600793, -6998113, -20341502, 6851010, -7103339, -1257889, -1814087, 2343979, -122943,
- -477278, 1950452, 3236795, 1771674, -850940, -3101503, -2609193, -1217086, -1816771, -860067,
- 1086627, -2684, -2784213, 510564, 1839857, -2942053, 2884071, -384400, -1311576, -1423782,
- 330712, 2363306, 1021665, 1379221, 656593, 1787243, 1368484, -754304, -136365, 11811,
- 538482, -1019518, -257698, 1246077, -88584, -354872, -102005, 1297080, -281320, -1420024,
- -1299228, 494995, 165893, 973347, 269509, 999117, -346282, -543313, -755377, -435402,
- -7516, -282931, -616328, -329639, 318364, -88584, -169651, 521302, -634045, -171262,
- 26844, 104690, -292595, 92342, 123480, 387621, 347355, 236223, 271120, -6979,
- -51540, -15569, 96100, 91268, 74088, 2684,
- },
- {
- -420907, -1261647, -781147, 69256, -475131, 428960, 1763621, -1424855, -2493766, 13422,
- -169651, 913754, -2355790, 4937602, -43394740, -13912473, -4047470, -1889786, -451508, 8004746,
- 3266323, -2288144, -3013457, 5641440, -721555, -139586, -801011, -1377074, -1490891, 1468879,
- -89121, -4095251, -938987, -2884071, 205622, 6669011, 891206, -383863, 1343251, -1336272,
- 2656437, 389231, -2426120, 503585, 618475, -1388885, 506806, -642098, 2386928, -459562,
- -1227287, -806917, -432181, 587337, -1069984, 1296543, -41876, -264141, 611496, -94489,
- 328028, 6442, 254477, -666257, 403190, -592169, -678068, 183073, 425739, -537945,
- -719944, -256624, 191663, -388695, 76236, 36507, 125091, -51003, 282931, 347355,
- 173409, 377957, -79457, 59056, -225486, -125091, 234613, 93416, 343597, -28454,
- 85362, 111669, 70867, 28454, 28991, 8053,
- },
- {
- 7876433, -77073728, -9789304, -6402723, 3397856, -3218004, -7684770, 2694555, 1589138, 5414880,
- 1804960, -5728950, -1438814, 17262010, 20190104, -9036074, -9836549, -7104950, 326418, -859530,
- 1146219, -4413616, -2397666, 290447, -743566, 3635690, 571231, -2222109, -7479686, 2207076,
- -1377611, 1592896, 627065, -2538863, 2858301, 219043, 2128693, 2209761, -911607, 608275,
- 726386, 3440269, 46708, -590021, 70867, -182536, 414464, 814433, -1506460, -296890,
- -217970, 606127, -1029182, -1325534, 685047, -759672, 79457, -1050656, -549756, 797790,
- -66572, -77309, -548682, -491237, -339839, -812286, 713501, 240518, 62277, 393526,
- 316217, 61203, 270583, -418222, -69793, 356482, 27380, 137439, 59056, -5369,
- -345208, -18254, 15032, 195421, -160524, -201863, -59056, -137976, 148713, 104153,
- 57445, 30602, 26307, -186831, -112206, 135291,
- },
- },
- {
- {
- -1568737, 70054672, -12424267, -7655779, 906238, -337155, 387621, 321586, -30602, 7516,
- -227096, -3990562, 2626373, -4039417, -15695421, 1440425, 4748623, 3541738, -6580964, -12259447,
- 1380295, -2739116, 1326071, 3277597, -293132, -174483, -3136937, 347355, 3310346, -5191005,
- 3812857, -611496, -921807, -4951561, 973884, -113817, 497679, -293132, -2137820, 1855963,
- -605054, -1771137, 140123, 208306, -1389959, -289910, -380641, 393526, -994822, 915902,
- 12348, -508954, -271120, 515396, -1041530, 286152, -561567, -112206, -182536, 728534,
- 870268, -1180579, 366146, 221728, -416075, 24159, 202400, 297427, 399969, 66035,
- -285078, -19864, 126702, 355945, -93952, -127238, 288837, 41339, 37044, -247497,
- -173946, 177704, -16106, -278636, -29528, -73014, 196495, -77309, 248034, 97174,
- -77846, -25233, -181999, 24159, 95026, 105764,
- },
- {
- -16989816, 32148368, 15684147, 1365800, -856309, 3121904, -1722282, -3153580, 3597035, -200790,
- 5735392, 3540664, 1449015, -1547262, -6328098, -2216203, 7304666, 2732136, -11999065, 6904697,
- -1515050, -1620813, 536871, 1015760, 3748970, -2958696, -680215, 321049, 34897, 1038308,
- 360240, 221728, 1685775, -1736241, 3907883, -1080184, 169651, 1058710, 999117, -193274,
- 30602, 740345, -568009, 1781338, 357556, -2377801, -428423, -1122597, 1222455, -234076,
- -440234, 1950989, 522375, -5369, 565325, -1141388, -52613, -860604, 313533, 672699,
- 170725, -342524, -484258, 166967, -86973, 238371, 153545, -561030, 224949, -248034,
- 318901, -355945, -26307, -98784, 33823, 146566, 416612, 36507, -51540, 23085,
- 311385, -273267, 275952, 8053, 87510, -133144, 193274, 132607, 238908, -42950,
- -140123, -84289, 6442, 38118, -64961, 111669,
- },
- {
- 6535867, -122060288, -18123152, 16462073, -1128503, -1476395, -680752, -1483911, 94489, -310311,
- -4400194, 4634270, -584116, 5759551, 6176163, -644245, 4137127, 4546760, 601295, 342524,
- -804233, -3260417, 175557, -1452773, 180389, -637266, 3158412, -1526861, 4885526, 2520609,
- -411780, -1612223, -1231582, -2249489, -414464, 1281511, -2264522, -971200, 1020055, -571231,
- 3492882, -799401, 246424, 744640, 286152, -708133, 1089311, -1483911, 1101659, 777389,
- -655519, -160524, 896574, -982474, -756451, 118112, -1385127, 241592, 234076, -171262,
- -281320, 70330, 471910, -185757, -155693, 1086627, -691490, 115964, -47782, -587874,
- 454730, 340376, 172336, 412854, -202400, -177704, 435402, -1611, -355409, 298500,
- 372052, -286152, 139050, 27380, -72478, -233539, 120796, -83215, 192737, 51003,
- -54224, -105764, -18254, -166967, 19327, -9664,
- },
- {
- -1635309, 12575664, 3247532, 440234, 460098, 399432, -555125, -120259, 21475, -537408,
- -1450625, 1009854, 3604551, -9155797, 2004139, 3527242, 3683471, -1703491, -3374771, 1362578,
- -1973538, -363462, 437550, -566936, -3234110, -1229434, -653909, 1503775, 99321, -1609539,
- 2679523, -1197222, -261993, -1360431, 1326608, 364535, -1825898, 2710661, -721555, 497679,
- 409096, 953483, -1386738, 711891, 1693828, 596464, -1505923, 170725, 937914, -322123,
- -769336, -55835, 630286, 723165, 70330, -206695, -365072, 491237, -512175, 297427,
- -95563, -126702, -221191, 358093, -119722, -764504, 281320, 386547, -60666, -509491,
- 112743, -425202, 360777, -61740, -10737, 323196, -70867, 121333, -109522, 235686,
- -43487, -267899, 170725, -114354, 139050, -60666, 61740, 122407, -248034, 18790,
- -106300, 46171, -47245, -74088, -5906, -31675,
- },
- {
- 18444200, 119291640, -44928044, 304943, -2225330, -134218, 547608, -480499, -2661806, 1457068,
- -412854, -1457605, -2655901, 3714073, 14650670, -2927557, 451508, -3819300, -6601902, -4051765,
- 227633, -1673964, 1777043, -3375308, 2289755, -5467494, 1980517, -3084860, 3821447, -971736,
- 908386, 702764, 729071, -489626, -1527935, -2448131, 7177964, -2738042, 1897302, -2217814,
- 1138703, -47782, -2161979, 10201, 275415, -416612, -2356863, 406411, 477278, 1239098,
- 635118, -139586, 537408, -329102, 469762, 639413, -172336, -1383516, 268435, 704375,
- -1079647, -112206, -293132, 44560, 508954, -361314, 246961, 105227, 418759, -133681,
- -510564, -9664, -41339, 200253, -49392, -42950, 308701, -6979, -191663, 418222,
- -16643, -18254, 84826, -136902, -84826, 57445, 31675, 279710, -134755, 212064,
- -172872, 149250, -80531, 158914, -198105, 118648,
- },
- {
- 93952, 346819, -2009508, -635118, -184147, -154082, 561567, -244813, -1702418, 1418413,
- -1577327, 462783, -2603824, -6097243, 9104794, 4241817, 1335198, -3987877, 4261145, -24998320,
- -9158481, 1115081, -2786897, -10833518, 5141613, -1360431, -8266739, 317291, 3230352, 4438849,
- -2086817, -377420, 4544613, -1340030, 1051730, -643708, -1197759, -218506, 958851, 1606318,
- 1018981, -1722819, 1414118, 505196, -296353, -421981, 598074, -163746, -814970, 510027,
- 55835, 161061, -142808, -348966, 673236, -1456531, 60666, 17717, -39728, 637266,
- 192200, -12885, 108985, 482647, -394063, 706522, -311922, 99321, 102005, 110595,
- -447213, -122407, -357556, 9664, 134218, 710280, -221728, -334471, 45634, -265214,
- -54224, -25770, 106837, 8053, -93952, 59593, 346819, -176094, 266288, -188442,
- 198642, 57982, 246961, 18790, -173946, -120796,
- },
- {
- -17987324, 338925536, 401579, 12380243, -219043, -535260, -495532, -85362, -1581085, 2749316,
- 1647120, -29528, -2682207, 89657, 1784559, -9137543, 1850057, -1612223, -3357591, 815507,
- 1420024, 1952063, -1512902, -2433636, 1041530, -808528, -3079492, 634581, 798864, 989990,
- 1302986, -540092, 1396938, -3497177, -2536715, -756451, -1024887, 1110249, -938450, -882079,
- -463320, 1460289, -1019518, -772557, 1382443, -2019708, 2361695, 207769, -136365, -1473174,
- -1421097, 151934, 62814, 1215476, 479963, 1732482, -1024350, -950798, 607201, -709743,
- 588947, 260919, -446140, 168041, 459562, -27380, 79457, -540092, 549756, -317291,
- -327491, 443992, -149250, -467078, 293132, 115427, 140660, 301721, 68719, 88047,
- 39192, -129923, -37581, -162672, -31675, 197569, 134755, -53687, 47245, 100932,
- -205622, 62814, -41876, 68183, 1611, 13959,
- },
- {
- 728534, -9173513, 4246112, 115427, 702227, -168041, -548682, -206695, 38118, -25770,
- -1069447, 864899, 1954210, -952409, 22335978, 2259690, -6114960, -69256, 5471789, -5024575,
- 4991826, 7114077, -3443490, 783295, -3666828, 4760435, 1748052, 3379066, 1946694, -5738077,
- 2838437, 450972, -2703682, 2235531, 768799, -31675, -1908039, 369367, 864899, -586263,
- 222801, -133144, -564251, -733366, -489626, -639413, 689879, -439697, 898185, 1468879,
- 223875, -425202, 1253057, 636729, 370441, 544924, -118112, -88047, -634045, -485868,
- 1255204, -185757, 22549, -444529, -654983, -59593, 358093, 192737, -591632, 434329,
- -301721, -736050, 60130, -102005, -99858, -362388, 192737, -327491, -47782, 164819,
- -522375, 329639, -143881, 56371, 203474, 61203, -59056, -13422, 54224, -60130,
- 30602, -61740, -89657, -24159, -82141, -136365,
- },
- {
- 38427072, -94828048, -31612570, 16940424, -755914, -932008, -3689377, -719407, 1797981, -234076,
- -139586, 4085051, 1865090, 1410360, -2926483, 1647657, 3434900, -4993437, -2463164, -588947,
- 660351, -711891, 1637456, -1902134, -1394254, -733366, 147640, -1100585, 628139, 208306,
- 805843, 1310502, -188979, 1447941, -813359, 2500745, -748935, 809601, 456340, 898185,
- -1996086, -1945083, -509491, -45634, -1213328, 697932, 441845, -728534, -602369, 534187,
- 154082, -1113470, -217970, -156766, 681826, -478352, -27917, -62814, -172336, -738198,
- 71941, -432718, -58519, -262530, -326954, 355409, -81068, -132070, 164283, 156766,
- -163746, -203474, -196495, -367757, 64961, -333934, 476741, 61203, -280784, -52613,
- 8053, 89657, -335007, 44023, -113817, 168577, 207769, -155156, -23622, 118648,
- -62277, 54761, 71404, 85362, -75162, -64425,
- },
- {
- -1712618, 16100759, 8221105, -5622112, 968515, 2215130, -9780714, -278636, 98784, -254477,
- -1676648, -2379412, 2591476, -476205, -3301219, -3775276, 10147397, 2124935, 3867081, 2284923,
- -1761474, 75162, 4402879, -6271189, 2466385, -24159, 2030446, -4141959, 2484639, 595927,
- -2549063, -115427, 2327336, -394063, -514322, 674847, 2131378, 396211, 852551, 710817,
- 985695, 2046015, 1018444, 341450, 235149, -221191, 382789, -580894, 1067836, -583042,
- -802085, 271120, 78920, 1187559, -242666, 952946, -63351, 112206, 116501, 736050,
- 322123, -92879, 248571, -179852, 259309, -329639, -287763, 164819, -399969, 148176,
- -118112, 27917, -224412, 146566, -10201, 32212, 312459, -126702, -85362, 380105,
- -47245, -202937, 236223, 34360, -125628, -295816, -32212, 537, 21475, 82678,
- 24696, -92342, -63888, 141734, -45634, -25770,
- },
- {
- 14457934, -80088792, -8420820, 9666361, -715112, -1202054, 263604, 1264868, -3977677, 896038,
- 4773856, -1147293, 900869, 1063004, -5456219, 2279554, -614717, 4934918, -858993, -2240362,
- 2220498, 2040110, 1501091, 1313723, -368293, 2185602, -1223529, 893890, -924492, -471373,
- -2132988, -4572530, 4304631, 1619740, -1244467, 1532230, 2622078, 799938, -1548336, 1285806,
- 58519, -1141924, -285078, 816581, -210453, -328028, -471373, -1534914, -243203, -799938,
- -56908, -66572, 689879, -1010928, 306016, -175557, 1461900, -153545, 477278, -479963,
- 16643, 177704, 101469, 605054, -350577, 164283, -143881, 338766, 69793, -380105,
- -125628, -32749, -60130, 130997, 15569, 314069, -206695, -110595, 143345, -186294,
- 233539, -57982, -136902, -91805, 63351, 32212, 10201, 133144, -191126, 17180,
- -73014, -50466, -47245, -10201, 64961, 12348,
- },
- {
- -781684, 14994268, -1139240, -446677, 1393180, 374199, 748398, 2014877, -761283, -454193,
- 409633, -1095217, -2719251, 27520002, 1722282, 4376035, -3626026, 2315524, 219580, 42413,
- -5600101, 12728136, 1845225, -799938, -5583995, -2610266, 6768332, -4066797, 4612258, 2178085,
- 1832877, 107911, -485331, -1492501, -497142, -1335735, -1037772, 437550, 993211, 1549946,
- -137976, -1575716, 94489, 444529, -772557, 670552, -147640, 1894618, 852551, 256624,
- 103079, 154619, 329639, -375273, 750546, 157303, 126165, 302258, 412854, -566936,
- 430570, -777389, 84289, -140660, -653372, -23085, -79994, -133681, -224949, -247497,
- 634581, 161598, -481573, 1611, 136365, -136902, 77846, -265214, -65498, -39728,
- 126702, -291521, -75699, 139050, 204548, 134218, -53687, -9664, 16643, 537,
- -26307, -34360, -7516, -210990, 10737, -142271,
- },
- {
- 10095858, -61251604, -3047816, -7119445, 6380174, -2416993, -2041183, -207232, 1449552, 2818572,
- -1380832, 3906810, 1924145, -9157944, 6435472, -4035122, 2578591, -4014184, -2850785, 1934346,
- 144418, -240518, 185757, 1529545, -299574, -261993, 607201, -364535, -775242, -1486059,
- 2659659, -61740, -4094178, -430570, 1851668, -1595580, 1357210, -870805, 1664837, -346282,
- 1081795, 1180579, -1153199, -1352915, 252329, 2681133, 580894, -2262374, 119185, -687732,
- 108448, 501437, -1021665, 105764, -450435, -311385, 319438, 584116, -93952, -597000,
- -1146219, 552977, -332323, 616328, -324270, 186294, 163209, -157303, -455267, -37044,
- -43487, 22549, -375810, -190052, 435402, 96100, -457414, 280784, -315143, 49392,
- -266288, -30065, -357556, 142271, 86973, 90731, 11811, -57982, 85362, -137976,
- -49929, 76773, 179315, -93952, 32749, 36507,
- },
- {
- 159988, -1964948, -3563749, -1418950, -284542, -1133335, 261993, -789737, -1695975, -33823,
- -2044941, 146029, -3715684, 15681462, -19787988, -1112933, -1056562, 1483911, -1643899, 1167157,
- 1219234, -1049046, -2056216, 5641440, -2602750, -1703491, -3714610, 3062849, 2687039, -1303523,
- -1323387, -2771328, 2263985, -1663226, -3053722, 2616172, 85899, 904628, 1633698, -1490891,
- 1831804, -484794, -1716376, 1236414, 707059, -348429, 1886564, -1838783, 723165, -1098975,
- -502511, -877784, -871878, 386010, -1176284, 689879, -150861, 171799, -120796, -247497,
- 432181, -797790, 346819, -161061, 374736, -73551, 37581, 179852, 466004, -217433,
- -594316, -89657, 580357, -435402, -216359, -74625, 44560, 212601, 156766, -43487,
- -179315, 39728, -240518, 56908, -86973, 162135, 228170, -186294, 28454, -25770,
- 86973, 29528, -90731, 49392, 45634, -48855,
- },
- {
- 1996086, -71708240, 1167694, -6324876, 5705327, 7199439, -1481227, 1217623, -535260, 793495,
- 2319819, -1475321, 3708168, -8551280, -8589935, 4352950, 3608310, 404264, -1392106, -2327336,
- 1220308, -1588601, -562104, -1142998, -2719788, 3277597, 154619, 2799782, -3169149, 2185602,
- -527207, 695785, 351114, -3031173, 1056562, -2233920, -518617, 173946, -2078227, 237297,
- -734439, 2148021, -754841, -1137630, 777389, 725313, 912144, 1505386, -130997, 161061,
- 317828, 1357747, -162135, -413391, 710817, -301721, 519691, 49392, 730681, 333397,
- -1190780, -273804, -1074, 226560, 306016, -324270, 572304, -41876, -486405, 198105,
- -253403, -351650, 363998, 3758, 118648, 76236, -50466, 281857, 19327, -52076,
- -175020, 197569, -236760, 70330, -30602, -147640, 16643, 95026, 42413, 87510,
- 76773, 64961, 74625, -169651, -1074, 97174,
- },
- },
- {
- {
- 1403917, 37110664, 10589242, -4982162, -1696512, 1072131, 460098, 1492501, -59056, -1861332,
- -48318, -1622961, -1991254, -3741454, -7880728, -1059783, 1952600, 2552284, -2752537, -5737003,
- -2306934, -2602213, 1265405, 646393, 2312303, -5231270, -526134, 2006287, 2809982, -3968550,
- 2384781, 2397666, -775778, -1808181, -1388885, -154619, -157840, -3260417, -245350, 858993,
- -273804, -1417876, 5906, 157303, -1571958, -429497, -639950, 701690, -112743, -23085,
- 775778, -252329, -201327, -15569, 69256, -522375, -162135, -525060, -251256, 815507,
- -91268, -19864, 354335, -200253, 3758, 205085, 226560, 479963, 39728, 71404,
- -292595, 18254, 196495, 38655, -10737, -15569, 122943, 337155, 105764, -326418,
- -118112, 147103, 62277, -161061, 30065, -114890, 31675, 92342, 141734, 23622,
- 67109, -73014, -40802, 32212, 30065, -9127,
- },
- {
- 14842333, 23286238, -12345883, 5962489, -1513439, 803696, -839129, -1860258, -689879, 3614215,
- 1233193, 5422396, 1103270, -1660005, -2739116, -2425583, 329102, -1807644, 110059, 1530082,
- -1074, -287763, -779000, 2799782, 1011465, -515396, -307627, -563178, -878858, 1530619,
- 34360, 1169305, 555661, 1229971, 1144609, -103079, 408022, 1333587, -847182, 205622,
- 244813, -466004, -220117, 1018444, -64425, -1910187, -712965, 226023, -59056, -270046,
- 814433, 1146219, 351650, 536334, 245350, -615254, -596464, -166967, 294742, 158914,
- 452582, 64961, -494458, -246961, -5369, 31675, 100932, 56371, 96100, 127775,
- -85899, 6979, -28991, -53150, -260382, 237297, 300648, 133681, 132070, 46708,
- 17717, -30602, 174483, 73551, 74088, -164283, 42950, 135291, 175020, 103079,
- -130997, -38655, 5369, -36507, 18254, 38118,
- },
- {
- -6492917, -125503776, -5133023, 8125542, 11622718, 1169305, -86436, -1352915, -680752, -2858838,
- -2123861, 1608465, 3081639, 5093831, 1319629, 4886062, 1042066, 1110786, 4108136, 2727304,
- -2965675, 436476, 598074, -2199023, -134755, 207769, 3694209, 2292976, 1554241, -697932,
- 537, -1600412, -1083406, -2122788, -213675, -763430, 897648, -775242, -1021129, 252329,
- 2194728, 553514, -82141, 449361, 441308, 143345, -94489, 697932, 719944, -142808,
- -607738, -100395, 683437, 8590, -974421, -274878, 42413, 387084, -399969, 14496,
- -777926, 465467, 62814, 494458, 312996, 274878, -231391, -62277, -282394, 58519,
- 222801, 204011, 309238, 176094, 83752, -64961, 67109, 45634, 47782, 17180,
- 135291, -1611, 210453, -46171, -283468, -97711, -22549, -49929, 104690, 4832,
- -59593, 16106, -60130, -23622, -45097, -20938,
- },
- {
- 1349694, 9603010, 1471026, 1424319, 486405, 63351, 399432, -375810, -391916, 129923,
- -1037772, -729608, 1739462, -3306588, -1104880, -2665564, 4680441, -272730, -4080756, 2362769,
- -1840930, 1446330, 1955821, -2323041, 985158, -2806761, -652298, 448824, -611496, -751082,
- 760746, 518080, -117575, -221728, 319438, -309775, 54761, 399432, 832150, 253940,
- 434865, 392453, 646929, 79457, 1396938, 463856, -607738, -340913, -126702, 372052,
- -1173063, -236223, 1311039, 182536, 329102, 39728, -241592, -53150, -83752, 92342,
- -478352, -175557, -183073, 138513, -50466, -336618, -62277, 410706, -51003, -213675,
- -353261, -103616, 60666, -219043, 255014, 201327, 117575, 28991, -13422, 152471,
- -62277, -70330, 3221, -23085, 69256, -15569, 36507, -11811, -78920, -46708,
- -41876, -4295, 11274, -34360, -53150, 89121,
- },
- {
- -5253282, 94073744, 3556770, -7298223, 161061, -183073, 388695, 518617, -1494649, -226560,
- 1854352, -1759326, -2173254, 1582696, 8672613, 2289218, -4978404, -6058052, -847182, -2121714,
- -146566, -157840, 472983, -1517197, -1672890, -2856690, 632434, 983548, -571768, 588411,
- 661425, -638340, 1524177, -459025, -418222, -1948305, 972273, 1241246, 247497, -1048509,
- -519154, -693100, -498216, -1234266, 1299765, -155693, -1024350, -360777, 6442, 1076963,
- 1137630, 543850, -159451, 259309, 405874, 563178, -496606, -855235, 201863, 396748,
- -712428, -221191, -128849, 143881, 159988, 346282, -406411, 177167, 363998, -48855,
- -314069, -217433, 48318, 78383, 33823, -13422, 206695, -48855, 13959, 235149,
- 128849, -4832, -48318, -165893, 47245, 13959, 105227, 92342, -139586, 158377,
- -76236, 120796, -53687, 34360, -102542, 31139,
- },
- {
- 176094, 1187022, -834834, -1020592, 149250, -217433, 410706, -226023, -731755, -254477,
- -373662, -1010928, -2332704, -3736085, 3716221, 3058554, 5523328, -4395899, -287763, -23507966,
- -1006096, -3390877, -919123, -7809861, 162672, 1275068, -3180960, -2760053, 2644089, 1678259,
- -1174674, 1948305, 1063541, -2684, 239444, -389768, -541166, 798327, 1017907, 869194,
- 119185, -55835, 412854, 376347, 170725, 6442, -278099, 432718, 175020, 221191,
- -477278, -224949, -243203, -431644, 340913, -877247, 121333, -192737, 51003, 522375,
- 373662, 12348, -20938, 539018, 34897, -30065, -156229, 171262, -51003, -355409,
- -242666, -13422, -237834, 31139, 38118, 497679, 164819, -50466, -392453, -98784,
- -13959, 32212, 16106, -67646, 53150, 56908, 149787, 19864, 127238, 49929,
- -39192, 130997, 114354, 14496, -29528, -8053,
- },
- {
- 31036508, 234309264, 27545772, 7573638, 2987150, 63351, -448287, -322659, 646393, 577136,
- 854162, -730681, -2102387, -1633161, 752156, -1715839, -2601677, -895501, -1672890, -671089,
- 575526, 86436, -441308, -441845, -368293, -41876, -767725, -115964, 23085, 63888,
- 1225676, -1174137, 555125, -470836, -2742874, 478889, -77846, -278636, -1411434, -1132798,
- 26307, 230318, 576599, -1266479, -668404, 1326071, 660351, -751082, -122407, -1174674,
- -656593, -625455, -102005, 1147293, 685047, 485331, 335544, -666257, -100932, 239981,
- 273267, 0, -424665, 223875, 190589, 386010, 187368, -379031, 105764, -2684,
- -168041, 56908, -102542, -108448, 171262, 179852, 140660, 52076, 146029, 22012,
- 69256, -22549, -12348, -81068, -83215, 235686, 46708, 17180, -16106, -53150,
- -18254, -35433, -102542, 28991, 30602, 34897,
- },
- {
- -528818, 1207423, -3685619, 1983201, 682900, -376883, -146566, -599685, 584652, -81604,
- -1014686, 1273995, 387084, 2252174, 9578851, 564251, -1925756, -3557307, 2935610, 4515085,
- 246961, 1351841, -3058017, -769336, -2046552, 1508607, 5450314, 5255966, -1801739, -2820183,
- 2762201, 1868848, -1336272, 230854, 294742, -409633, 637803, -267362, 750009, -353261,
- -703301, -511101, -315143, -904628, -624918, -245887, 162135, 135291, 1078037, 964757,
- -594316, 906775, 617402, 431107, 344134, 889058, 459562, -266825, -446677, -200790,
- 518617, 108448, -354335, -74088, -390305, -311922, 91805, -63888, -306553, 208843,
- -160524, -279173, -344671, 71404, -161061, -295816, 81068, 71941, -97711, -42413,
- -130460, 64425, 15032, -128849, 145492, 11811, 38655, 2684, 108985, 4832,
- -73014, -2684, -42413, -5906, -42413, -71941,
- },
- {
- -30771830, -36411124, -1203128, 10679436, 187905, -95563, -3057480, -1446867, 83215, 1491427,
- 1274532, 711891, 1493575, -3321620, 2617783, 2249489, -310848, -1745367, -2409477, -381178,
- 403190, 835371, -1252520, 528818, -862215, -1301912, -107911, -350040, -332860, 1789391,
- 428960, 476741, 1276679, 615254, -643708, 1512902, -683437, 697932, 488016, -602906,
- -2778307, 1746441, -755914, -1268089, -685584, 151934, 1194538, -722628, -1190243, 100932,
- 687732, -450972, 357019, -545998, -13959, -37044, -498216, 179315, -630286, -482110,
- -638876, 97711, -233539, -122943, -482647, -286689, 156229, 233002, 84826, 82678,
- -274341, -264677, -40802, -410169, -16106, 34360, 220117, -71941, -149250, -201327,
- 110595, -118648, -120259, -35433, -150861, 48318, 91805, 98247, 24159, 96637,
- 33823, 13422, 60130, -29528, 57982, -537,
- },
- {
- 1624571, 16567836, 3128884, -1225676, -998580, -864362, -4284767, -1200980, 272194, -698469,
- 569083, -2855617, 752156, 1810866, -5747740, 2021319, 1318555, 4310000, 5777268, 1166084,
- -1896765, 897648, 196495, -678068, 2196339, 189515, -273804, -1888712, 676994, -1140851,
- 1560147, -2200634, 1631014, 170725, 351650, 889595, 1636383, 640487, 1864016, 805306,
- 1004486, 1777580, 1819456, -626528, -17180, -211527, 133681, 213675, 75162, 145492,
- -396211, 200253, 534723, 981937, -263067, 525060, 553514, 96637, 377957, 501437,
- 44560, 242129, -78920, 33823, -291521, -344671, -134218, 32749, 102005, -42413,
- 163746, -234076, -212064, 31675, -18254, 38655, 176094, -117575, -108985, 25233,
- -4832, -16106, 146029, -55298, -63888, -52613, -139050, -68719, -61740, 76773,
- 27917, -26844, -10201, 43487, 19864, 5369,
- },
- {
- -13258564, -51739860, 3250753, -594316, 3000572, -1516124, 2423435, 421444, -718333, -630286,
- 921807, 2702071, 738734, 118648, -791348, -1496259, 5464809, 1983201, -2029372, 996432,
- 772020, 810675, 1838246, 804233, 1054951, 787590, 231928, -624918, 156229, -1795296,
- -1357210, -2032056, 1161252, 1408749, 295816, 1401770, 820876, 249108, -587337, 1677185,
- -54761, -186294, -665183, 502511, -632434, -607738, -217970, -832150, -628139, -541166,
- 134218, -112206, 158914, -658204, -19327, -96100, 274341, 935766, 160524, 3758,
- -14496, -109522, 214212, 248034, -86973, -35433, 16106, -40265, 191126, -260382,
- 22549, -213138, 40265, 232465, 108448, 209917, -195421, -5906, 86436, -25233,
- 63888, 140123, -212601, 64425, -61740, 59056, 28991, 13959, -70867, 54761,
- -73014, -13422, -89657, -57445, 93952, 25233,
- },
- {
- 471910, 11603928, 1903744, -591632, 1787780, 345208, 603980, 862215, -19327, 100395,
- -177704, 842350, 7575786, 9833864, 4037806, 62277, 700080, 2267206, -374736, -2784750,
- -682900, 7953743, 1904281, -126702, -1466731, -2180233, 1279363, 2368675, 2552284, 3952444,
- 745177, -406411, -1432372, -715112, -934155, -808528, -423591, 18254, 346819, 1705102,
- 380641, -1036698, -457951, 484794, 286152, -382789, -28454, 1677722, -495532, 987306,
- 643171, 2684, 296353, 230318, 292058, 164819, 69256, -167504, -170725, -66035,
- -509491, 57982, -66035, -218506, -564251, -124554, -226023, -316217, -183073, 105764,
- 428960, 99858, -145492, 162135, -160524, 75699, -30602, -137976, -116501, -85899,
- 24696, -112206, -26844, 87510, 66035, 59593, -35433, 12885, -15569, -60130,
- 34897, -3758, -95026, -64961, -64961, -77309,
- },
- {
- -11075110, -36239324, -5211406, 2196339, -478352, 2046015, 3609383, -310848, -361314, 2253247,
- 1938641, -862215, -3469260, 4701916, 5395553, -1907502, 151398, -2544768, -3167002, 1473174,
- 1192390, -708133, -413927, -329639, 679142, 535797, 1288490, 25233, -1124208, -823560,
- 2789581, -1728188, -1055488, -853088, 1168231, 307090, -910533, -412854, 1930051, 1164473,
- 118112, 133681, -102005, -2317135, -1025960, 1408212, -38655, -967441, -443455, -532039,
- -49929, -102542, -72478, 149250, 542240, -463320, -152471, 180389, 17180, 73551,
- -592169, -230318, 256624, -18254, -133681, -91268, -11274, -73014, -136902, 79457,
- -204548, 24159, -140123, 113817, 230318, 98247, -345208, -76773, 114890, 107911,
- -326418, 3221, -272730, 64961, 129923, 45097, -125091, -85362, -88584, -94489,
- 26844, -41339, 149787, -23085, 79457, 114890,
- },
- {
- -255014, -1735704, -3607773, -2685428, 1270237, -559420, -1273458, 597537, -877247, -308701,
- -1820529, -1614371, -2647847, -12281996, 30106110, -2981244, -3222299, 1498944, -2335925, -2141578,
- 286689, 1094680, 2455648, 676457, -67646, -3561065, -1517197, 3252364, 2516314, -1832877,
- -1391569, -569083, 99321, -770410, -1613834, 92879, 915902, 517007, 1261110, 6442,
- -318364, -362925, 215285, 904091, -317291, 184684, 1017907, -307090, -363998, -820339,
- -513249, -175557, -514322, -693100, -216359, -259309, -224949, 608275, -489626, -151934,
- 294742, -270046, -164819, 66035, 360240, 115427, 88047, 233539, -14496, 21475,
- -209380, 79457, 13959, 27380, -192200, 48318, -133681, 185220, -21475, -33286,
- 1611, -134218, -175557, 1074, 30065, 28454, 33823, -59056, -43487, -66572,
- 90731, 86436, -33286, 16106, 82678, -88047,
- },
- {
- -8037495, -48314624, -6953552, -1264331, 3590593, 6452115, 4220342, 1413581, -2535641, -983548,
- 1483374, 4555887, 1238024, 1410360, -19333796, 2241436, 7215008, 450435, -1532230, -913217,
- -75162, -389231, -873489, -1030792, -435939, 631897, 171799, 2996814, 108448, -1117228,
- 24159, 1509144, 428960, -2487323, -563714, -1607392, -766115, -934692, -238908, -971736,
- -284005, 925565, -456340, -871342, 501974, 485331, 715649, 843961, 731755, -119722,
- 823023, 358630, 560493, 513785, 260919, -32749, 195421, 493384, 552977, -216896,
- -601832, -304943, -229244, 172872, 352187, -8053, -537, -36507, -283468, -57445,
- -194347, -285078, 108985, 311385, 175020, -183610, 275415, 127775, -133681, 67646,
- -102542, 129923, -194347, -7516, -44023, -16106, -7516, 136902, 53150, 87510,
- 151934, 32749, -27917, -73551, 101469, 13959,
- },
- },
- {
- {
- 305480, 6346351, -7530152, -746251, 881542, -139050, -550830, 329102, 115427, -1498944,
- 235686, -69793, -608275, 17717, -1053878, 607201, -1216013, 927713, 8053, -302795,
- 1327682, 2057289, 1717450, -76236, 3436511, -3644280, -1118839, 377420, 1151588, -3705483,
- 3320010, 1268089, -1811403, -1158031, -830002, 714575, 1228361, -1597728, 770410, 220654,
- -5369, -275415, -166430, 357019, -264677, 462783, -620623, 504659, 2684, -517544,
- 245350, -394063, 7516, 150324, 371515, -196495, 70867, -343597, -252866, -9127,
- -500901, 346819, 434329, -55298, 79994, 177167, -25233, 206158, -153008, 164819,
- -42413, -37044, 144955, -157840, -57445, 33286, -6979, 124554, 180926, -70867,
- 42950, 46171, 5906, -28991, 228707, 15032, -28454, 4832, 36507, -13959,
- 32212, 1611, 31675, 64425, -1611, -60666,
- },
- {
- -10881300, 16073378, 5801427, 3248606, -2984466, -1184337, 674847, -282931, -1864553, 790811,
- -2845953, 1927904, 1035624, -244813, 1048509, -1133335, -2854543, 1759863, 5828271, -1169305,
- -938450, 648003, -2310693, 1315871, 570694, 543313, 328565, -1047972, -925029, 807454,
- -402116, 1246077, 188442, 398358, 125091, 846109, -1297617, -77846, -1042603, 352187,
- -620086, -675921, 5369, 855772, 382789, 195421, -203474, 185220, -231391, -31139,
- 585189, -199716, -157303, -193274, 19327, -28454, -289373, 316754, -68719, -281320,
- 39192, 290984, -67109, 51540, 134755, -210453, -77846, 209917, 75162, 64425,
- -85899, 292595, -83752, -47245, 23622, 52076, 96637, 99858, 108985, -115964,
- -112206, 55835, 21475, -42413, -1074, -73014, -56371, 68719, -55835, 77846,
- -85362, -4832, 4832, -14496, -42950, -30065,
- },
- {
- 3521873, -80752904, 15613280, -8490613, 1575179, 246424, 28454, -231391, -442919, -18790,
- 410706, 219043, 641561, 2076080, -3054796, 542777, -3421478, -907312, 2955474, 2183454,
- -1739999, 1130113, 1257889, -949188, 2099165, 670015, 2176475, 1150514, -1496259, -2498060,
- 832150, 1236414, 1013612, -37044, -375810, -1300301, 919123, -1015223, -370978, -138513,
- 490700, 25770, -234613, -11274, 92879, 838056, -175557, 340913, 74088, 324807,
- 148176, -42950, 54224, 332323, -113817, 25233, 81068, 230318, -326418, 237297,
- -662499, 204548, -238371, 162672, -54224, 229781, 27917, -41876, -191126, 36507,
- -34360, -155156, 85362, 54224, 144418, -163746, -41339, 133144, 195958, -71941,
- 83752, 76236, 73551, 61740, -101469, -82141, -57445, -50466, 79994, 45634,
- -96100, 62814, -33823, 25770, -36507, 8053,
- },
- {
- -767725, 5258114, -254477, 188979, -62277, -285615, 281320, 202937, -259846, 91805,
- -161598, -656593, 1764695, -3255048, -2224793, -3315178, 45634, 1101122, -1747515, 1138703,
- 110595, -239981, 1322850, -863288, 823560, -1993402, -260919, 1418413, 887448, 463856,
- -285078, 715649, 674847, 462783, 546535, -118112, 358093, -871342, 194884, 678605,
- 461709, 6979, 781684, -56371, 114890, -50466, 149787, -357556, -345208, 912144,
- -296353, -389231, 637266, -418759, -206695, -537, -93952, -220117, 98247, 175557,
- -337155, -37581, -162135, -170188, -83752, 11274, -150324, 17180, -148713, 104153,
- -71941, -188442, 13422, -17180, 208306, -99321, 11274, 17717, 82141, 79994,
- -12885, 16106, 71404, 33823, 70330, 8053, -43487, -52613, 3758, -7516,
- -30065, -26844, 10201, 41876, -32749, 77846,
- },
- {
- -5119601, 75573168, -2239826, -4701916, -383863, 154619, 257698, 1379221, 456340, -32212,
- -762357, -2098629, 157303, -204548, 2635499, 676994, 1887101, 452582, -433255, -1085016,
- 790811, 727460, 55835, -921807, -1674500, -484258, 645856, 1082869, -1470489, -392990,
- 615791, -824097, 212064, 1611, 1123671, -1418413, -550830, -99858, 204548, 405874,
- -434865, -867583, 88047, -172872, 1209033, -69256, 438087, 134218, -324807, 429497,
- 427886, -311922, -380105, 631360, 231928, -12348, -137976, 88047, 97711, -48318,
- -147103, 113280, -79994, 214748, -89657, 186294, -354872, -123480, -68183, -143345,
- -27380, -50466, -70330, -182536, -57445, 33823, -47245, 79994, 16643, 9127,
- 74625, 18790, -155156, -20938, 44560, -83752, 30065, 35970, -104690, 91268,
- -84826, 51003, -41876, 40265, -70867, 54761,
- },
- {
- -375810, 1986959, 3567507, 220654, -309238, -341987, 95026, -67646, -520228, 81604,
- 584116, -244276, -493384, -1735704, 499827, -2034741, 4949950, -2018098, 3482682, -17820894,
- 3169149, -1665374, 2888366, -638876, 1678259, 532576, 869731, -388695, -230318, -893353,
- -776852, 805843, -1949915, -657130, 529355, 313533, 603980, 720481, 154082, -177167,
- -461709, 37044, -954020, -365609, -139586, 350040, 128849, 417686, -36507, -103616,
- -245887, -282394, 158377, -314069, -33823, -126165, 436476, -375810, 105764, 125628,
- 97711, -122407, -213675, 268435, -197032, -24696, -71404, -38118, -103079, -78383,
- -105227, 233539, 47245, 12348, -164819, 146029, 31139, 86973, -140123, 91268,
- -119185, 37581, -40265, -32212, 9664, -50466, 18254, -33286, -5369, 65498,
- -66035, -33823, -56371, 12348, -16643, -4295,
- },
- {
- -32202592, 102693744, -7697119, 2495913, 232465, 300111, -256087, 467615, 1060857, -216359,
- 75699, -479963, -1318018, -1198833, -99858, 483184, -746251, 353798, 875636, -42413,
- 485868, 183610, 223338, 295279, -302795, 372052, -89657, 274878, -59593, -1156957,
- 182536, -1723893, -83215, 589484, -365072, 2271501, -9664, -690953, -727997, 62814,
- 64961, -762894, 1096827, -554051, -615254, 1232119, 44560, -1130650, 323733, -56908,
- 51540, -338229, -618475, 478352, 1611, -462246, 186294, -284542, -7516, 277025,
- 87510, 90731, -251792, 35433, -55298, 57445, 115427, 13959, -23085, 113817,
- 177167, -18254, -173409, 96637, 166967, 41876, -71941, -87510, 24696, -68183,
- 152471, -21475, 14496, 73014, -28991, 32212, -41876, 81068, 8053, -40802,
- -13422, -11274, -68719, 55835, -27380, 3221,
- },
- {
- -454193, 4632659, -1199907, 535797, 539018, -273267, 532576, -110059, -38118, 328028,
- -404264, 475131, -1398549, -972810, 1852742, -2989297, -1139240, -3582540, 1111860, 2581812,
- -1488206, -1589675, -1160715, 913754, -860067, 2005750, 677531, 789200, -1272921, -1516660,
- 1750736, 874563, -1823214, 131533, 184684, -717796, 1068373, 154619, 407485, -318364,
- -599685, -363462, 475131, -273804, -274341, 77846, -61203, 639950, 399432, 146566,
- -557809, 780073, -53687, -233539, -199716, 154619, 31139, 33823, 230854, -82678,
- 207769, -20401, -28454, 196495, 45097, -163746, -188442, -63351, 43487, 3758,
- -17717, 174483, -112206, 114890, -133144, -151398, 11274, 85362, -43487, 5369,
- 88584, -57982, 21475, -192737, -14496, -26844, -17717, 62277, 3758, -56371,
- 22012, -16643, -35970, 2684, -9127, 33286,
- },
- {
- 19002010, 24812562, -7639673, 5693516, -795643, 735513, -625455, 304943, -660888, 466541,
- 287226, -1838783, -134218, -5144297, 3506841, -389231, -419833, 1979980, -952946, -387621,
- 794032, 931471, -2003602, 1479079, 598611, -534723, 807454, 948651, -562104, 924492,
- -383863, -66572, 732292, 588947, -816581, 728534, -687732, -34360, 115427, 561030,
- -2587718, 1258425, -141734, -762894, -349503, -972810, 600759, 836982, -24696, -535260,
- 26844, -455803, 561567, -277562, 417686, 617402, -341987, 40802, -217433, 169651,
- -369367, 181462, -241055, 15032, -165356, -310311, 139050, 318901, 6442, -98247,
- -122943, 44023, 153008, -205085, 108985, 228170, 10737, -3221, 63351, 15032,
- 46708, -66035, 32749, 49929, -79457, -83752, -38655, 109522, 23622, 49392,
- 38118, -9664, 13422, -127775, 112206, 1611,
- },
- {
- -1211718, 9880035, -2486786, 873489, 469762, 845035, 3007014, 780610, 9664, -253940,
- 2488397, -722628, 854699, 519154, -6765111, 2664490, -2081449, 702227, 2348810, 959388,
- -496069, 2093797, -1486596, -1476395, 481036, -59056, -379568, -997506, 149787, -1810329,
- 2940979, -2331630, 446677, -92342, 19864, 270583, -57982, -542240, 1348083, -140660,
- -60666, 92879, 741956, -461172, -333397, 216359, 39192, 673236, -92879, -418222,
- -161598, 147103, -32212, 279173, -234076, 40802, 280247, -256087, -153545, 120259,
- -85899, 11811, -191663, -47245, -12348, -43487, -30065, -17180, 25770, 125091,
- 261456, -102005, 0, -121333, -24696, 87510, 42950, -82678, -29528, -70867,
- 37044, 0, 78383, -13959, 42413, 51003, -56371, -18254, -11811, 6442,
- 35970, -30602, -537, 1074, 39728, 33823,
- },
- {
- 10682657, -21609592, -91805, -3577708, 670552, -3440269, 2386391, 952946, 883690, -7516,
- -245350, 1495186, 216896, -49392, 1614908, 1324461, 7248831, 2272575, -1137093, 470836,
- -69793, -228170, 635655, -855772, 967441, -26307, 923418, -942208, -819265, -427349,
- 711354, -18254, -7516, -139050, 435939, 915365, -518080, 646393, -5369, 921807,
- -44560, 948114, -506269, 699543, -38655, 151398, 255014, -30602, 432718, -391916,
- 125091, -415001, -6442, 132070, 116501, -246424, -370441, 326418, 207769, 97174,
- -4295, 131533, 95026, -26844, 39728, 90731, 62814, 32749, 193274, -19864,
- 136365, -183610, -53150, 152471, 14496, 3758, -75162, 74625, -6442, 22012,
- -26307, 98247, -70867, 2147, 16106, 1611, 28991, 3221, -2147, 31675,
- -55835, 34897, -8590, -30602, -9127, 537,
- },
- {
- -77309, 7307350, -1993939, -1846299, 832687, 773094, -246424, -164283, 98247, 745177,
- 138513, 1266479, -334471, -5185636, 2856153, -727460, -930934, -202400, 26844, -1478543,
- -1865626, -293132, 310848, 1057099, 995359, -277562, -754304, 1309428, 291521, 1246614,
- 587874, -1135482, -44023, 362388, -258772, -370441, 229244, -187368, -74088, 641561,
- 379031, -306553, -443992, 540629, 250182, -548145, -486405, 363462, -953483, 205622,
- 126702, 60666, 214748, 226560, -39192, 27917, 150861, -239981, -529355, 70867,
- -638340, 256624, 310311, 191126, -420907, -117038, 168041, -208843, -86973, -145492,
- -80531, -152471, -82678, 206158, -191126, 98247, 99858, 27917, 29528, 26844,
- -53150, 1074, 23085, -26307, -71941, 4832, -34360, -46708, 30065, -58519,
- -34897, -13422, -1074, 64425, -49929, 5369,
- },
- {
- 7370701, -3212099, 1044751, 5448166, -3420942, 631897, 4619238, -954020, 198642, -319438,
- 60130, -1021129, 773631, 10921028, 2946348, -2451353, 183073, -162672, -721018, 194347,
- 1779727, -852551, -905164, -555661, 532039, -1103270, -521302, -308164, 668404, 481573,
- 1505923, -1130113, 1272384, -214748, -412317, -352724, 296890, 80531, 491237, 296353,
- -791348, 48318, 433792, -1139240, -1093606, 396211, -332860, -127775, -244813, -147103,
- 377957, 42413, 205085, 175020, 608812, 75699, -212064, 86973, 17717, 61203,
- 70330, -31139, 415001, -129923, 162672, 168577, -104690, 24696, 63888, 181462,
- -8590, 74625, 17180, 133681, -102005, -22012, -95026, -133681, 77846, 92342,
- 19864, 148713, -124554, -39192, -30602, 97711, -49929, -89121, -16643, 1074,
- 74088, -5369, 67109, 32212, 4295, 46708,
- },
- {
- 295816, 2328409, 297963, -1358283, 1501091, 15569, -517007, -159988, -499290, 381715,
- -446677, 1385664, -1968169, -7023882, 41564548, -1389959, -2415382, -105764, -1286343, -2328409,
- -3640522, -1763621, 1807108, 171799, 877247, -2399276, 905164, 59593, 290984, -265214,
- 86973, 1105417, 700080, 1074, 429497, 27917, 945430, 15032, -241592, 498753,
- -369367, -50466, 477278, 89121, -467615, 252329, 312459, 209917, -158914, -95563,
- -106837, 324807, -55298, -499827, 386547, 358093, -326418, 334471, -415538, -15569,
- 302258, -82141, -147103, -93416, 73014, 22012, -338766, -57982, -28454, 37044,
- 32212, 206695, -137439, 349503, 20938, 8590, -46171, 33823, -62277, -25770,
- 51540, 53687, -39192, -11811, 49392, -62814, -44560, -90731, 96637, -52076,
- 59056, 61740, -2684, -25770, 51540, -34360,
- },
- {
- 8680129, -18975166, 1437740, 5306432, 765578, -727997, 2700998, 2150168, -938987, -366146,
- -409633, 4622459, -1633698, 4973036, -11111080, -871878, 2810519, -276489, 762894, 704912,
- -195421, 18254, 568009, -202400, 54761, 612570, -1054951, 796180, -718333, -1796370,
- -267362, 388695, 68719, -1083406, 601832, -15032, 226023, -576599, 418222, -184147,
- 37044, -28991, -363998, -689342, -41876, 197032, -318901, -383326, 581431, -93416,
- 497679, -521302, -154619, 335544, 273804, 56371, -73551, 273804, 449898, -253403,
- -48318, 205085, -96100, -37044, 95563, -110595, -99858, -53687, -183073, -15569,
- -11811, -72478, 37044, 100395, 156229, -91805, 111132, -63351, -73551, 89121,
- -96637, 96100, -74088, -10201, -70330, 20938, 55298, 5369, 70867, -27380,
- 59056, 1611, -67109, -11811, 61203, 2147,
- },
- },
- {
- {
- -1592359, -9451612, 4553202, 1876901, 469225, -918586, -628139, -422517, 360777, -914291,
- -700617, 503048, 280784, 479963, 194884, 1110786, -1953673, 602906, 1215476, -179852,
- 1707250, 344134, 787590, 2097555, 35433, 186294, -1248762, -374199, -1345399, -1088774,
- 1310502, 1119913, -2111513, -551903, -162672, -98247, 250182, 368293, 1228898, -202400,
- 153545, -76773, -68719, -52613, 468688, 116501, 116501, 164819, -376883, -62277,
- 173946, -353798, -249108, -37581, -86973, 277025, -1611, 60666, 30602, -540092,
- -121870, 102005, 93416, 242129, 537, 88584, -42413, 10737, -128312, -18254,
- 122407, 33823, 26844, -95563, -81068, 119185, 15032, 6442, -34897, 50466,
- 42413, -1074, -55835, 18790, 76773, 48855, -3221, -24696, 26307, 62814,
- 10737, -16106, 44023, 54224, 1074, -5369,
- },
- {
- 9361418, 6491306, -7888781, -424665, 1214402, -634045, 521302, 193810, 192200, -1563368,
- -945967, 277025, 220654, 291521, 1282585, -1212255, -607738, 3354370, 2498597, -127775,
- -957778, 292595, -950798, 386010, 331786, -209917, 406948, -571231, -541166, -277562,
- 815507, 562104, -120796, 500901, -493384, 1381369, -937377, -1093069, 325344, 325881,
- -817654, 76236, -149250, 104690, 503048, 346819, 450972, -121333, 260382, -100395,
- 357019, -440234, -387621, -207769, -39728, -84826, -82678, 221191, -340376, -181462,
- -100932, 61203, 134218, 55298, 20938, 5906, -49392, -23622, 61203, -8590,
- 2147, 183610, -8590, -221728, 189515, 91805, -3758, 182536, -16106, -103616,
- -10201, -23085, -70330, -24696, -24159, 52613, -47782, -9664, -6442, -29528,
- -31139, -46708, -5369, -23085, -8590, -22549,
- },
- {
- 659814, -51977156, -237297, -12111808, -1312649, 772557, -555661, -10201, -201327, 1392106,
- 453656, 1569274, -1017370, 1175210, -748398, -911070, -3328063, 445603, 1612760, -619012,
- 1330366, -868657, 568546, 49392, 2351495, 1166621, 688269, 418759, -1743220, -886374,
- 998043, 1369558, 758062, 530965, -446677, -811749, 900869, -1479079, -478352, -52076,
- 606127, -600759, -236760, -151398, -354335, 852551, 445603, -179852, -265214, 485331,
- 131533, 236760, -384936, 264677, 394063, -111132, -409633, 13959, 148713, -59593,
- -315680, -175020, 54224, -183610, -208843, 168577, 33286, 20938, -107374, -25770,
- -129386, -198105, 75699, 74088, 29528, -120259, -17180, 108985, 133144, 42950,
- 67109, 27380, -23622, 57982, 54761, -68719, 537, 19864, 29528, 41339,
- -62277, 12348, -8053, -9127, -34360, 37044,
- },
- {
- 486405, 3877819, -85899, -751082, -51003, 35433, 34360, 33286, 66572, 64961,
- 22012, 83215, 267362, -2218888, -5338645, 3047816, -867047, -2003065, 1782411, 802085,
- 32749, 457951, 825171, -147103, -1672890, -435939, 293132, 899796, 386010, 669478,
- 68183, 857920, 520228, 178241, 509491, 321049, 210990, -1016834, -307090, 680752,
- 399969, 380641, 47245, 80531, -8590, -235149, 239981, -406948, -11274, 202400,
- 536871, -289910, -55835, -95563, -397284, -17180, 43487, -192737, -35970, 321049,
- -133681, 81068, -13422, -332323, -162672, 163746, -46708, -246424, -86436, 57445,
- 88047, 18790, -49392, 48318, 67646, -38655, -51003, -38118, 42413, 42950,
- 25233, 41339, 22012, 69256, 47245, 72478, -52613, -60130, 5906, -56371,
- 26844, -20938, -23085, 3758, 537, -19864,
- },
- {
- 11330661, 46231028, 3159485, -2139968, -50466, -81604, 179852, 1054951, 1006633, -64961,
- -1938104, -1770063, 355409, -555125, 2949569, 596464, -1093069, 4179003, 963683, -137439,
- 456340, 944893, -1183800, 94489, -485868, -551366, 929324, -742493, -475131, -399432,
- 470836, 209917, -150324, -439697, 222801, -528818, 561567, -130460, 417686, 457951,
- 124554, -825171, -483184, 949188, 187905, 113280, 454193, -257161, 35970, 332860,
- -282394, -197569, -153008, 564788, -199179, -215285, 176094, 297963, -138513, -41339,
- 104690, 89657, -303332, 232465, -91268, -68719, 97711, -203474, -200790, -214212,
- 59056, -4832, 73014, -148176, -108985, 71941, -127775, 108985, -12885, -50466,
- 0, 13422, -135291, 34897, 44560, -53150, -25233, 73551, -57982, 3758,
- 2684, -6442, 7516, 28991, -28991, 18790,
- },
- {
- -44560, 3015067, 1247151, 255014, -159451, 21475, -360777, -97174, -375273, 249108,
- 175020, 95026, 363998, -421444, 1371168, -238371, 162672, 1072131, -1288490, -14586783,
- 2899103, 406411, 672162, 3294777, 498753, 532039, 1084479, -1035087, 227633, -1643899,
- 619549, -354335, -1239098, -1065689, 657130, 57982, 599685, 222265, 374736, -193274,
- -475131, 22549, -1089311, -306016, -409633, 181462, 2147, 403190, 294742, -468151,
- 173409, -573378, 292058, -49392, -102005, 69256, -115964, 28454, -79457, 27380,
- 200253, -178778, 11274, 104153, -235686, -2684, 66035, -24159, -4832, 93952,
- -15032, 25233, 114890, -60666, -102005, 13959, -62277, -27917, 21475, 13422,
- -79994, 17717, -16643, -13959, 44560, -24696, -45634, -32749, -38655, -35433,
- 76236, -22549, -109522, -24159, -15032, -22012,
- },
- {
- 24787330, 7007239, 28991, 3714610, 9664, -84289, 259846, 355945, 47782, -235149,
- 464930, -68719, -715112, -342524, -1153199, 461709, -313533, 400506, 826781, 398358,
- 525060, 587337, 541703, 158914, -548682, 398895, -450972, 333397, 221191, -722091,
- -392990, -1234803, -306016, 158914, 263067, 754841, 867047, -1180042, -137439, 361851,
- 61203, -508417, 61740, 334471, -3221, 236223, 298500, -667867, 432181, 151934,
- -31139, -264677, -184684, 122407, -31675, -590021, -93416, -11274, -45634, -23085,
- 78383, 75699, -82678, 11274, 12348, -197032, -109522, 198642, -20938, 142808,
- 53687, 203474, -168041, -54761, 161061, 46171, -34360, -115427, 21475, 20401,
- 80531, -13422, -49392, 7516, 45634, -67646, -19864, 86973, 63351, -3758,
- -43487, -22012, 29528, 54224, 7516, -39192,
- },
- {
- 339839, 273267, 844498, -431644, 498753, 129923, 166430, 386010, -507343, -85899,
- 199716, 346819, -810138, -750009, -2724083, 304406, 349503, 1256278, -798864, 926102,
- -1229434, -416612, 1129040, -197032, -455267, 1396938, 857383, -1255204, -1835562, 1094143,
- -825171, 519154, -839129, -282394, 473520, -176094, -382252, 984084, 165893, -426276,
- -419833, -273267, 234076, 352724, -213675, 238908, -365609, 693637, 483721, -537,
- -175020, 45634, 154082, -187368, -264677, -317828, -319975, 363462, 321586, -35433,
- 78920, -133144, 325344, -108448, 73014, -17180, -110595, -13422, 137976, -104690,
- 11274, 35970, -6979, 180926, -133144, -107374, -2684, -35433, -63888, -31675,
- 75162, 25233, 2684, -45634, -125628, 4295, -29528, -537, -19864, -64961,
- 11274, -18790, -53150, 6442, 7516, 30602,
- },
- {
- -6716792, 54621248, 550293, 2072859, 1233193, -461172, 217970, 231928, -48318, -170725,
- -653372, 14496, -242129, -2335925, 913217, -386010, 374199, 919123, -394063, -695248,
- 358630, 532576, -86436, 465467, 543313, -233002, 169114, 1806034, -862215, -159988,
- -91268, 572841, -512712, 294205, -395674, 202937, 758599, 439697, -1132261, 144418,
- -1063541, 269509, -595390, -193274, 0, -740345, -665183, 934155, 660888, -105227,
- -501437, -506269, 318901, 136902, 208843, 467078, 54224, -10201, 100395, 106837,
- -210990, -3758, -43487, -181999, 96100, 9664, 45634, 29528, 47782, -37581,
- -30065, 32749, 19864, -14496, 133681, 137439, 19864, -10737, 69793, 92342,
- -40265, -5906, 62277, 77846, 21475, -48318, -48855, 40265, -37581, 27380,
- 30065, -8053, 4832, -67646, 21475, 19864,
- },
- {
- 808528, 4656282, -4347581, 1599875, 2913062, -433255, 4104378, 1075352, 141197, 830539,
- 842887, 444529, 349503, 712965, -5222144, 414464, -957241, 985695, -1704028, 3048890,
- 890669, 1569274, -1088237, -1227824, -874563, -171262, -761283, 178241, -163746, -940061,
- 971200, 361314, -807991, -65498, 22012, 339839, -1132798, -292595, 170188, -5906,
- 256624, -457951, -242129, 351114, -233002, 250719, 16643, 257698, 149787, -169114,
- -366683, 285615, -144955, -316217, 298500, 10737, -115964, -142271, -252329, -40802,
- 58519, -197032, 118112, -75162, 69256, 183073, -63351, -98784, -95026, 71941,
- 177167, -11811, 86436, -52076, -18790, 22012, 92879, -41876, 103079, -11274,
- 100932, 12885, 3758, -12885, 5369, -48855, 37581, 10737, 17717, -10201,
- 12348, -19864, -16643, 0, 6442, 12885,
- },
- {
- -7719667, -3549254, 3990562, 972273, -1598265, -400506, -4064650, 1333587, 854162, 1148367,
- 662499, -25770, 396748, -348966, 1177358, 4051765, 2984466, 1559610, 2165201, -710817,
- -767725, 130460, 129923, -837519, 188979, -27917, 379031, 180389, -878321, -354335,
- 630823, 844498, -374199, -1032403, 1227824, 123480, -30602, 687195, 760209, -389231,
- 144418, 467615, 375810, 616865, 146029, 193274, 56908, 103616, 369367, -257161,
- 26844, -91268, -253403, 67109, 279173, -159988, -55298, -84826, 236760, 220117,
- -72478, 136902, -15569, 76773, 78383, 105227, 99858, 122943, 6979, 12885,
- 148176, -59593, -98247, -24696, -55835, -95563, -85362, 94489, 69793, -44023,
- 19327, 17180, 3221, -72478, 34897, -22549, -27917, 20938, 26307, 9127,
- -44560, -537, 31139, 24696, -51003, -25770,
- },
- {
- -207769, 5609228, -384936, -2792803, 271120, 991064, -96100, -252329, 128849, -259309,
- 74625, 994822, -1426466, -2398739, 2427194, -996969, 454193, -2894808, 886911, -905701,
- -1615982, -2022930, 555125, 534723, -452582, 1563368, 605590, 312996, 596464, -541703,
- 399432, -678605, 366146, 151934, 19327, -410169, 294205, -60666, 25233, -176631,
- 134218, 28454, 102542, 279710, -399969, 150324, -216896, -336081, -264677, -259846,
- -323196, 332860, 101469, 193810, -5906, 5906, 151934, 89121, -212064, -537,
- -315143, 132607, 141197, 162135, 3221, -175020, 85899, 34360, -93416, -115964,
- -279710, -136365, -77846, -19327, -32749, -13422, 47782, 10201, 40802, 78383,
- -44023, 18790, 65498, -15032, -31139, -8590, 13422, -9664, -18254, -32212,
- -46708, -19327, 42413, 7516, -17717, 3221,
- },
- {
- -2035278, 14867566, 2729989, -1146756, -2286533, 73551, 1779727, 28991, 371515, -901943,
- -159451, -792958, 2639258, 8155069, 853625, -802085, -738734, 912681, 537, -790811,
- 785979, -185220, -210990, -368293, -641024, -1664837, 287226, -1591285, 469225, 1197759,
- 553514, -502511, 856846, 363998, -116501, -827855, 573915, 303869, -50466, 322659,
- -822486, 97174, -193810, 226560, -111132, 153545, 110595, -78920, -164819, 379031,
- 215285, -373125, 294742, 183073, 101469, 307090, -280247, -1611, 88584, -68719,
- -19864, 30065, 223875, 20401, 229781, 218506, -8053, 141734, -2147, 126165,
- 22549, 92879, 19327, -140123, -56371, -46708, 23085, -112743, -66572, -17717,
- 140123, 99858, 8053, -119185, -118112, 67646, 30602, 51003, 5906, 45097,
- 44560, 79994, -46171, 27380, -23085, -20938,
- },
- {
- -26844, 2464238, 1553704, 489626, -215822, 676457, -24159, -733366, -649077, 617938,
- 89121, 545461, -676994, 11872363, 7258495, 578210, -79457, -1538135, 2134062, -2770254,
- -5230734, -1147830, 690953, 1458678, -788663, -1496259, 1120987, -514859, -220654, -1149978,
- 1769527, 260919, 487479, 569620, 894964, 678605, 582505, -229781, 42950, 185757,
- -36507, 361314, -132607, -478352, 125628, 310848, 43487, 247497, -194884, 66035,
- -43487, 1611, -144955, 182536, 120259, 207769, 41339, -50466, -32212, 81068,
- 24159, -198105, 28454, -45634, -99321, 0, -315680, -207232, 77846, -53687,
- 28991, 167504, -25770, 192737, 109522, -18790, 54224, -77309, -23622, 2684,
- -18254, 43487, 28991, 48855, 40265, -5369, -75162, -7516, 86436, 48855,
- -47245, 537, 33286, 3221, -34897, 6979,
- },
- {
- -5331128, 591095, 1706176, 5750425, 256087, -1356673, -338229, 1131724, 934692, 1603633,
- -1232656, 1655710, -1154809, -2748779, 3653407, -2138357, -2774012, -313533, 665720, 1603633,
- -145492, -62814, 432718, -146566, -393526, 1286343, -1185948, -877247, -950798, -1035624,
- 3221, 57445, -632434, 358630, -135291, 597537, 539555, 44023, -46708, -286152,
- -181999, 45634, -224412, 92879, -228707, 168041, -577136, -191126, -35433, 102005,
- 260382, -401043, -18254, -116501, 136902, -61203, 82141, 302795, 128849, -49392,
- 146029, 238371, 63888, -32749, -115427, -77309, -39192, 2684, -8590, -48318,
- 15032, 34360, 54761, -2684, -147103, 209380, -25770, 7516, -12885, -11274,
- 20938, -16643, -38655, -22549, -6442, -14496, 537, -90731, 93416, 20938,
- -31675, 44023, -47782, -24696, -3221, 6979,
- },
- },
- {
- {
- 1324461, -14815490, -3917547, 1093606, -92342, -832150, -366683, -588947, 87510, 423591,
- 319975, 918049, 1147293, -106837, 1497333, 2505040, -1478006, -345208, 448287, -982474,
- 2854006, -39728, -412317, 2152316, -148176, 2249489, 488553, -326418, -789737, -629750,
- -1647120, -601832, -1974611, 245887, 893890, 538482, 68719, -125091, -234613, -265751,
- 415538, -3758, 282931, 35970, 664109, 233539, 166430, -45634, -326418, 306553,
- 158914, -239981, -198642, -9127, -392990, 61740, -8053, -12885, 237297, -100395,
- 186294, -8053, -178778, 32212, -151398, 1611, -147103, 5369, 6979, -176631,
- 42413, 48318, 22012, 140660, 37044, 157303, -15032, -5906, -90194, 17180,
- -1074, 20401, -42950, -10201, -56371, -8590, 27917, -61203, -23085, 26307,
- 55835, -47245, 13422, -8053, -27380, 38655,
- },
- {
- -9147207, -20148228, -4767951, -1373853, 32749, 325344, -283468, -125628, 1119913, -556735,
- -115427, 613107, -241055, -302795, 410169, -929860, 763967, 479963, -1490354, 848256,
- -790274, 121870, -243739, 131533, 528818, -185757, 354335, 453119, 409633, 227633,
- 1171989, -148176, -1194001, 41339, 379568, 923418, -313533, -267362, 452582, 38655,
- -401043, 228170, -85899, 86436, 497679, -316754, 532576, -252866, 396748, -251792,
- 188979, 73014, -310311, -206158, 65498, -120259, -232465, -160524, -48855, 41876,
- -8053, -196495, -23622, -27917, -31675, 173946, -1611, -173409, 47245, -114354,
- -24159, 32212, 3758, -195421, 24159, 81068, -167504, 71404, -37581, 48318,
- 75699, -122943, -26844, 537, -88047, -72478, 95563, -44023, 25770, -45097,
- 43487, -3758, 20938, -47245, 10201, -12348,
- },
- {
- -2654827, -46178416, 7583839, -5226975, 172336, 346819, 46708, -220117, -452582, 183073,
- -639950, 467078, -1104344, 3162707, 2312303, 143345, -390842, 1810329, 363462, 135291,
- 2130841, -1386201, -124554, -1082869, 1431298, 57445, -572304, -114890, -767725, -444529,
- 730144, 664646, 438087, -243739, -343061, -259846, 787590, -823560, -339839, -57445,
- 625455, -703838, 17180, -30065, -535797, -57982, 462783, 149250, -38655, 176094,
- -241592, 54224, -264141, 187368, 105227, -25770, -184147, -78383, 365609, 171799,
- -17717, 110059, 26307, -237297, -132607, 133144, -27917, 83215, 39192, -23622,
- -78383, -90731, -22549, 39192, -18254, -47782, 537, 5906, -9127, 39192,
- -30602, -66035, -5906, -110059, 47782, 73014, 32749, 46708, 14496, -7516,
- 3221, -37581, -18790, -36507, -2684, 53150,
- },
- {
- -461709, 3146064, 822486, -126165, -210990, 62277, -98247, 106837, 267362, -328028,
- -163209, -502511, 78920, 711891, -4901632, 1978369, 1014149, 555125, 3959960, 798327,
- -602906, 239981, -565325, -631360, -1095754, 362925, 1569811, 500364, -275952, 235149,
- -505196, 344134, 132070, -235686, 604517, 379031, -234076, -77309, 316754, 29528,
- -22549, 121333, -476741, -40265, 34360, -116501, 185220, -239444, 233002, -178241,
- 230854, -77846, -66572, 79994, 27380, -4295, 84289, 151398, -188442, 267899,
- -82141, 183073, 144955, -13959, -54761, 35433, -6442, -49392, 14496, -96100,
- 23085, 155156, -8590, -3758, -41876, 42950, 27380, 6442, -36507, -24159,
- -50466, -4295, -85899, 48318, -34360, 26844, 44560, -2147, 14496, -39728,
- 67109, 31139, -23622, -42950, 6979, -40265,
- },
- {
- -12035572, 12431783, 3073049, -528281, -403190, -302795, -544924, 217970, 281320, -105764,
- 456877, -74625, 897648, -498753, 894964, -62814, 646393, 5375689, 179852, 28991,
- 1375463, 1017370, -747861, -216359, 712428, -783832, 439160, -723165, 461709, -256624,
- 588947, 241592, -54224, -391916, -91268, -543313, 1073205, 624918, 384936, -292058,
- 383863, 66572, -412854, 118648, -16643, 119722, -129923, -97174, 37044, -1611,
- 53687, 49929, -494995, 276489, -623844, -526134, -169114, 206695, -96100, 55835,
- 34897, 125628, -168041, 49929, -178778, 89657, 113280, -98247, 62814, -137439,
- 22549, -48855, 110595, 53687, -20401, -48855, -40802, 10201, 51540, 46708,
- -27380, -32749, -36507, -22549, 26307, -37581, -10737, 95026, -61740, 25233,
- -9664, 45097, 1611, 2147, 12885, 23622,
- },
- {
- 329102, 4092030, -773631, -434865, -13422, 183073, -207232, 43487, -1611, 54224,
- -397284, 193274, -52613, -406948, 3143379, 1209570, -2294586, 567473, 2417530, -12560632,
- -492848, -843424, -730681, 713501, 494995, 518080, -471910, -1233193, 772020, -98247,
- 1511292, -84289, -27380, -91805, 641024, -665183, -148713, -728534, -53150, -212064,
- -33823, 143345, -208843, 254477, -566936, 16643, -207769, -537, -43487, -417149,
- 506269, -268435, 8053, 88047, 95563, -175020, -256624, 37044, -173946, -86436,
- 75699, -84826, 192200, 69793, -129386, 66035, 82141, 129386, 84826, 89121,
- 128849, -35970, -40265, 3758, 49929, 13422, -22012, -6979, 41339, -17180,
- -1074, -35970, -22012, -37581, 103079, -537, -3221, -10737, -7516, -40802,
- 54761, 32212, -7516, -36507, -8590, -33823,
- },
- {
- -13892609, -46124728, 986769, 3510062, -185220, -12348, 387084, -214748, -692564, -336081,
- 595927, 70330, 719944, 1045288, -144955, 105764, -321049, 90194, -466541, 302795,
- 227633, 191126, 26307, -194884, -272194, 306553, -3221, 356482, 200790, -86973,
- 220117, -92342, 111669, 127775, -12348, -798864, -12885, -838592, 598074, 340913,
- -125628, -428960, -369904, 477815, 155156, -107911, 86973, -227096, 541703, -167504,
- 210990, -128312, -31139, -121333, 175020, -63888, 69793, 48318, 70867, 93952,
- -127238, -227096, 64425, 176094, 90194, -153545, -157303, 12885, 30602, 134218,
- -163746, 224949, 34360, -193810, -20401, 57982, 68719, -86436, 83215, 77846,
- -60130, -31675, -8590, -22012, 16106, 59056, -6442, -20938, 23085, 24696,
- -10737, -69793, 41876, 37044, 29528, -47245,
- },
- {
- 335544, -1422171, -921271, 57982, -70330, 185220, 22549, 369367, -129386, -153545,
- -19864, 12885, -4832, -1763084, -6653441, -1876901, -989453, 2381559, -909996, -262530,
- -1745367, 1231045, 994822, 147103, -1339493, -1731946, -68183, -1347009, -2056216, 916439,
- -1142461, 527744, 302795, 153008, 118648, -33286, -449898, 693637, 38655, -305480,
- 99858, -186831, -363462, 193274, 190052, 236223, -510027, -143345, 316217, 120796,
- -139586, -161061, 113280, -44560, -192737, -23622, -132070, 136365, -190052, -12348,
- 179852, -149250, 121333, -95563, 31139, 119185, 184684, -2147, -26844, -30065,
- 19864, -44560, -20938, 171799, -67646, 24159, 139586, -13422, -59593, 12348,
- -30065, 7516, 537, 69793, 19327, 15032, -2684, -52076, 3221, -3221,
- -57445, 8590, -15032, 9664, -25233, -27380,
- },
- {
- -1532230, 56482040, -1719061, 1462973, 543850, -726386, -306016, -523986, 723702, 27380,
- -1111860, 518617, -9127, 459025, 506269, 754304, 973347, 466004, 11274, -75162,
- 330176, -240518, 512175, 146029, -380641, -94489, -576599, 484794, -1063004, 335007,
- 543850, 95563, -885300, 439697, -160524, 348966, 510027, 872415, -805306, -964757,
- -1406602, -157840, -485868, 498753, 319438, 70330, -201327, 199179, 353261, 231928,
- -220117, -378494, 111132, -44560, -455803, -34360, 258235, 81604, 4295, 233002,
- -18254, 53150, 75699, -279173, 6442, 130460, -51003, -236760, 63351, 114890,
- -6979, -31675, 67109, -18790, 33823, -54761, 91268, -81068, 32212, 28454,
- 68719, 4295, 1611, 23622, -43487, 56908, 61203, -2147, -86436, -27380,
- -39192, -5906, 2684, 44560, -24696, -3221,
- },
- {
- -522375, 1490354, -556735, 1595580, 387084, -644245, 1684701, 850940, -137976, -115964,
- -182536, -268972, 279173, 1900523, -901943, 2685428, -110059, 2602750, -445066, 456877,
- -783295, 1371705, 737661, -257698, -655519, -146029, 102542, 722628, 68183, -159988,
- -387621, 1210107, -292595, -645856, -62814, 1009317, -503048, -399432, -134218, 8053,
- 234076, -251256, -233002, 343597, 676994, -30602, -358630, 54761, 288837, 95026,
- -619012, 95026, 42413, -325344, 5369, 297427, -62814, -11274, -158377, -101469,
- -40265, -107374, 238371, 51540, 19864, 190052, -12348, -58519, 28991, -96637,
- 49929, -46708, -9127, 137439, 19327, -71941, 117575, -34897, 68719, 38655,
- 104153, -11811, 537, -33823, 27917, -69256, -3758, 31675, 7516, 22549,
- -24159, 2147, -69793, -4832, 14496, -17180,
- },
- {
- 5586142, 8173860, 307090, 2660195, 572304, -339839, -7592966, -8590, -19327, 1705639,
- 561567, 196495, 132607, -232465, 432181, 1694902, -1188632, -1500017, 1086090, -131533,
- -674847, 842887, -427349, -876173, -783832, -717796, 129386, 401579, -26844, 401043,
- -243203, 91805, 512175, -621160, 359704, -654983, 856309, -23622, 89657, -441308,
- -186294, -402653, 24159, 45097, 74088, 655519, 153008, -299037, 25233, 200790,
- 218506, -2147, -134755, -166430, 124017, -223875, 66035, -82141, -34360, 246424,
- -97711, -82141, -100395, 47245, 49392, -40265, 111132, 82141, -38655, -125628,
- 88584, -38655, -34897, -22549, -97174, -3221, -108985, -1611, 71404, -124017,
- 34360, 33823, -42950, 48318, -5906, 40802, -43487, 40265, -32212, 9127,
- -5369, 2684, -13422, 23622, 26844, -20938,
- },
- {
- 316217, 4435091, -1131724, -2093260, 812286, -386010, 57445, 107374, -73014, -443455,
- -328028, -40265, 1735704, 2974265, -76773, -263067, 2527588, -1574106, 1098438, 493921,
- 1271310, 1538135, -539018, -481573, -2208150, 201863, 1104344, -459562, 585189, -286689,
- -681826, 636192, -74088, 227096, 379031, -321586, -76236, 103616, -110059, -20938,
- 77309, 271657, 474594, 293668, -361314, 411780, 80531, 248571, 102005, 207769,
- -47245, 137976, 149250, 127238, -64961, -247497, -368293, -71941, 246424, 267899,
- 41339, 137976, -159988, -20938, 151934, -61740, -154619, 140660, -44560, 13422,
- -87510, 59056, 23085, -47245, 10201, 4832, -55835, -67646, 19327, 3221,
- 33286, -46171, 15569, 59593, 26844, 35970, 32212, 34360, 7516, 16106,
- -1611, 13959, 3758, -47245, 31139, -18790,
- },
- {
- -1094143, 10714333, -351114, -2784750, -476741, 162135, -1064078, 387621, 943819, 153008,
- 96637, -868657, -2131378, -1255741, -1048509, -733903, 96637, 1241246, -494458, -36507,
- -300111, 285615, -115964, 187905, 159451, -107911, 1626182, -965831, 780610, 950262,
- 321586, -1130650, 505732, 617938, 450435, -384936, 542240, 404801, 10201, -236223,
- -787590, 85899, 84826, 624918, 476205, 312459, 308164, -396211, 70867, 442919,
- 100932, -365609, 6442, 243739, -17180, 95026, -290447, -270046, -105764, 106837,
- -28991, 93952, -2684, 35433, -35433, -1074, 4832, 105227, 5369, 26307,
- -62814, 140123, 103079, -143881, -57445, -34897, 17717, 141734, -34897, 22012,
- -102005, -53150, 49392, 47782, -78920, -64961, -8590, 59593, -51003, -3758,
- 28454, 59056, -3758, -27917, -10737, -27380,
- },
- {
- -148713, 785979, 330712, 868120, -426812, 249108, 68719, -102005, -474057, 63351,
- -134755, 1081795, 323196, 397284, -13785234, 530965, 1913408, -2142115, 2481954, 1472637,
- -314069, 199179, 505196, 731755, -1188632, -431644, -548145, 238371, 338229, -1192390,
- 1349694, -1123134, 268435, 558883, -512175, -98784, 281857, -347355, 347892, -339302,
- 250182, 776852, -248034, -258772, 90731, 63888, 192737, -21475, -122943, 9664,
- 46708, -179852, -173946, 100932, 59593, 76236, -62814, -16643, 249645, 231928,
- 13422, -311922, 59056, -4295, -35970, -25770, 79457, 17180, -1611, -15032,
- -126702, 17180, 82678, 1074, 5369, -64425, -22549, 100932, 34360, 82678,
- 6979, -103616, -24696, 67109, -50466, 25770, 7516, 59593, -16643, 105227,
- -11274, -25233, -32749, 55298, -20938, -60130,
- },
- {
- 1141388, 8228084, -1695975, 1378685, 785442, 392453, -1360431, 574452, 834834, 1718524,
- -315680, -164819, -802622, -1557463, 5421323, -835908, -1852205, 773094, -407485, 558346,
- -649614, -96100, 635655, -229244, -976568, 751619, -1289027, -183073, -139050, 10737,
- 379031, 331786, -725313, 636192, -19327, -256087, 21475, 222265, -446677, -205085,
- 19864, 381715, -194884, 215285, 296353, 256087, 57982, 388158, -361851, -113280,
- 276489, -163746, -139586, -308701, 138513, -259846, 142271, 281320, -82678, 18790,
- 89121, 20401, 537, 52613, 23622, 63888, 37581, 61203, -11811, 10737,
- -32749, 47782, 164283, 28454, -217433, 90731, -65498, 69793, 42413, 50466,
- 49929, 63888, 537, 34360, 45097, -13959, -12348, -28454, -47245, 38118,
- -25770, 22549, 49392, 13422, 2147, -18790,
- },
- },
- {
- {
- -472446, -16684874, -121870, 15032, -488016, -487479, 35433, -447213, -3758, 14496,
- 869194, 292058, 1195075, 33286, 1776506, -161598, 466541, 4832, 1207423, -457951,
- 1889249, -378494, 49929, 1354525, 853625, 1701344, 431107, -163209, -296890, -565862,
- -1615982, -913754, -551366, 255551, 471910, 704912, -966368, 614180, -1342177, 98247,
- 327491, -193810, 229244, 463856, 521302, -12348, 132070, -183610, -223338, 260919,
- 187368, -106300, -107911, -17717, -172336, -155156, -62814, 55835, 2684, 110595,
- 98247, 139586, -102005, -158377, -117038, 6442, -32212, 3221, 147103, -164283,
- -89657, 62277, 84826, 105227, 209380, -5369, 20401, 15032, -2684, 4832,
- 8590, 57445, 38655, 23622, -82678, -19327, 22012, -42950, -7516, -35433,
- 48855, -9127, -31675, 0, -26307, 9664,
- },
- {
- 7346542, -47131896, -502511, -3100430, -241592, 314606, -401579, -176094, -650688, 813896,
- 107374, 552977, -257161, -206158, -761820, -117038, 297963, -806917, -969052, -87510,
- 81604, -479426, -236223, 631360, 570694, 258235, -174483, 670015, 795643, 171799,
- 724239, -57445, -870268, -503585, 557272, 113280, 687195, -283468, 202400, -311385,
- 259309, -216359, 107374, -17717, 325881, -174483, -42950, -197032, 20401, 28454,
- -118648, 378494, -8053, 39728, -88584, -155156, -214212, -192737, 201327, 127238,
- 70330, -156229, -122943, 48318, -37044, 77309, 23085, -146029, 12885, 74088,
- -97174, -47245, 3758, -51540, -107911, -17180, -56908, -2147, -59056, 114354,
- 63888, -112206, -9127, 26307, -46708, -126702, 43487, 5906, 2684, 8590,
- 7516, 35433, 15032, -20401, -17717, -7516,
- },
- {
- 2173790, -33772940, -9757092, 1453310, -925029, 557272, 346819, -219580, -417149, -717260,
- -482110, -609885, 391379, 1484448, 2417530, -775778, 2539400, -121870, 1060857, 161061,
- 1359894, -20401, 279710, -826244, -135291, 402653, 170188, -108448, -544924, -768799,
- 572304, 744103, 39192, 65498, -685584, -463320, 694711, -527207, -284542, 366146,
- -461709, 918586, -392990, 117575, 123480, -563178, 91805, 164283, 512175, -148713,
- -222265, -127238, -5369, -3221, -140123, 69793, 166967, 14496, 280247, 165356,
- 91805, 252866, -197032, -6442, 40265, 58519, -118112, 140660, 108985, -92342,
- -12348, 15032, -6442, 33823, -6979, -35433, -8590, -11274, -61203, -4295,
- -55835, -50466, 38655, -85899, -34360, 75162, 5906, 6442, 13959, -25770,
- -11811, -7516, 5369, -27380, 8590, 18790,
- },
- {
- 331786, 3152506, -751082, 566399, -136365, -85899, 67646, 169114, 52076, -229244,
- -264677, -524523, -327491, -907312, -1050120, -1351841, 1326608, 1851131, 1882269, 1036698,
- -53687, -280784, -604517, -304943, -579821, 729608, 770410, -381715, 390842, -43487,
- -780073, 729071, 29528, -88584, -130997, 590021, 12885, 363998, 175020, 191126,
- 56371, -6979, -201327, -354335, -19864, 158914, -70867, -68183, 344134, -17717,
- -149250, -48318, 105227, 112206, 9127, 150861, -47245, 125091, 63351, -10201,
- -198105, 87510, 142271, 71941, 30065, -62814, -9127, 102542, -16643, -81604,
- -112743, 78383, -8053, -32212, -24159, -2147, 131533, 30602, -21475, -28454,
- -62277, -6442, -51540, -6442, 1074, -39728, 43487, 32212, 32749, 1074,
- 16106, 30065, 15032, -31139, 6979, 10737,
- },
- {
- 7850127, -12444668, -2153389, -86973, 423591, -353798, -697932, -104153, 235149, -294205,
- 1130113, 1366873, -110595, 11274, 521839, -482647, -98247, 4262755, 1006633, 576599,
- 1001264, -56908, 178241, -176631, 111132, 33823, -234613, -3758, -428423, 26844,
- 371515, 126165, 89121, 144955, -96100, -209917, -688805, 612033, 265214, -311385,
- 89121, 108448, 82678, -523449, 27380, 262530, -120259, 63351, 189515, -133681,
- 203474, 76773, -226023, -187368, -380105, -278636, -479426, -59056, 163746, -37044,
- 79994, 98784, -94489, -55835, -69793, 129386, -9127, -148713, 151398, 5369,
- -31675, -64425, -41339, 93952, -9127, -128849, 68183, -13422, 51540, 68719,
- 10737, -25233, 16643, -68719, 25233, -56371, 36507, 48855, -62814, 14496,
- -21475, 21475, 25770, -28991, 18254, 14496,
- },
- {
- 55835, 2416456, 1479079, -532576, 136902, -89657, 89121, -192200, 252866, -13422,
- -180926, -134218, 129386, 1071594, -617938, -197032, -157303, 36507, 545461, -8507256,
- -984084, -1458141, -326954, -1166621, 1021129, -123480, -206158, -926639, -39728, 1744831,
- 1218160, -562641, 93952, 437550, 297963, -745177, -293668, -141197, -431107, -228707,
- 129386, 153008, 297963, -31675, -171262, -48855, -295816, -120259, -73551, -297427,
- 129923, 57982, -117575, 165893, -98784, -235149, -86973, -37044, 5906, -209380,
- 4832, 53150, -24159, 37581, 62814, 39728, 79994, -3221, 76773, -37044,
- 163209, 50466, -59056, -35970, 18790, 106300, 57982, 119722, -45097, -41339,
- 43487, -7516, -64961, -32749, 62277, 9127, 31675, -54224, 15032, 49392,
- -40802, -10737, 71941, -27380, -19864, 16106,
- },
- {
- 3662533, -61799212, -3737695, 1961726, 45097, 526670, 169114, -296353, -248034, -506806,
- 642098, 156766, 501974, 200253, 373662, 188442, 482110, -353261, -228170, -148713,
- -76236, -252329, -96637, -293132, 271657, 5369, -50466, 296890, -89657, 473520,
- 491237, 99858, 368830, -360777, 42413, -469762, -218506, -848256, 957241, -17180,
- -119722, 83752, -693100, 259309, 49392, 68719, -105764, -100932, 77846, -165356,
- 22549, -93952, 74088, -154619, 123480, 89121, 143345, 172872, 40802, 77846,
- -106300, -107911, 7516, 102542, 28454, 55298, 86973, -84826, -68719, 53687,
- -31139, -16106, 125091, -56908, -74088, -20938, 119722, -20401, 28991, 66035,
- -84826, -29528, 62814, 4832, -27380, 83752, 73551, -37581, -42413, -33823,
- 28454, -35970, -30065, 20938, 27917, -13959,
- },
- {
- -147640, 362925, -520765, 460098, -198105, 85362, 103079, -127775, 252329, -12348,
- -330712, -533113, 470299, -1086090, -8592082, -2169495, -1726040, 331786, -383326, 349503,
- -1866700, 296353, 455803, 118112, -102542, -3349001, -285615, -370978, -1374926, -468688,
- -41876, 435402, 38655, 83215, 537, 108985, -44023, 242129, -160524, 353798,
- -124554, -256087, -284005, 10201, -13959, 92342, -62814, -352724, -230854, 171799,
- 112743, -139586, 17717, 105227, 9127, -73014, 141197, 77846, -278636, 139586,
- 45634, 46708, -41339, 5369, 5369, -48855, 85899, 75162, -75699, 28991,
- -5906, -26307, -42413, 48855, 70330, 35433, 123480, 55835, -24159, 51540,
- -78383, -25770, 3758, 24696, 54761, 6979, 34897, -26844, -12885, 55298,
- -48855, -2147, 17180, 6442, -35433, -28454,
- },
- {
- 4150012, 42169064, 2462090, 778463, 77846, 272730, -361314, -585189, 368293, 551366,
- -214212, -364535, -1215476, 667331, 1025423, 664646, 971200, 80531, 69256, 264141,
- 354335, -61203, 280784, 399969, -466541, -348966, 348429, -86973, -758062, -151934,
- 442919, 47782, -433255, 339302, 234613, 321586, 113817, -127775, 21475, -911070,
- -1047435, -483721, -179852, 518080, 82141, 148713, 247497, 13422, 325344, -163746,
- 37581, -15569, -124554, -121870, -360240, -217970, 188979, 45097, 106300, 77846,
- 128849, -111669, 17180, -107374, -169114, -5906, 27917, -215285, -10737, 165893,
- 28991, -97174, -26844, 37581, 96637, -97711, 49392, 19864, -53150, 36507,
- 25233, -8590, -33823, 8590, -78383, 5369, 77309, 53150, -3221, -76236,
- -62277, 25233, -15032, 59056, -2147, -2147,
- },
- {
- 321049, 763967, 1707250, 782758, -1048509, 1413581, 76773, 357019, -352724, -386010,
- -477278, 30602, 143345, 725313, 652835, 1807108, 597537, 471910, 2776696, 231391,
- -1059246, 34360, 858457, 679142, 222801, -346819, 461709, 429497, -302795, 303869,
- -945967, 366146, 583042, -636192, 534723, 445066, 101469, -41339, 29528, -164819,
- 302258, 243203, -20938, -17717, 571768, -91805, -217970, 121870, -104153, 228170,
- -205085, -141734, 351114, -210453, -288300, 91805, 210453, -56908, -49392, 31675,
- -176631, 61203, 62814, 11811, -21475, -87510, 129386, 38655, 173409, -34360,
- -62814, -51003, -120796, 119185, 10201, -12885, 37044, -21475, -24696, -4295,
- 28991, -1074, 14496, 6442, 42413, 5906, -53150, 17180, -24159, 15032,
- -4295, 9127, -54761, -7516, 31139, 19327,
- },
- {
- -4059818, 17285632, 5603322, 1171452, 82678, -2122788, -2543158, -1470489, 288300, 1138166,
- 103616, 396211, 20401, 684510, 388695, -212601, -1334124, -526134, 501974, 489089,
- -364535, 513249, -287226, -472983, -796180, -276489, -198642, -157303, 289910, 511101,
- -55298, -100932, 37044, -175020, -112206, -463320, 494458, 162135, -129386, -140660,
- -174483, -52076, -208843, -380641, 53687, 401579, 175557, 33823, -208306, 163746,
- 357019, -60666, -158914, -85362, -193274, -153008, -48855, 87510, -99321, 67646,
- -4832, -98247, -92879, 39192, 51540, -88584, 75162, -33286, 13959, -91268,
- 46708, 9664, -10201, -1074, -8053, 64425, -46171, -64425, -15569, 6979,
- 7516, 39192, -50466, 55298, -22549, 49392, 48318, 18254, -23622, 537,
- 10737, -8590, -33286, 10201, 33823, 20938,
- },
- {
- -343597, 2083596, 1273995, -759672, 351650, -584652, 50466, -28454, -37581, -416075,
- -445066, 58519, 1561758, 2954401, -1202591, 1876364, -59593, 102005, 748398, 404801,
- 1832877, 1241782, 24696, 275952, -1098438, -1133335, -278636, -292058, 655519, 596464,
- -862215, 596464, -173409, 227633, -239444, 71941, -329102, 164819, 162135, 257698,
- 184147, 111669, 357019, 347892, 3758, 228170, 53150, 257161, 103079, 453119,
- 197569, -131533, 81604, 186831, -75699, -227096, -416612, -210990, -25233, 157303,
- 113280, 90194, -110595, -142808, 58519, 30602, -190052, 8053, -41339, 3221,
- 115427, 21475, -13959, 59593, 27380, 59593, -49929, -54224, 4295, -39192,
- 14496, -18790, -32749, 54761, 22012, 17717, 26844, 15032, -5906, 20938,
- 11811, 39192, -13959, -24159, 19327, 1611,
- },
- {
- 927176, 1928440, -157840, 811212, -550830, 962610, 172872, 897111, 176631, 62277,
- 577673, -25770, -299037, -4615479, -2105608, 412317, -121333, 98784, -314069, 1294396,
- -296890, -111132, -176094, -121870, 777926, 1005022, 1244467, -427886, 986769, 878858,
- -1611, -539018, 108448, 513785, 321586, 557272, -359704, 401043, 212064, -283468,
- -437550, -178778, 214748, 186831, -179852, 110059, 22549, -209917, -99858, 95026,
- 199179, 61740, -80531, 342524, 97711, 83215, -62814, -264677, -267899, 193810,
- 33823, 25770, -68719, 115427, -87510, -158914, 18254, 52076, 73551, -23622,
- -45097, 82678, 117038, 12885, 22549, -6442, -88047, 158914, 63888, 55298,
- -73014, -136902, -9127, 67109, 13422, -66572, -47782, -62814, -54224, -39192,
- 31139, 17717, 48855, 7516, 15569, 7516,
- },
- {
- -24159, 1112933, -1531156, 357556, 354872, -244813, -70330, 243203, 86436, -658741,
- -246424, 852551, 800475, -6505265, 2361695, -3828963, 1920387, -539018, 316217, 2236067,
- 1205275, 250182, 1385127, 502511, -1639067, 1140314, -1187559, 158914, 77309, 682900,
- -769336, -251256, -236223, 446140, -1111323, -395674, 160524, -220654, 511638, -352724,
- 76773, 528818, 113280, -86973, -77846, 192737, 86436, -119722, -54224, -112743,
- 167504, 6979, -126165, -141197, 188979, -158914, -1611, 63351, 162135, 123480,
- -33286, 13422, -117575, 10737, 114890, -24696, 114354, 85362, -10737, -8590,
- -71404, -5906, 130460, -107374, -32749, 45634, -32212, 74625, 27380, 17180,
- 69256, -66035, -115964, 39728, -51003, -24696, -2684, 51003, -42950, 31675,
- 46171, 33823, -26307, 42413, 4295, -55835,
- },
- {
- 1478006, 7473780, 580894, -2019708, 843424, 1438814, -278636, 748935, 862215, 404801,
- 1227824, -712428, -164283, 2342368, -536334, -642635, 534187, 1127429, -999117, 393526,
- -753767, 319975, 261456, 419296, -635655, -507343, -580894, 418759, -380641, 386010,
- 55835, 411243, -341987, 117038, 422517, -391379, -494458, 151398, -421981, 141197,
- 268972, -67646, -114890, 49929, 522375, 174483, 150324, 104153, 69793, -303332,
- 98784, 176094, -53687, -160524, 6979, -75699, -57982, 54761, 71404, 155693,
- -53150, -75162, -70867, 131533, 63351, -13422, 70867, -90731, -6979, 22012,
- -9664, -35970, 98784, 98247, 35433, -66035, -95563, 105764, 24159, 15569,
- 59593, 112206, 15569, 13959, 30602, 26307, -7516, 4832, 2147, -37044,
- 42950, -3758, 39728, 42950, 16643, -21475,
- },
- },
- {
- {
- 179315, -13596256, 3178276, 665720, -246961, -12348, 334471, -18790, 635118, -180926,
- 439160, -914828, 375810, -221191, 256624, -1592359, -69793, 367757, 332323, -637266,
- 1525787, -547071, -22549, 920734, 580357, 649077, 433255, 956704, 699543, 348429,
- 162135, 305480, 363462, -365072, -551366, -559956, -844498, 976568, -1064078, 206695,
- -40802, -336081, 16106, 284005, -79994, 31675, 153008, -177167, 58519, 144418,
- -163209, -176094, -25770, -186294, 44560, 71941, 2147, 113280, -84826, 37581,
- -105227, 89121, 97711, 34897, -12348, 82678, 46171, 1074, 42413, -45097,
- -30602, -30065, 105227, -27380, 111669, -115964, 38118, 5369, 32212, 63888,
- 10737, -5369, 8590, 37044, 30065, 15569, -1074, -22012, 13422, -19864,
- -40802, 22549, -30602, 46171, 10737, -24696,
- },
- {
- -5052492, -44794900, 12407087, -2685428, -956704, -548145, 27917, 398358, -1330366, 649077,
- 97711, -79457, 299037, -109522, -1100049, -184147, -626528, -81604, 1024887, -347892,
- 60666, -179315, -322123, 281320, 86436, 344134, -135828, 241592, 270583, -369367,
- 12885, -19327, -148713, 128849, 3758, -513785, 226023, 55835, 223338, -591095,
- 177704, 201327, 392990, -255551, -97174, 170188, -399969, 40802, -110059, -177704,
- -399432, -146566, 13959, 95026, -70867, 76773, -88047, 66572, 93416, 31139,
- 15569, 13959, -42950, 146029, 93416, 73014, -93952, -139586, -68719, 97711,
- -60130, 26844, -17180, 26307, -11811, -122407, 35433, 27917, -37581, 10201,
- 22012, 9127, -24159, 24159, 28454, 27917, -72478, 61203, -35433, 10737,
- -15569, 8590, -9127, 28454, -24696, 22549,
- },
- {
- -1740536, -11530377, 8150774, 2063732, 2095407, 194347, -71404, 155156, 135828, 325344,
- -244813, -651761, -110059, -136902, 2330020, -164283, 1021665, -1541893, 1386201, -575526,
- 1073742, 514859, 758062, -467078, -685047, -25770, 312996, 763430, 207769, -144418,
- 286689, 452045, 112743, 489089, -555661, -391916, 673236, -370441, 331249, 814433,
- -858457, 934692, -206158, 299037, 186831, -388158, -149250, -103616, 164283, 34360,
- -52613, -310311, -5369, -93416, -132607, 70330, -74088, -12885, 153545, 70867,
- -104690, 57445, -85362, 119722, -113280, -63888, -195958, 62277, 85362, -52076,
- 16106, -15032, 26844, -6442, 73014, -8590, -11811, 0, 11274, -28991,
- -55298, -35433, -19864, 36507, -48318, -13959, 20938, -28454, -10201, 13422,
- -48855, 9664, -4832, 20938, -16643, -26844,
- },
- {
- -165356, 4019553, -29528, 271657, 222265, -54224, -40265, -42950, 15569, 144418,
- 255014, -23085, -400506, -593242, 2907693, -1003949, -2258079, 212064, 824097, 16643,
- 432718, -100932, -530428, 422517, -432181, -354872, -1109712, -756451, 86436, -122407,
- -1196148, 578747, 357556, 407485, -293132, 288300, 760746, 228170, -190052, 372052,
- -69793, -76236, 14496, -148713, 7516, 15032, -81604, -185220, 161598, 122407,
- 1611, -211527, 60130, 47782, -128849, 223338, -122943, -170188, 156766, 76773,
- -175020, -63351, 79457, -89121, -24159, 40265, 3221, 87510, -32749, 40265,
- -45634, -73014, -29528, -27380, 62277, -70330, 23085, 22012, 61203, -6442,
- -8053, -10737, 35970, -16643, 34360, -11811, -30065, -5906, 27380, -2684,
- -28454, -25233, 16643, 20401, -2147, 15569,
- },
- {
- -2039573, -21590800, 907849, -1332514, -265214, 148176, -311385, -463320, 375810, 11274,
- 1074, 945430, -247497, 547071, 382252, -756451, 534187, 3183645, -372052, -5906,
- 63351, -209917, 468151, 462783, -475131, 606127, -137976, 312459, -757525, -86436,
- -147640, -302258, -432181, 221191, 60130, -6979, -1004486, -728534, -186294, 128849,
- 3221, -96100, 91805, -252866, -149250, -148713, -75699, 67109, 62814, -177704,
- -146566, -111132, 279710, -56371, -59056, 47245, 41339, -75699, -81604, -182536,
- 50466, 67109, -64961, 99321, 60130, 15032, -33823, -138513, 89657, 3221,
- 16106, 5369, -139586, -68719, -8053, -7516, 13959, 74625, -7516, -44560,
- -2684, 30065, 537, 45634, 1074, -87510, 19864, 1611, -11274, -9127,
- 4295, 8590, 22012, -16643, -26844, -18254,
- },
- {
- -281320, -2332704, 457951, 82141, 74625, -186831, -70330, -197569, 134218, -31139,
- 241055, 115964, 470299, 133144, -1551020, 483184, 854162, -139586, 1808181, -5352603,
- 184147, -737124, 1058173, 73014, 173946, -672162, 330712, -797790, -864362, 1261110,
- 1405528, -92879, -206695, 12885, 440234, -252866, -31139, 193274, -228707, 16106,
- -222265, 523449, 431107, 76236, 137439, -103616, -137439, -47245, -37581, -318901,
- -153545, -38118, -164283, -137976, -255551, -52613, 130997, 25770, 170725, -26307,
- 22549, -32212, -59056, 42413, -34360, -11274, 11811, -137976, 49392, -72478,
- 19864, 74088, 53687, -7516, -66572, 5906, -23085, 147103, -52613, 35433,
- 6442, 84826, 30602, -20938, -55298, -1611, 35433, -48318, 10201, 65498,
- -10737, -57982, -8053, 25233, 27917, 54761,
- },
- {
- 2899103, -49258980, 6185827, 1569274, -470299, 432718, 26307, 347892, 481036, -558883,
- 127775, -7516, -5369, -328028, -2147, 401043, 338229, -280247, 834834, -317828,
- -309238, -343597, -3758, -76773, 257698, -20401, -173946, 453119, -214748, 146566,
- 280247, -138513, 349503, -338766, -21475, -10201, 108448, -880468, 398358, -261456,
- 201327, 583042, -254477, 9127, 146566, 181999, 60666, -48318, -80531, -136902,
- -171262, -125628, -148713, -4295, 47782, -16643, 34360, 35433, -64425, 24159,
- 5369, 42413, -22549, -11811, -125628, -24159, 33823, 9664, -83752, 3758,
- 146029, -85899, -90731, 56908, 37044, -80531, 22012, 9664, -37044, -26844,
- 47782, -20938, 37044, 60130, 4832, -52613, 26307, 5906, -16643, -35970,
- -3221, 21475, -37581, 2147, -8053, -2684,
- },
- {
- -340376, 538482, 976031, -111669, 103616, 52613, -6979, -267899, -22012, 158377,
- 249645, 46708, 826244, -25770, -5779416, 11274, -534187, -580357, 51540, 1206886,
- -1065152, -325881, 1140851, 1304596, 745714, -1329292, 677531, 256624, -503048, -457414,
- 418759, 69256, -337155, 59593, -112743, -4832, 119185, 186831, -421444, 548682,
- -129386, -61203, 146029, 42950, -310311, 45634, -13422, 241592, -403727, -250719,
- 122943, -82141, -186294, -128849, 183073, 62277, -48855, 9664, -24696, 22012,
- -121870, -93416, 18254, 73551, 43487, -173409, -115427, 62277, 91805, 28991,
- -23622, 21475, -69793, -52613, 53687, -1074, 9664, 51003, 23622, 6979,
- 44560, 28454, -11811, -70330, -50466, 537, -11811, 33286, -19327, 15032,
- 13422, -10737, 17717, 35433, 4832, 8590,
- },
- {
- -3262028, 29291676, -1306744, -616865, -266288, 180389, 270046, 444529, -520765, 222265,
- 1233193, -106837, -651224, -948651, 652298, -755914, 55835, -212601, -69256, -111669,
- -186294, -53150, -513249, 236223, 273804, -326418, 450435, 99321, -304943, -117038,
- -170725, 306016, 37044, 450972, 122943, -75699, -309238, -393526, 184147, -353798,
- -229781, 421444, -17180, 16643, -5906, -173946, 123480, 177704, 86973, -620086,
- -104153, 111669, -115427, 134218, 290984, 1074, -75162, -162672, 169651, -91268,
- 14496, -14496, -2147, 49929, -4832, -128312, 24159, 35433, 21475, 39728,
- 53687, -6979, -2684, 68183, 41876, -15569, -85899, 40802, -48318, 55298,
- -68183, 32212, 2147, 8053, -25770, -30602, -17717, 41339, 39192, -19327,
- 18790, 38655, -11274, -24696, 38655, 7516,
- },
- {
- -275415, 2723546, 712428, 150861, -453119, -179315, 508417, 603980, -536871, -181462,
- -274878, 402116, -757525, -1200980, -559420, 2063732, 596464, -1896765, 565325, 621697,
- -760746, -63888, -269509, 250182, 663036, 237834, 316754, 482647, -399432, -300111,
- 26307, -449898, 206158, -461172, -44023, -75699, 86973, 41876, 366683, -132607,
- 278636, 265214, 118112, -80531, -178778, 168041, 8590, 248034, -297963, -58519,
- 123480, 22549, 210990, -52076, -18254, -195958, 98784, -105227, -28991, 78383,
- -67646, 71941, 45634, -93416, -31675, -212064, -20938, -38655, 155156, 137439,
- -69256, 19327, -31675, -42413, -10737, 53687, -8590, -41339, -1611, -13422,
- -4295, -31139, 15032, 1611, -12348, 48855, -6442, 6442, -10201, -40265,
- 32749, -1074, -17180, -22012, 10201, 51540,
- },
- {
- 2289755, 22247930, 2302103, 2000918, -813359, 1503775, 5377299, -853625, -278636, -445066,
- -210453, -33823, -62277, -203474, 273804, 440234, -736050, -746787, -394600, -351650,
- 88047, -155693, 154082, -216896, -299037, 68719, -194884, -392990, -336618, 258772,
- -3758, -30065, -37044, -302258, -161061, 95563, -269509, 6442, 23085, -111669,
- -113280, 284005, -285615, -224949, -27380, -72478, 9664, 169651, -23622, -63888,
- 243739, -22549, -82678, 193810, 27380, -44560, -297427, -30602, 63351, 91268,
- -537, 12885, 9127, -24696, -49929, -8053, 3758, -51003, -31139, -26307,
- 41339, -29528, -47245, 15032, 56371, 13959, 70867, 45097, -61740, 92879,
- -59056, -3758, 15032, -67109, 6442, -27380, 75162, -7516, 24159, -9664,
- -25770, 2147, 11811, -6979, -46171, 31675,
- },
- {
- 346819, -323196, -1114544, 86436, 188979, 125091, -50466, -365609, 47245, 82141,
- 133681, 358093, -2680597, -1316944, 340913, 454193, -1413044, -285078, 68719, -415001,
- 794569, -1735704, -215285, 216896, 231391, -457414, -729608, -239444, -55298, 540629,
- 387084, -158914, -61203, 139050, -237297, -22549, -552440, -357019, 652835, -3758,
- 71404, 83752, -199716, 66572, -23622, -122407, -45634, 141734, 88584, 38655,
- 74088, -120259, -207232, 93952, -54761, 165356, 26844, -12348, -183073, 10737,
- -159988, 27380, 69793, -9664, -131533, -92342, 113817, -37044, -6979, -43487,
- 99321, 30602, -95563, 28991, -26844, -16643, 51003, 63351, 9127, 11274,
- -61203, 41876, 17717, -13959, -15569, 8053, 22012, -30602, -37044, 2684,
- -7516, 17180, 20401, 21475, -22012, 1611,
- },
- {
- 139586, 1075889, -1863479, 2309082, -1351841, 916439, 2195265, 615791, 494995, -609885,
- 38118, 134755, 926102, -2069637, -1846836, 830539, -774168, 0, 65498, 12885,
- 463856, -3758, 226023, 345745, 734976, 75162, 582505, -452045, 739808, 633508,
- -350040, -386547, -12885, 278636, -267362, 299037, -95026, 256087, -259309, 417686,
- 122943, 154082, 86436, 48318, -443455, -161061, -212064, 177704, -382789, -170725,
- 177704, 223338, 55298, 24696, 60666, 155693, 68183, 96100, -41876, 36507,
- 87510, -71404, 39728, 73551, -36507, -64425, 4295, -6442, -99321, -5906,
- 73014, -23085, 10201, 85899, 55835, -14496, -45634, -15032, 63888, 13959,
- 102542, -89121, -71404, -31675, 33823, 92879, 3221, -87510, 9664, -30602,
- -4295, -20401, -13422, 47782, 537, 2147,
- },
- {
- 134755, 3152506, -518617, -906238, -206695, -206158, -144955, -115427, 561567, -13959,
- -139586, 758599, -455803, -1827509, 17723720, -733366, -448824, -1322850, -848793, 1262720,
- 777389, 419833, 918049, 103616, -1040993, 572841, 84826, 499290, 289373, 1533840,
- -543850, 447750, -464930, -103079, 6442, -42950, 16106, -238371, -15569, -197569,
- -209917, 161061, 73551, -172872, -119722, 98247, -363462, -89121, -52613, -34897,
- -129923, 159988, 59056, -129923, 143881, -197569, -97174, 1074, -5369, -56371,
- -42413, 280784, -102005, -42950, 75699, 140660, -53150, -83752, 30065, 23085,
- 75699, 37581, 1074, -55298, -21475, 34897, 54761, -100395, -27380, -122407,
- -6442, 77846, -76773, 17717, 26844, -39728, -55835, -37044, 23622, -54224,
- -17717, 55835, 34360, -7516, 6442, 27380,
- },
- {
- -2084670, 4294431, 2076617, -1204738, -229781, -319975, 543313, 26844, -241592, 122943,
- 112206, 308701, 869194, 200253, -4235912, 111132, 1580011, 718870, -336618, 480499,
- -776315, -190589, -283468, 183073, 302795, -421981, -504659, 853088, 75699, 701690,
- -236760, 47782, 87510, -226023, 197569, -107911, -334471, -242129, -245887, 273804,
- 284005, 108985, 149250, 61203, 186831, 160524, -26307, -108448, 207769, -168041,
- -9664, -46708, 44023, 207232, 145492, 194884, -23085, -99321, 121870, 120796,
- -11811, 1611, -183073, -46171, 38118, -2147, 8590, -127238, 28991, -45097,
- 80531, -55835, -132070, -17717, 135291, 26844, -70330, 51540, -15032, -10737,
- -13422, -23622, -8053, 1611, 537, 24159, 6979, -63888, 98784, -59056,
- 52613, 22012, -10737, 10737, -5369, 20938,
- },
- },
- {
- {
- -178241, -5960341, -2399813, 966368, 411243, -56908, 141197, 311385, 105764, 223338,
- 19327, -97711, -431644, -464930, -358093, -16106, 174483, -527744, -477815, -445603,
- 990527, -439160, 65498, 541166, 575526, 832150, 507880, 656056, 458488, 486405,
- 187905, 922344, -128312, -763967, -57982, -1326071, -186831, 203474, 38655, 380105,
- -68183, -88584, -35433, 161061, -113280, 173946, 33286, -2684, 129923, -226560,
- -52076, -312996, -83215, -143881, -79457, 153008, 122943, 168577, 16106, -9127,
- -71941, -95563, 134755, 135828, -5906, -1074, -18790, -9127, -55835, -12885,
- -3758, 1611, 75699, 4832, -39728, -78920, 47245, 12885, -24159, 26307,
- -12348, 5369, -38655, -6979, 27380, 26844, -3221, -8053, 537, 48318,
- -60130, -15569, 20938, 27380, 20401, -2147,
- },
- {
- 4722854, -21990770, -15597711, -1127966, -155156, -454193, 18790, 510027, -62814, -134755,
- -176631, -236223, 379031, 858457, -1047435, -161061, -93416, 220654, 773631, -552440,
- 37044, -112206, -127238, 76773, 101469, -56908, -59593, 496069, -258772, 186831,
- -308701, 223875, -321586, 500901, -566399, 57982, -597000, 423054, 300111, -425739,
- 56371, 340913, 164819, -62814, -233539, 178778, -23085, -155156, 185220, -291521,
- -77846, -446140, -228170, -60130, -8590, 35970, -5369, 78920, -66035, -69793,
- -65498, 55835, 31139, 44560, 122943, 70330, -22012, -148176, -79457, -69256,
- -11811, 71941, -15569, -3221, 42950, -38655, -23085, 53687, 21475, -58519,
- -6979, 36507, -20938, -17180, 21475, 84826, -22549, 3221, -23622, -9664,
- -2147, -17180, -5369, 11274, -6979, 17717,
- },
- {
- 2342905, 6179921, -5423470, -194347, 368293, 102542, -205085, 29528, 367757, 595927,
- -77309, -343061, -213138, 42413, 2522220, 192200, -1107565, 699006, 540092, -463856,
- 491774, 541703, -69793, 284542, -73551, -256087, 28454, 275952, 528281, 191126,
- 178778, 315680, 217970, 248034, 25233, -12348, 385473, -336081, 236760, 391916,
- -209380, 312459, 119185, -173946, 90194, -72478, -172872, -184147, -351650, 62277,
- 223875, -167504, -15569, -154082, 20401, -42413, -234076, -44023, 32749, 18790,
- -1611, -117038, -23085, -68183, -153008, -125091, -115964, -22549, 97711, -15032,
- -58519, -16643, 52613, -24696, 18254, 11274, 12348, 9664, 44560, -55298,
- 14496, -23622, -61203, 10201, 44560, -29528, 13422, 22549, -22012, 32749,
- -20401, -22549, -26307, 18790, -17717, -28454,
- },
- {
- 181999, 4667556, -32749, -306016, 134755, 82678, -110595, -90731, -72478, 249645,
- 321049, 230854, -184684, 688269, 3381213, -1168768, -2251637, 202400, 176631, 363462,
- 680215, 113280, 118648, -209380, -254477, 191126, -1487132, -1242319, -185757, 169114,
- -1430761, 317291, 738198, 247497, -23622, 581968, 462783, 47245, -172872, 75699,
- -104153, -108448, 66035, -30065, 107374, -267899, -127775, 123480, -173946, 4832,
- 111132, -89657, -71404, 133144, -176631, -17180, 68719, -151934, 75699, 106837,
- 1611, -63351, 69256, -126702, -62814, 107374, -5369, 1074, -15569, 46708,
- 45634, -43487, 32212, -21475, 59593, -9127, -67646, -38118, 56371, -1074,
- 28454, -22012, 24159, -5906, -1074, 40265, -23622, -10737, -9664, -11274,
- -15032, -27917, -25233, 22549, -9664, -14496,
- },
- {
- -2083059, -18389976, -19864, -1392643, 292058, -86436, 41876, -348429, 145492, 423054,
- -474594, -236760, 334471, 899259, -444529, 397821, 250182, 2935073, 397284, -57445,
- -258235, -154082, 482647, 207769, 266825, 89121, 173946, 100395, -50466, -395137,
- -571768, -347892, -375273, 185757, 190052, -264677, -252866, -476205, -175020, 360777,
- 21475, -146566, -61740, -64961, -122407, -394600, -117038, 57982, -57445, 0,
- -222265, -158377, 61203, -34897, 85899, -47782, 200253, 42950, -172872, 33286,
- 21475, -38655, -77846, 61740, 55298, -76236, -11274, 37044, -6442, 1074,
- -27380, 47245, 4832, -96637, -31139, 74625, -86973, 88047, -8053, -64425,
- -32749, 32749, -42413, 68719, -7516, -33823, 4832, -36507, 37044, 16643,
- 12885, 6442, 11274, 0, -22012, -12348,
- },
- {
- -161061, -3878356, 265214, 394063, 11811, -30602, -223338, -104153, -73014, 64425,
- 162135, 365072, 582505, 1102733, -594853, 117575, -243203, 30065, 355945, -3303904,
- -636192, 755914, 409096, 1046898, 380641, -863825, 704912, -936840, -1151588, 1169842,
- 845035, 381715, -38655, -42950, 26844, 121333, 120259, -104690, -108448, 34360,
- -51003, 308701, 162135, 83752, -3758, -96100, 46171, -4295, -236223, -104690,
- -178241, -119185, -84826, -124017, -212064, -32749, 137976, 11274, 122943, 44023,
- 23085, 11811, -71941, 35970, -75699, -6979, 20401, -77846, 73551, 103079,
- -34360, -2147, 57445, 2147, -74088, -85899, -33286, 4295, 6979, 61740,
- -44560, 70867, 55298, 23622, -41876, -16643, -537, 3758, -9664, 12885,
- 33823, -18790, -56371, 11274, 40265, 26844,
- },
- {
- -4355097, -24457692, -4523675, 929860, 142271, -103616, 46708, 271120, 195421, 11274,
- -345745, 296353, 33823, -485331, -1074, 477815, -30602, -303332, 623844, 103079,
- 193810, -144955, -69793, 100395, -223875, 85362, 22012, 74088, 284542, -139050,
- 271120, -331786, -153545, 199179, -329639, -71941, 165893, -554051, -92879, 207769,
- -17717, 229781, 352187, -79457, 141197, -9127, 368293, 124017, -156766, 24696,
- -139050, -158377, -147640, 100932, 2147, -62277, -129923, 16643, -90194, -47782,
- 48318, 38118, -49392, -56371, -107374, -95563, -119722, 67646, -19864, -17717,
- 159451, 10201, -153545, 10201, 48318, -35433, -24159, 17717, -44560, -50466,
- 52076, 26307, -15569, -5369, 51003, -54761, -33823, 6442, 6442, 16106,
- -17717, 26844, 9127, 1074, -18790, 1074,
- },
- {
- 44560, -1167694, 519691, -60666, 49392, 72478, 22012, -51540, -289910, 48318,
- 469225, 469762, 481036, 555125, -2050847, -1059246, -570157, 1035624, 294205, -55298,
- 804770, 61203, 909459, 529355, -103616, 1215476, 568546, -772557, 362388, 257698,
- 292058, -322659, -207769, -204011, 228707, 40265, 38118, -29528, -405874, 404264,
- -188442, 277025, 99321, 136902, -297427, 75162, -57982, 232465, -103079, -191126,
- -147640, -74625, -111669, -119185, -28454, 97711, -77309, -153545, 125628, 76773,
- -166430, -134218, -22549, 42950, 46708, -54224, -96637, -13422, 112206, 20401,
- 18790, -27917, -16643, -62814, -11274, 14496, -28991, -18254, 32212, -20401,
- 69256, 56371, 9127, -42413, -57445, -20938, -26307, 0, -6979, -23085,
- 18790, -12348, -5369, 38655, 22012, 10737,
- },
- {
- 1471563, 21814138, 658204, -1963337, -190589, -14496, 408022, 519691, -293668, -271120,
- 813896, 447213, 134218, -1540283, 989990, -673773, -359704, 66035, -38118, -370441,
- -585726, 14496, -438624, -82678, 259846, 294205, -167504, 6442, 368830, -242129,
- -77309, -90731, 64961, 291521, 20938, -224949, 446140, -488553, -130460, -141734,
- 184684, 20938, -11811, -159451, 67646, -3758, -220117, 64425, 168041, -499290,
- -220654, 108985, 40265, 105227, 297427, 91805, -149250, -81604, 111132, 92342,
- -1074, -5906, 16106, 39728, 91805, -21475, -78920, 35970, 11811, -13959,
- 81604, 105764, -2147, 45097, -9127, 46708, -64961, -17717, -30602, 19327,
- -25770, 49929, 43487, 5369, 40802, -5906, -38655, 2147, -7516, 2147,
- 30602, 13422, 24159, -34360, 3758, 26844,
- },
- {
- 368293, 4624606, -1622961, -463856, -83752, -914828, 603980, 696858, -214748, -11811,
- -543313, 604517, -109522, -667867, -665183, -62277, 1370095, -1326608, -1644973, 651224,
- 525060, 1074, -498216, -275415, 381178, 494458, -45634, 82678, 133681, -91268,
- 22012, 34897, -270583, -413927, -6979, -344134, -370441, -153545, 206158, -160524,
- 96637, 52613, 148713, 199716, -191126, 47245, 79457, 56908, -22012, -153545,
- 31139, -31139, -79994, -24696, 169114, -30065, -40265, -3758, -104690, -49392,
- 54224, 69793, 48855, -35970, -537, -62277, -32212, -111132, -79457, 140123,
- 3221, 23622, 49392, -26307, -6442, 22012, 4295, 10201, 30065, 42413,
- 38118, -13959, -26844, -537, -47245, -6442, 47782, -1611, 9664, -25233,
- 9664, 537, -14496, -6979, -24696, 18790,
- },
- {
- -343597, 25534118, -369904, 2426120, 379031, 1231582, 4049617, 281857, -231928, -368293,
- -97711, -93416, -20401, -437550, -635118, 401579, 204011, -1121523, -98784, -483184,
- 84826, -387621, -99321, -154619, -270583, -204548, -95563, -112743, -410169, -42950,
- -156766, 146566, -11274, -103079, -85899, 82678, -68183, -297427, -73551, -85899,
- -121333, 118112, -84826, -118648, 196495, -33286, -69256, 31139, 104690, 99858,
- 30602, -13959, -40802, 198105, 100932, 57445, -147103, -93416, 15569, 93416,
- 0, 104690, -6442, 7516, -26307, -49929, 19327, -18254, -42413, 5369,
- 16106, -25770, -42413, -53687, -22549, -30602, 24696, 92879, -9127, 51003,
- -52613, -45634, 50466, -71404, 2147, -40265, -2684, 18790, 13422, -11274,
- -35433, 7516, 34897, -6442, -49392, -1611,
- },
- {
- -322123, -1656784, 547071, -58519, -28991, 158377, 47782, -146566, -191126, 242666,
- 142808, 85899, -1613834, -2299418, 1495186, -828392, -783295, -762357, -151398, 489089,
- -267899, -1502702, -1095217, 301721, -20938, 462246, -1015760, 23622, -804770, 716186,
- 579284, -208306, 180926, 358630, -337155, -214748, -241592, -153008, 102005, -147640,
- -57982, 216359, -192200, -221728, -85899, -176631, 175020, -157840, 231928, -148176,
- -132070, 33286, -88584, 3221, -11811, 92879, 176094, 222265, 1074, -18254,
- -113280, -66572, 74625, 71941, -42413, -86436, 132070, 6442, 44560, -22012,
- -46708, -16106, -61203, -77846, -17717, -51540, 20401, 78920, 31675, 19327,
- -18254, 24696, 28454, 11274, -12885, 23085, 37581, -23085, -18254, -16643,
- -9127, 8590, 6979, 19327, -27380, -1611,
- },
- {
- -23085, 2976412, 231928, -890669, -145492, -904091, 1598265, 795643, 893890, -355409,
- -832687, 79457, -1022739, 511101, -475131, 363998, -267899, -471373, 155156, -624918,
- 260382, 239981, 335007, 626528, 123480, -61203, -175020, -25233, 260919, 258235,
- -239981, -328565, 63351, 186831, -22012, -200790, 132607, 166967, -266825, 197032,
- 200790, 241055, 265751, 142808, 113817, -45634, 6979, 103079, -166430, -136365,
- 178778, -18254, 252866, -215822, -112206, 68719, 20401, 221728, 72478, -115427,
- 86436, -6979, 86973, -78383, 8053, 68719, 12885, 26307, -105764, -25233,
- 58519, 21475, -33823, -32212, 18790, 12885, -6979, -44023, -3221, -42413,
- 67109, 27380, -45097, -101469, -16643, 83215, 82678, 19864, 5369, 537,
- -5906, -19864, -44023, 2684, -17717, -28991,
- },
- {
- 90194, 2950106, 1069984, -1014149, -370441, -85899, -28454, -311385, 144418, 535797,
- 354335, 271657, -256624, 6514392, 2556043, 2766496, -2051384, -936840, -132607, -82141,
- 570694, -64961, 311922, 181462, -89121, -1117228, -223338, 852551, 127238, 1355062,
- 157303, 324807, -442382, -245350, 782758, 215822, -161598, 77846, -424665, 70867,
- -129923, -83215, -3758, -158377, -137439, 11274, -268435, -75699, -98784, 8053,
- -49929, -154619, 106300, 2147, 18790, -66035, -71941, -27917, 45634, -52076,
- -85362, 81604, 34897, -64425, 4832, 117038, -10201, -148713, 27917, -3221,
- 98784, 8590, -57982, 9664, 16106, -20938, 34360, -69793, -79457, -57445,
- -67646, 70867, 18254, -18254, 51003, 537, -18254, -27917, 28991, -31675,
- -56371, 537, 46708, -3758, -16106, 39728,
- },
- {
- 1328756, -488553, 199716, 2279554, -905701, -1163936, 212601, -511101, -44560, 295816,
- -828929, 901406, 213675, -1137093, -1715839, -292058, 1059783, -139050, 108985, 192737,
- 52613, -357556, -427349, -199716, 286152, 27380, -124017, -271120, 519691, 70330,
- 238371, -478889, 171262, -12348, 124554, 273804, -51540, -469225, 6442, 45634,
- -117575, 304943, 354335, 128849, -180389, 152471, 12348, -8053, 81604, -168041,
- -51540, -35970, -56908, 115427, 148713, 151934, 133681, -54761, 93416, 105764,
- -35970, 98784, -76773, -74088, -27380, 51540, -9664, -53150, 67646, -25233,
- 11274, 57982, -129923, -113280, 22549, 64961, 32749, -8053, -49392, 45634,
- -14496, -80531, -8590, 5369, -2684, -1611, -2147, -79457, 23622, 18254,
- 12885, 30602, 3221, -9127, -27380, 30602,
- },
- },
- {
- {
- -190589, -149250, 62814, -205622, 321049, -168577, 22012, 271657, -250182, 85362,
- -300648, 468688, -864899, -187905, 351114, -341987, 1212255, -458488, -599148, -679679,
- 937914, -98247, 108448, 130460, -301185, 258772, -13422, -272730, 411243, 780073,
- -948651, 726386, -569620, -513249, 642098, -695248, 196495, -313533, -315680, 60666,
- 32749, 149787, -67646, -33823, 15032, 190052, -104153, 133144, 192200, -201863,
- 143881, -395674, -132070, 57982, -218506, 54761, 177704, 36507, 112206, 176094,
- 128849, -84826, -37044, 81604, 69793, -22012, -120259, -19864, 53150, -25233,
- -6979, 8053, -42950, 77846, -34897, -31139, 28991, 49929, -16643, -16643,
- -26307, 56908, 7516, -23085, -64425, -15569, 32212, 10201, -30065, 13422,
- 25770, -36507, 9664, -22012, -3221, 17180,
- },
- {
- -5369246, -12867722, 947040, -1560147, 1045825, 245887, -608275, 266288, 892816, -16643,
- -94489, 406411, -295816, 832687, -205085, 315143, 930934, -60130, -577673, -265751,
- -67646, -405874, 244813, 245350, -124554, -245350, -4295, 708670, 22012, 383326,
- -238908, 338229, -566399, 100932, -107911, 190052, -672162, 121333, 58519, -140123,
- 245350, 204011, -10201, 107374, 40802, -186294, 300648, -322123, 277025, -172872,
- 185757, 64961, -144955, -154619, 11274, -38655, 75162, -101469, -100932, -34360,
- 31675, -48855, -5369, -67109, -33286, 24159, 160524, -26844, 19327, -117575,
- -33823, 15569, 32749, -38118, -61740, 104153, -58519, 11811, 44023, 42413,
- 9664, -17180, 28991, -13959, -24159, -49929, 86973, -50466, 19327, -23085,
- -9664, -6442, 26307, -23085, 7516, -20401,
- },
- {
- -2553358, 10747082, 4946192, 1449015, -1114544, -374199, 17717, -306016, 62277, -49392,
- -44560, -106837, -42413, -301185, 1515050, 172336, -676457, 1182190, -466004, -769873,
- 55298, 357019, -27917, 563178, 402653, -46708, -144955, -345745, 179852, 300648,
- 122943, -197569, -61203, 13422, 149250, -33286, 100932, -144955, 74088, -122943,
- 74088, -159451, 244813, 12885, -76236, -215285, 130997, 58519, -113817, -197569,
- 54224, 81068, 118112, -173409, 60666, 154619, -41339, -153008, -56908, -15032,
- 162672, -44560, -99858, -45097, 33823, -41876, -35433, -1611, 132070, 53150,
- -51003, 17180, 55835, -15569, -51003, 16643, 1611, 5906, 537, 18790,
- 68719, -19864, -2147, -77309, 40802, 19327, -25770, 21475, 3758, 22012,
- 36507, -33286, -6442, -15569, 8053, 7516,
- },
- {
- -205622, 4407710, 564788, -142808, -250719, 19864, 27380, 85899, -32212, -37581,
- 11811, 264141, 278636, -149250, 1712618, 1607392, 1357747, 851477, 118648, 415538,
- -484794, 223875, 799401, -214212, 492311, 999117, -179315, -1245541, -1220845, 807991,
- 351650, -96100, 128312, 250719, 202937, 448824, -358093, 352187, 172336, -311385,
- -170725, -30065, -11274, 59056, 285078, -25770, -62814, 125091, -50466, -61740,
- -13422, 158377, -47245, 23622, -180926, -199716, 68719, 111132, -118112, -51540,
- 106837, 80531, 0, -64425, -52613, 51003, 9664, 13422, -6979, -47782,
- -33823, 45097, 110059, 2147, -37581, 79457, 16643, -34360, -15569, -37581,
- -1074, 33823, -31139, -13959, -71941, 11274, 39192, 23085, -6979, -28454,
- 20938, 28454, -28454, -13959, 11274, -22549,
- },
- {
- 3368328, -8106751, 3781182, -52613, 328565, -294205, -71941, -258235, 168577, 680215,
- 212601, -943819, 102005, 894964, -419833, 848256, -488016, 1849520, 593779, 221728,
- -75699, -259309, 173946, -501974, 926639, -429497, 45097, -229781, 372052, 117038,
- -99858, -12348, 103616, -79457, -54224, -38655, -19864, 125628, 22012, -190052,
- -23085, -78920, 150861, -59056, -23085, -147103, -51540, 147103, -24696, 11811,
- 135291, 98784, -319438, -92342, -30065, -69793, -98784, 50466, -4295, 194347,
- -85899, -45097, 53687, -67646, -82141, -13959, -41339, 87510, 57982, 18254,
- -50466, -26307, 59056, 100932, 51003, 15032, -4832, -34897, 1611, 11811,
- -54224, 6979, 4832, -50466, -15569, 17717, 13959, -8590, 11811, 38655,
- -22549, -5906, 3758, -8053, 21475, 19327,
- },
- {
- 398895, -1454383, -341987, 236223, -40802, 89121, 41339, 68719, 15569, -106300,
- -246961, 84826, -430570, -1096290, 522912, 1774358, -1592896, -448824, 1173600, -1761474,
- -755377, 205085, -648003, -266288, 115964, 104690, 807454, -769336, -89121, 332860,
- -579284, -139586, 233539, 140660, -230318, 199716, 80531, -425202, -100932, 2147,
- 256087, -152471, 86973, 145492, -200253, -77846, -63888, 95563, 24159, 146566,
- 83752, 5906, -78383, 129386, 146029, -70867, -36507, -20938, 59056, -2684,
- -1611, 85899, -13422, -10201, -11274, -51003, -3221, -16106, 18254, 65498,
- 51540, -9664, -33823, 3221, 31139, -19864, 16106, -86973, -28991, 4832,
- 4295, -19864, -10201, 22549, 33286, -12885, -11274, 15032, -12885, -34897,
- -6979, 37044, 20938, -33823, -8590, -20401,
- },
- {
- 1765232, -5708549, 2599529, 245887, -6979, -301185, 95026, -311922, -390305, 308701,
- 86973, 121870, -24159, 27917, 297963, -711891, -221728, -196495, -387084, 276489,
- 424128, 328565, -84826, -149250, -229244, -1611, 282394, -215822, 31675, -355409,
- 259309, -108985, -294742, 173946, -394600, -231391, 240518, -228170, 108448, 177704,
- -230318, -190052, 184684, 86973, 14496, -114354, 93952, 246961, 537, 49929,
- 136365, -153008, 92879, -23085, 27917, 38118, -139586, 82141, 9127, -55298,
- 5906, 537, -10201, 35433, 31675, 41876, -76236, -46171, 51003, 14496,
- -26307, 98247, 53687, -55835, -39192, -5906, 47245, -30065, -13959, -6442,
- -83752, 34897, 1074, -93952, -19327, 51540, -17717, -17717, 1611, 45634,
- 23085, -22549, 17717, -8053, -2147, 6979,
- },
- {
- 357556, -293668, -1051193, -27380, -211527, 32749, 19327, -36507, 26844, -103616,
- -69256, -31139, 64961, 316754, 1174674, 2641405, -223338, 1658394, -170725, -741419,
- 95026, 2684, -316217, 10737, -67109, 1091995, 1072131, -572841, 407485, 406411,
- -73014, -194347, 315680, -257698, 174483, 280784, 4295, -144418, -505732, -84289,
- -277025, 267899, -171262, 20401, 537, 126165, 92342, -213138, 83215, 326954,
- -117575, -120796, 79994, 201863, -104690, 48318, -8053, -222801, 3758, 247497,
- -81604, -34897, -89657, 2147, -1074, 73551, 99858, -19864, -29528, -25233,
- -11274, -60666, 22012, 32749, -41339, -37044, 30065, -18790, -25233, -4832,
- -35433, 33823, 14496, 22012, 49929, -18790, 19864, -36507, 8590, 10201,
- -37581, -2147, -2684, 10201, 8053, 1611,
- },
- {
- 54761, 18606872, 965294, -1501091, -249108, -136365, -124017, -340376, 597537, -173409,
- -703838, 261993, 319975, -661425, 395674, 759672, 93952, 53150, 261993, -62277,
- -468688, -321049, 78920, 70330, -98784, 599685, -402653, -123480, 583579, -278099,
- 214748, -296890, -63888, 122943, 48318, 16643, 682900, -128312, 274341, -102005,
- 249645, -219043, -140123, -246424, -272730, 182536, -345745, -492311, 331786, 9127,
- -44023, 127238, 185757, 121870, -41876, -42413, 45634, 88047, -106837, 86973,
- 151934, -60666, -16643, -106300, -55835, 181999, 64425, -54224, 3221, 15032,
- 9664, 94489, 47782, -36507, -51003, -69256, 92879, -34897, -50466, -7516,
- 38655, -11274, 10201, 14496, 27917, 32212, 35970, 3758, -41876, -15569,
- -14496, -537, 7516, 26307, -36507, 23622,
- },
- {
- -366683, 4340602, -542777, -1159641, 642635, 458488, -251792, 311385, -53150, 191126,
- -737661, 188979, 710817, 486942, -295816, -1367410, 891743, 85899, -987843, -1295470,
- 388695, 491237, 78383, -365609, -237297, 162672, 171262, -205085, -274878, 309238,
- -372588, 548145, -185220, -253940, 149787, -194347, -235686, -342524, 74088, -121333,
- -137439, -122943, -78383, 102005, 260919, -153545, -6442, -132070, 196495, 160524,
- -25770, -100395, -73551, -144955, -41339, 266825, -537, 74088, -49929, -91805,
- 9664, 32212, -30602, 62814, -33823, 68719, 114354, -61740, -61203, -67109,
- 2684, 2684, 537, 106300, -20401, -45097, 25233, 45634, -10201, 8590,
- 44560, 12885, -18254, 2684, -6979, -51540, 3221, 22012, 11274, 28991,
- -36507, 19864, -19327, 12885, -10737, -20401,
- },
- {
- -1061931, 21522618, -4050691, 272730, 280247, -1256815, -1772748, 228170, 284542, 293668,
- 195958, 352724, -39728, -187905, -695248, -247497, -318901, -583579, 279173, 148713,
- -76773, 5906, -199716, 184684, -321049, -174483, 121333, -54761, -49392, 187368,
- -237297, 34360, 277025, 244813, 44560, -489089, 394600, -337692, -111669, 198642,
- -392990, -340376, 115964, -66572, 285615, 99321, 30065, -38118, -137439, 123480,
- -42413, 30065, -12885, -80531, -3221, 84289, 83752, 149250, -120796, -3758,
- -26844, 105764, -2684, 40265, 59593, -140123, 47782, 1074, 42950, -4832,
- 18790, -1074, 55835, 3221, -85362, 3221, -62814, -20401, 21475, -13959,
- 9127, -15569, -2147, 66035, -19327, 38118, -69793, 14496, -42950, 1611,
- 15032, -7516, -10737, 11274, 24159, -29528,
- },
- {
- 296890, -1879585, 118648, -398895, 72478, -443455, 193274, 148713, -184147, 241055,
- 3758, -328565, 1369021, 2039036, 980326, -919660, -64961, -166967, 52613, 59593,
- -789737, 1499481, -181999, 617402, -1181653, 234076, 38655, 659814, -644245, 646393,
- -571768, 249645, -37044, 674847, -30065, 63888, -102542, 215285, -405874, 8590,
- -238371, 51003, 121333, -242666, -164819, -110059, 95563, -17717, 165356, -12348,
- -33823, 6442, 107374, 2684, -52076, -121333, -57982, 165893, 190052, 17717,
- 81068, -115964, -83752, -11274, 104153, 51540, -82678, 83215, 1611, 53687,
- -24159, -41339, 27380, -37044, 17180, 12885, -28454, -38655, 1074, -14496,
- 59056, -23622, -23622, 48855, 6979, -5369, 11274, 24696, 10737, -6442,
- 13422, 21475, -27380, -17717, 15569, 0,
- },
- {
- -632434, 1116692, 2843268, -1297617, 445066, -1021665, -1131724, -308164, 19327, 601295,
- -17717, -130460, -299037, 1023813, 532576, 267362, 265214, -95026, -138513, -116501,
- -497142, 473520, -115964, 249645, -127775, 93952, -439697, -40265, -1611, -195421,
- 139586, -254477, 47245, 421981, 511101, -179852, -153545, -5906, 136365, -152471,
- -240518, -45097, 327491, 61740, 304406, 48318, 177704, -252866, 306016, 96637,
- 90194, -85899, 111132, -70867, -91268, -126165, -72478, 72478, -8053, 69256,
- -27917, -26307, 33823, -29528, -77846, 0, -2684, 79457, 76236, -46708,
- -78920, 85362, 38118, -62814, -22012, 26307, -23622, 55298, -31139, 0,
- -81068, 52613, 28991, -8590, -20938, -76236, 22012, 59056, -16643, 12885,
- 25770, -1074, 13959, -32749, 11811, -17717,
- },
- {
- -266288, 1387811, 832687, -201863, -4295, 159988, 146029, 152471, -104153, 122943,
- 370978, -135828, 724239, -674310, -15247134, 417149, -639413, -393526, 879395, -550293,
- -440771, -751082, -127238, 51540, -415538, -543313, -1204202, 471910, -480499, 601295,
- -42413, 30602, 87510, 324270, 167504, 324270, 57445, 49392, -103616, 102005,
- 222801, -111669, -262530, -8053, 18254, -22549, 73551, -92342, 30065, -61740,
- 175557, -255551, -30065, -96100, 48318, -9664, -17717, 55298, 30602, 33823,
- 54224, -148176, 13959, -9127, 29528, -61203, 168041, 45097, -13959, -46171,
- -23622, -25770, 49929, -19864, 38655, -7516, -81068, 84826, -30065, 63888,
- -12348, -55835, -2684, -5906, -24696, 33286, 51540, 54224, -40802, 44560,
- 0, -32212, -11274, 32749, -1074, -33823,
- },
- {
- 7516, -3463354, -949725, 1935957, 22012, 898185, -89657, -426276, 322659, 492311,
- -288837, -62277, -278099, 792421, 1911797, -246424, 158914, 195421, -259309, 126165,
- 734439, 162135, 131533, 82678, -381178, 144955, -171262, -1283658, -139050, -486942,
- 302258, -348966, -66035, -40802, -384400, -141734, 189515, -9127, -264677, -165893,
- -145492, 45634, -17180, 82141, 112206, -2147, 48318, 154619, -35433, -163746,
- 63888, 79994, -46171, -145492, -9664, -105227, 69793, 66572, 4295, 70330,
- -20938, 31675, -20401, 48318, -32212, 42950, 83752, 45634, 57982, 16643,
- -60666, 57445, 60130, -6979, -76773, -25770, 5369, 9664, -46171, 15032,
- 21475, 19327, -24696, 2147, 12885, -10201, 6442, 34360, -73551, 36507,
- -10201, -16643, 27380, -3758, -2684, 8053,
- },
- },
- {
- {
- 644782, 239444, -526134, -1211718, -108448, 30602, 33823, 62814, -52613, 123480,
- -143881, 249108, -158914, -1071058, 142271, 34360, 978179, 83215, -54224, -214748,
- 26307, 225486, 113817, -140660, 22549, -290984, 25233, 86973, 363998, 525060,
- -955093, 528818, 7516, -449898, 146029, -24696, 151934, -697932, -534187, -331249,
- 359167, 14496, -29528, -40802, -18790, 150324, 26307, -35433, 135291, -146566,
- 145492, -235686, -152471, 42413, -75162, -22549, 30602, 28991, 43487, 161061,
- 94489, 51003, 62814, -53687, 102005, 3221, -68183, -6979, 103616, -2147,
- -20401, -24159, -17180, 34897, 42413, -9664, 17180, 28991, 51540, -14496,
- -17717, 48855, 62277, 3221, -41876, -3221, 12348, -6442, -11811, -40802,
- 26844, -11274, -11811, -14496, -15032, -537,
- },
- {
- 4608500, -19887846, -3893388, -1568200, -99858, 290984, -321586, -606664, 428423, 444529,
- 136365, 359704, -537, -206695, 283468, 406948, 267362, -127775, -419296, -99858,
- -195421, -670552, 188979, 356482, -121870, -74088, 45097, 471373, 321586, 384936,
- 165893, 105227, -566399, -252329, -46171, 253403, -216359, -162672, -192737, -46171,
- 97711, 104690, 168577, 95563, 92879, -231391, 63888, -65498, -113817, 19864,
- 40265, 169114, 147103, -134755, 59056, -78383, 89657, -49392, 17180, 25770,
- 38655, -44023, 11274, -12348, -33823, -68183, 120259, 16643, 85362, -6442,
- -57445, -55298, 44560, -16106, -88584, 23622, 15032, -22549, 16643, 82678,
- 4832, -23085, 20938, 30602, -12885, -88047, 54761, -25770, 11274, -3221,
- -10737, 12348, 21475, -19327, -2147, -20938,
- },
- {
- 1773285, 7306276, 1254667, 3101503, -268435, -164283, -19864, -149787, -193810, -400506,
- -268972, -16643, 118648, 363998, -9664, -86973, 158914, 454193, -784905, -208843,
- 35970, 395674, 228707, 371515, 134218, 156766, 20401, 67109, -337155, 164283,
- -31139, -145492, 6442, -132607, -8590, -54761, 15569, 105764, 133681, -277562,
- 90194, -92342, 434865, 86973, -25233, -170188, -100932, 242129, 230318, -91805,
- -187368, 42413, 90731, -107374, 14496, 172872, 116501, -47782, -75699, -48855,
- 132607, 93416, -86973, 22549, 78920, 31675, -19327, 99858, 23085, 87510,
- -537, 32212, 22549, 14496, -18254, -5906, -18790, -28991, -17180, 53150,
- 3758, 8590, 39728, -76236, -25770, 18254, -25770, -13959, 17180, -2147,
- 30602, 537, 5369, -12348, -1611, 11811,
- },
- {
- 27380, 4027069, 8590, 101469, -73551, -102542, 48318, -17717, 137439, 40802,
- -129386, 74088, 48318, 1043140, 688805, -96100, 1804423, 1431298, -97174, 55835,
- -865973, 555661, 158377, 641024, 653372, -155693, 207232, -277562, -786516, -117575,
- 497142, 356482, -242666, 244813, 206695, 282394, -7516, -6442, 313533, -132607,
- -96637, 5369, 90731, -78383, 191126, 165893, 28991, 10737, 119722, -114354,
- -107374, 229781, 26307, -71404, -18254, -141197, -72478, 191663, -120259, -108985,
- -18790, 90731, 0, -8590, -25233, 15569, -8590, 33823, 42413, -77309,
- -80531, 4295, 74625, 37044, -64961, 48318, 48855, 27917, -34360, -28454,
- -20938, 38118, -26844, -11274, -54761, -29528, 30065, 16643, 33286, -8590,
- 5369, 22012, 9127, -6979, 8053, 16643,
- },
- {
- -2166811, 2143189, 155693, 834297, -35970, -134755, -85362, -236760, 146029, -27380,
- 992674, -201327, -68183, -268972, 455803, 136902, 195958, 702227, 565862, 390842,
- -261456, 74625, 231928, -485331, 284005, -35970, -160524, 215822, 62277, -9664,
- 216896, 55298, 122943, -167504, -44023, -103079, -249108, -173409, 158377, -397284,
- -402653, -3758, 370441, -32749, -308164, 183073, 166967, 44023, -19327, 35433,
- 207232, 195958, -194884, -123480, -210990, 63351, -255014, -7516, 89121, 59593,
- -29528, -55298, 100932, -38655, -89121, -7516, -11811, 26844, 37581, 24159,
- -12348, -49929, -9664, 66035, 83215, -10201, 51003, -54224, -6979, 64425,
- -30065, 0, 16643, -59593, -44023, 18790, 5906, 12885, -13422, 9664,
- -20938, -15032, -2684, -15569, 17180, 20938,
- },
- {
- 64425, 722628, -229244, -301721, 11274, -47245, 177704, 33286, 178241, -120259,
- -148176, -191663, -410706, -911607, -111669, -79994, 245887, -818728, 1104880, -496606,
- -1065152, -676994, -163746, -846645, -413927, 194347, -144418, -90194, -169114, 112206,
- -570694, -277562, 307627, 496606, -338766, -37044, 155156, -239981, -157303, -96100,
- 368830, -147103, 94489, 150861, -69256, -39728, -26307, -162135, 192737, 69256,
- 174483, 53687, -117575, 18254, 236760, 24159, -69256, -19864, 8590, -7516,
- -42413, 9664, 57982, -57982, 33286, -25770, -25233, 2684, -46708, -55298,
- 44023, 43487, -48855, -9127, 64961, 38118, 62277, -21475, -8053, -42413,
- 35433, -11811, -37044, -16106, 22012, 6979, -1611, -4832, 537, -12885,
- -47782, 17717, 51540, -12348, -17717, -14496,
- },
- {
- 2001992, 1260573, -2493766, -907312, 277025, 51540, -44560, -140123, -154082, 96100,
- 216359, -168041, -55835, -2684, 18790, -535260, 46171, 84289, -372052, -27380,
- 121333, 145492, -239444, -65498, -11274, -238371, 440234, 56371, -328565, -307627,
- 35970, 112743, 218506, -221728, -7516, -104153, -56908, -95563, 93416, 33286,
- -120259, 537, -15569, 117038, -258235, 63351, -171799, 103079, 81068, -73014,
- 49929, -29528, 82141, -183610, 76773, 100395, 5369, 48855, 90194, -1611,
- -8053, 27917, -5369, 29528, 46171, 85899, 60666, -48318, 13959, -1074,
- -56371, 13422, 90731, 7516, -42413, -11811, 59593, -34897, -537, -15032,
- -66035, -15569, 27917, -19327, -72478, 51003, 33286, -4832, -22549, 5906,
- 28991, -20401, -15032, -2147, -2684, 10737,
- },
- {
- 3758, 1437203, -724239, -57445, -195958, -70867, -57445, 22012, 170188, -65498,
- -294205, -243203, -579284, 2423972, 1861868, -401579, -679679, 364535, -239981, 302258,
- -1134408, -367757, -506269, 76236, 527207, -40802, 408022, 365609, -221728, 282394,
- -63351, 46171, 301185, 40802, 13959, 54761, -4832, -140660, -345208, -207232,
- -33823, 75162, -176631, -188442, 183610, 16643, 33823, -255014, 10201, 256087,
- 0, -35970, 120259, 195958, 114354, 15569, 38118, -131533, -74625, 95563,
- 68719, -27917, -19864, -23085, -35970, 43487, 75162, 19327, -54224, -59593,
- -25233, -26844, 17180, 34897, -3758, -12885, 7516, 53150, -25770, 16643,
- -54761, -11274, -5906, 17180, 60666, 537, 40265, -15032, -4295, 28991,
- -29528, 0, 21475, -3758, 1074, -8590,
- },
- {
- -389231, 23291070, -2918430, -1061394, -186294, -11274, -96637, -545998, 489626, 237297,
- -546535, -251256, -133681, -784368, 178241, 1197759, 478352, 122943, 77846, 2147,
- -110059, -132607, -399969, 313533, -91268, 248034, 127775, -82141, 282931, -4295,
- 104153, -296353, -133681, 13422, 147103, 409633, 155156, 1074, 314606, 90731,
- -22549, -223338, -23085, -216359, -333397, 177167, 40265, -549219, -37581, 258235,
- 52076, 151934, 132070, 132070, -186294, -54761, 57445, 82141, -61203, -46708,
- 90194, 17717, -46708, -80531, -76236, 11274, 115427, -25233, 18790, 71404,
- -32749, 12885, 55298, -43487, -13959, -69256, 52076, -26844, 12348, -46708,
- 37581, -17180, -39192, 12348, -25233, 19327, 46171, 14496, 2147, -5369,
- -32749, -15569, -2684, 43487, -23622, 11811,
- },
- {
- 185220, 3252364, 163209, -603980, -122943, 1233729, -271657, -288300, -42413, 115427,
- -236760, -530428, 83215, 751082, -484794, -187905, -151934, 673236, 262530, -1117765,
- -77309, 90731, -73014, -4832, -137439, 118112, 208306, -267362, -438624, 405874,
- -511638, 266288, 67109, 17717, 47245, 76236, -66572, -30602, 85362, -81604,
- -110059, -29528, -1611, -83752, 264677, -66035, -56908, -97711, 59593, 143345,
- 137439, -15569, 10201, -45097, -185220, 185220, 37044, 57982, 1074, -17180,
- -47245, -38118, -56908, 52076, -70867, 15032, 96637, 48318, 65498, -94489,
- 12885, -18254, -61740, 76773, -10737, -31139, 0, -5906, -28454, -36507,
- -6442, 3221, -537, 17180, 40265, -10201, -36507, 7516, -4295, 34897,
- -16643, 5906, -2147, 7516, 20938, -15032,
- },
- {
- 1793149, 14520211, -123480, -1499481, 639950, -569620, -2124398, -294742, 198105, 133144,
- 157840, 215822, 244276, -144418, -191126, -702227, -474057, -59593, 44560, 475131,
- -98784, 304943, 2147, -234076, 102005, -22012, -120796, -150861, 220117, 16643,
- 253940, -11811, 234076, -1074, 135828, -352724, 56371, 4295, -337692, 159988,
- -69793, -268972, -80531, -69256, -19864, 123480, 90194, -3221, -94489, 5369,
- -7516, 41876, 29528, -112206, -75699, -22012, 66572, 127775, -35970, -55835,
- 4832, 18790, 15569, -2684, 27380, -71941, 1611, 5369, 33286, -537,
- 6979, 21475, 63351, 70867, -4295, 3221, -22012, -61740, -2684, -31139,
- 26844, 26307, -31139, 77309, -10201, 61203, -32212, -3221, -26307, -1074,
- 20401, 3221, -30602, -8590, 42950, -537,
- },
- {
- -267899, -1523103, 115427, -185757, 82141, -220654, -82678, 162672, 5369, 68183,
- -180389, -247497, 600222, 3711926, 430570, -1021129, -106300, 150861, 688269, -427886,
- -693100, 1843615, 402653, 523986, -617402, -593242, -39192, 631897, -92342, 484258,
- -606664, 193274, -164819, 108448, 323733, 34897, 76773, 186294, -253940, 188979,
- -102005, -122407, 48855, 35970, -37581, -111132, -113817, 44023, 150324, 133144,
- 74088, -31139, 10737, 37581, -25233, -92879, -150324, -49392, 2147, 16643,
- 56908, -42950, -77846, -68183, 5369, 82678, -110059, 55835, -1074, 34897,
- 25233, -10737, 32212, 40802, 34897, 43487, 3758, -44560, -40802, -17180,
- 39728, -20401, -25770, 5369, 17180, -20938, -13959, 12885, 8590, 8053,
- 7516, 22012, -4832, -16106, 12348, 10201,
- },
- {
- 598074, -2002529, 1171989, 468688, 416612, 1121523, -1450625, -683437, 53150, 547071,
- 434865, -196495, 277025, -42413, 539018, 180926, 27917, 205085, -568546, 403190,
- -88047, 218506, -89657, -24696, -91268, 486405, -98784, -22012, 90731, -130997,
- 10737, 77846, 66035, 291521, 376883, 195421, -137439, -314606, 290447, -76236,
- -251256, -179315, -26307, 133681, -81604, -161598, 171799, -306016, 146029, 106837,
- 93416, 20938, 79457, 79457, 34897, -32749, 57445, -49929, -124554, 96100,
- -17717, -8590, -37581, 4295, -67646, -88584, 32212, 11811, 74088, 41339,
- -103616, 24696, 71404, 66572, -15569, 7516, -43487, 74088, 13422, 49392,
- -70330, -33286, 22012, 61203, 20401, -71941, -51540, -5369, -31675, 1074,
- 11274, -2684, 47245, 1611, 20938, 24159,
- },
- {
- 119722, 393526, -719944, 839666, 4295, 95563, 131533, 297963, 240518, -293132,
- 24159, -26307, 129386, -3485903, -8586713, -1964411, 787590, -346282, 767189, -136902,
- -639413, 79994, -391379, 102542, -355945, -51540, -539555, 417149, -900333, 41876,
- -73551, 119185, 415001, 233002, -348429, 146566, -28454, -56371, 158377, -90731,
- 150324, 24696, -132070, 34360, 32212, 8590, -13959, 23622, 41339, -52076,
- 112743, -30602, -57982, -157303, 10737, -27380, -1074, 29528, -8590, 28991,
- 97711, -16106, -45097, 42413, 71941, -42950, 114890, 140123, -26307, -8590,
- -73014, -62277, 90194, -9127, -4832, 46708, -67646, 67646, 0, 22012,
- 49929, -60666, -48318, -3758, -53687, -7516, 32749, 53150, -38118, 13422,
- 45634, 8053, -25233, 17180, 26844, -44023,
- },
- {
- -994285, -2556579, 122943, 185220, 308164, 2216740, -347892, -227096, 331786, 136365,
- 853625, -622770, -142271, 751082, 1335735, 347892, 335007, 644782, 31139, -51003,
- 440234, -91268, 286152, 699006, -373662, -290447, -405338, -1101659, -47245, -370441,
- 140660, -16106, -82678, -279710, -372052, -373662, -27380, 182536, -165356, -350040,
- 79457, -5906, 4832, -22549, 203474, -65498, -77309, 185220, -7516, -19864,
- 132070, 40265, 74088, -130997, -46171, -164283, 28991, 75162, 42413, -15032,
- -7516, -34897, -15569, 31139, -10201, 20938, 46171, 19327, 3758, 67109,
- -40802, -56908, 96100, 98784, -25770, -52076, -41876, -5369, 9127, -26307,
- 11811, 57445, 10737, -16643, 2684, 14496, 3758, 76773, -33823, -12885,
- 1611, -6442, 3758, 16106, 15569, -5369,
- },
- },
- {
- {
- -566936, -1632625, 277562, -774705, -188979, 146566, -25770, -249108, 89657, 8590,
- 69793, -25770, 585189, 457414, -106300, -807454, -204011, 149787, 801011, -137976,
- -1015760, -244813, 337692, 115964, 423591, -277562, -324270, 175557, -226023, -137439,
- -389231, -216359, 277562, -71941, -245350, -187368, 430570, -63351, -306553, -426276,
- 123480, 68719, 79457, -98784, -231391, 159988, 69256, -224412, 24696, -304406,
- 79994, -4295, -48855, -60666, 37044, 4832, -85899, 124554, -120796, -74625,
- -21475, -35433, 81068, -39728, 27917, -14496, 49392, -54761, -34360, 60666,
- 37581, -37581, 61203, -23085, 55835, -6442, 13422, -54761, 42413, 21475,
- -3758, -2147, 11274, 20401, 52076, 42413, -16643, -36507, 14496, -537,
- -43487, 26307, -9664, 22549, 10201, -24159,
- },
- {
- -2852395, -23443006, 877247, -88584, -125628, -56908, 271657, -506269, -365609, 101469,
- 86436, -216359, 141734, -586800, 221728, 418222, -582505, 181999, 549756, -100932,
- 61203, -180926, 28991, 104690, 34897, 411243, 251256, 141197, 36507, 118112,
- -67646, 31139, -103616, -82678, -520228, 262530, 323733, 234613, -38118, -132607,
- -369367, -116501, 188442, 154619, -23085, 48855, -155693, 253940, -281857, -41876,
- 27380, -93952, 252866, 4295, 98784, 30602, -30602, 130460, 67109, 73014,
- 25233, 68183, 30065, 50466, 51540, -87510, -35433, -53687, 47245, 119722,
- 0, -19327, -43487, -24696, 23622, -110059, 69793, 1074, -25233, -15032,
- -20401, 37044, -20401, 18254, 34897, 36507, -88047, 34897, -5906, 20938,
- 7516, -537, -20401, 15569, -15569, 6442,
- },
- {
- -1238561, 2370822, -1915019, 911607, 1124208, 345208, -286689, 41339, -64425, 260919,
- -83215, 66035, 190589, -646393, -1269163, -212601, -243739, -398895, -608275, -43487,
- 297427, 70867, 537, -144955, -448824, 260382, 455267, 543313, -581968, -148176,
- 128849, 102005, 82141, 262530, -105227, -231928, 38655, 53150, 404264, 68719,
- -97174, 96637, 269509, 79994, 198642, 246424, -143881, 125091, 142271, 212601,
- 32749, 7516, 42413, 12348, 11274, -5369, 40802, 110595, 16643, -13422,
- -76236, 6442, 25770, 27917, -13422, 49392, -28454, 96637, -75162, 28454,
- 41876, 9664, -537, -17180, 31139, -9664, -10201, -3221, 18254, -3758,
- -37044, 8053, 1074, 15569, -13959, -15032, 22549, -35433, -21475, -537,
- -25770, 27380, -13422, 19864, -13422, -8590,
- },
- {
- 150324, 4225711, -416612, -235149, 233539, -71941, -148713, -208843, 50466, 86973,
- -67109, 168577, -95563, 512712, 1270237, -1640678, -1331440, 146029, -450972, 303869,
- 150324, 137439, -485331, 1087701, -13422, -632971, -376883, 344671, 159451, -434329,
- 194347, 440771, -384400, 109522, -328565, -241592, 438087, -237834, 81068, 215822,
- -74625, 140660, 290447, -15032, 57982, -130460, 76236, 38118, 60130, 86973,
- 146029, 17180, -17180, -38118, 48855, 147103, -12348, 4295, 56908, 7516,
- -93416, -15032, 73014, -1611, 7516, 51003, -33286, -22549, 27917, 66572,
- 37581, -100932, -24159, 16643, 11811, -32212, -11811, 24159, 23085, 26307,
- 8053, -26844, 13959, -11274, 18790, -3221, -53687, -25233, 39728, 25233,
- -7516, -28454, 10201, 35970, -9127, 16643,
- },
- {
- -783295, 5074504, -1029182, 649614, -102005, 103616, 208306, -241055, 212064, -335007,
- 426812, 927176, -319438, -787590, 699543, -789737, 82141, 53150, -243203, 207769,
- -286152, 338229, 98784, -85362, -512175, 253403, -101469, 948114, 314606, 89657,
- 30602, -66572, -259846, 121870, 274878, 31675, 44560, -649077, 21475, 134218,
- -233539, -12885, 81604, 31675, -271657, 34897, 250719, 87510, -10201, -45634,
- -49392, 54224, 152471, 89121, -117575, 30065, 29528, 38118, -44560, -149787,
- 61740, -44023, 1074, 52613, 12885, -33823, 52076, -9664, -68719, -18790,
- 49929, 18254, -30065, -64961, 3758, 5906, -49929, 29528, -35970, 12885,
- -12348, 20938, -20401, 44560, -38118, -23085, 2147, 4295, 3758, -27917,
- 16106, -9664, -3221, 7516, -19864, -8053,
- },
- {
- -350577, 368293, 2035815, -233002, -11274, -118648, 4295, -1611, 168041, 102542,
- 216359, -41339, 239981, -431107, -944893, -271120, 2349347, -218506, 270583, 644245,
- 636729, -563178, -217970, 178241, -747861, -799938, -313533, -86973, -1247688, -380641,
- -238908, -179852, -35970, 228707, -19327, -6979, 135291, 181462, 84826, -26307,
- -151398, 197569, 90731, -22012, 238371, 128312, 46171, -246424, 53150, -89657,
- 67109, 120796, 69793, -136365, 31675, 63351, -28454, -25770, -14496, 20938,
- -45634, -100932, 54761, -9664, -29528, 5369, 13422, -11811, -6442, -64961,
- -77846, 61203, 24696, -18790, -3758, -5369, 10201, 68719, 60666, -4832,
- -37044, 49929, 0, -15569, -38118, 18790, 8053, -16643, 1611, 33823,
- -3221, -38118, -20938, 24696, 3758, 5369,
- },
- {
- -4309463, -2993055, 865436, -1071594, -419833, 258235, -25770, 388158, 318364, -143345,
- -127775, -125628, -359704, 471373, 386010, -274341, -56908, 131533, 493921, -317828,
- -249645, -359704, -193810, 158914, -15032, -254477, 23622, 277562, -324270, -273267,
- -73551, 80531, 540629, -235686, 244276, 171799, -176631, -193274, -31675, -31675,
- -93416, 341987, 263604, -119185, -250182, 31675, -50466, -95026, -5906, 123480,
- -195958, 71404, -20938, -170188, -9664, 12885, 26844, 6442, 40802, 35970,
- 62277, 37581, -44560, 10737, -52613, -45097, 43487, 80531, -46171, -63888,
- 64961, -81604, -108985, 62814, 20401, -30602, -7516, 11811, 7516, -31139,
- 71941, -51003, -4295, 74088, -3221, -59593, 18790, 37044, 2147, -23622,
- -24696, 30065, -13422, 11811, -16106, 6979,
- },
- {
- -353798, 338766, 826244, 166430, 244813, -45634, -97711, 70867, -21475, 108985,
- 33823, -27917, -514859, 579821, 1474784, 159988, -499827, -423591, -562104, 1514513,
- 91268, -438624, -84826, -128849, -339839, -916439, -449898, 222801, -198105, 27917,
- 133681, 227096, -228170, -25770, 62814, -319438, -78383, 5906, -81068, 205085,
- 67646, 8053, 61203, -44560, -67109, -172336, -131533, 248034, -189515, -152471,
- 129923, -26307, -42413, -54224, 156229, 5369, 55298, 98247, 35970, -146566,
- 4295, -71404, 99858, -12348, 27380, -38655, -87510, -537, 41339, -14496,
- 13959, 28454, 3758, -22549, 27917, 25233, -59056, 51003, 31675, 1074,
- 37581, -14496, -11811, -9127, -12885, 19864, -1611, 23085, -16643, -11811,
- 35970, -4832, 4832, -3758, -3758, 2684,
- },
- {
- -1522029, 32075352, 3419868, -1165547, 234613, 142271, 137976, -31139, -373125, 95026,
- 703838, -303869, 100932, -1085016, 903554, -48855, -55835, 162135, -248571, -237834,
- -136365, 287763, -795643, 215285, 257161, -286689, 138513, 194884, 55298, -119722,
- -117575, 9127, -151934, -179315, -252866, 17717, -111669, -86436, 141734, 336081,
- -219043, 87510, 379568, -15569, -53150, -200253, 78383, 48318, -22549, 0,
- -114890, 149787, -53150, 16643, 53687, 56371, -53150, -68719, 87510, -27380,
- -18790, 46708, -33823, 47245, 63351, -165893, -24159, 66572, 13422, 23622,
- 0, -6979, -39728, -4295, 24696, 49929, -74088, -16643, 12348, -12885,
- -11811, 6979, -47245, 10737, -20401, -40802, -28991, 4832, 21475, 22012,
- 15032, -18790, -3221, -24696, 17180, 8053,
- },
- {
- -54761, 2774549, -494458, 593779, -377957, -177167, 436476, 21475, -113280, 141197,
- 178778, 268972, -387084, 91268, -996969, 626528, -114890, -512712, 137439, 858457,
- 17180, -944356, -878858, 203474, 353798, 419833, -161061, -90194, -104153, 115427,
- 148713, -117038, -110595, 166430, -2684, -63351, -171799, 108448, 229244, -70867,
- -108985, -107374, 155693, 38655, -243739, 150861, -56371, 20938, -86973, -201327,
- 217433, 166430, 88584, 161598, 85362, -106300, -72478, 3758, -15569, 64961,
- 54761, 0, 38655, -13959, 12348, -69793, -63888, 12348, 44560, 73551,
- -6442, -2147, -4832, -43487, 4295, 21475, -22549, -35970, -9664, -18254,
- -27917, -36507, -13959, 13422, 17717, 29528, -1611, -26307, -16106, -18790,
- 33823, -12885, 6442, -4832, 3758, 17717,
- },
- {
- -2270964, 9233106, 1473711, -871878, -233539, -117038, 1568200, 135291, -142808, -286152,
- 57445, -234613, 86973, -62277, 429497, -535797, -242129, 45097, 161061, 294205,
- 155693, -222801, 414464, -396748, 307090, 78383, -112206, 39728, -142808, -231928,
- 472446, 212601, 34897, -348429, -30065, 153008, -406411, 102542, -144418, 68719,
- 235686, 317828, -53150, -9127, -220117, -88584, -76236, -55298, 139050, -84289,
- 30065, 8053, 63888, 154619, -77846, -77846, -111132, -120796, 108448, -1611,
- 17717, 15569, 35970, -26307, -54761, 52613, -36507, -21475, -41339, 15569,
- -12885, 5369, -25233, 24159, 71404, -20401, 67109, 30065, -55835, 9127,
- -13422, 3758, 29528, -41876, 11274, -24696, 35433, -4832, 31139, -2684,
- -20401, 12885, 6979, -15569, -15032, 26844,
- },
- {
- 177167, -1619740, -1167694, -245350, -198105, 242129, -142271, 86973, 8590, -64961,
- -101469, 33823, -724776, 894427, 91268, -569083, 41876, -166967, 902480, -103079,
- -731755, -375273, 390842, -232465, 656056, 455267, -627065, 224412, -57982, -191663,
- 386010, 104690, 88047, -287763, 227096, -157840, 136365, -93416, 278099, 187368,
- 141734, -2147, -185220, 177167, 100395, -111669, -24696, -171799, 21475, -31139,
- 39192, 48855, -139050, 68183, 42413, 63888, -12348, -33823, -224949, -51003,
- -120796, 4832, 18254, 8590, -96637, -51003, 93952, -44560, 15032, -17717,
- -3758, 33823, -11811, 33286, 24159, 4295, 54224, 37044, -40265, 17180,
- -33823, 25770, 33823, -28991, 1074, -9664, -7516, -26307, -13959, -4832,
- -17717, 537, 23085, 20401, -24159, 8053,
- },
- {
- -90731, -3186866, -1968706, 1378685, -118112, 1751810, 1313186, -61203, 390842, -455803,
- -23085, -16106, -18254, -435939, -265214, 423054, -834834, 63351, -85362, -194884,
- 679142, 72478, 105764, -54761, -15569, 284542, -31139, -315143, 68719, 298500,
- -119185, 242129, 111132, -54761, -352724, 38655, 211527, -179852, 12885, 251792,
- 68183, -110059, -117038, 398895, -248571, -118648, 52076, 8053, -222801, -111132,
- -19327, -44023, 89121, -2684, 179852, 89121, 142271, 100932, -42950, -124017,
- 4832, -22012, -7516, -33286, 12348, 10201, 30065, -39728, -47245, 62277,
- 23085, -27917, -23085, 82678, 0, -1611, -20938, -33823, 32749, 2684,
- 74625, -45097, -23622, 2684, 23085, 73014, -5369, -50466, -1074, -4832,
- -15032, -19864, -13422, 35970, -3758, 29528,
- },
- {
- -1611, 310848, -1740536, 254477, -24159, 8590, 105227, 101469, 369367, -211527,
- -212601, 106300, -946503, 267899, 4092030, 822486, 978179, -207232, 92879, -111132,
- -158377, 767725, -19327, 722628, 797790, 198642, 440234, 82678, -791885, 111132,
- -576599, 99858, 421981, 54224, 18254, -13959, -14496, -51540, -50466, 168041,
- -209380, 4832, 130460, -98784, -24159, 114890, -291521, 82141, 31675, 117038,
- -132607, 164283, 199716, -23622, 4832, -1611, -40265, -19864, 27917, -53687,
- -68719, 171262, -36507, -40265, 15032, 90194, -104690, -13959, 20938, 17717,
- 41876, -32749, -10201, 24696, -19864, 34360, 67646, -68183, -17180, -49392,
- -8053, 39192, -17717, -3221, 19327, -38118, -28454, -42950, 31139, -40802,
- 1074, 37044, 24696, -29528, 10201, 31139,
- },
- {
- 874026, 844498, 547608, -261456, -598074, -314606, -643708, -174483, 118112, -340376,
- 651224, 226023, -65498, -783832, -1691143, -367757, 653372, 33286, 71941, -156766,
- 13959, -198105, -9127, 247497, 110595, -28454, -243739, -331786, 389768, -11811,
- 90731, 10737, 241055, -26844, -82678, -318901, -202400, -136902, 215822, -224412,
- 100932, 176631, 192200, 47245, -39192, 119722, -134755, -117575, -45634, 3221,
- 68719, 10201, 123480, 121870, 28991, 13422, 59593, -63351, 90194, -38655,
- 25233, 53150, -46708, -53687, 12348, -27917, -86973, -2147, 24159, 10201,
- 35433, -56371, -79457, 22012, 66035, 25233, -14496, -32212, 18254, 1611,
- -34897, -35433, 45097, -8053, -17180, 16643, 10201, -15569, 68183, -15569,
- 1611, 20938, -27380, 3758, -13422, -1611,
- },
- },
- {
- {
- 140660, -340913, -1697049, 556735, -389231, -70867, 73551, -258772, -14496, -34897,
- 89121, -86436, 634045, 523986, 185220, -445066, -318901, -173409, 227096, -135828,
- -639413, -601832, 316754, 68183, 316217, 106837, -545998, 231391, -238371, -644782,
- -28454, -278636, -310311, 393526, -176094, -157303, 242129, 348429, -119722, -231928,
- -11274, -50466, 143881, -128312, -76236, 84826, 54761, -56908, -118112, -200253,
- -53150, 23622, -30065, -111669, -60666, 6979, -6442, 132607, 51540, -156229,
- -52613, -124017, 8053, 49392, -1611, -55298, 20401, -42950, -119185, 34360,
- 72478, 18790, 24159, -10737, 18790, -2147, 2684, -32212, -27380, 8590,
- 12885, -29528, -31139, -10737, 52076, 33823, 1074, -35433, 9127, 36507,
- -32212, 11274, 6979, 7516, 18790, -4832,
- },
- {
- 1910187, -17331804, -5388574, -727460, -154619, -418222, 223338, 237834, 56371, -346819,
- -1611, -268972, 22012, -54224, -562104, 565862, 120796, 44560, 484794, -100932,
- 132607, 473520, -385473, -19327, 218506, 270046, 2684, 458488, -68719, -27917,
- -222265, -236760, 199716, 173946, -466541, -70867, 337692, 311385, 149250, -259846,
- -111669, -253940, 146566, 197569, -180926, 198642, -103079, 223338, -86973, 95026,
- -31675, -261456, 55298, 75162, -26844, 56908, -27917, 120796, 44023, 18790,
- -68719, 131533, 26844, 12885, 51003, 3758, -73551, -60666, -69256, 87510,
- 40265, 2684, -27380, -62814, 77846, -52613, 8590, 35433, -5906, -62814,
- -18254, 19864, -10201, 1611, 11274, 83752, -61203, 17717, -537, 2147,
- 5369, 537, -26844, 12348, -11811, 12348,
- },
- {
- 1473174, -2912525, 136365, -1125281, 991064, 317291, -293132, -25770, -25233, 628676,
- 6979, 100395, 97711, 28454, -1363115, -477278, -302795, -235149, -170725, -365609,
- 281320, -248571, -8590, -310311, -180926, 83752, 458488, 237834, -310848, -138513,
- 393526, 176631, -161598, 371515, 46171, -257161, -135828, 95563, 321049, 97711,
- -187368, 48855, 179315, -69256, 84826, 403190, 67646, 27917, -98247, 96100,
- 97711, 87510, 99858, 13422, -2684, 4832, -134755, 98247, 30602, 16106,
- -112743, -79457, 27917, -50466, -44560, -6442, 20401, -17717, -7516, -16106,
- 5906, -3221, -4832, -45634, 20938, 8590, 19327, 4832, 45097, 0,
- -22012, 3221, -44560, 22549, 27917, -13422, 31675, 2684, -30065, 20938,
- -32212, 4295, -13422, 4295, -9127, -12885,
- },
- {
- -126702, 4080219, 561567, -398358, 116501, 57982, -220654, -157840, -86973, 29528,
- 69256, 147640, -70330, -367757, 2437931, 122943, -2320893, 75162, -872952, 478889,
- 646393, -695248, 154082, 485331, -538482, 327491, -612033, -168577, 513785, -404801,
- 130460, 186294, -263067, -68719, -103079, -181462, 42413, 66035, -59056, -40265,
- 80531, 126165, 184147, 79457, -4295, -117038, -28991, 25770, 45097, 96637,
- 255014, -60130, -85899, 45097, 2147, 88047, 84826, -52076, 51540, 72478,
- -28454, -40802, 87510, 9664, -23085, 32212, 3221, -38655, -21475, 92879,
- 76236, -35433, -25770, 9127, 26307, 1611, -55298, -27917, 18254, 42950,
- 26307, -36507, 6979, -7516, 17180, 25770, -46171, -22012, 5906, 12348,
- -4295, -28454, -15032, 33286, -12348, -7516,
- },
- {
- 4078608, 2597918, -4075387, 641561, -151398, 120259, 187905, -28454, 24696, 292595,
- -342524, 457414, -156766, -264677, 307090, -554588, 240518, -93952, -6979, 1074,
- -90731, 173946, -244813, 345745, -318364, 135291, 100932, 1125281, 44023, 112206,
- 0, -220117, -384936, 256624, 86973, 227096, 105227, 29528, -56371, 72478,
- 212601, -122943, -83752, 9127, -179315, -58519, 86973, 97711, -19864, 17180,
- -142271, -60130, 56371, 140123, 32212, -58519, 176094, 7516, -44023, -109522,
- 27917, -5906, -61740, 32212, 31675, -75699, 55835, 48318, -46171, -18254,
- -12348, 75699, 37044, -39728, -45097, 30602, -84826, 15569, -19327, -31139,
- 1611, -5369, -27380, 37044, 17180, -32749, -3758, -9664, 12348, 5369,
- 25233, -3758, -2684, 21475, -16643, -14496,
- },
- {
- -31675, -762894, 1381369, 360240, -24696, -2684, -122943, 55298, 9664, 135291,
- 197032, 37581, 410706, 507880, -682900, 600222, 629213, 663036, -437550, 1158031,
- 541166, -171262, -654446, 1007170, -806917, -527744, -512175, -133681, -259846, -1026497,
- -215285, -149250, 59056, -210453, 329102, 156229, -199716, 229781, 141734, 67109,
- -288300, 208306, 141734, -65498, 87510, 147640, -1074, -33286, -79457, -25233,
- -44560, 125628, 89121, -11811, -126165, 15569, -40802, 69793, -6442, 11274,
- 33823, -98784, -6979, 40265, -53687, -27917, 60130, 8053, 46171, -2147,
- -64961, -4295, 16106, 28991, -40265, -49392, -49392, 35970, 26307, 42413,
- -43487, 24696, 30602, 11811, -28991, -3758, 5369, -537, -9664, 22012,
- 34360, -25770, -54761, 8053, 8590, 11811,
- },
- {
- 3897683, -12349105, 139586, -1430224, -140660, 45097, -44560, 450972, 106837, -154082,
- -266825, 115964, -88047, 231928, 222265, -53687, 56371, -241055, 650688, 49929,
- -228707, -248571, -132070, 147640, -184684, -103616, -112206, 112206, -273804, 60666,
- -76773, -79457, 353261, 60130, -95563, 147640, -37044, -58519, -354335, 9127,
- 17717, 260919, 244813, -82678, 9664, -92879, 37581, 44560, -47245, 165893,
- -125091, 39728, -42413, -63351, -38655, -68719, -5369, 30602, -62277, 4832,
- 33286, 25770, -10201, -5369, -52076, -102005, -59056, 79994, -23622, -41876,
- 63888, 0, -136902, 6442, 16106, -17180, -23085, 15569, 4832, -32212,
- 71404, -10737, -36507, 13959, 45634, -46171, -33823, 31139, 22549, 9127,
- -40265, 26307, 15569, 8053, 5369, -12348,
- },
- {
- -35433, -1182190, 307090, 473520, 135828, 30065, -90731, 61203, -74088, 2684,
- 265751, 125628, 88047, 717796, 1357747, 180389, 195421, 258772, -424665, 607738,
- 1403917, 281320, -402653, 581968, -642098, -1142998, -185757, -67646, -120796, 45634,
- 384400, -130460, -73014, -214748, 168041, -171262, -171799, -89657, 70867, 84289,
- 106837, 79994, 18790, 114890, -77846, -161061, -189515, 271657, 32212, -185757,
- 537, -8590, -114354, -56371, -14496, 24159, -32212, 85362, 96100, -95026,
- -44560, -40802, 26844, 15032, 44023, -17717, -62277, -59056, 52076, 34360,
- 23085, 29528, -10737, -3221, -4832, 12348, -20938, -24696, 25770, -20401,
- 52076, 10737, 14496, -6442, -30065, 25770, -30065, -2684, 8053, -31139,
- 22012, 1074, -21475, 9664, 1074, 4832,
- },
- {
- 5156645, 31678606, -1579474, -839129, -367757, 46708, -246424, 459562, -300111, -342524,
- 539555, 188979, 331786, 265751, 321586, -703301, -431107, 181462, -191126, -117575,
- -320512, 206158, -374736, -235686, 198105, -228707, 18790, -62814, -64961, 77846,
- -14496, -134218, 47245, -382789, -209380, -192200, -39192, 476741, -624381, 480499,
- -204011, 293668, 137439, 85899, -53150, -132607, -98784, 107374, 157840, -134218,
- -142271, -42950, -40802, 73014, 161598, 27380, -33823, -60666, 79994, 38655,
- 16106, 3758, -39728, 69793, 96100, -49929, -92879, 40265, -9664, -1611,
- 8053, 41339, -50466, 40265, -19864, 55298, -48855, -13959, -14496, -13959,
- -24159, 37581, -4832, 13422, 9664, -12348, -35970, -30065, 2684, 0,
- 35970, -6442, 0, -38655, 16106, 8053,
- },
- {
- 110595, 2412161, -448287, 434865, 64425, -836445, 108448, 434329, 115964, 70330,
- 178241, 709743, -246424, 96100, -1117228, 137976, 347355, -492311, -686658, 821949,
- 71404, -658204, -472446, -53150, 202400, 177704, -156766, -54224, 190589, 154082,
- 31675, -119722, -132607, 137976, -202937, -38118, -350040, -73551, 133681, -146029,
- -96100, -186294, 53687, 225486, -263604, 67646, 32749, -41339, 3221, -137976,
- -25233, 171262, 9127, 125091, 245350, -140660, -25770, -2147, -39728, 19864,
- 74625, 46171, 81068, 9664, 24696, 9127, -77846, -49392, -66572, 68719,
- 2684, 18790, 59056, -55298, 8053, 4295, 4295, -15032, 17180, 24696,
- 9127, -26307, -18790, -15569, -21475, 10737, 26844, -18254, -6442, -26307,
- 29528, -9664, -5369, -6442, -17717, 9664,
- },
- {
- 2563559, 4845797, -1815697, 664109, -146029, 83752, 849867, 632434, 229781, -353261,
- 83752, -97174, -78920, -106837, -204548, 195421, -259309, -206695, 37044, 17180,
- 181999, -227633, 198642, -78383, 164819, -35970, -218506, 219043, -82678, -248034,
- 118648, -33823, 244276, -224412, -284542, 346819, -169114, -168041, 111132, 45634,
- -537, 236760, 119185, 27380, -54761, -92879, -114890, -68183, 74088, 34897,
- 34897, -42413, 41876, 134218, 59056, -26307, -76773, -171262, 66572, 54761,
- 35970, -3221, 75162, 1611, -69256, 53150, -17180, -10737, -62277, 18254,
- 13422, -12885, -45634, -33286, 9127, -25770, 32212, 54761, -28454, 10201,
- -9664, -26844, 45634, -54761, 537, -53150, 15032, 0, 23085, 4832,
- -22549, -4832, 24159, 5906, -34360, 8590,
- },
- {
- -55298, -2142652, -327491, -496069, -261456, 169651, 16106, -97174, 78920, -15569,
- -111132, 87510, -177167, -435939, -110059, 12885, -181462, -24696, 64425, 63351,
- 532039, -1666447, 213138, -806917, 627065, 747861, 88047, -392453, -4832, -31675,
- 355945, 139586, 394600, -149787, -103079, 47245, 18254, -187905, 308701, 22012,
- 37581, 102542, -77309, -16106, 9664, 10737, 3758, -183073, -42413, -186831,
- -66572, 166967, -77309, 60130, -23085, 99321, 75699, 67646, -67109, -16643,
- -63888, -38655, -9664, 56371, -25233, -67109, 132607, -35970, 34897, -28991,
- -26307, 27917, -45634, -6442, -19864, -23085, 19327, 42413, -3758, 32749,
- -27917, 23622, 42413, -537, 6442, 5906, 11811, -18790, -13422, -12348,
- -20401, -4832, 8590, 13959, -10201, -12348,
- },
- {
- -401043, -2404645, -103616, 82141, -262530, -197032, 2128156, 98784, 520228, -355409,
- -674310, -39728, -390842, 536871, -426276, 525597, -779000, -89121, 128312, -510027,
- 431107, 100932, 197569, 70330, 67109, -211527, -187905, -266288, -280247, 236223,
- 38118, 95563, -16643, -26844, -305480, -202400, 271120, 42950, -44560, 178778,
- 17180, 25770, 151934, 250719, 130997, 197569, -99858, 106837, -128312, -197569,
- 50466, -122943, 59593, -42950, 16106, 44560, 54761, 132070, 58519, -125091,
- -39192, -12885, 537, -28991, 24159, 101469, -2147, 19864, -62277, -22549,
- 83752, 0, -68719, -13422, 5906, -26307, 24159, -48318, -9127, -41339,
- 74625, 15032, -17180, -36507, -20401, 69256, 45097, 8590, 24159, 2684,
- -12885, -537, -51003, 1074, -12885, -9664,
- },
- {
- 169114, 610959, -803159, -413391, -15032, 12348, 4832, 156229, 78920, 94489,
- -82141, 9664, -859530, 1971927, 1235877, 1592896, 10737, 403190, 117575, -505196,
- -233002, 345745, 221728, 522375, 645319, 186831, 219043, -159451, -122943, 136365,
- -515933, 230854, 237297, 163209, 252329, 47782, 215285, -58519, -161598, 292058,
- -178778, -164283, 77846, -99858, -52613, 52076, -187368, -75699, 50466, 175557,
- -130460, 47782, 160524, 124017, -21475, 9664, -22549, -47782, 85899, -40802,
- -122943, 56908, -10737, -33286, -40802, 78383, -73551, -92879, 22012, 537,
- 47782, 12885, -54761, 22549, 18254, -35433, 84289, -65498, -25770, -32749,
- -42950, 33286, 32212, -11811, 53687, -9664, -13959, -49929, 30065, -8590,
- -32212, -2147, 32212, -18254, -20401, 40265,
- },
- {
- 9127, 1800128, 1819456, -665720, -391916, -2288681, 57445, 29528, -30065, -126165,
- -93952, -17180, 269509, -916439, -1727114, -428423, 579821, -772020, 304943, -70330,
- -52613, 46708, -163746, -289373, 294742, 168577, -79994, 410706, -566399, 249108,
- 195421, -98784, 137976, 321586, -64961, -31139, -329102, -101469, 93952, 54224,
- -130997, 201863, 181462, 121333, -84826, 114354, 73014, -164283, -161061, 5906,
- 38118, -88047, 11274, 97174, 54761, 60130, 109522, -32212, 65498, 12885,
- -4832, 68719, 21475, -60130, -10201, 3758, -75162, 51540, 26307, -48855,
- 64425, 5369, -100932, -76236, 16106, 44023, 30602, -16106, -23085, 37581,
- -15569, -79994, 21475, 28454, -18790, -2147, -1611, -66035, 45097, 21475,
- -1611, 20938, -5369, -18254, -27917, -2684,
- },
- },
- {
- {
- 18254, 4119948, 767725, 789737, 186294, -187905, 102005, 103616, -78920, 219580,
- -51003, 71404, 90194, -128849, 601295, -289910, 582505, -333934, -128312, -84826,
- 355945, -61203, -154619, -403190, -391916, -317291, -449898, 15032, -183073, -97711,
- 224949, 405338, -790274, 385473, 264141, 61740, 4295, 108985, 175020, 135828,
- 128849, -229244, 25770, -43487, 186294, 8053, -170188, 59593, 20938, 103079,
- 93952, -49392, -42950, 62814, -137439, -132070, 48855, -55298, 159988, 52613,
- 80531, -32212, -101469, 41339, 78920, -20401, -63351, -7516, -15569, -73551,
- -537, 46708, -48855, 44023, 11811, 537, -13959, 45097, -23085, -42413,
- 16643, 30602, 12885, -23622, -42413, -24696, 31675, -6979, -10737, 5369,
- 45097, -21475, 12348, -26844, -12885, 16643,
- },
- {
- -1646046, -11676405, 5760088, 1074279, 496069, 82678, -69256, 226560, 437550, -487479,
- -152471, -11811, -367757, 452045, -751082, -313533, 573915, -243739, -547608, -52613,
- -134218, 414464, 171799, 205622, -1074, -154082, -428960, 402116, -47245, -261456,
- -284005, -306553, -199716, 102005, 23085, -236760, -142808, 54761, 179852, -30065,
- 353798, -172336, -82678, 120259, -38655, -194347, 25770, -42413, 20938, 188979,
- 124554, 15569, -122943, -52076, -111132, -119185, 47782, -10201, 69256, -6442,
- -38118, 2684, -17717, -30602, -20938, 51540, 40265, 537, -71941, -55298,
- 14496, -41876, 64961, -30065, -16643, 96100, -53150, -13422, 15569, 24696,
- 17717, -39192, 32749, 13422, -31139, -26844, 76773, -35433, 17717, -17180,
- -3758, 19864, 14496, -25233, 1611, -10201,
- },
- {
- -1452236, -6629819, 1967095, -878858, -1494112, -199179, -62277, -227633, -69793, 95563,
- -138513, 100395, -8590, 596464, -934692, -477815, 172336, 408022, 352724, -51540,
- -14496, 0, -56371, -83752, 343061, -191663, -228707, -388158, -274341, -2684,
- 455803, 14496, -373662, -328028, -102542, -92342, -235686, -20938, -8053, -188979,
- -57982, -225486, 130460, -76236, -132070, 18790, 142808, 137976, -38655, -298500,
- -144955, 195421, 199716, -41339, -15569, 87510, -103079, -123480, -73014, 64961,
- 53687, -23085, -74625, -90731, 63351, -17180, 12885, -69256, 62277, 31675,
- -22012, -5906, -4832, -31675, -47245, 1074, 9127, 2684, 6442, 41876,
- 16106, 10737, 9127, -47245, 8590, 19327, -12885, 19327, -1611, 12885,
- 27917, -13422, 6979, -29528, -3221, 11811,
- },
- {
- 99858, 3340948, 607201, 215822, -157303, 56371, -18254, -17717, -146029, -100395,
- -57445, 23622, 415538, -266825, 427349, 800475, 42413, 84289, -1316408, 716186,
- 264677, -783832, -197569, -267899, -112743, 574452, 112206, -164283, 244276, -569620,
- -282931, -246424, 18790, -62277, 86436, 350577, -561030, 86973, 184684, -419296,
- 129386, 83215, -64425, -56908, -15032, 220117, -42950, -6979, 179315, -34897,
- 9127, 91268, -89121, -5906, 52076, -80531, 17717, 132070, -61203, -33823,
- 17717, 24696, -15569, 40802, -25233, -45097, 0, 6979, -31139, -39192,
- -18790, 92879, 43487, 2147, -40265, 74088, -7516, -13959, -38655, -3758,
- 9664, 26307, -38655, 6979, -22549, 10201, 25770, 13959, 3221, -24159,
- 5906, 31139, -16106, -8590, 6442, -16643,
- },
- {
- -5797132, -7437810, 65498, 1298154, -132070, -238371, -192737, 202937, -118648, 287763,
- 9664, -360777, 159988, 210453, 140123, 280784, -116501, -413391, 238371, 95026,
- 277025, -223338, -344671, -9664, 259309, -148713, 194347, 639950, -269509, -282931,
- 84289, -46708, 31139, 21475, -354335, 46171, -187905, 659814, 176631, -325344,
- 360777, -11811, 10201, -127238, 28991, 152471, -201863, -24696, 75162, 0,
- 37581, 118112, -238908, 35970, -22549, -28454, -44560, -27917, 104153, 135291,
- 14496, -1611, -14496, -104153, -64425, -22549, -31139, 74088, 32749, -8053,
- -63888, -18254, 23085, 93952, -11274, -4832, 6442, -59593, 31139, 16106,
- 1611, -16643, 12885, -59593, 19864, 8053, 3221, -13959, -22012, 37581,
- -2147, -6979, -7516, 6979, 25233, 8053,
- },
- {
- 251792, 241592, -682363, -116501, 25770, 89121, 74088, 537, -50466, -50466,
- -198642, 1611, -47782, -199179, 552977, 1120987, -1491427, 424128, -259846, 493921,
- -469762, 198642, 358093, 1083406, -105764, 702227, 41876, 4295, 654446, 75162,
- 316754, -351650, 219043, -186294, 151934, 214212, -85899, -121870, -179315, 47782,
- 175020, -132607, 91268, 40802, -69256, 14496, -219043, 46708, 6442, 119185,
- 50466, 46171, -49929, 136902, 28454, -28991, -37581, 125628, -17180, -12885,
- 72478, -10201, -11274, 62277, 37581, -73014, -12348, -24696, 35970, 39728,
- 62814, -4295, -47245, 18254, 8053, -18790, -10201, -41876, -55298, -10201,
- 28454, -25233, -10737, 7516, 37044, -15032, -11274, 12885, -3221, -19327,
- -3758, 34360, 15569, -26844, -9127, -10201,
- },
- {
- -831613, -19117974, 518080, -1165010, 529892, -62814, 52076, -39728, -434865, 34897,
- -21475, 48855, 215285, 287226, 425739, -203474, 368830, -344671, -319438, 310848,
- 138513, 275415, -135291, -41339, -344671, -93416, 105764, -99321, -53150, 61740,
- 163209, 73014, 99858, 145492, -188442, 117575, 52076, 134218, -183610, 45634,
- -76236, -170725, -55835, 122943, 52076, -26307, -114354, 175557, 53150, -10201,
- 81604, -52076, 91268, 29528, 75162, -25770, -13422, 126702, -4295, -22549,
- -46171, -38118, -3758, 4295, 19327, 2147, -52613, -57445, 32749, 9664,
- -59593, 84289, 41339, -58519, -52613, 15032, 34360, -38118, 23085, 17180,
- -49392, 32212, 8590, -59593, -6979, 69256, -36507, -23085, -3221, 37044,
- 3758, -29528, 11274, -17717, 14496, -10737,
- },
- {
- 328565, -466004, -1939715, 317828, -103079, 1074, 33823, -18254, 22012, -160524,
- -44560, 88584, 435939, -714575, 198642, 1511292, 446140, 1034013, -133144, -679679,
- 565862, 1011465, -799401, 517544, 154619, -217433, 308164, -427349, -539018, -40265,
- 212601, -155693, 312996, -285615, 137439, 307090, -4295, -221728, 121333, -117575,
- 58519, 179852, -141197, 39728, 118112, -18790, 68719, -133681, 166430, 230318,
- 2684, 3221, -31139, 89657, -198642, -39192, -20401, -68183, 32749, 133144,
- -2684, 82141, -74088, 10737, -9127, 38118, 132070, -26307, -49929, 2684,
- -1074, -40802, -17717, 63888, -22012, -3221, 49929, -39728, -10737, 3221,
- -47782, -537, 18790, 19327, 17180, -12348, 1611, -46708, 21475, 5369,
- -36507, 17180, -13422, 5906, 9664, -2147,
- },
- {
- -8273718, 19838454, 4256313, -399969, 260382, 74625, -443455, 65498, 531502, -230318,
- -764504, 106300, 36507, 729608, -364535, 301185, -268972, -40265, -150324, 103616,
- -91805, -42413, -537, -362925, -272194, 75699, -260919, -379031, 33286, 100932,
- 318901, -345745, 108448, -376347, -31675, -333934, -241055, 620623, -678068, -79994,
- -85362, 315680, -79457, 188979, -53150, 149787, -56371, -208843, 123480, 2147,
- -64961, -301185, -100395, 9127, -102542, -37044, 61203, -30065, -132070, 5906,
- 51540, -70867, -28454, -33823, -73014, 143881, 62814, -53150, -5906, 23622,
- -47245, 57445, 30065, 16643, -19864, -64961, 56908, -16106, 0, -29528,
- 5906, 3758, 9127, 13422, -537, 30065, 35433, -13959, -5369, -32749,
- -8053, 13959, 1611, 22012, -24696, 6442,
- },
- {
- -172872, 951335, 229244, 197032, 406948, 479426, -560493, 31139, 206158, 38655,
- -274878, 118112, 377957, 749472, -559420, -442919, 386547, 696322, -187905, -670552,
- -129386, 24696, 525060, 69256, -236223, -150861, 194884, -15032, -180926, 268435,
- -555125, 219580, 41339, 38655, -183073, 249108, 17180, -180926, -206158, -220117,
- -44023, -54761, -97174, 62814, 223338, -181462, 45634, -160524, 56371, 84289,
- -149250, 27917, -64425, -137976, -48855, 104153, 53687, 12885, -13959, -26307,
- 3758, 20401, -39192, 54761, -35970, 117575, 79994, -5369, -22549, -98784,
- -9664, -19864, 18254, 51003, -13959, -45634, 16643, 9664, 2147, 11274,
- 33286, 27917, 15032, -12885, -4295, -30602, -6979, 14496, -1611, 23085,
- -24159, 4832, -12885, 8053, -1074, -23622,
- },
- {
- -2381559, 803159, -77846, 485331, -9664, 1078037, -1561758, -175557, 425202, -3758,
- -40265, 24696, 32749, 125628, -798327, 308164, -71404, -175557, -151398, 55298,
- -55835, 380641, -119185, 88047, -187368, -27917, -95563, 21475, 187368, -12885,
- -224412, -561030, 279710, 81068, -278099, -242666, 264677, -194884, 89121, 335007,
- -121333, -278099, 98247, -13959, 144955, 66572, -56908, -2684, -173946, 50466,
- 2147, -9127, 28454, -138513, 83215, 7516, 74625, 51003, -107374, -3221,
- 12885, -22012, 27917, 55298, 61203, -44560, 3758, -6442, 2147, -13959,
- 25770, 9127, 31139, -3758, -64425, 9127, -47782, -28991, 24159, -32749,
- 34897, -12885, -32749, 54761, -27917, 26307, -37044, 5906, -34360, 9127,
- 16106, -22012, -15569, 15032, 24159, -18254,
- },
- {
- 18790, -2539936, 122407, -300648, 152471, -353798, 4832, 124017, 29528, -132070,
- -193274, -171262, 561030, 592706, -1624571, -371515, 693100, 95563, -1005022, -326954,
- 474057, 195958, 454730, -319975, -409633, -130460, 567473, -340376, -302795, 473520,
- -475131, 521839, 119185, 90194, -185757, -5369, -110595, 120796, -254477, 1074,
- -94489, 75699, 268972, -83215, -126165, 110595, 33286, 26844, -12885, -42413,
- -84826, 71404, 105764, 20401, -97711, -31675, -4832, 103079, 161061, 19864,
- 118648, -33823, -83752, -5906, 111132, 103616, -25770, 71941, 1074, 14496,
- 8053, -12885, 1074, -4832, -25770, 11811, -49392, -40802, 10737, -5369,
- 38655, -11274, -4832, 28454, 15032, -4832, 11811, 24159, 12348, 7516,
- 11274, 11811, -26307, -20401, 32749, -5906,
- },
- {
- 1060320, -861678, 2876554, -440771, -76236, -1340567, -792958, -195421, 235686, 531502,
- -315143, -424128, 397821, 1240709, -310848, 68719, 90731, 179315, -70330, 161061,
- -523986, 137439, -28454, 28991, 537, -30065, -111132, 96100, -232465, -172336,
- 48855, -191126, -176631, -47245, 210453, -63888, -161061, 97174, 265214, -264677,
- -291521, -58519, 199716, -111669, 173409, 128849, 17717, -199179, 190052, 10737,
- 226023, -18790, -84289, 2147, -107911, -84826, -64961, -33286, 8053, 109522,
- -26307, 26307, 11274, 33823, -82141, 2147, -33286, 59593, 64425, -77309,
- -55298, 64961, 30602, -40802, -8590, -20401, 11811, 57445, -33286, -9127,
- -68183, 34897, 32212, 22012, -28454, -63888, 6979, 55835, 2147, 8053,
- 13959, 12348, 3221, -33286, 12348, -22012,
- },
- {
- -309775, 947577, 1041530, -55835, 34897, -68719, -172872, 250182, -402653, -336618,
- 185757, 24159, 377957, 1493575, -5352603, 714575, -1074, -150861, 260382, -451508,
- -216359, -188442, 168041, 294742, -26307, 577673, -607201, 211527, 330712, 6442,
- -56371, 381178, -5906, 226023, -61203, 157303, 254477, 6979, 43487, 33286,
- 165893, -74625, -6979, 53687, -20938, -79457, 102542, -122943, 25770, -42413,
- 118112, -108448, -142271, 2147, -3221, -44560, 8053, 20401, 43487, 14496,
- 78920, -125091, -56371, 5906, -34897, -99321, 76236, 7516, -34897, -3758,
- -42413, 1611, 36507, -25770, 21475, -30602, -43487, 60130, -10201, 48855,
- 9664, -73014, 12885, -5906, -9127, 19864, 39728, 45634, -39728, 42950,
- 13959, -34360, -22012, 23085, -4295, -26307,
- },
- {
- -456877, -266825, 2170032, 376883, 270046, -105227, 490163, 316217, -149250, -318901,
- -42950, -907312, 113817, 1044751, 1734630, 38655, -92879, -304406, 321049, -357556,
- 51003, 290447, 22012, -177704, -261456, -15032, 242666, 1321776, 44560, 15032,
- 161061, 71404, -36507, 223875, -164283, 128849, -125628, 230318, -69793, 279173,
- 6979, 66572, 39192, 5369, -8053, -196495, 173409, 130460, -112206, -105764,
- 4295, -18790, -54761, -120259, 78383, -141734, -18254, 39192, -5906, 95026,
- -39192, -31139, 61740, 22549, -1074, 22012, 5369, 62814, -33823, -43487,
- -11811, -5369, 57982, 3221, -70330, -53687, 19327, 27917, -45634, 10737,
- 42950, -1074, -27917, 20938, 9664, -1611, -16106, 8590, -71941, 17180,
- -1611, -9664, 32749, 1611, 3758, -8590,
- },
- },
- {
- {
- 122943, 7268159, -1272921, -172336, 267899, -55298, -55835, 240518, -3758, 220654,
- 14496, 295816, -169651, 153008, -417686, -186294, 660888, 68183, 253940, -335007,
- 544387, 77846, -255551, -281857, -703301, -520228, -187368, -81604, 79457, -2684,
- 347355, 153545, -50466, -74625, 310311, 55298, -159988, 134218, -258235, 270046,
- 54224, -47245, -93416, 1074, 170725, 10201, -231391, 26307, 18254, 158914,
- 142271, 10201, -67109, 94489, -8590, -148176, 26307, -144418, 74625, 135291,
- 28454, 108448, -34360, -33286, 52613, 51540, -35970, 0, 49392, -45634,
- -51540, 16643, -31139, 51540, 24696, 0, -14496, 46708, 11274, -25770,
- 1611, 52076, 44023, 8590, -36507, -20938, 9664, 2684, -9664, -31139,
- 42950, -10737, -4832, -8590, -26307, 2684,
- },
- {
- 935766, -11209328, 3311957, -88047, -227096, 238908, -140123, -37581, -41876, 195421,
- -302795, 1611, -230854, -280247, 112206, -484258, 91268, -191126, -565325, -318364,
- 77309, 162672, 290984, 292595, -85362, -155693, -256087, 121870, -20938, -279173,
- -40265, -339302, -155693, -52613, 74625, -47782, -227633, -113280, -18790, 106837,
- 230318, 33823, -210453, 13959, 90194, -176631, -43487, -179852, -9664, 38118,
- 172336, 148176, 19327, -52076, -74625, -154619, 34897, 20938, 76236, 20401,
- 76236, -63888, 18790, 21475, -80531, 6979, 49392, 22012, 9664, -37044,
- -13422, -44560, 39728, 25770, -73551, 60130, -26844, -28454, 9127, 37581,
- 32749, -27917, 25233, 20938, 0, -73551, 53687, -9664, 9127, -4832,
- 1611, 12348, 24159, -24696, -1074, -13422,
- },
- {
- 797253, -722091, -6373732, -1611, -719944, -274878, 182536, -280247, 59056, -338766,
- -246424, 161598, -125091, 56908, -391379, -238908, 43487, 150861, 637803, 65498,
- -156766, 34897, 23622, 33286, 236760, -176094, -143881, -307090, -181462, -122943,
- 117038, -147640, -132070, -350040, -321049, -93952, 11811, -131533, -48318, -273804,
- 45097, -23085, 37581, 68183, -64425, -174483, 144955, 72478, 128312, -153008,
- -142808, 37044, 67109, 26307, 22012, 3758, 26844, -53150, -57445, 11811,
- 41876, 31139, 7516, -53687, 65498, 12885, -9127, 8590, 32749, 59056,
- -1074, 1074, 4832, -14496, -15569, -9127, -27380, 10737, -31675, 16106,
- 13959, 12885, 40265, -29528, -34360, 14496, -19864, -4832, 18254, -9664,
- 27380, -3221, 16106, -14496, -9127, 13422,
- },
- {
- -240518, 2138894, 1324997, 527744, -116501, -55835, 37044, 13422, -70330, -11811,
- -119722, -284542, 214748, 182536, -1822677, 1080721, 1243930, 8053, -1646583, 472983,
- -445066, -361851, 59056, -469225, 303869, -322123, 936303, 283468, -347355, -434865,
- -165893, -334471, 23622, -147640, 224412, 229244, -377420, -3221, 214748, -287763,
- 98247, 129923, -80531, 14496, -161598, 282931, 105227, -25233, 179315, 32212,
- -106837, 45634, 38655, -57445, 82141, -57982, -43487, 161598, -46171, -110595,
- -33286, 42413, -20938, 9127, -19327, -14496, -18790, 18254, 3221, -48855,
- -47782, 37581, 30065, 5369, -25770, 20938, 37581, 17717, -27917, -17717,
- -11274, 38118, -27380, 2684, -12348, -11274, 17180, 23622, 23622, -11274,
- -6979, 29528, 16643, -13959, 9664, 9127,
- },
- {
- 4997732, -19530826, -2238752, 1378148, 199179, -70330, -420907, 176631, -150861, -115427,
- 503048, -121333, 202400, 295816, 68183, 147103, -213675, -391379, 109522, 6442,
- 187905, -148176, 8053, -347892, 98784, -155156, 165356, -464930, 807454, -456877,
- 154082, -48318, 184147, -180389, -236760, -4832, -199716, 161061, 129923, -183073,
- 176631, -124017, 59593, -89121, 46171, 168577, -127238, -32749, 115427, -23085,
- 89657, 171799, -112743, -62814, -60130, 22549, -114890, -98784, 91805, 110059,
- 65498, -18254, 45097, -99321, -91805, 11274, -48855, 34897, 47782, 6979,
- -40802, -45634, -52076, 59593, 36507, -36507, 60130, -38118, 11274, 42413,
- 23085, 4295, 16643, -59593, -25770, 22012, 1611, -1611, -29528, 4832,
- -7516, -1611, -11811, -8590, 17717, 17717,
- },
- {
- 115964, 1169842, -572841, -424665, 21475, 19327, 98784, 54761, 39192, 20938,
- -272194, -150324, -147103, -718333, 294205, 533650, -270583, -176094, 381178, 454730,
- -1113470, 12885, 351114, 183073, 476741, 199179, 557809, -26844, 222801, 961536,
- 164283, -190589, -73014, 78383, 23622, 206158, -11274, -108985, -94489, -173409,
- 332323, -106300, 49929, 37044, -13422, 5369, -174483, -22549, 22549, 69793,
- 161061, -2684, -23622, 27380, 93416, 36507, -32212, 90194, -10201, -44560,
- 26307, 50466, 40265, 8053, 39192, -44023, -45097, -42950, -11811, -9127,
- 56908, 33286, -46708, 2147, 24696, 26844, 35433, -24159, -40802, -35970,
- 31675, -9664, -39728, -2684, 28991, -3221, -5906, 537, 7516, -11274,
- -30602, 18254, 44023, -12348, -6442, -14496,
- },
- {
- -3606162, -17970680, 2282238, -380641, -414464, 19864, 308701, -276489, -332860, 167504,
- 59593, -138513, 229781, 362925, 135828, 171799, 81068, 194884, -432718, -57445,
- 139586, 142271, -219580, -78920, -130460, -118112, -22549, 37581, 67109, -100395,
- 59593, 368830, 53150, -90731, 85899, -40265, 280247, 209380, -194347, -2147,
- -16643, -207769, -171799, 192200, -82678, -42950, -127775, 39728, 191663, -146029,
- 111132, -11274, 9127, 16643, 38118, 84289, -19864, 144955, 51003, -9664,
- -5906, -29528, -11811, -16643, 34897, 62277, 26844, -60666, -10201, 13959,
- -60666, 35433, 78920, -23085, -53150, 537, 37581, -9127, 6979, 27917,
- -52076, 14496, 22012, -19327, -45097, 56371, 17180, -26844, -12885, 2684,
- 25233, -33823, -19327, -13959, 0, 6442,
- },
- {
- 78920, 746787, -1308891, -74088, -152471, -49929, 17717, -2684, 96637, -125091,
- -217970, -151398, 148713, -559420, 185220, 285078, 467615, 121870, 30065, -399969,
- -32749, 2147, -452045, 291521, 82141, 454193, 50466, -99321, -648003, -250719,
- 19327, -21475, 273267, -81604, -104690, 462246, 46171, -167504, 18254, 38118,
- -133681, 121870, -112743, -82141, 96100, 60130, 170188, -125628, -10737, 226023,
- 75162, 0, 65498, 46708, -67646, -21475, 37581, -77309, -49929, 132607,
- 51003, 83215, -5369, -16106, 0, -24159, 101469, 20401, -23085, -54761,
- -3221, -30602, -23085, 56371, 1611, 5906, 30602, 25770, -12885, 19327,
- -52613, -32749, -15032, 20938, 31675, -10737, 20938, -23085, 1074, 24696,
- -32749, 8053, 17717, -11274, 7516, -1611,
- },
- {
- 9233106, 2186138, -1223529, -431644, -2684, -12348, 57445, -407485, 350577, 234613,
- -692564, -197569, -465467, 663572, -580357, 322123, 496069, -249645, -263067, 332323,
- 128849, -61740, -318364, -156766, -299037, 213138, -126165, -269509, 44023, -18254,
- 100395, -138513, 6442, -124554, -79457, -268435, -311385, 123480, 102005, -368293,
- -135291, 111132, 144418, 20938, 71404, 124554, -56371, -171799, -1074, 7516,
- 24159, -143881, -172336, -55835, -96100, -98247, 41339, -29528, -131533, 15032,
- -8590, -29528, -30065, -60130, -143881, 95026, 107911, -54761, 20938, 28991,
- -23085, -24159, 55298, -4295, -1074, -67646, 35433, 10201, -537, -8053,
- 5906, -25770, 4832, -8590, -26844, 15569, 28454, 18790, 13422, -14496,
- -22012, 7516, -7516, 31139, -16106, -4832,
- },
- {
- 133681, -1263257, 1962800, 118648, 115964, 718333, -55298, -337155, 64961, -62814,
- -199179, -121870, 336081, 718333, -127238, -144418, -266288, 551903, 721018, -746251,
- -386547, -128312, 237297, 496069, -12885, -255551, 359167, 2147, -295816, 127238,
- -583579, 1611, 255014, 16106, 28991, 49392, 319438, -73551, -149250, -126165,
- 11811, 18254, -41339, -89657, 291521, -165356, 16106, -89121, -86436, 77309,
- 51003, -31139, 19327, -95563, -175557, 42950, 57982, -14496, 24696, 16106,
- -18790, -22012, -70867, 537, -41876, 47782, 93416, 71941, 64425, -103616,
- -14496, -20938, -35970, 35433, -13959, -17717, -13959, -6442, -9127, -35970,
- 537, 25770, 23622, 5369, 22549, -5369, -28991, 10737, -9664, 26844,
- -17180, 537, -3758, 9127, 18790, -14496,
- },
- {
- 1796370, -990527, -1916092, -998580, 352187, -84289, -359167, -517544, 126702, 272730,
- -82678, -63351, 41339, 250719, -411780, 147103, -243203, 76236, -189515, 196495,
- -181999, 402116, -19327, -9127, -99858, 117575, -28991, -73551, 46171, 167504,
- -139586, -335007, -12885, 207232, -162135, -402653, 146029, -57982, 5369, 138513,
- 180389, -187905, -59593, -54761, 66572, 33823, -47782, 16106, -72478, -1074,
- -10737, -27917, 17180, -148176, 30602, -5906, 8590, 93952, -54224, -45634,
- -29528, 4295, -18254, 28991, 85899, -36507, -12885, -30602, 23622, 16643,
- -10201, 20938, 51540, 42950, -21475, 18254, -30065, -60130, 17180, -24696,
- 22549, 14496, -48318, 59056, -16643, 45097, -9127, -537, -22549, -2147,
- 18790, -9127, -29528, -1074, 39192, -4295,
- },
- {
- -55835, -2099702, 83215, -418759, 181999, -281857, -124554, 0, 178778, -225486,
- -93952, -222265, -47782, 676994, -526134, -459025, -231391, 339839, -505732, 35970,
- -340376, 1258962, 40265, 395674, -454193, -300111, 21475, 54761, -192737, 161598,
- -128849, 216896, -189515, 210990, -191126, -81068, -83215, 250182, -195421, 112206,
- -62814, -71941, 287226, -12885, -70867, 126165, -86973, 137439, -1611, 85899,
- -8053, -63351, 87510, -39728, -4295, -67646, -47782, -10737, 88584, -15032,
- 97174, 13959, -85899, -49392, 33823, 144418, -53687, 27917, 14496, 31139,
- 15569, 2684, 26307, 23085, 9664, 15569, -13422, -47245, 4295, -22012,
- 30602, -12885, -27380, 10201, 18254, -6979, -13959, 17717, 13422, 8590,
- 22012, 9664, -15032, -10201, 22549, 5906,
- },
- {
- -1468342, 4641249, 88047, -82141, -121333, -246424, -1522029, 23085, 64425, 430570,
- 187905, -130460, 177167, 902480, -104153, -274341, 317828, 191663, -52613, 431644,
- -183073, -84289, -129386, -60666, -104153, 457951, -83752, 125091, 127238, -153545,
- -141197, -122407, -148176, -42950, 293132, 103616, -226560, -37044, 241055, -144418,
- -208843, -167504, -8590, -171799, -86973, -79457, -61203, -187368, 66035, 112743,
- 183073, 81604, -88047, 122407, -55298, -32749, 4295, -83215, -62277, 128849,
- 26307, -41339, 537, 60130, -80531, -68719, -35433, 8590, 70867, -5369,
- -85362, 17180, 77846, 20938, -1611, 5369, -22549, 65498, 6442, 31139,
- -62277, -11274, 20938, 50466, 10737, -66035, -35970, 6442, -20401, 537,
- 10737, 2147, 30602, -2147, 17717, 8053,
- },
- {
- 203474, 313533, 563178, 64961, -63351, -67109, -127775, 266288, -411243, -312459,
- 62277, 12348, 770947, -2107755, 1168231, -1856500, 478352, 339839, -9664, -408022,
- 56908, -6442, 156766, 517007, -222801, 559956, -150861, 21475, 596464, -221728,
- 89657, 18254, 30602, 129923, -230318, 139586, 61740, -67109, 160524, 4832,
- 92879, 59593, 50466, 145492, 26307, -112743, 99321, -90731, 28991, -89657,
- 133681, -44560, -126165, -122943, 6442, -33823, -30602, 39728, 8053, 8590,
- 114890, -54224, -73551, 16106, 38118, -94489, 43487, 88047, -38655, -13422,
- -33286, 0, 44560, -23622, -537, 29528, -73014, 47782, 16106, 30065,
- 32212, -55298, -24159, -2684, -39728, 1611, 18790, 52613, -31675, 15569,
- 37581, 1074, -32212, 18254, 17717, -39728,
- },
- {
- -46171, -1175747, 1066226, 469225, 757525, 1983738, -218506, 327491, -137976, -383863,
- -346282, -265751, 10201, -53687, 3571802, 247497, -498216, 441845, 119185, -204011,
- -112743, 313533, 101469, 153545, -249645, -258235, 11811, 1374926, 270046, 39728,
- 39192, 76236, 15569, -11811, -59056, 20938, -33823, 49929, -52076, 224412,
- 238908, 36507, -95026, -44023, 169114, -155156, -77846, 104690, 66572, -93416,
- -21475, 31139, 39728, -68719, 5906, -136365, -134755, 15569, -4832, 84289,
- -12885, -62814, 22012, 18254, 12348, -10737, 30065, 13422, -49392, 537,
- -59593, -14496, 67109, 64425, -41339, -54761, -24159, 37044, -27380, -17180,
- 23085, 46171, -6979, -10737, 19864, 2147, -10201, 42413, -48318, -13422,
- 5906, -16643, 18254, 23085, 17180, -5906,
- },
- },
- {
- {
- -132070, 6135898, -998580, -248034, -60666, 130460, -173946, -183073, 148713, 88047,
- 134218, -197569, 34897, -62277, -1954210, -405338, -330176, 69256, 591632, -137976,
- -32749, -157840, 149250, 135291, -383326, 170188, 287226, 271120, 322123, -107911,
- 275952, -537408, 600222, -60130, -195958, -312996, -106837, 484258, -288837, 60666,
- -128312, 108448, -16643, -129386, -25233, 190589, -16643, -22549, -46171, 22012,
- 93952, 114890, 14496, -26844, 107911, 51003, -9664, -11811, -62277, -31139,
- -72478, 59056, 98784, -10737, -16106, 46171, 61203, -13422, -28454, 59056,
- 7516, -15569, 10201, -36507, 16643, 10737, 11811, -29528, 0, 17180,
- -10737, -19864, -10201, 26307, 40265, 18790, -21475, -14496, 7516, -2147,
- -34360, 22012, -14496, 20938, 4832, -15032,
- },
- {
- -52076, -14158360, 519691, 408022, -421981, -210453, 374199, -26844, -499827, 306553,
- -117038, -118112, 230854, 47782, 1176821, 451508, -186831, 125091, 626528, -212601,
- 10737, -196495, -239444, -73014, -200253, 97174, -114354, -122943, -119722, -135828,
- 114890, -109522, 255014, 49929, -220654, 92879, -7516, 108448, 176631, -60666,
- -287226, -42950, -22012, 78920, -40265, 148713, -241592, 59056, -153545, -118112,
- 111132, -133681, 81068, 34897, 18790, 28454, -94489, 97174, 43487, 2684,
- 31675, 18790, 36507, 97174, -2684, -37581, -42950, -5906, 20401, 89121,
- 21475, -1074, -54224, 15032, 13959, -85362, 36507, 12885, -17180, -42413,
- 10201, 26844, -26307, -6442, 34897, 42950, -83215, 39728, -10737, 17180,
- 6979, -14496, -6442, 18254, -13422, 8053,
- },
- {
- -462783, 9902584, 741956, -423054, 1230508, 245350, 64425, -49392, 56908, -88584,
- -385473, 71404, -47245, 151934, 24696, 39728, -33823, -302258, 651224, 288300,
- 342524, 53687, 231928, -94489, -294205, -154082, 159988, 104690, 42950, -191126,
- -132070, -168577, 12348, 257161, -45634, -50466, 185220, -169114, -3221, -59056,
- -63351, 148176, -26307, 90194, 189515, 115427, -129923, -235149, -11274, 148176,
- 95026, -95026, -107911, 43487, 28454, -105764, -25770, 109522, 15569, -14496,
- -95563, -40802, 132070, 23622, -32212, 45634, -19864, 54224, -35433, 11274,
- 49929, 8053, 5369, -4832, 40802, -20938, -11811, 5906, -5906, -20401,
- -27917, -2147, 8053, 63888, -18790, -20938, 21475, -20401, -2147, 0,
- -35970, 4832, -6979, 25770, -2147, -3221,
- },
- {
- 340913, 1137630, -778463, 22549, 148176, -48855, -66572, 73014, 84289, 53687,
- -31675, -62814, 31675, -255551, -3388729, -1279900, -773094, -235686, -1247688, -288837,
- 220117, 195421, 309775, 15032, 120259, -661425, -246961, 486942, 166967, -191663,
- -149250, -198105, 243203, -63351, -31675, -388695, 170188, -5906, -25233, 85899,
- 23622, 78383, 51540, 188979, -214748, -62814, 173946, -19864, -20938, 64961,
- 73551, -128312, 32749, -42950, 9127, 105764, 16106, 9664, 107374, -2684,
- -70330, -15569, 39192, -88047, -49392, 54761, 8590, -1074, -5369, 60130,
- 44560, -71404, -44023, -9127, 45634, -56371, -12885, 19864, 47782, 12348,
- -19327, -23622, 26307, -11274, 27380, 5906, -45097, -13422, 17180, 21475,
- -22549, -28454, 13422, 19864, -6979, 11274,
- },
- {
- -2379412, -25528748, 446140, 894427, -185757, 42950, -189515, 250719, 99858, -265751,
- -145492, 429497, -54761, -511101, -71404, -226560, 348429, -177704, -84289, 15032,
- -109522, -10201, 190052, 41876, -525597, 149787, 134755, -1064615, 187368, -367757,
- -33823, -92879, -27380, 52076, 91268, 200790, 412317, -339302, -217433, 145492,
- 49929, -195958, -68183, 102542, -113817, -132607, 63888, -55835, -57445, 69256,
- 537, -15032, 164283, -4295, -37044, -29528, 145492, -36507, -33286, -102542,
- 96100, 4295, 34360, 35433, -5906, -20938, 27917, -9664, -22012, 18790,
- 19864, 33286, -34360, -69256, 14496, 13422, -10737, 70330, -11274, 10201,
- 22549, 17180, -10201, 41339, -36507, -17717, 13422, 24159, 13959, -34897,
- 14496, 4832, -5369, -537, -32212, -1074,
- },
- {
- -270046, -126165, 1061931, -22549, 18790, -73551, -67646, 84289, -17717, 95563,
- 24696, -70330, 362925, -93416, -417149, 117038, 1110786, -528281, -310848, 1278290,
- -103616, -77846, -483184, 165356, 334471, -912144, 337692, 183073, -596464, 508954,
- 207232, 108985, -124554, 15569, -22549, 35433, -147103, 171262, 209380, -111132,
- -121870, 167504, 25770, -95026, 68183, 79457, 117575, 26307, -3221, -92342,
- 13959, 14496, 86436, -65498, -6979, 106300, -27917, 7516, 46708, -1074,
- 37581, 4295, 68183, 38118, -27380, 17717, 6442, -45634, -4832, -23085,
- -98784, 15569, 40802, 3758, -24696, 8590, 2147, 29528, 29528, 16643,
- -42413, 48318, -6979, -5369, -37044, -2147, 10201, -3221, -6442, 18254,
- 9127, -32749, -12885, 23085, 10737, 9664,
- },
- {
- 7254200, -7747584, -2158758, 450972, -89657, 188979, 222265, 143881, 197032, 98247,
- -63888, 49929, 32749, 164283, -301185, 631897, -71941, 196495, 448287, -251256,
- -85899, -235149, -243739, -45097, 122407, 56371, -155693, 555125, 228707, -145492,
- -198642, 180389, 51003, -284005, 183073, -25233, 193810, 286152, -17717, 20401,
- -19864, 6442, -18790, 53150, 20938, -49392, 105227, -107911, 30602, -44023,
- -67646, 79457, -147640, 6979, -96637, -41876, -59593, 28991, -5906, 29528,
- 53687, 0, -5369, -15032, -19864, -20401, 28454, 75699, -53150, -9664,
- 78383, -46171, -79457, 64961, 30602, -14496, -24696, 28991, -9127, -24696,
- 53150, -18254, -24159, 43487, 2147, -64961, 11274, 18790, 18790, -26307,
- -15032, 31675, -11274, 10737, -12348, 537,
- },
- {
- -308701, 1611, 967441, 64425, 151398, -12348, -4832, 59056, -127775, 37044,
- 72478, -121333, -350577, -364535, 776852, -1276142, -333397, -685584, -171799, 12348,
- -266825, -961536, 181462, 255551, -255551, 885300, 69256, 156766, -151934, -86436,
- 98247, -180389, -93416, 110595, -163746, 97174, 66572, 42950, -3221, 84826,
- -134755, -30602, 45097, 93416, -108985, -58519, -26307, 242666, -194347, -174483,
- 87510, 537, 66035, -68183, 57982, 5369, -23622, 88584, 96637, -71941,
- 17717, -25770, 97174, -28991, 50466, -44023, -67109, 2147, 60666, -48318,
- 10201, 22549, -13422, -13959, 3221, 28454, -39728, 26844, 36507, 1074,
- 44560, -16643, -26307, -13422, -30065, 14496, -5369, 31675, -10737, -8590,
- 27380, -13422, 11811, -3221, -537, 4295,
- },
- {
- -8083129, -17379048, -166967, -586263, 536334, 35433, 491237, 185220, -493384, 103079,
- 614717, -49929, -386010, -428960, -39192, -47245, 707596, -24696, -278099, 340913,
- 71941, 208843, -577673, 71941, 133144, 61203, 132070, 246961, 71941, -99858,
- -264141, 158914, 126702, 150861, -99321, -43487, -116501, -291521, 17717, -41339,
- -180926, 116501, 264677, -185757, -4832, -184147, -101469, 131533, -25770, -60130,
- 16106, 181999, -61740, -75162, 106300, 537, -17180, -41876, 82141, 27380,
- -70330, 73014, -10737, 37581, 16106, -99858, -50466, 21475, -6979, -537,
- 35970, -61203, -26307, 4832, -9127, 58519, -80531, 8590, 1611, 26844,
- -27917, 12885, -6979, -3221, -4295, -30602, -34360, 6442, 23622, 23085,
- 11811, -12885, 0, -24696, 25233, -2684,
- },
- {
- -155156, -2636036, 58519, 348966, -329639, -396211, 868120, -100932, -420370, -380641,
- 22549, 346282, -432181, -311922, -386010, 330176, -623844, -362925, 415001, 834297,
- -51540, -230318, -412317, -149250, 132070, 65498, -35433, -144955, 37044, 210453,
- 190052, -320512, -105764, 70867, 103616, -268435, 32212, 60130, 169114, -17717,
- 31675, -19864, 111669, -41876, -151934, 125091, 36507, 113817, -139586, -193274,
- 153008, 83215, 21475, 95026, 84289, -206158, -30065, -61740, -32212, 55835,
- 51540, -3221, 33823, -67646, -537, -76236, -58519, 36507, 28454, 74088,
- -11274, 12885, 19864, -55298, 12885, 42413, -9127, -18254, 4832, -22549,
- -34360, -39728, -6442, 4295, -537, 32749, 6442, -15569, -2684, -14496,
- 27380, -18790, 11274, -2684, -1074, 20401,
- },
- {
- -1202591, -1673964, 1731946, -382789, -136902, -1188632, 1910724, -166430, -562641, -300111,
- 22012, -182536, -38655, -15569, 52076, 260382, -300111, 110595, 62277, 50466,
- 125091, -254477, 135291, -120796, 117038, 143345, 28991, -1074, -273804, 102542,
- 153008, 223338, -51540, -18790, -56371, 119185, -306553, 20401, -7516, -310848,
- 185757, 268435, -74088, 63351, -14496, -128849, -36507, -1074, 147103, -54761,
- -31675, -71404, 22549, 69793, 34360, 11811, -107374, -119185, 121333, 1074,
- -52076, 23085, 13959, -32212, -32749, 52613, -30065, -9127, -23622, 47245,
- -22012, 3758, -30602, 4832, 44560, -12885, 46171, 11811, -35433, 15569,
- -26307, -537, 29528, -48855, 20401, -30065, 42413, -15569, 27380, -2684,
- -17717, 18254, 13959, -15032, -23085, 19864,
- },
- {
- 23622, -1246077, 35433, -189515, 52613, 309238, -87510, -311385, 26844, -263604,
- 67109, 119185, -1001801, -635655, 995359, 324270, -526670, -26307, -76773, 415538,
- -9127, 467615, 127238, -53687, 363462, 205085, -549756, -136365, -10201, -399969,
- 812286, -291521, -30602, 68183, -46171, 30065, -16106, -199716, 120259, 9664,
- -2684, -75699, -88047, 4295, -1611, -31139, -60666, -49392, 22549, 71404,
- 34897, 35433, -135828, -85362, 70330, 37581, 21475, -26307, -103079, -32212,
- -86436, 47782, 16106, 13422, -126165, -62277, 93952, -56371, 46708, -14496,
- -29528, 40802, -18790, 20938, 13422, -30602, 39192, 29528, 0, 17180,
- -27917, 16643, 15032, -25233, -1074, 11274, -9127, -23622, -9127, -1074,
- -537, -9127, 13422, 18254, -23622, -537,
- },
- {
- 459562, 8623221, -2290828, 864362, -255551, 435939, 867047, 435402, 159451, -390305,
- 170188, 536871, -430034, 596464, -107911, 39192, -260919, 35970, 227633, -274341,
- 694711, -54761, 151398, -160524, -219580, 373662, 235149, 76236, 81068, 79457,
- -300648, 69793, 76236, 83752, -57982, -12885, 23085, -132607, -179852, 234076,
- 209917, 46708, -96100, 99321, -206695, -51540, -177167, 64425, -188442, 43487,
- 24159, 13959, -12885, -31675, 37044, 83215, 67646, 46171, -26844, -125091,
- 44023, -26307, -3758, -13422, -3221, -13422, -30602, -57445, -64961, 51540,
- 48855, -58519, -31675, 43487, 42413, 26307, -5369, -25233, 35970, -3758,
- 77309, -32212, -37581, -9664, 18790, 62277, -537, -49929, -9664, -10201,
- -21475, -16643, -25233, 33286, -4832, 18790,
- },
- {
- -133144, -199716, -608275, -236760, 12885, -7516, 96100, 75699, -95026, 97711,
- -191663, 22549, -616865, -2208150, 8509404, -315680, 660351, 530428, -375810, -103079,
- 537408, 482110, -471373, -88584, 12348, 106837, 740345, -299037, 409096, -22549,
- -107374, -110059, -98247, -264141, 149250, 25770, -48318, -77846, -124554, 107911,
- -231928, 30065, 63888, 56908, 83215, 39728, -148713, -15032, 17180, 15032,
- -91268, 112206, 68719, -50466, -21475, -4295, -59593, -20938, 1074, -48855,
- -52076, 147103, 4832, 8590, 30065, 91805, -77846, 16643, 49392, -6442,
- 45097, 18254, -39192, 19327, -2684, 31139, 47782, -81604, 23622, -40265,
- -16643, 64425, -9127, -10737, 15569, -27380, -32749, -35433, 42950, -38655,
- -10737, 40265, 26307, -24159, 1074, 26844,
- },
- {
- 827318, -35433, -404264, -705985, -279710, 738734, -30065, 92342, 220117, 205622,
- -663036, 380641, 322659, -1033477, 1823751, 14496, -229244, -175020, -68183, 353261,
- -49929, -12885, -91805, 82141, 158914, -115427, -367220, 435402, -197032, 209917,
- -135828, 35970, 241592, -142808, -52613, 59593, 107911, -215822, 49929, 12885,
- 81604, 173946, 57982, 16106, 57445, 99321, -210453, -201327, 38655, 29528,
- -16643, -30602, 81068, 68719, -76236, -13422, -77309, -47782, 48318, 5369,
- -1611, 34897, -13959, -76236, 17180, -11274, -18254, 1074, -11274, 13422,
- 23085, 15032, -81068, -6442, 61740, 42950, -18790, -11274, 1074, 23085,
- -13422, -12885, 23622, -24159, -10201, 8053, 6979, -18790, 73014, -26844,
- -6442, 4295, -23622, 7516, -6979, 5906,
- },
- },
- {
- {
- -74088, 2136209, 1916092, 9127, 82678, 65498, -106837, -179315, -3221, 128312,
- -72478, -366683, 18790, 419833, -2298344, -125091, -734439, 94489, 151934, 329639,
- 98247, -556198, -37581, 508417, -386547, 523986, 332323, 160524, 240518, -353261,
- 68183, -237834, 354335, 74625, -547608, -144418, 121870, 389231, -43487, 13422,
- -104690, 34897, 44023, -54761, -86436, 55298, 144418, 10201, -68719, -30602,
- 71941, 99321, 15032, -28991, 12885, 89121, -5906, 77846, -32212, -90731,
- -34897, -49929, 74088, 35433, -20938, -4832, 29528, -5906, -63351, 42413,
- 46171, 0, -537, -41876, -17717, 31675, 10201, -39192, -24159, 10737,
- -10201, -35433, -42950, 5369, 32212, 19864, -12348, -6979, -1611, 23085,
- -32212, 18254, -3221, 7516, 18790, -2684,
- },
- {
- -246424, -17016660, 3439195, 1143535, -430034, -217433, 494458, 30602, -19864, 56371,
- -150861, -214212, 267899, 303332, 992137, 798864, -77309, 74088, 741419, -83752,
- 95026, -297963, -125091, -375810, 56908, -45097, -39192, -47245, -135828, -235686,
- -92879, 157303, 133681, 158914, -285615, 135291, 169114, 124017, 157840, -64425,
- -229781, -186294, 77846, 103616, -84289, 140660, -142808, 61203, 11274, -60130,
- -10737, -151398, -63351, 11274, -30602, 119185, -102005, 40265, 31139, 7516,
- -38655, 43487, 36507, 46708, 8590, -8590, -32212, -11811, -39192, 67646,
- 20938, 33823, -61203, -24696, 71404, -77846, 19327, 35970, -11274, -45634,
- -13422, 24696, -19327, -15569, 8053, 79994, -63888, 23085, -5906, 5369,
- 1611, -5369, -21475, 19864, -10737, 11274,
- },
- {
- 745177, 16878684, -3117073, -1489817, 281857, 406411, -201863, 76236, -32212, 169114,
- -219580, 2684, 330712, -246961, 193810, 162135, 59593, 67646, 219043, 68719,
- 531502, -66035, 111669, -12348, -565325, -64425, 64961, 227633, 134755, -36507,
- -189515, -69793, 73014, 153008, 71941, -48318, 134755, 20938, -125091, 537,
- -30065, -63351, 55298, -8590, 82141, 185757, -117575, -154619, -137439, 63888,
- 147640, 8053, -83215, 18790, 20938, -88584, -84826, 34360, 18254, -1611,
- -81068, -74625, 56908, 34897, -78383, 19864, -10201, 17717, -8053, -17717,
- 17717, -1611, 10737, 1611, 18254, -16643, 16106, -537, 18254, -5369,
- -13959, -10201, -19327, 47782, 24159, -26307, 31139, 8053, -24159, 9664,
- -33286, -3758, -14496, 18254, 0, -5369,
- },
- {
- -252329, 734439, 250182, -270583, 145492, 80531, -100932, -29528, 111132, 28991,
- -5906, 61203, 35970, -599685, -4115653, 278636, -791348, -1423245, -490700, 166430,
- 148713, 191126, 441845, -163746, 129386, 93416, -1095217, 498216, 81068, -311922,
- 154082, -117038, 91268, -13422, -108985, -407485, 194884, 39728, -216896, 140660,
- -51540, 19864, 170725, 63888, 37581, -208843, 3758, 38118, -86436, 54224,
- 119722, -86436, -32749, 6442, -77309, 95563, 85362, -32749, 82141, 79994,
- -1074, -37044, 46708, -71404, -68719, 48318, 16106, -14496, -31675, 71941,
- 74088, -31139, -46171, -3221, 45634, -26307, -37044, -8053, 31675, 24696,
- 0, -41876, 24696, -6442, 15569, 26307, -37044, -15032, -12348, 13422,
- -2684, -38655, -10737, 17180, -8590, -7516,
- },
- {
- -853625, -26357678, -569083, 530965, 375273, -85362, 152471, 74625, 157840, -1611,
- -386010, 157840, 135828, -931471, 153545, -265751, 455267, -272730, 127238, -21475,
- -11274, -48855, -2684, 205622, -365609, 96637, 151398, -814970, -291521, -104153,
- -279710, -115427, -75162, 141197, 69256, 302795, 500901, -136902, -324270, 256624,
- 67109, -68183, -150861, 126165, -31675, -297963, 46171, 59593, -107911, -29528,
- -10201, -106837, 130997, 71404, -41339, -46708, 193274, 40265, -49392, -79994,
- 56908, 11274, 19864, 10737, 42950, -43487, 33286, -6979, -4295, -5906,
- 33823, 47245, 36507, -56371, -16106, 39728, -44023, 51540, -1611, -11811,
- 6979, 4832, -12885, 38118, -4295, -24696, 11274, 18790, 26844, -12885,
- 16106, 5369, -537, 10201, -23622, -9127,
- },
- {
- -127238, -405874, 455267, 252329, -10201, -5906, -96637, 13422, -34360, -17717,
- 152471, 85899, 338766, -15569, 672699, -128312, 462783, 47782, -293668, 1718524,
- -602906, 57445, -1181116, 1313186, 69793, -687195, -95026, 357556, -111132, -462246,
- 56371, 369904, 17180, -72478, -29528, -22549, -116501, 112743, 258235, 138513,
- -372588, 148176, 46708, -100932, 49392, 33823, 141197, 81604, 8053, -97174,
- -97174, 83215, 41339, -6442, -10201, 26844, 22549, -19864, 67646, 2147,
- 52076, -3221, 40802, 43487, -13959, 11274, 17717, -16106, 30065, 7516,
- -71941, -42950, 40802, 24159, -30602, -35433, -33286, 5906, 31139, 28454,
- -41339, 27380, 18254, 9664, -33286, -6979, 10737, -537, -8590, 3758,
- 30065, -17717, -37581, 18790, 7516, 11811,
- },
- {
- -8321499, 8681203, 1933809, 813896, -307090, 113280, -23085, 456340, -76773, 10201,
- -47245, 279710, -40265, 158914, -317828, 413391, 23622, 62814, 466541, 31675,
- -35433, -234613, -111132, -84289, 157840, -17180, -92342, 479963, 246961, -31139,
- -16643, -70867, -135291, -112743, -62277, 89121, 198642, 161061, -1074, -30065,
- -13959, -37581, 249645, -106837, 151398, -48855, 113280, 13959, -17180, 10737,
- -86436, 39192, -92879, -26307, -47245, -89657, -91268, -42413, -31675, 2684,
- 37581, 1074, 1074, -3221, -30065, -53150, -48318, 57982, 1611, -10201,
- 89121, -21475, -97174, 24696, 51003, -1074, -45097, 18790, -6442, -22012,
- 51540, -5906, -39728, 15569, 31139, -62814, -22549, 20938, 31675, -5906,
- -26844, 32749, 11274, 15569, -7516, -10201,
- },
- {
- -127238, -655519, 649614, 134755, 92879, 60130, -47245, 51003, -134755, -4295,
- 217433, 128312, -128312, -1050120, 646929, -774168, 146566, 194347, -104153, 406948,
- -388695, -280784, 782758, -352187, -119185, 446677, 140660, -298500, 241055, 77846,
- 186294, -118648, -176631, 0, 48318, -227633, 89657, 30065, 47782, -7516,
- -36507, 16643, 56908, 67109, -32749, -71404, -71404, 194884, -52076, -194347,
- 4832, -13959, -10737, -45097, -51003, 41339, -98247, 95026, 140123, -91805,
- 3758, -38655, 52613, -26844, 51003, 41339, -78920, -10737, 32212, 14496,
- -4295, 11274, 12885, -22012, -13959, 17717, -34360, -12885, 27380, -32212,
- 53150, 24696, 3758, -18790, -38118, 12885, -19864, 17180, 2684, -27380,
- 25770, -8053, -9127, 7516, -2684, 6979,
- },
- {
- 5267241, -33881924, -748398, -77846, -207232, -26844, 239444, 411780, -403727, -206695,
- 630286, 187905, 155693, -171262, 156766, -386010, -38655, 360777, 22549, 67109,
- -204548, 246961, -521839, 76236, 123480, 78383, 55298, 335007, -118112, 31139,
- -245887, 215822, 112743, 91805, -12885, -77846, -33823, -221728, -85899, 206158,
- -85362, -16643, 152471, -100932, -57982, -194884, -180926, 169651, 537, 41876,
- -91805, 50466, 56371, -27917, 63351, 94489, -42413, -14496, 83215, 60130,
- 8053, 18790, 23085, 39728, 90731, -62814, -114890, 4295, -11811, -21475,
- 33286, -4832, -41876, 2147, -16106, 55298, -67109, -6442, 3221, 9664,
- -13959, 23085, 7516, 2684, 20401, -10737, -37581, -8053, -1611, 8590,
- 30602, -13422, 8590, -31675, 16106, 6442,
- },
- {
- 293132, -2193655, -1124208, 244276, -132070, -670015, 425739, 282931, -419833, -296353,
- -42413, 452045, -253940, -201863, -663036, 52076, -30602, -548682, -631897, 1037772,
- 150324, 2147, -196495, -346282, 61740, -18254, -335544, -62277, 192200, 202400,
- 542240, -203474, -244813, -49929, -31139, -206695, -157303, -28454, 97711, -18254,
- -68719, -75699, 105764, 82141, -229244, 130997, 22549, 124554, -61203, -151398,
- 23622, 52076, -42950, 112206, 164819, -146566, -73551, -26844, -49392, 20938,
- 62814, 22012, 69256, -34360, -1611, -19864, -54761, -28454, -62814, 74625,
- 18790, 6442, 59056, -43487, 13959, 30065, 4832, 537, 13422, 18254,
- -9127, -32212, -17180, -16643, -20401, 16106, 23085, -13422, 3758, -18254,
- 23622, -12885, 2684, -4832, -13959, 10201,
- },
- {
- 675921, -2767570, 814433, 470836, -387084, -503048, 619549, 541703, -655519, -209917,
- 161598, -107374, -50466, -244813, 114354, 324270, -416075, 37044, 112206, -16106,
- -62277, -242666, 70330, -64961, 25233, 50466, 39192, 23622, -165356, -66035,
- 137976, 189515, 97174, -133681, -122943, 265751, -234613, -57445, 13422, -229781,
- -52613, 209917, 59056, 125628, 17717, -102005, -5906, -17180, 123480, -74625,
- 1074, -53687, -26844, 113817, 54224, 32212, -40265, -130997, 58519, 42413,
- -3221, -17717, 26844, 9127, -58519, 25770, -1611, 5906, -31675, 31139,
- 2147, -6442, -44023, -38118, 10737, -22012, 27380, 34897, -28454, 18790,
- -23622, -20938, 52076, -61740, 11274, -39728, 7516, 0, 16106, 8053,
- -24696, 11274, 23085, 537, -32749, 5369,
- },
- {
- 80531, -516470, -619549, -88047, -109522, 270583, 4832, -191126, -141734, -172872,
- -51003, 311385, -787053, -272194, 1025960, -192737, -207232, -290984, -99321, 65498,
- 442382, 537, -118648, -396748, 140123, 759672, -300111, -598611, 257161, -428423,
- 579821, -65498, 149787, 149250, -46708, 77846, -166967, -277562, 119185, -63351,
- -52076, 37044, -144418, -101469, 23622, -112743, -1074, -52613, -6442, -25233,
- -35970, 105227, -131533, -69793, 43487, 46171, 44023, 56908, -22012, 2684,
- -86973, 24696, 39192, 29528, -55835, -109522, 102005, -19864, 32212, 0,
- -45097, 23085, -32212, -15569, -19327, -33286, 3221, 49392, 11811, 18254,
- -16106, 14496, 20938, -537, -6979, 20938, 6979, -16643, -10201, -6442,
- -8053, -10201, 6979, 13959, -19327, -10737,
- },
- {
- 1793686, 8327405, -2165737, -136902, -87510, -60666, 964757, 360240, 459025, -501974,
- -63888, 405338, 338229, 46171, -266825, 190052, -215285, -25233, 205085, -488553,
- 504659, -8590, 102005, -29528, 64961, -172872, 36507, 139050, -206695, 166967,
- -115964, 23622, -8590, 155693, -121333, -68183, 83215, -82141, -252329, 111132,
- 247497, 207232, -40265, 233002, -49929, 118648, -101469, 135291, -122407, -13959,
- -26844, -39728, 44023, -100395, -26307, 39728, -6442, 88584, 33286, -118112,
- -3221, -537, 10201, -59056, 10201, 49392, 5369, -49392, -71941, -9664,
- 68719, -22549, -66035, -3758, 25770, 26844, 28454, -48855, 2684, -27917,
- 70330, 2147, -27380, -38655, -9664, 56371, 41339, -16643, 15569, -1074,
- -23622, -8590, -45097, 6442, -12885, -3221,
- },
- {
- 268435, -22549, -1039382, 0, -104690, 34897, 121870, -90731, -28991, 134218,
- -33286, -54224, -358630, 924492, 2599529, 1705639, -286689, 56371, -150861, 46171,
- 352724, 263067, -387084, -421981, -92342, 173409, 606664, -418222, 15569, 384936,
- -78383, -28454, -231391, -114354, 362388, -134218, 52613, 14496, -178778, 136365,
- -184684, -26844, -537, -16106, -5369, 105764, -121333, -34897, -8053, 88047,
- -158377, 68183, 102005, 15569, -23622, -21475, -32749, -16106, 0, -15032,
- -103079, 62814, 28454, 15032, -18254, 99321, -43487, -41339, 37581, -6979,
- 43487, 26307, -47782, 32749, 5369, -9127, 57982, -64425, -1611, -20938,
- -46171, 62814, 19327, -12885, 36507, -6442, -12885, -48855, 41339, -16643,
- -35970, 11811, 29528, -17180, -19864, 37581,
- },
- {
- -1192390, 2229625, 495532, -932545, -347355, -919660, 458488, 32749, 189515, 324270,
- -207769, -191126, 110059, 914291, -540092, -204011, -125091, -469762, -323196, 345745,
- 54761, -108985, -65498, -105764, 169651, 126702, -328565, 45634, -83752, 70867,
- 93952, -135828, 180389, 33286, 56908, 27380, -5369, -91268, 93416, -97711,
- 9127, 186294, 136902, 43487, -89121, 216896, -51003, -192200, -93952, -54761,
- 5369, 0, 25770, 48855, -63351, 14496, 2147, -57445, 41339, -16643,
- 14496, 77846, -11811, -68719, -33286, 42950, -9664, 11274, 17717, 1074,
- 34360, 38655, -84289, -74088, 39192, 52076, 16643, -14496, 2147, 20401,
- 10201, -39728, 10737, -6979, -16643, -2684, -1611, -39728, 50466, 2684,
- -19327, 11274, -13959, -15032, -12348, 7516,
- },
- },
- {
- {
- 200790, -871878, -1019518, -160524, 103079, -74625, -61740, 77309, -241055, 192200,
- -248034, 45097, -229244, -638876, -1821603, 739808, 756988, 565862, -832687, -551366,
- 1154273, 262530, -48318, 300648, -412854, 395674, 21475, -319438, 103079, 25233,
- -143881, 141734, -341987, -48318, -409096, 28454, 79994, 121333, 110059, 152471,
- 35970, -146029, -15032, 96637, 98784, -124017, -48855, 12885, -1611, 35970,
- 17717, -86436, -90194, 73551, -106837, -73551, 27380, -31675, 70867, 9127,
- 45634, -2684, -47245, 28991, 34897, -8590, -56371, 21475, 36507, -49929,
- -11811, 46171, -14496, 30602, -26844, 29528, 537, 42950, -9127, -42413,
- -8590, 28991, 1611, -10201, -47782, -27380, 27380, 22012, -19327, -1074,
- 43487, -18254, 11274, -17717, -9127, 16106,
- },
- {
- 291521, -20451560, 1325534, 860067, 114890, 163746, -162135, -159988, 514859, 27380,
- -190589, 89657, -117038, 92342, 293668, 215822, 323733, -362388, -285078, 48855,
- 154082, -236760, 161061, -20401, 249108, -160524, -249645, -38655, 83752, -167504,
- -114890, 106837, -391379, -64425, 171262, 195958, 35970, -70867, -4832, 46708,
- 145492, -112743, -37581, 35433, 31675, -148713, 81604, -153545, 250719, 163209,
- -19327, 85899, -153545, -81604, -48318, 69256, 38118, -92342, 57982, 20938,
- 25233, -36507, 8053, -49392, -69256, 22549, 31675, 42950, -28991, -56908,
- -3221, -24159, 10201, -17180, -25770, 67646, -34897, -7516, 13959, 40265,
- 5906, -34897, 29528, 7516, -35970, -33823, 73014, -27917, 9664, -20401,
- -6442, 18254, 2147, -20938, 13422, -7516,
- },
- {
- -733366, 16394427, 1217623, 652835, -891743, -41876, -121333, -183073, -15032, -24696,
- -107374, -33286, -92342, 103616, 529892, -102005, 170188, -333934, -731755, -421444,
- -333934, -51540, 46708, 114890, -78383, 96100, -10737, -28454, -43487, -23622,
- 99321, 188442, 27917, -261993, 66035, -30065, -92879, 106837, -190589, -168577,
- 229781, -191663, 72478, 8053, -176094, -143345, 210453, 206695, 23085, -239981,
- -140660, 105764, 46708, 0, 12885, 27917, 30602, -73551, -27380, 26844,
- 96100, 18790, -46171, -22549, -15032, -6442, 3758, -22012, 57982, 0,
- -30602, 3221, 15569, 6442, -18254, 5369, -4295, -14496, -12885, 32749,
- 22012, -4295, 8590, -51540, 4295, 10201, -12885, 30065, 0, -5369,
- 27917, -8053, 8053, -20401, -2684, 5369,
- },
- {
- 176631, -438624, -504659, 55298, -214212, 44560, 1611, -21475, -24696, -91805,
- -80531, -181462, 191663, -51540, -4514548, 967978, 1028645, -270583, 130997, 594853,
- 250719, -19864, -643171, -1068910, 350577, 88047, -550293, 515933, -60130, -357019,
- 260919, -201327, -10201, -90194, 83215, 184147, -323196, 112206, 42413, -136365,
- 119185, 22012, 3221, -18790, 187905, 50466, -119185, 67646, 47782, -62277,
- -100395, 80531, -66035, -11811, 30602, -24159, 8590, 84826, -40265, 38118,
- 51003, 26307, 4295, 55835, -10737, -37581, -37044, 5369, -29528, -54761,
- -41876, 61740, 28991, 31675, -32212, 53150, 31139, -6442, -37581, 2147,
- -537, 8053, -26844, 3758, -28454, 9127, 32212, 25770, -15032, -24696,
- 11811, 16643, -10201, -20938, 10201, -8590,
- },
- {
- 3846143, -22741314, -1794223, 143345, -308164, -60130, 151398, 25770, -107911, 240518,
- 532039, -437550, 22012, -550293, -35970, -68719, -28991, -678068, 96637, -154082,
- 135291, -225486, -234076, -458488, 335007, -22549, -127238, -742493, -80531, -178778,
- -126702, -106837, 87510, 30602, -111669, -75699, -111132, 389768, -112743, -149787,
- 155156, 68719, -5906, -133144, 73551, 28454, -55835, 134755, -11274, -30602,
- 204548, -51003, -138513, 110059, 8053, 57982, -48318, -21475, 1074, 50466,
- 5369, -8053, 54761, -53687, -15569, 6979, -55298, -24696, 49392, -15032,
- -44560, -46708, 37044, 83215, 11274, 1611, 25233, -69793, 6442, 10737,
- -4832, -20401, 8053, -53687, 15569, 14496, -2684, -1611, -10201, 22549,
- -12348, 4832, 5906, 537, 23622, 11274,
- },
- {
- 263067, 802622, -1121523, 150324, 11811, 60130, 57445, -20938, 1074, -111669,
- -45097, 14496, -245350, -151934, 2628520, -237297, -1341104, 936840, -639950, 1468879,
- -52076, 75699, -889058, 664646, -229781, 288300, -95026, 2147, 491774, -475668,
- -223875, 289373, 340376, 132070, -105227, 94489, 124017, -119722, 102542, 151934,
- 95026, -125091, 40265, 83215, 2147, -24696, -73014, 55298, -4295, 14496,
- 20401, 45097, -107911, 60130, 81604, -56371, -13422, 9664, -1074, -54761,
- 45097, 27917, -39192, -17180, 45097, -35970, -5906, -2684, 11274, 34897,
- 98247, -33823, -41876, 18790, 32212, 4295, 13959, -42950, -34897, -19327,
- 30065, -46171, -17717, 13959, 32212, -7516, 2147, 12348, 2147, -26307,
- -14496, 32749, 25233, -17717, -10737, -8590,
- },
- {
- 6524592, 25028922, -836982, 389768, 219580, -146029, -114890, -136365, -657667, 77309,
- 97711, 97711, -54761, 14496, -100395, 88584, 68183, -134218, -375810, 268972,
- 229244, 212601, -40265, -18790, 203474, -88584, -64961, -5906, 284005, 90194,
- 236760, 23622, -235686, 205085, -147103, -170188, -127775, 57445, 160524, -60130,
- 23085, -124554, 45634, -71941, 37581, -38655, -78920, 149787, 113817, -140660,
- -17180, -150324, 49929, -69256, 31675, -4832, -91268, -6979, 14496, -40802,
- -46708, -9127, 3758, 2684, 39192, 42950, -38655, -78920, 45097, 34360,
- -51003, 32212, 69793, -52076, -40802, 22012, 16106, -37581, 2684, 24159,
- -53150, 27917, 3221, -47245, -11274, 67109, -12348, -27380, -6979, 23622,
- 19327, -31139, 12348, -1074, 6979, -1074,
- },
- {
- 303332, 775242, -983548, 55835, -163746, 41876, 18790, -1074, 20401, -173409,
- -42950, 46171, 227633, -1126355, -693637, 80531, 940598, 821413, -60130, 428960,
- 223875, 833761, 128849, -938987, -336618, -599685, 292058, -157303, 235686, 224412,
- -31139, -154619, 146566, -128312, 10737, -53687, -62277, -188442, 34897, -186831,
- 15032, 165893, -64961, -76773, 123480, 7516, 67646, -286689, 109522, 187368,
- -125628, -44560, 16643, 92879, -187368, 3758, -33823, -65498, 15032, 119185,
- 23085, 50466, -70330, -43487, -26844, 57982, 45634, -16643, -25233, 46171,
- 0, -1611, 41339, 48318, -32749, -17717, 30065, -28991, -31675, -33823,
- -53150, 19864, 13422, 7516, 29528, -2147, 10737, -33286, 19327, 11274,
- -28991, 9664, -5369, 537, 1611, 537,
- },
- {
- -1063004, -43553652, 474594, 834834, 145492, -143345, -232465, -171262, 467078, -18254,
- -542240, 41339, 143345, 869194, -98784, 540092, -436476, -123480, 175557, 72478,
- -176631, -190589, -345745, 45634, -136365, 201327, -147103, 69793, 53150, 343597,
- 309775, -135828, -88584, -15569, 53150, 39192, 117038, 338766, 280784, -76236,
- 139586, -61740, -110595, 15032, -88584, 326954, 113280, -72478, -64425, 40802,
- -88584, -164819, 84289, 28454, -84826, 56908, 76236, 65498, -79457, 25233,
- 63888, -32749, 65498, -34897, -63351, 113817, 40802, -61203, 6979, 5906,
- -20401, 28991, 34360, -18790, -12885, -70330, 48318, 5906, 10737, -38118,
- 21475, -10201, 8053, -537, 6442, 36507, 28991, -4295, -18790, -27380,
- -12348, 2147, 2147, 25770, -20938, 9664,
- },
- {
- -338766, -896574, 970126, -494995, 297963, 311922, -676457, 49929, 89657, 142808,
- -228170, -237297, -43487, 273804, -160524, -63888, 533650, 547608, -565325, -936303,
- -385473, 579284, 739808, -11811, -157303, -246424, 56908, 74625, -100395, 286152,
- -1074, 337155, 73551, -184147, 15032, 81604, 163209, -84289, -244813, -92342,
- -88047, -28454, -37044, -56908, 133144, -143345, -1074, -55298, 61740, 158377,
- -96100, -47782, -49392, -92879, -70330, 136902, 37581, 28991, 11274, -35433,
- -69793, -26844, -15569, 68183, -49392, 58519, 75699, 6979, -32749, -93416,
- 34360, -26844, -537, 44023, -12885, -28454, 10737, 21475, -6442, 8053,
- 27380, 28454, 8590, -17717, 5369, -22012, -11811, 11811, -1611, 23085,
- -23085, 9664, -6979, 2684, 3221, -20401,
- },
- {
- -27917, -2828236, 2083059, 1436130, 405338, 1242319, -1418950, 234076, -83215, 136902,
- 77309, 180926, 111132, -206695, -270583, 420907, -295279, -113817, -166430, 281320,
- -250719, 417149, -191126, 14496, -272194, -87510, 15032, -27380, 157303, -47245,
- -11811, -246961, 8590, 102542, 89121, -105227, 232465, -148176, -126702, 188979,
- -184684, -345745, 78920, 17717, 122943, 64425, 26307, 20938, -97711, -1074,
- 31675, -34360, -34360, -78920, -7516, -12348, 85899, 111132, -99321, 17717,
- 49392, -33823, -42950, 37044, 35970, -68719, 23085, 9664, 24696, -10201,
- 19327, 13422, 32212, -3758, -58519, 10737, -39728, -31675, 29528, -15032,
- 26307, -5906, -22549, 46708, -30065, 31675, -49392, 17717, -28991, 10201,
- 9664, -16643, -17180, 14496, 26844, -18790,
- },
- {
- -105227, -412317, 307090, -54761, 42413, -250719, 77846, 136902, -17717, 15569,
- -104153, 11274, 578747, 55298, -20401, 950798, 475131, 331786, -242129, -391379,
- -625455, 198642, -107911, 167504, -674310, 128312, 246424, -621697, 4295, 18790,
- -663572, 224949, -41339, 348429, -56371, 19864, -241592, 117038, -153545, 20938,
- -158377, 53687, 132607, -136365, -40802, -37581, -24696, 108448, -9127, 10737,
- -103079, 16643, 67646, -41339, -76236, -123480, -89121, -11811, 125628, 51540,
- 117575, -23085, -55835, -51540, 72478, 66572, -60130, 62277, 2684, 47782,
- 5906, -10737, 12348, -4295, -22549, 11811, -51003, -28454, 11274, -30602,
- 37581, -22012, -34360, 23622, -3758, -5369, 1611, 20401, 11274, 1074,
- 9664, 11811, -19327, -18254, 17180, -5369,
- },
- {
- -3420405, 1176821, 1152662, -552977, 407485, 79994, -602369, -146566, 40265, 176631,
- -14496, -201327, 176094, -637266, -293132, -152471, 341450, -12885, -196495, 38118,
- -426276, 108448, -52613, 66572, 200253, -78920, -249108, 253940, -112743, 107911,
- 176631, -94489, -161061, 120796, 130997, -24159, -113817, -4832, 166430, -220117,
- -76236, 102542, 54761, 42413, 89657, 75699, 71404, 1611, 207769, 47245,
- 22012, 12885, 75162, 62814, -126702, -66572, -74625, -18254, -3221, 99858,
- -15569, 37581, 16106, -7516, -47782, -5369, 10201, 12885, 69793, -54761,
- -52613, 61740, 38655, -28454, -26844, 1611, 11274, 34897, -31139, 2147,
- -74088, 15032, 26844, 17180, -12348, -70330, 5369, 37044, 1074, 6979,
- 14496, 13959, 17717, -26307, 6979, -13422,
- },
- {
- -334471, -82678, 406411, 378494, -31675, -22549, -118112, 122407, -102005, -104690,
- 171262, -376347, 553514, 430034, -7561827, -846645, -292058, -742493, -32212, 315680,
- 227096, -285078, -31675, -160524, -466004, 430570, -228170, -205622, -268972, -35970,
- -78383, -70867, -202937, 282394, -81604, -125628, 202937, 0, -14496, -14496,
- 198642, 4295, -106837, -19327, -143881, -91805, 177704, -11274, 71941, 42413,
- 79994, -82678, -42950, 6979, 36507, -55298, -10737, 30602, 3758, 31675,
- 63888, -135828, -53150, 13959, -22549, -54761, 82141, 4832, -57982, -4832,
- -45097, -20938, 30065, -11274, 11811, -8590, -69256, 67109, -13959, 47782,
- 5369, -54761, 9664, -2684, -20401, 17180, 32212, 35433, -40802, 33823,
- 12348, -29528, -30065, 19327, -3758, -27917,
- },
- {
- 1123671, 3750043, 164283, -434329, 327491, -447750, -389231, 173409, -203474, -27917,
- 791885, -223338, -233539, -68183, -1120987, 330176, -171799, -117575, -207769, -64961,
- -75162, 32212, 112206, -51003, -467078, 94489, 384400, 394600, -122407, -182536,
- 94489, -83752, 30602, 130460, -9127, -115964, -102005, 271120, 51540, 61203,
- 81604, -30065, -37581, 16643, 38118, -2147, 102542, 141197, -6979, -77846,
- 140123, 163746, -17717, -132070, 22549, -75699, -5369, 57445, -38118, 24159,
- -1074, -30065, -15569, 30602, -16106, 28991, 31139, 3221, -25233, 2147,
- -22549, 19327, 41339, -3758, -45634, -38118, 16643, 33823, 1611, -16643,
- 34897, 14496, -25770, 3758, 12348, -5369, -18790, 25770, -73551, 6442,
- -2684, -13959, 16643, -2684, 3758, -11811,
- },
- },
-};
-
-const Word32 rightBRIRImag_fx[BINAURAL_CONVBANDS][HRTF_LS_CHANNELS][BINAURAL_NTAPS_MAX] /* Q29 */=
-{
- {
- {
- -2035278, 19121194, -18495202, 21711596, -15680926, 9638980, 6416681, 4471598, -10793253, -3351685,
- 2279017, -5827197, 1007707, 9967008, 8763344, -16039555, 6591164, -2894271, 10535555, -6199249,
- 2529736, -2745021, 10612864, -10028749, 3979287, -10853919, 5805185, -3331821, 1793149, 659278,
- -1992865, 6929393, -4472135, -2035278, -152471, 761283, 6942278, -13087839, 4218732, -5743445,
- 6646462, 9316858, -7805030, -2385318, -988916, -551903, 368830, 5871221, -1902134, 1813550,
- -2979634, 1300301, -1066763, 1910187, -861678, -1155883, -2600603, 1974611, -551903, 4977867,
- -1408212, -1838783, 600222, 867047, 162672, 37044, 1451699, -635118, -2068027, -2888366,
- 1687922, -876173, 179315, 925565, -1653026, 2085744, -1959579, 1526324, 286689, 463856,
- 368293, 169114, 262530, 455267, -1733019, 155156, -1090922, 1658931, -1168231, -1552094,
- 1267552, -25770, 284542, -1096290, 321586, -537,
- },
- {
- 8136816, -25189446, 12812961, 30360586, -9987410, 9773198, -3379603, 3135863, -9449465, 456340,
- 2957085, -13490492, 9465034, 2585034, 7221988, -7059316, -6502581, -1435056, 13447543, -11040213,
- 4391067, -13959, -3312494, -3750043, 8544301, -2517388, -6125160, 1289027, 4635344, -7394860,
- 13889924, -8974871, 992674, 354335, -1604170, 10275172, -1265405, -4112968, -4556424, -2851858,
- 9610526, -2658585, -3022046, -2483028, 6434398, -4887673, 2120640, 799401, 1380832, -566936,
- 499290, -955630, -3023120, 3121368, -3856344, 1736241, -592169, 1614908, -1478006, -240518,
- 2666101, 1079111, -4053376, 4402342, 458488, 25233, 1598265, -1979980, -1576790, 156766,
- -2041183, -168041, 698469, 436476, -746787, 1155346, 341987, 493384, 2553358, -1379758,
- 552440, 861678, -331249, 361314, -855772, -1482838, 2013803, -1247151, -683974, -374736,
- 347355, 1074279, -404264, 140660, 199179, -215285,
- },
- {
- 2308008, -1722819, -2019172, 29935922, -13342853, 13094818, -861141, -8566849, 1262184, 3405372,
- -4356708, -11042898, 6787659, 4838818, -5328444, 1803349, 6729677, -6644852, 5601174, -48855,
- -5687611, 6048388, 3274913, -1105954, 1222455, -1165547, -6602439, -9337259, -3428995, 1684701,
- 11617350, -535797, -4531728, 3995930, 2230162, -3075734, 3430605, 1599875, 3325915, -4949950,
- -4392141, 5973763, 3742527, -3918084, -689342, -1402307, 1336272, 2644626, -136365, -2348810,
- -3827890, 1547262, -1386201, 382789, 22012, 1186485, 1546725, -4494684, 68183, 1663763,
- 4500052, 544924, 180926, -2998961, 4159139, -2168959, 1541893, -1443646, 1865090, -2579128,
- -2211908, -1650878, 643171, -1351841, 568009, -1274532, 1035087, -261993, 2499671, 1340567,
- 1093606, 78383, 341450, -1297617, 115964, 981400, -2317135, -1459215, -791885, 2099165,
- 174483, -565325, 146029, 132607, 117575, -758599,
- },
- {
- 301721, 8079371, -16995722, 20680804, -17728552, 6823630, 5736466, -1010928, 466541, -789737,
- -3018288, -5883032, -1736777, 16521129, -16350404, 14711874, 2678986, -10865730, -332860, 1115618,
- 39192, 4937602, 1141924, -9066139, 8107288, 7423314, -10737955, -7816304, 7523709, -7333657,
- 11012833, -8402567, 2571612, 740882, -3403762, 888521, 9127, -2197950, 4801774, -2711198,
- 1327145, 3643743, -2845953, -1785096, 88584, 3867081, -5732171, 1149978, 3424163, -835908,
- -4743255, 3193845, 1904818, -3505230, 1681480, -897648, 1036698, -2356327, -332860, 3483755,
- 126702, -1999844, -1533303, 3488050, 2003065, -1791001, -2138894, 2908230, -1492501, -1691143,
- 898722, -1073205, 1481227, -334471, 222265, 790274, -613643, -523986, 1110786, -122943,
- -403727, -28454, 78383, 659278, -983011, 712965, 503048, 91805, -1144072, 1039919,
- -441845, 12885, -659278, 17717, 482647, 79457,
- },
- {
- 16685411, -54204096, 18261128, 23584740, -8156680, 5968394, -1075889, 176094, -1830193, -12161737,
- 5422933, -8902393, 9307194, -1027571, 1838783, 2260764, 3607236, -3780645, -1861332, 3337727,
- -6289443, 7250979, -6560563, -9421548, 16391206, 5369, -6279242, -7256347, 8251169, 8474507,
- -954020, -11196443, 13689135, -10506564, 3978750, 4214974, -2521146, -4527433, 6531572, -1715839,
- 3189013, -3187403, 2526515, -2851322, 1031329, 3116536, -2349347, -2099702, -126702, 2244121,
- 717260, -1673964, 1902671, -1938641, 104690, 2276870, -6514929, 3122978, -11274, 3352759,
- -885837, -652298, -170725, 842350, -1556389, 4847408, -2079838, -1475321, -211527, 146566,
- -2585570, -1027034, -86973, 1322313, 984621, 668404, 760209, -203474, 920197, 2085744,
- -2031520, 190052, -890669, 1233193, -1330366, 352724, 533650, -53150, -1380295, 1931125,
- -1017907, 738198, -183073, -519154, -305480, 521302,
- },
- {
- -2437931, 24202678, -32778116, 23180476, -17727478, 5976984, 9805947, -3591130, 231928, -6711424,
- 5379447, -7529078, -8643622, 3347390, -432718, 13681618, -417686, -6272800, -4049081, -4777078,
- 13830332, 853088, -9789304, -7119445, 5083094, -2570538, 18596134, -14281840, 5530308, -4474282,
- -4737886, -7016366, 9075803, 4195110, -601832, -9510131, 3097208, -1195612, -2209224, 5714991,
- -1158567, -10047539, 7479149, 2357400, -1275068, -5388037, 4286378, -3728569, 1725503, -1583232,
- 1963874, -602369, 32749, 1540820, 2452426, 3233037, -3412352, -2348810, -331786, 1192927,
- -983548, 857920, -3028489, -1441498, 2808372, -1243393, 1506997, 379568, -2443300, 905164,
- 39728, 99321, 1142998, -1673427, -1089848, 2616709, -230854, 23085, -1470489, 655519,
- -523449, -2321967, 105764, 676994, 1919850, 1213328, -846109, -794569, -855235, 371515,
- 153008, -790811, 1471563, -1074, -241592, -325881,
- },
- {
- 19390166, -64063196, 24146306, 20260972, -654446, 1129040, 4246649, -3192771, 191126, -9803800,
- 10201621, -15146739, -1774358, 11901354, 3289945, 9708774, -7872675, -5925981, -4275103, 408559,
- 11675869, -5082020, -13572634, 4686883, 2867428, -3920768, 8893804, -8516383, 6592775, -607738,
- -2825015, -6295885, 8706972, 7479149, -5155035, -5909875, 4575214, -4413616, 6012954, -1402307,
- -432718, -5543729, 3523484, 3182034, -4394289, -2340220, 2091649, 1402844, 856846, -2628520,
- 881005, -1826972, 4114579, 660888, -278099, 3063386, -3355443, 521839, 2674154, -2136746,
- -41876, 186831, -2192044, 714575, -455267, 980326, 1877975, -2006824, 875100, -2247879,
- 704912, 239981, 1570884, 232465, 1915019, -2413772, -118648, 1237488, -98247, -339839,
- -1067836, -889595, -228707, 1085016, -2053531, 3872987, -1950452, 688805, -1749662, -193810,
- 1383516, -1638530, 1030255, -149250, 422517, 343061,
- },
- {
- -2224793, 24359980, -38693360, 24678882, -14039174, 1191853, 8783745, 723702, 1782411, -6467684,
- 1130650, -10030896, -3144990, 9911711, 2107218, 554588, -2541010, -5852430, 10450192, 5086852,
- -8255464, -49392, -983011, -978716, -15438797, 13928042, 11463268, -7081864, -5822902, 1729798,
- -4765803, 3954054, -5646809, 11143293, -8586176, 4599373, -4912369, 5098663, -5324686, 519154,
- 2229625, 602906, -8669391, 2154463, 5063230, -989453, -3520800, -3645890, 4125853, 4983773,
- -4363687, -5438503, 8181913, 1229971, 1847910, -361851, 442919, 205085, -6287832, 1260573,
- 1610076, -3684008, 516470, -316754, -501974, -683437, 3135326, 2234457, -4832375, 181462,
- 1666447, 845572, 2465848, 727460, -155693, -1211181, 2338073, -1021665, -1751810, -353798,
- -694711, -446677, 374736, -438087, 1165010, -113817, 1073742, -550830, -2615635, -96100,
- 995359, -276489, 2211908, 282931, -190052, -740882,
- },
- {
- 18733036, -62598076, 27393838, 19163070, -535260, 9795210, -2845953, -1230508, -4468377, 0,
- 3419868, -12179454, -2422362, 22666154, -18511846, 10930692, -6583648, -4216048, 11125039, -3110630,
- 2776696, -15039902, 15306190, -11666742, -11208791, 10506564, 5202816, 2368675, -12700755, 3821984,
- -643171, 493921, -2736968, 425739, 6603512, -6469832, 958315, 3280818, 934155, -2275796,
- -2750390, -2179696, -427886, 678605, 1084479, 1592359, 361851, -1058710, -1385127, 1103270,
- 2352568, -5490579, 1574106, 3666828, 760746, 2566243, -1251983, -12885, -4351339, -537,
- 1276679, -2313377, 1281511, 3760781, -3617436, 952409, 3158412, -528818, 616865, -2945274,
- 925565, 1319092, 186831, 2400350, -2095407, -51540, 616328, -1152662, -1024887, -210453,
- -485331, -1555315, 1232119, 432718, 892816, 361314, 93416, -398358, -390305, -520765,
- 377420, 1126355, -794569, 1438814, -107911, -121870,
- },
- {
- 2752000, -825707, -8179229, 16479253, 2835215, 3725884, -20996484, 5611912, 13813152, -4757213,
- -1916629, -12141873, 12455405, 4762045, -11391327, 2378338, -10085120, 5406827, 4566087, 2015413,
- -6605660, 9790378, -1069984, 1208496, 3748433, -12312061, 7002408, -9823664, -1425929, 3026341,
- 4692789, -1962800, 6811818, -5387500, -1667521, 6510634, 264677, -586263, -5311264, 8185671,
- -250719, 2115808, -261456, -11483669, 1715303, -1672353, -3612604, 5099737, 1149441, 3209414,
- -5313949, -16106, -2797098, 1750736, -2193655, 4679367, 1271847, -1480690, 4041027, -5419175,
- 875636, -5175436, 3777961, -2184528, 2040110, 992674, 1005559, -1060320, 2103997, -2279017,
- 847182, -1785096, 598611, -1993402, -1107565, -216896, 140123, 727997, -121333, 205085,
- 731755, 248571, -56371, -333397, 413391, -1195612, -385473, 1349694, -356482, -1950452,
- 1060857, -808528, -383863, -70867, 1350767, -1133335,
- },
- {
- 11999065, -40768904, 18858128, 15680389, 1698123, -2427194, -11236708, -7740605, 16375100, -3618510,
- -6114960, -481036, 6647536, -3309272, -704912, 1320166, -1129576, 11656541, -6546067, 5200669,
- 2527052, 7603703, -12822625, 11763379, -14040248, 623844, 3594888, -251792, 30065, 2532957,
- -1068373, -516470, 2602750, -7248294, 4001299, 24696, 1743220, -3599720, 3703336, -3347927,
- 3355980, -2763812, 988379, -1322313, 154082, -537, -3790846, 6980933, -2502892, -421444,
- 5133023, -5999533, -1521492, -1117765, 3856881, -97174, -185220, 5153424, -1775432, -1306207,
- -938450, -314069, -77846, 2870112, 1905892, -1671279, -663572, -569620, 183073, -919660,
- 1631014, -275952, 1882806, -2303713, -451508, 637803, -1475321, 1974074, -153545, -592169,
- 1198296, 2167885, -1814624, -467078, -102542, 1296543, -2226404, 284005, -245350, -257698,
- 25233, -1120450, 1564979, 813896, -340913, 228707,
- },
- {
- 596464, 6371047, -9658308, 15191836, 228707, -1268626, -21166136, 16761647, -2787971, 4490389,
- 3436511, -13826573, 14001593, -12692702, 1101659, 1949378, 5230734, -9315784, 4208531, 318901,
- -8022462, 835371, -7016903, 12051141, 359167, -8105677, 8099772, 3777961, -2772402, -2400350,
- -2447595, 5048197, -5597953, 6600828, 4696547, -5738077, 2341294, -5284421, -40802, 1775432,
- -1517197, -7615514, 12034498, -3599720, -5408975, 6559489, -1930051, 1999307, -3163780, 4827007,
- 4862440, -8359080, 2467996, -850940, 1184337, -89657, -5303748, 2367601, 68183, -3901441,
- 3757560, 3653944, -1782948, -391916, 877784, -683437, 315143, -3100967, 1063541, 3797825,
- -1165547, -1789928, 2885681, 2587181, -1634235, -640487, 1476932, -1544041, 559956, -1927367,
- 1895691, -1404454, -547071, -30065, 1059783, -797253, -539018, 2723546, 991064, -433792,
- 1355062, 377420, 76236, -335007, 444529, -1616518,
- },
- {
- 18286360, -59293096, 25884158, 13550085, 6586869, -1349694, -10688026, 12868796, -10344966, 15255724,
- -25170118, -95563, 6919193, -17524540, 16559246, 833761, 39728, -2471754, 2050847, -5446019,
- -166967, 4176319, -3117073, 4264903, -7564511, -483184, 1455994, 7459285, 2395518, -8699993,
- -2865280, 437013, -3252364, 6910066, 4022237, -2068564, -1074, -5796059, 6518150, -2180233,
- -7810935, 987306, 7740068, -1113470, -3537979, 3973382, -883153, 3079492, -2222109, 421444,
- 887448, -1373853, 288837, 1604707, -4583267, 2483028, -5653251, 6015102, -3847754, 3966402,
- -1320703, 1296006, -1108102, -122407, 731755, -811749, -1991791, 2147, 4271882, 1867237,
- -2911451, 1600949, -370978, 858457, 276489, -624918, -734439, 1032940, -2309619, 1322850,
- -2050310, 74088, -1268626, -526670, 1245541, 348966, -190052, 1330366, -733903, 732292,
- -151934, 1126355, 1050656, 120796, 79994, -907312,
- },
- {
- 4379256, -8027294, -2474975, 11282879, 2308545, -699543, -26183194, 22315040, -4377109, -5325760,
- 6444599, -17369922, 5887864, 5151814, 10521596, -12064026, 13545253, -2038499, -5294084, -8467528,
- 7938710, -8148627, 14334990, 2097555, -11656541, 6869800, 5526013, -10798085, 1962800, 3207804,
- -7486128, 3976066, 2341831, 3394635, -13418552, 9698573, -1971390, -1440425, 633508, 1112933,
- 5093831, -2662343, -763430, -3320547, 3207804, -1882269, -1918777, 4769025, 218506, 1089311,
- 906238, 177704, -1381906, -1457068, -408022, -330176, -1122597, 937914, -1254131, -619549,
- 1773822, -2922188, 994822, 1688996, 2619393, -1215476, -2312303, 2065342, -1634772, 287763,
- 649077, 434329, 41876, -1411434, 1393180, 580357, -988916, -311385, -265214, 1007170,
- 152471, 284542, 295816, 129923, 239444, 256087, -215285, 473520, -470299, -877247,
- -10201, -454730, 44560, 534723, 615254, -1833414,
- },
- {
- 16895864, -54960012, 26162256, 1380295, 16823924, -7062537, -11407433, 12160126, -9874667, 6729677,
- -7201587, -1016297, -9790378, 15442018, -4313221, 1765232, 2644089, -5308580, -6852621, 474594,
- 3176128, 8330626, -7447474, 7694434, -7218230, -8999567, 9812390, 2077690, -3107409, 3114925,
- -6233608, 3409667, 153545, 2242510, -8741332, 4974646, 337692, 2350421, -4612795, 4078072,
- 1963337, 4505421, -8259759, 858993, 1553704, -3667365, -216359, 2161442, 2552284, -157840,
- 1795296, -2142115, -2095944, 1222455, -2944200, 1583769, -1969243, 1218697, 217970, 2449205,
- -2509335, 610422, 9127, 170188, 380105, -2280091, 1448478, -21475, 368293, -3209951,
- 3218004, -2907156, 2608119, -1095754, -857920, 909459, -95026, -1690070, 27917, -792421,
- 1132798, -970663, 348429, -856846, 1066226, -81068, 1224066, -341450, -289373, -1067299,
- 153545, 544924, 372052, -1489817, 1401770, -318364,
- },
- },
- {
- {
- -264141, 68258840, 16369194, 7657927, -19297288, 12680891, 8750996, 8322036, -8681740, 590558,
- 1330903, -3745212, 11426224, 15974057, 6109591, -22472880, 15177878, 2458869, 5107790, -12659416,
- 7072738, 6630893, 19915764, -18089328, -4084514, -15334644, 7822746, 1563905, 10470057, 2245731,
- -11425687, -791885, -10370199, -765041, -2507187, -3817152, 5339181, -18183818, 1686848, -12220793,
- 3582540, 10499584, -6015639, 1218160, -3363496, -4555350, 2185065, 13197361, -621160, 1715303,
- 820876, 2257005, -350040, 3044595, -192737, -620086, -5199595, -1002875, -1379221, 8775692,
- -537408, -5123359, -2718178, 124017, -417686, -1664300, -100395, -469225, -1668595, -2694018,
- 4977330, 337155, 84289, 1720671, -1258425, 1060320, -4556424, 268435, -316217, 187905,
- -342524, -941135, -515933, -1095754, -3115462, -447213, -2077154, 1591822, 570694, 683437,
- 2177012, -179315, -494458, -1740536, -92342, -963683,
- },
- {
- -4207458, 11868605, 68243808, 64874944, 963146, 1488743, -8151848, 8546985, -1186485, 4255776,
- 4422743, -15265924, 8908299, 3878892, 18137646, -13084618, -16029892, -6694781, 6089190, -13163538,
- -2189897, -7266548, -6488085, -3187403, 15574088, -1573032, -3801046, 3948149, 1757179, -7145752,
- 20168630, -10482405, 3975529, 10151692, 4738423, 12752832, -2797634, -6446209, -12394202, -8941048,
- 8881992, -5426155, -3031710, -2182380, 6542846, -2054068, 7231651, 1922535, 1042066, -1531693,
- 1868311, -1212791, -5148592, 2353105, -1440425, 5470178, -1835562, -507880, -4183298, -3055332,
- 1342714, 100932, -5385889, 8165807, 2510945, 285615, 1763621, -1602023, -776852, 266288,
- -1804960, 2097018, 2119566, 2414309, 101469, 137439, -498753, -814970, 1097364, -1450625,
- 2468533, 770410, -2040110, 325344, 1233729, -443992, 2629057, -1296006, -1644436, -288837,
- 932008, 1259499, 561567, 770947, -706522, -1843078,
- },
- {
- 360240, 59506236, 54447300, 49316960, 3038689, 6859600, -4317516, -4193499, 2901251, 9657234,
- -4147865, -18968186, 2515777, 2574833, -6462852, 2360622, 15911243, 26307, 9143985, 1374926,
- -7511898, 2328946, 1428614, -3746285, -1068910, -8958228, -16355772, -14168560, -4329864, 3381213,
- 14697378, 2992519, -7168838, 3199214, 7068443, 3152506, 10628433, 7519414, 9500468, -2983929,
- -8159364, 4471598, 5507222, -3732327, -2914672, -4795331, -1592359, 1921461, 1227824, -3299072,
- -3706020, 4696010, -3301756, 215822, -598074, -860604, 6550362, 1823214, 508417, -1575179,
- 5600101, 2542084, 409633, -5030481, 2576981, -2389076, 893890, -1142998, 3403225, -2692408,
- -289373, -1605244, -292058, -1339493, -400506, -2269353, 886374, 338229, 5612449, 3199214,
- 2233383, 1023813, 1071058, -1959579, -1937567, -478889, -3166465, -686121, -948114, 1605781,
- 872415, -556735, -1476395, -1075352, -100932, 333397,
- },
- {
- 531502, 43401720, 3537979, 1577864, -34132640, 4432943, 5692979, -2640868, 2745021, 19924890,
- 6817724, -8168491, -3328063, 10139881, -28794534, 19249506, 23091892, -8381629, -17289928, -5530844,
- 675384, 8301635, 10322954, -4350802, 8532489, 5298916, -15050102, -15217069, 1519882, -13725642,
- 15373835, -6106907, -4163434, -3051038, -4210679, -1787780, -4375498, -3969624, 7347079, 1956358,
- 4325032, 3663607, -1793686, -4230543, -2026688, 4755066, -8110509, 1428614, 3813931, 1873680,
- -5880884, -1782411, 3063386, -1624035, 2356327, -75699, -586800, -5396090, -1050120, 5902896,
- 1153736, -1986959, -311385, 6939057, 6101538, -1575179, -3809636, -290447, -4608500, 810138,
- 4321811, -175020, 2995740, -178778, 282931, 456877, -322123, 379568, 644245, -789737,
- -139050, 356482, 111132, 676457, -1199907, 650151, 735513, 1610613, 177167, 1088774,
- -960999, -363462, 292595, 497142, -99858, -162672,
- },
- {
- -14406931, -97638032, 20167018, 57848376, 17260400, 2102387, -7294465, -2382633, -7247758, -10233296,
- 9731859, -14901389, 8752606, -9897215, -3969087, 4721243, 20994338, -1827509, -15416785, -6052683,
- -24034100, 770947, 7330973, 929860, 14398341, -51003, 1061931, 1007170, 14256070, 9368934,
- -1114007, -15522012, 14061723, -6973417, 8539469, 7597797, 591095, -4095788, 7967165, 784368,
- 956704, -6170795, 6309844, -1786706, -1880659, 3495567, 407485, 3068754, 1776506, -302795,
- 656593, -3244848, 3884798, -614717, -3867081, 2477123, -7969312, 945967, 786516, 4130685,
- 999117, 1772211, -2575370, -1768453, -2158758, 8359617, 506806, -1627256, -2023467, -2541547,
- -5661304, -2167885, 1455994, 3266323, 4156992, 1324997, 258772, 1341104, 3541738, 4835597,
- -559956, 57982, -1640678, 1546725, -2763275, -1045825, 1279363, 1407676, -181462, 2694018,
- -728534, 1558536, 506806, -126165, -97174, 1141388,
- },
- {
- -1709934, 53832048, -15636902, -4982699, -38745436, 7272454, 9113384, -4870493, 5386963, -2739652,
- 4188667, -9689446, -5834176, -6052146, -12681965, 6539625, -5248450, -4712116, -8708583, -11519102,
- 10946798, 710280, -1588064, -13626857, -4671851, -5371931, 20970178, -13539884, 2967286, -9826885,
- -5739687, -17287780, 76236, 5759015, -3591130, -12936441, 4291746, -5178657, -5720897, 5063767,
- 2779918, -8745627, 4474282, 2184528, 1973001, -2500745, 3600256, -7444252, 1564442, -358093,
- 2791192, 1781875, 277025, 1864553, 5597416, 3664681, -6814503, -4044249, -925029, 758062,
- -744640, 1199370, -4755066, -2698850, 1524713, -3941169, 2275796, 4118874, -1459752, 67646,
- 44023, -1498944, -2912525, -6648610, -4444755, 3225521, 316217, 494995, -1442572, 361851,
- -818728, -2570001, 54761, 2206003, 3364033, 856309, -1827509, -483184, -103616, 1584306,
- 578747, -1868311, 762894, -1175210, -408559, 28454,
- },
- {
- -16222628, -118763360, 20569136, 65128884, 34739308, -2097555, 5369783, -4232691, 2654290, -12229919,
- 12791486, -2734821, 488016, 11002096, 4356708, -3078418, -15992311, -1684164, -9960566, -16145856,
- 3534221, -7588134, -15604153, 7527467, 3561065, -10734734, 5029944, -4920959, 13320841, 1678795,
- -11274, -6325413, 4936528, 10176388, -630823, -7608535, -814433, -8527121, 8180839, 79457,
- 3346317, -5655398, 2627983, 780610, -11334419, -5671505, 2827699, 4954782, 6896107, -1822677,
- -5020817, -4156992, 7619809, -623844, -3088082, 5021891, -180926, 6977711, 6842957, -2402497,
- 3175592, 1369021, -5062693, -925029, -828392, 236760, 1435056, -1135482, 863288, -4093104,
- 1316944, -294205, 2559801, 1895691, 2027225, -4370129, -1394254, 3416110, 2029909, 13959,
- -546535, -1330366, -776315, 171799, -3670587, 3891777, -2906082, 1051730, -1647657, -725313,
- 1679869, -1009854, 439160, -758062, 1139240, 908386,
- },
- {
- -2219424, 42355356, -32041530, -1141924, -32543504, -3792993, 8963597, 7785165, 6080063, -3036005,
- 7787313, -5597953, -5874979, 153545, 5277441, 3939022, 1756105, 7575249, 8230768, -963146,
- -13646185, -4514011, -4355097, 9257265, -5930276, 7636452, -2311766, -5406290, 809064, -228707,
- 3695819, 4208531, -16069083, 5367636, -10220412, 6593312, -5848135, 888521, -8319889, 120259,
- 4854387, 4691178, -12111808, -1730872, 6338298, -85899, -3127810, -5130876, 864899, 6976638,
- -2062121, -3659849, 11198053, 1411971, 3722126, 1090385, -2201708, -2020245, -5067525, 316754,
- -1870458, -5059472, 2196876, 608275, 902480, -777389, 859530, -1044751, -3335579, 5276904,
- 5186173, 3817152, 5046587, 2024003, -497679, -4060355, 576063, 836982, 612033, 351650,
- 285615, 494458, -109522, -2614561, -1152662, -1865090, 1188095, 963146, -2824478, -1773822,
- 797790, -150861, 1656247, 676994, 949725, -146566,
- },
- {
- -15829639, -110438104, 30605400, 69485056, 43733504, 11235634, -6339909, -1993402, 573915, 9400610,
- 16230681, -9069897, -11547020, 14753750, -33012192, 1687922, -2166811, -7781944, 7033546, 2911451,
- 3606699, -27564026, 10615012, -5402532, -17794050, 2283849, 3342558, 3766686, -6459094, 3898757,
- -12232067, -9852655, 3721589, 2822331, 2840584, -6944425, 978179, 280247, -2435783, 1275605,
- 227096, -6495065, 634045, 292058, 474594, 9312563, 6704981, -2259690, -6755447, -215822,
- 2816425, -5832029, 2029909, 122943, -1808181, 2816425, -5488432, -418222, -2097018, 2997887,
- 4195110, -1457605, 3700651, 7563975, -125091, 2978560, 1904818, -153545, 391916, -4334696,
- 912144, 239444, -2011655, 1298154, -1161252, -741956, -2119566, -3084860, -2282775, 1212255,
- -402116, -2946348, 1297080, 1330903, 793495, 382252, 1313186, 828392, 863288, -44560,
- -1077500, 509491, -941135, 1770063, 571231, -452582,
- },
- {
- -339839, 44124348, 26177826, 10539850, -9363566, -6541772, -24353538, 17830020, 25158308, -6756521,
- 2340757, -16545825, 12599287, 13695577, -14882599, -12927315, -28409062, 14654965, 17803714, 5109938,
- -6106370, 5277978, -5619965, -4399121, 2581275, -10138270, 7839926, -15468325, -113280, 7741679,
- 13956496, 485331, 5724655, -5297842, 1183264, 14993731, 10114111, 4206921, -6965363, 8410620,
- -2738579, -364535, -2531883, -18612240, -4217121, -2622078, -8845485, 847719, -2096481, -1132798,
- -2263985, 1522566, -3172907, 6910066, 3769371, 8256538, -1839320, -1879048, 4782446, -10922639,
- -407485, -5303211, 1831804, -7557532, -1663226, 1391033, 4396436, 310311, 1768990, -2795487,
- -531502, -2842732, 1672353, 256624, -834297, -3186329, -1682017, 978179, 378494, -1451162,
- -2500208, -1032940, 598074, -525060, -2004139, -5039608, -862752, 3219078, 1655710, -176631,
- 1494649, -1185948, -1142998, -1242856, -16106, -3591130,
- },
- {
- -9096204, -48709760, 45932528, 28967944, -1402844, 11814381, 504122, -28758028, 15211164, -6026376,
- 666257, 748398, 1163936, 4890894, 1649804, 4962298, 17480516, 35225176, 1400159, 12046846,
- 15061377, 4494147, -20076288, 6463389, -13477071, 6518687, 6799470, 2131378, 5486284, -5484673,
- -7472170, 7437273, 2684355, -7296076, 2414309, -660351, 1615982, -4911832, 3090766, -4846334,
- 5865852, 1857573, 9038222, 7577396, 3908420, -1487132, -12265890, 740345, -2016487, -2579128,
- 4234838, 38118, 1442035, -1268626, 7180649, -127238, 90731, 7564511, -3417183, -3746285,
- -2144799, 617938, 2651069, 3580392, 2176475, -573378, 197032, -106837, 909459, -1111860,
- 1680943, 10737, 2121177, -2248952, -1870458, -1853815, -2812667, 3216931, 36507, -1225676,
- 1409823, 2120103, -2434173, 705448, 1676648, 1318018, -3786014, -1835025, 242666, 679679,
- -1220845, -1190780, 3220689, 995359, -1360968, 48855,
- },
- {
- 17717, 54784992, 23431730, 1261647, -15328738, -15483894, -26288422, 19927574, -5037997, 1713155,
- 24054502, 6634114, 9312563, -14493367, -8264591, -25598542, -10921028, -6864432, 2573759, -3119757,
- -14550275, -11250667, -6102075, 16705275, 7176354, 1389422, 9811853, 1286343, -1203665, 9263171,
- 6380174, 4863514, -7590818, 2022930, 253940, -3193308, 1948841, -17146046, -7196755, 2149094,
- -463856, -13774497, 12564927, -1797981, -8523363, 6788196, -2374043, 681289, -5655398, 1437740,
- 3498251, -7858717, 3701188, -1290101, 3436511, 3903589, -4709969, 4153770, 5297842, -4374424,
- -332860, 1532230, -3764539, 1905355, 519154, -5029407, 2206540, 185757, -43487, 2928094,
- -538482, 490700, 5464272, 1500017, -2569464, 134218, 3336116, 1271310, 3312494, -679679,
- 2463164, -1781875, 174483, 1300301, 2326799, 101469, -516470, 3731253, 2050847, 107911,
- 1561758, -184684, 471910, -406948, 293132, -2758980,
- },
- {
- -13037373, -119832808, 20034412, 33978024, 28166932, 22021908, 4514548, 1536525, -23257784, -2517925,
- -34543884, 732829, 1498407, -23270132, 8352638, -5792301, 4954245, 279710, -5243618, -3097745,
- 9058086, 11238319, -2702608, -7373385, -13749801, 3248606, 7058242, 11234024, 700080, -16359530,
- -13044353, -4664335, -5019743, 10441065, 4859756, -640487, 10001905, -1467268, 5603322, -1282048,
- -11167989, -1177895, 5214627, 503585, 5438503, 2747705, -3906810, 7931194, -4318053, -7828115,
- -6734509, -3400004, 6933688, 3829500, -5398774, 8350490, -4884989, 8793946, -486942, 2975876,
- -3671660, -389768, -2155000, 96637, -404264, -1844689, 106300, 1551020, 5019206, 4592931,
- -3461744, 307627, -1483911, -986232, -689879, -3584150, -3265786, 2895345, -949725, 2254321,
- -3060701, -2143189, -4442070, -3450469, 1283122, 1207960, -542777, 2015413, 511101, 615254,
- -92342, 2246268, 2260227, 1665911, 867583, -2013803,
- },
- {
- -1574106, 28410672, 25350508, -263067, -12904766, -18254148, -38652560, 22014392, -13957570, -16482474,
- 7407745, -19494320, 13811004, 11447162, 12911745, -3107946, 21007758, -6742025, -14986752, -18660560,
- 1446330, -13320304, 19738060, 14465450, -11120207, 5535139, 1085016, -15114527, 6826314, 3825742,
- -10099079, 6310381, 2850248, -3690451, -15334644, 11972758, -4378183, -3469797, -4003447, -1180579,
- -987843, -2045478, 6498823, 2587181, 8345659, 5111548, 1829656, 5087389, -2306934, -3893388,
- 3545496, 4791573, -2787434, 1060320, 1707786, -4021700, -5747203, -1468879, -2952253, -4022237,
- -1130113, -2844342, 4635344, 3595425, 2395518, -4681515, -5033165, 1705102, -1339493, 4152697,
- 4198331, 838592, 276489, -158914, 1963874, 933619, -636729, 1564979, 1387811, 1771137,
- 856846, 695248, 195421, -1058710, 279710, 368830, -2510409, -146029, 1190780, -993748,
- -1483374, -1474784, 325881, 1495186, 791348, -2379412,
- },
- {
- -12686797, -114869976, 14782741, 12022150, 27876486, 3537443, -6538551, 1541356, -11693048, -105764,
- -15764677, 4575214, -21502216, 9688909, 3062849, 320512, -11837467, -18284750, -17658222, -1417339,
- 11826729, 14911590, -16420197, -2177549, -14505178, -10348724, 19689740, 8227547, -6728067, -2907693,
- -6628209, 11530377, 2808372, -3825742, -8645232, 13686987, 3542274, 5517959, -3066607, 2404645,
- -1107028, 3416647, -10194642, -7060390, -2795487, -2154463, -78383, -693100, -2320356, -3117610,
- 4847408, 1249836, -3910568, 2581275, -1980517, -180926, -8295193, -2182917, 1132798, 5174362,
- -912144, 2592550, 3278671, 683437, -3942243, -6502581, 1400696, -2298881, -3142842, -5080947,
- 3237332, -4072166, 2511482, -1592359, -1452236, -209380, -1818919, -1594507, 132607, -3551938,
- -531502, -2587181, -1224603, -2474438, 932008, 1799591, 2067490, 131533, -221728, -1684164,
- 120259, 1286343, 532576, -2388539, 1607928, -1526861,
- },
- },
- {
- {
- 2319819, 28944858, 37702832, -23418846, 21703544, 3565897, 9201967, -31675, -2671470, -225486,
- 10560251, -11447698, 16920560, 15935402, -13241921, 587874, -4072166, 1095217, 6875706, -9826885,
- -5191005, 13609141, 23190676, -9360881, -4994510, -9152575, -2283312, 4062502, 7018514, -1185411,
- -4217658, -11281805, -7624641, 6271726, -1721208, -5656472, -3153043, -6708202, -2204392, -9580998,
- -1003412, 6698002, -1792075, 482110, -1799054, -3906810, 4581120, 2047626, 7164006, 6979,
- 453656, -1037235, 3088082, 261993, -813896, -1254667, -3978214, 999117, -612033, 2655364,
- 570157, -5136244, -272194, 1833951, -3446175, -1828582, 439697, -1059246, -573915, -3516505,
- 4056060, 3534221, -156229, 78383, 1741072, -326954, -2935073, -2637647, 420907, -1549410,
- -340913, -20938, -1730872, -115964, 110059, -2113661, -994822, 1246614, 611496, 1607928,
- 745714, -188442, -107374, -1186485, -448824, 558346,
- },
- {
- 753767, 108776488, -22784802, 22588844, 21629456, 6777459, -4938139, -857920, 6720013, 4965519,
- -2471217, -564788, -1379758, 1301375, 17222818, -10423349, -10629507, -2128156, -1199370, -2287607,
- -14916421, -2884071, -3186329, -5877663, 12251394, -1234266, 825171, 1622424, -7526930, 4479114,
- 8270497, 1734630, 4357781, 6941204, 4226248, 5331665, -3427384, 811749, -11646341, -6671158,
- 2944200, -3454228, 925029, 892816, 2964064, 1538672, 522375, 1288490, 1899449, -1962800,
- 3625489, -4380330, -742493, 921807, -154619, 3010772, -3125663, -793495, -1939178, -2510945,
- -1758789, 1687385, -3310346, 6277632, 3006477, -1568737, 737124, 27380, -4331475, 3058554,
- 361314, 2936684, -856309, 1373316, 685047, -602906, -1224066, -227096, 1097364, -1210107,
- 3096672, -1377611, -312459, -2590939, 3039763, 1684164, -205622, -935229, -831613, 1245004,
- -947577, 1515587, 522375, 773631, -1415729, -913217,
- },
- {
- -2006824, 103549512, 17637820, -5538897, 45635100, 5542119, -5538361, -7670275, 4872104, 9917079,
- -2228014, -10747082, -4708895, -1699196, 3350075, 1067836, 9624485, 6330782, 1838246, 2168959,
- 5611375, -8829916, 148713, -7799124, 1787243, -473520, -15446850, -17827336, -3163780, 10790568,
- 984621, -623844, -714038, 5652714, 8495445, -362925, 6298033, 7435662, 7712151, -1674500,
- -3993783, 4139275, 209917, -499290, -5053566, -2975339, 3253975, -3045669, -3189550, 2457258,
- 1534377, 2068564, -3296924, 2377265, -1301375, -494458, 2265595, 2931315, 5541045, -3969624,
- 2161979, 2877091, 299574, -2123861, 2185602, -1718524, -2212982, 1660005, 117038, 408022,
- -57445, -727460, -958315, 213138, -1620813, -461709, -702764, 1574106, 6328635, 1829656,
- 1344862, 1687385, 672699, 13422, -2755759, -833224, -1774358, -748935, -660888, 1757715,
- 583579, -495532, -2022930, -304406, 348429, 929860,
- },
- {
- -392990, 41625212, 10570988, -14656576, -10007274, -1921461, 1383516, -838056, -2013803, 18891950,
- 6048388, -5664525, 548682, -720481, -10778220, 10470057, 11247446, 9737765, -23707146, -4012573,
- 3853660, -7345468, 8099235, 4086662, 9196062, -1850594, -8952322, -6728603, -5669357, -9167608,
- 5989869, -140123, -5742908, 2643552, -9250286, -1943473, -6310918, 2885144, 1162862, 5325223,
- 4292820, -1648194, 1002338, 1586454, -1050656, -1373853, -7685307, 3872450, -648003, 3112778,
- 3623342, -9716290, 1438814, 4480725, -3205119, 2017561, -2035278, -1605781, -3986267, 4001299,
- 2251637, 518617, 2209224, 2848100, 5950141, -3132105, -564788, -2794950, -3221762, 2068027,
- 3809636, -868657, 1510755, 1196148, 2041183, -1547799, 155693, 445603, 1530082, -962610,
- -641024, 185220, 1374390, -260919, -1131187, 882616, 503585, -37581, 1008244, 536871,
- 427349, -1687922, 481036, -134218, 366683, 472446,
- },
- {
- 12954695, -61631172, -37902012, 43744240, 19943680, 14212584, -11323681, 6899328, -5323075, -1649804,
- -9860708, -10394358, 4308926, -3387656, 957778, -12364137, 23770496, -1658394, -11199664, -11897059,
- -17113298, 4134980, 8600672, 1266479, 7688529, -3712462, 8318815, 6398428, 6229850, 4748087,
- -1938104, -3860639, 1566589, 4811974, -1777580, 6323803, -1365263, 2128156, 2146947, 7098507,
- 353261, -1602023, -3164854, -200790, 1584306, -4534412, 1908039, 4523675, 5236639, -2210835,
- -1780264, -2420214, 3855270, 254477, -3536369, 3674345, -811212, -2755222, -2140504, 2414845,
- -204548, -498753, 852014, -756988, -106837, 1647657, 4236985, -2769717, -2525441, -2010582,
- -2892661, -2024003, 3979824, -1054415, 4907537, 612033, -1199370, 3659312, 3497177, 1631014,
- -374199, 1367947, -1203128, 1093069, -2040110, -662499, 2191507, -304406, 2587718, 273267,
- 78383, 973347, 1085553, 222801, -1032403, 668941,
- },
- {
- 2897492, -22214644, 56315076, -16298864, -19292994, 679142, 763967, 795106, -1476932, 4671851,
- 2322504, -8194798, -5809480, 1423782, -17292612, -2463164, 6000606, -11121281, -3917547, -212601,
- -6662031, -5126581, 0, -18816252, 11337103, -8024073, 820339, -1915555, 3346853, -4524748,
- -10072235, -9329743, -120796, 1825898, -8617852, -1556389, -2625299, -6512244, 1923072, 2532420,
- 3731253, -7903814, 6039798, -2253784, 1652489, 5970542, -3033858, -3956739, -1940252, 7219840,
- -515933, 5877126, -5326833, 2008971, 3251827, 4005594, -962073, -2399276, -6631967, 2119566,
- 193810, -3780108, -2876018, -265751, -4221416, 1592359, 1671816, 6204617, -1133871, -5093831,
- 795106, 178778, -3451006, -2552821, -4828080, 1674500, 948651, -1771674, -1391033, 180926,
- 1433445, -3657165, 109522, 4448513, -436476, 1398549, -1731409, 1082869, 188979, 657667,
- 968515, -1923072, 1073205, -3256659, 579284, 1124208,
- },
- {
- 14364518, -80550504, -47483548, 72426568, 24154896, 4940286, 2577517, -1988033, 6879464, -10627897,
- -6793028, 13962402, 3634616, -690953, 14814953, -9290551, -14208826, -3568581, -8363375, -4986994,
- -5245229, -10459319, -8067023, 120259, -2403034, 1929514, -146029, 1571421, 1610076, 7381438,
- -766652, -4441533, -1510755, 7169911, 2697240, -8498667, 2192044, -7756711, 5091147, 1337882,
- 2814814, -2855080, 190052, -1967095, -1949378, -3200825, -1862942, 2980707, 1898376, 4096325,
- -9882183, -1541893, 3647501, -2042257, 961536, 2869575, -227096, 6660421, 6994891, 17180,
- 2458869, -3056943, -772020, 3076270, -1941862, -3064459, 287226, 1189169, -437013, -2489471,
- 2457258, 656056, -445603, 3249680, 1419487, -3541738, -2147, 2115272, 209380, -813896,
- 1699196, -1432372, -337155, -409096, -1103270, -459562, -608275, 1797444, -2087354, 272730,
- 818728, 99858, 1413044, -1603633, 1149978, -311922,
- },
- {
- 2579665, -40336724, 51156280, -12734578, -18255222, -7678865, 5017596, 6427956, 3042448, 3697967,
- 4057134, 4563403, -15539192, 16549583, 77846, 4536023, 8067559, 8933532, -5475010, -7257958,
- -3950833, -5145908, -2913062, 7628399, -4872641, -5819144, 9654013, -9446244, 13945222, -11560441,
- 17472464, -146029, -13969918, 682900, -2309082, -11154030, 6209449, -4904316, 1132798, 998043,
- 4056597, -1731946, -972810, -3942780, 1571421, 2411087, -3081639, 1147293, -5186710, 2330557,
- 1987496, -1733556, 5512054, 3837017, 3793530, 1893007, -1232119, -3926674, 899259, -4617090,
- -310848, -3901978, 935766, -1670205, 5339181, -5428302, 298500, -644245, 1003412, 2854543,
- 3549254, 9527848, 1021665, 105764, -668404, -22012, -306016, -781147, 947040, 1189169,
- -333934, 340376, 107374, -2764348, -692564, -1090385, -166967, 731755, -1999844, -1713692,
- 643708, 937377, -507880, 1209033, 1583232, -563714,
- },
- {
- 14132053, -71225056, -42908872, 78504488, 32649268, 9781788, -7323993, 4472135, -2007897, 17058000,
- 7848516, -6811818, -4708358, -3936875, -7399155, -20024212, 13773423, -5065377, 157303, 11645267,
- -7619272, -12361990, 682363, -15994995, 932008, -2284923, 2811056, -2223719, -2341294, 1016834,
- -6393596, -5953362, 4725001, 1029718, 865973, -5821828, 1181116, -170725, 3683471, 1254667,
- -1626182, -8784282, 2421288, 710817, 5204964, 3033321, 1623498, 7471096, -11628624, 236223,
- -1383516, 1174137, 2884608, -3655017, -1611150, 1059783, -3834332, -748398, -1982664, 4955319,
- -79457, -1740536, 4743255, 3931506, 1095217, 1446330, 1131724, 1977296, -3050501, -1837172,
- 1622961, -429497, -3196530, 2503966, 1202591, -1232119, -3498788, -2560338, -2752537, 2486249,
- -1452236, 332323, -1850594, 1605244, -101469, 280784, 214212, 1520955, -1155346, 1960653,
- 131533, -2224256, 257161, 472983, 2287070, -1478543,
- },
- {
- -922344, 72021232, -4733054, 7123740, -667867, -22170622, 1170916, 17093432, 8396124, 71941,
- 2243584, -5024038, -3020436, 16132434, -16524887, -10103374, -10636487, -1744294, 20018842, 523986,
- -619549, -2701535, 854162, -2974802, 5114233, -7841537, 2908230, -10545218, 8689256, -3168075,
- 13419625, 1510218, 4942971, -1698660, -4633196, 9732396, 10821707, 6271726, -4631049, 1409286,
- 4634807, -4458176, -2212982, -9414568, -10961293, 3586298, -2927020, -5034239, 2592550, -4084514,
- -1033477, 3630858, -6227166, 1020055, 12026445, 4653597, -3083250, 230318, -2743947, -2879239,
- -4468914, -2426120, 3093450, -2804077, -6646999, -1387274, 3513820, 1439888, -260382, 3539053,
- -4388920, -789200, -1253057, 1484985, 1945083, -3755412, -425739, 265751, -1174674, -495532,
- -2145336, -2413772, 719944, -127775, -2099702, -2163590, -833761, 1794760, 1982127, 707059,
- 988379, -1852205, -277562, -1323387, -797790, -1818382,
- },
- {
- 6829535, -4631586, -2022393, 22952842, -6286759, -10412611, 47649976, -19138912, -8761196, -18123688,
- 15247134, 826244, -1563905, 11100343, 3874597, 135291, 14912663, 17854180, 24543054, 7419019,
- 13469017, -5099737, -5581310, -1948305, -6321655, -565325, 4143033, 4322885, 11477763, -7404524,
- -5694053, 8495982, 2360622, -1997160, -1754494, 2569464, -8004746, 3281355, 4850629, -6138045,
- 6324876, 6009196, 3154117, 15094126, -378494, -1792075, -7276212, -5564130, 1826972, 3514894,
- -4450123, -905164, -1493575, 8164733, 3221762, -1743220, 1485522, 2906619, -317828, -6451578,
- -2924336, -463856, 7247758, -1966021, 1187559, 2372970, -48318, -974958, 2687576, -2034204,
- -942208, 3061775, -1816771, -1198296, -1122060, -3861176, -180926, 2161979, -1772211, 1873143,
- -99321, -527744, 1377074, -2560874, 3274376, -1801739, -471910, -1874216, 306016, 1126892,
- -1371705, 1906966, -553514, 1481227, -1591822, 392990,
- },
- {
- -19864, 59989956, 7067369, 155693, -5249524, -7074885, -18354006, 6287832, -14496, 1925219,
- 8179229, 15331423, -9498320, -4452808, 7060926, -14884746, -26843546, -3818226, 532576, -2065879,
- -17450988, -10554882, -5025649, 20571282, 7714835, 4760435, 1087701, -10098005, 14557792, 9210557,
- 15593953, -539018, -1185411, -13053479, -2245731, 3538516, -4478041, -19733228, 779000, 512712,
- -3025268, -9882720, -646393, 3098819, -3958349, 8253317, -3776887, -920197, -1884417, -4560719,
- 2134599, -1459752, 795106, -1773285, 3620658, 3841312, -1576790, 3290482, 763967, 2466385,
- -6521908, 2421288, 278636, -9127, -323733, -5100274, -1840930, 1614371, 1056562, -1306744,
- 1016297, 2105071, 4930623, -1725503, 64425, 40802, 3030100, 2332704, -82678, 2814277,
- 1541356, -2250026, 199179, 2167348, 202937, 1327682, 1544578, 1396938, 1928977, -1321776,
- 1043677, 430570, 1220845, -941135, -34360, -1855426,
- },
- {
- 7998303, -126444912, -2124935, 27062588, 22119618, 4729833, 36673652, -12920335, -5803575, -15448460,
- -32138704, 11742977, -2935610, -3482682, -2052994, -9889162, 7932268, -8997956, -683437, -4476430,
- 11574937, 7524246, 11304354, -12541305, -9454834, -1960653, 5217312, 14353244, -8145943, -9180493,
- -12410845, 5837935, -7912404, 3833795, 3586298, -4996658, 13214541, -1912871, 4458176, -2796024,
- -4699231, -1364726, 1930051, 4263829, 3100430, 1147293, -3722663, 7454453, -6751689, -5834176,
- -1240709, -4653597, 7908109, -530428, 742493, 2005750, -2276870, 5861557, 2037962, -2426657,
- -530965, -1993939, 1356673, -1047435, -2247342, 2843268, -315680, 3307662, -949188, 751082,
- 1228361, -3251290, -68183, -739271, -2930778, -290984, -5513128, 2525441, -1957431, 1065689,
- 144418, -4342749, -2490007, -3899294, -28991, 1785096, 2331630, -453119, 2855080, -134755,
- -11811, 2276333, 243203, 1846299, -275952, -1449015,
- },
- {
- -239444, 64660732, -7542500, -1413044, -7427072, -19581830, -26217554, 7961259, -18523120, -2325725,
- 2055142, -7137699, 7783018, -2286533, 7580081, 24739012, 2565169, -9474161, -10690174, -10882373,
- -18433462, 9125732, -10428181, 25200720, -187905, -3858491, -1597728, -11820287, 6437619, 13970455,
- -5391258, -6322729, 4958540, -14073534, -4568235, 5798743, -7526394, 3952981, -4640712, -6068789,
- -2576981, 2402497, 3516505, 7998840, 10105521, 5260261, -3411278, 2045478, -588947, -2138894,
- 5474473, 1498407, 583579, 2688113, -605054, -4816806, -3187403, -2224256, -3986267, -3394098,
- 3203509, -5547487, 4103841, 3103651, 518080, -3459059, -3769908, 3206730, -2099165, 4172024,
- 5148055, -1465121, 377957, 3844533, -1430224, -549219, 1177358, 1534377, 1539746, 173409,
- -2138357, 3531537, 155156, -1935420, 518080, 2016487, -1881196, -1559073, 1373853, -1909113,
- -1079111, -1047435, -49929, 1214939, 209380, -783295,
- },
- {
- 8339216, -116711440, -15710990, 21214990, -2940442, -6344204, 35182760, 785979, -8130910, -12636868,
- -15180562, -3327526, -17394618, 7359964, -13263396, 16000364, -2921652, -29623464, -14282914, 14407468,
- 6478422, -605590, -3767223, -9404368, -16044387, 252329, 15077483, 7737921, -7301445, -10338523,
- -1089848, 12239046, 12205760, -5396090, -1835025, 1465121, 8293582, -887985, 237834, 879931,
- -680752, -5015985, 452045, -12487617, -6416681, 6979859, -2079838, -6749004, -3044058, -3362960,
- 3955665, 1533840, -2987150, 3329674, -126702, -3555696, -6625524, -4499515, 4407710, 7291781,
- -4605279, 5317170, 2995740, -878858, -601295, -7810398, -1227824, 956704, -4676146, -1893007,
- -2907693, 528281, 579821, -4063039, 513785, -333934, 41339, -1392106, 781147, -4263292,
- -2277407, -24159, -1592359, -1631014, -1539746, 2783139, 1904281, -491774, 1287417, -1622424,
- 484794, 887448, -190052, -1510755, 212064, -1074816,
- },
- },
- {
- {
- -1918240, -43880072, -18045842, -25942676, 25643640, -6176700, -2615635, -3579855, 4920959, 4709969,
- 9423695, -12212740, 6226092, -4181151, -24048058, -1581622, -22200686, -8328479, 4632122, -2757906,
- -1834488, -2239826, 6148246, -2541547, 4937065, -1029182, -993748, 667331, 290984, 6148246,
- 8431558, -9540733, -1769527, 9940702, -251256, -501974, -2218351, 35970, -484258, -8828305,
- 342524, 3484829, -322123, 2375654, 524523, 2191507, 2244121, -12552579, 3438121, 1379221,
- -4555350, -6427956, 911607, -5410048, -1988570, 5608154, -869731, -858993, -730144, -3974455,
- -640487, -1587527, -261993, 2106682, -3610994, -850404, 3235721, 3298535, 4095251, -1050656,
- 1009317, 2163590, 1574106, -186831, 54761, -730681, 1691680, -567473, 119185, -2391760,
- -387084, 1140314, 989990, 2535641, 2264522, 260919, 1197759, 1144072, -62277, 515396,
- 548682, 286152, 1953136, 902480, -362388, 68183,
- },
- {
- 711354, 138954544, -12490302, -35967668, -26876832, 849867, 3845070, 5906117, 9491341, 7217693,
- -205622, 2899103, -3848291, 1131187, 16150151, -11436961, -7938710, 5352066, -5513665, -4710506,
- -4370129, 4804458, 7346005, 853088, 3373697, -3283503, 803159, -968515, -4248797, 3658775,
- -2619393, -736050, 3296388, -118648, -5040681, -951872, -1628866, 4953171, -642635, 1323387,
- 3359201, -1728188, -83752, 2853469, -2473901, -3881040, -4246649, -4216048, 2120640, -2165201,
- 1136556, -419296, 251792, -722628, -219580, -36507, -3664681, -2322504, 108448, -2260764,
- -2595771, 3980361, 236223, 5332202, 528818, -3245922, -2338073, -685584, -2248416, 4540318,
- 166967, 1236951, -4146254, -753767, -62277, -2147484, -3181497, -1876364, -424665, -820876,
- 3813931, -1786706, 18254, -3591667, 3037079, 1453846, 61740, 1065152, 150324, 235686,
- -2216203, 925565, 226023, 1032403, -573915, -206695,
- },
- {
- 958315, 58310624, -43556872, -59716688, 6352794, 991601, 401579, -824634, 5898601, -322123,
- 1767916, -1779727, -5461588, -5406290, 1220845, -3659849, -760209, 1921998, -285615, -3635690,
- 3139084, -12343736, -920197, -6639483, 9166534, 6650220, -2014340, -7974144, -7427072, 8618389,
- -3652870, -2698313, 2396592, 862215, -1519345, -7485591, -2357937, 3886409, 3342558, -1867774,
- 3817689, 5250061, -1760937, -938450, -2435783, 1737851, 6539088, 690953, -108985, 5785858,
- 3550327, 2716030, 2736431, 7515119, 3931506, 206695, -2326799, -1018981, 4481262, -5245766,
- -429497, 413391, 883690, -110595, 2074469, -516470, 433255, 2973191, -1681480, 2330020,
- 842887, 747861, 415001, 91805, -296353, 1692217, -630823, 2261300, 4753455, -1123671,
- -216896, 636192, -1385664, -693637, -1657857, 874026, 41339, 856309, 428423, 811749,
- 1314260, 1341104, -69256, 126165, -714575, 1307281,
- },
- {
- -708670, 14049375, -3346853, -7175280, 4207994, -2696703, -2211371, -706522, -8320963, -3506304,
- -3863323, 6509560, 4721243, -4027069, -2675228, -561030, -4581657, 16904454, -17861696, -2068564,
- 2880313, -12125766, 516470, -6117644, -4759361, -3603478, 6247030, 3732864, -4847945, -9203041,
- 552440, 5270999, -4342749, 4371740, -4609574, 1579474, -2452426, 2752537, -6216429, 6409702,
- 5796595, -6928856, 3122441, 1872069, -183610, 501974, -6387690, 2416993, -168041, 6922951,
- 5876589, -7285875, 4205310, 4189204, -6081137, 98247, -2152852, -542240, -4789963, 3124589,
- 2260764, 955093, 863288, -240518, 707596, -3008625, 2360085, -2887829, -1354525, -361851,
- 354872, -281320, 1551020, 422517, 1305670, -3351148, -599148, 422517, 2333241, -606664,
- -897648, 96100, 1457605, 76236, -1459215, -657667, 214212, -947577, -747324, -585189,
- -96637, -1611687, -68719, -1241782, -522912, -494458,
- },
- {
- -14264123, 1555315, 25510496, 8566312, -8382703, 8748848, -3743064, 15483357, -3855807, 15152645,
- -3266860, -12496207, 2539936, -9794136, -2559264, -12444668, 14336601, 1790465, 8952322, -1737851,
- -4117800, 5468567, 6672769, 2187749, 3506304, -2725157, 6859063, -1396401, -5215164, -6301254,
- -2535105, 3834869, -810675, 3237332, -8638790, -1694365, -6200859, -366146, -2491081, 5547487,
- -3282429, -4089346, -1640141, 4275103, 6211597, -1684701, -4014721, -3693672, 7266548, -842350,
- 4847408, 3812320, -2487323, -3923990, -3823595, 4646081, 1537061, -1673964, -2886755, -1298154,
- -651761, -590021, -287226, -420907, -89121, -3605088, 1104344, -2305861, -977105, 1103807,
- 2675228, 1377074, 4906464, -3116536, 777389, -1534377, 341450, 2358474, -484794, -1829119,
- -2523830, 1087164, -857920, 1139777, -537, -93416, 1428077, -1374390, 1951526, -471373,
- 576599, 389768, 403190, 1115618, 286152, 99858,
- },
- {
- 573915, -46036680, 40758164, -2710124, 7351911, -1191853, -2334315, 4228932, -2225330, 2248416,
- 2725694, 1598265, -3174518, 7179575, -10473278, -8401493, 6350646, -4610648, -4240744, -7239168,
- -21087216, -13972602, 2401961, -23034446, 17027398, -290984, -9906879, -1375463, 6651831, 14020384,
- 3251827, -5890011, -692564, 1106491, -7711077, 5828808, -2405182, -1086090, 12524662, 1549410,
- 54761, -4480725, 7307887, -971200, 1377074, 5964099, -1362042, 338766, -1583232, 8360154,
- -3288334, 3825742, -5506685, -1383516, -2887292, -1938104, -1662689, 313533, -3212099, 6918119,
- 2900177, -2514703, -1762547, 401579, -4198868, 3474629, 818191, 5693516, 414464, -3678103,
- -251256, -1981591, -132607, 4012036, -838056, 654983, -1174137, -3046743, -1733019, -1158567,
- 3097208, -2190970, -1327682, 1919314, -3760781, 469225, 196495, 1524713, -45634, -1143535,
- -286689, -2262374, 1045288, -1818919, 1060857, 825171,
- },
- {
- -16001438, -14432701, 29985852, 35421668, -10590852, 4774930, 614717, 5539434, 17623324, -4271882,
- -12428025, 3508452, -175557, -5707475, 13246753, -2922188, -8778913, -2936147, 199716, -1369021,
- -8099235, -5225902, 1104880, 3590056, -2885144, 11010149, 5792837, 2245731, 2384244, 5508296,
- -561030, -3017215, -7714835, -1127966, -174483, -8036958, 2368138, -2513093, 7001871, -439697,
- 425202, -26844, 2628520, -1974074, 4837744, 1078574, -3672197, 1376537, -2849174, 2735894,
- -5749888, 812286, 313533, -4017405, 37581, -911607, -4829154, 4714264, 6925635, -629750,
- -3135326, -4592394, 5048197, 4504347, -1123134, -1372779, -408559, 1095754, 200790, -348429,
- 1505386, 680215, 222801, 3652333, 1758789, -2641942, 54224, 507880, -18254, 517007,
- 2952253, -770947, 180926, -116501, -115427, -68719, 158377, 2052458, 32749, 1033477,
- -146566, 48855, 1204202, -1704565, 1513976, -918586,
- },
- {
- 2020245, -34964792, 58193048, -4935991, 5336497, -4766877, -3154117, 394063, -2794413, 1532767,
- 563714, 13346074, -4528506, 17318382, 6089727, -387621, -4979478, 16233366, -7428683, -16183974,
- -4175782, -3163244, -8408472, 9404368, -1770063, -8878771, 10997801, -4734128, 20869782, -16682190,
- 13026636, 2211908, -4526896, 6142877, 2605435, -10471130, 11293617, -6200859, 234076, 4567698,
- 5151277, -1784022, 4731980, 2051921, 3272228, 3956202, 4241280, 8534100, -9792525, -3812857,
- 411243, -7007239, 138513, 669478, 127238, 4386772, 4151623, -2822867, 294742, -4822175,
- 1392106, -3976066, -654983, -2285996, 4296041, -5722507, 1551020, 1860795, 1903744, 586800,
- -503585, 4830765, -4125853, -1621350, 1762010, 1784559, -2094870, -1288490, -490700, -2520072,
- -2369748, 591095, 257698, -1592896, 798327, -1017370, -1862942, -471910, 19864, 714038,
- 945430, 21475, -2325188, 801011, 1416802, -578747,
- },
- {
- -15714212, -20855824, 19266686, 40329744, -15804406, -3865471, -6774774, 10850161, -39192, 6509023,
- -4828080, -2595771, 3053722, -4053376, 6351720, -3800509, 21959630, -7469485, -9573482, 11648488,
- 674847, -4153770, 1890323, -12010339, 8990440, -1626182, 4231617, 252866, -985695, 3834869,
- 3118683, 3539053, 6397354, -4582193, -2813741, -2764348, 6850473, -1462436, 1073205, 5548561,
- 7444252, -5841693, 1469416, -1392106, 1367410, -194884, 3052648, 10077604, -9124658, 2652142,
- -3158412, 780610, 1541356, -2433636, -164819, -1413044, -3827353, -1233729, -5347235, -1485522,
- -4420595, -5073430, 609349, 510027, -1150514, 590558, -920197, 650688, -2410551, -1411971,
- 2343979, 1217086, -455803, 3083787, 1645509, 331786, -1492501, -622233, -1723893, 1865090,
- -1402844, 2458869, -1422171, -1045288, -3090229, 722091, -9664, 210453, -2374580, 1510218,
- 923955, -2547453, 661425, -248034, 402116, -1320703,
- },
- {
- -72478, 59748900, -25232396, -11822434, -1745904, -2550137, 16608639, 3008625, -3508988, -169651,
- 437013, -12706124, -7094212, 16385300, -5209796, 19147502, 14152454, -12771085, -1224066, -8170102,
- 737661, -5996311, 3256659, 1000727, 10071698, -5398237, 4205847, 2554969, 11495480, -16229071,
- 532576, -7283191, 7310035, -638876, -12994424, 8292508, 3264175, -6455873, -4168803, 1745904,
- 4323959, -3198677, 8834211, -522912, -8458938, 7801271, 2169495, -791348, 3810173, 1518808,
- 2944200, -2281702, -4433480, 424665, 4864588, -461709, -3499862, 3202435, -2450816, 2097555,
- -2553358, -3379066, 268972, -629750, -2706366, -1158031, -258235, 1141388, -3097208, 440234,
- -3320010, 2486249, 980863, 865973, 2059974, -497679, 1773822, 289373, -2306398, -695248,
- -1246614, -2551211, 1185948, 1826972, 942745, 2573759, 2685965, 4145180, 2022393, 777926,
- 1300301, -324807, 1514513, -301185, 179852, -192200,
- },
- {
- -7235946, 53833656, 38021736, 9775882, -7416335, -13034152, 42877732, -10982768, -4117263, -32023276,
- 1089311, 1686848, 3809099, 9793062, 9286793, 1873680, -2406792, -5910949, 10792716, -7117835,
- -1826972, -8815420, -374199, 11274, 6590628, -4632659, -10557566, 1667521, 7547868, -6244346,
- 2419677, 3889093, 1747515, 704375, 4015795, 9046275, -4598836, 9475772, 10170483, 271657,
- 5998459, 2325725, -8594766, 2819646, -471373, 7842611, 2182380, -1285806, 762894, 725313,
- -6620155, -5752035, -6624450, 5197448, -261993, -6027987, -3206193, -1739999, -6792491, -5401458,
- 1289027, -1717450, 1777043, -7980049, -521839, -2167348, -1463510, 1884417, 1929514, -1618666,
- -3988414, -641024, -2070711, -202937, 1676648, -1116155, 1496796, 1557999, -2648921, 3463891,
- -2090575, -4891431, 541166, -2055142, 2345052, -913754, 2758980, 1583232, 279173, -493384,
- -407485, 2506114, -2691334, 427349, -1295470, 1618129,
- },
- {
- -534187, 18891950, -26160108, -572304, 2762201, 8715562, -5819681, 2410551, -270583, -2982855,
- -13526463, 3798899, -5781563, -1806571, 19184546, 6346351, -13139379, 7958575, -3198677, -198642,
- -6257768, 6356552, -5114233, 2299955, -8117488, 219580, 293132, -10699300, 13353053, 7097971,
- 11410117, -3917547, 3118683, -6853157, -249645, 6563784, -4714264, -17099876, 7763154, 3939559,
- 5092221, -1147293, -816581, 5227512, -5960878, 3847217, -4114579, -423054, -1355062, -5994701,
- 7277822, 4198868, 1994476, -3980361, 1551020, 6001143, -3903589, -2451353, -4155918, 3678103,
- -3710852, -2106145, -2137283, 810675, 1716913, -3470871, -5258651, -619012, -1607392, -6666326,
- 360777, 1749125, 1955284, -4181151, -617402, 857383, 881542, 550830, 277025, 322123,
- -1258962, 168577, 1207423, 338229, -1998770, -268435, -85899, -1118839, 1017907, -1108638,
- 684510, 54224, 732292, -1982664, -1277216, 638340,
- },
- {
- -5968931, -136162272, -8779450, 7566122, 11451993, -14922864, 31347892, -3075734, 3410204, -2914135,
- -10872710, 18344342, -3726421, 2207613, -15848429, -24343874, 5982353, -3504693, 8744017, 9014063,
- 16371342, 2150168, 12680354, -5180805, -2467996, -2734284, -4672925, 9096204, -2988760, 7206955,
- -6254546, 8375186, -2269353, 838592, 5904507, -3074123, 7205345, -7186554, -39192, -2544768,
- -5470178, -6466610, 616328, 6609418, 1893544, -1443646, -2295660, 5377299, 1540820, 1981054,
- 6225018, -609349, 5375152, -6509560, -2346663, -1966021, -4508642, -1109712, -5222680, -3798899,
- 5705864, 4316979, 4804995, -1404454, -3197066, 721555, -2802466, 1651415, -3616899, -754841,
- 2726231, -2842732, -1238561, -244276, -3506304, 1538672, -4642323, -60130, -3529390, 154082,
- 1287953, -1505386, 1440962, 145492, 742493, -1521492, 1015760, 473520, 3612068, 560493,
- -215285, 1437203, -778463, 112743, -579284, 113280,
- },
- {
- -227633, 71292160, -9406515, -8950175, 433792, 6003291, -13150653, 259309, -5757941, 4684736,
- -2052458, -5763309, 172336, 14958297, 41667624, 11363410, -22239878, -3892851, 7620346, -348966,
- -13530221, 20627118, -19959786, 17281338, -2240899, -13649406, -3627637, 2344515, 4313758, -1882806,
- -11150809, -7580081, 2922188, -11441793, 2963528, 7716446, -7953743, 1582696, -413391, 127775,
- 1503239, 4466766, 3829500, 8039105, 2189897, -1953136, -6391448, -1505386, 2397129, 2591476,
- 3307662, -3473018, 3604551, 1345399, -4460324, 747861, 1559073, -359167, -1255741, 148713,
- 6002754, -6779069, -410706, 1660005, 1781875, 2384781, -881005, 2088428, -1750736, 1345935,
- 2793339, -2034204, 430034, 2097555, -2837900, 163746, 1365263, 365072, -2141578, -626528,
- 340376, 3049427, -2711198, -2964064, 253940, 2241973, -1642825, -1697049, 2644089, -1793686,
- -853088, 744103, -1010391, -531502, 115427, -973347,
- },
- {
- -6466074, -111536008, -10341208, 10894721, -13147432, -16146930, 34506840, 3171297, -3536369, -3668976,
- -10514617, 2346663, -13188771, 4302484, -17532056, 4998268, 6920803, -4879083, -2439005, 8571144,
- -4878546, -7877507, 5619965, -11811, -4667019, 5556614, 3380676, -1126892, -3980361, -11153493,
- -959388, 3149822, 6935836, 1141388, 7637526, -3215857, -2500208, -3310883, 10669773, 8142721,
- 2593624, -3124589, 1463510, -10227928, -7708393, -644782, -6090801, -6998649, -2511482, -2243584,
- 6105833, 2538863, -6058052, -1321776, -278099, -2136209, -3015067, -188979, 7805566, 5267241,
- -4897874, 4419522, 2556579, 2696166, 3418794, -2094333, 3702262, 5464272, -2752537, -1278290,
- -2844879, 839666, -973884, 232465, 3502009, -814433, -346282, -260919, 2142652, -3581466,
- -1743757, 1410897, -311922, 71941, -1044751, 1644973, 1763084, 416612, 639950, -1511292,
- 985158, 804233, 1464584, -386010, -236223, 28454,
- },
- },
- {
- {
- -250182, -67501320, -3795677, 12597139, -12487617, -4380330, -6108517, 187905, 8588861, 4679367,
- -136365, 4977867, -5176510, -6286222, -14210436, -6744710, -19058380, -11252814, -9173513, 1122597,
- 9018894, -9630927, -644245, -4821638, 15969762, 222801, -3336116, -2173790, -433792, 17851494,
- 2760590, -3085934, -5096516, 7583302, -4633733, 1342177, 2357937, 607738, -2771328, -526670,
- -2131378, -3108483, 4831838, 2831994, 670552, -118648, 1806034, -4778688, -3406446, 522375,
- -4274566, -5395553, 2441689, -4719096, -442382, 981400, 874563, -3429532, 1498944, -2670933,
- -1877975, -1821066, 2790655, -719407, -3440806, 2412161, -479963, 4206921, 4240207, 1448478,
- -1088774, -175020, 2872796, 357019, 669478, -1632088, 3056406, -491237, 1072131, -2440615,
- -267362, 2808909, 411780, 2418067, 1210644, 454193, 2609193, -846109, 498216, 134755,
- 1125818, -453656, 2826625, -206158, 76236, 241592,
- },
- {
- -2980171, 135668352, 5640903, -82402704, 18248242, -24159, 5470715, -357556, 7912941, 5806796,
- 11026255, -11322071, 758599, 5941551, 3129958, -5308580, -3478387, -8595303, 1300838, -9011378,
- 2548526, -667867, 12090333, 9814000, -9022653, 2403571, -4227322, 2147, 8054138, -1234266,
- -5425618, -6599218, 8784282, -4458176, -2585034, -2055679, 1721208, -2209224, 6007049, -763967,
- 1438814, 1802276, -3806952, 2770254, -1949915, -515933, -8890582, -1106491, 1723893, -996969,
- -1028108, 2756295, -689879, -3155190, 259846, -3157875, -1554778, -2655901, 3922916, -3958886,
- -1384053, 2757369, 426812, 973884, 1054415, -744103, -3923990, -145492, 835908, 3031173,
- 462246, 858993, -1845225, -1765768, -802085, -2831457, -2164127, -2390149, -932008, 371515,
- 4344897, -2758980, 881005, -2605972, 1596117, -704912, 2377265, 306016, 1651952, -878321,
- -2316061, 711891, 665720, 161061, 941672, -391379,
- },
- {
- 340376, -7754027, -1139240, -42134704, -19724638, 608275, 8788577, -3143379, 4630512, -9401147,
- 11850352, -12202002, 5746666, -2141041, -8706436, -1352378, 610959, 4338991, -3770981, -5679558,
- -919660, -6963216, -169114, -11243688, 11367168, 1764158, 4532801, -8616778, -4132296, 6102075,
- 1728188, -5637145, 503585, -663572, -4085051, -5248450, -6360847, 9880035, 352724, -659814,
- 6182069, -2187749, 3528316, 1768453, -4147865, 1506997, 2783139, 3053722, 5886790, -2722473,
- 7128572, 3125663, 5999533, 2451353, 9482214, -1388348, -1604707, -4679904, 1620276, -174483,
- -738734, -1363115, -791348, 1934883, 1889249, -2405182, 3898757, 1391033, -629213, 2834679,
- -1611687, 2228014, -993748, 262530, 2216740, -1174137, -638340, 1960116, 1703491, -730144,
- -468688, 784905, 1097364, -2587181, -2361158, 1758252, 848793, -49929, 463320, -178778,
- 2576444, 419296, 156229, 97174, -220654, 312459,
- },
- {
- 777926, -35521528, 30748744, 5361193, -3146601, -3801046, -1184874, 1142461, -7658464, -11431592,
- -3280818, 15389942, -65498, 1228898, 3363496, -6041409, -10226317, 17902498, -17317308, -2809982,
- -514859, -7230578, -10543608, -730681, -2941516, -10973105, 12270722, 4897337, -3151969, -4540854,
- -7932805, 507343, 4355634, -488016, 2172717, 7281580, -9371082, 1681480, -1088237, 195958,
- 6584185, -3241627, 1491964, 245887, 2353105, -4332549, 642635, -2120640, 1976759, 7815767,
- 5971615, -6382322, -845572, 3922379, -3282429, -4364224, -920734, -455803, -2212445, 2092186,
- 3860102, 456340, -3093450, 759136, 433792, -3518115, 1754494, -733903, 1578401, -4684736,
- 1415192, -756451, 1365800, 1561758, -1128503, -2891050, 1609002, 1117765, -555661, 284005,
- -247497, -1331440, 161061, 2072859, -2231236, -1403381, 255014, -166430, -1034013, -268972,
- -862752, 97711, 457951, -3360812, 904091, -1973538,
- },
- {
- 16713328, 43716324, -43960600, -5837398, 3705483, 6150393, 7680476, -2825015, 7969312, 4545149,
- 7790534, -5020817, -5465883, -9856950, -9617506, 3650185, 9417253, -10551124, 18799072, 8731132,
- 1451699, 163209, -1888175, 2631204, 3040837, 3577171, -3171833, -711354, -7248831, -4910222,
- 4874251, -219580, 1156957, -172336, -6496675, -4122095, -2553358, -1241246, -758599, 1777043,
- -1249299, -2242510, 2979634, -872952, 3249143, -363462, -1714766, -805306, 2932926, -2905009,
- 10266046, 2323577, -6347425, -1469953, -2916283, 3717831, -733366, -1051193, -2579665, 1387811,
- -1498944, -230318, 3053185, -4740034, -1029718, -166430, -1610613, -1959579, -668404, -563178,
- 3590593, 2239826, 1699733, 446140, -2784213, -880468, 3586298, 549219, -1663226, -1618129,
- -1802813, -1615445, 3540664, -1094680, 718870, 1058710, -649614, 213138, -41339, 521302,
- -222801, -80531, 1282585, 373125, 1682554, -268972,
- },
- {
- -2490544, 10312753, -18825916, 4035659, 10657424, -2956548, -484258, -741956, -961536, 7450695,
- -4341138, 5794448, -3263102, -2289755, -6315213, 4692789, -5277441, 441845, -5741835, -11854647,
- -19110994, -11012833, -7374996, -10098542, 6401112, 7869991, -2860448, -4984310, -2940979, 25063282,
- -4850629, 3599183, -773094, -4230543, -4511327, 3957276, -4158602, 4982699, 5348308, 2335925,
- -4801774, -1636919, 3765613, -645319, 5684926, 3220689, -2227478, 1365800, -1858647, 5037460,
- -1480153, -1274532, -220117, -1644436, -2649995, -1820529, -2065879, -5369, -1738925, 4683125,
- 5100274, -583042, -2325725, -999117, -3020973, 3207804, 1453846, 2475512, 500364, -1481764,
- -81068, -1200980, 788127, 1083942, 1230508, -390842, -1606855, -3683471, -712965, -810675,
- 4141959, -3235721, -1035624, 913754, -1368484, -3015067, 2593087, 689342, 676457, -1671816,
- -2094870, 215285, 486942, -1291711, -388695, 1973538,
- },
- {
- 18121540, 10298258, -17045652, 1853278, 17655000, 1649268, 3148211, 4039417, 12921409, 2167348,
- -1195612, -18729278, 486942, 8363375, 8105140, -6133214, -5587753, 3635153, -7553237, -2590402,
- -6756521, 3639448, -1510218, -4966056, 10104984, 5945309, 12142946, -6029597, 10456098, 1049046,
- 7326141, -9657234, -5350456, -3202972, -4269735, -169114, -2092723, 781684, 4714801, -2388539,
- 1369558, -373125, 17717, 4915053, 2491618, 2976412, -2056216, -4193499, -208306, 1401770,
- 3408594, -5356898, -2643552, 78383, -1970316, 4546760, -3865471, 3491809, 3045669, 1436667,
- -6301254, -1406602, 2390149, 3230352, 3423089, -1650878, -1248762, 1837709, -1531693, 2822331,
- -1761474, 1924682, 2536715, 241055, 825171, -1216013, 366146, -185757, 1279363, 868120,
- 716186, 442919, 689879, -2294050, 237834, 2507724, -1602023, 1685775, 2335925, 22549,
- -1360431, -220654, 722628, 208843, -147103, -274341,
- },
- {
- -3009698, 46557984, -26159036, 887985, 7141994, -146566, -4876399, 631897, -4224637, -1167694,
- -2958696, 10485626, 12875775, 3911105, 405874, 19530826, -14317810, 5446556, -17818208, -8495445,
- -1021665, -5616744, -3383897, 11939472, -10891500, 4282620, 3080029, -6415608, 9454834, 1640141,
- -2720325, 5601711, 1979443, 2157147, 1106491, -1258425, -675384, -2847563, -4465156, 5250598,
- 3812320, 503585, 3454228, 2974802, 3358128, 1141388, 8628052, 1588064, -4325032, -862215,
- -4341675, -4973036, 2613488, -5567352, 802622, 4115653, 4085588, -527207, -1003949, -1520955,
- -4792110, -340913, -2816425, 1452236, -659814, -2471217, 730681, 3813931, 815507, 442382,
- -1606318, 440771, -1510755, -1834488, 562641, 3941169, -2022393, -83215, -2632815, -2756832,
- -2945274, 309775, -62277, 329102, -989453, 771484, -1606318, -2484102, 875100, 941672,
- 296890, 290984, -1805497, 988379, 839666, -659814,
- },
- {
- 17979806, -3631932, -20299090, 6653978, 11613592, -6372121, -1911797, 1895154, 4730370, -413927,
- 5292474, -8537321, -6589554, 15923054, -4285841, 18507550, -5872294, -328565, -10061498, 5032091,
- 6767258, -11245835, 7266548, -6296959, -1677185, 8401493, -6371584, 5572183, -2028298, 1795296,
- 905701, 3449396, 3736085, -4077535, 568009, -1304060, 7677791, -6205691, 8738648, -1284732,
- 5469641, -3115462, 443992, 548682, 2136746, 973347, -974421, 5143760, -2355790, 413391,
- -438624, 708133, -1381906, -2947421, 1821603, -2169495, -379568, -1794760, -3132642, -7410429,
- -245887, -1651415, -5090073, 278636, -2884608, 4044249, 572841, -1301912, 52076, -1169305,
- -404801, 360777, 2160906, 516470, 3413425, -2488397, 1836635, -1229971, 476205, -863825,
- -138513, 1052804, 81604, -1758789, -2052458, 1256815, -277025, -259846, -98784, -71404,
- 122943, -1256278, -433792, 1295470, -1639067, 430034,
- },
- {
- 460098, -3091840, 30697206, -12254079, -3761855, -6173479, 23046258, -5920076, 3512747, -6580427,
- -2588255, -15245523, 1331977, 8439074, 5552856, 5138929, 21680458, -11566884, 5148592, -11972221,
- -5942088, -3571265, 702764, 10632192, 9057549, -2195802, -1488743, 4050691, 9549323, -6857452,
- -11503533, 1511829, 3645890, 5990406, -11664594, -1582696, 3915400, -9175124, 71941, -3081102,
- 2485176, -2078227, 7960722, -170725, 4896800, -5731634, 5917391, -5598490, 6029597, 772020,
- 4642323, -2771328, -4449049, -2789581, -1210107, 6364605, -2854006, 1969779, -3296924, 3672734,
- -3158949, 1249299, -4628901, 994822, -2987150, 1025960, -2460480, 207769, 833761, -3684008,
- -1256815, 1854889, -2109903, 1482838, 2280091, 1109712, -74088, -1035624, -328028, -1925219,
- -395674, -406948, -2085744, 3627100, 1948841, 3011846, 685584, 4259534, 2109903, 1238024,
- -97711, -453119, 2012729, 1019518, -197032, -148176,
- },
- {
- 8458938, 108714216, -24852828, -3724274, -2849711, 9477919, 325344, -6059662, 8457864, -21102784,
- -13609678, 339302, 1299228, 5728413, 12466679, 7197292, -5170067, -13261785, 6242735, -3236795,
- 565862, -5747740, -2047089, 2317672, 2462627, -1914482, -11682311, 3076270, 6714645, -6299644,
- 1753420, -4204773, 7793755, 823023, 9095130, -6190659, 7446400, 4270808, 9069897, 3822521,
- -558883, 2084670, -7159174, 1990181, 2462090, 5219996, 4687420, -2983392, 164283, -1735167,
- -7438884, -2677912, -4676146, -2162516, 512175, -4268124, -2482491, -2567854, -9096741, -1495186,
- -2302639, 3147674, -1445793, -3595961, -1636383, -5522254, -1984275, 4305705, 934155, -1415192,
- -3249143, -51540, 952409, -617402, -1816234, 819265, 347892, 2057289, -2496987, 3598109,
- -1145146, -3038689, -3904662, 2024003, -1848983, 1912871, 459025, 2363306, -297963, 457414,
- -275415, 1386201, -2872796, 1731409, -143881, -1081258,
- },
- {
- 246424, -31960462, 17033840, -9354976, 10309532, 721555, 2348810, 1913945, 184147, -3782793,
- -14718316, -214748, -5469641, 5116917, 747324, 12255152, 2071248, 9517648, -11411728, -4734665,
- -2418067, 9292699, -3851512, 9862319, -17207786, -2583960, 3548180, -3959960, 13377749, 3750580,
- -236223, 4968741, -4665945, 5841693, 5629629, -2483565, -9204115, -1344325, 3197066, 3948686,
- 10135586, 1697586, -1554241, 4256313, 1053341, -5498632, -2903398, 3932043, -1483374, -94489,
- 6735046, 1512365, 2197950, -6497212, 3005403, 224412, 949188, -6483253, -3636227, 2513093,
- 856309, -5667210, 1712081, -517544, 1902134, 888521, -8264591, -1282585, -2639258, -4595615,
- 652835, 732829, 2885681, -5872294, -1784022, 4110821, -914828, -838056, 3081102, -2127620,
- -1904281, 2594160, 722091, -1715303, -2095407, 180926, 591632, -749472, -51003, -39728,
- 104153, 1166084, -496069, -210990, -2178622, 664646,
- },
- {
- 4432406, -135855184, 2277943, -15048492, -897111, 13881871, 6971269, 6162205, -9173513, 7721815,
- -7606387, 7268696, -10772315, 1850594, -14296872, -18961744, 1851131, -1956358, 6943889, 10205916,
- 14779519, 2304787, 3729642, 10519986, -9376450, 4320737, -9744744, -1430224, 8556649, 6666326,
- -938450, 3666292, -5107790, 186294, 6299644, -1691680, 2919504, -2718178, -5576478, -4106526,
- 1996086, -10615012, 1679869, 6196564, 6499360, -8964670, 392453, -949725, 10556493, -641561,
- 7286412, 4197794, -752693, -4347044, 703838, -7189776, 2042794, -8560944, -6306623, 722628,
- 5477157, 2667175, 1740536, 2093797, -1078037, -2092186, 892816, 1580548, -3936875, -1600412,
- 1060320, -249645, -504659, -743029, -4795331, 3206730, -365609, 1083942, -5063230, 221191,
- -1721208, 370978, 558346, 3406983, -160524, -2721399, 66572, 336081, 1846836, 3675418,
- -94489, 766652, 640487, -485331, -142808, -608812,
- },
- {
- 146566, 42217380, 12011413, -13450227, 690416, 3143379, -9316858, -4155918, 7237557, -3242700,
- 1987496, -4970351, 7639673, -2916820, 62750008, -1945083, -22229140, -2099165, 14192719, 8065949,
- -6609955, 3861176, -6560026, 8523899, -7942469, 1282048, -11996381, 1065689, 8035884, -11586748,
- -5788542, -6195491, 587337, -5350456, 9777493, -3502546, -5420249, 1411434, 4495757, 664646,
- -387621, 4089346, 5435281, 7310035, -3046206, -326954, -4006131, -3906273, 858457, 1340030,
- 4664872, -3396782, 2426657, -289373, -4919885, 5513128, 356482, 99858, -899259, 4822175,
- 4451197, -5713380, -5261872, 3145527, 1122597, 4143570, -943819, 345208, -787053, -1130650,
- 3910031, 718870, -2605972, 1069984, -610959, -466541, -862215, 911070, -2153926, 473520,
- 2863133, 215285, -2127083, -2080912, -1125818, 840203, 2076617, -1737314, 116501, -123480,
- -2260227, 1782948, -670552, -1290101, 1706713, -4850629,
- },
- {
- 5861557, -100537128, -25125558, 6523519, -9728638, 233539, 7281044, 10153840, -10461467, 2530810,
- -2419140, -10838887, -6321118, -16750372, 5013838, 3832185, 512175, 2282775, 5189931, -4552129,
- 9568650, -15080704, 13542569, -2347737, 1695438, 4303557, 318364, -4356708, 1829656, -5141613,
- -5275831, -7057168, 2738042, 5265630, 12328167, -5766531, -5499706, 3688840, 13159243, 5387500,
- -876710, 1926293, -4949413, -5126044, -3664144, -8353175, -5284421, 1825361, -4452271, 2485712,
- 2713346, 2298344, -5875516, -3206730, -221728, -3595961, 322123, 2455648, 3604015, 2006287,
- -855772, 2925410, 2215130, 3442416, 1209033, 2707977, 4263829, 5122286, -4890357, -308701,
- -2508261, 1472100, 1088774, 2365990, 1006633, -2788508, -39192, 1161252, -27917, -2272575,
- -2202781, 3847754, -518617, -1896765, 595927, -543850, 2301029, 1191317, -463320, -375273,
- 411780, -464930, 1861332, 1268089, 292058, 1044214,
- },
- },
- {
- {
- 1491964, -18676128, 36704252, 29393146, -9873056, 1316408, -2943663, 3233574, 4790499, 2987687,
- 535797, 5202279, 2661269, 1363652, -3665755, 2066416, -17051558, -18131204, -17817134, -2552284,
- 7652021, -10399726, 7127498, -2728915, 700080, -5799817, 6488622, 3007551, 1219771, 10312753,
- 1226213, 2455111, -2743947, 7193534, -6591164, -632434, 7645042, 2479807, -1442572, 7286412,
- 941135, -412317, 480499, -719407, 5918465, -1931125, 3999152, 5275831, -3773666, -5027259,
- -6244346, -2566243, 2449742, -371515, 2585034, -5432060, -2637110, -1279900, 3095598, 448824,
- -1646583, -1731409, 5063767, -2140504, -1596117, 4497368, -1239098, 1580548, 564251, 798327,
- -837519, -1828046, 2011655, 1591822, 1377611, -2226941, 1193464, -879395, 2870112, 32749,
- 1111323, 4062502, -249108, 926639, -767725, -69793, 2603824, -1674500, 97174, 1496796,
- 877247, -2658048, 155693, -2031520, -73014, 1079111,
- },
- {
- 7046968, 123163552, -6510634, -61540440, 48434348, 6185290, -3529390, -18343806, 1424319, 1733556,
- 9675488, -14350023, -710280, 1664300, -5658083, -6752763, -4634807, -9863929, 878858, -9125732,
- 9745281, 1408749, 10057203, 2464238, -12860206, 11589432, -169114, -6116571, 3570729, -4508642,
- -5148592, -8061654, 9274445, 762894, 3729105, 4479651, 4910758, -8116415, -3681324, -4740570,
- 124017, 2658585, -4133906, 103616, 426812, 2369748, -2387465, 4253628, 896038, -2156611,
- -4345970, -2338073, -1349157, -113817, 577136, -6084358, 1047435, -660351, 981937, -2218351,
- 1253594, 1288490, 305480, -276489, -2099165, 324270, -568009, 875636, -142271, 1731409,
- -695248, -459025, -734976, -1766842, -331249, -236223, 981400, -208306, 2844342, 936840,
- 1242856, -2512556, 1414655, -1395328, 161598, -3856881, 2625299, 526670, 700080, -108448,
- -1196685, 617938, -514859, -1059246, 832687, 215822,
- },
- {
- 154619, -87307024, -45352708, 15333033, 9133248, -1919314, 6678674, -8064338, -2337536, -8297340,
- 6040872, -19589346, 14758044, 7862475, 435939, 3696356, 734439, -1495186, -6776385, 2653216,
- 6994891, -5046050, -4358318, -4888747, 6048388, -11756936, 1458678, -7977902, -4935991, 8153459,
- 15423764, 1290101, -7617125, -6835441, 5181878, 4479114, 1436130, 13334800, -5339718, -2507724,
- 7296613, -2518998, 246424, -4429185, -274341, 4057134, -5334350, -1896228, 6300180, -3513283,
- 1134945, -340376, 5630166, -2792266, 6940131, -220117, 1493575, -3576634, -1737314, -537408,
- -287226, -395137, 170725, 198105, -2106682, -3968013, 1212791, -2295123, -511101, 2237678,
- -3854733, 2092723, -373662, -2068564, 1499481, -2385854, -1773285, -804770, -1354525, -246961,
- -195958, 440771, 861141, -2038499, -624918, 1423782, -814433, -1883880, -1157494, -494995,
- 1803349, -1564442, -1216013, -257161, -60130, 338766,
- },
- {
- 347355, -57187488, 13820131, 14095009, -1765232, -2600066, 1613297, 3613678, -219043, -3760244,
- -5322002, 13774497, -1322850, 2094870, 9611600, -4009889, -16820702, 10378788, -10479183, -81604,
- 3252901, 3566970, -5006858, 4408247, 1479079, -17606144, 4230543, 9767293, -541703, -3444564,
- -1757715, -3178276, 2982318, -3000035, -574452, 5932424, -2826625, 8872866, 5158793, -5014375,
- 1654636, -5126581, -1316944, 122943, 3282966, 943282, -245887, -274341, 4123706, -3897683,
- 1075352, -1145146, -1314260, -2674691, -3543348, 1840394, 625992, -689879, 315143, -372588,
- 1763084, 740882, -3682398, 1552094, 781684, -4319664, 3109556, 1494649, 4341675, -2329483,
- 1738388, -928787, 1525250, 843424, -260382, -286152, -500901, -1329292, -1511829, 628139,
- 1075889, -1140851, -178241, 2183991, -1846836, -1418413, 926102, 328028, -2269890, -236223,
- -266288, 542240, 551903, -1146219, 2670396, -2057826,
- },
- {
- -17361868, 39228084, -6689412, -13740137, -9432285, 1842004, 4345433, -14331769, -5480379, -1245541,
- 15718507, -3332895, -4109747, -5662915, -5581310, 12409234, 9919764, -15535970, 21871584, 21284784,
- 5512054, 295816, -8150774, -10011032, -754841, 3554086, -5031554, 5417028, 383863, -750546,
- 6098854, -8133058, -737661, -748398, -5106716, 535797, 3979287, 5158256, 5311801, 2412698,
- 3499325, 1684164, 5068599, -3627637, -2585570, -242666, 954020, 213675, 169651, -3514357,
- 7231115, 2778844, -2260764, 1312113, 617402, 817118, -3440269, 1574642, 593779, 1914482,
- -3826816, -2567317, 3615289, -1338956, 2246268, 228170, -4449586, -1456531, -1624035, -1819456,
- 1423782, -796716, -2204392, 1083406, -1684164, -1341104, 3308199, -481036, 768262, 2152316,
- -67646, -2126009, 2516314, 239444, 1273995, 1683627, 1283122, 933619, -975494, 801548,
- 678068, -899796, -1837172, -652298, 1549946, 327491,
- },
- {
- 86436, 25100326, -22784802, -1868848, 830539, -2128156, 540092, -2775623, 2080375, 10383083,
- -2051921, 10022306, -5344013, -10926397, -6286759, -3835406, -20546586, -5403606, -4914517, -611496,
- -3182034, 1734093, -328028, -3404299, 4837207, 9004936, 2584497, -3790846, -10381473, 12691628,
- -12010876, 2712809, -663572, -5193689, -4733591, -997506, -8504572, 1646046, -3636227, -3911642,
- -7029251, -1902134, 2760590, -3615289, 1155346, -756451, -1564442, 584116, -372588, 552440,
- -6213207, -869194, 2220498, -1953673, -169651, -415538, -1917166, 2622615, -801548, 4666482,
- 8949638, 2430952, -429497, 944893, -1744831, 181462, -1923072, 82141, 1988033, 30065,
- -212064, -823560, 1255741, -1142998, -955630, -470836, -1909650, -1729798, 2161979, -954557,
- 3380676, -1208496, -831076, 817654, 740345, -2727841, 2463701, -661962, 80531, -1622424,
- -2581275, 666794, 1922535, 298500, -1739999, 401579,
- },
- {
- -16973710, 2239289, 29914448, -6963216, -1026497, -1449015, 3839164, 2210835, 2991445, -2623151,
- 10428181, -17418240, 5218922, 19906100, 6785512, -579284, -3744675, -2700998, -4263292, 7359427,
- -3714610, 2972654, 9696962, 2496987, 6316823, 221728, 12021613, -4713190, 7014219, -3852049,
- 6486475, -11529303, -2370285, -3129958, -3722126, 5601174, -2450816, -4503273, 1472100, -2250563,
- 6620692, 2244121, 208843, 8244190, -376347, 2015950, 934692, -1642288, 6211597, 5819681,
- 4199405, -3950296, 318364, 858993, -3167002, 8460012, 1583232, 1570347, -434329, 989453,
- -2649458, 1079647, 526134, 1013075, 3646964, 1750736, 541703, 478352, 1156957, 5659693,
- -1159641, 1137630, -909996, -3184718, 2065879, 964757, 548145, -1678259, -947040, -1246077,
- -365072, 844498, 2216203, -1567663, 289910, 3738769, -2706366, 288837, 1009854, -882616,
- -1110249, 670015, 764504, -857920, -430570, 1054415,
- },
- {
- -1599875, 27468464, -57295936, -3105798, -1785096, 2209224, -2059437, 1351304, -6548215, -2092723,
- -5440650, 18254, 12105902, 7933879, -6386080, 9421011, -12880607, 298500, -15963857, -1691680,
- -2042257, -6853694, -6128382, 7440494, -20411296, 1598802, 1633161, -19519552, -6681359, 2863133,
- -1400696, 6693707, 307090, -620623, -3856344, 35433, -2029372, -4946192, -12271258, -42950,
- -2558190, -5108864, -3481071, 1859721, 2375654, -2271501, 9003325, 1510755, 2687039, 3996467,
- -4363150, -7949985, 4517232, -1895691, -2391760, -1532767, 240518, -1707786, -540092, -759672,
- -5930813, 3144453, 1021665, 4224637, 88584, 694711, 564788, -341450, -2184528, 1581085,
- -1133871, -621697, 723165, -404264, 485331, 2552821, -2427194, 1538135, -1759863, -1171989,
- -2837900, -969589, 538482, 1352915, 55298, 317828, -1365263, -1682017, -9664, -192200,
- -821413, -139586, -1117765, -670552, -92879, 665183,
- },
- {
- -17696340, -9414568, 29146184, -9927817, -5399311, -729071, 506806, -4991289, -3734474, -2928631,
- 23135378, 4598300, -6738267, 21595632, -4799626, 10079751, -29015188, -10679973, -13778255, -4196720,
- 3795141, -10038949, 7493644, -5886253, -3778498, 7687455, -10383620, 4781373, -9219147, -5049271,
- -4363150, -5069135, -3493419, -2285460, 7716446, 2747705, 5741835, -10153840, 4148402, -8487929,
- -3600793, -5009543, -1152125, 1107565, 737661, 1559073, 2783676, 3349538, -608812, 2268280,
- -1094143, 267362, -13422, -3894462, 1678259, -751619, 683974, 8590, 1330903, -4076461,
- 1516124, 390842, -2479270, 1793686, -3240553, 3490198, -392453, -1914482, 1909113, 1145683,
- 2275259, -572304, -1864553, -1824287, 2358474, -1226750, 4177930, -426812, 428960, 481036,
- 2158221, 1227824, -887448, -1618129, 848256, 2510945, 537945, 212601, 489626, -1404454,
- -366146, 140660, -551366, 1155346, -694174, 1446330,
- },
- {
- 1199907, -50862076, 87510, -4743255, 5991480, 1687922, 20157356, -19562502, -4025458, -7473780,
- 1748052, -7846369, -693100, 4052839, 4384088, -11396696, 10518375, -7233262, 9710921, -517007,
- -1734630, -59056, -2803003, 9533217, 10640781, -600759, 6521908, 3651796, 7910793, 3587908,
- -3082713, 12978854, 3657165, 4946729, -4747013, -1809792, 4736275, -6234145, -6687264, -9649181,
- 5475010, -3969087, 5222144, 417149, 8446590, -3666828, 4173635, -5491116, 2969433, -9423158,
- -1642288, 718870, 527207, -2135136, -3570192, 8264054, 823560, 5646809, 572304, 1923072,
- -4213900, 2120640, -4847945, -531502, -142808, 2731599, -2892124, 790811, 748398, -5294084,
- -2701535, -1232656, -3442953, -2173254, -1862942, 1196148, -32749, 772557, 1654636, -2589865,
- -3090766, -3280818, -3910031, 2435247, 614180, 1235877, -2165201, 894964, 774168, 1042603,
- -625992, -217970, 1360968, 2222646, 533113, -1700807,
- },
- {
- -8230231, 98618888, -22869628, -9950365, 4640176, 3750043, -24662240, 14396194, 43526272, 2427194,
- -16957068, -6039261, 3853660, 9861782, 8126615, -7261179, -7642358, -13660680, 162672, -4092567,
- 5251672, 7516, -2880849, 2218351, -4333085, -5040681, -3151969, 6330782, -3037079, -15312632,
- -1293322, -4503810, 7842074, 3279208, 9110163, -7973070, 922344, -10203769, 190589, -5123359,
- -1998234, 3313031, -7515656, 4531191, 2319282, -22549, -7595113, -8646306, 4067334, -762894,
- -4924180, -368830, 1231582, -147103, 2172717, -1950452, -47782, -537, -6927246, 3914326,
- 97174, 5747740, 2618320, -579821, -166967, -1058710, -309775, -1199370, -2704756, 183610,
- -1726577, 1912871, 2932926, -1349694, -2351495, 817118, 861678, 2727304, -2632815, 2509872,
- -865436, -158377, -2953327, 2423435, -3439195, -69256, -1670742, 768799, -1696512, 574989,
- -1748589, -618475, -1780264, 2649995, 667331, -1262184,
- },
- {
- 842887, -49976240, 10519986, -6592775, 4133906, -10797011, -2085207, 3994320, 2394981, 779537,
- 4494684, 11133092, -763430, 5167383, -8029442, 3752191, -1330366, 7735236, -10020696, -1158031,
- -6460705, 8775692, 86436, 9659918, -2740189, 5810017, 5886253, 2900714, 14697378, -1770063,
- 2256469, 15438797, 1227287, 8741869, 6131066, -4983773, -4429185, 12918188, 8396661, 5488968,
- 9889699, 1830730, 5870147, 6160594, 1471026, -5471252, 715112, 12042551, 1743757, 330712,
- 6059125, -1641214, 1142998, -5093295, 702764, -4285304, 2195802, -3225521, -3208878, 97711,
- 3144453, -3578245, 4721780, 4323422, 3651259, 1106491, -5202816, -1051730, 1209033, 660888,
- 1294933, 687195, 3138011, -3758633, -2750927, 937377, -501974, 1718524, 4360466, -4074850,
- -3259880, 1723893, 729071, -697395, -418222, 1246077, 2041720, 1413044, 62814, -544387,
- 1956358, 1965484, -647466, 2666638, -513249, -1032940,
- },
- {
- -1165010, -112155016, 33030982, -9839770, -11219528, -12171400, -25487410, 6572374, -3971234, 7328825,
- -21989696, -7976291, -7566659, 9141838, -12498892, -9833864, 3350075, -5859409, 2824478, -10358924,
- 2362232, 1387274, -5971079, 7807714, -10907606, 1128503, -12913893, -7250442, -856309, -278636,
- 5148592, -411780, -11065983, -6107444, 4399657, 3041911, 1700807, -833224, -2764348, 2889439,
- 8248485, -8063264, 1232656, -1432909, 3735548, -2889976, 2608119, -5632313, 6187438, 2388539,
- 5657546, 1749662, -2245731, -6513855, 2889439, -4135517, 5249524, -2490544, -1870995, 2466922,
- 3075734, -1603633, 684510, 2856153, -2659659, -2584497, 4291209, 3992172, 2180770, 4769025,
- 4824859, 3676492, -32749, 1409823, -3147674, 5198521, 2747169, 1996623, -1933272, 983548,
- -4059818, -1052804, -1108102, 3685082, 141734, -2780991, -729071, 7516, -704375, 1136019,
- -997506, 1047972, 3149822, 2612414, 1207423, -528818,
- },
- {
- 1995549, -2473901, -15988553, -2964064, -1989107, -5354751, -11427297, 2150168, 12284680, -2347737,
- 2205466, -6658810, 8301098, -19876572, 27824946, -5887864, 882616, 3973919, 6648610, -2253784,
- -12695923, 2124935, 234076, 1423245, -17007534, 8237211, 912144, 4025458, 6711424, -24062018,
- -13069049, 4420595, 12938589, 569083, 8005282, -2531883, 1192927, 2236067, 2628520, -4047470,
- -6816113, 1347546, -2828773, -879931, -5487895, 617402, 684510, -1909650, -3769908, -3910031,
- 6426882, 3310883, 1928440, -723165, -1294396, 2928631, -3431679, 1421634, -757525, 4911832,
- 1061394, -5877663, -3020436, 4522601, -931471, 1076426, -2099165, 442919, 358630, -635118,
- 2479270, 623844, -2603287, 125091, 661425, 25770, -2058900, 202400, -288300, 3600793,
- 4190814, 1125281, 237297, -1163399, -167504, -958315, 62277, -1207960, -1216013, -740882,
- -1633698, -95026, -928250, 29528, 2051921, -3785477,
- },
- {
- -4597226, -69978976, 9011915, 2106682, 8771934, 3074660, -18961206, 3197066, -8560944, -110059,
- -5174899, -16549046, -2557653, 5415954, 20176146, 3672734, 938450, -8302709, 796180, -1772211,
- 17754858, -674310, 29025926, 9657771, -717796, -6841883, -1333587, -1608465, 3423626, -9873056,
- -19986630, -14497662, 4669703, 9357123, 3453691, -8007430, 3104188, 9102109, 10630044, 1604170,
- 635118, 5917928, -5215164, 2622615, -563714, -8738111, 2667175, 11670500, 2364916, 852014,
- -7216082, -243739, -3503083, -861678, 617938, -4287451, -973884, 1980517, 2028298, -237834,
- -2189897, 324807, -3961034, 368830, 184684, 1372242, 3861713, 6908455, -996432, 1243393,
- -855772, 2411087, 1722819, -99858, -1900523, -4457103, -1890859, 1937030, -596464, -4333622,
- -2332704, 4686346, -380105, -526134, 1356136, -236760, 2784750, -303869, -2164664, 1319629,
- 3024731, 1127429, 1503775, 853625, 769873, 435402,
- },
- },
- {
- {
- -613643, 36815924, -3166465, 26130582, 1042603, 261456, -3163780, -1853815, 6582575, -3826816,
- 11183558, -5231270, 11105712, 3612068, -10149008, -7576859, -8721468, -16154446, -13252122, -8447664,
- 8974334, 1586990, -6286222, 9768903, -544924, -599148, -290447, -255551, 4698694, 59593,
- 9073118, -2385854, 5115306, -1104344, -2677375, -1790465, 1483911, 6851010, -1228898, 5908802,
- -358630, 2282775, -2297271, 268435, 6847252, -1949378, 950798, 6250788, -1758252, -7713225,
- -4270271, -45097, -267899, 1993402, 2316061, -4048007, -5944235, -1310502, 1885491, 1205812,
- -434865, -527207, 4746476, -2998961, -922881, 3244311, 376347, 1125281, -840203, -175557,
- 2336999, -2964064, 415001, 4000225, -1225139, -1028108, 269509, -1289564, 2083596, 2212445,
- -1715839, 4165582, -215285, 1796907, -688805, 550830, 556735, -649077, -165356, 1373853,
- -60130, -421981, -1777043, -1524713, -95026, 250719,
- },
- {
- -10476499, 80577880, 47158740, -20006494, -585726, 6326487, 1600412, -21602074, -5179194, -5659693,
- 3896609, 7415798, -2194728, -4186519, -11861089, 1369558, -1484448, -6389301, -581968, -1999844,
- 1673964, -814970, 5296232, -741419, -2867428, 2164664, 5714991, -11435350, -1203128, 505196,
- -5379984, -1555852, 611496, 4826470, -488553, 10349261, 6576132, -4823249, -9807558, -2216740,
- 2208687, -454730, 2563022, -4895189, 1998770, -31139, -933619, 4631586, 3311957, -3820910,
- -1173600, -5422933, -3518115, -694711, 2153926, -3205119, -1739462, 1982664, -5433671, -249108,
- 3898220, 931471, 442382, -871878, -3273839, 1315871, -186831, 32212, 1030792, -1664300,
- 425202, -1340567, -350040, -1633161, 454730, -118648, 1854352, 1420560, 586800, 645856,
- -452045, -412317, 325344, -900333, -439160, -1693828, 558883, 1351841, -391916, 85362,
- -769336, -535797, -170725, -560493, 1294933, -478352,
- },
- {
- -712965, -120520000, -10108206, 38346540, -9646497, 5294084, 3923453, 1585917, -15287399, 6014028,
- -2684, -16136729, 9241159, 2895345, 5698348, 3439195, 228707, 717796, -5283884, 7286949,
- 4279398, 1088237, -10159745, -289373, -2388002, -7504919, -5299453, -1971390, 1159104, 2782602,
- 10438918, 3593814, -2865280, -7926362, 6383932, 5328981, 5107790, 4837207, -3940633, -111132,
- 4339528, -1998770, -1661079, -646393, 2127083, 4079145, -8009041, -2835752, -423591, 3069291,
- 1083406, 22012, 744640, -269509, 1119913, 1432909, -185220, 925565, -6094559, 844498,
- -296353, 1895154, 338229, -966368, -2326262, -1526861, -1146219, -2551211, -523449, 1124745,
- -1083406, -1654636, 1701881, -1095217, -779537, -966368, 233539, -1319092, -1117765, -508954,
- -828392, 1305133, -961536, -502511, 628676, -10201, 56371, -2097018, -2300492, 662499,
- 37581, -579284, -1436130, -412854, 170725, 99321,
- },
- {
- -383863, -31075162, -11862700, 15848966, -178241, -873489, 1729261, 100932, 3539590, 406411,
- 1714229, 8114267, -1935420, 3914863, 1788854, 3078418, -8385924, -4155918, 686121, -2626909,
- 5093831, -7270306, 4912369, -5366025, 2940442, -4512937, -8791798, 4067334, 6796249, -9891310,
- 9993852, -5792837, -565862, 352724, 1563905, -872952, 8514773, 2689723, 6063957, -1699733,
- -6174553, 2809982, -5721434, 1992328, -51003, 3734474, -1802276, -1175747, 219580, -3183108,
- 1609002, -875636, -1822677, -3374771, 556735, 1263257, 2561411, -3002719, 896038, 170188,
- -1050120, 3218004, -3203509, 301185, 2157684, -2608119, 536871, 1782411, 2382633, 3103651,
- 996969, 273804, -227633, 1581622, 538482, -77846, -881005, -3050501, 292595, 1818919,
- 542240, -143881, -1190780, 1014686, -978179, -1775432, 1047435, 255551, -2393908, -452582,
- -162672, 247497, 181999, -583579, 2115272, -915902,
- },
- {
- 14889578, -5733782, -14585172, -8705362, 1857037, -2003065, 2750927, -8210367, -11897059, -5369,
- 3495030, -1020055, -2301566, 1602560, -4055523, 855772, 13792214, -213138, 11512123, 15102179,
- 5754720, -2136746, -4999342, -3664681, -5516349, -687195, -4857608, 13415867, -3160559, -4359929,
- 5908802, -7405061, -4226248, -1828046, 2633889, -1722819, 9645960, 3857418, 2179159, 9105331,
- 413927, 2435247, 1619203, -1735704, -4604205, 780073, 153008, -699006, -888521, 5692443,
- -57445, -1276679, 2651069, -666257, 3127273, -1225676, -25233, 1938104, 1403381, -2542084,
- -1793149, -1394254, -2057289, 1636383, 2142652, 22549, -3946538, -792421, -527207, -346282,
- -684510, 169114, -1092532, -1744831, 775778, -2489471, 2550137, -170188, 958315, 2596308,
- -1000191, 469762, 312459, 2015950, -1058710, 3069291, 509491, 1698123, 244276, -302258,
- -230854, -464930, -2371359, -111669, 1167694, -209380,
- },
- {
- 1709397, 4190814, 2083059, -7452842, -3280281, 1612223, -113280, -2529199, 3621731, 5192616,
- 3687766, 3260417, -4854924, -6471442, -11841225, -2034741, -9099962, -11790222, -5647345, -3272765,
- 2474438, -2459943, 1909113, 2443300, -151398, 2600603, 4628364, -414464, -3478387, -11384348,
- -389231, -3528853, 4420058, -5244692, -3338800, 321586, -5153961, 125628, -3779034, -1774358,
- -5223754, -1952600, 2230699, -4511863, -258235, -4004520, 6283001, -3680787, 163209, -1643362,
- -5269925, 906775, 2824478, -48318, -1819992, 995359, -2578591, 2222646, 1989644, 2393371,
- 7635915, 2414309, 57982, 1793686, -163746, -2368675, 201327, 856309, 1095217, 292595,
- -1336272, 187368, 904091, -2187212, -268972, -835908, -1821066, -5906, 1651415, 586800,
- 755914, -177704, -253940, 301185, 855772, 125628, 392453, -1207423, -1308891, -195958,
- -873489, -1114007, 1649804, 974958, -1794760, -992674,
- },
- {
- 11879880, -30870078, 10532334, -3180960, 10595147, -2262911, 2375654, 14337138, -11087995, -8383240,
- 5746130, 724239, 4220879, 22721988, -1854352, 5552856, -3452080, -10596221, 11539503, -3669513,
- -1180042, -1384053, 13612362, 4082903, -1781338, 2718178, 4960151, 6833293, -521302, -5021891,
- 3884798, -12327093, -5029407, 4642860, -331786, 5249524, -5977521, 438624, -4370129, 473520,
- 5743982, 5370857, 3010772, 6598681, -1481764, -2845416, 3415573, 997506, 4702453, 5153961,
- 3762928, -3219078, 1312113, 1560684, -2407866, 3164854, 5080947, -1826972, 1254667, -1905892,
- -330712, 1341640, 2602213, 17717, 2595234, 214748, 302795, 2496450, 1478006, 3024194,
- 3091840, -1587527, -1883343, -2206540, 2632815, -88584, 647466, -249645, -1316408, -2090039,
- 1375463, 1149441, -494458, -403190, 1181653, 1408749, -352724, -542240, -60666, -426276,
- -397284, 1358820, -583042, 420907, -563178, -469225,
- },
- {
- 3427384, -34581468, -3792993, -8096014, -1740536, 679679, 970126, -2837363, -5401995, -2796561,
- 1319629, -2659659, 306016, 3353833, 16894254, -5359046, 4017405, -3123515, -7813620, -7801271,
- -13562433, 1952063, -5609764, 678605, -14239964, -2928631, -6134287, -7613367, -5408975, 2008971,
- 318901, -650688, -1374390, 3365107, -1256815, -2963528, -1346472, -6062883, -10576357, 4483409,
- -2602213, -8200167, -4102231, 2902861, -2478733, 809601, 6104223, 924492, 5648956, 609349,
- -2174864, -4154844, 2059974, -1878511, 61740, -1717450, -2987687, 102005, -1520418, -635655,
- -1866163, 1612760, 3111167, 1407676, 707059, 3674882, -1217623, -1687922, -999654, 1359894,
- 480499, -2442226, 2169495, -524523, 165893, 1619203, -1574642, 653909, -1883343, 605590,
- -524523, -916439, 205085, -488016, 1999307, -580357, -1934346, -1170379, -261456, -746787,
- -135291, -96637, -597537, -463320, -237297, 753230,
- },
- {
- 14281303, -37787124, 5213554, -9515500, 1416266, 4347581, -923418, -5987185, -7265474, 1694902,
- 20833276, 6147709, 2615098, 7453916, 7511898, -2485712, -31403728, -6359773, -9666898, -5747203,
- -375273, -433255, -791348, -1555852, -10737, -537945, -1506997, 3614752, -5858873, -5264020,
- -16071768, 841277, -3842385, -1537061, 4698694, 6465000, -1502165, -9118216, 2512556, -2174864,
- -11098732, 1145683, -1595044, -610959, 2364380, 1746441, 2889439, 1203665, -600222, 722091,
- 1119376, 108448, 118112, -2442226, 3064459, -3250753, 1207423, -2445984, 3185792, -1407676,
- 1595044, -398895, -758062, 545461, 837519, -2163053, -3077344, 590021, 1452773, -348966,
- 2692408, 667331, -2102387, 592169, -248571, 92879, 1799591, 1053878, -842887, 2804614,
- -482110, 765041, -128312, -1101659, 2192581, 16106, 1094143, -147640, 637266, -823560,
- -156766, -725313, -1687922, 1581085, 995359, 140660,
- },
- {
- -2255395, -47641924, 143881, -9702868, 5213554, 472983, 10463077, -12395812, -3393024, 1959579,
- -1027571, -5178120, -5519033, 7692824, -2855080, -7905424, 3812320, 1034550, -14310831, 21731998,
- -1851131, 1706176, 295816, 4299799, 9603547, -184684, -1067836, 7422241, 4865124, 5595806,
- 2204929, 10085657, 3891777, -1283122, 4752918, -177167, -2527588, -3204046, -3546569, -3320547,
- 307090, -48318, 4209605, 4639102, -2604361, 3144453, 3450469, -248571, -82678, -10347113,
- -379031, -547071, -1937030, 4308389, -466541, 2506650, 4643397, 698469, 4501663, -721555,
- -1014686, -3047279, 627602, -1808718, 2654290, -930934, -3795677, 881005, -1646583, -1345935,
- -205622, -2680597, -2241973, -1547262, -4150012, 2206540, 529892, -1344862, 2637110, -1415729,
- -4364761, -748935, -4287988, 16106, -45634, 333397, -1802813, 985158, 493384, 1215476,
- -1103807, 1410897, 693100, 843424, 1087701, -780073,
- },
- {
- 7353521, 73327976, -15923054, -6364605, -3312494, 14105746, -6270116, 26261040, 11976516, 9931575,
- -9387188, 165356, 14478872, -5718749, -1850057, 2091112, -6568079, -10070088, -5341329, -3004330,
- 4345970, 4718022, 4814122, -5195300, -6394133, -6133214, -4982162, 13386876, -9256728, -12735115,
- 470299, 5364414, -1238561, 578747, 15314243, -2004139, -10174241, -7865696, -773631, -9910637,
- 417149, 2773475, -3365644, 4073777, -696322, -273804, -10840497, -2827162, 2473364, -4055523,
- 667867, 254477, 2094870, 1258425, 2393908, -1894081, -2734821, -1835025, 1312649, 279710,
- -886374, 5558762, 3174518, -474594, -342524, 1331977, -576063, -4420058, -1697049, 1217086,
- -1175210, 2860448, -1269163, -585189, -1370095, 585726, 1449015, 1212255, -1653026, 1254667,
- 1011465, -664109, -1380295, -1127429, -847719, -1435593, -1240172, -156766, -38118, -384400,
- -2213519, -979253, -128849, 656056, 1456531, -1278290,
- },
- {
- -831076, -33628520, 552440, -2196876, -6592775, -5637145, 1402844, -4469987, 7467338, -893353,
- 12206297, 6681359, 9995463, -8434779, -4807679, 1253057, -755377, -2523293, -7074348, 7408282,
- 3968013, 1961190, 2992519, -490163, 8054138, 3774203, 8070781, 3741454, 7821136, -7998303,
- 12387223, 9532680, 4418448, 5429376, 4304094, -6451578, 4566087, 11294153, 4150012, 5701032,
- 2274185, 3008088, 6332393, 2933463, 3592203, -3038689, -52613, 8768713, 4503273, -4388920,
- 5913633, 4496831, -2602750, -2547453, -2758980, -2207076, 687732, -475131, -4201552, -918049,
- 5214627, -2871723, 4418448, 3639985, 3876745, -1743757, 1029182, -4278325, 3179887, -200253,
- 91268, 2123861, 274341, -542777, -3621731, -2365453, 3324305, 825707, 5256503, -5871221,
- -1248762, 2734821, -920734, -1008244, -131533, 47245, 2063732, 1958505, -675921, 158377,
- 2407866, 841814, 549756, 1474784, 630286, -1177358,
- },
- {
- -3102577, -58657444, -10574746, 6419903, -29387776, -16092706, -21650394, -3292629, 7141457, -7546258,
- -16212965, -6570226, -12634183, 18170932, 6190659, -20126216, -2542084, 905701, -5151814, -2328946,
- -1704028, 4316979, -2148021, -8994735, -1273458, -1896765, -9084930, -7338489, -2135673, -8129300,
- 4748623, 3064459, -5620502, -5187784, -2455111, 4271345, 9027484, -8322036, -4534412, 11265162,
- -273804, -2754148, 1344325, -131533, -2352032, 4675609, 81604, 934692, -2952253, 875636,
- 3235721, 898185, -304406, -2361158, -303332, 1980517, 1000191, -2879776, 5780489, 89121,
- -926102, 897111, 542240, 970663, -1959579, -1892470, 2807298, 5773510, 1934883, 2957622,
- 6764037, 264141, 894427, 1445793, 805843, 2283312, 2907693, 2229625, -2130304, -164283,
- -2124398, -1403917, -3026341, 2294050, -452045, 122407, -1915555, 1154809, -725313, -1280974,
- 770947, 823560, 850940, 2683281, 811749, 478352,
- },
- {
- -3861713, -16824998, 1639604, 1313186, -5338645, -10195715, -5106179, 740882, 5871221, 4092567,
- -197569, -4266513, 3325379, 15537044, -42763916, 16716013, 5130339, -736050, -2803003, -3930432,
- -12800076, 6213744, -8296803, -307627, 95026, 1701344, 4119411, 498753, -5823976, -11056320,
- -5542119, -9127, 15057618, -2508798, 6058052, -2072859, 4069482, -389231, -4995584, 3969087,
- -8528194, -1023276, -3259880, 336618, -6449967, 466004, -1317481, 1153199, -6427419, 5481452,
- -2916283, 7073811, -410169, -858993, 2677912, 204548, -3462281, 1831267, 1779190, 1482838,
- -2305861, -2076080, -3428995, 3375844, 1359357, -1585917, -1482838, 97711, 1823751, -695785,
- 2249489, 2391760, -3496640, -250719, -770947, -705448, 224412, -571768, 400506, 2181307,
- 3226057, 2700461, 999654, -205085, 615791, -2664490, -881542, -1520418, -106300, -857383,
- -654446, -1224066, -363998, 892279, 66572, -843961,
- },
- {
- 1971927, -51230368, -1086090, 1964948, 7373922, -5267241, -12927852, -6593312, -5894843, -2990371,
- -8214125, 1677185, -17792976, 9569724, 25898116, -6276558, 5078799, -10456635, 4848481, 501974,
- 3326452, 16482474, 14599131, 7165079, 2617783, -6527814, 456877, -1537061, -5833640, -3981972,
- -7244536, -21984326, 7699266, 7861938, -3597572, -4202089, 5196374, 6491306, 2971044, 8825084,
- -4930623, 3133716, -1449015, 4590783, -4395362, -2058363, 436476, 10164577, 169651, -2719251,
- -3239479, -255014, -958851, 1013075, -3994320, 1402307, -5962489, 4910758, -1348620, 251256,
- 1457068, -2314451, -1960653, -4090956, 804770, 2499671, 3129421, 5307506, 1715839, 1565516,
- -2676302, 683437, 559956, -1178969, -770410, -2127620, -2582886, -1309965, -1330903, 215285,
- -2601140, 2285460, 743029, 2003602, -103079, 1025423, 1326071, -494995, 336081, 1218697,
- 797790, 1224066, 1392643, 2160369, -165893, 367220,
- },
- },
- {
- {
- -580894, 57650808, 4544076, -9863929, -7231651, 4780836, -1860258, -4534412, -2357400, -15177878,
- 3717294, -13377213, 3309272, 623844, -8515846, -7088307, -5906654, -4697084, 510564, 4641249,
- 5970005, -5857799, -5064304, 20274930, 6389301, 7153805, 2279017, -3189550, 1267015, -2005750,
- 732292, -11643119, -1780801, -2819646, 6906845, 1374926, -8428873, -1395328, -3861713, 928787,
- -5751498, 2001455, -159451, -581968, 1588601, -5232881, -2268280, 1343251, 668941, -4331475,
- 474594, 706522, -1109712, 1495722, 717796, -1403381, -6602439, -4209605, 554051, 1517734,
- 4786204, 4736812, 3765613, -2864743, -987306, 1220845, 1714766, 935766, -2416993, -894964,
- 1977296, -1941325, 656056, 3242700, -940598, -430034, -1163936, -3526168, 478889, 1584843,
- -3386045, 2640868, 932545, 2451353, -347355, -314069, -672162, 404801, 464393, 1694902,
- 421444, 716186, -143881, -526670, -1004486, 375810,
- },
- {
- 12486544, 21235392, -34173444, -18798534, -12045773, -3513283, -1044214, -13061532, -3373160, -6766184,
- 16323560, 26876832, 3522410, -312459, -7473243, 6652905, -810138, -5798206, 12061879, 8808978,
- -3377992, -10095858, -5461588, -2385318, 5686000, 4190814, 4436701, -17158932, 362925, 3878892,
- -2236067, 12109660, -344671, -2741800, -5817533, 7726646, 9558987, 5309117, -1817308, 270046,
- 1137093, 1980517, 2612414, -8209830, 674847, 451508, 1267552, 889058, 1066226, -386010,
- 2377801, -4354560, -4568772, -1395328, 3155727, 17717, -2530273, -1294933, -3589519, 2610803,
- 3271691, -217433, -1144072, -3905199, -5859409, -1415192, 505732, 1414118, 1666447, -205085,
- 2043331, -3692061, -3445638, -2971581, 1424855, 46171, -445066, 849330, -1425392, -1024350,
- 17717, -290984, -98784, -1446867, 181999, 92879, 944893, 534723, -1691143, -398358,
- -1004486, -1692217, -9127, 874563, 2086280, -143345,
- },
- {
- -1222455, -83522616, 26109644, 55748676, 2528125, 7650411, 2633352, -3419331, -11440719, 9232032,
- -4604742, -17528836, -1670205, -874563, 4644471, -894427, -3671660, 1089311, 3910568, 15355582,
- 8301635, 3236795, -3310346, 5197448, -4483946, -6316823, -4924180, 1339493, 2063195, -4115653,
- -3147137, 935229, 3438121, -3982509, 6751152, 693637, -1089311, 3010235, -483184, 990527,
- 6338835, 2957085, -2114735, -4603668, -1920387, 1210644, -5670968, -3642132, -2564632, 2064806,
- -695785, 500901, 180389, 1533840, -955093, -1447941, -1823214, 3339874, -1717450, 2630131,
- 570157, 1512365, -1120450, 38118, -715649, 797790, -90731, -3205119, -1910187, 1526324,
- 1042066, -1758252, 1398549, -265751, -404801, 1768453, 4005057, 1421634, 268435, 429497,
- -519691, 833761, -1522029, 950262, 1046898, -577136, 977105, -74625, -237297, 717260,
- -408559, 565862, 927713, 408022, -620086, 470299,
- },
- {
- -1403381, -4697621, 5308043, 8447127, -439160, -151398, 1068910, -1404991, -1908576, 5424007,
- 5382668, 570694, -2285460, -1177895, -10103911, 3127273, -748398, -6145025, 1762010, -1904281,
- 1615445, -6761353, 7577933, -14523969, -2867965, -563178, -10509248, -6200322, -1161252, -8383776,
- 18213882, 1166084, 934692, 4475893, 1653026, 1492501, 6238440, -6088116, -911070, -1391033,
- -1665374, 1788317, -8511551, 3346853, -4141959, -61740, -3092377, -1486596, -727997, -1141924,
- 3867618, -719407, 1668595, 3557844, 2949569, 7516, 1885491, -1544041, 29528, -1277216,
- -2806761, 5150740, 9664, 1083942, 1260036, -2713346, 350040, 521839, 392453, 4772246,
- 2230699, 415001, -1648194, -304943, 295279, 2648921, 886911, -2418604, 1811939, 729071,
- 85362, 3898220, 113817, -472446, -671089, -2476049, -381178, 105764, -1592896, -480499,
- -557809, 67109, 888521, -726386, 1291711, -298500,
- },
- {
- -9707700, -37801616, -1730872, -3757023, 1083406, -1681480, 3636227, -764504, -3919158, 4883378,
- -7613904, -730144, 4598300, 10191957, -3417183, -5679021, 10067403, 5185636, -2392297, -11543798,
- 971200, 896038, -4415227, 3852049, 3066070, 3293703, 4022774, 15460809, -5181878, -10835129,
- -4095251, -8722542, -3965866, -4614943, -2949569, -7897908, 3550864, -713501, -5820755, 570157,
- -7994008, 1228361, 3835943, 5633924, 2771328, 26844, -1074, 1650878, -995896, 5462125,
- -2699924, -2725157, 2006824, 459562, 3658239, -194884, 3336653, 1267015, 311385, -4931696,
- -2393371, 283468, -2390686, 2593624, 1103807, -2021319, -543313, -198642, 998043, 2394981,
- -315680, 926639, 1850057, -2311229, -369367, -2198487, 2861522, -142808, -193810, 1372779,
- -1341640, 237834, -28454, 2334315, -2241436, 804770, -1305670, 1893544, 1714229, -323196,
- -572304, -584116, -1354525, -684510, -290447, 15032,
- },
- {
- 91268, -2364916, 13912473, -5807870, -3606699, 3988951, -85362, -4000762, -2451890, -3825742,
- 31139, 5731097, -4460324, 1291175, -6488085, -2443300, -440234, -6789807, 631360, -4220879,
- 1262720, -1384053, -424128, -5894843, -40265, 3699578, -3532074, -5221070, -2013266, -20714628,
- -3033858, -3266860, 3398393, 2358474, 4707821, 9061844, 1046361, 3132642, 6144488, 8230768,
- 6590628, 7971996, 7570954, -4788352, -1487132, -3543348, 5969468, -2786360, 2317672, 2577517,
- -2873333, 2497524, -1176284, -1371705, -496069, 2256469, 286689, 3649112, 1965484, 344134,
- 4262755, -82141, -513785, 1235340, -883153, -2929705, 1360968, 2008971, -569620, 596464,
- 1887638, 1047972, 1103807, -191126, -159451, -1753957, -241055, 1286880, 222801, -103079,
- 328028, -1648731, -936840, -565862, -93952, 2037962, 1043140, -947040, -2413235, -1437740,
- -574452, -1324997, 296353, -474057, -1184337, 104153,
- },
- {
- -3728032, -66572528, 8582955, 773631, 91805, -5447629, -9456444, 1685775, -8290361, -1212255,
- 7889318, 18928458, 2934537, 2905546, -6288369, 8704288, 5073430, -2421825, 9477382, -1773822,
- 3619584, -4943508, 2862059, -5302137, -7573638, 2488934, 7594039, 14198625, -3395172, -6933151,
- 2928631, -14370424, -6390912, 7341173, 3368328, 5765994, -6292664, 6876243, 1194001, 5668820,
- 5180268, 3032247, -3460133, -2704219, -4694936, -6091874, 599685, 409096, 593779, -693637,
- -169114, -2769180, -650688, 12348, -1455457, -800475, 1207423, -4957466, -1190780, -3553549,
- 919123, 1924145, 2945811, -1969243, 144955, -1574106, -580357, 3604551, 2545305, 1037235,
- 348966, -2467459, 523986, 1212255, 2455648, 98247, -8053, -1247688, -332323, -1785096,
- 1977833, 901406, -1918240, -591095, 1638530, 1065152, 1142998, -450972, -557272, 528818,
- 565862, 2560338, -671089, 631360, 375810, -1228898,
- },
- {
- 831076, -35295504, 24735790, 6001143, 82141, -3964255, 2587181, -335007, -1899986, -1088237,
- 4218195, -4408247, -13415330, 1759863, 29510720, 881005, 13449153, 2542621, -9234180, -10619844,
- -14015015, 9701794, -3854733, -1128503, -9789841, -1804423, 3331284, 7356742, 1292785, -8175470,
- -844498, 2799245, 2474438, 6902550, 2771865, 3505230, 3955128, -2157684, -2637647, 7347616,
- 5391795, -348429, -1605244, 1108102, -4412542, -208843, -862215, -2379949, 231928, -3339874,
- 2691334, -33286, 1836099, 1085553, 1514513, 1926293, -1633161, -2022930, 168577, 832687,
- 1639604, 2826089, 1709934, -1476932, -1927904, 2800319, 57445, -788127, 460635, 1465121,
- -90194, -2706366, -1376000, -3131031, 1458678, 2199023, -929860, 215285, -2175401, 2275259,
- 2494839, 1390496, 469762, -2442763, 1759863, 583042, -1966021, -453119, 862215, 404801,
- 253403, 51003, -997506, -881542, -947577, 165893,
- },
- {
- -8063801, -71899904, 11793443, -876173, -6849399, 536871, -1218697, 5117991, -852014, 2436320,
- 631360, -5058398, 7602092, 10167798, 9848897, -13560822, -18044768, 14947023, 4246649, -1053878,
- -5171141, -119722, 893890, 3821447, 5167920, -1464584, 2664490, 952946, -6035503, -767189,
- -10555419, 6245420, 4898947, 865973, -2487323, -3117073, -5176510, -5267241, 4212289, 1329292,
- -4480725, 4912906, 1967632, 1848447, -2806224, -3922379, -238371, -1659468, -2376191, 1939178,
- 1937030, 350040, -559956, -1724966, 3706020, -4452808, 612570, -4826470, 1836099, -2042794,
- 2136209, 1495186, -321049, -3089692, -1629403, -2367601, -3291556, -434329, 317291, 37044,
- 1472637, 454730, 520765, 1848447, 17717, -977642, -1080721, 1223529, -748398, 1392106,
- -2004676, -178241, -1126355, -2035815, 678068, -1693291, 506806, -1044214, -378494, 230854,
- 287763, -1462436, -2065879, 172872, -308701, -752156,
- },
- {
- 492848, -37533720, 2458332, -5674726, -272730, -19001472, -5033165, -2447058, 3451543, 7344394,
- 2806224, -7723962, -10249403, 8611409, -2703682, 3536906, 2926483, 1764695, -10392210, 8783208,
- -7063074, 6544457, -5057861, -10923712, -4526359, -8839043, -15540802, -1798518, -1097901, 3439732,
- 3604015, 1385664, -5311801, -8559870, 2056216, 1873680, -1144072, 4182225, 4973036, 2238752,
- 1168231, 2527052, 3969087, 2933463, -1375463, 8588324, 8333311, 4677220, 1742683, -5480379,
- 5204427, 239444, -1674500, 4299799, -4452808, -6183679, 1294933, -1164473, 3277060, -3259880,
- 1830730, 2496987, 2206540, 227096, 5682242, 1741072, -332860, -274878, -1090385, 3358665,
- 2281165, 81604, 1472100, 3984119, -1224603, 1209033, 671089, -3602404, -901406, -330176,
- -2064806, 2231236, -1787243, -726923, -1799054, 200790, -1951526, 975494, -231928, -609885,
- -600222, 2129767, -434329, 552440, 1811939, -641561,
- },
- {
- -8089571, 68410240, 7007776, -803159, -10761577, 31791348, 23074174, 37266356, 2935610, 1654636,
- -7647190, -4879620, 11862163, -1958505, 73551, 6889665, 420907, -1430761, -3080029, 5817533,
- 9067750, 6975564, 7983808, -5347771, -1823751, -1505386, -2888366, 14161044, -1782411, -4744328,
- 840203, 3669513, -3233574, -206158, 13391171, 4677757, -6108517, -5060545, -300111, -8184060,
- -270046, 1301375, -530965, 2524904, -1879048, 4880157, -4293357, 4534949, 6470905, -2035815,
- 4048007, 1075352, 1229434, 1433982, 826244, -3316789, -4215511, -2464774, -2564096, -2288144,
- 1224603, 3073049, -2911988, -5905043, -2396055, 2573222, 435402, -3170223, -1037772, 1752884,
- -908386, 1298154, -3736622, -236760, -1916629, -2112587, -671089, -576599, -1677722, 1251983,
- -552440, -2340757, -249108, -282394, 2282238, 754304, 35970, 422517, 557272, 227633,
- -588947, 1574106, 1252520, -746251, 1380832, -1085553,
- },
- {
- -966368, -17090212, 7861401, 185220, -5221070, -2190970, 4371740, -8207683, 5971615, -1659468,
- 173409, -3351148, -5082020, -20936892, 643708, 1002875, 1646046, 6266894, 2659659, 8540542,
- 5024038, 620086, -67109, -9676024, -56371, -2141041, -1349694, -8901857, 12125766, 9703405,
- 5111548, -5948530, 5142150, 570694, -7618735, -8678518, 7690139, 5026723, -7012608, -571231,
- -5743445, -3841848, -6319508, -8013872, 2189897, 1836099, 3700114, -1118302, -8049843, -5352603,
- 4989679, 4769025, -1422708, -4195110, -2849174, -2272038, 943282, 1195612, -589484, 643708,
- 3105261, -4106526, 3451543, -355945, 1116692, -1773822, 1270774, -5088463, 1546188, -1518271,
- 301721, 802622, -2539936, 782221, -1579474, -2750390, 1874216, -2942053, 1532230, -5213017,
- -1299228, 1692217, -1759863, -1175747, -525060, -310311, 2353105, 1948841, -1349694, -1568737,
- 1536525, 1381906, -59056, -1671816, 919660, 897111,
- },
- {
- 8023536, -33432026, -6514929, 12514461, -40466644, -19024558, -10049150, -9749039, 1388885, -11568494,
- -2792803, 7825968, -8946954, 26511760, 19709604, -4154844, 13878113, 10641855, -1292248, -2076617,
- -4662187, 8251706, 854162, -10798622, 6548752, 6487548, 5052492, 1598802, -3691525, -12419435,
- 818728, 3600256, -866510, -2122251, -1949378, 1478006, 4941897, -9226663, -5187247, 9895605,
- -4387846, -2044404, 1349157, -2472291, -5742908, 4232154, 5690832, 3871913, -3081102, 1371705,
- 1205275, -446140, 2377801, 3242164, 2216203, 1348620, -1876901, -4107063, 6324876, 1235340,
- -735513, 708133, -268435, -2281165, 374736, 3280281, 861141, 1742146, -4423280, -3561602,
- 1764695, -3440269, 1190243, 1253057, 2113124, 2794950, -218506, -682900, -2980171, -852014,
- 599685, 422517, -3026878, -222801, -2152852, 582505, -390842, 1008244, -881542, -1966021,
- 128312, -308701, -1644973, 419833, -72478, 1430761,
- },
- {
- 3640522, -14071923, -4593468, 2036351, 1283122, -1024350, 667867, -4014721, -1802813, 1156420,
- -4042638, -273267, 5298379, 12996571, -68383392, -368293, 1536525, 3799972, -3710315, 3920232,
- -7671886, 1941325, -13520020, 6721624, 7061463, -1098438, -58519, 4197257, -1595580, 456340,
- 4912906, -3499325, 6297496, -11384348, -1806034, -1311039, 2824478, -7898982, -6040335, 6517076,
- -6997039, -1280974, -713501, 8065412, -2883534, 3413962, 5494337, 2250563, -5084168, 11638825,
- -2245731, 4323959, -630823, 4174171, 3337727, -4390531, -2215130, 3855270, 988379, 1052804,
- -497679, -1407139, -4292820, 957241, -559956, -1801202, -137439, 79457, 1089848, 493384,
- 1697586, 2704219, -786516, 1633698, -113817, 134755, 310311, -1391569, -1555852, 257161,
- 1610076, 1832877, -336618, 267362, 2078764, -1124745, -661425, -564251, 518080, -246961,
- 2444910, 539555, -543313, 2147, 674310, 456340,
- },
- {
- 2840047, -45383844, -464393, -775242, -2732136, -3411815, 2572149, -1551020, -5393942, -3627100,
- -2368675, 18997178, -9189619, -18486076, -12167105, -12569222, 8439611, -11661910, 4713190, -679679,
- -15118822, -1045825, -4164508, -2823404, -1629940, -9854266, 2940979, 3255048, -9295920, 3098819,
- 6607807, -19732690, 6103149, 9897215, 141197, -3751654, -75699, -5537287, -5491116, 2433636,
- -11251204, -2430415, -3062849, 4733054, -1483374, 6947110, -28454, 4068408, -5665062, -5888937,
- -1386201, 1005022, 4761508, 4070555, -1646583, 7434052, -2343979, 4014184, -4422206, -445603,
- -214748, -3186866, 1766305, -2775623, -1842004, -1912334, -2960306, 1474248, 4173098, 1524177,
- -4718559, -1580548, -750546, -1015760, 1684164, 1199907, 694174, -386010, -2712272, 2200097,
- -357556, 2325725, 1321239, 2020782, 1486596, 4259534, 1634772, 934155, 1094143, -732292,
- -1186485, -290447, -461709, 1141924, 81604, 1900523,
- },
- },
- {
- {
- 24696, 44578004, 13873818, -40288404, 19002546, -5093831, -53150, 1122597, -10873783, -10031970,
- -490163, 746251, -9572408, -2747169, -9659381, 830539, -6082211, 2243047, -4168803, 8491150,
- 7133404, -6987912, -1823214, 6410776, 5603322, 12255689, 2968896, -2534568, -5323075, 8891656,
- -6280853, -6083285, -8456254, 119722, 7591355, -2743947, -7954280, -2288144, 4395362, -2390686,
- -3826279, -1633161, -2999498, 4936528, -840203, -4550518, -4386236, -1897302, 2720325, -4875325,
- 1195075, 1263257, 2193118, 2233920, -3708704, -1192927, -620086, -5080410, -3464965, 2314451,
- 5508296, 5087389, 640487, -1473174, -179852, 345745, 2880313, 202400, -2265059, -813896,
- -341987, 3682935, -2249489, 877784, 2855617, -2916283, -1104880, -2246268, 1999307, -1269163,
- -830002, 889058, 2398739, 1469416, 159988, -389768, -229781, 645319, -440234, 685047,
- 791348, 243739, 225486, 1180042, -1189169, 800475,
- },
- {
- -15170898, -9798968, 25266218, 20259360, -47232828, -5474473, -13016435, 1388885, 1847910, -3978214,
- 6305012, 26348014, 7494718, 4474282, -477278, -5313949, -1818382, 918049, 7592429, 7228430,
- 5542119, -12313671, -2141041, -4123706, 9944460, 539018, -107374, -10624138, 834297, -548682,
- 1683627, 10399190, 1545115, -4837744, -5455682, 4235912, 7917236, 4672925, 1339493, 6388764,
- 1023276, 4461934, -4326106, -6872485, -190589, 688805, 3456912, -3733937, -1076963, 7414188,
- -2491618, -1534914, -2944200, -1231045, 862752, -206695, -1570884, -1947768, 61203, -738198,
- 4670240, -2617783, 750546, -6033892, -4001299, -3505767, 4112431, 1323924, 994822, -820339,
- 1268626, -2643552, -2358474, -1964411, -1785096, 1305133, -1124745, -1102196, 710817, 105227,
- -90194, -418759, -573378, -1821066, 1306207, -1058173, 1659468, -717796, -348429, 404264,
- -1028108, -1552631, -635118, 765578, 1653026, -201863,
- },
- {
- 4991826, -42782168, -11487427, 53757420, 1458678, 2557116, 4053912, -6563247, -7799124, 5303748,
- -5599027, -13036299, -8302709, 1890323, -369904, -4260071, 5726265, 355945, -1696512, 15530602,
- 16437914, -5123896, 301721, 3199751, -4708358, -2107218, -3097208, -2431488, 2624225, -1605244,
- -10524817, 2688113, 8372502, 1859184, -4659503, 1338419, 740882, 2139431, -208843, 765041,
- 9269613, 606127, -381178, -2003602, -5242545, -6500433, 2845953, -3277060, -30065, -1465658,
- -540629, -595390, 3021510, 4480188, -2757906, -1322850, -555661, 2619930, 1033477, -850404,
- 3061775, 741419, -63888, -2119566, 441308, 1602023, -2302639, -976031, -371515, -514859,
- 1043677, 237297, -112743, -286689, 150861, 2987150, 2377801, -20938, -748935, 1269163,
- 1585917, -282931, -1297080, -146029, 527744, 814970, 1320166, -703301, 1241246, -907312,
- 1462973, -409633, 803159, -23622, 882616, -365609,
- },
- {
- 2769717, 6631967, -4489315, -3943317, 7865159, -661425, 679142, 1703491, -7241315, 10228465,
- 6170795, -7003481, 1490354, -9363566, -14017700, 8947491, -823560, -3085934, -2178622, 3754875,
- -142808, -5819681, 2081449, -9802726, -4708895, 1786170, -8622684, -11190000, -9154186, 1688996,
- 3791919, 11989401, -6352257, 7973607, 1002875, 5020817, 4453344, -2783139, -6857452, 537945,
- -776852, -3784940, -4388383, 846109, -6085969, 1693828, -1687385, 1433982, -652835, -357019,
- 4512937, -309775, -27917, 3211025, 3055332, 317828, -3038153, 3680250, -3985193, -442919,
- -264141, 3175592, 2980707, 1356673, -1733556, 1915555, -1928440, -321586, 324270, 1288490,
- 1331440, 3370476, -3340948, 132607, -156229, 2084133, 1717450, -470836, -48318, 569620,
- -819265, 4907537, 1140851, -2891050, 120259, -1387274, -551903, -919660, -82141, -1680943,
- -78920, 751082, 115427, -430570, 416612, 462246,
- },
- {
- 2720325, -59900300, 132607, -5663988, 9342091, -864362, -4373351, 3339874, 1553704, 1356136,
- -14050449, 12657269, 7342784, 6591164, 1571421, -4632122, 2176475, 803696, 840203, -10342281,
- 818728, 5460514, -12378633, 6708202, 11050414, -5225902, 19697794, -1781338, -2150705, -9555228,
- -4991289, -6214818, -5210332, -2190970, -4194573, -5119601, -6289980, 2363306, -3850975, -3940096,
- -8756901, 3163780, -156766, 4319127, 7907572, -759672, 1504312, -663572, -62277, 2202245,
- 2595771, -2476586, -2346663, 1522029, 1953136, 4706748, 246961, 1895154, -2222109, -3866544,
- -665720, -1620813, 1021129, 1190243, 1340030, -4880694, 2070711, -44023, 1964411, 1538135,
- -460635, -492311, 2614025, -1213328, -2135136, -1051193, 1567663, 383863, 12348, 122943,
- -171799, -1363115, 1256278, 553514, -558346, 467078, -1603633, 1313723, 1658931, 128312,
- -173946, -301721, -1129576, -1343788, -415538, -47782,
- },
- {
- -1556389, 5580773, 2670396, 789200, -1504312, 1212255, 1386201, -4304094, 519691, -4154307,
- -5144834, 8382703, -3047816, -14409078, -9318468, 3275450, 9276592, 2311766, -393526, -1643362,
- -9170829, 4064650, 7765838, -17954038, 3427921, 5542656, -8550743, 495532, -594853, -13477071,
- -4261145, 516470, -6518687, 3097208, 3958886, 9412421, 612033, 1339493, 5446556, 6332930,
- 14664092, 6743099, 3056943, -2292439, -4079682, 62814, 1226213, 1905892, -598074, 3342558,
- -423591, 1701881, -2672544, 2743410, -115427, -1240709, 2762738, 3452080, 2189360, -321049,
- 1404454, -753767, 1085553, -1598265, -102542, -1228898, 1403917, 960462, -229244, -299574,
- 2686502, 2335389, -3454228, 1566589, 476205, -1662689, 2292439, 1151588, 271657, -2465311,
- 1380832, -1852205, -3103651, 338229, -126702, 1718524, 1978906, -1004486, -3146064, -1556389,
- -304943, 218506, -595390, -1837172, 406948, 506269,
- },
- {
- -6680285, -70456792, 4376035, -3755412, 9877888, -3262028, -7103339, -15382962, 7816304, 8350490,
- -9986873, 23490786, 8493298, -5675263, -3382287, -846109, 4191351, 10121090, -2211908, 3049427,
- 5113696, -1934883, 2031520, -8808441, -4625680, 6739341, 10301479, 10491531, -4795331, -2889439,
- -7352984, -3922916, -4860293, 3861176, 1432372, 2733210, -2135673, 6163815, 3374771, 4958003,
- 6439230, -2305324, -10201, -7274601, -6805913, 2473364, -8352101, 2976412, -404264, -3974455,
- 4495757, -4436165, 843424, -857383, -773094, -2610803, -556198, -1960116, -4791573, -1195075,
- 1499481, -118648, 3083250, -291521, 1226213, -1620813, -1693291, 1551020, 2212982, 2317672,
- -826244, -843424, -534723, 2231773, -421444, 1688459, 1786170, -2465848, -890669, -817118,
- 1218160, 2004676, -2319819, 88047, 0, 1017370, 1784559, 118112, -1335735, 1481764,
- 772020, 309238, -103079, 278099, 913754, -1359894,
- },
- {
- -3496104, 11553999, -354872, 9647570, -7003481, -3439732, 4080756, -3033321, 4975720, -715112,
- -4608500, -2313377, 1977296, -2177549, 14540612, 7013145, 3062849, 12700218, -13711683, -8802535,
- -6961068, 4319664, -922881, -1040993, -9019968, 391379, 6173479, 11256572, -5455146, -12332462,
- -2812667, 5232881, 5776731, 1245004, 2811593, 7217693, 3390877, -2518998, 4264903, 916439,
- 3374771, 6343130, -5917928, 5371931, -6298570, 1988570, -4134443, 521839, -1994476, -2613488,
- -262530, 4003983, 944356, 1498407, 3336116, -2078227, 3455838, -6262599, -966368, -1547262,
- 6141267, 2348810, -3425237, 3978214, -4488241, 2412698, 376883, -1637456, 2420751, -2579665,
- 385473, -865973, -2177549, -1680406, 2907693, -1204202, 226023, -666257, -1389422, 2274185,
- 937377, 1144609, 75162, -891743, 1257889, 703838, -2195265, 13959, -494458, 2143726,
- -650688, 762894, -710280, -1577327, 17717, -1321239,
- },
- {
- -1539746, -88138632, 5192079, 4427038, 7382512, -5432060, -3885872, 5342940, 3113851, 7460895,
- -16740709, -24159, 14815490, 7033009, -227096, -2926483, -8716636, 9368934, 10287520, 1779190,
- -5864241, -2151779, 1490354, 798864, 2614025, -1493575, 7878581, -2898566, -2570001, -6223408,
- -265751, -3596498, 10631655, -1667521, -3244848, -8928163, 1467268, -1280974, 4999342, -5745593,
- 3104725, 3844533, -828929, 2479807, -4129611, -2933463, 833761, -5370857, -436476, 1709397,
- 512712, 2012729, -1062468, -3376381, 3173981, 362388, -1038308, -1825898, -1802276, -3435974,
- 3104725, 1603097, -564788, -3214246, -3264175, 962610, -2072859, -1015760, 1433982, 883690,
- -1694902, 1174137, 2672007, -397284, 1366873, -1571421, -562641, 1899449, -724239, -625992,
- 285615, -2219424, 412317, -2416456, -590558, -2684, -933619, 372052, -1176284, 19327,
- 1254131, -2251637, -1439888, -1120987, 39192, -875636,
- },
- {
- 2238752, -36217312, -887985, -113280, -3799972, 1307818, -24779276, -5106179, 3522410, 13284871,
- -3208878, -9635222, -16343961, 9286256, 682900, 16205985, -8832600, 5927055, 3755412, -13722421,
- 4544076, -767725, -3007014, -3736622, -17898202, -4258460, -16183437, -9375914, 1283658, -945967,
- 180926, 1581085, -2880849, -5095979, -6081674, 1978369, -168041, -334471, 7634841, 3126199,
- 1599339, 2535105, 2720862, -3986804, 4468377, 5723044, 8578123, 9119289, -6986838, 2678986,
- 3657702, -1444720, 3825742, -4002373, 359704, -5753109, -989990, -772020, -1719598, 1175747,
- -738734, 4224101, 95026, 2951716, 4210142, 936303, 2541010, -1063004, 864362, 1240709,
- 568546, 1691680, -210453, 4840965, 2852932, -2877628, 2261837, -2913599, -2359011, 76773,
- -2011655, 2913062, -1523640, 497142, -2458869, -849867, 1611, 10737, -639950, -486942,
- 294742, 920197, 38118, 87510, 1227824, 677531,
- },
- {
- 10775536, 65954592, -10320806, -991064, -21751324, 28609850, 17427366, 42380588, -2000918, -3977677,
- 5426155, -13185013, 8007967, 6433324, -7680476, 10895258, 330176, 5157719, -10121090, 13189845,
- 2318209, 11523397, 858457, 4236985, -10662793, -1470489, 4436701, 7175280, 5242008, -796716,
- 2000381, -4618164, -4751845, 5208722, -2446521, 2474975, 4257387, -1268626, -3540127, 485331,
- -1218697, -3170760, -721555, 1613297, -4600984, 8161512, 118112, 5104032, 288837, 6035503,
- 3624953, -312996, -3978750, 1107028, -158377, 76236, -4889284, -1289564, -4343286, -995896,
- 1589675, 337692, -5131412, -2534568, -3035468, 2003065, -733903, -1586990, 1126355, -230854,
- -330712, -344671, -2024003, 261456, -1891396, -2283849, -1340567, -1331977, -395137, 1073742,
- -1585380, -1446867, 212601, -308701, 2997887, 2203318, -898722, 311385, 773094, -1395328,
- 783832, 1038308, 1275605, -645856, 1168231, -427886,
- },
- {
- 2717641, -6997039, -3565360, -1235340, -5361730, -4781373, 7853348, -4465692, -379568, 4388383,
- -11580842, -3041374, 6419366, -30766462, -2344515, 1193464, 6246493, -1172526, 9155260, -1396938,
- 7084549, -1898912, 2560338, -7132867, -2526515, -4438849, -17696876, -2172180, 16155519, 17437030,
- -7279970, -760209, -2045478, 6546604, -10584947, -3297461, 10615549, -988379, -5627481, 98247,
- -5655398, -5745593, -6468221, -6323803, 805306, 6583648, 1194538, -7417946, -7882876, 2090575,
- -2415382, 3363496, 731755, -3002719, -2379949, -5277441, 3177202, -1016834, 3469260, 840203,
- 2201708, -3792456, 4248797, -1571958, 767189, -678605, -2813741, -1044214, -207769, -2762738,
- 3796214, -1786706, -3383361, 423591, -1273995, 122407, -1287953, -1822677, -1775432, -1852742,
- -1851668, 367757, -1285806, -1452236, 274341, -440234, 1717987, 1874216, -415001, 54761,
- -1108102, 1429150, -252329, -651761, -214212, 2094870,
- },
- {
- -13656922, -18677202, 15981573, 1693828, -39939976, 2274185, -18370112, -2182917, -4995047, -14596446,
- 5023501, -6438156, 7503308, 21038898, 9309342, -5590437, 20893942, 1751810, -521839, 15553150,
- -12983686, 9435506, -5561983, -7254200, 18101140, 5507759, 8523363, 5631239, -9570261, -7588134,
- 3786551, 2155537, -2932389, -2552284, -8405788, 7642358, 326954, -7077033, 3635690, 144955,
- -2272038, 425739, -3438121, -6839199, -515933, -724239, 10203769, 2889976, 1752884, -211527,
- -97174, 6605660, -310848, 2730526, 3508452, -649077, -2193655, -1348620, 2140504, 3979824,
- -4038880, 3052648, 2535641, -4531728, -1541356, 6214818, -1975148, 423054, -1963337, -5194763,
- -41876, -3109020, 2608119, 2371896, 721555, 1412507, -721555, -1626182, 95563, -2709588,
- 899259, 249108, 520228, -2642479, -1466195, -897111, 977642, -184147, -1093606, 39192,
- 346819, 71404, -1834488, -986232, 1052804, 627602,
- },
- {
- -2968359, -18220326, 7373385, -4825396, 1371705, 5118528, 2364380, 1517734, -10596221, -2644089,
- -4416300, 7582228, -1454920, -34736084, -1953136, 10204305, 9491341, -5754720, -1322313, 5517959,
- -10118406, -1800128, 318364, 6722698, 10420128, 1437740, -17069274, 7933342, 427886, -2845416,
- 10172093, 612033, -2150168, -4700842, -13095355, 5746130, -206158, -7641821, 1488743, -5409512,
- 4669703, -769873, -3063386, 10129143, -1626719, 5019206, 5032091, -1039382, -1581085, 9271224,
- -2001455, 4016868, -3231963, 4319127, 5511517, -3662533, -359167, 1370632, -911070, 3023120,
- 4337917, -8230231, -2057826, 3283503, -3036542, 23622, -1996623, 1303523, 1237488, 1251446,
- -388158, 2246268, 2211908, 596464, -1398549, 1234803, -1040456, 1278290, -2837900, 1258425,
- 1666984, 561030, -570157, 578747, 386010, 1399086, -1378685, 970126, -945430, -818728,
- 3287798, 375273, 1266479, -1258962, 715649, 144955,
- },
- {
- -10146860, -36332740, 5661841, -4951024, -1687385, 1534377, 951872, 1421634, -5951214, 6364605,
- -1369021, 12221329, -3608310, 1073742, -45086956, -21261162, -1229971, 922344, -1199370, 4176319,
- -16886738, -1878511, -4589710, -9471477, -6652368, 1147293, -2208687, 7659001, -9474698, -3704946,
- 3578782, -5960341, 4870493, 4194036, 4239133, -122407, -492311, -13153337, -1614371, 2663417,
- -14267881, 1181116, -5952288, 6139119, 1767379, 7023882, -2900177, 5294084, -3510062, -6754910,
- 3710852, -2377265, 4395899, 3697967, -860604, 2152316, 1566053, 4191888, -4263292, 2654290,
- -1545651, -2413772, -1544041, 1070521, -565862, -5499169, -176094, -2316061, 6991670, -2193118,
- -2206540, -4934918, 3406446, 959925, -705985, 281857, 1345935, 654446, 69793, -1416266,
- 981400, 1586990, 2678986, 1005559, 1827509, 2899640, 578747, 2704756, -135291, -224412,
- -1414118, -1043677, 724239, 762357, 53150, 919660,
- },
- },
- {
- {
- 1555852, 17490718, -6881075, -36741836, 13898514, -6469295, -3031710, 44560, -3455838, 1028108,
- -4003983, 9388799, -3528316, -6213744, -2485176, 9368934, 780073, 8751533, -8393440, 4265977,
- 8531416, -14065481, -6679211, 3142842, -515396, 10749766, 150861, -2106145, 1395864, 13928579,
- -470836, -137976, -10483478, -3604551, -2684, -3869766, 3599720, 3173981, 10211285, 7279970,
- 2812667, -3794067, -7663833, 4645007, -1712618, -5209796, -2160906, -1366873, 3599720, -2262911,
- -294742, 1977833, 2872260, -1012002, -2288681, 3881577, 5083631, 438624, -4056597, -2147484,
- 854162, 1614908, -1299765, -3906273, -2525441, 2616172, 3996467, 1342714, -2035278, -5098126,
- -2915746, 3534758, -2031520, -337692, 3285113, -835908, 2521146, 150861, 1532230, -2515777,
- 323196, 1747515, 2401424, 296890, 73551, 287226, -234076, -1024350, -1754494, 565325,
- -199179, -314069, -276489, 1372779, 491237, 853088,
- },
- {
- 18923626, 15362561, 17930952, 95011120, 15745350, -4916664, -6616397, 3147674, -6586869, -6713034,
- 2361695, 8376260, -3857954, 8853001, -10201, -12368969, -6290517, 5212480, 1356673, -7374459,
- 15287399, -821413, 483184, 672162, 10200010, 568546, -1330903, -10515691, 3188476, -852014,
- -1877438, 6256157, 648540, -6291054, -4959614, 2897492, 8200167, 6631430, 2196876, 5437429,
- -452582, 3504157, -4429722, -4225711, -1872069, 1933809, 5386963, -2422899, -5563057, 2207076,
- 602369, 44560, -3313567, -2264522, -1506460, -1323387, -1301912, 1717987, 2015950, -2884608,
- 1799591, -1756105, 5636071, -1646583, 960462, -699006, 3294240, -1271847, 586800, -990527,
- -617402, -271657, 1414118, -1058710, -2522757, 1240709, -1343788, -1265942, 3539590, 1418950,
- -594316, 929324, -77309, -779537, 1916092, -1312649, 1182190, -520765, 956167, 2303713,
- 1016834, -173409, -389231, -875636, -1412507, -807991,
- },
- {
- -7652558, -21580600, 9714142, 7706782, -33206002, -3103114, -6099391, 729608, 1393180, 7231651,
- -158914, -17335562, -9111236, 10769630, -3545496, -2263448, 5528697, -3716221, 170725, 1013612,
- 2852395, -2310156, 2247879, -3196530, -6324340, -914828, 5497022, 993211, -2332704, -4294431,
- -6577206, 10084046, 12096239, 6020471, -5272609, 1829119, 679679, 845572, 1791001, 1288490,
- 3782793, -4142496, 5976984, -1157494, -8731132, -5107790, 3312494, -1609002, 2219961, 1466195,
- 2250026, 894964, 6627135, 7541426, -160524, -1690070, -1108102, 1770600, 1455457, 869731,
- 3788161, -596464, -576063, -721555, -237834, -802085, -2160906, 1948841, 1051730, -2711198,
- 1096290, 1095754, -1833414, -1678795, -1814087, -329639, -242129, -898185, -143345, 417686,
- -753230, -1373316, 119185, -542777, -492311, -1017907, -246424, -1900523, 1676111, -552977,
- 1035087, -623844, 445603, 173409, 114354, -2761664,
- },
- {
- -2168959, 10072235, 1953136, -10047002, 1953673, -1944547, -741956, 2684355, -6841883, 4142496,
- -717260, -8186208, -1854352, -4569309, -6009733, 3698504, 163209, 8418673, -5716065, -4447976,
- 5011690, -86973, 6306623, -33286, -3115999, 6769942, 973347, -155693, -7412577, -3159485,
- -5796595, 5250061, -8991514, 4744328, -6432788, 1733556, 5981816, 2889439, -4282083, -3281355,
- -4433480, -4317516, -4911832, -4187056, -8247411, 2818572, 2240362, 4774930, 3215320, 2000918,
- 5153961, -1442572, -3041374, -2824478, -1370632, 317291, -1651415, 3079492, -1613834, 6000070,
- 5393405, 4126927, 2951180, 1264868, -967978, 1639604, -2886218, -2521683, -2594697, -835371,
- -613107, 2276333, -4118874, -1324997, -519154, 1164473, 2550137, 1597728, -71941, 1120987,
- -2167348, 11274, -738734, -1458141, 1242856, 298500, 302258, -613643, 403727, -701153,
- -335007, 660351, 309238, -584652, 328565, -139586,
- },
- {
- 4866735, -52716964, 8921721, -17646946, -4121558, 770947, -3985193, 2511482, 7734699, 5456756,
- 2935610, 28588912, 7962333, 3801583, 4532264, -3908420, -2898029, -3994857, 5815923, -1855963,
- 6002217, 10126459, -12133283, -2410014, 6065031, -10187126, 13127031, -13632226, -7738994, -2343442,
- 5689758, 1079647, -1925756, -1371705, -4385699, -4983236, -7127498, 1416266, -3489124, -3690988,
- -2552821, 3486977, -1326608, 3932043, 5903433, -4240207, 2889439, -532576, -3468186, -2836289,
- 2797098, -1183800, -2498597, -1229971, -1080184, 3484292, -2351495, 2782065, 1052267, 889058,
- -344134, -2477659, 2141041, 1501091, 3323768, -2903935, 1123134, -27917, 417686, -2579128,
- -2539936, -1488206, 1078037, 69793, -2742337, -1466731, 779000, -980326, -995896, -1144609,
- -221728, -1111323, 667867, -1051730, 620086, 1578937, -2317135, 931471, 2064806, 1037235,
- 836982, 659278, -629750, -1482301, -354335, 709743,
- },
- {
- -107911, -1745904, -14134737, 5501853, 1449552, -1088774, 1795833, -3395709, 5840082, 315680,
- -8132521, 3352759, -3927211, 5194763, 5195300, -2596308, 10167798, 7026030, 1116155, 1579474,
- -2462090, 9702331, 8481487, -7968238, 9423158, 12577812, -3558381, 5619965, -1054415, -8733279,
- -2971044, -886374, -7745974, -6063957, -7010997, -782221, -7207492, -2114735, 1663763, 65498,
- 7045357, 2608119, -2517388, 70330, 1712081, 3142842, 86973, -1537598, -3700114, 2130841,
- -253940, 2596308, 890132, 5065377, 1918240, 2106682, 2375654, -1393717, 880468, -803696,
- -1438814, -1767379, 1619740, -2954401, 159988, -872415, -1287417, -1699196, -120796, 114890,
- 402116, -161598, -3856344, 2970507, 2134599, 808528, 2365453, -1087164, 946503, -2081985,
- 2268817, -470299, -2838437, 365609, -1466195, -161061, 2136746, -120796, -1964411, -831076,
- -293668, 69793, -255551, -628676, 1225676, 934692,
- },
- {
- 16949552, -45043468, 6993281, -11634530, -5129802, -4110821, -8181913, -9693741, 9183714, 1053341,
- -13159780, 14647449, 6339372, -7808251, -1584306, 10979547, -4930086, -5947456, -7840463, 3195993,
- 10776073, 927176, 396748, 1240709, 16873316, 8130910, 4107063, 5146445, 1217086, 3791919,
- -2301029, 2334315, -2361695, 1890859, -2943126, -6838662, -4400731, 4613869, -4836133, -5129265,
- 842350, -6801081, -1515050, 248571, -2200097, 2423435, -8476118, -401043, 2536178, 2243584,
- 6434935, -5582384, 157840, 2536178, 653372, -2134599, 130997, 176631, -4479651, -1497870,
- 65498, -1635309, 2828773, 324807, 2601677, 1354525, -355409, 3098282, 2114198, -508417,
- -2287070, -325881, -2775623, -552977, -1956358, 271120, 2020782, -1619740, -1326071, -2524367,
- 88047, 2070174, -1185411, 2012729, 7516, 738734, 917512, -259309, -1083942, 1811939,
- -381178, -1737851, -1371168, 247497, 450972, -1338956,
- },
- {
- 60130, 37755448, 2298344, 3037079, -8166881, 616328, 4038880, -3992172, 3927748, -3972308,
- -4511863, 5049271, 8533026, 304406, 7583839, 7776575, -5390184, -3565360, -8616778, 5566278,
- 2274722, 6926172, 998043, 1809792, -4583267, 8108362, 3624953, 3219615, -10331007, -10572599,
- -3389803, -2143726, -2217814, -3842385, -3363496, 5302137, -4952634, -11237245, 3548180, 3007014,
- 2471754, 8527121, -6058588, 7875897, -1820529, 882616, -5369783, 1046361, 1108638, 3364570,
- 435939, -965831, -2338610, -714038, 1714766, -3739843, 3121904, -6187974, -632434, -5066988,
- 2352568, -2404645, -5677410, 5434208, -3875134, 2283849, -1748052, -542240, 2726767, -4231080,
- -287226, -314606, -32212, 345208, 1367410, -2461016, 957241, -818191, -3100967, -155156,
- -1692754, -1433445, 366683, 824634, 670015, 358093, -958851, 807454, -1113470, 1355599,
- -2333778, -198105, 1389959, 248571, 42950, -1123671,
- },
- {
- 14199162, -71717360, 13506598, -7691750, -5696201, -4660577, -16601122, -5853504, -5153961, -4437238,
- -3412352, 7675107, 12786655, 7262790, -7084549, 25438554, 6220187, -3543885, 6184216, 2206540,
- -6869264, -1256278, 8455180, -1452773, -1296543, -5377836, 2385318, -2837900, -3860102, -4599373,
- 1817308, -5980742, 9226663, 2299955, 2692408, -5506148, 5659693, 4608500, 7146826, -8637179,
- 2341831, -18254, -5289789, 2386928, -2334852, -978179, 863825, -5365488, -1635309, -2623688,
- 1387274, 3105261, -1049046, -2986613, 5879810, 2829310, 323733, 995896, -898722, -5836861,
- -2405719, 1424855, 2573222, 3447785, 1767916, 5459441, 999654, 263067, 3085397, 804233,
- -2124935, 1846299, 1956895, -1005022, 913754, -887985, 1474784, 1859184, -1278290, -241592,
- 1079111, -1109712, 2871186, -1675037, -155156, 1669669, -1736241, -420907, -52076, 147103,
- 1926830, -861141, -303869, -599148, -906238, -904091,
- },
- {
- -3255585, -36145372, 6637872, 340376, -483184, 18287434, -12058658, -10636487, 5729487, 5664525,
- -15708843, -6903623, -16158741, 7643431, 1580011, 2683281, -24621436, 3185255, 13294534, -10212358,
- 2340220, -3882651, -9837623, -2736968, -4262755, 7069516, -8822400, -6840809, -597000, -6899328,
- -4028679, -3296924, -9388262, -5170067, -7095286, -1272921, -3379603, -3027415, 6969122, -3754875,
- -3491272, 1774895, -2138894, -10581189, 3429532, -1599339, 685047, 6137509, -3808026, 6230387,
- -886374, -3519189, 1626182, -4553739, 4301947, 1384590, 4692252, -1612760, -4531728, 1414655,
- -3955128, 471373, -4319127, -518617, 4604742, 734976, -133681, 185757, 1721745, -2088428,
- -3560528, 133681, -547608, 2833068, 2726231, -3207267, 3380139, 124017, -2727304, -1365263,
- -670015, 3670050, -492848, 1396938, -1384590, -710280, 339302, 216359, -418759, -926102,
- -812286, -1675037, -135828, -144955, -688269, 560493,
- },
- {
- -14062797, 38962332, -18176302, 1210644, -22466974, -12537546, -21836688, 26108032, -110595, -1673964,
- 8998493, -7269232, -1876364, -3934727, -14890652, 4878546, 3978214, 17006460, -3179887, 8527121,
- -3362960, 2667712, -14385993, 4493073, -10459319, -1614371, 8811662, 318901, -1078037, 3518652,
- -1080184, -12122008, -5801964, 5174899, -9594420, 678068, 12592844, 6394133, 2895345, -178778,
- -4056060, 1342177, 1670205, -570694, -4093641, 7052337, -1701344, 2746095, -1058710, 5481452,
- 644245, -3056943, -3551938, 1815697, 1525250, 3143379, -3888019, 1702418, -394063, -151934,
- -1309428, -511101, -1502702, 1480153, -2165737, 2486249, 614180, -193810, 1280437, 515396,
- 147640, -1139777, 653372, 3155190, -540629, -2188823, -816581, 674847, 80531, 623307,
- -1514513, -615254, 1999844, 1237488, 1688996, 368293, -2822867, -1337882, 691490, -1926293,
- -205085, 368830, 496069, 219043, 1429687, -104153,
- },
- {
- -2863133, -7495255, 3252364, -4425964, -3518115, -1121523, 8500277, 286689, 694711, 8097624,
- -14360760, -12474733, 7121593, -23689428, -3341485, -2193655, 10759967, -9538049, -1418950, -12103218,
- -3651259, -13618268, -1823751, -1032403, -2519535, -4610648, -10230075, 13108777, 16043313, 3840238,
- -5420249, 3330210, -8013335, 836445, -6658810, 2144263, 11849815, 1116155, -2165201, 7581691,
- 1127966, -4075924, -1345935, 1314797, 2097555, 2805688, -6011881, -9543954, -3140695, 9410273,
- -3136937, -1430224, 164283, -993748, 1460289, -4900558, 2091649, 159988, 5612986, -752156,
- 1983738, -4064650, 4517232, 3328600, 3016678, -1407676, -3614752, 190589, -551903, -4350265,
- 2154463, -1385127, 462246, 1691680, -746787, 3111704, -1726040, -2331630, -373662, -602369,
- -2850248, 776315, 31675, 141197, 1138166, -52613, 1695975, 1297080, 477278, 1496259,
- -1792612, 710817, -124017, 63888, -559420, 2167348,
- },
- {
- 16005732, 11439645, 10695542, 9302362, -12757127, 30381524, -4716948, 8573828, -7461969, -7506529,
- 11951820, -4972499, 1064078, 2961917, -1975148, -18081276, 7778723, -8164733, 1608465, 21237002,
- -11027865, 3755949, -1526861, 3375308, 17894444, 3308736, 4809827, 10736881, 2265059, 3501472,
- 7488813, 1424319, -2302103, -3371013, -8122857, 3685082, 4310000, 785979, 384400, -703838,
- -1312113, 4269198, 3855270, 891743, 2531883, -3191161, 5123359, 1793686, 2979634, 3624953,
- 2086817, 6887517, -983011, -308164, 4881767, 1342177, -263067, -1596654, -2491081, 5361193,
- -2135136, 1975148, 633508, -1811403, 187368, 1834488, -2892661, 1044751, 1779190, -581431,
- 316754, -1717987, 1771137, 1570884, 642635, 1662689, 274341, -828392, 175557, -2791192,
- 1068910, 411780, 1823214, -474594, 1369021, -1086627, -197569, -537408, 1071058, 3380676,
- 1650878, 1238561, -450435, -90731, 1233729, 891743,
- },
- {
- 3553549, -18824304, 3263638, -2590402, -1168231, 3289945, -384400, 4713727, -3318936, 433255,
- -2536178, 1759326, 878321, 49548352, 107142256, -1057636, -8045011, -2526515, 8046085, -187368,
- -4052302, 5481989, 2308008, -5246303, 1296006, -828929, -24009404, -4699768, -7209640, -9856413,
- 6460705, 2202781, 969052, 8087424, -5478768, 2402497, -1263257, -8698383, 1683090, -5759551,
- 3774203, 253403, 1088237, 8910983, 774168, 10572062, 3359201, -4271345, -5178657, 3483219,
- -1069984, 2596308, -5171141, 3349538, 4830228, -2095407, 1103270, -2132451, -3677566, 2799245,
- 2083059, -3627100, 797790, 733366, -2967286, 1875290, -443992, 1010391, 2094870, 3731253,
- -1545115, 297963, 713501, -779537, 138513, 2455648, -2704756, 2022930, 179315, 2385318,
- 1636919, -585189, -108448, 468688, 45634, 3081639, -600222, 289373, -1686312, -2332167,
- 96637, -1262720, 1052267, -2203855, 328565, -118648,
- },
- {
- 16546362, -8431021, -6720550, -9426379, 15795816, 14367739, -2512019, 803696, -7490423, 6507413,
- -1020055, 15712601, 3540664, -6325950, -43794172, 1491964, -6447820, -8122320, -5635534, 51003,
- -17529910, -1429687, -876173, -14580340, -9647570, -2657511, -580894, 15434502, -8621610, -12814572,
- -1948305, -3299072, 1655173, 2255395, 5422933, -2200634, -2221035, -11231876, -954557, 12644384,
- -807991, 6235219, -9994389, 6097243, 5743445, 7902203, -2810519, 4866198, 427886, 552977,
- 4844723, -4196720, 90194, 1235340, 1126355, 2730526, 1306744, 1276679, -4318590, 3492882,
- 1276679, 1807644, 1538135, 5277441, 1450625, -6326487, -12348, -4103305, 977105, -4250944,
- 2997350, -45097, 6858526, 1187022, -2376728, -3180423, 215822, 1798518, -1736241, -3173444,
- 1239098, 303869, 311922, -1774895, -183610, -175020, -1442035, 715112, -1334124, 94489,
- -1373853, -1502165, 693100, 1158567, -235149, -1598802,
- },
- },
- {
- {
- -1810866, -13997298, 14891188, 11316165, -24411520, 1748589, -6845104, -4480725, 3261491, 980326,
- -6157910, 9892383, 1540820, -3257733, -233002, 690953, -2461553, 3504693, 13424994, -3777424,
- 1776506, -10464151, -8093329, 14605573, -5139465, 13455596, -190589, -1748052, 3948149, 5286568,
- 3051038, -985695, -10528575, 1163399, 1582159, -11072426, 8260833, 9213779, 5279589, 3170760,
- 2072322, -2809982, -4720706, 3591130, -3403225, 1033477, -6008123, 809064, 1136556, -2601677,
- -964757, 1683090, 4252555, -6118181, 3452617, 4883378, 1879048, 2825015, 494458, -3426310,
- -4895726, 1483374, -886911, -2010582, -4237522, 3613141, 1253594, 202400, -970126, -4591320,
- 803159, -781684, 493921, -1250909, 2464238, -1590212, 3104188, 256087, 757525, -2637647,
- 1298691, 1147293, 2136209, 1018981, -1369021, 2124935, -1592359, -1111860, -1822140, 928250,
- -285615, 151398, -1119913, 884226, 1796907, 460635,
- },
- {
- -21638582, 62524524, 19603304, 112741816, 4760435, -10770704, 12152073, 207232, -15373299, 5151814,
- -8907225, -666257, -1761474, 8425652, -2851322, -9048959, -6827388, 4814659, 897648, -11889006,
- 13507672, 11187316, -7512435, 4335233, 564251, 6148246, -11825656, -6979, 4520990, 1154809,
- -8262980, 1632625, 2817499, -3942780, -3120294, 349503, 5903433, 9914932, 4005594, 4247186,
- 42950, 2379949, -3723737, -1137630, -4916664, 6768869, 997506, -1750199, -435402, -5006322,
- 3588982, -4164508, -627065, -3530463, -2583960, 3081102, -3149285, 2383707, 3318399, -2654827,
- -4076461, 4814659, 1136556, 745177, 1957431, 2062121, -1274532, -1261110, 559956, 2467459,
- -3987877, -454193, 1958505, -1367947, -429497, -2458332, 1324997, -1478543, 3658239, 858993,
- -1486596, 1687385, 424665, 207232, -1228361, 2415382, -2183991, 3297461, -819802, 1236414,
- 666257, 450972, -922344, 1521492, -2978560, -319438,
- },
- {
- 7624104, -236223, -28523952, -35388384, 7659001, -5029944, -13690745, 9891310, 954557, 9974525,
- -7328825, -9942312, -11952894, 16265578, -7952669, 6644315, -1269700, 3288871, -5286031, -6555731,
- 11172821, -8213588, 6272263, -7466264, -2945811, 3240553, 5347771, 734976, -3287798, -2762201,
- 1074, 4224637, 8669928, 9044664, 1232656, -3182571, 4904316, 2013266, -3052111, 4385699,
- -3792993, 478889, 1362578, -4577899, -2455648, 922344, -3357591, 971736, -1649268, 3150359,
- 22012, 2433099, 5938329, 8356933, 1275605, -3495030, -1865090, 2003065, -965831, 4633196,
- 365609, 1495186, -669478, 170725, -679679, -3299609, 1017907, 541166, 2089502, -1259499,
- -868120, 876173, -3577171, -1041530, -420907, -1262720, 648003, -1444183, 129923, 1653026,
- -1845225, -2369211, 850404, -1757715, 355945, -694711, -1526861, -1574642, -18790, 1133335,
- 1064078, -231391, -1208496, 628676, 447750, -2698313,
- },
- {
- 956167, 23764590, -10402411, -10402411, 675384, -309238, -1038308, -3418794, -211527, 491774,
- 5116917, -3935264, -10761041, -3483219, 2716567, -604517, -189515, -2838974, 3080565, -1851668,
- 4303557, 8701067, 4551055, -1103270, -2537789, 9639517, 4243428, 6771553, -10264972, -7665980,
- -7386270, 5909875, -3521336, 3161633, -7377143, -4009352, 5532992, 881005, -1806571, 3470871,
- -6826314, -3819837, -5804649, -3498251, -2509872, -3210488, 4556961, 613643, 5442261, 6188511,
- 1880659, -6162741, -1218697, -1561758, -4378183, 831076, 3371013, -1606318, 1930588, 5601174,
- 8009041, 2316061, 1476932, -71404, 2530810, -265751, -588411, -3548180, -3036005, 1026497,
- 1394791, 1044214, -4563940, -1269163, 916976, 66572, 2658048, 707059, 212064, 1611150,
- -506269, -2104534, -2245194, 1850594, 302795, -359704, -438624, 1316944, -1627793, 536871,
- -1296543, 647466, 1957968, -18254, -1014149, -841277,
- },
- {
- -11113765, -32569810, -450435, -24832964, 10127533, -946503, 2204392, -4322885, 7419019, -5618354,
- 22217866, 13715441, 14002130, 2444373, 9312563, -4874251, 3710852, -16564078, 4110284, 10545755,
- -539555, 7382512, -1497870, -4767951, -1755031, -7557532, -2336999, -15014669, 2246805, 4755603,
- -1139240, 4563940, -3049964, -1770063, -3828963, -1191317, -3441880, -7814156, 4827007, -7530152,
- 3248069, 1202054, 1403381, 5846524, -659814, -77846, 4090956, -840203, -1868311, -7945690,
- 4403415, -507343, 3396246, -4979478, -2014340, 2427194, -3786551, 3180423, 1764158, 1265405,
- 999117, -2907693, -7516, 69793, 4954782, -650151, 512712, 2335389, -3941169, -986232,
- -2289218, -870268, -1523103, -1082332, -1164473, 1141924, -469225, -1086090, -2054068, -673236,
- -245350, -1187559, 481573, 724239, -128312, 192737, -1307281, 1301912, 959925, 1838246,
- 1977833, 511638, -2110977, -692027, -787053, 422517,
- },
- {
- 1498407, -21138218, 1731946, 2001455, 1388885, -1212255, 778463, -4669703, 5813775, -317291,
- 3330210, -1391569, 824097, 3121368, 1345399, -4718559, 14128295, 10964515, -10362145, 9846749,
- 709743, 3312494, -6727530, 16537235, 2483565, 12157442, -2794950, 10332618, -10445897, -9526774,
- -6888591, 857920, 2833605, -7414188, -6201396, -3504157, -8395050, 2283312, 1072668, 5422396,
- -8786966, 11621645, -5511517, -1464584, 5143224, -1034013, 3454228, -2384244, -1653562, 1193464,
- -2323577, 2503966, 2985539, 4990752, 3326452, 3952444, -183610, -3747896, -198105, 2029909,
- -898185, -556198, 227633, -4258460, 2206540, -1393180, -1867774, -2556579, 2193655, 281857,
- -2048163, -2272038, 1570884, 1287953, 2737505, 199179, 187368, 703838, 2183991, 227633,
- -1491964, 66035, -1633698, 142271, -11811, -413391, 1718524, -2150705, 286152, -784905,
- -217970, -233002, -878321, 623307, 559420, 1213328,
- },
- {
- -22352620, 9760850, -12068858, -10854993, 9060234, -5384279, -3678640, -1953136, -5092758, -8499203,
- 9656697, -1909650, -395674, 4929012, -6376953, 10047539, -2113124, -5137318, -10609106, 1843078,
- 16131897, -5684926, -1351304, 1344862, 27495306, 541166, 9298067, -3745212, 7471096, 1934883,
- -8865349, 8600135, 3051574, 1092532, -2288681, -10539313, -1986422, 221728, -4959614, -7959648,
- -1024887, 439697, -7636452, 4946192, 2600603, -3086471, -4135517, -1382443, 694711, 7166690,
- 2869575, -5147519, -2282775, 3220152, 1447404, -280784, -2168959, 2026151, -3416647, 554051,
- -2854006, 590021, 2695629, -963683, 2190433, 4138201, 373662, 1821603, 734439, -1336272,
- -866510, -441308, -2806761, 54761, -2360085, -115427, -509491, 1246077, -476205, -3851512,
- 932545, 336081, 863288, 2002529, -386547, -501437, 297427, 1054415, -43487, 159451,
- -821413, 57982, -2197413, 278636, 813359, -1832340,
- },
- {
- 3062849, 12102681, 13022341, -8422968, 3075734, 2140504, -1132261, 2112587, 1078574, -4159139,
- -5126044, 10705743, -982474, 5223754, 4392141, 4825396, 11992086, -9278203, -9356586, 2554969,
- 7026030, 6569690, 8147016, -7486665, 2990371, 7554848, -9316321, 5452461, -13272523, -4138201,
- 9414568, -13859859, -4425964, -7918309, 1803886, 9641128, -10018011, -8519068, -3908420, 7857643,
- 1944547, -1180042, -935766, 6799470, 2137820, -1657321, -3955665, 111669, 642098, 4658429,
- 4990752, -8611409, 122943, 158914, -2063732, 919123, -137439, -4182225, 657667, -5172751,
- 1423245, -4169876, -3391951, 3340411, 515933, 412317, -2211908, 2661269, 909459, -1184337,
- -1765768, -637266, 228707, 1547799, -413391, -1811939, -1144609, -483721, -568546, -1304596,
- 141197, -1579474, 411243, -266288, 1252520, 237297, -1250372, 711354, 364535, -594853,
- -1088774, -1848983, 2508798, -227633, 497679, 399432,
- },
- {
- -26844082, -21184390, -5415954, -18538152, 24131274, -3362960, -13379897, -9470940, -13591424, -7641821,
- 17202418, 1202591, 8797167, 14440217, -11742441, 12275017, 17314624, -3058554, -2655364, 6329708,
- -8706436, -2171106, 5953899, -1241246, -2400887, -1265405, -1027034, -1739462, -2578591, -2188823,
- 2215130, 6446209, -1296543, 4486630, 2943126, -3140158, -2535641, 6788196, 2835752, 125628,
- 60130, 52076, -7815767, 2110977, 930934, -7220914, 5800354, -1720134, -7625715, -2235531,
- 5355824, 1554778, -94489, -1498407, 4923643, 2501282, -249645, -360777, -1061394, -5168457,
- -2397129, 2663954, 501437, 8565239, 1746978, 600759, 452582, -1074, 2151779, 362388,
- 184684, 1946157, 1990717, 291521, -1378685, 2025077, 714038, -413927, -2510409, 2735894,
- -1644436, 448824, 2060511, 972810, 169114, 1010928, -1447404, -966368, 571768, -493921,
- 1393717, 307627, -649077, -1501628, -209380, -413391,
- },
- {
- 3085934, -34175592, 244276, -150861, 3987340, -3700114, 20070382, -4605279, -9114457, -1584306,
- -11664057, -1745904, -11555073, -1374926, 6489159, -6267431, -23612656, -1254131, 7394860, -1134408,
- -126165, 4024921, -12081206, 1391569, -186831, 2428804, -1513976, -9105331, -1721208, -5103495,
- 1301912, -8798777, -15137612, 9693741, -4620311, -10539313, -2783676, 823560, 2835752, -8980240,
- 5217849, -512712, 1708323, -6219650, -4557497, 1141388, 636729, 2955474, 4246649, 1082332,
- -5326833, 1501091, -1245541, -911070, 4358855, 4159676, -1082332, 3098282, -4180614, -507343,
- -2931315, -270046, -394063, -4185983, 2991982, 3157338, -2489471, 991064, -1568200, 406948,
- -2433636, -936840, -705985, 477278, 2716567, -1537598, 2375654, -1419487, -1716913, -219043,
- 2204929, 2003602, -996432, -383326, 1253594, -2302103, 1821066, -722091, 81604, -1806571,
- 761283, -2964064, -176094, 954020, -1880122, 1006096,
- },
- {
- 17516488, 34311420, -43204688, -16470663, -4553202, -28084792, -4029216, 13529147, 10475425, 7090991,
- -5575405, -735513, -8309688, -5238787, 5280126, -1090385, 2003065, 19482508, -2421825, 3561065,
- -3687230, -1592896, -10310606, -295816, -887985, -5922223, 3787624, 7994545, -15537044, 10810433,
- -6470368, -4770098, 1447941, 2044404, -5657546, 1496796, 4508642, 3344706, 5323075, -1315334,
- -4641786, 6928319, -271657, 1269163, -2339147, 7087233, -2057826, -1562831, 2461553, 3602941,
- -2434710, -4488241, 3133179, 2034204, -2432562, 1167694, 987306, -1306744, 3686156, -1770600,
- -2609730, 195421, 2138894, 2180770, -3277597, 2822867, 222265, -1430224, 2459943, -621697,
- 234613, 48318, 1795833, -779000, 166430, -316754, -409096, 799938, -67646, 1372242,
- -2449742, 768799, 2084133, 444529, -115427, -822486, -433255, -2052994, 444529, -1850594,
- -1626719, 82678, 928787, 1740536, 362388, -307627,
- },
- {
- 2225867, -2248952, -120259, -7776575, -257698, 611496, 5507759, -66035, 1739462, 5165235,
- -6349573, -15867757, -9078487, -4760971, 1625108, -12060805, 8179229, -483721, 6025302, -13667123,
- -9992241, -12447352, -4889284, -12080132, 6244883, -2287607, -5491653, 21016348, 13231184, -1900523,
- 3939559, -1014686, -7326678, -7264401, 1181653, 3196530, -3973382, 3817152, 8314520, 5126581,
- 3417720, -8181376, -2104534, 9891310, -1977296, 1247151, -4194573, -5439039, -2139968, 4152160,
- -2108292, -290984, -1617055, 322659, 122407, -2874944, 2192581, 507880, 4989679, -2795487,
- 397821, 2250563, -440234, 4326106, 3507378, -2457258, 2430415, -2945274, -1648731, 347892,
- -1231045, 894427, -181462, -679679, 1772211, 2834679, -2237141, 521302, -1966558, -102005,
- -2143726, -664646, 2935073, -1722819, 2542621, -345745, -949188, 2680060, 172336, 1676111,
- -1634772, 604517, 829466, -237297, -940061, 634581,
- },
- {
- -8655433, 64572148, -12060805, 11977053, 4151086, 6838125, 2030446, 13604309, -3653944, -5854578,
- 5068062, 6489696, 11813308, -20699594, 7557532, -5033702, -11283953, -6210523, 9328669, 1494649,
- 5631776, -1000727, -7388418, 20962662, -6195491, 6480569, 10735271, 3912715, 557272, 9656697,
- 7242926, -6136972, 1270237, 1953673, -5344550, 1780801, 1101659, 3513283, -4858682, 4017405,
- 2156611, 4599910, 201863, 8669928, -4679367, 7226283, -4673462, 7779797, -3804804, 6332393,
- 4443144, -1594507, 2737505, -215285, 2892661, 897648, 3846143, -533113, -4871567, 7106024,
- -942745, -397821, 84289, -1094143, 538482, -1306207, 1870995, 18254, 1626182, 1003412,
- -474057, 309775, -1419487, 2462627, -1352378, 1971927, -66572, 8053, 1665911, -3993783,
- 417686, 1148904, 1185948, -627065, 2432025, -581968, -804770, 1225139, 508417, 2275796,
- 1475858, 2557653, 93416, -75162, 279173, 511101,
- },
- {
- -4285304, -10356240, 1720671, 4504347, -727997, -3779034, 4547297, -356482, 5988795, -2939905,
- 2611340, -72478, -423054, 35080220, 111419504, -9480067, -2401424, -4413616, 3403762, 2873333,
- 11191611, -9500468, 5629629, -2742337, -2398739, -13981729, -9223442, -9905268, -13878650, -5652177,
- -2341831, 1525250, 4235912, 5886253, 7713762, -5601174, -5990406, 208843, 1663226, -9364102,
- 421981, -1003949, 5630702, 3667902, -1757715, 12434467, -117038, 270046, -3300682, -2768107,
- 4386236, -202937, 5800354, -4417911, 341450, -476741, -86436, -236760, -7389491, 3631932,
- -1869385, 2903398, 330176, -3194382, -2926483, 4891968, 54224, -1061931, 2482491, 1711545,
- 3797288, -1891396, 49392, -2149631, 2609193, 1057636, -2234994, -839666, 2409477, 1629403,
- 489089, 1217623, -1139240, 987306, 2325188, 1188095, -687195, -2368675, 1487669, -2646237,
- -1611687, 401043, -669478, -1547262, 129386, -876173,
- },
- {
- -15919296, 39927088, 1927367, -6801618, 4622996, -4208531, 7258495, 2139968, -1260036, 6970195,
- 5228049, 7949448, 3487514, -23895050, -17499308, 6917582, -15103789, -11496017, -1648194, -4020090,
- -5412196, -2439005, -6960532, -8728447, -2985002, -11093901, 2801393, 8216810, -565325, -8446053,
- -6890202, 3701188, 86436, -618475, 4583804, -1572495, -11577084, 2316598, 642635, 4192425,
- 9780714, -1933272, -5390721, 8016557, 4132832, 4745402, -1453310, -715649, -653909, 5170067,
- 3360812, -3100967, -3231963, 2901251, 92342, 1558536, 4279935, 946503, -2069637, 288837,
- 3121904, 1390496, -675384, 7029788, 925565, -5034239, -1124745, -835908, -2995203, -2391223,
- 1938641, 2560874, 2253247, 151934, 454730, -3149285, -172336, 296890, -1850057, -2463701,
- 785442, 60666, -1184874, -923418, -628139, -597537, 289910, -2203318, 624381, -316217,
- -2240362, 22549, 313533, -178778, -62814, -1072668,
- },
- },
- {
- {
- 304406, -42120208, -7528004, 42295228, -864899, -3636227, -7739531, -4129611, 7678328, 8575976,
- -3991635, 3246995, 1159104, -2594160, 9906879, 9581535, -5759551, -6628745, 12367358, 4634270,
- 7012071, -7854959, -2374580, 18931142, -3779034, 13525389, 2287070, 3379603, 3292093, -4531191,
- 2195265, 9277666, -561567, 5587753, 5269925, -6426345, 6773701, 1231582, -7490423, -4489852,
- -1120987, 2064806, -4645544, 1311576, -2516314, 185220, -3906273, 180389, -2821794, -4431870,
- -3223910, -5025649, 177704, -3788161, 5299453, 1091995, -1009317, 4123169, 4785668, -166967,
- -4955319, 2027225, 1432372, 116501, -4031364, -463856, -1921998, -37044, 626528, -395674,
- 5230734, 1809792, 311922, -3366718, 577136, -2505577, 956704, 332323, 2042257, -2911451,
- 157303, -838592, 189515, 1977296, -1996623, 758062, -1695975, 811212, -379568, 627602,
- 217970, 890669, -916439, -208306, 355945, 479963,
- },
- {
- 22948548, 73724728, -29923574, 75240312, -20477330, -6887517, 7860327, -5214627, -8061117, -3695819,
- -26277684, 1557999, -3363496, -965294, -8093866, -15090368, -585726, 10909754, 9051107, -1941325,
- 4281546, 5401995, -8054675, 3983045, -1264868, 659814, -16498580, -1693291, -1657857, -388158,
- -9159018, 2019172, 1388348, -4269198, -4916127, -1609002, 4731980, 13058848, 6199249, 5202279,
- -1629403, 6896644, 8354785, 4845797, -2779381, 1238561, -4905390, -219043, 6226092, -4785668,
- 1357210, -2415919, 2020782, -1855426, 1781338, 7850664, -129386, -2389076, -1338956, -2369748,
- -4748087, 6172405, 614717, -278099, 1582159, 1644436, -1035087, 2590402, 5906, 317291,
- -4300873, -603443, -235686, -1733556, 26307, -744640, 5017059, -1526861, -741956, -2437931,
- -3534758, 693100, 905164, 238371, -1767379, 2581275, -3067144, 1877438, -2877628, 205085,
- -344671, 1230508, 477278, 2766496, -1797444, -860067,
- },
- {
- -5712307, 45532560, 16386911, -61537756, 10573136, 15411953, -3393024, 11946988, -607738, 13043279,
- 6102075, 2878165, -18301930, 15284715, -7230041, -912681, -3607773, 11585137, -10065256, -16038482,
- 19544248, -3663070, 4446365, -1978906, 6664179, 15134391, 8218957, -1164473, -6006512, -1220308,
- -788127, 4838281, 3417720, 3156801, 10548977, -6199249, -2895345, 5080947, -8020315, -6639483,
- -4318590, -314069, -3382824, -3952981, -1075352, 4344897, -1736241, -465467, -1275068, 2721936,
- -3939559, -1020055, -2036351, 1453310, -1194001, 755914, 4236985, 2779381, -2203855, 3321620,
- -2217277, 2375117, 16106, -740882, -1367947, -203474, 2802466, -1998770, -380641, -1333051,
- -1178969, -1571958, -4108136, -766115, 1269163, 1050120, 2598992, -51003, -637266, 2148021,
- -1069984, -1851668, 1526324, -1027571, 633508, 118648, -535260, -575526, -440234, 1205812,
- 1783485, 610959, -941135, -326418, 226023, -266825,
- },
- {
- -615254, 37155764, 379568, -6943889, 5469104, -346282, -156229, -2863670, 1223529, 3865471,
- 8308614, -1228898, -5530844, -5585068, 7980586, -5279052, -11782169, -24696, 17052630, 7369090,
- 3113851, 5706401, 14435385, 418759, -5311801, 25114822, 22929220, 11098195, -3587372, 1089311,
- -776315, 3236258, -119722, 4697084, -8639327, -10331007, -9157944, -6166500, 5923834, 11145440,
- 776852, 7934415, -1758789, -122943, -935766, -3898757, 1044751, -1945620, 1783485, 3035468,
- -42413, -9776419, -4624069, 1427540, -491774, 2996277, 7002944, -345745, 2485176, 2725694,
- 1851668, -2665027, -682363, -1438814, 4538170, 3670050, 2050310, -476741, -462246, 4153234,
- 2589865, 1482301, -4654134, 322659, 3952444, 1520418, 3002182, -1322850, 664646, 3350611,
- 207232, -1607392, -1988033, 560493, -2068564, -1557463, -616328, 1891396, -2674154, 46171,
- -967978, 1380295, 3018288, 1413044, -390305, -753230,
- },
- {
- 13504988, 2398739, 8653285, -33332704, -4748087, 370978, -1069984, -12569759, -4444755, -14685030,
- 12865038, -7454453, 2607582, 3376381, 13557064, -123480, 3037079, -16602733, 402653, 3292629,
- 2497524, 11141682, -4810900, -2619393, 10005663, -5048197, -5556614, -7620346, 1374926, 3026878,
- -4422206, 5065377, -147103, 5261335, -2341831, -4022237, -3870839, -6477348, 17544942, 6273874,
- 8274255, 1487669, 1258962, 4692789, -252329, 7369627, 4042638, -3422552, 2512019, -2990371,
- 813896, -2697240, 8123394, 2779918, 868120, 919660, -3164317, 2024003, -690953, 1196685,
- 3608846, -3927211, -3987877, -4888210, 3317325, 2560338, 1379758, 2308545, -1044751, 3103651,
- -212601, -1142998, -1107565, 1257352, 2879776, 1393717, -3343095, -3830574, -2621541, -660888,
- -34360, 1209033, 1212791, 420907, -501974, 1590749, 836982, 2259690, 979789, 1137630,
- 843961, 410706, -1692217, 69256, -635118, -484258,
- },
- {
- 11811, -19298898, 12824772, -2750390, -1993939, -807454, -50466, -4472135, 3674882, 891206,
- 4564477, -3062312, 5250061, 19206020, 6167036, -24533390, 264141, 1267015, -12978854, 12308303,
- 3962107, 483184, -8861591, 14453639, -8921184, 1155883, -8916889, 5974300, -11873437, -11506754,
- -9610526, 6197638, 18159658, 7194607, 3085934, 5732171, -1960653, 2630668, 1046361, 5089000,
- -8752070, 13249437, -940061, 422517, 1860258, -3355980, 7172596, 603980, 1804423, 3034395,
- -4395899, 882616, 3129958, 4960151, 494995, -878321, -2214593, -959388, 3346853, 3354370,
- 519691, 1247688, -84826, -1343251, 4976257, -150861, 404264, -1194538, 3533148, -1173600,
- -4212289, -3000572, 3233037, 1739999, 2968359, 278099, -1331977, 1330366, 4272956, 1545115,
- -1147293, 601832, 491237, 1839320, -206695, -333397, -120796, -3658775, 1377611, 1749125,
- 1894081, -101469, -841277, 217433, -594853, 659278,
- },
- {
- 18777060, 64472828, 1349157, -15983721, -7410966, 2927020, 6075231, -6911140, -17279728, -7414188,
- 13026099, 2583423, 1330366, 8546985, 1621887, 8003672, -13784161, -17689896, -12629351, -4306242,
- 12174085, -7247758, -4833986, -12335146, 1644436, -9234180, 7727183, -934692, 5675800, -3335579,
- -10855530, 6947647, 2910914, 8626442, 5080410, -3100967, 1869921, 748935, -4687420, -6177237,
- 1071594, 3159485, -8274255, 6853694, 2100239, -5779416, 1219234, 4194036, 2489471, 5257040,
- -2085744, -1569274, -1991791, -2377265, 3207804, 3113851, -750546, 3700114, 86973, 3491809,
- 2209761, 2044404, 1522566, -85899, 1554241, 5060545, 836982, -1117765, -38655, -636192,
- 19864, 620623, -710280, 1541893, -3096672, -2222646, -1521492, 1434519, 121333, -2063195,
- 2552821, 1949378, 680752, 1166621, -1170379, -2427194, -761820, -941135, -261456, 1663226,
- 627065, 2091649, -1054951, 190052, 499827, -1444720,
- },
- {
- -675384, -25282324, -1395328, -3789235, 4938676, -130997, -4396973, -4165582, -2475512, 2047089,
- -3494493, 4502737, 958315, 20105816, 6291054, -11392401, 4908611, -3860639, -6203007, -8810052,
- -4442070, 2713346, 7340099, -6423661, -6773164, -12541305, -16152835, 8117488, 4094178, 7028714,
- 19933480, 1734093, 4345970, -5228586, 6578280, 1711545, -9250823, -1421097, -3798899, 4918275,
- -1959042, -8049843, 1013612, 4527433, -13959, 4269735, 1589138, -1269163, -2854543, -605054,
- 6747931, -4709432, -3048353, 1407676, -310848, 200253, -694711, -2037962, 2495913, -1992865,
- 2935610, -1779727, 405874, 2727304, 2512556, 3344169, -317828, 4152697, 4317516, 2794950,
- -441845, -1766842, -1349694, 1517197, -597000, 275952, 1911797, 2640331, 2096481, 1439351,
- 1904818, -1780801, 627602, -947040, 794569, 774705, 73014, 1621887, 871342, -1163936,
- -513249, -2623151, 119722, 178241, 1473711, 580894,
- },
- {
- 35056596, 54679228, -7625178, -35556960, -180389, 9809168, -2348273, -8302709, -3253975, -638876,
- 24515136, 11328513, -6756521, -9250286, -18079128, 1902671, 10927471, -6874632, -13443785, -256087,
- -7558069, -2913062, 1997697, 6589017, 10231686, 7754027, 2977486, -1400159, -2653216, -606664,
- 7366943, 11096585, -504659, 4604742, 4481262, 1017907, -8825084, 949188, 1918777, 6212134,
- -1591285, -1727651, -4920959, 5206574, 438087, -10142028, 4682051, -1618129, -8220031, 1738925,
- 6135361, 717796, 6687264, 4674535, 2021319, -3339337, -1001801, 96637, -1328219, -6273337,
- -4418985, 778463, -2064269, 5509906, -189515, -1121523, -1387274, -3681861, -2309619, -2537252,
- 845572, 1826435, 400506, 2494839, 117575, -703838, -525597, 17180, -3151432, 2134062,
- -2168422, 1883880, 413927, -227633, 1462973, 1345399, -789200, -1591822, 77309, -361314,
- 176094, -505732, -830002, -750546, 863825, -104690,
- },
- {
- -3750043, -22505092, 18241262, 2244657, 6668474, -2618320, 22706418, -38655, -7880191, -3365107,
- -17660906, -584652, -9484898, -8661338, 1210107, -2372433, -20270098, -7477538, 3151969, -970126,
- 4350802, 8898098, -2531883, 10786810, 3996467, 10247255, 6338835, -4420058, 5104569, -392453,
- 7800735, 1801739, -9525701, 12840878, 3653944, -741956, -2551211, 430570, 9944997, 694174,
- 4482335, -3925600, 4147865, -2908767, -4232691, 4868346, 2770254, 3854196, 6025839, -896038,
- -4479651, -695785, -4190278, 506269, 3106872, 3266323, 1344862, 8715562, 472983, -248571,
- -1675037, 1215476, 2780991, -1730335, 1697049, 2267743, -2987687, -1292248, -5018133, 1184874,
- 1517734, 1469953, -2568927, -2627983, 1956358, -1966558, 1301375, 753230, 2442226, 1641214,
- 2389076, 1166084, -2314451, -2936684, 926639, -290447, 2287607, -1184337, 411243, -1110786,
- 577673, -1192927, 1449015, 1186485, -2384781, 1051730,
- },
- {
- -21791054, 39996348, 10707353, -11980274, 229781, 21840982, 46721192, 14794015, 11472931, 5232344,
- -9592809, 10477036, 2729989, 6577206, 18988050, 9147207, 5479305, 9978283, -15831786, -6369437,
- -3038689, 11866458, 6276558, 3579318, 4430259, -5421323, -438087, 12196097, -7881265, 7175280,
- -2325725, 6617471, -486942, 2348273, 3769908, -1222455, -6228240, -722091, 1442035, 2720325,
- -362388, 3044058, -3115999, 1591285, -4160213, 3244311, -3668439, 1800665, 4981089, 1233729,
- -2829310, -5129265, 5180268, 3591130, -5095979, -3654480, 455267, -1166621, 3605625, 942208,
- 71404, -2520072, 413391, 2332167, -320512, 3813394, -278099, -3179350, 302795, -2872796,
- -153545, 1199907, 876173, -1763621, 721018, 904091, 1619740, 2066953, 572841, -202937,
- -3534758, 70867, -250719, -1526861, -356482, -1166621, 408022, -220117, 842350, -1524177,
- -1928440, 108448, 1741609, 1037772, -603980, -867583,
- },
- {
- -2141578, 15902653, 22662932, -6727530, -1765768, 995359, 8941048, 1281511, 1413044, 207232,
- 3614215, -2804614, -6252399, 8917963, -7926362, -22370874, 11832098, 3796214, 10547903, -838592,
- 1313186, -4810364, -10065793, -11009612, 6082211, -1394254, -5166309, 6999186, 1434519, 2296197,
- 8773544, -2326799, -361851, -5626407, -6535330, -4143570, -9909563, 2583423, 10025527, 3821447,
- 1557999, -5497558, 4402342, 14865956, -409633, 2858838, -3859028, -1200443, -784368, -5457293,
- -7226283, 2084133, 1251983, 2888903, 1305133, -6001143, -1880122, -1280437, 947577, -3607236,
- 1893007, 4500589, -1972464, 584652, 4114579, 1831804, 6299644, -804770, -322123, 1793149,
- 1292785, 3351148, 438087, -631897, 1267015, 411780, -2733210, 1692754, -1651952, 27917,
- 950798, 623844, 1794223, -1401233, 2335925, -2408940, -2241436, 1549946, -2379412, 1060857,
- 590558, 849330, 20401, -1161252, -897111, -1423245,
- },
- {
- -8284455, 75612896, -6513855, 14244796, 6846178, -19643032, -14531485, 12948790, -134218, -7892003,
- 8086350, 17631914, 11995844, -9644886, 28108950, 12895639, -198642, -2428267, 5349382, 8032663,
- 12411382, -224412, -15344308, 4866198, -21882858, -5776731, 2857764, -2237678, -6253473, 10098005,
- -1572495, -6462852, 12596065, 6305549, -864899, 6540162, -3174518, -972273, -2058900, 10231686,
- 3545496, -5492727, -7072201, 7299834, -3459059, 9458055, -5527623, 738198, -10204842, 7100118,
- 3506841, -3212636, 6077916, -1277753, -1763084, -564788, 2118493, -274341, -3631932, 6156299,
- -545461, 155156, 712965, -3862249, -1785633, -10737, 136365, -4815195, -587337, 2516851,
- 2920578, 2459406, -1289027, 1713155, -1634772, 1928977, -808528, -594316, 2003065, -2067490,
- 685047, -626528, 12885, 117038, 2111513, -303332, 84289, 1624035, -162135, 347355,
- 838592, 2978023, 1051193, -333397, -866510, 416075,
- },
- {
- 3871913, -12880607, -6941741, 10487236, 8725763, 6182069, 9055402, -3726421, 4781373, -4709432,
- 1490891, 561567, -1864553, -42071888, -12207908, -24380918, 7761543, -15000710, -10860899, 5930813,
- 3744675, -20611012, -9007620, -8653285, -3187403, -8827768, 780610, -156766, -10835666, -4469987,
- -9507984, -7370164, -3682935, 5905580, 16216723, -1290638, -6222334, 5393942, 4430259, -14568529,
- -9357660, -7919383, 486405, -2020782, -7662222, 4939750, -3262565, 4169340, 4698158, 3476239,
- 7786239, -1171989, 4309463, -9101036, -499827, 1039382, 801548, 2498597, -11583527, -1432909,
- -1930051, 2639258, 2815351, -515933, -4533875, 824097, 920734, 156229, -190052, -974958,
- 5417565, -2066953, 856309, -1897839, 2393371, 1436130, -1955821, -2297271, 701153, 1201517,
- -1185948, 1032403, -363998, 1422171, 2853469, -744103, -2497524, -1767916, 3352759, -3304441,
- -1131724, 869194, -1810329, -1130113, -1260036, -1485522,
- },
- {
- 5735392, 77039368, 6619619, 213138, 4337917, -22807350, -2866891, -4788889, 998043, 8201240,
- 10337986, -2642479, -3642669, 13051869, 31117038, 9191230, -16990354, -13175349, -233539, 2412161,
- 3599720, 8701067, -2251100, -1221918, 14255533, 4173635, 5289252, -1213328, -10165114, -753230,
- 4032438, 12407087, 10569378, 2587718, -2705293, -6432251, -8429947, 11943767, 9089761, 3902515,
- 8303783, -4973036, -5355288, -2387465, -3282966, -1272384, -5920076, -9849434, -8790724, -1549946,
- 434865, -2382633, 1574642, 6148783, 733903, 5245229, 5071283, -328565, -3664681, -1389959,
- 5135707, 2997887, -2885681, 1423245, 467078, -21475, -597537, 620623, 1376537, 1634772,
- -1099512, -1682554, -2771328, -2092186, 141197, -2453500, -779537, -1470489, -3330210, -1087164,
- 1421097, -917512, -1377611, 884763, 148713, 141734, 1398012, -396211, 562641, -113280,
- 499827, 904091, 71941, -545461, -271120, 443455,
- },
- },
- {
- {
- 1028645, -64508800, 4415764, 29436096, 14849313, -7791608, -2615635, 2269890, 933082, 1463510,
- 11829414, -7577933, -8265665, -7378217, 21825414, 11508902, 7707319, -18176838, 2352568, 18173080,
- 4793721, -5630166, -6584722, 16006269, 5100811, 3145527, 9352828, -3711926, 7133941, -5414343,
- 11574400, 9010305, -5787469, 10273025, 4616016, -2045478, -1597191, 69793, -9899900, 1351304,
- -8201240, 436476, 1241246, 259309, -2922188, -9031779, -403190, 5560909, -1473174, -6031745,
- -4337917, -6220187, 1207960, -4473209, 2022393, 4248797, 1701881, -826244, 4607426, 282394,
- -2977486, 2669859, 1710471, 963683, -3325379, -1947231, -2230699, 803696, 53150, 2367064,
- 3617973, 1331977, -57445, -331249, -384400, 44560, -2850248, 3490198, -513785, -1404454,
- -1446330, 310848, 150324, 2181307, -391379, -427349, -1703491, 1208496, -374736, -448287,
- 1228361, 271657, 265751, -57445, -763430, 646929,
- },
- {
- -24570972, 44130252, 38962332, 27275726, 12004434, -9439264, 8341900, -10622528, 5733245, -15334644,
- 3311420, 3450469, -17302276, -8975945, -6487011, -16186121, 13099650, 3650185, 9087077, 5670968,
- -41876, -3664144, 1473174, -299574, 2988760, -1649804, -15000173, -5428839, -2398202, 2718714,
- -5706938, 1391033, -3800509, -680752, -4364761, 525597, 4365298, 10435160, 3628711, 7827041,
- -705985, 4381941, 10954851, 2988224, -213675, -3272765, -1184874, -4283693, 5731634, 773631,
- 494995, -1534914, 5899675, -427349, -184147, 2804614, 4046396, -4210679, -908922, -1010928,
- -2819109, 1027034, 1373853, 1242319, -3013457, 3935801, 359704, 3950296, -1306744, -287226,
- -1906966, -2291902, -1015760, -679142, -293668, 1961190, 1975685, 1301912, -4083440, -2572686,
- -2116882, -235686, 1479079, -1446867, -1317481, 926639, -626528, 581431, -1723893, -717796,
- -916976, 1144609, 1141388, 1750736, -361314, -1216550,
- },
- {
- 3289408, 98420784, -25441238, -44846976, 1612223, 7803956, 6696391, 2720862, 7458748, 3607773,
- -3992172, 6570226, -4417911, 4199941, 3874061, -9389872, -4066260, 11098732, -8963060, -4731444,
- 9198746, 4129074, -1906429, 2331630, 18180060, 10583336, 3110630, -1652489, -11559368, 538482,
- 903554, 4311074, 1066763, -910533, 10095858, -432181, -512175, 369367, -4932233, -10614475,
- 1174137, -2850248, -6622303, -1546188, -1137093, 599685, 1011465, 2644626, 1074816, -5303748,
- -745714, -2241436, 500901, -972810, -1064078, 880468, 5139465, 1371705, -307090, -1613834,
- 3358128, 1060320, 141734, 142271, -2347737, -207232, 1801202, 1936493, -5743445, 195421,
- 2637647, -4239133, -2814814, -1734630, 385473, 3421478, -1098438, 753767, 869731, 1016834,
- -2973728, 918049, 1187559, -620623, 1229971, -382789, -551366, 351114, -745177, 1284195,
- 682900, 1290638, 971200, -1704565, -835908, 1418413,
- },
- {
- 431107, 34065532, 2833605, 397284, 127775, -478889, -1144609, -2263985, 2551211, 3204583,
- 8240432, -8398809, 2457258, -4286378, 13085155, -8114804, -17831630, -6454262, 32101660, 14223321,
- -8822400, 4853850, 26840324, -9780714, -2529736, 17665200, 22646288, 7272454, -4861366, -404264,
- 14311905, -6118181, 51003, 5019206, -10944650, -12247099, -5411659, -3077881, 5985574, 4372277,
- 8247948, 6476274, 865436, 44560, -330712, 878321, -5985574, 694711, -2516851, 4990215,
- -959925, -5692443, -9394167, 1959042, 7021198, -1267552, 4396436, 1716376, 1110786, 559420,
- -955093, -292058, -1964411, 370441, 3536369, 2340220, 815507, 1509681, -2266132, 5222144,
- 1650878, 860604, -3024194, 2241436, 3052111, -896038, 4006668, -1371705, 6979, 1855426,
- 59593, 1011465, -1913408, 716186, -3612068, -860067, -1455994, 1901060, -1262720, -993211,
- -478352, 2525978, 1722819, 585726, 493384, 536334,
- },
- {
- -9652402, 50484120, -10198400, -43007656, 9780177, -570694, -3929358, -4277251, -12304544, -4622459,
- 18601504, -34426312, -1604170, 13806709, -6570763, 20609400, 578747, -3369402, -564251, -627602,
- -1503775, 12396886, -3654480, -2379949, 6239514, 1991791, -4416837, -1020592, -7594039, -2250026,
- 7759396, 2695092, -1524177, 9034464, -10162429, -4019553, 2952790, -129386, 10014790, 10404558,
- 3845070, 4768488, -5021354, 6400038, 830002, 8937290, -4373351, 5704791, 1286880, -394063,
- 1109712, -1178969, 2266132, 4882304, 1997697, -374199, -725313, 1473174, -507880, -675921,
- 4657355, -6979859, -217970, 192200, -3983582, 4221416, 2368675, -1319092, 2134062, 2551748,
- 1270774, -1655710, 138513, 872415, 2454574, 1854889, -2021856, -5326297, -1193464, -782758,
- -2338610, 2805688, 1325534, -955093, -677531, 3262028, 967978, 2221572, 1305133, -627602,
- 652298, 355409, -1154273, -380105, 1449552, -1603097,
- },
- {
- -1314797, 4061965, -4851166, -1434519, 1701344, -1888712, -1256278, -981400, 1923072, -1570884,
- 4866735, -628139, 3877282, -1109175, 9949292, -11538967, 4305705, -1683627, -6343130, 9838159,
- -9800578, 8034810, -3384971, 8826695, -12704513, 569083, 855772, -6942278, -13408888, 4261682,
- -5625334, 1089311, 12431783, 6104759, 207232, 8917426, 6979859, -2869575, 1655173, -392990,
- 7054484, 1974611, 3788698, -1163399, 2011118, -2566243, 5739687, 1870995, -1059246, 3525095,
- -2109903, 411780, 498216, 3527779, 4260071, -5219996, -233002, -318901, 1723356, 4566087,
- 325344, 1961726, 880468, 496069, 3391414, -3573413, 4969814, -1508607, 1235340, -2749853,
- -513249, -3548180, 1692754, 1738388, 2925410, 105227, 63351, 1438814, 2558190, 1973001,
- -411243, 1114544, 133144, 813359, 175557, -7516, -1483374, -2029909, 1100585, 1344862,
- 779000, 238908, 445603, -57982, -973347, 365072,
- },
- {
- -5284958, 98782640, -4206384, -26827440, 15117211, -4307852, 2903398, -2555506, -14171245, -200253,
- 14652818, -10041634, 8715562, -2551211, 10618233, 9292162, -9097814, -21201032, -19908248, 5648956,
- -4727149, 397821, -6187438, -5002563, -15200426, -906238, 9688909, 1721745, -4742181, -193810,
- -3381750, 368830, -1643362, 7802345, 6038187, 3644817, -6295885, 5797132, -4665408, -488553,
- -2609193, 2631204, -4435091, 4323959, 3532074, -7448547, 294742, 8983461, 4657892, -3659312,
- 1055488, -3364033, -579821, -2995740, 3052648, 1258425, 3310346, -593779, 4196720, 1505923,
- 3036542, 5458367, -2585570, 1147830, 4185983, 1371705, -292595, -1287953, 2118493, -1846836,
- -372052, 1775969, 870268, -167504, -3002182, -931471, -2081449, 458488, -189515, 1311576,
- -32212, 2711735, -26307, -306016, 937914, -2093260, -1381369, -1644973, -1084479, 2665564,
- 904091, 869731, -100932, 1240709, -727460, -222801,
- },
- {
- -2336999, -18022756, -2150705, 2690797, 103079, -2631204, -2649458, -2703145, -3550327, -2140504,
- -1894618, -881005, 6258841, 13840532, 7687455, 4661650, -16486769, -4842039, -16577500, -1644973,
- -2894271, 2712272, 4329327, -9911711, 4110821, -11074573, -11140071, -8884140, 14151917, 10999411,
- 14148696, -6378027, 17020418, -11303280, 10168335, 2790118, -7716446, -7482907, 1094680, 3258807,
- -477815, -10248866, 6061810, 2600066, -825707, 2818036, 4607963, -4133906, -3723737, 2960306,
- 2772402, 2645163, -3565360, -525597, 1001801, -3295851, 1115081, -2376191, -2930778, 1906429,
- 4621385, 908386, -2074469, 890132, 4138738, 1036698, 4474819, 302795, 4875862, 5075041,
- -1214939, -1529545, -1150514, -623844, -494458, 804770, 2262374, 1644436, 1738388, 2491618,
- 707596, -1429150, 2430415, -1432372, 726923, -356482, 1031329, 958851, 1057636, -1239098,
- -619549, 9664, -2246268, 350577, 2041183, -318364,
- },
- {
- -35136592, 157297808, -24412594, -33143188, 10327786, 7630547, 7485591, -23365696, 19945292, 8591545,
- -616328, 23965918, -16471736, -16204912, -2365990, -851477, -2164664, 11003706, -15173583, -11894912,
- 2302103, -2449742, -517544, 3979287, 5463736, 13590887, 46171, 1396401, -1789928, 287763,
- 3127273, 8840653, 81068, 6039261, 4583267, 1653562, -16461536, 9469329, 4054986, 3386045,
- -2658048, -1932735, -6192806, 8687108, -1119913, -9074192, 4179540, -1788854, -4286914, 3824132,
- 1842541, -540092, 7977365, 5782637, 59056, -4906464, 55298, -932008, -1984275, -2772938,
- -5015985, -1073742, 2449742, 2718714, -788663, -1472637, -1117765, -3998078, -2188823, -2764885,
- -152471, 1333587, 1973001, 2637647, -960999, -1199907, -648003, -1425929, -1726577, -112743,
- -1314797, 3821447, -1603097, -388158, 3610994, -1487132, 1064615, -1038845, 112743, -520765,
- -1395864, -265751, -90194, 1113470, -1328756, -116501,
- },
- {
- 5100811, 284005, -4351876, -3664144, 9568113, 9558450, -1451162, 1765768, -9019431, -3693672,
- -15162308, -10562935, 3171297, -5086852, 16643, -1309428, -12419435, -6429566, -2085744, -14244796,
- 14076755, 7490423, 9881646, 2010045, -2015950, 18014704, -52613, 1098438, -3464965, 5477157,
- 12701829, -12719546, 6628745, 15509127, -3621731, 8272644, -2936684, -3391951, 5142687, 4037269,
- 3638374, -3288871, 2813204, -4747550, -3487514, 4812511, 2732673, 3012383, 5063767, 158914,
- 2008434, -3797825, -6747394, -2168422, 5634460, 2168422, 1034013, 7326141, 2258079, -499827,
- -301721, -394600, 1371705, 3626026, -3440806, 4886062, -1411971, -4285841, -3793530, -1717450,
- 3965329, 2144799, -4229469, 962073, -466541, -1126355, -308164, 773631, 2799245, 2416993,
- 3325379, -607738, -1854889, -1671816, 1178432, 326418, -720481, 1097901, 420907, -1300838,
- -1279363, 1260036, 288300, 711891, -1461900, -40265,
- },
- {
- 26520886, -9143449, -3347927, 12977244, -390305, 23190140, 27809376, 24732570, 5534602, -1725503,
- 2571612, 2695092, 7608535, 11889006, 9538049, 11409044, -7404524, 14704357, -14405857, -1438277,
- -7352447, 20913270, 9196062, 182536, 5988258, -158914, 2084133, 3266323, 3763465, -8245801,
- 11840688, 8250632, -10399726, 5643050, 4053912, -7362111, -2255932, 577673, -8618926, 10875394,
- -1685238, -2430415, 2212982, -4740034, 2549600, -386547, -148176, 3395709, 2737505, -3169149,
- 2226941, -5303748, 2954401, 657667, -3401614, -3853660, 2774012, -887985, -2415919, 3869766,
- 2614561, -3599183, -2396592, 496069, 2195802, 975494, 1197222, -1848447, -1006633, -3172907,
- 955630, 1420560, -198105, -1111860, 1028108, 685047, 3388192, -814970, 1227824, -501437,
- -1050120, -1114007, -1238561, -1280437, -1155883, 1588601, -365072, 1100585, -1565516, -537408,
- -46171, -184147, 1170379, -45097, 1609539, -1697049,
- },
- {
- 2211371, 28998546, 4362076, -5369246, -4110284, 7414724, 9588514, -4825396, 7515656, -3637301,
- 7128035, 1505923, -4239133, 3635690, -28107340, 3522947, -6478958, 19891604, 888521, -10633265,
- 9120900, 10440529, -24624122, -490163, -9708237, -5276368, -370978, 9547712, -14550812, 13649406,
- 8086350, -5057324, -2580202, -4526359, 420370, -7308424, 2963528, -2793876, 4962298, -2129767,
- -801548, 1305670, 9243843, 9823127, -291521, 4621922, -2746632, -3377992, 1642825, -7873749,
- -5121212, 1909113, 1952600, 1432909, -1469953, -3120294, -3526168, -5946382, 1853815, 2636036,
- 335544, 1396938, -28991, -2725694, 5827197, 2103997, 3364570, 2270427, -275952, 527744,
- 2787971, 4413079, -358093, -1009854, -184147, 226023, -438087, -912681, 23622, -1171452,
- 1250909, -662499, 1729798, 962073, -268972, -2629057, -1165010, 480499, -2165201, -19864,
- 3171297, 204548, -777926, -447750, -560493, -1470489,
- },
- {
- 25013352, 33259690, -7593502, 3043521, 18815714, -21780316, -11592654, -1727651, -2914135, 21238076,
- -3084324, 8762270, 9106941, 1560147, 19735374, 5082020, 3680250, 16624208, -11618423, 25279104,
- 3424700, 3977140, -16856136, -13829795, -863825, -1467805, -3508452, 1706176, -11553999, 7732015,
- -2644089, -549756, 2055142, 9119826, -4320200, 10570451, -3595425, -2153389, 6773701, 406411,
- 2666638, -10179072, 1493038, 1881733, 1754494, -3106872, 6786049, -3733937, -3584150, 6238977,
- 1730335, -4133369, 4576825, 4320200, -5222680, -782221, -2345052, -1586990, -97711, 996969,
- 595390, -653372, 2308008, -1196685, -5936182, 41876, 147640, -1190243, -3957276, 2877628,
- 1772211, 816581, 4277788, 193810, -1331440, -579821, -1276679, 2589865, -1363652, 227633,
- -662499, -350040, -748398, 4166118, -294742, -1066763, 647466, 3142842, -938450, -1915019,
- 2428804, 1205812, 2643552, -146029, -185220, 667331,
- },
- {
- -3436511, -29260538, 15840913, 4839892, 6636262, 3559454, 10704132, -107374, -3578782, 789200,
- 911070, -3483219, -5588826, 1883880, -75322456, -8302709, 7141994, -13346074, -10499048, 15214385,
- -14249628, -4853313, -20002200, 4445291, -11647951, 3069291, -13813152, 12928925, -11156178, -6587406,
- -17143898, 512175, -6264747, 12276627, 6170258, 1461900, -6297496, 6023155, 9594957, -11638288,
- -9752797, -7792145, -574452, -4975720, -6401649, 6823093, -5627481, 451508, 8919036, 1088237,
- 14573361, -4575751, -683974, -2351495, -2361158, 827855, 3167002, 616865, -8937827, -4289062,
- 2371896, -1193464, -461172, 1480153, -98247, -4176856, 3774203, -1490354, -475668, 915902,
- 2105608, -1080721, 3285650, -212601, 498216, -734976, -848793, 930934, 471910, 162672,
- -2086280, -941672, 1198833, 1353989, 1813550, -1351841, -2114735, -256624, 1897839, -1651415,
- 132607, -923418, -2170032, 235149, -1531693, -291521,
- },
- {
- 9551470, 58783608, 17578764, 11324218, -6758131, -17853642, -6517076, -5550709, 4203699, -10406169,
- 25895432, 1046361, -20841328, -5071283, 63353988, 1508070, -15685221, 4780299, -6604586, -1807644,
- 3223910, 6960532, 3246995, 4561792, 11310796, 5592048, 15556908, 52076, -22371410, 4995584,
- 4922570, 6335077, 5891085, 11081552, -4829154, -9343164, -5004711, 4690641, 20316270, 2813204,
- 2697240, -9932112, 1777580, -5967320, 2704756, -1702418, -2372970, -15363098, -6586869, -7598334,
- 456340, 2239289, 1811403, 530428, 4316442, 7683697, 1740536, -1943473, 2975876, -2730526,
- 2069637, 966905, -223338, 1605244, -2475512, 6337224, -1015223, -2776160, 2575370, 6048925,
- -3633006, -2732673, -3740380, 1114007, -2231773, 952409, -3164854, -1618129, -1657857, -1707786,
- 27917, 1586454, -1560147, 1178969, -577136, 812286, 245887, 2013266, -626528, -1847373,
- 2281702, 793495, 261993, 143345, -1513439, 1596654,
- },
- },
- {
- {
- -920734, -60347512, 7643968, -1292248, -6158983, -2521146, 5365488, 8045011, -5987185, -13118441,
- 246424, -19252728, -13970992, -1263794, 27995670, 9802189, 15038828, -3499862, 4672925, 27249956,
- 6291590, -19117436, -13548474, 1880659, 315680, -6471442, 7394323, -2430952, 3349001, 6718403,
- 19285476, 11968463, -5068062, 3623879, 2565706, -1853278, -286152, 2603287, -4935991, 3206730,
- -6425808, 605590, -1617055, -5759015, -8590471, -8102993, 2683818, 2565169, -1118302, 222801,
- -199716, -7882876, 679679, -4203699, -3621194, 1738925, 4304631, -2466385, 752156, 2596308,
- -1133335, 1847910, 628139, 1644436, -1637456, -1034550, 1317481, 3470871, 431107, 1480690,
- -267899, -2336999, 946503, 2649458, 808528, 2360085, -2375654, 3457449, -606127, 641561,
- -151398, 1326608, 413927, 1134945, 355409, 1975685, 204011, 1833951, -229244, -1010391,
- -69256, -572304, 797253, 1276679, 751082, 1387811,
- },
- {
- 26345866, -3489124, -33588792, -10749229, -5566815, 2460480, 13967771, -2123325, 7690139, -5728413,
- 25164750, 2117956, -14198088, -8070781, -1510755, -9939091, 11518029, 6456947, 15919833, 5422933,
- 1682554, -4313221, 4851166, -1348083, 5497022, 2539400, -7490423, 732292, 1384053, 4884452,
- 5200669, -176094, -1516660, 3488587, -9853729, -5259188, 1318018, 3080565, -1382443, 4742718,
- -2705293, 4215511, 3325915, -7016903, -2787434, 1404991, 9265855, -1064078, 1178969, 1222455,
- 4543002, 3628174, 7733089, 3548180, 661425, -6738804, -736050, -861141, 3648575, 1479079,
- -3814468, -1927367, -1319629, -365072, -4205310, 3536906, 1307818, 4175782, -219580, 79457,
- -1170916, -440234, -345745, -86436, 543313, 1248762, -911070, -511101, -3877819, -173946,
- -900869, -791348, 1517734, -1250372, -602369, 807991, -789200, -54761, -457414, -39728,
- -175557, 528818, -1022202, 702764, 141197, -962073,
- },
- {
- -929860, 144543904, 15413027, -886374, 21163988, 845035, 2242510, -10006200, -5841693, -13357885,
- 2754148, 16532403, -2509335, 4295504, 9762461, -12324409, -5557688, 8677445, -1903207, 3985193,
- 4052302, 7242926, 2607045, 3311957, 14977088, -1605781, -3727495, -944893, -13433047, 1748052,
- 8414915, -1613834, -11025718, -6970195, 5507222, -380105, 1793149, 697932, 2681670, -4870493,
- 5987185, 2822331, -3643743, -2719788, -4137127, -3832185, -2163053, 3104188, 5825587, 789200,
- 1291711, -4468914, 3577171, 1369558, 2247879, -839129, 2550674, 1482301, 4462471, -1343788,
- -734976, -2022930, 263604, 744103, -551903, 1903744, 1815697, 1876901, -6183679, 505196,
- 2960843, -3646964, -416075, -974958, 476741, 2238752, -5080947, -1446330, 1006096, 2561948,
- 32212, 3762391, 2156611, -826781, 1453846, -234613, -744640, 1084479, 217970, 97711,
- -1453846, -13959, 1685775, -213138, 28454, 495532,
- },
- {
- 550293, 29633126, 2712272, 4170950, -1503775, 1076963, 2025614, -149250, 1416266, -2719251,
- 3615826, -8108899, 1935957, -4597763, 22143240, 18105972, 1501091, -4555350, 32163936, 15037217,
- -13035226, -3491809, 17506286, -8000451, -5017059, -7508677, -10098005, -8879308, -9716290, 421444,
- 8763344, -11848204, -3468723, -3171833, -3764002, 4602595, 7211787, -6709813, -2773475, -325344,
- 6429566, -2398202, 761283, 8461622, 6575595, 3499862, -4924180, 2346126, -4871567, 2160906,
- 1371705, -269509, -4845797, -1540283, 4109747, -5422933, -908386, 2018635, 858993, -720481,
- -2185065, -644245, -1502702, -1221381, -899259, -712428, -2747705, 484258, -3377992, 287763,
- -188442, 260382, -4094178, 61740, 1340030, -3517578, 866510, -2126009, -1960116, -135291,
- -61203, 3121904, 947577, 1290638, -3062849, 637803, -269509, 1029718, -936303, 570694,
- -944893, 482647, 25770, -306553, 125628, 1191317,
- },
- {
- -1595580, 94087168, 20179904, -51241644, -5759551, 121870, -938987, -8307004, -16167331, -12865575,
- 13419088, -26358752, -5260798, 5529771, -12144557, 22444962, -663036, -7343321, 5167920, 9358734,
- 1300838, 9011915, -2327336, 5356898, 10770167, 9255655, 8706972, 16408386, -2630131, -4564477,
- 10047002, 1015223, -6200859, 6364605, -8720931, -4735202, 11180874, 1381906, -2897492, 5723581,
- 1673427, 5033165, -4727686, 7120519, -2864743, 6013491, -4428112, 4385699, 1450088, 2932389,
- 827318, -2515240, 311922, 5741835, 3235184, -2563559, -229244, 2916283, -653372, -5660230,
- 5264556, 1221918, 7123740, 947040, -6526203, 2085744, -1033477, -1547262, 1063541, -515396,
- 1862405, 1132261, 298500, -647466, -294742, 1837172, 768262, -2302639, -189515, -1214939,
- -3357054, 2287607, 155693, -1322850, 914828, 1693291, -2308545, 459025, 1917166, -852014,
- -846645, 1088237, 310311, -663572, 2273112, 187368,
- },
- {
- -185757, 22487912, 2292976, -1936493, 139586, -2351495, -73551, 1528472, 1858647, -5308580,
- 1505386, 1423245, 1366337, -8988293, -2165737, -7937100, 12645457, 2547989, -705448, 21150566,
- -8400419, 9305584, 1096827, 7887171, -14887430, 956704, -1705102, -3306588, 3266323, 23432268,
- 945967, -13339632, -7838316, -2281702, 216896, 5686537, 3489124, 491774, 2076617, -5182415,
- 11533598, 7401840, 8012799, -466004, 2372970, -5013301, 1848983, -4159139, -8761733, 1918240,
- 788663, 2348273, 682363, -1141388, 1896228, -3467112, 2424509, 721018, -1523640, 1072668,
- -439697, 1944547, 908922, 1039382, 3220152, -3678103, 6179384, -175557, 99321, -4637491,
- 1111860, -3229816, -1759863, -1567126, 489626, 1588064, 1145146, 113280, 804770, 372588,
- -556735, -378494, -283468, 701690, -889058, -470299, -291521, -896574, -304943, -971200,
- 80531, 991601, 70867, 9127, 20401, 429497,
- },
- {
- -16339666, 118656528, 34092912, -29954176, -1438814, -9771051, 3524558, 8733816, 487479, 10698227,
- 14504641, -17448842, 4643934, -15333570, -2160906, 2161442, -5364951, -8538932, -2764348, 8309688,
- -12011950, 626528, -9470403, -3877819, -4408784, 459025, 2257542, -248571, -3622805, 3540664,
- 677531, -2800319, -7754564, -1010928, -343597, 517007, -4391067, 9566503, -159988, 5595806,
- -292595, 2452963, -154082, 2707977, 1081795, -1579474, 1258425, 1130113, 4581657, -2997887,
- -292595, -4044786, 2250563, -2045478, 2271501, 2704756, 5264556, -2120103, 427886, -2868501,
- 2079301, 2961380, -3746285, 1379758, 2018098, -1722282, -1187559, 722091, 2346126, -2197950,
- -1886564, 1175747, 632434, -820876, -2040646, 576599, -1780801, -565325, 134755, 1810866,
- -1979443, 1752884, -328028, -1019518, 706522, -1055488, -610959, -947040, 578747, 2758980,
- -768799, -186294, 592706, 2307471, -46708, 314069,
- },
- {
- 796180, 7361037, 7528541, 3980898, 1056025, -867047, 972273, -430570, -4233227, -969052,
- -1734093, -2256469, 1243930, -8039642, -6222871, 6289443, -33498060, -25628606, -12762495, 9409736,
- -9295383, 1061931, 12222403, 259846, 6784438, 1847910, 6544994, -8374650, 4484483, -7353521,
- 4277251, -6566468, 12416750, -7537131, 8286603, 321586, -139050, -4886062, -5874979, 3343095,
- -1097901, -8568460, 5172215, 1118839, 1588601, 3986804, 3371549, -3911105, 1311039, 2163053,
- -957778, 7607461, 329639, -2442226, -1245004, -8604967, 1731946, -1057099, -4149475, 3115999,
- 6339372, 683974, -2547453, 1815161, 2024003, -1497333, 1867774, -4967130, 1213328, 2121714,
- -654983, 1431298, -491774, -1008244, -711891, -987843, 463320, 595927, 358630, -729608,
- -2109366, -2079838, 2100776, -1063004, 680752, -1879585, -703838, 1233729, 1869385, -258235,
- 479963, 2229625, -297963, -718333, 39192, -992137,
- },
- {
- 24659554, 271473600, 22083648, -23698556, -7633231, 6401112, 23109072, -7301982, 27807228, 2207613,
- -18875308, 13421236, -1212791, 7260642, 8035347, 3834869, 3294777, 18027052, -8624831, -12818867,
- 927176, -12298102, -9522479, 1426466, -4301410, 535797, -3213173, 7304129, -964220, -195421,
- -5026723, -5043366, -4490925, 3740380, 1910724, -2526515, -12540231, 17131550, -992674, -5800890,
- 2206003, 8244727, -3501472, 5479305, -167504, -7293928, 3668439, 3474629, -90194, 2856153,
- 452582, 1881733, 4565014, 2316598, 4272419, 1438277, 3204046, 829466, -1917703, -1162326,
- -2596845, 1195612, 3961034, 27380, 3221, 526670, -381178, -116501, 528818, -461709,
- 454730, -373662, -751082, -348966, -1265405, -718870, -1671279, -905701, 1574642, 1015223,
- -2015413, 2298881, -95026, -1138703, 2077690, -1813550, 675921, 1042603, 2037962, 257698,
- -568546, 1287953, 1684164, 2143189, -1928977, -586263,
- },
- {
- -5461588, -653909, 1227824, -2118493, 4934381, -944356, -15061377, 1638530, 1960653, -802622,
- 1089311, 3976066, 11214696, -6487011, 306553, 10693395, 5733782, 4311611, -12158516, -14457397,
- 18316962, 3779034, 2983392, -3766686, -7252589, 6655589, -2509335, 6807523, -3112778, -3052111,
- 13557601, -2431488, 11769821, 10182831, -2404645, 3136937, -6780680, -2631204, -1497333, 619549,
- 5429913, -4108673, -694174, -7041062, -6699075, -2685428, -3007551, 3946001, -601295, -4691715,
- 5674726, -228170, -1451162, -3522947, 2887829, 2696703, -2760590, 2583423, 511101, 1883343,
- 1471026, -2450816, 1093606, 3110093, -3798899, 6668474, -974421, -4745939, -2971044, -3667365,
- 1907502, 2051384, -1433445, 2808372, -1146756, 459562, -51003, -86436, 3533684, 2625299,
- 1218160, -2270427, -1187022, -159451, 594853, -966368, -3115462, 118648, 223338, -628139,
- -195958, 1164473, -573378, 819802, -587337, -920734,
- },
- {
- -30129196, -53483616, 13333726, 10559177, -3550327, -30193620, -22956064, 17655536, -1333051, -8348880,
- 7482370, -7655243, -10370735, -2076080, -8996346, 882616, -4734128, 8245264, -24374476, 6576132,
- 2999498, 20433844, -1551557, -5118528, 11155104, 12818867, 2993592, -5609764, 7940858, -5906,
- 12321187, 2704219, -19777788, -4720169, 1491964, -10280541, -2513630, 5050345, -3042984, 8853538,
- -10515154, -4402342, 5931350, -7332046, 1815161, 1630477, 2666101, 1748589, -2577517, -7559143,
- 2688650, -5456756, -791885, -418222, -1008244, -4810900, 3157338, -751619, -2480344, 3577171,
- 2192044, -1173600, -2598455, 1413581, 3664681, -1083406, -1597728, 433255, 1870995, -606664,
- 1767916, 927713, -1035087, -1708860, 2313377, -586263, 2042794, -432181, 3279745, 2086817,
- 282931, -1234266, -1815161, -459562, -236760, 3725347, 255551, 377420, -816581, 1678259,
- 1648731, 1294933, 1540283, -279710, 2125472, -1917166,
- },
- {
- -1378148, 35585952, 9329206, -2477659, -7431904, -1822677, 2449205, -5798743, 5631239, -3713536,
- 7836705, 935766, -6690486, -146566, -24700356, 10259603, -7474854, -5824513, -23606214, -5279052,
- 13522705, -1481764, -29530048, 249108, -19606526, -4423817, -4300873, -3197066, -20722144, 1272384,
- 3741454, -7715372, -301185, 4884452, 5044439, 1242319, 9722195, -10970957, 3368328, 5098663,
- 1214402, -2333778, 7213935, 6955163, -631360, 2769717, 2716030, -1353989, 5487895, 2318209,
- 463856, 2694555, 122407, -2303176, -2696703, -803696, 1083942, -5687611, -608275, 346819,
- -924492, -900869, -689342, -3486440, 1507534, -799938, -1766842, -514322, 315680, 133681,
- 129923, 2673617, -192200, -1165547, -1744294, -1276142, -824097, -183610, 78920, -3471944,
- -1794760, -2655364, 1618129, 1168768, -1100585, -915902, 207232, 539555, -921271, 1560147,
- 3048353, -264677, -558883, 2274185, 862215, -1818382,
- },
- {
- -30115774, -39227548, 9716290, -6963216, 9820980, 14663018, 13598403, -1119913, -4022774, 14628659,
- -10413685, 5079336, 2157684, -13672492, -10033044, -7996692, -8030515, 13836774, -9969693, 15684684,
- -1008780, 11241003, -8702677, -8571144, 10508711, 5032628, -2841658, 827318, -3992172, 14533096,
- -8886824, -6359773, 236223, 7067369, -10205379, 7333120, -1439351, -1750199, 6081674, -310311,
- 5271536, -5626407, 4638028, 2125472, 3510062, -4034048, 11108933, -2248952, -853088, 2059974,
- -5347235, -5327907, -1152662, 2006824, -4256313, -4545149, -1928977, 2640868, 422517, -2184528,
- -1446330, 823023, 2879239, 1233193, -4173098, -1683090, -2265595, -1642825, -4880694, 2510409,
- 361314, 1191853, 4998268, 2765422, 752156, -1890859, -1114007, 2641405, -1957968, 1168768,
- -1342177, -565862, -1785633, 2522757, -1225676, 92879, 1734630, 1498407, -1716376, -47782,
- 2008434, -941672, 1224066, 364535, 1649804, 898185,
- },
- {
- 4200478, -47586628, -6882685, -2554432, -5771363, -17179332, -1935957, 2712272, -2758443, -12348,
- -5337034, 1717450, 1287417, 54246512, 7959648, 11950210, 20333986, -142808, -1582696, 5147519,
- -12031814, 17283486, -10193031, 6125697, 2426657, 7530152, -17868138, 10364830, -6932614, 10264972,
- -2229088, 13626857, -2719788, 5711233, 134755, -879931, -13034152, 198105, 11771432, 2551211,
- 5340255, -3335042, 2521146, 314606, -2976412, 10147934, -8562017, -8730058, 4091493, -1974074,
- 10275709, 534723, 2384244, 635118, 2286533, -446140, 2340220, 2450279, -5221070, -1382443,
- 3414499, -1510218, -544387, 2790655, 3199751, -2876554, 1029182, -3371549, -1782411, -901943,
- -478352, -1460289, 973347, -1644973, 41876, -112206, 1176284, 3380139, 3649649, 1454920,
- -2350958, -1925219, -16643, -483184, 890669, 1641751, -443992, -1384590, 2779381, -318901,
- -857383, -1102733, -328565, 2688650, -852551, -685584,
- },
- {
- -22277996, 23413478, 14759655, 5392869, 6620155, 8460549, -180926, -15411953, -15598247, -19437412,
- 15790984, -14110578, -26650272, -26574036, 30866320, 644245, -3096672, 19873888, -1516124, -10486163,
- 12496207, 22672058, 8191040, -1926830, 3962644, 5593658, 13588740, 1056562, -13026636, 2532957,
- -13870597, -7551626, 1383516, 6438693, -6496675, -2029372, 1187559, -667331, 10353556, -4626754,
- -6120866, -9208410, 11107859, -1540820, 6586869, 7886634, 4220342, -7508677, 2503429, -296353,
- 3666828, 3211025, 1862942, 158377, -1359357, 663572, 367220, 1262184, 8158827, 362925,
- 222801, 977105, 4137127, 4742718, -617938, 8191040, 3274913, -3139084, -289910, 4020090,
- -3373697, -826244, 794032, 4053376, -3202972, 953483, -694174, 1330903, 372588, -83215,
- -48318, 1914482, -104153, 1458678, -622770, 78920, -731755, 1463510, -1058173, -1373853,
- 2541547, 943819, 38655, 450435, -1349157, 654983,
- },
- },
- {
- {
- 368293, -14049912, -23935852, -15277199, -1277216, 2229625, 3992172, 2429878, 1889249, -19530826,
- -4578435, -20098300, -4884989, 2093260, 16007343, 17741974, 3758097, -9982041, 15730855, 23587424,
- 2201171, -19772956, 4832, -7012071, 901406, 1356673, -346819, 1346472, -7612293, 13498008,
- 18544596, -646393, 10183904, -7604777, 4244502, -111132, 10611790, -8419747, -960462, 4831302,
- -3567507, -3062849, -847182, -7655779, -5523865, -8985608, 4886599, 4468914, -5173288, 1540820,
- -2496987, -4954245, -1525787, -6456947, 1767916, 3218004, 1435056, 2808909, -6007049, 4975720,
- -653372, -2975876, 3753802, 962073, -1042603, -563714, 2816425, 1183800, -3321620, 3751117,
- -485331, -2818572, 1296006, 1303523, -30602, 3200288, -861141, 1713692, -514322, 105227,
- 2295660, -543850, 696858, 1060857, 1324997, 1228898, 887448, 1651415, 31139, -370441,
- -2372433, 228707, 1669669, 1744294, 892816, 417149,
- },
- {
- -26496726, -89033600, 73549168, -29027000, 29718490, 3155727, 8319889, 4122632, 1604707, -3691525,
- 30411590, -27229018, 9680856, -3656091, -10581726, -9490804, 2974802, 9876814, 17963164, 1203665,
- 9048422, -6017249, 157303, -3338263, 13165685, 951335, -5944772, -4728759, 7128035, 1365263,
- 11317239, -6385006, 7502234, -4174171, -4191351, -10086731, 1540283, -2136209, 3132642, -490700,
- -4152160, 9265318, -896574, -3225521, -3397856, 6616397, 3805878, 1508070, -3541201, 1315871,
- 6113349, 4555350, 4321274, 7566122, -2799245, -4540318, -1684164, -928787, 3007014, 106837,
- -3602941, 1659468, -7144678, -402116, 1648194, 659278, 294742, 2387465, -4832, 2849711,
- -1463510, -3758, -1721745, -686121, 2203318, -137976, -816044, -1358820, -1744294, -1206886,
- -167504, 1056562, -420370, -884763, 711891, -76773, -50466, -852014, 70867, -362388,
- 395137, 2147, -1079647, 1206886, -420370, 59593,
- },
- {
- -1360968, 155808528, 5900748, 22009024, -3821447, 6851010, -240518, -6885370, -3624416, -19861002,
- 9264781, 19590956, -7131793, 3219615, 7566122, -5296769, 798864, -2970507, 5126044, 8167954,
- 124017, 1927367, 5930813, 1474248, 10875394, -5962489, 308701, -7488813, 1226213, -2651606,
- 4141959, -989990, -3911105, -9788230, 1298691, -838592, -2997887, 2067490, 7945690, 3018288,
- 1196685, 1815161, 54224, -6657200, -3472481, 2520609, -7227893, 656593, 5334887, 562641,
- 4319664, -1420560, 3817152, -1664300, 3927748, -2153926, 3097208, 409633, 6871411, 321049,
- -2789045, -1163399, -454193, -334471, 566936, 2382096, 1657857, 2464774, -4597763, -774168,
- -893890, -600759, -1588601, -1596117, 1839857, 319438, -1504849, -1488206, 1658394, 1565516,
- 785442, 2509872, 1654636, 824634, 585726, -920734, 131533, -88584, 920734, -240518,
- -397284, -626528, 124017, 752156, 222265, -593242,
- },
- {
- -1568200, 24109798, 6635188, 7987029, -3657702, 1408749, 2042794, 3467649, -3478387, 1121523,
- -3139621, 848793, -7162932, 2697776, 23969138, 11443403, 4735739, -419296, 31921808, 5922760,
- -2428267, 1240172, 665720, 3769371, -11578695, -12748537, -15417322, -1161252, -6096706, 4753455,
- -6959995, -10840497, 806380, -12264816, 1474248, 474594, 17218524, -10111427, -3920768, 1476932,
- 6571300, -1326608, -2407329, 8697846, 5184026, -1739462, 4031364, -1025423, -2163053, -2713346,
- 4851166, -2952790, 2389613, -2699387, -1686312, -1335735, -1393180, 95563, -1655710, 1139777,
- -587337, -710280, 259309, -1310502, -3752191, -273267, 1005022, 134218, -3563749, -1993402,
- 479426, -702764, -1663763, -2879776, 1425929, -2137820, -880468, -1337882, -1145146, -744103,
- 477815, 1382980, 2292439, -599148, 60130, -437013, 81068, -202400, -259309, 1106491,
- -929324, 249645, 60666, -606127, 818191, -1292248,
- },
- {
- 18760954, 116616416, -26292716, -57276612, 4609037, 3393561, 3040837, -16061567, -40802, -22301618,
- -8550206, -11847667, 5873368, 2134599, -11968463, 11945915, 17096118, -21350820, 9169218, 16268799,
- -8743480, 14772540, -12635257, 11439109, 2257005, 3338800, 14827838, 14142254, 1482301, 224412,
- 8748312, -1947768, -1043140, -5268315, -4241817, 3633542, 308701, 2637110, -1527935, -3833795,
- 6308233, 2826625, 6356015, -454730, 97711, 1928977, -2483565, 2066416, -1114544, 8429410,
- 150861, -6419366, 1134408, 4942971, 6357089, -4851703, 1549946, -147640, 2943126, -4207458,
- 2696166, 804770, 4977867, 2314451, -4666482, 2054605, -2477659, -1630477, 1431835, -1843078,
- 1050120, 934155, -171799, 1097901, -2177549, 798327, 1257889, 591632, -696858, -238371,
- -4024921, 90731, 1601486, 27917, -213138, 52076, -993748, 773094, 638876, -487479,
- -601295, 591095, -418759, 449898, 862752, 975494,
- },
- {
- 1599875, 11694122, 7375533, -869731, -2531346, -1065689, -715649, 899259, 5192079, -1011465,
- -1547799, -2612414, 118648, 5925445, -26281978, 7379291, -2476586, 7650948, -13424457, 38170448,
- -5730560, 9463424, -1553168, 16761647, -8966281, -12920335, -102542, -3548180, 835371, 22681722,
- -2288144, -5864778, -8797167, -4104915, 2763812, 3299609, 551903, 2408403, 3729642, -2561411,
- 3789235, 7264937, 3859565, 1219771, 5739150, -3878356, 5299990, -8056285, -7415261, -5753109,
- 3794604, 2501819, 6169721, -2220498, -699543, -2208150, 556198, 2643552, -3990562, 250719,
- 1229434, 2587181, 1658931, -168577, 748398, -217433, 5929739, -874026, -3772055, 720481,
- -1633161, -2343442, -1700270, -2670396, -179852, 2399276, 1627793, -1218697, 1619740, 923955,
- -915365, -1138166, 1738388, -670015, -1093606, -1136019, 1482838, -1395864, -871342, -184147,
- 212601, 188979, -917512, 865973, 1080184, 645856,
- },
- {
- 41991360, 106954888, -31540092, -32507534, 3779571, -1454920, -4519380, 3036005, 18194018, -2157147,
- 999117, 8457327, -3985730, -6645388, -11933567, -368293, 6068789, -12946105, 15323906, -5437429,
- -5439576, -3870839, -9038222, -16061567, 14436996, 1730335, -3757023, -6242735, 3374771, 3818763,
- -117038, -2466385, -4610111, -7168838, 311385, -2227478, 3488587, 5978595, 1894618, 763967,
- 3100967, -278099, 3041374, -3221762, 5323612, 2193655, 4974109, -2880849, 2725157, -1675037,
- -220654, -4412005, 4782446, 124554, -2242510, 2859911, 7659001, 228170, -6307697, 270583,
- -300648, -498753, 1498944, -1349694, -149250, -688269, -90194, 1935957, 520228, -802622,
- -1535988, -244813, 274341, -1011465, -98247, -1231582, -1115618, -11274, -475131, -241055,
- 594316, 535797, -1324997, 60666, 780073, -1268089, -989990, -343597, 1384053, 1552094,
- -515933, 263604, 1694902, 419833, 571768, 202400,
- },
- {
- 1736241, 9714142, 3124589, 108985, 2384244, 861678, -377420, 2411624, -4793184, -712965,
- 71941, -2586107, -2367064, -1850057, -9483825, -1823751, -25882010, -21932788, -5744519, 12840878,
- -11076721, -3011846, 9443559, 8269960, -4308926, 12432320, 6436546, -11148124, 7472170, -7987029,
- -9883257, 8927626, -8338679, 8332237, 765041, 202937, 4502737, -2269890, -7794829, -5089536,
- 2359011, -774168, -3223910, 7032472, -683437, 1381906, -1546725, 556735, 6046240, -4307852,
- 588947, 7088307, 5112622, -5028870, -2915746, -7862475, -830002, 1399086, 2770791, -1585380,
- 4708358, -1860795, 1837709, 667331, -416612, 578747, 3235184, -4796405, -958851, 2470680,
- -214748, -1047435, 2937758, -330176, -1722282, -241592, -44560, 234076, 809601, -2017561,
- -1447941, -2598992, 1324461, 202937, -742493, -1197759, -479963, 1736241, 231928, 577136,
- 1914482, -105764, 1571958, -274341, -799401, -1023813,
- },
- {
- -3375308, 355566368, -24724516, -39154532, 17875118, 26844, 24898462, 10633265, 12715251, -6997576,
- -10895795, 5532992, 13044889, 13384729, 9292162, -8063801, 21888764, 7200513, -5818607, -15216532,
- -4167192, -7398081, -5878737, -474594, -7579007, -1215476, 29528, 11354283, -6646999, -1941325,
- -5029944, 1538135, -4207458, -6878390, 3748433, -3790309, 3454764, 9848360, -4550518, -1324997,
- -2586644, 5418638, 7406671, 3750043, 853625, -10285910, -515396, 9159555, 2783139, 1239635,
- -3384434, 7106024, 1153736, 2939368, 1100585, 8269960, -951872, -21475, -1462973, -4381941,
- 774705, 579284, 5012764, 1535451, -1858647, 2080375, -2259153, 1141924, 1234803, -1117228,
- 397821, 348966, -2568391, -49392, -1211181, -547608, -2101850, 338229, 811749, 465467,
- 176094, 1049583, 425202, 821949, 398895, -288300, -966368, 754304, 2218351, 1136556,
- -30602, 1213328, 1679869, 1822140, -2228014, -109522,
- },
- {
- 4533338, 17812840, -23677080, -8805220, 13264470, -9164923, -9994389, -3302830, 5378373, -1181116,
- 9902584, 481036, 8975945, -8231305, 11252277, 8185671, 6407555, -1745904, -9553618, 1582159,
- 1224066, 6521908, -10246181, 4912369, 1469953, -6664179, -3263102, 10048076, 9027484, -8783208,
- 12407624, -3006477, 17167522, 944893, 3905736, -2367601, -1753957, -1796370, 490163, -3306051,
- 2210298, 1931662, -7025493, -2104534, -1066763, -3781182, -8938364, 2208687, -2059974, 2043331,
- 3042984, -170188, -1828046, 2639794, 1894081, 819802, -586263, -496069, -260919, 1367410,
- 5534066, -1829119, 118648, -2091112, 2179696, 3264175, -1492501, -3436511, -60130, -4686346,
- 879395, 1677185, 1500554, -193274, 651224, -55298, -566936, -588947, 3640522, 3137474,
- -652835, -1834488, -1278290, 2114198, -1168231, -1911797, -1625108, -290984, 986232, -2097555,
- 1562294, -168041, 338229, 29528, -870268, -181462,
- },
- {
- 32030256, -93479960, -34876208, 17664126, 150861, -49932216, -12070469, 6490770, 2964064, -263067,
- 1038845, -2549063, -10698227, -11667279, -7234336, -6118718, -9375914, 9815074, -21859236, 5346698,
- 9307194, 10839424, -4532801, 2639794, 8501351, 8693551, 8141111, -5463736, 4567698, 304406,
- 7886097, 4725538, -15149423, -13874892, -1214939, -5079336, -170725, 6004901, 3416110, 1167694,
- -10437844, -507343, 3426310, -833761, 3751117, -6812355, 9241696, -4261145, -1602023, -5578626,
- 693637, -5189931, -649614, -1499481, 1218160, -3645890, 1998770, -3836480, 1612223, 2224793,
- -20401, 150861, -2612414, 5754183, 1712618, -1496796, -2537252, 3204046, -890669, 3154117,
- 1960116, -2338610, -1162326, 39728, 1198296, 443992, 879931, 830002, 1844152, 3003793,
- 48855, -466004, -1588601, -900869, 709743, 2226941, 1069984, 56371, 528818, 702227,
- 2047089, 1556389, 1597191, 86436, -333397, -562104,
- },
- {
- -98247, 48474076, -5539971, 2511482, -8504572, -1909113, -4010963, -415001, 2780455, -6764037,
- 11035918, 3235721, 2969433, -28533078, 991064, 8706972, -7526394, -4847408, -29956860, 11497091,
- 1547262, -22857280, -16891570, -3954591, -7612293, -3111167, -8570070, -3051038, -6612102, -18925236,
- 9168681, -7898982, 524523, 1145683, 15025406, -1449015, -1577327, -6780680, 8256538, 1125818,
- 5247377, -3001645, 5410048, 1084479, 4480188, -103079, 5157182, -6352794, 5149129, 6965363,
- 6055367, -687195, 2714419, -5007395, -2522757, -1501091, -296890, -326418, -4697084, -1047435,
- -4832, -1767916, -2223183, 5166309, -877784, -5170067, -372588, -1583769, -616328, 3331821,
- -2459406, -154082, 376347, -1352915, -921807, -235149, -1430224, 1244467, -427886, -2250026,
- -3542811, -205622, -737124, 2641942, -2654827, 1630477, -699543, -1051730, 1415192, 1319092,
- 1654636, -59593, -2528125, 4111358, -369367, -1073205,
- },
- {
- 19073950, -100168304, 11385958, -3135326, 7845832, 22010096, 11546483, -6055904, 2572149, -9468255,
- 1956358, 10952703, -6523519, -11389180, -22137336, -3098819, -22262426, 10986526, 7870528, 3237869,
- 2605435, 818728, 4122632, -1388348, 3644280, 749472, -3089155, -2099165, 9607842, 7548405,
- -10893648, -5483063, 3937411, -1281511, 2381559, 874026, -1511292, 6622303, -2821794, 5272609,
- 4858145, -2479807, 5994701, 2563022, 1306744, 1337346, 2201708, 568546, -1283122, 3890704,
- -7165079, -972273, -3886409, -5909338, 4199941, -4614943, -2607582, 4578435, -3506304, -634045,
- -2938295, 3430068, -148713, 3623342, 16106, -762894, -3478924, -2602213, -3920232, 4080756,
- -2674691, 2964601, 1679869, 2333241, 2731599, -1721745, 90194, -28991, -1875290, 2168959,
- -3332358, 572841, -1095217, -172336, 497679, -66035, 1528472, 1161789, -2426657, 2305324,
- -4295, 21475, 714575, 852551, 857920, -551903,
- },
- {
- -4978941, -46925204, 3997004, -2645163, -8931921, -16473884, -8883603, 5515275, 399969, 1595580,
- -12219719, 8581345, 3915937, -17544942, 123628488, 7120519, 5487358, 1074279, 27354646, -32851668,
- 4976794, 11405286, -14387604, 8729521, 14305462, -11622718, -1485522, 3432216, -6247030, 13741748,
- 7373385, 8145943, -5735392, -279173, 6726456, -9125195, -2516314, -9130564, 11105712, 9529996,
- -2246805, 1796370, -378494, 1777043, -2523293, 7432978, -2355253, -6096169, -2163590, 432718,
- 2259690, 7412577, -1782948, -39728, 2851322, 547071, 3476776, -1329829, -781684, -471910,
- 1891396, -209917, -325881, 2941516, 1177358, 1829119, -6590628, -1980517, -419833, 1697586,
- -1624035, -1001801, -2887829, -1823751, 1754494, 79994, 2769717, -700080, 5823976, 1312649,
- -1590212, -113817, -1698123, -471910, -258235, 3215320, -84826, -1946157, 2496987, 311922,
- -2523293, -864362, 1697049, 524523, -106837, -381715,
- },
- {
- 26540214, -15953119, -7898445, 9779104, -951335, 17170206, -10010495, -16900160, -11344619, -3277060,
- -7234873, -17721036, -6807523, 12345347, -28626494, -15130096, 14487998, 13101798, -3232500, 4278861,
- 5338108, 14449344, 5788542, 8424578, 3130494, 5974300, 6453189, -16029355, 9336722, -3980898,
- -11719892, -11833709, -198642, -5988258, 1156420, 3732864, 4316442, -4955319, 690953, 8783208,
- -6551973, -8345122, 4244502, 1056562, 5267241, 10425496, -1547799, 1785096, -341450, 1954747,
- 2021856, 7332046, -1478543, 5851893, -4597226, 1060857, 878858, 457414, 5928129, 2728915,
- -716186, -657667, 6364068, 683437, 4556424, 5008469, 4754529, -403727, -3798362, -1302986,
- 3177739, -1649268, 565325, 1152662, -2717104, 473520, 619549, 1312649, 174483, 545998,
- -388158, -206158, 2175938, 114354, 369367, -337692, -1199907, 2062121, -22012, -900869,
- 1051193, 1495186, -1169842, -309775, 431107, -590558,
- },
- },
- {
- {
- -637803, 40569724, 16386374, -18139258, -1770063, 3449396, 1494112, -3114388, 3754875, -29995514,
- -20688858, 1269700, 11150809, -20604032, -7275675, 10507637, -5566278, -10549513, 24464670, 12707198,
- 6455336, 999117, 17194364, -3349538, -449898, 9689983, -5613523, -1700807, -10985453, 4593468,
- 6177774, -10060961, 4760435, -16337519, 7145752, 14052059, 19247896, -5653251, -857383, 2559801,
- -310311, -1040456, 877247, -3876745, 8044474, 5501853, 3331284, -4332549, -8668318, 2477123,
- 1492501, -3281892, 1205812, -1735704, 4333085, 3248069, -3925063, 1375463, -4503810, 4843650,
- 2119566, -1912334, 2005750, -1650878, -4054449, -3164854, -2493229, -3062849, -2369748, 5901822,
- -129923, -4772246, -1542430, -2266132, -3427384, 458488, -1579474, 1192927, -561030, -1837709,
- 2295123, -470299, -343061, 1677185, 2100239, 366146, -993748, -492311, -692027, 132070,
- -1607928, 859530, 935229, 285615, 1611, -601295,
- },
- {
- 25379498, -162592960, -33809444, -37413996, 19268298, -4780299, -1725503, -1378148, -1527935, -12283070,
- 19219442, -19396610, 10536092, -1368484, -12368432, -16702591, 1801739, 4773856, 8517994, -2193118,
- -490163, -11311870, 537, -1585380, 5109938, -7143068, -7458211, -6150930, 7297150, 3677029,
- 3684545, -4774930, 7312182, -2484639, 3744138, -12138114, -7727720, -8609799, 4584341, 1832877,
- -1824824, 9909026, 3819837, 6052683, 1294396, 6165426, -5590974, -3686156, -8619999, -6852084,
- 4473746, 6027987, 2797098, 4350265, -4039417, -1734630, -458488, -1962800, -86973, 24159,
- -2615635, 5424544, -3462281, -1845225, 511101, -553514, -3766150, 482647, 1387274, 2243047,
- -1954210, -54224, -2037425, -2614025, 22549, -166967, 290984, -185220, -34360, 108985,
- 933082, -32212, -194884, 1967632, 2030983, 833761, 1455994, 540092, -49929, -762357,
- -421444, -324270, -240518, 1683627, -753767, 46171,
- },
- {
- 3485366, 118116968, -28417652, 22576496, -1016834, 2081985, -449898, 9308805, 11151883, -13085155,
- 8007967, 17381196, -12420509, 13518410, 20236812, 3923990, 12419435, -10021769, -7902203, 2013266,
- -11993159, -10766946, 9938554, 8884140, -1806034, -12413529, 1803349, -2246805, 8418673, 3628711,
- 1588064, 462783, 2192581, -12336220, -3901441, 5206574, -752156, -722628, 5840619, 1632625,
- 6652368, 5099737, -1760400, -3769371, -1823751, 336618, -2593087, 1065689, -497142, 1786706,
- 5410048, 3032247, 4563940, -4680978, 3260954, 213675, 3078418, -1016297, 5429913, 1668595,
- -3187940, 54761, 578747, -70330, 3098282, 2129767, -2713346, 2245731, -2666638, -1459752,
- -2110977, 710280, 1568200, 61203, 1058710, 223875, 2315524, 685584, 40265, 646393,
- 451508, 8590, 563714, 1857037, -46171, -1778653, 991601, 398358, 66035, -262530,
- 598611, -615791, -278636, 1126355, 87510, -912681,
- },
- {
- 1765232, 16796006, -4440996, 5908265, -3138547, 1335198, 202937, 579284, -2873870, 624918,
- -3886946, 7105487, -5765457, -5184026, 216359, -491237, 12024835, -2731599, 17401596, 6648073,
- 11027865, -9789841, -8519068, 9147743, -3628711, -7743826, -13504988, 1625645, -1648194, -9112847,
- -15178951, -7985955, -3022583, -9674951, -3256122, 2124935, 15205795, -11526618, -259846, 1582159,
- 2482491, -4687957, -8091182, 1874753, 867583, -6782290, 1230508, -1286343, -1109712, -2491081,
- 3322694, -1913408, 6538551, 113817, -4682588, -1154273, 291521, 2418604, 979789, 1229971,
- 2786360, 2604898, 1341640, 694711, -1239635, 1941325, 4230006, 1107565, -2014877, 1214402,
- 224949, -1149978, -159451, -2642479, 1879585, -294742, -6442, -184684, 602906, 936840,
- 407485, -420907, 2092723, -1060857, 83215, -628676, 550830, -361314, -532039, 1358820,
- -266825, 706522, 89121, -945430, 937377, -1959042,
- },
- {
- -37385544, 79473536, 9088151, -50122268, 4188130, 2990371, -1393180, -6028524, 4977330, -25198036,
- 232465, 5590974, 12241194, -4282083, -12163884, 4068945, 5710159, -24489366, 4637491, 8236674,
- -13699335, 8125005, -14289356, -4099010, -8108899, -8242579, 6752226, 13031468, -3044058, -5368709,
- 5327370, -2291902, -1677722, -6587943, -603980, 2594160, -25567940, -9320079, 4642323, -7940321,
- 5869073, 2481954, 11621645, -3182571, -595390, 1262720, -4068408, 2705830, -2270427, 6201396,
- 1744294, -2829310, 3463354, 3432753, 6230924, -1948841, 1708323, -2774012, 4854387, -2960843,
- 1823214, -1558536, 1116155, 2770791, -1595580, 1409286, -3342558, -1561758, -28991, -3361886,
- 578210, 105764, -841277, 1086627, -2639258, 769336, 2099702, 1795833, -1130113, -55298,
- -1184337, 278636, 502511, -291521, -1500554, -338229, -77309, 383326, -100395, 40802,
- -222265, -159988, -771484, -236223, -963683, 636729,
- },
- {
- -182536, -4128001, 711891, -1401233, -2771865, -104153, -408559, 584652, 6105833, 1733556,
- -3219615, -5218386, 1564442, -1830730, -39195872, 6696928, -18199924, -413391, -15273441, 35305168,
- -1093069, 7355132, 2436320, 11614665, -17035988, -15269682, -12408697, -17272210, -12052215, 587874,
- -3382824, 3416647, 5943161, 8510478, 405338, -514322, -4775467, 2586107, 9893457, 1457605,
- -770947, -675921, -656056, 204548, 3506841, -3696893, 5391258, -7348152, -1180579, 82141,
- 13422, -186831, 6744173, 526134, -559956, -2292439, -920734, -282931, -6123550, -1083406,
- 2244121, 2065879, 595927, -1868311, 128849, -1701344, 1312649, -1129576, -1838246, 2479270,
- 68719, -52613, 652835, -402116, -1197222, -154082, 1168768, -763967, 32212, -1264331,
- 116501, 358093, 2493766, -73551, 1248762, 996969, 1355599, -1865090, -45097, 158377,
- -66035, 113280, -105764, 968515, 479426, 190052,
- },
- {
- -64422360, 20347408, 17789754, -34879968, -7976291, -1183800, -2106145, 1301375, 7064148, -10376641,
- -1266479, 29773250, 15324443, 8325794, -16003048, -8075613, 16240882, 4744865, 17450452, 4725001,
- 2886218, -9592273, 2655364, -7201587, 13455059, -4076998, -6733972, -7821136, 8604430, 1423245,
- -3059091, 6738267, -365609, -8462696, 3426847, 1097901, 3183645, 537945, 1460826, -2943663,
- 2437931, 2780991, 3633542, -598074, 8443369, -1074279, -531502, -2786897, -273804, 264141,
- 8258685, 2280091, 4922570, 824097, 1627256, 1466731, 4409858, 2100776, -4968204, 310311,
- -344671, -2265059, 1027571, -2010582, -635118, -1473174, -549219, 1791001, 48318, -532576,
- 75699, 727997, -25770, -297963, 671626, -4606353, -2457795, 395137, -948651, -1293322,
- -46171, 227633, 133681, -803159, -1259499, -550830, 895501, 1228361, 1755031, 1341640,
- 208306, 1033477, 1763621, -853625, 17180, -441308,
- },
- {
- -613643, -6563784, -2492692, -3087545, 44023, 1794223, 273267, 6185827, 2715493, -740345,
- 1231582, -3642132, -7716983, 7037304, -12233141, 3867081, 3075197, 8007967, 16786342, 17892296,
- -1955821, 21119964, 15207942, -13992467, -23362474, 1427540, -11002632, -12948790, 28886876, 7614440,
- -11272142, 4988605, -10565083, 16682727, 7296613, -7316477, -1227824, 9106404, 2625836, -6248641,
- 4252555, 6797860, -2624762, 2595771, -3371013, -6126234, -1218697, 324807, -337155, -3759707,
- -645856, -1502702, -356482, -5544266, -2206003, -1446330, 2993592, 4355097, 6718940, -1088774,
- 2738579, -2572149, 3600256, 1820529, 365072, 1788317, 2156074, -4055523, 1731409, 5138929,
- 1225139, 756988, 4651450, 1853278, 238371, -471910, -222265, 1712618, 2039573, -1471026,
- -300648, -2735357, 1374926, 796180, 197569, -346282, -1468879, -144418, 141197, 1029718,
- 1678795, -1440425, 978179, -416075, -1025423, 311385,
- },
- {
- -25052544, 372542784, 22011170, -44379896, -5625871, -3543348, 9294309, -12797929, -3046206, 380105,
- 540092, 5029407, 16205985, 12467753, 6872485, -9174050, 15533286, 374736, 12598213, -7123740,
- -1384053, 3787624, -863288, 3522947, 826244, 2364380, -816581, 6614787, -8483097, 2463164,
- 4151086, 5175973, -401043, 738734, 6260452, -1570884, 540092, 4343823, 3566970, 3658775,
- -4012573, 5144297, 6462315, 569083, 785442, -7360500, -3405372, 2746095, -430570, 3100967,
- -1897839, 5063767, -2327872, -907849, -2094870, 2427730, -4936528, 1488206, 399432, -3905199,
- 659278, -3512747, 3173444, 3652333, -4423817, -790274, -2539936, 724239, -324270, -2442763,
- 687732, 900869, -2789045, 1385664, 482647, -452045, -1789928, 1241782, 206695, 449898,
- -557272, -204548, -1226213, 726386, 879931, 383863, 955630, 1571958, 653909, 201327,
- 600759, 97174, -248034, 489626, -1484448, 1359894,
- },
- {
- -3349001, 43057584, 7294465, -15411416, -1020055, -2540473, 9465034, 1748052, 4659503, 1538135,
- 11200201, -5164162, -5972689, -20557324, 4454955, 603980, -9177271, -5913096, 5760625, -755377,
- -16836272, 3374234, -9038759, 13225278, 9013526, -4773320, -856309, 9936407, 13400835, -10009958,
- 2518462, -1078037, 15864535, -6329708, 5927592, 1402307, 3651259, 4671851, 8076686, 6581501,
- -220117, -111132, -1068910, 5442261, 9048959, 6138045, -2708514, 2927557, -2634963, 5935108,
- 5880347, 1902671, 24696, 3243237, 957778, -1465121, -1880122, 1142998, 3732327, 2205466,
- 6886980, -710817, 59593, -2592013, 1352915, 670552, 84826, 492848, 3622805, -1398012,
- 2197950, 1684164, 967978, -1275605, -222801, -1207423, -1116692, 161598, 3641059, 859530,
- -2669859, -3000572, -1150514, 1229434, -786516, -417686, -328565, -648003, 734976, -1392106,
- 2397129, -20938, 235686, -331786, -498753, 169651,
- },
- {
- -33268816, -118295744, 2265059, 2148558, 1261647, -19334332, 15848429, 12715251, 3586835, 7621420,
- -4808216, 5008469, 4385699, -10466835, -11232950, -4451734, -5093295, 2517925, -21910776, 4357781,
- -2641405, 5099737, -2364916, -2492692, 4532264, -2228014, -279173, -12182675, -8455717, 2121177,
- 8566849, 11724187, 817118, -1974611, 7289633, -987843, -2392297, 5105106, 8276402, 7422241,
- -1921998, 3745212, 1455457, -4396436, -1603633, -11211475, 6608881, -6447283, 100395, -92879,
- 3081639, -3151969, 3420942, 4342749, 5988258, -5906654, -363998, -1397475, 2017024, -759136,
- -1607928, 1330366, 254477, 7664906, 784368, 517544, -753767, 1147830, -1999844, 2406792,
- -570694, -1620813, 517544, 726923, 189515, 490700, 1961726, 964220, 530965, 408022,
- -2276333, 583042, 520765, -334471, 342524, 310311, -149250, -147640, 1202054, 499290,
- 351650, -228170, -578210, -964220, -1207423, -100932,
- },
- {
- 1236414, 56559352, -1621350, 1849520, -2146410, 3714073, -4209068, 622233, 5723581, -4380867,
- 6422050, -2098629, 18620830, -9229885, 14618458, 11500312, -10039486, -1420560, -11342472, 16959216,
- -9522479, -11707007, -10471130, -7846369, 2254858, -3872450, -2095944, 8589398, 7032472, -14181982,
- 2985002, -8433705, 248034, -9981504, 447213, -9387188, -13051869, -4341675, 9599789, -4041564,
- 501974, -4714264, 6087580, -272194, 1824287, -4090420, 657130, -5864241, 1602023, 5787469,
- 7779797, -1537598, 3487514, -1787780, -428960, -4824859, -4271345, -1146756, -5099200, 1773822,
- 4676683, -299574, -2773475, 4673998, -4266513, -5822365, 1472637, -1349157, 932008, 3583077,
- -3664144, -1713692, -2183991, -3915400, 1021665, 3901441, -183610, 1730872, 2148021, 773631,
- -600759, 360240, -2484102, 3958886, -1155346, 1781338, -938987, -2073396, 548145, 153008,
- -261456, -291521, -2659122, 2007897, -1236951, 226560,
- },
- {
- 4893042, -121569584, 13982803, -5499706, -1433982, 7233799, 1343788, -9584220, -8675834, -27401354,
- 7735773, 17297444, -3935801, -17603460, -13586592, 14293114, -26367342, 2895882, -438624, -6722161,
- -5324149, -4647155, 11626476, -4923643, -7199976, -2075543, 5763846, 14237817, 10099079, -1336809,
- -9491341, -1649268, 6206228, 1224603, 16337519, 11873974, 4377109, 5599027, -5627481, 13325673,
- 12661564, 809064, -749472, -597537, 385473, 2568927, -2633889, -2277407, -3085934, 2772938,
- -4943508, 4277251, -1499481, -6910066, 8753143, -2096481, -527207, 9198209, 90194, 4625143,
- 157840, 3440806, -705448, 3579318, 402653, -399969, -828929, 1757715, -1282585, 5141076,
- -2585570, -173409, -2736431, -1337882, 1111860, 763430, 1309428, -1125818, -3132105, 1987496,
- -3302830, -76236, -821413, -1636919, 977642, 425739, 253940, 2056753, -743029, 1267552,
- 16106, 1386201, -203474, -538482, 1165010, -365072,
- },
- {
- 4270808, -46721192, -5454072, 6059662, 4709432, -372052, 584652, 10612864, 13078175, 2612951,
- -16551193, 5767604, 705985, -29270202, 101112120, 6651831, 10990284, -1118302, 34559456, -35822176,
- -2192044, 20823612, -6861211, 9371082, 15634755, -10386305, 5639292, 259846, -14700599, 6417218,
- 4822175, 2833068, -9938554, -7023882, 5486821, -9364639, 1909650, -7272990, -139050, -5163088,
- -4873714, 4711579, -3449396, 3210488, -2962991, 3227668, 114354, 776852, -1733556, -4484483,
- 1119913, 4991826, -2979634, -2860985, -470299, -2851322, 492848, 1509681, 3149285, -319975,
- 490700, 1868848, 917512, -2063732, -270046, 2850248, -7472170, 128849, 3212636, 2879239,
- -2003065, -3040300, -3019899, 755914, 1323387, -1384590, 317291, -5856725, 1690070, 856846,
- 432718, 3776887, -275952, -1624571, -690416, 1533840, -1304596, -2114735, 1051193, 1425929,
- -568009, -1330366, -671089, -1113470, -4295, 969589,
- },
- {
- -19438486, -74715248, -11500312, 20145544, 530965, 1404991, -8985072, -4010426, 591095, -691490,
- 4017942, 4833449, 5346698, -16683800, -55771760, -126702, 6541235, 1640678, -7940321, -8366597,
- -11805791, 296890, -742493, 5566815, -3425773, -7701950, -1986422, -16401943, 20337208, 1674500,
- -7905424, -5421860, 763967, -16112033, 2145873, 9118752, 7032472, 1612223, 235686, 7595113,
- 4984310, -7714835, -3250217, -1887101, -3622805, 1223529, -5187247, 7430294, 7388418, 1820529,
- -2157684, 8165807, -2494839, 5200132, -5700496, -903554, -2169495, -4347581, 1426466, 1596117,
- -3276523, -2349884, 1741609, -4174708, 4001836, 1219771, 1335735, 978179, -4242891, -4080219,
- 4952098, 1585380, -1740536, -3700114, -1822677, -1398549, -1120987, 1898912, -1079111, 1384590,
- 412317, -2610803, 680215, -67646, 970663, 340913, -884763, 1725503, 1059246, 898722,
- 841277, 1500017, -1755031, -1629403, 1284195, 122943,
- },
- },
- {
- {
- 1306207, 64990908, -7233262, -11133629, -1515050, 645319, 3863860, -8480950, -1098438, -18671296,
- -17962090, 8133595, 3762391, -20178294, -913754, -90194, -1875290, -11754252, 24192478, -3282429,
- 22509924, 16530792, 8617852, -7959648, -2485176, 17886928, -8189429, 254477, -7431367, -4440996,
- -4767414, 5597416, -286152, -10458782, 2652142, 16199006, 10501195, -4351876, 4526359, 3828963,
- 1016834, -3520800, -1159641, -1437740, 13999983, 4554813, 1436130, -4879620, -2961917, -870805,
- 1357747, -621160, -5963025, 4502200, 2194192, -235686, -3286187, 2605972, 673773, -84826,
- 2120640, 1470489, -1805497, -2314987, -2908767, -198642, -5586679, -2246268, -1207960, 1209033,
- 1440962, -3221762, -1049046, -2774012, -1925756, -1155883, -781147, -250719, 2485712, -3216931,
- 1163399, 1322850, -408559, 821949, 2425046, -991064, -905164, 179852, -1174137, -680215,
- -416612, -20401, 972273, -636192, -264677, -460635,
- },
- {
- -24275692, -196462000, 34831648, -25601226, 3673271, 5316096, -11526618, -3203509, 2982855, 7374459,
- -16295643, 5554467, -2437931, 2761664, -2091112, -41475964, 15844134, 11458436, -12722230, 13738527,
- -5743445, 410169, -13560822, 5604396, -9440875, 6410776, -6731825, -2282238, 4213363, 3271155,
- -2794950, 3397856, -4748623, 5676873, 4870493, -12327093, -12895102, -7526394, 4704063, 8361765,
- 1799591, 7258495, 341450, 12359842, 440234, -1166084, -2533494, -10948945, -2047626, -4085588,
- -1423245, 7662222, 573378, 2874944, 117038, -322123, -508954, -2631741, -5422933, 119722,
- 1461363, 1895154, 660888, -2586107, -32212, -398358, -2756832, -534187, 4639639, -1751273,
- -1314260, 369367, -96100, -3233574, -2848100, 3202972, -2027761, 822486, 569620, -15032,
- 1296006, 142808, 90194, 1727651, 680752, 754304, 2336462, 949188, -268972, -251256,
- -488016, -1338419, 732292, 1039919, -1040456, -124017,
- },
- {
- -5016522, 47702592, 37516540, 17787608, -1028108, 4547297, -3433290, 15423228, -1868848, 6796786,
- 11705933, -1509681, -11843372, 14727443, 23875724, 8064338, 2638184, 1330366, -14046691, -10577431,
- -3855807, -4281546, 1930588, 15110769, -9214315, 241592, -8290361, 11078868, -592706, 9383430,
- -8520141, 8665097, -2312840, -13747653, -3946001, 3730716, -1635846, -801011, 8005819, 1473174,
- 8979166, 3899830, -5084705, 1221918, -4758287, -3999688, 7721278, -2785286, -1868311, 3034395,
- 57445, 7477538, 842350, -288837, -2175938, 2499134, 3823595, 742493, -1393717, 3511136,
- 386547, -229781, -644245, 297963, 4554276, 51540, 585726, -2066416, -831076, -839129,
- -2762201, 344134, 1521492, 1545115, -1741072, 1742146, 542777, 2470680, -476205, -23622,
- 173946, -404801, 690416, 1135482, 783832, -941672, -345745, 1442035, 1068910, -974421,
- 1305670, -1114544, -250182, 921807, -285078, -134218,
- },
- {
- -1809255, 7401303, 4627291, 1889786, 887985, 252329, 635655, -1528472, -1727651, -3144990,
- -391379, 1016834, 7424388, -15554224, -11712376, 11433740, 12586402, -2911988, 8105140, 2254321,
- 12048457, -11566884, 210453, -4097399, -5826123, -4902169, 5326297, -9794673, -3653944, -17481590,
- -4010963, -2284923, -14444512, -791348, -3486977, 8083666, -9200357, -8054675, 12910135, -110059,
- -3827890, 5659693, -11400454, 4173098, -5983963, -2079838, -4797479, 3186329, -995359, -4463008,
- -811749, 3644280, 252866, 2581275, -4121558, 403190, -1362042, 2769180, 1353989, -1091459,
- 3361886, 3429532, -366683, 2710661, -465467, 571768, 5171141, 1404454, -1993939, 1899986,
- 145492, 348966, -2405182, -921271, 163209, 977105, 1259499, -2245731, 1266479, 833224,
- -181999, 1813550, 991601, -1053341, 244813, -1756642, 1619740, -649614, -606664, 525060,
- 130460, 996432, 640487, -209380, 68719, -1434519,
- },
- {
- 51761336, -5164162, -20363514, -35012036, -1324461, 2677375, -7271917, 2472828, -3840238, -7206955,
- -20725902, 15507516, 5740224, 10219338, -1682554, -12091407, 3237332, -16980690, -5280663, 1607928,
- 2436320, -9510668, 4778688, -18352396, 6888591, -9617506, -3382287, 2844342, 4606890, -1572495,
- 6708739, -4627828, -2844879, -4005594, 1061931, -5343476, -32042066, 2767033, 5613523, -17507898,
- 16179142, -3573413, 15323370, -8491150, 2350958, -1727114, -2811593, 243739, 877784, 7162395,
- 636729, 3736085, 1211181, 803159, 5588826, -3660923, 1893544, -431644, 2878165, 2136209,
- -2188286, -1784559, 782221, 1148367, 3304441, -250719, -2789045, -1816771, -945967, -1118839,
- 1776506, -1609539, -886374, 1010928, -1261647, -867583, 2193655, -1058710, 1409286, 490700,
- -939524, 537408, -93952, -689879, -1086090, -827318, 1633161, -179315, -661425, 396211,
- 296353, -177704, -1060320, -878858, 451508, -410706,
- },
- {
- -1553168, 1129040, -1867237, 1110249, -4110284, 515396, -12348, 155693, 2940442, 1162862,
- 1119913, -9854802, 3016141, -12217034, -31251256, 6316823, -13201656, -3626563, -6487548, 27311160,
- -797790, -7894150, 8240969, 6941204, -17031156, -16815334, -1860795, -20524038, -8167954, -14566382,
- -6861747, 9108015, 11082626, 12567611, -1919314, 5737003, -5689221, -4547297, 4087198, 4854924,
- 4059281, -4483409, -3346853, 662499, 856846, 420370, -3075734, 2247342, 2065879, -1180579,
- -1503239, 2499671, -2155000, 1779727, 356482, -1203128, -2400887, -2689187, -2412698, -821413,
- 1078037, -807991, 1088774, -1086090, -53687, -1344325, 213675, 1736241, -3141769, -553514,
- 5407364, -1074816, -1142461, 586800, 456877, -1735167, 736587, -1200980, -442382, -1537061,
- 926639, 1101659, 1525250, 899259, 1061394, 1768453, -132607, -1214402, 515933, 535260,
- -196495, -1097901, 1038845, 191663, 552977, -312459,
- },
- {
- 75001400, -117714320, -28039694, -25555056, -618475, -5217849, 5805722, 5846524, -15950435, 4763119,
- -6824166, 38668128, 4368519, 11546483, -16813186, 255014, 5076652, 18013092, 2489471, 11684995,
- -2776696, -11959336, 12768938, -739808, 4270271, -3427921, -1653026, -9934796, 11707007, -10537165,
- 891743, 11644730, -3955128, -1230508, 5810554, 1178969, -3045669, 3950833, 1996086, -3140158,
- 2273112, 2467996, 3026878, 1224603, 5965173, 3911105, -11291469, 5496485, -1433445, -1742146,
- 4479651, 5110474, 4800163, -1360431, 3366181, 3674882, 471373, 3120831, -1157494, -2461553,
- -465467, -5062693, 5813775, -3229279, 1263257, -231391, 1310502, -2051921, 590558, 1642288,
- -301721, -207769, 726386, -483721, 188979, -4277788, -645319, -948114, -853088, -2039573,
- -160524, -982474, 1452773, -1276679, -2748242, 686658, 2088428, 1370632, 554051, 1220308,
- 1130650, 395137, 1446867, -2135136, 491237, -186294,
- },
- {
- -1436130, 1074816, -3661460, -3412352, -1875827, 1324461, 2126009, -1464584, 12989055, -2500208,
- -2926483, 2572686, -9900436, 15443629, -25016574, 6084895, 3284039, 17936320, 15963857, 8286603,
- 4219806, 28088550, 6010807, -18168248, -13711683, -11163157, -5868536, 4859219, 17632988, 5065914,
- 8090108, -7659538, -8327942, 15879568, 2724620, 3164854, 104153, 6516539, 4124779, -2040646,
- -721555, 856846, 3336116, -554051, 1050120, -7504382, 1851131, -6084895, -6896107, 457414,
- 1483911, -1145146, -6149857, 1189169, -5748277, 3010235, 3135326, 3770981, 5142687, 2381559,
- -1923072, 2455111, 1021129, -972273, 1040456, 1451699, 525060, -2401424, 3333968, 3860639,
- 632434, 2313377, 2625299, 2311229, 562104, -318901, 42950, 1970853, 650688, 498216,
- -610959, -1147293, 868120, -105764, 200790, -785442, 127238, -1364189, 1444183, 1658394,
- -439160, -805843, 572304, -1360968, -633508, 1314797,
- },
- {
- 53469660, 326865280, -38589744, -22123914, -8777839, 30602, -3828963, -7624641, -847719, -4115653,
- 2377801, -434329, 12147241, 5261872, 10375567, 4175245, 14394046, -8880382, 12502650, -6320045,
- -3646964, 8236137, 5107253, 3616363, 2264522, 633508, -1626182, -1794223, -1634772, -3348464,
- 12659953, 4318590, -6106370, 3089155, 5712307, -989453, -4070019, 5344550, 8728447, 1905355,
- -186831, -1427003, 4413616, 4201015, -6172405, -1963337, 380105, -2659122, -4363687, 3584150,
- 8229158, -3197603, -834297, -1355599, -3180960, -2137283, -1013075, 1513976, -1793149, -615791,
- 316754, -2429341, -763967, 3073049, -5277441, -180389, 571231, -2724620, 192737, -73551,
- 608275, -442382, -1666447, 361851, 1336272, -3392487, 660888, 2252710, -284542, 811749,
- -1949378, 148713, -884763, 321049, -381178, 1163399, 1612760, 1256815, 877247, -1038308,
- 871342, 134218, -520765, -705448, -493921, 1613834,
- },
- {
- 2250026, 68265824, -9475772, -12265353, -5353677, 11544872, -4465692, 10525354, -6201933, 3106335,
- -648003, -2440078, -5298916, -12103218, -5786395, -8215199, -4924717, -3364033, 19765976, -19729470,
- -28358058, 2623151, 2875481, 15231565, 3257196, -1586990, -17180, 7104413, 8150238, -3685082,
- -10035191, 10714333, 6261526, -1959042, 5849746, -429497, 2750390, 12670690, -6339909, 8827768,
- 756988, 3103114, 719407, 8946954, 8818642, -450972, 7053947, -2966749, 4288525, 6154688,
- 907849, 895501, 6915971, -3075197, -574989, 598074, -1593433, -594853, 7001871, 1752884,
- -76236, 2210298, 2777233, -1883343, 2122251, -2100239, 2896419, -548682, 2371359, 45634,
- 4224637, 40802, -683974, -1362578, -516470, -801011, -312459, 508417, 1938104, -358630,
- -1210107, -3460133, 418222, -1126355, 2088965, -1774895, 299574, -789200, -483184, 899796,
- 609885, 605054, -261993, 729071, -335007, -661962,
- },
- {
- 34337728, -160682784, -30618822, -1815697, -13637058, 39375188, -1365800, 9269613, -4104378, 10758356,
- -5429913, 11411728, -8435316, 12220793, -18758806, -700617, -1111323, -1889249, -12913893, 3400540,
- -3943854, -6023155, 7151121, -5752572, 7480223, -7989713, -6529961, -3894999, -11931956, 5233418,
- 8013872, 9016210, 328565, 4989142, 4282620, 1407676, -497679, 2750390, 4262755, 9620727,
- 5298916, -3864934, 1085553, -6576669, -2054068, -9401683, 6386080, -3125126, -3102577, 3496640,
- -16643, -1542967, 2247342, 7951058, -96637, -426812, -4213363, 2878702, 3439195, -5801427,
- -1991254, 1284732, 2698313, 3701725, 278099, 3738769, -2340220, -195958, 11274, 1992865,
- -799938, 292595, -1409823, 3434363, -1806034, 118648, 2245194, -1155883, 2028298, -554588,
- -1294933, 414464, 788663, 99321, -406948, -132607, 257698, -259309, 1159641, 421981,
- -648540, -359704, -1156420, -674847, -685047, -353798,
- },
- {
- -1953673, 50078244, 8783745, 1425929, 4249334, -3684008, -887985, 2876554, 1785633, -1731409,
- 2025614, -3175055, 19359566, -19123878, 11986717, 2765422, -368293, 8675297, -3656628, 8039642,
- -14620069, -4457639, 11201812, -6889665, -13537737, 937377, 4331475, -3806415, -3692061, 5190468,
- -10552198, 5157719, -212601, -10983842, -3679176, -8558259, -11000485, 3604015, 105764, 1593970,
- -8675834, -3138547, 8003135, 3253438, -4399657, 2218351, -7574712, 6221260, -707596, -1524713,
- 5602248, 886911, 4767414, -3935264, 1174137, -4338454, -8449811, -2394444, -1618666, 712428,
- 5191542, -608812, 731755, 543313, -4890894, -1556389, -1137630, -352187, 2952790, -1515050,
- -852014, -2689187, -1435056, -2812130, 1999844, 1424319, 16106, 2267743, 2577517, 307627,
- -175020, 966368, -455803, 1319629, 912681, 236223, -176631, -1375463, -115964, -369367,
- -230318, -361851, -151398, -873489, -454193, 981937,
- },
- {
- -32824824, -83092048, 23138062, -6488622, 4769025, -15928423, -8107825, -4454955, 3969624, -28006408,
- 13436268, 2216740, 3120831, -15382962, -17775796, 3342022, -348429, -5862631, -10201, 6190659,
- -6842957, -7931194, 5054103, -1532230, -7841000, -728534, 1872069, 14492830, 11456825, -4003447,
- -12625593, 8907225, 9196599, -7327751, 22841710, 13188771, 948651, 2815351, 719944, 6872485,
- 12656732, 9820980, -6917582, 2650532, -13662828, 6886443, 208306, -2057289, -1956895, 421981,
- 3881577, -1060857, -347892, -3263638, 2639794, 1586454, -159451, 6262599, 468688, 7816841,
- -1089848, 192737, 2639794, 3020436, -1297080, 825707, 1040993, 471910, 2379412, 1387274,
- -1531156, -919123, -1621887, -1040993, -195421, 715649, 904628, -891206, -1267015, 1032940,
- -3530463, -99321, 752156, -879395, 470836, -332860, -75162, 80531, 2667175, -801011,
- 1006096, 883690, 310848, -568546, 256087, 740345,
- },
- {
- -2896956, -57783952, 8497056, 7238094, 7937637, 979789, 8641474, 536871, 16644072, -2362232,
- -10244034, 4759898, 6960532, 51163260, -29886530, 21922050, 9186935, -3951907, 20780662, 2159832,
- -16935056, 16711718, -9378598, 13194676, 928250, 2993055, 14282377, -3828963, -14017163, 2049773,
- 7299297, -4527970, -10873783, 755914, 1519882, 198105, -12328704, 2535641, -908922, -12117713,
- 5708549, -6294275, 389231, 9062381, -2444373, -2496987, 1404454, 1189169, -4522601, -4774393,
- 5985574, -1447941, 375810, -1342177, -3956202, -634581, -79457, 3502009, 2788508, -3232500,
- 3955128, -1116692, 4005594, -5594195, 944356, -1938641, -911607, 658204, 1442035, 801011,
- 1180042, -4671314, -978179, 138513, -872415, 1156957, -2830384, -1152125, -1738388, 1080721,
- -703838, 2384781, 984084, -707596, -1124745, 666794, -1509144, -1481227, 1403917, 1170379,
- 1550483, -1541893, -2777233, -447750, 161061, -145492,
- },
- {
- 1721745, -100196216, -15508590, 21564494, 1890323, -18955302, -4919885, 6191732, 358093, -5571110,
- 23230404, -14869177, 11741367, -27239220, -40041444, 6016713, -280784, -1883880, -15580531, -4001299,
- -6039798, -1807108, -5257040, 12150462, -2857227, -16561394, 6341519, -11394011, 11353209, -2593624,
- 5596343, -2206003, -3293166, -16001974, -7368017, 19461034, 8885750, -3333968, 584116, 11751031,
- 3212636, -9521406, -569620, -7354595, 3886946, -7297687, -1582159, 6206228, 11092827, -680752,
- 161061, 7082401, -5286568, 2336999, -401579, -3855270, -6604049, 2636036, -1396401, 4332549,
- -4029216, -4383551, -915902, -2066416, 3502009, -625992, -1346472, 1706176, 205085, -3208878,
- -849867, 6331856, -2436320, -4798016, -1671279, -3812857, 1620813, 2507187, -3066607, 37581,
- 2120103, -1247688, 933619, -259309, 376883, 940061, -188979, 2634963, -243203, 2261837,
- 58519, 1445793, -979253, -2132988, 1005559, -189515,
- },
- },
- {
- {
- -1210644, 46752868, -20779052, 639950, 8163659, 676457, 3803731, -4641249, 3484292, -608812,
- 1802813, 9394167, 1464047, -7431904, 8646843, 3902515, 15457050, -11681774, 13657459, -865436,
- 24962886, 11779485, -4469987, -19440096, -8778376, 15278272, 1447941, 4793184, -6731288, -11610370,
- -382252, 21923124, 9693204, 4268661, 4749160, 5127654, -2348273, -2486786, 4833449, -631360,
- -2615098, -4008278, 4080756, 581968, 6974490, -4519380, 2498060, 4956393, 2302639, -1181653,
- -2188286, -1684164, -8254927, 1731946, -2456185, -1570347, -1406065, 2376191, 655519, -2906082,
- 302795, 823560, -2848100, -2567854, -1532230, 44023, -1962800, 2517925, -21475, -1771674,
- -578210, -1009317, 2223719, 1359357, 2353642, 663572, -375273, 1680406, 3824132, -2211371,
- 1123134, 1785096, -1164473, -492848, 2010045, -68719, -933619, -1305133, -2277407, -1188632,
- -676457, -1125281, 1008780, 65498, -493921, -354872,
- },
- {
- 21532818, -194490608, -14182519, -14918032, 9109089, 359167, -5612986, -95563, -273804, 20531018,
- 4864051, 19319300, -6380711, 8419747, 10147934, -38210176, 3462818, 5342940, -7884486, 9664213,
- -12244415, -6181532, -14037027, 5707475, -12633109, 12704513, 10618233, 6329708, 812823, 2958159,
- 4281009, 6097780, -12734578, 7076496, 6457484, -8301635, -5652714, -5792837, 8420820, 11351062,
- 1160178, 2187749, -12379169, 4332012, -3518115, -5677410, 1274532, -4969814, 4105989, 925565,
- -2233383, -1046898, -5672578, -519691, -1790465, 2113661, -1383516, -4429722, -3057480, 2465311,
- 1291711, -4290673, -2894271, 480499, 3416110, 262530, 1332514, 1963337, 3509525, -2168422,
- 246424, 1784022, 3404299, 196495, -2626373, 1775432, -2333778, 2603287, 954557, -545461,
- -306553, 613643, 840740, -278636, -1739462, -316754, 2121714, -15569, -432718, 1810329,
- 1349157, -901406, 666794, 337692, -1472637, -333397,
- },
- {
- 5493800, -22468048, -20353850, 25109452, 2943663, 3087545, -5545340, 7326141, -7865696, 4587562,
- 2849711, 885300, 3974992, 9725417, 12282533, -704912, -6235219, 6628745, -222265, -1584843,
- 1959579, 10472204, 16026134, 27360552, -4036196, -2639794, -15149423, 6617471, -13469554, -2911988,
- -15643345, -3435974, -11002632, -12611635, -2030446, 2912525, -3984119, -1156957, 9183177, -2164664,
- 877784, 964220, -165356, 3567507, -5898601, -5057324, 7461969, -1034550, 367757, -122407,
- -3442953, -157840, -4457103, -1336809, -3773666, 2791729, 3795141, -200253, -6078453, -610422,
- 1263794, -863288, -1037235, 150324, 2048699, -3772055, 2253247, 1268089, 591095, -1436667,
- -2598992, 367757, 250719, 576599, -2988760, 215285, -1627793, 326954, -2101313, -1622424,
- -2319282, -2109366, 300111, 1119376, 2427730, 1129040, 53150, 1336809, 1835025, -260382,
- 1058710, -287226, 148176, -340913, -754304, 144418,
- },
- {
- 2362769, -785442, -6316823, -4344360, -3702262, -611496, 551903, -3409667, -4183298, -4170413,
- -3075197, 3673271, 17960480, -17770428, -2109366, 11314554, -14775224, -6276558, 12976707, -5095979,
- -1359894, -8639864, 7670812, -10701985, -11141682, -3107409, 4740034, -17936320, 287226, -3656091,
- 3100967, -11130945, -25866440, 59056, -2075006, 293668, -14421426, -9418326, 12602508, 2014877,
- -3046206, 8046085, -6347962, 6345814, -4129074, 2535641, -6746857, -3716221, -1843615, 743566,
- -4459250, 3180423, -1234266, 1594507, -899259, 1171989, -2609730, -24159, -1481227, -4291209,
- 787053, -1013075, -1560147, 2625299, -2247342, 298500, 4183298, 1299765, -3662533, -766115,
- 2626373, 2562485, -2253784, 853625, 480499, -798327, 184147, -2260764, 911070, 564788,
- -435939, 831613, 278099, -668404, 846645, -441845, 1247688, -926639, -182536, 944893,
- -370441, 700617, 670552, -814970, -21475, -678068,
- },
- {
- -57319024, -102291088, 30234960, -13923747, 4815732, -1133871, -7813083, 7924752, -10587631, -2769717,
- -7617662, 22850300, 4514011, 9810779, 4245575, -7246147, -9121437, -11343009, 4708895, -1502702,
- 9048959, -4333085, 10108206, -12442520, 16767015, -1017907, -3131568, -1785096, 3961034, 3918621,
- 1096827, -7943005, 99321, -1734630, 4491999, -2951716, -10364830, 13263933, 875100, -21021180,
- 9287330, -6751689, 11944841, -4490389, 7021735, -1753957, -3868155, 2944737, 475131, 3354370,
- 1818382, 2139968, -1455457, 23622, 2586644, -5473399, 3532611, 2685428, 769336, 1992865,
- 2684, 659278, 2185602, 2930242, 3150896, -2949569, -642635, 2415919, 1924145, 1495186,
- 3692061, -1002338, -265214, -418222, -2214593, -1325534, 1001801, -701690, 2113124, 780073,
- -899259, -61203, -38118, -1757179, -175020, 927176, 2173254, 855772, -185757, -406411,
- 234076, 722091, -501437, 55298, 1738925, -805843,
- },
- {
- 716186, 9635222, 1097901, 6534793, -1042066, -148176, 459025, -2115808, -2227478, 1169305,
- 4922570, -9825811, 1901060, -14788109, -23794656, 20093468, 4136054, 4781909, 2589329, 31607202,
- -5364414, -25566330, -15263777, -6735583, -12144020, -10172630, 1412507, -5669894, 3733937, -3241090,
- 1516124, 7735236, 5792301, 6864432, -3726958, 7222525, -4126927, -8541616, -6877854, 2414845,
- 8092792, -6167036, -1929514, -3735548, -6343667, -1248762, -4087198, 5999533, 4053912, -4116189,
- -5745593, -954557, -6002754, -1236414, -5413270, -3626026, 1108102, -1479616, 1457068, 930934,
- -2297808, -2177012, -2301029, -3912178, -321049, -3546569, 287763, 2863670, -4672925, -2433636,
- 8198019, 2017561, -851477, -643708, -1231582, -2817499, -1808718, -1540820, 326418, -445603,
- 2097555, 1244467, 258235, 122407, -750546, 922881, 712965, -583579, 734976, 656056,
- -492848, -1537061, 95026, -992674, -372052, -417686,
- },
- {
- -68744712, -252797488, 38546256, -1399086, 8726300, -993748, 716723, -5764920, -22761180, 15698105,
- 5856188, 30105036, -14805289, 9028021, 1153736, -15569, -3738769, 3880503, -15934329, 14359149,
- -894427, -10126459, 7291244, -3957812, 2448131, -4657892, -401579, -8267275, 12090870, -6877317,
- -2710661, 6039261, -368830, -503048, 5308580, 9898289, -7937637, -5015985, 899259, 3797825,
- 6003828, -1127429, 1250909, 1323924, 2276870, -1887638, -9225053, 5356361, -6860137, -2651069,
- 995896, 7331509, 6183679, -4907000, -756988, 1963337, -563178, 1850594, -261456, -2509335,
- 772020, -1358820, 7407745, -1551557, 6359236, 2911451, 2736968, -1668595, 274341, -492848,
- -875636, 3200288, 1884954, -3032247, 642098, 193810, 874563, -2132451, 603443, -1248762,
- -1598265, -374736, 25770, -2074469, -2002529, 1033477, 715112, -173409, 300648, 592706,
- -71404, -1995549, -882616, -944356, 1868311, 1130650,
- },
- {
- 415001, 13813689, 2335925, 557272, -1781875, -70867, 1886028, -1007170, 18359912, -608812,
- -3496640, 6411313, 1384053, 20735028, -14278619, 12952548, -19582904, 6779606, 3749507, 1867237,
- 10223096, 9082245, -7854959, -13077102, -395137, 7914014, 13209172, 14302241, 4742718, -3843996,
- 15701864, 1076963, 1588601, 8542153, -6940131, 6749004, -1024887, 2329483, 887985, -609349,
- -678605, 1502702, 6677064, 268435, 4223564, -6599754, -3389266, -5272073, -6638946, -4174171,
- -3153580, -382252, -3950833, 708133, -432181, 7763154, -85899, 323196, 1741072, -412854,
- -2666101, -699006, -5167920, -3018288, -468688, -1430224, -1147293, -1804960, 842350, 1626182,
- -2409477, -1449552, -819802, -823560, 1460289, 1311039, -304943, 2097018, 959925, 875636,
- -680215, -133144, 1140314, -424665, -870805, -1307818, 219580, -709743, 1134408, 434865,
- -275415, -115964, 724776, -1021129, -138513, 1624571,
- },
- {
- -74431248, 231840720, 41941428, 470836, -11559904, 1153199, -6778532, -3687766, 3862249, -11646341,
- 7190849, 7068443, -1144609, -15648713, -5880884, -5432597, -1398549, -13311714, 7249368, -6152004,
- 326418, 7970923, 6247030, 1441498, -2285996, -5690295, -7059316, -2207076, -4646081, -10125385,
- 10555419, 3056943, -8830453, -227633, 1703491, 1200980, -1008244, 6826851, 1162862, -3492345,
- 1566053, -4547297, -6385006, -1268626, -4677757, 2724620, 2665027, -5994164, -6286759, 2182380,
- 6053220, -3558381, 1383516, -3600256, -1053341, 3649649, 1702418, 3738769, -810675, 199179,
- 646393, 48318, -3778498, 38118, -3399467, 2614025, 4832375, -453656, 759672, -285078,
- 222265, -273267, -2909840, -2244121, -29528, -2391223, 1981054, 2381559, -119722, 11274,
- -1575179, 116501, 23085, 141734, -117575, 1017370, -583042, -332323, 1355062, -1057099,
- -868120, -947040, -1003949, -1037772, 124017, 513785,
- },
- {
- -867583, 83098488, 15262166, 4265977, 1116692, 11622718, -16935592, 6979859, -3985193, -1593970,
- -11595338, -7523709, -10285373, -21316460, -5418101, -7794829, 5201743, 14385993, -6161668, -42230264,
- -19193672, 1910187, 4141422, 15918223, 943282, -4384088, -4111894, -9523016, -7786239, -10092099,
- -9361955, 9962714, -2137283, -4727149, -224412, -2738579, -2836826, 2343442, -15937550, 8517994,
- 736587, 2749853, 317828, 1748052, 2890513, -4614406, 6019397, -814970, 2658585, 1282585,
- -2612414, -5156108, 6614787, -4788889, 278099, 2446521, -5036923, -7001871, 5125507, 4475356,
- -916976, 2884608, 4042638, 825171, 6036040, 350577, -477278, -3047816, 2381023, -1938104,
- 1460826, -992137, -1611, -988916, -2091649, 1151051, 2851858, 401043, 250182, -817118,
- 922344, -1888712, -1072131, -2911988, 2624225, -66035, 982474, -1123671, -1601486, -184684,
- -866510, 343597, -802622, 87510, 667331, -493921,
- },
- {
- -33950644, -168576400, 42582452, 2435247, -12315282, 34478924, -9296457, 4115653, -16880296, -4959614,
- -3141232, 7010997, -17432198, 22843320, 2489471, 8208220, 49392, -4030827, -7059316, -128849,
- -1960116, 3948149, 13862007, -7562901, 1758252, -8439611, -4700842, 6258841, -6832756, 110595,
- 1490354, 3111167, -6240051, 1115618, 8011725, 12170327, 4931696, -1305670, -6798933, -2928631,
- -3765076, -8696235, -369367, -6639483, 3442416, -7881802, 4453344, 3215320, 7821136, 7344394,
- -4598300, -1757179, -2627983, 3740380, 1858647, 5618891, -39728, 155156, -1854889, -6851547,
- -2201708, 217970, -377957, -1465658, -3422015, 1797981, -1255741, 1012002, 130460, -1671816,
- -3676492, 2133525, 1398012, 3671123, -1582159, -403727, 1302449, -2822867, 1611, -22012,
- 219043, -545998, -409096, -484258, -428423, 474594, -204011, -974958, 160524, 316754,
- -1207960, -1352378, -598074, 1058173, 206695, -1254131,
- },
- {
- 2740726, 34637836, -10149545, -1537061, 3523484, -1335735, 2592550, 3867081, 2035278, -883690,
- -9132711, -10225243, -855235, -56457344, -13087302, 14097693, 10632728, -1924145, -1632625, 10524280,
- 4916127, 520765, 26088706, 4558034, -17991618, -1287953, -5191005, -8627516, -6548752, 918049,
- -15624017, 19299436, 14155138, -8470212, 4904853, -109522, 2831457, 9279277, -2962991, 1174674,
- -12702366, -3881040, 9552007, 4381404, -9201431, 7025493, 3070365, 9244380, -3279745, -8733279,
- -1115081, -468688, 1996623, -11073499, -3304441, -1280437, -3091840, -499827, 1544578, 2835752,
- 2949569, -942745, 274341, -3262565, -4477504, -889595, -1232656, 1864553, 4483409, -1009854,
- 1468342, -1093606, -1823214, -1524713, 2868501, -2160906, -2446521, 775242, 1356673, 2544768,
- 1326071, -192200, 956167, 561030, 8590, -471910, -462783, 405874, -255014, -367757,
- 1017370, -223875, 989990, 226023, -491774, 933082,
- },
- {
- 51310364, 19949586, 5430450, -8579197, 21394842, -21339546, -19617264, -166430, 20892868, 4342749,
- 15473157, -14366129, -5863704, -5686537, -11880953, 5637145, 7446400, -11598559, -3524558, 10310069,
- -3104725, -11794517, -2029909, 3006477, 4052839, 4615479, -9139690, -5768141, 9070434, 13505525,
- 512175, 11553462, 4988068, -14078903, 13515725, 9055939, 1339493, 4680441, -3392487, -1460289,
- 10325638, 9655623, -5609764, 2185602, -13680545, 2186138, -867047, 5760088, 9301825, 4360466,
- -24159, -5499169, 784368, -7005629, -4277788, 1270237, 1190243, 3899830, -1291711, 6249178,
- -2005750, -2449742, -642098, 148713, -3394635, -629750, 1853278, 3157338, 1191317, -1094680,
- -925029, 423054, 1256815, 408022, 175557, 1145683, 464393, -1243393, 869731, 2971044,
- -1188095, 2072322, 1459752, 1315871, 288837, -561567, 1115618, -1052804, 781147, -799938,
- 1559610, -47782, 1069984, 694711, 1198296, 500901,
- },
- {
- 2399276, -74737264, -8992588, -3009162, 1738388, 1595044, 6372121, -7050726, 6005438, 115964,
- 170725, 7656853, -1676111, 5429913, -94449552, 6847252, 6699612, 8698383, 6928319, 24299314,
- 1322313, 9691594, -4971962, 7573101, -2851322, 13827110, 17237314, 985695, -11973832, -11295764,
- 3211562, 2043331, -8423505, 2032056, -3536906, 10888816, -1063541, 4086125, 2197950, -11673721,
- 4627828, -5583995, 4938676, 10127533, -1132798, -544924, -3181497, -3101503, -3296388, -2167885,
- 5177046, -2786897, 2665564, 2879239, 6979, 2396055, 2899640, 1240709, -2583423, -5106179,
- 602369, -4784057, 2284923, -3977677, 2968896, 1607928, 2577517, -2446521, -2367064, -2212445,
- 3245922, 2561948, 1918240, -680215, -109522, 1057099, -2159832, 1136019, -2254321, -1352378,
- -3928821, 478889, 1126892, 2278480, 1578401, 401043, -464393, -782221, 667331, 1613297,
- 3082713, -94489, -1782411, -301721, 153545, -932545,
- },
- {
- 20096152, -75528072, -17160542, 14903000, 4916127, -14965277, 2272038, 7503308, -13317620, -8846022,
- 27218818, -21327734, 11148661, 5714991, -420907, -2239289, -24890946, -17994302, -20601884, -2297271,
- -1288490, 10073309, 1152125, 10552735, 9072582, -6716792, 13870597, -1680406, 2577517, -3825205,
- 12595528, 10562935, 4775467, -6713034, -9709310, 10412074, 10400800, -2678986, -615254, 8419210,
- -3389266, -1141924, 6591701, -3262028, 9240622, -5154498, -3819300, 1009317, 11062762, 766115,
- 1562831, 4937602, -5796059, -4011500, -4566624, 1802276, -3212099, 852014, -2106682, 4395899,
- -2050847, -1066226, -1346472, -2121177, 1670205, -1653026, -2746632, -846109, 3500398, -14496,
- -2353105, 5332202, -362925, 81068, 363998, -1583232, 2044941, 1799054, -2879239, -1325534,
- 3664681, 892816, 652298, -420370, -1381369, -620623, 1642825, 2927020, -1756105, 955630,
- 308701, 2284386, 391379, -312996, 1582159, -1467268,
- },
- },
- {
- {
- 236223, 7364259, 6971806, 19210314, -6539625, -668404, 3463891, -1014149, -2634963, -4632659,
- 24082956, -1079647, -2330557, 12123619, 11668352, 2680597, 8273718, -256624, -6596533, 2200634,
- 22335978, 1647657, 266288, -21922586, 8074539, 6414534, 3102040, 2221035, -9390946, -17924510,
- 7704098, 20653424, 5422396, 3329137, 5090610, 436476, 677531, -3304441, 5817533, 2003065,
- -5127117, -5652714, 5088463, 6283537, -3092913, -9065602, 2870649, 9386114, -843424, 1118302,
- -2621541, -3756486, -5408975, -1969243, -2025077, 2058900, 87510, 2074469, -8053, -2224793,
- -2673080, -1211718, 2485712, -3066070, 111132, -3704946, 1610076, 2531883, -4070019, 1724429,
- -1908039, 527207, -751619, 1557999, 4350265, 996969, -1479616, 3073049, 1084479, 2170569,
- -1722282, 704375, -756988, 231391, 2084670, -402116, -409633, -1176821, -2367601, -528818,
- -1321776, -500901, 217970, -372052, 390305, 404264,
- },
- {
- -15227270, -175850992, -4161823, -13951664, 14283451, -5034239, 2486249, 8057359, -6640557, 3309809,
- 12217571, 22056268, 333934, 3017752, 7118909, -16005732, -20025286, 2937758, 7399155, -5690295,
- 4863514, -9264244, -15047418, -13190918, 4265440, 4698158, 13965623, 6921877, 4165045, 2797634,
- 5988258, -1507534, -2268817, 3124052, -8653822, 3265249, -2638721, -5748814, 12174085, 3277060,
- 2512019, -2863133, -4728759, -5126044, -2155537, -4903242, 603980, -3018288, 1365263, 2571075,
- 613107, -5989332, -3693135, -1334124, -830002, 5301064, -4456029, -2798171, -2491081, 1704565,
- 3128884, -7318625, -1179505, 914828, 3476239, -689879, 3887482, 497142, -154619, 543313,
- -672699, 3697967, 692564, 2158221, -785979, -443455, -1522566, 2330020, -230318, -653372,
- -54224, 1981591, -350040, -1080721, -883690, 132070, 188442, 1067836, -286152, 2242510,
- 406411, 71941, -433255, 17180, 362388, 115427,
- },
- {
- -4980015, -62272192, 16980690, 26952530, -1235877, -1427540, -1433445, -2122251, 2910377, 6384469,
- 9065065, -13162464, 7394860, 10499048, 1269700, -1179505, -3107946, 13319230, -5228049, 7822209,
- -10201, 8196408, 25147570, 11135240, 2340757, -1337882, -11734924, -3149822, -2210298, -4190814,
- -8574365, -16166794, -11158862, -4141422, -3812320, -1826435, 1850594, -4736812, 3442953, 3314104,
- -1171452, -932545, 1270774, 1966021, -7370164, -1482301, 3326452, -3721589, 3540664, -1665911,
- 953483, -4199941, -2794413, -4588099, 1795833, -277562, -217433, 2914672, -4294431, -3739306,
- 2145336, -2173254, 1635309, -2554969, -1279900, -330712, 1633161, 1227824, -222265, -2756295,
- -93416, 991601, -830539, -32749, -516470, -1274532, -782221, -1938641, -2361158, -103079,
- -1562294, -2525441, -121870, 1219234, 2539400, 1009317, 710280, 335544, 1385127, 803696,
- -719407, 229781, 835371, -639413, -328028, -73014,
- },
- {
- -2663954, -630823, -2513630, -7968775, -322659, -120259, -750546, -551903, -3639985, -8114804,
- -380641, 3197066, 12902619, -7050189, 20049982, 9286256, -43795780, 8312909, 17267916, 3382824,
- -6019397, -7960185, 6149857, -15629923, -18489298, 17239998, -15148350, -10997801, 2303176, -12543452,
- 18611704, -16101296, -23833848, -1335198, 4456566, -20876226, 2808909, -3711389, 1636919, 6467147,
- -4367445, 8534100, -1838783, 2678986, -3212636, -3703336, 2354179, -6008123, -5246303, 6855305,
- -2696703, 889058, -666257, -646929, 1771137, 675384, -4423817, -3476239, 3357054, -3805341,
- 1769527, -6494528, 677531, 2292976, -308701, -863288, 3442953, 1711008, -3913789, -1376537,
- 5184026, -832150, -824097, 1320166, 1248762, -1779190, -2037425, -527207, 604517, 178241,
- -194347, 52076, 1345399, -658204, 1058710, 444529, -723702, 377420, -1194001, 1360968,
- 292058, 310311, 119722, -159988, -738734, 248571,
- },
- {
- 51836496, -195390416, -15424838, 826781, -1534377, -3731253, -1592359, -574452, -3911642, -3827890,
- -165356, 17077864, -3109556, 16252693, 5190468, -2560874, -16291885, -13247290, 9674414, 6095096,
- -1271847, -2046015, 1692217, 7781944, 1128503, 11758547, -4573067, -3744675, 7108171, 1617055,
- -3587908, -6322192, 2479270, 2544768, -7031935, -1001264, 21262236, 90194, -5222144, -14089640,
- -295816, 282394, -2356863, 5091147, 4409858, -6498286, 2108829, 5706401, -5721434, 1930588,
- 3588445, 3151432, -4870493, 478352, 1457068, -2271501, 3679713, 1011465, 142808, 1432909,
- 1089848, 548145, 3144990, 1743220, 536871, 989990, 1006633, -1187559, 2215666, 2393371,
- 4118874, -1133335, 1624571, -3346853, -1173063, 42413, -1741609, 1044751, 315143, 1404454,
- -185757, -1598265, 1249299, -1566053, 631897, 1428077, 238371, 1116155, 501437, 41339,
- -264141, 660888, -288300, 224412, 1165547, -374199,
- },
- {
- 798864, -1533303, 12468827, 505732, 1758789, -522912, 644245, -2051384, -6090801, 3374234,
- 3958349, 619012, -3828427, 14903537, -24770150, -21427054, 33178622, -2392834, 1122060, 28798292,
- 2888366, -15710990, -19075560, -9764071, -10799695, -2856153, -4806606, -1501628, -9227200, 21870510,
- 5872294, 1531693, -5754183, -4772783, 7218230, 2245194, 2035815, -1784559, -7687992, 74088,
- 7386270, 575526, -2823404, -8479876, -6014565, -802622, -4046396, 4038880, 79457, -4473746,
- -4383551, -1430761, -5040144, -3444564, -2746632, -4845260, 179852, -1231582, 2353642, 2635499,
- -2105608, -3912178, -1235877, -2803003, -854699, -3189013, 519691, 1655173, -3697430, 710817,
- 5069672, 1852742, 68183, -408559, -4410932, -2385854, -1293859, 1122597, -1761474, 379031,
- 1694365, 2232846, -1838783, 1660542, -854162, -823560, 847719, 177704, 175557, 514322,
- 191126, -1238024, -1154809, -47782, -1232119, 587337,
- },
- {
- 47318192, -351603744, -17053168, 19366544, 2219424, 1060857, -3528853, -11965242, -6333466, 3602941,
- 22919556, 2749316, 13959, 3621731, 2851858, -1173600, -14178224, 9470403, -9357123, -19864,
- -3271691, 2672544, -714575, -7546795, 3823595, -2555506, -25233, -2604361, 2885681, 2655901,
- -8894340, 1372242, 4687957, 1288490, 3528316, 5599564, -6300717, -6638946, -4811974, 10141492,
- 1319629, 776315, 1220308, 862215, 1762547, -3109020, -843424, -4053376, -7189239, 360777,
- -2290291, 9066676, 2277407, 50466, -2982855, 2132988, -1072668, -497679, 3900367, -2837363,
- 1989644, 518617, 2017024, 3022046, 7087770, -968515, 1914482, 874026, 397821, -197569,
- -912681, 4001299, -169114, -1326071, -351114, 1358283, -7516, 301721, -798327, -631897,
- -1158031, -840203, -1478006, -1792075, 228170, 141734, -478889, 490700, 452582, 1024350,
- -2224793, -172872, -1864553, 430570, 530965, 1334124,
- },
- {
- 1363115, 2670933, 7479686, 1536525, -2843805, 493384, 1483911, 4536559, 9310952, 570157,
- 2289755, -102005, 6678674, -209917, 15651935, 8669928, -10351408, -6752763, -89657, 14099841,
- 854699, -3896609, -4907537, -8997420, -4716411, 16329466, 11071352, 16059420, 4742718, 13289166,
- -12043088, 4001299, 712965, 2485712, -4648229, 12310450, -8410620, 4383014, 3136400, -6397891,
- 6410776, 1528472, 3355980, 3023657, -4663798, -714575, -5525476, 2426120, -8628052, -3433290,
- -5768141, -3780645, 3895535, -7501161, 7423314, 5389647, 317828, 2517925, -4841502, 1262720,
- -395674, -3358128, -4861366, -1973538, -2349884, 435402, -2825015, -752693, -111132, -1202591,
- -1847910, -953483, -335007, -1836635, 1174137, 1494112, -730144, 1989644, -365609, 860067,
- 2107218, -2248952, 1563905, 353798, -3045132, 1445793, -1427003, 414464, 38118, -476205,
- 942745, 2684, -58519, -98247, -685584, 1451162,
- },
- {
- 82762944, 100474856, -38257960, 17652852, -3905199, -165356, -12737262, 5397700, -3724274, -5908802,
- 10930155, 13114683, -16823924, -10395431, -2423435, -7883950, -16656957, -333397, 3767760, -8428873,
- 10943040, 406411, 551366, -4828080, -408022, -2961917, -8674223, 1180042, -4614406, -3583613,
- -884226, 9196599, -10073309, -3497177, 428960, 7910793, -4146791, 5579163, 843961, 3620121,
- -1222455, -4708895, -8934606, -4599910, 1621350, -1496259, -1076963, 717260, -550830, 372052,
- 613643, -1195075, -1457068, -389768, -437550, 5121749, -1360968, 5309654, 1442572, 466541,
- 140660, 977105, -4693863, -237834, -769873, 2405182, 2719251, 2272575, -693637, -481036,
- 288837, 630286, -2070174, -2578591, -1240172, -981400, 1508070, 1459752, 945430, -2007360,
- 823023, -90194, -268435, 66572, 1626182, 531502, -907849, -1060320, 652298, -545461,
- -551366, -904091, -106300, -1491964, -155156, -392990,
- },
- {
- -551903, 82159504, 12499429, 12104828, 1196148, -4887136, -10831371, 1588601, 5641440, -7721815,
- -3831111, -6199786, 3351685, -27458800, -741956, -8703751, 5414880, 4100083, -20075214, -18597208,
- -8949638, -4893579, 11258720, -739808, 3942243, -764504, 4538170, -13430900, -6034966, -10954314,
- -1980517, -1410897, -10660646, 6860137, -4749160, 1666447, -10936597, -4900558, 2462627, 2237141,
- -4962835, 4929012, 4063576, -5856188, -2057826, 2724083, 738734, 4580046, -52076, -3046743,
- -1511292, 255014, 3363496, -2637647, -237834, -909459, -3340411, -3295314, 1836635, 3438121,
- -1228361, 5072893, 3191161, -434865, 6255620, 2960306, -1078574, -5367636, 815507, 33286,
- -1284195, 2599529, -1801739, -100395, -3243774, 1375463, 3855270, 1343251, -95563, -686658,
- 270583, -1524177, -1850057, -1088237, 1196148, 181999, 261993, -373125, -792421, -2106145,
- -270046, -359704, -153545, 208843, 29528, -329102,
- },
- {
- 31003222, -179057728, -16958142, -7836168, 13931800, -17624398, 13639742, 8163122, -6096706, -19827716,
- 4958540, -9783936, -14396194, 13057774, 26348014, 2552284, 7093676, -9179419, 1007170, -12875775,
- 6799470, 687195, 8368207, -4832, -13109314, 2246805, -915902, 1995549, -8020852, -4578972,
- 7653095, -2893197, 1840394, -5757404, 3186329, 15796890, 3638374, 3735011, -10084583, -7494181,
- -4437238, -2354179, 779000, -7015292, 1873680, -2974265, 477815, 6129992, 6440304, 11000485,
- -3356517, -3112241, -5901822, -1131187, 4020090, 4400731, 4584341, -4249334, -1489280, -1307818,
- -102542, -2292439, -2315524, -1997697, -1096827, -123480, 351114, -1078037, -983011, -1249299,
- -2756832, 1122597, 2920578, -192200, 556735, 326954, 595390, 242666, -1975685, -668404,
- 474057, 162672, -25770, -2817499, 1159104, -532576, -376883, 426812, -1342714, -24696,
- -803159, -1875827, 616865, 519691, 62814, -870268,
- },
- {
- -3424163, 14549202, 5383742, 1815161, -7563975, 11278047, -3347390, 9016210, -955093, -4364224,
- -7198902, -6992744, -9478993, -50133544, -22836878, 19248432, 25011206, -28217398, 13716515, 13342316,
- 6060736, -14367202, 22326314, 6017786, -2015413, -4502200, -15873662, -4883915, -2130304, -13930190,
- 12064026, -5635534, 16712255, 7888781, -2003065, 596464, 9550934, -6124624, 5410048, -5033702,
- -3847754, 2367064, -301721, 4594542, -4139275, 3046206, 10377178, 2396055, -2340220, -4973572,
- -3274913, 872415, -972810, -7095286, -3554622, -2979634, -1600949, 586800, 1427540, 5587216,
- -1772748, 1032403, -1026497, -5189394, -165893, -3754875, -52076, 1792612, 3396246, -279173,
- 2296734, -1903207, -2111513, -1476932, -388158, 503585, -1316944, -1082869, 2028835, 2041183,
- 62814, -31675, 1948305, -6442, -35970, -583042, -1199907, 919660, -907312, 113280,
- 2081985, -452045, 665183, 381715, 430034, -336081,
- },
- {
- -48103632, 164651328, -9178345, 4086662, 24521578, -20703890, -3411815, 16070157, 117575, 22788022,
- 1102196, -14319421, -10539850, -2574296, -9287330, 2427194, 10505490, -9147743, -3096672, -6542846,
- 6373195, -5104032, -6758668, -6024229, 7986492, 5091684, -9241696, -10993506, 13492103, 13242458,
- 3434363, 10539850, 2668785, -10686416, 2987150, 13850733, 5214627, 6751689, -7462506, -4434017,
- 9745281, 5755256, -2878165, 3357591, -4166118, -7090454, 3442416, 4375498, 9137543, -189515,
- -865436, -6338298, -871342, -7008850, -1271310, -1034550, 1741609, 2093797, 2384781, 489626,
- -926102, -1621350, -217433, -1787780, -1319092, -293132, 264141, 2114198, 143881, 143345,
- -1369021, 1908039, 30065, 934692, 1043140, 1980517, 1163399, -2502892, 1054415, -1229971,
- 2479270, 2159295, 321049, 3293166, -1749125, -1033477, 2779381, -1912334, 566936, -336618,
- 657130, 287763, -16106, 1643362, 1449015, 410169,
- },
- {
- -2430952, -80115632, -1289564, -7142531, 236223, 7938710, 1031866, -4597763, 1641214, 4882841,
- -1999844, 12010339, -2708514, -27872190, -44405132, 4393215, -11082089, 27083526, 4765803, 1271847,
- 9174050, 4886062, 7167764, 5876052, -10132902, 8841190, -2674154, 6750078, 9558450, -17595408,
- 9544491, -1752347, -5983963, 3727495, -1063004, -708133, 4260608, 3520263, 3191161, -3638374,
- 1140851, -5601174, 6092411, 3209951, -2506650, 6905771, -7496329, -394063, -1566589, -11811,
- -1296543, 60130, 3534758, 1460289, -1569274, 5901822, 4797479, -2330557, -5536750, 673773,
- -4813585, -1833951, 61740, -1388348, -105764, 4041027, 2430952, -3466576, -2875481, -2001992,
- 1333051, 1340567, 3710315, 1409286, -731755, -1334661, 815507, -166967, -1115081, -433792,
- -3195993, -1354525, 2039036, 3288871, 1098975, -841814, -66572, 92342, 1738388, 397284,
- 1808718, 453119, -376347, -615791, 151934, 310311,
- },
- {
- -35013648, -64961, -18046916, 22928682, 11392401, -14879377, -2961917, 4437238, -9446781, 2678449,
- -5734855, -499290, 4665408, 1625645, 24876988, -18299782, -19765976, -13434658, -25457882, 4873178,
- 2705293, 4311611, 4685273, -1845225, 18933290, 4606353, -3623342, 9556839, -16709570, 16224239,
- 2002529, 13925895, 6274947, 1119913, -7190849, 4114579, 6178311, -4671314, 4970888, 6376953,
- -11982422, 7962333, 3323768, 1142461, 1442572, -278099, -789737, -2027225, 6106370, 2400887,
- 5737003, 1002338, -4333085, -5943161, -1884417, 2408403, -1373853, -1645509, -478352, 2572686,
- -2723546, 1261647, -2186138, -515933, -1126892, 1405528, -3253438, -2405182, 5520107, -84289,
- -898185, 1104344, 475131, 2815888, -2306934, 1933272, 1785096, -368830, -1440962, -1347009,
- 1547262, 2094870, 729608, -286689, -713501, -3036005, 3722126, 725850, -920734, 621160,
- 484258, 1523640, 1276142, -121333, 1319092, -750009,
- },
- },
- {
- {
- 799938, -19618874, -10013179, 14323716, -7583839, 2401424, 3241090, -2563559, -839129, -6422050,
- 23108534, -5668283, -3930969, 11945915, 8965744, -3788161, -1534377, 9677098, -9059697, -21731998,
- -5171678, -5152887, -99321, -9603547, 27944668, 3026878, -8491687, -6677601, -9729175, -16655346,
- 276489, 3604015, -3968550, -4029216, 6334540, 6310381, 5130339, -9160092, -5655398, -687195,
- -4564477, -5294084, -269509, 2620467, -1899986, -10965052, -5332202, 2001455, -2364380, 6640020,
- 442919, -2355790, -3283503, -2828236, 612033, 3422015, 40802, 4122095, 1079111, -1727651,
- -2528125, -1668595, 5927055, 976568, 1066226, -4576288, 719407, 1723893, -3887482, 1433445,
- -2559264, 832150, -797790, -1385664, 631360, 601832, -2279017, 930934, -1448478, 798864,
- -3569655, -811212, -54224, 1903744, 1964948, -1392643, -53687, 102542, -1088237, 80531,
- -1098975, 356482, 1168768, 396748, 389768, 215285,
- },
- {
- 8349417, -203197584, -54977728, -36130876, -5408438, -7215545, -1398012, 962610, -9584220, -12089259,
- -9636833, 13353590, 2447058, -4212826, -1942936, -5670968, -11944841, 2325188, 6695854, -11009075,
- 4554813, -4030290, -9731322, -16689706, 6296422, -2479807, 3030636, 6562173, 5591511, 1111323,
- 3054259, -2338073, -3689377, -938987, -7427609, 3369939, 32749, -4464619, 2755759, -10974715,
- -4214437, -922881, 3199214, -5690295, -2179696, -1896765, -1361505, -8286603, -2945811, 5216775,
- 5453535, -1706713, 206158, -2842732, -4600447, 7245610, 1258425, 1619740, 1133871, -320512,
- 1238024, -4969277, -2836826, -2762738, 1022739, -2675228, 2192044, -203474, -3938485, 28991,
- 90194, 3170760, -1671279, 1314797, -207769, -369367, -1950989, -1007170, -2777233, -1357747,
- 186294, 2186675, -1300301, -581431, 1216550, 1028645, -704912, 607201, -417149, 1957431,
- -406411, -171262, 70330, 833761, 638340, 571231,
- },
- {
- 4038343, -77815144, -9757092, 2676302, -17778480, -5187247, -2410014, -591095, 4674535, 8546985,
- 13262859, -15707232, -134755, 6058588, -9991168, -2959233, 4828080, 14734422, -13154948, 11538967,
- 1043677, 4239133, 22180284, -1709934, 5990943, 5380521, -7640747, -4563940, 3094524, 6493454,
- 10205379, -6944425, -5427228, 977105, -668941, 3762928, 6074695, -4808216, -173409, 2051384,
- -1122597, 1403917, -4365298, -3830574, -1036698, -1592359, -6018860, -7611219, 412317, -95026,
- 1890323, -7437273, -1212255, -1548336, 1304060, -3353296, -2559264, 3418257, -2237678, -3987877,
- -1194001, -2640331, 2252174, -5414343, -2580202, -16643, 1353989, 2327872, 884763, -2253247,
- 153545, 1347009, 197569, 982474, -815507, -2077154, 1471563, -89657, -897648, 1361505,
- 585726, -864362, -417149, -622770, 542240, -177704, -710280, -1214402, 405338, 600759,
- -1199370, -194884, 244813, -136365, 347892, -482647,
- },
- {
- 2069101, -2813741, -7073275, -4191888, 1690070, 219043, -1296543, 1708860, 141197, -6841883,
- 769336, 2315524, 4161823, 2141578, 54794120, 27845346, -38048040, 19355806, 27745488, 18321794,
- 11920145, -2228014, 4429722, -2150705, -10559177, 10137733, -21203716, 4010426, 12757127, -12672301,
- 23339926, -856309, -6692096, -4850629, -5789616, -11660299, 17271138, 4291746, 2043868, 4522601,
- -3125663, 4799089, -640487, 5586142, -2029909, -4212826, 8521752, 2375117, -1263794, 8157217,
- -872415, -1718524, 1507534, 1589675, 1797981, 45634, -3642132, -2059974, 6898255, 458488,
- 3182571, -4239670, 1841467, 698469, 1083406, -635118, 2197413, 1488743, -2077154, 302258,
- 3853660, -2796024, 929860, 2006824, 1438814, -995896, -751619, 272730, -419296, -782758,
- 315680, -168041, 911607, -425739, 726923, -380105, -1217623, 1606318, -233002, 595927,
- -313533, -215822, 327491, 556735, -994285, 73551,
- },
- {
- -36039072, -249955824, 33156610, 3010772, -11811, 214212, 3671123, 973347, 1189169, -898185,
- 2119566, 8077223, -12184285, 5524939, -728534, 3432753, -6308233, -23809688, 633508, 5989869,
- 103616, -5872294, -8737037, 6229313, -8976482, 11092290, 8518531, 12085501, 18105434, 7232188,
- -11614128, -15917149, 1683090, 6209449, -9339943, -1814624, 25063282, 4854924, 4326643, -10074920,
- -6288906, -2879239, -3929358, 6164352, 3399467, -2661806, 5154498, 5886253, -4897337, -2908230,
- -2007897, 1400696, -3877819, -1607392, -1840394, -3097745, 3787624, -2494839, -1241782, 1981054,
- -1268089, -2882997, 550830, 136902, 361851, 1381369, 470299, -2325725, -178241, 17180,
- 1372779, -3051574, 1306744, -3922379, 619549, 3227131, -686658, 2263448, 121333, 909459,
- 2147, -1380295, 2291365, -740345, -423591, 108448, -831076, -150861, 667867, 1795833,
- 89657, -185757, -1501628, -629750, 300648, -159451,
- },
- {
- -308164, -16652125, 5075578, -5819681, -1341104, -33286, 282394, -388158, -5558225, -1504849,
- 2462627, 3738769, -6954626, 18829674, 4687420, -6844031, 32265404, 366146, -1472637, 23077934,
- 3038153, 2141041, -1466195, -7832947, -7250979, 10545218, 1621887, 4102768, 817654, 30303678,
- 15235323, -6241125, -12796855, -636192, 4511327, -4316979, 10216653, 13479218, 1857573, -549219,
- 5965710, 7056095, 1555852, -5001490, -3607773, -686121, -2138894, -3293166, -11029476, -6904697,
- 656056, 3912715, 58519, 980863, 1646046, -6579890, -1191317, -1369021, -901406, 896574,
- -823023, 1236414, 1767916, -1422171, 804233, 973347, 1785633, 498753, -1541356, 1104880,
- 763967, -2185065, -893353, 1659468, -2651069, 903017, 2496987, 2930778, -70867, 169651,
- -74625, 1073742, -2785823, 536871, -1572495, -1551020, 881542, 165356, -450435, 1031329,
- 1127966, -1138703, -1758252, 1009854, -777926, 211527,
- },
- {
- -17322676, -390875840, 20938502, 29033442, 729608, -231391, -9294309, -7102802, 8322573, -10399726,
- 1623498, -14638322, -5671505, -2083596, 7710003, 3339874, -18204218, 3797825, -9858024, -11087995,
- -9442486, -117575, 442919, -4377646, 4341138, -2263985, 2378875, -2717641, -6368900, 758599,
- -6062883, -164819, 1411971, 107374, -515933, 934155, -10854993, -10214506, -10019085, 3313567,
- -2720325, 3040300, 84289, -264141, 5947456, -3532611, -1606318, -4871567, -3160022, 2682744,
- -3172907, 2488934, -1639604, 6360847, -1032403, 2370285, 1978369, -237297, 5647345, 648003,
- 3477850, 136902, 847719, 1107565, 2398739, -5319317, -528818, 1222992, 985158, 2250563,
- -1415192, 1377074, -615791, 1477469, 834297, 479426, 1108638, 1647120, -900869, -245350,
- 24159, 263067, -534723, -493384, 898722, -471373, -1430761, -209917, 446677, 882616,
- -1564442, 2123861, -312996, 321049, -489626, -597000,
- },
- {
- -397284, -18435074, -4747013, 59593, -2653216, 555125, -651761, -2768107, -1876364, -2477123,
- 3204046, -1699196, -9259949, -14096083, 25004762, 6067715, -2758980, -1426466, 631360, 21759378,
- -4540318, -6478422, -2341831, -12149926, -1763621, 12464532, 6739341, 5340792, -10976326, 17193828,
- -14847165, -5612986, -8464307, -1573032, -7280507, 9163850, -4563403, 4338454, 5534066, 572304,
- 4923107, 765578, 629213, -5568962, -10579578, 1941862, 2247879, 6951405, -5361193, 1032940,
- -2592013, -5348308, 3726421, -4307316, 7959112, 900333, -3519189, 1417876, -5424544, 1984812,
- 1447404, -1593970, 154082, 184147, -4373351, 23622, -514859, 24696, -1413581, -879931,
- -1864553, -2034741, 76773, -1561758, -702227, 789737, -265751, 2020782, -513249, -54761,
- 1553168, -1392106, 2126009, 149250, -2514703, 2555506, -1335735, 191663, 105227, -595390,
- 681289, -928787, -455267, 467078, -410706, 1517197,
- },
- {
- -76114336, -34829500, 27924804, 22750978, -4523138, 3647501, -7422241, 3278671, -6737730, -1284732,
- -7445326, -2064269, 1081795, 9401683, -4894115, -8761733, -2618320, 2957085, 1973001, -4753455,
- 7496329, -7420630, 1030792, -5340792, -2054068, 1394791, -578210, 9917616, 4796942, 858457,
- -4299799, 9287330, -4872104, -7250979, -7271380, 11537893, -2144263, -2445447, -72478, 12053826,
- 7381438, 3767223, -3894462, -3488587, 2574833, 1871532, 4603131, 5772436, 4415764, 1239098,
- -6027987, 535797, 2451890, 5496485, 4321811, 3135863, -3046206, 3504693, 771484, -1424855,
- -172872, 2340757, -1911261, 2733210, 1400696, 113817, -727997, 2792266, -971736, -1598802,
- 207232, 323196, -415538, 1473711, 998043, -463320, 1355062, 88584, -218506, -827318,
- 2675765, 755914, -70330, 55835, 754304, 25770, -933082, -1340030, 1370632, 1120450,
- -177704, -1233729, 318901, -678068, 891743, -16643,
- },
- {
- 1462436, 53509924, -22645216, -6046240, -4608500, -1325534, 5579700, 383326, 6169184, -5822902,
- 4381404, 9467719, 9410810, -15761993, 29222958, 6911140, 8362302, 7376070, 875100, 9669045,
- -2959769, -4121021, 11213623, -3077881, 8927626, 6560026, 15629386, -1159641, 9804873, 4231080,
- 5394479, -1710471, -6931004, 403190, -11350525, -215822, -3768297, 3178276, 2377265, -1779727,
- -7718593, 2394444, 7283728, -4025458, -2335389, 7895761, 116501, 3860102, -3115462, -4191888,
- -1101659, 1606855, 1412507, -797790, 752156, -1269700, 1150514, 1086627, 2734284, 4766877,
- -2163053, -872952, -1497333, -4643934, 2637110, 1172526, -1935957, -1467268, 3244848, 1068373,
- -3502009, -702227, 665183, 4468914, -948651, 506806, 2690260, 1053341, -20401, 474594,
- 51003, -1103807, 258235, -826781, -1701881, -1357210, 588411, 181999, 173946, -1209570,
- 923418, 465467, -197032, -128849, 463320, 293132,
- },
- {
- -26486526, -163718240, 46744276, -28838558, 5280126, -26306674, 15051713, 19838454, -2428267, -17399986,
- 9983115, -554051, -2784213, -5849746, 15709917, 7213398, 12142946, -4258460, 2845953, -17662516,
- -8312909, -11684995, -1945083, 3088082, -8869644, 3426847, 3178813, 4654671, -5196374, -2340757,
- 6564858, -3568581, 1671279, -11043435, -3929895, 6541235, -174483, 4489315, -7708930, -2912525,
- -4250407, -760746, 5867462, 1641214, 9173513, 1095217, 54761, 6255620, 741419, 4753992,
- -1771674, 1798518, -110059, -1986422, -1440425, -1923609, 1762547, -811212, 2492692, 2124935,
- 4670777, 1509681, 555125, -2524904, -367220, -347892, -1032403, -1209570, -1119376, -801548,
- 418222, 1052804, 419296, -1068910, 283468, 353261, 1698660, 1006633, -1018981, 280784,
- -560493, -745177, 797253, -1949915, 1218160, -1552631, -999654, 556735, -1198833, 103079,
- -253940, -1081258, 582505, -807454, -1122597, -594853,
- },
- {
- 3484829, -10747082, -15874736, 7148436, -11133092, 4937065, -13471702, 6968048, 3653944, -572841,
- -555661, -1675037, -3324305, -12758200, -16615618, 1436667, 29503740, -17307108, 10595147, 3416647,
- -8427800, -33224256, 10668699, -444529, 3112778, 8694624, -753230, 3562139, 1171989, -10190347,
- 11246909, -21066814, 2565169, 3752728, -1686848, -361851, 6047851, -2137820, 9425306, -5979668,
- -371515, 3702799, -3577708, 2639794, -3674345, -1822140, 4800163, -252866, 754304, -2573759,
- -125628, 482647, -608812, 610959, 2006824, 118112, -2584497, 1326608, -248034, -1035087,
- -4253092, 2623688, -2201171, -6703370, 328565, -175557, 3340411, 401579, 897111, 615791,
- 2476586, -3432216, -442919, -1727651, -4179003, 1224603, 2727841, 231928, -329639, -638340,
- -849330, -956704, -270046, -1251983, -1641214, -2035815, -2430952, 52076, -1373316, -554051,
- 1824824, 151934, 1059783, -405338, 268972, 412317,
- },
- {
- 21806086, 253950144, 4609037, 19560354, 28947006, 14762876, 31279710, 24182276, -10652056, 21746494,
- 9339943, 909459, 2147, -1882806, 5561446, 7597261, 882079, -12198781, -16156593, -12928388,
- -3649649, -10107132, 7866770, -914828, 1892470, 1138703, -10011569, -12642236, 4334159, 2080375,
- 896574, 7368017, 8394514, -3668976, -2962991, 11143830, 1326071, 4973036, -3804804, -2245194,
- 6399502, 5794448, -38118, 5574868, 3316789, -5027796, -1175747, -12265890, -6903086, -7320235,
- -3966402, -8303783, 4431333, -683437, 4403952, 4182761, 2429878, -1835025, -4478577, -1860795,
- 1279363, -929324, 832687, 568546, -297963, -3742527, -3760781, -825171, -1203128, 818191,
- -2823404, 394600, -2362232, -1385127, 634045, 2098629, 1222455, -2687039, -128312, -2723009,
- 887985, 13422, -831613, 1050656, -1036161, -1382443, 383863, -1469953, 826244, -1830193,
- -900333, -725850, -827318, 1081258, -158377, -673236,
- },
- {
- 1780801, -71365176, 484794, -5988258, 796180, -1585380, -9173513, -325881, 3370476, 7022809,
- 5005785, 16931834, -7905961, 10983305, 47604880, 24481850, -20883742, 11637751, 12890271, -21875342,
- -19587198, -12704513, -13458280, -9744744, -15540802, -3293703, -16768089, -5677410, 3781182, -8281234,
- 12741557, -2878165, 1754494, 3799436, 1405528, -3069291, 1289564, -65498, 1787780, 1838246,
- 4690105, -1970853, 382789, -7007239, -2093797, 8963597, -3184718, 5960341, 2112587, -431107,
- -1893007, 2631741, 2454037, -1422171, -6874095, 346282, 3256122, 672162, -2573222, 4794794,
- -2013803, -640487, 106300, -2474975, -2954938, 155156, 404264, 852014, 871342, -1860258,
- -2157147, -4125853, 111132, 585189, 742493, -1214939, -714575, -675384, 2113661, 2524367,
- -424665, 360240, 1333587, 1746978, -112743, -920734, 42950, -23085, 2375654, 834834,
- 898185, 320512, 753767, -156229, 288837, 905164,
- },
- {
- 34628712, 87395072, -20483772, 36390184, 22888954, 6164889, 12990129, 7348689, 1425929, 8738648,
- -12536473, 1612223, 6180458, 3639985, 22173306, -7267622, -5870147, -10006200, -22115324, 2219424,
- -746251, -96100, -4030827, -6536404, 12677670, 3351148, -6338298, 4381941, -2606508, 20981988,
- -8092792, 7483444, 6529424, 6677064, -5728950, -5345624, -7152195, -4390531, 5538897, -2461553,
- -8032126, 5102421, 3011309, 5162014, -6455873, -1035624, 341987, 2114735, 1111323, -6184753,
- 3055869, 855772, 448824, 1031329, 1642825, 2767570, -215822, -2157684, -2675228, -991601,
- -1461900, 3959423, -1155883, -1679869, -2525978, 1497870, -961536, 790274, 5207111, -1725503,
- -1660005, -1447941, -1637993, 1320703, -2665027, 1921461, 1664300, -481036, -1033477, -2640331,
- -1155346, 1774358, -162672, 673236, 1136019, -2792803, 2662880, 4832, -1221918, 199716,
- -108448, -537408, -480499, -1179505, 1243393, 150861,
- },
- },
- {
- {
- -1293322, -23229330, -449361, -11705933, 11316165, 1791001, -2097555, 1759326, -4083440, 3089155,
- 5472862, 7802882, 2595234, 4268124, 11278047, -27154394, 4697084, 12156368, 1328219, -15423764,
- -27262842, 8157754, -7180112, 986769, 19660750, 3635690, -3652870, -16462610, -77846, -12416750,
- -6131066, -6223408, -7129646, -2029909, 6849936, 6826851, 5109938, -4485020, -8922795, -1082332,
- -944893, -6965900, -2178085, 1440425, -430034, -6265284, -7996156, -504659, -1459215, 7703024,
- 4502737, -6958384, -804770, -3438658, 1995549, 4268661, 550830, -455267, 2072322, -2239289,
- -2058363, 1842004, 2978560, 1137630, 2448131, -2193118, -627065, 823023, -1903207, -1364189,
- -377957, 53687, -504659, -681826, -1160178, -603980, -125091, -42950, -1908039, -193810,
- -2230699, -695248, -326418, 2223183, 1781875, -1787243, -445066, 50466, -290447, -502511,
- 185220, 337155, 670552, 508417, 164819, 353261,
- },
- {
- -5318244, -228414416, -4949413, -34928820, -24539296, 2726767, -87510, -16471200, 9446244, -7627862,
- -21174188, 6745246, 6415071, -6247030, -11267847, -1562294, -9134859, 7173669, -1004486, -4785668,
- -9242233, 6345278, -6051072, -12554726, 2070174, -2524904, -789200, 5369783, 3912178, 7417409,
- 1952600, -4205310, -705448, -9442486, 2499671, -1469416, -2671470, 1268626, -28991, -8584566,
- -4185446, -1248762, 302795, -1231045, -157840, -3528853, -6190659, -8411157, 367220, 2001992,
- 4695473, 2557116, 817654, -3687766, -2408403, 4537633, 3350075, 0, 2325725, -717796,
- -1415192, -1793686, -2818572, -2059974, -2226941, -250719, -832687, 899796, -3095598, -801548,
- 1848983, 792421, -1364726, 1127966, -1169305, 426812, -1076963, -1018444, -2186675, -612033,
- -1592359, 1177358, 387621, -510564, 772557, 575526, 412854, 35970, 190052, 789737,
- -695248, -283468, 827318, 635118, 902480, 381715,
- },
- {
- -2932389, -54305028, -18591840, -24909200, 4073777, -2305861, -4976257, 3229816, 352724, 1845225,
- 14869714, -2660732, -16508781, 10755135, -6172942, -5941014, 7947300, 2258079, -8278013, 12798466,
- 441845, 6998649, 16216723, -764504, 5917928, 7042673, -3244311, -6602439, 1165010, 10190347,
- 4575214, -4354023, 3756486, -4827543, 2137283, 5023501, 1719061, 63888, -3261491, -4952098,
- 7898982, 1993939, -4027606, -6247567, -1481764, 331249, -7370164, -4751308, -1531693, 1776506,
- -1744831, -3499862, -453119, 171262, 1248762, -5930276, -781147, 487479, -1779727, -3303367,
- -2925410, -274878, -860604, -2478733, -3095598, 1293322, -155693, 970126, 519154, 1293322,
- -280247, 197032, 1501628, 1151051, -1117765, -2772402, 2531883, 223875, -347355, 738734,
- 280247, 396211, -944356, -1184337, -4832, -450435, -1661079, 337692, -279173, 97711,
- -370978, -208306, -325881, -194884, 72478, -242129,
- },
- {
- -1430224, -15622407, 5851893, 1762010, -2244657, 795106, -766652, 1052804, 1244467, -3320010,
- -1217623, 2566780, -5318244, 10210748, 56848188, 725313, -8822937, 13993003, 31867046, 13801341,
- 6628745, 12809740, -2308008, 640487, 3742527, -17647484, 406411, 13616120, -893890, -1098975,
- 6087043, 10390600, -6366752, -10656351, -7211787, 5106716, 4454955, 12057584, 4018479, -1982127,
- 285078, -3104725, 1182727, 4290136, 3946538, 382789, 5704254, -1632625, 3342558, 4973036,
- -325344, -1461900, 2260227, 2274722, -333397, -2215666, -2470680, 2173790, 1233729, 2689187,
- 2590402, 1264331, 253940, -1151051, 2313914, -2603824, 3666292, 88584, 435402, 142808,
- 1462436, -994285, 1553704, 374199, 438624, 568546, 571768, -37044, -293132, -1364189,
- 957241, -520765, -716186, 879395, 737661, -1424855, 21475, 1125281, 456340, -368293,
- -692564, 67109, 862215, -318364, 162135, -652835,
- },
- {
- 14325863, -235138192, -29736206, -9612137, 9933722, 3914326, -672699, -2561411, 9819906, 2245194,
- 9346923, -14687178, -125091, -353261, 5196911, -9713605, 838056, -22198538, 1771137, 3965866,
- -681826, 9403831, -17791902, -7187628, 1031866, 117038, 14896557, 28810640, 3178276, 1974611,
- -7918846, -12281996, 3569655, 3524558, -9903658, 347892, 7698192, 10023917, 9300215, -7132867,
- -3879429, -2849174, 4540854, -3466039, -872415, 5341329, 4896263, -1438814, 81068, -1606855,
- -1592359, -3365107, -1833414, -3138547, 808528, -139050, -345745, -2482491, -512175, 2421825,
- -1234803, -3116536, 309775, -1360968, 760209, 406948, -156229, -815507, -1160715, 1216013,
- -231928, -1507534, -1263257, -1386738, 1190780, 1606855, 1356673, 325344, 746787, 481573,
- -8590, -664646, 1126355, -194884, 961536, -1754494, -948114, 268435, 817118, 1672890,
- 242666, -1044751, -1277216, -22012, -441308, 223875,
- },
- {
- -745714, -11569568, 1166084, -8148090, -192737, 171262, 250182, 791348, -2938295, -796716,
- -1170379, 409096, -3982509, 12833899, 40299680, -11908871, 5976984, 1558536, -887985, 14374182,
- 7793755, -2348810, 10966125, -7429220, -11239393, 10776073, 15205258, -3964255, 15098958, 8751533,
- 11419244, -7704098, -6616397, 5972689, -1760937, -10577431, 13306346, 11218991, 5201743, 23622,
- 6670084, 2764348, 5654325, -3566434, -3721052, -2272575, -1919850, -5140539, -7126962, -6619619,
- 635655, 3652870, 2923799, -446140, 533113, -994822, -5053029, 472983, -4274030, 1002338,
- 528818, 2206540, 1449015, -578747, 1401233, 332323, 1380295, -1469416, -432718, 2054605,
- -1202054, -1344862, 345745, 255014, -744640, 1118302, 2298881, 1962800, 659278, -789200,
- 1646046, -1081258, -1253594, -435939, -1563368, -830002, 274341, 372052, -41876, 563714,
- 646929, -227633, -1245004, -18790, 178778, -373662,
- },
- {
- -12496207, -328438848, -40645424, 15924665, 23198192, -3663607, -642635, -11836393, 6125160, -7617662,
- -4772246, -11209328, -142271, -9827959, 8192650, -2920578, -12991739, -3893925, 1232119, -18103824,
- -1791001, -322123, -421444, -2151242, 814970, -2668249, 2752537, -4541928, -5902896, -1645509,
- -400506, 5459977, -7977902, 1570347, 4299263, -1570347, -7923678, -7315940, -13967234, -2404645,
- -2756295, 3148748, -921271, -2820720, 6893960, 3314104, -5283347, -3275450, 294205, 820339,
- -3088082, 740882, 3719979, -2131915, 4849555, 1343251, 3541738, 126165, 3007551, 3629247,
- -1170379, 925565, 2464238, 801548, -803159, -1049583, -324807, -389768, -1358283, 2341831,
- -115427, 331249, 1038845, 1068373, 482110, -504122, 880468, 1469953, -140660, -439160,
- 843961, -394600, 918049, -386547, -6442, 52076, -1739999, -340376, 172872, -70867,
- 609885, 1165010, 460635, -142271, -238371, -715649,
- },
- {
- -1235877, -7786239, -10570451, -5620502, 472446, -365609, -801548, 330176, -6499896, -573915,
- -1709397, 32212, -6418829, -12513924, 34486976, -27077622, 8310225, 16259672, -1189169, 635655,
- -5896990, 6971806, -1584843, -6841883, 2561948, -578210, 2604898, 22353158, -22816476, 17128866,
- -13063680, -3263638, -14393509, -10071161, 10986526, 1612223, 2782065, -2006287, 5524402, 4338454,
- 6647536, 1348083, -946503, -10348187, -9113921, 4209068, 3235721, 2568927, -2576981, 2565169,
- -2090039, -3167002, -1058173, 1461363, 3755412, -674310, -1384053, -1065152, -1884954, 342524,
- 2662343, -1078574, -285078, -200253, -2191507, -2681670, 358630, 2212445, -2728915, -1000191,
- -1243930, -834297, -962610, 183610, -1367947, -19327, 120259, 1850594, -1017907, 600222,
- 447750, -179315, 956167, -15569, 622233, 357556, -219043, -960999, 781684, 157840,
- 187368, -721018, -977105, -129386, 293668, 967978,
- },
- {
- 55672440, -130993280, -47890496, 4133369, 30048664, -1198833, 527744, -10471667, -4147865, 7767985,
- -20086488, -10421738, 8480950, 7167764, -102542, 2607045, 2508261, 2426657, -3381213, 4619774,
- 2750927, -9021042, -11811, -2002529, -3223910, 4757750, 4261145, 5597953, 5668820, 2650532,
- 2232309, -730681, -2049236, -3383361, -8038032, 3412889, 3122978, -2185602, 177704, 8280160,
- 14555107, 320512, -2282238, -1142998, -2585570, 4240744, 7207492, 3469797, -293132, 905701,
- -1643899, 1822677, 1979443, 5182415, 5597953, -1996086, 744103, -330176, 1021665, -748935,
- 2330557, -171262, 823023, 121333, 2065342, -207769, -478889, 1185411, -892816, -1845762,
- 198642, 1334124, 174483, 613107, 2757906, -224949, 732292, -148713, -861678, 1167157,
- 1271310, 704912, -534187, 642098, 374199, -902480, 976031, -645319, -106837, 985695,
- 336081, -1220308, -717796, 860067, 460098, -970126,
- },
- {
- -2116882, 18682034, 12830678, -20755966, 2340757, -5198521, 12316892, -930934, -537945, 2923262,
- 4365835, 10882910, 3541201, -14127758, 34646428, -2838437, 13923747, 10305237, 13784161, -6644315,
- -876710, 11931419, 5653251, 901406, 3995930, 1799054, 17806398, 2132451, 600222, 7947837,
- 9054328, -1603097, -1766305, -8621073, -3187403, -4332549, -2982855, 3629784, 6251862, -4281546,
- -7671349, 3607236, 3346317, -362388, -2713346, 6813429, 1360968, 418759, -3578782, 1862942,
- -828392, 1000727, -1751273, 2311766, -1631551, -609349, 1486596, 3569655, 4410932, -1284195,
- -2265595, 1012539, -1931662, -4815195, 156229, -832150, -179315, 1899449, 2092186, -1855426,
- -1400159, -1781338, 1830193, 3083250, 1743757, 289910, 1884417, 19327, 211527, 764504,
- -381178, 222801, 342524, 461709, -2964601, -1845762, 704375, 288837, 755914, -645319,
- 482110, 755914, 251792, -188979, -184147, 434329,
- },
- {
- 22141094, -128475896, -26589068, -17864380, -7472706, 18196166, -20260434, 5505611, 6253473, -4728222,
- -585189, 18790, 12094628, -6154152, 2893734, 9851581, 10581189, -1665911, -154619, -8209830,
- -24211268, 2817499, -4920959, -1873143, 172872, -1980517, -2044404, 8019241, -2370822, -3340411,
- 4575751, -2886218, -1589138, -3654480, -5503464, -2685428, 4599373, 2845416, -10129143, 2416456,
- 945967, -4370129, 1977833, 5974300, 7216619, 2112587, -1555852, 5774047, 92879, 464930,
- 1173063, 4633196, -1869921, -193274, -2180770, -3653407, 1101659, 418759, 3208878, 636192,
- 6503118, 912144, 1953673, -2740726, 680215, -384400, -574452, -2400887, -28991, -1307818,
- 310311, 1520418, -305480, -770410, 144955, 2251100, 375273, 169114, -285615, -265214,
- -228707, -1136556, 806380, 160524, -1250372, 68719, -908386, 119185, -194347, -698469,
- -118648, -298500, -854162, -411780, -841277, -309775,
- },
- {
- -3060164, -28091234, 7166690, 2018635, -5609228, -4223564, -6441377, 5083094, 3387656, 3680250,
- 1549410, -5245766, -3325915, -11001559, -29766270, 23048942, 11906723, -2088965, -9954124, 14735496,
- -16171089, -13185013, 9536975, -4160213, -3434900, -1745904, 5839545, 5137318, 2552284, 8423505,
- -6938520, -8144869, -5971615, 3347390, -3207804, 4577362, -4057670, 7548405, 2539400, -558883,
- -1248762, 3550327, -6554120, 1378148, -1267015, -5089000, 6749004, 1173063, 2191507, -4963909,
- -537, 1530619, -467078, 1022202, 1035087, -21475, -450435, -1848447, 1716376, -5265630,
- 723165, 1479616, -5945309, -2135136, 92342, 140123, 1653562, 2551748, -1679869, 2128693,
- 1925219, -3182034, -1086627, -1188632, -2750927, 711354, 2703145, 233002, -519691, -1615445,
- -213675, 143881, -2414309, -850404, -1007707, -1517734, -2782065, -1219771, -358093, -863288,
- 1201517, 126702, 893353, -398895, 3221, 897111,
- },
- {
- 15123654, 238092048, 28313498, 17020956, 29867202, 34183644, 15985331, 9863392, 3038153, 10179072,
- 15623480, 1938104, -1707250, -11451457, 7820062, 17020418, -17453136, 6634651, -13098577, -6621766,
- -13611825, -9838159, 48318, 104690, 5089536, 6917582, -13624173, -137976, -2137820, -1219234,
- 2931852, 5548561, 5476620, 197032, 1709934, 4338991, 3047816, 222801, 478352, 3286724,
- 3760781, -2936684, 6376416, 657667, 4688494, -3681861, -118112, -9940165, -12819404, -7923141,
- -1400696, -6098854, 1707786, 5520644, 4250944, 2175938, 3117073, -5210332, -2567317, -1859184,
- 1555315, 61740, -687732, 448287, -405338, -2868501, -3262028, -1222992, 0, -1070521,
- -3716221, 724239, -1545115, -1847910, 1433445, 845572, 387621, -147640, -313533, -2729989,
- -40265, -672162, 531502, -464393, -637266, -2101313, -826781, -54761, 530428, -1548873,
- -1578937, -141197, -115427, -11811, -343597, -425739,
- },
- {
- -653372, -62736052, -2030446, -3138547, 126702, -5406827, -4777078, -3308199, 3260954, 2955474,
- 9152038, 8026220, 13996762, -10347650, 82835960, -2618320, 7002944, -7825968, 17853642, -21572546,
- -14716705, -16444356, -15370614, -15701864, -5382131, -10644540, -17301738, -3529926, -14751065, 4529043,
- 7529615, -5738613, 9703942, 415538, 148713, -3293166, 4043712, -2370285, -419296, 3752728,
- 5736466, 399432, -142271, -10040023, -2334852, 1893007, 10868952, 2855080, -1628866, -165356,
- -185757, 4078608, 255551, -3537443, -2094333, -3474092, 893890, 68719, 1072131, -71404,
- 2672544, 944356, -945967, -3636764, -1726040, -469225, -704375, 1554778, -62814, 409633,
- -2254321, -5249524, -920197, 546535, 2276870, -1158031, -2096481, 339839, 2251637, 1207960,
- 1633698, -93952, 519691, 1190780, -484258, -53150, -774168, 519154, 1961190, 1790465,
- 500364, 85899, -214748, 397821, 192737, 772557,
- },
- {
- -19316078, 139728704, 5655935, 31614180, 26146150, 615791, 4440996, 1371168, 7909719, 3956739,
- -6455873, 3542274, 3349538, 14203457, 2665027, -2027761, 6650220, -9616432, -20557860, -2499134,
- -556198, 3017215, 2082522, -3573950, 4421132, 449361, -5685463, -5815386, 11089069, 3908957,
- 5730560, 2551211, 9118752, 704912, 733366, -8011188, -4636954, -105227, 30602, -7534983,
- 1555852, -7668664, 1621350, 10308995, -5383742, -1698123, -1588064, 2195265, -762894, -1623498,
- 2235531, 1256278, -67109, 383863, 2775086, 1160178, -258235, -3500935, -1439351, 315143,
- 192737, 1314797, 434329, -3534758, 1111323, -366146, 137976, 2200634, 1432372, -1545115,
- -885300, -1525250, -1935420, 99321, -580894, 635118, 1514513, -455803, -269509, -1076426,
- -2323041, 797790, -927713, 2166811, -723702, 218506, 813896, 68719, -623844, 1129040,
- -387084, -1827509, -991601, 468688, 42413, -177704,
- },
- },
- {
- {
- 1169305, -6470368, 9911174, -15272904, 7842074, -194884, -2115272, 2452426, 305480, 355945,
- -7378754, 11982422, 6494528, -12919798, 2977486, -23216982, 3732327, 6846715, 75699, 214212,
- -28108950, 801548, -11119133, 1307281, 21548388, 10976326, 7124814, -13176960, 3421478, -3620658,
- 733903, -7202124, -3244311, 6391985, 6406481, 1235340, -134218, 5907191, 2240362, 2120103,
- -225486, -5152887, 1169842, 5159867, 1751273, -833224, 2076080, 4016331, -2429341, 3158412,
- 2061584, -4779762, 2423972, -1708860, -757525, 408559, 266288, -1198833, 1869385, -554588,
- 1246077, 1789391, 97174, 1125818, 2660195, -869194, -487479, 391916, -137439, -670552,
- 733903, 250182, 624381, 324807, -1615982, -638876, -701690, 154619, -1152125, -325881,
- -874563, 803159, 170188, 614717, 290447, -1363652, -50466, -134218, -46171, -632971,
- 602906, -20401, 33286, 370441, 207769, 125628,
- },
- {
- 4599373, -155649616, 53782116, -5248450, -2669859, 3842922, 1835025, -11087458, 15006079, 486942,
- -17276506, 4866198, 4487167, -5219459, -4261145, 2785286, -5866389, 7852811, -3235721, 3476776,
- -2694018, 5386426, -1622424, -1517197, 3776887, 2508798, 1741609, 2441152, -2133525, 1253594,
- -272194, -3706020, 1879048, -3730716, 1506460, -6158446, -310311, 3062849, 1533840, 2309619,
- 1632088, 748935, 1896765, -424665, 510027, -2055142, -4094178, -2676302, 2939368, -184147,
- 1260573, -81604, 2326262, 991064, -996969, 1173063, -337155, -2857227, 1299228, -684510,
- -831613, 796180, 388695, 446677, -1028108, 1629403, 1264331, 1828582, -728534, -199716,
- 914828, 1079111, -326954, 596464, -1428614, 958851, -476741, 267899, 503048, 645856,
- -1600412, 31139, -183073, -82141, 208306, -139586, 404801, -828392, 74625, 292595,
- -566936, -125628, 133681, -170725, 498216, -53150,
- },
- {
- 1439888, -10503879, 18849538, -16837882, 6079526, -226560, -2202781, 4646618, -3427384, -1596654,
- 14389751, -2695092, -9942312, 23148800, -1541893, -12309376, -4720169, -13445932, -13636521, 2697240,
- -6056978, 5246303, 7348152, -3357591, -929324, 0, -3679713, 457414, 1148904, 3269544,
- 368830, -2723546, 6288369, -1876901, 2494839, 1390496, 2700461, 914291, -2657511, -3553012,
- 6778532, 2498597, -1729261, -1374926, 1165010, 1890323, -792421, -1717987, -1378148, 2517388,
- 258772, -110595, 491774, 267899, 2192581, -3550327, 671626, -1098438, -2972117, -2383170,
- -572841, -229781, -2224793, 1045825, -617938, 475131, -2442763, 236760, -11811, 706522,
- -110059, 35433, 1355599, 292595, -541166, -1330366, 1844689, -478352, -844498, 308701,
- -202400, 768262, -982474, -1360431, -78383, -176631, -709207, 648003, -719944, -34897,
- 123480, -481036, -617402, 55835, 418222, 297963,
- },
- {
- 1522566, -23489714, -2512019, 4335233, -383326, 211527, -163209, -17180, -855235, -1266479,
- -1136019, 2514703, 851477, 8068633, 29431800, -9019968, 899796, -328028, 23042500, -562104,
- -1964411, 10259066, -5940477, 2908230, 9436580, -9803263, 2030446, -380105, -5142150, 4391067,
- -5345624, -2136746, -4993973, -2359548, 215822, 11167452, -8543764, 1058710, 4337380, -150324,
- 1070521, -5425618, 5906, 5296769, 2767033, -2969433, 1387811, -2154463, 3473555, 2437394,
- -1210107, -158914, 227633, 56371, 155156, -1150514, 109522, 4444218, -1955821, 417686,
- 846645, -623844, -1484985, -743029, 2278480, -3379066, 1952600, -1053341, 522912, -625992,
- 384936, -919660, 186831, -607738, -461709, -246424, 627065, -437550, -294205, -1338419,
- 731218, -184147, -1068373, 722091, 163209, -1128503, 395674, 83215, 216359, -416612,
- -752693, 30065, 432718, -1044214, 107374, -330176,
- },
- {
- 6174553, -164789312, 37383396, -20360292, -3465502, 861678, -3962644, -5585068, 3416647, 3339874,
- 1745367, -12641699, 8035347, -8646306, 8256538, -1856500, 6923488, -1192390, 8275865, -4898410,
- -3824132, 11334956, -9509594, -6643778, 7295002, 1273995, 7428146, 11209865, -10294500, 2616172,
- -403190, -1865090, 5890548, 2515240, -4821101, 2843268, -3455301, 4575214, 8040716, -4355634,
- 3059091, -2570001, 4911832, -2676302, 1665911, 1402844, 85899, 172872, 343597, -2146410,
- 2267206, -2787434, 1060857, -172336, 1349157, 839129, -2600066, -495532, 4042638, 2581812,
- -1101122, -2529736, 239444, 681289, 2586644, -120796, -789737, 876173, -25233, 555125,
- -565862, -709207, -566399, 1023276, 1146756, 904091, 1424855, -1081258, 204011, 58519,
- 195421, -410169, 803696, -188442, 838592, -897111, -57445, 231928, 430570, 682900,
- 33823, -221191, 100932, 438624, -352187, 33286,
- },
- {
- 57982, -4245575, 2516851, -960999, 2796561, -796180, -173409, 2977486, -1235340, 1066763,
- 839666, -1462436, -5263483, 1451699, 41908680, -11023570, 633508, 8048232, -3686693, 5851356,
- -645856, -11940546, 4933844, -4225711, 9958419, 7201587, -3369939, -6492380, 3270081, -15667504,
- 1767916, -3786014, 1632625, 5148055, -2081985, -10507101, 1921998, -2386391, -509491, 1354525,
- 2147484, -8551280, 971736, -1300838, 75699, -25770, 1218697, 1138703, 2653753, 2082522,
- 383863, -309238, 2436320, 1942399, 280784, -638876, -2810519, 2882460, -1782948, 1083406,
- -1281511, 440234, 456877, 302258, 1057636, -1759863, 1394791, -1300838, -1603633, 642098,
- -1216550, -1183264, -40265, 137439, -996432, -134218, 843961, 344134, 149787, -1269700,
- 701153, -951872, 54224, -332323, -292058, 250182, 94489, -37044, -31675, 515396,
- -4832, 408559, -222801, -257698, 351650, -306016,
- },
- {
- 32914482, -192530496, 29567628, 2070174, -671626, -2081449, 2874944, -17228724, -2805151, 4769025,
- 7348152, -1474248, 5456219, -6284611, 3522410, -7757785, -10525354, -4655745, 4293894, -10115722,
- 463320, 2615098, 3006477, -974958, 1296543, -1234803, 2085744, -2285996, -193810, -2331630,
- -1402307, 3504157, -6475737, 1043677, 578747, 816044, -2182380, 3906810, -4890894, -5237713,
- -2159295, 5250598, 779000, -2026688, 2876554, 5022428, -2958696, 1357747, 4638028, -1155346,
- -2113124, 2792803, 3053722, -6526740, 2985002, 229781, 2198487, -3245922, -1199907, 1436130,
- -1551020, 1003949, 1003949, -980326, -608812, 545461, -23622, -357556, -1294933, 715649,
- -982474, -199179, 521839, -39192, -280784, -987843, -25233, -222265, -310848, -229244,
- 382252, -801548, 631897, -199716, -563714, 645319, -358093, -391379, -210990, -305480,
- 769336, 358630, -608812, -750546, -373125, -210453,
- },
- {
- 405338, 9408126, -2710124, -5427228, 1475321, -198642, 459025, 1118302, -4605279, 268435,
- -4467840, -506269, 5479305, -2233920, 34357592, -14354318, 12166569, 8405788, -4321811, -3892851,
- 348429, 16661789, 1084479, 3024731, 9983115, -5123359, -7842611, 15855946, -20434918, 17966922,
- -9467182, 8184597, -2344515, -6901476, 9310415, 1896765, 3687766, -6345278, 536334, -4396973,
- 4144107, 2471217, 127238, -3284039, -3092377, 2731062, -2888366, 1321239, -1573569, -879395,
- -3722663, -1812476, -252866, 76236, -9664, -2216203, -1016297, -302258, 706522, 26844,
- 447213, -859530, -1029718, -737124, -1163936, -828929, 830002, 1452773, -82678, 1189169,
- -792958, -274878, -46171, 1344862, -715112, 472983, -81604, 557272, -1696512, 215285,
- -1355062, -623844, 687195, 827855, 1300838, -331786, 807991, -488016, 708670, -262530,
- -428960, -413391, -853625, -522912, -126702, -101469,
- },
- {
- -27146340, -166404752, 31345746, -10421738, 2876018, 2264522, 4806606, -2688650, -1129040, 5962489,
- -9355513, -10014790, 163746, 2932389, 2172717, 4673462, 5899138, 9403294, -3950296, 3180960,
- 3708168, 123480, 6438156, -673773, -2644089, 7274601, 1196685, 212601, 4996658, 2139431,
- -90194, -1494112, 244276, 50466, -2985539, -876173, -949725, 2153389, 2247342, 966368,
- 9036611, -1573569, -71941, 549219, -1719598, 2720325, 3105798, -1457605, -1882806, 3434363,
- 436476, -394063, -1635846, 125628, 2376728, -3453154, 401579, -784368, 529892, -2429341,
- 371515, -1014149, 1109712, -598074, 894964, 937914, 1377074, 714038, 375810, -641561,
- -840203, -169651, -430034, -493921, 1854352, -417686, 287226, -150861, 504659, 1566053,
- -913754, -415001, -62277, 297427, 270046, -148176, 1950452, -277025, -733366, 363462,
- 255551, -1312649, -584652, 948114, 102542, -245887,
- },
- {
- 2964064, -5957120, -4115653, -13325673, 1088237, -5916318, 11445014, -1739462, -828929, 1814087,
- -6579890, -188442, 5024575, -18859738, 11241540, -7445326, 15942382, 6413997, 20907364, -87510,
- -317291, 13817447, 2430415, -2070174, 619549, -1807108, 11439645, -8602283, -11678016, -523986,
- 1685238, -6018323, -86973, -4544613, -1702418, -3084860, -5277978, -828929, 149250, -3867618,
- -373125, 5935108, -1311039, -1074279, -1361505, 1975685, -2815351, -1251446, -4032438, 1596117,
- 60666, 1284195, -1183800, 1930588, -994822, -1063541, -1679869, 1145146, 2720862, -3682398,
- -2022393, 696858, -1768990, -3258270, -876710, -926102, 539555, 1037772, 1300301, -1447941,
- 999117, -1000727, 830539, 1054415, 914291, 1013075, 717260, -797790, 1179505, 1241246,
- 70330, 353261, 296353, 1631014, -715649, -586263, 376883, -26307, 818191, -911607,
- -357556, 325881, 13422, -205085, -434329, -33286,
- },
- {
- -18111340, -108955808, 35307852, 1924682, -2878165, 21946746, -24517820, 6134824, 9286256, -3210488,
- -175557, -3925600, 9802726, -3336653, -2380486, 4121021, 863288, -534723, 8431558, 9349070,
- -10792179, 8902930, -3604551, -1612760, 2141578, -3010772, -9096204, 1989107, 2214593, -3093987,
- 1973001, -2018635, -2455111, 447213, -4721780, -4974646, 3391414, 2043868, -6141267, 2528662,
- 1646583, -5464809, -460098, 1446867, 1307818, -202400, -3068754, 2206003, -1217623, -1074,
- -1468879, 3359201, -1190243, 1222992, 1913408, -905164, 1059246, 1164473, 900869, -2179696,
- 2891050, -1468879, 448287, -1248762, 2462090, -147103, -1428614, -2567317, 1034013, -1236414,
- 764504, 2142652, -76773, -316217, 20938, 1016834, 133144, 569620, 865436, 685584,
- -238371, -662499, 1168231, 875636, -973884, 881542, -293668, 551903, 76236, -341450,
- 162672, -85362, -765578, 256087, -183073, 571768,
- },
- {
- 2572149, -34711924, -2742874, 107374, 284542, 2419677, -2497524, 1644973, 1245004, 2852932,
- 3541738, -972273, 6032819, -11056320, -34237332, 14189498, -788663, 10913512, -11547556, 2335389,
- 4261145, 4536023, -5516349, -14799920, -3045132, 7989713, 5723044, 5545340, 2568391, 4012036,
- -7674033, 1023276, 2146947, 4705674, -5275294, 3133179, -4972499, 3517041, -602906, 2387465,
- -3271691, 5572720, -3459059, -1590212, 948114, -1512365, 5840082, 748935, 1626182, -198105,
- 2813741, -1023276, -2008971, -1140851, 254477, -915902, 584652, -1460826, 890669, -3626563,
- 1843078, 287763, -3682935, 2100776, 1428077, -357019, -739271, -38655, -2506650, 749472,
- 690953, -1721208, 599148, 858993, -676457, -372052, -274878, -1628866, 3221, 75699,
- 357019, -853625, -1176284, 1449552, 367757, -378494, -1039382, -417686, 216896, -615791,
- 49392, -794569, 404801, -95026, -108448, 573915,
- },
- {
- -44829796, 138064944, 4753992, -9088151, 4566087, 12741020, -156229, -1297617, 5296232, 9003325,
- 8496519, 229781, 4020090, -7423314, -3081102, 13042742, -15730318, 10679973, -396211, 5882495,
- -7219840, -2083596, 4197257, -135291, 6805913, 18298708, -3741454, 10650982, -848793, -6227703,
- -1289027, 130460, -166430, -989453, 4831302, 282394, -1921998, -399432, 3266323, 1623498,
- 4050691, -345745, 5050345, -2375117, 4407710, -6472516, 1244467, 671089, -2191507, -1445793,
- 4065187, 2176475, 2532420, 2265595, -1642825, -2689723, 2364916, -1460826, 205622, -1367410,
- 496606, -1677722, 255551, 467078, -2873870, -1341640, -159451, -670015, -952946, -443992,
- -739808, 556735, -1403381, -595390, 759672, -207232, 1386201, 1283658, 379568, -1492501,
- 346282, -335544, 627602, 292058, 448287, -1129576, -30065, 106300, 295279, -522375,
- -4832, 86973, -149787, 304406, -90194, -111669,
- },
- {
- 28991, -56263536, 4855998, 1784022, 2403571, -1366337, 1588601, -1234266, 4627291, -3017215,
- 1429687, -942208, 4173635, -21740588, 65863860, -10782515, 9598715, -14721537, 13034152, -5261872,
- -2394981, -5070746, -768799, -8506183, 522912, -4475356, -1075352, 7723425, -13931263, 1277216,
- 4493073, -4706211, 11704323, 594853, -4830765, -553514, 2323041, -5563057, 3503620, 3442416,
- 5866926, -2814814, -2499671, -3564286, 1491964, -2700461, 5810017, 1399086, -2308008, -1405528,
- 172872, 2298881, -2018098, -1927904, 932545, -2619393, 1879048, -265214, 539555, -1551020,
- 1376537, -1020055, 947577, -23622, -332323, 1452773, 706522, -1275605, -1341104, 1516124,
- -477278, -2018098, 1906966, 37044, 251792, 445603, 482110, 802085, 646393, -1086090,
- 388158, -677531, -76236, 752156, -671089, 294742, -1038308, -344134, 41876, 299574,
- 210990, -234076, -740345, 354335, -172872, -86436,
- },
- {
- -2943663, 140153904, -12937515, 7214472, -139586, -25290914, -7543573, -1482838, 2612414, 109522,
- 4485020, 2984466, -7778186, 5973763, 570694, 1130650, 9280887, 5904507, -5235565, 2570538,
- -2954938, -185757, 7045894, 510564, -468151, 2464238, 4533338, -6961068, 5971079, -4881767,
- 6611566, -830539, 1087164, 948651, 3451006, -3903052, 2273112, 2084670, 2801393, -4371203,
- 3247532, -8877161, -1303523, 8783745, -685047, 1524177, 1058710, 1946157, -1428614, -3393024,
- 229244, 1532230, -995359, -2065879, -775242, 345745, 757525, -1919850, 1683627, 1741609,
- -1666447, -602369, 1586990, -559956, 2615098, -341450, -376883, 1129040, 1376000, -499290,
- -365072, 915365, 938987, 972273, 603443, 133144, -53687, -275952, 840740, 234613,
- -1641214, 743029, -802085, 2047089, -557272, 122407, 342524, 758599, -346819, 1258425,
- 631897, -176094, -228170, 543850, -1611, -557809,
- },
- },
- {
- {
- -672162, 8099772, -1726577, 3850438, -5966247, 1116692, 107911, -2057826, 1301912, -1527935,
- -4624606, 5226975, 8764955, -2592013, -3837553, -8995272, -844498, 3478924, -10261214, 2120103,
- -14893336, -6441914, -8136816, 12438225, 9858024, 13008919, 2206540, -8272644, -2031520, 5342940,
- 2024540, -3976603, -2867965, 7124814, 4791573, -1884417, 1311039, 7588134, 2148021, 492848,
- 1285806, -1366337, 590558, 1947231, 500364, 3102577, 2881386, 2904472, 130997, -1643362,
- 1593970, -340913, 909459, -1042066, -1407676, -374736, -314606, 1080184, -241592, -165356,
- 2260764, 694711, -117575, 1579474, 1414118, -1628866, 985158, -907849, 461172, 403190,
- 22549, 395674, 208843, 187905, -864899, -98784, -555661, 92879, -114890, -1207960,
- -12885, 631360, 377420, -104153, -477278, -54224, -354335, -243739, 292595, -423054,
- 615254, -245887, -368830, 171799, 679142, -72478,
- },
- {
- -1400696, -59488520, -11166378, 12288975, -4335233, 410169, -1659468, 5028870, 455803, -503048,
- -2690797, -3753265, 3964255, -1169305, -4583267, 4040491, -2368675, 2854006, 4113505, -215822,
- -1738388, 4921496, -528818, 6756521, -5080410, 4921496, 3191161, -1867774, 1476395, -1895154,
- 92342, -1992865, 3469797, -1819992, -1473711, -4928475, 3199751, 171262, 649614, 3729642,
- 1017370, 2490544, -2379412, 1483374, -717796, 1066763, -4882841, 2048163, 477278, 1324461,
- -205085, -2011655, 875636, 2716567, 755377, -1001264, -2218888, -448287, 317828, -849330,
- -580357, 1588601, -204548, -853625, 1531156, 1180579, 1830193, 121870, 1436667, -356482,
- 1131724, 490163, 1037235, -752156, 305480, 221728, -303332, -112206, 1254131, 108448,
- -306553, -578210, 156229, -751619, -11811, -104690, 542777, -353798, -40265, -349503,
- -175020, -111132, -4832, 288300, -184147, -40265,
- },
- {
- 128312, 19513110, -2139431, 4908611, -6460168, -906238, -610959, 2343979, -989990, 823023,
- 1862942, -1969243, 5151277, 10192494, 3557844, -8710194, -9047349, -10752451, -9578314, -6038187,
- -2021319, 3597035, 474594, 3040837, -2959769, -595390, -4024921, 4530654, 2178622, -795643,
- -2895882, 1995549, 3727495, -3301756, 2265059, -721018, 2967823, 1938641, -1584306, -3299609,
- 3075197, 1646583, 73551, -318364, -249108, 1937567, 2751464, -3964255, 513249, 1000191,
- 1832340, 337155, 778463, 735513, 49392, -1649268, -1174674, -1560147, -1158567, -1099512,
- -451508, -877247, -2242510, 2057289, -593242, -834297, -1318555, -210990, -541166, 149250,
- 666257, 17180, 443992, -19864, 120259, 139050, -588411, -317291, -648540, 217433,
- 118112, 592169, -722091, -1066763, -166967, -69793, 216896, -18254, -562104, -245350,
- -302795, -12348, -212601, -149787, 188442, 282931,
- },
- {
- -1553168, -23553064, 2400350, 2604898, -549756, 358093, 304943, -1360968, -1551020, -1152125,
- 1433445, 1075889, 1128503, 3215320, 9009768, 6761889, 7631620, -4003983, 17542794, -343061,
- -9290014, 6838125, 478889, 5575405, -3332358, 1748589, -1978369, -2663954, -3521873, 3174518,
- 2390149, -8730058, -11458973, 2068027, 1956895, 3661460, -6547678, 3013993, 1774358, -964220,
- -1596117, -1716376, 1202054, 3248606, 1909650, -1981054, 239444, 74625, 765041, 1386201,
- 1213865, -1532767, -1067299, 701153, -155693, -310311, 1453846, 1195612, 974958, -392990,
- -1514513, 286152, -1012539, -915365, -70867, -741419, -25770, -810138, 566399, -37581,
- -128312, 85899, -1392106, -217970, -635655, 92879, -197032, -146566, -511638, -702227,
- -148176, 139586, -609885, 226560, -49392, -96637, 207769, -340376, 62277, -254477,
- -435402, -218506, -157840, -426812, -100932, -98247,
- },
- {
- -19149648, -88432304, 405338, -23536958, 6380174, 871342, -2187749, -1529008, -1682554, 1916629,
- -8174934, -381715, 4855998, -3430605, 1171989, 2646774, 2515777, 8640937, 298500, -1513439,
- 3445638, -903554, 456340, -3423089, 1502165, 6153078, 5663452, -1692754, -2367601, -369367,
- -326418, 3977677, 2001455, 411780, -88584, 1013075, 783832, 214212, 4983236, -1177895,
- 1007170, 1160178, 274341, 2399813, 1966558, -2267206, 1047435, 993748, 403727, -1996623,
- 1158567, -1673427, 1056562, 737124, -6979, -977105, -163209, 140660, 2090039, 2268817,
- -789200, -1159641, 362388, 1726577, 1364189, -501437, 92342, 1103270, -25233, 557809,
- -360777, -396748, -58519, 944893, 766652, 749472, 547071, -409096, 330712, -170188,
- 114354, -177704, 25770, 260919, 774705, -599148, 191126, -23622, 331249, 231928,
- 292595, -31139, 555125, 128849, -257698, 301185,
- },
- {
- 1052267, 1037772, -4230543, 3415573, -186831, -457951, 490700, 1960116, -1062468, 96100,
- 1377611, 211527, -2958696, 2583960, 31993212, -5610838, 4437238, 3971771, -2792266, 4974109,
- -3760244, -3173444, -239981, -6312528, 8713415, 8797167, -11938398, 1299228, -3699041, -11854647,
- -1460826, -1900523, 2486249, 2660195, -919123, -4435091, -4696547, -5025112, -1871532, 2837363,
- 794032, -5568962, -2156611, -788663, -1442572, 21475, 2327872, 1879048, 1969243, 2050310,
- 359704, 881542, 686658, 2058363, -237297, -947040, 344671, 1374926, 178241, 509491,
- -406411, -1037772, -192200, -986769, 787590, -432718, 796716, -583042, -1022202, -1360968,
- -597000, -469762, -129923, -987843, -488016, 802085, -268435, -509491, 346819, -2147,
- -593242, 132607, -215822, -468151, 13422, 145492, 188442, 428423, -144955, 46708,
- 201327, 164283, 110059, -569620, 395674, 77309,
- },
- {
- -37250252, -47542604, -13663365, 5913633, 5103495, -753230, -2136746, -3665755, -10623602, 8581345,
- 1218160, 5039071, -2935073, 3949759, -812286, -6245956, -12579422, -204548, 274341, 208306,
- 2415382, -2473364, 5143760, -3042448, -1562831, -469225, -1691143, 2283849, 1219234, -1623498,
- -2803003, 300648, -561567, -4248260, 1115081, 2153389, 551366, 293132, -1200980, -2420751,
- -4019553, 3628174, 2355253, -865973, 2077690, 629213, 1326071, 1746441, 3619047, -1209033,
- -1560684, -301185, 3651796, -3520800, 667331, -388158, 391379, -1455994, -1100049, -383863,
- 194347, 861141, -135828, -162135, -198105, 200790, -224949, -505196, 721018, -1930051,
- 5906, 233002, -427349, 64425, -289373, 197569, -455803, -1387811, 17717, 642098,
- -983011, -70867, -243203, -445603, 238908, 35970, 301721, -166430, -515933, 79994,
- 350577, -391916, -399969, -383863, -255014, -162672,
- },
- {
- 1012002, 5258651, 659814, -1293322, -931471, 190052, 605590, 335007, -2186138, -655519,
- -1553704, -1029718, 4914517, 5617281, 17663054, 16325708, 4723927, -6082211, -5435281, -10746008,
- 12556874, 12702903, -2164664, 4257387, 2145336, 5122822, -4704063, 7098507, -7807714, -1155346,
- 6314139, 1648731, 914291, -1487669, 2608656, 4125853, 1527935, -5677410, -2659122, -791885,
- 1444183, 2656437, -1818919, 897111, -309238, -1119376, -4797479, 1120450, 623307, -1240172,
- -4555350, -1335735, -806380, -344671, 776852, -3773129, 805306, 265214, -209917, -883690,
- -134218, -730144, -1430224, -301185, -581431, 98247, -264141, 65498, 607201, 964220,
- -369367, -135828, -34897, 831613, -182536, 142271, -197569, 119185, -1399086, -260919,
- -1129576, -64961, 475668, 842887, 399432, 183610, -178778, 537945, 20938, -394600,
- 13959, -351650, -201327, -796180, -387621, -170188,
- },
- {
- -750546, -154165696, -13037373, -3441343, 5174362, 4028679, 1362578, 1375463, -54761, -3607773,
- 3317862, -6655589, -2019172, -7694434, 3866008, 6589554, 3471407, 6519224, -4254702, 4088809,
- 2230162, 7266011, -491237, 1070521, -921807, 1510755, 5117991, 1058173, 1485522, 1863479,
- -1801202, 355409, -1438814, 2858301, -2159295, -722091, -4027606, 1156420, 2354716, 2582349,
- 5912023, -2049236, 467078, 688269, 387621, 442382, 1791001, -1319629, -122407, 857383,
- 1120450, -759136, -1263794, 2095944, -627602, -1894081, -15569, -606664, -90194, -272730,
- -1494112, -148713, -329639, 483184, 714575, 965831, 1602560, -119722, 197032, -68183,
- 310311, -1517734, -94489, -321586, 236223, 640487, -216359, 155156, 398358, 1091459,
- -952946, 19864, 406411, -753767, 631360, 527207, 868657, 75162, -452045, 84826,
- -81068, -760746, -60666, 6442, 81068, 459025,
- },
- {
- -3481608, -13944148, -2214056, 4312684, -1625645, -3280818, 4918275, -1227824, 105764, -669478,
- -5713917, 817118, -4394289, -5257577, -1744831, 2352032, 10744934, 7331509, 10056129, 4922570,
- 2673617, 12439299, -3963181, 2698850, -2635499, 7796977, -2748242, -9070434, -5611375, -3407520,
- 1891396, -4408784, -2804077, 565862, -5282810, -1939715, -5490042, -2640331, -668404, -1899986,
- -235149, 3606699, 1904281, -3801583, -257161, -1204202, -2547989, -93952, -101469, -2405182,
- 562641, -1410897, 2214056, -1581622, -6442, 1511292, -3116536, 1415192, -452045, -2353105,
- -571231, -807991, -162135, -2073932, -1825898, -265751, -21475, 52613, 759672, -574989,
- 906775, 72478, -49392, 635118, 880468, 231928, 1102733, 338229, 794569, 599685,
- 942745, 27917, -31675, 793495, -222801, 854699, -147640, -107374, 321586, -580357,
- -747324, 3221, -34360, -30602, -63351, -316754,
- },
- {
- 13470091, -108068360, -530428, 3369939, 3449396, -2848100, -20938, 381715, 5044976, -3097208,
- -1052804, 1480153, -820339, 1804960, 3142842, -3698504, 4594005, -580894, 9077413, 5386426,
- -113280, 1984812, -1239635, 725850, -5184026, -461709, -5869610, -811212, 1206886, -3405372,
- -506269, -276489, -891743, -1479616, -2530273, -1961726, 1222992, 150861, 335007, -2086817,
- 648540, -3369939, 641024, 195421, -469225, -216359, -1540820, -3221, -867047, 1814087,
- 740882, 943282, -1395328, -772557, 1930051, 1355062, 1822140, 485868, -449361, 138513,
- -504122, -166967, -197569, -208843, 843961, -938450, -1302449, 467615, -1171452, -1312113,
- 1522029, 672162, 792421, -74625, 508417, -66035, 38118, 627065, 868657, 445603,
- -291521, 488016, 119722, 722091, -76236, 569083, 52076, -199716, 242129, -48318,
- -132607, -313533, -150861, 311922, 235686, 335544,
- },
- {
- -1854352, -35290672, 2795487, -1976759, -135828, 384936, 2903935, -477815, 955093, 2490007,
- 3628174, 1999844, -1246614, -20082730, -11445014, 6892886, -82678, -1750199, -5870684, -1631014,
- 8762807, 2063732, -7794829, -11811697, 901943, 11972758, 4312147, -4486630, 6924024, -338229,
- -2367064, 3840238, 9338870, -2034204, -565862, -4273493, 3240553, 715649, -812823, 867583,
- -1634235, 1789391, 1229971, -2045478, 161061, 111132, 4076461, 1038845, 1005022, 1991254,
- 2138357, -1907502, -955093, -353798, -1658394, -790811, 636192, -1089311, 1073742, -1502165,
- -353261, -152471, -31675, 840740, 463856, 2684, -930934, -1249836, -263067, -894427,
- 624381, -756451, -317291, 499827, 587337, -928250, -1265942, -622233, -67109, -127775,
- 820339, -1250909, 11274, 295279, 443455, 238371, -133681, -265214, -260382, -512712,
- -304943, -217970, 107374, 385473, -185220, 259309,
- },
- {
- 54735064, 5855114, -3375844, -11770895, 1616518, -11902428, 13007845, 8614094, 2398202, 7861938,
- 3318936, 4257387, -6338835, 7341710, -4109210, 3583613, -3874597, 1550483, 674847, 6641630,
- 885837, -162672, -2880849, 4080219, 3603478, 11574937, 10167798, 2668249, -2974265, -2505577,
- 1696512, -2352568, -2756832, 51003, 2721936, -1917703, -1656247, 75699, 3329674, 377420,
- 4984847, 379031, 1869385, 1618666, 1690607, -4334696, -623844, 3474092, -755377, 2639258,
- 1682554, 5933498, 333397, -357019, -2215130, -1670742, 124017, 829466, -462246, -644245,
- -420907, -341987, 381178, -563714, -3323768, -522375, -1134408, 1086627, -1440962, -1127966,
- 1163399, -728534, -893890, 605054, 123480, -779000, 1433982, 1370095, 84289, 254477,
- -307627, 307090, -79994, 814433, 315143, -624381, 262530, -24159, 188442, 66035,
- 67646, -272730, -235149, 330712, 25770, -44560,
- },
- {
- 189515, -47492676, -1525787, -216896, 3083250, -166430, 2461016, 1541356, 2522220, -1915019,
- -1540283, -8135742, 4955319, -1845225, 32744830, -4731980, 2320893, 548682, -383326, 7927973,
- -3995393, -6731825, 3809099, -5281736, 87510, -3235184, 7122667, -4596689, 3921305, -4201015,
- -2367601, 2875481, 5220533, 1631014, -3285650, 2017561, -21475, -4902705, 4852240, 4066797,
- 2085744, -785979, -4281009, -979253, 2298344, -1117228, 1302449, 202937, -1603633, -1031866,
- 1767379, -1009854, 543850, -1681480, 137439, 650688, -1124745, 1967632, 82678, -2477123,
- 736587, -365072, 1367410, 84289, -502511, 1292248, 402653, -993748, -830539, 468688,
- -393526, -259846, 798327, 389231, 391379, -237297, 1683627, 708133, 32749, -560493,
- -499827, 78920, -76773, 394063, -433792, -148713, 52076, -878321, 130460, 309775,
- -329639, -125091, -325881, -110595, 17180, -695785,
- },
- {
- 22257594, 81151256, 16648904, -10296110, -8891656, -20868710, 2258616, -5661841, 4328254, 3380139,
- -417149, 4917738, -8169565, 6298570, -838056, 4678830, 1031866, 1503775, -3492882, 5547487,
- 3579318, -4389457, 5006322, -1949915, 5542119, -1271847, 7817914, -3440269, -665183, -1928440,
- 5076115, -373125, -3741990, 5568962, 824097, -337692, 199179, 1768453, 5066988, -1257889,
- -5513665, -1778653, 451508, 3505230, 5382131, 625992, 2880313, -2554432, -1069984, 1802276,
- -2117419, 55298, -2101850, -683974, -1628866, 967441, 16643, -863288, 2212982, -85362,
- -1522029, 1879585, 358630, 1382443, 156766, -121870, 779537, 1028108, 297427, -759136,
- 912681, 1029182, 1135482, 864899, 1182190, -197032, -219580, 638876, 93416, 84289,
- -1154809, 192200, 1010391, 11274, 528818, -171799, 115964, 35433, 289373, 893353,
- 662499, 256624, 84826, 161061, -149250, -275415,
- },
- },
- {
- {
- 338766, 11468100, -85362, 12635794, -2105071, 809601, 376883, -3152506, 2251637, 2455111,
- -2436857, -4841502, 2400887, -2562485, 2160369, 3549791, 4614406, 7903814, -11732777, 9545565,
- 230854, -2819646, -3886409, 7685307, 2353642, 12468827, -1174674, -2557653, 3643206, 5343476,
- 342524, -237297, -3255048, -1398012, -577673, -4908074, -563178, 3723737, 956167, -147640,
- 3390340, 1206349, -1503775, -1170379, -1982664, 2114735, 1391033, 716723, -252866, -2624225,
- 540092, 1202591, 1547262, -1412507, -1083406, 221191, -1260036, 540092, -488016, -63888,
- 1626182, -868657, -681289, 1164473, 255551, -1793149, 1010391, -848256, -178241, -246961,
- -696322, 33286, -622233, 62814, 468151, 900869, -176631, 312459, 493921, -503585,
- 397821, 366146, 260919, 201327, -134218, 272194, -66572, -93416, 304406, -139050,
- 320512, -177167, -312996, -185757, 372052, -72478,
- },
- {
- -3518652, -15643882, 7195681, 8136816, -634045, 1467268, -3068217, 3123515, -4690105, -2044941,
- 2568391, -1319092, 4110284, 922881, -2527052, 2652142, -2685965, 4859756, 6015639, 2995203,
- 132070, 5437966, -2347200, -3022046, -4598836, 7256347, 2893734, -3329674, 1300301, 1238024,
- 771484, -662499, 4499515, -5312875, -719944, -643171, 4043712, -897111, -2673617, -2372970,
- -632434, 3852049, -2094333, 1814087, -274341, 529355, -4432406, 1066226, -1529545, 2476049,
- 1880122, -1169305, -552440, 967978, 1211181, -937377, -1106491, 620623, 37581, 518617,
- 241055, 800475, -596464, -47245, 2000918, 398895, 886374, -807991, 943282, -122943,
- 171262, -454730, 561567, -590558, 919660, 96637, -306016, -730681, 682900, -41339,
- 653909, -257698, 181462, -605590, 554588, 342524, 174483, -122943, 242666, 196495,
- 110059, -25233, -235149, 231928, -337155, -180389,
- },
- {
- -611496, 16965658, -3350075, 27094802, 6881612, -53687, -1544041, -1216013, -1392643, -143345,
- -2273648, -4177393, -422517, 2792803, 6080063, 625455, 26307, 1145146, -2905009, 1581622,
- 4448513, -117575, -4231617, 941672, -3534221, -1158567, -2101313, 3926137, 3210488, -957241,
- -3811784, -1073742, -505732, -1720134, 3048353, -5470715, -484258, 2854543, 989453, -3413425,
- 619012, 1798518, 23622, -1235877, -405874, -4832, 1759326, -2228551, 1322313, 256087,
- 1280974, 496069, 1108102, 25233, -126165, -622233, -768799, 428960, 1429687, 341450,
- 124554, 125628, -1244467, 660888, -1593433, 88047, 162672, -768799, -1641751, -419296,
- 17180, -599148, 555661, 805843, 847182, 543313, -379568, 468688, -64425, 515396,
- 613107, 210453, -731218, 29528, 171262, -544924, 174483, -107374, -566936, -43487,
- -78920, 330712, 75162, -26844, 69256, 282394,
- },
- {
- 631897, -21998286, 372052, 1123671, -518080, -119185, 221191, -1305133, -2718714, 52076,
- 2243047, -1053878, -1340567, 3745212, -5917928, -14259291, 791885, -3435437, 4071629, 8172249,
- -3952981, 1343788, -2138357, 1024887, -8230231, 9030706, 2875481, 84826, 500901, -1352915,
- 124017, -3642132, -7036767, 1062468, -1660005, -877784, -3581466, 3008625, 994822, -707059,
- -2164664, -1925756, -1917703, 222265, 2332704, -1506460, 1903744, -717796, -1032403, 54224,
- 472446, -1896765, -550293, 1541893, -26844, 665183, 1376537, -301721, 848793, -90194,
- -791885, 411780, -483721, -127775, 492311, 599685, 138513, -1523640, -81068, -333934,
- -766115, 207769, -325881, 881005, 202400, 512175, -579284, -306553, 57982, 333397,
- -194347, 132607, 37581, 339302, 159451, 344671, 100395, -474594, -402653, -226560,
- 85899, -23622, 198105, 5906, -124554, 4295,
- },
- {
- 22000434, -35092032, 3755949, -21879100, -1902671, 1545651, 2774012, 2645163, -4634807, -2850785,
- -2714956, 6445672, 7474317, -1226213, -3052648, -3599720, -5333813, 5884105, -1057636, -1360431,
- 1891396, -4563403, 3082176, -158914, -2570001, 1414655, 3703873, -3117073, -3351685, -2039036,
- -3485903, 1997697, -1624571, -1326608, 1214939, 421981, 3950833, 1268089, 2530810, -1681480,
- -2314451, -892816, -1540283, 1822140, 293132, -2081985, 3064459, 1216013, 288837, -1527935,
- -214212, -847182, 428960, -1058710, -578747, -1109712, 821949, -1493575, -1102196, 944893,
- -422517, -525597, 331249, 813359, 184147, -616328, 79457, 544387, -282931, 160524,
- 547608, 433792, 466541, 149250, 323733, 912144, 379031, -96637, -230318, -799938,
- -358630, 7516, -53150, -173409, 49929, -401043, 383863, -215285, -13959, 71404,
- 299574, -152471, 64425, -156229, -139050, 310848,
- },
- {
- -443455, 2449205, 2391760, 2476586, -1459215, -132607, 87510, 1400159, 66572, 777389,
- 630286, 1483911, -2289755, 543850, 17360258, -8707509, 7851200, 2079301, -6437619, 3854733,
- 4509179, 4364224, 392990, -11274826, 2377801, 11197517, -18303004, -4359392, -3008088, 2529736,
- 9610526, -1645509, -344671, -1767379, -3110093, 480499, 584116, 510027, -969052, 25770,
- 595390, -3073586, -1945620, -248571, -377957, 764504, 771484, -1184337, -520228, 1009317,
- -568009, 114354, 306016, -51540, -833761, 126165, 609885, 350577, -66035, 479426,
- -95563, -1510755, -136902, -924492, -907849, -1071058, 682900, 135291, 419833, -645856,
- 427886, 1294396, 578210, -702764, -250182, 344671, -573915, -166430, -25233, 137976,
- -23622, 958315, 432718, -126165, -251256, -101469, 331786, 622770, -54224, 70330,
- 130997, -322123, 302795, -10737, 477278, 202400,
- },
- {
- 25504590, 60108068, 10658498, 10463614, -4906464, 1564442, 2530273, 7072201, -7331509, 3566434,
- -3628174, 8421357, -741956, 5262409, -1055488, -4045859, -4986994, 4456566, 1277216, -2829847,
- -1168231, -1546188, 3425773, -5683853, -1960653, -1884417, -1481227, 2799245, 145492, -894964,
- -2822331, 928787, 2173254, -2937758, 309775, -352724, 1135482, 480499, 1061394, 2643552,
- -2557116, 1439888, -1456531, -3065533, 114890, -1678795, 4699768, -209917, 1006633, -1834488,
- -741956, 489626, 1946694, -1731409, -584116, -2043331, -489626, 282394, 246961, 13959,
- 1896765, 800475, 561567, 1212255, -501437, 137439, 867583, 304406, 446677, -1747515,
- 411780, -107911, -672162, 130460, -63351, 909459, -194347, -1022739, 309775, 1112933,
- -504122, 205622, -251256, -657130, 188979, -205085, 150324, 28454, -118648, 159988,
- -75699, -117575, 123480, 26844, 137976, -56371,
- },
- {
- -243203, -945430, 4118874, 3004330, 478352, 766652, 176094, 513785, -1510755, 1762547,
- 1829656, -3114925, -2236604, 2627446, 11338177, 9795747, -678068, -8479339, -945430, -12976170,
- -4036733, -2834142, -6909529, 3281892, 220654, 7605850, -2196876, 6544457, -3101503, -5739150,
- 701690, -7867843, 1584843, 2931852, -3412889, -1623498, -2661806, -4436701, 1627256, 585189,
- -123480, 1079111, -1493575, -438624, -1236414, 843424, -3016141, 2809446, 63888, 209917,
- -1991254, -393526, -1192390, -1628330, 1802813, -2587718, 1759326, 1400696, 302258, -947040,
- -1801739, -2084670, -782758, 753230, 108985, -48318, -575526, -1048509, -927713, 759672,
- 333934, -316217, -656056, 543313, -86436, -447213, -1068373, -203474, -480499, 137976,
- -191126, 199716, -89657, 48855, -613643, 31139, -560493, 269509, -295279, -152471,
- 544924, 11274, 223338, -98784, -275415, -138513,
- },
- {
- 20175072, -103939816, 14732275, 7258495, -5296769, 94489, -2229625, 311922, -762894, -6082211,
- 3194382, -3862249, 1491427, -7236483, -2963528, -3976603, -4379256, -3344706, -7275138, 1611687,
- -1298154, 4246112, -4632122, -874563, 949188, 984621, 3040837, -1581085, 513785, 2741263,
- -2323577, 765041, -1945083, 3578782, -1374390, 3787624, -2617783, 44023, -294742, 1364726,
- 3709241, -2886755, -1029182, -1245004, 915365, -796716, -1630477, -1495722, -159451, -3033858,
- 1489817, 312996, -547608, 3569118, -1806571, -1074279, 727460, 1445257, 1239098, -420370,
- -1639604, 655519, -602369, -425739, -501974, -1087164, -243203, -293132, -767725, -449361,
- 1086090, -384936, 282394, -399969, -300111, -23622, -433792, 516470, 372052, 621697,
- -1030792, 334471, 753767, -576599, 348429, -393526, -404264, -354335, -192737, 447750,
- 236760, -254477, 88584, -355409, -17717, 380641,
- },
- {
- 2881386, -11203422, -7611219, 4316442, -3814468, -7745437, -202937, 1381906, 1403381, -1086627,
- -828392, 3723200, 1486596, 3925600, 7512972, 7556995, 1525787, 1733556, -999117, 1690607,
- 1605244, 4626754, -3612068, 8353712, 331786, 5771363, -4912906, -3395172, 564251, -5756867,
- 776315, -437550, -2537252, 1715303, -2129230, 2234457, 1504312, 1619203, 294742, 2211908,
- -105227, -320512, 3147137, -1204738, 1433445, -200790, -2217814, -66035, 1533840, -1204202,
- 884226, -1144072, 2688113, -2384244, 111132, 1383516, -3429532, 720481, -537408, 130997,
- 1308354, -427886, 1093069, -863288, -1272921, 2147, -651224, -666257, 332323, -33286,
- 44560, 284542, 339302, -137976, 103616, -358630, 842350, 279173, -194884, -152471,
- 601295, -66035, -474594, 89121, -679679, 641024, -51003, -399432, -229244, -273804,
- -131533, 350040, 606127, 154619, 67109, 38655,
- },
- {
- -8587250, -122555816, 7443715, -766115, -3865471, -15089294, 9040906, -1979980, -2096481, -3488587,
- 5120675, 3520800, -5576478, -374199, 11104638, -2413235, 5071820, 228707, 7349226, 763430,
- -2039573, -950798, -3078418, -577136, -4195110, 1886028, -1726040, 3723737, -1639604, -4481262,
- -488016, 874026, 332323, -1621887, 4645007, 4823249, 226560, -675384, 2051921, -1509144,
- 1326071, -99858, 3037079, 282931, -746251, 1067836, -369367, -126702, 1017907, 2272575,
- 518080, -179315, -1818382, -616865, 685584, 53687, 1159641, -318901, 1283122, 414464,
- -2204392, -587874, -677531, -584116, 748398, 54761, -130997, 596464, -1001801, -794569,
- 357556, -580357, -44023, -1159641, -352187, -299037, 354335, -461709, -432181, 417149,
- -328565, 354335, -272730, 256624, 314606, -219580, -52076, 89657, 201327, -352724,
- -402116, -266825, 15569, 69793, 71404, 164283,
- },
- {
- 605590, -34475164, -446140, -618475, 383863, -3247532, -613643, -2514703, -1666984, -1307818,
- 65498, 621697, -2899640, -4037806, 10673531, 2490544, -2748779, -3569655, -4524748, -4192962,
- -6292127, -8296803, -4268124, -10916733, 6344204, 7602092, -8114267, -8461086, 3705483, -2100776,
- 6276558, 5854578, 5796059, -4460861, -381715, -957778, 8527658, 2869038, 695785, -419296,
- -789200, 432718, -192200, -1610613, 1741072, 2186675, 2052458, -1728188, 2749316, 2116882,
- 243739, -1152125, -964757, 181462, -1266479, -965831, 1042603, -59056, 1975685, -99321,
- -964220, 1611, -68719, -654983, 579821, -133681, -946503, -556735, 1255204, -739808,
- -110595, -609349, -770947, 39728, 943282, 71941, -255551, -103079, 414464, -395137,
- 183610, -461172, 677531, -238908, -390305, -292595, -129923, -260382, -60130, -130997,
- -85362, 537, -60130, 75699, -514322, -64425,
- },
- {
- -41774464, -131440496, -79994, 7297150, 11222750, -22089016, 3813931, 8312909, 7086696, 8069707,
- -4057670, 1704565, -7837242, 11555610, -853625, -2477123, -5081483, -2268817, -2364916, 4862440,
- 2490007, 2605972, 1999307, 3785477, -7366943, -984084, 3786551, -4032438, -1153736, 526670,
- -883153, -5204427, -3054259, -3536906, -1981591, -2952790, 2294050, 3139621, -811749, -3940633,
- -374736, -4081830, 1781338, 1739999, 1212255, -1179505, -1148904, 3353296, 1540283, 3796751,
- -662499, 4578435, 415001, -3148748, -2864206, -1197759, -1146219, 1304060, 140123, 734976,
- 198642, -768799, -901943, -482110, -935229, 689879, -773094, 2110440, 322659, -304943,
- 811749, -259846, -805843, 2684, 5906, -700617, 610959, 30602, -73551, 449361,
- 76236, 606664, -512175, 581431, 214212, -100932, 711891, -29528, 93952, -104690,
- -184147, -512712, -596464, 222801, -173409, -103616,
- },
- {
- -685047, -47115256, -2860985, -402116, 975494, -399969, 1634235, -1445793, 885300, 1348620,
- 2231236, -1267552, 3564823, -10630044, 17233556, -5194763, -3784940, -881542, -3114388, 13166222,
- 4576288, -3011309, 3796214, -858993, 6245420, 230318, 8555038, -7186554, 8991514, -1103270,
- 1558536, 1789391, -3431142, 656056, 112206, 359704, 1648194, -5317170, 1117228, 2989834,
- 491237, 1603097, -1131724, -210990, 2175938, -1228361, -44023, 886911, 512175, -202400,
- 161061, -1940788, 2408403, 404264, 1927904, 839666, -1377074, 1877975, 32212, -919123,
- 1668058, 1471026, 1508607, -359167, -1104344, -71404, 115964, 369367, -560493, 118112,
- 689879, 552977, -75162, -222265, -53150, -855235, 846109, -730144, -406948, -71404,
- 273267, 790811, 107911, 344134, -354335, 376347, 491774, -630823, 567473, 142271,
- -196495, 86973, -129923, 130997, 144955, -472983,
- },
- {
- -30983358, 648003, 18820546, -1037772, -5949604, -5323075, 15311022, -985158, 8549132, 6125697,
- -5675800, 1682554, -5153961, 2610266, -4226248, 5583458, -6600291, -5543192, -4933844, 6799470,
- 2767570, -7645042, 3412352, 294742, 6038724, -4919885, 2160906, -2522757, -612570, -2034204,
- 743029, -2229088, -4998268, 4713727, 1988570, 699543, 47245, 1610613, 3190087, 696858,
- -4964982, 771484, 2340220, -469225, 2185602, 2090039, 3440269, -2056216, -396211, 2630668,
- -870268, -197569, -2156074, 977642, -624381, 316217, -355409, -387084, 1903207, -515396,
- -1436667, 1465658, -530965, 938450, -320512, -518617, 365072, 838056, 460098, -1045288,
- -226560, -178778, 11811, -539555, 466541, 110595, -365609, 416612, -351114, -142271,
- -717260, -331249, 725313, -297427, 656593, -411243, 230318, -68719, -206158, -7516,
- -39192, -9127, 122943, 49392, -376883, -24159,
- },
- },
- {
- {
- -522375, 9284109, 188979, -998580, 8771397, 5369, 1612760, -1326608, -714038, 3173981,
- -2054605, -2498060, -4225174, -4168266, 2767570, 2790118, 5922760, 2502892, 5071820, -891743,
- 925565, 1739462, -4715337, 4202626, 2619393, 9888088, 998580, -2797098, 2459943, 1109175,
- -298500, -182536, -2445447, -2189360, -3089155, -2475512, 1174137, -276489, -783295, -656593,
- 4918275, 2589865, -3223910, -1592359, -2094333, 1098975, 1162862, -1002875, 831076, -1079111,
- -148713, 1627793, -502511, 17180, -341987, -53687, -749472, -221191, -547608, 741419,
- 128312, -406948, -69256, 815507, -690416, 580357, -563714, 228170, -555661, -71404,
- -699006, 220117, -627065, 5369, 298500, 217433, 459025, 188442, 347355, -274878,
- 507343, 311922, -54224, 745177, 21475, 214748, -173946, 159451, -197032, 282394,
- -121870, -201863, -112743, -43487, -113280, 102005,
- },
- {
- 5241471, 2391223, -18442052, -9990094, 8675297, -77309, 125628, -3168612, -1422171, 2843268,
- -4636417, 903554, 3040300, 659814, -697932, -1835025, -2850248, 4870493, 3309272, 1682554,
- 961536, 6698539, 156766, -6043019, 4326643, 860067, 140123, -2469069, 2174327, 3002182,
- 668941, -3688840, 1382443, -2593087, 355945, 161061, 306016, -165356, -1821603, -3056406,
- 122943, 1156957, 1576790, -465467, 1661616, -2609730, -92342, -3303904, -754304, 2528662,
- 1960116, 651761, -44560, -458488, 306553, -1436130, 1832340, -595927, 61203, 1549946,
- -414464, 852551, -434329, 101469, 602906, 746787, 121333, 435939, 113280, 556198,
- -322123, -875636, -128312, -93416, 389768, -1074, 210990, -815507, 118648, 264677,
- 407485, -91805, 166430, -372052, 721555, 231391, -88584, 81604, 206158, 441308,
- -24696, 3221, -195958, 224412, -121333, -46171,
- },
- {
- -588411, 11979201, -2495376, 19432042, 9093520, 462246, -1595580, -1663763, -622233, 292058,
- -3052111, 4251481, -8801462, 4814659, 163746, 4438312, 91268, 1366873, -1694365, 6147172,
- 8182450, -2861522, -9254044, 1910187, 242666, -5289252, 6700149, -1669132, 3476239, -1228898,
- -791885, -1879048, -3443490, 309238, 1925756, -2907156, 1521492, -381715, -862752, -341987,
- 1903207, 1312649, 571231, -2525441, 74625, -501974, 679679, 83215, 16106, 25770,
- -21475, 843424, 1774895, -209380, -280784, -404264, -289910, 464393, 1180042, 805306,
- -427349, 374736, -335544, -1064615, -717796, -419296, 967441, -699006, -1074816, -631360,
- -156766, -375810, 334471, 1163936, 447750, 759136, 236223, 249108, 176094, 66572,
- 863825, -217970, -510564, 183610, 34897, -414464, -265214, 129923, -396748, -158377,
- 169114, 368293, -66572, 176631, 20938, -74088,
- },
- {
- 606127, -27400280, 2920578, 1416266, -342524, 426276, -705448, 872415, -3135326, 1728724,
- 119185, -2509335, -4738423, 7477001, -12943958, -6190122, -6518687, 14408005, -19574850, 17627620,
- -1852205, 728534, 456340, -1724966, -630286, 1961726, 6063420, 2622078, 1025960, -2682207,
- -816581, -2419677, -3835943, 211527, -1418413, -2880849, 4461934, -2297271, 2842732, -1005022,
- -1094143, -2338073, -1230508, -1831804, 2585570, -1320703, 2502892, -347892, -535797, -474057,
- -846645, 547608, -1178432, 1264331, 914828, 1495722, -85362, 62814, 7516, -147103,
- -261993, 657667, -141734, 146029, 311922, 1131724, 563714, -1138166, -869194, 374736,
- -767725, -480499, 475131, 363462, 374736, 1026497, -600759, -489626, 23622, 355945,
- -52076, 256624, -146566, 491237, -20401, 230854, -222801, 27917, -268435, -533650,
- 87510, 42950, 243739, 186831, -29528, 53687,
- },
- {
- -15289010, 4668630, 1110786, -25407952, 7561290, 1623498, 4391604, 421444, 1483374, -7581691,
- 5359046, 1174137, 6376416, 1074279, -1588601, -4714801, -5559835, -1895154, -165356, 4308926,
- -2676302, -3240016, 3740917, -2578054, -3303367, 842887, 314606, 781684, -2467459, -3332358,
- -2319819, 535260, -4335770, -612570, 2578591, 2748779, 1293859, 1717450, 646929, -1386738,
- -2533494, 258772, 784368, -722628, -1679869, 1078574, 3139621, -126165, 134218, -1883343,
- -2169495, 1705102, -455803, -1504849, -273804, -920734, 536871, -687195, -1538135, -449898,
- 1101659, -598611, -261993, 785442, -46708, -1038845, 74088, -33286, 248034, 241592,
- 401043, -396748, 805843, 11274, 754841, 199716, 329639, 338766, -718333, -65498,
- -703838, 28991, 288300, -241592, -383863, -46171, -80531, 245350, -502511, 104690,
- 29528, -20401, -179315, 44023, -100395, -4832,
- },
- {
- -722628, 10588705, -448824, -1300301, 224949, -752693, 756988, 1129576, -920734, 1866163,
- -52613, 1298154, -2841658, 2091112, 9003862, -4714264, -3766150, 5734318, 3123515, -1791001,
- 1454383, 4485557, 2284923, -2967823, -5443871, 5526549, -8917426, -5243082, -281320, 9596031,
- 3785477, -2336999, -2454037, -709743, -1141388, 2519535, 1651952, 2272575, -1403381, -1753957,
- 2025614, -2763812, -688269, -285615, 579821, 2109903, -1280437, -1961726, -887448, 1864016,
- 164819, -804770, 927176, -1368484, -264677, 828929, 52076, -85362, -421444, 155693,
- -839666, -677531, -449361, 41876, -1717450, -542777, -57982, 175557, 881542, -602906,
- 493921, 1246614, 530428, 111132, -139586, -121870, 28991, 319975, -118648, -243739,
- 825171, 364535, 416612, -347355, -1611, -150861, 277025, 345208, 230318, 39728,
- -16106, -104690, -27917, 327491, 206695, 139050,
- },
- {
- -4601521, 100942472, -4599910, 16691854, 5476620, 170725, 461172, 10558103, -4527970, -815507,
- 1315871, 5994701, 3768297, -337155, -1505386, -6338298, 1991254, 1175747, 2147, -3388729,
- 510564, 1968169, -3272765, -3356517, 881542, -1548873, -534723, -914828, 1460289, -128849,
- -3506841, 789737, 2566780, 16106, -1201517, 12348, 570157, 1228361, -1275068, 2981244,
- 1404991, -2594160, -724239, -1948305, -1069447, -937377, 4692789, -3344706, 1076963, -2013803,
- 836982, 1372242, -1939715, 346819, -652298, -570157, -960999, 1261110, 458488, -54761,
- 1685238, 945967, 852014, 1042066, -104153, -206695, 803159, 985158, -476741, -469225,
- -467078, -371515, -256624, 8590, 54224, 995896, -191126, -387621, 158377, 573915,
- -14496, 436476, 235686, -484258, -392990, -344671, 410169, 203474, -574989, 6979,
- 24159, 190052, 274341, -75699, 475668, -370441,
- },
- {
- -932008, 2965138, 3187403, 1058173, 1470489, 652835, -162135, -1297617, -193274, 1675037,
- 2065342, -3281355, -2820720, 2927020, 10534481, -10830297, 1017907, 4214437, -2783676, -10894721,
- -4299799, -4181151, -4730907, 5827197, -4997195, 92342, 8604967, 3122441, -1297080, -6221797,
- -989990, -4271345, -306553, 2102387, -3724811, -3167539, -3919158, -2778844, 5351530, 1421634,
- -2495913, -1313186, 1257352, -829466, -1062468, -1126355, -743029, 2683818, -608275, -620623,
- -892279, 1288490, -2300492, -294742, 601832, -576599, 158914, 1090922, 22549, -21475,
- -1157494, -1966558, -543313, -113817, 937914, -52076, -632971, -586263, -1139777, -259309,
- 634581, 868657, -1029182, -119185, -27380, -477815, -474594, -268435, -235686, -55298,
- 104690, -26307, 82141, -351650, -316754, 137439, -442382, -190589, -307627, 367757,
- -36507, 296353, 221191, -72478, -272730, -79457,
- },
- {
- -26783416, -43832824, 3020436, 17286170, 3008088, -2488934, -593242, -4086662, 539018, 1276142,
- -461709, -7261716, 4277788, -1432909, -10364293, -1934346, -3137474, -9436580, 421444, -3956202,
- 3704946, -1138166, -1008780, -1418950, 1312113, 1124208, 2188823, 270046, -1061394, 2716030,
- -359167, 383863, -3670587, 3133716, -2551211, 4081830, -491237, 22012, -648003, 2491618,
- -1514513, -142271, -807991, -649614, 181462, -1814087, 469762, -1657321, 1398012, -5099200,
- 1479616, 184147, -450435, 1865090, -1013075, -458488, -257161, 1908576, 1689533, -928787,
- -1490354, 252329, 573378, -853625, -1435593, -492311, -1600412, 370441, -839129, -620086,
- 566399, 99321, 177704, 49929, 26844, -545998, 3758, 446140, 421981, 317291,
- -258772, 177167, 217433, -200790, 193274, -300648, -912144, -305480, 161598, 387621,
- 76236, -129923, -102005, -39192, 36507, 217970,
- },
- {
- -1504849, -10931229, 812286, -8355859, 1975148, 76236, -10180683, 6007586, 756988, -2008971,
- -1111860, 649614, 5772436, 2132988, 14244259, 4090956, -3653407, 5173288, -4387846, 1981591,
- 1879585, -567473, 1961190, 5243082, 1061931, 4413079, -2910914, -2151242, 1119913, -2778844,
- -3036005, 2001992, -3453691, 4790499, -848793, -908386, 6183143, 2524367, 1060320, 1100585,
- 1913945, -1559073, 3853660, -2033667, 1478543, -1153199, 801548, -1765232, 746787, -129386,
- 1626719, -132607, 1910187, -1877975, -220117, -1193464, -61203, 215822, -1120450, 281857,
- 1115618, -40265, -421981, 442382, -1443646, 270583, -493384, 249108, -399969, 331786,
- -491774, 545461, 103616, -12885, -44023, -195421, 99321, 74625, -142808, -257161,
- 27917, 597537, -512175, -37581, -481036, -79457, 151398, -133144, -472446, 55298,
- 66035, 506806, 685584, -191126, 281857, -76773,
- },
- {
- 5197984, -128006128, -3526168, -7405061, -4361003, 51540, 4121558, -3241627, -2365453, -4533338,
- 5056787, 1340567, -158377, -2421288, 11687680, -4586488, 3366718, 9934796, 1305133, 2122251,
- -1533840, -5073967, -5502390, 1577864, -3476776, 743566, -668404, 3294240, -692027, -909996,
- -295279, 576599, 971736, -2000918, 6569153, 4425964, -2631204, 1044751, 1893007, -1095754,
- 1853815, -882616, 1620276, 780610, 1144072, 535797, -69256, -744103, 1854889, 449361,
- 871878, 144418, -1140851, 644245, -975494, -912144, -49929, 600222, 2290828, -227096,
- -2065879, -759672, -191663, -284542, 718333, -22549, 1002875, -1332514, 379031, -861141,
- -109522, -366683, -938987, -251792, -586263, -567473, 471910, -465467, -396211, 30602,
- -199179, -114354, 98247, 69256, 547608, -574452, 50466, 396211, 22549, -470299,
- -178778, -168041, -246961, 60130, 99858, -83752,
- },
- {
- 710817, -35078608, 2401961, -2961380, -1762547, -1540820, -3984119, -2379412, 4592394, -2487860,
- -2374043, 566399, -768262, 3970697, 7342247, 342524, -4166118, -90731, -1371705, -6803765,
- -5498632, -12199855, -3807489, -6178848, 2208150, 3814468, -14165339, -3799972, 4995584, 4633196,
- -3015604, 7816304, -3612604, 703301, -3177739, 4562329, 2754148, 7417946, 2192581, -4287988,
- 1268089, 2623688, -2438468, 1073205, -1464047, 2481417, 1076963, -2282238, 3285113, 1080721,
- 347892, -295816, 528818, -373662, -854699, -1530619, 1051193, 371515, 1108638, 115427,
- -425739, -362925, -809601, -1326608, 1454920, -417149, -933082, 371515, 10201, 526670,
- 212601, -890669, -894964, 253940, 294205, 530428, 530428, -551366, 184147, -123480,
- -300648, 331786, 280247, -358093, -242666, -464930, -542777, -34897, -57982, -488016,
- 141734, 60666, -190052, -58519, -275415, -76236,
- },
- {
- 12172474, -200636176, -5315022, 422517, 16965120, -6309844, -2665564, 3429532, 9074729, -1962800,
- -1987496, 1648194, 477815, 3354906, 1873143, -3872987, -5190468, 2654290, -4773856, 1102196,
- 4976257, 1717987, 3518652, -1657321, -2350958, -3633542, -1740536, -3178276, -475668, 2275796,
- -3133716, -3751654, -299574, -4841502, -2479270, -267362, 370441, 3742527, -3907883, -3577708,
- 1290101, -7024956, 2010582, 1922535, -2423972, 1095217, 2203318, -463856, 3506304, 2122251,
- 6442, 364535, 1694365, -2768107, -1592359, 390305, -2181307, 261456, -304406, 2066953,
- -9127, -980863, -612570, -876710, 289373, -140660, -526134, 963683, 788663, 441845,
- 37581, -191126, -188979, -223875, 426276, -33286, -39728, -760746, 707596, -113817,
- 194347, 71941, -111669, 68719, 228170, 251792, 184684, 230318, 306016, -523986,
- -638340, -27380, -333934, -195958, -202937, -37044,
- },
- {
- 1262720, -45207752, -9862319, 3234647, -647466, 3095061, -5308043, 661962, -33823, 3170760,
- 1826972, 2328409, 1268626, 158914, 702227, 585726, -4924180, -3676492, 1426466, 10100689,
- 1970853, 898722, 4023848, 2187212, -568009, 5339181, -707596, -4295504, 5089536, 6161668,
- 6390912, -4431333, -3456375, -1181116, 3448322, -3957276, 2867965, -1074279, -8590, 146566,
- 2187212, 2100776, 841277, -1097364, 1606855, -3245922, 1271847, 1673427, 1915555, -1211718,
- 132607, -1356136, 2104534, -476741, 1859721, 403190, -862752, 1456531, 162672, 556735,
- 2406792, 766115, 1096827, -13959, -526134, -1024887, 226560, 314069, 19864, 195958,
- 481036, 236223, -806917, 323733, -213138, -317291, -386547, -406411, -750546, -15569,
- 1171989, 234613, 73014, 354872, -278636, 167504, -26307, 66035, 237297, 180389,
- 187905, 65498, -222265, 171799, 121870, -155156,
- },
- {
- 25807384, -66765804, 1622424, 1548873, -1163399, 4035122, 9870372, 2988224, 7151121, -796180,
- 2790655, 1396938, -5924371, 2235531, -7796440, 6132140, -3018825, -406411, -5648956, 2190433,
- -4824859, 2889976, -3666292, 5437966, -1189169, -4147865, -1078574, -449898, 2851322, -2092723,
- -656593, -1424855, -5260261, 1796370, 3477313, 675921, 70330, 2732136, 362925, 2786360,
- -2216740, -2042794, 3839164, -2361695, -936840, 3401614, 1126355, -877247, 718870, -156229,
- 1541893, -102005, -537945, -179852, -288300, -279173, -457951, 1301912, -701690, -177167,
- -377957, 365072, 1060320, -933082, 45097, -752693, 355945, 468151, 278099, -354872,
- -641024, -390305, -97174, -929860, 441845, 238371, -37044, -164283, 160524, -814433,
- -47245, -28454, -303869, 149250, 650151, -146566, 32749, -121870, -122407, 5906,
- -406411, 121870, 39728, -80531, -405338, 83215,
- },
- },
- {
- {
- 637266, -1719061, -9946607, -18080738, -3961571, -86436, 3935264, 891206, -3400004, 1265405,
- -4231617, 405874, -3188476, -2973191, 6120866, -1853278, -2076617, -1936493, 8549669, -1577327,
- 807454, 2630131, -8502425, -7605850, -8978629, -2083596, -1476932, -1177358, 3311420, -5262946,
- -8252780, -1579474, -3642669, -1577327, -3264712, -1365263, 56371, -4364761, -3117610, 24696,
- 3572876, 1723893, -1481227, 1292785, -645856, -268435, 1066226, -1179505, 1548336, 1930588,
- -177704, -997506, -1450625, 1244467, 1293859, 1688996, 731218, 105227, -440234, 265214,
- -494458, 10201, -212064, 326954, -41876, 1645509, -946503, 770947, 423591, 906238,
- -111132, 57982, -33286, 147103, -388695, -358630, 138513, -132070, 590021, 147640,
- 571768, 335007, -49392, 977642, -308701, -292058, -346819, 111669, -629750, 47782,
- 19864, -242129, -137439, -83215, -181999, 214212,
- },
- {
- -4164508, 15015743, 2536178, -18487686, 3171833, -839666, 535797, -2308008, 1497870, 3030100,
- -3570729, 3798362, 2077690, 2226941, -4669167, -7567196, -3435974, 4066260, -86973, -1433982,
- -4221953, 847182, 3173981, -1650341, 6594923, 3172370, -2797634, -2610803, 5834176, 2679523,
- -2696166, -4882304, 2537252, 1199370, 4531191, 761283, -2488397, -905164, -1404454, -1302449,
- -223875, 199716, 2332704, -565862, 2244657, -1858647, 2158758, -2724620, -457414, 1362042,
- -635655, 722628, 575526, -2100239, -491774, -938987, 2404645, -1225676, -446140, 358093,
- -1167694, 103079, -387084, 425739, -242666, 562104, -317291, 574452, 48318, -156766,
- -371515, -456877, 151934, -52076, -198105, 139586, 400506, -504659, 280784, 67109,
- 75162, -68183, 322123, -175557, 384936, -349503, -201863, -147103, 162135, 260382,
- -9127, 308701, 52613, 213675, -39192, 65498,
- },
- {
- 2610266, 27631136, -20401, -32210644, -25587804, 2003602, 2345589, 3320547, 1817308, 2634963,
- 2149094, 11048266, -3944391, 8493835, -7936026, -2455111, -2748242, -3168075, -1648731, 4778151,
- 4072703, -1610076, -4355634, 4543002, 2706903, -4488241, 6850473, -3213709, 1854889, -608812,
- 1489817, 3837553, -303869, -1178969, 2942590, -40802, 3311420, 76773, -745177, -787590,
- 2000918, 1953136, 1218697, -1510218, 1415729, -97174, 1569811, 1536525, 97174, 58519,
- 538482, 93416, -403727, -1172526, 722091, 1406065, 941135, -384400, -118112, -63888,
- -1326608, 536334, -519691, -768262, 311385, -206158, 968515, 95563, -241592, -905164,
- -117575, -101469, 319438, 527207, -261456, 761820, 361851, 187368, 270583, -244276,
- 295816, -324270, -562641, 112743, 114890, -123480, -83215, 571768, 34897, 106837,
- 35433, -9664, -43487, -2147, -217970, -268435,
- },
- {
- -1184874, -36056252, -2736968, 499827, -1380295, 1106491, 631360, 2898029, -1421097, 3109556,
- 1736241, -471373, -1901060, 7004555, -9124658, 8415452, -4366908, 7026567, -19830938, 11281805,
- -1668058, 3112241, 4190278, 2709051, 5128728, 2178085, 4321811, -1602560, 1270237, 1463510,
- -532039, 1214939, -884226, -1592896, 315680, 710817, 3536369, -4378719, 2408940, -692564,
- 1563905, -1126355, 590021, -549219, 2245194, -1597728, 849330, -178241, 147640, 352187,
- -340376, 1328756, -1045825, 623844, 255014, 1381906, 139586, 343061, -874026, -30065,
- -113280, 835371, 615791, 1001801, 9664, 266825, 305480, -529355, -255014, 751082,
- -424665, -284542, 188442, -423054, -206695, 571768, -219580, -238371, -325344, -197569,
- -345745, 23085, -347355, -48855, -637803, 175557, 105227, 34897, -154619, -266288,
- -6979, 11811, 46708, -83215, 69256, 15569,
- },
- {
- 1272384, 9699110, -6666326, -32237488, -5948530, -210990, -371515, -1610613, 5863167, -136902,
- 7021735, -5069672, 4523675, 1761474, 6578816, -1292248, -10087804, -4001299, 2252710, 5381057,
- -1381906, 195958, 2100239, -4874788, -5291400, -3051574, -1081795, 3979287, -711354, -1309965,
- -837519, 56371, -1527935, 216359, 2667175, 5237713, -1500554, -229244, -315143, -3798362,
- -3131031, 82141, 3755949, -978179, -1708323, 2342905, 1415192, -3224447, -6979, 1191317,
- -133144, 1527398, -461172, -421981, 367757, 353261, 392453, 75162, -275952, 658204,
- 984621, -906775, 229781, 355945, 312996, -352187, -755377, -391379, -217970, -759136,
- 363998, -403727, 466541, -515396, 85362, -579284, -277025, -64961, -194347, 567473,
- -368830, 394600, 460098, -405874, -289373, -255014, -358093, 326954, -168041, 299037,
- -227096, 40265, 50466, 84289, -235686, -170188,
- },
- {
- 395674, 17570174, 526670, -1840930, 642098, -59056, 580894, 555661, -1510755, -140660,
- -429497, 2251100, -2142115, -4363687, 4970351, -6233608, -13633300, 884226, -594853, -7346005,
- -5248987, 1056562, 5109938, 4883378, -4069482, 1437203, 10917807, 10943040, -530965, 7961796,
- 1209033, -4221416, 1947231, 1745367, -2637110, 1451699, 300648, 1147293, -2432025, -1585380,
- 3182571, -297427, 2652142, 351650, 525060, 2428804, -523986, 83215, 1046361, 2371896,
- -325344, -734976, 820876, -815507, 821413, 1070521, -464393, -654446, -439697, -216896,
- -591095, 107374, -419833, 470299, -977105, -423054, -300648, -250182, 624918, -253403,
- 204011, 236223, -155156, -287226, -55298, 341450, -216896, -47245, -49392, -31675,
- 1028645, -516470, -88584, -255551, 106837, -171799, -26844, -170725, 29528, -345745,
- -88047, 215285, -12348, 130460, -223875, -55835,
- },
- {
- -16291885, 71984728, -1174137, 14506252, -5688148, -565325, -1130113, 8448738, -2550674, 3690988,
- 3383361, 1636383, 1409286, -2131915, 1141924, -2776696, 959388, -1107565, 623307, 900869,
- 2330557, 222801, -2838437, 1345935, 2876554, -334471, -195958, -3023120, 1931662, 802622,
- -88584, 3038153, 2239289, 1127966, -1141388, -791885, -1952063, 868120, 121333, 2882460,
- 1397475, -1731409, 770947, -2245194, -1236414, -1117228, 1601486, -3862249, 1159104, -2225867,
- 1668058, 1752884, -323196, 1702955, 949188, 1306744, -461172, 1670742, 578747, -630286,
- 428423, 181999, 194884, 113817, 197569, 333934, 449898, 173946, -382789, 514322,
- -55298, -285615, -454730, -39192, -591095, -27917, -70867, 297963, 482647, 347355,
- -51540, 323196, 420907, -125628, -416075, -167504, 91268, -209917, -645856, -71941,
- -8053, -174483, 23622, -172336, 462246, -186831,
- },
- {
- 50466, 3448859, -1302986, -1441498, -76773, -318901, -667867, 873489, 1178432, 297963,
- 234613, -2661806, 469225, 2715493, 6943352, -20753282, 180926, 9047349, -3687766, -4153770,
- 6242198, 795106, -3060164, 6350646, -4177393, -3859028, 8092792, 7589207, 3020973, -3465502,
- -425739, 3092913, -318901, 273267, 346282, 1633698, -2410014, -2772402, 4468377, 2953864,
- -202400, -266288, 113817, -2310693, -131533, 255551, 618475, 3029563, -584652, -1939178,
- -1561221, 1806571, -938450, -63351, -195421, -66572, -358093, -153545, -47245, 637803,
- 169651, -687195, -514322, 442919, 769336, -325344, -83215, -192200, -281857, 369904,
- 34897, 849330, -191663, 207232, 155693, 3221, -195958, 72478, 374199, 177704,
- -159988, 242129, 285078, -306016, 149787, 208306, -158377, -176094, -284542, 59056,
- -712965, 123480, 22012, 197569, 238908, 154619,
- },
- {
- 20024748, 1301375, -778463, 14144401, -8578660, -3444027, 1137093, -3979824, 589484, 1301375,
- 1410897, -179315, 10610717, 2454574, -8007967, 3470334, 1407676, -4130685, 7592966, 645319,
- 3814468, -2901251, 2115272, -38118, 275952, 1269163, 838592, -111132, -2515777, 435402,
- -1781875, -2269353, -2881386, 4954782, -2862596, 2158221, 1258962, 280784, -1761474, 46171,
- -1891933, 511638, -1341640, -296890, -677531, -1840394, 461709, -1242319, 1872606, -4941897,
- 1637993, -683437, -1636919, -515933, -597000, 479963, -115964, -105227, 848793, -276489,
- -838592, 107374, 523986, -260382, -1104344, 666794, -528818, 277025, -204011, -355409,
- 170725, 217970, 155156, -83215, 556735, 309238, 614180, 103616, 128312, 76773,
- -97711, 327491, 117575, -391916, 5369, -11811, -390305, 14496, 300648, 45097,
- -303869, -248034, -27380, 271657, 74088, 183610,
- },
- {
- 362925, -22987202, -11059541, -5557151, 10439992, 7371238, -9451612, 2984466, -4021163, -3965329,
- -2275796, 1802276, 6103686, -2095944, 6933151, -3410741, -7414188, 3039226, -10173704, -11375221,
- -3193308, -3657702, 2831457, 3259880, -3285650, 2612951, -2187749, -2229625, 3635690, 3785477,
- -4653597, 295816, -5270462, 977642, 2573222, 1216013, 5781563, 2236067, 131533, 1355062,
- 2036351, -2413772, 1941325, -4594005, 357556, -980863, 1114007, -1301912, 1759863, 263604,
- 544924, 213675, 1802276, -1527398, 443455, -1068373, 1088237, 718333, -1214939, -1170379,
- -988379, -909459, -375810, 1083406, -1056025, 672699, -125091, 930934, -265214, -191126,
- -363998, -672162, -578210, -47782, -124017, -358630, -616328, -416075, 24159, 22012,
- -158377, 577673, -544924, 48318, -198642, -396748, -77846, 231928, 107911, 312996,
- -16643, 312996, 284542, -124554, 201327, -373125,
- },
- {
- -3969087, -144069840, -1796907, -3303904, -4836670, 11083700, -1814624, -4020626, 2208150, -2396592,
- 3992172, -1148367, 2488397, 932545, 2060511, -7721278, 789200, 7709467, -3510062, 2040646,
- 3977140, -1641214, -3461744, 2558190, -666257, 2448131, -2566780, 3894999, 2609193, 1166084,
- 2354179, 913754, -704375, -290984, 2015413, -3834332, -3821447, -631360, -842887, -1285806,
- 2866891, -1240709, -1604170, -1123134, -314606, -128312, -751082, -2042794, 456340, -2390149,
- 257161, 2029909, -505196, 433255, -157840, 187905, -443455, 419296, 552440, -405338,
- -575526, -180389, 401043, 241592, 724776, -590558, 760209, -879395, 1172526, -335544,
- 249108, -350040, -667867, 341987, -1064078, -703301, -91805, -320512, 493921, 43487,
- 63351, -51540, 52613, -131533, -81068, -375273, 14496, 220654, 75699, 116501,
- 282394, 16106, -161598, 6442, 30602, -168577,
- },
- {
- -1374390, -31483184, 9801652, 1385127, 321049, 768799, -1481227, -3466039, 5324149, 346282,
- -2556579, 857920, -769873, 1804960, 1221918, -1458678, -1823214, 1253057, 2163053, -1238561,
- -1025423, -5015448, 1546188, -915365, -6801081, -1855963, -9481140, -4495220, -562104, 3350611,
- -7486128, 2284386, -8280697, 1851668, -2871723, 4404489, 1637456, 7194070, 835371, -991064,
- 4923643, 4302484, -2149631, 2069101, -2254321, -1044751, -2288144, -1219234, 3161633, -202937,
- 1454920, 1065152, 2102387, -1481227, -952946, -1529008, 711354, 574452, 424665, -758062,
- 934155, -82678, -1510218, -750009, 1519882, 261993, -44023, 804770, -757525, 395674,
- 1174674, -190589, -460635, 1005559, 308164, 172336, 510027, -343061, 27917, -216359,
- -143345, -18254, -150861, -252329, 115427, -364535, -314069, 279710, -30065, -402116,
- 531502, 282931, -121870, -10737, 95026, 382789,
- },
- {
- 20386600, -180198576, -161061, -4854387, 9182640, -3641059, 1268626, -3644817, -2792803, -9501541,
- -4030290, -1121523, -3552475, -4041564, -2910377, -2487860, -2494302, 1542430, -3263638, 2506114,
- 3358665, 3502546, 1826435, -3194382, 454730, -1861332, 645319, -115964, -1452773, 2834142,
- -738734, -832150, 2180233, 180926, 1200443, 1279900, -1782948, 503585, -4272956, -2539936,
- 3848828, -4034048, 3981435, 1671279, -3685619, -1657321, -197032, -1476395, 2480344, -1022202,
- -1173063, -637266, 393526, -2143189, -1464584, -46708, -1318018, -420907, -1034013, 1640678,
- 428423, 41339, 303869, -520228, 95026, -83215, -200790, 621697, 689879, 646393,
- -181462, -177704, 585726, -168041, 718870, 483184, 288300, -672162, 281857, -287763,
- 149787, 5906, 358630, 274878, 19327, 94489, -98247, 45634, 134218, -470836,
- -322659, 49929, -382252, -331786, -47782, 67109,
- },
- {
- -1348620, -42237244, -4064650, 3564823, 2414309, 7210177, -6246493, 875636, -915365, -3570192,
- -3042448, 110595, -2846490, 9677098, 17425220, -3163244, -6888591, -2038499, 4782446, 3344706,
- -6749004, -2395518, 3398393, 30065, -254477, 7770133, 3764002, 3546569, -1333051, 3339874,
- 3768297, -1844689, 5005248, 1348083, 2406792, -855235, 4299799, 510564, -259309, -2356863,
- 2917894, 2956548, 1156420, -833224, 1348620, -2954401, 2481417, 855772, -136902, -1061931,
- 424128, -2751464, -261993, -1655710, 1069984, -626528, -46708, 2286533, 620623, 85899,
- 1318018, -849867, -155693, 168041, 631897, -210453, 569083, 386010, -320512, -230318,
- -324270, 213138, 382252, 213138, -417686, -92879, -760209, -119185, -474057, -309775,
- 635118, -581968, -409096, -21475, -543313, -108985, -494995, 150324, -84289, -158914,
- 238371, -29528, -308164, 331786, 165356, -190052,
- },
- {
- -9459665, -112986096, -9165460, -7443179, 2132451, -2537252, 1359357, 959388, 4322348, 555661,
- 6078990, 4151086, -6429029, 3036005, -731218, 1702955, -686121, 7914551, -2740189, 100932,
- -1326608, 7141457, -5304285, 5435281, -1776506, -5215701, -3502009, -15569, 8333311, -988379,
- -1345399, 130997, -433255, -1901597, -3127810, -1646583, -1133871, 253940, -874026, 751619,
- -1092532, -994822, 3360812, -1449015, -830002, 1141388, 66572, -1292785, 437550, -459562,
- 1747515, -2170032, -1736777, -791885, -658741, -514322, -606664, 1065689, -1091995, 1282048,
- 1975685, 896574, 590021, -395674, 692027, -435402, 427349, -533650, 182536, 191663,
- -177704, 243203, -69793, -553514, 418222, 151934, 326418, 448824, 553514, -571231,
- 653372, 168041, -683437, 88047, 275415, -62277, 259309, 212601, 143345, 534187,
- -270046, 1611, 16643, -115427, -235686, 153545,
- },
- },
- {
- {
- 223875, -19938848, 7463580, -11107322, -12297028, -475668, 3801583, 1117765, -5127654, 6509560,
- -3183108, -4920959, -5560372, 4003983, 855235, 1280437, 736050, -6296422, 9284109, 3822521,
- -2019708, -550830, -3447785, -11171747, -5424007, -6364068, 1483374, -3629784, 2430415, -9230958,
- -5345087, -1430761, -4376572, 993211, -4408247, 890669, -3052111, -3111167, -1436667, 398895,
- 88584, 5162551, -1931125, -781147, 2247879, -62814, 767725, 1446330, -1514513, 2904472,
- 821413, -2739116, -147640, 657130, 227633, 1880122, 729071, 1123671, -1112397, -195958,
- 390305, -591632, -207769, -121333, 598074, 1269163, 39192, 244276, -150861, 828929,
- 783832, -1064078, 658204, 510027, -440234, -361314, -152471, 171262, 493921, 625992,
- -55835, 463320, -204548, 621160, -393526, -198105, -236223, -35970, -361314, -20401,
- 85899, -224949, -186294, -223338, -37581, 205085,
- },
- {
- 5721970, 18185966, -4121558, 61740, -10697153, -1610613, -3482682, 4082367, -397821, 1171452,
- 1409823, 2397666, -2504503, 3959423, 1257352, -4899484, -6925635, 694711, 2214056, -4416837,
- -4269198, -1532767, 5713917, 3091840, -570694, 6307697, -4001836, 2750927, 4302484, -72478,
- -259846, -5553393, 2749853, 3550327, 2458869, 2240899, -4623533, 13959, -1658394, 259309,
- -201863, -1673427, 2364916, -256087, 425202, -420907, 2226404, 386547, -201863, 118112,
- -305480, 292058, -1142998, -1503775, 149250, -704375, 709207, -915365, -96637, -818191,
- -438624, -579821, 617938, -393526, -147103, 1067299, -293132, 47782, 240518, -401043,
- 227096, 29528, -33823, -236760, 118648, 357019, 12348, 370978, -353261, 421444,
- -448824, 258772, 97711, -326954, 156229, -197569, -537, -114354, 53687, -59593,
- 323733, 83752, 234076, -124554, 47245, 95563,
- },
- {
- -4377109, 51448876, -11337640, -53987204, -4511863, -2468533, 2865280, 4595615, 2171106, 5034239,
- -474594, 7043210, 2556043, 9766219, -7280507, -3022583, -5626944, -8425115, 5867462, 2374580,
- 2714419, -4674535, 527744, 3709241, 799401, -3630321, 1380832, 3332895, -1389959, 1421097,
- 2177549, 1914482, 907312, -359704, 654446, 3170760, 875636, -1422171, 4295, -535797,
- 2086817, -417686, 2846490, -237297, -56908, 67646, 1588064, 672162, 971200, -573915,
- 2032593, 975494, -1867237, -797253, 21475, 1673964, 938450, -178778, -148713, 3758,
- -1458678, -287763, -364535, -30065, 97174, 435402, 37044, 103079, -110059, -676457,
- -15569, -51540, 516470, -34897, -75699, 797790, 299037, -11811, -101469, -20401,
- -207232, -105764, -304406, 9127, 126702, 244813, -180926, 492848, 91805, 195421,
- -199179, -244813, 86436, 73551, -292058, -14496,
- },
- {
- 1400159, -33422898, -8204998, -771484, 366146, 614717, 991064, 984084, 267362, 2196876,
- 2752537, -408022, 48318, 2673617, -4786741, 2401424, 11509439, -16093779, -1326071, 3460670,
- -1879585, 4886599, 2866891, 6683506, 1226213, 1094143, 1611687, 1384053, -1330903, -1054951,
- 3768297, 1944010, -2757906, -2473901, 3184182, 1024887, 91805, -4338991, 862752, -2114198,
- 2557653, -1226750, -623844, 1100049, 1998234, -490163, -1272921, -107911, -58519, 75699,
- 1187559, 686121, -627065, 470836, -31139, 937914, 564251, 708670, -478889, -736587,
- 392990, -532576, 826244, 644782, 627065, 319975, -1044214, 741956, -416612, -358630,
- 441845, 55298, -660351, -447750, -117038, 227096, -23622, -218506, -121870, -645319,
- -62814, -102005, -239444, -237834, -383863, -136365, 133681, 12348, -55298, 5369,
- -154082, 91805, -106837, -101469, 4832, -177704,
- },
- {
- 15459198, -12566537, -6244346, -37846716, -1307281, -1108102, 358093, 957241, 555125, 7907035,
- 882616, -1215476, -5547487, 2035815, 12425340, -5514738, -5803038, -3950833, 8030515, -784368,
- 2115808, -225486, -4829691, 3404835, -6048925, -1994476, -391916, -1061931, -1082332, 719944,
- -4063039, 2742874, 592169, -1282048, 3045669, 3773129, -86973, -1451699, 77309, -2683818,
- -1364189, -1824824, 2560338, -431644, 42950, 268972, 849867, -1518271, -944893, 2397666,
- -481573, 1036698, -1216550, 10737, 236760, 1377074, 280247, 51003, -114354, 1152662,
- 657667, -629750, 157840, 543313, 92879, -45634, -803159, 258772, -355409, -839129,
- 527207, 332860, 224412, -624381, -154082, -573378, -512175, -335544, 395674, 318364,
- -95026, 97711, 257698, -491774, 312459, -426276, -369367, 209380, 207232, 246424,
- -270046, 7516, 163209, 231928, -192200, -196495,
- },
- {
- 525060, 8813810, 4605816, 1519882, -799401, 108448, 363462, -248034, -845572, -1619203,
- 1858110, 2414309, -2050847, -2747705, 906775, 412854, -16931834, -4551592, 490700, -5571647,
- -4074313, 2011655, -842350, 7667591, 1378685, -6714108, 13054553, 11267310, 5126581, 4120484,
- -1414655, 15569, 1587527, 1148904, -5891085, 2440078, -679142, 1195075, -3130494, 1580011,
- -229244, -771484, 3799972, 798864, 501974, 1606855, -161061, 1446330, 1475858, 1056562,
- -1568200, 357019, 1299228, -457414, 1035087, 966368, -406948, -951872, 916439, -1487132,
- -452045, -471373, -22549, 625992, -413927, -380641, -453656, -68183, 114890, 279710,
- -274341, 274341, -57445, -454193, -338229, 784905, -630286, -516470, -56371, 390842,
- 467078, -179315, -104153, -246424, 238371, -246424, -20938, -207769, 55298, -374199,
- -33286, 264141, -40802, -53687, -363462, 201863,
- },
- {
- 29704530, -11817603, 4632659, 8450348, 6938520, 229244, 2045478, 791885, 1452236, 1751273,
- 4727149, -564788, -120259, -631897, 74625, 3119220, -4387846, -402653, 1154809, 3529926,
- 1931125, -1811403, -661425, 2355253, 1938641, -2493229, -481036, -31675, -318364, -816581,
- 2305324, 1036698, 768262, 1270774, -1679869, -144955, 75699, -1502165, 1711008, 2752537,
- -471910, 663036, -832687, -2458869, -857920, 83752, 1095754, -2051921, -190589, -2132451,
- 2939368, 418222, 465467, 1347009, 396748, 596464, 736587, 1445257, -49929, -227633,
- -460635, 90731, 259309, -371515, 225486, 169114, 498753, 222801, -39192, 339839,
- -206695, -117575, -814433, -25770, -357556, -314606, -124017, 274878, 706522, -12348,
- -316754, 245887, 402116, -77846, -297963, 53687, -310848, -245887, -35433, -222265,
- -264141, -88047, -178778, -31675, 51003, 206158,
- },
- {
- 1055488, -6589554, 4969814, -1761474, -684510, -941135, 324270, 456340, 1240709, 8053,
- -1022202, -3017752, 4860829, 3586298, 3827890, -4384088, 1256815, -7325604, -7807177, 12590697,
- -69256, -1074279, 2051384, 3481071, -2706903, 1813013, 2160906, 6410776, -5697274, 4031901,
- -4061429, 4611721, 30602, -1078037, 2972654, 2889439, -4195646, 1518271, 133681, 3176665,
- 1087164, -125091, -1644436, 89657, 592169, 106300, -844498, 1408749, 2544768, -3806952,
- -1025960, 792421, 1174674, -1124745, -438624, 106837, 49929, -900869, -194884, -425739,
- 1596117, -106837, -1549946, 825707, 729608, -201327, 185757, -604517, -31675, 710817,
- -360240, 439697, 77846, 285078, 149787, 589484, -314606, 26844, -191663, -126165,
- 261456, 192200, 311922, -88047, 194884, -111132, -415538, 430570, -75162, -300111,
- -403190, -37581, -30065, 364535, -74625, 153008,
- },
- {
- -3096672, 21304112, 1639604, -2672544, 9241696, -3863323, 2623151, -930934, -1831804, -3226594,
- 2330020, 7431367, 6067715, -6361384, -1609539, 7330436, 940598, 3380676, 1640141, -685047,
- 2813204, 350040, 577673, -31675, -227633, 1615445, -944356, 962610, -37581, -949188,
- -1435056, -4631586, -370441, 3944928, -1726040, 842350, 1753957, -593779, -256624, -1989107,
- -217970, -357019, 66572, 181462, -1996086, -69256, -107911, -1188632, 1027034, -1331440,
- -1468879, -758599, -650151, -1387811, -136902, 278636, 1040456, -1065689, 689342, -504122,
- 447750, 90194, -646929, 159451, 104153, 289910, 122943, -466004, 108448, 263604,
- 49929, -184684, 411243, -510564, -81604, 1161252, 661962, -268972, 136902, 329639,
- -76236, 56371, 177167, -124554, -290447, 27917, 170725, -5369, 184684, -485331,
- 139586, -243739, -28991, 190052, -73551, 206695,
- },
- {
- 290984, -35882304, -7435662, 7817914, 8085276, -982474, -807454, 329639, -4238596, -466004,
- -2786360, 5137318, 4747550, 267899, -2425046, -1510218, -1855426, -6514392, -6893960, -11884711,
- 2128156, -571231, -3706020, -1078574, 3914863, 723702, -11435350, 6120329, 1168768, 4154307,
- -3831648, -2647311, -2318209, -429497, 1041530, 3441880, 602906, 758062, 2568927, 63351,
- -63351, 382252, 834834, -3144453, -2114735, 1088774, -666257, -294742, 1576253, -358630,
- -359704, 2062121, -340913, -466004, 581431, -6442, 110059, -106300, -79457, -1331440,
- -1359894, -536871, -83752, 627602, -763430, 731218, -99858, 248571, -156229, -834834,
- 153008, -664646, -554051, -504122, -117575, -63351, -367757, -573378, 139050, 890669,
- -360240, 81068, -440234, 151934, -57445, -542777, 107911, 145492, 296353, 27917,
- 310848, 90194, -28991, -15032, -11274, -123480,
- },
- {
- 3621194, -159454416, 1627256, 2433636, -12416750, 13092671, -4951024, -161061, 90731, -1567126,
- 2195802, -894427, -1455994, 8123394, -8127689, 457951, -2035278, 2221572, -3254512, -2019172,
- 10151692, -874563, 1102733, 31139, -1816771, 971200, 30602, 2285460, 2529736, 987306,
- 410706, 153545, 296890, -742493, -3336653, -389231, -2487860, -3495030, 665183, -1725503,
- 1901060, -204011, -2927020, 636192, -2451353, -341450, -733903, -282394, -1247688, -1883880,
- 1653026, 1539746, -940598, 1176821, -375810, 879395, 173946, 32749, -301721, -711354,
- -28454, -340376, 788127, 565325, -261456, 134218, -803696, 359704, 495532, 513785,
- -79457, -505196, -360240, 60130, -594853, -599148, -616328, 22012, 279710, 117038,
- 187368, -35433, 191126, 18790, -330712, -178241, -310848, 200253, 172872, 270046,
- 82141, 39192, -147103, 138513, 126702, -114890,
- },
- {
- 1461900, -23519778, 1584306, 7801271, -3274913, 331249, -308701, -2182380, 334471, 3248069,
- -3049427, 2767570, -818728, -3970161, -514322, 4832912, -5920076, 5893232, -5236639, 8052527,
- -1985349, -2741263, 1132798, -1444720, -3967476, -2240899, -4401268, -9269613, 4263292, -3532611,
- -1402844, -2995740, -3386582, -2263448, 555125, 2275796, 2765959, 7107097, -716186, 1619740,
- 2583423, 5770826, 66035, -797790, -523449, -914828, -2843805, 19327, 789737, -100395,
- 2152852, 245887, 2728378, -1653562, -122943, -1613297, -207769, 1213328, -11811, 328565,
- 696858, -89121, -833761, 248034, 70867, 709743, -445066, 1038845, -761283, 76236,
- 1277753, -77846, -67646, 364535, 57982, 14496, 229781, -131533, 547608, -420907,
- -58519, -95563, -316217, 181999, -9127, -45634, 48855, 35433, 56908, -62814,
- 404264, 145492, -310311, 228707, 267362, 166430,
- },
- {
- -40837084, -94333048, -2284923, -2640868, -349503, 8997420, -8059506, 2937758, -244813, -10627360,
- -11349988, -12348, -1755568, 140123, -7822746, 332860, -7186554, 2607582, 3896072, -2187212,
- 5157719, -2217277, 4013647, -2335925, 2261837, -3486440, 560493, 4447439, -3894999, 3390877,
- 833224, 1846299, -572841, 2684355, -311922, 3966402, -3694209, -963146, -855772, -3428458,
- 858993, 976568, 1287953, 4283156, -2018098, -3626563, -1439888, 1436130, 904628, 285615,
- -2101850, -486942, -539018, -2385854, 145492, -2784213, 221728, -1125281, 146566, 557809,
- 440771, 44023, -2684, 45634, 62277, 212064, -459562, 809064, 863825, 245350,
- 245350, -238908, 268972, 27380, 683974, -89121, 419296, 215822, -4832, 42413,
- -109522, -173946, 635118, 134218, -320512, 519691, -163746, -125628, 32749, -214748,
- -180926, -423591, -27380, -303332, 61740, 84826,
- },
- {
- 1194538, -35817880, -8935679, -31675, 6197101, 2958159, -722091, -1422171, 796716, -447213,
- -4713727, -1132261, -4303557, -10081899, 35818952, -2501282, -1503239, 1379758, 4393215, -2784213,
- -8400956, -1852742, 5017596, 3884798, -1721208, 6033892, 5434208, 6860137, -3783866, 1970853,
- 2557653, 174483, 6270116, 3743601, 2147, 934692, -168577, 1977296, -22549, -129386,
- 3187940, 1341640, -120259, 1309428, -2343979, 835371, 1657321, -844498, -1506460, 1152662,
- -1034013, -1839320, -692564, -106837, -763430, -178778, 133681, 1496259, 1317481, -304943,
- -295816, -756988, 357019, -427349, -368293, 1721208, -146566, 165356, -314606, -481036,
- -302258, 680752, 905701, -499290, -491237, -325881, 143345, -129386, -266288, -398358,
- -156766, -316754, -290984, -444529, -135291, -225486, -267362, -38655, 51003, -283468,
- 37581, -287763, 53150, 137976, 23085, -201327,
- },
- {
- -9782325, -110027936, -6330245, -12964359, -819265, -7437810, -2662343, 7006703, 548145, 1463510,
- 7188702, -15032, -935229, -4689031, 8555575, 540629, 732292, 959388, 4660040, -4131759,
- 7302518, 2201171, -3837553, 623844, 4354023, -6063420, -3582540, 674847, 5020817, 402116,
- 585726, -3273839, 4422206, -930934, -5156645, -2536715, 379568, -2738042, 590558, -1596654,
- -760209, 2438468, 1705639, 207232, 163209, -1359357, 1563905, -701153, -755377, 732829,
- -251792, -2435783, -453656, -661962, -1155883, -614717, 493921, -894427, 389768, 1142998,
- 1962800, 972273, -91268, 49929, 474594, 678068, -124017, -199716, 257698, -614717,
- 496069, 350577, -35433, 294205, -252866, 770947, 206695, 442919, 514322, -301185,
- 205085, 401043, -23085, -299574, 179852, 11274, 204548, 102005, 135291, 644782,
- -122943, 181999, 78920, -234613, -83752, -70330,
- },
- },
- {
- {
- -1607928, -40409200, -1836099, 7229504, 932545, 467078, 518080, 1633161, -1840394, 8545374,
- -357019, -5300527, -5204427, 7794292, 6892349, 4936528, 5046050, -3111704, 1615982, -377420,
- 1078574, 8412767, 6131066, -695785, -2669859, -7260642, 1107565, -4861366, -1544041, -8825084,
- -1669132, 1820529, -1016297, -483721, -1452236, 3962107, -1195075, -2062121, -3526168, -598611,
- -170725, 4134443, 433255, 3275450, 2601140, -1067299, -151934, 722628, -3600793, 1597191,
- 2725694, -521839, -8053, -259846, -695785, 230318, 202400, 1422171, -2016487, -649614,
- 649614, -615791, -547608, 12348, 904091, -154619, -588947, -848793, -671626, 810138,
- 696858, -1074279, 754841, 693637, -17180, -84289, -537, -34897, 14496, 297427,
- -746251, 101469, -170188, 382252, -434329, -156229, -285078, -115964, -28454, 234613,
- 216896, -42950, -176094, -233539, 85899, 288300,
- },
- {
- -10261214, -5956046, -9643275, 18791018, 3143379, -103616, -2391760, 2427730, -3870839, 666794,
- -2085744, 4592394, 4932233, 5129265, 2516314, -2036351, -5767068, -1999307, 2604361, -3374234,
- -4071629, -4828617, -992674, 955093, -2960306, 5638219, -1568737, 2611340, 2400887, -791885,
- 2434173, -2972654, 1588601, -600759, -589484, 3032784, -3961571, -548682, -2790118, -1896765,
- -1581085, -925565, 396748, -2645700, 379031, 170725, 2217277, 2756295, 1276679, 416612,
- -397284, -251792, -1123134, -81604, 986769, -994285, 963146, -181999, -913754, -1534914,
- -614180, -496069, 597537, -205622, 528281, 1043677, -250182, 125091, 341987, -759136,
- 238908, 667867, 454730, -169651, 52076, -197032, -107911, 489089, -713501, -155156,
- -416612, 444529, -149787, -308701, 297427, -273267, -29528, 168041, -53150, -62814,
- 245887, -115427, -17180, -128312, 54761, 87510,
- },
- {
- 5669894, 54562728, -19866372, -14513231, 29465624, -2085207, 1864553, 2172717, 69256, -973347,
- -6455873, 2923799, 1404991, 14865419, -769336, -2439542, -8040179, -9227737, 3614215, -3531000,
- -2777770, -4218732, 8356933, 5002563, 4469451, -429497, -2405182, 1429150, -2279554, 1032403,
- 1663226, -12885, 557809, -304943, -3412352, -820876, -2239826, -2246805, 507880, 20938,
- -1041530, -2777770, 1945083, -735513, -451508, -355945, -504122, -362925, 2806224, 593242,
- 1486596, 117038, -1995549, -596464, -534723, 1440425, 570157, -230854, 685047, 1472100,
- -724239, 691490, 625992, -3758, 150324, 503048, -449898, -409096, -119185, -481573,
- 63351, 365072, 613643, 89121, -175557, 379568, 8590, -365609, -657667, -143345,
- -164819, 10737, -171799, 39192, 358093, 392990, -293668, 92342, -81604, 107911,
- -387621, -340376, 33823, 37581, -42413, 421981,
- },
- {
- -1928977, -21954262, 4139275, -337692, 551903, -567473, -1043140, 71941, -1138166, -430034,
- 5119601, 1379758, 1302449, -983548, -12820477, -4500052, 9601936, -7996692, 6875706, 1945083,
- -7072201, 63888, 2621541, 4435628, -4556424, -1235877, -4085588, 208843, -1193464, -3041374,
- 2443837, 3007014, 453119, -3433826, -1286343, -4011500, -3022046, -5232344, -357556, -3189550,
- 147103, -2335389, 870268, 1900523, 555125, -1493575, -670552, 343597, -212601, -485331,
- 775242, -484794, -716723, 315143, 84826, 1187559, 589484, 676457, 22012, -1149441,
- -264141, -971736, 643708, -56908, 278636, 495532, -760746, 612570, -638876, -625455,
- -35970, -186831, -872415, -217970, -34360, 42950, -265751, -49392, 662499, 46708,
- 117575, -198642, 32212, 183610, -2684, 38118, 105227, 30602, 53150, 325881,
- -111132, 72478, 144418, 77309, -104690, -158377,
- },
- {
- -27893128, -70605504, 1408749, -31562640, -2076080, -3776350, -2472291, -2254321, -4959077, 4099546,
- -2262911, 488016, -7150047, -4499515, 6134824, -1000727, -1057099, -2196339, 12575127, -6117107,
- -1669132, 1997160, -3767223, 6659884, -2122251, -1893544, -4430259, -6092948, -3291019, -52613,
- -4475356, 1568200, 2333778, 751082, 1182727, 2552284, -3974455, -4022774, 2362769, -1003949,
- -395137, -978179, 1948841, 887985, -1013075, -1533303, 1708860, 66572, -1571958, 1251983,
- -328028, 1429150, -1055488, -755914, -1301912, 590558, 1014149, 103616, -19864, 57982,
- -406411, 381178, 1253594, 816581, 226023, 183610, -434865, 351650, -100395, 130460,
- 902480, -146566, 115964, -356482, 408022, -26844, -639413, 255014, 415001, -123480,
- -12885, 138513, 319975, -242666, 368293, -258235, -163746, 372588, 65498, 64961,
- 171799, 44560, -90731, 308164, 5369, 37044,
- },
- {
- -197569, -8171712, -3875671, 1066763, -1452773, 250719, -26844, 683437, 304943, 2120640,
- 4398047, 360777, 530428, -3965329, -12045236, -2645163, -3842385, 3987877, -3288871, 1931662,
- 8505109, -517544, -8344048, 1312113, -1704565, -10797011, 941135, 4333622, 2968896, 4297115,
- -1923609, 3039763, 2709051, 2757906, 188979, 5234492, -2663417, -316217, -2918430, 1971390,
- -2399813, -2748779, 521302, -865436, -221191, 1478006, 1736777, 1110786, -403190, -265214,
- -830002, 1324461, 1835025, 411780, 950798, 221728, -707596, -204548, 1963874, -1370632,
- -26844, -104153, 13959, 483184, 44023, 757525, 18790, 324807, -239981, -133144,
- -4295, 472983, 253940, -380105, -533113, 624918, -575526, -259846, 110595, 690416,
- 138513, 99321, 127238, -11811, 140660, -88047, 334471, -148713, 205622, -94489,
- 81068, 83215, -48855, 231928, -51003, 193810,
- },
- {
- -30288646, -119527864, -8674760, -4484483, -10585484, 491237, -1466195, -2779918, -306553, -6829535,
- -1029182, -1141388, 1615445, 956167, 1531693, 4951561, -2887829, -863825, -594316, -1982664,
- -1283122, -210453, -2376191, -6046777, -3546569, -2491618, 909459, 4225711, -712965, -1447941,
- 2748779, -2113124, -1096827, 238908, -2421288, -1338956, 729608, -3063922, -1454383, 4136591,
- -476741, -769873, -668941, -1372779, 666257, 944893, -241055, -2410014, -125628, -2840584,
- 734439, 160524, 1297080, 1894081, 233002, 344671, 57445, 1037235, 927713, 747861,
- -111669, -1689533, -1335198, -344671, 323733, 155156, 176094, 47782, -125628, -57445,
- -472446, -408022, -897648, 59056, -69256, -409633, -417686, 151398, 467078, -170188,
- -670552, 23622, 310848, -38655, -250719, -57982, -81604, 240518, 625992, 164819,
- -191663, 163209, 54224, -71941, -149250, 221191,
- },
- {
- -42950, -12017855, 3448322, -955630, 2383707, 692027, 302258, -990527, -113280, 584116,
- 1607928, 293132, 4280472, -1073205, 466004, 6063420, 8696235, -4838281, -7381438, 15458661,
- -5057324, -6600828, -479426, 1016297, -3980361, -912144, -10652056, -4226248, -10603737, -1055488,
- -5366025, 2812130, -1741072, -4250407, -3928821, -2263985, -2776160, 3197066, 585189, 643171,
- 258235, 1443109, -2226404, 407485, 1869385, 1216550, -2488397, -585189, 2080375, -2778307,
- 571768, 979253, 2178622, -383326, -850404, -216359, 602906, -451508, 990527, -3758,
- 2336462, 653372, -2080375, -188442, -134755, -217970, 699006, -619549, -374736, 403727,
- -182536, -163209, 128312, 645856, 122943, 664646, 11274, 100395, -420370, -192737,
- 219043, -287763, 203474, -2147, -13422, -75699, -365072, 690953, 150861, 51540,
- -54224, -311385, -314069, 19327, -414464, -46171,
- },
- {
- -17554068, 13110925, 13282723, -19981798, -11212012, -3862249, 696322, -4027069, -2956011, -6811282,
- 1380832, 6240588, -3504693, -10696616, 4690105, 7923141, 1343788, 4841502, -3648575, -5167383,
- -2176475, -496069, -1453846, -472446, 32212, 1097364, 105764, 1130113, 419833, 41339,
- 1640141, 1012002, 2898029, 3481071, -2440078, 3584687, 4087198, -1403381, 1300301, 1504312,
- 1918777, 1234803, 2742337, 2792266, 408022, 497679, 1545115, 762357, -620086, -1382980,
- -1644436, -1162862, 743566, 402116, 441308, -266288, -270046, -898722, 1183800, -88584,
- 389231, 343597, -978179, -429497, -29528, -73551, 519691, -39728, -166430, 565325,
- 510027, -416075, 9664, -767725, -1061931, 206158, 71404, -350040, -130997, -41339,
- -203474, -18254, 210453, -55298, -139050, 64425, 185220, 187905, 264141, -340376,
- 157840, -276489, -143345, 70867, 230854, 97174,
- },
- {
- -897648, -39274792, -1880122, 15305116, 3986267, 4013647, 11191611, 738198, -3007551, 1746441,
- 4831838, 7915088, 6099391, -1729798, -3599720, 6298570, -2391760, -9389335, 860604, 1786170,
- 2595234, 2029372, 373125, 3418257, 7221988, -32749, -12421045, 8268349, 4184909, 6578816,
- -2786360, -2690260, -390305, -1059783, -3212099, 4295, -5435281, -3648038, 2174327, 20401,
- 112743, 941135, 1243393, -2828236, -1634235, 3288871, -767725, -1661079, 1170379, -48855,
- -636729, 1655173, -1472100, 394600, 991601, 1611, -814433, -599148, 585726, 155693,
- 546535, 846645, 163746, -418759, -1461363, 145492, -1188632, -472446, 327491, -235686,
- 159451, -27917, -16643, -227096, 324270, 394063, 183073, -68183, 195958, 1216013,
- -226560, 15032, -277562, 154082, 0, -358630, 68183, -158914, 110595, 192200,
- 627602, -221191, -341987, -45634, 51003, 112743,
- },
- {
- -3083250, -179193008, -7250979, 11422466, -2091649, 6444062, -3240553, -176631, -4408784, -2023467,
- 948114, 628676, 992137, 5777805, -10785737, 2029909, -2544768, -1635846, -2185602, -5928666,
- 5991480, -1989107, 3408594, 1151051, -2253247, 22549, -1349157, -2837363, -3245922, -2559801,
- -3072512, -3624953, 143881, -985158, -4064650, 1037772, 190589, -1523103, 1191853, -2238752,
- 984084, 2434710, -248571, 2172180, -3330747, -1100585, -142808, 1619203, 304406, -82678,
- 1716376, 56908, -55835, 1950452, -434329, -388695, -87510, 778463, 802085, 253940,
- -408022, -865973, 689879, 185220, -581968, -197569, -1262184, 578210, -126702, 141197,
- -274341, -599685, -416612, 223875, 241055, 169651, -162672, 170725, 147640, -4832,
- -25233, 23085, 369904, 19327, -164283, -239981, -35970, 5369, 77309, 15032,
- -355945, 159451, 85899, 163209, 24159, -147103,
- },
- {
- -1561221, -6976638, 19459960, 10742787, -1926830, 294205, -4078608, -4020090, -2775086, 143881,
- -5034776, 2529736, 3497714, 4619238, 6666863, 9842991, -1119376, 10672994, -5405753, 10399190,
- -2193118, -2624225, 5026186, 1687922, 6401649, 1801202, -2958159, -7139310, 1878511, -4254702,
- 5829881, -1292785, 108985, -2248416, -2573222, 609885, 244276, 3387119, 2204929, 2770791,
- -494458, 2658585, 1466195, 406948, 434329, -143881, -57982, 2225330, 12348, -28991,
- 1624571, -1213865, 2582349, -582505, 578210, 353798, 682363, 774168, -70330, 692027,
- 256087, 688805, 73014, 45634, -822486, -215285, -1019518, 637803, -683974, -294742,
- 678068, -58519, -284542, -355409, -49929, -171262, -205622, 99321, 955093, 134755,
- 250719, -81068, -204011, 109522, 19864, 312996, 178241, -185220, 46708, 176631,
- 395674, 82678, -349503, 42413, 121333, 18254,
- },
- {
- 41732048, -2557116, -13588740, 14862197, -5632313, 4642323, -971736, 4846871, 4096862, -1456531,
- 233539, 9498857, -134218, 7406671, 325344, 1263257, -12543452, -3710852, 3475702, -971736,
- 5568425, -3062849, 5966247, -331249, 1282585, -3945464, 919660, 8250096, -1869921, 1098438,
- 4124242, 5140002, -666794, 1677185, 289910, 5804112, 873489, 1094143, -1042066, -2661269,
- -857920, 1409286, 1086627, 4530117, 650688, -335544, -1403381, 1244467, 209917, 1104344,
- -2106682, -533113, -1211718, -2722473, 2473364, -851477, 12348, -1253057, -142808, -610959,
- -871878, 60666, 173409, 488016, 790274, 492311, -1006096, -147640, -200790, 215822,
- 343597, -573378, -653909, -107374, 525597, -302258, 338229, -41339, -46171, 114354,
- 201863, -269509, -87510, -250719, -447213, 463856, -306016, -427886, -144955, 96637,
- 108985, -590021, 112206, 283468, 266825, 192737,
- },
- {
- -1334661, -20770998, 7896298, -274878, 1999307, 3721589, 6236830, 2418067, 1796907, 2279554,
- 16643, -2719251, -5784784, -14318884, 18434000, -2708514, 5696201, 7053947, 4431333, -2908767,
- -3629784, 616328, 4958540, 4250407, -3626563, 3920232, 2012729, 5526549, 1936493, 813896,
- 1934883, -1094680, 2366527, 265214, -4268661, -1211181, -2782602, 671626, 1777043, 1754494,
- 821413, -1883343, -2455648, -19327, -2335389, -779537, -1878511, -1243930, -113280, 1609539,
- -367220, 325344, -752156, 25770, -329102, -299574, -784368, -569620, 111669, -1122060,
- -1401770, -379568, 523986, -438624, -747324, 1194001, -1134945, -175020, -30065, -47245,
- 316217, 270583, 294205, 104153, 49392, -378494, 184147, -420370, 196495, -64961,
- -343061, 127238, -46171, -415001, 178778, -15569, -120796, -173409, -20938, -391379,
- -201863, -344671, 149250, 33823, -222801, -223338,
- },
- {
- 22638236, -63776508, -5143760, -8619999, 3096672, -7605314, -2510945, 3610457, -2092186, 2505040,
- 8288213, -509491, -4354560, -6728067, 7951595, 220117, -5643587, -5245229, 8023536, 802622,
- 3183645, -754304, -749472, -1213328, 6619082, 918049, -77309, -3578782, 2099165, 1207960,
- 2536715, 2525978, 5608691, -2954401, -7021198, -2900177, -1599339, -3626026, 3761318, -217970,
- -960462, 3512747, 846109, -137976, -209380, -1523640, 2888366, 264677, -1249836, 798864,
- -1767916, -2331094, 1238561, 1078037, 700617, 232465, -42413, -1540283, 718870, 693637,
- 399432, 588411, -571768, -935229, 30065, 860067, 37581, 45097, 200790, -220117,
- 892279, 107374, 448824, 1340567, 211527, 624918, -196495, 225486, 114354, -352724,
- 157840, 281320, 375273, 30602, 64425, -592706, -253940, -293668, 40802, 357556,
- -40802, 409096, 190589, -80531, -139050, -280247,
- },
- },
- {
- {
- 1856500, -46577848, -3591667, 10795400, 2536178, -566936, -965294, -466004, 4356708, 6533182,
- -992137, 2485712, -6726993, 1542430, 12646531, 7843147, -431107, 2793876, 910533, -12041478,
- 3928821, 10994579, 172336, 10820633, -8484708, -4611185, -1976222, -952946, -9387188, -3451543,
- 4605279, -345745, 118112, -3710315, -3257196, 3588445, 380105, -4420058, 33286, -1244467,
- 812823, 2872260, 1159104, 2624762, 1326071, 2013266, -707059, -1298154, -1873680, -980863,
- 3013993, 596464, 47782, -728534, 450972, -826781, 262530, 4295, -402653, -637266,
- 128849, 872952, -1795833, 399969, 852551, -976568, 195958, -896574, 4295, 85362,
- 165893, -374736, 407485, 369904, 852014, -148713, -234613, -114354, 125091, 53150,
- -867047, -165893, 388158, 235149, -226560, -355409, -90194, -228707, 247497, 162135,
- 187905, -224949, -282931, -88584, 108985, 195958,
- },
- {
- 11862163, -26976690, -18371186, 21965536, -1840394, 1767916, -1474248, -782758, -4700305, 1261110,
- -1179505, 5758478, 6780680, -1257352, 4762045, 1577327, -5198521, 196495, -3540664, -148713,
- -9082782, 761283, -3914326, -197569, -577673, 1668058, -4295, 566936, 3836480, 314606,
- -3402688, -1983738, 5972689, -2015413, -3503083, 1657321, -68719, -3588982, 82678, -4253092,
- 707059, 1961726, -4472672, -1767379, 453656, 314606, 290447, 1828046, 1479616, -70867,
- 552977, 1150514, -494995, -1642288, 1178969, -720481, 425739, -176631, -256624, -566399,
- -586263, -341987, 541166, 52613, 364535, 638876, 177704, -75699, 376883, -413391,
- 207232, 16106, 881542, -368830, -517544, 241055, -274341, -205085, -185757, -712965,
- 357556, 344671, -438624, 59593, 267899, -261993, -146566, 321049, 57982, 172336,
- -294205, -47782, -71404, -16106, 43487, 127775,
- },
- {
- -6195491, 36950676, 4690105, 25309706, 2397666, -3291019, 2495913, -1175210, 955630, -1398012,
- -3488050, 3397319, -4862440, 14493904, -767725, -4303021, -1553704, -6859600, 243203, -4241817,
- -199716, 712428, 7126962, -4909148, 7531225, 3456375, -4024384, 1191853, 137439, -2142652,
- -47245, 4329864, -2422362, -170188, -2478733, -2444910, -4414153, 2640868, -749472, -1050120,
- -993211, -1299228, 198642, -252329, 489626, -2578054, 395674, -265751, 1822140, 2071785,
- -644245, 428960, -1847910, -844498, 730681, 1544041, -64961, 134218, 1080721, 430570,
- 181999, 379568, 1324461, 384936, -379568, -175557, 104690, -642098, -143345, -622770,
- 343061, 285615, -125628, 585726, 236760, 268435, -12885, -4295, -1131724, -32749,
- -146566, -58519, -98247, 159451, 218506, 70330, 10737, -334471, 208306, -186294,
- -132070, -183073, -15569, 36507, 61740, 236223,
- },
- {
- 2400887, -7164543, -9727564, -441845, 239444, -535260, -900869, -988379, 96637, -261456,
- 3877282, 1742683, 2095407, 7195681, -19356344, -4770098, -3966402, 4401805, -167504, 5976447,
- -5507222, 703838, -230318, 3302293, -493384, -2443837, -4238059, 2743410, -573378, -2126546,
- 5055714, -3558917, 1902671, -280784, -3364033, -4072166, -3655017, -1014149, -2968896, -1404454,
- -579821, -1042066, 818728, 303869, 213138, -1708860, 1036161, -1029182, 6442, 118648,
- 295816, -1276142, 1115081, -14496, -476205, 915365, 902480, 324807, 619549, -1255204,
- -874026, 329639, -156229, -603443, 697932, 207232, 431107, 14496, -876173, 648003,
- -934155, -499290, -359704, 64425, -278099, 1611, -118648, 75699, 351650, 466541,
- -36507, -22549, -74088, 432181, 94489, 66572, -92342, 98784, 5369, 214748,
- 88047, 89121, 147640, 154082, -63888, -56371,
- },
- {
- 30415884, -133366248, -13617731, -23576686, -2143189, -3431142, -4269735, -1974074, -5785858, 249108,
- 5945846, -3400540, -8262980, 4713190, -461172, -2331094, 1075889, -8062728, 6470368, -835908,
- 2132451, -2830384, 4333085, 2178622, 1151588, -8696772, -4005057, -2774549, -3164317, 1747515,
- -2909840, -2316061, 415538, 3366718, 373662, 2769717, -8732205, 363462, 1233193, -1778653,
- -263067, 1720134, -2236604, 2564632, -676457, -60130, 1063541, 211527, -1985349, 457414,
- 1950452, 470299, -692027, -1019518, -2265059, 787053, 1369021, -581431, 780073, -1046361,
- 95563, 369904, 481573, 456877, 861141, 10737, -314069, 510027, 151398, -1074,
- -67646, 271657, -501974, 281857, 334471, 79994, -151398, 308164, 76773, -290447,
- 628676, 426812, -473520, -26307, -28991, 200790, -47782, 125628, 45097, -314606,
- 517007, 89657, -207769, 151398, -114354, 108448,
- },
- {
- -674847, -16555488, 7048042, -2349347, -1350230, 171262, -18254, 1004486, 657130, 1085553,
- 5416491, 785979, -2983929, -4048007, -10258529, -3451006, 3069291, 3687230, -817654, -1334661,
- 3816615, 1157494, -3325915, 2588255, -12935905, -959388, -3332895, 1789928, -490163, 9846749,
- -3672197, 3350075, -880468, 984084, 2386928, 5181878, 318364, -412854, -3336116, 1305133,
- -285615, -1590212, -1523640, -505196, 659278, 635655, 2694018, -552440, -564251, -221728,
- 42950, 1353452, 1105417, 406948, 1540820, 195958, -1792075, 1376537, 532576, -1313186,
- -729608, 1050656, 246424, -415001, -3221, 889058, 272730, 397821, -354872, 481036,
- 26307, -406411, 898185, -21475, 126702, -328565, -277025, 309775, -331249, 733366,
- 73014, 147640, 35433, 237297, -193274, -53150, 256087, 105227, 410706, -53687,
- -210453, 237297, 103616, -74088, -67109, 157303,
- },
- {
- 15830176, -206453712, -3143379, -9833328, 1131724, 870805, 995359, -3258270, -383326, -10298795,
- -2799782, -2553895, 6860674, 716723, 1544578, 45634, 4925254, -4108136, 1705639, -4358318,
- -3000035, 484794, -2778844, -6118718, -6356015, -2292439, 1938104, 4398584, 1628866, -56908,
- 1671279, -856309, -1676111, -970663, -1476932, -2495376, 265751, -1672890, -851477, 2211371,
- 286689, 528818, -1790465, -1177358, -937377, 2968896, -3488587, -867583, -581968, -432718,
- -1567663, 687195, 1397475, 1030792, 1088774, -74625, 834834, 940061, 1306744, 474594,
- 628139, -1488743, -1700270, 579821, -713501, 568546, 166967, -216359, 33286, -509491,
- -31675, -979253, -635118, 206158, -116501, -222265, -428960, 13959, 191126, -173409,
- -385473, 217433, 207769, 197569, -264677, -414464, 316217, -23622, 576599, 244276,
- 146029, 123480, 197569, -243203, -2684, 62814,
- },
- {
- -1205812, 1096827, -6506339, 2956548, 2338610, 772557, -1078037, -266288, -141734, 326954,
- -1588601, 1836099, 2327336, 3713536, -3472481, 8854075, -1862942, 921807, -4262218, 8388071,
- -9198209, 5140539, -7723962, 2016487, 2411087, -8501888, -9030169, -11953431, -1187022, -2719251,
- -3449933, -675921, -4694400, -484794, -4811974, -6445136, 467078, -272730, 1783485, 611496,
- 2032593, -1986959, -561030, 2067490, -1690607, 347355, 63888, -2147484, 842350, 202400,
- 362925, 1680406, -154082, 243203, 204011, -1289027, 1944010, 505732, 501974, 464930,
- 1485522, 463320, -1720671, -600222, -104690, 18790, 208306, -257698, 99321, -799401,
- 542777, -758062, 817118, 619012, 218506, 622233, -186831, 7516, -235149, 98247,
- -27917, -444529, 23085, 203474, -27380, 31139, -55298, 268972, -39192, 415538,
- -75699, -383326, -102542, -107911, -329102, -135828,
- },
- {
- 34932580, -7405598, -35992364, -20852066, -3346317, 239981, 1691680, -5998459, -2556043, -1794760,
- -2036351, -2203855, -1195612, -5335423, 4811974, -748935, 1041530, 5792837, -4607963, -1461900,
- -2689723, -2805151, -3506304, 949725, 2757906, -615254, 693100, 1786706, -234076, 186294,
- 2162516, 4784594, 1801202, 1915555, -1933809, 770410, 5442798, 2370822, -1095754, 568009,
- 2724083, 2270964, 3910031, 741956, 2061047, -727997, 1611687, 75699, -472446, 504122,
- -1195612, -1846836, 11274, 1170916, 494995, -539555, -2202245, 279710, 596464, 81604,
- -20401, 824097, -732292, -120259, -719944, -935229, 275952, 601295, -295816, 343061,
- 945967, -159451, -706522, -73014, -481036, -982474, -129386, 257698, -306016, -257161,
- 68719, 2684, -14496, -345745, 122943, -208843, 416612, 307090, -330176, 287226,
- -132070, -197569, -230318, 188979, 264141, 158377,
- },
- {
- 1495722, -28375238, -1420560, 1213328, 4613332, 7703024, 11104101, -2771328, 7516, -2014340,
- 7561290, 5666673, 5013301, 3437048, -3456912, 2566780, -3104725, 3002719, 1061394, -220654,
- -9515500, 9813463, 1900523, 8878234, 8230768, -3848828, -5669357, 73551, 6774237, 1125818,
- -983011, 1482301, -1364726, -67646, -1023813, 943282, -7229504, -3413962, 442382, 1125818,
- -389768, 468688, -536334, -2074469, 498216, 2615098, 535797, -1880122, -1174137, 809601,
- 549219, 1638530, -592169, 1175210, -1606318, 622233, -2296197, 519154, 464930, 667331,
- 988379, 776852, 164819, -663572, -1234266, -556735, -262530, -183073, -176631, 62277,
- -47245, 122943, 302795, -192737, 492311, 572304, -552977, 385473, -63351, 794032,
- 93952, -1611, 62814, -65498, -89121, -18790, -372588, 135828, -248034, 478352,
- 519154, -63351, -265214, -315143, 206158, 478352,
- },
- {
- 3061775, -165264432, -20710332, -2149631, 18139794, -13432510, 11909944, -5130339, -5747740, -241592,
- -131533, 4600984, 3038153, -4907000, -7582228, 6160057, -1475321, -893353, -3215857, -2232846,
- -743029, 1162862, 1149978, 1162326, -1286880, 534723, -913754, -5097590, -3003793, -1729798,
- -1811403, -4524211, 2182917, -3787088, -132607, -836445, -1583769, 2705830, -1472637, 629750,
- 289373, 991601, 358630, 1141924, -1824287, -295816, -578747, 1704028, 357556, 1138703,
- -231928, 202937, 836982, 745177, -448287, -1568737, 579284, 893353, 40265, 1229434,
- -281857, -820339, -16643, 617402, 234076, -1239635, -545998, -159988, -290984, 6442,
- -289373, -122407, -777389, 294205, 438624, 476205, -66035, -207232, 118112, 169651,
- -60666, 228707, 199179, 25770, -66572, -521302, 192737, 103079, 238371, -229781,
- -202937, 142271, -42413, 181999, -117038, 68183,
- },
- {
- 1724966, 15131707, -4285841, 4627828, 4651450, 1421097, -3511136, -4954782, -2182917, -1384590,
- -6338298, 1865090, 610959, 18521510, 6381248, -586263, 7282117, 5400385, 2679523, 3269007,
- -1920387, -2039036, 5332739, 1285806, 6373732, 5310190, -7290707, -1420024, -1370095, -3754338,
- 5895380, -1336809, -1095217, -1828046, -1670742, -2363843, -1533303, 2734821, 4598300, 3052111,
- 186831, -609349, 2558190, 1248225, 603443, -1281511, 1197222, 1627793, -527744, 1479079,
- 250182, -148713, 367220, 1496259, -787053, 2669859, -166967, -1127429, 234613, 735513,
- 441845, 820339, 1098438, -1258425, -905701, -421444, -410706, 226023, -301721, -24159,
- -918586, 612570, 193274, -882616, 20401, 123480, 245350, 7516, 839129, 220117,
- 296353, -119185, -277562, 157840, -379568, 310848, 321586, -376347, -98784, 108985,
- 217433, 75699, 25770, -231928, 139050, 33286,
- },
- {
- -26722212, 85241144, -3624416, 1995012, 3424163, -224949, -1922535, 8348880, 1156420, -197569,
- 5619428, 7012608, -3006477, 15575699, -4115653, 375273, -5374615, -6556805, 3824132, -1573032,
- -140660, -1497870, 8116952, 2815888, -5250598, -2833605, 1091995, 5920076, 1823214, -3962107,
- 5858873, 2589865, 2004139, 2534031, 3923453, -809064, 2698313, 3344706, -4306779, 1155346,
- -2507187, 792421, 1249299, 3186329, 1176821, -12885, -1360968, -498216, 524523, 2269890,
- -1904281, -94489, -2267743, -51003, 164819, 1774895, -1929514, -982474, 1611, -30602,
- -1195612, 787590, -537408, 301721, 545998, 382789, -1175747, 61203, -920197, 301721,
- 614180, -456877, -814433, 369367, 26844, -191663, 520765, -637266, 159451, 665183,
- -374736, -377957, -114354, 31139, -550293, -65498, -111669, -370978, -49392, 143345,
- -253403, -382789, 131533, 312996, 60130, 349503,
- },
- {
- 1520955, -12122545, -2691871, 4753992, 678068, 992674, 7110319, 3303367, 3111704, -1514513,
- 3396782, -6202470, -3117610, 19756850, -32734094, 1743757, 10082436, 4544613, 1124745, 3163780,
- -7020124, 9764071, -967441, 5553393, -1195612, 1337346, 3432753, 2119030, 2028298, -1833414,
- 2663417, 1141924, -2690797, -235686, -2717104, -3553549, 5906, -1353452, 2610266, -154082,
- 123480, -374736, -2525441, -1920387, -351650, -861141, -1205275, -2514167, 2420751, 880468,
- -300648, 1380832, -1342714, -870805, 188442, -20938, -149250, -1613834, -16643, -1464047,
- -682900, 1029718, 275415, -828392, -645319, 321049, -325881, -255014, 279710, -412854,
- 471910, 138513, -411243, -17180, 606664, 352724, -370441, 55298, -637803, 173946,
- 200790, -275415, 29528, -47782, -330712, 122407, -31139, -173409, -84826, -135291,
- -308164, -48318, -118112, 124017, -265214, -158914,
- },
- {
- -24178518, 304406, -1907502, -6918656, -1978369, -1709934, 867583, 1151588, 162135, 1224066,
- 7511361, 32749, -4090956, 11307575, -18636400, 453119, -9987946, 2660195, 8471823, 2838437,
- -4405563, -612570, -802622, 652835, 2309619, 564788, 4970351, -5012764, 1239635, 100395,
- 4071629, 4886599, 718870, -2674691, -5400922, -3415573, -2806224, -579821, 947577, 1562831,
- -944356, 3830037, -521839, 1054951, -795643, 25233, 805843, 39728, -1022202, -915365,
- -1567663, -41876, 1104880, 905701, 811749, -718870, -239444, -595927, -250182, 834297,
- -178778, 730681, -297427, -932545, -428960, 510027, 160524, 244813, 88584, -158914,
- 642098, 471910, 365609, 619549, 632971, 309775, -215822, -83752, -67646, -114354,
- 520228, -241055, 352187, 20401, 119185, -116501, -481036, -428960, -175557, 125091,
- 178778, 175557, 187905, 151398, -315143, -228707,
- },
- },
- {
- {
- -548145, -18871550, 16725676, 4978404, 380641, 729608, -173409, -392453, 2940979, 2739116,
- -5283347, 1411434, -4895726, -463856, 8810052, 3452617, -570694, 9175661, 2799782, -18403934,
- -1972464, 2258079, -7975218, -54761, -10519449, 1910187, -439697, 3799972, -2445447, 1166621,
- 6207839, 3372086, -1039382, -4096325, -1373853, 3875671, 2225330, -3080565, 574452, 123480,
- 365609, 578747, -481573, 1245541, 1996623, 2284386, -655519, 1124745, 2044404, -1419487,
- 1156420, -467615, -518080, -1391033, 246961, -625992, -362925, -463320, -229244, -1296543,
- -528818, 1665374, -1098438, 481036, 683974, -572841, 764504, 477815, 627065, -10737,
- 39192, -100395, 442382, 11811, 792958, 129923, 128312, 100932, -15569, -92879,
- -478352, 69256, 396211, 123480, -293668, -182536, 84826, 120259, 340376, -150861,
- 28454, -175020, -38655, 28454, -21475, 185220,
- },
- {
- -8821863, 23973434, 40948756, 12319040, -6004901, 1240709, -2360085, -238908, -1171452, 1513439,
- -4648229, 3955128, 4583804, -4027606, 2524367, 5267778, 160524, -1498407, -5534066, 4129074,
- -6427956, 6764037, -109522, -2325725, -868120, 2234994, 2100776, -243203, 396211, -1543504,
- -4378719, -2923262, 1656247, -3117073, -1897839, 278099, 1699196, -2008434, 4891431, -1043677,
- -1268626, 566936, -3272765, -394600, 456877, 0, -1414655, -1679869, -185757, 168041,
- 1424319, 1761474, -1335198, -1905355, 1028108, -476741, 182536, -1079647, 770410, 129386,
- 621160, 616328, 630823, 71404, 62277, 605590, 397284, 26844, 689342, 210990,
- 258235, -865436, 167504, -440771, -486405, -15032, -527207, 28991, 156766, -445603,
- 168041, 212601, -169651, 316217, 234613, -156766, 67109, 149787, 82141, 268972,
- -241592, -53687, -168577, -114354, -41339, -8053,
- },
- {
- 5093295, -8724152, -36126580, 27521076, -554588, -2389613, 710817, -3716757, -151398, 2289218,
- -152471, 3983582, -3183108, 12541305, -1695438, -511638, 7599408, -3346317, -4998268, -4189204,
- 938987, 2347200, 7186554, -9153112, 3285650, 1663763, -1560147, 2378875, -407485, -3622805,
- -1567663, 1747515, -5136244, 434865, -1030255, -253403, -1794223, 2378875, -1168768, -26844,
- 2825552, 1004486, -729608, -1520418, 1080184, -2447595, 1829119, 1484985, 875100, -356482,
- -2294050, 1306207, -1087701, -1544578, 1301375, 2199560, -507343, -830002, 395137, -405874,
- -205085, -629750, 328028, 506269, 27380, -185757, 220654, -78920, 92879, -852551,
- 42950, 3221, -438087, 19864, -124554, 297427, -42413, 412854, -511101, 115964,
- 3221, 314606, -75699, -251256, -74088, -244276, -296353, -345208, 328565, -40802,
- 159451, -79457, 102005, 125628, -234613, -288300,
- },
- {
- -2161442, 10118943, 7135015, 5369, 856846, -594853, -301185, 170725, 337692, -864899,
- 4690105, -708133, -1098975, 7650411, -14299020, 790274, -1513976, 7981660, -2665564, 6918119,
- -3176128, 6794639, 772557, 1607928, 5672578, 3280281, 2175938, 4549444, -742493, -2316061,
- 4585415, -4781909, 3406446, 2304250, -1570884, 3289408, 1808181, 2068564, -1158031, -1261110,
- 561030, -768262, 834297, 607201, 857383, -384936, 163209, -1381369, 215822, -1037772,
- 370978, -622770, 153008, -998043, -541166, 234613, -433255, -434865, 90194, -605054,
- 77309, 623844, -648540, -117038, 599685, -73551, 893353, 550830, -570157, 642098,
- -583579, 16106, 346819, 307627, -361851, 55835, 75162, -142808, -293668, 67646,
- -161598, -45097, 62814, 547071, -305480, -82141, 9127, -19864, -150861, 13959,
- -5369, 29528, -82141, -56371, -70330, -9664,
- },
- {
- -22949620, -165896864, 25232396, -11794517, 1899449, -1007707, -1072131, -665183, -1634772, 2434173,
- 3974992, -3865471, -5914707, 2092723, -288837, 2244121, -649614, -9402757, 6009733, -325344,
- 1003949, -1530619, 5379447, -1339493, 5377299, -4501126, -1816234, 3791383, 379031, 2348810,
- -63888, -1620813, -959388, 1128503, -43487, 2077690, -5610838, 4769561, -919123, -3143916,
- 1952600, 2078227, -3380676, 1785096, 182536, 1087164, 884763, -726923, -2247342, 10201,
- 864362, 799401, 574452, 1259499, -765578, 601295, 1069984, -164819, 1236951, -278099,
- 355945, 449898, 108448, -925029, 312996, 11274, -819265, -604517, -731755, -132070,
- -719944, 373662, -19327, 212601, 20401, 458488, 671626, 243739, 270046, -169651,
- 445603, 564251, -499290, -94489, -10737, 341987, 296890, 68719, -223875, -190589,
- 238908, -346282, -305480, 259846, 70330, 97174,
- },
- {
- 462783, -9037148, 8843875, -2370822, 4295, 255014, 196495, 596464, -1767916, -747861,
- 3616363, -852551, 1085553, 5194763, 619549, 985158, 2412161, 6439230, -4310537, -6990596,
- 4076461, -121870, -6589017, 6332393, 986232, 6915434, -4128537, -1108102, -4813048, 6184753,
- -2889439, 1493038, -6423661, -2241436, 258235, 2778844, -161061, 267899, -674310, 1221381,
- 865973, -59056, -507343, 324270, 702227, -995896, 1166084, 597000, 433255, -409096,
- -183610, -307627, -284005, 539555, 515396, -373125, -2149094, 350040, -564788, -839666,
- -640487, 652298, -60666, -463856, -362925, 345745, 433255, 419296, -689879, 617402,
- 388158, -791348, 579284, 399969, 616328, -227096, 7516, 45097, -547608, 37044,
- -128312, 271120, -84289, 130997, -65498, -35970, 327491, 114890, 202400, -51003,
- -284005, 12885, 2684, -17717, -139050, 61203,
- },
- {
- 9579925, -222563056, 1006096, -5937793, -1611, 3397319, 3053722, -1038845, 7667054, 1567126,
- -1354525, -8899172, 408022, -1437740, -1345935, -6218576, 6024229, -2952253, 2160906, -1481764,
- 1724429, 2583423, -1341640, 1089848, -2831457, -2926483, 2690260, 3741454, 5497558, 3745748,
- 1757179, 210453, 200253, 482110, -1601486, -1401770, -162672, 152471, 2409477, 294742,
- -1556389, -2324651, -631897, 2197950, -2427194, 1328219, -4388920, 205085, 1180579, 757525,
- -610422, 1908039, 1162326, -1580548, -17180, 57982, 1067836, 465467, 587874, 377420,
- 1180042, -9127, -515933, 832687, -469762, 780073, -381178, -757525, -113280, -506269,
- 186831, -41339, -282931, 86973, 353798, -214748, -629750, -34360, 110595, -210990,
- -140123, 415001, 166967, 33823, 15569, -51003, 303869, -285615, -98784, 27917,
- 258772, -151934, 59056, -231391, 88584, 33823,
- },
- {
- 256624, 14988899, 947577, 3245385, 237297, -196495, -1055488, 966905, 951872, -190052,
- -1032403, 334471, 1506997, 1824824, 761283, 6598144, -8343511, 6519224, 1529008, -597000,
- -14876156, 6262599, -4334159, 7863012, 8035884, -6597607, -1044214, -3784940, -838056, 692564,
- -59056, -1958505, -6431714, 1005559, -626528, -5803038, -2742874, -2381559, 296890, -418222,
- 1311576, -1454920, 1176284, 290984, -4271345, -1225139, 1049583, -1354525, 241055, -273267,
- -912681, 1076963, -626528, -100932, -260919, -1679869, 845035, -511638, 832687, 118112,
- -125091, -83215, -1096827, -537, 9127, -106837, -47245, 379568, 369367, -441845,
- 746787, -935229, 786516, 505196, -273804, -100932, -89657, 402116, -136365, -45634,
- -399432, -442382, 136365, 93416, -79457, -1611, 76773, -21475, -410169, 199716,
- -102005, 75699, 419296, 186831, -146029, -134755,
- },
- {
- -44627396, -48074104, 22108882, -9775882, -329639, -55298, 3568581, -1944010, 4305705, 1974074,
- -1010391, -631897, 2331094, -3751117, -3273839, -5384279, -2084670, 5211943, 183610, 860604,
- -2202781, -2712272, -755377, 710817, 2226404, 917512, -12885, 864362, -1587527, 1103270,
- 1530082, 975494, 360777, 2170032, -1144609, -1932198, 4226785, 3129958, -561030, 233002,
- 1299228, -959388, 162135, -2807298, -1915555, -1344325, 3021510, -545998, -1110249, 638876,
- 178241, -598611, -447750, -1096827, -1591822, -260919, -940598, -197032, 25233, 314606,
- -59056, 425202, -876710, -389768, -1420024, -1284732, 144955, 738198, 230318, 775778,
- 861678, -150324, -325344, 442919, -255551, -1091995, -67109, 230318, -21475, 295279,
- 111669, -418222, -199716, -96100, 355409, -335544, 106837, 166430, -427349, 244813,
- 30602, 238371, 169114, 285615, 0, 163209,
- },
- {
- -1713692, -3668976, 18136036, -4989142, 2131915, 1286880, 5090073, -4531191, -1648194, -3629247,
- 1955821, -4629438, -1899449, 1000727, -10485626, -403727, -363462, 5768678, 8547522, 1438814,
- -7786239, 6050535, -1397475, 8615704, -906775, -3411815, 2643552, -5109938, 2770791, 134218,
- -2262911, 4306242, 1374926, -677531, -356482, 3337727, -3605625, -3101503, -3546032, -459562,
- -2185602, -2427194, 383863, 434865, 217970, -1394254, 1316408, 1174137, -402116, 470299,
- 397821, 399432, -973884, 843961, -2628520, 1101659, -1066763, 1115618, -540629, -760746,
- 306553, -306553, -227633, 197569, -184684, 104153, 667867, 529892, -123480, -433792,
- -112206, -106300, 387084, 88584, 728534, 753767, -288300, 418759, -482647, 427349,
- -118112, -33286, 115964, -3758, -159451, 140660, -280247, 289910, -293132, 62814,
- 195421, 161061, -89657, -362388, -24159, 253940,
- },
- {
- -4407710, -148624656, 5385352, -1345935, 13152800, -7859790, 14868640, -8587250, -2403571, -1015760,
- -4800700, 2139968, 1631551, -2328409, -4686883, 5600638, -2523830, 3351148, 784368, 2073396,
- -165893, 424665, -2447595, -580357, -688805, 3612604, 3678103, -1913945, -528818, -1695438,
- 110595, -2500745, 2826089, -609349, 2132451, -1942399, -2146410, 3803731, -1624035, 1291711,
- 1107028, 1263257, 54761, -677531, 1002875, 1827509, -2108292, -863825, -1082869, 343597,
- -1382443, -680752, -703301, -100395, -1293322, -1266479, 642098, -344134, -1635309, 341987,
- 949188, -62814, -675921, 60666, 39192, -666794, 86973, -180926, -47782, -149250,
- -218506, 418759, -679679, 48855, 142808, 285615, 77309, 121333, 160524, 102542,
- 17717, 40265, 23085, 255014, -14496, -335544, 144955, 200253, 244813, -85362,
- 19864, 51003, -193274, 112206, -140123, 81604,
- },
- {
- -1512365, 22531398, 1605244, 47245, -489626, -700080, -997506, -1043140, 2179696, 1479079,
- -3597572, -2442226, -7265474, 16708497, 11827266, -3275986, 777389, -2201708, -674310, -2504503,
- -4470524, -1697049, 2420214, -2088965, 512712, 3308199, -1816771, 2075006, -1181653, -6576669,
- 3409130, 1379221, -3051574, -2024003, -2557653, -3435437, -2720862, 3011846, 1648731, -1483374,
- 1478006, 822486, 1324461, 1545115, 1684701, -1821603, -60130, -61740, -2102923, 1621887,
- -62814, -882079, -1519882, 1111860, -950262, 2621004, 853088, -809601, 289910, -267899,
- 787590, 713501, 847719, -693100, -312996, -461709, -419833, 439697, 249645, 475131,
- -408022, 437013, -24696, -520228, 170725, 406411, 364535, -47245, 485868, -34360,
- 125628, 61203, -91805, -84826, -486405, -202937, 77846, -388158, -346282, -113817,
- 53150, -43487, 55298, -218506, 69256, 36507,
- },
- {
- 5455682, 117336360, -16039018, -3110093, 2311766, -17133698, -17206176, 6754910, 2392297, 4751845,
- 4948876, -504122, -1965484, 20333986, -4524748, 4486094, 8107825, -68719, 930397, -4452271,
- -2796561, -2712272, 470299, -5117454, -6536940, 362925, 1685775, 4868346, -1356136, -9108552,
- 131533, 1670205, 4102231, 547608, 3608846, -4002910, -3474629, 4006668, -2771865, 93952,
- -271120, 2171643, -1462973, -2118493, 20401, 1354525, -353261, -750009, 1273995, 2146947,
- -1858647, -227633, -1614371, 2608656, 775778, 2545842, -1057636, -710817, 336081, 329102,
- -1196148, 756988, -774705, -415001, 40265, 596464, -1146219, -133144, -812823, 185757,
- 600759, 843961, -116501, -45634, 47245, -246424, 1074, -941672, 410706, 685584,
- -505196, -521839, -126702, 320512, -354335, -40265, 106300, -17180, 57982, -83215,
- -188979, 48318, 300111, 5906, -284542, -14496,
- },
- {
- -1282048, -4720706, 6667400, 4729296, -2400350, -3435437, 561030, -2085207, 2167885, -2108292,
- 99321, -7309498, -4756677, 25912074, -25905096, -10490458, 1748589, 3107409, -4982699, 5215164,
- -3276523, 5799817, -5405753, 3542274, -2892124, -319438, -1231582, -1057636, -2056216, -353798,
- 3944928, -2995203, -3404299, -457414, -1283658, 2450279, 3674345, 354335, 2241436, -3408594,
- -1018981, 180926, -476741, -1263794, 562641, 1300301, 1472100, -1652489, 2401424, 383863,
- 718333, 1130650, -1664837, 24696, 1309965, 838056, 1307281, -857920, 44560, -55298,
- 170188, 1041530, 786516, -885837, -380641, 130460, 47245, 135291, 566936, -528281,
- 234076, -92342, -574989, -341987, 335007, 322659, -707596, 658741, -341987, 187905,
- 395674, -236760, 95026, -61740, -366683, 200253, 112206, 106837, -171262, 4832,
- 45634, 173946, -104690, 253940, -130997, -114890,
- },
- {
- 15480136, 53679040, -1542430, -3048890, -265751, -136902, 3735011, -87510, -747861, -2276870,
- 2266132, 1069447, -3629247, -5900212, -39864276, 1030255, -7230578, 1268089, 3616899, -242666,
- -4456566, 132607, -1061931, 1414655, 1665911, -1858647, -1252520, -7674033, 2835215, -135828,
- -8590, -1082869, -3453691, -1852742, -321586, 1583769, 822486, 2655901, -157840, 253403,
- -302795, -64961, -4655208, 950262, 1773822, 2778844, -151934, -1915555, -1337346, -1084479,
- -444529, 910533, -1240709, -545461, 390305, -1523640, 407485, -99321, -1377074, 540629,
- -718870, 464393, 1234803, 226023, 330176, 827855, -126702, -12885, -328028, -510564,
- 186294, 233539, -41339, -134755, -65498, -333934, -288837, -8590, 160524, -301721,
- 112206, -531502, -93416, -457414, 122943, 220654, -147103, -47782, -157840, 27917,
- -131533, -188442, 56371, 237297, -135291, 89657,
- },
- },
- {
- {
- -557809, 33124398, -17353816, 565325, 842887, 1249299, -755377, 2199560, -978179, -445066,
- 294205, -4927401, 1645509, 4598300, -2902861, -334471, 5233418, 6535330, -1262720, -13652627,
- 2172180, -6585796, -1902671, -7981660, -3617973, 8101382, -2112050, 614180, 2553895, 5552319,
- -5000953, 7021735, -2429878, -1648731, -1951526, 2326799, 726923, -2605972, 2318746, 1378685,
- 529892, -24159, 761820, -316754, 2508261, 774705, 831076, 208843, 2913599, -1372242,
- 270046, 78383, -919660, -1127429, -795643, 871342, -514859, -533650, -855235, -468151,
- -672162, 470299, -479426, 550830, -79994, 627602, -10201, 1355062, -139586, 387621,
- 22012, 260919, 19864, 548145, 338229, -35970, 340376, 104153, 91268, -311385,
- 122407, 123480, 2684, 75162, -335544, -27917, 178778, 167504, -71941, 83215,
- -242129, 152471, -118112, 55835, -63351, 164283,
- },
- {
- 6784438, 130150392, -49316424, 4917738, 4894115, -102542, -3273302, 3380139, -8053, 2824478,
- -3597572, -2178085, -948651, 7920457, -679142, 1122060, 3981435, -10974178, 2720862, 4027606,
- -4598836, 5067525, -895501, -213138, -999654, 1573032, -256087, 1773285, 678068, -3952444,
- -1458141, -2137820, -835371, -3109020, 2240362, -3651259, 3182034, -1884417, 4199941, 3586298,
- -1930051, -2651606, -243739, -11274, -598074, 1293322, -2679523, -382252, 223875, -1258962,
- 710817, 2255932, -1628866, 108448, -984084, 394600, -352724, -1283658, 515396, -226560,
- 1673964, -81604, 1066763, -332323, 440234, 396211, 56371, 764504, -322123, 884763,
- -60666, -882616, 222265, -224949, -350040, -253940, -528281, 723702, -408559, 71941,
- -71941, 120259, -28991, 175020, -134755, 373125, -98784, 16643, 167504, 4295,
- 110595, -142271, -113280, -196495, -39728, -6979,
- },
- {
- -2587718, -99238976, 38332584, 17658222, 3826816, 2724083, -2859911, -142808, -130997, 1966558,
- 452582, 2044404, 2081449, 6151467, -365609, -2818572, 7261179, 3413962, -13459891, 1009854,
- -2275259, 3529926, 3381213, -4865661, 6637335, -5228049, 3870303, -383326, 592706, -5075041,
- 1101659, -3115999, -3392487, 1780264, -2817499, -933619, 1921461, -1225139, 49392, 1677185,
- 1177358, 79457, -1540820, -1035624, 1832877, -1849520, 1701881, 1445257, 610959, -770410,
- -918586, 138513, 546535, -2493766, 2442763, 1063541, -832687, 49929, -1267015, -190052,
- 762894, -781147, -848793, 685584, 497142, 321586, -304943, 205085, -298500, -687732,
- -116501, -25770, -227096, -58519, 30602, 71404, -53687, 234613, 20401, -143345,
- 29528, 172872, -2147, -322659, 60666, -204548, -273804, -201863, 343597, -16643,
- 16643, 51540, -24159, 35970, -272194, -310311,
- },
- {
- 1553168, 24961276, -6477348, 230318, -263067, -89657, -462246, 647466, 357019, -426276,
- 2275259, -508954, 2411624, -1868848, 1662689, -1739462, -1480153, 7885560, -5203353, 3094524,
- 5014911, 1007170, -779000, 304406, 6201933, 4589173, 2088965, 4631586, -90194, 433792,
- -2231236, -3043521, 2587181, 345745, 3085397, 2744484, 2463701, 838056, -1080184, -710817,
- -112743, 1064615, -1200980, 1296543, -156229, 154082, 228707, 423054, -1249299, -769336,
- 598611, -1002875, -383863, -144418, -1685775, 875636, -680215, -674847, -62814, 244276,
- -75162, 295816, -762357, 257698, 35433, -161598, 757525, 12348, 321586, -349503,
- 289373, 292595, -110595, 118648, 53687, -210990, 225486, -454730, -197569, -186831,
- -199179, 409096, 95026, -51003, -180389, 127238, 245887, -267362, -206158, -62277,
- 69793, 11811, -236223, -120796, -71404, 13422,
- },
- {
- 9754944, -180884688, 6763500, -13108777, 1629940, 406948, -748935, -1932198, 242129, 5312338,
- -8348880, 2497524, -1818919, 873489, 5957657, 86436, 2150705, -14217952, 6114423, 520765,
- 431644, -2865817, 5881958, -640487, 4181688, -437550, -1684164, 5507759, -2565169, 2886755,
- -2297808, 1433982, -2724083, 2639794, 518080, -1738925, 4595615, -1905355, -1762547, -143881,
- 1352915, -1135482, -828929, -503048, 24696, 2543158, -826244, -648540, -197032, 300111,
- -650688, 1114544, 624381, 1469953, -202400, 329639, 780073, 311385, 1288490, 863288,
- -267899, 520765, -265751, -578210, -89657, 89121, -1031329, -426812, -513249, -99321,
- -876173, 625992, 671626, 175020, -405874, 526134, 781147, 32749, 316754, -34360,
- 230854, 296353, -347892, -74088, 118112, 82141, 574452, -173946, -337155, 216896,
- -271657, -112743, -123480, 196495, 149250, 121870,
- },
- {
- 333397, -92342, -2569464, 1584306, 212064, 105227, 445603, -730681, -2285996, 918049,
- 2481417, 1526861, -1385127, 1871532, 6675990, 2449742, -3208878, 7216082, -148176, -5650030,
- 1973538, -370441, -5129265, 9880572, 1072131, 1700807, 1145146, -163746, -4467303, 1666447,
- -697395, -1918240, -3367791, -3975529, 1618666, -630286, 2833605, -1352378, 34897, -347355,
- 2195802, 239444, 64961, -1082869, -322123, 408022, -799938, 2200634, -19864, 632434,
- -162672, -545461, -704375, 228707, 511101, -1192927, -1494649, -229781, -179852, -360240,
- -1021665, 759136, -143345, -541166, -163209, 289373, 34897, 998043, -650688, 222265,
- 187368, -564788, 213138, 780073, 12885, -397284, 528281, -505196, -85899, -728534,
- 332323, 253403, -238371, 202400, -8053, -17717, 318364, 10201, -125628, 184147,
- -220117, 58519, -109522, 13959, -277562, -8590,
- },
- {
- -35744864, -161306624, 907312, 3790309, -1066226, 2856690, 1045288, 1226750, 6199786, 3774203,
- 1748052, -7304129, -1752347, -5091684, -3155727, -2547453, 2315524, -2586644, 2730526, 738198,
- 4767414, 565325, 485331, -103616, -3194382, 146029, 2077690, 3463354, 4833986, 2916820,
- 3357591, -734976, 218506, 312996, -1717987, -283468, 1350767, -46708, 2567317, -2589865,
- -1848983, -1535451, 1853815, 1903207, -3808026, 561567, -2119566, -387084, 756451, 583042,
- 1643899, 192737, 1108638, -1534377, -376883, 131533, 807991, 180389, 104153, 315143,
- 784905, 507880, -158914, 96637, 472983, -265751, -457414, 151398, -715649, 63888,
- -56908, 121870, -352187, -107911, 194347, -122407, -316754, -91805, 263604, -160524,
- -345745, 82141, 166430, -392990, 488553, 159988, -46171, 116501, -367220, -89657,
- 135291, -36507, -136365, -1074, -42950, -4295,
- },
- {
- 1160178, 7815230, 5748814, 365609, -173946, 9664, -814970, -70867, 2305324, -712965,
- 267899, 152471, 2528662, -2555506, 16493211, -3117610, -338229, 1874216, 4386772, -10080288,
- 1432909, -4685810, -845572, 1051730, 11164231, 389768, -6913824, 3667365, -5591511, 1817845,
- -1789928, 1443646, -5976984, 1445793, -1655173, -3189013, -2331630, -2660195, -2877628, 1860258,
- 1063004, -1116155, 1405528, -1072668, -2605435, -1901597, 932545, 63888, -783295, -1199370,
- 468151, -777926, 231391, -42950, -914291, -622233, 481036, -831613, 572841, -989453,
- 256624, -321586, -869194, 115427, 329639, 492311, -772020, 585189, 654983, 126165,
- -570694, -349503, 813896, 115964, -297427, -112743, -171799, 104153, -264141, 38655,
- -168041, 31675, -175020, 128849, 180389, -128312, 18790, -239444, -91805, -141734,
- 19864, 124554, 426276, 77846, 83215, -175020,
- },
- {
- 45035416, -118103544, -18977312, -877247, 2393371, -1534914, 1619740, 655519, 3186329, 492311,
- 2703682, -220654, 5303748, -7773354, -6663642, -165356, -4032438, 6027987, 2414309, -3973382,
- -892816, -553514, 2179696, -2627983, 1991254, 3352759, -3530463, 2187749, -2816425, 865436,
- 4220879, -2632278, 1374390, 500901, -675384, 18254, 1180579, 1990717, 1586454, -1832877,
- -47245, 2451890, -2738042, -3544959, -267362, -667867, 828392, 748935, -1285806, 83752,
- 99858, -169114, -170188, -1968169, -1897302, 32212, 228707, -39728, -523449, 307627,
- -192200, 463856, -362388, -1021665, -697395, -290447, -317828, 545461, 590558, 461709,
- 284005, 565325, -328028, 125091, -361851, -551903, -316217, 234076, -275415, 529892,
- 70330, -280247, -191663, 8590, -51003, 402116, -228707, 41339, -119185, -107374,
- 216359, 178778, 420907, 207769, -28991, 130997,
- },
- {
- 1562831, 17842904, -2389613, -1384590, 968515, -403190, 3126736, -2226941, -3132105, -1559073,
- -4300873, -687195, -5466420, 4233764, -12226161, -4687420, 7055558, -3227668, 10353019, -2516851,
- -967441, -268435, 270583, 8544837, -5203353, 187905, 3288334, -3359201, -228170, -2349884,
- 2448131, 2754685, 1934883, -2290828, 714575, -1732482, 376347, -3878892, -4642323, 644782,
- -2312840, -1676111, -899796, 635118, 966905, -2362769, 2160369, 885300, 670552, -677531,
- 681826, -1461900, -181462, -58519, -286152, -280247, 110595, 634045, 340376, -1574642,
- -246961, -779537, 562641, 45097, 248034, 416075, 486942, -220117, 716186, -988916,
- -30602, -44560, 561567, 339302, 438087, 246961, 181999, 79994, 98247, 82141,
- -384936, 319975, -248571, 402653, -391916, 198105, -356482, 136902, 51003, -162135,
- 197032, -51540, -109522, -125091, -165356, -98247,
- },
- {
- 6076842, -146534624, 218506, -7541426, -83752, 10466835, 1208496, -6442988, 2877628, -5629092,
- 134218, -1006633, -2466922, 1405528, -4352413, 4972499, -5646272, 8313446, 3546569, -784368,
- 870268, -1885491, 1314260, -3670587, -227096, 4013647, 2604361, 100932, -1350767, -482647,
- -976568, -186831, -344134, 2146947, -1096827, -1110786, -995359, 4088809, 250719, -263067,
- 1085016, 865973, 382789, -976568, 1723893, 125091, -17717, -741419, -1304060, -1027034,
- -1171989, -777389, -1071594, 1152125, -923418, -930397, 556735, -1331977, -1137630, 89657,
- 290447, 15032, -499827, 99858, -200790, -34897, -290447, 176094, -550830, -207232,
- 331249, 322659, -553514, -185757, -54761, 38118, -12885, 593242, 113280, -70330,
- 133144, -37581, 6442, 300648, -127775, 77309, -124554, 106300, 188442, 176631,
- -46708, -88047, 22012, 26844, 38118, -75699,
- },
- {
- 870805, 23277112, -1594507, -2281702, -1866163, 518617, 1547799, -106837, 2741800, -148176,
- -1709934, -4210142, 10241886, -6117107, 8683350, -3055332, 2018635, -6767258, 988916, -5522791,
- 3933653, -8360691, 670552, 809601, 1295470, 68719, 137976, 494995, 2689187, -7472706,
- 3241627, 1262184, -3169686, 876173, -1341104, -2508261, -335544, -596464, 841277, -1787243,
- 1717987, 1639067, 976568, 687732, 741956, -607201, -514322, -566936, -829466, 463320,
- -3758, -365609, -1845762, -394600, 1738925, 571768, 1074816, -275415, 198105, -335544,
- 1256278, 320512, 229244, 140123, 99858, -836445, -9664, 362925, 55835, 174483,
- 395674, 65498, -522375, 53150, 207769, 297963, 317291, -2147, 215822, 111132,
- 140660, -71404, 73551, 24159, -259309, -345208, 218506, -222265, -496069, -127238,
- 171799, -122407, -183610, 90731, -96637, 63351,
- },
- {
- 12856448, 103156528, -14526116, -5514738, 28454, -9564355, -16010027, 4437775, 3527779, -1875827,
- 3711926, -3811784, 995896, 21090974, -8184597, 5731634, 8000451, 4323959, 1043140, -4017942,
- -3376381, -407485, -819265, -7665443, -2124935, -1956895, 1228361, 3338263, -2350421, -4733591,
- -2768107, 2530810, 1906429, 2568391, 1063004, -2872260, -2081985, 967978, -1161252, -3753265,
- 2408403, 1024887, 1628330, -1035624, -1588601, 1729261, -2215666, 875100, 1585917, 2086280,
- -1779727, -445603, -103616, 988916, -287763, 1517197, -695785, 274878, 458488, -856309,
- 748398, -37044, -929324, -243739, -112743, 783832, -151934, -680752, -592169, -336081,
- 359167, 1043140, -209917, 261993, 9127, -352724, 144418, -635118, 316754, 4832,
- 112743, -199179, -377420, 107911, -241592, 210990, 82141, 248571, -153008, -113817,
- 90194, 2147, 237834, -76236, -199179, -100395,
- },
- {
- 856309, -1010391, 3890167, 3246459, -4301410, -863825, -3084860, -1764158, 899796, -594316,
- -4562329, -3459059, -5525476, -29748018, 47487304, -13756780, -1086627, 5355824, -6247567, 6702297,
- -2149631, 1359357, -285615, 2725157, -8557185, 2132988, -543313, -174483, -2925947, 755914,
- 1794223, -3627637, 130460, -170725, -649614, 2056216, 5350456, 1184337, -2833068, -727997,
- -795106, -1085553, -579821, 1271310, -115427, 2069637, 524523, -1278827, 952946, 1294933,
- 1222455, -991064, -598611, 664646, 1401233, 1403917, 539018, 469225, -885300, 721018,
- -210453, -92342, 1155883, -717796, -16106, 54224, 379568, -333934, -164819, 345208,
- 135291, -536871, 219580, -605054, 41339, -32212, -278636, 472983, 247497, -26844,
- 143345, 5906, -127238, 45097, -228707, 259309, 56908, 54224, -136365, -71941,
- 16643, 13959, 171262, 76773, 3221, -26844,
- },
- {
- -1687922, 75138304, -2159295, 3817689, -4618701, -3793530, 2940442, 401579, -455267, -3736085,
- 2605435, -5191542, 3769908, -20330228, -25178708, -3547643, 3416647, 2377801, -1067836, -1986422,
- -1152662, 1750736, -2274722, 3236258, -881542, -1345399, -2978560, -3179350, -75699, -60130,
- -1233193, -2141041, -4737886, -1219771, 1739462, 3428995, 1831267, 1124208, -272730, -3051574,
- 1387274, -228170, -2529199, 13422, 1489280, 4410395, -1752347, -2182917, -1032403, -344671,
- -1493038, 688805, -1327682, -552440, -409633, 761820, 202400, -530428, -1010391, 918586,
- -364535, -229781, 1022739, 881005, 872952, 594853, -286689, -110059, -128849, -255014,
- 196495, 274878, -279710, -49929, -479426, -371515, 33286, -42950, 443992, -91805,
- -83215, -537945, -113280, -223338, -26844, -161598, 234613, -114890, -102542, -42413,
- -159451, -227096, 150324, 73014, 238371, -74088,
- },
- },
- {
- {
- 66035, 76746768, 14488535, -4683662, -2979097, 1582159, -2544231, -1923072, -3882651, -155693,
- 105764, -6495065, 4760435, 1205812, -6879464, -3503620, -1132798, 4966056, 21475, -9203041,
- 5367099, -801011, 6506876, 1411434, 1202054, 8056285, 2743947, 2295123, 1060320, 8516920,
- -2379412, 6641093, -1332514, -2387465, -6991670, -2908230, -634045, -1248762, 2179159, 612570,
- 224412, -813359, 1960116, 711891, 42413, -1104880, 451508, -187905, 1184874, -2921652,
- -348966, 359704, -922344, -904091, -758599, 721018, -1051730, -565325, -907312, -16106,
- -77846, 305480, 7516, 79457, -245887, 537945, -256087, 1450625, -205085, 539555,
- 238908, 194347, -333397, 466004, 369904, -75162, 555661, -82678, -308164, -42950,
- 280247, 43487, -57445, 141197, 27380, 144418, -114354, -229244, 12885, 404264,
- -153008, 235149, -227096, -141197, -50466, 98247,
- },
- {
- -8722542, 225454112, 27022860, -8198556, 49929, -503585, -2523293, 872952, -5988795, 1364726,
- -1713692, -4543002, -4794794, 6658810, -3113315, -8734890, -375810, -1734630, 12847858, 4692252,
- -2229088, -832687, -5191005, -27917, -2538863, 2538326, -1565516, -753767, 981937, -2040110,
- 1751810, 1074279, 2435247, -2098092, 2763275, -591095, 4916127, -1267552, 1391569, 1500017,
- -2751464, -2346126, 3517578, 2981781, -1335735, 1068373, -196495, 3187940, 1613297, -1684164,
- -902480, 1111323, -1501091, 195958, -297963, 1335735, -1221918, -2374043, 37044, -394063,
- 1132261, 67646, 994285, -912681, -714038, -359704, 39192, 512175, -1094143, 953483,
- 346819, -564251, 80531, -81604, 304406, 199179, -321049, 527207, -308164, 284542,
- -392990, -166967, -44023, 173409, -265214, 250182, -273267, -4832, 199716, -39728,
- 340913, 144418, -178241, -343597, -95563, 118648,
- },
- {
- 548682, -171487840, -17835926, 9775346, 3060164, 4793721, -338229, 657667, -1451699, -1029182,
- -4682588, -3109556, 329102, 1789928, 1059783, -2077690, -1212791, 3717294, -8492761, 1411434,
- -9654550, -3087008, 4764730, -3141769, 3399467, -5717675, 1340567, -5408438, 969052, 118648,
- 3424700, -6539088, -4580046, 870805, -4460324, -207769, 1786170, -2928094, -1991791, -937377,
- -1515050, -2679523, -153545, 788127, 2015413, 122943, -183610, -892816, 780610, 1210644,
- 881005, 231928, 425739, -2586644, 1857573, 374736, -588947, 1522029, -191126, -431107,
- 594316, 246424, -533650, 398895, 276489, 168577, -396748, 438087, -117038, -41339,
- 716186, 695248, 73014, -330712, 235686, 408022, 127775, 106300, 45097, -191663,
- -148176, -140660, -15569, 110059, 228707, 4295, 107374, -182536, 168041, -190052,
- -342524, 51003, -72478, -116501, -134755, -159451,
- },
- {
- -1238024, 32477468, 261993, -380641, 749472, 129923, -253940, -683437, -430034, -801548,
- 2210835, 1331440, -291521, -1930588, 5854041, -4173635, -6196564, -2963528, -8333847, 1369558,
- 334471, -3185792, -1580011, -1210107, 2470680, 2099702, -1752347, 2631204, -2789581, -340376,
- -3824132, -4556961, -238371, -2944737, 1334124, 253940, 808528, -1000191, -1511829, 1784022,
- 337155, 268435, -2894808, 204548, -418222, 221728, 347355, 506806, -1492501, 418759,
- 1590212, -1368484, -36507, 505732, -532039, 1231582, -877247, -689879, -663036, -241055,
- -738734, -457951, 16643, 305480, -387084, -493384, -16106, -133144, 358093, -244813,
- 541166, 110595, -513249, 55298, 221728, -95026, 376883, -219580, -89657, -88584,
- -109522, 383863, 75699, -63888, 162135, 110059, 168041, 16106, 23622, 124554,
- 113280, -36507, -56371, 1611, -189515, -16106,
- },
- {
- 5027259, -194215200, 6134287, -10583336, -658741, -620086, -442382, -744640, 163746, 5029407,
- -8127152, 5343476, 568546, 1257889, 4543002, -1906429, 2585034, -19430432, 3995393, -1606318,
- -177167, -4189741, 498753, -1641214, 2939905, 1205275, -1939715, -1342714, -6364605, 3990025,
- -4679904, 1305133, -2407329, 2213519, 1435056, -2950643, 8249022, 1444183, -1777580, -205622,
- 428960, -2619393, -532039, 1416266, -90731, 422517, -1402844, 738198, 144418, -753767,
- -2008971, 341450, 294205, 717260, 235149, 202937, 341987, -1020055, -91268, 783832,
- -593779, 277025, 347892, -363462, -502511, 732829, -423054, 289910, 248571, 380105,
- -303869, 197032, 68183, 9127, -200253, -33823, 170725, 334471, 425739, -70867,
- 207769, 98784, -297427, -82141, -99321, -93416, 194884, -288837, -128849, 99858,
- -420370, 59593, -19864, 159451, 99858, 108985,
- },
- {
- -375273, 868120, -1583769, 1593433, 43487, -79457, 56908, -1767379, -3299609, -518617,
- -140123, 10737, -6315213, -3841312, 1105954, -2684, -2135136, 4372814, -6692633, -2176475,
- 13296682, 926102, -3251827, 13351980, 1986959, -294205, 1645509, 3471944, -6546604, 1123134,
- 4490925, 882616, -1406602, -2034741, 3645354, -925565, 1705639, -2364916, 1019518, 1787243,
- 2350421, -446140, -374736, -2359011, -2209761, -507343, -1666447, 1729798, -18254, -649077,
- -858457, 435402, -724776, -717796, 922881, -537408, -154082, 519691, 1079111, 711354,
- -1257889, 23085, -979789, -513785, 103616, 285078, -738198, 571768, -117575, -110059,
- 29528, -121870, 249108, 634045, -92342, -363998, 257161, -610422, 116501, -545998,
- -45634, 189515, -136902, 255551, -57982, -311922, 4295, -50466, -352187, 18790,
- -134755, -2684, -280247, -51540, -347892, 17717,
- },
- {
- 52674552, -61424476, -14661945, 7722888, -2813741, 38118, -242666, -537, 888521, -531502,
- 2040646, -2490544, 3519726, -519154, -2360622, -823023, 624918, -2756295, 3701188, 314069,
- 4156992, -657667, 935766, 1632088, 1522029, 1204202, -643708, 92342, -1937030, -1856500,
- 2371896, 1197222, 1174674, -1577327, -1846299, -254477, 1551557, -2100776, 916976, -741956,
- -379031, -1536525, 874563, 2800319, -1253057, 1056025, -112206, -969052, -1203128, -486942,
- -768799, -2137820, -692564, -1825361, 298500, -774705, -349503, -292595, -287226, 568546,
- 1138166, -154619, -493921, 35433, 88047, -672162, -289373, 823023, -355945, 184147,
- -131533, -271120, -445066, 44560, 293668, 255551, 106837, 267362, 200790, -278636,
- -365072, -314606, 24159, -346819, 198642, -226560, -62277, 289910, -457951, -287763,
- -5906, 90731, -157840, -46171, -78383, -99321,
- },
- {
- -498216, -10436771, -5832029, -1459752, -289910, -102542, -482647, 4832, 1221381, -372052,
- 2271501, 3267933, 5138392, 1481227, 18494666, 5031554, 12115029, -2217277, 2518998, -8846022,
- -3413425, -10630581, -6231998, -13119514, 5259725, 2401961, -3912178, 5566278, -5995238, 741419,
- -2781528, 2785823, -4472135, 1268626, -611496, -263604, 701153, -1127429, -3198677, 736050,
- -197032, 79457, 1917703, -1022202, -1046898, 12885, 1334661, 1474784, 614717, -1345399,
- 17180, -1861868, -374199, 808528, -278636, -179852, 659278, -1000191, 380641, -1037772,
- 1892470, 1108638, -60666, 196495, 359704, 22012, -1111323, 884763, 333934, -15569,
- 198642, -377420, 34360, -196495, -251256, 78383, 122407, 66572, 205085, 490163,
- 64961, 401579, -314069, -268435, 318901, -181462, -114354, 347892, 162672, -202400,
- 125091, 3221, 289373, 7516, 103079, -49929,
- },
- {
- -36086316, -189527776, 17627082, 4545149, 3372623, -2566243, 1004486, 503585, 112743, -1556389,
- 1545115, -721555, 6061810, -3930432, -2445447, 593779, 34897, 8541616, -544387, -6077916,
- 129386, 1047435, 1726040, -5235565, -594316, 2961380, -3528316, 1922535, -3009698, 981400,
- 3095598, -4096862, 262530, -1409823, -2179159, 878858, 695785, -1128503, 1870458, 337155,
- -3781719, 1882806, 229244, -1764695, 1739462, -350577, -564788, 1528472, -1246077, -1772211,
- -575526, -46171, 526670, 775242, -740345, 133144, 47245, 75699, 683437, 1024887,
- 377420, 953483, 191663, 0, 525597, 647466, -323733, 183610, -84826, -546535,
- -16106, 627602, -267899, 337155, -6442, -150324, -442919, -39192, -615791, 369367,
- 122407, -132607, -177704, 68719, -57982, 370978, -163209, 222801, 60130, -51003,
- 277025, -18790, 29528, -48855, -92879, 61203,
- },
- {
- -1370095, 33552284, 8323647, -2469069, 784905, 323733, 4625143, 754304, -765041, 1346472,
- -2407329, 1454383, -6873559, 1491427, -14907295, -3918621, 9211094, -9168145, 3638374, -5076115,
- 1379221, -139050, -4948339, 7455527, -1072131, -580894, -1497333, 310311, 2779381, 2981244,
- 4064113, -2829847, -195421, -2069101, 632434, -1375463, 3125663, 290447, -868657, 2074469,
- 527207, 598611, -1119376, -778463, 1197222, -645856, 932008, 777389, 825707, -1062468,
- 1507534, -1769527, 314606, 1103270, 272194, -785979, 831076, 515933, 119185, -416075,
- 1045288, -692027, 267362, -503585, 81068, 47782, 148176, -683437, 332323, -424128,
- 398895, -219580, 71941, 116501, 32749, -94489, 12885, 147640, 112743, 182536,
- -73014, 397821, -256087, 194884, -396211, 302258, -415001, 38655, 114354, -103616,
- 230854, -91805, 6979, 79994, -98784, -40265,
- },
- {
- -6208375, -151601072, 8414915, -9175124, -2946885, -970663, -13087839, -7063611, 4807679, -3100967,
- 1175747, -1919314, -1234803, 4378719, -4062502, 1974611, -1284195, 12748000, 3796214, 53150,
- 5182415, -1457068, 801548, -1944010, -1334124, -1696512, -179852, -624918, 415001, 3181497,
- 411243, -1095754, -3052111, 594853, -193274, 1204202, -98784, 4179003, 3142306, 2471754,
- 2699924, 1729261, 228707, 161598, 749472, -1217623, 643171, 256624, -600222, 97174,
- 612033, 209917, -149250, 1401770, 280784, -111132, 942208, -733366, -119185, 93416,
- -483184, -267362, -426276, 110059, -136365, -48318, -292595, 245350, -964220, -164819,
- 165893, -112743, -481036, -124554, 18254, 163746, -53687, 186294, 3221, 102005,
- 537, -33823, -274341, -230318, 119722, 284542, -20401, 205622, 67109, -1611,
- -127775, 46171, 371515, 79457, -12348, -43487,
- },
- {
- -233539, 19985020, -4206384, -4467840, -2297808, 2115272, 1336809, -1059783, 1022202, -780073,
- 675921, -3514357, -2201171, -27773406, 246424, -2453500, 6429566, -1275605, 803696, -3766150,
- 4008278, -12392591, -1308891, -3287261, 9375914, 7398081, 302258, -117038, 5459441, -3953518,
- 2626909, -948114, 1083406, 3692061, 3656628, 3362423, 2932926, -889058, 416075, -620086,
- 1502702, 55835, -1202054, -1139240, 1023276, 782221, -327491, -40265, -347355, -63888,
- 687732, 983011, -369904, -311922, 922881, -1014149, -378494, -1386201, -105764, 587874,
- 1577864, 137439, -266825, -124017, 574989, -418222, 115427, 89657, 142808, 286152,
- 486405, 302258, -375273, 485331, 435402, -28991, 92879, 127775, 238371, 117038,
- 171799, -184147, -190052, -73014, 51540, -34360, 132607, -208843, -242129, 10737,
- 145492, -34897, -92342, 174483, -7516, 134218,
- },
- {
- -21927418, 49571440, -10160819, 7071664, 3350075, 5921150, -5285494, 2618320, 2346126, -4701916,
- -935229, -8781061, -7834557, 13405667, -10070088, -4398584, 1456531, 7041599, 4185446, -230854,
- -1334661, -311922, 3409667, -987843, 3358665, -796716, -177704, -13422, -90731, 1446330,
- 2118493, 2142652, -1283658, 107374, -3135863, -2563559, -958315, -198105, -646929, -3336653,
- 326418, 536334, 3813394, -380641, -1341104, 2774012, -1956895, 187368, -471910, 2344515,
- 337155, 1088237, 199716, -1113470, -1760400, 352724, 7516, 1315871, -754304, -1973538,
- 609349, -206158, -247497, 165356, -125628, 1171989, 169651, -606127, -366683, 25233,
- 27380, 613107, -134218, -19327, -166967, -162135, 174483, -527207, -61203, -136902,
- 605054, -43487, -578210, 91805, 55835, 228707, -149787, 157303, -251256, 39192,
- 290984, -22012, 34360, -113280, -51540, 5369,
- },
- {
- -657667, -23085, 5898064, 2994666, -2441152, 2144799, -2309082, -2991982, 456340, 971200,
- -2809982, -1598802, -9404368, 3665218, 98277440, -8676908, -49392, 9637370, 275415, 4059818,
- -288837, 191663, -46171, 6945499, -5545877, 2340757, -1872069, -3011846, 2025077, 4282083,
- 1613297, -2800856, -212064, -280784, 397284, 1048509, 1573569, -1210644, -2742337, -773631,
- -2705293, 385473, -152471, 2414845, 46708, 513785, -2092723, -1775432, 463856, 1079111,
- 529355, -857920, 1053878, 1142461, 381178, 363462, 529892, 693637, -1016297, 1015760,
- -872415, -951335, 880468, -973347, -686121, -341987, -208843, -469762, -228170, 616865,
- 500364, -194347, 574989, -533113, -328565, -271120, -66572, 196495, 442382, 36507,
- 169114, 448287, -62277, 42950, 62277, 34360, -320512, -74088, -38655, -213675,
- -128312, 6979, 245887, -41339, 31139, 30065,
- },
- {
- -10815801, 70389144, 1442035, 3919695, -4425427, -5041755, 2425583, -1898912, -2331094, -3112241,
- 1005559, -7907572, 5092221, 13322989, 18116708, 2025614, 7595113, 748398, 1250372, 1685775,
- 3436511, 2864743, -2790655, 1537598, -1323387, -1861868, -6731825, -853088, 1168768, -2390686,
- -232465, 1173063, -126165, 1191317, 881005, 50466, -1780801, 550293, 221728, -1680943,
- 2662343, 1714229, -672162, 932545, 1535451, 2358474, -2866354, -1502165, -128849, 564251,
- -1778653, 146029, -4295, 805306, 105764, 1665911, 1368484, 434865, -937914, 504659,
- -166430, -470836, 741956, 1307818, 752156, -91805, -206158, 987843, 464393, -354335,
- 348429, -211527, -458488, 525597, 29528, 390305, 292058, 151934, 552977, 54761,
- -104153, -250182, 242129, -250182, 80531, -9664, 394063, -133681, 121333, -17180,
- -173409, -180389, 89657, -106837, 176094, -272194,
- },
- },
- {
- {
- 850940, 66901096, 14106283, -4220342, 971200, 172872, -3586298, -1479079, -2989297, 2493229,
- -4185983, -5397700, 3103114, -2586107, 2554969, -4843113, -1903744, 6438693, -3719979, -7327751,
- 7450695, 2925947, 942745, 1711545, 5876052, 3207267, 8974334, 1753957, 208306, 4746476,
- -1610076, 8408472, -3715147, -2521146, -4993437, -3888556, 361314, -4569309, 2469069, 1211181,
- -1052804, 1231582, 219580, 2233920, -1255204, -1454383, -875100, 1415192, -1250909, -1896765,
- -160524, 154619, -803159, 202400, -558346, -288837, -1090922, -963683, 711354, -719944,
- -332323, 273804, 389768, 216359, 74625, -359704, 402653, 529355, 82141, 372052,
- 548682, 137976, -315680, 159988, 505196, -327491, 717796, -26307, -331786, -6979,
- 106300, -110595, 387084, -9664, 238908, 13422, -111132, -221728, 88047, 174483,
- 314606, -91805, -106837, -157840, -30602, -119722,
- },
- {
- 9906879, 221927408, 265214, -3367254, -62277, -1437203, -1330903, -2050310, -4272956, -8590,
- 3817152, -5670968, -4740034, 2044404, 884763, -13233331, -2644089, 7144678, 9028021, -123480,
- 864362, -6913287, -2580739, 683437, 711891, -1879585, -2127620, 1072131, 257161, -2684,
- -668404, 3740917, 901943, -607201, 87510, 2088965, 1456531, 549756, 563178, -272194,
- -1990717, -646929, 3674882, 814970, 377957, 619012, 707059, 2314451, 930397, -206695,
- -407485, -89657, -715112, -176631, 349503, 566399, -853088, -759672, -900333, 185220,
- 49929, 558346, 377420, -306553, -779537, -494458, -657130, 586263, -464393, 479963,
- 212601, -164283, -561030, 244813, -5906, 37044, 428423, -199179, 103616, -171262,
- -229781, -35970, -201327, 277562, -67646, -60130, 53150, -15032, 122943, 17717,
- 207232, 151398, -178778, -328565, 17717, 56371,
- },
- {
- 193274, -171806208, -11045582, -3709778, 10064719, 2269353, 434865, -1282585, -805843, -2303713,
- -2542084, -847719, -3440806, -4749160, -77846, 6318434, -7195681, 5555540, -1549946, -1367410,
- -9904195, -4643934, -1287953, 1210644, -266288, 368830, -1588064, -2090575, -3278671, 106837,
- 1887638, -4286914, -2595771, -3089692, -4850092, 2338610, 732292, -4933307, 153008, -1052804,
- -1847910, -1945620, -2077154, 2907693, 1974611, 1466195, -3111704, -132070, -18790, 2570538,
- 1034013, 627602, -315680, -2328946, 67109, 1513439, 526670, 697395, 811749, -1341640,
- 101469, 1079647, 181462, -74625, -139586, 321586, 93416, -310848, -66572, 146029,
- 933082, 863825, -112743, 28454, 630286, 211527, 148176, 114354, -309238, -125628,
- -86436, -158377, 88047, 49929, -44560, 339839, 49929, -292595, 40265, -282394,
- -132607, 47782, -55835, -181999, -54224, -67646,
- },
- {
- 1008244, 26909580, 2115272, 272194, 52076, 128849, -132607, -568009, -1235877, 162135,
- 1125281, 2725694, -2484639, -5702106, 5180268, -3391951, -1977833, 3649112, -13485124, -3476776,
- 2117956, -616865, -3186329, -406948, -3962107, 1716913, -2293513, 5745593, -3122978, -959925,
- -2663417, -2152316, -4596152, 695785, -1989107, -63351, -472446, -96637, -216896, 1367947,
- -280247, -143881, -1570884, -1401770, 3758, 973884, 656593, -1039919, -509491, 855235,
- 332860, 466541, 329639, -273804, 397284, -273267, -51540, 50466, -1552094, -395674,
- -244276, -932008, 697395, -282931, -419833, -165893, -12348, 376883, -333934, 593779,
- -12348, 60666, -801548, 575526, -19327, 56908, 194347, 81068, -56908, 248034,
- -307627, 132607, -34360, 114890, 225486, 68719, 32212, 135291, 156229, -34360,
- 177704, -90194, 118112, 39728, -160524, 93952,
- },
- {
- -18540300, -185437360, 22277458, -18460306, 3845070, 650151, -2548526, 3158949, -3773129, 340376,
- 3977677, -2887292, 1909113, -260382, -34897, 1103270, 3620121, -22741314, 12017318, -5737003,
- -5311801, 2483028, -5254356, -2650532, 2429878, 1611687, 621160, -6233072, -4372814, 3155190,
- -3790309, 2610266, -602906, -721018, 64961, -2562485, 4813585, 3661460, -1509144, 334471,
- -1603633, -893890, 358630, 560493, -433792, 537, -224949, 316754, 755377, -2209224,
- -2204929, 653372, 594316, -681826, 1219234, 85362, 606664, -1128503, -716186, 117575,
- -264141, 329102, 305480, -396748, -426812, 395674, -29528, 125091, 561030, 274878,
- -99858, -441845, 175020, -192200, -73014, -154082, -93416, 583042, 449361, -57445,
- 209917, -271120, 165356, -135291, -51540, -58519, -53687, -158914, -156766, -44560,
- -349503, 122943, -104690, 141197, -6442, 68719,
- },
- {
- 0, 4400731, -4359392, -831613, 733366, 82678, 37581, -2155000, -1058173, -455803,
- -1449015, 132070, -5964099, -7939247, 22012, -20401, 1455994, 1326071, 3559991, -6131066,
- 2889976, 2131915, 5479842, 5347771, 2287607, 2598455, -6675453, 10051834, -5830418, 1454383,
- 2866354, 1928977, -584652, -3841312, 4005594, -122407, 102005, 554051, 1540283, -293132,
- 2578054, 201327, -769873, -1577864, -2353105, -1151588, 173946, -580894, 200790, -1058710,
- -432181, -56908, 876710, -1305133, 1151051, -776315, 141734, 388158, 1102733, 168577,
- -825171, 628139, -1752884, -358630, 152471, 159988, -491774, -39728, 465467, -411243,
- -53150, 239444, 545461, 89657, 177167, 230318, -404264, -134218, -275952, 33823,
- -203474, -168041, 228170, 166967, -175557, -74625, -300111, -193810, -138513, 8590,
- -115427, -105764, -188442, -122943, -55835, -78920,
- },
- {
- -56534116, 14949707, 30732102, 3361886, 5660767, -621697, -187905, 1677722, -1776506, -3755949,
- 707059, 3900367, 1481227, -99858, -3348464, 4067871, -2592013, -1009317, 2660732, -148176,
- 1511292, 868657, 840203, 1272384, 2443837, -1779190, 381178, -1441498, -1124208, -2713346,
- 1029182, 4847945, -363998, -2231236, -177167, -136902, -485331, -1503775, -257161, -105764,
- 435939, -1324997, -235149, 1759326, 1067299, -227633, -113280, -996432, -2879776, 1279363,
- -1814087, -2080912, -332860, -1687385, 1253594, -2059437, -284542, -109522, 212064, 477815,
- 1058173, -496069, -74625, 110595, -173946, -453656, -514859, 719407, -314606, 282931,
- -168577, -713501, -198105, 264677, 206158, 183073, 252329, 382252, 92879, -371515,
- -248571, 129386, -259309, -71941, -272730, -11811, -6979, 33823, -227096, -263067,
- -52076, 88047, 537, -92342, -121870, 79994,
- },
- {
- -904091, -10730976, -6426882, 330176, -88047, 139586, -11274, 420907, -326954, 404801,
- 1586454, 2972117, 2374580, -1264868, 7892003, 11752641, 13886703, -513249, -2107218, 212601,
- -14740865, -3328600, -6843494, -8148627, 4459787, -6136435, 1545115, 1023276, -2192581, -3714073,
- -1329829, -688805, 13422, -2793876, 1968169, -1826972, 1962800, -2539400, -1467805, 104153,
- 379568, 1088237, -1173063, 776315, -1891396, 2090039, 752156, 1010391, 761820, -1510218,
- 399432, -1542967, -788127, 1878511, -359704, 785442, -278636, -654446, 337155, -929324,
- 1678259, 638876, 1234266, -323733, 99858, -155693, -8053, -59056, 489626, -443992,
- 857920, -206695, -494995, -199179, -66035, -353798, 830002, 25770, 314069, 412317,
- 200253, 78383, -280247, -101469, 168041, -168041, -47245, 607201, -73014, -84826,
- 131533, 45634, 71941, 78920, 110595, 5369,
- },
- {
- 20058572, -239548048, -37044, 3098819, 3670587, -861678, 631360, 747861, -1069447, -427886,
- 689342, -622233, 2439542, 965294, -3024731, -632434, 2262374, 2229088, -1327682, -744640,
- -517544, -585189, -1031329, -1215476, 424128, 614717, -224412, -637803, 979789, -2536178,
- 1598802, 1682017, -2375654, -1944547, -1866163, 972273, -267899, -126702, -536334, 1590749,
- -3313567, 712428, 373662, 958315, 847719, 134755, -909996, 1082869, -1247151, -694711,
- -1386201, 709743, -420907, 986232, -441308, 323196, -326418, 184684, 525597, 920734,
- 634045, 680215, -236223, 780610, 77309, 706522, 113817, -333397, -5906, -563178,
- 134218, 26307, 148713, 157303, 357019, -396211, -434329, -137439, 30065, -164819,
- 178778, 19864, -76773, -134755, -93952, -24696, 69793, 119185, 224949, 52613,
- 41339, 56908, -54761, -52076, -91268, -84826,
- },
- {
- 1112933, 37609416, -3304977, 2785286, 795106, 2701535, 1155346, 527207, 1141924, 3579855,
- -34360, -3536906, -272730, -699006, -12904766, -188979, -1280974, -3735011, -5007395, -621160,
- 3474092, -476741, -3172907, 5572183, 1687922, 1324997, -5031018, 2178622, 1160715, 5358509,
- 184684, -687732, -1091459, 2099702, -1940252, -1130650, 5167383, -311385, 825707, 1267015,
- 1526861, -388695, -972273, -1261110, 958315, 2239826, 194347, -299037, 1402844, -1015223,
- 993748, -787053, 647466, 363462, 527744, -455803, 579821, 15569, 204548, 40265,
- 242129, -412854, 518080, -639413, -488016, 35970, 157303, -293132, 44023, 50466,
- 436476, -381178, -394063, 420907, -337692, 306016, -45097, 70867, -248571, 435939,
- 118112, -119185, 204548, -231928, 28991, 67109, -204011, -52613, 113817, 220117,
- 25770, 91805, -32749, 106300, -28991, 104153,
- },
- {
- 4685273, -139137072, -5038534, -10594074, -2728378, -1657321, -16253230, -802622, -2866891, -2040646,
- 1815697, 1977833, -2164127, 2678449, 694711, -4373351, 9660992, -430570, 7634305, -98784,
- 3491272, 940598, 1097364, 214212, -2524367, -2491081, -2052458, -886374, 3052648, 4407710,
- -1684164, -4076461, -2176475, -20401, 2542621, -57445, 1270237, 4807142, 1124208, 2949032,
- 3062312, 3066070, -178241, 1508607, -998043, -1442572, 499827, 379031, 849330, 286152,
- 326954, -506806, 1502702, 136902, 955630, -770410, 741419, -415538, 374199, -40265,
- -640487, -61203, 182536, -240518, -59056, -9664, -437013, -31675, -602369, 3221,
- -112206, -352187, -354872, 201327, 339302, -17717, 154082, -254477, 134755, 19327,
- -114354, 128849, -417686, -248571, 189515, 135828, 147640, 148713, 179852, -55835,
- -171799, -28991, 316217, 35433, 60130, 109522,
- },
- {
- -166430, 15400679, 2441152, -7429757, -1089311, 1894081, -1709397, 683437, 272194, -1588064,
- 1981591, -3013457, -12982076, -11461657, -4759361, -114890, 2982855, 3558381, -4958540, 1843078,
- 4471598, -14985678, 2852932, -4153770, 7660074, 6448894, -3063386, 2900177, 3180423, -528818,
- 1917166, -3420405, 529892, 5435281, 1831267, 4105989, 3012920, -683974, 2382096, 690953,
- -2209224, -679679, 346819, -266288, 1234266, 398358, -900869, -643171, 461709, 425739,
- 506806, 43487, 1277216, -184684, 87510, -1348620, -1002338, -1063541, -358630, 689879,
- 1741072, 3221, 159451, -527744, 15569, -199716, 156229, 181462, -204011, 637266,
- 301721, 310311, -181999, 172336, 348429, 169651, 314606, 63888, 79994, 171262,
- 120259, -107374, -141734, -235686, 32749, -31675, -227096, -205622, -67646, 92342,
- 12348, 55298, 49392, 6442, 62277, 138513,
- },
- {
- 19818590, -5106716, -6396280, -321049, -718333, 12665859, 1567126, -1116692, -1544578, -1078037,
- -2326799, -7660074, 6228777, -10762651, -2297808, -2110977, -3718368, 3940096, 2631741, 5450314,
- -3380139, -1308891, 2831457, 3636764, 1406065, 2477123, -2266132, -733903, 1494649, -243203,
- 4748623, -423591, -484258, -1613834, -2336999, -687732, -2286533, 1545651, -1307281, -1120987,
- -1807108, -1166621, 3550327, 130460, 740345, -49929, -441308, -325344, -128849, -48318,
- 2828236, 800475, -1379221, -242129, -976031, 1140851, -1015223, 1065152, -595927, -887985,
- -363462, -379568, -550830, 757525, -482110, 1228361, 558883, -835371, 26307, -9664,
- -212064, 296353, -77309, -55298, -370441, 333397, -701153, 289910, -170188, -127238,
- 284005, -38118, -321586, -151934, 141197, 51540, -283468, 71941, -47782, 6442,
- 264677, -36507, -43487, -127238, 143881, -26307,
- },
- {
- 485868, -330176, 3147137, 2553358, -484258, 290447, 217433, -1280437, 556198, -1205275,
- -1008780, -746787, -7986492, 34778496, 55370180, 2313377, 1462436, 2287607, 2597382, -3082176,
- 8010651, -1910724, 1518271, 2476586, 455267, -673236, -722091, -424128, 111132, 1948305,
- 2575370, -326954, -1370632, -2008971, -1804423, -44560, 2407329, -1384590, -2342905, 23085,
- -4345433, 3185255, -817654, 1613297, 366683, 340376, -3191698, -1446867, 538482, 1780801,
- 370978, -587337, 1254667, 576063, 141197, -380641, 1069447, -126702, -424128, 704912,
- -697932, -379031, 696322, -1043677, -699006, 164819, -1265942, -52613, 115427, 606127,
- 271120, -83752, 150861, -309238, -332860, -132607, -11274, -59056, 54761, 142808,
- 386010, 508954, 85362, -8053, 220654, -270046, -479963, -122943, 160524, -192737,
- -55298, 20938, 179852, -27380, 96637, 10201,
- },
- {
- 17099876, 46186468, -7554848, -330712, -2216740, 3912715, -6272800, -1202054, -2804077, -3036005,
- 3110630, -2364380, -272194, -7773891, 53323092, 4782446, 6732361, -5344013, 1908039, 2196339,
- 3711926, 2625836, -2559264, -1063541, -736587, -2500745, -4679904, 4258460, -3203509, -1835025,
- -743029, 545998, 3406983, -290447, -350577, -685584, -2488397, 1104880, 993211, 55835,
- 345208, 2718714, 776852, 916439, 1404991, 22549, -2374043, 74625, 236223, -790274,
- -484258, -958315, 1771674, -274341, 726386, 1642825, 557809, 1318018, -992137, -929860,
- 561567, 112206, 505196, 557809, 817654, -647466, -112743, 787053, 513785, -149787,
- 57445, -155693, -286152, 767189, -139050, 490700, 70330, 508417, 64961, 323733,
- -112206, -151398, -17717, 69793, 142271, 31675, 263604, -83215, 76236, -149787,
- -15032, -140123, 16106, -53687, 25770, -194884,
- },
- },
- {
- {
- -266825, 4566624, -37771016, -3140158, 2633352, -1155346, -1910724, 1411434, -19864, 2544231,
- -5004711, -1391569, -378494, -10468446, 9397925, 5614059, 730681, 509491, -5630702, 245887,
- 12719009, 2394444, -1304060, -2445447, 347892, -5289252, 2523293, 321586, -3449396, 1836635,
- -2695629, 3573413, -4037269, 3508988, 3487514, 1195612, 2869575, -5323075, 877784, -11274,
- -2336999, 555661, -717796, 1137630, -1546725, -1318018, -1660542, 399969, -930397, -609349,
- -168041, 411243, 340913, 776852, -173946, 52076, -366146, -319975, 1452773, -241592,
- -767725, -55835, 366146, -210453, 45634, -138513, 358093, 455803, 112743, -325881,
- 29528, 209380, 11811, -91268, 95563, -453656, 397284, -34360, -42950, -45097,
- 97711, -106300, 248571, -98247, 226560, -22549, -83215, -107374, 62814, -177704,
- 256087, -180926, 91268, 130997, 82141, -102005,
- },
- {
- -6605660, 153247120, -33708512, -1595580, 1265405, -58519, -1337346, 1074816, 928787, 2163590,
- 5486284, -3272765, -3404835, -2640868, 3821984, -2137820, 1264331, -4661114, -2767570, -2286533,
- -1797981, -3893925, 1055488, 2790118, 361314, -3062312, -30065, 1871532, -16643, -340913,
- -2525441, 1720671, -1228361, 620623, 635118, -381715, 190589, 1414118, 839666, -183610,
- 565862, 356482, 1200980, -1024887, -1442572, -1302986, -789737, 721018, 711354, 82141,
- 776315, 1072668, -728534, -496069, -94489, 72478, 160524, 333397, 194347, 212601,
- -827318, 4295, 401579, 35970, -792421, -413927, -1032940, 382252, -246961, 60666,
- -83215, -203474, -222265, 315680, -317291, -23085, 209380, -549219, 293132, 114890,
- -63888, 56371, -7516, 330712, -24159, -53150, 311922, -111669, -27380, -141734,
- 8590, 128849, 9127, -188979, 95026, 41876,
- },
- {
- -1435593, -103781440, 37754912, -18755586, -7444789, -2640868, 1124745, -226560, 832150, -2023467,
- 132070, 273267, -3694746, -1527935, -3586298, 5682779, -3685082, 2876018, -2816425, 984084,
- -4976794, -309238, -494995, 1584306, -544924, 1995012, -540092, 2415382, 651224, -1789391,
- -994285, -2818036, -2158221, -3144990, -3122978, 811212, -594316, -449361, 2164664, -209917,
- -161061, -748398, -1018444, 1527398, -577673, 802085, -2610266, 1090385, 1006633, 996969,
- -1059246, 120259, -623844, -1599875, 220654, 694711, 559956, 1013612, 981400, -1051730,
- -34897, 544387, -330712, -501974, 251792, 64961, -270583, -324270, -402653, 54761,
- 759136, 316754, -98247, -19864, 231391, 230854, 96100, -163209, -120796, 297963,
- -132607, -172336, 226560, -76773, -316217, 181462, -31675, -182536, 108448, -324270,
- -38118, 28454, -42413, -81604, 121870, 49392,
- },
- {
- -372052, 14458471, -5228049, 129923, -558883, -298500, 346819, 612033, -832150, 169651,
- 689879, 2228014, -5032091, -4013647, 8307004, -3149822, -3307125, 4828080, -10200547, -1872069,
- 360240, 1872069, 496606, 484794, -1842004, 4543002, 1792075, 6801081, -2581812, 1657857,
- -491237, -658741, -2665564, 2932389, -1149441, -518617, -692027, 670015, -174483, 951335,
- -752693, -879395, -64961, 649614, 847182, 753230, 575526, 156229, 40802, -306553,
- -755914, 701690, 171262, -759672, 43487, -714575, 440234, 775778, -1093069, 215285,
- 201863, -607201, 515933, -398895, -511101, 194347, 455267, 366683, -542777, 705448,
- -225486, 340376, -113817, 376347, -289373, 85362, 224412, 97711, -147103, 186294,
- -467615, 57982, -144955, 44560, 16643, -104153, 21475, -36507, 14496, -195958,
- 75162, -37581, 73014, 45634, -35970, 138513,
- },
- {
- 27260694, -157394976, -2629594, -11415486, 2733210, -1158567, -4453881, 1780264, -3276523, 244276,
- 5422933, -3366181, 2932926, 1904818, -7404524, -6305012, 1384053, -25843892, 5850283, -5142150,
- -2745021, 4588099, -4394289, -2222109, 962073, -1403917, 974958, -1283658, 151934, 3365644,
- -770947, 1939715, -1126355, -1547262, -24159, -23622, -930934, 275415, -106837, 539018,
- -357556, -981937, 294205, -208843, -1246614, -117038, 689342, 646393, 217433, -2261837,
- -1877975, 387084, -12885, -1254667, 1036161, -415001, -216359, -581968, 23622, -329639,
- -411243, 266288, 170188, -151398, -531502, 142808, -27380, -269509, 18790, -377957,
- -209917, -556198, 15569, -17717, 4295, -15569, -93416, -11274, 241055, -44560,
- 104153, -168577, 201327, -232465, 98784, 147103, 124017, -15032, -178241, -58519,
- -204011, 245887, -67109, 50466, -32749, 54761,
- },
- {
- -110595, 4789426, -5033702, -1553168, 6979, 213675, 588411, -1190243, 1200443, 108448,
- -2076617, 256624, -4286378, -966368, 4176856, -2727304, -1200443, 1299765, -3956202, -16008954,
- 2256469, 1512365, 1391033, 2541010, 998043, 826781, -2093797, 14377403, -1566589, 687195,
- -2354179, 1668058, -544387, -4631586, 1593970, -2517925, -874563, 678605, 1586990, -986232,
- 726923, -627065, 684510, -290984, -926639, -47782, 289910, -1447941, 1076426, 810675,
- 635655, -222265, 724239, -1187022, 456877, -1014149, 106300, -289373, 126165, -457414,
- -771484, 949188, -1051193, -122407, 352724, 139586, -526134, -37044, 549219, -422517,
- -43487, 83215, 233002, 54761, 453656, 18790, -693637, 232465, -245350, -81604,
- -56908, -252329, 117038, -62277, -128312, 194347, -310311, -129923, 24159, 40265,
- -33823, 66572, -21475, -271657, -39192, 97711,
- },
- {
- 49074296, 44639204, -54943368, -5168457, -446677, -1018981, 476741, 848793, -324807, -911607,
- -1275068, 541166, -622233, -113280, -6507949, 4934918, 2023467, -1503775, 2115808, 488553,
- 208306, -1571958, -2896419, 464393, 1135482, -3585224, 2319282, 1526324, 1893007, -1014149,
- -148176, 2379412, -3128347, -2576444, 1832877, 619012, 696858, 919660, 67646, -215822,
- 882616, -1729798, -1264331, 1257889, -486942, -104153, 679679, -556198, -2481417, 932008,
- -306553, 160524, 1021129, -1098438, 1695438, -2267206, -834297, 565862, 194347, -39192,
- 980863, -651761, -114890, 206158, -294742, -236223, -595390, 214748, -576063, -91805,
- 33823, -391379, -194884, 194884, 156229, 78383, 268972, 106300, -53687, -171799,
- -100932, 402653, 68719, 159451, -153008, 282931, 12885, -88584, -37044, -92879,
- 91268, 97711, 117038, 19864, 20401, 286689,
- },
- {
- 584652, 3760244, 161598, -120796, -74625, 55835, 282931, 176631, -572304, -457951,
- -259309, 1648731, 869194, 1682017, -3796751, -11651173, 506806, 1532230, -4089883, 6460168,
- -234076, 5415954, -1726040, -3169149, 3334505, -10132902, -1664837, 275415, -3360275, -3614215,
- 777389, -1786170, 3265249, -417149, 1196685, -3489661, 1903744, -274341, 766652, 854699,
- 282394, 223338, -2083059, 733366, -1728188, 1924682, -115427, -446677, 1285269, -255014,
- 286689, -275415, -185757, 1134945, -1120450, 108448, -236223, -170188, 727460, 228707,
- 1075352, -562641, 416612, -891743, 112206, 224949, 397821, -642098, -101469, -843424,
- 425202, 79994, -79457, -99858, -18790, -407485, 636192, -101469, 328028, -9664,
- -114890, 173409, -18790, 244813, 181462, -239444, -47782, 262530, -222265, 74625,
- -27380, -85899, -61740, -32212, 77309, 36507,
- },
- {
- -2714956, -223520832, 39660800, 3816079, -1726040, -36507, 2035278, 1979443, 251792, 181462,
- 1313186, -514859, 158914, -228707, -3385508, 1386738, -1728188, -3890704, -245887, 3069291,
- 461709, -814433, -357019, 575526, 2233920, 1847373, 1094143, -425739, 1542430, -2232309,
- 2015413, 2137283, -887448, 321049, -452045, 109522, -943282, 621697, -1838783, -1231582,
- -5640366, -306553, 1173600, 1008244, -319438, 342524, -748398, 286152, -1075889, -95026,
- -1506997, 448287, 34897, 1506460, -182536, -84289, -477278, -73551, -310311, 184147,
- -123480, -125628, -405874, 551366, -191126, 391916, -148713, -332323, 338766, -330712,
- 22549, -275415, 34360, 89657, 357556, -186831, 275952, 22549, 230854, -254477,
- 48855, -134218, -75699, -62277, -96637, -157840, -141734, -140123, 90731, -104690,
- -104153, 95026, -45634, -2147, -128849, 32749,
- },
- {
- -558883, 25334402, -13449153, 1584306, 2140504, -1768990, -5101348, 730144, 506806, 2157147,
- 427886, -640487, 2778844, 859530, -5747203, 6584185, -1904818, -3709241, -4400731, -4153234,
- -55835, 855235, -4923107, 1621887, 2496450, 2392834, -4574677, 260919, -871878, 307090,
- -1973001, 2874407, 149250, 1877438, -381178, 752693, 3769371, -1626719, 207232, 456877,
- 1312113, -759672, -497679, -721555, 429497, 976031, -740345, -1036161, 304943, -1320166,
- 1150514, -317828, 852014, -338766, -43487, -302258, 537, -179315, 454730, 51003,
- -410706, -362388, 553514, -22012, -301721, -271657, 321049, -221191, -117038, -133681,
- 307627, -338229, -375273, 452045, -219043, 463856, -171799, 20938, -185757, 255551,
- -114890, -19864, 418759, -265214, -5369, 77846, 118648, 169114, 94489, 219043,
- -116501, 171799, 98247, 131533, -12885, 102005,
- },
- {
- -3085934, -98577016, 40477384, -4168803, -2006824, 1611687, -11591580, 194884, -2175401, 1742683,
- -745714, 70867, -525597, -820339, 2309082, -2136746, 9450002, -4231617, 1972464, 47782,
- 3837017, 865973, -40265, 403190, -534723, -1271310, -1535988, -930934, 2183454, 2140504,
- -3259880, -932545, 1265942, -1006096, 2774549, 766115, 822486, 529892, -2381023, 1662689,
- 524523, 1155346, 113817, 1589675, -789200, -1081795, -471373, 153008, 750009, 46708,
- 504122, -45634, 1026497, -745177, 720481, -632971, 118112, -559956, 232465, 173946,
- 605590, 640487, 564251, 83215, 217970, 196495, -90731, 123480, -373662, 37044,
- 33286, -15569, -23622, 343597, 225486, -168041, -155156, -437550, 81604, 12348,
- -70867, 55298, -259846, 102542, 121870, -24696, -32212, -136902, -82678, -61203,
- -68719, -90194, 86973, -37581, 53687, 25233,
- },
- {
- 466541, 5942088, -2984466, -2715493, 2034741, 1181116, -1702955, 472446, -368293, -956167,
- 1436130, -302795, 7698192, 11712376, -4723927, -3811247, -1322313, 5040681, -4514548, -2166274,
- 6638946, -6381248, 1013612, -10338523, -1970853, 3151969, -6597070, 356482, 2837363, 522375,
- 826781, -2906619, -1615982, 1816234, -1686312, 869731, 1946157, 379031, 1804423, -358630,
- -3098282, -217433, 1775432, -8590, 974958, 384936, -389768, 6979, -689879, -1055488,
- -441845, -616865, 878321, -148176, 271120, -671089, -90731, -464930, -293132, 126165,
- 806917, -562104, 482110, -806917, 48318, 219580, -185220, -150861, -688269, 435402,
- 18254, -178778, -47782, 309238, 57445, -11274, 62814, -239444, -18254, -25233,
- -100395, -106837, 139586, 10737, 78383, -165356, -271657, -15569, 72478, 2147,
- -86973, 91268, 37044, -75699, 58519, 63351,
- },
- {
- -10541460, -38184408, -2838974, -6285685, -7039452, 941672, -2631741, -177167, -135291, -169651,
- 1445257, -5506148, -2095944, -17714592, 1429150, 1843615, -1624571, -163746, 256624, 4597763,
- -4168266, -1409823, 1076426, 1035624, -2375117, 1247151, -2690260, -483721, 86436, -2704756,
- 1880122, -4312147, -998580, 782758, -358630, 1598265, -1117765, 1359894, -439160, 1139240,
- 433792, -1732482, 1815161, 466541, 2016487, -612033, -1332514, -613107, 615254, -821413,
- 2126009, -840203, -1872069, 983548, -55298, 2110977, -1054415, -25770, -1092532, -24696,
- 391916, 218506, -289373, 731218, -986769, 436476, -121870, -846109, 276489, 130460,
- -342524, 9127, -23622, 239444, -222265, 198642, -580357, 343061, -202937, 12885,
- -90731, -96100, 132070, 158914, 49392, -130997, -300111, 153545, 54761, -74088,
- 220654, 14496, -63351, -289373, 42950, -94489,
- },
- {
- -86436, -2550674, 108448, 1057099, -830539, 542240, 994822, -156229, 2262911, 143881,
- 2612951, 1871532, -4215511, -2790118, -18606336, -7247221, 5350993, -1220845, 1234803, -5079336,
- 1976759, -4953708, 3021510, 306016, -1509681, -1171452, -1213328, 424665, -2559264, -1906429,
- 395137, 1297617, -847182, -3060701, -482110, 361314, 1037772, -302258, -846645, 1759326,
- -2253784, 1715303, -965831, 1754494, -356482, 286689, -2084670, -547071, 630286, 284005,
- 130997, -472446, 1115081, 31139, 341450, -437013, 83215, -511638, -376883, 663572,
- -285615, -169114, 593242, -703838, -214748, 99321, -649614, 556198, -172872, -365609,
- 2147, 346282, 3221, -337155, 234076, 418759, 110595, 93952, -343597, -184147,
- 215822, 15032, -56371, 15032, 199716, 30065, -278636, -537, 159451, -31139,
- 97174, -137439, -1611, 54761, 105227, -16106,
- },
- {
- -15881715, 11863237, -212601, -1611, 1475321, 2147484, -6809671, 2775086, -175557, -2477659,
- 1924145, -874026, 231928, -10755135, 43772696, -2390149, 2780455, -4377109, 1458141, 283468,
- 1076963, 1586454, -775242, -1167694, 1198833, 1091459, -1648194, 3775813, -1782948, 745177,
- -799938, 367757, 2355790, 325344, 537945, -113280, -171262, 1254667, 1422708, 1796907,
- 10201, 949725, -1057099, 853625, 1286343, -491774, -1046361, 734976, -9664, -1072131,
- 359167, -1473711, 52613, -863288, 342524, 126702, -436476, 1351304, -427886, -1223529,
- 308701, 391379, 314606, -184147, 85362, -448287, -12348, -260919, 209917, -17180,
- -207769, 266288, 9664, 448824, -351114, 0, -176631, 479963, -306553, 67109,
- 186294, 40265, -159451, 63888, 11811, 14496, 120796, -123480, -120796, -151934,
- 151398, -35970, 14496, -23622, 105227, -62814,
- },
- },
- {
- {
- -1423782, -35196184, -6299644, -353261, -3129421, -1003412, -97711, 282931, 2748779, -801548,
- -2352032, -142271, -3058554, -2069637, 6065568, -47245, 4836670, -4207994, 3011309, 271657,
- 10296110, -1657321, -2409477, -3462818, 933619, -3489661, -1984275, -412317, 67646, -1010928,
- -1239098, -904091, 795643, 3237869, 4549981, 1709397, 1431835, -2139431, -1112397, -403190,
- -181462, -891743, -506269, 548682, -532576, -1869921, -1074816, -111669, -81604, -637266,
- -216896, 348429, 852014, 99858, -139050, 161598, -37044, 263604, 607201, -404264,
- 37044, -564251, -3221, 49929, -133144, -37581, 139586, 595927, 88584, -223338,
- -38118, -61203, 278099, -66035, -67109, -130997, -82141, 177704, 195421, -53150,
- -32212, -79457, 99858, -79457, -1611, 68183, -94489, -23085, -82678, 4295,
- 95563, -63888, 23085, 127238, 100932, 25233,
- },
- {
- 2553895, 102707160, -3702799, -2522757, 1538135, -177167, 1217623, 661962, 2081449, 541703,
- 2694018, -802085, 112206, -2030446, 2471754, 468151, 336618, -1513976, -8974334, -1602560,
- -1045825, -1151588, 76773, 2024540, 797790, -1357747, 218506, 1583232, -321586, -1818382,
- -694174, -639950, -788127, 448287, 2348273, -2182917, -163209, 1764158, 1586454, 636192,
- 403190, 1134408, -798327, -663036, -729071, -655519, -1860258, 454730, 746251, 358093,
- 34897, 960999, -552977, -724239, 581968, -219043, 339302, -207232, 437013, -240518,
- -486405, 80531, 191663, -48318, -465467, -523449, -279710, -314069, 5369, -191663,
- 124017, -197569, 51540, 124554, -139586, -318901, 16106, -131533, 304943, 60666,
- 13959, 23622, 48318, 144418, -46708, 190052, 165893, -207232, -12348, 35970,
- 20938, 56371, -47782, -62814, -34897, 33286,
- },
- {
- 4521527, -16412144, -36881420, -22099218, -5834713, -367757, 810675, 105227, -22549, 1440962,
- -1628866, -1449015, -1874753, -250182, -3127273, 1839320, 2631204, -1255204, -1545651, 1632625,
- -1439351, 529892, -1323387, 1529545, -424128, -1374390, 541703, 2438468, 1859721, -1163936,
- -901406, -1288490, -2654290, -2820720, -1989107, -293132, -1017907, 2261837, 407485, -632434,
- 225486, 430570, -263067, -297427, -279173, 87510, -586800, 433792, 858993, 476741,
- -598611, -278636, -931471, 27917, -15569, 313533, 70867, 667331, 617402, -46708,
- -252329, -579821, -405874, -130997, 89121, 193274, -412854, -157840, -255014, -298500,
- 453119, 31675, 124554, 6979, 148176, 126165, 108448, -177704, 85362, 136365,
- -6442, -121333, 27380, 12885, -78920, -114354, -14496, -16106, -27380, -81068,
- -75162, -42950, -66572, -28991, 102005, -20938,
- },
- {
- -355409, 4904853, 2014877, -749472, -256624, -31675, 514859, 882616, -1062468, 636729,
- 1134408, -907849, -877784, -2372433, 4209068, -1563368, -1940252, 5051956, -8369281, -820339,
- -652298, -237834, 4529043, -911070, 1467268, 2683818, 3913789, 2157684, 1167157, 201327,
- -372588, -543850, -855235, 1059783, 559420, -547071, -772020, 446677, 175557, 537,
- -421981, -1187022, 820339, 357019, 715112, 1577327, 4832, 235686, 13422, -471910,
- -397821, -61203, -388158, -207232, -426276, -159451, 438087, 312996, -507880, 157303,
- 332323, -286152, -155693, -135291, -257698, 17180, 203474, 151934, 31139, 199179,
- 192737, 57445, 506269, -213138, -220117, 118648, 137976, -17717, -118112, -126165,
- 6442, -234076, -57982, -53150, -111132, 53687, 46171, -79994, -91805, -127238,
- -6442, -7516, -74625, 26844, -2147, 19327,
- },
- {
- -27741194, -76146016, -8017094, -7220914, -2669322, -1070521, -3047816, 717796, -1331440, 773094,
- 336081, 2019172, 281857, -3283503, -6468758, 845572, -3096135, -14877767, -5519570, -120259,
- -2325725, 1250372, -1316944, -588411, 737124, -1207423, -2105071, 2169495, 637266, 1081795,
- 2355790, -546535, -39728, -259309, -442382, 42950, -1850594, 519691, 920734, -36507,
- 259846, -360240, 56371, -1218697, -683974, 452045, 663036, -228707, -887985, -1466731,
- -864899, -731755, 242666, -300648, 28991, -47782, 16643, 250182, -578747, 89121,
- -15569, -16643, -95026, -286689, -234076, 43487, -107374, -258772, -113280, -216359,
- -239444, -341450, 10737, 40265, -70330, -75162, -1074, -83752, 38118, 21475,
- 49929, -32212, 43487, -102542, 111132, 129923, 92879, 83215, -81604, -85362,
- -86973, 146029, 64961, 52613, 41876, -49392,
- },
- {
- 264141, 2425583, -2207076, -2277943, -279710, 420907, -88047, 183610, 226560, 146029,
- -1079647, -342524, -1637456, 1282585, -260382, -226023, 420370, 2662343, -887985, -10931766,
- -7609609, 2033667, 1567126, 844498, 211527, 455803, 5686537, 3453691, 1454920, 836445,
- -2359548, -898185, 125628, -1786706, -1831267, -639950, -1630477, -624918, 831613, 35970,
- 535797, -1220845, 1052804, -341987, -102542, 163746, -455267, -550293, 623307, 1481764,
- 587337, -428960, 439160, -567473, -480499, 81604, -836982, 49929, -427886, -784368,
- 237297, -65498, -221191, -275952, 478889, -135828, -157840, -71941, 377957, 91805,
- -195421, 12348, -105764, 139050, 81604, -137439, -261456, -46708, -16643, -341987,
- 18790, -282394, 117038, -52076, -60666, -12885, -48855, -162672, 38655, 24696,
- -39728, 96637, -10737, -227633, -46708, 70330,
- },
- {
- -33791192, 54325968, 22983980, -6052683, 1530082, -73014, 429497, -88047, -401043, 1341104,
- -1214402, 465467, -1567126, -1160715, -3731253, 3415573, 1465658, -740345, 973347, 959388,
- -12885, -1010928, -2605972, 793495, -490700, -1132261, 1117765, 908386, 2476586, -244813,
- 1005559, -800475, -1862405, -422517, 830539, -324807, 241055, 2093797, 757525, -908922,
- -684510, -1042066, 441845, 303332, -1181653, -165893, 638876, 148176, -846109, 30065,
- 336618, 295816, 266825, -367757, 350577, -1114544, -277562, 215285, -236760, -209917,
- 210990, 316754, -306016, -169651, -24696, -372052, -125091, -361314, -275952, -97174,
- -132607, 24696, -85899, -286689, 77846, 129923, 208306, -45634, 31675, -133144,
- 27380, 311385, 143881, 15032, 66572, 133681, 28454, -137439, 37581, 56908,
- 4295, 23085, 91805, 42950, 115427, 164283,
- },
- {
- 567473, 6530498, -1932198, -549219, 229781, 454193, 591632, -548145, -53150, -70330,
- -684510, 447213, 1173063, -1353452, -5346161, -5007932, -4958003, 3483755, -4731980, 4466229,
- 5770826, 4323959, 1420560, 699543, -1360968, -6903623, -5912560, 4242891, -1467805, -3062312,
- -807991, 626528, 2092723, 882079, -409096, -636192, -506806, 654983, 144418, 1421097,
- 99858, -188979, -1150514, 9664, -218506, -31675, -184147, -616865, 847719, 715649,
- -208306, -391916, 571768, -143345, -653372, -290447, -45097, 219043, 629213, 388695,
- 23622, -49392, -240518, -244813, -24159, 265751, -22012, -179852, -540092, -375273,
- 146029, 140123, 11274, -221191, -24159, -94489, -56908, 172336, 71404, 17180,
- -227633, 122407, 255551, 172872, 83752, -193274, 73551, -74088, -92879, 88047,
- -136365, -27380, -28991, -45097, 87510, 71941,
- },
- {
- -9579388, -148861952, -15701327, 4033511, 1365263, 1344325, 1458141, 1392643, 447750, -1015760,
- 736587, 1791538, 849330, 81068, -3383361, 114354, -59593, -2711198, -768262, 2204929,
- 3221, -736587, 777389, 986232, 1931125, 1753420, 77309, 677531, -763430, -125091,
- 617402, 1074279, 416075, 1019518, -427886, -750009, -651761, 866510, -1203128, -2032593,
- -4559108, -937914, 1250372, 330712, -751619, -396748, 215822, 307090, -1069447, -636729,
- -455267, -84826, 743029, 197569, 284005, 125628, -347892, -191126, -114354, 295816,
- -531502, -341987, -86973, 215822, 210453, 110059, -232465, -204548, 193810, 33823,
- 119185, -199716, -30602, -72478, 9664, 21475, 389231, 85899, 190052, -125628,
- -155156, 17717, -68719, 37044, -104153, -84289, -179852, -154619, -75699, -142271,
- 1611, 53150, 50466, 10737, -144418, 46708,
- },
- {
- -129923, 8642011, 97174, 1313186, 294205, -359167, -6190122, -1203128, 449898, 1192390,
- 939524, 603980, 1265942, -165356, 663036, -638340, -1727651, -2944737, -3988951, -4014184,
- 2196876, -2351495, -873489, -2643552, 1964411, 912681, 746787, -3665755, -68719, -1818919,
- -421444, 2000918, 442919, 514322, 562104, 1341640, 448824, -438624, -608275, 42413,
- 559420, -1017370, 417149, 365072, -40802, -428960, -611496, -55835, -998580, -3758,
- -293668, 51003, 42950, -17717, 222265, 252329, -279173, -35433, -37581, 64961,
- -526670, 1074, 260382, 487479, 24159, -62814, -51003, -284005, -263067, -189515,
- 88047, -62814, -114354, -1074, 105764, 161061, 65498, 104690, -122407, 158377,
- -3221, 67646, 95563, 56908, -74625, -15569, 186831, 161061, 84826, 24696,
- -38655, 127775, 35970, 105764, -6442, -3221,
- },
- {
- 2201708, -60583200, 1292785, 792958, -144418, -3277597, -3197603, -2837363, 1612223, -1605244,
- -576599, -1089848, 877247, -1670742, 2697240, -331786, 2865280, -503585, 479963, 290447,
- 3253975, 586263, -467078, 382252, -282931, -552440, 206695, -1798518, 3146064, 137976,
- -2097018, -565325, -324270, 845035, 998043, 768799, 1681480, -627065, -1123134, -363462,
- 743029, 309238, 642635, 781147, 533650, -432718, -975494, 239444, -39192, 223875,
- -184147, 352724, 324807, 20401, -296890, 379568, -570157, -214748, -88584, 320512,
- 847182, 627065, 28454, 675921, 113817, 41876, 213138, -110059, 93416, -90731,
- -6979, 117575, -27380, 124017, -37581, 23085, -334471, -192200, -11274, 49929,
- -35433, -18790, -13422, 77846, -11274, -93952, -104153, -130460, -177167, 59056,
- -13959, -90194, 7516, 29528, -11811, -8590,
- },
- {
- -710817, -950798, 2522220, -56908, 564788, 342524, 64961, 408559, -37581, 214212,
- -763967, 488553, 1526324, 13764296, 3051038, -3282429, -1678795, 666257, -112206, -1591285,
- -1044751, -44560, -801011, -5460514, -5293547, -832150, -3308199, -432718, 1311039, 890132,
- 558883, 367220, -563714, -719944, -481036, -672162, 1370095, 208306, 211527, -838056,
- -637803, 89121, 547071, 327491, 467615, 268435, -490700, 179315, -626528, -1376000,
- -245350, -341987, 312996, -382252, 97174, -237297, 383326, -15569, 169651, 204011,
- 39192, -225486, 165356, -12348, -63888, 62814, -236223, -186831, -504122, -51003,
- -54761, 22549, 76773, 101469, 23622, -41876, -169651, -92342, -57445, -95026,
- -61203, -125091, 170725, 124017, 11274, -32212, -141734, 92879, 68183, -93952,
- -38118, 27917, 5906, 37044, 41339, 7516,
- },
- {
- 1527398, -35050692, -12741020, -11918534, -4212826, -6601902, -2848100, 1197759, 899796, -2192581,
- 1728724, -2779918, -4533338, -14329622, -924492, 4356708, 1373316, -984084, 266288, -1120450,
- -603443, -839666, -333397, 239444, -1918777, -996969, -1431298, 1141924, -1569274, -2699924,
- -1461900, -644782, -1644436, -412854, 25770, 1651952, -248034, -455803, -316754, 705448,
- 1555852, 343597, 582505, 1293322, 406948, -372052, -158914, -66035, 747324, -425739,
- 888521, -1211181, -998043, 67646, 523449, 1112933, -527744, -377957, -473520, 525597,
- 58519, 73551, -115427, 162672, -338766, -130997, -260382, 51540, -183610, -105764,
- 41339, -11811, 85362, -186831, -31139, 125091, -38655, -153545, -123480, 141197,
- -217970, 74088, 176631, 31675, -115427, -53687, 77309, 17717, 161598, -32212,
- 132607, -4295, -110059, -201863, -158914, -81068,
- },
- {
- -209917, 925029, -1793149, -332860, -1221918, 1010391, 28991, 214212, 2060511, 523986,
- 3465502, 900333, 230318, -10336376, -33093260, 4918812, -681289, 416075, 338766, -2607582,
- -4486630, -1914482, 1781338, -779000, 583042, -710280, -3260954, -1618129, 318901, -1121523,
- -570157, 1317481, -724239, -1459215, -677531, -130460, 1315334, -839129, 704912, 846645,
- 249108, -721555, 7516, 600222, 452582, -557809, -341987, -206695, 42413, 290984,
- -268435, -64961, 372052, 235686, 626528, -246961, -592169, -74625, -188442, 288837,
- -365072, -46171, -9127, -280784, -140660, -52613, 117575, 30602, -94489, -389231,
- -14496, 311385, 26844, -79994, 79994, 302795, 242666, 139586, -197032, -143881,
- -63351, -93952, -48318, 50466, 87510, 175557, -12885, -57445, 26844, 62814,
- -39728, -166967, 20401, 85899, 31139, 3758,
- },
- {
- 9673877, -14192719, -1967095, -5236102, -1628866, -2088965, -155693, 1684701, 461172, -2274185,
- -1197759, -393526, -996432, 9296994, 10337449, 1156420, 1502702, 1868311, -577673, -926639,
- 1419487, 1242856, 992674, -2221035, 782758, 1117765, 183610, 551366, 433792, 686121,
- -907849, -566936, 2340757, 1145683, 729071, -71941, 1109712, 572304, 708670, 2229088,
- -1430224, 148713, 67646, 437013, 636192, -52613, -41876, 15569, 111669, -1001264,
- 34360, -940061, -1020592, -171799, 106300, -388695, 537, 494995, 105227, -289373,
- 3758, 284542, 259309, -148176, -101469, 71941, -1074, -423591, 28991, 167504,
- -251256, 454730, -23622, -24696, -86973, -253403, -50466, 376883, -87510, -29528,
- 234076, 77309, -162672, 0, -68183, 37581, -23085, -170725, -191126, -13422,
- 92879, 79994, 85362, -9664, -20401, 39192,
- },
- },
- {
- {
- 2061047, -35036732, -750009, 5891622, -1733556, 271120, 608812, -681289, 1061394, -656593,
- 292595, -52613, 301721, 1118839, 1894081, -3124589, 3509525, -3284039, 5734855, 1568737,
- 7436736, -2964064, 373662, -258235, 1463510, -2193118, -426276, 750009, -329102, -716186,
- 535260, -2232309, 1280437, 1802813, 2842732, 128312, -766652, -1256278, 307627, 30602,
- 443455, -318364, 92879, 67646, 91805, -695785, 56908, 326954, -48318, -239981,
- 162672, 399432, 727460, -402653, -471373, 101469, -149250, 228170, 222265, -358093,
- 408559, -267362, -2147, -43487, -73014, 8053, 95563, 277025, -134755, 47782,
- -27917, -171799, 134218, -163746, -16106, 64425, -26307, 148176, 39192, -82141,
- 3221, -135828, -28454, 22012, 1074, 16106, -94489, -18254, -74088, 45634,
- -53687, -17180, -45634, 0, 30065, 33286,
- },
- {
- -2238215, 78634944, -10209674, -2710124, -2490544, -715112, 1045288, -561567, 302258, -2235531,
- 911070, 646929, 948114, -1000727, 683974, -1211718, 117575, 2897492, -3206193, -318364,
- 970663, 7516, -9664, 1801202, 545461, -150324, -304943, 122943, -58519, -1233729,
- 432718, -259309, -736587, -337692, 1254131, -2799245, -25233, 331786, 179315, 452045,
- -448287, 1101122, 782758, 467078, -449898, 260382, -1091995, 699543, 40802, 19327,
- -439160, -70330, -577136, -131533, 737124, -312459, 61740, -178778, 175557, -252866,
- 93952, 128849, -93952, 52613, 49929, -126165, 263604, -197569, -5369, -3758,
- 351114, -20401, -13959, 63888, 118112, -318901, 55835, 48855, 67109, -138513,
- 45634, 103616, -90194, -96637, -80531, 268972, 46171, -103616, 51003, 70330,
- 31139, 29528, -61740, -5369, -59593, 47245,
- },
- {
- -7345468, 26218628, 6445672, -10573673, 3423626, 352187, -352724, -468688, -501974, 1877975,
- -1161789, 576063, 2498060, 799938, -2069101, 607201, 2207076, 704375, 198642, 561567,
- -1639067, 1440425, -2144799, 583579, -237834, -1589138, 693100, -33286, 236760, 122407,
- 1852205, 525060, 57445, 343061, 184147, 713501, 110059, 1769527, -67646, -21475,
- 203474, 549219, 214748, -281320, 112206, 315143, 84826, 220654, 151398, 394063,
- 83215, 133681, -316217, 332323, -12348, 134218, -564788, -98784, 162135, 54761,
- -185220, -455803, -146029, 289373, 97174, 203474, -417686, 85899, 11811, -238908,
- 126702, -175020, 121870, 2147, 16643, -31675, 173409, -94489, 33823, -26307,
- 11811, -117038, -106837, -15032, 8053, -123480, 55835, 63888, 16643, -2147,
- -103079, -23622, -38655, 24696, 53687, -64425,
- },
- {
- 573915, 2941516, -170188, -986232, -85362, -38655, 35970, 214212, -1032403, 445066,
- 781147, 140123, 866510, -3202972, 539555, -508417, 900333, 2663954, -4980015, 2225330,
- -861678, -1565516, 3893925, 190052, 1470489, 605590, 1410360, -351650, 319438, -1358820,
- -751082, 570694, 137976, 346819, 501437, -516470, 467615, 337692, -435402, -348966,
- -273804, -369904, 716723, -234076, -366146, 265214, -443455, -2147, 17180, -249645,
- -219580, -50466, -248571, -45634, -219580, 208843, 179852, -145492, -53687, 1074,
- 31139, -162135, 34360, 102542, -69256, -20401, 41339, -24696, 18254, -21475,
- 123480, -61740, 374199, -164819, 12885, -18790, -55835, -34897, 14496, -148176,
- 88584, -140123, 63888, -83215, -62277, 86436, 20401, -70330, -33286, 19864,
- 16643, -21475, -45634, 46171, -32212, -13422,
- },
- {
- 20318416, -3511136, -4495220, -3419868, 453656, 889595, -89121, 1240172, -563714, 329102,
- -3513820, 2049236, -261456, -2057289, -1789928, 3442416, -339839, -7762080, -3282429, 2690260,
- -121333, 484794, -182536, 909459, 909996, 1265942, -110059, 1766305, -1005022, -411780,
- 642635, -418222, 1283658, 1247688, -777389, -197569, 176631, -323196, 38655, -218506,
- 147640, -165893, -79457, 124017, 237297, -158914, 425739, -312459, -323196, 404801,
- -103079, -909996, 906238, 591095, -223875, -234613, 251792, 526670, -439160, 124017,
- 101469, 90194, -168577, -156229, -19327, -61203, -129386, 123480, -30602, -59593,
- 39192, 17180, 120796, -66572, 4832, 31675, 56371, 87510, 2684, -34360,
- -18254, -115964, -10201, 48318, 39192, 10737, 77309, 50466, 88047, 19327,
- -76773, 43487, -21475, 16643, -22549, -47245,
- },
- {
- 131533, 2151242, 1071058, -681826, -97174, 227633, -431644, -205622, -482110, 547608,
- -285615, 32749, -484794, 2968896, -1343251, 2093797, 1418950, 2194192, -2952790, -5130876,
- -161061, 649614, -1440425, 88047, 1171452, -2171106, 2448668, -2309082, -1127429, 41339,
- -549756, -595390, 673773, 656056, -601295, 463320, -791348, -906238, 245887, -163209,
- 246424, -850940, 822486, -399969, 404264, 425202, -415001, -472983, -176631, 498753,
- 36507, -352724, 191663, -272730, -284005, 620086, -522912, 66572, -45097, -416075,
- 270046, -397284, 253403, -57445, 268435, -77309, 27917, 8590, 168577, 136365,
- -89121, 89121, -142271, -5369, -212601, -49392, -12348, -74625, 147640, -194347,
- 23622, -60666, 132607, 537, -20401, 32212, 157303, -59593, 30602, -27380,
- -44560, 28991, -6442, -48855, -5369, 35970,
- },
- {
- 14834817, 76194864, -3687766, -2206540, 685047, -509491, -32212, 511638, -170725, 682363,
- -1032403, 318364, -1158031, 1065689, -1549410, 1243393, -569083, -267362, 734439, 271120,
- -118648, -431644, -871342, 792421, -53150, -107374, -73551, -749472, 322123, -510564,
- 443992, -1325534, 380105, 461172, 542777, -918049, -889058, 472446, 78920, -619012,
- -568546, 583042, 895501, -476205, -229244, 28991, 6979, 271657, 133681, 242666,
- 222801, -339839, 156766, 153545, -45097, -374199, 178778, -12348, -45097, -211527,
- -267362, 165356, -190052, -96100, 98784, -228170, 110059, -37044, 90194, 47782,
- -71404, 42950, -45634, -156229, 34360, -90194, -4832, -18790, 69256, -537,
- 103616, 35970, -33823, -52076, 116501, -118112, -56371, 10201, 103616, 48855,
- -77846, 13959, 19327, 26307, 30065, 55835,
- },
- {
- -439160, 175020, -1330366, 829466, 1611, 249645, 315680, -455803, 320512, 17180,
- -531502, -701690, -250719, 275415, -1881196, -1604707, -3340411, 3758633, -854699, 1896228,
- 1479616, -468151, 1825361, 1716376, 860604, 1146219, -2116345, 4907537, -767725, 708670,
- 916439, -602906, 11811, 873489, -643171, 1073205, -282931, 309775, -755914, 532576,
- -195958, 221191, -399432, 161598, 272730, -337692, -55298, 93952, 351114, -150324,
- 57445, -329639, 282394, -377420, 188979, 162135, -272194, -23622, 186831, -65498,
- -217433, -133144, 110059, 264141, 537, 64425, -282394, 127775, 44023, 155156,
- 15032, -120796, -58519, -199179, 37044, 153008, -168577, 48855, -41339, 34360,
- -114890, 7516, 41339, -37044, 30602, -125628, 51003, -25233, -68719, 1074,
- -42950, -22549, 26844, -6442, 33823, 59056,
- },
- {
- 14579803, -84888416, 740882, 33823, -1949915, -215285, -711354, 445603, -818728, -1517197,
- 315143, 1685238, 10201, 1605781, 564251, -89121, 2658585, 430570, -1072668, 424665,
- -770947, -907849, 809064, 680215, 256087, 636729, -387621, 982474, 142271, 864362,
- -790811, 454193, 525597, -257698, -965831, -545998, -1080184, 1392643, 453119, -368830,
- -1197759, 1675037, 275415, -353798, 19327, 497679, 657667, 285615, -747861, 69793,
- 287763, 352724, 552440, -281857, 375273, 200790, -142808, 169651, 390305, 508417,
- -348429, -11274, -87510, 35970, 78920, 11274, -4832, 54224, -1611, 71941,
- 339302, 84289, -126702, -173409, 27917, 145492, 70330, -122943, 39192, 56908,
- -93952, 12885, -52076, 52076, -38118, 126702, -42950, -55298, -9127, -17717,
- 75699, 3221, 12885, 4832, -35433, -6442,
- },
- {
- 547608, 1746978, -4326106, -1527935, -2303713, 277562, -1923072, -221728, -472446, 1285806,
- 974958, 181462, -338229, -2557116, 1852742, -884226, -1484448, -1074279, -2532957, -2691334,
- 3506304, -2386928, -734976, -2097018, 1347546, -510027, 1043140, -1880659, 1123134, -884226,
- -459025, -645856, -360240, -674847, 245350, 376347, -1224066, 202937, -40802, -863288,
- 291521, -55298, 443455, -111132, -440771, -526670, -257698, 371515, -1222455, -277562,
- -355409, 275415, 193810, 306553, 527207, 468151, -252329, -95026, -121870, 194347,
- -132070, 29528, -32212, 200790, 100932, 18254, -140660, -127238, 97174, 177167,
- -2147, 58519, 99321, -81604, 25233, -15032, 3758, 62814, -27380, 172336,
- -30065, 49929, -49929, 88047, -39728, -46708, 48318, -5369, -2684, -96100,
- -39728, -30065, -59056, 56908, -50466, -30065,
- },
- {
- -1112397, -48859548, 1552631, -2484639, 1515587, -9127, 7166690, -847182, 1236414, -2699387,
- 529355, -1201517, -303332, -1319092, 1836099, 235149, 30602, -3490735, 157303, -125628,
- 1875827, -640487, -361851, 310848, -3221, 114890, 916439, -2068564, 1720671, -190052,
- -168041, 1852205, 521302, 103616, -415538, 201327, 340913, -395137, 927176, -578210,
- 148713, 115427, 483184, 862215, 879395, 528818, -394063, 331786, -125628, 153008,
- -292058, 183073, 301721, 189515, -492311, 388158, -137439, -35433, -39728, 63888,
- 165356, 78383, -433255, 208843, -214212, -4295, 177704, -10201, 16106, -125628,
- -81068, 26307, 37044, -19864, -104153, 50466, -150861, 95563, -63888, 36507,
- -17717, 21475, 78383, -19327, -19327, -109522, -9127, -50466, -57445, 110059,
- 4832, -5369, 25233, 24159, -42413, 25233,
- },
- {
- 749472, -3396246, -244276, 1906429, 165356, 52613, 858993, 435939, 212064, -21475,
- -1524713, -541703, -5189931, 3709778, 3783866, -444529, 106300, -515396, 887448, -184147,
- -1184337, -544387, -358630, -423591, -1352378, 355409, 590021, 1305670, 1761474, -81604,
- 1044214, 817654, 946503, -786516, -169114, -986232, 274878, -972273, 278099, -249645,
- 259846, -133144, -196495, 145492, -144955, 38118, 309238, 331786, 113280, 37044,
- 351650, -130460, -22549, -573915, 144955, -190052, 380641, 129386, 285078, 12885,
- -209917, 192737, 91268, 18790, -167504, 75162, -23085, -20401, -38655, 84289,
- 18254, 100932, 62814, -61203, 7516, 87510, -89657, 73014, -36507, -76773,
- -45097, -127238, 110595, 41876, -7516, 97174, -30065, 96100, -8053, -102542,
- -1074, -23622, -19864, 77309, -6442, -16106,
- },
- {
- 2715493, -17939542, 6050535, -1455994, -294742, -2493766, -67646, 1114544, 992674, -3321084,
- 1104880, -90731, 3999152, -715112, -830539, 1248225, 1204738, -673773, 1342714, -883153,
- 1275068, -33823, 392990, 1139777, -1069984, -1169305, 45097, 1626182, -1163936, -781684,
- -1407676, 520765, -702227, -986232, -682900, 1177358, 101469, -617938, -705448, -350040,
- 1317481, 871878, -832687, -312459, -16106, -25770, -365072, 132070, 447750, -133681,
- 542777, -625455, 74088, -120259, 41876, 160524, 19864, 494995, 83215, 339302,
- -30602, 71404, -319975, -160524, -10201, -71404, -233539, 310848, -198105, -57982,
- 229781, -32212, -45097, -243739, -21475, 105227, 135291, -74625, -59056, 78920,
- -24159, 105764, -29528, -39728, -59593, 92879, 74088, -103079, 51003, -68183,
- 27917, -47245, -64961, -31139, -41876, 10201,
- },
- {
- 133144, 1249836, -2649458, 359704, -350040, 590021, 114890, -267899, 1273458, -69256,
- 1750736, -529355, -1857037, 14420353, 4922033, 2340220, -5509906, -127775, 213138, -588947,
- -3490198, -419833, 1058710, -643708, 488553, -388695, -38655, 625455, 2674154, 34360,
- -778463, 601295, -586800, -586263, 421981, 132070, 1173600, -1264868, 459025, 446677,
- 221728, -405874, 338766, -69256, 215285, 416075, 431644, 200790, -111132, 306016,
- -236223, 59593, -28991, 172872, 779000, -228170, -399432, 204548, -278636, 316754,
- -603443, -120796, -49392, 2147, 66572, 148176, 220654, -94489, -1074, -97711,
- 31139, 80531, 63888, 49392, -207769, -18254, 304943, 54224, 76773, 23085,
- -140123, -537, -66035, 11274, 26307, 101469, -11274, -101469, 57445, -2684,
- -64961, -97711, 84289, 26307, -45634, 3758,
- },
- {
- -2495913, -25414396, 3752728, -2856690, -2623688, -1075889, 2497524, -1347546, -1189169, -393526,
- 146029, -635655, -1072668, -1631014, -9291625, 2435783, 3083787, 115964, -1317481, -914828,
- 918586, 212601, 674310, -1629403, 1411971, 430570, -571231, -1040993, -1245541, 388158,
- -415538, -1042603, 181462, 300111, 228170, -892816, 312996, -265751, -227096, 745177,
- -1755031, -63351, -205622, 159988, 586800, 649077, 162672, -427349, -119185, -395674,
- 11811, -464930, 123480, 936840, 120796, -173409, 79994, -89121, -82678, -157303,
- 30065, 61740, 86973, 63888, 13959, 46171, -23085, -312996, -64425, 141734,
- -187368, 287226, -222265, -55298, -7516, -58519, 6442, 120259, 71941, 18254,
- 20401, 33823, -42413, 17180, -79457, 31139, 9664, -153008, 3758, 63351,
- -3221, 22549, 44560, -30065, -26844, -1611,
- },
- },
- {
- {
- -934692, -24043764, -231391, 1711545, 957778, 547608, -347355, -342524, -88047, 1045825,
- -450972, -640487, 1427003, 149250, 459025, -1371705, -1221918, 985695, 3476776, 3267933,
- 2973728, 497679, 1156957, 1640141, 611496, 345745, -667867, 140660, 276489, -1182190,
- -744103, 197032, 2108292, -409633, 1305670, -363998, -361314, -1974611, 375810, 79457,
- 420907, 216896, -75699, -395137, 287226, -23622, -297427, -10201, 0, -447213,
- 501437, 674847, 33823, -46171, -259846, -67646, -246424, 22012, 41339, 99858,
- 20938, 97711, 99858, -111132, 13959, 100395, 32749, 60130, -20401, 183073,
- -93952, -128849, -1074, -121333, -22012, 10737, 31139, 36507, 49392, -31139,
- -77309, -44560, 24159, 145492, 63351, -73551, -83215, -84289, 15569, -40265,
- -43487, 39728, -53687, -32749, -21475, -16643,
- },
- {
- 3854196, 50731080, 7681549, -7420630, -2059974, -631360, -60130, -985158, -1024887, -707596,
- -1125818, 1152662, 392453, -327491, 288837, -2106682, -1056025, -484258, 3837017, -905164,
- 543313, 102542, -573378, 528281, 1211718, 176094, -468688, -489626, -46708, -324270,
- -193810, 99858, -118648, -578747, -553514, -931471, 931471, -818191, -951335, -9127,
- 194347, 518080, 1472637, 180926, 52613, -140123, -63888, 51540, -377957, -12885,
- -204011, -227633, -51003, 160524, 361851, -42950, -251792, 318364, -75699, -136365,
- 301185, 25770, 17717, -38118, 67646, -100395, 3758, 107374, -29528, 106837,
- 213138, -51003, 32749, 7516, -82678, -118648, 29528, 70330, -103079, -64961,
- 81068, 51540, -76236, -93416, 77309, 85362, -27917, 65498, -3221, 88047,
- 25233, -61740, 39192, -28454, -537, 24696,
- },
- {
- 7030862, 24692304, -6201396, 2749316, -1620813, 628676, -418222, -265751, -508417, -13422,
- -741956, 540629, 2193655, -78920, 549756, -396211, 1270774, -423054, 672699, 797790,
- -2404645, 22012, -918586, -661962, -171799, -288837, 770410, 77846, -121870, -195958,
- 1359357, 340913, 1680406, 223338, 1322850, -546535, 1294933, 744103, -157303, -142808,
- -195958, 783295, 239444, 54761, 358630, -366683, 465467, 17717, 223875, 549756,
- 108985, -91805, 230854, -120796, -56371, 248034, -256087, -185757, 173409, -74625,
- -49392, -19327, 35433, 155693, 56908, 104153, -66572, 20401, 22549, 30602,
- 27380, -142271, -17717, 160524, 64961, -9127, 23622, -8590, -44560, -120259,
- 6979, -15569, -90194, -11811, 21475, -71941, -15032, -3221, -20938, 8590,
- -62814, -30602, 39728, 46171, -20938, -9127,
- },
- {
- -419296, 2842195, 674310, -381178, 23622, -349503, -152471, -25233, -321586, -11274,
- 705448, -302258, 1082332, 1062468, -5510980, -1090385, 2418067, -215285, -2596845, 293668,
- 520228, -2036888, 1780264, 2263448, 822486, -73551, -207232, -71404, 280247, -1883343,
- -825707, 1080184, 525060, 222265, -431107, -262530, 1152662, 38655, -624381, -586800,
- -6442, 321586, 200790, -206158, -643171, -123480, 180389, -193274, -179315, 25233,
- 16106, -232465, 24159, 148713, 80531, -22012, 108448, -318901, 129386, -70867,
- -217433, 33823, 174483, 25233, -23085, 46708, 24696, 51003, -21475, 64425,
- -124554, -59056, 23085, 101469, 25770, -53150, 19327, 64425, 28454, -51540,
- -44560, -3221, 61740, -63351, 15032, 12885, -20938, 11274, 47245, 39192,
- -30065, 15569, 66035, 55298, -38655, 34360,
- },
- {
- -9651328, 33630668, 1758789, -3669513, 636729, 347892, 613107, 71941, 289373, -489089,
- -235686, -235149, -445603, -2507724, -601295, 3220689, -748398, -6100464, -1497333, 1246077,
- 406411, 284542, 97174, 111669, 745177, 659278, 1407139, 714038, -1276142, -707059,
- -644782, 416612, 936840, 1502165, -568009, -337692, 95563, -1252520, 101469, 54761,
- 1074, 169651, -917512, 635118, 80531, -160524, 386547, 237834, -544924, 778463,
- -47245, -176094, 377957, 468151, -233539, 37581, 205622, -130997, -291521, 92342,
- 1074, 143345, -132070, -176094, 24159, -46708, -86436, 170188, -82141, 22012,
- 28991, -46171, -105764, 13422, 53150, 21475, 75699, 169114, -1074, -52076,
- -7516, -33286, 26307, 22012, -101469, 40265, 18254, 46708, 66572, -40802,
- 19864, -70867, -75162, -537, -66035, -10201,
- },
- {
- -392453, 1438814, 2433636, 216359, -302795, -82678, -243203, -15032, -489626, 56371,
- -537, -126165, -101469, 528281, -1304060, 1399086, 886911, 1523103, 2768643, -6198712,
- -1198833, -944356, -617402, -462246, 875100, -2730526, 1899986, -2814814, -686658, -222265,
- 668941, -17717, 330712, 841814, 3758, 11811, -78920, -408559, 365609, -256087,
- 258235, 201863, 31675, -200253, 192737, 267899, -295816, -744640, 27380, -49929,
- 220117, -25233, -408559, 120259, -6979, 301185, -125628, -165893, 27380, -142271,
- -109522, 10737, 49929, 14496, 135828, 31675, 3221, 54761, 8590, -11274,
- 51003, 88584, 58519, 13422, -235686, -34897, 209380, 54224, 76236, -64961,
- -103079, 133144, -13422, -31675, 15569, 53150, 119722, -12348, 6442, -32749,
- -39728, -49929, 30602, 62277, 4295, -49929,
- },
- {
- 2265059, 81658600, 2830920, -273804, 559956, -89657, -150324, 635118, 118648, -1270237,
- -270583, 340376, 711891, -180389, 183073, -733366, -474594, 489089, 100932, -567473,
- -690953, -346819, 519154, -141197, 142808, -75162, 80531, -1006633, -645319, -551366,
- 154619, -83752, 98247, 625992, -371515, -941672, 317828, -223875, -837519, 144955,
- -302795, 1066226, -238908, -338766, 307627, -261456, 124017, -110059, 109522, 192200,
- 102542, -491774, -315680, 354335, 114890, 97174, -69793, -61203, 292595, 23622,
- -394600, 52076, 44023, -179315, -37044, -48318, 150861, 104153, 25233, 50466,
- -48318, -183073, 136902, -6442, -2147, -88584, -2684, 100395, -61203, 117575,
- 93952, -78383, 48318, 8590, -65498, -109522, -38655, 105227, 59593, 537,
- -19327, 55835, -15032, -12885, 16106, 19327,
- },
- {
- -375810, -2487860, 2430415, -339302, 450972, 1074, -40265, 166967, -103616, 190052,
- -630286, -783295, -331249, -425739, -901943, -2212445, 346819, -899259, 2117956, 316217,
- -216359, -1581622, 1208496, 821413, -612570, 2367601, 652298, 2363306, -130997, 1106491,
- -259846, -143345, -232465, -42413, -564788, 1173600, -89657, -111669, 141734, 343597,
- -34897, -248034, -3758, 10737, 119722, -192200, 250182, 224412, -341987, 30602,
- 424128, -319975, -125091, 131533, 612033, 132070, -243203, -78920, -194884, 89657,
- -27917, 2147, 339839, 324807, -40802, -63888, -229781, 113280, 206695, 195421,
- -20401, -95026, -245887, -30602, 166430, 65498, -49929, 86436, 15032, 17180,
- 11274, -142808, -1074, -90731, 11811, -44560, 25233, 12348, -10737, -23622,
- 41339, -27917, -9127, 8590, -15032, 39192,
- },
- {
- -14398341, -38281044, -4439923, -2147484, -367220, 3758, -755914, -658741, -1401233, 458488,
- 34897, -766115, 785979, 484794, 867047, 426276, 2279017, 1165010, -369367, -1036161,
- -789200, -337692, 292058, 338229, 452045, 293132, -403190, 1045288, 1369021, 605590,
- -788127, 362925, 288837, -539555, -1216013, 64425, -1083942, 1206886, 287226, 615791,
- -81604, 1428077, 88047, 35970, 234613, 816044, 185220, -404264, 117038, -17717,
- 645856, 178241, -99321, 401579, -53150, 186294, 10737, 175020, 587337, 162135,
- -22012, 127238, -155693, 59056, -210990, -153545, 64961, 276489, -151398, 170725,
- 136902, 103616, -44560, -104153, 68183, 133144, -201327, 110059, -101469, 76236,
- 34897, -102005, -86973, -62277, 4832, 39192, -24159, 35433, 59593, 60130,
- 20938, -25770, -34360, 2684, 15032, -16643,
- },
- {
- -621697, -70867, 2097018, -7533910, -472446, -219043, 1979443, -509491, -309238, 696858,
- 1666984, -749472, -932545, -51540, 2145336, -2594697, -1689533, -1111323, -1814087, -577673,
- 462246, -268435, -350577, -248034, 704912, -222801, -475131, 575526, 372052, -213675,
- -659278, -998580, -496606, -210453, -68719, 386010, -607738, 555661, 259309, -378494,
- -100932, 858457, -4832, -370441, -63351, -426812, 115964, -200253, -644245, -394600,
- 157840, 120259, 518617, 270046, 142808, -22012, 71941, 21475, -70330, 198642,
- 156766, 5906, -186294, -124554, -18254, -136365, -32212, 125091, 277562, 188979,
- 11811, 123480, -55298, 63351, -76236, -79457, -53687, -1611, 14496, 33286,
- -77309, 38655, 30065, 39192, 52076, 12885, -48318, -23085, -44023, -31139,
- 31675, -62814, -19327, 20401, 3221, 44560,
- },
- {
- -944893, -41736880, -8497593, 775778, 1633161, 1294933, 6903623, -2070711, -183073, -1315334,
- 275415, -319975, -970663, 738734, -1189706, -201863, -381715, -1611150, 1097364, 666794,
- 139050, -562641, 361851, 293668, -124017, -3221, 523449, -638876, 341450, 147103,
- 296353, 2101850, 737124, -756988, -650151, 856846, -861678, 13422, 1221381, 201327,
- 440234, 163209, 321586, 689342, 661425, 463320, -44560, 274341, 485331, -183073,
- 59593, 105764, 545998, -165893, -192200, -220117, -83215, 70867, 241592, 89657,
- -241592, 10201, -183073, -285078, 0, 13959, 19864, 29528, -103079, -70867,
- -76236, 6442, 32212, 72478, 9127, 61203, 36507, -95563, -46708, -3221,
- -53687, 122407, 16643, -38655, -8053, -1611, 28991, 0, 32212, -7516,
- 26307, 42950, -31139, -18254, 537, 45097,
- },
- {
- -575526, -3608310, 1736777, 1779190, -994285, 483184, 688269, -205622, 470299, -373125,
- -1245004, -1477469, -479963, -3882651, 2180770, 2276333, 657667, 155693, 411780, 1470489,
- -1560147, -3040837, -572304, 1369558, 1338956, -883153, 1105417, 597537, 1637456, 544387,
- 1822677, -380641, 95026, 238371, -310848, -328028, -655519, -161598, 391916, -8053,
- 302795, -433792, -400506, 522375, -148176, 195421, 310848, 191126, 281857, 574452,
- 121870, -176631, -63888, -142808, 150324, -185220, -106837, 31139, 134755, -207232,
- -2684, 155693, -31139, -66572, -236760, 136365, 42950, 13959, 135291, 17180,
- 172872, 92342, -52076, -22012, 48855, 104153, 132607, 44023, -78920, -71941,
- -52076, -35433, -55298, -52613, 12885, 14496, -40802, -16643, -5369, -40265,
- -16643, 6442, 11811, 17180, -30065, 26844,
- },
- {
- -3145527, -11296838, 5266704, 5399848, -2041720, 522912, 1471563, 1081795, -819265, -1252520,
- -199179, 1306207, -1961190, 5887864, 1920924, -1240172, 210990, 411243, 461709, 650151,
- 1214402, 348966, 619549, 1049046, -404264, -370441, 248034, 552977, -637803, -321049,
- -363998, 133144, -206695, -967978, -283468, 587874, 496069, -727460, -505196, 472983,
- 238908, 44560, -236223, -775778, -437550, -373662, -40802, -351114, -215822, 45097,
- 256087, 112743, 133144, 90731, 142271, 126165, 335007, 292595, 94489, 15032,
- 279710, -256087, -198642, -159451, 18790, 32749, -216359, -16643, -12348, 154082,
- 33286, -161061, 53150, -129923, -1611, 45097, 93952, 32212, -60130, 20938,
- 28991, 23085, -23085, -20401, 9664, 87510, -162672, -65498, -80531, -59593,
- -63888, -32212, 31139, 13959, 56908, 44560,
- },
- {
- -57445, -1005559, -311385, 9664, 172336, 359167, 833224, -13422, 709743, -230318,
- 761820, -130460, -2713883, 2672544, 29016262, -73551, -4534949, -1241782, 365609, 2869038,
- -2988760, -1271310, -1518271, 1864553, 740345, -974958, 1028645, 1398549, 1711008, 635118,
- -1427540, -159451, -414464, -427886, 207232, -275952, 660351, -762357, 253940, -106837,
- 227633, 307627, 343061, -158914, -120259, 328028, 246961, 446140, 266288, 30602,
- -86973, 420907, -115427, -40265, 352187, -186294, -206158, 163746, 27380, -235149,
- 26307, 45097, -181999, -24696, 115427, 151398, 10737, -38118, 27917, 161598,
- -127775, -79457, 26844, 103616, -127775, 537, 163209, -42950, 111132, 40802,
- 14496, 90731, -64961, -63351, -3221, -22012, -69793, -61203, 78920, -67109,
- 28991, 15032, 35970, -18254, 20938, 2684,
- },
- {
- -2558190, -20994874, -4712116, 2462090, -1457068, 1780264, 838592, -1673964, -920197, 383863,
- 627065, -285078, 602369, -3765076, -6291590, 3503620, 2058363, -1183800, -1022202, 425739,
- -487479, 343061, -478889, 587874, 551366, -549219, -117575, -518080, -578210, -598611,
- -760209, 290447, -772557, 362925, -874026, -631360, -405874, -92342, 482110, -488016,
- -82678, -164819, -297963, 4295, 268972, 524523, 10201, -468688, -194884, 202400,
- -396748, 45097, 519154, 952946, -22012, 285078, -248034, -262530, -130460, -51540,
- -22549, -103616, -41876, 5369, 175020, -227096, -122407, 1611, -109522, -32212,
- 47782, -134755, -235149, 168041, 33823, 25233, 0, -57982, 204548, -23085,
- -135828, 90731, 85362, -52613, 9127, 28991, 17717, -61740, 64961, 15569,
- -44560, 6442, 16106, -57982, -4295, 10737,
- },
- },
- {
- {
- -420907, -13728863, 4188130, -1656247, 260919, -64425, -547608, 235149, -324270, 432181,
- -1810329, -841814, -1306744, -2453500, 2128693, -2066416, -2739652, 959925, 251792, 1389959,
- 1435056, -152471, 180926, 117038, -542240, 855235, 120259, -352724, -373125, -1207423,
- -825707, -292058, 17717, -1010928, 286152, -452045, 161598, -1850057, 595390, -125628,
- 133681, -100932, -257698, -148713, 600759, 198105, -307090, -69793, 104690, -370441,
- 40265, 115964, -221728, 265214, -19864, -53150, -222265, -107911, 249108, 178241,
- 23622, 239444, 83752, -118112, 38118, -9127, -220117, -39728, -55298, 7516,
- -125628, -39728, 37581, -62277, 62814, -28991, -26844, -23085, 17180, -47245,
- -39728, 54224, 81604, 115964, 27917, -104690, -44023, -42413, 63888, -41876,
- 50466, 29528, 26844, -12885, -43487, 6442,
- },
- {
- -3755949, 30678414, 3688840, -3474629, 730144, 422517, 31139, -164819, 444529, 765041,
- -100395, 1169305, -296890, -545461, 473520, -1321776, 1197222, -462783, 3106335, -1211718,
- -258235, -39192, -638340, 127238, 758062, -40802, -88047, -169651, 598074, 807991,
- -229244, -258772, 509491, 267362, -247497, -622233, 462783, -367757, -492311, -122943,
- 750009, 379568, 408559, -69793, 179852, -260919, 266288, -398895, -482110, 74088,
- -39728, -13422, 178241, 150324, 137439, -194884, -52613, 272730, -55835, 78383,
- 212601, -56371, 190589, 19327, 28454, -33286, -86973, 245887, -4295, -98784,
- 92879, -134218, -9664, 0, -116501, 52613, 40802, 16106, -53687, 19327,
- 24159, -51540, 25233, 18790, 29528, -60130, 45634, 34360, -19327, 45634,
- -17180, -63888, 62814, -42413, 47245, -15032,
- },
- {
- -4315369, 28423556, 10511932, 7090991, -328565, -93416, -161598, -115427, -209380, -408022,
- 32212, 54224, 867047, 359704, -491237, -2458869, -181462, -423054, -202937, 392453,
- -2805688, -658741, -461709, 375810, 509491, -313533, 502511, -48318, -639950, -244276,
- 710817, 132070, 836445, -767189, 1157494, -295279, 396748, -386010, -91268, -60130,
- -489626, 245887, 442382, 203474, 556198, 59593, 625992, -73014, 150324, 75699,
- -435939, -22012, 468151, -104690, -264141, 91268, 92342, -1611, 145492, -273804,
- 204011, 372588, -25770, -177167, -1074, 39728, -11274, -83752, -33286, 29528,
- -53687, -101469, 8053, 125628, 3758, -42950, -26307, 45097, -26844, -112743,
- -2147, 48855, -10737, -36507, 42950, 27380, -40265, -4295, -11811, -10737,
- 21475, -17717, 44560, 5369, -14496, 33286,
- },
- {
- 391379, 2714956, -2147, 35433, -2684, -246424, 59056, 365072, -30602, -314606,
- 75162, -724239, 521839, -126702, -4798552, -111669, 802085, 1584306, -1680406, -1547799,
- 819802, -948651, -111132, 381715, 11811, 183073, 930397, -392990, -183610, -777389,
- -125628, 994285, -4832, 428960, -736587, -390305, -161061, 74625, 273267, -320512,
- 307627, 210990, 137976, 22549, -319438, 168577, -64425, -333934, 83215, 85899,
- -62277, 48318, 80531, 82678, 179315, -321586, 55298, -77309, 163746, 60666,
- -122943, 137439, -34360, -93416, 1611, 19864, -20938, 119185, -61740, 65498,
- -184684, -53687, -68719, 72478, -88047, -31139, 110595, 50466, -60666, -20401,
- -46708, 38118, 46708, 17180, 1611, -27380, -35433, 41876, 61203, -5369,
- -12885, 32749, 32212, 6442, -11811, 42413,
- },
- {
- 590021, 42856796, -205622, -3670587, 912144, -253940, -269509, -313533, -97174, -159988,
- 1919314, -656593, 750009, -178778, -242129, 1691143, 579821, -4343286, -852014, 981400,
- 616865, -178241, -1366337, -1117228, 366146, -314606, 821949, 237297, -731218, -6979,
- -332860, -436476, -268972, 690416, -60666, 694711, -22549, -466541, 411780, -81604,
- 109522, 235686, -370441, 406411, -253940, -116501, 60130, 248034, -248034, 581968,
- 129923, 116501, 18254, -130997, -401043, 281857, 81068, -413927, -250182, 138513,
- -42950, 106300, 62277, -150324, -71941, -3758, -183610, -15569, -150324, -23085,
- 15569, -107911, -118648, 145492, 60666, -56371, 31675, 5906, -24696, -53150,
- -13959, -28454, 31675, -46171, -102542, 47245, 537, -2684, -39192, -34897,
- 67109, -31675, -51540, 15569, 12348, 38655,
- },
- {
- -11274, -753230, -2086280, -590021, -104153, -12348, 75162, 222801, -253403, -234076,
- -102005, 118112, -239444, 1885491, 2019172, -1341104, -2610803, 202400, -1705639, -7166153,
- 2646237, -160524, 1494649, -1082332, 77846, -1749125, 1335735, -1105417, 718333, 609885,
- 1204202, -2684, -222801, 709743, 68183, -322123, 171262, 12885, 499827, -345208,
- 708133, 183610, 194884, 193810, 28991, 230318, 48318, -268972, 244813, 51003,
- 173409, -212601, -216359, 369904, 150324, -5369, -120259, -88047, 112206, 60130,
- -137439, 286689, -33286, -292595, -40802, 17717, 54224, 23622, -53150, -44023,
- 164819, 79994, 99321, 116501, 4295, -28991, 137439, 65498, -2147, -45634,
- -25770, 57445, -81068, -25233, 56371, -4295, 3221, -31139, 4832, -9127,
- -17180, -27917, 44023, 22549, -19327, -66035,
- },
- {
- -12330314, 62147104, 1928977, -1112397, -108985, -35970, -20938, -329102, -637266, -935229,
- -231391, 218506, 1196685, -1054951, -430570, -1235877, -89657, 434865, -391379, -248571,
- -204011, 150324, 298500, -337692, 30065, -176631, 387621, -1035624, -726923, -628139,
- 544924, 893890, 135291, 145492, -705448, -501437, 205085, 32749, -247497, 543850,
- -83752, 524523, -283468, 120259, 348966, -2147, -77309, 215285, 115964, -195958,
- -10201, -346819, -58519, 280784, 330176, 156766, -118112, 20938, 356482, 38655,
- -361851, 71404, 188979, -86973, -117575, -13422, 154619, 74088, 1074, -7516,
- -40265, -144955, 110595, 32212, 83752, -17717, -7516, 78383, -13959, 58519,
- -55835, -62814, 115427, -3758, -143345, 34360, 12885, 53687, -19327, -30065,
- 9664, 23085, 41339, -15032, 7516, 26844,
- },
- {
- 233539, -185757, 549219, -835371, 431644, -58519, 119185, 77309, -433255, 93416,
- -474057, -381178, -55835, -1516124, -1246077, -1114544, 1891933, -503585, 870268, -600222,
- 192200, 929324, 450972, -310848, -1098975, 1309965, -120259, -433255, -343061, 1014686,
- -360777, 667867, 287226, -382789, -551903, 460635, 207232, -61203, 105764, 238908,
- 67109, -179315, 149250, 115427, 54761, -157303, 307627, 81068, -527207, -154082,
- 177704, -103616, -325344, 118112, 309238, -142271, -179315, -82678, -222265, 470836,
- 213675, 210990, 301185, 168041, 12348, 96100, 8590, 30065, -1074, -16106,
- 86436, 66035, -72478, 38118, 41339, 2684, 78920, 42950, -20938, 20938,
- -35970, -118648, 38118, -22012, 64425, -32749, 67109, -17717, 12348, 37581,
- 30602, 41339, -8053, 1611, -12885, 12885,
- },
- {
- 11541114, -9109626, -4517769, 555661, -724239, -137976, -220117, -562104, -154619, 1038308,
- -415538, -1229971, 269509, 228707, 339839, 220654, 116501, -705448, -380641, -242129,
- -274341, -578210, 301721, 217433, 97711, 96100, 186831, 670015, 1103270, 427349,
- -667867, -418222, -210453, -11811, -440234, 856309, -28454, 530428, -1504849, -107374,
- 302258, 716723, -314606, 454193, -285615, 221728, -151934, -774168, 171262, -127238,
- 200790, -161598, -205085, 265751, -180926, 28991, -135828, -141734, 149787, -52076,
- 243203, 317291, -167504, 121333, -85899, 115427, 186294, 229244, -84826, -10737,
- -128849, 47782, 16643, -89657, 95563, -11274, -127238, 234613, 9127, -2684,
- 42413, -108985, -57982, -106300, -2684, -15569, -3221, 47782, 60666, 22549,
- -68183, -31139, -40802, 45097, -5369, 4832,
- },
- {
- 556735, 1262184, 4275640, -3441343, 1693291, 1751810, 2669859, -651224, -173409, -189515,
- 144418, -1204738, 1104344, 266288, 2174327, -1545115, -1376537, -286152, -1573032, -1038845,
- -266288, 939524, -194347, 159988, 647466, 121870, -125628, 513249, -476741, 501437,
- 57982, -281857, -361314, 275415, 554051, 809601, -164283, 629213, 183610, 34360,
- -229781, 272730, -154619, -136902, 395674, -499290, 241055, -168577, -237834, -137439,
- 376883, -7516, 161598, -226560, -269509, -302258, -83752, -9664, -37044, 67109,
- -5369, 151398, -16106, -35433, -33823, -134755, 64961, 205622, 144418, -36507,
- 26307, -22012, -159451, 92879, -89657, -6442, -97174, -24696, -23622, -28454,
- -70330, 18254, 47245, -14496, 52613, -15569, -30065, 39192, -21475, 46708,
- 11274, -537, 13959, 31675, 22012, 26307,
- },
- {
- 3155190, -30333206, 1511829, 3597035, 1007170, -2369211, -1609002, -2608119, 329102, 157303,
- 90731, 60666, -523986, 818191, -639950, -1076963, -1540820, -1394791, 772020, 179852,
- -230854, -11274, -244276, 168041, 162672, 130460, 590558, -329102, 433255, 266825,
- -309238, 666257, -266825, -512175, -206158, 234076, -699006, -412317, 108448, 352187,
- 307627, -382789, 118648, 76773, 135291, 14496, -424665, 155156, 488016, -224412,
- 141197, -5369, 274341, -246424, -53687, -402653, -25770, 284542, 179852, -76773,
- -328565, 55835, -6442, -104153, 218506, 37581, -3758, -73551, -103079, -11811,
- -18790, 24159, 84289, 102542, -56371, 22012, 57445, -134218, -28454, -15032,
- 49929, 92342, -53687, 75699, -16106, 54761, -2147, 30602, 25770, -34897,
- 39192, 16643, -67646, 5906, 39192, 17717,
- },
- {
- 370978, -4898410, -1399086, 818191, -22012, -99858, -89121, -375273, 302258, -213675,
- -581968, -801548, 1472100, -2479270, -1732482, 1553168, 580894, 159451, -569620, 476205,
- -142271, -1574642, -281857, 439160, 1147830, 281320, 107911, -1028645, -6979, 89121,
- 198642, -809064, -520228, 1060320, -312996, -17180, -228707, 461709, 208843, -20938,
- 125628, -203474, 63888, 306553, -252866, 266825, 107374, 105227, -48855, 286689,
- -27380, -95563, 221191, -537, 92879, -116501, -142808, 7516, 272730, -187368,
- 250719, 57982, -72478, -100932, -119185, 281320, 57445, 96637, 17180, -53150,
- 161598, 51003, -66572, -25770, -34897, 15032, 51540, -79994, -54224, -57982,
- -28991, 13422, -69256, -83215, 13422, -42950, -47782, -5906, 32212, -7516,
- -11811, 39192, 15032, -40802, -25770, 39192,
- },
- {
- 2363843, -8316131, -1479616, 721555, -1406065, 1833951, -466004, 232465, -580894, 260919,
- -480499, 587337, -746251, 4898947, 1037235, -1003412, 905164, -230854, -1263257, 1028108,
- 295279, -311385, -112743, 607201, -209380, 1194001, -171799, 38118, 406948, -13422,
- -301185, 115964, 814433, -73551, 158377, 570157, 557272, -352187, 83752, 305480,
- -501974, -282394, 380105, -142808, -82678, -283468, 200253, -515396, 30065, -221191,
- -66572, 70867, 117038, 351650, -44560, -35433, -104690, -40265, -20938, 63351,
- 170725, -212064, -17717, -42413, -63351, 39728, -97711, -57445, 151934, 144955,
- -124017, -70330, 151934, -82678, 12348, 49392, 56371, 91268, -6442, 29528,
- -89657, 24696, 82678, 5906, -53150, -46171, -179315, 20401, -40802, 6442,
- -9664, 1611, 70330, -28454, 42413, -4832,
- },
- {
- 283468, -759672, 609349, -257698, -221191, -273267, -46708, -402653, 231928, -1142461,
- 267362, -310848, -1400696, -6399502, 9696426, -2450279, -1628330, 4832, 1355062, 2818572,
- -1075352, 660351, -878321, 1395328, 220117, 312459, 1387274, 400506, -1388348, 502511,
- -297427, 230854, 322123, -162135, -397821, -549219, 52076, -548682, 401043, -355945,
- 594853, 144418, -250719, -258772, -215285, -194347, -45634, -70867, 43487, -244813,
- -37581, 277025, -184147, -83752, 156766, -216359, -12885, 267362, 246424, -132070,
- 266288, 22012, -88584, -57445, 64425, -105227, -92342, 51003, 47782, 115964,
- -96100, 50466, 42413, 77309, -35970, 74088, 1074, 40265, -29528, 1611,
- 74088, 5906, 24159, -32212, -57445, -24159, -18254, 45097, 27917, -53150,
- 59056, -23622, -40802, 5906, 27917, -33286,
- },
- {
- 4153770, -7581154, 144955, 4913443, -285615, 1046361, -1117765, -593242, 427349, 351114,
- 1406065, 205085, -202400, 1501091, 3253975, 2126546, -458488, -263067, -414464, -89121,
- -1355599, 908386, -248571, 685047, 382252, -741419, 849867, 1270237, 152471, -599148,
- -352724, 476205, -753230, 216896, -688269, 376883, 310848, 239981, 658204, 148713,
- 1169305, 192200, -332860, 208843, 256624, -16643, 208843, 185220, 173409, 336618,
- -319438, -46171, 139586, 245887, -238908, 113817, -170188, -127775, -329102, -51003,
- -2684, -215822, -104690, -16643, 179852, -216896, -16643, 60130, -39192, -4295,
- 45097, -42950, -42950, 86973, -30602, 15032, -25233, -31675, 97174, -93416,
- -51003, 93416, 30602, -12348, 48318, 49929, 15569, 21475, -4832, -15569,
- -6442, -1611, 18790, -8590, 8590, 4295,
- },
- },
- {
- {
- 716186, -4162360, -6356552, -1214939, 137439, -404801, -47245, 169651, -142808, -930397,
- -1529008, -766115, -1911261, -1285269, 1402844, -1446330, 170188, -1262184, -711891, 1624035,
- 984084, -709207, -1330903, -1134408, -696858, 688269, 1264868, -330712, -406948, -906238,
- -874563, -243203, -2035278, 488553, -142271, 248034, 56371, -950798, 876710, -609349,
- 234613, -620623, 207769, -311922, 521302, 255014, 83752, 319438, 123480, -279173,
- -357019, 106837, -149250, 63888, -59593, -77846, 16106, -71404, 490700, -68183,
- 27380, 11811, 17180, 11274, -15032, -158914, -151934, 5369, -115964, -99321,
- -136902, -10201, 42413, 18254, 13422, 41876, 3758, 13959, -58519, -34360,
- -26307, 63888, -10201, -14496, -38655, -34897, 45634, -24696, -1611, 23622,
- 69256, -11811, 19864, 24159, 4832, 40802,
- },
- {
- 2847563, 40094592, -9911174, -312459, 676457, 48855, 484794, 1220308, 879395, 707596,
- 677531, 202937, 151398, -381715, 249108, 765041, 1608465, 724239, -291521, -13422,
- -546535, 359704, -197569, -385473, 379031, 132607, 308164, 198105, 434865, 289910,
- 151398, -15032, 601832, 579284, -262530, -930934, 241055, 194884, 219043, 354872,
- 721555, 236760, -438087, -106300, 126702, -108985, 262530, -150861, -106837, -180389,
- 18254, 79457, -76236, -46708, 82678, -71941, 13422, -223338, 85362, 81068,
- -8590, -56908, 150324, -4832, 131533, 41339, 78383, 61740, -128849, -21475,
- 2147, -31139, 76773, -46708, -41876, 111132, -77846, 34360, 107374, -23622,
- -13422, -31139, 31675, 5906, -55298, 5369, 67646, -46171, 15032, -2684,
- 12348, -8590, -3758, -16643, 22012, -21475,
- },
- {
- 2377801, 41044320, -3331284, 3745212, -2715493, -81068, 159451, -121333, 155693, 14496,
- 421981, 366146, -488016, 974421, -545998, -1364189, -1617055, 342524, -185757, -784905,
- -335007, -642635, -214212, 278099, -41339, -625455, 354872, 528818, 110595, -355945,
- -833761, 874026, -285078, -72478, 867047, -44023, -136365, 214748, -418759, 85899,
- -399969, -55835, 765578, -179852, 161061, 655519, 621697, -122943, -39728, -265214,
- -197032, 224412, 290447, -264677, 248571, -297963, 26307, -104690, 23085, 2147,
- 100932, 100932, -28454, -178241, -129923, -6979, -122943, -95026, 2684, -74625,
- -130460, -33823, -8590, -35433, 60130, -52613, -24159, -1074, 80531, -26844,
- -17717, -21475, -1074, -45634, -537, 89121, -20938, 39192, 12348, 32749,
- 5906, -35970, -4832, -18790, -4832, 14496,
- },
- {
- -475131, 3075197, 625455, -15569, -265751, 114354, 41876, 240518, 153008, -180389,
- -51540, -224412, 289373, -1302449, 114354, -1439351, -500364, 1522566, -270583, -1465121,
- 914291, 523986, -478889, 306016, -503048, 64961, 2287070, -812286, -732829, 1190243,
- -435402, -62814, -17717, 490163, -469225, -61203, -673773, 257161, 166967, -158377,
- 297427, -103616, 299037, 199179, 48318, 113817, -510564, -126165, 4295, -172872,
- 71404, 144418, -180926, 0, 31139, -331786, 105227, 96637, -42413, 252866,
- 61203, -112206, -57982, -16106, -71941, -69256, 0, 81068, -108985, -30065,
- 8590, 59056, 39192, -135828, -537, -41876, 5369, -13422, -129923, 11811,
- 10201, -11811, -13959, 8590, -27380, 31139, -1611, -9127, -22549, -11811,
- 28991, -2684, -51003, -38118, 11811, -26844,
- },
- {
- 4916664, 33770256, 1356673, -2546379, 115964, -88047, -632434, -580894, 387084, 234613,
- 450972, -545461, 1287417, 313533, -63888, 803696, -1522566, -2695629, 483184, 439697,
- 812823, -88047, -858457, -577673, 378494, -263604, -61740, 419296, 235149, 11274,
- -56908, -486405, -307090, -106300, 360777, 1171989, -339839, 623844, 87510, -97711,
- 542240, -49392, 354872, -380641, 98247, -219580, -130460, -27917, 32749, 178241,
- 116501, 159988, -98784, -205085, 62814, 35433, -69793, -288300, 158914, -59056,
- -10201, 213138, 60666, -122943, -71941, -135828, -49392, -71404, -105764, -105764,
- 5906, -2147, 67109, 155156, -27380, -27917, -67646, -137976, 32212, -59056,
- -11811, -40265, -6442, -83215, 47782, 32749, -48318, 38655, -2684, -1611,
- 34897, 17717, 24696, 35433, 41876, 10201,
- },
- {
- 268435, -4611721, -535260, -356482, 44023, 105227, 71941, -20401, -237297, -275952,
- 190589, 95563, 62277, 1948305, 5995238, -3065533, -2234994, -695248, -447750, -4773856,
- -1451699, 757525, 747324, -1860795, 691490, 768799, -785979, 1314797, -620623, 440771,
- 631897, 559956, -278636, -227633, 183073, -135291, -304406, -79457, 277562, 76773,
- 64425, 193274, 392990, 352724, -232465, 96100, 178778, 193810, 281857, 144955,
- -169114, -209917, -61203, 375810, 93416, -155693, -62814, -28454, 89121, 67646,
- -111132, 224949, -82141, -207769, -91805, -83752, 92879, 59593, -20401, 54224,
- 140123, -22549, 94489, 68719, 35433, -89121, -40802, -51540, -16643, 35970,
- -8590, -46708, 12348, -37581, 52613, -1611, -20401, 3758, -42413, -18790,
- 50466, 23085, -10201, -40265, -41339, -12885,
- },
- {
- 13826037, 34382824, -5223217, -555125, 81068, -158377, 125091, -600222, -644782, 121333,
- -526670, 106837, 294205, -615791, -797253, -1037235, 502511, -524523, 76236, 283468,
- 604517, 208306, -389768, 274341, -234613, 117575, -145492, -793495, -145492, -183073,
- 570694, 358093, 156229, -211527, -557272, 88047, -272730, 255014, -194884, 400506,
- 297963, -80531, 173946, 287763, 26844, 96100, 206695, 541166, -176631, 19864,
- 74088, -103079, 301185, -37044, 247497, -10201, -210453, 142808, -39192, -99321,
- -100395, 24696, 49392, -13959, -25233, -22549, -127775, 121870, 62814, -129923,
- 41339, 88584, -67646, -37581, 22549, 37581, -10737, -6442, 49929, -39728,
- -37581, 5369, 16106, -63351, 13959, 26844, -9664, -6979, 12885, 16643,
- -38118, -1611, 18790, 27380, 47245, 44560,
- },
- {
- 332323, 739271, -2580739, 249108, 19864, 163746, 156229, 7516, -135291, -293668,
- 153008, -171262, 596464, 303869, 89657, -1800128, -526134, 930934, 164283, -435939,
- 2010045, 1086090, 488016, 832687, -81068, 584652, -1021129, -16643, -608812, 424128,
- 190052, 817654, 812286, -758599, 204011, -47782, 129386, -51003, -161598, 108985,
- 153008, 99321, -221728, 306016, 97174, -110595, -83752, -99321, 83752, -338766,
- -165893, -78383, -109522, -120259, -42413, -235149, -354335, -44560, 164819, 210453,
- 212601, 115964, 110595, 98247, 73014, 242666, 52076, -75699, -44560, -82678,
- 82141, 81604, 56908, -18790, -80531, -2684, 38118, -35433, -46708, -47245,
- -13959, 2684, 18790, 70330, 27917, -35970, 25233, -10737, 3221, 6979,
- -11811, 66035, -4295, 19327, 12348, 537,
- },
- {
- -7164543, 6222871, 5189394, 1023276, -1024350, -484258, 91805, 81068, 332323, -286689,
- 230854, 631360, 660351, -986769, 165356, 573915, -1457605, -152471, -112743, 49392,
- -367220, -259846, 243203, 154082, 423591, -313533, 245350, 532576, 914291, -428960,
- -191126, -450972, -102542, -185220, 411780, -316217, 916976, 484794, -1488743, -607738,
- 698469, -582505, -352187, 34897, -37581, -177167, -380641, -589484, 215822, 206158,
- -211527, -210453, 157303, -71941, -64961, -95026, -72478, -184147, -168041, 122943,
- 386010, 121333, -3758, 83752, 173946, 276489, 135291, 35433, -28991, -120796,
- -17717, 83752, -51003, -157840, -34897, 52613, 107911, 50466, 88047, -40802,
- 16643, -20938, -11811, -11274, 54761, 1611, -40802, 8590, 16106, -22549,
- -49929, -14496, 12885, 20401, -33823, 22549,
- },
- {
- -433792, 4466766, -1309965, 3266860, 507880, 140123, 891206, 573915, 202400, -284542,
- -1180042, 171799, 892816, 601832, 565862, -611496, -687732, -998580, -2317672, -1201517,
- 1031329, 470299, -563178, -215822, -42950, 336618, 353261, -430570, -596464, 641561,
- 117575, -150324, 220117, -435402, 468151, 1017370, -42950, -379568, 53687, -245887,
- -56371, -370441, -69256, 40265, 183610, -303869, -49929, -172872, 124017, -157303,
- 94489, -331786, 17180, -214748, -51540, -56371, -198105, 35433, -117038, -154082,
- -53150, 47782, 226560, 146029, 33823, 84289, -43487, 58519, -106300, -137976,
- 101469, -56908, -49392, -26307, -26844, 31139, -13959, 17717, -13422, 9127,
- 20938, 29528, -13959, -44560, 3221, -30602, 8590, 49929, 3758, 5906,
- -42413, 36507, -5369, -6442, -9127, -33286,
- },
- {
- -4305705, -21407190, 7158100, 1763621, 155156, 1628330, -8766565, 292058, -753230, 727460,
- 21475, -150861, -15569, -1216013, 1373316, -1360431, -1694902, -1450088, -558346, 636192,
- 338229, -69256, 3221, -248034, 205085, 205085, 71941, 141197, 227633, 61740,
- -634581, 38655, 78383, -273804, 41339, -379031, -97174, -532576, -537, -59593,
- -554588, -310311, 368830, -78920, 85362, -156229, -22012, -230854, 95563, 13422,
- 33286, 186831, -231928, -54224, 195958, -248571, 194347, 11811, -92879, -39728,
- -57445, 5369, 7516, 86436, 159988, 2684, 44560, -33286, -10201, -28454,
- -1611, 61740, 107911, -85362, -75699, -68719, -8590, -55298, 31139, -25770,
- 103616, -14496, 23085, 60130, -32212, -18254, -63351, 16643, -13422, 47245,
- 10737, -20401, -11811, 39728, 20401, -30065,
- },
- {
- -233002, -5669357, 492311, -368293, 367220, -294205, 125628, 71404, 79994, -56908,
- -531502, -574452, -1718524, 3309272, -3013457, 1103807, 1115618, -991601, -1386201, -306553,
- 889058, 695248, -789200, -389768, -316754, 1279900, 318901, -1424319, -228707, -46171,
- -965831, 396748, -270046, 995896, -285078, -73014, -158914, 294742, -297963, -163746,
- 110059, 226023, 5906, -41339, -46171, -28454, 335007, 154619, -359167, -103079,
- 110595, -37044, 157840, -109522, 105227, 130997, 18790, 310848, 191126, 68719,
- 147103, -89121, 101469, -26307, 139586, 110595, 59056, 46708, -28454, -6442,
- 34897, -4295, -48318, -59593, -84826, -71941, -68719, -116501, -4832, -6442,
- -20401, -22012, 10737, 8053, 23085, -16106, 46171, 51003, 17717, 6979,
- -24159, -6979, -2147, -5369, 17717, -36507,
- },
- {
- -1242856, -884763, -2866354, -3263638, 165356, -750009, -2830920, 731218, 796180, 318364,
- -819265, -56371, 2432025, 1014686, 88047, 510564, 1066226, -623307, -1097364, -283468,
- 278099, -128849, -246424, 41339, -400506, 586800, 163209, -57445, -455267, 161061,
- 57982, -139050, 271120, 456340, 261456, 361851, 55835, -69256, 374736, -46708,
- -200790, 171262, -188442, 713501, 71404, 119722, 92342, 150861, 131533, -270583,
- -119185, -49929, -274878, 173946, -198105, -98247, -59056, -41339, 116501, 57445,
- -103079, -10737, 101469, -156229, -31139, -43487, 79457, 17717, 108985, -9664,
- -40265, 91268, 39728, -9664, -73014, 105764, 40265, -10201, 62277, -34360,
- -35970, 86436, 62814, 23085, -128849, -86436, 33823, 75699, -1611, 33823,
- 10737, 27380, -15032, -45634, -24696, -70867,
- },
- {
- -450435, 1248225, 42950, -752156, 29528, -455803, -599148, -121870, -237297, -499827,
- -424665, -631360, 700080, -797253, -8633421, 286152, -163209, 638876, 724239, 790811,
- 304406, 189515, -260382, 770947, 285615, 913754, 458488, 57445, -2070174, 625455,
- 541703, 748935, -33823, 321049, -183610, -284542, -229781, 72478, -44023, 239444,
- 329102, -476741, -82141, -47245, -279173, -178241, 171799, -319975, -122407, -327491,
- 17180, -81604, -20938, 46171, 97174, -21475, 125628, 97711, 40802, 275952,
- -30065, -216359, 46171, -32749, -60666, -8590, 24159, -48855, -3221, 10737,
- -44560, 198642, 35433, 19327, -9664, 59056, 11811, 165356, -57445, -41339,
- -12348, -70330, 53150, 7516, 5906, 60130, 37581, 18254, -46171, 31139,
- -49929, -70330, -34897, 42950, -4832, -32749,
- },
- {
- -2711198, 4642323, 909996, 1167694, 592706, -1551557, -1099512, -473520, 508954, 824097,
- -195958, 1087164, -1190780, 380105, 6177774, 200790, -2452963, 1817308, -1389959, -359167,
- -294205, 571768, 292595, 73551, 461172, -36507, 1287417, 679679, -28991, -413927,
- -319438, -7516, -156766, -572841, 503048, 578210, 912681, 75162, 273804, 484794,
- 537945, 186831, -80531, 275415, 220117, 105227, 653372, 179852, 115964, 17180,
- -207232, -68719, -180926, -134218, -162135, -106300, 537, -75162, -247497, 38655,
- -70867, -48855, -31139, 127775, 71404, 32749, 16106, -22012, -44560, 52076,
- 0, 65498, 132070, -153008, -51003, -25770, 48318, 15032, -19864, -46708,
- 85899, -15032, 6442, 34897, 1074, 1611, 30065, -33286, -83752, 44023,
- 8053, 25233, 19327, 20401, 18790, -33286,
- },
- },
- {
- {
- -461172, 4959614, 3001645, 279710, -566399, -225486, 168577, 77846, 71404, -647466,
- 238908, 461709, 1111860, 762357, -945967, -769873, 2637110, -639413, -471910, 1320703,
- -73014, -1875290, -67109, -420907, -525060, 126702, 226023, -199716, 13959, -603980,
- -359704, 296890, -769336, 1080184, -37044, -186831, 122407, -943819, -112743, -650151,
- 264141, -303332, 818191, -213675, 314069, 217970, 198105, 316754, 284005, -105764,
- -443992, 96637, -125628, -218506, -8053, 74088, 54224, 34897, 159988, -232465,
- 4832, -184147, 70330, 121870, 25233, -55298, 56371, 84289, -125091, 66035,
- 6442, -10737, 44560, 57982, -31675, 30065, 13959, 6442, -16643, 36507,
- -67109, -30065, -71404, -30065, -13959, 57445, 64961, -18790, 2684, 54224,
- 1074, -19327, -19327, 42413, 32749, 27380,
- },
- {
- -3690988, 61022896, 9088688, -795643, 906775, -369904, 752156, 726923, -334471, -34360,
- 39728, -614717, 209917, 375810, 921271, 1669132, 987843, 586800, -350577, 96100,
- -224412, 242666, -108985, -431107, 34360, 186294, 255551, 178241, -252329, -207232,
- 709207, 292058, 552977, 585726, 1611, -569083, 547071, 221728, 276489, 211527,
- 211527, -9127, -265751, -139586, 74088, 3758, 86973, 279710, -31675, -335007,
- 158377, 93416, -138513, -45097, 111669, 16643, -133144, -209917, 68719, -106300,
- -127238, -69793, 52613, -49929, 152471, -79994, -40265, -86973, -48855, 122943,
- -9664, 16643, 12348, -40265, 75162, -3221, -63888, 38118, 69793, -32212,
- -26844, -5369, -4832, -47782, -33823, 86436, -9127, -23622, -11274, -16106,
- 46708, 20938, -12885, 8590, -9127, 0,
- },
- {
- -2154463, 44386340, 427886, 1009317, -1976222, 383326, 10737, 63351, 334471, 18790,
- -584652, -248571, -496069, 986232, -11274, -258772, -1457068, 238371, 175557, -13959,
- 1107028, -332323, -398358, -683974, -117575, -416075, 579821, 389231, 418759, -28991,
- -914291, -29528, -619549, -281857, -108985, 63888, 83215, 452045, 36507, 53687,
- -406411, 142271, 579284, -275952, -176094, 521839, 321586, -265751, -162135, -288837,
- 63351, 130997, 110059, -164283, 538482, -258772, -128312, 137976, 155693, 10201,
- -126165, -133681, 47245, 4832, -135291, -14496, -136365, 50466, -28454, -108448,
- -60666, 25770, 22012, -40802, 72478, -44023, 38118, -40802, 83215, -32749,
- -65498, -63351, 3221, 12885, -6442, 50466, -3221, 9664, -3221, 31675,
- -40265, -537, -9127, 5906, 8590, -8590,
- },
- {
- 406948, 2922725, -714038, -100932, -22012, 187368, -70330, -24696, 32212, -32212,
- 265214, 14496, 263604, 826244, 4883915, 253940, -402116, 1023813, 481036, -1008244,
- 452045, 143345, 560493, 1082869, 139586, 915365, 1878511, -210990, 155156, 1131724,
- -690416, -422517, -320512, 37581, -149250, 288837, 358093, 107374, -197569, -44560,
- -62277, -308164, 91805, 287226, 89657, -74088, -405874, 210453, 40265, -243203,
- -22012, -250719, -177704, -64961, -11811, -60130, 24159, -63351, 5906, 77309,
- -52076, -159451, -39728, -53687, -28454, -10201, -8590, -43487, -100395, 537,
- 113817, 45634, 35970, -103079, 140660, -12348, -51003, -1074, -32212, 25233,
- 52076, -26307, -3758, -28991, -12885, 38118, -9127, -23622, -55298, 23085,
- 38118, -35433, -43487, -7516, -8590, -33286,
- },
- {
- -6746857, 15927886, -1900523, -2294050, 293668, -3221, 52613, 75699, 660351, -366683,
- -1090922, -274878, 464393, -126165, -622770, 107911, 192737, -888521, -103616, 339302,
- 289373, -175020, 548145, 585726, 22549, 43487, -338229, 214748, 723165, 472446,
- -133144, -274341, -343061, -226560, -54224, 453119, -363998, 160524, -217433, 70867,
- 362925, -271120, 197032, -304406, 197032, -362388, -128849, -143881, -254477, -82678,
- -86973, 100932, 106300, -113280, 62277, -79994, 44560, -98784, 175557, -29528,
- 173946, 217433, -19327, 24159, 55835, -97711, -30602, 42413, 20401, -31675,
- 49392, 34897, 90731, 4832, -79994, 25233, -50466, -51003, 23085, -41876,
- 46171, 3221, 9127, -4832, 22549, 1611, 4295, 31139, 31675, 15032,
- 17717, 20938, 23622, 10201, -20401, -17180,
- },
- {
- 137439, -4201015, 2032593, 135828, 81604, 17180, -163209, -41876, -141197, 41339,
- 426276, 127775, 21475, 799401, 4652524, -1633698, 54761, 107374, -1050656, -2070711,
- 270583, -14496, -239444, -1279363, 1166084, 452582, -1370095, 982474, -870268, -31675,
- -435402, -302258, 18790, -20401, 205085, 20938, -34897, 89657, 411780, 233539,
- -118648, 481036, 126702, -134218, -347892, 23085, 193810, 272730, -111132, -83752,
- -135828, -10737, -20938, 153008, -137976, 10201, 154619, 91268, 31139, 20938,
- -73014, -16643, 1074, -26844, -39192, -56908, -20938, 25770, 9127, 74088,
- 51540, -40265, 66035, -15569, -61203, -70330, -16106, -79457, 21475, 98247,
- -34897, -11811, 30602, -41876, 11274, 5369, -537, 5369, -4295, 3221,
- 44560, -18254, -39192, -7516, 5369, 28454,
- },
- {
- -9403831, 13855564, 5259188, 398895, -545998, 56908, -28454, -13959, -79457, 591632,
- 106837, 64425, -181462, -29528, -199179, -28991, 602906, -397821, 447750, -153008,
- 445066, 49392, -345208, 314069, -89657, -46708, -217433, -190589, 178241, 287763,
- 102542, -460098, -103079, -171262, -30602, 408559, -282394, 293668, 10737, 176631,
- 306553, -121870, 292058, 391916, -25233, -224412, 259846, 306553, -240518, 212601,
- 152471, -63351, 202937, -66035, -67646, -105227, -50466, 85362, -159988, -19327,
- 112743, 110595, 35970, -46708, -41339, -75162, -149787, 133144, 86436, -89657,
- 86973, 74088, -145492, -25770, -22549, 13959, -15032, -13422, 30602, -53687,
- 31675, -537, -33823, -42413, 104690, -48318, -11274, 10201, 27380, 9127,
- -68719, 33286, -10737, 32212, 10737, 3221,
- },
- {
- -85362, -760746, -917512, 772557, 64961, 89121, -79994, 143345, 252866, -2684,
- 488016, -24159, 208306, -137976, 4350265, 2702608, -923418, -606664, -56908, -1104880,
- 991064, 353261, 657667, -48855, -2254321, -25770, -1177358, -218506, -1083942, 332323,
- 200253, 312996, 228170, -508954, 178241, -13959, 55298, -89657, -549219, -100932,
- -179852, 110059, -168577, 165356, 16106, -206695, -242666, 19327, 223875, -232465,
- -161061, -304943, 117038, -172336, 1074, -89657, -123480, 198105, 209380, -128849,
- -3758, -4295, 80531, 40802, 6442, 154082, -25770, -39728, 4295, -45097,
- -31675, -19327, 49929, -25233, -84826, 32749, -60666, -76773, -18790, -12885,
- 96637, 24159, -32212, 15569, 4832, -2147, -15032, 31675, -4295, -49929,
- -5906, 15032, 8053, 27917, -2684, 6442,
- },
- {
- 2921115, 9903121, -3626563, 666794, -657130, -218506, 314069, 727460, -98784, -572841,
- 846109, 800475, 37044, -1793149, -197569, 86436, -533650, 802085, 175557, 31139,
- -194884, 255014, 32212, -269509, 51540, -376347, 68719, -176094, 245887, 4295,
- 535260, 274878, 284005, -287226, 74088, -834297, 73014, 328028, -481573, -103079,
- 698469, -362388, -332323, -295279, 12885, -155156, 25233, 217433, 55298, -149787,
- -194884, 69256, 388695, 10737, -54224, -1611, -64425, -105764, -107374, 53150,
- 105764, -63351, 20938, 84289, 200253, 51003, -141197, -68183, -80531, -84826,
- 34897, 60130, -53687, -91805, -113817, 120796, 89657, -76773, 27917, 2147,
- -11274, 60130, 47782, 66035, 60130, 51540, -46708, -27917, -20938, 22012,
- 51003, 4295, 20938, -4832, -1074, 15032,
- },
- {
- 270583, 5150203, -2133525, 4234301, -281857, -1319629, 402653, 46171, -128849, 199179,
- -461709, 566399, -483721, 250719, 1316944, 359167, -906238, -1016834, -947577, -41876,
- 1702418, 6442, -777926, -392990, -52076, 415001, 501974, -580894, -522912, 310311,
- 284542, -227096, 287226, -449361, 449361, 652835, -349503, -290447, 257161, -363998,
- 21475, -387084, 108448, 208306, 97174, 63888, 8053, 21475, 165356, -244813,
- -25233, -212064, -110059, -84826, 227633, 56908, -140660, 60130, -59056, -57445,
- 28454, -17180, 118648, -30602, 26844, 109522, -119722, 17180, -67646, -77309,
- 40265, 36507, 68719, -54224, -8590, 40802, 23622, 14496, 8053, 36507,
- -5906, -3758, -57445, -41339, -10737, 4832, 26844, 1074, -25770, -45634,
- -14496, -15032, -20938, 11811, 8053, -19327,
- },
- {
- 4387846, -11714523, 1960116, -3282966, -2121177, 3121904, -3766686, 1933809, -392990, 300648,
- 114890, -258772, 8053, -814970, 1788317, -1627256, -1342177, -224949, -267362, 328028,
- 959388, -26307, 312996, -496606, 85362, 149787, -163209, -118648, -57982, -183610,
- -636729, 298500, 97174, -323733, 130997, 121870, 208306, -137439, 93952, -940061,
- -592706, 189515, 250182, -74625, -9127, -81068, 202937, -380105, -86973, 221191,
- 64961, 23622, -162672, 161061, 195958, -119722, 270046, -108985, 27380, 52613,
- -7516, 53687, 38655, 56371, 2684, 13422, 49392, 3758, -12348, 46708,
- 12348, -24159, 54224, -96637, 22012, -41339, -3221, 18254, 28454, -20401,
- 4295, -49392, 32749, -39728, 4832, -49392, -23622, -9127, -11811, 45097,
- -31675, 1611, 41876, 7516, -32212, -4832,
- },
- {
- 123480, -5173288, 612570, -59056, 143345, -76773, 293132, 2684, 30602, 13959,
- 89121, -282931, -1575716, 4239133, -605590, 529892, -133144, -1070521, -286152, 766115,
- 936840, 695248, -199716, 6979, 311922, 1593433, 917512, -779537, 54224, -824634,
- -203474, 609885, 183610, 296353, -304406, -303869, -348429, 323733, 55298, -244813,
- 240518, 243739, -228170, -110595, 60666, -131533, 284005, 7516, -376347, -143881,
- 82678, -129386, 17717, -113280, 126165, 99858, 30065, 308164, 4295, 23622,
- -125091, -82141, 73551, 32212, 34897, -98784, 82141, -79994, 13422, 70330,
- -12348, -77846, -78920, -48318, -45634, -31139, -26307, -6442, 40265, 32749,
- 4832, 0, 47245, 32212, 7516, 26307, 46708, 3758, -13422, 18790,
- -4295, -16643, -13959, 33823, 26307, -52613,
- },
- {
- 75162, 3263638, 97174, -1320703, -16643, -970126, -1693291, 985158, 671089, 12348,
- -236223, 157303, -358093, -2615098, -347355, 821949, 779537, 153545, -158914, -871878,
- 622770, 120259, 59056, 27380, -796716, -274341, 173946, 153545, -72478, 175020,
- -257698, -25233, 176631, 132607, -196495, 125091, 22012, -233539, 12348, -207232,
- 16643, 413927, -574989, 401579, -199716, 114354, -245887, 241055, 5369, 1611,
- -95563, -103616, -229781, -69256, -70867, -112206, 88584, 132070, 220654, -78383,
- -122943, 104153, 216359, -148713, 25770, -19327, 94489, 11811, -75699, -5369,
- 114354, 62277, -81068, 18254, -51003, 69793, 33286, -61203, 33286, -32212,
- 31675, 28454, -29528, 2684, -56908, 35970, 76236, 57445, 6979, 22549,
- 1611, -6442, -68183, -11274, -41339, -47782,
- },
- {
- 263604, 1249299, -1647120, -673236, 375810, 38655, -157303, 92879, -97711, 151398,
- 95026, -31139, 98784, 6554120, 1822140, 412854, 107911, 1206349, 849330, -652835,
- -228170, 390842, -19327, 205085, 877247, 851477, -301721, 139586, -235149, 671089,
- -186831, 297963, -447750, 27380, 180389, 69256, -125628, 41339, -244813, 208843,
- 13959, -600222, -17180, 239981, 65498, 95026, 126165, -7516, 67109, -40802,
- 82141, 1611, 98784, 98784, 26307, -42413, 109522, 3758, -121333, 229244,
- -237297, -155156, 33823, 19864, -45097, 164283, 57982, -42950, 15032, 28991,
- 8590, 136365, -73014, -12885, -31139, 4295, 57982, 21475, 3758, -44023,
- -52076, -11811, 36507, 35433, 26844, 28454, 5906, -27380, 9127, 16643,
- -80531, -10201, 23085, 0, -32749, 2684,
- },
- {
- 155156, 8145943, -2061047, -2425046, -324270, -1098975, 636729, -170188, 265751, 236760,
- -2239826, 812823, -250719, -2113124, 272730, -602369, -1283122, 1302986, -1312113, 341450,
- 99321, 374736, 177704, -331786, 504659, -80531, 508417, -263604, -79994, 255014,
- -350040, -242129, -107374, -431644, 471373, 111669, 666257, -240518, 166967, 416612,
- -194347, 29528, 290447, 383326, -10201, -2147, 151934, -380641, -283468, 10201,
- -177704, 3221, -29528, 115964, -106837, -37581, 41876, -40265, 32212, 126165,
- -67646, 32749, 39192, 165356, 34897, 112206, -19864, -32749, -77309, 31675,
- -5906, -22549, 45634, -114354, 46171, -23622, 71404, 6442, -40265, 10201,
- 44023, -78383, 29528, 33286, -36507, -55298, 6442, -51540, -12348, 27917,
- -16643, 15032, -12885, -14496, 22549, -11811,
- },
- },
- {
- {
- 538482, 8884677, 730144, 316754, -321586, -74088, -153545, 12348, 84826, -323733,
- 1070521, 242666, 1956895, 1034013, -3367254, 721555, 1004486, 592706, 935229, -398358,
- -306553, 184147, 460098, 21475, -261993, -200790, -456340, 143881, 287226, -195958,
- -311922, 217433, 1077500, -171799, -155156, -185757, -198642, -1108102, -974958, -588411,
- 409633, 264141, 82141, 142271, 263604, 231391, -47782, 198642, -78383, 100395,
- -19327, -22012, -54224, -137976, 77846, 17717, -181462, 36507, -183073, 40265,
- 12348, -31139, 146029, 123480, 34360, 74088, 85899, -63351, 89657, 140660,
- 4295, -104153, 18254, 34360, 15569, 4832, -55298, 12348, 56908, 32749,
- -75162, -42950, 35433, 63888, 50466, 3221, 3758, -3758, 16106, -3221,
- -3758, 1611, -26844, 27917, -2147, -34360,
- },
- {
- 5211406, 61046516, -432181, -700617, -1154809, -83215, 311922, -587874, -864362, -214212,
- -160524, -421444, -267899, 1124745, 1111323, -64425, 123480, 153008, 1160715, -116501,
- -39192, -255014, -417149, -234613, -49392, 629750, -649614, -35433, -157303, 82678,
- 482647, 989453, 89657, -176094, 209380, 71941, 512175, -489626, 224949, -271657,
- -154082, 75162, 384400, -5906, 37581, 24159, -54761, 18790, -293132, 25233,
- 54761, 99858, 129386, 2147, 119722, -52613, -66035, 19327, -47245, -18254,
- 1074, 26844, -66572, 11811, -61203, -98247, -19327, -51540, 106837, 60130,
- -20938, -39728, -88584, 27917, 16106, -68183, 40802, -50466, -32749, -28991,
- 47782, 10201, -57982, -11811, 70867, -26844, -34360, 63351, -28454, -9664,
- 3758, 10737, 30602, 18790, -13959, 0,
- },
- {
- 1854352, 32959042, 2295123, 2020245, 1627793, -15569, 227633, -15569, 119722, -354335,
- -686121, -719944, -359167, -1603633, 1356673, 401579, -927713, -309238, 23085, 515933,
- 0, -235686, 115964, -1079111, 243203, 273267, 462246, -253403, 212601, 27380,
- -383326, -593242, 289910, -53150, -852014, 115964, 121333, 632971, -175020, 20938,
- -329102, 238371, 476205, 101469, 113280, 185757, -320512, 57445, -10201, -47782,
- 50466, -103616, -30602, 151398, 90194, 78920, -33286, 234076, 63351, -32749,
- -65498, 60130, 213138, 0, -8053, -20938, -15569, -44023, 4295, 44023,
- 537, -26844, 43487, 47245, 53687, -31675, 47245, -21475, -34360, -41339,
- -73014, -21475, 30602, 36507, -48318, -6979, -10201, -45097, 13422, -40265,
- 537, 34897, 22012, 17717, 20938, -25233,
- },
- {
- -312996, 1751810, 463856, 205622, 252866, -99321, 37581, -127238, -63351, -55835,
- 299037, 176094, -295816, 442382, 4814122, 1497870, -1200443, -399432, 243203, -130997,
- -367757, 66035, 1005022, 538482, 1040456, 900333, 461172, 581968, 24159, 1062468,
- -993748, -1000727, 565862, -306016, -312996, -232465, 1410360, -258772, -1611, -5369,
- -112206, 80531, -148713, 181462, -303332, 90731, -58519, 51003, 164283, 44560,
- -233002, -336618, 19327, -75699, 120796, 92342, -144418, -116501, 57982, -68719,
- -84826, -108985, -9664, -51540, 41876, 74625, -17717, -101469, 72478, 56908,
- -78920, -86973, -3758, 61203, 54761, 30602, 27380, 53150, 84289, -16106,
- 20938, 23085, 20401, -20401, 18254, -37581, -31139, 25233, 13959, 34897,
- -2147, -2147, 42413, 27380, -17180, 14496,
- },
- {
- 5091684, -904091, -2194728, -1401770, -113280, 154082, 392990, 126702, 209917, -774705,
- -606127, 406948, -591095, 153008, -628676, -237297, -257161, -420907, 438624, -15032,
- 54224, -87510, 463320, 364535, -432718, 318364, 213138, -133681, 613107, 343061,
- -433792, 129386, -601295, 111132, -30602, 167504, -805843, -583579, -128312, 302795,
- -231928, -104153, 33286, 143345, -324270, -55298, 69256, -259309, -92879, -137439,
- 96637, 81068, 230318, -76773, -124554, -2147, -35970, -124554, -147103, 39728,
- 178778, 142271, -13959, 25770, 51003, -2147, -34897, -22012, 12885, 110595,
- 9127, -70330, -50466, -45634, -2684, 11811, 33286, 27917, -5906, 10737,
- 40802, 60130, 16643, 15569, -52613, -26307, 42950, 1074, -25233, 1611,
- 8590, -22549, 1074, -36507, -41876, 3221,
- },
- {
- -346819, -81604, 881005, -248571, 37581, -89121, -31675, -9664, -79457, 223875,
- 30065, -87510, -70330, -552977, 2319819, -377420, 782221, -666794, 802622, -234613,
- -978179, -1131724, -167504, 334471, -551366, 257161, -724776, 407485, -1104880, -1104344,
- 632971, -384400, 222801, 340376, 638876, -57445, 259846, 559956, 313533, -108985,
- 159451, 463320, -54224, -104690, 25233, 68719, -7516, 158377, -302795, -187905,
- 8590, 195958, -137976, -11811, -9664, 41876, 77846, 112206, -23085, 20938,
- -65498, -45097, 19864, -5906, -8590, -15569, -29528, -79457, 537, -17717,
- 44560, 121870, 44023, -3221, -40802, 3221, 66572, 50466, 77309, -5906,
- -4295, 24159, 1074, -45097, -9127, 17180, 6442, -5369, 12885, 30065,
- -18254, -55298, 11811, 30602, 20938, 8053,
- },
- {
- 3305514, 4658429, -584116, -250719, 50466, 187368, -53687, 237297, 229781, -174483,
- 349503, -136365, 92879, 530428, -824634, 384400, 503048, 215285, -1611, -650688,
- -189515, 169114, -60666, -121870, 79994, -472446, 96637, -13422, -226560, 30065,
- -60130, 43487, -250182, 190052, 223338, 162135, 161061, -127775, -207232, 351114,
- 123480, 143881, 153008, 1074, 331249, -395674, 111132, -149787, 173409, 79994,
- -67109, -23085, -173409, 23085, -55298, 47782, 122943, 2684, 122407, 88047,
- 176094, 26307, 92342, -70330, -64425, -39728, 83752, 26844, 12885, -6979,
- 17180, -77309, 4295, 78920, -33823, -35970, 11274, 40802, -12348, 18254,
- 33286, -46171, 12348, 32212, -22549, -49392, 62814, 45097, -14496, -45097,
- 4295, 41876, -11811, -4832, -18790, -6979,
- },
- {
- -353798, -300648, 1208496, 222801, 157840, -121333, -92879, 179852, 216896, 122407,
- -45634, -207769, -722628, 1062468, 6385006, 686658, -905701, -2171106, 214748, -280247,
- -1349694, -200790, 335544, -723165, -2076080, -470836, -465467, -462246, -838592, -226560,
- 26307, -82141, -312996, -19327, -274341, 193274, 25770, 106837, -437013, -62814,
- -186294, -22012, 126165, -116501, -92342, -133144, 233539, -81068, -205622, 31675,
- 4295, -284005, 37044, 11274, 125628, 30602, 212601, 240518, -137439, -56908,
- 55835, 125091, 129923, 15032, 54761, -72478, -19327, 39192, 40802, -15032,
- -5906, -35970, -36507, 9127, -12885, 20401, -11274, 15032, 23622, 51003,
- 55835, -46708, -41339, -38655, 10201, 30065, 9127, 46708, -34897, 6442,
- 26307, -34897, 8590, -537, 12348, 5369,
- },
- {
- -1239098, 4609574, 3670587, -11274, -236760, 159451, 75699, 227096, -482647, 456877,
- 175020, -276489, -425202, -1598265, -397821, -45097, 783832, 404264, 236223, -125628,
- 2147, 204548, -249645, -175020, -290447, -63888, 140660, -8590, -24696, 437013,
- 645856, 566399, -153545, -280247, -322123, -107374, -481036, -121333, 630286, 363998,
- -44023, 395137, -304943, -192737, -77846, 105227, 222265, 419296, -82678, -327491,
- -33823, 195958, 33823, 287763, -82678, -2147, -119185, -9127, -64425, 5906,
- -44560, -42413, 66035, 34360, -11274, -129386, -62277, -18254, -150324, 6979,
- -23622, -5369, -17717, 30602, 14496, 28454, -19864, -19327, -3221, 22012,
- -42413, 37044, -1074, 39728, -36507, 537, 14496, 10737, 32749, 72478,
- 10737, -6979, -28454, 14496, 42413, -13959,
- },
- {
- -214748, 3295314, 1387811, 1883880, -453656, 132607, 625992, -275415, -123480, 550293,
- 31675, -119185, -1093069, 688269, 608812, 426812, -893353, -341450, 397821, 639950,
- 573378, -415538, 136902, -92342, 470299, 292058, 59593, 107911, -143345, 105764,
- 236760, -718333, 560493, 286689, -68183, 396211, 110059, 298500, 456877, -237834,
- -30065, -22549, 230318, -39728, 156229, 481036, -94489, 169114, -161598, -10201,
- 136365, 59056, -99321, 82141, -156229, -186294, 25233, 79994, 53687, 130997,
- 37044, -67109, -69256, -159988, -32749, -93952, 5369, 105227, 122407, 47245,
- -2147, 50466, 0, -44560, 34897, -33286, -23622, -23622, -42950, -20401,
- -60130, -8053, -13959, 6979, 12885, 36507, -2147, -22012, -33286, -15569,
- 24159, -15569, 9664, 11274, 39728, 38655,
- },
- {
- -4159139, -4641786, -23622, -1590749, -614717, -709743, 4344360, -350577, -450972, 71941,
- 203474, -234076, -16106, 949725, -233539, -1310502, 31675, 189515, -364535, 387621,
- 78383, 259846, 573915, -176094, 91805, -154619, 32749, -508954, -52076, -143345,
- 168577, 192737, -84826, -251792, 126702, 55298, 24159, 308701, -82678, -674310,
- 119722, 449898, -178778, 20401, -459562, 105227, 97711, 0, 537, -27917,
- 285078, -27380, 176094, 9664, -23622, -72478, -43487, 124017, 141734, -27917,
- -19327, 92879, -6442, -86973, 29528, 35970, -34360, 11274, -37044, 27917,
- -20401, -18254, 11274, 87510, 42950, 61740, 6979, -20401, -27380, 17180,
- -70867, 22012, -18790, -40802, 31675, 2684, 37044, 8590, 28454, -20401,
- -14496, 9664, 20401, -39192, -19864, 25233,
- },
- {
- -27380, -3803731, -380105, 282394, -48855, 250182, -220654, -196495, 144955, -103079,
- 242666, -498753, 1398549, -510564, 1104344, -244813, -311385, 52613, 568546, 497679,
- 257161, 409633, 151934, 571231, 1644973, 706522, 105764, 154619, -963146, -173409,
- 744103, -486405, 275415, -318901, 257161, -398895, -288837, 228170, 529355, -5369,
- -20401, -34897, -9127, 98784, 127775, -69793, -18254, -117575, -76236, 173946,
- 62814, -158377, -75699, 96100, 107911, -34360, -88584, -119185, -135828, -72478,
- -92342, 38118, -16106, -81604, -143881, -18254, 84289, -104690, 81604, 67109,
- 22549, -16106, -38118, -16106, -18254, 79994, 57445, 11811, 34360, -10201,
- -4832, 37581, -45097, -30065, -16106, -22549, -17717, -31139, -18254, 12885,
- 6979, 17180, 23085, 0, -5906, 13422,
- },
- {
- 213675, 413927, 2368675, 999654, -856846, 325881, 884226, -109522, -537, 686121,
- 508417, 319975, -660888, -2372970, 8590, -543313, 265751, 948651, -282394, 42413,
- 668941, -95563, 147103, -12348, -276489, -249108, 372052, 310311, 307090, 351114,
- 169114, -48855, 18254, -27380, -229244, 300648, 250719, -314606, 70330, -70330,
- -155156, -235149, -179852, -366683, -226023, -282931, -234076, -149250, -151398, -154619,
- -1611, 53150, 48855, 136365, 143345, -65498, 199179, 66035, 49392, -161061,
- 91268, 20938, 132070, -19327, 53687, -42950, -77846, -12885, -49929, 84826,
- 42413, -98784, 2147, 60130, 4295, 48855, -43487, 12348, 14496, 42950,
- 46171, -67646, -59593, -2147, 37581, 39728, -74625, -2147, 0, -42413,
- -13422, -28454, 1611, 31139, 5906, 36507,
- },
- {
- -83752, -367220, -549756, 27917, 24159, 379568, 67109, 128849, -135291, 240518,
- -56908, 282394, -600222, 733366, 15185394, 159988, 654446, 133681, 654983, -1113470,
- 998043, 38118, 418222, 678605, 1196685, 501437, -252866, -324270, 1323387, -259309,
- -214212, -250719, -155693, -494995, 63888, 16643, -158914, -292595, 57982, -89657,
- -370441, 105227, -1074, 259309, 47782, 43487, -57445, 281857, 212601, -26844,
- 194347, 201327, 41876, -107374, 35970, -102005, -24159, -18254, -33823, 50466,
- -28991, 128312, -84289, -2684, 15032, 82678, -11274, 139050, 12885, 71941,
- 58519, -75699, -57445, 38655, -28991, 12348, 9127, -87510, 46708, -28454,
- 28454, 85899, -26844, 6442, -32212, -44023, -74088, 17180, 55298, -33286,
- -537, 61740, 2147, -34360, 16643, 9127,
- },
- {
- 1351304, 3724274, -2215130, -776315, -348966, 1763621, 490163, -33823, 6979, -349503,
- -980863, 421981, 474057, 228170, -3441880, -238908, 803696, -415538, 185757, 568009,
- -340376, -81068, -52613, 153008, 289373, 35970, -633508, -243203, 291521, 238908,
- -84826, -24696, -261456, -201327, -426812, 294205, -4832, -36507, 253403, 230318,
- 12885, -16643, 310311, 263067, -76236, -81604, -492848, -243739, -56371, 156766,
- -250182, 128312, 292595, 96100, 17717, 71404, -158377, 15569, -35970, 81604,
- 36507, -84826, 6979, -35433, 10201, -5369, 0, -13422, -83215, -10737,
- 18254, -139050, -57445, 74088, 98784, 537, -35970, 0, 1611, -17717,
- -38655, -3758, 41876, 0, -5906, 4295, 4295, 21475, 42950, -57982,
- -27917, -12885, -32212, -6442, 15032, 23085,
- },
- },
- {
- {
- -705448, 6296422, -471910, 8590, 388695, 35970, -108448, -23622, -70330, -76236,
- 467615, -190052, 178778, 144955, -2562485, 445603, -292595, 311922, 759136, -232465,
- 494458, 1027034, 134755, -420370, -358093, -346819, -377957, 207769, 469225, -316754,
- -427886, 167504, 341450, -322659, -382252, 38655, 538482, -628139, -136902, -97711,
- 390842, 169651, -304943, 158914, 211527, 102005, -151934, 309238, -181999, 185220,
- 182536, 15032, 174483, 135828, 69256, 28454, -146029, -108985, -37581, 170725,
- -53687, 28991, 48855, 30065, 22549, 48855, -39192, -52076, 141197, -17180,
- -28991, -24696, 51003, 2147, -11274, 1074, -5906, 39728, 49392, -3221,
- 1611, 33823, 45097, 22549, 12348, -40802, -7516, -11811, 9127, -42950,
- 28991, -9127, 6979, 5369, -37581, -30602,
- },
- {
- -4915053, 40121972, -3151969, 1857037, -98247, -4832, 8590, -467615, -121870, 169114,
- 124017, 118112, -269509, 159988, -23622, -1005022, -121333, -330176, 724776, 128312,
- 166967, -59056, -45634, -25233, -206695, 156766, -802085, -234076, -232465, 17717,
- -41876, 584116, -247497, -314069, 54224, -13422, 295279, -494458, -46708, -364535,
- 45634, -107374, 45634, -19327, -10737, -164283, -119185, -242129, -137439, 257161,
- 22012, 27380, 84826, -128849, -46708, -206158, 47782, 45634, -9127, 142271,
- 27917, -65498, -51003, 37044, -107911, 33286, 11274, -11274, 71941, -99321,
- -6442, -44560, -56371, 9664, -75699, 25770, 48318, -48855, -537, -1611,
- 41876, -26307, -35970, 18254, 34897, -104153, 41876, 41876, -4832, -6442,
- -28991, -1611, 37044, -12885, 4295, -10201,
- },
- {
- -683974, 18160732, -4180614, 1876901, 284542, -340376, 162135, -328565, -103079, -499827,
- -144955, -221191, -9127, -479963, 1992865, -40802, -39728, 69793, -510027, 233539,
- -131533, 40265, 485868, -298500, 621697, 490700, 181462, -368293, -70330, 177704,
- 154619, -14496, 616328, 47245, -590021, 317291, -95563, 388158, -123480, -29528,
- -7516, 100395, 148176, 114354, -64425, -147103, -267899, 169114, 119185, 93416,
- -6979, -37044, 6979, 68719, -71404, 166430, 76236, 41339, -44560, -45634,
- 59593, 81604, 125091, -48855, 18790, -56908, 104153, 22549, 68183, 62277,
- 19327, -16106, 8590, -3221, 23085, -32749, 1074, -10201, -81068, -1611,
- -2147, 31139, 40802, 3758, -34360, -14496, -44023, -27917, 31675, -49929,
- 35433, 14496, 34897, -3221, 2147, -18790,
- },
- {
- 407485, 548145, -732829, 271657, 37581, -103616, 164283, -65498, -82141, -27380,
- 193810, 70867, -317828, 370978, 2362769, -382252, -1109712, 27380, 79457, 140123,
- -288300, 403727, 160524, -443992, 809064, -707596, -1253057, 46708, 481036, 1406065,
- -777389, -535797, 813359, -233539, -255551, -181462, 722091, -193810, 125091, -193810,
- 117038, 316217, -61740, 112743, -341450, 242666, 76773, -16106, 203474, 74625,
- -268435, -8590, 73014, -123480, 155693, 38655, -75699, 46171, -11274, -26844,
- 27917, 23085, -15032, 6442, 88584, 55298, -13422, -31139, 60666, 13422,
- -166967, -24159, 30602, 71941, -24696, 58519, 79457, 27917, 13959, -48318,
- -6442, 35433, -5906, 8053, 21475, -24696, -6442, 40802, 23622, -6979,
- -12885, 21475, 36507, 10737, -1074, 17717,
- },
- {
- -1203665, -7318625, 1586990, -426812, 325881, -82141, 14496, 140660, 401579, -350577,
- 485868, 138513, -39728, 281320, -838056, -139586, 147103, -208843, 63888, -464930,
- -99321, 81068, -198105, -135291, 126165, 66035, 545461, 191663, 443992, 181462,
- -108985, 450972, -9127, 461709, -17180, 92879, -845035, 222801, 342524, 284005,
- -289373, -89121, -28454, 49929, -325344, 186294, 328028, -25233, 99858, -19864,
- 275952, -13422, 64961, -2147, -75162, 24159, -99858, -103616, -111669, 34897,
- -33286, 11274, 5906, -56908, -2684, 19327, -11811, 10737, -2147, 27917,
- -59056, -90731, -34360, 74088, 12885, -14496, 81604, -9127, 10737, 22012,
- 30065, 61203, 3758, -25233, -26844, 4295, 11811, -20938, -56371, -19327,
- -4832, -22549, -12348, -39728, 5906, 6979,
- },
- {
- -131533, 2282775, 450972, -592706, 37044, -33823, 167504, 69793, -41876, -19864,
- -180389, -79457, -186831, -696322, 3389803, -250719, -310848, -52613, 1073742, -162672,
- 549219, -249645, 1167694, 1286880, -481036, 1285269, -195958, -65498, -123480, -679142,
- 358093, -299574, 86436, 257698, 536334, -221728, 66035, 234076, -537, -244276,
- 348966, 145492, -61203, 88047, 113817, 29528, -84289, 84289, -133144, -3758,
- 77846, 97711, -171799, -45634, -15032, -55298, -35433, 62814, -34897, -7516,
- -51003, 52076, -70330, -63351, -24696, -11274, 46171, -25233, 60666, -28991,
- 77846, 46171, -62277, -11274, 44023, 18254, 51540, 43487, 25233, -55298,
- 51540, 7516, 537, -11811, 19327, 10737, -6442, 2147, 14496, 9664,
- -41876, -1074, 47782, 4295, 4832, -15032,
- },
- {
- 1085016, 6641630, 2653753, -1060857, 157840, 129923, 16643, -169114, 44560, -233539,
- 25233, -430034, 144955, 362388, -1364726, -641024, 22549, 21475, -191126, -244813,
- -128312, 225486, -97711, -147103, 45097, -320512, 362925, -19327, -86436, -9664,
- 48318, 275415, -101469, 283468, 124017, 316217, 133681, 70330, -57982, 107911,
- -36507, 167504, 55835, -46171, 386010, -63351, 25770, -166967, 254477, -66035,
- -195421, 32749, -78920, -40265, 108448, 65498, 67109, 9127, 125628, 38118,
- 40265, -86973, 84826, -9127, 20938, 54224, 77846, -72478, -5906, 48855,
- -18790, -91268, 73551, 41339, -31139, 24696, 46171, 12885, 2684, 35970,
- -10201, -11274, 35433, 11274, -71404, 28991, 45634, 5906, -22549, -11811,
- 46171, -12348, 3758, -11274, 6979, 17180,
- },
- {
- 18790, 1343788, 275952, -154619, -32749, -116501, -88584, -9127, 41876, -79457,
- -358093, -35970, -438087, 665720, 5822365, -530965, -71404, -615791, 175020, 504659,
- -966905, 238908, 54224, 34360, -4295, 679679, 129386, -361314, -210990, -408559,
- -256087, -207232, -148713, 249108, 229781, 266288, -54761, -89121, 71941, 161598,
- -61740, 106300, 131533, -160524, 5369, 160524, 326954, -400506, -255551, 193810,
- -34897, -41876, 27917, 119185, 97174, 64961, 150861, 28454, -132070, 78383,
- -5906, 139050, 51003, 11274, -3758, -106300, 71941, 57445, 20401, -49929,
- 34897, -5906, -40265, 43487, 10737, 9127, 83752, 47245, 6442, 21475,
- -43487, -44560, -8590, -6442, 16106, -537, 33823, -8053, -20401, 46708,
- -10737, -9127, -1074, -22549, 15032, -7516,
- },
- {
- 2664490, 2727841, -1145683, -46708, 238371, 244813, -384400, -481036, -156766, 565325,
- -759672, -862215, -77309, -16106, 40265, -306553, 141197, -178241, 198105, -90731,
- 68719, 99321, 148713, 63888, -278636, -168041, -31675, 174483, -158914, 33286,
- 353798, -27380, -347892, -179315, -331249, 455267, 70867, 102542, 412854, 8053,
- -161061, 256624, -249645, -537, -200253, 130997, 53687, 163209, -104153, -240518,
- 255551, 73014, -245350, 227096, -100932, -81604, -57982, 20401, -48318, 28991,
- -69793, -88047, 23085, -49392, -45634, 50466, 77309, 3221, -37044, 59056,
- -53687, -21475, -537, 42413, 67646, -59056, -10737, -3221, 24159, 9664,
- -31139, -11274, -22012, -16106, -57982, -19864, 69256, 32749, 16643, 26844,
- -35433, -3758, -40802, 36507, 20938, -11274,
- },
- {
- 319438, 1429687, -370441, 228170, -119722, 1065152, 296890, -468151, -280784, 24696,
- -71404, -106837, -929860, -241592, -1012539, -1611, -624381, 417149, 817654, 35970,
- 44023, 188979, 973884, 386010, 355945, -187368, -406411, -191663, -280784, 95563,
- -29528, -498216, 238908, 295816, -362925, 38118, 263604, 350577, 222265, -132070,
- 88584, 7516, 48855, -241055, 120796, 172336, -62277, 88584, -166430, 157303,
- 124017, 34360, -4832, -56908, -241592, -82141, 89657, 59056, 64961, 105764,
- 1074, -51003, -120259, -74088, -66572, -72478, 92342, 85362, 112206, -42413,
- 15032, -5369, -31675, 18254, 32212, -23085, -35970, -26844, -64961, -18254,
- -28454, 8590, 27917, 15032, 11811, 2684, -15569, 6442, -17180, 31139,
- 13422, 17717, 13422, 1611, 27380, 17717,
- },
- {
- 3811247, -599685, -3585761, 1341640, 531502, -521302, 3127273, -1218697, -258235, 250719,
- -20401, -194884, -8053, 603443, -932545, -577136, 633508, 297427, -234613, 223875,
- -925565, 161598, 382789, -147103, -19327, -173409, 28991, -543850, 278636, 13959,
- 165893, -43487, -63351, -18254, 13422, -135828, 146029, 185757, 78383, 133144,
- 305480, 143345, -316217, 59056, -294205, -12348, -102542, 103079, 64425, -178778,
- 137439, -78920, 144955, -158377, -35970, -81068, -110595, 194884, -17717, -47782,
- 44560, 67109, -73014, -78383, 25233, -23085, -31139, 3221, 9127, -22012,
- -32749, 21475, 16643, 93416, -9127, 68719, -5906, -60130, 4295, 11274,
- -44560, 41876, -32212, 27380, -1611, 52076, 6979, 5369, 2147, -29528,
- 12885, -11274, -16643, -19327, 15032, 6979,
- },
- {
- -46171, -2405719, 331249, -170725, -76773, -1074, -256624, -171262, 307090, 1074,
- -158914, -627065, 1214939, -2144263, -580357, -485868, 127238, 817118, 303332, -472446,
- 76773, 568009, 165893, 2147, 326418, -378494, -646929, 263604, -636729, 918586,
- 216896, -398358, 48855, -217970, -43487, -175557, -12348, 275952, 202400, 25770,
- -152471, -68183, 118648, 49392, 40802, 76236, -63888, -59056, 7516, 146566,
- -54224, -119185, 42413, 23085, -52076, -66035, -67646, -210990, -102005, -86973,
- 61740, 5906, 5906, -84289, -46171, 95026, 18254, -1611, 74088, 32749,
- 38118, 27917, 43487, 43487, -4832, 66572, 35433, -39192, 13422, -37581,
- -3221, 31139, -45634, -28991, -4832, -33823, -12885, -4295, 4295, 11811,
- 9127, 16106, 19864, -27917, -11811, 28454,
- },
- {
- 328565, -1108638, 885837, -490163, -576599, 1858110, 1069447, -600222, -291521, 1151051,
- 477815, 34360, 647466, -518617, 949188, -523986, 47245, 764504, -402653, 553514,
- 158377, -286689, 33286, 377957, 333934, 159451, -62277, 304943, 297427, -6442,
- 16106, -162672, 261456, 200253, -88584, 187905, 324270, 39728, 340376, 3221,
- -216359, -246961, 158377, -504659, -69256, -202400, 99858, -186831, 4295, -242666,
- 90194, 105227, 33286, 274878, 28454, -25233, 160524, -84289, -66035, -33823,
- 56371, -103079, 24696, -63888, -29528, -59593, -53687, 17180, 30065, 25770,
- -48855, -67109, 62277, 28991, -4832, 6442, -61740, 76236, 8590, 30602,
- -33286, -60666, -10201, 27917, 28454, -20401, -102005, -5369, 2684, -13422,
- 1611, -5906, 63351, 14496, 21475, 24696,
- },
- {
- 217970, -778463, -420907, 194347, 106300, 209380, -1074, 260382, -74625, 73551,
- -39728, 80531, -552977, -5865315, 5971615, -630286, 160524, -614717, 724776, 43487,
- 1318018, 32749, 487479, -114890, -73551, -102005, 78920, 157303, 744103, -857383,
- -486405, 129386, 519154, 160524, 37044, 172872, -46708, -169114, 347892, -123480,
- -184684, 284005, -56908, 61740, -70867, -163209, -119185, 85899, 158377, -102005,
- 171799, 75162, -89657, -104153, 86436, -172872, -11811, 15032, -23622, -52613,
- 132607, 86436, -96637, 51540, 78383, -58519, -33823, 138513, 537, 77309,
- 37581, -87510, -41876, 28454, 12348, 18790, -69256, 4295, -1611, 4832,
- 67646, 16106, -19864, 7516, -53150, -19864, -45634, 44023, 537, -3221,
- 54224, 39192, -38655, -12348, 20938, -33286,
- },
- {
- -1168768, -909459, -692564, 1855426, 388695, 1991254, -352187, 128312, 135828, -79994,
- 1067299, 562104, -155693, 775242, -1569274, 545461, 795643, -619549, 616328, 737661,
- -303332, -61740, -230318, 212064, 34360, 50466, -551366, 40802, 173946, -233539,
- 4832, 220654, -14496, -77309, -604517, 289373, -265214, -42950, 191126, 30602,
- 143881, -198642, -51540, 146029, 51003, -209380, -375273, 143881, 127775, 97711,
- 14496, 141734, 111669, -118648, 20401, -20938, -214212, 130460, -70330, 7516,
- -10201, -170725, -32212, -60666, -31675, -69793, 12348, -8590, -31139, -22012,
- 30602, -81604, -4832, 86436, 10201, -44560, -51540, 3221, 4295, -32212,
- -1611, 35970, 4295, 3221, 33286, 55298, 8590, 46171, 0, -39192,
- -8053, -11274, 537, 16643, 4832, 5906,
- },
- },
- {
- {
- 367220, 2853469, -381178, 243739, 260919, -59056, 52076, -74625, -199179, 56908,
- -304943, 243203, -826244, 598611, -1324461, -265214, -39728, 337155, -230854, 43487,
- 914828, -306553, -573915, -980326, -185220, -319975, 91805, -115427, 52613, 11811,
- -409096, -477278, 39192, 247497, -101469, 197032, 279173, 332860, 394600, -12348,
- -28991, 79457, -122943, 163746, -32749, 44023, 193810, 383863, 105227, 100395,
- 62277, 45634, 89657, 100395, -187368, 52076, 62814, -24696, 142271, 67646,
- -58519, -169114, -93416, 63888, -12885, 13959, -74088, 15569, -1611, -141734,
- 34360, 40802, 63888, -3758, 2684, 2147, 34360, 48855, -17180, -18254,
- 64425, 1074, -42413, -67109, -59593, 17180, 35433, -10201, -1074, 15032,
- 27917, -27380, 16643, -10737, 12348, 26844,
- },
- {
- 3451006, 27208618, 172872, 1452236, 670552, 7516, -102005, 740345, 408559, 171799,
- 312996, 66572, -27917, -52613, -365072, -70867, 719407, -122943, -501437, 642635,
- 60130, 454730, -158914, 6979, -143345, -314606, -285615, -142271, -166967, -130460,
- 25233, 120259, 55298, 213138, -98247, -268435, 89121, -99321, 274878, 17180,
- -57445, -243739, -417149, 227633, -281857, -63351, 16106, -45097, 177167, 79994,
- 94489, -102542, -207769, -184147, -143881, -142808, -64425, -53687, 24159, 112206,
- -145492, -143881, 11811, -19864, 58519, 122407, 16643, -15032, -109522, -57445,
- 2684, -4295, 38118, -28454, -9127, 66035, -47245, 28454, 74625, 24159,
- -40802, -32212, 10201, -28991, -51003, -10737, 69793, -29528, 16106, -4295,
- 537, -6442, -8053, -11811, 5906, -13959,
- },
- {
- -91268, 8763344, 3548180, -581431, -1065152, -52613, -188979, -283468, -128312, 49929,
- 284542, -27380, 285615, 596464, 1275068, 93952, 61740, -56371, 256087, -275415,
- 89657, 353261, 17180, 458488, 323733, 37581, -163746, 207769, -33823, 281857,
- 196495, 167504, -36507, -43487, 265214, 87510, 9664, -54761, 124017, 59593,
- 243739, -413391, 67109, 57982, -299574, 136365, 178778, -120796, -27917, -69256,
- 127775, 112743, 62814, -3221, -84289, 106300, 37044, -186294, 43487, -16106,
- -6442, -24159, -122943, -11811, -30065, -91268, 16643, 12885, 47245, -23085,
- 12348, -23085, 1611, -81604, 13422, -13959, -13422, -4295, -35433, 59056,
- 18254, 19864, -4832, -35433, 37581, -5369, -14496, 15569, 11274, 11811,
- 27917, -29528, -537, -14496, -3758, -6442,
- },
- {
- -502511, 47245, 1054415, -186831, -154082, 174483, 75699, 5369, -163746, 79457,
- 3221, 212601, 213675, -362925, 1498944, 70330, 18254, 274878, 1005022, 48318,
- 137439, 222801, -226023, -18254, -228170, 24696, -550293, -334471, 301721, 833224,
- 28991, -615791, 266288, -223338, 219043, 100395, -245887, 343061, -37581, -198642,
- 186831, -14496, 95026, 107374, 30065, 89121, -35433, 12348, 13959, -90731,
- -138513, 148713, -127238, -12885, 31139, -105227, 55835, 113280, -66035, 69793,
- 78920, -18790, -2147, 89121, -75162, -57982, 16643, 14496, -55835, -47782,
- 30602, 69256, 30602, -4832, 4295, 53150, 11274, -71404, -59056, -1611,
- -9127, -6979, -24159, 20938, -8053, 26844, 22549, -10201, -30602, -8590,
- 8590, -5906, -53687, -17717, 0, -20938,
- },
- {
- -2298881, -3995393, 1898376, -341987, 37581, -119722, -118112, 110595, 280784, 140123,
- 511638, -382252, 110059, 274878, -541703, -220654, -379031, 73014, 210990, 120259,
- 144418, -263604, -275952, 302258, 518617, -103079, 72478, 821413, 459025, 209380,
- 237834, 175020, 308164, 173946, -81604, 175557, 176631, 687195, 126702, 216359,
- 121333, -186831, -231391, 130460, 127775, -194884, 37044, 199179, -18254, -23085,
- 242666, -215285, 52076, 80531, -22549, -55835, -34360, 85899, 48855, 32749,
- -64425, -13959, 2684, -50466, 16643, -24159, -63888, 90731, -23622, -48318,
- -38655, 20401, 137439, 60130, -66035, 22012, -5369, -48855, 28991, 8053,
- -4832, 7516, -17180, -13422, 53687, 11811, -24159, -10737, -5369, 7516,
- 1074, 18254, -2684, 23085, 13959, -6979,
- },
- {
- 403727, 1071058, -1407139, 398358, 91805, 76236, 70867, -70330, -4832, -176631,
- 28991, 161598, 93952, 1238561, 3642669, -289373, -244276, -398358, 60130, 759136,
- 305480, 252329, 806917, 719944, 923418, 1209570, -63351, -110059, 59056, 126702,
- -615254, -34897, -195421, 20401, 63888, -154619, -16106, -255014, -49929, -45097,
- 75162, -19864, 83752, 121333, 75699, -172872, 92879, 127775, 45634, 153545,
- -78383, -52613, 38118, -98247, -70867, -162672, 53687, -20938, 28991, 29528,
- -8053, 51540, -97174, -33823, -62277, -33823, 56371, 76773, 62814, 62814,
- 47245, -98784, -74088, -1611, 29528, -39728, -66572, -48318, -49392, 9664,
- 42950, -40265, 39192, 46171, 24696, -18790, -4295, 16106, -3221, -15032,
- 8590, 53687, -11811, -40802, -13959, 1074,
- },
- {
- -2078764, 14590004, -217970, -719944, -19864, -47245, -53150, -448824, 9664, 279710,
- -225486, -246424, -102542, 311922, -1162326, -1028108, -152471, -448824, -46171, 581968,
- 318364, 114890, -47782, -31139, -10737, 59056, -213138, 221728, 273267, 205622,
- 10201, -53150, -37581, 126702, 47245, 162135, 8590, 498753, -12885, -172872,
- -86973, 147640, 131533, 285615, 53687, 211527, 112743, 157840, 139586, -38118,
- -23085, 132070, 105764, -123480, 74088, -71404, -64961, 0, -87510, -66572,
- -84289, -34897, 50466, 52076, 45097, 5906, -106837, -34897, 62277, -9664,
- 9664, 88584, -27380, -118648, 23622, 70330, -7516, 4295, 41339, -26307,
- -46708, 38118, -11274, -37581, 30602, 40265, -49392, -19327, 18254, 33286,
- -1611, -34897, 24696, 9664, 42413, 15569,
- },
- {
- 359167, 267362, -1090922, 80531, -193274, 108448, -35433, -76773, -26307, -170188,
- -65498, 347355, 193810, -1017907, 6134824, -147640, 897648, 397284, -24696, 673236,
- 809601, 467615, -409096, 690953, 848793, 721555, 212064, -126702, 79994, -468151,
- 326418, 105764, -71404, 315680, 407485, 170188, -15032, -111132, 126165, -193810,
- 12885, 111669, 52613, 34360, 76773, 140660, -120259, -266825, 86973, 68719,
- -232465, 5906, 12348, -56908, -102005, 66035, 18254, -199179, 95026, 78920,
- -30065, 28991, -134755, 70330, -44023, 87510, 62814, -45097, -5906, -11274,
- -14496, 10737, 14496, 14496, -41339, 16106, 16643, -27380, -23085, -34897,
- -47245, 42950, 41876, 33823, -10201, -22012, -3221, -28991, 24696, -17180,
- -20938, 11274, -10201, -4832, 13422, 537,
- },
- {
- -5059472, 10974178, 1224603, 874026, -642635, -151398, -590558, 33286, 278636, -433792,
- -477815, 279710, 799401, 398895, -343597, -453656, -638340, 48855, 144418, 290984,
- -93416, 164819, 375273, -259846, -33286, -390305, -60666, 73014, -271120, -10201,
- 66572, -339302, -110059, -97711, -207232, 100932, 597537, 545998, -521302, -324270,
- 113280, -90731, -172336, -10737, -330712, -126165, 38118, -105227, -45097, 67646,
- -12348, -86436, -56371, -41339, 44560, -16643, 34360, -144418, 20938, 64425,
- -29528, -30065, 3758, -53687, 163746, 198642, -1611, -42413, 41339, -25233,
- -2684, 20401, -24159, -9664, -35970, 1074, 73551, -48855, 24159, 4295,
- -3221, -21475, 54761, -3221, 35433, 24696, 37581, -16643, -23622, -34360,
- 6442, 4295, 10737, 16643, -26844, 11274,
- },
- {
- -370441, 942745, 761820, -157840, 520228, -300111, -255551, 60130, -44023, -543313,
- -97711, 311922, -179315, -475668, -1211718, -598611, -213138, 714038, -461172, -826781,
- 463320, 617938, 898185, -303332, -166430, -357556, 10737, -541703, -399969, 88584,
- -57445, 156766, -327491, -122407, -60666, -34360, 4832, -380641, -105764, 15032,
- -119722, -130460, -190589, 36507, -24159, -216359, 24159, 27380, 46708, 13422,
- -171262, -65498, -27917, -203474, 119185, 132607, 15569, 28454, -16643, -72478,
- -32749, 26844, 5906, 106837, 15569, 54761, 17180, -49392, -108448, -102542,
- 30065, -12885, 39192, 35433, -8590, 23622, 33823, 2147, -10201, 37044,
- 33286, 22549, -24159, -13959, -23622, -39192, 14496, 9664, 9664, 3758,
- -15032, 12348, -8590, 0, -28454, -23622,
- },
- {
- -3007551, 5087926, 2579665, -261993, 482110, 440234, -1634772, 319438, 530428, 5906,
- -277562, -13422, -78920, -163209, -406948, -31139, -85362, -312996, -152471, -190589,
- -417686, 79457, 6442, -266288, -98247, -15569, 9664, -223875, 95026, -106300,
- -319438, -229781, 148713, 221728, -242129, 119722, 268972, -143881, 186831, 126702,
- -314606, -192200, 34897, -82678, 124554, -93952, -196495, -31675, -100395, 48855,
- -112743, -61740, -81604, -86973, 92342, 104690, 76236, -48318, -151934, 53150,
- 65498, -34360, 9664, 92879, -34360, -27917, -9127, 37044, 28454, -31675,
- 2684, 48855, -16643, -42413, -37581, -15569, -56908, 30065, 15569, 5369,
- 22549, -33286, 13422, 37581, -48855, 17717, -48855, -21475, -27380, 21475,
- -2147, -23085, 3221, 37044, -2147, -30065,
- },
- {
- 126702, -1598802, -409633, -253940, -173946, -241055, 345208, 78920, -99321, 162672,
- -351114, -83215, -679142, -1482301, 294742, 904628, -350040, -448287, -324270, -328028,
- 500901, 918049, -358093, -657130, -396211, -81604, -399969, -1074, 92342, 9664,
- 8590, 452582, -160524, 332860, -494458, 81068, 201863, -110059, -250719, -19327,
- 35433, 72478, 86973, -231928, -17180, 78920, 98247, -121870, -90731, -57982,
- -195958, 89657, 35970, -130997, -91268, -13422, 106300, 128849, 90731, 28991,
- 67109, -97711, 5369, 104153, 137439, -20938, -34360, 60130, 34360, 22549,
- -12348, 19864, 17717, -14496, -1074, -62277, -74625, -5906, -1611, 7516,
- 14496, -13422, 47245, 34897, 14496, 23622, 45097, 44023, 9664, 5369,
- -3758, -21475, -13422, 13422, 2684, -11811,
- },
- {
- -243203, 1198833, -637266, -1809255, -24696, 682900, -1057636, 231391, 41876, 960462,
- -241055, -36507, 374736, 297427, 572841, 530428, 480499, -40265, 75162, -374199,
- -432181, 108985, -154619, 428423, 287763, 65498, -277562, -40802, -24159, -159988,
- -227096, -120259, 119185, 111132, 236223, -70867, 112743, 330176, 51540, -134218,
- 180389, -18254, 253940, -122943, 285615, 146029, 163746, 153545, 148713, -165893,
- -1074, -75699, -100395, 117038, -264677, -62814, 22549, 2684, 120796, 6979,
- -90194, -42413, 13422, -95026, -81068, -20401, 49392, 101469, 18790, -117038,
- 40265, 63351, -15569, -53150, 3221, -5369, 12885, 11274, -6979, -31675,
- -45097, 52613, 26307, -537, -60666, -19327, 53150, 44560, 15569, 49392,
- 18254, 11274, 537, -39728, -10201, -52613,
- },
- {
- -343597, 160524, 293132, -122943, 61203, -256087, -6442, 63888, -171262, 190052,
- 61740, -76236, 288837, -227633, -7684234, 413391, -543850, -260382, 315143, 1084479,
- -56908, 154619, 303869, -632971, -193810, -300111, -415538, 610959, -485868, -479963,
- -41876, 507343, 699543, 442919, 44023, 466541, 167504, 90731, 209380, 11811,
- 61740, -83752, -132070, -86973, -32212, -29528, 31139, -250719, -51540, -5906,
- -45634, -74625, -49929, 107374, 35970, -28454, 27917, 18254, -55835, -8053,
- -54761, -157303, 42950, 27917, 32212, -48318, 92879, -26844, 2147, 37581,
- 11811, 57445, -17180, -44023, 32212, -26844, 15569, 81604, -16643, 13422,
- -68719, -44023, 44560, 13422, 13959, 45634, 38118, -14496, -27917, 42413,
- -17717, -51540, -9664, 22012, -29528, -20938,
- },
- {
- 287226, -2586644, 957778, 1127429, 424665, -1413044, 461172, 231928, -268435, 238908,
- 1436667, -602369, -306016, -756451, 1198833, -525597, -231928, 175557, 140123, 11811,
- 844498, 226560, -318364, -282931, 299037, 424665, 333934, 29528, -638876, -310848,
- 20401, 26307, 57445, 204011, -137439, 194884, 32212, 56371, 5369, -118112,
- -52613, -336081, 57445, 142808, 139586, -46708, 190589, 18254, 67646, -217970,
- 290984, -51540, -225486, -94489, -98247, -124554, -8053, 69256, 17180, 47782,
- -81604, -18254, 18790, 95026, -41339, -20401, 49392, -7516, -20938, 10737,
- 10201, 84289, 32212, -48855, -122407, 0, 32212, 5369, -32212, 8053,
- 48318, 2684, -34360, 28991, 12885, -537, 18790, -42413, -38118, 41339,
- -13959, 25770, 28454, 17717, -11274, -24159,
- },
- },
- {
- {
- 197569, 3074660, 164819, 862215, 82678, -140660, -11811, -109522, -46171, -121870,
- -162672, 154082, -91268, 1309965, -1287953, 490163, 623844, 146566, -428423, -337155,
- 441308, -865436, 64961, -288300, 148176, -131533, 177167, -93952, 130997, 200790,
- -78383, -485868, -18254, 277025, 167504, 256624, 90731, 396211, 337155, 37044,
- -41339, -48318, -34360, -115427, -130997, 20401, 48318, 201327, 59593, 1074,
- -51003, -53150, 31675, -41876, -148176, 83752, 68183, 68719, 29528, 13422,
- -26844, -210990, -20401, 66572, -89657, -42950, -10201, 10737, -61740, -49392,
- 49392, -4832, 37044, -12348, 3758, 22549, 15569, 13959, -24696, 0,
- 41339, -35433, -61203, -42413, -24696, 55298, 22012, -5369, 15032, 34360,
- -15032, 2147, 3758, -1074, 33286, 17717,
- },
- {
- -3001109, 26287884, 5603322, 1927367, 780610, -252866, -399432, 535260, -121870, -216359,
- 132070, -130997, 191126, 311922, -162135, 124017, 397821, -115964, -658204, 136365,
- -252329, 598611, -68719, -204011, -97711, 79994, 81068, 51003, -14496, -85899,
- 144955, -227096, -54224, 275415, 149250, -111669, 141734, 72478, 270583, -41339,
- -174483, -12348, -129923, 207232, -369904, 121333, 75162, 120796, 15569, -13959,
- 157840, -180926, -246961, -28454, 31675, -14496, -143345, -70330, -15569, -537,
- -144418, -30065, 38118, -5369, 122943, 56908, -4295, -35433, -90731, 38118,
- -1611, 25770, 23085, -9664, 83215, 2684, -38118, 37581, 51540, 1074,
- -38118, 3221, -3221, -48855, -23622, 50466, -11274, -20938, 4832, 0,
- 20401, -8053, -25233, 9127, -6979, 1074,
- },
- {
- -85899, 4955856, -624918, -2258079, -1054415, 85362, -180389, 204011, 240518, 273804,
- 26307, -144418, 105227, 105764, 703838, 48318, -53687, -16106, 567473, 216896,
- 397821, -4832, -220117, 85899, -245350, -350577, -68183, 269509, 154619, 341450,
- -17180, -56371, -110059, 81604, 406411, 43487, 51003, -71404, 178241, 61740,
- 6979, -347892, 82141, -130997, -215285, 248571, 192737, -90194, -27380, -22549,
- 176094, -21475, -107374, -30602, -19864, -59056, -130460, -85362, 149787, 48855,
- -103079, -86436, -106300, 52076, -1074, -33286, -19864, 13422, -1611, -41876,
- 2684, -13959, 6979, -84289, 19864, -11274, 31139, 3758, 18254, 54224,
- -12348, -23085, -40802, -13959, 39728, -12348, 17717, 3221, 5906, 44023,
- -1074, -27380, -13422, 6442, 10201, 537,
- },
- {
- 387621, -474594, -776315, -417686, 58519, 140123, -75162, 53687, 15032, 81604,
- 24696, 189515, -15569, -1341640, 282394, 425202, 1551020, 571231, 1609002, 273267,
- 154619, -504122, -19327, 455267, -1030255, 511638, 272194, -116501, -341987, 54761,
- 303332, -433255, 17180, -388158, 287226, 65498, -217970, 157840, -112206, -130460,
- 30065, -70330, 16106, 118648, 43487, -125091, -11811, 10201, -168577, -13959,
- 134755, 10201, -103079, 100395, 16106, 14496, 99321, -2147, -22012, 41876,
- 16106, -82141, -9664, 17180, -86973, -68183, -5906, 2147, -28991, -10737,
- 107374, 28991, -9664, -60130, 42413, -10737, -66035, -60130, -12885, 24159,
- -537, -40265, -11274, -5369, -3758, 24159, 2147, -8053, -31675, 18790,
- 10201, -39728, -51003, -3221, -19327, -21475,
- },
- {
- 3398393, 7559143, 3941169, -329639, -193274, 42413, 116501, 45097, 166967, 178241,
- -18790, -242129, -377420, 341987, -29528, -237297, 44023, 360240, 75699, 268435,
- 105227, -331249, -79457, 428960, 64961, -3221, 47782, 755377, 144955, -104690,
- 16643, 17717, -70330, -107374, -311385, 82678, 294205, 113280, -82678, 132607,
- 224412, 99858, -99858, 212601, 206695, -288300, -107374, 63351, -176094, -85899,
- 113817, -226023, 91805, -8053, -33286, 15032, 126702, 116501, 6442, -16106,
- -58519, -41339, -52076, -33286, 16643, -56908, -85899, 9127, -75699, 9127,
- 16106, 36507, 113817, -53150, -64425, 16106, -60666, 3758, 4832, -24696,
- -13422, -7516, -23622, 13959, 30602, 9664, -7516, 2147, 27917, 13422,
- 2147, 18790, 12348, 40265, -15569, -8590,
- },
- {
- 26307, -318901, -1152125, 249645, 76773, 37044, -86973, -74088, 66572, -5906,
- 210990, 132070, -6442, 867583, 1785633, -158914, 845572, -686658, -264677, 1134945,
- 329639, 119185, -316754, -445603, 184147, -67109, -872415, -549219, 134755, 1034013,
- -392453, 107911, -43487, -301721, -156229, 160524, -10201, -364535, 133681, 75162,
- -231391, 28454, 48855, 20938, 44560, -186831, 50466, 121870, 51003, 143345,
- -98784, -11811, 91268, 20401, -12885, -147103, 46708, -67109, 44023, 55298,
- 14496, 23085, 11811, 30602, -30602, -10737, -15032, 61203, 39192, 42413,
- -17180, -53687, -10737, 10737, -28454, -33286, -51003, -48855, -30065, 15569,
- -1074, -17180, 28454, 25770, -3221, -20401, -1611, 4295, -11811, -2684,
- 34897, 13422, -49392, -24159, -13422, 12348,
- },
- {
- -111132, 18709952, 409633, -107374, 5906, -26307, -75699, -34897, 201863, 192737,
- -95563, 82678, -16106, 755377, -815507, -431107, 158914, -257161, 198642, 452045,
- 288300, -181999, 4295, -79457, -66572, 165356, -406411, 100932, -190052, 200253,
- 39728, -162672, -16643, 5369, 84289, -102542, -108985, 409096, 46708, -208306,
- -81068, 296890, 12885, -32749, -83752, 98784, 218506, 80531, -2684, 3758,
- 17180, 115427, 17717, -59056, -54761, -176094, -42413, 30602, -119185, -59056,
- -48855, -46708, 6442, 9664, -26844, -48855, -69793, 59593, 28991, -55835,
- 42413, 67646, -60130, -45097, 37044, 27380, -43487, 17180, 20401, -37044,
- 2684, 22012, -21475, -23622, 64961, -25233, -35970, 8053, 31675, 13959,
- -37044, 6979, 0, -1074, 21475, 0,
- },
- {
- 17717, -1398012, -271120, 422517, -68719, 117575, -31139, -40802, -12885, 1611,
- 199716, 168041, 441308, -893353, 5341866, -329102, 631897, -329639, -38118, 10201,
- 166430, -126702, -301185, 727997, 705985, 653909, -154619, 223875, 438624, -60666,
- 512175, 179852, -263067, 223875, -23622, -27380, 23085, 6442, -31139, -200790,
- 6979, 9127, -95026, 37581, -3758, -67109, -186831, 57445, 200253, -3758,
- -194884, -116501, 60666, -171262, -113817, -2684, -76236, -131533, 102005, -113280,
- -82678, -22549, -87510, 63351, 0, 106300, -49929, -99858, -29528, 9127,
- -56908, -6979, 30065, -16643, -39192, 23622, -47245, -8053, 7516, -12348,
- 37044, 40265, 17180, 5906, -31139, -2684, -31675, 5906, 23085, -40265,
- 20938, -8053, 2147, 13959, 3221, 6442,
- },
- {
- 6286759, 21864604, -4219806, 1030792, 41876, -70330, -362925, 518080, 51540, -545998,
- 284005, 759136, 219580, 389768, 941135, -253403, -280247, 149250, -262530, 163746,
- 124554, 319438, 314606, 149787, 295816, -233539, 130997, 168041, -449898, -155693,
- -98247, -122943, 154619, -23622, -28454, -118112, 69793, 314606, -281857, -192737,
- 43487, 67109, -62814, -120796, -161061, -238908, 537, 86436, 64425, 19864,
- -185220, -20938, -4295, -154619, 54761, 76236, 8590, -95563, 115964, 80531,
- 2147, 34897, 35433, 6979, 166967, 31139, -93416, -17717, -2684, -55298,
- 38118, 6979, -88584, -20938, -75699, 45634, 26307, -56371, 15032, 24159,
- -11274, -15032, 56371, 39192, 42950, 33286, -9664, -38655, -13422, -7516,
- 33286, 5906, 28454, -21475, -8053, 17180,
- },
- {
- 235149, 358630, -498216, 502511, 363462, -857383, -1611, 95563, 173409, -212064,
- 184147, 750546, 79994, -144418, -360240, 183073, -246961, -270046, -598611, 59593,
- 390305, -554588, 260382, -272194, 298500, 8053, 270583, -57445, 184147, 253403,
- 222801, -26307, -467615, -170188, 51003, -118648, -264677, -404264, -47782, -137976,
- -182536, -25770, -32749, 103079, -198642, -144955, -98784, 54224, 25233, -107911,
- -146029, -75162, -63351, -2147, 298500, 28991, -93416, 6979, -67109, -23085,
- 13959, 19864, 78383, 73014, 55298, 49929, -84826, -74088, -86436, 3758,
- 2684, 25233, 86436, -13959, -33823, 15569, 53687, 11811, 23085, 47245,
- 6979, -537, -41339, -8053, -37044, -16643, 28991, -11811, 14496, -27917,
- -4832, -14496, -9664, 1074, -34897, -10201,
- },
- {
- 1824824, 10372883, 310311, -2389613, -158914, 426812, -1095754, 539555, 330176, -186831,
- -122943, 102542, -69256, -32749, 213138, 89657, -158914, -112743, 58519, -431644,
- 41339, -167504, -193810, -370441, 177167, 143881, 109522, -126702, -128312, 66035,
- -99858, -97711, -38655, -80531, -322123, 124554, 53150, -151934, 270583, -177704,
- -403727, -8590, 108448, -70867, 85362, -52076, -104153, -57445, -121870, 141197,
- -57982, -4832, -57982, -15569, 35433, 117575, 111132, -177167, -53150, 54224,
- 15032, -47245, 42950, 97174, -75162, 9664, -3221, 34897, -13959, 7516,
- 23622, 26844, -29528, -61740, -5369, -23085, -26844, 59593, -31675, 10737,
- 12348, -27917, 40265, -24159, -26307, -39192, -23085, -16106, -15032, 25233,
- -18254, -1611, 18790, 20938, -25233, -15569,
- },
- {
- -200253, -1605244, 129923, 304406, -50466, -15032, 476205, -105764, -539555, -23085,
- -93952, 136902, -102542, -175557, 535797, 734976, -689342, -1242856, -359704, -626528,
- 335007, 889595, -618475, -628139, 0, -129923, -129386, -223875, -152471, -766115,
- 335544, 272730, -99321, 277025, -395137, -5369, 157840, -350577, -93952, 24159,
- 153545, 35970, -51003, -149787, 49392, 59593, 193274, -67646, -15032, -114890,
- -111669, 100395, -25233, -49929, 1611, -537, 159451, 194347, 5369, 47782,
- -24696, -1074, 45097, 150861, 76773, -111669, 27380, -22012, 4832, -2684,
- -39728, 28454, -14496, -25770, 22549, -61203, -63888, 19864, -9127, 41876,
- 11811, -23085, 42950, 27380, -1611, 39728, 37044, 16643, -9127, 1074,
- -3758, -24159, -21475, 29528, 7516, -25233,
- },
- {
- -828929, 1702418, 215285, -347892, 163746, -1178432, -1590749, 863825, 154082, -23622,
- -546535, 41876, -207769, -181462, 115427, 223338, 82141, -261993, 154619, -654446,
- 92879, 286152, -155156, -22012, -111669, -188442, -105764, -31675, -60130, -111132,
- -190589, 52076, -139050, -306553, -35433, -205622, -109522, 46708, -139050, -92879,
- 360777, 164819, 303332, 119722, 139050, 277562, -34897, 134218, 89121, -3758,
- -96100, -97711, -86436, -54761, -101469, -26844, 52076, 42413, 109522, -69256,
- -32749, 25233, 10737, -96637, 28991, 57982, 46708, 63351, -46708, -93416,
- 115964, 68183, -77309, -49392, 9127, 4295, 15032, -42950, -19864, -26844,
- 33286, 70330, -1074, -16643, -34360, 45097, 73551, 16643, -2684, 28991,
- -3221, -1611, -38118, -21475, -17180, -39192,
- },
- {
- 170188, 1130113, 219580, 51540, -102005, -193274, -26307, -126702, -225486, 348966,
- 96637, -89121, 287763, 1878511, -3661460, 1582696, -1401233, 47245, -6979, -152471,
- -674310, -214748, 112743, -245350, -197569, -694711, -492848, -7516, -276489, 326954,
- 215285, 266825, 78383, -44560, 53150, 122943, 47782, 45634, 8053, 156766,
- -4295, -140123, -115427, -15569, 97711, 101469, 44023, -137976, -144418, -1611,
- -160524, -7516, 39728, 78383, 5369, 50466, 37044, 10201, -81604, 37044,
- -165356, -116501, 23622, -38655, -20938, 52613, 79994, -67646, -2147, 8590,
- -17717, 74625, 19327, -30602, 8053, -40802, 72478, -19327, 21475, 537,
- -106837, 11274, 31139, 11811, 44023, 41339, 32749, -48855, 1074, 14496,
- -54224, -26307, 32749, 14496, -24696, 18254,
- },
- {
- 278636, -1850057, 1111860, -488553, -710817, -2444373, 233539, 263604, -79994, 371515,
- 107374, -1091995, 173946, -557809, 450972, -705985, -42950, 88047, -373125, -105227,
- 827855, 57445, -20938, -389768, 362925, 363462, 213675, 517544, -237297, -80531,
- -12348, -148176, 3221, 171799, 123480, 213675, 184684, 44560, -105227, -69793,
- 53687, -42413, 178241, -82141, -38118, 189515, 333934, -102542, -44560, -61740,
- 301185, -30602, -135828, 75699, -139586, -34897, 83215, -47245, 71941, 76236,
- -11811, 84289, 13422, 110059, -6979, 19864, 42413, 57445, -17180, 2684,
- -10737, 71404, 1074, -58519, -65498, 41339, 31675, -17717, -22549, 30602,
- 0, -23085, -4832, 21475, -3221, -32749, 15032, -75699, -2684, 33823,
- -22549, 33823, 8590, -1611, -3221, -8053,
- },
- },
- {
- {
- -333397, 5885179, 84826, 603443, -239444, -40265, -204548, 121870, -74625, 35433,
- 13959, -122943, 1030792, -134755, -732292, 466004, 275415, 105764, 802622, -610422,
- 159451, -99858, 770410, 450435, -23085, 16106, -91805, -135291, 350577, 530428,
- 58519, -267899, 227096, -337155, 54224, 82678, 86973, 76236, -139050, -256624,
- 99321, -46708, 54224, -268972, 76773, -93952, -82678, -113280, 52076, -43487,
- 9127, 36507, -15569, 21475, 111669, -75162, -77309, -90731, -33286, 28454,
- 61740, 4295, 90194, -1611, -52613, 38118, 4295, -19864, -3221, 88584,
- -22012, -28991, -22012, -9664, 15569, 21475, -25770, -1074, 35433, 26844,
- -25233, -11811, 37581, 56908, 28991, 2684, -17717, 13422, 8590, -24159,
- -24696, 33286, -6442, 12348, -18254, -24159,
- },
- {
- 3427921, 24433532, 891743, 37581, -250182, -10201, -381715, -996432, -682363, 4295,
- -31139, -166967, 400506, 306016, -474594, -659814, -246961, -149250, 354872, -419296,
- -374736, 379568, -128849, -316754, 3758, 360777, -408022, -49929, 149250, 83215,
- 326418, -144955, -207232, -135291, 164819, 174483, 61740, 91268, -204548, -272730,
- -165356, 149250, 163209, 23085, -4295, -15032, -53150, -23085, -335544, 151934,
- 70330, -101469, 48318, 156766, 31139, -8053, -66035, 53150, -31139, -43487,
- 82141, 26844, 31675, 54224, -5369, -71404, -32212, 39192, 8590, 55298,
- -11274, -28991, -26844, 24696, 4832, -50466, 39192, -25770, -33286, -6442,
- 41876, -1074, -35970, -1074, 62814, -23622, -54761, 37044, -14496, 9127,
- -12348, -537, 12885, 11811, -5369, 3758,
- },
- {
- 114890, 4708895, -2248416, -1087701, 1323387, -85899, 193810, 302258, 82678, -167504,
- -387621, -150861, -528281, 44023, 326954, 238371, -284542, 293668, 313533, 86436,
- 138513, -297427, -42413, -143345, -359704, -34897, 133681, 292058, -6979, 19864,
- -98784, 74088, 251256, -13959, 191126, 10737, -19327, -55298, 273804, -35433,
- -259309, 71941, 30065, 40802, 91268, -156229, -184147, 227096, 140123, 215285,
- -54761, -183610, -129923, 49929, -47245, -74088, -10201, 106837, 115427, 3758,
- -57445, 71404, 88584, 23085, 41339, 45634, 11811, 27380, 6979, 49392,
- 22012, -25770, 35970, 2684, -3758, -10201, 45097, -19327, -1074, -28991,
- -3221, -22549, 25233, 10201, -51540, -13422, -6442, -26844, 1611, 2684,
- 537, 23085, 13959, 26844, 2147, 6442,
- },
- {
- -255551, -1664300, 100932, 132607, 132607, -41339, -53687, -1074, 84289, 61740,
- 53150, -53150, -456340, -1023276, -1258425, 1705102, 532039, 474057, 1008780, 134218,
- 237834, -1097901, 126165, 398895, -296890, -170725, 96100, 520228, -399432, -674310,
- -121870, 590021, 31139, -443992, -140123, 129923, 122407, -233002, 157303, -25770,
- -101469, 46708, 4832, -31139, -113817, -5369, 60130, -9664, -32212, 131533,
- 74625, -92879, 125091, 40802, 123480, 113817, -66572, -30602, 89657, -85362,
- -62814, -57445, -3221, -38655, 55835, -2147, 6979, -42950, 75699, 36507,
- -30065, -92879, -41339, 27917, 27380, -62277, 27380, 59056, 27380, -6442,
- -6979, -1074, 17180, -5369, 8590, -34897, -17717, 16106, 37581, 15569,
- -4832, -9127, 28454, 20401, -11811, 17717,
- },
- {
- -2121714, 19828254, -1302986, -256087, 264141, 1611, 424128, 25770, -207769, -137439,
- 4832, 502511, -358093, -129923, 214748, -89121, 100932, 191126, -150324, 219580,
- -211527, -195421, 446677, -441845, -266825, 223338, 267899, -119722, 110059, -135291,
- 96100, 155693, -315680, -117575, -190052, -42413, -398895, -530428, 171799, 101469,
- -51003, 121333, 86973, 265214, -198642, -63351, 2684, 9664, -35970, -98784,
- 36507, 152471, 43487, -106300, -49929, 94489, 78383, -129923, -76236, -61740,
- 1074, -100395, -33823, -7516, 9664, -71941, -42413, -107911, -37044, 79994,
- 12885, -94489, -62277, -73551, 46171, -5369, 9664, 75699, -57445, -1074,
- 28454, 17717, 14496, 11274, -62277, 9664, 12348, -4295, -17180, -18254,
- 4295, -22549, 537, -15569, -25770, 7516,
- },
- {
- -290984, 283468, 363998, -121333, -71941, -56908, -41876, -41876, 195421, 115964,
- 80531, -81604, -118648, -271657, -580894, -19327, 1319629, -201863, 239981, 821949,
- 569083, 368830, -379568, -350577, -957241, -864362, -542777, -693637, -84289, 1226750,
- -289373, -90731, -68719, 8590, 122407, 208306, 199179, -130997, 269509, -69256,
- -67646, 77309, -71404, 113280, 66572, -17717, -1074, -59056, -60666, -15569,
- 24696, 129386, -41876, 62277, 27380, 65498, -74088, -78383, 17717, 9127,
- 16643, -43487, 97711, 18790, 9127, 17717, -88584, 6979, 26844, -38655,
- -40802, 113817, 12885, -23085, 1611, 27917, 66572, 38118, 32212, -32749,
- -8053, 42413, -33286, -24159, -14496, 10201, -5369, -4832, -537, 16106,
- -1074, -49392, 5906, 28454, -2147, -3221,
- },
- {
- 3594888, 13654238, 179315, 402116, -478352, 92342, -43487, 403727, 82678, -131533,
- -29528, 240518, -19864, 424128, -401579, 250719, -52613, 162672, 93416, -267362,
- -78383, -122943, -17717, -191126, -69256, -57982, -181462, 256624, -561567, -196495,
- 120259, -109522, 206158, 89121, 262530, -149250, 42413, 48855, 18790, 5369,
- -54761, 170725, -64961, -198642, 114890, -90194, -46171, -197032, 52076, -38655,
- -8590, -81604, -53687, 76773, -191126, 26844, 52076, 48855, 81068, 65498,
- -3758, -19327, -11274, -33286, -62814, 28991, 87510, 54224, -61740, -2147,
- -2147, -102005, 53150, 114354, 9127, -55298, 3758, 32212, -7516, 22012,
- 36507, -22012, 27380, 31139, -42413, -43487, 53687, 27380, -5369, -27380,
- 7516, 35433, -36507, -12885, -19864, 3758,
- },
- {
- -340376, -319975, 1202591, 184684, 115427, -96637, 1074, -148176, 98247, 145492,
- -44560, -190589, -387621, -135828, 3502546, 872415, -654446, -740345, 30602, -1070521,
- -610959, -181999, -146029, -202400, 883153, -64961, -595390, 448287, 96637, 137439,
- -68183, -108985, -227633, 158377, -373662, 190052, -32212, 154619, -63351, 26307,
- -39728, -39728, -6442, -162135, -105764, 3758, 135291, 26844, -173409, 88584,
- 91805, -140123, -11811, -26844, 107911, 8053, 26307, 122943, -139050, -163746,
- 24159, 35970, 75699, 10201, 15569, -45097, -53687, 537, -38655, 4295,
- -42950, -12885, -13422, -4295, 46171, 9664, -14496, 84826, 54224, 24696,
- 48318, -54224, -28454, -46171, -10201, 27380, 17717, 25770, -23085, 22549,
- 37044, -30602, 10737, 2684, -2147, -3221,
- },
- {
- -5931350, 30662308, 870805, 1464584, 194884, 95563, 231391, -231928, -369904, 451508,
- 112206, -317291, -841277, 152471, 1282585, -20938, 651224, -258235, -150861, -56908,
- 435939, 183610, 5906, 396748, 103079, 80531, 215822, 209917, -330712, -18254,
- 49392, 243739, -74625, -99321, 34360, -207232, -284542, -151398, 568009, 110595,
- 104153, 57445, 53150, 64961, -62277, -158914, 294205, 45634, -118648, -53150,
- -38118, 6442, -67646, -54761, 92879, -21475, -104690, 74088, 89657, -67109,
- 15032, 71941, 41876, 10201, -85362, -133681, 4295, 25770, -57445, 3758,
- 8053, -64961, -34897, 29528, 37044, -45634, -62814, 31675, 17180, -3221,
- -44023, 19327, -44560, 23085, -41876, -13422, 4832, 21475, 33286, 31675,
- 4832, -2147, -16643, -11811, 31675, -3758,
- },
- {
- -91805, -815507, 1065689, 112743, -221191, 609349, 358630, -459562, 144955, 261456,
- 255014, 4295, -229244, 140123, 676994, 11811, -181462, -830539, 1042066, 849330,
- -387084, -657667, -49392, 266825, 741419, 164283, 151398, 446140, 111669, 317291,
- 270046, -583579, 55835, 132070, -70330, 37044, -61203, 166967, 57445, 46171,
- -55835, 132070, -18254, -62814, -55835, 162135, -69793, -3758, -176094, -15569,
- 169651, 25233, -21475, 159451, -56908, -153545, -48855, 32749, 40265, 121333,
- 20938, -40265, -51540, -64961, -18254, -81604, -23622, 74625, 125628, 76236,
- -43487, 47782, 3758, -40265, 23085, -28454, -26844, -15032, -4832, -38118,
- -42950, -12348, 9664, 5369, 5906, 32749, -3758, -14496, -6442, -9127,
- 18254, 537, 11274, -1074, 20938, 27380,
- },
- {
- -767725, 13300977, -1040456, -2131915, -107911, 1236414, 845572, -541703, -389768, 123480,
- -14496, 42950, 311385, 477278, -110059, 229244, 129923, 261993, -51540, -282931,
- 158377, -431107, 123480, -208306, 226023, 242129, -100932, -258772, -12348, 209917,
- 279710, 41339, -207232, -240518, 11811, -236760, -73014, 239444, -90731, -53687,
- 284542, 108448, -101469, -537, -249645, -33823, 31675, 96637, -69256, -4295,
- 98784, 102542, 27917, 9664, -108985, -89657, -25770, -31675, 133144, -83215,
- -6442, 17717, -15032, -24159, -17717, 10201, -22549, -7516, -42413, 10201,
- 12885, -14496, 9127, 69256, 56371, 25233, 42950, -28991, -41339, -3758,
- -32749, 36507, -13422, -22012, 30602, -15032, 46171, -1611, 17180, -25233,
- -2147, 19327, -15032, -34360, -5369, 28454,
- },
- {
- 189515, -1405528, -5906, 290447, -61203, 118648, -200253, -230854, -428423, -3758,
- 132070, -182536, -97174, 533113, -399969, 275415, -560493, -826781, 411243, -226560,
- -530965, 297427, 24696, 329102, 290984, -710817, -28991, -397284, -473520, 0,
- 417149, -550830, -27917, -189515, 92342, -248034, 26844, -11811, 231391, 162672,
- 66572, -157840, -8053, 186831, 86436, 90194, 14496, -49929, 157303, -4832,
- 62277, -102542, -12348, 66572, 98784, -55835, 2684, -188442, -149787, -92342,
- 11811, 142808, 18790, -55835, -114354, 4295, 70867, -75162, 4295, 13959,
- 20401, 33286, 10737, 28991, 32212, 50466, 46171, 17717, -23622, -2147,
- -8590, 18790, -51003, -44023, -11811, -5906, -32212, -30065, -6442, 5369,
- -1074, 12885, 13422, -8590, -3758, 13959,
- },
- {
- 1272921, -2508261, 1316944, 1017907, 257161, -1347009, 1293322, 23622, -208306, -135828,
- 385473, -8590, 24159, -976568, -80531, -176631, -290447, 136365, -70330, 86436,
- 426276, 163746, 8590, -138513, -261456, 206695, 304406, 130460, 129386, -54761,
- 55298, 80531, -111669, -433792, 48855, -156766, 108985, -182536, -124554, 313533,
- 44560, -84826, -76236, 17180, -253940, -1611, -40265, -226023, -96637, 2147,
- -39728, 47782, 5369, 98784, 238908, 75699, 33286, 66035, -124017, -33286,
- 105227, -20938, -35433, -25770, 58519, 18254, -55835, -46708, -22012, 80531,
- -8590, -37581, -12885, 49929, 10201, 2147, -43487, -9664, 9127, 33286,
- 54224, -44023, -30602, 11811, 65498, 38118, -73551, -39192, -20401, -34897,
- -20938, -7516, 13959, 37581, 6979, 38655,
- },
- {
- 11811, 1735167, -897111, 282394, -130460, 169651, -82678, -94489, 161598, 100932,
- 184684, -34360, -514322, 1052267, 5405753, -970126, -1086090, 130997, -31139, -115964,
- -209380, -325881, -63351, 419833, -170725, -251792, -91805, -161061, 338229, 206158,
- 61740, -581431, -442919, 73551, 59593, -437550, 33286, -51003, -152471, 79994,
- -11274, 146566, 22012, 10201, 94489, -17717, -2684, 104153, -75162, -26844,
- 88047, 58519, 12885, -51540, -47782, 13422, -27917, -34897, -39728, 25233,
- 31675, 99321, -81604, -67109, 9127, 60666, -61203, 84826, 46171, 12885,
- -8590, -53687, 4295, 33823, -20401, 30602, -16106, -86436, 38655, -25770,
- 48855, 57445, -33286, -5369, -9664, -41876, -38118, 16643, 17717, -36507,
- 24696, 57445, 9664, -18254, 31139, 11274,
- },
- {
- -386547, -1686848, 594316, -823560, -454730, 1068373, -754841, 86436, 95026, 337155,
- -583042, 295816, 217433, 1025423, -2077690, 166430, 410706, 45097, -201863, 314606,
- -284005, -148713, 103079, 223875, 146566, -141734, -156766, 896038, 137976, -256624,
- 45634, 105764, -168041, -82141, 126165, 30065, -106837, -39728, 76236, 119722,
- 9664, 292595, -52076, -204011, -115964, 155693, -100395, 19327, 59593, 143345,
- 82678, 163209, 144955, 118112, -3221, -32212, -37044, -82141, 64961, 20401,
- 35970, 16643, -71941, -29528, -3221, -16106, -27917, 48318, -13422, 12885,
- -22012, -51003, -41339, 74625, 71404, -12348, -35970, -31675, 16106, -10201,
- -43487, -7516, 34897, -1611, 19327, 14496, -2684, 22012, 24696, -44023,
- 0, -11274, -11811, -2684, 17180, 20938,
- },
- },
- {
- {
- 102542, 5863167, -266825, 135291, -312459, 77309, -180389, 169651, -62814, 161598,
- -215822, 100395, 383326, -618475, 105227, -74625, -181999, 241592, 1292248, -424128,
- 431644, 641024, 440771, 180389, -77309, -79994, 102005, -82141, 92342, 323196,
- 102005, -60666, 258235, -191663, -212064, 19327, 16106, -265214, -294205, -291521,
- 49392, -77846, 27917, -74088, 267899, -117575, -130997, -133144, -55298, -59056,
- 0, -25770, -52076, 42413, 37044, -94489, -21475, -136902, 20938, 32749,
- 43487, 84289, 63351, 12348, -2147, 32749, -54761, -9127, 55298, 49392,
- -33823, -15032, -24159, 19327, 12885, -19864, -30065, 10201, 22012, -6442,
- -19864, 13422, 48318, 34897, 8590, -32749, -26844, 4832, 1611, -40265,
- 10737, 7516, -2684, 3221, -32212, -14496,
- },
- {
- -3292629, 15647103, 2916820, 79457, -517544, 196495, -229244, -929860, -192737, 376883,
- 281857, -14496, 236223, -213675, -656056, -500901, -66572, -138513, 414464, -425202,
- -385473, 156766, -45634, -25233, 67109, 108448, -353261, 115964, -45097, -60666,
- 66035, 9664, -28454, -80531, 122943, 365072, 171799, 98247, -319438, -178241,
- 61203, 155156, 143881, -79994, 1611, -124017, 63888, -134755, -214748, 252329,
- -130997, 13959, 198105, 88584, -54761, -22012, 96637, 100395, -41339, -45097,
- 117575, -9664, 31139, 68719, -88047, -50466, -22012, 60666, 39728, -4295,
- -34360, -41876, 1611, 6979, -61740, 3221, 25770, -46708, -22549, 4832,
- 32749, -16643, 5369, 25233, 42413, -64961, 3758, 26307, 0, 6442,
- -19327, 7516, 19864, -11811, 7516, 0,
- },
- {
- 477815, 10810433, 3737695, 359167, 1180579, -264677, 129386, -56371, -56908, -247497,
- -47245, 291521, -270583, -407485, -261456, 777926, 300111, 297427, 120796, 13422,
- 40802, -169114, -163209, -61740, -46708, 209917, -34360, -34897, -198105, 263604,
- 65498, -70867, 78383, -155156, -41339, -94489, -3221, 36507, 39728, -309238,
- -118112, 282931, 79994, 106837, 119722, -329102, -214212, 247497, -26844, 57445,
- -2147, 99858, -22549, 5906, -21475, 26844, 62277, 16643, 45097, 4832,
- 39728, 92342, 84826, 20401, 51540, -22549, -1611, -19327, 17180, 44560,
- -4295, -54224, 16643, 13422, 3221, 14496, 23622, 4832, 2147, -49929,
- 0, 11274, 35970, -14496, -42413, 3758, -30065, -12885, 15569, -17180,
- 18790, 19327, 15569, 5369, -4295, 10201,
- },
- {
- 293668, -2662343, -794569, 219580, -48855, -113280, -10737, -25770, -33823, 19327,
- 33286, -117575, -466004, -555125, -2455111, -293132, -630286, 280247, 170725, 114890,
- -229244, -966905, 128312, -63351, 30602, -990527, -485331, 766115, -214212, -482647,
- -36507, 688805, 118112, -327491, -254477, 76773, -109522, -100395, 160524, -150861,
- 20938, 4832, -57982, -120796, -68183, 124554, -42950, 46171, 124554, 69793,
- -55298, -35970, 51003, -22012, 121333, -25770, -83752, 50466, 5906, -89657,
- -12885, 28991, 1611, -19327, 50466, 2147, 20938, -41339, 41876, 3221,
- -82141, -43487, -11811, 40265, -11811, -18790, 77309, 56371, -12348, -26307,
- -14496, 19327, 1611, 9664, 0, -33286, -2684, 27380, 48855, -15569,
- 0, 27917, 41876, 16106, 4295, 21475,
- },
- {
- -501974, 24245628, 255551, -520765, -225486, -69256, 335544, 40265, -279710, -257698,
- 261456, 211527, -100395, 236760, 562104, 356482, -10737, 113280, 217433, 150861,
- -194347, -17180, 446140, -557809, 157303, 131533, 194347, -1185411, -690416, 158914,
- 353798, 129923, -9664, 67109, 5906, 75699, -383863, -537, 105764, 28454,
- 24159, 38118, -23622, -54761, -234076, 176631, 10737, 12348, 123480, -11811,
- 110059, 110059, -67109, -57445, -24159, 95563, -24159, -117038, -46171, -60666,
- -17180, -78920, 23622, -36507, -13422, -31139, 10737, -69793, -8053, 37044,
- -11811, -88584, -55298, 6442, 38655, -26844, 31675, 36507, -26844, 9664,
- 11274, 31139, 26844, -5369, -42413, 17180, 5369, -11811, -33286, -15569,
- -6979, -24696, 1074, -26844, 1074, 8590,
- },
- {
- -74625, 1322313, 163746, -171799, -79994, -47782, 55835, -82141, 128849, 1611,
- -32749, -24159, -254477, -870268, -71404, -405874, 201327, 405874, 1026497, 514322,
- 166430, 510027, 372052, -351114, -1362578, -322659, 35433, -336618, -552977, 324807,
- -491774, 6442, -24696, 79457, 138513, -130460, 170188, -51540, 157840, -59593,
- 195958, 55835, -6979, 147103, 54761, -34360, -27917, -1611, -6442, -54224,
- 56908, 59056, -99321, 29528, -2147, 52613, -70867, -22549, -26844, -41876,
- -54224, -27380, 103079, 8053, -11811, 6442, -32212, -5906, 12885, -53150,
- 18790, 89121, -38118, -23622, 42950, 26844, 73014, 39192, 13422, -45097,
- 21475, 2684, -60130, -26307, 2684, 11274, -5906, 537, 4832, 4832,
- -27917, -18254, 37044, 17180, 3221, -11274,
- },
- {
- -5995238, -432718, -285615, 957241, 666257, 72478, 69793, 93952, -334471, -124017,
- -101469, 31675, -28454, 168577, -309238, 255551, -149787, 94489, 126702, -199716,
- -66035, 136365, 35433, -30065, -3221, 172872, 182536, 98784, -341987, -113817,
- 193274, 121333, 150324, -131533, 91805, -198105, -100932, 40802, -3221, 60130,
- -69256, -33823, -110595, -100932, 102542, -140123, -267362, -185220, 103616, -70867,
- 17180, -15032, 18790, 64961, -48318, 139586, 70330, 4295, 62814, 39192,
- -33823, 6442, 9127, -18790, -26307, 71941, 65498, -37044, -74088, 17717,
- -35970, -102542, 91268, 66035, -20401, -28991, 9127, 2147, 6442, 29528,
- 6979, -5369, 43487, 17180, -69793, 6442, 39728, 6442, -20401, -16106,
- 37581, 8590, -18254, -8053, -17180, 5906,
- },
- {
- -59056, 941672, 775242, 307090, -53150, -131533, 44023, -164283, 80531, 26844,
- -252866, -163209, -439160, -799401, 971200, -1135482, -928250, -178778, -182536, -574989,
- 53687, 155156, -212064, -436476, 1074, -591632, -240518, 123480, -9127, 303332,
- -282394, -208843, -77309, 97174, -135291, 258772, -67109, 182536, 175557, 198105,
- 70867, -100932, 10201, -178241, -178778, 32749, 255551, -85362, -156229, 207232,
- 121333, -7516, -13959, 79994, 76773, 41339, 112206, 131533, -154082, -32212,
- 70867, 62814, 44560, 16106, -1074, -49392, 8590, 23085, -19864, 10737,
- 10201, 15032, -3221, 25233, 39728, -6442, 19327, 60666, 21475, -3758,
- -20401, -45097, -13422, -30602, 10201, 15032, 39728, 537, -13422, 44023,
- 5369, -10737, 2684, -10201, -1611, -10201,
- },
- {
- 4024384, 39221104, -810138, 2203318, 503585, 99858, 330712, -399432, -271120, 471910,
- -421444, -656056, -556735, 217433, 654983, -201863, 327491, -368293, 107911, 5906,
- 324270, -132607, -134755, 75699, -218506, 81068, 106300, 271657, 80531, 241055,
- 8590, 6979, -232465, -9664, 128312, -74625, 168577, -241592, 405338, 343597,
- 318901, 537, -54761, 128849, -59056, 135828, 216896, -198642, -124017, -53687,
- 32212, -24696, -25233, 26844, 65498, -73014, -105764, -537, -51540, -87510,
- 42413, 27380, 37581, -18254, -143881, -19864, 96100, -1074, -10201, 10737,
- -31675, -32212, 24696, 30065, 56908, -98784, -41339, 47782, 7516, -39192,
- -10201, 17717, -53150, -5906, -57982, -18790, 26307, 31675, 19864, -1611,
- -18254, 1611, -26844, 13422, 12885, -14496,
- },
- {
- 86436, -1574106, 580357, -598074, -291521, 805843, -229244, -486942, 6979, -38118,
- -78920, -383326, 108448, 244276, 888521, 611496, 724776, 144955, 1139240, 76236,
- -638876, 21475, 34360, -51003, 359167, -69793, -53150, 176631, 91268, 272194,
- 18254, -222265, 331786, 219043, -102542, 112206, 37581, 226560, -133144, 126702,
- 74625, 131533, -73014, -69793, 142271, 152471, 62277, -2147, -109522, 133681,
- 262530, 56908, 0, 44560, -180926, -40265, 54761, 24696, 73551, 92879,
- -10201, -23085, -84289, -45634, -59593, -61740, 42413, 84826, 100395, -20938,
- -26307, 12348, -42413, -15569, 23085, -30065, -52076, -25233, -20938, -47782,
- -26307, 3758, 31139, 5906, 18254, 6979, -22549, 3758, -6442, 18254,
- 0, 18254, 11811, -2684, 25233, 16106,
- },
- {
- 20401, 13781476, 234613, 372588, 517544, 273804, -955093, -960999, -537408, 226560,
- 106837, 158377, 390305, 200253, -393526, 523449, 362925, 391379, 90731, 224949,
- -28991, -277025, 73014, -155693, -40265, -74088, -197032, -120259, 154619, 3758,
- 4295, -60666, -102005, -144418, 222801, -209380, 59056, 186831, -163209, 147640,
- 221191, -67646, -130460, 24159, -156766, -5906, 537, 91805, -45097, -18254,
- 117575, 113817, -12348, -57982, -75699, -130460, -62814, 86973, 88584, -77309,
- 24696, 39192, -46171, -61740, 19864, -10737, -14496, -16643, -9664, 5906,
- 12885, -1611, 30065, 85899, 17180, 30602, 18790, -69793, -2684, 9664,
- -10201, 28991, -32749, 27917, 13959, 32212, 23622, 2147, 20938, -20401,
- 12348, 2147, -28991, -17717, 19864, 16106,
- },
- {
- -116501, -457951, 1041530, 188442, -9664, -147640, -396211, -114354, -165893, 71404,
- 5906, -185757, -147640, -746787, -1678259, 943282, 115964, -489626, 244276, 345745,
- -143881, 304943, -26307, 90194, -54761, -513785, 12885, -128312, 120259, 774168,
- 66572, -292595, -216359, -151398, 231391, -186831, -39192, 125628, 166967, 186294,
- -5906, -74625, 126702, 105764, -62814, 38118, -120796, -32212, 185757, 68183,
- 108448, -124017, -11274, -39728, -5369, -89657, -85362, -281320, -66572, -71404,
- 99858, 56908, -12348, -117038, -81068, 89657, 16643, -35970, -23622, 11811,
- 39192, -1074, 25233, 30065, -9127, 43487, 28454, -13422, -7516, -15032,
- -4295, 32212, -57445, -48855, -2684, -22012, -25233, -12348, 10737, 3758,
- -1074, 17717, 13959, -22549, -6442, 22012,
- },
- {
- -137976, -4002910, 2858301, 471910, 336081, 202400, 1491964, -754841, -343061, 129386,
- 329639, 1074, 686658, -1018444, -214748, -174483, -206158, 284542, -185220, 576599,
- 189515, 107911, -52076, 106837, 50466, 435402, 71941, -64425, 88584, 7516,
- 123480, -69793, 27380, -124554, 277562, -54761, 215822, 47245, 17180, 143345,
- -134755, -90731, -29528, -129923, -190589, -102542, 15032, -286152, -32212, -74625,
- 39192, -4832, -22549, 220654, 139050, 49929, -21475, -5369, -122407, 95563,
- 122407, -41876, -36507, -6979, -9127, -15032, -47245, -31139, 24696, 66035,
- -74625, -35433, 53150, 52076, -21475, -12348, -21475, 34360, 5369, 28454,
- -11274, -54761, 9127, 25233, 34360, -22549, -90731, -16643, -9664, -24696,
- -8053, 2147, 45634, 28991, 16106, 29528,
- },
- {
- 64961, 1305133, -739808, 601832, -32212, 97174, -22549, 23622, -77309, -205085,
- 303869, -5369, -17717, -1149441, 2260227, -689879, -638876, -228170, 79457, 441845,
- 265751, -174483, -136902, 365609, 56908, 150324, -81068, 53687, 56908, -137439,
- 262530, -185220, -293668, 156766, -108985, -227633, 23622, -163746, -120259, -107911,
- 4832, 168041, 48318, -11811, 46708, -113817, 28991, 136365, 56908, -7516,
- 217433, -19864, -90194, -45634, -50466, -49392, -32212, -18254, -2147, 3758,
- 151934, 34360, -100395, -28454, 17717, -35970, -76236, 93416, 24696, -6442,
- -15032, -45097, 1074, 26844, 4832, 62814, -58519, -10737, 1074, -6442,
- 84826, -2684, -24159, -2684, -37044, -34897, -23085, 46708, -5906, -5369,
- 56371, 32212, -30065, -12348, 30602, -22549,
- },
- {
- 152471, -694711, 68719, -1489817, 139586, 2609730, -258235, 118112, -128849, 77309,
- -372052, 305480, -135291, 342524, -2239826, 381715, 107374, -97711, -24159, 41876,
- -546535, -111132, 76236, 354872, -100395, -170725, 66572, 568546, -144955, -231928,
- 199179, 225486, -242129, -248034, -76236, 121333, -41339, 69793, 29528, 9127,
- -58519, 161061, -294205, -194884, -42413, 25770, -147640, 61740, 119722, 68719,
- -28991, 76773, 88047, 44560, 116501, -12348, 5369, 21475, -8053, -64961,
- -17717, -19327, -65498, -48318, -4832, -46171, -15032, 5906, -5369, 52613,
- -13959, -42413, 24696, 93952, 18790, -52076, -27380, -2684, 33286, -16643,
- -16106, 4832, 16643, -10201, 27380, 36507, -11274, 55298, -10201, -38655,
- 15569, -26307, -9127, 0, 5906, 8053,
- },
- },
- {
- {
- -41339, 1937567, 1728724, -171262, 119722, 53687, -76773, -62814, 0, -120259,
- -176631, 48855, -549219, -35970, 1537598, -1037772, 268435, -145492, 328565, 294205,
- 476205, 86973, -524523, -294205, 141734, 193810, -7516, -42413, 106837, -386010,
- -239444, 253940, -251256, 404801, -55298, 96637, -177167, 251792, 136365, -59056,
- -96637, -86436, -20938, 90194, 75162, -7516, 61203, 93952, -88047, -27380,
- -152471, -38118, 11274, -119185, -118112, 36507, 51003, 41876, 68719, 25770,
- -66035, -52613, -84826, 38655, 10737, -63888, -46171, 34360, -30065, -82678,
- 13422, 33823, -10201, 33823, -537, -5906, 12348, 11811, -37581, -33286,
- 18254, -11274, -35970, -67109, -39728, 9127, 30065, -12348, -10201, 26844,
- 17180, -20401, 537, -5906, 19327, 27917,
- },
- {
- 2738042, 5185636, 3640522, 2403571, 235149, 49392, -144955, 514322, 588947, 67109,
- 561567, 15569, -78383, 11274, -627602, 461709, 361314, -70330, -162672, -340913,
- -173946, -71404, 396748, -61740, 111669, -183073, 84826, 314606, -84826, -78920,
- -234613, 19327, -42950, 494995, 56908, -22549, 126165, 266825, 143881, 56908,
- 157840, -43487, -115427, -61740, -137439, -27917, 183610, 26844, 164819, 1074,
- -83752, 8590, -84289, -56908, -35970, -15569, -42950, -38655, -15569, -11274,
- -68183, -66035, 40802, 31139, 25233, 68719, 32212, -27917, -58519, -54224,
- 13422, 8590, 57445, -37044, 5906, 64961, -54761, 13959, 52613, 8590,
- -48855, -13959, 36507, -18790, -44023, 28991, 37581, -35433, 24696, -3221,
- 5906, 10737, -9127, -16643, 5906, -8590,
- },
- {
- -754304, 18666464, 1849520, -938450, -1495722, -32212, -117575, -328028, -21475, 211527,
- 437013, 220117, 564251, 507343, -671089, 554051, 426276, -195421, 513249, 207232,
- 148713, 299574, -380641, 105227, 24159, -171262, -286152, 41876, 229781, 139050,
- 186831, -96100, -307627, 86973, 106300, -150324, -16643, -18790, -198105, 23622,
- 0, -89121, 40265, 29528, -194347, 9127, 119722, -17717, -198105, -154082,
- 195421, 223875, 73551, -78920, 64425, 56371, -71941, -152471, 28991, 69256,
- 57445, -156229, -9664, -4832, -6979, -90194, -45097, -41339, -14496, -37044,
- -17180, -34897, -17717, -33823, -14496, 42413, -3758, 18254, 48855, 13959,
- -4295, 10737, -20401, -37581, 45634, 3758, -8053, 36507, 8053, 19327,
- 5906, -21475, -11274, -11274, 4832, -8590,
- },
- {
- -308164, -3316252, 914828, -175020, -118648, 86973, 61203, 6979, -210453, -9127,
- 76236, 23085, -155693, -410169, -2440615, -348966, -215285, 1513976, -714575, -40265,
- 341987, -422517, -238371, -407485, -8053, -892816, -160524, 200790, 202937, 331786,
- -211527, 166967, -86436, -199179, 84289, -114890, -219580, 118648, -110059, -158914,
- -17717, -185220, 55835, 53687, 61203, 1611, -118112, 26307, -6979, -102005,
- 86973, 59593, -127238, -9664, -21475, -118648, 85899, 62277, -63351, 44023,
- 53150, -11274, -12348, 42413, -77846, -54224, 20401, -6442, -97174, -42950,
- 58519, 99321, 537, -34897, -11274, 54224, -22012, -55835, -51540, -19327,
- 9127, -4832, -28454, -3758, -13959, 37581, 23622, -23085, -10737, -11811,
- 20401, -537, -37044, -8590, 7516, -22012,
- },
- {
- 3636227, 22993644, -2105608, -1420560, -56908, 18254, 22549, 141197, -66572, 86973,
- -184147, -350040, 283468, 181999, 685047, 597537, -219580, 256087, 392453, 124017,
- 46708, 92879, -25233, 277562, 568009, -266825, -59056, -1265405, -61740, 470299,
- 135828, 87510, 189515, 19327, -38655, 118112, 526134, 494995, -158377, -26844,
- 347355, 68719, -181462, -183073, 92879, 52076, -133144, -54224, 97711, 172872,
- -62814, -177704, -63351, 68719, 56371, -54761, 44560, 108448, 34360, -52613,
- -55298, 32212, 6442, -53687, -28991, -4295, -59056, 42413, 13959, -54761,
- -22549, 74088, 89657, 31675, -51003, -13959, -23085, -50466, 36507, -22012,
- -38118, 20401, -3221, 2147, 47782, 4832, -8053, -1074, 6979, 8590,
- -5369, 25770, 7516, 11811, 25770, -9127,
- },
- {
- 252866, -191663, -324270, 206158, 8053, 39728, 6442, -122407, -98247, -38118,
- 154082, 97174, 96637, 347355, 1264331, -475131, -746251, 744103, 115427, 1217086,
- 18254, 570694, -491237, -150324, 178778, 115964, -128849, -2684, -348966, -388158,
- -224949, 105764, 27380, -361851, -234613, -60130, -76236, -117575, -59056, 155693,
- 11811, -68183, 206158, 6979, -106300, 25770, 52613, 121870, 81068, -26307,
- -34360, -93952, 84826, 24159, -112743, -61203, -47782, 67646, 20401, -49392,
- -5369, -10201, 24159, 15569, -2684, -34897, 59056, 8053, 24159, 45634,
- 6979, -53687, -54224, 4295, 21475, -31139, -52076, -61203, -23622, 4295,
- 14496, -57982, 3758, 19864, 13959, -23085, 13422, 0, -10737, -8053,
- 6442, 48855, -18254, -40265, 2147, 4295,
- },
- {
- 5841156, -18599892, 1120450, 1937030, 185757, -165893, -32749, -166967, -201863, 82678,
- -96100, -212601, -3221, -288837, 203474, -224949, -250182, -191126, 286689, 490163,
- 281320, 256624, -105764, 163746, 169651, 236760, 32212, -208843, 250719, 74088,
- 78920, -55298, 38118, -134755, -229781, -212601, -168041, 517007, -31139, -234613,
- -41876, -139586, 20938, 200253, -99321, 23085, -78383, 38655, -15032, 91805,
- 64961, 110595, 126702, -49392, 35970, -10201, -57982, -57445, -66035, -106300,
- -74625, 22549, 9127, 16643, 34897, -27917, -93952, -52613, 42950, -31675,
- -27917, 90731, -12348, -100932, -2684, 46171, -44023, -17717, 36507, -40265,
- -9127, 40265, -16106, -35970, 39728, 27917, -57445, -10201, 11811, 31675,
- 1074, -24159, 24159, 4295, 17717, -2147,
- },
- {
- 322123, 278636, -998043, 289910, -79994, 92879, 4295, -104153, 2147, -97711,
- -38655, 198105, 97711, -304406, -729608, -1150514, 275952, 790811, -518617, 184684,
- 909996, 632434, -167504, 337155, -185757, 162672, 27917, 31139, 160524, 98784,
- -55835, 223338, 147640, -21475, 96100, 187905, -4832, 111132, -41876, 99858,
- 150324, -157303, 101469, -66035, -42413, -46708, -130997, -30602, 307090, -4295,
- -77309, 90731, 22549, -35970, -156229, 15032, -18790, -61203, 53150, 39728,
- -20938, -48855, -48855, 8590, 25770, 85362, -537, -40802, -24159, 28454,
- 4295, 36507, 13422, 10201, -42413, 15032, -9127, -50466, -19864, -37581,
- -27380, 54224, 11274, 23085, -5906, -12885, 0, -22012, 27917, -8053,
- -28991, 22012, -7516, 0, -3758, 3758,
- },
- {
- -287226, 41953240, 3357054, 2163590, -106837, -86973, -38118, 169114, 155693, -512175,
- -172872, 299574, 500364, 139586, 633508, -284542, -833761, 188442, 103079, 113817,
- -95563, 93416, 381715, -583042, -93416, -67109, -63888, 219043, 4832, 143345,
- -188979, -245350, 42950, 215285, -84289, 266825, 97711, 139586, -350577, 207769,
- 236223, -254477, 3221, -97711, 2147, 258772, -264141, -188442, 107911, 84826,
- -111669, 19864, -45634, -64961, -16643, 55298, 10201, -115964, -130997, 50466,
- 79457, 3221, -2684, 9127, 79994, 120259, 26307, -59056, 31675, -21475,
- -25233, 48855, -537, -45097, -33823, 2684, 25770, -25233, -9664, -18254,
- 31675, -8590, 30065, 25233, 17717, 31675, 5369, -34897, -22012, -40802,
- 3758, 20401, 15032, 4295, -31139, 2684,
- },
- {
- -89657, -940061, -419833, -105227, 440771, -619012, -738198, 191663, -163209, -271120,
- -325881, 198642, 374199, 288837, 668941, -145492, 1265405, 791348, -755377, -699543,
- 401043, 543313, -600222, -655519, 122407, -228170, 55835, -367757, 414464, 66035,
- 32212, 263067, -206158, 71404, -24696, -64961, -141734, -263067, -238371, -19327,
- -54224, -67646, -178241, 97174, 134218, -181462, 102005, 40265, 117038, 3221,
- -106837, -19864, -23085, -91805, 170188, 176094, 24696, -33286, -20401, -89121,
- 10737, 51003, 55835, 80531, -8590, 69256, 0, -68719, -100932, -83752,
- 16106, -17180, 26307, 31139, -40802, 17717, 27917, -3758, 3758, 36507,
- 20401, 12885, -7516, -17180, -23622, -38655, 8053, 14496, 7516, -5369,
- -23085, 11811, -13959, -6979, -22549, -22012,
- },
- {
- 598074, 12178380, 2790655, 521302, 217970, -1365263, -2432562, 158914, -16106, 32212,
- 142808, 248034, -90731, -342524, 119185, 464393, 14496, 66572, -4832, 280247,
- -128312, -138513, -177704, -57445, -397821, -64425, -42950, 25233, 184684, -314069,
- -336081, -142271, -41339, 226023, -64425, 47782, 235686, -262530, 79994, -42950,
- -407485, -103079, 45097, 78383, 129386, 15032, -27380, -236223, 0, 70867,
- 5906, -16643, -103616, -75162, 115964, 68183, 63888, -46171, -102005, 55298,
- 30602, -13959, -4295, 35433, 2147, -17180, 39728, 14496, -5906, 4295,
- 27917, 22549, -1074, -46708, -45634, -12348, -53687, 19327, 25233, 5906,
- 36507, -33823, 18790, 21475, -28454, -3221, -46171, -10737, -1074, 24696,
- 2147, -17717, 3758, 27917, 2147, -24159,
- },
- {
- 106300, 812823, -81604, 84826, -222265, -184684, 83752, -85362, -44560, 68719,
- -255014, 187368, -491237, -1261647, -63351, 922344, -27380, -699543, -723702, 290447,
- 844498, 482110, -741419, -487479, -980326, 521302, 128849, 64961, 517007, -24159,
- -249108, 477815, 66572, 167504, 25770, -8053, -55298, -256087, -104153, 27380,
- 102542, 137439, 26844, -118112, -176094, 13959, 78383, -53687, 69256, -68183,
- -52076, 33823, -31139, -132607, -107374, -41339, 19864, 96637, 157840, 55835,
- 49392, -67109, 14496, 31139, 96637, -34897, -10201, 37581, -41876, 11811,
- -20401, -18254, -537, -22012, -38655, -55835, -79994, -8053, 13422, 22012,
- 13959, -11274, 35970, 16643, 15569, 26844, 42413, 28454, 13422, -4832,
- -5906, -16106, -19864, 6979, 7516, -11274,
- },
- {
- -1414655, -1234266, 2554969, -594853, 78920, 463856, -1118839, -431644, 247497, 351114,
- -488553, 25233, -195421, 591095, -277562, 330176, 126702, -219043, 60666, -100395,
- -168577, 229244, -108448, 137976, 224412, 64425, -166430, -386010, -264677, 8053,
- -11811, -156229, 51540, 76773, 74088, -92879, 5369, 212601, 12885, -155156,
- 105227, 213675, 84826, 115427, 175020, 212064, 2684, 88047, 152471, -178778,
- -10201, -102005, -110595, -19327, -117575, -105227, -13959, -9127, 129923, 70330,
- 537, 19327, -44560, 1611, -76773, 22012, 66572, 53150, 19327, -79994,
- 15032, 51540, -537, -45097, -13422, -21475, 44560, -537, -23622, -36507,
- -31675, 53150, 38118, -4295, -60666, -28454, 60666, 36507, 14496, 36507,
- 11811, 13959, -12348, -32749, -9127, -45634,
- },
- {
- -152471, 987306, 751082, 333934, -84826, -181999, -57445, -18790, -191663, -126702,
- 71941, 94489, 741956, -1459752, -4961224, 1676648, -584652, -496069, 615791, 282931,
- -404264, -107911, -526670, -116501, 173946, -47245, -138513, -37581, -462246, 166430,
- 360777, 461172, 124017, 66035, 28991, 200790, 95563, -9664, -130460, -23622,
- 149250, -258772, -86436, 102005, -41876, 85899, 44560, -78920, -71941, 52613,
- 32749, -168041, -18254, 97174, -1611, -9127, 33286, -31675, -2684, 32212,
- -62814, -149250, 9127, -6979, -56908, -13422, 34360, -48855, -33286, -29528,
- -16643, 84826, 1074, -24696, 30602, -9664, 24159, 77309, -28454, 15032,
- -41339, -67646, 41876, 10201, 12885, 51540, 40802, -12348, -22549, 44560,
- -22549, -45634, -10737, 18254, -26844, -18254,
- },
- {
- 369904, -872415, 286152, -724239, 33823, -251256, 361851, 208306, 122407, 55835,
- -299037, -585726, -415001, -1452773, 365072, -307627, -272194, -325881, 76236, -198642,
- 97174, 77309, 145492, -222265, -71941, 527207, 4295, -317291, 177167, -117038,
- 183610, 97174, -263604, 82678, 12348, 426812, 179315, -1611, -232465, -158377,
- -128849, -76773, -132607, 53150, -537, 52076, 260382, -6979, -4295, -86436,
- -7516, -103079, -158914, -37044, 87510, 4832, 147103, 39192, -61203, -6979,
- -41339, 44560, 45097, 71404, -3758, 5369, 40802, -27380, 53687, 21475,
- 7516, 73014, 61740, -48855, -97711, -12348, 32212, 26844, 9127, -3758,
- 52076, -26844, -31139, 16106, 7516, -3758, -2684, -25233, -53687, 34897,
- 4832, 2147, 16106, -1074, -10737, -24159,
- },
- },
- {
- {
- 219580, -3122441, -2285996, -19327, -33286, -37581, -78383, -13959, 185757, -108985,
- 39728, -258235, -359704, -92342, 1230508, -253940, 352724, -865973, -750546, 262530,
- 595927, -444529, -369904, -350577, 307090, 434865, 41339, 180389, 169114, -392453,
- -481573, 0, -26307, 469762, -24159, 3758, 70867, 526670, 121870, 62277,
- -132607, -37044, 1611, 31139, 1074, -97174, 1074, 105764, -24159, 10737,
- -157840, -31675, 43487, -121870, -35970, 102005, 32212, 124554, 8590, -41339,
- -60666, -91805, -58519, 36507, -18254, -56371, -2147, 5906, -77309, -31139,
- 41876, 26307, -14496, 10737, -15032, 13422, 15032, -16106, -46708, -2147,
- 23085, -30602, -44560, -46171, -21475, 38655, 32212, -8590, 2684, 42413,
- -20938, -8590, -7516, -2684, 31675, 22012,
- },
- {
- -2699924, -1453310, 630286, 428423, 95563, 1074, 119185, 753230, 293132, -231391,
- 325344, -50466, 8053, 557272, -129923, 695248, 137439, -214748, -220117, -254477,
- 105764, -154082, 251256, -244276, 36507, -78383, 228707, 355409, 8590, 34897,
- -165356, -6979, -1074, 294742, -156766, -280784, 116501, 424665, 250182, -28991,
- 3758, -90194, -13422, 37581, -97711, 91805, 89121, 191126, 166430, -16643,
- 22012, -89121, -146566, -22012, 20401, 22012, -130997, -41339, -23622, -5906,
- -67646, -10201, 41339, -12885, 71404, 38655, 15569, -46171, -48855, 27380,
- 13422, 6442, 30065, -35970, 58519, 8053, -55298, 24696, 27917, 1074,
- -37044, -1611, 12885, -34360, -26844, 62814, -9127, -20938, 9127, -1611,
- 13959, 3758, -15569, 2147, -3221, -5369,
- },
- {
- 383863, 17714592, -869194, -155693, -716186, 107911, -182536, -84826, 160524, 146029,
- 212601, 11811, 693100, 740882, -1002875, -74625, -77846, -6979, 813896, 114354,
- 195958, 392453, -110595, 153545, -149787, -386547, -263604, 82141, 383863, 86436,
- 117038, -177167, -108985, 268435, 45097, -236223, -96100, -32749, -7516, 314606,
- 52076, -181462, -10201, -2147, -146029, 178241, 2684, -203474, -114890, -54761,
- 170725, 35433, 31675, -26307, 66572, -12348, -59593, -34360, 37044, 17180,
- -48855, -148176, -21475, -51540, -6979, -37581, -41876, 3221, -14496, -27380,
- 8590, -9127, -13959, -20938, 4295, 16643, 5906, -9127, 41876, 28454,
- 1074, 1074, -16643, -9127, 48318, 4295, 20938, 28454, -6979, 18790,
- -26307, -20401, -16643, 537, 8590, -12348,
- },
- {
- 140660, -3056406, 453119, -412854, -54224, 107374, 56908, 22549, -171799, 5906,
- 64425, 188979, 49392, -886374, -1721745, 731218, 280784, 677531, -1166084, 267362,
- 403190, -641024, -263604, -126702, 52076, 330712, 815507, 285078, 45634, 175020,
- -287226, 181999, 53687, -5369, 339302, -160524, 186294, 261993, -179315, 32749,
- 52076, -197569, 141734, 117038, 74088, 44023, -19864, -27917, -139586, -102005,
- 137439, -21475, -29528, 85362, -30065, -40265, 107374, -28991, -51003, 12348,
- 27380, -31139, -13959, 3758, -59056, -30602, 10737, -9127, -70330, -12348,
- 86973, 53150, -18254, -48318, 15569, 16643, -73014, -45634, -2684, -2147,
- 10737, -22012, -17180, -10737, 1074, 31139, 8590, -26844, -29528, -537,
- 18254, -18790, -41339, -6442, -8053, -26844,
- },
- {
- -6229850, 12640089, 551903, -1511292, -394600, 23085, 76236, 176094, -58519, 215822,
- -416075, -70867, 159451, -136902, 147640, 163746, -295279, 59593, 44560, 41339,
- 37581, 25233, 2147, 464930, 291521, -125091, -103079, -214212, 794569, 273804,
- -44560, 48855, 86436, -11811, -40265, 232465, 706522, 6979, -326418, -10737,
- 110595, -97711, -101469, 32212, 212601, -64961, -107911, 34897, 92342, 169651,
- -208843, -203474, 45634, 60130, -1074, -107911, 38118, 40802, 20938, -18790,
- -8590, 17717, -33823, -40265, -2684, 17717, -44560, 35970, -17717, -56908,
- -2147, 106300, 94489, -15569, -33286, 13422, -30602, -13422, 28454, -14496,
- -27917, -2684, -16643, 19327, 35433, -537, 537, 5369, 24696, 16106,
- 6442, 22012, 3221, 19327, 6979, -4295,
- },
- {
- 134218, -758062, 257161, 253940, 52613, 35970, -10201, -59056, -89121, -6979,
- 158377, 180389, 231391, 527207, 697932, -448824, -253940, 13959, 1611, 2086817,
- -86436, 99321, -1214939, 67109, 799401, 274341, -11811, 162672, 491237, 356482,
- -139586, -30065, 70330, -278099, -94489, 103079, -142808, -2147, -12348, 194347,
- -75699, -19864, 82678, -113280, -66035, 74088, 53687, 46708, 4832, 30065,
- -63351, -67646, 111669, 537, -86436, -39192, 20401, 104153, 41339, 19327,
- 59593, -55298, 2684, -12885, -14496, -6979, 29528, 8590, 35433, 46171,
- -38655, -29528, 4295, 13959, -19327, -31139, -68719, -69256, 1611, 24696,
- -10201, -24159, 33286, 26307, -5906, -19327, 28454, -3221, -11274, 4295,
- 20938, 22012, -42413, -25770, 6442, 12348,
- },
- {
- -3031710, -32509682, -578747, 1487669, -423054, -111669, -196495, -55298, 209380, 35433,
- -46708, 27380, 53150, -170188, 369904, -159988, -390305, -150861, 202400, 277562,
- 200790, -89121, -173946, 123480, 141197, -24696, -173409, 9664, 137439, 24159,
- 114890, -105227, -26307, -80531, -191663, -115427, 98247, 396211, -147640, -239981,
- -68719, -80531, 98247, 213138, -156229, 79994, 174483, 72478, -103616, 92342,
- 25770, 16106, 26307, -64961, -72478, -85362, -11274, -13422, -84289, -76773,
- -25233, 15032, 5906, 20938, 18790, -67109, -64961, 12348, 56371, -18790,
- 16643, 81604, -71404, -82141, 10201, 47245, -39728, 2147, 11811, -46708,
- 21475, 10201, -44560, -18254, 76773, -11811, -49392, 13959, 31675, 22549,
- -25233, 537, 15032, 6442, 16106, -10201,
- },
- {
- 99321, -708670, -472446, 291521, -41876, 105227, -41339, -127775, -83752, 4295,
- 166430, 251792, 226560, 66572, -665720, -773094, 102542, -14496, -214212, 782758,
- 711354, 117575, 470836, 1021129, 377420, 1094143, -20938, -89657, -41876, -32212,
- -13959, 389768, 248034, 39728, 114354, 99321, -190589, 42950, -271120, -92342,
- 116501, -52076, 181999, 34360, 22549, -30065, -143881, 110595, 302258, -117038,
- -85899, 36507, 45634, -146029, -139586, 9127, -79994, -32749, 109522, -66572,
- -84826, -106300, -69256, -44560, 1611, 74088, -33823, -15032, 5369, 44560,
- -8053, 6442, 8590, -14496, -48318, 34897, -46171, -42413, -4295, -31139,
- 4832, 34897, 8053, 26307, -11274, -4295, -30602, 3221, 22012, -38118,
- -10201, 8590, 0, 11811, -6442, 4295,
- },
- {
- -4491999, 35223564, 724239, 1388348, -138513, -159451, -103079, 333934, 11811, -580894,
- 312996, 583579, 530965, -42950, 819802, 76236, -737661, 129923, 198642, 241592,
- -221191, 24159, 233002, -358093, 186831, -122407, -73014, 212064, -183073, -111669,
- -303869, -76773, 177704, 33286, -171799, 265214, -206158, -13422, -536334, 70330,
- 261456, -4295, 74625, -161598, 145492, 84289, -263604, 78383, 113817, 99321,
- -78920, 85362, -38118, -26844, -24159, 84826, 31139, -68719, -18790, 53150,
- 39192, 18254, -11274, 45634, 165893, 60666, -54761, -37044, 14496, -12885,
- 8590, 40802, -20938, -51003, -52076, 70867, 17717, -41339, -9127, 15569,
- 25233, -537, 34897, 39728, 24159, 28991, -24159, -41876, -8590, -16643,
- 21475, 13959, 25233, -10201, -11811, 14496,
- },
- {
- 12885, 1016834, 579821, 401579, 398358, -780610, -115427, 238908, -126165, -61203,
- 14496, 279710, -136365, -54761, 280247, -633508, 533650, 61203, -1306744, -543313,
- 492848, 108448, -652835, -401579, 379031, -11274, 88584, -453119, 329639, -310311,
- -13422, 259309, -212601, 108448, 5369, -79457, -141197, -239981, -22549, -61203,
- -128849, -83215, -91268, 112743, -44560, -169651, -22549, -3221, 84289, -103079,
- -140660, -38655, -63888, 10201, 241055, 78383, -44560, -70330, -51003, -71941,
- 26844, 34897, 85362, 48318, 25770, 67646, -33286, -72478, -101469, -5369,
- 13422, 13959, 48855, 4832, -33286, 30602, 53150, 4295, 13959, 45634,
- 10737, 3758, -20938, -15032, -23622, -11274, 24696, -1074, 8590, -23085,
- -10737, -6442, -10201, -3758, -24159, -10201,
- },
- {
- -1059783, 8378408, 606664, -810675, -149787, -355409, -474057, 547608, -34360, -202937,
- 46171, 105227, -235149, -281857, 678605, 348966, -373125, 13422, 100395, 150861,
- 154082, -134218, -59056, 22549, -155693, 146029, 113817, 7516, 23085, -156766,
- -129386, 137976, 149250, 213138, -187905, 109522, 49392, -269509, 160524, -228170,
- -365072, 60130, 79994, 95563, 53150, -51540, 27380, -180389, 68183, 69793,
- -92342, -42950, -24696, 13959, 115964, 66035, 76236, -95563, -27917, 51003,
- 12885, -13422, 19327, 56371, -15569, -9664, 13422, 13422, -21475, 7516,
- 3221, -2147, -29528, -73014, -20938, -10737, -31675, 58519, -2147, -5369,
- 13959, -33286, 40265, -22012, -15032, -33823, -24159, -11811, 537, 22012,
- -10201, 537, 20938, 16643, -15569, -12348,
- },
- {
- -160524, 1203128, 179852, 113817, -112206, 17717, 186294, -49392, -122943, -85362,
- -192200, 100932, -286152, 450972, 2611340, 762894, -263604, -587874, -371515, 118112,
- 333934, 407485, -752693, -278099, -576063, 511101, 32212, -154619, 185757, -605590,
- -67646, 195421, 287226, 114890, -10737, 130997, 20938, -349503, -62277, -105764,
- 121870, 146029, -107374, -110059, -5369, 51003, 134755, -64961, 42413, -139050,
- -42950, 73014, -76236, -51540, -25233, 7516, 95563, 199179, 93952, 35433,
- -79994, -83752, 17717, 98247, 93952, -78920, 14496, 6979, -11274, -7516,
- -25233, 8053, -19327, -23622, -20938, -48855, -60666, 21475, 9127, 28454,
- 1074, -26844, 45097, 29528, 7516, 31139, 29528, 11811, -537, -4295,
- -5906, -24696, -20938, 23085, 9664, -15569,
- },
- {
- 2112587, 2615098, 723702, -311922, -222265, -150324, -1023276, 72478, 295279, -62277,
- -437550, 80531, 5369, 1613834, -154619, 340376, 98784, -148176, 187368, -432718,
- 92342, 166967, -168577, -251256, 104153, -153545, -214748, -451508, -408022, -165893,
- -124554, 1611, 19327, -83215, -197032, -141734, -28454, 74625, -90194, -184684,
- 90194, 153008, -58519, 122407, 61203, 130997, -150324, 215285, 137439, -44560,
- -99321, -125628, -92879, -172336, -55835, -59593, 38118, 25770, 115964, -39728,
- -17180, 48318, -13959, -8590, -42413, 34360, 71404, 68719, -10737, -64961,
- 64425, 26844, -64961, -45097, 13959, -6979, 46708, -25233, -24696, -31675,
- 19864, 52076, 3758, -19864, -41876, 20401, 79457, 16643, 7516, 35970,
- 8590, 5369, -38118, -19327, -13959, -32749,
- },
- {
- 32212, 1515050, 514322, -25233, -62277, -64425, 112743, -115427, -67646, 132607,
- -140123, 19864, 451508, 2217814, -886374, 1961190, 213675, -63888, 229781, -68719,
- -360240, -29528, -253940, 107911, 135828, -170188, -1074, -6442, -331786, -25233,
- 70867, 253403, 24159, -41876, 243203, 114890, -84289, -93952, -96100, 94489,
- 18790, -257161, -49929, 121333, -97174, 113817, -9127, -47782, -94489, 38655,
- -114890, -103616, 92342, 105227, 3758, 27380, 38655, -1074, -24159, 25233,
- -146029, -98247, 38655, -15032, -67109, 55298, 42413, -62814, -36507, -20401,
- -15032, 59593, -13422, -11811, 12348, -48318, 53687, 21475, 9664, -4295,
- -75162, -15569, 32749, 6442, 34897, 42413, 33286, -34897, 537, 22549,
- -49392, -26307, 18254, 9127, -28454, 13959,
- },
- {
- -699543, -2830384, 42950, -135828, 2684, -1755031, 66035, 185220, 155156, 115964,
- -69793, 59056, -126702, 437013, 2621004, -457414, -24696, 135291, 366683, -28991,
- 331249, -39192, -23085, -394600, 145492, 624918, 31139, -712965, -16106, 73551,
- 37044, 76773, -120796, 135291, 123480, 288300, -16643, -157840, -143345, -102542,
- -156766, -59056, 64961, 121333, -122407, 25770, 250719, -35970, -56908, -79457,
- -54761, -122943, -130460, 5369, -16643, -537, 154619, -17180, -3221, 21475,
- -35433, 85899, 34897, 75699, -18254, -4832, 27380, -22549, 8053, -8590,
- 13959, 40802, -15032, -67109, -49392, 32212, 31675, -3221, -537, 9664,
- 16106, -32212, -5369, 24159, -4832, -31139, -4832, -47782, -16643, 34897,
- -8053, 12348, 13422, -12885, -10737, -10737,
- },
- },
- {
- {
- -273804, -5084168, 492848, -236760, -153008, 6442, -159451, 197032, 70330, 195958,
- 90731, -126702, 320512, -445066, 427886, 290447, -420907, -354872, -918586, 251792,
- 649077, 140123, 574989, -16643, 414464, -340913, 146566, 56371, 407485, 269509,
- -399969, -119185, 421444, -38655, -137976, -28454, 80531, 125628, -378494, 537,
- -68719, 66572, -47782, -37581, -6979, -52613, -239981, -112743, 14496, -125628,
- 62277, 33823, -10737, 44560, 175557, -50466, -39728, -13422, -117038, -14496,
- 46708, 53150, 97174, -11274, -49392, 85362, -1611, -35433, 12885, 80531,
- -13959, -1074, -13422, -41339, 537, 5369, -15569, -27380, 25233, 18254,
- -16643, -3758, 37581, 60666, 26844, -2684, -19864, 9664, 12885, -30065,
- -33823, 20938, -3221, 3221, -18254, -24696,
- },
- {
- 2921115, -6028524, -3641059, -33823, -216359, -98784, 45097, -347355, -593242, 260919,
- -64425, 33823, 34360, -56908, 356482, -139586, -342524, -256624, 403190, -245350,
- 73014, -210453, -133144, -109522, 3221, 192200, -143345, -38655, 382252, 51540,
- -23085, -67109, -104153, -264141, -56908, 3758, 135828, 91805, -114890, -216359,
- -23622, 140660, 124017, -28991, 163209, 72478, -114354, 5369, -123480, 67646,
- 21475, 37581, 85899, 133681, 28454, 19327, -71941, 69793, -35970, 21475,
- 90194, 59593, 6979, 17180, 5369, -123480, -24696, 60666, 42950, 70330,
- -24159, -44023, -28991, 8053, -8590, -62277, 22549, -34360, -44023, -7516,
- 41339, 6979, -28991, 16106, 50466, -28991, -37581, 34897, -18254, 9127,
- -5906, -5906, 15032, 16643, -3221, -5369,
- },
- {
- -273804, 9541270, 3312494, 1612760, 943819, -92342, 61740, 277562, 130460, -247497,
- -315143, -130460, -266825, 474594, -765041, -237297, -241055, 122407, 586800, -52076,
- 100932, 155156, 183073, 106300, -157840, 18790, -18790, -88047, -24696, 16643,
- 137439, -98247, 267362, 109522, -261456, -230318, -100932, 135291, 180926, 31675,
- 26307, 45634, -39192, 143345, 91268, -66035, -248571, -92879, 195958, 95563,
- -105764, -137439, -16643, 77846, -16643, -12348, 103079, 153008, -5369, -74625,
- -30602, 96637, 55835, -38655, 32212, 60130, -3758, 39728, -8590, 53687,
- 37581, -12885, 12348, 37044, 38655, -29528, 16106, -17180, -17717, -28991,
- 11274, -3221, 35970, 25233, -31139, -2684, 5369, -17717, -3758, -22012,
- -8590, 19327, 3221, 23085, -7516, 1611,
- },
- {
- 5906, -3192771, -51540, 102542, 94489, -99321, 5906, -13959, 17717, 76236,
- 25233, -179852, -102005, 412317, -1577864, -890669, 480499, 97174, -1691143, 393526,
- -133681, -1131724, -185757, 597537, -259846, 761283, 254477, 890669, -288300, -319438,
- -184684, 474594, 197569, 82678, -18254, 104153, 353261, -33823, 127775, 114890,
- 18254, -46708, 99321, 17180, -46171, 36507, 214212, -95563, -26844, 94489,
- -537, -84289, 164819, 71404, 77846, 55835, -100395, -49392, 70867, -89657,
- -78920, 26844, -6442, -13959, 44023, 11274, -1074, -16106, 68719, 15569,
- -54761, -92342, 2147, 9664, 1074, -38118, 13422, 62277, 42413, -2147,
- -25233, 8053, 12885, 537, 10201, -36507, -11274, 15569, 17717, 12885,
- -10201, 10201, 34360, 11274, -4832, 18790,
- },
- {
- 6906845, -4258997, -1314797, -1664837, 285615, 192200, -17717, 19864, -111669, -55298,
- 85899, 259846, -68719, 289373, -567473, -127775, 277562, -394600, -278636, -7516,
- -60666, 140123, 136902, -98784, -153545, 112743, -100395, 833224, 48855, -111132,
- 54224, -14496, -133681, 224949, -122943, 22549, -3758, -495532, 16106, -81604,
- -222801, -79994, 85362, 69256, 30065, 15032, 74088, 108985, 41876, 86436,
- -164283, 112206, 121870, -69256, -61740, -29528, -51540, -175557, -86436, -26844,
- 73014, -107374, 33823, 13959, -26307, 5369, -8590, -83215, -10201, 26307,
- -5369, -29528, -68183, -35970, 55298, 8590, 30602, 51003, -28454, 20401,
- 35970, -4295, 24696, 15032, -50466, -4832, 8590, 5369, -12885, -11274,
- 3758, -15032, -10737, -18254, -17717, 13959,
- },
- {
- -273804, 571231, 1219234, -292058, -20401, -64961, 28454, 64425, 96637, 96637,
- -60130, -93416, 38118, -497142, -1297080, -248571, 1592359, -841277, -166967, 2934000,
- 51003, -509491, -544387, -551903, 225486, -162672, 40802, 52613, 557272, 513785,
- 138513, -192737, 37581, 268435, 103616, 227633, -59056, 192200, 102542, 6442,
- 166967, 26844, -117575, 45634, 73551, 71941, -51003, -126165, -83215, 72478,
- -15032, 79994, -64961, -53687, 76773, 48855, 40265, -22012, 20401, 44023,
- -1611, -51003, 24696, -4832, 15032, 51003, -45634, -26307, -8053, -24696,
- -14496, 80531, 38118, -11274, 8590, 31675, 41339, 42950, 25770, -13422,
- -23622, 41339, -9127, -34360, -10201, 12885, 9127, -8590, 15569, 11811,
- -19327, -41876, 11274, 33286, 10201, -4295,
- },
- {
- -1420560, -36447092, -126165, 889595, -100932, 70330, -74625, 213675, 367220, -432718,
- 140123, 84826, -19864, 263604, -35433, 142808, -190052, 304943, -102005, -394600,
- -124554, -191126, 35970, -110595, -1074, -294205, -117575, 243739, -170725, -119722,
- 70867, 159988, 86436, 69256, -102542, -77309, 75162, 84289, -12348, -20401,
- 81068, -79457, -124017, -19327, -4832, 31675, -60130, -127775, 6442, -45097,
- -107911, -22549, -93952, -26844, -82141, 62277, 83752, 10737, 108985, 16643,
- 86973, -18254, 10737, -23085, -27380, 31139, 104690, 15569, -53150, 31675,
- -6442, -74625, 17180, 78920, -14496, -15569, 11274, 22549, -34897, 38655,
- 26307, -33823, 18254, 38118, -32749, -26844, 49392, 13422, 0, -14496,
- 5906, 25770, -19864, -9127, -12348, -3758,
- },
- {
- -303332, 477278, 975494, -10737, 117575, -128849, -40802, -93952, -49929, 125091,
- -35433, -212601, 75162, 243739, -1142998, 389231, -1328219, -960999, 191126, 708670,
- -616328, -150861, 199716, 526134, 150861, 413391, 478889, -127775, -186294, -287763,
- -104690, -12348, 139050, 95026, -59593, -61740, -48318, 98784, -149787, 60130,
- -42950, 66035, 90194, -67109, -53687, 43487, 181999, 113817, -121333, -10201,
- 114354, 24696, -36507, 24696, 84826, 26307, 34897, 88047, -63888, -106300,
- -24159, 11811, 38118, -57982, -29528, -82141, -11274, 69256, 53150, -13422,
- 23085, -21475, -27380, -4832, 37581, 9127, -6442, 61740, 27380, 14496,
- 7516, -66572, -22549, -12885, 10737, 13959, 5906, 31675, -25233, 16106,
- 18254, -22549, 12885, -2684, -2684, -5369,
- },
- {
- 8184060, 19821810, -2852932, 1236414, 267899, 145492, 127238, -78920, -350040, 410169,
- 69793, -365609, -464393, 180389, 427349, 426276, 87510, -3221, 92879, 148176,
- 217970, -105227, -253403, 310311, -51540, -95563, 341987, -42413, 102005, -158914,
- -32212, -49929, 125091, -220654, 73014, 170725, -492311, -213138, 125091, 76236,
- 326954, 89657, 202400, 39728, 204548, 537, 130460, 85362, -227096, 10201,
- 155693, 66572, -72478, 106300, -17180, -52613, -45097, 63351, 32749, -107374,
- 9127, 49392, 26307, 14496, -41876, -96637, 31675, 19864, -31675, 18790,
- 22012, -54761, 6442, 24696, 40265, -17180, -34360, 11274, 10201, -2684,
- 537, -8053, -22549, -12348, -35433, -28454, -9127, 20401, 40265, 25770,
- -5369, -5369, -14496, 2684, 28454, -2147,
- },
- {
- -11274, 2939905, -666257, 555661, -325881, 422517, 636729, -298500, 124017, 178778,
- 100395, -467615, -580357, 401043, 324807, 195958, -485331, -511638, 323196, 217970,
- -239981, -520765, -123480, 397821, 454193, 284542, -37044, 70330, -251792, -132607,
- 16643, -13422, 126702, 318901, -7516, -19327, 185757, 184147, 206158, 19864,
- 8053, 35433, 75699, -117038, -31139, 173409, -101469, -20401, -53150, -79994,
- 200790, 52613, -13959, 117575, -86973, -146566, -22549, -24159, 36507, 59593,
- 0, -12348, -37581, -76236, -37581, -88584, 28454, 85362, 107374, 67646,
- -23085, 19327, -23622, -33286, 30602, -10737, -20938, -18254, -10201, -34897,
- -34897, -8053, 12348, 16643, 16643, 36507, -4295, -11811, -8053, -1074,
- 19864, -2684, 12885, -1611, 30065, 23085,
- },
- {
- 1137630, 4267587, -701153, -745714, -53687, 1336809, 1201517, -369904, -573915, -205085,
- 69256, -12348, 90194, 294205, 481036, 60130, 201327, 97711, 326418, 105764,
- 194347, -133681, 140123, 73551, 157840, 99858, 47245, -40802, -200253, 226560,
- 396748, 84826, 54761, 47245, 149250, -266825, -146029, 99321, -107911, -9127,
- 197032, 173946, -116501, -41339, -141197, -64425, 33823, 125091, 106837, -57982,
- -1611, 33823, 130997, -13422, -110059, -62277, -43487, 52613, 125091, -58519,
- 12348, 4832, -20938, -41876, 15569, 12348, -46708, -17717, -34897, 7516,
- -18790, -23085, 3758, 61203, 43487, 28991, 45634, -22012, -32212, -11811,
- -31139, 29528, -12348, -13422, 20938, 7516, 43487, 12348, 8053, -18790,
- 1611, 19864, -8053, -33286, 4295, 27380,
- },
- {
- 141734, 874026, 187368, 6979, 107374, 135828, -260919, -146566, -1074, -146029,
- -6442, -344671, 594853, -493921, 3663070, -687195, -84289, 355409, 481036, -140660,
- -1238561, 370441, 442382, 423591, 137976, -435939, -11274, -324807, -386547, 31675,
- 33286, -348429, -91805, -31675, 133681, 62814, 12348, 103079, 155156, -44560,
- 53150, -139050, -537, 198642, 95563, 47245, -82141, -13422, 104153, 14496,
- 108448, -71404, -30602, 61740, 5369, 31675, -62814, -150324, -136902, -38655,
- -95563, 49392, 537, -41876, -96637, 41876, 14496, -45634, 25233, -16106,
- 48318, 16643, 10201, 35433, 13422, 49392, 49929, 1074, -8590, -13422,
- -13959, 8590, -44560, -29528, -17180, -13422, -39728, -27917, -5906, 1074,
- 3221, 12885, 13422, -9127, -2147, 18790,
- },
- {
- -1978369, 6925098, 708133, 913217, -78920, 113817, 821949, -313533, -132607, -282394,
- 446677, -49929, 138513, 1030255, 175557, -432181, -195421, 275415, 112743, 92879,
- 557809, -81068, 23085, -457414, 17180, 35433, 17717, -86973, 39192, -163209,
- -67109, 136902, -108448, -245350, -221728, 214748, 99321, -164283, 537, 26844,
- -104690, -252329, -142271, -121870, -294205, -259846, -95563, -78383, -187368, 108985,
- -143881, 125628, 1611, 32749, 175557, 111132, 24696, 29528, -137439, -32212,
- 104690, -6442, -19864, 23085, 31675, -37044, -24696, -31675, 5369, 73551,
- -19327, -78920, -6979, 42950, 4832, 14496, -25770, 10201, 17180, 34897,
- 34897, -49929, -34360, 11811, 61203, 16643, -62277, -39728, -16643, -22012,
- -3758, -10201, 21475, 31675, 13422, 46708,
- },
- {
- 63351, 1939178, -679679, -45634, 170725, 91268, 153545, 33823, 252866, -99858,
- -48855, -199179, -240518, 2659122, 5071820, 813896, 560493, 226560, -145492, 2684,
- 106837, 101469, 411780, 522375, -205622, -88584, 498753, -98247, 157840, -232465,
- -188442, -266288, -176631, -141734, -18254, -125091, -256087, -272194, -16106, 19864,
- -145492, 153545, 67109, -6442, -7516, -63351, 33286, 106837, 48855, -9127,
- -48318, 132607, 56371, -68183, -39728, -4295, -66035, 14496, -537, -51003,
- 90194, 85899, -47245, -72478, 49929, 16643, -68719, 73551, 26844, 18254,
- -41339, -66035, -1611, 32749, -10201, 17717, -15032, -68719, 25770, -10737,
- 37581, 56371, -32212, -10737, -12885, -49929, -30065, 21475, 18790, -24159,
- 22549, 53150, 3221, -20401, 30602, 7516,
- },
- {
- 179852, -5887864, 579821, 9664, 126702, -82678, 331249, -96100, 119185, -3758,
- 592706, 632434, -127775, 506269, 2218351, 804770, 129386, 385473, 384400, -23085,
- -228170, -194884, -85899, 154619, 177167, 38655, -192737, -497142, 365072, -6979,
- -23622, 147640, 41339, -157840, 46708, -188979, -82141, -166430, 146029, -26307,
- -16643, 38655, 128312, -156766, -103079, -41876, -132607, 52076, 82141, 67646,
- -103616, -5906, 130997, 92342, 13959, 22012, -33823, -67646, 3221, 1074,
- 12348, -20938, -49929, -16106, -68183, -51003, -30065, 3758, -36507, 3758,
- 1611, -84826, -51003, 77309, 64425, 6442, -48855, -16106, 22549, -28454,
- -52076, 26307, 38655, 1611, 537, 13422, -10737, 27917, 29528, -28991,
- -3758, -20401, -13422, -5906, 537, 26844,
- },
- },
- {
- {
- 120796, -3971771, 964220, -167504, 151934, 25233, -84826, 228707, 537, 163746,
- -293132, 68719, 294205, -932545, 729608, 794569, -291521, 77846, -741956, 230854,
- 295279, 136902, 437550, -406948, 110059, -509491, -243203, -273804, 570694, 545998,
- -91268, 100932, 274878, -326954, -114890, 252866, 63351, -217433, -461172, 6979,
- -117038, -37044, -112206, 22012, 17180, -3758, -191126, -97711, 37044, -59056,
- 171799, 41876, -32212, 97711, 101469, -110595, -12348, -60666, -56371, 31675,
- 82141, 110059, 62814, -33823, -30065, 86973, -37044, -9127, 47782, 23622,
- -33286, 4832, -16106, -34360, 19327, 2684, -20938, -12885, 25770, -4295,
- -9664, 17717, 49392, 47782, 8590, -26307, -22012, 4832, 1074, -34897,
- 4832, 13422, 8053, 0, -28991, -18790,
- },
- {
- -2800856, -7233262, 3688840, -539018, -570157, 188979, -173409, -649614, -424665, 234076,
- -148176, 139050, -54224, -118112, 419296, -703301, -394063, 132607, 822486, 135291,
- 213675, -537, -100932, -114354, -120796, -51540, -251792, -6442, 345208, 26307,
- -118648, -289373, -305480, -260382, 73014, 134218, -178778, -276489, -319975, -197032,
- 36507, 172872, 108448, -74625, 169114, -43487, -91805, -62814, -53150, 97174,
- -21475, 128849, 113817, 104153, 32212, 15032, -19864, 113817, -16106, -9664,
- 52613, -1611, -8053, -16106, -63888, -83215, 5906, 84289, 38655, 17717,
- -28991, -56908, -10737, 10737, -62814, -29528, 28454, -35970, -26844, 2147,
- 34360, 1611, -16106, 17180, 28991, -63888, 3221, 20401, -18254, 3221,
- -9127, -2684, 13959, 1074, 4295, -9127,
- },
- {
- 715649, -909996, -4708895, 1474248, 646393, -192200, 27917, 271120, 82141, -394063,
- -244813, 27917, -518080, 481036, -265214, 118648, 38655, -64425, 88047, -195958,
- 134755, 243203, 187905, 84289, 34360, 485868, 101469, -259309, -463320, -117575,
- 262530, 107374, 77309, -210990, -273804, -37581, 33286, 13959, -106300, -93952,
- 109522, 35970, -87510, 94489, 9664, -112206, -79994, 31139, 110595, -68183,
- -156229, -68719, -16643, 80531, -51003, 34360, 134218, 85899, -4832, -38655,
- 68719, 159988, 74088, -35433, 37581, 49392, 22549, 38118, -8590, 33286,
- 9664, -16643, 22549, 32212, 15569, -34360, 2684, 5369, -15569, -39192,
- 6442, 7516, 33823, -2147, -38655, 9664, -2684, -15569, -537, -22549,
- 23622, 25233, 8590, 8053, -14496, 4832,
- },
- {
- 10737, -3448859, -164283, 287763, 47245, -129386, -8053, 40265, 60666, 6442,
- -104690, -222265, -85362, -310848, -558346, 655519, -744640, -588947, -1468879, 474057,
- -458488, -1051730, -442382, 770947, -143881, -431644, -357556, 788663, -879931, -44560,
- 245887, 584652, 230318, -17180, -151398, 239444, 190052, -73551, 223875, 96637,
- 113280, 36507, 41339, -44023, -87510, 8590, 176094, -92879, 36507, 75162,
- -48318, -8590, 91805, 17180, 135828, 16643, -108985, 32212, 56371, -66572,
- -78920, 45634, -15032, 18254, 86436, 23622, -1074, -6442, 89121, 24159,
- -81068, -64425, 37581, 40802, -23085, -13422, 56371, 54224, 1611, -24159,
- -32749, 33286, 12885, 8053, -1611, -41339, -1611, 19864, 23622, -4295,
- -19327, 20938, 37044, 3758, 3758, 18254,
- },
- {
- -5256503, -19937238, 79457, -1318555, 253403, 179852, -23622, -3758, -83752, 20401,
- 351114, -60130, -174483, 687195, -213675, -73551, 1611, -598074, -77846, 12885,
- -53150, 126165, 56908, -282394, 41339, -33286, -90731, 1241782, -9664, -253940,
- 73014, -112206, -69256, 219043, -132070, -32749, -182536, -193274, 210453, 36507,
- -111132, 13422, 161598, 21475, -29528, 118112, 165893, 79457, -22012, 114354,
- -5369, 130460, 64961, -78383, -39192, 45634, -55298, -122407, -38655, 537,
- 71404, -78383, 88584, 3221, -35970, -24696, -17180, -50466, 44023, 22012,
- -40802, -69256, -73014, 16106, 51003, -5906, 34360, 6979, -20938, 24696,
- 24159, -9127, 13422, -15569, -38118, 9127, 8590, -537, -32749, -11274,
- 4832, -7516, -6442, -22549, 1611, 10737,
- },
- {
- -132070, 632434, 412317, -281857, -47782, -54224, 78383, 59056, 88584, 24159,
- -141734, -162135, -57445, 71941, -323733, 59056, 1767379, -592706, 434329, 2876554,
- -120259, -238908, 554588, -153545, -355409, -52613, 333397, 195421, -132070, -312459,
- 207232, 57445, 78383, 312996, 71941, 146029, -58519, 143881, 66572, -95563,
- 223875, -42950, -67646, 147103, 91268, 9127, -71404, -93952, -45097, 91268,
- 79994, 28454, -175020, -34897, 84289, -3758, -15569, -63351, -11811, 54761,
- 16106, -3221, 22549, 11811, 34897, 42413, -31139, -20401, 3221, -14496,
- 27380, 59593, 19864, 3221, 39192, 32212, 46708, 43487, 3221, -32749,
- -3221, 20938, -20938, -28991, 4295, 12348, -4295, -11274, 11811, -2147,
- -30602, -19327, 32212, 22549, 4295, -15569,
- },
- {
- 5784247, -29011430, -1870458, 361851, 12348, 179852, 155156, 73014, 188979, -192200,
- 207769, -45097, 28991, 54224, -388158, 70867, -41339, 328028, -156766, -281857,
- -241055, -127238, 116501, -8590, -152471, -302795, 219043, 345745, -197569, -141734,
- 119185, 84826, 1611, 169114, 33823, 49929, -66035, 52613, 95026, 130460,
- 188979, 10737, -32212, -20938, 49392, 20938, -163209, -76236, -22549, -187905,
- -79994, 44560, -33823, -5369, 30065, 106837, 63351, 25770, 138513, 30065,
- 97711, -537, 25770, -18790, 7516, 73014, 91805, -8053, -37581, 47245,
- -26307, -65498, 66572, 69793, -31139, -26307, 6979, 537, -25770, 35433,
- -10201, -15032, 44023, 31675, -63351, 8053, 40802, -8590, -19864, -15032,
- 18790, -537, -11811, -11811, -13422, 5906,
- },
- {
- -144418, 776315, 140660, -125628, 25233, -121333, 32749, -27917, -31675, 74088,
- -130997, -246424, -272194, 326954, -800475, 1248225, 305480, 16643, -16643, 44560,
- -563178, 665720, -569620, -617938, -117575, -421444, 456877, -164819, -73551, -219580,
- -140660, -95563, 99321, 26307, -49392, -55298, 47782, 136902, -1611, 42950,
- -55298, 42413, -6442, -17180, -7516, 75162, 200790, -42413, -142271, 71404,
- 102542, 83215, -68719, 48855, 76236, 50466, 66572, 120796, -67646, -5906,
- 38118, 78920, 42950, -8053, 5906, -97174, 20401, 74625, 31675, -45097,
- 38655, -8053, -28991, -1611, 35433, -5906, 25770, 53687, -2684, 10201,
- -537, -51540, -18254, -2147, 24159, 6442, 25770, 8590, -23622, 34897,
- 1074, -8053, 5906, -14496, 6442, -4295,
- },
- {
- -9388262, 472983, 1891933, 1085553, -48855, 143881, 164819, -242129, -143881, 515396,
- -333397, -606127, -284542, 360777, 170188, 551366, 333934, 176631, 204011, 117575,
- 328565, -311922, -201327, 570694, -63888, 20938, 258772, -311922, 152471, 27917,
- 45634, -97711, 157303, -82678, 40265, -5906, -263067, 36507, 276489, -20401,
- 355945, 71941, 233539, 110059, 169114, 74625, 95026, -134218, -316754, -74088,
- 123480, 29528, -60130, 97711, 7516, -75699, -64425, 40802, -8053, -119722,
- -9127, 33286, 33823, -42413, -99858, -44560, 51003, -6442, -5369, 13959,
- 537, -51540, 18790, 28991, 66572, -60130, 4832, 46708, 6442, -35433,
- 3758, -17717, -31675, -38118, -38118, -30065, 11811, 31675, 25770, 10201,
- -18790, -2684, -23622, 12885, 18254, -3758,
- },
- {
- 152471, 4743255, 504659, -74088, -353261, 693100, 215822, -401043, 164819, 207232,
- 87510, -431107, 32749, 756451, 604517, 708670, -307627, -263067, 780610, 242666,
- -97174, 2147, -49392, 153545, 93952, 255551, 83752, 58519, -260382, 268435,
- 3758, -11274, 29528, 212064, -39728, 83215, 273267, 159988, 74088, 85899,
- 128312, 129386, 71404, -140660, 87510, 177704, 15032, -31675, -51540, 18790,
- 229244, 20938, -12348, 1611, -206695, -97711, 27917, 2684, 66035, 33823,
- -40802, -4295, -67646, -77846, -60666, -61740, 62277, 82141, 105764, 29528,
- -10201, -13422, -43487, -13959, 38655, -16643, -38118, -8590, -12348, -40802,
- -16643, 2147, 18790, 19327, 28991, 13959, -23085, -537, -6979, 18790,
- 9664, 12885, 15032, 0, 32749, 13959,
- },
- {
- -908386, 1136556, -787053, -457951, -6979, 706522, 242666, -360777, -286152, 207232,
- 28454, -53687, 138513, 271120, 244813, -205622, 374736, 318901, 312996, 124554,
- -1611, 85899, 116501, 147640, 175020, 14496, -158914, -110595, -93952, 247497,
- 309775, -162135, -82678, -39192, 167504, -432181, -120796, 81068, -156229, 233539,
- 204011, 43487, -123480, -71404, -128849, -56371, 8590, 147640, 38655, -111669,
- 24159, 22012, 95563, -44023, -93416, -39192, -13422, 121333, 69256, -67646,
- 537, -10737, -24159, -49392, 9127, -3221, -23085, -9127, -2684, 2147,
- -12348, -6442, 20401, 74625, 26307, 37581, 28454, -56908, -10201, -5906,
- -17717, 30065, -30602, 15569, 8590, 35433, 28454, 17180, 3221, -18790,
- 10201, 6442, -19864, -21475, 15569, 13959,
- },
- {
- -35970, 650151, 237834, -148176, 131533, 12885, -312996, -58519, 162135, 63888,
- 153545, -250719, 471373, -2158758, 1611687, -813359, 197032, 782758, 525597, 18790,
- -768262, 277562, 396211, 384936, 75162, -414464, -323733, -336081, -346282, 453656,
- -107911, -248034, -262530, -71941, 6979, -139050, -20401, 325344, 134218, -7516,
- -67109, -155156, 73551, 177167, 0, -21475, -127238, 22012, 99321, 54224,
- 86973, -94489, 10201, 67646, 17717, 51540, -56371, -193810, -89657, -37044,
- -4295, 33823, -20401, -84826, -76236, 98247, -7516, 2147, 28991, -16106,
- 48855, 2147, 24696, 39728, 1611, 55835, 53150, -12348, -8053, -22549,
- -3758, 8590, -56371, -35433, -11274, -24696, -40265, -19864, 1611, 5906,
- 6979, 16643, 15569, -21475, -6442, 22012,
- },
- {
- 1087164, 11100880, 1109175, 654446, 72478, 197032, 711891, -424128, -209380, -41339,
- 455803, -205622, -113817, 35433, 18790, -443455, -248034, 147640, -62277, 306016,
- 176094, -286689, -12885, -181999, 84826, 53687, 51540, 76236, 217970, -24159,
- -44023, 51540, -55835, -133681, -162672, 176094, 71941, -28454, 115427, 97711,
- -51003, -309775, -23622, -147640, -244276, -204011, 64425, -100932, -124017, 93952,
- -60666, 183610, 36507, 124554, 77309, 92342, -27380, -3758, -142271, 63351,
- 97174, -53150, -45097, 31675, 26844, -44023, -47782, -46171, 31139, 54761,
- -61203, -49392, 50466, 44023, -15032, 537, -46171, 21475, 16106, 29528,
- -12885, -59056, -12348, 22549, 40265, -22012, -77846, -24696, -6979, -22549,
- -2147, -5906, 44560, 22012, 17180, 37044,
- },
- {
- 31675, 1749125, -496606, 139586, 85362, 23085, 110059, 151398, 135291, -208843,
- 41339, -282931, -62814, 381715, 551366, -752156, 283468, 31675, 165893, 403727,
- 150861, -88047, 428960, 491237, 73014, 335544, 116501, 12885, 452045, -79457,
- 67646, -60666, 122943, 9127, -376347, -83752, -169651, -304943, 42950, -34360,
- -98247, 148176, 20938, -126165, -53150, -100395, 69793, 75699, 105227, -44560,
- 17717, 82141, -55835, -92342, -60130, -82141, -82141, 2684, -5906, -69793,
- 163746, 44560, -51003, -41339, 81604, -32749, -65498, 90194, 22549, 18790,
- -42413, -54224, 18254, 28454, 3758, 40802, -49929, -26307, -5369, 3758,
- 65498, 24159, -31139, -16106, -31139, -45634, -30065, 35433, -3758, -10201,
- 44560, 37581, -17180, -9127, 35970, -15569,
- },
- {
- 977105, -5772436, -430570, -480499, 501974, 813359, 347892, -212601, -147103, -135828,
- 474594, 208843, -199716, -439160, 631360, 539555, -284005, -97711, 19327, -199179,
- -397821, 32749, 22549, 256087, -5906, -46171, 2684, -129923, 357019, -95563,
- 35970, 223875, 83752, -196495, -108985, -213138, 155693, 100395, 198105, 92879,
- 71404, 44560, 61740, -133144, 84826, -54224, -164819, 130460, 140123, 128849,
- 20938, 11811, 77846, 20401, 39728, -16643, -38118, 2147, -24696, -3758,
- 537, -104690, -79457, -36507, -40802, -19864, -31675, -31675, -13959, 19864,
- -12348, -74088, -7516, 99321, 38118, -22549, -42950, 2684, 22549, -30065,
- -16106, 34897, 14496, -11274, 5369, 30065, -5369, 51003, -3221, -31139,
- 5906, -24696, -3758, 11274, 2147, 15569,
- },
- },
-};
-
-
-const Word32 fastconvReverberationTimes_fx[CLDFB_NO_CHANNELS_MAX] /* Q26 */ =
-{
- 28803192, 13764699, 13578673, 13984346, 14472966, 15874266, 15475170, 15327665,
- 15265052, 14693888, 15172173, 14811061, 14864680, 14996885, 15012588, 15237940,
- 15294043, 14970041, 14763950, 14668857, 14791934, 14646510, 14310965, 14115209,
- 13919519, 13337887, 13170115, 13080658, 12773031, 12381585, 12101943, 11822367,
- 11844714, 11917393, 12320047, 13147767, 13639877, 13986628, 14406059, 14763950,
- 14959707, 15463023, 15698642, 15679785, 15860039, 15933523, 16215448, 16181155,
- 16028751, 16266115, 16528376, 16505291, 16515491, 16468247, 16371274, 16382817
-};
-
-
-const Word32 fastconvReverberationEneCorrections_fx[CLDFB_NO_CHANNELS_MAX] /* Q31 */=
-{
- 1254130, 450971, 500363, 455266, 551903, 3259880, 2478196, 2355789, 2716566, 2787433, 4982162, 5222680, 5768141, 5802501, 5652177, 5506148, 5866925, 5856188, 5602785, 5420248, 7337951, 3828963, 2119566, 1501091, 1301375, 1151051, 1097364, 1221918, 1288490, 1166083, 2699387, 2596307, 2055141, 1290637, 588410, 227633, 154618, 109521, 85899, 64424, 51539, 38654, 30064, 27917, 25769, 23622, 19327, 19327, 17179, 17179, 15032, 12884, 10737, 6442, 4294, 4294, 2147, 2147, 0, 0
-};
-
-
-const Word32 parametricReverberationTimes_fx[CLDFB_NO_CHANNELS_MAX] /* Q26 */ =
-{
- 23185710, 21438196, 22344634, 24221132, 25118780, 24882424, 24066916, 23360796,
- 23025656, 22236590, 21240090, 20466526, 19787384, 19297086, 18785114, 18137982,
- 17719558, 17206982, 16770438, 16243029, 15775549, 15411349, 15014266, 14683084,
- 14267277, 13937773, 13561493, 13293863, 13012878, 12476075, 12259246, 12211129,
- 12065368, 12017922, 11847533, 11564736, 11482528, 11271001, 11272544, 11355424,
- 11229997, 11135105, 10976661, 10841974, 10630380, 10512671, 10425429, 10306579,
- 10172093, 10063847, 9945802, 9827825, 9709847, 9591870, 9473893, 9355915,
- 9237871, 9119893, 9001916, 8883939
-};
-
-
-const Word32 parametricReverberationEneCorrections_fx[CLDFB_NO_CHANNELS_MAX] /* Q31 */=
-{
- 412276064,308677152,243799520,201511280,193589216,171714944,143009520,156122064,164263168,
- 176233248,183105200,201571408,218830736,244229024,252642864,243726512,270851360,271235776,
- 266133360,249251984,211587264,110556752,64317136,54165980,45404248,41570988,35878008,
- 34847216,39548060,39554500,36715528,32682554,30524332,20815560,8581345,3463891,
- 2072321,1380832,1069446,895500,652835,388694,249108,242665,219043,
- 167503,137438,128849,135291,133143,130996,111669,85899,64424,
- 30064,15032,6442,2147,0,0
-};
-
-
-const Word32 parametricEarlyPartEneCorrection_fx[CLDFB_NO_CHANNELS_MAX]/*Q-28*/ =
-{
- 159864320,183638576,279548416,236250576,195044928,142030544,122610040,102857488,89049168,
- 88735368,117163752,159042096,205982336,298174336,415684640,522399296,684511744,908078208,
- 1136966912,1258442624,893532544,352242880,101077488,47363556,40222368,34979020,36799548,
- 78574008,155763696,196791376,197201008,205362512,203973104,147970752,69162392,24413400,
- 14014478,14734691,13604577,9571603,5986110,4277519,3390071,2863669,2437930,
- 2085475,2156073,2945273,3965865,4507031,4388919,11464610,20759992,17780628,
- 11286637,5373272,2119566,791079,250181,40802
-};
-
-#endif
#undef WMC_TOOL_SKIP
/* clang-format on */
diff --git a/lib_rend/ivas_rom_binaural_crend_head.h b/lib_rend/ivas_rom_binaural_crend_head.h
index bd20957cfae98a5aad286d199f734b9e815b6bd2..ae97fc0feddcb92e1aca13577804a22338f56bea 100644
--- a/lib_rend/ivas_rom_binaural_crend_head.h
+++ b/lib_rend/ivas_rom_binaural_crend_head.h
@@ -50,7 +50,6 @@
extern const Word32 sine_table_Q31 [361];
extern const Word32 cosine_table_Q31 [181];
-#ifdef FIX_CREND_SIMPLIFY_CODE
/********************** CRendBin_Combined_HRIR **********************/
@@ -325,9 +324,8 @@ extern const Word16 CRendBin_Combined_BRIR_coeff_im_16kHz_fx[HRTF_LS_CHANNELS][B
extern const Word16 CRendBin_Combined_BRIR_coeff_diffuse_re_16kHz_fx[BINAURAL_CHANNELS][2474];
extern const Word16 CRendBin_Combined_BRIR_coeff_diffuse_im_16kHz_fx[BINAURAL_CHANNELS][2474];
-#ifdef USE_REVERB_16BIT_ROM
-/********************** default HRIR reverb rom tables **********************/
+/********************** default HRIR reverb rom tables **********************/
/* Sample Rate = 48000 */
@@ -349,276 +347,5 @@ extern const Word16 defaultHRIR_Q_16kHz_fx;
extern const Word16 defaultHRIR_coherence_16kHz_fx[LR_IAC_LENGTH_NR_FC_16KHZ];
extern const Word16 defaultHRIR_left_avg_power_16kHz_fx[LR_IAC_LENGTH_NR_FC_16KHZ];
extern const Word16 defaultHRIR_right_avg_power_16kHz_fx[LR_IAC_LENGTH_NR_FC_16KHZ];
-#else
-extern const Word16 defaultHRIR_Q_48kHz_fx;
-extern float defaultHRIR_coherence_48kHz_fx[LR_IAC_LENGTH_NR_FC]; /*Q-27*/
-extern float defaultHRIR_left_avg_power_48kHz_fx[LR_IAC_LENGTH_NR_FC]; /*Q-23*/
-extern float defaultHRIR_right_avg_power_48kHz_fx[LR_IAC_LENGTH_NR_FC]; /*Q-23*/
-
-extern const Word16 defaultHRIR_Q_32kHz_fx;
-extern float defaultHRIR_coherence_32kHz_fx[LR_IAC_LENGTH_NR_FC]; /*Q-27*/
-extern float defaultHRIR_left_avg_power_32kHz_fx[LR_IAC_LENGTH_NR_FC]; /*Q-23*/
-extern float defaultHRIR_right_avg_power_32kHz_fx[LR_IAC_LENGTH_NR_FC]; /*Q-23*/
-
-extern const Word16 defaultHRIR_Q_16kHz_fx;
-extern float defaultHRIR_coherence_16kHz_fx[LR_IAC_LENGTH_NR_FC_16KHZ]; /*Q-27*/
-extern float defaultHRIR_left_avg_power_16kHz_fx[LR_IAC_LENGTH_NR_FC_16KHZ]; /*Q-23*/
-extern float defaultHRIR_right_avg_power_16kHz_fx[LR_IAC_LENGTH_NR_FC_16KHZ]; /*Q-23*/
-
-#endif
-
-
-#else /* FIX_CREND_SIMPLIFY_CODE */
-
-/********************** CRendBin_Combined_HRIR **********************/
-
-extern Word32 CRendBin_Combined_HRIR_latency_s_fx;
-
-/* Sample Rate = 48000 */
-
-extern Word16 CRendBin_Combined_HRIR_max_num_iterations_48kHz;
-extern UWord16 CRendBin_Combined_HRIR_num_iterations_48kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_Combined_HRIR_num_iterations_diffuse_48kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_Combined_HRIR_pIndex_frequency_max_48kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][1];
-extern UWord16 CRendBin_Combined_HRIR_index_frequency_max_diffuse_48kHz;
-extern Word16 CRendBin_Combined_HRIR_inv_diffuse_weight_48kHz_fx[BINAURAL_CHANNELS][HRTF_LS_CHANNELS];
-extern UWord16 *CRendBin_Combined_HRIR_pIndex_frequency_max_diffuse_48kHz[BINAURAL_CHANNELS];
-extern Word32 CRendBin_Combined_HRIR_coeff_re_48kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][240];
-extern Word32 CRendBin_Combined_HRIR_coeff_im_48kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][240];
-extern Word32 *CRendBin_Combined_HRIR_coeff_diffuse_re_48kHz_fx[BINAURAL_CHANNELS];
-extern Word32 *CRendBin_Combined_HRIR_coeff_diffuse_im_48kHz_fx[BINAURAL_CHANNELS];
-
-/* Sample Rate = 32000 */
-
-extern Word16 CRendBin_Combined_HRIR_max_num_iterations_32kHz;
-extern UWord16 CRendBin_Combined_HRIR_num_iterations_32kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_Combined_HRIR_num_iterations_diffuse_32kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_Combined_HRIR_pIndex_frequency_max_32kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][1];
-extern UWord16 CRendBin_Combined_HRIR_index_frequency_max_diffuse_32kHz;
-extern Word16 CRendBin_Combined_HRIR_inv_diffuse_weight_32kHz_fx[BINAURAL_CHANNELS][HRTF_LS_CHANNELS];
-extern UWord16 *CRendBin_Combined_HRIR_pIndex_frequency_max_diffuse_32kHz[BINAURAL_CHANNELS];
-extern Word32 CRendBin_Combined_HRIR_coeff_re_32kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][160];
-extern Word32 CRendBin_Combined_HRIR_coeff_im_32kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][160];
-extern Word32 *CRendBin_Combined_HRIR_coeff_diffuse_re_32kHz_fx[BINAURAL_CHANNELS];
-extern Word32 *CRendBin_Combined_HRIR_coeff_diffuse_im_32kHz_fx[BINAURAL_CHANNELS];
-
-/* Sample Rate = 16000 */
-
-extern Word16 CRendBin_Combined_HRIR_max_num_iterations_16kHz;
-extern UWord16 CRendBin_Combined_HRIR_num_iterations_16kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_Combined_HRIR_num_iterations_diffuse_16kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_Combined_HRIR_pIndex_frequency_max_16kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][1];
-extern UWord16 CRendBin_Combined_HRIR_index_frequency_max_diffuse_16kHz;
-extern Word16 CRendBin_Combined_HRIR_inv_diffuse_weight_16kHz_fx[BINAURAL_CHANNELS][HRTF_LS_CHANNELS];
-extern UWord16 *CRendBin_Combined_HRIR_pIndex_frequency_max_diffuse_16kHz[BINAURAL_CHANNELS];
-extern Word32 CRendBin_Combined_HRIR_coeff_re_16kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][80];
-extern Word32 CRendBin_Combined_HRIR_coeff_im_16kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][80];
-extern Word32 *CRendBin_Combined_HRIR_coeff_diffuse_re_16kHz_fx[BINAURAL_CHANNELS];
-extern Word32 *CRendBin_Combined_HRIR_coeff_diffuse_im_16kHz_fx[BINAURAL_CHANNELS];
-
-
-
-
-/********************** CRendBin_FOA_HRIR **********************/
-
-extern Word32 CRendBin_FOA_HRIR_latency_s_fx;
-
-/* Sample Rate = 48000 */
-
-extern Word16 CRendBin_FOA_HRIR_max_num_iterations_48kHz;
-extern UWord16 CRendBin_FOA_HRIR_num_iterations_48kHz[FOA_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_FOA_HRIR_num_iterations_diffuse_48kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_FOA_HRIR_pIndex_frequency_max_48kHz[FOA_CHANNELS][BINAURAL_CHANNELS][1];
-extern UWord16 CRendBin_FOA_HRIR_index_frequency_max_diffuse_48kHz;
-extern Word16 CRendBin_FOA_HRIR_inv_diffuse_weight_48kHz_fx[BINAURAL_CHANNELS][FOA_CHANNELS];
-extern UWord16 *CRendBin_FOA_HRIR_pIndex_frequency_max_diffuse_48kHz[BINAURAL_CHANNELS];
-extern Word32 CRendBin_FOA_HRIR_coeff_re_48kHz_fx[FOA_CHANNELS][BINAURAL_CHANNELS][240];
-extern Word32 CRendBin_FOA_HRIR_coeff_im_48kHz_fx[FOA_CHANNELS][BINAURAL_CHANNELS][240];
-extern Word32 *CRendBin_FOA_HRIR_coeff_diffuse_re_48kHz_fx[BINAURAL_CHANNELS];
-extern Word32 *CRendBin_FOA_HRIR_coeff_diffuse_im_48kHz_fx[BINAURAL_CHANNELS];
-
-/* Sample Rate = 32000 */
-
-extern Word16 CRendBin_FOA_HRIR_max_num_iterations_32kHz;
-extern UWord16 CRendBin_FOA_HRIR_num_iterations_32kHz[FOA_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_FOA_HRIR_num_iterations_diffuse_32kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_FOA_HRIR_pIndex_frequency_max_32kHz[FOA_CHANNELS][BINAURAL_CHANNELS][1];
-extern UWord16 CRendBin_FOA_HRIR_index_frequency_max_diffuse_32kHz;
-extern Word16 CRendBin_FOA_HRIR_inv_diffuse_weight_32kHz_fx[BINAURAL_CHANNELS][FOA_CHANNELS];
-extern UWord16 *CRendBin_FOA_HRIR_pIndex_frequency_max_diffuse_32kHz[BINAURAL_CHANNELS];
-extern Word32 CRendBin_FOA_HRIR_coeff_re_32kHz_fx[FOA_CHANNELS][BINAURAL_CHANNELS][160];
-extern Word32 CRendBin_FOA_HRIR_coeff_im_32kHz_fx[FOA_CHANNELS][BINAURAL_CHANNELS][160];
-extern Word32 *CRendBin_FOA_HRIR_coeff_diffuse_re_32kHz_fx[BINAURAL_CHANNELS];
-extern Word32 *CRendBin_FOA_HRIR_coeff_diffuse_im_32kHz_fx[BINAURAL_CHANNELS];
-
-/* Sample Rate = 16000 */
-
-extern Word16 CRendBin_FOA_HRIR_max_num_iterations_16kHz;
-extern UWord16 CRendBin_FOA_HRIR_num_iterations_16kHz[FOA_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_FOA_HRIR_num_iterations_diffuse_16kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_FOA_HRIR_pIndex_frequency_max_16kHz[FOA_CHANNELS][BINAURAL_CHANNELS][1];
-extern UWord16 CRendBin_FOA_HRIR_index_frequency_max_diffuse_16kHz;
-extern Word16 CRendBin_FOA_HRIR_inv_diffuse_weight_16kHz_fx[BINAURAL_CHANNELS][FOA_CHANNELS];
-extern UWord16 *CRendBin_FOA_HRIR_pIndex_frequency_max_diffuse_16kHz[BINAURAL_CHANNELS];
-extern Word32 CRendBin_FOA_HRIR_coeff_re_16kHz_fx[FOA_CHANNELS][BINAURAL_CHANNELS][80];
-extern Word32 CRendBin_FOA_HRIR_coeff_im_16kHz_fx[FOA_CHANNELS][BINAURAL_CHANNELS][80];
-extern Word32 *CRendBin_FOA_HRIR_coeff_diffuse_re_16kHz_fx[BINAURAL_CHANNELS];
-extern Word32 *CRendBin_FOA_HRIR_coeff_diffuse_im_16kHz_fx[BINAURAL_CHANNELS];
-
-
-
-/********************** CRendBin_HOA2_HRIR **********************/
-
-extern Word32 CRendBin_HOA2_HRIR_latency_s_fx;
-
-/* Sample Rate = 48000 */
-
-extern Word16 CRendBin_HOA2_HRIR_max_num_iterations_48kHz;
-extern UWord16 CRendBin_HOA2_HRIR_num_iterations_48kHz[HOA2_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_HOA2_HRIR_num_iterations_diffuse_48kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_HOA2_HRIR_pIndex_frequency_max_48kHz[HOA2_CHANNELS][BINAURAL_CHANNELS][1];
-extern UWord16 CRendBin_HOA2_HRIR_index_frequency_max_diffuse_48kHz;
-extern Word16 CRendBin_HOA2_HRIR_inv_diffuse_weight_48kHz_fx[BINAURAL_CHANNELS][HOA2_CHANNELS];
-extern UWord16 *CRendBin_HOA2_HRIR_pIndex_frequency_max_diffuse_48kHz[BINAURAL_CHANNELS];
-extern Word32 CRendBin_HOA2_HRIR_coeff_re_48kHz_fx[HOA2_CHANNELS][BINAURAL_CHANNELS][240];
-extern Word32 CRendBin_HOA2_HRIR_coeff_im_48kHz_fx[HOA2_CHANNELS][BINAURAL_CHANNELS][240];
-extern Word32 *CRendBin_HOA2_HRIR_coeff_diffuse_re_48kHz_fx[BINAURAL_CHANNELS];
-extern Word32 *CRendBin_HOA2_HRIR_coeff_diffuse_im_48kHz_fx[BINAURAL_CHANNELS];
-
-/* Sample Rate = 32000 */
-
-extern Word16 CRendBin_HOA2_HRIR_max_num_iterations_32kHz;
-extern UWord16 CRendBin_HOA2_HRIR_num_iterations_32kHz[HOA2_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_HOA2_HRIR_num_iterations_diffuse_32kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_HOA2_HRIR_pIndex_frequency_max_32kHz[HOA2_CHANNELS][BINAURAL_CHANNELS][1];
-extern UWord16 CRendBin_HOA2_HRIR_index_frequency_max_diffuse_32kHz;
-extern Word16 CRendBin_HOA2_HRIR_inv_diffuse_weight_32kHz_fx[BINAURAL_CHANNELS][HOA2_CHANNELS];
-extern UWord16 *CRendBin_HOA2_HRIR_pIndex_frequency_max_diffuse_32kHz[BINAURAL_CHANNELS];
-extern Word32 CRendBin_HOA2_HRIR_coeff_re_32kHz_fx[HOA2_CHANNELS][BINAURAL_CHANNELS][160];
-extern Word32 CRendBin_HOA2_HRIR_coeff_im_32kHz_fx[HOA2_CHANNELS][BINAURAL_CHANNELS][160];
-extern Word32 *CRendBin_HOA2_HRIR_coeff_diffuse_re_32kHz_fx[BINAURAL_CHANNELS];
-extern Word32 *CRendBin_HOA2_HRIR_coeff_diffuse_im_32kHz_fx[BINAURAL_CHANNELS];
-
-/* Sample Rate = 16000 */
-
-extern Word16 CRendBin_HOA2_HRIR_max_num_iterations_16kHz;
-extern UWord16 CRendBin_HOA2_HRIR_num_iterations_16kHz[HOA2_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_HOA2_HRIR_num_iterations_diffuse_16kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_HOA2_HRIR_pIndex_frequency_max_16kHz[HOA2_CHANNELS][BINAURAL_CHANNELS][1];
-extern UWord16 CRendBin_HOA2_HRIR_index_frequency_max_diffuse_16kHz;
-extern Word16 CRendBin_HOA2_HRIR_inv_diffuse_weight_16kHz_fx[BINAURAL_CHANNELS][HOA2_CHANNELS];
-extern UWord16 *CRendBin_HOA2_HRIR_pIndex_frequency_max_diffuse_16kHz[BINAURAL_CHANNELS];
-extern Word32 CRendBin_HOA2_HRIR_coeff_re_16kHz_fx[HOA2_CHANNELS][BINAURAL_CHANNELS][80];
-extern Word32 CRendBin_HOA2_HRIR_coeff_im_16kHz_fx[HOA2_CHANNELS][BINAURAL_CHANNELS][80];
-extern Word32 *CRendBin_HOA2_HRIR_coeff_diffuse_re_16kHz_fx[BINAURAL_CHANNELS];
-extern Word32 *CRendBin_HOA2_HRIR_coeff_diffuse_im_16kHz_fx[BINAURAL_CHANNELS];
-
-/********************** CRendBin_HOA3_HRIR **********************/
-
-extern Word32 CRendBin_HOA3_HRIR_latency_s_fx;
-
-
-/* Sample Rate = 48000 */
-
-extern Word16 CRendBin_HOA3_HRIR_max_num_iterations_48kHz;
-extern UWord16 CRendBin_HOA3_HRIR_num_iterations_48kHz[HOA3_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_HOA3_HRIR_num_iterations_diffuse_48kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_HOA3_HRIR_pIndex_frequency_max_48kHz[HOA3_CHANNELS][BINAURAL_CHANNELS][1];
-extern UWord16 CRendBin_HOA3_HRIR_index_frequency_max_diffuse_48kHz;
-extern Word16 CRendBin_HOA3_HRIR_inv_diffuse_weight_48kHz_fx[BINAURAL_CHANNELS][HOA3_CHANNELS];
-extern UWord16 *CRendBin_HOA3_HRIR_pIndex_frequency_max_diffuse_48kHz[BINAURAL_CHANNELS];
-extern Word32 CRendBin_HOA3_HRIR_coeff_re_48kHz_fx[HOA3_CHANNELS][BINAURAL_CHANNELS][240];
-extern Word32 CRendBin_HOA3_HRIR_coeff_im_48kHz_fx[HOA3_CHANNELS][BINAURAL_CHANNELS][240];
-extern Word32 *CRendBin_HOA3_HRIR_coeff_diffuse_re_48kHz_fx[BINAURAL_CHANNELS];
-extern Word32 *CRendBin_HOA3_HRIR_coeff_diffuse_im_48kHz_fx[BINAURAL_CHANNELS];
-
-/* Sample Rate = 32000 */
-
-extern Word16 CRendBin_HOA3_HRIR_max_num_iterations_32kHz;
-extern UWord16 CRendBin_HOA3_HRIR_num_iterations_32kHz[HOA3_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_HOA3_HRIR_num_iterations_diffuse_32kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_HOA3_HRIR_pIndex_frequency_max_32kHz[HOA3_CHANNELS][BINAURAL_CHANNELS][1];
-extern UWord16 CRendBin_HOA3_HRIR_index_frequency_max_diffuse_32kHz;
-extern Word16 CRendBin_HOA3_HRIR_inv_diffuse_weight_32kHz_fx[BINAURAL_CHANNELS][HOA3_CHANNELS];
-extern UWord16 *CRendBin_HOA3_HRIR_pIndex_frequency_max_diffuse_32kHz[BINAURAL_CHANNELS];
-extern Word32 CRendBin_HOA3_HRIR_coeff_re_32kHz_fx[HOA3_CHANNELS][BINAURAL_CHANNELS][160];
-extern Word32 CRendBin_HOA3_HRIR_coeff_im_32kHz_fx[HOA3_CHANNELS][BINAURAL_CHANNELS][160];
-extern Word32 *CRendBin_HOA3_HRIR_coeff_diffuse_re_32kHz_fx[BINAURAL_CHANNELS];
-extern Word32 *CRendBin_HOA3_HRIR_coeff_diffuse_im_32kHz_fx[BINAURAL_CHANNELS];
-
-/* Sample Rate = 16000 */
-
-extern Word16 CRendBin_HOA3_HRIR_max_num_iterations_16kHz;
-extern UWord16 CRendBin_HOA3_HRIR_num_iterations_16kHz[HOA3_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_HOA3_HRIR_num_iterations_diffuse_16kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_HOA3_HRIR_pIndex_frequency_max_16kHz[HOA3_CHANNELS][BINAURAL_CHANNELS][1];
-extern UWord16 CRendBin_HOA3_HRIR_index_frequency_max_diffuse_16kHz;
-extern Word16 CRendBin_HOA3_HRIR_inv_diffuse_weight_16kHz_fx[BINAURAL_CHANNELS][HOA3_CHANNELS];
-extern UWord16 *CRendBin_HOA3_HRIR_pIndex_frequency_max_diffuse_16kHz[BINAURAL_CHANNELS];
-extern Word32 CRendBin_HOA3_HRIR_coeff_re_16kHz_fx[HOA3_CHANNELS][BINAURAL_CHANNELS][80];
-extern Word32 CRendBin_HOA3_HRIR_coeff_im_16kHz_fx[HOA3_CHANNELS][BINAURAL_CHANNELS][80];
-extern Word32 *CRendBin_HOA3_HRIR_coeff_diffuse_re_16kHz_fx[BINAURAL_CHANNELS];
-extern Word32 *CRendBin_HOA3_HRIR_coeff_diffuse_im_16kHz_fx[BINAURAL_CHANNELS];
-
-
-
-/********************** CRendBin_Combined_BRIR **********************/
-
-extern Word32 CRendBin_Combined_BRIR_latency_s_fx;
-
-/* Sample Rate = 48000 */
-
-extern Word16 CRendBin_Combined_BRIR_max_num_iterations_48kHz;
-extern UWord16 CRendBin_Combined_BRIR_num_iterations_48kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_Combined_BRIR_num_iterations_diffuse_48kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_Combined_BRIR_pIndex_frequency_max_48kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][22];
-extern UWord16 CRendBin_Combined_BRIR_index_frequency_max_diffuse_48kHz;
-extern Word16 CRendBin_Combined_BRIR_inv_diffuse_weight_48kHz_fx[BINAURAL_CHANNELS][HRTF_LS_CHANNELS];
-extern UWord16 CRendBin_Combined_BRIR_pIndex_frequency_max_diffuse_48kHz[BINAURAL_CHANNELS][40];
-extern Word32 CRendBin_Combined_BRIR_coeff_re_48kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][2955];
-extern Word32 CRendBin_Combined_BRIR_coeff_im_48kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][2955];
-extern Word32 CRendBin_Combined_BRIR_coeff_diffuse_re_48kHz_fx[BINAURAL_CHANNELS][2885];
-extern Word32 CRendBin_Combined_BRIR_coeff_diffuse_im_48kHz_fx[BINAURAL_CHANNELS][2885];
-
-/* Sample Rate = 32000 */
-
-extern Word16 CRendBin_Combined_BRIR_max_num_iterations_32kHz;
-extern UWord16 CRendBin_Combined_BRIR_num_iterations_32kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_Combined_BRIR_num_iterations_diffuse_32kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_Combined_BRIR_pIndex_frequency_max_32kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][22];
-extern UWord16 CRendBin_Combined_BRIR_index_frequency_max_diffuse_32kHz;
-extern Word16 CRendBin_Combined_BRIR_inv_diffuse_weight_32kHz_fx[BINAURAL_CHANNELS][HRTF_LS_CHANNELS];
-extern UWord16 CRendBin_Combined_BRIR_pIndex_frequency_max_diffuse_32kHz[BINAURAL_CHANNELS][40];
-extern Word32 CRendBin_Combined_BRIR_coeff_re_32kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][2819];
-extern Word32 CRendBin_Combined_BRIR_coeff_im_32kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][2819];
-extern Word32 CRendBin_Combined_BRIR_coeff_diffuse_re_32kHz_fx[BINAURAL_CHANNELS][2870];
-extern Word32 CRendBin_Combined_BRIR_coeff_diffuse_im_32kHz_fx[BINAURAL_CHANNELS][2870];
-
-/* Sample Rate = 16000 */
-extern Word16 CRendBin_Combined_BRIR_max_num_iterations_16kHz;
-extern UWord16 CRendBin_Combined_BRIR_num_iterations_16kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS];
-extern UWord16 CRendBin_Combined_BRIR_num_iterations_diffuse_16kHz[BINAURAL_CHANNELS];
-extern UWord16 CRendBin_Combined_BRIR_pIndex_frequency_max_16kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][23];
-extern UWord16 CRendBin_Combined_BRIR_index_frequency_max_diffuse_16kHz;
-extern Word16 CRendBin_Combined_BRIR_inv_diffuse_weight_16kHz_fx[BINAURAL_CHANNELS][HRTF_LS_CHANNELS];
-extern UWord16 CRendBin_Combined_BRIR_pIndex_frequency_max_diffuse_16kHz[BINAURAL_CHANNELS][40];
-extern Word32 CRendBin_Combined_BRIR_coeff_re_16kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][1774];
-extern Word32 CRendBin_Combined_BRIR_coeff_im_16kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][1774];
-extern Word32 CRendBin_Combined_BRIR_coeff_diffuse_re_16kHz_fx[BINAURAL_CHANNELS][2522];
-extern Word32 CRendBin_Combined_BRIR_coeff_diffuse_im_16kHz_fx[BINAURAL_CHANNELS][2522];
-
-extern float defaultHRIR_coherence_48kHz_fx[LR_IAC_LENGTH_NR_FC]; /*Q-27*/
-extern float defaultHRIR_left_avg_power_48kHz_fx[LR_IAC_LENGTH_NR_FC]; /*Q-23*/
-extern float defaultHRIR_right_avg_power_48kHz_fx[LR_IAC_LENGTH_NR_FC]; /*Q-23*/
-
-extern float defaultHRIR_coherence_32kHz_fx[LR_IAC_LENGTH_NR_FC]; /*Q-27*/
-extern float defaultHRIR_left_avg_power_32kHz_fx[LR_IAC_LENGTH_NR_FC]; /*Q-23*/
-extern float defaultHRIR_right_avg_power_32kHz_fx[LR_IAC_LENGTH_NR_FC]; /*Q-23*/
-
-extern float defaultHRIR_coherence_16kHz_fx[LR_IAC_LENGTH_NR_FC_16KHZ]; /*Q-27*/
-extern float defaultHRIR_left_avg_power_16kHz_fx[LR_IAC_LENGTH_NR_FC_16KHZ]; /*Q-23*/
-extern float defaultHRIR_right_avg_power_16kHz_fx[LR_IAC_LENGTH_NR_FC_16KHZ]; /*Q-23*/
-
-#endif /* FIX_CREND_SIMPLIFY_CODE */
#endif /* _IVAS_ROM_BINAURAL_CREND_HEAD_ */
diff --git a/lib_rend/ivas_rom_binaural_crend_head_fx.c b/lib_rend/ivas_rom_binaural_crend_head_fx.c
index b171a1a6ad893b2a6f4360946448a227b8a63fd6..9be532b7961d4f3976de3633f36a96c16c48af75 100644
--- a/lib_rend/ivas_rom_binaural_crend_head_fx.c
+++ b/lib_rend/ivas_rom_binaural_crend_head_fx.c
@@ -45,7 +45,6 @@
#define WMC_TOOL_SKIP
-#ifdef FIX_CREND_SIMPLIFY_CODE
/********************** CRendBin_Combined_HRIR **********************/
@@ -7198,7 +7197,7 @@ const Word16 CRendBin_Combined_BRIR_coeff_diffuse_im_16kHz_fx[BINAURAL_CHANNELS]
-241, -196, 664, -437, -495, 515, -467, 300, 93, 416, 387, 259, 44, -264, -225, 541, -228, -24, 134, 461, 671, -21, 459, -375, -389, 44, -142, 215, 139, -333, 47, 212, 552, 188, 228, 208, 248, 65, -17, 351, 64, 281, 449, 96, -181, -153, 405, 109, 829, 197, 328, -333, -528, -46, -616, -390, -139, -204, 25, -23, 6, 18, -463, -372, -202, -379, 139, 163, -117, -8, -334, -35, 76, -72 }
};
-#ifdef USE_REVERB_16BIT_ROM
+
/********************** default HRIR reverb rom tables **********************/
/* Sample Rate = 48000 */
@@ -7449,60045 +7448,11 @@ const Word16 defaultHRIR_right_avg_power_16kHz_fx[LR_IAC_LENGTH_NR_FC_16KHZ] =
6698, 6333, 5966, 5608, 5270, 4961, 4686, 4449, 4254,
4107, 4016, 3984 };
-#else
-/********************** defaultHRIR reverb rom tables at sampling rate 48kHz **********************/
-
-const float defaultHRIR_coherence_48kHz_fx[LR_IAC_LENGTH_NR_FC] =
- {0.997092f, 0.947391f, 0.799213f, 0.575216f, 0.335047f, 0.138324f, 0.007933f, 0.000000f, 0.000000f,
- 0.000000f, 0.008438f, 0.037607f, 0.044493f, 0.042149f, 0.041877f, 0.039860f, 0.029404f, 0.015898f,
- 0.010316f, 0.014065f, 0.020005f, 0.024518f, 0.029292f, 0.033522f, 0.033418f, 0.029630f, 0.027260f,
- 0.027515f, 0.025682f, 0.019571f, 0.013977f, 0.013695f, 0.016531f, 0.016882f, 0.013257f, 0.008483f,
- 0.004883f, 0.002525f, 0.001004f, 0.000180f, 0.000000f, 0.000000f, 0.000000f, 0.000785f, 0.003979f,
- 0.007082f, 0.009598f, 0.011665f, 0.012700f, 0.011794f, 0.009192f, 0.006164f, 0.003527f, 0.001284f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000894f, 0.002136f, 0.003127f, 0.003616f,
- 0.003810f, 0.003754f, 0.003186f, 0.002091f, 0.000823f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.001007f, 0.001843f, 0.002400f,
- 0.002505f, 0.002133f, 0.001524f, 0.000903f, 0.000317f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000202f, 0.000867f, 0.001309f,
- 0.001553f, 0.001563f, 0.001334f, 0.000961f, 0.000530f, 0.000033f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000278f, 0.000621f, 0.000951f, 0.001272f, 0.001608f, 0.001931f,
- 0.002199f, 0.002435f, 0.002687f, 0.002947f, 0.003173f, 0.003370f, 0.003577f, 0.003781f, 0.003920f,
- 0.003978f, 0.003985f, 0.003937f, 0.003783f, 0.003511f, 0.003170f, 0.002788f, 0.002337f, 0.001808f,
- 0.001255f, 0.000716f, 0.000166f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.003551f, 0.000000f, 0.000000f,
- 0.000000f, 0.005564f, 0.000000f, 0.000000f, 0.000000f, 0.008736f, 0.000000f, 0.000000f, 0.001007f,
- 0.011608f, 0.002316f, 0.000000f, 0.000000f, 0.011987f, 0.005591f, 0.000000f, 0.000000f, 0.008714f,
- 0.005905f, 0.000000f, 0.000000f, 0.005316f, 0.003972f, 0.000000f, 0.000000f, 0.003403f, 0.002041f,
- 0.000000f, 0.000000f, 0.002140f, 0.000245f, 0.000000f};
-
-const float defaultHRIR_left_avg_power_48kHz_fx[LR_IAC_LENGTH_NR_FC] =
- {0.981018f, 0.973361f, 0.958480f, 0.950611f, 0.953039f, 0.955845f, 0.950660f, 0.942556f, 0.943810f,
- 0.958014f, 0.974983f, 0.982099f, 0.977269f, 0.968243f, 0.961714f, 0.957355f, 0.952468f, 0.947771f,
- 0.945396f, 0.943711f, 0.938609f, 0.929975f, 0.922937f, 0.921202f, 0.922151f, 0.920926f, 0.917154f,
- 0.914393f, 0.914067f, 0.913705f, 0.911632f, 0.910100f, 0.911873f, 0.915812f, 0.918271f, 0.917846f,
- 0.916545f, 0.916408f, 0.916915f, 0.916273f, 0.914005f, 0.911339f, 0.909453f, 0.908137f, 0.906301f,
- 0.903476f, 0.900479f, 0.898396f, 0.897057f, 0.895115f, 0.891879f, 0.888353f, 0.885879f, 0.884157f,
- 0.881651f, 0.877929f, 0.874417f, 0.872453f, 0.871459f, 0.869941f, 0.867796f, 0.866504f, 0.866990f,
- 0.868298f, 0.868985f, 0.869170f, 0.870398f, 0.873460f, 0.877373f, 0.880867f, 0.884271f, 0.889105f,
- 0.895880f, 0.903280f, 0.909888f, 0.915965f, 0.922776f, 0.930375f, 0.937111f, 0.941667f, 0.944690f,
- 0.947747f, 0.950950f, 0.952712f, 0.951893f, 0.949398f, 0.946830f, 0.944212f, 0.940067f, 0.933749f,
- 0.926604f, 0.920193f, 0.914164f, 0.906886f, 0.897913f, 0.888731f, 0.880661f, 0.873093f, 0.864556f,
- 0.855014f, 0.846098f, 0.839027f, 0.833268f, 0.827720f, 0.822648f, 0.819628f, 0.819557f, 0.821500f,
- 0.823986f, 0.826902f, 0.831352f, 0.837670f, 0.844414f, 0.850004f, 0.854617f, 0.859684f, 0.865573f,
- 0.870873f, 0.874346f, 0.876636f, 0.879215f, 0.882152f, 0.883944f, 0.883578f, 0.881897f, 0.880319f,
- 0.878855f, 0.876201f, 0.871708f, 0.866458f, 0.861964f, 0.858239f, 0.853971f, 0.848551f, 0.843114f,
- 0.839005f, 0.835832f, 0.831994f, 0.826972f, 0.822069f, 0.818424f, 0.815337f, 0.811300f, 0.806249f,
- 0.801664f, 0.798529f, 0.796124f, 0.793286f, 0.790217f, 0.788277f, 0.788174f, 0.789082f, 0.789775f,
- 0.790281f, 0.791803f, 0.794902f, 0.798467f, 0.801024f, 0.802713f, 0.804961f, 0.808244f, 0.811142f,
- 0.812318f, 0.812488f, 0.813349f, 0.815025f, 0.815968f, 0.815334f, 0.814250f, 0.814149f, 0.814776f,
- 0.814769f, 0.813685f, 0.812567f, 0.812562f, 0.813456f, 0.814055f, 0.813739f, 0.813391f, 0.814325f,
- 0.816394f, 0.817949f, 0.818173f, 0.818552f, 0.820798f, 0.824070f, 0.826010f, 0.826515f, 0.828132f,
- 0.832036f, 0.835874f, 0.837493f, 0.838582f, 0.842046f, 0.847074f, 0.850262f, 0.851182f, 0.852997f,
- 0.856510f, 0.857491f, 0.852207f, 0.842444f, 0.831373f, 0.816756f, 0.793031f, 0.759822f, 0.723220f,
- 0.686833f, 0.646128f, 0.595684f, 0.539241f, 0.486856f, 0.441279f, 0.391675f, 0.324292f, 0.238341f,
- 0.149255f, 0.076756f, 0.031022f, 0.009191f, 0.001733f, 0.000140f, 0.000010f, 0.000019f, 0.000015f,
- 0.000015f, 0.000014f, 0.000011f, 0.000009f, 0.000009f, 0.000009f, 0.000007f, 0.000006f, 0.000006f,
- 0.000007f, 0.000006f, 0.000005f, 0.000005f, 0.000006f, 0.000005f, 0.000005f, 0.000005f, 0.000005f,
- 0.000005f, 0.000005f, 0.000005f, 0.000005f, 0.000005f, 0.000005f, 0.000005f, 0.000005f, 0.000005f,
- 0.000005f, 0.000005f, 0.000005f, 0.000005f, 0.000005f};
-
-const float defaultHRIR_right_avg_power_48kHz_fx[LR_IAC_LENGTH_NR_FC] =
- {0.981020f, 0.973360f, 0.958481f, 0.950613f, 0.953040f, 0.955848f, 0.950658f, 0.942557f, 0.943810f,
- 0.958017f, 0.974981f, 0.982098f, 0.977271f, 0.968244f, 0.961715f, 0.957356f, 0.952467f, 0.947770f,
- 0.945398f, 0.943710f, 0.938610f, 0.929975f, 0.922938f, 0.921205f, 0.922151f, 0.920926f, 0.917152f,
- 0.914393f, 0.914069f, 0.913705f, 0.911630f, 0.910101f, 0.911874f, 0.915811f, 0.918272f, 0.917846f,
- 0.916542f, 0.916408f, 0.916918f, 0.916272f, 0.914004f, 0.911340f, 0.909452f, 0.908136f, 0.906302f,
- 0.903479f, 0.900480f, 0.898395f, 0.897055f, 0.895119f, 0.891880f, 0.888352f, 0.885878f, 0.884154f,
- 0.881649f, 0.877926f, 0.874417f, 0.872450f, 0.871458f, 0.869943f, 0.867797f, 0.866503f, 0.866987f,
- 0.868297f, 0.868981f, 0.869171f, 0.870394f, 0.873460f, 0.877377f, 0.880866f, 0.884272f, 0.889105f,
- 0.895880f, 0.903282f, 0.909886f, 0.915965f, 0.922778f, 0.930375f, 0.937113f, 0.941665f, 0.944689f,
- 0.947744f, 0.950952f, 0.952711f, 0.951895f, 0.949398f, 0.946830f, 0.944209f, 0.940067f, 0.933750f,
- 0.926601f, 0.920191f, 0.914167f, 0.906884f, 0.897916f, 0.888731f, 0.880663f, 0.873093f, 0.864559f,
- 0.855017f, 0.846098f, 0.839028f, 0.833267f, 0.827717f, 0.822649f, 0.819631f, 0.819558f, 0.821499f,
- 0.823985f, 0.826902f, 0.831353f, 0.837669f, 0.844416f, 0.850003f, 0.854616f, 0.859686f, 0.865572f,
- 0.870872f, 0.874347f, 0.876635f, 0.879216f, 0.882154f, 0.883942f, 0.883576f, 0.881895f, 0.880318f,
- 0.878857f, 0.876202f, 0.871706f, 0.866459f, 0.861965f, 0.858241f, 0.853968f, 0.848548f, 0.843114f,
- 0.839005f, 0.835832f, 0.831994f, 0.826974f, 0.822068f, 0.818424f, 0.815335f, 0.811299f, 0.806245f,
- 0.801662f, 0.798530f, 0.796124f, 0.793287f, 0.790217f, 0.788273f, 0.788173f, 0.789081f, 0.789770f,
- 0.790279f, 0.791801f, 0.794900f, 0.798466f, 0.801028f, 0.802711f, 0.804962f, 0.808246f, 0.811143f,
- 0.812318f, 0.812490f, 0.813348f, 0.815027f, 0.815969f, 0.815335f, 0.814254f, 0.814150f, 0.814776f,
- 0.814772f, 0.813686f, 0.812569f, 0.812558f, 0.813456f, 0.814055f, 0.813736f, 0.813389f, 0.814324f,
- 0.816395f, 0.817948f, 0.818173f, 0.818549f, 0.820796f, 0.824069f, 0.826013f, 0.826514f, 0.828134f,
- 0.832033f, 0.835874f, 0.837493f, 0.838582f, 0.842047f, 0.847077f, 0.850263f, 0.851184f, 0.852998f,
- 0.856513f, 0.857491f, 0.852209f, 0.842446f, 0.831375f, 0.816757f, 0.793032f, 0.759821f, 0.723221f,
- 0.686832f, 0.646128f, 0.595684f, 0.539241f, 0.486856f, 0.441280f, 0.391676f, 0.324293f, 0.238342f,
- 0.149255f, 0.076756f, 0.031022f, 0.009191f, 0.001733f, 0.000140f, 0.000010f, 0.000019f, 0.000015f,
- 0.000015f, 0.000014f, 0.000011f, 0.000009f, 0.000009f, 0.000009f, 0.000007f, 0.000006f, 0.000006f,
- 0.000007f, 0.000006f, 0.000005f, 0.000005f, 0.000006f, 0.000005f, 0.000005f, 0.000005f, 0.000005f,
- 0.000005f, 0.000005f, 0.000005f, 0.000005f, 0.000005f, 0.000005f, 0.000005f, 0.000005f, 0.000005f,
- 0.000005f, 0.000005f, 0.000005f, 0.000005f, 0.000005f};
-
-
-/********************** defaultHRIR reverb rom tables at sampling rate 32kHz **********************/
-
-const float defaultHRIR_coherence_32kHz_fx[LR_IAC_LENGTH_NR_FC] =
- {0.992805f, 0.970760f, 0.904274f, 0.794804f, 0.650716f, 0.489140f, 0.331131f, 0.193608f, 0.084875f,
- 0.006016f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.006084f, 0.028478f, 0.040113f,
- 0.042718f, 0.041091f, 0.039575f, 0.039321f, 0.038312f, 0.033935f, 0.025743f, 0.016207f, 0.009052f,
- 0.006651f, 0.008629f, 0.012678f, 0.016595f, 0.019686f, 0.022543f, 0.025721f, 0.028716f, 0.030244f,
- 0.029496f, 0.027051f, 0.024537f, 0.023327f, 0.023382f, 0.023280f, 0.021454f, 0.017604f, 0.013058f,
- 0.009830f, 0.009160f, 0.010653f, 0.012635f, 0.013369f, 0.012139f, 0.009418f, 0.006248f, 0.003470f,
- 0.001368f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.001485f, 0.003632f, 0.005492f, 0.007105f, 0.008527f, 0.009629f,
- 0.010103f, 0.009685f, 0.008382f, 0.006502f, 0.004466f, 0.002568f, 0.000890f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000067f, 0.000797f, 0.001293f, 0.001577f, 0.001732f, 0.001797f, 0.001717f, 0.001403f, 0.000826f,
- 0.000060f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000318f, 0.000795f, 0.001124f, 0.001249f, 0.001151f, 0.000871f, 0.000495f, 0.000102f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000206f, 0.000612f, 0.000908f, 0.001107f,
- 0.001211f, 0.001209f, 0.001095f, 0.000883f, 0.000607f, 0.000298f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000029f, 0.000144f, 0.000254f, 0.000368f, 0.000486f, 0.000599f,
- 0.000706f, 0.000810f, 0.000925f, 0.001059f, 0.001209f, 0.001367f, 0.001526f, 0.001686f, 0.001850f,
- 0.002018f, 0.002181f, 0.002324f, 0.002440f, 0.002532f, 0.002614f, 0.002696f, 0.002779f, 0.002860f,
- 0.002941f, 0.003036f, 0.003166f, 0.003347f, 0.003580f, 0.003855f, 0.004158f, 0.004487f, 0.004850f,
- 0.005251f, 0.005688f, 0.006141f, 0.006591f, 0.007029f, 0.007462f, 0.007902f, 0.008351f, 0.008798f,
- 0.009224f, 0.009620f, 0.009991f, 0.010352f, 0.010711f, 0.011057f, 0.011367f, 0.011621f, 0.011817f,
- 0.011973f, 0.012106f, 0.012223f, 0.012309f, 0.012340f};
-
-const float defaultHRIR_left_avg_power_32kHz_fx[LR_IAC_LENGTH_NR_FC] =
- {1.030501f, 1.026884f, 1.017950f, 1.008331f, 1.002600f, 1.002689f, 1.006923f, 1.011298f, 1.012169f,
- 1.008564f, 1.002836f, 0.999190f, 1.001098f, 1.009190f, 1.020853f, 1.031695f, 1.037922f, 1.038190f,
- 1.033894f, 1.027913f, 1.022760f, 1.019333f, 1.016935f, 1.014341f, 1.010980f, 1.007343f, 1.004372f,
- 1.002476f, 1.000944f, 0.998381f, 0.993744f, 0.987300f, 0.980631f, 0.975661f, 0.973406f, 0.973314f,
- 0.973708f, 0.972973f, 0.970597f, 0.967379f, 0.964640f, 0.963173f, 0.962707f, 0.962251f, 0.960983f,
- 0.959006f, 0.957269f, 0.956892f, 0.958263f, 0.960779f, 0.963180f, 0.964405f, 0.964185f, 0.963091f,
- 0.962007f, 0.961501f, 0.961514f, 0.961497f, 0.960845f, 0.959307f, 0.957094f, 0.954689f, 0.952548f,
- 0.950838f, 0.949382f, 0.947807f, 0.945783f, 0.943211f, 0.940296f, 0.937430f, 0.934938f, 0.932866f,
- 0.930925f, 0.928674f, 0.925802f, 0.922364f, 0.918772f, 0.915508f, 0.912798f, 0.910417f, 0.907879f,
- 0.904771f, 0.901065f, 0.897182f, 0.893708f, 0.890989f, 0.888922f, 0.887041f, 0.884873f, 0.882294f,
- 0.879602f, 0.877334f, 0.875865f, 0.875169f, 0.874822f, 0.874316f, 0.873406f, 0.872264f, 0.871377f,
- 0.871228f, 0.871946f, 0.873284f, 0.874764f, 0.876044f, 0.877146f, 0.878469f, 0.880494f, 0.883471f,
- 0.887228f, 0.891261f, 0.895055f, 0.898401f, 0.901497f, 0.904769f, 0.908500f, 0.912597f, 0.916577f,
- 0.919848f, 0.922085f, 0.923416f, 0.924327f, 0.925296f, 0.926465f, 0.927512f, 0.927876f, 0.927108f,
- 0.925203f, 0.922559f, 0.919733f, 0.917037f, 0.914341f, 0.911186f, 0.907145f, 0.902128f, 0.896510f,
- 0.890876f, 0.885647f, 0.880803f, 0.875934f, 0.870521f, 0.864338f, 0.857593f, 0.850818f, 0.844491f,
- 0.838728f, 0.833217f, 0.827473f, 0.821173f, 0.814417f, 0.807660f, 0.801457f, 0.796095f, 0.791458f,
- 0.787181f, 0.782928f, 0.778681f, 0.774802f, 0.771808f, 0.770061f, 0.769530f, 0.769827f, 0.770454f,
- 0.771132f, 0.771943f, 0.773228f, 0.775315f, 0.778206f, 0.781513f, 0.784677f, 0.787274f, 0.789288f,
- 0.791065f, 0.793055f, 0.795463f, 0.798095f, 0.800470f, 0.802135f, 0.802987f, 0.803318f, 0.803610f,
- 0.804182f, 0.804958f, 0.805536f, 0.805434f, 0.804413f, 0.802618f, 0.800482f, 0.798381f, 0.796424f,
- 0.794397f, 0.791922f, 0.788779f, 0.785087f, 0.781262f, 0.777778f, 0.774863f, 0.772372f, 0.769886f,
- 0.767005f, 0.763613f, 0.759968f, 0.756518f, 0.753595f, 0.751171f, 0.748880f, 0.746246f, 0.743010f,
- 0.739317f, 0.735608f, 0.732307f, 0.729533f, 0.727006f, 0.724256f, 0.720938f, 0.717104f, 0.713138f,
- 0.709525f, 0.706513f, 0.703976f, 0.701515f, 0.698771f, 0.695693f, 0.692572f, 0.689860f, 0.687867f,
- 0.686574f, 0.685644f, 0.684672f, 0.683452f, 0.682093f, 0.680935f, 0.680291f, 0.680231f, 0.680501f,
- 0.680700f, 0.680500f, 0.679869f, 0.679047f, 0.678394f, 0.678091f, 0.678035f, 0.677888f, 0.677314f,
- 0.676218f, 0.674814f, 0.673484f, 0.672514f, 0.671917f, 0.671422f, 0.670711f, 0.669654f, 0.668436f,
- 0.667417f, 0.666896f, 0.666879f, 0.667100f, 0.667225f};
-
-const float defaultHRIR_right_avg_power_32kHz_fx[LR_IAC_LENGTH_NR_FC] =
- {1.030502f, 1.026883f, 1.017953f, 1.008327f, 1.002600f, 1.002691f, 1.006922f, 1.011300f, 1.012168f,
- 1.008564f, 1.002837f, 0.999188f, 1.001094f, 1.009186f, 1.020854f, 1.031695f, 1.037923f, 1.038191f,
- 1.033893f, 1.027913f, 1.022760f, 1.019332f, 1.016931f, 1.014338f, 1.010982f, 1.007343f, 1.004370f,
- 1.002473f, 1.000948f, 0.998380f, 0.993744f, 0.987300f, 0.980628f, 0.975661f, 0.973406f, 0.973316f,
- 0.973710f, 0.972971f, 0.970599f, 0.967380f, 0.964639f, 0.963173f, 0.962708f, 0.962246f, 0.960984f,
- 0.959004f, 0.957270f, 0.956889f, 0.958265f, 0.960778f, 0.963180f, 0.964406f, 0.964189f, 0.963091f,
- 0.962005f, 0.961500f, 0.961514f, 0.961496f, 0.960845f, 0.959306f, 0.957092f, 0.954688f, 0.952548f,
- 0.950838f, 0.949380f, 0.947808f, 0.945783f, 0.943212f, 0.940298f, 0.937430f, 0.934937f, 0.932865f,
- 0.930925f, 0.928674f, 0.925801f, 0.922365f, 0.918770f, 0.915509f, 0.912795f, 0.910417f, 0.907881f,
- 0.904769f, 0.901065f, 0.897183f, 0.893709f, 0.890990f, 0.888922f, 0.887040f, 0.884874f, 0.882293f,
- 0.879603f, 0.877335f, 0.875867f, 0.875169f, 0.874820f, 0.874318f, 0.873404f, 0.872263f, 0.871381f,
- 0.871226f, 0.871950f, 0.873283f, 0.874763f, 0.876042f, 0.877147f, 0.878470f, 0.880494f, 0.883473f,
- 0.887227f, 0.891261f, 0.895053f, 0.898401f, 0.901500f, 0.904769f, 0.908500f, 0.912599f, 0.916578f,
- 0.919847f, 0.922084f, 0.923417f, 0.924328f, 0.925296f, 0.926463f, 0.927512f, 0.927872f, 0.927107f,
- 0.925199f, 0.922559f, 0.919735f, 0.917037f, 0.914339f, 0.911186f, 0.907142f, 0.902131f, 0.896510f,
- 0.890876f, 0.885644f, 0.880802f, 0.875934f, 0.870524f, 0.864337f, 0.857594f, 0.850819f, 0.844491f,
- 0.838727f, 0.833219f, 0.827473f, 0.821173f, 0.814415f, 0.807662f, 0.801459f, 0.796094f, 0.791462f,
- 0.787182f, 0.782926f, 0.778681f, 0.774803f, 0.771810f, 0.770061f, 0.769529f, 0.769825f, 0.770456f,
- 0.771131f, 0.771940f, 0.773230f, 0.775319f, 0.778206f, 0.781513f, 0.784675f, 0.787274f, 0.789285f,
- 0.791065f, 0.793054f, 0.795465f, 0.798097f, 0.800468f, 0.802133f, 0.802987f, 0.803319f, 0.803610f,
- 0.804179f, 0.804959f, 0.805538f, 0.805434f, 0.804411f, 0.802621f, 0.800480f, 0.798379f, 0.796426f,
- 0.794398f, 0.791920f, 0.788777f, 0.785087f, 0.781263f, 0.777777f, 0.774862f, 0.772372f, 0.769886f,
- 0.767004f, 0.763614f, 0.759968f, 0.756517f, 0.753593f, 0.751172f, 0.748881f, 0.746246f, 0.743011f,
- 0.739318f, 0.735608f, 0.732306f, 0.729532f, 0.727006f, 0.724254f, 0.720939f, 0.717103f, 0.713136f,
- 0.709524f, 0.706514f, 0.703976f, 0.701513f, 0.698772f, 0.695692f, 0.692570f, 0.689859f, 0.687869f,
- 0.686573f, 0.685642f, 0.684671f, 0.683452f, 0.682094f, 0.680934f, 0.680290f, 0.680228f, 0.680501f,
- 0.680699f, 0.680498f, 0.679867f, 0.679050f, 0.678395f, 0.678093f, 0.678035f, 0.677889f, 0.677315f,
- 0.676220f, 0.674814f, 0.673485f, 0.672517f, 0.671918f, 0.671424f, 0.670712f, 0.669657f, 0.668437f,
- 0.667421f, 0.666896f, 0.666880f, 0.667103f, 0.667228f};
-
-
-
-/********************** defaultHRIR reverb rom tables at sampling rate 16kHz **********************/
-
-const float defaultHRIR_coherence_16kHz_fx[LR_IAC_LENGTH_NR_FC_16KHZ] =
- {0.983044f, 0.960794f, 0.893756f, 0.783586f, 0.638963f, 0.477338f, 0.319879f, 0.183374f, 0.075909f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.003842f, 0.025288f, 0.035886f,
- 0.037785f, 0.035991f, 0.034784f, 0.035091f, 0.034683f, 0.030849f, 0.023146f, 0.014061f, 0.007275f,
- 0.005053f, 0.006930f, 0.010589f, 0.013905f, 0.016288f, 0.018404f, 0.020849f, 0.023164f, 0.024149f,
- 0.023098f, 0.020635f, 0.018325f, 0.017381f, 0.017611f, 0.017534f, 0.015650f, 0.011786f, 0.007342f,
- 0.004290f, 0.003732f, 0.005148f, 0.006838f, 0.007172f, 0.005579f, 0.002632f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000238f, 0.001738f, 0.003011f, 0.003910f,
- 0.004120f, 0.003394f, 0.001769f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.000000f,
- 0.000000f, 0.002101f, 0.004247f, 0.006330f, 0.008300f, 0.010110f, 0.011735f, 0.013165f, 0.014384f,
- 0.015345f, 0.015972f, 0.016191f};
-
-const float defaultHRIR_left_avg_power_16kHz_fx[LR_IAC_LENGTH_NR_FC_16KHZ] =
- {1.118974f, 1.115256f, 1.106210f, 1.096901f, 1.092316f, 1.094422f, 1.101140f, 1.107775f, 1.110000f,
- 1.106535f, 1.099921f, 1.094914f, 1.095643f, 1.103178f, 1.114955f, 1.126292f, 1.132973f, 1.133288f,
- 1.128471f, 1.121439f, 1.114842f, 1.109721f, 1.105480f, 1.100966f, 1.095650f, 1.090074f, 1.085225f,
- 1.081525f, 1.078267f, 1.074026f, 1.067777f, 1.059839f, 1.051856f, 1.045772f, 1.042531f, 1.041432f,
- 1.040607f, 1.038291f, 1.033910f, 1.028286f, 1.022846f, 1.018514f, 1.015152f, 1.011898f, 1.008047f,
- 1.003762f, 0.999992f, 0.997770f, 0.997349f, 0.997960f, 0.998259f, 0.997177f, 0.994506f, 0.990883f,
- 0.987207f, 0.984003f, 0.981133f, 0.977984f, 0.973950f, 0.968837f, 0.962915f, 0.956690f, 0.950584f,
- 0.944679f, 0.938744f, 0.932399f, 0.925372f, 0.917663f, 0.909568f, 0.901511f, 0.893804f, 0.886455f,
- 0.879155f, 0.871463f, 0.863142f, 0.854285f, 0.845334f, 0.836740f, 0.828656f, 0.820817f, 0.812713f,
- 0.803960f, 0.794564f, 0.784952f, 0.775633f, 0.766881f, 0.758539f, 0.750156f, 0.741330f, 0.732004f,
- 0.722524f, 0.713387f, 0.704919f, 0.697057f, 0.689419f, 0.681576f, 0.673350f, 0.664931f, 0.656703f,
- 0.648997f, 0.641801f, 0.634760f, 0.627357f, 0.619192f, 0.610186f, 0.600526f, 0.590442f, 0.579952f,
- 0.568762f, 0.556384f, 0.542389f, 0.526648f, 0.509355f, 0.490884f, 0.471542f, 0.451447f, 0.430550f,
- 0.408842f, 0.386537f, 0.364126f, 0.342284f, 0.321675f, 0.302809f, 0.286016f, 0.271536f, 0.259639f,
- 0.250691f, 0.245099f, 0.243192f};
-
-const float defaultHRIR_right_avg_power_16kHz_fx[LR_IAC_LENGTH_NR_FC_16KHZ] =
- {1.118974f, 1.115254f, 1.106207f, 1.096903f, 1.092317f, 1.094425f, 1.101145f, 1.107775f, 1.109999f,
- 1.106540f, 1.099921f, 1.094912f, 1.095644f, 1.103178f, 1.114952f, 1.126292f, 1.132973f, 1.133288f,
- 1.128472f, 1.121439f, 1.114842f, 1.109719f, 1.105481f, 1.100965f, 1.095650f, 1.090072f, 1.085224f,
- 1.081527f, 1.078270f, 1.074025f, 1.067775f, 1.059840f, 1.051856f, 1.045772f, 1.042533f, 1.041433f,
- 1.040611f, 1.038292f, 1.033911f, 1.028286f, 1.022844f, 1.018512f, 1.015153f, 1.011899f, 1.008050f,
- 1.003762f, 0.999995f, 0.997769f, 0.997349f, 0.997959f, 0.998259f, 0.997178f, 0.994509f, 0.990883f,
- 0.987204f, 0.984003f, 0.981133f, 0.977983f, 0.973949f, 0.968836f, 0.962914f, 0.956689f, 0.950583f,
- 0.944681f, 0.938745f, 0.932399f, 0.925373f, 0.917662f, 0.909567f, 0.901511f, 0.893804f, 0.886456f,
- 0.879153f, 0.871467f, 0.863138f, 0.854286f, 0.845334f, 0.836740f, 0.828656f, 0.820816f, 0.812712f,
- 0.803961f, 0.794567f, 0.784951f, 0.775631f, 0.766882f, 0.758540f, 0.750158f, 0.741330f, 0.732005f,
- 0.722523f, 0.713388f, 0.704920f, 0.697057f, 0.689418f, 0.681575f, 0.673352f, 0.664930f, 0.656706f,
- 0.648998f, 0.641802f, 0.634762f, 0.627355f, 0.619192f, 0.610187f, 0.600527f, 0.590442f, 0.579953f,
- 0.568763f, 0.556383f, 0.542389f, 0.526646f, 0.509355f, 0.490883f, 0.471543f, 0.451446f, 0.430550f,
- 0.408843f, 0.386537f, 0.364127f, 0.342285f, 0.321676f, 0.302809f, 0.286016f, 0.271535f, 0.259640f,
- 0.250692f, 0.245099f, 0.243192f};
-
-
-#endif
-
-
-
-#else
-
-
-
-/********************** CRendBin_Combined_HRIR **********************/
-
-const Word32 CRendBin_Combined_HRIR_latency_s_fx = 44741;/*Q-31*/
-/* Sample Rate = 48000 */
-
-const Word16 CRendBin_Combined_HRIR_max_num_iterations_48kHz = 1;
-const UWord16 CRendBin_Combined_HRIR_num_iterations_48kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS]={{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1} };
-const UWord16 CRendBin_Combined_HRIR_num_iterations_diffuse_48kHz[BINAURAL_CHANNELS] = {0, 0};
-const UWord16 CRendBin_Combined_HRIR_pIndex_frequency_max_48kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][1]={{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}}};
-const UWord16 CRendBin_Combined_HRIR_index_frequency_max_diffuse_48kHz = 0;
-const Word16 CRendBin_Combined_HRIR_inv_diffuse_weight_48kHz_fx[BINAURAL_CHANNELS][HRTF_LS_CHANNELS]={{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}};
-const UWord16 *CRendBin_Combined_HRIR_pIndex_frequency_max_diffuse_48kHz[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_Combined_HRIR_coeff_diffuse_re_48kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_Combined_HRIR_coeff_diffuse_im_48kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-/* Sample Rate = 32000 */
-
-const Word16 CRendBin_Combined_HRIR_max_num_iterations_32kHz = 1;
-const UWord16 CRendBin_Combined_HRIR_num_iterations_32kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS]={{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1} };
-const UWord16 CRendBin_Combined_HRIR_num_iterations_diffuse_32kHz[BINAURAL_CHANNELS] = {0, 0};
-const UWord16 CRendBin_Combined_HRIR_pIndex_frequency_max_32kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][1]={{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}}};
-const UWord16 CRendBin_Combined_HRIR_index_frequency_max_diffuse_32kHz = 0;
-const Word16 CRendBin_Combined_HRIR_inv_diffuse_weight_32kHz_fx[BINAURAL_CHANNELS][HRTF_LS_CHANNELS]={{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}};
-const UWord16 *CRendBin_Combined_HRIR_pIndex_frequency_max_diffuse_32kHz[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_Combined_HRIR_coeff_diffuse_re_32kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_Combined_HRIR_coeff_diffuse_im_32kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-/* Sample Rate = 16000 */
-
-const Word16 CRendBin_Combined_HRIR_max_num_iterations_16kHz = 1;
-const UWord16 CRendBin_Combined_HRIR_num_iterations_16kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS]={{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1} };
-const UWord16 CRendBin_Combined_HRIR_num_iterations_diffuse_16kHz[BINAURAL_CHANNELS] = {0, 0};
-const UWord16 CRendBin_Combined_HRIR_pIndex_frequency_max_16kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][1]={{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}}};
-const UWord16 CRendBin_Combined_HRIR_index_frequency_max_diffuse_16kHz = 0;
-const Word16 CRendBin_Combined_HRIR_inv_diffuse_weight_16kHz_fx[BINAURAL_CHANNELS][HRTF_LS_CHANNELS]={{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}};
-const UWord16 *CRendBin_Combined_HRIR_pIndex_frequency_max_diffuse_16kHz[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_Combined_HRIR_coeff_diffuse_re_16kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_Combined_HRIR_coeff_diffuse_im_16kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-
-
-
-/********************** CRendBin_FOA_HRIR **********************/
-
-const Word32 CRendBin_FOA_HRIR_latency_s_fx = 44741; // Q31
-
-/* Sample Rate = 48000 */
-
-const Word16 CRendBin_FOA_HRIR_max_num_iterations_48kHz = 1;
-const UWord16 CRendBin_FOA_HRIR_num_iterations_48kHz[FOA_CHANNELS][BINAURAL_CHANNELS]={{1, 1}, {1, 1}, {1, 1}, {1, 1} };
-const UWord16 CRendBin_FOA_HRIR_num_iterations_diffuse_48kHz[BINAURAL_CHANNELS] = {0, 0};
-const UWord16 CRendBin_FOA_HRIR_pIndex_frequency_max_48kHz[FOA_CHANNELS][BINAURAL_CHANNELS][1]={{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}}};
-const UWord16 CRendBin_FOA_HRIR_index_frequency_max_diffuse_48kHz = 0;
-const Word16 CRendBin_FOA_HRIR_inv_diffuse_weight_48kHz_fx[BINAURAL_CHANNELS][FOA_CHANNELS]={{0, 0, 0, 0},{0, 0, 0, 0}};
-const UWord16 *CRendBin_FOA_HRIR_pIndex_frequency_max_diffuse_48kHz[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_FOA_HRIR_coeff_diffuse_re_48kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_FOA_HRIR_coeff_diffuse_im_48kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-/* Sample Rate = 32000 */
-
-const Word16 CRendBin_FOA_HRIR_max_num_iterations_32kHz = 1;
-const UWord16 CRendBin_FOA_HRIR_num_iterations_32kHz[FOA_CHANNELS][BINAURAL_CHANNELS]={{1, 1}, {1, 1}, {1, 1}, {1, 1} };
-const UWord16 CRendBin_FOA_HRIR_num_iterations_diffuse_32kHz[BINAURAL_CHANNELS] = {0, 0};
-const UWord16 CRendBin_FOA_HRIR_pIndex_frequency_max_32kHz[FOA_CHANNELS][BINAURAL_CHANNELS][1]={{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}}};
-const UWord16 CRendBin_FOA_HRIR_index_frequency_max_diffuse_32kHz = 0;
-const Word16 CRendBin_FOA_HRIR_inv_diffuse_weight_32kHz_fx[BINAURAL_CHANNELS][FOA_CHANNELS]={{0, 0, 0, 0},{0, 0, 0, 0}};
-const UWord16 *CRendBin_FOA_HRIR_pIndex_frequency_max_diffuse_32kHz[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_FOA_HRIR_coeff_diffuse_re_32kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_FOA_HRIR_coeff_diffuse_im_32kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-/* Sample Rate = 16000 */
-
-const Word16 CRendBin_FOA_HRIR_max_num_iterations_16kHz = 1;
-const UWord16 CRendBin_FOA_HRIR_num_iterations_16kHz[FOA_CHANNELS][BINAURAL_CHANNELS]={{1, 1}, {1, 1}, {1, 1}, {1, 1} };
-const UWord16 CRendBin_FOA_HRIR_num_iterations_diffuse_16kHz[BINAURAL_CHANNELS] = {0, 0};
-const UWord16 CRendBin_FOA_HRIR_pIndex_frequency_max_16kHz[FOA_CHANNELS][BINAURAL_CHANNELS][1]={{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}}};
-const UWord16 CRendBin_FOA_HRIR_index_frequency_max_diffuse_16kHz = 0;
-const Word16 CRendBin_FOA_HRIR_inv_diffuse_weight_16kHz_fx[BINAURAL_CHANNELS][FOA_CHANNELS]={{0, 0, 0, 0},{0, 0, 0, 0}};
-const UWord16 *CRendBin_FOA_HRIR_pIndex_frequency_max_diffuse_16kHz[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_FOA_HRIR_coeff_diffuse_re_16kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_FOA_HRIR_coeff_diffuse_im_16kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-
-
-/********************** CRendBin_HOA2_HRIR **********************/
-
-const Word32 CRendBin_HOA2_HRIR_latency_s_fx = 44741; // Q31
-
-/* Sample Rate = 48000 */
-
-const Word16 CRendBin_HOA2_HRIR_max_num_iterations_48kHz = 1;
-const UWord16 CRendBin_HOA2_HRIR_num_iterations_48kHz[HOA2_CHANNELS][BINAURAL_CHANNELS]={{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1} };
-const UWord16 CRendBin_HOA2_HRIR_num_iterations_diffuse_48kHz[BINAURAL_CHANNELS] = {0, 0};
-const UWord16 CRendBin_HOA2_HRIR_pIndex_frequency_max_48kHz[HOA2_CHANNELS][BINAURAL_CHANNELS][1]={{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}}};
-const UWord16 CRendBin_HOA2_HRIR_index_frequency_max_diffuse_48kHz = 0;
-const Word16 CRendBin_HOA2_HRIR_inv_diffuse_weight_48kHz_fx[BINAURAL_CHANNELS][HOA2_CHANNELS]={{0, 0, 0, 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0, 0, 0}};
-const UWord16 *CRendBin_HOA2_HRIR_pIndex_frequency_max_diffuse_48kHz[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_HOA2_HRIR_coeff_diffuse_re_48kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_HOA2_HRIR_coeff_diffuse_im_48kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-/* Sample Rate = 32000 */
-
-const Word16 CRendBin_HOA2_HRIR_max_num_iterations_32kHz = 1;
-const UWord16 CRendBin_HOA2_HRIR_num_iterations_32kHz[HOA2_CHANNELS][BINAURAL_CHANNELS]={{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1} };
-const UWord16 CRendBin_HOA2_HRIR_num_iterations_diffuse_32kHz[BINAURAL_CHANNELS] = {0, 0};
-const UWord16 CRendBin_HOA2_HRIR_pIndex_frequency_max_32kHz[HOA2_CHANNELS][BINAURAL_CHANNELS][1]={{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}}};
-const UWord16 CRendBin_HOA2_HRIR_index_frequency_max_diffuse_32kHz = 0;
-const Word16 CRendBin_HOA2_HRIR_inv_diffuse_weight_32kHz_fx[BINAURAL_CHANNELS][HOA2_CHANNELS]={{0, 0, 0, 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0, 0, 0}};
-const UWord16 *CRendBin_HOA2_HRIR_pIndex_frequency_max_diffuse_32kHz[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_HOA2_HRIR_coeff_diffuse_re_32kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_HOA2_HRIR_coeff_diffuse_im_32kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-/* Sample Rate = 16000 */
-
-const Word16 CRendBin_HOA2_HRIR_max_num_iterations_16kHz = 1;
-const UWord16 CRendBin_HOA2_HRIR_num_iterations_16kHz[HOA2_CHANNELS][BINAURAL_CHANNELS]={{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1} };
-const UWord16 CRendBin_HOA2_HRIR_num_iterations_diffuse_16kHz[BINAURAL_CHANNELS] = {0, 0};
-const UWord16 CRendBin_HOA2_HRIR_pIndex_frequency_max_16kHz[HOA2_CHANNELS][BINAURAL_CHANNELS][1]={{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}}};
-const UWord16 CRendBin_HOA2_HRIR_index_frequency_max_diffuse_16kHz = 0;
-const Word16 CRendBin_HOA2_HRIR_inv_diffuse_weight_16kHz_fx[BINAURAL_CHANNELS][HOA2_CHANNELS]={{0, 0, 0, 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0, 0, 0}};
-const UWord16 *CRendBin_HOA2_HRIR_pIndex_frequency_max_diffuse_16kHz[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_HOA2_HRIR_coeff_diffuse_re_16kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_HOA2_HRIR_coeff_diffuse_im_16kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-
-
-/********************** CRendBin_HOA3_HRIR **********************/
-
-const Word32 CRendBin_HOA3_HRIR_latency_s_fx = 44741;/*Q-31*/
-/* Sample Rate = 48000 */
-
-const Word16 CRendBin_HOA3_HRIR_max_num_iterations_48kHz = 1;
-const UWord16 CRendBin_HOA3_HRIR_num_iterations_48kHz[HOA3_CHANNELS][BINAURAL_CHANNELS]={{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1} };
-const UWord16 CRendBin_HOA3_HRIR_num_iterations_diffuse_48kHz[BINAURAL_CHANNELS] = {0, 0};
-const UWord16 CRendBin_HOA3_HRIR_pIndex_frequency_max_48kHz[HOA3_CHANNELS][BINAURAL_CHANNELS][1]={{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}},{{240},{240}}};
-const UWord16 CRendBin_HOA3_HRIR_index_frequency_max_diffuse_48kHz = 0;
-const Word16 CRendBin_HOA3_HRIR_inv_diffuse_weight_48kHz_fx[BINAURAL_CHANNELS][HOA3_CHANNELS]={{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}};
-const UWord16 *CRendBin_HOA3_HRIR_pIndex_frequency_max_diffuse_48kHz[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_HOA3_HRIR_coeff_diffuse_re_48kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_HOA3_HRIR_coeff_diffuse_im_48kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-/* Sample Rate = 32000 */
-
-const Word16 CRendBin_HOA3_HRIR_max_num_iterations_32kHz = 1;
-const UWord16 CRendBin_HOA3_HRIR_num_iterations_32kHz[HOA3_CHANNELS][BINAURAL_CHANNELS]={{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1} };
-const UWord16 CRendBin_HOA3_HRIR_num_iterations_diffuse_32kHz[BINAURAL_CHANNELS] = {0, 0};
-const UWord16 CRendBin_HOA3_HRIR_pIndex_frequency_max_32kHz[HOA3_CHANNELS][BINAURAL_CHANNELS][1]={{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}},{{160},{160}}};
-const UWord16 CRendBin_HOA3_HRIR_index_frequency_max_diffuse_32kHz = 0;
-const Word16 CRendBin_HOA3_HRIR_inv_diffuse_weight_32kHz_fx[BINAURAL_CHANNELS][HOA3_CHANNELS]={{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}};
-const UWord16 *CRendBin_HOA3_HRIR_pIndex_frequency_max_diffuse_32kHz[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_HOA3_HRIR_coeff_diffuse_re_32kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_HOA3_HRIR_coeff_diffuse_im_32kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-/* Sample Rate = 16000 */
-
-const Word16 CRendBin_HOA3_HRIR_max_num_iterations_16kHz = 1;
-const UWord16 CRendBin_HOA3_HRIR_num_iterations_16kHz[HOA3_CHANNELS][BINAURAL_CHANNELS]={{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1} };
-const UWord16 CRendBin_HOA3_HRIR_num_iterations_diffuse_16kHz[BINAURAL_CHANNELS] = {0, 0};
-const UWord16 CRendBin_HOA3_HRIR_pIndex_frequency_max_16kHz[HOA3_CHANNELS][BINAURAL_CHANNELS][1]={{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}},{{80},{80}}};
-const UWord16 CRendBin_HOA3_HRIR_index_frequency_max_diffuse_16kHz = 0;
-const Word16 CRendBin_HOA3_HRIR_inv_diffuse_weight_16kHz[BINAURAL_CHANNELS][HOA3_CHANNELS]={{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}};
-const Word16 CRendBin_HOA3_HRIR_inv_diffuse_weight_16kHz_fx[HOA3_CHANNELS]={0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-const UWord16 *CRendBin_HOA3_HRIR_pIndex_frequency_max_diffuse_16kHz[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_HOA3_HRIR_coeff_diffuse_re_16kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-const Word32 *CRendBin_HOA3_HRIR_coeff_diffuse_im_16kHz_fx[BINAURAL_CHANNELS]={NULL,NULL};
-
-
-/********************** CRendBin_Combined_BRIR **********************/
-
-const Word32 CRendBin_Combined_BRIR_latency_s_fx = 313176;/*Q-31*/
-/* Sample Rate = 48000 */
-
-const Word16 CRendBin_Combined_BRIR_max_num_iterations_48kHz = 22;
-const UWord16 CRendBin_Combined_BRIR_num_iterations_48kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS]={{22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22} };
-const UWord16 CRendBin_Combined_BRIR_num_iterations_diffuse_48kHz[BINAURAL_CHANNELS] = {40, 40};
-const UWord16 CRendBin_Combined_BRIR_pIndex_frequency_max_48kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][22]={{{116, 118, 117, 121, 112, 119, 121, 131, 134, 131, 137, 127, 134, 135, 134, 135, 129, 139, 135, 130, 128, 240},{116, 118, 117, 121, 112, 119, 121, 131, 134, 131, 137, 127, 134, 135, 134, 135, 129, 139, 135, 130, 128, 240}},{{122, 106, 121, 114, 121, 123, 119, 126, 123, 126, 127, 130, 128, 136, 132, 131, 129, 141, 137, 131, 129, 240},{122, 106, 121, 114, 121, 123, 119, 126, 123, 126, 127, 130, 128, 136, 132, 131, 129, 141, 137, 131, 129, 240}},{{118, 104, 116, 104, 123, 123, 122, 125, 130, 128, 132, 135, 131, 132, 131, 132, 135, 137, 144, 129, 129, 240},{118, 104, 116, 104, 123, 123, 122, 125, 130, 128, 132, 135, 131, 132, 131, 132, 135, 137, 144, 129, 129, 240}},{{102, 117, 116, 121, 117, 114, 115, 125, 126, 124, 125, 142, 133, 124, 129, 132, 134, 137, 143, 125, 125, 240},{102, 117, 116, 121, 117, 114, 115, 125, 126, 124, 125, 142, 133, 124, 129, 132, 134, 137, 143, 125, 125, 240}},{{116, 115, 117, 120, 121, 119, 125, 129, 123, 129, 124, 127, 128, 143, 133, 131, 136, 141, 158, 127, 131, 240},{116, 115, 117, 120, 121, 119, 125, 129, 123, 129, 124, 127, 128, 143, 133, 131, 136, 141, 158, 127, 131, 240}},{{112, 106, 118, 123, 115, 120, 129, 123, 130, 127, 130, 130, 131, 131, 131, 135, 134, 153, 138, 132, 127, 240},{112, 106, 118, 123, 115, 120, 129, 123, 130, 127, 130, 130, 131, 131, 131, 135, 134, 153, 138, 132, 127, 240}},{{107, 112, 111, 120, 115, 125, 122, 123, 132, 123, 133, 138, 125, 134, 130, 131, 135, 137, 136, 127, 121, 240},{107, 112, 111, 120, 115, 125, 122, 123, 132, 123, 133, 138, 125, 134, 130, 131, 135, 137, 136, 127, 121, 240}},{{111, 113, 132, 115, 121, 123, 121, 127, 135, 128, 129, 128, 133, 130, 133, 138, 134, 137, 152, 138, 124, 240},{111, 113, 132, 115, 121, 123, 121, 127, 135, 128, 129, 128, 133, 130, 133, 138, 134, 137, 152, 138, 124, 240}},{{114, 104, 114, 117, 125, 127, 123, 129, 123, 127, 144, 131, 138, 132, 129, 129, 132, 134, 136, 127, 121, 240},{114, 104, 114, 117, 125, 127, 123, 129, 123, 127, 144, 131, 138, 132, 129, 129, 132, 134, 136, 127, 121, 240}},{{100, 102, 112, 118, 115, 116, 118, 116, 121, 124, 125, 121, 125, 130, 127, 132, 133, 134, 134, 129, 132, 240},{100, 102, 112, 118, 115, 116, 118, 116, 121, 124, 125, 121, 125, 130, 127, 132, 133, 134, 134, 129, 132, 240}},{{106, 93, 103, 108, 124, 111, 114, 115, 120, 121, 119, 123, 131, 130, 132, 132, 132, 131, 140, 129, 131, 240},{106, 93, 103, 108, 124, 111, 114, 115, 120, 121, 119, 123, 131, 130, 132, 132, 132, 131, 140, 129, 131, 240}},{{108, 101, 115, 115, 115, 110, 121, 124, 124, 120, 122, 129, 124, 128, 125, 132, 135, 133, 138, 160, 119, 240},{108, 101, 115, 115, 115, 110, 121, 124, 124, 120, 122, 129, 124, 128, 125, 132, 135, 133, 138, 160, 119, 240}},{{112, 106, 114, 110, 128, 117, 120, 126, 124, 128, 126, 132, 129, 127, 133, 134, 136, 133, 154, 197, 129, 240},{112, 106, 114, 110, 128, 117, 120, 126, 124, 128, 126, 132, 129, 127, 133, 134, 136, 133, 154, 197, 129, 240}},{{102, 107, 111, 116, 116, 120, 118, 115, 120, 119, 128, 131, 131, 130, 128, 126, 126, 132, 145, 136, 133, 240},{102, 107, 111, 116, 116, 120, 118, 115, 120, 119, 128, 131, 131, 130, 128, 126, 126, 132, 145, 136, 133, 240}},{{111, 117, 106, 120, 123, 121, 125, 125, 130, 125, 123, 123, 127, 131, 125, 131, 135, 134, 148, 134, 132, 240},{111, 117, 106, 120, 123, 121, 125, 125, 130, 125, 123, 123, 127, 131, 125, 131, 135, 134, 148, 134, 132, 240}}};
-const UWord16 CRendBin_Combined_BRIR_index_frequency_max_diffuse_48kHz = 98;
-const float CRendBin_Combined_BRIR_inv_diffuse_weight_48kHz[BINAURAL_CHANNELS][HRTF_LS_CHANNELS]={{0.224183f, 0.227455f, 0.241830f, 0.207155f, 0.218087f, 0.222942f, 0.232158f, 0.248203f, 0.249262f, 0.261591f, 0.246276f, 0.279163f, 0.285701f, 0.262541f, 0.271844f},{0.224183f, 0.227455f, 0.241830f, 0.207155f, 0.218087f, 0.222942f, 0.232158f, 0.248203f, 0.249262f, 0.261591f, 0.246276f, 0.279163f, 0.285701f, 0.262541f, 0.271844f}};
-const Word16 CRendBin_Combined_BRIR_inv_diffuse_weight_48kHz_fx[BINAURAL_CHANNELS][HRTF_LS_CHANNELS]={{7346, 7453, 7924, 6788, 7146, 7305, 7607, 8133, 8167, 8571, 8069, 9147, 9361, 8602, 8907},{7346, 7453, 7924, 6788, 7146, 7305, 7607, 8133, 8167, 8571, 8069, 9147, 9361, 8602, 8907}};
-const UWord16 CRendBin_Combined_BRIR_pIndex_frequency_max_diffuse_48kHz[BINAURAL_CHANNELS][40]={{47, 47, 47, 47, 47, 47, 51, 51, 58, 58, 58, 65, 65, 65, 65, 65, 72, 72, 72, 74, 74, 77, 77, 79, 81, 81, 81, 81, 87, 87, 87, 87, 87, 87, 91, 91, 93, 93, 93, 98},{47, 47, 47, 47, 47, 47, 51, 51, 58, 58, 58, 65, 65, 65, 65, 65, 72, 72, 72, 74, 74, 77, 77, 79, 81, 81, 81, 81, 87, 87, 87, 87, 87, 87, 91, 91, 93, 93, 93, 98}};
-/* Sample Rate = 32000 */
-
-const Word16 CRendBin_Combined_BRIR_max_num_iterations_32kHz = 22;
-const UWord16 CRendBin_Combined_BRIR_num_iterations_32kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS]={{22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22}, {22, 22} };
-const UWord16 CRendBin_Combined_BRIR_num_iterations_diffuse_32kHz[BINAURAL_CHANNELS] = {40, 40};
-const UWord16 CRendBin_Combined_BRIR_pIndex_frequency_max_32kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][22]={{{115, 117, 117, 120, 112, 118, 121, 130, 126, 130, 136, 127, 133, 135, 132, 133, 129, 137, 134, 129, 128, 160},{115, 117, 117, 120, 112, 118, 121, 130, 126, 130, 136, 127, 133, 135, 132, 133, 129, 137, 134, 129, 128, 160}},{{121, 106, 119, 113, 120, 123, 114, 126, 123, 125, 127, 128, 127, 134, 132, 130, 129, 139, 133, 131, 128, 160},{121, 106, 119, 113, 120, 123, 114, 126, 123, 125, 127, 128, 127, 134, 132, 130, 129, 139, 133, 131, 128, 160}},{{113, 103, 116, 104, 123, 123, 122, 124, 130, 128, 132, 131, 131, 132, 130, 132, 130, 135, 137, 128, 128, 160},{113, 103, 116, 104, 123, 123, 122, 124, 130, 128, 132, 131, 131, 132, 130, 132, 130, 135, 137, 128, 128, 160}},{{102, 116, 116, 121, 116, 114, 115, 121, 125, 123, 124, 130, 132, 122, 127, 131, 131, 135, 133, 124, 125, 160},{102, 116, 116, 121, 116, 114, 115, 121, 125, 123, 124, 130, 132, 122, 127, 131, 131, 135, 133, 124, 125, 160}},{{115, 115, 115, 119, 121, 119, 125, 127, 123, 129, 122, 126, 128, 134, 130, 130, 131, 140, 146, 127, 131, 160},{115, 115, 115, 119, 121, 119, 125, 127, 123, 129, 122, 126, 128, 134, 130, 130, 131, 140, 146, 127, 131, 160}},{{112, 106, 118, 121, 115, 117, 129, 123, 128, 126, 130, 130, 131, 131, 130, 134, 133, 149, 130, 132, 126, 160},{112, 106, 118, 121, 115, 117, 129, 123, 128, 126, 130, 130, 131, 131, 130, 134, 133, 149, 130, 132, 126, 160}},{{107, 112, 110, 119, 114, 124, 121, 121, 132, 122, 131, 134, 124, 133, 130, 129, 134, 134, 135, 127, 120, 160},{107, 112, 110, 119, 114, 124, 121, 121, 132, 122, 131, 134, 124, 133, 130, 129, 134, 134, 135, 127, 120, 160}},{{110, 113, 123, 113, 121, 120, 120, 126, 131, 123, 128, 128, 132, 130, 132, 136, 133, 136, 135, 128, 124, 160},{110, 113, 123, 113, 121, 120, 120, 126, 131, 123, 128, 128, 132, 130, 132, 136, 133, 136, 135, 128, 124, 160}},{{114, 101, 113, 113, 124, 126, 123, 128, 122, 127, 132, 127, 136, 128, 128, 127, 132, 132, 129, 125, 120, 160},{114, 101, 113, 113, 124, 126, 123, 128, 122, 127, 132, 127, 136, 128, 128, 127, 132, 132, 129, 125, 120, 160}},{{99, 100, 111, 117, 114, 114, 118, 116, 121, 124, 124, 121, 125, 130, 127, 132, 132, 130, 133, 128, 131, 160},{99, 100, 111, 117, 114, 114, 118, 116, 121, 124, 124, 121, 125, 130, 127, 132, 132, 130, 133, 128, 131, 160}},{{105, 93, 103, 108, 119, 110, 111, 114, 120, 121, 119, 122, 130, 128, 130, 131, 132, 131, 136, 128, 128, 160},{105, 93, 103, 108, 119, 110, 111, 114, 120, 121, 119, 122, 130, 128, 130, 131, 132, 131, 136, 128, 128, 160}},{{105, 100, 112, 114, 115, 108, 117, 120, 123, 117, 122, 129, 124, 128, 124, 132, 135, 131, 139, 153, 116, 160},{105, 100, 112, 114, 115, 108, 117, 120, 123, 117, 122, 129, 124, 128, 124, 132, 135, 131, 139, 153, 116, 160}},{{110, 106, 113, 110, 122, 116, 119, 125, 123, 128, 125, 127, 128, 127, 133, 130, 132, 132, 143, 155, 127, 160},{110, 106, 113, 110, 122, 116, 119, 125, 123, 128, 125, 127, 128, 127, 133, 130, 132, 132, 143, 155, 127, 160}},{{102, 107, 110, 112, 115, 117, 117, 115, 120, 118, 127, 130, 130, 129, 126, 126, 125, 130, 141, 135, 127, 160},{102, 107, 110, 112, 115, 117, 117, 115, 120, 118, 127, 130, 130, 129, 126, 126, 125, 130, 141, 135, 127, 160}},{{110, 117, 106, 118, 118, 116, 121, 124, 128, 125, 122, 122, 126, 131, 124, 130, 133, 131, 139, 134, 131, 160},{110, 117, 106, 118, 118, 116, 121, 124, 128, 125, 122, 122, 126, 131, 124, 130, 133, 131, 139, 134, 131, 160}}};
-const UWord16 CRendBin_Combined_BRIR_index_frequency_max_diffuse_32kHz = 97;
-const float CRendBin_Combined_BRIR_inv_diffuse_weight_32kHz[BINAURAL_CHANNELS][HRTF_LS_CHANNELS]={{0.224190f, 0.227445f, 0.241827f, 0.207131f, 0.218113f, 0.222941f, 0.232139f, 0.248192f, 0.249239f, 0.261572f, 0.246309f, 0.279145f, 0.285786f, 0.262528f, 0.271847f},{0.224190f, 0.227445f, 0.241827f, 0.207131f, 0.218113f, 0.222941f, 0.232139f, 0.248192f, 0.249239f, 0.261572f, 0.246309f, 0.279145f, 0.285786f, 0.262528f, 0.271847f}};
-const Word16 CRendBin_Combined_BRIR_inv_diffuse_weight_32kHz_fx[BINAURAL_CHANNELS][HRTF_LS_CHANNELS]={{7346, 7452, 7924, 6787, 7147, 7305, 7606, 8132, 8167, 8571, 8071, 9147, 9364, 8602, 8907},{7346, 7452, 7924, 6787, 7147, 7305, 7606, 8132, 8167, 8571, 8071, 9147, 9364, 8602, 8907}};
-const UWord16 CRendBin_Combined_BRIR_pIndex_frequency_max_diffuse_32kHz[BINAURAL_CHANNELS][40]={{47, 47, 47, 47, 47, 47, 50, 50, 56, 56, 56, 63, 63, 63, 63, 63, 72, 72, 72, 74, 74, 77, 77, 79, 81, 81, 81, 81, 87, 87, 87, 87, 87, 87, 93, 93, 93, 93, 93, 97},{47, 47, 47, 47, 47, 47, 50, 50, 56, 56, 56, 63, 63, 63, 63, 63, 72, 72, 72, 74, 74, 77, 77, 79, 81, 81, 81, 81, 87, 87, 87, 87, 87, 87, 93, 93, 93, 93, 93, 97}};
-/* Sample Rate = 16000 */
-
-const Word16 CRendBin_Combined_BRIR_max_num_iterations_16kHz = 23;
-const UWord16 CRendBin_Combined_BRIR_num_iterations_16kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS]={{23, 23}, {23, 23}, {23, 23}, {23, 23}, {23, 23}, {23, 23}, {23, 23}, {23, 23}, {23, 23}, {23, 23}, {23, 23}, {23, 23}, {23, 23}, {23, 23}, {23, 23} };
-const UWord16 CRendBin_Combined_BRIR_num_iterations_diffuse_16kHz[BINAURAL_CHANNELS] = {40, 40};
-const UWord16 CRendBin_Combined_BRIR_pIndex_frequency_max_16kHz[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][23]={{{77, 76, 77, 77, 77, 76, 77, 76, 77, 76, 77, 77, 77, 78, 76, 76, 77, 77, 77, 77, 77, 76, 80},{77, 76, 77, 77, 77, 76, 77, 76, 77, 76, 77, 77, 77, 78, 76, 76, 77, 77, 77, 77, 77, 76, 80}},{{76, 77, 77, 75, 77, 78, 77, 76, 77, 77, 76, 77, 77, 77, 77, 77, 76, 77, 76, 76, 77, 78, 80},{76, 77, 77, 75, 77, 78, 77, 76, 77, 77, 76, 77, 77, 77, 77, 77, 76, 77, 76, 76, 77, 78, 80}},{{77, 76, 76, 78, 75, 76, 74, 78, 77, 76, 77, 77, 77, 76, 76, 77, 78, 78, 77, 77, 77, 77, 80},{77, 76, 76, 78, 75, 76, 74, 78, 77, 76, 77, 77, 77, 76, 76, 77, 78, 78, 77, 77, 77, 77, 80}},{{76, 76, 76, 76, 77, 77, 76, 78, 77, 77, 77, 77, 78, 78, 77, 77, 77, 77, 77, 78, 77, 78, 80},{76, 76, 76, 76, 77, 77, 76, 78, 77, 77, 77, 77, 78, 78, 77, 77, 77, 77, 77, 78, 77, 78, 80}},{{76, 77, 77, 76, 77, 77, 75, 77, 77, 77, 76, 77, 77, 77, 77, 78, 77, 77, 77, 77, 76, 76, 80},{76, 77, 77, 76, 77, 77, 75, 77, 77, 77, 76, 77, 77, 77, 77, 78, 77, 77, 77, 77, 76, 76, 80}},{{77, 76, 77, 77, 77, 77, 77, 77, 76, 78, 76, 78, 75, 76, 77, 77, 76, 76, 77, 78, 78, 77, 80},{77, 76, 77, 77, 77, 77, 77, 77, 76, 78, 76, 78, 75, 76, 77, 77, 76, 76, 77, 78, 78, 77, 80}},{{77, 77, 75, 76, 76, 77, 77, 77, 77, 77, 77, 75, 77, 76, 76, 76, 77, 77, 76, 77, 76, 77, 80},{77, 77, 75, 76, 76, 77, 77, 77, 77, 77, 77, 75, 77, 76, 76, 76, 77, 77, 76, 77, 76, 77, 80}},{{75, 76, 77, 77, 75, 77, 75, 76, 76, 77, 77, 77, 78, 78, 77, 77, 76, 77, 78, 78, 78, 76, 80},{75, 76, 77, 77, 75, 77, 75, 76, 76, 77, 77, 77, 78, 78, 77, 77, 76, 77, 78, 78, 78, 76, 80}},{{77, 77, 77, 76, 77, 77, 76, 76, 76, 77, 77, 75, 76, 78, 78, 77, 77, 78, 78, 77, 76, 76, 80},{77, 77, 77, 76, 77, 77, 76, 76, 76, 77, 77, 75, 76, 78, 78, 77, 77, 78, 78, 77, 76, 76, 80}},{{76, 75, 76, 76, 77, 77, 77, 77, 77, 77, 74, 78, 77, 78, 78, 77, 76, 77, 77, 77, 77, 76, 80},{76, 75, 76, 76, 77, 77, 77, 77, 77, 77, 74, 78, 77, 78, 78, 77, 76, 77, 77, 77, 77, 76, 80}},{{76, 76, 77, 76, 77, 77, 76, 76, 76, 76, 77, 77, 76, 76, 77, 75, 77, 76, 76, 76, 77, 77, 80},{76, 76, 77, 76, 77, 77, 76, 76, 76, 76, 77, 77, 76, 76, 77, 75, 77, 76, 76, 76, 77, 77, 80}},{{76, 76, 77, 75, 78, 77, 77, 77, 77, 77, 77, 77, 77, 76, 78, 77, 76, 78, 76, 77, 76, 77, 80},{76, 76, 77, 75, 78, 77, 77, 77, 77, 77, 77, 77, 77, 76, 78, 77, 76, 78, 76, 77, 76, 77, 80}},{{76, 77, 77, 76, 76, 77, 77, 75, 77, 77, 77, 77, 77, 77, 78, 78, 78, 78, 77, 76, 76, 78, 80},{76, 77, 77, 76, 76, 77, 77, 75, 77, 77, 77, 77, 77, 77, 78, 78, 78, 78, 77, 76, 76, 78, 80}},{{74, 76, 74, 76, 75, 76, 76, 76, 76, 77, 77, 78, 77, 78, 75, 76, 77, 76, 78, 76, 78, 77, 80},{74, 76, 74, 76, 75, 76, 76, 76, 76, 77, 77, 78, 77, 78, 75, 76, 77, 76, 78, 76, 78, 77, 80}},{{76, 77, 77, 77, 76, 78, 77, 76, 75, 77, 77, 77, 76, 78, 77, 78, 78, 78, 77, 76, 77, 75, 80},{76, 77, 77, 77, 76, 78, 77, 76, 75, 77, 77, 77, 76, 78, 77, 78, 78, 78, 77, 76, 77, 75, 80}}};
-const UWord16 CRendBin_Combined_BRIR_index_frequency_max_diffuse_16kHz = 77;
-const float CRendBin_Combined_BRIR_inv_diffuse_weight_16kHz[BINAURAL_CHANNELS][HRTF_LS_CHANNELS]={{0.223532f, 0.226827f, 0.248830f, 0.208782f, 0.220391f, 0.219790f, 0.231187f, 0.248730f, 0.251408f, 0.263698f, 0.243858f, 0.281483f, 0.283080f, 0.261660f, 0.273527f},{0.223532f, 0.226827f, 0.248830f, 0.208782f, 0.220391f, 0.219790f, 0.231187f, 0.248730f, 0.251408f, 0.263698f, 0.243858f, 0.281483f, 0.283080f, 0.261660f, 0.273527f}};
-const Word16 CRendBin_Combined_BRIR_inv_diffuse_weight_16kHz_fx[BINAURAL_CHANNELS][HRTF_LS_CHANNELS]={{7346, 7452, 7924, 6787, 7147, 7305, 7606, 8132, 8167, 8571, 8071, 9147, 9364, 8602, 8907},{7346, 7452, 7924, 6787, 7147, 7305, 7606, 8132, 8167, 8571, 8071, 9147, 9364, 8602, 8907}};
-const UWord16 CRendBin_Combined_BRIR_pIndex_frequency_max_diffuse_16kHz[BINAURAL_CHANNELS][40]={{46, 46, 46, 46, 46, 46, 46, 49, 49, 53, 53, 53, 55, 55, 61, 61, 61, 65, 67, 67, 67, 67, 67, 67, 69, 72, 72, 72, 73, 73, 75, 75, 75, 75, 75, 75, 75, 75, 75, 77},{46, 46, 46, 46, 46, 46, 46, 49, 49, 53, 53, 53, 55, 55, 61, 61, 61, 65, 67, 67, 67, 67, 67, 67, 69, 72, 72, 72, 73, 73, 75, 75, 75, 75, 75, 75, 75, 75, 75, 77}};
-//BRIR and HRIR coeff tables in Q29
-const Word32 CRendBin_Combined_BRIR_coeff_re_48kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][2955] ={
-{
-{
--4881767,
-5023501, -1853815, 6442, 4696010, -2676302, 1832340, -340376, 657130, -3187403, -6676527,
--1373316, 2622615, -1711545, 1595044, 2317672, 1963874, -1463510, 1111323, -4126927, -760209,
-1038845, 1705639, -134755, -98247, 518617, 1014686, -3453154, -2878165, 1218160, 2386928,
--1188095, 2498597, 4788889, -6432788, 922344, -3082176, -2074469, 1426466, -788663, 3940096,
--1213865, 3547643, 1880122, 572304, -242666, 1890859, 126702, -398895, -1990181, 5753109,
--3987340, -1225139, 2041183, 2226404, -84826, -1961190, 1124208, -2168422, 2252710, 416612,
-831613, -59593, -746787, -726386, 3005403, -7708393, 1824824, -1005559, -4444755, -772557,
-3782256, 1804423, 2357400, -3384971, 2731062, -1190243, 1726040, 1020592, 1348620, -1440962,
-586263, 2006824, -1318555, -3025805, 1251446, -2810519, 564788, 2028298, 24696, -1029718,
--1138703, 527744, 1123671, -475131, 1345399, 38655, 971736, 788127, -339839, -214748,
-387621, -459025, -235686, -361851, 395137, -628139, 330176, -908922, -191126, -855235,
--89657, -287763, -908922, -230854, 466541, -8884140, 7032472, -3280281, 1623498, 1366337,
-284542, -1851131, -82141, -4964446, -6192806, 1779727, -1127429, 2024003, 2050847, 5713917,
--4540854, 741419, 3921305, 3787624, -3668439, -3931506, -2037425, -3405372, 405874, -1095217,
--2614561, -2014340, 104690, -6270653, -5959267, -1210644, 1298691, -481036, 597000, -657130,
-1471026, -3261491, 3939559, -1287417, 2284386, -409096, 1642288, -2968896, 1127966, 2175938,
-2638184, 1169305, 584116, 978179, -991601, -2449742, 5217312, 3939022, 1720134, -1848447,
-6446746, 4366908, -1709934, 4109747, -227096, -3093450, -681289, -1073742, -2725694, 1904818,
-2211908, 1085553, -2069637, 4555350, -2869038, 2697240, 3890704, -659814, 489089, -5519570,
--2377801, -5945309, 980863, 2929705, -2783139, -793495, 1224603, -2651606, -658741, 1396401,
--54224, 1021665, -517007, -1378148, -3853123, -1867237, -605054, -881005, -217970, -11811,
-355945, -417686, -556735, -1380295, -550830, 115427, 431107, 386547, -686121, -61203,
-93952, 287226, -62814, 294742, 37044, 475668, 50466, -637266, -1071594, -1159104,
-537, -655519, -850404, 239444, 7524783, 3449396, -2877091, 1291175, 993211, 11982422,
--3519189, 3437048, 5852967, -1124745, 5328444, 2168422, 3632469, -4740034, -1738388, -5556077,
--2550674, 3743064, -86436, -2645163, 656056, -3898220, -281320, -2554432, 3583613, -1566053,
--464930, -1412507, 1917703, 825171, 68719, -464393, 1581085, -5863167, -4482872, 2003065,
-565325, -580894, -2938831, 6957847, 2030983, -912681, 2333778, 2744484, 35970, 1348620,
-686658, -3464428, 3155190, -4121558, -3068754, 3657165, -4343286, 3754338, 1727651, -3331821,
-5717139, 3042984, 2218888, -1577864, 5186173, 1170916, -666257, -1528472, 1606855, 567473,
--860604, -6112276, -840203, -1225139, 1896228, -3609920, 4855998, -1720134, 3987340, -4172561,
-180926, -479963, 4956929, -2341294, -1570347, 845572, 1872606, -110595, 1009854, -802085,
--4478577, -558346, -273804, -286689, -570157, -139586, 69256, -671089, -821413, -983548,
--1014686, 28991, -366683, -30602, 668404, -810675, 534723, 549756, 1391033, -1662689,
-1108102, 431107, 872415, -151398, 1293859, 416612, -548682, -1033477, -234076, -519691,
-12522514, -10364830, -9095667, -2920041, 9592809, -1321776, -5172215, 6571837, -4350802, 3112241,
--221728, -7122667, -4836133, 6032819, -3880503, 2995740, -4049617, 3991098, -1751273, -1089311,
--433255, -3921305, 2099165, 2895345, -3932580, 983548, -1987496, 829466, 1831267, -563714,
-2616172, 797253, 2145873, 3372086, -4283693, -3155727, 3921305, 214212, 3052111, 2964064,
--2705293, -4057134, -1589675, 719407, 5391795, -5773510, 2425046, -6448894, -7840463, -1837709,
--4466766, -738198, -5298379, -10136660, -5338645, 4728759, 4443681, 2873333, -3339337, 9735080,
--2947958, 1654099, -5330592, -5055714, 1379758, 12885, -448824, -6386080, -2046015, -354335,
--1248762, -1231045, -3401077, -2761664, 756451, -875100, -1844152, 226023, -3293166, 607201,
-1949915, 3332358, 1901597, -2798171, 2998424, -1928440, -136365, 3314104, 1451699, 493384,
--1034550, 1708323, 1999307, 1531693, 387621, -848793, 340376, 2356327, 1261647, 1518808,
-698469, -879931, 1309965, 244276, -93416, 358630, -617938, 223338, 396748, -701153,
-1343251, 1919850, 2317672, -152471, -121333, 323733, -1410360, 2105071, -89657, 1309428,
--272730, 15993384, -5283884, 7463580, -2025077, 10040560, -1978906, -1598265, 1681480, 1991791,
--1723893, -11630235, 1125818, -1167694, -3096672, -229781, -565325, 4066797, -1331977, 9803263,
--1311039, 1054951, -712965, 5519033, -1101122, 1864016, -4614406, -239444, -3169686, -3370476,
--944893, -1024887, 41876, 3507915, -6328098, -1951526, 2151779, -813359, 4383014, 919123,
--1104880, -2995740, -2881923, -3178813, -5785321, 2086280, 2459406, 2066416, -10086731, -1584843,
-7132330, 3897683, -1610076, -423054, -3118146, -7038378, -7342247, 7223062, -2257542, -5035313,
--2743410, 3871376, 3180960, 250719, 3565360, 1358820, 3448322, -1812476, -7197829, -2571612,
--3238942, -3791919, 5308580, 3390340, -584116, 5787469, 8838506, -2221035, 3747896, -3532074,
--432718, -58519, 3850975, -415001, 966905, 761820, 1197222, 2938295, -3033858, 2279017,
--1575716, 129386, -1931662, 217433, 1021129, 2059974, 1578937, -155156, 566936, 26307,
--235686, 1012002, -2861522, -510564, -2283849, 420370, -409633, -473520, -999654, -708133,
--1191317, 1169842, 602369, -23965918, 13195213, 4814659, -1092532, -1052804, 78383, -3637837,
--6666863, -1437203, 3279208, 10165114, 6835978, -9239012, -1751810, -5491116, 3780108, -455803,
--12481712, -3673271, 7688529, 4753992, 2641405, 6519761, 3959423, -649077, -802622, 1937567,
--4737349, -2794950, 1117228, 5690295, -2367601, -4754529, -6883759, -3460670, 3473018, 11194832,
-801548, -1938641, 2394981, -2283849, -8261370, 637803, -5823976, -4582193, -5433134, 3423626,
--307090, -7747584, 1477469, 2966212, 3064459, -8383776, -4639102, -3107946, -2063195, -893353,
--3084324, -1479616, -3994320, -8136279, -930934, -6906308, -8298951, -5131949, -1450625, 1458141,
--4932233, -7286949, 2175401, 5889474, -288300, -1054415, -678068, 4290673, -6364068, 4792110,
-7549479, 7344394, 5786395, 9869835, 141197, -4034585, 2669322, 464393, -1025423, -893890,
-27380, -2224256, 3273839, 190589, 261993, -1978906, -533650, 1094680, 1245541, -1142998,
--1047435, 645856, 3377455, -415001, 1294933, 1156420, 2889976, -2308008, 166430, -26307,
--2573759, 415001, 378494, 2218888, 259309, 475668, 1905892, 1216013, -3212099, 1233193,
--1138703, 1047972, -9897752, 3763465, -4885526, -824634, 1314797, 2950106, -390842, 5151814,
-144955, -1009317, -13895293, 6473590, -2568391, -2931852, 5008469, -8039642, -11072963, 4550518,
--3870839, -5173288, -1627793, 10037339, 6308770, -3636764, -2148558, 4684736, -1375463, -472446,
-1358820, 4573604, 8353175, 5339718, 6760279, -1007707, -283468, 192737, -4440460, 1165010,
--1867237, 11389716, -8679055, -5003100, -4588099, -4271345, 2739116, 1570884, 4074850, -645856,
--5733245, -7652021, -2218351, -9533754, -13322452, -2641405, 363462, 10384157, 2054068, -8176007,
--2106682, 7793218, -3289945, 2632815, 2335925, 4388920, -6169721, -9216463, -4094178, -4674535,
-14926085, 1700807, -4790499, 3282966, 2486786, -1066763, 1876901, 3449933, -419296, 6660958,
--8778913, -7822209, 2543695, -3593814, 7952132, -3643743, -212064, 4316979, -1320703, 3829500,
--238371, -155693, -270583, -1254131, -147640, 3450469, 1258425, 3353833, 1852742, 1693291,
-108448, -1175747, -551903, 1428077, -445603, 461172, -689879, 2421288, -1983738, 1427540,
--1779190, 2442763, -2305324, 261993, -234613, -202937, 1695438, 2306934, -2412698, 1722819,
-908386, -758599, 3505767, 8449274, 2602750, -804770, 5808944, -1219234, -7451769, -1469953,
--748398, 7141994, -4187056, -1081795, -2310693, 1065689, -2339684, 340913, 2273648, 3315715,
-4847945, 3127810, 1472100, 12599823, 4919348, 4067334, -634581, -10135586, 566936, -8462696,
-2457795, -5775121, 1294396, -92342, 3136400, 15517717, 4349192, -2546379, 5530844, -4539781,
-4699231, -2863670, 8061117, -4574677, -136902, -6251862, 3634079, 6082748, -7367480, 14576045,
--3704946, 960462, -2357937, -4068408, 1481227, -4525285, -12696460, 2025077, -3257196, -805306,
--7878044, 1743757, -2850248, -13072807, -5968931, -3723737, -11560978, 6408091, 16432545, 19926500,
--19174882, -14671608, -8169565, 712965, 4664872, -5986111, 2642479, -6780143, 1671816, 9148817,
-14173929, -9917616, 15882252, 5026186, 1786706, 2636036, 2801393, -3628174, 5398237, 4962835,
-6024766, 4605279, 1888712, 7026030, -46708, 2147484, -209380, -101469, 3776887, -1219771,
--4735202, -1343788, 2971044, 2280628, 886374, -118112, -370978, -480499, 2995740, 2372970,
-1009317, -2820720, 623844, 691490, -24696, 3197066, 1355599, 1956358, -85362, 2373506,
-1346472, 2400887, 3360812, 3499325, 158377, 57445, -1867237, 3867618, 3455301, -488016,
--1154273, 319438, 2471217, -1005559, 7070590, -13735842, 19587198, 263067, 11410654, 4032974,
--4198868, -4343286, 10564546, -6462852, 6622840, 8184597, -1215476, -6022081, 194884, 8469139,
-4723927, 4275640, 3717831, -930397, 1254667, 2739116, 10806675, 7543573, -5977521, -5151814,
--1023276, -2693481, -1343788, -5905580, -3960497, 5328981, 9517648, 2298881, 14424111, -4228932,
-15785615, 555125, 7365332, 17362942, 12287901, 3811784, 3455301, 7752953, -1859721, -7257421,
--171262, 7284265, -4427575, -8303246, 174483, -1466731, 15897821, 12700755, -289373, 17941152,
--1739999, 9561671, 5015985, 7523172, -1136556, -6436546, 8003672, -1823214, 9385577, 6326487,
-19979114, -11430519, -2059974, -22890028, 4702453, -11352672, -1642825, 10256382, -4406637, 4100083,
--1988570, 12021613, -3335579, -8707509, -759672, -3091840, 3541738, -744640, 5807870, 6749541,
-1728724, -2026688, 5395016, -1414118, 2274185, -172336, -3755412, 2305861, 2460480, 4629975,
-2411624, 5211406, 2325725, -304943, 113817, -1880122, -31675, 5101885, -1991791, -4208531,
-2209761, -494995, 696322, 4137127, 902480, 855235, 1730335, 2678449, -999117, -742493,
-1844152, 3308736, 5588290, 4990215, -82678, 2252174, -22012, -459562, 2404108, 3443490,
-3100430, -1967632, -10737, -788663, 4136054, 588947, -842350, 501437, -13181255, -9683004,
-4715874, -7831873, 4438312, -4739497, 1265405, 12062416, -2091649, -11455752, 3055869, -4836670,
-11615202, -12242804, -8551817, 4920422, 5578089, 8457327, 265214, -895501, 5452998, -3395172,
--8381092, 5126044, -3469797, -6716255, 1954747, 6456947, -4820027, 12191265, 4923107, -513785,
-1569274, 5931887, 2585570, -21006686, 8514236, -2223719, -2252174, -3694746, 11094437, -19864,
-11817066, 405874, 1000727, 1213328, -3170223, -1369021, 5724118, -6802692, 1556926, 18927384,
-1642825, 13889924, 1054951, -2951180, -1562294, -9529996, -19597398, -14362908, 6448357, 8872866,
--3898220, 14866492, 6381785, -10808822, -6249715, 13601625, 9730248, 8978629, 2773475, -4325569,
-109522, -862752, -8442295, -2713883, -4940286, -23137526, -9913321, -648003, 15453829, 3328063,
--3585224, 1542430, 13269301, -3413962, 669478, -42413, 3361349, -4483409, -2090575, -3383361,
--1870995, -1279363, 3194382, -285078, -567473, -333397, 2506114, 1866163, 3907883, -2895345,
--4306242, 1417339, -4555350, -2663954, 590558, 1515050, 549219, -947040, 4795331, -2374580,
--1399623, -5673652, 2126009, -5146445, 3970161, 1582696, 2647311, -4386772, 412317, -892816,
-2096481, -2604898, 1645509, -2350958, 2673080, -4864588, 213675, -5676873, 6107981, 5746666,
-12443594, 4695473, 4124242, 14296872, 11941620, 9955197, 323196, 3659849, 702227, -2406256,
--2878165, 2282775, -1220308, -8682813, 1806034, 8372502, -178778, -2508261, 2531346, -21111912,
-6920266, -8454643, 5138929, 7052873, 6349036, -7975755, 4175782, -889595, -255551, 12381317,
-9028021, 47245, 4799089, 3536369, -1768453, -7190312, 1656247, 6004901, 42950, 8798241,
-2583960, 7951595, 15751256, 750546, 6315213, 6700686, 8414378, -432718, -5504001, 13597330,
--5360119, 10963441, -13069585, -10766946, 14918569, -826781, 4887136, 8761196, 13011067, 16838956,
-7067369, 2255932, -8319352, 3651259, -1752884, -15189689, 12771622, 7925289, -12435004, -799938,
-712965, -15566572, 5154498, 12262132, 7227893, -166967, 4683125, 3310883, -7274601, 13427678,
-1242319, -2704756, 6899865, 13281649, 5188858, -595390, -4712116, -3715147, -1650878, 2223719,
-3714073, 5456219, 1750199, 898185, 1675037, 6386080, 5708012, 7106024, -139050, -811749,
-2797098, 6077379, -23622, 516470, -1273995, 2779918, 460098, -758599, -2357400, 1411434,
--4461934, -7936563, -402116, 4377646, -155693, 3080565, -3800509, 2354179, 130460, 2680597,
-387621, -2181307, 1752347, -1490891, -1202591, -556735, -4808216, 3328600, -1792612, 1344862,
-2612414, 79457, -716723, -2270427, -3124589, -704912, -34845608, -21667036, 7091528, 7424388,
-14332843, 23693188, -6510634, -3702799, -7533910, -6987375, -8889509, -9532680, 787053, 3822521,
-3011309, 14945412, 666257, 14664629, -726923, 5043366, 6803765, 5209796, 10932302, 7775502,
-568546, 9606768, -103079, -1146756, -5519033, 6495601, -855235, -14330695, -12362526, 7762617,
--1771674, 17066052, 10221485, 10969346, 4089346, -21500070, 5204427, 13495324, -2045478, 3914326,
--3264175, 2663954, 16999480, -608812, 14252849, 23688356, 1364189, -8968429, -221728, 228170,
--14848776, 20103668, 9622874, -2694555, -1114007, 14558865, 6907381, -17695266, -14356465, 5647882,
--6228240, 8425115, 6132140, 2652679, -6963216, -12579422, -572304, 3156801, 2392834, 13559749,
--18213882, 2643016, -1218697, -15487115, -7346542, -15575699, 13605920, -4642860, 18800146, -14789183,
-1401233, -7130720, 10697153, 4616553, -4587025, -918049, 9862319, 589484, 3102040, -5718749,
--2995740, -4840965, 8749922, 4302484, 2684, 2291902, 2649995, -8013872, 578210, -2276870,
-2840584, 1640141, -1687922, -8189966, -2805688, -6057515, 7244536, -5388037, 1216013, -1470489,
-7176891, -1538672, -1200443, -2568927, -4395899, -294742, -2899103, 2805688, 7919920, 6825240,
--429497, -7215008, 9176734, 24713242, -29417304, -8230768, -14341433, -604517, 4662187, 778463,
-19720880, -20353850, 9621800, -2778844, 3928821, -2464238, 10828149, -5971615, -10080825, -841814,
--2939905, 7656853, -640487, 5177583, 11470784, -2385854, -8603356, -1148367, 12899934, -7589207,
-3071975, 2906082, 507343, -1168231, 12810814, -480499, -3311420, -21400748, 6880538, -5291937,
--13525389, -11757473, -3131031, -13033615, -7690139, -11317239, 5364951, -13356811, 13326210, -12258374,
-8259222, -6330782, 16157130, -15652471, -9105331, -2351495, 9357660, 3863860, 70867, -6437082,
--12839805, 1312113, 5005785, 18327700, 9596031, 4007205, -10487236, 6242735, -9304510, -10472741,
-9136469, -10166188, 4838281, 11882564, 9894531, -2630131, -3796214, -8553964, 14274324, 1409286,
-13660680, 22113176, -4337380, -11584064, -5192079, -3847754, -7975218, 3512210, -13229036, 5770826,
-4297652, 3985730, 10437844, -7372848, 373662, -1329829, 2636036, 9521942, 263067, 7492034,
--2726231, -162135, 924492, -4220879, -1530619, 4508642, 2358474, -6039261, -7927436, -3741990,
-3476776, 3152506, -3491272, 11323681, 3295851, -8242042, 4148939, 6063420, 15052250, 12264816,
-6850473, 2561948, 1439888, -6299644, -4968741, -181462, -5033165, 980326, -2924336, -9207873,
-5085242, -3025805, -1298691, 1126355, 5015985, 155156, -4264366, 15992311, 22290880, -24363202,
-17250200, 11905649, 225486, 8462159, 29749090, -8858907, -9046275, 2470680, 8495982, 12119324,
-3753265, -12147241, 12938589, -5280126, 26246008, -1091459, -4759361, 8220568, 6629282, 6531572,
--649614, 24592446, -21117818, 4674535, -739271, 6469295, -9018894, -17667348, 8236137, 6389301,
-6652368, -6437082, -4958540, 20493974, 7475391, 25854630, 2042794, -10096394, -1398549, 5444408,
--2637110, 26854284, -3782256, 14445049, -2994666, 24055574, 8560944, 6206765, -6281390, -1760937,
-13107703, -133681, 14061186, 10491531, 12386686, -17293686, 2369748, 11696807, 14185203, 10464151,
-7977365, 19168976, 23655606, -18687402, -2532420, 36088464, -9105331, -10260140, 23270132, 31442918,
-269509, -700617, -17551920, -14551886, -1257889, 15602006, -2662880, -3392487, 403190, -1602023,
--4756677, -12646531, -4799089, -1305670, -7577933, 122407, 7116224, -4521527, 9190693, -9979357,
-8067023, -2318746, 6988449, -7569343, -63888, 5041218, 2865817, 8884140, -1939715, -5234492,
--2455648, 2399276, 8151311, 2152316, -3316789, 11324218, -3929895, 5810017, 5881958, -1404454,
--1593433, -2976949, 16751983, -6556805, 1904281, 4017942, 6054830, -3411815, -11330124, -6733435,
--2203318, 12558484, 5961952, -1282585, 496606, 4270808, -1099512, -150324, 4286378, 2115808,
-895501, -182536, 9993852, 22502944, -1388885, 7006166, -19249506, 18299246, -9762998, -6044093,
--16851842, -10961293, 34517040, 436476, -24321326, -10890963, -733903, 43487, -3219078, 26641682,
-12459700, -2341294, -11159399, -1126355, 7011534, -3376918, 35554276, 7485591, 15627775, 5312875,
--8019778, -20221242, 4727149, -317291, 3147137, -15693810, -1660542, -10632192, 11985643, -26307,
-1960653, 12346957, -11277510, -8366597, 2451353, 439160, 3693135, -17342542, -13544179, -29637422,
--15449534, 1152662, -16865800, 2141041, -12239046, -7452842, 21919902, 6765647, -10665478, 6434398,
-2484639, -227096, 21089364, -3755412, 25549150, 9629854, -10997801, -31336618, 5437429, 4816806,
-17273284, -9494025, -22404160, -8148090, 6497212, 947040, -5343476, -16299401, -5178120, -22963580,
--25957708, 7928510, -1442572, 26411902, -8506183, -16402480, -14086419, -1498407, 18811420, -1219234,
-6933688, 11858405, 9249212, -4343286, 6139656, 8031052, 2765959, 8230768, 8312373, -6105833,
--838056, 11609297, -2332704, 1414118, 11285027, -2382096, 6705518, -8568460, 3274376, 6221797,
--3777424, 3609920, 3734474, -8037495, 10356240, -10023380, 5022428, 4911832, 8231305, -2311766,
--5609228, 10730976, -1424319, 7855495, -11720429, -6015102, -8595840, -7573101, 1130113, -6296422,
-4512937, 301721, 1911797, -12093554, 1336809, -3665755, 16426639, -17712446, -850404, 27506044,
--5641977, 8308078, 3061775, 3850975, -25334402, 21470004, -1897839, -20213726, -11771968, 10980084,
--2851858, 5623186, 74088, -8228621, -6125697, 3940633, -6137509, -1217086, -166430, -29392608,
--7566122, -19620484, 4584878, 7332046, 5369, -8488466, 3702262, -3921842, 11813844, -25974888,
-1939715, 4844186, 15195594, -11157788, 14169097, -10985989, 9080098, 2652142, 11062225, -16863116,
-5421860, -8217346, -18041010, 12112345, -14566382, -29349660, 4525822, -2505040, 23529978, -10998874,
-3441880, 11008538, 15670188, 17819282, 2064269, -5735929, -10871099, 628139, 8533026, 11831561,
--22908282, 26146150, -23622, -17184702, -12878996, -22957138, 9641128, 5923834, 9431211, 4373351,
-24824910, -8470749, 26965416, -14253923, 6453189, -5623723, -12263205, -37042484, 21249888, 4319664,
--9714679, -25053618, -1288490, 4987531, -1984275, 9562208, -6648073, -7858180, -1130650, 4239133,
--6926709, -6733435, -4304631, -1022739, 4115653, -1917166, -2069637, -9759239, 7649874, 524523,
--5308580, 4889284, -3798362, 8043937, -2206540, 4169340, 5338645, 9872519, -3110093, 8992588,
-1165010, 777926, -9195525, -7085623, 2498060, 3830037, 1501091, 795106, -1619740, -5853504,
--3209951, -2619930, -6508486, -2784750, 11937862, -5570036, -6467147, 3953518, -14443438, 248571,
--3636764, -21937082, -54224, 12146704, -4784057, -23766202, -3757560, -34746284, 16877610, -38405060,
-22974316, -26546656, -23154168, 6629282, 19937238, 14886357, -13176960, 13965623, 25074020, 4466766,
-3772592, 5906654, 2289755, -14744086, 17995376, -30137248, -18699214, 1703491, -1835025, -1926293,
--3975529, -7504919, 4057670, 27752468, 7209103, 3861713, 2633889, -13051869, 16146930, -2911451,
--27881318, -4298189, 636192, 599685, -19061064, -13495324, 14733348, -4791573, 25256556, 4673998,
-59056, -20526186, -11207180, 7558069, 3300682, -5601711, 21651468, -17107928, -10341744, -754841,
--1215476, 20381768, 1709397, 23843510, 59593, -19504520, 4909685, -16631187, 12720619, -2346126,
-17315160, 32628866, -50177568, 17100950, 7019587, 9185324, 19086834, 4699768, -22972170, -5364414,
--2018098, -4186519, 11851962, -23617488, 2317135, -6200859, -3277597, -16281684, -8654359, -24621436,
-2831457, -1574106, 2627983, 6750615, -9887015, -1833414, 12050604, -7386270, 2449742, -4127464,
--12015171, 5601711, 7437810, -8533026, -779537, -13464186, -669478, -19464792, 7105487, 4728759,
--2297808, 2036351, -4773856, 768799, 4083440, -3164317, -3491272, 11042361, 13700946, -3104725,
-4640176, 2128156, 14065481, 6127845, -17375828, 2259690, 10209674, -5786395, 10318122, 3205119,
-4518843, 41084048, 35499516, -10193568, -13768591, -841814, -27055610, 15756088, -1569811, 5927055,
-2076617, -13692356, 40987408, -17650704, -72368592, -10616622, 14412300, -48730700, -8370892, 15212774,
--41280004, 5695664, 26835492, -18993420, 26771604, -25759604, 22997402, 28532542, -18268106, 7749195,
--2656437, 590558, -7753490, -11330124, -2108292, 17550846, -11355894, -18891414, -10327786, -15218143,
--1632625, -11951820, -1973001, 6269579, -2861522, 17142826, -15176804, -18643380, 14810121, -19718732,
--29236916, -37484864, -13074417, -918586, 7262253, 20845624, -8741332, 9329206, 9757092, -6897718,
--3251290, 34367792, -22762790, -903554, 23519240, 7274064, 18489298, -4650913, 6727530, 26090852,
-13406740, -1443109, -3205119, -16120086, 6581501, 26246546, -24445344, 18559628, -24190866, 7035157,
-34160560, 7860327, -19215684, 19417010, 3071439, -12283606, -9592273, 23502062, 7727720, 10129680,
--1430224, 1766842, 6439230, 7702487, -712428, -2367064, 9993315, 8716636, 1830193, -11632382,
-12787728, 1574642, -4420595, 3140695, 4380330, -8469676, -2249489, 6522982, 1257352, 10869488,
--13428215, 20194400, 15649250, -2782602, -12805445, -5203353, 13465259, 15394237, 24836186, -767725,
-4783520, 4064113, 13618268, -20718386, -11050414, 20785494, 13006772, 1409286, -3354370, 1786170,
-5748277, -10844792, -8507256, -7295002, 1525787, 6628745, -3343632, -27380, 10799158, -11534135,
--8179229, 36349920, 24700356, -34613680, -6816650, 31329102, -9260486, -19042812, -13391708, -19107772,
--11199127, 31629750, 19363860, -2312840, 14464376, -3211025, 17585744, -10714870, -5871757, 35121020,
--14326937, 6528887, -9903121, -3550327, -201863, 9768903, 28589450, 11166915, -19053012, -5418101,
--695785, -2687039, 16173773, 2366527, 28783260, -8196945, 5129802, -2717104, 8535174, -23735064,
-14592688, -21874268, 15159624, -933082, 22162568, -5491653, 16481400, -7271917, 5317170, 9594957,
--9301825, 9934796, 22370338, 27956480, -14493367, 28642600, 12118250, 33935612, -9491878, 6606197,
--1080184, -3891240, -6283001, -2068564, -10980621, -54957328, -34594888, -10435697, -532039, 8100845,
-4054449, 13027710, 20958366, -30115774, -1553168, -11999065, 46148888, -2940442, -13856101, -3716757,
--40219148, -33475512, 50985020, 20970178, 11503533, -7545184, 16062641, 1620813, -36829344, 7861401,
-2631204, -13747653, -14302241, 2641942, 322659, 4257923, -7624104, -3605088, -17999672, -14984604,
-6593312, 8398272, 7109245, 5747740, -9323300, -13482976, -8345659, -17542258, 11409044, 4227322,
--31754304, -3398393, -9160628, -1821603, 15634755, -14275398, -20536386, -4137127, 13359496, 4901632,
--14252312, 8938364, 18442590, -33812132, -9177808, 12625056, -595390, -2163053, -6516539, -931471,
-5977521, 10698764, 2418067, -4275103, 27278948, -39689256, 37171332, -10973105, -11228118, 9502078,
-17248588, -31097710, -6311455, 454193, 6089190, 1580548, -993211, 15466714, -9546102, 1909650,
-8062728, 8968965, 12857521, 10650445, 3469260, -17098802, -3549254, 23060754, -22604412, -19304804,
-23856396, 8108899, 16815870, 26139170, 40519260, -9298067, -25991532, 34313568, -14027900, -5881958,
-35704600, 11188927, -13299903, -37476812, -24838332, -3828427, -13962402, 17525614, 35176856, 18037788,
--12278238, 36221068, 12052215, -13211319, 9852655, 40432824, 11560441, 7787850, -8703751, -32499480,
--43714176, -34672196, -2661806, 26193932, 7860327, 16533477, 61915176, 30545808, -37327024, -25074556,
-16303159, -51483772, -23804320, 44320840, 15677704, -57192860, -47871168, -22159346, -36694052, -34350076,
--20716238, 31077310, -9036611, -6544994, 80981608, 13622563, -23549306, -6495065, -25432648, 43111272,
--9287867, 9351754, 2782065, 601832, -23826332, -9149891, -2062658, -11980811, 2632278, 9236327,
-20900922, 2734284, -14578730, -635118, -300648, -9483825, 4134443, 6113349, 6918656, -18730352,
-4567161, -17351668, 2771328, 9086540, -1272384, 13824426, -3610994, -917512, 13743895, -2883534,
-7563975, 15525770, -5552856, 4619238, 10448045, 11671574, 9317932, 1918240, 2115272, 8120173,
--8874476, -3309272, 5291400, 15343771, -55486144, 38359428, 16440061, 12377559, 15388868, -6000070,
-18894098, 15501611, 22158810, -4271345, 30406220, -19197430, 23053236, -8479339, -17744120, -5680631,
--29075318, 2945811, -10708427, 10187126, -7416335, -11315091, 27793270, -32068374, 20589000, -1177895,
--13989245, -5671505, 12284680, 13861470, 10024454, 26264798, 21194590, -15359340, -3238942, -13753559,
-11791296, -12203613, 9185861, 12594992, 5760625, 7019587, 4670777, -7623030, 29046864, -2838974,
-8601209, 2789045, 13361106, 7318088, -34839700, 2131378, -20859582, 5181341, 15316390, -2978560,
--14781130, -13639742, 32383516, -34404300, -27758910, 50745576, -21661130, 13057237, 5019743, 16200080,
--7718593, 8406862, -35454956, 2276870, 34359740, -18573586, -13943611, 29498910, -2059974, -24744380,
--18238578, 10773925, -9674414, -5876589, 18362596, -13719736, 4549444, 22752590, -25847114, 1535451,
-15086609, -8544301, -5163088, -6911676, 9277666, 2400350, 3731253, -3561065, 5262409, 3803194,
--5094368, 221191, 898185, 13499082, 6876780, -12994424, 15669651, 3747896, -7993471, 4401805,
-4782446, -1597728, -4679904, 11063836, 13422, 3610994, 1406602, 14358613, -6750615, -5652714,
-8830453, -13238700, 16436840, -1417876, -9279277, -1714766, -984621, 1791538, -177167, -6503118,
--934692, 8376797, 17611514, -32603096, -132843336, -143325200, -5032091, -82140712, 73058464, 263656768,
-115024592, 159074848, 200876688, -75631152, -53428320, -21169894, -180067040, -125899448, -40688372, -197477760,
--85950888, -17417702, -80603648, 19429896, 185732096, 168731008, 182606976, 236609216, 142669152, -12641162,
-53350472, -52825952, -210161872, -114121040, -84362824, -174628000, -119640608, 6853157, -134372880, -44130252,
-29917132, -134300400, -68745248, 100774968, 39242044, 109274704, 271997056, 221112976, 178884848, 321623264,
-233545824, -3811784, 33775084, -59936804, -287829376, -275176416, -283816800, -442253856, -299460160, -185071744,
--181103744, 2303176, 143847584, 161939600, 226965936, 343455104, 317917248, 268363520, 265022032, 151783600,
-53501872, 8539469, -16121697, -120237608, -206951392, -254203552, -272117312, -367538080, -305455936, -235603648,
--115174376, 123300456, 363875520, 338856800, 371360576, 260402256, 31915366, -35298724, -111276160, -153110208,
--103421200, -50761144, -51122460, -22655416, -23368918, -37251324, 412854, 5426691, 27194122, 84680648,
-76976552, 56690884, 77987480, -7340636, -50173272, -6750078, -58942520, -51096688, 31779000, 34293704,
-8041253, 7859790, -89912992, -230230656, -217934160, -185678416, -139811392, 68093488, 210111952, 256853536,
-324523968, 290842848, 179467888, 124528280, 44261248, -51707648, -108306728, -129288176, -167586944, -205741824,
--231963664, -270989888, -240906864, -83403432, 59290412, 139456512, 180895968, 196524288, 147496160, 102245456,
-51210504, -2077690, -6065568, 24787866, 39709120, 43389372, 47182364, 38930120, 2864206, -33474976,
--71459128, -127287800, -122781840, -100001336, -83619256, -46903192, -7081328, 23574002, 33800856, 35664872,
-22436372, 13960791, 20300162, 32255742, 45293652, 61579092, 73202888, 70543768, 51367808, 25616258,
--5674726, -28797218, -38020660, -50489488, -63231044, -62474596, -48408576, -36935644, -26674432, -20204600,
--12170864, 2449742, 21632140, 32340566, 29753386, 27722940, 23781234, 13908715, 11783243, 9941239,
-4184372, 8645232, 17462800, 16416976, 14577119, 15021111, 3346317, -10750303, -20018306, -33758980,
--40598716, -34304440, -26386132, -19046570, -2747169, 7810398, 11220065, 14671608, 11000485, 4314295,
-4697621, 10699837, 13073880, 20334522, 22259204, 18894098, 15375983, 6019397, -6820408, -17784386,
--23818814, -25642566, -22677964, -15161771, -5388574, 3470871, 7589207, 8280160, 6216429, 4721243,
-4328790, 4366908, 3847754, 2950106, 1348083, -134755, -1145683, -1647120, -1563905, -1193464,
--614717, -255551, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--7737921,
-3799972, -8803609, 1763084, 674847, 584652, -5995775, -2106682, 1692754, -1291711, 1998234,
-3170223, 1929514, -52076, 2508798, -6786049, 199179, -236760, -133144, 3773129, 5731097,
--5946382, -1305670, -3596498, -1146219, 2153926, 3944391, 659814, 1005022, -1445793, -1910724,
--1559610, -1173063, -2694555, 1523103, -2716567, -1815161, 3144453, -2627983, 2263448, 406411,
--6721087, -2249489, -3693672, -854699, 2888366, -1957968, -567473, -1924682, -2006287, -1381906,
-2823404, 4296578, 806917, 2405182, 1903207, -2224793, -4268124, 2339684, 1916629, -900333,
--3670587, -3042448, 2800319, 600222, 2099165, 1028645, -5654862, -1835562, -2092723, 3169149,
-1285806, -5668820, 1520418, -2986613, -918049, -258235, -2050847, 1666447, -1869921, 476205,
-2195265, 2287070, 1398549, 1589138, 1030792, -142271, 1099512, 1372779, 143345, -1068373,
-1540283, 355409, 28991, -409633, -1007707, 531502, 976568, 214212, 803159, -263067,
--507343, 28991, -787590, 883153, -134755, 1036698, -179315, 234613, -84289, 966905,
-498216, -6442, -377957, 628139, -427349, -11036992, 7195144, -5310190, 660888, -766115,
--2068027, 5496485, -4959077, -3320547, -67646, 5813238, -2246805, -404264, -695248, 4797479,
--2997887, -7861401, -1795296, -4074850, -5510980, 138513, -495532, 836445, 3089692, 5125507,
-3175592, 437013, 7877507, 3025805, 208843, 5596343, 5879274, -542777, -3258807, 159988,
-2565169, 2030983, -104153, -1212255, -4666482, -4131759, -2054068, 4474282, 1823751, 7755101,
-4372814, -419833, 2562485, 3117073, 1010391, -4935455, 5209259, -2160906, 2697776, -282394,
-1612223, -5871757, -979789, -1917703, 1997160, -1844689, -2242510, 5976984, -470836, -4619238,
-1744294, -3533684, 2774012, -2026688, 4485020, 3833795, 4299799, 1388348, -4241817, 2229088,
--685584, 2195802, -1863479, 570694, 5910412, -2376191, 2845953, 3840238, -636192, 158914,
--226023, -794032, -1631014, 908386, -140123, 1408212, -77846, 1121523, 31675, 15569,
-814970, 1366873, 561567, 1308354, 1508607, -379568, -1175210, 1931125, 179315, -143345,
-115964, 1142998, -370978, -1195612, 547608, -355409, 280784, -46171, 1173063, 304943,
-621160, 308164, -1052267, 2207613, 2478196, 141197, -2120640, 2314987, 911070, 712428,
-1101659, -8665633, 2825552, -5516886, 929324, 1807108, 1894618, -2523293, 4619774, 746251,
--1698660, -780610, 5389110, 3877282, -2335925, -2997887, -2466385, 2096481, 3823595, -2294586,
--2518998, 760209, -9837623, -10737, -4196720, -1645509, -4175245, -5465346, -671626, 4999342,
-1375463, -4451197, -1184337, 4282083, 1292248, -2726231, 4830765, -2088965, -6737193, -1993402,
-3782256, -1656784, 4474819, 8570607, 6918119, 972810, -97711, 2434173, -1052804, -5033165,
-49392, 1919850, -3621194, 3066070, -7177964, -1055488, 440234, -3027415, -2348810, 3143379,
-6247030, -4880694, -5124433, 3200288, 3192235, 5908802, 1889249, -3417183, 4694400, 4081293,
--1362042, 4548907, -5018133, 5094905, 1219234, 3461744, 683437, -2670933, -1557463, -463856,
-1104344, 132070, -2477123, 875100, 11811, -1414118, -1197759, 361314, -381178, 1134945,
-47782, 1874216, -1353989, -945430, -86436, 268435, 1578401, -777389, -1614371, 759136,
-39192, -301721, 1065689, -210453, 637266, -682900, 641561, 1006096, 103616, 1607928,
-14766098, -5761162, -2546916, -964757, 10641318, -1078574, 8043937, -5879274, 7086159, -7048578,
--6185827, 1465121, 3346853, -4168803, -1036698, 2102387, -559956, 2747169, -4297115, 4922570,
-1770600, -5315559, -217433, 2108829, 1643362, 929860, 10011032, 7974681, 6236830, -17717,
-4043175, 363462, 1155346, 2986076, -9268539, -1431298, 5624260, 3653407, 4362613, -120259,
--1654636, 2026151, -379031, 11293080, -1726577, 1890859, 1121523, 536871, -3359201, 6766184,
--784368, 7035694, -3898220, -4089883, 2909304, -2729989, -9425843, -4352413, 1883343, -909459,
--6745246, 1864016, 8053, 8746701, 756451, 745177, -2689187, 3174518, 3224447, -733903,
--521302, 7681549, 5647345, 5603859, -3720516, -5297306, -4620311, -9039296, 742493, -6403796,
--2165737, 388158, -3490735, -3990025, -2222646, -463856, -1363652, 2109366, 3954591, -755914,
--464930, -1793686, 912144, -1302986, -1493038, 620086, 1080721, 2684, 1394254, -830002,
-46171, -802085, -533650, -443992, 811749, -501437, -491237, -304943, -1284732, -1473174,
-88047, -175020, -1765232, 1486596, 1503239, 1815161, -34360, -1291175, -746251, 1423782,
-381178, 10944650, -8536784, -141734, -8932995, -5842766, -3434900, 7889855, 4658429, -10806675,
--14804215, -5650567, 5322538, 3810173, -2157684, 5173825, 121333, -1190243, 651224, -7744900,
-2426657, -952409, 723702, 2550674, 599685, 51003, 3355980, 2964064, -5127654, -5102421,
-5986111, -1793686, -2841121, 3704946, -10107132, 2507724, 2194192, -9294846, 3482145, 9789304,
-5949067, 6746320, 1435593, 3761318, 9285182, 1816234, 1826435, -10484015, 5652177, 8056822,
-6590628, 1341640, 6694244, -7443179, 7488813, -2136209, -7339026, -11327976, -41876, -7172059,
--5788006, -2420214, -6889665, -17264158, 824097, 998580, -510027, 2797098, 8611409, 3308199,
-3516505, 2375117, -6130529, 1006096, 2972654, 2588255, 2274185, 2624762, -6293201, -1787780,
--7951595, -3518652, -504659, 1976222, -2860985, 2955474, 644245, 610959, -1936493, -214212,
--993211, 128849, -1079647, 1188632, 421981, 929324, -220654, -1349157, -1149441, -1087701,
-1307281, 913754, 73014, -442382, -1034550, -1078037, -1095217, -3488587, 620623, 635118,
--2665027, -1300301, -919123, -23438710, 11577621, 1511829, -9092446, 2237141, -979789, -2669322,
--1838246, -5144297, 2796024, -2628520, 567473, 3399467, 3140695, 10182831, -4086662, -9695889,
-5307506, -12300249, -5288179, 2026151, 1716913, 1420024, 4012036, 4958003, 4280472, -75162,
-5658083, 381178, -2216740, 7499550, 4660577, -2267743, 4474819, -7730941, 14652818, 564788,
-2744484, -1360968, -12538620, -2164127, -4652524, -4389994, 1972464, 10479183, 319438, 448824,
--1326608, -2879239, -6755447, 2154463, -1094143, 3757560, -8518531, 2891050, 4576825, 2011655,
--6303402, -2239826, 1694902, 824634, 5155572, 1014686, 17816062, -5070746, -7552700, -8611409,
--2576981, 186831, 6381785, -8578660, -1081258, -3675418, 3956202, -12528956, -511101, -3392487,
--5212480, 1563905, -1486059, 3419868, -407485, 6281390, 4016331, -17717, 1376537, 485868,
-834834, 7282117, 921271, 5206574, 1935957, -1318018, 183073, 184684, 1555852, -960999,
-826244, -282931, 2259690, 403727, -1592359, -2400887, 1996623, -928250, -2794950, -1264331,
--1438814, -670015, -807991, -61203, 3598109, 52076, 1063004, 417686, 1498944, -1406602,
--704375, -2585570, -2863670, 10741176, -3266860, -2386391, 2422362, 3269544, -8409546, -8485245,
--7750806, -7275675, -11992622, 7786239, -6961605, 2284923, 3082176, 11164231, -1688459, -2482491,
-8769786, 2138894, 1942399, -10002442, -6511708, 5122286, 2296734, 4100620, 6093485, -10545218,
-248571, 4696010, 10323491, 30602, 1091995, -1401233, 134755, -6835441, -1192927, -2033667,
--12836584, -907849, 4088272, -7307350, 3311420, -7961259, 78920, -5468030, -1027034, -1615982,
-855235, 10584947, -2925410, 268972, 5479842, -2866354, 3259343, -8546985, -15342697, -8272644,
--4568772, -2062658, 1764158, 10442139, -4735202, 2892124, 2627446, -7298223, 2622615, -5592585,
--1897839, 3899830, 10579041, -1485522, -450435, 3464428, -127238, -9709847, -9196599, -3785477,
-9396315, -1001264, -13821742, 1101122, -9045201, -3943854, -1794760, -853625, 3198140, -3409667,
--962610, 3580929, -877247, 4185446, 3627637, 2662343, -1550483, 4100620, -3453691, -2560874,
--2417530, 713501, -312996, -654446, -741419, -576063, -1131724, 903554, -224949, 2680597,
--1680943, -1021129, 1177895, -1436667, -814970, -3916473, -4773856, -323196, 480499, 2502355,
-416612, 1552631, 207769, 10230612, 10744934, -3405372, 920734, 11270531, -11641509, -10376641,
-8611409, -2176475, 1106491, 7798587, -1640141, -2256469, 7806640, -14705968, 6145562, -758599,
-2396055, 7009387, 7257421, -8282308, 1475858, -11342472, 3383897, -3488050, -1275605, -7927973,
--471910, -11319386, 1015760, -9826885, 6736120, -3520800, 1219771, 12014097, 5558225, 5315559,
--9746891, 1667521, 11179800, -2776696, -16041703, 8457864, -2012729, 1444720, -3204583, -7530689,
-10497437, 3672734, 8544301, 2025614, 1189706, -7221451, -9264781, 3191698, 4258460, 4493610,
-6075768, 14012331, -519691, -11097659, -7186554, 8380018, -1273995, -9561671, -2524367, -717796,
--2613488, -12068321, 147640, 1488743, 2939905, -4466766, 6838125, -498753, 724239, 9632001,
-4968204, 10032507, -10051834, -4344897, 1819456, -5664525, 4535486, 2642479, 2768643, -583042,
--1298154, -1007170, -177167, -4117263, 5025649, -2021856, 3075734, -993748, 3586835, -1618129,
--1804960, 40265, 2056216, -1964948, -81604, -632434, -2001992, -1194001, 903017, -2384244,
--692564, -4844723, -3635153, 1761474, 3200288, 1463510, 1455994, -693637, -383863, -2386391,
--351650, 2177012, -3103114, -660888, 1431835, -849330, 2509872, 2204929, -1735167, -934155,
-2246268, 1319629, -1164473, -77846, 8213588, -10011032, 11712913, -2644089, 12389907, -10129680,
-9170292, 1002338, -973347, 15431817, -8069170, 916439, -7831873, -2340220, 23527830, 11348377,
-4993973, 3397319, 6690486, -3767760, -32749, -19900730, 3694209, -838592, -8603356, 9531069,
-7155953, -306016, 1699196, -11504070, 10130754, -5377299, 10759430, 7040525, 5745593, -8257075,
--1449552, -6943889, 10332081, 2369748, -3759707, 18300318, 8754754, -2075006, 964220, -15178951,
-2578591, 694174, 12052215, -5422396, -15424838, -2664490, -4265440, -3009698, -21801790, -10877542,
--23221278, -11842835, -8295730, 2723546, -5834176, 10955388, 1373853, -12550431, 7573101, -8400419,
-11866995, -10583873, -8565775, 6168647, 10572599, 10394895, 44023, -9769977, -7777649, 4760971,
--6376416, 227633, -3214246, 3918084, -4371740, -6459094, 11379516, 5257577, 1568200, -1823751,
-4299799, 2407866, 5289252, -510564, 3588445, 1248762, 5939403, 99858, -258235, 317291,
--2895882, 85899, 1535451, 708670, 672162, 139586, 4583267, 2071248, -3575560, 379568,
-2099165, -1158031, -1348083, -891206, 302795, 849867, 2324651, -597000, 1595580, 2645163,
--522912, -2728378, -205085, -2972654, -1262184, -2747169, -1719598, 2340220, 198642, -1547262,
-1560147, 839666, 3274376, -1931125, -962610, -2940442, 1299765, 640487, -14133127, -16832514,
--11062762, -1352915, 59593, -1941325, 4347044, 6469295, 4578435, 275952, 2585034, -5152350,
-3844533, -10745471, -15088220, 761283, 12062953, 2341831, -3869229, 9706626, 5860483, 9404368,
-15641734, 2273112, -4464082, -9511205, -7558606, 4767414, -8704825, -5952288, 2593087, -6832756,
--15393700, -8314520, -586800, -1540820, 3944928, -3246459, 8962523, 2800856, 3574487, 12295418,
--1644973, 1705102, 3067144, -9310952, 11594801, 2142652, -10181220, -16838956, 4639102, 1819456,
--12156905, 13447543, 8832600, -11251204, 4189204, 11349451, 6512781, 3249143, 9477919, -3923990,
--3420942, 978179, -4803384, -7866770, 14236206, -12153147, -1097364, 5486284, 1484448, 21961242,
--18527416, 6024229, -2113661, 194884, 6354404, 528281, 1592359, -4777614, 3163780, -10879689,
--23376970, -1049583, 8590, -11885785, -7439420, -1413044, 4773856, 4185983, 1968169, 1284195,
--3643206, 161598, -5222680, -2502355, -769336, -2924336, -4676683, 1989107, -643171, 1131724,
--2244657, -1584306, 1482301, -3779034, -8328479, -2738579, 890669, -2063195, -8018167, -4369056,
-3764002, 2646237, 1949378, -1373316, -2887292, -3714073, -426276, -1728188, -4412005, -3639985,
--5256503, -2634963, -3442416, -3492882, 208306, -646393, 1831804, -1200443, 1786706, -1005559,
-3109020, -4121021, -11110544, 9889162, -20132122, -14292577, 10697690, -449898, -18327700, 9475235,
--10697153, 20860120, 4227322, -27359478, -3422552, 2529199, -6856916, 2098092, 4841502, 9759776,
-8393977, -15883863, -629213, 1519345, -3231426, -14557255, -2184528, -3000035, -4937602, -4423817,
--136902, 1103270, 12490302, 13623099, -4138738, 7345468, 6406481, 6202470, 13636521, 187905,
-3729105, -15600395, -5281199, 5515275, -2999498, 7550016, 18697604, 2750927, -16193100, -36287640,
-12885, -11183558, 10404558, -6855842, -3597035, -7128572, -19505058, 8536248, 26316338, 1536525,
-6976638, -20562156, 4366371, -2332704, -9149354, 2359011, 10167261, 5224828, 8228084, -8857833,
-13127031, 7624641, -15038828, -22524420, -1311039, -17129940, -15894600, -10217727, -11683385, 1533303,
-21246130, 8101919, 912144, -2829310, 13732621, -6929393, -9982041, -1629403, 2260227, -1600412,
-2650532, 2099702, 273804, 2124935, 5355288, 1904281, -407485, 379031, -1856500, -2011118,
-5618891, -1661079, 5534066, 121870, -2874944, 650688, -1431835, -2277407, 6664179, -1575716,
-3687230, -7988103, -842887, 3870303, 141734, 1578401, 6816113, -4993437, 6247567, -622233,
-863825, 1847373, -1847373, 4625680, 869194, 263067, 1014149, 213675, 2317672, 5957657,
--2289218, 2079838, 2552821, 2303713, 2851322, -952409, -39602820, -25012278, 17933100, 14439680,
-23497230, -98247, 9247065, 2282775, 7404524, -311385, 4768488, -10431402, -12510703, -7765838,
--11202885, -7226820, -7988103, 9558450, 22583474, 4929012, -27604828, -6560026, 4811974, -7332046,
-6715718, -15773267, -1299765, -537408, 893353, 7683160, 5803575, 1076963, -1924145, -3525631,
-6394670, 12475269, -10027138, -15517180, 10295037, 4913443, 13511430, 6180995, 19654308, -13617194,
--4808753, 12566537, 18737332, 16305843, 9622874, 4588636, -4056597, 1234266, -2397129, 69793,
-6470905, -24522652, 13147432, -1934883, 3536906, -1622961, 18584860, -5683853, -313533, -4085588,
-11770895, 10024454, -20958904, 15007153, -17835388, -901406, -9065065, -8952322, 8085276, 1484448,
--27783070, -2459406, -2231236, -5119601, -3273302, -652298, -3585761, 14412300, 1372779, 13786845,
--4405563, 16302622, 7645042, -8419210, 3540664, -2102387, 889058, 1060320, 1489817, 2200634,
-791885, -3157338, -5269925, 8112657, 3546032, 6659884, 1807108, -3955128, 7608535, 304406,
-351114, 5780489, -16229608, -7494181, -7241315, 2279554, -270583, -10982768, 423591, 1854352,
--561030, -2055679, -81604, 3787088, -4072166, -151398, 4326106, 2194728, 5283884, -4651450,
--2339147, 1342177, 5737003, 21943524, -24479702, -593242, -13928042, -39230232, -4667019, -14498199,
--30972620, 6153078, -232465, -6043019, 1912334, 16598438, -1108638, -17605608, 5998996, 680752,
--5681705, -4257387, -3167539, 860067, 19128710, -4329327, -739271, 8672613, 6396817, -2786897,
-9244917, 8463770, -4126390, -4052302, -7733089, 10635950, -2583423, -18387828, 2769180, -1242856,
-6274411, 24034100, -16095390, -25787520, -16282758, -7549479, 3526705, 8569533, 4531728, 18290118,
-9116605, -12931610, -7489886, -17629768, 15206869, 9356049, 1658931, 3214246, -10138807, 1042603,
--10725607, 18440442, 18077518, 1271847, -8478802, -4714264, 1749662, 16786342, 33503966, 20623360,
--3214783, -7512972, 423591, 10658498, 4595615, 9836549, 13550622, -13481365, -668404, -25984016,
--17541720, -16702591, -11220602, 6967511, 15901043, 10937671, 1693291, -3191698, -1535451, -14470819,
--18216030, -4603131, -9698036, -9121974, 2044941, -1858647, -2365990, 84826, 541166, 4138201,
--4672388, 9275519, -9483825, 3976603, -12059731, -4039417, -67646, 2214056, -406411, 2101850,
-4553739, -3271691, 491774, 11025181, 13424457, 16210280, 8852464, 10150618, 4547297, 1923609,
-704375, 278099, 558883, -2847563, -8816494, -8594230, -1481227, 6662568, -64425, 1019518,
--3643743, -2557116, 968515, 8155069, 5087389, 9734543, 7824357, 6975564, 8409009, -19132468,
--2240899, -9904195, 14416058, -15895674, 3092377, 1403917, 28186796, -17420924, -5097053, -17918604,
--3867618, -17699560, -14870251, -10733123, 5563057, -19040126, -13807246, -20705500, -5279589, -3113315,
--6328098, -9356586, -23072028, 6034966, -16305843, 6594923, -17108466, 21098490, 3258807, 9455907,
--4063576, -19903952, 10671383, 6171868, -6689949, 10654740, 14919106, -8062191, -21435644, -11487964,
-28752658, -12285754, -928787, 737124, -4867809, 6314676, 18638010, 3301219, 7932268, -6004365,
-13335873, 181462, 10506564, 3193845, 3571802, -331786, 1083942, 22784264, 6915434, 54556824,
--33298882, 21254720, 29908542, -7909719, 687195, 15413564, -11172284, -3286187, 25041270, 9906342,
--4170950, 13275207, -5685463, -24260122, -17934172, 6069863, 976031, -32411434, -9015673, -3330747,
--16825534, 8625368, 5040681, -10959146, -8960376, -6628745, 943819, 2956011, 6851547, -5713380,
-800475, 3974455, -1801202, -7232725, 1976759, 1477469, 2258079, 6700686, 1186485, -4141422,
-530965, 7763691, 6901476, 3321084, -7763691, -215285, 14228153, -4116726, -3032784, 7855495,
--7769059, -13456669, -3851512, 673773, -1778117, -6942278, -2153926, -482647, -7630547, -1646046,
-764504, -2182917, -7926362, -13066364, 4879083, 13872744, 4989679, -383326, 437013, -2713346,
--8335458, -6707129, 30298310, 33864744, 431644, 24432458, 24334748, -1395328, 10935524, -24574192,
--7638063, 21674552, 2034741, 21399674, 29972966, 24671366, -4996658, 16084116, -25166360, -39244188,
--16803522, -14708116, 9421548, 26307, 10082436, 10892037, 23600846, 18247168, 6354404, -18734648,
--2293513, 18649284, 5996848, -9217000, 12009265, 25730612, -2919504, 8927090, -21049098, 10024454,
--16620987, -4547834, -10559714, -21857626, 13354664, 1463510, 6502581, 26064546, -14144401, -15924128,
-9401147, 27009438, -21287468, -14275398, 8769249, -6915434, 38191388, 28242632, -26922466, -10206990,
--21290690, 1087164, 23285702, -10875931, -16230681, -7442105, 1394254, 5557151, -19423452, 4581657,
-38919920, 2760053, -26091926, -39840652, 32052804, -38435124, -32258426, -18911814, -16523813, -27830852,
-7356742, 6971269, 44560824, 11076721, 19545860, -9946071, 21258478, -2701535, -9216463, 7962333,
-883153, -2157147, 21799106, 2687576, 11100343, 13835700, 7434589, 16608102, -4866735, 4409858,
--3738769, -1465658, -3721052, -14172855, -10518912, -11723113, 13259101, 4656282, 11793443, 14638859,
--3384971, 8726300, 19011672, 6775848, -6318971, 9757092, 11355357, 3830037, -2831457, -14003741,
--12601971, 12295954, 5114769, 8142185, 16216723, 36195300, 15479599, 9046812, 6528887, 10164040,
--5564667, -1320703, 18161270, -11880416, -14530948, -2930778, 6907381, -6333466, 6547141, 3888556,
--35296040, -20395726, -26501558, 7192997, 14959371, 5339718, 22877144, 20519206, 28975996, 9059160,
-31629212, 14156749, 20478940, -9879499, -3753265, -9931575, -24060406, -17309792, -37315212, -22164716,
--7020661, -21776558, 5019743, -766115, -371515, 9044127, 7573638, 3486440, 18366890, -4483946,
--14838038, 21807160, 2228551, -28678570, -12173011, -3038153, -34319472, -26156350, -25251186, 2422899,
-12566537, 3402151, -13015362, -1618666, 14703284, 8947491, 34656628, 6460168, -45978700, -15373299,
--7719130, 7422241, 7507066, -5285494, -11976516, 17165374, -25318832, -4730370, -20233590, 15584826,
--40053256, -24995636, -32598802, -26440356, 1594507, -14912126, -11179263, -26540214, 13697724, 47670916,
--878321, 30804580, -16740172, 7535520, -22269406, -124017, 34339336, 8056285, -15669651, 1752884,
-13465796, -22993644, -35128536, -19192062, 9493488, -27709518, 12291123, -490163, -343597, 17645336,
-9692131, -4834523, 21024402, 20388746, 16902844, -5527086, -5203353, -3721052, 223338, 14148159,
-10748693, 7065758, 853625, 14739791, 8758512, 2126009, 2467459, 10856067, -4077535, -3968013,
-8216273, -11680164, 10915123, -10184441, -9256191, -11959873, 21121038, 12553116, 19685982, 6735583,
-7798587, 1421097, 1952063, 9046812, -13706314, -23378580, 2454037, 6127845, 6425271, 8456791,
--1496259, -9281424, 26570816, 10942503, 26805428, -43408696, 19020262, 32825362, -3042984, 37787124,
--19826642, -57363584, -29601988, -293668, -5590437, 6447820, -20443508, 19964618, 28229210, -25186762,
-22455162, -13757317, -16799764, -40042516, -16232292, -22975390, -15072651, -18362058, 18260590, 2783139,
--35801236, -45967424, 34947612, 7946763, 12635257, -10692321, 2955474, -12389907, 499827, 10650445,
-16222628, 14616847, 39122320, 1316944, -27777164, 37845104, -3823058, -9752260, -17363480, 16006269,
--30899068, -20813412, 17818208, -16106664, -24023362, -30325690, -26432840, -5631776, 3747896, 2932389,
--8027831, 32811940, 28080496, -2639794, -15702400, -27343372, -31242666, 7808788, 6832756, -6138582,
--2866891, 45015016, 3240016, -13074954, 19637664, 9377524, -29425358, 23626078, 43010340, -46881180,
-76025752, 20297478, 22106734, 8351564, 22264574, -5978058, -46582140, 32101660, 2957085, -5776194,
-33541548, -39483636, 7151121, 6985228, 8590, -3782793, 1897302, -3049427, -10688563, 5867462,
-11927124, -9701257, -1009317, -14367739, -16274705, 21453362, -4501663, -10486163, 5158793, -5708012,
--12895639, -23803782, -5229123, -8079371, 21104932, -19972672, -1769527, 24576876, -4949413, 19641422,
--6757594, -17152488, 9186398, -3450469, -7897908, 10171556, 2665027, 27062052, -3351685, -413927,
-17643726, 54181012, 23703924, 1108102, -18360986, 25803090, -600222, 1724966, -12633646, 23539106,
--27655832, 19917910, 19108846, 20178294, 9655086, -7581154, 26759794, 33652680, -7069516, 13831942,
--21122650, 33866892, 14325863, 11261404, -21854942, -47486232, 9260486, -14619532, -11005854, -19318762,
--24408836, 14552423, 6388764, -11854110, 2528125, 1066226, -12983686, -57979376, -3796751, -12360916,
--6124624, -950798, 40628244, 27808840, -13796509, 10465225, -27078696, 2952790, 19934554, -30774514,
--28698972, -23480586, 36751500, -26600344, 7489349, 29620778, -40189620, -37197640, 34019364, 27174258,
-28523952, 38330436, 13989782, -49149460, 10870562, 14473503, -4548907, 80142480, -8503498, -12254615,
--36451924, -31370978, 15950435, -28916942, 18608482, 6517613, 21074330, 43889732, -28403156, -19259708,
-53265112, -32613298, -36197984, 23477902, -46559056, 33668248, -35458712, 8001524, 11886859, -25537876,
-10351945, -29640644, 20380694, 37765648, -1781338, 6541235, 7524246, 1389959, -11787001, -10894185,
--2718714, 10947335, -5123359, 7387881, -7917236, -23430120, 9795210, 2078227, 15680926, 7907572,
-13659070, -4728759, -4898410, -23214836, 16051367, -3110630, -21476448, 4993437, 43420508, 12124693,
--11424076, 12894566, 23256712, -11599096, 2301029, 18107582, -9332964, 18064632, 5833640, -5553930,
--28382218, 4871567, -11026792, -569620, 34744136, -15888695, 1556926, 6890738, 4803384, -9893457,
-11570642, 39775156, 2896956, -34773664, 48527760, 11450383, -3736085, 34481072, 16837882, 27814746,
-10081899, -42438036, -9718974, -16131897, 19287624, 48526152, -31511638, 7495255, -15380815, 21392158,
-24557012, -33425046, 27074400, -26919782, -24360518, 11754252, 22194780, 588411, 7035694, 17303350,
--27237608, 23240604, 1357210, 28449326, -5607080, -7964480, 8898098, 42309724, -19649476, 34119756,
--17176648, 6605660, 8516383, 34103652, -2522757, -2573759, 11353746, 51582556, 2922188, -40910636,
--3797288, -49182744, 28841242, -215285, 79594336, 16830904, -23920284, -7421704, 17202954, -18035642,
-27624692, 51960516, 35281544, 478352, 14700062, 22337588, -3089692, -24628954, -3857418, -5834176,
--84131968, 51832204, 38377680, 35583268, 8140037, -36517960, -11368778, 27010512, 13615583, 23487566,
-12283606, -80371184, -29169808, 48875116, 12971338, 15578920, 41791644, -30296162, -1543504, -4520990,
-23417236, 5761162, -2950643, -6839199, 18323404, -5268315, -22443888, 10526428, -11140608, -12836584,
-10734197, 16322486, -12905303, -4161823, -1064078, 12813498, -17428440, 13327820, -15474230, 6693170,
--26298084, -26572426, 25413322, 3077344, 1660542, -3320010, -19607600, -6141267, 16797618, 1573569,
-5277441, 28742458, -5151277, -22346714, -2780991, -12826383, 9249212, 10578504, -11162083, -9196599,
-10788958, 23767812, 29756070, -1234803, 31532040, -19452980, 32090386, -29314762, 4984847, 15346992,
--15029701, 2156074, 6077379, -8025147, -15684684, -29677150, 45252312, -10146860, -8836358, -15101105,
--2459406, -6255620, 14766634, -30426622, -8682276, -19060528, 6615324, -19166828, 18446348, -179315,
-9557376, -21143050, -38308424, 1748052, -27966680, -29406030, 13407277, -22580254, -18917184, 37042484,
--13606993, -21800180, 2921115, -22419730, 10621991, 13916231, -3931506, -18343268, -5159330, 10510322,
-9523553, -8415452, -608812, 32605244, -5650567, -20344724, -25472378, -3839164, -11052025, -38788388,
-36455684, 12373801, -44147968, 27145804, -1753420, -18778134, 85541256, 47860968, 39517996, 20658256,
-12232067, -20453708, 3408057, 9175661, 10312753, 3602404, 37622304, 8144332, -10807748, -18633716,
--75187160, 15155329, 10208064, -624918, -14430016, -28691456, -5311801, -18585398, -16081431, -1461900,
-24154896, -16626892, 41558640, 5746666, -7884486, -3195456, -3160022, 2966749, 17702782, -7057705,
-4714801, 11840151, 4574140, 1999307, 9870372, -15731928, 7872138, 2411087, 24520506, -8752606,
--5616207, -7016903, -5674726, -19537806, -10004053, 6588480, -20477330, 15188615, -3789772, -10398116,
-14816563, 8706972, 12541841, -4945655, -1430761, 1160715, 2778307, -13670881, 7419019, 484794,
--130997, -1661616, 9127879, 4320737, -39349952, 65700116, 8141111, 21354578, 11521250, -16622597,
-12000675, 18316962, 4365835, -2153926, -16209207, -3055332, 4235912, -7713762, -5925981, 2509335,
-7143605, 18935974, -13554917, 7818451, 519154, 15064598, -5671505, 2783676, 4785131, -17844516,
-14046154, 2069101, 3281892, 4889821, 5025649, -11395085, 11627550, -9854802, 2174864, 11143830,
--6461242, 10922639, -5081483, 13831405, 10652593, 6110665, -17710298, 12814035, 9648107, 7708930,
-21481816, -21136070, -2093797, -417149, -4712116, 6172942, -11069204, -17544404, 11617350, 13218836,
-6473053, -1875290, 2587718, -2079301, 6723772, -6290517, 2570538, -13077102, 11443940, -20184198,
-18589692, 10311143, -6600828, -488553, 7560753, 351114, 6749004, -63888, 525597, -874026,
--7046431, 9477919, 12847858, -11771432, -2931852, 2224793, 7006703, -5451924, -5789079, 1338419,
-2121177, -1505923, 1039919, -4441533, 1330903, 5216238, -4482872, 970663, 2900177, -4537096,
-3453154, 4555887, -714575, -1696512, -2535641, 752156, 9516037, -3855270, 983548, -9259949,
-254477, 9940165, -7438347, 7363185, -3767760, 422517, 16423418, -3076270, 31675, -492311,
--5461051, 8524436, 3240553, 3590056, 3239479, -2858301, 1925219, 9366787, -3077881, 6346351,
--4525822, -821949, 12642773, -52740052, -122714728, -19705310, 71701792, 65058016, 160388576, 83687976,
--43239584, -13376139, -88902600, -150936960, -10461467, -68659888, -9595494, 109775072, 46888696, 84780504,
-130302328, -15292231, -19128710, -66337916, -112613504, -89646704, -5797669, -33772940, -12768401, 93390304,
-29640106, 60695404, 110547624, 17965312, -465467, 11294153, -67262408, -101979704, 17486422, -105378632,
--68840808, 23192286, -10584410, 16939352, 135420848, 15369540, 51917028, 110402136, -22025130, 3255585,
-24663850, -106780400, -88888104, -31686658, -121310816, -47176996, 15475841, 22253836, 83580064, 117504400,
-83919368, 59023588, 51620140, -19805704, -71042520, -58565100, -87835304, -92522184, -39539468, -23601920,
-652298, 77263776, 92465280, 28722594, 72266048, 20849918, -22821846, 14979235, -50291384, -70203384,
--13643500, -32733556, -21699248, 39222180, -1404454, 27280558, 49131204, -13698798, -1013612, -236223,
--24768540, -7889318, -1636919, -18868866, 20863878, 7287486, -4755066, 33705292, 10920491, -5118528,
-32725504, -11718818, -34867080, 432718, -53312356, -37652368, 11656541, -35811436, 7718593, 40913860,
-30391188, 55863564, 61351460, 22018150, 21781926, -2854006, -50337016, -70839040, -72449120, -76120240,
--48037060, -3928821, 24492588, 52068964, 91118808, 97281544, 81201192, 63106492, -3610457, -59942712,
--85295904, -109619376, -111293344, -59787556, -17729624, 46332496, 98919536, 89058832, 54117660, 39574904,
-11865921, -8658654, -13118441, -39715024, -45245868, -34539052, -28333900, -20845624, -3913252, 3833795,
-16726213, 24142548, 25353192, 23786602, 22161494, 10681047, 805306, -8604430, -12870406, -19087908,
--18429168, -14185740, -7497939, -3231963, 3518115, 6052146, 8740795, 6889665, 5964636, 4750234,
-4688494, 1338956, 1243930, 1018981, 423054, -2266132, -659814, -3400540, -6561100, -7131257,
--6762963, -6407555, -265751, 1012002, 3613141, 7634841, 9371619, 8734890, 7911867, 2665027,
--877247, -5407901, -8227010, -9317932, -7037304, -5051419, -1835562, 1433445, 4271345, 4689031,
-5375152, 4203699, 2879239, 1453846, -31139, -2088965, -1560147, -2231773, -1773822, -1399086,
--1402307, -683974, 300648, -1142461, -682363, -148176, 590558, 1393180, 1385664, 1470489,
-2398739, 1546188, 823560, -73014, -1124745, -1881196, -1870458, -2114198, -1498407, -860067,
--192200, 445603, 1000727, 1009854, 1067836, 875636, 597537, 151398, -43487, -292595,
--419833, -466004, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--4391067,
-4664335, 1187559, -2494302, -1096290, -5590437, -1477469, 4733591, -2462627, -1784559, 1475858,
--703301, -151398, 329102, -1475321, -1174137, 5728950, 2807298, -668941, 312996, -823023,
--1668595, 810675, 2073396, 3163244, -766115, 1225139, 1484985, -5024575, -1511829, 13959,
--965294, 3120294, 319438, -1039382, 2825552, -2102387, 980326, 4348655, -2360622, 296890,
-618475, 3306051, -1226213, 4551592, -6383932, -2323577, 2834679, -1253594, -5404143, 409096,
-1133871, 1830730, 1903207, -571231, -2304787, 218506, -2087891, -1430761, 674847, 2711198,
-2522220, -3613678, 3234110, -3956202, 3587372, 216896, 3150896, -1197759, -2536178, -1127966,
-2131915, -391379, -489089, -617402, 2937221, -3111167, 1646046, 773631, 819265, 1000727,
-2357937, 750009, -1452773, -1677722, -892816, 1269700, -234613, -1230508, 277025, -1487132,
--290984, -98784, -1486059, -605054, -819265, 205622, 863288, -1025960, -699006, 430034,
--168577, -1469416, 27917, 805843, -529892, -71941, 345208, -134755, 622233, 421444,
-88584, -1111323, -325881, 41876, -457414, 30602, -75162, -779537, 486405, -1321239,
--212064, -15295989, 5012227, -5564667, -2221572, -4557497, -4678830, 2648384, -1565516, -3952981,
--2126546, 5358509, 7968775, -4369593, -1630477, -395137, -5750961, -5405753, 397821, -553514,
-3502546, 1174674, 2607045, -2310693, -1447941, -2991445, 833761, 5139465, 2228551, 992137,
--3325379, 2508261, 754304, 1531693, -2173254, 182536, 754304, 1147293, -2950106, -2162516,
-799401, -4073240, -4160750, 1772748, 3144990, -3552475, -1788854, -1376000, 248571, 3131568,
-2526515, 1085553, 470836, 8114267, 3184182, -2576981, 3156801, 2242510, -2263985, 3827353,
--1437203, -974421, -27917, -1685238, 3404299, -1932735, 889058, 2043868, 1640678, -3048890,
-1188632, 554051, 607201, -1074816, -1512902, -645319, 4757750, 303869, -1420024, -1035624,
-1116692, -4301947, 822486, 2538863, -173946, 1638530, -952409, -1560147, 1028108, 928787,
--408022, 1591285, 819265, -474594, 1131724, 1177895, 1987496, 243203, -2147, -158377,
--610422, -866510, -95563, -170188, -541166, 569620, -199716, 1958505, 11601780, 4604742,
--843961, 493384, 2632815, 1359894, -820339, -5062156, 129386, 4427038, -4610111, -545998,
--8622684, 2219961, 3464428, 198642, -2079301, 6244346, 4380867, -4080756, 1921998, 202937,
--3582003, 5568425, 3055332, -399969, 2229088, 5303748, -1689533, -1138166, 322659, -3221,
-93416, 1247151, 6521908, 1285269, 943819, -10635413, -595390, 447213, 1231582, -4832375,
-1075352, -3905199, -3005403, -4128537, -2709588, -11811, 1195612, -2537252, 2464238, -6126771,
--3534221, -408559, -117038, 1916629, -2477123, -605590, -2246805, 1285806, 3260954, -2032056,
-317291, -1764695, -351650, 5075578, 3967476, -1653026, 3715684, -1836635, -3238942, -4036733,
--339302, -410169, -2735894, 2397666, -468151, 656056, -338766, -927713, 142808, -614180,
--2226941, -178241, -3524558, 353798, -1757179, -1160715, -2968359, 3354906, -1083406, 1117228,
-2276870, 878321, -1224066, -315143, -1370095, -137976, 540629, -1347009, 1303523, -151934,
-102542, 151934, -525060, 749472, 413927, 206695, 53687, 1876364, 875100, -662499,
--1355599, -1236414, 1111323, 1516660, -54761, 353261, 1461363, 193274, 18290118, -8063801,
-1437203, -744103, -3461207, 2844879, 5075041, -3415573, 5461588, -377420, 5830418, 1563905,
-2011118, -2617246, 3273302, 1220845, 3353296, -7298223, 3797825, -4345433, 1264331, -3660923,
-4460324, -1310502, 4493610, -2756832, 1608465, -1832340, -469225, -274878, -533650, 1722282,
-9417253, 346819, 2713346, -2699924, -4471598, 112743, 12348, 113280, 1371705, -3121368,
-6152004, -468151, 5145908, 290984, -2329483, -2927020, -7901129, 3773666, 2477659, -3732864,
-335544, 3064996, 1594507, -9190693, 5373004, -379568, 3798362, -5549098, -5970005, -2934537,
--5816997, -1126355, 6565932, 1309428, -2617246, 324807, 3681861, -1334661, -3088082, -1637456,
--3454228, 2348810, -5199058, -973884, -4006668, -1573569, -92342, 4338454, 1998770, 413391,
-1302449, 5464809, 2834679, 608275, 1949915, -1633161, -690953, 302258, 27380, 816581,
-388158, -1021665, 467078, 1885491, -210990, 354335, 653372, -1010391, -1352915, 1158567,
--1604707, 1750199, 998580, 1616518, -35970, -710817, 958315, 1599875, 359704, -759136,
-468688, -114890, 4755603, -11307575, 2250563, -3597035, -10333691, -7978439, 4172561, 4654134,
-6145562, -3111704, -1634772, 4211753, 1993939, 6317360, 2032056, -760746, 610959, 4013110,
-7878581, -2079301, 2268280, -149250, 6376953, 1423245, -430570, -1340567, -4933844, -7499013,
-43487, -1125281, 2201171, -477278, 1716913, 1248225, 418759, 420907, 1447404, -2599529,
-250719, 3482682, 5504538, -2769180, 624918, -2447595, -3214783, 4515621, -3543885, -8805757,
--3470334, -2301566, 4171487, 288300, 4605816, 4175782, -2276333, 123480, -3658239, -569620,
--1586454, 5363878, -6866579, -264677, 2276870, -7309498, -8178155, 57445, 2492155, 5092758,
--3624953, -8692477, 4475893, -8026757, 9278203, 5185636, 1506997, 3893925, -117575, -3904125,
-11802570, -1150514, 5701032, -293668, 8249559, 5611375, 3002719, -919660, -1633698, -2852932,
--1043140, 1171989, 279710, 2206540, -2358474, 1343788, -1261647, -928787, -897111, -1038845,
-1104344, -678605, -38118, -1837172, -97711, 996432, 1978369, -2091112, -2467996, 258235,
-1069447, -104690, 1289027, -821949, 138513, -1051193, -324270, 584116, 1218697, 1418950,
-891743, -1286343, -1801739, -24828132, 5218922, 1346472, -12427488, -15704548, -2454574, -12104828,
-9996000, 2925410, -7265474, 546535, -3336653, 1189706, -4934381, 730144, -203474, 146029,
-7070053, -2409477, -1546725, -2826089, -2488397, -6501507, -4335770, 6700149, -2647847, 4269735,
--3599720, 1898376, 193274, 3867081, -3762928, 2950643, -3780645, 1774358, -1396401, -2320893,
-2473364, -6070400, 2449205, -3046206, -1045825, -4387309, 10903311, 5242545, 9570261, -3953518,
-4083440, 3313031, -1801739, 1781875, -4411469, 4861366, 10486163, 8319889, -5647345, -1439888,
-2519535, -4052302, -2704219, -7166690, -13508746, -4513474, 7052337, 2604361, -3271691, 1477469,
-797253, -3604551, -6373732, -6417218, 4715874, 640487, -9907953, 1164473, 1046898, -386547,
--664646, 3418257, 7326678, -633508, 74088, 1119376, 75162, -1798518, -6523519, 2294050,
-2308545, 1467268, 3168075, 1977833, -2745021, 838056, -1698123, 478889, -1423782, -496606,
--1584306, 154082, 455267, -88584, -1124745, -1059246, -273804, 627065, 40802, 2541547,
-948114, 2379949, 2532957, 2770254, -3103114, -3117073, -1132261, 2554432, -750009, 1010928,
--872952, 1463510, 1491427, 1029182, -1472637, -758599, -9820443, -4126390, -2596845, 7315403,
--2008434, 1695438, -7666517, -7990787, 336081, 2250026, -4704600, -2712272, -4418448, 8983998,
-1935420, -3074123, -6647536, -6548215, -6415608, -1812476, 3000035, 9029095, 2887829, 5085778,
--4127464, 9620727, 5462125, 1741609, 54224, 9898289, -5858873, 913217, 3092377, 6693170,
--10933376, -5565204, 4693326, 1887101, -1555315, 11317776, -5010080, 3189013, 6788196, 2109903,
-1098438, 4982699, 1979980, 2474438, 2494839, 1074816, 2882997, -175020, 4271345, -1008244,
-10546829, -7709467, 8670465, 6928319, -6088116, 6862821, 1218160, 5834176, 5852430, -12954695,
--392990, -516470, -3951907, 2076617, -3570192, 3597035, -1522566, 8267812, -951335, 1305670,
-3336653, 2330020, 3227668, -5259725, -1818919, -5374078, -5039071, -2850248, 7970386, 1210644,
--2604361, 2383170, 2161979, 1036161, -1401233, 852014, -1005559, 3178813, 1151051, 1022202,
--1576790, 994285, -3058017, -256624, 3455838, 1847373, -614180, 1188632, 1195075, -954020,
-1431298, 1021129, 3351685, 1900523, -1935420, -719407, -1166621, 1069984, -3064996, 916976,
-1617592, 1050120, -492311, -116501, -312996, 12948790, -3466576, -2046015, -3219078, 9214315,
-4817343, 957241, 3489124, -6283537, 13787382, 4551592, -1132261, 5191542, 6636798, -11316165,
--800475, 2646237, 1276142, -40265, 9507984, -4617627, -5847598, 13123809, 1939715, -955630,
--1356136, 6848862, 476741, -1018444, -1340567, -3211562, 3374234, -1997697, 4516695, 3197603,
--8337606, -7866233, 928787, 15503758, -240518, 3153043, -9630927, 4712653, 6315213, -3974455,
-4665945, 5851893, -9767829, -5937256, -1281511, -12445205, -6663105, -7431367, 2117956, -2552821,
--2824478, -1373316, 8677445, -11997454, 5228586, 2600066, -3960497, 7315940, -4758287, 699543,
--10145250, -214212, 6014565, 5469641, 11386495, -13548474, -3445638, -15040439, -3308736, -306553,
--3661460, 1685775, -820339, 13682155, 10536092, 6012954, -6898791, 349503, 2533494, 6669548,
-8116952, -187368, -58519, -1167694, 77846, 4668630, -325344, -402116, -288837, 85899,
-132607, 570157, 1791001, -1923609, -712428, 1956358, 217970, 1808718, -173409, 206158,
--1685238, 2483028, 1413581, 39728, 2211371, -1171452, -267362, 2183454, 462246, -360777,
--2818572, -168577, 482647, 406948, -1088774, 2801393, 4539781, -833761, -261456, -2084133,
-1409823, 8769249, -10027675, 240518, -6179921, 16931298, -7282117, -4216584, 14661945, 11037529,
-1971927, -20656108, -5105643, 9382893, 678068, -1069447, -3018825, -1701344, -1693828, 1357747,
-3096672, 2827162, 2674691, 18149458, -3893925, -2723546, -75162, 2302103, -5523865, 3126199,
-1845225, -758062, -6070937, -3836480, 6493454, 6972343, 13255343, 3335042, -5582921, 3295851,
--261993, 3342022, 158377, 7329362, -6260452, -9280351, -9577777, 6136972, -2796024, 1223529,
-2379949, -3466039, -721018, 15765751, 5317170, -13436268, 9411347, 2962991, 15946140, -8414378,
--7956964, 4568772, 8540006, 5894843, 3230352, -1546188, 407485, 4057670, -5323612, -1569274,
-73551, 6743099, -5036386, 13615583, -594316, -253940, -7175280, -8041253, 15543487, 4586488,
--12942347, -3068754, 10681584, 7416335, 1387274, 2646237, -6641093, 1984812, 1636383, 2042794,
-1090385, 2275259, -3110630, -3712462, 383863, -170188, -3117073, -1057636, 2698850, 2695092,
--4133369, 1009854, -104690, 1702955, 2313914, -725850, -806380, -1045825, 1530082, 4759898,
--3580929, 2600066, -322659, 67109, -2138894, -526134, -1616518, -1077500, 2209224, -845572,
--1436667, -3172370, -203474, -1816234, -12150999, -10302553, -3977677, 3834869, 3935264, 18884434,
-18333604, -2076080, 1525250, 861141, 186831, -155693, -3732864, -12221329, -9366250, -4810900,
-4392141, -3372086, -10630581, -2974802, 2075006, -742493, -16322486, -4762582, 3670050, -1625645,
-1595580, 1178432, 4964982, 7254200, 1211718, -5175436, 5358509, 5583458, 3937411, -170188,
-7217693, -14307610, 4855461, -12671764, 15897285, -11202348, 4376572, -11889006, -1934346, -13288629,
--7002944, -8264591, -8948027, 6213207, -7863012, -1481764, 2828236, -55298, -4169876, -2991982,
--1337346, -12998719, 475131, 897648, 6517613, -20317880, 528281, -485868, 9546102, 11460046,
--7704635, -4720169, 480499, 8813273, -16787954, 10829223, -7522099, -4968204, 871878, -16345035,
--798864, -1288490, -2515777, -2893734, -1999844, 16464220, 6747931, 3409667, -3888556, -3658775,
--4071092, 545998, 4078072, -6550362, -134755, -1116155, -1726577, 907312, 4898947, -1781338,
--3067681, 3099356, 1928977, -39192, 3454228, 1870458, 2901787, -1713155, -2165201, 4158602,
--2942590, 1088774, -3871376, -724776, 220117, -771484, -1440962, -3434900, -3760781, -4012036,
-1021665, -196495, -835371, -2886218, -2707440, -1101122, -1406602, 933082, 4152697, -1070521,
-3189550, -9531606, -25071334, -9928354, -4660577, 4534412, 6945499, -8129836, -2996277, -10262287,
--9047885, 4982699, -7934952, 8450885, 3511673, 6110128, -871342, -8043400, 14420353, 5820218,
-8126078, -10086731, 4449586, 2003065, -14788646, 9346386, 5623186, 681289, -10040560, -3771518,
-5100274, 5441187, -151398, 1963337, 7312719, -6945499, -5146445, 8642548, -16887812, -16604880,
--21915070, -4811437, 7137699, -19178640, -16043850, -9649718, 381715, 7067906, 2270964, 2080912,
-386547, -5463199, -7652558, -18105434, 9666361, 2836826, 22137872, -5163088, 620623, -13558675,
--16322486, 2200097, 10600516, 849330, -10291279, 6934225, 2789045, 15185931, 1503775, 2017561,
--7269769, -1261647, 6405407, -14654428, -27590870, -7573101, -6881612, 1613834, 7267622, -13095892,
--6684580, 4440460, -4612795, -944356, 4323422, -2426657, -2215666, 5813238, 1402844, -380641,
-2802466, 4546760, 4929549, 1074816, -3307125, -8645232, -805306, -5222680, 1450625, 1107028,
-1119376, 3774740, -3149822, 3444027, 4519380, 3164317, 2554969, 2675765, -6512781, -5819681,
--2263985, -4992900, 564251, 1605781, 1717450, 6241125, -1442572, 4020090, 2371359, -2421825,
--1340567, -3590593, -5059472, -1227287, -6664716, -2014340, -1513439, -23601920, -18136574, -8348343,
-12462921, -1093069, 21340082, 4207458, -1839320, -11985106, 4271882, 21969294, -22999550, -20730734,
--6832756, -3460670, -14418205, 13654238, 4018479, 7387881, 8864276, -14477798, -1707250, 5776731,
--9094056, 17026860, 263604, 3808562, -4951024, 4180614, -11256036, -6459094, -3860639, 6381248,
-3058017, 10333691, -16979616, 1487132, -118648, -12698071, 13836237, -8302709, -20205136, 3956739,
-7296613, 1430224, -6027450, -1510755, -8409009, 1345935, 6899328, 2884071, -13808320, 5366562,
--3139084, -15398531, -9062381, -18909130, 430034, -2988760, -491774, 2393371, 11579769, 14324790,
-11971684, -6175626, -10424422, 3391951, -2646774, -1816771, -8056822, 14902463, 12372727, -2717641,
-22986128, -14720464, 7668664, 14427332, 15607374, 356482, 9924596, -6486475, -2526515, -12930536,
--5437966, 7624641, -2612951, -10089415, 6255620, -5812165, 6572911, -3003256, -6832219, 3498788,
--1348083, -3987877, -2973191, 2546916, -3317862, 2211371, 4642860, -4944581, 6294275, -847719,
--3402688, 2263448, 770947, 326954, -2823941, 3592203, -5565741, 1826972, 2121714, 155693,
--3707631, -470836, -2190970, 2760590, 5219996, 11176579, 5734855, 8910983, -427886, -163209,
-4653597, -5819144, 1578937, -7868917, -3128347, 1632088, -77846, 8629126, -20440824, 2600066,
-248571, -12920872, 1893007, -28755342, -24869472, -5946382, -209380, 1081795, -617402, -10217727,
--348966, -2915746, 9210020, 1803886, -570157, 1735704, -21721260, 7521562, 4065187, 12070469,
-5016522, 5232881, 14181445, 7065758, 2063195, 35459788, 7596187, 13647259, 18824842, 886374,
-13280576, 3331284, -7354595, 8621073, 623844, 4153770, -7202660, 544387, -4668093, 3012920,
--4653060, 9978283, 1216013, -6199249, -7739531, 1073205, -21021718, 12233677, 8265665, -1066763,
--1889786, 4811437, -5576478, -4634807, -6885907, -8326868, 6970732, -6641630, 11508365, 13378286,
-13122199, 13944685, -3218004, -21117818, 355409, 8921721, 21322902, -4937065, -765578, 10098542,
-14898705, 21927956, -2822331, 9663676, -6467147, -3754338, -17592722, -13731010, -5982353, -6228240,
--5009006, 3684008, 786516, -7547868, 8579734, 5405753, 6747931, 12062953, 4849555, 4526359,
--1412507, 22549, -1757715, -3442416, 129386, 2183991, 38118, 6371047, 5112085, 3119757,
--334471, -5207648, 332323, -3736622, -4122095, 2666101, 3256659, 979253, -6470905, -1452236,
--9424232, -2290291, 3118146, 4695473, -2997887, 3906273, -5373004, -6272800, -3148211, -3776887,
-3529390, 1831804, -5498095, -3788698, 4334696, 16988206, 22158810, -17118666, -17897666, -23526220,
-20537460, -2530273, -8762270, 6920266, 6688338, 19213536, 15964393, 755377, 17536352, 25056840,
-6925635, -13197361, 11870216, -12233677, -6960532, -2749316, -8625368, -10310069, 4948876, -5333276,
--5237176, -12380243, 27333172, 3193845, -14928769, -256087, -2232846, 12104828, 12822088, 4907000,
--8830990, 12931073, -3810710, 7890392, -25463788, 1084479, 10260677, -11063836, 3400004, -12001749,
--9817758, 25817586, 10597295, 7624641, -2043331, -23314694, -5830955, 6449431, 4751845, 3503620,
--5695127, 18134962, -13133473, 9974525, -6289443, 6520297, 7216619, 14320495, 19439022, -23066658,
--821413, 11509975, 5478768, 16271484, 15773804, -23003308, -164283, -6534793, -12030740, -973884,
--12572443, 4844723, 9221832, -4836670, 16893716, -4092567, -10469520, -12660490, 10424959, 12000139,
-11942157, -3592203, 1880122, -952409, -17923972, -17355426, -16294569, 9685151, 4747013, 2918430,
-7730941, -791348, -4727149, 11810623, 1398012, -345208, 7130720, 11428371, 6812355, 610422,
-1010928, -3743601, 6835441, 3264712, 14686104, -1693828, 1529008, 10227391, 8244727, 2636573,
--1780264, 6426345, -508954, -1699196, 11523397, -9782862, 205085, 6984154, 274341, -2509872,
--3869766, -2132451, -335544, 7553774, 1170379, 233539, 8367670, 5995238, -5920613, 9008694,
--742493, 17474612, 34820372, 1487669, -16656957, 4702989, -11147051, 7209640, -9693204, -10420664,
-31601296, -23994908, 39680664, 24334210, -5879810, 8026220, 19164680, 2810519, -29950954, 11790759,
--24259050, 5810554, 2144799, -11931419, 498753, -1585380, 17303350, -8614094, -882616, -614180,
--5284421, 36644124, -2116345, -5440650, 4700842, 12383464, -12484396, -26266946, 20763482, -3259880,
--1603633, 23752780, -13944148, -3784403, -16599512, 4507568, -11606075, 13451301, 12321724, 25283398,
--7241852, 7124814, 16824460, -23817204, 2913599, -15144592, -24067386, -30656402, -16190416, -33152316,
--37402184, -5141076, 2401961, -17501992, -18950470, 11818676, -1347009, -10524280, -20430086, 14823543,
--10924249, 3932580, 18493592, -34799972, -10095321, -6311455, 15467788, 41845328, -19776176, 1320703,
--12563316, -18415210, 8956617, -22057342, 17832704, 31222802, -8901857, -14421963, -15436112, -3774740,
--3714073, 415001, 10065256, 7541963, -8226473, 8360154, -1065152, 6603512, 340913, -7427072,
--2184528, 9240622, -15162845, 7230578, -7963406, 2211908, -6491843, -2355253, -9146670, 2202245,
--8793946, -13475997, -6587406, 3349538, -10140955, 107911, 3004867, 15051176, -8663486, -4902169,
-4860829, 6280853, -10819023, -6586869, 3019899, -2792266, -5790153, 10549513, 1780801, -8006356,
-7228967, 2200097, -12628814, 2205466, -10137733, 11254425, -5009543, -16146393, -23897198, -18126372,
-20149302, -16412681, 8167954, 19173270, 8227010, 12325482, -22778360, 32864016, 20702816, 17939004,
--13154948, 23561116, -2527588, 15591805, 10277857, 3491272, 8537858, 11452530, 7012608, -3806415,
--5796595, -5209259, 2428804, -15786152, -18592914, 10523207, 4694936, 6119792, -15280420, 4208531,
-4733591, 11516955, 17190606, 25789668, -14487998, 3924526, 36719288, 7930120, 3999152, 3567507,
--7486128, 2713883, 36567888, 10611254, 23712514, 6760816, -25222732, -10516227, -18346490, 53014392,
-21607980, -20464982, -12752832, -18252000, 3168075, -11972221, -28715078, 6627672, -21725556, 32463510,
--2193655, -26851598, 35451732, 28683402, 4182225, -7786776, 4930623, -16341814, 21878564, 38927436,
--10314364, 18465138, 43622372, -6845641, -6976638, -4952634, 26605712, -1921461, -14515379, -13733158,
--13853954, -231928, -1603633, -12170327, 1091995, -5101885, 13479755, 3331821, -12712566, -8087961,
--14494441, -1584306, 2127620, -2375117, -10108206, -11415486, -7984881, 7165079, 12189117, 1890859,
--12406013, -1817845, 16103980, 132070, 14774687, 7697655, -8043937, -724776, -12566537, 12508019,
-5750961, -16385300, -30698278, 2848637, -1822677, -9343701, 10319196, -65498, -5203890, -4379793,
-3352759, 856309, -1029182, 9115531, -24970940, 10110890, -3297998, 25043954, -51946556, -35604204,
-20760798, 9997073, 7610145, 17634062, -17621714, -23039816, -12603582, -18955302, 10940355, -20349556,
-6131066, 13720273, 22494354, 863288, 18879602, 11020886, 3240553, -5854041, -19415936, -13703093,
-11577084, -23834384, 12357158, 2926483, 20566450, 15669651, -7459285, -29699698, -19206020, -1699733,
--1316944, -7782481, 20575040, -35932232, -2618320, 1352378, -37553584, -638340, -4469987, -2922725,
-4216584, 22176526, -21345988, -59222768, 22318798, 24248312, 14587856, 46336256, -37901476, -4814659,
-25881472, 19731080, -23719494, -11038603, -6410239, 36502928, 7356742, 34842384, -50130320, 7399692,
--59836412, -35893040, -34610456, 41309532, 13258027, -26564372, 24407226, 2877091, -23159538, 23787140,
--34737160, -36617816, 5665062, -38035156, 11483132, -65000036, 10116259, 20549808, -27515172, 30481920,
--13626857, -7323456, 20551956, -7013145, -5412733, -14496588, -877784, 4803921, 11416560, -1335735,
-10621991, 20511690, -15256261, -1692217, -12095165, 7294465, -7841000, -2143189, 4649302, 2508798,
-2920578, -2723546, 21300354, -7034083, 1877438, 9013526, -18485540, -16443282, -17946520, -8472360,
--30339112, -14048838, -10992969, 26229366, 5360119, 23334020, 10228465, 4667556, 10781979, 7347616,
-1107028, 8784819, 2032056, 18249852, 44950052, 16610786, -16135655, -10553272, 6184216, -11461120,
--13423383, -1633698, 20910048, -3674882, 3894999, -22293028, -4616016, 30690226, -22439594, 16955458,
-40130028, 20023674, -1712081, -7710003, -13203803, -25720948, -18878528, 22065932, -12602508, 20700668,
-14961519, 7066832, 983548, 8045011, -6394670, -32706176, -11316702, 23296976, 18521510, 19352048,
--20642150, 35582732, -9162239, 13797582, -26331908, 24070070, 41555420, -8421894, -14775761, -1597191,
-1544578, -9300752, 9098351, 18101676, -34057480, 22304838, 21725018, -5380521, 25182466, 13268228,
-10882373, -16025597, 3322694, 22436372, -47496432, -42395084, -17601850, 11143293, -21848498, -64404644,
-26989574, 17580912, -8313983, -10990284, 521839, -3849901, -22003654, -59170692, -3541201, 41887744,
-10222022, -7543037, -4983773, 8986682, 34403760, 27292906, -40303972, -16724603, 26954678, -5779952,
--10780368, -46201500, -2652679, 25220048, 8444443, -7184944, 15636902, -5883032, 1688996, -17457432,
--2811593, 10485089, 15910169, -9102109, -3221762, 3180423, 9220758, -5768141, 5694590, 669478,
--11227045, 6689412, 19344532, 3236795, 5810554, 3524021, 8762807, -9168681, -15887621, 1473174,
-17292076, -14201309, 6245956, -4848481, 1603097, -13773960, -26331908, -14427869, 9891847, 32053878,
--3217468, 15108621, -21206402, -9409736, -14315126, 8836895, 6314676, 10087268, -7185481, -11048266,
--705448, 2275259, 2543158, -4990752, -1094143, 21876416, 28997472, 645856, -32695976, 43296492,
--12164421, -30227442, 27084064, -4350802, -16445430, 20932060, 5602248, -4383014, 17657684, -24212342,
-22961968, -8206609, 770947, -7041599, -6015102, -33754148, 13364864, -12885976, 5316633, -13532905,
--1116692, -10089415, 9664750, -5911486, 36477696, 6444599, 23863912, -9286793, 5967320, 15083925,
--6406481, 10424422, -2068027, 18219252, -915902, -6125697, 28806882, -25742960, 14361834, 19684908,
--11556146, 22280142, -13641890, -558883, 11463805, -8722542, 26192858, 23450522, 4876399, 39027296,
--24055038, -55116240, -9276592, -34080564, -22546968, 80483392, -2050847, 24689620, -3757560, -33973192,
--875100, 33811056, 47887276, 29111826, 48238388, -25953950, -7763154, -11632382, -27542552, 18259516,
--7733626, -17004850, -1775969, -33431488, -61097520, 15374909, 21509196, -18087182, 12177306, -3808562,
--18226768, 19450834, 14328011, -7125351, 20042464, -7369090, -17895518, 9190156, -8886287, 23763518,
-2235531, 1773822, 13426068, 4476430, -15141907, -6352257, 7792682, -4988605, 14794015, -20637854,
-13316009, -21638046, -5512591, 5394479, -15358803, 9801115, 616328, -23051626, -3736622, 1487132,
--6192269, -56908, -4310537, -16911970, 6922414, 5073967, -2695629, 16983912, 26029650, -14187888,
--20310364, -1296543, -9691057, 28168544, 28918014, -17043504, -10807211, -3547106, -14343043, 303332,
-5078262, 24316494, -26086558, 30828202, -18967112, 4054449, -286689, 3002719, -24087788, -3908957,
--21809844, -18073222, -164819, -7254737, -16511465, -6709813, 11710228, -14115947, 10772852, -6780143,
-33152852, -15672336, 9739912, 1817308, -8533026, -27012124, -10067403, 20215338, 3454228, -6884833,
-26531624, -20007032, -20233590, -2927557, 25322054, -23447300, -3491809, 4361540, 6694244, -26088706,
-7548942, 8794482, -9502078, -27270358, 239444, -21219822, 8659191, 4585415, 7814693, -41576896,
--17940078, 23408108, 63411436, -29018410, -4235912, 4935455, -11002096, -18170932, -610959, 52993452,
-11999065, -5611912, -4932233, -14249091, -3526168, -10955388, 20371030, 894427, -13431436, -14331232,
-479426, 9354976, -21470004, 16376710, 4645544, 17871358, 457951, 22781044, 9385040, -16181826,
-21297132, 20402706, 50659140, 16041703, 3688303, 5086852, -18860812, 6059125, 16394964, 17063906,
-5684926, -1347546, 399432, -2215666, 6163815, 7032472, -1945083, 9128953, -2645163, -1082869,
-17333952, 7344931, 2768643, -5389647, 4954245, 13193603, 13761612, 15983721, 5592585, 5794448,
--9279814, -183073, -777389, 2837363, 8851391, -484794, -7463043, 8156680, -7808788, 6771016,
--583042, 8011725, 967441, -6762963, -2097018, 446677, 1612760, 3942780, -1212255, 2799782,
-1945620, -196495, -40537512, 53643068, 7337415, 12146168, 12811351, -12495670, -14384919, 426276,
--5592048, 7551090, 17619566, -24947854, 8150238, -5335423, 6385543, 5953899, 4134443, 14069239,
-11011222, -10697153, 9893457, 8563628, -8671002, -14944876, 4466766, -5371394, -12380243, 7268159,
-5987185, -1149441, -8115341, 118112, -5932961, -2963528, 504659, 3087008, 5592048, -11216844,
--1712081, 8773008, -4029753, 7859790, 1466731, 5636071, 11611444, 3329674, -11976516, 1123134,
-11078868, -6448357, -640487, 5268851, -19002546, -1281511, -4741107, -17792976, 24368570, -6346888,
--1074816, 14359149, 2432562, -11038066, 4249334, -10558103, -2154463, 7921531, -9815611, -3675418,
-18008262, -19323058, 2001992, 1576253, 6516539, -8672613, 5764383, -3077881, 5370857, -7465727,
-298500, -1924682, 18149994, -8460549, -859530, 4582730, -9229348, -1048509, 12556337, -2824478,
-8082592, -5710159, -5252745, 769873, 4847408, -4970888, 9257802, -238908, -2066416, -2197413,
--2965675, -3102577, 7895761, -6932614, 7729868, 4061965, -10228465, 2270964, -1060857, -1056562,
-5986648, -8683887, -3437048, 1051730, -5683853, 5700496, -5844377, -1050656, 9590662, 1530082,
--1817308, 4177930, -4844723, -4045322, -2358474, 4463008, 8000987, -2683281, -2321967, 663036,
--6920266, 12566537, -53253300, -108307264, -13989245, 67903432, 52196736, 149959328, 72122704, -35019016,
--30605400, -71170296, -124615256, -15794742, -48343616, -15032922, 87898120, 56021404, 59797220, 114428664,
--4062502, -25382182, -43229920, -113250768, -62542776, -20146618, -21087216, 3111167, 51484308, 39875012,
-42315628, 79861160, 46699180, -29411400, 42543260, -44788456, -104469712, 13327820, -70131448, -97534416,
-37977176, -8404177, -18119394, 119859112, 39222180, 31841276, 103282688, -11120744, -20380156, 31424666,
--69305200, -86073832, -23197118, -73705936, -65904124, 13931263, 14219026, 29746406, 90103048, 79825192,
-48316236, 57248692, 11023034, -45193792, -48700636, -60234232, -82812336, -38665980, -21061446, -28143846,
-24955908, 79723720, 52005076, 51399484, 42216308, -29825326, -382252, 8392366, -68357624, -28177670,
--17176648, -20016696, 31268436, 16009491, -3986804, 25593174, -6003291, -5350993, 4320200, -18446348,
--13955422, 9077413, -11476689, 18545668, 23288386, -8722542, 12600897, 23779086, -13936632, 15570867,
-7737921, -46506444, 8170102, -15108621, -50536732, 765578, -28885802, -25812754, 36658620, 39727372,
-38316476, 71102648, 22617834, 22623740, 24065238, -31128850, -62147104, -69342248, -88809720, -66136592,
--19991462, 11570105, 53782656, 89197880, 98794984, 77186464, 56215752, 11107322, -52376588, -78829832,
--96288336, -89441624, -46396384, -2952253, 25212532, 64072860, 59112708, 32298690, 32434520, 12625056,
--912144, -186294, -10008348, -19592568, -16251083, -20317880, -24624658, -18060338, -13399761, -3456375,
-6895570, 16695612, 20103132, 21766894, 18805514, 13237626, 6739341, -35433, -10909217, -18176302,
--16645146, -11653320, -8116415, -6350109, -1699733, 2315524, 7962870, 9302362, 6191732, 5869073,
-5098126, 2101313, 2913062, 2610266, -3103651, -4044249, -1980517, -3850438, -3483219, -5171678,
--6981470, -3368865, 298500, 693637, 3617436, 5631239, 5721434, 6972343, 5208722, 1904818,
--717796, -3526705, -4970888, -4906464, -4493610, -4117263, -2047626, 840740, 2229625, 2108292,
-2018635, 1798518, 1785096, 1616518, 572841, 127238, 437550, 316754, 164283, -168577,
--993748, -1340567, -2186138, -2949032, -2353105, -1235340, 207232, 1484448, 2149094, 2724620,
-2834142, 1893544, 1155883, 581968, -1116692, -1840394, -1715303, -1751810, -1512902, -962610,
--784368, -62277, 495532, 667867, 862752, 912681, 585726, 301185, 42950, -235686,
--376883, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--1049583,
-2694555, 4660577, -3473555, -3004867, -4648765, 4219806, 2105071, 372052, 6239514, -619012,
--73551, -1902671, -1538672, 1357747, -1663226, -3244848, 1832877, 532039, 5211943, 7121056,
--1848447, -4182761, -5153961, -320512, -2945274, -2838437, -1946157, -391916, -4104915, 3961571,
--1467268, -1548336, -2713883, -1999844, 762894, 4450660, -459025, -1278827, 1347546, -4363687,
-3281355, -2720325, -9791452, 4862977, 3233037, 5401458, 5602248, 1070521, 2952253, -2918430,
-834834, 4247186, 335007, -46171, -1017370, -558346, 2280628, -2063732, -1488743, 111669,
-2168422, -1791001, -2232309, -3270618, 4197257, 1670205, 521839, -1015760, -4190814, -139586,
-3140158, 1953136, -593242, -788663, 3145527, -375810, -225486, -1362578, -1288490, -1911797,
--2265595, 147640, 483721, 1085016, -2331630, -919123, 1304060, -1612223, 1407139, 385473,
-633508, -598611, -33286, 311385, 688805, 178778, -266825, 435939, -292595, -791348,
--254477, -1314797, 882616, 458488, -372588, 25770, -592706, 795643, 817118, 269509,
-85899, 313533, 293132, -814433, 34897, -153008, -195421, -314069, -106300, 469225,
-142808, -14672682, 7678865, -707596, 234076, 2680597, 3770981, -5457293, -679679, -967978,
-3139084, 1202591, -3332895, 10461467, -1103807, -633508, 4664335, 3830037, 1263794, 2661806,
-8543764, -4207458, 284542, -2138357, 870805, -2611877, 230318, 279710, 976568, -4721243,
-425202, -1123671, -1762547, -190052, 2994666, -1627256, 2785823, 4041027, -6929930, 949725,
--2805688, -755377, -4258997, 2147484, -2519535, -423054, -1414118, -4334696, 1681480, -2904472,
-2003065, 1102733, -2130304, -3152506, 121870, 2951180, 2232309, 5353140, 2490007, -2297271,
--6537477, -428960, 1178432, 8282845, -2543158, -1245004, -69256, -1601486, -4289062, -2046015,
--3991635, -530428, 3352759, -743029, 3987340, 2564096, 2071785, 2888903, 542240, -5163625,
--1185948, -3319473, -2093260, -5735392, -171262, -1627793, 798327, 1567663, 704375, -846109,
--1146219, 206158, 1541893, -1286343, -332323, 45097, -443992, -111669, -506269, 618475,
--1951526, -669478, -442382, 67646, -168041, -358093, 30065, -2901251, 10624138, 5491653,
--1836635, -4421669, 6037651, -7270843, -1297080, 3882651, -3061775, -2238752, -3189013, 6978248,
--2599529, 2083059, 489089, 2056216, 9569724, -9826348, 2786897, 4762045, -3346853, -9103183,
--4799089, -722628, 455267, -1384053, -1735704, 3661997, 5372467, -559956, -3994320, 185220,
--5032091, 1358820, -3200825, 1630477, 5745593, 2038499, -5992553, -263067, 250719, 8659191,
-1531156, 4281009, -1369558, 1839857, 1428614, -10703595, 64425, 4916664, 2220498, 5510980,
--5077725, -3159485, -5055714, 1240709, 3073586, -1115618, 979789, 171799, -2586644, 841277,
--1967632, 1585380, 1495186, -466004, 2496450, 431644, -482647, 1044214, 6206765, 1056562,
-3194382, 4002910, 2173790, -3758, -192200, -6015639, -106300, 6198712, 2132988, 2692408,
--213138, -538482, 3869766, -3063386, 236760, -374199, 1923072, 967978, -70867, -2673080,
-337155, -1402307, -468688, 333397, -912144, -710280, 537408, -179315, 1955821, 753230,
-1781338, 792958, 487479, 907849, -835371, -1119913, 39728, 13959, 2250026, 1324997,
-265751, 703301, 2136209, -476741, 144955, 585189, 897648, -23622, 22066468, -5772436,
--2124398, -3416647, 4468914, 2960306, 7472170, 2927020, -1167694, 3546032, -216359, 3972845,
-1505386, 5545877, 61203, 4643397, 6068789, -6859600, 1161789, 1690607, 1076963, 1003949,
-1461900, -4107063, -66035, -4719632, -727997, -236760, -7937100, -5425081, 1918777, -103616,
--331249, 3067681, 3022583, -1674500, -6848326, 1966558, 6073084, 3962644, 5661304, -1611687,
-3036542, 5596880, -9494562, 2922188, 4102231, -4740570, 5792301, -4143033, -905164, 502511,
-1102196, -3219078, 2714956, -905164, -1112933, -3347390, -2718178, 3196530, 3243237, 1404991,
-3192771, 4958003, 2716567, 6922951, -1517197, -7962870, 7585986, 1165010, 3702799, 1503775,
--1340030, 1909650, 1415729, 249645, 5197448, -1684164, 5128728, -7495255, -1739462, 876173,
-2265059, 419296, -4085051, -1955284, 642098, 146566, -459562, 162672, 1536525, -2076080,
--1162862, -1210107, -1474248, 759136, -464393, -638340, -1204738, -947040, 2224793, -628139,
--767189, -120796, -813896, -744103, 1120987, -544924, 1199907, -351114, 79457, 857920,
--290984, 20938, 9922448, -11135776, 7601555, 1697586, 7781944, 1891396, -4197794, 1532230,
-6024766, -6939057, -1371705, 922344, -7831873, -1459215, -5990406, -3628711, -4330401, -4773320,
-2199023, -7485055, -4592931, -5941551, -1418413, 5957120, 2234457, -7171522, -2710124, -7506529,
--1756642, 1771137, 11062225, -8698383, 3738769, -2133525, -3100967, -6456410, 434329, 1226750,
-7138236, 3791383, 1010391, -5845988, -10205379, -46708, 3157338, 8221105, 2958159, 2707977,
--5873368, 2292439, 5215164, 497142, 920197, -3107946, -3055332, -971200, 3089692, 633508,
--1932735, 165356, -6468758, -841277, -5430450, 3608846, -1036161, 3607773, -5316633, -4510790,
--7369090, -767725, -4691715, -1975148, 2054605, -7180112, -3008625, 941672, 4147865, -8646306,
-5240397, -4016331, -4280472, -4548907, -3746285, 2728378, -2471754, 1317481, 1649804, -2222109,
-474057, 1918777, 1555315, 191663, -1934346, -213675, -855235, -2251100, -269509, 1832340,
-1175747, -1066226, 1735704, -1265942, -886911, -163746, 690416, -1655173, 271657, -120259,
-1338419, 1024887, 2110977, -1486059, 618475, -265751, -517544, 701153, -1661616, -548145,
-1082869, 586263, -692564, -27327266, 4422743, 3134789, -7876433, -1744294, -16106, 285615,
--1493575, -2612414, -2001992, -8115878, 6274411, -3927211, 883690, -6760279, -2385318, 9797894,
-8893804, -5621576, -3374771, 287763, -134755, -4614943, -5363878, -3816615, 663572, 420907,
-186831, -555661, 2307471, -6672769, 2108292, 226560, -11745662, -1417339, -3496640, 5377299,
-7888781, 1222992, -1358283, 369367, -6871411, -8647380, 4659503, 8537858, 9545028, -2577517,
-1764158, 5541045, 5758478, -2980171, 5315022, 8598525, -330712, 7235410, 6176700, -7240241,
-2397666, 401579, 7803419, -4781909, -5044439, 4459250, 5924371, -1831804, 561567, -8534637,
-6028524, -4784594, 6362457, -10610717, 1187022, 2493766, 5091147, 321049, -4393752, -9058623,
--5499706, 7569880, -7464653, -381178, 892279, 4069482, -2228014, -1634235, 3241090, -6069326,
--5214627, 2124398, 1483911, -473520, 4365298, -2037425, 1072668, 1079111, 1204202, 1597728,
-401579, -1721208, 1098975, 2189360, -874563, 270046, -400506, -1163936, 960462, -2836826,
--343061, -3056943, -523986, -613643, -930934, -1592359, 679679, -941135, 13422, -2391223,
-992674, -474594, 871342, 902480, 414464, 342524, -10536092, 3815542, -9303973, 11908871,
-11454141, 410169, -15377594, 6453189, 934155, -2817499, 10710575, 107911, -9140227, -915902,
-11638288, -14463302, 517007, -3571265, -11407433, -3125126, 265751, -2193118, -5814849, 3445101,
--4807142, 4019553, -4086662, -7702487, 4197257, -515396, 6005975, -11500312, 4776004, 9167608,
--3604015, 814433, 9205726, 13447006, -3503620, -2665564, -11221139, 726923, -9248138, -691490,
--6421513, 389768, 960999, 5474473, 2644626, 5009543, -3512210, 978179, 3114925, -516470,
-12402255, -8127152, -3996467, 16318728, 16371878, -3149822, -978179, -10169946, -5184026, 593242,
--2790655, -6706055, 9907953, 3111704, -2517388, 14537927, 2854006, -6866042, -141734, -13207561,
--6612639, -7454990, -6404870, -1688996, -10321343, -7408819, 4321811, 4027606, -714038, 2408403,
--3029563, 3550864, -2263985, -3315715, 634045, -4807142, -2185602, 6353867, 548682, 3206730,
--1631014, 722628, 526670, 1553704, 1406065, -192737, -79994, -3023657, 9127, 745714,
-546535, -791885, -836445, 2181307, 668404, -363998, 118112, -449361, 113817, 1248762,
-774705, -333934, -1130650, 408559, -736050, 13082470, -3531000, -188979, 9000104, -2201171,
-5306969, -2971581, -11501922, -784905, -17717, -2399276, -6825240, -7625715, 3920768, -6050535,
-10590852, -3308736, -7728257, 6524592, 13302051, -3358665, 3712462, -3631395, 7677791, 120796,
--16217797, 5718212, 8977019, 846645, -2716030, -9470940, 7880191, 5232881, 5069135, 982474,
-3190087, 10516764, -7477538, 1264868, 2054068, -5937793, -11400991, 10790568, 6020471, 20129974,
--1042066, 8847633, -2980171, -6402186, 1065152, -1052267, -299037, -1866700, -6589554, 14434848,
-324270, 1069984, 2041183, -2085207, 11916387, 1451699, 9975598, 4105452, 1669669, 10611790,
--5047661, -12033961, -2374580, 2145873, 1536525, -5017059, 5837935, -3611531, -16759499, 1447941,
-3316789, -9320616, 4300336, -1029718, 1796370, -47245, -3813931, -4275103, -29528, 1514513,
-5099737, -533650, 1422171, -2046015, -1476395, 2237141, 1504849, -364535, 1551557, -1779727,
--205622, 41876, -2306934, -3383361, 2051384, -3758633, -964220, -1683627, -3229816, -972810,
--440234, -1273995, 1391569, -629213, -1365800, -481573, 6146635, 2333778, 2339147, -1325534,
-870268, -2010045, -2513630, -905701, -873489, 986232, -1666447, 2894808, -3871376, -1302986,
-818728, 10547903, -17708688, 2812130, 7810398, 11670500, -12429098, -1858647, 8282845, 5753109,
-7055021, 1182727, 14987288, 2717104, 6162205, -1950989, 802622, 6143951, 3321084, 7104950,
-478352, -10043781, -14637785, 7640210, 3641059, -2842732, 1617055, 4265977, -13704167, 55298,
--8683887, 3947075, -564251, 8849780, -2957085, 3914863, -2159295, 2240899, 1120987, -447750,
-4922570, 6636262, 2301029, 3815005, -10764799, 4345433, -1982127, -18661632, -12457553, 3099893,
--13683229, -1001801, 11116986, -8254927, 22187264, 7993471, -4597763, 12033425, 457951, -4027606,
--9108015, -8977555, -12490839, -1989644, 7124277, -8921721, -1214402, 7969312, 3553012, 4473209,
-16219944, 1953673, 10562935, 18790, 1977833, -17597554, 4736812, 1258425, -16082505, -15171435,
-8595840, -5824513, 890132, 4529043, -2729452, -4169340, 794569, -973347, -1222455, 862752,
--2986076, 2509872, -2185602, 514859, -5173288, 2680597, 710817, 1057099, -410169, 6164352,
--5178657, 380105, -1552631, -1308891, 1114544, 1219234, 1593970, 2940442, 4850092, 3035468,
--3360275, 727997, -555125, 4500052, -1650878, 2886218, -4815195, -3592203, -2842732, -2309082,
--467615, -302258, 2153926, 2658048, -9218610, -298500, 5756867, -102005, 4033511, -9443022,
-7299834, -599148, 2107755, 6801081, -12738873, -8763881, 2285996, -193274, 6954089, 14372571,
--1359894, 3568581, 15435576, -5762773, -10500658, -622770, 11302743, -2474975, -13066901, 1025960,
-4795331, -2585034, -4102768, -980863, 16743930, -3214246, 14410689, 10879689, 13146895, 703838,
-1057099, 7669738, 2564632, -2692945, 2696703, -10446434, 7843147, 13164075, 8260833, 1109712,
-7344394, -5807333, 5637145, -5650567, 8251169, -7475928, 129386, -617938, -594316, 23432268,
--3523484, -1335198, -2056216, 3235721, 6454799, 12326556, 14088566, -7730405, 3366718, 14012331,
--7883413, -9797357, 5867462, -4279398, 6049999, 26770532, -12672301, 1789928, 2494839, -7000797,
-3009162, 8724152, 6120329, 704375, -5500780, -13220983, 6242198, -5778879, 7223598, -4982699,
-1006096, -6556805, -1445257, -10952167, 922881, -3492345, -3876208, -1382443, 1315334, 2738579,
-5410585, 2272038, -3119220, -799938, 5516349, -3284039, -2874407, 368293, 381178, -4998805,
--75162, -2532957, -1245004, -960462, -903017, 1888712, 1186485, 3893388, -2513630, -2534031,
-292595, -3030636, 1401770, 6128382, -3085934, -3306588, -6125160, 3110630, -1553168, -4185446,
--1504312, -9036074, -14268955, -10978473, -14848776, -5697274, 1725503, 11969537, 8891119, 3240016,
-12618614, 3814468, 7731478, 7099044, -3347927, 10929081, 11870216, 8371965, -15877420, -8903467,
--9167608, 3505767, -6300180, 469762, 4607963, -4607426, -11178189, 7300908, -5260798, 2605435,
-2494839, 11497091, -11889543, 18626736, -18299782, 19026168, 39728, 9552544, -9139690, 3369939,
--20459076, -11429445, -9908490, 9067213, 4261682, 13139916, -1213865, -40265, -6570763, -16465294,
-10850698, -8990440, -4576288, 7838316, 18783502, 18078592, 8581882, -1205275, -12126840, 7195144,
--18677202, -1464047, -10556493, 6049999, 20384452, -19459960, 7211250, 9026411, -11979201, -1205275,
--1944547, 6777459, -7897908, -11559904, 2424509, -4683125, -16840566, 8602283, -1547799, -15952045,
-11968463, 15640123, -5028333, 511101, 2348810, -6756521, 10308458, 4694400, -2735894, -2549600,
--6528887, -3832722, 8304320, 4650376, 4804995, -377420, -7199976, -2239289, -2340220, -8193724,
--1581085, 2428804, -329639, -2420214, -577673, -5852430, 931471, -2010582, 4136054, 2174327,
-1002338, -6781217, 5750961, 485331, -2735357, -1739462, -923418, -372052, 3495567, -2524367,
--843424, 2496450, 7050189, 3406446, 2226404, -4184909, 5673652, -13493177, -15786152, -4325569,
-10481868, -12045236, 8275328, -16616155, -2813741, -6276558, -5732708, -13135621, -1001264, -4786204,
--7816304, 6594923, -8730058, 9788767, 2218888, 7686381, -11595338, -21860310, -1640678, 4733591,
--9039832, -6573985, 3798362, 3061775, -10604811, -4939213, 15554224, 7643431, -1830193, 8588861,
-22254374, 969589, 2992519, 2445447, -1479616, -177704, 3447785, 3139084, -16756278, -5980742,
--20518132, -6365142, -19121732, -8925479, 1249299, 22753662, 10733123, -10990821, -12921409, 8595303,
-18024904, 11449309, -7778186, 13842143, -5004711, -854699, -23734526, -6943889, -2885681, -2780991,
--16170552, -26058640, 8607651, 106837, -18990198, 5055177, 30221538, 4079682, 3598646, -18801220,
--1506997, -114354, 4401268, -21134460, 19863150, 3263638, 5633387, 11027329, 4401805, 11947525,
--701153, 5688684, -4427038, -9071508, -7476465, 4202626, -5985037, -1815697, -8064338, 2914672,
-6953552, 265751, 5888937, 773094, -2084670, 31675, -4551055, 3430068, 3607236, 735513,
-822486, -3112778, -1123134, 1927904, 5143224, 3709241, -4151623, -1431835, -1596654, -9844602,
--13611288, -10057203, -3134253, -1173600, 1801202, -2275259, -3716221, -4140885, 188979, -2748242,
--3486440, -6098854, -3165928, 10053982, -5978595, -5325223, -1372779, 12293270, -18218178, -3615826,
-4514548, -8704825, 21276194, -17325362, -17822504, -14488535, 20585242, 9248138, -11709155, -10574209,
--6985228, -2122788, -6279242, -6506876, 1151588, 7732552, 20347944, -2142115, 8755291, 7587060,
-7432978, -13399761, -16684874, -12011950, 14275398, -2366527, 17314086, 5777805, -1746441, -23394686,
--18983756, -1905355, 1712618, -13540421, -8360154, -6324340, -6376953, -30719754, -6533182, -7452305,
--10937134, -5368172, -7096897, -14066018, 10098005, 19275814, 10844792, 594853, 11513197, 14490146,
--4971425, 4635881, 3843459, 1489280, -423591, -3612068, 10298795, 4139275, 17153026, -3885335,
-1860258, 6111739, 33609192, -336081, 17956184, 22534082, -1767916, -19539416, 1883880, 19576998,
-3066607, -16634408, -14754823, -19077170, 12683575, -15575699, -4032438, 22437982, -9418326, -14949171,
-4845797, -4061429, 650151, 6163278, -9180493, -4172561, 2086280, -2763812, -4039954, -805306,
-1942936, 11224897, -820339, -5768141, -4767951, -12885, -4068408, -3497714, -2900177, -5607617,
--2433636, 2149094, -2445984, -515933, -7418483, 1988570, -479963, 1561221, 7916162, 4803921,
--4263829, 2094870, 1926830, -6760816, -10036802, 3842922, 4387309, 576063, -10256382, -11399380,
--1522029, -7976291, -2312840, -1199907, -10116259, 18689014, 13568339, -31836982, 9867150, 12446278,
--5721434, 8987756, 29911226, 2287607, 6528351, -10696079, 6806987, -11295227, -7259032, -6109054,
-2048699, 7546258, 10663867, -1748052, 4305168, -3471944, -1996623, -6007049, 7813083, 28192166,
--9423158, -9358197, 10034117, 6974490, 881542, -20857972, 13243532, -16672526, 9305584, 11639898,
-1178969, 2798708, -3546032, 19320374, 14650670, -41339, 9813463, -8032126, 12410845, 1883880,
-14034343, 20468740, -586800, 5028333, -2823941, -7845832, -650151, 8795019, 10046465, -19985020,
--12125230, 4407710, 21351356, -10629507, 14135274, 9316858, 2657511, -23255638, 2688113, 3354370,
--27569932, 15954730, -15475841, -18512920, -34862788, 8227010, 20994338, -9790378, -19492172, 3782793,
-23284092, 14669998, 2515240, -3292629, 244276, 8000451, -7232188, 10755135, 17876728, 16859894,
--1338956, 6999186, 17692580, -3053185, -303869, -2226404, 15231565, -2520609, 3702262, -7425462,
-3833258, -4676683, 542240, -63888, -1245004, -3746285, 3309272, 8725763, 3002182, 2273648,
--8170102, 1780801, -8428873, 2258079, 13215077, -5116380, 189515, 1445793, -6290517, -8489003,
--9427453, -2444910, 5980742, -3077344, 1612223, -6012418, -566936, -95563, -17421998, -4793184,
--711354, 3351685, 4487167, -3944391, 6234682, 2954401, 3359738, -5499706, -5004711, -3466576,
-1622424, 8037495, 22104586, 16107201, -5177583, -42331196, 5294084, 21626770, 10465762, 4931696,
--18414136, 183073, -12628278, 3299072, -968515, 3832722, 6692633, 9236327, 4086125, -22871238,
-13692356, -2923262, 4333622, 17901960, 7044820, 3595425, -6036577, 22135724, -510027, 22004728,
--26101590, -7444252, 8665633, -15054934, -13020193, 1239098, -3217468, -11714523, 1656247, 19485730,
--394063, 1585380, -9836012, -20645908, -13122199, -5674189, 8920647, -1992865, 2253784, -9992241,
--10982231, -5181878, 16899086, -11150809, 9826348, 6773164, 5626407, 2178622, -17030620, -24274618,
--1784559, 16783658, -20216948, 10193568, -17378512, 11343545, -18294414, -608275, -18035104, 26204132,
--23405962, -13776108, 6314139, 4583267, 12064026, 10203232, -5912560, -2923799, -5951214, 3553012,
--50466, 15766288, -18951006, -7243999, -24410446, 13071196, -8544301, 1309965, -825171, 7067906,
--5245229, 2869038, -9868761, -14967424, 10051297, -7564511, 455803, 2885681, 13285408, 5580237,
--9185324, 2366527, -2970507, -11735461, -2025614, 3196530, 4027606, -10572599, -5121212, 12432857,
--1009317, -9800578, -4236449, 14530948, -16399796, -5277441, 3627100, -3496640, 6161668, -877784,
--7068980, -9472550, -2906619, -4037806, -2808909, -2861522, 2955474, -390842, 6437082, -6136972,
-3696356, 1570347, -2677375, 6579890, -36390720, -5186173, 10853382, 2627983, -8694088, -13014825,
-1171452, -12375948, -1178432, -19092204, 17810156, -7175817, 11138998, -24817932, -14079440, -562641,
-30334280, -24902758, -2183991, -19507204, -15501074, -4789426, 18997178, -4488241, 8417599, 8832600,
--10125385, -21645562, 30370788, 13156022, -17418240, 3289945, 2209224, 8302172, -16947404, 15087683,
--1367947, -31877248, 3337190, 6269042, 8175470, -26433914, -6328635, 3221226, 23180476, 4312684,
-12907987, -34082712, -20673288, 10314901, -16106, 22063784, -5957120, -3857954, 1685238, 11155104,
-10314364, 3821984, -43211664, 12048994, -5038534, 9761387, 23019950, -7413114, -2052994, -26446798,
-8536248, 11764452, -13839995, -8356933, 23829552, 37484864, 9844065, 5987185, -10653130, -4566087,
--20548198, 1415729, 258235, -25531970, 9259413, -925029, -7421167, -2100776, 11950210, -9888088,
--6539625, -1306207, -2705830, -1091995, 10558103, -4731444, 227096, 5886253, 2435783, 8163659,
-7055021, 5156108, 3794067, 9800578, 11728482, -15867757, 5005248, -9986336, 7776575, 948114,
--9887015, -6942815, -3828963, -3507915, -6471979, 5787469, -3281892, -6662568, 10812580, -1942399,
--3379603, 5899675, 11139535, -287226, -3946538, 2809982, 10400800, 10989748, 7124814, -3947075,
-1939178, 1818919, 9370545, 5445482, -30714384, -19923816, -6546604, 157840, -17288854, 14591615,
--36384280, 2274722, -22150756, 12224014, -7910256, -24674588, -1745367, -6298033, -8382703, -28172838,
--20431696, 6463389, 23068270, -14691473, 28363428, -23289998, -15151571, 5567352, -1852205, 13131863,
--7432978, -7822209, -11065983, -2758443, -38685844, -10805601, 1593970, -1242319, -6067178, -14954002,
-12750684, -13182328, 21364778, -6026913, -2152852, -14375792, -13200045, -25484188, -10836739, 10024991,
-4398584, -1116155, 2160369, -8877697, -6585796, -11576011, -9634149, 5730560, 8154533, 4060355,
--22073448, 26203058, 3936338, -10755672, 21061982, 15163382, 25014964, -4258997, 14775224, -33272038,
--17776870, -31419296, 32803350, -10059350, -22160958, -21348672, -45699524, -18920942, 32339494, -1730872,
--15770046, 12037183, -31058520, -20692078, 8315057, -1504312, -25853556, -25310780, 99858, -14406931,
-4346507, 5817533, -19131394, 19366544, -11227581, -16751446, 1882269, -9807021, 27599996, -10174778,
-12618077, 2255932, 16928614, -8118562, -4450123, 1890323, -7156490, 15569, -15479599, -11719892,
--2683818, 6894497, 690416, 11277510, 4806069, 8435316, -6757594, 227633, -13440563, -3118146,
--4621922, 4389994, 13526463, 6336688, 5635534, 6532646, 5796595, 1707786, -17646410, -5095442,
--12084427, -2852395, 2406792, 8553964, 40581000, 51857436, -4583804, -22624814, -5130339, -8384850,
--22818088, 10234370, 980863, -16512002, 49631032, 17353816, -11323681, -33927556, -2702071, 8479876,
-9359807, 10242960, 23951958, -6559489, -11273752, 11291469, -42378444, -28370406, -10774462, -2866891,
-4993437, -22643604, -20449950, 22184580, 17913234, -13273060, -25460566, 16601122, 916439, 29146722,
--23152022, -5260798, -7598871, -1318555, -18196166, -27644558, 23804856, -17095580, -10418517, -21107080,
--4277251, 14150843, 13661217, -8446053, 2342905, 2579128, 18109192, 27078158, 20365662, -34467648,
--16100759, -20415054, -4616553, 11880416, 4837744, -23550916, -33442226, 28876138, 2363843, -28159954,
--46304580, 23687282, -5550172, 12767327, 12302934, 12479027, 2218888, 9218074, -17845052, -6940131,
-13214541, 2334852, -8039642, 5257040, -1607928, -24817394, 13123273, -31520228, -1461900, -1527398,
--4886599, -11316165, -3793530, 13881871, -329639, -3167002, 7742216, -10196252, 31351650, -2427194,
-3386045, -2286533, 943819, 7649337, 169651, 7364795, -15023796, 3375844, -2212982, -10966662,
-1789928, 5201743, 10910291, -5200669, 3544422, -26215406, -7869454, -1487669, -13007845, 11604465,
--862215, -3223373, -6655052, -10851772, -15180562, -22392886, 7490423, -2319819, 17090748, 19314468,
-13103408, -13309030, -17619566, -23412940, -7976828, 21305186, 18254148, 2884608, 8953933, -7611756,
--12651900, -10366440, 814433, 2962991, -9757092, 4614406, 18109730, 22435298, -27785218, -23295366,
-66279936, -5314485, -6478422, -9914395, -20917028, -2248952, 23911694, 38454988, -17696340, -10654740,
--3901978, -17446694, -4356708, -9819906, 15265924, -15760382, 17473538, 8375186, -6011344, -21994528,
--1627793, -9035001, 33062122, -18128520, -459562, 99321, -3313567, 15008226, -9548786, -1203128,
-6858526, -4481262, -32321240, 16525424, -14760729, -17013440, -3954591, -18147848, -10601053, -33013266,
-31609886, 1512902, -21113522, -38689064, 22524420, -22793928, -22360674, 368830, -17428978, 7912404,
-14261976, 44146896, -12585328, 17333414, -3768834, -21234318, -18170932, -5209259, 66242356, -58402964,
--4349192, 60978872, -55790016, -21049098, 31304942, -4540854, -25259240, 58982248, -29237452, -12015171,
-26944478, 6804839, 11442330, -17352742, 19422916, 27567784, 12764643, -6913824, -1916629, 27846958,
--4155918, 15982647, -495532, 11192685, -16003585, -1948841, 7187628, 4585952, 2929705, 862215,
-994822, 11668889, -5438503, 3112241, 4135517, 4038880, -25070260, -10124312, 7834557, -20970714,
-6200859, 12193949, -9082245, -9264244, -7429220, 5200132, -10385231, 12236362, 10074383, -1177358,
-5761162, -7344931, -15200963, -14472966, 28927142, 5418101, 17971216, 3912715, 3396246, 11696807,
--10124312, -2157684, 18261128, -10781442, -25393994, 19082540, -2749853, 11245835, -3125126, -7248831,
--7377143, 30946850, -40259412, 35478040, -6465000, -22613002, 18916646, 6415608, -3923453, 3686693,
-2272575, -4658966, 6680285, -8061117, -10328859, -4901095, -14176076, -11882564, -26322244, -10304700,
-22008486, 20710870, -32642826, 10444287, 16807280, 14003204, -5893232, -32259500, -3226057, -16154983,
--37682968, 23185844, 59471876, -34701188, -4060355, 42130944, -12411919, -15529528, 34176664, 25256018,
-12305081, -14301167, -28155122, 8904004, -11673184, -17956184, 62213140, 45656576, -38080252, -28167470,
-33443836, -62001076, -22024056, -17833778, -10975252, 42698956, 28302760, 18456548, 20345796, -72784128,
--25606058, 68602440, 39628052, 7792145, -18756660, 23379654, -24637544, -49582176, -33136746, 23603530,
--18291728, -4254165, 27514634, 51201380, -6561637, -29462938, 3385508, 20002200, -35525820, -13430900,
-36294084, 32564442, 32683628, 22536230, -6933688, -21336860, -10739566, 27611272, 7744900, 11382737,
--5738077, 2751464, 12404939, 724776, -5434744, -6365142, -8362302, 5834176, 4160750, 26458072,
-7176891, -5716602, -11064373, 2246268, 983011, -4354023, -9761387, 2259690, 20423644, -22497576,
--6979322, 19568944, -4931160, -932008, 12906377, -5494337, 9452149, 3733937, 11164231, -22752590,
--3575024, 4276177, 25067040, 5732171, 11827803, 10197326, 5498095, -5313949, 8021925, 11610907,
--13967234, 6276021, -61499636, 26322780, 105764, -6488622, 31217970, -5553393, -23900420, 11709691,
-10685879, 30495342, 17223892, -16831976, 716723, 4523675, 20870856, 4650913, -24391656, -1165010,
--1551557, 4705137, -22694608, -24813100, 35451196, -13075491, -37393060, 18909668, 32902670, -18847390,
--6476274, 1916629, 22514756, -27296128, -35650912, 9483288, 29848412, -6767258, -12921409, -7684234,
--7443179, 12771622, 5429376, 7515119, 75459888, 3891240, -9783399, 741419, 2254321, 40529996,
-1175210, -14810658, 9084930, -32218160, -18852758, 7966628, 56371, 34770980, 27752468, -18347564,
--5375689, -17368310, 716186, 12250320, 3103114, 3568581, 12499965, -9378061, -37241124, 9113921,
-25006374, -12210592, 22063784, -34765076, 16130823, 10011032, -30222074, 4791573, 540629, -13533442,
-1327682, -6012418, 14949171, 14239427, -25313464, -15983721, 33683280, -26145076, 12370043, -2825552,
--9917079, 6976638, -1024350, -15575162, 8609799, 4788352, 6165426, -921271, -2574296, 1221381,
-4677757, -6235756, -5466420, 4111358, 3304977, -3673808, -252329, 6969122, 12585865, -7933879,
--5038534, 1094680, -2201171, 3877282, -3059627, -2216203, 2967823, -689879, 7610682, -2936147,
-3798362, -10331007, 6020471, -7390565, 6367289, 10451803, -881005, -393526, 1643899, -13316546,
-10450729, 21100100, -39589936, -130214280, -154093232, -13858249, -106873816, 41982232, 260532176, 140152832,
-211603376, 223013488, -24254218, -64273648, 19048716, -162438880, -198572448, -61350924, -218593968, -175475184,
-44484588, -126225328, -34413424, 251605088, 91071560, 177882512, 307292576, 182902800, 81787448, 62261456,
-21759914, -136901008, -170455440, -56240448, -232802800, -232939696, 30671436, -174201184, -142995568, 85938536,
--146616768, -150730272, 113749528, 46227268, -20840256, 268606176, 251486448, 160610832, 340967264, 321362336,
-109740176, 127911640, 99643240, -161809136, -162257424, -205122800, -406199232, -479413376, -344867072, -343273120,
--253272608, 8677445, 23332946, 167186432, 289026080, 356322304, 324591072, 376766880, 322743168, 190393760,
-127935264, 42631308, -63723356, -143001472, -203539568, -174811616, -253581856, -283915584, -235557488, -275279488,
--206656112, 32745904, 66126392, 160399312, 321615200, 256187280, 197332816, 149243664, 58674084, -48759152,
--39924944, -80635864, -101040720, -77058696, -87799872, -84696752, -36244156, -34275988, 1788317, 52346524,
-37096168, 73486888, 88126288, 15408732, 63887640, 61531848, -17208860, 20471962, 14237817, -46772732,
-1871532, 15173583, -54303420, -59117004, -82729664, -169825696, -190070560, -147715744, -141366160, -46255188,
-69153808, 124996968, 203141216, 306776640, 330991104, 307147616, 214999088, 65689376, -69609072, -148442128,
--221878544, -273578688, -269337952, -210184432, -144614768, -68605664, -21357798, 8660265, 24625194, 62510564,
-102779640, 106274672, 98368712, 101282848, 71738304, 64864208, 55816320, 22701050, 4789426, 14002130,
-11826192, 7431367, 4471061, -12984760, -34911104, -52956948, -76360760, -96848832, -97089344, -78134584,
--60030220, -31525060, 5239860, 32794760, 47868484, 55713780, 49017388, 43458088, 47481400, 46005004,
-36797132, 31502512, 26009786, 17885318, 9236864, 511101, -17603998, -32460290, -35913980, -33692944,
--30681636, -28620052, -26534844, -19709068, -7157026, 732292, -2668249, -8731132, -4916127, 675921,
-3926674, 7726110, 8959302, 12268574, 19513648, 26594974, 26102664, 26889716, 23726474, 15349139,
-9273908, 5373541, -2098629, -8809515, -13642964, -24398098, -33830920, -37126236, -38620884, -33381022,
--21327734, -5653251, 11912629, 27623082, 35036196, 34208876, 26719528, 17685602, 8708583, 462246,
--4380867, -6918656, -7317551, -6398965, -6178848, -6049462, -5478768, -4278325, -3321084, -1988570,
--689342, 200790, 984084, 1385127, 1319092, 1007170, 503585, 139050, -35433, -62814,
--51540, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--8851391,
--10554345, 5538361, 401043, 8317741, 3059627, 3714610, 2408940, 3423089, -24696, -33286,
--1786706, -5329518, -3050501, 1511829, -200790, -922881, -573915, 2948495, 2304250, 105764,
-2659659, -2349884, -6079526, 2031520, -1364189, 761820, -3068754, 2532420, -2500745, -1211718,
--950262, 4478577, -975494, 21475, -1776506, -435939, -4912906, 1746441, -780073, 2756832,
--2304250, 386010, -1056562, -3927211, 1328219, -330712, -1019518, 1844152, 3344706, -615254,
--1953673, -5776731, 592169, -3408594, 1672353, 121870, -2190970, -27380, -906238, -753230,
--4154307, 2789045, -3677029, 2127083, -1410360, -2433099, -2063732, -4427575, 2534568, 290447,
-1293322, 2761127, -2818036, -4543539, 3011846, -4352413, 205622, -2881386, 1001801, -2217277,
-2066416, -1093069, 1122060, -1906429, 419833, -854699, 1244467, -885300, -970663, -947577,
--883690, -1706713, 321049, 487479, -241055, -1334124, 1027034, -995359, 213675, -648540,
--1133871, -391916, -362388, -142808, -197032, -126165, -923418, -486942, 219580, -545461,
--248034, -270583, -630286, -165356, -452582, -601832, -505732, -15754477, -202937, -2121177,
-4103305, 43487, 1560684, -1335198, 2027225, 365072, 1771137, -1854889, 10121627, -2243584,
--1453846, -4394289, 1435056, -5298379, -1712618, 356482, -2580202, -73014, 3702262, 2094870,
-1394791, 2470143, 3597572, -4442607, -1699733, -125091, 2281702, -4195110, 4035122, -3517578,
--1769527, 3204046, -629750, 708670, -2594697, 2956011, 3124589, 3323768, -5180805, -1620276,
-5576478, -117038, -851477, -1295470, 6082211, 3928285, 4704063, 41339, -1109175, -1452773,
--340913, -171262, 686658, 1777580, -5892159, -577136, -2746095, -3525631, -459025, 956704,
--3057480, 769336, -2336999, -903017, -945430, -119722, 2037962, 1838783, -1066763, -746787,
--1334661, -4827543, -1131187, -3012383, 79457, -3958349, 1060320, 12885, 3950296, -1414118,
-543313, -3475166, 299037, 430034, -1596117, -1693828, 1678259, 3758, 447213, -210990,
-1178432, -360240, 490163, -250719, -270583, 1376537, 656593, 545461, 221728, -209917,
-850940, 5290326, 6274947, -4456566, 513249, -3809099, 5745056, 1009854, -2451353, -3454228,
--3061238, -685584, 680752, 1481227, 7661148, -4646081, -784905, -1880122, 2968359, -8675297,
--1064615, 5436355, -207769, 4558571, 1985886, 3644280, 3797825, 1616518, -810138, -4105989,
-1278290, -1192390, 456877, 6365679, 1562831, 5452998, -2954938, -1568737, 363462, -7479686,
-811212, 5480915, -1686848, 454730, -4694400, 3439195, -135291, 1492501, -5545340, 3166465,
--3743601, -2119566, -3907883, -4587562, 2549600, 820876, -1523640, -2380486, -2247879, -1676111,
--1152662, 2495913, -2595234, -4661114, -7136625, 6484864, 4970351, 205622, -7139310, 2085744,
--3453154, 2723546, -2350958, 440771, -4395899, -2800319, -5709086, -2623688, -845035, 5453535,
-3235721, -6229313, 2618856, 69793, -588947, 2627983, -418222, 2072322, 4333085, 161598,
-872952, 2839510, 549756, 512712, 2823941, -574452, -126702, 151398, 324270, 541703,
-664646, -710817, 784368, -671089, 162672, 72478, 688805, 99321, 1771137, 1518271,
-66035, -159988, 1736777, 838592, -1388348, 181999, 596464, 26716844, -9944460, 11959873,
--9532143, 799401, 2826089, 2793339, -7872138, -2685428, -2655364, -13170517, -89121, 677531,
--4757213, -785442, -74625, 9385577, 1720671, -6578280, 4772246, 5210332, 1149441, 9514963,
--7107097, -2612951, -3806952, 1994476, 7618735, -572841, 463320, 2822331, -1384053, 3394098,
-1523103, 8706972, -1335198, 3401614, -5734318, 5196911, -4021163, 5804649, -122943, -6107444,
--933082, 8778376, -407485, 5933498, 3554086, 5705864, 491237, -4548371, -3703873, 76773,
--2757906, 4681515, 3097745, -4668630, 623844, -3651259, 6185827, -1704565, 4959077, 5925445,
-1023276, 6109054, -299574, -2986613, -1027034, -3801046, 156766, 8033737, -5063767, -5183489,
--1970316, 2269890, -3553012, -2206003, 1544041, 3852586, -1620813, 1406602, -7820599, 1908039,
-492848, -571768, 2720325, 160524, 722628, 1844689, -250719, -1022739, 828392, -1810329,
-551903, -761283, 214212, 329102, -289373, -637803, -1572495, -134755, -1254131, -786516,
--535797, -2610266, -22202296, 2502355, -6493991, -4623533, -7129109, -8650601, 3498788, 7860864,
--1115618, 3097745, 1293322, 4070019, 965831, 361314, 2472828, -4702989, 11118597, -506269,
--6385006, 7329899, -2165737, 3151969, -7206419, -4446902, -5091684, 2298344, 1402844, 5752572,
-222265, -3457986, 642635, -3079492, -3417720, -3771518, -1289564, -5278515, -2667175, 5060545,
--4598300, -255014, -3588982, -5605469, -2488934, 785442, 1860795, 3679176, -2820183, -2547989,
-3601867, 696858, 1378685, 1020592, 2242510, 3418257, -5400922, -1745904, -518617, -7545721,
-2051921, -462783, 4493073, -4393752, -3382824, -4102231, 747861, 4799626, 3684545, 8410620,
-5620502, -5080410, 2117419, -2262911, 3968013, 2542084, -5550709, 4088809, 1101122, -6111202,
-816044, -1054951, 548145, -1088774, -4207458, 845035, -3015604, -3115462, 1182190, -1682017,
-745714, 2338073, -1508607, -1955284, -2097018, -3078955, -578747, 2499134, -637803, 2596845,
-25770, 1777043, 1163399, 958315, -1126355, -373125, 433255, -1028645, -1228361, 358630,
--1188095, -387084, 317828, -2144263, 1236951, -1064078, -392990, 324807, -88047, 246424,
-704375, -916976, 622770, 1555852, -28246926, 7887171, -8353175, -6940131, -4966056, 1060857,
--1374390, 16805670, 1744831, 4102768, -1762010, 171799, -6761353, 6921340, 2087891, -883690,
-1466195, 9004399, -4358318, -1429150, 2149631, 726386, 4561256, -3776887, -1653026, 5018133,
-1896765, 4631586, 634581, -4687420, -3049427, 2816425, -375273, -1518808, -2905009, -1619203,
--106837, 8541616, 2218888, -1414118, 266288, 734439, -2469606, 6185290, 4737349, -1336272,
--6293738, 1708860, -3292093, 5891085, 4575214, -4392678, 1843078, -5720360, -5113159, -4459787,
--5652177, -1872606, 1348620, -3340411, 367220, -3700651, -3147137, 6765111, 4314295, -5531918,
--7536057, 963683, 6566468, -4899484, -3636227, 5588826, 4391067, 6359773, -3954591, -69793,
-1843615, 2685428, 7101729, 2005750, -844498, -163746, -5045513, -663036, -18790, -4287451,
-394600, -1187559, -1932735, 193274, -521302, 2274722, -448287, -737661, 1100585, -550293,
--1759863, -1095754, 454730, 1859184, -768262, -545998, 122407, -324270, 3360812, 703301,
-4336843, -2910377, 839129, 330176, -1712618, 67109, -81068, -2176475, 645856, -327491,
--2464774, -2238752, -1163399, -2135136, -1652489, 705448, -1057099, -14930917, -1480690, 2512556,
-7260106, -1416266, -3805341, 1700270, 10669236, -13439490, 3114925, -2729452, -2495376, -6051609,
-3635153, -10771241, -7010461, 3699578, -5630702, 3402688, 15341623, -2718178, 6200859, -7218230,
-7408819, -1928977, 2209761, -6475200, 3021510, 1833414, -3468186, 1520955, -699543, -3333432,
--221728, 4209068, 6605123, -5177046, -8248485, -6541772, -6054830, 779000, 4844186, 12824235,
--146029, 8633958, 9025337, -8402030, 6456947, -12355010, -4513474, 774705, -5491116, -5126581,
-3426847, -11966316, -2361158, 8311836, -3587372, -3138011, 1101122, -3663070, 3403762, -3635153,
-5837935, 7526930, -2085744, 2331094, 316217, -7646116, 659814, -4953708, -3402688, -6045167,
-3433826, 2609193, -5789616, 453656, 4320737, 3995930, 5117991, 5253282, -802085, -5031554,
-4159139, 2153926, 2493229, 1336272, 3009698, -363462, -92879, 416612, 1241782, 1431298,
--2046552, -657667, -1649804, -1128503, 2418604, 2042794, 2334852, -4256850, 871878, -559956,
--1735167, -2075543, 2188286, -1381906, -2302103, 549756, 555125, -798864, 5150740, 1667521,
--1001264, -1178969, -2381023, -703838, 2110440, 3157338, 812823, -38655, 3230889, 35344896,
--1748052, -14031121, -1790465, -651761, 1304060, 4420058, 1782411, -1658931, -1488206, -7084012,
--3372623, 3913252, 8611409, -7121056, -4489852, 5735929, 437013, -2113124, 2281165, -599685,
--8231842, -8386461, 11337103, -1093606, -751619, -1932735, 5811091, -485868, 590021, 3684008,
--6251862, 6573985, 2724083, 1045288, 2499671, 6571837, -15902116, -7139310, -3884261, 14603963,
-1868848, 1066226, -4526359, -4994510, 4361540, -688269, 5060545, -1836099, -10166724, 1060857,
-1223529, -1564442, 4915590, 2187749, 1308891, 8086350, 19760070, -1591285, -1686312, 7505456,
-2274185, -2361695, 5159867, 15363635, -1741609, 2920041, 5558762, 4454418, 3990562, 4065724,
-4560182, 3500935, -4080756, 6117107, 10963978, -2561411, 4196183, 37044, -1395328, -7619272,
-4724464, 1770600, -631360, 2277943, 2621541, 606127, 292595, -2582349, -2957085, -1182190,
--5878200, -2628520, -3987340, 5076115, 2486249, 1916629, -838592, -788663, 288837, -3393561,
--3758, 1219234, -4669703, 4064650, -2041183, 706522, -1435593, 202937, 1537061, 1837709,
--3640522, -3611531, -3001645, 385473, -629213, -1015760, -286152, 2499671, -674847, 244276,
--1501091, -3212099, -1750199, -105764, 7136625, 7946763, -10135049, -2946885, -8603356, 8507793,
-15950972, -7649874, -1795833, -8776229, -3812320, -10618233, 7560753, -6487548, -2633889, -700080,
-75699, -4236449, -5195300, 9507984, -8641474, -3210488, 991601, 6481106, 6943352, -9982041,
--2923799, 3812320, -8563628, 4848481, -6791417, -2790655, 2513093, 179315, -3710852, -1056562,
-2058363, 11110007, 1387274, 2491081, 14496, -9542344, 10412611, -5126581, -7785702, 6215892,
--5545340, -6316287, 8213051, -3735011, 1065689, -1840930, 1118839, 10746008, -1825361, 2385854,
--9402220, -770410, 10988137, 2421825, 10887742, 9271224, -3040837, -2414845, -12617540, 1907502,
--2101313, 8345659, 10293426, -5939403, 2582886, -18605798, -5052492, 6114423, -6389301, 9584220,
-674310, 2039036, -3379603, -760746, -4424890, 746251, -3040300, 6751689, 6713034, -347892,
-2308008, -148176, 3809099, 1584306, 2769180, 5694590, -1694902, -6508486, 3000572, 1421097,
-4130148, -1117228, 4380330, -939524, -1471563, 1042066, -2575370, -1790465, 483184, -4596152,
-1308354, -1636383, 4066797, 1683090, -255014, -914828, -2613488, -4086125, -279173, 485868,
-1679332, -1540283, 946503, -3850438, -5369, 163746, -1953673, 2475512, 303869, -6442,
-1129040, -1306744, 248034, -44560, 6364605, -8176007, 2750927, -7647726, -865973, -10317585,
-16855062, -5007932, 1114007, -5368709, -15441481, 8846559, 3076270, -11533061, 7084549, -5214627,
--3847754, 3987340, 15953656, -8014409, 15410880, -338229, -10888816, 422517, 3575560, -9584756,
-10510859, -5564130, 7774428, 16938278, 1627793, -7959648, -2250563, -935766, 3859028, -6773701,
--3713536, -940598, 8333847, -3016141, -3390340, -11138998, -407485, -13163538, -2451353, 14855755,
--3368865, 8448201, 775778, 2234457, -19534586, 242666, -12509092, 10030896, 17453136, 5369783,
-4366908, 1063541, 2595234, -10215580, 3569655, 5426691, -4563940, -1290101, -4047470, -2582349,
-7858180, 162672, 9536438, 29268592, 10677826, 2908230, -10075993, -9362492, -6076305, 5741835,
--9976135, -877784, -923418, 2026688, 5619965, -5475010, -1044751, 5434744, 5965710, 1221381,
-1007170, 4057134, 5136781, 4290136, -60130, -961536, -977105, 446140, -2137283, -2662880,
-2323577, -1349694, 3617973, -4444755, -1412507, 3063386, 2602213, -269509, 2351495, -2290291,
-1069984, 1610613, 2184528, -2513093, -2470680, 3470334, 2480344, 1946694, -898722, -1753420,
-841814, -4946729, -1297617, 790274, -2632815, 1200980, -1825898, -1287953, 563714, 399432,
--412317, -981937, -3278671, 30987116, -16178068, -63888, -7841537, -15140297, -20332912, 6126234,
--6255620, 6463389, -19224810, 4228932, 7377680, 6669011, -7854422, -17626546, -13795435, -11531450,
-527744, -6556268, -12763569, -8677981, -4226248, -10367514, -7116224, 2136746, 13914620, -20401,
-2291902, -156766, -11567958, 7662759, -731218, 2469069, -2309619, -7576859, 7063074, -9528922,
--13405130, 12619688, -13069585, 2945811, 221728, -18513456, -10889353, 7634305, 4832, 9320616,
--5667210, -19690814, 258772, 963683, 7789460, 8224863, 18997178, -10550050, -38102804, -13186623,
--12773770, 8858907, -24707874, -8221105, -3839701, -22707492, -7313793, -147640, -4033511, -4065724,
-5350456, -5952288, -206695, -5570573, 5735929, -13262859, 5208722, 11083700, -13323525, -6637335,
-7073811, 5525476, 4886062, -13758928, 3670050, 399432, -1632088, 7654706, -1522029, 6335614,
-5740224, -978716, 2025077, 1407676, -1340030, -4425964, 7993471, -2276333, -5026723, 398358,
-136902, 4323422, 1802276, 244813, 1627793, -3802657, -3770981, 695785, 1800128, 2684892,
-4735202, -278636, 2358474, -200790, 2127620, -4464082, -1682554, -3024194, -2639794, -257698,
--279710, 1966021, -4967130, -2179696, -3624416, -2587718, -5216775, -6614250, -5729487, -409633,
--182536, 992674, -3376918, -4562866, -17725330, 7021198, 8766028, -2913062, -3416110, -8823473,
--9756555, 22551800, 8203925, -21007222, 7272990, -11430519, -1100585, -10378788, -21616034, 6382322,
--11272679, -4671851, 878858, 678068, -5518496, -18226230, -11352135, 9020505, -11228118, -250719,
--9938017, -15146739, -5950677, 16956530, 2676302, 3079492, -14760192, -4860829, -3052648, -1838246,
-5945846, 7489349, 9500468, 11902965, -5811628, 6752763, 2280628, -6723235, 4139275, -11361799,
--10042707, -8526584, 3668976, -9862319, 423054, -14882599, -13217762, -6655589, 15489800, 12276627,
-11752641, 13172665, -12070469, 16476568, 474594, 7670275, 22391812, -4468377, -4206921, 3811784,
--10888279, 4617627, -5155035, -13805099, 1747515, 11579232, -13571023, -9450539, -1730335, 12438225,
--10334765, 1348083, 3699578, 7554311, 1767379, -2871186, -7078643, 2061584, 5140539, -2687576,
-578210, -3428995, 1068910, -3248069, 1284732, 414464, 1838246, -1113470, 1239098, 2674691,
-6236830, -616328, -239981, 710280, 2846490, -4512400, -2066416, -4985920, -1560684, -969052,
--6047851, 1313723, 5261872, -289910, -7188702, -1007170, -766115, -5951751, -7047505, -9907416,
--4320200, 4067871, 495532, 2936684, -1669132, -1616518, -3772592, -329102, -9029095, -1414118,
-5171141, 8666707, -588947, 2752000, -5199595, 851477, -3163780, 4544613, 1742683, -8490613,
--19796042, 22637162, -17690970, 23441394, 13120588, 8924942, 5017596, 9206799, 10005126, 9244917,
-25197500, -8828842, 1775969, -1692217, -4349192, -774168, 3123515, -2350421, 4847408, -1644973,
-7881265, 6601365, -1419487, -4376035, -25116432, -8959839, -18218178, -853625, 9605157, 9677098,
-3082713, 4923643, 7241852, 5969468, 7019587, 17974438, 26831198, 17985712, 3631395, -3428458,
--5182415, -7719667, 9388799, 9543954, 10721849, -7990787, -6281927, -9907416, -1632625, 13056164,
-128312, 15648713, -9498857, 8373039, 5057861, 14041322, -29389924, -21069498, -8617852, -11834246,
--12081743, 3606699, -4930086, 18479634, 5494874, -20646982, -1697049, 33356326, -11248519, 10388452,
--5039608, 13696114, -6385543, -4194036, 497142, -5689221, -7441568, -557809, 5616744, 8235600,
-5763846, -2190433, 6499896, -1750736, 3011846, -8527121, -5779416, 5425618, 3474629, -8574365,
--3716221, -3654480, -1135482, 2100239, -2238752, -4218195, 1944010, 353261, 1414118, -700617,
--2402497, 3767760, 1254667, -2181844, 5040144, -733366, 1494649, -967978, 5943161, -5066988,
-5295695, 2283849, -4940286, 3244311, 195958, 841814, -5150203, -15129022, 5679021, 94489,
-1114007, -1767379, 5774047, -1433445, -2670396, 1802276, 4516695, 3689377, -2206003, 4583267,
--14397804, -7163469, 12100533, 5334887, 8950175, 23195508, 2066953, 15526844, 22664542, 15760919,
--10125385, -22877680, -682363, -10460930, 24850144, 7205345, 19435264, -2689187, -10276246, -3748433,
--11221139, 4535486, -8612483, 1117765, -9603010, 5112622, -6990596, -2918967, -15476915, -15371688,
--1435593, -22049288, 12202539, 8396661, -6518687, 11373610, -5291400, 4452808, 12699681, -13929653,
--18221936, 3302293, -3903589, 30798674, 13167296, -33716568, -9012989, -9547175, -17313550, -18403398,
--37602440, 6674379, -13408351, -3513820, 5508296, 1392106, 7866770, -1479079, -4357245, -28563144,
-3504693, -12981002, 3618510, 16764868, 3636227, 11242077, -16916266, -22598508, 4679904, 14013941,
-9547712, 5262409, 9078487, 14565308, 18341120, 18737332, -16543140, -10035728, -11883101, -8592619,
--13890461, 19761144, 11712376, 11135776, 3175055, 8511551, 7429757, -711354, 10463614, -15946140,
--5472325, -1920924, 1443109, -3469260, -11157788, 621160, -2145336, 1444183, 3812320, 11521250,
-789200, 5373541, 5567352, 832687, 5904507, 155156, -3324305, 667331, -8503498, -3562675,
-4794794, 6617471, 2220498, 1173063, -10422812, -1077500, 554588, -5151277, -3346317, 1515587,
-3590593, -9793062, -10572599, -4975183, 3853660, 3058017, 5704791, 1243930, -3221762, 2338073,
--10923176, -9995463, 40831180, 26975616, 37464464, 2448668, -7403987, -25419764, -7485591, 4275640,
-5922760, -6045167, -19641960, -7086696, 32370094, 13397077, -4457639, 9928354, -713501, -11866995,
--3455838, -7736847, 22074522, -1675574, 1309965, 9540733, 641024, 10824391, -97711, 15314243,
--14059039, 17642652, 3582540, -8186208, -4952098, -9069897, 15922518, -22022444, -23791434, 15075872,
-24908126, 1189706, 17197586, 23656680, -26601416, 8879845, 5449240, -1439351, -231928, 3973919,
--9979357, 18579492, -11252277, -8928700, 7505992, 967978, -2003602, -4293357, -5539971, 2699924,
--17570712, -5241471, 14164265, -17317846, -3988414, -11689827, 445603, 35116728, -11018739, 2280091,
-9395241, 197569, -8075076, -21896280, 21422224, 10016401, -44146896, 10966125, 11115912, 8240969,
--9896678, -4586488, 22557168, 1037772, 1665374, 5808407, -15684147, 625992, 9985262, -4052302,
-5771363, -1228898, -5095979, -13053479, 1996086, -1694365, 12125230, -1104344, -513785, -8684961,
-9606231, -3206730, -3337190, -13778255, -6937446, 4878009, -8886287, 760209, -4379793, 5546951,
--5203353, -11078868, 5609764, -11936251, -3280281, -5411122, 558346, 754304, -4491999, 11949136,
--1476932, 16103443, 9805410, -1590212, 1686312, 10313827, -7134478, 1870458, 1219234, 9900973,
--8942122, -5270462, 454193, -18234284, -43700756, 38878044, 23174570, 12326556, 8668318, 19206556,
--44100188, 18107582, 20364588, 8722542, -28232430, 15710453, 28540594, 13230110, 31470836, 11481521,
-537945, -1247151, -987306, -5358509, 13334800, 22362284, 21296058, 7446937, -6544457, -11105175,
-2654827, -10110353, -11840688, 12458090, 8564165, 2374043, -11866995, -11543261, -2538326, -10035191,
-5118528, 25701084, -4570919, -8307004, 8672076, 4659503, 7612293, 8977019, -1968169, -5184563,
-20645908, 13663365, 6748468, 9113921, -1666447, -20517596, 4757750, 13662828, 1768453, -15270756,
-20434380, 5331128, 28425704, 1057099, 25553444, 2734284, -8378408, -2719251, 6127845, 36381056,
--4597763, 13078175, 8963060, 17190606, 9003325, 81068, -1105954, 11215770, 51760800, 2423435,
-20765630, -17547088, -13107703, 6577743, 8137890, 10091563, 4148402, 1658394, -25440702, -10061498,
--26676042, 1458141, -4582730, -8808441, -7460895, -2962991, -11255499, 1416802, -1169305, -11829951,
-8459475, -13778255, -6696391, -12439836, -8509941, -814970, 1367410, -9949829, -11552925, 2781528,
-7340636, 8579197, -1747515, -3278671, -14862734, -19422916, 1940252, 2381559, -8857296, 17685064,
-17107392, 25323128, 8878771, -5564667, 3457986, 7827578, 9582072, 11511586, 1696512, -11989938,
-3025268, 15389405, 7876970, 803159, 6154152, -28472948, 31227096, -463856, 27638652, 695248,
-1881196, -25073482, -7707856, -11271605, 19173808, 4896263, 8500277, 5087926, -19262928, 1930588,
-1547262, -16893180, -24217710, -24720222, 8383240, -9171366, 22544284, 1327682, -7152731, -5819681,
-4860293, -8694624, 1451699, 6645388, -9490267, 5365488, 7592429, 2630668, 2163053, 17093970,
-28659244, -5572720, -242666, 14450954, 11777337, 17301738, -12822088, -4968204, 5173825, -17104170,
-1645509, 1546188, -22816476, 29427506, -1477469, 14884209, 12753905, 9040369, -17379048, 1711545,
-14761803, -11978664, 26307748, 7319161, -9698573, 21882322, 16371878, 11553999, -36772436, -7386807,
-7231651, -12438225, 1893544, -20371030, -5212480, -30919470, -8969502, -4636417, -8667781, -34267396,
--3556770, -9270687, 51552492, -7318088, 10405632, -5181878, 8144869, -4206921, -8559333, 5718749,
--7202660, -950798, -3940096, 14025216, 4845260, 6253473, -22457310, -19800336, -15059229, -6045704,
-3796751, -27885076, -4674535, -2085744, 1939178, 10446971, 7606924, -656056, 10713259, -9630927,
-48855, 787053, -16335371, -22109954, 4217658, -6318971, -20890720, -5463199, -9945534, 1633698,
--22334366, -2297271, -9870909, 13301514, 2684, -9205189, -3663070, 4319664, 4941360, -1860795,
-9756018, -9842454, -6520297, 13214541, 12097312, 21910238, -7486128, -1610076, -3106872, 5869610,
-15591268, 13636521, 10031433, -8127689, 6086506, 17149804, 16530255, 7013682, -21041582, -24319716,
-10110890, -3746285, 7178501, -4850092, 19757924, -15559593, -3604551, -5663988, 17169668, -13717052,
-30464204, 37598680, 38320772, 1945620, -7682086, 5858873, -5528160, 9055939, -2142115, -651761,
--11860015, -31580894, -10865730, -30261266, 16608102, 15666430, -18877456, -14186277, -18925774, -9038222,
--3161633, 40247600, -24696, -21168284, -22797686, -1762547, 27930172, 13174275, -57512832, -12042551,
--10590852, 7088307, 20910586, -25163676, -8359080, -15147813, 5956583, -34185256, 16281147, -6035503,
--1286343, 8977555, 868657, -16940962, 32821066, -3735548, 15339476, 35310536, 72653664, 43499428,
--1599339, 24269250, 36791764, 47617764, 51496120, 14506252, 31336618, 8739722, -123480, 19191524,
--15934329, 31728534, 13222594, -14324253, -48399988, -35185444, 3999152, -13972065, -10360535, -9190693,
--5850819, -6228240, -20263118, -13251048, 184147, -3389266, -1632625, -6540162, -2301029, -10602127,
-12202002, -21602074, -9263708, 5848135, 3362960, 1606855, -6054294, -6962142, -4320200, 3988414,
--3955665, 10673531, -13452911, -16465294, -16769700, -10277857, 11770358, 13553843, -5756867, -2692945,
-4467303, -2918967, 22377854, 4707284, 1442572, 18121540, 10945187, 10257456, 25479894, 16876000,
-19022410, 5864778, 8859444, 21271900, 7709467, 16466905, -15955804, 8644695, -7516730, -16585553,
-18587008, -23964306, 39470212, -4922570, -7555921, 506806, 31369368, -21355652, -4009352, -1140314,
-146029, 11268384, -8477729, 16349867, 5455682, -3319473, 3546032, 1701344, 12703976, -40009232,
--12865575, -1409286, 3897146, -4125316, -29337310, 23627688, -1649804, 3076807, 8286066, -19106698,
--8973260, -44097504, 11285563, -10462540, 8058433, 31906776, -9168145, 6561637, -4510790, 15132244,
--26613764, -35249332, 30348776, -3043521, 2244121, 5053566, 30515206, 22383222, 26424250, -610959,
--36342404, 21170430, 9583146, -8630200, -13141526, 20238422, -4168803, 25630218, 42174432, 33003066,
-5191005, 2764348, 30982820, -6324340, 9190693, 25756918, -18090402, 29804926, 17832168, 10561325,
--21634288, -10546292, -28712930, -914291, 9183714, 41925860, 17190606, -39087960, -4115653, 25159382,
--4223027, 12219182, 16372415, -27721866, -7379828, 13463649, 2708514, 7513509, -12641699, 8947491,
-14660871, 1956358, -354335, 22276384, 3668439, -4813048, -6382859, 7399692, -2573222, 11986180,
-1274532, 9081708, 9684078, -1540283, -11327439, 21976274, -3799972, -6694244, -2071785, -14852534,
--15652471, -9783936, -11057930, 7196755, 12304008, -12986907, -11892228, 2687039, 18811420, -28098750,
--7566122, 10990821, -4082903, 184147, -4590247, -2922725, -21026012, -146566, -6175089, 5763846,
-776315, 3535832, -564788, 1934346, -5052492, 8796093, 4145180, -2320893, -4952098, 3730716,
-435939, -1570884, -55158656, 12639552, -9129490, -2161979, 43073692, 18519362, -13506062, -10454487,
--163746, -27857694, -34135328, 2892124, 295279, -19200652, 20379620, 2477659, -19704236, 12459700,
-37047316, -4955856, -21351894, 13415330, -12576738, -13691282, 6908455, 30103426, -9805410, 4417911,
-8243116, -9269613, -22413286, -14687714, 29705604, 10468446, -29310468, 25075630, 9816685, -20065014,
--10509785, 41286984, -13441100, -31661426, -16293495, 54871964, -54175644, -25087440, 32115618, -14530411,
--17437568, -51592220, 40235792, -33029910, 11806865, 1729798, -6222871, -58262840, -17252346, 49894636,
-31425738, -39412768, -10826539, -17059610, -8109435, 8099235, 10801843, 13001940, -68880536, 37674916,
-28840168, 30320858, 434865, 15881178, -33725156, -29931090, 58885612, 24196236, 6488085, 23746874,
--31758598, 6405944, -14076218, 15180025, -8610873, 41369124, -16902844, -14350559, 5687611, 5016522,
--15691126, 9443022, 4494147, 3548180, -3003256, 2123325, 3271691, 3395709, -3931506, -2207613,
-8600135, 529355, -4655745, 18124226, 5267241, -16052977, 1704028, 15552077, 3975529, -15266998,
-20450486, 36885716, -18192944, -21095806, -5812702, -4731980, 12418898, 27033598, 8091719, -24953760,
--8416525, -3600793, 3626026, 7633231, -4306779, 11079405, -8083666, -921271, 6349573, -10664404,
--45574972, 7809325, 56734372, 17680232, 6018860, 1475858, 4187593, 24285356, 33273648, -7709467,
-6147709, 8546985, -5828808, 20039780, -10695005, -2929705, -8116415, 15377057, 11388643, -6395743,
-10462540, -15236933, -12443594, 15355045, -10019085, 16881906, -11404749, -5104032, -428960, 9191230,
--678605, 6818261, 2694555, 17195438, -12462921, -2554432, 201863, -6956237, 16579648, 14390288,
--12060268, -4325032, -7452305, 3753802, -15530065, 8240969, 4653060, 7558606, -6270116, -4758287,
-18884434, -22901302, -4054986, 9550397, -6300180, -4229469, 9825811, -28125594, 6662568, -10230075,
-1568200, -10018548, 24144696, -7973070, -10586021, 9882183, -5618354, -15974594, 30736934, -928250,
-3051038, -6969122, -11987791, -14073534, 15454366, -17556752, -8536784, 17718350, -24391120, -10650982,
-3027415, -2349884, 2876554, -453119, 3362423, 10743861, -3988951, 4169340, -5053566, 11279658,
-6118181, -549756, 864362, 6847252, -6170258, 4959614, 723702, 5462662, -2592550, 8527121,
--4470524, 2248952, -7567196, -6513855, -10302553, 1846836, 511638, 3360275, -5090610, 11368778,
--3856881, -2018098, 9716290, 8587787, 4551055, -4069482, -6655589, 5847598, 7738994, 4851166,
-3301756, -151934, 6992744, 7616588, 3318399, 6464463, 789737, -5091684, -300648, 14928233,
--42287176, -119658328, -98298920, 52078088, 14983530, 119087096, 212701280, 31659278, 67102960, 24467354,
--169536848, -53552336, -114994528, -138956688, 3964792, 22286048, -57943404, 84127672, 110051560, 61826056,
-175484848, 101261904, -22524956, -41554344, -81365472, -158361888, -125089848, -36792300, -111544056, -15458124,
-96311960, 16170552, 22443888, 145644496, 74282000, 46027552, 151780384, 23479512, -41867880, 59427852,
--79454208, -157319824, -65857416, -132712344, -166206112, -2324651, -34698504, -43645996, 110716200, 122110216,
-77644952, 184184848, 148529632, 70176544, 63369020, 36800892, -123001424, -113037096, -143292992, -189079488,
--151702544, -63895156, -43982076, 3999152, 108756088, 132379480, 138436464, 132839584, 122972432, 26353920,
-2264522, -20769388, -93776856, -102605160, -59391880, -107593224, -45352172, 9517648, -23533200, 54172960,
-97235376, 29862370, 41058276, 18399104, -26593364, -16446504, -40691056, -52773336, -6400575, 14998563,
-367757, 43750684, 40218072, 4694936, 38710004, 134218, -49121004, 43423192, 12976707, -43511240,
-30601642, -32198296, -65643744, 30071750, -46743740, -115453552, 1731946, -50758996, -33752000, 114666496,
-51730196, 54581520, 163784816, 108777024, 60182692, 71656160, -17970144, -103492072, -131838856, -178711440,
--197983504, -125429152, -80383000, -13737990, 75077640, 167717392, 184826944, 171645680, 178404352, 95595768,
-4105989, -45518600, -117962352, -150462368, -97784592, -108713672, -87010672, -17450988, 2742874, 11485279,
-42071888, 36158792, 31053150, 56232396, 55504936, 47275240, 55187644, 38605312, 12290049, -4423280,
--24950538, -54898808, -61031484, -51034948, -54644332, -40052716, -21967684, -3133179, 16164109, 40825812,
-44159780, 40898288, 37124088, 26186416, 9602473, 817654, -3697967, -15650324, -16220481, -9794136,
--12292733, -14273250, -10107132, -15697569, -14224932, 247497, 1376000, 110595, 5337571, 2545842,
-2959233, 12268574, 12438762, 13592498, 15623480, 8404177, 2361158, 529355, -4701916, -9816685,
--12713640, -14305999, -14755897, -10423349, -4828617, -312996, 3998615, 8468602, 8866960, 9455371,
-9275519, 5036386, 177704, -948651, -3879429, -4543539, -3332895, -1042603, 864362, 2592013,
-2745558, 2111513, 460098, -2187212, -4085588, -4489852, -4865124, -4706211, -3590056, -1403381,
-1792612, 3970697, 4594542, 5500780, 5881421, 4587562, 3154117, 1469416, -689879, -2100239,
--2970507, -3582540, -3296388, -2416993, -1619740, -624918, 387084, 992674, 1302449, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--10530723,
--12826383, 6532109, -2314451, 5718212, -2777770, -2840584, -5715528, 1399623, 1261647, -214748,
-134218, -602369, -4362613, -468688, -2477659, -2852932, -2704219, -62277, 370978, -176631,
--455803, 2226941, -566936, -6618545, 4184372, 2103460, -2230699, 708670, -25770, 114354,
-974421, 4326106, -2348273, 296353, -7511898, 3805878, 780610, 1742146, 2647311, 4283156,
--2333778, -1759863, -820876, -3753802, 340913, -528281, 3317862, -1721745, -188979, -1794223,
--2069637, 4039954, -2976949, -1413044, 410169, -2690260, 2317672, -57982, -1249836, 2515777,
-4568235, 328565, -142271, -592169, 3909494, -3808026, 67109, -557272, 2061047, -903554,
--1733019, 4261682, -42950, 935229, -1139777, 920734, 2298344, -1771674, -2511482, 175020,
-2244657, 3764539, -1644436, -1087701, 944893, 248034, 597537, -1658931, -521302, 1064615,
--201327, 762357, -1320703, -372052, -804770, -1115618, -815507, -734439, 617938, 153008,
--563714, 642098, 433792, -484794, -140660, -82678, -706522, -1264331, -345208, 49929,
-294742, 761820, -75162, 510564, 289373, -569083, 545998, -15329275, 2623151, 1826972,
-5393405, -2094870, 1645509, 6265821, -2405719, 1721745, -3777424, -5555540, 2054068, -3778498,
--4308389, -4329327, 1324461, 1665911, -7386270, 4362613, 2903935, -1250372, -2692408, 1741072,
--654446, -1677722, 555661, 2462627, 1835562, 3927748, 777389, -1186485, 4056597, -2023467,
-8824010, 1988570, 5445482, 2096481, 4780836, 2124398, 3302830, 1780264, 416075, 187368,
-6685654, 1134408, -1043677, 445066, 3543348, 2608656, 409633, -294742, -1342177, 745177,
-8153996, 2333241, 3784403, -3924526, -1991791, -4139275, -2588792, -4018479, 3049427, 1908039,
--2538326, -1829119, 1840930, -1915019, 2051384, -901406, -577136, -2780455, -4655745, 2018098,
--7581691, -1076426, -1592896, -1927904, 447213, -1778653, 390842, 2866891, 1423245, -1955284,
-389768, -1551557, -3280818, -539018, 1626719, -165356, -2523830, 928787, 506806, 969589,
-1791538, 65498, 284542, -1207960, -690416, -180926, 19327, 627602, -1345399, -1188632,
-129386, 8551280, 11814381, -3731253, 3114388, -5996848, -398358, 267899, 15119359, -1640141,
--4101157, -6637872, 69793, 4277788, 6910066, -1661616, -9260486, -2725157, -3582003, -2591476,
-3037079, -758062, 5757404, 566399, -3384971, -7508140, 2145336, -780610, 1643362, -980326,
-756988, 3553012, 1253057, -9424769, 1043140, 5923834, 2874407, 653909, 1357210, -1585917,
-4082367, -5607617, -620086, 4470524, -3223910, -84826, 7320235, -3504693, -431107, -2594160,
-4472135, -4874788, -3635690, 2130304, -5048197, -2534568, 6380711, 3713536, -5857262, -2216203,
--949725, -1519882, -2714956, 1988570, -2342368, 2293513, -153545, 267899, 959388, 4791573,
--637803, 6638409, 3393024, -5250598, -2462627, -2607045, 3956202, 1117228, -355409, -2161442,
-5325760, 1997160, -184147, -203474, -1435593, -1328219, 1522029, 536334, 1697049, 4133369,
-1449552, -314606, 192737, 253940, 1285269, -367220, 437550, 1930588, 354872, 2410014,
--537, 797253, 1194001, 1443646, 465467, 882616, 1026497, 827318, 1351304, -526134,
-358093, 897111, 1385127, -213138, -1202054, -1402307, 239444, 28406376, -10473815, 5777805,
--7996156, -813896, 296890, -563714, -4233227, 2346126, 3279745, 816044, -3076807, -6554657,
--235149, 4042101, 2865817, -2867965, -4942434, -374199, 4443144, 8123931, -4361540, -561567,
--3291556, -7062000, 799401, -3539053, 2157147, -2612414, 5519033, -9651328, 6539625, -400506,
--5759551, 1432909, 2428804, -652835, -3049964, 219043, 7572564, -255014, 1247151, -1039382,
-2898029, 1367410, -1788854, -2811593, -6226629, 4068945, -1305670, -1799054, 2390686, 75699,
--10467372, 8074539, -11266773, -6465537, -7981660, 1753957, -941672, 4816269, -2619393, 2578591,
--4809827, 2345589, -1264868, -1927367, -5306969, 3281355, 3719442, 6413460, -1561221, -572841,
-1716913, -1899986, -1156420, 1265942, 3673808, -4840428, 2399276, 3543885, 3881040, -6142877,
--5067525, 2158758, -3174518, 1653026, -69793, -329639, 526134, 819265, -281320, 1501628,
--1819992, 918586, -579284, 3658239, 194347, 929324, 792421, 275415, -1446330, -78920,
-330712, -390305, -22395034, 2284923, 238371, -1900523, -3453154, 3920232, -3036542, 2609193,
--802622, -37044, 3622805, 4715874, -2896956, 3474092, -1009854, -1912334, -6279779, -305480,
--8485782, -6229850, 7475928, 2669322, -2889439, -1054415, -871878, 5189394, 2741800, -2663417,
-4733591, 3149822, 1860258, 1640141, 2019172, 3605625, 3106872, 3063922, 8362302, 7523709,
-3256659, 838592, -5182952, 5786395, -7704635, 1531156, -2138357, 6267968, -4708358, -6133750,
-10566693, -2451353, -5641440, -5035849, 7868917, 4830228, 303332, 4046396, 5717139, 2623688,
-9236864, -542240, -1439351, 5240397, 3215857, 315143, 224412, -4789963, 2894808, 3000035,
-7461969, 3037616, 4653597, -2852932, -3806415, -8118562, -1848447, -4387846, -3476239, -3693672,
-4124779, -137976, 336081, -2372433, -2733210, -756988, -2401961, 759136, -1611687, -2685965,
-1125281, -257161, 121333, -2513093, -346819, 112743, -3153580, -426812, -734976, 220654,
--1404991, -1640141, -1000727, -602369, 78920, -520228, 525060, -732829, 909996, 223875,
-807454, 1752884, -376883, 1851131, 401043, 1220308, -819265, 388695, -1565516, -579284,
--242666, -1902134, -566936, -927713, -29732984, 8126615, -6255620, -9305584, -9199820, 5897527,
--6798397, 5223217, -8570070, 4900021, 4202089, 2627983, -9028021, 6380711, 5369, 3908420,
--7459822, 4335770, 9079561, 6966974, 364535, -3095061, 1377074, -1821066, -9546639, -1842541,
--4527433, 2326262, -5961415, 5334887, 5236102, -1908039, -108448, 7297150, -1458678, 4987531,
--3804804, -6146635, 3379066, 5369, 3492345, 8949638, 5493800, -215822, -15288473, -7271917,
--2022930, 2252174, -2253784, 8597988, -13267154, 4350265, 1932735, -21475, 4312147, -1620276,
-6616397, -13916768, -6432788, 5549635, -13984950, -2500745, 6696391, 2470143, -2999498, -9292162,
-3608310, 6182606, 4569309, -1566589, -9752797, -738198, 190052, -1007170, -411780, -4719632,
-2305324, -7617662, 4868883, 781147, -4471061, 1018981, -5401458, 530965, -6483253, -1735704,
-2428267, 2544231, 330176, -523986, -2159295, -1604707, 576063, -3767223, 3237332, 350040,
--1761474, 122407, -3232500, -2530273, 861141, -1267552, 1929514, -1653562, -869194, -1046361,
--1154809, -2156074, -267899, -1155346, -388695, 741419, -413927, -913217, 946503, -303869,
--760209, -787590, -1893007, -1300301, 381715, 1167694, -190589, -14039711, 1512365, 2335389,
-10994043, -10390600, 12006044, 3397319, -968515, -2828236, -1294396, 1105417, -8778376, -1690607,
-2815351, -2894808, -5150740, -1403381, 8307541, -8591008, -1863479, 8581882, 42413, -3420942,
-3035468, -4194573, 6329708, 2765422, -75699, 3147674, -3665755, -5796059, -407485, 424665,
-4738423, -10152766, -5458904, -4491462, -3124589, -3022046, -3064996, 1501091, 504122, 823023,
--7555921, -7787850, -6159520, 203474, -9708237, -5388037, 5826660, -3957276, 1293322, 597537,
--175557, 2405719, 3459596, 3265249, 3915400, 5709086, -1006096, 6177774, -389768, 3111704,
--511101, -4007741, -228707, -6448894, 3976603, -7544110, 7026567, -8415988, -120796, -8680666,
-828392, -8723079, -8355322, 3928821, 11522324, 3445638, -7418483, 5266704, 7516, -3313567,
--1952063, -3471407, 4588099, 3914863, 5640903, 981400, 4400194, -3743601, -390305, 4269198,
-515396, 1294396, 857920, -2128693, 2588792, -270046, 970126, 3777424, 1127966, -987843,
--2269890, -1086627, 1583232, 1518808, 1253594, 401579, -1766842, 97174, -368830, -4037269,
-3890704, 406948, 1428614, 140123, -940598, -1934883, 1374390, -1972464, -914828, 38830264,
-267899, -11457362, 1574642, -6314139, 15363098, -2752000, 4181688, 932545, 557809, -13882408,
--7204271, 7375533, 6470368, -10984916, -2086817, -537945, 9397388, 4504347, 3457449, 9190693,
-1287953, 403190, 7971996, -3069291, -12621298, 1622961, 9316321, 5410585, -3788698, -28454,
-6440304, 3823058, 1624571, -574452, -7162395, 3172907, -7773354, 532576, -14469208, 3521336,
-4212826, -1380832, -6758131, 8842264, 4583804, -2106145, 6868190, 3024194, -6129455, 10657961,
-991064, -4089346, 2345589, 10932302, 1556926, -519691, -9494562, -5665599, 1126355, 3550864,
-12543989, -4429722, -5221070, 867583, 6767258, -4723391, -5692979, -734439, 9071508, 6381785,
--2480344, -7339562, -546535, 7836168, -3388729, 16532940, 3482682, 2263985, -8758512, 7043747,
-270046, -2100239, -4533338, 183610, -2606508, 201863, 10206990, 4482335, 3613141, 1731946,
-1035624, -78383, -837519, 709207, 1925219, 3490198, 418222, 419833, 1216550, -3097208,
--97174, 974421, -797790, 2999498, -2466922, -325881, -1287953, 1020055, 5355288, 1621350,
--1876364, -676457, 1159641, 200790, 1687385, -624918, -2528125, 1927367, 1819456, -2133525,
--653909, 4585952, 1511829, 2222109, 8858370, 4729833, -13822279, -1390496, -6962679, 13990856,
--5179731, 6542309, 1298691, 8773008, 3500935, 1331977, -660351, 3583077, -3929895, -5891622,
--16353625, -12115029, 4076461, 10836739, 14566918, -5310190, -7021735, -6208912, 3301756, -3393561,
--673236, -564788, 2021856, 2229088, 9754408, -5141076, 981400, 2403034, 4803384, -4668093,
--3402151, -7714835, -5161477, -5376762, -9121974, -23337242, -191663, -3119757, -9951976, 2258616,
--1048509, -12658342, 4339528, -10735271, 2841658, -1303523, -790274, 5447093, 7149510, -205622,
--10377715, 3078955, -6476811, -7260106, 10180146, 9096741, 10255845, -3323231, 1749125, 1336272,
--5075041, 790274, -2381023, 15888695, -2516314, -1655173, -1462973, -133681, -9594957, -12045236,
-2976949, -902480, -773631, 2691334, 17427904, -2165201, -7983808, -3449933, 9211631, -1355599,
--2818572, -2647847, -54224, -7406671, 1917166, -1453310, 1514513, -3762928, 302258, -4725538,
--256087, -340913, 2038499, -2011118, -818728, -2910377, 4015258, 196495, -2691334, 581431,
-1430761, -3091303, 928250, 1142461, 4884452, -1040993, 1248762, 3291019, 2225867, -1792612,
-2164127, -3663607, -5719286, 650151, 720481, -2289755, -5317170, -1192927, -1189169, 4784057,
-1963337, 3184182, -395674, 3990025, 4538707, -15261629, 5652177, 1875290, 16141024, -10842645,
--6138582, -3592740, 8622684, -8209830, -7892003, 7149510, 4812511, -8303783, -8380555, -8199630,
--18372260, 12081206, 11336566, 12028593, -5164698, 3815005, 11929272, -17259326, 32212, 11359115,
-10523207, 4789963, -18790, -5511517, 1163936, -2643552, -14939507, 1916629, 4103305, 2216740,
-9921374, -8715026, 948651, -16307454, -2065879, 3252364, -8966281, 3495030, 2762201, 7330973,
-8935143, 12449500, -2536178, -4850629, -14992120, -10676752, 4630512, 22060562, -6833293, -887985,
--10152229, -5351530, -8054675, 4776004, 4882841, -1664837, 723165, -16094853, -2126009, 10943577,
--8711804, -7521562, 6475200, -2879776, 9473624, 2374043, -6961605, 1153199, -10517838, -3000035,
--2778844, 20318416, -2032593, -5910412, 4440996, 4171487, -1785633, -3421478, -1040456, -2744484,
--3776350, -3482682, -2692408, 1454920, 1570347, 3300682, -851477, -21475, -1963874, 2011655,
-504659, -5177046, 1383516, -17717, -574989, 1911261, -128312, -2814277, -2825552, -6699075,
-2229625, -2088965, 1971927, 2597918, -3179350, 1473711, 901406, -646393, 2535105, 38118,
-7274064, 1050656, -1341640, 201327, -2138894, -354335, 1249836, 233539, -656593, 620086,
--2871723, 2306934, -9378598, 22081500, -10710038, -5456219, -323733, -608812, -15476915, 1122060,
--11366094, 8418136, -21464100, -3025268, -6781754, 7488276, -7305203, -7347079, -18140868, 12428025,
--7387344, 5181341, -5753109, 3805878, 9845139, -6935836, -11850889, -3894462, 8318278, 17132624,
-5588826, 7250442, 967441, -16990354, -9044127, -9096204, -4621385, 3130494, 15650324, 6828461,
-9167608, 8617852, -2248416, -3476239, -5096516, -14172318, 903017, -9846213, 15622407, -6942278,
-10798622, 2433099, -5461588, 3726958, -3594888, -4703526, -8317741, 12884365, 3457986, 21664888,
-4832375, -22996328, -5651640, 7581154, 6144488, 3547106, -1188632, 2215666, 24348170, 12282533,
--3977677, 2773475, -6406481, 17726404, -555661, -519691, 6950868, -15295989, -6560563, -5087389,
--16429324, -19423990, 4002910, 7167764, -1719061, -9482214, -2414309, -2898566, -7472170, 294742,
--1436667, -5827197, 6082748, 9341017, -1902134, -1171452, -1274532, -3419868, 2735894, 794569,
--937377, -1671279, -1489280, -902480, 3124589, -1586454, -4211753, -871878, -106837, 1566053,
-962610, -2452426, 6575595, -1940788, 4032974, -578210, 3383361, 1921461, -949725, -4214437,
--4132832, 1647657, -1055488, -6461779, -2353105, -1437740, 2542084, 823023, -405874, 2069101,
-3146064, 1245541, -1732482, -2525978, -13390097, 8005282, 17891224, -1761474, -782758, -415001,
-16625818, 5152350, 3977140, 2842195, 1954210, 2829847, -6568079, 1220845, -20626044, 2957622,
--9949292, 8609799, 21060372, -2740189, 1515587, -16632261, 22200150, 10776610, 9418863, -2768643,
--12242804, 1469953, -4194036, 11274826, 8061117, -10102837, 512175, 5949067, 4176856, -7819525,
--6972880, 32556926, -7581691, -5674726, 6830609, -8288213, -6078453, 10354092, 10106595, 402653,
-3866008, 3688840, -12639015, -6266358, -577136, 4296041, 10991358, 2729989, 2563022, -14230300,
--1388348, 4203699, -19472844, 4263829, -5450851, -1957431, -3631395, 5719286, -5828808, -10540923,
--11325829, -17838072, 2202781, -7225746, -3539590, 11436424, -3929895, 3716221, -20187956, -29528,
-18482854, 4345433, -9423695, -5561983, 11200738, 5784247, -12416214, 6943889, -9011378, -6882685,
--3013457, -1716913, 4134980, -1181653, 653372, -1896228, -2539936, 1508607, 2165201, -3124589,
-2590939, 8205535, 1183800, -1098975, 3415573, 5194763, -2294050, 3542811, -2401961, -3155190,
-793495, 2365990, 6697465, 1821066, -773094, 2503429, -1148367, 3540127, -2099165, 3257733,
--2578591, 1104344, 2716030, 860067, -4834523, -2646237, 8500277, -3624953, -7044283, 3441880,
-1662152, 2576444, -1968706, 11096585, 3071975, -2527588, -1442035, 2806224, -1246614, -10273562,
--10315975, 24589224, -14688251, 3854196, -9383430, 28986198, 6171331, 5376762, -9244380, -10935524,
-1070521, 8296803, -8866960, -14139032, -8403104, -20569672, -8011188, -12067784, -9664, -27652610,
-1949915, 15015743, 9242233, 12277164, -8543227, 3219615, 13313862, -1517734, 9656160, 3612068,
-15043123, -7518341, 12546673, 9997073, 7136625, 16319802, -9119289, 9731859, -4981089, -5768678,
--3841312, 3628174, -31591632, -10078141, -19636054, 22759032, -14324253, -16146930, -3459596, 12853763,
-358630, -5755256, 17879948, -6366216, -5671505, -12953084, -31960462, 1575716, 2966212, 13343927,
--13405667, 63888, -8177081, -10755672, 17082696, -3427384, 8551817, -18562848, -18106508, -11264089,
-14232985, -1446330, -9040906, -9556839, -400506, -15743739, -10784126, 1551020, -6635188, -11739219,
-17313014, -23781234, -22705882, 5945846, 64961, 10031970, 1116155, -1081795, -7351911, -6448894,
-1024350, -11243151, -4577362, 9594957, 1228898, 1649268, -5611375, 5680631, 2055142, -6143951,
-2823941, -4555887, -992674, -4673998, 4001836, -6220724, -1627793, 4228396, 8173860, 913754,
-260382, -8990440, -2800856, -628676, 1216550, -1342714, 7547868, -339839, -3026878, 4865661,
--5804649, -5258114, 3105798, 6953015, -2087891, -4988068, -6861747, 5337571, 4185446, 8616778,
--11810086, -9664, 15998753, 2165737, -4750771, 8294656, -12877386, 25841208, 16236050, -77309,
--11723113, -13249974, 5618891, -3278671, -1149441, -623844, 23557358, -11457899, 488016, -7945153,
-8701604, -14518063, -13338558, -26261040, 6154688, -10619844, -14767171, -1717450, -25010668, -12217034,
-7115687, 5436355, -3396246, 13141526, 1256815, 15910706, -6942815, -21689048, -3274913, -15860777,
--3009162, -4689568, -20861730, 2841121, 17055852, -47822852, 6102612, 232465, 11919071, -2263448,
--14891188, -28325846, 11367705, -3370476, 10624675, 6470368, -3440269, 16726750, -20623360, 29078002,
--7237557, 16281684, 33800856, 13651554, 24056112, 9587978, 6328098, -3139621, 12572443, -4525285,
--13117904, -17558364, -11413339, -446677, 9981504, -1480153, -7715909, -10834592, -9818295, 13532905,
--5944772, -4661114, 12006581, 2347737, 9045201, -766652, -1297617, -3474092, 2136209, 4714264,
--6123013, -817654, -14997489, -10659572, 7386807, -3471944, -370441, -1999844, -275415, -5536213,
--8974871, 6708739, -5399311, 8661875, -8633958, -3772592, -952946, -5851893, -3040837, 4472135,
-1775432, 10473815, -2573222, -5906117, 3877819, -12029130, 208843, 1719061, -1899449, 1025960,
--1359894, 6262063, 8693014, 1714229, -305480, -3957812, -7262253, -3280818, 423591, 14471892,
-7134478, -6930467, 40353904, 32874216, 29614336, -6815576, 14496, -25249038, 18767396, 23305566,
-7881802, 22512608, 8943196, 7620883, 7852811, -4034585, 3051574, 6196564, -5825050, -24319716,
--14811195, -942208, -16202227, -18838800, -44218836, 9657234, 7549479, 11466489, -8533563, -3058017,
--5956583, 273267, -13890461, -432718, -10605885, 12184822, 10082973, -6339909, -8650064, -23311472,
-39113192, -12276627, 7646653, -48855, 2428267, 6226092, -16305843, 19520090, -9961103, 6653441,
-4279935, -14638859, -15160698, -2815888, -1423782, 9055939, 41273024, -3482682, 6044093, 1348620,
-12368969, 8861054, 9184251, -7331509, -2296734, 3559991, -20117626, 4048544, -17235166, -27347668,
-9401683, 853625, 2042257, -20023138, -48220672, 20786568, 21594022, 14959908, -27407260, 25959320,
-27461484, 10201084, 7870528, 237834, -8086887, -18170932, 13458280, -12804371, 686658, 222265,
--7354595, 5485210, -13193066, -1364726, -2699387, 6455336, -3768297, -6009196, -8260296, 12426414,
--6969122, -2960843, 3082713, -11166915, 6049999, 5083094, -4027606, -3907883, 920734, -10371272,
-9429064, -3478387, -2762201, -864899, 641024, 7077569, -5748814, -13111461, 3726421, -7306813,
--2448668, -7488276, -6828461, 1030792, -5561983, -2455648, -5199058, 16851304, -7667054, -13681618,
-1955284, -4906464, -543313, -23617488, -47219944, 39336532, 6395743, 7049652, -15673946, -11263552,
--50240916, 13994077, 36075576, 11116986, -31787052, -15866146, 5264020, -12327093, -7788387, 14830522,
--16504486, 9347459, 8357470, 6919729, -18382996, 6678674, 5807333, -8591008, -17198122, -9931038,
--6565395, -4398047, -16401406, -14148696, -7733626, -16930762, 13500693, -6275484, -21856552, -7507603,
-13554380, -2713883, -15128485, -8308078, -7676717, 15032, -11973295, -7209103, -19899658, -18927384,
-8178692, -6692633, 25029458, 16455093, 1693291, 14945949, -21713208, 14158360, -20606716, 17452062,
--2892124, 8954470, -9142912, 30960808, -7619272, 17361868, -4342212, 25473452, 10323491, 6236293,
--26152056, 28508382, 22865870, 9967008, 10669773, -20420958, -3823058, 8418673, 14067092, -3587372,
-3458523, -22568442, 14586783, 24831354, -464393, -17721036, -955093, -11710228, -9972914, 4883378,
-20938, -4879620, 5808407, -12936441, -2971044, 517007, 3764539, -8919573, -12191265, 4731444,
--5902359, -11570105, -20700132, -1520955, 6516539, -1728724, -10392210, -12613245, -3806952, 8021925,
--8610873, 3322157, 4711579, 1299765, 3478387, -1084479, -5522791, -4728759, -1510218, 5774584,
-1998770, -2273648, -7743826, 10652056, -6853157, -6069326, -4991826, 2108292, 12468827, -8445516,
-12276627, 10278394, -4077535, 3711389, 6551973, -33640332, 27238146, -4041564, 12670154, -18884972,
--6622303, -5251135, -4954245, -4965519, 15609522, -248034, -14330695, 10227391, 1157494, 7182796,
-13123809, 13258027, 9664, -12783970, 48810156, -14293651, 37372120, -401043, 1564442, -22256520,
--10145786, 2902324, 17734994, 8451959, -6698539, 14440217, 2385854, -21499532, 2796024, 2405182,
-20768314, -1431298, 12162811, -16449188, -668941, 13887240, 6551436, 11521787, 31553514, 25191594,
--4688494, 12772159, -2674154, 24733642, -20985210, 16330539, 6228240, -1503239, 14555644, -8589935,
-38821136, -7384660, 18428094, -14919106, -13401372, 89121, 41407244, 13131326, -39649528, 34039764,
--1315871, 11572253, -30032022, 9447854, 2787434, -59479392, 24137180, 44461500, 16700443, -19376208,
--12438225, 8565239, 43861280, 24698210, 33303714, -12868259, -16993574, -15563888, 6589017, 8653285,
--2045478, -17502528, -8051990, 20483236, 3269007, 4241817, -7735236, 9116605, -2945811, 3842922,
--4983236, -6253473, -7221988, 12148315, 20891794, 20089710, 4241280, 10407243, 19177566, 12411919,
-13401372, 18224620, 10258529, 17377974, 13290239, 4370129, -27592480, -5893232, -13085692, 7036230,
-15519864, -18748070, -6803228, 20813948, 11416023, 1841467, -5309117, 17523466, -14499273, 2681133,
-18453326, 14114873, 7932268, 9272298, 11170673, 6017786, 2130841, -1839857, 2641942, 965294,
-9556302, 11321534, 7347079, -9314710, -4706748, -16291885, 20001126, 2797098, 13253732, -11181947,
-26809186, -9779641, 12399571, 3868155, 5439576, 3632469, 2201171, -28597502, -16524350, -167504,
-2412698, 18964964, 15815680, -23416698, 2223183, -13072807, -11659226, 5305895, 1304596, -8289824,
-9426916, 36907192, -24831890, -2379412, 57046292, -35196184, 4001836, 19975892, -10554345, -8847096,
-11762305, 18403398, -20603494, 9669582, -37309308, -4466229, 55506548, 1977833, 15694347, -6339372,
-30327300, 30055108, -8461086, -995359, -14442364, 3047279, -10676752, -27574226, -17432198, -32814624,
--23864448, 35482872, 14464913, 10145250, 47858284, -34423628, -20067160, 5597416, 17944374, -13836237,
-8740795, -14791330, 26521424, 15386183, 9200894, 18958522, 69446936, -16942572, -5394479, -19888920,
--22306450, -1926293, 29235842, -23360864, -2913062, 20302848, 22370874, 25934624, 15479062, -18345416,
-4666482, -10366977, -2037425, 14911053, 5091684, -1805497, 11648488, -21519396, 1537598, -111132,
-5840619, -5210332, -5254356, 12309376, -4555887, -3662533, 14330695, 17677548, 14717242, 5885179,
-6373732, 11480448, 3799972, 408022, 8554501, 307627, -4485020, 3110630, 165356, -1818919,
--23365158, 5184563, 15578383, 24362666, -5474473, -7644505, -7874823, 12099997, 14696304, -32723892,
-4212826, -14919643, -1663226, 1162862, 2480344, 8756365, 6957847, 5688148, -7963943, -16777216,
-13727252, -4046396, 31344672, -28466506, 7196755, -2046015, -9131100, -8274792, -4114042, 9622874,
-5916855, 6546604, -1509144, 17554606, 3070365, -22907744, -18064096, -2460480, -10616085, -13157632,
-3006477, 14534706, -2040110, -3252901, -21027624, 10399190, -3375844, 21562884, -7322919, -41333692,
-5061082, -12217034, -6241125, 118648, -33571612, -17598628, -28840168, 580357, -2103997, -8029978,
--38182260, -15464030, -3344706, 20024212, 22057342, 1838783, 1677185, 10816875, 2433636, -26164404,
-22990424, 31387084, -13604846, 4806606, -13633837, 5727876, -124017, 23933706, -26801670, -19362786,
--61283816, -21659520, 15424301, 24765318, 17543868, 16016470, -15117748, -4933307, 12198781, 11807402,
-26563836, 12686260, 11331734, 20546050, 5143760, -22470196, -24183350, -32678258, 13645111, -20859046,
-1800665, -18280992, -28337120, -42800960, 6039798, -12343736, -13456133, 3898220, 3998078, -1551557,
--6231461, 966368, 14074071, 9883257, 3562139, -5386426, 10155987, 23131620, -5156108, -12527346,
--10407780, 11386495, -6087043, -5103495, -20651276, -19825570, -15391552, -33934536, -1967095, 170725,
--13706314, 6105833, 9101573, 6785512, 16852914, 4764193, 19904490, 1389422, 5404680, 22131966,
--10853919, -524523, 3183108, -102542, -15430207, -486405, -3078955, 26656178, -1833951, -10951630,
-8185671, 3395709, 7633768, 17107928, -3082713, -185757, 9628780, 4460324, 415001, -1198296,
--5352603, 5732708, -49129596, 20526722, -14724759, 1762547, 34804268, 29117730, -11643119, -4967667,
-17886928, -11270531, -11862163, -9891310, 2333778, -3457449, -1399086, 4083440, -3926674, 17102560,
-40889700, -17394080, -32195074, 31964220, -24965034, -6813966, 136902, 39908300, 2989834, -12212203,
-11668889, 11045045, -41972568, -12418898, 6790344, -1743220, -19999516, -1619740, 7741679, -61612916,
--28578712, 30327300, -30464204, -33901788, -20984674, 24737402, -32436130, -50710140, 50782620, -15137612,
--31997506, -2006824, 19752554, -19654308, -34336116, -1013612, 15436112, -1933809, -44131864, 10180146,
--775778, -19875498, 46134928, 43404404, -3430605, -17910014, -34456912, 52948356, 7274601, 9216463,
-18228914, -13233331, -51645908, 23043036, 39284992, 31358094, -19624780, 11207717, 42872900, 24786794,
--29832842, -6735046, -23420994, 10307385, 6355478, 26870926, 26613228, -32285806, -1194538, -3540127,
-4737349, -12662100, 12815646, -8358543, 7394323, 6566468, 5393942, -9229885, 6966974, -13706314,
-22304838, -11518565, -5767068, 14052596, 12358768, -13084618, 2014340, -6196027, -15105937, -8216273,
-6018860, 11725798, 7232188, -12340515, 6813966, -7985418, -18769008, 782758, 3332895, -3142842,
--1553168, 12626130, 795643, 1279363, 5997385, -1857037, 3226594, -20229296, 15092515, 5400922,
--51140176, 5202279, 47486768, 25675852, 6323803, -1005022, -9033390, 12044162, -17245904, 39351564,
--3402688, 10194642, 14316200, -14085345, 167504, -2134599, -15511811, -469762, 5382668, 21889300,
--441308, -14252312, 6518687, 17530446, -3329137, 28026272, -22448184, 4197794, 6054294, 7004018,
-24304146, -13927505, 1819456, -1353452, -32529546, 4145717, -10872173, -18008798, 7172596, -7120519,
-24939802, 17788680, -13612899, -29291140, 13362180, 2353642, 5434208, 15679852, 34754876, -6429029,
-6929930, -14702210, 19801946, 13967234, 14718853, -17183090, 22732726, -8374650, -10411538, -20643224,
--2144263, -8429410, 29540248, -22718766, 1279900, 6940667, -7141457, -14039711, 41385768, -2266132,
-9577240, -4269735, 4707284, -3906273, 11378442, -1891396, -5397700, -3789772, -4786741, 13515725,
-9384504, 12700218, 6999186, 3787088, -9294846, 9288941, 467615, 4988605, 4320737, 11392401,
--1952600, 56908, 1606855, 3408594, 3605088, 8405251, -7532836, 5175436, 4537633, 3964255,
-3338263, 2645700, 8293582, 2976949, -11521250, 6489696, 7534447, 7842074, 3288871, 8452496,
-2152316, -865973, 4705137, 2545305, 6058052, -819265, -5858336, 1085553, 8495982, -4733054,
-3387119, 166967, 9279277, 8284992, 3076270, 5745056, 8620536, 3875134, 6958384, 16689706,
--44396540, -124570160, -118455200, 51470352, 5023501, 113868712, 241192480, 52823804, 97189208, 51869784,
--178961088, -80073224, -120373976, -176707840, -11886322, 20905216, -83530672, 74221864, 126175936, 77317464,
-217321056, 133438728, 1173063, -20079508, -76971184, -191963024, -155593248, -66986456, -147392544, -43436616,
-84170624, 25076166, 21255794, 199150656, 76747848, 48541720, 184213296, 8769249, -9389872, 85004384,
--42388644, -151886144, -73640976, -151770720, -221850096, -24515674, -100831336, -82188496, 70899712, 137723488,
-63592896, 243323856, 193715376, 112453520, 147090288, 49947248, -72261752, -111118856, -148339040, -237334528,
--190449056, -127634616, -108925200, -33776160, 82558400, 125672888, 139852720, 188247872, 158296928, 74334072,
-26876832, 40891308, -63684164, -97307856, -69318624, -145430816, -109667696, -18749680, -65541736, 26057030,
-106378824, 38182260, 54191748, 77508056, 8049843, 4753455, -19057844, -72790568, -38388416, 738734,
--29322816, 22639310, 30674120, -12412455, 38947300, 33801928, -53022980, 40510668, 46875272, -33086280,
-76542760, 11850889, -75806176, 53009024, -41699836, -147508512, -24664386, -89593552, -109226384, 67418104,
-8250096, 17264158, 141813376, 90447176, 100240240, 161683504, 118549688, 39527120, 16706349, -112363320,
--204874240, -203387632, -204411984, -192866576, -118081536, 6199786, 110640504, 163078304, 222916320, 207487184,
-195545024, 154524864, 25860534, -70851392, -78206520, -163796624, -203262016, -121908888, -109767552, -60799556,
-10871636, 29502130, 34922380, 69923680, 60793652, 57636312, 80866720, 67270464, 42054172, 37154688,
-7705172, -23409182, -41954316, -50718196, -68838664, -57800596, -46001248, -35788352, -11805791, 12075837,
-20795694, 30060476, 35089884, 33999496, 25931402, 20927228, 9119289, -715649, -4572530, -4766877,
--9295920, -7206419, -4793184, -5450851, -5377299, -1381369, -7475928, -8608188, -8471286, -13127031,
--14709726, -8643622, -7382512, 4129074, 17818746, 23784992, 24197308, 22899692, 14922864, 10889353,
-4014721, -6808597, -17940078, -21398600, -23333484, -20936892, -15610059, -7123204, 973347, 10068477,
-15825344, 16633335, 13915157, 10421738, 3864934, -1120987, -5113159, -7458748, -8167417, -5198521,
--2738579, 943819, 3526705, 5567888, 5354214, 3582003, -625455, -3535295, -5954436, -6616934,
--5913633, -3850438, -1870995, 1142461, 3083787, 4349728, 4837207, 4627828, 3320547, 2259153,
-1078574, 20401, -941135, -1369558, -1687922, -1490354, -1090922, -672699, -493384, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--5042829,
--1938641, 1176284, -935766, -2905009, -210453, 6729677, -3454228, 785442, -1456531, -75699,
--2573222, 4843113, -2512019, -2677375, -3024194, 5770826, -3430605, -898185, -1620813, 1622961,
-2665027, 3376918, -4763656, -11811, 4562329, 2017561, 782221, -252329, -568546, 2059437,
-4651987, 1121523, -5970005, -3080029, -3211025, 5212480, -531502, 3976603, -2498060, 1842004,
-5219459, -2544231, -3926137, 1394254, -1466731, -265751, -3512210, -1422171, -2623688, 996432,
--4763119, -1575716, -1215476, -155693, 6456947, -2108829, -964757, -233002, -1685238, -671626,
--602906, 3902515, 2027761, 2391760, -3348464, 2458869, 2594160, -2289755, 1078037, 1530082,
--1719061, -2348810, 2752537, -4116189, 2914672, 1752347, 779000, -3815005, -1310502, 1417876,
--325881, -795106, -1016834, -92879, -2032593, -2378338, -352724, -394600, 298500, -897111,
-33823, 1403381, -39192, 520228, 215822, 273804, 30602, -280784, -1013075, -625455,
-721018, -326954, 57445, -102005, -3131031, 3389266, 430034, -1408749, -2124935, -553514,
--1062468, 40802, -2641942, -2020782, 1552631, -387084, -993748, -4642860, -665183, 4387846,
--2900177, -697932, 3311420, -1855426, -3477850, -2643552, 2268817, 54224, -310311, -640487,
--3333968, 1167694, -1467268, -756451, 3837553, -2059974, -5127117, -1503775, 316754, 1578401,
-1385664, 475668, -3888019, -871878, -4743255, -4305168, -1139240, 4576288, -757525, -8950712,
--375273, 3056943, 2655901, -1823214, 1795833, 1962800, 208843, 2702071, -4810900, -3395172,
--427349, 1434519, 249108, 1030255, -493921, 1294933, 1175747, 1897839, -255014, 1180579,
-1123134, -875636, 1882269, -432718, -4692789, -3839701, -2479807, -1968169, -2093797, 670552,
--1049583, 3681324, 3047279, -534723, -1433982, -1247151, -652298, 1121523, 1750736, 239981,
--984621, 206695, 266288, -978716, 1323387, 27917, -274878, -480499, -84826, -724776,
-544924, -129386, 123480, -843424, 538482, -526134, 30602, 20938, 380641, -129386,
--384936, -153008, -784368, -303332, 107374, -387621, 93952, -251256, -712428, 4068408,
-2253784, 6116034, 363462, -1257352, -807454, 4314295, -1237488, 2294050, -4042101, -469225,
--157840, 2244657, 1540820, 3866544, 2699924, -2055679, -3993246, -3262565, 2144799, -1416802,
-2949569, 1845225, 344671, -239981, 2441689, 1714766, -1875827, 2014340, -4299263, -635118,
--3990562, -3411278, -4790499, 1334661, 2636036, -546535, 3690451, -2962454, 3413425, -7085086,
-2644089, 1154809, 5143760, 1481764, 1806571, 2765422, -190589, -1839320, 1880122, 4501663,
-1480153, 2159295, -800475, -121870, -6512244, -469762, 958315, 1200443, -1013612, 3398393,
-6391448, -2200097, -4718022, 3057480, 615791, -3331821, -123480, -1564442, -3388192, 370978,
-4576288, 1126892, 1618666, 747861, -569083, 1731946, 1018444, -126165, 1455457, 62277,
--496606, -376883, -952409, 868120, -1364726, -192737, 2082522, -500364, -126702, 794569,
--586263, 1442035, -2135136, -955093, -46171, -850404, -976568, 190589, -583579, 679679,
-1501091, -621697, 812286, 213675, 12348, -2684, 138513, -1799591, -540629, -424665,
-265751, 1440962, 779537, 2273112, 3338800, 3209414, -3204046, 4923643, -1817845, -3355980,
--4932770, 1081795, -6507949, -456340, 624381, 1734093, -4167192, 2609193, -112743, 539018,
-1679332, 1005559, 1414655, -5616207, -418222, -1314260, -3672734, 2064806, 1023813, 776852,
-3069291, 10898480, -850940, 505196, 1518808, 2648921, 1029718, -9051644, 1825898, -1553704,
--1074279, 4865661, 103616, 2390686, 3512210, -4497368, -2516851, -1341640, -4345433, -9292162,
-395674, -3542274, -596464, -868120, -229781, -2204392, -4556424, 1217623, -4361540, -1438277,
-935229, -4884989, 4949950, 1654636, 1380295, -2092723, -407485, -857383, 954557, -1622961,
-2523830, -4022774, 1276142, 5939403, 4941897, -1811939, 2495376, -2439542, 1037235, -4555350,
--184147, 2714956, 3182034, 2804077, -532039, 5284958, 454193, 2602750, 2357400, -171262,
-1079647, 505732, 165356, -985158, 503585, 755377, -358093, 13959, -639413, -1554778,
--264677, 924492, -823023, 2078227, -632971, -1207423, -992137, 673236, -574989, 859530,
--215822, -996969, 507343, -340913, 1081795, 590021, 621160, 357556, -1971390, -549219,
-228707, 736587, -4832, 66572, -553514, 7349763, -9269076, 417149, -5699422, 2951180,
-4246649, 5173825, -777389, -4869419, 146029, 5097590, 1103270, 994285, -3794604, -487479,
--6660421, 8904004, -450972, -6812892, 7423314, 1878511, 2214593, -457951, -2650532, -848256,
--3506841, -3454228, 2755759, 3907347, -771484, 3688303, -2999498, -1860795, 19864, 5138392,
-4859756, -1331977, -2708514, 4006668, 2559801, 399969, 3389803, 829466, -3940096, 4194036,
-2619930, -285078, -1356136, 1178432, -4248797, 11400454, -569083, -377957, 8493835, -741419,
--5164162, -2783139, -592169, 2094870, -5367636, 3717294, 1133871, 158377, -4871567, -4091493,
--8625368, -732292, 4054449, 2039036, 4912369, -2678986, -1898376, 10275709, -2823404, 1745904,
--1401233, -4210679, 349503, 1908576, -4407710, -7821136, 350577, -4809290, -4865124, -2353642,
-2574296, 264677, -715112, -2967286, -1005559, 382252, -1100049, -797790, 827855, 2837363,
-418222, 744103, -1956358, -970663, -181462, 22012, -2770254, -2006287, -1749662, -62814,
-700617, 316754, -885837, 112206, -154082, -237834, -1441498, -492311, -187368, -513785,
--743029, -970126, -9827422, -161061, -4164508, -4702453, 1354525, -5637682, 101469, 3767223,
-2024540, 7950522, -13407277, 8519068, -1479616, 3695283, -2616709, -1966021, -7075422, 6194954,
-5451924, 1332514, -6296959, -397284, -3668976, -484258, 6431177, 4467840, 932545, 6134824,
--151934, 265214, 542777, -268435, -4395362, 9198746, -993211, 34360, 10683194, -6987912,
-2504503, -3360275, -765578, 3345780, -1534914, -5522791, 10280004, 8014946, -358093, 2568391,
-4269735, 11126113, -1515050, -2064806, -6132140, 1013075, 2056216, -6467147, -6911676, -6069863,
-7153268, 117575, -3027952, 4912906, 3462818, 18790, -1779190, 1569811, -3961034, -1039382,
--4304631, -996432, 3950296, -7881265, 1800128, -1686312, -5485747, 3289945, 5174362, 2196876,
-5390721, 4685810, -4046396, -6424734, -3240016, 2787434, -2567317, -4943508, 3146064, 5348845,
--3945464, 646393, 1107565, 581968, -3687766, 2110440, -1662689, -1303523, -2379412, -1240172,
--1870995, -194884, -240518, 696858, 1094143, -935229, -836445, -366146, -1493038, -856846,
--428423, -586800, 1120987, 1445793, 337692, 2130841, -1942399, 1472637, -1681480, -745714,
-1508070, 7385733, 7834557, 1328219, -6685654, -888521, -6347962, 2698313, 16829830, 4181688,
-11673184, 4312684, 184684, -10817949, -2629057, 1825361, 10547903, -4610648, -2276333, -4009889,
-1047435, 8486855, -6144488, 4175245, 7351374, 1664300, 2731062, -4744865, 9075266, -1896228,
-11807939, -71404, -3556770, -11002096, 1394791, 81068, 13212393, -3933653, -1030792, 8393440,
-104690, 1147830, -2671470, -8593156, 969589, 5015448, -6156836, -4846334, 1336272, -10312216,
-5728413, 5792837, -1701344, -629213, 2967286, 5907728, -450435, -3562675, -90194, 8655970,
--1052267, -1277216, -3208341, 11194295, 11334956, 812286, -1998770, 1808181, -433255, 2992519,
-5266167, -380105, 7584912, -2883534, -4135517, -6046777, 2112587, -447213, -9226663, -6638409,
--3800509, 7350300, -2083059, -3360275, -889595, 59056, -3094524, -4694936, -1616518, -1334661,
--2783676, 524523, -1725503, -1501628, 1551557, -2957622, -3058017, 1043140, 2552821, -1439888,
--1948305, -1451162, -2557116, -1186485, 872952, -834297, 507880, 1449552, -399432, -701690,
--2244657, 1377611, 156766, -7449084, 7464653, 5669894, 398895, -4955856, -5561446, -2443837,
--11005854, 12688944, 9532143, -2094333, 3504693, 1107565, -2136746, 9612137, -819265, -4530117,
-14243722, -15524159, 3953518, 6629819, -99321, -6372658, 6764037, 1012002, 9801115, -3850438,
--1105417, 2585034, 3887482, 624918, -1393180, 14286672, 6133214, -6590091, -9939628, 6841346,
--9943386, -2912525, -11441256, -1517197, 17008608, 6937983, 8197482, 19327, -9098351, -1546725,
--4471061, -2006287, 12707734, -2027761, -14108431, -1174674, 2709588, -8983998, -1534377, 5728950,
-4488778, -6051072, -3191698, 6122476, 8102993, -2407866, 8443369, 113817, 2084670, 3141769,
-668941, 3300146, 5043902, 4894652, 4747013, -2561411, -10252087, -11304354, 2757906, -2299955,
-8005282, -1478006, 9509594, 3200825, 4395899, -5128191, -4598300, 3374234, -230318, 664109,
-839129, 390842, -4626217, -2128156, -761820, -3831111, -166430, -3295314, 533113, -1874753,
-1353989, -491237, 2385854, -31139, 1280974, 400506, -1283122, -1098975, -1526324, 2994666,
-291521, -921807, 904628, 1536525, 1250909, 268972, -2292976, -6277632, -3600793, 1074,
--3082176, -97174, -558346, -624918, 3704409, -635118, 6110128, -957241, 5689221, -11860015,
-4032438, 3162707, 1557463, -7823283, -6569690, -8323110, 6200322, 3146601, -5992553, -5983963,
-7836705, 2436857, -802622, -5063230, -8256001, -3468186, 3127810, -5348308, 453656, -9884330,
--2885681, 966905, 3162170, 6178848, -1192390, 3879966, 5363878, -5816460, -13674639, 9118752,
-256087, -2326262, 8677445, -1551557, 180389, -6150930, 7604777, -5159330, -6487548, -2659122,
-6203544, 9484362, 7956427, 2332704, 1464584, -17278116, 7588671, -1236951, 3090766, -6103149,
--1290638, -6807523, -2469069, -1824824, -8950712, -4627291, -3771518, -5012764, 8921184, -3136400,
-11655467, -1623498, -840740, 7211787, 8290898, 14055817, 9608916, -409633, -4801237, -755377,
--153545, -7057705, 1553704, -4633733, -7681549, 14367739, -9436580, -10055055, -1600412, 5264020,
-632971, 1540820, 556198, 5953362, -252329, 1520955, 2025077, -2535641, 208306, 3601330,
--2244657, 1391033, 2565169, 2051921, 4568772, 896574, -60666, 2429878, 329102, -1032403,
-1614908, 2520072, 931471, -154082, 696322, 281320, 5320391, 293132, 4307852, 2801393,
-545998, 4503810, 4984847, 367757, -261456, 545998, 592169, 478889, -553514, -751619,
-1177358, 147103, -3008088, -4388920, -17980880, 4206384, -12315819, -7298223, 12013560, 9383430,
--20555714, -18833968, 828929, 8300561, -4638028, 5192079, -6660421, -586800, -11855183, -2965138,
--10684268, -599148, -2790118, 527207, 4362076, 3601330, 6953015, -663036, -5586679, 5192079,
--6698002, -2583960, 2394444, 609885, 3694209, 7355669, -974958, 1078037, 1838246, -2744484,
--576063, -10352482, -12276627, -11897059, 198642, -11970611, 4253628, 1762010, -4609574, -5482526,
--2241973, -1859184, -856846, -7066295, -11227045, -490700, 18305150, 10139881, -2370285, -10673531,
--10995653, 12655658, -11557757, -3726958, -1906429, -7692824, -5763846, -7845295, -9167071, -12866111,
--17415556, -2390686, -2655901, -2367064, 6076305, 5714991, 1640678, 5022965, -3816079, -4755603,
-16448651, 7015292, -4166118, -11871290, 3896072, -6976638, -8249559, 88047, 13820668, -2597918,
-53150, 9501541, -892279, -6149320, 430570, 2344515, -30065, -2457795, -2309619, 32749,
-2467996, 1226213, 1700807, 1045288, 4825396, -1273995, 2667175, -6642704, 3272765, 1725503,
--1054415, 1522029, -1260573, 2569464, -1065152, -1873143, -976568, 2339684, 2100776, 344134,
-2760053, -3738232, 3982509, -1822677, -2158221, 395137, 1018981, -15089831, 1525250, 7344394,
-7983808, 7401840, 3011309, 14768782, -6092948, -11049340, -3042984, 1745904, -2404108, 4585415,
-9739912, 19909320, 12419972, 7196755, 9141838, -7914014, -15037217, -5251135, -11321534, 12428562,
-2629594, -2825015, -9232032, 14129906, 12048994, -4715337, -1147293, -227096, -7650411, -6344741,
--11390253, 3147137, 3591130, 6183143, -10788958, 803696, 2747705, -4953171, -10496900, 146566,
-5687074, 7710540, 1061931, -20187420, -7431367, -10036265, 3827890, 11795591, -287226, -11389716,
-2396055, -10997264, 5727876, -2779381, 673236, -7838852, 15868830, 12622372, -4297115, -3876208,
--9626632, -764504, 12617003, 2839510, 15571941, 15181636, 12451110, 7379828, 2305861, -10337986,
--6010807, -13713294, 15382962, 15670188, -1578401, -12118787, 7420630, 18228914, -541166, 2249489,
--4740570, -500901, -12341052, 1848983, -9801652, 6447820, 1969779, 9098888, 8792872, 4900021,
-439160, 772020, 5312875, 2028835, -1639604, -3736085, -1538135, -5680631, 662499, 4373888,
--4052302, -2112587, -4592931, 3092377, -1292785, 6618008, -6617471, 1696512, -550293, 6311992,
--3388729, 2103460, 3484292, 718333, -547608, 261456, 774168, -2859375, -1508607, 3813394,
-4322348, -10351945, -2937758, 6800544, 12182138, -13701483, -16549046, -14354318, 14834280, -6800544,
-9762461, -613107, -296353, 24154360, -3432216, 1351841, -11359652, -17442936, 3777424, -2991982,
-4118874, 2529736, -1824287, -10173167, 2288144, 3176128, 1241782, -9628243, 5612449, 3969087,
-17490718, -8731132, 763967, 9364639, 9570261, -57445, 9666898, -3004867, -66035, 8612483,
-7178501, 1608465, -4430259, -14891725, -11439109, 8040179, -720481, -3745748, -3357591, 1714766,
-18919330, -1632088, -7274064, 9450539, -5263483, 8910447, 1744831, 27571006, -6005975, -1331440,
--593242, 3733937, 9032853, -2294586, -3796214, 5801964, -13680545, 10293426, 19161996, 5414343,
--4682588, 10575283, -4744865, -1003949, 21735756, -13298829, 4374424, 8337069, -4307852, 18148922,
-3879966, 3568044, -7704635, -11111080, 1324997, 4440996, -12057047, 11256572, -599685, 2536178,
--527744, 2988760, 10171019, -2863133, 10262824, 4740570, 2974265, 5643050, 4789426, -3574487,
-6234145, 5964636, -6214818, 1698660, 4087735, 8283382, 1424319, 2092186, 3700651, 4678293,
-7083475, 375273, -392990, -878321, 4631586, 4074313, -5543192, -492848, 2823941, 4531728,
-3198140, -3321084, 6674916, -620086, 1852742, 489626, 5374615, 2687039, 2119030, 2500208,
-3482682, 2576981, -1338419, -841277, 825707, 5517423, 1078574, 568546, -828929, 752693,
-1746441, 2200097, 409633, 2586644, 3024194, 5087926, -13772350, -3765076, 9818832, -4396436,
--7083475, -6264747, -6470368, 1470489, 9862319, -952946, -21185464, 294205, -16048145, 6612639,
-7211250, 425739, 3520263, -6859063, -705448, 8948564, -20298016, 5522791, -4269198, 11756936,
-8132521, 5463736, 1102733, -7855495, -18311594, -659814, -15981573, 10335839, 337692, -4553739,
-17245368, 9181029, -6599218, -5050345, -3351148, -2250563, -4566087, -8827768, 1851668, 2992519,
-24841554, -468688, -17434882, 355409, 12229919, 1258425, -8888435, 6102612, -13507135, 9524090,
--5603859, 6442988, -7794292, 4072166, -13828721, 37261524, 1565516, 25869124, -2298344, -6584722,
-6777996, -7816304, -7914551, 14602889, 13963476, -11684459, -31928786, 30955976, -10566693, -7954280,
--3868692, -3864934, 4182761, -2382633, 2499671, 13591424, 3280818, -10211285, -8485782, -6011881,
-4048007, -6298033, -871878, 6570763, -16550120, -980863, 1144072, -2151779, -4809290, 2332167,
--3393024, 9543954, -3537443, 4512400, -4011500, -2476049, 258772, -3736622, 2478196, 2646774,
--1721745, 2780455, -3863323, 2400350, -1016297, 212601, -1740536, 566936, -6959995, -4570919,
--998580, -2306934, -5711233, -7009387, -4267587, -1294933, -3046743, -85362, -5090610, 559956,
--4532801, -720481, -5899138, 3723737, -3309809, -1939715, -1714766, -15661598, -5507759, -4703526,
--13457743, -23756000, -5804649, 464930, -12585328, 6282464, -5341329, 10690174, -9061844, -3732327,
--12945568, 31122944, 26322780, -5800354, 5925445, 18122614, -18890876, 19317690, -7930120, -7919920,
-6995428, 2632278, 3350075, -2733210, -4117263, 637803, 6284611, 5474473, -8370892, 9757629,
--9026411, -15013595, 11022497, 9754408, -12533788, -15534360, -18026514, -2544231, -2945274, 5165772,
--11758010, -14685567, -7509214, 24867324, 8710194, 8533563, -10562398, 9661529, 13072270, -10058277,
-24365350, 4628364, -8664560, -11293617, 6548752, -9466645, -20765630, 5180268, -202400, 581431,
-11404212, 10704669, -9110699, 1853278, -26630408, -3195993, -10486700, 22180822, 1342714, 3229279,
--12835510, 10555419, -22626424, -2634426, 8880382, 2674154, -2444373, -2464238, 2761127, -924492,
-2568391, -3265249, 648540, 2003065, 5398237, 1462973, 1725503, -1104880, 3204583, -3195456,
-1032403, 10182831, -1975148, 583042, -3218004, 4611721, 2083059, -403190, 5259725, -5405217,
--5266704, 5850283, -4807679, -1643899, -4407710, 2559801, -6442988, -2761664, -2110440, 5304822,
-5160940, -8126078, 1283122, 4374424, -2864743, -9178882, -4527433, 7055021, -2143726, -1024887,
--4493073, -11515344, 14629732, 15419469, 13950054, 9421548, -106300, 12786118, 11586211, 1959579,
--2181307, 5168993, 43487, -12986907, -1540820, 4969277, -10167798, 14562623, -15146739, 12165495,
-13218836, -3768834, -2978023, 5636608, 17635136, 13246216, -15935402, -3441343, -4265440, -1232119,
-3981972, -7393250, -7786776, 17341468, 430570, 24886652, -16227997, -15341086, 12501576, -8238821,
-4504884, -9700721, 8342974, 9580998, 6282464, -3840238, -14263050, 1466195, 4734128, -11799886,
--21787832, -693637, 1978369, -12795781, 23524072, -2622615, -6677601, 31328028, 29438780, 3007551,
--4099546, -1029182, -6291590, 7159711, -15448997, 14546517, 1906429, -8323110, 17477832, 2883534,
-3536369, -4908611, -9504226, -23397908, 5144834, -7912941, -3881577, 10917807, 4379793, -5064304,
--15357729, -4151623, -17487496, 7561827, 15707232, -2123325, -11887396, -8202314, -11855720, 236223,
-6366216, 7748658, -1632625, -8276402, -4384625, -4463008, 1084479, -2425583, -4043175, 3493419,
--656056, -2355253, 4112431, -9353902, 2682744, 2579128, 14624364, 1461363, -3280818, -7363722,
-6429566, -7694971, -1060320, 5628555, -10447508, 9853192, 2036888, -263604, 1948305, 6720550,
--3352222, -10122701, 200253, -2888903, -1344862, 10060961, 9376450, -1028108, 2878702, -25773562,
--59732796, 20059108, 19007378, -6653978, 4264903, -14360760, 25814900, 16521129, -14593225, 4195110,
-3535295, 399969, -6552510, -4713190, -30793842, 13066364, 15243376, -3486440, 17717, -1698123,
-10267119, -7698192, 19568944, 5821828, -23201414, -13133473, 29525216, 19395536, -19196894, -4492536,
--6806450, -11742441, 1866163, -4671851, 4234838, 38352448, 10475425, 40182640, 22966800, 25907242,
-23613194, 46278272, -3003793, -4262218, 11093901, -3236795, -38762616, 31482110, -13595182, 18067316,
--25611964, -20361366, -38269232, 7638063, -3495030, -12827457, 9377524, -17972290, 100932, -25688200,
--25655450, 7238094, 15036681, -20841866, -5504001, -14440754, -20063402, -22534620, -16179679, 12374875,
--9759776, -28143310, 40499396, 25390772, 40832792, -5295158, -8752606, -8090645, -14368276, -23111220,
--1450625, -5055177, -17482664, -5814849, 5182952, -12374875, -11159399, 1323924, -1805497, -5498095,
--4510253, 10099079, 10754598, 369367, 2734821, 7660074, 9587978, 1976222, -774705, -1441498,
-4523675, -1884954, 1151588, -1731946, -6701760, -152471, 6376416, -6581501, 8700530, 10988137,
-4654671, 384400, 1814087, 1183800, -7286412, 628139, 4184372, -3735548, 76236, -1694365,
-1217086, -2583960, 992137, 4100083, -5582384, -4744865, 8836358, 3619584, -1101659, 1365800,
--4890357, -21755084, -57050052, 24711632, 29519310, -13357348, -5815386, -1476932, 33427730, 1083406,
-7153268, 7058242, -7853348, 6649683, 15576236, -3113851, -14966350, 3739843, 28434294, -15058155,
--9417790, 6235756, -3960497, 21287468, -5319317, 9599789, -10958609, -13166759, -13146895, 13955422,
--4190814, 12388833, 14447733, -3724274, 1912871, 93416, -11783243, 3914863, -10686952, 12635794,
-30949534, 50818052, -620623, -1446330, -21505438, 11629698, 16640314, -497679, 18686866, 26708792,
-11242614, 15188078, -23417772, -14066018, 19474456, 50774028, -9291088, -29802778, 7604777, -9906342,
--528818, 13766444, 267362, -13593571, -6492917, -7015829, -34524020, -14433238, 234076, 5729487,
-12051678, -1983201, -13271449, -7648800, 3265249, -5383742, -13328357, 13741748, 33229088, 14373108,
-17902498, 1832340, -4529043, -27021250, -5968931, 7674033, 5983427, -6052683, 15334644, -4336307,
-8584029, -18915036, 1102196, -6524592, -5438503, 178778, 5255966, 5143224, -5331128, -10292889,
-9963250, -3905736, 8186745, 731218, -2062121, 671089, 1759863, 7567733, 254477, -1205812,
--3913789, -4340602, 6521371, 2156611, 6010270, -12874164, 8960376, 5174362, 2439005, -4669167,
--1705102, 9343164, -1125281, 363462, -7204271, 668404, -11053635, -2341831, 3198677, 9362492,
-4648765, 8269423, 1904281, -1410897, -8090108, 18234820, 6133214, 9613211, 3829500, 27430882,
--8506183, -3311957, -10631118, 6452115, -6565395, 6123013, 31095564, 6237367, -32742146, -7900056,
--9484362, -27981176, 17947594, 8543764, -3161096, 4081830, 1841467, -12504260, -26844, -785979,
--12439299, -3649112, 27138288, 39873940, 18845242, -13760538, -21842056, 10449119, 18252000, 2131378,
-14615774, -10021769, -6935299, 15032922, 4793721, 307627, -33302640, -43418900, -1335735, -25352656,
--14705431, 9197672, 36479840, 7988103, 1876364, -10457708, -12530030, -18153754, -15983721, 3082713,
-11045582, -3802120, -18023830, -29027536, 11632382, 857383, -16154983, -27052388, -18325014, -29787208,
--53864260, -32449552, -4810900, -6366216, 64874408, -7837779, -2390149, 37436544, 4418985, 2193118,
-22502944, -13319767, -32749662, -38021196, -5885179, -18162880, -20177220, -21393768, -23480586, 4687957,
-21260624, 33820184, 20067698, 4233764, 2214056, -8576513, 17428440, 3685082, -5264020, -21654152,
-4501663, 15927886, -753230, 37044, -7795366, 4469451, 8796093, 14577656, 4095788, 6259378,
-5564130, 7348689, 8996883, 9481140, -2627983, 7243999, 1466195, -4873178, -11375221, -13462038,
-1385664, 3385508, -13553843, -6495065, -13037373, 4420058, 6723235, 10525891, 15201500, 25825638,
-19092740, 19742354, 11642046, 7822746, -4680441, 2270427, 102005, -11754252, -18406620, -13622563,
--17818746, -11115912, -15484968, 20488604, -29073170, 7343321, 4614406, -12658879, -40772660, 27740120,
-8229694, -2618856, -41285912, 10988674, 6400038, -21794274, 3637837, 19126026, 11743514, 5572720,
--18696530, -3804804, -6984691, 3298535, -7046431, 1735167, -14486925, -20817170, 22826678, -15767899,
-34694208, -21406654, -19407346, -13131326, -24394340, 2150705, -486942, 36465884, -27034672, -28483686,
-14668924, 9394704, -23608898, -31361314, -3503620, -17668958, 20302310, 4335233, -25997438, 16864726,
--4464619, -39917964, 26182658, -17802102, 17077326, -29699162, -7305203, -821949, -12528420, -5116380,
-3382824, 37499896, -10161893, -3505230, -10821707, 10712722, -17792976, 13886166, 29255170, -1797981,
-29414620, 23142358, -3568044, 47227460, -2817499, 5462662, -1440425, 13334263, 47554952, -3911642,
--13220983, -50888920, 39368208, 14066018, 33603288, 11459510, -26491896, 11774116, 7506529, 4854924,
--23526758, 13420162, 2699387, 3877819, -12670690, -3675955, 16026670, 13772886, 561030, -1651952,
--1689533, -1841467, 3888556, 10096394, -20672752, -6082748, -2903935, 3301219, -4264903, 4590247,
-4399657, 6513855, -4863514, -10953777, 16982300, 26666378, 9290014, -13664975, -11787001, -5043902,
--4045859, 7228430, 3587908, -2655901, -16874926, -12048457, -13677323, -1323924, 13042205, 5758478,
-10994043, 4225174, -18387292, -3280281, 8008504, 17870286, 11158325, -7488813, -5634460, -4292820,
-2563559, 3117610, -389231, -1067836, -3511136, 28094992, -53687628, 2218888, -60441464, -20150376,
--10134512, 18600430, 56120728, 47718696, 17679696, 28236726, -18087182, -15220827, 2868501, -3974455,
-13114683, 4257923, -12491912, 18925236, 27804544, 23124104, 17332878, 14667850, -314606, 2737505,
--9249212, 26309896, 12369506, -4863514, -15977815, 5541045, 10890426, -2711198, 34393560, 35906464,
--20533702, -15155866, 913754, 27924804, 17471926, 4591857, 3554622, -6500433, -12381854, 7058242,
-42863772, -17165374, -21002390, -22879290, 22463752, 9252433, -12667469, -19771882, -31762894, -37644316,
-4282083, 8410620, 6953552, -8201777, -2660195, -10263898, 7588134, -30002494, -49376016, -22189412,
--3321084, -8292508, -19206020, 24899536, 41525356, -9189619, 21482890, 45832668, 29943438, 10713259,
--31403190, 5217312, 5792837, -27772870, -15300821, -4338991, -22085796, 24358370, 34662532, -1971390,
--7852274, -4168803, -9960029, -5522254, -13993540, -13738527, -4973572, -6777996, 5084168, -3007551,
--3715684, 6890202, -20848308, -2457795, 1832877, 21366926, -21677774, -3467649, -4855461, 4116189,
--13763760, -4799626, 4345433, -7519951, -12714714, -2037425, -872952, -12504797, 14912126, -20219096,
--2175938, -7421167, 4614943, -2092186, -5859946, -11788075, 499290, 6003291, -4110821, 2827699,
--34241088, 27611272, -3508452, 23722714, 14389751, 546535, 15731928, -6903086, -1768453, 13547401,
-16604880, 2558190, 83752, -545998, -15119895, -9822590, 4040491, -21075404, 565862, -7924215,
-510027, -17869748, 3043521, 994822, -16260746, 13574244, 5770289, 9186935, -20421496, -5513665,
-3845606, -1072131, 1473711, 11710228, 2587181, 3278134, -2349347, -4529043, -3202972, -1678795,
-7554848, -3424163, -13042205, 10557030, -17932562, -5632850, -6156299, 2146947, -8781598, -10401874,
-13644037, -1743220, -13698798, 8366060, -19102404, 15295452, 4752382, 718333, 15749108, 17533668,
-2428267, 4995047, -13174275, 17008070, -8332237, -11639361, -1012539, 2514167, 32148368, -14453102,
--23757074, 20344724, -7751342, 20328618, -3452080, 1333051, -8899709, 12312061, -20648056, -17121350,
--6788733, 8087424, 4820564, -1250909, 9880035, -12275017, -12431783, -8250096, 2925410, 3592203,
-723702, -533650, -3768834, 2130841, -17149268, 3471407, 3483219, -4132296, -1599875, 5168993,
--2762738, -7323456, 8848706, -4423817, 1080721, -375810, -2261300, 5983963, 2571612, -6213207,
--729608, -1475858, -5577015, -1196148, -2078764, -11410654, 3461744, 6973417, 5549635, -5179194,
-5178657, -8324721, -2625299, 209380, -5418638, 17029008, -7153268, -88985816, -169941648, -60316372,
--133006008, -151604832, 37460704, -4872641, 51227148, 197127184, 213702544, 150970240, 215222960, 176933328,
-58897424, 62124556, 46027552, -118398824, -121929288, -67728416, -118351584, -127957816, -42705932, -37557880,
--107821392, -81184008, -12982612, -48010220, -58766428, -14440217, -44924820, -79646408, -45259292, 15089831,
--31822486, -39283380, 47145856, -7773354, -44203268, 40669584, 75154952, -17148194, 18944028, 116335632,
-16208670, -37056976, 77280424, 67519568, -66566624, 38422240, 85146656, -26311506, 9481677, 147371072,
-112496464, 56756384, 206929376, 230348224, 117882896, 212154736, 273915840, 171976928, 162282656, 225223792,
-144879440, 92214560, 102109088, 53202832, -61710092, -119579944, -162224672, -277040960, -337111968, -382238656,
--432253024, -426240608, -461988160, -412734016, -306328352, -306341216, -241457152, -21568788, -12390444, 6324340,
-173333072, 136924624, 45683420, 90886880, 135238864, 50106700, 60397976, 137297760, 100008312, 20435454,
-82429552, 116239528, 50026168, 62649076, 142983760, 53582940, -22580254, 65940096, 46171972, -31615254,
-62284004, 138097152, 65064460, 101812200, 220379072, 183271616, 173681504, 258810976, 239046608, 164758704,
-143289776, 128441000, 48124572, -1900523, 6903623, -27049704, -86038392, -85689432, -98371392, -168444864,
--188407328, -180655456, -202628496, -243159040, -212962192, -205905568, -219639792, -170103792, -114982720, -90008016,
--56703768, 2044404, 22759032, 19047106, 31616328, 34708168, 17814450, 16254304, 31880468, 27560268,
-18758270, 22564684, 26389890, 19977504, 25969520, 39737036, 43741556, 42039676, 49045304, 52041580,
-43067784, 49382460, 45434848, 28339268, 14612552, 6326487, -397284, -5661841, -4162897, -4232691,
--8332774, -8964670, -3345243, 4051765, 14475114, 20694764, 24975772, 25930328, 23259396, 23247584,
-28804736, 27916214, 27014270, 31185220, 29529510, 21956410, 22815404, 21766358, 13243532, 10821707,
-13297756, 6174553, -708133, -2150168, -9614821, -20323248, -21838298, -24748138, -34369404, -38190848,
--35816808, -40867152, -43764644, -38876972, -38421704, -40087616, -35231616, -28348394, -26904748, -23046258,
--16352014, -16281147, -15825881, -11970074, -8026757, -6051609, -550830, 4383014, 6077379, 8376797,
-13872207, 18928458, 21829708, 25740812, 25997974, 23320062, 20241644, 18300318, 16487306, 14206141,
-11686069, 9198746, 7044820, 5297306, 4930086, 4467303, 3384971, 2837363, 2339147, 1272921,
-561567, 102542, -360240, -734439, -869194, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--4409858,
-3595961, 3853123, -1881733, 3867081, -2391223, -550293, 5157719, -2161979, 2434173, 1473174,
--5794985, -2631204, 4287988, -1717450, -861141, 2688113, 1765232, 1906429, 483721, 6626061,
-1101122, -1742146, 1456531, -2331630, 4088809, -1217623, -2304787, -1015223, -5427765, -1854889,
--4008278, 1274532, -105227, 1430761, -1628866, 2233383, 1030255, -274341, 653909, 336618,
-483721, 703301, -2889439, 7094212, 1012002, -2619930, 5236102, -1293859, -4591857, -5017059,
-4830228, -994285, -428423, 3197066, 323196, -863288, 2480344, -295279, 1420560, 396211,
-1815697, -991064, 1980517, -934692, 2360622, 3462281, 1857037, -2085207, -2156611, -1064615,
-898722, -2225867, 1514513, -1104344, 1889786, 2490007, -3156801, -1781875, 2680597, 787590,
--898722, 4172561, 2391760, 1981054, -248034, 1085016, -123480, 540092, -523986, 619012,
-208843, 284542, -992137, 1535988, 470299, 93416, -308701, 614180, 976031, -549756,
-1053878, -78383, 4519916, 853088, 993211, 3787624, 1074, 2722473, 1269163, -354872,
-246961, -3033858, 1351841, 200253, 4646081, 1622424, 1491964, 172336, 1340030, 5112085,
--4908611, 2714419, 679142, -3244848, -1484985, -2024003, -698469, -1879585, 1255741, 5912560,
-3694209, 4408247, 3479461, 6029597, 4367445, -5529771, -10024454, -1292785, 419296, -2461553,
-5208722, -250719, 7825431, -3703336, -3736622, 3368328, 137439, 256624, 3068754, -5776194,
-1428614, -4142496, 5401458, 3187403, -68183, 8256001, 320512, -813896, -1073742, -1475321,
--2101850, 3899294, 2046552, -2036351, -708670, -5783174, -2582349, -780073, 5994701, 4107599,
-692027, 3024194, 66572, 3222299, -41339, 1323924, -3507378, -2248952, 796180, 436476,
--227096, -1767379, 1578401, 1896228, -530965, -1814087, -373662, 1912871, -347892, 1014149,
--965831, -544387, -770947, 604517, -680752, 102005, -89657, 965831, -852014, 933082,
-1411971, -694711, 300111, 114354, -75699, 1746978, -608275, 441308, -700080, 693637,
-467615, 296890, -251256, 1537061, -122407, 76773, 607201, 1730335, 3673271, 8293045,
-2466922, 408559, 304943, 2369211, 2216740, 537408, 1352378, 1912334, -76773, -129923,
-2409477, 9375914, 3173444, 7324530, -4074313, -3323768, -1313723, -4330401, -5066988, -2001992,
-3842922, -6273337, -828392, -700080, -9879499, 2041720, -9980430, -3292629, -1279363, 2429341,
-91268, 2138357, -1899986, -54224, -6713571, 2536178, -2184528, -3738769, 777389, 1950989,
--251792, 543313, 2963528, 5184026, -8584566, 2412698, 654446, -2510945, -2687576, -513785,
-1264331, -1112933, -5134097, -1181116, 1488206, 2756832, -284542, 6500970, 644782, 329639,
-2716030, -4095251, 6192806, 1990717, 3712462, 1661079, 3120294, -600222, -500901, 1845225,
-1143535, -817654, -1764695, -1464047, -2969433, -52076, -4012573, 306016, 2472828, -181999,
--1658394, -3180960, 2939905, -1680406, 1245541, 462783, -416612, -3027415, 345745, -264141,
-842350, -912144, -792958, 281320, -891206, -1657857, -807454, -682900, -69256, -1087164,
--91805, -612033, 1536525, -252329, -676457, -246424, 868120, -295279, -1196685, -1378685,
-1590212, 35970, 237297, -869194, 4882841, 5339718, -209380, 5895380, 335007, -807991,
-690416, 462246, -1136556, -90194, -4176856, -2393908, 3659312, 4318053, -5127654, -1243930,
-2079301, -3422552, -9776956, 2396592, 3565897, 4207458, -2274185, -2608119, -3509525, 5287642,
-6021008, 1014149, 2354179, -4780836, -3888019, 4477504, 1665374, -3588445, 6216965, -6291054,
-1005559, 577673, 5827197, 2134599, -1334661, 936840, -2069637, 3199214, -7686918, -2285460,
--11058467, -4829154, 5542656, -483721, 8519605, -1183264, -7182259, 4507568, 957778, -2936684,
--376883, 332323, -2930242, 1883880, 5087926, 5760088, 121333, 2746095, -302258, 6556805,
--3382287, 2828236, -654446, -127775, 177167, 2261837, -709207, 8208756, 789737, 733366,
--1305670, 4832375, 1624571, -1644436, -3492345, 64961, 3279208, 1135482, 941135, -2156074,
--141197, 656593, -359167, -578747, -619012, -1154273, 868120, 69256, 365072, 694174,
-1709397, -685584, -1821066, 1975685, -557272, 193810, 13959, -237834, -257161, 783295,
-695248, 957241, -369367, 893353, -46171, 517007, 867047, -205622, 90194, 759136,
-1129576, 629750, 704912, 231928, 68183, 5929739, -8257612, -1213865, -5624797, -5835787,
-1974611, 1032403, 11812234, 538482, 4293894, -10012106, -2460480, 2113661, -5244692, 3331284,
-909996, 763430, 2818036, 3282429, 7721278, 3400004, -1319092, 2394981, -3973919, 1060320,
-3066070, -289373, 570157, 3388729, 4392141, 10726144, 2029909, -1678795, -7471633, -383326,
-5529234, -8817568, 886911, -713501, 2669322, -4454418, -5246840, 9283035, -6054830, 1861332,
--454193, -5924908, 13437879, 3423089, 7009924, 3753265, 7672959, -1487669, -2990908, 4877472,
--4627291, 3736085, -3702262, 2006287, 5268315, 2891587, -2467459, -465467, 2656974, -4782983,
--3570192, 219580, -630823, 7942469, -4466766, -7538742, -1190780, 4099546, 6667937, -4232691,
--7148436, -1611687, 9777493, 1245541, -77309, -3573950, 412317, -260919, 2972117, 3070902,
--267362, 1440962, 1606318, -4854924, -1174674, 1600949, -303332, 2752000, 1050120, 229781,
--2101850, -265214, -345208, 1025423, -393526, 2876018, -636729, -353798, -1520418, 273804,
--1904281, 33823, -270046, 681289, 1637993, 10201, 1360431, -140123, -1791001, -391916,
-98784, 936840, -3098819, 3641596, -12882754, 7384660, 2209761, -2842195, 3990025, -10522133,
--8767639, 1195612, -4299799, 10058277, 8948027, 9500468, -6250251, 3723200, 199179, 9469329,
-726386, 6708202, 2728378, -2771865, -8419210, -7641821, 2514703, -10198937, -91805, -2375654,
--4915053, -6798933, -3956739, 102542, 8305393, 71941, 3277597, -11678553, -6481643, -1206349,
--7282654, 550293, 7420093, -7918309, 3351685, -61203, -2653753, -704375, -1639067, 8132521,
-4413616, 4069482, -1876364, -2434173, 11220065, -3342022, -2974802, -9165460, 6782290, -13025562,
-1854352, -4265440, 2106145, 4664335, -3077344, -6941204, -4240744, 499827, 9530532, -4733054,
--979789, -6120329, -4880694, 3082713, 3354370, 7497939, -8670465, -52076, -4561256, -3033858,
-1899449, -3436511, -6796786, -3903052, -541166, 6299644, 6466074, 2229088, 407485, 945430,
-2984466, 259846, 516470, 1336809, -1749125, 194884, 2712809, -784368, 374736, 3242164,
--734439, -115964, 580357, 2360085, 46171, 370978, 919123, 404264, 2039573, -2332704,
--2523293, -172336, -881542, 26844, 1502702, -630823, 2723546, 1773285, -11988864, 3309272,
-1187022, 2097018, -16535624, 14922327, 379031, -249108, -219580, -5315022, 1818382, 269509,
-5388574, -4575214, 6032819, 1780801, -3640522, -6315750, -7926362, 4092567, 782221, -612570,
-621160, -4534412, 5054640, 3801046, 9266392, 5544266, 3707094, 5152350, -1128503, -4997732,
--3732327, 382252, -2602750, 4053912, -4419522, -6717866, -7380365, 511638, -10122164, 4727149,
-5400922, -6019397, 6283537, -7285339, 3762928, -10783052, 1529008, -1924145, 860067, -2816425,
--97711, -10027138, -1626182, -3406983, -6342056, -1650341, -4940823, 1659468, -4446902, -2531346,
--6411850, 2928631, -6128919, -388158, 9987946, -1625108, 357556, 3289408, -2146410, -10014790,
--11440719, -1851668, -7981660, 463856, -2134599, 7566122, 605590, 2888366, -7518341, 735513,
--1651952, -1311576, 5532455, 1423245, -597000, -2916820, 1543504, 2192044, 824097, 2953864,
--68183, 1678259, -813359, -231928, 478889, 571231, 1080184, -209917, 3230889, -836982,
--2668249, 1183264, 9127, 887985, 1096290, 746251, -351114, -1327682, 852014, -2384244,
-991064, 4900021, 3397856, -10203232, -221191, 1941862, -9490804, -10819559, 6082211, -10619844,
-2190970, 7256884, -5090073, -12221866, -5169530, 398895, 8250096, -3194919, 14467060, -881005,
--1014149, -8176544, -5767604, -871342, 3017752, 914828, -2843268, -2384244, -551366, -2986076,
--6030134, 5167920, -4976257, -3020973, 5504001, 1695975, -8559870, -9135395, -8377334, 7444789,
--7783555, -8434242, 14039711, -8643085, 6260452, -1124208, 3872450, -12466679, 5859946, 813896,
--1932735, -526134, -2344515, 4150012, 3081639, 11923903, -2879776, -2160369, 5719823, 11523934,
-3247532, 2389613, -5315559, -3495030, -9329206, -1923072, -140123, -21475, 6932614, -2074469,
-3753265, 12053289, -1743757, -365609, -1298691, -163209, -12079596, -13846975, 807454, 9255118,
-212601, -18406620, 4928475, -6400575, 3202972, -11471321, -7082938, -1736241, 432718, -4166118,
-1956358, 4323422, -423054, -515396, -308701, -1921998, 1997697, -2200634, 1988570, 331249,
-711891, -1917166, -1255741, -2697776, 1373316, 241592, -763430, -2589865, -496069, -752156,
--1602023, -1909650, 1273995, -2177549, -766115, 1918240, 649614, -1042066, -81068, 82141,
--2738579, 322659, -1707250, -2245194, -162672, -576599, 5097590, -863825, 6038724, -930397,
--2567854, -3707094, 5122286, 3160022, -2865817, 2324114, 5212480, -2744484, -17769354, -7734163,
--3494493, -1983738, 7922604, -13931263, -10229538, 8537321, 5291937, 21496312, 6054294, 4949950,
-5905043, 2719251, -3861713, 422517, -4067334, 6842957, 299037, 6907918, 201327, -205085,
--9447854, 4887136, -6412386, 4963372, -992674, 5206037, 2056753, 6991133, -10931766, 1269163,
--7586523, 9104257, 547608, -9154723, 12078522, 8930311, 5732708, -5487895, -18417894, 5293011,
--2007360, -2291365, 9012989, -878321, 4167729, 8713415, -1933272, -11064373, -98247, 4955856,
-3221226, -2973728, -1236951, -8109972, 3008088, 1106491, 1709934, -1219234, 1143535, 6975027,
--4350802, 3182571, -1152662, -265751, 12562779, -3377455, 5767604, 4145717, -3969087, -4420058,
-1560147, 948114, -2123325, 1059246, -2210835, 2025614, -1976222, 4785668, 425202, 4575751,
-868120, -115964, 5748814, 2044941, -1717987, 1619203, -1362578, -1794760, 822486, 2294586,
--2192044, 1464047, -1138703, -2235531, -116501, 2289755, -1068373, -2488934, 751082, -1162862,
--3871913, 1670742, -5906, -1968169, -1180579, -645856, -2201171, -179852, 2836289, 4100620,
--3893388, 530965, 4539244, -5114769, -20094542, 4049617, 4835597, 20276004, -4303557, -3308199,
-9574019, 12583180, -20623360, -11783243, 11207717, -5883032, 339302, 4572530, -13148506, -28760712,
--11312407, 16285979, 12945031, 10945187, -3371013, 6119792, -3386045, 5632850, -6017786, 1959042,
--14522358, 3513283, -5144834, 7391102, 7191386, 215822, -6869800, 6726456, 4235912, 11640972,
--1235340, -7285875, -3635153, -18435610, -9431748, 4474819, -1255741, -12361453, 8341900, 11429445,
--16274168, 15678241, -1523103, -1767379, 9860708, 1994476, 9322763, -1267552, 3320547, -3595961,
--1920387, 4690105, 18756122, -6832219, 11934640, -1046898, 1097901, 4455492, 10390600, -9667435,
-1098438, 15211700, 4531191, -7038915, 4045859, 5979668, 1387811, 11943230, 8643622, 15024869,
--1384053, 4274566, -157840, 475668, -8402567, -5869610, -6684580, -3281355, -33823, -1453310,
--2716567, -2440615, 4482872, 6465000, 2969433, -3413425, 5229660, -1584306, -856846, -3204046,
--2544231, 3253975, 1083406, -1258962, 197569, -3550864, -2975339, -3495567, 67646, -1979980,
-3049964, 1817308, -1303523, 1292248, 3575024, -2252174, 1643362, 2026151, -1912871, -1793149,
--2035278, -399432, -581431, 2157684, -752156, 304406, -934155, -13071733, -3333432, 13481902,
-8565775, 10162966, -6597607, -3332358, -1059783, -1428077, 14446659, 1860258, -14860587, -6632503,
--4543002, 9525701, 1862942, 2043331, 8099772, 17718350, -26203596, 17369384, -3449933, -3112778,
--6772090, 5158793, 5349382, 10201084, 1591285, 9720585, -1006633, -2614561, 3023657, -1644436,
-4976794, 8934606, 1063004, -692027, 11774116, -8771934, -1624571, 2854006, -1023276, 10356777,
--12247099, 1096290, -10479720, 1683627, -11110544, -1591285, 345208, 6071473, 15053324, -8804683,
--4836133, -9127879, -528281, -13331042, -8644159, -8775155, 5907728, 10842645, 140660, 21508122,
--13653164, 19216220, -13566191, -3204583, 5942624, 4344897, 19082002, 10963441, -14284524, 7431904,
--5987722, -19788524, -493921, -12559021, 15785615, 23941222, 15262166, -3017752, -8492224, -3170223,
-13418552, -2037425, 6995428, 769873, 3102577, 4694936, 1503775, 1842541, 1586454, -5898064,
-4068945, 25233, 1719061, -2306398, -1926293, -5603322, -3106335, -1962263, 3417183, -1751810,
-2291902, 2837363, -1090922, -761283, 79994, 3237332, 2091649, 1167157, 6135898, -145492,
-6410776, -5751498, -2512019, 4068945, 3976066, -2440078, 1362578, -2056753, -4159676, 435939,
--1474784, -13663902, -8779987, -344671, 16441135, -3273839, 7224672, 15262703, -13073344, 5506148,
--20855288, 12444131, -12837120, -6340446, 20004348, 6707665, 21573620, -9386114, 38655, -9943386,
-6160594, 27683748, 7034620, 9298604, -14161044, -2826625, 583042, 10570451, 9344775, 17666274,
--14589467, -5168457, -15867220, -13503914, 881542, 953483, 9219147, -9262097, 6421513, -21532282,
-13302051, 10042707, 4720706, -3769908, -2647847, 1246077, 6248641, 1960116, 1676111, -255551,
-14432164, 12320651, 5270462, 970126, -11133629, -10995116, 29908542, 964757, 3629247, 16590385,
-7289633, -4886599, -3656091, 10500658, 21501680, -15816754, -6648073, -17805324, -16532403, 21007222,
-9343164, 73551, -4276714, 6869264, 15963857, 10124849, 16474958, 4495220, -7534983, 11887396,
--8717710, -22146998, 6386080, 649077, 246961, -85362, 9096204, 15791521, -3372086, 8294656,
-9252970, 8393440, 882616, 1757179, 8092792, -30602, -2675765, -1934346, -3583077, 7894687,
--4801237, -1472100, 1881733, 4397510, 516470, -879931, 8433705, 1658394, -1963874, 6323803,
-8058433, 3644817, -3571265, -168041, -1685238, 2391223, -73551, -104690, -380105, -2024540,
-2703682, 969589, 569083, 2653753, 3499862, -776852, -4135517, -1670205, -668941, 4711043,
-1544578, -3517041, 1048509, 1822677, 5025649, 2179159, -437013, 4702989, 76236, 2425046,
--1969779, -64961, -185220, 813359, -685047, 6516539, -14008036, -10451266, -4101157, -13019656,
-14673756, -1640141, -3744138, -12393128, -2069101, -11535745, -28617368, 4987531, -3531000, -9008157,
-6460168, -15155329, -930934, -8272644, -22950158, -5233418, -9965398, -10844256, 18315888, -4883915,
--6637335, -3310883, -443992, -4628364, -6499896, -1016297, 4810364, 15538118, 11662984, -420370,
--934155, -26011932, 1557463, 3578782, 10637560, -5988258, -5448703, 39522288, -6827388, -19288162,
--18808198, 16405701, -11019275, 4752918, -22289270, 5559299, -6292664, -11873437, -10345502, -25267292,
-4003447, 7292855, 17923972, 5323612, -9808632, 14208289, 1606318, 13368623, 14747844, 42739756,
-11376295, 3002719, -16688632, -18570902, -5089000, 2025077, -2464238, -16801912, 7472170, 19580220,
-4417374, 13940927, 21428666, 19338628, -8295730, -15397995, -10667088, 1408749, 3308199, -1843078,
--16510391, 3212099, -13453985, 4128537, -6045704, 923418, -7494181, 4886599, -1360968, 3128347,
-255551, -3086471, -7669738, -1672353, -340376, 4460324, 5945309, 4877472, 6871948, 463856,
-5850819, 10579041, 74625, 2054605, 5735929, 2105071, -5518496, -2983392, -9272298, -2622078,
-5251135, 3144990, 462783, -1138166, 3239479, 2001992, -2143189, -4180077, -8163659, 1103270,
-1009317, -1068373, -2845953, -537408, -3060164, 1596117, -5761162, -17280800, -7495255, -2703682,
-5287105, -6337761, 10224707, -5359046, -7093139, 19887310, 10326175, 22620520, 259309, -6611566,
--8969502, 23985782, -20657182, -7727183, 27999428, -16940962, 5575405, 5805185, 7245073, 1618666,
-15723338, -4942434, 14148159, -5405217, 3074123, 3359201, -7317014, 10502269, -15982647, -11138461,
--10380936, -4789426, -14209899, -26171384, -4786741, -7858180, 4131759, -6767258, -34764540, 9626632,
-21794274, -1290638, -4669703, 34121904, -42335492, -9186398, 23572928, -5814849, 18287434, -13483513,
--8376260, 6326487, -40404904, 13032541, -13776644, 20163260, 14810658, -21497386, 42349988, 6225555,
-2222109, -2199560, 16672526, -30687542, 12526809, -1468879, -4893042, 8191040, -19842748, 28026272,
-25438554, -47084652, 6737193, -9392020, -44196824, -7630010, -19746112, 10847477, 2761664, 7633768,
--17860622, 27698780, -2741263, -7463580, 12779138, -553514, 9069897, -1959042, 14334990, 325881,
-7132330, 2210298, -660888, -1547262, 7999914, -5830418, -6556268, 126165, -7697119, 11462731,
--2539936, -5968931, 584116, 5265630, 2503429, 5431523, 2078227, 13303661, 3119220, -7259569,
-13774497, -7508140, 7819525, 11876121, -3358128, 2658048, 8303783, -5761162, 435402, -7509214,
-8118025, 1165010, 25794500, -11758010, -33597380, -33707976, 2518462, 4023311, -14899778, 8623221,
--18816252, 5856725, -8607114, 17134772, 21986474, 585726, 21267604, 19339700, -10965588, -409096,
--13988172, -3610994, -3390340, 7385733, -1497870, -2269890, -2459406, -22560926, -34053720, -13768591,
-17564806, 13553843, -14688788, -16874390, 9641665, 9774809, -22193706, 10997801, -14810658, -2864743,
-16935592, 23570780, 37581, -14173929, 8943733, 1681480, 14642080, 2435783, 12197707, 12599287,
--3718368, -48724256, 5383742, 1153736, 19543174, -7280507, 19934016, 19759534, -13418552, -65978212,
--8951786, 2579665, -8031052, 39494372, 41441064, 28875066, 41178000, -10798622, 19301584, -16407312,
-27484032, 19230716, -32639604, 40980968, -42603928, -36303212, -34227668, 10732586, 25551834, 21257404,
-7056095, -26759794, 24490440, 3317325, -8945880, -11521787, 1341104, 23117662, -18083422, -7301445,
-35374424, 6451041, 16115791, 3003256, 1611687, 8633421, -13521631, 7115150, -5595269, 164283,
-3519189, -3533148, -7067369, -4689031, -6203007, -13587129, 2898566, 12389907, -2615098, 12670154,
-9772124, -8296266, -6608344, -6181532, 7768522, 4842039, -16576426, -9645423, 718870, 687195,
--2593087, 2063732, 10637023, -384936, 8424041, 766115, -6505265, 4085588, 14106820, -26162256,
--49355616, 10287520, 18090402, -2727304, 24896314, 9489730, -31164820, -7918846, 6529961, 7573638,
-8476655, -6358699, 14327474, 1151051, -9356586, -4330401, 5049271, 20422032, 26665304, 20138564,
-31994822, -30923764, -8646843, -8083129, -31637802, -7646653, 5343476, 1526324, 3425773, -12657269,
--14315126, 15959562, 35963372, -17148730, 18521510, -12265890, 4751308, -11320460, -2014877, -28193240,
--10325101, -1699196, -39023000, -22859964, -38194072, -32266478, 21225728, 50140520, 39994736, 1073205,
--2619930, 29528, -9134322, -17384954, -61022896, -20473036, -8842264, 4860829, 2502892, -21609592,
--15130096, 7787313, 26702886, 15877420, 8533026, 17415018, 29959008, 11655467, -30211336, 22908818,
--17942226, -9460739, 17721036, 40022116, 8522289, 51348480, -12399034, -53645752, -6317897, -17404818,
--32945620, 49359376, 13907104, 15967615, -238908, -4540854, 14175540, 11681774, 538482, -2145336,
--8741332, -1875827, -2705830, 13379360, 16175384, 19366008, -2379949, -871878, -952409, -863288,
-12621298, -5647882, -4460861, -7675107, -6071473, 7102802, -1671279, -401579, 1979980, 4462471,
-7331509, 9126269, -1491427, -5708549, -9866077, 4649839, 1613297, 4369056, 11875048, 10394895,
--5574331, 2471217, 5231270, -9597641, -3101503, -2371896, -9245991, -4376035, -620086, 7954817,
--13295071, -20837570, -34230352, 21442624, -3180960, -20610474, 10181220, 22728966, 19699942, -40018356,
--34553548, 8820252, -15973520, 4264903, 19795504, -10531797, -7730405, 32627256, 8960912, -4376035,
--10186589, -9072045, 12333535, -7161321, -1290638, -812823, -13079786, -4967130, -21860846, -29147796,
-10597295, 16129750, -18362058, 13660680, 9383967, -6252936, -12699681, 2113124, 23284628, 13466870,
-4301947, -23033910, -25784300, -12493523, 7133404, 29148332, -21614960, -11380053, -9757092, 17459578,
-46875808, 12505334, -45589468, -10028212, -5251135, 23609972, 657667, 12291660, -5843840, -10714870,
--10001905, -25759066, 24254218, 25691958, 10426570, 27155468, -8338142, 17607756, -7975755, -19379966,
--21468930, -22956064, 4202626, -43091408, 45439680, -2005750, -17088602, -24861956, -20327544, -1258425,
--13269301, -3922379, -23667418, -14567455, -42147588, -11638288, -27728846, 10389526, -9771051, 8351564,
-9594957, 10279467, -6867653, 23480586, -5187247, 17042430, 744103, 4193499, -1202591, 7481296,
--3494493, -9243306, 2037425, 2805151, 8815420, -13860933, -4770098, 3730716, -13673028, 160524,
-5170067, -17110612, -7430294, 4228932, -2280628, -13085692, -20287278, -12146168, 7562364, -3775276,
-9475235, 2359548, 474594, 13939853, 1072131, 12001212, 4721243, 7512972, 27880780, 16729971,
--7697655, 4320200, -9594957, 470836, -4495220, 35093104, 26348550, 10092099, 5232344, 16529719,
-14982993, -23772108, -34270616, 11697343, 26826366, 38359428, 244276, -8560407, -23914914, -14054744,
-16135655, -447213, -20411296, -41206988, -41181220, 8695698, -12362526, 23124104, -47449724, -15676631,
-9261560, 6840809, 9066676, -15022185, 6925635, -1272384, -8887361, -1767379, -22248468, 20557860,
-25393458, 18847928, -29963302, -16036871, -678605, 10173167, 15130096, 16151225, 12999255, -3395172,
--2087354, -4067871, 21517250, 59540056, 37665788, -31010200, -30431990, -19396610, -39217884, 46275052,
-24761560, -14352170, -40678172, -39060580, 44493712, 27307938, 6037651, 34160024, -35403952, -3940633,
-2299418, -9161165, 3565360, -13244605, -35804996, 8900246, -27338004, 36685464, 34827352, -13277355,
--6046777, 370978, 4109210, 39037496, 40109624, -63418952, -35214972, -20404852, 8138426, 17770428,
-17388176, -24598888, -26175142, -31156230, -3681861, 32219234, 894427, 6375879, -7181186, -34462816,
-8118025, -14479945, -17818746, 7814156, 60477436, 20329690, -11082626, -15495705, -14236206, -11976516,
-16041166, 18769544, 21984864, -3970161, 14267881, -21384642, 5383205, 7721815, 9944997, -7736310,
-4385699, 17765058, -4385699, -5110474, -2741800, 17532056, 11678016, 27328876, 7149510, -9809168,
--7109782, 10080825, 34120292, 27504970, 6009196, -20379082, -24721294, -8115341, -5741298, 5845988,
-2683281, -10107669, -12418898, 23341536, -38104948, 33253784, 49027052, 53202832, -59936804, 11034308,
--1861868, -5133023, 25401510, -10813117, -17797270, 17588428, 8965207, 36461588, -3714073, -28852516,
-873489, -13163001, 21538188, -33155536, -11742441, -15579994, -22094922, 30280056, -22143778, -3144990,
-20852604, 12106976, -7350300, -11582990, -31032750, 4011500, 40881648, 24897388, -1756642, 12156905,
--9220758, 33390686, -22506702, 15422691, -12422119, 20740398, 34473020, -7662759, -22389664, 11050414,
--30534534, 50571092, 5932961, -26847304, -9189083, -41884520, 5342403, 59974924, -10921565, -35302484,
--24649892, 36764384, 10985453, -19320374, -978716, 9465034, 20638392, 50527604, -41229540, 18353468,
-41436232, -6295349, -48959944, -47436304, -27755690, 83027624, -60772176, 20567524, -64005212, -30798674,
-133728640, 12826920, -58290224, -56055764, -64561948, 81420768, 10511932, -15443092, -64689188, -15585363,
-20245402, 65876744, -23607288, 7126962, -28483686, 9749039, 40065604, 24366960, -35791036, 16853452,
-6603512, 15461882, 13814762, -36435280, 1279900, -8696235, -13726715, 7145215, -13307956, -26882738,
-10330470, -7979513, 34929360, 5116380, -32044214, -36728412, -11617887, 936303, 28182502, 21070572,
-5007932, -17192754, 7307350, -799401, -13540421, 881542, 17980880, 15646029, 3974455, -27116276,
-6837588, 10430865, 17226576, 15097347, 11129871, -5366562, -17428978, -6731288, -4053912, -5556614,
-8462696, -14344117, -3867618, -5180268, -6699612, 21807696, -56304872, 9904731, -50585588, 22379464,
-23964306, 47298328, 20949776, 10868952, 12394739, -14703821, -36109400, -25110526, -23703924, 10161893,
-5915781, -6132140, 21636972, 33363306, -14892262, -20917028, 23177254, 4140349, -30816928, -7071664,
-13991393, -25420838, -4473209, 5642514, 12974559, 6925098, 18340584, 31426276, 5566278, -20007032,
--2294586, 6070400, -15889232, -7092065, 14701136, -11135776, -20124070, 28033252, -6742562, -6921340,
--11132555, -10992969, 18175764, 4645007, 4166118, 24195698, -11540577, -18660560, -1068910, 1816771,
--7907035, 6200859, -1300838, -6634651, -1188632, -23536958, 5267778, 4630512, -3992709, 12709882,
-8585103, 4453881, 5689758, -24310588, 28819768, -10770704, -10408853, 8842264, -26331908, 8594766,
--19716584, 2313914, -15595563, 5087926, 6896644, 10682657, 965831, 9477382, 14283451, -5492190,
--3207804, 7931731, -470836, -5003100, 4361540, 1024887, -3275986, -5034239, -4574677, -3016678,
-10314901, -9833864, 10005663, 703301, 2720862, 5015985, 2988760, 7298223, -394063, -181999,
--4440460, -966368, -6124624, 12402792, 919660, -5538897, -9051644, -2946348, 4810364, -8841190,
-11753178, -5687611, -14908368, 864362, 6334003, -848793, -430034, 1547262, -7047505, -4254702,
--26296474, 42213088, -2301029, 23848342, -21853868, 2581275, -4047470, 7456063, 6730214, 12729209,
--6668474, 9337259, -5986648, 5093295, -1056025, 4005057, 10096931, -1380295, 15720117, -6478422,
-11849815, 510564, -619549, -4595078, 7547332, -6219113, 6806987, -4193499, 371515, -3499325,
-3675955, -2879239, 8891656, -2930242, -6422050, 14314052, -10095858, 7427072, 5963025, 2100776,
-6883759, -8967892, -6255620, 6505265, 6084358, -4013647, -942208, 6944962, -744640, -9967008,
-4221953, -5123896, 4954782, 6739878, 3121904, 2229088, 2110977, -10719165, 5069672, 2866354,
--3312494, 3758633, -5102958, 2298881, -2596308, -602906, -1449552, 3579318, 7020661, -10007274,
-8710194, -1866163, -3598109, 4952634, -6995965, 3142306, 4734665, -1316944, -2611877, 3266323,
--1466195, 1868848, -1043677, -3641059, -661425, 3662533, -1122060, 1341104, -898185, -2703682,
-1552094, 1405528, 2547453, -3866008, 2884608, -380641, -1669669, 3425237, -4087198, 6073621,
-3031710, -2446521, 6199249, -609885, -2621004, 126702, -2618856, 3655017, -4262218, 4210679,
-1627793, 2208687, 969052, -2618320, 1970316, 851477, 370441, 270583, 51540, -1138703,
-1015760, -2731599, 3048890, 1146219, -3105261, 10505490, -35705136, -111235896, -16381005, 53992572,
-27906550, 131262256, 24379844, 28213104, 17726940, -35378184, -49851148, -35498980, -63896764, -54886996,
--31175556, -12775917, 36496484, 99694248, 79027400, 68106904, 38662220, -30687004, -49984292, -36739688,
--68867120, -65174520, -20052128, -9148280, -15282031, 25267830, 39439076, 26139170, 48110612, 37243808,
-11314018, 34258808, 6896644, -5091684, 3068217, -20649666, -54427972, -46187540, -39347268, -55077048,
--23168128, 16093779, 10959146, 35275640, 39829916, 34910568, 35717484, 36592048, 23077396, 22679038,
-2370822, -20318954, -38086696, -25915296, -35862440, -47240884, -23390928, -21665962, -17772574, 6702834,
-17804250, 17169132, 33282776, 41767484, 20075750, 29451128, 24999930, -6954089, 2790655, 11319386,
--13993540, -12533788, -22375706, -39969504, -40281960, -31855772, -33148020, -6450504, 13770202, 9309878,
-26182120, 39493836, 30984430, 28775208, 29407642, 19753628, 6371047, 1910724, -9266929, -17143898,
--18609556, -27480812, -34964256, -37014028, -32044214, -28596430, -16495359, 3760244, 17976586, 41459320,
-54621784, 48119204, 39703216, 33872796, 19422378, 4161823, -17011292, -34704408, -47583404, -49632104,
--54958940, -40343700, -17002164, -4183298, 11357504, 32729798, 41998336, 45558328, 46680924, 39243116,
-16462610, -1105954, -12227772, -26508538, -34762928, -32407138, -29035052, -20714090, -8677981, 1166621,
-11362336, 15033459, 11312407, 12700218, 9842454, 6940667, 5160940, 5612449, 1630477, 1927904,
--704912, -2715493, -3616363, -2928631, -4643397, -5155572, -5890011, -4970351, -4926865, -3838090,
--2816962, 416612, 1785096, 3362423, 4625143, 6303938, 5869073, 5486821, 4158602, 3415036,
-1660005, -222801, -2260764, -3211025, -4683125, -5371394, -5515812, -4553202, -4558571, -2728378,
--954020, 1069447, 2522220, 4196720, 4169876, 4653060, 4553202, 4736275, 4203699, 2286533,
--846645, -2369211, -4050154, -4757213, -4413079, -3476239, -3455301, -2323577, -1741609, -461709,
-772557, 2214056, 3180960, 4277251, 4177393, 3694209, 2515240, 1178432, -209917, -959925,
--2129767, -2925410, -3491809, -3375844, -2894808, -1573032, -515396, 761820, 1632088, 2141578,
-2193118, 1863479, 1089311, 905701, 479426, 188442, -266288, -522375, -768262, -783832,
--811749, -644245, -504659, -276489, -158377, -15569, 23622, 133144, 138513, 161061,
-100395, 93416, 76236, 71404, 74088, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--3562139,
-2681133, 1685775, -3515968, -622233, 4472135, 1325534, 1097364, 2467996, -594316, 673773,
--1175747, -4686883, -1853278, -233002, -1045825, 1347009, -1463510, -453656, -3983045, -3758,
-669478, -2800319, -625455, -3535295, -1275068, -1124208, -4299799, -1963337, 1344862, 1869921,
-4780299, 2845416, 6111202, -661962, -1021129, 901943, -2137820, 5334887, 290984, 2522757,
-4202626, 745714, -1737314, 1734093, -2285460, -2998961, -783295, -1294396, -1692754, -5543192,
--1826435, 30602, 833224, 1659468, 428960, 2825015, -3183645, 2493229, -57982, 624381,
-1721745, -2185065, -4944044, -2108292, 2047626, 3071439, 2283312, 202400, 2327336, 1804423,
-3179887, 1627256, 1347009, -2121177, 120796, -336618, -474594, -1803886, -2288681, -958851,
--566936, -193810, -1777580, 25770, 197032, 686658, 109522, 1254667, -723702, 578210,
--1134945, -1621350, 755914, -224949, -95563, 1149978, 738734, 1009854, 13959, 110059,
--1004486, 577673, 116501, 349503, -200253, 1555852, -392453, 99321, -725850, -522375,
--809601, 671089, -570157, -1389959, -891206, -2522757, 2493766, -3905736, -2381559, 6417755,
--983011, 5679558, -2831457, 597000, 2833605, 1289027, 234613, -3730179, -5312875, -5543729,
-651224, 193810, -1534914, 809601, -4902705, 9912248, 1163399, -5434744, 1508070, -2822867,
--3081102, 2992519, 4229469, -11274, 988916, 2048163, -255014, 72478, 3330747, -1749125,
--754841, 247497, 6025839, -67646, -652298, -2208150, -3485366, 1893007, -824634, -3575024,
--1591285, -4314295, 632434, -3908420, 135828, -2947421, -944356, -2586107, -5442261, -2199023,
--299037, 5231807, 807991, -1448478, 2870112, 4794794, 761283, -6410776, 3020973, 33286,
-1252520, 2173254, -1458141, 4146254, -1998770, -3606699, -3768297, -6702297, 675384, -2255395,
--2353105, -2993055, -3143916, -135291, -3433826, 1150514, -500901, -1926293, -689879, -2182380,
-89121, -49929, -2515240, -1015223, 1078037, -324807, 206158, 621697, 280247, 485331,
-364535, -648003, -2250563, -366146, -820339, 690953, -254477, 316217, -400506, 64425,
-2147, -451508, -1400696, -1136556, -158914, -476741, -518617, -419296, -1042603, -354872,
--4859756, 8383240, -1984812, -7423851, 673236, 2673080, 335544, 2472828, 2030446, -5852967,
-2225867, -1279900, -144418, 352724, -992674, 4661650, -1308891, -2842195, -162672, 3750580,
-2384781, 1465658, 2233383, 8931921, 2421288, -2907156, 4075387, -3573413, 1315871, -2859375,
-8380018, 1413044, -2607045, -1503239, -2614561, -815507, 5587753, -4266513, -3612604, -1003949,
-4641249, 2735357, -4127464, 1315871, 1034013, -2340757, 204548, -8900783, 3085397, -1953136,
--1643899, -5596343, 8754217, 612033, -4447439, -3428995, -4364224, 467078, -884763, 610959,
-45097, -5078799, 6941204, -3754875, -3490198, 2847027, 803159, 2829847, -1861332, -276489,
--4162360, 513249, 988916, -5241471, -3944928, 525060, -3679176, 1483911, -3285113, -813896,
--882616, 2524904, -4262755, -4358318, -858993, -577673, -1013612, -153008, -1879048, -353261,
--1352915, -1023813, -857920, -1260573, -1639067, -11274, -2220498, 747324, -1456531, 139050,
-197569, -401043, -805306, 30065, -552440, 1323924, -128849, -840740, -9664, -1600412,
--295816, -920197, 133681, 392453, -1156957, -1351841, -337155, 7232188, 261456, 1592896,
--5911486, 1866163, 3460133, 2530810, -208306, -2950643, 7779260, 1378148, -1497870, 3743601,
-3076270, -3585224, 4786204, -3156801, 7864622, 1138166, 7024956, -732829, 1279363, -2708514,
--7851737, 882079, 212064, 297427, -1314797, 1651415, 4223564, -1022739, -4005057, -2662880,
--5717675, -1573569, -2787434, -3030636, 586800, 2009508, 3191161, -3690988, 2647311, -2464774,
--3027952, -398895, 2709051, 514322, 717796, -5754183, -5505611, -1039919, -1588601, -4204773,
-9259949, 4282083, -516470, 1785633, 3761855, -9264781, -4626217, 6233608, -3400004, 5847061,
-1394254, -1205812, -6154688, -4585952, 7475391, 3930432, 7073275, -7345468, -435402, -5093295,
--331249, 1818382, -2641405, 869731, 622770, -4574140, 4191888, 462783, 703301, -745177,
--8070781, 885837, -1879585, -2566243, -2467459, -494995, 1503775, -1315871, 719407, -2871723,
--518617, -1318555, 1923072, -358630, -129386, -937377, 158914, -980326, 721018, -1627793,
--679679, 525597, -363462, -111669, -2684, -24159, 854699, 457414, -32212, -1149441,
--1076426, -1246614, 1168768, 468688, 1657321, 796716, -574989, 673773, -12133283, 627602,
--1573569, 3263102, -7349226, 2326799, -2490544, 12228846, -3266860, -6365679, -2340757, -5342940,
-1641751, 4526896, -1468342, 8541079, 858993, -2546916, 2045478, 1023276, 2211908, -3054796,
--552440, 3165391, 5007395, 1968169, -1021129, 2390686, -4505958, -1421634, 6301791, 4496831,
-7402913, 5244155, -142808, -3798362, -7933342, 5440650, -883690, -5795522, 2978560, -1548336,
--8883603, 208306, -7408819, -610422, 6664716, -1158567, -4988068, -2313377, 6364605, -5556077,
--9069360, 9164386, -1748052, -2258616, 2137820, 1141388, 1073205, 2184528, 2199560, 1197222,
--6686191, -2560338, 5140539, -722091, -1992328, 1533303, 8835285, -4512937, -4924180, -2268280,
-3611531, 1815161, -7987029, -3571265, -2754148, -3504693, 2611340, -498753, -612570, -2990908,
--2358474, -6336688, -3639985, 1496259, 201863, 977642, -260919, 3712999, 3864397, 651224,
-1408749, -1969779, 441308, 159988, 1578401, -2420214, -1097901, 272194, 55298, 1091995,
--46708, -1386201, 1391569, 491237, -2654290, -545461, 771484, 450435, 456877, -692564,
-357556, -1320166, -1270237, -1131187, 680215, -595390, -644782, -221191, -10695005, -296890,
-2770254, 10158135, 10498511, -3476239, 5191542, -6869800, 2164127, 4425427, 6717329, -2049236,
-10110890, -1985886, 8564702, -4791573, 7163469, -3708168, -12112882, -2804077, 2930778, -4225174,
-4571993, -2676838, -2968359, 1232119, -13271986, -4336843, -350577, -2364916, -872415, -6448357,
--2282775, -2346663, 2018098, 13380434, 7672422, -7893613, 4195646, 10686416, 2585570, -3844533,
-2598455, -2909304, -3286724, 7674033, 5304822, -5455146, -808528, 5451924, 11454678, -3782256,
-6192269, 17063368, 7286412, -7961796, 3105261, 1925219, -9629854, 1364726, -7973070, 3460133,
--8681203, -2088965, 271120, 4002910, -5695664, -1613297, -2866891, -5159867, 6505802, 5603322,
--395674, -3796751, 935229, 949188, 847719, 1535451, 4810900, 908386, -6597607, -164819,
-7827041, 202937, 1691680, 1551020, 2313377, -2509872, -1235877, -4006668, -1772748, -3688840,
--388695, 2138894, -561030, -2101313, 1073742, -449898, 370441, -1149978, -860067, 1446330,
--198105, 3499325, 774705, -772557, 1771674, -62277, -918586, -1345399, -1885491, 770410,
--1041530, -494458, 828392, -99858, 1556389, 90194, -2253247, 4655208, -2326799, -10760504,
-2470143, -8645769, 1383516, -2870649, 11156178, -5678484, 1563905, 2929168, 1095217, 4045322,
--1654099, 12215424, 945430, -7935489, -1488206, -5853504, -950798, -1910187, -5486821, -6879464,
--1778653, -4433480, -2106145, 7813083, 2892661, -6619619, 2564096, -7904351, -1512902, 5737003,
--10794327, -9522479, 5397164, 5077725, 2618320, -333397, -6564321, 2583423, -3247532, -6193343,
--2877628, 322659, 1935957, 10222559, -4057670, -1171452, 519154, 4758824, 2490544, -3560528,
--4599910, -8222178, -2529199, -1834488, -4539781, -5280663, 3329137, 6822019, -59593, -4388383,
-7545721, 1438814, -3765076, 913217, -1136019, -1001264, -2637110, -1494112, 4887136, -3927748,
--5891085, -3397856, 3037616, -4552129, 7973070, 3565897, -1354525, -3304977, -3757023, 2255395,
-4939750, 10167798, -2977486, 5193689, 140123, -39192, 523986, 1615445, -1911261, 26307,
-1224066, 2123325, -1380295, 1479616, -1191317, 4916664, 1848983, 3691525, 7516, 2501819,
--171799, 2217814, -482647, -226023, 2572686, 966368, 278099, 1361505, 267362, 2558190,
--1954747, 581431, 1722819, 2348810, 2003602, -813359, -2666638, -67109, 1605244, 332860,
-255014, 2105071, 5546414, 10596758, -7931194, -293132, 7211250, -3474629, -5203353, 6629819,
--10501732, -657130, 1922535, -1380295, -3927748, -4632122, -2236067, 1799054, -578747, 5004711,
-2513093, -1694902, -4010963, -2932389, 8247411, 307627, -10117332, 4694400, -6405944, -6279242,
-3823595, 7260642, 7402376, 5614596, -194347, 3789235, 2573759, 3576634, -3326452, -183073,
--3000572, -7288560, 3043521, -1893007, -412854, -1619740, 693637, -1217623, 8020315, 14931991,
-2448668, -2607582, -57445, -10692858, 10349261, -7296076, -4737349, -7021735, -8596377, 14514305,
-782758, -8091719, -2936684, 10010495, 5158793, -7614977, -5690295, 11476689, 918586, 1171452,
-14849849, -7113003, 4073240, -5346161, -14755360, 6914898, 7092602, 1170916, -8521215, -1210107,
--1855963, 1747515, -3701725, 5384815, 3318936, -11675869, 4945655, 5573794, 7117298, 1218697,
--6240588, 10415296, 1764158, -937914, -805843, -3507915, -3682398, -1331977, 655519, 3137474,
--11811, 246424, -339302, -2813741, 1176284, 1253594, 553514, -1296006, -775778, 2097555,
-751082, 2390686, -1569274, 556735, -3656628, 405874, 3448859, -4632659, 640487, -3631395,
-4217658, -1765232, -97711, -2829310, -17180, 2433099, -290984, 3321084, 11274, -952946,
-2408940, 5088463, 6485938, 11972221, 10969346, -375273, 9361955, 4240207, 9545565, 9224516,
--15173583, 5579163, -4867809, -6529961, -4745939, -1379221, -9652939, -1975685, 2439005, -8246337,
--16988206, 3959960, -1136019, -15300821, -11210938, -10002442, -5557688, 608812, -2820720, 3709778,
--1962800, 6168647, 11978127, -6758668, 4117800, -2619393, -5391795, -3909494, 792958, -1105954,
--426812, 8938364, -300648, 9009768, 11659226, 3527779, 5057324, 7738994, -938987, 1619203,
--11380590, 10766946, -9269613, -3219078, -2908767, 1015223, -2515240, -8840653, -7784628, -17142826,
-15659988, -17512730, -16976932, 2950643, 16419660, 5872294, -2048163, -4043712, 7587060, -8184060,
-9473624, -2676838, 1262184, 1040456, -6178848, 6626061, -7311645, -5955509, -643171, 2433099,
--6982006, -1040456, 3847754, -496606, -1869921, 5109938, -3274913, -6264210, -1398549, 3257196,
--4137127, -2389613, -2814814, -578747, 1963874, -1297617, 628139, -989990, -2245731, 716186,
--1425392, 1525787, -1493038, 2182380, -588411, 4021163, -518080, 1591285, 2210835, -1315871,
--2631204, -224412, -609349, -99858, -781147, 1898912, 141197, 2438468, -2087891, 897111,
--4531191, 259846, 241592, -1625108, 1303523, 7084012, 9243306, 9242233, 10062035, 23796266,
-10657961, 13580687, -6788196, 22025130, -12656195, 561030, 4813048, -144955, -8355859, 2712809,
--2348273, -18858664, 7076496, -4780836, 1966021, -1803349, -6289443, -27380, 5540508, -7636989,
--4000762, -1221918, 4368519, -11514270, 7215545, 2710124, -10579041, -856309, 4231617, -9565966,
-3512747, -11464878, 5217312, -1011465, -3759707, -474057, -7530689, 9576166, 11288785, -10849624,
--6247567, 4882304, -3918621, 2994666, 2674154, 702764, 299037, 13073880, -3369939, -8777839,
-8043937, -355945, -6959995, -5810017, -10951630, 2078227, 2898566, 5421860, 5154498, -5048197,
--8527121, 4713727, 2292439, 16354162, 1651415, -2046015, 338229, 1078574, -4908074, -2176475,
--6134287, 6692096, 3797288, 4354023, -1364189, -10478110, -9621800, -3139084, -930934, -3770445,
--6695854, 1850594, -2980707, 4310537, 673773, -709207, 2598992, 2777233, 4345970, 4148402,
-3258270, -33823, -1090922, 1176821, 2887292, 2297808, -1426466, -1264868, -936840, 756451,
--107911, -827318, -48318, -5155035, 530965, 3361886, 2476586, -4015795, -2992519, 5752572,
-2974802, 5705327, 2148021, -4171487, 3854733, -1019518, -3264175, 614717, -4612795, -2472828,
--1260036, 1725503, -1017907, -12868796, -14463839, 24157580, 16847010, 21597244, 1386201, -13846438,
-4889821, 11275900, 8028368, -3525631, -8759586, -2570538, -3216394, -4244502, -7541426, -3018288,
--6333466, 16109349, 2579128, 2668785, 127238, 948651, 1714766, -5941551, 10660646, 6027450,
--631360, 3885872, -1513976, 10979547, 2025614, -959925, -17941152, -1316408, 1131187, 1721745,
--3357591, 2257005, -8497056, 14579266, 11802570, 11400991, 9942849, -7802345, -10818486, 8317741,
-2562485, 4074313, -708670, -12583717, -9109089, 743029, -7100655, 99321, -5963025, -2580202,
-7561827, 2421825, -5391258, 1948305, -13923747, 443992, -23608898, -11981885, -22305376, 19282792,
-17367774, 18551574, 22465364, 10896332, -3710852, -9942849, -3016678, -531502, 3230889, 17813914,
--5870147, -13498008, 10319733, -8582418, 4498978, -1948305, -1938104, 4195646, -4000225, -7289097,
--2061047, -8979703, -1902134, -8071854, -1852742, 1159104, -705985, -951335, -2190433, -2799782,
--5581847, -59056, 2944200, 484258, -2805688, 1010928, 4895726, -631897, 3277597, 1817845,
-1945083, 1399623, -6451041, 5688148, -2485712, -2024003, 3813394, 1338419, 4214974, 457951,
--5363878, -970663, 134755, 966368, -3274376, 184684, -213675, -8565239, -11525545, 10165114,
-13189308, -6476811, 12245489, 1728188, -5199058, 4925254, -17747342, -5505611, 5006858, -5653788,
--10883447, -20512764, 10079215, -8814347, 2373506, 13289166, 3190087, 15495705, 11854110, 6739341,
-2544768, -9149354, -2684355, -4789426, 839129, 8629663, 4498978, 1782411, 7368017, 21066814,
--1099512, -17916456, -7866770, 2895882, 4302484, -1025423, 445066, 1697049, -7642358, 471373,
--16863652, 3793530, -17641578, -6432788, -13661217, 6726456, -6815040, -11209328, 17105780, 4797479,
-1394791, -7698729, -10261751, 2562485, 4067334, 1506997, 5573794, -8746701, 19230716, -23350664,
-6074158, -9733470, -14173392, -7941932, 12239046, 3687230, -13287018, 9385577, -10581189, 25934624,
--2418067, -2848637, -12617003, 1508070, -16831440, -9031779, 22453552, -9041980, -10197863, -6662031,
-6713571, 840203, 9517111, 4740570, 4975183, 6933151, 3769908, -641024, 715649, 3304441,
-1416802, -1839320, 5573794, -1756105, -1943473, -4207458, -3774203, -1701344, 2056753, -3314641,
-243203, 1610613, -1365800, 1403381, 260382, 5493263, 2882460, -15569, -1123134, 537,
--401043, 3278134, -2923799, 2972117, -825707, 1309428, 4609037, -1471026, 241592, -648540,
--2319282, 5632313, -794032, 4390531, 24475408, 25183540, 23757074, 5132486, -6271189, -3880503,
--15176804, 12467216, 442382, 7348689, -4487167, 2416993, -5500780, -4210679, -8744017, 4846871,
--9108015, 15163919, -39289288, -11380590, 358093, -11829414, 8536248, -12161737, 2593624, -4649302,
-12455405, 2285460, 11992086, 946503, -2739652, -108985, 4435628, -13708999, -9836012, -10645076,
--1446867, 13506062, -26407070, 9270150, 23097260, 2913599, -16871706, -584652, -14199699, -13596256,
-9540733, -1709934, -11589432, 6562173, 1035624, -4264366, -6520834, 3849901, 9637907, 5896453,
--13475997, -9804873, 7807714, 11753715, -9470403, -12517682, 6270116, 13158169, -15845745, -471910,
--14141180, -19412178, 23242216, -3782256, 3638374, -4273493, 14425721, -3313567, 3572876, -7648800,
-12553116, 7008313, 11552388, 13367549, -13197361, -14552960, -5908265, -2731062, -8732205, -21934934,
-2473901, 1268089, 35433, -1551557, -3526168, -2892124, 6367289, -488016, -2684892, 5905043,
--6395743, -3359738, 2432025, 11529303, -3440806, -3476776, 599685, -1387274, 3998078, -1327145,
--603980, -1960116, -3189550, -7995619, -11525008, 2100239, -789200, -8750459, -4376035, 2368675,
--3043521, -9924596, -5530308, -622770, -1716913, 841277, 2851858, 1233193, -7516, 8216810,
-2835215, 12907987, -4124779, 23085, -18434000, -8367670, -3927211, -15562814, -22544284, -3870303,
--7266548, 22038550, 6895570, 32567126, 6206765, -8811125, 4645007, 6525129, -25877714, 1932735,
-23463944, 15083388, -14912663, 2532957, 11926587, -20669530, -2988760, -10126459, 9366250, -7827041,
-6309307, 1876901, -3769908, 1592359, 348966, -6338298, 7595113, -13889387, -5198521, -5705864,
--17601312, -3327526, -1969779, 740882, 1697586, -4453344, -5268851, 33293512, 10281078, -12296491,
--22840100, -7969849, 2760053, 24194624, -5352603, -2630131, -12868259, -3078955, -8937290, 19922742,
--15428059, 17824114, 22405770, -21784610, 15083388, 6010270, -9050033, -7946227, 5776194, 10760504,
--48153564, -5975374, 296353, -6213744, 13172665, -6117107, -35900020, -13675176, -10196789, -15957414,
--15610059, 3253438, 3500398, -8859444, -7880191, -14687714, 1927904, -5181341, 1659468, -6145025,
--7305203, -8273718, 2372970, -1342714, 5650030, -7106024, 4041564, -511638, -7328825, -15626702,
--3654480, -529355, 5555004, -1847373, -20975546, 4785131, 10708427, 4549981, -112743, -7069516,
-7965017, -652835, -2089502, -12475806, -1828582, -4032974, 11050414, -1211181, 2094333, 483184,
-2682207, 7199976, -4555350, 830002, 744103, -1932198, 969052, 3350075, -14879914, -12688407,
--4611721, -10173704, -7010997, -2503429, -6332393, -8022462, -7760469, -1890859, -1880122, -3196530,
--5609228, -2151242, -3857954, -677531, -1861332, -6859600, 5530844, 32288490, -934692, -37592240,
--21012590, -23256712, -4326643, -12854837, -504659, -19080930, 31369904, 18647138, -3313567, 24663850,
-771484, 26590142, 6418292, -15315317, -20860120, -13160317, -16820166, -7519951, 4173098, 11477226,
--3686693, 3767760, -13884556, 2397666, -20052666, -1805497, -1101122, 6916508, -7501161, 32217086,
-4208531, -833224, 21422224, -8296266, -15107547, -8891656, 13150653, -1002875, -8556112, 3585761,
--68183, 27395986, 6815040, 75162, -10582799, -16550656, -41731512, 2694555, -33142652, 16802448,
-56989920, -40707164, -8654896, 9206799, -6962142, -7184944, -11353746, 9505299, -11656004, -39384852,
--10413685, -39274256, -8162586, -1176284, -24557550, -3514894, -35362076, 15332496, -3499325, -22491670,
-55253680, 4247723, 22567368, 18831284, 30515206, -18747532, -1188632, -11325829, -4010963, -7684770,
-14535243, 9130564, 13068512, -26889716, -5322538, -14662481, -18785650, -15869367, -9611063, -2192581,
-10574746, 8597451, 6098854, 7580618, -2049236, 2384244, 15106474, -2878702, 14951855, 4271882,
--12790949, -3646964, 4719632, -5701569, -2080375, 17337710, 397821, -5439039, 19683298, -9194988,
--1240709, -16243029, -3788698, -11384885, 8592619, -8747238, -3687766, -3433826, 3381750, -3988414,
-7787313, 3221, 8051453, 2014877, -2801929, -5648956, -7410966, -5829881, -11323144, -65821448,
--6505265, -16522202, -18129056, 24529632, 19534586, -22802518, -17948132, 45893336, -4756140, 15167140,
-2743410, -1966021, -4849555, -4533338, -14376329, 249108, 5646809, 8559333, 5893232, 16674674,
--12382391, 104153, -12058121, -7002944, 5430986, 23486492, 15220827, 20787642, 18664318, -3687230,
-7001334, 11378442, 414464, -18286360, -3018288, 26321170, -4250944, -36592584, -15920907, 4468914,
--30976914, -13154411, -31755378, -21677774, -19704236, 30100742, 20689932, -6052683, 20707112, 8216273,
-29053844, 19662898, 9597641, -50067508, -10893111, 2656974, -43976708, -32054952, -12090333, -8244190,
--51574504, 11574937, 29087130, 38887172, 46501076, -15145665, -29714732, 42413, -29984240, -22195318,
--41779296, -46483356, -32743756, -27518930, 31389232, 1717450, 6578816, -27999428, -29393682, -26304528,
--2335925, 41049148, 51970180, 1706713, -18642842, -14245333, -20527796, -53919020, -23935852, -23854786,
--6390375, -1794760, -12030740, 14464913, 198105, -3981972, -19080930, -24967182, -12947716, -13989245,
--22028350, -4734665, -5459441, -1984812, -5778879, -10006737, 13653164, 8483097, -1227824, -12110734,
-9053254, 14852534, 1271847, -12436615, -6458020, 10438918, 2958159, -2652679, -11934104, 10426570,
--2299418, -3797825, 1322850, 8126615, 2185065, -2159832, 1376537, 6339372, 1163399, -21005612,
--50077172, 18849000, 1924145, -34216932, 31049392, 15170898, 9258876, -7835094, -30604326, -8049843,
-466004, 28925530, 38632692, 1844152, 10146323, 2090575, 814433, -2274722, 4879620, -16775605,
-54586888, 12775917, -18345952, -18389976, -8384313, 1997160, 26486526, -13436268, -4465156, -419296,
-13217225, -13482439, 6783901, 497142, -3415573, -45828912, -14607721, 14148159, 23157390, 7948374,
--5442261, -13508209, -30353608, -3680787, 4529580, -7530689, 153008, -8225399, -19693498, 19067508,
--4857608, 6565932, -21028160, -4727686, 52505440, 3580929, -6222334, 5784784, 6544457, 4595615,
-26268556, -10147934, -12390981, 19466940, -2595771, 11386495, 7009387, 16915728, -7022809, -20040318,
-9611600, -9458592, 1237488, 74327632, 71615896, 31935766, -6723772, -4076998, 8792335, 33474438,
-15356119, -10458782, -1416802, -4852776, -19387482, -20683488, 10852309, 5201206, 2612414, 16524350,
--2523830, -9834401, 9791989, 3857954, 14583561, -21976810, -17828946, -22325240, 3022583, -10253698,
-998043, -4800163, 7706782, 8447664, 18188112, 10269804, -19751480, -14819785, 6813966, -12435004,
--7055021, 1083942, 6166500, -8506720, -19420232, -2577517, 483184, -2093260, 8356396, 1839857,
--15698642, 4351876, 24938190, 28423020, 21343840, 24191940, 17468168, 21774410, -6153078, -1810866,
-8445516, -2864206, 8318815, 7372848, 11233487, 20685636, 37041408, 5350456, -38277824, -9739912,
-8956081, 6206765, -8902393, 29645474, 14874009, 11817603, -9309878, 34627636, -1713155, 1326071,
--8854612, 18706194, 12394739, -25654914, -37876780, -10170483, 6715182, 2735357, -7002408, -34561064,
--3213709, 13083007, 3129958, -11256036, -4571993, -9988483, -13209709, 8826695, 10278930, -21930104,
--24940338, -8179765, -31009128, 9092446, 27727236, -23475218, 26664230, -11804718, -14276471, -26412438,
--37343132, -41752452, -39775156, -20025822, 261993, 15796890, 7296076, 15737297, -20854750, -46612744,
--18339510, -44772348, -79296368, -29702920, 64397128, 110442936, 64655900, -26297012, -21351356, -96963720,
--87351584, 61601644, 10943040, 80726056, 83250960, 86900608, 29351270, -33718176, -42375220, -46963856,
--54166516, -7223598, 54649700, 92560304, 29736742, 10272488, -3818226, -45057964, -66756140, -44533444,
-9162776, 64173792, 30021284, 41842644, 33851860, 13041131, -23641110, -25941602, 1598265, -14016626,
-5617281, 31841276, 33404108, 25069188, 5313949, 13177497, 1007170, -20070920, 4960151, 9397388,
--2773475, 4464082, -5438503, 45871860, 26668526, 29421600, 17790828, -14629195, -39026756, -55195160,
-9059160, 20496658, 38507604, 39103528, 49707804, 24854438, -35660576, -44328356, -54477904, -8723079,
-616328, 30920006, 17915920, 10460930, 16879222, -26473104, -80688480, -53451404, -49435072, -10372883,
-7256884, 19934554, -4209605, -9821516, -17898740, -21132312, -3553012, 7644505, -24987582, 34979824,
-16791712, 31067646, -68302328, 15490873, 9204115, -20984674, 15274514, -15690052, -7792682, -4664872,
--9807558, 29436632, 54138064, -15710453, 10833518, -7511898, 12919798, 27597312, -8500277, -4983773,
--15080167, 7967165, -9602473, -29840896, 21736292, 36910412, -4945655, -19242528, -17781164, -38767984,
--10790568, 29493004, 19891604, 10315975, -42862700, -24755654, -18751828, 37896644, 32730336, 28858422,
--83591336, -55498492, -6870337, 41342280, 88025352, 423591, -106110392, -38858716, 3423089, 35824860,
--3040300, 19704236, 14709726, -46208480, -20402168, -12715251, -27893128, 2018098, -52262236, 8253854,
-20512764, -62909460, -40467180, -19550154, -8197482, 69835096, -547071, -106938240, 10154913, 15187004,
-16211354, 42273752, 19535658, -45624364, 2170032, -1650341, 91450592, 64717104, -53832048, 49052284,
--28759638, 19583978, 50443316, 18299782, -27886686, 25522306, -11233487, 6641630, 17407502, -1756642,
--18924162, 34761856, -22406844, 25512642, -12021077, 13785771, -4292283, 28000502, -9881109, 22032646,
--38301980, -6462852, -566936, -4887673, 12163884, 23871966, -24387898, 49081276, -19276350, -16724066,
--33494840, 24570972, 51354388, 10296110, -67914704, 5607617, -15362561, 33090576, 16105054, 14991046,
--27365920, -1750736, -17463338, 16549046, -7181722, -10755135, -4101157, 22396644, -5481989, -13582297,
--16898012, 12759274, 1847910, 12165495, -7617662, 439160, -13035226, -827318, -2851322, 6250788,
-1789391, 13773960, -3000035, -4007741, -14442901, 9823664, 3364033, 8747238, -48855, -8228621,
--10762114, 3240553, 2488934, 7453916, 23659364, -56435332, 8038568, -41430864, 7578470, 35223564,
-31142808, 10218264, -20151986, 4067871, -11965779, -2939368, -14853608, -10964515, 7663296, 2086280,
--21633750, -2465311, 11287174, -2377801, 1291711, 4109747, -13793824, -13653164, -338766, 9082782,
-1221381, -21990770, 1855426, 11323144, 3565360, 2654827, 23054310, -2508798, -6124624, 8288213,
-8837432, -15551003, -17260936, 12841952, 2495913, -13236552, 8924942, 3889093, 4332012, -9250823,
-3754875, 10472741, 1275068, -13029857, 17733920, -2120640, -19850266, 631360, 15558519, 4879083,
--12986370, 11861626, 3933653, -18090940, 7465727, 966368, 18518288, -16738024, 1523640, 12783970,
--29355028, 972810, 12693239, -452582, 8801462, -4847408, -18788334, 2532420, -19881940, 18711562,
-9655086, 5302137, -7380365, -7758322, 15440407, -13259101, 13779329, 15160698, -21613886, -6980396,
-937914, 16784196, 274341, -9666898, 6213744, -11716134, -693637, 1744294, 9897752, 718333,
-1636919, -6032819, 10300405, -3401077, -11997454, 10964515, -4839892, 4754529, -2711735, 7919920,
-9954660, -11376295, 2006287, -6142877, 2698850, -6242198, 22124988, -6203544, -12402792, 10028749,
--5583995, -1828046, -6308770, 6576132, 6026376, -8892730, 5009006, 8765491, -4506495, 636729,
--12344810, -28123982, 45632416, 6292664, 20543902, -17999134, 7747048, -4031901, 5373004, 4839892,
--7807177, 2913062, 8238284, -4992363, 18112950, 664646, 452582, 6055367, 5832029, -833224,
--4789963, 7644505, -1342714, -5535139, -1236414, 7683697, -8582955, 1662689, 3701725, -10902774,
-13322989, -2814814, -6595459, 20503638, -8614094, -12288975, 9368934, 5113696, -5811091, 8826158,
-7055021, -2611340, -3013457, -1724966, 2583960, 5033165, 2909304, -145492, -3668439, 10521596,
--11425687, 10085657, 1491427, -1345935, 2743410, 3128884, 3207267, 362925, -10178536, 2733210,
-8588861, -6277095, -127775, -84826, 6519761, -756451, -2668785, 9908490, -5176510, 5281736,
--10454487, -3918084, 9938554, -9628780, 9552007, -2583960, 6257231, 7672422, -8893267, -3067144,
-10793790, -9170292, -574452, 1066763, 3198140, 738198, -1336272, 329102, 716723, 4954782,
--4387846, 1036161, 3106872, -392990, -2317672, 489089, 1784022, -504122, 549219, -1967632,
-2166811, 3065533, -5578626, -941135, 9383430, -4659503, 2608656, -767189, 5305359, 1464047,
--3088618, 539555, -689879, -3223910, -2291902, 11116449, -2003602, -2632815, 1501091, 1180042,
--972273, 2310156, 4507032, 79994, 1097364, 361314, -1083942, 623844, 1251446, -2197413,
-1383516, -204548, 10712722, -37781216, -120830312, -6137509, 65150360, 29242822, 138766640, 11844983,
-29326574, 1230508, -40429600, -50955492, -34489660, -62100396, -43421044, -27322434, 1022202, 47426104,
-93452584, 68751688, 59871308, 19489488, -32482300, -47766480, -42903504, -50617800, -56092808, -22756348,
--10721312, -4909685, 27436788, 36352068, 27464168, 50821812, 32866164, 12167105, 34153044, 788127,
--14770929, -9808632, -30570504, -62799940, -38118908, -36770824, -37430640, 1947768, 17513266, 12055973,
-46198280, 37827388, 26135412, 37204616, 39633960, 11201275, 11922829, -4231080, -34029024, -47392816,
--36145908, -47502340, -33709052, -11810086, -8295730, 2909840, 25917444, 20222316, 18330384, 36489504,
-30241402, 22165252, 37768868, 10313290, -7672422, -1582696, -15066208, -32786706, -18986440, -41472740,
--52320756, -30908196, -26004954, -11354283, 30480846, 41019084, 38348152, 44130252, 36408436, 20629264,
-19986630, 9625559, -4202089, -11263015, -21001854, -31178242, -31107912, -35283156, -36934572, -31688268,
--10715943, -3779034, 12526809, 31780074, 35502200, 35008816, 41030360, 32531692, 24472186, 20244328,
-6736656, -15875273, -28122908, -45986216, -58580668, -54976656, -43457016, -21962316, 5632850, 29387776,
-40496708, 46462420, 48568564, 41781440, 29655138, 15029701, -9559523, -23853174, -31381716, -36566276,
--31868120, -24114630, -16514686, -6933151, 7757248, 10098005, 13931800, 15859167, 14251238, 11206643,
-9087614, 5993090, 5408975, 2290828, -1725503, -3134253, -3041374, -5001490, -5328444, -7093676,
--8138426, -9179419, -7223598, -5677947, -2936684, -325881, 4667556, 7592429, 9059160, 8913131,
-10022306, 8800925, 6479495, 2731599, -1291175, -5437966, -6752763, -7977365, -7904351, -8789651,
--7717520, -5583995, -1465121, 1134408, 3344169, 5185100, 6529424, 6298033, 6855842, 6331319,
-5337571, 3164854, 974958, -2584497, -4889284, -6817187, -6794102, -6506339, -5331665, -3772592,
--938450, 598611, 1988570, 3254512, 4522064, 4980015, 4960151, 3805878, 2895882, 1393180,
-163209, -1280437, -2283849, -3639985, -3945464, -4173635, -3545496, -2755759, -1115081, 220654,
-1824824, 2705830, 2957622, 2472828, 2287070, 1906429, 1676111, 916976, 188979, -734439,
--1352915, -2070711, -2260764, -2221572, -1614908, -959388, -178241, 202400, 667867, 842887,
-1013075, 921807, 784905, 541703, 404264, 157303, 9127, -141197, -185757, -218506,
--226023, -214212, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--2823404,
-606664, 3182034, -341450, 234076, -4857608, -2471217, 653372, 6309844, -4161287, 1273995,
--6667400, 6730751, 391916, 2432025, -835371, 1020592, -1329292, -2384244, -5803038, 2379412,
--5817533, -2747169, -3305514, 3218541, 2547453, 1200443, 2657511, 5061082, 282394, -4692789,
-3001645, 447213, -268972, 2451353, -972810, -1733556, -6835441, 1051730, -1993402, 1435593,
-2801393, -3730716, -1514513, 3303904, 1005022, 350040, -3503083, 8666170, 5204964, 806380,
-4169876, 3418794, 3316789, -8010651, 452582, -819265, -2152852, 1908039, 1278290, -1322850,
--1530082, -472446, -2425583, 2306398, -941135, 4591320, -212064, -1227824, -2240362, -4099010,
--781684, 3079492, -175020, 671626, 3635690, 960999, 4211753, -127238, 605590, -481036,
-4531191, 4014721, 4060355, 849867, -42950, 1780801, -129386, 521302, 48855, 164819,
--379031, -1311039, -1114007, -277025, -1270774, 543313, 586263, -567473, 1302449, -570157,
--427349, -316754, 512175, 112206, 1160178, 62277, -20938, 55298, 1516124, 723165,
--156229, -459025, 33823, -259846, 836982, 395137, 1617055, 363998, 2059437, 7208566,
--3514357, 2400350, -2006287, -3139621, -1298691, -2176475, 3928285, -3266323, -6060199, -1553168,
-1575716, -5046587, -3061238, 5681705, 9813463, -1664837, 3740380, -3378529, -3566970, -164283,
-1018444, -439160, -119722, 3642669, -6251862, 2028298, -478889, -1311039, -5274220, 453119,
-103079, 2957085, 865973, -4115116, 5402532, -4319664, 5039608, -571231, 896574, 2055679,
--616865, -2534031, 3934727, 971200, 5264556, 803696, -4685273, 8453569, 6698002, -2343979,
--713501, -1628866, -5900212, -3177739, -992137, -1011465, 2348273, -3234110, 235686, 2318209,
--14496, -88047, -399969, -554588, -3233574, 5113159, 140123, -109522, -1636383, -568546,
--4714801, -4169340, 1356136, 3413962, -453656, -883153, -27380, -33286, -2426657, 4583267,
-603443, 1518271, -1214402, 1252520, 762357, -187368, -105227, -198105, 40802, 1088774,
--624381, 690953, 713501, -138513, -206695, 572304, 1203665, 1097901, -804233, 307627,
-355945, -600759, -362388, 1724429, -263067, -79994, -1370632, -1235340, -2093797, -762894,
--7494718, 9299141, -1989107, -1057099, 6652368, -2556579, 3445101, 14747307, -1735704, 470836,
--5600101, -4514548, -6984154, 4097399, -2867965, 2018098, 3892851, -4384625, -3744675, -2734284,
-344134, 1482301, -5425618, -2105071, 2410014, 2076617, -2135673, -855235, 3358128, -3406446,
-563178, -1676111, -594853, -2361158, 2069101, -2163590, 933619, 1986959, -874026, 6219650,
-287763, -805843, -4546223, 579284, 6641630, 947577, 2260227, -6019934, -8616241, -3106872,
--7408819, -6533719, -145492, -2800319, -230854, -7932805, 6842420, -7341710, 1111860, 5090073,
--4537633, -7672422, -5454609, -1583232, 5146982, 4578435, 6878927, -3996467, -3511673, -2799782,
--2400350, 4992900, 1305670, -2012192, -1067299, 2396592, 2715493, 854162, 1269163, 1758252,
--340913, -2811056, -430570, -1846836, 747861, 287763, 660888, 609885, 185757, 1240172,
-196495, 1439888, 176094, -1006633, 1462973, -1603097, -1034550, 379568, -392990, 1475858,
--826781, -604517, -243203, 238908, -518080, -939524, 957778, -260919, 718333, -784368,
--756988, -937377, -1100585, -667331, -996969, 1552094, -1285806, 8017094, 829466, -3230352,
-451508, -2675228, -597537, 5607617, 9413495, -3226057, -3296924, -8551280, 1079647, 2137283,
-4859756, -3230889, 5240934, 820876, 8071854, -6487548, 1037235, -12242804, -1348083, 1450625,
--2990371, -2763275, -1081258, 4495757, -3693135, -6443525, 1823751, -9448391, -2057826, -4546223,
-2080375, -1018981, 3191161, 404801, -7193534, -7784628, 212601, 4122095, 7691213, -1544041,
--3130494, 6425271, -7104950, -3881577, 3428458, 3045132, 5090610, -4876936, 180926, 1950452,
--3065533, -1051193, 3006477, -4429185, 5745593, -2518462, -1068910, -6150393, -5096516, 2443300,
--12885, 96637, -867047, -3782793, 3558381, -2385318, 4425427, -96637, -5855114, -6163278,
-2246805, -3110093, 1096827, -8765491, -8351027, -1353989, 7859254, 33823, -1621350, 369367,
-1132261, 817118, -361314, 1232119, -4099010, 741956, 690416, 1219771, 1576790, 1728188,
-921807, -2321967, 165893, 2001992, 933082, 521302, -1147293, -1429150, 323196, -29528,
--474057, 1876364, -41339, -159988, -1324461, 2347200, 1954210, -144955, 166967, -1198296,
-679142, 711354, 324270, 76773, 775778, -1087701, -565325, 4747013, -13127031, 2973728,
--5735392, 4745402, 5432060, -6237367, -11515881, 1551557, -1588601, 7200513, -4419522, 10453950,
--4486094, 6896644, -8662949, -3249143, 3536369, 5112085, 1391033, -97711, -5336497, -754841,
--4211216, -5253819, 2821257, -4493073, 1676111, 955093, 2078764, -2581812, 4835060, -981400,
-4153770, -1013612, -8119099, -1408749, -2636036, 751082, 7993471, 443455, -749472, -483184,
--3319473, 2721399, -3132642, 4186519, 4543539, 1606318, 1713692, 8046621, -2063732, -1530082,
--6544457, 4556961, 4022237, 793495, 995896, 789200, 286152, 2309619, 4888747, 3237869,
-1831804, 1736241, -1311039, 6380711, 2146947, -1393180, -5004174, 2451353, -1522029, 9346386,
-5291937, 1124745, -4388920, -1683627, 7122130, -2849711, 892279, 4093641, -2359548, -2951716,
--5740224, 658741, 2036888, -514859, 2694555, -2293513, -879395, -1802276, 1966021, -238371,
--674847, -2797098, 615254, 634045, 1600412, 1867774, -692564, 252866, 2098629, -232465,
-2130841, -220117, 620086, 3120831, 626528, 3208878, -281857, -787590, -237834, -358093,
-78920, 159988, -2504503, 844498, 1951526, 133144, 769873, -671089, -16847010, -9156333,
-3373697, -3299609, 6764037, 6745246, 10189810, 4206921, 4117800, 2502355, -12279311, -2761127,
--1705102, 1085016, -1236951, 3802120, 2705293, -4734665, -3774740, 3133716, 5967857, 7518877,
-6491843, 8542690, -4700305, -4705137, -6230924, 6580964, -3825742, 5433134, -1388348, -307090,
--5835250, -3515968, -3340948, 4931160, 6101001, 1052804, 6099391, 8713952, -3479461, 2183454,
-10250476, -5185636, 3323231, 3451006, 378494, 7683697, 9877888, 7486128, 17136382, 3154654,
--2439005, -3204583, -2943663, -217433, 3012383, 5165772, -952946, -1712081, -1817845, -4627291,
-1925219, 2448668, 4438849, -10735808, -1472100, 2670933, 7096360, 4914517, -9142912, -6808597,
-1724966, 1672353, 7405598, -6561100, 410169, -697932, 783295, -9320616, -2512556, -3236795,
--2253784, -3854733, -1603097, 251792, 3563749, -48318, 201327, 1348083, 1705639, -3587372,
--558883, 222801, 16643, 1224066, -1220845, -2360085, -1568737, -1812476, 2526515, -2469606,
--1165010, -2836289, 704912, -642635, 1799054, -2600603, 1078574, -910533, 1060320, 912144,
-187368, 2170569, -2097018, 1046898, 1225676, 324270, 2589329, 4055523, 8126078, -1059783,
-1654099, 6947647, 10201621, 5743445, -11275900, 31675, -11996381, -8507256, -5157719, -1000727,
--7344394, 8753680, 3230889, 5180268, -14922327, -1073205, 9745818, 4958540, -4385699, -6272263,
--3838627, 3801583, -11419244, -667331, -7342247, 11225971, -1489280, -3284039, 1186485, -402116,
--1935420, 1981054, -2977486, 5213017, 3697430, 7493644, -566399, 382252, 11556146, -3660386,
-7731478, -1257889, -1372242, 20376398, 2415919, -2185065, -4613332, -15762530, 1649804, -16154983,
--2731062, 17009682, -4812511, -3307125, -11833172, -3467112, 408022, -6354941, 3404299, -618475,
--8676371, 9204115, 3280818, 2996277, 2520072, -6411313, 7018514, -10988137, 3164317, 4218732,
-449898, -1456531, -4460861, -3495567, -4543539, -1454920, 3635153, 4693863, -1198833, -3843459,
--2288681, 5232344, 2134062, 10017474, -190052, 753767, 4064650, -418222, -1860258, -1389959,
--1280974, -1108102, -1667521, 1174674, -1902134, -75162, 2027761, 747324, 2067490, 2008434,
-1599875, 177167, 3008088, 2183454, 1288490, 924492, 899796, -3164854, -2699387, 2288144,
-310311, -1954747, 330176, -2222646, 624381, 2524904, 906775, -434865, 913217, 2163053,
-469225, -1768990, 854699, 6581501, -13445395, 5712307, -4782446, -6828461, -6511708, 5026723,
-6440841, 3729642, 11212012, 8255464, 1622424, 3332895, -8894340, 1732482, 3919695, 8681740,
-1633161, -4253092, 3135326, 4024384, -7977902, 1097364, -8181376, 6280316, 5719823, 7378217,
--7286949, 4359929, 7907572, -3658775, 1997697, 10514080, -382789, -6601365, -5267778, 2300492,
--1807108, -6707665, -2793876, 70330, 1494112, 3557844, -4641786, 7323456, 4428112, -1740536,
-8848170, -1152125, 3320547, 11619497, -12461311, 22841710, -10593000, 3095598, 6847789, -2440615,
--1331977, 2847563, 15451682, -896038, -2201171, -512712, -3736085, 7484518, 8398272, -2755222,
-3562675, 2955474, 2703145, 5125507, 6603512, 500901, 7145752, 1504312, -6233072, -9562208,
-2223719, 890669, 4314295, 1816771, 14303852, -1494112, 7968238, 6419903, -4496294, -8223252,
--1006096, 883690, 2075543, -2263985, 3647501, 1695438, -3569118, -1007170, -3408594, -1279900,
-2052458, -1122597, 3051038, -824097, 1067836, 753230, -1478543, 1599875, 1837172, -2894808,
-1877975, 1238024, 560493, 638876, -136365, 515933, 3398930, 1032940, -1251983, 585189,
-911607, 1664837, 2083596, -683974, -2405719, -720481, -2104534, -1590212, 2512556, 2302639,
-2961917, 7598334, 10007274, 6150393, -10654203, 20393578, -6428493, 3860102, -14981383, 5942088,
--13251048, 10246181, 1049583, -2855617, -7504382, 9686762, 1283658, 6177774, 6373732, 3269544,
--11165841, 5694590, -6765111, -1243930, 5015448, 5465883, 1257352, -2079301, -11190000, 1552631,
-10275172, 1146219, 6645388, 7448547, -11685532, 6424198, -5951214, -5859409, 8590471, 9535901,
-4935455, 5366025, 1466731, 5144297, -12046310, -5364951, -3862249, 346282, 12779675, 6146098,
-5048734, -944893, 5603322, -285078, 14075682, 5207648, 5321465, 2159295, -816044, -20859582,
-7706245, 4936528, -1961190, -1473711, -15610596, 148176, -5987185, 3728032, 13536126, -2274722,
--7798587, 15825881, -742493, 8939438, -5307506, 57982, -9905268, -910533, 155693, -17095044,
--5120138, -2946885, -7724499, -3564286, -1547799, 1080184, 8531416, 635655, -238908, -1652489,
--4452808, -708670, 758062, -1622961, 575526, 212601, 2261837, -4008815, -1612223, -534723,
--3725884, 202937, -2426657, -1508607, -1240172, -2982855, -1566589, 3500935, -1199907, 625455,
--985695, 3795141, -199716, 1720671, -2492155, -5549635, -1712618, -240518, 2371896, 1002875,
-3390340, -226560, -1109712, 2905009, -3567507, 4238596, -115427, 13352516, -11515881, 1670742,
-4852776, 6036577, -19982336, 13251048, 3699041, -14209362, -9088151, 7742216, 17794050, -6276021,
--3240553, -12303471, 25478282, 9891310, 1581085, 4237522, -13386876, -8672613, -567473, 1104344,
-13214004, 2859911, 10186052, 11449309, -504122, 703838, 7975755, -2109903, -8515310, -8145943,
--2074469, 11335492, -6131066, 14341970, -6658810, 21064130, 9367861, 16988206, -4605279, 2743410,
-13635984, -10622528, 6355478, 6149320, 5783174, -6085432, 7261179, 1753420, 2314987, 6195491,
-12968117, 10900627, -11066520, -2592550, 5697811, -10797548, -6857989, -2854006, -22090628, 5908802,
--10919954, -6849399, 2130304, -2740726, 7561827, 14078366, 9025337, 5691369, -7603703, -1798518,
--461709, -14947023, 2732673, 1269163, 18476950, 3976066, 4157528, -4003983, 14276471, -127775,
--406948, 44023, -4641786, -2122251, 601832, -850404, -5029407, 467078, -1290638, 913217,
--5997922, -6508486, -2132451, 5196374, -854699, 2027225, 1975685, 1610613, -416612, -1370095,
--1785633, -3600256, -6008659, 2079301, 331249, -1461900, -7098507, 5258114, 3593277, 2045478,
--566399, 462783, -2399276, 1807644, -1252520, -2318746, 864899, 3063386, 1872069, -1850594,
--421981, -730681, 2279554, -15912317, -23484882, 12710956, -9561134, 10422812, 3410741, 5047661,
-6172405, -15775415, -28704340, 2546379, 4154844, 16180216, -15946677, -17482664, 15093589, -6023692,
-6866579, -3294240, 3595425, 2397129, 3980898, -7960722, 3848291, -1144609, -2493229, 9975598,
-3724811, -1430761, -12950400, -1764695, -370441, -2382633, -617938, -7005629, -17178258, -7632157,
-12610024, -5368172, 6218039, -9735617, 7215008, 3720516, -129386, -4901095, -21307332, 11781632,
-11433740, 14703821, -10281615, -4355097, 19981798, 17663590, 8159901, 3799972, 11293080, 4158065,
-10147397, -5443334, 8814347, -16843788, -1070521, 4704600, -4386236, 20053740, 781684, 10967736,
--6537477, -10771778, 23172960, -386010, 9198746, -3061775, 328028, -27249956, -2294050, 5802501,
--10517301, 12845173, 9738301, 2404108, -5576478, -20755966, -442919, -4216584, 5174362, 6313602,
-1053878, -2522220, 4884452, 222801, 2399813, -1312649, -6279242, -2290291, -5733782, 10051297,
-3082713, -198105, -208843, 1263257, 9279814, -1598802, -2223183, 1439351, -727997, 123480,
-4162897, 2277407, 3741990, -2673617, -350577, -4286378, 834834, 75699, 3918621, 3923990,
--4342749, 7012608, 7122130, -5553393, 433792, 921271, -805843, -11775190, -15426449, -4479114,
--3613678, -26416196, -24779814, -6492380, 120259, 18651432, 15171972, 15015743, -5807333, -2414309,
--3759170, 16033113, 6889128, -6727530, -1190243, -5356361, 11595875, 9000104, -6694244, -9374303,
--8603893, -17573396, 7339026, 489626, 497679, 3835406, -2628520, 6663642, 24712704, -14068165,
-7450695, 1474248, -9526237, -5455682, -11310260, 4287451, -5027259, -5683316, 12795781, 1570884,
--4269198, 12919798, -1758252, -5705864, 4495757, 9425843, -5190468, 10129680, 18196166, 17549236,
--11997454, -168577, 4383551, 9888625, -15193447, -3167539, -4196720, 18927920, 8065949, -2043331,
--11514807, -12779675, -11361262, 17093432, 14156212, -27087284, -22599044, -17140678, -12072079, 4083440,
--10888279, 6607271, 1802813, 2683818, -21791054, -6988449, 19696184, 15189689, -6602439, -13987098,
-13605383, 7126425, -1640678, 221191, -1739462, -3320547, 7730941, -6943352, 1689533, 1182727,
--292595, -5019743, -9154186, 1760937, 7431367, -736587, 812823, -3204583, 7057168, 7721815,
-754841, -1033477, 2600066, -286152, 3118683, 3360275, 4860829, -6545530, -636729, 2382633,
--8053, -4067334, 1080184, 8182450, 7617662, -2918967, 5835250, -8961986, 2232846, -2901787,
--2493229, -3599183, -5601711, 2080912, 21873194, 17247514, 10717017, 1695975, -14231911, -7374459,
--2170569, 5906117, 9100499, -12587475, 3317325, 823560, -10752987, -5064304, 8721468, -6372121,
-6937446, 3011846, 8152922, -10031970, -13959, -22449258, 3396246, -28404766, 11726334, 11602854,
--11025181, 13095892, 15592342, 495532, 4453881, -18301392, 10836202, 1116692, -7594039, 9978283,
--2330020, 179315, -161598, 1254667, 19178640, -2128156, -17180, 23549306, -224949, -10824928,
--31052614, -25511032, 28399934, 17710834, 7005092, 7176891, -11868605, -23907936, -11751031, 3820910,
--9185324, 18748606, -994285, 2516851, 20205136, -4116726, -6265284, -4512400, -12713640, -21579526,
--17149268, 48868676, -23711440, -10711648, 14021458, -24707336, -17805860, 17744658, 24852828, 8212515,
--4511327, 29261612, 14130442, -23488102, -8149164, -13103945, -12800076, 26607322, 1933272, -17674328,
--12222403, -13749264, 3889630, -2811056, 8115341, -165893, -4076461, -6430640, 608275, 7390565,
--3948149, 3434363, -3845606, 3699578, 3346317, 10280541, -3978750, -1457605, 8803072, 737124,
-4505958, 4615479, 6287296, 1214939, -3655017, -2022930, -926102, -1432909, 3861713, -1153199,
--4094715, 8298951, 8553964, -4669703, 2196339, -5322002, 1962263, 2046552, 5288179, -1294933,
--500901, -2607045, 2531883, 5944772, -20065550, -14812268, -10340134, -18363670, -1665374, 17376364,
--1271847, 3565360, 8546985, 5670431, -14784888, -7162395, -12220793, -6547141, 15646566, -4793721,
--1719598, -2157147, 9482751, 9458592, 28247464, 4492536, 20790326, -1225139, 7008313, -11340324,
--8544837, 7445326, -14430016, -16039018, 513785, 5041755, -8238821, 6572911, -9643812, 2930778,
--25355876, 14139569, 7905424, 11563663, 1430224, -10313290, -21246666, -7581691, -1905355, 17498770,
--13347148, -7901129, 4878546, 40029096, -11078331, 40693204, -24980604, 9852118, -9218610, 17853106,
--7095823, 30873298, -29057602, 44217764, -4195110, 9088151, 19128710, -32804960, 29229936, -35038880,
-23630910, -57089780, 30933428, -29351806, 25990458, -38290172, 33642480, 1125281, 21802864, 9434433,
--17863306, 15518254, -12794708, 38670276, -17630840, 6358699, -23091354, 6240588, -1558536, 4230006,
--8266739, 10726681, -10612327, 7595650, -3768297, 2440615, 3243237, 3406446, 4467840, -2644089,
--6110665, -4960687, -5855651, -13434658, 7741679, 1974611, -9237401, -4304631, -2800856, 5963025,
--10281078, 9750650, -7878044, 1932198, -4230006, 4734665, 1573569, -107911, 14814953, -13153874,
-8011188, -12709882, 19110456, -3655017, 18670222, -7377680, 5822902, 8425652, 2814277, 2894271,
--28454, 8929237, -13362180, 14619532, -10191957, 9615358, -2174327, 57445, -3871376, 134755,
-790811, -3788161, 1775432, 3494493, 1713155, -17594334, -15943455, 18514530, 31947040, -26500486,
-40503688, -2368138, -27917, -1571958, 7014219, -12072616, -8883603, -18079128, -4063576, 566936,
-16643, -106837, 15905875, 2715493, 17440252, 17083770, -10897943, 6279779, 36400384, 11890080,
-7777112, 5453535, -31619550, 1599875, -5146445, -3969624, -29001230, -6138582, 16627429, 4694936,
-5512054, 8366060, 21072720, 5495948, -6535330, -2170569, -1844152, 7905424, -14384919, -8843875,
-21758842, 13512504, 10117869, 16832514, 12412455, -7336878, -3703873, -25127706, -11064373, 10215580,
-8033737, 18966576, -13700946, -6812355, -4825396, 13943074, 8132521, 12517682, 5138392, -9912785,
--9231495, 31367220, -9624485, -30476552, 7015829, 22050898, 15079093, -397821, -2667712, 2727304,
-5019743, 3122441, 27986006, -33738580, -28847684, 3357591, 11348914, -14515916, -7526930, 2464774,
--11462194, 5424544, -5617817, -1429687, 2981244, -2179696, -7711077, 296890, 6351720, -4094178,
-35970, -11158862, -1981591, -9816148, 7201050, -3112241, 6602439, -3989488, 4116726, 1735704,
-5568962, 8762270, -8895951, -3966402, -2673080, 6912213, -4327717, -8002598, -14717779, -36507,
--5895380, -2179696, 2209761, 1484985, 394600, 2900177, 4789426, -930397, 14799384, 1847373,
--1210644, -11454678, 1963874, -2094333, -668941, 2820720, -12044162, -6117107, -12439836, -64132988,
-17700098, -7830799, -4088809, 15709380, -10886131, 16858284, -2290291, -27804008, -5084705, 2681133,
-9736691, 12388296, 2870112, -19710678, 19470160, -7665443, -1789928, -12121471, -5458904, 10428181,
--2105608, 9300215, 15697032, -3659312, -20308216, 4480725, 22253300, -20755966, 7612830, 17265768,
--3159485, -13736379, -25604984, -17288318, 18038326, 46244448, -14259828, -18477486, 52114060, -3427384,
--7518341, 37495600, 21831318, 18620830, 15052250, 6162205, -11040750, 19039590, 17741974, 12212203,
-5653788, -34514896, 21537114, 19051938, -36427764, -21079700, -13093745, -10217190, -10041097, 39726300,
-19835770, -22739168, 21235928, -8427263, -21254182, 9239548, 10805601, -9402757, -9010305, -33350422,
-3745212, 5681168, 24380918, 11668889, 3016141, 20376398, -16203301, 42165304, -44836236, -52312164,
-36922760, -22582938, -1400159, 25888990, -16319265, -11241003, -3228742, -3091840, 3221762, 15881715,
-7803419, -13018046, -796180, 6181532, -1553704, 8822937, -347355, 4876399, 956704, -6910066,
-3709778, 14097156, 9714679, -617938, 1891933, 9427453, -1511829, -1122597, 2396592, 21837762,
-11213623, -3505767, 4780836, -19362786, -840740, 5115306, -8910983, -12001212, 11337103, -5184026,
--325881, 11656541, -10100689, 4491462, -1716376, -2881923, 14467060, -8159364, -1939178, -16961362,
--69671888, 21549462, 39443368, -24302536, -4992900, -18877992, 40577240, 27322434, 17179870, -3136400,
--14079440, 3002719, 16400869, 7693360, -6966437, -1454383, 22404160, -1373853, -8151311, -29822106,
--14111652, 25334938, 14744086, -15823196, 12822625, -11430519, -3585761, 7669201, 7171522, -6846715,
-4653597, -26128970, 7573101, 35555888, -4443144, -6810208, -34783868, -20844550, 16962436, -27385248,
--14874545, 6388227, 7047505, -8400419, 22892176, 21654152, -22140556, 8388071, 12425340, 35831300,
-32785096, -5073967, 10761577, -770947, 37474664, 16367047, 15229417, 35561792, -15780247, -23062900,
--11814381, -29552060, 25062208, 11901891, 12270722, 6600291, 42492796, -27993524, -6509023, 18232136,
--9970767, 20222316, -920734, 2463164, 9412958, -24426552, -37155224, 4799089, 7217693, 41036264,
-31191664, 865436, -30138860, -4659503, -32923072, -76236, -987843, -9146133, -8393440, 4593468,
--2793339, -2365453, -8305930, -5319854, -7370164, -4311611, 1201517, -8713415, -8005282, -1222455,
-8294656, 4326106, -10657961, 9868224, -5367636, 18210662, -5595806, -15954193, -5829345, 8134668,
--4919348, -12069395, 14010183, -2870649, -12643310, -19553376, 3121368, -3031710, 2397666, 4486094,
--7479149, -6331319, -17144436, -3688840, -4460861, 1351304, 3287798, 6488622, 5608154, -12985834,
-155693, -16462073, -5974300, 1804423, 1871532, 16173236, 27514098, 24012088, 24739548, 31856310,
--18404472, 25082072, -49142480, -21498996, 18538152, 4370129, 35813048, 16326244, 30533996, -13353053,
-4000225, -26593364, 17969070, 29698088, 27006754, 2680060, 19126026, -47201152, -30757872, 29222958,
-8472897, -29438780, -15236396, 3546032, 43193948, 13305272, -17655000, -22260816, 4347581, -6535330,
-26543972, 28666222, -2896419, -4723927, 5645198, -8206072, 34345244, 9828496, -8222178, 6869264,
--16437914, -9783399, -77154792, -26273388, 13678397, -12130598, -11602854, -450972, -13973139, -14002667,
-35268660, 23564338, -17862232, 32142462, 66728760, 13649406, 47511464, 6490233, 9604084, 34812856,
-22990960, -18892488, -21387864, -37625524, -23393614, -2564632, -37090264, 13623099, -4522601, -35953172,
--25775710, -25757456, -32297618, -19670950, -13019120, -17254494, 5005785, 30474404, 37281388, 19574850,
--3950833, -27354110, -3541201, 949725, 2253247, -13385266, -2441689, -9078487, 7227893, 10402948,
-1096290, 7585449, -317291, -5413270, 8857833, -9761387, 1145683, 8368207, 18219788, 2388539,
--244276, 12209518, 5147519, 32960652, -8369281, -27060978, -1466195, 18036178, 3162170, -7468948,
--8287140, -22037478, -20784958, -11877732, -8323110, -3965329, -12511777, -18112950, -19178640, -10628970,
--1626719, 2464774, 25210384, 18130130, -6870337, 29255706, 52244520, 36021352, 25398826, 15727633,
-9918690, -13072807, -8424578, -13052942, -11729019, -3267933, -941135, 30181272, -3629247, 25592100,
--17056388, 6598144, -57732412, 15876883, -9024263, 29219736, -7641284, -34653408, 34242700, -13281113,
-4992363, 19360102, 14408542, 31321586, -5119064, 4519916, -6309307, 35752380, -7949985, 6553047,
-24813100, -29217588, 24464134, -7525320, 14855218, 23728620, -6749004, 5115306, 3735011, 2209224,
--8025684, 10432476, 10101226, -4487704, -14386530, -2855080, -16722992, -5630702, -3402688, 13213467,
--7179038, -26423712, -17500382, 27329414, 27628450, -26602490, -22326314, 32775432, 38587060, -15256798,
--4089883, 27726162, 894427, 14143327, 20127290, -47261284, -14130442, -3441880, 45324252, 3929895,
--3465502, -45048840, 8669928, 17350058, 11312944, 1343788, 11835319, 4383551, 6002217, 56865904,
--1971927, 2744484, 33413772, -20403242, 22130356, 3923990, 16647830, 10738492, -26125750, -8806830,
-30611306, 20147154, 11599096, -7573101, 10567230, 5119601, -216896, 3833795, 7646653, -4009889,
-13231720, -9100499, -2574833, 13604846, 7997229, 2549600, -29268054, 2352568, 14164265, -11176579,
-4921496, -26076894, -16561931, 17875118, 8621073, 14653892, 12814572, -10539313, -28471338, -8135742,
-9506910, 24390046, 14795089, -3908957, -5615670, -8889509, 20096688, -617938, -4246112, -8507793,
-10571525, 4299799, -4588636, -20786032, -13181792, 12797392, 12812424, 9045201, -14327474, -20063402,
-9780714, 26007638, 12029667, 1598265, -13335873, -3355980, 5909338, -498753, 285615, 1308891,
--3463354, -6214281, 1961190, 6644315, 1867237, 988379, 3077344, 816581, 714038, 1209570,
-3242164, 362388, -286689, 2496987, 33086818, -55910812, -3810173, -47302624, -43822088, 11062225,
-9314710, 8067023, 1168231, 41771240, 23858544, 53768160, 58893664, -6450504, -28849832, 6162205,
--7774428, -5360119, 12829067, 5708012, -4628901, -27067420, -29523606, 32097902, 14921790, -3645354,
-5011153, 5221607, 3043521, 5912023, -2935610, -7684770, -43681428, 956704, 25221658, -7373385,
--33648384, -11078331, 27795954, -51409148, -17586280, 32489280, 19760070, 38800196, -1032940, 2819109,
--35701380, -36151276, -45436996, 38318624, 54368916, -71502616, -35535484, -3754875, 36395552, -28375776,
--4532801, 65544960, 26758720, 16615081, 43486008, 31690416, 47730508, -17223892, 47458852, -7234336,
--37059664, -54662048, -12716861, 20907364, -43190192, -8500814, 9415105, -9162776, -15144592, 9206799,
-8458938, -29800630, 22287122, 10824391, 32342714, -7792145, -31485332, 39361228, 8069170, -35945120,
-307627, -8389145, 15075872, -15934329, -16203838, -8407935, -1557999, -557272, -12254079, -15016279,
-11750494, -15666430, -10737, -15484431, 8617852, 14634564, 2441689, 21898428, 15193447, -22138946,
--8093329, -32212, -19741818, 3287798, -3220689, 7858180, -5091147, 6922951, 19359028, 13959,
-3866008, -13509283, 20819854, 13104482, -14447733, -4329864, 14904610, 13817447, -1868848, -21288006,
--2580739, -41360000, 32074278, -2589865, 9890236, 12487617, 12095165, 511638, -13862007, 22782654,
-5800890, 21994528, -4589173, -46287400, -4097399, 13516262, -15140297, -16871168, -10283762, -15542413,
-19022948, -4741107, -16377784, -820876, 17706002, -23523000, 16678432, -8085813, 8931921, -23170812,
--5680094, 9555228, -1873680, -2029909, 3002182, 13189308, -2186675, -1996623, -16143708, 8231842,
--4335770, 2740189, 5168457, 1836099, 12199318, -17534204, -13353053, 18623516, 16087874, -22048752,
-10714870, -17794050, 20811800, -17187922, 7938174, 5466420, -14521284, 32621888, 3300682, -36022428,
-16805670, 4506495, -27816892, 15818901, -10120554, 16839494, -24095840, 12571906, -25531970, 11920145,
-18421114, -16409996, 9638443, -17444546, 766115, 729071, 1833414, -11416560, 380641, 8935679,
--335544, -15733539, 12133819, -9806484, -21201570, 9341554, -9323300, 4791573, 10109816, -7419556,
--4404489, 1928440, -1237488, 6597607, -3222299, -2217814, 5929739, 7465727, 2630668, -7226283,
--4227859, 7215008, 4406637, -16530792, 15393700, -2043868, -5521181, 2263448, -1017907, 3739843,
-8340827, -1875827, 15641197, -4424353, -6545530, -7396471, -2844879, 1628330, -7129109, 2089502,
--2298881, -2838437, 2052994, 2641405, -2851858, 70330, -667867, -3092913, 3356517, 2266132,
--3375844, 9809168, 20000588, -10193568, -111706192, -201515040, -67036924, -156194000, -154528624, 83120504,
-17218524, 115629112, 261337488, 235485536, 193056096, 235827520, 144277616, 32201518, 45320496, -33617784,
--175205680, -173144096, -129608688, -168237632, -115404160, -23932632, -77922520, -107443976, -46699180, -13472776,
--55904904, -26603028, -1181653, -27955942, -49770080, 10402411, 42821896, -14577119, 59461676, 88911192,
-2092723, 17135308, 120197880, 59584620, 636192, 112688128, 92080880, -21654688, 43554728, 105212200,
--2103460, 8578123, 148440512, 79753784, 33079838, 179580096, 197829952, 97299800, 187543504, 233316576,
-61098056, 31294206, 94934344, -38032472, -113018840, -65927748, -147030688, -260668544, -260181072, -295284896,
--393307872, -396089408, -380151840, -388895872, -348046976, -298370304, -239091696, -156690608, -79844512, 38310036,
-171604352, 226413488, 276238336, 374259168, 329042272, 294158016, 328540288, 242524448, 113074680, 133015672,
-150251376, 55391656, 72312216, 150549872, 73711304, 13664975, 64360620, 57960584, -33617244, -429497,
-40072044, -60286308, -76906224, 16911434, -15777025, -25393994, 83626768, 71807560, 6933688, 65237868,
-94745368, 16280610, -7783555, 4870493, -98256504, -177180288, -185147456, -236020272, -297016864, -281414848,
--251886416, -229454336, -204745392, -150393648, -142765792, -155847184, -104554000, -34390876, 8930311, 38075420,
-101494912, 121813328, 137777184, 247362192, 288292160, 266512928, 245753728, 195856416, 123822296, 106148504,
-90205584, 55292336, 39353712, 36453536, 14416595, -3268470, -4954245, -10351945, -21728240, -26823682,
--22114250, -30316026, -41684268, -39770324, -38636452, -43732968, -44300976, -37630892, -39605504, -37008124,
--28435368, -27448062, -29050086, -24123220, -19923816, -19261318, -13589813, -7288560, -5177046, -5042292,
--6925098, -7172596, -7733089, -7992934, -6492917, -5804649, -11095511, -17236778, -22021372, -25350508,
--27209692, -22492206, -17958332, -17541720, -14499810, -8620536, -6453725, 1058173, 12206297, 18081276,
-19878720, 26056492, 29393146, 28156732, 31595390, 36076652, 32991792, 33191508, 37349036, 36407900,
-34822520, 35712652, 30326228, 21599928, 15795279, 10532334, 2860985, -3503083, -7540889, -13227962,
--18807662, -20139638, -20585242, -21851720, -20174536, -19476066, -21349746, -20744156, -19586124, -18283138,
--16120086, -13944685, -11451457, -9069897, -7029788, -4107599, -2130304, -979789, 294742, 1420560,
-1697049, 2155000, 2633889, 2876018, 2913062, 3060701, 3073586, 2917894, 2745558, 2698313,
-2647311, 2597918, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--8483634,
-933082, 5575942, 1903744, 3631932, -5309117, -2911988, 236223, -944893, 1418413, 4414690,
--10631655, -79994, 3491272, 2092723, 3217468, -3083250, -4298189, 4639102, -80531, 1288490,
-2893734, 3837017, 1415729, 795106, 3455838, -518080, -1108638, -2995203, 1607928, -848793,
--487479, -1559610, 1986422, 5048197, 20401, -1059246, 2379412, -3243774, -4839892, -2684355,
--980863, -3148748, 282931, -735513, 2033130, -1968706, 565325, -3937948, -376883, -3240553,
--153008, -1489817, -1273995, 1633698, -1861868, -200790, 2660732, -1409286, 3172907, 3830574,
-281857, 5181341, -2653216, -189515, 2486786, -911070, 1679332, 2347737, 1279363, -2745021,
-1080184, 1236951, 883690, 153008, -2279017, 3016678, -812286, 1433982, -492848, -642635,
-197032, -3169149, -253940, -2465848, -1136019, -123480, -420370, -99858, -236760, -1333587,
-1575716, 166430, 447213, 92879, 883690, -551903, 1115081, -99321, 480499, -199179,
--471910, 605054, 70867, -204011, -3221, 861141, 199716, -173409, 554588, 264677,
--101469, 14155675, -3929895, 1413044, -3022583, -197569, -1232656, 1678259, 1146756, 4889284,
-1537061, 899796, 1923072, -1116155, -9695352, -9273371, -2864743, 1300301, 2904472, -2312840,
-580894, -2978560, -1032940, 206158, 1700807, -4083977, -4457103, -1278827, -239981, 2483028,
-846645, -959388, -3204583, 626528, -1744294, 143881, 2323577, -3246995, 1631551, 2983392,
--2243047, -6004365, -1534377, 2253247, -314069, 1839320, -249645, 1599339, -235149, 1752347,
-377420, -5600638, 1159104, 2363843, -846645, 1618666, 311922, -275952, -1073205, 108448,
--3282966, -245350, -867047, -4152160, -661962, -80531, 3780645, -3641596, 6188511, 7195144,
-5668820, -2384781, -1093606, -1245541, 2772402, -982474, -1494649, 1756642, -3998078, -3624953,
-497142, 3314641, -54224, -1598265, -3570192, -2081985, -2710661, -1400159, -2497524, 1006096,
--1476395, -352187, -1551557, -783832, 136902, 905701, 120796, 930397, -539555, 122943,
-741419, 420907, 595390, 612033, 374199, -611496, 743566, -13307956, -85899, -2052458,
-919660, -460635, -6888591, -1319629, -1452773, 2151242, 3350611, -4615479, 3686693, -1177895,
-2541010, 2545305, -1384053, 5536213, 339839, 240518, -959925, 956704, -1373316, 1016297,
--1542967, 199716, -3616899, 381715, 3994857, -8053, 1685238, 4195110, -4129074, -4365298,
-1823214, -1988570, 3368328, -3412352, -1021665, -7123740, -5478231, -4765266, 2080912, 600222,
-2535105, -2597382, -1833414, -551366, 4470524, -4953171, 2046552, 846109, 374736, 2487860,
--1715839, -2279554, -2964064, 1797981, 974421, -4387309, -4806606, -5618891, -154082, -1222992,
-1833951, -275415, -1047972, 503048, 763430, 2483028, -6682432, 805306, 3821984, 5631239,
-5818070, 4774393, -834297, -3563749, 5216775, 1563905, 1022202, -2625299, 1516124, 1047972,
-171799, -672162, -1526324, -256087, 1793686, -1404991, -2261837, -960462, -965294, 352724,
--176094, -585726, 1566589, 91268, 1996623, -217433, 585726, 1292248, 1261110, 936303,
-719944, -825707, -859530, -320512, 802085, -190052, 783832, -577136, 1359357, 1087164,
--1151051, 30602, 110595, -1949915, 1461363, -7878044, 4720169, -4225174, 5645198, 7381975,
-4563403, -186831, 2117956, 405338, 6027987, -3449396, -3462281, 1653562, -1036698, 2407866,
-4616016, -6847252, 2042257, 5949604, 2753074, -542777, -151934, 628676, -2916283, -149787,
--2760590, -3814468, -1069984, 5630166, -2254321, 2558727, -2090039, -3610994, 6768332, -6096169,
-4510790, 4936528, 897111, 3089692, -4537633, -1322850, -1858110, -1510218, 3102040, 858457,
--4872104, 666794, -562641, 794032, -1130650, 1607392, 1548873, 5610838, -6088653, 2771328,
-2175938, -717260, 2160906, 518080, 3420405, 3180423, 1987496, -2050310, 2704756, 4838281,
--226023, 2786897, -2198487, 5756867, 5961415, 6536940, -2014877, -4779225, 1402844, -768799,
-2272575, 1593970, -127238, -472983, -6768869, -1865090, -1648194, -649077, -1468879, -2122788,
-2188286, 755377, 621697, 2561411, -260919, 2590939, 1612760, 754304, -481573, 342524,
--695785, -1264331, 702227, 76773, 1214402, -523449, 215285, -215822, -988379, 1350230,
--157840, -1399623, 416612, 1067836, 38118, -1784022, 309775, -896038, 2170569, 1532230,
-1554778, -319438, 409633, 1163399, 30602, 533113, 1062468, 531502, 10890426, -1012002,
--3415036, 10357314, -4105452, 4646081, -2501282, -9918690, 1760400, -2860985, 307627, 11866458,
--4604205, -5633387, 452045, 6233608, -10048613, -3737695, 7534447, -2658585, 2433636, 3554622,
--2689723, 3234110, -2102387, -3488587, 700617, -988916, -1220308, -1296543, 4202089, -3374771,
-8181913, 2030983, 179315, -4699231, -1387811, 4992900, -5734855, 1213328, 1993402, -904091,
--7997229, 5466420, 1462436, 1338419, 717260, -1111323, 4138738, -2460480, 5656472, 3206730,
--2186138, -9762461, 4350265, 2608656, -231391, -2770791, 2367601, 6288906, 6407555, -708670,
-3796214, -5758478, 4192962, -1025960, -1970316, 2480881, 4962298, -3482145, 4912906, 869731,
--2054068, -1737314, 4012036, -3352759, 9504226, -4889821, 3945464, -3288334, 871878, -2939368,
-3815542, -3412352, 190052, 2153926, -636192, 405338, -2908767, -1008780, -380105, 6442,
-824097, -1284195, 1671816, -173946, -1122597, 1667521, -3337727, -3404299, -1911261, 47782,
--304943, -688805, 125628, -2324651, 2863670, 173946, -156766, 1977833, -1599339, -338229,
-2270427, 954020, 817654, 3512210, 3137474, 10137733, 1253057, -2680060, -13184476, 3950296,
-7326678, 4347581, 2805151, -1198296, 3679713, 14147085, -1829656, 6488622, 545461, 3590056,
-1304060, 170725, 2756295, -1280974, -6183679, -1789391, -4622996, -1264868, -6480032, 2214056,
-86973, 7384660, 1364189, -3562139, 2369211, -1145683, -1927367, 4702989, 1618666, 3493956,
-1989644, -2152852, -8436390, 431644, 4748087, -414464, -1698660, 2092723, -4504347, -1955821,
--7865696, -9701794, 4886599, 5468567, 4236985, -1440962, -1677185, -7516, -259309, 2759517,
--586800, 3030100, 2690260, -170725, 2776160, -2749853, 678605, -1487132, 1609002, 2013803,
-8942659, -49929, 7300908, -2851322, -7699266, -762894, -1120450, -2963528, 5969468, -555125,
-2415382, 494995, -4416300, -5268851, -1924145, -1166084, 495532, 5283884, 1672890, 508954,
-2179159, 3524558, -1596654, 2644626, -400506, 2243584, 1364726, 526670, 3112778, -396748,
-1785633, 1016834, 883690, -631897, -925029, -1911797, -927713, 1829656, 2807298, -759672,
-169651, -1669132, -317291, 71941, -1696512, 1110786, -3119757, 79457, -235149, -45634,
-1862405, 1999844, -308701, 4710506, -11614128, -382789, 11820287, 16256988, -6761889, 1825898,
-2573222, -5647882, -3304977, 639950, -4722317, -4908611, 11368242, 1593433, -7563438, -1200980,
--4942971, -2804077, 7385197, -2323577, -3301219, 6722698, 4129611, 6793028, -2906082, 1403381,
-6600828, 299037, -4003447, 1822140, -602906, 834834, -8417599, -5710159, 2478196, -587874,
-1966558, -7715909, 3594888, 2834679, 1773285, -13607530, -8007430, -3441880, -1737851, 1945620,
--5991480, -3973382, 1296543, 10446971, 6838125, 3707094, -1889249, -1134945, -3987877, 3025268,
--1185948, -7711077, -5942624, -703301, -162135, 10945724, 6014565, -5405217, -6094559, 7571491,
-1467805, -4548371, 2147, 6796249, 2529736, 213138, -8875550, 9738301, -3467649, 6496675,
-8460549, 8962523, 748398, -3291556, -2730526, 4611185, 5225902, -4597226, 3660923, 5011153,
-3486440, -1512902, -1231045, 721018, 2989834, 2499671, -2686502, -4077535, -3897146, 1915555,
--1895691, -1201517, -2721399, -519154, -1965484, 1001264, -1631551, 1191853, 881542, -297963,
--49392, 2206003, -1652489, -3246459, -643171, 3010772, -1861332, -1600949, -1765232, -1206349,
--271657, -51003, -2076080, -45634, -1528472, -699543, 494995, 2019172, -1380295, -43487,
--491774, -875636, 1792612, 2185065, -3198140, 4770098, -6204081, 6983080, -693100, -1948841,
-3690451, -7144141, 2374580, 3820374, 727997, 2655901, 3300146, -1964948, 7784628, -3731253,
--13418552, -7998303, -1808181, 480499, -2881923, -5755256, -6296959, -4282620, 13082470, -3687230,
--1086090, 1853815, -2779381, 1526324, 10723460, -5224828, 5063767, -3401077, -6976101, 6164889,
-4431870, 2822867, 9605157, 177704, 4497368, -460635, 1102733, -416075, -3221762, 2090039,
--784905, 6956774, 1348083, -4855998, -1289564, -1427003, -380105, -7891466, 3107946, -7780334,
-1833414, 10384694, -6844568, -13062069, 2974802, 1771137, 5925445, -2675228, -169651, 6062347,
--3809099, 2954401, 4446902, 1228361, -2780991, 5986111, 1250909, 7697119, 1593970, -4831302,
--4595078, 4991289, 8399882, 2939905, -125091, -6977711, -1450625, -2263985, 4964982, 1240172,
--9537512, 1466731, 2474438, 670015, 917512, 3664144, -1712081, 1532230, -2633352, 1600949,
-1441498, 1168231, 1902671, 827318, 1245004, 1155883, -2234994, 695785, -708670, -364535,
-2112587, 884763, 1160715, 2407866, -774168, -7633768, 703838, -525060, 529892, -705448,
--497679, 2113661, 1370095, -1238561, -1468879, -10373420, 23951422, -5589363, 10761577, 1015760,
-4493073, 3253438, -62277, -13418552, 11422466, -16729434, 5414343, 4018479, 15081241, -7066295,
-6794102, -10641855, 6949257, -3440269, -11469173, -5490042, 2694555, 2940442, 4182761, 2135136,
-6017249, 3948686, 9124121, -2827699, -7486128, -6736120, 2617246, -78383, -3703336, 6113886,
-2658048, -1250909, 3634079, 7567733, -708133, 1960116, -1141924, 3743064, 2189360, -9683541,
--4225711, -12688407, -2935073, -2152852, -307627, 6094559, 5407901, 809601, -3519726, -67109,
--1924682, -3011309, 1678259, 17858474, 1589138, -388158, 5658083, -424665, 6485401, -2788508,
-63888, -4236449, 17892834, 4227859, -7386270, -8422968, -5654325, 706522, -401043, -11450920,
-621160, 2368138, 767189, 12506408, -3261491, 1844152, -7767985, -2535641, -21078626, -3637301,
-1078574, 810138, -8107288, 2122788, -3906273, 2647847, 1212255, -3823595, -484794, 2775086,
-4264366, 7960185, 2082522, -2887292, -2734821, -6391448, -2498597, 608812, 1056562, -3671660,
--1418950, 3477850, 1220308, -945967, -893890, -2716567, -2558727, -1224603, 718870, -5316096,
--3780108, 1010928, 2122251, 36507, -1384053, 1337346, 4358855, 747861, 341450, -350577,
--1923072, 150861, -6245420, 2656437, 1444183, 12532178, 1087701, 10433549, 6334540, 10231686,
-3433826, -10344966, 10155450, -6618545, 17566416, -11345156, -3352222, -15694347, -3309809, -1661079,
-6986301, -7298223, 10248866, 8265128, -4969277, 586263, 11717745, 16490527, -5248450, 419833,
--2150168, 5171141, 80531, -1925219, 2392834, 4521527, -7856569, 5928129, 1127966, 6796249,
-2594160, 1039382, -13418552, -2166274, 15571404, -1861868, 5211406, 11938398, 3445101, -926102,
--4166655, -5497558, -3293166, 547608, -5118528, -3069828, 9025874, 8346195, 2618856, 13859859,
-9207336, -2900714, -1382443, 1899449, 3212099, -4233764, -11047193, 14413373, 6344741, -2955474,
-13188771, 13793824, 15369540, 6668474, 2318209, -5571110, 388158, -7796977, -6256694, -3979287,
--15417322, 6193880, -1954747, 13151727, -3119757, -10330470, -1946157, 992674, -1533303, -13780403,
-2203855, 3678103, 6276021, 6644852, -4655745, 2138894, -3177739, -8961449, 1764695, 3471407,
--685584, -2649458, -6760279, 7094212, 4010963, -6322729, -7172059, -4019016, 4124242, -730144,
--2033130, 1919314, -3183108, 1990181, -811749, 1227824, 3111167, -4572530, -2122788, 2051921,
--963683, 85362, 9201967, 3012920, 626528, -619549, 2197413, -3052111, -1722282, -292058,
-3024194, -1898912, 13769665, 851477, 2552284, -2020782, 1179505, -1721208, -20752746, 2449742,
--154082, -3700651, -1503239, -10184978, 11777874, 12066711, 13499619, -21789980, 7097434, 4549444,
-598611, 21561810, 8890582, -10673531, -1194538, 21286932, 2564632, 3825742, 4394289, -6211597,
-3607773, 4414153, 13256953, 6730751, -10030896, -16568910, 6343130, 3967476, -8303246, -1542430,
-873489, -10175851, 1229971, 12490302, 5375152, 7014219, 10190884, 16422881, 1620813, 14468134,
-2924873, -5704254, -761820, -8516920, -4399121, 3605088, 4964446, 3769371, 7334731, -10247792,
--4566624, 18429168, -1283122, -3929358, -10204305, 8752606, 7988639, 2763275, 3386582, -119722,
-5157182, -7979513, 13226352, -6600291, -7757248, -6369437, -4306242, 17838610, 4889821, 3731253,
--19302656, -10641318, -15852724, 1178969, -1620813, -1561221, -15033996, -20987894, -521839, 9451612,
--5104569, 2702608, -1299765, -1427003, 5353677, -7304129, -3052111, -3325379, 6449967, 1066763,
--4603131, -66035, -675384, -111132, -2142115, -4397510, 1176821, 7029788, -3338800, -2302103,
--4421132, -2044404, -3071439, -1543504, 3159485, -1032403, 4947266, -1600949, -964757, -2784213,
--1975148, 7388418, -671089, -494995, -3401614, -559420, 4460324, 1196685, -5274757, 1214939,
-511101, 1561758, 19444928, 22871238, -5832566, 6438156, -1647120, -6665253, 1343251, -15292768,
--9436043, -657667, -3059091, 30666066, -13768591, 3940096, -19450296, -2844879, 11912092, -4979478,
--10814191, -11357504, -4132832, 4705137, 6083821, -746251, -946503, -12768401, 3044595, 8964134,
-4549444, 5501853, 1668058, 2016487, -7431367, -2428267, 5036923, 1851668, 20401, 580894,
--8970039, 4027069, -9441412, -1520418, -216896, 2771865, -10487236, -1067836, 5189394, 7565585,
--11954505, -6271726, 21316460, -8163122, -16748225, 14117021, -13620952, -4289062, -6009733, -2436857,
--10450729, -7255811, -2172180, -10544682, -15042586, 24317032, 13438416, 10845329, 7440494, -9426916,
--3661460, -6354404, 6857989, -11425687, 8134131, -6091338, 3514357, 8156680, 5339181, 1664837,
--15493021, 15224585, -18513994, -4852240, -17948132, -7285875, 11863773, -675921, 6743099, 13615583,
-4352950, -1369558, 2677375, -4740034, 290984, -1437203, -5117991, 6156836, -2112050, -2833605,
-7051800, 3738232, -1840930, 493384, 346282, 1131724, -3145527, 3075197, 985158, 1664300,
--3769371, 2602213, -1739999, 6678138, -2964601, 4724464, -1407676, -2311229, 7079717, -4709969,
--2038499, -4212289, 2862596, 7001334, 3236795, -1978369, 3317325, -2803540, 3388192, 4878009,
--5263483, -12696460, -812286, 32272922, -14238353, 14120242, -28556700, 8054138, -18099530, -3262028,
-10325101, -748398, 6669548, 10821170, 8649527, -12360379, 9479530, 2090039, 7042136, -2527052,
-9715753, 9047349, -1824287, 2032056, 5890548, 6666326, -9091909, -2993592, -13319767, -1490891,
-11975979, 493921, -5512591, 1398549, 4502737, 1007707, -4776541, -9405978, 2553358, -6301254,
-6311992, -5942088, 22959284, -1961726, -12315282, -13837848, 3270081, -7515119, 7301445, -15539729,
--12199318, -15789374, 3782793, -13306346, -3110630, -19175956, 13945222, 3022583, 9417253, 5927055,
--20777978, 1784559, -1762010, -7639673, -11566347, -3011309, -9834401, -12354473, -6812355, 5992553,
-8364449, 12202539, -6828461, 1863479, 5309654, -17361332, 8155606, -11836393, -993748, 10081899,
-4312684, 4184372, 1939715, 20517596, -11548630, -4092030, -4333622, 5520107, -17249126, 1563368,
--1310502, 16106, 11360188, 6727530, 5667746, 2201171, -4130685, 874026, -2000381, 8378408,
--3063386, -869731, -4519916, 9476845, 3819300, -3071975, 2645700, -8040179, 5760625, 3076807,
-4552666, 908386, -1548336, 5401458, 9564355, 3416110, -4504884, -6091338, -2470680, 2593624,
--6307697, -1265405, -9642738, -6906308, -3736622, 194347, -5258114, 4116189, -4121558, 9760850,
--7431367, 49929, 60666, -26827440, -7793755, 30001420, 26545046, 14891188, -12911209, 13119514,
-19846508, -13215077, 17529372, -14221174, 16183974, 3770981, -1122597, 5290863, -382789, 8480950,
--12848395, -3700114, -5813775, 6444599, -12181601, -10976326, 17057462, -1707250, -3591130, 1553168,
--16542603, -429497, 26538066, 14423574, 2994666, -316217, 5634997, 25069724, 10702522, 318364,
-4212289, -7021735, -3008625, -6054294, 10776610, -5666673, 7191386, 1292248, 12877923, -15353434,
--340913, -989990, 374736, -4380330, 7180112, 11512660, -2748242, -3368865, 11674258, 1268089,
-1432909, 26418880, 4151086, 286152, -12155294, 5284958, -9045201, 12193412, -14203457, -12646531,
-1910724, -12459700, -13253195, -20292110, 5401995, -6824703, 10416906, -3504693, 5872294, -29604672,
-6003828, -10065793, -17923436, 9250823, 12352863, 6396280, 3814468, 2166811, 5175436, 7815767,
--3833258, -4651450, -5447629, -428960, -5973226, 3652870, 772557, -8608188, -5905043, 4815195,
-2903398, 310311, 8715562, -3127273, -920734, -7023882, -1480690, -27917, 3608310, 2214056,
--5845988, -3646427, -1621350, -7114614, -1336272, -6686191, 2655364, 1719598, 7850127, 5283347,
--559956, -3252364, -6442, -20938, -2244121, -559420, -8209293, -1534914, 3359738, 3570192,
-1038308, -1459215, 7907572, 1242319, 22466438, -34221224, 14556718, 15164456, -24284818, -2356327,
--20787642, -6772627, -18646600, -8365523, 21636434, -7227356, -1429687, -14984604, -2787971, 3599183,
--22258132, -746787, 14457397, -27538256, 1161789, -18764712, -10050760, 501437, 2183991, -12388296,
--9900973, -10362145, -2873870, -8893267, -431644, 4917738, -2570538, 7133404, -13345000, -8490077,
-18178450, -8321499, 9914395, -10616085, 10309532, 9406515, 1739462, 2590402, 9614821, 557272,
-13637058, 17170742, -3061775, 2633889, 25506738, 1612223, 13183939, -810138, -9932112, -19883014,
-3515968, 13984950, -21894670, 393526, -12808129, -6711424, -28436978, 12459700, 19032610, -4832375,
-9255118, -4532264, 20685636, 22811646, -1661616, -22393960, -21689048, 31265214, -24110336, 9188546,
-3765076, 3332895, 23487028, -9836549, 38160784, -541703, -8447664, -9810242, -6684580, 6167036,
--2211908, -2808909, -60130, 9902584, -2265595, -6082748, 8398809, -2877091, 4323422, -7467875,
--4381941, 7270306, 731755, 10821170, -3364033, 4654671, -7719667, -2173254, -10629507, 2320356,
-4588636, 5446019, 1225139, 5591511, 711354, -1606855, 6045167, -9077950, 6248641, -7688529,
--2582886, 4793184, -9352828, -2333778, -5285494, -15939161, -4099546, 1126355, 5979668, -7749195,
--3883187, -6808060, -2047626, 1748589, 12221866, 6307697, 37322728, 42058468, -2474438, -31711354,
-31336618, -34671124, 4898410, 14705968, 3657165, -3711389, -15984258, 18014166, -8049843, -6458020,
--16275242, -9480067, -5062156, -20341502, -11170673, -9096204, -5066451, -3349538, 14143864, -215822,
-12229919, 80531, -5252745, -17825188, -19490024, -4941897, -686121, -276489, -2935610, -7311645,
--8402567, 9320616, 22507776, -12231530, 7773354, -7645579, -7827041, 8908836, -8673150, -14127221,
-31591632, -3508988, 2938295, 1523640, -17593796, -3904125, -3659312, 8910983, -22737020, -10117332,
-24137180, 3843459, -10200547, 13062606, 24533390, -13963476, -17201344, 8925479, -14573361, 200253,
--27315456, 8796630, 23317914, -2420214, 12186970, 7045894, 4122095, 26650272, 8431021, -161598,
-15445239, -2278480, -2078764, 9374303, 10150618, -38756712, 3596498, -16882980, 13748190, -680752,
-586263, 9578314, -2851858, -3748970, -5029407, 5133560, 2041183, -3839701, 5236639, -5593658,
-629750, -2995740, -7401840, 3379603, -3670050, 8309688, 4674535, -193274, 113280, 2241436,
--2143726, 4895726, 2507187, 1491964, 2103460, -1460289, 1915019, -3405372, -6405407, -3621194,
--1599875, 832687, -8354249, 6808060, 4704063, 279173, 2598455, -5733782, 8003135, 899259,
--4607963, 2806761, 3508452, -10183367, -1998770, 944893, -716723, 73014, 1941862, -1726577,
-1583769, -50870128, -35539780, 15261093, -14882599, -14006962, -43226700, -12256226, 9593346, 3906273,
--8265665, -23899882, -1611, 12584791, -587337, 1979980, 13026636, 22894324, -19275276, 51721608,
--12920335, -16755741, -4884989, -2574296, 544387, -20031190, 776315, -3266323, 11171210, -6555731,
-15681999, -6048388, -12768938, 5679021, 6648073, -11366094, 13061532, -38842612, 622233, -2818572,
-15939161, 19210852, -13378823, 17935784, -6455336, 5354214, -8116415, -2510945, -4873178, 14413910,
--1580011, 18877992, 29307784, -24927990, -6751152, 13924821, -16702054, 10605885, -19015968, -10350871,
--9314710, -11008001, -19419694, -9807558, 9491341, 7810935, 15426986, 19934016, 14561013, -23480050,
-3269544, 4701379, 5955509, 5104569, 15495168, -7143068, -15788300, 9503152, -3894999, -12273406,
-2741800, -21239150, -8624831, -18464064, 2000918, 11350525, -6550899, 10919954, 5984500, -348429,
--3795141, -24159, -16440061, -5983427, 5813238, 3073049, 3923990, 1444183, 2147484, 1780264,
-5464272, 1693828, -10959146, -1291175, 1954210, -853088, 3162707, -4867272, -4444218, -10699300,
-3077881, 9980430, -10768557, -7481296, 5915781, -2525441, -10997264, 7672422, -5233955, -4244502,
-6965900, -250719, -1868848, -3187940, -4760971, -6416145, -6824166, -1581085, -5777268, -3347390,
--2870649, 5069672, -118648, 52613, 7655243, -10128070, -34349000, 26819924, -44115220, 31874026,
--4000225, -19435800, -16535624, -18483392, -12383464, -9494025, 1442035, 23518704, -1382980, -18738942,
-20948166, 29549374, -44055092, -11352672, 3572339, -3143379, -6483790, -1686312, -5719286, -7367480,
--12489228, 17068736, -5342940, -11810086, -20740398, -20503638, 21189758, 5960341, -3360275, -1735704,
-452045, -4083440, -5221070, 5136781, -18213346, 10721849, 21630530, 16404628, 10292889, 20825222,
-23976118, -12973486, 5427765, -18924162, 21485038, -11490111, -3073586, 457414, -30365418, 10559714,
-25707526, 4890357, -10030359, -7882876, 33480880, -12749610, -13927505, 9872519, -33406256, -3363496,
--16392816, 1311039, -32666984, 14388677, 6086506, 14116484, -53234508, -45356464, 7848516, -15461345,
--10440529, -6055904, -35555888, 12479027, -20892868, -22535694, 17771500, -14966350, -8883066, 8055748,
--3455301, -6396280, -993211, -1328756, 7806103, -17076790, -8062728, -16451872, 322659, -6878390,
-3710315, -1820529, -13219909, -4905390, 5025649, -246961, 1239635, 4239670, -14520748, 2522220,
--18474264, 9265318, 3087545, -12952548, 4569845, -15524696, -3251827, -5273683, 1442572, 9217000,
--6160594, 9517648, -4516158, 15750182, -6700686, 10142565, -5093831, -1020055, -291521, -1176284,
-3252364, -898185, 171799, -572841, -3259343, 697395, 5581310, -846645, -2182917, -1217086,
-1875827, -1247688, -1905355, -772557, -846109, 1142461, -854162, 19327, -763430, -1169305,
--718333, 1716376, 36507, -1829119, -5906, 554588, -2441689, 2180233, 38620884, -55790016,
-55032488, 15551003, -2736431, 3743064, -41195716, 7463580, 18114024, -7969849, 46769508, -14440217,
-19760070, -17637284, 51616380, -2761127, -7890929, -20927228, -8160438, 6783364, -6106907, 20395726,
-15697569, -6453725, 605590, -21508660, 7058779, 20180440, 20526186, -24129664, 8924942, -5493263,
-21979496, -7078106, 14011794, -14668924, -11592654, -31910534, 1290101, -20560546, -29819958, 40257804,
--19071802, -4565550, -8658117, -10821170, 4763119, 2468533, 13753022, -7827578, 21563420, 1151588,
-39793408, 14639396, 44136696, 37234684, -4619774, 24573118, 18700288, -7695508, 22145388, 30236570,
--14212584, -32146756, 16938814, 10521059, 24705726, 12108050, -3321084, -1307818, -34138548, -4163971,
--10632192, -13104482, 43521976, -6090264, -1306207, 54050016, 36010616, 18814642, 23789286, 11637214,
-766115, 5275831, 31143344, -632434, -9181566, 8453569, 26048440, 11603391, 14508400, 6538551,
-17786534, -2025077, 4560182, 5889474, 12227235, 3405372, 2524367, 1289564, 700617, 9483825,
-15046344, 5680094, 20139102, 465467, 12144557, 11752104, 22815404, -1411971, 15388868, 13264470,
-2324114, 11021423, -55298, 1632088, -4708895, 3932580, 5842230, 2193118, 2691334, -192737,
--3511673, -377420, 4831838, -3968550, 2320893, 9666361, -3028489, 18865644, 1493038, 4214974,
--2047626, -8981313, 4846871, -3552475, 5571110, 16944720, -38510824, 73568496, -10142028, -8298414,
--4857608, 53516904, -33087892, 26810260, -36222144, 34083788, 6721087, -6715718, 671626, 19958176,
--8807367, 18615998, -8889509, -188979, 37422052, 11535745, -9888088, -150861, 9145059, 7390565,
--36792300, 9750113, -13580687, -3306588, -19534586, 18629420, 17402134, 2776696, 8086887, 31463320,
--10743861, -50015432, 11647414, 32804424, -13029320, -32869384, 8407935, 23508504, 7601555, 57445,
--39764956, -18869402, -23694798, 21946746, 8526584, 22611392, -47822852, 3080029, -9124121, -52397528,
--13968844, 7760469, 23374286, 33078764, -17960480, 61746596, 11622718, 1122597, -13113072, -24846922,
--17623324, 11687680, -28993714, 58226872, -19029390, 2452963, 34005940, -22606024, 20586316, -22075058,
--13107166, 48331804, -24866250, 31720480, 28739236, 10680510, 12848395, -41722924, -5455146, -2113124,
--15080167, 19768660, 17296370, 7295539, 4941360, 19252728, -5034239, 7576323, -2789045, 5828808,
--8725226, 6904697, -1917703, 5855114, 3946538, 1387811, -14764487, -2317135, 1437203, -4991826,
--2212982, 10294500, 5102958, 16894790, -8153459, 3665755, -27998354, -22923852, -3891777, -1261647,
-15781320, 12444131, -8368207, -5582921, -22487376, 106837, 6955163, -3347927, -638876, 5436355,
--7516193, 5137855, -16780974, 1144072, -6065568, -6079526, 9997610, -43248172, 24785720, 15886547,
-24789478, -9801652, -6967511, 10084583, 126702, 2922188, 978179, 4961761, 1219234, -6739341,
-32040456, -7391102, -22010634, 9403294, -534723, -19346680, 6806450, 4566087, 13245142, -8883603,
--14656576, 15880642, -12668006, -1658394, -3748433, 13049721, -22337588, 7714835, -13845901, 11417634,
--19676318, 7083475, -6577743, 3470871, 43231532, -29633664, 5660230, 9583683, -26751740, 9793599,
-12369506, -19767050, -4109747, -7523709, 35954780, 3102577, -41536092, 24958592, -33572684, 6186364,
-17412334, -16047608, 19913078, -23995446, -19830400, 27400818, -4628901, 11690364, -40929428, 7747584,
-8868034, -2095944, -6300717, -263067, 16632798, 705448, -54439784, 33066954, -3416647, 12749074,
--14292041, -16569984, 51939576, -1302986, -33201708, 2957622, 16779900, 3913252, -50483044, 1877975,
-46845208, -8492761, -21658446, 5212480, 22664542, -2943126, 83752, -3905199, -2335925, 3324305,
--8189966, -4706211, 15390478, -6597070, -415001, -8967892, 9029632, 13813152, -2457258, -1978369,
-14544370, 4846871, -9984725, -2292439, 6271189, 4280472, -8480413, 4638028, 10010495, -8258149,
-2156611, 2595771, 6455336, -15448460, 998580, 9837086, 3688840, -10734734, 623307, 7759932,
-1279363, -7940321, -5406290, 8698383, 21048024, -6551436, -106514112, -227261216, -90339808, -170964928,
--208346176, 74546672, -296890, 76447200, 289189824, 252627296, 143950128, 276778432, 154566208, 17940078,
-95986616, 59269476, -103961296, -73320464, -21233782, -115290880, -139544032, -46102180, -70414376, -110349520,
--27364848, -4532801, -140662864, -96759704, -14258218, -85299664, -110590040, -31887984, -54039280, -120263376,
--22720914, 12764106, -67253280, -51162724, 51511152, -17904644, -72162968, 15705085, 48518636, -35364760,
-29916594, 106194144, -15094126, -27753542, 105079056, 56315076, -25705916, 174244144, 236658608, 147485952,
-249518816, 373060320, 287053056, 273210912, 399023936, 345994528, 254754912, 312487872, 284094912, 180900800,
-160053568, 86361056, -29238526, -124050464, -222340800, -316038176, -376195104, -471784992, -504119104, -531599904,
--602326720, -601882752, -454811808, -465380640, -423807520, -190611184, -147416160, -143347216, 64187212, 122146184,
-3046206, 127283504, 176451216, 60701848, 84324704, 165521600, 123800288, 72280008, 116941760, 144709792,
-61733176, 90252296, 179455552, 106909256, 70509408, 165423344, 124139584, 50385872, 107630272, 122924648,
-16128676, 63675576, 147852640, 84950160, 101817568, 208285520, 195940704, 206478944, 267224272, 269111904,
-215923040, 204262736, 174369760, 106613976, 76947024, 41098544, -6082748, -41659572, -113491288, -155152480,
--209835456, -279681824, -311481760, -351964512, -409767808, -390216576, -350481152, -309506624, -226271232, -148282128,
--78575352, -28872918, 12364674, 26057030, 31842888, 41044320, 43493524, 36816460, 39323648, 43449500,
-42179264, 47282760, 61100740, 68599216, 73390792, 81787992, 84344568, 85528368, 89899568, 83154328,
-71506376, 53586696, 33440078, 21274584, 5987722, -3935801, -6850473, -10212358, -14584635, -14309757,
--12278238, -6786585, 812286, 8786966, 17835388, 20947092, 22754736, 26548804, 28432684, 28261422,
-29658360, 32751810, 31223876, 28227062, 31469762, 28022514, 20662014, 25450366, 26267484, 17830556,
-17988934, 15598784, 4242354, 1209033, -210453, -12014097, -19874962, -22814866, -28948616, -35170952,
--36511516, -39032124, -44935020, -45916960, -45435924, -48728552, -51187956, -48898204, -47878684, -48764520,
--44014288, -37648072, -34082176, -27918362, -17423072, -9823127, -3357591, 5983963, 14271103, 18410914,
-22398792, 27732604, 29164976, 28369870, 29122562, 28196998, 25244744, 23264764, 21437792, 18597746,
-15851651, 13785234, 11205033, 8602283, 6847789, 5546951, 4046396, 3058017, 2118493, 1206349,
-641561, 303869, 10201, -122943, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--7136625,
-232465, 5719286, 3935801, 3961034, 2498597, 1589138, -2220498, 112206, -2531346, 6118181,
-3750580, 1489817, 903554, 906775, -54224, -1899449, 3012383, 4218732, 4048544, 2495913,
--3048353, -4396436, -4825396, -4569845, -466004, 2430415, -4718022, 3980361, -936840, 6936372,
--1136019, 4417911, 72478, -5698348, 1653026, -706522, 4647155, 351114, -528818, -2306398,
--3910568, 384936, 2227478, -4998268, -6865505, 4835597, -3972308, -3639448, -3454228, 2739652,
--2723009, 1184337, -1211718, -306553, -4040491, -1190243, -2746095, -3994320, 1336272, 3158949,
--1151588, -4396973, -855772, -870268, -2214593, -3796214, -286689, -3081639, -3660386, -629750,
-261993, 897648, -1235340, 573378, -671626, -5143760, -1134945, 672699, -1423245, -1294396,
--1617592, 1691680, -1977296, 1740536, -135291, 330176, 660888, -1231582, 1250909, 46708,
--687732, 344134, -335544, -1040456, 179315, 842350, -550830, -434329, -47782, 1338956,
-591095, 219580, 202937, 739271, 476741, 852551, 231928, 1087164, -876173, -349503,
--396748, 13454522, -4745939, -3119757, -4234301, -2921115, 282931, -9060234, 1492501, -4512937,
--8866960, -1923609, 7543573, -5482526, 1447404, -679679, 2512019, 3789235, 4064650, 6578280,
--1445257, -3828963, 1659468, 1559073, -3066607, -478352, -2080375, -1376000, 787053, -3512747,
--2197413, -545461, -4398047, -5173288, 2596845, 3925600, -2377801, -5939940, -1058710, -1425929,
-810675, 4721243, 291521, -2018098, -340376, 6334540, 772557, -3948686, -3786014, 1605781,
-1185948, 5044976, 2869575, -381178, -4882304, 224412, -307090, 4130685, -4494684, -1551557,
-2438468, 4807142, -1388885, 381178, -3697967, -2116882, 2236067, 88584, 457414, 1266479,
--1448478, 1715303, 506806, 2109903, 1314260, 782221, 8427800, 2531346, -361851, -1194538,
--2504503, 3564286, 2231773, 3856344, 2773475, 923955, 1024350, -876710, 761820, -1641214,
--1701881, -1357210, 431107, -659814, -425739, -318364, 1350767, 162135, 1769527, 103616,
--574989, -288300, -180926, -312996, 570694, 350577, 710817, -9887015, -2312840, -4658429,
-4546760, 1162326, 124017, 3239479, -1898912, -7638063, -4020626, 5102958, -262530, 5257040,
--373662, -2947421, 5823439, 2200634, 12746389, -2376728, 5543192, 826781, -5981816, 1531156,
--5078799, 3320010, 1184337, 1319092, -5428302, 2746095, -933082, -1901597, 2250026, 8689256,
-3237869, -26307, -6939057, 6054830, -1255741, 51003, 4282083, -6302328, -1168231, 4388383,
--2573222, -2232309, -7126425, -7773354, -579284, 4749160, 2794950, -3102577, -73014, 3103651,
-3868155, 1561758, -779000, -1475858, -6830072, 3245385, 8524973, 3898757, -2443837, -1173600,
-2705293, 4089346, -309238, -1240709, 1023276, -5603859, -1034550, -3918621, -1835562, -337155,
--2415919, 6516003, 5663452, -1661079, 2845416, 2128693, -1076426, -3804267, 908386, -2938295,
--1118839, 905164, -3821447, -787590, 385473, -1081795, 1090385, 1666447, -2445447, -848256,
--161598, 194884, -1919850, 536334, -889058, 1475321, -1703491, 1627256, -1166621, 414464,
-258772, -801011, 640487, 315143, -624381, 590558, 622233, 677531, -1268626, -563178,
-19864, -1759326, 227633, 1090385, -362925, -7386807, 8371428, -7109245, 7649874, -14496,
--5997385, -14223321, -5565741, -4042101, 2197950, 7542500, 5918465, -1745904, -1087701, -1683090,
--4035659, -1122597, -4542465, 1636383, 1756105, 2894808, 4770098, 2849174, 9068287, 86973,
-1882806, -3113315, -677531, -2088965, 3374234, 1060857, -4123169, -5998996, 316217, -4289599,
-613107, 4179003, -6788196, 4893579, -11467026, -3111704, -8487929, 1530082, -456340, 213138,
--3282429, -4453881, 1672353, 4160213, 3004330, 1153199, -6802692, 2171643, -4674535, -1734630,
--1287417, -9297530, -3580929, 2884071, 3704946, -244276, -6374805, 1190780, 2534031, -1168768,
--1199370, 855772, 5707475, 2100776, -1174137, -1721208, 1079647, -13276818, 1051730, 3470871,
-3271155, 9498320, 1395864, -5194763, 6007586, -1985886, 983548, 2164664, 2053531, -1277753,
--4306242, 332860, 2679523, 2552821, 4096325, -1170916, -1217623, 783295, -669478, -422517,
-730681, -1057099, 469762, 1000191, -456877, -2068564, -1556389, -2684, 345745, 645319,
--937914, 2116345, -970126, -508954, 1406065, 1611687, -355409, -2302639, -1160715, 1026497,
--1117765, -572841, -643171, 587874, 1946694, -269509, 471910, 2009508, 9548786, -2421288,
-137976, 6301791, -3248069, -3030636, 9418326, -7169374, -16976396, -11135776, -6564321, 10206990,
-4340065, 1420560, -9834938, 10416369, -4491462, 2927020, -2697240, 4097936, 5006322, -402116,
-124017, -81604, -1697049, -5369783, -4346507, -1309965, 559420, 4737886, 2670933, 7394860,
-3517041, -3207267, -1727651, 6584722, -4740034, 8077223, -6459094, 1750199, 3529390, 2302639,
--5241471, 7123740, -705448, 7653632, 10050223, 1561758, -4034585, -3878356, 4239670, -4818954,
--10241350, -2614561, 2130841, -6539625, 3727495, 3062312, -2197413, -4055523, -1760937, -1534377,
-1947768, -760746, -5778879, -2163053, 9920838, 8024610, 4279935, -11813844, -11659762, -6323803,
-11139535, 5695127, -903017, 1594507, -5535139, 7095286, -345745, -5446019, -1936493, 773631,
--572304, -2706903, -432718, -2133525, -1185411, 2135673, 3047279, -1755568, -64425, 324807,
-484794, 493384, -3092913, 3569655, -278099, -3441880, -2101850, -430570, -1122060, 116501,
--289910, -380105, -400506, 893353, 139050, -1552094, -140123, 681289, -428423, -2441689,
--1738388, -2272575, -853625, 1757715, 4894115, 7155953, -287226, 2822867, -10989211, -3641059,
-1920387, 3899294, -13653701, -1420560, 6027987, -4042638, -8846559, 5679558, -10306848, -7537668,
--4023311, 1011465, -3675955, -2470143, -234076, 7837779, -6470368, 1815697, -1981054, -2635499,
--5430450, -1431298, -7975218, -2310693, -136365, 1637993, -5545877, -1097364, -3461207, 607738,
--1715839, -2412698, 1585917, 6460168, 1720671, -3226057, 3267396, -4770635, -1105954, 1954747,
--1748589, 3263102, -933619, -268435, -22308598, 1576790, -7665443, 3881577, 3344706, 5038534,
--12232067, -12497281, 1801739, 525597, 3042984, 167504, 6810745, -2635499, 3750043, 4598300,
--2047089, 10612327, -3189550, -6775848, -1356136, -5595806, -91268, -11150809, 272194, 5633387,
-2709588, 8458938, -2216203, -2218351, 3809099, -4358318, 1157494, 2801393, 5519570, -2827162,
-3213173, -4328790, 980326, 243203, 692027, -2100776, -922881, -1550483, 1837172, -1946694,
--3087008, -2684, -1398549, -1937030, -606664, -1505923, -571768, -926639, 1027034, -1510218,
-1020055, -3107946, -224949, -1839857, -690416, 304943, 325881, -398895, -1398549, 186831,
--1002338, 520765, 170188, 8673150, -17505750, 4679367, 744103, 4849555, 7044283, 1266479,
--6788733, -14921253, 1064078, -6041409, 11326903, -4626217, 2341294, 806380, 2425583, 8524973,
--3765613, -281320, -3954591, -2254321, 2242510, -2177549, 8028368, 5947456, 1726577, -1725503,
-126165, 5340255, -535260, 2563559, -104690, -4452271, 3930969, -1167157, -3291019, 4708358,
-8051990, -10201, 3164317, 528818, -5300527, -3357054, 9776956, -4745402, 4693326, 7063611,
--9389335, 6681359, 3627637, 3371549, -4147328, 6850473, 2021856, -1234803, 8853538, 281320,
--68719, -4177393, -2312303, -51540, -3815542, -9477919, -2439005, 9580998, 7307350, 7872138,
--839666, -8409546, 3514357, 10049150, -1838246, -7210713, -316217, -5112622, -1246077, -898185,
-7921531, -813896, 4094715, -1096290, 423054, -5609228, 1525250, -1018981, 2236604, 2088965,
--3757560, 2527052, -5981279, 526670, 2244657, 88584, -1490891, -175557, 1271310, -4263292,
--699543, -4017942, 1304060, -2569464, -1490354, -2493766, -3963718, -2747705, -952409, 504659,
--1152125, -180926, 1370632, 344671, -965831, -836445, -1117228, 2233383, 176631, 750009,
-1605781, 845035, 1162862, -632971, 2088965, -392453, 158914, 731218, -660888, -1184337,
-638876, 1992865, -8324721, -2466385, -13412109, -3933116, -7786239, -9179419, -8703751, -3093987,
-11673721, 12702903, 17509508, 3901978, -6702297, -4131759, 14490146, -71941, -3398930, 11095511,
--1180579, 466541, -17380658, 7834021, 4350802, -11605539, 16038482, -2255932, 7195681, -1968706,
-3753802, 7117835, -2147, 12598213, 4820564, 3560528, -1479079, -4494684, 1192927, 7624104,
--2068564, 2250026, 3563212, 10103911, -491237, -3085397, 6509560, -7688529, -4834523, 3446175,
-11158325, -4975720, -6006512, -1912334, 9193377, 62277, 1286880, -3462281, -1588601, 3282429,
-4842576, 408559, -3987877, -12758737, 1496796, 3731253, 12112345, 3502546, -991601, 9292162,
-16630113, -3448859, 5818070, 3906810, 6883222, -1363115, -5864241, 3409130, -13809930, -3772592,
--2103460, -4496831, -2800856, 7164543, 2469606, -8952859, -5281736, 235149, -2927020, -338766,
--6845104, -227096, -2350958, -1741609, -948651, 667867, -1912871, -493921, -936303, 1446330,
--543850, 1325534, -1875290, -73014, 282931, 605590, 2768107, 67646, -1068910, 2573759,
-3779571, -317828, -2325725, -1480690, -3274376, -2873870, 3926137, -680752, 1057636, 1427540,
-1389422, 1289027, -3014530, 1461363, -1095754, -15311022, 21101174, -10850698, 4680978, -927176,
--7468948, 16051903, 3670050, 1869385, -17257716, 4302484, -6969658, -7929584, 1757715, -7742753,
-8514773, 5101348, -1600412, 1597191, -4338454, -2032056, -6365679, -4137127, -7616588, -11673184,
--2988760, -8209293, -2313914, 4253628, -3409667, -4482335, 8986145, 5602785, 9019431, -7654169,
--997506, -1647657, -8407935, -55835, -4541391, -20694226, 1648731, 234076, -3330747, 6995428,
--897648, 7732015, 6513318, 2323041, 12214350, 10866804, -11020886, -3115999, -64425, -539018,
-3711926, 1342177, 10358924, -2383707, 16638166, -160524, -10063645, -8176544, 1126355, 2893197,
-3275450, 12069932, 3046206, 2917357, 11314554, 15143518, 462783, -9515500, -9044127, -980326,
--3144453, -2306398, 19578608, 1275068, -9135395, 6273874, -8020315, 7364795, 1069984, -1700270,
--2518462, -6174553, 1507534, 1853278, -1066763, 1621350, 3156801, 1709397, 2094333, -1032403,
--1015760, 71941, -1281511, -1077500, 2058900, 736050, 1407139, 1847373, 3357054, 50466,
--1845762, 3143379, 1688996, 483721, 566936, -836445, 311922, -280247, 3335579, 5345087,
--3161633, 2466922, -843961, 2128156, 103079, 325881, 4496831, -408022, 256624, 237297,
-3655554, 2391760, 2619393, 1690070, 273267, 12633109, 865436, 8479339, -9513353, 4095788,
-638340, -805843, 5556614, 13369159, -3835406, -1330366, 12288438, -16514686, -9266929, -7270843,
--18919330, 3588982, -6085969, -2752000, 2130841, -12931610, 13929116, 10499584, 14802605, 6597607,
--9427453, 776852, 463320, 11070815, -2200634, -462246, -571231, -7039452, 419296, -4181688,
-6106907, -7461432, -2925410, -2583960, -3324842, -8720931, 3911105, -12742631, -2075543, -991601,
-7794829, 4600984, 909459, 36507, -2364916, 825707, -30602, 6493454, 1373316, 1813550,
--1208496, -19888382, -9359271, 2199023, 8045548, 9739912, -15665356, 10281615, 2917894, -6199249,
-1329292, 3265249, -3839701, 14930380, -26844, 2791192, -3711389, -21015812, -7349226, -9617506,
--2654827, 300111, -5982353, 2928631, 4279398, -4379256, -1077500, 13378823, 197569, 6779069,
--8438537, 966368, -322123, 7670275, 6651831, 4856535, -2056753, 1528472, 5422396, 3342558,
--446677, 5854041, 5547487, 6221260, 612033, 2332704, 1948305, 959388, -1026497, -867047,
-5217849, 963683, -3084324, 427349, -638876, 2934537, -2310693, 895501, 2604361, -2260764,
-4172024, 1473711, -840203, 317828, -4045859, 2751464, 2578054, -500901, -1094680, -2375654,
--3405909, 868657, 19536196, 3223910, 7976828, -11555073, -10446434, 6215892, 10205916, 1308891,
--3427384, 18749680, 5995238, 200253, -5020817, 4178466, -1306207, -1937030, -555661, -3080029,
-1007707, -6075231, -14630806, 4986994, 1658394, 4622459, 1607392, 8327942, 2641405, -8718784,
--17839146, 586263, 1488206, -1328219, -15592342, -7562901, -2223719, 4523675, -3291556, 1877975,
--13618804, 785442, -2929705, 202937, 1525787, 3934727, -1338419, -12838194, -11766063, -7310571,
-5150740, 3810710, -3027415, -2577517, -20618528, -11640435, -271657, -20141250, 18788334, -19011136,
--5104032, -12272332, 20140712, 6517613, -13935021, 7188702, -1485522, 7663296, -11849815, -3869766,
-673236, 8235600, -11241003, -4452808, -3721589, -11481521, 974421, 7794829, -1298691, -2027761,
-14011794, -21862458, 17447230, -2771328, 3807489, -9807558, 7106561, -1017370, 5694053, -4931696,
-439160, 4483946, 4932233, -1283122, -2247342, 116501, 649077, 665183, -1455994, 5500780,
-5843303, 4097399, 1206886, 4151086, -224949, 5082557, -1680943, 1001801, -54224, -1799591,
--1763084, 426812, -3961034, -4911295, -1284195, -230854, 5221607, -227096, -660351, -1306207,
--3318936, 2531346, -950798, -1748589, -1082869, 2679523, -379568, -5588826, -585189, 2081449,
-652298, -471373, 17247514, 37541236, -4869956, -11497091, -10769630, -9480603, -13683766, 2449205,
--23404350, -43487, -18062484, -8253854, 5755256, 11593727, 6695854, -8029442, -986232, 11039140,
--608812, 12716324, -7342784, -7381975, -6527814, 6088116, -4257387, -5557688, 2142115, -6695854,
--6867116, 8680666, 20217484, 7754027, 8719320, 3978750, -11704323, -2630668, -9475235, -8899709,
--1318555, -1469416, -7421704, -11904039, -24143084, -2092723, -8689256, 3318936, -4363150, 9266929,
-8547522, 4961761, 8939974, 6385543, -816044, 17172890, 24363202, 5978058, -28277528, 5962489,
--4971962, -16444356, 2431488, 8311299, 4151623, 908386, 7916162, -281857, -13414793, 1013075,
-6527814, -13371844, -7008313, -12516072, -23437636, 18725520, 2677912, -1183800, 13054553, 10295037,
-836982, 943819, 12903155, -17185238, -7448547, 2152852, 9549860, 8167417, 12243341, 8942122,
--7045357, -3946001, -1463510, -2545842, -911070, -1522029, -3353833, -4338454, -6941204, -6902013,
--4967130, -2498597, -631360, 3738232, -1789391, -1214939, -7968238, -5310190, 975494, 4489852,
-3068217, 1991791, 1850057, 1455994, -1000191, -3896072, -1872069, -2336462, -2157147, 1053341,
--4317516, 1177358, -3036542, 3640522, -235686, -909459, -2899640, 3061775, -2653753, -622770,
-5776731, -2051384, -24159, 27737972, -20232518, 24002962, -1823751, -2677375, -11956115, -4295504,
--11878269, -10050760, 12894029, -11129871, 6745783, 28760712, 10788421, -4037806, -12728672, -10625749,
-12907987, -10217190, -17468706, -7059853, 1970853, 1890323, -19969450, 1637456, -5947456, 10712185,
--6200859, -79994, 2491618, 30255360, -7107097, -9374303, 14727443, -11375221, 17659294, -10009421,
-12971338, 2378338, -9106404, -8240969, 16422344, -20781200, 16158204, -8822937, 1789928, -4794257,
-8893267, -7029251, -3565360, -45634, -6329171, 30878668, -8666170, 21150030, 8252243, 9832791,
--8590, 8157754, 13550622, 15276662, -3990025, -14329085, 211527, 12661027, 5130876, -1963337,
--18206366, 24766928, -5005248, -15969225, -4371203, -9695352, 7793755, 10839424, 551903, 18002892,
--4676683, 9359807, -20049444, -3305514, -21402896, -6440841, -7758322, -226023, 1308891, -3884261,
-7795366, 2790655, -5697811, -9635222, -7242926, -1858647, -812823, -4690105, -963146, -1480153,
-6181532, -1519882, 360240, -2021319, -9218610, -2530810, -3648038, 1433982, -1456531, -4939750,
--8046085, 3522410, -5411659, 2842195, 3702262, -5391795, -13864691, -3025805, -2103460, -3410741,
--4898410, 884226, -2250563, 1819456, 1711008, -6016176, -750546, -6054294, 5987185, 3963181,
--3282429, 1934883, -5521718, -31294742, -13383655, 19131932, -3827890, -7894150, 22250614, 2094333,
--11609297, 8411693, 12102144, 10248329, 1581622, -19270982, -7966628, 2896419, 2820183, 10010495,
-6634651, 11296838, -9837623, -7798050, 3795677, -2709051, 9285182, -18122614, -3067144, -19600084,
--6328098, 3499325, -2698313, -2498060, 20924544, 4317516, -15507516, -2394444, 1247151, -15888158,
--2145336, 735513, 9528385, 24019604, -8534637, 8001524, -13424457, 1979980, -7895761, -10216117,
-9814000, 20998632, -16671452, 1566053, 18753974, -8513699, -1723356, -7085623, 12279311, 2910377,
--15232638, -238908, -5316096, -5000416, -1506460, -7543573, 11368242, -27006754, 5720897, 2200634,
--11320997, 15038828, 23167054, 16285442, 44119516, 13314399, -11294690, -15727633, -12931073, -7136088,
-16210817, -5907191, 22505092, 1995012, 27401354, -32610076, -20845086, 9729712, -5319854, -3441880,
-13160854, -8940511, -979789, 13888850, 6257231, 10280541, 15335181, 11870216, -2554432, 4795868,
--9319005, 248571, -320512, -6658810, -7144141, 4697084, -9858024, -939524, 15024332, 1269163,
--8891656, -11777874, 2224793, -14775224, -5346698, 15686831, 8264591, -2689187, -3554086, 2932389,
--2861522, -5093295, 1132261, -3751117, -5539971, -1080721, -7631083, 5334887, 4818954, 5101348,
--2779918, -2181307, 3434363, 7946763, 21740050, -51583632, -2232309, 29113972, -39231840, -1967095,
-7495792, -40524628, 17874580, 4730370, 32141924, -3418257, 11240466, 9343701, -35674000, -29577830,
--11625403, -3036542, -17945984, -22035330, -11737072, 19996830, 13974750, 12040404, 1125281, 2084670,
-6199786, 1060857, -25945898, -9838159, -33256468, -10761041, 18320184, 5311264, 12320651, 41408316,
-10645613, 15528454, -828392, 8131984, 36468032, 27359478, 7512972, 17884244, 16426102, 36363340,
-29867740, -40028020, 24780350, -2420751, 23709294, 24107114, 9961103, 43695924, 38613368, -21555368,
-19031000, -459562, 18131204, -32247688, 2972654, 3286724, 1048509, -7433515, 20174536, 21828098,
--21461414, -7388418, -12664248, 7563438, -17812304, -22112102, 20485384, 35009352, 12770548, 36441724,
--10688026, 49579492, 48577152, 13451301, 25412784, -7622493, -12921409, 11287174, 11169062, 5302137,
-3742527, 2818036, 6439767, -7107097, -12690555, -9169755, -23723252, -24917252, -10108206, 11363410,
--433255, 9999758, 1674500, 6023155, 14916421, 18261664, -6082748, 8283382, -1001264, -7795366,
--6431714, -5592585, -15651935, -7326141, 142808, -13616657, -4868346, -12274480, -6795712, 2441152,
-16807818, -8149164, 5986111, 4598836, -2957622, 9163313, 5356898, 6953015, 106300, 12224551,
-7866770, 5226439, -5053566, -7693360, -3312494, -16594143, 23670638, 42750492, -6043556, -58822800,
--18911278, 5793374, -4759361, -9910100, -13050258, 18254, -33720860, -20289962, -28028956, -4667556,
--8314520, 9120900, -20058572, -5878200, 5186710, 9159018, -404801, 10210748, 20093468, 4038343,
-29066728, -18983218, 6874632, 1031329, 27721330, 7175280, -5640903, -28236726, 18502182, -4974109,
-25273736, -21501680, -17140140, -16316044, -8802535, -26015690, -3734474, -4596152, -24546274, 13315472,
-27581744, -13530758, 3943854, -36135708, 34476776, -11020886, -19036368, 15737297, 13668733, -20684026,
-1630477, -12911745, 4367982, -9466645, 43202004, -1646583, -3887482, -10726144, 76389216, 1932735,
--10560251, 32787244, 26161182, -27827630, 21546778, -34085396, -19116900, -35612796, 27041650, -24500104,
-12960064, 18727132, 14722611, -31552978, 39679056, -7161858, -52382496, -59499792, -23643794, -7285875,
--17481054, 13926431, 13480829, 23608898, 3666292, 2117956, -17901424, 17864380, 27713276, 41012644,
-10572062, -11649025, 3767760, 34923988, 5580773, -19132468, -4984310, 37277096, 8293582, -21876952,
--5938866, 18463528, 10361072, 16829830, 10997801, 23670102, -58519, 13066364, 4336843, 16801376,
-7623030, 26637924, 8533563, 16889422, -3558381, 5408975, 964220, -1810866, 6770479, -2183454,
-8865886, 16691854, 2200634, 9775882, 908922, 12661027, -28516436, -6349573, 21442088, 1961190,
--16522202, -78857208, 5629092, 50667728, -30623116, -20429548, 40692668, -29619706, -1924145, -8421357,
-39058968, -67092220, 37499896, 22244710, -18928994, 6990596, 36637680, 26148298, -12825846, 14957760,
-6724845, -10232760, 17234094, -383863, 10451803, 15843597, -6757058, 3817689, -1703491, 7549479,
--9698573, -7829726, -611496, 13594645, -39766564, -19705846, 19796578, -4483409, -26360362, -31166430,
-5409512, 38743288, -16798690, -24778740, 19077170, 28894930, -6303938, 7252589, -5087389, 26912266,
--14601278, 40360880, -5435281, 57445, 22154516, 449361, 5124433, -28702192, 45106284, -23322210,
--28193240, 21381420, -29853780, -9904195, 5090073, 14880451, 41685880, -14804752, 26010322, -5319854,
-13640279, -70565240, -53900764, -9942312, -20978230, 10736344, 9802189, 26743150, -4168803, -5652177,
-32003948, -35020088, -709743, 22332220, 22165790, -8181376, 24692304, 3059627, -5169530, -169651,
--5385352, 23533200, -13018046, -1388885, 23070416, 5231807, -5121212, 9010841, -11319923, 2892661,
--770947, 341450, 9391483, 4292820, -12951474, -3044058, 4155918, -10217727, -14795089, -263067,
-11026255, 19115288, -16067473, 18673980, 6540162, -18797462, 15663746, 17709224, -8819715, -21288006,
-19649476, -9767829, 3744675, 10662256, -10537165, -28176596, 9343701, 7467875, -15385647, -14788109,
-1260573, 10525354, -12160663, 4465692, -5252208, -25849260, -11890617, 19741818, -32350230, 32572496,
--27478664, -34584688, 20266340, -16494285, -11000485, 20691542, -14766634, 17352204, -11517492, 8298951,
-39908300, -34892316, -2122788, -4973572, 33683280, 4910222, 3558381, -31197032, -29256244, -10137733,
--8253317, -4206384, -9154723, 6273337, 2145336, -2831994, 5335423, 7531762, 3830574, 5935645,
--5692979, 15945066, -9681393, 15273977, -27705224, 1394254, -22365506, -29133836, -17003238, 39661340,
--16513076, -16879222, -12429098, 9419400, -7414724, 17869748, 25870198, -26317412, 24329380, 4674535,
--36509368, -18103288, 76741400, 39979704, -57437672, -10503879, 37172404, -18251464, -20699594, 15182173,
--17832704, -39594228, 29127394, 13480292, -53949084, 22772990, 27973658, -31584652, -20682952, 32844688,
--7520488, -24033026, 6001680, 16491064, -38977364, 7845832, 7384660, 11713986, -29653528, -8576513,
--2197950, -9269076, -1661079, 2323577, 3753802, -18040474, 3306588, 27535036, 9818295, 2073396,
-9354439, -115964, -4110821, -14574972, -4236449, -7727183, -10579578, -25217364, 7210177, -14238890,
--3668439, 31750008, -27381490, -17787608, 23516020, -16363825, -5697274, -6876780, 10802916, -17754858,
--6206765, 29306710, 15701864, -13761075, 16642461, 9494562, -11679627, -7271380, 39763344, -31082142,
--24082418, 42306500, 144955, -33065880, 4965519, 21026550, -19434728, -41378252, 28256590, 3843459,
--45949172, 8370355, 13303661, -33428268, -352187, 23130010, -5953899, -14636712, 12332999, 9922985,
--22917408, -1946694, 17573396, -12840342, -16414291, 11803107, 1065689, 47661788, 67630704, -27452358,
-75749800, -6299644, -21081846, -16404628, -26006564, -2481954, 12510703, 44523240, 1290101, 13481365,
--11636677, -39021388, 488553, 1071594, 25258166, 4490389, -29472066, 54006528, -23452132, 9788767,
-24206436, -27467926, -22218940, -39045548, -17157858, 23500450, 29549912, 36381056, -14099841, -90383288,
-19737522, 46577308, 60018948, 51359220, -1014149, -26181046, -32134946, 10459319, 30505542, -20030116,
--10581189, -80161808, -49060336, 42406360, 71888088, 14339822, -2197413, -17960480, -31764504, -7857106,
-19786378, -28388124, 10724533, -4443144, 45371496, -2433099, 17567490, -89640800, -11539503, 602906,
-54550916, 41939280, -1358283, -27210228, -7574175, 64639256, 29239600, -76978160, -94932200, -37516004,
-18836652, 146545360, 15694347, -26080116, 20058034, -39910448, 104294152, 31352724, -83384640, -52591336,
--10557030, 73229728, 10901164, -31287764, -28654948, -26902064, 20842402, 39155608, 19754702, -43373800,
--3711926, -15298674, 35173096, -4421669, 21220896, -8106214, -9138080, -28991030, 10932839, -9308805,
--3148211, 21456582, -34799436, 19651622, -5347235, -5925445, 51003, 15376520, 34307660, 16739635,
-2246268, -7451232, 7201587, -964757, 13888314, 3922379, 15339476, 3149285, 3831648, -18130668,
-8039642, 8494372, 6217502, -585189, 5113159, 2524904, 15222438, 17691508, 14202920, 1298154,
--10040023, -15431817, 4350802, 6841346, -8898635, 7502234, -12367895, 31361314, -36153960, 1126355,
--14556718, 8357470, -22401476, 21018496, 5786395, -11906723, -22601728, -11073499, -4313758, 6595459,
--30842160, 7133941, -15126875, -5842766, -24164560, -11325829, 19512036, -20537996, -7321846, -2785823,
-9509594, 6515466, -8068096, 11129334, -17712982, -1347009, 158914, 9542344, -11627550, 16844324,
-12463995, -12692702, -14840186, -5573257, 23795730, -17102560, 7467338, 17812304, 3882651, -17192754,
--6691022, 7530689, -10923712, 8150774, 708670, 3998615, -16040629, 3461744, -13062069, -452045,
-11981885, 15354508, 11774653, -8693551, 11228118, 1559073, -14281303, -1974611, -128849, 17088602,
--4748623, 3714610, 14642617, -3034395, -19292994, 26964878, -10992432, 16015396, 11537356, 2889439,
-3652870, -11172284, -14000520, 18636400, 2755759, 16418586, 4843113, 9022653, 4446902, -345745,
--915902, -14040785, 1546188, 3970161, 4952098, 5786932, -1816234, 6714108, 1063541, -683974,
-1736241, 1003412, 6699612, -1680406, 5208722, -6356552, -1733556, 166430, 448824, -3499862,
--2158758, 12724914, 7831873, -1961190, -9066676, -9990094, -3856344, -3925600, 11394011, 1333587,
--3560528, -7405598, -4006668, 1260573, -6411850, 13424457, 1113470, -5184026, 2138357, -56371,
--2527588, 3935801, -4012036, 11694122, -10950556, 8098161, -10666014, -29316374, 54380192, 4793184,
-2824478, -22190486, 12495670, -2015413, 14158897, 10750303, 16597364, 1690070, 4114042, -9583683,
-2560874, 15194521, -1659468, 8243116, -1489280, 2517388, 3243237, 6070937, -6659884, 11465415,
--8068633, 913754, -1429150, 3788161, -1191853, 2184528, 8683887, 9542880, -4837207, 4126927,
-1736777, -2319282, -4318590, 12761422, -4123169, 2583423, -3826816, 6604049, -194884, -6333466,
-12823699, -8213588, -2945811, 3295851, -6258304, -3839164, -2049236, 395674, -2490007, 79457,
--1397475, -3493419, 4258460, -8491150, 5116917, 3437585, -3009162, 5405217, -4357781, 6428493,
--3527779, 1132798, 1137630, -4073240, 6316287, -115427, 756451, -2160906, 8557185, -10448045,
-10871636, -7918309, 1182727, 1782948, -443455, 1926293, -1893007, 6264210, -6122476, 319438,
-5345624, -6707129, 4011500, 3635153, -1103807, 714575, 3607773, 1677722, -1864553, 2392297,
-548145, -943819, 384936, 2090039, 128849, -2872260, 627602, 1045825, -1552094, 3106335,
--831613, 2537252, -1820529, 343597, 1945083, -1442572, 208306, 1340030, -2188823, 3418794,
--464930, 1647657, -580357, 3605088, -1436667, 357556, 3329137, -3116536, 3871376, -2391760,
-1606855, -2456185, 3797288, -673773, 10441602, -49767932, -123915712, 19270444, 94399624, 87701088,
-152145456, -38821672, -40707164, -103574744, -141405360, -29154774, 51162724, 54731304, 103092104, 55992952,
-4440460, -26766236, -71937480, -51158428, -8811662, -8011188, 25665650, 23781770, 13775571, 8771397,
-6939057, -3802120, -17655536, -1380832, 20453708, 145492, 4326643, -1182190, -15287936, -11740830,
--26020522, -25537338, 11604465, 10664404, 23705536, 35984848, 27007292, 13160317, 4800700, -38884488,
--27454504, -21288542, -21274046, -23790898, 4998805, 15133317, 26389352, 33639256, 27888834, 6044093,
--3251290, -22356916, -22755810, -13575855, -6558952, 2158221, 3799972, 7518877, 710817, -7324530,
-2521146, -11673184, 6123550, 9859634, 1185948, 19770808, 23997592, 7370701, -4495757, -26379152,
--34640520, -14010183, -6344741, -4088272, 17709224, 13634911, -3538516, 15467788, 16899086, 9376987,
-11696270, -6487548, -12441447, -10103911, -14322642, -11471321, -2054605, -11016054, -4267050, 543850,
-8865886, 12368432, 17988934, 15412490, 14331769, 11264089, -5810017, -13492103, -22464290, -27848568,
--16089484, -12125230, 1646046, 13182328, 19610820, 22568442, 17982492, 16413218, 10714870, -14107357,
--24949466, -22682260, -10966662, -3314104, -928787, 1613834, 9666898, 8343511, 4134443, 1832877,
-7934952, 4354023, 6920803, 1810329, -10374494, -11609833, -7459822, -3148211, 3732864, 2458869,
--3670587, -2245731, 3725884, 1773822, 1695438, 4695473, 7846369, 3408594, 345208, -3952444,
--4258460, -3828427, -4348655, -6011881, -4258997, -450972, 3551938, 4544613, 6331856, 6458557,
-3845606, -332860, -2737505, -3791383, -3174518, -3306051, -2165737, -1748589, -288837, 1487669,
-2672007, 1889249, 1401770, 854699, 1426466, 652298, -390842, -2512019, -2100776, -912144,
-949188, 1065152, 516470, -1080184, -647466, -289910, 143345, 0, 756451, 957778,
-641024, -492311, -200790, 83752, 599685, 225486, -157840, -796180, -796716, -895501,
--185757, 229781, 344671, -29528, 395137, 705985, 1163936, 606664, 3758, -780610,
--862752, -899259, -387084, -205085, 3221, 118648, 578210, 399969, 267362, -62277,
--8590, -107911, -31675, -82678, 110059, 4832, -104153, -298500, -116501, -40265,
-102542, 5369, 39728, -20401, 34360, 12885, 81604, 35433, 49929, 9664,
-9664, -28454, -39192, -47245, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--5833103,
--75162, 1282048, 973347, 4169340, 551366, -506806, -2681670, 6125160, 3785477, 202937,
--750546, 6084358, 2068564, -1939178, -5328981, 3406983, -1532230, 2646237, -5071820, 330712,
--1210107, -3767760, -1018981, -1894618, -699006, 292058, 27917, -2746632, -1685238, -434329,
--526670, -1707250, 1833951, -173409, -1826972, 3263638, -5421860, -2570538, 2592550, -3255048,
-451508, -2019708, -2975339, 2027225, 1840930, -1596117, 2039036, 3926674, 2211908, -2034204,
--2379949, 430034, 773631, -2398739, 2602213, 4329864, -3689914, -1178969, 2132451, 1595044,
--877784, -1129040, -1801202, 2386391, 727997, -2858301, 3253438, 1583769, -2668785, -2002529,
-3420942, -2579665, -3294777, -6212134, -5399311, 2939905, 3402688, 272194, 1494649, -590558,
-1224066, -2301566, 3490198, -291521, 1615982, -1600949, 901943, -1458678, -1136556, 52613,
-2236604, -496069, -568546, -1003949, 333934, -759136, 155156, 258772, -461172, -547071,
-71941, -33823, -180926, -600222, 302795, -224412, 7785165, -754841, -1580548, -3195993,
-4980552, -2660732, -290984, -4058207, -4331475, -5443871, -2566243, 4258997, -4421669, -1655710,
--1561221, 1473174, -1107565, -6063420, 3148748, 1512902, 11769284, -1207423, 5501316, -1103807,
--300648, -537945, 599148, -2487860, 4551592, -1202054, -929324, -2756832, -514859, -988379,
-7057705, 1308891, -726386, -6628209, -688805, -1277753, 1987496, -4213363, -1177358, 1136556,
-937914, -1167694, -723165, -2618856, -997506, -3147137, -1428614, 6101001, -1809792, 1930051,
-3393561, -826781, -3331284, -4355097, 1116155, 1020055, 1300301, 2704219, 3192235, 2639794,
-1511829, -1210644, -1188632, -1400696, -6144488, -1466731, -639413, 2967823, 2514703, -1515050,
--165356, 3259880, -3417183, 1340030, 79994, -849330, -1984812, -2996814, -54761, 1784022,
-1785096, 1900523, -812823, 781684, -729071, 159988, 2652679, 1084479, 187368, 24696,
--427886, -62277, 150324, 533650, -360240, -371515, 1138166, 595927, 1159104, 1212791,
-226560, 675384, -195958, 197569, 64961, -539018, -1395328, -246424, -10292889, -2487323,
--173946, -2175401, -1500017, 3646427, -7222525, -6047851, -3530463, -2342905, 1060320, 8180839,
--1742683, 11274, 1007170, -5815386, -1503239, -4852240, -730144, 8662412, -642098, -4172561,
--2707440, 136365, 1785633, 1757715, -2398739, -10909217, -5211943, -1436130, -4198868, 416075,
-221191, 4456566, -2836289, 3961571, 983011, -1997697, -5835787, -4879083, 6804839, -5578626,
-3748433, 1117228, -3572339, -1320166, -3187940, -2276870, 3215857, -5994164, 3135863, 1085553,
--74088, 1036698, 444529, -572841, 156766, -3023657, -4162360, 328028, -1253057, -3062312,
--1226750, -4750234, 5577015, 3831648, 982474, 4575751, 561567, -1905892, 5666136, -2951180,
--1846836, -1889786, 4317516, -4166655, 1887638, 3048353, 191126, 1899449, 4699768, 1743220,
--119722, 326418, 1018444, 807991, -900333, -530428, 80531, -210453, 1523640, 760209,
-1609539, 1211181, 474594, -1402844, -1660005, 1045288, -38655, -66035, 1556926, -1041530,
--834297, 4832, 388695, 534723, -132607, -1697049, 1455994, 415538, -1267552, -7022809,
-8428873, 9573482, 2566780, 2516851, -2840584, 4423280, 2180233, -5721434, 1691143, 3555696,
--6818261, -5965173, 5847598, -5236102, -821413, -3402151, 5895380, 1227287, -753767, -2271501,
--114354, -3943317, 3523484, -2006287, 2107218, -1006633, -98247, 3806952, 1460289, 470836,
--1568737, 3728032, 2352032, 1056562, -390305, 3858491, -369367, 642635, -2544231, 4719096,
-1017370, 1835025, 3451006, -9713069, -3188476, -1978906, -3507378, -3433826, 921271, 5295158,
--2376191, -1515587, -2998424, -1399086, 1108102, 2282775, -6683506, -481573, 2265595, 186831,
--576063, 2798171, 1827509, -6300180, -1788317, -1437203, 3798899, -4174171, 5386963, 5793374,
-3031173, 1126892, -2787971, -231928, 423591, 3842922, -1100585, 384400, 426812, 505732,
-5763846, 544924, 6145562, 2194728, 44023, -3058017, -1741609, 2443837, -565862, -97711,
-201327, 56908, 520228, 2486786, 692564, 911607, 54761, 875636, -2107755, -275415,
-608275, 720481, -572841, -434865, -30602, 716186, -658204, -560493, 819265, 722628,
-1519345, 615254, 1402844, -970126, 71404, 57982, -613643, 1253057, 1928440, 10733123,
--1941325, -107374, 3946001, 2573222, 1933809, 3651796, 9534291, -2601140, -830539, -9098888,
-221191, -7810935, -9931575, 405338, 4287451, -12827457, 4409858, 4264366, 2347200, -3858491,
--3054259, -4211753, -1581622, 301721, 307627, 4150012, 5445482, -685584, -5290326, -3175055,
-4038880, -5665599, -2814277, -4778688, 1076963, -7758322, 3928285, 678605, -497142, 1318555,
--220654, -1726577, 37581, 5096516, -5779416, 7100655, -5313949, -557809, 1326071, -3478387,
--2868501, 2820720, 1383516, -1053878, -2690260, 5319854, 2216740, -3590593, -7307887, 921271,
-1721745, 4363150, -154082, -1825361, 393526, 2346663, -1723893, 10273562, -3391951, -1582696,
--7254737, -4744865, 11527155, 4748623, -2537252, -580894, -3983045, -4400731, -340376, 1680406,
-322659, -2093797, 2500208, 1449015, 3458523, -282394, -2477123, 1087701, 115427, -1053341,
-1019518, 1056025, -250182, 534187, 1371705, 536334, -313533, -945967, 578747, 446140,
--955093, 1982127, 1602560, 609349, -934692, -2331094, 178778, -96100, -89657, 1167694,
--1195612, 878858, 1275068, 404264, -728534, 2997887, 6936372, -9137543, -5376762, 6484327,
--4763656, -5074504, -5579163, -6677064, 4891968, -1646046, -148176, -1493575, 304943, -7435126,
--1444183, 3483219, 3798362, 907312, -3905199, -5693516, -4721243, -6010807, 1279363, 7291781,
-1023276, 2396592, 2528662, 2469069, -4205847, 4514548, 2821794, -3130494, -2516314, -9766756,
-1557463, 2246805, -7668127, -558346, 2418067, -1394791, 998580, -643171, -8231842, 7091528,
--7665980, 6115497, 370441, 3107409, -8635032, -4803384, -7728257, -6075768, 1174137, -2134062,
--2719251, -3403225, 16643, 3917010, -7149510, -73551, 2127083, -2273112, -7977365, -4971425,
--1639604, 1559073, 3928285, 1738388, -6565395, 7094749, -2234994, -1491964, 7039989, -9141301,
--2989297, -1785096, -1609002, 11045045, -3978750, -141197, -4130685, -3403762, 2028298, 1560684,
--223338, 1223529, -852014, -1505386, 2079838, 74088, 863825, 925029, 2681133, -995896,
-796716, 636192, 205085, 742493, -3003793, 3985193, 3597035, -1175210, -598074, 606127,
--499827, 721018, 132070, -231391, -1437203, 937377, -735513, 390842, 3497177, 2267206,
-1884954, -1389422, 2497524, 1035087, -992137, 1174137, 390305, 879931, 295279, 14107357,
--12709882, -6732898, -8490077, 6011344, 2221035, -4371203, 2786897, -139050, 8365523, 458488,
-15032, -8210904, 5675800, 9242233, 9700721, 8051990, -4600984, -767725, 1184337, -5268851,
--3624953, 1290638, 519691, -7559680, -3738769, -3228742, 3588445, -639950, -5725192, -2675228,
-1789928, 4424890, 486942, -1641214, 3221, -4048007, -179852, -319975, 544924, -8635032,
-4933307, 5821828, 1149978, 2966749, 3446175, -7004018, 9858024, 8865349, 1593433, -6242735,
-3489124, -2253784, -9220758, -2399813, -2943126, -206695, 515933, -238371, -5586679, -5011690,
--11438035, -9561134, 92879, 5696201, -5258651, 2365453, 707596, -3585224, -9321690, -980326,
-5395553, -3660923, 4839892, 9527848, 2882997, -4015258, 5501316, -75699, -607738, 2566780,
-4278325, -428960, -772557, 1140851, 2755222, -1586454, -6265821, 310311, -196495, 612570,
-755377, 2042794, 4551592, -1687385, -822486, 3404835, 3118146, 625992, 437013, -2269890,
-4387846, 449361, -314606, 2594160, 809064, 916439, 429497, 2335389, 2101850, 2323041,
-3875134, 264141, 2305324, 284542, 2568927, 1186485, 1449552, 963146, 2430952, 2117956,
-1740536, -13553843, 1387274, -5086852, -18141404, -13965086, 3439732, 88047, -3163244, 3185255,
-8663486, -1424319, 5174362, 4583267, 2644089, -1426466, -4754529, 3809636, -4056060, 448287,
--3489661, 5405753, 9911711, -8989903, -2623688, 521302, 3573950, 933082, -2834142, -1660542,
--3381750, -290447, -4175245, 5231807, 1111323, -6327024, 6959458, -7053410, -2294586, 8571144,
-7531225, 6365142, -7352447, -4822175, -6593312, 7556458, 10228465, -180389, -2184528, 8129300,
--12068858, 1451699, 3162707, -1185948, -10152766, 9057549, 3122978, 4591857, 8464307, 430034,
--12241731, 3175055, 4936528, -3140158, -972273, 8374113, -8769249, -8188892, -7117298, 832687,
-10751377, 5830955, -1633698, 12370580, -16557099, -6099928, 120259, 7912404, 3617436, -2400887,
--13178570, -2062658, -5334887, 1442035, 4902169, 12749610, 2094333, -3621194, 1588601, -2189360,
--934692, -4237522, -67109, -3493956, 1104880, 3468186, 1885491, 3191698, 3529926, 1136556,
-685047, 15569, 549756, -1762547, -1925219, 153008, 3722663, 1432372, -565325, 667867,
-1437740, 3059627, 308701, -1034013, 420907, -1009317, 2361695, -4571456, -2873870, -2024540,
-2752537, 2468533, -4107063, 887985, -14602889, 14660334, 5929203, -408559, -1544578, 1187559,
-2477659, 7919920, -1561221, 831076, -2598455, -1889249, 4446902, 2268817, 5171141, 2248952,
-2965675, -9989557, -4168803, 16632261, 1641214, 4909685, 6960532, 2583423, -5701569, -10535018,
-3217468, -4423280, 346282, 3641059, -5268315, -6186901, 7431367, 8731132, -4621922, -3297461,
-6751689, -8403640, 3610994, -6478958, 2846490, -6271726, 8985608, 1211181, -1246077, 3131031,
-15473157, 4234301, 5963562, -1800665, 739271, 2597918, 11412802, -1042066, 16378858, 440234,
-7754564, -332323, 14779519, 5201743, 11016054, 8351564, -1920387, -5011690, -1393180, -5718212,
--6311455, 8646843, -1813013, -3447248, 1291711, 77846, -4505958, -2215666, 1295470, 3843459,
-1017370, -7488813, -7432978, -3878892, -7588134, -245887, -221191, -2260227, 2022393, -196495,
-2996814, -496069, -3132642, 587337, -1359894, -5716602, -3640522, 766115, 7521562, -3241627,
-2744484, -900333, -146566, 3474629, -2703145, 1153736, 1657857, -1967632, -1380295, -987306,
--2237141, 1030792, -2780991, -3578782, -1416802, -3873524, 4743792, -1386738, 226023, -447750,
--353798, 476205, -1661616, 679142, 1148904, 595390, 1891933, 2574833, 391379, 1913408,
--1520418, -4176319, 756988, -1173063, 1668058, -1719598, 17145510, -4397510, -66035, -20947092,
--664109, 11317239, -5799817, 9842991, -13291313, 2018635, 1428077, -312459, -17652316, -726386,
--29469382, 1466195, -3174518, -12307766, -2073932, 1727651, -6400575, 1192390, 7556458, 1214939,
--6680285, 1321776, -2009508, 6617471, -7188702, 485331, 9563282, 2196339, 871342, -1354525,
-7349763, -4617627, 848793, 27917, 5661841, 1134408, -9887015, -5257577, -6947647, 8301098,
--18594524, 9096204, 7524783, 6439767, 3656628, 1444183, -8088497, 5878200, -12021077, -2818572,
--2455111, -2463164, -444529, 815507, 3981435, -9267466, -3566434, 15760919, 6678138, -5683316,
--6567542, 1755568, -2673080, 4835597, -3099893, -924492, -4990215, 14292577, 7354595, -4846871,
-989453, -7213935, 1781338, -5436355, -1794760, 5698885, 5378373, -1606318, 10499048, -4045859,
-5260261, -6774774, 7362648, 1097901, -4121558, -5701032, -8435316, 2200097, -835371, 3925063,
--989453, -2491618, 1671816, 1626719, 2689187, 2113661, 4872641, -153545, 1639604, -3653944,
-3081639, -2616709, -1221918, -1957968, -284005, -4662724, -697932, 1853815, 4342212, -4006668,
--1836099, -2891050, 3014530, 2255395, -1751273, -348966, -3020436, 2425046, 399969, 10776073,
-10889890, 6299644, 5622112, -5371394, 6260452, 10463614, -7860327, -333397, -20323248, 11562589,
-7881265, -2944200, 4651450, -1360968, 1576253, 7176354, -4584341, 11257109, -10245644, 926639,
-12698608, 5521718, 743029, 9774809, -3518652, 4458176, 2553358, 5209259, 8667244, -5203890,
--1079647, 15995532, 7991324, -412317, 2181307, -10939819, 14741938, -12502650, -817118, 12876312,
-3984119, 13867376, -8774081, 2170569, -595927, -3473018, 1839320, -13521094, -9468255, 12618614,
--6345278, -2782602, -4316442, -14376329, 10137197, -3440269, -2394981, -6407555, 6228240, 14472966,
--11486353, -2401961, 9782862, -10837276, -4718559, 8690866, 12202539, -20272782, -5407364, -1803349,
-8603893, -376347, 10051834, -2516851, -7392176, 418759, 5345087, 12974022, 6566468, -8840653,
--468688, 6346351, -13016435, -8035347, -2500208, -6733972, -6781217, -869731, 6164352, -5910412,
-1438277, 6359236, 1782411, 1080184, 4494147, -1185411, 2893197, 2723546, 2739652, 1503775,
--513785, -3988951, -1334661, -1161789, -3568044, -1684701, 556198, 389231, -532039, 488553,
-3941169, -3316252, -1046898, -2480344, 1893007, 1780801, -766652, -2757369, -5944235, 2934000,
-2274722, 3803194, 1066226, 879931, -412854, -3761318, 1500017, -1548873, -1683627, -1137630,
-1032403, -727460, 10566156, 22397718, 4325569, -13252658, -4725001, 4389994, -29392072, 917512,
-176631, -4612258, -1444183, 13564044, -22180822, 4865661, 10368588, -8170639, 9190156, 17127792,
-4252018, -15855946, 4291209, -4005057, -284005, -15544560, -4685810, 14146012, -1585917, 12968117,
--3412352, -4571993, 2131915, -11011222, -6171868, -7933342, -5859409, -4346507, 10606959, -11732777,
-1913408, 20431160, 13821205, 4587025, -20783884, 3429532, 13656385, 5681705, 824634, -7446400,
--9016210, -22231288, -15322833, 3139621, -7574712, -7622493, -421444, 9451076, 6734509, -6710350,
-308701, 13459354, -5178120, -2321967, 631897, 17703856, 694174, -932545, 9043591, 2784750,
--20172388, 5621576, 5870147, -142271, -16700980, 7013145, 9817758, -7396471, -5220533, -13760001,
-3674345, -5082020, 5215164, 2559801, -3206193, -5862094, 3809636, 1686848, 5870147, -2958696,
-9141838, 3173444, -6230387, 701153, -299037, -8642011, 186831, 643708, -3758, -228707,
--4502200, -3972308, -1797981, -163746, 5742372, 1840930, 3015067, 4571993, -2088428, -2804077,
-2223183, -4531728, -3981972, -228170, -197032, 1333587, -1299765, 949725, 2838437, 2931315,
-398358, -1840930, -402653, -301721, -479963, -35433, -719944, 286152, -77846, 3819837,
--2214593, -2872260, 7117298, 5000953, -663572, 1889786, -3189550, 1360968, 99858, -1345399,
--6765647, 22994182, 1116155, -4823785, -473520, 10078678, -5087389, 2668785, -2643016, 2266132,
-8622147, -16147466, 16747688, 18991272, 5236639, 7953743, -6635188, 10708427, 25054692, 676457,
--3033858, -4782446, 10582799, -3939559, -6243272, -2262374, 3660923, -12685723, 5442798, -11188390,
-12506408, 2746095, 12595528, -8120173, 11468636, 3331821, 15055471, 2393908, 3060701, -5560909,
-9324911, 2250563, -3138547, 13531294, -5455146, -9844065, 19174882, 15285252, 5557151, 14442364,
-20994874, 25490630, -8096014, -8141648, -9167608, 3089692, -11891154, 13763223, -1846299, -1377611,
--19817516, 4465156, 22213570, 22645752, -1006633, -3088082, -15741592, 140123, 14705968, -7677254,
--9375377, 8286603, 1195612, -8190503, 2750390, -1414655, -5058935, -1215476, -4355097, -269509,
-8486855, 6302328, -1868311, 1443109, -2195802, -8690329, -11317239, -2181844, 5469104, 2168422,
-7788387, -1682554, -7556995, -2126546, 8082055, -3938485, 4552666, 7458211, -7699803, -2106145,
--846645, 1845762, -517007, 4954782, 3585224, 1739999, -7670812, 1837172, 4038880, 1179505,
-1599875, 2657511, -6815576, -3212636, -96100, -419833, -3662533, -8790187, -2925410, 696322,
-4418985, 924492, -3670050, -4232154, 1566589, -30114164, -20984674, 11334419, 4515085, -15690052,
-1830193, 7226283, -14301167, -8913131, -6063957, 17476758, 7923678, 5727876, -5313412, -4012036,
--4188667, -10550050, -14178761, -25070260, 13344463, 11494406, -5190468, 28767154, 13889924, 27632746,
-18985902, 1978906, -8606578, 7493108, 3540127, 12699145, 14494978, 16063178, -2105071, -2545842,
-6915971, -6914898, -1488743, -6063957, -11669426, -19209242, -5505611, 20059644, -4744328, -7660074,
--11051488, 8135205, 12157442, 8239895, 948651, 11933567, 22917946, -13314935, -6036040, -10186589,
--7425999, -21663816, -5209796, 5813775, -9826885, -7536594, -25104620, -35691180, 4092030, -23420456,
--37141804, -26702886, -11205033, 24420110, 8489003, 15015206, 11187853, -24571508, -10355703, 2437394,
-12600897, -12059194, -14512694, -13864691, -4275640, 7692824, -8291971, -30681636, -19374598, -4158065,
--6155225, -1927904, -4476430, 17799418, 16085726, 16856672, 16994112, 5926518, -28991, 6658273,
-1882269, -213138, 5098126, -13638132, -5287642, 6386617, 8278550, -47782, -4445291, -4714801,
-2151779, -7264937, -10953240, 10495289, -8139500, -3828963, 1005559, -9263708, -8978629, -16045461,
--6315750, -3497714, 1248762, 14055280, -3442953, -1667521, -4267050, 7352984, -3614215, 750009,
-6740415, 917512, -4648229, 3449396, 6715718, -3698504, -943282, 181462, -2265059, 4105989,
--57084948, -8475581, 19116362, -19057844, 8643085, -7079180, -30697206, -9179956, 34087544, 42752640,
--21809844, 1343788, -7125351, -33865816, -26820460, -25352118, -27051852, -14232448, -17458506, -945967,
-6504191, -4272419, 7647190, 7035157, -10719165, -2567854, -14931454, 7046968, -23851564, -21507586,
-5883569, 4314295, -6063957, -7566659, 19779398, -5145908, 27235462, 6386617, 25290914, -16222628,
-11353746, 7464117, 30509838, 16462073, 11089069, 3331821, 5130876, -3077881, 9392557, 12780749,
--9067750, -13042742, 21539798, -2448131, -25663504, -49961208, -60017336, -43275016, 7850664, 352724,
--55848532, 18759344, 10203769, 14545980, -18657338, 2850248, 7231115, 2915209, 29549374, 29908004,
-59574956, 19983946, -30867394, -40006008, -24235964, -21937082, -25232932, -22607098, -217970, 12943958,
-17514876, -10550050, 22873922, -18774376, -26103200, -20423644, -13211856, -10049150, -20272246, 13389024,
--870268, 12815109, 10172093, 1751273, 22475564, -11192148, -4444218, -21511344, 7907572, 11892228,
--1256815, -1701344, 7155953, -20665236, 1330366, -7206955, 4558034, -9849434, -13806709, 8926016,
-140123, -5762236, -1724429, 10443750, -7501698, 5493263, -6945499, 6222871, 5790153, -2772938,
--6892349, 4870493, 5682242, -15242839, 6964290, -3766150, -4002373, -4584878, 3849365, -10273025,
--4702453, 32338956, -8652212, -61108796, -17459042, 50303192, -6958384, 11214696, 7183870, 9385577,
-17638894, 14417131, 5058398, -9982578, -3674882, 2483028, -10845866, -2550674, 18516678, -16564615,
--9809705, -16608639, -3927748, 2826625, 2177549, 4363150, 8698383, -12646531, 11304891, 27509266,
--427886, -16115791, 1544578, -10561325, -3543885, 16292958, -17146584, 1901060, 5544803, 19927038,
-29042568, -18459770, -10390063, 11149198, 1664300, 3098819, 3485366, -12276627, -31047782, -5647345,
--14372571, 28292024, -53727892, -35509180, -14426795, -5964099, 15729781, 3162707, -18849538, -3310346,
--21736292, -23780698, -8290361, -17233020, 3311957, 13921063, 64969432, 11870216, -9425306, -41816340,
--34053720, 10013716, -836982, -39276404, 21336324, 20838108, -39567388, -919123, 10581726, 11310260,
-43146704, 18659486, 9205726, -42606612, -21622476, -29468308, 26886496, -2895882, -8473434, -4959077,
-8572218, 27867358, 24114630, -12797392, -24894168, -37015100, 9196599, 21503290, -7395397, -4026532,
-19443316, 10687489, 16987670, 3954591, 6242735, -14445049, -3936338, -6985228, 7521025, 7239168,
--1685775, -3588982, -1810329, 9846749, 11713986, -17002164, 9977746, 6998113, 14101988, -9178345,
--5820755, 8303246, 3382287, -12410845, -932008, 13791677, 3015604, -10851235, -3557844, 1433982,
--20789252, -71877888, 10918344, 11826729, -1828582, -586263, -5012764, -20276004, 8753680, -4013647,
-37523520, -37562712, -7225209, 39516920, -1240172, -25755308, -2685428, 23547158, 28492276, 17730162,
--4474819, 20562156, -14578730, 14071387, -5602248, -4620311, -12545599, 22469122, 15446850, -13757317,
--6054830, -1544578, 22757958, -1557463, 2885144, -13740137, 15502148, 10264435, -15950435, 30406220,
-1849520, -26334592, 24240258, -28656022, -14889578, 27108222, -56219512, -35625144, 31346818, -19063212,
-23368380, -35435628, 8522289, 13721884, -19272056, 1285269, -1058173, -36588828, -8114804, 38863548,
-40960568, -45502496, -14783277, 14583025, -36410584, 48192216, 48227652, 7372312, -67815920, -35321276,
-73147048, -37837588, -7154879, 59464360, -34069292, -69990248, -15323370, 64256468, -13205951, -45951856,
--10916733, -84339736, -3360812, 69333656, -24545202, -68061272, -6453189, -18706194, -8722005, 21000242,
--1914482, -230318, -24476482, -15781857, -7435126, 28083180, -34372088, 2304787, 6149320, -10345502,
-1780801, 33321966, -20389284, -25722560, -2926483, 9819906, 21096342, -7568269, 10901164, 16252156,
-2367064, -23157926, -12101607, 1146219, -18358838, -8595303, 36826124, -13065291, -34768836, -8868034,
-21218212, 9146133, -2075006, 5200132, -31369904, -17821966, 24967718, 36698348, 5000953, -26138098,
--12434467, 1769527, 10190347, 18702972, 2509335, -10253161, -39760660, -37519760, -836445, -47367584,
--13868986, -20135344, -18868328, -14310831, 30993020, -3370476, -9681930, -13002477, 6220724, -16640851,
--39335456, 30629022, 9853729, 26456998, 8511551, 27359478, -10654203, -16908212, 6304475, -28616294,
-22472342, -25920128, -5234492, 17077326, -19412178, -4155918, -11683922, -31386010, 4993437, -23700704,
--16829830, -20682416, -15046344, -9459665, -20763482, 3704409, 23614804, -15791521, -5331665, 2873870,
-21794274, -9804337, 7915625, -22055194, 36110476, 11192685, 15663209, 9800042, 34656092, -2027225,
--40044128, 8893804, 14980309, -11229729, 195958, 21235392, -27744952, -27858768, -32248226, 28123446,
-8679592, -40097816, 15962246, -26473104, -4821101, -37424196, 16904454, 26547192, 5856725, -41459320,
-23625542, 19199578, -4928475, -36449240, 10193568, -22005802, -7159711, -1614908, -10755135, 18009334,
--15913391, -29578902, 15041512, -6635725, 12782360, -208843, -729608, -243203, -7644505, -9254044,
-6623377, 26313654, -2830384, -37318432, -9923522, 15433965, -18025978, -7924215, 18274012, -6824703,
--2176475, -14987288, 29614874, 17067664, -8216273, 13037373, -1932198, 5796595, 24113020, -4412005,
--20348482, 8556649, 13950591, -10838350, 17506286, -2895345, 10969883, 1080184, -7289633, 14118094,
-21196738, -12034498, -21407190, 8404177, 13895830, -10937134, -1717450, 12311524, 4791573, -8567386,
--8574902, 10903311, 35111356, 66104916, -16107738, 32705640, 6230387, -15805480, -29783450, -17409650,
-38371776, -12775917, 6985228, 14817637, -4070555, 35391068, -5406290, 27748174, 28959354, -35898412,
-18249316, -9492415, 681826, 12998182, 10697153, -1336809, 5619965, 10506564, 35481260, 36575404,
-28105730, -20820928, -7264401, -48864916, -1670742, 11421392, 21807696, 4984847, -40550396, 17588428,
--24422794, 31221192, -28480466, -19854024, 1833951, -23736674, -4269198, -13732084, 47976932, -26403312,
--13107703, -50567336, -16645146, -26572962, 71096208, 43301324, -15247134, -48091824, -51731808, -30656402,
-35254164, 46252504, 23248658, 6791417, -62035972, -28731720, 20091320, 17322676, 2462627, 22339736,
--13052942, -40708236, 19031536, -69045360, 74855912, -7029251, -48767208, 112939384, 15968688, 39305932,
-67460512, -112114216, -81013824, 22391276, -6891812, 17160542, 24319716, -70070240, -5426155, 14178224,
-1174137, 58756228, 3930969, -30707942, -3448322, 31609886, -18556406, 13842143, 15984258, 702227,
--13079786, 15501074, -41049688, 31221728, -8201777, -12924093, 17346300, 4763119, 1014686, 18540300,
--4597226, 11144903, -2497524, 7190849, -5564130, -21336324, 12776454, 9169755, 12071006, -12348,
-134755, 8549132, 4462471, 3396246, 24730422, 27850716, 1370632, 18301392, -17300128, 2721399,
--11431592, 21155398, 18960134, 3118146, -5743445, -12458626, -29805462, -12890271, 2354716, -29436632,
-19801410, -41559176, 25612500, -17151952, 42075112, -19087908, -2014340, 23916526, 4217121, 2017024,
--10909754, -9495636, 1052267, -16230145, 17738214, -2167885, 18842558, -14900852, -14627585, 4867272,
-715649, -15111842, 9434433, -1997697, 8234526, -4715874, -4074313, 7778723, -7542500, -725850,
-5873368, -3175055, -3598646, 29778082, -2055142, -10131828, -5351530, 14072997, -1289564, -16410533,
-8656507, 17365626, 3551938, 287226, -10334228, 3542274, -8361765, 7882876, 21285322, -7686918,
-9752797, -8157754, -2351495, -8925479, -4110284, 5456756, 6921340, -12575664, 7537131, 2065342,
--1524177, -12581033, 2190970, 4351339, -9141301, 13180718, 11267310, -22610856, 5805722, -20772072,
--23332410, 15919833, -8251706, 19261854, 10679973, 401043, 10056666, -3301219, -11978127, -3085397,
-830539, 13348221, -5999533, 3943854, 5701032, -8001524, -1293322, 4487167, -2222109, -1728724,
-7980049, -321049, 3151432, -6700686, 2850248, -907312, -6507949, 12374338, 1276142, 10048613,
--4862440, 8199630, -4057670, 324270, -6455873, 5379984, -3030100, 12214350, -3688303, 11527155,
--11939472, 2389613, 1024350, -2865280, 655519, 1165547, 9647033, -744103, -10801306, 6971806,
--5965710, 829466, 6982543, -7211250, 12010339, -24503862, 51458540, 9631464, 12569759, -6653441,
-4619238, -1599339, 9671729, 2981244, 21876952, 1411434, -12016245, 7136088, -7873749, 3288334,
-4405563, -10183367, 440234, 2335925, -10994043, 9841381, 2456721, -4570382, 13271986, -4873714,
-5188321, -4183298, 2395518, 2455111, 1127429, -1773285, -4046933, -1916629, 1776506, 239981,
--2322504, -6591164, 4758287, -4454955, 2326799, 4181151, -4542465, 857920, -4249334, 1105954,
--6685117, -10768557, 10937671, -6009733, -2954401, 4598836, 2057826, -1966021, 1158567, 9403831,
--10553272, 4445828, -4038343, 8137890, -8886287, 4923643, 2364916, -1625645, 1823751, 133144,
-18790, 3947612, -5658620, 3058554, 2653216, -1577864, -646929, 7110319, -1208496, 2377265,
--8436926, 11171210, -8820252, -200253, 5516886, -5138392, 3731790, 1190780, 1248762, -5368172,
-4174171, 4391067, -2906619, 1700807, 2103460, -3841312, 1219234, 1797981, -930397, 3850975,
-60666, -147103, -534723, 3452080, 2591476, -2285460, 2935073, -1626719, 1249836, 1489280,
--501974, 4311074, -2088428, -21475, 2664490, -3503620, 153008, -402116, -2565706, 294742,
-2368138, -788127, -2179159, 4298726, -2907693, 607738, 9752260, -45808512, -113716240, 24562918,
-94565520, 63920388, 133380744, -43626668, -37286220, -76741400, -122638496, -12127914, 38233260, 50383188,
-65773128, 33148020, 3645890, -10761041, -28424630, -40565968, -6133214, -10844792, 4006131, 9296994,
--468688, 2325725, 4918812, 2160906, 16077136, 19055696, 11869679, -2203318, 2222109, -14130442,
--29593398, -31575526, -15454366, -20717312, 17067664, 31399432, 33369212, 36590436, 20088098, -5943161,
--14434311, -26931592, -28403156, -19776714, -11089606, -1302449, 7204271, 13779866, 14846628, 12440910,
-10768557, -1869921, 2915209, -3203509, 1453310, -2414845, -1439351, -882079, -10048613, -10591926,
--7620346, -15950972, 54224, -3027415, 2040110, 27055610, 35716412, 12016782, 12128451, -9816148,
--19572702, -13584982, -23575076, -18994492, 6724845, -1657857, -11406359, 8770860, 9468792, 11212012,
-26750666, 11085311, 11760694, 2887292, -14333916, -14200772, -11553999, -12688407, -15981573, -13714904,
--8104604, 2495913, 17887466, 26856430, 25225416, 10181220, 5139465, -6580964, -12132746, -10984916,
--12022687, -13974213, -6322729, -5831492, -418222, 4684736, 3676492, 10821707, 14454176, 10388989,
-7161321, 2479270, -843961, -6837051, -6983617, -11012833, -12304544, -9743133, -8606578, -2209761,
-9312026, 13800804, 14954539, 13212930, 5462662, 2441152, -6564858, -10540923, -5542119, -7788923,
--10510859, -8010114, 1541893, 7206419, 6845641, 3811247, 4391604, 3900904, 3070902, 907849,
--648003, -1088237, -2707440, -3576097, -3234110, -3854733, -4467840, -2411624, 2134062, 3740917,
-4836133, 4030827, 2955474, 1007707, 134755, -1179505, -1682017, -2179696, -2368138, -2689723,
--1528472, -598611, 963146, 1566053, 1571958, 1340567, 1220845, 251792, 40265, -292058,
-193810, 183610, 629213, -887448, -1576253, -1376537, -751619, -707059, 336081, 965294,
-1271847, 751082, -404264, -536871, 740882, 1180042, 1013612, -317291, -1243930, -1464584,
--526670, -38118, 273804, -170188, -271657, -355409, 91805, 351650, 860067, 669478,
-655519, 456340, 129386, -431107, -631897, -853625, -719407, -745177, -435402, 155156,
-786516, 755377, 723702, 434329, 302795, 181999, -110059, -589484, -540629, -440771,
--238371, -86973, 122943, 4295, 20401, 77309, 208843, 239444, 201863, 39728,
--55835, -110059, -84826, -52613, -22549, -25770, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--6444599,
-798327, 2026688, 1962800, 10102837, 2733210, 2121714, -3013457, 372052, -5147519, 1188632,
-4697084, -2405719, 208843, -1010391, -2541547, -4082367, 3124052, -6818261, -3449933, -3429532,
-3672734, 4026532, 2113124, 951872, 2910377, 2401424, 4817880, -1694902, 1676111, 2991982,
-621697, 975494, -3542274, -1534377, -1490891, -1342177, 3251827, -6272263, 1030255, -2182917,
-6541235, 141734, -1197222, -1660005, -2719788, -915365, -2837900, -8267812, -2628520, -1631014,
--1349694, -1866163, 836982, -1561758, -405338, -546535, 2873333, 1277753, -390305, 1831267,
--1633698, 3528316, -2338610, -3856881, 3694746, 3876208, -1698660, -3704946, 337155, 2006287,
-1508607, 1741609, -1764695, 6442, 1409286, 1909650, 823023, -544387, 217970, 2376728,
-4591857, 2216740, -587874, -71404, -1111323, -1171452, 944356, -1537598, 916976, 1122060,
--466004, -166430, 483721, 426276, -483721, 367757, 243203, -2133525, 315143, 148713,
-636192, 360240, -831076, 748935, 583579, -71404, 9132174, -1735167, -898722, 960462,
-2503966, -6768332, 4179003, -8029978, -383326, -3898757, -592169, -2584497, -626528, -646393,
-4002373, -3415036, 4336843, -4567161, -4985920, 2081449, 6640557, -7876433, -2202781, -3821447,
-33823, -1998770, 2101850, 2794413, 1403381, 2847027, -4584878, 143881, 6385006, 2493766,
-795106, -4672925, -6663642, -4020626, 998580, -3421478, -1939178, 1275068, 4293894, -3911105,
--3850438, 1529545, -2820720, 4931160, 1639604, -533113, 3473555, 3294240, -24159, 5544803,
-2734821, 1720134, 1455457, 3626563, 5727876, -3809099, 1079111, 1555315, -4061429, 335007,
-3263102, -1301912, 8281234, -2588255, -2222646, -1753420, 3040837, 4198868, -5403606, -2218351,
-1445793, -1002875, 1301912, 494458, -2379412, 1026497, 483721, -1764695, -2873870, 1148904,
-779537, 2590402, 199716, 780073, 1181116, -144955, -877247, 1890323, 93952, -36507,
-1632625, -926102, 780073, 2175938, -206695, -506806, 396748, -359704, 660351, -1381906,
--444529, -660351, 68183, -236760, 842350, 59593, -866510, 5369, -11746736, -1891396,
--2608656, -2083059, -1039919, -1426466, 6268505, 7490960, -1695438, 6114423, 2340757, -3361349,
-1603097, -5100274, 914291, 1093606, -6860137, -1005559, 1080184, 1212791, 4765803, -903554,
-4141422, -2755759, -5259725, -5555004, -1580548, -2805151, -4210142, 4381404, -1701344, -834297,
--753230, 923418, 2391223, -6732361, 38118, 951335, -3184182, 8046085, 641024, -1971927,
--1729798, 8590471, -601295, 1100049, 5087389, 160524, 3114388, 1217623, 299574, 4744865,
--14496, -3303367, 4263292, 2289755, 2743410, 3862249, 1286880, -3118683, 2240899, 3170760,
-3083250, 4752382, 42413, -4383014, -3497714, 5571647, 7755101, -7056095, 1433445, -1860795,
--1231045, 1631014, 2970507, 2846490, -2245194, -899796, -2168959, -3635153, -3171297, -1161252,
--2010582, -3123515, 729071, -846109, 1204202, 1020055, -957778, 570694, 207232, -2536715,
-874563, -1712618, -3075197, 214748, -896038, -1291711, -1372779, -387621, 574989, -463320,
-906775, -587337, -1027571, -1427003, -1308354, -563178, 253403, 1028108, -1989644, -8659191,
-9226127, 8546985, 6443525, -4497368, 5036923, 9095130, -2289218, 7107097, 2674691, 1066226,
--1108102, 7836705, 3704409, -1836635, -5622112, 3258807, -2330020, -3007551, 3175055, 3748970,
-1644973, -5582384, 905701, 5010080, -2444910, 1698123, -10977936, 1580548, -883153, 5288179,
-1293859, -2278480, -3309809, 6768332, -5826660, 471373, -4705674, 549756, -1440962, 3780645,
--787590, -1233193, -5765994, -1384053, -1016297, 7160784, 358093, -6550899, -241055, -361851,
-2240899, 3424163, -2913062, 12885, -3717294, 3969624, -868657, 4798016, -2586644, 7143068,
-3550327, -7883413, 8356396, -1204202, -5768678, 983011, 7636989, 1551020, 1178432, -6174016,
--399432, -2391760, -3332895, -3234110, 297963, 2911451, 3763465, 2043331, 2059437, -2409477,
-1818919, -2088428, -231928, -111669, -958315, -401043, 2179696, -3432216, 942745, -335007,
-309775, 1153736, 947577, -92342, 1502702, 163746, -2249489, -2446521, 1449552, 662499,
--85899, -1615445, -306553, 390305, -204548, -705985, -1560147, 993748, -11274, -981400,
-1109175, -653372, -413927, -1257889, -754841, -474594, -1573032, 1119376, 912144, 10045392,
--3352759, -7137162, -298500, -10743324, 64425, -9220221, -3156801, 6471979, -6557878, -7241315,
-2268280, 687195, 731755, -1635846, -2323577, -5218922, 3661460, -10288594, -3114388, 1132261,
-6503118, 459562, 6596533, 2400350, 14404247, 5571110, -75699, 712965, 6899865, -1547799,
--1967632, -1199370, 1206886, -4433480, -2168422, -7531225, -456877, -3414499, -2021319, 9464497,
-228707, 5953362, -2274722, 2478196, -515396, 3586835, -1094680, 3345243, -3145527, -3904662,
--565325, 1214939, -3950833, -3941169, 433255, 2159832, 4437238, -540092, -1960116, -799401,
-4214437, 7140383, 466541, -4713190, -6791954, 188979, 1965484, 810675, 9454834, -5785858,
--240518, 4290136, -1473174, -4830765, 6687264, 3119757, 1252520, -3177739, -3450469, -5779416,
--2222109, -534723, -2966749, -1430224, -2558727, 598611, 762894, 1566053, 268972, 533113,
--3194919, -1597191, -3430605, -1121523, -932545, -2576444, -1618666, 1022202, -228707, -1029718,
--220654, 973347, -2115272, 1205812, -1501628, -76773, -576063, -1096290, -336618, 77309,
-1078037, -1443109, -2217814, 1949915, 1191317, 635118, 8924942, -6823630, -1378148, 584652,
--518080, -236760, -5617817, -4317516, -595927, 3755412, 1370632, 1519345, 1584843, 3946538,
--795643, 3611531, 2922188, -9246528, -3549791, -10854993, 2830920, -3810173, 5481989, -3503620,
--4793721, -3500935, 2852395, -7226820, -6018860, 8443906, -4593468, 9153649, -2153926, 2769180,
--3211562, -6128919, 6780680, -5194763, -5854578, -564788, -3183645, -6860137, -5298379, -8655970,
-359704, 5601174, 3212099, -3350075, 9639517, 3557307, -3543885, -4456029, -6976638, 327491,
--2616709, -4855998, -2464238, -2046015, -3441343, 1860258, 7706782, -442382, 499827, -5199595,
-2446521, 2636573, -4553739, -3583077, 1834488, 9401683, 3725347, -2300492, -1254131, -1944010,
--9668508, -7574175, -6424734, 6736120, 7114077, -1008780, -3350611, 3146601, -2146410, 2766496,
--1442572, 1326071, 198642, 171262, -3155727, 2127620, -1858110, -1283658, -521302, 1908576,
-1376537, -153008, -2646237, 1694902, -415001, 1254667, -921807, -545461, -2345589, -971200,
--126165, -245350, 403727, 486405, -339839, 433792, -1961726, 902480, 139050, 320512,
--744103, 2421288, 1458678, -56371, -995359, 279710, -1515587, 2735357, 558883, 12694850,
--2521683, -124017, -2199023, 8227547, 7798050, 2625836, -13258564, -2289755, -16081431, 9363566,
-3903052, 164819, 16414291, 7709467, -1542430, -7496329, 6714108, -3264175, 1599875, 2211908,
-985695, 5310727, -4893579, 9149354, 3433826, 802085, -2884608, -4802847, 6189048, 5189394,
--1100585, 3340411, -7953743, 1378685, -10592463, 4189204, 513785, 5265093, -8710731, 1693291,
--2896419, 1809792, 9745818, 8223789, 317828, 2309082, -6178311, 7924215, 154619, 16975322,
-17977122, -2495376, -4886062, -5017059, -3977677, -10565083, -2995740, -13766981, 759672, -1243393,
--827318, -2887829, 4735202, 7978439, 12596065, 11666742, 9000104, -15005005, -10693395, -568009,
-686658, 15532749, -11070278, 8298414, -646393, -3259880, -1671279, -485331, -3153580, -8762270,
--5719823, -1734093, 2479270, 710280, -271120, -2464774, 1313723, -3172907, -348429, -1735167,
-3267933, 3598109, -942745, -807991, 3404835, 2528125, 397821, -616865, 1221918, 116501,
-476205, -781147, 1449552, -223338, -911070, -1500554, 397821, 1372779, 2173790, 4663261,
-3678103, -1918240, 412854, -3502546, -674310, 1406065, -310311, -783832, 61203, 580357,
-742493, -4709969, 9103720, 1893007, -6867653, -3828963, 17166448, 16886738, 18927384, -1942936,
--886911, -3311420, 3113851, 9228274, 10616622, 3036005, -4682588, -9222369, -18701362, 5452461,
--11099269, -2482491, -1209033, -2448668, 1171452, -619549, -3501472, -472983, -10876468, -4336843,
-564251, -2056753, -12145094, -5145908, 949188, 8706972, -2560338, 197032, -9686225, -3294240,
-33286, 6306086, -3979287, 3857418, -10816338, -3040300, 2414309, 4022237, -3024194, 14364518,
--3045132, -1875827, -7589207, -2523293, 5720360, 1928977, -742493, 7473780, 10331007, 12104828,
--2225867, -6126771, -6981470, 54224, 1353989, 2807298, -4980552, 3877282, 5086852, 4311611,
-4159676, 12110197, 8111583, 5389110, -740345, 2694555, -12186433, -2305861, 1184874, 6156299,
-9707163, -1894618, -5622649, 1690070, 3281355, -2865280, 4928475, 3995393, 5334887, 808528,
-2279554, -292058, -526134, -3960497, 2976949, -1258962, 1921998, 1764695, 472446, 2849174,
-155693, 4605279, 3173444, 2069101, 1207960, 1277753, -89657, -623844, 273804, -1958505,
--240518, -2441689, -3995930, -1571958, 700617, 658741, 1585917, -818191, 1006096, -1621350,
-622770, 2035815, -195958, 350577, -17642652, 21931714, -627065, 3214783, 11991012, 202400,
--4217658, 619012, -21415244, -13037373, -6129992, 3410741, -4224637, 2435783, -10018011, 6920803,
--3504157, -103079, 13202193, -12890271, -8575439, 12349105, -3880503, -18121540, 1278290, -11178189,
-2302103, -940061, 6778532, 2908767, 3415036, 1366873, -2191507, 8036421, -901406, 10328859,
-6318971, -3692598, -6208912, -5833640, 2813204, -2875481, 2831457, 1984812, 6087580, 1760400,
--11431055, 657667, 3884261, -3969087, 486405, -7901666, -1749662, 676457, 517007, 18080202,
--3158949, 12840878, 15394773, -4255239, 8243653, -2556043, -447750, -8585640, 5444408, 13067975,
-9156870, 2009508, 3604015, 8089571, -521302, 6699612, -2727304, -3783866, -6521908, 3535832,
-16738561, 3713536, -2150168, 1298691, -11747809, -4008278, 295816, 11041287, 8096014, 3459059,
-7191923, -2091649, 7065758, -109522, 4453881, 522912, -319975, -885300, 4936528, -562104,
--3069291, -1944010, -1203128, -791348, -1218697, -2513093, 3577171, -2338610, -3039226, -932008,
--4000225, -2815351, -3408594, -2017561, -2368675, -3129421, 1083406, 679142, 1355599, 1057636,
--1787780, -994822, -3135326, -4192425, -333934, -2352568, 1396938, -1150514, 398358, 1983738,
-2172180, 1422708, 3699578, -1023813, -274878, 2734821, 21058224, 3080565, 5266167, -4956393,
--2501282, 14307073, -9410273, -2160369, -18539226, 17405892, 9105868, 1270237, -6282464, -17502528,
-1797444, -4644471, 2171643, -19628538, 7033546, 10393284, -11389180, -2714419, 1736241, 1225139,
-3828427, 11278584, 13889387, 60666, 1611, 2613488, 561567, -8384850, -9575093, -6350109,
--12628278, -6213744, 10825465, 5040144, -3998615, -5329518, -3499325, -22239340, 4874788, 5361730,
--10378788, 17068736, 652835, 12735115, -4538707, 8266202, -2680060, -10991358, 1037772, 10147934,
--5543192, 5578089, 6552510, 18127984, 5064840, 5706938, 17412334, 9925133, 6626061, -24006182,
-5025112, 3692061, 4713190, 505196, -9747965, 17426830, -12878996, 9946607, 10464688, -15654619,
--3367254, 21455510, -19040664, 3255048, -4416300, -2053531, -6819335, 8360691, -3515968, -7116761,
--6024766, 3744675, 8179765, -7562901, 9490267, -7806103, -3350075, 10727755, 4020626, -876710,
--4641786, -5010616, -59056, -1984812, -8076686, -932545, -1655173, -2280091, -657667, 6444599,
--459562, -5936719, 641024, 2517388, 6240588, 3848828, 4981089, -1960116, 2678449, -3543885,
-278099, -1204738, 2677912, 5116380, -3671123, 2353642, 2534031, -275415, -3156264, 1756105,
-1498407, -10980084, -16589311, -7285875, -6890202, -22287660, 15271830, 2438468, 16299401, 984621,
-2405719, -7675644, -3949223, 7968238, -518617, 8237748, -8036958, -2531346, 1548336, -3612068,
--6560563, 9812927, -9846213, 11678553, -3970161, 3843996, -2410014, -7821136, -6988986, 3455838,
--2467459, -21475, 6087043, 23314156, 1772211, -2907693, -7740068, 3410741, 18872624, -3381750,
--2956548, -10852845, -3660923, 1644436, -10220412, -3700114, -14628659, 9567040, -17933100, -32564442,
--3294777, 1132261, 15699179, -16028281, 15080704, 9829033, -7519951, -15124190, -2294586, 2598992,
-4592394, 649614, 9595494, -6213744, -2216203, -32118840, -4158602, 33378876, 3406983, -5482526,
--4265977, -17137994, 13131326, -5428302, -4744865, -4138738, -2324651, -7346542, -10945724, 3459059,
-6573448, -198642, 5057324, -9241159, -16978542, -477815, -8858907, -2448131, 501974, -8798777,
-2271501, -6372658, -11314018, -8359080, -3949223, 3874061, 5469104, -836982, -13414793, -3238405,
-1066763, -6536404, -2780455, -396748, -6032819, -3486440, 1880122, -95026, -4695473, -1772748,
-2464774, 1020055, -6307697, -2400887, 359704, 6206228, 6884833, 1989644, -1796907, -2228014,
--566936, 4689568, -745714, -227633, 578747, 1908039, -5243082, 5314485, -890669, 3661460,
-605054, -3637837, 15421617, 13775034, -4468377, -5697811, -1419487, -22228604, 14570677, -14069239,
--11621108, -9009768, 5444408, 2199560, 13498545, 1612223, -7482370, -8728447, -9052180, 6944425,
--3529390, -4863514, 12321187, 13800804, 4631049, -9360881, 11343009, 18377092, -7124277, -4070555,
-15855409, 4063039, 3095598, -10431402, -118112, 15124190, -22466974, 15365246, -3457986, 2055679,
-9121974, 11111080, -206695, 5537287, -10650982, -8629126, 5669894, 21160766, 5555540, 5143760,
-7896834, -10714333, 2117419, 9383430, 5309117, -1782411, 7435126, 4687957, -12846784, 10306311,
--12527883, 2769717, 8908836, -9856413, 7340636, -12023224, -4938139, 2186138, 278099, 7663833,
--5083094, 6572911, -5197984, 916439, 2284386, -2248952, -5105106, -9719511, 25772488, 2763275,
-7595113, -11322608, -26674432, 18679886, -18203146, -7818451, -314069, -4170413, -2920041, -1578937,
--7665443, 4628364, 3510599, 1993402, -7111929, 8494908, 6293738, -2852395, -3170223, 2502355,
--2656437, 2357400, -2683281, 9019431, 3041374, 843424, 6111739, 6752763, -4206921, 42950,
-2933463, 4697621, 1612223, 2253247, -4560182, -5553930, 4162897, 5833103, 8093866, -1149441,
--7992934, -1067836, 394063, 3805878, -12133819, 4472672, -4270271, -1705102, 2409477, 2791729,
--3258807, 4126927, -5906, 3287261, -2243584, 7810935, 2325725, 3264175, -1458141, 4451197,
--14687178, 15363635, -5776194, -15374909, -19902342, -5637145, -2099165, 11547556, -17526688, -2903935,
--2130841, 9074192, 17250736, 14258755, 8857833, 1267552, -4519916, -2776160, -1858110, 12096239,
-9943923, -2459943, 1511829, -2758980, 7776575, -19053548, 11235634, 6129992, 8780524, 2902861,
-1970316, 16231218, -6507949, -14006962, 8053, -4680978, 884226, -19390166, -10741713, -1239635,
-16054051, -10998874, -3507915, 2545305, -715649, 361314, 15779173, 6272263, -2521683, 1289564,
-7688529, 5011153, 18395882, -5537824, 8369281, 9283035, 4959077, -3100430, 2959233, -20202990,
-8528194, -3868155, 851477, -4722854, -11119670, -14977088, 2962454, -7203197, -20249160, 4732517,
--17214228, -12738336, -3028489, -25982404, -15733002, 3752728, 10972031, -13038447, 2725694, 906775,
-29651380, 28061706, 26535918, -933082, 1431298, -14121316, -8502962, 10969346, -6067178, -4073240,
-1771137, -3697967, 6172942, -7793218, -3872450, -425739, 2303176, -4745402, 5654325, 5598490,
-193274, -2610803, 1517197, 5462662, -4624606, -6176700, -1605244, 4893042, -6914898, 11421929,
-6595996, -703301, 5190468, -2024540, -4874788, -7814693, -4212826, -6953552, -3737695, 3784403,
-630286, 11510512, -2792266, -3925063, -1844689, -26360898, -29148870, 17122960, 15370614, 5066988,
-16666084, 28007482, 7866770, -10867878, 8944806, -4410395, -8082055, 12734041, 787590, -11661373,
-6935299, 9128416, 1999307, 3124052, 565862, 1294933, 25630218, -689879, 5376226, 2267743,
-15850577, 808528, 25421912, -253940, -11394548, 20315732, 4037269, -9175124, -3338263, 10695542,
--2388002, -321049, 8329552, -15676631, 15369004, -3407520, -22868016, -6492380, 2084133, -22843858,
--2693481, -2499671, 9842454, 9529996, 16941498, -12109660, 2461553, 2595771, 3408594, 7181186,
--11028939, -12386149, 6285148, -421981, 12916577, 10503879, 3136937, 27170500, -4695473, -4307852,
--18797998, 27729382, 4776004, 19209242, 11684459, -31175556, 4311611, 2721936, 18901614, -10203769,
-7975755, 75699, -8408472, -1124208, -6823093, 15250892, -29542396, -3665218, -2253247, 28454,
-1186485, 4636954, 7051263, -188979, 13428752, -612570, -2087891, -4436165, -2965138, 802085,
--4865661, 1526861, -1433982, 4028143, 2727841, -1465121, 988379, -1652489, -8346732, -503585,
-263067, 2024003, -8522289, 4432406, -1870995, 4662187, 3572876, 6612102, -6932614, 7738458,
--4373888, 2478733, 5464809, 5044439, -1888712, 158914, -3207804, 4377109, -409096, 2132988,
--251256, -909459, 11171210, 6352794, 13422, 5264556, 1425392, 5478768, 1060857, 17191144,
--36191540, 21551072, 21920440, -9299141, 5235029, 3085397, 5953362, 194884, 17453674, -12659953,
--2716030, -13583371, -87510, -7656853, 1252520, 3708704, -19850266, 8987219, 21615496, -14811732,
--14216342, -14489609, 28769838, -12513387, -7037841, 2723009, -9832254, -29743186, 5255430, 21678310,
--29680372, -13404593, 10276246, 15985331, 4338454, -4463008, 6889128, -10482405, -4926865, -495532,
-14715632, -20151450, -16061567, 11463805, 18477486, 7331509, -23073638, -7412040, 577673, -1010391,
--4008278, 12111808, -3578245, 18252000, -14804215, -3165928, -25233, -16885664, 10744398, -19666118,
--13571560, 6364605, -8826158, 19251654, 27738510, 16440061, -18353468, 9794136, -5401995, -5425081,
--12958453, -3955665, -21116206, 16219407, 11873974, 5823439, 626528, -9903121, -5614059, 6609418,
--22046604, 17871896, -4215511, -2942053, 9294846, 1749125, 8462696, -2308545, -1345935, -7430294,
--2190433, 817118, 1487132, -5802501, -2092723, -2709588, -2144799, 10102837, 1040456, -50466,
--4806069, 4176319, 3952444, -3430068, 2171643, 4699768, 994285, 7832410, -2791192, -5299453,
-1079111, -8718247, 4533338, 3430068, 1100585, -140660, 3478387, -615254, 5707475, 1984812,
-4047470, -6859063, -2166274, 6669548, 304943, 2803540, 3279208, -6380174, 885300, 6725919,
-21095268, 35125316, -193810, -26490284, 5682779, -31620086, 5484673, 14443438, 6822019, 1966558,
-19104552, 14139032, -791885, -2848100, -26127360, -14058502, 449361, -12202002, 35535484, -6416681,
--7981123, -15261093, 1972464, 13397077, 9398999, -430570, 6922414, 10448582, -15670725, 5440650,
-30502320, 10833518, -20823076, -14671071, 9950902, -10274099, -1343788, 7471096, -4561256, -17183628,
--4048007, 2149631, 29072096, -6219650, 6514392, -7658464, -23361400, 4160213, 29495152, -7853348,
--17563196, 5202279, -10725607, 7266011, -6095096, -7114614, 20298552, -5104569, -2226404, 9961103,
--17343078, 6362457, 21481278, -8779450, 1925219, -12463995, 37711960, -6763500, 4574677, 12297028,
--8650064, -2004676, -9955734, 5368709, -11260867, -9483825, -8862665, 14512158, -19466940, 2974802,
--2800319, -5727876, 15303505, 453119, -5094905, -6342593, 894964, 5827734, 4540854, -8587250,
--1482838, 519691, -2327336, -10648298, -6378027, -1825898, 2673617, 1007707, 976031, 1654099,
-8888972, -8715026, 9341017, 1977296, 2777770, 779537, 7431904, -3985730, 12133283, -2473901,
--71404, 9388262, 12192338, -6139119, 8012799, -3760781, 2766496, -6811818, 6226092, 5329518,
--10295037, -313533, -4043712, -1212255, -5082557, 3992709, -6281927, 6004901, -1140851, -2063195,
--10433549, -58262304, -20553030, -1269700, 18335216, -9952513, -29265370, -11164231, -4468377, 14010720,
-3492882, -4100083, -14578193, 14952392, 26734024, -12454331, 20160040, 4886599, -38779796, 14165339,
-17898740, -6578816, -15890305, -3164854, 23566486, 25143276, -2305324, -19463182, 1140851, -2423435,
--2690260, -16259672, 3762391, 7086696, -25636122, 17329120, 14725295, -18168248, 3127810, -20355998,
-6932614, 48959944, -44144212, 45248016, 20382304, 1825361, 27624156, 13595182, -28639916, 16874390,
--21580600, -5027259, 23190140, 866510, 6514929, -12177306, -21016886, 63149440, -15070503, 688805,
-24793772, -12290586, 4697621, 1680406, 15254113, 35474820, 33753076, 31883152, 1831267, -855772,
--5333813, 1401770, -8843875, 2181307, 27081380, -7447474, -9616432, 2493229, 3607236, 15586973,
-18266496, 5021891, 5008469, 12860206, 5405753, -10233296, 3107409, -5392869, -14957760, -6883222,
-7628399, -11392401, -16221018, -12440373, -710280, 1234803, -9360344, 4490389, 10280004, 1382443,
--3516505, -861678, -11884711, 13675713, -2185602, -3275450, 9499931, -8209293, 6417755, -6207302,
--4904316, 16134582, -186831, -12404939, 15399605, -9780714, 9237401, 4137664, -6210523, 4427575,
--2257005, 11057930, -5294621, 3695283, 448287, 692564, -1306744, 11781095, -6285148, -1668595,
--970663, 1883343, -1844152, 4988068, 9135932, 14837501, -3950833, -42844448, 19428822, -31130460,
-43725988, 5146982, -38075420, 8566312, 308164, 17850420, 8396124, -9223979, 32341104, 7890392,
-1609002, 21607980, -17321604, -24044838, 745714, 12576738, 43589624, -6144488, 68719, -4574140,
-31399432, 3422552, -25025164, -14763413, 4678293, -2763812, 13868986, -24268712, 11606075, 3965866,
-7132330, -2163590, -9543954, 5531918, 9694815, 108448, 29151554, -47097000, 4052302, -16603807,
--10394895, -6066105, -34515432, -50039592, -51883740, -37650756, 3921842, 205622, -30129732, -228170,
--5556614, 3256659, -18731962, -48205640, 47435228, -833761, -7107097, 9700721, -47234976, -3219078,
--11832635, 8869107, 13749264, 64755760, 48143900, -5387500, -698469, -1503775, 12606803, 19596862,
-11764452, 8954470, -1928977, -7792682, -45984068, 8689256, -1069447, -17861158, -8148090, 29989072,
--4343286, -5438503, 14166413, -1184337, 15549392, -6075231, 7736310, -848256, -3425237, 11110007,
-13387413, -6149857, 1748052, 6028524, -2690797, 2857764, 537408, -137439, 9078487, -3895535,
--4871567, 7681549, -9113384, 11874511, -242129, 6437619, 9687836, -4923643, 2263985, 8625905,
--2250563, -5618354, -2279554, 998043, -1756105, 2384781, -11854647, -707596, -9434433, 9749576,
-1241782, 6576132, 4428112, -1357210, 77309, -602906, 4219806, 6087043, 4743792, -729071,
--5887327, -836982, -12341589, 58750856, -56296284, 9513889, -10931766, 2066416, 23664732, -17459042,
-5834713, 789200, -60898880, 1392643, -6926709, 2836289, 6921877, -27276264, -10231686, -45079440,
--11694122, -2314451, 2353642, -17140678, -12897787, -19708532, -8269960, 19305878, 4129611, 39119100,
-9503689, -13402445, -14030584, 23984708, -26934276, 46032384, -36181880, 10370199, -29213294, 462246,
-27661736, -50591492, 47418048, 8252780, 5380521, -34788700, -7041599, -6716792, -114354, 16479790,
-16476568, 20779588, -40120364, -1160178, -15850577, -13780403, -15522549, -21718040, -15042049, 599148,
-22783728, -24626806, 6459631, -45212048, -15207942, 11232413, 13281649, 2273112, -51394116, -27902256,
--18405008, -26280904, -21770652, 1647120, -17185238, 27101780, 8038032, 13493177, -9611600, -14310831,
-45556720, -15507516, 12130061, -9368397, 3398393, 34153044, 4435628, 6016713, -19394462, 19324668,
-11164231, -8254927, 17947058, -13792751, 4822712, -5241471, 12088185, 2260764, -4276714, 6455336,
-15436649, -5545877, 4810364, 5349919, 4483946, -2065342, 4009889, -2446521, 10517838, -3772592,
-1576253, 9921374, -2319282, -4181151, 2907156, 4157528, -7212861, -1785096, -19638202, 11918534,
-8057359, -177167, -11013907, -4661114, 703838, 3798362, 14533096, -2697776, -4327717, 4876399,
-3514894, -2515777, 14671608, 2532420, -18569292, 4457639, 17725866, -2360085, 25269976, -47755740,
-72659032, -54796268, -5830955, -33084134, 6443525, 656593, -20035486, -28305446, 32976758, 22152904,
-10305774, -14474577, 14505715, 4473209, 31126702, -24748138, -16401943, 19342386, 32357210, -41443752,
-16623671, -1540283, 19578072, -14981383, 5650567, -18406082, 3662533, -34430068, 11156714, 36796596,
--1355062, -2893197, 45674292, 7917772, -21253108, -44801876, 38128572, -20284056, 17119202, -16482474,
-45601280, 20124606, -5175973, 4645544, -26626112, 3480534, 11237245, -12845173, 12623983, -55409908,
-21565030, 50153944, 39099236, -21780852, -22706956, -22711250, 25249038, 2006824, -8215736, 2010045,
-64677912, -31680216, -14931454, 25066502, -21759914, -58583352, 24705188, 13053479, -42004780, 23443006,
-40360344, 35721780, -11091216, -16018617, -28706488, 15274514, -17781164, -11308112, 25832618, 17674864,
-7871602, 22789634, 12707198, -8858370, -8394514, -29473140, 6706055, -12397423, 10035728, -10939819,
-20837034, 14480482, 3039226, -3970161, 19801410, -10946261, -1720134, 2552821, 7494718, 4603668,
-9052180, 8441221, 514322, -4848481, -3045669, 7082938, 3571265, 2831994, 798864, 11165841,
-35999344, -1119376, -3042448, 5381057, -12757663, 4430259, 12836584, -18676666, 8017094, 9616969,
--7332583, -5258114, 8311299, 4756677, -10959683, -46898360, 25070798, -2731062, 6548752, -17177722,
-15026480, 332860, 8246337, 2514167, 2739652, -9758166, 7482370, 25409026, -32405528, 27880244,
--4751845, -17097192, 5735392, -11624866, 7548405, -11909944, -9797894, 8259222, -25849798, -2639258,
-34438660, -49707268, 14027900, 2384244, -8318815, -15270219, -18077518, -11744588, 36133024, -29743722,
--4262218, 11691975, -30232812, 7684770, 16594143, 11112154, 5682242, 5243082, -17055316, 13442174,
--44475996, 637803, 38938712, -16267726, -4376035, -8722005, -10985453, -295279, -31481036, 16701517,
-12650826, -26013006, 24422258, 6820408, -29673930, 12224551, -5762773, 21544092, 18762028, -27579058,
-9638443, 30680562, -28879896, 16183437, -20565914, 16218870, 18753438, -29297582, 16513076, -2090039,
--15543487, 22402550, 1174674, -35239132, 10836739, 15723338, 4732517, -9773198, 1705639, 26776974,
--12370043, -24957518, 26601954, -1078037, 2010582, -1106491, -3363496, 16426102, -12227772, -5795522,
-11569568, 4500589, -2866891, -11911555, 17648020, -6638946, -11600707, 1040993, 9272834, -5463199,
--4316442, -2676302, 13774497, -10678362, -5604933, 1090922, 7461432, -6538551, 5339718, -154619,
-13649406, -8552890, 2129230, 1264868, 1305133, 12124693, 22726282, -9742060, -107778984, -235927392,
--93603440, -156848992, -213573696, 80554256, 28566902, 69540352, 317378208, 264364896, 174210848, 272515136,
-185121680, 21909166, 45882060, 33170032, -145693888, -94066224, -64885144, -166638288, -170088224, -47278464,
--47776144, -105819944, -31785980, -23027468, -127413424, -109594144, -35851704, -60446832, -120363776, -29632590,
--20510080, -94363112, -11270531, 65066608, -28760712, -23274428, 96199216, 58896348, -39800388, 85205168,
-140754672, 15393700, 79008608, 172852032, 84334904, 43409236, 186479424, 136257840, 101245264, 226518192,
-306565632, 242429968, 281605440, 365037856, 238260624, 155841808, 204504336, 131644504, -37111200, -9382893,
--91223496, -225601216, -318817024, -342947232, -458939264, -522025888, -554204864, -536141312, -515258112, -512292960,
--427953760, -327641568, -307483680, -200805296, 15673946, 84666688, 109923784, 333779104, 327557280, 225815952,
-332813248, 305007648, 165339056, 160667216, 212138640, 128190280, 60155312, 148279984, 151293984, 67783176,
-122181616, 184613264, 122301880, 72661720, 157024544, 129997920, 25854092, 79507360, 115389664, 12598213,
-21614422, 126342904, 77158016, 41384156, 133992776, 132815424, 48302276, 105766792, 91292216, -24161338,
--66640176, -69076496, -158614752, -214687168, -211965232, -244640800, -269623008, -279608288, -273707520, -280787232,
--312185600, -322973472, -308976192, -344664160, -295132448, -201167136, -153895664, -52661668, 88653496, 185942016,
-272508160, 351890976, 357875456, 306459872, 278437888, 228783776, 173322864, 139827488, 117795920, 95318744,
-74786656, 67928664, 63155884, 47057272, 40037684, 35871568, 19665582, 944356, -9678172, -26363046,
--44558140, -56114284, -59055264, -64900712, -62697396, -51506320, -38879116, -28726352, -16068546, -8058970,
--1786170, 5812165, 10996190, 10759430, 11323144, 7328825, 823560, -2627446, -5781026, -12096239,
--14780593, -16276315, -20671140, -21386790, -18957448, -22625888, -25163140, -22430466, -24363738, -27937152,
--26048976, -31117038, -37219648, -35335232, -35476968, -37627672, -32907502, -28376312, -25067040, -17754322,
--8554501, -3359738, 2591476, 11011759, 18143016, 24471114, 31445604, 37023156, 39361228, 42083164,
-45114872, 46407660, 47404092, 48569636, 46903728, 43354472, 38542500, 32251446, 24950002, 15705622,
-6451578, -2192044, -11038066, -16878684, -19400368, -20314658, -19907710, -17541720, -15591805, -14633490,
--13009993, -11562052, -10954314, -10108206, -8999567, -8184060, -7532299, -6605660, -5648419, -4878546,
--4104378, -3309272, -2682744, -2281165, -1988570, -1767916, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--3986804,
-2424509, 3884798, -1372779, 3452080, -563714, 3643743, 1831804, -803696, -1430224, 3690988,
-309775, 734439, -4200478, -674847, -304406, -189515, 5737540, 2802466, -211527, -4308389,
--3133716, -1854352, 523449, -100395, 1241246, 2637110, 801548, 971736, -4348118, -670552,
--4232154, 168577, -2341294, 2768643, 2763812, -1104344, -2284386, 2894808, 618475, -1087701,
--3912715, -532039, -2509872, 701153, 2390149, -3968550, -1938104, -664109, -1553704, 10126996,
-2411624, 5845988, 424665, 1917703, -45097, -2927020, -2716030, -3455301, 1631551, -2850785,
-2049773, 63888, 2502892, 2560874, 6218039, 1876364, -516470, -315143, -3694209, 6023155,
-5541045, 969589, 1708323, 1569811, 1714766, -350577, -3092377, 921271, 1788317, -1161252,
-517544, -951335, -2825552, 1345399, -2356863, -1600412, -733903, 188442, -1054415, -1144072,
--1342714, -28991, -73551, -210990, 272194, -471373, 900333, -500364, -839129, -81068,
-1129576, 425202, -461172, -1515587, -445603, 1403917, 96100, 634045, 557272, 394600,
-14017700, -3288871, -2905546, -1114544, -2749316, 664109, -6631430, 540629, 1347546, 359704,
-4544613, 539018, -911070, -3974455, 2581812, -5611375, -4832912, 1774358, -2344515, -1111860,
--816044, 959925, 3820374, 5216238, 415001, -785442, 6200322, 2247342, -334471, 245350,
--2499671, 98247, 6804302, 23085, -3125663, -2528125, -706522, 2320356, -3111704, -3847217,
--3923990, -3212099, 3120294, -3020436, 1183800, -3674345, 1327145, 4492536, 319438, 3198140,
--1323924, -2502355, -1220308, 2224793, -106300, 3432216, 5019206, 751082, -1481764, -2562485,
--100932, -362388, 257698, 178241, -4371203, -445603, -2027225, -2219424, 2162516, 471373,
-1398549, 1639604, -5205501, -2899640, 2201171, -960462, 3900904, 722628, 3291556, -646929,
--799401, -881005, -1864016, -424665, -2055679, -819802, 92879, 3071975, -702764, -48318,
--494458, 987306, 7516, 1197222, 270046, -236760, -734439, 968515, -1462436, 27917,
-114890, -830539, 739808, 919123, -1227824, 445603, -586263, 566936, 568546, 18254,
-938987, 118648, -426812, -9847823, -4792647, -2021319, -6691022, -2237678, -6417755, 2050847,
--450435, -3951370, -4575751, -576063, -3715684, 30065, 3315715, -117575, -5717139, -2046015,
-209917, -2163053, -1769527, 1811939, 5627481, 7175280, -1013075, -1762547, 4086125, 4626217,
--1280437, -923955, -773631, -3060701, 1093069, 1589675, -2742874, -2026688, -543313, 2841658,
-6146098, 514859, -1904818, 124017, -2912525, -998580, -4703526, -2151242, -2018098, -7514582,
--687732, -3345243, -2281702, -8261907, 5327907, -3528853, -3111704, 1611150, -397284, -483721,
-1222455, -6844568, -1684701, -2376191, -426812, -3901441, -424128, -1774358, 1971927, 2538326,
--2141578, -1090385, -3202972, 1300301, -370978, -560493, 137439, -5036923, 5906, -4540854,
-843961, -195958, -1339493, 1495722, 5796059, 2821257, -1203128, 428423, -860604, -2083059,
-349503, 998580, -976568, -37581, -1240709, 158377, -433255, -1586454, 820339, 780610,
--1666984, -720481, 622770, -634045, 379568, -1052267, -781684, -832150, -1547799, -1699733,
--5906, 586800, -795106, -977642, 133681, -397284, -96637, -471373, 123480, -214212,
--478352, -1381369, 942208, -407485, -588411, -607738, -1139777, -77309, 269509, -932545,
-177167, 193274, 183610, -735513, 344134, -18544596, -1514513, -9170292, 8131447, -4803384,
-14680735, -9485435, 9237401, -8414915, -549756, -184684, -6484864, 4947803, 139586, -2461553,
-1466195, -2163590, -884763, -6336688, -97711, -4798016, 3711389, 1244467, 4553202, -2758443,
-6811818, 6093485, -6014028, 1614371, -5116917, 5343476, 20938, -3854196, 289373, -605054,
--221728, 3899294, 558346, -5979132, 2413772, 4174171, -302258, 4941360, -2353642, 4013647,
--6140730, -3194919, 3999688, -3602404, 1001264, 5320928, -4931160, 7900056, 3146064, -7970923,
-1906966, -7683697, 2724083, 4146791, 2856153, 3987877, 5861020, 1887638, -725313, -566936,
-386547, 1762547, 4216048, -1553704, 7968238, 1446867, 5462125, 2864743, 1590749, 289910,
-5484137, 885300, 1367947, -3243237, -4263829, 2075006, 2967823, 215822, 4723391, -665183,
--22012, -979789, 5609228, 1580548, -1979443, 1156957, 975494, 693100, 1928977, 178241,
-3505230, -661425, 1225676, 540629, 1359894, -1000191, 694711, 207769, 111132, 186294,
--1151051, -1193464, 477815, -1442035, -545998, -1554778, 951335, -151934, -424665, -594316,
-12274480, 128849, -3262565, -1054951, -4492536, -5379984, 8981850, -1672890, -1234803, 8243116,
--569620, -1523640, 3685082, 6426345, 1883343, 3220152, -96637, -6895570, -1775432, 5281199,
--7856569, -7792145, -2874944, 1774895, -5519570, -3302830, 179315, -728534, 5558225, -2062658,
--1135482, 5842766, 8121247, -6924561, 1893544, -1610613, 3007551, 855772, -3026878, -622233,
-3419331, 5186710, -1308354, -7195681, -1560147, -588411, -1841467, -3566434, 597537, -410706,
-1392643, -949725, 1080184, 6820408, -4935455, 695785, -3741454, -3045669, -5169530, -1535451,
--2955474, -7203197, -185220, 540629, -2746632, -513249, -2911451, 2838437, 3598109, -513249,
-1124745, -2570538, -648003, 8790724, -1081258, -3591667, -11805254, -5374615, -79457, -4025458,
-2819646, -1118839, 1100049, 18254, -2310693, -420370, 3538516, -2894271, 758062, -796716,
-415001, 33286, -2409477, -1817845, -968515, -1897302, -304406, -3019362, -554051, -1704565,
-417149, -1184874, -312459, -1622961, -1684701, -1722282, -363998, -172872, 705448, 457951,
--155156, 504122, 488016, -87510, 1782411, 1477469, 62277, 875636, -615254, -922344,
-295816, 15694884, 17655000, 3248606, -6606734, 3915400, 6881075, 6898255, 3838090, 5176510,
-2248952, 8563091, -1011465, -1203665, -3676492, 5323075, -3328600, -7798587, -10681047, 1077500,
--5186710, -4494684, 3610994, -1247151, -2929705, 8748848, -758062, 10902238, -2147, -4498442,
--3101503, 3738232, 2455648, -2309619, -8855149, 12470438, 7173669, -61203, 6720550, 3947075,
-4332012, -4267050, 4906464, 2427194, 900333, -1655710, -2357400, -5691369, -7948911, 2086280,
-3693135, -6242735, 2351495, 5149666, 7774428, 1955821, 7014756, 3174518, 5963025, -9035001,
-2551211, 694174, 1695438, 99321, -701690, 3658239, 3346853, 3217468, 4769025, -1728724,
-2272038, 1272384, 6902013, 8436926, -4413616, -5194226, 683974, -2190970, -4631049, 1785096,
-4658966, -3049964, 1929514, -8684961, -6365679, 1327145, -4415764, -2165737, -1476932, -4014184,
--57982, -176094, 424128, -216896, 1632625, 1893007, -201327, 895501, 286152, 1402307,
-1559073, -102542, 60130, -227633, 1713155, 773094, 921807, 2066416, -434865, -1242856,
-1597191, -599685, -57445, 2390149, 1502165, 2255395, 3210488, 381715, 1415729, 751082,
-2114198, 447213, 871342, 1056025, 14501420, 4559108, 6386080, -5355824, 2076080, -13198971,
-679142, -9546639, 7175280, 4807679, -4032438, 6024229, 3421478, -6478958, -1621350, 9271761,
--325881, 6371584, -1776506, 1248762, 7407745, -9276592, -729608, 1472100, 2698313, 577136,
-2971581, 347892, 8993125, -4217121, -2601677, -2763812, 6798933, 822486, -3209951, 4092030,
-11475616, -8063801, 1410897, 1501091, -704912, 4590783, -2328946, 8727910, 2944200, 2174327,
--7198902, -760209, -1911261, 4021163, 3056406, 4346507, -4944044, -3274376, 4178466, -8665633,
--4827543, 1906966, 9266929, 5568962, 8195872, -8986682, -2829847, -9132711, -2352568, 2705293,
--774168, -8621073, 1125818, -5303211, -73551, -9430674, -11364483, -4693863, -8202314, 417686,
-2903398, 1581085, -3506304, 4481262, 7289097, 1990717, 2154463, 4136591, -1313186, -7041062,
--421444, -4861366, 2519535, 744103, -466004, 1245541, 658204, -5175436, -2611340, -1512902,
-2573759, 313533, -1789391, -673236, -149787, -806917, 430570, -1101122, -468688, 301185,
-2346126, 534187, 767189, 469225, -447750, 630286, 1570884, 745714, 2041720, 547071,
-1061931, 59593, 1619740, -2568391, 1601486, -16980690, -15298137, -10963441, 3534221, 3577708,
-12969727, -5523865, 12324409, -4834523, -19958176, -1649268, -1729798, -7636989, -12865038, -4610111,
--147103, -7878581, 67646, -12196097, 1037772, -12865038, 7580618, -3137474, 5558762, -2415919,
--97711, -3907347, -4560719, 8163122, 1706176, -2207076, 9239012, 1151051, 1595580, 3258270,
-8511551, 7492571, 5742372, 270046, -9795747, -908386, 4893579, 1571958, 6207839, -2791192,
-2835215, -14446659, 4730907, 8910447, -10912438, 6616934, 2392834, 10516227, 8072928, 93952,
--2626909, -145492, 7174206, 3587908, -9183714, -7460358, -12744779, -6121939, -8519068, -1855963,
--10568304, -2175938, -3473555, 10980084, -4970888, 5475010, -2716030, -1495186, -3442953, -7428683,
--3919695, -2323577, -2403571, 6946036, -20488604, -4296041, 9729712, 533113, 1946694, 5245229,
-9850507, -6030671, 1262184, 2678449, -358093, -5906, -1333587, 2756295, 4129074, -1677722,
-421981, -308701, 4601521, -1586990, -42413, 4624606, 1020592, 1683090, 2192581, 2216203,
--656056, 465467, -1124208, -1679869, -909459, -3041911, 994822, 2134062, 1507534, 906238,
--3976066, 100932, -448287, -105764, -1814087, 1216013, 1914482, -897648, -103616, 2240899,
-2383707, -2399276, -22849226, 17104708, -5131412, 10014790, 5719823, -657667, -15202037, 11541114,
-1351841, -1276142, 7186554, 5036923, -6433324, -345745, 12429098, 3969624, -5995775, 8764955,
--5196911, -4205310, -2989834, 2649458, -212064, -1885491, 946503, 3622268, 3175592, 3311957,
--9624485, 5534602, -8046085, 10324028, -6856379, 10274636, 3094524, 763967, -10604811, -10719701,
--3769371, -3731253, 11936788, 3220152, 9484898, 3865471, -9044664, 95563, -2296197, 3957812,
--69793, 3456912, -1404991, -6119792, -3759170, 5972689, 15185931, 10941966, 934155, 3604551,
--1451699, -2411087, 7624104, 6436546, -3185792, 9583683, 13516799, 19131394, 73551, -11337640,
--13718662, 4430259, 2080912, -793495, 3017215, -163746, -4634807, -728534, 11352135, -2360085,
--5465883, 20614770, 4911295, -3751654, 5775658, -80531, -571768, -878858, -3659312, -688269,
-5983963, 2927557, -2389613, -3267396, 4089346, 3386045, -648540, 8252243, 2093797, 1386738,
-566936, 3592203, 1110786, 3353833, 2105071, 1042066, 362388, 4281546, 2140504, 2190970,
-317291, 4250944, -910533, 1548873, 2312303, 1652489, -687732, 4775467, 5354751, 1571421,
--1238561, 5749888, 150324, -2905546, -778463, 4161287, -64425, -512712, -1205812, -927713,
--68183, 986769, 2520072, 3858491, 1116155, 4081830, -1226750, 10491531, -15344308, 12918188,
-5310190, -10470057, 24532316, 3701188, -12527346, 2918967, 6830609, 674310, 4932770, 17629768,
--16842714, 11017665, -6813429, 9778567, -3718905, 2114735, -15603079, 2688650, -1697049, 6310381,
--5983963, 915365, 1193464, 208843, -9162776, 8836358, 920734, -901943, 4136591, -1701344,
-4074850, -2125472, 12383464, 9833328, 12257300, 12259984, -1979443, 4324495, 5280663, 605054,
--6416145, 8694624, -10237055, 3227668, 10139881, -5963562, 5369783, -11263552, 3616363, -914291,
--2703145, -903554, 863825, 3580929, 3367254, 12021613, -7838852, -300111, 7898982, 17098802,
--15089294, 3951370, -3711926, 5259188, -2779918, 24939264, -15302968, 5549098, -8530879, -4635344,
-2214056, 2694555, 1369558, -21635898, -11462731, 18054432, 9836549, -1874753, -9714679, -11136850,
--4458176, 4116189, -12090333, -6493454, 5947993, 3435974, -247497, -237297, -8461622, 1691143,
--2462090, -3078418, 3872987, -1968169, -2609730, -882616, -7402376, 2625299, -1917166, -2399813,
--2691871, 3483219, -3570192, 4220342, -642098, -942745, 1408749, 1564979, 5316096, -5365488,
--1165010, -4057134, -886911, 2765422, 2018098, 7079717, -2282238, 3951370, 865973, -2452426,
--1670205, -593242, 2639258, -318364, 1353452, 11513734, -15075872, -3175055, 21392158, -6382859,
--398358, 11476153, 2716567, 7094212, -15914464, 15327665, 1024350, 1174674, -4019553, -9559523,
--1293322, -1452236, -10246181, -6166500, 11418707, -3588982, 2214056, -5559835, -25022480, 8514236,
-1164473, -7704098, 4809290, 9736154, -884226, 1106491, -1934883, 2474438, 6599754, 2127620,
-10589242, 7270306, 1677185, 9271761, -7419556, -7295539, -10416369, 3978214, 6055367, 1789928,
--16536698, 4729833, -14127221, 20533164, -4840428, 7319698, 17508434, -6859063, 11131481, 2807835,
-12117176, 4905927, -5819681, -17919140, -12868259, -10010495, -1365800, -10509785, -2087891, -9183714,
--5965710, 18089328, 3931506, -7667054, -6817724, 3674345, 6724845, -1538135, 2636573, -32801738,
-13232794, 2267206, -10516227, -12916040, -3360812, -21655226, 2357400, 10807748, 1207423, -9289477,
-5772973, 4880157, -7641821, 3860639, 2295123, -1883880, 270046, -4878009, 1305133, 1729798,
-1284732, -6366216, -3484829, 2651069, -3991098, 947577, -2405719, -1521492, 1553168, 5410585,
--6819335, 2404108, 5322002, -6338835, -5980742, 812286, -5488968, 1286880, -3642669, 3815542,
-2061584, -6351720, 3578782, -4166118, -2705830, 4415764, 1023813, 9913321, 3068217, 0,
--617938, 790274, -2592550, 1111323, 7341710, -20116016, -24706800, 15188615, -12053289, -14048301,
--3903589, 9599252, 19579682, -12613245, 1194538, 9419400, -2631204, -3854733, 5148592, 3424700,
-14751065, 5062693, -13900125, -357019, -6981470, -306016, -8204462, -10823318, 1833951, 11188927,
--668941, 5091684, -8993662, 2860448, 11023034, 8620536, 1413044, 1043140, 6937446, 6638946,
-4247186, 10143639, -12470438, 13997298, 10069014, 3584150, -10287520, 949188, 8156143, -8053064,
-9453760, -6356552, 10690174, -2634963, 13917842, -21495774, 23134842, 5577015, 21822728, 1581085,
--4474282, -1335735, 7956427, 694711, -18003430, 888521, -1171452, -18621904, 6053757, 13536126,
--17729088, 15042586, -15595563, 5069672, 6169184, 3433826, -19545860, -9313100, -9543417, 2066953,
-1565516, -11308649, -16727287, 3458523, -14701136, 10265509, -7046968, -3711926, 5186710, -9070971,
--7026030, -9311489, -3801583, -5120138, 391379, -7415798, -5551245, -6752763, -10128070, -4824322,
--2040110, -2158758, -2490007, -2831994, -1888712, -4722317, -5236639, 3684008, -6287296, -3327526,
--1540283, 5083094, -2309619, 308164, -8058433, -5735392, -2563559, -6442, -1756642, -6824166,
--868120, -451508, 5763309, 3794067, -4490925, -4159139, 1025960, -2152852, 4279398, -2193118,
-2341294, -4165045, -11730629, 17230336, 3302293, 11268384, 10906533, 2914135, -8813273, 1686848,
-29219736, -20458002, 4645544, -3767760, -11288248, 454193, 3722663, 4550518, -374199, -127238,
--6037651, -8702677, -13476534, -6886443, 9761387, -8581882, -13543106, 7458748, -5010616, 2746095,
--2005750, 5758478, -5910412, 12345347, -4769025, 1175747, -535260, 1146756, 11291469, 3752728,
--5614596, 5982890, -5161477, 9289477, -5948530, 3712462, -13798656, -10060424, -7514582, 2202781,
--7029251, -11969537, 4706748, 8596914, 2299955, -6436009, 3774740, 6031745, 6757058, 18777060,
-25844966, 35340600, -3868155, 5514201, 8320426, 4876399, 4545149, 5566815, -7496329, 13946833,
--2220498, 18252000, 22455162, 16514149, 6524056, 9242770, 2916283, 31610960, 8914741, -5930276,
--5237713, -4628364, -2021856, -2156611, 1490891, -2644626, -6119255, 5199595, -9576166, 2687576,
--2301029, 2844879, -4840965, -3832185, -3090229, 7100655, -7161858, -6832219, -650151, 2878165,
--3679176, -8738648, -3023120, 416612, -4257387, 4541928, 8629663, -5071820, -693637, 1793149,
--999117, 2881386, 4971962, -2433099, -6154688, -1052267, 2837900, -2996277, 7844221, 9419937,
-5693516, -2740189, -6476811, -860067, 9185324, 1046898, -323733, 4132832, 1240172, -82678,
--1610613, 2318209, 2300492, -6255083, -4630512, -241055, 35455492, 28388660, -12352863, -5672578,
--14739791, 8517457, 4153770, 17372606, -3047816, -7504382, -3395172, -11234561, 2539936, 446677,
-16374563, -6114960, 6105296, -22020834, 12141336, -1710471, 8543764, -88047, 7740605, 1342177,
--12548284, -6451578, -10766946, -8147553, 9057012, 21876416, 9510131, -2571075, -6785512, -266825,
--1848447, 5480915, 7370701, -13940390, -290447, -4837207, -4691178, -15137075, -11734388, -24551644,
-434329, -1195612, 8842801, -7329899, 15741592, -11931419, -5294621, 31596464, 31222264, -21561272,
-4802311, 18169322, -10541460, -4967667, 9293235, -3430068, -13236015, 35148400, -8766565, -53255984,
-17708150, -626528, -27515172, 21088826, 22414898, -7898982, 15682536, 20043002, -9477382, 770410,
-12634183, -13660680, 5711233, 11083700, -19694572, -2632278, -6520834, 1145146, -7233799, 186294,
-2716567, -8232379, 6660421, -9555765, -4478041, 4774930, 9459129, -5393405, 502511, 1995012,
--1469416, 3319473, -6981470, 10304700, -5231807, 10880226, 10408316, -156229, 500364, 7187091,
--5226975, 1637456, -318364, 8984535, -6690486, 5490042, 1602023, -20691542, 3984656, -2483028,
--3946538, 1242319, -622770, 2345052, -11778948, 1726040, -3093987, -10243497, 1744831, 17923436,
--16766479, 5638219, 9733470, -14149770, -95563, 8048232, -12870406, -6191196, 2864743, 6593312,
-12154221, 6095633, -9163313, -1409823, 9085466, -9659918, 10390600, -4643934, -12461311, 11875585,
-6309307, 6077379, -2858838, -2900714, -4193499, -308164, 10049150, -19741280, 10311680, -109522,
-17074106, -10251013, 375273, -12822088, 6056978, -21061982, 2700998, 1257352, -8160975, -6135898,
-3765613, -14083735, -24519968, 15364709, -1059783, 4831838, -14367739, 9316321, -2048163, 9988483,
-10711648, 5454609, -10037875, 8875013, -4643397, -1970853, -18882286, 3068754, -13345000, -14695231,
--21556978, -8682813, 3832722, 6368900, -22262426, -10866267, 1545115, -7791071, -30010010, -23762444,
--24406152, -4833449, -14460618, 13396540, 18781892, 5352066, -17960480, -20917028, -24405078, -2027225,
--1508607, 13776644, -11615202, -20336670, -9815611, -13452911, 4990752, 529892, 5200132, 2735357,
--6490770, 1735167, 5345087, -5065914, -1944010, -4253092, -2542084, -3003256, -6300180, -48318,
-8460549, 535260, 2677375, 2638721, -1127966, 6389838, -3700651, 9739375, 8797704, -3111167,
--7358353, -132070, -2650532, -4026532, -4523675, -4022774, 7128035, 543313, 6730751, -6483253,
--7013682, -1097364, 3838090, -11450920, 2294586, 1404454, -8270497, 2100776, -6757058, -15043123,
-9698036, -3424700, 1457068, -2318209, 1889786, -7595650, -1746441, -562641, -15952045, 26459682,
-29443612, -7537668, 19724100, -6065031, -8259222, -8170639, 19186692, -17398376, -4297115, -8447127,
-30651034, 863288, 10969346, 3778498, -3288334, 15191836, 8287140, 12393128, 3616363, -2243047,
--5811628, 11861089, -2401961, -12146168, 14458471, -651761, 12611098, -14770929, 9744207, 3366181,
--15173046, -11635066, 26584236, 17296908, -2053531, 9458055, 7684234, -17364016, -11651709, 5470715,
-3913789, 11796128, 1090385, 2439542, 4276714, 14450417, 5616744, 3574487, -15002858, 40170292,
-26671746, 2940979, -18571976, 8862128, -6534793, 4866735, -4586488, 8490613, -6376953, 1217086,
-21821656, -15564961, -7889318, -20866024, 5340792, -5772973, -4097936, 18827526, 5506148, 2283849,
-1167694, -7937637, -15934866, 11069741, -500901, 107374, 11530377, 11814918, -1447404, -8884140,
--10681584, 19498078, -2553895, -1254131, -4330938, 14638859, -1712618, -10411001, 6225555, 5375689,
-8698919, 4105989, 2718714, 13532905, -3336116, -5076115, 4200478, -437013, -6979, 1104344,
-5692443, -3611531, -605590, -4576288, 898722, 6473053, -3637301, 1471563, 7633768, -2986076,
-1160715, 5903970, -195421, -1699196, -13317620, 8182987, -7734163, 5344013, -9123047, -1921461,
-2780455, -5411659, -2782602, 12038256, 8127152, 987843, -2551211, 11258183, 1565516, 5359046,
-4317516, 2508261, -2739652, 4835597, 1855963, 4788352, -9891847, -21233782, 54554676, -61572116,
--7256884, -32489816, 39528732, 10519986, 6854768, -15600395, 3576097, -12764643, 35408248, -6440304,
--2413235, 3483219, -1889249, -14062260, 5191005, 7916162, 10631655, -24158654, -12713103, -12523051,
-4813585, -7431904, -6567005, -939524, -325881, 15575699, -8223789, 608812, 11800960, -1656247,
--15920370, 1815697, 12432320, -1676648, -25035902, 18469970, 2160906, 159988, -115964, -10717017,
-8154533, -46359876, -32307280, -4689031, -11610907, 1905892, 3469260, -21818434, 33940444, -13663365,
-46781856, -6808597, -16451872, 15842524, 2633352, 14117021, 21643950, 6678674, -22320946, -6376416,
-25003152, 57920320, 1897302, -15064061, 24194624, 1894618, 28544352, 4420595, 38654704, -10185515,
--1569811, -1246614, 9017284, 1131187, 14847702, 26977764, 1602023, -5954436, -4858145, 8452496,
--7386807, -3381213, 17738752, 12758737, 1947231, -3525095, -6693170, -7726110, -4597763, -6324876,
-12793634, -8129300, -5509370, 6118718, 2282238, -2649458, 5733245, 6300180, -3621194, 5371394,
-9092983, -4925791, 605054, -13100187, 16269336, -304943, 13086228, 642098, -13634374, -142808,
-1420560, 3353296, 1465658, -237834, -11712376, -11093364, -649077, -6555731, 8652748, 2924873,
--3998078, -645319, 6810208, 1146219, -3921842, 137976, 4938676, -195958, -2368675, -751082,
-2681670, 80351856, 25131464, 9139690, -2240362, -8318815, -11217918, 26422102, 24250996, -27343910,
-16669842, 12723841, 3097208, -8061117, -14415521, -37394668, -13876502, 12329240, 4161287, -11836930,
-22991496, -7109782, 9448391, 9389872, -5262409, -5049271, 23982024, 903017, -8805220, 15106474,
--12701829, 29418916, -14054744, -8403104, -1357747, 11639361, 6260989, 29748554, -8840116, -17360794,
--6041945, 8062191, 2249489, 16061567, 4561256, 1652489, -6198712, 12992276, 55558624, 23785528,
--20343112, 18014704, -10565620, -16540993, 13873281, -355409, 4202089, -863825, 10056129, -14417668,
--22081500, -58877024, -15343234, 21326660, -7594576, -20062866, 9087077, -4504347, 9051644, -23460722,
--20538534, -9565966, 9123584, 9635759, 28421410, 5172751, -1772211, -21871048, -31028454, -3684545,
--13834090, 2924336, 11478837, -14694157, -15095736, -3098282, -18832894, -31596464, -10357851, -8251706,
--16782584, -3768297, 9658845, -8676371, -4465156, -10004589, -2159295, -22454090, -14210973, -14228690,
-631360, 2297271, 8414378, -12471511, 7355132, -16887812, 940061, -9861782, -1078037, 5493800,
--5050345, 8233989, -22235582, -4257387, 7881265, 3402151, 7264401, -2654827, -5902896, 11204496,
--1951526, -2088965, 7911867, -11027865, -8689793, -1452773, 2347200, -14694157, -6856379, -7910793,
--4308389, -1058710, 34897, 1480690, -6493991, 891206, -1840394, -12930536, 17361868, -14618458,
-48495548, 40635224, 18845780, -11605539, -17566954, 28929826, 24776592, -33342904, -7031399, -20583094,
-27977954, -5190468, -40513352, -17898740, 13996225, 24742232, -46773804, 18258442, -32475322, 11531987,
--19296752, -5299453, 22060026, -7915625, 3113315, 13899051, 29504278, -19881940, -32994476, 6941741,
--2855080, 3177739, 30263414, 7309498, 22519050, -29265908, -5601174, 8879845, -26033944, 41718628,
--5176510, 24842628, -3781719, -6306086, 20442970, 20300700, -12151536, 45982456, -11106785, -20576652,
-22134650, 39451960, 2026151, 6824166, 1702418, 17178796, -18972482, 13701483, 60260000, 27423366,
--2105608, 26020522, 32339494, -24509768, -74196632, 5208722, 44423920, 50040664, 13606993, -5257040,
--21989696, 25791278, 55530704, 25616796, 13409425, -54976656, 10133975, -31309238, -19425600, -48513804,
-40754944, 8527121, -14257681, -19523848, 14241575, -14211510, 7653632, 5124433, 7129109, -18200460,
--3920768, -2573759, 9410273, -6497749, 7945153, 6688338, -8231842, -5599027, 11092290, 150861,
-11921219, -5437966, 4380330, -8204462, 4187056, 22347788, 4204773, 3937411, -2941516, -24680492,
--12390981, -15350213, 8000451, 40784472, 38674568, 34717832, -2775086, -25749402, -24136106, -11750494,
-16237124, 17886928, -1370632, -8728447, -13050795, -19236622, 5005785, 10362145, 8833137, 8056285,
-6501507, -91805, 662499, -3671660, 3773129, -5313949, 3642132, -1408212, -781147, -191126,
-4734665, 1115081, 2039573, 311922, 2244121, -4032438, 440234, -1891933, -607738, 34152508,
--67017596, 51501488, 10842645, -30612380, 617402, 28893318, -18913426, 1014149, 16102906, -19805704,
-1886028, -17777406, -11236708, 19202262, -16137266, -9074192, -34091304, 15038291, 33469606, 9564355,
--14811195, -25224342, -3901441, 19298898, 10493679, -21518324, -421981, 26353920, -3310883, 1974611,
--8774618, -6212670, 61610768, -29314226, -7388418, -6670621, 10465762, 28731184, -30217780, -16860430,
-40571336, -4608500, -2472828, -48237852, -39896488, 16906602, 27313308, 15017353, -49457624, 34127272,
--805306, -7444789, 7201050, -35306780, -9728101, -4467303, -17476758, 32009318, -24808804, -13706851,
--26686242, -15346455, -35217660, 10759430, -55111408, -15364172, 6534256, -27370216, 6847789, 15384573,
-6765647, -300111, -9842991, -19753628, 29250874, -6251862, -2777770, -10419591, 17719962, 35504348,
-5350993, -47785808, 4251481, -21246130, 3215857, 4501663, -8717173, 3408594, -14322105, -4777614,
--1206886, -10799158, 204548, -3052648, 8409546, 7552700, -2631741, 3830037, 15648713, -7024419,
--5649493, 16062641, -11660299, 10677826, -5677410, -5355824, 1145146, -6770479, -3335579, 9790378,
--19051938, 5764383, 4418985, 7085086, 13549011, -9540733, 1569274, 10203769, 3635690, -3437585,
--9048422, -1753957, -2246268, 266288, -9287867, 2789045, -1697049, -3736085, 2181844, 1238024,
--4356171, 9782862, -4249870, -2964601, 155156, 2586107, -443992, -38739532, 23372138, -799401,
-30278982, -6342056, 31326954, 3840775, -4070019, 13940390, 36368708, 17342004, 9286256, 7170985,
-4609037, 14215268, -18373870, -1606318, -13785234, -14563697, 22369800, 13811541, 8544837, -6579890,
--5655398, -2793876, 23409182, 3445101, -10389526, -17089138, -786516, -4159676, 17611514, 2523293,
-14730664, 27520002, -7718593, -70289824, 4604205, 56820808, 5946382, -41978472, -5412733, 15924128,
-12646531, 22207128, 20358144, -1849520, -13223131, -13747653, 17822504, -11030550, 1996623, 6038724,
--72815800, -12827457, -13999446, 11356430, 57235272, -1258962, 4600447, -13498545, 3893925, 11582453,
-24015310, 12315819, -14185740, -7693897, -35348656, -2377265, 24312736, -10962367, -5039608, 8708583,
-24701430, 19765440, -5314485, -25381646, 166430, 8919573, 2815351, -16957604, 2083059, 1763621,
--1242856, -14683956, -18665390, 15960635, 13358959, -949725, -2891050, -14379551, 11221676, 4344360,
-2590939, 4063576, 3613678, 6192269, 471910, -15915538, 8796630, 139050, -913217, 600759,
-4227322, 1683627, -2042257, -328028, 688805, -5432060, -2944200, -21919902, 3489124, 14962592,
--10640781, 5141076, -17397302, 9546102, 4666482, -2915746, -4731980, -2079838, -1606855, 1752884,
--3728032, 19725174, -2285460, -114974128, -216266096, -86909736, -146375712, -168225808, 104614128, 36575404,
-96118680, 289042720, 189186864, 152665680, 228787008, 114221432, 7376607, 90491736, 22529788, -91556352,
--64340756, -72960760, -167657808, -136184288, -58856620, -121946472, -134399728, -55560772, -82726976, -138758576,
--71731856, 10737418, -87282864, -79863840, 17602386, -17298518, -79598096, 89179624, 58194124, -66844188,
-66133908, 100366944, 15184857, 57383448, 201639056, 95770792, 60429116, 237221248, 166195904, 96238944,
-233818560, 313495040, 194053072, 281115264, 364082240, 260193952, 172519168, 227442672, 119684632, -115854592,
--76347336, -153031296, -356576768, -357509312, -362166144, -546620480, -539802752, -542292224, -564992768, -533350656,
--518883040, -408425088, -326990368, -247233344, -101946416, 29992294, 79237312, 201849504, 350595488, 297107584,
-398215424, 566326848, 475965600, 444584416, 541227072, 401013568, 205641968, 222919536, 209086528, 78510392,
-55818468, 112277424, 41457708, -9803263, 37524056, 13407277, -78087336, -69707856, -42112692, -139520400,
--160383200, -69931728, -122039888, -167891344, -69459288, -44569412, -91621856, -1279900, 29465624, -30203284,
--4640176, -22274774, -128250408, -184597696, -207071648, -258466832, -304471840, -273139520, -249846832, -232501072,
--174679008, -111100600, -79272752, -14313515, 61551176, 95938832, 138836432, 228888464, 278005728, 324459552,
-347487552, 329436352, 293428960, 224679408, 153418912, 85848344, 11886322, -14376866, -24871082, -40209484,
--45617920, -46239080, -53912040, -56945896, -51776368, -46379740, -51896628, -55413132, -53262428, -55683176,
--61290792, -58942520, -56664576, -44727252, -30185030, -23958938, -15392089, 850404, 6777996, 14328011,
-30232274, 39797704, 41323492, 40657772, 31958314, 21353504, 12538083, -404801, -11883638, -17962090,
--29010356, -37242200, -40296456, -47302624, -49655192, -45314052, -42583528, -39825620, -33300492, -29113972,
--23296976, -16974784, -12474733, -6114960, -579821, 6496675, 10862509, 15374372, 20226612, 25370908,
-28627568, 33884608, 39545376, 43643848, 45848776, 47496968, 48521320, 47852380, 46573016, 46170900,
-41958072, 36586144, 29709900, 21926344, 14084808, 5937793, -3006477, -10468983, -18383534, -24939802,
--31581968, -37468220, -43444132, -45805828, -47371340, -46968688, -43336756, -39413840, -34636764, -27095874,
--19742890, -12797392, -4628364, 2423435, 7080254, 11267310, 14266271, 14582488, 13673028, 12974022,
-11217918, 8858907, 7205345, 6215892, 4965519, 4001836, 3454764, 3042448, 2530273, 2335389,
-2358474, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--6914898,
--610959, 6533719, -5777805, 2272038, -9754408, 127775, -3511136, 3959960, -3275450, 920734,
--2211371, -4068408, -1021665, -366683, 3001109, 3742527, -3497714, -6128382, 3254512, 1122060,
-2284923, 1380295, 2579128, -3542811, -2644089, 659278, -647466, 3227668, 2342905, -2705830,
--554588, 2463701, 4567161, 2809982, 67646, -3541201, 1946157, -593779, -1861868, 2518998,
-1116155, -3252901, -2701535, -2203855, 1860795, -3187403, -1687922, 2703682, 1071594, -84826,
--3316789, 1245004, -2847027, -7419556, 768799, -2519535, -4759361, 2211908, -1329292, -1360968,
--1609002, 111669, 3689377, 2209761, 1267552, 1673964, 2794413, -5589900, 2951716, -2219961,
--2112587, -1231582, 1894618, 361851, 3964792, 5720897, 2269353, 446677, 686658, -81604,
-3693135, -1541356, -94489, 1789928, 166967, -1511292, -1511292, 521302, -2147, -1707250,
--817118, 537408, -47782, -226023, -639413, -845572, 610422, 366146, 658204, -252329,
-258235, -175557, -1540820, -613107, 766652, 1264868, -668404, -842350, 332323, 800475,
-14845554, -1257352, 2717641, 3264712, -1525787, 1536525, 5910412, -4616553, -821949, 1688459,
--2300492, -454730, 4339528, -1406602, -986232, -303869, 1677722, -832687, 2085744, -1470489,
--1451162, -666794, -3379066, -5759015, -1092532, -1848447, -780073, 3389803, -6106907, 7496329,
-37044, 129923, 249108, 1415192, -189515, -2881923, 444529, 2310693, 5648419, 282394,
--50466, -861678, -1917166, 3761855, 1776506, -1373316, 2065342, -3745748, 629213, 1196685,
--2845416, -9739375, -3059627, -242666, -583579, -462783, -868120, -1239635, -717260, -1850594,
-2375654, 7178501, 4056060, 315680, -24159, -190589, 2497524, -1466195, -6556268, -224949,
--3420405, 2146947, -3879429, 2189360, -9456981, -56908, -1357210, 3209951, 5135171, -786516,
--1238024, 775242, -34360, 2769717, 1002875, 465467, 3734474, -2759517, -377420, 478352,
-1327682, 8590, 1353989, 78383, 862215, 402116, -194347, 282394, -350040, -37581,
-774168, 1194001, 129386, -323733, -478352, 159988, -219580, 678068, 469762, 332323,
--235686, 128312, 440771, -13082470, -12614856, -4750771, -1873143, -1804423, 5369, 3184718,
-755377, 2586107, -5927055, 2924336, 3684008, 3561602, 4175245, -3238942, 892816, 9836012,
--6092411, -218506, -4342212, -6291054, -759136, -449898, 5444945, -2647311, 566399, -4699768,
-3003793, 1877975, 2356327, -10531260, 1615982, -1927904, -3700651, -996432, -59593, -7813620,
--5066451, -4364224, -359704, 6524592, 2255395, 2159832, 3127273, -2921652, 1837172, -2621541,
-5571110, 8584029, -813359, -790811, 2432025, 599685, 2210835, 4823249, -2273112, 4990215,
--790811, -154619, 2943663, 4041564, -1540283, -5841156, -5383205, 2074469, -744640, -1003949,
--2378338, 2650532, -4484483, 1662152, 3343095, 5665599, -3305514, 5432597, 3536906, 1766305,
-2703682, 655519, -931471, -3659849, 2592013, -1722282, -3429532, -4317516, 1778653, -1423245,
-2590939, 457414, -1675574, -2014877, -1040993, 858993, -1078574, -379568, -1382980, -605054,
--96100, 1328219, 683974, -42413, 756988, 2617783, -266825, 8053, 1514513, -825707,
-415538, -575526, -462783, 753767, 1085016, 1108638, 693100, -15032, -359704, 818191,
-372588, 1793149, 2129767, -1707786, -193810, 943819, 278099, -972273, 307090, 1227287,
-1050120, -556735, 129923, 690953, -624918, -14268418, 6223408, -6368363, 11526082, -10666014,
-8441221, 4320737, -4410932, -5521718, -3059627, 2227478, 2010045, -2965138, 6811282, -2401961,
--6442988, -1284732, 7043210, 4842039, -7056632, 1171989, -854699, -7388418, -3042984, -4738423,
--1083406, -5646809, -1478543, -2332167, -7801271, -2753074, 4010963, 5748814, -1068373, -6672769,
--1324997, 4802311, -1429687, 209380, 357556, 151398, -6643778, -153545, -766115, -1648731,
--280247, 1224603, -4748623, 2777233, -5086315, -66035, -1611, 152471, 3832185, 125091,
--1732482, 1595044, 2667175, 6324876, 2900177, 1473711, -1785096, -3847754, -3636227, -1481227,
--3974455, -2833068, 2396055, 4155918, -2990908, -5019206, -3430605, 1652489, 920197, -4705137,
--1595044, 637803, -3956739, -1790465, 587874, 1269163, 1657321, -1798518, -2171106, -2987687,
-150324, -326418, -1127429, 981937, -962610, -299574, -2275259, -473520, -740345, 2073396,
-1038308, -784905, 1032940, -81068, 352187, -949188, 153008, -547608, -11274, -783832,
--1502702, 1147830, -69256, -1431298, -882616, -104153, -1306744, -1525250, 1478006, -881005,
-17473000, 6942278, -1186485, 3949223, -2825552, 9788767, 4129611, 17643726, 319975, -17097192,
-4367445, 10349797, -6174553, 1804423, 7120519, -5494337, 5017596, -4456029, -977642, -5491653,
--5233955, -1662152, 1438814, -577136, 2354179, -2359011, 7560216, -4536559, 2128693, 1388348,
-4915053, -9037148, -4718022, -3568044, -1078574, -3204583, 840740, 5502927, 3922916, 8744553,
--1291711, -657130, -4997732, -1646583, 5513128, -5397164, 4551592, -5049271, -2130304, 8027294,
-11590506, 8309151, 1449015, -6126234, 4282620, 3184718, -3269544, 6749541, -4467303, 1328219,
-1056025, -12343736, -119185, -11701102, -4720169, 1861868, -3106872, -5586679, -4780836, 972810,
-8023536, 2001992, -3295851, -4082903, -3603478, 806380, 1290638, 3841848, -6099928, -5484137,
-361851, -1059246, 351650, -1577327, -918049, -980326, -540092, 1822140, 457414, 836445,
--806917, -1267015, -1251446, 359704, 3190624, 1069447, 2314451, 742493, -3690988, 2771865,
-1230508, 506806, 524523, 1603633, -382789, 1382980, 255551, -31675, -1162326, -843424,
--1600412, 470299, 1511829, -292058, -769873, -858457, -5232881, -583042, -656593, 180926,
--839129, 10790032, 21914534, -9630390, -7174206, -1986959, -2647311, 7599945, -7382512, -13390097,
--4689031, 872415, -3334505, 3768297, 1739462, 6583111, 2712809, -2719788, 9483825, 8898635,
--4202626, 591632, -6239514, -1106491, 263604, -3855270, -813359, 6627135, 9516037, 326418,
-1500554, 3888556, 2445447, 1485522, 576599, -3688303, -6972880, 737124, -9995463, 301185,
-2195802, -3215857, 3811784, -2567854, -5564667, -483721, 5252208, 2305861, -2476586, 16137803,
--133144, 5168993, -9725953, -2203318, 6526203, -3153043, -7225209, 4145180, -8452496, -7554311,
-1619203, 9132711, -7607461, -4281009, -2311766, 328028, -3495567, -3444564, 12301860, 7195681,
--1214939, 637803, -5927055, -4232154, -2466385, 3673808, 4806069, 377420, 3833795, 2488397,
--891743, 3597035, -3449396, 12323872, 6915434, 1313723, 299037, 1091459, -2189897, -848793,
--2180770, -2245731, -165893, -128312, -2104534, 1021129, -3125126, -957778, 2255932, -892816,
-2313914, 1333587, 2182917, 51540, 1474248, 1758789, 1530619, 266825, 2608119, 849867,
-272730, -2005750, 91805, -769336, -134218, 93416, 870268, -172336, 782758, -1911797,
--187368, 739808, 931471, 1421097, 8759586, -15546708, -2042257, -11663521, -6615860, -10561325,
--2643552, -1576790, -1535451, -4028143, 4805532, -14906221, 7755101, -5049808, 4639102, 2051384,
-6308233, 401579, 2656974, -5979668, -2489471, 2844342, -5936182, -4309463, 7423851, 2077690,
-3402688, 3003256, -678068, 2026688, 11019275, -3874597, 1130650, -4885526, 8878771, -5266704,
--19470698, 6101538, 3157875, 8276939, 4531191, 11388106, -7575249, -2988224, 6931004, -2797634,
--6462852, -3047279, 3649649, -9453760, 9477919, -282394, 6348499, -7974681, -3429532, -2865280,
--8603893, -1722819, -6820408, -3103651, 830539, 10062035, 8159364, -862215, -12183748, -6953015,
--2163053, 9773735, 8144332, 5907191, 5520644, -3400004, -14114873, -3590056, -315143, 3375844,
--4387846, -1351841, 7375533, -1344325, 8699993, 154082, 6059662, 2324651, 390842, -2150168,
--123480, 3285650, 971200, -1465121, 402653, -3884261, -566399, -183610, -5146445, -3105261,
--3249680, -1597728, 1147830, -2072322, 962073, -2792803, -256624, -789737, -1423782, 2340757,
-1227824, -447750, -3461744, -1349694, 1544041, 2382096, 157840, -3442953, -1724429, 825171,
-1913945, 530965, 988379, 299574, -1717450, -20419348, -24676198, -13923747, 10191957, 864362,
--4564477, -5191542, -7848516, -789200, 2730526, -13745506, -1265942, 8759586, -5269925, -3739843,
-9787694, 2608119, -6359236, 2500745, -6150930, 14484777, -4602595, -3386582, 4733054, -7463043,
--4643934, -4358318, 2508798, -5168993, -1886028, 2463164, 1812476, -16908212, 7650948, 7432441,
--4811974, 13172128, 5119064, 1297617, 12664785, 7231651, 2325188, 1809255, 13689671, -1311039,
--2240899, -871878, 8446053, 4725001, -12250320, 4826470, 3950833, -46171, -6481643, -19859928,
-8873939, -1265942, -4809290, -12439299, -6949794, 7712151, -1529545, -3593277, -8211978, -16146930,
-1742683, -2199560, -8485782, -3576097, -15196131, -2404645, -3329137, -2852932, -541703, 5531918,
-11868605, 5080410, -3814468, -8363912, 3379603, 630286, 5023501, 3126199, -1774895, 3623879,
-1430761, -347355, -4431333, 459025, -7290170, -404264, -1503775, 1270774, -2738042, 3542274,
-2195802, -780610, -478889, -669478, 636729, -1644973, -299037, 2051921, -663572, -702227,
-3968550, -1474784, -846109, 3111704, -2229625, 1892470, -6067178, -4002910, -2141578, -3267933,
--192737, -3248069, -4226248, -3230889, -780610, -650151, 1619203, -131533, -2525441, 1571421,
-726386, -1401233, -21228950, 16979080, 898185, 8653822, -1613834, -758599, 1542430, 9356586,
-870805, -1214939, -12851616, 4510253, -1465658, -9922985, 2521146, -6495601, -5028333, 18306762,
-5150203, 5614059, -4023848, 6538014, 7864622, 7636989, -4516695, 6666326, 3405909, -7747048,
-4962298, -7532836, -2664490, 4777614, 2202781, -795106, -4239670, -3932043, 12125766, -3562675,
--5430986, -3440806, 2417530, 2641942, -5904507, -9847286, -793495, -10563472, -1323924, -9523016,
--3671123, -2262374, 1793686, -4852240, -8320963, 10411538, -4383014, -11463805, 7253663, 12240657,
--6003828, -3915937, 6114423, 4503273, 12052215, 7854959, 1149978, -106300, -12548821, 3024731,
-11872363, 9626632, -8567923, 9180493, 9841381, -6618008, -18600966, -5954436, -16669842, 2811056,
-9436043, 4823249, 1069447, -4955319, -6794102, -721555, 791885, 2908767, -1599339, 5457293,
--2517925, -1881196, 2043868, 5779952, -8544837, -1091459, -1156957, -2545305, -25233, 2347737,
--559956, -229244, -1421097, -128849, -1435593, 512175, -194884, -141734, 719944, 3045132,
--2692408, -1454383, 1631014, 1975685, 6231998, -568009, 2554969, 2543695, -2806761, 2306398,
-928787, -2319819, 532039, 988379, 657667, 2624762, 5426155, 1236414, -1939178, 3754875,
--1239635, -1997160, 226560, -3512210, -1607928, -186831, 106837, 3991635, -33833068, 16094316,
-4501663, -1666447, 22688702, -1423245, 11446625, -10254771, -2460480, 1718524, 68183, 12937515,
-8200703, -17751100, 10960757, 755914, 6551436, -15996606, -697395, 9122511, -15702937, 19476602,
-5222144, -286689, -7061463, 1091459, 8393440, -14097693, 1217086, 3504157, 2403571, -8722542,
--3278134, 8102456, 4552129, -957241, 1140314, -5763846, -9802726, 3946001, -16519518, -759672,
-23477902, 22917946, -7439420, 2772402, -1090922, 6504191, 16469589, 1314797, 7834021, 2550137,
--8779450, -732829, -1746978, -25058450, -11370389, 15381352, 622770, 4687420, -6125697, -1612760,
-5404680, 7405598, -776315, 19162534, 181462, 14929306, 1772211, 3084860, 1862405, -9905268,
--12442520, 15120432, 3421478, -8009041, 10930692, -9118752, 717260, 9254044, 1410360, -2471217,
-4243428, -4090956, -3955128, 4592394, 6301791, 376347, -8703751, -4218195, -9369471, -3389266,
-2180233, 2901787, 1382980, -3664681, -1794223, -6743636, 4696547, -159988, -2807298, -1299228,
-1906429, 1040993, 5848672, 5265630, 3340948, 3397319, 1057099, 4168266, -2970507, 1878511,
-2153389, 2099702, -2612951, 4213900, 2132988, -709207, -904628, -1185948, -1194001, -2026151,
--4821101, -1427540, -204548, -1952600, -3566970, 11307038, -24597814, 9886478, 15495705, -2140504,
-4605816, 6979859, -3767223, -2374580, 9557376, -3593814, 14504641, -13804025, 7539815, 17954038,
--19239306, 791885, -9157944, 11348377, 4768488, 9416179, -9745818, -7582228, -129386, 24267102,
-260382, 12288975, -5462662, 765578, -1691143, -2130304, -10786810, -390305, -3045132, 4966593,
--4832375, -6953552, -5892695, -415001, -2072859, 10985989, 1853815, -6024229, -5524939, -5542119,
--2073932, -2621004, 17847736, 816044, 8945880, 653372, -4332012, -3873524, 14834280, 11137387,
--4321274, -13968307, 7872675, 5487895, -30929134, 1840394, 17385490, 17045114, 3920232, 13565654,
--18680424, 30586610, 2633352, 5896990, 5994164, 14621142, -1190780, -13001940, -4019016, -15370077,
-17507360, -7702487, -5254356, 15382962, -511638, -5963562, -4716948, -11457899, 10863583, -18741090,
--2816962, 1880122, -517007, 2748779, -3959423, -8000451, -5199058, 2585034, 2009508, -3738769,
-919123, -3560528, -3987877, -2816425, 3394635, 1890859, -4520990, 4238596, 779537, -5337571,
-2394981, -904091, -1973001, -4048007, -4763656, 984084, 2218351, 9831180, -4333622, 5863167,
-640487, -1845225, -767725, -1049583, -2635499, 1589675, -345208, -2798708, -1041530, -1905355,
-711891, 2081449, 1520955, -4003447, 9460739, -18210662, -14552960, 13073880, 11008538, 26833882,
--9422621, -7057705, -4738423, 5083631, -11339787, -1340567, 4486630, -770410, 14440217, 9308268,
--11501386, 1071058, 3408594, 8351027, -13103945, 13823352, -200253, 6138045, -2298344, -6270653,
--13748190, 4888747, -2357400, -5791227, 2801929, -8436390, -8193724, -1825898, 4350265, 16737488,
--24860344, -15040975, -13397077, -15065672, -4252018, 17353278, -10228465, -461172, 17093432, -2493766,
--7675644, -14788646, -3973382, -6366752, -30588220, -23749558, -6685654, 5375152, -2905546, 5358509,
--6781754, -4895189, 14553497, 8782671, -15289547, -7901666, -17114908, -6807523, 1418950, 6856379,
--3055869, 1836099, -14603426, -11694659, -10662793, -300648, 2506650, 921271, -13822279, 451508,
-18615462, 8027294, 21248276, -16732119, 25966298, 2296734, -16131897, -2685428, 750546, 4553739,
--2703682, 7066832, -9865003, 4683125, -8738111, 4122095, 5975910, -1886028, 13293998, -1114007,
-3138011, -3587908, -4801774, -2711735, 384936, 3002182, -5082020, -907312, 1706176, -1133335,
-5107253, -1531693, -2557116, -8586176, 3794604, 548682, 4491999, 1909650, -2880849, -8078834,
-2603287, -10327249, 2619393, -2683818, -430570, 1102196, -2224793, 818191, 1621887, 7178501,
-2803003, -3099356, -13096966, 2528662, -1422708, 30231202, 3311957, 14570677, -12584791, -8538395,
--3084324, -14206678, -9025337, -13719736, -6382859, -8880919, 16401943, 4147865, 4145180, 16924318,
--442919, -932008, 7638600, 15236396, 23772644, 17416092, -3565360, -6410776, -27364848, 7586523,
-8582955, 3386045, -17064442, 19781008, 7872138, 11644730, -3234647, 1151051, 11214696, 24704116,
-24004036, 13900125, 2904472, 25688200, 664646, -7587060, 8319352, 15606301, 12625593, 23118736,
-12178380, 585726, 2774549, -13838385, 6031208, -34692060, -5961952, -3416110, 7707319, 27407260,
-15374372, 4111358, 19853486, -14337675, -13078175, 2895345, -33749852, -7977902, 1388885, 6562710,
-7813620, 9016747, -2033130, 14905684, 1849520, 7755637, 27345520, -16743393, -8761196, -4555350,
-5207111, -3107946, -25820806, -4776004, 17596482, -1175747, 22318260, -11878806, 605590, 9345312,
--2172717, 2701535, -9329743, -4452808, -7247221, -4712116, -8040716, -6472516, 1729798, 1495186,
--16121697, -7364795, -9092983, -2304787, 2944737, 4987531, -7206419, -176631, 2126009, -11206643,
-1656247, -4432943, -7456063, -3763465, 542777, 2898029, -5129802, -1158031, -7829726, -485331,
--2132988, -2400887, -5727876, -8209830, 2060511, 2901787, -4601521, -3033321, -3395709, -2396592,
-1453310, 5651103, 1492501, 1888712, -1818382, -23300734, -7351911, 4222490, 17595944, 32337346,
--13018046, 560493, 5331665, -5941551, 29965450, 5306969, -14786499, 26261578, -5434744, -8822400,
-18785114, -17069810, -9997610, 1141388, 1628330, 2335925, 12295954, 6583111, 9974525, -3064459,
-5280663, 15056008, 897111, 10264435, 1861332, 391379, 16617228, -21737904, -7924215, -7374459,
-14458471, -11083163, -2908230, -6531035, 14316737, -6091338, 31884764, 23337242, -21777632, 10652056,
--26162256, 3748433, 9404905, 5083631, 5610838, -33301028, -6500433, -32116692, 4219806, 2649458,
-3874597, -5072357, -5865315, 15362024, -27780922, 9539122, -12055973, -52245056, -19610820, -17099338,
-8549669, -7610145, 7898982, 26150446, 27827094, 15793132, 14615774, 13616120, 3906810, -20774220,
-21758842, 37581, -24186572, -19201726, -30383672, -40170828, -20776368, -4066797, 32071058, 11582453,
-1895691, 12309376, -9877351, -230854, 6117644, 5134097, -2651606, 4706748, 1455457, 3263638,
-1279363, -9936944, 7945690, 5317170, 3866544, 1589675, -5262946, 2812667, -7791608, -2764348,
--12065100, 9977746, 7466264, -1660005, 1013075, 7978439, 12612171, -5723044, -12460237, -3770445,
-10001368, -2255395, -7473243, 10754061, -1015760, -6279779, 7349226, 2959233, 399969, -1876901,
--363462, -5344013, 3543348, -3423626, -1617592, 8269423, -41307920, -19126564, -14265197, 7780334,
--31483184, 11448772, -18772766, 27026618, -31308700, -39730060, -8513699, -5612449, 31379032, 15400679,
-14041859, -7887171, 3761318, -19186156, -15416785, 3752728, 6672769, -24766928, -23051090, -16102906,
--1952063, 12706124, 9161165, -17343614, -21948356, -12645994, -12910672, -29764660, -17157320, 13395466,
--8213051, -35433, -4000225, 9876277, 15551540, -3898220, -44693428, 19079318, 37609416, 14146549,
--694174, -44800804, -10598369, 19793356, -5462125, 50438484, -5228586, -40345848, 6830609, -6653978,
-3501472, 1293322, -7956964, 11058467, 13623099, -42571716, -11261404, 2527052, 15302432, -7764227,
--21618718, 19585588, 2110440, -14317810, -42436960, -49234284, -25267292, -2974802, 3824132, 39770324,
-56098180, 28998008, 22124988, 9772661, -32233192, 12034498, 60666, -16757889, -4657892, -53228604,
--11024644, -143881, 645319, 2096481, 23553600, 8963597, 7202660, -9374840, -2816962, 20468204,
--13543106, -8053, -580894, 4146791, -9977746, -16631187, -18587544, 8596377, -8523363, -2840047,
-11320997, 639413, 2073396, -14135811, 5158256, 4898947, 2790118, -11582990, -5694053, -7538205,
--12132209, 1939178, -6910066, 13662828, 5561446, -8862128, 2058363, -3100967, 9567040, -12282533,
--1331977, -251792, 6900939, 6222334, 3368865, 7463580, 233002, 4238059, 3481608, 75240848,
-69099048, -29091960, 35857072, 31799938, -8902393, -5312875, -16469052, -8854075, -19366544, -13554380,
-57309896, -3044058, 33389076, 481573, 1631014, 524523, -22610856, 5477694, 4683662, -49612240,
-7399692, 12128451, -26157962, -5370857, -8072391, -3466576, 7343321, -1379758, 1501091, 21998286,
-8859444, -10542534, 6728067, 35012036, 555661, 16201690, -885300, 13248363, -19267224, -23102092,
--13036836, -42518028, 11378442, 4921496, -18997178, -51681880, -33903400, -48300664, 35256312, -24996172,
-5461588, 8914741, 7969312, 6914361, 37616936, -36055712, 155693, -20118700, 39816496, -89248344,
-18292802, 7126425, 28550258, 26262652, 66035, -8023536, -13758928, -3715147, -26066156, 19335406,
-52617644, -3752191, 10799158, 33535642, -23308250, 13495324, 16130287, -28971166, -20378546, -53961432,
-44858784, -8415452, -39687108, 26895086, -6752763, 17695802, -1317481, 15396384, 2449742, -11265162,
-18500572, 18221936, 2774012, 10617159, 16808354, 10481868, -11517492, -4461934, -11254962, -4473746,
-14136885, 27779312, -1343788, -4579509, -1273458, 18029736, -27825482, 16367583, -7669738, 37486476,
-7158637, -21471616, -4646081, 16960288, -8765491, -10976863, -8806830, -6078990, -8660802, 9615358,
-6226629, 24271398, -19931870, 1885491, -2436320, 13610214, 689879, -955093, 7534447, 10077604,
-7059316, 16152298, 1800128, 18536542, 9991168, -249645, -26069914, -24720758, 30581778, -62266824,
-42949136, -25680146, -17935246, -11290932, 3926137, -18034030, -14020921, 19519552, -5977521, -42599632,
-14712410, -2621541, 7556995, -9605157, 37884832, -30912490, 1335198, 15698105, -10705743, 11883638,
--25191594, 2052458, -21672942, -11014981, 23616414, 3001645, 9477382, -13434121, 22830972, -6599218,
--10620917, 8716099, -13944148, -11660299, -7440494, -7720741, -23526758, -31578748, -8756365, 17470316,
-300111, -9916006, -31471372, 1171452, -24870544, -1703491, 10047539, -24678882, -6041945, 18080738,
-18429168, 13310104, -30550640, -14534169, 21090436, 6792491, -572304, 16999480, -100317016, -23293756,
--11173894, -45668924, 4498978, 12429635, -2665027, 8309688, 21519934, -12511777, -21322366, 5318244,
--19360638, -5992553, 20884278, 32989106, -12567611, -40137008, -24138790, 2434173, -21347062, 3168612,
--16566763, -15809238, 4151086, -32231582, 361851, -20199232, -6167036, -11173894, 4460861, 7870528,
--3210488, -20089710, 4356171, -1571421, -12566537, 15256261, -698469, -14906221, -5086315, -4130685,
--5574868, -10450192, 5437429, -9587441, 7522635, 10164040, -4205310, 849867, -6238440, -14239427,
--19675782, 3110630, 2530273, 8676908, -22775674, 4338454, -177167, -15096273, 11198590, -6528887,
-7987566, 17965312, -41304700, 7818451, 5698885, 11417634, -6949794, -4749697, 13501767, -1441498,
-999654, 67515816, -8414378, -18512920, 2677912, -7360500, 33494302, 6432251, -2726231, 31854698,
-32259500, 10717554, 12534862, 17797270, -39561480, -21769042, 32964410, -4337917, -32472638, -16313360,
--14704357, 22587770, 12075837, -11783243, -46945068, 14778982, 7421704, 6403260, 7757785, -5500780,
-4805532, -35079684, 31550830, 22060026, 11651709, -17486960, -14979772, 108985, 15795816, -3273302,
-16420734, 7332046, -37170796, -16356309, 5878200, -37244344, 2218351, 7337952, -32932198, -46206868,
--6504728, 14190572, -26980448, -56141128, -24686936, -14554034, 36550172, -22014928, 41244572, -8301635,
-1918777, 17845052, 2391760, -62909996, -4233764, 2859375, 29459718, -55954832, -77683072, 5861557,
--5104569, -49247704, 27888834, 13408351, -1906429, 96637, 45638860, -65133180, 53613004, 11624329,
-7116761, 22050898, -23616952, -21037286, -4164508, 10450729, -13475997, -666794, 27469538, -23029614,
--18815178, 24709484, -13887240, -6521908, 10116795, 7074885, -27434104, 14287746, -9264781, -2106145,
-9550934, 9885404, -29234232, -4334159, -22764938, 13082470, 17495012, 1593970, -37595996, 26966490,
--6634651, -147103, 15880105, -3566434, -13810467, -1989644, 21016886, -31448824, 21638046, 1693291,
--2609193, 8537321, 4005594, -19449760, 8997956, 454193, 682363, -25480968, 17649094, -16473347,
-19493246, 3552475, -24140400, 2580202, 2683281, -6205154, 11002096, 2648384, 30775052, 11538967,
-73584600, -31986768, -33311766, -14300094, -2018098, 69823824, -10501195, 57686780, -41697688, -16901234,
-24049670, -45417132, -15395847, -42787000, 6266894, 41865732, -59332824, -22318798, -5665062, 16976932,
--1111323, 5702106, 15650324, -4975183, -37813964, -35203700, 1136019, 23432268, 64639256, -15332496,
-17110612, -19621022, 31625992, 231928, 3200288, -9887015, -39060580, 402653, 34947076, -6975564,
--2629594, -14128832, -34130496, 43350180, 16300475, 28624346, 38987564, -2834142, 1792612, 23646480,
--63666984, 20924544, -32399086, 73843912, -7568806, 6453725, 10714870, -22714472, -22517976, 6600828,
--32287954, 46512884, -28224378, -35869420, -35850092, 48668420, 16332150, 27807228, -6874095, 27773406,
-28631326, -30646202, -9054865, -28497644, -15008763, 50731080, 36125508, 3892851, 9548249, -79189536,
-53160420, 69468952, 7621420, -6622303, -13851806, -42946452, 60323888, -4488241, 3637301, -12913356,
-1287953, -27477054, 56438016, -14547591, 27268210, 3467112, -10346039, -4279935, 54352812, -31264678,
-26549340, 8038032, -23727546, 2246805, -7939247, 14141180, 3902515, 21219286, -9699647, 1342714,
-3736622, -1243393, 21551072, 36678484, -12057584, -2914672, 3867618, 19692962, 5480915, -29970282,
--19866372, 39767104, 7514582, 18981608, -40438728, -49093088, 43976708, 28455768, 13431436, -4446902,
--37666864, -1839857, 33430952, 9824201, 1459752, -3656091, -6631967, 5748814, 4498442, 6989523,
--5551782, 3664681, 7174743, 4686346, -3106872, 1026497, 1371168, 6929393, 17611514, 6583648,
--55529632, 37969660, -39504036, 4795331, -18224084, 14663555, -1572495, 20898238, -3406983, -18044768,
-31062814, -10899553, -4413079, 4820564, -13128641, -11310796, 35850092, -8429410, -5013301, -4152697,
--1930588, 16543140, -12660490, 3949759, -9295383, 8302172, -8134668, -6040335, -19380504, 28268402,
--17524004, 9438728, 4397510, 19624242, -22065932, 5013838, -9106404, 22260278, 2767033, 1877975,
-17379048, 5345087, -29203094, -4167192, -5140002, 8205535, 12553653, 10772852, -26581552, 11455215,
--20128902, 14260902, -11557757, 3156801, -6717329, 14092861, -5648956, 4205310, -29748554, 7157026,
-14142254, -13360570, 13215077, 2021319, 4718022, 8561480, -12139188, 20618528, 7828115, -944356,
--6665253, 10133438, -6467147, 18741626, -15760919, -4404489, -15019501, 19412178, -19246822, 17660906,
--16095390, 21432960, -18301392, 11362873, -18053896, 15845208, -1508070, 1886028, -5436892, 1116155,
--3395172, -2457795, -5771363, 9554155, 3318399, -975494, 2721936, -2516851, -5320391, 9618042,
-1102196, 3856344, -6350646, 709207, 8949638, -10371272, -2965675, 6582038, -219580, -2837363,
--7269232, 17219060, -5706938, -8114804, 4001299, 1906429, -3069291, 2194192, -1372779, 2047626,
--3283503, 2833605, -5391795, 8690329, -7283728, 9965935, 3722663, -6702297, 2074469, -1003949,
-604517, -407485, 4083977, 464930, -3260954, 2867965, -3521873, -23032836, 46790984, 3981972,
-5957120, -18597208, -13677860, -29577292, 19966230, -8242042, -5976447, -12811351, -428423, -11414412,
--1353989, -1443109, 5288716, 5903433, -840740, -1307281, -8359080, 7930657, 7417946, -6922414,
-3367254, -15806553, 6397354, 3154654, -2711198, -2398739, -5230734, 5122286, 1181116, -11239393,
--2970507, -3250753, -9316321, 15455440, 1680943, -9767829, 1570347, -3790309, 13476534, -4589710,
--6205154, 2663417, -7935489, 15715285, 517007, -8592619, 2544231, -3465502, 7721278, -9810242,
--1892470, 3318399, -3522410, 6939057, -3850438, 2053531, 3185255, -8843338, 1312113, 8912594,
--13464186, -826781, 4170950, -12495670, 22943178, -20868172, 10513006, 3847217, -11890617, 23715198,
--16027744, 3859565, 3084324, -9941239, 7863012, -4024921, -7653095, 7607461, -9130564, 6044630,
--4160213, -3053722, 6863358, -5593658, 2251100, -2230699, -3221, 1389959, -3027952, 1516660,
--105764, -2954401, 6491843, -5406827, 4854387, 243203, -4432406, 4462471, -7868917, -699543,
-2152852, -1240172, -1031866, 1185948, -4062502, 5120138, -2502355, -1730335, 597537, 592169,
--3157875, -419296, -1800665, 1815161, 2594697, -3561065, 3224984, -3396246, -617402, 3419331,
--2448668, 10912438, -50017580, -115480400, 30313342, 106902808, 90390272, 121278600, -59773060, -77473696,
--116496696, -119083336, 8209293, 88786104, 98046584, 107383848, 35735740, -23368380, -85169736, -141049408,
--77248208, 35879084, 55619828, 94067840, 71339944, 19478750, -12603045, -29717952, -70616240, -45784888,
--43523052, -7991324, 37272800, 57067232, 30090004, 38094748, 19321448, -21476448, -3297998, -45917496,
--63851132, -10945724, -14848776, 11258720, 60349660, 34729104, 29989072, 8827232, -22520124, -23269060,
--19972672, -33112050, -8603356, 1449015, 14264660, 17296908, 28907278, 8201240, -943282, -14581414,
--26775900, -2319819, 9740449, 9897752, 16986058, -4338454, -13405667, -6497749, -13421773, -10620917,
-2956011, 7577933, 21742198, 18338436, 17631378, 986232, -9338333, -35228396, -32640140, -13368623,
-2181307, 27158688, 29251948, 11998528, 12454331, -1420024, -23435490, -14434848, -1609539, -5552856,
-1353452, 2436320, 5747740, 4683662, -2949032, -7722351, 4635344, 7045357, 5909875, 6000070,
--455803, -4470524, -2658048, -11990475, -4819490, -6641093, -11135240, 6594386, 16412144, 18976776,
-6403260, 6808060, -3605625, -4509716, -16949014, -25388626, -9667435, 2836826, 8017630, 9776419,
-20874614, 19251654, 9467719, -7726646, -16153909, -18402324, -17064442, -12763569, -759672, 15333570,
-23947128, 18835042, 5586679, -9067213, -10700374, -10858214, -6147172, -4194036, -4590247, 4595078,
-11019812, 7967701, 1839857, -1497870, -746251, -2891050, -3097208, -4609574, -1896228, 2537789,
-2284923, 1255741, 1578401, 1206349, 1132798, -2383170, -2913599, -942745, 1337346, 981937,
-406948, 405874, 486942, -950262, -707059, -392990, 235686, 255014, 717796, 611496,
-458488, -226560, -814433, -1455457, -126702, 246424, 128312, 375810, 1008244, 306016,
-312996, 819265, 107911, -2259153, -1759326, -574989, 489626, 965831, 1487132, 491774,
-172872, -100395, -37581, -596464, -501974, -308164, -151398, -493921, -73014, 44023,
-466004, 667331, 784905, 386547, 340376, -267899, -661962, -1149441, -758062, -419296,
-221728, 833761, 1273458, 831076, 170725, -435402, -548682, -841814, -622770, -64425,
-352724, 328565, 312459, 92342, 56908, -45097, 2147, -67646, -55835, -78383,
-6979, -20401, -32749, -75699, 4832, 40802, 45634, 24159, 37044, -6442,
--17180, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--5501316,
--4846334, 6116571, -1204202, 4890894, 1455457, 7255274, -1642825, -3696893, -2532420, 4446365,
-163209, -1569274, -387084, 5022428, -1286880, 940598, 1791001, -3316252, -2508798, -1058173,
-961536, -3444027, 926102, 738734, -3986804, -1278827, -2368675, 370441, -1719061, 673773,
-6613176, 3397319, -1879585, 339839, -3078418, 2421288, -797253, 3908957, -8016020, -860067,
-1288490, -2844342, 558346, 3928821, 3023657, -3605625, -2640331, -2894808, -499290, -2290828,
--1130650, -3520800, 1394254, -295816, -4051765, -2105608, -1610076, -192737, 887448, -881542,
--381715, 1772748, 740345, -1921998, 1056562, 4371740, -2195265, -569620, -4646081, -1780264,
--321049, 1948305, -1939178, 570694, 834834, 657130, 1557463, -3618510, -77846, -2038499,
-1762010, -1304060, -3451006, -991064, -66035, -57982, -1500017, -1623498, 1744831, -766115,
--270046, 630823, 1037772, 47782, -185220, 193274, 635118, 38655, -343597, 775242,
-184147, -678605, -575526, 723165, -213138, 260382, -419296, 651761, -559420, -395674,
--54761, -135828, 276489, 7499550, -2850248, 2417530, 6265821, -5143224, -5794985, -880468,
--1471563, -102542, 3176128, 1754494, -8043400, 1219234, -4628364, -6356552, -439697, 2286533,
-2476586, -2095944, -299574, -709207, 3410741, -746787, 2799782, -1356673, 298500, 587337,
-831076, -4038880, 1654636, 3063386, -1482301, 3913789, -2216203, -464930, -4962835, 3472481,
-856309, -1338419, -3854196, -3826816, -1749125, -1330903, 1888712, -454193, 1627256, 1599875,
--3419868, 2078227, -4584878, 1594507, 2630668, 4996121, 4823249, -4215511, 2047626, -306016,
--1127429, 2907693, -2270964, -2723546, -2041183, 2362769, 1176284, 3091303, -3134789, 4675072,
--1549410, -280247, 1401770, 739808, 2748242, -2136746, 3923990, 4933844, 8690329, 3999688,
-2753074, -5187247, -956704, -3401077, -2443837, 3119220, -430034, 3863860, 1583769, -357019,
--795106, -725313, 2244657, -1757715, 1787780, 2082522, -1692754, 971200, 768262, 177704,
-1277216, -845572, -246961, -1735704, -99858, 93952, 870805, -9277666, -9980430, 1080721,
--867047, 2310156, 2151242, 6506876, 2913599, 3082176, 1534377, -3256659, 1184337, 8235600,
--5587753, -668404, 204011, 6602976, 3948149, 881005, 2897492, -571231, 2226404, 3020436,
-6762963, 3732864, 3775276, 2013803, 1589138, 3279745, 1153199, -4791036, 2865817, 3883187,
--1446330, 2813204, 3715147, -1351841, 1135482, 4665945, 1688996, -1169842, 1641214, 4764193,
--294205, -86973, -994285, 1283658, 4449049, -1361505, -2583960, 1268089, -1605781, 2346126,
-2775086, -3377992, 671626, -2192044, 126165, 1342714, 3736622, 3087008, -8010651, -43487,
-3851512, -2052994, -3367254, 422517, 561567, 3897683, -376347, -8518531, -3762928, 2729452,
--2411087, 3981435, -1161789, 1611, 966905, 5000416, 3098819, 2110440, -2633352, 4105452,
--543850, 2508798, 1190780, 483721, 813359, 845035, -114890, -673236, 501437, -369367,
--2111513, -885837, -898722, -272730, -526670, -17717, -674310, -1499481, 688805, 306016,
--810138, 161598, 1349694, 1018981, 432181, -204548, -289373, -153545, -128849, 1323924,
--16643, -16726213, 2426657, 1808181, 7906498, -228707, 6188511, 3215320, 1627793, -9767829,
-81604, -73014, -7570954, 1301912, 5776194, 1165010, -45097, -640487, -2982855, -3412889,
-1622424, 2335389, -207769, 1586454, 1817308, 6944425, 847182, 3122978, 3263102, -3513820,
-836982, -762894, -934155, -373662, 2585034, -304406, -1662689, -2662880, -1590212, 968515,
--4829154, -3382287, 2113124, -3797288, 1324461, -6293738, -7590818, -1860258, 9505836, -2408940,
--506806, 5670968, 1920387, 503585, 6018323, -753230, 715649, -664109, 1797981, 3929895,
--1454383, -5873905, 3859565, -3384434, -6578816, -2543695, -1808718, 89121, 2479270, 7270306,
-91268, 26307, -2765422, -166967, 4273493, -1901597, -2148558, 5217312, -4283156, -229781,
-2379412, -5128728, -987843, -1709397, -1733556, 689879, -2767570, -3840238, 277025, 2557653,
--1105417, -1594507, -2204929, -2149631, -285078, 1744294, 765041, -108985, -633508, -1644436,
-110595, -472446, -2122251, -3041374, -2671470, 82678, -322659, 1398012, -2075543, 22012,
--285078, 1140851, -144955, 562641, -610959, 127775, 343597, -945430, 14867029, 397284,
--1002338, -5767068, -3359738, 7803419, -3292093, 6072547, 5207648, -6112812, -1078574, 4532801,
--3469797, -1715839, -1674500, -2271501, 892816, 1572495, 184147, 2801393, -1413581, 368830,
-988379, -1293322, -2932926, -3034931, -3438121, 184684, 3791919, 1615982, -3396782, 229244,
-1433982, 7353521, -2303713, 6576132, -6159520, 2668249, 4693326, -3237869, -2034204, -6251325,
-2814277, -132070, -4440996, 4228932, -5481989, 5963025, -434329, 8469139, 1857573, 865436,
-1959042, 3490198, 1789928, -2821794, 4103841, -845572, -4603131, -7093676, -2024003, 2924336,
--3635153, -2345589, 2633889, -3991098, 7602092, -7477001, -149250, 4906464, -4351339, -1736777,
--7899519, -636192, -3166465, -1759863, -2455111, 6682969, 2529736, 635118, 156229, 5760088,
-452582, -548682, 4532801, 3783329, 3366718, 7169374, -1666447, 656593, -2160906, 1992328,
-2250563, 438624, 566399, -1264868, -180389, -1771137, -993748, 122407, 519154, 1102733,
--704375, -296353, 2180770, 1034013, -1006633, 4430259, -386010, -1156957, -1980517, -1246614,
-1494112, -1580548, 5906, -230318, -1720134, 648540, 326418, -470299, 978716, 1137093,
--1349157, 1181653, 1974611, 7182796, 12743168, -3771518, -5601711, 1430224, -2309082, 3491272,
-11596412, 39728, -2715493, 3660923, 1964411, 3414499, 2051384, -6361384, 199179, -5679558,
-3112778, 2705830, 1627256, 10610717, -546535, 7904888, -246424, -219580, 2375654, -89657,
-8308078, 1081795, 5216775, -1962800, 7080254, -3230352, 3757023, 14084808, -2346663, -3579318,
-9903121, 2075006, 6437082, -175020, -6224482, 1911797, -3608846, 4247723, -7492034, -1009854,
--3914863, 4189741, -675384, 855235, 7638600, -3744138, -7767985, 2154463, -711354, -372052,
-6202470, 1201517, 843961, -2823404, -5127117, -5389647, -1847910, -4449586, -3406983, 4602595,
--2366527, -439160, -1731946, 542240, -25233, 4112431, 2522220, -4704600, -6845104, -1584843,
-167504, 1879048, -1903207, -1660542, 5533529, 3193845, 2699924, 821949, -4600447, -2090039,
-2409477, 120796, -1554241, 2005213, -679679, 1230508, -1531693, 138513, -900869, -2560874,
--3116536, -790274, -2763812, 741956, -456340, 293132, 1803349, -466004, -1507534, 2313914,
-438087, 1488743, 799401, 177704, -904091, 1164473, -338229, -222265, -139586, -209380,
-43487, -427886, 580894, 1491964, -1829656, 527207, -2147484, 371515, -1068910, 2673617,
-17445620, -9300752, 6061810, 145492, 2941516, -4332012, -3410741, -2026151, 3723200, 4814659,
-953483, -2790118, -5188858, 2567317, 4760435, -1047972, 1433982, -2695092, 5198521, 1858110,
--10021769, -3365107, 3111167, -682363, -4309463, -302795, 4434017, -3421478, 1448478, -6564321,
-3684545, 8064338, -3467112, 8535711, 208843, -1681480, 5672578, -357019, 360240, 5097590,
--11329050, 1578401, 3325915, 4672925, 3150896, 3624953, -5128728, -4026532, -258235, 1678259,
--5546951, 1690070, 5231270, 4651450, 1686312, 14442901, -4667019, -1946157, -6671695, -2946885,
--4400731, -6184216, 7425462, 3006477, 7250979, -1271310, -11805254, 6701223, -4217121, 3624416,
-3286724, 1508607, 1947231, -9393630, 10900627, 2263985, -5162551, -9021579, -5644661, -5703717,
-704375, 4402342, -4212289, 207769, 2717641, 2244121, -68719, -2070711, 383326, -337692,
-1660542, 1701881, 1912871, 1235877, 1240709, 535797, -3302293, -3049427, 70330, -1217623,
-987306, 1165010, -1571958, 1949378, -579821, 610959, 1671279, 592169, 1282048, 240518,
--3505767, -401579, -113817, 1047435, 825171, 249645, -845035, -1095754, 1792075, -715649,
-4460861, 607201, 1891396, -20812338, -17487496, -16105590, 3848828, 3562675, 1574106, 944356,
--957778, -1057636, 643171, -2570001, -5714991, -3901441, -10159208, -4363687, -4826470, 6409702,
--7762617, -3310346, -4306779, 1554241, 292595, -1848983, 2524904, -472983, -8070244, 51540,
-7789460, 1200980, -7178501, -6300717, 3049427, -2415382, 6568079, 4701916, -6773164, 7105487,
-11060078, -8882529, -9131100, -4763119, 3622805, 8861591, -5956583, -6134287, 3462818, -3445101,
-867047, -588947, -598074, -9676561, 2086280, 6229313, -2886218, 3666292, -4733591, -5624797,
--5623186, -2644089, -9826348, 17393006, -3446711, -921271, 3187403, 2104534, 3845606, 2575907,
-5543192, 2684355, 4837207, 10860899, -13517336, 9833328, -3081102, -2362232, -282394, -15052787,
--512175, 4927401, 612033, 850404, 4461398, 1813013, -192200, 2793339, -4985384, 6239514,
--1978906, -3233037, 3435974, -1866163, -1727651, 868657, 2838437, -1789928, -3062312, 1363652,
-2759517, 361851, -919123, -2568391, -1372242, 654446, -3818763, -2408403, -1213328, 2176475,
--722628, 412854, 2292976, 307090, -3804267, -635118, -3212636, -2745021, -2665564, -1481764,
--2964064, 2943663, -758599, 456340, 5898064, -856846, -1560684, -1261110, 3273839, 1063004,
--881542, -852551, -20667382, 15853261, 4202089, 3463891, -3825742, 15520938, -2441689, 7320772,
--24159, 6589554, -9235253, 3670587, 3615289, 1431298, -4549444, 13826573, -3752728, 4230543,
-3164854, 14352707, -9681930, -602906, 3970697, -2463701, -7111392, 4311074, -6692096, 1757715,
-1806034, -7802345, 3010235, 677531, 368830, 15797427, 9826885, -1280437, -6477885, -4998805,
-3486440, -795643, -9483825, 2727304, -865973, 2830920, 7080254, 10531797, -7237557, 7179575,
-3528316, -4672925, 3364033, 2797098, -7490423, -3971771, -4714801, 7563438, -8163122, -6831683,
--18648212, -13565117, 3723737, -2495913, -2731062, -7097971, -14487462, 5602785, 1051193, -356482,
-7006166, 6091874, 8436926, 5121749, 1990181, -167504, 1291175, 9687299, -7169374, 13239237,
--4911295, -3645890, -12095165, 2004139, -2284923, -6037651, -1165547, 1556926, -3105798, 3597572,
--1537598, 251256, -1565516, -376347, -1359357, -186294, 2080375, 3554086, 182536, 2956011,
--3302830, -2165737, -1724429, 1302449, 2372433, -3148211, -1334124, -1400696, 372588, -1697586,
-1362578, -200253, 1168768, 2308008, -80531, -3347927, 4810364, 4874251, 1851668, 175557,
--2252174, 12885, -1235877, -363998, -276489, 5388037, -25176562, 22930294, 16418586, -6961605,
--5907191, 6054830, -132607, 380641, 10844256, 7621420, 132070, -1811939, 4254165, -2751464,
--1785633, 2927557, -5134634, 6025302, 4068408, -5347771, 6507413, -904628, 1617055, -671089,
--11201812, -797253, 7828115, 8126615, 3072512, 3377455, 4267050, -5312338, -6678674, 2621541,
-4804995, -389231, -2694018, -5839008, 2163590, -1839857, 6891275, 8155069, -1118839, 9429064,
--5186173, 10528575, 5614596, 12727062, 744640, 1706713, -3902515, -5450851, -1186485, 9727564,
-15988016, 803696, 12141873, -5491653, -12013024, 1407139, 4279935, -10514080, 10590316, -3737159,
-3623879, -22950694, -9981504, -319975, -5658083, 4239133, 7348152, 15649787, 3112778, -51003,
--7932268, -13916768, 3365644, 424665, -11720429, 4563403, 2315524, -8493835, -2547989, 1825898,
-8936753, 42950, 2574833, 2627983, 4570919, 3739843, -7898982, 2586644, -318901, -1695438,
--12885, -540629, -1420024, 3122978, 2923262, -3376381, -1507534, -203474, 2035278, -1390496,
-2980707, 315143, 2121714, 1899449, -2696166, 1739462, 2127620, 5795522, 359167, 3245385,
-3541738, 766115, 4189204, 1434519, 2072322, 853625, 368830, 1432909, 4952634, -2345052,
--4916664, 1006096, 5745056, -10121090, 16269336, -7567196, 1600949, 12050068, 12498355, -1369558,
--7811472, -4394289, -4328254, 535260, -9976672, -8024610, 7632694, 1591285, 4768488, 5860483,
-7043210, -3753802, 4434554, -2254858, 5388037, 23613730, 5281199, -12030203, 10878078, 12490302,
-184147, -2575370, 306553, -6841346, -9192304, -5062156, 12812424, 8405788, 6930467, 10762114,
-1903744, -2387465, -5523328, -14702210, 6235756, 7052337, 3807489, -2721399, -2125472, -5380521,
-1621350, 11126113, 7632694, -13760001, 8420820, -11678016, 11456288, 2041720, 4068945, 4798016,
--2327336, -6817724, -2275796, 4265977, 20087026, -3745748, 9861782, -5034776, -9584756, 10351408,
-9425306, 1976222, 1894081, 9333501, 3103114, 69793, -1458678, -6769406, -2264522, -9695352,
-2614561, -7646653, -3898757, 13957033, -1096290, -135828, -40802, 6146635, -2509335, 1455457,
-4096325, 6185290, 6949257, 5517959, 2054605, 2635499, 3005403, 5538361, -1261110, -5426155,
-6571300, 2171106, 3483219, 3612604, -136365, -1061931, 119722, -3619047, 1582696, 5945309,
-426276, 245350, -1680943, -3025805, 5152350, 5264556, 836982, 9793062, -1592359, 3871913,
-7664906, -115964, 1914482, -1785096, -3344169, 180926, 1437203, 2236067, 5444408, 1846299,
-4007741, 933082, 743029, 5299453, -1248225, 469762, 4264903, 708670, 1113470, 229244,
-1831267, 5906, 2610803, -595390, 1875827, 231928, 8437463, -4363687, 8580808, 10967199,
--12723841, 8449811, 4881231, -3145527, 739271, 5780489, -5346161, -11280195, 16764331, 3536369,
-3180423, 3040300, 9942312, 2802466, -10069014, 10616622, -14422500, -16932908, 1474248, 1905892,
--9304510, -3166465, -27521614, -19604378, -14676440, -5086852, -15094663, -7566122, 5724655, -13705778,
-9525701, 8613557, -11040750, 14119705, 7625715, -2943663, -1417339, -7540352, 343061, -13346074,
-28962038, 8295193, 4540854, -14612016, 3554086, -4633733, 19228568, -4038880, -454730, -17695802,
-17187386, 957778, 6766721, 5368709, 10054518, 5466957, -3816079, 5527086, -8464844, 8454643,
--3058017, 4893042, -13581760, 30722974, 4804458, -14566918, 7874823, 8809515, 7157563, 10298258,
-9086540, -14169097, 11214696, -518080, 9069360, -7296613, 2778844, -18180596, 7663296, 7557532,
-2396055, -4565550, -13427678, -1145683, 9422085, -12309913, -1498407, -1699733, 93416, 3398930,
-2951180, -3001109, 5380521, -597537, -2386928, 3823595, 3347927, -4073240, -2855617, -8175470,
--302258, -7633768, 4591857, 903017, 939524, 5423470, 9084393, 5287642, 4394826, 2476586,
--2927557, -1584843, 328028, -6068789, -4473746, -1675574, -1657321, 2717641, 7467875, 1896228,
-4830228, -1422171, 193810, 1889249, 71941, 1541356, 5760088, -22425634, 6215355, -3121904,
--2236067, 13221520, -2502355, -2319819, 1228361, 11832635, -3156801, 6878927, -5866926, -6897718,
--8809515, -11143293, 19202798, 9992778, 6927246, -6102612, -17707076, -21701396, 10361072, 7133404,
--7746511, 5111548, -5284958, 468688, 19108310, 8328479, -5498095, 10296110, -3554086, 5322002,
--6449967, 6446209, -14222247, -20855288, -8150774, -9325985, -1641751, 24314884, -19889994, 11424613,
-6524592, 4938676, -4444755, 9548786, 4217658, -19073412, -24276766, -8653822, -11106785, 27382028,
-19812684, -6675453, -12290586, -1052804, -12611098, -2683818, 19894826, 18452254, 10423349, -16335908,
-3459059, -12766790, 19945828, 9473087, -2178085, 40802, 6673843, -11848204, 2595234, 17625472,
-9526774, -15994995, 17287244, -8879845, 10306311, 27521076, 10454487, -6509023, -8218420, 23551990,
-2538863, -1457068, -10769630, 4134443, -5108864, 1498944, -3212636, -572304, -759136, -11756399,
-1421634, -1475321, -3407520, 5151814, -971200, -4163971, 688805, -2477659, 593242, -3071439,
--4633733, 4064650, -5130339, -3246459, 2342368, 6128919, -365609, 4330401, 3510062, -811749,
--78383, -5897527, 750009, 2007897, -5060545, 6718403, 3250753, -4076998, -2804614, -2838974,
--1331440, -6570763, 3841312, 6275484, 229781, -4879083, -2907156, 3280818, -1480153, 3160559,
-4352413, 364535, 1571421, 61740, -15569, -18072686, -7261179, 29464550, 13480829, 16852914,
-3885872, -25027312, 7343321, -20361366, 12896713, 36901824, 12926778, 23042500, -10806138, 6442988,
-10544145, -1415729, 2499671, -9839233, 2134599, 14332306, 475131, -4195646, -13504451, 6975564,
-5158793, -13752485, 6724308, -5405753, 10002979, 14409078, 15336254, 18539226, 1596654, -14900852,
-3657702, 8604430, -457951, 25348360, 1963874, -29770028, -18787798, 8092256, -7792682, -35081292,
-970126, 14532559, 5180268, 1260036, -3457449, 18028126, -14689325, -18146236, -3740380, -6687801,
--17668422, -1261647, 978716, -10418517, -15254113, -9461813, 444529, 1866700, -21905406, 6154152,
--9303973, 4954245, 24656870, -3709241, -8966281, 17083770, -3316252, 14172318, -14002667, 9043591,
-319975, -16173236, -18009334, 31670016, 2820720, 4011500, 1224066, -275415, 31768262, 25885232,
-7987566, -2723009, 12279848, -6470905, 3999688, 7180649, -1676648, 9534827, 3945464, 2553895,
--14896020, 8374113, 4373888, -1138703, 1037772, -5265630, 3917547, 10991895, -2161442, -3997004,
--6568079, -7178501, 6517076, 7700340, 147103, -294205, -6475200, -6973417, 900333, -9872519,
-1068910, -3508988, 9714679, 3226057, 145492, -6645388, -11317776, -2851858, -5639292, -7773891,
-4000762, 4100083, 8291435, 3042984, 978716, 9425843, -1443109, 25322054, 3419868, -34316788,
--15446313, 21547314, -30687004, 17681844, -29036126, 2535641, -4520990, -42033772, -5424544, 19164680,
-38973072, 12542378, -5512054, 9603547, -14769319, -4818417, -33757908, -1706176, -22891638, -3133179,
--4920422, -15721728, -16761110, -5419175, 9812390, -15097884, 10644003, 19588808, -19885162, 7442105,
-6559489, 3628711, -21175800, -3050501, -123480, -22086870, 5905580, 28591598, -2065342, -41008884,
-14683956, -24685862, -63466196, 18132278, -26201984, -32469952, 1817845, -14751065, 4610111, 11452530,
--6192806, 16954920, -13921600, 14840186, -11479374, -28216324, 225486, 20577726, 19565724, -36727340,
-5488432, -4188130, -27464706, -7124277, -6773701, 48110076, 23940148, 28322088, 12829604, 12455405,
-29657822, 42805792, -9689983, -19918448, -21982716, 4112431, -27321360, -8160438, 14165876, 23245974,
-3238942, 2344515, 19966766, -4363150, -11331197, -15149960, 12021077, 13907104, 13390634, 3396246,
-15357729, 6645925, -9453760, -1823214, -9163313, 14297946, 2230162, -1363652, -15770046, 5050882,
-12557411, 1665374, 184684, 12600360, -9890773, -6288906, 6750078, 984621, -5034239, -9176198,
--3104188, 14788109, -788127, -31790274, -3075197, -492848, -7453916, -5952825, -8585640, -4888210,
-6876780, 6568079, 3598646, 2534568, -5408438, -628139, -6645925, 55730420, 60240136, -35342748,
--14003741, 26911192, -12198781, 10869488, -16782584, 5043902, -17246442, -32266478, 43992276, 6445136,
-13805636, 11348377, 4104378, 5814312, 1302449, 8953396, 10909754, -31209380, -25789668, -22528714,
--21340082, -15919833, -10095858, -8293582, -16793322, -9444633, -14242648, 16194711, 12227772, 6258841,
--7877507, 3332895, -33121178, -16558710, 8931384, -29992830, -2845416, 14682883, 25868588, 3860639,
-4949413, -11038603, -19487340, -22826140, 18297634, -2426120, 18108656, -64107756, 3908420, -7397008,
-7282117, 39302708, 4707284, 6614787, 4308926, -11426760, -13341779, 427886, -2740189, -35959076,
-7592966, -13145284, 32172526, 2224256, -35558036, -48127792, -30106110, -6016176, -34013992, -33076080,
--20740398, 23444616, -6238977, -22758494, -30971546, 25789668, -3510062, 15287399, -17527224, 9405442,
-25141128, -16777752, -24651502, -10194642, -12850005, 26586384, 5340255, -11571716, 10190884, 7839926,
-22810572, 14381698, 6436009, -20444582, -20726438, -4440996, 2087891, -5316096, 3376381, 14262513,
--3441880, -1152125, -10721849, -7563438, -6019397, -10758356, -2410551, 4465692, 6134824, 33549600,
-1835025, -8382166, -3085934, 4503273, 10042170, -594853, 16136192, 6962679, 37832220, 5933498,
--786516, 1391033, 6489696, 1879585, -1802813, -10962367, -16832514, 62400508, -36721972, 23473070,
-44129716, -21665962, 5994701, 35179540, -45254460, 1464584, 4764730, 21551072, -50709068, 2473901,
-3134253, 16253767, -22271552, -54224, 8781598, -30004104, 4164508, -2592550, -5792837, 15993921,
--5152350, -4821101, 6662031, -4236449, -5286568, 15673409, -15208479, 4065724, -6403260, 3739306,
--9823664, -5673652, -11927661, -192200, 2050847, 30991410, 10201621, 14872398, -3390877, -10201,
-23021024, -1351841, -9007083, 12662100, 9392557, -10848014, -30633318, 27504434, -30529702, 4583804,
-14351633, 18733574, -30043296, 31495532, 51034948, -28397786, -52266532, 69302520, 24443196, -34812320,
-15729244, -33530810, -41322416, -20912196, -7703024, -43380244, 34613680, -60317448, 17818746, 28182502,
--23953570, -80507552, 75587128, -13598403, -19697794, 50057844, -50485728, 25574382, 42925512, -13356275,
--11979738, 12938589, 14642617, -8533563, 5181341, 3966402, 13506598, -7198365, -5118528, 14823543,
--186294, 2954938, -1767916, 2393371, 12082280, 8562554, -1805497, -11410654, 17777944, 18882824,
--3810173, -17168594, -1910187, 7701413, 1639067, 11420318, -79457, 9919764, 4293357, 14787572,
-11197517, 12328704, -19254338, 4363150, -501974, 216359, -56371, -12241194, -20783346, 29647622,
--5007932, -28541132, 10035728, 6178311, 2797634, -5219459, -19429358, -15075872, 34979824, -22874996,
--18271864, -36584532, -16787954, 21935472, 17039210, -9671193, -12106976, 11741904, 29027000, -12305618,
-21922050, 26248692, -18438832, -2538326, 16057272, -4008278, -537, -5151814, 1470489, -26561152,
-7385197, -5792301, 972273, 6556805, -5302137, 5635534, -11011222, -22222698, -10516227, -38788388,
-4929012, 48318, -5748814, 7354058, 3765613, -2400887, -8816494, 15782931, 24774446, -25840134,
-38036768, -4142496, 5121749, 5646809, 33625836, 15552077, 24617142, -30688078, -7600482, -5636608,
-43814036, -40697500, -13911399, 20118164, -1430761, -47016472, 3235184, -9577777, -8028368, 21689048,
-23638426, 1813550, -17678622, 38270844, -16022912, 63719060, 871878, -29329794, -9127, -4959077,
--33339684, 64020784, 12860743, -9359807, -75572632, -37613176, 21323438, -27660664, -25024090, 29773250,
--110795120, 2964601, 21859236, 16205448, -8944806, 31338228, -19050864, -2299955, 163746, 16407312,
--4595078, 3492345, 22100828, -1365263, -5555004, -6812892, -7932268, -173409, 2488934, -1293859,
--3333432, 14448270, -19973208, -4304094, 2384781, 3512747, -11964168, -20069846, -5148055, -6037114,
--2894808, -1508607, 3922379, -22284438, 1726577, 17216376, -10616622, 13205951, 9984725, -9613211,
-606664, -6991133, 2830920, 4967130, -10479183, 29603062, -14297946, -13012140, -17047262, -15463493,
--7722888, 13899051, 18979998, 11448235, 47673600, -9571335, 10555956, -4927401, -25082072, 12076374,
--16097537, -9233643, 9587978, 21185464, -23011898, 24459302, 2546379, -1598802, 50272592, -10623065,
--5919002, 37553584, -24533926, 33130840, 14156749, -8296803, 13064217, 13743895, 30954366, 32119376,
-9150965, -26744224, 54912232, -55746528, 1583232, 50013820, -27403502, 10781442, -6259915, -6911140,
--58653148, 39257612, 10212895, 17210470, 18321256, -12519293, -29327648, -22245246, -17973902, 2367064,
-55206436, -26844, 43247636, -14880451, -33742336, 1431298, 12257300, -27917288, 44395468, 17742510,
-21691732, 43670152, 28307056, -47604880, 17755932, -68102072, -83837224, 1314797, 70164736, 43707196,
-5465346, -50248432, -178121424, -33159296, 54786064, 62402652, 88866096, -4987531, -113190640, -64191508,
--59064392, 89855544, 68834904, -12940736, -45348948, -26896158, -55100136, -7493108, 70536248, -7354058,
-16355772, 11316702, -11784317, -26124138, 38368016, -16149614, 21330418, 15255187, -1633161, -36316096,
-48924508, -19881940, -9429064, 13684303, 12583180, -27105538, 294742, -8869107, -10166724, 2836826,
--1090922, 19102940, -35236448, 18044232, -42374684, -7246147, -7159174, 49661096, 1389959, 13050795,
--30758408, 15442555, -11616813, 21604222, 26476862, -13448079, -30566208, 10376641, 7842074, 25085294,
-21161840, -5706401, -8346195, -4319664, 17398912, 2731062, 17534204, 7287486, -43545600, 36702108,
--27358942, -4665945, -17697412, 17106318, -19891068, -762894, -2046552, -5321465, 4139812, 18850074,
--19769734, 8815420, 1593970, -4486094, 311385, 13332115, -16717086, -4472672, -2427730, 27584428,
--27796492, 7494718, -12173548, 18324478, -20295868, -5653251, 6975027, -3805341, 3862249, -13007308,
--2321430, 12017855, -3610457, 4729833, 3764539, 2629594, 14854681, -13622563, 9313637, 10869488,
-13253195, -1708860, -30802432, 4101694, 3638911, 12700218, 11431055, -2078227, 3046206, -5020280,
--14024679, -2214056, 6386080, -2466385, 18664854, -15047955, -5076652, -30197378, 9030169, 3464965,
--4835597, 6972343, 5878737, -249645, -15742129, 5080947, 15273977, -2790655, -2295660, 6223408,
--6251325, 11650099, -7131257, 2148558, -14477261, 7024419, 2646774, -2079301, -4023311, 8557185,
--4076998, -5832029, -8776229, 9298067, -459562, -4330938, -2040110, 9262634, -3673808, 4226248,
--5111548, -2780991, -579821, 564788, -206695, -4725001, 427349, 403190, -4307316, 4531728,
--4098473, 12063489, 1743220, 1845762, -16481937, 4883915, -468688, -6246493, 7259569, 14136348,
--10194642, -1973001, -540092, -6930467, 10819023, -1523640, 1399623, -6933151, 3613141, -1231582,
-1166621, -4300336, 4214437, -4287988, -24865176, 60288456, 16434692, 14898168, -7972533, -19297824,
--18568218, 5274220, 11705396, 1850057, -687732, -61203, -8807367, -1598802, 4233227, -2330557,
-1822677, -938450, -8823473, -454730, 4369593, 6891275, -6141803, 1696512, 4410932, -8787503,
-14430553, -8756365, -7647190, -7589207, 1970853, 4227322, 6694244, -7300371, 9339943, -13451838,
-8916889, 7963406, -5929739, -602906, -432181, -1537598, 6948184, -7475391, 2178622, -2382096,
--9689446, 13734232, -7672422, -247497, -5686000, -1763621, 9560597, -12475269, 5077188, 3476239,
--5462125, 4602595, -10662793, 3106335, 4424890, -7900593, 181999, 4268661, -7330436, 7366943,
--10116259, 2821794, 10347650, -15143518, 4352413, -5775658, 1035624, 5973226, -4538170, -2301566,
-1060320, 1315871, -917512, 4275640, -3249680, -2775086, 2065879, -2479270, 1350230, -943819,
-1778653, 1698660, -2460480, 1245541, -476741, 2221035, -2033130, -550830, 1473174, 65498,
--1181116, -3506841, 2218351, 2354179, -540092, -2419677, 2311229, -103616, -1107565, 2409477,
--5032628, -1004486, 2825015, -3604551, 5251135, -3213173, 233002, 8750459, -2554969, 6307697,
--3592203, -335007, 6932077, -4855461, -1849520, 9045201, -46580532, -109298864, 30946314, 107009648,
-73595872, 116361936, -64772400, -68946576, -94017904, -108833936, 2345052, 83985400, 86769080, 90589984,
-17790828, -29925184, -59389196, -85243288, -72248864, 5636608, 56138980, 66588636, 59915332, 14341970,
--16546362, -10331544, -46770048, -52313776, -22064858, -1418413, 20133732, 44126492, 21559126, 16010027,
-22106196, -11028402, -26233660, -4290673, -41945188, -19674708, 469225, 6664716, 31980864, 37235220,
-3310883, -5636071, -3490735, -27469538, -7437273, -381178, -5710159, 9514963, 18402862, -3919695,
--1453310, -7217693, -11481521, 2359011, 1140314, -1251446, 20763482, 14055280, 5196911, -526670,
--19572166, -28302760, -22379464, 1618129, 21070036, 18087182, 23737748, 3230352, 620623, 5399848,
--29453276, -16764331, -13848585, -2516851, 22604950, 5113159, 7585449, 21088290, -12167642, -17702782,
--4119411, -3020973, 6539088, 7603703, 2379412, 4246112, 1860258, -10866267, -11260331, -2744484,
--2147, 8100845, 11720966, 3848291, -1654636, -2542084, -3333968, 2939368, -3287798, -13817447,
--2168422, 3262028, 6405944, 13765370, 3352759, -2849711, -6612102, -11311870, -2474438, 1145146,
-3689914, 6477885, 8087961, 6374805, -3264175, -9800578, -10334228, -9014063, -1032940, 4493610,
-4971425, 13299366, 13650480, 6658810, -2946348, -16777216, -17749490, -8223252, -6220724, 6276021,
-16569984, 12283070, 5309654, 72478, -1319092, -2157684, -5069135, -8332237, -8016020, -3419331,
-1175747, 3473555, 5557151, 8075613, 7699803, 2952790, -2989834, -6476811, -7013145, -5205501,
--1972464, 1068373, 2479270, 2449742, 2974802, 3425237, 2632815, 74088, -2011655, -3477313,
--2837900, -1035624, 598074, 1379758, 238371, -153545, 243739, 357556, 1023813, 1087701,
--36507, -1146756, -477815, 893353, 228707, -1025960, -842350, -139050, -695248, -1144072,
--183073, 2070711, 2803540, 870805, -689342, -1047972, -746251, -474057, -807454, -1125818,
--443455, 791348, 1271847, 716723, 583042, 700080, 132070, -448824, -947577, -966905,
--679679, -226560, 466004, 782758, 572841, 466004, 233539, -126165, -473520, -655519,
--499290, 16106, 340376, 379568, 280784, 84289, -178241, -394063, -279173, 42413,
-195421, 209380, 202400, 88584, -103079, -182536, -114354, -53687, -13959, 30065,
-41339, 28991, 13422, -5369, -20938, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--4407710,
--2930242, 1226213, -1134408, -1394791, -2151242, 518080, 4252555, -1371705, 9127, 431644,
-7286949, -147103, 1388348, -3003256, -2093797, -747861, -1973001, -2112050, -1990181, -1347546,
--1891933, -2486786, 2080375, 3466039, -1915555, 527207, 130460, -3935264, 100395, -87510,
--2804077, 5268851, -2704219, 2996277, 1130113, -807454, -3036005, -2792266, 2697240, -1408749,
--1034550, -4160750, -1074816, -384400, -1978369, 5558762, -1228898, -346819, 2306934, -402653,
--4646618, -2376191, -4099010, -2738579, 6317897, -1776506, 7027640, -25233, -310311, -1273458,
-801548, 300648, -4209068, -4460861, 3231963, 375810, 2190433, -293668, 2553895, 1586454,
--4081830, -20401, 1329292, 2196339, -29528, 1855426, 3342022, -4479114, 1159641, 1161789,
--2270964, 8053, 994822, 3229279, 2094333, -2234994, -706522, -112206, 725850, 1034550,
-750546, 853625, -619549, 449898, -1251983, -770410, -49929, 1652489, 688805, -35433,
--151398, -1097901, 617938, -70867, -415538, -79994, 544924, 261456, 380105, 1073205,
--390305, 481573, 1231582, 9575630, -804770, -1217086, -2520072, -5318780, -6548752, -5996848,
-609349, 5242545, 1801202, 7016903, 2377265, -3263638, 802085, -8471823, -7182259, 3257733,
--2557653, 4611721, -490163, -3795677, -1916629, 9212168, 2015950, 3862786, -231928, 2944737,
--1436130, -1194538, 1781338, -1333051, -4101694, -354335, 1428077, -527744, -296890, 5839008,
-3593277, -6393596, 91268, -4076461, 6624987, 3892851, 225486, -2428804, -2493229, 3017215,
-1660542, 4927401, -4682051, 7854959, 9652939, -2730526, 9403294, -69793, 4902705, 3024194,
--1802813, 1582696, 7526394, -943282, -5169530, 4323959, 1359894, -113280, -642098, -957241,
-270583, 4366908, -2896419, 1549946, 1132261, 2284923, -3721589, 4112968, 911607, -425739,
-1264868, 549219, 350577, -235149, 887985, 2392834, -1784022, 929860, 595390, 972273,
--1633698, 52613, -2588255, 380641, 1133871, -1524177, -992137, 275952, 642635, 762894,
-172336, 689342, -59056, -48855, 1484448, -208306, 329102, -8319889, -6500433, 2073932,
--3670587, 2658585, -4592931, -6533182, -6037651, 868657, -4504347, 4168266, 3060701, -5793374,
--1174674, 2393371, 578747, 2938295, -1692217, 3039763, 3735548, -5137855, 1675574, 1727651,
--4125316, 2465848, 449361, -4865124, 3655554, 3533148, -1717987, 3858491, 571768, 3155190,
-2851322, 1213328, -1818919, -426276, -5846524, -1737314, -2895882, 3121904, 3274376, 1316408,
--9380745, 1829119, 3981435, -2091112, 6629819, -5370320, -7151121, 581431, -2108829, 2328946,
--5101348, 9372156, -473520, -3087545, 931471, 153545, 5332202, -265751, -3085397, -168577,
--2090575, -2830920, -3618510, 1746978, -6553047, 712965, 252866, 1967632, 4399657, 1483374,
-3133716, 4876399, -3297461, -543850, 1090385, -4097936, 2836289, -1370095, 2418067, 1962800,
--1275068, -937377, 3553549, -1109712, -3228742, 499827, -339302, -79457, -1742146, 2624762,
--1990181, 1024350, 968515, 1359357, -514322, -494995, 156229, -949725, 386547, -636729,
-59593, -378494, -978716, 1309428, -501437, 321586, -180389, 124554, 10201, 273267,
--1670205, -19943144, -286152, -2399276, 14120779, 348429, 891206, 3042984, -1921998, 7130720,
-1790465, -7545721, -4037806, -8859981, 1620276, -588411, -3014530, -2540473, -3219615, -2044404,
-10995116, -5007932, -2449742, -2822867, -8308078, -326418, -2010582, 2879239, 4182225, -1327145,
--16643, 2467459, -2520072, -671089, -1050120, -2996814, 3386582, 6775848, -769336, -1091459,
-5375689, -7036767, 4625680, -5613523, -11333882, -7183333, -11287711, -1700270, -6418829, -4314295,
-1233193, 4545686, 2334852, 3256659, -1628866, 3944928, -4769561, -1058710, 4150549, 11811,
-5747203, -2350958, 1803886, -3968013, -2972654, 2994666, -6874095, 1886564, 5248987, -6716255,
-757525, -1755031, -3069291, -4394289, -3927211, -1291175, -1686848, 1102196, 4922033, -2308545,
-1597728, -4027069, -4264903, -3373697, 1736777, 2352032, 700080, -1032403, -1175747, -1783485,
-1098975, -1506460, -1270237, -585726, -1170916, -121333, 341450, -2164664, -413391, -224412,
--1568200, -393526, -642635, 47245, -179852, -2972654, 479963, 1307281, -460098, -1146756,
--8590, 1908576, 1081795, -692027, -2003602, 1187559, -144418, -657667, 12809203, 95026,
--7132867, -6852084, -2345589, -4993973, -1923609, -3751654, 984084, 632971, -5642514, -3308199,
--6198712, 11773042, 4989679, 1101122, -664109, 6393059, -9514426, -132070, -200790, -5994701,
--8007430, 7187091, 144955, 5134097, -8033737, -3493419, -2800319, 2812667, -288300, 3453691,
--5543729, 1697049, 2265595, -5974300, -5773510, -5195300, 1245004, -1695438, -1618666, 5091147,
--1489280, 585726, 89121, -975494, -5731634, -3466039, -663572, -8580271, -5628018, -4507568,
-2391223, 1675037, 3436511, -822486, 1501091, -68719, -885300, 4033511, -3113851, 7005629,
-973884, 2141578, -924492, -2274185, 2771328, 2188286, 5505075, -1633161, 856846, 3395709,
--1995012, 99321, -7286412, 3461207, -5611375, 3583077, -4150012, -3997541, -7858180, -1498407,
-1981591, 894427, -1331977, 1864016, 784905, 3622805, 576063, -1054415, 3131568, 1752884,
--2806224, 721555, -2284386, 2506114, -1009317, 455803, -635655, -245887, -2018635, -35433,
-98784, 418759, -1191317, 977105, -1701344, 703838, -324807, -800475, -1512365, 429497,
--1023276, 2158221, 575526, -522912, -952409, -813359, 1620813, 1140314, 1547262, 201863,
-146566, 862215, -1800128, 15177878, 14371497, 10742787, -3550864, 3974455, 5467494, 3233574,
-3112778, -5251135, -4575214, -6892886, 6250788, -6464463, -743029, -4687957, 8273181, -9056475,
--6745246, -3340411, -1413581, -4964446, -7487739, 2204929, 452045, 492848, -9091372, -4990215,
-2443300, 1966021, 2650532, -2432025, -3580929, 335007, 2803540, 3560528, -2522757, 3387656,
--4803921, -1245004, -11834246, 4399657, 1481227, -2005213, -2203318, -8725226, -3956739, 1142998,
--2078227, -12272332, 6690486, 2777770, 31139, -3289945, -2539400, -5175436, 1635309, -1817308,
-3589519, -745177, -1728188, -6972343, -1314797, -675921, -3819300, 7712688, -5538897, 127238,
-4600447, -1896228, -5994164, -3369939, 5221070, 7533910, 3748970, -557272, -190052, 3992709,
--8071318, 3316252, -826781, -380641, 406948, 1758789, -435939, -326418, 435939, -1575179,
--4864051, -1312649, -1467805, 1499481, 1071058, 572841, -1868311, -989453, -2162516, -2692945,
--646393, -98784, 3255585, 309238, 465467, 401579, -1101122, -653372, 1511292, -1696512,
--239981, 581968, 954557, -2027761, 48855, -181999, 1215476, -1459215, -324270, -862215,
--1391569, -3118683, -1408212, -156766, -1333051, -3758, 182536, -157840, -1698123, -688269,
-18285286, 6129992, -2680060, -2138357, 6415071, -12362526, -2334852, 10004589, 5009543, -6979322,
--163746, -4736275, 1923609, 7694971, 18894634, 6238977, 14714021, -5217849, -1104344, -14327474,
-4852240, -4180077, 4022774, -6274947, -340913, 606127, -2244657, 5144297, -2315524, 2457795,
-6318971, -4847945, 2844879, 8087424, -2215666, 2707440, -2684, 3253438, 4415764, 4554813,
--24318642, 8892193, -2822331, -11377905, -2002529, 6956237, 2113124, -8787503, 4730370, 6937446,
--14329085, 1156420, -4055523, 8429947, 1908576, 6965900, -1715839, -5000416, -10068477, 625992,
--6096706, 18988050, 3490198, -3106872, 6308233, 809064, 6103149, -14919643, -1984275, 2318746,
-4609574, 1114007, -7005092, -1085553, 2532957, 6661495, 5587753, -4617090, 104153, 6556268,
--306016, 3098282, -2301029, -1103807, 4561792, 468151, -381178, -602369, 206158, 2272575,
--2189897, -932008, -302258, 1774895, 1666984, -192737, -631360, 4552129, -1468342, -741956,
--2414309, 350040, 1195612, -1149978, 51540, 1430224, 1812476, -1571421, -769873, -2634963,
-164283, 2164127, -1051730, 441845, 942208, 1148904, 3606162, 520228, 1745904, -56371,
--1622961, 2436857, 542240, -21708376, -23809152, -8151848, -1858647, 437550, 5057861, -10167261,
-3207267, 11988327, -6878927, 6382322, 8297340, -5780489, 176631, -2814277, 10147397, 14159970,
--6784438, -7989176, 7116761, 688805, -6800007, 3223373, 110595, 1780264, 2021319, -3628174,
--2651069, -15121506, -781684, -4319127, -352187, -439697, 10281078, 3062849, -18467822, 319975,
-8898098, -10086731, 2653753, 10872710, -2394981, 3835943, 213675, -2835215, -7023346, 13976897,
-11742441, -8919573, 4670777, -3306588, -471910, 4363150, -3109556, 3663607, -5538361, -610422,
-11785390, -3330210, 2485176, 5592585, -4039417, -9672266, -426812, 3353296, 1710471, -4634270,
-602906, 2639258, 4181688, 8652748, 5324149, 9519795, 5002027, 1864016, 4399121, -1527935,
-8544837, -248571, -6781217, -9074729, 1101122, 2990908, -1613297, 6844568, -3539053, -3641596,
-2685965, -820876, 707596, 384400, -4234301, -549219, -2561411, 3136937, 1363652, 2531346,
-4833449, 649077, -1748589, -7005629, -571768, 1681480, -1831804, -681826, 680215, -1521492,
-1473174, 1615982, 166430, -1611687, -1219234, 3502546, -523986, 1672890, 820339, 1171452,
--2511482, -2565169, -1585380, 658741, 1148367, 2124398, 1491964, 1071594, 921807, 2658048,
--722628, -2492692, -23599772, 25866440, -1731409, 16564615, 1064078, -9953050, -3133179, -5854578,
--7050189, -1104880, 251792, 11924440, -2134599, 8127689, -8603356, -654446, 1860795, 1716376,
-746251, 10339060, 10310606, 3639448, 1472100, -1532767, -2251100, -805843, -1951526, -17770964,
--6187438, 7897371, 5036386, -2157147, 700617, -8514236, 4019553, -10394895, 2042794, 16007343,
-1575716, 3322694, -13660143, 7002944, 6096706, 1536525, -9222905, -4148402, -4394826, 548682,
--8295193, 8104067, 9958419, 5927592, -1071594, 15000173, 5214627, 22042846, 8519068, -6133214,
-18354542, 232465, -6919729, 13223667, -2347200, 4242891, 8289824, -6284611, -5382668, 12219719,
-13174812, 7694434, -10972568, 3927748, -259846, -5178120, -9038222, 6411850, 11646341, 6951405,
-16980690, 2184528, -3926137, -3995930, -10707353, -4179540, 6394670, 846645, -2080912, 246961,
--6732361, -4784594, 779000, 1518808, -363998, 6920266, 5458904, 2319282, 86436, 1910724,
-3221226, 1568200, -3423626, -1493038, 826781, -916976, -1266479, 2823941, 133681, -1002338,
-2266669, 757525, 635118, 784368, -2303176, 395137, 6070400, -2966749, 3779034, 1668058,
-33286, -2946348, -3231963, -1741072, 1185411, 5758478, -12549358, 16703665, -4818417, -10961293,
-3675418, 7270306, -7277285, -3679713, -15371688, 6449431, -5637145, -1843615, -14093398, -6182606,
--4782446, -2398202, -6358699, 3338800, -2857764, -3457449, 3308199, 4672388, 8198019, 8059506,
--3489661, -2889976, -11368778, 4494147, 203474, 7495792, 2036888, 2024003, -2592550, 3013457,
--7119982, -5990943, 3318399, 1726577, 3367254, -13829795, 4609574, 9086003, -60130, -12176769,
--12772159, -9904195, -29412472, 4177930, -3420942, 14244259, -6998649, 11839077, 3751117, 830002,
-15189152, 2345589, -1803886, 10972031, 4006668, -14903000, -7468948, 1809255, -4811974, -8448201,
--5206037, 19270444, 8797704, -9032853, -1157494, -5062156, -2547453, 2840047, 13530221, 274341,
--3712999, 18009872, -6511171, -16307454, -15655156, -18458158, -3355980, 1444183, -558346, -3222836,
--2339147, -7874286, -1634772, 2345052, -2535641, -2308008, 1475321, 1546188, -11713450, -4745402,
--9195525, 469225, -3180423, -2914135, -4971962, -1489280, 1201517, 7096360, -32212, 8695161,
-4151623, 6397354, 562641, 3034395, -3085397, 5838471, -156229, -4130148, -6352794, 3631932,
-440234, 2030446, -1762547, 1186485, -2100776, 2051384, -849330, 2423435, -646929, -971200,
-1380832, -277025, 7275138, -12087112, -3051038, -3249143, -1599339, -853088, 32056026, 5239323,
-11708081, -5702643, 10222022, 20656108, -17733920, 26838714, 15896748, -7194070, 220117, 1617592,
--9676024, -16204375, 1092532, -9399536, -14471892, -6487548, 1261110, 13422, -1799591, -6505802,
--1110786, -6334540, -465467, -7321309, -558883, 5000953, -11381663, 6229850, 9536438, -7453379,
--6947110, 4927938, 3702262, -656056, 28770912, 2534031, 19168976, -13808320, -1369021, -16740709,
--12316356, 2953864, -12353937, -16922172, -11314018, -12853763, -2836826, -3425773, -14304925, -15511274,
-20201378, 3175055, 1235340, -2745021, 10445360, 5818607, 12606266, -1255204, 11912092, -6684043,
-2681670, -22363358, 18227842, 8834748, 1391033, -12281459, -972273, 5547487, 1116692, 2138894,
-8977019, 12592307, -9803263, -12534862, -8305393, -1959579, -263067, 1374926, -7421167, 843961,
-2052458, 5191542, 6684580, -849330, -4230006, 7032472, 3408057, -5242545, -427349, 2543695,
--3204046, -5539971, 931471, -1876364, -1899449, -164819, -2506650, 6448357, -6875706, 3744675,
--273804, 7132330, -7526930, -1802276, 1166084, -1884954, -2924873, -1192390, -5992553, -6483790,
--1321239, 685047, 1818382, 2357937, -4503810, 4469451, 3274376, -2651606, 3885335, -783295,
-2183991, 198642, 2157684, -1801202, -1527398, 614180, 1067836, 2618856, -442919, 3592740,
--1770063, -1241246, 537, -1301375, 2267206, 2306398, 15679315, -6322729, -5145908, 17498770,
--14630269, -11142219, -2691334, -8851391, -1371168, -17428440, 3972308, -10710038, 8311836, 1219771,
-2866891, 10049687, 2922188, 7109245, 9740986, 9256191, 7646653, 12948253, 1578401, 8819715,
-7903277, -9352291, 16326781, 4043712, 7572028, -8726837, 12750684, 5783711, 8966818, 2316598,
-3227131, -1591822, -11675869, 3040300, 6670084, 7871602, 8578123, 1893544, -14208826, -8953933,
-10293963, 5636608, 2374580, -5357972, 7138773, -5122286, -14241575, 21032454, 12849468, 9424232,
--8028905, -3910568, -10598369, -33097018, -961536, -4566624, 4323959, -7682623, -8282845, -14558865,
-2629057, 4755066, 18602040, -14570140, 5981279, 340376, 8589935, -12817793, -15770046, -9563282,
-10267119, 3190624, 3246995, 5507222, -4290136, 1889249, 12030203, 4341675, 6120329, 7728257,
--2997350, -2699924, -4963372, 212064, 5294084, 6577743, 304406, 2782602, 1372779, 1148904,
-4984310, -2943126, -2546916, -4189204, -2343442, -4336307, -66035, -6638409, -2648921, -7020661,
--323733, -4175782, -1155346, -860604, -2393371, 2178622, -1700807, -9034464, -1286880, 3805341,
-4095788, 7693897, -1039382, -4343823, 2234457, -1620813, -6582038, 6309844, 5300527, 5164162,
-11772505, 7816304, -543850, 583579, -2516314, 3272228, 1048509, -27091580, 15087146, 16077673,
--8443906, 13667660, 4504347, -22891638, -4293894, 29402272, -4524211, -20046222, -3387119, -2189360,
--17462800, 11729019, 2198487, -8943196, 12654584, 8309151, 30327838, 17666274, 179852, 1971390,
-28595356, -7690676, 7016903, -12082280, -17282948, -5343476, -11835856, 2324651, -1137093, 5549098,
--1176821, -2345052, -5181341, 22502408, 811212, -18216030, -14530948, -3511136, -3985193, -908386,
-7144678, 20518670, 12993887, 4127464, -12903692, 15904264, 29258390, -6511708, 13133473, 12299713,
-35315904, 6513318, 6503118, 10509785, 14890115, 8158827, -12505871, -12006581, 7910793, -22082574,
--13430363, -15896211, 14555644, 12732431, 8790724, -3795141, 10657424, 22601192, -13312251, 17954574,
-17843442, -2680597, 17535814, -16988744, -7670812, -6080600, 37044092, -18456548, 18067316, 11238319,
-6484327, 4984310, -16790638, -1865626, -13261248, 13721884, 12984760, -433792, 713501, -6889128,
-9642738, -4099546, 729608, 3517578, 3801583, -243739, 5785858, -4381404, -2500208, -1870458,
--4407174, 1678259, 3392487, -3284576, 1413581, 4090956, 7314330, 963146, -7227356, 2761127,
--7813083, 1161252, 6567005, 4256850, 6961068, -1436667, 11378979, -4792110, 8334384, -2432562,
--3039226, -1707250, 228170, 9205726, -7074885, 4333085, -457951, 4395899, -5811091, 1297080,
-2000918, -2697240, 12066174, -6914361, 5221070, 5700496, 20216948, 36251136, 3677566, -3995393,
-3623342, -2172717, -6247567, 875100, 3565897, -9111236, -12115566, 3830037, -6411850, -3556770,
-9043054, -651761, 18004502, -9790915, 17644262, 8616241, 1505386, -10565083, 3122978, 17683990,
-4910222, -9233106, 3269007, -2316598, 242666, 10332081, -14790257, -7833484, 15948824, 200253,
--4271882, 13939316, -963683, 4847945, 2930242, -13604309, -24834038, -5325760, 8247411, 15623480,
-3128884, -12195560, 15444702, -5260261, 31614180, -16252693, 21179558, -12639015, 7397545, 18313204,
--27481348, -28198608, -475668, -8039642, 6977175, 8886287, 1004486, -4211753, -16919486, 11142756,
--2700461, 19893752, 8728447, 18524194, 4777078, 10762114, -4829691, 14217415, 4857071, -8585103,
-1436130, -288837, -41419592, -1258962, 6931541, 9910637, 17083232, 14711874, -5114769, 1210107,
--3368328, 2731062, -327491, -4595615, -11221676, 4716948, -6685654, 14244796, 1352915, 2771865,
-6674916, 4141959, -4821101, 4113505, 9996536, 9065065, -3427921, -1633161, 1137630, -2177549,
--1843615, -6427419, -1522029, -13483513, -2239289, 4666482, -11635066, 7857643, -8876624, -6860137,
-1647657, -6971806, 6769406, 2831457, -3073586, 4728759, -932008, -703838, 2597918, 9997073,
--7300908, 1627256, 1076426, 4471061, 2778844, 2094870, -4131759, 23893976, 30876520, -6633577,
--1109175, 10950019, 40814000, 1231045, -24016384, -9549323, 4977330, 4728222, -7543037, 7882339,
--5428839, 12720083, -20362440, 1173063, 12799003, -8432095, -9149354, 1879585, -20131586, -6120329,
--6514392, -32052804, -27091044, -15628312, 11915850, 14059039, -2385318, -22774600, 2636036, 926102,
--751619, 4702453, -11435350, 27592480, -7788923, 3619584, 30493730, -26525182, 12899397, 4630512,
--9246528, 11198053, -7153805, -21476984, 492848, 18824842, -8321499, -13439490, 7826504, 2658048,
-17861158, 276489, -27435714, 2343442, -16207596, 27214524, -9787157, 4243428, 6684580, 3400004,
--3860639, -17414482, 7362111, 18592376, 5377299, 19180788, -27834072, -15167140, -4573067, -79457,
-3015067, -21322366, 19262928, -2468533, -20478404, -6655589, 12968117, 12243341, -11340324, -15569256,
-15567109, -12351789, -7856032, -93416, -1926830, -1513976, -1017370, -4381404, -871878, 8020852,
--1777580, 7392176, -8228621, 5924371, 7490423, -1788317, 4042101, 1453310, -1526324, 337155,
-1013075, 13612362, 694711, -2306398, 1134945, 3229816, -6681359, 2659122, -8543227, -405874,
-9873056, -3267396, -7784092, -2587718, 4423280, 444529, 319975, 6137509, 459025, -7479686,
--4058744, 14519674, 10362682, -3089155, -615791, -146029, -21130702, 31061204, 885300, -53202296,
-21311090, -7313256, 4146254, 5427765, 7143068, 13059385, 4760971, -9633075, -2326799, 13151727,
-8892730, -10564546, -565325, -8382166, -4345970, -26132728, -3335042, 12576201, 15618649, 3510062,
--6199249, 17301202, -17823578, 19713364, -11359115, -6381785, 2349347, -6118718, 5255966, -15728707,
--21233244, -23763518, -7606387, 12303471, -4752382, 118648, 14471355, 4017405, 2528662, -455803,
-491237, -5006322, 194347, 15595026, 9601399, 16457778, 13960254, 16510391, 11236708, -9819906,
--6261526, 4054449, -1052267, -18977312, 12759274, -3436511, -17927730, 22502408, -254477, 3655554,
--626528, -8188355, -2702071, 9448391, 13690745, 11385421, 348966, 6972343, -22963042, -3264712,
--8183524, 12492449, 4313758, -6403796, -7304666, 28913182, -8815420, -9910100, -3133179, 4659503,
--7159711, -19059454, -1075352, -3269007, -10296647, 17854180, 3644280, 6717866, -5488432, -961536,
-4159676, 1067299, 5253282, 5659157, -1855426, 3467649, -3438121, 3930432, 1500554, -3165391,
--2390686, 2908230, 4110821, 1109175, -3629247, -3021510, -3262028, -2419140, 88584, 2033130,
--2953327, -3593814, 858457, -294205, -635118, 3089692, -1442572, 4900558, 1502165, 14375792,
--1203665, -1818382, -3156801, 1750736, 89657, -6059662, -7962333, 72469520, -71069360, -3511673,
--77274512, -11915313, -29359860, -3527242, 18913426, -9533754, -21363168, 33789580, -9092446, -5825050,
-1149441, 10451266, -1175210, 28092308, 18592914, 11178726, -16525960, 1155346, -11267310, -11438035,
--7656853, 468688, -3511673, -3049427, -9327595, -2033667, 15519327, 1955821, 10276246, 10288057,
--807991, 13717589, 19937238, 1112933, -4070019, -10354629, -12409771, 5006858, 5450314, -10263898,
-16893180, -22274774, -22566832, 2525441, -7894687, 12108050, -20924006, 8966818, -40242232, -21417392,
--32216550, -2765959, -15901580, -1415729, -9706626, -12080669, -10530723, -940598, 2728378, -31457952,
-3587908, -6874632, 3611531, 161598, -14553497, -25591026, 17707076, -15394237, -2751464, 15859167,
--1606318, -4954782, 10482405, 13146895, -2710124, 13095892, 8567386, 15822123, 8720931, 16010027,
-7577933, -9472014, -2639794, -8342974, 381715, -6906845, 1479616, 5806796, 8195872, 8987756,
--3984656, 4182225, 2996277, 5897527, -1396938, -2237141, 3075734, 7066832, 930397, 1651415,
-7783555, 4002373, 8012262, -1133871, 369904, -818728, 3908420, 5555540, -1008780, -9212705,
-5055714, -1531156, 1963874, -2886755, 1281511, -2612951, -1364189, 491774, -7684770, 133144,
-10522670, -6570763, -6940131, 914828, 3591667, 3673271, 1241782, -7271917, 58631672, 29427506,
-14221174, -14234595, -7376070, -30670362, 6722698, 24515674, -4820027, -5890548, 40206800, -7261716,
--8966818, 19858318, 29431800, 5036923, 30019138, -7577933, 4356171, 17673790, 20013474, 31561568,
-25556666, -1420560, -11434277, 9433896, 11502996, 10817412, 13526999, 23580444, 11549167, 30007862,
--11697880, -882079, 8767102, 8081518, 25447144, 14725832, 27275190, -19775640, -6226092, 10808285,
--21246666, 17044040, 17370458, 16577500, 7068980, -21477520, -7843684, 40459664, 10409390, 27245126,
-22651658, 24773908, -5137318, 32866700, 51583096, 17675402, 4519380, 36107792, 24982214, -14044006,
--8619462, -17635672, -14056891, 15134928, 17677548, 1429150, -14963666, 198105, -13383118, -735513,
--5998459, 8618926, -31428960, -3702262, 3136937, -16025060, 11964705, 1999844, -9841918, 8267275,
--19792284, -12974559, -21923660, -7444789, -10590852, 7618198, 2382096, -10305774, 2281165, 14183056,
-4198331, -4809290, -8713952, -13637058, -5242545, 4356708, -19148574, -9045201, -1650878, 15249818,
-5142687, -6657736, 3204046, -10437844, -2835752, -3295851, -8551280, -5639292, 14368813, -3444564,
--1017370, -3634616, 3394635, 9061844, 6539625, 7746511, 19828790, -103079, 15988016, 618475,
-1650341, 9886478, 8588324, -13291313, -7611756, -1160715, 3101503, 1269163, 138513, -1452236,
-6278706, -18450106, 9327058, -22260816, 39296268, 55759948, 32500554, -14155138, -30470108, -11139535,
-27617714, -8026757, -22693534, 41603200, -28653874, 24900072, 14070313, -32446868, -13418552, -3286187,
--53692996, 2275796, 6261526, -25792890, 53061100, -18057654, 49284748, -36715528, 5546951, 2518462,
-36053028, 53149148, -4287451, 18157512, 25099252, -29134910, 19740206, -39491688, -10860899, 75533440,
--4167729, -20614770, -3996467, -41995652, 1899449, -13095355, 47230144, 18119394, 22027276, -7036767,
--12383464, -23279796, -21642878, 5669357, 3085397, 325881, 31471910, -7414188, 6066105, -32363652,
--16814796, 21985938, -48455284, -18903224, -14523432, -16356846, 45387604, 3539053, 49031884, 35349192,
-15680926, 19030464, -10907606, -25618406, 21996138, -34956200, -21451752, 43719544, 13265006, -25899726,
--43102144, -25845502, -30656940, 24954296, -26457536, 14041859, -19093278, -1379221, -16391206, 17805324,
-10268193, 1831267, -14215805, -2347200, -9802189, 3195993, -19353122, -13151190, -7263327, 4574140,
-10875931, -86436, -7864622, -10747082, -17987324, -12592307, 11487427, 15963320, -4894652, 11111080,
-21977348, 10805064, -20350628, -5682242, -7464653, 13198971, -12411382, -7868380, -2909304, 5069672,
--16324097, -21756156, -15682536, -4917738, 9084930, 34360, 2061047, -2790655, 12432857, 4223027,
--761283, -11124502, -3783329, -6764037, 8746701, -2146410, 2098092, 35140884, -58771260, 62159988,
--1738925, 4619774, -20148766, 50156628, 11641509, 32234266, 12073690, -21434034, 7068980, 17819820,
--30988726, 21369072, 203474, 14114336, -41306312, -3398393, 9904195, 37673304, -15975131, -31427350,
--1551020, 37465000, 19693498, -14583025, -32647658, -1797444, 27012124, 3361886, 1716376, 7341173,
-19592030, 49715320, -70536248, -11802570, 6626598, 38938712, 8590471, -21517786, -5450314, 14713484,
-35651988, -3812857, 1578401, -67676336, 19376208, 10353556, 18249316, -49156976, 43146704, 37093484,
-13886166, -22344030, -2401424, -24702504, 18175228, 31739808, 13256953, 14750528, -2924873, 24012626,
--35414152, 33250564, -10034117, -12125230, 39187280, 32203128, 1969779, -12440373, -32441498, 23476828,
-25793962, -69422776, -5599027, 39617852, 9810779, -631360, -24863566, -10847477, 67572720, -5375152,
--23243290, -3121368, -12574591, -15248745, 22414898, -19216758, 6781217, 10084583, 13651017, -9692667,
-1268626, -9838159, -11662984, -7910793, 10298258, 10205379, -10674604, -2301566, 5121749, -8603356,
-20415054, -19841676, 5069135, -3716221, -6422050, 7100118, 33864744, 2051384, 24159, -5616744,
--11971684, -116501, 18433462, 4231080, -878321, -3745748, -8705362, 15554224, -4064650, -1080721,
--9227737, 8855686, -1446867, -4320200, -52583820, 25236690, 4634807, 15960635, 19322520, 28213640,
-9839770, 8872329, -13859323, 14404247, 2446521, 33532420, -4146791, -10390600, 26332982, 20113868,
--4715337, 1470489, -11606612, 62277, 8185134, -2913062, -7021735, 14871324, -12305081, 1270237,
-20307142, -4726612, 11630235, -21220360, -4482335, 2502355, -8830453, -3630321, 2187212, 14669461,
--4014184, -25324200, 780610, 49613316, 10144713, -27336394, 7887708, -27865748, -19073950, -14524506,
--4052839, 31568546, -3646427, -25652766, 51322712, -55997784, 9286793, 56615724, 5847061, 39721468,
--30724048, -57285736, 18242336, 1688459, 45283988, 2139431, -25773562, 20834886, -5886253, -4986994,
--11040213, -2082522, -16083042, 7701950, 2086280, 11885248, -19600084, -17010754, -6784975, 19889994,
-25796648, -8912594, 13682692, -2348273, 21585432, 15088757, -27385248, 21529060, -5682242, 2962991,
--4708895, -8747775, -165893, -396211, 2891587, -2361158, 2236067, 1677722, 1498407, 2850248,
--9044127, 171799, 4976794, -7816841, -1009854, 4502200, -4844723, 5993090, 6929930, -10586021,
-12380780, 4735739, 12829067, -3174518, 5944772, 10023380, -19584514, -569083, 5989869, 11091216,
--6999723, -5535676, -6729677, -5217312, 11402064, 22564148, -9731859, -106081400, -243754432, -96599184,
--146715008, -214809568, 115480400, 31938450, 66448512, 305956288, 235827520, 137586064, 251857424, 187937568,
-32114544, 62139048, 51692616, -119334592, -102132176, -50017580, -182538800, -174536192, -66845796, -89669792,
--126631744, -52927420, -45485852, -128869960, -107575512, -8918500, -61281132, -104482056, -35891968, 33348810,
--75902808, 22875532, 112980192, -8585103, -16192564, 153461328, 122539712, -5336497, 179270320, 207756688,
-84367656, 195198752, 273861088, 163419744, 141948128, 328678272, 262294192, 197233488, 233786880, 310098240,
-110869752, 44022876, 129827736, -102349608, -293803136, -212952528, -324941664, -526171072, -471316832, -500182752,
--581717376, -592851008, -511226752, -445141696, -446453792, -313833248, -139023792, -94118304, -14260902, 152336048,
-279900864, 282594880, 350785536, 504700544, 441149504, 403304960, 557276864, 442954464, 250352576, 365381472,
-255838848, 99365680, 89894200, 118074560, 12171937, -37207840, 22928682, 3420405, -82732344, -44043280,
-7373922, -65840776, -122082832, -58566176, -83759912, -177770304, -112099184, -43255152, -132912056, -89288072,
-17914846, -42174432, -62072476, 30514668, -36720896, -146380544, -112213536, -179693920, -303886112, -286110336,
--274438208, -285029056, -250571616, -168308496, -131546256, -79125112, -15362024, 67011692, 118789672, 182319216,
-229953088, 285655584, 297182208, 315216224, 351171008, 333135904, 305451616, 288976128, 191427760, 67463736,
-6396280, -28631326, -81791208, -96422016, -84175456, -95040112, -106743360, -94031864, -94978904, -93069792,
--78594680, -76689328, -80470504, -77655696, -67998456, -56378424, -48183092, -31522912, -19556596, -3972308,
-2241973, 14318884, 21761526, 27354646, 28386512, 30036316, 29775934, 23423142, 13696114, 10580115,
-5338108, -1497333, -7163469, -9122511, -20160040, -26324928, -32513976, -43333000, -51040856, -47828220,
--46061912, -41101228, -30829276, -21849036, -16048145, -4029753, 8537858, 16728898, 25423522, 39543764,
-42771968, 42411728, 45886356, 50422916, 46664284, 48507360, 50929724, 48279728, 46437188, 46646028,
-41264436, 35532800, 31338228, 24085102, 13677860, 6203544, -2624225, -14336064, -26169236, -34802120,
--45135812, -51350092, -54061292, -53309136, -52699248, -48287244, -41787348, -35224100, -28522878, -19915764,
--14063334, -7572028, -2129767, 3038153, 7327751, 10848551, 13807246, 15938087, 15619185, 15316927,
-13914620, 12097849, 10292889, 9065602, 7478075, 6085969, 4820027, 4054449, 3210488, 2785823,
-2450279, 2230162, 1970853, 1804423, 1735167, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--8537321,
-5090610, -6489159, 817118, -2736968, -835908, 2556043, -4011500, -7315940, -1848983, 641024,
--4179540, -2405719, 3586298, -2092186, 1675037, -9168681, -760209, 6233072, 3339874, -10261214,
--3510599, -2680597, -2700998, 3486977, -1469953, -5339181, -3332895, -3813394, -3865471, 6786585,
-2148558, 4374961, -2795487, 5741835, 5240934, 3723200, -2028835, -4852776, -3787088, 413927,
-1003949, 7804493, 2798171, 1491964, -3637301, 855235, 372588, 899259, 3126199, 1836635,
--5255966, -4494684, -2288144, 2853469, 701690, -993748, -5619965, -1726577, 2259153, 2565169,
--2243584, -861678, 166967, 2714419, -544924, -2994666, 44560, 431107, -3819300, 8218957,
-558883, -5580773, 33823, -862215, 5319854, 420907, 3614752, 4927401, 1892470, -340913,
-281320, -1796907, -1124745, -1197222, 3176128, -1016834, -362388, -1421634, 1123671, 370441,
--564251, -137976, -775778, 155693, -76236, 625992, 680752, 1036698, 1330366, -5672578,
--5135707, 5773510, 5294084, -4325032, 3179350, 296890, 1628330, -14149233, 5442261, -2124398,
--9665824, -12602508, 319975, 9068287, 531502, 5870684, 202400, -11401528, -3942780, 1285269,
-3962644, -2029372, -988916, -4815732, 619549, -896038, 8025684, 4060355, 1694902, 1416266,
-2171106, 2765422, 7317551, 4416300, -6489159, -576599, 1493575, 1540283, -7714835, 2479270,
--2302103, -4899484, -1390496, -233539, 5258651, 1327682, -2956011, 5309654, 8308078, -1789928,
--3166465, 1984275, -606127, 4520453, 4627291, 3602941, -5572183, -4262218, 3979824, -1712081,
--1406065, -4294431, 453119, -6364605, 3764539, 3371549, 4457103, 1119376, 5181341, -5644661,
--3536906, 7262790, 373662, 2675765, 8601209, 3299072, 839666, -3495567, 5042829, 579284,
--2569464, 1416266, -6094559, 145492, -648540, 879395, 1627793, -722091, -2719788, -1514513,
--448287, 1298691, 1236414, 392453, -755914, 715649, 1713155, 275952, -574989, -555661,
-7516, 7188702, 636192, 2783676, -6051609, -5139465, 2942590, -1424319, -2213519, -2810519,
--2630131, 2185065, -7003481, -4013110, -8648990, -10387915, -1924145, 8650601, 5574868, -3490735,
--974958, -1198833, -2015413, -7480223, 5388037, -1875290, -1924682, 476205, 3520800, -1682554,
-309775, -255014, 5099737, -4713190, 5115306, 2798171, 6133214, -2088965, 4744328, 2115272,
--2940442, 4284767, -2907693, 2469069, 4545149, -3427921, 4773320, -2847563, -2308008, -716723,
--1419487, 2411624, -1397475, -3628174, 1454383, -3148748, 685584, 435402, 484794, 7211250,
-1393180, -1650341, 33286, -2947958, -4130148, 2137283, -1001264, 6884833, 7005092, 2851322,
--1955821, -1075889, -59593, -2756832, -3208341, 3545496, 5549098, 186831, -615254, 3427384,
-3678640, -473520, 1292248, 1193464, -2692408, 2551748, -498753, 3659312, -1822140, -690416,
--150861, -1510755, -179315, 2668249, -595390, 814433, 766115, -1871532, 574989, -336618,
--394063, 768799, 681289, -1194538, 1356673, -455803, -605590, 109522, -170725, -216896,
--1114544, -805306, 353798, 13716515, -5801427, 5624260, -6991133, -5879274, 29528, -1630477,
--1486596, 1912871, -2940979, 5932961, 5788006, 4959614, -1487132, -644782, -2581812, -6328635,
-990527, -3801046, -702227, 696322, -2119030, 3608846, 1365800, -431107, -10448045, -4359929,
--6584185, 249108, -4307316, -6621766, -2901787, -3658239, -4047470, 6595459, -5267778, 4649839,
-404801, -1868848, 2604898, 2238752, -4721780, -1292248, 99321, 5093831, -483184, -6960532,
--8831527, -9193377, 2393908, -3357591, 203474, -727460, 1331440, 3109556, 5112085, -3529390,
--1868848, 1683627, 1758789, 656056, 6410239, -3585224, 3964255, -7362111, 14432164, 1775432,
--1535988, 2806761, 1381906, 2760053, -4012036, -706522, 1095754, -444529, -863825, -7282654,
--2421825, -4949413, -1473711, -578747, -3569655, -3488587, 2592013, 3028489, 922344, 595927,
--333934, 2558727, 1503239, 2937758, -1472100, 259309, 89657, 2699387, -1083942, -158377,
--165893, 301185, -2138357, 526134, -1548336, 780610, 1075889, -511638, -1801202, 359704,
-551903, -555125, -622233, -1934346, 507343, -226560, -991064, 1221381, 1401233, -179315,
--413927, -6754373, 930934, 1198833, 401579, -1105954, -4059818, 2343442, 1870458, -6107981,
-7076496, -8924942, 10910291, -1123134, 3614752, 1564979, -264141, -1229971, 2213519, 10213432,
-11474542, -2259153, 2034741, -1440962, -1672353, 1472100, 2407866, 7839926, -1037772, 2336999,
--4030827, 4272419, 926639, 6168647, 2981781, 5774047, -8439074, 3488050, 3033321, -2704219,
--117575, 6272263, -1611, 438087, 1897839, 3792993, -1333587, -606127, 12183748, 5752035,
-1056562, 1052804, -2576444, 5484673, -7402376, -10872710, -13113072, -865973, 6860137, -272730,
-3409667, 9244380, 3656628, -1709934, -3293703, 4898947, -983011, 11902965, 5359046, 1711008,
-1654099, -6595459, 1370632, 4866198, -2527588, -7419019, 1275605, 2579665, -335544, -2621004,
--952946, 1184337, -2403034, 1315871, 1349157, 1181653, -486942, 1373853, -2355790, -2253247,
--730681, -1455994, 740345, -2262374, 1258962, 2081449, 1406065, 1552631, 1618129, 441308,
-1036161, -3095061, -2558727, -1023813, -1345399, -1651952, -332323, 940598, 557272, -182536,
-1891933, 954557, -147103, 2315524, 1483911, -80531, -16011101, 1646046, -1265942, 10876468,
--8249022, 4736812, -16945256, 6581501, -1649804, -8674760, -9511205, -6684043, 4990215, 3870839,
-12767864, 1631551, 4220342, 12199855, -2180770, -8998493, 1293859, -6951405, 1636919, 9931575,
-1817308, -2878702, -1233193, -1989107, 2901251, 3799436, -863825, 2514167, 5116917, -3294777,
-1596117, -6127845, -504659, -7650411, -1221381, 953483, -3623879, 5506685, 3783866, 4679904,
-9461813, 524523, 11457899, 8711804, 4224637, -6059125, 13146895, 5583995, 2287607, 11460046,
--1292785, 170188, 936840, 3742527, -2432562, -3463354, -7936026, -7749732, -6271726, -24696,
--4953171, 10036265, -6129455, 4095251, 6302865, -3649112, 303332, -3002719, -1720134, -10053445,
--11413876, 5109938, -2006824, -3924526, -3398930, 870805, 1313723, 666794, 2211908, -4086662,
-9299141, 549756, 2784213, -2017561, 500901, 2666101, -4559108, 1422171, 158377, 1459752,
-2096481, -124017, 1634772, 3070365, -7516, 803159, 2279554, 2415382, 3284039, -256087,
-552977, -1806571, -481573, 48855, -798864, -2509335, 160524, -811212, -1040993, 137976,
--972810, -1393180, 13328894, 486405, 140123, -1257352, -2630668, 2375654, 534187, -6835441,
--8750996, -11855183, -6221260, -12403329, -7892540, -4241280, -9181566, -5818070, -4028143, -4786741,
--12404939, 8468602, 5298916, 288300, 4454418, 2029909, -3462818, 15348066, 921271, -5340255,
--2815351, -10449655, -4508642, 11421929, 530428, -9635222, -9630927, 1371705, -9748502, 3087545,
-3381213, -7601019, 271120, 2338073, 508417, 11240466, 3346317, -5174899, 1108638, -6198712,
-5658620, 780610, 2488934, -13809394, 9473087, -4765266, 3928821, 289910, 1811939, 2232846,
-323733, -4043175, -348966, -5411122, -20938, -10894721, -92879, -11751031, 15418933, -2658585,
-9797357, -7260642, -3414499, -1584306, -7494718, -4198331, 6002217, -249108, -266288, 4442070,
-5767604, 897111, 9440875, 8169565, 11360725, 6036040, 2385854, 1356673, 5137855, 2729452,
-1684701, 2070711, 1134408, 2505577, -754304, 4115116, 687195, -302258, -911070, 3197066,
-1276142, 2265059, 1115081, -1555315, 1064615, 1239635, 1030792, -2540473, 4733054, 2536178,
--505732, -3684545, -442382, -587874, -2665564, 915365, 430570, 2676838, -2281165, -5076115,
--6799470, 20938, 5088463, -13105019, 45634, -5637145, -4502200, 9364639, -15122580, -14282377,
-3786014, 19159312, 540629, 1866700, 1520418, -2863133, 10515691, 10210211, 5921150, 2932389,
--2704219, -15484431, 9259413, 128312, -12394202, -3965866, 2937221, -579284, 155156, 1321776,
--2945811, -12205223, -639413, 550830, -2189360, -5070746, 3728569, 10678899, -13662828, 8581345,
--5090610, -2532957, 865436, 6819335, 22333830, -14361297, -3581466, 1464047, -1378685, -2588255,
-787053, -5475547, 1973001, -4940286, 15370614, 5317707, 2920578, 4277251, -3187403, -834834,
-8159901, -1224603, 3575024, -6693170, 11811697, 572841, -8274792, 16498580, -10430865, 7623567,
-2209224, 3785477, 12013560, -4718022, 5144834, -532039, 74625, 1492501, -749472, -8024610,
--4226248, -468688, -3517578, -1216550, -1893544, -4902169, -5009543, -3750580, 2412698, -4286378,
-2552284, -1108102, -124017, -3754338, -2549600, -2756295, 2292976, -5202816, 583042, 561030,
-3245922, 5044976, -1901597, -897111, -4437775, -3785477, 326418, -3324305, 1008244, -572841,
--2931315, 110059, -847182, 1414118, 1857573, -1200443, 16273094, 1248762, 4224637, 4810900,
--2753611, -9407052, -7383049, 1103270, 16278463, 9218610, 1981591, -14602889, 2075543, -8041790,
-22549, 16290274, 15662672, 7902740, 10579041, -9589588, -19841138, -10397042, -14307610, 7897371,
--168041, -2435247, -81604, -10828686, -3235721, 3322694, -2058363, -4127464, -4022774, 11537893,
--774705, 3124589, -3313567, 7558069, 1578401, -4392678, -9220221, -7081328, 20895552, -920734,
--4759361, 6665789, -11985106, 3730179, -6871948, -20910586, -4715874, -2737505, 6293738, 2403034,
-5525476, 1744831, 8237211, 290447, 544387, 4557497, -20448340, -3244848, -5515275, -1477469,
-1952063, 11705933, 12923020, 4649839, -3420942, -8950712, -11764989, -3958349, -6935299, 1460289,
--3466039, -3677029, -8113730, 12072079, 8681203, 3523484, 11085847, -2666101, 4407174, 6801081,
--4376572, 4043712, -2831994, 870805, 4021163, -1252520, -2724083, -1136019, -1520418, -1074279,
--129923, 256087, 3981972, 143881, 442382, 1217086, -2270427, -6198175, 210990, -1458678,
--841277, -1136019, -3676492, -430034, 1171989, 5479842, 4476967, -2567317, 593242, 3600256,
--807991, 816044, -1343251, 813359, 3426310, 420370, 3762928, -23602992, -15431281, -3570192,
--5617281, 12064026, 8288213, -1974074, 20772610, -20986284, -4890357, -7917772, 22187264, 10647224,
--7285875, 8182987, 3115999, -8629126, 15324980, -16891570, 8370355, -7776039, 1326608, 1847910,
--5634460, 14799384, -10391673, 9090298, -4324495, -21759914, -3605088, 15210627, -9199283, -14854681,
-209380, -1846836, -22230214, -4151623, 8928700, 3790309, 11865384, 8727374, -2506114, 21395380,
--5112622, -6580427, -10513543, -9788767, -9468255, 5877126, 7992934, -6880001, -7761543, 2567854,
--6731825, 8973797, -2465311, 4873178, -3637837, -5556077, -4264903, -118112, -12583180, 3412889,
-9080098, -2118493, 3928821, 5458367, 6447820, 11623255, -8313983, 3740917, 9062918, -1165010,
--19299972, -20543366, 2263448, -1950989, 1527398, -7517804, -3122978, 1516124, -7442105, -13500693,
--4125853, 10190884, 8266739, -4060892, -1647120, 3136400, 2793339, -1607928, -3282429, 244276,
--435402, -5309117, -1970316, 5641440, -1626182, 4532264, 814970, -1411971, -2782065, 3639985,
-3586298, 4212826, 500901, -2368138, 2442226, -6326487, -3799436, 3115462, 1450625, 2672544,
-4919348, -2518998, 1014686, 1930051, 2394981, 456877, -2895345, -4154844, 1848983, -2264522,
--1392106, 16779364, -10826002, -27066884, -24696, 19059454, 24366424, 4444218, -9178345, -6915971,
-2377265, -4509716, -4013110, 10636487, 10784126, -5487895, 10400800, -13496398, -1775969, 9511742,
--4845797, 11545946, 5355824, -1750199, -16204375, 6016176, -3899294, -3947612, 684510, -1328756,
--1851131, 21912386, -10976326, 11121818, 18748070, 12972949, 6753836, 118112, -12625056, 12361453,
--7131793, 11771968, -6854768, 2622615, -13266617, -2653753, -12547210, -8272107, 1733019, -11669963,
--3343095, -4148939, -624918, 10155450, -12261058, -10540923, -3952981, -6106370, -2609730, -10450192,
--13494787, -16822314, 1532230, 12829067, -1052804, -8353175, 1232119, 2638721, 10137733, -11447698,
--6637335, -3737695, -442919, 7597261, -17180, 2041720, -7963406, -3376381, 3923453, 15522012,
-6862284, 10692321, 12419972, 16222091, 6217502, -2314987, -5879274, 3884261, 4911832, 7115687,
-2988224, 607201, -74625, 9820443, 3468186, -3747896, 714575, 5476620, 2172717, 1271310,
--3704409, -3629247, -2602213, -5019206, 271657, 4605816, 4431333, 919660, -2723009, 6455336,
-3712462, 8196408, 4263292, 178778, 5484137, 4295, -4349728, 6271726, -99858, -925565,
--2466922, 1189706, -1566589, -192200, 5496485, 3192235, -45167488, -21471616, 15071577, -36884104,
--25564182, -1650341, -15044197, -10320806, 11260867, 12869333, 3950296, -2369211, 4669703, 36830420,
--4506495, 5888937, 14190035, 16156593, -16787416, -8721468, -7943542, 13595719, 14858439, 7453916,
-2747169, 13898514, -4070019, -6971269, 9780714, 18811420, 1358283, 6076305, 19157164, 14113799,
-11532524, -8593693, 3648038, 5794448, -12885, -318364, 12308839, -4030290, -167504, -1245541,
-8231305, 304943, -13407277, -8994735, 2724083, -18245558, 13852343, -4054449, 30569430, 1215476,
-16781510, 3320547, -697932, -9848897, -439160, 3913789, -12879533, -6648610, -15050639, -1907502,
-7754027, 10512469, -4549444, -24551644, 8930848, -3902515, 8413304, -8804146, -10479183, 7707319,
--15865609, -12170327, 23738284, 354872, 10952703, -2233383, -10224707, 2850248, 13997298, 3401614,
-11140071, -17984638, -854699, -1217623, -2942053, -15460809, 15136538, -9001178, 1146756, -1760400,
-1861868, -5731097, -521839, 3176128, 4667556, -3823058, 9932112, -2433099, -3119757, -5788006,
--4901632, -4993437, 4798552, -1916629, -3451006, -1459215, 1304060, -3796214, 6962679, -2058900,
-7875360, -4895189, 3373160, 1221918, 3178276, 5082020, 1084479, 18233210, -8434779, -21275120,
-9006546, -11151346, 4552666, -365072, -10632728, 19417548, -26162794, -1159641, -31565326, 685584,
-25360708, 35512936, 16758962, -6195491, 16375637, -1331440, -2362769, 1687922, -2870112, 8671539,
--1161252, -16740709, 897648, -23232552, 8074002, -7246147, -5240397, 15444702, -392453, -17883170,
--19979650, 4533875, 2672007, -9998684, -8339753, 14825690, -21652540, -197032, -4430259, 7533910,
--5867999, -4760971, -17337172, -7417946, -7697119, -3302293, 12365211, -14840723, 5235029, -1880659,
--2637110, 1856500, 5286031, -25065966, -2736431, 3307125, -2284923, 9163850, -7949985, -11121818,
--5114233, -28038620, -12412455, -12269648, 504659, 11855183, 17892296, -8583492, 13518946, -23393614,
-37286220, 2482491, -6794639, 19469086, -23270670, 19541028, 8684424, -5328444, 320512, 6466610,
-431644, 3054259, 17783312, -7724499, 7536057, -4220342, 5426691, 8832600, 8685498, 10646687,
--3791383, 8964134, 2037962, 1275605, -1598802, -12120935, 359167, -8624831, 3837017, 5462662,
--1952600, -1420560, 1505386, 1136019, 5919002, 2698313, -4466766, 6450504, -186831, 687195,
-7966628, 5435818, 3125126, 14571213, -12145631, 8053, 5255966, -66035, -9564892, 2214593,
--6120329, -5758478, 22950158, 1328219, -16338592, -337692, -2447058, 10660109, 7039452, -9957882,
-11565810, 239444, -25729538, -28026272, -2650532, -8422431, 7037841, -1176821, -9868761, -25258702,
--22018686, 12059194, -18727668, -4184372, 1231045, 5967857, 1448478, 18056580, 1557999, -9088688,
-12127914, -1578937, 1816234, 11180337, -14646375, -938450, 3238942, -14972793, 9148817, 12487617,
-5487895, 11114838, 5847598, 17200270, 4744865, 12528956, -17510582, -5459977, -2745021, -23556286,
--67646, -2524904, 9931038, -1553704, 11375758, -1860795, -13626857, -9293772, -645319, -21786222,
-9625022, 627602, -4175782, 12779138, 8142185, 10619844, 11057393, 3389803, -1256815, 9276592,
--29510720, 8995272, 3787624, 13266080, -5165235, -20855288, 13212930, -3130494, 22662394, -33308546,
--11803107, -23319524, 16037408, -6783901, -21391622, -23895588, -15692200, -7055021, 7687455, 6023692,
--6499360, -6776385, -3506841, -409633, -7184407, -2726767, 12265353, 1914482, -1103807, 3604551,
-2731599, 2258616, 6687801, -5116917, -6743099, -153008, -11761231, 17180, -4089346, -1669669,
--7570954, -2041720, -10354629, -9308805, 11864847, -6582038, -366146, 3985730, 5745056, -986769,
-9965398, -8230231, -2607045, 4110284, -9656160, -2650532, 11423539, 4095251, 2601677, -3878892,
--5818607, 4402342, 15609522, 14469745, 53059488, 40082784, 5384815, 11589969, 3317862, 30787936,
-795643, 14964740, -14058502, 36475008, -14519137, 33075544, -1544041, 21114596, -2517925, 14890652,
--14905147, 3540127, 7401840, -8177081, -2718714, -4409858, -3484292, 9842991, 180389, -8559333,
--11797738, -17757006, -22594212, -10871636, -3850975, 104153, 7037841, -19020800, 7994545, -10481331,
--16175921, -3382824, -11833709, 5352066, -2925410, -24736328, -5932961, -12589623, -14944339, -15660525,
-14147085, 18948858, -39731132, 8979166, 3473018, 11123965, 3879966, -5021891, 23953032, 13487808,
-12509629, -33221036, -14912126, -449898, 8136279, 27480812, 979253, -3728032, 1280974, 23281408,
-20871394, -19833622, 22338662, 1654099, 4976794, -3792993, 13087302, -28261422, -9951439, 29123636,
--4523675, -1894081, -11271068, 19421842, 12637941, -10040560, -17048872, -2928094, -784368, 1729261,
-199716, -3630321, -15897821, -5413807, 12299176, 16203838, 9987410, -8936216, -2420214, -2607582,
--7718056, 2499671, 2507187, 7501161, -1701344, -5274220, 4629975, 1829119, 2769180, 14680735,
-1936493, -4060355, -5628555, 2543695, 5208722, 11441256, 2239289, -11078331, -5989332, -8311299,
-3254512, 4282620, -9239012, -19532974, 6273337, -1570884, -3344706, -6806450, -12103218, 14621679,
--5729487, 12746926, 19800872, -22284438, 6972880, -12713103, 37272264, -22003118, 21073794, 19435800,
--7346005, -34740916, -20212652, -2248952, -9224516, -988916, -15918759, -25294136, -33687040, -19276350,
--22422414, 9737765, -19174882, 8046085, 2308545, -2157684, -1962263, -15761456, -4865661, -16193100,
-4790499, 14566382, 19033148, 397284, -5317170, -16622597, -3954054, 1712618, -9894531, 2884071,
--13656385, -8862128, -1937030, -13527536, 10768020, -11941083, -35391604, 1368484, -1074816, -11642046,
-15114527, 11877732, 17219598, 6652905, 13553843, 27431956, 4627291, -27183384, -6194417, 12869870,
--5968394, -22586696, 12674448, 18000208, 6070937, -72478, -30600032, 27413166, -1281511, 22384832,
--18507550, 22668300, 55438900, -4849555, -1563368, -27012124, 14604499, -21962852, 18606872, 9496173,
--12090870, -2654827, -29895120, 6952479, -16288127, 314606, 11549704, 11596949, -375810, -7677254,
--6645925, 8286603, 20290500, -9773735, -1540820, 3173981, -8786429, -2509872, -2743410, 4313221,
--934155, 8570070, -3844533, -9652402, -5345624, 3008088, 7714835, -9553081, -2942053, -81604,
-1379221, 7219840, 1604170, -2349347, 2611877, -16255914, -9291088, -915365, -1432909, 3485366,
-1037772, 1423245, -226560, -2719251, 8420283, -339839, 6302328, -292595, -1705639, -5915781,
--4044786, -43641700, 14730664, -57222388, 37679212, 13447006, -9831180, 40156332, -3929358, -20559472,
-35617628, -13809930, -2004139, 7472706, 12420509, 32911260, 1285806, -2754685, 23229868, 9815074,
-19500226, 23869818, 17703318, 1572495, 12359842, 1895691, -1297617, -13174275, 8341900, 12496207,
-2989834, -817654, -14195404, 6730751, -13299903, 15896211, 15706695, 2679523, 18566606, -11516955,
-12247099, 19237696, 12274480, -26089778, -28015534, 32831804, -3216394, 20517596, 31906776, 707059,
-8590, -3373160, 6259378, 18402862, 17510582, 1784559, 14545980, -35970, -16625282, -20780662,
--30726732, 497679, -12480638, 398358, 17405892, 16262357, -28737626, 2424509, 11145977, -25245818,
-4187056, 35022772, -15204184, -17534204, 18825916, -20270636, 4665945, -5726802, 36781564, -10732586,
-22724672, -11310796, 19102404, -1835025, 7107634, 15215459, -24008868, -7358353, 9167608, -15954730,
-11684995, -14324253, -3935264, -8107825, -7330973, 988379, -3926137, -6590628, 3875671, 10889890,
--5474473, 2945274, 4023848, -9528922, 1713692, 1253594, -2400350, -6751152, -2725157, -5224291,
--15386183, -6171331, 3362960, -20309826, 7393250, -10429791, 7881802, -4762045, -1899449, -14256070,
--7359964, 130460, 4000762, -6318971, -13785771, 2267743, 1024887, 7398081, 3280281, -24696,
-9104257, 7191386, 858457, 6171868, 4281009, -19846508, 4566624, -23011898, 47649976, 11774653,
--25269440, 9771587, -5779416, -22487912, -26513370, -26914412, 8115878, -1219771, 23961622, 35475892,
-17111686, 8678518, -4169876, 11853573, 1236414, -44398152, 19632832, 46335180, -30154966, -31705986,
--27368606, -38779260, 28230820, -38185480, 17340394, 340913, -4683125, -159988, -12330851, -14721537,
-19102940, -39296268, 40587976, 23311472, 5476620, -25832080, -19478214, -17085916, 3729105, 6833830,
--16662862, -2253784, -12277701, 27941446, 12736189, -4974109, -744640, 11520713, 2674154, 13139379,
--22698366, -8978629, -2086280, -3992172, -21107616, -14879377, 12694850, -40288940, -23697482, 3107946,
-47246788, 22786412, -14272176, -932545, -35750772, 17470316, 54786064, 1961190, -11669963, -8196408,
--25740812, 33711736, -10744398, -12994424, -1046361, 19989314, 12630425, -17301202, -15531675, -5563057,
-17678086, -4676146, 5237176, -1357210, -13882408, -4514548, 22374096, 12776991, 1908576, -10332081,
--1569811, -1557999, 17464410, 14166413, 7163469, 6404333, -20536922, 7895224, 7503845, -3077881,
-4758287, -3218004, -2868501, -18046916, -1838783, -918586, -2477659, -5755793, 4919885, 6626061,
-3554622, -21229486, -18193482, -9000104, 16106, 1295470, -21343304, 7641821, 27001922, 5428839,
--7392713, 506806, 4250944, 85362, -11605002, -8902393, -2975339, 3651796, 192200, -21986474,
--15107547, -44088912, 9799505, -32446330, -48593260, 11592654, 27072790, 6776385, 7363185, -20477868,
--25669408, -6556268, -38094748, -18635864, 10107132, -31839130, 50512572, 9960566, -12262132, 10985453,
--24031952, -47579648, -15895674, -36354212, 5906654, 10817949, -13282723, -25811680, -13062069, -15865609,
-14106820, -18893562, -6851010, -2317672, 21661668, -15442555, -2756832, -7139310, 5601174, 9168145,
-1729261, -6292664, 22333830, 29251412, 18687940, -14740865, -12127914, -42636676, -23739358, -9625559,
-11408507, 72058280, -12214887, 1003412, 32079110, -2748242, 13698798, -16197395, -16963510, -13609678,
-15247671, -40434968, 362388, -5224828, -465467, 35283692, -15396384, 53331684, 4752918, 40453760,
--51315732, -15247134, 14900852, -862752, -22246856, -18618684, 41720240, -42811160, -35415228, 51302848,
-9043054, 44564580, -17609902, -2797634, -3058017, 14449881, 6136972, -3914326, 15144592, 15306727,
--797253, 7283728, 4793184, 1760400, -5238250, -9405978, -2163590, -6169721, -8463233, 8055211,
-4599910, -7019051, 5158256, -15522549, -1538135, 11244761, 19357954, -1387274, -12191802, -758599,
--13880797, 8108362, 13298292, -9108015, -7631620, 7639136, 8864276, -19654308, 7086696, 1046361,
-12923557, -8258685, -8704825, 76773, 4085588, 6199249, -22328462, 3799972, -9474698, 17872432,
--6196564, -3979824, -2586644, -44065828, 21050708, 32422708, -23440858, -19246822, -6563247, -21143588,
--25508348, 6878927, 7583302, 19905026, 899796, 17403208, 30877594, 32261646, 21386252, 7461969,
--23589572, 2390686, 12291123, 16357383, 25044492, 338766, -12946105, -18772228, -7112466, 25463788,
--10410464, 10064719, 22058416, 2253784, 43338368, 5078799, -27662274, 23990614, 23605678, 6896107,
-10175314, 21995064, 3494493, 1947231, -25395604, 54934780, -58472760, -42884712, -49882824, -16415365,
-10305237, -29219200, 15044197, 32807108, -9717900, 3303904, 28823526, 9315784, -31272730, -10747082,
--24209656, -3365107, 1776506, 1695975, 27860916, 27524298, -6331319, -6815576, 17488034, 42329052,
-7295539, 34845608, -29327648, 30987652, -13581223, 10347650, -6213744, -19585050, -13748727, -3007014,
-13934485, 8679055, 34406448, -44464724, 22641994, -17524540, -11064373, -8571144, 16457241, -7738994,
--1609539, 3709778, -17941690, 11317776, -8816494, -486942, -13642964, 4314295, -2822867, 716186,
--15362024, 2387465, -1486059, 3172370, -1582696, -16539382, 6562710, -9368397, -8734890, -3809636,
-12320651, 14505715, 15789910, -13511967, 27215598, -20467130, -6322729, 1684701, -2343442, -15093052,
--8299488, -755914, -11534135, 3386582, -1067836, -369904, -1488743, -11151346, 1319092, -1755031,
--651761, -24976846, -50236620, -50563040, -36600100, 7493108, 93889592, 23718956, -12969727, -28406914,
--67874976, -95463704, 21531744, 39517456, 47437912, -10000831, 4094178, -28003186, -48711908, 14024679,
-8820789, 15829102, 2268817, -40850508, -12498355, 9961640, -8232379, -1627256, -7748658, 53191024,
-46698644, 31488552, -2908230, -22855132, -38813620, -25693032, -23237384, 36327372, -6049999, 26577258,
-11999602, 12436615, -16379395, -88428544, -60899416, 30038464, -47927004, -16365436, 101971648, 70115880,
-52668112, -39968964, 28832652, -27690192, 1990717, 2004139, 14769856, 43245488, 76219024, -29218126,
--2755222, -50303732, -40660992, -66566624, 7184407, -2771865, -71687296, -17188996, 46111304, 17221746,
-32171452, 43636332, 78636560, -57342108, -34443492, 4522064, -46828564, -6058588, 26114474, 61256972,
-31111132, 9538585, -37447820, -35890356, 24157044, -10244034, 36069136, 31721018, -8625368, 14512694,
-5791764, -6148246, -12071542, -7036230, -4588636, 10745471, 3071975, -319438, 3697430, -1166084,
-5153961, 94489, 22796076, 18743238, 29731912, 5315559, -16437377, -34528316, -28229210, 11402601,
-26704496, 30609696, -3914326, -19665044, -79362408, -40818296, -37608344, 827318, 3945464, 8025684,
--355945, 5823976, -9054865, -128849, -13365938, -11973832, 16689706, 14697915, 8519605, 8581882,
-4282620, 1866163, 3726421, 23226646, -37755984, -124970128, -116288920, -66763656, -72597296, -18122078,
-120341224, 61127584, 123814240, 109859896, 172228720, 122986392, 105804368, 17047798, -45941656, -103872712,
--166413872, -141344160, -142329312, -74412456, -35712116, -8413304, 1186485, 4064113, 29382946, 39241504,
-99039264, 60117732, 116878408, 76107896, 100190312, 36218384, 96810712, 33601676, 23689428, 22880902,
--5750961, -27207008, -65523484, -75654240, -140379392, -96204048, -177887888, -140784736, -215903168, -128044784,
--101562552, -24544128, 59351080, 31523450, 5348845, 59198072, 126626376, 169092864, 221765808, 264282224,
-226193376, 165184976, 206066096, 169965808, 95326800, 42820824, -10539850, -70924944, -163972192, -194827776,
--260823696, -336830656, -389721024, -351761056, -309951680, -220660384, -150590688, 46105936, 145321824, 177027808,
-272721824, 227629504, 284420256, 298820192, 293228160, 337933408, 221921504, 57591752, -55796992, -108360952,
--134006736, -86852832, -125495184, -107690400, -125592360, -170099488, -171936672, -200292576, -118501368, -92356832,
--78626352, -44029320, -2595771, 11770895, 48714592, 131985952, 139207936, 197487968, 172036528, 225870720,
-166221136, 110969072, 114644488, 43630424, -29942364, -49080200, -217787056, -280961728, -261463120, -230867376,
--135031088, -106107704, -57873612, 5050345, 59042380, 89746560, 122198264, 145674560, 173430240, 164499392,
-155720480, 136929456, 76744624, -300111, -38511360, -90315648, -94247152, -80909664, -65776888, -68793032,
--69345472, -54661512, -38881804, -23109072, -9186935, -8630737, -5681168, 2371359, -5889474, -7402376,
-10667625, 23259396, 26505854, 17559436, 13641890, 20933134, 26779658, 21045340, 25551834, 33587180,
-41008348, 34887484, 8455180, -4130148, -1467268, -1749662, -11314554, -9800042, -6849399, -15786152,
--25914758, -32639604, -30975304, -27277338, -21926344, -18196166, -10467909, -4167192, -2336462, -1035087,
-4993437, 10080825, 13377749, 14493904, 15471009, 12569759, 10346576, 10069551, 6594386, 1457605,
-3268470, 4005594, 1468879, -1540820, -2433636, -119722, 4810900, 6691022, 5814849, 5041755,
-7487739, 5913633, 1737314, -2017561, -4309463, -6175626, -7748121, -12868259, -15598247, -14781130,
--15588584, -18523658, -14382235, -5492727, 603443, 1969779, 5387500, 9977209, 12601434, 11283416,
-11292543, 12510703, 11515344, 8492761, 6075768, 3447785, 1685775, -354335, -1882806, -2112050,
--1903744, -2341294, -3115999, -3331284, -2873333, -2536178, -2312303, -1957431, -1450088, -1095754,
--820339, -676994, -520765, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--11935714,
-4490389, -6781217, 3733400, -3810173, -7852811, -13598940, 2443837, 442919, 3472481, 3055869,
--909459, -964220, 1072131, 8282308, -5812165, -10409927, 3504693, -4285304, -6958384, 159988,
--1002875, 4361003, 1584306, 3120831, -3104188, -746251, -2021319, 7058242, -1874216, -2805688,
--2459943, -1205275, -1656247, -2787434, -2450816, -1696512, 1430761, 627065, 958851, 270583,
-1868311, 3011846, 1553168, -2624762, -7891466, -49929, -5475547, 830002, -336081, -2484639,
-3586835, 268435, 63351, -7875897, -3190087, 1083942, -581431, 2785823, 239981, 2480881,
--2255932, 1042603, -956704, 4898410, -1690070, 2589865, -4323959, -4321274, -5452998, 293668,
--1264868, -1581085, 74625, -1898912, 4295, -2218888, 513785, 117575, -904091, -3440806,
-384400, 376347, 2028835, 1767916, 56371, 1881733, -157840, -1433445, -437550, -670552,
-768262, -1611, 142808, 1064615, 805306, -122407, 1000191, -630823, 237834, -8562017,
--1758789, -1114007, -2418067, -1086090, -2916283, 2851858, -1145683, -987306, -230854, 73551,
--159451, -2054068, 7613367, 4900021, 7956964, -3707094, 7920457, -4671851, -3271691, 3085934,
-8769786, -181999, -5294621, -7826504, -5616744, -1073742, 6256157, 2462090, 2126546, 2778844,
--2729989, 4256850, 554588, 3182571, -1535988, -7133941, 1956895, -4934381, -3371549, -3460670,
--811749, -9060770, -406948, 433255, -3775813, 8475044, -1593970, -2733747, -3391951, -81068,
-946503, -3626026, 136902, -4448513, -1662152, 125091, -1822140, 6091874, 201863, -1639067,
-3425773, 2189360, 5655398, 2268280, 6796249, 1671279, 5559835, -6324876, 1657321, 5056250,
--1714766, -4518843, -6205691, -122407, -471910, -1244467, 1546188, 1829119, -1304596, 4846334,
--4154307, 1608465, 1709397, -3108483, 2285460, 508417, -2255395, 1215476, -555661, 477815,
--2112050, 659814, 285078, 394063, -219580, -151934, 1073742, 271120, 1970316, -398358,
-193274, 9673877, -4444218, -3427921, 937377, -2198487, -1644973, 4835597, -3824132, 4655208,
-2116345, 70330, 2359011, -3174518, -3027952, -5543192, -5972152, 7789997, 3663607, 2720325,
-4148939, -2767570, -1860795, -2043868, 9844602, -3852049, 10778757, -392990, -2786897, -2631741,
--5761162, -6186364, -7507603, -488016, -1917166, 1326608, 7186554, -640487, -3419331, -10094784,
-316217, 7976828, 11709155, -5534602, 2996814, 2141041, -3023657, -2679523, 3027952, 11106249,
--2691334, 1731409, -991064, -1643899, -1079647, 5318780, 7666517, -5851893, -3202972, 2371896,
-10063108, 1669132, 7116761, -5861557, -5458367, -312996, -934155, 2032056, 1496259, -145492,
-595927, 1033477, -2669322, 1213328, 3231426, 2496987, -2015950, 6442988, -1684164, 4044786,
--2158221, -2238752, 2387465, 2027761, 2154463, 480499, 2248416, 425739, -3394098, -2291902,
-615791, -173946, 1199907, -643171, 1811403, -93952, 994822, -1013075, -223338, -100932,
--529892, -1176821, -143345, -722091, -215822, -865973, -768262, 1813550, -63351, -889058,
-1944010, 27380, -1050120, 15985331, -10943040, -2396055, -4531728, 1276142, 4276177, 7693360,
--7635378, 5282810, -1975685, -8078297, -13088376, -2658048, -5545340, 960999, -1225676, -5515812,
--2806224, 3088618, 3265249, 10283762, 5717675, 5248450, 566936, 1656784, -5283884, -3563212,
-8269423, 6343130, 4313758, 2020782, 3984119, 882616, 67646, -6842957, -9700721, 6551973,
--2562485, -6512244, -3090229, -4078072, 3517041, -3585761, 8308078, 1952600, -4732517, -2280091,
--3616363, -3120831, 4076998, 6123013, -485868, 4143033, -2968359, -3303904, 59593, 870268,
--3166465, -1195612, 4813048, 108448, -1935957, -2297271, 2638721, 2954938, -332323, 3561065,
-523449, -2426657, 8289287, -1118302, 945430, 456340, -9905805, 3940096, 3154654, 5221607,
-3398393, -3577708, -796716, -8905078, -4088272, -8165807, -2986076, -3624416, 66035, 850940,
--5392332, 304406, -1278290, 84289, 2344515, -752693, -969589, -110595, -1471026, 339302,
--735513, 693100, -893890, -1949915, -991064, -438624, -3365107, -233539, -129386, 779537,
--184147, 494995, -159451, 161061, -1788854, -2267743, 260382, -260382, -1024350, 523449,
--2614025, -10934987, 2757369, 63351, -3273839, -6012954, 2443837, -5749351, -1093606, 9795747,
-14874009, 7293392, 8155069, -668404, -4189741, 6111202, 5473399, 2274185, 2901251, 7296613,
--1131187, 5289789, 5141613, 7571491, 7268696, -6051072, 4857071, -447750, 1673964, -5643587,
-1653562, -811212, 4952634, -2001455, -1463510, -4007205, 3590593, -6177237, -5013838, 425202,
-5204427, 2799782, -3215320, -1713155, -1024887, -2166811, 3124589, -7424388, 6714108, -107374,
-8364449, -12020540, 793495, -10835129, -3445638, -3507378, 2885144, -1205275, -2500745, 2280628,
-840203, 2817499, 4597763, 7544110, -995359, -6212670, 1268626, 10192494, 2049773, -3063386,
--801011, 6249715, -3391414, 3767760, -3277597, -11073499, 6301791, 6640020, 6197638, -5520644,
--8191577, -5968394, 6860674, -835371, -1099512, 4791573, 1764158, 1109712, 799401, -442382,
-1860258, 2448668, -889595, -1490891, 1396938, 50466, -520228, 762357, -1415192, 295279,
-2181844, -1024350, 2294586, -1085553, -1764158, 712965, -85899, -98247, 1146219, 792421,
-1165010, 826781, 828392, -180389, 1124745, -838056, -16366510, 290447, -3617973, 1519345,
--9159555, 1131187, 1529545, 12173011, -9716290, 133681, -13038984, 2985002, -7872675, -1912871,
-496069, -4265440, 3790846, 1680406, -6818261, 135828, -86973, 6329171, -4114042, 10189810,
--106300, -8816494, -4486630, 10842645, -1024350, 4345433, 2902324, -1781338, 6497749, -7163469,
--6766184, -5272609, 761283, -6861211, 7320235, -4015795, 4704063, -6644315, -55835, -8074539,
-5330592, 715112, 6381248, 5684926, -5358509, 10685342, 9134322, 8603893, 1727114, 9033390,
-7448010, -7661148, 6605660, 3143916, 634581, -7113003, 3308199, -6053757, 6033356, -2602750,
--4745939, -581431, 8988293, 3187403, -10280541, 9830643, -779000, -3479461, -5860483, 10012106,
-8696772, -7468412, 7422777, -538482, -8864812, 105764, -5022965, -2780455, 4929549, -4293894,
-3530463, -363998, 1583769, -2060511, 2698850, -373662, -237297, -600759, -948651, 937914,
-554588, -2497524, 926639, 1233729, 35970, 917512, 1126355, -2346126, 543850, -288837,
-88584, -1980517, 740882, -817118, -1152125, -2633352, 3061775, 621160, -1387811, -416075,
-846109, -320512, 23376434, 3971234, -935229, -8063264, -15147276, 3864934, -2233383, -22231824,
-19500226, -9450539, -14110041, 2979634, -903017, 2626373, -913217, 3779034, 5622112, 73551,
--360777, -11361799, -945967, -1079111, 13393856, -2448131, 346282, 4929549, -2352568, -1650341,
--5452998, 11438035, -8584566, 8264591, -2041720, -6854768, 1280974, -7663296, -3897683, -12445741,
-2189897, 5712844, -3367254, -6209986, -4916664, 7521562, -11667816, -2759517, -5755256, -163746,
--1675037, 1517734, -10123238, 9858024, -13820131, -9449465, 3744675, 1667521, -527744, 3689377,
--7170448, -10313290, 1274532, -2805688, -476741, 5061082, -6169184, 4588099, 3190087, 11374147,
--3156801, 1630477, -882079, 162672, 15767362, 1320166, 15611132, -3772592, -5871221, 1778117,
--8039105, -718333, 7974681, 639950, -9352828, -8182987, 2287070, -871878, 28454, 8013872,
-616328, -1510755, 3322157, -460635, -331786, -3748970, 1378685, 1749662, -1891396, -55835,
--934692, 3091303, -1409823, -631360, 1580011, 406948, 955630, -299037, 1762547, -588411,
--1611, 940061, -1973001, 2431488, -1556926, 896574, 2036888, 1109175, 1923072, 525060,
--17115982, -2209761, -3451543, -13877039, -23921894, 7427072, 12480638, -8741869, -4184372, 7077569,
--2545305, 14967424, -1622961, -7934415, -4712116, -22289270, 7590818, 2563559, -1992865, -15643345,
-3751654, -8680666, -2255395, -7614440, -3876208, 11193759, -10653666, 4659503, -15796353, 10190347,
-2066953, 249108, -4524211, 1245541, -2022930, -8807367, -16633871, 3287261, 76236, 3622268,
-7041599, -4002373, -1288490, -10678899, -5470178, -2822331, 4593468, 3125126, 7959648, 12683575,
-9927280, 5134097, 7586523, 2343979, 7905424, 7121056, -6836514, 8149701, 9197672, -1826435,
-12301323, -1222992, 14424111, -6305012, -15391015, -2469069, 9903658, 10896869, 12511777, -2349884,
--21494700, -2109366, -1091459, 872952, -673773, -5242545, 3146601, -15665893, 12297028, 7778186,
-7479149, -8174934, -7720741, -1657857, 4609574, -498216, -8643085, 135828, -4192962, -7014756,
--2784750, -1111323, -3329137, 377420, -2805151, 1493038, -1728724, -917512, 2327872, 488553,
-1092532, -1066763, -3052111, -3386582, 2466922, -2688113, -40265, -942208, 1539209, -1059246,
--647466, -1047435, 3673808, 1979980, 1162862, -1060857, 22939958, -5050345, -5513665, 7649337,
-12348031, -888521, 5743445, 14304389, 10328323, -23488640, -21589190, 176094, -2083059, 3165928,
--9655623, -17134236, 4058744, 13738527, 9064528, -9944997, 16148540, 13059922, 12244415, -20583094,
-5816997, 10800769, 541166, 1647657, 9177271, 21214990, -4114042, -9688372, 6418829, 4815195,
--2905009, 11472395, 17098802, 3205656, 17714056, 7761006, -13326747, 1511292, 14685567, -1575716,
--6056978, 7629473, 1210107, 2910914, 15412490, 9924596, 5229660, 1846836, -17939542, -18236432,
--1548336, 2910914, 4745402, -5613523, -817654, -4698694, 1578937, 2298881, -6861211, 2612414,
--4221953, -1040993, -5834713, 680752, 11378979, -6718403, -16501801, -2546379, -14039711, 3115462,
--5027259, -335544, -1906429, 6647536, -2501282, 4822712, -86973, 4141959, 1917166, -1874216,
--2259690, -2822867, -8153459, 2993592, 1035624, 2071785, 248571, -6251325, 3137474, -4881767,
--4158602, -1396401, -5333276, -1082332, -1757715, -1944547, -1691143, 3491272, -1545115, 2341831,
--233002, 1893007, 311385, 4500589, -1939715, 1249836, -3610994, -869194, -3098282, -2774012,
--598611, -2032593, 6841883, 2936684, 249645, -907312, -972273, -38156488, -23741506, -7078106,
-7122130, -2193118, -9407589, 1868311, -9165997, 26980448, -10713259, 17362942, 26623966, 14504641,
-13189308, -10210211, 9522479, -4994510, -12141873, 10835666, 12620761, 8415988, 17969070, 244813,
--801548, -7747584, -7948374, -6769406, -10993506, -10700374, -7311645, 4282083, 1610613, 27917,
--6878927, -3686156, -10669236, 4617090, -9204115, -8337069, -3683471, 4638565, 39728, -5585605,
--15585899, 2004676, -4552666, 5806259, -18402862, -14191109, 16295643, -2353105, -3058017, -7379291,
--4525822, 12277164, 4011500, -2395518, 6732898, -1698123, 7001871, 5625871, 7978976, -5553393,
--9266392, -23389318, 1697049, -22680648, -1488206, -19180788, -2726767, 18372796, -2247879, 3353296,
--12965969, -5520644, -6665789, 1577327, -8310225, -4747013, 8273181, 10327786, -1010391, -924492,
-1209033, -4548371, 1778117, -416612, -4530117, -1762547, -3871913, -1429150, -2183991, -10467372,
-1886028, -1663226, -1334661, 764504, -2855617, -3316252, -7241852, -1593433, -4174708, -4918275,
--904628, -6222871, -2913062, 1160178, -3937948, -4505421, 611496, -3748433, 1324997, 1618129,
-4592931, -2640868, 3221762, 1627793, -4120484, -1452236, -963146, -1808181, 868657, -801548,
--1170916, 26387742, 520228, -19105626, -16199543, 16553878, 12982612, -12230993, -11812234, 22193706,
-14108431, 813896, -13166759, 1589675, -5532992, 10523207, -8167417, 1248225, -3455301, -2427194,
-22956600, -3250217, -6238977, 4250407, 3916473, 6854231, 7101729, 771484, -9043054, 6846715,
-3484292, 7845832, 17766132, 8114267, -25538412, -7329362, -4147865, -19580220, 7595113, -3415573,
-421444, -10925323, 9239548, -4260608, 1786706, -14205067, 9643275, -11578158, 976031, 11355357,
--1799591, 11978664, -9347996, 14945412, -19171660, 9556839, 249108, -6956237, 25153476, 6659884,
--5189394, -15022722, 6554120, -3124052, 2105071, -2324651, 9230422, 13655849, 18509698, -11740830,
-8345659, -4689568, 16564078, 5996311, 2409477, -1583232, 9953587, 1701881, -6510634, 7976291,
--5662915, -9739375, -4133906, -13222594, 228707, -14807437, -1191853, -10007811, 11416023, -3685082,
-7363185, -8035347, 364535, -4540854, 6956774, -2281165, -591095, -4504884, 2398202, -3406983,
--5254893, -3172370, 2378875, -5246840, 3197603, -4183298, 1993402, -2752000, -2479270, -2753611,
--5591511, -3426310, 224412, -4265440, -3676492, 5107790, 4631586, 2335389, -2543695, -6802692,
--617402, 2756832, -147640, -5317170, -2988224, -521302, -38352984, -24823838, 20703890, -15126338,
--14192183, 7992934, 18130668, -29774860, -4910758, 7146289, 1964948, -15524159, -23287312, 43855376,
--18845242, 5995775, -21432424, 11883101, -7436736, 20531018, 18247168, 1886028, 3272228, -24286966,
-13959, 11554536, -9814537, -14460618, 11580842, 3315178, 12483322, 9935333, -2017561, 4201552,
--2689723, -1497333, 18387828, -15537581, -9113921, 14765024, -550293, -11715060, 15624017, -415001,
--3369402, -10464151, -4591320, 5806259, -8164196, -877784, 5537824, -10380399, -10642929, -6899865,
-7953206, -22601192, 10887205, -973347, 21619254, -20191716, 6803765, -15340013, 5755256, -9182640,
--11729556, 19508278, -10674604, -4664872, -10389526, 8473434, -11893838, 7145752, -3999688, 14288282,
-14649597, -1758252, -22660248, 9154723, 9527311, -1016297, -654446, -12902619, -8903467, -2079838,
--11116449, -8917426, -3097745, -190589, -5498095, -7315940, 8526047, 2915209, -5210869, -4337380,
--5326297, -5625871, 6219650, 2352568, 1551557, -8494908, -3207804, 7461432, -4221953, -5179731,
-3528316, -3683471, 95563, 2775086, 4368519, -1668595, -7029788, 1509681, 4304094, -9390409,
-288300, 2554432, 295279, -4902169, -2784750, 342524, -2185065, 19370840, 9450002, -21666500,
-7482370, 23446226, -1988033, 115427, 10865730, -6933688, 16471736, 14894410, -19536732, -11973295,
--3536369, 10413685, 18804978, 3376918, 10032507, 21181704, 15901580, -22180284, -2301029, 35364224,
-8809515, -2308008, -4080756, -6602976, -10282689, 3156264, 8749385, 9685151, 9073118, -6277095,
--14982993, 4093641, -7741142, 8320426, 24484534, -6445672, -24372866, 29336774, -8723615, -16109885,
-23848880, -4248260, -6963753, -25378424, -4457639, 10534481, 5129265, -5492190, -10606422, 9844065,
-1167157, -11746199, 10217727, -2336462, 23291608, -17024176, 2546916, -3307662, 26672284, 9065602,
--37567544, 11841225, -15617575, -6595459, -13337484, 16328392, 54111756, 19732154, 3281892, 12503724,
-15861314, -19887846, -8289287, -5586679, -11206107, -6861747, -12416214, 11890080, -27550604, -7335804,
-2672007, 3325379, -8913668, 1736241, 5061082, -2702608, -3341485, 9439801, 1913945, 6305549,
-5418101, -5674189, 1797981, 4671851, 1971927, 3908957, -2647847, 2403034, -5182415, 729608,
--1424855, -5142150, -2506114, -1157494, 8665633, 480499, 2415382, 358093, -1528472, -1722819,
-944356, -741956, -7591892, -934692, 1515587, -1847373, -5783711, -14068702, -4853850, -4255776,
-8562017, -1425392, 1565516, -8256001, -28592134, -12182675, 1928977, -11627013, -35980552, 31149788,
--6016176, 14023068, 2626909, -16516297, -28393492, -27364310, 30625264, 18635864, 7005629, -10842645,
--20532628, -15395310, -24376624, -6292127, 9050570, -3824132, 1959579, 3848828, -4026532, -12651363,
--12158516, -20736102, -7457674, -4015258, 10146860, 7064685, 11158325, -5589363, -9296994, -3922379,
-14593762, 2041720, 12917114, -43314744, -10227928, -97711, 9463960, -13846975, -641024, -16021839,
-12489228, 10984916, 2073396, 53414896, 811749, 16664473, 21959630, 913217, 7066832, 292595,
--3886946, -6471442, 11046119, 16231218, 21242908, -520765, -4061429, 1418950, 13940927, 12663174,
-409633, 10256919, 8853538, 6888054, -2893734, 20876226, -6083285, 26801670, -26589068, -13320841,
--32692754, -10220412, 5787469, 731218, -8512088, 1688459, -166430, 14555644, -3020436, 17449378,
--8072391, -6573448, -8864812, 4451734, 9784472, -1677185, -4842039, -5395016, 6017249, 2684,
-20364050, -3328600, -1460826, 3568581, 5675263, 8319352, -7119445, -732829, 2680060, 4048544,
--9805410, 3279208, 3661997, 12408161, -12449500, 6927246, 4670240, -5404143, 10574209, -6124087,
--7337952, -88584, -2524367, 5310190, 2674691, -4513474, -183073, 4329864, 989453, 10760504,
--561567, 6980396, 19997368, -4032974, 603443, 5050345, -28056336, 870805, 3695283, 17184164,
-26374320, -22986128, 4738960, -14600741, 18718542, 16934520, 1896228, 32782948, 10034654, 12877386,
--12340515, -2235531, -21395916, 32752346, -19487878, 4867272, 19942606, -5109938, -13283260, 9914932,
--3250217, 4868346, 21434034, 264141, -7156490, -2298881, 3798899, -985158, -13150116, 9240085,
--1500554, -3955128, 36795520, -28783260, 26548804, 17011292, 33198486, 13333189, -23921358, 18008798,
-108985, 16712791, 43805984, -32087164, -13429289, -4392141, 598611, 29658896, -18030810, 1257352,
--19342922, 1196685, 33527052, -4108136, 34803732, 9579388, 5744519, 15636365, -21664888, -3846143,
-15165530, 21515102, -35694936, -1567663, -30617748, 13302587, -16038482, -827855, 6942815, 9588514,
-511638, -11110544, -8847633, -33515778, -4016868, -23900420, 18897856, 1348620, -1729798, 14591615,
-599685, -386010, 14078903, 10373957, 6964827, -135291, -5055714, 6439767, -11446625, -1151588,
--7923141, 7379828, 7781944, -7094212, -1528472, -14727443, 6169184, -1212791, -234076, -712965,
--14206678, -17181480, -5795522, 5132486, 12574054, 6179921, 5559299, -2362232, 10502806, 7124814,
--678068, -5782100, 9116068, -13608604, -3933653, 2434173, 14827301, 12087112, 2495913, -5904507,
--21328808, 6174553, -37430104, -32960652, 610959, 597000, -20898774, 17206712, 5057324, -5594732,
--19390704, 26674968, -6074695, 39637180, -5663452, 8635032, 14355928, -19107772, -6323266, 6142877,
--22828288, -12789876, -19956028, 17329656, -15973520, -4255239, -5193153, 15016816, -13460964, -22762252,
--31823024, -837519, 26593364, 1678795, -14559402, -6141267, -18454400, -6120866, 213675, 11142219,
--20798380, -2254858, -4494684, -14791330, -20446728, 1054415, 3468723, 13327820, 4583267, 22848690,
-6353867, 28813862, -11955578, 23804320, -6019397, -18450106, -4806069, 38667592, -16641925, 17665200,
--12195560, 28394028, -14957760, 9635222, 17984638, -990527, -7394860, 3511673, -10233296, 25833692,
--23587424, -8808978, 25712896, -3078418, -21437256, 1101122, 19654308, 11011222, 19653234, -19747722,
--16858820, -10620917, -2170569, 19468014, 23429046, -41373420, 2196339, 12103755, -22759032, 3857954,
-14374182, 11293617, 10543608, 10404021, 6882148, -3066607, 754304, 8002598, 8821326, 7306813,
-17709760, -5262946, 9305047, 4056597, 19167902, 11540040, -14821395, -18596134, 5944772, 20277614,
--5755793, -5451387, -12858595, -21748104, 2498597, -18538152, -5891622, 4412005, -12456479, 11736535,
-3292629, -3740917, -10295037, -1830193, -10672994, -719407, 5877126, 2945274, 1637993, -1705639,
--2644089, -36128728, 38774964, -13493177, 32952600, -7407208, 26386132, 1818382, -8820252, -18771692,
--13394929, -2856153, -23622, 19272592, -7927973, -1947231, 5230197, -18360986, 28537374, 10391673,
-663036, -24259050, 15936476, 8186745, -19427748, 18182208, 1213865, -3336653, 4285841, -986232,
-24036784, -6005438, -31130996, 32798518, -17526688, -3102577, 24282672, -11302743, -5799280, -15159624,
-38562364, -17869212, -5218922, -24780350, -5138929, 2565706, 34430068, -16722992, 6152004, 10684268,
-20308752, -5858873, -22499186, 23665270, 14207215, 19134080, -9942849, -5097053, 2066416, 21241834,
--12410308, -25817586, -28747290, 14680735, -20252918, 4664872, 20788716, 19247360, -14246407, -5162014,
-28120762, -45898168, -1476932, 5858336, 15331423, -2527588, -16998944, -3735548, 25613574, -5475547,
-53013856, 20474646, -15672336, -2489471, 1181116, -6862821, -19733228, -24125906, -17739288, 14422500,
--11622718, -5037460, -840740, 22858352, 9710384, -8509404, 9897752, 7079180, -701690, 2986613,
-3944928, -726923, 2854006, 23409720, 19272592, 18539226, 12565464, 1374926, -12116640, 5885179,
--9547175, 10983842, -14482630, 14886357, 22045530, 6994891, 28025198, 30152282, 12063489, -748398,
-15714748, 5065377, -3282429, -10215043, 16356309, -4817880, -13706851, -649077, 7754564, -4294431,
-6710350, 12661564, 4657892, -16997870, 13267154, -7965017, -9024800, -50678468, 16782584, 9417790,
-44518948, 38933340, -6155225, -14898168, -46563888, 971200, 15152108, -20182588, 14797773, 26678726,
-26025354, -12602508, 31398896, 27939836, 1066226, -17507360, -18607946, 28529320, 24475944, -35576824,
--48210472, 63318556, 3061238, -4929549, 8132521, 4301947, 23420456, 23081692, -9667435, -8470749,
-33001992, 15363098, -6138582, -22510998, 13205414, 2222646, 1617055, 11391864, 1496796, -1478543,
--13407277, 6995965, -4111358, -16688095, 29690036, -47916264, 32982128, 27014270, -45065480, -3586298,
-22814866, 5323612, 26052734, -6594386, 3588445, 23482196, -3237332, 11756936, -22239878, -35590784,
-98782640, -40916544, -56910464, -12920872, 110034376, 47040092, -46969224, -11117523, 19403588, 12944495,
--1034550, -28845538, 41366440, 22652194, 17346300, 3575024, -55889872, -9689983, 9090298, 16117939,
--22948548, -38489348, 3359201, 11476689, 5264020, -18450642, -18947786, 8593156, 5132486, 13222594,
--2516851, -5158256, -1339493, 14156212, 18734110, 12357695, -28078348, -11430519, 19913078, 14082124,
--14105746, -497679, 16263431, 28195386, 11316702, -15729781, -20444044, -27409944, 12767864, -9162239,
-11889543, -23266374, 12866648, 6029597, 14490683, -10974715, -5353140, -18803904, -7603166, 17390322,
-3444027, -15527917, 8415452, 26571352, 1834488, -2347737, 8236674, -4297115, 7337415, -19539416,
--12279311, 24871618, 43006580, 3105261, 71341016, -31465468, -11997454, 41420128, 2188823, -2230162,
--21094732, -42324756, 35420596, -22000434, -23912230, 18416282, -26557394, 13378823, -25169046, -27953258,
--4558571, 6265284, 4154307, -6493454, 33915748, 8573292, 20755966, 9996000, 764504, 640487,
--15047418, -32280438, 10558103, 32415192, -26185878, 22668300, -26693222, -2697240, -1269700, -41507100,
-29828010, -14325327, 11747809, 906775, -12027519, 797253, -29871498, 30993020, -21563420, 10408316,
--34805340, -21215528, -45721536, 17432198, -21250424, -24095304, -19297288, -9982041, 261456, 48963700,
-17731772, 24237038, -6453189, -22823994, -28701118, 7691213, 2015950, -49812492, -22962506, -87629144,
--41020696, -33876016, -4846871, -40376452, -33024004, -7312182, 32327146, 36575940, -29508572, -37627672,
--43013560, 21775484, 51991116, 2624762, 41865732, 1043677, 25389700, 10060424, 3303904, 12087112,
-4727149, -1038308, -14748918, 21441014, 18029736, 9496710, -17667348, -7169911, -2120103, 9136469,
-9953587, -3641596, 10783589, -4715874, -11775190, -21134998, 2903398, 29175712, 10832444, -3580392,
-8545374, -9569724, 15982110, -5877126, 20804822, 19729470, 2640331, -21547850, 3849365, 4603131,
-23554674, 5487358, 26734560, -17888002, -10583873, 24174224, 25593174, 6531572, -6282464, -4851166,
--24688546, 17993228, -11470247, -49838800, 12098386, 18000208, -43118788, 24362666, 5085778, -12295418,
-2886218, -11973832, -926639, 9646497, 12958990, 22520662, -25864294, 2851858, 30434138, -3043521,
--14092861, 27425514, -11638288, 2209761, -15779710, -6205691, -31787052, 8671539, 1047972, 18429168,
--12380243, 1659468, 22796076, -10344966, 631360, 23560044, -45356464, 3287798, -51962660, -16295643,
--34726420, 28258200, 10141492, -1726040, 11981885, -9925133, 13046500, 35829692, 9808632, 55450176,
--30459908, -34912716, 32728188, 9170292, -23577760, -22041236, -8883603, 20687246, -19315542, -421444,
--16673600, -21514564, 13066901, 16378858, -32333588, -18604188, 28241020, -159451, 10121090, -5732171,
-15579457, 7150584, 28499256, -16127602, -11993696, 7507603, 6742562, -7835631, -29323890, -21265994,
--23156854, 31617402, -14322642, -23871966, 7233262, -5995775, -7767449, -15621333, 6227703, 7497403,
--2451353, -4408784, -8482560, -14369350, -2376728, -2996814, -10532334, 732292, -5061619, -9753871,
-6311992, -5617817, 5820755, -5538897, -4807142, 15108084, -5676336, 7318625, 5349382, -13732084,
-6454799, 2198487, -5515275, -16726213, 23370528, 15579457, -6409702, 3930969, -11242614, -8344048,
-7235410, 124554, -14492830, 5455146, -5711233, 13629542, -3408057, -2152852, 2713883, 6519761,
-8381092, -33928096, -68576672, -34293168, -13076028, 29952566, 39062192, -74859672, 12891344, -29748554,
--40581000, -8353175, 46842524, 29925722, 25537338, -16174310, -18064632, -21615496, 23625004, 16641388,
-36460516, 4725538, -47383152, -18593988, 35606888, -5507759, 10442676, 31857384, -15253576, -22127672,
--34655556, -34747360, 215822, 22571126, 48830020, 36111012, 23973970, 9766756, -49953156, -53273164,
-18612778, -36773508, 8677981, 46838764, 18660022, 3122978, -23653996, -42508364, -7263864, -18355080,
-14259828, 11025718, 7975218, 29329258, -4568772, -5757404, 7742216, 21263846, 34607772, 35764728,
-12168179, 31839666, 10747619, 11387569, -7007776, -35820564, -14020384, -15582678, -29295436, 21986474,
-20639466, 15253039, 15274514, -6892886, -35170952, 5742372, 10529112, -643171, 23439248, 14978162,
-12297028, -2877628, 1631014, 3353833, 24140938, 24198920, 18474264, 5256503, -4424353, -17930952,
--3274376, 10296110, 3058017, -5377836, -61740, -14273787, -6562173, -8306467, -9278740, 7235410,
-26382374, 12830141, -4784057, -2774012, -19658602, -2153389, 6944425, 13178033, 14820322, -4787278,
--6254546, -30813706, -17675938, -4577899, 272194, 12191265, 10321343, -6188511, -7329899, 4824322,
-2022930, 3027415, 7627862, -8720931, -2981781, -1874753, 5102958, 8010114, 874026, -3031173,
--2198487, -13007845, -5825587, 21246130, -60298656, -121356984, -62639952, 11775727, 47407848, 115528712,
-113026360, 47100220, 48099876, 34542276, 1888175, -57513908, -97473744, -146879296, -43836048, -61434676,
--10685342, 59969556, 106871136, 89865208, 79356504, 43751760, -963683, -27954332, -37512780, -8003135,
--64978024, -51590072, -49019536, -32106492, -26359824, -12210055, -2287607, 22411676, 52709988, 54291072,
-53351548, 39080444, 50827716, 26985280, 29081224, -9468255, -2100776, -23938538, -62933620, -91154776,
--110159472, -53336516, -21460878, 17191680, -2813741, 11686606, 25649008, 33550138, 71507984, 82467128,
-109258600, 69724496, 7063074, 31891742, -16476031, -60276108, -52747568, -104989936, -122523608, -91559040,
--56610892, -24296630, -19173808, 44158168, 49837728, 138264128, 113198160, 82869248, 81096496, 38896836,
--4933844, -54839216, -79366160, -57891328, -69492032, -95386928, -45322644, 2703145, -9317932, 2779918,
-41749228, 58230628, 42998528, 22492744, 21738976, 37132676, 15833397, -2680597, -4431870, -18102214,
--3052648, -16143171, -42760156, -22537840, -31886910, -51730196, -9114457, -8914741, 41417444, 37811280,
-22722524, 40674952, 70277480, 50368156, -12336757, -8404714, -33891052, -30090004, -70749920, -73300600,
--35496296, -14901926, 6094559, 24972550, 29474750, 44007844, 50051400, 48461728, 50813220, 13042205,
--5191542, -26972394, -33055678, -43559020, -48322140, -48409652, -20918638, 10942503, 14495515, 21116744,
-21966610, 15342697, 16250009, 17115982, 5413270, 4038880, -5794448, -6003291, 10212895, -6893960,
--16899086, 960999, 3591667, -2177549, -5310190, -7254737, 11274, -2099702, -11901354, -5335423,
-3399467, 752693, 692564, 6895033, 8669391, 6432788, 5888937, 5429376, 2017561, -860604,
--650151, -1150514, -3672734, -3991635, -4283156, -3984656, -3019362, -1461363, -1915555, -720481,
-561567, 1687922, 3562139, 2763275, 512175, 661425, 1385664, -231391, -2813204, -3082176,
--1744294, 266288, 1528472, 2936147, 4476967, 4264366, 3550864, 2758443, 570694, -1788317,
--3802120, -5407364, -6338298, -7009924, -6852084, -4414153, -1014686, 2203855, 5254893, 7446400,
-8196945, 8385387, 6798397, 3476239, 151398, -3175055, -5397164, -6725382, -6990060, -5210869,
--3149285, -1306744, 863825, 2181307, 2552284, 2306398, 1945620, 1531693, 1122060, 799938,
-294205, 93416, 91805, 32212, -193810, -270046, -304406, -267362, -273267, -213675,
--190589, -200253, -191663, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--4538707,
--7080791, -5145908, 2013266, -771484, -12128451, -6881612, -520765, 1748589, -3726958, 1291711,
--4499515, 894427, -3251290, 8531416, -6935299, -3031710, -3047816, 5442798, 3751654, 8687645,
-2291365, 1818919, -3963718, 4108673, 522912, 1126355, -483184, 3301219, 4501663, 353798,
-4486094, 4277788, -2073396, 2400887, -2535105, -2803540, 314069, -2287607, 1440425, -3599183,
--6558952, 1788854, 2335925, -1606318, 1818919, -3109020, 2945811, 4042101, -6930467, 1373853,
--389768, 2627446, 2218351, 386547, -6842420, -2026151, -3012920, 2290291, -91268, 711354,
--2204929, 1290638, -3517578, 193810, 3790309, 2453500, 243739, -1918240, 1243930, -5563057,
--3154117, -4079145, 727460, 734439, -366683, 5935645, 10201, 5178120, 55298, 576599,
-460635, 13959, -2810519, 2124935, -191126, 1069447, -620623, 702227, 952946, -343061,
--998580, -342524, -319438, -257698, -189515, -1458141, 229781, 1588601, 863825, 59593,
-143345, -377957, -710817, 699006, -464393, -14031121, -466004, 717796, 178241, 2277943,
--4967130, 3607773, 2017024, -2619393, -8371428, 5466957, 5609764, -1351304, 4663798, 3358128,
--4650913, 9170292, 1892470, -4188667, 4919348, 329102, 4595078, 651761, -8034273, 3017215,
--1542967, -2992519, -3134789, -2459943, 5220533, 4037806, 304943, 4225711, 1515587, -4049081,
--5002027, -482647, -1187559, 2113124, 1431835, -3943854, 911070, 2009508, 1902671, -3471407,
--2909840, -4590783, -1624035, -1167694, 892279, -1147293, 6099928, 2590402, -970663, -3133179,
-1125818, 2517388, 1298691, 6560563, -1120450, 3288871, -412854, -2199560, -4025995, 2791729,
--928250, -1889786, 3845070, -1226213, 1266479, -897111, -821413, -4482872, 956167, -1295470,
-5210332, 6439230, -3916473, -3997004, -2804077, 1054415, -2518462, -1311576, -1632088, -1646583,
--1760400, 999117, 2393371, -194347, 604517, 681289, -272194, 38118, -1161252, -2619393,
--4123706, -9509594, -5674189, -2056216, 6857452, 892816, 1293859, 4199405, 1147293, 1814087,
--9963250, -9154723, -5822365, -1526324, -19327, 4230543, -2978560, 3310883, -1694902, -6156299,
-1940788, -900333, -4201015, -66572, 5930813, 8600672, 3916473, -3937411, 2326262, 275415,
-6216965, -27917, -4916127, -168577, -2861522, 6096169, 2685428, 2859375, 6189585, -1066226,
-471910, 8281771, 7257958, -271120, -12348, 570157, -436476, 2204929, 628676, -6031745,
--7989176, -2824478, -994822, 28991, -2632815, -8923868, -926639, 2477659, -4840965, -2368138,
--3145527, -2701535, 968515, 1148904, 2967823, -6218576, -4957466, 4803384, -2008434, -1082869,
-1012539, -366683, 3151432, -5988795, 2397129, 2225867, -2358474, -2280091, 2415382, -2614561,
-3837553, -1495186, 58519, 3221, -1480690, 760209, 2842732, 1571958, 341987, 1717450,
-507880, -777389, -1515587, -840740, -864362, 353798, 454193, -253940, -202937, 424665,
--115427, 12823162, -4811437, -3796214, -540629, 295816, -4685810, 120259, -3253975, 6206765,
--1418950, -7504382, -10476499, -2635499, -6912213, 9820980, 874026, 6990596, 5909338, -9166534,
--436476, 3952981, 2889439, 4986457, 998580, -521302, -753767, 2377265, -2977486, 3601330,
-2035278, -3224447, 2126009, 221728, 2468533, 5370320, -2774012, 2175938, -250182, 3098282,
-2694555, -1014686, 3680787, -948114, 3214246, -2318209, 2939368, -7416872, -3090766, -2665564,
-2197413, 6541235, -4662187, -3075197, -1661616, 461172, -2079301, -2801929, -1424855, 2687039,
-2219424, 3809636, -1146219, 2198487, -2108292, -2259690, -120259, -1332514, 2689187, 28991,
--3811784, 2262911, -2183454, -3786551, -1329292, -2332167, 1794223, -2747169, -7521562, -1018981,
--3192771, -3187403, 1757179, -2042794, -4484483, -874026, 1075889, -269509, 382789, 13959,
--2775086, 150861, 1629403, -1031329, -1095754, 363998, 51540, 607738, 599685, 1552631,
-546535, -1241782, 974958, -174483, -346819, -446677, -1175210, -1154809, -1200443, 2279017,
-3459059, -1179505, 5185636, -7807714, 3675955, -4616553, -5103495, 7796977, 2985539, -8926553,
-1074816, 182536, 2862596, -6389301, -4035122, -443992, -5142150, -9497783, -9180493, -6023692,
--9161165, 4119948, -831076, 1535988, 5176510, -8041790, 5522254, -2183991, 2660732, 1783485,
--688269, 966905, -1037235, -1052267, -5178657, -3067144, 7100118, -2443837, -5638755, -5201743,
--371515, -2270427, 2314451, -4968204, -7730405, 1324997, 7470559, -995896, 4587025, -2415919,
-2568391, -3817689, 3134253, 1338419, -5235565, 8031589, 1559073, -1552094, 1997697, 7392713,
-6864432, 3643206, -571231, -8009577, -1222992, -6658810, 2097018, -1378148, 1276679, 1278827,
-2035815, -6046240, 97711, -354335, 3119757, 6387153, -7718056, 1146756, -2154463, -7270306,
--682900, 2246805, -601832, -84826, -555661, 2516314, 628676, -2048699, -1312649, -1459215,
--787590, -2459406, 243739, -128312, 1583232, -2985002, -1996623, -154619, -251256, -302795,
-301185, -158914, 653909, -1037772, -988379, -222801, -30602, -737124, -41339, -146566,
-1531156, 1341104, 144418, 100932, -1250372, -2234994, -649614, 181999, -1923609, -1172526,
--819802, -686121, -692564, -8863202, -8484171, -5458904, -9358734, -11124502, -10591926, 4708895,
-5137318, -6764574, -1669669, -6110665, -10057203, 5621039, -2518462, -8715562, 3206730, -456340,
-612033, 1046898, 3171297, 1132798, -159451, 2427730, 3227668, -4954245, -4738960, -1177358,
--5813775, -282394, -6206765, -10878078, -716186, 6810745, -7819525, -5977521, 4481262, -4072166,
-656593, 1832877, -3954591, -3179887, -3329674, -11737609, -4991289, 2683281, -3244311, -3803194,
--7333120, 3471407, 6828461, -2287070, 10449119, -5575942, -2540473, 77846, -2338073, -8582955,
--466541, 2115272, -140660, -1713692, -7453379, -1135482, 7629473, 3888019, 2354716, 3994857,
-2922725, -1857573, 14457934, -4387309, -5407364, -5182952, -6197638, 2631741, 8281234, 5657009,
-774705, -1217623, -3953518, -1367410, 30065, -1825898, 499827, -2485176, 1152125, 6058052,
-4011500, -2834142, -467078, -967978, 2308008, -1144609, 2499134, -2388539, -1093069, 459562,
-633508, -530428, 956167, -1347546, 1706176, 142808, 1378685, 1083406, 887448, -619549,
--985158, -221191, -995896, -1271310, 15904264, 10783052, -620623, 9838696, -962610, 1341104,
-1779190, -5559835, 8952322, -15569, 7881802, 7566122, -6340983, 9862319, 19327, -7715372,
--12682502, 11347304, 5414880, 11273752, -9679783, 6431177, 3402688, -10611790, -10521596, -6250251,
--3093450, 10864657, -10594074, 9147207, -1047435, -1141388, 6512244, 6180458, 8410083, 3045132,
--4840965, 4079145, 7892540, -4986457, 7888781, 12135967, 5042292, 7323456, 2920578, 1993402,
-1919314, 209917, -6835978, 2359548, 506269, 386547, 5445482, -4071092, 3178813, 3651796,
--1801202, 10587094, -6442988, -3905199, -2590402, 9134322, -1856500, 7529078, 3676492, 5060545,
-4445828, 804770, -13223667, -2112050, -10637560, -5764920, 13404056, 7004018, -6245956, -447750,
--7657927, -6772627, -3672734, 11220602, 825707, 3813931, 2024003, -1842004, 2137283, 3976066,
-6901476, -2074469, 3962107, 2916820, 2384781, -2499671, -1729261, 1060857, -1439351, -116501,
-1753420, 2559264, 909996, 1078037, 2972654, 3031710, 973884, 44560, 1336272, -705448,
-2495376, 4038343, 1763084, 76236, 4301947, 469762, -2141578, 1840930, -14089640, 8873939,
-8522826, 25238302, 981937, 2165737, -1275605, -3488587, -1657321, 8516920, 7778723, 6754910,
-9813463, 3950833, 15501611, 4503273, -6147709, 1444720, 13512504, 5296232, 1370095, 2055679,
--6950868, -10046465, 6410239, -5018133, -9791989, -20797306, -326954, 8192650, -629750, 4803921,
--7177964, -3868692, -2677912, 1480153, -2267206, -6291590, -3026341, -16779900, -4350265, -14257681,
-1208496, -7556995, 5710159, -8222178, 3111167, -7910793, -2699924, -588947, 253403, 1107565,
-1603633, -10458245, 5027796, -1668058, 2318209, -5522254, 168577, 8152922, 3354370, 11308112,
-6426882, -3608846, -648003, -2479807, -1137093, -2808372, -3605625, -308701, 4724464, 2904472,
-3522947, 2107218, -16305843, 10653666, 10631118, -4102768, 6108517, 4605279, -8593693, 4024921,
-2638721, 410706, -1784559, 1369021, 5635534, -5048734, 3309809, -1524177, 341450, -521302,
-1291711, 2845953, -2433099, -1259499, 4210679, -3077881, 277025, -9664, 1644436, -2061047,
--3396246, 1981591, 212601, -1228361, -958315, 383326, -42413, 1835025, 2379949, 2426120,
-123480, -2894271, 622233, 27145804, 9736154, -4624069, 13368086, -8908299, 9299678, 6161668,
--12891344, 2657511, -16197395, 253940, -5555004, -11425150, 5995775, 131533, 4571456, 6582575,
-8180839, 13179644, 5457293, -1014686, -3497177, -9096741, -16327855, 5696201, 6295349, 1695438,
--5746130, 8713952, 1075352, 9211094, 5449777, -17023640, -6506339, 2214593, -12545599, 574452,
--964220, -2437931, 3604015, 2687576, -3008625, 12433393, -7290707, 428423, 6941204, -6228240,
-4746476, -2756295, -7648263, 5017596, -127775, -1045288, 7135552, 4701379, 202937, -3803194,
-14842333, 602906, 8322036, 781684, -4705137, -5230197, -12556337, -4889284, 5158793, -391379,
-4394289, -1474248, -9795210, 3831648, 3160559, -14332306, 4096325, 7306813, -3864934, 7798050,
-1797444, -8157217, -8300025, 9309342, -238371, -18798534, 2300492, 1969779, 753767, -1955284,
-1069447, -2623688, 435402, 5551245, -1749662, 850940, 1377074, 1607928, -4754529, 1381369,
--1720134, 1258425, 3454228, 3645354, 2627446, 1239098, -3131031, 1367410, -302258, -321049,
-1221918, -3496104, -73014, 2330557, 3216931, -2196339, -1344325, -4086125, 688269, 4213900,
--4207458, 1668595, 1467268, -28348394, -9454297, 29496762, 8142721, 4657355, -4514011, -857383,
--4609037, 5967320, -9622874, 12861816, 7327751, 5998459, 6160057, -4637491, -514859, -592169,
-4089346, 8639327, -13156022, -7827041, -4249334, 9888088, 3523484, 5490579, 5901822, -1422171,
--9453223, 3019899, 664109, 18001282, 14141180, 3680250, 10722386, 534187, -5273146, 2182380,
--1563368, -2532420, 6885370, 8498130, 6969122, 17418776, 8369281, 6801618, 7603703, -7976828,
--13053479, -6140193, 5846524, -11120744, -5548561, 10710038, 11401528, 6243809, -5262409, 10103911,
--4071092, 1059246, 2357400, 5784247, -3059627, -6380174, 3555696, -5757404, -17980344, 733903,
-5715528, -9804873, 1199907, -1802813, -2606508, -1829119, -5871221, 14527727, -1598265, 8287677,
--20965346, -19907174, -16905528, -7712688, 1634235, 2006824, -628139, 1114544, -435939, -4473209,
-2097018, -4913443, -1520418, -2172180, 5010616, 776315, 1758789, -3950296, -809601, -3519189,
--1352378, 2739652, 4313221, 4697621, 4451197, -91268, -3129958, 2443300, 3908420, 2449742,
-3889630, 1367410, -474594, 1657857, 475668, 798864, -1295470, -2753611, 3116536, 3569655,
--1286880, -1051193, -899259, -620623, 14702747, 23036058, -33592548, -4643934, 2147484, -128312,
--3906810, -8283382, 9373229, -10670309, -17022030, -1620813, 16893180, -2275796, -9658845, 3234110,
--13567265, -7322383, 682900, 8919573, -14226542, 1716913, 15816217, 16205985, 557809, 5816460,
-14192183, -7916699, -12412992, -17430052, 1842541, -17374754, -3595425, 7482370, 7068443, -15362561,
--14463302, -8763344, 6433324, -3998078, -2585034, -3950833, 14099304, -20620674, -5920076, 3338800,
--11035382, -3745212, 184147, -12970801, 753767, 5490042, -565325, 17257716, -1013612, -6838125,
-1603633, -761283, -5483600, 3396246, 8588861, -7704098, 12185359, -5841693, -22255984, 1155346,
--8594230, -4697084, -471373, -2296734, -29407642, -4862977, 13703093, 11800960, 8338679, 17743046,
-18127984, -24224690, -2578054, 1665374, 5210332, -6971269, -11958263, -130997, 5646809, 6578816,
-5696737, 4415227, 2215130, 3579318, -6342056, 130460, 4034585, -1952600, -1353452, 816044,
-1410897, 3595425, -3727495, 805843, -1422171, 1732482, 2426657, -5101885, 891743, -442382,
--3425237, 1609002, -679142, 770947, 300648, 0, -4369593, 2389613, 451508, 1287953,
--2867965, -2166274, -1857573, -1904818, -32270236, 8995272, -6011344, 10983305, -10332618, -125628,
-16866874, -5662915, 23968602, 5493263, 4616016, -10329396, 4533338, 11861626, -7322919, -1512902,
-15506443, 9966472, 11674258, 1623498, -17919678, 11370926, -11565810, -1110786, -6966974, 1744831,
--8896488, 5153424, -2308008, 5020280, 4829154, 8542153, 8717173, 9615895, -11418707, 2698313,
-18298708, 3866008, -3253438, -3700651, -9146670, -7436736, -6442, 638876, 3323768, 15337865,
-1363115, 8444443, 8260833, -616865, -3876208, -3779034, 13997835, -16335371, -3498788, -14461692,
--11832635, -3379603, 150861, -24239184, 6343667, -7650411, 14875082, -3114388, 704375, 10238128,
-2164127, 24798604, 20584704, 29546690, 11258183, 1207960, -3371549, -3051574, -4922033, -1503239,
--5864778, -16345035, 11112154, 13456133, 6514929, -2258079, 1586454, -11528766, -15532212, 7199976,
-2011118, 2106145, -4950487, -2204929, -5376226, -3005940, 4875325, 1536525, 6365679, -463320,
-1473174, -3650722, 4464082, -12984760, -3341485, -506269, -446677, -2484102, 2345052, 540092,
-905701, -945430, -3081102, -685047, -1241782, -916976, 4103841, 427886, 573378, -2709588,
-938987, 597000, -131533, -5820218, -4121021, -4535486, -9561671, 12636331, -3831111, -2887292,
-29624536, -6236293, -6636798, 32947230, -569083, 18701898, 13780403, 999117, 7690139, -4548371,
-6010270, 5626944, 3545496, 4544613, 15179488, -10644540, 18312666, -10252624, -406411, 3656091,
--2580739, -13466333, -12016782, -473520, -19449222, -6305549, -21237540, -1580548, -12652974, -9521942,
--6969122, -6164352, 3064996, -17133162, 19652696, 2973191, -12910135, -9699647, -696858, -2609193,
--3227668, 4980015, 2624762, 19284404, 2142115, -348966, -10003516, 1506460, 3936875, -857383,
--10664404, -4713727, 12097849, 13153337, -871342, -11415486, 4532264, -2353642, 17243756, 19165754,
--7619272, -5125507, -3647501, 2058900, -7494181, 7668664, -24099062, -2387465, 28307056, -25747256,
--12705587, -6069326, 1759326, 2134062, 3307125, -2451890, 7521025, -4674535, -1360431, 13688061,
--2258079, 9883257, -6861211, 9956808, -8915278, 6777459, 5552319, 13584445, -367220, -2455648,
-5711233, 8895414, 720481, -2297808, -1502702, 783295, -4989142, -1631551, 4539244, 5959267,
-1835562, -2112050, 5836324, -4760435, 4780836, 3927211, 4355634, 2308545, 78920, -7345468,
-7167227, 4149475, 3273839, 1457068, 3338263, 6207839, 1378148, -5111011, 2401961, -4189204,
--3205656, 5116917, -1357747, 4413079, 4846334, -2053531, -3617436, -3609383, 1999307, -17324288,
--9508521, -2730526, 13357348, 16112570, 11028939, -10291279, -26385058, 45602888, 11445014, -28652800,
--28760712, -4323422, 6921877, 19413790, -25028386, -4428648, 4631049, -376883, -3631395, 26131118,
-5572183, -15362561, 8157217, 1067299, -773094, 13754633, -2551748, 7513509, -17081622, -5781563,
-29903172, 11054709, 23571854, 7445863, 21306796, 3728032, -7884486, 15007689, 13637058, 21441014,
-10515691, -24218246, -9227737, 5238250, 12472048, -9726490, 3646427, -9370545, -15705622, 1586990,
--1857037, -9364102, 7237557, 10153303, 8761196, 6443525, 5990943, -4607963, 16158741, -117575,
--16151225, -11679627, 14527190, 7916699, -25338696, 11013907, 4440460, 8148627, -22147536, -15085536,
-14159433, 21971978, 12359305, -4910758, -23680840, 5372467, -1095217, 20178830, -6777996, -27064736,
-11306501, 15836618, -6040335, 16483011, 13488882, 5617281, -10871099, 1457068, -191663, 3203509,
-1137630, -692027, -5806259, -2375117, -7274601, -702227, -1475858, 3826279, -4461398, -2596308,
--1529545, -3252901, -2064269, -1700807, -2062121, 8457864, 2481417, 163746, 8127152, -1963337,
--7748658, -5106716, -4170950, -3259343, 316217, -5544266, 2323577, 3497714, 2852932, 2234457,
--7435662, -2790118, 6181532, 5215701, -794032, 4033511, -884226, 10644003, 21030308, 7952669,
-22215182, 3515431, 10053445, 7428683, 37172940, 50676320, 3726421, 9943923, -32666984, -10545755,
-19346680, -16762184, 38293392, -7917236, 5817533, 10139881, 22317724, 12278775, -5640366, -16601659,
--19435264, -6570226, -3417720, -24285356, -11660299, -9809168, 15160161, -9188546, 4326643, -15660525,
-1785096, -6303938, -22767622, 23140746, 15946140, 18582712, 8018704, -11719892, -11389716, -26425860,
-208843, -23842974, -7446400, -2252710, 2835215, 11836930, 9247601, -7907035, -5714454, 9762998,
-21831318, 5692443, 8172786, 15891379, -20847234, 14323716, -11964705, -11046119, -21048024, -9347996,
-9210020, 7778186, 1037235, 24025510, -5602785, -9256191, 3430068, 6099391, 33058900, -11223823,
-13077639, 12917651, -32349694, -217433, 3712462, -7318625, -5018670, 10829223, -6657200, 689342,
-13287555, 6766721, -20026896, -23933706, -23166516, -10958072, -8811662, 18817326, 16322486, -4811437,
--7570417, 723165, 1807644, 12328167, -1723893, -4187056, 7495792, -1685238, -1608465, -3547643,
-5342940, 7501161, -4417911, 7169911, 6674379, 6927782, 950798, -3264712, 6007049, -4602595,
-3472481, 7829189, 278636, 4578435, 6128919, -11171210, -795106, 5105106, 5639829, 7801808,
-624918, 6960532, 57982, 238371, -2790655, 3899830, 5719286, -21352430, 5792837, 32262184,
--7211250, 5024575, -13913547, -3723200, -18668076, 15478525, -27014270, 1626719, -21687974, 4732517,
-9777493, 3798899, -12847858, 45575508, -2837900, -5698885, 4439923, -25339234, 1809792, -16994648,
-928250, 5274757, -4882304, -198642, 10970957, -9048422, 730144, 14078903, 1439351, 3863860,
--21815212, 3224984, -1554778, -970126, -5292474, -27046482, -14971182, 7203197, 2554969, 12613245,
--31512176, 3893925, -29309394, 15444702, -19894826, -31876710, 16661789, 30225832, 5434208, 15092515,
--22017076, 22540526, -5184563, 3747359, -13393856, 18857054, 7704098, 19567872, 6288906, 23649164,
--20719996, 4478577, 1443646, -3130494, -16373489, -13107703, -15375446, 18249316, -4456029, 24634322,
--14731201, -11027865, 2976949, 3712462, -13151727, 7472706, -7627325, -30947386, 14090714, 21350282,
-34866008, 12618077, 24805584, -13660143, 303869, -15461345, 26551488, 9400073, -4785131, -9936944,
-12736189, -8442295, -2281165, 1887101, -7686381, -12830141, -8680129, -5780489, -5078799, -17258252,
--7520488, -14282377, 11694659, -2247342, 7042673, 13946296, 3753802, -9509058, -747324, -9507984,
--4124242, -14503031, -8138426, -15378130, -2586644, 26863410, 5563057, -1359894, 6100464, 8521752,
--14957224, -6306086, -673236, -1354525, -6083285, 7350837, -2778844, -22499724, -1787780, -4619238,
--16712255, -52698712, 6593312, -16765405, 48978196, -9096204, -24561844, 9909563, -1298691, -24491514,
--4090420, 4184372, -14683956, 36981280, 5359583, 3625489, 16864726, -20664162, -31808528, -19602230,
-45151380, -3516505, -9450539, 29828010, 16905528, -14121316, -13986024, -7882339, 35824860, 5070209,
--8590471, -13901199, -6621229, -27829240, 18937048, -3192771, 7749195, 17994840, -6219650, -28831578,
--3411278, 37297496, -1470489, -9244917, 18081812, -8114267, 22410066, 14665166, -1755031, -27486180,
--13885092, -3739306, -25333328, -14916958, -14527727, 2026688, -3340411, 21535502, -14799920, -5164162,
-82141, 55319716, 19405200, -9499931, 11383811, 6538014, -3054259, 28097676, 13859859, -10616085,
-4614943, 22714472, 25872882, -15649250, -10945724, -37547676, -29917668, 17164836, -11020886, 18527416,
--256087, -22081500, 5659693, -1753420, 7274064, -14698452, -10936060, 20779052, 5538897, 2743947,
--1773822, -2445447, 14103599, -6644852, 7416872, -3555159, 8927626, 17441862, 4966056, -12652974,
-2412698, -4882841, 9858024, 7824894, 2954938, 11333882, 18041010, -6985228, 14632417, -1424855,
--18552112, -4942434, 995359, -10635413, 4663798, 13739064, 152471, -7034083, 1278827, -2636036,
-18421652, 15361487, 2021856, 7238631, 9731322, 4781373, 12492986, -15475841, -10975789, 5451387,
-3610994, -3342022, -839129, -2523293, -5751498, -5671505, -59665684, 20492900, -12767864, 31759672,
-32293860, -18711026, 15251429, -31954556, -47979616, 1174137, -33742872, 4438312, -4220879, 26109106,
--19382114, 18627810, 15987479, 26184804, -39866960, 4347044, -24399172, -22367116, 2421825, -28874528,
--18619756, 26197154, -7647726, 9942312, 30600032, -6078453, 10077067, -25223270, 2901787, -27810986,
-25773562, -23057532, -15301358, -17025250, 28747826, 23024246, -16502338, 31487478, 20863340, -6682969,
-31263604, -1762547, -33080374, -9163313, -3900904, -25800406, 5804112, -54563264, 5469641, -13903883,
--26179974, -21169894, 24373940, -14595373, 50538880, 37524592, -56516936, -16106, -1485522, 2669322,
-26112864, -44410500, -30953830, 30469572, -25446608, -31831076, -36612984, 2421288, 75145824, 37306084,
--34999688, -22077206, 3025268, 27300960, 10436234, -36634996, 5411659, -24497420, -14388140, -1362042,
--4436701, 1343251, 24091008, 5633924, 14267881, 9411884, -28178206, 7481296, 12586402, -4059818,
--10187662, 1398012, -24061480, 21279416, 7706245, 5742908, -31903018, 5207648, 16364899, 4520990,
--7588671, -6077916, 14052059, -23363548, -1570347, -17464410, -9659381, 22618908, -24142012, -1140314,
-14258218, -12239046, 11157251, 13484587, 3465502, 1860795, 9933186, 3079492, -12901008, 18486612,
--14527190, -11521250, -6650220, -19979650, -6320581, -17973364, -17215840, 6936372, 28186260, -31224412,
-15722265, -52467856, -7862475, -20404852, -17782238, 27810450, -35842040, -55927452, 32715302, 49251464,
-11962558, -9517111, -44678396, 3056406, 17539572, 17523466, -7461432, -17907866, 2278480, -4409858,
--5819144, 5711233, -6555194, -14999636, -29249264, 3723200, -17586818, 4376572, -15762530, -33386928,
-20784958, 15277199, 25548612, 904091, 27628450, 15466714, 4189741, -8943733, -14064407, -22987202,
--16363825, -9241696, 6570763, 15865609, -10587631, -5178657, -38012072, 35737884, 42378980, 23569170,
--21518860, 22617298, -29403882, -441308, 6848862, -64404108, 5340255, 6442988, 30535606, -38409892,
-49718540, 19549618, -35465692, -20085952, 15052250, -6129455, -25956098, -31865436, -34314640, -46848428,
-34652868, -14681809, 5547487, -71670120, -28448252, 4539244, 897111, 16594680, -11325829, 3046206,
-12363063, 13018583, -34179348, -7727183, 5688148, 19157164, 13906567, -2807298, -13063680, -5470178,
--2743947, 17903572, 3129958, -10949482, -1216550, -8471286, -3234647, 16576963, 7633768, -7954280,
-17629230, -17282948, -10117332, -12849468, 17044578, -6559489, 2147484, -7610682, 7517804, -24097988,
-3720516, 10353019, 3958349, -4052839, -10492068, -8917963, -12298639, 12526809, 2765422, -3882114,
--14103599, 14939507, 927176, 1306744, 2188823, -24512452, -12061879, -15955804, 2180770, -7946763,
-185757, -305480, -5672041, -13698261, -4964446, -48968532, -6461779, 17964238, -22956600, -21367462,
-20340428, 20637318, 4254165, -19288162, -66320200, -9660455, 13062069, 8020852, 28865938, -525597,
-16806744, -4223027, -358093, -8247948, 1300301, 17693118, 2083596, 835371, 17126718, -4440460,
--4077535, -22327388, -2033130, -3488050, -2481417, 3986267, 13652090, 18741090, -3633006, 134218,
-14622216, -3173981, -28127204, -1800128, -24974162, 3774740, 3404299, -32613298, 23746874, -44986024,
-10093173, 12565464, -19809462, -1245004, 58496916, -16416976, 19724638, -12202002, 10418517, -43676060,
-4681515, 25816512, -739271, 22301618, -5212480, 2472291, -1493575, 28464896, -18279380, -21698712,
-25027848, -23018340, -28726352, -190589, -45835356, 30701500, 25271050, -8977019, 9685151, 4409321,
--392453, -38765300, -6542309, -2784750, 17029546, 6638946, -16574816, 15669651, -1271847, -19637664,
--13624173, -12128988, 2462090, 2908767, -2892661, -227096, 12251394, -12068321, -3743601, 8808978,
--13330505, -6842957, 9867150, -13207561, 647466, 12184822, 499827, -3078418, 4922033, -181462,
-910533, 10698764, -4084514, -2860985, -8252780, 3790309, -5334350, -4467303, 4236449, 6054830,
--11534135, 2179159, -10808285, 10498511, -12272332, 7036767, -476741, -1708860, 779000, -2166274,
--1817845, -19864, 7777112, -23987930, -73078328, -34213708, -11205570, 24230594, 54320600, -49236432,
-11104638, -14062260, -49634252, -6721624, 45150844, 12339441, 37249176, -30925376, 9575630, -10531797,
-2485176, 22080964, 3997541, 12121471, -6751152, -63351840, 19178640, 3396782, -26688926, 28000502,
-21489868, -18956376, 19893214, 2624225, -20390358, 6627135, -12470438, 40068824, 5220533, 16392816,
-1110786, -40548788, -32353988, -10740639, -23882702, 26847840, 38522636, 39523364, 31940598, -10652593,
-4764193, -31805844, -4480188, -2950643, -13143674, -16631187, 3091840, 3376381, -43731892, -12639552,
--16874926, -937377, 20117090, -21425444, -4640712, 7899519, 414464, 22970558, -24782498, -756451,
--28121836, -14709189, -20691542, 11868605, 7949985, 22938884, -2694555, -2100239, -26480084, -7798050,
--12378633, -3128347, 11713986, 15781857, 32285806, -20228760, 6183679, -17497160, 6742562, 12199318,
-3706557, -9525164, -3624953, -3194382, -3624416, -1213865, 8793946, 9095130, -2153389, -814970,
--3900367, -6059125, 4465692, 9046812, 3358128, 1204738, 2756295, -7220914, -8301098, -7890392,
-13771813, -163746, 9642202, 7866770, -909996, -10231686, -10834055, 1880659, 3506841, -8456791,
--2400350, -7334731, 5953362, -5258651, 2281702, 1792612, 6211597, -2743410, -3054259, 1633698,
-2497524, -4263829, 7110319, -2177549, 19105626, -30830348, -121703264, -64164664, 13172665, 51219632,
-114591872, 87570624, 49325016, 16630650, 25727928, -8135205, -48189532, -93174480, -123993024, -31337156,
--35940824, 1897839, 60385092, 86178520, 57752816, 77220288, 17756468, 16400333, -9041980, -39003136,
--44241384, -35714264, -38022272, -46937552, -37701760, -16054588, -2447058, -521839, 30089468, 39140572,
-74691088, 35370668, 11591043, 30744986, 47650516, 15270219, 9059160, -38408280, -52714280, -86009944,
--39831528, -45074072, -32727650, -19371914, -15324443, 6454799, 10546292, 36277440, 74050072, 59708100,
-65000036, 48262548, 58961848, 44014824, -35582192, -32464048, -82111720, -63447404, -46581604, -104387032,
--80897320, -49344880, 3835406, 63433444, 60270740, 71427992, 89089968, 76366128, 40976672, 49604724,
-1864016, -19270982, -52425980, -75872744, -76413912, -62860068, -37953016, -8052527, 10757819, 18524730,
-21046950, 35385160, 25367150, 41372884, 25989920, 10437844, 6619082, -1466731, -4181688, -868120,
--28667296, -19815906, -4160213, -13150653, -34224984, -9456444, -12373801, -12564390, -2500208, 25604984,
-48035452, 40076876, 4064113, 39395588, 27524298, -5022965, -32482838, -51059644, -47750908, -21428128,
--23732916, -14615237, -8351027, 13702556, 29678224, 41531796, 46878496, 34027416, 13070122, 14641544,
--9213779, -25589952, -43557948, -38709468, -17411798, -1605244, -12922483, -4015258, 12237972, 15978889,
-16116865, 15695421, 3747896, 6608344, 9700184, -1612223, -9331890, 394600, 2905009, -6543383,
--7796440, -976031, 2539936, 2194728, -5126044, -2423972, 1670205, 823023, -4494684, -7101192,
--5733245, 2141578, 367220, -326418, 4235375, 7963406, 5893769, 6070937, 4129611, 3320010,
--449898, -2192581, -3786014, -5168993, -4513474, -1536525, -3647501, -3114925, -2700998, 2882460,
-3309809, -974421, -1578937, 3125663, 1773285, -330176, -514322, -775778, -2226404, 1753957,
-2387465, 1235340, 2127620, 4174708, 4228396, 3777961, 288300, -1224603, -2450816, -3696893,
--7072201, -8356933, -7110319, -4737349, -3775276, -171799, 3756486, 6982543, 8635569, 9871445,
-8543227, 6291054, 2726767, -198105, -3752728, -6447820, -7882339, -7201050, -7425462, -5027259,
--2384244, -386547, 1818382, 4675072, 4961224, 4671851, 4155381, 3485903, 1632088, 64425,
--1084479, -1148904, -1413044, -1456531, -1502702, -1081258, -809601, -424665, -227096, -66035,
--11811, 140660, 194884, 243739, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--1551020,
--2209224, -4245575, 2480881, 3969624, 7040525, 1901597, -4946192, -8794482, 1906966, -4108136,
-347355, 2762201, 1071594, 7117835, -5888937, -1448478, -804233, -464930, -5056250, 3114925,
-1314797, 651761, 132070, -2465311, -1902671, -1784559, -581431, 250182, 1185411, -1858110,
-2705830, 6375342, -208843, 2834679, -4523675, -2618856, -5413270, -2604898, 5737003, 279173,
--1178432, 1025960, 6085969, 661962, 3057480, -763967, -2866354, -890669, 3470871, -2982855,
-5450851, 3367791, 6146635, 3045132, 383326, -1876901, -4088809, -2254858, -3555696, -540092,
--2597382, 1031329, 219043, -1386738, 893353, -1190243, 2193118, -542777, -615791, 3118146,
--318364, -214748, 406411, -3003256, 1362578, -2196339, -3561602, -2038499, -1571421, 1553704,
--302258, -238908, -4039417, -661962, 1041530, 801548, -1610613, 159988, -1592359, 718333,
-1122060, 853088, 308701, -269509, -654446, 196495, -1256278, -663572, 264141, 196495,
-542777, 549756, 488016, 121870, 1145683, -12268574, -2776160, 5037997, 885837, 6866579,
-3664144, -5645198, 1493038, -118648, 2251100, -2019172, -9420474, 5443871, 3335579, 6237367,
-7793218, 6711960, 2353642, 94489, -9598715, -986769, 4410395, -4374424, -3796751, -10022306,
--671626, -1674500, -1158567, -2549063, 1189169, -5981816, 2731062, -1046898, 2534031, 747861,
--4022237, 3107409, 2592550, 6955700, -808528, -5567888, -2876018, 3016141, 1213328, -1392106,
-289910, 2221035, 289910, -4068408, -37044, 858993, -432181, 259309, -2567854, -1125281,
--3419868, -703301, 4212826, 1506460, -1438277, 1800128, -546535, -216359, 639950, -4886599,
--448824, -242129, 2734284, 5291937, -1564442, -533650, -3413425, -2643552, 1351841, 6021544,
--5328444, -834297, 1368484, -289373, -1446867, -92879, -1410897, 1960653, 2058363, 1087701,
-3346317, -1591285, -1029182, -343061, 787053, -765578, 139050, 541703, 452582, -404264,
--1431835, 1040993, -1426466, 6778532, 2537789, 2284923, -2285996, 170188, 628676, 641561,
--11665131, -6311455, -538482, -2907693, -3617436, -187368, -3047279, -11868605, 7058779, 1618666,
-3189550, -1255204, 2423972, -3142306, 139050, 419833, 6099928, -2179696, -1298691, -1028108,
--1044751, -983548, -443992, 6616397, -1293859, -105227, -3783866, -217970, -1832877, 2145873,
-1077500, -6423124, 4963909, -6501507, -136365, 5688684, -828392, 205622, 421444, -139050,
--3992709, -2836289, 6526740, 3773666, -8117488, -4338991, 1268626, -4766877, -3466576, 3460670,
--5846524, 1125281, 1398549, 3326989, 6950868, 5331128, 3251827, 2487323, -4760971, -4956393,
--4252018, 1368484, 6045704, 2334315, -1054951, -2715493, 1971390, -2297271, -1014149, 1402844,
--2263448, -3414499, -475131, 2721399, -512175, -2333778, 292058, 13422, 2642479, 1098975,
-2440078, 550293, -1144609, -1165010, -942745, -492311, -328028, 780073, 1526324, 1826972,
-1912871, 8913131, -2177012, -2272575, -2666101, 2516851, -2983392, 4360466, -8446053, -1078574,
-6272800, 3285650, -6351183, 4706211, 7723425, 7289097, 4649839, 894964, -285615, -4760971,
--6140193, 2609730, -586800, 6161668, -479426, 3686156, -3834332, -2550674, -2055679, 613107,
-1966021, -346282, -7499550, 1585380, 2602750, 1890323, 3238405, 1987496, -4068408, -10023917,
--3224984, 1470489, 1937030, 474057, -426812, 1904281, -4110284, -65498, -7467338, 3492882,
--7704635, -2030983, -3265249, -5070746, 3703873, 1637456, 1571958, -4427575, -2151242, -1302449,
--4439386, 420907, -374736, 2374580, -1901597, -3739306, -2852395, -8871792, 2820720, 1028645,
-3813394, 5620502, 7179575, 2801929, -2826089, -4226785, -1993402, 3900367, 3892314, -4405026,
-4806606, 204548, -3122978, 6928319, -1342177, 1562831, 1176821, 2032593, -122407, -1547799,
-450435, 2153389, 774168, -340376, 2333241, -1221381, -955630, -1692217, 800475, 210453,
--864899, 1275068, -1236414, -2229625, -935229, 1690070, -406948, -388695, 608812, 4382478,
-4043712, -784368, 2841121, -8684961, 946503, -4186519, 385473, 1208496, -5479842, 1901597,
-15779173, 1657321, -1464584, -8994735, 12690555, -103616, 5293547, 558883, -329102, -7007776,
-6670084, 1652489, -3782793, 804233, 448287, -2843805, 2661269, 7019051, -2125472, 7468412,
--2294050, 3150359, -179852, 4897874, 4361540, 4876936, -4832, -2778844, 3823058, -2924336,
-3360812, -1057636, 3388729, 3272765, 3153580, -497679, -1046361, 1207423, -2847027, -4112431,
--10363219, 6653441, -6721087, 4578435, 537408, 1880659, -1259499, -12372727, -2719251, -3400540,
--6045167, 731755, 3668439, -7977902, -2554969, 3480534, 600759, 5501853, 9692131, -349503,
--2695629, -2414845, -10190347, 3025268, 1904281, -2348810, 476205, 3940633, 4072166, 1111860,
-997506, 2829310, 280784, -530965, 4292283, 2477123, -2443837, 4363687, 3198140, 4282083,
-1287953, -827855, 261456, -368830, -345745, -1697586, 519691, -1064078, 962073, -1322850,
-1985886, 647466, 146566, 1603097, 100932, -595927, 427886, -448287, -193810, -663572,
-1979980, 1158031, 369367, 1362578, -502511, 2218351, 257161, 654446, -275952, 549756,
--376883, -1408749, 541166, -4469451, -5405217, -499827, 2949032, -1711545, -2596308, -3929895,
-1180579, 7228430, 3253438, 1162326, -16343961, -7483444, -2257542, 3378529, -1930588, 5567888,
-18703508, 5841156, -6836514, 1097901, -8092792, -2597918, 5709622, -6429029, -1619203, 8366597,
-2032593, -2051921, 1205812, 4748087, -2814277, 2321430, 2496987, 2484102, -4617090, 2157147,
--2152316, -2610803, -6832219, -2626909, -3987877, -7589207, 3352759, 305480, -505196, 7746511,
-5638755, 2019172, 6197101, 82678, -7824357, 6643778, -738198, -5319317, -4224101, -7743826,
-361314, 9432285, 646929, -4081830, 3992709, -6937446, -4371203, 3668976, -5652177, -7473243,
--3951370, -2318209, 4242891, -6594923, -2055142, -3039226, 8548059, 1290638, -2970507, 4253628,
--2572686, -3058554, 477278, 6833293, -1282048, 511638, 3738232, 2209761, -8657580, -264677,
-5260261, 2574296, 3058017, -636729, -1695438, 3947075, -2332704, 738734, -1917703, 1176821,
-1433982, 2077154, -4407174, 99321, 428423, 1177895, 237834, 122943, 2018635, -307627,
--425202, -1855426, 1471026, 2113661, 5730560, 4150012, -10581189, 10111964, -3759170, 966905,
--4605816, 8666170, -1188632, -5775121, -18924162, -2491081, 9874130, 2475512, -14746770, 6777459,
-23622, -2987687, -4706748, -3801583, -1427003, -8752070, -1450625, 7147900, 9287330, 11054172,
-6718403, 10084046, -3258807, 7952132, 3843996, -15571941, -337155, 4105452, 5575942, 2746632,
--5353140, 348966, -1094143, 5552856, -9329743, -3322694, 6986301, -2254321, 3940633, 2097018,
--6206228, -6881612, -3548180, -10333154, -2926483, -3143916, 4287451, 1588601, -5976447, -1336272,
--12793097, -3188476, 5259725, -3703873, -12642236, -147103, 7219303, -15326591, 4481799, 2599529,
-4908611, -7245610, -3365107, -6884296, 558883, -2039036, -7825431, -2024003, -1298154, 4760435,
-2683818, 11532524, 750009, 161598, 1852205, -832150, -5804649, 7304129, 2551211, -2952790,
-6383932, 1192390, -3147137, 1086627, -182536, 3908420, 903554, 796180, 2426657, -2028298,
-102005, -2181307, 8590, -1731409, 1784022, -688269, 779537, 2204392, 320512, -1347009,
-2028835, 534723, 2157684, 608812, -612033, 812823, 209917, 2910914, -11826729, 2573222,
-9378598, 12101607, 9004399, 9200357, 3519726, -6466610, 6425271, 11181410, -16678432, 8288750,
-8281234, -17857400, -4728222, 4328254, 19149112, -1545115, -1278827, -4622996, -5439039, 23715198,
-11723113, 3258807, 2913062, 12278775, -284542, -1920924, -4667556, 1796907, -10748693, -9694278,
--2264522, 2942590, 7088844, 3200288, 1560684, -3686156, 628676, -7891466, 3201898, -11674258,
-11330661, -1319629, -5741298, -6730214, -7694434, -11776800, 1963337, -11400991, -3884798, 7751879,
--1876901, -3933653, -3805341, -1861332, -9780714, -6792491, -4445828, -4182761, -2286533, 3528853,
-1924145, 549219, 448287, -8625368, 14706505, 8451959, 134755, -1128503, 19363860, -2384244,
--3431679, -4811437, -9924596, -2738042, 6422587, 6209986, -1037772, 7565585, -15194521, 4432943,
--5844914, 1410897, 5738077, -2063732, -215822, 910533, 412317, 1831267, -2462090, 2781528,
-3535832, -3437585, 1315871, 1873143, 2273648, 6144488, -4736275, -457951, 562641, -148713,
-1352915, 652835, 1415192, 1914482, -1784559, 1219234, -625455, 118112, -3411815, -747324,
--882079, 2786360, -2900714, 21989696, 7572564, 4727686, 10721312, -11898133, -7123740, 6956774,
-7391102, 16348256, 2444373, 4629975, -10849087, -527744, 5491653, -14244796, -4536559, 5866389,
--4705674, 297427, 4014721, 10730976, -3515968, 4265440, 2255932, 2452426, 9143985, 8011188,
-9738838, -7488276, -5009543, 10582263, -13202729, -4294431, -4330401, -775242, -3524558, -8371428,
-8326868, -181999, -9091372, 547071, -3544959, -9428527, -11825656, -6499896, -7066295, 14161581,
--4416300, -3463354, -8266739, -578747, -4180614, 2284923, 16624745, -2993592, -5363878, 2931315,
--927713, 9669045, -11038603, 18884972, 3818763, -17955648, -13079249, 4873714, -12106439, 308701,
--12966506, 169651, 2837363, -1556389, 14117558, 17738214, -8330089, 2247342, -3404835, -12934831,
--4821101, -6994891, -8460012, -1848447, 6457484, -4318053, -9980430, 6751152, 484794, -5324149,
--4542465, 2299955, 3770981, -1506997, -1003949, -5005785, 324270, -4613332, -902480, -2253247,
-3341485, 3835406, 936303, -4578435, 544387, 417149, 3073586, 47782, -1119913, 368830,
--5848672, -532039, -3280818, -2242510, 498216, 1444720, -3055869, 2522757, -1762547, -1569274,
-4039417, -1480153, -3863860, -19381576, 7057168, 39479876, -7059316, -652298, -17563196, -7504382,
-11592654, -1912871, 22565222, 13470091, 12440910, -112206, 9558450, -18823768, 16758962, 8580808,
-619012, 2013266, -10980084, 4489315, -342524, 17069810, 9454834, 11305428, -4367445, 916439,
-2823941, -11810086, -9542344, -4472135, 5121212, 19939922, -5765994, -7011534, -7039452, -4049081,
-2440615, -13023415, -3898220, -1059783, -7035157, -13775571, -3043521, -17418776, -6432788, 9909563,
--12140262, -5442798, -2533494, 749472, -19563040, -11904576, -2703145, -2240362, -3875134, 12014634,
-5204964, 599685, 7204808, 12381854, -7923678, -3423626, -10743861, 4603131, -8485245, 6874095,
-7968238, 9565429, 17602924, 4828080, -13542032, -2386928, 29615410, 9492951, 16579648, 7865696,
-4922570, -1360431, 1874216, -7257958, -9168681, 3854733, 2809446, -9156870, 2221035, 6039798,
-5494874, -8803072, 6566468, 2078764, 4688494, 5411659, -198105, 2502355, 4527970, 1714229,
-5343476, -770410, 1031329, -1949915, -3875671, 583579, 4645544, 496606, -2249489, 7523709,
-4786741, 3994320, 15569, -1159641, -1427540, -426812, 108985, -1488206, 2564632, 1894081,
-1986959, 2124398, 1037235, -4359392, 20432770, 22394496, -22674742, 5512054, 16582869, 9996536,
--6342593, -12089259, -10448045, 23333484, 1894081, 8750996, 12240120, -7028714, 3441343, 5084168,
--14323716, -15254650, 12343736, 4149475, -22149146, -5163625, 28765544, 13741748, -65498, -16474421,
-5379447, 4256850, 17494476, 5721434, -8534637, 11388106, 2026688, -4887136, -1661616, -3532611,
--13647259, -6524592, 2097555, 2283312, -16287053, -17663054, -10399726, -5123359, -19339164, 11423539,
--1195075, -13824426, 2638184, 246961, -5943698, -1746441, 4176319, -193274, 4398047, 4991289,
-7824894, -7737384, -9050033, 11909944, 24358370, 10925323, 6678674, 17652852, -3291556, 9576703,
-23684598, 14364518, 2270427, 2544768, -7347079, -14569603, 14115947, -13885092, 6246493, -5623186,
-4357245, -18149994, 8714489, -341450, -5839008, -3512210, 10323491, -9840844, -4828080, -2633889,
-1633698, -353798, 3112778, -3979824, -406948, -7070590, -1676111, -533113, 1366873, -2211908,
-2498597, -2738042, 2183454, -2467996, 7970923, 2323041, -1914482, -3797288, 3091840, 186831,
-2850248, 2326262, -1755031, 2078227, 3027952, -2091112, 897648, 3424163, -937914, 1110786,
-4086662, 3981435, 7350300, -4584878, -21204254, 5995238, -10207527, -4686346, -7884486, -1298154,
-18207440, 18042620, -36399848, 11308112, 11586211, -11278047, -18508088, -24123220, 4284767, -7059853,
-4494147, -8393977, -6614787, -3883187, 22566296, 5750961, -1946694, -347355, -3576634, -6698539,
-5717139, 3792993, -93416, 9088151, 1977296, -1865090, 3231963, 8254391, 23279260, 2385318,
-2871723, -11453604, -4917738, -5397700, -5786395, -657667, -1936493, 7756174, 11133092, 576599,
-12859669, -2938831, -2178085, -2586107, -1438277, -22506702, 25433722, 707596, 1794223, -1819456,
--6623377, 6805913, -1755568, 10383083, 572304, -9820980, 2659122, 11007464, -7805566, 10228465,
-2455648, -15496242, -2675765, -3265786, -28316182, -9598715, 7212324, 7374996, -11586211, -6580964,
-6728603, 1009317, 18884434, -14996952, 6834904, 8516383, -1254667, 7459285, 6824703, 8446590,
-3188476, 3804804, 3347927, 2855080, -1297617, -1460289, -4924717, 2032593, 7024956, 1344862,
--5230197, -1929514, -2976412, 1765232, -2320893, -1830730, -3505230, 4670240, 2542084, 3216394,
-278099, -8137890, 3230352, -8270497, 580357, 1438814, 2888903, -3867618, -1982664, -1136556,
-2640331, 5118528, 2193655, 2221572, 628139, 2327872, -5692979, 18739480, 5530308, 5904507,
--13409962, 10324028, -5258651, 9846213, -7410966, 12643847, -11165304, -9066676, 17302276, 2316598,
-4554276, -10019622, -22647900, -2005213, 6841346, 1951526, 9963787, -7974144, 1437203, 63888,
--16869020, -12108587, 5811628, -19071802, -12439836, 6311455, 251792, -19950124, -2707440, -9854802,
-12996034, 7865159, 2484639, -4520990, -12435541, -26617522, 9617506, -11829951, 14832133, -4254702,
--4731444, -2312840, -6940131, 4247723, 4007205, -21242908, -9284646, 21250424, 18601504, -18868866,
-24904904, 1451162, 18381924, -4193499, -4209068, -2123861, -7027640, 9641128, -6924024, -19801410,
--10449119, 23913842, -5157182, -4595078, -1169842, 7532836, 4866198, 12173011, -27117350, 8230768,
-18721226, 14817637, -5826123, -1342714, -5733782, -12158516, 1538672, 11523934, 17736604, -10613938,
--10805601, -12196097, -1123134, -1828046, 1287953, -5746130, 3211025, 3297998, -1967632, -667867,
--2529199, -5208185, 5406290, 321049, 924492, -8008504, -6798933, -1631551, -8854075, -3278671,
--4383014, 1220845, -3070902, 231928, 7025493, -2578054, 2994666, 128849, -6338298, 1490354,
--3143916, -610422, 2883534, 6293738, 963683, 2776160, 5769752, 5867999, 7573638, -2131378,
--1929514, -1114544, 7761006, -941672, -12277164, -450972, -9428527, 12812961, 9947681, -9658308,
--16456704, -13810467, -8101382, -16007343, -875636, 7579544, 17592722, -3042448, -820876, -29420526,
-17640504, 21940304, -3459059, -11936251, -12102144, -7519414, 33051920, -20122996, -47782, -2384781,
-8939438, -1492501, 38075960, 913754, -20683488, -5467494, -19654308, 25670482, 22363358, -18045842,
-21039434, 5243618, 16943110, 6305549, -31735514, 9940702, 17024714, -22026202, -6075231, -24990804,
--12446278, 838592, -22968948, -19652160, -529892, -15928960, -192737, 5560372, -5661304, -15802795,
-12981002, 11707007, -25934624, -19881940, 10887742, 4544076, 7010461, 13128641, 17234630, -6367289,
--9302362, -573915, -6017249, -369367, -1894618, -8753680, 3493956, -36092220, 12319577, 17489644,
--18558016, -15367930, 11665131, -11780022, -10595684, -5119601, 6545530, 869194, 22411140, 122943,
-13111461, -1335198, -9070434, 4802847, 6791417, 6949257, -5835787, 98784, 769873, -877247,
--3728569, -8982387, 5942624, 9339943, -4763119, -15769509, 4054986, 1290101, 16703128, -1662152,
--6453189, 5077188, 1911797, 8253854, 51003, -5149666, 184684, 6715182, 5122822, 1617055,
--1726040, 1204738, -3033321, -2687039, -7753490, 3836480, 3807489, -5433134, 2650532, 2270427,
-1500554, -996969, -2564632, 588411, -7430831, -5622649, 158914, 7973607, 19931332, 37561636,
-59353764, 1653562, -24172612, -31091806, -7395934, 1087701, -7523172, 28744606, 21522618, 14840723,
-24967182, 18128520, 14630806, 850404, 11760694, -15610596, 21607444, 25007448, 1564442, 26023206,
--10919417, 2002529, 5927592, -24555938, -16553878, -5931350, -14661408, -17253958, -2675765, 26752278,
--503048, -5328981, 3213173, 5609764, -3781719, -36601176, -5131949, 9403294, -5515812, -11306501,
-4366371, 13970992, 24903830, 6045704, 12631499, 17591650, 21698712, -30274150, -21038360, 11732777,
--8891119, 38230576, -4106526, 32855962, -26715234, 15612743, 26762478, 903017, 4260071, 16011101,
--29186988, -13626857, 657667, 16497506, 372052, 19007914, 7660611, 7080791, 19391778, 6930467,
--2670933, -8308078, -23105850, -5428302, 1256278, 6011881, 386010, 410706, 439697, -12644921,
-6459631, 4292820, 10808822, -3833795, 8116415, 13290239, 7885560, 3300146, -104153, -1683090,
-2764348, -4712116, 2685428, -4506495, 83215, 2674154, 2676838, -3993246, 5961952, 5743445,
-7267622, 741419, 541166, 2982318, -2659659, 4908611, -3752728, 4959614, 11518565, -1476932,
--2245731, 813359, 10018011, -6248104, 2342905, -1271310, -1510218, -1976759, 1362578, 2702608,
-4507568, 3368328, 3439195, 9243306, -6562173, 10981695, -5387500, -12763032, 3711926, 42625404,
-14179298, 14972256, 31066036, -2276333, 6567542, 13543642, 19942606, -22196928, -17850420, -7551090,
--19581830, -3397856, -26301306, 13538274, 20915954, 15353971, 20766704, -13981192, -7845295, 16142098,
-12436615, -8734353, 21047488, 12753369, -4927401, -25759604, 14277008, 15785615, -13214541, -1887101,
-7454453, 3794067, -20914880, 24075976, 6323803, 25843356, 13970992, 10177999, -14094472, 12104828,
--7534447, 39359080, -31040802, 3480534, 11754252, -5782637, -20079508, 12848395, 12404402, -2355253,
-12200391, -11871826, 31915902, -14737107, 8330626, 7073275, -20447266, -8710731, -28193240, 12053289,
-8101382, -20770462, 19375134, 16795470, -14579803, 12081743, -1686312, 32614372, 10484015, -16128139,
--12051141, -11507828, 10093710, -6649683, 8581882, -4021700, 1777043, 11011222, 6727530, 5560909,
--10845329, 28065464, 2942590, -10704132, -16038482, 13627931, 6558415, 12872017, -7442642, 3861713,
-9951439, 21209622, 5193689, -3346317, 17380122, -4612795, -5263483, -2361158, 1540283, 4864051,
--10674604, -9077413, 3803194, -7829726, -5042292, 1119913, -4022237, -981937, -1559610, -7679402,
-5233955, 3256659, -15313706, 3751117, -11507291, -6907918, -3819837, 5657546, 2725157, 10512469,
-4315369, -196495, 2705830, 3938485, 4185983, 517007, 993748, 2505577, 8582955, -2763812,
--1557463, -38234872, 16403017, -32672890, 32918240, 39659192, -2594697, 6596533, -33058900, -702227,
--7750269, 2931315, 18468896, 19010062, -6226629, 9679246, 15267535, 2126546, 6126234, 4182761,
-6038724, -4482335, 22473416, -3557307, 4725538, -13154411, 25350508, 5261872, -2913599, -1177895,
-22767622, 8589398, 10493679, 25400974, -6214281, -16189342, 31088048, -33844344, -14968498, -6102075,
-6967511, 21938156, 4698694, -9392020, -9846213, -16461536, -796180, -3204046, 5998459, 35372812,
-34161096, 21764210, 30779884, -3063386, 46573016, -15915001, 12680891, -11349988, 694174, 14617921,
--7655779, 1583232, -14524506, -18349174, -96637, -11570642, 9206799, -15662135, 22817550, -17566954,
--28535226, -11729019, -7627325, -2623688, 33441690, -20509006, -5126581, -2948495, -21667036, -5413807,
-11956652, 26572426, -2769717, -1187022, 601295, -8745627, -18697066, 732292, -1233729, -2782065,
--2340757, 12348, -11000485, 8515846, -9488120, 10525354, -4626754, -8011188, -9298604, 2222646,
-7877507, -5821292, -8044474, -2603287, 6437619, 7745437, -6033892, 3690988, 4121021, 2835215,
-4100083, -4271882, -4471598, 2270427, -64961, 4964446, -6481106, 4392141, 7141994, -176631,
--3070365, -3782256, 6168110, -13471165, -7017440, 13700946, -8749385, -733903, -2748242, 2847563,
--9000104, 6330782, -3299609, 12369506, 10722923, 167504, -13350369, 58546308, 81283864, 24924232,
-63361504, -13878650, -44084080, -30889404, -21603148, 10691247, 11642583, -14693620, -23684060, 20514374,
-27575838, 16120623, 27511950, 21232708, 5229660, 8450348, 4146254, -1373853, -18122078, 7998303,
--21472688, 15131170, 125091, -20076824, 23271744, 14095009, 11125039, 40230420, 24704116, -11519102,
--7779797, -14462765, -17176112, -20997558, -8309151, 848256, -16638166, -5138929, 34727496, 52724480,
-38807176, 5339718, 26480620, 28291486, 43193412, 19819664, -22915262, -37562172, -23464480, -23952496,
-14181982, 11966853, -51412368, -35205848, -9089225, 21720724, 46760920, -34976604, -1396401, -30346628,
--3958349, 38296076, -21052320, 14473503, -30534534, -4909148, -9126806, 25859462, -28618440, -16229071,
-464393, 11469173, -23230942, 53437448, -12562779, -743029, 30337502, -13231184, 22810034, -7170985,
--18832894, -14536854, 8868034, 983548, 7563975, 4845797, -16807818, 582505, -7090454, 20557324,
-11971684, 3735548, 11176579, 12865575, 721555, -24696, -4030827, -12599287, 26066156, -7909183,
-5480379, 362388, -15075335, 766115, 1677722, -4603668, -9897752, -1988570, -5797132, 1615445,
-3910031, -4244502, 919123, 17945448, 12713640, -2090575, -2809982, 17027934, -6996502, -1919850,
--14156212, -20248624, -7619809, -5183489, -2153926, -5493263, -22952306, -44629544, 5543192, 24983824,
--20621212, 38662220, -15307800, 15425912, -5060545, -44480828, -22752052, -2069637, -26147760, -60079076,
--16802986, 21801254, 33458332, -16203301, -25689810, -53601728, -15891379, 15940771, -10604811, -15470472,
--26610006, 6425271, -5956046, -4431870, -4939750, 10940355, 21640730, -16691317, 16747151, 14305462,
--16884054, -48914308, 4083440, 4060892, 12731357, 6004901, 32145146, 3332358, -48633524, 417686,
--53565760, -151398, 18712098, 22558778, -4073240, 3072512, 25020868, -12943958, -9411347, -16707423,
-16229071, 11841225, -7635915, 19335406, -5909875, 8195335, 9050033, 31585190, 4291746, -11090142,
--33620468, -11526618, 17588428, 15270219, 26866094, 39090108, 67614600, 33693480, 16339666, -17510044,
--67699424, -18512382, -9690520, 51909512, -8613557, 3292629, -125628, -16296717, 2323041, 15258408,
-7353521, -304943, 839129, 332323, 190052, 25189446, -8981313, -7442642, -8246337, 17484274,
-6774237, 8865886, -6762426, -21398600, 7166690, 9106941, -9663140, -1404454, 5556614, -1198833,
-1766842, -3775276, -30728880, -10082973, -2368675, 14174466, 22291954, 2664490, -18336826, -17974976,
-8350490, 3016678, -1575179, -3030636, 1141924, -1891933, -780073, 16494822, -17983564, 2320893,
--15430207, 16496969, -8908299, 369904, -22265648, -3500935, 15278272, -4699768, 8325257, -12875775,
-6524592, -6766721, 10585484, -10336376, 3622268, -43694312, -13301514, 30392800, -14965814, -12551505,
--3236795, -9801115, -35033512, -38947836, -56984016, -17984638, 108985, -4405026, 37298032, 10270341,
-48715668, 30066382, 15082315, -6795712, -18009872, -3345780, 68314136, 4254702, 19681688, 11113228,
--8591008, 34056944, -14219563, 27494234, -30023968, -2964601, -21644488, 25879326, -36455684, -7652558,
-11106785, 11496017, 11663521, -31814970, 22625888, -36415952, 7368554, -17825188, -12265890, 36298916,
-2103997, 2418067, 12439836, -13729937, -857383, 9517111, -44278964, 1234266, 10148471, -6391985,
-28436442, -12706124, -5633387, 47974784, -18219252, -39830452, 35970, -15012521, 3156801, -2968359,
--2172717, -31955094, 17033304, -5158256, -43739948, 26334592, -54157392, 10557030, -12487081, -21351356,
--34275988, -4347044, 9147207, 15784542, 1290101, 12794708, 15657840, -18597746, 32824824, -7556458,
-8681740, -373125, 15592879, -649077, -1914482, -5285494, 9153649, -19615652, -2693481, 6514392,
-4100083, -7580081, -294205, -8492224, -11576547, 5945309, 4483409, 8745627, 5360119, -2408940,
-6491843, 19669340, -9903121, -10111427, 3195456, -873489, 3603478, 14613626, -2320356, 8004209,
-7148436, 7594576, -10130754, -11739219, -3202972, -861678, -12684649, -615791, -2757369, 5337034,
--13855028, 4152160, -6316287, -18211736, -66019552, -67869072, -57827976, -28811714, 121719912, 38592964,
--14414984, -15098421, -59186796, -126135136, -13606456, 34724812, 43202004, 18913426, -18838264, -13971529,
--36706400, -40537512, 31615254, -29038810, 76972792, 57817240, -88354456, 29372744, 12336757, -18079128,
-7558069, 64468532, 9785009, 44642428, 88111792, -18503256, -71200896, 3904125, -11621645, -66418984,
--17630840, 32865090, -2321967, 40329208, 64939368, 6256157, -55132348, -108657304, -93103616, -83282104,
--8181913, 81680080, 23767812, 22153978, 12833362, -21584358, -108793136, -67981280, -34421480, -12866648,
-7345468, 25201794, 24659018, 31329638, 32268090, 39784820, -46500536, -16515223, -37956236, -2822331,
--41571524, 26718454, 26898306, 54240068, 60403884, 28984050, 1585380, -15480136, -10340671, -73189464,
--57916024, 51911124, 81225344, 55280524, 65054796, -15043660, -28013924, -57836568, -32435594, 17637820,
-884226, 4405563, 18850612, 6493454, 5335960, -13707388, -17958332, -8858907, -13367549, 931471,
-14988362, 4436701, 6304475, -2834679, 9091909, -15002858, 11142219, -4197794, -13493177, -13643500,
--3416110, -22959822, -6352794, -13879187, 15664283, 17131550, 8950175, 6880001, -14359149, -30822832,
--30037390, 8628052, -2017561, 14460618, 13261785, 6999723, -21617108, -11052561, -20527796, -32662152,
-10863046, 20321638, 8810052, 1084479, 23236846, -8564702, -121478856, -136009808, -92463128, -95071784,
--25318832, 106888848, 71987944, 115320944, 128342216, 194982928, 129461592, 134080288, 86467352, -6446209,
--96225520, -166293088, -196590320, -170504832, -134602672, -97228936, -23539106, -4771172, -14062797, 5133023,
-42340860, 69911328, 96726960, 84296784, 114632144, 110943304, 143096496, 131110320, 36754184, 88077968,
--19095962, 24250996, 17674864, 5193153, -12201465, -127351152, -153203632, -195563280, -229735120, -208578640,
--116133768, -102908488, -84935664, -106050792, -123098056, -26108032, 30003030, 77491408, 113074144, 164089232,
-195616976, 251539056, 331466240, 322256224, 244416928, 198680352, 164984192, 87617872, 138521824, -55948392,
--113233592, -270337600, -310058528, -384979936, -370304576, -338228128, -320975776, -309581248, -191002560, -117922088,
--64536180, 173354544, 176082928, 269805024, 345939744, 300434560, 270885728, 274561696, 215232080, 164620720,
-90018216, 12222403, -1600412, -50475528, -62078920, -89314920, -116449984, -159233760, -172790288, -156720672,
--181334064, -139595568, -128784056, -120947352, -106844824, -54617488, -11215233, 57024816, 116462872, 109955992,
-170410336, 189064992, 207725552, 245982448, 198327632, 116371600, 57514444, -34862248, -90875064, -90157272,
--175452640, -161788736, -222478768, -176447456, -184501056, -117841016, -124088584, -71914392, -9755481, 62812288,
-93288304, 165746544, 191935648, 187154816, 180894896, 177157200, 135281264, 48853104, -31757526, -44409424,
--59139552, -64231236, -74052752, -86395952, -81425600, -59232968, -65551940, -58145804, -51692080, -36058396,
--17180942, -10616622, -9047885, 3011309, 10104984, 7806103, 9222369, 26364656, 32622960, 35412004,
-31867584, 24916716, 25358560, 39643084, 27535036, 23075786, 21747030, 20582020, 8086350, -1201517,
--11122892, -7786239, -10921028, -13195750, -19601156, -15087146, -13738527, -15794205, -21553220, -15860240,
--14785425, -16709033, -17986786, -9490267, -7452842, -3631395, -2892661, 1125281, 7455527, 13902272,
-11474542, 10853919, 10727755, 13270912, 10580115, 7481833, 4056597, 6192269, 4230006, 3400540,
-1859721, 1094143, -2631741, -915365, 2554432, 3977677, 1229434, 790811, -453656, 1171989,
--922881, -4952098, -7539278, -6331856, -7327751, -7242389, -7329362, -5734855, -5889474, -4484483,
--2426120, 54761, 214748, 1267552, 653909, 1577864, 1887638, 2950106, 3305514, 4301410,
-4082903, 4379793, 3459596, 3042984, 1957968, 1447941, 607738, 249645, -272730, -357019,
--622233, -659278, -707596, -646393, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
-13325673,
-1492501, -5924371, 1986422, -3758633, 944893, -2459943, -1562831, -3277597, 2268280, 3934190,
-1120450, 1202054, -7319698, 1398549, 99858, 2235531, 2755222, 1493575, 4161823, -917512,
--2368675, 408559, 4980552, -2147, -3859028, -419296, 4237522, 2282238, 436476, 8053,
-1177358, -141734, 304406, 791885, -155693, -1554778, -199716, 4832, 1654636, -2528125,
--5887864, 4299799, 4308926, 3749507, 3525095, -214748, 1916092, 3351148, -3576097, -832687,
--108985, -4767414, 1054951, 317291, 4272956, 415001, 2389613, 43487, 5377836, 2709051,
--802622, 3759707, 2278480, -1257352, -4415764, 1074279, 1137093, -1190780, 318364, -2528662,
--665720, 2225330, 1559073, 1844689, 4436165, -764504, -1411434, 580894, 2634963, 6077916,
--3598109, 1602023, 1641751, 1753420, -192200, -435402, 1877975, -1077500, 43487, 869731,
--1156957, -223338, 165893, 295279, -756988, -1156957, 706522, -301185, 134218, -438624,
-1110249, -165356, 1322313, -340913, 1176284, -52076, 1112397, 11312944, -7581154, 2542621,
-6362457, 1480153, 4480188, 5431523, -4958003, 1029182, -464930, 2108292, -6283537, -4985920,
--942208, 4867272, 6593312, -2541010, -2203318, 3160559, -5381057, -7182796, -1341104, -8445516,
-2872796, 2793339, 746787, -5249524, -5352603, 1890323, -3124052, 715112, -177704, 5555004,
-5849746, 5296232, -883690, 3710315, -5831492, 2523293, -3448859, -319438, 283468, 4533875,
--4924180, -4355097, 6442, 5965710, 2433099, 2328946, -3643743, 2019708, 1450088, -1762010,
--7490423, -1211718, -2561948, -3279745, -2983929, 3419868, -3172907, -1015760, 743029, 2123861,
-5322002, -2053531, -162672, -4041564, -1995012, 838056, -5636608, -346282, 1490891, 3831648,
--1255204, -2901787, -1506460, -5828271, 2720325, 1712618, 297963, -472446, -5079873, 2077690,
-375810, -1792075, 1790465, -712965, 403727, 1675574, 121870, 351650, 1899986, 872952,
-356482, 57982, 1512902, 581968, -340376, 651224, 866510, 1803886, -3874061, -7121056,
--1682554, 1371168, -2110977, -3543348, -1909113, -7098507, -3943854, 7757785, -183610, -3260954,
-4170413, -5992553, -1278290, -7504919, -1463510, -5888400, -3020973, 7183870, 492848, -1315871,
--7845832, -4848481, -1675574, -3293166, 1470489, -4121021, 537945, 2760590, 8570070, 4265440,
-3291019, 3779571, 6961068, -5623723, 55835, -1599339, -4306242, 1950989, -782221, -1602023,
--4512937, 2541547, 4998805, 635118, -3416110, -2144263, 12601971, 177704, -3460133, -4868883,
--7356205, -9844602, -1118302, -5043902, 1323924, -886374, 2912525, 644782, 1474248, -4454418,
-812286, 876173, 6164889, 2167885, -4387846, 381178, -1276679, -1213865, -948114, 2285996,
-3366181, 3298535, -2828236, -2752537, 1946694, 991064, 1318555, 1434519, -1020055, -4293894,
--5062156, -485331, 1068910, -1110249, 672699, 165356, -572841, -965294, -1495186, -502511,
--179852, -848256, -1675574, 283468, 723165, -848793, 477815, -730681, 305480, -947577,
--405338, 343061, 418759, -1168231, 328565, -363462, -2198487, 373662, -684510, 1442572,
--880468, -571768, -221728, -17494476, 6842957, -3179350, 2860448, -7277285, -2960306, -5712307,
--5219996, 286689, -1678795, -3606162, 8831527, 2234994, -872415, -5456219, -1751273, 2428267,
--6216429, -3338800, -5921150, -3343632, 8445516, 753230, 5618354, -616865, -98247, -1502702,
-1564442, 1490891, -4543002, -23085, 1311039, 2458869, 9175661, -4897874, -5619428, -1187559,
-10154913, 3122441, 10810970, 874026, 965294, -2003602, 5324686, -1018444, 7866770, -892279,
--950262, -1510218, -3316252, 3265786, 990527, -2910914, 2268817, 2881386, 5457830, -3264712,
--302795, -1079647, 4860293, -2092723, -846645, -1937030, -1271847, 1076426, -1620276, 467078,
-805843, -1294933, 1190780, -8193724, 758599, 5153424, 1829119, 6936909, 557809, 641024,
-1683090, 4379256, 7173669, -4862440, 679142, -484258, 1687922, -336618, -186831, 2040646,
-4652524, 1678259, 2281165, 135828, -812823, -1330366, 629750, 2244121, -827855, 954557,
-1080184, 997506, -41876, 362388, 1985349, -469225, 527207, -199179, 2293513, 1207423,
--732292, -260382, 2469606, 1131724, -725850, 1678795, 1018981, -2318209, -3625489, -1736241,
-26844, -8514236, -1333051, 185220, -4182225, -15150497, -3590593, -3186866, -6538551, -1195075,
--1599875, 9654013, -3204046, 7325067, 3494493, 5311264, -9697499, -4307316, -9799505, -9109626,
-104153, 1831267, 5879274, -2683281, -4219806, -2567317, -6589554, 1530619, 3164317, 3604551,
-2275259, -1937030, 2612414, -4378183, 597000, -7974144, 3028489, -1988033, 1219771, 1869921,
-3129958, 3307662, -2966749, 212064, 7930120, -4098473, 3904125, 4063576, -142808, 2468533,
-3961034, -1499481, 1631014, 3874061, 324807, 6764574, -3380676, -4539244, -2120103, 2267206,
-98784, -8796630, -4387309, -9756018, -10590316, -1744294, 3015604, -8647917, 4009889, -1339493,
--35433, -2911451, 3042984, -5116917, -711354, -1739999, -7208029, -6387153, -2020245, 3908420,
-244276, 3360275, -1263794, 2199023, 1824824, -3987340, 143881, -737124, 2415382, -2668785,
--4452808, -1431835, 745714, 58519, -1638530, 839129, -969589, -356482, 853088, -186294,
-175557, -38655, -914828, -172872, -883690, -623307, -526670, 27380, 597537, 104690,
-1427540, 547608, -502511, 5014911, -14106283, -595927, 4504347, 2871186, -7441031, -832150,
--4699231, 1317481, 1537598, 1112933, -8131447, -10937134, -7409893, 1369558, -5901822, 6649683,
-2183991, -10532334, 7771207, 6797323, 5425081, 4838281, -5163625, 8713952, 2391760, 7516,
--3251290, 2990908, 5290863, -4675072, -6853157, 2647311, -2512019, -8567386, -1035087, -8266739,
--2917894, 15158013, -3904662, -6718403, -8288213, 533650, 1500554, 6067715, 2518998, -5464809,
-5157182, -581968, -4211753, -5687611, -5971615, 9356049, 4294968, 5916318, -4294431, -6009196,
-2875481, 1557463, -6102612, -264677, -3686693, 6061273, -1016834, 583579, -7231651, 4756140,
-4089346, -4152160, -2552821, -2561948, 8499740, 140660, 1377611, -2373506, 5874979, -5807870,
--9782862, -4400731, 1018981, -1871532, 5573794, -1082869, -465467, -5765457, -2898566, 2535105,
-492848, -4099546, -2530810, 3541201, 2062658, -1099512, 318901, 69256, 166430, -1120450,
-1695975, 690416, 2544768, 387621, 584116, 91805, 1201517, -480499, 1660542, -1946157,
-2212445, -223338, -1101122, -7836705, -548145, 1662689, -2126546, -6310381, -9254581, -7463043,
-7077569, 626528, 8725226, 10449655, 10150081, 1347009, 14012868, 3190087, -1791001, 6354404,
-4812511, 12920872, 1686848, 7333120, -10581726, 16850768, 12357158, 5847061, -5388574, -4336843,
-5965710, 1198296, 4223027, -2765422, 7162395, -2426120, -2112050, 6397354, 5181878, -6971269,
-4343286, -2031520, 6975027, 7564511, -15479599, -3045669, 9229348, 2614561, 4939213, 3812857,
-9139154, -4734665, 3554086, -52613, -8041790, -4057670, -401579, 1410897, -11718281, -1203665,
-7112466, -5989869, 12064563, 8952322, -3878892, -333397, 2170569, 4368519, 6973417, -2994129,
--2484639, 11360725, -2911451, -463320, 4871030, 12885, 6607807, 5172215, 2061047, 3505230,
-3739843, 3500398, 1559610, 1358283, -1778653, -2931315, -1300301, -2690797, -453656, -1948305,
-1122597, 931471, -2616172, -2168959, -451508, 1641214, 3631395, 2935610, 1637993, 131533,
-1728188, -3490735, -1626719, -1981054, 571231, -1500017, 1538135, -4022774, 263604, -296890,
-3124052, 1077500, 15032, 336081, 3245922, 808528, -3071439, 738198, -413391, 560493,
-2719251, -314069, 754841, -275415, 29577830, -15651398, 2049236, 12123082, -1290638, 318364,
-16097001, 17642652, 2001992, -1480153, 3633542, -980863, 3913252, 4976794, -6594386, -2120103,
-10393284, 9133248, -4424353, -8577050, -9125195, -9504763, -5153424, 7656316, -6088116, 3280818,
-328565, -11091216, -826244, -7419556, -962610, 2999498, 4720169, -14348949, -6760816, -11455752,
--3597035, 16991964, 2387465, -1693291, 1441498, -1704028, 766652, 4910222, 2892124, 8403640,
--535260, 6238977, 3734474, -6123013, 3712462, -9238475, 186831, -9280887, -9577240, 3431679,
--10528575, 4236449, -185757, 5162014, 4177930, 3673808, -5645735, 6339372, -9546102, -372588,
--4427038, -1656247, 11859478, 246424, 5912023, 5725729, -1260573, -2448131, 4560719, -10035728,
-3900904, 9182640, -14001057, -10450192, -2887292, 6892886, -692564, -8776229, 3205656, -1450625,
-3648575, -3361349, 1101122, -1999844, 6133214, -1356136, 5640366, 2923799, 5268851, 1620813,
-1449015, -2996277, 3566434, 1378685, -134755, 1885491, 1804423, -1250372, 2665027, 1873680,
--1305670, -1628866, -4566087, -1180042, -2605435, -323196, -110059, -1780264, 2355253, -1042066,
-1387274, 259309, 4778688, -4011500, 1793149, 561567, 216359, -601295, -17520246, 3508452,
-4491999, -11767674, 5619965, 127775, 12763569, -3105261, -6175089, 5521181, -15307800, -5129802,
-13296682, 5949604, -7758322, -18956912, 8739722, -2458869, 4892505, -12020003, -16000364, -10790032,
-14227079, 1357210, 7939784, -1139240, -7221988, -10810970, 5401458, -2730526, -9386651, -11004243,
-1015223, -9800578, -7493644, -3992172, -1777043, -10635950, 6278706, 7458211, 10009421, -4483409,
-8920110, -6813429, 13998372, -2359011, -533113, 10718091, 5612449, -2396592, -6862821, -3334505,
-10353556, 2552821, -7336341, 3810173, 10986526, 10397579, 4588636, -12252468, -13549011, -1026497,
-2881923, 1059783, -9693741, 3172370, 11140608, 3368865, -4447976, -17415018, 4921496, -7461969,
--16973174, 739808, 1131724, -9509058, 14183056, -807991, -5530308, -18847928, 98784, -5405217,
--667331, 7352447, -4046933, -7084549, -269509, 1839857, 1946694, -5575942, -5633924, -5615133,
-2369748, -4820564, 540629, -708133, 1045825, -1198296, 1634235, 2756832, 2503966, 3122978,
-1678259, 5457293, 6920266, 573378, 2199560, 1423782, -2375654, -532039, -1892470, 1014686,
-967441, 589484, -6263136, 963683, -316217, -2174327, -73551, -1934883, 2196876, -2408403,
--2494302, -1831267, -21760988, 13952201, 10799695, 11878806, 1843615, 12546136, 1438814, -7718056,
--8976482, 1590749, 10091563, -6627135, 2490007, -14579266, 10333154, 10983305, -5233955, -2829847,
-2675228, 12013024, 8784819, -5854578, -5252745, 8295730, -9481677, 3591130, -13033078, 234613,
--3706020, -17471390, -18092550, 3814468, 10761041, 5164162, -15416785, -8151311, 12154757, -12962748,
--5283884, 10895795, -2648921, 13554380, -4452271, -8973797, 3704409, -13178570, 15729244, -1349694,
-2962991, -6961605, -3475166, -323733, -14344654, -8579734, 1379758, -2048699, 1661079, -4393752,
--15242839, 3234110, -12586402, 6043019, -3021510, 9573482, -15216532, 7282654, 2836289, -4041027,
-11687143, -1098975, -7705172, -14794015, -1851668, 3690451, -12036109, 9394167, -8075076, 6225555,
--15912854, -16091632, 8005282, 6608881, -6407555, -4813048, 5398774, 3935264, -3333968, -2563559,
--4270808, -5341329, -367220, -8809515, -819802, -961536, 836982, 2909304, -1555315, 2940442,
--1628330, -204011, -4824322, -2093797, -1214402, -276489, 7455527, -1804960, -900869, 4602058,
--4453881, 3541201, 1947231, -1403917, -993748, -4233764, -4150012, 184147, -2383707, 1025423,
-396748, -1677722, -2929168, 7162395, -6970195, 2381559, 8523899, 12586402, -3326452, 1396401,
--4467840, -16807280, -3590056, -3597572, 7302518, -14762876, -43487, -8516920, 9162239, -10327249,
--14083198, 9367861, 4300873, 6094559, 19396072, -3197066, -5562520, 5474473, -12424267, -14489072,
-1193464, 18564460, 5645735, 10423886, -7406671, -9109089, -14759655, 2953327, 18846316, -8442832,
-9850507, 2268280, 14653892, -22416508, -7129109, -371515, 2632815, 12774843, 6158983, -17082158,
--4629438, -7925289, -679679, -19668802, -3095598, -7076496, 1357210, -10348724, -690416, 2409477,
--28724742, 3297998, -9008694, 1770063, -11372000, -612570, 7060390, 3615826, -3870303, -3632469,
--15151034, 15235323, 14627048, 4833449, 3643743, -13133473, 20059108, 6997039, 10337986, -3940633,
--31590558, 12321724, -1088237, 23707146, 22252762, 7033546, -2865817, 9819369, 512712, 8601746,
-455803, 998043, -5596343, 2688650, -5113159, -2713346, -1431298, 10346576, -155156, 639950,
-2645700, -638876, -5586142, -2852395, 942745, 4206921, -1981591, 2103997, -3283503, 4378183,
--3435437, -5248987, -2690260, -742493, 2451890, 972810, -1140851, -897648, -1167157, 6836514,
--1500017, 411780, 1117228, 3419331, 27197344, 9589588, 18613314, -18063558, 4197794, 18979460,
--5704254, -6840273, 2682744, -11737072, 8961986, 2270964, -13707388, -17948668, -1348620, 15223512,
--394063, -1226750, 9960566, -14872935, -3789235, -12243341, 6876780, -20864414, 344134, -4460861,
-7588134, -21791590, -15055471, -9522479, 6386617, 7012608, 4853850, -7069516, 5295158, -5259725,
-6460168, -4314832, -1909113, -1501091, -6119792, 4145180, 9643275, 5740761, 9708237, -800475,
--9418326, 1341104, -9378061, 24981140, -6314676, -24575802, -7656853, 6715718, 21344376, -21365852,
--8809515, -1393717, 13724568, 877247, -30235496, -3714073, 13952738, 28815472, 1066763, 20060182,
-28903520, -2152852, 9303973, 13654775, -3780645, 24630026, -3310883, 29743722, 4736812, -8175470,
--25797722, -16162499, 191663, 7756174, 3706020, -3929895, -5013838, -8019241, -10941966, -9727027,
-11832635, 3457449, -144418, -16965658, -1916629, 620086, -3096672, -9650792, 2517388, 5101885,
--1461363, -5004174, -3648038, -9455907, -5707475, -2784750, 5953362, -1173063, -5145908, 5150740,
--7392713, 5308580, 5365488, -4638565, -8959839, 8181376, 12164421, 1855963, 373125, 733366,
-7088307, -2121177, -8473434, 992674, 8216273, 6799470, -8412767, -7150047, 1312649, 1342714,
-122407, 2427194, -1313723, 11399380, 13807246, -23792508, -23147190, 6088116, -5429376, 698469,
--9234717, 21537114, -9724880, -6226092, 7458748, 5371931, 171262, -9892383, -7255274, -12031277,
-4800700, -724776, -5840082, -987306, 14305999, 21508122, -23328652, -1517197, -22757958, -2450816,
--5908802, 22494354, -9546639, -9120900, -4411469, 13677860, 4517769, 3751654, 5713380, 5454072,
--4103305, 238371, -2982855, 3628711, -2722473, 21054466, -5525476, 5565204, 14816027, -7764764,
--17071958, 3759707, 5776731, -6026913, -6565395, -1457068, 3475166, 10663867, -14625974, 19531364,
-28742994, 19297288, -8104067, -11674795, -26667988, -34410204, -12676059, -164283, -6247567, -1775969,
--3942780, 8185671, -741419, -13312251, 6944425, -5914707, -1293859, 12581033, 21013664, -5187247,
-5884642, -3737695, 1123671, 19122806, 9648644, 16349330, 16650514, -13365938, -4130685, -3090229,
-443992, -341987, 5907191, 373125, 3609920, 16763794, 670015, 7813083, -3590593, -3724274,
--6911676, -2149094, 948651, 7616051, -2154463, -6404870, -3025268, 3648038, -2675228, -1463510,
--2003065, 2291365, 576599, -2507187, -1364189, 1683090, 820876, 844498, 9659918, -4001836,
-209917, 1223529, 110059, -5379984, 2414845, 2984466, 6156836, -12347494, 23041962, 10311143,
-13066901, 19665582, 30434676, -11826729, 15701327, -31532040, -3968550, -14196478, -30990874, 12410845,
-7218230, 9316321, 4032974, 12154757, 3638374, -22325240, 18624052, 32986960, -5049808, -5412196,
-7999914, 3195993, -7010997, -29579976, 2314451, 13959, -2784213, 308164, 9929964, -21172042,
-4460324, 5898064, -4440996, -12249784, -6033892, -13641890, 13696114, -30361124, -4496294, -19559282,
-10706817, 4289062, 10858751, -3940633, 2877628, -7827578, 18417894, 5492190, 15099494, -13922673,
-14839649, -423591, -14748918, 30151744, -5123359, 3619584, 20307680, -19704236, 22775674, 13597866,
--18053896, 7488813, -6972880, 9979357, -24968256, 18088254, 2460480, 6306086, -2448131, 5806796,
--20299626, 12775917, 22803592, -45610944, 4537096, 43848396, -28486908, -9178882, 2983929, 21338472,
-15065672, 5211406, 13147969, -6056978, 7880728, -3398393, -9834938, 4741644, -2293513, -1697049,
-8138963, 11922292, -1149441, -4719632, -4119948, 3488587, 7521562, -10198937, -3925063, -6994891,
--4443144, -9121437, 8946417, 11932493, -2653216, 5469641, -3536369, 2196876, 7499550, 8567923,
--10041634, 806380, 3542811, -5238250, 7752953, 376347, -287226, 7114077, 3519726, -8607114,
--7314330, 2423972, 1013075, -2605435, 1329829, 18446348, -11157788, -13433584, -424128, -12860206,
--5848135, -33989836, -29018946, -4002373, -16648904, -19978040, -14416058, 8876087, -5135171, -10113574,
--16248935, 15007153, 1004486, -24539296, -3875134, -137439, -11684995, -3672734, 9956271, 7162932,
--1732482, 93416, 459025, -6156299, 5228586, 11462731, -4305168, -2729452, 17582522, -33043868,
--5395016, 9308805, 35229468, -14585709, -9155797, -13139916, -17898202, 7808788, 37381248, 6954626,
-23148264, 4793721, -3822521, -1944010, -2787434, -18033494, 3934190, 4095788, -14712947, 3268470,
-29185376, -4724464, -9034464, 4913443, -10515691, -2390686, 25738128, 38109244, 10251013, 22885734,
-26400628, -9361955, -11070815, 3031173, -8767102, 1522566, -26181046, -213138, -20411296, 6216965,
-4212826, 12435541, -21251498, -7904888, -7278896, -8288213, -6687801, -7414724, 11764989, 2569464,
-15175730, -3842385, 5752572, 15246597, -2850248, 564251, -2264522, -6017786, -4919348, -801011,
--3733937, -5528160, -159451, 2333241, -2942053, 1056025, 7041062, -7100118, -6561637, 521839,
-5256503, 2800319, -3503620, -10531797, -10359998, -1223529, 2330557, -6230924, -3579318, 2257005,
--2216740, 1150514, 661425, 7271380, 2334315, 1883880, -8013872, 8814884, -3785477, -8501888,
-26737246, 30245696, -12577812, 68828464, -9819906, 1272921, -13112535, 7831873, -5732171, 7726646,
-17435420, 4725538, -16884590, -9300752, -17628694, -592169, -12074227, -21740588, 2551211, 13606993,
--2677375, 3746285, 6276021, 7856569, -452045, -6483790, -8406862, 3808562, -380105, -10984379,
-3867618, 29426432, 20679730, 11647414, -25535192, 17805860, 13821205, -6940667, -8021389, -8005282,
--10413148, -4632659, 7839926, -18540836, 1415192, 1982664, 10621454, 28045062, 5142150, 5583458,
-1211181, -3680787, -6065031, 12000139, -7781944, 28326384, 8873939, -3054259, 12202002, 2095407,
--19617800, -14159433, 15935402, 18470506, 6638409, -4976257, 12140799, 13134010, 18784040, 37072012,
-3679176, -11020349, -19534048, -13109851, 9377524, 1831804, 2816962, -2055142, 12813498, 1118302,
--1921461, -17710298, -8915278, 17883706, 20045150, -7531762, -14159433, -16798154, -5108864, 8599061,
-5264556, 1365263, -5908802, 1171989, -319975, -7582228, -243739, -16425029, -4513474, -877247,
-11292006, -2347200, -3817689, -168577, 9103183, -5887864, 6439230, -3753802, -7891466, 6324340,
-8996346, 5739687, 6277632, -1087701, 6743636, 13111461, 5531381, 5465346, 3532074, -5162014,
--2521683, 138513, -1480690, 3783866, -4051765, 6325950, 8170639, 4778688, 332860, -6649146,
-2250026, 2123325, 6577743, 10770167, -11177652, 48993764, -7785165, 1646583, 5051956, -4188130,
--1111860, 11940546, -9613747, -11333345, -6120866, 15535970, 13879724, -38677256, 6968048, 6083285,
-15235860, -10230075, -15476378, -14821932, 10545755, 9440875, -15795816, -8871792, -6707129, 25275346,
-12568148, 6785512, -5357435, -27084600, 7185481, 6267968, 13376676, -3739306, 6945499, -7828652,
-2246805, -23584202, 9266392, 9031779, -2684, -6174553, -14856292, -29223494, 18335216, -12561169,
-9269076, 9416179, 16167868, 1869385, -17864916, 28766618, 5400922, -28971702, -13555454, 16653199,
-3753265, 21934398, 9151502, 3263102, -20646444, -10477573, 11056320, -35807144, 37807524, -27637040,
-1248225, 22441740, -6434935, 44905492, 6508486, 7797513, -16702591, 52381960, 5228049, 33933464,
--23597088, -10855530, -7609072, 12990129, -1687385, -5765994, 23698556, -20206748, 22852448, -27833536,
-5669894, 2403034, 4774930, -5698885, 20132660, -2829847, 10158671, 8766565, 13308493, 7306276,
-3765076, 9086540, 10358924, -8053, 3692598, 791885, -7312719, 8667244, 106837, 5838471,
-12604118, 6018860, 659814, -1036698, 9623948, 10119480, 5114233, -6383932, 21254720, -1372242,
--4418448, -4581657, 13601625, -10849087, 4642860, -2731062, 7258495, 29528, 2943126, 3612604,
--3048890, -2795487, 1978906, 3643206, 3438121, 3825205, 5404143, -5700496, 17769890, 41198936,
-13955422, 26038240, 33046016, -956167, 37830072, -28387586, -9922448, -10406169, -9133785, 4456566,
-6509023, -2017024, -12343199, -24342800, 24184424, 22916334, 9916006, 20744692, -32855962, -28322088,
-10086194, 14206141, -14988362, -21119964, 14166413, -6347425, -30610768, -10931229, -5532455, 15786152,
--28120762, 16225850, 11067594, 12953621, -12966506, -334471, -12824772, -5324686, -37592240, -8781061,
-18743774, -59665148, -18709952, -1832340, -1006096, 2556579, -35840428, -8523899, -54151484, -4058744,
-11095511, -15028627, -16723529, -6563247, 16710644, -5044976, -19329500, -21905944, -56537876, -19771346,
-26916024, -24657408, -37961068, 32544040, -9763534, -42507828, 13303661, 39371428, -20490216, -8903467,
-4984847, -27689118, 35281544, 16059420, 22680112, -11198590, -2216203, 12043625, 33600604, 16068010,
-5513128, -10141492, -2077154, 38371776, 3927748, 6437619, -2539400, -21755620, -9667971, 18315352,
--162672, 1669669, -3388729, -19365470, -1291175, 9174050, -12139725, 15221364, -18843096, -11663521,
-4129074, -6121939, 10103911, 4586488, -17143362, 7698729, 8904541, 5267778, 3498788, -6453189,
-4337917, 418222, -4056060, -11703786, 6295885, 5601174, -1259499, 9886478, -13477607, 2146947,
--12902619, 966905, 3620658, -4006131, -2112587, -33286, 5304822, 1380295, -3763465, 839666,
-46835008, 64849712, -10444287, -2272575, -25769266, -25910464, -44499084, 18507014, -7785702, 64788508,
--14010183, -28383828, -39448200, 2017024, 11893301, -14731201, 11982422, 42276972, -17161078, -7836705,
--30015378, -13770739, 28451474, 32921998, -33745020, -9729175, 16775069, -7475928, 7223598, -10239739,
-41421200, 33230162, 70853536, 22953378, 31132070, -14270029, 22217328, 47900160, 15252503, -3320547,
-10853382, -1867237, 31006442, 16179142, 45388140, 12664248, -46557984, 15989626, 17440252, 37810744,
--21677236, -18336290, 21648246, 23683524, -11775190, 38026568, -13762149, 15476378, -42409044, 26403312,
--10234370, 14397267, 14588930, 33339684, 28675886, -23283018, -24487220, -7926899, 34781720, 35372812,
--13761612, -19881404, -38217692, -4458713, 26309896, 30093762, 19787988, -8977555, -25399362, -23825794,
--4399657, 16337519, -16694538, 22835268, 5383742, 15915538, 2573759, -8296803, 17929340, 11381663,
--2991445, -7843147, 5457830, 15358803, -22635552, 8925479, 10983842, 14978162, 8038568, 21221434,
--7247758, 7429220, -10190347, -14696841, 8257075, 17874044, 15590731, 24028194, -419833, -386547,
-7068980, 6338298, 42849280, 8184597, -1976759, -18867792, -46171, 27441620, 13845364, 21189222,
-12249247, -668404, 260919, -4828617, -290984, 26409218, 21859236, 2240899, 8118025, -2738579,
--4440996, 907312, 11099269, 8420820, 7353521, -5776731, -5647882, 6358162, -16513076, -53391276,
-3159485, 80406080, 47834124, -11876658, -119198768, -17558364, -12576201, 8683887, -14024142, 1639604,
-11864847, -5152350, 4839355, -26446798, 15992848, 19201188, 36190468, -27167816, -33984464, 34008088,
-54432268, 13172128, -24862492, -33183992, -7436736, 7478075, 2632278, 7978439, -224412, 11368778,
-4446902, 35115652, -11858942, -49969796, -21731998, 15076946, 5407364, -17792976, -21922586, 2085744,
-22853520, 40438192, 37483792, -1618666, 293132, 14699526, -14958297, -43319040, 12592844, -27349278,
-50707456, 55093156, -1430761, 14933601, 7715909, 10280004, -25013352, -4450123, 52930640, -20941724,
-237834, -73186240, -9845139, 7255811, 16489453, 14805826, 14746233, -18837190, -11457362, 31765578,
-47707424, -9422621, -2253784, 3672734, 19116362, 22385370, -11026255, 6859600, -26218628, -31802086,
-3019899, 7410966, 11279658, -4809290, -4925254, -6897181, -6719477, 19946364, -205085, -5043902,
--11135776, -1999844, 12939663, 10642929, -6346351, 14955076, 3663070, 23338852, 2007897, 3134253,
-809064, -9842454, -7338489, -5563057, -5689758, -2945811, -7354058, -6462315, 1929514, 19061064,
-23140210, 5494874, 12066711, 3123515, 4285304, 18516140, -14285598, 13682692, 5575405, 23336704,
--6523519, 4956393, 4720706, -11654394, 8035347, -6405944, 8215736, -4458713, 13911399, -6526740,
--8333847, 5064840, 3215857, 1539209, 5658083, 1589138, 9998684, -9664, 3915937, -173409,
-3714073, 1387811, 3233037, 4275640, 4912369, -1441498, 1176284, -804770, 6467147, 2259690,
-4908074, -1056562, 1348620, 826244, 3666828, 151934, 4112431, -1610613, 5600101, -6168647,
--53310744, -22055730, 42681776, 47029892, 44675712, 60555816, 10432476, -26050588, -79852032, -60630980,
--11390253, 16936666, 50661824, 55089936, 26081726, 1238561, -26783416, -23202488, -10268730, 17208324,
-47295644, 26858578, -6196027, 1731409, -3818226, -25942676, -35476968, -29058674, 5488968, 43528956,
-32728724, 65451008, 42599632, 42150808, 59340880, -17268990, -40935872, -46612208, -61869004, -76235672,
--28739236, -8992051, 22681722, 41977936, 60658360, 56651692, 46071040, 29126320, 58273044, -11395085,
--36785320, -1733019, -9344775, 15404974, 17656074, 69517264, 60742648, -22585086, 10924249, -15822660,
--46452220, -13728326, 12379169, -27996744, 43246024, -17317846, 14401025, 3665755, -4891968, 37368364,
-51979840, 41401876, 29185376, -21603686, -52487184, -59805808, 17111150, -25232396, 4650913, -2909840,
-33795488, 5238250, 19152870, -16166257, -36753108, -34202972, -53565220, -46677168, 19877646, 11101954,
-27087284, 40603012, 31722628, 1155346, -23861228, -38671348, -52279416, -28724204, -13282186, -19350976,
-8746701, -7086159, -5971615, -6295349, -15790984, 53150, -6943352, -10669236, -12500502, -8146479,
--1556926, 8252243, -15132244, -9682467, 3118683, 9179956, -3872450, 22256520, 2180233, -119514448,
--125791000, -130835976, -134110888, -177188336, -19280108, -50153944, -12178917, 16506096, 80646064, 91672856,
-94774896, 132698384, 183441280, 175785488, 172740896, 138797232, 100224136, 72837816, 21857088, -83758840,
--40227200, -49497888, -30683246, -100583304, -16734803, -41647224, -45894948, -83232168, -63997160, -65076808,
--58986544, -61582316, -108239080, -95819112, -56584584, -51129976, -64265060, -88972928, -13573170, -77911240,
--147706608, -126525440, -111132816, -58563488, -75517336, -13486734, -152885264, -67681704, -67752032, -31289374,
--22870164, -78702592, 3431142, -78851304, -9579925, 12279311, 36891084, 3305514, 37915436, 56691956,
-89081920, 95020248, 130666328, 85416696, 205079856, 129629632, 238718048, 162337408, 237816096, 275922656,
-327574464, 269124800, 270882528, 305371648, 273936768, 278276288, 270760096, 234825184, 135795056, 108569256,
-76540616, 55870544, 65320548, 97582728, 53716620, -19820738, -34046204, -39198020, -67407368, -87371448,
--106606992, -98105640, -161306624, -156182192, -160951216, -194863744, -171694544, -216455616, -191758480, -224902208,
--231070320, -217597536, -240194432, -217130464, -242545392, -192454256, -188666640, -156304592, -166918000, -171956528,
--121000504, -108269680, -82844552, -42172284, 14019310, 46000172, 40226664, 51495048, 45999636, 52050708,
-59733332, 85480584, 102659384, 92863096, 83463560, 102145056, 94983736, 117499568, 106909256, 78176992,
-71108016, 61879740, 54460184, 34305516, 25991532, 24237038, 15188078, 16736414, 6582575, 10861435,
-9470403, 6522445, 9510131, 6947110, 4096325, 1489280, -3804804, -588947, -148713, -10206453,
--16306380, -9359807, -8235600, -10747082, -10559177, -6575595, -7858180, -11259794, -15076946, -11584601,
--7606387, -6247030, -4045322, -4896263, -3707094, -650151, 3100967, 5426691, 4970351, 2710661,
-2294586, 5697811, 8583492, 6097243, 5935108, 2856690, 1320703, 3639985, 3057480, 3113315,
-2414845, 2506650, 1003412, -1867237, 2601677, 6408628, 6189585, 7444789, 8042327, 11662984,
-13684840, 13884556, 14847165, 15737834, 17164300, 18609556, 18673444, 17501992, 16856672, 18556406,
-15053324, 13044353, 11529303, 9912248, 6659347, 5365488, 2188823, 1528472, -294205, -3491272,
--6594386, -9566503, -10395431, -13165149, -13584982, -13288629, -13372381, -14816563, -15610059, -14462765,
--14071387, -12804908, -11777337, -10839961, -9656160, -7499013, -5458367, -4122095, -3292629, -2326262,
--1780801, -1297617, -1126355, -866510, -812286, -743029, -675384, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
-17017198,
-2232309, -5614059, 2633889, 2989834, 1023813, -7104413, 3218541, 5006858, -5430450, -1642825,
--6649683, -1478543, -2834142, -2451890, -970663, 346282, -245350, 653372, 2370822, -2976949,
-1307281, -6817724, 2325188, 4154844, 874563, -1809255, -5523865, 3578782, -2434710, 5802501,
-4955856, -237297, -2326262, 4725538, 5523328, 4429722, 4489852, 1095217, -3467112, 1058173,
-4246649, -1812476, -3621731, 3216394, 5122822, -2281702, 2668785, -5871757, -496069, -5153961,
-3485366, -6852084, -1857573, -1299765, 2323041, 3374234, 2397129, -223875, -3631932, 413391,
--5019206, -3333968, 902480, -650151, -3031710, 1618666, 1682017, 399969, 3145527, -2843805,
-1346472, -3830574, -1520955, -1648194, 2079838, -2001992, -4034585, -1835025, -1511829, 5500243,
-4743792, 1174137, -2538863, 295279, -307627, 933619, 1897302, 317828, 94489, 302795,
--91268, 46708, -724239, 518080, -2131378, 64961, -174483, 837519, 443992, -689342,
--939524, 156766, 369904, 367220, -179852, 19327, -428423, 9742060, -9768903, 396211,
-197569, -2454574, -2915209, -3105261, 1038308, -5493800, -5420786, 795643, 2668785, -176094,
-3157875, 2469069, -2969970, 1260573, -10718628, -2601140, -2377265, -2472291, -3362960, -3707094,
--9444096, -7327214, 1033477, 2245194, -484794, 5155035, 4123169, 1754494, -1800128, -991601,
-4825933, -1823751, 619549, -668404, -5019206, 1719598, -1663763, -3403762, -1303523, 4156992,
-9988483, -3766150, 1137630, 2459406, -1817845, 3171297, 1427540, -3447248, 2055142, -8199093,
--3787088, 128312, 3393024, 5266704, -3180960, -1451162, -333397, -11897059, 2063732, 6207302,
-357556, 933619, 3400540, -1903744, 5294084, 7144141, -875100, 2057826, 4294968, 4093641,
-830002, 260919, -1957968, -2811593, -1757715, 1298154, -2690260, 5974300, 4010963, -92879,
--2877628, -1445793, 3441343, 4060355, -1990181, 3160022, -1877975, 889058, -1915019, -1132798,
--1306207, 415538, 111132, 271657, 287226, -180389, -623844, -462783, -2564096, -8380555,
-1950452, 314606, -8106751, 1250372, 4553739, 6700149, 1725503, -4804995, 11347840, -1513439,
--2228014, 5340792, -3289408, -3199751, 551903, -4131759, 5060545, 5063230, -2039036, -7619809,
--3765613, 3808026, -4908074, 10800769, 9315784, -7431367, -9102646, 338229, 1707786, -8654359,
--563178, 3593814, 2434173, -4230006, -2464774, 9960566, -1052804, 6860674, -676457, -2209761,
--2310156, -5108327, 894427, -712965, 5369246, -4565550, 1243930, -1184874, 999117, -2681670,
--352724, 4545149, 3599720, -5652714, 8834748, 747861, -39728, -121870, -808528, 2415919,
--1217623, -7888245, -1122597, -4155381, 6888591, 2907156, 179315, 8483634, -4682051, 5682779,
-5565741, 534723, -4118874, -818191, -877784, -65498, -1173063, -1682017, 2338610, 2505577,
--3741454, 1819992, -222801, 2651069, 2315524, -738198, 360240, -1131724, -1759863, 1282585,
--1620276, -1335198, 690416, 1804960, -1636383, -1186485, -2128693, -880468, 1274532, -778463,
--313533, 59056, 644782, -1143535, -673773, 1672353, 539555, -312459, -520228, -1806571,
--78383, 965294, 552977, -20148228, 4707821, 1150514, 14471892, -712428, 5855651, -7682086,
-1735167, -5740224, -1322850, -2779381, -848256, 2712272, -1490354, 2537252, 4923107, 3774203,
-13743895, 9504763, -6140730, 3201898, -264677, 2590402, 1682017, -1679332, -13519483, 3507378,
--625455, -66035, 5226439, -743029, -3721589, -2569464, -572841, -4153770, -2199023, -10792179,
--2478196, 352724, -3766150, -614717, 4570382, 6508486, -2013803, 8026757, -5885179, 1377074,
-2789045, 1109712, -1777580, -4123169, 3033858, -986232, 1895691, -3046206, -4360466, 893890,
-2649458, -4405026, 4336307, -2988224, 10229538, 10847477, -3206730, 4003983, 4209605, -490163,
--1327682, -1377611, -13097503, 5573257, 5422396, 232465, -2145336, -5429913, 649077, -1544041,
--6638946, -14960445, 1058173, -3655017, 3927748, 70867, 10737, -2439005, -1627793, -2757369,
--209380, 1614371, -1889786, 2363306, -2343442, -1325534, -947577, -526134, 1301375, 1096827,
--741956, 548145, 410706, 901406, 1413581, 1114007, -631360, -1516124, 1203665, -594316,
--1117228, 517007, 461172, -622233, 910533, 1442035, 537945, -103616, -4363150, -6641630,
-6558415, 3723200, -610959, 7588671, -4124242, 6804839, -7738458, -7425999, 3562675, -11830487,
--4217121, 2944737, 7145215, 9357123, -1677185, 6977175, -282931, 6644315, 2427730, 1055488,
--1138166, 336618, 6619082, -3202972, -741956, 1184337, 536334, -6589554, -858993, -3586835,
-13526463, -6512244, -6616934, -1621887, 6352257, 6411313, 5482526, 7369627, -1324461, 1334661,
--1685238, -3692598, 2753611, -353261, -745177, -4218732, 10596758, 6541772, -3335579, 2007360,
-3098819, -5633387, 1145146, 4117263, -1094680, 7964480, -3271691, -1053878, -8726300, -3291019,
--7427072, 313533, 10128607, -4021163, 2824478, 1728724, 301721, -2791729, -993211, 77309,
--2538863, 4874251, -5073430, -2380486, -498216, 10719701, 1647657, -74625, 3336653, -2931852,
--8104604, 1987496, 757525, -1290638, 529892, 1970316, -586800, 399969, 3859028, 734976,
--369904, 925565, 1611, -528818, -991064, 3629784, -234613, 302258, -3379603, 2013803,
-456340, 2005750, -550293, -1366337, -467615, 1020055, 1585917, 1066763, -2767033, 135828,
-1858110, -590558, -3475702, -2298881, -19144280, 13739600, 1370632, -7095286, -16918950, -1759326,
-341450, -10041634, -985695, 4555887, 3864934, 282931, -2967286, 3590593, 11943230, 12124693,
--5318780, -5818607, -13326210, 2565169, -2476586, 12778065, -5331128, -364535, -3109020, 4760435,
--1534914, -13259638, 4235912, -697395, -7904888, -70867, 1139777, -1148367, -1425392, -5495411,
--7638063, 4508105, 1039382, 5920076, -5308580, 10016937, 4694400, -2161442, -9039832, -1851668,
-3135326, 9795747, 2964064, -5658620, -2644089, 4511863, 2863133, -2942590, -1498944, 4760971,
-3860639, 5029944, 9681393, 10843182, 5234492, 5738613, 6610492, -4005057, 872415, -7300371,
-7124814, 1065689, 3549254, -5236102, -8130373, 1761474, -10365904, -3771518, -4580046, 7460895,
-7791608, 8193724, 2066416, -2415919, -2726231, 7649874, 1462973, -1152662, 1836099, -2505040,
-4822712, 184147, -184684, 1549410, 1913408, -839129, 3929895, -73551, 570157, -2011655,
--1283122, 1043140, 3038689, -264141, 1025960, 1756105, 933082, 538482, -1071594, 1439351,
--1384590, -2007360, 1589675, -6840809, -392990, 12840342, 7898982, 10858751, 2076617, -11848204,
--3898757, 12610024, -3620658, -7961796, -8301098, -8167954, -8648454, 4779762, 4849018, 3124589,
-2855080, 2957085, 12126303, -1478543, 5267778, -10387378, -11702175, 7862475, -409633, -6370510,
-464930, -16291885, -5320928, -5474473, 2008971, -551903, -1501091, -11454678, -7508677, 1296006,
-7929047, 12902082, -5105643, -5029944, 6864969, -8820789, -632971, -427886, 2961380, 5659693,
-4597763, 8952322, -4792647, 12968117, 6104759, -13960254, 6986838, -7747584, -9278740, -7690139,
--11224360, 10184441, 2383707, -11933567, 1364189, 2552284, 1104880, 1923609, -2198487, 8453033,
--4893579, 6505802, -10413685, 7923678, -5288179, -4779225, 1020592, 3535295, -414464, 5735929,
-16328929, -1337882, -8772471, 5211406, 10696616, 890669, -1175210, -8452496, -3716221, 7924215,
--1353452, -492848, 255014, 1632625, -2226404, -1228361, -210990, 2369748, -1364189, -236223,
--1566053, 4493073, -3278134, 732829, -3082713, -3782256, 988916, 1283122, -1218160, 647466,
--1133335, -788127, -265214, -379568, -117575, -1567663, -982474, 4620311, -261993, 90194,
--464930, 1762547, 968515, 1586454, 26386132, -24171002, 10882910, 11365020, -10976326, -2146410,
-15703474, 5565204, 9899363, 2819109, -3703336, 23728084, -1164473, -4678830, -229244, -120259,
-11282342, 17799418, 6611029, -324807, 157303, 2501819, 5980205, -286689, 3076807, -12781823,
-5751498, 9606768, -2262374, 3800509, -204548, 1621887, -8316131, -6528351, 250719, -477815,
-10901164, 5287642, 4387846, -4877472, -5959804, -5946382, 6186364, 9093520, -129386, -3187403,
-17942226, 9202504, 11920682, -6736120, -13750875, -2777233, -14390288, -9529459, -4482335, -6112276,
--1024350, 10417443, -3569118, 210990, -8894340, -9470940, 10366977, -732829, 4723391, 5083094,
--5728950, 9963787, 2434710, 711891, -3743064, -7004555, 7764764, -2643552, -14337675, 7965554,
-6687264, 8338679, 3637837, -10151692, -2300492, 726386, -10603201, 5735929, 5743982, -1174137,
-4284230, 3559454, 3806415, -1177895, 6140730, 741956, -467615, -3427921, 1361505, -269509,
-4845797, 885837, -360240, 828929, -268435, 3517578, -1805497, -668404, -2689187, 1056025,
--879395, -2144263, 198642, 309775, -957778, 364535, 3878892, 2884608, -1998234, -1370632,
--2871723, 474057, -795643, -570694, 227633, 286689, 1162862, -1991791, -18442590, 2422899,
-6278169, -8990977, 7757785, -15636902, 3749507, 4943508, -1926830, -6114423, -7864085, -9216463,
--15670725, 2148558, 18151606, -5793911, 8837432, 4950487, 13543106, 7233262, -4895726, -11369315,
-6085432, -2779918, -3919695, -11789685, -1611687, -1480690, -4581120, -4982699, -2566243, -8252780,
--10820096, 12940736, -1082869, -7328288, 10242960, 3666292, -8597988, 1434519, -461709, 5839008,
--11479911, 3400540, 4197257, -17115444, 5944772, 5738613, -8679055, 2662880, 865973, -2675765,
-6562710, 701153, -1002338, 872952, 4513474, 11733314, 9453760, 11970074, 8397735, 4335233,
--2862596, 17761300, -4277788, -8939438, 19794430, 1406602, 12050068, 2644626, -3577171, -18080202,
--16580184, -4081293, 1286343, -6548752, -2990908, -5124433, 11781632, -10029822, -2715493, -1633698,
-3054796, -9791989, 7364795, -702764, 2493766, -772020, -3587908, -6350109, -4065724, -4987531,
--3850438, -1148367, 906238, -3043521, -1954210, -1670205, 4482872, -4850092, -4063039, -3472481,
--3899830, -116501, 3657702, -1446330, -1389959, 2479270, 869194, -1177895, 1935420, -3025268,
--3095598, 2634963, -3653407, -6300717, 2519535, 5727339, -2729989, 654983, 4113505, -1267552,
--2841121, -3171833, -30862024, 15214922, 26735098, 1933809, -15051713, 6977711, -2719788, -974958,
-4443681, 2661269, 6934225, -7986492, 1002875, 23971824, 18423262, 16136192, -17452600, -658204,
-4372277, 9253507, -8340827, -9329206, -2334852, 3111704, 8366597, 4217121, -22470196, -25482040,
-8018167, -751619, 14472429, 14868640, -9473087, 12324409, 9899900, 13159780, -833224, -7681549,
--8047158, 6346888, -8526047, -3182571, 49392, -258235, 7864622, 16715476, 9387725, -4429185,
--3868155, -8102456, -2047089, 853088, 4540854, -1646583, -2878702, 8287677, 5185100, -12409771,
--123480, 651761, 15116137, -7450695, -8610873, -16299401, -5537287, 2955474, 1141924, 8633421,
--1791001, 2270427, -7312719, -10773925, -9867687, -9856950, -5720897, 4930623, -20589000, 2620467,
--2854543, -3077344, -4327717, 4242354, 11330124, 8395050, 1339493, -1680943, -10446434, -3171297,
--936303, -1956358, 6950868, 3710852, 2141041, 1705102, 3625489, 4384625, -1578937, -1568200,
-131533, -1710471, 390842, 658741, 1406065, 2507724, -6678138, 1238024, -844498, 5291937,
-1401770, -6529424, -355945, -4052302, -3250753, -1462436, -1486596, -1565516, -833224, -640487,
-1789391, -133681, 3681324, 3361349, 2813741, 4912906, 15463493, 1144072, 13401909, -1982127,
-17434346, 8631274, 13566191, 8287677, 3861176, -6913287, -814433, -4376035, 9258339, 2633889,
-8115341, -8002598, -1504312, 14432701, -18080202, -10166724, 13866302, -23812910, -10567767, 1633698,
--4647155, -11857331, 23722714, -4394826, 16347719, 6476811, -14478872, -2328946, -5524402, -17486422,
--22667226, 17870822, -289910, -6693170, 4327717, 193810, -3118146, 6422587, 2448131, -2458869,
--8417599, 1457068, 16884054, 14285598, -12020003, 4584341, 809601, 13318157, -6249178, 8982387,
--19463718, -4817880, 13080860, 4299263, -4550518, 15620796, -5136244, 10910291, -21593484, -24894704,
--9048422, 346282, -17661442, 18813568, 13252658, 19113678, -8949101, -6637872, -6797860, 861141,
--9885404, -242129, -15044734, -13688598, 499827, 3677566, 13707388, 6395743, -1575716, -5239860,
-4232691, 7841537, 5115306, 3049964, -5033702, 5629092, 5039071, 6361384, 4702453, 3378529,
-5099737, -7306813, 5922760, -4479114, -2311766, 9317395, 8254927, 5477694, -1108638, 186831,
--2639258, 4702453, 1411971, -2145336, 2526515, 4770098, 635655, 3671660, 3614752, -5090073,
-1531693, -3888019, -1195075, 1006633, 21640730, 15575699, 24380918, -21556978, -16186121, -36965172,
-16002511, -4074850, -31572304, -6089190, 3058017, 4702453, -11759620, 12918188, 10937671, 1263257,
--82141, 2050847, -5178120, -10973641, 2491618, -6225018, -10241350, -97711, 24044838, 780610,
--3571265, -19139448, 8158291, 15175730, -7763154, -23102630, -4124779, 7830263, 2840047, -4879620,
-5116917, 1678259, 8399345, -2310156, 13804562, 21005074, 8016020, -13920526, 15890842, 7144678,
--17781702, -18985366, 20750598, 10019622, -7960722, -9252970, -369904, -16827682, 12425877, 16273094,
--294742, 937914, 4186519, -2059974, 17881022, 6000070, 4721780, -7355669, 2974265, 6024229,
-22064858, -5254356, 8519605, -16998406, -19276350, 17300128, -2499134, -1600412, 1896228, 16489453,
-473520, -760746, 10510859, -4961761, 2189360, 9554155, 11763915, -5557151, -7133941, -15618649,
--7588671, 5117454, -6781754, 5451924, -46708, 5784247, -2997887, 4268124, 1014686, -2398202,
-2011118, 8749385, 2290828, 8709120, 2762738, -5498632, 494458, 3637837, 3154117, -5396627,
--4807679, -5257040, -2111513, -4129074, -3896609, -6422587, -2615635, 3586298, 2430415, -649614,
--889058, 1962800, -4110821, -99321, 5661841, -1545115, -726923, -2642479, -2063732, -1150514,
--7979513, -1140851, -2988760, -3249680, -4851166, -7015292, -24796456, -1812476, -16137266, -32996086,
--34013456, -14559939, -25910464, -11610907, -3973919, 4951024, 14884746, 16575889, 1924145, -8581345,
-17835388, -8688182, 8918500, -32575180, -2976949, -22268332, -14861661, 15503758, 10961293, 10669773,
-3717294, 22215182, -1968706, -1124745, -15569256, -5235029, -2934537, -10518912, -10624138, -26725434,
--10356240, -2729452, -4098473, -16440598, 15009837, 6125697, 9057549, -7099581, -2578054, -40687300,
--11548093, -11035918, 9730248, 21226802, -12674985, -1735704, -23598698, -1475858, 12524662, -3663070,
--7804493, 5610838, 17854180, 30284352, 6564321, 1197222, -1410897, -7815230, -11774653, 8275865,
--7673496, 27491012, 5608691, 11973832, 55818468, -10817412, -9207873, -13797582, -19227494, -2402497,
-19233400, 8784819, 2964601, 6555731, -7778186, -5986648, -16703128, -3822521, 9782325, -1320703,
--3498251, -1356673, -3702262, 2232309, -374736, 3929358, 3995930, 4052839, 5265093, 5721434,
-14405320, 8871255, -4995047, 8467528, 31675, 753230, 6172405, -6622303, 380641, -7676181,
--4527433, -10591389, -7781407, -11058467, -9110163, -6052683, 12620225, -7480223, -4092567, -8864276,
-819802, 2910377, -1711545, 3937948, 1753420, -22012, -7418483, -27755152, 15832860, 26058104,
--15337865, 822486, 5890011, -8959839, -2110440, -19419158, -345745, -10886668, 28308130, 8053,
--5269388, 22687628, -5701032, 6597070, -25957708, 13498008, 4090420, 17584132, -8143258, 13088913,
-23191212, 24829206, 14014478, 22377854, 11549167, -3585761, 21844204, -10561861, -14249628, -4621922,
-8823473, 14725295, -35337380, -2456721, -22810572, 18131204, 8324184, -496069, 6353867, 25401510,
-1194538, 22662394, 9809705, 34343096, 3207804, -3973919, 15182709, 4920422, -17416092, 3710315,
--1918777, -23591182, 16641925, -14256070, -22828288, -47029356, 3787624, -5858873, 27768038, -15455977,
-37115496, 12127914, -462783, -5726802, 14578730, 15129022, -26873610, -11625940, -19810536, 6888591,
--8839580, 20226074, 6644315, 6750078, 10004589, -4754529, 1939178, -7188165, -2266669, 492311,
--2465848, -20970714, 8470212, -115964, 6414534, 125091, -5921150, 592706, 8780524, -13980119,
-12232067, -5172751, 219043, 1284195, -11409044, -1074816, 7328288, 3493419, -8104067, -3543885,
--1736777, -9913321, 3604551, -2878702, 14644765, -11569568, 5428302, 9918690, 3914863, -4311611,
--2801929, 4789426, 2738042, 2947958, -2175401, 4970888, -14954002, 4041027, 4071629, 6528887,
--4248260, -7226283, 966368, 6394133, 1330366, 17534204, -12265890, -13685376, -13470628, 16850230,
-8584566, 22040162, 5881958, 68863896, -20874614, 49929, 193810, 31883690, 13008382, 14590541,
--21453898, 8957154, -8657580, 277562, -10100152, 1830193, 22948548, -6444599, 7054484, 44659068,
-13791140, -20691004, -24182276, 2456185, 29004452, 14979772, 5245229, -11667816, 24641838, 3922379,
--4034585, -27757836, 8059506, -4676683, 11496017, -25226490, -15534897, 983011, -6667400, 2962991,
--23559506, -1116155, -14499810, 6267431, 20264730, 16149077, 5057324, -32185948, -62277, 2837363,
--29052232, -25965224, -17331266, -14337675, -14333380, 22420266, 4861903, -963146, 14491220, 23325430,
-5975910, 20159502, 223338, 13241384, 90058488, -20936354, 14563160, 10064719, -16213502, 3053185,
--60559576, 901943, 29577830, 7517804, -16900160, 22716618, 5221070, 8449811, -15357192, -3722126,
--13167296, 4201552, 791348, 834297, 4831302, -18972482, 6583648, -10547366, -7771744, -25862146,
-6019397, 5560909, 4771709, 6272263, 31662498, 4522064, 3102577, 3364570, 2184528, 18809810,
-1929514, 7765301, 6372121, 14276471, 5549635, -1184337, -3543348, -2961917, 2110440, 8939974,
-10734197, 2957085, -17096118, -8024073, -4024921, -4032974, -5851893, -17848274, -4561792, 5880884,
-13155485, 36283884, -17322140, -1185948, -24855512, -18153216, 5515275, 15715822, -20608326, 23929410,
-9881646, -32161252, 19298898, -13220446, -16049219, -1651415, -19346680, 4150012, -8810052, 24270324,
--14449344, -1465658, 13284334, -47862580, 6546604, 14396730, -14595373, 11346767, -28963648, 28341952,
-2888903, 4581120, -54575076, 48668960, 20786032, 15731928, 840740, -31355946, 28164784, -2194192,
--14305462, 49760416, -10216117, -22410066, -11827803, 5661841, 14287746, 13340168, 3437585, -8858907,
--59261960, -7079180, 14554570, 446677, 21465710, -31412854, 31777390, 2822867, 10608032, -31933618,
--9310952, 4634270, 40568652, -17399986, 9327058, -29635274, 25617332, 14014478, 24166170, -9856413,
-10601590, 3743064, -32091996, -30939334, 16564615, 13211319, 25799868, 5082020, 33165738, -50752016,
--65947076, 10001905, -14059575, 36653252, -24426016, -5764920, 4102768, -28524488, 1205812, -17246442,
-14385456, 20117626, 1887101, 16214038, 18264348, 4926328, -16830904, -8971113, 29492466, 14871324,
-3678103, 4613332, -9069360, 127238, 17891760, 9534291, -14792941, -8866423, 16637093, -2986613,
-10303627, 9910100, -6632503, -9210557, -8841190, -562104, 8800925, 3417183, 11305428, 15796353,
-1183800, -1183264, 13253732, 158377, 2531346, 3562139, -5782637, 3903052, -9987410, 4884989,
-1844152, -490700, 4165045, -4853850, -45926084, 41895260, -9034464, -10115185, -16340203, -4774930,
--36211944, -67626408, 23363548, 19417548, -2970507, -13943611, -27540940, -4553202, -8535174, -14653892,
-26658862, -60483340, -25834228, -31933618, -9511742, -46055472, -4234838, -6944425, -1642288, -7722351,
--9330816, 7410429, -448824, -20391968, -6377490, -473520, -27886686, -14913200, -8225399, 2020782,
-21472688, -11033234, 43035572, -22501870, -3224984, 18078592, -19197430, 11650636, 2441689, -29521458,
--44141528, -10843182, 11259794, 40223980, 17443472, -30862562, -13063143, -88550952, -29646012, -6421513,
-18597208, 48029544, -2579128, -51536388, 2826625, 27919434, -10331544, -2487860, 29606284, 31149250,
-71547176, -79177720, -15399068, 11144903, 19955492, -25046638, -29721710, -42385960, -42083164, -23584740,
--19617800, -5595806, -3104725, -48978196, -20365124, -18022756, 17976586, -9342628, -4945118, 43898324,
-33204930, 2542084, -6437619, -2160369, -27355184, -1360968, 9513889, -19807852, -10712722, 3554086,
-12221329, -8508867, -9844065, -6706055, 13631689, -9375914, 14279693, 825171, 14738717, 10434623,
-10532334, -8502425, 5173825, -20846160, 10308995, -2973728, 5926518, -18488224, -14462765, -2335925,
-4321274, -10561325, -140123, -23405424, -4480725, -3111167, 9421011, 11864847, -15181636, 29759828,
-106300, 10787884, 6152541, 21418466, 21298206, -1498944, 13295071, -25519622, 6718940, -10059887,
--62293668, 14647449, -10263898, 18991272, -16876000, -17424146, 1804960, -25824564, 4948876, -26047366,
--57982, -4191888, -9900436, 13153337, -19279572, -25356414, -23046794, -29853244, -4582193, -2906082,
-34029024, 7820599, -23992224, -35992364, 5264556, -381178, 9152038, -6704444, 20820928, -23548232,
--9015673, -33229088, -21013128, -9293772, 1611150, -13824426, 35506496, -11878269, -29420526, 9646497,
-36841156, 26714160, 11274826, -25355876, -16223702, -2285996, 33510408, 63504312, -54761, 12758737,
--11587822, -61495880, -13045963, 5934034, 23854786, 53064856, -28672128, -35470524, 21540872, 10261214,
--11865921, 1964948, -19096498, 12433393, -51688856, -5731097, 3567507, 12970801, -30928596, 36621040,
--50523848, -57897232, -53111564, 27376122, -10424959, 51448340, -70762272, -30838402, 6340446, 73117520,
--5233955, -12728136, -39464844, -14439680, -4050154, 35377108, -2338610, 75162, 2749316, 6330782,
-1352915, -302258, -14512694, -12715788, 17435956, 7610682, 2709051, -37958384, 10248329, -9616969,
--3827353, -19564112, 1582696, -1586454, -2913599, -44727788, 4854924, -9763534, -4436701, -3723737,
-8323647, 7516, 3491272, -154082, 984621, -537, 923955, -16245177, -2454037, -10413685,
--8324721, 7936026, 8860518, -13030931, 1221918, -9261023, 12949863, -4433480, -20117626, 3221762,
-36753644, 10874857, -67126040, -12328704, -46494096, 19996294, 3267933, -92053496, 5662915, -28657632,
--59905668, -46626700, -68291056, 41427644, -21265994, -53739704, -24575266, 16864190, -32395864, -27855010,
--22036940, -13134547, -24240796, -23848880, -43906912, -31700080, -59998544, -33870112, -30866856, -10361072,
--28639916, -6109054, -13778792, -1169305, 1558536, 7542500, 15915538, -16716013, 13105556, 1343251,
-29730300, 12941273, 18282066, 18879602, -56392384, -14949171, 43914428, -7984881, -28452548, -31519692,
--23904714, 17580912, 71293776, -5097590, -1902671, -48678624, -50183472, -10730439, 9330816, 42789148,
--3839164, 38970384, 13657459, -47837344, 84849760, 1315334, 65802120, -164819, -17995912, 35498980,
--49028124, -62414464, -40786620, -137842144, -84461608, -27719182, 61938796, 38279968, -56251724, -36674188,
--85418848, 41411536, 54633056, -43482248, -44268764, 9478993, 35647156, 52038360, 13466333, 29637958,
--29263222, -15882252, -22403086, -32563368, -14468671, -3441880, 1737314, 743566, -18888192, 2141578,
-10527502, 3282966, -4211216, -13356275, -10078678, -15161235, -6913824, -22111028, -6151467, 12411382,
--22416508, -34600256, -6620155, -23023710, -16834124, -3502546, -30329986, -22987738, -7592966, 12671227,
-12261595, 14719390, -2282238, -13287555, -4053376, 3940633, -9367861, 19947976, -1129576, 14305999,
--1293859, -1436130, 13304735, 10633802, 15129559, 36419176, 21452824, 26664768, -23364622, -56738128,
-65994856, 63124744, -39915816, -51758652, -255014, 56654912, -6158446, -3252364, -17667884, 49557480,
--5521181, -13168907, -1242856, 13728326, 25380036, 740345, -19138374, -21662742, 30499100, 2339684,
--13190381, -32599876, 18514530, 10334228, -3786014, -25667262, 8022462, 11175505, 9116605, -16190953,
--9863929, 2982318, 25114284, -7304666, 8955007, -36968396, -10424959, 180389, 24311662, -51495048,
--9339406, 5154498, 37034428, -17721572, 5633387, -26234198, 3461207, 11068668, -18284212, -13677860,
--2297808, 6194954, 11178726, -11602854, 637266, -45838040, 24732570, -7518341, 42928736, -26546656,
-19050864, -18006114, 19808390, 3924526, 13217762, 11559368, -33680596, 38067904, 7283191, 22050362,
--37165424, 10477573, -9616432, 6085432, -10757282, 1682017, -2787971, 5258114, 12319577, -1748589,
--15014669, -8559333, 3528853, -1760400, 674310, -5519570, -14651744, 5062693, 3557844, -4224101,
--4347044, -24696, -4791573, 923955, -8113730, 0, -4115653, 6720550, 3478924, -2426657,
--6113886, 2270427, -149787, -4847408, 3419868, -15526844, -462783, -1586990, 6708739, 537,
-17865454, -11809013, -12611098, -3914863, 9269613, -12809203, 19178640, -16135655, 7939784, -7779260,
-17451526, -15664283, 19235548, -10870562, 14966350, -13581760, 23455354, -22157200, 16898548, -4927401,
-12643310, -11843909, 12430172, -13454522, 14077292, -13554380, 11254425, -9014599, 12492986, -9713605,
-10415296, -9676561, 2931315, -3140158, 6311455, -4794794, 5186173, -4241817, 4224637, -3034931,
-5826123, -3564823, 2267206, -2790118, 3100430, -2425583, 1115081, 488553, -19240916, -42899744,
--57077968, 41793788, 27759984, -32510218, -46368468, -22673670, 21611738, 11380053, 28716688, 30903900,
-6133750, -15440407, -4431333, 10873247, -10497974, -772557, 6470905, 1842541, 17344152, 12152073,
-5326297, -15427523, -477815, -9517648, 10104984, -16167868, -13992467, 11905112, -3656628, -6525129,
--6404870, -11210938, -15403363, 1281511, 12758200, 11649025, 9782862, -3583613, -12685186, -11005854,
--7668664, 13904420, 18874770, -8654359, -13030931, -5579163, 15677704, 8149164, 20941724, -14636175,
--5512054, 8338142, -3837017, 789737, -2142115, 7503845, 4528506, 6082211, 1345399, -13996762,
-5927592, 2731062, -433255, 11032160, -5586142, -2680060, 1973001, -1901060, 1486596, -3970161,
-18591302, 4769025, -1412507, 17750562, 17745732, -17830556, -27095338, -9838159, -18532784, 681826,
-12393665, 3645354, -11053635, -13303124, -3503083, -2461553, 10778757, 5239860, 6747394, 10157061,
-6195491, -5456756, 6271726, 4530654, -13006772, -17394618, 5326297, -4483409, 8797704, 6546067,
--9542880, -2427194, -3193845, -3379066, -11101954, -5983427, -623844, 3680787, 5406827, 15012521,
--7329899, -5383205, 3876745, -3296388, -4307316, 8843875, 368293, 19603304, -47634944, -125403920,
--46101644, 22486302, 65233036, 137773424, 92197912, 23722714, 34942244, -18420578, -56082608, -93145496,
--81036904, -64435784, -18580028, 2469606, 44824428, 49407156, 105197704, 51060180, 33675764, -2652679,
--22422950, -50646256, -26291642, -40956808, -47215648, -29086056, -24336896, -1829656, 13157632, 39343512,
-24333674, 28236188, 25683904, 25941602, 39046084, 3353833, 27056146, -5033702, -12139188, -32964948,
--19625316, -49154292, -72321880, -63218160, 753767, -10768557, 19844360, 33960308, 18643916, 52395916,
-45781132, 66227320, 37723236, 44907640, 2237141, 2187212, -35413616, -57905824, -67627480, -81226960,
--53359600, -66387308, -5566278, -288837, 31961000, 33481954, 80232136, 62986768, 89620936, 36341864,
-41909756, 17443472, -358093, -53494892, -87195888, -58430884, -69655776, -43438764, -47158740, -4438849,
-7319161, 27814208, 36553928, 49466212, 50548008, 48551384, 31836446, 34757560, 9083856, -6337224,
--11926050, -39210368, -35694936, -46939160, -33120104, -46922516, -35701380, -3764002, 8404177, 24684250,
-37347960, 33252174, 34338800, 56484724, 20500416, 34473556, 26528402, -35676684, -64471756, -28008556,
--56842280, -35904316, -19477140, -4107599, 5111011, 18074296, 32869384, 22803592, 35358856, 22369264,
-19273666, 7709467, -2115272, -20561082, -6688875, -9667971, -35938140, -33678448, -9214315, -3845070,
-1974611, 11789685, 13902272, 17510044, 14091788, 13838921, 5286568, 4650376, -111132, -7901129,
--3817689, -2899103, -7912941, -12837120, -4249334, -6426345, -7367480, -877784, 3577708, 3899830,
-6002754, 7105487, 8892730, 5690832, 4224637, 1312113, -700617, -2229625, -3507378, -4809827,
--5105643, -3714610, -2746632, -2067490, -1822677, 41876, 975494, 1110786, 1637456, 1739462,
-2630131, 3909494, 3933116, 1130113, 780610, 1054951, -507880, -2042257, -2685428, -3712462,
--3187403, -2237141, -657130, -887985, -36507, 1539746, 1659468, 1575179, 2268817, 1816771,
-1059246, 74088, 63888, 117038, -257698, -1005022, -863288, -1021665, -999117, -1023813,
--650688, -391379, 114890, 441308, 841814, 932545, 733903, -30602, 353798, 511638,
-343061, -132607, -598611, -794032, -656593, -408559, -60666, 222265, 530965, 369904,
-141734, 164819, 227633, -165893, -328028, -277025, -264677, -208843, 12348, -11274,
-26307, 100932, 104690, 48318, 19327, 10201, -9664, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
-7642895,
-806917, -2076080, -2172180, 1324997, -3704409, -62277, -7210177, 5160403, 6544994, 4571456,
-6441377, -7742216, 619549, 1764695, -2765422, -2129230, -1893007, -9066676, -1531156, 5382668,
--9283572, -7543573, 4381404, 3972308, -5967320, -2084133, 3939559, 501437, 4790499, 2051384,
-4990215, -3142306, 949188, 688805, -1334661, 2323041, 1822140, 3388192, 1416802, -1501628,
-318364, 3786014, -1031866, -1727114, -649077, -4586488, -10122701, 6010807, 2911451, -3168075,
-4429722, -1780264, 483184, -158377, 2053531, -2672544, -702227, 5973763, -5637145, -2259690,
-1946157, 972810, -879931, -280247, 2610803, 296890, 2310156, -4014721, 4072703, 2097555,
--5239323, 4163434, 359704, 1506460, -634581, -1557463, -6114423, -1891396, -467615, 3134789,
--816581, 2563022, -1545115, 302258, 753767, 304406, 1809255, -327491, 114354, -224949,
--1248225, -566399, 231391, -666257, 75162, -33286, -293668, 1666447, 1666447, 871342,
-687732, 606127, 204011, 3758, 211527, 89121, -267362, -747324, -851477, -191663,
--88584, 11988327, -6839199, 2134062, -7562901, 949725, 1812476, -7624641, -9651328, 2455111,
--10474351, 2351495, -2705830, -689879, -6410776, -898722, -7203197, -3685082, 63888, -7622493,
-8172786, 2901251, -12666395, 1242319, -665183, -2264522, -5403069, 2767570, 6623377, 166967,
--452045, 6221260, -3600793, 114354, -2280628, 4134443, -4769025, 1443646, 5814312, -4997732,
-5088463, 1813013, 5500780, -434865, 1271847, -793495, -2279017, 7199439, -8863739, 2085744,
--3907347, -1676111, -1131724, -3204583, -2366527, -7056095, -4428648, -1074816, 4642860, -360777,
-1759326, 6492380, -126165, -5569499, -696322, 234613, 1776506, -2703145, 31139, -5478231,
-138513, -2212445, 1842541, 2894271, 4233764, 1531693, -2357937, -3064996, 4154844, -1354525,
--1874753, 801548, 2318746, 4793184, 598611, 1395864, -293132, 2821794, -525597, -2184528,
--1115081, -1067299, -83752, 1921998, 386010, -97711, -991064, 1862942, 10737, -660351,
--498753, -442919, -520228, 899259, -353261, -64961, -1046898, -2835215, -9854266, -76236,
--5921686, -1842004, -928787, -6916508, -909459, -1581622, 3495567, 8149701, 8203388, 1007170,
--3442416, 3298535, -7857643, -1094680, -2978560, 2790118, -11731166, 4192425, 2041720, -396748,
--3341485, -5044439, -2273112, -4156455, -3554622, 2234457, -739271, -4484483, -1267015, 943819,
-7740068, -268435, -7718593, 636192, 3396782, -69793, -2393371, 671089, 2978560, -8417062,
--603443, -3646427, 5985574, 3635690, 1060857, -7781944, 938450, 3028489, 4842576, 4499515,
--5072893, -2391760, 290984, -1583769, -1549410, 4190814, -2528662, 2571612, 760746, -3263102,
--678605, -4490389, 5491116, 2054068, -5300527, -3685082, 970126, 2859375, -4190278, -5354751,
--847719, 278099, -3502546, 778463, -1397475, 1820529, -3333432, 5066988, 2779381, 3820910,
-1160715, 509491, 3502546, 4647155, 614180, 1323387, -369904, 663572, 153545, -191126,
-593779, 391916, 614717, -733366, 104153, 355409, -180926, 79457, 1626182, -903554,
-433255, -1082869, -782758, -729071, 241592, 578747, 478352, 44560, -918586, -674847,
-1672353, -16796006, 5485210, 4909685, 8195335, -2076080, 5162014, -14483167, -3929895, 4588099,
-580357, -7146289, -1830730, -2354716, -12679817, -5120675, 1330903, -549756, -9028558, 5698885,
-8092256, -8235063, 6316823, -10795400, -3642132, -940061, 3768297, -27917, -4349728, 3000572,
-1522029, -694174, 4879083, -2313377, -3076270, -945430, -1738388, -3177202, 4800700, -3630858,
-1389422, 3589519, -683974, -2807298, -5275831, -621697, -3752191, -1135482, -4372277, -1171989,
-9862319, 222265, 6013491, -5459977, 5053029, -1546188, -7981123, -4714801, 4486094, -2898566,
--4037269, 2947958, -4754529, 4012573, 1118839, -1459752, 5268851, 4733054, 2126546, -5167383,
--5821828, -391379, 7856569, 1567126, 1230508, -4414690, 1200443, 2819646, -5912023, -2168422,
-1984812, 4173098, 2112050, 3534221, -150861, 45097, 1345935, 177167, -621160, 223338,
--460098, -742493, -2586644, -2098092, 692027, -1258962, -704912, 897111, 450972, 658741,
--114354, 1087701, -647466, 60666, -876173, 18254, -1073742, 571231, 245887, 779537,
--1415729, -8842801, -8396661, -5494874, 1229434, -1279900, 3675955, -2939905, 173946, 784368,
--2387465, -807991, 2327872, -2371896, 10190347, -6412386, 4810364, -1564979, -515933, -4507032,
--1113470, -488016, 7477001, -4834523, 824634, 1570884, -6996502, -4228396, -4725001, -4008815,
--8137353, -2711198, 3160022, 5785321, 3741990, -6483790, -9184788, -1906429, 459562, -4616553,
-1046898, -3089692, -4707821, -11436424, -5648419, -7973070, 4853313, -1955284, 3977140, -4519380,
--11117523, -5844914, 734976, -2157684, -3528853, -1543504, -4269735, 6173479, 718870, 3652870,
-4877472, 1330366, -15569, -3776887, 353261, 5245229, -701690, -3642669, -5060545, 8542690,
--6811282, -9626095, -6714108, -3834869, -5240934, 6249715, 9940165, -7641284, -5180268, 1333587,
-4918275, 7408282, 5938866, 4625143, 4617090, -1436130, -1749125, -2080375, -2103997, 1933272,
--1215476, 621697, -1523640, -2627983, -933619, -1855963, 1650878, -1110249, -2266132, -1305670,
--1226213, -2341294, -2537252, -1580011, -493384, 676994, 690953, 1416266, 363998, -4115653,
-704912, -523986, -1505386, 628676, -539018, -1153736, -2578591, -2165201, 283468, 135828,
--728534, -945967, 209380, -1174674, 935229, -1007170, -470299, -374736, -1768990, 2319819,
--18468360, 5707475, -1298691, 3273302, 10144176, 3978750, -2495376, 3428458, -7611219, 4712116,
-5548561, -10071161, -2132988, -5104569, 5697274, 4930086, 7726110, 8924942, -11587822, -5995775,
-1940252, 9959492, -3757023, 4619774, -11071352, -3374234, -3861176, -2377801, -6686727, 1641214,
--10954314, 7589744, -2119030, -1978906, 5606543, -362388, 1314797, 5881958, 207232, 4807142,
-3292093, -1406065, -1856500, -691490, -7663833, -5697274, -6995428, -486942, 14720464, 3361886,
-2896956, -389768, -1984275, -170188, 8827768, -1923609, 2810519, -16957068, 15627239, -3823595,
--2704756, 837519, 9603547, 3409130, -1516124, -5857799, 16749299, -3277060, -119185, 5274757,
--4136591, -94489, 2478733, -3825205, 3383897, 3196530, 13859859, -6925635, -8525510, -1662152,
-4219806, -5260261, 1257352, 3477850, 1243930, -3111704, 1472100, 3563212, -2191507, 237834,
--3824669, -1328756, -1040993, -3310346, 4345970, -3155727, -2471217, 1831804, 4832, -3729105,
--197569, 773631, 1693828, 72478, 1973001, -1423782, -983548, -1182727, 1377611, -1454920,
-2340220, 124017, -774168, 885300, 2443837, -4173098, -163746, -1162862, 7885560, 4374424,
-8788040, -3671123, -2227478, 5017596, -8319889, 7280507, 8323647, -4335233, -820339, -13362180,
-519154, 4453881, 3582540, -2914672, -9126806, -18401250, 185220, -3216931, -8791798, 1918240,
-5727339, -8049843, -3494493, -8769786, 4273493, 390842, -1399623, -2986613, -3866008, 9233643,
-10788421, 4132296, 5083094, -2534031, -5581847, 15090904, 3669513, -2697240, -9035001, 6472516,
-164283, 8633421, -881005, 10693395, 5293011, 7451769, 6283001, 3153043, 8298414, 10387378,
--410169, 1835025, -3460133, -213138, 5617281, 2292439, 3004867, -9382893, -3515968, -2061047,
--8188892, -7829189, -5198521, 4225174, 8810052, 11558294, 15149423, 3295314, 1225676, 12193412,
--5009006, -9367324, -3336116, -4792110, 7849590, 6404870, 2384244, -8875013, -2499134, 1470489,
-1166621, -1802276, -4153234, 1145683, 925565, 4985920, -1324997, -2899103, 481573, 897648,
-1138166, 7516, -32749, 921271, 2221035, -1729261, -1706713, 69793, -305480, -2390686,
--634581, -3025805, 3113851, 955093, -2317135, -173409, 2078764, -1222455, -297427, -1828046,
-863288, 1071058, -875100, 2712272, 2017024, -384936, 14025753, -13481365, -6387153, -1893544,
-5318244, -12620761, 7829726, -12436615, 5983963, -136365, 6356015, 10102837, -4262755, 9217537,
-10106058, 9586904, -5700496, 8070244, -8883066, -7121056, -1171989, -5528160, -166430, -4769561,
-7927973, -6034429, 1683627, -5959804, -10350871, -4897874, -2239826, 12306692, -10486163, 9669582,
-4231617, -14532559, 16467978, 3962644, 1773822, 11504070, 1992865, 409096, -6648610, -147103,
--3741990, 13130789, 5527623, 9168681, -3681861, -2307471, 6328635, 10915123, -11595338, 11314554,
-2027761, -1977296, -2209761, -10983842, 5179194, -5247913, 2155537, 361314, -9903121, 3203509,
-8285529, -7698192, 5237713, 3339874, 11621645, 1115618, -836982, 6957847, 10160282, 702764,
--5902359, 6725382, -7947300, -4246649, 2064806, -3331284, 2092186, -2697776, 975494, 4279935,
-3186866, -3359738, 2781528, -1795833, 2237141, -2401424, 7074885, 578747, 6755447, -954020,
-1671279, -1574642, -616328, -2308008, 4275640, 1664300, -3569118, 3563212, 4288525, -622233,
--613107, 2485712, -205622, -370441, 3572876, -258235, 867047, 2167885, 1503775, -707596,
-2731062, -2419677, -425202, 376347, 736587, 456877, -157840, -478352, -2730526, 1142998,
-4062502, 1005022, -11422466, -8178155, 12395276, -15913928, 3994857, -8480413, 9436580, -10118943,
-15422691, 5330592, 1486596, -13409425, 6818798, 11314554, 2991445, -6904697, -4478041, -3962644,
-10521596, 5701032, -14687178, 2054068, -10389526, -597537, 1191317, -8905615, 11645804, 11659762,
--5301064, 2535105, 7933879, -9709847, -1466195, -3010235, -8009041, 17019344, -6187438, -3845070,
--8575976, -14374719, -2263448, 231928, -4942434, 2096481, -11855183, 1010928, 854699, -2415919,
-9400610, -1993402, -7279433, 3761318, 15032, -5502390, 4708358, 20171850, -4019553, 4770635,
-1127966, -13771276, -2204929, 12206834, 5552319, 12117176, -1214402, 6986301, -9654013, 4303557,
-4318053, 1385664, -8196408, 7567196, 2732136, -21410412, 1708860, -3907347, 14332843, -5534602,
-11141682, 10225243, 8309688, -1073742, 3221762, 433792, 886911, -1444183, -2297271, 5528697,
-2312303, -129923, -3641596, -5230197, -1141388, 2162516, 3692061, 2541547, 4720706, 106837,
--1186485, -1976759, -1423782, 1624571, 2859375, -315143, 2275259, 1380295, 489089, 1953136,
--300111, 2043868, -3402151, -4381404, -5594195, -331786, 2683281, 1112933, -2572149, -1033477,
--1768453, -2133525, 3581466, 997506, 1657321, 1402307, -25104620, 28077812, 3183645, 10995116,
--20620674, 11034308, 14405320, -16913044, 6245956, 8156680, 6280853, -10980621, 1279900, 1766305,
--3798899, 6179921, 12890271, -10608569, -8846559, -3331284, 10906533, 9407052, 13370233, -798864,
-5566815, -10215043, -2776696, -2763275, 2070174, 6203007, 17130478, 10134512, 6140193, 3135326,
--710817, 8100845, -3191161, -14967961, -3014530, 4207458, 4596689, -8822400, -6703907, -10890426,
-1939178, -1003412, 3636764, -7191923, 12474196, 12175159, -10806675, 25227564, 1031329, -2483565,
--276489, -5435281, -1273458, -1777043, -10392747, 18254, -98247, 6584722, -21485038, 5079336,
--7697655, 15360414, 18607946, 7956427, 7657927, 3346853, 1125281, 16760036, -3296924, -12661564,
-10580115, -5787469, 2747169, 8201240, 15117211, 1986959, 1382443, -12354473, -650688, 3413962,
-9554155, -4358855, 5136781, 2378338, -3819300, 9667971, 1542430, 4248260, -2976412, -1061931,
--2949569, 323733, 1018444, -1653562, -195958, 2803003, -1743220, 2842732, 1911797, -2248416,
--329102, 1237488, -989990, 83215, -2116345, -6781754, -2006287, -1163936, 6827388, 8420283,
-743566, 1107565, -2560338, -3022583, 627602, 782221, -3678640, -2937758, -1954210, -1775969,
-2214593, -4123169, -278099, -3069828, 10419054, 2117956, -6991133, 6806450, 10147397, 8825084,
-5636071, 10497437, -12432857, -7890929, 1562294, -11251741, -2681133, -1803886, 2669322, -2821794,
--7232725, -9165460, -5426155, 4669167, 7965017, -13595719, 3043521, -1344325, -221728, -16405701,
--14670535, -2497524, -11345693, 5506148, -12957379, 923418, 7159174, 10162966, -8786966, 12059731,
-3207267, -1111323, -2493229, 17844516, -4801774, -810675, -14127758, -7955890, 11794517, -815507,
-4561792, -13673028, -14890652, -4045859, -8333847, -1413044, 815507, -5486821, -6957847, 4297652,
--6446209, 644782, -9574556, -5202279, -85362, -15986405, 1642288, 10622528, 2179696, 5607617,
-11669963, 19772956, -18854370, 3525095, -11567958, -11355894, -6211060, -8616778, -5397700, -5063767,
-19466402, 10669236, 10856067, 2271501, 3316789, -13894756, 863825, -4860829, 2415919, -6005975,
-8723615, 11319386, 1291175, -5055714, -3274913, -9577240, 1066763, 5964099, 3472481, -2284386,
-6301254, 2986613, 6660958, -1345935, -986232, 1101122, 4406637, -2642479, 1998770, -3906810,
--5275294, 3998615, 1633698, 851477, 1091459, -7435126, -4231617, -6442, 5953899, -4804995,
-3088618, -6451041, -1950989, -1009317, 2513630, 1582159, -1710471, -1557999, -8391829, 3684008,
-20176146, 21372832, 23446226, -16902306, 1559610, 12788802, 10126996, -9744744, -18935974, -1930588,
--2570001, -14818711, -8452496, 29025388, 2554432, 2275796, 11039140, -929324, 4887136, -3642132,
--11099269, 7822209, 6563784, -15098958, -21626770, -16660178, -13208635, -12530567, 1522029, 4065187,
-6805913, -8221105, 8661338, 2338610, -3912715, -8716099, -23085, 838592, -13688061, -10598906,
-1881733, -2185602, 2182917, -8123394, 7116761, 2472291, -7696045, -16747688, -6487011, -5423470,
--22464290, -6817724, 2390149, 11585674, -826244, 13656922, -2090039, -765041, -19113678, -3760781,
-7868380, 3992172, -32160178, 9652939, 3059091, -8672613, -5247913, -9059697, -10394358, -54761,
-735513, -9907416, -3070902, 6938520, 9693204, 15266461, -11142756, 927713, 8639864, 8053,
--24551644, -19368156, 4295, -4835597, 6437082, 214748, -5868536, -8473970, 4322348, -2151242,
-3945464, 10541460, -52076, -4597763, -8224326, -15075335, -5068599, 1367410, -2348810, -2186138,
-1230508, 1446867, 7100655, -3093987, 931471, 3031173, 1574642, -5151814, 853088, -969589,
--13276818, 1835562, -4786204, -5622649, 2388539, 2128693, -3886409, -805843, 5053029, 1897302,
-1484985, -4490389, -5454609, -1486596, -237297, 801548, 3643743, -5913633, -520228, -3706557,
--2312840, -4874788, 8249559, -6431714, 22857280, -18993420, -11588896, -3609383, -36208720, -18747532,
-188442, -22945326, 18351858, -7857106, -7260642, 2397666, 41649372, 20299090, 1551557, 8831527,
--1655710, -10764799, -841814, -16837346, -12174622, 6260989, 6259915, 7773354, -11688753, 15649787,
-9608379, 17663054, -17343078, 3187403, 25884694, 2762201, 1285806, 5429376, -24363738, 6649683,
--5989869, 4420595, -9681393, -22840636, -1205275, 9766219, 11649025, 3347390, -3419331, 2076080,
--861141, 8087961, -17336636, -25121264, 4758824, -8913668, 15422154, -5691369, -6157910, 20306606,
-4658429, 8970039, 1763621, -16405164, -6729677, -1591285, 9244380, 26671746, 20360830, -5598490,
--23046794, -46171, -2518462, 9031242, -14159433, -17484274, -10037875, 8935679, -18030272, -2386391,
--15111306, 550830, 12410308, 84826, -22724136, -4559108, 3149285, 6481106, 2961917, -13768055,
--9493488, -14762876, 2467996, -2712272, -6524056, -4595078, -6524592, 1789928, -2669859, -5822365,
--1707250, 4977867, 58519, 310848, -7673496, 337155, -653909, -4406100, 477278, 10063645,
-3249680, 2275259, -9753871, 4362076, -1032403, -578210, 1583769, 327491, -155156, -1450088,
--5807333, -5937256, -5319317, 7193534, 5791764, -2094870, -14555644, -4799089, -5400922, -589484,
--7751342, -41739028, 15823196, 12939663, -6300717, -27665494, -6257768, -10795937, -11325829, 11880953,
-14763950, -1759326, 3899830, -31416612, 10800769, -39266200, -10057203, -3621731, 7599945, 19407346,
-31022548, 12710956, -18225694, 3959960, 21629992, 2659122, 6469295, 11582453, -18512920, -7329899,
--3052111, 5319317, -13083544, -7208029, -4070555, -9969156, -7556458, 12991739, 12860743, 3078418,
-941672, 22165790, -4357781, 10207527, -25495462, 16546898, 4678830, -23267448, 2221035, 7090991,
--21740050, -3070365, -21262236, 6788196, 8785356, 9209484, -14349486, -1513439, 14096620, -12137578,
-56371, -2207613, 23347980, -14188961, 17176112, 8449274, -21955336, 18877456, -16189879, 12032888,
-16175384, -16755204, 9181029, -14347875, -17535278, -26627186, -22025666, -24383066, -5827197, 3948686,
--7320772, 20680268, 21757768, -9585830, 19168440, -3310883, -4130148, 24109798, -5516349, -16771847,
-11344082, -2838974, -12874701, -10239202, 9613211, 1328756, 4955856, 7263864, 1298154, 5899138,
-9680319, -3008088, 10863583, 7089918, 5396090, 5783174, 866510, 3382287, 9233106, 7036767,
-9364102, 964757, 7771744, -1906966, 508954, 6354404, -3403762, -12702366, 5766531, 1484448,
--9664, -224412, 5510980, -11323681, 5546414, 7129646, 6176700, -7689065, 6323803, -33299956,
--15965467, -16601659, 28340342, 443992, 10331544, -5106716, 40367324, 6009196, -27659052, 1563905,
-29551522, -11533061, 6261526, -5384279, 2185602, -17951890, -24041080, 37048924, 26269630, -10706280,
-20068772, 7607998, 26230440, 29845728, -9261560, -7597261, 26526254, 19296752, 1782411, -8966818,
--13793824, -14499810, 12063489, 23298050, 10759967, -4793721, 15560130, -8860518, 14748381, -7243999,
-21692270, 38679940, 29402272, -32351304, 14162655, -5906117, -13396540, -897648, 10698227, 10253698,
-71093520, -7701950, -1160178, -12123619, -13106093, 13443248, 25419228, -6813966, 19223736, 16281147,
--2665564, 106300, -14333380, 13686450, 11499238, 37549288, 38270308, 46488728, 19100794, -12494060,
--10143102, -22093312, 20662550, -32440962, 22684406, -30483530, 17199734, -11081552, -18454938, 12527883,
--48966384, -38911328, 6571300, 7028714, -14317810, -13986561, 22214644, 10766409, -21254182, 2573759,
--5172215, -11928198, 3304441, 5311264, 1352915, 5386963, 6525666, 11698954, -6091874, 1851131,
--7276749, -12673375, -7842074, 2368138, 629213, 16232829, 3155727, -4601521, -14018236, 1610613,
--5813775, -4922033, -6470368, 4140885, 9692667, 3029026, 8357470, 6801081, 11186779, -5443334,
-8424041, 605590, 2159832, -1364189, 341450, -7396471, 7740068, 18891414, 10034654, -2639258,
--2581812, 16175921, 13660680, -11278047, 4492536, 8491687, -5342940, 23117662, 5710696, -51896088,
-12696997, 7584912, -38488276, 3005403, -6087043, 2328409, 14945949, -1187559, -35544612, -5705864,
--10922639, -1306207, 26192322, 31453120, -16901770, -3678103, -14099304, 8301635, -27125940, -52989160,
--18685256, -15482283, 3379603, 1631014, 24984362, -35976256, 18045842, -7784628, -3524558, 15848429,
-7615514, 26311506, 6344741, 10604811, 27843200, -30455076, 39475044, 31717260, 16631724, 29801168,
--10779294, 11804718, -26700202, -4622459, -13206488, 24835648, -20839718, 5939403, -45296336, -55945172,
-38339564, -950798, 24892020, -16428787, 16622597, -10450192, 3945464, -5646809, -36751500, -10941429,
--24434068, -10984916, 13873281, 55938728, 20082730, -47818556, -10610180, 13696114, -10882373, -6466610,
--31753766, -15802258, 25200720, -8477192, 6379637, 5705327, -19667192, 13497472, -2570001, 1804960,
--40760852, -11142756, -533650, -17957258, -10324565, 2392297, -27494770, 3737695, 6545530, -21674552,
--17402134, -30943628, -23399518, -1366873, -12833899, -5450314, 1080184, -8261907, -8705362, -2889439,
--13771276, -5887327, 2061047, 10398116, -12133819, -3579318, -20961588, 8341364, 5435281, 13324062,
--8561480, 13824426, -27222040, -769336, 189515, -1071058, 4371203, -3601330, 3073049, -11870216,
--13200582, 968515, 5485210, 489089, -10383620, 3747359, 3213173, -32349156, 17044578, 16993574,
-30245696, -14798847, 11097659, -17011292, -19687594, 8731669, 40186936, 65001644, -4016331, -4385162,
-1415192, -1523103, -28939490, 45441828, 21932250, 24123758, 18740016, -13285944, 15887621, -25774636,
--36856724, -6500433, 27763742, 17863842, -13113609, -8672076, -1719598, 22237194, 1068910, 16161425,
-16115791, 26341034, 8976482, -16850768, -15687368, 14972793, -17669496, -13486734, 8016557, 28913720,
-27017492, -30879742, -23540178, 15600932, 19066434, 57007100, -13082470, -31402116, -32087700, 27143656,
--20448340, 25586730, 29451664, 58629524, 125220848, -28218472, -15677168, -47116864, -74298104, -24069534,
--37274948, 4002373, 52123188, -7930120, 27749246, 38837780, 25971668, -14803142, -45863808, -75967768,
-42547020, -3322694, 48361332, -25037512, -65227132, 22519588, -38500088, -52144124, -26193394, -16866874,
-16884590, 15849503, 29901562, -2608656, -13931263, -2707440, -769873, -27220428, -25503516, 12761422,
--8725226, 26002806, 24590298, -11999602, 24501178, -19402514, 1036161, 23164906, 3068217, -37358164,
-10371272, -19084688, -2671470, -6511171, -4364761, -27721866, -21641266, 3748970, 32841468, 33950644,
--31709744, -4433480, 40008156, 37050000, 734976, 7307350, -34916472, -19571092, 6017249, 20143396,
--30034706, 7180649, 24789478, 11335492, 9904195, 1985886, 15991237, 22781580, 12150999, -3463891,
-4209068, -24753508, 5171141, -22518514, -62959924, 16456704, -26035018, 26817238, 4336307, 15193447,
-13346074, -57531088, -40653476, -19862076, -12330851, -12984223, -23265300, -6868727, -38953204, -24584392,
-19397146, -25140054, 49272940, -35811976, 4175782, 10588168, -3427921, 4823249, -1664300, 12200391,
--10896869, -11669963, -1688459, 9283572, -1116692, 21487722, -19349364, 5008469, 31016106, 10358387,
-4999879, 16138876, 2339147, -11904039, -7537131, 25398290, 5970005, -38679400, -17005924, -31272194,
--14105209, 42787000, 39747236, -40070436, -4110821, -45635100, -10757819, -3247532, 11041824, 23779086,
--37491308, 25869124, -31864900, -4841502, -21471078, 49216032, -9458055, 34901440, 32422172, 71979896,
--32508608, 30062624, 5145908, 28601260, 10115185, 21978958, -35405564, -32185948, 48010220, 2987687,
--1455457, -33085206, 38821672, -12351789, 20077362, -34843996, 75006232, -39321500, 41868952, -49400176,
-20114942, -37055368, 21178484, -34076272, 26107496, -21314312, 15460809, -11572253, 8649527, -18011482,
--11293080, -8134668, -2043331, 7382512, 1447404, 6107444, 723165, 6024229, -2551748, -8794482,
--14889041, 7664369, 7811472, 2979097, 7173133, -4862977, 2953864, -3676492, 3087008, 26501558,
--6230924, -17594870, 2837900, -9599252, -19441170, 7099044, -10524280, 8709657, -8797704, 7395397,
--16978006, 7854422, -22016540, 14797236, 32257888, 5945846, -56051472, -24031952, -34308736, 3098282,
--7174206, -76059040, -33950104, -19098646, -40024800, -24470040, -76687176, -64516852, -10896332, 29090350,
--41765872, -24464670, -5238787, -35352948, -7376070, -1854352, -34250752, -8333847, 8187282, 2809446,
--45778984, -25529822, -25697864, -13743358, -15586973, -3696893, -31488552, 28142774, 18603650, 39716636,
-57140780, 49953692, 13443785, 52759916, 21669720, 10316511, -21991844, 19209242, 19781546, 16005732,
--5021891, -16565689, -7233262, 14075145, 23949812, 119257824, 16995186, 25492778, 18344880, 49469432,
-19685982, 43604120, 78221016, -36071284, -74626664, 10613401, 49328236, 87534120, 39274792, -73326904,
-11101954, -17354890, 109931832, 81397144, 98470712, 90629712, -76586248, -49923628, 64742872, 77786688,
--21246666, -43140264, -52604224, 121950768, 81408424, -3844533, -102709312, 26230976, -2865817, -21717502,
-29727080, 9084930, -7928510, -20881594, 738734, 17762910, 45991048, 33282238, -25531970, -9330280,
--5955509, -4284230, 26549340, 19869592, 20897164, 1758252, 11818676, 42812772, 29296508, 7332046,
-17835388, -9767293, 21947282, 28271622, 36383204, 46302432, 36264020, 28407988, 1777580, -4354023,
--7570954, -1293322, -18269180, -9139154, -7845832, -22765474, -30268246, -34422552, -60958472, -33574832,
--21412022, -35668092, -67876056, -46369004, -39075076, -45615772, -54954108, -57827976, -18354006, -20566450,
--30636002, -15802258, -17985712, -10758356, -16540993, -15659451, -15633681, -11038603, -14913737, -8804146,
--11905649, -8205535, -9474161, -4892505, -10787347, -661962, -10654203, -14405320, -19047644, -55984900,
-89550072, 72307384, -62753768, 13925358, -1546725, 10008884, -2543158, -6264747, 22971632, -23256174,
-22428856, -9247065, -38118, 8860518, 7140920, 7996156, -199179, -13190918, -8543764, 14376866,
--11996917, -1560147, 13755707, -7628936, -8087424, -11083163, -20382842, -20350628, 14702747, -7445326,
-5375689, -12809203, 2393371, -27133456, -5058398, 7393786, 17279190, -11119670, 3637301, 11929809,
-18932216, -4608500, 15640660, -12875775, 50216220, -18745922, 17194364, 2291902, 9654550, -9469329,
-13170517, -5383205, 35715336, -5887327, 10922639, -25099788, 32743756, -17348446, -1553168, -4888747,
-4581120, -9846213, 19566798, -22836878, 18367428, -20927766, 26931056, -28410672, 34207268, -22895396,
--12613782, -14349486, -7482907, 1384590, -22939420, 14784888, -13721347, 12975096, 746787, 17931488,
-6430103, 12414603, 21478594, 9452686, -7908646, 5922223, 4978404, -3047816, 3550864, -6754373,
-7500087, -3754875, -358093, -6590628, 14937359, -15068356, 1003412, -1265405, 12009802, -2247342,
-2114735, -2768643, 4540854, -7035157, 5053566, -5982353, -3716221, 11911018, 10077067, -3005940,
--11156714, 7070053, 8821326, 10283225, -9771051, 8068633, -6952479, 6138045, 825707, 2535105,
--10517301, 10877005, -4558034, -12102681, 9652402, 10157061, -9035001, -1322313, -2520072, 3102040,
--8841727, 11764452, -11287711, 4388920, -12305618, 10839961, -9156870, 9398462, -7572028, 11461120,
--12918725, 13728326, -12785044, 7002408, -10838350, 10714870, -12283070, 9883257, -8145406, 12229919,
--13602698, 13637058, -12063489, 11424613, -9146670, 10601590, -9862319, 9051644, -7923141, 7361037,
--8099235, 7096897, -7517267, 7987029, -8238821, 7865159, -6879464, 6964290, -7106561, 6679211,
--6463389, 7480223, -6381785, 7296613, -5342403, 6330245, -5215164, 5325760, -5482526, 6524056,
--4828617, 4996121, -3924526, 5651640, -4201015, 4116189, -3739843, 2783139, -2858838, 3567507,
--2429878, 3813394, -2928631, 3885335, -2945274, -21910238, -45354856, -49906448, 42559904, 10810970,
--13088376, -67655400, -27162984, 37809132, 7754564, 27328876, 30455076, -10899016, -19043884, 975494,
-7259032, 5662915, 5093295, -11908871, -8752606, -6583111, 82678, 18394272, 9949829, -820876,
-4166655, -5215164, -8819178, -5595806, -4598836, 392990, 5452461, -4105989, 7022809, 7395397,
--24838332, -10992969, -10972568, 13338558, 9273908, -781147, -11548093, -15604153, 13670344, 3064459,
-9175124, 12779675, -23041426, -15304042, 4233227, 18629420, 9403294, -26199300, -16156593, -21276194,
--10155450, 5537824, 4832375, -8736500, 9660455, -3918621, -9192841, 4158065, 8800388, -6527277,
-2096481, -217970, -8220568, -716186, -2906619, -18599356, -18821084, -1126355, -20080046, -15022722,
-625455, 6118181, -4388383, 22174916, 16340740, 9344238, 683437, -2095407, -9873593, 12294344,
-5990943, 7183333, 6892886, -6178848, -2633352, -443992, 3496104, -11581379, -14153528, -1923072,
-6191732, 942745, 7841000, 5509906, -7399692, 2448131, 4297115, 3075197, -2406256, 7894687,
--9844602, -5825587, 18009334, 10392210, -11149735, -8324184, -5698885, -9886478, 10912438, -350040,
-1522566, 5050882, 3205656, -98784, -472446, -7366406, 4648765, 2833068, 6404870, -3626563,
--1137093, 4216584, -467078, -4865124, 17603460, -43889732, -119597656, -45456860, 27228482, 57605176,
-135826192, 79844512, 21707302, 28443420, -23544474, -43951476, -96218544, -64855080, -49749144, -16258599,
-19710678, 52969832, 41136660, 51425256, 49648212, 33692944, -11370389, -39173324, -33960844, -34847216,
--28055264, -40397924, 12395812, -25528212, 1855963, 18830210, 34720516, 19644644, 32497334, 42927660,
-779537, 12829067, 925565, -629750, -23997592, -3140695, -21357798, -41599980, -65758096, -36571648,
--20083268, 5340255, 4970351, 39119100, 54206244, 52197812, 62039192, 9082782, 40701256, 16194711,
--3710852, -38144680, -37465536, -50746112, -66733592, -45414448, -51722680, -32668058, 150324, 16078747,
-37087580, 60052232, 88310968, 70868032, 64095944, 34803192, -13290776, -13013751, -34743064, -73721504,
--56751552, -93176096, -61374008, -27088358, -20738786, 29219736, 55914568, 76793480, 54081156, 41544680,
-25140054, 28824062, 25190520, -3951907, -29118804, -27618250, -43774308, -48277044, -38566120, -26242788,
--24559160, -23181012, 10590316, 22772990, 40052716, 47722992, 38987564, 34430604, 19511500, 789737,
-912681, 4541928, -29020558, -48980880, -20198158, -42761232, -48688288, -1525787, 12060805, 27204860,
-27924266, 18027588, 29516088, 17330730, 23592792, -4872104, -601295, -20654498, -12605192, -10909217,
--13858786, -15613280, -12814572, 2238215, -5405217, 174483, 14308684, 20166482, 12486544, 11132018,
--2901787, -3350075, -312459, -137439, -6236830, -7050726, -1332514, -4100620, -4500589, -2435247,
--46171, -4284767, -1619740, 9019968, 3000035, 4254702, 5668820, 4853850, 1740536, 1660005,
--1074816, -3818763, -5586142, -4014721, -6545530, -5371394, -1459215, 1023276, 2261300, 4454418,
-3533148, 3265249, 4241817, 2949032, -1825898, 780073, 1706713, -1261647, -3488587, -3667365,
--2982855, -232465, -1333587, -2130841, -1321776, 1217086, -141197, 1245541, 3205656, 3160022,
-2630668, 1465658, 234076, 48855, -992674, -945430, -1580011, -1459215, -1132261, -970126,
--1589138, -840203, -823023, -603980, 463320, 1924682, 1089311, 1620276, 1845225, 1533840,
-927176, 237297, -589484, -1021665, -1619203, -1198296, -1356136, -1244467, -443455, -28991,
--504659, 249108, 1144072, 1394791, 908386, 567473, 618475, 690953, -158377, -599685,
--666794, -564251, -517544, -256087, -206158, -27380, 44560, 108985, 33823, 61740,
-52076, 56371, 16106, 21475, },
-{
-8093329,
-5188321, 158377, 290984, 6376416, 1604707, -3152506, 2183991, 4246649, -2122251, -3498788,
--12596602, 684510, -4220342, 8437463, -4155918, 4235375, 3432216, -430034, 2780455, 4671314,
-1301375, 1097901, -2270964, -2764348, -2117419, -3485903, 3074660, 1821066, -1617055, 2748779,
--1864553, -2786897, -3300682, -1604707, -2600066, 228707, 76773, -486942, 5808944, -3336653,
-4758824, -1703491, -1164473, 3172907, -1926830, 993211, -1926293, 3477850, -987843, -9861782,
-2971581, 346819, 1249299, 4962835, 2603287, 359167, -1086090, -3260954, 8484171, -4465156,
-3324305, 1719598, -3452617, 3555696, 1623498, -4126927, 3314104, -4256850, 285078, -440234,
-3766150, 613107, 3935264, -1501091, -8671539, -1864553, -2060511, -4140349, -3666292, -3674345,
-3051038, 1324461, 1097364, 1826972, 1868311, 363462, 909459, -1021129, 654983, -753767,
--300648, -2127620, 17180, -707059, 1657857, -157840, -463856, -325881, 217970, -1103270,
-425739, -479426, 645319, -352724, 159451, -1271847, -108448, -1589138, -926639, -907312,
-1342177, 15291157, -7649337, 782221, -528818, -517544, 3424163, -2832531, -11099269, -10234370,
-4713190, -3285650, -1014149, 2525441, 490700, 2491618, 2786360, -4913443, 2541010, 1733019,
--3505767, 3942780, 5973226, -4023311, -1376000, 225486, -6606734, -3027415, 577673, 7722888,
--1339493, -517544, -6583648, 3767223, -79994, -5911486, -2576444, 1946157, -970126, 1050656,
--5129265, -204548, 257161, -2139431, 5301064, 1279363, 1121523, 5119601, -630286, 6673843,
--2361158, -8679055, 3381750, 3277060, -3115462, -1406065, -1144609, 979789, 293132, 2308008,
--2060511, 1497870, -4779225, -297427, 2987687, -4570382, -618475, 2550674, 746251, -2431488,
-1451699, -1862405, 394600, 4313221, 1492501, -6133750, 7256884, 2672007, 2616709, -712428,
-4141422, 4611185, -2122251, -374199, 957778, 1124745, 1392643, 1899449, -279710, 82141,
-1399623, -292058, 136365, 845572, 2214593, -447213, 2257005, -167504, 488553, 1114007,
-239444, -754841, -264141, 737124, 720481, -214748, -1112933, -3708704, -8958228, -1068910,
-965294, 9891310, -3767223, 8477729, 2126009, -287226, 526134, 7584912, -1762547, -2072859,
--2194192, 5346698, 10856604, 2845416, -7485055, -10155987, -14450954, 1896228, -3774740, -6073621,
--3334505, -9418326, -44560, -4369593, 710817, 4526359, 4765266, -5368709, -4810364, -3413962,
-604517, -7990250, -871878, 2488934, -3619584, -1314260, 840203, 3227131, -4490925, 1176821,
-10566156, -433255, -512712, -3889630, 4400731, -1955284, 389231, 3363496, 4376035, 6505265,
--1037772, 964757, -1957968, -82141, -1110786, 865436, 10151692, -11273215, 252329, 2198487,
-5998459, -2488934, -2985002, -657130, -2818036, 8116952, -4468377, -10625749, -736050, -3166465,
--4451197, 2645700, -10523744, 3894999, -1125818, -2916283, 212601, 7438347, -2202245, -2789581,
--2866891, 3568581, -3341485, -901406, 627602, -299574, 1282585, 123480, 501437, 2211371,
-179852, 581968, -551366, 1778653, 390842, -348429, -2000381, -1070521, -150324, -1046361,
-2057289, 1257352, -1172526, 1539209, 155693, 231391, -1089848, 576599, -478352, 52076,
-531502, -16510928, 6165426, -5166309, 6919729, -6222334, -563714, 4786741, -9547712, -1644436,
-2912525, -2604361, 13914083, -5843303, -1760937, -5574868, -4654134, 7141457, 7952132, 3069828,
--9362492, -11311333, 10456098, 1745367, -10590852, 3949223, 392453, 5004174, -3139084, 4773856,
--6335614, 3080565, 10235444, 4218195, 4386236, 2313377, 182536, -2615635, 2141041, 787590,
--6978785, 106300, -2210835, -5140539, -5115843, -1955284, 4046933, -7373385, 1008244, -5337571,
--543313, -825707, 2433099, 4355097, 9248675, 3252901, -50466, 3961571, -4938676, -7283728,
--126702, 1682017, 759136, 8773544, -1995549, -1086090, -2805688, -1254667, 1253057, 4254702,
--1153736, 1771674, -4354560, 7097434, -1861332, -2496450, -1636383, 2291365, -3854196, 108448,
-4402342, -325881, -1256278, 637266, 3499325, 2739116, -537945, 2205466, -1883343, 1391033,
--1136019, 532576, 2508798, -895501, 1077500, 1050120, -1697586, 1698660, 1059246, 367220,
--722091, -1567126, -360777, 1901060, 1286343, -685047, 782758, -388695, 3156264, -301721,
--863825, -8252780, -1925756, -5356898, -547071, 10960220, 7005629, 4894652, -833224, -9647033,
-1345935, -6347962, -10225243, -3394635, 7358890, -5775658, -9066676, 2368138, 777926, -4517232,
-968515, 5159330, 1421097, -12085501, -3425237, 7594039, 8945880, 4460861, -10015864, -3634079,
-4563940, -1707250, -2156611, 649077, 3352759, 539018, 1239098, 10277320, 19327, 6216429,
-4818417, -79457, -4628364, -113817, -2731062, 6127308, -3504693, -5846524, 13422, 9614284,
-539018, 9550934, 5147519, 926102, 6170795, -1040993, 13260175, 1069984, 6560026, 7473780,
-691490, -6179921, -948651, -7393786, 3773666, -5298379, -2972117, -4885526, -3222299, -2344515,
-2426657, 820876, 3653407, -151398, -4224637, -3677029, 1373316, 6831146, -2024540, 1690070,
--7332046, 2323577, 6334540, 9727027, -3351148, -723702, 1610076, -3344169, -253940, 3211562,
--984621, 5899675, 388158, 1343251, 147103, 281320, 2175401, -1436667, -934692, -765578,
--443992, 597000, 730144, -1109712, 964757, -337155, -1177358, -1432372, 485868, -1359357,
--896574, -1705102, 831076, 1183800, -246961, 3328600, -2157147, 588411, -234613, -1883880,
-3167002, -911607, -448824, -1653562, 1797981, 1185948, -289373, 482647, 1586454, 10007811,
--14944339, -2750390, 12524125, -6211597, 2292976, -9658308, 4259534, 17617418, -2379412, 934155,
--741956, -12441447, 1007707, -789737, 18693308, -5895380, -912144, 8173323, -5149129, 11587285,
--7808788, -1163936, -11807402, 13354664, 185220, -5251135, 170725, 4894652, -6207302, 9285719,
--986769, 8230231, -58519, 4313221, -12906914, -8303246, -6022081, -1931125, 7780870, -11693048,
-6252936, 4835597, 1631551, -4838818, -7053410, 16087874, 3194919, -1819456, 6238977, -5678484,
-3381750, -7561290, -7431367, -3092377, -4990215, 17374754, 5186710, -3446711, -5163625, -6621766,
-5459441, 4515621, 1641214, -6106907, -748398, -2471217, 7420093, 675921, 6001680, -14021458,
-7627325, -1224603, 374736, -1555315, 2465311, -6185827, -2881386, -9721658, -3186866, 3544959,
-5932424, 6279779, 2317672, 2292976, 1462436, -3474092, 2072322, 1435593, -261456, -2326799,
--3887482, 2083059, 1934883, -2959233, 1527398, 220654, -2454574, 1619203, 441308, -1036161,
--586263, 168577, 469762, -1790465, 1247688, 709743, -2828236, -641561, -1456531, 249645,
-1977833, 1384590, -308701, 106837, -1320703, 3173981, 258235, -1082332, 6433324, 3219615,
-5320391, 1645509, 161061, -1884954, -7908109, -2392297, -5066451, 3248606, -204011, 12134893,
--10022306, -12938589, -3205119, 4145717, -3979824, -3068754, 10330470, 2138357, -5581310, -6444599,
--6685117, 11283953, -5573794, 7650948, -3580929, 8362838, -8196945, 1893544, 12793634, 4428112,
--17270064, 4062502, 455267, -2151779, -1480153, 1847910, -2008971, 1750736, -2768107, 1454920,
--643708, -7683160, 7821136, 8026220, -2313914, 8883603, -7465190, -1240172, -2108292, -3520263,
-9767293, -6924024, -12322261, -6876243, 2388539, -10035728, -9349070, -4641249, -3117610, -6405944,
--479426, 8346195, 8785892, 1398549, 9467182, 3004330, 1323387, 7192460, -7565585, -1277216,
-63888, -6203007, -537, -6007049, 7407208, -2047089, -1278827, 6172942, -1058173, -1858647,
--1200980, 7357816, -829466, 2611340, -7037841, -2452963, 4034048, -4540854, 401043, 194347,
-852014, -3444564, -2362769, -1781338, 178778, -1857037, -2224256, 798864, -285615, -1992328,
--838592, 336081, -153545, -573915, -634045, -1117765, 442919, -3745212, -2588255, -2500208,
--2477659, 100932, -77846, -836445, 994285, -1886564, 19265612, -9606231, -9250823, 6163278,
-15644418, 2994666, 14082661, 8016020, 12782896, 5634997, -2469606, -5891085, 4534412, -9659918,
--7373922, 10667625, 8899709, 22352620, -647466, 3064996, -8370355, 8602819, 3849365, -10037339,
--2440078, 12640626, -114354, -14030048, -5721434, -7938174, -2752537, 7752953, 7088844, -5347771,
--2646774, 9684614, -9502078, 4286914, 8121247, 9755481, -5305359, 8392903, -3638911, -12773770,
-4423280, 11653320, -3201361, 3339874, 2781528, -3997004, 1355599, 3470334, -3706557, 1272921,
-9395241, -5604396, -3017752, 8709120, -1946694, -1792612, -14561013, -5153961, -8820252, -14402636,
--9754408, 7195144, -4783520, -6168110, 12387759, 12436615, -3214246, 13378823, 5304285, 8784819,
--2537789, -6943352, 5726265, -7198902, -14416595, -8658117, -3752728, 7070053, 3204046, 11860552,
-2035278, -2567854, -1983738, -12885, 2000381, -3696893, 179852, -2149094, -369367, 2080912,
--418222, 332860, 3783866, -1394791, -751619, 3818763, -2862059, -1433982, -1913945, 1132798,
--2127620, 1398549, 801011, 602906, 1957968, 2576444, 1116692, 4644471, 518617, 3179350,
-1031866, 2393908, 2690260, -2387465, 2133525, 2354179, -1729798, -506269, -280247, -3338263,
-930934, -1723893, -9765145, -10446971, 14132590, -2364916, 32294932, -13312788, -6259915, -752693,
-7878044, -4515085, -4402342, -13318694, -15398531, 6942278, 1336272, 21243446, 6886980, -2182380,
--2425046, 14106820, 14416595, -11923366, 8654896, -11390790, 2995740, -4913980, -5860483, -3506304,
-2426657, -1865626, 7493108, 3737695, 8384313, -1059246, -3991098, -7881802, -1515587, 9140764,
-828392, -12181601, -1521492, 2944200, -5185636, 9621264, 8153996, 1677722, 2845416, -26582090,
--10162966, 9267466, -607738, 14894410, 4177393, 16790638, -1871532, -9109089, 8992588, -5100811,
-6140730, 1075352, 24506010, 20234128, 2411087, 5715528, -3315715, 8038568, 8564702, 9222369,
-10008348, 16226386, -273267, 2902861, -6200322, -5436892, 5113696, -7606387, -18807124, -13978508,
--299037, 11688217, -5875516, -10663330, -6089727, -5755256, -607201, -12728672, -479963, 2352568,
--53687, -1722819, -1218160, 1310502, 2780991, -354872, 2105608, -9506910, -5789616, -3041374,
--6699075, 588411, -2396055, -3932043, -2602213, -1607928, 3884261, 1564979, -3570192, 1174137,
-8546985, 4371203, -1757179, -3039763, -3832722, -2260227, -3080565, -6659884, 2487323, -2573222,
--491237, 4824859, 1624571, -962073, 976568, 1850057, -28014998, 22151294, -610959, 2541547,
--7742216, 12429635, -26597122, -17041356, -5355824, -6812892, -620086, -23845658, 4697084, 513249,
--616865, -10877542, -11069741, 4537633, 15235323, 2379412, -20275466, -4377109, -16597364, 13153337,
-8499203, 682363, -7335268, -3459059, -3732864, 10842645, -1518271, -197032, -2318746, -14685567,
-7668127, 10331544, -6140730, -3271691, 8045011, -15988016, -11641509, -17641578, -5959804, 4463008,
--11240466, -5360656, -454193, -18271328, 5615133, 11301670, 19998978, 2893734, -1957968, 1243930,
--13111461, -10285910, 15316390, -1075352, -5789079, -3598646, -23387170, -12548284, 4605816, -4933844,
--2706903, -1814087, 15341623, -2646237, -14534706, 1177358, 11365020, -284005, -7118909, -133681,
-804770, -6009733, -10188199, 8025684, -18750216, -9286256, -120796, 9075803, -11454678, 7258495,
-4824859, 6612639, 7060926, -7208029, -1807108, 8642548, 1668058, -5287642, 4972499, 7150047,
--6676527, 2480344, 6426882, 6053220, 9528922, 633508, -2902861, -1636919, 1567126, 118112,
-4189204, 3513820, 325881, -881005, -3040300, -1051193, 2093797, 4233227, -7041062, 891206,
--1342177, 2895882, 6783364, 317291, 4747013, -2557653, 3148211, 3863860, 5712844, 4440460,
-5572183, -438624, 3191161, -1056025, 2428804, 14551349, 13335337, 4656819, 22800370, -10614475,
--5114769, 3457986, -6347425, -2064806, 7244536, 24464670, -4292283, 4748623, -455267, -1797981,
--710817, 27015882, -13526999, 13889924, -449898, -18164490, 5626407, -18018998, -11155104, 9994926,
--9659381, 6997576, 83215, 724776, 11920145, 9541270, -15013595, -16919486, -12835510, -4446902,
-4454955, 4565550, 1485522, 3055869, -20339892, 2825015, -11067594, -25463250, 16860430, -5204427,
-15834471, 17026860, 678068, 6213744, -9540196, -11466489, -20185810, 4328254, 17885318, 2978560,
--8319352, 843961, -4350802, 2558190, -11026255, -8986682, -11011759, 1613297, -1625645, -3718368,
-11403138, 10321880, 6021544, 16861504, 1592896, -18206904, 22900228, -17197586, -5557151, -4482335,
--4823785, 19240916, -3444564, -28104656, 23383412, -9488656, -6009733, 6277632, 5682242, 18055506,
-11336029, 7430294, 8596377, 7857106, 5770289, 130460, 7336341, 9012452, 2111513, -93952,
-9548249, -1974611, 806917, -9305047, -2527052, -3113315, -5067525, 540629, -1079647, 5744519,
-3993783, 1554241, -1090922, 2653753, 889058, 1874216, 3672734, -1463510, -1893544, 621160,
--1872069, 2771865, 1044751, 1174137, 2021319, 1143535, 8774618, 6447820, 1546725, 1625108,
-20946018, 23699630, 5369246, -45204532, 1411434, 12499429, -15059229, 8834211, 17796196, 674847,
-4692252, 11153493, 8543227, 3182034, 15983184, 3463891, -2429341, 30180198, 11124502, 3773129,
-12957379, -10237591, 15938624, -11485279, -1156420, -1466195, -3893388, -16852378, 5419712, -11977590,
-21484500, -2115272, -4418985, 31636730, 4089883, 4471061, 10430865, 1018981, 5946919, -7319698,
--14024142, -1757715, 9205726, -16602196, 18907520, 17026860, 12548284, 3150359, 7412577, -11528229,
--11937862, -18882824, -8407935, -10272488, -9761387, 4271345, -1957431, -18496814, -8264054, 15930034,
--411780, -15292231, 8432631, -1018981, -10426570, -24718610, 1580548, -37370512, 21490942, -12845710,
-19538344, 766115, 5362267, 454730, -7426536, 9701794, 33135672, 2861522, 9363566, -6009196,
--26030186, 2101850, -2907156, 18767934, 10931229, -4662724, -1020592, -4126390, -2150705, 6247030,
--7516730, 5851356, -969589, -6723772, -6659347, 6796786, -8132521, -8126615, -11236171, -2461553,
--8100845, 2309619, 6931004, 265214, -2107755, -5412733, 10164040, -9818295, 2452963, 1031866,
-793495, -5851893, 4010426, 9864466, -508954, -5223217, -1284195, 8980777, 9487583, -7861938,
-9084393, -874026, -2437394, 1244467, -634581, 9906879, 2581812, -5603322, -4772246, -263604,
-1086627, 5719823, 12628278, 9450539, 24738474, -33488934, 13514651, -19526532, 17049410, -8167417,
--13940927, -3854196, -16088947, -6653978, -3424163, 6091338, 7726646, -4560719, 23771570, -913217,
--3842385, -2971044, -21124260, -2173790, 302795, -17770428, 5973226, -15130633, -19087908, -6070400,
-11839077, -31793496, -21484500, -14334990, 1861332, -22248468, -18820010, -15261629, -7531225, -6099391,
--2726231, -14996415, 16407849, 2920578, -1360431, -11163157, -11408507, 22031572, -18835580, -12898861,
-5969468, 5963562, 8085276, -10944650, -15175193, -6381785, -2640331, 7282117, -10836739, -4326106,
--4306242, -13093745, -22290880, -28348394, 27139362, -29381872, -1418950, 2191507, -4924717, -5352603,
--26144540, 10308458, -6101538, -27562952, -410706, -5982353, 26253524, 6534793, 18748606, 17714592,
--5028870, 6985765, -2674691, -4952098, 13257490, -3215857, 7714298, -9916543, 1005559, -9991705,
-8815957, 6784438, 1452773, 6211597, -2400350, -896038, 6745783, 3172370, -6140193, 4767414,
-10856604, -1590749, 2683818, -5738613, -13371844, -1392643, -964220, -420370, -9211094, -2021319,
-1744831, -1342714, -4800700, 6469832, -948651, -3627637, -10775536, -11129334, 398895, 6124624,
-3839701, 2369211, -510564, 8024073, 9345312, -4093104, 2201708, 2198487, -368830, 2703682,
-6856379, -29885994, 34816616, 5600638, 3618510, -5915781, 17742510, 314069, 29138668, -7818451,
-20032802, 10817949, -28481002, 12488154, 4828617, 13666049, -2202245, -7544110, -11256572, -4121558,
-14117558, 30826054, 3398393, -4428648, -19311784, 7409356, -20896090, -3270618, 21396454, -19135690,
-188979, 1402307, -3151432, -7194607, -7998303, 34133180, -7194070, -8330089, -3958886, 7770133,
-11611981, 4321274, 746787, -6914898, 85362, 5129802, 20899848, -4730370, 29822642, 17338246,
-9028021, -7106561, 26029650, 29361470, -2206540, -7764764, -1322313, -9533217, 3142306, -9443022,
-15030775, 5047124, 21560736, 16481400, -25882010, -29431264, 35539780, 26225070, 4414690, -4998268,
--13747117, -19392314, -7319161, 19866372, -18437758, -20247012, -2579128, -5471789, -32095216, -7221988,
-7472170, -12552042, 2025614, -91805, 2013803, 2622615, 5688148, -9554692, -5572720, -9820443,
--3235721, -52076, 1776506, -5363341, -2217277, -955630, -15639587, -5327907, -7265474, -3526705,
--77309, 1404991, 1017370, 2667712, -667331, 584116, -8039105, 4829691, -6863358, -8366060,
-6331856, 2549063, -14595373, -1634235, -4292283, 7391102, 14685030, 304406, -11764989, 9769977,
--2360622, 2552821, 3848291, -3956202, -2414845, 891743, -6063420, -8587250, 15626165, -12324409,
--3815005, -2384781, 3300146, 748935, -18656802, -54557896, 27734752, -26096222, 11011759, 39393440,
-6242198, -16124918, 11559368, 13908178, -5424544, -12130061, -2307471, -26734024, 9186398, -27795954,
--16779900, 11547020, 1431835, 5137318, -25096568, -4886062, -18041010, -15268609, -22323630, -7606924,
-8008504, -13176423, -13388487, 13555454, 2103997, -833224, 4491462, -25706454, -1330366, -19929186,
-17575006, 5056787, -49199924, 12743168, 26780194, -5381594, 16083579, 13594108, 9250286, 7487739,
-25587804, 20138028, 998043, -17832704, -3565897, 20352776, 13286481, -16505559, 1474248, -19327890,
--6057515, 1614908, 14495515, 19346144, -34727496, -27378270, -15224585, 3240016, -10139344, -3552475,
-32817308, 5652177, 7970386, 25651156, -10027138, 5530844, -6206765, 26242788, -12945031, 1363115,
-2848100, 19522774, -5092758, -1733556, 7295539, 8196408, -740345, 4161823, 12813498, 813896,
--133144, -199179, 12483322, -5876589, -3698504, 3259880, 5549098, 3911105, 1872069, 6086506,
--2421288, 347892, -5336497, 167504, -3905199, -290447, -5475010, 9701794, -6813966, -10058277,
-10057203, 6765647, 7002944, -6997576, -9182103, 332323, -16670916, -4301947, -8472360, -8524436,
-3689914, 245350, -8783745, 3380676, 3919695, -651224, -5100811, -4808753, 4168803, 2797098,
-8304320, 18163954, 17556752, -30617212, 6405944, -6596533, -8051990, -7117298, 20540144, 10905996,
--14979772, -8551280, 15676094, -28164784, 1601486, 10241886, 15707232, -3349001, 3481071, -32869384,
--117038, -14564771, 11000485, 4034585, 18248780, -28910498, -14570677, -4212826, 3576634, -2496987,
-5657546, 2057289, 15779710, 29704530, -18799072, -24315958, 6419366, -25340308, -7450158, 10593000,
--18393198, -17901424, 1512902, 11005317, 15488726, 10960220, -6889128, -1571958, -32225676, -21760988,
-28654412, -19888382, 38671884, -16406775, 7893613, 5639829, -278636, -28423556, 35612796, -16595217,
--3345780, -6419903, 13921063, 26782342, -27086212, -15440407, 31850940, -23576150, -23622, -8913131,
-6525129, 36813776, 228707, -2732136, -22771380, 28154584, -9161702, 7305203, 9337796, -17842368,
--21467858, 2079301, 12416214, -6455336, 6374269, -51006496, -23756538, -7321309, -25978110, -12841415,
-4366371, 16872780, -3537979, -4663261, -13271449, 327491, -1245541, -9741523, -3329674, 5941551,
-521839, 7970386, 3773129, 7552163, -10001905, -1453846, -2079838, 10515154, 8364986, -6347425,
-19362786, 7106561, -7768522, 11704323, 3235184, -1185411, -6108517, 4413616, -4414690, -4185446,
-8661875, 709207, -3787088, -3431679, 7262253, -2036888, 6567005, -1520955, 11932493, 2452426,
-1748052, -4836670, -3517578, -4327717, -1576253, 1433982, 17452600, -20203526, 5455682, 16485158,
-16296180, 37155224, -23849954, 34119220, -6178311, -22578644, -22099754, 5499706, 14170171, -10062035,
--4722854, -15586973, -6498823, 28887414, -20621748, -2041183, 23199266, -7684234, 13790603, -9457518,
--4584341, 24610700, -1014149, 1123671, 23742580, 16413754, 5707475, -3080565, 20030654, 27392764,
--28198070, 25734908, -24925306, 12973486, -18033494, 3601867, 21188684, 7155953, -48588964, 21366926,
-13608604, -299037, 24413668, -38595112, -7575249, 26013544, 22111566, 3584687, 34833796, -18746996,
-257161, -4611185, -5555540, 14869177, 6051072, 26074746, 21690658, -16518444, 14339822, -30549566,
--9576166, 2297271, -1703491, -2497524, -5101885, -47737488, -26424786, -36901284, -25121800, 27202176,
--17162152, -4257387, 2961917, 44624172, -10871636, -15902116, 35765268, 21865142, -1213328, 28949690,
-4243428, 5373541, -13771813, -79994, -11549167, -12156368, -6369437, 9295920, -11674795, -6146098,
-5390184, 2010582, 8824547, -3739306, -1698660, 11495480, 6585796, 563178, -9392557, -7561290,
--1331440, -2989297, 6736120, 11470247, -1051193, 1937567, 2496450, -4823785, 28707024, 8805757,
-1865626, 1041530, -9637370, 7565585, -17074642, -1371705, 14360760, -1132798, -4040491, 10435160,
-5850819, 3118683, -444529, -9532143, 6075768, 6723235, 2069637, 3628174, 4841502, -3396246,
-3700114, -11531450, 11919071, 29963840, -15919296, 11816529, 14984067, -20887500, 3122441, -25780004,
-10350334, -2380486, -13580150, 21173116, 988916, 32794760, -1610076, -23800024, 41344964, -6933688,
-4458176, 6090801, -38088844, 12016782, 33464774, 12248173, -14030584, -24732570, 2979634, 6593849,
-28663002, 18713710, -8875013, -5044439, -21703006, 678605, 32378684, -43060804, 13560822, 30913564,
--27035208, 10532870, 3188476, 11041287, 32381370, 11194832, 12706661, -5432060, -31120796, 33081448,
--5710159, -16139413, 68638408, 34127812, 17760226, 3517041, 1882269, -31608274, -26024818, -11413339,
-20409684, -133144, -18320720, -12610561, 25656524, -14909442, 17772574, 10469520, -12184285, 19214610,
-8859444, -26473642, -13192529, -15282031, 4777614, 17535814, -33524904, 11735461, -34359740, -43203076,
--27235998, 42651708, -14214194, 9320616, -9511742, -13956496, -1782948, -16749836, -11739756, -8606578,
-2457795, -16011101, 2276333, 10445897, 299037, -13996762, -10591926, 5827734, 1972464, 19368156,
-2815888, -20768852, -8034273, -11589969, 17952426, -2857764, -6822556, -16258599, 95563, 10959146,
-4972499, 12394202, -5577552, -1136556, 3757023, 12634183, 7866770, 471910, -6400038, 9636833,
--7906498, -28454, 5109401, -6819335, 122407, 14112726, -100395, 3340948, -14238890, -9352291,
--10752451, 7515656, -11457899, -2715493, 41467372, 69389488, -12017318, -2712809, -57597660, -19587736,
--42449308, -28430536, 38613368, 2381023, 10222022, -32771138, 10129680, -28819768, -64383708, 8956081,
-30392262, -2911451, 3619047, 32741072, -44250512, 49737868, 24620364, 15277736, -25183004, 33328410,
-64608120, -13269301, 19735912, 48978732, 41313292, 73156712, 15637439, 26048976, 19671488, 17562658,
-62809600, -16751446, -7814693, 22951768, 13517336, -7168838, 34421480, 1791538, 7023882, -20893942,
--56661892, 1904818, 37350648, 5452998, 22529788, -40961104, 2285996, -54369456, -129386, -58402428,
-3783866, 40553080, -5382131, -17566416, -55649892, 72410464, 13012140, 4665945, 75044888, -1100585,
--17357036, -12881144, 3731790, 14875619, -4297115, 107911, -6097243, -39922256, 23456428, 9022653,
--25039122, -15403900, 19594714, -24139864, -41683196, -20394652, 8964670, 39687108, -41710576, 33041184,
--1723893, 17608292, -7363185, 14375792, -10065256, -1491427, 3520263, 4035122, 13267154, 12101070,
-2431488, 25438554, -1391569, 10475962, 13331042, 7859254, 5808407, 6136972, 21915608, 16437377,
-7869991, -8475044, -3629247, 19198504, -25393994, 9952513, -15151034, 3838627, -5637145, 17431662,
-19866372, 40568112, 22573812, 38325604, 21862458, 8337606, 40043592, 41837276, 39577048, 23044110,
--6623377, 24152212, 26394184, 16724066, 31776316, 24426016, 288837, 7927436, 5723044, 6016176,
-9651865, 7635915, -7613904, -7096897, 938987, 7793218, -1304596, 72478, -1750199, -3510062,
--7530152, -6583648, -2582886, -1536525, -2612414, 256624, -4154307, -1818919, -23005992, -73950208,
-2588255, 97692792, 13424457, -21066278, -19979114, -45880988, -30280594, 397284, 60686816, 9905805,
--42030012, -3903589, 15891379, 3099356, 351650, -4996658, 9839770, -30334818, -11893301, 14081050,
-33267742, 33486786, -33342368, -13422847, 1636383, 3661460, 7836705, -38296612, 2776696, 5170067,
--10661719, 25949656, -1094680, 30086246, 45892800, 21424908, 8879308, 19410030, -27286464, 23159000,
--22178138, 35101692, 62894428, 20028506, -35133368, -30596274, 28119150, 9601936, 53538916, 39857832,
-11763915, -11104638, -12853763, 746787, 2155537, -19804094, 20439212, 17547088, 2872796, 48103096,
-32937568, -5424544, 23317914, 25750476, 11841225, 25752088, 550830, -47531868, -6350646, -12145094,
--11349988, 52108692, 23870354, 7689602, 41628972, 24056112, 26349624, 32082332, 10881837, -34615288,
--17233556, -1728188, -1101122, -12824772, -10372883, -21378736, 12236899, 7262253, 19349902, -10245644,
-21658984, 5252745, 22457848, 14362908, -5485210, -12653511, 3036542, 5205501, -163209, 1646583,
-16401406, 635655, 25883084, 34127272, 9740986, -3965866, 2274722, 24222004, 5530844, -9031242,
--6971269, 18902152, -1284195, -7267622, -4096325, 5506685, 13954349, 27139898, -15050102, 1161252,
--9795210, 1204202, 1003412, 21900038, -12458626, 10216653, 13895293, 7144141, -10516227, 2028835,
-16244103, 831613, 503585, 14470819, 2211371, 8209830, 6039798, 282931, -2898566, 1518808,
--2018635, 2243584, 1360431, 2449205, 1202054, 6250251, 2486249, 1668595, 2013803, 4089346,
-1886564, 4476967, 1817845, 2188286, 2381559, 1879585, 2505577, 1246614, 2321430, 3185255,
-3619584, 3489661, 3929895, 3124052, 4154307, 3079492, 3386045, 1430224, 3447785, 1434519,
-3176665, 1060857, 3202972, 2174327, 2936147, 703301, 2934000, 1887101, 3121904, 2040646,
-3516505, 1085553, 3760781, 1134945, 3362423, 1868848, 3333968, 1303523, 3750580, 1237488,
-3053722, 1740536, 3280281, 1610076, 3871376, -38655, -14081587, -68940128, -14582488, 39197484,
-21342766, 85219664, 5021891, -11812771, -37606732, -73895984, -81333792, -13109314, 35575752, 40088152,
-25715580, -40754944, -54193896, 135828, -6355478, 22294638, 57204132, 29500520, -5035849, -33568392,
--45985676, -28538448, 2183991, -27938762, 11383811, -23284092, -11507291, 38487740, 31632972, 28477780,
-11165304, -38400228, -10616622, -36703716, -28427314, -14418205, 22240414, -3572876, 23598698, 58106076,
-60240676, -24459838, 7126425, -43731892, -30084636, -20582020, -3637837, 8844411, 35003984, 37702832,
-51382840, 36966248, 13254269, -24768540, -23172960, -5017596, 16626892, -41225244, 3211025, 49463528,
-39138428, -9630927, 52977884, 47743932, 26752814, 49873696, -93256624, 22799834, -26418880, -28207734,
-16152835, -14857902, -1223529, 94795832, 79817136, 28852516, -24511378, -1591285, -37365680, -6765111,
--50287624, -17289390, -8380018, 20045150, 61794916, 32938104, 13019656, 11607149, -9867687, -30354682,
--39806292, 730144, -26260504, 21706764, -2233920, 478352, 23727010, 19984482, 7357816, 20679730,
-7136625, 31955094, -21799644, 208306, -24043764, 10672994, -20910048, -18547280, 3401077, -5131949,
-16693464, 30273076, 1851131, -26746372, -46154256, -13225278, -26739930, 3776887, 12043625, 22594212,
--17824114, -5616207, 836982, -303332, 23430658, 1884417, -120120568, -136177312, -146416512, -147928336,
--200539008, -12016782, -71917080, -23322210, 26450020, 66853312, 93842352, 96807488, 197941088, 212262112,
-172776864, 128502736, 136121472, 129802504, 49961744, -19432580, -89388472, -89544696, -137370768, -44703092,
--74490304, -55554328, -5288179, -116609432, -33606508, -104162624, -28414430, -119672288, -112831472, -52136608,
--93168576, -9587978, -47098076, -43528956, -69690136, -46149424, -105185896, -74370040, -39560944, -36257576,
--55682104, -34133180, -4170413, -45059040, 15071577, 67177584, -52459804, 79484272, 47600584, 106120592,
-106574248, 93070328, 114757768, 96970160, 160101888, 159068944, 126811056, 169737648, 145504368, 222319312,
-218885488, 258002976, 200749456, 216142624, 235490368, 212766768, 254358704, 188517920, 275440544, 220178816,
-83845280, 107652280, 28298466, 42632384, -149148112, -125123136, -139748576, -148664928, -156815696, -202507712,
--190747008, -209578304, -230199504, -270528192, -226192848, -207038368, -230220992, -250978032, -299321632, -240025856,
--265865984, -267515792, -203067664, -228821360, -132118024, -163864816, -112246288, -104118064, -55229520, -40295384,
--57180512, -9807558, 26863946, 130009200, 123085176, 89468464, 101032664, 108820512, 147383952, 151100176,
-163283376, 172350064, 148109264, 150632016, 110566952, 156735168, 160133568, 122129008, 85784992, 66388920,
-96192768, 95333240, 74068856, 44545792, 24536612, 37553048, -9813463, 5218386, -17602386, -13796509,
--71155264, -64961380, -47498044, -32694902, -43337292, -33020782, -15898895, -12899397, -17221746, -31849866,
--29491392, -14448807, -18996640, -12357158, -10623065, 2296734, 4966056, 1094143, -5065914, -1152125,
-2566243, -1563368, -1621350, 1913408, 3468723, 7017977, 1906966, -1779727, -331786, 2392834,
-1999844, -1588064, -683437, 3801583, 2393908, 2012729, 2217814, 4051765, 3341485, 928787,
--318901, 2863133, 2729989, 3012383, -668404, -3170760, -1611150, 1130113, 3907883, 4661650,
-2579665, 967441, -2382633, -3772055, -2808909, -2777770, -5510443, -9002251, -11369315, -11647951,
--12056510, -13174812, -14428943, -16759499, -18712098, -20225538, -20037096, -18172544, -16728898, -16773995,
--16254841, -15315853, -9931038, -6803765, -4958540, -1067299, 2647847, 5661841, 8704288, 11909407,
-13696651, 15919833, 15829102, 15282567, 15201500, 13640816, 11307038, 8756365, 7007239, 5683316,
-4191888, 2874407, 1736777, 1038308, 485868, 367757, 228707, 165893, 110059, 60666,
-56908, 104690, 176094, 213675, },
-},
-{
-{
--2786897,
-5300527, -159988, 2206003, 885837, -4539781, -3401077, 1249299, -3059091, -4565014, 2684892,
--495532, 739271, -2598455, 1998770, 239444, -4037806, -134755, 4772246, 3886409, -2884608,
--5123896, -4663798, 744640, -1035087, -874026, -3961571, 4417374, -1109712, 1280974, -1778653,
--1060857, -348966, 1706176, -1136019, -2248952, -8756901, 3045669, -617402, 2896419, 1741072,
-1246077, -177167, 5922223, 1154273, 1222992, 870268, -2955474, -1870995, -229781, 482110,
--2959233, -661425, 1219771, -362925, -2793876, -1445793, 153008, 2830384, -4304094, -5851893,
--7267622, 2640868, 4239133, 475131, 3514357, 2594160, 534723, -6655052, -127238, -1704028,
--2305861, 167504, 421444, 2829847, -551903, 4005594, 2846490, -1199907, -3969624, -1902671,
--671089, 1076963, 353261, 1347546, 1550483, 2812667, -12885, -213138, -1254667, -1075352,
--1031329, -428423, -2195802, -1007170, -1222455, 748398, -103616, -230854, -644245, 1101659,
--1533303, 3186866, 4162360, -942745, -40265, -5920613, 5307506, -6783901, 2641405, 11454678,
--2435783, -4251481, 666257, 5979132, 651761, -1692217, -810138, -1705639, -1064615, -5373541,
--2076080, 2655364, -4251481, -2439005, 262530, -234613, 4741107, -2880313, 903554, -1114544,
-1054415, -599685, -2733210, 5226439, 8913668, 2251100, -481036, -1667521, 9646497, 446677,
--3996467, 267362, -7146826, 24159, 3773129, -5509370, -670015, 1178432, -4367445, -1326608,
-5098126, 717796, -511638, 4885526, -3219078, -5145908, 2944737, 1925756, -3555159, -1784559,
--3808026, -4510790, -4810364, -2687039, -2733747, 3924526, 2834142, 763967, -70867, -2733210,
-2568391, -597537, -1818919, 3322694, 3722663, -2633352, -480499, -1249836, -1629940, 507880,
-4261682, -2137820, 991601, 4008815, 2705830, -932008, 1068910, -713501, -60130, 1692217,
--190052, 15032, 1787780, -1867774, 806380, 368830, -539018, -1723356, 1365263, 135828,
--706522, 387621, 246424, -628676, 255014, -330712, -508417, -1016834, 5873368, -8497593,
--5601711, -2003065, -1214402, 314606, 1121523, -8101382, 5669357, -2540473, 1869385, 1190243,
-1903207, 3577171, -1074, -1149441, -2680597, 5878200, -438624, 3830574, 7249368, -1540820,
-6167036, 5268315, -4520453, 3064459, 3095598, 3324305, -7994545, -769336, 501437, -2492155,
--5020280, 106300, 5905043, -1353452, -2498597, -1950989, 1820529, 5483600, 2714956, -2758443,
--26307, -2269890, 251792, -702764, -2699387, 5123896, -6565395, -5411122, -4978941, 1574642,
--683974, -149787, -6125160, -6456947, 1598265, -106837, 384936, -609885, -327491, -4811974,
--2849174, -5264020, 1054415, 4568235, -1398012, 4057134, 769873, 3610994, -7716983, 64425,
-1132261, -2547989, -1152125, 1064615, -2740726, -307090, 2039573, 2220498, -1701881, -5140002,
-4566624, 746787, 124554, -1109712, -648540, -4108136, 194884, 319438, -717260, 781684,
-144955, -1427003, 635118, 705448, -407485, -560493, -196495, -211527, -270583, 264141,
-2188823, 72478, -646393, 1840930, 812823, -105227, -594316, -141734, -296353, -3000035,
-641561, -665720, 4940286, 7902740, 428423, -3115999, -6866042, 3025268, 1939178, 1802813,
-8379481, -5609764, 119185, 948114, -1608465, -2847563, 1175747, 450972, 5022965, 11164231,
--1064078, 1864016, 4628901, -2122251, 4122095, 7226820, -5173288, -273267, -1972464, -188979,
-3190087, -5777268, 6081674, 1288490, 2147, 3159485, -602369, 4407174, -2502355, -1118302,
--1331440, 6970732, 3221762, 4408784, -917512, 3617973, -6912213, 7830799, -3128347, 3028489,
--7271380, 2824478, 5170067, 9562208, 3479997, 1717450, -6408628, -2515240, 1693291, -4889284,
--5775121, -1439888, 11339251, 13114683, 2474438, 3020973, -3821984, -1757179, 7325604, 1355062,
-3177739, -531502, 2193655, 1893544, -1027571, 1603097, -1130650, 1187559, 839666, 4577899,
-3745212, -5939403, 5169530, -1797444, 2636036, -1928977, 1926830, -1641214, -2220498, -126165,
--3517578, 460635, 2501819, 493921, 1271310, -1319092, -1574642, -876173, 598611, 24159,
-544387, -309238, 368293, -1066226, 333397, 290447, 1820529, 25770, 1231582, -677531,
-1101659, -1386738, 128849, 131533, 1312649, 5473399, 60666, 602369, 7714298, -6667937,
--7840463, 11981348, -3223910, -2019172, 7793755, 4638565, 484258, -13930726, 14859513, -2821794,
--1991254, -1651415, -916976, 515933, 821949, 4600447, 6874632, 4522064, -1105954, 7755637,
-4861903, 2443300, 2000918, -2951716, 3467649, -5697811, 4387309, -926639, 1773285, -4831302,
--7034083, 824634, -986232, 2477659, 4066260, -2118493, -6740415, -3927211, 1519345, -8012262,
-5029944, 1542967, -12799003, 5678484, 762357, 3226594, 707059, 1923072, 2037962, -565325,
--3694209, -3151969, -8775155, -6404870, -3651796, -4463008, -1093606, 476741, -6456947, -9006546,
--1457068, 5797669, 9931038, -545998, -6813429, 1080184, -10646150, 692564, -840740, -4167729,
-8756365, 8322573, 2686502, -347892, -2271501, -656593, -4791036, 2171106, 8385924, 4531728,
-6906845, 1400696, -3341485, 3253975, 1569274, -255014, 539555, 366683, 71404, 1504849,
-1429687, 1493575, -615791, 2634426, 574989, 5216775, 1898376, 1388885, 100395, 437550,
-1232119, -387621, 2303176, 893353, 797253, -1408212, 2895882, 753767, -1246077, -464393,
-2230699, -13598940, 7016903, -2600603, -4843113, -3840238, -4634270, -6466610, 12447889, -15867757,
-3733400, 3830037, 5181878, 7749195, 1264331, 2151779, 2909304, 2098629, 1604707, 2625299,
-6811282, 1231045, -3767223, -7516, -671626, -4883915, -4431333, 2261837, 4556961, 4919885,
-652298, 3508452, -8280160, -958851, -133681, -453119, -7848516, -4689031, -2837363, 5122286,
-4575751, -77846, -8591008, 50466, -4662724, -3320010, -1706176, -2303176, 5362267, 7329362,
-2201708, 7625178, -12218108, -8515310, 4032438, 2494839, 389231, 1618129, 771484, -3948149,
--7697655, -5294084, 4038343, -3427921, 6189048, 6129992, -2261300, 5809480, -9262097, -4556424,
--2629057, -3105798, 642098, 16821240, -2450816, 4764730, -2717641, -2423435, -1748589, 3578782,
-3788161, -434329, 3049964, 2122251, -5283347, 1458141, 361851, 2263985, 448287, 289373,
--2685965, 1708323, -153008, 1731409, 505196, 904091, -534723, -987843, 455267, -1515587,
--2254858, 766652, -1257889, -1880122, -611496, 585726, 697932, 768262, 770410, -91805,
-536871, 1209570, 937377, 353798, 233002, -373662, -695785, 1131187, 563714, -89121,
-772020, 13896367, -2681670, 372588, 5847598, -13243532, 9090298, 4606353, -7467875, 8273718,
-9257265, 3102577, -14297946, 8827232, 376347, -1355599, 7226820, 7807714, -451508, -2315524,
-220654, -5553930, 5182415, -3040300, -5292474, -11125039, 2588792, -12091407, 3236795, -2969433,
--1359357, 3476776, -9853729, -4053376, 8178692, -722628, -3829500, 5002027, 324807, -4305168,
-3700114, 1336272, 356482, -1850594, 2820183, -6002217, -636192, -8761733, 8274792, 8272107,
--10316511, 6881075, -7362111, -2784750, 7110319, 9945534, -730144, -4967130, 3001645, -634045,
-1427540, -12175695, -9627706, 1912334, 1718524, -2639794, -2508798, 3147137, -383326, -4321274,
-5135171, -4980015, 1734093, 3712999, -861141, 5828271, -5858873, 5893232, -49929, 9382356,
--3230889, 2841658, 5291937, 591095, -3376918, -967978, -359167, 2745021, -930397, -4429185,
-3714610, 799401, -1864016, 1636383, -1257889, -65498, -1750736, -508417, 1261110, -1490354,
-941672, 2564632, -1347546, 616328, 165893, -863825, 1615982, 425739, 1373316, -2085744,
-829466, -2135136, -2444373, 893890, -402116, 977105, 1009317, 295816, 2963528, 3869766,
-1698123, -5041755, 9782862, -3321084, 4770635, -9836549, -678068, -2581275, -8928163, 332323,
-6341519, 11255499, 14719390, -8351564, -214212, -10414759, -760209, -6625524, 5953899, -6201933,
--12285754, 817118, -7867307, -718333, 10223633, -6029061, -6016176, 10970957, 358093, 1902134,
--1125818, -6419366, 2754148, 2356327, 13215614, -9085466, 6491306, -7702487, 1944547, 2581812,
--7601555, -4671851, 12690555, 3485366, -9407052, -2414309, -3430605, -7548405, -300648, 12441447,
-6672232, 8663486, 1993939, 3475702, -11318849, -1620813, 14435385, 1161252, -8942659, 4813585,
-4784594, -6556805, -5709086, -3150896, -14794015, -2265595, 4415764, 7336878, 13021804, -3241090,
--7097434, -2039573, -4411469, 10576894, -3911105, -9199283, -6264747, -2704756, -1241782, -2837900,
--5311801, 11512660, -6571837, -782221, 1077500, 568009, 3769371, 2357937, -3369939, -4529043,
-3432216, 4119411, 4354023, -975494, 1978369, -1184874, -700617, 1956358, -410169, -1999844,
-2059974, 974421, -42950, -1304060, -425739, -3343632, 330176, -817654, -2872260, -1459215,
-1330903, 1159641, 70867, 1358820, 6372658, -21907018, -15086073, -9651328, 1205275, -18346490,
-2796561, 13724568, 4571456, 14130442, -7509214, -3433826, -1483374, -7267085, -2693481, -10934450,
-19572166, 11200738, 7829726, -16444893, -3144453, -5257040, -10689637, 3765613, -1085553, 3535295,
--13288629, -862752, -1151051, -9520332, 5612986, 1640678, 9827422, 3991635, -8140037, 12947716,
--6053220, 5288716, 2757369, -51540, 10243497, 9539122, 2433636, -12243341, 15047955, -7537668,
-10801306, 4964982, -5527086, -6132677, 12106439, 1831804, -1365263, 3202435, -10151692, -3591130,
-5917928, -790274, 10710038, -6105296, -9606768, 4018479, 2769717, 392453, 10650982, 4638565,
-2197413, -6703907, 7762080, 3095598, -5879274, -746787, -595390, -3334505, -2435783, -2800319,
-4684199, 11725261, 19680078, 9199283, -3273839, 1068910, -4469451, 4592394, 6082748, -21475,
--4978941, -2876018, -6511171, 4116726, -3539590, 1037235, -3055332, -769336, 4398047, -438087,
-512175, -3906273, 4301947, -2167885, -1872606, 2423972, -3879966, 4379793, -2963528, 2385318,
--2083059, -313533, 1002338, -2836826, -2040646, -1192927, -4728222, -4697621, -2062121, -158377,
--1649268, 3887482, 3541201, 2142652, -14136885, 18362058, 7453916, 21036750, -9826885, -11717208,
-20034948, 415538, -2364916, 4180614, 1290101, 11616276, 15571404, 1796370, -14976551, -23830626,
-3044058, -6772627, 1177358, 398358, -10458782, -920734, 12575664, 10226854, 7994545, 16258062,
--3990025, 13734769, -10093173, 12132746, 3825742, 9340480, -6695854, 16658568, 9491341, 12091944,
--19870130, -362388, 17595408, 9893457, 2990908, -4501663, 26596584, 11064373, -10773389, -6755984,
-6300717, -10508174, -1241246, -5183489, 1141388, 22275312, 23368380, 16879758, 6056441, -69256,
-8648454, -8102993, -2218351, 9407052, -10260140, 23604066, 14646375, 11449846, 4383014, -1184337,
--11505681, 13907104, 282394, 12097849, -5754720, 4539244, -8184060, -4824322, -432181, 5971615,
--9583683, 21959094, 9352828, -2706366, -11112691, -21203180, 10084046, 1574106, -7029788, -901406,
-2378338, -5152887, 2828773, 7824894, -1611687, -3038689, 42950, -1970316, -2292976, 1570347,
--2735894, -2109903, -3670050, 3367254, 1863479, -5516349, 2757369, 3119757, 3073586, -365072,
--1753957, -849330, -235686, 1491427, -642635, 1035624, -3306051, 4873178, -6629819, -150324,
-2034741, 5495411, 558883, 23314694, -1057636, -11086384, -4847945, -8625905, -62814, -14014478,
-3987877, -12032351, 7253663, 1889786, -3060164, -9400610, -11329050, -17272748, -17969070, -5103495,
-16073378, -871342, -10062035, 4571993, -9586904, 7865159, -8158291, 15134391, -14978162, 3881040,
--10558103, -10725070, -1796907, 2208687, -2996277, 7325604, -21679922, 9155260, 2328409, -4940823,
--1302986, -1114007, -10631655, -17038136, -18424872, 13749264, 6825777, -6936372, 11795591, 722091,
--4650913, -13354127, -28621126, -23363012, 13614509, -3788161, 477815, -2490544, -1185411, -1012539,
--19346144, 7782481, -22888954, -11928735, 1211181, -355945, -4780836, -2728378, -2928631, 24146306,
--7219840, -7377143, -6319508, 25251724, -4363150, -9611600, 15880105, -11987254, -7756174, -9809168,
--8484171, -31694174, 6524056, 5524939, -10660109, -1171989, 7581691, -3796214, -2811056, -5588826,
--5414343, -382252, -2806761, -2447595, 11252277, -529355, -1155346, 7886634, 8949638, -4003983,
--3193308, -329102, -1542967, 2676838, -5413270, 1022202, 647466, 1422708, -3221226, -3578782,
--1632088, 4064113, -1488206, -2550137, -415001, 2731062, -7024956, -688269, 3954591, 682363,
--2819646, 4192962, -2470680, 3768297, -51003, 3625489, 3356517, 3919158, -6183143, -182536,
-35433, -33804612, -25476136, -14501957, 29873108, -1335735, -4746476, -3454764, -2135673, -9613747,
-10712722, 8281234, 26775900, -24355148, -4559645, 7701413, -17707076, -7028714, -6114960, 30738008,
--214748, 7190849, 15812459, 1541893, 15232638, -16056735, -20095078, -13491029, -3491272, -3342558,
-2686502, 9673877, -207232, -17027934, -11556146, -774168, -8875550, -19126564, 17436494, -2775623,
--9306657, -33823, 5797132, 5533529, 3498251, -8609799, 2048163, -17804250, -7523709, -26444114,
-12766253, 8071854, -2822867, -8267275, 10117332, -13158169, -3052111, 28647432, -2683281, 24279986,
-11176579, 6534793, -6008659, -30413200, -12317429, -5831492, -16040629, -12236362, -7458211, 13640279,
--5869610, 318901, -11868605, 25960930, -8911520, 10704132, 7640210, -17721036, -6745246, 3890704,
-16800838, 29945586, 25324200, 10774462, -1302449, 10255308, 481036, 854699, -5466420, 2981781,
--5658620, -4277251, 310848, 1705102, -3238942, -4934381, -8342437, -7064685, 4170950, 2801393,
-3488050, -3320547, -904628, -17534204, 119185, -8143795, -3322694, 3051038, 2881923, 892816,
-7677254, 55298, -544924, 587337, -2429341, -12793634, -712965, -7340099, 4096325, -6538551,
--6450504, 648003, 8578660, 3508452, -1787780, -4908074, -3855807, -2268280, 4867272, 939524,
--1416266, -3340411, 17053704, -1409286, -10591389, 10312216, 5663452, 36283884, 712428, -125628,
-12427488, -17137994, -12017318, -3817689, 2472291, 5448166, -5021891, 15075335, -10123775, 1670742,
-14091788, 6106907, 4870493, 4947803, -11382737, 1571421, -887985, -5762236, 1681480, -8315594,
--14530948, -7750806, 540092, -14206141, 17221746, -1741609, 1216013, -2878702, 11675332, 13374528,
--3172370, -10617696, -1500017, -3672197, 15722802, 20487530, -15425375, -10620917, -8078297, 4827007,
-14963129, -14281303, 4077535, -999117, 2696166, -7606387, -10232760, 2652679, 9675488, 1530619,
--13217762, 11089606, 33087892, -11257109, 5703717, -2896956, 2042257, 12635257, 3115462, 14963129,
-12246562, -3723200, 19066970, 35333624, 884763, -13541495, 34376920, -1046361, 32843614, -11907797,
--16914654, 15061913, 5377299, 22980760, -4355097, 32506996, 9809168, 7273527, -10401337, 15218143,
-1246614, 1218697, 3088082, 12369506, 2105608, 14177150, 1198296, 3269544, -70867, 1852742,
-1753957, 4309463, -2044941, 4873714, 11642046, 4798552, 5015448, 1418413, 2700461, -7107634,
-5390721, 1997697, 2150168, 4093104, 1744294, -723702, -674310, 3139084, -4017942, 905701,
--431107, 2773475, 8120710, 2867965, -886374, -4675609, 3990562, 540629, 499290, -1071058,
-3871913, 2379412, -7354595, 6473053, -23526758, -7851737, 35677220, 5652177, -17086454, 4591857,
--13051869, 4307316, 6490770, -3291556, -19525996, -7534447, -28981366, 11499238, 9343164, -11310260,
-10166188, 16245177, 2947958, -4773856, -17137994, 3487514, 26195542, -13067438, 15524696, 14986215,
-1927367, 11206643, 10164040, 213675, 12792023, 8590471, -25909928, -3867618, -10752451, 25696790,
-16695075, -18360986, 10612327, -2330020, 13168370, 43045236, -4632659, -7554848, 3781182, 38730404,
-15444166, -2616172, 4424353, 6844568, 21923660, 19640348, -14148159, 23626078, 10350871, 21893058,
--16227460, 2186138, 3839701, 4520453, 13056701, 20095078, -13798656, -10654203, 15441481, 7863012,
--6078990, -5894306, -576063, 24182276, -46522548, 10659035, -16960826, -12184285, 1557463, -15855409,
--15269146, -2230162, -25761214, 17991082, -6012954, 19022948, -1377074, 16633335, -11747809, 6634114,
--297427, 5447629, -1227824, -6540699, 4351339, 3493419, 3322157, 8098161, -4725001, 4071092,
-4888210, -4750234, -317828, 7758859, 2134062, -4243965, 7938710, -5765994, 389768, 4515621,
--6389301, -4240744, 979253, 1730872, 8904004, 8040179, 4944044, 2928094, -1755568, 6288369,
-575526, 2787434, 1923072, 5239323, 5478768, -5214627, -5262946, -8449811, 5815386, 2706903,
--348429, 2182380, -777926, -9096204, -8728447, 5849209, 7644505, 8098161, -10313827, -12261595,
--31546534, 1356136, -17670032, 28520194, 3343632, -7484518, -4398047, 17100412, 4788352, 27810450,
-11086921, -7276212, 996969, 5846524, 12520367, 20926154, -23614268, -20323248, -4430796, 35226248,
--11033771, 4484483, 9875740, 15435039, 18551574, 26786638, 22956064, 2037962, -5705327, 25027312,
-1753420, -15930034, 8288213, -14773077, 10488847, 2688650, -13383655, 12091407, 46852724, 26247082,
--16825534, -12545599, -1921461, -13011067, -13150653, -11135240, 7865696, -6317360, -11228118, 2508261,
-12725988, 7802882, 4067871, 18559628, 4731444, -4402342, 19296214, 16527571, -14348412, 9667435,
--16170552, -12358768, -14368813, 58519, -34367256, -10000294, 23494544, 17631378, -8376797, 11880416,
--3125126, 964220, -21234318, 4840428, 12315819, 20115480, 10963441, 13373991, 6979859, 6480032,
--9231495, -7736847, -9804873, 5497022, -2353105, 908922, 3745748, 4347581, -744103, 10506564,
--3567507, -4383551, -5258114, 7431367, -9820443, -3673271, -12042015, -452045, 1962800, -4872104,
-109522, -2609193, 6954089, -1211181, -15794742, 434329, -1425392, 4808216, 5668283, 2170569,
-6486475, -213138, 10777684, 2512019, -1270237, -61740, 826244, 717796, 171262, 4553202,
--2916820, -13058848, 10343892, 8306467, -16524350, -7197292, -35637492, -3055869, 29253560, 132607,
--21879638, 3266323, 753767, -14742475, 19407884, 11160473, -8170639, 5390721, 8647380, 11938398,
-6479495, 1900523, -9007083, 4559108, 6724308, 18601504, 27819576, -7915088, -19197966, -10159208,
-5075041, 5653788, 22836342, -9036611, -18405546, -14304925, -14788109, 27788438, 50987168, 18436684,
-2270964, 56071872, 3077881, 23138600, 13001403, -4920959, -12108587, 9816148, -16286516, -10829760,
-11085311, 585726, -34220688, -35291748, -9108552, 14487998, -18646064, -23154706, -12982076, -17187386,
--14339285, 11690364, -10091563, -26225608, 11371463, 858457, -7943005, 5926518, -6222334, 12969727,
-52432424, -32502702, 26252450, -36930812, -21211232, -12351252, -8687645, 20279224, 7887171, 9642738,
--4348655, 11199127, 23308788, 5769215, 168577, 153008, -7263864, 3104725, 6099928, 18829136,
--1541356, -9556302, -1809255, 14351096, 8910983, -4245575, 5085242, 6435472, -5654325, -325344,
--2663954, 18053896, 6162741, 8486855, 5968394, 5067525, -7934415, -5448703, -1626182, 4534949,
--9622337, 1214402, -9502078, -6371047, 1008244, 838056, -10865194, 10068477, 13453985, -1491427,
--2260764, 8350490, -369367, -3763465, 11833709, -5181878, 8051453, 658741, 28432684, 18239116,
-16426639, 24199456, -28543816, 10787347, -29891362, -1326071, 38728256, 34442952, 14589467, 406948,
-6576132, 4264366, -11301670, 8883603, 11039677, -49111340, 2847563, 7078106, 14739254, -18072686,
--27741194, 20112794, 9411884, 5029944, -11951820, 23881092, -3535832, 18540300, 15336254, -1962263,
-2200097, -5531918, 18723910, -11319923, 5597953, 11259257, -1161789, 24036784, 13806709, -1455994,
-12212740, 13972602, -901943, -10998874, -36922760, -6875169, 3746822, -21857626, 1925219, 17268990,
--33573760, -14909442, 4941360, -14446123, -2507724, 17535278, 838056, -12554189, -16456167, 7160248,
-6874632, -33843268, -11446088, -2884071, -49929, 21126408, 10197863, 2294586, 36852968, -4743255,
--1396401, 1389422, -21328808, 19944754, -28454, 32778116, -12934294, -5560909, 9680319, 4896263,
--28203440, 847719, -4071629, -11264625, -9256728, 3440269, 952409, -7962333, -912144, -4967667,
--3673808, 962610, -12191802, 3400540, 1430761, -1728724, 4367445, 1207423, -8126078, 1561758,
-2043868, 2052458, -7872675, 11128797, 1973538, 14495515, -10951093, 1308891, -9265318, -3235184,
--1892470, -16145856, 3192771, 1451162, -907849, -2223719, -3144990, 5920613, -7494181, -5644661,
-6769942, 9327595, -7330973, -9433896, -34801048, -30345018, 5407364, -15677168, -4999342, -23408108,
--29140816, -30641908, -20190642, 21656836, 29590714, 682900, -24603184, 1830193, 1012002, 222265,
-11166915, 18863496, 18835580, 370441, -12428025, -30560302, -17599702, -26761942, -5857262, 19864,
-2114735, 2659122, 3615289, 7253663, 9385040, 17855790, -28314572, 12278238, 4784594, 6131066,
-14973330, 26641682, 29868276, -17375828, 13229036, -23983634, -7612293, -21769578, -2263985, -8537858,
-49743776, 17616882, 35791036, 1428077, -19437412, -8370355, 22862110, 24830280, -14800994, 45943804,
--19443854, 2786360, 1860795, 7910256, 16742319, 51122460, -3751117, 12456479, 28344100, 6430103,
--22765474, 14277008, 52220360, -9643275, -12854837, -30981210, -2753074, 19251118, 11750494, 1545115,
--29849486, -22551262, 3591130, -23527830, 6877317, 965294, -29723322, -3419868, 2850785, -4714801,
-21139292, 19965156, 250182, -5918465, -12920335, 13801877, -6081674, 24037858, -5696737, 248034,
-16309601, 16509317, 23380192, 18155364, -13518410, -5280663, 2968359, -4467303, 1400696, -10208600,
--9967545, -9942312, 4952098, -12161737, -14313515, 8307004, 10711648, 930397, -12329777, 7654169,
-4080756, -3038689, -3300682, -8296803, -380641, 4654671, -2300492, -7421704, -9814537, -1879048,
--6522982, 7833484, 4205847, 666257, -8991514, -3904662, -5105106, 10270877, 46714748, -2253784,
--106837, 19912542, 3987877, -64086280, -20041392, 45782204, 15329275, -13230647, -25444460, -3435974,
--16761647, 23685134, 12366821, 4576825, -13416404, -30251602, 6665789, -52223580, -6261526, 25777320,
-35103840, -3877282, -29555818, -20063402, -61172684, 18158048, -10513006, 24172612, 18277770, -17260936,
--12552579, -54239532, -40736692, 21438866, 58096948, 23313082, 27658516, -19145354, -34338800, -32903744,
--13744969, 49437756, 66489852, 34781720, -77027552, -28115930, -59001040, -31444530, 73402064, 18033494,
-16364899, -9564355, -70466992, -57622892, -57881664, -10613938, 5731097, 36719824, -13463649, 27974732,
--55866788, 34969088, 14025753, 4415227, 70473432, 4692789, -6403796, -3192771, -95377264, -28996398,
--6391985, 30246770, 15774341, 13923210, 42227044, -44870596, 2991445, -29632054, 32593434, 23658290,
-2334852, 6670084, 7004555, -5141076, 19411642, 10541997, 5214091, 16641925, -11152419, -20802138,
-5172215, 15239081, 22935126, 19027242, 12502113, -15573015, -25477746, -35610112, -3140158, 2742337,
-29017872, 36072356, -5350456, -27150098, -46930032, -22374096, 3395172, 36087388, 57683020, 15197742,
--56352120, -57702348, -59046136, -474057, 48216912, 42601244, 44790068, -14867566, -21791590, -41854992,
--42407432, 15713138, 28675886, 37548216, 18976776, -29475824, -28012314, -15680926, -4445828, 34849364,
-18371722, 5884642, -1602560, -21129628, -15385110, -3030636, -4180614, 9211094, 11464878, 5239323,
-4615479, -27239756, 53290880, 23077934, 24608016, -65233036, 13487808, -91008208, -19867444, 90194,
-13226352, 5600101, -58241904, 32060858, -15947214, -10200010, -10742787, -12110734, -14082661, -17761838,
-38596724, -10621454, -32687386, 10864657, -9078487, 4382478, 18730890, -36845988, -13076565, -1938104,
-15834471, 1959579, 42407972, -3224447, -23906324, 56048248, -46903728, 27908698, -43485472, -14085345,
-21537114, -35128000, 2808372, 26113938, -13223131, -2684355, -2438468, 33524368, 50768660, 29641716,
--16814260, -6615324, -7707856, 3598646, 16436840, -6307160, -9868761, 10233296, 5398237, -91276648,
--3508988, -2989297, 13523778, 11799349, 773631, 556198, 26252450, -28447180, -7249368, -2400350,
-20038706, -73185168, -10160819, 66932772, -16894254, -26414586, -93416, 50757924, -9122511, -11628624,
-13852343, -19397682, -20609938, 31518618, 48287244, -17023640, -24343874, 8721468, 14564234, -7212324,
--25679610, -127238, 3860639, -4828617, -3643206, -7650411, -11126113, 5702106, 470836, -9902047,
--1761474, 24159, -280784, -9088688, 5572183, -12309913, -13413183, -7478075, -8167954, 12928388,
--1743220, -2208687, -219580, -6699612, 10394358, -13081934, 3959960, 818728, 1026497, 9808632,
--395137, -15795279, 1903207, -3847217, 3080565, 2665027, -14588930, 23462332, -6046240, -1725503,
--2204929, 2570538, 5830418, -73551, -5392332, -2516314, -11572253, -21657910, -66476432, -54484880,
-48830556, 41736880, 4399121, 44547936, -47473884, -2257005, -92125976, -32373316, -15919833, 45387604,
-41322416, 25562572, -36812164, -12296491, -1170916, -17245904, 9258339, 16762720, 21530672, 28676960,
--21004000, 16313896, -39622684, -24810416, -5898064, -7974681, 1509144, 27077084, -31198642, 27879706,
--11789148, -17018808, -6559489, 3138547, -39291436, -304943, -35536024, -12849468, -13545253, -33601676,
-47419660, 22169548, 11090679, 12080669, -8680129, -47343960, -70626976, -40920836, -41371808, 28955596,
-7183333, 31165894, 43028056, 35733056, -11104638, 9038222, -24138254, -18235894, -22020834, 18198850,
--23366770, -517544, -22287660, -22832046, -14368276, 28296318, -21906480, -5653251, 2620467, -2552284,
--31772020, -33970508, -20613158, -11770895, -46262704, -27113054, 7408282, 28709708, 29656750, 38010460,
--2097555, -29827474, -39128764, -29717952, 15811385, 5600638, -4571993, 18835042, 46377056, 12879533,
-12597139, -11003169, -8440684, -14511621, -8960912, -4234301, -14388677, -2740726, 17751636, -3100430,
--7465190, -13542569, -15513422, -17118666, -5046587, 9334038, -4535486, 4385162, 2367064, -31362388,
-3672734, -14596983, 13604846, 26434450, -12789876, 18473192, -2093797, 5024575, 760209, -24661702,
--3889630, -7570954, -6455336, 4281009, -369367, -2128693, -5326297, -10835666, -14931991, 22695144,
--15149423, -100402912, -135906720, -128478576, -122177328, -146450336, -24801288, -40819908, 25547540, 40857488,
-130397888, 83534968, 110505752, 152294704, 167635792, 114194056, 145602080, 82574504, 38400228, -6334003,
--27712202, -37737732, -61915176, -60994440, -83861920, -35861904, -31026306, -79158928, -58980640, -56760140,
--64197412, -104579232, -71108552, -55106040, -44048648, -80627808, -11391864, -24554328, -33509334, -78111496,
--71816688, -59626496, -50673636, -37251324, -15095199, -49894100, 14090714, 24966644, -38748660, 42645804,
-59950764, 57115548, 104666744, 84530328, 65482144, 71559520, 72537704, 71439264, 110112224, 123354680,
-121789704, 82737712, 131375000, 129120672, 135171216, 136827456, 156103808, 137915696, 146334912, 193519408,
-99061808, 99345280, 101407400, 93784904, -4450123, 42459508, 54347980, -31834298, -16733729, -54354960,
--98310728, -89765888, -93943816, -170107008, -124235152, -76359688, -132355856, -140955456, -115643608, -124078384,
--121998008, -147392544, -134264976, -136454864, -126863672, -119285200, -107925552, -100832944, -100014752, -84030496,
--69956968, -111758808, -16709033, -50682760, -57084948, -13713831, -6819871, -56958244, -6801618, -22485228,
--7712688, 19907710, 25228102, 64398204, 39109972, 53710176, 60916060, 64998424, 60213296, 82573432,
-81871744, 85804320, 81385336, 96174520, 100190848, 96978216, 79714592, 101453568, 108108624, 82597592,
-56949656, 53679040, 33806760, 27865210, 8673150, -4153234, -2279017, -18347564, -14887967, -12766790,
--5909875, -16281684, -15689516, -16205985, -5979668, -16128139, -18576270, -12018392, -2333778, -13930190,
--17022030, -15061377, -10547366, -20949776, -23746338, -25207164, -16034724, -15262166, -17452062, -15959025,
--1612760, -4128001, -9527311, -6589017, 717796, -3256122, -5669357, -5511517, 849867, -3455301,
--6259378, -7389491, -2920041, -4607963, -1489817, -2822867, -3737159, -5906654, 1062468, 3002719,
-2395518, -584116, 1726040, 691490, 2755222, 1588064, 4084514, 3581466, 4337380, -1472100,
--1341640, -2199560, -1031329, -5332202, -5424544, -5737003, -5866926, -9413495, -6891812, -6757058,
--4715337, -8159364, -7850127, -7976828, -4916664, -6114960, -6930467, -5021354, -624381, -1067299,
--1709934, 722628, 4239670, 3132642, 3107409, 3051574, 5226975, 5849209, 6051609, 4989142,
-6340983, 6592238, 6068252, 5852967, 6135361, 5804112, 4858682, 3695819, 3623342, 2841121,
-2245194, 1187559, 1009854, 587337, 433255, 83752, 54761, -17180, -79457, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--6262063,
-8022462, -569620, 3258807, 1661616, 3830037, -6724845, -3609920, 4388383, 2147484, 88584,
--3718368, 812286, -10456635, -6720550, -320512, -3990025, -4514011, 1911797, 8252243, 1416802,
-6294812, -1408212, 6221797, -3649112, -3246459, -372588, -5529234, 1145146, 2816962, -1977296,
--89657, 1484985, 308164, 2552821, -253403, -5929739, 2180233, -3661997, -2742874, 1710471,
--3629784, -5531918, 5584531, -5806796, 5316633, 4955856, 3285650, -233002, -6809671, -3957812,
-814970, -1264868, 8863739, -5371931, 2188823, -670015, 1209033, -6649683, -11104638, -1941862,
--3304441, -3695819, -835908, 4733591, -980863, -5003637, 4450660, 1895154, -2194192, 3704409,
--678605, 1125281, -5090073, -403190, -1240709, -64961, 2005213, -2332167, 1632088, -4677220,
-3208341, -721018, 375810, -1701881, -1513439, 29528, 1963874, 713501, -27917, 747861,
-4295, -2819109, 855772, 234613, 1815697, -282394, 100395, -4832, 80531, -178241,
--973884, 4328254, 4318053, 651224, 7749195, -41876, 3374234, 4183298, -1074, -3714610,
-442919, -5296769, -6789807, -2553358, -7743826, -8002598, -2569464, 5330055, -1839320, -1791538,
--4137664, -1020055, -7272990, 3619584, -1999844, 1847373, 4449586, 1529545, -1489280, 3060164,
-2920578, -3538516, 2538326, 366146, 718870, 2715493, -6334003, -2722473, 4582730, -2867428,
--154619, -1811939, 5080947, -6404333, -477278, -5359583, 3554622, -288837, -336618, 4902169,
--2045478, -2310156, -1622961, -4523138, 387084, -2033130, -299574, 329639, 3161096, 3176128,
-1123671, -1371705, -5310190, -8765491, -2661269, -585726, -2107218, 4749697, -1840394, -2686502,
-3839164, -2406792, -3703873, 8366060, -1745367, -4645544, -350577, 786516, -1329292, 4134980,
--463320, -3659849, 125091, 179852, -721555, -1090922, 3345780, 755377, 535260, -1937030,
-481573, -580357, 296890, 1290101, -210453, 736587, 1595580, 203474, -230318, -316217,
-722091, -1845225, -614180, -362388, -775778, 779537, 720481, -297427, 8885750, -5735392,
--2732673, -4163434, 3266860, 592706, -452582, 6397891, 1497870, 1841467, -9397388, 1676648,
--4410395, -5117454, -6642167, -153008, 187368, 7781407, -6446209, 2916820, -2733210, 9633612,
--3540664, -3248606, 6833830, -2674691, 2324651, 998043, -508954, 1097364, -4669167, 710817,
-164819, 1913408, 9041980, 3131568, 795643, -3921842, 3128347, -7105487, -2015950, -1389959,
-3816079, 3273302, 5439576, 3569118, -4176319, -6095096, -2700998, 4596689, -625455, 2370822,
--1031866, -701153, 9188009, 2149631, -760209, -11067594, -4982162, 257161, 3779571, 5876589,
-8249559, 4626217, -2067490, 1462436, -2097555, -2850248, 5900212, -3782793, 6075768, 255014,
--5606006, 1974074, -2920578, 4767951, -4178466, -493384, 4099546, 4758287, -4859756, -1859721,
--970126, -1984275, 2811593, -664109, -2118493, 1308891, 624918, 712428, 737661, 1140851,
-556198, 675921, 235686, -360777, -490700, -1789391, 2686502, -120796, 90731, 303332,
--33823, 427349, 1396938, 1422708, -143881, -386547, 1758252, 1390496, -191126, 1161252,
-4728222, -1080184, -744640, -1686848, -5445482, 256624, 3979824, 3969087, 7381975, 3410204,
--9603547, -8009041, -6951405, 335007, -1146756, 557809, -3770445, -2319282, -556198, 2974265,
--3758, -6129992, 6710350, -905701, -6167573, 1318555, 1498944, -77846, -562104, 2733210,
-3567507, -2161979, 5434744, 318901, 3196530, -7316477, 5272609, 1916092, 3052648, -5018670,
--527207, 3760244, 3201898, 8099772, -272194, -11057930, -3011309, -5268315, 2631204, 1854889,
--433792, -2911451, 874563, -4501126, -1589675, -8241506, -4859756, -222801, 4644471, 5214091,
--3700114, -3129421, -3240553, 5358509, -1788317, -593779, -7948374, 4861903, -7845295, -2671470,
--323196, -1602560, -2119030, 8427800, -695785, -1883343, -2223719, 1722282, -5028333, 643708,
--8731669, -6966437, 2575370, -2389613, -1293859, 3190087, -1571958, 4235375, 832687, 1981591,
-2946348, -717796, 1427540, 1025423, 550293, -548145, 1080721, 502511, 271120, -580894,
--682900, 241592, -2557653, 23085, 1611687, 456877, -96637, 377420, -1570884, -435402,
-960999, 595390, 2575370, 751619, -321049, -331786, 2371359, -2760590, 4246649, -3163244,
-144955, 5805185, 10460393, 7275675, 1675037, -7943005, -5919002, 2304250, -1243393, -5046050,
--1556389, -6539625, -2725157, 13545253, 1695975, -1294933, -2351495, 141197, -2973728, -2025614,
-9215389, -9277666, -961536, 1060857, -1863479, 2492692, 5634460, -2390149, -2947421, 1517197,
--3702262, -3630858, -8596914, -3111704, 2509872, -7704098, -1159104, 4014721, 6055367, 2226941,
--12130598, -3580392, 2625299, 6319508, -4663261, 10813654, -1087701, -5298916, -2867428, -2188823,
--4063576, 5934034, -4184909, -1035087, -5576478, -4378719, -1944010, -4454955, 6306623, -2138894,
--12152610, 4826470, 8429410, 231928, 3152506, -14847702, 11848741, 332323, -9647033, 1110786,
--6460705, -1286880, 1206886, -7004018, -8186745, 5669894, 2767033, -7118909, -323733, 297963,
--4306779, -448824, -1482838, 1230508, -3801046, -1935957, -613107, -1864553, -832687, -2808909,
-1133871, -82141, 1678259, -3064996, 923955, 1903744, 133144, -1695975, 1341640, -1643362,
-1846836, 1466731, -1163936, 1432909, -66572, -820876, -250182, 568546, 824097, 489626,
-472446, -10926934, 2651069, -8005282, 8872329, 2372970, -3158949, -6433861, -11377905, -4863514,
--8192113, 3037079, 16302085, 2906619, -4020626, -91268, -2037425, -2330557, -7093139, -4627828,
--7306813, 2182380, -382789, 1797981, -2437931, 1396401, -7727183, -389231, 1995012, -5226439,
--1795833, 831076, -2746095, 927713, -2511482, 12066174, -14372034, -2444373, 1372242, 4065724,
--1311039, -5835250, -8738111, -6189585, 4985384, -1130113, 5510443, -4390531, 14002667, 1952600,
--2479807, 6979, -8002598, -10344966, -5096516, 4117800, -8750459, -402116, 10715943, -153545,
--4776004, -9841381, -16669305, 838592, 8861591, -2260227, 10139881, -763430, -2907156, -6098317,
--5305895, 1101122, 4153770, -3049427, 14617921, 4484483, -4417911, 2347737, -5710696, 2305324,
-2936684, -1854352, 3336653, 5965173, 2697240, 393526, -3652333, -10469520, 930397, -2287070,
--848256, -1499481, 983011, 342524, 84826, -4569309, 963683, -2575370, 1105954, -2537789,
--650688, -585189, -12885, -136902, -279710, -1800128, -1467805, -1983738, -2825015, -3162170,
--1124745, 258235, 1097901, -1620276, 191126, 185220, 562104, -1217086, 1405528, -2199560,
--89657, 9384504, -4245575, -11045582, -3080565, -8274255, -4341138, -3648575, 11524471, -3012383,
--3963718, -4996658, 7384123, 6602439, 5848672, 16266115, 17079474, 7835631, 10592463, -4123169,
--4999342, 6981470, 10454487, -4679904, 4562866, 3133179, -9193914, -8764955, 5049808, -1386738,
--166967, -8750459, -11013907, -2732136, -8935679, 9932649, 18751828, 3755949, 7373385, 2033667,
--2255395, 6587406, -12883828, -3563749, 2631204, 7023882, -4267050, -10506027, 15108621, -165356,
--4685810, -3838627, 6182069, -1996086, 5509370, -3927748, 8666170, -870268, -254477, 10598369,
-3313567, 4810900, 1906429, -1782948, 8000987, -12367895, -4922033, 4423817, 13807783, -8561480,
--996969, -1867237, -1965484, -5917391, -1285806, -3145527, -3978214, -722628, 917512, 3749507,
--1635846, 10940355, 4036196, -6533719, -1544578, 666794, 4232691, 1335735, -1930051, -4011500,
--841277, 2284386, -2473901, -2336462, -1891396, 2103460, 1422171, 2072859, 1177895, -2221572,
--803159, -112743, -2054068, -537945, 1625108, 816581, -242666, -2478733, 3046206, -602369,
-1903207, -1468879, 944356, -2857227, -237834, -585726, 150861, -1973538, -565325, 6774774,
--6793028, -2677375, 6107444, -4885526, 2600066, 4589710, -9245454, -9851044, 2717641, 7439420,
--2626909, 6786585, -5057861, -2259153, 12965433, -14845018, 8836358, -4265440, 25233, 345745,
-16025060, -3633006, 3099356, 5071283, 8790724, 5142150, 7689602, -1340567, -1335198, 2491618,
-1164473, 1247688, -7863012, 12039867, -16206522, -3593277, -4332549, 8960376, -1905355, 10930155,
--595927, 993211, -19271518, -5303748, 11599633, 19838454, -275415, -9904731, -8405788, 8127152,
-6471442, 4902169, 4589173, -8492761, -3968013, -4930086, 2485176, 327491, -5295158, 3030100,
-2571612, -2455648, -2761127, -11602854, -3152506, -4274030, 16442209, 1489817, 3016678, 6247567,
-394600, -12975633, 542777, -7820062, 6363531, 15426986, -8294656, 4757750, -2462090, -8035347,
-3770981, -6737193, -1269700, 2790118, 1970316, 3523484, 1384053, -571231, -3047816, 3336116,
-7131257, 1209033, 3476776, 5950141, 2539400, 6730214, -2148558, 6367289, 204548, 148176,
-1272384, 712428, 1713692, -193274, -3249680, -1738925, 15569, 1711545, 1675574, -1217086,
-2966212, 2935073, -2586107, 4148402, 7115687, -11887933, -4494684, -4392678, 2418067, -565325,
-18011482, -2120640, 755914, 11475079, -9990094, -7228430, -9357123, -9814537, -2278480, -243739,
-4597763, 19245748, -1619203, -10889353, 19937776, 443992, 5673115, 13654238, 9467719, 12750147,
--3173444, 10095858, -6313065, 13340168, 11696270, -3022046, 6158446, -5210869, -4809827, 5107253,
-15269682, 6927246, 6117107, 2253247, -4697621, -8255464, -8380555, 1489280, 10540923, -5950677,
--7158637, -8850854, -3269007, -17649094, -4032974, 3508452, -12914967, 6412386, 1059246, -5849209,
--15192373, -10142565, 148176, -20224464, 6502581, 4600447, -321586, 5763846, 3811247, -1883880,
--10460930, -6316287, -1066226, -6611566, 6386080, -6933688, 16959752, -11237245, 725850, 7487739,
-777926, -4972499, -19298362, 3479997, 9647033, 2399813, 682900, 10630044, 5938866, -5945309,
-133144, -609349, 914828, -337155, -3231963, -6750615, -1917703, -7301445, 541166, 1941325,
-1030792, -1823214, -3694209, -1679869, -2423435, 3302830, 1097364, 4292820, 3124052, 2504503,
-1056025, -256624, -1326608, -1210107, -3219078, 1633161, 348966, 1626719, -1488206, -133681,
--2672007, 267899, -2061047, 955093, -24850144, 8686571, 11303817, 19910394, -88584, -14839649,
-4150012, 7107097, -15364709, -15974594, -9996536, -421444, 8484708, -467078, -6276021, -352724,
--5495411, -3704946, -9916006, 16483548, 12865038, 4830765, -20273320, -6089190, 3227131, -1174674,
--4536559, 25604984, 9361418, 8032126, 7515119, 12144020, 9099425, 2204392, 9528385, -669478,
--15935939, 8592619, -16392280, 4984847, -16229071, 13670881, -4311074, 16511465, -9044664, 4002910,
--7320772, 5944772, 9640054, 25212532, 5305895, -32085016, -1725503, -4473209, 6861211, 14006962,
--2863670, -6237367, 10274099, -1827509, -5083631, 13799730, 849330, -617938, 674847, 5908265,
-11018202, 8741869, -9517111, -7059316, -6013491, -9631464, 2232309, -892816, 10893111, 7846369,
--14757508, -3554086, -8359080, 7148973, -4082367, -3935264, 2554969, 480499, -5699959, 4870493,
-1164473, 811749, -861141, 2771865, 2844879, 460635, -8362302, 2333241, 1435056, -1067299,
--1492501, -2768107, 85899, -3704409, 1700270, 4191351, -1293322, -1236951, 4087198, 648540,
--3848291, -2928631, -709207, 2007897, -1687385, -390842, -2374043, 640487, -1593433, 28991,
-3928821, -2633889, 620623, 27079768, -10191421, -17959406, -5683853, 7089918, -4404489, 13042742,
-18842022, -7504382, 17284022, 11147051, 8711804, -2791729, -2030983, -3416647, 16765405, 3114925,
-2059974, -9674951, 4282620, -5027259, -381715, -16015396, 10938745, -14690399, 111669, -10343355,
-17484274, -8850317, 433255, 17295834, 13142600, 8920647, -1010928, -6773701, 8052527, -183610,
--1505923, -21936546, -6492917, -13221520, -10756746, -8358007, -3932043, 11514270, 7232188, 6745783,
-69793, 16914118, -8877697, 17894982, 15708843, 16885128, 29445758, -11290395, -8829379, 13006235,
-2476049, -11330124, 17783848, -5757404, -8524436, 5837398, -2152852, -6072010, -5037460, 7701413,
--10248866, 4748087, -6334540, 16377247, -6891812, 337155, 4796942, 11964705, 16190416, 1376000,
--14064944, -15242302, 5048734, -10127533, -32846300, -17227650, 5286568, -289373, 9550397, 1297617,
--5353677, -542777, -3092377, 1479079, -5666673, -2428267, -3877819, -1565516, 487479, -627602,
--10233833, -2616172, -6689412, -5961415, -4707821, 2170569, -438087, 499827, -7440494, -5132486,
--242666, -204548, 1497870, 3937411, 3206730, 2434173, -5341866, 343061, 1267552, -6878927,
-2492155, 491237, 3068754, 1457605, 3904125, 2258079, -1536525, 3348464, -2454574, -1780264,
--726386, -24799678, -20899848, -621160, 4884989, -14141180, 1053878, 1695438, 23841900, -14877230,
--17080012, 6075768, -6962679, 379568, -12371116, 12580496, -12575664, -16985522, -10117332, 20509542,
--13306346, -10794863, -2176475, 8569533, -5607080, -14010720, 4877472, -5431523, 488553, 6969658,
--18615462, -1025423, 10937134, 17336098, -2168959, 26283590, 11747809, -2540473, 1553168, 12176232,
--4443144, -10112500, 2399276, 14426258, 1964948, 7138773, 717796, -11068131, 4370666, -24787866,
-2696703, 1779727, -2806761, -14431090, -13070122, 2047089, -5742372, -9779104, -6422050, -7792145,
-10049150, -16184511, -9068823, -4373351, 7626252, -9352291, 20755966, -2651069, -16699370, -1068910,
--9777493, -26721676, -7710540, 2209224, -419833, -17214766, -9006546, -3610457, 4424890, -10062572,
--4793184, 17806934, -5779952, -23322746, -7943542, 3488050, 2226404, 8216810, 7008850, 5338645,
--5104569, -6480569, -1232119, -4401805, 3877282, 1461363, -2630668, 5498632, 2531883, 3405372,
--1636919, 2866354, 2250563, 405338, -594316, -1337346, -1786170, 464393, 1795833, -8016557,
-2228551, -4432943, 5844914, 2431488, -5820218, -5103495, -59593, -3950296, -216896, 2207613,
--1157494, -2527052, -4204236, -3091303, 2867428, 1332514, -4815732, 2389076, 974958, -3058017,
--2539400, -5567352, 18974092, 16934520, 4880157, 34952444, -6824166, -12560632, -11308649, -5417028,
--19262392, 25382182, -15650324, -5850283, -12737262, -6657736, -6150930, 2789045, -18351858, 51003,
--105227, -2714419, 4810900, -19294604, -5166846, 12867185, -13313862, 501974, -17137456, 15925739,
--236223, -28861106, -15206869, -5387500, -955093, 7776575, -17750026, -9948218, 11603928, -2227478,
-7903277, 7415798, 7138773, -10618770, 805843, 12508019, 4323422, -23822572, 14885820, 10853919,
--13157095, 36181340, -1016297, -26229366, 6859600, 8096014, -940598, 19252728, -6307697, -32533840,
-8773544, 4517232, 9342628, 11376295, -15178951, 23323820, 8454106, 7176891, -5944235, 35392680,
--3097745, 508954, 23851564, -4237522, 10672457, 19085224, 6191196, 2773475, -4990215, 9135395,
-8053, 16138340, -7517267, 15712601, 14083198, 817118, 13925895, 8516383, 11010149, -5871757,
--442382, 13050795, 9032853, 6993818, 3803194, 4445291, -9069897, -1045825, -3758, -4064650,
-117038, -1486059, -4138738, 7577396, -8234526, -1486059, -8092792, 6614787, -3704946, 7934415,
--7209640, 1116155, -5165772, -6657200, 4176319, -2521683, -639950, -6482717, -10152766, -7140383,
-7003481, 765041, -3572876, 846109, 8820789, 6826314, -3324842, 3352759, -386547, -2533494,
-9113921, 434329, 5782100, 7078643, -25146496, -24675660, 50556596, 16301548, -31624918, -15902653,
--14525043, -28945932, -2185602, -15280420, 21030844, -11919608, 62814, 26272314, 521302, 4361003,
--19399294, 24226836, 18008798, -317291, -5896990, -1889786, -15100031, 1144609, 1854352, 3077344,
--20735028, -3004330, -1258962, -6215355, -4669167, -14241575, 13434658, 26760868, 32060858, -2601677,
--13088376, -5412196, -6731288, -4482872, -19798726, 6732361, 7625715, 7099044, -20634096, -27404038,
-29566554, 11229192, 16518981, 21572010, 20107426, -8719857, -13901735, 19528680, -19929186, 10103911,
--14942191, -11344619, -6722161, 23236846, -7791071, 4762045, 7867307, -4175782, -18861886, 38832408,
--23555748, 2464774, 27979028, -25368224, -11618423, 3053185, 10162429, 28943784, 5061619, -16681116,
-365072, 3591667, -4039417, -6958921, 4041027, -11653320, 8872329, -9630390, -13755170, 7439420,
-4015258, 10481331, 4556424, -289910, -4854387, 1267015, 2786360, 3304441, 10994043, -541166,
-1412507, 7012608, -16588237, 2476049, -7546795, 1920387, 1703491, -2542084, -6365679, -7601019,
--2025077, -7624104, 2901251, 4338454, 9368934, -703301, -6510634, 6205154, 7223598, 4630512,
-4356171, -11694659, 261456, 3142842, -3093450, 10355166, -3983045, 936303, 922881, 9588514,
--4656282, 3000035, 13113609, 13173202, -8402030, 8269423, 33724084, 20332912, -3025805, -21566642,
-2278480, 34583612, 27539330, 5816997, -27341224, -10517301, -23602456, -1741072, 18504866, 22857816,
--1656784, 8702677, 27160836, 28908888, 44841068, 45142792, -22509924, 9841918, -24308442, -4375498,
--19702088, -7060390, 15570330, -3455301, 6828461, 6140193, -13993003, -10238128, 11464878, 12787191,
-16575889, 11795591, -536871, 12160663, 18294950, -9642202, 9277666, 10808822, 3234110, 10557566,
-34984120, -26237956, -22592064, -5057861, 21628382, 20735566, -12270722, -120259, 33214592, 26877906,
--18775450, -12503187, 11435350, -22925998, 6420439, -11010149, -20799990, 6775311, -24443732, 25475062,
-9378061, 28215788, -11793980, -16430934, -31786516, -6841346, 10435697, -27837830, -23816130, -13013751,
-12503187, 7428683, 5907191, -12232067, 5375689, -8738648, 3428995, 25959856, -10979010, 3095598,
--14645838, 11179263, -6008659, -12285754, 8763881, 12150462, -6674916, -3419868, -3929895, 8745090,
-19377818, -6127845, -12932683, 345745, -179315, -4748087, -2004139, -17942226, 2557653, -9501541,
--4225711, 6592238, -5814849, -3133179, -467615, -4920422, 8004209, -7837242, -12410845, -11231876,
--9460739, 10208600, 5404680, -2238215, 4556961, 3101503, -8007430, -8738648, 3365644, -9320079,
--996432, -16200080, 12858058, 33444910, -2618856, -10919417, 21319144, 4041027, -1684164, -32685774,
-27900644, -14415521, -31077846, -10842645, 1644973, 34898756, 2955474, 24887724, 9835475, -30410516,
--6947647, -26990112, 3835406, -26903676, -19467476, -11794517, 903554, 5140539, -20950314, 19713364,
--6928856, 11812771, 12727062, 12596602, 24002962, 44144212, 25723096, -8929774, -22354768, -1190780,
-46498388, 28813324, -16410533, 22939958, -9432822, 28115392, -14608794, 2348810, -11045045, -5688148,
--2029909, -8440684, 70099768, -13838385, -19899658, -22924924, -32079648, -12596602, -24823838, -1507534,
-26825828, -11275900, 7618735, -9495099, -14343043, 24377698, -7330436, 41355168, 7307350, 32996624,
--41250476, 16396575, 71271760, 25678536, -40425304, 23396298, 21372294, 902480, 4196183, -12668543,
-13230110, 62536336, 33044942, 13718126, 18663780, -20097762, 36005248, -4218195, 5174362, 5375152,
-8570607, 3820374, 23540716, -20203526, -5363878, 1321776, 30130270, -5558225, 7074348, 34983044,
--3200825, -20090246, -4966593, 12611635, 1735167, -8726837, -20369420, 11212012, 7918309, -14141717,
--8480950, 9126269, -17291002, -14445049, 4162897, 6629282, -459562, 4483409, 2919504, 5308580,
--6585259, 5569499, -4163434, -5442261, 5116917, 1959579, 7233262, 1270237, 49086644, 22958210,
-5514201, -1468342, -53490060, 25012278, 33659660, -24167244, -17597554, 41599980, 27117886, -33199024,
--35286376, 1295470, -20618528, 9035001, 3438121, 8628589, -33172716, 8730595, -6437619, -16474958,
-29504814, -1993939, -4900021, 9976135, 24739012, 22286048, 15211700, -28338194, 624381, -13793824,
--30271466, 11098732, 8571144, 18717468, -6397354, -14049375, 38737384, -27742804, 12277164, 13527536,
-10941429, 8389145, -4818954, 22969486, -21242908, -36604396, -6169184, -41938744, 36870148, 22737020,
-36178120, -2849711, 7109782, -29143500, 30376694, 38402376, 13732084, -16221555, -42973296, -9803263,
--56688200, 911607, -10579578, -38356204, -32639604, 15006079, 2353105, 23721104, -18323404, 27182312,
-22767084, -32075890, 6772627, -19127636, -5478768, -28967406, 3647501, 84664544, 21050172, 24902758,
-30935576, 13914083, -24062554, -3207804, -402653, 20162724, -4671851, 20718922, -9413495, -12613245,
-428423, -1336272, -23790360, 20496658, -3852049, -5706938, -7442105, -16502875, 2297271, -7728257,
--10705743, -15320148, -12251394, 7660611, -8880919, 7510287, 8304856, -5780489, -10000831, -13190381,
-5989869, -2254858, 5564667, 20565914, 12589623, -59593, -1822140, 6717866, 12619151, -12421582,
-11109470, -12517682, -9677635, -6501507, -34489124, 14126684, 10612864, -16615081, 4898947, -8913131,
--51514912, -14174466, 11923903, -6641630, 4959614, -29046864, 36325760, -49384608, 3209951, -36374616,
-24137716, 26567594, 8295730, 22110492, 1924682, -24241332, 39485780, -19462644, 3626026, -131533,
--23657754, 37287296, 2057826, 9114457, 7752953, 11120744, 5755256, 27750858, 33030446, 10596758,
-38691748, -34850440, -3179887, -719407, 49633180, -10327249, 39464308, 21613886, 54438712, 10096931,
--13014825, -18253074, 21309480, -41828148, 38262252, -24119462, -14373645, -7216619, 7292318, 28703266,
--7417409, -54010824, -15349676, 85661512, 5865315, -55067924, 12903692, -36701032, 10173704, 84393424,
--23939074, -23976654, 58525908, -64404644, 31655520, 13942538, 18722836, 54732380, 34507916, -49932752,
-60109676, 39291436, 1305670, 64012728, -27099634, -9491878, 46292232, 30275224, 5084168, 12001212,
--568009, -1190243, 5151277, 15524696, -15023796, 16444893, 16928614, -15033459, 7057705, 11306501,
--21284784, -2423972, 7280507, -2430952, 3460670, 25904022, -54224, 17108466, -9767293, -209917,
-12269648, -8435316, -7130183, -17749490, 2492692, 15392089, 10087268, 14481556, -28314036, 15183783,
-17725330, 7885023, 2720862, 7182259, -1742146, 16224239, 29122562, 6929930, 13814762, 13231720,
--7295002, -8043937, 13629542, -17837536, 6533182, 21031382, 28759638, 55328304, 27262842, -27252104,
-35153232, 10227928, 31649614, -9737765, -60189672, 60170344, 52056076, 31911070, 98784248, -9691057,
--83984328, -43519292, -39964672, 87743496, 64167348, 15281494, -6236830, -16480863, -58941448, -28051506,
--19541564, -33848100, 89034672, 72438920, 100494184, 1557999, -116409184, -180537344, -88581016, 100124280,
-134815808, 138098768, 55082420, -114971976, -211450896, -129483600, -65932580, 96991632, 164600320, 93664648,
-50338628, 13450764, -75295072, -100406136, -75722960, -5835250, 57402236, 117700896, 140162496, 24905978,
-26817238, -111965504, -186105760, -98952824, 91629368, 154969392, 146244704, 91710440, -54681376, -180370912,
--117513528, -151249424, -196495, 102584224, 110147656, 55569896, -44787384, -94945080, -84919560, -66521528,
-18937048, 63230508, 43695924, 127927208, 45457932, -28587302, -76354856, -28027346, 84505632, 124579824,
-41313828, -4802847, -76911592, -15412490, -17837000, 49240188, 17942762, -12469901, -53335440, -15726023,
-2281165, -8392366, -16450262, -3366181, 11846057, 26725970, 44409424, 21805012, -44923212, -39390220,
--37584184, 8978629, 46812996, 52789444, 23822572, 5743982, -34235720, -14410689, -66530656, -58237608,
--5582384, 17456894, 72030896, 109260208, 40970768, -37848324, -90406912, -111916112, -47491064, 88172456,
-144818240, 99920800, 29904246, -72689640, -119256208, -57994408, -702227, 21912924, 21101712, 50888920,
-25439628, 11517492, -30572114, -63838248, -48721036, 7090454, 32094680, 64072860, 29829084, 11056856,
--12150999, -31938450, 37855840, 5827734, -53692460, 7426536, -13616120, -21278342, 16786342, -16189879,
--6130529, -28504624, 2188286, -10580652, -21129092, 9181029, -1918777, 7778723, 4045859, 18529562,
--17121350, -5411122, 6003291, 2517388, 8926553, -6978785, 18712636, -12224014, 13084081, 6497749,
--5253282, -12865575, -5164162, -24596740, 28038620, -1894618, 1584843, -4172561, -5863704, 2108292,
--115427, 1313186, 11278584, 6924561, 386010, 15977815, -12577812, 5355824, -11904039, 14426258,
-9150965, -9822053, 8051453, -12125230, -13627931, -11005854, -21403432, -1803349, 17364016, -14576045,
--29368450, -20046760, 2523293, 18916110, 1098438, 14237817, -27907086, -6989523, -2609193, -2087891,
--27269284, -6515466, 1651415, 4568235, -9313100, 29637958, 12458090, -9006010, 27602682, -2261300,
--47400868, -1620276, -6295349, -3956739, 9984725, 6454262, 13495324, -14696304, 21387326, -35038344,
-10917807, 6569690, -781684, 301721, -1591822, -2139431, 12566537, -1938641, 2807835, -5047661,
-187905, -10106058, 3364033, 326954, 21368536, 66035, 9873593, -9291625, 1882806, -4565014,
--11463268, 3988951, 433255, -5847061, 15475304, -2610266, -3069291, -5787469, 11564199, -3934190,
--19683836, 4363687, -3278671, 6480032, -7937100, 1064615, -1750199, -12363063, 12310450, -10934450,
-8729521, -10452340, 6394133, -869194, -3150359, -6048925, -28829968, -47554952, -74947176, 3175055,
-62592704, -23360864, -37768868, -40370008, -38153268, 8489540, 8391829, 72116792, -9980430, -9842454,
--31503048, 4024921, 10085120, 23025320, -23592256, 12603045, -17058536, 28530394, 9323300, 9658308,
-3749507, -16996796, -9134322, -10910291, -3395709, 10637560, -10170483, -8799851, 20153598, -17597018,
--10926397, 16844324, -15226196, -5239323, -13024488, -21328270, 8052527, 14805826, 2968359, 13981729,
--20184736, -4730370, -278636, 12395276, 15060303, 18757196, 1598802, -1411971, -30537754, -31205622,
--11414949, -9778030, -6629819, 15065672, 20251308, 28673202, 3409130, -12346420, 28532542, -19661286,
--8725763, 13080860, -8551280, 37593848, 2174864, -5658620, 6565395, -13025025, 11034308, 26209502,
-21325586, -7075959, 8238284, -24429774, -16023449, -8732205, -5896453, 19041738, -2136209, 18606336,
-5063767, -5427228, 2428267, 3768834, -21383568, 13401909, -15765751, 10484552, -7104950, -3987340,
--884226, 12331388, -11001559, 1928977, 2220498, 10837276, 18317498, -8680666, -2469069, -13859323,
--5554467, 5487895, -5433671, 4468377, -4202089, -5373541, -9772124, -15185931, -8433168, 14825690,
--5407901, 7559680, -10084046, -1882269, -615254, -2758980, -9024800, -3653944, 1245004, -573915,
-326954, 517007, -13766444, -1792612, -2968359, -2401961, -18254, -331786, -458488, 19676856,
--48499844, -113441360, -86673512, -9976672, 37591164, 97933304, 82705504, 78947408, 80641768, 53213572,
-22452478, -29025388, -51478940, -98328984, -72421736, -71191768, -70950176, -44144748, 42890616, 57752816,
-84897544, 65158412, 54626080, 18022220, 36456756, -8178155, -9375377, -11425150, -19862614, -37238976,
--30461518, -62727996, -22797150, -49818400, -23684598, -11780022, 16371878, 3266323, 23402740, 5402532,
-32754494, 24040542, 39611948, 52576844, 65375844, 41773924, 28128814, 46410344, 3648038, -15801722,
--57268556, -67242544, -92423936, -82455320, -77014136, -29546154, -50523312, -26491358, 3172907, 13933411,
-32726578, 62279172, 66469452, 74185896, 112173272, 63084480, 85959472, 59528248, 13653701, -9144522,
--35116728, -89731528, -98018672, -93437552, -103546296, -76134200, -52995064, -42642584, -11571716, 21776022,
-36666136, 46416784, 69224672, 73356968, 77413024, 72982232, 45637784, 31731218, 15218680, 1593433,
--84289, -22115860, -35942972, -52172580, -61844308, -65848292, -62116500, -43814572, -19519552, -17706002,
--6530498, 11581916, 31139050, 38534984, 73295224, 51481088, 40880036, 40605696, 14847165, -1808718,
--10393284, -13100187, -13606993, -35614944, -31688806, -23176718, -23957864, -17803176, 2532420, 5350456,
-7217156, -4462471, 11850352, 140660, 13989245, 14011794, 4878009, -5135171, -357556, 2819646,
-2206003, 1956895, 6767795, 1156957, -3025268, -10609643, -2102923, 1983738, 8053, 6002754,
-5268315, -1473711, -657130, -4804995, -3190087, -2823941, -1261110, -2446521, 1765232, -1743757,
--617402, -950798, -2094333, -4354023, 29528, -464393, 2777233, 5421323, 4323959, 2544231,
-3782793, 185220, 380105, 331249, 1015223, -1130650, -767725, -1467268, 365072, -576063,
--2053531, -2494302, 231391, 163209, -239444, -2229625, -2304787, -2415919, -2183991, -1312649,
-1249836, 1064078, 2116345, 2105608, 2078764, 129923, 1161789, 821949, 1349694, 1102733,
-2400887, 1823214, 1890859, 54224, -1342714, -2214056, -1748052, -2559801, -2193118, -2351495,
--1880122, -2445984, -1537598, -900869, 12348, 423054, 1247151, 1659468, 2736431, 2810519,
-3400004, 2326799, 1705639, 797790, 542777, -890669, -1589675, -2235531, -2376191, -2357937,
--1411971, -1159104, -619549, -324270, 166430, 182536, 581431, 563178, 661962, 550293,
-535797, 281857, 249108, 101469, 90731, -9127, -37581, -84289, -87510, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--9311489,
-7208566, 353261, 3310883, 3283503, 9331353, 4386772, -3447248, -4356708, -6072010, 4347044,
--5311801, -3867618, 869194, 1332514, 577136, 5469641, -1786170, 5111548, -1307818, 4587562,
--4346507, 2007897, -1918240, -4655208, -323733, -8873939, 1334661, 2167348, 3969624, -3246995,
--47245, 3449933, -2540473, 3876208, 3664681, -2207076, 2633889, -2954401, -1363115, -2188286,
--3172907, -4052302, 3625489, 5332202, -3991635, 2359011, 4305705, 3464428, 5269925, 647466,
--781147, 3049427, 2334852, -5576478, -202400, 628676, 364535, 1750736, 3616363, 792958,
-1318555, -1946694, -1210644, 2535105, 3594351, 1980517, -1886028, -3339874, 3706557, -3017215,
--961536, 2049236, -609885, -154082, 1588064, 353261, 114354, 3328600, -3263102, 2473901,
-1372779, 1614908, 3107946, -1266479, -343061, -1067836, -417686, 104690, 1530619, -1225676,
--202400, -854699, -461709, 26307, -100395, -508954, -324807, 315143, 467078, -35433,
--177167, -361851, 68719, -134218, 72478, -508417, -86973, 453119, -1046361, -518617,
-3697430, -1941862, 2712809, 270046, -215822, -7494718, 1218160, 6404870, -3911642, 2652142,
--7956964, -8054675, -2643552, -6548215, -5709622, -852551, 1197759, 4515085, 732829, -2161979,
-1036161, 3075197, -3948149, 5501853, -3705483, -4017405, 4671314, -2308545, 5379447, 6822019,
-962073, -4908611, 3457986, 2254858, 1397475, -2494839, -1794223, 2868501, 2409477, 492311,
--5536213, -1597728, -5112085, 4641249, -4611721, -3016141, 3433826, 166430, 2983392, 852551,
-1158567, 5049271, 875636, 5662378, -7272454, -3741454, -1663763, 3619047, 5135171, 5845988,
-7973607, 866510, -2241436, -757525, -1043140, -240518, -5143224, -2260227, -2223719, -627065,
-822486, -4189741, -2456721, -944893, -1759326, -3275986, 3963181, -3938485, -1317481, 2623151,
--6722698, 2040110, 3706020, 4081293, 2174864, 1182727, 2473364, -1199370, -2590402, -661425,
-732829, -282931, 733366, 127238, -699543, 49929, -1020592, -1235877, 1531693, 673773,
--110059, -13959, 17717, 1137630, 559956, -448824, -436476, -469225, 115427, 839129,
--970663, -173409, -25233, -190589, 587874, -32749, -374199, 8527658, -6336688, -2383170,
--1255204, 5239860, 4730370, -4791036, -442382, -8886287, -1945083, 10754061, 4049617, -4339528,
-7722888, 2512019, 2967823, 779000, -2595771, -8482024, 1134408, -3825742, -2418067, -1558536,
--5166309, -1837709, -3999688, 2778844, -1811939, -2349347, 4831838, -9128953, 8387535, -2967823,
-1190780, -2866354, 2616709, -351114, -840203, -236760, 3569118, 165356, 2255932, -3270618,
-6283001, -4899484, 7316477, 1546725, -726386, -4109747, -4809290, 9935333, 1713155, -9337796,
-9534827, 8975945, -4883378, -1801739, 2820720, -3694209, -688269, -2281702, 2254858, 5720360,
--3490198, 1297617, -2614561, -2401424, 937377, 7704635, -7080254, 4280472, -7297687, -5623723,
--5271536, -944356, 141197, -18790, 4411469, 6818261, 1779727, 1642825, 3333432, 2690797,
-1490891, 1680943, 1996623, -756451, 2150168, -1001801, -2121714, 3620658, -188442, 484258,
--666257, -1096827, -638876, 6979, 1531693, -406411, 338766, 136902, -1374926, -4832,
-751082, 950262, -118112, 662499, 2240362, -3468186, 197569, -6659347, 6029061, -9280351,
-188442, 9354439, -17450988, 11879343, 4650376, -4753455, 3629247, -506806, 10331007, -1250909,
--8837432, -6215892, 3369402, 3915400, 1012539, 137976, 4303021, 1187022, 579821, 5902359,
-2324114, 1585917, 4208531, 2993592, 14799384, -4249334, 3830037, -352724, -2602213, 3743601,
-2263448, 1383516, 1750736, -2583423, -4285841, 141197, -153008, 81604, 2017024, 4430796,
--4800700, -5073430, 1988033, -1314260, -2038499, -3089155, 5936182, -4495220, 8644695, 4003447,
-240518, 1936493, 594316, 2276870, 11023034, 9258876, 565325, 404801, 1998234, -2371896,
-4032438, -1045288, 3621731, 1038308, 96637, -117038, -4914517, 4441533, 3342022, -1140314,
--2888366, 259309, 4242891, 311922, -1382443, 133681, -3475166, 2291902, 759136, 2953327,
--962610, 795643, 1139777, 1167694, 929860, 1729798, 727997, 709743, -4203699, -345745,
-1432909, 2166811, -1538135, 1369021, 1211181, 1107028, 1217086, 477278, 907849, 1220845,
-1334124, 131533, 418759, 325344, 527744, 113280, 228170, 823560, 204011, -278099,
--1053878, 461709, 1211181, -1126355, 2188286, -1037772, 4825933, 97174, 5572720, -2154463,
-4939213, -3765076, 10352482, -7946227, -2984466, -3797825, 10672994, 6044630, 3907347, 6781754,
--6163815, -1249299, 9843528, 5594732, 4603668, 4786741, 2527588, 3287798, -1162326, 9463424,
--1016834, -4361540, -3274376, 3317862, -3606699, 2169495, -8990440, 3317862, -1755031, 178778,
--9659918, 4152697, -2105608, 9037148, -1516660, 2866354, 2433099, -3796751, -992137, 4125316,
-518617, 2833605, -2085744, 5022428, 7050189, 913754, -5006858, 1918777, 4939213, 3588982,
-605590, -3374771, -7038915, 5872831, -7832410, -3266323, 4299263, -10284836, -2422362, 6419903,
--4825396, 1372242, 24696, -550830, -1444183, 2631741, -5207648, 317828, -8652212, -4409321,
--11802033, 923418, -3362960, 296890, -2346126, -324270, -3058554, 2731062, 2494302, 1082869,
--1932198, 2528662, -360777, 1017907, -3462818, 913217, 609885, 1137093, 656593, 2377801,
--385473, 2677912, -1236951, -115427, 1730335, 2521146, 291521, 1424855, -1676111, -533113,
--543313, -546535, -1234803, 834834, 1818382, 595390, 1921998, -1846299, -1257352, -1000191,
--2771865, 357556, -498753, 1336272, -477815, -446140, -2903935, 2960843, -18807124, 3463354,
--5826660, -3331284, 4493610, 3433826, 2462627, 964757, -13776644, -1342177, 4487167, -7358353,
--1810329, -10113574, -5060545, 2399813, -1066763, -9307731, 9963250, 6032819, -2851322, 1165547,
-7871065, -4887136, 2225330, -3315715, -5235565, -3580392, -9591199, -3546569, 7498476, 3548717,
-9539659, -4670777, -15213311, -6562710, 3904125, -4857071, -9866077, -1624035, -1738388, 9206799,
-4804458, -10597832, 7259032, -7486665, -325881, -5395016, -5120675, -4939750, -11667279, -6932077,
-986232, 7632694, 11559904, 7379291, 2247879, 4604205, -5115306, -8710731, -5299453, 5585605,
--2575907, 6019934, -1703491, -5524402, -175020, 551366, -2586107, -6231998, 489626, 4760971,
--15236396, -10098005, 14413910, -4610111, 389231, -7856032, 3878356, 2157684, -830539, -579821,
-5335423, 3904662, 1276142, -1606318, -1855963, -326418, -2084670, 1260036, 1636919, -2998961,
--1430224, 1148904, 437550, 28454, 993748, 3002182, -3083250, -1439351, -5717675, -2345052,
--781684, -1067836, 383326, 843961, 1741072, 134218, 2207076, -2499671, -1715303, 460098,
-601295, 858457, -2028298, -1159104, -2830384, -124554, 1053878, 7065221, -380641, 3485366,
--5144297, 3461207, -6963753, -663036, 11621108, -5742908, 10970420, 11110007, 13757854, 3296388,
-5407364, 11821897, 9239012, 6730751, -9473087, 1021665, 2785823, 7861938, -1742146, -7102266,
-8789114, 8872866, -2724083, 5845451, -3159485, -3357591, 5539971, 4711579, -833761, 5626407,
-371515, -9730785, -7756711, 8035347, 11816529, -1145683, -4275103, 2318209, 235149, -5907191,
--10815265, 5367636, -10231686, -5131412, 7599945, 1421634, 6711424, 75162, 10822781, 1301375,
-11899207, -14200236, 12565464, -2685965, -592706, 3595425, 6593849, -5604396, -11675869, -3512747,
-10506564, -2296734, -12481712, -7549479, -7682623, 1816234, 4389457, -11021960, 5364951, 6000070,
-11118060, 3207267, 3447248, -204548, 3074660, 334471, 2391223, 1449015, -8241506, -1156957,
-3823058, 2480881, 6546604, -4588099, -1396938, -327491, 475668, 2898566, 347892, 2347200,
-1001801, -1527398, -615791, 2220498, 2230162, 613107, 2438468, 426812, 1047435, 3009698,
--12348, -2036351, -965294, 444529, 1551557, -500901, -809601, 2370822, 1321239, 306553,
--2759517, -1160715, -1595044, -1643899, -166430, 2539936, 120796, 2399276, 1904281, 1509144,
--226023, 115427, 3729642, 12017855, 1519882, 5000953, 14299020, 15403900, 4580583, 3850975,
--11428371, -5792301, 12590160, -9393630, 12869333, 3606699, -67646, -2598455, -4519916, -7478612,
-1353452, 5678484, -13872744, -6309307, -5905043, 3044595, 2777770, 3006477, 423054, 2323041,
--510027, 4146254, 3394098, -3710852, -6502044, -12020540, 2114198, -6511171, 10824391, 398358,
--6003291, -7577933, -2299418, 4988605, -9403831, 5852967, -3139084, 1904281, -97174, -6742562,
-6670621, 8387535, -5763309, 7050726, 2040646, -585189, 20230370, -5124433, -13090523, 2444373,
-4951561, -3318936, 1117228, -5746666, 13748727, 7941395, -1336272, -2976949, 9774272, 9271224,
--1920387, -7982734, -5737003, 19049790, -1725503, -2671470, -7664369, -5040144, -1500554, 1814624,
--1959042, -5123896, 8265128, -2648384, 9802726, 2786360, -3032247, -1122597, 1793686, -100395,
--1622424, -1751273, 3490198, -4388920, -1012002, -1212791, 5696737, 468151, -1169842, -192737,
--2813741, -2734821, -292595, 517544, 5981279, -1443646, 3576097, 1287953, -1850594, 1158567,
-317828, -2922188, 2287607, -1484448, 3132105, -356482, -3033858, -2354179, -1692217, -2369211,
-55835, -791885, -889595, 998043, 1187559, 1591285, 716723, 5102421, -10403485, -2849711,
--3186329, 1008780, 4613332, 10517301, 9204652, -14371497, 461709, 1839320, -1340030, -4195110,
--9863392, -888521, 3498788, 6073084, 4956929, -9039296, -1472100, -11494406, 11025181, 613107,
--956167, 5374078, -5056250, -813359, -12262669, 2213519, -7271917, 5239860, -846109, -1941325,
--4067871, -8089571, -7875360, -816581, -9743133, -15947214, -2871723, -7197829, -15336791, -1127966,
--1213865, -8329552, 5652177, 8614094, -942208, 4170950, -959388, -1219771, 2412161, 2630131,
--12406013, -3567507, 6972343, -5908802, 15077483, 2826089, 4100620, -9539122, 12348, -4241280,
--9752797, -930397, 14000520, 6565395, 10662256, 5985037, -4498978, -11084774, -17411260, 11877195,
-12152073, -1315871, 6328635, -13535053, 6638946, 5713917, 9912248, 1599875, -11588359, -1381906,
--10795937, -3657702, 1004486, -3415036, 2408940, -2302103, -3518115, -817654, 1151051, -419833,
--1086090, 3332895, -904628, 1367410, -7814693, 265214, -556198, -1130113, -3495030, -1403381,
-2466922, -3210488, -3786014, -1273458, -1305670, -1477469, 69793, -824634, -4203163, -3337727,
--2055142, 1333587, 1516124, 2635499, 1275605, 2429341, 868657, -2977486, 703838, -387621,
--1833414, 1272921, -3524021, 1653026, -1878511, -204548, 2496987, -26996016, -6667937, 21667574,
-7321309, 8902930, -5499169, 8989367, 15148887, 1213328, -2411624, -24930138, -5721434, -1070521,
-14475650, 4144107, 5877663, -18654654, -4926865, -6873559, -4341138, 11761768, -6455336, -2184528,
-2150705, 3437048, -5794448, -2493229, 3143379, -5145908, 11598022, -12759274, 1527398, 8563091,
--10879689, 9131637, 15506443, 17986786, 8732742, 8847633, 11887396, -7967165, -14631343, 5983427,
-6564321, 9854802, 7915625, -16611860, -4605279, 8857833, 5217312, 3273839, 10627897, 2435247,
-12356084, -4460324, -2479270, 7063074, 6609418, 2025077, -10598369, -5672041, -11395085, -13153337,
--611496, -14394046, 927713, -8351027, 762894, -7590281, -4361540, -18514530, 12986907, 3449396,
--2598455, -3266860, -1924682, 2549600, -6707129, -902480, -16000901, -8801999, 5798743, 7376070,
-3184182, 2513093, 803696, -8426189, 4055523, 3927211, 3186329, -8051453, 2027761, 365072,
--6274411, -2129230, 1300838, 1063004, -3144453, -4799626, 1777043, -2337536, -2786360, -693637,
-884226, -563178, -180926, 1682554, -1321239, 2325725, -203474, 3300682, -1255741, 2952253,
-4763656, -3210488, 2741800, 256624, 1969243, -1967632, 3221, 2670933, 2323041, -3964792,
-2328946, 2127083, 17065516, -8222178, -7027640, -6220187, 11768210, 14925011, -9272298, 23913842,
-5065377, -10137197, 12264816, 3540127, -9884330, -11620034, -9375377, -704912, -5012227, -3414499,
--15512348, 6295885, 6528887, 21571474, 2959769, -3617973, -9667435, -10120554, 2618856, -1151588,
--13568875, 2464774, -5007932, 704912, 10547366, -8079371, 13935558, -12149389, -10218264, -641561,
--15928423, -19046032, 3131568, -2137283, -22009560, 1576790, 282931, -10437307, 5534602, -5043902,
-2808909, -14843944, -24295020, 16020228, -14856829, 24790552, 13526999, -17629230, -2246268, -17864380,
--4813048, -2219961, 7452842, -6402723, 11364483, 14360760, 13600551, -9756555, -7980586, 1321776,
--12015171, -1072131, -3911105, -15822123, 9498320, 7078643, -8445516, 12542378, -18553722, -1734093,
-1120987, -4813048, -3122441, 16173773, 11918534, 7977365, -967978, -8372502, -6817187, -6300717,
-2794950, 2644626, -512175, 1870995, -490700, -701153, 340376, -633508, 648003, 3259880,
--3835943, 1571421, -277562, 3583077, -2071785, -327491, 2038499, 4772783, 1867774, 3859565,
--4562329, -4927401, 2348810, -3268470, 784368, 19327, -5322002, -2921115, -3185255, 95563,
-1716376, 1613297, 1040993, 1282585, -765041, -14761266, -11299522, 6895033, 8423505, 9339406,
-16013249, -6328098, 29722248, -1238024, -15840376, 6482180, 14503568, 3753802, 7483981, -6880001,
--16939888, 24739012, 13613973, 9963250, 4575214, -8965744, 7779797, 20554640, -7947300, 4176856,
--488553, 4095251, 3313567, 14561013, -4554813, 4757750, -5518496, 4224101, -1686312, -1091995,
-8955007, 1667521, -18685792, -12651900, -17525614, -12121471, -9418326, -4846871, -13474923, -7776575,
--6747931, -11758010, -8218420, 4758287, -12215961, -4425964, -9538585, 21910238, 11048803, 19035296,
--17764522, -1947768, -16251083, -3686156, 17693118, 9563818, 20890184, 9772661, 12838731, -14199699,
-6038724, 5857799, 19332184, 19561966, 5716065, 17669496, -15716896, -7707856, 11298985, -40936408,
-499827, 6364605, 618475, 9772124, 6284074, 22593138, -2000918, -3484292, 24592446, 7180649,
--2428267, -11434277, -448287, -128849, 20117090, 2378875, 328565, 1320703, 3893925, 6017786,
--1352378, -1481227, 6347962, 2826625, 1921461, 3140158, 4552666, 3354906, -455267, 476741,
-440771, 6458557, -1409823, 3250753, 6348499, 4500589, 7108171, -3532611, -2630668, 1402844,
-2169495, -2800856, 9127, 3879966, 6592238, -754304, 1832340, 697932, 17507898, 11383274,
--11445014, 22373558, 13288092, -1123671, -5568425, -2806224, 13444858, 33039036, 17666274, 4751308,
-1395864, 10853382, -2635499, 26665842, 15094126, 16653199, 697395, -8496519, 5672041, 1999307,
--14161581, -3506841, -874026, -3365107, -4020090, 5397700, 2974802, -11653857, -5551782, -20580946,
--2080912, -6416681, -26422102, -11908334, 837519, 9868224, -13577465, 16990354, -4676146, -4104915,
--2276870, -4198868, 12428562, -8379481, 8703214, -27171036, 8443369, 11780558, 9181029, 18017924,
--17792976, 15418396, -15963857, -12027519, 13452374, -7911867, -2319282, 11172284, -18103288, 16041703,
-25898652, -601295, -3681861, 32876364, -7022272, 6263673, 18655728, -39695700, -20198158, 1258425,
-1289027, 5283347, 9614284, 19175956, 11677479, -15245523, -12046310, -3695283, -4235912, -20565914,
--1901597, -4184909, 5146445, -21490942, 344671, -6555731, 8798777, -3344169, 11178189, 2853469,
-205622, -6455873, -4538170, -6080600, -6192269, -4962298, 4476430, -13131326, 9439801, -1686312,
-5313949, 177704, -701690, -9016210, 5005785, -6448357, 1748052, -6845641, -3512210, -198642,
--2816962, -7839926, 718333, -2568391, 1002875, -5394479, -5611375, -6317897, 1273995, 1148367,
-7955890, 8143258, 106300, 10737, -9960566, -5936719, -31372588, -18854906, 23170812, 23038204,
-2513093, -5401458, 19544786, -31470836, -16874926, -34055332, 14954539, 4176856, 1556389, 6649146,
--15470472, 7894687, 10833518, 14186814, 24017994, 24679418, 20742008, -797253, 4723927, 309238,
--8965744, -1823751, -7479149, -3846680, 28615220, -6634651, -26226680, -6601902, -5361193, 2386928,
-41210212, -14846628, -14714021, 13967771, -22250078, 7744900, -24693914, 32352378, 9176198, -871342,
-8334921, -12437152, -15735686, 22174380, -26884884, -21482890, -19307488, 5395016, 8135205, 10103911,
--17909476, 18447958, -5644661, 1414118, 28427852, -1913408, -4779762, 8381092, 22952306, -14803142,
-38034084, 1433982, -43725988, -5301601, -1635846, -14593225, -4168266, 15032, -4046933, -11915313,
--9993852, 21559126, 14482630, -5280663, 14016626, -25121800, 7108171, 11290932, 7064148, 835908,
-13503377, -2195265, -542240, 5057861, 13204340, -5424007, -5680094, -4463008, 662499, 4991826,
--2474438, -10349797, -11089606, 569620, -5172215, 3891777, -70867, 2753074, 5984500, -7232725,
--4727149, 12559558, -2826089, 2289755, -893353, 353798, -4204773, -4746476, -2336462, -1578401,
--6582575, 3244311, 6177237, 3434363, -30065, 589484, 2838974, -5094368, 1266479, 5856725,
--488553, 5027259, -2736431, -9073655, -12213276, 314069, 5277441, -9043591, -4212289, 41611792,
-24591908, -33838972, -27376658, 33463700, 31887448, 19898046, 22870164, -40256728, -8965744, -11210402,
-10414759, 3738232, -16353088, -29773788, -45028976, 12970264, 11674258, 3325915, 12173011, -6280853,
--2419677, -10799695, 8740258, 15377594, 13770202, 3491809, 18350248, 5790690, -2267743, -7699803,
--27441620, -1615445, -11645267, -9657771, 9313637, -29404956, 2448668, 1033477, -13825500, 11803107,
-10778220, 5268315, -19862614, -18459770, -48438104, -12428025, 165356, -15604690, 2546379, 10052908,
-9975062, 26846766, 13063143, -12064563, -8541616, -18073222, 22515830, -9681930, 39105140, 32694364,
-8913668, -21115670, 43190728, 19822884, -17762910, 2557653, 21604222, 50334868, -21047488, -38707856,
--20096688, 399432, -14108968, 5960878, 13721347, 11493869, -10324565, -15902116, -8919036, -13254806,
--14621679, 3880503, 15479062, 12407087, 6843494, 6123013, 2080375, 10420128, 1224603, 1578937,
-15122580, 11906186, -911070, -5147519, 3255048, -8097624, 8317204, -3150896, 8516920, -4580046,
-3280281, 2176475, 5554467, 7330436, 4162360, 3357054, -7454990, -14355391, 1471026, -7334731,
--3887482, 4205310, 1066763, -2201171, -2989834, 10210748, 3170223, 13849122, -4694936, 7373385,
--7218230, 7154342, -9867687, 9516037, 128849, -8303783, 16362215, 5645735, -6147172, -16498580,
-13246753, -27743878, -25694104, -9438728, 19360638, -11578695, -14742475, -435402, 22354232, 2105071,
-23110146, -8121783, 27962384, 2981244, 14840723, -10188199, -6930467, 8671002, -29458644, -8397735,
-10700911, -5457293, -4215511, -23720030, -22455162, 10046465, -13808320, -9949292, 17897666, 24694988,
--3946001, 16165720, -29767344, 1575179, -8281234, 38078644, -16065862, 12538620, 23205172, 22134114,
-6278169, -15787226, 9683541, 6937446, 6546604, 12179990, -37963216, 69450696, 22033182, -6286759,
-3446175, 7646653, 19123342, -5529234, 14675366, 40447856, -2518462, -50347756, 20783346, 17328582,
--18025440, 23449984, -5388574, -10650982, -27106076, 51892868, -26978838, 57794692, -38331508, 14203457,
--918586, 62804768, 27736362, -27005144, 25626996, 1016834, -16889422, 12538083, 1787780, 5586679,
-13909252, 5889474, -16340203, -4305168, 19026706, 5048734, 10699837, -8928700, 11844446, -20391968,
-7390028, -1234266, -6710350, 12539157, -7164006, -4035122, 8942122, -1632625, 1213328, -1685775,
-15137612, -10087804, 14770393, -8886287, 13655312, 19216220, 7034620, 5153961, 10537165, -2854543,
--7721278, -7463043, 9077950, 3118683, -1654636, -201863, -2523293, -13932874, -10774999, -2219961,
-319975, -3225521, -8215199, 47862580, 5806796, 26023206, 13331042, -26200912, 1743757, 15671799,
--4588099, -22813792, -4276714, -49846852, -13864691, -18528488, -10653666, 10961830, -1348083, 17928804,
--8643622, 1994476, 17521320, -15455977, 1795296, 9978283, -859530, -16969416, 91268, -11644193,
-34564288, -5993627, 20084340, 3276523, -213138, 35358856, 25565792, -15511274, -18130130, 8992051,
-16112570, 19419158, 23662048, -403190, 8429947, 22351010, -1086090, -8954470, 7117298, 804770,
--19656454, -430034, 13165149, -19449760, -26097832, -2465311, -1456531, -2797634, -8671002, -9461813,
--31117038, -4295, 30814242, 9463960, 17202418, 10098542, -3983582, -40372692, -29484414, 7975218,
-26275000, 8548596, 13348221, 53069688, 55234352, 46629924, -3563212, 23182622, -14635638, -39127152,
--65112240, 11361799, 8188355, -2894808, 9208410, -20623896, 4573067, -5012227, 24068460, -1781338,
-19358492, -23625542, 11797201, -29016800, -5476620, 12276627, 2238752, -14766098, 3625489, -12159589,
--13018583, -5604396, 3651796, 11110007, 14496588, 18853832, -4369056, -1004486, 5046050, -5151814,
-6238977, -19510426, -16470663, -11573326, -15395847, -15022722, -15720654, 10365367, 7740605, -2641405,
--10230612, -15908559, 9905268, 183610, 15527917, -3724811, 13798656, 10008348, 870268, 4323959,
-16514149, -19417548, -17979806, 11209328, -1350230, -3846680, -8477729, -15013595, -31344672, 8661338,
--18883898, 8934069, -8324184, -22174380, -7012071, -317291, 10695542, -9466645, 5345087, -32454920,
-30012158, -67833104, -6964827, -17070884, -14056891, 8912057, 38540352, 6072010, 13865765, -33478196,
-7285339, 12144020, 26436060, -13992467, -21729850, -15095736, -7489886, -1153199, -753230, 15968152,
-11543261, -9622874, -49052820, -23337778, -39921184, 4491999, 69927976, -49710488, -19812148, -7740068,
-40345848, -13660143, 16965120, -13057237, 19364396, -7837779, -11988327, -25268904, 12826920, -29266980,
-26834956, 48631376, 6113886, -9084393, -9259413, 40321688, 10579041, -459025, 21223044, 6919729,
-7582228, -7873212, 46588048, -73550776, 53046068, -44850732, 21104396, 52428664, -42284488, 85072024,
-57886496, -21922586, -7431904, 58480276, 21240224, -5647882, 38427608, 34481608, -45117020, 60339996,
--36705328, 10664941, 11431592, -16288127, 11508902, 19660212, -12360916, -22203370, 7031399, -12006581,
-4977330, 4984847, -6227703, -17426830, 6761353, 6104223, -7243999, 7202660, 5719823, -14043469,
-34078956, 3628711, 563178, 625992, -7082938, 5133560, 4463545, 1707250, -11301133, 5691369,
-1422708, -4985920, -9928354, 21020644, -8149164, 17073568, 19471234, -2110440, -7416872, 5057861,
-4677757, 7484518, 23499376, 20217484, -18413598, 8354249, -7568806, -1220308, 26863410, -5374078,
-7395934, 10456635, -1822140, 49576272, 47245712, -40379672, 39336532, 36202816, -34082712, -51423644,
--75990320, 17662516, 113978768, 46814068, 150324, 23501524, -109073376, -45059040, -3927748, 16583942,
-81948512, 80216032, 13782550, -30966714, -60473676, -35437776, 4018479, 25885232, 39133056, 63073744,
-38016368, -50876572, -120268744, -97982160, -9711458, 108990704, 118508888, 74907984, 22803592, -25206626,
--48505752, -73189464, -41815264, -44527000, 87150792, 72575280, 45768244, 40587976, -61814244, -86485072,
--100442104, -89874872, 34507916, 121685552, 149747792, 50645180, -45512696, -106705776, -128080216, -34835404,
-20484310, 13207561, 79959408, 31400506, -30369176, -17949742, -61758408, -13471165, -70592080, 30496416,
-83406120, 156241776, -9626095, -83560200, -181633088, -7111392, -61508228, -6534793, 86851752, 17223356,
--8134668, -38827580, -81912544, -53602804, 39107824, 63381368, 20696374, -11084774, -28018220, -33360084,
-32327146, 37343668, 22903450, 19995220, 8762270, 18644990, -1986959, 1766842, -18341658, -8407398,
-1874753, 47131896, 41020696, -2130841, -17879412, -4583267, -42286636, -28260348, -1284732, 16073378,
-43290048, 33538862, 23566486, 2179159, -58849104, -52795348, -35974648, 13852880, 56315076, 109620448,
-66880156, -50539416, -91258392, -80380848, -32638530, 2295660, 74815648, 94476936, 70224864, 12411382,
--56346748, -127380680, -80533856, 25942140, 78785272, 90319944, 26107496, -13225815, -35366908, -41518912,
--24072754, -7653632, 8575439, 19859928, 24829742, 19891604, 4555887, -1738388, -17478906, 871878,
--10297184, 51507932, 30177514, -4413616, 11043972, 5681705, -36484672, -3705483, -2859375, 4110821,
-1257889, 3047279, -13268765, -5235029, -4822175, -3251290, -5973226, 22024592, -7754027, 9530532,
--16372952, -1541356, 6923488, -660351, -4894115, 37953552, 5352603, -21298742, -24774446, 5354751,
-5348845, -14506789, 4174708, 19125490, 9986336, 18008798, -18191334, 5663988, -532039, 4420595,
--12771085, 2574833, 14413910, 20368882, 5240934, -5148592, 6051609, 2412161, -4600984, 13927505,
--20278688, 4728222, -33102924, -10278394, 13832479, -11151346, -13238700, 18183280, -11409581, -30884036,
--23891830, 21380884, -2544768, -4093104, 4993437, 10893111, 27042724, -17440788, -22771916, 1095217,
--3037079, 18361522, 237834, 10786810, 4982162, -1682017, 28082644, -36326832, -5242545, -5023501,
--21310554, 5607080, 12079059, 656056, -12657805, 5787469, -2785823, 3767760, -10934987, 8227010,
--484258, 1453310, -892279, -2564096, 14275398, -14126147, 1189169, -2296197, -5052492, -4417911,
-1733556, -6028524, 6583111, 8505109, -8617852, -2049773, -3256122, 7811472, 8545374, -4113505,
-10515691, 1190243, -1445257, -6877854, 7595113, 2778844, -2931852, -11474005, 5551245, -10389526,
-6856916, -5526013, -5083631, 9842454, 9669045, -12957379, 1610613, -2879239, -12864501, 4384088,
--7513509, 8663486, -7409893, -29948270, -33041184, -78792784, 22955526, 22704270, -1470489, -66405028,
--42877196, -6198712, -10778220, 44588740, 30128658, 14552423, -29318520, -12032888, -7669738, 27964532,
-3194382, -7810398, -17151416, 11538430, 5207111, 13970992, -622770, -5538361, -6939057, -15808701,
--7815767, -9521406, 26732950, 14331769, 3269007, 4101694, -17376364, -826244, 2266669, 24391656,
--1617055, 11426760, -8885750, -6180458, 5086315, -9901510, 6752226, 3010235, 7252589, 23788750,
--1933809, 20886962, -134755, 13448079, -10184978, 975494, -15042586, -19559818, -20539070, -17606144,
-5973763, 3163780, 1665911, -25976500, 13023951, -22599044, -2416993, 1269163, -14068165, -15307263,
--7983808, 365609, -26951456, -18251464, 16982838, -8100845, 15822123, 2571612, -4198868, -14575508,
--16769163, -1023813, 24155970, 29824252, -7262790, -2976412, -11040750, -14843407, -10144176, 9552007,
-5191542, 3714073, 9458592, -1778653, -6017249, 6508486, 3705483, 5424544, 8294656, -4510253,
-2896419, -850940, 339839, -6155225, 10910828, 3456375, 2605435, -3183645, 1709934, -188979,
-16924318, 2179159, 5182415, -9370545, 785979, -6056978, 11129334, 790274, 322659, -3835943,
-2703145, -1238024, 294742, 5276368, 654446, 6905234, -4527970, 2251100, 881005, -8817568,
--322659, 5054103, 2094870, -1815161, 3047816, 17723720, -38173668, -94637456, -90706488, -13784161,
-27418534, 91231544, 78849696, 74319040, 79846664, 44433048, 10749766, -40340480, -40510668, -84208736,
--65376380, -57342644, -36359044, -45762340, 62986232, 51788716, 68209448, 39307004, 55752432, -2051384,
-14689325, -8987219, -21741124, -12471511, -25994216, -30281666, -30121680, -29758218, -35175244, -25796110,
--20907900, -2409477, 5558762, 49413060, 41520524, 21835076, 23523536, 32582158, 30298310, 14542222,
-70420280, 9116605, 946503, 13167296, -26269094, -80809808, -23079006, -64787436, -69409352, -73409048,
--51866560, -46264312, 2342905, 38280508, 39135204, 47711180, 86914032, 62480500, 76279160, 74880608,
-47847008, 51355996, 17595408, -18140332, -58650464, -77061912, -87944824, -57293788, -78923248, -66415764,
--75776112, -44302052, -5233418, 20716238, 61411052, 58494772, 59500868, 98931888, 69027640, 81767584,
-51027968, 8414378, -9553081, -24856050, -40918152, -45957224, -48565344, -47449188, -54562728, -46885472,
--34193844, -21117280, -10838350, -8318278, 23771570, 22441740, 31803160, 51208360, 57856432, 36569500,
-44219908, 27145268, -1612223, -12094091, -26584236, -33415920, -28511066, -24772834, -29803852, -11020349,
--7330973, 563714, 8502425, 9269076, 2427194, 1168768, 8331163, -1321239, -7137699, 6499896,
-3978214, 4599910, 7376070, 2050847, 2012192, 4327717, 10233833, 8596377, 4054986, 726386,
--2181844, -8805220, -6536940, -8018704, -6817724, -2864206, -5253819, -4750234, -2521683, -2150168,
--2786360, -880468, 3349001, 3157338, 4093104, 6346888, 4387846, 3020436, 4216584, 1497870,
-1838783, 1742146, 1230508, 1025960, 469225, -1191317, -2535105, -4860293, -3694209, -3993783,
--3145527, -1690070, -645856, -1548336, -908922, -1285806, 239981, 1104344, 1921461, 3629784,
-3621194, 1396401, 1500017, 648003, -507343, 899259, 720481, 197032, 1230508, 347355,
--456340, -1083406, -893890, -1092532, -867583, -961536, -305480, -587337, -673773, -2194728,
--2478196, -2471217, -1744831, -421444, 755914, 2049236, 2652679, 2731062, 2934000, 2322504,
-2564096, 1744831, 843961, 139050, -344671, -1328756, -2025614, -2451353, -2190970, -2312303,
--1879585, -1832877, -1534377, -729071, 135291, 536334, 1236951, 1797981, 2083596, 2003065,
-1743757, 1179505, 708670, 124017, -86436, -444529, -532576, -588411, -524523, -495532,
--375810, -284542, -155693, -93952, -46171, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--4386236,
-7451232, 2618320, -1320703, 1911261, 2416456, 4479651, 7463580, -3540127, 2500745, -3012383,
--2331094, 1519345, 49929, 646393, -5214091, -2524367, 1883880, 3725884, -459562, 3142842,
--5591511, -4968204, 3177739, 2032593, 899796, 2309082, -1884954, 4053376, 4549444, 4401805,
-6320581, -3464428, -2841658, 244813, 836982, -6004901, -341450, -503585, 1694902, 611496,
--3728569, -910533, 5172751, -2724083, 1047972, -3127810, 1549946, 1601486, 1069984, -4668630,
-3825205, 360777, 897111, -630823, -1495186, -1928977, -3149822, 6810208, -1151588, -1240172,
--1476932, 3031173, 752156, -6415608, 1682017, -2924336, -4361003, 2614025, -2676838, -6948184,
-2827162, 1031329, 356482, -6402723, -7723425, -3167539, -3779034, 3613678, -991064, -2147,
--1703491, -2095944, -1693828, 59593, 3242164, 585189, -1363115, -110595, -1426466, -654983,
-1472637, 433792, -1284732, -1817308, -568546, -743566, 762894, -454193, 327491, 259309,
-827855, 200253, 1159641, -455803, 324807, -250182, 838592, -45097, 776315, 898185,
-4294431, 464930, 321586, 3815005, -5825050, 915365, -4869956, -6148246, 1705639, 5669357,
--3590056, 2665564, -2715493, -1335198, 1098975, 238371, -2885144, -8456791, -8404177, 102005,
--2168422, -123480, 4313221, 652835, 5293011, 7179038, -3863860, 6193880, 724239, 6287832,
-345208, 7470559, 901406, -4250944, -1212791, 378494, 3367254, -970663, -1186485, 702227,
-2541547, -3167539, -246961, -1007170, 2240899, 2757906, 96100, -2888366, -260382, -557272,
-1585380, 2900177, 5210332, -1879585, 3359738, -1581622, -4646081, -4133906, -2829310, 2555506,
-2754685, -1587527, 4497368, 112206, 1593970, 200253, 5480915, 3638911, 4022237, 1623498,
-2342905, 1449552, 2169495, 4494147, -1024350, -268435, 6334003, 1250372, 120796, 1297617,
--2443300, 323196, 1822677, -176094, -6044093, 1842541, 569620, -990527, -2141578, 1351304,
-341450, 3226057, -1269700, -622233, -1314797, -1042066, 754304, 207769, 1235877, 588947,
-231391, -1204202, -1004486, -577136, -650688, 486405, -1626719, 1343788, -631897, 379568,
--450972, -579284, -938450, 504122, -772020, -548145, -1768990, 6516003, -6558952, -4404489,
--3609920, -5301064, 1738925, 2354716, -4255776, 1046898, 8883066, -6387690, 4526896, 7670275,
-7581691, -4598300, -1226750, 3785477, 762357, 1209570, -3336653, 1907502, -11421392, 9057012,
-14154602, 2551211, 4799089, -2239289, -144418, 7546795, -3890704, -8994198, -1457605, 191126,
-21475, -7254200, 590558, 1876364, -8640400, -4024921, 4081293, 1427003, -3041911, -745177,
-3060701, -4177393, 9046812, 2868501, 466004, -5713380, -520228, 3166465, -1910724, 254477,
--2012192, -52613, -810138, -4562866, 339302, -4409858, 6802692, -6458020, -4292283, -1395864,
--7762080, 5303211, -4153234, -10806675, -1949915, -4621922, 1377611, 5068062, -5032091, 701690,
--3401614, 3620658, 539018, -3521336, 3130494, -3820910, -5100274, 5806796, -3656628, 1711545,
-185757, 597000, 2049236, -1054951, -1705102, -1877438, -3090229, 1130113, -4386236, 332860,
--853088, 1474248, -1274532, -26844, 49392, 202400, -2309619, 2191507, 143881, 482647,
--1225676, -804233, -909459, -135291, 1372242, -5099737, 3213709, -175557, -1017370, 3814468,
--3660923, -12812424, -2517925, -816581, 5566278, 7881265, 6990596, 3339874, -2770254, -894427,
--7900056, -6715718, 2291365, 8956081, -2588792, 9175124, 5844914, -5718212, 3041911, -910533,
-3182571, -6388764, -4296041, 1009854, 4577362, -619012, 2725694, 3782256, -7190312, -1481227,
--3321084, -9820980, 6075768, 928250, 2203318, 4198331, 7751879, 2662880, 361314, 6041945,
--1423782, -3155190, 6256157, -3338800, 10574746, 4829691, 4206384, 176631, -3039763, -3744138,
-5187247, 6999723, -5231807, 1227824, 6731825, -1240709, 2193118, 14814953, -4487704, -1837172,
-2896419, -7497939, -292595, 1285269, -3312494, 3570729, -2395518, 2182380, 7388955, 208306,
--1685775, -5073430, -398895, -6289443, 2653753, -2367601, -3049427, -1331977, 1202591, -1848983,
--1779190, -1567663, 359704, 2241973, 1722819, 411243, -508417, -753767, -504122, -404264,
--1009317, -1896228, -328565, -629750, 999654, -56371, 518617, -1919850, 819265, 917512,
--661425, -1691680, -569620, -1771674, -864899, -826244, 1299765, 70867, -229244, -197569,
-338229, 135291, 707596, -2681133, -639950, 787590, -3327526, -18369576, -1552631, -454193,
--3729642, -5743982, -1927367, 9753871, -7029251, -10482405, 3843996, -4298189, 1422171, 1786706,
-6522982, -4564477, -1423245, 1228898, 6060199, -2935610, -4090420, -1272921, -3528316, 4447976,
-8205535, 4095251, 7516, -751619, -4806606, -351650, 12947179, 2223183, -1683627, 14971182,
--966905, 11117523, -3446175, 23085, 7523709, 2238215, 1821066, 2643016, 1264868, 4110284,
-2365990, -7207492, 13211319, 8004209, 10836739, 7246147, 4747550, -7331509, 3147137, 3635690,
-493921, -4519916, 12261058, 7398618, 11070815, 1920387, -2285460, -2807298, 8135742, -4060355,
--8532489, 9899900, 3052648, -5533529, -3237869, 434329, -2624762, 915365, -1223529, 1347546,
--3521873, -1005559, -8078834, 3018825, -1052267, -264677, 2880849, -1042066, -1564979, 4658966,
--376883, 3608310, 4842576, 3969624, 2527052, 2524367, 971200, 1454383, -40802, -1069447,
--1000191, 2102387, -670015, -1368484, -1438814, 974958, -1614908, -449361, -371515, 2636573,
-1055488, 1877438, -1865090, 526134, -1508607, -550293, 1789928, -292058, -818191, -635655,
--551366, -1103807, -783832, 744640, -111132, -507880, -4725538, -749472, -12080132, -4822175,
--13499082, -9278740, 909459, -8800388, -6934762, 725850, -1605781, 8899172, -6052146, 9870909,
-12145094, 1169842, -10455561, -7382512, 10903848, -5657546, -3073586, 6069863, -8106751, -14358613,
-5651103, 12227772, -6403260, 3057480, -295279, 5281736, -14951318, 2877628, -6044093, 3506304,
-238908, -6337761, 10320270, 4651450, 4325569, 13728326, 6386617, 2761127, 7777112, 1472100,
-2482491, 3848291, 1265942, 530428, 2087354, 1786706, 15693274, 8749385, -84289, 13102871,
-8226473, 9643275, 15199352, -7902203, -6553583, 13242995, -4699768, -627065, -7973607, -3471407,
-4707821, 6968585, -6083285, -830539, 1972464, -1830193, 3639985, -6518687, -1240172, -7522635,
-14339822, -4773320, 7814156, -2360085, -3878356, 10443750, 1817308, -3228205, 3402688, -1440425,
-266288, -3126199, 3965866, -889058, 1407139, 4145717, 2424509, 1141388, 2383170, 47782,
--414464, 1576790, 407485, -3072512, 602906, -758599, -1395328, 2507187, -28454, 1149441,
-1061394, -745714, 482647, -1870995, 335007, -1723893, 111132, -796180, 1898376, 355945,
-1629403, 287763, 1977296, 382789, 897111, 1034550, 181462, 4510253, -4903242, 1527398,
-659278, 1515050, -7026567, 9043591, 5226975, 12301860, 2345052, -1703491, -13968844, -7474317,
--5265093, 3525631, -7279970, -12083890, -3405372, 3063386, 1293859, -13487808, 10878615, 817654,
--868120, -11489574, -6647536, 2684892, 1362578, -12759811, -4014184, 4639639, 463320, 1270237,
-6477348, 7616051, 4403415, -1984275, 3791383, 1179505, -4626217, -9438728, 16192564, -4086125,
--7970386, 149787, 3973919, 5247913, 12090870, 1995549, -279173, -4566624, -195421, 6738804,
--911607, 8421357, 16072304, 1360431, -3559991, 495532, 13827110, 17380122, -8720931, 2434710,
-2361695, 9404368, 4899484, 1670205, 2823404, -6900939, 4243965, 4497368, 4406100, -2969970,
-187368, 3432753, 5104032, -705985, 1706713, 1221381, -5946919, 2862059, 205622, -5268315,
--3923990, 5651103, -2597382, 3921842, -5713380, -4270808, -1999307, 1318555, -164819, 5111011,
-2237678, 951872, 169114, 2580739, 2259690, 783832, -4362076, 237297, -1881196, 738198,
--1438277, -988916, -137976, -373125, -695785, -1397475, -4283156, -1103270, 367220, -2762201,
--1891933, -1723893, -16106, -1723356, -3051038, -617938, 1308354, 2359548, -879395, 736587,
--1214939, 877784, -4599910, 6318434, -5774047, -10417980, 7093139, -915365, -2588255, 2649458,
-6029597, -17430052, 1000191, 13227962, -1611150, 23856932, 11372537, -7383586, -5428839, -2319282,
--6977175, -3147137, 10621991, -4187593, -3566434, 10631118, 8630200, 2792803, 4923107, 9931038,
-6563247, 7412040, -5548561, -3831111, 9443022, -1944547, 8543227, -22012, -10332081, -6682432,
-2723009, 8042327, -11231339, 620086, -6023155, 3051574, -6874632, 9418326, 9414568, -9323837,
--1039382, 2623688, -354335, -12581033, -5659693, 2066953, 8237748, 13565654, 4585952, -10185515,
--2282238, -2537252, -1237488, 8503498, 1313186, 6798397, -10388452, 4563403, 656056, -8275865,
-9659918, 4047470, -1359894, -2254858, 1628866, -444529, -8409546, 6220187, -1982127, 3676492,
--6544994, -11571179, -6418292, 2638184, 5082020, 42950, 2786897, 10234907, 61740, -2718714,
-6442988, -2090039, 6062883, 278636, 1940252, -5322538, 493921, 56371, 2760053, 2998424,
-4286914, 2667712, -1105417, -1349157, -2052458, 5048734, -2441152, 2589865, 521839, 1529008,
-2068027, 2790118, 1231045, -1069447, 2553358, 933082, 833224, -1079647, 3449396, 1562831,
-698469, -3545496, 1228361, -1448478, -66035, 2283312, 667331, 10992432, -13732621, -2251100,
--4443681, 13919452, -6337761, 11456288, -3682935, 10691247, 14513231, -6546604, 4519380, -3787624,
-8229694, -3233037, 6837051, 5677410, 5329518, -1310502, 5609228, -2944200, -7332046, -3546569,
-7996692, -9527848, 1405528, -98247, 7111929, 14523969, -13441637, 408022, 12979928, -380105,
-11857868, 1573032, 5156645, -1707786, -1110786, 3169149, -18537078, 1760400, -541166, -7391102,
-4779225, 2965675, 13281649, 6605660, -1431298, 25362318, 6229850, -13446469, 3439195, 1233729,
-8770860, -5823439, 1597728, 7448010, 483721, 4517232, -1444183, -14679124, -15093589, -20401,
--5177046, 11988327, -20475720, 26131118, -268972, 14526653, 16556025, 3959960, -4534412, -3379603,
--7950522, -10424422, -1008780, 3297998, -2753611, 5192616, -3626563, -8402030, -5401995, -4270808,
-1377611, -1354525, 792958, 5557688, 2689723, 2610266, 1923609, -2389613, -3011846, 117575,
--744103, 1558536, 248034, 600759, 1629940, 3206730, 1803349, -6534256, 1044751, -1272384,
-4581657, 4715874, 2613488, -484794, -1525250, 1824287, 1343788, -2337536, -2565169, -641561,
--1801739, 414464, -1916092, -3180960, 1102196, 5209259, -1504312, 2079301, -4176856, 488016,
-2164664, 2376191, -274341, 1516660, 3224984, -2515240, 1094143, -24186572, -1684701, 8273718,
-1385127, -9063992, -22463752, 22549, 2593087, -3911105, -918586, -6588480, 3506841, -5478231,
-11602854, 4124242, -6884833, -8593156, -14767171, 11108396, -4700842, 797790, 14424111, 19859928,
-12094628, -1796370, 1049583, -13544179, -5800354, -5417565, 3660923, -19232326, 5048734, 5319317,
-1112933, -9860171, 9527311, 14860587, -2378875, -201863, 1733556, -8533026, -9077950, 5288716,
-3584150, 11260867, -12307766, 13426068, -7034083, 7430831, -11396159, -8930848, -4506495, -223875,
--1349694, 4947803, -2458869, -19857782, -14947560, -4133906, 528281, -19908248, 275415, 9959492,
--5293011, -2232309, 3023657, 8483097, -17588428, 9064528, -3099893, -2564096, -94489, 7265474,
-8964134, -10479720, -5402532, -7018514, -3460670, -2481417, 5204964, 1816771, -6387153, -2774549,
--4902705, 3477313, 11670500, 7789460, -80531, -250719, -6546067, 336081, -4008815, 5590437,
--1022739, 9685688, 3179350, 3439195, -3471944, 293132, 85362, -7582765, 8164196, 706522,
--1478006, 4366371, -1547262, -1202054, -425202, 725850, -6694244, 3024731, 4014721, 4395899,
--736050, -1474784, 1414118, 2530273, -2430415, -1312649, 2310156, -4962298, 505196, -22549,
-4698694, -260919, 21725018, 508417, -4434554, 16894790, -3718368, -6895570, -1843078, -1570884,
-20951924, 23975044, -3147137, 5092221, 6089190, -3073586, -11415486, 5599564, 22279606, 17006460,
-14522358, -5287105, 6279242, 11973832, -15572478, -11580842, 13552769, -6930467, -7634841, -522375,
-16949552, -2553895, 15600395, 1030792, 13996225, -8390219, 19241454, 5869610, -6004365, -9820980,
-3491809, -13895830, 1643899, -16489453, -5655398, -5905043, 9421011, -9432285, 15538655, -19036368,
--32992866, 20620138, 9193914, -4029216, 147640, 22746146, 10644003, 1830730, -5989869, 4936528,
--2671470, 302258, -14791867, -14948634, 8791261, -4995584, 4846334, 28246926, -7406134, 6106370,
--18443664, 21838834, -7321309, -9695352, -4690105, -3002719, 9079024, -18428630, 15423764, -18059800,
-13035763, -9272298, -12650289, 12654047, -568546, 4184909, -5141613, 7511361, -4111894, -5638219,
--2570538, -8575439, 5928666, -216896, -5646809, -2323041, 2079838, 9285719, 1725503, 1388348,
-2440078, -156229, -1591822, 4756677, -2650532, 2195802, 1934346, -2310156, -694174, -448824,
-6600828, 5873368, -2144263, -3109556, -6935836, -35433, -1427003, -897648, -1141388, 306553,
-6331856, 2010045, -775242, 8113730, 3900367, -24705726, -18361522, -17799956, 24890410, 853625,
-10689637, 6382859, -21904334, -19138912, 12891881, -34163244, 9996536, 10177462, -2191507, -13577465,
--12506945, 21325050, -11452530, -1477469, -3582003, -11011222, 16197395, 5188321, 14652818, 8554501,
-10106058, -3174518, 16448651, -1482301, -10772315, -12640089, -2929168, 7176354, -9621264, 12814572,
-8188892, -9596568, -34629248, -2869575, -2864206, -818191, 25126096, 609885, -19724638, -11647414,
--12073690, 10369125, -7623030, -16362215, -18341120, -11346767, -8937290, -40766756, 941135, 5136244,
-13368086, -21272436, 6937446, -17568026, -14456323, -4886599, 17013976, 4412005, 15785615, 29953638,
-8946417, 6912213, 19447612, -15154792, -1999844, -7171522, -8403640, 15676631, 14386530, 23005992,
-11214160, -20968568, -14072997, 16559783, -24905978, -27302570, -8679055, 19983946, 3079492, -4821101,
-13507135, 11143830, -205085, 3217468, 11432129, -7489886, 6720550, -5506148, -1165010, -5739687,
--1184337, 1572495, 7961796, -5071820, -6599754, 37581, 4434017, 1511292, 4015258, -592169,
--6613713, -1497333, -4432406, 390842, -3732327, -651761, -659278, -7239168, 5756330, 957778,
-5855114, 7621420, 10287520, -3873524, -5746130, -389768, 821949, 601832, 11457362, -11159936,
--23000624, 5937256, -629213, -739271, 529892, 2863670, 4508105, 9655086, 2925947, 8078834,
-4301410, 9628243, 25414932, 544387, -33864208, -12600897, 8166881, 13422, -7312182, -21874806,
--14539538, 4217658, 17129404, 6451041, -17056926, 8617315, 6734509, -19216758, -3929358, -23688892,
-17974976, -10063108, -12560095, 16608102, -16784732, 4252018, 34917012, -4476967, 5357972, 10083509,
--458488, 4803921, -21091510, 4693863, 3248606, 3008088, 45970644, 31060666, -3877819, -16523813,
--11128260, 14229764, 16485695, -18936510, -10791642, -25295746, 39153996, 10562935, 4144644, -6730751,
--4763119, -9185861, -5340255, 28113782, -8074539, 7341710, 27977416, 4412542, -8489003, -21479668,
-74625, 8069707, -42915852, 8851928, 4162897, 28635620, 19339700, 15081241, 25419764, 14254460,
--5625871, 2155537, 8538932, -3335042, 765578, -2246805, 3610994, 1869921, 23698018, -1122060,
-9430674, -4694400, 9088151, -1240172, 12300786, 2279017, 3052648, 11229192, -1476395, 4393215,
-7338489, -249645, 5827734, 8520678, 3418257, 6695854, 9914395, 5541045, -4452271, -1231582,
-1755568, 2089502, -464393, -4675609, 1519882, 2254858, 672162, 5072893, -1351841, 8231842,
-4155918, -4068408, 8487392, -1738388, 725850, -5950677, -27174258, -3922379, 18653042, 10456098,
--30447024, -40096740, 4557497, 27181238, 10944114, 16608639, -9509058, 12829067, 2088965, 337692,
--14612552, -5203353, -22721988, 33647312, 11200201, -27302034, -18818400, 12243341, 1216550, 6760816,
--8260833, 16807818, 9714679, 11583527, 21929030, 19542638, 3925063, 19112604, -10135586, 10994579,
--153008, 13358959, 6011344, -3141769, -8127152, 9245454, -12020540, 31448824, -8541616, -5866926,
-6325950, 15587510, 15228880, -10315438, 26920318, 26872000, 15465640, 6566468, 2130304, -8531416,
--20479478, -34745748, -5779952, 12483322, -871342, 15259482, 16403554, 17816598, 6048388, 9975598,
-57727580, -28337658, -12548821, 5840082, 11053098, -1354525, -45290968, 10709501, -7149510, 6883222,
-7883413, 20130512, 3889093, 456877, -18283676, 18955838, -6868727, 2838974, 16377247, 7618735,
--17727478, -3681861, -10014790, -3249143, -7716983, 1366873, 576599, 7225209, -1816234, 8788577,
-8378945, 11363410, -228170, 37581, -6937983, -2933463, -9248675, -6025839, -2838437, 12084964,
-3708704, -1742683, 693637, -4541391, 1612223, 10627897, 11652246, -2199560, -10978473, -52613,
-550293, 5235029, -3113315, 3670050, -5272073, 8125542, -15315853, 1701344, -4776541, -5206574,
--110059, 3181497, -9907416, 4902705, -1969243, 4859756, -5122286, -8972187, 3365644, 15103789,
-14874009, -8262444, -11212549, 3281355, -10773925, -34467648, 35560720, -10430328, 9980967, 3251290,
-29826938, 23751706, 14938433, -14283987, -2370822, 20367808, 10818486, 23980414, 64035280, -4016331,
--25259240, -6633040, 19137300, -2912525, -29829084, 45507864, 23601920, -16121160, -24972550, -3136400,
-5593121, -7993471, 18093624, 15316927, 17755394, 33952252, 5695127, 9545565, 6081674, -13241384,
--31660352, 18548354, -21541408, -16254304, 24998320, 13029857, 14105209, 7326141, 5158793, -1505386,
--31253940, -27829778, 531502, 16524350, -20654498, 19502910, -9152038, -23263154, 7331509, 20262582,
--3738769, 3834332, 20226612, 19827180, 20695836, 1438814, -12588549, 11696270, 49145164, 5835250,
-20004884, 27969364, 1404454, -8987756, -24648818, -10074920, -38863548, -13435195, -9698036, -4896800,
-8883066, 1412507, -1725503, -11282342, -7321846, -6597607, 9656697, -10109816, -1950989, -8934069,
-2925947, -5716065, -9532143, 268435, -13740674, -4978404, 292058, -12577812, -2298881, -10976326,
--6210523, 1076426, -19859928, -2055142, 996969, -352724, 9475772, -12813498, -4112431, 13459354,
-330712, -5497022, -523449, -4720706, 2684892, -5990943, -4351876, 6615324, -400506, 302258,
--10672457, 17734456, 14541686, 98247, -12157442, -17811766, -31265214, 5257577, 18748606, 25761750,
--22424024, -23875186, 28662464, 12732431, -1429687, -3205656, -12303471, 5245229, -5894843, -12805982,
-12977244, 15916612, 10899016, 807991, -2662880, -9324911, 1639067, 6530498, 3805341, -10498511,
--36461052, 7796977, -8536784, -11117523, 1691680, -4943508, 2710124, -36293012, 16472810, 12901008,
--26263726, 17886928, 23779086, 19906100, -5741298, 3117610, -3555696, 12889734, -3306051, -337155,
-64063732, -19600620, 5019743, -17526688, -10359461, 36106716, 12967580, 12160663, 22924388, -29873108,
--24858734, 36309116, -23491860, 18406620, 22742388, 1951526, 5813238, 8530342, 41132900, -14354854,
--16194174, -38325068, -8508330, -16651051, 12540768, -24079198, 39960376, 21684754, 24269250, 11874511,
-21165598, 11033771, 38124276, 9217000, 18156438, 13880261, -19276886, -9312563, -7679402, 3106872,
-1828046, 18596134, 7856569, -272194, -1251446, 4044786, 1387811, -7589744, -14785962, -7953206,
--11195906, 13355738, -5166846, -8021389, 4018479, -3267933, 16427176, 7505456, -3369939, 9171366,
--11196980, 4930623, 8076149, -3321084, 15887621, 16358457, 10719701, -8060580, 13349832, 7641284,
--13948980, -2873870, 1009854, -8463233, 519691, 11605539, -14044006, -16027207, 6539625, 2858301,
--1929514, 14907295, -10647224, 26356604, -15699716, 13799730, 45004816, 22192632, 16873316, -25592100,
-6884296, 24917790, -21778706, 35394824, 12563316, 18794776, 16869020, -11283953, 17489644, 14942191,
-6211597, 35070556, 26617522, -2352568, -60740500, -7421167, 27943058, 26814018, 27715424, 6358162,
-15400142, 1045825, 7677791, -2340757, -18903224, 38436736, -1155346, 36603860, 16505559, 26318486,
--37420440, 24959666, 12491912, 11042898, -9885941, 8445516, -7049652, 8043400, 37034968, 14457934,
-48359720, 2050847, 10638097, 27965606, -5784247, 44152800, 21872658, 3558381, -29518236, -18764176,
-16184511, 1527398, -4947803, 638340, -5055714, 3158949, -21490942, 14020384, -22874996, -34382824,
--12749074, -2238752, -11372537, -9109089, 28860570, -3779034, 26294326, -25354266, 28900298, 3540664,
--31923418, 31303332, 26467736, -10238665, -4409858, 7214472, 13940390, 8571144, -1264868, -14853071,
-9230422, -6609418, -834834, 17907330, -3629247, -3343632, -14650133, -4294431, 4212289, 2506114,
--849330, 13373991, 12314208, -9947144, 3461744, -580357, 698469, 12270185, 4066797, -14114336,
-9489730, -12125766, 6212670, -9877888, -3557844, -3377992, -1877438, 1253594, 2942590, 1317481,
-1040993, -3093450, 2648384, -6979322, 4932233, 4884989, -748935, -5791227, 4428648, -1598265,
-7259032, -4215511, -2838974, -9907416, 49392, -9802189, 2735894, -8174934, -26835492, -25633976,
--10226317, -10992432, 21060372, -33607584, -41972568, -45594836, -55173148, 24924768, 27270894, -1363115,
--4332012, 51540, -13046500, 3435437, 6977175, -11425687, 37751152, 35714264, 23265300, 25624312,
--23286776, 15784542, 1351304, 18755048, -7226283, -9255655, -34489660, 31182536, -31168578, -37525668,
--9898289, -7650948, 40605696, -21998286, 5475547, -20741470, -5873368, 39434780, 7262253, 12697534,
-19368692, 36256504, 2202245, -3689377, -43910672, -7759932, -3542811, -898722, 24019068, 13285408,
-81702088, 4457103, -2572149, -26740466, -2232309, 32873142, 29746944, -2299418, -14433774, -39992052,
-10016937, 25968446, -13176423, -29043642, -12564927, 25614648, -7786776, 18920942, -58613956, -32313724,
--46881180, -12221329, 18682034, 10422275, -20490752, -19002010, -23019414, 9652402, 48085916, 15061377,
--339302, -16627429, -1524713, -12839268, -3788161, 6194954, 5543729, -14840723, -7096897, -864899,
-10288594, -25558814, -17921288, -5567888, 12630962, -1253594, 16669305, 5935645, 1788317, -5345087,
--3121368, -11183021, -2705830, -17124572, -4163971, 20001126, 6745783, 9426916, -13807783, -23871428,
-11860552, 12084964, -7348152, 594853, -10361072, -1270237, 2780455, -703838, 8869644, 6316823,
-5692979, 12275017, 6149857, 9838159, 9606231, -1319092, 7639673, 4940823, 7391102, 1028108,
-974958, -7493108, -17147656, -9284109, 38961260, 502511, -564251, 69577936, 6173479, -52925272,
--40817760, 48548164, 43017856, 1982127, -35507568, -43927852, -25520696, 7810398, 41829760, 37194952,
-24671366, -16269336, 4257923, -16338592, 13166222, 31553514, 49100604, 53692460, -7544110, -29788282,
--46672872, -69393784, -1434519, 35943508, 148089936, -20109036, -8658117, -72577432, -30464740, 5410048,
-16464757, 87914224, 63194000, 38834556, -45712948, -26132192, -44678936, -3295314, 73482592, 67915784,
-82915952, -23762980, -83034600, -60622388, -83832392, 20118164, 75577464, 66357244, 122959008, -59761248,
--72546296, -63690608, -11209328, 53978612, 72197328, 101204464, 45437532, -22145388, -40375912, 8663486,
--3747359, 28272696, 80843632, -18671834, 49967112, -18829136, -47652664, -50466, 6602976, 43435004,
-1371705, -4844186, 3477850, -12302397, -41315436, 16198469, -6327024, 13099650, -12213813, -34143916,
--8835285, -8619462, 3029026, 21449604, 2355790, -7152195, 7786776, -8850317, -11152419, -2697240,
-31594316, 7471096, 28950228, -2911451, 2639258, -9236864, 3115462, 2676302, 5245229, 22195854,
-38927436, -1913945, -11475079, -37085968, -48740364, 1157494, 2135673, 57339960, 36692980, 5558225,
--20871394, -82568064, -46816756, -7783018, 36295696, 71694816, 36848136, -22648974, -27771258, -85564336,
--32265404, 39723616, 73784320, 59448788, 3158949, -39122320, -44204876, -5039071, -2310156, 34473556,
-20503100, 18569828, 464393, -18114562, -10634876, -867583, -8346732, 10545218, 11232950, -6197101,
--36202816, 47808892, -10914586, 56429428, -51686172, 770947, -22523346, -53636088, 39473972, -28079422,
-36541580, -28712394, -11057393, -2415919, 18844706, 4367982, -20554102, -10821707, -829466, 29341070,
--27041650, 33636036, 24040542, -18030810, 4228396, -22683870, -22994182, 39157216, -38394324, -19151260,
-25879862, 59716152, -415538, 8278550, -5453535, -25819732, -7289633, 24519432, -8428336, -39065412,
-5542656, -8351027, -6679748, 12105902, -35869420, 18307298, -148713, 12628278, 27576912, -62209380,
--46295988, -15062450, -1462973, 64590940, -34189012, 23587424, 50485192, -27471148, -16501801, -1458141,
-27329950, 40269076, -21956410, 11866995, -8160438, 16146930, 62124016, -22781580, -70293584, 15269146,
-31993212, 8708583, -37646464, 23756538, 9662066, 23857470, -7510824, -676457, -26368952, -20416128,
-15237470, 4319664, -28111634, 8611409, 19088446, -8935679, -352187, -30540976, 4321274, -7259569,
--34280820, -725313, 14994805, 13683229, 5245766, -438087, 8179765, -22784264, -6015639, 8736500,
--11561515, 18376554, -11173894, -4041027, -10591926, 547608, -11275900, 17633526, 2800856, -12986907,
--11915313, -6979, -821949, 28776818, -10196252, 10567230, -5473936, 29528, 5796059, -11615739,
--11166915, 2447058, -24264418, -6029597, 6606734, -19722490, 555661, -3163780, -7449621, 4993973,
-12863964, 621697, 1518271, -7373385, -4748087, -72331008, -22880902, 31184684, 42675868, 35436164,
--36015448, 11604465, -100738456, -65499324, -55613920, -8797704, 47310676, 30447560, -2026688, -22102976,
--27278948, 13429289, -16653199, -1650341, 36195836, 9893457, 1788317, -35692252, -17112224, -3587372,
--16822314, 10974178, -2883534, 19428822, -4977867, -150324, -6244346, -1110249, -4509716, -20368882,
--15338939, -34217468, -24073828, 17532056, 33645164, 36564668, 20448340, 31868658, -4714801, 27120570,
--6193880, -12361990, -42633456, -1606855, -23483808, 18353468, 7155953, 54140748, -43528956, 15556372,
-30484604, -16671989, -23054848, -13419088, -10661183, -11057930, 4088809, 38460896, 24863028, -10206453,
--1266479, 27614492, -31745714, -35240744, 14747844, -40910636, -31341450, -27452894, 3615826, 13326747,
-16086800, 47546360, 32479616, -5116380, 24230594, -13798119, 1169842, 5971615, 18016314, 28865402,
-31363462, 21961778, 18408230, 14666240, 1474784, -39897024, -11070278, -20594368, -4927938, 23329188,
--769336, 3548717, -8450348, -17762910, 2230162, -8774618, -7001334, -19353122, 8807904, 14532022,
--6194417, 5601711, 13143674, 7081328, 8673150, 1464047, 8549132, -5731097, 5976984, -2715493,
--9874130, 7745437, 10056666, -8037495, -11391327, 989453, -7586523, -13699872, 10872710, 11288248,
-4770635, 14552423, -966368, -13556527, -16328392, 23159000, -9245454, -86307368, -127586832, -156639072,
--123756264, -184650304, -32617056, -67411656, 20483772, 38822208, 133734544, 78127064, 138536320, 140867952,
-192839200, 140769696, 143104016, 105419976, 4572530, -30490510, -55767464, -34280280, -115110496, -78654808,
--62636192, -64014340, -63341104, -63219236, -61358976, -66215512, -72668696, -54158464, -84501872, -69092064,
--60207388, -27007828, -70999032, -21901112, 26184804, -52735220, -25451976, 14255533, 11640972, -44635984,
-37302864, 47924856, 60673392, 82284056, 83635896, -6500433, 49751828, 80886048, 114770656, 90471336,
-180754240, 169766640, 149949664, 121518584, 153840896, 76409616, 122494080, 149097104, 114839376, 73462728,
-124544928, 40452148, 41875396, 76536856, 76781128, 54542328, 15852187, 44595720, -14775224, 2711735,
-39039104, -44336948, -111518824, -166684464, -65842384, -228228656, -199635984, -175569136, -203042976, -225897568,
--189345776, -163884144, -158103120, -108952584, -143297824, -73540040, -90969016, -96690992, -146673136, -118504592,
--85458040, -69969312, -59240484, -55510840, -34786012, 13907104, -102542, -3287798, 41375032, 86380920,
-72036800, 72976328, 116295904, 99461776, 103333688, 131209640, 123719216, 105299176, 100138240, 120137216,
-102278200, 99191192, 105231528, 109214040, 92870080, 81237696, 74721696, 69875360, 91282552, 71633616,
-53712860, 56191056, 41994580, 24545202, -14550812, -30216168, -39633960, -70972184, -60789356, -62906240,
--74956840, -79199736, -72963976, -47556024, -53443352, -48326972, -49255220, -25448754, -28331752, -33957624,
--23489176, -7790534, -8927626, -16285979, -10781442, 183610, -6806450, -9193377, -8538932, -3248606,
--5095979, -7385733, -5835250, 3609383, 5513128, 1544578, -3471944, 149250, 4469987, 1070521,
--3996467, -734439, 1762010, 949188, -1082332, 1695438, 1512365, 2489471, 2152852, 118112,
-74088, 2058363, 2199560, 4771172, 2962454, -974958, -3105798, 1211181, 2410551, -1263794,
--2437931, -1414118, -3338800, -2516851, -2779918, -4188130, -3579855, -3551938, -4393752, -2779918,
-184147, 2433099, 1624035, 3780645, 5678484, 5562520, 4446365, 6312528, 8870181, 8296803,
-7861938, 9255655, 9115531, 10865730, 9685688, 8902930, 10469520, 10480257, 7837779, 4392141,
-4481799, 3311420, 125091, -1080184, -2151779, -3193845, -4639102, -5245229, -5329518, -5064840,
--5197984, -4807142, -4381941, -4062502, -3435974, -3059091, -2345052, -1722819, -1393717, -1169842,
--885837, -612570, -547071, -446140, -383863, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-};
-const Word32 CRendBin_Combined_BRIR_coeff_im_48kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][2955] ={
-{
-{
-5294084,
-2538326, -3474629, 5252208, -3056406, -1127966, 133681, -1877975, -1990717, -4176856, 1038845,
-6187438, 693100, 1060320, 2706903, 584116, -2163590, -748935, -1264868, -1388885, 3839701,
-979253, 550293, -1351304, 752156, -217433, -1385664, -2418067, 3723200, 2762738, 577136,
--842350, 4309463, -5984500, -2153926, 2461553, -2401424, 5037997, 574452, 3537979, 515933,
-354872, 2382633, -2103460, -798327, -131533, -4832, -1655710, -1222455, 2188286, -60130,
--5524939, 5177583, -782221, 924492, -4676683, 2245194, -2105071, 1868848, 77309, -106837,
--1795833, -126165, -2731062, 2806761, -5251135, -534723, 3732864, -2956011, 1352915, 5713380,
-1661616, 619549, -2879776, 350040, 1449015, -1017370, 1831267, -1140314, -881542, -1546725,
-1650878, -1812476, -3036005, 995359, 437550, -697395, 3586298, -876710, -848256, -841814,
-1151588, 1376000, -154082, 193810, 600222, -682363, 593779, -1360431, -639950, -185757,
--353798, -713501, -85899, 1074, -216359, -401579, -93952, -716723, 343061, -339839,
-817654, -532039, 593242, 935229, 555661, 10934450, 2017561, -1526861, 3339874, -1648194,
--1367947, -1745904, -711891, -4099546, 5811091, 3362423, 2509335, 2706903, 2570538, -2687039,
--3627100, 4898410, -1048509, -3787624, -7222525, 1190780, -2135673, 2276333, 49392, -604517,
--1612760, 2283312, -2672007, -1342714, 3576634, 6794639, 1773285, 3097745, 594853, 3423089,
--700080, 3642132, 2297808, 422517, 2038499, 193274, 605054, 200790, 4967667, 1064615,
-1314260, -1105417, 744640, -336081, -682900, 4039417, 4617090, -1639604, -1683627, 945430,
-4250944, -6881612, -348966, -1855963, -5093295, -2059437, 724239, -2158221, 2284386, 1859184,
-166967, -3093450, 1464584, -642635, -2962454, 3842385, -5257040, -2471217, -5607617, -2761664,
--781147, 860067, 5692443, -2429341, -1460289, 1778653, -876710, -1324997, 2706903, -419833,
--91268, -1201517, -1882269, -2333241, -608812, 2032056, 819802, 1002338, 951872, 739808,
-93952, -306553, -122943, 190052, 1438814, 719407, 769336, -453656, 141197, 518080,
-426812, 32749, 117038, 37581, -81604, -161061, -962610, -725850, -486405, 582505,
-486942, -185757, 922881, 3372623, 1386738, -6590091, -694174, 1054415, 4669167, -1360431,
--8325257, 6721087, -7870528, 480499, -3472481, -2638721, -8342437, -5436892, -3291556, -2022930,
-3346853, 1219234, -5513665, 836445, -2976949, 106300, -252866, 2309619, 398358, -2317135,
-328565, 645319, 1278290, -1620813, -1224603, -442919, -2758980, -4035659, 5486284, 2633352,
-690953, -704912, 4664335, 4145180, -4723927, 1363652, 383326, -832150, -2779381, 672162,
--4879620, 1138166, -979789, -3880503, 4795868, 135828, -441845, 6135361, -5349919, 4836670,
-1701881, -660351, -3982509, 1188095, -632971, -4089883, -3517041, 79457, -1578937, -1811403,
--5789616, 311385, 1151051, 2726767, -1731946, 2538863, 686658, -968515, -870805, -3337727,
-2847563, 639950, 353261, -5575405, 2870112, -453119, 323196, -2863133, 12885, -5120675,
-548682, 1139777, 616328, -411780, 427886, -68719, -41876, -867047, 201327, -238371,
-1053878, 678068, 389768, 1076426, -66035, 384936, 970663, 658741, -812823, -271657,
-1588064, -567473, 246424, -551903, 539018, -1896765, -564788, -565325, 699543, -325881,
--12291123, -11610370, 4491462, 7709467, 4645007, -10456098, 7444789, -2517388, -965831, 675921,
--4862440, -3665755, 8787503, -105764, -25233, 686121, -219043, 2890513, -4385699, 2676302,
--2326799, 2401424, 4019553, -2649995, -731755, 2353642, -678605, 4220342, -1315334, 1846299,
-358093, -405874, 345745, -3557307, -4983773, 4723391, 608812, -882079, 35433, -4642860,
--5813775, -137439, 106837, 3049964, -5404143, -4577899, -986232, -9569187, 3721589, -730144,
-1954210, -710817, -2312840, 1494649, 12291123, 6851010, 3566434, -3656628, 4843650, -27380,
--6314139, 46708, -6589554, 5629092, 772557, 690953, -3753265, 64961, 3833795, 1432909,
-768799, 510027, 431644, 4146254, 2873870, 558883, 2800856, 1692754, 2238215, 6055904,
-2507187, 2995203, -2786897, 2295123, 1695438, -690416, 4757213, 1472100, -4832, -396211,
-1427540, 2556579, 319438, -537, -926639, 638340, 2096481, 1181653, -462246, 236223,
--1698660, 522375, 445603, -732829, 181999, -75162, -16643, 1197759, -208306, 1249299,
-1691680, 635118, -963683, -1859184, 331249, -1160178, 933082, 854699, -1177895, 525060,
--2746095, -17623324, -1351841, -4232154, -627065, -2937758, -10013179, -417149, -2700998, -4115116,
--9388262, -1148367, 6646999, -4645007, 4368519, -768262, 6163278, -2085207, 5005248, -1646583,
--4980015, -1326608, 521839, -2173254, -4479114, -3583613, -4403415, 147640, -4019553, 1465658,
-460635, 405338, 1882806, -3009698, -4049617, 5828271, -544387, 1730872, 47245, -4569845,
--2914135, -3225521, 143345, -2315524, 4047470, 4129611, 667867, -5600101, -1849520, 10304700,
-2550137, -4358318, -3481071, -2207076, -3833795, -2019172, 8036421, 4897874, -5858336, 3574487,
-4734665, 7008313, -1822677, 2847027, -444529, 59056, -2851858, -5840619, -1069984, 4302484,
-429497, 8336532, 5905043, 390842, 1923609, 7029251, -5616207, -2573759, -1665911, -3457986,
-2467459, 1083406, 1125281, -3032784, 2042794, -2206003, 2265595, -4310000, -212601, -406411,
--1699196, -114354, -380105, 2102923, 567473, 463320, -1854352, -1258962, -604517, -1749662,
--83215, -2518998, -1467805, 88047, -203474, 1547262, -1073742, 411780, -523449, 833224,
-607201, 2143189, -1792612, 22574348, 15197205, -4696547, -823560, 33823, -586800, -2606508,
-3185792, 7715909, 6561637, 3371549, -11825656, -5288716, 1555852, 670015, 5070209, -8943196,
-1836635, 12083890, 8178155, -1406065, 2936147, -1079111, -4051228, -5594732, 346819, -4768488,
--2738042, 1378148, 3794067, -3498251, -6452115, -3097208, 1153736, 5947456, 8360691, -1596117,
--8761733, -1873680, -3107409, -8841727, -491774, -277025, -4197794, 1451162, 2420214, 5152350,
--7365332, 3017752, 3862249, 825171, -7120519, -5328981, 2483565, 306553, 1903207, -787590,
--656593, -254477, -3925600, 1951526, 2119030, -2778307, 5018133, 5876589, 8089034, 1926293,
-649614, 7572564, 12399571, 1969243, 1738925, 2102387, 7312719, 820339, 4348118, 12192338,
-3669513, 2244657, 388695, -2305324, -10370199, 1392643, -226560, -1694365, -1942399, 1280974,
--1393180, 2575370, 1198833, -1379758, -705985, -353261, 2156611, 1337882, -526134, -405874,
-1486059, 3098282, 78920, -776315, 1138703, 119185, -1390496, -2880849, 2149094, -2712272,
-1713155, 1147830, 2071785, -134218, -276489, 43487, 716723, -3783329, 169114, 553514,
--298500, 439697, 11954505, 202400, 2539936, 2832531, 5797669, -2296197, 3714610, -3150359,
--1909650, -9857487, 3972845, 6637335, -6000070, 5024038, -2445984, -8643085, 9006010, 5253282,
--1529545, 5312875, 10536629, 7291244, -5338645, -3061775, 5343476, 1626182, -1128503, 4023311,
-3795141, 5398774, 409096, -2422899, -4605279, -8334384, -207232, -6924561, 912681, -2281702,
-3911642, -5513665, -12526809, 2732136, -3058017, 5775121, 1531156, 419833, -3419331, -7454453,
--6158446, -622770, -570694, -5629092, 7944616, 10159208, 10648298, 4245039, -7510287, -699006,
-10093173, 933619, -1661616, 4637491, -1244467, -2557116, -9450002, 5213554, 2825552, 13764833,
-6444062, -9401147, 3214783, 3493956, -924492, -201327, 3416647, -2309082, 835908, -4044786,
--9802189, 8893804, 1700807, 5290863, 2645700, -4679367, 7621420, -1702418, 1869385, 382789,
--1600949, 264141, 300648, 577136, 4021163, 1285806, 824097, 318364, -1280437, -1610613,
--1994476, -1241246, 1432372, -674310, -33286, -807454, 1318555, -1175210, -534187, 102005,
--81068, 513785, -2106682, 2514167, -994822, 2211371, 805306, -1177895, -1366337, 3128884,
--2801929, 2510409, -627065, -3639448, -6136972, -1626182, -1588064, -10528575, 499827, 1314797,
-5251135, -1976759, -4576825, 1910187, 544387, 2512019, 49929, 5745593, 2267743, 3971234,
-640487, -431644, 3370476, 2002529, -10425496, -3202972, -14889041, 678605, -2808372, 1720134,
-2592013, 201327, 7056632, 1807644, 10091563, 1245004, -12091944, 243739, -4893042, -1997160,
--618475, -1813013, -666794, -9558987, 2030446, -4607426, 11457362, -11955578, 6577743, -2607582,
--10257456, -1922535, -7230041, -1559610, -2240899, -10873783, 3059091, 3307662, -2047626, -1816771,
--753230, 3820910, -8686571, 196495, 8024073, 1469953, 11186242, 18347026, 7524783, -16668231,
--22276384, 10742787, 4755603, 16554951, -3507915, 7926362, 1627793, 7869991, 10994043, 14217415,
--7654706, 4072703, 10528575, -8725763, 1536525, -1158567, -1173600, 753767, 7489886, -1200980,
-2501819, -4954782, 1687922, -3833795, -4081293, -1815161, -3426310, 494458, -2059974, -5660230,
--304406, 3657702, 2214056, -1104344, -1139240, -897648, -22549, 1663226, 1712081, -1517197,
--2294050, -1039382, 3109556, -862752, 3006477, 417149, 342524, -872415, 637266, 841277,
-141734, 777389, 27380, -2739652, -2709051, -1769527, 697932, 2581812, -3905736, -2607582,
--1327145, 1462436, -1913945, -1530082, -20474646, 15324443, 2649995, -2547989, -442382, -9075266,
--7693897, 8050380, -2280091, -2463164, 8064338, -5996311, -6735583, 476741, 8012262, 3585224,
--2798171, 345208, -4840428, -532039, 478352, 4475893, 25770, -10300942, -10500658, 2408403,
--1557999, 2570538, -1211181, 4227859, 7846369, 15040439, -419833, 9351754, -2473901, 2682744,
-6209986, -6174553, 12026982, -1708323, -7795366, -10689100, -2253784, -8866423, -11435350, -3076807,
-4964982, -3446175, -8936753, 4376572, 6000070, 9731859, 12331388, -10229001, 3678103, -2849174,
--9644886, 3531537, -10757819, -1940788, -17423072, 6857452, -5367099, 2535105, -3338263, 2695629,
--18726594, -18440442, -11431055, -4346507, 9970767, -9937481, 19150722, -6872485, 1672353, -1837172,
-3357591, -1804423, -13995151, 1952600, 1336272, 3708704, 2917894, 1566053, 5046050, -3100430,
--4989679, -34360, -66035, -4644471, 1799054, -5965710, 3052648, 1912871, 2415919, -941672,
--287763, -1882806, -4860829, -3400540, -2176475, -2149631, 2723546, -2139431, -5826123, 1805497,
-2039036, -1123134, 3416647, -427886, -1430761, -141197, 551903, -1731946, -1908039, 1857037,
-2370822, 1892470, 571768, -4156455, -3219078, -1020055, -3537979, 1023813, -60666, -201863,
--4974646, -2498060, -1000727, 1029718, -43487, -3867081, -805306, -96637, -3048890, 17433810,
-731218, 6748468, 4251481, 2077690, 9735617, 1649268, -14278619, 7017977, 1740536, 6712497,
--906238, -10107132, 14573898, 8292508, 5826660, -1140314, -4773320, 2173254, -1353989, -7968238,
-5059472, 3980361, -4849555, 6223408, 9174587, 506806, 3285113, 9657234, -10509248, 2707977,
--3720516, 4468914, -19528680, 6128919, 8995809, -2990371, 2195802, 9529996, 4693863, 389231,
-2797098, -9402757, 2210298, -5438503, 161061, 3027952, 1255741, -4170413, 18175764, -3089692,
--3768297, -4089346, -16363825, -6315213, -10131291, -11215233, -2471217, 16068010, 17135846, -1510218,
-5107253, 7164543, -14810121, -4505958, 11545409, 9948755, -6044630, -3890704, -14590004, -4472672,
--5687074, -6724845, -8346732, 2330557, -14878840, 2580202, 13449690, 19340238, 5633924, -5470178,
--660351, 10335839, -3823595, -6751152, 407485, -722628, -3306588, -4480188, 421444, -315680,
-2007897, 3196530, 1499481, -1496259, 623844, 1777580, 1005022, -113817, -3061238, -5975374,
-1488206, -227633, -2762201, 4801237, 1198296, 2758443, -2866354, 4098473, -3052111, -1995012,
--3402688, 3277597, 367220, 2457258, 4358855, -256087, -2633889, -1140314, 2060511, 1178969,
--454193, 261456, 386547, 802085, -518617, -793495, 2098629, 3286187, 8127152, 3955665,
--1531156, -5450314, 3411815, 862215, -7165616, -10698764, -11438035, -4617090, -11185705, -4699768,
--4527433, 137976, -10646687, 2344515, 4501663, 454193, -12161200, 3742527, -15091978, 4622459,
-8436926, 194884, 13107166, 351114, -3894999, -2439542, 8838506, -3228205, 12162274, 4280472,
--4209605, -4218195, 2139431, -6251325, -3353296, 408559, 11496017, -435402, 6072010, 3408057,
-1034550, 8020852, -3629784, -7450695, 3268470, -5352066, -2473364, -14510547, 8126615, -5135707,
--4291746, -2988760, -15957951, 19004694, 4922570, -2335389, 8278550, 2651069, 4015258, -8509404,
--12719546, -14509473, -7002408, 679679, -14621679, 5366562, 10537702, -16441672, -6012418, 5921150,
--7573638, 3866544, 18140868, 494458, -2991982, -4924717, 4057134, -9981504, 6415608, 3394635,
--8979166, 2825552, 6280316, -3706020, -10628433, -9141838, -4795331, -448824, 2821794, 2352032,
-1903744, -1957968, -2720862, -1434519, 2251100, 537, -1579474, -6102075, -7210177, -2081985,
-395137, -5225902, -6198712, -4357781, -2667175, -2476586, -5458367, -4766340, -2596308, -3484292,
--6947110, 1027571, 6291054, -814970, -728534, -2743410, -2071785, 1960116, -2544231, 306553,
--5525476, 12348, -1707786, -3086471, -162135, -2911988, 1523103, 2309619, -2424509, 3590056,
--2820183, -1250372, -2914672, -426276, 256087, 5172215, 11348377, 29120416, 30107184, 9424769,
-18599356, -12650826, -13251048, -2786897, -2142115, 1343251, 4060892, 9928891, 17203492, 5958731,
-15908559, 2029372, 4672388, 2643016, -4655208, 7597261, -390842, 3171297, 1050656, -7974681,
--1212255, -4171487, -9089761, -5312875, -48855, 1116155, -11989401, -4635344, 14681809, 10937671,
-7543573, 12814572, -7987566, 303869, -21799644, 1224603, 18376018, -3404835, -3874597, 2445984,
--2169495, 14738717, -1329829, -2210298, 11024107, -13151727, -21825414, -8519068, 1764695, -11436424,
-8441221, 12256226, -17219598, -6253473, -22012, -115964, -24634322, -15384036, 7684234, 3583613,
--1988033, 8075613, -10835129, -6357089, -15265924, 3789235, 4707284, 1448478, 901943, -9849971,
--16807818, 13975824, -22800908, 6809134, -8440148, 21824876, 2118493, 9206799, -6298570, -8362838,
-6156299, 3105261, 9580998, -9055402, -1785096, 6754373, -546535, -4938676, -4882841, -4852776,
-376883, 5230197, 5459977, -6051609, -2691871, -840740, -8382166, -2773475, 1416266, -738198,
-637803, -4172024, -7361037, -865973, 105227, 5869610, 1689533, -3360812, 4328790, 920734,
-2169495, -7854422, 1572495, -4624069, 3740380, 874026, 3966402, 6613713, 1934883, -4359392,
--9090835, 2997887, 2978023, -28127204, -20318954, 14090714, -2976412, 25578140, -6272800, 21067352,
--16956530, 561567, 7504919, -1621887, 860604, 2520609, -1363652, -12635257, 4404489, 4826470,
-5506148, 6375879, -3950833, 10481868, -9525701, -6944962, -5466957, 14722611, -8147553, -2675765,
-1264331, -252866, -7668127, 6595459, -8550743, -10062035, -19122806, 1794223, 3441343, -12896176,
--6097780, 6293738, -2677375, 3389266, 978716, 15116137, 990527, 11391327, 4996658, 544924,
-9023726, 2121177, 3085934, -17024176, 17531520, 6289980, 13721884, -8317741, 3596498, -9108552,
-14235669, 10910291, 17380658, 2843268, -4635344, -12619151, -855772, 2298881, -10861972, 15396921,
-2404108, 2449205, 16441672, 3760244, -5018670, -6526740, -608812, 9882720, 11775190, -3784403,
-14701673, -17609366, -18596134, -8035347, 4231080, -5575405, 8001524, -1941325, 4259534, 14228153,
--708670, 7100655, -5973226, -5312338, 6107981, -467078, 9844602, -2988760, -148176, -2967286,
--6217502, 1324997, -3695819, -1351304, 4000762, 1475858, -5665062, -5021354, 2887829, 7603166,
-7703024, -699006, 6290517, 7024419, -9822053, 4628364, 9091372, 7324530, 3973382, -7164543,
--8904541, -9075803, -9357123, -9079024, 654983, -3100967, -1404454, 1145146, -6883759, 4909685,
-4228396, -3368328, 5050345, 1956358, 2314451, -6316823, 5252745, 12986370, -30633318, -1399623,
-15949361, -10207527, -3418794, 11747809, -12771085, -25919054, 5129802, 4382478, 3990025, -3401614,
--15348603, 3841312, 4322348, 1126355, 8471286, -27485644, 12559558, -6413997, 6514392, -15684147,
-12682502, -19839528, -12692165, 7637526, -5239860, -2355790, -15105937, 11768747, 15502684, -100395,
-1670742, -7222525, 23277112, 5724655, 6294812, -4308389, -20273856, -4414153, 11080479, -2105608,
-16617765, 64961, -6134824, 3951370, -1253057, 10392210, -20075214, -2498060, -15420543, 16490527,
--6267968, 5468567, -562104, -682900, -18215494, -6456410, 15809775, 4986994, 1316944, -4894652,
-360240, 1930588, -23329188, -24143084, 25479894, -11469710, -27916214, 11201812, 13012677, -22490596,
--29405494, -20547660, -19754166, 3368865, 7650411, -2571075, -19001472, -734976, -10242423, -4878009,
--13824963, -892816, 1218160, 1242856, -2891050, 12811351, -7196755, 4953708, -6139656, -437013,
-3373697, -3441343, -685584, -7803419, 9926743, -2510945, 3359738, -5765994, -8378408, -1852205,
-3765613, 4382478, 1220845, -8134668, 4518843, -1305133, -6620155, 6097780, -9917079, -2100239,
--6222871, 9562208, -4507032, -10963441, 4466766, -4451734, -4890894, -14515379, -996969, 3032784,
-11775727, 4734128, -7350300, -3826279, 930934, -2118493, -4045322, 2019708, -825171, -2945811,
--2974265, -1147293, 11783780, -16585553, -9580998, -17351132, -1839857, 3799436, -23800562, 3972845,
--11749957, 32993402, 1510218, -29324962, -6999723, 14496051, 8536784, 7161858, 14654428, 15123117,
--21512418, -5259725, -8451422, 20146080, -7231115, 23490786, -238908, -13303661, -10936060, -20684026,
--24107652, 1577864, 2580202, -3755412, -12517682, -5097053, 1413581, 3933116, 8011725, -11551851,
-5748277, -13612362, -16357383, 3292093, -3634079, -4177393, -17045114, -15867220, -7875897, -4815195,
-22736484, 2240899, 7529078, 12992276, -561030, 28921772, 11513734, -9487583, 1329829, 14940581,
--5948530, 18884434, -5085778, 2457795, 1153199, -25391846, -26229902, 3949759, 18100066, 481036,
--5822365, -28424630, 1701344, 9827422, 5990406, -9701794, -8096014, -5588826, 3358665, -12237436,
-30158186, 17156784, 18446884, 3762928, -21500070, 7851200, 9635222, 30230128, 6837051, 3155190,
-11995307, 5244692, -5034239, 346282, 9168145, -791348, 1154273, 3071439, -7761543, -5299453,
-8918500, 322659, -7392713, 9562208, -5990943, -2119566, -4611721, -4315906, 8346195, -5388574,
--2536178, 4536023, -9190156, 3885335, -920197, -5140002, 11041824, -3956739, -86973, -14144938,
-8589935, -4282083, -3784403, -9102646, -13088376, 2113661, -5324149, 9208947, -373662, 5485210,
-3425237, 257698, -5489505, 200253, 8207146, -41876, -14249091, -12852690, 27230630, -8389145,
--10176388, -1370095, -7587597, -18519362, 338766, 12933757, -31958314, -476741, 8223789, 10253698,
--10930692, 7301982, -18314814, 1474784, -4761508, 5784784, -16404628, 10253698, -27899034, 4635881,
-723702, 15850577, 14804752, 7458211, -10441602, 11668352, -3428458, 13026636, -14139032, 2302103,
-16485695, 13165685, -7784628, 2764885, 387621, -3586298, 7987029, -3040300, -9640591, -10641855,
-7618735, -19285476, 12770548, 3064996, -20781736, 19640348, 18708878, 17696876, 6342593, -9077950,
-22650046, 2801929, 9726490, -13838921, -12087112, -13262322, 4133369, 5249524, 8114267, -18634790,
-1811403, 13841069, -35929548, 1424319, -11800960, 22592602, 14520211, 11382737, -3179350, 15001247,
--14088030, -667867, -9808095, -21531744, -903554, -19822348, -16639240, 9812927, 26552562, -24879134,
--5913096, -4488778, 26658862, -6519224, 11667279, -7571491, -4665945, -952409, 9440338, -5504538,
--2311766, 838056, 6438156, 4799626, 3393561, -3483219, 991601, 2851322, 13218836, -10377715,
-11034845, -2328946, 8078834, 84289, 2162516, 2876554, 5094905, -6841346, -1542967, -1270237,
--8564702, -7606387, -7596187, 5355824, 4274566, -1496796, -3395709, -4355097, -5983427, -3654480,
-527744, -2602750, -36507, 8020852, -158377, -14479408, 6859600, -8443369, -1267015, 6205691,
--2373506, 24075976, 4817880, 12357695, -34540128, 16193637, -19452980, 26235808, -2880313, 10408853,
-19347218, -20878910, 37514928, 27428734, 20173998, -8981313, 5251135, 26218090, -6755984, -8032126,
--6293738, -1071058, -19822884, 5476084, -10658498, -23460186, 22758494, 7894150, 6087043, 3165391,
-5100811, 9185324, 23973970, 5366025, -15316927, -1011465, -15884400, 3376918, 2044941, -27268210,
--1388348, 15272904, 878858, -1696512, -8619462, 29554206, 5823439, 12744242, 6238440, -15533823,
--11502459, -8364986, 17988396, 11016591, -3849901, 11316165, -1829119, -19667728, 19145354, 2630131,
-21976810, 2729452, 2079838, 716186, -29642254, 4290136, 580357, 3535832, 18104360, -6959995,
-28606630, -43498892, -7975218, 32927904, -13422310, 11080479, -15106474, -23023710, -18971944, 13804025,
--13030931, 12890271, -20368882, -4035659, 3197603, -4684199, -8128226, -2268280, -2572149, 9083856,
-20082730, 2427194, 11837467, -3649112, -2219424, 15078556, -2348810, -3937411, 3898757, -7107634,
-6381248, 13169980, -8801462, -1028108, -3549791, 2649995, 2224793, 6405407, 22713398, -3866008,
-7876433, 708670, 5312338, 8623221, 3986804, 1586454, 12559021, 14090714, -4041564, -1636383,
-5505611, 3296388, 4739497, -17439714, -1662152, 17162690, -3968550, 3809099, 6423124, -630823,
-17476222, 6051072, -35367980, -42494408, -3671123, -19964082, 2765422, 11987254, -16901234, 4865124,
--25855166, 11187853, -14212047, -70972720, -4499515, 43148852, -18577882, -8108899, 43509092, -10291279,
-2400350, 51958904, -12401181, 11413876, 4920959, -7700340, 41970420, -33853468, -4310000, -1021665,
--5893232, -6893960, -6867116, -940598, 13693966, -7785702, -22835268, 156766, 492848, 6657200,
-8372502, 1410897, 18855444, -823560, 8690329, -5242008, -22670448, 15716359, -2764885, -23469848,
-915365, 13373454, 41306848, 20783346, 34724812, 625455, 8557185, 16464220, 3922379, -2131378,
-32453310, -1816771, -12641162, 37880536, 6635725, 6606197, 269509, -5468030, 21697102, -117038,
--12634183, -14362371, -2963528, -2932926, 32846300, -22405234, 2859375, 4116189, -5865852, 38477000,
-296353, -24805046, 4114579, 12492986, -18168248, -988916, 18441516, 15128485, -9366787, 1345399,
--10584947, 8783208, -2889439, 1100585, -10426570, 9524627, 67646, -1177358, -15138686, 6118718,
-5086852, -9951439, 705448, 3447248, -5152887, -3473555, 11573326, 1697586, 6416145, -4402879,
-3332358, 20061792, -18413062, -8477729, -6103149, 21701396, 8039642, 11429445, -13285944, -12172474,
--5004174, -1574642, -16103443, -18087718, 21430276, 8580271, -12753369, -11904576, -7322383, -250719,
--12659953, -11115912, 47245, 3205119, 8053064, -2232846, -4130148, 6560026, -1720671, 2057826,
-24157044, 19389092, -39687644, -19478750, 30592516, -5669894, -29731374, -319438, 663036, 10741713,
-32350230, 28685012, -17646410, 5274757, -3971771, 212064, -258235, -18644454, 28067612, -8361228,
--18335752, 6500970, -13152264, 15887084, 1431835, 22609782, -6941204, -21518324, -19381040, 17125108,
--8223252, 22306450, -5961952, 14439680, -14654965, -11449309, -6950868, 1573032, -18402862, 4496294,
-1012002, 278636, 18061412, -230854, 6059662, -12542378, 8973797, -19779936, 21194590, -19027242,
-12615393, 6376953, 17825188, -29766270, 1059246, 2494839, -8949101, -21506512, -36374616, -6100464,
--31031138, -11954505, -24822764, -11587285, -45403708, -14124537, 20674362, 26122528, 14269492, 15213311,
--2403034, 16530792, -32328756, -7388955, 5082020, 20936892, 5829881, -44518408, -1697049, -19553912,
--12973486, 52110300, 35067336, -24656870, -9983651, -17299054, 5873905, -45858976, 2892124, 9629317,
--13048111, -13565117, 8426189, 2742337, 522375, -8748312, -7655779, -7477001, -7566659, 14405857,
-13234942, -854162, -3590593, -14038637, -16121160, -3347927, -3963181, 5565741, 14116484, -27251568,
--1968706, 13811004, 52613, 17648020, -6003291, -16648367, 9182103, 19083076, 9693741, -11227045,
-1518808, 17689896, -22189948, -15728170, 29731912, 1808181, -879395, -2820720, 4833986, 7023882,
-9139154, -3510062, -7055558, -8283382, -52170432, 15090904, 8403640, -27776090, 11055783, 10031433,
--19832012, -15577310, 23704462, 2708514, 12703976, -6543920, 15721191, -5170067, -2294050, 12030203,
-6086506, 3794604, 498753, -8501888, -14063870, -8895414, 22404160, -8075613, -19146964, 32571958,
-20418274, 2361695, 15113990, 4206921, -16806744, -50337552, 20657182, -1910724, -26940182, 22490596,
--2274185, -36760624, -30590904, -16209207, 24097988, 9380745, 24970402, 31071404, 9474698, -25551834,
-8126615, 8857833, -32113470, -5448703, 18276696, -10307922, -35006668, -26890254, -42700028, -27542552,
--6078990, 26805964, 39276404, 18624052, -2483028, 26721676, -6624450, -66376036, -52327196, 11267310,
--26310432, -31592706, 45035952, 5690295, -60327112, -46961708, 16069620, 2549600, 10459319, 22232898,
-54244364, 30802968, -4424890, 60029148, 19348828, -63471564, 700617, -13719199, 32830730, 9578851,
--20612622, 9920838, -15436112, -9489730, -13408351, 20318954, -3652870, 14792404, 12763569, 16039018,
--3487514, -16565689, -5143224, 10997801, -6878927, 9208947, 6247030, 6570763, -14015552, 1466731,
-5891085, 59056, 25636122, -1098438, 11476153, 2274722, -4063039, 13390097, 3439195, -2257005,
-15298674, -7468412, -2158221, 9043054, 3959423, -1665911, -5993090, -8815957, 1124208, -10092636,
--7181722, 5061619, 7434589, -7795903, 49400712, 48193828, -15229417, 16869558, -19812684, 12176232,
-564251, 7101729, -23592792, 2005750, -20167018, -17775796, 99858, -41248328, 951872, -17477832,
-4544613, 12302397, -384936, 14229227, -20403242, 30963492, -15302968, -426276, 21268678, -19963008,
-7792145, 15508590, 18865644, 2837900, 6781754, 4793184, -29773250, -16440598, -4840428, 4487167,
-4556424, -4327180, 19679540, -6267431, -300111, -3674882, -8562017, 7056095, 3898757, -23428510,
-6896644, -18814642, 5150740, -45315664, -2224256, -1058173, -126702, 18610094, -7507066, -16478716,
--7424925, 17099338, -87510, -43803836, 61351996, -5299453, -11776263, 13443785, -2717104, -8968429,
--11547556, -12159589, -13201119, 42168524, -16326781, -24327768, 20822002, 2101313, -33279018, -7778723,
-13837848, 11113228, -11010149, 22771380, -4061429, -6168110, 20946556, -15405511, -14270566, 26626650,
--11822971, -4138201, -1515587, 11319923, 5370857, -212064, -1940252, 724239, 4950487, -5392332,
--493921, 5270462, 5438503, 6669011, -16387448, 4274030, 8133058, -15782931, 1245541, 3391951,
--2914135, -6343667, 6300180, 1893544, -5834176, 995359, -650151, -2594160, -20084878, 11429445,
--11933567, 3663607, 3265786, -17988934, -1127429, 970663, -232465, -166967, -6231998, -799938,
-4992900, -641024, -39080980, -57623428, -55455008, 122781304, 101855688, 116037672, 262088032, 68655592,
--65648040, 20816096, -210177984, -222760096, -55123756, -139942384, -108257872, 66411468, -34378528, 13975287,
-167072080, 83068424, 123875448, 237941728, 158567504, 41640244, 34587372, -69844760, -216312272, -165144176,
--126436856, -255467344, -103314904, 6411313, -45091252, -20077898, 129559296, 34613140, 17584132, 160551776,
-20074140, 38659536, 227867872, 167700224, 106213464, 215572992, 107469744, -37389300, -2970507, -67716064,
--334947328, -292135616, -236071808, -366940000, -279588960, -98735392, -132268352, 30363808, 255468416, 228307040,
-315713920, 398616992, 296617408, 231549744, 225137360, 124840744, -41691784, -79621176, -182415312, -260505872,
--255969856, -221628896, -254082752, -259896528, -208974848, -116569168, -84466976, 32179506, 200041328, 288338880,
-411251712, 462615744, 276290944, 67536752, -39064876, -277811360, -264469056, -201281488, -156429696, -57802744,
-29885994, 22371948, 28801514, 36064304, 17029008, 42369316, 59176060, 44150652, 71372152, 40873056,
--17703318, -21584896, -62223876, -113985208, -31006980, -35326108, -40931040, 36417564, 31215286, -38414188,
--49750216, -92739616, -151871648, -63468344, 87251184, 148390576, 287313440, 346670432, 235777600, 146572736,
-39529268, -129344016, -189536912, -214430000, -250881920, -235670224, -180812752, -146375168, -121126664, -73237248,
--18156438, 63735704, 219578048, 306405120, 272004032, 195751728, 121012848, 26828514, -46658376, -71418864,
--90714544, -64438468, -16832514, -2421288, -18158584, -30495342, -49466748, -79549776, -103589240, -99981472,
--100369088, -58452356, 10364830, 38043208, 69184408, 90896544, 91934848, 71729712, 48964776, 28124520,
-15826418, 22891102, 31132070, 31839666, 28161026, 16952236, -6439230, -37280852, -62181464, -76198088,
--77845744, -62555124, -49427556, -39984536, -20632486, 5682779, 22249004, 28858422, 33149094, 35403416,
-42133628, 46341088, 41539848, 23870892, 10438918, 3092913, -6102612, -8810589, -5403069, -8459475,
--4842576, 1653026, -2673617, -11917461, -14500883, -23751170, -33704220, -32192928, -28791314, -21981642,
--3300146, 12139725, 19881404, 28233504, 32287416, 23257248, 17863842, 9987410, 2796561, 2595234,
-9167608, 8540542, 7665443, 4325032, -5967320, -13225815, -20402168, -27709518, -27945742, -21998822,
--11977053, -1756642, 9164386, 16327318, 19455664, 15980500, 10468983, 4713190, 1666447, 667331,
-505196, -666794, -1643362, -2986076, -3389266, -3277597, -2282775, -1489280, -335544, 37044,
-511638, 29528, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
-8932458,
--1172526, 709207, 7030862, -908922, -324807, -2050847, 7669738, 445603, 3730179, 2262374,
-2258616, -3167539, 1592359, -4903779, -531502, 3795677, 772020, 2221035, 3579318, -6054830,
--4224637, 1436130, -299574, 4486630, 2735357, -237297, -2491618, -1571958, -3082713, -494995,
--410706, -466541, 854699, 1170379, -2682744, 4497368, -1033477, -705985, 1538672, -5740761,
--1323387, 2479807, 878321, 5658620, -21475, -417149, 1105954, 383326, 2357400, 3917547,
-4984847, -290447, -514322, 87510, -2867428, -3641596, 2009508, 3248606, -2281702, -2190433,
--1479079, 4144107, 2441689, -572304, 646393, -4889821, -1408212, 2539936, 2107218, 3613678,
--5255430, 1192390, 1988033, -1096290, 3707094, -239444, 3231426, 1537061, 1039382, 4098473,
-2034741, 1034013, 33286, 483184, -977642, 344134, 569620, -323196, -1456531, 719944,
-708670, -1078037, -150861, -727460, 761283, 1178969, 47782, -150324, -66572, -1093069,
-536334, -386010, 907849, 428960, 279173, 194884, -488553, 296353, 134218, 466541,
--868657, -413391, -192200, 119185, -1183264, 11647951, 3206193, -2667712, 5936719, -2886218,
-6178848, -2055142, -2819109, 3143379, 5777268, -177704, -2859375, 1542967, 1211718, -237297,
--8229694, 1927904, 2408403, 660351, 5137318, 6918656, 3711389, 6812892, 4629975, 4151086,
--1109712, 4610111, 2218888, -3495567, 1307281, 2129767, -4503810, -5716602, -880468, 2253247,
-87510, -2063195, -2767033, -2692408, -1337882, 3084324, 6179921, 5236639, 1975148, 4022237,
--6493991, 409633, -1658394, 63351, -7453379, 2763275, -718333, -1757179, -292058, -2022930,
--3685619, -2588792, 2611340, 625455, 2002529, -2716567, 5081483, 1306744, -5888937, 2432025,
-745177, 1636383, 3223373, 978716, 5917391, -1888175, 646929, -6912750, 1312649, 666257,
-195958, 163746, -1303523, 4917201, -1505923, -2285996, 3728569, -3864934, -1888175, -1596654,
--721018, -1802813, 1244467, 329102, 648540, -51003, -172872, 63351, -708133, 423054,
-644782, -250719, -304943, -34360, -1281511, -2087891, 766652, 253940, -1649804, -220117,
--185220, -360777, -1998234, 509491, -12885, -66035, 133144, 345745, 212601, -758599,
--32749, -1377611, -160524, 572304, -2352032, -2378875, -762357, 2155537, -3982509, 1155346,
--7871065, 1467268, 1493575, -928250, 5634997, 345745, -620086, 494458, 2987687, -4840965,
-696322, 1466731, 3090766, -6882148, -3472481, -2604898, 2526515, 1017370, -2149094, -6955163,
-1690607, -6918656, -415538, 2727304, -1271310, 2073932, -1185411, 4639102, 6907918, 3631932,
--3563212, 655519, 5237176, 3215857, -3225521, 2701535, 817654, -5396627, 1900523, 7383049,
-3477313, 2465848, 8259222, 725313, -3122978, -6329171, -267362, -3559454, -4242891, -2029372,
-4545149, -4322348, 1511292, -2586107, -2396592, 5272073, -684510, 861141, 4223564, 5727876,
--2542084, -5288716, 6717866, 5133023, 3294240, 296353, -4024384, 628139, 5310190, -5392869,
-1646046, -3519726, -108448, 3266323, -3071975, -188979, -5919539, -1580011, -513249, 884226,
--307627, -2259153, -259846, 1117228, -1742683, -469762, 819802, 661962, 515933, 471910,
--83752, -449361, -2331094, 1240172, -121333, 1278290, -898722, -1556926, 551903, 1211181,
--800475, 1067836, -179315, -89121, -91805, -259846, 1306207, -775778, 510564, -783295,
--15601469, -5712307, -2401961, 8535711, -3239479, -1284732, -5043366, -4269735, -728534, -11254962,
-6307697, 2081985, -319438, -4159676, 6209986, -1750736, 3154117, -2517925, 1992328, 3956739,
--4947266, 519691, 5459977, 3083250, 2199023, 5836324, 5223217, -3280281, -4179003, -5216775,
--86436, -6857452, 1636383, -9057012, -1733019, 6664716, 3506841, -2299955, -704912, -6815040,
-3093987, -2916283, 6004365, -3462818, -6162741, -1270237, -2539936, -5068062, 1961726, -1165010,
--3223373, -3289408, -10916733, 1487132, -3274376, -8094940, -2152852, 4983773, 2558727, -4189741,
-3456375, 4439386, 4292820, 1589138, -5581310, -936303, -1239635, 3860102, -3922916, -1513976,
-2035815, 2062121, -6109054, -7283191, -13066901, -2242510, -7589207, 2491081, -293668, -1819992,
-3842385, -819265, -1749125, 1668058, 2620467, 2509872, 1958505, 4540318, -1941862, -1609002,
--1228898, 659814, 228707, -1043140, 1253594, 1796370, -401579, 415001, -797253, -1043140,
--193274, -681289, 187905, 386547, 53150, -1156420, 177167, -783295, -296890, 642098,
-1465658, -662499, 1755568, 2129230, 336618, -630823, -1859184, -386547, 1249836, 820876,
--809064, -13579076, -5430986, -2433099, -4020626, 4620311, 6041945, 5694590, -11335492, -8465381,
-3263638, 13814225, 8170102, -5369, 1969779, 3936338, -4961224, 3278134, -4598836, 3325379,
-4911832, 759136, 3942243, 1230508, -270583, 2045478, 1217623, -3701188, -4684199, 6483253,
-2633889, -4729833, 4647692, -2578591, -471910, 11144366, -5310727, 6310918, 12463995, 5086852,
--702764, 483721, -4483946, 5828271, -5939940, -3248606, -9990094, 1888712, 7721815, -188979,
--7068443, -2517925, -10024991, -5091147, -1852205, -14268955, -7756174, -1405528, 1524713, -6244346,
-3178813, -1650341, -4921496, 5349382, 15792058, 1473711, 8056822, 5463199, 4743255, -4988605,
-2114735, -8504572, 923418, 2454574, 1923072, -3299072, 92342, -8634495, -2994666, -3024731,
--598074, 4207994, 4518306, -193810, 1770063, 2456721, -1218697, -935766, -777389, 817654,
-119722, 614180, 492311, 1389959, -711354, -37044, -2051921, -245887, -300648, 1491427,
-869194, -899259, -1229434, -1196685, -1152662, -384400, -1420560, 529892, 2685965, -2093797,
--248571, 923955, 1539209, 21209622, 13402982, -7292318, 2720862, 6827388, -2817499, 3908957,
--1327145, 6369437, 3190087, 2040110, 5776194, 3269007, 2857764, -1799054, -14192719, 6797323,
--2417530, -3227668, 11103027, 6875169, 3836480, 5123896, 3802120, 2828236, -2172717, 1648194,
-450972, -3629784, 2935073, 4806606, -8006356, 1537061, -5181878, 3834332, 4431870, -12511240,
--206158, -14889578, 255551, 1865626, 1263257, 4070555, 10160282, -1237488, -5267241, -2575907,
--2828236, -3911105, 2923799, 3155727, 982474, -1647120, -1828046, 9881109, -3277597, -1969779,
--5392869, 8777839, -1334124, 7377680, -3471944, 7884486, -7589744, -15947750, -4744865, 1005022,
-3226594, 5398774, -5374078, -3995930, 2183991, 1445257, -2492692, -4155381, 9970767, -3897683,
-9484898, 2513093, 6701223, 2646237, 4881231, 4123706, -1720134, -639950, 1915019, -277025,
-5171141, 138513, -1719598, 477278, -5806796, -1145146, -1348620, 407485, -1945620, -738734,
--659814, -133681, -675921, -3038689, -2476586, 744103, 202937, -3411815, -213675, 507880,
-494458, 1398012, 583579, 3364570, 140660, -1130113, -146029, -452582, -1567663, -1833414,
--737661, 508954, 9931575, -3797288, -6589017, -308701, 1055488, -9432285, -7364259, -2354716,
-2572686, -1410897, 12249247, 7340099, 332323, 11682311, 4224101, 3415036, -10008884, 9393093,
--1749662, -2364380, -8440148, -3822521, 7509751, 7401840, -2102923, 4907537, -10151692, -1433445,
-6833830, 5134634, -3789772, -7218767, -4043175, -4462471, -5557688, -4635881, 1119913, -7586523,
--723702, 10478646, -5037997, 1209033, -388158, -2413235, 4095251, -1671816, 6857452, 8590,
-9668508, -2479807, -6077916, 3495030, -4800163, -4764193, -4800163, -13712757, 1601486, 5680094,
-8176007, 5889474, 10741713, -1097364, -4116726, 6206228, -7614977, 1777580, 1189706, -1140851,
-6965363, 6493454, -1658931, -8278550, 1668595, -4272956, -7876970, -7304129, 4044249, 7091528,
-4453344, -15315317, 3469260, 1641751, -747324, 7239168, 3919158, 5926518, 2255395, -562641,
-7780334, 1056025, 3546032, 2833605, 633508, -3470871, 589484, -1928440, -4246649, 828929,
-1319629, 2043331, -486942, 569083, 503585, 395674, 1545651, 1009317, 1075889, -140660,
--2667712, 1928977, -1060857, -1188632, -984084, -1896228, 3550864, 4003447, 3410741, 1387811,
-406411, 605590, -775778, 2745558, -12242804, -6895570, 1102733, -6724308, -18039400, 13711146,
--469225, -717796, 1542430, 1241782, -11990475, 8436926, -12493523, 1270774, 5463736, -1448478,
-1881733, 2160369, -13428752, -4290673, -6077379, -1053878, 2551211, -4183298, -2933463, -364535,
--947040, 1388885, 5381057, 3144990, 11763915, -4155381, 16209743, -972810, 280784, -10533407,
--1752347, 8132521, -1743220, -16295106, 6488085, 7830263, -5062156, 4224637, -6313602, 11586211,
-6154688, -151398, -832150, -7152195, -4832375, -7843147, 7348152, 7580081, 3099356, 1016834,
-3223910, -6290517, -17152488, -6043556, 5802501, 2782065, -12759811, 490163, 1338956, 1897302,
--6196564, 4507568, 8807904, 4794794, 40802, 3796214, 6017786, -3308736, 9032316, 312996,
--382252, -8922795, -11747272, 7627325, -3674345, 3866008, 3638911, -468688, -2619393, -2382633,
--2071785, 1342714, -2985002, 3922379, 747324, -891206, 836982, -1189706, 31675, -4598300,
-1072668, 514859, -941135, -2501819, 775778, -2199560, -238371, 890132, -591632, -1398012,
--133681, -1404454, 5634460, 4493073, 1529545, -543850, -589484, -1535988, -62814, -534723,
-3572339, -1116692, -582505, 3614215, 730144, 1574642, 2474438, -1686848, -1057099, 2725157,
-1492501, -629750, -491774, 3854196, -18882824, 10179072, -2623151, 3777961, -5628018, -2997887,
-7866233, -9117142, 8852464, -5496485, -10740103, 4884989, -5813775, 22822382, 3326452, -7922067,
--11127187, -1947768, -13786308, -6269579, -14844481, -833761, 9822053, -6973417, 6034966, 10011032,
--9311489, 63888, -10858214, 6086506, 2064806, -367220, 6294812, -6702834, -9747428, -8149164,
-492311, 1851131, 8062191, -11684995, 8266202, 1656784, -17365626, -9491878, -14031121, -5710696,
-5231270, -4684736, -4731980, -26548804, -628676, -5814849, -2508798, -17024176, -6009733, -2236604,
-1243393, 13914083, 12588549, 10733660, 6088116, 13412109, -14500883, 11255499, 1482301, 5257040,
-3697967, -10285910, 15939697, 9947681, 6236293, -7026030, -9540196, -6791417, 9216463, 1086090,
--44023, 5053566, 2345589, 5312875, -4751845, 14093935, 7308424, -1493575, -2386391, 3174518,
-2752000, 1735167, -933619, -842350, 1216550, -205085, -340376, -5816997, 250182, -3353833,
-116501, 1873680, 550293, -335544, -67646, 1174137, 919123, -5532455, -1570884, 1984275,
--1708323, -2150168, -234076, 763967, 812286, 1096290, -910533, -1131187, 858993, -2403034,
--4223564, -1022202, -1127966, -1326071, 655519, -302258, 3568581, 1742683, -1588064, 1638530,
-1107565, 951335, -1639067, -2870649, -164819, 459562, 3029026, -1060320, -826244, 7132330,
-13219909, 14334453, 5860483, 10033044, 8120710, 4861366, -2618856, 1087164, -3905736, 350040,
--1342714, -8640400, 11034845, 17511118, 6982543, -4763656, 7853348, 7477001, -290984, 4655208,
--8235600, -15877420, -10565620, -7210177, 4620848, -1894081, -8291435, 6247030, -2835752, -7399692,
--70867, 12926241, 6519224, 9589588, 3369939, 7072738, 7835631, -1742146, 7180112, -2732673,
--8145406, 3501472, -9436043, 3587908, 3802120, -13869523, -9011915, 5769215, 14467060, -7418483,
-10095321, 14098767, -11561515, 545998, 12840878, 1452773, -4632659, -1006633, -6518687, -11399380,
-186294, -3406983, -5971079, 7961259, 445066, -13052942, 16879758, -6875169, 13701483, -16068010,
--10988137, 7969849, -9875204, 5567352, -6621766, -4790499, -9269613, -5630702, -7534447, -18975702,
-3201361, 11724724, -5315022, -785979, 8137353, 8692477, 6179384, -1126892, -636192, -4865124,
--1486596, -2096481, -2522757, 2120640, -461709, -1741609, 2855080, 2594160, -1132261, -184684,
--3354370, 1560147, -2943126, -5400385, -324807, 5166309, 102005, -2793339, -700080, 8493298,
-4278861, 355409, -2469606, -2991982, -2173790, 580357, 643171, -2499134, -897111, 167504,
-1061394, 3428458, 872415, 5370857, 3253438, 3868692, 1521492, 1773822, 2123861, -642098,
-142271, -11761768, 7498476, -4958540, -13073344, 18779208, 9423695, -12867722, 9157407, 8608188,
-2337536, 15865609, -32198832, 2532420, 13101798, 4751308, 1100585, 14225469, 466541, 7887708,
--18647674, -2285996, 4980552, 455267, -9368934, 3844533, 7400766, 3835406, 3469797, 10118943,
-8166881, 13375602, 10271951, -3835406, -4291746, 10402411, -6323803, 7364259, -11588359, -6038724,
--14806900, -6495065, 8078297, 3067144, -3459059, 12353400, -14440217, -19204946, -31515396, 9994926,
-10815801, 8745090, 6601902, -7194607, 4952634, -4079682, 11834782, 31970126, -4994510, -6467147,
--13861470, -4156992, 11838004, -7875897, 6762963, 11931956, 1860795, -34360, -9271761, -2442763,
-4321811, -21767968, -20367272, 2268280, 2698850, -7580618, 11101417, 8746701, 16001974, 26216480,
-10302016, -5814849, -3217468, 5709086, -196495, -14115410, 6763500, 6237903, 5068599, 1919850,
-6627135, -54761, 3646427, 3294240, 2010582, -3047279, 216359, -125091, -500364, 5526549,
-1526324, 120259, 2727304, -5494337, 1578937, 1220308, -768799, 5807333, 1064078, -1446867,
--1001801, -3277060, 9910637, 853625, 1663226, 4369593, -1512365, -1298691, 5562520, -5888937,
-5532992, -4257387, 4580046, -127238, -433792, -890132, 1843615, -747861, 4737349, -3742527,
--1651415, 1648731, -912681, -1166621, -3035468, -4446365, 3326452, 47582332, 26924614, 17141752,
--4380330, -4859219, -579284, -4064113, -4883915, -7391639, -8882529, -15279346, 688805, -1087701,
-3743601, 6651294, 12700755, 19182934, -2550674, -24974162, -9746355, 21420612, -3325915, 8022999,
--2761127, -367757, 14289893, 4936528, 10854456, 6369974, -433255, -651224, -187368, 7201050,
-9222905, -3580929, -14049912, 18409840, 13211319, 9370008, 3463891, 4770635, -7464653, -13943074,
-19210852, 10707890, 4954782, -8913131, -9897215, -13911399, -8551817, -2477659, -8687645, 4814659,
--17778480, 2456721, 13138305, -8544301, 4640176, 791348, 1932735, -20308216, 7203197, -8722005,
-14821395, -32612760, 5602785, -8524973, -11006391, 2698313, -6639483, 6706592, 6363531, -21246666,
-235149, 14852534, 2225330, 4355634, 9346386, 3813394, 15499463, 6322729, 3280818, 1039382,
--2245194, 9982578, -19716584, -373662, -1149978, -1808181, 777389, -564788, -149787, -1713692,
--2901251, -3789772, 6135898, 5140539, -2697776, -437013, -9443022, 930397, -590558, -9315784,
--44560, -13819057, -10504953, 4662724, 1758252, 7281580, -8215736, 3536906, 7153268, 1585917,
--309775, 1863479, 3833795, 331786, -2062121, 7586523, 52613, 2474975, -4450660, -3329674,
-3150359, 4554276, 801548, -29248190, -15021111, 2158221, -25696790, 5891085, 18658412, -8981313,
-22680648, 26597122, 3389266, 13286481, 16411070, 7353521, -15735686, 10268193, 12524125, -619549,
-3169686, 8828842, 7815767, 18770618, 3208878, -7240241, 11992086, 4294968, -1858647, 270046,
-8041253, -10976326, -4957466, -4646618, 6709813, 3473555, -15472083, 4568235, 12934294, 342524,
-15587510, -14741402, -27836756, 2222646, 12497818, 18887118, 17526688, 9040906, 8319352, 6658273,
--18913426, -5539434, -787590, 14191646, 22445500, -7758859, 4837744, -8261907, 5311801, 3566970,
-13664975, 21153788, -8152385, -9273371, -1839320, 11589432, 14892799, 20848844, 515933, -22537840,
--21251498, -3471944, 2753611, 64961, -9740986, 217970, -25624312, -16544214, -15140833, -17241610,
-7351911, 2643016, 20651814, 16498580, 6226092, -9874667, -9850507, -9179419, -8329552, -14323716,
-6760279, 4483409, 2654827, 9627706, 10713259, 57982, 9140764, 1874216, 9760850, -3397319,
-8096550, -2589865, -729071, 2399276, -2969970, 13533442, 6102075, 8033737, 3638374, 9635222,
-2162516, 4618164, 13829258, 11984032, 6424734, -775778, -5297842, -4549981, -9775346, -5496485,
--6415608, -3837553, -5916318, -7182259, -4146791, 4173635, 9218610, 2552284, -2155537, 332860,
--1360431, 5751498, 6811282, 5643050, -594853, 2536178, -10414759, 12358768, -27339078, 2462627,
--5461051, 14973330, -8023536, -1259499, 4639102, 11340324, -15260019, -25704842, -4459787, -10079215,
-724239, -11605539, 6832219, 6731825, 678068, -13872207, 8660802, 856846, 23163832, -3708168,
-12688407, -10711648, 23924042, 6888591, 14933064, 10016937, 16291885, 23941222, -5830955, 9286793,
--16748762, 17663590, 17183628, -402116, 5590437, 17298518, -11066520, -10701448, -1756105, 34830576,
-5674189, -9742060, 17308718, 2262374, 13278428, 19071266, 5574868, -1291175, 1810329, 2975876,
-12600897, -4403952, 13513041, -9316858, 13192529, -7292855, 29753922, -4320737, 25589416, -23192286,
--25449292, 35442608, -29653528, -15880105, 1216013, -9557913, -18399104, 16193100, -2139968, -22834730,
--10785200, -11728482, -33570000, -12458090, 4165582, 7550016, -25894358, -6619619, 15746961, -3140695,
-9055402, 15512348, -11057930, -2529199, 2552284, 10127533, 7297150, 7641821, -2486249, -1462973,
-6294812, -543850, -4143033, 3445638, 7256347, 1374390, 5053566, -146029, -4628901, -9664,
-6698002, 2520609, -3365644, -8381629, -5032628, 9833864, -4480188, -13207024, 3185255, -7577396,
--14344117, 16643, 5463199, 515933, -3679713, -1058173, 4005594, -3005940, 246961, 5182952,
--223338, -2396592, -3032784, 9336185, 17965312, 989453, -6230387, -5216775, -2838974, -8434779,
--1731409, -3527242, 3536369, -22944790, -15306727, 4464619, -30002494, -17502528, -20847772, -21212306,
-25851946, -638340, 891206, 7698729, -7537131, -32988570, -24677808, -24171540, -49287972, 3561065,
-5596880, 21298206, 12449500, 7380365, 10628433, 7371238, 2305324, -15557982, -22859964, -13167296,
-17767206, -2248416, -13371844, -5399848, 17403208, -21047488, -13581223, -21619792, -10748693, -1848983,
--20739860, 7713762, -17222282, 18632106, 13068512, -2895345, 12891881, -12681428, -26067768, 11387032,
-15202574, -13458817, -29913910, 22533546, -1945083, 16319802, 13707925, -42788076, -30398704, 284005,
--6942278, 27853400, -15981036, -18475876, -4964446, 10270341, 1569274, -2581275, -9707163, 36984500,
--18153754, -30131880, -40740988, 29203630, -6984691, -33550674, 15621333, 15902116, 9427990, 33706368,
-36063768, 37026376, 15841987, -8418136, -3412889, -5757941, 12287365, -23721642, 15229417, 2893197,
-2967823, 11542188, 11164767, -9801652, 14301167, -11253351, 4764730, -15972447, -9111236, -6219113,
--8290361, -3318936, -8929774, -2241436, 6101001, 16711718, 19448148, 784905, 15249818, -9169755,
-2183991, 8996346, 1180042, -16986596, 2043331, 4119948, -4737886, -12630425, -8107825, -7784628,
-20161650, 12549358, 6491306, 9483288, 16997870, -2725157, -20375862, -12802761, -11742441, -14624364,
--18944028, 3291019, -15903190, -27742268, -599148, -4926865, -6595459, -5277441, 4193499, -27051852,
--10775536, 12608413, 20512226, 41771240, 6848326, 21850646, 10589779, 10550050, -9528922, -3053185,
--8123931, -22912576, -26921928, -37798396, -13760001, -34051576, -13387413, -17824652, -6658273, 18300856,
-4498978, 12454868, 21521544, 33823, 14540075, 4233227, 741956, -490163, -2840584, -28724204,
-10459319, -3581466, -32460826, -20092930, 9483288, -20823612, -7991861, 7591892, 23567560, 28603946,
-9950902, -5936182, 3938485, 19152870, 10247255, 4046933, -563178, -56612500, -11417634, 12539694,
-14375256, 5747740, -2163053, -19079856, 13244605, -17019344, -12834973, -3338800, 3481071, -9458055,
--30238718, 16179679, -3868155, 37638408, 14315126, 12871480, 14464376, 27673012, 62048320, 962610,
-1063541, -2592013, -18471580, 11040213, -12814035, 45129368, -4009352, -16170015, -14554034, 19080392,
--24467892, -16513076, -3216394, 38604776, 1297617, 18426484, 28516436, 5771899, 23087596, 17511656,
--3183645, 16057809, 17401596, 591632, -11876658, -12794171, 3593814, 4419522, 14601815, 9385577,
--617402, -2172180, 2602750, 5948530, -10812043, -2249489, -2643016, -1410360, -16963510, 10707353,
--12307766, 4322348, -2484639, -7356205, 2068027, 20688858, 18098456, 50466, -1199907, -13140452,
--5357972, -13060459, -1933272, -15201500, -21674016, 6379637, 15054934, 1051193, 879395, -7479149,
--11350525, 31688806, -4294968, 5756867, -34678640, -11731703, 40614284, -27066348, -7399692, -23437100,
--69262256, -9828496, 21223044, 17540110, 3343095, 5050345, -3766686, 38821136, -41842108, -21475,
--12064563, -27939300, -23699092, -3506304, 7916162, 6986301, 9330280, 25072946, 16227997, -17723182,
--18075906, 49854908, 40691056, -3255585, 4741644, -5448166, 13247290, -177704, 29036126, 10599442,
-15424301, 4369056, 2226941, -51511152, 21339546, -2196876, -29708826, -15094663, 2919504, -7977902,
--29566018, 28467580, -5041755, -21010444, -4421132, 3129958, 25189984, 28261958, 21449066, 8315057,
-25123412, 26897770, -20198694, -22022444, -14120779, -3569118, 26035018, 34873524, 5956046, 12598213,
-33385854, 20112258, -31328566, 23190676, 8410620, -6846715, 1227824, 64297808, -42545948, 32794222,
-37486476, -37685116, -2213519, -24474334, -7918846, -54159536, 15598247, 24036248, -32646046, 19754702,
--28247464, -20349556, 24699820, -15326591, -2277943, -9192841, 1199907, -13516262, 4181688, 6315213,
--10285373, -14486388, -1138166, -15738908, 20696374, 3773129, -19433654, 4304631, -3264175, -10506564,
--10201084, 6736656, 13197361, 16611860, 6793565, -14847165, 38121056, -6997039, 3799436, -2417530,
--20171314, 7759396, 11009612, -10180146, 16265041, 4205310, 12153147, -2779381, -19509888, 6643778,
-29405494, -19008988, -27253714, -44530220, 8914741, -8654896, -14027900, -18108656, 9941776, -11056320,
--5035313, 29023778, -9028021, -1806571, -22821308, 1699196, 14682346, -32249836, -20189030, -19366544,
--9386114, 11491185, -43206836, -24242406, -62382788, 10679436, -591095, -16042777, -6921877, -9405442,
-13374528, 19857244, -22145926, 643708, -7716446, -7700877, -38979512, 8383776, 29956860, 7721278,
-22663468, 28232968, 25484188, -34398928, -10453414, -10532870, -16012175, 28563144, -29403346, -17162152,
-1028108, 41566692, 9433359, -14881525, 42089604, -23888072, -22246856, 49998252, 48077328, 4418985,
-12237436, -13890998, -45577656, -14243722, 45886892, -22474490, 41586556, -15232638, -65504692, -17491792,
--30641908, 34699576, 303332, 7603703, 31286152, -5219996, 25792890, -33903936, -39712880, 30317100,
--7975218, -67115840, 41303088, -21519934, 11260867, 13340705, -23408646, 44161928, -30317638, 15880105,
--476741, 11600170, 44941464, -11637214, -14214194, 1539209, -9371082, -12409771, -10169409, 4922033,
-10095858, 2317135, -6460168, 5513665, -21422760, 19134080, 13481902, 10713259, 4275103, -2147,
--10028749, -11017128, -10433549, 8959839, 17541720, -17318382, 15209553, 35362612, 11895449, -30495878,
-2923799, 10985989, -11304891, -20182052, 18871550, -17113834, -403190, -1611687, -18178450, -23511188,
--257161, 13186623, -7773891, 30407294, -10256382, -20320028, 14097156, -9087614, 1040456, 11794517,
-23278722, 1546188, -41477572, 24374476, 28457380, -34591128, 18947786, -383326, -12322261, -14918569,
--49515604, -22099754, 17547088, 2934537, 45647448, -36786932, -20591684, 8350490, -4945655, 28989956,
--40511204, -169114, 4241280, -34520800, 34375308, 18591302, 10534481, -16308528, 23552526, -28030568,
-15424838, 11725798, 7279433, -2204392, -15487652, 6214818, 31242128, -16640851, -5939940, 5867999,
--24403468, 24685862, 1002338, 6289443, -33458332, 17816598, 4452808, 5888937, -78553880, 10522670,
--22319334, 36463200, 30423938, 32012002, 16513076, -64174328, -11205033, 13422847, 1376537, 3964792,
-45018772, -6994354, -27090506, -32789928, 1316944, -36442260, -31723166, -28398860, 13529684, -53036940,
-37473588, 71392024, -18808736, -8905078, -55977384, -12510166, 21430814, 12925704, -18629420, -4131759,
--67732704, -24094230, 67977520, 28648506, -21118892, 19597936, -38431368, -28678570, 7476465, 1220845,
-4573604, -26318486, -9058086, -5742372, -49929, -38022808, 8094940, -5126581, -11862700, 4745939,
-15560667, -20886426, -10358924, -3504693, 7392176, -16108275, -4271882, -2997350, -15016279, -46171,
--27772870, 35944580, 11634530, -9756018, -3717831, -10912975, -1559610, 22975390, 6892886, -4551592,
-12074764, -7794829, -34581468, 1332514, 1504849, 7031935, 15229417, -9293772, -6581501, 14795625,
-18089328, 7510824, -16724066, -37165424, -51835424, 14500346, -23047332, -14730664, 15010374, -11988864,
--18591840, 14840186, -24266566, -886374, -27581206, 39594228, 128849, -27958626, -8979166, 1224066,
--3421478, 9642738, -19608136, -12635794, 3730179, 8425652, 4032974, 4387309, 14265734, -16603807,
--7129646, -38916700, 14110578, 4238059, -12592307, 29050622, 15062987, -11161546, 43116640, 10191421,
--27957552, 21219286, 3063386, 13977971, 28302224, -2199560, -7569343, 4974646, 23247584, 13878650,
-42413, -1974611, 24914032, -1815697, -29982092, -4673998, 4975183, 23726474, -10796474, 40537512,
-43865036, -27735826, 22692996, 50219980, -13892072, 76042936, 42273216, -18558016, -17646410, -28126668,
--32674500, -17862232, 9672266, -5275294, -6134824, -634581, -5310190, -52510272, -20875152, -51841864,
-11842299, 47150152, -17890150, -2483565, -25829934, 13028783, 2795487, 9368934, 12694850, 39613556,
--2297271, 18188650, 17893908, -29139742, 909996, 284542, 6093485, 13252658, -2011655, -6629819,
-11928198, -1466195, -7117835, 1899986, -12539694, -2589329, 8675834, 2030983, -5558225, -27880244,
-1142998, -12666932, -1362042, -10624138, 23304492, -7585449, 11223823, 14533096, -11527692, 17467096,
-10718091, 497679, -6352794, -10463077, 2405182, -910533, -6420439, -776852, 11491722, -8750996,
-4866198, -2972654, 8232916, -21994528, 66778688, 17631914, -23911156, 2666101, -31402116, -4121558,
-11013370, -13045963, -16690243, -18615462, -7055021, 7150584, -4110821, -5988795, 8481487, 4882841,
-11496554, -11882027, -7456600, 8546985, -3082713, 1514513, -17359720, 11759084, -20322174, 9735080,
-6700686, -4395362, -919123, 726386, -11803107, 1959579, 2391760, -9422085, 16974248, -9161165,
-4096325, 70867, 572841, 8563091, -8401493, -13056701, -3936875, 19605988, -14591615, 9589051,
--26737782, -15917686, 5043902, -5808944, -452045, -1799054, -16110959, 17024176, 13596256, 1205812,
--11806328, -621160, -7193534, 3471407, -8970039, -324807, -8612483, 6383932, -2405182, 1631014,
-21572546, -18327700, -1598802, 3198140, 1283122, -4015258, 477278, -8724152, 458488, -7322383,
-4410395, 8475044, -13129715, -10927471, 6230924, 754304, -3142842, -10420128, 4432406, 1321239,
--482110, -2423972, 52076, -2450279, 7174743, -4879083, -1378148, 3280281, -2465848, -469762,
-5737540, -3953518, -2589865, -1571421, 1183800, 5884642, -2085744, -6815040, 355945, -4423817,
-15503758, -6379100, 1860795, 3455301, -4005594, 12306692, -1837172, -10864120, 3802657, -6253473,
-7594576, 3652870, -1764695, -770410, -2918430, -3049427, 7495792, -5120138, -2347200, -938450,
--6673306, 8371965, -32304596, -47041168, 32691680, 151848576, 66105988, 69747048, -741419, -140010560,
--101835824, -52546240, -110857400, 53950696, 65667904, 34561064, 142689008, 64560336, -6498823, 47680044,
--92813704, -117711632, -67628552, -82389824, -18107046, 64149096, 65147136, 27655832, 109642464, 54808076,
--7933342, 53119620, -48947596, -83262240, -48168060, -62583580, -98865312, 36531920, -1126355, -35172560,
-105900472, 64144264, 35721780, 108895672, 26029112, -54998668, 53286584, -78509320, -89974200, -18178450,
--94619200, -95583960, 37650220, -15666430, 22939958, 120918360, 82505248, 86261200, 81024024, 10018548,
--45732276, -52470540, -88294864, -115444960, -60819960, -32796908, -24109798, 44282188, 68644848, 64775624,
-91349656, 82804824, -12934294, -14492830, -15042049, -84778360, -25633976, -41703060, -63255740, 14209362,
-25702158, 4279935, 58628452, 26322780, 374199, 36899136, -28492814, -31132070, 703301, -20214800,
--6543383, 15431281, -3323768, 17119740, 22646826, -12503724, 17783848, 7350837, -27704150, 2658048,
--13289166, -52288544, -887985, -13265543, -22468048, 50538880, 14995341, 18995566, 66194036, 26320634,
-19333258, 14615237, -33026688, -48110612, -44724032, -74898864, -61368104, -27285390, 2449742, 33668784,
-76915352, 81548008, 74795248, 66334160, 40880036, -16388521, -47108812, -93791888, -118867512, -91750168,
--55139864, -19489488, 49873696, 92463664, 106277888, 108948824, 52465708, -13139916, -36048196, -44297756,
--57130580, -41292352, -42426224, -34329136, -5100811, 10273025, 16789564, 28822452, 30978526, 28351616,
-25851946, 14023605, 3661997, -4414153, -14708116, -22870700, -22622666, -19403588, -13933948, -8004746,
-2718178, 8898098, 12319577, 12787191, 12302934, 7923141, 4788889, -47245, -448824, -2206003,
--3201898, -4710506, -2464774, -3774203, -4188130, -4038880, -2665027, -5740761, -2375117, 66035,
-2941516, 6598144, 9072045, 6065031, 8182987, 5013301, 1560147, -2833605, -6347425, -10062572,
--8756901, -8764418, -4068408, -513785, 4300873, 5161477, 7738994, 6389838, 5264020, 1903207,
-897111, -2472291, -2388539, -3947612, -3363496, -3054259, -768799, -1487669, 806380, -236760,
-1251446, 922881, 920197, -337692, 2000381, 937914, 2284923, 625992, 963146, 33286,
-119722, -2251100, -1434519, -2835215, -1533840, -1693828, 87510, -198105, 1779190, 962073,
-2161442, 957241, 1504312, -88047, 602906, -891206, -107911, -1233729, -44023, -1045288,
-266288, -641024, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
-4847408,
-2728378, -4322348, -1034013, -1574642, -177704, 6568079, 336618, -2756832, 3404299, 738734,
-314069, 1185948, 685584, 95563, 4875325, 2806761, -3362423, -1244467, -419296, -1131187,
-1340567, 2134062, 1371705, -1387274, -2160906, 853625, -4315906, -1908576, 3176128, 319438,
-2550137, 1360968, -2124398, 1618666, -9127, -1805497, 4474819, -2981781, -1456531, 613107,
-1515050, -2027225, -579821, -2927020, -5905043, 5526549, -1138166, -3023120, 286152, 5083631,
--32212, 1989644, -2545842, -1429687, -1072131, 1588601, -2021319, 4073240, 600222, 3679176,
--5324149, 2274185, -1411434, 921807, 2208150, -874026, -626528, -3868692, -10201, 2149631,
-441845, -1050656, -221728, 1917703, -1032403, -1002875, 2924873, -1313723, 903017, -525597,
--215285, -3608846, -1536525, -956704, 1292785, -235149, -1663763, -242666, -369367, -987843,
-932008, -1189169, 42413, 311922, 585189, 1026497, -471910, -846645, 889595, 223338,
--707596, 157840, 1542967, -177167, -192200, 668941, 15569, 247497, 217433, -448824,
--896574, -456340, 637266, -126165, 36507, 366683, -499290, 474594, -30065, -246424,
-1692754, 13801877, 4707284, -1073205, 3714073, 208843, 6782827, 4291746, -972273, 3514357,
-6088653, 8005819, -4733054, -4596152, 1944547, -1843615, -1561221, 5730023, 4597763, 4415227,
-3120831, 609349, -198642, -1976222, 2161442, 1540283, 7258495, 754304, -176094, -3200288,
-1496796, 2149094, -432718, -973884, -1156420, 1991254, -307090, -1154809, -2683281, 2844342,
--966905, -938450, 3999688, 5719286, -1488743, -680752, 3277597, 2967823, 5204427, 3253975,
-1416802, 555661, 4428112, 2534568, -6150393, 24696, 1862405, -3514894, 72478, 595927,
--4393215, 2245194, -2143189, 3297461, -726923, -548145, 1744831, 585726, -3037616, -251256,
-1655173, -574452, -767189, -857383, 304943, 3508452, 595390, -3496640, -856846, 844498,
--1069984, -428960, 5141613, -1027571, 605590, -587337, -1342714, 1185948, 1898376, -479963,
-850404, 958851, -979789, 474594, 836445, 219580, -659814, -1794760, -587874, -1072668,
--532039, -113280, 551366, -317828, 667867, 398358, -182536, 4761508, -364535, -9010305,
--4183298, -1753957, -1941325, -4908074, -4494147, -2833605, 4886062, -5368709, -2496450, -2553895,
-988379, 8131984, -1215476, -653372, 1997160, 4650913, -7116761, -1169305, 1460289, -3151969,
-2521683, 3974992, -4385699, -278636, 572841, -2561411, -6458557, 1117765, -2716030, 869194,
--2500208, 3693135, -4457103, -4174171, -10254234, -2772938, 3535295, -579821, -3930432, -1947231,
--489089, -4134443, 214748, -702764, 2842195, 2234994, -1056025, 121333, -1043677, -4364224,
-5327370, 919660, 3602941, -1327682, 19327, 928250, 1562831, 4114042, -1314260, -1002875,
-1225139, -123480, 4505958, 2397129, -3883187, -1551557, -963683, -6166500, -685047, -589484,
-3670587, -2368138, 3345780, 565862, -110059, -350577, -580894, -672699, 719407, -2493766,
-1161789, -1441498, 1262184, 1061931, 490700, 299037, 3594351, 2623151, -651224, 3256122,
--435939, -1109175, -1029182, 629750, -225486, 2225330, -569620, 1385664, 1141924, -208843,
-958851, -11274, 1003949, 973884, 297427, 327491, 1086627, 707596, -1464047, -822486,
--145492, 1803349, 2031520, -5906, -204011, 1085016, 19864, -686658, -19837380, -6172942,
--1780801, -1571958, -1686848, 7673496, -7086159, 3421478, -1677722, 1578401, -2047089, -1614371,
--5711770, 954020, -2102387, 450435, -8277476, 185220, -874026, -1458678, -164283, 1567126,
-1219771, -765041, -594853, -3291556, 991064, -2640868, 1716376, 9664, 1461363, 5162551,
--1378148, -5890548, -2553895, -6900402, 927176, 1255204, -656056, 1205812, -2443837, 2323577,
-1160715, -3053722, 234613, -8300561, -1800665, -5550172, 3011309, 5499169, -4869419, -374199,
-1546188, 847182, -7954280, 1326071, 4044786, -3801583, -1840930, -9040906, 3040300, -1305670,
-3709241, 6700686, 3790309, -5383742, 1112933, 1273995, 267899, -5987185, 1518808, -2552821,
-3959423, -1612223, -220117, 1870458, 1599339, 4711043, 5334350, 3665218, -297427, 1354525,
-3168075, 1613297, -3183645, -652298, -2131378, -2119566, 941135, -92879, 493384, 50466,
--650688, -178778, 1907502, -636192, -654983, 54224, -568546, -1420560, 1728724, 66572,
-808528, 2120103, -284005, 235149, -1688996, 1075352, 721555, 170725, -1697586, 554051,
-4832, 1122060, -12294344, 1388348, 2157147, -4355097, -580357, 12023761, 9273908, 5092221,
--1376000, -2136209, 5927055, 3780108, 1873143, 2298881, -4847408, 1686312, 427349, 5676336,
--5417565, -2418604, -1065689, 750009, -1140314, -6166500, -4248797, -4327717, -5203353, 2900177,
-3421478, 2267743, 1494649, 154082, 1458678, -738198, -712965, 435939, -1920924, -494458,
-2675765, 2164127, -4263829, -4663261, -484794, -4677220, 2779381, -1389422, -8028905, 1008780,
-4009889, 5796059, 3929895, 269509, 3709778, -5648956, -1881733, -2496987, -451508, 448824,
-2500745, -1914482, -5271536, 6400575, -5820755, -2712809, 3870839, 9233106, 2112050, 1866163,
--9027484, 9750650, 1098438, 6811282, 10349261, -2247342, 1046898, 1265405, -4327717, 8676371,
-1952600, -2775623, 2312303, -1154273, 4187056, -7041599, -3851512, -7196218, -1479079, -3162707,
-2833605, -1786170, 1162862, -3345780, -945430, -610959, -2258079, -95026, -898185, 943282,
--237297, -896574, -583042, -376883, 1633698, 515396, -1388885, -2898566, 1567126, 1690070,
-215285, 49929, -135291, -1171989, 433792, -767189, 1700807, 387621, 917512, -974958,
--1279363, -2290291, 1267015, 18491982, 13105019, -4699768, -6756521, 10250476, 6760279, 10792716,
-15961709, -8057896, 5572183, 2628520, 4679904, 2050847, 2838437, 6559489, 1702955, 6700149,
-288837, -4310537, 1873143, -1401233, 2335389, -812823, 12414603, 2072322, 2791192, 1661079,
-559420, 4308926, 1907502, 242666, -721555, 3082713, -2314987, 5897527, -4532264, 7103339,
--3286724, 4293894, 2324651, 2622615, 2160906, 10435160, 8056285, 496606, -2172180, -5664525,
-6262599, -6903086, 1809255, -3019899, 3121904, 6534256, 865436, -10942503, -8800388, 916976,
--5444408, -5991480, -3374771, -6907918, 2545842, 11975443, 6091874, -4409858, 360777, 1382443,
--3053722, -3528853, -498753, 5881958, 6626061, -6937983, 3375308, 7677791, 1615982, 2527052,
-3794067, 5983427, -941672, -4083440, 1680406, -1757715, -258235, -3917547, 3714073, 5657546,
-957778, 1014686, 875636, -3964792, -481573, -65498, -347355, 403190, -529355, 654446,
-582505, 1940788, 300648, -31675, 277562, 1248762, 2237141, 1118839, 2364380, 1241246,
-515933, 670015, -381715, -3689377, -3729105, 783295, 2921115, 727997, -738198, 693100,
--390842, 1786706, -1316944, -1303523, -2293513, 1053341, 8210904, 1506460, 11864310, -1090385,
--95563, -3973382, -3121368, 3914326, 8987219, -2659659, 2414845, 590021, 9731859, 3958886,
--4468377, -4216048, 676994, 1982664, 8846022, 8582955, 13183402, 2340220, 3698504, -2354179,
-5398774, 6044630, -2324651, -3063386, 4762045, -3670050, -4994510, 4684736, 1466195, -5873905,
--7109782, 10826002, 5488968, -408022, 6972343, 1314260, -4831302, 10281078, -2382096, 276489,
--214748, 2641405, -3723737, 2641405, -3730179, 2570538, -3462818, 3125126, -2826089, 4265440,
--3572876, -3699041, 9645960, -12071006, 710280, 1395328, -4101694, 772557, -13493714, -6680822,
-6497749, -5426155, 4004520, -1470489, 2712272, 1144609, 2329483, 1393180, -6102075, 3268470,
--3534221, -440234, -7761543, -4253092, -1920387, -1893007, 2250026, 7314330, 4280472, -5946919,
-2312840, 1127429, 80531, -2873333, 431644, -567473, 1469416, 657130, -1476395, -2030983,
--759136, -580357, -1115618, 4225711, 812286, -1647657, -890132, 996969, -1720671, 164283,
-877247, 39728, 255551, -4502737, -1795296, -1133871, 700080, -1262720, -158914, 2826625,
--227633, -767189, -811749, 290447, 898722, -9637907, -8232916, -68183, 3626563, 6692633,
--7795366, 2220498, -7001334, 5782100, 4495220, -9711458, -1966558, 1006633, -11308649, -6488085,
-6948720, -927713, -452582, 1603097, -676457, -11914776, 10903311, 667867, -7657927, -3777961,
-1483374, -1028108, -7359964, -2247879, -4214437, 1198296, -333934, -2388002, 2408403, -10332081,
--4543002, 2632815, 13507672, -2281702, -7881802, -5628018, -4373888, 9141838, -9734543, -1981591,
--644245, -10467372, -12975633, 3173444, -8983998, -1460826, 1380832, 6832219, 3869229, 535797,
-1520418, 8163659, -3503620, -2582886, 12174622, -8135205, 6357626, -2807835, -3000572, -1260036,
--1432372, 12934294, 335007, 5015448, -13303124, -9700184, 357556, -1955821, 14936823, 460098,
-10195179, 4258460, 12741020, 7689065, -1893007, -8866423, -3293166, 5925981, 2624225, 3995393,
--4878009, -5554467, -1501628, -1883880, 2662343, -1386738, -3548180, -668941, -843424, -56371,
--413927, 458488, -1435056, -1999844, 2449742, -199716, 176631, -703838, -1054951, -867583,
-680752, 2041183, -2150705, 463320, -1313186, -1999307, 1414655, -614717, -1822140, -2177549,
--403727, 1990717, 223875, 229781, 775778, 3616899, -3073049, -2595771, -1560684, 264677,
-1481227, -16028818, 1590212, -1646046, 10969883, 1185948, -11524471, 13729937, 4494147, -8193187,
--17735530, -7493644, 17609902, 785442, -2189360, -3029563, 1848983, 489089, 5455682, 2777233,
-5841156, -1353989, 10402411, -5448703, -12185359, 420907, 600222, -3008088, -411780, 4479114,
--3106335, -1970853, -1033477, 9667971, 7616588, 3822521, -690953, -13412646, -226560, -802622,
--525597, -2320893, -186294, -5933498, -10824391, -1812476, 7493108, 7148973, -2705830, 7688529,
--2491618, 3255048, 8601746, 8086887, -18089866, 6095096, 6559489, 2592013, -4393215, -16005732,
-9658845, 5568425, 3101503, -5788542, -3148211, -6540162, 3579318, -7243463, -1303523, 2684,
-6500970, -4148402, 3317862, 1668058, -11601244, -1727114, -7750806, 12602508, 5917928, -15084999,
--3160559, 11724187, 5917391, -6289443, -3067144, -6934762, -2290828, 3411815, -2071785, -949725,
--2593087, -3398393, -5685463, 973347, 449898, -1956895, -579821, 2785823, 1963874, -3722126,
--1276679, 2508261, -704375, 1887101, -2375117, -1777580, -471373, 399969, 3039763, -3374234,
--2314987, 1500554, -3693135, -424665, -2611340, 1437740, -2078764, 3392487, -1267015, -769873,
--1838783, 2110440, 1493575, 3880503, 1133871, 9986336, 12135430, 12493523, 9516037, 12251931,
--15390478, -10020696, -5324149, -4956929, -7379291, -5608154, -12352863, -4151086, 812286, 7386807,
--24696, -7025493, -347355, 7383586, 343061, -6056441, -2873333, 16752520, 1609002, 6322192,
-1914482, 6947110, 1395328, 2281702, -10294500, 5775658, 373125, 2414845, -10788421, 3768834,
--16563005, 32212, -5246303, 4143033, -1525787, -12052752, -302795, -11995844, 2196339, -9960566,
-9123047, -5141076, 14347875, 490163, -272730, 7277285, 1547799, -2231236, -2118493, 2972654,
--4912369, 3435974, 8854075, 4578972, -6593849, -3401077, 18983218, 1504312, 15142444, -13986561,
--2952253, -1433445, 11017665, -12194486, 1733019, 5927055, -12182138, 8571144, -7649337, 2290828,
-11850352, 1343788, 6678674, 3223910, 15485505, 6768869, -6414534, -4987531, -6178848, 1006096,
-599148, 6582038, -3862786, -663572, 4258460, 374199, 3287261, 4536023, 630286, -3510599,
-4297652, 3365644, -405338, 1413044, 1451699, -1500017, -1271847, -4999342, 3409667, -2350421,
--2265595, -912144, -2627983, 2576444, -1785096, -523986, -2815351, -607201, -623844, 3668439,
-2570001, -28454, -559420, -121870, 2047089, 2545305, 2171643, 4690105, -511638, -1702418,
--4510253, -15489800, 2456721, 14837501, 11341935, 12103755, -3919158, -3267396, 3210488, -2243047,
-15291157, 4951561, 7366406, 12644921, -767189, 4667019, -8506183, 12599287, 6510634, -3300146,
--7630547, -7347079, 8689793, -14841796, 5924908, 8396124, -5996311, -8322573, -4535486, 7830263,
-3127273, -3073586, -5237713, 25770, -8925479, -13743358, 2650532, -13191992, -19387482, -2530810,
-916439, 19738596, -8385924, -6820408, 8979166, 14529337, 14766098, 7718593, -732292, 3328063,
--6143951, 1070521, -6447283, 16261283, 14548665, 9280351, -511638, -16732656, 47245, -14296336,
-15868830, 12168179, 7734699, -11870753, 9904195, 5516349, 6899865, -2249489, -9885941, -7325067,
--7881802, 2691334, -11136313, -20672752, 4183835, 13971529, 7531762, 13719199, -4066260, -3808562,
-14005351, 4606353, 1991791, 9212168, 3168612, 252329, 8064875, 4989679, -626528, 3621194,
-3559991, 2081985, -2523830, -4563940, -5916318, 1610613, 3992709, 2257005, 8129300, 209917,
-5823976, -1799054, 2450816, 4536559, 728534, -2064806, -1133335, -6645388, -5611375, 2026688,
-1554778, 2675765, 7071664, 1054951, 5401995, -1974074, -1054415, 947040, -4998268, -3983582,
--1373853, -4273493, 2155537, -1386738, 1767916, 3933116, 5571110, 7875897, 12444131, 26910654,
-11894375, 9415642, 8695698, -16604344, -2662343, -6053220, 21210696, -21572010, -20540144, 5902359,
-13826037, -361851, 16920024, 15422691, -789737, 5950677, -10239202, -7323993, 16080894, -6339909,
-11031623, 3945464, -7235946, -3729642, -3240016, -3537443, -7547332, 6286759, 6636798, 5615670,
-464393, -8362302, -10834055, 13965623, -13780403, 10817949, 935766, -16893716, 8461622, 16136729,
--389768, -4360466, -2107755, 1327145, 864899, 11014981, -642635, -8249559, -3512747, 9374840,
--17116518, 4133906, -2924336, 13881871, 14562087, 9783399, 11383811, 15090904, 10766409, 3956739,
--9865540, -11028402, 5271536, 7370701, -598074, 6387153, 8621073, 22991496, -13033615, 14554570,
--8686034, -5490579, 15738908, 2426657, -9507984, -8210367, -8777839, -14155138, -4908074, -6910066,
-11276974, 297427, -9134859, 4988068, 3084324, -1915019, 5258114, -10788421, 6996502, 483184,
--1075352, -1139777, 5936719, 1059246, 1517197, 6285148, -2666638, 1046898, 4513474, -6897718,
-4819490, 304943, 1757715, -3070365, 3831111, -1358283, 397284, 5367099, -39728, -1264331,
-1303523, 3628174, 4485557, 7611756, 6124624, 2280628, -3572339, -2896956, -10849624, 2410014,
--9045738, -2636573, -3972308, -3676492, 4199941, 1643899, -4349728, -17884244, -3197603, 10413685,
--12848932, 411780, -8085813, -14127758, 20549272, 17574470, 14686641, 6967511, 3824669, 5784784,
-15084999, 8338142, 15465103, -5726802, 12952548, -9760850, 15687905, 21079162, 13211319, 10537165,
-5360119, 10883447, 10958609, -3257733, 21811454, 5238250, -13164075, 6241661, -13327820, -9163313,
--2736431, -20721070, 349503, -4419522, -5624797, -10075456, -5245229, -2896419, -653372, -2046552,
-892816, 863288, -11899744, -7858180, 2457795, -6284611, 4932770, 20401094, -10294500, -835908,
--1945620, 748398, -9760850, 5250598, -4692252, 15789374, 3355980, 9427990, 14766098, 2514167,
--986769, -9751186, -21696028, 2855080, 16140487, 11710765, -3060164, -14464913, 12175159, 1272921,
-7332583, -18517214, -13290776, -12197707, -18356690, -11374684, -13430900, 6242198, 1982127, 4685273,
-6123013, 8460012, -4146791, 8610873, 9804337, 295816, 5270462, -3161633, -6513318, -6717866,
--7051263, -2836289, -5141076, -328028, 1549410, -693637, 464930, 1292785, -5965173, -5530308,
--9444096, -3250753, -2190433, -5268315, 2077154, 769336, -2789581, -8556649, -3929358, -3167002,
--2202781, 7113540, 2180233, -3126199, -3937948, -1449552, -10248866, 2784750, -2085207, 5284958,
-609885, -3240016, -6039798, 6295885, -4139812, 9009768, -30701500, -19654844, -9352291, 21930640,
-15969225, -11892764, 13681618, 12348031, 10527502, 10308995, -10309532, 1038308, 5938329, -10254771,
--30947924, -5662378, -8601746, -18981072, 1693828, -6489159, -4876399, 5778342, 3424700, -4242354,
-883153, 14472966, 15475841, -28539520, 6747394, 1423782, 13156559, 4461398, 682363, -17789218,
-5381057, -4587025, -4975720, -12247636, -9129490, 22808424, -10421201, -449898, 2668785, -6080063,
-25210384, 11955578, -11310796, -6848862, -19837380, -2898566, 18830748, 5501316, 5645735, -6253473,
-11470784, -2769180, -5060545, 10580652, -6376953, 17574470, -4225174, 13079249, -26850524, -9117679,
-15244986, 3716757, -2554969, 4259534, -29707752, -14057428, 4401268, -11871826, 4421669, 1147830,
-3182571, 18107582, -6907918, 7273527, -1552631, -14816027, -2683281, 11119670, 16057272, -575526,
--6910066, -12570832, 212064, -17528298, -5823439, 1453846, 20411832, 18281528, 2357937, 7645579,
-2156074, -3133716, 10030359, 7631083, -4199405, 8381092, 6217502, 3318936, -7244536, -562104,
--3840238, 6095096, 4132296, 5413270, -634581, -8449274, 7708393, 286152, -4088272, -8232379,
--583042, -736587, -7896298, 5322538, -5797669, -8979166, 9846749, -4100620, -3608846, -4579509,
-2030983, 1349694, 7841000, 1689533, -1591822, 3256122, 4763656, -9100499, 2259153, 2474975,
--3701188, 5568425, -13370770, -38436736, -3257196, -4641249, -4161823, 5878737, -15334644, 30113626,
--5499169, 1320703, 33229088, -39130372, -4067871, -7676717, -3728569, -44818520, 2499134, -6965900,
--8659728, 15152645, -15379204, 2319282, 2937221, 7199976, -1408212, -16369194, 11169599, -10769094,
-23280334, -4058744, -26388280, -1999844, -886911, -13375602, -26585848, 11883101, 13543106, -22324704,
-18185966, -20197620, -15653545, -9700721, 1763621, 1549946, 3006477, 12786118, -2430952, -12331925,
--28983514, 5836861, -39183524, -20908974, -13464186, -31493922, -18590766, -9140227, -1913945, -14833206,
-22468584, 23010824, 5151277, -7052337, 25527138, 11411191, -2889439, -5846524, 18389440, 13449153,
--6240051, 24193014, -20359756, -10549513, 26591754, 12395812, 37288908, -20441360, -22858352, 5832566,
--17370996, 18662170, 2062658, 6436546, 35458176, -19607062, -20866024, -7788387, 7416335, 7998303,
-8980240, 8986682, 10324565, -10970957, 4385162, 1602023, -699543, -1323924, -7224672, -5881958,
-10413148, -11235634, -476205, 2209761, -5314485, 1346472, -5449777, -447750, -502511, 2278480,
--8852464, 4525822, 11281268, 3266323, 2799245, 12308303, 9186935, -905164, -11800423, 10880763,
-2885144, -4164508, -8764955, 11297375, 1812476, 317291, 7020124, 8749385, -11190537, 5836861,
-3802657, -8138426, -3234110, -12627741, 8066486, -1536525, -14253923, -7118909, 3527779, 29916594,
-16939888, -2763812, 40373228, -4658966, 16525960, -19099720, 23525146, 22255984, -2118493, -17865454,
-1790465, 6454262, -10075993, 10555419, -14660334, -242666, -4578972, -4786204, -16650514, -12108587,
--7636452, -1021129, -5469104, -13008382, 19192598, 13236552, 3467649, -5407364, 3175055, 18575734,
-8634495, 13647795, 8476118, -10179072, -15855946, 31769336, -4285841, -17381196, -7368017, -7471096,
--4280472, 22989886, 860604, -17735530, -6900939, -44074956, -10983305, -5173825, 27018028, 18740552,
--53691388, -23076322, -13164075, -279710, 2552821, -21389474, 15606837, 8412230, 13563507, 26854284,
--35273492, 34366716, 24542516, -11177116, -23737748, 1495186, -6030134, 9143449, 31148714, -16221555,
--18292266, 25511032, -30205968, -33647312, -13702019, 3437048, -9794136, -36872296, -15070503, -11926050,
-401043, 2015413, -10722386, -748935, 1414655, 438624, 2962454, -23309862, -8370892, -7725573,
-1313723, 6507413, -1919850, -7457674, -4532264, 2472291, 11695733, 12703976, -1969779, -11044508,
--3075734, 16164109, 752693, -4217121, 3161096, -21951040, -6675453, -10360535, 1232656, 3784403,
--21505438, -21700860, 5184026, 18857590, -8332237, 12338367, 3580929, -6088653, -2005213, 5002027,
-3552475, -1794760, 3526168, -632971, 28068148, 3775276, 10559177, -21904870, -34579320, 49984828,
-25046638, 2274722, 3297998, -11239393, -29407104, 10333154, -2265595, 25245280, 5671505, 9377524,
-27699854, 15315853, -279173, -2936684, 4713190, -16852914, -13835163, -17918604, -9968619, 16623134,
--4502200, 1068910, 20812874, -3547643, 9160628, -28822452, -25859998, -17561048, 15039902, 6118181,
--898722, 6885907, -9108015, -25912612, 32813014, -31081068, 14404247, 14813879, 11719355, 5223754,
-19903952, -12765180, -31738734, 23548768, 66781908, -11733851, 32350768, -38788388, -20854214, 24015846,
-14133664, -36010616, -10060961, -3018288, 31381178, -7759396, -3293703, -48974440, -31392990, -11236171,
--35878548, 30100742, 32163936, 50610284, -44697724, 19278498, 5721970, -24899000, -1321239, -1167694,
--51644296, 36929740, -15251966, 17441862, -5189394, 2883534, 70182448, -18914500, 24434606, 16068010,
--16836808, 30540976, 92342, -5873905, 2002529, 7885560, 19870130, 12083354, 7992934, -687732,
-18822694, -17503602, -8477192, 1480153, 4823785, 8674223, -4643934, 15089831, 2187749, 6706055,
--2782602, 11432666, -803159, -16752520, 9793062, -20580410, -11992086, -4787278, 8987756, -2201708,
-10700374, 24064702, 37354940, 26823682, 7563975, 17251274, -9786083, 8768176, -447750, -768799,
--1395328, 3582003, -7514582, 10538776, -10030896, -44479220, -25451976, -774705, -6907918, -14810121,
-5273146, 14535780, 1343251, -15662135, -943282, -15008226, 40893996, -12462384, 794569, 31255550,
--1894081, -31774168, -22350472, -21674016, -9809168, -11474542, 34046744, 3684008, 5495948, 17182016,
--9513889, -9403831, -5887327, -9590125, -20993800, -4762582, 39050916, 12783970, 9175661, -25910464,
-9470403, 2175938, -18690088, -2031520, -9433359, 42661372, -33772940, -28905130, -10368051, 5435818,
--10154913, 1426466, 11349988, -22011170, -6077916, 36153960, -29159606, 5225902, -7402376, -17522930,
--30917322, -23404350, 1017370, -42753716, -51969640, 12426951, 10499584, 8444443, -46448996, 35894116,
-43343736, -14642080, -12703440, 2824478, -1926293, -9686762, -24185498, 17548700, 65471944, 17133162,
--16317118, 423054, 10303627, 21982716, 5816997, -38712688, -34720516, 37596532, -7285875, -15250892,
--22715008, 7877507, 42765528, 13217225, -13653701, 7988639, -1761474, -7551090, -3844533, -2214056,
-18876382, 10563472, -6537477, -10419591, 8499740, 5049808, -1676648, -4275640, 6862284, -10084583,
-6229313, 16497506, -1583232, -9038222, -2799245, -5803038, -10011569, -18358838, 2628520, 14092325,
--9449465, -11570105, 5689758, -14454712, 46708, -23540716, 11285027, 14723148, 37531036, -11932493,
--5134634, -15531139, -15964393, 4523138, 8271570, 15637439, -1877438, -3370476, -15736760, 6341519,
-3897683, 4731980, -4646618, -982474, 9900973, 11458973, -14221710, -37426344, 10340134, 14659797,
--55488292, 30403536, 1290638, -15786152, 5302137, 20260434, -28684476, 17723720, -26636850, 7205345,
--1557999, -13402445, -7469485, -3618510, -19615116, 14056354, 12276627, -558883, 6765111, 865436,
-10858214, 14191646, 13704704, 20348482, 17464410, -10805064, 2710661, -22185654, 23516556, -18188650,
-5749888, -3502009, 4785668, 1156420, -16820166, 15290084, -8531953, -16244640, 34068756, -27269284,
-8178155, -7863012, -13565117, 13755170, -3561602, 4081830, 21223044, -25671020, 1026497, -31454192,
--61982820, -1581622, 19732690, -7444252, 79639432, 16215649, -31143344, 8749385, -43444132, 15079093,
-31051002, 36697276, -12637941, -7243999, -48299056, -55346024, -4677757, -34506840, 8151848, -2183454,
--30138860, -7057705, -14936823, -32971390, 26984206, 53130892, -14940044, 3741990, 11436424, -14103599,
-16412681, 20941724, -14585172, 2424509, 20938, -26468272, 13182865, 2221035, 8000451, 9668508,
--18728742, 7306276, -9953587, -15015743, -17027934, 14433238, -10581189, 5925981, -16463147, -5941014,
--1157494, -20051054, 19586662, -12716324, 3887482, 5974300, -18708878, -3058554, 14354854, -1719598,
-2012192, 3188476, -5492727, 8827232, 18541910, -2240362, 10754598, 12703976, -15914464, -30154428,
-10158671, 4199941, 17368310, 20832738, -27278948, -26776974, 4653597, -7870528, 4741644, 9076340,
-4943508, -39546448, 8159364, -2888366, -23034984, 10358387, -14954539, -10118943, -18592376, 9470940,
--20248624, 25924422, -2752537, 9588514, -5976447, 34825744, -9465034, 19117974, -311922, 22795538,
--6367826, -11540040, 7449084, -13058311, -13779329, 1852205, 25956634, 16672526, -17676474, 18856518,
--13260175, -20321638, 5719286, 27742804, -10687489, -11338714, 14843944, 6640557, -13841069, 1525787,
-18882824, -7901129, -18187576, 9878425, 7563438, 11585137, 21260624, 4436701, -12855374, -4248797,
-46719044, 49070000, -13590350, -40687836, 31162672, -13623636, 8775155, 4394826, 52605832, 7207492,
--27340152, -10009958, -6644852, 1454920, 8119636, 12677133, 17078400, -20345260, 6501507, 4596689,
-30485140, -7635915, 21470004, 23105850, 12776454, 11008001, 6637872, 18395882, -17683990, 19797652,
-25190520, 18174154, 3047279, -35755604, -5367636, -23066658, 1042603, 15457587, 5173825, -7895224,
--12584254, -7367480, -2032593, -927176, 6521371, -7420630, 1977833, -787053, -5639292, 10869488,
-4206921, -9774272, -4642860, -2521683, 13258027, -22012, 2684892, -12816719, -9204652, -16997334,
--8036958, -1051730, -1660005, 215822, -3009698, -15235323, 3875134, -5215164, -2545305, 2247342,
--4301410, -227633, -13244069, -3153580, 500901, 194884, 227633, -3376381, -3379603, -1166084,
--5284421, -7432978, 55439436, 23372138, -25103546, 6090801, -26223996, -14164265, -1843078, 9511205,
--4227859, 20367808, -24256902, -715649, 9503152, -777926, 9884867, -1408212, 3437585, 2359011,
--17396766, -5414343, 4512937, -16155519, -16352551, 1405528, 4151086, -11479911, 8196945, 7994008,
--4897874, -8105677, -1343788, 1796907, -2893197, 6872485, 1714766, 5419712, -7189776, -3000035,
-12649216, 40265, 613643, 6161131, -4137127, 6813429, -6514929, -11993159, -7846905, 12444668,
--9904195, -7223598, 733903, -9751186, -10598906, 15133317, -15064061, 23905252, 5204427, -10557566,
-10426033, 1687385, -17727478, 1575179, -3196530, -3075734, 8376797, -244276, -10412611, 20339354,
--12210592, -4702989, 10492605, 3406446, -4450123, 548682, 3230889, -311922, -876710, -2075006,
-4650913, 8464844, -345745, -14053670, 10059350, -7236483, -1108638, 12071006, -814433, -3662533,
--513249, -10386305, 5016522, 3626563, -1178969, 253403, 4227322, -10113574, 718333, -3451006,
-1001264, 4215511, 1054951, -4286914, 9917616, -15090904, 1957431, 1807644, -1097364, 1892470,
--2248416, -8512088, 9386651, -4347581, 6698002, 133144, -1125281, 8888435, 3285650, -7402913,
-2776160, -3722663, -3259880, 1722819, 5586679, 5735392, -2270427, -7308424, 3721052, -4150549,
-5055714, -33692408, -40260488, 33934536, 138030048, 53842784, 63384592, 744103, -129016520, -95211368,
--49600968, -75897440, 34105260, 65138012, 27015882, 115242024, 65383896, -4460324, 27218282, -58446452,
--117563992, -47079284, -81627464, -13187697, 56721484, 47576428, 43279848, 71779104, 44463112, 12072616,
-19850802, -5484137, -83632680, -37132140, -30062086, -115817552, 21548924, 15032922, -51282984, 83194056,
-82553032, -2950643, 104424616, 51164336, -48380124, 32235340, -48099340, -100430296, -7873749, -60723860,
--87679608, 15362024, 9467719, -5390184, 81905560, 78754128, 47201152, 70086888, 42762840, -27472222,
--30714384, -54899884, -93744640, -69385736, -32965484, -31121870, 16892644, 52811456, 36272608, 58036284,
-87954488, 34027416, -11503533, -11170136, -60749628, -49274548, 4553202, -56537876, -25542170, 30397094,
-7582765, 38094212, 30831422, -15880642, 10304163, -3355443, -20959440, 4452808, -9340480, -9687836,
-19468550, 6544457, 8259222, 25673704, -14840723, -5976447, 14081587, -19501300, -15810848, 7119982,
--46176804, -7902740, 15870978, -37455872, 18251464, 23038204, 2499134, 58191440, 55586540, 12547210,
-22572738, -16465831, -49649284, -25152940, -66085052, -75278432, -42556684, -18362596, 14221710, 71278200,
-82874616, 86561304, 77101640, 43761960, -9618579, -48790292, -76794016, -107399952, -91669096, -50736448,
--13107703, 42878268, 77457048, 77020040, 69096896, 44627396, -8495445, -14242112, -22263500, -33864208,
--23936390, -21363168, -24946244, -13806172, -7085086, -6381248, 4862977, 14090714, 19130322, 24723442,
-23032298, 17706540, 7861938, 628139, -9373766, -14001057, -18262200, -19474456, -19316616, -8223789,
-614717, 6662568, 6604586, 9985262, 10718091, 11385421, 8237748, 2327336, -1110249, -702227,
--4121558, -3486440, -3197603, -6143951, -7156490, -1592359, -2497524, -1760937, -1137630, -843424,
-2638721, 7115150, 5375152, 5545340, 5408438, 3035468, 875636, -1122597, -5516349, -6068252,
--6627672, -4920959, -2943663, -189515, 726923, 3082176, 4450123, 4684199, 2326799, 1520955,
-382789, 314606, -493384, -860604, -1682017, -575526, -962610, -799938, -1381906, -1335735,
--1725503, -949188, -1247151, 622233, 1688996, 3003793, 2822331, 2683818, 1402844, 962073,
--914828, -1541356, -2136209, -2368138, -2803540, -1040993, -769336, 215822, 470836, 1174137,
-947040, 1707786, 819265, 982474, 197032, 193810, -653909, -222801, -752693, -134755,
--380641, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
-547608,
-3428458, -4665408, -3816615, -642635, 3676492, 5444408, -2568927, 3183645, -1767379, -4513474,
--1250909, -2518462, 1476932, -612033, -2196876, 2015950, 3032784, 693100, 3668439, -6729677,
--7293928, -4668630, 667867, -6979, -1255204, 362925, 2213519, -717260, 2992519, 2491618,
--3192235, 1222455, -248034, 3899830, 3576097, 1364189, -3820374, 2509335, -2279554, 1281511,
-2490007, -6076305, 6642167, 9780714, 1269163, 4438312, -3607236, -715649, -3386582, -1743757,
-3016678, -1000191, -3502009, -914828, -2208687, 1694902, -2153926, -1938104, 186294, 1797444,
--1787780, -1996086, -879931, 3482682, 3115999, -2629594, -981400, -3109556, 708670, 4134980,
-1136556, -1498407, -1979980, 1562831, -563714, -2797634, -1035624, -1884954, -282931, -1005022,
-1620276, 1538672, 810138, -890669, -1255741, 2792266, -387084, 769336, 1431835, -401579,
--49392, -563178, 837519, 125628, 202400, -799938, 104153, -244276, -819265, 53687,
--136365, 614180, 1452236, -799401, 329102, -143345, 700617, 887448, -223875, -344671,
--195958, -29528, -794032, -312459, 337155, -283468, 134755, -1074, 637803, 157840,
-72478, 15035070, 6910603, -514859, 3140158, 2863670, -3610994, -1760937, 4161823, 1902134,
-4530117, -3291019, 6590091, 2484639, -6516539, 5173288, 268435, -110595, -3442953, 3787088,
--7044820, -6032282, -1301375, -2140504, -1176821, -2150168, 806917, -1302449, -2934537, -2108292,
-2439542, -2665027, 1700807, 1087701, 675921, -2942590, 4130148, -8657043, -1534914, -40265,
--1530082, -1081795, 734439, 1624571, -2792266, 2217277, -3380676, 3229816, 1006633, 711891,
-3309809, -2338610, -579284, 1353452, 5186173, 1293859, 2166811, -1192927, -4529580, -6298570,
-1143535, 3428458, 4452271, -1826435, -7065758, 1053878, -2899103, -1961190, -1648194, 1959579,
-189515, 6897718, -222265, 2325188, 1334661, -1038845, -1811939, -1917703, -7218767, -2110977,
--1195075, -974958, -1395864, 1344325, 3590593, 1012002, 3405372, -33823, -340913, -1089848,
-923955, 1251983, -361314, -1391033, 1196685, -714038, 460635, -605054, 614180, -1029718,
--655519, 981937, 300648, 556198, -390305, 344134, -676994, 8123931, 1855963, -6810208,
--7783018, 2151242, -2389076, -6400038, 7269232, -3557307, -1216550, -972273, 5695127, 1226750,
--3338263, 4035659, -3134789, 6087580, -8407935, -5510980, 6653978, -6947647, -7059853, -2804614,
-5682779, 2520072, 2706903, -652298, 5088463, 3114388, -559420, -6738804, 1797444, -1863479,
-2400350, 2157147, 1809255, 5875516, 1539746, -5764920, 498753, 4031901, 5873368, 2000918,
--3268470, -755914, -4805532, 2048163, -8498130, -323196, 9105868, 497142, 944893, -4682051,
--5839545, 896574, 1231045, 6728603, -1500017, 583579, 671089, -989990, 653909, 2238752,
-362925, 4733054, -1320703, 3144453, 427886, 851477, 530965, 5550709, 193810, -772020,
-987306, -1182190, -3790846, -1997160, -3907347, -88047, 6946573, 1466195, -2326262, -784368,
--4027606, 2268280, -3162707, -2192581, 717796, 116501, 193274, -1800665, -2589865, -527207,
-589484, -857383, 1420024, -163746, -45634, 1430224, 852014, 1440425, 1147830, -17180,
-429497, -1171452, 20938, -1039919, -1160178, 781147, 891743, 1650878, 1154273, -803696,
--251792, 871878, -689342, -1266479, 667331, 177704, 9664, 161061, -18677202, -12108587,
--2736968, 2077154, 2938831, 365609, -83215, -7059853, -498216, -1500017, -1248762, 204011,
--1868848, -772557, -5318244, 2775086, -11124502, -4000225, 932545, -2177549, -3441880, -1894081,
--6356015, -3150359, -2676302, -2946885, 1332514, -4833986, -2741800, 6080600, 3876745, 448824,
-2840047, 2171643, -2039573, -4007741, 2340757, 9058086, 961536, 1170379, -3616899, -3138547,
-2589865, -7684770, -4173098, 8600135, -7889318, 2404108, -1928977, -3907347, 1745904, 616328,
--2240899, 547071, 1249836, -2669859, -39192, -496606, 5216238, 4725001, 626528, 1302449,
-2224256, -114890, -1096827, -1782411, -10932302, 5301601, 3213173, -2918967, -187368, -4507032,
--1307281, 687195, -3395709, 1549410, -4105452, -2203855, -4768488, -6926172, 4510253, -1284732,
-132607, -5847598, -1544041, 802622, 902480, -1510755, -346282, -283468, -1700270, -3006477,
-411243, -1523640, 1235877, -201327, -845572, -586263, -396748, 1531693, 180926, -2216740,
-348966, -639413, -266825, 765041, 258235, -548682, 452582, -1733019, 869731, -1572495,
--583042, -2055142, -16143708, 2534568, 3719442, -957778, -1463510, -8850854, -3696893, 2500208,
--8004746, -7565048, 1508070, -7192997, -3781719, -126702, -4424890, 2529736, -3496640, 5499706,
--2915746, -1825361, 1673964, 3864934, 6995965, 4459787, -7885560, -365072, -622233, 3928821,
-5761162, 9916543, -4417911, -3812320, 5071283, -5322002, 1214402, 1607928, 8293045, 3114925,
-4614943, -6133750, -2770791, -8397198, 6663642, 7072201, 8027831, -63888, -1759863, -5334887,
--1158031, 5480379, -2536715, -3413425, -3227131, -4174171, 894427, 1061394, 1251446, -5735392,
--96100, -5617817, -324270, -785442, 2299955, 2066416, -1758252, -2513630, -7215008, -355945,
--588411, 4503810, -2791729, 7441568, -4213363, 985158, 3412889, 6767795, -5188858, 1617055,
-3508988, -5956583, 3015067, 66572, 7416872, 2541547, 1661616, 4627828, -459562, 1316944,
-3511136, 1487132, 43487, -1227824, 64961, 1547799, -470299, 1947768, 2882997, 2420751,
--1075889, 1374390, 195958, -709207, 1164473, 1583769, 15569, 763967, 1857037, 1423245,
-1502702, 782758, -701153, -1124208, 1440425, -1211718, 1436130, -668941, 130460, 1844152,
-1376537, -348966, 1018981, 20033874, 16944182, -488553, 383326, 9005473, 1087164, 4474282,
--2786897, 4999879, -3879429, 9090298, 2945274, 139586, 1706713, 751619, 11224897, 7788923,
--7562901, -6069863, 2289755, 1325534, -2507187, -1489817, 1316408, 5567352, 3918084, 2609730,
-461172, 2998424, -2017024, -24159, 6130529, -6743636, 2636036, 8475044, 6141803, 11476689,
--1238561, -1601486, -1110786, 841277, -3744675, 12461311, 11187316, 8204998, -3881577, -1000727,
-4688494, 4042638, -3572339, 894964, 6352257, -2295123, -3149822, 4241817, -12111808, -1270237,
-543850, 1887638, -4178466, -7716983, 3082176, 5485747, -6496675, -2252174, -7054484, 2707440,
-368830, -1337346, -1609539, -5929203, 10019622, -2547989, 1245541, -10191421, -2566243, -4804458,
-11937862, -2009508, -1773285, 5486821, 2364916, 83215, -3964792, 3684545, -2648384, -3477850,
-5472862, 5320928, -194884, 3365644, 1611, -1371168, 2849711, -349503, 1041530, -850404,
--1424855, -221728, 2192044, -1603097, -1422708, 32212, -1864553, 731755, -1692217, -805306,
-35433, -182536, 2178622, 175557, 558883, 1566053, 1357210, 490700, 647466, 1310502,
-2942590, 680215, 2767570, 585726, 1314260, 2194192, 13122736, -518080, 8298414, 11312944,
--5966784, -13950054, 599685, 10597832, -8193187, 7439957, -2200097, -10096394, -4640712, 10156524,
--9910637, -8769786, 6402186, -10139881, 3395709, 4828617, 3995393, -2880313, 6158983, 1725503,
-1174674, 3944391, -6451578, 8818105, 4365298, 3826816, -1797981, -988379, 16469589, -5762236,
-1045825, 4276714, 8301098, -11250667, -9233106, -8628052, 359167, 634581, -550293, 5231270,
-1656247, 9340480, 3788161, 5473399, -851477, 731218, -4589173, 8348880, -3751117, 8236137,
--4461934, -7103339, 12283606, 9953050, -14059039, -12435004, -8143795, -6391985, 4468914, 704912,
--2820720, 6486475, 7183870, -8578123, 5086315, -690953, -17143898, -5671505, -8626979, -7853348,
-3011309, -2669859, 5679021, -1293859, 885300, 10282689, 10504953, -964757, 2791729, -904091,
-1668058, 1487669, -3500935, 2955474, 900333, -125091, 8872866, 2664490, -22012, 274878,
--1535451, 2621004, -246424, 1730335, -1868311, -91805, -1972464, 551903, 2342905, 740345,
-37581, -259846, 2055679, 1312649, -1225676, 192737, -10201, 322659, 1067299, 470836,
--794569, -963683, 330176, 597537, -71941, -7409893, -10473815, 6300717, -6036040, -4371740,
--3761318, -12099997, -1306744, 5452998, -3313567, -696858, -4463008, 10037875, 1516124, 6407018,
-4836133, -8022999, 8251169, 12431246, -3824669, -5026723, 1307818, -2116345, 5327370, -15292231,
-5848672, 13313325, -1788317, -4308389, -3806952, 5811091, 11869679, -2784213, 2981244, -5268851,
-8125542, -9780177, -3782793, 1946694, -1555315, -7580618, 14006962, 9927280, 7388955, -3085934,
--10587094, -1263794, -15031849, 2631204, -1109712, -442382, -330712, -2226941, 8120710, 6928319,
--10447508, 5868536, -6262063, 8665097, -807991, -1712618, -732292, -9102109, -1761474, -8301098,
--18473728, -802622, 2145336, 1493038, -7101192, -205085, -2041720, -13753022, 265751, 12009265,
--7580081, 3169686, 3894999, -1483911, 836982, -3509525, -2109903, 2845953, 3395709, 3789772,
--966368, -2370822, -930397, -2550674, 2101313, 1070521, -2189360, -596464, -2014340, -2148021,
--301721, -1927904, -2988224, 1863479, -632434, -2249489, 1794223, -1566589, 1477469, 2306934,
-948651, 2217814, 1536525, 4295, 1451699, 4971425, 2370285, -2429878, -1701344, -2794413,
--2147, -3624416, 1919850, -186831, 2813741, -723165, 2190970, -351650, -1566053, 4692789,
-2236067, -19389092, 1363115, 11301670, 6173479, -8837432, -7182259, 14168023, 3275450, 3180960,
--2792803, 3662533, -144955, -9483288, -2471217, -9960029, 4708358, -5936182, -906775, -9705552,
--10737418, -14440217, 9030169, 6089727, -4632122, -5153424, 4053912, -13262322, -1212255, 991064,
-3199214, 5818070, 2842195, 364535, -4590247, 1920387, -4215511, 3489124, -4044249, 2301566,
-1222992, -4207994, -5457830, -10397579, -6858526, 2617783, -17732846, -4843650, 9721122, 5164698,
--2144263, 23131620, -3357054, 10708964, 10598369, -16881368, 1093069, -2254858, -14253923, -7467338,
--7847979, 233539, 1661616, 15978352, -2580739, 1521492, 10834055, 8024610, -1898376, 10779831,
--5127117, -3980898, -7221988, -9587978, -13942001, -5312875, 7943542, -15195057, -7748121, 11710228,
-8545374, -5132486, 10714870, -4792647, -746787, -496069, 5152350, -3373160, 5134634, -3231963,
-4392141, -1290101, 1812476, -2082522, 3553549, 3394635, 1475321, -617938, 4011500, -2612414,
--2945811, 3120831, -881542, 3407520, 2492692, 1683627, 2305861, 1392643, 653909, -5864778,
--1084479, -68183, 1630477, -1569274, -2474975, -2076617, -5603322, 2114198, -117038, 3525631,
-1994476, 3431679, 2618320, 723165, 1057636, 13383655, -2374043, 4353486, -6565395, 3896609,
-5534602, -3355980, 4725538, -7326141, -8162049, 12418898, 6686727, 8040716, 9808095, 15032,
--8165270, 10733123, -9398999, -12497818, 128312, 11840688, -1743757, -10145250, 1343788, 13923210,
--2050310, 3865471, 1290638, 19506668, 1177358, 4219269, 9544491, -1165010, -5019206, -9262634,
-1264868, -1239098, -9006546, 344134, -5327907, 3622805, 13134010, 181999, -8004746, -2309082,
--7426536, -3876745, -1200443, -3065533, 1732482, -9786620, 10506027, -5532455, 17784386, -4453881,
--13012140, 785442, 577136, 6372121, 2649458, 3467112, -13346611, -10735271, 7734699, -11181947,
--15682536, 4525285, 3049964, -3512747, 16842714, -13711146, -19108846, 7167227, -13065827, 1286880,
-1742146, 409096, -12567611, -7581154, -16329466, 5615670, -1692754, -862752, -2568391, -7212324,
--3315178, -5463736, -2771865, -2100776, 6156299, -4720169, 4714801, 1769527, 4869419, 856309,
-581431, -6611566, -2479270, 1832877, -2194192, -7220377, 1373316, -1148367, -2885144, -2525441,
-2251100, -2887829, 3058554, -1644973, 3725347, -704912, 1869385, -3760781, -3770445, -103079,
-221728, -1329292, 5652177, -4977330, -4816806, -3115462, 2708514, 3019899, -3917010, 2921115,
-807991, -10356777, 5744519, 595390, 14147085, 14857366, 21424908, 9796820, 4553202, 2993055,
-7072201, -7259032, 8176007, -12885439, 6300180, -1241782, -1078574, -24719684, -9557376, -4036733,
-8443369, -1031866, 2062121, 2709051, 2262911, -12619151, 13103945, -466541, 5346161, 464393,
-12232604, -13092671, 9141838, -6420439, -293132, 9926206, -11214696, -4989142, -12222403, -4840965,
--13612362, 12451110, 9149354, 16716013, -797253, 3980898, -15173583, 3494493, -15730855, 15342160,
-4354023, -2454037, 14521821, 14828375, 7584912, -8781598, -13137231, -18922016, -816581, -6677064,
--9529996, 10322417, -2806761, 23988466, -17719962, -6436009, 13720273, -14250165, -5654325, 3327526,
-277025, -2048163, -13687524, 6296422, 2357937, -7425462, 6813966, 14474040, -12382928, 13972065,
-17381196, -5160940, -9161165, 7183870, -7023882, 6640557, 4253628, -7228967, -5626407, -1404991,
--2229088, 10213969, 3465502, -1690607, -4908074, -8042327, -4536023, 2596308, -5134634, 2514167,
-4937065, 3183645, -3440269, 2700461, -2808372, 3924526, 2562485, 4374424, 2662880, 245350,
--4522064, 3030100, 4591320, -4554813, 227633, 1637456, 1736777, 3977677, 401043, -458488,
-4374961, 5370857, 1085016, -2376191, -4107063, -48855, 3733937, 4537633, 3105798, 22315040,
--5108864, 3167539, -1207423, -7323456, 9985799, -3636764, 3693135, 1224603, 14313515, -4481799,
-16694538, 307090, 8309151, 7412040, -1321239, -5384279, -16268799, 7755637, 16933982, 922344,
--112743, 11786464, 9972377, -686658, 1845762, 20195474, 12636331, -3614752, 4398584, 13292924,
--3331284, -14641007, 361851, -10619307, -1668058, -6716255, 636729, -20263118, -6048925, -7355669,
-359704, 4293357, 4292283, 19796578, 21845814, 11558831, -15082851, -8860518, 12288438, 17263084,
-3661460, -15669651, -2561948, -3671660, -16372415, -10299868, -12389907, 15228880, -5645735, 2137820,
--15406048, 22512608, 16600049, -1802813, 6881612, 37332928, -1853278, -7577396, -14294725, -803696,
-9940165, 7909183, -5731097, 11302743, 22340272, -9488120, 14264660, -6411850, 4698158, -8884140,
--4818417, -7654706, -10076530, -5131412, 6670621, 46708, -2179159, 1689533, 2796561, 12104828,
--1286880, 1274532, -94489, -5484673, -554588, -1911797, 1163399, 4944044, -3102577, -1416266,
--3855270, -1775432, 1418413, 1560147, -1360431, -7866233, -7365332, -2463701, -9081708, -7900593,
--1396938, 7165616, 6327024, 5496485, 1272921, -1169842, 381715, 3102040, 2583960, -898185,
-1799591, 1331977, 11480448, 1174674, -6896107, 6821482, 2638721, -9543417, -16157130, 20975546,
--13175886, 15832323, -11581379, -17215302, 788663, 21728776, 13895830, -15985331, -10769630, 3750043,
-3142842, 7380902, -1318018, 14507326, 7652021, 19102404, -7001334, -3144990, -726386, -3643206,
--18414136, -13489419, -4292820, 19207630, 3935264, 1552631, 595390, -17806934, -20381768, -15665356,
-8066486, 9326521, -7004555, -4538170, 1724429, 2253784, -10892574, 3174518, 20156282, 3595425,
-12607876, 12494597, 8892730, 21741124, 31085362, 10277320, 491774, 4535486, 12246562, -6446209,
--3505230, 8323647, -2851858, 4476430, -2922725, 13499082, 4723927, 9577240, -2688113, -3525631,
-6790880, 18020072, -1347546, -14677514, 9390946, -22999550, -26776436, -9104257, 13798656, -8879308,
--26477400, -16117402, -6759742, 9706626, 6564858, -14251238, 25636660, -8200167, -18017924, 4747013,
-6999186, -5869073, 8896488, -9235790, -3674345, 3372623, 2392834, -4835060, 4518306, 896038,
-8083129, -4445291, -9696962, -5602785, 1605781, -2110440, -1967632, -741956, 62277, -754841,
-6566468, -1106491, 1088774, -2641942, 3029563, 5447093, 1061394, 5221607, 1621887, -8075613,
--3569118, 46171, -6983617, -8251169, 3990562, 5818607, -4516695, -8805220, -9672803, 3970697,
-1636919, -420907, 6283001, -3624953, 2302639, 8591545, -37467148, 2164664, 18742164, -3341485,
--4600447, 23095650, -12475269, -12576738, -16376710, -5242545, -5648956, -10672994, 3027415, 5384279,
-8669928, 6371047, -5363341, -3973919, -2010045, -4470524, 1354525, 4433480, 18501646, -7903814,
--24395414, 13045963, -88047, -615254, -20326470, 9071508, 3714073, -1993939, 22738094, -6478422,
-2295123, -2041183, 9913321, 12281996, -13623099, -1242856, -7734699, -801011, 6652905, -5005248,
-10296110, -16313896, -13889924, -8587250, -14827838, -2477659, 1112397, 2327872, -20657182, -13375065,
-9509058, 16542603, -8050380, -9164923, 8442295, -18651432, -17183090, -16362215, 17807472, -30393872,
-9652402, -1600949, -18195628, -5692979, 14921253, 38732016, -5429913, -10658498, 12508555, 29700772,
-10410464, -6674916, -7450695, -1342714, 7868380, -543313, 3531000, 17679160, 897111, -6598144,
--12747463, 10358387, -14993731, -10040560, -7605850, 5204964, -6351183, -10668162, -7035694, -6492917,
--379568, -7873212, 2410551, -6104223, -840740, -2004676, 7192997, -5674726, -4757750, -11623255,
--3772055, -2075543, -4227322, 11020886, -8454643, -10453414, -991064, -9176734, -8705362, -3846680,
-912144, 8253854, -1416802, -3554086, -1931125, -5493263, 3526705, -11065983, -1296543, 11403138,
-5089536, 7455527, -3230352, 2816962, 3312494, -2763275, -4690105, -6252399, 1868848, 2938295,
-4656819, 5179194, -2184528, -21028696, -33427194, -1998770, 38429756, -6198712, -2700998, -25429428,
--1868848, -1751273, 2690797, 8338679, 1204738, 6923488, 551366, -473520, -18028126, 2517925,
-16505559, -11166915, 20459614, -8658654, -1206349, -18148384, 11647414, -9070434, -5794985, -20933134,
--28236188, 14397267, -13748727, -13658533, 5032628, 2845416, -6024229, 1331977, 16098074, -4814122,
--15215995, -9556839, -19502910, -2460480, 5681705, 13495861, 2866354, -4053376, -3266860, -8173323,
-4791573, 14022531, 2428267, -8876624, 16121160, -15404974, 1749125, -26502096, -7680476, -5242008,
-32704028, -20662550, 6774237, -6752763, 4400194, -3856344, -3518115, 571768, 13380971, 3962107,
--23924042, 26390426, 8212515, 9390409, 3551938, -10593000, -7917236, -3069828, 3482682, -634581,
-5424007, -14347338, -14756434, -2473901, 7405598, 16031502, -9808632, 13594645, -3207267, 5279589,
--10624675, 6109591, -17408576, 19617264, 1008780, 2164127, 6597070, 8838506, 1009854, -12279311,
--5767604, 3288871, -11480984, 3141232, 5616207, 4901632, -6766721, -4306779, 11924440, 2143726,
--11801496, -1730872, 10362682, -3853123, -14551886, 16647293, -4372277, 6433324, -2658048, -4781373,
--7683160, 5120138, 1569274, 5328981, 962073, 8947491, 1218160, 6437082, -2962991, 445603,
-4185983, -2266669, -3377992, -16360604, -9920301, 35788888, -4542465, 3236258, -18604188, 16852378,
--9686762, 12483859, -9773198, 21734682, 2054068, 2473364, -10510859, -8245264, 12426414, 28088550,
--11644730, -16649978, 7927436, -6376416, 18278308, 23459648, 11375758, -3179887, 14289356, -9218074,
--8890045, 19761144, 26759794, -29674466, 2436320, 4780836, 5061082, -9836549, -719407, 12416750,
--30313342, 9419400, 17701170, 6978248, -13487271, -3412889, 21740588, 18127984, 5920076, -9918690,
--13368086, -25907780, 37416680, 7095286, 19240916, -2476586, -7961259, 4514548, 11205033, 678068,
--594316, -30154966, 4732517, 29080150, -5124970, 27881318, -16516834, -7094212, -11511586, 6757058,
-25936234, -7833484, -730681, 23778550, 28651726, -9006010, -20900384, -18329846, -16247324, -7241315,
--6846715, 16809966, -20138564, 11325292, 12452721, -4243428, 1459752, 13250511, -2462090, -7097434,
-7805030, 5829881, 4182225, 12213276, 2654290, -1789928, 10801843, 4171487, 4596689, 5782637,
--1801739, 972273, -2400350, 4980552, -19723564, -5177046, 888521, -3544422, 7760469, -14542222,
--1625108, 484794, 5327370, -56371, 8434242, 6128382, -3937948, 12173011, 6120329, -3836480,
-8635569, 9580461, 155693, -5703717, 4588099, 9334038, 5556077, -1053341, -8651138, -3945464,
-2354179, 1671816, 1472637, -8082055, 14144401, 10433549, 24978992, -7530152, 18096844, -9542344,
--3810173, 16859358, -550293, 22972706, -27645094, 17391396, 3191161, 7762080, -11092827, 8461086,
-20685100, 40215388, -9190693, 10275709, -507880, -26552024, 24481314, 2561411, 9612137, -4774930,
--12399034, -4536023, -947040, -10233833, -6419366, 34188476, 2465848, 13217762, -9667435, 24273008,
-223875, 11839077, 5046050, -14008573, -2916283, -8589398, 361851, 4498442, 28666222, 14672145,
-1313723, 3528853, -900869, -2229625, 4796942, 2995203, 18006114, 14712410, 7452842, -8358543,
-12545063, 26276074, -24547886, 23052164, 3799436, 7042673, -24664924, -11615202, -31022548, -24977382,
--4835597, 16925392, 14111652, -43020540, -191663, -19313394, 10358387, 43272332, 21760988, -27563490,
-15283641, -11241540, -14179835, 23920284, 12125230, -12041478, -6681896, 21074330, 17242146, 9531606,
-26718454, -6999723, 16437377, 14533096, -16834662, 23920820, 6642704, 27737972, 8523363, -2382096,
-16356309, -1509681, 4359392, -19185618, 14696841, -9262634, 7714298, -6842420, 3481071, 9163313,
-22091164, 5936719, 13482976, 3556770, 4401805, -7031399, -1489817, -2397666, 1936493, 11200201,
-9556839, 16750372, 6272263, -1814087, 2797098, -3704409, -2032593, -16464757, -2646237, 4325032,
-5423470, 14474040, 12906377, 11731166, 13532368, -35762044, -56166360, -14093935, -6754910, -13314935,
-2611877, 19226958, -20106352, 28782186, 9895605, -40417788, -31819802, -5850819, 21879638, 1239098,
-1410360, -3841848, -13406204, -39110508, 1175210, -32789390, -27972586, 13929116, 10268730, 10199474,
--5091147, -12451647, 29531122, 18396956, -13146895, -25478820, 19360638, 10435697, 4241280, -11756399,
--30758408, 11973295, -14654428, 4988068, -26250840, 31854162, 383863, -12152073, 2675765, 8340827,
-25530896, 16632798, -7016903, -865973, 8703214, 9409200, 9619653, -5471252, -40896140, -31450972,
-6094022, -3960497, 23379118, -4124242, -10521596, -28174986, 32889786, 13174812, -23480050, -23464480,
-33760052, 32370094, -649614, 23860154, -3438658, 1231582, -9986873, -5463736, -18600966, 23012972,
--4464082, -4702453, -10063645, 9739912, -29078540, 14016626, -8699456, -4993437, 20205136, -24159,
-2986076, 5563594, 18541910, 10029286, -7897371, 14367202, -4384625, 17258790, 6432788, -18479096,
-4487167, -9172976, 8770860, -7359964, 537, -12125230, -6640020, 7342784, -12612708, 5732171,
-4085051, 5880347, -11275900, -7499550, -14455249, -12071542, 16535087, -5552856, 10632728, 7246684,
--10348187, -967441, -9055939, 843961, -5778342, 21584896, 17689896, 12546673, 16529182, -3581466,
--18530100, -20622286, -3092913, 6910066, 30692910, 19304268, -7136625, -5214091, -8308614, -14775761,
--955093, 7501698, 10664941, 7296613, 3417720, 19219442, 2226404, -14074608, -35051764, 55455008,
-1720134, -43441984, -2949032, -16364362, 7611219, 21095268, 19757386, -24302536, -38190312, 6273874,
--18111340, 5570573, -3434363, 16676821, -5252208, 2127620, 10410464, -16032576, -18967112, 1738925,
-5389110, 16512539, -59056, -27194660, 18019536, -15298674, 14232985, -13334800, -8546448, -1763621,
--3937411, -29211146, 5764920, 7785165, -27624156, 11533061, -10653130, 5308580, -8993125, 26720066,
-21369610, -27526982, -14118094, 18313204, 23650238, -28159416, 37135360, 2099165, 29969208, 21238614,
-35305168, -11100880, -14492293, 7565048, -28663538, 4146254, 4014721, 50655920, -15443629, -48166984,
-81187768, -38475928, -29027000, 46323908, 21405580, -27473296, 45641544, 4759898, -36528160, 45593224,
-5896990, 3828427, -7657927, 6461242, 30800822, -7724499, -10253161, -16125455, 23027468, -8534100,
--5450314, -3464428, -8790724, -10052371, -13857175, 13326747, -1677722, -1552631, -4800163, -3788698,
-2066416, -6420976, -10329933, 1075352, -8295730, -16297790, -16321949, 20421496, -8666170, 1638530,
-19447612, -9485972, -8435853, 1059783, 9807021, 3792993, 4359392, 18098992, -11035382, 2371359,
--8053064, -5510980, -3373160, 30123826, 15403900, -5231270, 4631586, -16406775, 5470178, -15039365,
--8859981, 6846178, -3606162, -30733712, 19065360, 7385733, -5363878, -386547, -15346992, -2378875,
-513785, -50184544, 6932614, 15055471, -37681896, 17246442, 9946607, -13197898, -3782793, -654446,
--9256191, -3024731, -5435818, -16786880, 442382, -8373039, -1879585, -4122632, 8145943, 29993904,
-25074020, -23145042, -2594697, 31559956, -5570573, -5929739, -32329292, 3728032, 10552735, -5285494,
-27463094, 65950296, -22240414, -27804544, 46902652, -3144990, -25379498, 29291140, 19229642, -15213848,
--22811108, -28128814, 8504035, 15063524, -12594992, 44227424, 28794534, -55212340, -53039088, 30852360,
--25007984, -32309428, 41790568, 6709276, 55968256, 26870926, -6890738, -7577396, -40542344, -31581968,
-91973504, 25376814, -19856708, -44604308, 1134945, -18206904, -39904540, -6259915, 46504832, 19768660,
-475668, 38308424, 33425046, -10704132, -42849816, 6549825, 25485800, -10687489, -10123775, 53393960,
-30613454, 5225365, -5757404, -27593018, -27100170, -7059316, 25317222, 10160282, -10493679, -5013301,
--12125230, 9901510, -7854959, -10426033, -6806987, -1403381, 7486128, 10160282, 8967355, 3686156,
--24635932, -8696772, -4964982, 9076340, -9687299, 1529545, -2707977, 22329534, -14695767, -10267656,
-23051090, 6310381, -11938935, 18124762, -6571300, 5162014, 1258962, 3976603, -14217415, -3991098,
-18920942, 18522584, 7580081, -7640210, 4807142, -8747238, -7072201, -5471789, 9824201, -15921981,
--3515431, 12217034, 49428632, 42068668, -11613055, 30040612, 2559801, -22433688, 14198088, 25730612,
-7941932, 11409581, -33535642, -6231998, 3384434, 7181186, -5354751, -28244242, -10841571, 10853919,
--7488813, -2565706, -24805584, 37810208, 4182225, -30315490, 16953310, 44301512, -23107998, -12705587,
-5920076, 14924474, -14628122, -27131308, 23177792, 40321152, -3688303, -15217069, 4682051, 11739219,
-17661442, 25987774, 1183800, 46933792, -1539209, -51327544, -96637, -5388037, 16384763, -4980015,
--42777876, -732292, -18765248, -17395154, 24866786, 13776644, 13961865, 18663244, -38401840, -19383188,
--7170985, -74088, 14778446, 966905, -8268349, 1498407, -13497472, -25390772, 1975148, 40592808,
--21180094, 4257923, -16581258, -11055246, 26925686, -33349884, -920197, 15275051, -12496207, 5974300,
-3662533, 8837969, 9180493, -17413944, -21935472, 36384816, -8041253, -11238319, 17952964, -18030272,
-10986526, 2736968, -8167954, 6086506, 14975477, -2536715, 1509681, -7250442, 3143916, 1389959,
--1639067, -6430640, 7890929, 4670240, -1473711, -313533, 6506339, 6341519, -7272454, -11550241,
-5900212, -313533, 2681133, 1101659, -3760781, 6574521, -494458, 5523328, -2658048, -567473,
--4162360, 1374926, 5082557, -891206, 13702556, -5449777, -5087926, 1059246, -7004555, 4403415,
-8941048, -43456480, -61774516, -55067924, 110521320, 105046312, 105297568, 296404288, 105611096, -12462384,
-19736986, -205365472, -249640672, -84194240, -139990704, -194542160, 25186226, -11039140, -32314798, 213711664,
-130798936, 54295904, 334333664, 157492160, 29353954, 152088544, -35952096, -182061520, -173921472, -166131488,
--229686800, -225322032, -52682604, -81506128, -132346200, 154469040, 71421008, -55996172, 223621760, 71910640,
--26088706, 252391072, 230351440, 52754548, 239036400, 242117504, -9156333, 59913184, 27577448, -233574288,
--270684416, -201976736, -381123040, -361348480, -216721904, -289900096, -217735520, 24393804, 179225760, 202946864,
-436866880, 396795936, 350273920, 376967136, 278385824, 140979616, 43250856, -30924302, -212477936, -256613024,
--274256736, -309524864, -293268416, -250400896, -161514928, -117741696, -114722336, 21585968, 69672424, 136331392,
-325111296, 337201632, 230875968, 288127872, 122037200, -40197136, -95472288, -148344944, -202755744, -147261008,
--98185640, -98156112, -33674692, -9592273, 839666, 51626580, 66114044, 62568008, 96487512, 60329260,
-39298412, 48235704, -28786482, -27060978, 8172249, -78685952, -55397560, -20859582, -75618264, -47160352,
--5304285, -76572288, -80418968, -53872312, -78929152, -52296060, 59260348, 110400520, 176386256, 259783776,
-242857312, 207364240, 195342096, 105098920, -32502702, -163337600, -288167616, -342635296, -308623456, -250413232,
--188777232, -89234392, 27912992, 110945448, 156483376, 168397616, 149017648, 132417600, 123573192, 124018256,
-86437824, 40044128, 18291192, -12176769, -36501316, -33727304, -59032176, -64124936, -45552424, -35300336,
--45694692, -44913548, -56786448, -65630320, -64938832, -56726316, -46354508, -15621333, 23014046, 52843132,
-70893800, 90907280, 89882928, 74788264, 53563076, 32307280, 12123619, 9306120, 1151588, -12102144,
--22018686, -24888798, -32581622, -36738076, -40644348, -44139916, -46322296, -31825170, -17904108, -5712307,
--137439, 6755447, 12523051, 22112640, 22662932, 15803869, 7158637, 11808476, 17511656, 18367964,
-17174500, 16449725, 14377403, 16482474, 14841796, 7766912, -1653562, -6953552, -18049600, -22174380,
--23832774, -24934970, -28201292, -24932822, -25971668, -23615878, -14461692, -2006287, 9957345, 26101590,
-36421860, 42974368, 40807560, 31504658, 14549739, -217433, -12787191, -17411260, -20653960, -17745194,
--14516453, -9337259, -6227166, -3047816, -2709588, -244813, 470836, 2520609, 2251637, 3777961,
-2629057, 3165928, 1622961, 1675574, -47245, 306553, -886911, 117038, -667867, 397284,
--485331, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--3626026,
-13776108, 7361037, 6051609, 3442416, -1507534, -387084, -1458141, -2828773, -4032438, -2775086,
--4118874, -1673964, 3842922, 1374926, -241592, 47782, 2507187, 1237488, -1647657, -1679332,
--1341640, -7150584, 2951180, 811212, 35433, -1429687, 901943, 185220, -2024540, 1098438,
-2605435, 49392, -3321084, -776852, -1452236, -1469416, 376347, 3233037, -849330, 812823,
--3794604, 2483028, -4680441, 3031710, 631360, 242129, 11274, 3017752, -3597035, -2584497,
--4892505, 1360968, 853088, 309238, 2757906, -2933463, 628139, -340376, 60130, -2119030,
-1910187, 952946, -1632625, 3074123, -4804995, 2266669, -2629594, 4952098, 2206003, 932545,
-333397, -900869, -5987722, 4624606, -1447404, -74088, 767725, 1345935, 1072668, 1278827,
-1427540, -358630, 407485, -588947, 1394791, -27380, 789737, -1735167, 607201, -207232,
-385473, 801548, 1937030, -32749, -340376, 736050, 762357, -709743, 999117, -1110786,
-976568, 288837, 869194, 147103, 560493, -229781, 219043, 844498, 374736, -46708,
-578747, -45634, 388158, 420370, -50466, 548682, -155693, 13286481, 6214281, 8701604,
-2284386, 3011846, -578747, 3453691, 277025, 3078418, -2288144, 5927055, -1560684, -6602439,
--1908576, 216359, 290984, -2042794, 5048197, 362388, 1926293, 5030481, 2348273, 135828,
--81604, 1258962, -4591857, -2909304, 1721208, 2233920, -1717987, 550293, 2135136, -4401805,
-6245420, -569620, 857920, -923955, 2273648, 3338263, 90731, -3347390, -3568044, 6933688,
-80531, -1925219, -362925, 4027069, 2846490, -1961726, -2824478, -5968394, -1950452, -2401961,
-178778, -2161979, 467078, -5796595, -2473901, 759672, -2467459, 1370632, 2296734, -1112933,
--230854, 1190780, -1565516, 2391760, -242666, 2988760, -36507, -922881, -3452080, 461172,
--4264903, 1397475, 4832, 2452963, -28454, 2516851, 3069828, 2755759, 31139, -1658931,
--203474, -556198, 3396782, -855235, 374199, 2297271, 2249489, -81604, 1238024, 548682,
-1125281, -408559, 1377611, -467078, 2064269, 569620, 339302, -94489, 122407, 298500,
-1003949, 2779381, -8902393, -2887829, -2025614, 1540283, 1760400, -6102075, -2729989, -1217623,
-1462436, 3228742, 1019518, 4430259, -3665218, -5308043, 1534377, 169651, -951872, -3639448,
-11770895, -623844, 3131031, 693100, 366146, -274878, -1814624, -4485557, -3514357, -1110249,
-3007014, -2510409, 6162741, -2097555, -576063, -5062156, -6013491, -528818, -3835943, -2143189,
-8197482, -4492536, -1243393, -4362076, 1593433, 196495, -1579474, -4583267, -872415, 26844,
--5191005, 600759, -2794950, 4140885, 2728915, -2401424, -1273458, -1332514, 1271310, -237834,
-3296924, -1716913, -2167885, -2236604, 7475391, 6740951, -2318209, -6514392, 881005, 2000918,
--209380, 1900523, -2702071, 520765, -3133716, 2225330, 170188, 7168838, 4426501, 6815040,
--6215892, 2680597, 4159139, 149250, 3156264, 2263448, 469762, 4685273, -864362, -509491,
-1202054, 642098, -1929514, 1862942, -1478543, -1276142, -133681, 467615, -211527, 701690,
--1104880, 540092, -141734, 136365, 607738, 854162, 411780, 991601, 938450, -725850,
--946503, 734439, 274341, -1698660, -690416, 1348620, -828392, -29341606, -4699231, -8488466,
--9533217, 2529736, -3198140, -8375186, -6860137, 1109712, -6758668, 919660, 10182294, -2566780,
-4393752, 3252901, 8591545, 2176475, -5915781, 1320166, 9333501, -4384088, 4665945, -6903086,
--6211060, 2004676, 2704756, 7259569, 467078, -4524748, 4278861, -3049964, 3292093, -420907,
-4646618, -3951370, -2498597, -4402342, 92879, 750546, -1672353, 3307662, -7658464, 949188,
-7794292, 1640141, -2166274, 2947958, -3933653, -2051921, -9680856, -2918430, -289910, 1480153,
-197032, 5179194, -7767449, 717796, -1039382, 3889093, 2131915, -1548336, 5587753, -4913980,
--625992, -3951370, -7465190, -3197066, -1695438, -2158758, 5665062, -5086852, -8069170, 279710,
-2680597, -850940, -2308545, 2745558, 3122978, -2304787, -1800128, -3187403, -1272921, 6478422,
--3000572, 3554622, -1050656, -152471, -574452, -257698, -3352222, 788663, -1997160, -135828,
--214748, -525597, 104153, -816581, -1034013, -1076426, -261456, 290984, -629750, 1043677,
-504122, -14596446, 8338142, 9349607, -484258, 5240397, 2416993, 11050414, 14737107, 1875827,
-1953673, 4208531, 1857573, 2434710, -2060511, 2901251, -2393371, 3856881, 4533875, -12610024,
-6564858, -1389959, -2301566, -3906273, -5068599, 2052994, 3617436, 5731097, 1156957, 970126,
--7321846, 315680, -2109903, -2464238, -1051193, 978179, 464393, -569083, 7274601, -382252,
--2360085, 2384781, -2770254, 3702799, 4930086, 5463199, 2883534, 595390, -3001109, 6103686,
-1983201, 818728, 682900, 801011, 484794, -3536369, -4933844, 4517769, -4595615, 4328254,
-3997004, 2901251, -596464, -3279745, 3003256, 3846680, 8578123, 3939559, 3265249, 1999844,
--8303783, -2567317, 1069447, -1363652, 3636227, -7230041, 406948, 2390149, -6722161, -635655,
-2312840, -1638530, 910533, -3964255, 1539746, 510564, -1649268, 3120831, 1878511, 125628,
-3464428, -1548336, -1464584, -342524, 754841, 1400159, 5230734, 848793, 1815697, 1225139,
--1074, 1134945, -808528, -982474, -1347009, 916976, -718870, -661425, 631897, 553514,
--586800, 1762010, -981400, 1233193, 1181653, -513785, 1752884, 493921, 775242, 853625,
-163746, 186294, 2029909, -139586, 27090506, 8092256, 2059437, 5229123, 13574244, 5388037,
-16355772, 3934190, -3532074, -1225676, -1304060, -1611687, 4484483, 6928319, -3182034, 1445257,
-4932233, -1864016, -6708202, 5327907, -572841, 2505577, -2241973, -3451006, 5602785, 1240172,
--442919, -1626182, -6103686, -3100967, 3408057, 789737, -2055679, -1130113, 1002338, 2276333,
-6274947, 1916092, -5652714, -1357747, 438624, -1840930, 2127083, 2900714, -5695664, -7001871,
--334471, 1705102, -668404, 5339718, -9852118, -2144263, -4430259, -5620502, -542240, -467078,
-1537061, 5280663, 18790, 767189, 1788854, -890669, 7158637, 4491999, -5746130, -5133560,
-3956739, 8556649, -670552, -4044786, 8540006, 4450660, 2034741, -3749507, -3966939, 4160213,
-288300, 3141769, -1845225, -6172942, -3318399, -4207994, -2581275, 2407866, -3358665, 452045,
-1537598, -1253057, 1493575, 1015223, 1282585, 695248, -2147484, 1215476, -630286, -1184337,
--468688, 1641214, 1366337, 206695, -1835562, 1682554, -684510, 2915746, -390305, 392990,
--2721936, -3597572, 1262720, -3386045, -589484, -528281, -1843615, -923418, 477278, -3036542,
--1199907, -312459, 400506, -636192, 2199023, 300111, -745714, 13365938, 6340983, 12045773,
--4131222, 198642, -3139621, 12135430, -12481712, -1656784, 3069291, -2270427, -2552821, 4130685,
--1492501, -3714610, 10457172, 6069326, 1115081, 17941690, -4975720, -1085016, -3877282, 238371,
-2845416, -4502200, -693100, -2287070, 6707665, -5653251, 1431835, 504122, -1909650, 725313,
-3901441, 2833068, -5516886, -9342628, 122407, 2049773, 7722351, 9285719, 9037685, 939524,
--5368709, 6681359, -16047608, -2516851, -6364068, -9174050, 6393059, -2026688, -3106335, 5171678,
--1938104, -2609193, 13816373, 276489, -4206921, 4958003, 273267, 3800509, 2617246, 1927904,
-8331163, -4941897, -3201898, 609349, -7339026, 56908, 1269163, -1721208, 2382633, 4284230,
-8764418, -3227668, 2856153, 7774965, 4549444, 2388002, 1345399, -2518462, -5697811, 2984466,
-4170413, -810675, 327491, -763967, -815507, -3064996, 524523, -853625, 446677, -2852932,
--1600412, 134755, -622770, 2883534, 1098975, 137976, -3935264, -1611150, 1802276, -2109366,
--142271, 1606318, 1401770, -2459406, 2306398, 2010045, 515396, 2614561, 2133525, -4307316,
--895501, -1575716, 1101122, 2537789, 2825552, -477815, -1739462, 517544, -994285, -20691004,
--31077846, -5250061, 1542967, -550293, 861141, -1467268, -6233072, -3526168, -4969814, -1352378,
-5051419, 6012954, -5476620, -8090645, 6899865, 1411434, -4437238, 340376, -741419, -4944581,
--4135517, 11442867, 5829345, -6189048, 3125663, 1271847, 4897874, -6007586, 6649146, -6680285,
-4566087, 2960843, -1418413, -3134253, 2944200, -12435004, -6168110, 7563975, 12222940, 6755984,
--8578660, 164283, -6088116, 8098161, 1666447, 2070711, 561030, -6746857, 3237869, 9912248,
-1105417, 7481833, 5309117, 3401614, 5735929, 12164421, -3410204, -12342662, 5938329, -15032,
--2935073, 574989, 10544145, -4370666, -7370701, 3548717, -1971390, -1307281, -2807835, -1708860,
--3333968, -5806259, -2918430, 7026030, -9688909, -6121939, -3593814, -7000260, -6781754, -467078,
-4159676, -6426882, -149250, -2419140, -2721399, -5799280, -3659849, -6650757, -388695, -5129802,
--429497, -192737, 4590783, 3224984, -2385854, -2576981, -3403762, -1083942, -2420214, -2340220,
-2765422, -4552129, 1654636, 325344, -2897492, 248571, -1911261, 1021129, -1009854, -3732864,
--4534412, -102542, 1136556, 1802813, -896038, 729608, 1374926, -61740, -2390686, -380105,
--3049964, 251792, 1348620, 1030255, 1279363, -11861089, -7886634, 2116345, 1819456, 16039555,
--14032732, -9439264, -5478231, -2538326, -1823751, 5253282, 4887136, -7282654, 7488276, -1660542,
-3343632, -5217849, 11209865, -2101313, -4354023, 7404524, 5175973, 4348118, -7783018, -7136625,
-9474698, -4915053, 2729989, 2435247, -3560528, 8229158, 2382633, 86973, 1716376, 6065568,
-7572028, 2456185, -6903086, 1679869, -9812390, 5895917, 2447058, -10792179, 7631083, 1889249,
--5747740, 10063108, 3085397, -2608656, 5730560, -811212, 10926934, -2426120, -2840047, -2243047,
--1524177, 14415521, 2944200, 335544, 3818226, -11949136, -7598871, -8092256, 818728, 7710003,
-937914, 9540733, -12295418, -4939213, -7829189, -7101192, 17755394, -1730335, 6298033, 4654671,
--3896072, -811749, -2552821, 1432372, 871342, 4948876, 2901251, 9830106, -5323612, 889058,
--1733019, 2197413, -133681, -113817, -95026, -2002529, -9270150, 3502546, 2083596, 1438814,
--2509872, -794032, -1246614, -5065914, -391916, -1769527, -3403762, 1938641, -2881923, 1269163,
-1581085, 1358820, 2047089, -3510599, -2008971, -2359548, -2263448, 1345399, 2494839, 1560684,
--906775, -426276, -696858, -1057099, 3654480, -1223529, 2583960, 1706176, -1069447, 1168231,
--794032, 49929, 868120, 1042066, -16153372, 5048734, -6943352, 3936875, -4860293, 13048648,
-2188286, -9134859, 1427540, -9313100, 7548942, 14420890, -12305081, 8123394, 2995203, -358630,
-5933498, 15370077, -5888400, -14496, 4688494, -16779364, 972273, 7634305, -4676683, 5471789,
-5946382, -3061238, 15046881, -7505992, -13633837, -5859409, 1628866, 363998, -2799782, -5873905,
-4093641, 3802120, -5906, -9591736, -2263448, -2430415, 6396817, -4201015, 25241522, -3176128,
-3602941, -1161789, -1086090, -12253542, 1245004, 9088151, 7339562, 24630564, -2661806, -2384244,
--5114769, -971736, -6948184, -525597, 9862856, -5259188, -1036161, 1788317, 2314987, 9709847,
-7885560, 2233920, 19050864, -3607773, -17677012, -17680770, -12486007, -2569464, 5560372, -1745904,
--4660040, 8409546, -530965, 7466801, -4623533, -878321, 6046240, 5143760, -1891396, -1809792,
-598074, 1572495, -1983738, -4132832, -5956583, -2006287, -2544768, -753767, -4254702, 3157338,
--1296543, 944356, -2167348, -3049427, 4051228, 1820529, -2108829, -571231, -1734093, -1823751,
-1750736, -1139240, -2047089, -4025995, 3144453, 1248762, -1755568, -3052111, -4075924, -767189,
--2813204, -2820720, 3383361, -2031520, 646929, 129386, -1505386, 1458141, 634045, -563714,
--788127, -905164, 28686086, -20657718, -15741592, -4974109, -9954660, -11293080, 13909252, 5714991,
-2774012, -4312684, -2794413, 16980154, -4916127, -7027640, -20225538, -2835215, -486942, 9640054,
-3541738, -4011500, 1270774, 8474507, 3815005, 5345087, 12984223, 16372415, 4547834, -5935108,
-4231080, -9636833, 6741488, 5614596, -3440269, 465467, -7507603, 3195456, 264141, -14519674,
-14355928, -1136556, -6583648, 8975945, -13494787, -2979634, 15003931, 8676908, -108448, 725850,
--18707804, 6768869, 10591389, 6167573, 3585224, -847182, -13770202, -40575092, -3146064, 8501888,
-11566884, -848793, -11838540, 20340966, -9205189, 9400073, 15375446, 12777528, 2471217, 15417859,
-1869921, 5643050, 3362960, 9454297, 1966558, 3164317, 19516332, -6249178, -4063576, 16615618,
-8704288, 4691715, -6585796, 1902134, 13496935, -1183264, 10857677, 2719251, 2517925, 6990596,
--3415573, -51003, 917512, -419833, -2803003, 5523865, 2646237, -6991133, 4220342, 3018288,
-4078072, 2202781, -1862942, 300111, -2086817, -2356327, 3464428, 4417374, 1952600, 2806224,
--1920924, -1791001, -1188095, -2272575, -3164317, -4796405, 1017907, -2952253, 2720325, -864362,
-1701881, -4389994, -2840047, -646393, -1265942, -1047972, -1870995, 974421, 4855998, 5126044,
-2088428, 751082, -2355790, 4140349, 14743549, 13261248, -3218541, -7385733, -966368, -4516158,
-16099685, 9822590, -27028766, -3392487, 2595234, -13246753, 5461588, -19145354, 14611479, 3068217,
--1857037, 7407745, 4221416, -4326106, -5954972, -4979478, 20483772, 431644, 185757, 4079145,
--2385854, 7696045, 24068996, 9297530, -3129421, -4560719, -3151969, 13379360, 5218922, 13553306,
-9959492, 6582575, 4338991, -6420439, -6341519, 5850283, -13764296, 2052994, -7160784, -6611566,
-799938, 9379135, 1684701, 434329, 3806415, -3408057, 16595754, 20769924, 24477556, -456877,
-11343009, -14683419, 5853504, 7972533, -6264747, 11958263, -9525701, -19979114, 2920041, -10626286,
--1231045, 598611, -10130217, 2301566, 14587320, -8994735, -8156680, 6874632, 13536126, -903554,
--4559108, 11853573, 1389422, 2418067, -8049306, -2029372, -266825, 9739912, -4785668, 522912,
--2052458, 1911797, 111132, 1662152, 2849711, 1506460, 317828, 715649, 2489471, 2554432,
--1990717, -4816806, -523449, -942208, -3930969, -5412196, -104690, -2624225, 3976603, -3735011,
-3088082, 4628901, -62814, -8291971, -594853, 1351841, -2602750, -4023848, 775778, 2022930,
-12766790, 3978214, 4076998, -587337, 495532, -1277753, 3864934, -1084479, 4100620, 10338523,
-9780714, -1414655, -372052, -1971390, 664109, 3083250, 3913252, 5421323, 1213865, -17067126,
-31088048, 1981054, 8065949, 23797876, -8814884, 2441689, -4564477, 6280316, -6886980, 6870874,
--16770774, -19845970, -639413, -11753715, -933619, -1095754, -1369021, -3354906, 1232119, -5506148,
-4920959, -15784542, -6349573, -21295522, -1119913, 4878009, 10166724, 22986128, 12703440, 3966939,
-2888903, 6593312, 5048734, 3868692, 9237401, 9721122, -3140695, -19467476, -19337016, -13242995,
--7955890, 1912334, 6448894, -7147900, -11359115, -19758998, 515933, -7566122, 17955648, -8062191,
-4470524, -13727252, -6664179, -2435783, -5688148, -26501022, -27628988, 7521025, 2761664, 672699,
-14076218, 8022462, 11286637, 9098351, -17238924, -3788161, 32156958, -6021544, -12254615, 4680441,
--7157026, 3233574, -19954954, 7996692, -9191230, 1294933, -1376537, 13007845, 705985, 5174362,
--11384885, 2074469, -6451041, -2948495, -7833484, -5952825, 3986267, 4469451, -10417443, -3555696,
-677531, 1870458, 2501282, 1279900, -4084514, 4436165, 1793686, 1463510, -612033, -382789,
-1349157, 4487167, -4996121, 4531191, -1305670, -258235, -1828046, 2838974, -2971044, -1795833,
-3994857, -7777649, -233539, 1387811, -4750771, -1720671, -10834592, 7619809, 9050033, -740882,
-2074469, 2306398, 3032247, -4923107, 5006858, 3119757, 3890704, -3631395, 2087891, 2921115,
-4613869, 18566070, 13973139, 1933272, 14853071, -2698850, -6172405, 8281234, -11466489, -22173842,
--33356326, 2891050, 647466, 12973486, 9350144, -12307229, -6405944, -32421098, -2238215, -15044197,
-3482145, -7518877, -3690988, -6153615, -2463164, -2429341, -11348914, -4976257, -13217225, 10610717,
--2695092, 9096741, 23251342, -12198781, 6653978, -1802813, -5836861, 6113886, -12518756, -21093122,
-10127533, 5092758, 10073309, 6445672, -44467408, -20049982, 5867462, -14671608, -1306207, -12518219,
-18536006, 22504018, -1150514, 24864102, 3438658, 11358041, -3321084, -703838, -13895830, 8884140,
-17840758, 3993783, 29742112, 820876, 4050691, -8631274, -13146358, 17752174, 27911382, 9877351,
-5382131, 2873333, 10528039, 1031329, 1976222, -26048976, -19236622, -1869385, 1353452, 3586835,
-19634980, 21278878, -3936338, 1508607, -7301445, 4524748, -13588740, 464930, -14376866, -12032888,
-6241661, -236223, 1549410, -7949985, 5151277, 6452115, 4235375, 6532109, 7552163, 773631,
--4320737, 3440269, -5892695, -1318018, -3641059, -8494908, -2486249, -4647692, -3844533, 7259032,
-3938485, -2433099, -5666673, -8414915, -5586679, 5864778, -5666136, -450435, 459562, 4046933,
--8039642, -6318971, 2860448, 10097468, 6381248, 2675228, 1074, -5907728, -715112, -3554086,
--6944425, 11997991, -17316234, -8686571, -32442572, -40658308, -29970282, -13834627, 9296457, -366683,
--7033546, -14920716, 130460, 26661010, 13204877, -23513872, -3754875, -4942971, -16446504, -3054259,
-1319629, 11163157, 8395587, -17570174, 12648142, -9971840, 5424544, -9296994, 2879776, -13486197,
--4906464, 6524056, -24082418, -4725538, -9021579, 7836705, -5924371, -22442814, 26373246, 25239912,
-435939, -10341744, 14407468, -34336652, -10635413, 10096394, -11431055, -7374996, -795643, -11165841,
-2281165, -2949569, -22863722, 9750113, -2839510, -7153805, -7766912, -6161131, -1352378, -6383395,
--9648107, 18945100, -8984535, -9099962, 9139690, -339839, 31330712, -6351183, -19292994, 10981158,
--10037875, -8692477, -15036144, 10385231, 19351512, -37701224, 3027952, 31647466, -5088463, -2063195,
--12483859, 21544630, -1456531, -11858942, -1492501, -11139535, -8793946, 15581604, -9345849, -887448,
--5156645, -6649146, -10934450, 4558034, 3747896, 5638755, -1244467, -8967355, -6019397, 225486,
-1622424, -13607530, -3807489, -8789114, 13507672, -4592394, 1023813, 1814087, 1726577, 1327682,
--10868415, 7277285, 430570, -4275640, 9867687, 1417339, 12892418, -2375117, 14886357, 3336653,
-6044093, 7159174, -9538585, -6431714, 4746476, -7997766, -6104223, 2242510, 93416, -5652177,
--12916040, 6238440, -1804423, -25639344, 51239496, 36588288, -730144, -9760313, 8099235, -30726732,
-471373, 38268160, -6787122, -13293461, 580894, 43364136, -6257231, 9520869, -9274445, -19610820,
--15913928, -4014721, -7304666, 7984881, 11024644, 594853, -16382616, -22856742, -21086678, -3405372,
--4691178, -11348377, 10544682, 8579197, -9264244, -11225971, -12312597, 6867116, 2316598, 8442832,
-21591874, -147640, -18580566, 12549358, 4875862, 4224101, 1238561, -368293, -9001178, 16015933,
-8130910, -6446209, -7744363, -5108864, -21111374, 5773510, 15322833, 4650913, -14813342, 17202418,
-12542915, 7098507, 1828582, -9082782, 4646081, -30010010, 4590783, -1899986, 26644904, -9645423,
--13340705, 5636608, -7012071, -601832, -19431506, -3545496, -5291400, 25923886, -16995722, -31537944,
--20646444, -40970228, 7909183, -8381629, -2840047, -21896818, -14069776, -36223756, -16156056, -12707734,
--2010045, 8806830, -11822434, -2107755, -2358474, -1907502, -3374234, 7686381, -13728326, 5823439,
--5497558, -10629507, 1466195, -3119220, 9543417, 4951024, 20938, -5373541, 12363063, 11632382,
-6882685, -4614943, -6448357, -6283537, -5919539, 13079249, 21321292, 2439542, 19570556, 21658984,
-7036230, 297963, -19663434, -2172180, 3403225, 2758443, -2057826, -5433671, -16702054, -465467,
-10810970, 1684164, -12614319, -3231426, -9555765, 48660904, 1969779, 8034273, -8090108, -16030965,
--21452824, -7159711, 6118181, 14218489, 11858405, -10372883, -15032, -21548924, -7814693, 7655243,
--18065170, -9762461, -6817724, 26239028, 13769128, 14421963, 13722957, -15284715, 2852395, 5481989,
-6263136, -1516124, 17790828, -3951907, 7864085, 13713831, 5327907, 3777961, 11683385, 15924665,
--9354439, -18816252, 12604655, -2080912, 112206, -19883552, -18414136, 4203699, -9185861, -7230578,
-16275779, -16760036, 21508122, 13807783, -9472550, 11254962, -12523588, -12718472, -15295989, 22119082,
--15482820, 6941204, 6818798, -25438018, 2462090, 2896956, -19993610, -34592740, -30835718, 22454090,
--23164906, -476741, -20824148, -4874251, -14875619, -1311576, 9707163, 5850819, -15140297, 15686294,
-18337900, 38159172, 10060961, -25773562, 9125195, -15890842, 8629126, -22679574, 12198244, -9754944,
-1770063, -4716948, 9326521, -2872260, -9118216, -21773336, -21553756, 2329483, 2164664, 13618268,
--9681930, -1007707, 21450678, 5980205, 14895483, 4424353, -3790846, -1700807, -4999879, -14370424,
-5213554, -17321066, -10110353, 3648038, 14384382, -18898930, 10580652, 1910187, 13606456, -4641786,
-7654706, 13602698, 15112379, 15069966, -6800007, 7329899, 11865921, 12677670, 2571612, 7553237,
-4052839, -5842230, 23527294, 10828149, 11904576, -10129143, -11198053, 2925410, 3961571, 4523138,
--9756018, 804233, -21365852, -421981, 3660923, 4101694, -18845780, -19755776, -31079458, 21531208,
-2255395, 7348689, -5089536, 11368778, -8499203, -8471823, 6454262, 16367583, 3869766, 10730976,
-33520072, -4942434, -20231444, -43077448, -6127308, -16704738, -8184597, -10334765, -19985020, -14163728,
--29850022, -3565897, -490700, 10339597, 30896920, -25853018, -9953050, -4343286, 10089415, 10846403,
-30597348, 4058207, -35047472, -8149701, 7127498, 27261768, 7128572, -42506756, -17058000, 38252052,
-3429532, 38156488, -22588306, 1119913, 2924336, 23047868, -2231773, 20960514, 31685048, 4373351,
-26866094, 18779744, 4485557, 37196564, 31801548, 10219875, 49638012, 38070052, 23858544, -40424232,
--2712809, 15657303, 9070971, -603443, -29313152, -35058208, -18170932, -50125488, -8003672, -37313064,
--14287746, -9699647, -53630184, -50922208, -35444756, 17313014, 433792, -11880416, -745177, -4000762,
--1197222, -10027138, -5354751, 12302934, 4844723, 2008434, -1807108, 1829119, -2553358, 7561827,
--1416802, -13515725, 23111220, 3599183, 5475010, -7057168, 1008244, -974421, 12054899, -789200,
-6978785, -4350265, -12829067, 4931696, 9715216, 25542708, 22720376, 1351841, -350577, 16246251,
-8046621, 19003082, 15811385, -5252745, 18252538, 10122164, 3591667, 11383274, 7355132, -6713571,
--3091303, -14862197, 8882529, -13284334, -5952825, -23219130, -14104673, 6804839, -27217208, 29079612,
--12339978, 18874770, 9918153, -25286620, 4086125, 14969572, -9364102, -26396870, 17564268, -7487739,
-15074261, -9163313, 4124242, 5539434, -15606837, -2347200, -6678138, -798864, -25778930, -21007222,
-25777320, 708133, 10633802, -20519744, 21134460, 18116708, -13638669, 11376295, -19957102, -4819490,
--11034308, 14279693, 36479840, -1089848, 44188772, -11549704, -1778117, 1654099, 4800163, -3436511,
--24437290, 42608224, 28365038, -3781182, 23868744, 18020072, 24761560, -9702331, -281320, -44136156,
-20046760, 20189568, -5420249, -7874823, 27633282, 14069239, 14690936, 33666640, 5948530, -17884244,
--20851530, 6005975, -6383932, -25534654, 21052320, -29518774, 1473711, 6088653, -20496658, -32748052,
--21800180, -8623757, 2517388, 25753698, 17722646, 7965017, -49431316, -14326937, 30090540, -2749316,
--10616622, 8452496, -26709328, -17146584, 22805202, -488016, 503048, -9940165, 319438, 13380971,
--4097399, -10529649, 7984881, -3894462, -18966576, -10786810, 2046015, -1824287, -1010928, -88047,
--8235063, -380641, -12982612, -18071074, 2538326, -2046015, -28912646, -3677566, -17451526, -10576894,
--3077881, 3979824, 5458904, 15518791, -14551886, -10437307, 3368328, 15100568, -16124918, -17855252,
-24656870, -4270808, -1233193, -5134634, -9127, -10733660, 4516158, 11017665, 6458020, 9523553,
-860604, 3273839, 399432, 947577, 3810173, 7858180, -6274947, -2044941, 3435437, 5571647,
-3225521, -37112276, 21213380, 32320166, -384400, 37285684, 11595338, -32851132, -19841676, -2818036,
--11106249, -20078436, 21206938, 24283208, -2128693, 16827682, 23235774, -18405546, 16458852, 27332636,
--1440962, -37476276, 14862197, -1295470, -7152195, 10041097, 28357522, -9213242, -13928042, 6670621,
--12093017, -16374563, -891206, 24489366, 21336860, -35319664, 11397769, 14807437, -23333484, -15272904,
-28689308, -7950522, -41137196, -5483600, 35034048, -11545946, -59541668, 62517008, -17594334, -7412040,
--30665530, 40338332, 13449153, -14125074, 29724932, -17490180, -12700218, -7716983, 75688600, 25034290,
--31323196, -28082106, 29192356, -6836514, 42378444, 650688, 31873490, -43638480, 35034584, 59826212,
-5925981, -6561637, -10297184, -10570451, -23658290, 56450364, 38283728, -33935072, 9762461, -35661112,
--5823976, 3745212, 7679402, 4909685, 10760504, 907312, -38716444, 18162342, 2643552, -4119948,
--577673, 17854716, -7509214, 3905736, -5429913, 9232569, -3430068, 2342368, -5968931, 11650636,
-730681, -2406256, 6923488, 9354976, -21080236, 2536178, 13703093, 5076652, -15119895, 8176007,
-24430310, -23716810, -36514200, 7192997, 4823785, 14368276, 14370424, -1965484, -32960116, -11262478,
-9342628, 4575751, 9602473, -5029407, 1648194, -1351841, -10834055, 9663676, -8422968, -4042101,
-27074400, 61814244, 11985643, -23951958, -5672578, -5903970, 10870025, 9266929, -19291920, -27580132,
-7364259, -23348516, 4649839, -14553497, -16672526, -3676492, 2834679, 7853885, -18589156, -7565585,
--7369627, -23199802, 19412178, -7338489, 1249836, -3494493, -15443092, 6062883, 4338454, 472983,
--3343632, 105764, -576063, -9197136, -19655380, 8329552, -9766219, 8447664, 5972689, -19708532,
--15915001, -1882806, -2306398, -2316598, -4243428, 15924128, -11100343, 1555315, -20881058, 17719424,
--20461224, -10900090, 10125922, 199179, -16408923, 12928925, -22053046, 1586990, 6590628, -673773,
-2368675, 10458782, 4966056, -22780506, 11438035, 1517197, -13735305, 19366008, 7618735, -21627844,
--2406256, -17265232, -2312840, 6895570, 5701569, -22021372, 27869506, -14862197, -8169028, 15446313,
-10257993, 2449205, 10320806, -958851, 14464376, -6558415, 2913062, -1893007, 6966974, 5398774,
--4234301, -5131949, 5523328, -7063074, 674847, 1118302, 857383, -4185983, 620623, -3911105,
--6370510, -3507378, -6927246, -445066, 5070746, 8888435, 3259343, 985158, 4667019, 5794448,
--8247948, 12504797, 3217468, -471910, -8373039, -4784057, 3852586, 9878962, -2032593, -274878,
--4989142, 1568737, 1327145, -4170413, -5679558, -5013838, -13074417, -4795868, -5172215, -37270652,
--46196668, -17137994, 140181296, 111932216, 74486544, 135393472, -53650048, -128351336, -40929428, -207361552,
--80572512, 5742372, -48380660, 94933272, 130046776, 21129628, 82752208, 141669504, 3310346, 38977364,
--9000104, -166731712, -137624176, -104264088, -103234904, -51078972, 79307648, 42402064, 61435748, 173954768,
-74080672, 10727755, 104480984, 48369920, -59404768, 20262046, -49780820, -168939312, -40350144, -88296472,
--173680960, -28976534, 4323422, -42566884, 118004760, 135805248, 53891104, 159705136, 161977168, 30131344,
-62635120, 28004260, -101885752, -114612280, -106918912, -192938528, -170141376, -64991980, -78841640, 16670379,
-103666016, 141468176, 117253680, 180717728, 134419056, 71949832, 10296110, -22557168, -103901704, -126967824,
--93415000, -111559088, -92699352, -4059281, -4912906, 21184926, 100746512, 48422536, 61683248, 96221224,
--1659468, -29931090, -15545097, -60267516, -34130496, -20172388, -21897354, 24756728, 51219096, 19784230,
-28519656, 32111322, -22996328, -8253854, -9575093, -61426084, 8858370, 25792352, -66283692, -704912,
--5792301, -67152352, 25383794, 11486353, -75803488, 48258252, 72078680, 17015050, 144827904, 90020368,
--1432909, 77054936, 14229227, -97466232, -80732504, -126968360, -180053088, -135258720, -87785912, -47177532,
-61988728, 133791456, 156934352, 195139152, 191397168, 135486352, 30331060, -13999446, -96536904, -176648784,
--171616160, -152574960, -127942240, -27273042, 14398878, 22842784, 89078696, 94531160, 65950296, 67800888,
-52951580, 23376434, 32805498, 23974508, -4731980, -10854456, -26884884, -55110872, -59734944, -59287192,
--60063508, -45511620, -9881109, 2686502, 19469624, 40834940, 49560164, 52799108, 52614960, 38297148,
-12673912, 86436, -14816563, -26673358, -30714922, -23895050, -24931212, -19400368, -6634114, -4094715,
--6136435, 509491, 1262720, 1978369, 15060840, 16094853, 7620346, 10130217, 8276939, 4808753,
-10649371, 8918500, 1738925, 609349, -7515119, -13951128, -12724377, -12803834, -13896904, -10638097,
--6460705, -1726040, 4377646, 10545218, 12138651, 12225088, 11315628, 7940321, 3300146, 998043,
--3935801, -7623567, -6795712, -5242008, -4534949, -571231, 1367947, 2940442, 2141041, 1300301,
--1304060, -2422899, -4431870, -4017405, -2769180, -553514, 440234, 2940979, 4458176, 6529961,
-6132140, 4676683, 2588792, 1676111, -1213328, -2881386, -4314832, -4791036, -5034239, -3559454,
--2879239, -1054951, 143345, 1454383, 1560147, 2246268, 1554778, 1308891, 200253, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--5080947,
-15756088, 6017786, 3842385, 1228898, -3318936, 29528, 3036005, 5667210, 95563, 539555,
-350040, -2090575, 571768, 1917166, -369904, 1873143, 2923262, 3861713, 1644973, 1580548,
-2058363, 1801739, -3539053, 3601330, 6796249, -3220152, 1944547, 1058710, 1910187, 344671,
-4031364, -2618320, -914291, -2356327, 2333778, 6717329, -1115081, 3258807, -73551, -1520955,
--5522254, 2071248, -2853469, 2552284, 1310502, 2851858, -301721, -1715303, 917512, -1181116,
-3865471, 498216, -3033321, 3908420, -839666, 3051574, 2367601, -120259, 2273648, 4407174,
--1224603, -1539209, -1235340, 2196339, -1786706, -2369748, 2755222, 38118, 1853815, -2927020,
-4347044, 263604, -1206886, -500364, -466004, 1733556, -1609002, -2590939, 1550483, 2335925,
-2216740, -2051921, -3065533, 1249299, -94489, -357019, -1173063, -1114544, 1555852, -390842,
--213138, -942745, -1118839, 237297, -801011, 365072, 251256, 1156420, 806917, -324807,
-423591, 665720, -675384, -270046, 56908, -296890, -514322, 415001, 1119376, 651761,
-839666, 35433, -64961, 305480, -689879, 16643, 266825, 12268037, 9552007, 4851166,
-664646, -1774895, 5521181, -3218541, -3528316, -770410, -6137509, 3718905, 212601, -2499671,
-1410360, 3575024, 6055367, -2794950, 3478924, 7940858, -2290828, 83215, 1780264, 4139812,
--1067836, 4507568, 3140695, 4559645, 1013612, 3487514, -3553549, 6068252, -751082, 5855651,
-2863133, -619012, 697395, -942745, -161598, -2085744, -1022202, -2582349, -1945620, 2053531,
--572304, -5627481, -1293322, 617402, -183073, -3132642, -3280281, -1634772, -1432909, 4434017,
--1793149, -4835060, -6504191, -7118372, -2485712, -3127273, -281320, 1113470, 3420405, -4652524,
--2144263, 558346, -497679, -2078764, 493921, -4898947, -489089, -5776194, 3066607, -3140695,
--1561221, 4022774, -609885, 2763812, 768799, 1012002, 3081639, 782758, -2528125, -1139240,
-221728, -2433636, 1271847, 2490544, 1179505, -1906429, 1408749, 2083059, 378494, 1131187,
--638340, -1118839, -813359, -1118839, 771484, -112206, 705448, -934692, -725313, 801011,
-1125818, 6493454, -14061723, -3764002, -7129646, -1315334, -15569, 7743826, -3774740, -12590160,
--4449049, -316754, 4784057, 1499481, -4685273, -10931766, -2826625, 3000035, -1239098, 6161668,
-228707, 2700461, -623307, -4852240, -5295158, 3183645, 3869229, 455803, 1246077, -192737,
-2359548, 551366, -6511708, 345745, 9134859, 1231045, -2288144, -845035, -2445447, 559956,
--2112050, -3976603, 6110128, -1905892, -2566243, 5558762, -2924336, -4937602, 209917, 31139,
-144418, -7121593, 5771363, -2208687, -154619, 5337034, 4838818, -7636452, -1953673, 1474784,
-1835562, -678605, 4162897, 1148904, 2057826, 2894808, 413927, 2312303, 3483219, 759136,
-537, 3263638, -8728447, -1933272, 198105, 4432406, 2439542, -1077500, -903554, 3221762,
-2982318, -3478387, -520228, -1243393, 81604, 1902671, 2406256, 478352, 2979097, -311385,
--2181844, -1026497, 213675, 215285, 256624, -818728, 2063195, -439160, 721555, -328565,
--985158, 607201, -62277, -426276, -815507, 162672, -770410, -132070, -1355599, -1029182,
-233539, -212064, -1071058, -2044941, -785979, 432718, 1677185, -27995670, -10999948, -5665062,
--7897908, 2476049, -2705293, -2696703, -292058, 3513820, -3163780, -3840238, -5513665, 1097364,
-5032091, 1095754, -3766150, -4748087, 1455457, 4146254, 3897146, -5394479, -7880728, 582505,
--7364259, 3934190, -4832, 2741263, -163746, 2644626, -2870649, -1239098, 7794829, -9390409,
-4359929, 2174327, 1095217, -3338800, 2119030, 4605816, 1278290, -5725192, 1199907, -3636227,
-2841658, -7809861, -248034, -7075422, 5486821, -587874, -1352378, -2015950, 3043521, -11865921,
-5517959, -3428995, -7126962, 2860448, 5826660, 6521908, 3901441, 1386201, -410706, 768799,
--539018, 4207458, -2350421, 1187559, 3371013, 8157217, 1358820, 156766, -5805185, 3733937,
--2856153, 664109, 223875, 4342212, -3794067, 224949, 4052839, -357019, -4672925, -6522982,
-5454072, 452045, 1074816, 2718178, -495532, 1322313, 1228361, -39728, 1040456, -454730,
-230318, 1449015, 1410360, 1428614, -2297271, 933082, -1707250, -768799, -1427003, 1403381,
--1627793, -15898358, 7781407, 12417824, 2408940, 983011, 6897181, 2332167, 2107218, 3775813,
-514859, 3950833, 3966939, -3202972, -592169, 539555, -3905736, -2417530, -54761, 1919850,
--2305861, 12911745, 6854768, -1883343, 918586, 4100083, 5157719, 5893232, -2471754, 4150012,
-4828080, 272194, 1404991, 1393180, 2747169, 1994476, 1209033, 2728378, 2600603, -5586679,
--4323422, -8600672, 925029, -3047279, -4305168, 4423817, -1263794, 2784750, -10661719, 11733314,
--857920, -5580773, -1042066, 9300752, 6725382, -1483911, 234613, 4503273, -2148558, 1935957,
--3436511, -7323993, 855772, 683974, -5892159, -2329483, -5807870, 1035087, 2137283, 1311039,
--2827699, -5127654, -7820599, -9310415, -6701760, -2609193, 528281, -2265059, 899259, 3091840,
-2736968, -3870303, -423054, -4220879, 1532767, -1471563, 1204202, -56371, -1731946, 1233193,
-1401770, -1242856, -594316, -1617592, 2173790, -2587181, 555661, 828929, 759672, -261993,
--609349, 552977, 1152662, 1159104, 942208, 728534, 970663, 321586, 1853815, -427886,
-2054605, -1285269, 645856, -381715, -534723, -1479616, -1149978, -984084, -1345399, 529892,
--1080721, -143345, 978179, 328565, 29336774, 7753490, 2197413, -1105417, 17694192, 2056753,
-8421357, 1717450, 5611375, 9189619, 3276523, -5120675, 5461051, 6315213, 1029718, -471373,
-1382443, 11572789, 835908, -3964792, -7007239, -2073396, -178241, -8048232, 1385664, 2384781,
-4653597, 1966021, 3296924, 8869644, -2730526, -1409286, 5490042, -850404, -2362232, -456877,
--7890392, 5134634, 3403762, 186831, 5149129, -2545842, -6901476, -15010911, -5451924, 5553930,
-6179921, 201327, 4353486, -4233764, -4555350, 12228846, -7018514, 5547487, -6172405, 1311576,
--9022116, -9519795, 10401874, -3940096, -3660923, 14283451, 1134945, -1591285, -6643241, 5244692,
-8306467, 415538, -4378183, -8392903, -1254131, 6124087, -1889249, 2085207, -3646427, 3023120,
--1344325, 988379, 6581501, -7010461, 2268817, -1974074, 508417, 823560, -734976, 7538205,
-2429878, 1121523, -2160369, 91268, -1694902, 3184718, -1458678, 2528662, 2599529, -2628520,
-92879, -409096, -1636383, 3590056, 680752, 1686848, 213138, -1248225, 804233, 29528,
-146029, 1037235, 1666447, 603980, 2161442, 667867, -76773, 1181116, 876173, -796716,
-336618, -337155, 540092, 1867774, 2146410, 345208, -102542, 15027554, 4868346, 12473122,
--7672959, 2595234, 6829535, -9307731, -3307125, -3562139, 899796, -4642323, -2985002, 7445863,
--2305861, -1255204, -595390, 9288404, -3422552, -4122632, 9713069, 1710471, -6993281, 3045132,
--1589138, 1692754, 3629247, -5486284, -1364726, -4090956, -7636989, 1047435, 124017, 1564979,
--7514046, -7631083, 2937221, -547071, 2857227, -188442, 4186519, 1374926, -257698, -4830228,
--4860829, 1452773, 4719632, 2445984, -1458678, 14168023, 3274913, 2524367, 6324876, 2484102,
-4689031, 4953708, 3104188, 2061584, 2366527, -1920924, -1166084, 1187022, -6017786, 1695438,
--9663676, 2742337, -6415608, 5097053, -3632469, 2852932, -1297617, -4540318, 1512365, -1112933,
-4959077, -4248797, 13358959, 11423539, 5163088, -9546639, 2984466, 4416300, -4179540, 1905355,
-1144072, 6698002, 6200322, 2742337, -192200, -777926, -1394791, -3702799, 5777268, -322659,
--752693, 134755, -1723356, 752693, 1896765, -1484985, 2988760, -1038308, -2545305, -2498060,
--137976, 1903744, 1689533, -362925, -668941, -1947231, -934155, 1207423, -2521146, 2882460,
-2818572, -1700270, 473520, -2183454, -797253, 506806, 894964, -1635846, 2995203, -18505940,
--35602596, -1523640, -7136088, 6169184, -1838246, -9866077, -960462, -7992934, -8810589, -7559143,
-11635603, 6031745, -7787313, -4486630, 8849780, 5114769, 7895224, -5459977, 5099737, -4846871,
--4892505, -1524713, -2149094, -15081778, 4093641, 8576513, 3681324, -8977555, -2081449, 1561758,
-2268817, -8014409, -1806571, -11492259, 2501819, -5464809, -537408, -4025458, 2163053, 12234214,
--1353989, -2312840, 6113349, 8932458, -5458367, 2410014, 3353833, -7599945, 4014184, 3736622,
--8919573, 1357210, 5708549, -1398549, -9393093, -5935645, -6074158, 8450348, 3250217, 8273181,
--4964446, -9657771, 2236067, 4748087, -2088428, -6928856, 4527970, 6674379, 6327561, -7940321,
--4147865, -1690070, 12700218, -2761127, 7561290, 2185065, -9020505, -7363185, -1446330, 4948339,
--8552354, -559420, -1633698, 4618701, -1075352, 10482941, 1268089, -2473364, -3202972, -2732136,
--3092377, -2031520, -1085553, 905701, -82141, -1302986, -3921305, -439697, -3815005, -1711545,
-1486059, -1382980, 553514, -1161789, -2901251, 1643899, -520228, 4441533, -941672, -3740917,
--2641942, 1365263, -753230, 85899, -1088774, -2435783, 737124, 2451890, -2316061, -789200,
-3381213, 1516124, -2196876, 103079, 2654827, -18009872, -220117, 709743, 10302016, 2750390,
--4389994, 6419366, -3185792, 2925410, -10065256, -2696703, -6448357, -3262028, -12672301, -4529043,
--7644505, 17415018, 9697499, 10695542, -12431246, -10272488, -5203890, 6073084, -747861, 69793,
-171799, 3730179, -1018444, 5207648, -7305740, -5910949, -296353, -1531156, -8968965, -8640400,
--7250442, -4921496, -3990562, -3317325, -11311870, 5317170, 13483513, -2755759, 6232535, 8982387,
--6594386, 7801808, 4647155, 2013266, 12304008, -389231, 10280004, 4081830, 1192390, -9594957,
-3778498, 5048734, -2724620, 14567992, 11310796, 2438468, -4402342, -6951942, 4017942, -6830072,
-2723546, 66572, 8371428, 185757, -12773770, 1118302, -5102421, -1809255, -9596568, 11290395,
-5640366, 4224101, 2529199, 12578349, -3666828, -12758200, -2134599, 8358007, 123480, -6471979,
--1818382, 1133335, -2984466, 1786706, 3825205, 166967, 29528, -628676, 1180579, -10201,
-4630512, 1646583, 1316408, -908386, 1737314, 2698850, 4197794, -3395709, 2284386, 2684892,
--119722, 984621, 4230006, 2594697, 1030255, -2417530, 3582003, -872952, -2216740, -2273112,
--250719, -6235219, 3985193, 2279017, 651761, -2841121, 3503620, 3808026, 6295349, 4199405,
-999117, 1320703, 239981, 5511517, -16430397, 7373385, 5509370, 6992744, -7643968, -13730474,
-4014184, 4044786, 738734, -11586748, 11074573, 3101503, -5829881, -10210748, 4633196, -4549981,
-17699560, 20491288, 3086471, -3348464, -7617662, 11611444, -13229573, -4811974, 16441135, 4017942,
--3136937, -8921184, -8118025, -4675072, 339839, -10896332, 2493229, 11494943, -1420560, 4284767,
--8416525, -7785702, -2572149, -6445672, 16834124, -6213207, 7587597, 6148783, 6861211, 1746978,
-3396246, -11689827, -11623792, -11241003, -2446521, 8351564, 19402514, -7845295, -13932337, -3277597,
--6393596, 3536369, 3052111, 10732050, -6534256, -180926, -8674223, -1703491, 15549929, -2021856,
--8391292, 11051488, 3685082, 1755568, 5874442, -12474196, 1950452, -4247186, 1254131, 5659157,
-13678934, 3779571, -15785615, 5758478, 1437740, -2485176, -6549289, 282394, -1636383, -890132,
--374736, 2212982, 3701725, 4367445, 1505923, 280247, -2505040, 811749, -741419, 3135863,
--5324149, 1999307, 2143726, -126165, 525060, 893890, -4017405, -115427, -2648921, 4429185,
-4167729, 1022202, 4994510, -1929514, 734439, 3775813, -745177, 2995740, 784905, 2776160,
-981400, -6242735, -332860, -2221572, -305480, 867047, 418222, -2184528, 260382, -2573759,
-50466, -1236414, 26800060, -11648488, -9126806, -2790655, 5648956, -15674483, 6277632, -4230006,
-7917236, -7034083, -3205656, 9725953, 7211787, 2749316, -4891968, -1770600, 13312251, 13096966,
--2718178, 11436961, -3316789, 16814796, -7857643, -4126927, 3019899, 17616346, 12866648, 4261682,
--9437654, -657667, -19559818, -2952253, 3060164, 9002788, 10488847, 18567680, 4867809, -334471,
--894427, -7120519, -12197707, -870805, -10579041, 7658464, 2403571, 11840151, 6590091, -4036196,
-11734388, -13959717, 6318434, -3107409, 1015760, -2421288, 14936823, 8758512, 4280472, 2671470,
--27096412, -4303021, 16081431, 8126078, 1005559, -492848, 824634, 12974022, 5509906, -20484310,
--6674379, -7895224, 1931662, 454730, -20351702, 811212, -19021874, -12607340, -1636383, -8164733,
--8849243, 11918534, 15044734, -1595044, -7280507, -779537, 4638565, -1816771, 3962644, 6180995,
--469225, 6865505, 10040023, -3165391, -5543729, 965831, -2343979, 3073049, 2008971, -1532230,
--1359894, 181462, 190589, 2881923, -262530, -3387656, 747861, 3469260, 1315871, 3092913,
--2582349, 4661114, 52613, -1618129, 1185948, -2828236, 1224603, -5742372, -3668976, -4471598,
-2417530, 312996, -4261145, -769336, 3777424, 2536715, 3290482, -2028298, 1848447, 142271,
--638876, -5456219, -2777233, -5786395, 9901510, 18722300, -4597763, -7885560, 1248225, 7125351,
-4355634, -11758010, -567473, -9562745, -362925, -12948253, -1257889, -11156714, 650688, 11163694,
-1026497, 24877524, -10392210, -5224828, -8818105, 10045929, 16823924, -13548474, -4353486, -20913270,
-4019553, -346282, 5785858, 4940286, -11497627, -7057705, 9186398, -3567507, -2453500, -11451457,
-22864796, -3200288, -24242406, 6689949, -6307697, -7391639, 8871255, 6671695, -6930467, -7907572,
--2247879, -14221710, -8351564, 4549981, 3253975, 4754529, -4188130, -10312216, -11704323, -11972221,
-9876277, -17519172, 375273, 4076461, -5268315, 343597, -15032, -2469069, -13710609, -2662343,
--5516886, 8681740, 11334956, -2189360, 17568026, -1099512, -86436, -5460514, -1024350, 25025700,
-2526515, -11451993, -4442607, 9666898, 7368554, -14058502, 372052, 1879585, -9372156, 7773891,
-1939715, 8712341, 1452236, 1224603, 1442035, 568009, 3937411, 5190468, 557272, 2535641,
-8633421, 534187, -2969433, 1355062, 4185983, -3386582, -850404, 346282, -3937411, 3568581,
-3505230, 4143033, 920197, -4812511, 1146219, -1753957, 841277, -1141388, -794569, 243203,
--2549600, 3542811, -1858110, -2745021, -3053185, 7326678, 136365, -8332774, 6011344, 4464619,
-2074469, -738198, 4610648, 3229279, -9005473, -2236067, 513249, 196495, -2720325, -12203076,
-30816928, -7924752, -2703145, 2740726, 13140452, 9443559, -20007032, -8159364, -19006304, 4175782,
-1096827, -5876589, -20918638, 874563, -9762461, 4354023, 4614943, 10572599, 543313, 7699266,
-36214628, 7880728, 9045738, -5674189, -2003065, 15822660, -1371168, 1256815, 4202626, 1047435,
--2310693, -8249022, 14599668, -15464567, 6459094, -22996328, -6990596, -10750840, -14191109, -12190191,
--7516, -25124484, -8540542, 3470871, 14415521, 8302172, -24682640, 14032195, 9343164, 10232760,
--15663746, 11555073, -7334194, -17962626, -6093485, -17870822, 8773544, 21420612, 5444945, -2025614,
--13927505, 11340861, -14833206, 22372484, -4084514, -2381559, -13394929, -14687178, 2257005, 17480516,
-5846524, -11981348, -4765803, 2953864, -2369211, -4777078, 11562052, 5935108, -5200669, 14808510,
--1063541, -20938502, 26436598, 14031658, 10978473, 5002563, -3389266, -1253594, -2034204, 7897371,
-1947231, 1199370, 17468706, 6803228, 480499, 876710, 2633352, 9086540, -7063074, 5148055,
-680215, 1758789, 1842541, 5877126, 3036542, 421444, 9942849, 7521025, 848793, -3344706,
--3262565, -1213328, 8185671, 4060892, 4689031, 4373351, 5521718, -6529424, 6818261, -1680943,
--1539746, 6189048, 9815074, -1321239, -2438468, 12348, 9361418, 10587631, 4263829, 6551973,
-5017059, 16853452, 3207804, -10853919, 4951024, -3165391, 5101885, 18496276, -26025892, -11846594,
--20913270, 11899744, -4165045, 2049773, -6859600, 15101642, -14805826, -14999636, -6761889, -3495567,
--10641855, -18558554, -8890582, 3486977, 12259447, -17072496, 11337640, -6417755, 1423782, 22146462,
-17016124, -264677, 9005473, 4301410, -3444027, -2651069, -29967598, 4194036, -2967823, 2990371,
-5935645, -2329483, 903017, 30394410, -27169964, 2601677, 32971928, 4329327, 9169218, -12856448,
--3434363, 17235166, 30277908, 1573569, 26862336, -10392747, 24310052, -8462696, 18017924, 18233210,
--4409858, 35487704, -5806796, -1445257, -10433012, -15956877, -16877610, -7726646, -10094247, -24592982,
--11416560, -5167383, 9211094, 9087077, 1248762, -12593381, -2022930, -3503083, 15950435, 4996658,
--8176007, 13664975, 3150359, -1598265, -1824824, -9803800, -1430224, -3842922, 4229469, -9918153,
--4696010, -6884296, -6857452, 12740484, 4968741, -4086662, 3904125, -3114925, 2501819, -7486665,
-11410654, 659814, 3260417, -166967, -7554848, 7129109, -849330, 2710124, 8123394, 5726265,
-3503620, 784368, -11809013, 5836861, -4486630, -381178, 10287520, -50466, 3849365, 2628520,
-4940823, 7059316, -2425583, -5349382, -3623879, -4236985, 2175401, 6383395, 10563472, 6305012,
--12258910, -1326608, -13317620, -11544335, -38907572, -27769648, -19495394, -2006287, 26577258, -17432198,
--2100239, -13427142, -19217832, -16048145, -19634980, -20636780, -8037495, -24346022, -26336202, -23048406,
-6620692, -15933792, -8185671, -19847580, 18974628, 30826054, 2794413, -3630321, -10770704, 2464238,
--1808718, -884226, -2362769, 9663140, 2171106, 21000242, -18248242, 1538672, -15504832, 31956168,
-7981123, -18856518, 14884746, -13533979, 12117176, -18147310, 10726681, 1480153, -10686416, 9639517,
--16981226, -5787469, 5566815, 17435420, 7792145, 31001610, -6826314, -20109036, 2028835, -5789616,
-2515240, -13348758, -11351599, -21454972, 2860985, -22804666, -4411469, -3626563, -19771346, 13246216,
-17026324, -9882720, -908386, -29382946, 33864208, 40806484, 6714108, -16195248, 5749351, 35903780,
--16712255, -7729331, -19083614, -11281268, -20963198, 8617852, -840740, -11984032, 9403294, -12002823,
-5146445, -7491497, -3236795, 4830228, 2747169, -149787, -7737384, -1636383, 7125888, 3992172,
--13019656, 10378252, -9013526, 4756140, 6224482, -4208531, -7579007, 4127464, -6092411, 5098126,
-3903589, -8255464, 3201361, -1156957, 3364570, -4934381, -13116830, 3591130, 2527588, -5508296,
-3648575, -4937065, 9685151, -181999, 4080756, 1059246, 12531641, 1605781, -16320876, 9287867,
-6350646, 2791729, 10566156, -31547608, 57684632, 21738976, -4657355, -17424682, -4771709, -18500034,
-19904490, 49933288, 1164473, -33216204, -15098421, 17983564, 6790344, -6648610, 23910082, -4653597,
-3080565, 13617194, -1345399, -13793824, -4386772, 11212549, -14314052, -13139916, -5220533, 4646081,
-816581, -2530810, -5945309, 10572062, 1212255, 15664819, 12505871, -16201154, 8063801, 19265612,
-10912975, -14970645, 5898064, 3184182, 13137231, 312996, 4664335, 3490735, 5497558, 27182848,
-25877178, 15939161, 35028144, -17201880, 18126372, -20719996, 13363791, -238908, 12228309, 15143518,
-5035313, 3935264, 18549964, 8548059, -4741107, 11676405, 230854, 15664283, -16446504, -9495636,
-1616518, 37764572, -25877178, 2526515, -32580548, -3883724, 3986267, 12916577, -15751256, -3138547,
--16234976, 4265977, 20455318, -12407624, -29091424, -6226629, -2674691, -7937637, 7323993, 5114769,
--8074539, 2949032, -6871948, -6912213, 6795712, -1030792, -3723737, -13211319, 7419556, -541703,
--8141648, -6689949, 6501507, 17853642, 1981591, -5089000, -2114735, 6521908, 16267189, 3223910,
-1656247, 13370770, -118112, 3663070, -966368, -2590939, -330712, 4873178, 7867307, 4590783,
--1850057, -2792803, 7054484, 4853313, -9735617, 9586904, 2898029, 18588618, -4293357, 4756140,
-11495480, -7606924, -4356708, 6340446, -10189810, 48321604, 3855807, 3575560, -10726144, -6692633,
-7858717, 7428683, 4271882, 18661632, 7619272, -7804493, 9683541, 19889456, -985695, 21792664,
--2318746, 10586021, -22377316, 40164924, -6207839, -4712116, 6494528, -30413738, -8073465, -14660334,
-21159694, 11734388, 11855183, -14246407, 4887673, 5070209, -19200652, 5178120, 15877957, 13684840,
-4420058, -4767414, 1614371, -9203578, 30191472, 4508642, 13451838, 11130945, 16114180, -27303644,
--2538863, -8327405, 4688494, -10236518, -12303471, 22347252, -21862994, 16324097, -14034343, 17181480,
--4341675, -18387292, -2170032, -27543626, 16475495, 15464030, 18524730, -56768732, 15829639, 9965398,
--17869212, -11894375, -16658568, 28858422, -42154032, 24721294, 58041116, 825171, -28491202, -11511586,
-16450262, 34058552, 8943196, -12063489, -25757992, -42685532, -3981972, -593242, 16245177, -13037373,
--6299644, -10088878, 28438590, 1478543, -1439888, -8716636, 5440113, 1257889, -636192, 723702,
--932008, 5011690, 17883706, 22164716, 11302743, -3834332, -2463164, 8517994, 1631551, -6067178,
-2024003, -9482214, -6084895, -11458973, -16591996, -33999496, -13911399, 4611185, 956167, 18276696,
--14085882, -10099079, 23441932, 8382703, -6973417, -10557030, 7138236, -3053185, -9940702, 23247048,
-2062121, -1782411, -8240432, 32212, -10275709, -8312909, -12672838, -3721589, -5532992, -4511863,
--13456669, 8755828, -28032178, 4583804, -17058536, 25371446, 1421097, 7271917, -14486925, 11508902,
--4307316, -9556302, 4334696, -9851044, -6436546, -8290361, -22517976, -12333535, 15898895, 13945222,
-10035728, 11937325, -27172110, -7343857, 4887136, -7489349, 15306727, 11500312, 538482, 9878425,
-26244398, -7604240, -27805082, 52455508, -23207856, -28736552, 31771484, -15229954, -9673877, 7575249,
-16058346, -19020800, -6589554, 2360622, -13255343, 68165960, -1098438, -10707353, -4793721, 982474,
-16359530, -32825898, -25765508, -13796509, -13800804, -775778, -29123100, 316754, -3049427, 10885595,
-42423004, 43710956, -17296370, 33866892, -33372432, -28931436, 17218524, 27475980, -9769440, 7859790,
-2985002, 18938122, 22575958, 384400, 1058173, 30650498, -27540404, -53417584, -6437619, -21082384,
-11508902, 25661892, -2951716, -16650514, 34051036, 10567230, 6503654, -8990440, -28768764, -15559593,
-2618856, -11951820, 15822123, -1148367, -10619307, -1150514, -11958263, -11536282, 15709380, -4893042,
-6087580, -11552925, 16757352, -1207960, -1454920, 11307575, 16050830, -1536525, -3855270, -11021960,
-1039382, -9446781, -9261023, -6584722, -3278671, -16692927, -413391, -7468948, -3292093, -16758962,
-4534412, 19821810, 7062000, -11769821, -25214142, -1642825, -2609730, 13557601, -33829848, -6686727,
-7484518, -6657200, 15214922, -96637, 9102109, -449898, -2965138, 2155537, -19232864, 20821464,
-571231, 12622909, -13023951, -20717848, 19287088, -20509542, 6567542, -4924717, 18148922, -161598,
-4220342, -11006391, 3708168, -7842611, -26098368, -21046950, 9123584, -1840394, -432718, 4121021,
-19905026, -8997420, -5764920, -16691854, 7358890, 5896453, -1806571, -3408594, -44005700, 1889249,
-12652437, -15943455, 11220065, -24626268, -4406100, 1513976, 15525233, 19285476, 2528662, -9338333,
-6337224, 34828964, 30638150, 30225832, -1214939, -2848637, 6624450, 3573413, -13782550, 8955544,
-38451232, -27369142, -8767102, -7966091, 193810, 1407139, 5079873, -20354386, -30873298, -11675332,
--1760937, 62358632, 31797790, 21154862, -2845953, -5487895, -15831786, 27111444, 4004520, 17348446,
--6355478, -8439074, -12533788, -11152956, -46061376, -20445118, -24282672, 19120658, -1742683, -9004936,
--1406602, -18938658, -8810589, 20045150, 30217242, -4715337, 26651346, 14332306, 11196980, 1610076,
-12658342, 15926812, 13457206, -3393561, -790811, 198642, 18190260, -14372571, -18457086, -8964670,
-10002979, -1734093, -12966506, -8482560, -12987444, 7693897, -2895345, 16504486, 32969780, 6177237,
-20356534, 26382910, 12913893, 16370268, 8311299, 5201206, 7355669, -12071006, 17447230, -14308147,
--9535364, 3839701, 1554241, -10200547, 5323612, 9424769, 17519172, 7148973, -19928648, 11025718,
-8506183, 2189897, 9369471, -5370857, -10468983, 5842766, -447213, -7681012, -4370666, -7175280,
-2833605, -42541652, 23841364, 21033528, -1260573, 34512208, 15362024, -23399518, -23269596, 10135049,
--9624485, -20871394, 1244467, 2141041, 9270150, -5152887, 12132209, -2985002, 11482058, 14855218,
--13772350, -55166172, 29548302, -8286603, -17407502, 12632573, 19485192, 745714, -37196564, -4806606,
--1602023, -38114612, -23925116, 20163260, -5907728, -15453292, -13218299, 8694088, -37247032, -26308822,
-50103476, -4216048, -29207388, 11471321, 27187142, 11754252, -41332080, 59040232, 23776938, -36294620,
-20138564, 26725434, 4191351, -24561308, 25498684, 28616830, 17301738, -22632330, 21385180, 40059696,
-2098092, 40467720, 49927384, -26686780, -16003585, -18563922, 47175384, 30146376, -20565378, 11589432,
--12454868, -29985314, 25818122, 58959700, 8451959, -17636746, -14842870, 35451196, -3356517, -39533028,
--28399398, 7279970, -1516124, 32876900, -5893769, 25415468, -49270792, -7466264, 1929514, 8538395,
--10286447, 10536092, -499827, 1100585, 5612986, 1489817, -12895639, 3999152, -6152004, 8038568,
-3088082, -17824114, 15648176, 5209796, -14952392, -10555956, 2821794, -12837657, 2515777, 11941083,
-12997645, 1955821, -12248710, -3869229, 4006668, -16661789, 9778030, 12520367, 4024921, 1139240,
-12400107, 4648229, -5583995, 6156836, -4498978, 1140314, -8567923, 5508833, 19872814, -14003741,
-34641060, 55766392, 22407918, -23067196, -8576513, -19346680, 11796665, -9395778, 15216532, 10124312,
--25665650, 13046500, -26156350, -8754217, 119722, -9569187, 1374390, 13626321, 10548977, 768799,
--20885890, 4702453, 16596291, -6309844, 2377801, -7517267, -24423868, 24612846, -14800994, 17044040,
--25157770, -14758044, -3655017, -20560008, -6241125, 20896090, -20512764, 27546310, 1646583, 22461606,
-8719320, -11193222, -30280594, 24707336, 15169824, 10281615, 6180995, 25465934, -19046570, -9614284,
--11098732, 7944079, 9384504, -2521683, -23972896, -1104880, -3477313, -24055038, -9723269, 3765076,
-6303938, 18924162, -2463701, -16917876, 22300008, -4378183, -4118874, 27033062, 12663174, -22257058,
-6979859, -13660143, 8398272, -7186017, 10370199, -19237696, 10502806, -6706055, 21007758, 3590593,
-7916162, -7267085, -296890, -15634218, 5986111, 945430, 443455, -476205, 4200478, -6349573,
--6099391, -832687, 2252174, -1828046, 3809636, -8008504, -1807108, 5987722, -1760400, -383863,
--1575716, 60130, 64961, -12603045, 2060511, 9919764, -111669, -1571958, -3016141, -1343788,
--9613211, 549756, -2655901, -1277216, -5167383, -7793218, -2073396, 7387881, -4701916, -2438468,
-3151969, 1455994, 5375689, -5868536, -2591476, -1009854, -4951561, -6837588, -7843147, -41640244,
--48217988, -26410290, 144568592, 126372432, 77091440, 167812432, -35464080, -126732672, -44047036, -238599936,
--124497680, -2845953, -61275760, 84818088, 156533312, 21539798, 92134568, 178530512, 30404074, 62055836,
-6347425, -184122560, -153127936, -135909952, -148932288, -90863792, 74494600, 31044560, 74587472, 192991664,
-116892904, 29837138, 143829872, 65157340, -87529288, 47414292, -63781340, -168611824, -20396262, -104369312,
--190898416, -86628416, -19494320, -100617128, 112244136, 120065272, 57353920, 191414880, 216989808, 81883552,
-107474576, 100755104, -112354200, -73753176, -143782080, -225494912, -206753280, -133095128, -132979168, -38582228,
-86915640, 111749680, 150107504, 210751904, 189911648, 110514880, 81228568, 14274861, -87531968, -128021160,
--93284008, -121904592, -149878784, -51133732, -56393996, -27842662, 94016296, 64648384, 69548944, 145502752,
-37513320, -6682432, 24363202, -40537512, -62716188, -35311072, -63382980, -19347754, 41139880, 15328201,
-22800370, 51437064, -11841762, 10591389, 28456306, -47748224, -4473209, 59612536, -56296820, 4752918,
-9776419, -112960328, -5456756, -2314987, -134481328, 10644003, 47728360, -17399450, 139083920, 126039040,
-23375896, 134887200, 66851704, -5939940, 22679038, -36436356, -145301424, -151742272, -187413584, -213618784,
--107399952, -17459578, 43456480, 134022304, 223099392, 255558064, 203649088, 150502640, 69067368, -28129352,
--84687632, -186703840, -233564624, -172125104, -137888848, -131442640, 8584566, 64535640, 79239464, 129522792,
-115795000, 76182520, 75110392, 53983444, 17331266, 21529598, -229781, -40977748, -46860776, -59445568,
--76106824, -68073088, -49179524, -36851356, -13717052, 18241262, 27545236, 44781476, 54664196, 47046536,
-34440804, 26370562, 11695196, -2129230, -12050604, -17695266, -23966992, -19036368, -13921063, -11141145,
--8855686, -2153926, -3183108, -2690260, -518617, -2390686, -5903433, -65498, -1461363, 1200980,
-9239548, 14740328, 18321794, 26564910, 19847044, 9956271, -288300, -9264781, -16722455, -18027052,
--24420110, -24440512, -19173808, -8459475, -1445793, 9253507, 15159624, 20631950, 19844360, 18417356,
-9459129, 2334852, -5022965, -8725763, -12387223, -9847823, -8704288, -3854733, -242129, 4481799,
-4603668, 6265284, 3293166, 1909650, -2919504, -4812511, -7317014, -4618701, -3829500, 725313,
-2287070, 5556077, 5341329, 6820408, 3973919, 3745748, 464393, -156766, -2880313, -2028298,
--3720516, -2219961, -3064996, -989990, -1648194, 496606, -511638, 932545, -616865, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--517007,
-6449967, -663036, 1957431, -1178432, 8610873, -3382287, -837519, -304943, 1064615, -1521492,
-3942780, -681826, -2662880, -471910, 5392332, 400506, -2732673, 2529736, 1861868, 3552475,
-1452236, -2704756, -1791001, 6029597, 836982, -1543504, -1194538, -1228898, 1183264, 1283658,
--779537, -7676717, -1924145, 370441, 5297842, 1894618, -659278, -22012, -3059627, 4220342,
--4312684, -5733245, 740882, 55298, -1944010, -1320703, -1603633, 820339, 520765, 505732,
--2008971, 5005785, 151398, 6709276, -1082332, -3196530, 1469416, -356482, 957241, 1557463,
-3388729, 2306398, -868657, -1842541, -1571421, 4352950, -4433480, 172872, 123480, -778463,
--3802657, 3352759, -1918240, 442919, 2909840, -2050310, -2748779, -2285460, 2950643, -272194,
--920734, -820339, 96100, -553514, -1199370, 1465658, 1500554, 1096290, 682900, 375273,
-2051384, 331249, -44023, 431644, -202400, 73014, -475668, -255014, -246961, 1386201,
-333397, -933619, 1164473, -2544768, 2225330, 1342177, -2998424, -1645509, -230854, 284005,
--153008, -437550, -1514513, 2723009, 529892, -1163399, -1582696, -73014, 5628555, -777926,
--2630668, 3608310, -1389422, -3378529, -330712, 2889976, 2165737, -1844689, 523986, -2308008,
-1368484, 1332514, -1089848, 2888903, -765578, -5179194, 986232, 2704756, 2535105, 367220,
--360240, -3750043, -1243930, -481036, -1622961, 3413425, 4800700, 2238215, -6481643, 2219424,
-7692824, 3186866, -343061, -33823, 3561602, -1727651, 1188632, -3213173, -2888366, 2985002,
-3387656, 1636383, 934155, 612570, 711354, 1604170, 339839, -282931, -1116155, 825707,
--2236604, -406948, -940598, -4626754, -2282775, 996969, 1771137, 1450625, 3189550, 2505577,
-2656974, 3787088, -2355253, -1488743, -651224, 1221381, 1423245, 2246805, -431107, -717260,
--374736, 1383516, -940061, 1255741, 352724, -482647, -366683, 435402, -180389, 777926,
-354872, 150861, -261993, 445603, 423054, -131533, 652298, 184684, 200790, -458488,
-157840, -104153, 64961, 824634, 142271, 371515, 344134, 147640, 4491462, -351114,
-1873680, -2907693, -4248260, -2714419, 2361695, -1985349, -1955821, -2150705, -2795487, 2684355,
-414464, 1958505, -853088, 547608, -5783711, -3776887, -2626373, 3685619, 737124, 787590,
-2062658, -2100776, -1022739, -507343, 695785, -4449049, -828929, -3016141, -3218541, 141734,
--2837900, 1875290, 1828582, 7634841, -1892470, 3859565, -2581812, 1567126, -1766842, 354335,
-6733972, 1029182, 2925947, -3230889, 2062121, -2911988, -1345935, -493384, 4281009, -2157147,
--1084479, -3848291, -2005750, -4535486, -591095, 4185446, 1023813, 262530, 744640, 3832185,
--3821447, -6773164, 1565516, 2061047, -4378719, -377420, 596464, -1142998, 1777580, 5197448,
-1104880, -1391033, 126702, -1927904, 353798, 261993, -1495186, -508954, -472983, -2182380,
--495532, -1271310, 454193, -519691, -832687, 1679332, -326418, -1771137, 736050, -1279363,
-56371, -1379221, -1918777, 1058173, -346282, -198642, 612570, 757525, 249108, 1720134,
--846109, -209380, 298500, -701690, -274341, -262530, -887985, -526134, 1463510, 428960,
-2085207, 194884, 933619, -890132, 2430952, -6821482, 1104880, -2362232, -5087389, -3615289,
-2018098, -973347, -267362, 5046050, 1630477, -661425, 404801, 4297115, -2037425, 3182571,
--1459752, 977642, -4539244, -757525, 3022583, -989990, 3762928, 4293894, 1369558, 2719788,
-5543192, -1266479, -7883413, 1823214, -3525631, 282394, -9648107, 300111, 3055332, -1890859,
-3558381, 546535, -3500398, 1284195, -7263327, -4590247, -1794760, -1740536, -6032819, 3078955,
-3296924, 232465, 3066070, 274341, 810138, -1910187, 2777233, 2174864, -1152662, 6658810,
--1276142, 5506685, 4657355, -235686, -791885, 47245, 1472100, 2268817, 683974, 2535105,
-804233, 882616, 7300371, 2829847, -3230352, -1439888, -73551, -1734630, 1058173, -1246614,
-7363722, 1265405, 3444027, -2625299, 2971581, -3221, -1486596, 664646, -2422362, -1529545,
--440234, -1689533, -1086627, -1012539, 877247, -1584306, -406411, -1108102, -615254, -526134,
-2001992, -839666, 1029718, -265751, -1758252, -262530, 1039919, 454730, 159988, 689879,
--1074279, 918586, 557809, 547608, 973347, -552977, 209380, -1668595, -149250, 1319092,
-1135482, 302795, 190589, 183073, 922881, -13136157, 91805, -79994, 3408057, 5705864,
-2067490, -2936147, -4734128, -804770, 6273874, -1221381, -1135482, -4651450, -56371, -1958505,
-4659503, 5439039, -9351754, 6097243, 3971234, -3603478, -710817, -4969277, 83215, -1525787,
-169651, 3193845, 6307160, -2385318, 1499481, -1674500, -2085744, 2283849, 4369593, 2872260,
--2656974, -4488778, 3157875, 2115808, -1547262, -847182, 599685, -5774584, 2142115, 1698660,
--2239826, -3872987, 1540283, -2951716, 5160403, 2208687, -8902393, 4053912, -3779034, -9905268,
--2802466, -774168, 2039573, -4083440, -127775, 2141578, -4298189, -4329327, -4424353, -1407676,
-1184874, 9331353, 1534914, 1746441, -1953673, -4930086, 6444599, -1970316, -7429757, 336081,
--7498476, 537408, -668404, -2790118, -8218957, 2492692, 178241, -1854352, 2091649, 4992900,
-2372970, -986769, -790811, -56908, 2809446, 411243, 739271, 1510218, 2738579, -263604,
--1183264, -1631014, -1585917, 609349, -60666, -1335198, -1260573, 1181653, 1239635, 2303176,
-561030, -85362, -63351, 842350, -339839, -71404, -302258, 1444720, -98784, 756988,
--146566, 1984275, 8191040, 2139968, 1808181, 3518115, 5169530, -1184874, 12572443, -1875290,
-9006010, -10630044, 3679176, 6128919, -2203318, 809064, -2944200, -337155, 4865661, 8762807,
--2463164, -4432406, -1257889, 4054986, 905164, 8910983, 4269735, -1020592, 1318018, -118648,
--4162897, 781147, -906775, -1351841, 3946001, 5094368, -8094403, 9328132, -7113540, -3937411,
-1622961, -2945274, 4752918, 69256, -2686502, 6573985, 9316858, -6972880, -1220845, -729071,
-2905009, -6605123, -10765336, -5088463, -3272228, 3122441, -7457137, -4376035, -843424, 7700340,
-4905390, -5459441, 3892314, 1998234, -2914672, -4497368, -674847, -2789045, -3140158, 266288,
--2079301, 5742372, -4358855, -971736, 4940823, -3951370, 5338108, 6287296, 895501, -714575,
-589484, -7897908, -6927246, -1797444, 4401268, 129386, -3016678, 2828773, 6473590, -4353486,
--1966021, 1693828, -546535, -3111704, 18790, 765041, -2922725, 98784, -779000, 1265405,
-428960, 2268280, 360777, 1767379, -1126355, -545998, 124017, 149787, -82678, 1575179,
-740882, 1847910, 1864016, 117038, 585189, -339839, 1219234, 1884954, -958851, 4788352,
-3872987, 5229660, -5054103, -6660958, -3618510, 4541391, 192200, 18772766, -1446867, -456877,
--4552129, -8478802, -12486544, -2750390, 4082903, 6600291, -4150549, -7981123, 998580, 71404,
-7962333, -2677912, -3318936, 9877351, -5424007, 642635, -7660074, 4879620, -1571958, 37581,
--1738925, -11602854, -7326141, 615254, 6390375, 4303021, 475668, -12023224, 7934415, -4860293,
--5008469, -5189394, -6924561, -1079111, 6484327, -5331128, -5919539, 4030827, -1970316, 2313377,
-11978127, -5256503, 206695, 593779, 5055177, -3565897, -3315715, -1666984, 7590818, -1728724,
--4089346, -716186, 5905580, 7740605, -7743289, -8747775, -3030636, -1300301, -2985539, 1853278,
--6196564, -2175401, -5852430, -11557220, -4623533, -2675228, 1476395, -10629507, -3007014, 159451,
-7454990, 220117, -6600291, -128849, -338229, -2005750, -3682398, 159988, 1482301, -695785,
-1080184, 1053878, -1510755, 2158758, -962073, -2158758, 2276870, 2871723, -1315334, -2758980,
--156229, -543850, 411780, 2298881, 788127, 39728, 1549946, -878321, -1459215, -1111860,
--1594507, 2281702, -6159520, 5224828, 6305549, -4629438, -5682242, -4741107, 2550674, -449361,
-9153649, 16037945, -9019431, 623844, -407485, -1086627, 1457605, 4660577, -13178570, 11833709,
--9296994, -4555887, 11848204, -2722473, -5715528, 3964255, 4356708, 292058, -698469, -9144522,
-5690295, -1282585, 1953673, -6044630, 7532299, -669478, -12685186, -13481365, 4478577, -2454037,
--7012071, 3448322, -615791, 20946018, 3473018, -3803194, -6267431, -12313671, -4414153, 2419140,
--3041911, 9658308, -2079301, -14345728, -1431298, 9903658, -4357245, 1318555, 8496519, 5789616,
--4886062, -881542, 6871411, 9259949, -4255239, 1829119, 1276142, -4430796, 1958505, -2028298,
--661962, 1400696, -2193118, -2577517, -8946954, -9713069, -8275328, 8233989, 4540318, 5372467,
-2216203, 86973, 3229816, -7080254, -3973382, -9918690, 4889821, -1232119, -1420560, -1998234,
--1530082, -5047661, -3059627, 1064078, -2110977, 330176, 333397, 381715, 1901597, 278636,
-2291365, -230854, 1675574, -2284386, 1272384, -3438658, 239444, -1618666, 2835215, 168041,
--1885491, -512712, 856846, -1461363, -1740536, -4020090, -4126927, -2221572, 4079145, 308701,
-1400696, 2636036, 767725, 3193845, 1175747, -2578054, -10765336, 4109747, -11618960, 490163,
-4169876, -1830730, -8706972, -4035659, -1811403, 7796977, 6117107, -4580046, -4827007, 8310762,
-3405372, -4753455, -5216238, -3995930, -594316, 8035347, -1404991, 762357, -493921, -62277,
-10226854, 5128191, 6838662, -447750, -543313, 3579318, -5353677, -8910983, 7268696, 11795054,
--7993471, 10144176, -3002719, -992137, -4569309, 5242545, 285615, -5630166, 3414499, 9592809,
-7448547, 3485903, -7213398, -2914672, -14570677, 2445447, 7543573, -4643934, -1197222, -5727339,
-1477469, -3398393, 5615133, -3562139, 1854889, 6763500, 3814468, 12717398, 6612639, 4318590,
-8091719, -6783901, 12158516, 3797288, 7383586, -2408940, -8419747, -12926241, -2482491, -2148021,
--3401614, -3015604, 4803384, -8879845, 13447543, -2285996, -10909754, 6229313, 10048076, 4201015,
-1281511, 2126546, 3762391, 1302986, -2246268, 2609730, -2058363, -10737, 4214974, 8053,
--170725, 4648229, 652298, 2557653, -395137, -2150168, 697395, 475668, -1854352, 1464047,
-1889786, 522912, -1321239, 1133871, 383863, 3600793, 790811, -635655, 2268817, -3054796,
-901943, 716723, -3343632, -4875862, -1362042, -1898912, -1249836, -2410014, -1701344, -1006096,
--408022, -4194573, 5928666, -12702366, 9327058, 3338800, -2005750, 13963476, 10668162, -17534740,
--11868605, 11210402, 19021874, -1669132, 2756832, -1527935, -2465848, -1808181, -845572, 4932770,
-2822331, 11640435, 2791729, 11145977, 3071975, 4914517, -1542967, -6125160, 2636573, 980863,
--5129802, 8568997, 833761, 3511136, 1940788, -1622424, -7868380, 1149441, -8919573, -2869038,
--10315975, -6749004, -4185446, 8784282, 1213865, 4400731, 10566693, -4435091, -901943, 1390496,
-3787624, 1296006, 246961, -2820183, 7826504, 17426292, 8301098, -13590887, -9808095, -10014790,
-11924440, -1646583, -11051488, 6618545, -6193880, -507343, -1806571, -597000, -847719, 552440,
-10464688, 17468168, 6546067, 15072651, 9560060, 5013838, 1950989, 3939559, -4779762, 16041166,
-5146445, -8121247, -11116449, 5115843, 3683471, -2849174, 7965017, 15193984, 3483219, -5579163,
-9366250, -663036, -6838662, 1641214, 5268851, 1071058, -875100, 818191, 2912525, 5281199,
-2282238, 2470143, 615791, 3532611, -1353989, -410169, -1899449, -316754, 6962679, -3426847,
-2609730, -835371, 1702418, 421444, -1787780, 1287953, 2509335, 3271691, -1369021, 1498944,
--2728378, 192737, 1454383, -4723927, 2190970, -1402307, -6971269, 1814087, 17370996, 3103114,
-6213207, -5700496, 4579509, -8656507, -14811732, 159451, 8139500, 2203318, 6561100, 8839580,
-10069551, 398895, -10712185, -9406515, -14235669, -22440668, -259309, -2876554, 9962177, 7113540,
--8227547, -4853850, 5890548, 11435350, -14443438, -9599789, -2682744, -8182987, -5320928, -3188476,
-4619238, 8827768, 517544, -5699959, -6635188, 8919573, -7187628, -3285650, -114354, 12637941,
--801548, 836445, -20078436, -1743220, 5022965, 10146323, 13567802, 2680060, -12905840, 5908802,
-348429, 5878200, 8568997, 1199370, 4345970, 9517111, 17111150, -11558294, -4399657, -1231582,
-5289789, 17886392, 7699803, 5815923, 10231149, -3728569, -5924908, -11121818, -13645111, -8377871,
--473520, 8549669, 20232518, -12832289, -9197136, -1541356, 19835232, -11329050, -6386080, -10147934,
--1776506, -9123584, 2878702, 1435593, 4748087, 10251013, 1976222, 6471442, -4335770, -4596152,
--5570573, 187905, -2799782, -6824166, -5857262, -3140158, -1527935, -1633698, 6698002, -5279052,
--1498944, -2160906, 4787815, 924492, 3488587, -2537789, -2279017, 4496294, 1588601, 977642,
--3997541, 5870147, -3117610, -456877, -2182917, 1663763, -2268280, 343061, 4035659, 4595078,
-785442, 8810589, 5194763, 12465606, -14782741, -10794327, -1532230, 21734146, 8974334, 398358,
-11963095, -7532836, 17886928, -4335233, -15487115, -3190624, -15393163, 12434467, 7636989, 4772783,
-5009543, 115964, -4875325, 5922760, 9176198, 4392141, -3076807, 7951595, 10963978, 9554155,
--1133335, -8648990, 14818174, 3274913, -829466, -2672544, 1840930, -9820980, 9630390, -2016487,
--2592013, -12469901, -6616397, -7781944, 17249126, 5914707, 232465, 2049236, 8933532, 12545599,
-6556805, -16738024, 15066745, -2002529, 8727374, 3472481, 13235479, -3265786, -17259862, 5182415,
--767725, 6910603, -3051574, -7315403, 6445136, -3005403, 4374424, 21512954, -2636573, -10275709,
-56371, 2604898, -10562398, 17278654, -7804493, -10843182, 15471546, -9276592, 7884486, 777389,
--11226508, -8242579, -11232950, 3264175, 9381282, -5873905, 5426155, 10139344, -5810017, 7070053,
--2419140, 12043088, -4401268, 3396246, 3988951, -3668976, 14496, 197032, -5625334, -1008244,
-5065377, -8128763, -1554241, 5476620, 2910377, -110595, -4842576, 2107755, -1337882, 1651415,
--5070746, -5158793, -2778307, 739808, 1188632, -6156836, -3718368, 5180805, 660888, 2092723,
--6019934, 2423972, 461709, -3007014, 1122597, 534723, 1867237, -3486440, 168041, -1864553,
--403190, -5010616, -2018098, -712428, 3131568, -1147293, -3257733, -2005750, -714038, 689342,
-547608, -1221918, -41339, -6713571, 5143760, -14874009, -2648384, 7292855, 2028835, -14554034,
-3954054, -5403069, 10606959, 2054068, 5551782, -23993298, 7436736, -14496, 9376987, 14725295,
-1043677, -2370285, 1505923, -8106751, 15644955, -15094126, 5008469, 8813273, 6573985, 8080981,
--3652870, -7507603, -7951595, -15602542, 6248641, 1857573, 9069360, 15639587, -5829881, 13347148,
-7757785, -13760538, -7332583, -657130, 1695975, 258772, 122943, 6376416, 12089796, 10510859,
-4878546, -28257664, 7122667, 7809325, 8475581, -18776524, 11332808, -9860708, 9866614, 694711,
-5328444, -2949569, 7462506, -2681133, 23885386, 10893111, -10334765, 863825, -29477972, 4529580,
--8521752, -9461813, 8586713, 5537287, -14695767, -30041148, 18942954, 11061688, -27533424, 10409927,
--6043019, 10187126, -2091649, 2116345, 4586488, -137976, -18471044, -7418483, -2473364, 5509906,
-61203, -5153424, 8106751, -10424422, -3706020, 9977746, -660351, -1319629, 3856881, 1753420,
-4326106, 1453846, -5331665, 1902671, -8094403, 4776541, -3403762, 2558190, 2462090, -2615635,
--1018981, -1898912, -2712809, 1136019, -4534412, -1156420, -3799972, -3393561, -6433861, 3052648,
--1735167, -2161979, -3586835, 1393180, 3603478, 1832340, 2077690, 279173, 1258425, 2157147,
-107911, 2373506, 2576444, 6027450, -3139084, 9024800, -3244311, -6220187, 11126113, -8541616,
-300111, 1421634, 28242632, -4010426, 20457466, 4787815, 15460809, 772020, 4577362, 4755603,
-27245662, 26883810, -13761612, -12972949, 15693274, -19806242, 243739, 5115843, -19326280, 10948409,
-1807108, -1748589, -3318936, -6146635, 2597918, 1924682, 3908957, -12199855, 343061, -3114388,
--15555298, 7882876, 11256036, -17834314, -12893492, -6633577, 9773198, 9069360, 9106404, -1129040,
--3323768, 8127689, 28389734, 14990510, -5277441, -3838090, -3571265, 18818936, -14922327, 6845104,
-4292283, -23856396, -9548249, -1234803, 3495030, -20243792, 14099841, 8838506, 4304094, 3656628,
-9866077, -19176492, -2026151, -15933255, 979789, 9627706, 16748225, 9978283, -10136660, -5698885,
--544387, 394600, -11684459, 26616450, -1841467, 3409130, -6025839, 9030706, -1749662, 5219996,
--2135136, 3189013, 2811056, 5677410, -387621, -47245, -1888712, 1237488, -117575, -1649804,
-8195335, -2497524, -5526013, -475668, -350577, 3901978, -5633387, 1219234, -4617627, -7860864,
-5077725, -1566053, -4968741, 300111, 208843, 789737, -4332549, 6047314, 1917703, 7456600,
--9050033, -768262, 4714801, -2480344, -7284265, -254477, 8522826, 3590056, -4947266, 5064304,
--2439542, 12828530, 20110110, -1480690, 1387811, -12489228, 1126892, -632971, -8781598, -14897094,
--2759517, -6944962, -11014981, -8200703, 12633646, -10726144, 9184788, -3294777, -2457795, 17489106,
--12087112, -6877854, 2767033, 7002408, 1112933, -23343684, -14214194, 2571612, -3671123, 3684008,
--3179887, -7388418, 14898168, 3086471, -1208496, -6178311, -33374044, 19994684, -5982890, -454193,
--2780991, 1189169, 9652402, -5659693, -9061307, -15699179, -1409286, 6802155, -9574556, -12458090,
-5160403, 19548006, -3273839, 18173618, 13506598, -13458817, 24646670, 16164109, -16157130, -25142738,
--7148436, -11008538, 1399086, -8028368, -1890859, 11910481, -20893406, 10172093, -3350075, -11861089,
--13092134, -13220446, -15858630, 3226057, 9604621, -8638253, 13701483, -1865090, -7913477, -16500727,
-319975, -1928977, 6397354, 19497004, -7030862, -14929306, -5128728, 343597, 5086852, 13316009,
-3575560, -1748589, -10935524, -170725, 459562, 4898947, 2122788, -60130, 3752191, 5404680,
--4068945, 6769406, -3905199, 3053722, 8005282, 7089918, 482110, -11305965, -4566624, 1625108,
-2811593, -7885023, 12706661, -7760469, 5830418, 6764574, -5156645, 601295, 1431298, -3047279,
--10697690, 2203318, 4858682, 775778, 9057549, 6215355, -6099391, -5926518, -1561758, -21211770,
-38613904, 54385024, -5261872, 6642704, 3474629, 13187160, 26347476, -25144350, 288300, 4379793,
-485868, -9054865, 1347546, -11191074, 13221520, 32408212, -6848326, 717796, 1838246, 9833328,
-890669, 3825742, 12447352, -24930674, -1867237, 24507620, 25149182, -29377040, -6245420, 4254165,
-4134443, 8776229, 22136262, 6254546, 44656924, 7459822, 13779329, 6605660, -7019051, -9240085,
--536334, -31314070, -45086420, -15237470, -14632954, -46942920, 7352447, -1090385, -26234198, -12774306,
--43947180, -4779225, -6050535, 29981556, -29350196, 18337900, -20055350, -1605781, -13189308, -10380399,
-11783780, 26948772, -20744692, -7753490, -1881196, -6109054, -2201171, 11387569, 21583822, 23077934,
--16444893, 46385648, 31091268, 4086662, -17579302, -38101728, -8653285, -14157823, -10411538, 2556579,
-12247636, -7963406, 4567698, 14432164, 2334315, -4522601, 14619532, 9781251, 5012764, 6461779,
-15348066, 15531139, 119722, 1316408, 6207302, 5855651, -2528662, -4559645, -2652679, 2887292,
--382252, -1894081, 966905, -3022046, 2138357, 10157061, -436476, 3626026, 12323872, -3157338,
--4420058, -4649302, -525597, -6774237, -1380295, 5917391, -3207267, -1795296, 1178969, 119185,
-1049046, -891206, 4846871, -3200825, -3400540, 8069707, 5644661, -6136972, -326954, -3239479,
--1338956, -19384262, 35533340, 59230820, -13942001, -2991982, 10507637, 26533234, 8917426, -15357192,
-9636296, -13113609, 3410204, 8415988, -3176128, -17702244, 5338645, 18909130, -4704600, -26976690,
-21142514, -6163278, 17257716, -6347425, -4265977, -6624450, -10926934, -397821, 19166292, 10748156,
-3170223, 15540265, -7364795, -6105296, 5905043, -8241506, 10725607, 6294275, 16408386, 28161026,
-24640228, -17710834, -33050310, -12032351, -2084133, 25891674, -9910637, 4631049, 10417443, -10222559,
--15241228, -24334210, -25034828, 19740206, 21006148, -16763257, -60244432, 5005785, -4258997, -8231305,
-4657892, -5981816, -24184960, -11258720, -5691369, -16769163, -7210713, 25654914, 9681930, 14795089,
--5822902, -8369281, -5473399, 14266808, 2363306, 2684355, 12221329, 35568236, -3138011, -5213554,
--17995376, -16977468, -24837796, -2663417, 13990319, 9579388, -10166724, 7421167, -4723391, -5892695,
--10394358, -9415642, 8512088, -7292855, 8300025, 3918621, 4660040, -5314485, -7797513, 8704825,
-5333276, -2200634, 6519224, -9131100, 3757560, -1258962, 5349919, -3035468, -5290326, -2970507,
--2670933, 6102612, 2946348, -314606, -6498823, -1546188, 12715251, -9218074, -341987, -8957154,
-10885595, -5970005, -2587181, -8283918, 1058173, -3577171, 1051730, 9261023, 9250823, 1882269,
-6442, -3643743, -7090454, -7795366, -988379, -12766790, -1695975, -10555419, 5692443, -14934675,
--24370182, -5350993, -4024384, 4525822, -8276939, 18822158, -11135240, -38323992, -20713554, 13285408,
--18001282, 21321292, 19088446, -8385387, -2826089, 2788508, -11620034, 90194, 6303402, -1632625,
-3464965, 27009976, 22555558, -5953899, -35655744, -27057220, 2094870, 18977850, -14283451, -6123550,
--16797080, -21575232, 2071785, -6052146, -25267292, -27555436, -40414568, 16338056, 5664525, 943819,
-23439784, 31389768, -1148904, -23371602, -17701170, -18894634, -10625749, -6659347, 7212861, 12182138,
--10741713, -17199734, -20960514, 11203422, 9904731, -20641612, -19621558, -7879118, -3349538, -12037720,
-7556458, 50834160, 30593588, 59361280, 19929186, -31523986, 37056440, -1610613, -18835580, 1832877,
--17727478, -38924752, -16008954, 8913668, 18655190, -4403952, 17193828, 9849971, 37875704, 41193032,
-34015068, 11216307, -9435506, -6018323, -5499169, 7136625, 9680856, -14381161, -5208722, 2305861,
-30904974, -4361003, 2753611, -3428458, 11237782, 11137924, 13264470, -752693, 349503, 129386,
-2954401, -1300838, 1953136, -11329050, -3507378, -3947612, -10436234, -10982231, -4940823, 3840775,
-13117367, -8535174, 2053531, 4458713, 14892799, 19931332, 13809394, 12696997, 14358076, 3031710,
--5276368, -11153493, -15815143, -19906100, -15502148, -9334038, -18699750, -19221052, -7318088, -3510599,
-1841467, 8356396, 35492536, -20204064, 2423435, 10290205, -4346507, -26334056, 26638998, 25226490,
--14461155, -20158430, 2857227, 34974992, -18282602, 9899900, 22591528, 6784438, -8348343, -16852914,
--10901701, 7693360, -2556579, 5844914, -9716290, 6465000, -21656298, 31768800, -2971044, 7077033,
--1395328, -40217536, 12617540, -11184095, 20809116, 12399571, 22226456, -8704288, -38603168, 27733140,
-12622909, -13224741, -23991688, 19866908, 10787884, 21132312, 21505438, -18723910, 8696772, 22307524,
--32681480, 29990682, 14898705, -1010928, 9666898, -17061220, 37749004, -4299799, 24880746, 11065446,
-43815644, -3120831, -7553237, 6099928, 17890686, 11747809, 12486544, 44095892, 2703682, 10738492,
-25913686, -17113834, 17818208, 2042794, -29250874, 10880226, -9783399, 33158222, -24348170, -29445222,
--30478162, 26079578, 43011948, -13744432, 11033234, -50634980, 4936528, 2389076, -1818919, -23738284,
-4074313, 9978820, -7708930, -6558952, -6246493, 15980500, 7626788, -10152229, -10790568, -6335614,
--2461016, -3208878, 4711043, -17479980, -10341744, 9230958, 3941169, 3262565, 674310, 7951058,
--1247688, -956704, -10130754, 13709536, 17252346, -7354595, -26554710, -18046916, -78920, 9127,
-5232344, 1330903, -8292508, -13127031, -7080254, 4931160, 7823820, 21364778, 7351374, 1110249,
-481036, -15941845, -3146064, 16558710, 9915469, 3756486, -17255032, -10561325, -1842004, 2396592,
-3142306, -2857227, -3169149, -3046743, -1017370, -64887292, 3540127, -7940858, 2005750, 50253264,
-41349260, 59509456, 31411780, -15817291, -12132746, -24645596, -32875828, 11576011, 2872260, 8637716,
-10438918, -9566503, 14949707, 25380572, 4654671, -6784975, -8606578, -17961554, -11959336, -10851772,
-4950487, 8092256, -25818122, -15255724, -3569655, 17326434, -7825968, 11164231, 13845364, -36658620,
--36141076, 6867653, 10464688, 8060043, -27282170, -12526272, -24504400, -11843909, -11222750, 23639500,
--31056372, -43218108, -16258599, 8590471, 7347079, -33331094, -26781806, -21029770, -15944529, 18034030,
-25396678, 1160178, -8630200, -10538776, -5892159, -5612986, -11478300, -36998996, 12175695, 27821724,
-25271050, 7880191, 34517580, 46693272, -4066797, -5992016, 35743792, -8644695, -21752936, -49155900,
--16746614, 6709276, -26980984, -18053896, 12642236, -4408784, 17529372, 30673046, -18663780, -28956670,
--9588514, -12419972, -7188702, -7852274, -7793755, 3271691, 4451734, 3593814, 6244346, -10396505,
-9086540, -14364518, -1719061, 8947491, 11985643, -12834436, -17912162, 10271951, -4075387, 672699,
--12499429, 14795625, -8651138, -3105798, -3437585, 13695577, -11574400, 14857366, -6580427, -6920266,
-9833864, 2600603, 7835631, -6186901, 705448, 2921115, 16018081, -1863479, 3813931, 2448668,
-42769820, 14813879, 3596498, 15415174, -17520782, 1008244, -8879845, -13342316, 8027294, 2972117,
--10880226, -18460306, -10392747, -17144436, -13696651, 5446019, -10536629, -5333276, 8138426, -5406827,
-1950452, -6001143, 21330418, -16691854, 17512192, 6194417, 2095944, -16146393, -6771553, 12683038,
-5322538, -399969, 10357851, -1920924, -4105452, -6672232, -5405217, -4505421, 2047626, -187368,
-2279017, -18889804, 10004053, -7958038, -7237020, 6451578, 4621385, 2357937, -3422552, 13086228,
-11469173, -16542067, 14839112, -2157147, 10103911, 19757924, -4051228, 10649908, 10351408, -9970767,
--6922414, -13256953, 1291175, 2168959, -20989506, 8614094, 3314104, 16335371, -6360310, -37526204,
-23579908, 1327682, 791348, 387621, -16413218, -5316633, -4243428, -5683853, -23972896, 13621489,
-7009387, 14697915, -10621454, 6414534, -11927661, -11082626, 614717, 9292699, 7692824, 147103,
--1272384, -3479997, 943819, -5626407, -1027571, 15858630, -6376416, 3068754, 1843078, 4429185,
--9685151, 10519986, -282931, -2129230, 2601140, -1165010, 2543695, 3451006, -8799314, -1337882,
-266288, -1784559, -1524713, 4756140, -5583458, 6991133, 10435160, 3777961, -6332393, -443455,
--1237488, -6128382, 7640210, -2215666, 4224101, -21919366, -62270584, -92581776, 19445464, 72807752,
-3032784, 199248368, 183653872, 126211376, 217002144, 166987792, 22740778, 3670050, -22470732, -159005056,
--162226288, -123272000, -212496192, -198096784, -56603372, -66004520, -66791036, 16040092, 40320616, -33024004,
--10969346, 63917704, 40711460, -2005750, 47518444, 33067490, 2600066, 39894876, 94101120, 62035972,
-21686900, 96520800, 71417792, 5821828, 82902536, 112423992, 27103392, 12426951, 114599928, 31636730,
--44354128, 57919244, 88340496, -44715980, 20807506, 123517888, 11934640, 20704964, 148954304, 117231672,
-10130754, 93106304, 123263952, -42315628, -25018184, 35402340, -100315400, -167685728, -113138568, -184944512,
--275041664, -252482880, -282558368, -359865632, -379836704, -335857312, -355050464, -334266560, -250948496, -200242656,
--104154568, -25547002, 59547036, 206740400, 240424752, 261096432, 404728192, 395810752, 265839680, 342253600,
-267487872, 106807248, 117899000, 166618432, 81725176, 53551800, 124588408, 89133992, 34897, 43069932,
-96990560, 24721294, 7309498, 72571528, 17215302, -74132208, 24845848, 59620052, -16561931, 53494356,
-141102560, 56387552, 32256278, 124423056, 68181536, -23490250, 15188615, -31150860, -147449456, -180670480,
--179578496, -226562752, -256128768, -211626464, -203476224, -232034000, -209368912, -172856864, -199311712, -182270352,
--122523608, -97215512, -93071408, -37611028, 23305030, 27693412, 84810568, 142653040, 149935168, 148343344,
-167416752, 154850752, 111055504, 94422168, 84240952, 58566176, 48063368, 58958628, 52546240, 35993972,
-37462316, 40967544, 34855808, 34154116, 43625592, 38706784, 27765352, 22590992, 20430622, 4173635,
--489626, -4534949, -23651848, -31689342, -29700772, -24758876, -20713554, -12610561, -6129992, -4858682,
--1035087, 8396661, 15714212, 20591146, 20397874, 15481746, 10465225, 3863860, 504659, 2094870,
--646929, -7282117, -7663833, -11727408, -21264384, -23551454, -22730040, -30462056, -33054606, -29459180,
--33467996, -40246528, -38121592, -39270496, -43537008, -39448736, -32984276, -34570192, -31143882, -21017960,
--16655346, -15013058, -4287451, 1824824, 3566434, 10093710, 18613852, 20052666, 20989506, 25605522,
-24881820, 22650046, 25964688, 28469728, 28781112, 29753922, 31833224, 28978144, 27445914, 27710592,
-27968828, 23694798, 20343112, 14875082, 7696045, 2243584, -348429, -2251100, -4105452, -5951751,
--6847252, -7295002, -6856379, -6018860, -4859756, -5222144, -4800700, -4476430, -4283693, -4244502,
--3267396, -2863670, -1982127, -1400159, -297427, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
-3746822,
-5185636, -3051574, 214212, 162135, -3712999, 4958003, -1981054, -1947768, 1418950, -5130339,
--2297808, 5481989, 1245541, -2247342, 3900367, 1198833, 832687, -814433, 1899986, -43487,
--6572374, -324807, -2441689, -307090, -148176, -6301254, 92342, -4056060, 214212, 621160,
-2801393, 3343095, 1101122, 818728, 609349, 2885144, -1596117, 975494, 177167, 438624,
-597537, -888521, 2583423, 3859028, -7456600, 3441880, -1957431, -4498442, -2874944, 5695127,
-2855080, -1950452, 3234647, 923955, -2059437, 1992328, 32212, -24159, 287763, 368293,
--788127, 20938, 410169, -352724, 2443300, -1551020, -3453691, -3357591, -34360, 1096290,
--225486, 134218, 1864016, -766115, 3282429, -3511136, -1055488, 2655364, 2879776, -2019172,
-3247532, 1119913, -862752, -2231773, -1039382, -970126, -896038, -902480, -453656, -155693,
--499290, -950798, 259846, 627065, -1331977, -376347, -443455, 646929, -1162862, -294742,
-139586, 2728378, 236760, -2245731, 1416266, -1228361, -1732482, 394063, -3686156, -486405,
--2755759, 934155, 1767916, 1629403, 1357210, -2946348, -179315, -2450279, 2598992, -5007395,
--2791729, 2456185, -5415417, -663036, -338229, 1337346, 1212791, 2621541, 5661304, 2551211,
--686658, -71941, -2003602, -1628330, -9951976, -9232032, -601295, 6734509, -1675037, 5366562,
-485868, 1491964, -1677722, -7774965, 3998078, 1159641, -2313914, 1838246, -4083440, -896038,
-2321967, 956704, 7238631, -5028870, 4392678, -2341831, -5695664, -2713883, -1552094, -1633698,
-2018635, 1633161, -4594005, -2119566, -2617246, -1047972, 4434017, 4662724, 5090073, -3805341,
-634581, -2414845, -310311, -2043868, -2515240, -3126199, -3427921, 1814624, 535260, -604517,
--1248225, 374736, 1923609, -2041183, -1728724, -959388, 2202245, -846109, -426276, -1044214,
--1123671, -359704, 476205, -110595, -193810, 285078, 475668, -227096, -222801, 1328219,
--1125818, -790811, 530428, -770947, 1078037, -773631, -772020, -240518, -154082, 594853,
--375810, -435939, 390842, -2684, -1130650, 266825, 238371, -933082, 3661460, -3466576,
--4581657, -3891240, 70867, -1512365, -1299765, -3069828, 631897, -3434363, -294205, -1388348,
-5291937, -3389803, -3803731, -8351564, -10936060, -2594160, -4897337, -4424890, -1106491, 2298344,
--2805688, -6495601, 4015795, -9439801, 2811593, -1550483, -1741072, 6174016, 4287988, 2310693,
-813359, -1014149, -1010391, -2263448, 959388, 4203699, -3380676, 3988414, 3615289, 1102196,
-511638, 1685238, 2764885, -6123550, -2699924, 5921686, -4582193, 427349, -114354, 3639448,
--471373, -1326071, 661425, 6143414, 3360275, 2166811, 1952063, 3443490, -5400385, 4205310,
--4409321, 3897146, 2526515, -1097364, -782221, -1787780, -2421825, -3876208, -206695, -1178432,
--3132105, -3414499, -1953136, -1967095, -354872, -186831, -952946, 4678293, -1915555, -820339,
--3149822, 3257733, 16643, -662499, 682900, -1301375, -2267743, 98247, 1282585, -104153,
--217433, -1424319, 428960, -438087, -1320703, 135291, 301721, 779000, -159988, 528281,
-412317, 1136556, 386547, -1137630, 61740, 663036, -160524, -991601, -638876, 1575179,
-804233, -774168, -344671, -277562, 2230699, -5818607, -93416, -2754685, -5258651, -2512556,
--943282, -3744138, -1206349, -3458523, -1289027, 2637647, 3655017, -6039261, -3367254, 1912334,
--1153199, -6595459, 4392678, 7744900, 1672890, -1888712, -3606162, 810138, 3803194, 6999186,
--3548717, -1547799, -4484483, -3679713, 3934190, 3857418, -5451924, 3167539, -1719061, -3557307,
-5579163, -71941, 3058017, -7654169, 555661, -4929549, 1134408, -6111202, -3768297, -1049046,
--1381906, 12560632, 4036733, 3211025, 2493229, -9460202, 5284421, 3592740, -2047089, -300111,
-4125316, -646929, 4356708, 4945655, 5011153, -2958159, 391916, -1681480, 2678986, -2437394,
--2480881, 1581085, -2329483, 1042603, 1584306, 15032, 2959233, 1091995, -5550172, -746787,
--688805, 1677722, -6295349, -2105608, -1582696, 4378183, -1336809, -817118, -3395172, -980863,
-241055, -399969, -1572495, -33823, -1015760, 1070521, 424128, -72478, 200790, 341450,
--802085, -2434710, 1260036, 439697, -1338419, 565325, -726386, 192737, 302795, 753230,
--177167, -373125, -578747, 447213, -961536, 824634, -1096827, -151934, -81604, 636192,
--725850, -382252, -1059246, -715649, -977642, -7853885, -4316442, 3153580, -3380676, 9120900,
-4070019, 8927626, -99858, -4430796, -4638028, -6342593, 9614284, -2393371, 4410395, 4844723,
-1045288, 3396246, 3157875, 2997350, 1243930, -6375879, -331786, -2495376, -919123, 4285841,
--366146, -440771, 3048890, 1855426, 3155727, -2804077, -9953587, -6008123, -3757560, 7290707,
--6617471, -2066416, 4519916, -565325, 855772, -5628018, 9678172, 467078, -3746822, 7568269,
--4671851, 11756936, 6121402, -2729989, 1381369, -3430605, -2289755, -10951630, 3870303, -5024575,
--760209, -491237, -2374043, 4599910, -1811939, -4820027, -4625143, 1011465, -4225711, -4730370,
-2669322, 344134, 3366181, -1889786, -9934259, 3364033, 4323959, 5486284, -5344550, -6088653,
-786516, 9781788, 1588064, -5164162, -2332704, -934155, 2702071, 421444, 2876554, -2970507,
--1100585, -641561, -3566434, -2990908, 4376572, -802085, 1714229, -453119, -1251983, -2859911,
--273804, 37581, 1082332, -592706, 1005022, -794569, -2276333, -981937, -323196, -124017,
--420907, 1634235, 84289, 1774895, -636192, -203474, -301185, -2081985, -21475, 970663,
-1024350, 628139, 7793218, -7162932, 3532074, 9347996, -6763500, 1925219, -3839164, -7182259,
-10679973, 4118337, 9920301, 9311489, 1272384, -7259569, -4581120, 3911642, -555125, 1687385,
--8031052, 928250, -14210436, -5844377, -11099806, 6896107, -6336688, -129386, 1959579, -1726040,
--2924336, 3443490, 3287261, 9875204, -1428614, -2070711, -7552163, -6295885, 6181532, 1443646,
-2091112, 11794517, -3599183, 183073, 6164352, -2691334, 2819109, 2247342, 6170795, 5708549,
--3937948, -503585, -7994008, 8364449, -5476084, -7058779, -6944425, 4469451, -2608119, -3668439,
-8079907, -2423972, 8378408, -5077725, -3994857, -967441, 5472325, 7270843, -588947, -7618735,
-2748779, -4828617, 10020696, 2200634, 5869610, -7982197, -3617436, 2285460, -2117419, 4996121,
-681289, -2638721, 2881386, 6586333, 9084930, 7158637, 70330, -1529545, -144955, 1643899,
-107911, -1458141, 1038308, -1207423, -255014, 2727841, 106300, -1152662, 2755222, -763967,
--1513976, 857920, 945967, 79994, -1780801, 776852, -1234803, 384936, -2411087, -2805151,
-707059, 1248762, -113280, 2422362, -853625, 1174674, 4718022, -12399571, 4350265, 3636227,
-2503966, -9381819, 7175817, 11732240, -11435887, 4339528, -7015829, 4594542, 665720, 4125853,
--3360275, -287763, 2754685, -7842611, -3831648, -3396246, 6229313, 6469832, -2087354, 3025268,
--1542430, 4775467, 6175626, 2363843, 1899986, -6237903, -2282775, -7783555, -8545374, -6035503,
-628676, -2901251, -350040, -3615826, -8506720, -2923262, 1796370, 754304, -467078, 12933220,
--10432476, 3845606, -5168457, -1532230, -3200288, -3321084, 5561446, -3305514, 476741, -3999152,
--2600066, -4853850, 6666326, -6096169, 5479842, -1429687, 5475010, -508954, 878858, -577673,
-5295158, 3010772, -91805, 11223823, 507343, -5644661, 3021510, -5078262, -6158446, -7509214,
-7353521, 2567317, 6558415, 6611566, 7828115, 4553739, -870268, -1401233, -1337346, 7461432,
--1031866, 8368207, 1852742, -365609, -1211718, 2866891, 4333622, 1109712, 1821603, 583042,
--498753, 830002, -1337882, 2248952, 172336, 1928977, -503048, 1831267, -126165, -2927557,
-1522029, 2013803, 69256, 1639067, -444529, 93952, -1620813, 1417339, -332323, 695248,
-3179350, 3192771, -13077639, -939524, 1593433, -2913599, -10316511, 11792906, -846645, 523986,
-9853729, -2688113, -10320806, 3703336, 6620692, 12789876, -899796, 5460514, 1015760, -11077794,
--3364033, -5712307, 5610838, 3340948, 2895345, -4082367, -839666, -370441, 949188, -3676492,
-5227512, 1574106, -4567698, 6663105, 856309, -7232725, -6230924, 1823214, 7870528, 7232725,
--10009421, 19568944, -1027034, 479963, 5293011, -658741, -2612951, -57445, 12450573, -6140193,
-6131603, -1387811, 8605504, 2732673, 7710003, -2823941, -6150393, 4435091, 6589554, -3161633,
--7462506, -7933342, -7145752, -3079492, -1472637, 7536594, 147640, 6571300, -805306, -1977833,
-6350646, -5422396, -10789495, -2712272, -6896644, -6316823, -11989401, 9082782, 7766912, 3359738,
--18576270, 4524748, 3893925, -1224603, -557272, -6306623, 8857296, 4711043, 3503620, 2341831,
-8137890, -532576, -586263, 780073, -84289, 2073396, 925565, 220654, 2500745, -1317481,
--330176, -1731946, 566936, 837519, 2762201, -1729798, -287226, -559420, 2136209, -782221,
-807991, 1456531, 1719061, -1265942, 4094715, 197569, -96637, -1287417, 1620276, -2335389,
-933082, 322123, -622233, 1110249, 2019172, -169114, -3582540, -1018981, -475668, -7545184,
--358093, 430034, 5530844, -7934952, 535260, -1342177, -3111704, -16325708, -1822140, 7502234,
-6043019, 7690676, 1042603, -8839043, 23117662, 9528922, 15764141, 1494112, -6710887, -2869575,
--2088428, -9892383, -483721, -3965329, 5028333, -109522, 635655, -3262028, -4043712, -8386461,
-2907693, 678068, 532576, 4122095, -226023, 1672890, -697932, -7304666, -5442261, 4202626,
-149250, 10306311, -13073344, 10427644, 6600828, -4792647, -9420474, -15036681, 3272228, 11629161,
--5900748, 11252277, -774705, -641561, 2734821, -3476239, -13110925, 1454383, 6370510, 2655901,
--5630166, -1637456, -3489661, 2792803, 6529424, -469225, 1751273, -1003949, 6288906, -2899640,
--1997697, 4080756, -3544422, 9586367, -2487860, -5058398, 3722663, -8935679, -4382478, -60130,
-3588982, -3949223, 1741609, -1523103, 2042794, -69793, 2406256, 1864553, -684510, 1059783,
--4072703, 2126009, -472983, -5769215, -1864553, -1732482, -3300146, -136902, 1072131, -2771328,
--1799054, -260382, -3486977, 120259, 996432, -915365, -3699578, 199716, 20938, -2994129,
-1251983, 1975148, -2250563, -287763, 750009, 90194, 1169842, 3200288, 2842732, -3000572,
--2234457, 3721052, 2508798, -17737142, 12673912, 11525545, 13497472, -4332012, -12140799, 4262755,
-4802847, -18053896, -16489990, 15939161, 1683090, -7770670, 5968394, -11281268, -12897787, 1835025,
-33378338, 15531139, 6144488, -9084393, 86436, -3241090, 198642, -3816079, -1925219, -4239670,
-1137093, 9514426, 1819992, 11730629, -4719096, -3898220, 2078764, 8192650, -1639604, -1194001,
--17558364, -755914, -9921911, -539018, 13482976, 9658308, -3660923, 9438728, 18736794, -8975408,
-5355824, 15568183, -11525545, 16454557, -1453846, 6758131, -3987877, 676457, -2309619, 2268280,
-3733937, 16318728, -6347425, -2081985, 4162360, -7635378, 4716411, 2502355, -4472135, -7442105,
-16004659, -1089311, -8929237, -2946348, 9888625, -4222490, 6681896, -69256, 392990, -10642392,
--11654931, -5586142, -9956271, -8938364, -9757629, -614180, -2400887, 4675609, -706522, 824634,
--981937, 5888937, 3663070, 399432, -7426536, 245887, -1475321, -5473399, -1662152, -2831457,
-2755759, 1064078, -3831111, -1273995, -2964064, -2268280, -373662, 2014877, 1885491, 2059974,
-3471407, -2235531, 340913, 2216203, -1674500, -2181844, 2516314, -3744675, -1577327, -1178432,
-1541356, 668941, 2546379, 421444, 151398, 2150168, -1123671, -2604361, 21620328, 3959960,
-2995740, -11220065, -6612102, 633508, 2428804, 4454418, 4962298, -21456582, 900333, 1418413,
-15470472, 2545305, 3881577, -1420560, 14066018, -23051090, 636192, 11890617, -13839458, 3496640,
-2623151, 11198053, 2115272, 1238024, -3861176, 408559, -11895986, 4052302, -3030100, 2141578,
-3135326, -1977833, -9044664, 3326452, -7157026, -12268574, 6869800, -6919729, 4490389, -11535208,
--7381438, -1185948, -3674345, 2801393, -5004174, 12724914, -232465, 12133819, -12859669, -10764799,
--3551401, 208843, -300648, -3725347, 10800769, 8920647, 22622666, -3619584, 14437533, -8486855,
--1548873, 4402879, -17330730, 19696184, -619549, 12270185, -577136, -17157320, -10448582, 7248831,
--23084912, 11987254, 3207804, 17489106, 21927418, 2879239, -16427713, -12339978, -5192616, 12556337,
--1634772, -3029026, 588411, -4591320, 559956, -3360275, -5058398, -1706713, -8072928, -388695,
-243203, -3693135, -3439195, -4509179, -3333968, -1549946, 1876901, 3825205, 1297617, -643708,
-3369939, -2411087, -1468879, 803696, 1716913, 2221572, -2373506, 2812667, -3053185, -1387274,
--4395362, -7454990, 4454418, 771484, -4371740, -4283693, -966905, -5930813, 651761, 27380,
--2119030, 4322348, 11087458, 16983912, 5907191, -7101192, 16158741, -17376900, -1824824, -5381057,
-2119030, 13770739, -12542378, 31110596, 4100620, 7651484, -9223442, -12652974, 4306242, 25770,
-26439282, -3884261, -9225053, -15228343, -10260140, 7289097, 4677757, 4221416, -1973001, -15002321,
--23047868, 1620813, -13923747, 18327162, 2332704, 14860587, -9325448, 6147709, -6061810, 7642358,
-21536040, -3707631, -2373506, -3386582, 5556077, 7064148, 3605625, 1457068, 2137820, 9252970,
-8340290, -4995047, -7521562, -6814503, -7536057, 24578488, 9654013, -14644765, 11068131, -3446711,
--11977590, -8666170, 4248260, 8893267, -17032230, -22228066, 2339147, -10018011, 28858960, 14894410,
--5111548, -3465502, 6003291, 12901008, 3204583, -2394444, -4000225, -20190642, -1089311, -5083094,
--21881248, 8042863, 13521631, -2410551, 6688338, 3599720, 13785234, -7865159, -2235531, 4812511,
--2356863, -6502044, -7299297, -398358, -4486094, -10810433, -2379949, -5099200, 4414690, -2276333,
--6059662, 3837017, 1409823, 359167, -3843996, 3818763, 892279, -6889128, 2086817, 2406792,
--3339874, -9483825, -4789963, -1939178, -1242856, -367220, -3736622, -719407, -2843268, 1019518,
-832687, -2080912, 154619, -411243, -3038689, -6002754, -1036698, 945430, 3041911, 1398012,
--4617090, -116501, 3068217, 1240709, 1174674, -4787815, 1394791, -2016487, -2319282, -2550137,
--2859375, 251256, -55835, -3093450, 1384590, -8476655, -13437879, 7614440, -4278861, 11682848,
-5711233, -13160854, -5178120, -6776385, 3051038, -17642652, 12058658, 16238734, -6437082, 10042707,
--2226941, -4765266, 8289287, -12424804, 7863012, 13151727, 3967476, 22850300, 11494406, -9891310,
-10153840, 3966402, 8958765, 180389, 12706124, 10573136, 16924318, 6049462, -6228240, -8019241,
--10018548, -1197759, 26097832, 336618, 11202885, -16464220, 34006476, -10217190, -26148298, -12707734,
-21575232, 1474248, -2684355, -3128884, -1279900, 15657303, -11373610, 8980777, -2088428, 19771346,
-30798674, 15503758, 14994805, -11052561, 17635672, 10286984, 10589242, 11597485, 17635672, -3813931,
--30023432, -19641422, -21735218, 5513665, 8123931, 6087580, -4828080, 10054518, 27039504, 1681480,
-2360085, 6329171, -1217623, -23666344, -24966644, -8829379, 5301601, 2502355, -790811, -14627048,
-3959423, 528281, 1478006, 7397008, -1385127, 4636954, 1940252, 9176198, -2066416, 6068789,
--4657892, 941672, 1272384, 10681584, 5277978, 10663330, 1513976, 5346161, -1647657, 1047435,
-4939213, -3173444, -6762426, 1457068, -3912715, -8118025, -5974837, -1900523, -1426466, 10406706,
-2507187, -191126, -2918967, 1490891, 351650, -3973382, -4029216, -3324842, 2690797, 6597607,
--558883, 469225, 1149441, 2877628, 2430415, 7043747, -6949794, 4421132, 11141145, 13085692,
-4728222, 6146635, 10188199, -8028905, 23695334, 9350144, 4577899, -6760816, -18182208, -7331509,
-9912785, -985695, -25766582, 34693672, -12187507, -6795712, 10684805, 527744, -3468186, 2516851,
--6741488, -8141648, -1785096, -18872624, 4660040, -20280836, 551903, -16077136, -18116708, -3628711,
--3863860, -3968013, -13258027, 5815386, 14165876, 3806415, 10842645, -18821620, 18547816, 33830920,
-3484292, -13578539, 21114596, -17328582, -27481348, 45726368, -4711043, 3251827, -3205119, -20438138,
-15749645, -18526878, 7997766, 27944130, -585189, 38378216, -29971356, 28914256, 8394514, -18976776,
--9980967, 3634079, -18278308, -9081171, 20293184, -19921132, 13201656, -13391171, 7308424, 21250962,
--46662136, -20532092, 21430814, -39996884, 14099841, 12427488, 22846004, 20262046, 9067750, -1604707,
-13387950, 20101520, -21850646, 21810918, -457414, 7565585, -1202054, 6865505, 1711008, -4111358,
-1445793, -6292127, -2136209, 1671816, -1190243, -10929618, 6841883, -1893544, 8929237, 5431523,
--7838316, 6182606, 7434052, 5507222, 2182380, 3959960, 2274722, 5034776, -15319075, 8608725,
--2081985, -4086662, 10732050, -8617315, -7163469, 3722663, -9099425, -7247758, -2958696, -6587943,
--8923868, 4964982, -13497472, -40039832, -10497974, 13196824, 30895310, -9804337, 15568720, 483184,
-7320772, 16088947, 10321343, 27824408, -7243999, 1226750, 7569343, -24559696, -15884937, -7292855,
--8019241, 5701032, 359167, 2124398, -12884365, -2084133, -17038136, -13768055, 6578816, 34343096,
-19677392, -8983461, -11041824, 16386374, 19529216, -11632919, 5109938, 15109158, -6031745, 32848446,
-11105175, 4854387, -25376278, 15653008, 3149285, 12341052, -2659659, 3209951, -4239670, -5422396,
--39979168, 10613938, 27544162, 13670344, 3632469, -741956, 13859323, -22422414, -41531796, 3115462,
-54919748, 13261785, 43555800, 41386304, 487479, 3639448, -26365194, -23529442, -2576981, -20180978,
-27474368, -59989956, 11278047, -22457310, -47996796, 10678362, 22375706, 47951164, 4236449, 2422899,
--30601642, 10004053, 14366666, -21322902, -2055142, 1537598, 22332756, -5977521, -14347875, 33927020,
-7116761, -12090870, -493921, -19597936, 2532420, -18548354, -3804804, -613643, -9132711, 2850248,
--7387344, -7761006, -4310000, -56908, -3758097, 6303402, 17521856, -966905, 157840, 6577206,
--15949898, -9585830, -1956358, 4843113, 4988605, -13821742, -7878044, 11032160, 6448357, 3863323,
-2617783, 11652783, -472983, 237297, 1166084, -7805566, 1394254, 11148124, -5698348, -10584947,
-29414620, 51126216, 1430761, 13908715, 9332964, -26996554, -7531762, 26765162, 8563091, 11755325,
--6633577, 7721815, 4678293, -9600326, 526670, 13849122, 14870787, 17920752, -7851737, -2299418,
--39681204, -37410776, 5252208, -23163832, 903017, 19931332, 4949950, 2294586, -6807523, -4549444,
-12947179, 31241056, -22654342, -13158706, -2868501, -22214644, -1510218, -21414706, -6526740, -22729504,
-20102058, -27524298, -2131915, 4844186, 13391171, 47869556, 64063732, 16468515, -16716550, -34219616,
--2910377, -23438174, -9060770, -36391256, 5532455, 34897684, 25919054, 20903606, 2629057, 4990752,
-35961760, 34726420, 25693568, -2193655, 16256451, 5866389, 8086350, -41384696, 12557411, 4469987,
--9416179, 24793772, 33907692, -4800163, -466541, -16702591, -70427264, -1468879, 20969640, -10352482,
-48935248, 34578780, -16013249, 3120831, -17864380, 12036646, 3482682, -6654515, -10644003, -5023501,
--884763, 7471096, 9554692, 14329085, 525060, -8816494, -18687402, 974421, -8748312, 7059316,
--8246337, -11592117, -2728378, -3100430, 8647380, 3441343, -3093450, 4354023, 2605435, 3427921,
-979253, -6650220, -10245644, -5395016, 4071629, 8572755, -601832, 6964827, 69256, -10550587,
--10671920, 2879776, -13091597, -7606387, 202400, -5970005, -1443646, 3587372, 5621576, -5092758,
--8760660, -12652437, 32117228, 22590454, -15025943, 15244450, 23911694, 2504503, -29519310, -35640176,
-33332704, 11114838, 7868380, 25924960, 785979, -11516955, 28208272, 7225209, -21029770, -10929081,
--7486128, 9304510, 807454, -12862890, 5138392, -14211510, -1191317, -6484327, -6621229, 18943490,
-35785668, -12233141, 7607998, 16633335, -8094403, -7274601, 7111392, 20128902, 6719477, -15654619,
--19427748, -23786602, 12955769, 13240847, 32530082, -15392626, -14235669, 11237245, 19491636, 29994440,
--589484, -55823836, -11662447, 17884780, 18196166, 7984344, -10609643, -496069, -22009024, 3272765,
--9349607, 23094576, 33498060, -10114111, 1023276, -19523310, -20777442, -8207146, -42379516, -8659191,
--21392158, 18858128, -17054242, 19567334, 24675124, -49461380, -3797825, -20964272, 21492554, -8768713,
-7800198, -15425912, 2852395, -13148506, 14926622, 16174310, 28385976, 26998702, 13769128, 25975426,
-12452721, 1490891, 14148159, 8799851, -3501472, 11533598, -12483859, 6151467, -6185827, 5318780,
--15823196, 9564892, 494458, 7563975, -11529840, -6850473, 8185671, -3180960, -3569655, 13915157,
--10558640, -2588255, 11770358, 5531918, -7141994, -2463164, 5083094, 25732222, 14332306, 11184095,
-15690589, 971200, 17025788, 5508296, 5563594, 8580808, 523986, 13808320, 4371203, -23925116,
--10611790, -6439230, -7676181, 2974265, -4665945, -11514270, -16417512, -26583700, -6292127, -14698452,
--27400280, -40860708, 19863150, 21465710, 12312061, -27240830, -37575060, -28481002, -16492674, 6924561,
--1455457, -36183488, -21942988, -24739012, 35083440, 11179263, 15161235, -10923712, -20310364, 44937168,
-10852309, 14141180, -8778913, 2830384, 13014288, -8976482, 10300942, -3122441, 21136608, 30328912,
-1123134, -24166170, -19736986, 24055574, 16172162, 21090974, 5854578, 5412196, -10975252, -4568235,
-3275986, 14780056, 31408558, -110595, -59106804, -54470924, 619549, -13196287, 35198332, 36126044,
--40185324, -26892938, -16986058, 49964428, 44231720, -23902030, 6945499, -31348430, -30488900, 18635864,
--14097693, 335544, -4790499, -21713744, 15485505, 16173773, 12632573, 50592032, -37096708, -9808095,
--3540664, 13073344, 3995393, 20893942, -73938936, -42777876, 15350750, 23302346, 22782654, 6626061,
--24464670, -24789478, 352724, 14857902, 42601780, 10497437, -14273787, 4490925, -27698244, 17256642,
-14865419, 973347, 23839752, 51328616, 12240120, -37507948, -19775104, -2581812, 4267050, 24816858,
-21452824, 10262287, -11377905, -4554276, -7853348, -8832063, 22231824, -2578054, 1998770, -8836895,
-21556978, -9989557, -4210142, -537945, 18700288, 8238821, 6620155, -3956739, -23638426, -8438537,
-7610682, 18815714, 3192235, -26186416, -36371392, -30287036, -787590, 4379793, 5537824, 3620658,
--9974525, -7541963, 49510772, -32897302, 30923228, 30684320, 19726248, -71683008, -28685550, 23968602,
--19394998, 13857175, -5036386, -29787746, 19139448, 5711233, 5763309, -13179107, -47350940, -4519380,
--1360968, 158914, -6684580, -34581468, 25924422, -21377126, 44214004, -4678293, -3768297, 21474836,
-16094853, -21116744, -1865626, -15989626, 23669564, 37119256, 28360742, -31344672, 7117835, -20981988,
-18996104, -18227304, -7379291, 3080565, -1497870, 20167018, -18444738, -43514460, 11287174, -15575699,
-16344498, 16945256, -54945516, -9359271, -10395968, 1992328, 61061552, -16452946, -44256416, -11805254,
-38851200, 18584324, -23915988, -7902203, 24144158, -118648, 29783988, -44649408, -23460186, 26838714,
--27901718, -68066640, -19958176, -9295920, 77772192, -21206938, -39999568, 21325050, -46161236, 122080688,
-11686606, -113466056, -30079266, -20056424, 80652504, 43567612, -50491636, -26745836, -525060, 59485296,
-47591460, -7427609, -37176700, 14595909, -12483859, 53643068, -5054103, -26989038, -22176526, 35128536,
--27991912, 18186502, -53733800, -278636, -1911261, -3176128, -3008088, 11288248, -29672318, 28848222,
-2558727, 21147346, 1020592, -34072512, -25972740, 19340238, 23105850, 35985920, 13623099, -3720516,
--23346906, 3089692, 6033356, -6259378, 1724966, 23567560, 3862249, -1169842, -26721140, 5125507,
-19306414, 7009924, 981400, -7924215, -19158238, -21267068, -9867150, 6493454, -6277632, 9400610,
--8863202, -5409512, 3647501, 707596, 284542, -65521872, 18358838, -1025960, 22378390, 54216984,
-17355962, 7482907, -30563524, -12655121, -30544196, -36544804, -12259447, 7208029, 20888036, 27675696,
--3111167, 16105054, 19474456, -16950626, -34417184, 18247168, 6538014, -27941984, -9515500, 26582626,
--9051107, -2954938, 24295556, 13644037, 10793790, 3403225, 13806709, -13208098, -31971736, -13880261,
-9095130, -13077102, -7565585, 11726334, 773094, -22493280, 23454816, 5086852, -20861730, 2692945,
--5044439, 20216948, 11230266, -8128226, 9474161, -12425877, -28029494, 3778498, 6806987, -2521683,
-54224, 5953899, -12251931, 3897146, -10492605, 6320045, 19977504, -2090575, 8725226, 9274445,
--7742216, 532039, -19090056, 6562173, 11240466, -34631932, 20113868, -21585432, 6805913, 1042066,
--113280, 9592273, 3855807, 22668300, 4116189, 6439767, -3283503, 11619497, -12179454, -7966091,
-2789581, 1983738, -10659572, 3879966, -964757, -3050501, -6163278, 2242510, -1227287, 12294344,
--3153043, 1509681, 8754754, -6106907, 6078453, -3743064, 2123325, -6109054, -5386963, -6100464,
--1632088, -2715493, 4616553, 3357054, -14369887, -3872987, -4209605, 10048613, -5939403, 3791919,
-1701344, -15935402, 5304822, 10435697, 665720, -3839701, 1714766, -4642323, -2385318, 3501472,
-53103512, -1974611, -1726577, -14778446, -14455249, 10877005, -608812, 9408126, 195958, -5235565,
--6985228, 3544422, -9790915, 9900973, -9221832, 14448807, -11715597, 8394514, -9916543, -2271501,
--1590749, -9306657, -7061463, 2027761, -4169340, -2984466, -68719, -7018514, 920197, -1449552,
-2214593, -1705639, 4051228, -14010183, 12690018, -4846334, -4168266, 9546102, -7732552, 437013,
--9656697, -8529268, 6137509, 5335960, -6791954, -4465692, 2716567, -525060, -11814381, 2930778,
-2057826, -101469, 7729331, -2968896, -3349001, -3278671, -8078297, -2291365, 8430484, -9092983,
-2292439, -4463545, -1131187, 469225, -2760053, 1873143, 22549, 5797132, -8618389, -856309,
-5515812, -11206643, 6429566, -5114233, 40802, 4946729, -2493766, -5177046, 2250026, -1021665,
--1488743, -502511, -3650185, -220654, 3703873, -378494, -1806034, 519691, -3174518, 2024540,
-1530619, 781147, -2576981, -900333, 3193845, -4296578, 4086662, -2047089, 1744831, 4454418,
--5604933, 1169305, 311922, -7153268, 1208496, -2390149, 2815351, -1156420, 142271, 4071629,
--2866354, 643708, -4576825, 600222, 573378, -1300838, -1165547, -721018, -1704565, 134218,
--904628, -3221, 3033858, -4752382, 1906966, -25081536, -41907068, 15437723, 134908688, 33542620,
-74461312, -3099893, -72216656, -23687282, -71062920, -61036316, -21361020, -14854681, -4823249, 40169756,
-54351200, 71464496, 90659784, 38878044, -23036594, -42120744, -88750128, -84697832, -34316788, -28434830,
--18692234, 36309652, 49912352, 29553670, 46285252, 55148452, 18859738, 14976551, 10475962, -28886876,
--13069049, -20744156, -44627932, -24908662, -33125472, -49488224, -26693758, 5906117, 5406827, 27330488,
-66918812, 45488000, 38154880, 36848672, 11532524, 2540473, -3667902, -19423990, -27302034, -34915936,
--49502720, -44076564, -24404542, -7891466, -16632798, 13653164, 25862146, 21672942, 37857452, 41861972,
-27134530, 24269786, 24041616, -3911105, -11590506, -6076305, -34097208, -28540058, -7118909, -28249074,
--29894046, -19194746, -26875220, -13300977, 7854422, 17096118, 31374200, 49896244, 31187906, 28610388,
-31982474, 11615202, -3650722, -5971615, -16962436, -28450938, -29235306, -28164784, -30578020, -21518324,
--19514720, -16485695, -6593312, 7524783, 19127100, 29263760, 44532368, 46589120, 45706504, 38570952,
-12400644, -10231149, -20601884, -33546378, -44077100, -50093816, -49730352, -39632884, -22121766, -5448703,
-13857175, 40861780, 45739792, 45540612, 47982300, 39427264, 20939576, 6495601, -11060615, -32013076,
--44484052, -39504036, -36698884, -29142426, -13357348, 1131187, 11069741, 21948894, 25113748, 24494736,
-19714974, 8796093, 4284230, 1563905, -3399467, -4204236, -3983045, -5583458, -6677064, -5368172,
--7371775, -5134097, -3984119, -2903398, -3385508, -1179505, -172872, 2091112, 2563559, 4687957,
-5692979, 6900939, 5105106, 5247377, 3579855, 2268817, -804233, -1753957, -3803194, -4087198,
--5884105, -5468030, -5403606, -3854196, -3432753, -1069984, 374199, 2193655, 3015067, 5350456,
-5149666, 5622112, 4379793, 3543885, 1340567, 1013612, -961536, -1573032, -4227322, -5602785,
--6182606, -4447439, -3918621, -1227824, 38655, 1388885, 1663226, 3213709, 3008625, 4273493,
-3606699, 3796214, 2310156, 1578937, -874563, -1637456, -3441880, -3321620, -3776350, -2857227,
--3117073, -1535988, -957778, 1004486, 1697586, 3135863, 2666638, 3160559, 1772211, 1504849,
--61203, -348966, -1237488, -654983, -1475321, -850404, -1444183, -568009, -930397, 16106,
--350577, 532576, 37044, 731218, 77846, 665720, -14496, 563178, -163209, 400506,
--289910, 349503, -307090, 331786, -312996, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
-3051038,
-3178813, -2868501, -430034, 4394826, 1531693, -2373506, 547071, -2615098, -2204392, -1890859,
--3933116, -1454383, 2503966, -261993, 1416266, -739808, -1068373, -1173600, -419833, 3295851,
--2057826, 144418, -85899, 82141, 2733210, -153008, 1901060, 5783711, 4626754, 4521527,
-2442763, 976568, -674847, -5471789, 2285460, -2082522, 3533684, 1166084, -1770063, 1568200,
--2348810, -4751308, -1379221, -1875827, -4373351, 125091, -479963, -698469, -2014340, 218506,
-4698158, 1990181, 3213709, -112743, 2001455, -1874753, -65498, 2359011, -1936493, 1559073,
--2416456, -2704756, 333934, 5390184, 3658239, 2029909, -996432, 847719, 650151, 251792,
--919123, -2158221, -3137474, -2386391, 137439, -2052458, -929324, -2204929, 774168, 262530,
-1172526, -695785, 976031, 1224066, 1124208, 74088, 729608, -556735, -469225, -81604,
--1268626, 1340567, 1218160, -199716, 1521492, 364535, 357019, -723165, -351114, -906238,
-343597, 405874, 48318, -331249, 566936, -388695, -1173600, -416075, -764504, -116501,
-306016, 238908, -1232656, 164819, 887448, 1994476, 1034550, -3459596, 8165807, -180926,
-499827, -868657, -4301947, 3180960, -2240362, -2157147, -5013301, -3872987, -1619203, 3114388,
-4491462, -909996, 2660732, -1034013, 4873178, 5044976, -10065793, 1843615, 57982, -988379,
-3419868, 5361730, -1643362, -782221, 120259, -329639, -2547989, 2108829, -2568391, -2038499,
--195421, 2688650, -1505923, -5665599, -2504503, -3850438, 466541, 345208, -5014911, -594853,
--2179159, 1046898, -132607, -756451, 1254667, -1673427, 1725503, -2692945, 2665027, 3876745,
-5967320, 2474438, -2577517, 2136209, 2517388, -929324, -6709813, 445066, 3529390, -2698850,
-2046552, -3897146, -18790, -2484102, -6813429, -2076617, -3549791, 1741072, 2570538, -2299955,
-1118839, -1076426, 3258270, 261993, 1921998, 2713883, -1120987, 1125818, 581431, 1151588,
-2362769, -535797, 823023, 2920578, 1691143, 401579, 1775432, 320512, 790274, -112743,
-537, -1572495, 884226, 1008244, 1362578, 910533, 340376, 433792, 86973, 511101,
--162135, -434329, -76773, 1080184, 950262, 286152, 857383, 200253, 985695, 811749,
-6718403, 1789391, -9036611, 3184718, 4697621, 1662689, -746787, 2328946, -5661841, 767189,
-2570001, -1315871, 2487323, -426812, 3022046, 681289, -3806415, 2381559, 3562675, 3439732,
--966905, 1624571, 1946157, 1283122, -10230075, 1407139, -4327180, -1329829, -1407139, 2365453,
-1159641, -8420283, -2972117, -1912871, -1543504, 3377455, -3073586, -5900748, 1497870, 2689187,
-1745904, -5869610, -2694555, 1841467, -5459441, -474057, -6037651, 866510, 3040300, -3148748,
--895501, 3459059, 4493073, -10377178, -710280, -2899640, 3191698, 1261110, 572841, 873489,
--2857227, 2615635, 2338610, -8059506, 6234682, -847182, 1579474, -4119948, -1655710, -3486440,
--372052, 887985, -3157875, -4482872, 4027606, -1453846, 1696512, -234076, -745177, 1138703,
-1409823, -1640141, -4069482, 2292976, 2150168, 523986, 1032940, -135828, 377420, 685047,
-33286, 683974, 546535, -95026, 1656247, 226023, 1285269, 1449015, 150324, 2043331,
-12885, 403190, 619012, 920197, 804233, 1022739, -1457068, 701690, -622770, 318364,
-748935, 507343, 1272921, -399969, -289373, 914291, 1717987, -4269735, -4184909, -3311420,
--2248416, 6873559, -2459406, 1014686, -5600101, 5934034, 302258, -3870303, -1131187, 3476239,
--7144141, 2486249, -2170032, 1682017, 1052267, -3138547, -2379412, -8301098, -2345589, -9359807,
-1138703, 2224256, -1099512, -1191853, -948651, 1522029, -3784403, -6643241, -3215857, -2383707,
--1124208, 2570001, -1635846, 4108673, 1698660, 3171833, -4258997, -138513, -289910, -3395172,
-887448, 2850785, -354872, -1643362, -4175782, -3687766, 2469069, 3913789, -204548, 7653095,
-5909338, -5309117, -1457605, 115427, -5789079, -6430103, 9792525, -58519, 191663, 3199214,
--6352794, -1960116, -4143033, 9853192, 2556043, 611496, -7841000, -6058588, 751082, -2434173,
-4960687, -2478196, -132607, 1489280, -3123515, 1214402, 2964601, -4457639, -25233, -7173133,
-719944, 2853469, -2179159, 1176821, 801011, 3685082, -586263, 688805, -779000, -22012,
-1473174, 1705639, 1411971, -981937, 402116, 47782, 594853, 170188, 581968, -941672,
-2228551, 143881, 588947, 472983, 656593, 666257, 595390, -485331, -664109, -389768,
-439160, 1673427, 1750736, 455267, 758062, -1364726, -610422, -11350525, 5664525, 3270081,
-5777268, -3077881, 3151969, 3374234, 5939403, 1459215, -11402064, 2885681, 459562, 4566087,
-8223252, 481036, 3555159, 3187940, -6838125, 2440615, 602906, 992137, -1877975, -896574,
-4199405, 2850785, 146029, -4114579, -75699, -1935957, -2181307, 6864969, 3123515, -231928,
--935766, -8177618, -7084549, -8031589, 2129230, 2241973, -8404177, 651761, 546535, -8249022,
-501974, 1341104, -1130650, 9606768, -1196685, -4632659, -1199907, 5543729, -472446, -8443906,
-9224516, 4850629, -5898064, 4561256, 878858, 928250, -169114, 583042, -2299418, -4205847,
--4057134, 7454453, -505196, -2090575, -357019, 5381594, -4935455, -8625368, 299574, 2050310,
-1619203, -7529078, -3947075, 2998424, -693637, 4321811, 1610076, -1275605, -1278827, -1086090,
--611496, 224412, 6746320, 4012573, 2435783, 2239289, 2604898, 4011500, -1882806, -547071,
--2132988, -566936, 746251, 277562, -1180042, -1817308, 1984812, 388695, 895501, 54761,
--1212255, 522912, 1051193, -2312303, -404264, 2014340, 420370, 206695, -876710, -170188,
--566936, -946503, 265751, 1073205, 787590, -603443, 804233, 170188, 3456375, 13121125,
-3940096, 10517301, -11575474, 416075, -5703717, 155156, 3873524, 4409858, -5938329, 2572686,
--3431142, -3087545, -4122095, -6769406, -968515, -15902116, -131533, 5206574, -680215, -1114544,
-1764158, -8360691, 2949569, -7975218, -2487860, 8141111, 1675037, 2785823, 212064, 2369748,
-6991133, 6271726, 12167642, 6273337, -9171366, -804770, 10252624, -1472637, -7474317, -1178969,
-965831, -3463354, 6874095, 5042292, -5876589, -1762547, 6592775, 6959458, -2477659, -4491462,
-11112691, -4615479, -14944876, -10151692, 3311957, -15090904, -285078, -4547834, 88584, -1439888,
--4191888, 5593658, 1626182, -1516124, -4904853, 4260071, -2932926, 7934952, 5465883, -2225330,
--5276904, 1090922, 2100239, 697395, 312459, 1840930, -1088774, -5912560, -1686848, 8121783,
--933082, -3368865, -870805, -1763084, -4209605, -4148402, -2262374, -2018098, 496606, -85899,
-4103841, -405338, -1464047, 525597, 1474784, -1031866, 865436, -1457068, 2792803, -139050,
-1719061, 205085, -2665564, -322123, -280247, -2862596, -748398, -1762547, 1290101, 31675,
--423591, 913217, 443455, -334471, 511101, -3197603, 692564, 872415, -12783970, 6045704,
--1086627, 3218541, 4296578, 6913287, 1601486, -6115497, 8329552, -3102040, 3732327, -3722126,
-3117073, -578210, -15025943, -3136937, -2534031, -1788317, 1076426, -3634079, -2444373, 2000381,
-3351685, 1126892, 8185134, 3742527, -7825968, -593242, 61203, -4445291, 9410273, -5614059,
--5370857, 9848897, 10430328, -1302986, -77846, -6476811, 2375117, 1394791, -3329137, 1713692,
-6475737, 3962644, 7778723, -1935420, -6032819, 3768297, 945430, 1847373, -7199439, -3762928,
--4213363, 1695438, 4185446, 1505923, 1149978, 7421704, 8949638, 1318018, -4194573, 5058935,
-4193499, -6293201, 915902, 1076426, -679679, 719944, -105227, 5305359, -543850, -4169340,
-2156074, 6997576, 3154117, 4101694, 8725763, -5941014, 1094680, -2033130, 8281234, 4705674,
-8866423, -4269735, -1095217, 1450088, -3104725, 440234, 903017, -1022202, 41339, 2026151,
-2396055, -907849, 1323924, 895501, 3097208, 2680597, -331249, -251792, -1346472, 367757,
--1357210, 707059, -2413772, 2397129, -10201, -964757, -6979, -231928, 126702, -889595,
--1874753, 2666638, -308701, 417686, -2983392, -2500745, -637803, 2558190, -248034, -308164,
-279173, -331786, 5341866, -11116986, -6671695, 4438849, -2615635, -10383620, 5277978, -5427765,
--4759898, 6718403, -2044404, -2208687, -1673964, 1741609, 4956929, 2590402, 2662343, 2759517,
--4146791, -2462090, -872415, 6053757, 3102040, -10612327, 3373160, 3324305, -4465156, 10006200,
-9160092, 4946192, 345208, -3618510, -2362232, 549219, -3126736, -3724811, -6164352, 906775,
--7037304, 5113696, 1950989, 75162, 1102733, 2704756, 2319819, 5473399, 8512088, -3216931,
--13509283, -2340757, -9203041, 3181497, 1264868, -12210055, 4427038, -5118528, 15341623, 5107253,
--9675488, -318901, 9758703, 5104032, -8012262, -4755603, 10209674, 5879274, -7100118, 8739185,
--7286949, -9590125, 1480153, -14526653, 8769249, 9452149, -2171106, -8739185, -1575179, 3452617,
-1774358, 1479079, 876710, 6778532, -9511742, 3073586, 10584410, 191126, 361314, -9314710,
-4638028, 2619930, -8616778, -2135136, -4352413, -2046015, 335544, 2708514, 2152316, 319975,
--2596845, 278636, -2782602, 1166084, 1649268, -338766, -1349157, -912144, 1691680, 554588,
--550293, -1437203, -2779381, -299574, -2713883, 5420786, -5071820, 3221, -543850, 2090039,
-1390496, -2899640, 882079, -885300, 4588099, -558346, 1291175, 156229, -2651069, 1100585,
-548682, -312459, 2965138, -46708, -8703751, -6455873, 224412, -10485626, 49929, -24634858,
--7730405, -2842195, -13434121, -4722854, -2796561, -5909875, -4538707, 3202435, -6462852, -12321724,
-3302293, 7720204, -12553116, -3483755, 3901441, 6308233, 10875394, 6921877, 6417218, 7007239,
-2561948, 12423193, -7366406, -3166465, 2659122, -6149857, 2368675, 3521873, 6534793, 856309,
-10667088, 2236604, 2653216, 7347079, -3213709, -6293738, 144955, -9650255, -6141267, -11138461,
--433255, -506269, -14616847, 5290326, -6603512, 3006477, -13802951, 1665374, -10437307, 15635828,
-820876, -13917305, 16749836, 20484846, 5784784, -6849936, -5048734, 5326297, -1746978, -661962,
-6085432, -9762461, 6407018, -10081899, 5383742, -4009889, -5652714, 2423972, 5407901, -2901787,
--273804, 6320581, 1688996, -3093987, 3584150, -1540820, -5741835, 776852, 5434744, -1019518,
--2096481, 2163590, 1606855, 4416837, 917512, 170188, 1932735, -1454920, 3104188, 796180,
-2578054, 900333, 2056216, 1654099, 1684701, 1347546, -1843078, 2142115, -2492692, -2324651,
-268972, 1415729, 495532, 723165, 1561221, 1033477, 157840, -791885, -1864016, 52613,
--1961726, 5373541, -2612951, 4846871, 7318088, 988379, 6759742, -3856881, 10522133, -8200703,
--7488276, -19982872, -4348118, -10400800, -24208584, 6011881, -13929653, -8585103, -11217918, 3017752,
--21803402, 5768678, 1850057, -4283693, -424665, -6374269, -2161979, 5160403, -7394323, -5398237,
-345208, 3913252, -6462852, -591095, 7533373, -12087649, -2724083, 6918119, -6611029, -493384,
-113280, -1984812, 10194642, -8957691, 6074158, -4122632, 8300561, 8618926, -8810052, -11916924,
-11118597, -1282585, 2459943, 2807835, 1043140, -2625836, 6281927, -3464965, -13635447, 3484292,
-2834142, -11940009, -1277753, -4328790, 7171522, 8587787, 4340602, 1377074, -3366181, -8507256,
-8664560, 5244155, 7754564, -614717, -12093554, -2923262, -1785096, -5383205, -2946885, -1498944,
-3553012, 5325760, -4643397, -4067334, -12016245, -5807870, 2374580, 4896800, 1391569, -1101659,
-5572183, 5130339, 3163780, 6317897, -1917703, 4939213, 2321967, 3355980, 626528, -28991,
--3278134, -2610803, -562104, 1547262, -743029, -2895882, -3498251, -179315, -535797, 685584,
--2363306, 512712, -2827699, 848793, 4860293, 1037772, -2706903, -2880313, 6172942, 3440806,
--706522, -412317, -7693897, -916439, -38655, -6595459, 220654, -2695092, -1979443, 1527398,
-2095407, 463320, -697395, -6038724, 29615410, 17015586, 1191853, -9438191, -22330072, -2783676,
-10462540, -4956393, -8989367, -16837882, -926639, -3677029, 596464, -5812702, 5436892, -149250,
-14666240, 5738077, -6103686, -490163, -2602750, 1051730, -3009698, 2970507, 9096741, -10698764,
-2073932, -6470368, 4243965, -4626217, -7742753, -15220290, -1210107, 8618926, 2924336, -1954210,
-3216931, -1183800, 8293045, 13034689, -4553739, -3044058, -15154255, -16506096, 4562329, 2380486,
--6940667, -6074158, -13645111, -9448928, 5426691, -1831267, 39728, 636192, -1043140, 6183143,
-3585761, -11304354, 485331, -10307385, -877247, -5587753, -3168075, 10825465, 22452478, 36903968,
-1407676, 11832098, -11137924, -14263050, -19945292, -1109175, -53150, 3990025, 4245575, -2786897,
--25216290, 10417980, -4273493, -3539590, 1603633, -6672232, 777926, -3653407, -10262824, 74088,
--4097399, 41876, 1043677, 338766, 7317551, 1005022, 850940, -447213, 321586, -360240,
-3154654, 6827388, 2056216, -297963, 1493038, 6185827, 192737, 25233, 2371359, -2119566,
-798864, -5756867, 1976222, 2934000, -5335960, 5433134, 357556, 426276, -1560147, -6016713,
--1893544, 2624225, 57982, -653909, -1457605, 3609920, -996969, 228170, 10808285, 18023830,
--8914741, 36507, 3462281, -14695231, 135291, -9486509, -9197136, 13849122, -4075924, -3473018,
--7442642, 15904801, 13973139, -1074, 22957674, 2586107, 7169374, 5055714, -6401649, -7495255,
--11951283, -6291054, 2798171, 113817, 10287520, 803159, -1123671, -1872069, 7269232, -10506564,
--25680684, -9001715, 7572564, 2376191, -2111513, -7649874, 454730, -12353937, -1858110, -11254962,
--780073, -1408749, -7933342, 7603166, 3774203, 14441291, -11929809, 22370338, 6003291, -4351339,
--7919383, -4064650, 3521873, 12905303, -3973919, 7384123, -11404749, 9215389, -10357314, -11651709,
-11487964, -16665010, 10920491, 9178882, 17725866, -18050136, 13715441, -1711008, 12227235, 4778151,
--18975702, -3317862, -4462471, 5291937, -10071698, 29869350, -1475858, -10542534, 4230006, 13805636,
-9369471, 6467684, 7121056, -940598, 3388729, -1219771, -3966402, -2517388, 1044751, -130460,
--3935801, 1129576, -1162326, -6056441, -1268089, -2311766, 2538863, 3197066, 1730335, -834297,
-5886790, -955630, 3253438, 1307818, 4161823, 1570884, -2119030, -2622615, 703838, -311385,
-2864743, -1163936, 263604, 2444373, -1491427, 4185446, -1990717, -2306398, 1154273, -1728724,
-4354023, 1584306, -1295470, 2629594, 1289027, -12488691, -16746077, -34305516, -10530723, -20143396,
-5616207, -916976, -6861211, -9975062, -9495099, -8581882, -9299678, -9110163, 957778, -7426536,
--1336272, -16145319, -24774982, 30357902, -9457518, 16451335, -3142306, 4249870, 5243082, 8870181,
-5850819, -1545651, -495532, -13103408, -2961917, -3115462, -8811125, -13741211, 5371394, -1547799,
-19433116, -13450227, 360240, 26882200, -6475200, -22330072, -7201050, 890132, -10118943, 15731391,
-7232188, -8632884, 6385006, 8454106, -5203353, -168041, 4252555, 10519986, -386547, -10351945,
--10189273, 12590697, 9004399, -6607271, -14337138, 9160092, 10599442, -9447854, -12899397, 9052717,
--16360067, 31329102, 6745246, -2551211, 1284732, 7669738, 1736777, -5506148, 515933, 2260227,
-11257109, -7370701, 2261300, -22246320, -20037096, -2230699, 1206886, -2176475, -9719511, 7095286,
-16565689, -449898, 4254702, -1541356, 3550327, 5020280, 5985574, -6384469, 7194607, -3301219,
--1894618, 4775467, 8855686, -2590939, -8856759, 2550137, -802085, 1502702, -790274, -4735202,
--1304060, -4893579, -3029026, -6044630, 6270653, 6426345, -3816079, 20938, 7713762, 2470680,
--3233037, 1643362, 9660992, 6370510, 6976101, 7038378, 6217502, 2337536, 8863739, 4701916,
-3714610, 3322157, 8345659, -12987444, 115964, 4706748, 3766686, -8523899, 20491826, 14322642,
-29458644, 16161962, 11044508, 4205847, -25549686, -2153926, 3628711, -15164993, -3892314, 29000692,
-2373506, -16864190, -16451872, 15015206, -22719840, -5960341, 1170916, 6107444, 2800856, -4380330,
-7607461, -10343355, 167504, -2099165, -6317360, -1438814, -4332549, -14941117, 8076149, -12945568,
-7803956, 6775311, 9056475, 1612760, 6081674, -5400385, 24382530, 3256122, -25416006, -22535694,
-2311766, 10143102, 19881940, -6450504, -15153181, -6802155, -1778653, 2245194, 11799349, 2542084,
--8819178, 26603028, -32285270, -5381594, 6456947, -22613002, -11438572, -5912560, 3653407, -36658084,
--17074106, 26350162, -9648107, 7741142, -8221641, -29574072, -10889890, 14349486, -4042638, 5641977,
-9423158, 18833968, -8588861, 2158221, -5252745, 11837467, 5676873, 5159330, 1107028, -355945,
-668941, 10344429, 5612449, 6174553, -1217086, -98247, 4159139, -6717866, -5904507, 2878702,
-12222403, 5711770, 4988068, -11396696, 7198365, 21809308, 290447, -56371, -7903814, 6049462,
-1370632, -4839892, -6330782, 1111860, 6828461, 7727720, 5857262, -6476811, 4929549, -4262755,
-5544266, -8390219, -4317516, -1496259, -4104915, -5358509, -1265942, -13783087, -12893492, 2469069,
--502511, -1920924, 5220533, 132070, -821413, 433255, 5661304, 4986994, 2007897, 75699,
-2788508, 3191161, 2444373, 3829500, -973884, 5212480, 14566918, -6051072, -47710644, -11932493,
-2303713, 13532905, 12593381, 12041478, 11480984, 21609592, 38002408, -21669184, 15709380, -5261872,
--1058173, -5339181, -31868120, -23235236, -4849018, -1108638, 6392522, 12671227, 15789910, -4759898,
--910533, -7992398, -307090, -1156420, -537408, 17009144, 8541616, 5905580, 12441447, 15526844,
--26999776, 13551159, -15850040, -19277424, -6187974, 13038447, 3266323, -12895639, 3997541, 1979443,
-9104257, -529355, -26252450, -18153754, -21837762, -20970178, 2407866, 18074832, -3705483, 64472828,
--42294692, -31180926, 18894098, -5240397, -13260712, -3919695, -3920232, 1118839, -39659728, 4562866,
--3306588, 5821828, 29571386, -1663226, 10053445, 12036646, 13864154, 49753976, -18761490, 62801012,
-16886738, -1234803, 7747048, 4044786, -26075820, -22229676, -874563, -5091684, 2736431, 10117332,
-7196218, -3951370, -22427782, -17613660, 6781217, -11719355, 7488276, 9185324, 18992346, 19379966,
-16850768, 3867618, 5584531, 243739, -1300301, 13266080, -2552821, -608812, 3643743, -17947058,
--4831838, 8319352, -446677, -1338419, 11335492, 4990752, -17626008, 12403329, -10046465, -12869333,
--7917772, -3598646, 2907156, 6154688, 5425618, -6587943, 8032663, 4151086, 5018670, 2973728,
-6743636, -2352568, 3913789, -10511932, -2739116, -5480379, 1969243, 4513474, -28000502, 10099616,
-45172856, 1161252, 47141024, 24688546, -2729989, -18278844, 53160956, 7851737, -8812736, 6759205,
--11965242, -3655554, -1700807, -3348464, 6812355, 14722074, 10428181, 1879048, 6923488, -10719165,
--10182294, 3156264, -3024194, 17383880, 19030464, 11989938, -4742181, 1153199, -22871774, -14462765,
--4148939, -15807627, -24745990, -14829448, 11971684, -14457397, -43736188, -20288888, 13524315, -17718888,
--12378633, 639413, -3097745, 20656646, 30472792, 39903468, -20987358, 11375758, -169114, 1357747,
--8445516, -26316338, -52490944, -34585760, 18408766, -35037808, -18270254, 9665824, 17991618, -12910672,
-20276004, 57814556, 12311524, 11298448, -43454332, -58369144, -12494597, -18074832, -31030602, -8766028,
--25887378, 18770618, 10792179, 52479132, 21772262, -5883569, -10368588, -17986786, 12591770, 23968602,
-47620448, 33354716, -22574884, -47667156, -23141820, -15051176, -28086938, -5051956, 24408836, 11824045,
-30136712, 1534914, 21509196, 8723615, -6634114, -8674760, -9980430, 6053757, 13269301, 3520263,
-17181480, 21361020, 13033078, 15326054, 7222525, 23067732, 20309290, 1151051, -107374, 10311680,
-22897544, -1873143, -5716602, -3031710, 19591494, 6282464, 1254131, -5352603, 12386686, 9632001,
--2608656, 8072928, 9889699, 5139465, -1728724, 2525441, 7191923, 1284732, -374736, -10878615,
-23513336, 48384416, -26116622, 36764384, 28444494, -4330401, -8177618, -15928423, 4215511, 32801202,
-23302882, 38398620, -17343614, -7206955, -8571144, -2063195, -11056320, 10242423, -13400298, 28217936,
-11028402, -45676440, -20688858, 627065, 6027450, 20052128, -10358924, -17156246, 4263829, 5625871,
--8284455, -8377871, 4247186, -12860743, -20928302, -8890045, 42348376, 18106508, 6392522, -21783538,
--8045548, -18464602, 9939628, 21154862, 6106370, 1550483, 11435887, -7206955, 26648124, 15829639,
-665720, 9314173, -1993402, 54861764, 10322417, -23171348, 7916699, 9585830, 4458176, 12511777,
--275952, -22127672, 25370908, 5922760, 3517041, 10451266, 3791383, 62277, -17366164, 18954764,
-20463908, 11205033, 60641716, 43933220, -24701430, -47524888, -34357592, -3201361, 3105798, -4798552,
--41525356, -20019380, -15404974, -16606491, -17653390, 15101105, 10739029, -4205847, 1461900, -3585761,
--23737748, 6581501, -5236102, -1209570, -24308978, -22334904, -5082557, 9515500, 10043781, 1394254,
-10772852, 5082020, 13863081, 2173254, 1912334, -25370908, -16154446, 10798622, 1868311, -7039989,
-12224014, 5626407, 1287417, -12236899, 10722386, 16186121, 10321343, 11730093, 13780939, -3338800,
-15381352, 32955820, 24932822, 5809480, 2500745, -4306242, -6874632, -17066590, -22584012, 5521718,
--8447127, -537945, 1131187, -1773822, -6098854, -3007014, -8282308, -56507812, -6669548, 13226352,
-16296180, -13495324, 20214800, 5330592, -7386270, -21660594, 5182952, -5886253, -30549028, -10743861,
--10503879, 1432909, -42267312, -34360276, -5185100, 20155744, -2303176, -7384123, -25360708, -391916,
-22701586, 138513, -14851997, -9791989, -2783139, -9623411, 6040872, 6439767, -21384106, -25368224,
-4351339, -1767379, 5807333, 39404716, -24117316, -3478387, -1009854, -40218612, -11303280, -29669634,
--3961571, -3323231, 28372018, 30452392, 38933880, 10108206, 7054484, -15454903, -33043868, 481573,
-14206678, -12525198, 47704200, 109369728, 106433584, 14601815, -67194760, -63053880, -23835994, -39957692,
-130440840, 79513264, 51035484, 64786896, -485868, -35603668, -91963304, -60108604, -22393960, -5757941,
-37867652, 74628816, 67759552, -8768713, -54933168, -34412888, -49687404, -40308268, 7617662, 53860500,
-80249320, 30114700, -3718368, 3715147, -29950418, -36881420, -35334696, 11844983, 6228777, 8681740,
-32613298, 16402480, -2624225, -21176336, -17140678, -12378633, -27453430, -6238440, 13059385, -11085847,
-1387274, -4451734, 20159502, 14089640, -25433186, -16814796, -52072720, -43009264, -37019932, 23604066,
-43419436, 15726023, 11795054, -16002511, -26593364, -83255792, -60437708, -37234144, 7901129, 22505628,
-15557445, 2966212, -29560112, -25854630, -47259672, -80293880, -30499100, 8877161, 24329916, 40490804,
-19937776, -402116, -21438330, -8649527, -13824963, 580357, 30331060, -29701310, 34021508, 5187247,
-4750771, -53274776, -15759846, 44768056, -29563334, 11606075, 1184337, -11398306, 15284715, 4235375,
-25607668, 37629820, -21502216, -31319438, 9114994, -19464792, 25403658, -32678258, -15462956, -21034602,
-3543885, -6428493, -17157320, 7310035, 38056096, -29918206, -30762166, -24652038, -6182606, -7956964,
-50694036, 1975148, -202400, -49718004, -11264089, 3499862, 42815456, 16955458, -6055367, -71229888,
--48875656, 46486040, 53251152, 49058192, -21610128, -118124488, -21605296, 51280836, 45289892, 5395016,
--12019466, 6108517, -45676440, -29492466, 17540110, -15276125, 16041703, -10050760, 3574487, 48091824,
--35149476, -20815560, 42736536, 30862562, 63643900, 24783572, -80986976, 24381992, 91071024, 17687212,
-46989088, 9865003, -23313082, -2295123, 58636504, 37513856, 77306728, -100787312, 15403363, -2249489,
--9389335, 37713572, 2371896, -53191560, 6266358, -3894999, -8895951, 5958731, 1482301, -33224794,
-29317984, -14723148, 950262, -301185, -5753109, -342524, 5890011, -10501732, -9714679, -18964428,
--23472534, 23034984, 537945, 7329362, 22932442, -25945360, 13296682, -2748242, -42030012, -1692754,
-15444166, 45407468, -10680510, -67647344, -5948530, 29444148, 10231686, 25780004, -19894288, -20286204,
--22069152, 9056475, -2352568, 14934675, -23378580, 10574209, 8338679, 5568962, -26137024, 841814,
-7994545, 17801566, -5888937, 2112587, -14991583, 4180077, -8034273, 14867029, -864899, 11423002,
--2007360, 3389266, -16766479, 521302, 81068, 17936320, -8945343, 5769215, -18122078, 978179,
--449898, 14801531, -3222836, 5930276, -58283780, 6589017, 10420664, 5558762, 57459684, 9682467,
--4315369, -36682240, -6273874, -3606699, -8597451, -363462, -6944962, 14704357, 6860137, -10812580,
--1854352, 22820234, 70330, -1282048, 2423972, -5710696, -9794136, 12806519, 11321534, 8595303,
--14266271, 7502234, 21348134, 8374113, -1225139, 13772350, -2505577, -16336982, 4322348, 4144107,
--13159780, -14302241, 14252312, 13879724, -13697188, 8782671, 8478802, -117038, -4988068, 106300,
-10836739, -594316, -12098923, 6302865, 7384123, -22471806, 5750425, 16626892, 5439576, -14607721,
-2279017, 10322954, -18931142, 5151277, 8875013, 3754338, -4922570, -18043694, 21252036, -22992570,
--2029372, 22145388, 361851, -3806952, 490163, -20792474, 9210020, -295279, 11885248, 22024592,
--9959492, -1571958, -12721156, 16848620, -3526168, -1868311, 17262548, -22526566, -9910637, 12528956,
-10212895, 4495757, -18326626, 6351720, -4027069, -1135482, 8790187, 6698002, 1259499, -4649302,
--2346126, 868657, 4974109, -15981573, 11658152, 2397666, -2223183, 4536559, -2097018, 10142565,
--15050639, -2706366, 311385, 907849, 1502702, 6988986, 4612795, -25538950, 13518946, -2706366,
--2971044, -1038845, 5202816, 7016366, -6333466, -2530273, 11894912, -10147397, -1304596, -7755101,
-5657009, 53880900, 4692789, -6545530, -18042084, -11944841, 6274411, -8003672, 6908455, -10691784,
--891743, 8551817, -4868346, 4028143, 3886946, -14914811, 4077535, -4877472, -3299072, -12293807,
-3421478, -3477313, -7812546, -3613141, 5890548, -5367636, -5375152, 7592429, -8492761, 4267587,
-7157563, -14960982, 14680735, -3738769, -17662516, 9329743, 9219684, -8215736, 2782065, 5312875,
--7506529, -6671695, -30602, 977105, 4715874, -2437394, -985695, -7422241, 6707665, -5820755,
--1960653, 8497593, -10381473, 2943663, -1960116, 537, -4941897, -6669011, -2804077, 11552925,
--8022999, -3050501, 1767916, 2426657, 226560, -7057705, 5236102, -3185792, -6171868, -214212,
--11223823, 16199006, -7291781, 3245922, 3467649, -3388729, 5512591, -9710921, -8002598, 9837623,
--4982699, -6755447, 6498286, -497679, 1719598, -4524748, 1048509, -1047435, 2896956, -3624953,
--2923262, 3686693, -2313377, -2662343, -837519, 2300492, -1682017, -285078, -1394254, 560493,
-2109903, -3238405, -3337190, 9229885, -2887829, -3404835, 2763812, -1144072, 2557116, -7543037,
-348966, -1321776, -383863, -2059974, 8568460, 32212, -7832947, 2430952, 689879, -416075,
--95026, 3307662, -2353642, -2296197, -1138703, -2080912, -1166084, 871878, -2570538, -149250,
-550830, -426276, -26924614, -43533252, 19808390, 150964880, 22950158, 75496400, -17844516, -76489072,
--28005334, -74539160, -49331456, -15467251, -8367133, 3696356, 44215076, 53475564, 73899208, 73679624,
-23216446, -28929290, -47203840, -86189256, -66285304, -34646964, -13700946, -8682813, 26505316, 44884556,
-34419868, 47284904, 45532560, 16986058, 14657650, 5738077, -33583960, -12269648, -28896540, -49605800,
--30228516, -28915868, -43283068, -9030706, 20010252, 15474767, 43853764, 57821536, 29873646, 38567732,
-28762322, -3905736, -1402844, -2551211, -31161062, -38048040, -34211024, -51158968, -43852688, -15299747,
--2707977, 6361921, 35465692, 32928978, 31448824, 39946416, 29573534, 10370735, 18640158, 10455024,
--11716134, -5360656, -21543020, -44891000, -27226872, -25402048, -35612796, -16935592, -11501386, -19787452,
-16739098, 32068910, 36714456, 58931784, 55248312, 23538568, 13623099, -607201, -20195474, -23659902,
--24696598, -35616552, -32888712, -29924648, -27705760, -17071422, -6964827, 114890, 13319230, 31664646,
-39142184, 36679020, 43939664, 30680026, 14680735, 6418292, -5219459, -22428856, -25631828, -35418984,
--46540804, -46643344, -37297496, -30897994, -4825933, 18759344, 41471668, 55892020, 60211684, 46755552,
-30258044, 13627931, -3714610, -23162758, -34282964, -46044196, -45962056, -32665910, -21626770, -6379637,
-8260833, 16751446, 21894670, 27651536, 23643258, 14987825, 12470974, 4644471, -334471, -4184372,
--5699422, -7177427, -7224672, -10187662, -8482024, -6447283, -5515812, -5310727, -3599183, -3301756,
--688269, 1966558, 5734318, 7007776, 9283572, 9989557, 10385768, 6591164, 3959960, 852014,
--1174137, -5822902, -8022462, -10578504, -10247255, -8760660, -5264020, -3508452, -652835, 1043140,
-5143760, 7254200, 9100499, 7361574, 7191386, 4971962, 3288334, 725313, -238371, -3233037,
--4668093, -6922951, -7361574, -7902203, -5450314, -3702262, -180926, 1221918, 3981972, 5010616,
-6284074, 4776541, 5083094, 3544422, 2928631, 493384, -738198, -2879239, -3099893, -4439386,
--3847754, -4268661, -3074660, -2729989, -552440, 130997, 2287607, 2762201, 4207458, 3472481,
-3717831, 1727651, 1124745, -486405, -272730, -1509144, -1328219, -2576444, -2024540, -2629594,
--1525250, -1627256, 6442, 179852, 1654636, 1283658, 1989107, 1042603, 1538135, 414464,
-799938, -340376, 139586, -752156, -92342, -883690, -73014, -737124, 133144, -539018,
-293668, -394063, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--1142998,
-6171331, -3469260, 1033477, -5156645, 1442572, 577136, 7864085, -4713727, 13959, -2481954,
-3939559, 4020090, -2570001, -493921, -2209761, -1271310, -2583423, -3217468, 2364916, 768262,
--2105608, 4383014, 3991635, 6824703, -208306, 2579665, 1351841, -122943, -6180458, 1596654,
-2563022, -2446521, 1535988, -1806571, -2101850, -3398393, 1750199, 4350265, 441845, 5077188,
--2086280, -445066, 5122286, 2673080, 405338, -75699, 4864051, 7308961, -5454072, 1206886,
--1890323, -857383, -8485245, -3022046, 3415573, -2646774, 2363306, 1082332, -1255741, -2071248,
-1188632, -719407, 2631741, 1417876, 1219771, 1337346, -4412542, 150324, -2128156, 2690260,
-4475893, 3131568, -652835, 4845797, 18254, 2045478, -658741, -1098438, 245350, 2420751,
-2796024, -937377, -1933809, -3979824, -527207, -1766842, -1890859, -1076426, -1611687, -1161789,
--1895691, -1006096, -63888, -47245, 25770, 1539746, -1099512, 794032, -409096, -783832,
-23622, 690953, 242666, 544924, -19864, -550293, -10737, 704375, 221191, -1103807,
--857383, -69793, -11811, 407485, 394600, 30065, 875100, -1112397, 3733400, -4562866,
--4649839, 118112, -6283537, 1104344, -1937030, 3022583, -1639604, -5091684, 632434, 4873178,
--694174, 110059, 6927782, 8572755, -3665218, -4021163, -1065689, -6477348, 2801929, 526134,
-1660005, -2316598, 3486440, -4531728, -754304, 3002182, -2456185, -977642, 529892, 5502390,
-418222, 3964792, -5244155, 5151814, -507880, 693637, 3434900, -2971581, 2876018, -1381906,
--1286343, 2364916, 3260417, -602369, 1890859, -7096360, 4315906, 4069482, -7397008, -6625524,
--1793149, -5505075, -1464584, 2015950, 1416266, 1922535, 176094, -1875290, 4651450, -1597728,
-230318, -1895154, 1143535, -2839510, 3967476, 897111, -2942590, -1740536, -1127429, -1802276,
--1478543, 3894462, 5244692, -307090, -993211, 141197, 1722819, -1138166, 3684008, 1995549,
--1415729, -338229, -860067, 1512902, -1452773, -103079, -335544, 179315, 638876, -149787,
--380105, 921807, -694174, -312996, 270046, 594853, 118112, -1374390, -840203, 193274,
--798864, -785979, 936303, -520765, -1538672, -1094680, -1224066, -403727, 273804, 1484985,
-11079942, 2135673, -4117263, 5160940, 641024, -3474629, 10121627, -6782290, -9753871, -5690295,
--5917928, -1968706, 2871723, 3575560, -3376918, 5137855, -6428493, -3478387, -784905, 2150705,
-1593970, -1932198, -2529736, 5748277, 1096290, -365072, -3214783, 4299263, -3129958, -696322,
--10737, -334471, -452045, 1692217, 886374, -852551, 3565897, -1652489, 2174327, -122407,
--5820755, -2252174, -2324651, 6222334, -3430068, -4139275, -7556458, -8798241, -1611687, 484794,
--3523484, 6738804, 909459, 3636764, -2702608, 5839545, 2480344, -3325379, 9361418, -4199405,
--4522601, 764504, 5871757, 8637716, 6096169, 2057826, -2985002, -6722161, 2705293, -38655,
-6678674, 2726231, -1893544, -184684, 3412889, 2778307, 63351, -588947, 294205, -1282585,
--2793339, -215822, 899796, 747324, 2444373, -33823, 1489280, -461709, 1180042, -241592,
-240518, -194884, -1623498, 210990, -279173, -2049773, 1714229, -330176, 1059246, -512712,
--1109712, 217970, 225486, -19864, -716186, 844498, 339302, -491774, -143881, -1555852,
-237834, -847719, 846109, -236223, 1782948, -30065, -872415, -711354, -10559177, 1709934,
--3875134, 2504503, 643708, 7614440, -9768903, -5473936, -7183333, 3889630, 3120831, 4655208,
--5137855, 1822677, -1559073, 719944, -7973607, -6687801, -5006858, -4840428, 7962333, -3151432,
--1005559, -70330, 2686502, -1200443, -8465917, 3627637, -3391414, -1024887, 3859565, 3005403,
-4436701, 366146, 2355790, -5825587, -2477123, 5372467, 8757438, 5238250, -416612, -6635725,
-4754529, -2084133, -5833103, 8093866, 2347737, 2838437, -4961224, -2791729, 2720325, -1729261,
--2774549, 4312147, -3359738, 1556389, 184147, -5498632, -1210644, -3608846, 5842230, 3075734,
--838056, 1089848, -2721399, 3564823, 559956, -9664, 1010391, -6593849, -3504157, 3864934,
-1800128, -998043, -882079, -4660040, 7775502, 9742060, 5309654, -4328254, 3937948, 777926,
-3358665, -1374390, 2758443, -2023467, 1779727, 3623342, 1883343, 1789928, 1263794, 168577,
--1203665, -295816, 3439732, 281857, 213138, -1196148, -264141, 827855, 2062658, -155693,
-2426657, 505732, 47245, 15032, 1967095, 2543695, -1080184, -358630, -289373, 488016,
-1727114, 9664, 455267, 241592, 402653, -762894, 2910377, -15850577, 5289789, 799938,
-3943854, 4263292, -3092913, -11213086, 8637716, 3662533, 8498667, -1570347, 4504884, -96637,
--3060164, -219043, -7924215, 9683004, 2210298, 907849, -4992900, -2877628, -3383361, 2883534,
--4454418, 7410429, 320512, 2541547, 4130148, 2270964, -483184, 2381559, 2282775, -1751273,
-1919850, -8271570, 2137820, 3744675, 3841848, 7393250, 2564632, -4970351, 2471217, -2515777,
-5030481, 955630, 3656628, 5620502, 912681, -1258425, 4409858, -3067144, -4818954, -1801202,
-3070902, 7794292, -1868848, 466541, 124554, 908386, 1519882, 3248606, 1096827, -2085207,
--385473, -2803540, 1997160, 619012, -4974109, -4394289, 1722819, 2719788, 2740726, 4879620,
--7587597, -4106526, -5536750, 6455873, -2882997, -4064650, 2083059, -3750580, -5415417, -1987496,
-129386, 5737003, -2063732, 1828046, -2321967, -1389959, -358630, 1717987, 741419, -1088774,
--900333, 1064615, 2844879, 927713, 1629940, -841814, -569620, 1899986, -102005, 85899,
-705985, -1405528, 2537252, -850404, -204011, -1250909, -3294240, -560493, -746251, -296890,
--62814, -1285269, 102542, 2870649, -757525, -341987, -585189, -1144609, 3825742, 16178068,
-8454643, 7730405, 11063836, 3117610, 1950989, -6735583, -309238, -12669080, -2383707, 4941360,
-3439732, 2349347, 2863133, 3593277, -2840584, -1782411, 7223062, 6675453, 5567352, -345745,
-704375, -9025337, -7978976, -2904472, 5675263, 1948305, -1287417, 3214246, -5397164, 584652,
--2829310, 6424734, 4889284, 11221139, -1198296, 4284230, 3408057, -1710471, -5935645, 10561325,
--6187974, -1301375, 4650376, 308701, 2602213, 7635915, -2509335, 2898566, -7402913, -15537044,
--8759586, -5101885, -2195265, 804233, -722091, -3947075, -8493835, -1669669, -6127308, 1931125,
--239444, 823560, -9567577, -4230543, 6036040, 2199023, -470836, -10415833, -9599252, 5731097,
-913217, 3519726, -7062000, -5474473, 269509, -2755222, -6040872, -4141959, 3229816, -1210107,
-1430761, 517007, 4064113, 3133179, 1324997, -2043868, 1021129, -302258, -2634963, -2418604,
-2291902, -950262, 602369, -1537061, -2548526, -350040, -303869, 2243047, -349503, -2035815,
-462783, 886911, 2288144, 544924, 469225, -940061, 2891050, -1065152, 3306051, -1808718,
-2423972, -2165737, 282394, 1401770, 8590, -89121, 439697, -533650, -865436, -8164196,
-6182606, -3642669, -280247, -21214454, -4984847, -7856032, -5162551, 840740, 7015829, -1414118,
-9270150, 4879083, -529355, -9134859, -3757023, 13543106, 2284923, -8138963, -5917928, -2700998,
-6374805, -4977867, 91268, 4354023, 6933151, 7787313, -8545911, 5740224, 793495, 1609539,
-2458332, 3143379, 2765422, 7807177, 227633, 2355253, -6848326, 9572945, -4809827, -2281165,
-1622424, -7986492, 9861782, -1582159, -19248970, -6389301, -15454366, 922881, -218506, -4694936,
-20974472, -3690451, -10377178, -3544959, -2549063, 9613211, -1316944, 4574140, 5652714, -3956739,
-7197829, 9908490, -5044976, 3758633, -8827232, 4283156, -3165391, -2517388, 10196789, -3755412,
--976031, -4555887, 270046, 151398, 3889093, 5735929, 6101001, -1648731, -1731946, 219043,
-7901666, 3726958, 4107063, 136902, -6455336, 2571612, -3135863, -3532074, -1931125, -84826,
--182536, 399969, 1432909, 1487669, -381178, 4275640, 693637, 1859184, 745177, 832150,
--1203665, 1121523, 432181, -1285806, -1883343, -1236414, -3237332, -2543695, 2224793, 1781875,
--2741800, 734976, -153008, 759672, 3088082, 648540, -1214402, 329639, 991601, 63351,
--2506650, 1103807, 9598715, -13419088, 2649995, 2782602, -4299263, 1836635, 10096931, 10895258,
-3987340, 3913252, 5137318, -8383240, -1510755, -8954470, -238908, 5756867, 3578245, -1870458,
--7157026, -2282775, 4742718, -9290551, 257698, -649614, 4233764, 8877161, 775778, -4765803,
--3706020, 9494562, -6163278, -2934000, 5389110, -3389266, -11283953, -4056060, 2477659, 1902134,
--4559108, 1053341, 5762773, 4033511, 5553393, -660351, 4165582, 8061117, -3637301, 4015258,
-3380676, -5514738, 11872363, -11498701, 6765111, 3013457, -16069083, 15287936, -9987410, 2166811,
--1861332, 12196633, -5276904, -8659728, -1939715, 67109, 2113124, 9364639, -8071318, -403190,
-464930, 535797, -1540283, 2761664, -6589554, -966368, -4732517, -8645769, -9673340, 5134634,
-4060892, 3965866, -23085, 6032282, -2908767, -7017440, 1700270, -12411919, -10452340, -1969779,
-2905009, -133681, -2036888, -1629403, 1358283, -6812892, -2390149, -1461363, -1230508, 3113851,
--455803, 483184, 128312, -2266669, 986232, -2544768, 58519, 1149441, -2845953, -624381,
-2166811, -1839857, -120259, -1307281, -238908, 797790, -54224, -3775813, -723702, -107911,
--323196, -702764, -2415382, -3892851, -1060320, -305480, -673236, 3038689, 2160906, 352187,
--856846, -10872173, 8650601, -24715390, 13598940, -9931575, -6567005, -12163884, 1469416, -1599875,
-2229088, 8413841, -7089918, -2930778, 6943889, 6081137, -1949378, 2267206, -3211025, -11413339,
--988379, 2671470, -5688684, 8916352, 1601486, -1220845, -5327907, -5469641, 1293859, 13826573,
-635655, -2126546, 3874061, -12252468, -2051384, 4257387, -8160438, 11592654, 7495792, -581431,
--3572876, -4097399, -4507032, -8198019, -9912785, 8194261, 639413, 14680198, 1366337, -926639,
--6651294, 1078037, -2596845, 3177202, -191126, -9504763, -7297687, -9681930, -16037408, -2388539,
-14165339, -13684303, -818728, -14321568, 2276333, 3841312, 3308736, 9963787, -1098975, -14716705,
-10468983, -1160178, -7038378, -6025839, -12577812, -4457639, -9561134, 5103495, -14688788, -2595771,
-5791764, -256624, 1132261, 6888591, 3594888, 8302709, 47245, -4711579, -1792075, -3272765,
--143345, 2977486, -848793, 406948, 440771, 199716, -2441689, -3716757, 2269353, -2643552,
-1104880, 317828, -500901, 986769, 386010, 338766, 5083631, 788663, -290984, 839129,
-1612223, 999117, -2548526, -509491, -5371931, 1898376, 2786360, 4092567, 1516124, 1334124,
--83752, -2836289, 1635309, -232465, 10553808, -3863860, 9383430, -9159018, -4854924, 6412923,
-2057289, -12361990, 801011, 16071768, -18518288, 1088237, 8651138, 20808042, -8899172, -5300527,
--2281165, 16109885, 15822660, -16734803, -787590, -12859132, -6155225, 8360154, 8415452, 11012833,
-6256157, -2199560, 7745974, -9598178, -5173288, -976031, -1479079, -13889387, 1222992, -334471,
-18347564, -2856690, 9039296, 2163590, 5355824, 12267500, -7445863, -3340948, -18134962, 12461848,
--15984258, -2868501, 3661997, -2191507, -9236327, -2351495, 2612414, -6600291, 1789391, -1110786,
--1408212, -20414516, -14442364, 965831, -10474888, -14350559, 2626909, -13273060, 4199941, 8557722,
--7779797, 14731201, 3090766, 9433359, 10165651, 2556043, -7565048, -9012989, -11155641, 5664525,
--11575474, 6890738, 8344048, 11461657, 2022393, -8281771, -5289789, 156766, 1101659, -15374372,
--391379, -9985799, -1700807, -2884608, 601832, -7337952, 936303, -1747515, -122943, -4801237,
--3454228, 1035087, 7614440, 711354, -751082, 938987, -1109712, -2929168, -2804614, -3164317,
--1369021, -3739306, 3914326, 2770254, -297963, -3120294, 4653060, 6894497, -1588601, -1338419,
--1688996, -841277, -268435, 1597728, -2696703, 2654827, 2551748, 1638530, -2571075, -523449,
-1421634, 1896765, 4790499, -9854802, 25435334, 10605348, 4418448, 13080860, -4990215, 2753074,
--13493177, -17392470, 10977400, 22362820, 6674379, -103616, -22079354, 26670136, 3875134, 3285113,
-3846143, 989990, 4842039, 1523640, -3800509, -163209, 6755447, -4133369, 8483634, 1626719,
--6642704, -9243843, -2503429, 8447127, -2292976, 2757906, -3798899, -3388729, 163746, 23929948,
-3892851, 3462281, 3253975, 2020245, 14363444, -5343476, 4148402, -9266929, 17108466, 23803246,
-6226092, -1371168, -8450885, 24872156, 11711302, 366146, -9603010, 3637301, -5752572, -892816,
--11020886, -4149475, -7347616, -10126996, 16391206, -4912369, 12084964, 2530273, -9387725, -140123,
--20113332, 19137838, -1367947, -9156333, -7132330, -11668889, -14361834, -7865159, 22288196, -6941741,
-8039105, 10117869, -8985072, -8563091, -16054588, 2423972, 10846403, 3721589, 10370199, -2385854,
--2035815, 469225, 2954401, -4415227, 1247151, -7997229, 2608119, -366146, 9091909, 6416145,
--4909148, 502511, -266288, 5414880, -1836099, -7189239, 1596117, -213138, -587874, 2688650,
-490700, -1114007, -3616899, -4021700, -787590, -944893, 4262755, -141197, 4272956, -5860483,
-1403917, 4468377, -8371428, -6052683, 2172717, -4483409, -1199907, -2640331, 6253473, 7545184,
--5621576, -5942624, 23659902, 23226646, 28656558, 17270064, 5679021, -7276212, -7584376, 4305168,
-8315057, 10205916, -15249818, -435402, -1828046, 7659001, 6023692, -10558103, -13050795, -34897,
--4952098, 12446278, 14615774, 10737, 7742753, 2570001, 3088618, 16909286, -10327249, -13656385,
-10773389, -17889076, 1537061, -5500780, 9873593, 5062693, 171799, 11579232, 10602127, -9628780,
-12013560, -6442, -5155035, 2865280, 13051869, -5028870, 5577552, 9706626, 4372814, -20851530,
--12079596, 2078227, 1092532, -14169097, -9707700, 4736812, 6742025, 5762773, -19346680, -13482439,
--13467407, -1043677, 8370355, 12247099, -30727806, -22550188, 3745212, 4745402, 17730162, 6281927,
-6494528, 12944495, -1403381, -3288334, -4702453, 31741956, 10950556, -4976257, -16609712, 15190762,
-9891310, -4930086, -4523138, 2369748, -4582730, 8128763, -2941516, -1704565, 4751845, -1150514,
--1919850, -2469069, 4989679, 13032541, 71941, 957241, 434865, 5686537, 7239704, -1817845,
--4592394, 1997160, -449898, 1495722, 826781, 1147293, -6191732, -3331821, 4342749, 477278,
--2537252, 2166811, 6051609, 4769025, -8188892, -1797444, -5456219, -5187784, 3837553, -6200322,
-2409477, -3326989, 6020471, 4733591, -7230041, -10070625, -19499688, -18974628, -15600932, 6022081,
--2011655, 8806294, -17200808, -2833068, 801011, -6634114, -8050380, 13983877, -5358509, 2833068,
--214748, 974958, -14025216, -5157719, -11993696, 1597728, 1580548, 3118683, 33149094, -12911209,
-9153649, 13959181, -7085623, -6680285, -10033044, -2023467, 15483357, -15796890, 10816338, -1031866,
--2636036, 1457068, 1584843, 8494908, 951335, -16757889, 12819404, -10436771, -24060406, -19468014,
--9758703, 32571958, 27630062, -15014132, -4325569, -20613696, -17211008, -6788733, 20116554, 530428,
-13874355, 7261179, -9466108, 10586021, -7207492, -21453898, -1821066, -13005161, -2655901, -6964827,
-42362872, 396748, -35072704, 27543626, -11114838, -7808251, 27814746, 28284508, 89657, -12369506,
-5511517, 6926709, -38087232, -16372415, 1005559, -5586142, 19932944, 8454106, -28896004, -4308926,
--2325188, 13111998, 8325794, 5717675, 5171678, -5999533, 1022202, 2314987, 12079596, -1478543,
-1653026, 2393371, 2054605, 7128035, 3357591, 184684, -8268886, 10473815, -960462, -23085,
-470299, 40802, -4478041, -6929393, -4787278, 977105, -1741609, 3072512, -496069, -3050501,
-3297998, 7743289, -10283762, -3299609, -3158412, -1433982, 2892661, -160524, -2965675, -5742372,
--2204392, -1452236, 5313949, -16953846, -10395431, 5033165, 4089883, 9079024, 28953986, 4885526,
--646929, 6662031, 1599339, -12095702, -7283191, 6373195, 1575716, 23472534, 5655398, -1563905,
-8615168, 12556337, 12913356, 13707388, 833761, -9782862, -2600603, -22221088, -2920041, -25078314,
-14017163, -15302968, -5800354, -30065, 20307680, -11829414, 11336566, -8340827, 6901476, -10434623,
-12989055, 19398220, 1409286, -4235375, -10418517, -15247671, 8547522, 9587978, 24815248, -3467649,
-1316944, 10784126, 39697844, -9365713, 6013491, -6534256, -21996138, 15372762, -3088618, 10894185,
--1298691, 2605972, -13226889, 36556076, -54951424, 40371620, -63061932, 27084600, -32500554, 9986873,
--25471840, 9061307, 16990354, -4182761, 12638478, -6610492, 46104328, -28071906, 30629560, -47521664,
-23957328, -18728204, 23049478, -15605227, -16677358, -8342974, -4188130, 11450920, -3138011, -2215130,
-1201517, 539555, -5873905, 8086350, -8883603, 8552354, -6410776, 2488934, -10225243, -5936182,
--7546795, 1162326, -6937983, 8425115, 9234717, -8929774, -111132, 3276523, 8474507, -1495186,
-3054259, 6696928, -6464463, 11214696, -3163244, 14901389, -9004399, 17890686, -12919262, 4414153,
--1048509, 9856413, 8407935, -1874216, 4925791, -14250701, 15940234, -11229729, 3876745, -11414412,
-8055748, -15137612, 5097053, -1559610, -5443334, 5290326, -10698764, 1620276, -5255430, 5214627,
--5200132, 2987687, 1881733, 1400159, -4005594, 13980655, 11272142, 44399224, -30859340, 12913356,
-8177081, -26672820, -691490, -5250061, -7529615, -13709536, -686658, 1566053, 17726404, 6584185,
-9299678, 13278428, 10803453, 395674, 14787036, -17003776, -2401961, 20476794, 2328409, -28113246,
--6416145, -36786932, -6831146, 6411313, -6772090, -8578660, -1557463, 32875290, 8354785, 2515240,
-4058744, 8227547, -2437931, -18864034, -5733782, -2096481, 3544422, -4351876, -8770323, 23805930,
-12858058, -4925254, -1092532, -5119601, -21489868, -17675938, -12872554, -10734734, 24067922, 5785858,
-8907225, -14484240, -14026289, 4521527, 9818295, 9019431, -4033511, -2849174, -16294569, -10792179,
-14294188, 643171, -39494372, 13903346, 21599390, 6900939, -17194364, -10597832, -8551817, 2831994,
--12372727, 6123550, -29065654, -38890392, 16123844, 14026826, -7746511, -14299557, 10936597, -6403796,
-2850248, 3376381, -5705327, 6222334, -3526168, -3660386, -2085207, 9346386, -6630893, -1967095,
--7256884, -106300, 630286, 6248104, 6493991, -731755, 3833795, -4599373, 7583839, -5276368,
-6197101, -14310831, -6497749, -1977296, 4147328, -4681515, -9319005, -7162932, 3423626, 7368017,
--264141, 9521406, 2688113, 3764002, 596464, 6199249, -3499325, 5925445, -1421634, -11787538,
--9059160, -3474092, 5374078, -6626598, 3905736, -9889699, -4350265, 4523138, -36686000, 32114008,
-39024608, -3651259, 28363964, 1160178, 4306779, 12372190, -25116968, 9124121, 18529026, 18318036,
-7648800, 5673652, -18174154, 13267154, 7766375, -11005854, 5817533, -2190433, 21590800, 5960341,
-5489505, 12780212, -5174899, -14738717, 4211216, 27551678, -9921374, -5370857, 24841018, -9154723,
--11187853, -9078487, 8520141, 32004486, 44471700, -2781528, -28937342, 43663176, 14986752, -28777354,
-32518808, 12461311, -8133595, -8367133, -12271258, -20282984, -1207423, 10633265, -17444546, -11398306,
--36788004, -5001490, 21328270, -44511432, -24158654, 7015829, 7119982, 8767639, 26941792, 23878408,
--39602820, 314069, 1461363, -28002114, 7761543, 13306346, -14415521, -10263898, -12180527, 8097624,
-31026306, 9711995, 16109349, -21268678, 10776073, -24081882, 2050310, -16202227, -65805340, 50267760,
-12868259, -18373334, 33983392, -11766600, -15567109, 9132711, 6899328, 8732742, 13252658, 5356361,
--13429826, -4274566, 12999255, -459025, 4964982, 2074469, -2203855, 3173444, -5925445, 4309463,
-12139188, 4369056, -7261179, -5362804, 3662533, -3305514, -6595459, 2449742, 7547332, 4382478,
--22805740, -6920266, -16813186, -8733279, 9695352, -7511898, -9427990, 8864276, 5689221, -9863392,
-12400644, -9257265, -4100083, 4430796, -7299834, 8149164, -3718368, -13539884, 11138461, -20889110,
-24067386, 79678088, -25418154, 678068, 6154688, 35963908, 31936304, -10464688, -13820668, -20120848,
-889058, 15223512, -473520, -10294500, -10533944, 14367739, -7813083, -19350976, -17248052, -3506304,
-29326574, 20529944, -23252416, 1553168, 464393, -10165651, 11587285, 4263292, -8269423, -2751464,
--6494528, -3129421, 37431712, -13926968, -24785720, -17383344, -14067092, 33063196, 961536, -7667054,
-30494804, 20930986, 8367670, 15497316, 29988536, -18204756, 4665945, 29135448, 17082158, 22260816,
--25229174, -7118372, -893353, 10669773, 10094784, -23917600, 2335925, -31425202, -47231220, -2478733,
--12455942, 21973590, 24472724, -6387153, -1884417, 4977330, -17137456, -45779520, 30880278, -22172232,
-4822175, -8522289, -15431281, -8960912, -17903034, -36279052, 21499532, 19110994, 23211078, 4499515,
--28795608, -50658064, -14993194, -13990856, -6142877, 16058346, -10311143, -2500208, 3119757, 2188286,
--8004746, -3649112, -6418292, 825171, -2826089, 5401458, -3120294, -3890704, 5941551, 7694971,
-6120866, -12218108, 4078608, 746787, -1045825, 198105, -26884348, 1358820, 3790846, 4020626,
--17691508, 11616276, -2482491, -14724759, -12031277, 7243463, 9572408, -1713692, 5712307, -9050570,
--6345814, -6146098, 790274, 11084237, 2858838, 10591926, -189515, 4948876, -15590194, -2356863,
--3685619, -2876554, 12297565, 5901285, -366683, 3959960, 1898376, -12279848, -3957276, -38960724,
--22618908, -18070002, -46261628, 53382684, -1402844, 28199682, -6578816, 1569811, -32300838, -17389248,
--16756278, 3883724, 24978992, -982474, -26388816, -19425600, -37643776, -41528040, 35574676, 13363791,
--32647120, -9906342, 15824270, 29950418, 3980898, -36793376, -22665616, 7452305, 10146860, 9342628,
-21383032, -22814330, -22003654, -3183645, -7936026, 3209951, 6229313, -44248900, -8384313, -30813170,
--20039244, -41150620, -15862388, 56761216, 9558450, 1953673, 13680545, 14198088, 4230543, 42223824,
-33093260, -10842645, 11107322, 56994216, -15093589, -13108777, -13780403, -42169064, -1840930, -23012972,
--52796960, -54985780, -29125784, -28303834, 12672301, -21154324, 1651952, 11355894, -37687264, -13561896,
-21475, 11274, 9456444, 24678346, 16076063, 29724394, 39798240, 29210072, -3796214, -20953534,
--30878130, -2424509, 12465069, 3925600, -4537096, -190052, 8467528, 7217156, 18623516, -1921461,
-2779381, 539018, -6507949, 6371047, 747324, -2822867, 15880105, 7185481, 3428995, -14875082,
-9932112, -5191542, 7435126, -14093935, -39982924, -1625645, 15472620, -2723009, -21327196, -13293461,
--15667504, -11388643, 4815732, 7201050, 7665443, 2429341, -1627793, 6204617, 15347529, 26271242,
-24325084, 30815316, 25914758, -2175401, 17366700, 40119828, 2638721, -17110612, -25095494, -24720758,
--34323768, -27347130, -13429289, -14477261, -2214056, -4151086, 35050692, -22859964, 6781754, -26508002,
--9223442, -28928216, 3548717, 35430260, -1003412, 21950504, -43813500, 38483444, 12647605, -7721815,
-30185030, 4391604, 13613973, -12030203, -14565308, -153008, 9088688, 7252053, -30684320, 28070296,
--33983928, 4240207, 9207336, -11357504, 19650012, -20883204, -12166569, -2225867, -7740605, -10534481,
--2604361, 4581657, -15851114, -18294414, -6223408, -3144453, -4787278, 11227045, 5783174, 4608500,
--22572738, 5985574, 26818312, 35990752, -26812944, -13313325, 30254824, 41834056, -25651156, -15637439,
-17308182, 7427609, -20447802, 16733193, -47601660, -9290551, 18930068, 37804840, 4577899, -23433878,
--21544630, 5739687, 44940392, 3947075, 6432251, 1352915, 14666776, -2913062, 33291366, -385473,
--37615860, 23480586, -24679956, -7477538, 9919227, -14251238, 3007551, -30353070, -11696270, 28069222,
-12543452, -12641699, -18416282, -9903121, 1937567, -14672682, -4831838, -3284576, -9383967, -5558762,
--4756140, -19047106, 11582453, -7168838, -8863739, -27567248, -7379828, 20133196, -14442901, -7812009,
--7750806, -15792058, 29765198, 12311524, 696322, -1096290, -17263084, -25268366, 1138703, 22395570,
-17996986, 6083821, -19404662, -11176042, -8938364, 10859288, 1519345, -16952772, -4663261, 967978,
-6137509, -15095736, -10578504, -8957691, 22959822, 11909407, 1003949, -14666776, -13122199, 13036299,
-27690728, -404801, -12677133, -17481590, -6432788, 7741679, 68183, -4097399, 447750, -3543348,
--3233574, 2617783, 8378945, 125091, -1859184, 48855, -76773, -2177549, 519154, 75162,
-191663, -3031710, 1941862, 419833, -57321708, -15415711, 9221832, -18843096, 55827596, 41513008,
-26599270, 14685030, 37533184, 27132920, 8519605, 18585398, -45026828, -59628104, -8739722, 894964,
--15833934, 8340827, -3267933, -15341623, -20066088, -15717970, 30667678, 27357332, -22049826, -2464774,
--3418794, -5121212, -8097087, -10966662, -16786342, -22630182, -4780836, 40842992, -13355738, -22192096,
--11145440, 38356204, -18158048, -17158932, 58474368, 21268678, 9524090, -13990856, -32719598, -22251152,
--33735896, 9353365, 27151710, 74674448, -65690452, -27365920, 37956772, 53410604, 8895414, -2776696,
-67768680, 33017024, -21860846, 22087944, -8207146, 647466, -47544216, -23404350, -16848082, -76951320,
--33165200, -12060805, 41294500, -22103512, -13389561, 31493384, -2421825, -3690988, 7082401, 22299470,
--21486110, 15897821, 23305566, 1000727, -4853850, -43220256, 19803020, 16124381, -50836308, -3177202,
-5117991, 3758097, -4643934, -21925272, 5622649, 4302484, 5957657, -3048353, -6825240, 16648367,
-3101503, -2864743, 10788421, 5122822, 29329258, -3553012, 9390409, 2387465, -23907398, -20018306,
-14072997, -10914586, 8422431, 11599096, 6535867, 7361574, -141734, 20131586, -6596533, -4389457,
--8074002, 6151467, 14944339, -22482006, -8893267, 11575474, 4802847, -12507482, -23797876, -5470715,
-6116571, 49370112, 18023294, -4037269, 12719546, -2421288, -4625680, -18086644, 8655970, 7608535,
--14391899, -6896107, -52210160, -2034741, 21417392, -4948339, -21804476, 9610526, -4941897, 23556286,
-4633733, -11270531, -235686, 25215216, -14352170, 4140349, 9021579, -7541963, -272730, -13486197,
-27685896, -1561758, 4079145, 550293, 13356811, -5961952, -5266704, -8560407, 5499169, 10536092,
--4612795, 12497818, -5404680, 7746511, -13052942, -10131828, 15756088, 20378546, -26212186, 1345399,
--1611, 2577517, 8214125, -16341277, 25228638, -22499724, 20300162, 2976949, -35357244, -1793686,
-27542552, -35822176, 17129940, 294205, 4621385, -8493298, -5410048, 7408819, -10453950, 36969468,
--27264452, 4219806, -7330973, -3155190, 9063455, 667331, -4488241, -691490, 11119133, -190589,
--12795244, 3760781, 6471979, -21231634, 16630113, 7678328, 771484, 15512348, -5628555, -4576825,
-7214472, 3526168, 4573604, 2784750, -4242354, 8842264, 3722126, 824097, -9366787, -1360431,
-4566087, 8492224, -14210973, 7625178, 8845485, -12359842, 5952288, 2040646, 2134599, 6827925,
--3738232, 1685775, -2343979, -18001282, -276489, -4190278, 7953743, -4912369, 3036005, 2219961,
--752156, 2655364, 4609037, -2786897, 4832, 1056025, -130460, 1557999, 5534602, -5399311,
-5185100, -3871376, -26125212, -74351792, -105827456, 35454956, 94358288, 20614770, 261303120, 214914256,
-145441008, 245756960, 128209072, -8976482, -30627948, -97371744, -224212320, -185459376, -180080992, -250747712,
--185156576, -54676008, -40101572, -6868190, 87144888, 40252432, -10856067, 54944444, 91399592, 44422308,
-42788076, 82849384, 49507552, 37850472, 75315472, 117999928, 49192944, 69087232, 111020608, 18638010,
-7406134, 97752920, 57919244, -38123204, 47185584, 60537564, -63869384, -19506130, 70173864, -14703284,
--42353748, 90369336, 47950088, -56962540, 48535276, 64142652, -86594056, -81399832, -34810708, -209069888,
--276921248, -174123344, -244870048, -326615072, -227492608, -233121168, -300910240, -238358880, -165195712, -179405616,
--107215808, 9454834, 66267588, 144245936, 236810000, 294972992, 363720928, 403843968, 441564512, 467922176,
-420399456, 330134816, 305214336, 195104256, 58661736, 45617384, -31954020, -151459344, -118860000, -51153060,
--112661824, -116146120, -25021942, -82155744, -156194000, -94966024, -68860672, -140171088, -119204136, -42999600,
--106066368, -126192584, -10868952, -7496329, -57249228, 21065740, 12053826, -91968672, -68215352, -40386652,
--130109056, -179216096, -146507248, -200056896, -247487824, -184275568, -148000272, -140817488, -62255552, 26839788,
-72679976, 108129024, 150285744, 169405856, 152055264, 198335680, 255121600, 264124912, 246830160, 251007552,
-242315616, 195974528, 221865120, 199703088, 84766008, 8872866, -51882668, -112039592, -118010672, -98192080,
--115197464, -113159504, -98137856, -97368520, -103357312, -86001888, -77017352, -74287904, -70239896, -55718612,
--52980032, -55573120, -45278084, -32722282, -30918932, -25280178, -14262513, -8874476, -7583839, 3173981,
-4186519, 2573759, 5940477, 11767137, 10277320, 12956843, 15501611, 13358959, 8629663, 5589900,
-3449396, 3947612, 2647847, 3586298, 2702071, -984084, -5224828, -3391951, -157303, 5545340,
-13037910, 21184390, 21923124, 24856586, 30047054, 32565516, 34510600, 40690520, 38627864, 32845762,
-29588030, 28043988, 19981798, 17135846, 15855409, 9361418, 2532957, 3197603, -2459406, -9362492,
--13837311, -20078972, -30206504, -33157684, -34616900, -36128728, -37577204, -34288872, -32960652, -30710626,
--26059714, -19342386, -16582332, -11716134, -8262444, -7092065, -5049271, -410706, 1660542, 5151277,
-6913287, 9184788, 9975598, 11004780, 11106785, 11664057, 9825275, 9531069, 8243116, 7568806,
-5897527, 5883569, 4462471, 4192425, 2918430, 2924873, 1637993, 1674500, 719407, 1017907,
-98247, 421981, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
-4089346,
-9670656, 198642, 363462, -4604205, -3747896, 2832531, 1675037, 285078, 3923453, -5948530,
--2070711, 9721658, 619549, 1917166, -2590939, -3243774, 4515085, 3839701, -1640141, 3779034,
-116501, 638876, -3739843, 1357747, -3409667, -2600603, -3349538, 1151051, 89657, -1051193,
--416075, 1158031, 2838437, -1352378, -5312875, 115964, -3800509, -4776541, -1304060, 2189897,
--783295, 1956895, 1182727, 1795833, -801548, -651224, -948114, -752693, 1577327, -31675,
-3289945, -424128, 4084514, 711354, 889595, 3953518, 1355599, 1030792, 5037997, -2042257,
-1635846, -1742146, -3639448, 3323768, -1236951, 33823, 1173063, -578747, -3030100, -896038,
-2102923, -1367410, -121333, -2873870, 1353989, 217433, -1979980, 257698, -3131568, 487479,
--3005940, -242666, -86973, -374199, 1665374, 848793, 403190, 964757, -369367, 1751273,
-1207960, -119722, 338766, 407485, -109522, 84289, 527207, -703301, 350577, -904628,
-745177, 106837, -192737, -18790, 607738, 190052, -652835, 230854, -79994, -328565,
--962610, -12741020, -6609418, -2979634, -2759517, -16106, 37581, 943282, 185757, -717796,
--5212480, -2369748, -5341329, -8377334, -6990060, 3947612, 4878009, 4926328, -1933809, -584652,
--547071, -1101122, 1822677, 758599, -1772748, -3795141, 2743947, 2335389, 3426310, 895501,
--1138703, -2076080, 980863, 1634235, -376883, 3473555, -1675574, -93416, 3386045, -2576444,
--4082367, 331249, 5680631, 1307281, 1269163, 798864, 65498, 732292, -859530, 1014686,
--4458713, 737124, 4663798, -1056025, 87510, 469225, -1566053, -878321, -623844, -746251,
--1221918, 2852395, -2645700, 2799782, 2398202, 5228586, -339302, 2944737, 6684043, -1216013,
--5344013, -6003828, -264677, -772557, 350040, -5092221, 1507534, -3570192, -2640868, 1243393,
-3754875, -1517197, -2816425, -3387119, -636192, -355409, 967978, 320512, 2172180, 1287417,
--88047, 1102196, 343061, 2135673, 1631014, 1028108, 492311, 484794, -337155, 1438814,
-102005, 449361, -138513, 55835, -1031329, 26307, -169651, 8912594, 6919729, 3031173,
-3518115, -2247879, 1559610, 6182606, 2946348, 6653978, -2619393, 2720325, 3726958, -126702,
-4793184, -2442763, 2978560, 615791, -3145527, -723165, -632434, -129386, -926102, 426276,
--1601486, 551366, -1184337, 6093485, -1433445, -267362, -62277, -2654827, -7711614, 4427038,
--1865090, 1750199, -3090766, -2814277, -3302830, -2092723, 1946157, 5850283, 4516158, 1988033,
--375273, -1175210, 1788854, 4224637, -969589, -1297080, 5101885, -2212982, 2418604, -2497524,
--2059437, -1161252, 1869385, 2108829, -3665218, -2420214, 51540, 3939559, 4964446, 2790655,
-3859028, -467078, 3611531, 1510218, 3795677, -2092186, 1493038, 8865349, 4049081, 3804804,
--951872, -2399276, -6045704, 3554622, 1449552, -2400350, -2534568, -740882, 1779727, -1746441,
--891206, -1563905, 4832, 1334124, -585189, -2392297, 663572, 928787, 1366337, 1540283,
-148713, 2149631, 969052, 940061, 588947, -599685, 1409823, 215285, -56908, -630286,
--1133871, -1105417, 236760, 932545, 299574, 136365, 210453, 10737, 1260573, -1712618,
--479963, 626528, -769873, 801548, 2697240, 10166724, 1447941, 3688303, 7362648, 137976,
--4211753, -1808181, -1266479, 286689, -2655901, -7231651, 2896419, 237834, 151398, 3014530,
--4800163, -2222646, 7542500, -1858647, -2858838, -4481799, 144955, -4236985, -715112, -1421634,
--1281511, 529355, 6088116, -210453, -1925756, 1774358, -4861903, 6489696, -843424, -1479616,
-8118562, -4704063, 371515, -5556077, -2547989, 451508, 241592, 2107218, 2549600, -4963372,
-1453310, 2047089, 1665911, 449898, 2312840, 1668058, 3385508, -3154654, -1692217, 6390375,
--2692408, 2423972, 588947, 1814087, 1634235, -577673, -2199560, -369367, 4508642, -2732673,
--325881, -1469416, 1023813, 4010963, -2301566, -5086852, -9780714, 570157, -431107, -879931,
-9127, -3791919, -2658048, -5482526, -2173790, 2663417, -122943, 1639604, -679679, 3342022,
-2314451, -79457, 1725503, -185757, -244813, 1125281, -2151242, -1182190, -1753420, -64961,
--2087354, 1168768, -111669, 527207, -799401, -715649, -124554, -796180, 433255, 713501,
--1939178, 846645, 729608, 386010, -1851668, 898185, 601832, 1648731, 1763621, -228707,
--666257, -1012539, 858457, -544924, -376883, 268972, -295816, -1200443, -4437775, -10857677,
-5470178, -3547106, -6245956, 315680, -11696270, 2549063, 3526168, -1253057, 8476655, -3228742,
--10295037, 2490007, 3851512, -3540664, -7296076, 12425877, -820876, -714038, 3107946, -2715493,
--1631014, 1291711, -6113349, 3583077, -688805, 1777043, -1316408, 5822365, -1512902, 3274376,
-2809982, -5704791, -2857227, -3205656, 5906654, -2942053, -1828582, 4546760, -1628866, -3344706,
-2573222, 8320963, -4268124, 4066260, -4408784, 5478231, -3064459, 2897492, 496069, -2913062,
--8551817, 4773320, 6061273, -549756, -2011655, 3540664, 4229469, 4187593, -5907728, -643171,
--5219996, -450435, 1751273, -3576097, 1320703, 4072166, -4373888, -66572, 759672, -4094178,
--3076270, 3888019, -2831994, 3080029, -1869921, -5265630, 1000727, -5104032, 1254131, -1911797,
-1714766, -5623723, 5132486, -4230006, 448824, -3929895, -222801, -209380, 978716, -382252,
--120796, -1202591, 1278290, -3794067, 1245004, -3100430, -2627446, 112743, 2204392, 1137093,
-322659, 761283, 41339, 1418413, 2829310, -2423435, 2332704, -1549410, -442919, 1601486,
-1125281, -1705102, -132607, -4410932, 5568425, -6135361, -6083285, -10435697, 4391067, 11014444,
-1675037, -1986959, -956704, -1866163, 9593883, -5768678, -5251672, -1251983, -5790153, -1790465,
--6291054, -2727304, -4418985, -8743480, -2459406, -1939715, -316217, -974421, 2254858, 5191542,
-1848983, 2562485, -8031589, 977105, -142808, -2529199, 2769717, 1466195, -2353105, -1051730,
--5724118, -6349573, -940061, 7001334, -2073396, -3628711, -789737, -2360622, -4948339, 64425,
--5167383, 10513543, 8865886, 2279017, -2733210, -2486249, 909996, 1565516, 1799054, 1714766,
--662499, 3899830, -3740917, 1713155, -3294777, 79457, -61740, 2179159, 1515050, 4920959,
--2166811, -3059091, -2796024, -11462731, 329639, 2360085, -1184337, 4123706, 1764158, -3466039,
-964757, -6029061, -2263985, 473520, 4566087, 1934883, 6258841, 1239098, -790274, 10737,
-2295123, -2632278, -368830, 574452, -1120987, 1582696, -2298881, 1158031, -1762547, -1433445,
--325344, -1956358, -1935420, -2388002, -1290101, -717796, 1720671, 1443109, -1799054, -2528125,
--811749, -1940788, 1272921, -2161979, 993211, -1270237, -406948, 2097018, 91805, 1749125,
-1155346, -1144609, -1114544, -10872173, 1846836, 10875931, 10450729, -11224897, -10047539, 2519535,
--7974681, -4393752, 1258962, -671089, -3202972, 8227547, 3784940, -11851425, -862752, 593242,
--20938, 7398618, 2877628, -5563594, 7988103, 2838974, 1123671, -4342212, -4428112, 3274376,
--2812667, -8062191, -1370632, -1143535, -3476776, -4854387, -6340446, 6726993, 557809, 905701,
--4369056, 6442, 4922570, -3924526, -7998303, -8288213, 8665633, 1826972, 8184597, -1394791,
-2398739, 5869610, 12230456, 3820910, -1452236, -6307697, -2591476, -3195993, 1919850, 555125,
--4767414, -2068564, 7140920, 4889821, 9676024, 4393215, -6570226, -6458020, 8017630, 4123169,
--4106526, -54761, 8256001, 536871, -389768, -6460705, 7094749, 5161477, -1181653, 9676024,
--1395328, -2921115, -10153303, -1452236, 577136, 5340255, -6987912, -538482, 3212636, -1825361,
--5010080, -4864588, -578210, -576599, -864899, -6055367, -5200669, -3223373, 1964411, -213675,
--2359011, -914291, -264677, 425202, 558346, 785442, -442919, 1906966, -1587527, -516470,
-112206, -1283658, -3874061, 164283, 2350421, -812286, -3412889, 200790, -773094, 1141924,
-268972, -536334, -244813, 1046898, -468688, 2019172, 1161789, -163209, -1855426, 1334124,
--1447941, 1348620, 1791538, -4408247, 1742683, -1649268, -892279, 5393942, -8991514, 5403069,
--5897527, 1061394, 4706748, -63888, -2401424, 1758789, -6177237, 242129, -4814122, -13953812,
--4277788, 5894843, 3806415, 2141578, -3406446, 2836826, 1260036, 14880988, 2541010, -5057861,
-5521718, 1074279, 1159104, 9884867, -2877628, -2808909, 3418257, -7006166, 8370355, 7730405,
--215285, 4361540, -1666984, -4301947, -594853, -5400385, 411243, -5289252, 2013803, -104690,
-1477469, 576063, -9067213, -1889786, -1207423, 469225, -4592394, 1936493, 1957431, -1767379,
-11857868, -5233418, -10628433, 6281390, 10362145, 2327872, 2642479, -4632659, 8883066, -3084324,
-1452773, 3975529, 1122060, -4086662, 4211216, 1806571, 461172, -66572, -8210367, -2921652,
-3953518, 7207492, -2860448, -5401995, -7476465, -2461016, 2447058, 1328756, 3661460, -9199820,
-1672890, 6126771, 760746, -396748, 2311766, -1952063, -1092532, -296353, -549219, 3194382,
--962610, 987843, -1015760, -711891, -759672, -2383707, -1372242, 1068910, -1695975, 2185065,
--408022, -443992, -1132261, -1359894, -7008313, 611496, 3662533, -230854, 1240709, -713501,
-2247879, 731218, -1418950, -1649804, 1232119, 30340186, -8278013, 134755, -3016678, -1991791,
--6721624, -200790, -17757006, 9200357, -6351183, -498753, 10353019, 5041218, -6790344, -7387344,
--2699924, -6324340, 5713380, -14777372, 2766496, 6051072, 8474507, 1607392, 2558727, 289373,
-1419487, -1998234, -4583804, -13511967, -1943473, 1653562, 6236830, -4903242, 6015639, 2274185,
--2406256, -920734, 4668630, -4931696, -4566087, -2711198, -3479461, -583042, -11873437, -5634460,
--2801929, -394063, 9482751, 2050847, 9048959, 3040300, -370978, -5719823, 731218, 498216,
-1414118, 3054796, 12668543, 1413581, -11779485, 2989297, -4594005, -392990, -4417374, -5054103,
--2297271, 4773320, 3172370, -21000242, -7815767, -6292664, 4008278, -964757, -4453881, -2948495,
-11860552, -4918275, 9123047, -8619999, -6390375, -9328669, -5011690, -9912248, -1499481, 13092671,
-3119757, -1651415, 1613834, 5528697, -73014, 6830072, -3841848, 2593087, 3895535, 4613332,
-1887638, -890132, -9086003, -3449396, -4647692, 2684, 2996814, 2488934, -1806571, -722091,
-3889630, 1536525, -2971581, -1327682, -2071785, -995896, 208306, 1922535, -1559610, -1629403,
-4940286, 4071629, 1347546, -641024, 1817308, 3322157, 294742, -3058554, -250182, -3118683,
-830539, -2805151, 1671816, 5027259, -1581085, -4653597, -5139465, 3844533, -9520332, 592169,
--22202296, 5401995, -7279970, 2170032, -7567196, -16367583, -2536715, -3808562, 11603391, 4926865,
-4168266, -391916, 15403900, -11589432, 2815351, 4378719, 11897059, -13727789, -7847979, -2721936,
-1117228, -923955, -3913789, -1280437, 4099010, -7397008, 1493575, 4364761, -863825, 588411,
--5982890, -6840273, -4247723, 18428094, 149250, -4492536, 7153268, -4438849, -9295920, -7610682,
--5047661, -1343788, 3250217, 671089, 616865, 10225780, 9337259, -1701881, 3313031, 2245194,
--11849815, -8131984, -537408, -960462, -3121368, -8082592, 9885941, 11955578, -9841381, 6447820,
-6041945, -1935957, -9409200, -15160698, -14708652, -11339787, -6699612, -13087839, 1158567, -10719165,
-6381248, 5751498, 919123, 105227, -18296560, 1170379, 302795, 1320166, -9398462, 3117610,
-10336913, 1369021, 2591476, -8299488, -5168457, -1044751, -8761196, 1999307, 5378373, -2605435,
--3285113, -4037806, 3337727, 5492190, -9728101, -5332739, -532039, 6418829, 2336462, -2853469,
-2208150, -378494, -164819, 2863670, -1923072, 3700651, -4357781, -1555852, 3067681, 2684892,
--1136019, 7205345, 393526, -4592931, -3935801, -699006, -3256659, -2925947, 310848, 1994476,
--1431835, -1533303, -9078487, -7632157, -5282273, -5974837, -1884954, -13559212, 589484, 14780593,
--5228049, 7776039, -3131568, 14734422, 12481175, 5137318, -15354508, -3969624, 20463372, -5334887,
-15163382, 2335389, -14585172, -7426536, 17134236, 320512, -11568494, 220117, -9868224, -1405528,
-3452617, 1356673, -1999844, -17161616, -15228880, 4142496, 10964515, -9826348, -893890, 4233764,
--767189, 1626719, 18234284, 3310346, 2627983, 1529008, 6005975, -8140574, -5763846, -4203699,
--19286014, -6585796, -7258495, -5036386, 5048734, 3345780, -1250909, -1966558, -7649337, -11589432,
-15032386, -3293703, -13269838, -6249178, 2660195, 10044855, -8029442, -2550674, -8519605, -1640141,
--10173167, -1998770, -2190970, -20428476, 1840930, -6910603, 14091788, -3682398, -11502996, -21665426,
--14283987, -2739652, 1768990, 7551626, -5617817, -5155035, -11804181, 10750303, 18205830, 1895691,
--2181307, 6172405, -4780836, 6829535, -5158793, -2514167, 2331094, 5216775, 3769371, -6395743,
-209380, 1301912, -94489, -481036, -1608465, 1697586, 6465537, -2738042, -5694053, -272730,
--1278290, 2940979, -46171, 6268505, 439697, 2277407, 228170, -3882114, 1019518, -1569811,
-6766721, 367220, -4292283, -842350, -1029718, 4492536, 466541, -4979478, -739808, 3453154,
--1586990, 817118, 7108708, -24982214, -12676059, -8630200, -13579076, -7350837, -5524939, -14191646,
-14915885, -4357781, 22486302, -11377905, -16869020, -3350611, -11305965, 19247360, -6586333, -10237055,
--4655745, 5119601, 9874667, 8371965, -1977833, -2322504, -4363687, 2071785, 15976205, -479963,
-1581085, -5180268, -1946157, -8390219, -2659659, 3641059, 2806224, -6945499, 397284, -10251013,
-2113124, -3100967, -2982855, 4110821, 2008971, -4801774, -1832877, 8661338, 3346317, -7269769,
--9425306, 15800648, -682900, -25295210, 13204877, -2851322, -10652593, 5035313, -1485522, 1108102,
--2388002, 8731132, 3466039, 850404, 24320790, 23890756, -8378945, 2565706, -17926656, -3872450,
--3390340, 7596724, -2685965, 1195075, 7460358, -5492190, 13920526, -5901285, 1592896, -18807124,
-7862475, -4929549, -13059922, 6548752, -2966212, 26368414, 6362457, 4989679, 9845676, 1047435,
--9147207, -780610, -3728032, -2313377, 2723546, -3316252, 5458367, 3254512, -3958349, 6686727,
-3895535, -4461398, -1077500, 358630, 763430, -1856500, 1522566, 2317135, -549219, -2023467,
-548145, 2055679, 1332514, 1546188, -4155918, 4268661, -8412230, 7514582, -4903779, -2967286,
--479426, 3897683, 5729487, 1464047, -6357626, 19864, -2503966, -1593970, 1656247, -6252936,
--11169062, 3275450, 30045980, -22536230, -7105487, -14271639, -9365176, 11325829, -12837120, 27477590,
--3127273, 8386998, 1628866, 6669548, -16990890, 3126736, 4595615, -1269700, -2462627, -1505923,
-5163625, -10506564, -6257231, -1491427, -2859375, -12983686, -11415486, -3093987, -5215164, 15683073,
--3965866, -7434589, -5251135, 5392869, -7932805, -3409130, -13818520, 6531035, -5201743, 5756330,
--4808753, 7319698, -3606699, -24046448, -12123082, 3554622, -1746441, -1468342, -7371238, -14318884,
--692027, 6313602, 4375498, -3252901, 4855998, 7371775, 22940494, -9778567, 10940892, -25661892,
-1755568, 3773129, -2910377, -7369090, 5346161, 968515, 1331440, 5768141, 18272402, 12305618,
-9434969, -4855998, -5704254, 8977019, -10779831, 2695092, 9322227, -6492917, 22830436, -342524,
-7191386, -6180458, 13234405, -12441983, -12108587, 408559, 4746476, -5615670, -1217086, 14176613,
-287763, 12909061, 4873178, -1983201, -1880122, -7348689, -432718, -377420, 3801583, -464930,
--5752572, 1041530, 2825552, 7328288, -10509785, 1858110, -5250598, 2272038, 6267968, -2070174,
-5906, -5556077, 2011655, 2100239, -3434900, -12836047, -7870528, -5059472, 2677375, -6770479,
--3674882, -4531728, -3895535, 2612951, 5157719, -112743, 4314295, 1613834, 2391760, 785979,
--9096741, 7920994, -6659347, 12236899, 35274568, 25327422, -6951942, -15535434, -10862509, 21734146,
--25802552, 1564979, -6694781, -6085432, 10261214, -18573050, 2294050, -9408663, -446677, -12867185,
--10283762, 1710471, 471373, 712428, -12822625, 20286204, 3857954, -8807904, 3428995, -2472291,
-1548873, 30151744, 9250286, -8184597, -7582228, 1635846, 9077413, 2688650, -22629646, -5337571,
--15713675, -4995047, -7475928, 7747048, -4403415, -1952063, -374736, -595927, -11214160, -12582644,
-8081518, -4658429, 2019708, -425202, 10924249, -8886824, -6711424, 3011309, 4426501, -11822434,
-13151727, -8218957, -19769734, -18041010, -6750078, -5057861, -8139500, -3912178, -28010702, 9971303,
--13421773, -4012573, -11247446, 15561740, 4749697, 7532836, -258235, -2196339, -13683766, -3894999,
-17871896, -14762876, 21709450, 16938814, 5636608, -3791919, 500901, -2937758, 2897492, -9543954,
--8068096, -4680441, 1076426, -1165010, 1130113, 4265440, -7317551, -1590212, 6831683, 7562364,
--3179350, 4762582, -4202089, -6176163, -3070902, -1831267, 4425964, 1417876, 1494112, -6107981,
--4382478, 2313914, -2598992, 2161979, 2332704, 4600447, 8518531, 3650185, 4658966, -5772436,
--3684008, -1885491, 2313377, -2736968, 911070, -2523293, 963683, 9074192, 3937411, 2563022,
--1992865, 5759551, 1501628, -2201708, -35114040, -4214437, 23206246, -28475096, -11485279, -570694,
--8849780, 10491531, -6037114, 32450626, -3329674, -6900939, -5426691, -1300301, 9401147, -6294275,
--6300717, 26508538, -19383188, -2218888, 6091874, -4139812, 16460999, 9441412, -1189169, -1936493,
-6971269, 9512816, 10176388, 8504035, 17431124, 5701032, 7488276, 4681515, -5685463, 29353954,
-3661997, 5593121, 7371775, 4487167, 21081310, -1369558, 5197448, 7408282, 6091338, 3584150,
-13910862, -8100309, -6648610, 13990856, -2549063, -13846438, -3593814, -24312200, -8317741, -4554813,
-23147190, -21770652, -2834142, 1093069, -752156, -1118302, 13651017, 37536940, -6526203, 4835060,
-4276714, 5817533, 17840758, -19186156, -19849728, -17893370, 31844498, 2508261, -11976516, 29390998,
--11148124, 25645250, -13721347, 9936944, 1081795, -33741264, -4923643, -8315594, 9715753, -540092,
--2916283, 382789, 6110128, -743566, -10275172, 5708549, 158914, -4627828, -88047, -8850854,
-12140262, -1132261, 4364761, -5583995, -5192079, -4970888, -6878390, -469225, 207232, 11756399,
--512712, 1467268, -4622996, 1480153, -10961830, 3685619, -10564546, -1764158, -2275796, -9249212,
-5017596, -7279433, -7509214, 1858110, -10478110, 3431142, 8396661, 8038568, -3938485, -3479461,
-2031520, 3391414, 7302518, 9520869, 545461, 20874614, 1749125, -20756504, -61588756, 12452184,
--14897631, -23613730, 26482768, -15803869, -8343511, -23251880, 5937793, -4486630, -22993108, -7257421,
--13706851, 6557342, -12703440, 785979, 4769025, 10454487, 5104569, 17587892, 2617783, 51003,
--1932735, -14482630, -11378979, -10260677, 8322036, 13194676, 5930813, 4806606, -497142, 5207648,
-10085657, 23977192, -11390253, -6085969, 4052302, -10630044, 11330124, 2671470, -10536629, 24401320,
-8721468, -20201378, 7933342, -19425600, 2201708, 3931506, 10205379, -5388037, -6744710, 30976914,
-11843909, -13054553, 7920457, 16475495, -12751221, -26660472, 14793478, -1970316, -420907, 2394444,
-6425271, 41853384, -3986267, 5401995, 7873749, 59056, 9469329, 5789616, -22213034, 4886062,
--11866458, -10087268, -6294275, 5234492, -35806604, -4151086, 11046119, 1962263, 17650704, -12850005,
-12475269, -8326331, -3831111, -4602595, 5535139, 2667175, -4465692, 229781, -99858, -6131603,
-4958003, -7791608, 8310225, 1320166, 5761699, 5177583, -3699041, -2774012, 1383516, -2030446,
-1132798, 2143726, -3594888, -1073742, -4118337, -2633889, -2733747, -6966437, 44560, 1188632,
-4075387, -2117419, 3921842, 9906879, -5184563, 1778117, -5202279, 2754148, 2993055, -7999914,
--6979, 2811593, -7828652, -3664144, 6634651, 244276, 1242856, 1668595, 158377, 183610,
--19000398, -21881784, 46933792, 10034654, -3016141, -5646809, 10602127, 42410656, 19473918, 5087389,
--1202054, 14232985, 35439384, 8833137, 12241194, 11068668, 25282862, -16245714, 16391743, 7303592,
--48431660, 14398341, -6809134, 14414984, -15045270, 11447698, 7623030, 15109158, -62814, 6442451,
-2420751, -13697724, 6922414, 13702019, -11376831, 6921877, -11041287, -6613176, 34827888, 3626563,
-30849140, -21818434, 9664213, -1038845, -4319664, -602906, -2586107, 4871567, 11370926, 7917772,
--761283, 17679696, -27928024, -26318486, 19268834, -14932528, -3768297, -3412352, -18014704, 9247601,
--4663798, 5271536, 2928094, 29902636, 14586246, 15817291, 6019934, 4336843, -26961120, -6109591,
-13458817, -125091, 476205, 106837, -8551280, -23431730, 4655208, 2316061, -17493938, 2634426,
--8324721, -6828461, 7562901, 5133560, 26894012, -3681861, 6962679, 6540699, -4978941, -6750615,
--579284, -6405944, -2355790, 15911780, 6760279, 3015067, 970126, -124017, 563178, -28991,
--747861, -10517838, -3074123, 6710350, -1671279, 840740, -3763465, -5213554, -1997697, 1926830,
-12991202, -8322573, -8021389, 7719667, 3904662, -9363566, 6975027, 4283156, -6559489, 8755291,
-938450, -4898410, -2149631, -3322157, -1367947, -1410897, 4486630, 2374580, 2370285, 5102958,
-7320772, 5495948, -1112933, 3987340, 12480101, -42824584, 36589900, -15580531, 7480223, 23197656,
--33683280, -1162862, -2409477, 8018167, 13283260, 14513768, 26002268, 4047470, -15828028, 8788040,
-27671938, -38747048, -22075596, 25621628, 1915555, -431644, 1817845, 1988033, -93952, -885837,
-13828721, 7893613, -17876190, 965831, -4579509, 31957778, 20080582, -6773164, 2581812, 3674345,
-4644471, -399432, 12338904, 991064, 9636833, 32650878, 5194763, 3287798, -4294968, 8264591,
--30544196, -13678934, -12442520, -1551020, 3988951, -27696634, 11502996, -24593520, 8915278, 25208774,
--4912369, -22953916, -11615202, 9313637, -3852586, -46733540, 13348758, -32648194, -6500970, -4153770,
-1655173, -13145284, 3887482, 16331076, -12919798, -31003222, -45891188, 36230196, 11610907, -5759551,
-10925860, -11046119, 11644193, 20083268, -20358144, 36045512, 5540508, -3873524, 17335024, 9491341,
--5237713, 9302899, 1266479, 10051297, -9194451, -5210332, 3315178, 7276749, 13128104, 3740380,
-11901891, -7446400, 7029251, 11762305, 11038066, -1701881, 10113037, -10131291, 4679904, 1021665,
-5014911, 19622094, -12401181, 7849590, 1736241, -657667, 15941308, 4263292, 20585242, -2517925,
-10525891, 2715493, 8460012, 2341831, -3376381, 6087043, -9557376, 9016210, -3076270, 7500087,
--1019518, 2132451, -81604, 1650878, 613643, 7875897, -987306, -1721208, -265214, 3483219,
-405874, -643171, 1158031, 1830193, 1909113, 1568200, -148176, 1577864, -307627, 1513976,
-1713155, 1671279, -1826435, 695248, 1162326, -867047, -756988, 52357260, -56314000, 23052700,
-27836756, -34473020, -11329050, -18347564, -10924249, 51939576, -23744726, 36981816, -17730698, -4483409,
--9882183, 12399034, 3861713, -44104484, -9131100, -11382737, 18454400, 1389959, 7284802, 15874736,
--22543746, -3647501, -14715632, 8180302, 17289928, 11665131, -28959890, -4509179, 4706748, 4145717,
--2695629, -12846247, -6423124, -24957518, -5611375, -3149285, 22341884, -20323248, 49937584, 11581379,
--15893526, 22829362, -217970, 29534342, 14907295, 28037546, 5764920, 25633438, 19598472, 25075092,
-25057912, 4280472, 24202140, -32051730, -6662031, 7088307, -22412750, -3416647, 12320651, -24831354,
--37869800, 15036681, 22753126, 1011465, 4388383, -25493852, -8047158, -21299280, -1965484, 24805584,
-905164, 46148348, 19698868, -11417634, 47347184, 25839060, -15440944, -5379447, -11370389, -15247671,
--10941966, 12025908, -8081518, -23726474, 2738042, 16829830, -561030, -7726646, -7464117, -4884452,
--9226127, -14384382, 1323924, -3286187, -3135863, -11111080, -2265595, -3895535, 3651796, 7985418,
--3686156, 1599339, -4486630, -8716099, 4368519, -2346126, -8055748, -16503949, 6324340, -22748294,
--4516158, -15796890, -10960220, -12873091, -4693863, -2099702, -6051072, -9062381, -5835787, -10342281,
--3338263, -1315334, -2234994, -7013682, 8944269, -8454106, 3434900, -1864553, -15435039, -4323959,
--15734613, 2036888, -1555852, -1671816, 1411971, -73543800, 67153424, -16085726, -20800526, -20407000,
-46883864, -35847408, -4414153, -11083163, 788663, 23398444, -26119844, -3615826, 12037183, -9357660,
--2412161, -489089, -14249628, 20794084, 2527052, -36979668, -7754564, -9844065, 3499862, -40424232,
-954020, 3498251, -6505802, -845035, 12016245, 23040352, -8740258, -7307350, 6467147, -17411260,
--49223008, 3180423, 41392748, -21653614, -29800630, 940598, 33644088, -16299401, -8362838, -43101072,
--5514738, -348429, 31159988, 12653511, 5086852, -32804960, -16801912, 23665270, -28571196, 9330816,
-50616188, 26717918, 39531416, -19672560, 23563264, 13015362, -41653668, -16960288, -21807160, -6848326,
-26466126, -2371896, 28519656, 20993800, -41390064, 46308876, -27696634, -1300301, 3626563, -22995254,
-48095044, -4354560, -9716290, 36486284, -29459718, -6478958, -42536284, -16093779, 21137144, -7420630,
-19232326, 18213882, -3362423, -8862665, 4463545, -11922829, -11235098, -4690641, -7970923, -6701223,
--6242198, 1914482, -8042327, 586263, -10445897, -12644921, -9004936, 7282654, -4849555, -2244121,
-7046431, 209917, -959388, -13704167, -18338436, -13786308, -24252606, 17426830, 8860518, 14917495,
-6928319, -15014132, -12912282, -8573292, -852551, 19267224, -3175055, -1352915, 3842922, -4519916,
--2261300, -2984466, -6601902, 13044353, -7898982, 17081084, 956704, 43047920, 30766462, 4390531,
--8134668, -22554484, 13266080, -1886564, -1873680, -1549410, -609349, -28991, -8442832, 10747619,
--78383, -38651484, 9812390, 3330210, -13181792, 386547, 16792248, -5735392, 1262720, -27982248,
-20435992, -10035191, -2855080, -2930242, 11698954, -15219217, -407485, 3314104, 610422, 3070902,
--7009924, 20514912, -10660646, 36254356, -22226456, -23980950, 22645216, -25332254, 1484448, 18680960,
--17248588, -7887708, 10183904, 11587822, 15664819, -55601572, 17836462, -642635, -12523588, 35070020,
--17486422, 2044941, 353261, -29991756, 38467336, -1939715, -1496259, -20243792, -3456375, 31472984,
--7188702, -1300301, 1433445, 8995809, 5429376, -39115340, 19412178, 34647500, -18079128, 13817984,
--27025544, 45458472, 2230699, -42633992, 754841, 23616952, -2216203, -26524644, -5766531, 61977452,
--9489193, -25675314, 4478577, 27284854, -6906308, -8661875, -3046743, -1315871, 1784559, 1136019,
--6783901, 17980344, -2756295, -4345970, 1186485, 6077916, 15321222, -4619238, -7228430, 8250632,
-2052458, -14105746, -4951024, 7426536, 1888712, -5945846, -2981781, 11986717, -10817412, -2300492,
-2044404, 1648731, -10209137, -4276714, 13582297, -814433, -9501005, -4175782, 9885404, -2945274,
--7098507, -6241661, 8653822, 312996, -24137180, -80315888, -121575488, 8157217, 105322800, 1617055,
-275393824, 249498944, 149507808, 288050560, 189140704, -31216896, 11079405, -36935108, -226605696, -128738960,
--99614784, -221445296, -181962736, -53674744, -106732088, -122728152, -9800578, 7394323, -51723756, 11486890,
-47224240, -59903520, -50765440, 80549968, 16712255, -19353660, 56404196, 75478680, 185757, 77430744,
-131104416, 47055124, 36187784, 133553080, 90469192, 11099806, 98249528, 144686176, 63817844, 74103752,
-165003520, 62769872, 22846004, 157509872, 155164288, 48111688, 186821408, 265388720, 99241664, 109132432,
-185290800, 56713432, -59399936, 10937134, -61011084, -222400928, -211984016, -226544496, -364027456, -393633760,
--420839136, -497922528, -520774976, -508773760, -495030944, -435869376, -390986976, -319718432, -210956976, -150524640,
--51541220, 144380688, 234030624, 231056896, 427587616, 455805536, 355032736, 432375968, 453050336, 243413520,
-254064496, 311265408, 151546848, 122590176, 202374032, 146934592, 69485592, 95880848, 128271344, 54910620,
-45063872, 128782448, 68520296, -10893111, 71021576, 55562920, -39104068, 6358699, 51419884, -32484448,
--13596793, 95555504, 38420092, 4472135, 92121144, 60800632, -7881802, 5903970, -38792680, -133077952,
--181334592, -200714016, -263445776, -282010240, -281600064, -305200928, -307943776, -322619680, -323467936, -295656416,
--293510560, -246217056, -189722672, -150026960, -61830888, 56574920, 119971320, 199026096, 248752160, 263293840,
-251236256, 229293264, 195175664, 158732320, 138620608, 121420872, 100011536, 90243704, 87873960, 80201000,
-75511968, 78748760, 73841224, 62264676, 53991496, 43466144, 27806692, 17667884, 430034, -20055886,
--35674000, -48369384, -49075908, -46751256, -43804372, -32229972, -24158118, -18305150, -10721849, -646393,
-6825777, 15379741, 18723374, 21505438, 18105434, 13107703, 10822781, 8510478, 3307662, 555661,
--1480690, -5490579, -12683038, -13191992, -16574279, -24925306, -23792508, -21573084, -32232118, -35022772,
--34983584, -43440908, -46119360, -41661720, -47543676, -50061064, -44430364, -41337448, -40223980, -34121904,
--28613608, -26669600, -21786758, -13529147, -10304700, -6244346, 1504312, 9378061, 13028246, 21094196,
-30012694, 34809636, 38812008, 46237472, 49088792, 48464412, 49065708, 48834852, 43484932, 38159712,
-34451008, 28992102, 20841328, 16304233, 11589432, 6009733, 1833414, -226023, -3367254, -5420786,
--6754373, -7386807, -8560407, -8055748, -7638063, -6938520, -6677064, -5528160, -5246840, -4026532,
--3346317, -2114198, -1563368, -288837, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
-2902861,
-9578851, 2103460, 1420560, -2200634, -753230, -4744865, -165356, -1236414, 3570729, 3101503,
--3121904, -2304787, -1870995, -1840930, -2211908, 215822, 2851322, -2265595, -2362769, -7897371,
--5752572, -4285841, -158914, 394063, 5810017, -3208341, 2901251, 1740536, 1511829, 318901,
--4267050, 1076963, -9144522, 1093606, 328028, 406948, -586263, -5692443, -2538326, -4910222,
-345745, 289373, -2908230, -7609609, 5260798, -390842, -4392141, -45097, 3007014, 620623,
--1482838, 1054951, -2479270, -1112397, -2336462, 1815161, -2489471, 3554622, 2942590, -594853,
--5002563, 243739, 749472, -469762, -1799591, 1260036, 951872, -1171989, 2784750, 2956548,
-2107218, 178778, 68183, 934155, -2689187, 363998, 4281546, 477815, 864899, 766652,
-3179887, 1184874, 1039919, 2787434, -632434, 2192044, -802085, 1427003, 1072131, -397284,
-659814, 801011, -186294, 1017907, 1640678, 365609, 98247, 1107565, 1551557, 1177895,
--112743, 442382, 554051, 572304, 238371, 86436, -46708, -377957, -1104880, 759136,
-156229, -10119480, -11412265, -783295, -4526359, 3502546, -5604396, 1426466, 2556579, -3780108,
-3087008, 11418707, 616328, -1024350, 6222334, 870268, 6248104, 120259, 2839510, -4461398,
--5966247, -298500, 2233383, -4110821, -1352378, -397284, -1188095, 1153736, -1236951, -2161442,
-2043331, -1007707, -887985, 4497368, 6362457, -1970316, -3453154, 1291175, 5088463, 1959042,
-6527814, 293668, -940598, -149250, 5822902, 394063, -4199405, -2277407, 4568235, 3345243,
-3549791, 988379, -2295123, -4704600, 915902, 2238752, 2740726, -1001264, -2490007, 5119601,
-3412889, -832150, -2871186, 185757, -2002529, 5334350, 1618666, 989453, 1687922, 607738,
-1093606, 3281355, 569083, 3295851, -644245, 5245766, 634581, -5168457, -2054068, -1794223,
-2568927, 3208878, -517544, 863825, -3626026, -1309428, -3376918, -1017907, -2201708, -1868311,
--794569, 1105954, 48855, 36507, 143345, 1454383, 231391, 335007, -179315, -1549946,
--438624, 85362, -150861, 631360, 240518, 271120, -588947, 5945846, 4226248, 6262599,
-6587406, -1604170, 3318399, -1437203, -3678103, -379031, 9742596, 4217121, 2203855, 3421478,
--4009352, 6887517, 3005940, 4604205, -1328756, -7714298, 3269007, -12018392, 2472828, -3093450,
-2450816, 1857037, -183610, -4158065, 1037772, 2660195, -1561221, 2492692, 6120329, -467615,
--4994510, -6899328, 1116692, 3037616, -6276558, 3483755, -5895917, -3907883, 4358855, -2538326,
--4976257, -2479807, -3497177, 5516886, 7664906, 4283156, -2694018, 1611, 4115653, 2399276,
--298500, -3145527, -1432372, -2764348, 2947421, 9390946, -28454, -5141613, -3988414, 2154463,
-813896, -1946157, -5531918, -134218, -4731980, -1908039, 799401, -850404, 3839701, 677531,
-4809290, 5510980, -4814122, -1820529, 319438, -3825205, -4506495, -759136, 69793, -2818036,
-2719251, -2563559, -267362, 2078227, 472983, 120796, 2132988, -2592550, -836445, 576063,
-1013075, -1190243, 881005, 424128, 988916, -172872, 30065, 930397, -1257889, 1644973,
--1260036, 790274, 307627, -402116, -52076, 715649, -486942, -902480, -1427540, 896038,
--1034013, 377420, 1465121, -223875, -848793, 13383655, -3600793, 1312649, 1903207, -8813810,
--7523709, 205622, 8737037, 6680285, 10562935, 3496640, -2987150, -4535486, 775778, -2597918,
-2080375, 1022739, 3568044, 6578280, 2089502, 4854387, -137439, 2884608, -2913062, -6099391,
--3205119, -4664335, 64425, -1290101, 1428077, -7432441, -3717294, -979253, 2758980, -3664144,
-7722351, -8679055, 1869921, -5457830, -4438849, 2549600, 2221572, 7468412, -821413, 1903744,
--2120103, 5238250, 5519570, 1555852, -1181116, -5581310, -769873, 1958505, -4288525, 4332012,
--4721243, 2054605, 7830799, 6580427, 107374, -2499134, 1235877, 7845832, -965294, 1950452,
-1227824, 6417218, 76773, -1676648, -3954591, 2816425, -5965173, 2207076, 12452184, 3088618,
-5871757, 612033, -8212515, 3007014, 1545115, -3214246, 3374771, -1009317, -877784, -4070019,
-1734093, 4072703, 1822677, 812286, -1855426, -4003447, 954557, -767725, -608275, 297963,
--182536, -725850, 1324461, -1338419, -1229434, -1147293, 1855963, 773094, 1466731, -772020,
-1355599, 115964, -1284732, 1449015, 795106, -1120987, -2196339, -768262, 1859184, 158914,
--452045, 964757, 862215, 2034741, -62277, -733366, 1304060, -973884, -4821101, -8396661,
-4263829, -6002217, -6075768, 1210107, -2915209, -19677392, 1959042, 2979634, 18020610, 5768141,
-1388348, -8206072, 7544110, 3195456, -3201361, 3875134, -622770, 6481106, -3882114, -2068027,
--1268089, -1779190, -2646774, -1217086, 4697084, 4014184, 7077033, 2466922, 3502546, -111132,
--4508105, -4979478, 6707665, -3678640, 1537598, -636192, -4633733, 6707665, -1065689, -2957085,
-1235877, 4874788, -3205119, 7420630, -9386114, -7850127, -9519795, 2288681, -5335960, -8232379,
--1826435, 7634305, -3187940, 2269353, 4609037, -3327526, -4264366, 318901, 767725, 2534568,
-529892, -2421288, -214748, 9849434, 4251481, -4056597, -12372727, -9962714, 3694209, 11724187,
-9943923, -7737384, 258772, -5057861, 2288144, 1924145, -8364449, -699006, 1731946, 955630,
--2224793, 474594, 566936, 227633, 2920041, 2586644, -1620813, -2081985, 1464047, -1025960,
-718870, -2966212, 1269700, 852551, -4628364, -1081795, 1071594, 687195, 450435, 897648,
--225486, 318364, 411243, 443992, -1648731, -261993, 667331, -567473, -2015950, -1062468,
-345745, 304943, 2330557, -3466576, 5776194, -9733470, -1663226, -12071006, -3544959, 1839857,
-4235912, -10996727, -2737505, 7610145, -898185, -11003169, 5743445, -3488050, -6303938, 3513820,
-5818070, 1364726, 1235340, 2052994, 7598871, -3540664, -3124052, 2037962, -3731253, -1855963,
-126165, -366146, 279173, 6135361, 3143379, -642635, -503048, 3614215, 1518808, 4425964,
--348966, 4989679, 5240934, 2146410, -5655935, 892816, -765041, -3972845, 5508833, -3030100,
-2327872, -3682398, -1346472, -13456669, 1273995, 11066520, 1007170, 11761231, -2118493, -2542621,
--11989401, 14198088, 6688338, 8127689, 1356136, 6679748, -34360, 38118, 5541582, -3124052,
-2032593, 70867, -13442174, 3189013, -3119757, 3660386, -1986422, 3314641, 12563853, 3875671,
-3346317, -49392, -7553237, 5809480, -3036542, 1250909, 2913599, 3870303, -4134443, -995896,
--1680406, -2153926, 2497524, -1311039, -1037772, -1663763, 344671, 575526, 242129, -3381213,
-1459752, 730144, -729071, 1134945, 546535, 1008244, 789200, 1793149, 75162, 486405,
--151934, -670552, 2159832, -258235, 3019899, 598074, 1296543, -769336, 1693828, 689342,
-1391569, 1453846, 1224603, -15435039, -619012, 11789148, -2667712, 7020661, -7563975, -5039071,
--13532905, 7769596, 3871376, 9003862, 4052839, -4288525, 7395397, -1798518, 7071664, -4629438,
--4480725, 641561, -1713155, 6315213, 1196148, 5340255, 5755793, -3419331, -3105261, -1981054,
-3753802, -703301, -2600603, 887448, -5389110, 2818572, 1762010, -2690260, 3799436, 6951942,
--2854543, -3027952, -935766, -5099200, -2626373, 7975218, 965294, -4801774, 9484362, -10462540,
-1563368, 5732708, -2521683, -3389266, -882079, 4586488, -8152385, 4113505, -3371549, -6830609,
--5282810, -4096862, 49929, -1895154, -4505421, 1977833, 11807402, 6647536, -1714766, -4017405,
--11611444, 1292248, 6309307, -3683471, -12821014, 410706, -2084670, 707596, 1521492, 5908265,
--424128, -2905009, -1210644, -4584341, -2823404, -2135136, 3428995, -2823941, 3177739, -6724845,
-498753, -3055332, -2144799, 4189204, -2036888, -1890859, -2439542, 901943, -4401805, -1676111,
--1060857, -113817, 866510, -3023120, 810675, -2388002, 1289564, 1666984, 3507378, 722091,
-1232119, 1930051, 1381369, -970663, 524523, 274878, 2600066, 1586990, -322659, 1641214,
--181999, 190589, -1138166, 214748, -38118, -1828582, 511638, -1247688, -1038845, 183610,
-1365800, -346819, 5165772, -2273112, 1310502, 7646653, 491237, 8957691, 9700184, 21662204,
-14763950, 9060770, -2308545, -11471321, -4009352, 10513006, 4537096, -11081016, 8260296, -1933272,
--5508833, -6781754, 1001264, 18725520, -12703976, 13540958, 5272609, -2920041, 4434554, -3663607,
-9677635, -3724274, 5104569, 1015223, -6740415, -4715874, -6568079, 245887, 5527086, -1607392,
--3710852, 3564823, 444529, -1126355, -12685186, 3826279, -7114614, -5378910, 3476776, 8341364,
--6185290, -8891119, 296890, 7528541, 602906, -5073967, -1906966, -3025268, 3417720, 2494839,
--2933463, -4798016, -7210713, 4435628, 11515881, 7055558, 3624416, -6706592, 3451006, 7288560,
--8214662, -10714870, 1853278, -8850317, -4245575, -17337172, 205622, -11911018, -6215355, 3184182,
--1512365, -1160178, 5248987, 879931, -9723806, -6750078, 4359392, -1361505, 512712, -3039226,
-269509, 2815351, -439160, 1859184, 1874753, 368830, 162672, 1373316, 1615445, 1061394,
-112743, 313533, -993748, 2541010, 53150, 2335925, -435402, -1595044, 751082, 2171106,
--2768107, -4075387, -2077690, -613107, -1279900, 4576825, 1722282, -1477469, 2036351, -1196148,
-299037, -3741454, -341987, 237834, -1707250, 23685670, 542777, -9291625, 10457172, -11442867,
-13233868, 1055488, -8047158, -13813689, -3336653, 6750078, -10963441, 9714679, -1550483, 6254546,
-7477001, -6438156, -2669322, -3884798, -5112622, -2011655, -4778151, 771484, -5840619, 6046777,
-3830037, 5070746, 10333691, 5295158, -1549946, 12305081, 6277095, 2249489, -6630893, -7249368,
-3687230, -5557688, 1256815, 3865471, -8252243, 7017977, 18773302, 1398012, 13345537, 6291054,
-6445672, 9504763, 534187, 5019743, 5317170, -12202002, -8274792, 8352638, 534723, 7880191,
-1382443, 8273718, -1373316, 2948495, 2037962, -17468706, -1180579, 4433480, 11624866, 2558727,
-10189810, 994285, -2448668, 3308199, 4548907, -9829033, -16581258, -8777839, 2232309, 4023311,
-508954, 12091944, 4234301, -19079318, 4795868, -2811593, 51540, 5424007, -7689065, -312459,
--4168803, 3450469, 4865124, 245887, 1005022, 3506304, 85362, -86973, -1711008, -1879585,
-583042, 304406, 55298, 2916283, 2088428, 692027, 1719061, 1097364, 10737, -2973728,
-2257005, 1850057, -1221918, -314069, -479963, 84289, 1625108, 1355599, 4430796, -3847217,
--1158031, 1633161, -1008780, 2308008, -1966021, 3897683, -1025960, -1265942, 474057, 2206003,
-1521492, -616328, -346282, -1624571, -381178, -11573326, -903554, -10314364, -4720706, 4226785,
--5085242, 2222109, 3584150, -6212670, -15153718, 4818417, -15012521, -17440252, 3861176, -8609262,
-7755637, 10865730, -2709588, 12690555, -3001109, 12537010, 17264158, -38655, 1100049, -17409114,
--3194382, 1825361, 3054259, -2082522, -11345156, 743029, -9594957, 1180042, -2526515, 2582349,
--3634079, -6466610, 1538672, -1197759, -3451543, 4014184, 488553, -2702608, 12491912, 4551055,
-9398999, -5945846, 1800128, -5023501, 3631932, -1169842, 4963909, -1699196, -3598646, -4823249,
--10897943, -6543920, 17795124, 7105487, 11829951, -13662828, 2944737, 9984188, -8483634, 7516,
-6650220, -3630858, 6672769, 868120, -11790759, -3160559, -18194018, -2336999, 7452842, 3732327,
-12349105, 1309428, 8230231, 8610873, 3099356, -627602, 15975131, 1262184, 493384, -2811056,
--1492501, 8331700, 5008469, 7964480, -881005, -1744294, -1986422, 5792837, 1269163, -1313723,
-1661079, 3946538, -896038, -2462627, -4610648, 77846, -3667902, -1742146, -3121904, 2593624,
--326418, -5552856, -964757, 321049, 444529, -352724, -2545842, 3635153, -2979634, 864362,
-1437203, -4213363, -740345, -2845416, 585726, 3213173, -2917894, -2487323, -1809792, -1889249,
-1862942, 961536, -11258183, -10040560, -10662793, -15539729, 10599442, 6869800, 942208, -10457172,
-9447317, -86436, -13205951, -10795937, -3776887, -2690260, -8460012, -3330747, -5021354, -4249334,
--3136400, -12207371, 6099928, 7151658, -646929, -1135482, -2240362, -4509716, -14512694, -15815680,
-471910, 6867116, -4189204, -9739912, -5484673, 7419556, 5442798, 362925, -3059627, -4183298,
--4251481, 9383430, -4786741, 6597070, -4529043, 198105, -15779710, -3432216, -1252520, 11909407,
-3263102, -2783139, -8876624, -6160594, -12419972, 20036560, -9220758, 19029390, 2415382, -8192113,
-12540768, 12364674, 21346524, -20936892, 8661875, 3491809, 2814277, -4151086, -6029061, 9266929,
-4782983, -1585917, -9839233, 10932302, -5749351, 11752641, 9687836, 9197672, -8332237, 18147848,
--13405667, 7466801, 11683385, -6728603, 1451699, 341987, 10150081, -2695629, 4505421, -5294621,
-10847477, -339302, 1895691, -6227703, 4947803, -338766, 5104569, -1479079, 6883759, 3375844,
-2166274, -4065724, 1295470, -3403762, 190052, -2897492, -3921305, -782758, -3463891, -2301029,
--375810, -1752884, -3451006, 2367601, 2862596, 4225711, 977642, -3941169, 367220, -2659659,
-2666101, 1121523, -1941862, 525060, 1862942, 1126355, -4444218, 875100, 4452808, 1753957,
--704375, 1287417, 17064978, -28491740, -30508226, -19234474, -3156264, -13420699, 8271034, -11043972,
-1192927, 5446019, -758062, 20083268, 14567455, 5100274, -5833103, -4519380, 14152991, -2388539,
-2252174, -5798743, -12499965, 9127, 5163625, 3345780, -6835978, 6068789, 948114, -841277,
-12011950, 16411607, 1260036, -10524280, -4442607, -20170240, -7726646, -5226439, -5966247, 893353,
-3612604, -7341173, -2843268, -10261214, 11132555, 13238700, 11134703, 12361990, 9819369, 16181826,
-2077690, 5548561, 3937948, -2946885, 6336151, 9644886, -9587978, -33474976, -7696045, 11115375,
--17245368, 8838506, 11033234, 3952444, -5177046, 838592, -4068408, -13440026, -3559991, 8749922,
--10650982, -9094593, 3330747, -7382512, 21891986, 22167936, -8106751, 14277008, 3871376, -2090575,
--9600863, 6830072, -12986370, -10816875, 12011950, 9004399, 6410776, -833224, -1042603, -15942382,
--11361799, -2095407, -3520263, -2964601, -2276870, -4710506, -3797288, -4390531, -2090039, 586800,
-3880503, 2983392, 5107253, -414464, -2257542, -2383707, -1508070, 7204271, 6808060, 3464428,
--494458, -450972, -1410360, -2684892, -4057134, -1840930, 890132, -1231045, 3044595, -1535451,
-1231582, 1395864, 1372779, 2758443, -3061238, -50466, 794569, 2339684, -3712462, 6647536,
--2599529, -1671816, 27492622, -23165442, -261456, 3730179, -21843130, -6661495, -9127879, 3151969,
--6556805, 18938658, 2616172, -396748, 23998666, -1508070, -20987358, -17104170, -10229001, 8011188,
--1093606, -20644298, 5383742, 5551245, 10897406, -12342662, 6315750, 10215043, 9143985, 7097434,
--2380486, 12239583, 13500693, 4377109, -29717952, 21661130, -10588168, 8259759, -2067490, -3235721,
-5819681, -13353053, -7451232, 13887777, -6314139, -1961726, 12777528, -14317810, 12848932, -5059472,
-11936251, -15756088, 20946556, -9400073, 32355600, -4348118, 2113661, 8180302, -7057705, -5418101,
--3843996, 2514167, -1578401, -16354162, -20331302, -5745593, 11915850, -6219650, -7344931, -20890720,
-9643275, 2047626, -28347858, -503048, 438624, 4109210, 14672145, -10008348, 4621922, -12829067,
--11101417, -16988206, -16816944, -3070902, -9818295, 12133283, -1986959, 11851425, -5769752, 6721624,
--915365, -7703024, -10578504, -1289027, 1304060, 5124433, -2490544, 2219961, 1079111, 4183835,
--390305, -5702106, -785442, -8593693, -363462, 1322850, 1921461, 422517, -3204046, -4196720,
-4723927, 2116345, -1381369, 5281199, -6682432, -8995809, -136365, 7890392, 212064, 2251100,
-3168612, 5383742, 350040, 6031745, -4925791, 1909113, 1239635, 4899484, 8400956, -5251672,
-1376000, -1264868, 1395864, 10546292, 31698470, 15849503, -9683541, 21887154, 7175280, -13930726,
-5357972, 14156212, -2204392, -4776541, -19500762, -5247377, 12000139, 7888781, 5701032, 3573950,
--3531000, -7780334, -18408766, 9829033, -6287296, 4918275, -14139032, -7603166, -369904, -2132988,
-18066780, 5494337, 2864743, 13891535, 6629819, -20904680, -2467996, 7707856, -3946538, 482110,
-17849348, 5928129, 20725364, -12029667, -7638063, -3356517, -7762080, 8188892, -8090645, 15674483,
-15533286, -6792491, -15222975, 25509422, -13125420, -5240397, -3076807, 7633768, 3854196, -14150307,
--4262755, 9139690, -6779606, 11579232, -5480379, 16384763, -8512625, 3739306, 24946780, -451508,
-17566416, 30518964, 3826279, 15011984, -7758322, -36599564, -24865714, -4707821, -1595044, 20876226,
--706522, 7014219, 1742146, -5131949, -17008608, -37775312, 28594282, 2025077, 817118, 9409200,
-4431333, -9178345, 21126408, 1105954, 4434554, -217433, 1390496, -18609556, -6965363, -12253542,
--7459285, -558346, -6973417, -6902013, 4292283, -1467805, -4815732, 13691282, -2586644, -13841069,
--9968619, 3527242, 638340, -3986804, 21087752, 6419903, -7118372, -8133058, 2145873, -1862942,
--4431870, 726386, 1891933, -4723927, 4961224, -127775, 7187091, 9433896, 1781875, -854699,
--2899103, 6332930, 6044630, 5534066, -41399188, -9911711, 43236900, -16597364, -18539764, 38176352,
--24495810, 21512954, 28750512, 11362336, 3950833, -21836688, 8356396, -38305204, -18872624, 8381629,
-19913078, 2252174, 4592394, 14516989, 38744364, 26191248, 8184597, 1445257, -46171, 4310537,
-3198677, -15036681, 318364, 9587978, 12119324, 51707648, 29142964, 19925428, 37335612, 15256261,
--5352066, 11217381, -710280, 35773320, 12942347, -2923799, -5972689, 14946486, -2310693, 17162152,
--53348324, 2300492, 18355080, -1105954, 22217328, -8319352, 5860483, 11838540, -49676664, -19197430,
--3910031, -15910169, -20592758, -24256364, 22673132, -14842870, 4503810, -4549444, 22749368, -37323804,
--10271951, -5272073, 11681237, -188442, -3471944, 27494770, 47937740, -257161, 14882599, -9108552,
-3990025, 33539936, -35756140, -21246666, -29940754, -37740416, -3366181, -1549946, -14934675, -16040092,
--15208479, -14434311, -18618146, -26958972, -11832635, -17515950, -10783589, 4607963, 23531052, 7468412,
-3456912, 3454764, -2481417, 5158793, 2151779, -16926466, -15290084, -4490389, -21489332, -8621073,
--9582609, -7486665, -8595840, 9582609, -7970923, 419833, 1224066, 4015795, 11500312, 17702244,
--462783, -4741644, 12732967, -6841883, 7999914, 2922188, 1503239, -3772055, 2043868, 1358283,
--7991861, -10423886, -11302206, -1845762, 3518652, 22456774, 19781546, -18626200, -65901440, -11943767,
-27025544, 6101001, -7342784, -5346161, 2058363, -9251896, -12082817, 14387604, 10853382, 29822106,
-10917270, 17867064, -6748468, 39727912, 7219303, 25129316, -3543348, 36633388, -13947906, 23811836,
--23324894, 51540, 2605435, 16966732, -6720550, -12929462, -30861488, 17047262, 2288144, 3373160,
--14910516, -27855548, -1678795, 3065533, -3394635, 8341900, 17858474, 2547453, 12773770, 45420888,
--19161460, 4421132, -14998026, 23386634, 20437066, -23011362, 21606370, 24493662, -17592722, 6108517,
-5817533, 16925392, 8453033, 34544960, 10948945, -12461848, 2098629, 44689136, 14227616, -51430084,
-15146739, 9023726, -44113072, -12426951, -14119705, -31334470, 2265059, 19080930, 21109764, -12680891,
-37950332, -9931038, -16460462, -8660802, 20073604, -74634720, -9079561, 907849, 60073172, 7781944,
-50936700, 24283208, 35751844, -1189169, 12276090, -7035157, 30295626, 30535070, 27582280, -6867116,
--18365280, -7707856, 30262876, -3757560, -19765440, -8792335, 35851164, 4796942, -22301080, -7832947,
-32340566, 9039296, 13467407, -647466, 12216498, -9456981, -639950, -918049, 5290326, -1085553,
-5718212, -4721243, -10500121, -12655658, -15195594, -2238752, -11096048, -245887, -1985886, -4575751,
-10722386, -12473122, -5009006, -12375411, -4499515, -22502408, -16582869, 22199076, 392453, -25942140,
--41120552, 33393908, 71165464, 5036923, -39891656, 61815316, -14074071, -642098, 8582955, 35170952,
--20275466, 1753420, 69709464, -34401076, 16453483, 23812372, 22406308, -30739618, -3317862, 5815386,
--15381352, 2910377, 7097971, -12340515, 12220793, -21107080, -6248641, -8293045, -1803886, -12566001,
--11417097, -3878892, 6546604, -23041426, -21971442, 33021320, 5761162, -20249698, -5561446, 19750944,
-47105592, -3853660, -23242216, 24943560, 36084168, -10266582, -2877091, 1214939, 12947716, 372588,
--148176, 16765405, -40242768, 27758910, -23294292, 570694, -32942936, 18662706, -2748242, -48656612,
-23967528, -3216394, -19121194, 33299418, 3694746, 32930052, -27806156, -10298795, -11346767, -25268366,
--39832600, -52162376, 44318156, 18476412, 32573568, 30495878, 18504330, 7576323, -19053012, 28893856,
--14416595, -11757473, 38534984, 13219909, -7489886, -3189013, 11608223, -27169426, 6875706, -10562398,
-17979806, -6695317, -11938398, 17637284, 2748242, -20117626, 1447404, -9378598, -5883569, 4612258,
--4652524, 4029753, -1313723, -14404783, -7629473, 6657200, -5089536, -8972187, 8992588, 14765561,
-14010720, -11120744, -4873714, 16932372, -28404230, 8768176, 10139344, -11783243, -28227062, 14407468,
-1566053, -12336220, 8572755, -13225278, -22016002, 6048388, 19385872, -15893526, -7186554, 7242926,
-16896938, -4373351, -2320893, 15206332, 876710, -11671037, 38693896, -15724949, 11434277, 9001715,
--40221832, 36177048, 12600897, -10282152, 30994094, 2641942, 2045478, 15216532, -13498545, 39639864,
--31800474, -16958678, 14743549, 13689671, 6724845, -29496224, -18004502, -32872070, 18194018, 4436701,
-16621523, 90194, 17854716, 7270306, 5978058, 783295, 15226196, -6800007, 8385387, -14986752,
-11295227, -13846438, -115964, -18300318, -13048648, 840740, -16335908, 7727183, 38970924, 9385040,
--29192356, 15307800, 11734924, 20734492, 597537, 34431680, -29511794, 4589173, 13727252, -28418724,
--6627672, 57563300, 32387274, -76017160, -32284732, 40545028, -11028939, -36032628, 14260365, -3628711,
--27831388, 20498806, 34629248, -46843060, 9302362, 41726144, -28204514, -25269976, 34089692, 4632122,
--28010702, 5045513, 22169010, -24442122, -3383897, 26925686, -3926674, -11914776, -19222664, 24637544,
--6477348, 13762686, 3207267, 13977971, -9527311, 9066139, 24820616, 9841381, -18259516, 1544041,
--13059922, -8806294, -18394808, -1621887, -4896800, -1262720, -12358768, 12693239, 10912975, -4279935,
-28369332, -7138773, -30123826, 36319856, -4287988, -6863895, 6705518, 12742094, 1720134, -3335042,
-30640296, 16865262, -21497386, 1852205, 8727910, -15584289, -12885976, 22179212, -11398843, -41981156,
-40494024, 5190468, -40929428, -1176284, 21581674, -15360414, -34417184, 19892678, 26538602, -42432128,
-6263673, 31998580, -18727668, -3255585, 35013112, -2565706, -14283987, 8231842, 14798310, -19153944,
--5233955, 20548198, -4677757, -17899814, 15079630, 9008694, -10432476, 33817500, -72796472, -4968741,
--13060459, -80502184, -14667850, -24700894, 7685844, 14063870, 23643794, -10467909, -31723166, -11716134,
--45676440, 6263136, 16009491, 9582072, 6958921, -36368172, 22161494, 3729105, -44180180, 32247152,
--47493212, -19149112, -17987324, 12985297, 33897492, 39797168, -3528853, -8759586, -76707040, 32981054,
-77098424, 28368796, 1487669, -42359652, -62595928, -25436944, -5561446, 32692754, -39325796, -23165442,
--40396316, -12628278, 71970232, 78084120, -13906030, -35798016, -31295280, -16356846, -8570070, 39391828,
--19005768, 11877195, 7833484, 26243324, -7537668, -17477296, -45886356, -19628000, 68978248, 29819422,
-45777372, -42215232, -23855322, -19492172, 46774880, 1078574, -77120432, -73900280, 41049148, 71474696,
-119288424, 21051782, -102062384, 17125108, -27262304, 34685084, 32915018, -124450976, -40134320, 24441586,
-65226596, 16067473, -63809792, -14101451, -6751152, 36954436, 31049930, 8503498, -51196548, -7856032,
-10740639, 22727894, 10869488, -13160317, 1779727, -28023588, -3954591, -405874, 26778584, -18537078,
-35845796, -23067732, 9954124, 21086678, -9059160, 17496086, 15058692, 28490128, 1087164, -13766981,
--16768089, 2600603, 1016834, 4839355, 2607045, -927176, -2278480, -10285373, -11227581, -2157684,
-17609366, -4625680, 135291, -3760244, 5647882, 1342714, 9659381, -9139154, -12228846, -23537494,
--12025372, -1400696, 12847858, -12597139, -1161252, -36853504, 31479426, -32895154, -6950868, 1021665,
-8443369, -6367826, 7588134, 12518219, -20935818, -18314814, -253940, 4582193, 13682155, -15464567,
-2295123, 11450383, -8908299, 7060390, -4559108, 35471600, -371515, -5610838, 20650202, 11009075,
-18364744, -9450002, 11774116, -3936875, -358093, 14800994, 10821170, 2268817, 4618164, 20038706,
--18780818, -5946382, 2155537, 27117350, -308701, -6396280, 25569014, -6703370, -10929081, -11244224,
-21206402, -5235029, 9333501, 5405217, 3334505, -7634305, 3912178, 7988103, 3027415, 23578296,
-11938935, 6542309, -10189810, -1767916, 9200357, -17196512, 6240588, 6260452, 17658758, 39192,
--1967095, 9727564, 2305324, -19921668, 22314502, 6593312, -5070746, 18246632, -12407087, -1739999,
--9233643, -8360691, 18253074, 13094282, -1154809, 6463389, -10741176, 2347200, -14518063, -1569274,
--13290239, 2811593, 8731132, 2972654, 1697049, -3074123, -1770063, 2384244, -7919920, 2157684,
--3394098, 3623879, -5201743, -2025614, -4812511, -6386080, 3069291, -1248225, -361851, -2461553,
-8647917, 3158949, -10851235, -11541651, -7722351, 2232846, 3599183, 8143258, 4963909, -10646150,
--1520418, -4108673, 9661529, -2571075, 10415296, 4147865, -8475581, -95026, 4639102, -5007395,
-6655589, -4053376, 7519414, -5425081, -1663763, 2269353, -4206921, 57456460, 4631586, -21241834,
--17581448, 2838437, 12993350, -812286, 11859478, -4535486, -3181497, -15960635, -3510599, -11186779,
-17732846, -11127723, -913217, -7038915, -3316252, -4145180, 1932198, -11827803, 1797981, -5120138,
--8320963, 2399276, -1335735, 625455, -2262374, 4109747, 1989644, -9907953, -6350109, -53687,
--6702297, -5867462, 4876936, -1648194, -10095858, 617402, -5622112, 4243428, -14907295, 7385733,
--6489696, -11359652, 3417720, -5240934, -5877663, 1465658, -116501, 636729, -2497524, 2431488,
--4575214, 4966593, -3147137, 460635, 8280697, -6069863, 2763812, -1656784, -903554, 2185065,
--6889128, 6163815, -7242389, 6152004, -1534377, -387084, -4648229, 5807333, -6962142, 368830,
-2419140, -9203041, 9059697, -5640903, 3825742, -4295504, 3652333, -3332895, -4061965, 6662568,
--4277788, -932545, 6605660, -4387846, -102005, 453119, 1009854, -4844723, 335007, -524523,
--2117419, -1431835, 1094143, -1591822, -2604361, -1372242, 2847027, -2751464, 2120103, -855235,
--355409, -956167, -2017024, 1741072, -1381369, -1654636, 1933809, -2192044, 1516660, 619549,
--1312649, 195958, -383863, 434329, -4072703, 3728569, -4188667, 593242, -672162, -2284386,
-489089, -1316408, 2746632, -7047505, -27831924, -44482976, 47165184, 164634688, 31381716, 49520972,
--101457328, -140728368, -58997280, -73630768, 56807920, 132200168, 75782016, 51109572, 4956929, -72663864,
--64581276, -64316600, -26499948, 36672580, 31037044, 33432026, 29799556, -886911, -4992900, -7531225,
--10527502, -15168214, -2208687, 20304458, -1937567, -11630235, -4743255, -16850230, -9677098, -2850785,
--4358318, 32511828, 29995514, 17922362, 18992346, 1075352, -23549306, -23776938, -43928388, -29080686,
-3883187, 3661997, 8807367, 25928180, 36674724, 22175990, 18408766, -764504, -20969640, -28922310,
--25163140, -20928302, 2884071, 7567196, 13360570, 9390409, 6072547, 1416802, -7711614, 3047816,
-617402, 3242164, 18176838, -1648194, 7987566, 8383240, -13717589, -25666188, -26598196, -23826332,
-6236830, 19640348, 14091251, 21483426, 18787260, -6287296, 4645007, 11732777, -7635378, -7014219,
--16572668, -21185464, -8349417, -4975183, -2307471, 9026411, 4100083, 4889284, 14212047, 13642427,
-13989245, 8070781, 3497714, -7027104, -8839580, -21785684, -24016920, -16933982, -12532715, 5419712,
-15528991, 19682224, 26285736, 18868866, 11944841, 196495, -8269960, -12884902, -27352500, -28896004,
--10289131, 5180805, 13753022, 11052025, 9550397, 11061151, 7910256, -528281, -2126009, 1175210,
-233002, -4793721, -4367982, -14606647, -9654550, -404801, 5229660, 7198902, 5647882, -2178622,
--299574, 5305359, 4131759, 314606, 2860985, 2558727, -1737851, -6886443, -6230387, -5964099,
--1406602, -1578937, -137976, 1261110, 6087580, 6774237, 6088116, 2902861, 1948841, -2887292,
--5279052, -6484327, -3827890, -2286533, -19864, 338229, 2238215, 1950989, 3643206, 2470143,
-1488206, -625992, -281857, -881005, -558883, -2234994, -2036351, -1742146, 1205812, 1414118,
-1750736, -423591, -638340, -1029718, 936840, 202400, 922344, 183073, 1057099, -472983,
--454193, -1007707, 549219, -186294, 288837, -1067836, -392990, -907849, 355945, 93416,
-1283122, 228170, 585189, -88584, 916976, -12885, 129923, -1384053, -779000, -1236414,
-123480, -155156, 932545, 87510, 847719, 146029, 672699, -518617, 111669, -633508,
-279710, -474594, 361851, -360240, 394063, -543313, 209917, -392453, 561030, -222265,
-479426, -379031, 417686, -370978, 435939, -354335, 414464, -418222, 367220, -443455,
-350040, -446140, 369904, -405874, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
-2206540,
-6285148, 561030, 4196183, -944356, -649077, -2254858, 4476430, 2872796, -2681670, -3471407,
-2238752, -867583, -5404680, -6200322, 1443646, 332323, -2133525, -2099702, -4221953, 2697240,
--4960687, 1282585, -518617, 1138166, 372588, 1077500, -2247342, -301185, 841277, 1437740,
--539018, 1755031, 1231582, -2165201, 1614908, -1301912, -4234838, 5987722, -1179505, 293132,
-1387811, -726923, 3257196, 4228396, -936303, 1600412, 3128347, 287226, -3390877, -2547989,
-807991, 2022393, -1052804, 1115618, 3846680, -3395172, -3113851, 3246995, 579821, -1257352,
--2115808, -68719, 701690, 2469069, -3951370, 1947768, 962073, -3033321, -3339874, 2842195,
--1833414, -4026532, -1765232, -358630, 6077916, 7081864, -644245, 1193464, -913754, 1107028,
--1198833, 1897302, 1105954, -1143535, -425739, -1215476, 570157, -1627793, 1522566, 1410360,
-282394, -1909650, 196495, -69256, 809064, -477278, 1273995, -655519, 200253, 106837,
-778463, -157840, 249108, 260382, 805306, -17180, -7763154, -3356517, -5355824, 3508988,
--2597918, -3639448, -2464238, -3263638, -648540, 1201517, 5872831, 1012002, -3138547, 4955319,
-192737, 5108327, -4912369, 7912404, 3672197, 8583492, -1541893, -2925947, -591632, -4728222,
--403190, -340376, -1713155, 1602023, 157303, -3755412, -911607, -17180, 1160178, 3721589,
-857920, -5613523, -4674535, -1776506, 3149285, 205622, 152471, -2847563, 4668630, -131533,
-339302, -2018635, 592706, -1221381, 2448668, -798864, 7784092, 61740, -1028645, 2946885,
--1970853, -3508452, -1454383, 2633889, 4695473, 775242, 2873870, 703838, 481036, -2478196,
--2421288, -3966939, -182536, -4112431, 1014686, 3340948, 3564823, 2505040, -1278290, -1825361,
-3199214, -2280628, -957241, 1997697, -1838246, -326418, -959925, 2068027, 3679176, 1898376,
-1073205, -936840, -422517, 661425, -376347, 2465848, 410706, -1208496, -723165, -556198,
--175557, 343597, 297963, 37581, -392453, 1142998, 717796, 54761, 433792, -893890,
--578210, -713501, -842350, -296353, -943282, -915902, -208843, 1173600, 5421323, 5880347,
-3093987, 18254, 4782446, -2571612, -4079682, 3986267, 4121558, 5254356, 7703561, 762357,
--4914517, 2887829, -4686346, -271120, 1564442, 1170916, 8582955, 729608, -6913287, -264141,
-1233193, 2962454, -499290, -2286533, -7609609, -1431835, 6459631, 2298881, 4249334, 5042829,
-4137127, 1221918, -717260, 4491462, -5649493, -102005, -3839701, 10385768, -554588, 360777,
-4596152, -3752728, -595927, 1685775, -572304, 6225018, -943282, 1931662, 5894306, -1071594,
-1853815, 562641, -277025, 15569, -765578, -1627793, 2553895, 3490735, -817118, 3475166,
-1250372, 6804302, 7702487, -335544, 2068027, 1346472, -3872450, 3886409, -938450, -3164854,
-1369558, 3829500, 1074816, -905701, 6830609, -894427, 1866163, 2120103, 1025423, -3387119,
--184147, -631897, 566936, -1752884, -359704, 281857, 742493, 805306, 1273458, -366683,
-632971, -1622961, -1132798, -2030446, 1624571, 606664, -292058, 714038, -267899, -1652489,
-1109712, 242666, 810675, -452582, -580894, 379568, 2050847, -2025614, 1176821, 8617852,
-8350490, -3259880, -4856535, -4156455, -2934537, 2204929, -9232032, -843424, 1220308, -4342749,
--8185671, 7949448, -1760937, -1932198, 1209033, 3695819, 3185792, -3971771, -1660005, -104153,
--497679, 1959579, 2720862, -1468342, 3359738, -2497524, 5182415, -562641, 153008, -2616709,
-2709051, 1089311, -858457, -2605972, 1209570, -1450088, -2401424, -1896228, 408022, 1796907,
--5018133, 496606, -9416179, -5338108, 3306051, -1337882, 1058710, 2161442, 6101538, -1912334,
--3162707, -143881, 136902, 2663954, 2434710, -2812667, -1326608, 6876780, 201863, 1110249,
-521302, 3099893, -5733245, 263604, 2816962, 5359583, 1050656, 2343979, 7982734, -1908039,
--817118, -4283693, -2684, 1393180, 2755222, 60666, -1795296, 2524904, -272730, 4532264,
--18254, -113280, 486942, -5586679, -2973728, -3282429, 3086471, -490163, -972273, -4295,
-353798, -177704, 1591285, -478352, -1002875, -1198833, -673236, -1716913, -1202591, 1350230,
-18790, -450435, -951872, 435939, 284542, 139050, -845035, 1476932, 559956, 935229,
--279173, -75699, -1082332, -1103270, 673773, -526134, 933082, 1314797, -51003, -5516349,
--8425115, 3569655, -2695092, 92879, -4296578, 3330747, -9736691, -8129300, -9176734, -3184718,
--1876364, -6530498, 3390340, 8790724, -6428493, 1304596, 10487773, -2467459, -2743947, -4844723,
-938450, -88584, 4701379, 1445793, 3406983, 2261300, -3287798, -6665789, -3047279, 3884798,
--2142652, -4100083, 1118302, 1609002, 1397475, 779000, 9148280, -4332012, 5026186, -2417530,
-2573222, -2694018, 7629473, -5664525, 3173981, -521302, -4373888, 4110821, -1559610, -1540820,
-4591320, 2328946, -284542, -2042794, 4183298, 1952063, -4096325, -5091147, 3547106, 5504538,
-3235721, 67109, -2319819, 220654, 3652870, -1592896, 4393752, -1072668, -8633421, 212064,
--3733400, 12377022, 4447976, -7144141, -3883724, -1461900, -3101503, 3143916, 3215857, 2292976,
--1420560, 2662343, 2301566, 705985, -418222, -3721589, 828929, 1190243, -938450, 774168,
-1378685, -556735, -47782, 736050, -125091, -1154273, -799938, 18254, 1063541, -1059783,
-1013075, 995896, -1259499, -1817308, -2092186, 537, 1420560, -670015, 1275068, -1017907,
-22549, 812286, -512175, -2043868, 427886, 3212099, -7188165, -8878234, 7659538, -1634235,
--7150584, 603980, -1799591, 7390565, 3732327, -1872069, 1433445, -356482, -1041530, -1304060,
-8646306, 1699733, 526670, -5838471, -2611340, -1348083, 3077344, 3795677, 11623255, 315680,
-451508, -326954, 858993, -5051956, 302795, 2128156, -6242198, -4431333, -4015795, -488553,
-8520141, -6839199, 1246614, 3885872, 1748052, -3181497, 3593814, -8542690, 7088307, -1486596,
-78920, 3837553, -4257387, -5049808, -7798587, 1700807, -2498597, 7493108, 2673080, 214748,
-1501628, 2301029, 5934034, -2558190, -1208496, 6143951, -1176284, -3457449, -47782, 6148246,
-6281390, 5684389, 3142842, -3737159, 3712999, 5144834, -5961415, 7763154, -4646618, -4394289,
-7094749, 761820, 10200547, -105764, -5595806, 2520609, -2446521, 6725382, 3282966, 1867774,
-536871, 2318746, -1097901, 4233764, 1553168, 1693291, 1357747, 2486249, -111669, -191663,
-2015950, -57445, 1504312, -742493, 2423972, 4790499, -2692945, -1263794, 929860, 610959,
-395137, 1226750, -151934, 394600, 1071594, 2352568, 260919, 4409858, 1138703, 521839,
--1886028, 508417, 1546725, -1969779, 522912, 870805, -26307, 569620, -39728, -15794742,
--10497437, 2861522, 5035313, 10889890, -6662031, 5867462, 1025960, 6175626, -370978, -2809446,
--3782256, 3830574, 11167989, 995896, -1044214, -10666551, -9022116, 101469, -6648610, -3832722,
-321586, 1391569, -6813966, -1980517, 1576253, 4003983, 2052994, -4329864, -75699, 5076115,
-4041564, 887985, -4204236, 799938, -2596845, 1254131, 1350767, 2343442, -3252901, 4032974,
-9715753, -964757, -792421, 1926293, -5515275, 2601140, 7811472, -7736310, -9220221, -4711579,
-694174, -11832098, 231391, 362388, 1591822, 137439, -236760, -5608154, -3096672, -3636227,
--561567, 8085276, 11846057, 355409, 721555, 5827197, -2497524, -980326, 2633352, 13413183,
-1630477, 4829691, 9345849, 1731409, -6169721, 2544231, 2748779, -2809446, 2830384, 2428804,
--693100, -2908230, 1308891, 861678, -696858, -4976794, 2130841, 4571993, 1644973, 3330747,
-1793686, 4017942, -935229, -1511292, 3634079, 3069291, -1019518, -210990, -1172526, 2639258,
-2804077, -2324114, 2784213, 757525, 284542, 705448, 1480153, 2128156, 209917, 1856500,
--1336809, -693637, -79994, -353798, 694174, -1267552, 117038, -397284, 476205, -1705102,
--1554241, 8089034, 5182952, -7596187, -259309, 16112570, 14360223, 2966212, 8689256, 10610717,
-2762201, -204011, 7072738, -3214783, 150861, -6401649, 5268315, -483184, 332323, 2291902,
-2840047, 8747775, -7342784, -6817724, 6800007, 1324997, 3145527, -5333813, 1027034, -1901060,
-3533684, -3758, 4930086, 4716411, -4785131, 3985193, 3446711, -5643587, 14409078, 2450279,
-2860985, -11180874, -3500398, -951872, 9362492, 8606041, -817654, -9606231, 6300717, -8360691,
--2516851, 7214472, -149787, -5946919, 7162932, 8868034, -2212982, 2950643, -3532074, -12573517,
-133144, 7964480, -3629784, -4340602, 5338645, -6062883, -9056475, 2205466, 6241125, 11203422,
-5965173, -8500814, 3594888, -9976135, -11625940, 10722923, 5131949, 3884798, -7200513, -7900593,
--1116692, 8067023, 2774012, 11551315, 5215164, 2867965, -12279311, 1931125, -3373697, 404801,
--2815888, 2503429, 842887, 3043521, 5282810, 2655364, 533650, 2232309, -1984275, -1085553,
--2022393, -100932, -1887638, -656593, 847182, 3818226, 756451, -1697586, -619549, 1167694,
-252866, -425739, -3889630, 138513, -1948305, 672162, -2739652, -3191698, 2155537, 2368675,
-3970161, -3899830, 139586, 1925219, 16725140, 10822244, -7333120, -1937567, -336081, 2988760,
-2306398, -1009854, -6622840, 1638530, -4561256, 7028714, 153545, 2736431, -2348810, -994285,
--6914361, -3601867, 14358613, 4810900, -8866960, 4204236, -8665097, -6031745, -13515188, 5881958,
-150861, 244276, 3109556, -339302, -6172405, 10167261, 5720360, -2207613, -10293426, 10254771,
--7093139, 2725157, -346819, 3375308, 1935420, 6522982, 7411503, -1728188, 4064650, 11900281,
-1436667, -3708168, -3489124, -2084670, 1755031, 7947837, -2271501, 3240016, 530965, -7249905,
-183610, -1773822, 3447785, -10913512, -281320, -18203682, -11143293, -10151692, -2673080, -10032507,
-6651294, -2499671, -8417062, -2226404, -1039382, -6724308, -3031710, -230318, 567473, -4031364,
--8845485, -8741869, 359167, -1893544, 2022930, 4912369, -898185, 2459943, 1104880, -34897,
--264141, -4760971, -326418, -93952, -3950296, -310848, 3479997, 6935836, -1327145, -3311957,
-2467459, -4289062, 3498251, -3580392, -1471026, 694174, -2745558, -3217468, -159451, -2007897,
-360240, -747324, -3383361, 1597728, -277025, 4046396, 2575907, -2850248, 2291902, -1591285,
-2118493, -1305670, 1388348, 1424855, 945430, 85899, 1459752, -1883880, -1174674, -2093797,
--4394289, 563178, 1367947, -436476, 749472, -3314641, -11494406, -14307073, -6784975, -9501541,
-24708410, -11928198, 5608691, -11260331, -3236258, 1256815, -1818919, -16809428, -339302, -7953206,
-614180, 19937776, -6343130, 8404714, 10954314, 4019553, 4464619, 12018929, 3575560, -4584878,
-3416647, 4755066, 5063767, 2210298, -2463701, 13979582, 551903, -1047972, -2309082, 3842385,
--1166084, -4770635, 4729833, -1720671, 3399467, -13401909, 585726, -2531883, 12214887, -4737886,
-3957812, 18351322, -1567663, 456877, -4436701, -7480223, -408559, -1164473, -7704635, 9785546,
--2066416, 7121056, 773631, 6730214, -3835943, -641024, 14636175, 7226283, -11322608, -5862094,
-3117610, 3591667, 1762010, 3193845, -3291556, 4214437, 5382131, 12217571, -15567646, 1018444,
--6645925, 3259880, -264141, 1865090, 5756867, 8420283, -5550709, 5973763, -4014721, -2653216,
--2236067, -1994476, 4713727, -10522670, -2071785, -4810900, 6096169, 5006322, 2109903, 2621541,
--3544422, 4152697, 1873680, 3015067, -407485, 2410551, -3143916, -1678259, -3944928, -240518,
--640487, -3456375, -56908, -273267, -952409, 47245, 4202089, 2676838, -2324114, -3701725,
-1976222, 1537061, 4820027, -3626026, 286152, -1245004, 2160906, 2559264, -1269163, -1939715,
--3917010, -8115878, -7351911, -7850127, 8508867, -16513076, -4915590, -10331007, 5126044, 17203492,
--9376987, 547071, 454730, -3320010, 6585259, -5483063, 2627446, -1673427, -7100118, 15350750,
-729608, -4951024, 185757, -2197413, -6808597, 5385352, -5225365, 5057861, -9729712, -4462471,
-6499360, 4844186, -16233366, -2863670, -13830332, 4155381, -2352032, -13217762, 16125992, -4476430,
--361851, -12224551, -13503914, 830539, -12181064, -1537061, -10531797, -8900783, 10536092, 1219234,
--13686450, 4524748, -12256763, 10929081, 3877282, -5223217, 360240, 3548180, 11371463, -8792335,
--12570296, 12708808, -8900246, -4991289, 6572911, 9605694, -17793512, -8673686, 10018011, 7544110,
-3844533, -882616, 1181116, -12691091, 4306242, 4291746, 6956237, -2199560, -13548474, -9728638,
-4696010, -11586211, -10256382, 4330401, -750546, 198105, 4167729, 9858024, -66035, -376347,
-9064528, 884763, -1572495, 1600412, -1332514, -1828582, 1883880, -2374580, -1786170, -4587562,
--4509179, -3124052, 720481, -2596845, -54761, 1893544, 1394254, -233539, -151934, 2021856,
--2413235, -3642669, 1003412, -102542, 3400004, -3358128, -1065689, -3810710, 4337917, 4700842,
-907312, -223875, -3000572, -1166621, -4177930, 354335, 549219, -2279017, 599148, 926639,
-884763, -1012002, 8381629, -12964359, -21272436, -17088064, 7670812, -20440286, -1042603, 15564961,
--1425929, 1154809, 11089069, -7355669, -6351720, 24713242, -9822590, 5811091, 9338870, -1705102,
--22418656, -1824287, 2309619, -5588290, -3149822, -5170067, 20822002, 235149, 187368, -993211,
--15083388, 2785823, -8705362, -4316979, 887448, 2546916, 4407174, 12152073, 2644089, -3092913,
-23800024, 2540473, -5945309, -21777632, -3229816, 16025597, -3518652, -9978820, -13466870, -11793443,
--10140418, -6324876, 16917340, 6621766, 929860, 9453223, 14127221, 7927973, -3132105, -2462627,
-14604499, -2869038, -4536559, 4277788, 11158325, 1617592, -11555073, 2667712, -1204738, -17187386,
--1342714, 13712220, -6824166, -7893076, -1967632, 18427020, -14693620, -2921115, -8216810, 8425115,
-4838818, 3911642, 5847598, -2399276, -3197603, 6248104, 4936528, 3455838, -1044751, 781684,
-3877282, -10805064, -2037962, 1428614, -5638755, 154619, 5876589, -588947, 1054415, -2316598,
--711354, 3249680, 4140349, 6278169, 3485366, -1043677, 2193118, -3579318, -4608500, 1315871,
--932008, -3713536, 4101694, 2205466, 3093987, 668941, 1480153, 3220152, 1744831, -927713,
--2336999, -604517, 1268089, 6979, 1285806, 268972, 1603097, 992137, 2768107, 354335,
--2732673, 5949604, 4836670, -4594005, -1590749, -2208150, -1572495, 2280091, -2792803, 1640141,
-17357574, 1746441, -15511274, -575526, 4643934, -564788, -7078643, 6723235, -5242008, 13795435,
--10634876, 9475235, 20720532, -5624797, -5542656, -4903779, -4335233, 18494666, -13743358, -15100031,
--11530913, 4177393, -6030134, -9732396, -4495757, 6623377, -9337259, 5117991, 1185948, 7231651,
-10748156, 1292785, -1416802, -2107218, 10588705, -2778307, 3712462, -13071196, -162672, -4684199,
-10315438, -13893145, 11318849, -4832375, -7191386, 11397769, 19779398, -11203422, 5585068, -2517925,
-3960497, -29841970, -23681912, -14385993, 1996086, -9150965, 3852586, 907312, -11141145, -8806294,
-882616, 23673322, 5515275, -14865419, -22204980, -11744051, -8254927, 14475114, -10176925, -14485314,
-3355980, 3084860, -13422847, -917512, -317828, -6691559, -1618666, -433792, -658204, 6437619,
-1503239, -7747048, -6905234, -3824132, -9910637, -5426155, 1519345, 10947872, 1745367, 1978369,
--3307662, -9149891, -1515050, 7326678, -467078, -4307852, 6704981, -10425496, -5195837, 1458141,
-1516660, -267362, 1023276, 630823, -3618510, -7333120, -2732136, 5420249, -3344169, -2676302,
--3030636, -6559489, -7286412, 2570538, -2711735, -1666447, -6881075, 1557999, 4265977, 5238250,
--386010, -3321084, -3914326, 3743064, 1171452, 3374234, 29998736, 19393924, -4978404, 1845762,
-19464254, -7742216, 812286, 8180839, 21060910, 12154757, -3492882, -4767414, -7078643, 1778117,
--3831111, 225486, 680215, 21925272, 36575404, -2225330, 25277494, 15781857, 3401077, 3855807,
--17759690, -17847736, -1870458, 4628364, -1130650, 4282083, -6534256, -13375602, -22293564, -2001455,
--14290430, -12284143, -7938710, -12710956, -8931384, -560493, 20996484, -722628, -15666967, -1388885,
-4656819, 15418933, -4704063, -3979287, -9292162, 6973417, -28214178, -25538412, -12110734, -12760348,
--13472776, -8309688, 9200357, -11505681, -15740518, -13406204, -23620172, 12161737, 6685117, -21161304,
-10994579, 21325050, 42012296, 23067732, -105764, 7623567, -23929948, -9870372, 13124346, 10946798,
--6014565, -16305306, 2277943, 3413425, 14972256, -1887638, -15053860, -2660195, 24415816, 15498389,
-17722108, 13975824, 24627880, 23050016, 7074348, 6278706, -5228049, -9661529, -2535105, -820876,
--8119099, -1611, -9408126, -7107634, 11274289, 4969814, -2856153, -9608379, -3511136, -1111860,
-15032, -10693395, 10877005, 186831, -8813273, 5433671, -5366562, -4596152, -1201517, 3411815,
-14946486, 7294465, 17849884, 144418, -3305514, 2090039, 6922951, 4571993, -2093797, 9405442,
-633508, -2929168, 1566589, 7805030, -3616363, -3175055, 3064459, -563178, 2764348, -30735322,
--3057480, 49740016, -3751117, 1918240, 12272869, -17998060, 10052908, 35306780, 32371168, -32686312,
--31549756, 107911, -34215320, -12798466, -155156, 4055523, 12341052, 18851686, 16429324, 29336774,
-6803765, 11626476, 11545946, -4818417, -2176475, 3303904, 3767223, 8753680, -15757161, 35243964,
-14985141, 16522739, -3136937, 35793184, 4348655, 21628918, 8837432, 6858526, -8468602, -5319854,
-18119930, 7128035, 8391829, -19031536, -10312216, -15867757, -9401147, -11502459, -108448, -23062364,
--25253870, -1330903, -9754944, -47398724, -35431868, -31897648, 9099425, 34802656, 44843216, -24641838,
-30909270, 48266304, 8181913, 4218195, -3088618, 33266670, 2507187, 30113626, 12869333, 14187351,
--19976966, -65906272, -52331492, -11652783, -1785096, 1568737, 2322504, 24588688, 23085450, 20265804,
--12514998, 1778117, -6531035, -33894808, 3447248, 2880313, 17131014, 2822331, 25192668, 22925998,
-5647345, 19965692, -8369818, 13576928, -11884175, -13212930, -4929549, 5486284, 21898964, -4756140,
--6155762, 3398393, -10821707, -5132486, 11091216, -2979097, 7667591, -13623636, 18796388, 5859409,
-200253, -1125818, 14459544, -3385508, 1017370, 2527588, -282394, 9990094, -7092602, -3459059,
--96100, 9608916, -14055280, 2044404, 5017059, -6694244, 1053341, 2728378, 1746978, -3176128,
-23669564, -4863514, -43943420, -3386582, 68867120, 13110925, -13361106, 18311056, -6111202, 12073690,
--5927055, -7070053, -23191750, -8140574, -2858838, -3377455, -11296301, 16825534, -15173046, -15465103,
--1459215, 2981244, 14150307, 6965900, 3632469, 6632503, -6280316, 569620, 21314312, -10627897,
--26176216, -4728759, 1917703, -8279087, 17686676, -8986145, -6420976, 15639050, 3929358, 11918534,
--27025544, -29609504, 9659381, -5355288, -10554882, -12426414, -16206522, -32648194, -233002, -2455648,
-10729365, -20742544, -44506060, 33549064, 8797167, 31562640, 3156801, -9590125, -9671729, 8549669,
--16941498, 26248692, 4833449, 31415538, 21311090, 46426448, -4844723, -43704512, -34622268, -19069118,
-25105694, 25976500, -19705846, 20718386, 39908300, -23250268, -3954591, 43672300, 6419903, 33647312,
--5236639, -16536698, -45283452, -17054778, 4764193, 29130616, 24717000, -14354854, 12256226, 12244415,
-23420994, 8611409, -23991688, -27582816, -11370926, 19772956, 40770512, -623844, -4052839, 21801254,
-10923712, 2357937, -3908957, -8592082, -11483132, -8560944, 6638409, 4707821, 12643310, -5055177,
--1900523, 1643899, 7483981, 10555956, -13420699, 629750, 14327474, -1273995, -4705674, -15947750,
-11449846, 367220, -7451232, -4628364, 16007343, -387621, -10980621, -5261335, 8462696, 643708,
--36536748, 37886980, 51390356, 8968429, 2338610, 11438572, -7833484, 22450330, 12558484, 23466090,
--4729833, -24713778, 55013164, 357019, -20640540, 2588792, 37217504, 17076254, 7330973, -23504208,
-2598455, -12553116, -9162776, 3752728, -17474074, 1551557, 4773320, 21211232, -29949344, -5028333,
--3532611, 17935784, -6719477, -10997264, -10477573, -48318, 11458436, -23240604, 1784022, 6251325,
--47659640, 6687801, -12851616, -33543158, 22218940, -24758876, -43531104, 57724896, -352724, 3457449,
--4446902, -15897285, 34862788, -24463596, -2209761, 5309117, -15766288, -1162862, 44038448, 22854594,
--38643968, -41789496, 41472204, -19595252, 24211804, 39855684, -35520992, -61179660, -42343544, 70968968,
--4089346, -55370180, 50883016, -36863168, -70312912, -955093, 60852172, -2467996, -72969880, -885837,
--24482924, 831076, 90236192, -13587666, -66230544, 9798431, 35434016, 923418, 41419592, 2581812,
-942745, -12884902, 1806571, 9634149, 33467458, -6779069, -8865349, 33203856, -4282620, 8074002,
-23255638, -3753802, -33530272, 22181896, 16064251, 25949656, -7843147, -377420, 9292162, -7180649,
--24636470, -10686416, 10372346, 1017370, -4728222, 32904818, -828929, -36074504, 8642548, 29953102,
-17371532, -12370043, 1791001, -14208289, -7912941, 36298380, 30371324, -7572028, -34454764, -10790568,
-14383845, 11898133, 9604621, -6208375, -23099408, -865973, -24871082, 37891276, -7846369, 11621108,
-23794656, 17420388, 17964774, 44548476, 18911278, -10712722, 6730751, 11111617, 14197551, -15897285,
-42395084, 40499932, 5330592, 14137422, -10142565, 150861, -43841952, 20200842, -23276038, 15704548,
--2044941, -15827491, 23347980, -9208410, -17883170, 9648644, -25143276, 16718697, 455803, -4531191,
-6628745, 10526965, 15209553, 16031502, 14818711, 45392436, -4669167, 5140002, 14055817, 30660160,
--3213173, 8316668, -99858, 24036248, 28048284, -8975945, 6601365, -1019518, -4801774, -51383916,
-3950833, 22255446, -12520367, -12380243, 11268920, -21254182, -32172526, 3117610, 18009334, 38408280,
--49146236, 19025632, -2651606, -1094680, 83752, 19444390, 40939628, 1018444, -30094298, 10233833,
-33207076, -17757006, -26481158, 2855080, 14508400, -13823352, 26284662, -4821638, 20182052, 2085744,
--20331838, 25210384, 19912542, 3731790, 15692200, -8564702, 9768903, -4499515, 5128191, 8486855,
-23964306, -4755066, -29228864, -3400004, 33697240, 2973191, -4365835, 30380452, 6200859, 233002,
-7157563, 21205864, 30906584, -19491636, 7578470, 4633196, -1529008, 15614354, -4478041, -22141094,
-7366943, 21922050, -9244380, 6040872, 7282117, -6551436, 8335995, -13902272, 10187662, 9636296,
--12530030, -26551488, 11501922, 15827491, -7144141, -9378598, 14322105, -610959, -8735427, -9632001,
-10185515, 5950141, 23521926, -44414256, -34582004, -641024, -53369264, -18355080, -19752554, 41069016,
--1199907, -15250892, 18901078, -9744207, 10467909, 2632815, -20392504, 24274082, -55030880, -5287642,
-3317325, -13827647, 10116259, 2377801, -10763725, -2041720, 1585380, 13771276, 799401, -16222091,
--53414896, -39026756, -29697014, -14851997, 33047626, -6811282, 1202591, -53562000, 3960497, -3840238,
--7286412, 1564979, -51726976, 27548994, -25139518, 12603582, -10321880, 35059820, -19270444, -34222300,
--16450798, -436476, 25467546, 46392628, 48831632, -60488172, -44716516, -30959734, 20734492, 49416284,
-59925532, -10624675, -15136002, -52979496, -19665044, 46845208, 28648506, -738734, -67109, -1298154,
--44707924, 29676614, -9048422, 28633474, 69687992, -78142632, 94392640, 26504244, -51270100, 14124000,
--102700720, -100463040, 73913704, 31380104, 7200513, 21873732, -38075420, -18445810, 68868728, -2833068,
-46279884, -4763119, -37398964, -12380243, 40865004, -13849122, -1014686, 13079786, -3406983, -24108726,
-13191455, -19618874, 8849780, 25898652, -27290222, 25501906, 8519605, -3684545, 9618042, -1813550,
--6237903, 4041027, -9553081, 4601521, -19424526, 16872242, 17725866, 3393024, 474594, -6197101,
-9024800, 3087545, 3531000, 8588861, 17034378, -21556440, -7330436, -20034412, -15219217, 1281511,
-631897, 16689706, -22185116, -17183090, -21386790, -13724568, -5844914, 31291522, -44745508, 37023156,
--22278532, 22789634, 11832098, 14405320, 8254391, -28432684, 31008054, -4572530, -11275900, -10168335,
--12492449, 9597104, -6632503, 13629005, 7927436, -1733556, -3411278, -23803246, 13706851, 5689758,
--6276021, 5348845, 12427488, -3548717, 6987375, -12085501, 14164265, -5304285, 1686848, 5847598,
-5937793, -6349036, 21917218, -839129, -20886962, -1357747, 9420474, 4735739, -16012712, 7727720,
-18328236, -3461744, -9120363, -8753143, -1360431, 5095442, -2385854, 21705690, -14743012, -5581847,
--5332202, -10895795, -1071594, -3321620, 7806103, 5759015, -9117679, -1347009, 8194798, -8766565,
--4658966, -2614025, 13269301, -8290898, 5607080, 9021579, -20939040, -8368207, 6513855, -21678848,
-32749662, 8805757, 10322954, 15190762, -9772124, -241592, -2992519, -14925548, 2856690, 4949413,
-11866995, -2363306, -5197448, 7343321, -7735236, -3102040, 7059316, 101469, -1912334, 6106907,
-1715839, -3867081, -317291, -4272419, 9460202, -9062381, 14428943, 669478, 3069828, -6054830,
--682900, -2189897, -4691715, -2375654, 3332895, 1776506, 4061965, -64961, -3561602, -2281165,
--11410117, 11416560, -9184788, 5181341, -2273112, 6673843, -3842922, -10511932, 588947, 5484673,
--8744017, 12977781, -10396505, 5687611, -4029216, 51434916, 6777459, -17522930, -13492640, -10230075,
--926102, -1729261, 1183800, -1476395, -1939715, -29199336, 682900, -5874979, -6678674, 3620121,
--11392401, -5267241, 5346161, -8052527, 2310693, 8959302, -12179454, 7621420, -4485020, -6564321,
--999654, -6565932, 3067144, -6100464, -3174518, -7174206, -1351304, -186294, -133144, -4341675,
--4395362, 1260573, 2353105, -5175973, 6924024, -8570070, -724239, -3467649, -1053878, -1675037,
--6710350, 9154186, 5692443, -9343164, 11295764, -1225139, 2429878, -5170604, 10838350, -10885058,
-837519, 849867, 2882997, -1864016, -2774012, 7991861, -5328981, 1122597, 452582, -1720134,
-2604898, -3588982, -463856, 4430259, -2243047, -2135673, 5130876, -2066953, -2207076, -4820564,
-2488934, 2246805, -10494753, 12514461, -7086159, 2771328, 886911, 95026, -4055523, 1662689,
-5197984, -3920768, -1930588, 2695629, -3855270, -328028, 3187940, -1387811, 1278290, 609349,
--2856153, 416612, 383863, 2494839, -4648765, 297427, -515396, -1925219, 1956895, -2382096,
-1129576, -1576790, -4070555, 2189897, -3528853, -2128156, 1315871, -2310693, 822486, 1955284,
-229781, -3185255, 3277597, -731218, -2018635, 2614561, -25311852, -40808096, 45587856, 153940752,
-15510738, 35470524, -83812528, -127807488, -32293322, -66685808, 51938504, 107368816, 56363928, 35893580,
--8152922, -41436772, -41041632, -30617212, -28708636, 10369125, 18151606, 10737955, 19548006, 2770254,
-1436667, 7938174, 2092723, 8989903, 6896107, -5080410, -19727322, -14324790, -17403208, -23146116,
--12449500, 13309567, 16827144, 31665720, 44355200, 16292422, 6305012, -14610942, -35401268, -33961916,
--23968064, -16374026, 3258270, 13308493, 18749142, 20313584, 16850230, 11624329, 1200980, -1168768,
--11339251, -7574175, -5077188, -5436355, -2315524, -6166500, -1953673, -7343857, -7470022, 2888366,
--719944, 9913321, 15884937, 9688372, 23689428, 21388400, -10335302, -20747376, -21086678, -31029528,
--8912594, -7337415, -1806571, 19376208, 16993574, -2848100, 14761266, 18743238, 6174016, 13148506,
--1291175, -14810658, -10987063, -25549686, -16323023, -5927055, -1723356, -1733556, 4519380, 12313134,
-19130322, 24458228, 20431696, 7028714, -11336566, -18204218, -17701170, -19444928, -8920110, -4823249,
--2145336, 4500052, 9558450, 7844758, 13418015, 7553774, 8776229, 8237748, -40802, -6533182,
--8851391, -10786810, -10867341, -9427453, -5194226, -5129265, 2955474, 5675263, 11014981, 16288663,
-15468862, 6079526, 993211, -8732205, -10902238, -12576201, -12862353, -3593277, -667867, -2312840,
-2954938, 10053982, 12829604, 6526740, 1337346, -562104, 106300, -2474975, -3004867, -4756677,
--3081639, -3589519, -2698850, -1492501, 6979, 150861, 2847563, 5741298, 5909338, 3084860,
-1373316, -1497870, -2365990, -3412889, -2589329, -2882460, -1435593, -1340030, -52076, 670552,
-2371896, 2166811, 2591476, 874026, 609349, -394063, -562641, -1258962, -447213, -590558,
-93416, -536871, -700617, -1874216, -93952, 217433, 1098438, 847182, 1804960, 550293,
-418222, -1115081, -427349, 282931, 1009317, -414464, -926639, -1939715, -679679, -47245,
-1105417, 333934, 458488, -354335, 437550, 180926, 964757, 359167, 608275, -461172,
--30602, -949188, -596464, -1083942, -207769, -437013, 479426, 171262, 1191317, 792958,
-948114, -140660, 126165, -692027, -127775, -828392, -420370, -726923, 266288, -111669,
-583042, 45634, 489089, -213675, 448824, -116501, 422517, -300111, 140123, -502511,
-136365, -368830, 285078, -274878, 301185, -293132, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
-3990025,
-6490770, 1706176, 5731097, 100395, -5911486, -4074850, -4305705, -668404, -2956548, 6933151,
--5183489, -1315871, -2353642, -827318, -4157528, 3999152, -2451353, -1918240, 3362960, 5578089,
-6310381, 973884, -451508, 1314797, 335544, 892816, -2854543, -3071439, 1504312, -2784750,
--2790118, -3737695, -3931506, 1202054, -2603287, 3482682, -4339528, -587874, 1917166, 1824824,
-1607928, -6729677, -1206886, -3731253, -647466, -1563905, -4104378, -80531, 4904853, 1496259,
-2384244, 2259153, 2653216, 342524, 3328063, 2096481, 3714610, -2094870, 2480881, -1213328,
-1715303, 202400, -3420942, 4012036, 4534949, -2421825, -3036005, 1343788, 4168266, 1000191,
-1117228, -1387274, -268435, 2265059, 1416266, 370978, -819265, 282931, 1911797, 2327872,
--275952, -3615289, -2211371, -1214402, -1537061, 846645, -340913, -324270, 1726040, -1263257,
--419833, -2147, 308164, -854699, -241592, 133144, -1367947, -153008, 1691143, -245350,
-896574, -1216550, 709743, 362925, -78920, -798327, -10161893, -2645700, -4594542, 3375308,
--9528385, 2101850, -4211753, -2196339, 1327145, 205085, 1040993, 1437740, 1049583, 4141422,
--1857573, 446677, -440234, -5005785, 3677029, 6197101, -5055714, -4709969, 3565360, 936840,
-4406637, 1417876, 5928129, -813359, 1980517, -3139084, -985695, 6082748, 459025, -3947075,
--4911295, -5264556, 196495, 4382478, 2191507, -16643, 4946192, 3976066, 128312, -4054449,
-6332393, 1635846, 4876936, 4998268, -900869, 3189013, 3725884, -443455, 2189897, 2584497,
--2502892, 522375, -796180, 2456721, -5617817, -3566434, 1774358, -3448322, -1363652, 4803384,
--1969779, 2644089, -1153736, -7510287, 1238561, -25233, 3922379, -6183679, -3362423, 2811593,
-677531, -584116, 1567126, -2908767, 817654, 755914, -925565, -1829656, 2501819, 2314451,
-1561758, 300111, -985695, 623307, -738734, -1104344, 801548, 727997, -1544041, 1101122,
--878321, -630823, 1326071, -966905, -2045478, -19327, -784905, -235149, -987843, -1036161,
-385473, -67646, 576063, 5369, 564788, -1471563, 393526, -421444, 6355478, 6758668,
-2939368, 5005248, 3867618, 6769406, 7664906, -2835752, -848256, 2611877, -7703561, -233002,
--2554432, -1440962, 3494493, -4446902, -544924, 5708012, 1028645, 3667902, -1823751, -1291711,
--1935420, -7197292, -1204738, 517007, 3798899, -1135482, 6553583, 2616709, -1155883, 2654827,
-1342714, 3405372, -2462627, -482647, 7656316, -999654, 7232725, 3431142, -3201898, 789200,
-6367289, 3353296, -4231617, 5850283, -1616518, 421981, 283468, -1146756, 1098438, 675384,
--5283347, 3387119, 2436320, -425739, 172336, -1146219, -4773856, 33823, 2655364, -515933,
--578747, -3173981, -7010997, -2375117, 2585570, 5898601, -8934069, -4726612, 1650878, -3863860,
-2268280, -152471, -57445, -5338645, -4088272, -2356863, -3500398, -1692754, 182536, 630823,
--1264331, 2049773, 1595044, 357556, 1469416, -1603633, -617402, 68183, -2415919, -498753,
-225486, -3022046, 1267552, 763430, -596464, 115964, 624918, 1491964, 153545, 233002,
-14496, -1458141, -198642, -423591, 1078037, 779537, 1479079, -1030255, -242129, 9422085,
-10018011, -2003065, -4195110, -4587025, 9605694, -8333847, 230318, -1360968, -3882651, -5276904,
-1878511, -1451162, -7183870, -8745090, 334471, -658741, -4566087, 1653026, 2426120, -3215857,
--4842039, -4520453, 6388227, -6894497, -831613, -8056822, 95563, 4485020, 1530082, 767725,
--4517232, -4345970, 3955128, -3052648, -4617090, 573915, -1679869, 2827162, 57445, 1142998,
--4604742, -1701344, -1298691, 4422743, 3031173, 3076270, -9118216, 1444183, 2541010, 2084670,
-2569464, -2597918, -1661616, 329639, 1846836, 3609920, -626528, 2386391, -2640331, 7043747,
--12773770, 4490925, 361851, -6791954, -294205, 7516193, -2275796, -3518652, -6851010, -2306398,
-529892, -1897839, -11274, 3085397, 3917010, 3280281, -974958, -536334, -4033511, -816581,
--1037772, -2022930, 551366, -818191, -805306, 1643362, -2044941, -936303, 1957968, -974958,
-1261110, -293668, -821413, -701153, -552977, -2942053, -1854352, 1291175, 1435056, -1392643,
--1144072, -945430, 1073205, -688805, -436476, -1150514, 742493, 812823, -1395328, 559956,
--212601, -1248762, -316754, -703838, 790811, -410169, 1185948, 1713155, -807454, -4472135,
--14133664, 2576444, -6442451, 1410897, 1185411, -819265, 10035728, 554588, -6413460, 8570070,
-4134980, 2943663, -1283122, 1777580, -2604361, 6721087, -1109712, 767725, 10126996, 9882183,
-4234301, 4527970, 4358855, 4922033, 3291019, -9758703, -3041911, -131533, -2559264, -8304856,
--907849, -1965484, -2187212, -4458713, -77846, -1305133, 7157563, -2288681, 12543452, -69793,
-1066226, -2317135, -1805497, 101469, -351114, -997506, -2181844, -1462973, -6132140, 1502165,
-1016834, -726386, -3164854, 4297115, 3188476, 3725884, -1292785, -2682744, 85899, 3248606,
-3522410, -2815351, -8009577, -4089346, 881542, 6699075, -908922, 5478768, -4328254, -6299107,
-4728759, -2196339, -5164698, 3022046, 3159485, -5797669, -4576288, -6380174, -2106682, -2189897,
-3689377, -1986959, 1136556, -397821, 2466922, 1527935, 1375463, -1193464, -663036, -3313031,
--1651415, -874026, -19327, 1490891, -263067, 116501, 2786897, 1095754, -113280, 44023,
-1799591, -1152662, 503585, 528818, -914828, 1088774, -807991, 723165, 576063, 806917,
--478352, -2049773, 2034741, 278099, -3428458, 5092758, -6049462, -6832219, 3344706, -2029372,
--456877, -3634079, -1912334, 3350075, 5012227, 2456721, -993748, 651761, -442919, -1216550,
--4510790, 1479079, -12396349, -3725884, -3847217, 3379603, 4453881, 279173, 2289218, -7889855,
-2287607, 1126355, 2279554, -7119445, 13459354, -674847, 2631741, 1671816, -6126234, 919660,
--8853001, 5719286, -1758252, -7616588, 1686848, 508417, -3619584, 343061, 992674, 5893769,
-10896332, 4578435, -2003065, 3409130, 4576288, -10049687, -3499862, -4639102, 2949569, 2221035,
--1488206, 1518271, 3649112, 2151779, 4651987, 8306467, 368830, -3177739, -684510, -419833,
-6749004, -4790499, 201327, 2970507, 9041980, -30065, -5720360, -5818607, -332323, -7132330,
--781684, 2614025, 11038066, 9285719, -909996, -5030481, 4181688, 230854, 1348083, 944893,
--195421, 1302986, -200253, -1440962, 1364189, 1490354, -1355062, 2115272, 2204392, 1902134,
--391379, -1675037, 1441498, 1684701, -109522, 447750, -1181116, 139586, -120259, 2477123,
-1103807, 1517197, 1401770, 320512, 996432, -89657, 1171989, 2206003, 650151, 859530,
-1803349, 2143189, -891743, -637803, 706522, 580894, 1851668, 2529736, -1135482, -12997108,
--3577708, -4811974, 5539434, 189515, -2709051, -16712791, -2237678, -2246268, 6891275, 16533477,
--4799089, 11101417, 1875827, -9798431, -10031433, 1721208, 2502355, -5704254, 6226629, -4514011,
-5009006, -6244346, 2971044, 2126546, -5959267, -5000953, -3843459, 1944547, 6428493, -8462696,
-268435, -8898098, -542777, -3400004, 2115272, 6452652, 631897, -2830384, -2530810, 6984154,
--73014, 10660109, 3230352, -4059818, -3932043, -3126199, 1475321, 6675453, -194884, 11084774,
--19854024, -14634027, -11872363, -2769180, -10136123, 617402, -3853123, 3546569, 8930311, 1575179,
-3659312, 5725729, 9454834, 4851703, 1392106, -6608344, -16452409, -17314624, 9201967, 580357,
-11698417, -8428873, -6100464, 5106179, -12198781, 190052, -4402342, -509491, -7893613, 255014,
-2538326, 7013145, 1204738, 1087701, -2328946, 2490544, -591095, 783832, 1898912, 3140158,
-4044249, -1179505, -1807644, 2937221, 1441498, -1206886, -2251637, 390842, -442382, -330176,
--1001264, 395674, -49929, -1249299, -483721, 1160715, 2144799, 1715303, 1446330, 725313,
--5109938, -2840584, -2007897, -1863479, 2611877, -497142, -920734, -57445, 680215, 117038,
--177704, 7740605, 3535832, -6360847, -64961, 14834817, 12774843, -1282048, -10847477, -18590230,
--2005213, -6600291, 6711424, -5651640, -5350456, -21040508, -8878771, -18858664, 7016366, -730144,
--4469987, 4876399, -559956, -4832, 1453310, -6135898, 626528, -7031399, -1133335, 4078072,
-3218004, -7171522, 2632278, 7074348, 11805254, -1895154, -1547799, -4020090, 756451, 5957657,
-8724152, -1364189, 1365263, -1986959, -1408212, 10161356, 7573638, 175020, 7808788, 2109366,
--9377524, 1658931, -867047, 12114492, 4870493, 1413044, 5993090, 7813620, 2270964, -7119445,
--11885785, -2894808, 2579128, 6288369, 3361349, 267362, 2588255, 9360344, 2172180, 2952790,
-4452808, 2418067, -6024229, -7036230, -5916855, -6953552, -6162205, 10415833, 1562294, 8010651,
--7092602, -6468221, -1143535, 6669548, -4192962, 3484292, 2156074, 938987, -3553012, -2450279,
--3278671, -2441152, -3747896, 1367947, 1296543, -1196685, 2570538, -1808718, 1243393, -824634,
-336081, 985695, -3316789, -2258616, -3329674, -2356327, -4070555, -1350767, -3367254, -1804960,
--1930051, -2772938, -118648, 2822331, 1027571, 1076426, -1023813, -464930, -327491, -887985,
-2377265, -1280437, -587337, -896574, 26119306, 5835787, -8172786, 4774393, -4795868, -15447387,
--3231963, -15152108, -8438000, 7981123, 10435160, 4156455, 2094333, 982474, 1880659, 10065793,
--7138773, 14202920, -9173513, -9192841, 11220065, 5095979, -18210662, 8044474, 4613869, 5857262,
-11961484, 6003291, 8897562, -512712, 4825396, -2754685, 7603166, 2089502, 1633698, 5167920,
--10234907, -5446019, -3128884, 6655589, 2873333, 2445984, 5242008, 1611150, 1877975, -9168681,
-122407, 10114111, -1767379, 1329292, 1300838, 1387811, 12024835, 4715337, 16165720, 3820374,
--2256469, 15429670, -13147432, -1614908, -2041720, -5163088, -1156957, 3315178, 15244450, 1562294,
--3175055, -5800890, 3193845, -6105296, -2602213, -3892314, -8265128, -1231045, 2282775, 13103945,
--1022739, -12454331, -3418794, -7435662, -3722663, 9181029, 7383586, 8606041, -6708739, 1506460,
--7471096, -1036161, -2493766, -4438849, -2480344, -6125160, -3565360, -1066763, -2600066, -8072391,
--3169686, -2244657, -1602560, -1749662, -2807298, 462783, -1319092, -6332930, -272730, -2996814,
--1798518, -439160, -21475, 1237488, -157840, 2989834, 2884071, 592169, 555661, -1964411,
--1759863, -383326, -2136209, 3054259, 1801202, 2872796, 2668785, 1225139, 3721589, 2535641,
-962073, 1806034, -468151, -1418950, 2639794, 3818763, -9434969, -14543833, -5251672, -14319958,
-10283225, -12218108, -8992588, -7195681, 6499896, 16383690, -16624208, -5901822, -18735722, 5366025,
-2614561, 1756642, -5382668, 1461363, 21092584, -11039677, -1853278, 7984881, 5455146, 4175245,
-7419556, 4938139, -6939594, -11729019, -2191507, -6498823, -8850317, -10829760, 172336, -2531883,
-2664490, 13932337, 8824547, -7836705, -4231080, -884226, -4045322, 3403762, 26508002, -9008157,
-18490908, 5782100, 3106872, -1223529, -2998961, 3115462, -10155450, 4846334, 14391899, 595390,
-2297808, 11504607, 7474317, 4442607, -9714679, 8107825, -5793911, -8670465, -23414552, -7385733,
-15209553, -8666707, 3941169, -16496969, 11790759, -6222871, -6495065, 10284299, -16430934, -12164958,
-18611168, -13283260, -12493523, 7450695, -8571144, 1716376, 28454, 5313412, -13477071, 4226248,
-352187, 13427678, -10004589, 3326452, -1421097, -7613367, 9962714, 2010045, -8293582, -6021544,
--5714454, 870268, -22012, -4181688, 111669, 5193689, -435939, 3679713, 4144644, 3285113,
--7467338, 4147328, 3804267, 5992016, -151398, 440234, -5429913, -2171106, -2672007, -2817499,
-1255741, -628139, 3475702, -4940823, -3114388, 1861332, -4777614, -4030827, -5089536, 1750199,
--10600516, -7868380, -1085553, 12059731, -5711233, 21181704, 19697256, 3893388, 6306086, -11421392,
-1414655, -9242770, 14790794, -2938831, 4358855, -7041599, -4569845, 2542621, 1998234, -6757594,
-11340861, -3178813, 2409477, 4258997, -7421704, 2842732, -9470403, 74088, 5398237, 6492917,
-159451, 8574365, 10782515, -768262, -20170778, -3356517, -5961415, 14489072, -12181601, -15103789,
--10793790, -7184944, 2116882, -8534100, -6726993, -4267587, -1224603, 2714956, -29563334, 18738942,
-14583561, 21358336, -6747394, 3484292, 14295799, -13574781, -12614319, 2573222, 9352828, 6200859,
--1575179, 2952253, -7441568, -8826158, -11335492, -3258807, 39383240, 3247532, -21767968, -3816079,
--11906723, 7592966, 5925445, -13429826, 2943663, -4057670, 1166084, -6577206, 8469676, 8678518,
--1224603, -4256313, -5105643, -17032230, 5224291, 2868501, -627065, 7185481, -3353296, 1242319,
-2816425, -8015483, 3187403, 4973572, 11303280, 6088116, 779537, -9538585, 151934, 8934606,
-601295, 122407, 6681359, 262530, 2343442, 6626598, 5601711, -876173, 3112241, 5633387,
-5183489, -2292439, 2327872, 6742025, 8204998, 6122476, -71404, -4111894, -861141, 331786,
-5184026, 132607, -1341104, 491237, 1977296, -3027415, 1990717, 3304441, -2975876, 2172717,
--7428683, -783295, -5305895, -11642583, -21354040, 1371705, -17777944, 8165270, 3303904, -15001247,
-8617315, 9094056, 13593571, 3432216, 5596343, -15559056, 60666, -3419331, 14488535, 6176163,
-984084, 12808666, 15075872, -2172717, -6692096, 1279363, 18503256, -12221866, -9010305, 8945343,
-5457830, -12429635, -2323041, -11534135, 21103322, -18130668, 5258114, 10624675, -6347962, 9729175,
-3985193, -5485210, -5058398, -5874442, -8133058, 11192685, 15976741, 2694018, -11700028, 811749,
--12958453, -5494874, 8935679, -2084133, -6293201, -5287105, 2505040, -18097382, 816044, -2304787,
--9898826, 13324599, -13300440, -1376537, -2863670, -10505490, 10898480, -1309428, 6409165, -5577015,
--801548, -1076426, -6191196, 4477504, -5689221, -1578937, -5600638, 15455977, 7078643, -19412178,
--3933653, -31675920, 18219252, -541703, -13848585, 12112345, 1567126, 1372242, 4811974, -273804,
-7422777, 8332774, 2183991, -2794950, 5052492, 8992051, -5246840, -3856881, 4032438, 862752,
-2513630, 2282775, 4988068, 5953899, -4058744, 2858301, 2210298, -5637682, -4519380, 3583077,
-1015223, -1058173, -3264712, -3637837, -5431523, 4996658, 5862094, 423054, -3580929, -12309913,
-403190, 513249, 3981435, -8111583, 980863, 5418101, -3126736, 6350646, 3273302, -1027034,
-2068027, 3183645, 478352, 783295, 2234994, 4030827, -3915937, -839666, -2222109, 1087701,
-18823768, 913754, -14681272, -6030134, 8354249, 14049912, 14648523, 727997, -3695819, 21070572,
-8878771, 23396834, 2614561, 2158758, -11394011, -4412005, -6846715, 6379637, 3136937, 12738336,
--14607721, 1159641, -8788040, 7884486, -12696460, 4921496, 13575855, -1895691, -653372, -7034083,
-1717987, -7081864, -25035902, 3583613, -4056060, 1901060, -11322608, -2259153, 9432285, 18895172,
--2193655, -6626598, 10644003, 5294084, 2403571, 13058311, 4234301, -6712497, -3544959, 8489003,
--1400159, 7762080, -9319542, -7913477, 2549063, -7427072, -14797773, -6557342, -16819092, -3534221,
-5330592, -12851079, -2120103, -14785425, -6789270, 55835, 5630166, -17652852, 7543573, 1484985,
--10850161, 13437879, -4983773, 3678103, 23278722, 26803818, 1459752, 9529996, 19229642, 23461796,
-22870700, -2119566, -15675557, -23475754, -8850317, -15510738, 14537927, -3028489, -7242389, 3944928,
--645856, 1772211, -545461, -6849399, 7250442, 2278480, 2550137, 699543, 9892920, -5534602,
--380105, -2971044, 6777459, -6394133, -3060701, -545461, 9758703, -2467996, 5784247, 8424578,
--7875897, -1481227, -3489661, -8456791, -3757560, -1829119, 3431142, 438624, 11464878, 3329674,
-7665443, -616328, -7856032, 2252710, 1815161, 78920, 31988916, 36668820, 1926293, 11732777,
-11247982, -1569811, -26395796, -725850, -1065152, -10040560, 7435662, 6869264, -14376866, 7789997,
-10045392, 1620813, -3839164, 5419712, -3685082, 18634790, -3226057, -8802535, 100932, 4182761,
--1781875, -1300838, -359167, -29861296, 8575439, -757525, -20603494, -8617852, 3533148, -2024003,
--14051522, 4778151, -16579648, -1594507, 1597191, -26665842, -4782983, 11293617, -8558259, 1128503,
-16724066, 10156524, 12785044, 3873524, -7252589, -12527883, 12722230, -6709813, 7111392, -11916387,
--6192806, 8334921, 14289893, 1965484, 17124034, -11641509, 14809047, -12705587, -15169288, -10952703,
-14758044, 15341086, -14346801, 7256347, -39549132, -3762928, 11573863, 3517041, -6240588, -15906411,
-7210713, -22419192, 3549791, -11641509, 10511396, -17358110, -11009612, 17063368, 346282, 8489003,
-1916629, 7373922, -3920768, 2939368, -1996086, -13065291, -2374580, -6194954, 3965866, -4343823,
-2245731, 320512, 2099165, 839129, -2881923, -4115116, 501437, -8358543, 2865280, 2108829,
-4639102, -5436355, 4607426, 4112968, 2810519, 3503083, 2698313, -5837398, 551903, 2496450,
--4185446, 7262790, -717260, -3147674, -4327717, -287226, 630823, 3315178, -2767033, 3124589,
--2673080, 7617662, 3432216, -6923488, -1762547, -1938104, -3163244, -3093450, -6977711, -29153702,
-2304787, 35713728, -24088860, -2441689, -1934883, 1745367, -9429064, 4420595, -15134928, -15830713,
--5002563, -4440996, 3955665, -4103305, 8330626, -11907260, 554588, 22916334, -18748070, -16852378,
--3883187, 20033874, 2985539, -25446070, 10928007, -9542344, -10654203, 2353105, 34917548, -19713364,
--10741713, 24583320, 18485002, 1435056, -10075993, 520228, -3649649, -8017094, 7235410, 6304475,
--4059281, -20208894, 25839060, 11906186, 5012764, -27453968, -4028679, 8323110, 9594420, -3552475,
-14502494, -2473901, 5029407, -6415608, -16295106, 10558103, -11586211, 6881612, 3795141, -14565308,
-27358942, 4029753, 19742354, 19494320, 3649112, -29719026, -5528697, 124554, -11598022, -6111739,
-1262184, -1099512, 12984223, 23979876, -6831683, -2517388, -10508174, -4913980, 10171019, -6925635,
-5969468, 17790292, -15549929, 17682380, -3365107, 5205501, -6644852, -3792993, -5558225, 615791,
-3466039, 3782256, -2851858, -57445, 4202089, 2164664, 9558450, 4271345, -4634807, 250719,
-981937, 8449811, -4648765, 2350958, 4088809, 1190243, -224949, 152471, -11112691, 5363341,
--4027606, 5248987, 7137162, 797253, -1044751, 3433290, -281320, 2594697, 1013612, -1313723,
--4068408, -4358855, 8433705, 1288490, -1896228, 2207613, -5153961, -1118839, 8573292, 11231339,
-1503775, -10260140, -51596516, 3425773, -13478144, 1816234, 25801480, 2504503, -5000416, 4741644,
-978716, -17479444, -18920404, -16994112, -16362752, 21306260, -4276714, 25422986, 2238752, -23954106,
--857920, 2677375, 20534776, 4077535, -3335579, -4054986, 5855651, -12887586, -4962835, 22755274,
--4647692, -29487098, -22557706, 13498545, -2944200, -6109054, 6771016, -2092723, -15218143, 4608500,
-8918500, 20486994, -4135517, -16965658, 220654, -21404506, 8232379, 24275692, -3893925, -29750164,
-9361418, -322659, 1664300, 7193534, -9387188, 18337900, 1365263, -12344810, 9601936, -6677601,
--4146254, 26193394, -13420699, -4490389, -4412005, 16506633, 6619082, -28947542, 14681809, -23325968,
--5578626, -12582107, 2998961, -7670812, -7087233, -2402497, 13288629, -4315906, -8207146, 15744813,
--9188546, 16161962, -96637, -8531416, -5148592, 4023311, 4436165, 3205656, -9722732, -3211025,
-2376191, -541703, -6364068, 143881, 5983427, 9225053, 3833795, 4745939, 743566, 9067213,
--5142687, 2944737, 7161321, -2724620, 891206, 2922725, -1801202, 1429150, 2831994, -8886824,
-7497403, 3195456, -8946417, -7330973, 512175, -10519449, 908922, -7754027, 10028749, -18149994,
--45097, -3845070, 1905892, -4728222, 5658620, -3029563, 2634426, 2026151, -3741454, 816581,
--25115896, 5081483, 41649372, 27008902, 12453795, -20714628, 15521475, 19465866, 28983514, 13884019,
-3473018, 936840, 18173618, 31188978, -7010997, -3907347, 17761300, -35121560, 12788802, 31145492,
--6438693, -10927471, 8149164, 24154896, 19575924, -13173202, -22348326, -1427003, 11289322, -3906273,
-2740726, 244813, 26276074, -15107547, 16840566, 25274272, -10142028, -3192771, 17945984, -2810519,
-62878320, -26487064, 11333345, 42899208, -24764782, 7991324, 2890513, -35014184, -1073742, 6380174,
--15377057, 33986612, 2586107, -4821638, 2656974, -14329085, 46782396, 12765180, -37497748, 36042292,
--15126338, 1202054, 11097122, 13296682, 24004036, 11564736, -6496138, -23584740, -31542776, -11984569,
--12652974, -2316061, -9691594, 19672560, -12074227, -21056614, 2321967, 5617281, 4238596, 7452305,
--11850889, -11694659, -7019587, -7794292, -24879134, -10676215, -8485782, -17345226, -8276939, 5967320,
--7326678, -16283832, -796180, 6072547, 10788421, -2739116, 5061082, 11581379, -704912, -8196945,
--524523, -5055714, 6526740, 9182640, -13203803, 11374147, -6856916, -75699, 1708323, -6339372,
-12143483, 4469451, -17137456, 10294500, 1563905, -6318971, 12598750, -14621142, 5732708, -2942053,
-6140730, -3686693, -4031901, 2135136, -2385318, -1728188, 4412542, -2876018, -9834938, 4268124,
--943282, 2702608, -460098, 7910793, -4518843, 10077067, -48168060, 27967216, 1482838, 16822314,
-28275918, -46601468, 10806675, 23665270, 5608691, 17605070, -17666812, 19401978, 5917928, -18395882,
-467078, -11671037, -33773476, 18435610, 10778220, 30854508, -16989816, -22963042, -7763691, 7080254,
--4540854, -38720740, -18820546, 11635603, -2689187, 5558762, -16074452, -5242545, 12994960, -11060615,
--5242545, -16644609, -3673808, 5789616, -18044768, 1722282, -39620000, -32942400, 10291279, -34258268,
-3132642, -35831300, -24816322, -17385490, 16927540, 33075006, 41113576, -9882183, 18356690, 22017076,
-10904385, 9443022, -15743203, 45414448, 46631532, -31768262, 31827856, -25029996, 16086263, 32539746,
-31214748, 37734508, 45349484, 31899258, -35837744, -25702694, -128849, 747861, 13743358, -8714489,
--6777996, -21700322, -11811697, -32119912, 7164006, 26717380, -10709501, 6449967, 28170154, 13082470,
--19063750, 21415244, -1190780, 7494718, -1971927, -3923453, 6353331, -6892349, 9669582, 7940321,
--7016903, -8759049, 8362302, -6001143, 423054, 157303, -545998, 2252710, 945430, -11621645,
-10861435, -4984310, 5259725, 6076842, -4152697, 6554120, -8106214, -6119792, 5581310, -6688338,
--8378408, -3837553, 3502009, -3409667, 2222109, -7765838, 386010, 2756295, 7190849, 10536092,
--2408403, 5907191, -6914361, -61740, -1199907, 3149822, 2548526, -696858, -5332739, -7654706,
--1719061, 1583232, 59855736, -43806520, -22310744, 23627688, -14063334, 22574348, -17590038, -19587198,
-6614787, -46321224, -2102387, 31189516, -7525857, 16045998, -26584774, -6502581, -10495826, 1090385,
-33244658, 10089415, 7392713, -5893769, 18253612, 5912023, 45426796, 11216844, 26527328, 1934346,
--20720532, -19558744, 26444114, -12800613, 12239046, -202400, -34088620, 24647744, -30368104, 59077276,
--43972948, 26917634, 24068996, -25196962, -21205328, -15617575, 21824340, -1597191, 22840100, -217433,
-3007014, -40284644, -21654688, 9465034, -19802484, 6644852, -12060805, 11933567, 6769942, 31076772,
--18380850, -6260989, -7815230, -15108621, 42066520, 7867307, 4000225, -39049844, -12632036, 21144660,
-12473122, 13503914, 36450852, 23395224, 32240708, 37250788, -1030792, 16556025, -15396384, 49520972,
-3776350, -8047695, 18066244, -4109210, 37982544, 803696, -7573101, -7714298, 4608500, 26786100,
--20157892, 13900662, -6368363, -2062658, 7983808, 5432060, 10452877, -6387153, 6832756, 12582644,
--3192235, -4600984, 8508330, -1236951, -1241246, -811749, 2348273, 1517734, 4140349, -8909373,
-11946988, -6848326, -3785477, -1771674, 7341173, -10095858, 1123671, -7181186, 10008348, 18115636,
--5921150, -4817880, -2296197, 12491912, 6161668, 13043816, -940061, -7330973, 5992016, 6351183,
--1744294, 6295349, 4891968, -17339856, 2822867, 20202452, -2569464, -9381819, -90555624, 63006096,
--39123392, -27054536, 505732, 13085692, 16056735, 3117073, -14629732, 49086108, 24639154, 7021735,
--24630026, 16230145, -987306, 18423800, -23528368, -15963320, 12351252, 36740760, -42074572, 1902134,
-13424994, 4642323, -10477573, -6014565, -5443871, 1867237, -2296197, 9648107, 45913736, 3151432,
--20999706, 31172872, -7412040, -29780766, -38834556, 36990944, 11855720, -4938139, 13523778, 8684961,
-30436822, -41394896, -4600984, -20970714, -6207302, 23929948, -17724256, 9426379, -20410758, 9913858,
-63308892, 4968741, -36581312, -40655088, -2747169, 19594178, 18846316, -16209743, 3712462, 31061740,
--13225278, -59706488, 33872260, -20497732, -34300684, 15078020, 56489020, -39085276, 28323698, 39699992,
-13361643, -34152508, -28898688, -17497696, 13977434, 12493523, -12140799, 35634808, 17035988, -2115272,
--1323387, 2245731, -29962766, -11215233, -21301428, 10913512, 9265318, 7158637, 9358734, 7378217,
-21533356, -10831908, -5659693, 4283693, -243203, -16786342, 14246943, -556735, 8806830, -4138201,
-6551436, -10788958, -3663070, -6480032, 9940702, 2019708, 1780264, 355409, 5850283, 16098611,
--6680285, -30559766, 2173790, -15065672, -3292093, 9192841, -13297219, -8385387, 17052094, -16238734,
--3970697, 159988, 8000987, -17396766, 886911, 51881056, 17078400, 3438658, -3800509, 8222715,
-14602352, -4653597, 6814503, -7860864, -69793, -6213744, 24371792, -27349814, -3067144, 16341814,
--37976636, 12285754, -9263171, 2855080, -4440460, -10639708, 6797323, -2946348, -15461345, 41605884,
--31753230, -8949101, 29557428, -18953154, -2886755, -5988795, 6513318, 29217052, 2288144, -28536836,
-39106216, -21139292, 13945222, 24340116, 10870562, -9120900, 2176475, -21499532, 5268851, -13032005,
--10209674, 52329344, -12145631, -20900922, 6842957, -9778030, 12456479, -8168491, 13675713, 33658048,
--18502720, 11120207, 25760676, -30289720, 13885092, 16430397, 7556458, 20572894, -23463944, -6224482,
-36018668, -24877524, -5452461, 10242423, -10050223, 34304976, -34092912, 5763309, 12319577, -15799574,
-11983496, 13089450, -32468342, 11528229, 27710056, -336618, -8313446, -1344325, 17828946, -3718368,
--30491046, 24762634, 11771968, -13440563, 5092221, -7423314, 11009075, -4327717, -13645648, 16037945,
-900333, -3533148, -11864847, 11134166, 2124935, -15852724, 5657546, 10567767, -2188823, -5210869,
-2317135, 9766756, -1450088, -10211822, 10406169, 6777996, 1270237, -548682, 8699456, 1642288,
-3050501, -12132746, 15373299, -8501888, 16394964, -10829760, -29272350, -79017200, -124175024, 11244761,
-118921200, 9714142, 269223584, 277875808, 138346272, 290901344, 194031056, -40325984, -4212289, -64085208,
--233616688, -205110992, -126789584, -238713216, -186827312, -54391464, -117102824, -98085240, 34651260, 58589796,
--28486370, 15241765, 52328808, -40500468, -23728620, 73723648, 65488052, 7392176, 73199128, 124958856,
-41676752, 90340344, 171029360, 82029040, 43244416, 153177856, 128028680, 16895328, 91884384, 179509776,
-35380328, 42089604, 144956224, 62307092, -15951509, 102373232, 96621728, -9345312, 85252416, 110114912,
--2163590, -81248432, -38059316, -190421136, -314287456, -279601824, -298102944, -455097952, -408842784, -382656896,
--465287232, -452123680, -371037920, -334665984, -301154528, -174696720, -67630704, 58051316, 124479424, 239014400,
-356793664, 389540640, 434030592, 566548608, 559120448, 439674720, 481080352, 425180288, 175382848, 191153968,
-162276752, -8012799, -27868970, 46160160, -7788923, -74445744, 8225936, 47942036, -48818208, -20209968,
-42142756, -24434606, -94445256, -32204202, -26680336, -136161200, -96990024, -27353572, -107255536, -121290952,
--10044318, -44222056, -122783992, -60032904, -56684980, -172022560, -163262448, -148197840, -265502000, -286903808,
--239680656, -255543568, -275618784, -198210064, -169496048, -147489184, -107604504, -59253368, -28294170, -9793062,
-19046570, 90465432, 124541168, 193751344, 317908640, 359896800, 398432832, 465948128, 455149504, 400463840,
-340593056, 237868176, 100573640, 22897008, -27807228, -80320184, -93940064, -92386896, -93635656, -95720864,
--89842128, -81698328, -87977576, -89980640, -85673320, -91633128, -100242392, -95832528, -92408368, -90067072,
--79397304, -60669096, -45656040, -30153354, -9175661, 6481106, 13610214, 18625662, 19735912, 16254841,
-14357002, 10757819, 2500208, -4358855, -10530186, -18099530, -20423644, -20269024, -22377854, -21937620,
--18388902, -17877264, -15977278, -10517838, -10438918, -11436961, -6577743, -4523138, -6694244, -2720862,
--1421634, -3080565, 4247723, 11662984, 14088030, 21960704, 30303142, 34162708, 39686036, 45851996,
-46901580, 46369540, 48393008, 48171280, 45485852, 42730092, 38726648, 32052268, 25676926, 21016886,
-14746233, 8097624, 1962800, -5575405, -14497125, -21969294, -29196650, -34973920, -40098352, -43163348,
--43328168, -41832980, -37799472, -30536680, -23768886, -17652316, -12147241, -7795903, -6109054, -4038880,
--2404108, -1554778, -1009317, 251792, 747861, 1286880, 1642288, 2337536, 2318746, 2529199,
-2358474, 2331630, 1730335, 1425392, 785442, 409096, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
-1612223,
-6466610, -3228742, 1795296, -682900, 381178, 286689, -2597382, -2976949, 1945083, -557809,
--2367601, -3052648, -1862405, 2657511, -272194, 3572339, 760746, -4572530, -4698694, -3358128,
-1378685, 1145146, 2444373, -382252, 2796561, -2152316, -389768, -4944581, -752693, -937377,
-1021665, 1834488, 1864016, 3619584, -1807644, -2455111, 1972464, 1091995, -2371896, -2442226,
-116501, 1673427, 813896, 4020626, -1534914, -1300301, 4581120, 1379758, 8586176, 3628711,
--2408940, -103079, -5284421, 78383, -6023692, -418222, -2253784, 4140885, 438624, 2212982,
-3047279, 1628330, 2921652, 1922535, 413391, -5075578, -563714, -2554969, 3482145, 5063230,
--3569655, -2561948, -1536525, -2081985, -2694555, -4355634, -986232, 1275605, -2556579, -2135136,
--902480, -3585761, 410706, -740882, -2407329, 743566, 125628, -39192, -1187022, 186831,
-221191, 1298691, -370978, 828929, -442382, 592169, -175020, -826781, 215822, 1013612,
-172872, -960462, -963146, -126165, 1770600, 383326, -346282, 257698, -524523, -600759,
--10133975, -10829223, -862752, -3104188, 414464, -2347737, -640487, 6029597, -1079647, 3242700,
--1491427, -2894808, -4006131, 737661, -830002, -4779762, 5510980, 1658394, 376883, 2940979,
-2801929, 4547834, 3200288, -299574, -3384434, 3160022, 733903, -4558034, -2016487, -2054605,
--1367947, 4078072, -1398012, -6951405, -2356863, -793495, 1450625, -2159832, -4525822, 149250,
--442919, 5257577, 777389, -40802, 1918777, -119185, 7090991, -1222455, 651761, -1566589,
--2814814, 3758, 3045132, 1377611, 830539, 2878702, -2641405, -4399657, -3148211, -633508,
-578747, -1027034, 125628, -3302830, -731218, 1730335, -1053878, 3444564, 1797981, -195421,
-639413, -3231426, -2750927, 5344550, 1214939, 2275796, 1551557, -952409, -313533, -4063039,
-287226, -2322504, 998043, -794032, 1035087, 1098975, 3144990, -330176, -1097364, 181999,
-674847, 417149, 114890, 106837, -945430, -750546, 383863, -347892, -813896, 1271847,
--643708, 649614, 974958, -927176, -271120, 727997, -274878, 1309965, -789737, 645856,
--628139, -468688, -1643899, 1539746, 6983080, -362925, 3574487, 2136746, 4774930, 5900748,
--1351841, 507343, 3607773, 3600793, 2382096, 6752226, 1357210, -2172180, 287763, 5913633,
-2068564, 2807835, 5101885, 6892349, 4528506, -1527935, -4701916, 3339874, 2258616, -2689723,
--4538707, 276489, -2647847, 1240172, 1745367, -1627793, -2259690, 2313914, 1813013, 4084514,
--2702608, -5495948, -2762201, -2361695, -3673271, -1248225, -4196720, 2551748, -5748277, 2505577,
-506269, 1362042, -2545305, 5532992, 4214974, -3860639, 4854387, 1848447, -694711, 1623498,
--3482145, -1088774, 3330210, 1207423, 1410897, 898722, 3975529, 1633698, 4910222, -2362769,
--264677, -281857, 1926830, 2863670, -1093606, 1918240, -2528125, 1334661, 1751273, 1582159,
-5395016, 239981, 4036733, 4522601, 2556043, -4036196, -740882, -590021, -1022739, 411780,
-2316061, -892279, 119185, -118112, 309775, 877247, -614180, 1023813, 1618129, -1037772,
--529355, 1547262, 108985, 75699, -16643, -784368, 432718, -346282, 184684, 1220308,
-1947768, 152471, -189515, 1023813, 796716, 374736, 506806, 441845, 533650, 10201,
--187368, 920734, 1097364, -859530, 615254, -251792, 892279, 1095754, 162135, 274341,
-1155346, 66035, 23085, -146566, 545461, 19514184, 16643, 17294760, 1235877, 11005317,
--2477123, -1729261, 2830384, -7968238, 8720931, -4900558, 5803575, 4524211, -3387119, 2726767,
--380105, 466004, -1640678, 2602213, 3361886, 4479114, 7020124, 1880122, 2144799, -147103,
-8281234, -9541807, 95563, -610959, 2181844, 4232691, -5227512, 2073396, 2158221, 1306207,
-3229816, 1945620, -4066260, 1991791, 7397545, -1293859, 2167348, -1155346, -1311576, -245887,
--5551245, 8457327, -268972, 921807, 6101538, -769873, 342524, 7846369, -11497091, 3219078,
--352187, 3497177, 9052717, 2839510, 2083059, 3279745, -1135482, -2478733, -1878511, 2335389,
-700617, 5021354, -1924145, 4140349, 1753957, -1303523, 695248, -3167539, -2243047, 505196,
--1088774, -4405563, -2983929, -4510790, 2574833, 4112968, -1227287, 1311039, -1086627, -2982855,
--264141, 1734630, 1552631, -5404143, -360240, 562641, -972810, 360240, -1257352, 161061,
--1341640, -2580739, -183610, -1693291, -1533840, -2127620, -37044, -2080912, -790811, -2018635,
--1700807, -24159, -877247, -1056562, -249108, 317291, 867583, -1066226, -112743, 385473,
--7794292, -9462887, -3825742, -1376537, -3612604, 7668127, 3205119, -6025839, 6728603, -896038,
--4990215, 1529545, 2904472, -2698313, -4563403, -4014721, -8633958, -4281009, 3663607, -5389647,
--8765491, 2514167, 3485366, 756988, -3251827, 6591164, 765578, 6098317, -420370, -1335735,
-3411278, 5781026, -8182450, -3824132, 2180233, -1771137, 1957431, -5270999, -425202, 1490354,
-1893007, -4490925, -8305930, -2275259, 2378875, -1346472, -1076426, 555661, 2641405, -765041,
-1452773, -2733747, 4766340, -6243272, -4737886, -1593433, -4641249, -1329829, -1274532, 1891396,
--3410741, 2610266, 5182952, -397821, 1198833, 1457605, 2475512, 5140539, -1956358, -922881,
--985695, -2056753, 5275294, -2099702, -9240622, -5834713, -3913789, 8914205, 137976, 5137318,
-2317672, 824097, 1359894, -558883, -209917, 4320200, -1428077, -917512, 1372779, -692564,
-679142, -1855963, -1165010, 1032403, -263067, 1130650, -279173, 690416, 1597728, 1203665,
-1494649, 65498, 1041530, -175020, 1533840, 1738388, 2735357, 1767379, 2172717, 571768,
-1452773, 1302449, 904091, 1353452, 1804960, -754841, 148713, -292058, -755914, 803696,
-1073205, -2150705, -8431558, -19400368, -1874753, 1404991, 147640, -6252936, -2855080, -7105487,
--1908039, -8392366, -9736691, -7508140, -1817308, -4958003, -10966662, -6773701, 2191507, 3419868,
--3078955, 6604049, 3561602, -2383170, 8019778, 1774358, 598611, 1341104, -11142219, -368293,
-1771674, 4206384, -3553549, -3047279, 6521908, 12868796, -9678172, 3487514, -2902324, -464930,
--8541079, -716186, -176094, -4288525, -5556614, -3950833, -4740570, -2455648, 2685965, 9446781,
--4487704, 3555696, 6280853, 5784247, -2034741, 671089, -2153389, -1813013, -8779450, -4285304,
-4830765, -3119220, 974421, -2978560, 2386391, 1328756, -1056025, -319438, -4152697, -3335579,
-661425, -1200980, 1682554, -10275709, -10978473, -1167157, -1694902, -4670240, -130997, 3449933,
--5453535, -4116189, -4667556, -7915625, 5485747, -578210, -1296543, 2142652, -421444, 1920387,
-3578245, 1272384, 1937030, 1162862, 2596308, -823560, 370441, 426276, 501437, 883153,
--825707, -689342, 32212, 819802, 928787, -687732, 738734, -993748, -1983201, 990527,
-608812, -758599, 2304787, 1076963, 35970, 912681, -1600949, -1619203, -547071, -872952,
--794569, -2159295, -448824, -1709397, -12221329, -2243047, -14688251, -3126736, -10445360, -1095217,
-1808181, 2760053, 11057393, -6847789, 2369211, 3156264, -6205691, -2606508, 8870718, 1089848,
--2763275, 1265405, -7548405, 6862821, -9634685, -3004867, 4104378, 2770254, -1121523, 1756105,
--2009508, 3245385, -4187593, -7004555, 354335, 3585761, 2694018, -5575942, 1450625, 6547678,
--6729677, -8230231, 6533182, -5571110, 4219269, -3973382, 2295660, -38118, -6066642, -7591892,
--4888210, 2233920, -441308, 3014530, -4166655, -3805341, -9990631, 5268315, -7198902, -3101503,
-3704946, 8876624, -1268089, -1687385, -13036836, -10038949, -3521873, -3496640, 4719096, -1247688,
--7693360, -1085016, 265214, -4078608, -1167694, -8904004, 5883032, 2464238, 7453916, 9392020,
-4750234, 504122, 3902515, 8390755, -821949, -1782411, -699543, -2405182, -8351564, 580357,
-473520, 1892470, 4269198, -1668595, 839666, 117038, -3366181, -1629403, 2872260, 3011846,
-2602213, -1985886, 691490, 1258425, 910533, 1131187, 1070521, 515396, 2154463, 2391223,
-1414118, -343061, 922344, -271120, 773094, 1757715, 450972, 778463, -91268, -449361,
--643708, 83752, -1557463, -545998, 1469953, 7139310, 3801583, 20806970, 10125385, 13468481,
--4136054, -548145, -181999, -20591146, 1123134, 8853001, -4029216, -1614908, 752156, 12947716,
--2150168, 7495255, -1490891, 7179038, 4000762, 8870718, 12538083, 1594507, 8389145, -2593087,
-7268696, -987306, 13418552, 7102802, -170188, 7597261, 6196027, -2258079, 5919002, 3522410,
-5119601, -4006131, -3150359, -10806675, -601295, 7655243, 1534914, 972273, -2451890, -4042101,
--3162170, -3563212, 18873696, -12097312, 4861366, 5715528, 3307125, 1627793, -7153268, -9600326,
--2388539, -1427540, -376883, -16634945, -8184060, -8548596, 478889, -387621, 5018133, -540092,
-4466766, 5904507, 10728828, 1964411, -2671470, 3592740, -6634651, 1843078, -4846334, 1801739,
-4198331, 2340757, 6864432, -4575751, -5134634, 24427090, 3420942, 4440460, 3167002, 8296803,
--5788542, -3024731, 5295158, -597000, -64961, 969052, 1795296, 4795331, -2297808, -356482,
-981937, 2764348, 708133, -2516314, 4715337, 180389, -1015760, 114354, -457414, -2474438,
--2245731, -1081258, -2506114, 1074, -933619, 1135482, 3402688, -300648, -245350, -3650185,
--689342, 1814087, -323196, 224949, 418222, 2885144, -1410897, -426276, 1009317, 1090922,
--3107946, -2690260, 32094144, 3280281, 4908074, 3449396, -1850594, -13100724, 8880382, 9079024,
--5037460, 3891240, 4285841, -7915625, -958315, 7453379, 4494147, -13829258, 3604015, -3852049,
--6885370, -266825, 4136591, 985695, -15569, -355945, 6023692, -1945083, 3444027, -10785737,
-4394826, -1192390, 4314832, 2324114, -1842004, 7524783, -10285910, -4567161, -10159208, 8839043,
-4328254, 14477261, 7303055, -135828, 3225521, -11904039, -9127, 3360275, 3856344, 3507378,
-874026, 1991791, -3044595, 3275986, 10545218, 14001057, 6175626, -6506339, -3462818, -1540283,
--2714419, 5155572, 7190312, -5030481, 4278325, 7784092, 2478196, -10951093, -21386790, -10675678,
-4358318, 9298604, -3992172, 2732136, -765041, -2054068, -32212, 9709310, 1835562, -8158291,
-13287555, 5920613, -15329812, 640487, -1817845, -5012764, -1695975, -2403034, 12885, 5260261,
-2260764, -4207458, -2183454, 3089155, 5741835, -2609193, 4369593, 1066763, -3559991, -980863,
-579284, 86973, -661962, 253940, -1766842, -1347009, 1275068, 308164, -1573032, -1744831,
-102542, -1139777, -2616709, 1578937, -914828, -1413581, 738734, 2682207, -2935610, -4679367,
--41339, -718870, -6808060, -1216013, 1686312, -42413, -4116726, -526670, -1529008, 1280437,
-954557, 2109366, 1677722, -678605, -748398, -1305133, -3361886, -19872814, 6162741, 9026948,
--10209674, 6508486, 11719892, -28165858, 6300717, 927176, 6397354, -10670309, 16034187, -22277996,
-78920, -1837709, -1531156, -2517925, -6138582, -8581882, -1095754, 7632157, 1077500, -38118,
--3932580, 5297306, -600759, -2973728, 4454418, 9483288, -6191196, 6770479, -1012002, 4013110,
-2402497, 6346351, 10379862, -2584497, 2926483, -13345537, -6297496, -2947958, -4697084, -12174622,
-1548873, -4584341, -7499013, 11223286, -10475962, -3815005, -4800700, -6039261, 8094403, -9120363,
-5243618, -3336116, 8310225, -4468914, 9075266, -11853036, -3041374, 1285806, 10934987, -18999862,
--6821482, 492848, 255014, -3541738, 7737921, -9944460, -18856518, 3954591, -16528645, 8318278,
--5753109, -131533, -17293686, -7043747, 19133006, 10509785, -13996762, -12076911, -9851581, 412317,
-5949604, -2658048, -6152004, 12115566, 4599910, -2338610, -2473901, -4793184, -761283, 4647155,
--4314832, 5009543, -420907, -3764539, 841277, -2918430, 2080912, 4205847, -2432562, 1768453,
-3382287, 2101850, -215822, 4917201, -4672388, 4633196, -1196148, 4055523, -5463736, -3085934,
-994285, 202937, 5982353, 1796907, 3655554, -2134599, -3193308, 1764158, -6287832, -790811,
--1208496, 2523830, -1194538, -1457605, -1956895, -14485851, -6203007, 18226768, 779000, -15046881,
-14167486, -6634114, 950798, -15688442, 2420751, 6213207, -13826573, -3382824, -12355547, -90194,
-795643, -4169876, -3425237, 12069932, 1865090, -8178155, 2058900, -17520246, 10537702, 16695075,
--5390721, 6972880, 11851425, -882616, -2410014, 1459752, 1447941, 6941204, 1194001, 1607928,
-3652333, -9789304, -694711, -11253351, -11493869, -4713190, 4847408, 6839199, -348429, -13537737,
-2682207, 3561065, 6678674, 14492830, -14835891, 21745420, -18009334, 806380, -3616363, -3111704,
--8700530, -16712255, -22548578, -8738648, -2567317, 5761699, -1695438, 950798, 3337727, -149787,
-15909633, 7533910, -16286516, -2528125, -314606, 10421738, -11250130, 769873, -22692460, 4273493,
-17762374, -15841450, -6208375, 2266669, -154082, 4459250, 24883430, 394063, -3261491, 1316944,
-12678207, -8572218, 3409130, 4652524, -1860258, -894427, -148713, -308164, 5653251, -1816771,
--1276142, -4851166, 8223789, -1750199, 2433099, 854699, 1461900, 2079301, 5983427, -4123706,
--1051730, 6355478, -4574140, -6436009, 5350456, 291521, 2618320, 3631395, 2040646, 6576132,
--5076115, 3080029, 3626563, -2229088, 9264244, 3213173, 5669894, 2112587, -5568425, -1998234,
--940598, -932008, -985158, 2724083, -9254044, -18939732, 22632868, 9592809, -11002632, 14606647,
-14726906, 20782274, -7618735, -7235946, 15269146, -2277943, -2940979, 5260798, 6829535, 2662880,
-3304977, -20753282, -2127083, 32749, 249108, 1117765, -2265059, 8763344, 17120276, 1705102,
-1246077, -308164, 898185, 15681462, 4254702, -1118302, -3341485, 4009352, 3560528, -2469606,
-1891396, -8961986, -1778653, 13647259, -13452911, -6584185, -11587822, 15253576, -13880261, 7009924,
--5625334, 4493610, -2938831, 3627100, -11128797, 2582349, 17052630, -11143293, 989990, -29573534,
--1211181, -10438381, 906775, -27597850, -1114544, -1341640, -8410083, -5913633, 22652194, -24172612,
-4146791, -6518150, -8915278, 6532109, -8074002, -18873160, -13142600, 1861332, 1112397, 3930432,
--9248138, -12694313, 7363722, 643708, 1534377, 8509404, -13991393, 10610180, -10144176, -4781909,
--4291746, 2551748, 487479, 3057480, -1701344, -3561602, 1003949, -2007360, 3096135, 6626598,
-3960497, 2466385, 1985886, 1826435, 1869921, -665183, 7286412, 1400696, -1249836, 5388574,
-5613523, 2098629, -2925947, -261456, -4323959, 7183870, 2655901, 5787469, -2688113, 5939940,
-5373004, 7762080, 3913252, -2129767, -3907883, 6535330, 1437740, 5661841, 1393180, 1566053,
-1596117, 1727114, 19176492, 6420976, -2261837, 3851512, -9249212, -10238128, -7961796, 18200998,
--16253767, -20737712, 10049150, -19313394, 7305740, 498753, 5428839, -8768176, -1830730, -10621991,
--4179540, -8256538, 4082903, 9239548, 6762426, -15651398, 18126910, 1924682, 6471442, 1386201,
-8835285, -2106145, 8492761, 1779190, -3495030, 5032628, 2128693, 6750615, 5021891, -11955041,
-4889821, -3693135, 3488587, -2650532, -4170950, -3888556, -8022462, 7374459, 8369818, 8284992,
--1424855, 15384573, 18891950, 7205345, 2621004, 8208220, 19568408, 9285719, 21328270, 13302587,
-15937013, -17258252, -16917876, 3168612, -3315715, -4904316, 1476932, -8857833, 7240241, 4992363,
-3475166, 15797427, -3653407, -10755135, -8609262, -8042863, 2002529, -4014184, -34492344, -15400142,
--13354127, -5242545, -6882148, -3986804, -5140539, -10183367, 467078, -6267968, -5556614, 1931125,
--5579163, -2152316, -8633421, 142808, 543850, -1753420, -12350715, 4756677, 44023, 216896,
--9278740, 2448668, 3393024, 3227668, 1086090, 10476499, -6958921, -3059627, 2270964, 805843,
--743566, 4089346, -4925791, -4606353, -868120, 7310571, -759136, 5209796, 6406481, -1764695,
--8003135, -7583839, -856846, 7631083, 625992, -6155762, 813359, -1673964, -3918621, -3335579,
--1256815, 40265, -6014565, -5513665, 5204427, 15183246, 10672994, -33934000, -24689082, -7968775,
--109522, 10900627, -4420058, -1003949, -26631482, 3589519, -13852343, 9830643, -1751273, 13093745,
--11207717, -3046743, -13339095, 2143189, 11223823, -5486284, 3402688, -7949985, 756988, -18326088,
--4856535, -1074279, 1467268, 13240847, 17647484, 410706, -15903727, -11494406, -5040144, 1453846,
--4098473, 4918275, -18311594, -5920076, -2394981, -4981089, -10235444, -2619930, -4651987, 12378633,
-18357228, 12118250, 4613869, 7333657, 7757248, -8971113, 30573724, 18295486, -23917600, -20952462,
-22481470, -17770964, -10063645, 3282966, 2566780, -17251810, 16640314, 915365, -51509544, 13649943,
-32451700, -22568442, 22378928, 29700236, -9886478, -3249143, 16003048, -18796924, -12301860, 6069863,
--10111964, -11811160, 13569412, -22769232, -6847789, 2757369, 547608, 1137093, -2158221, 8141648,
--5904507, 3396246, 1234266, -6156836, 11984032, 5968394, -383863, -7784628, 9243843, -5949067,
-7133404, -6322729, 8675834, 751619, 1798518, 8638253, -6810208, -7794292, 2305324, -7202124,
--4345433, -483721, 752156, -4845260, -8462159, 3860102, -19864224, -162672, 9142912, -7486665,
-5382668, -2401424, 2700998, -8473434, 193810, 4405026, -3901441, 2834142, 17825724, -8088497,
--7478075, 17395154, -12688944, -2272038, 14743549, -10485089, -6685117, 11100343, 6804839, 7299834,
--1808181, -10803990, -8680666, 10267119, -8159364, -710817, 3040300, -15282567, 9983651, 8198556,
--6197638, -4968741, -11953968, 377420, -7385197, 10405095, -16781510, 1343251, 6473053, -826781,
--7960185, -17348446, -3879966, -7502771, -1649804, -13399761, 18434536, -17868674, 3198677, -6438693,
-4683125, -25332254, 26272852, 5082020, 2690260, -10383083, 6049999, 4378183, 1226213, 2496987,
--4595615, -19945828, -3388192, -8563091, -12773233, -17110612, -6123550, -4213900, -17022030, -6418829,
--694711, 11978127, 5564667, -15358266, -13437879, 8502962, -3441880, -19525458, -8371965, 5000416,
-16325171, 16270947, 16496433, 26306138, -4894115, -17540110, -16801912, -889595, 11615739, 20544440,
-9290551, 4570919, -20612084, 11888469, 4500052, 20061256, 13943074, 9209484, 6957847, 222801,
-1921998, 11909944, -2613488, 1046361, 2234994, 3609920, 4186519, 3997004, 5819144, 14272176,
-4589710, 1264868, 5007395, -97711, 4686346, 1540820, 1015760, 8963060, -10391673, -7275138,
--2606508, 4189741, -5160403, 3728569, -2138894, 11230803, 614717, 2087891, -5522791, -6864432,
-834297, 6660958, -5820755, -414464, 7640747, -5847598, -128312, 3757560, -10388989, 13245142,
-7205345, -2027761, 3352222, -200253, 113280, -2824478, 7601555, -1976222, 12601971, 32409824,
--28541668, -1304060, -11122355, -15807627, -8764955, 14567455, -7818451, -9408126, 8109435, 18887656,
-12588012, -15023796, 9783936, -15744813, 11602854, 136902, -1341640, -7874823, -11009612, -9669045,
-2294050, 1594507, -17639430, 10924249, 2238752, -2123325, -6486475, -8138426, 13123273, -17972290,
--491237, 18505404, 22681722, -20543366, -1018981, -4489852, -12663711, -17294760, 18671296, 3668976,
-11975979, -4112968, 1723356, -2101313, 11912629, -5043902, 912681, -14912663, 20921322, 16695075,
--24896852, -31287226, -6256694, -153008, -9868761, 510027, -7274601, 1832340, -15371151, 16030965,
--19838454, -18110266, -6327561, 2379949, 14082661, -7762080, 20298016, 1596654, -6958921, -7384660,
--5063767, -13160317, 12434467, 8617852, -3131568, 7207492, 6255620, -10415833, -9708774, -8906688,
-15737297, 3596498, -10970957, 961536, 4549981, 4789426, -16456167, 8103530, 6783364, 2764885,
--32749, -5024575, 2347737, -5461051, -14651207, 2726231, -1845762, -3018288, -1617055, 1126355,
--4373888, -5974837, -208306, -2375654, 7476465, -4263829, -1966558, 3943854, -1897839, -7283728,
-5902359, -7261716, -2200634, -12410308, 6522982, 977642, -1672890, 1837172, -5377836, 10452340,
--644245, 1531156, 12181064, 8410620, -3339874, -4253092, 5868536, 2983929, -4150549, 2053531,
--3813394, -3813931, -732829, 2443837, -2261300, -834834, -44958108, 66379256, -45756436, -11115912,
-11451993, 36049272, 28450938, -10239202, -12060805, 2322504, 1173600, 18792092, 6289443, -23874650,
-6811282, -4838818, -9018358, 2792803, 9458592, 264677, -18697066, -15662672, 8015483, 7335268,
-10771241, -5773510, 13448079, 3631932, 15855946, -1318018, -6065031, 12471511, -1953673, -12558484,
-1763084, 15391015, -1136019, -16779364, 8019778, 20331838, -18895708, 7624641, -20262046, 8182450,
--25473988, -15961172, 27009438, 26002806, 11554536, 33753076, -6911676, 40223980, 14325863, 15724412,
-20919712, -35763120, 29955250, 10746545, 11822971, 14401025, 2868501, -17287780, 2381023, 33985540,
-37830608, -121870, -43876848, 21655762, 687195, 9400610, -1989107, 1352378, -9938017, -32384590,
-6119255, -5119601, 6885370, -5783174, 15715285, -18076444, -20195474, -13566728, 2386391, -5680631,
--9346386, 10848014, 3687230, -13827110, -15415174, -11531450, -9262634, -1301375, -2798171, 8070244,
--659278, -11830487, 9128416, 2150168, -3413962, 780073, 4293357, -5786932, -3382287, 6241661,
--11010686, -4276177, -7645579, 6447283, 7425462, -8680129, 2312840, -23663122, 165893, 1394791,
-1021129, -4448513, -4752382, -10563472, -8354785, 5684389, 3288871, 5458367, 8143795, -7747048,
-463856, 3445638, 1960653, -7590281, -107374, 2158221, -412854, -6195491, -1049583, -1458141,
-43478492, -1488206, -51951924, -26083336, -30622580, -11529840, 176094, 17238924, -44283260, -9762998,
-6870337, -20462834, -23801636, -21463026, -23757074, -3673808, 26074210, 13571023, -10429254, 12708271,
-5089000, -11830487, 13431973, -14979772, -3404299, 6457484, 8876624, -29897268, 15049565, -14632417,
-8562017, -5762236, -24175834, 6852084, 7461432, 3877819, 3933116, -9878425, -34291556, 1533303,
-7043747, 7605850, 314069, 4415764, -14250165, -27917, -1240709, 31250718, -4815195, -51019916,
--23142894, -5416491, -42530376, 9819906, -13013751, -10705743, -20513838, -9030169, -30625264, -29848948,
--36822364, -3520263, 38703560, 5462662, -24538222, 11430519, 314069, -2577517, -13812615, -19236084,
-8110509, 16089484, 12120398, 6737193, -7363185, -31237298, -22405234, -31448288, 4626217, 3589519,
--1122597, 11360188, -16655346, -19997904, -2852932, -7352447, -20572356, 4575214, 11827803, 1717450,
-4325032, 19841676, -3564823, -4037806, -3383897, 1353452, -7092065, -3886946, 8834211, 13552769,
-14770929, 9987410, -4080219, 700617, 2314987, -6136972, 13686450, -5573794, 19969988, -6993281,
-9386114, -9498857, -2633352, 20282446, 6743099, 2796561, -70330, -7915625, 8012262, 1753957,
--9828496, 4480188, -8399882, -10835666, 3183108, 3261491, -6653441, -6504191, 6966974, 386547,
-9776956, 2112050, 6685654, -3590056, 2992519, 2758980, 1052267, 28945396, -3593814, 23230404,
-29528438, -24960202, -31704912, -33000382, 8519068, 11777337, -45669460, -26124138, 713501, 1443646,
-13498008, -52762600, 5452461, 12355547, 36477156, -42252276, 4806606, 7064148, -5497558, 23477902,
--13675176, 41055056, -2478196, 3707094, 12119324, 15998216, -15714748, -32990180, 19033148, 23435490,
-5139465, 29625074, 5483063, -3685619, -11307575, -24930674, 38428684, -17249126, 36402532, 14542222,
--2981244, 10904922, -15778099, 19877646, 19324668, -13632763, 14297409, 7490423, -38726108, 28065464,
-28230284, -3553012, -19893214, 3759707, -1240172, 1294933, -7213398, 52978960, -1282048, -30678952,
--17511118, 6046777, -44637596, -58034136, 7648263, 72688024, 15753403, -5093831, -46707232, -11740293,
--8016020, 49543520, -34178812, -21665962, -81878720, -11784317, -15246597, -19189914, -15614890, 29994978,
-31680752, -31862214, -12701292, 10537165, 4115116, -5814312, 12823162, -5594732, -10388452, -10019622,
-11004780, 4529580, 3359201, -4054449, 10780905, -11458436, -4211216, 9788230, 4202089, -652835,
--760209, -8557722, 3829500, -5683316, 20831128, -5798206, -11809013, -9440875, -18402862, -6157910,
-13642964, 15742666, 42696808, 16344498, -5192616, -32828046, -45671072, -21268678, 370978, 18526342,
-14706505, -12135430, -18372796, -9210557, -7712688, 11208791, 19205484, 4272956, 787053, -2496987,
--7282654, -5946382, -5589900, -1055488, -2608656, -2786897, 2295660, -4957466, 1655710, 656056,
-1206886, -3776350, -786516, -2832531, -2594697, -3693135, 2165737, -2356863, 3976066, -72847480,
-21467320, 34605624, -46181100, -4420595, 26592290, -11473468, -20524574, 18532784, -19784230, -11276437,
-2001455, -15416785, 25052008, -8472897, -10763188, -4467840, 13462038, 44313860, -6455336, -20653960,
--22404696, 8089034, 21743808, 12562779, -19740744, -3332895, 24686936, 511101, -17842368, 5937793,
--15870441, 40999220, -18116172, -44704168, 15876883, -7628399, 21758304, -29985314, -28885802, 29368450,
--1887101, -38337416, -19827716, -36632312, 47774532, 22690312, 13242458, -49919868, 9345849, 20463372,
--34442416, 1966558, -24604258, -19112068, 20002200, -16998944, 22881438, -14051522, -29857538, -6919729,
--7027640, -4553739, 10925860, 3582540, -18469970, 58872728, -6772090, 26100516, 27261768, 16291348,
--7556995, 6190122, -12910135, 33123324, 8623757, -8361228, 4417374, 14079440, 23446764, -5710159,
--49555868, -3381750, 16030965, -4955319, 26846230, -11165304, 9546639, -3992172, 1118302, 10909754,
-3062312, 6657736, 13898514, 8023536, 16066399, -3716221, 5502390, 8317204, 1503239, -16024523,
-19671488, -7948374, 529355, 3026341, -9214852, 5005248, 1402844, -2511482, 13804025, -5997385,
-1394791, 19404126, 205622, 10832981, -9054328, -6047314, 10851772, -2401424, -6793028, -10078141,
-932008, 1428614, 2826625, -3336653, 2882460, 6082748, -1782411, 4168803, 5487895, -2671470,
-6606197, 1219771, -6497212, 4431870, 2718178, 1354525, -351114, 52712672, 10596221, 22933514,
--2121177, 5672041, 8130373, -18933826, 8221641, 18505404, -15569, -21816286, -11954505, -16144782,
--6878390, -21869436, -21465710, 2815888, -17151416, 25031606, 7857643, -5648419, -18215494, -8495982,
--6127308, 13546864, -4337917, -20687784, -17398912, 4495220, 4272956, 12074764, 4329327, -4466229,
-5344013, -18032958, -55507084, 2434173, 66901632, -1849520, -48987324, -7813620, 31736050, 9007083,
-5010616, -793495, -21393768, -26300770, -15995532, 6115497, -1823751, -24325084, 8820252, -49027052,
--8988830, 45591616, 13193603, 58618252, -7893613, -23008140, -7167227, -5069135, 15479599, 3490198,
--629750, -31842888, -16249472, -15190762, -2345052, 37121940, -5171141, -8990440, 12001212, 15074261,
-2214593, -19654308, -30964030, -2165201, 12284680, -1312113, -15462419, -3859565, 8418136, -6426345,
--5932424, -10030359, 18400176, 19659676, -10042170, -5128728, -9241696, 8013872, 11392401, -5333813,
-1494112, -2028298, -1792075, -3641596, -14894947, 1641214, 8225399, -8904541, 2024003, -2132988,
-485868, -7977365, -2867965, -3354370, -5417565, -6056978, -6404870, -1766842, 26103738, -13047574,
--23085, -5141613, 1265942, 14535780, -9999221, -1386201, -2991445, 4575214, -860067, 4159139,
--7723425, -23335632, -77349680, -119533232, 28228672, 106943072, 33788508, 261635984, 246497840, 109606488,
-254168112, 107329088, -46032924, -778463, -76384920, -209089744, -114103856, -109488384, -214237264, -156017904,
--89550608, -134979552, -90709176, 19754166, -7822746, -43185360, 51223928, 47837344, -150324, 51286740,
-139244992, 58450748, 26275000, 133257264, 119276072, 40073120, 142080736, 173792096, -214212, 102969696,
-175247008, 66381404, 70100848, 178624464, 106760536, -14097156, 139450064, 97872640, -37932616, 54760832,
-110939544, -49594524, -87913152, -19827180, -185880272, -312124928, -302142912, -335987232, -537495296, -465254464,
--383784864, -497411424, -426440864, -274030720, -324816576, -248250720, -68639480, -22129282, 105247640, 195800576,
-322770016, 432374880, 471657728, 550104256, 597494912, 558134784, 528687936, 560846464, 426725408, 338336576,
-401393696, 218952608, 35086124, 50626928, -80950472, -296396224, -248829472, -184104848, -265709760, -271743104,
--169476192, -192939056, -243306672, -178327584, -162139840, -228902960, -205345072, -133903120, -170331424, -182976352,
--59811716, -57549340, -107942192, -11280195, 41246720, -30848066, 5945846, 40933724, -58194660, -75332656,
--71488656, -156803888, -173153216, -121218472, -91039888, -66340064, 22643068, 106434656, 144649136, 204889264,
-262537392, 274130592, 290806336, 321578176, 305036096, 277293280, 288833856, 261546864, 194545920, 133432824,
-35226248, -51449412, -132254928, -192621232, -215822640, -227415840, -202896944, -155451504, -136138656, -114747032,
--93809064, -80983216, -71295384, -53454628, -41395968, -38137700, -37186900, -25935160, -19567872, -15622407,
--5378910, 8182450, 20080582, 35090956, 36464808, 37493992, 43423192, 42872364, 35161288, 37822556,
-31475130, 16682190, 1272384, -12828530, -27831924, -33510408, -40012452, -43001748, -40049496, -37157372,
--36057324, -25798258, -20160040, -12216498, 435939, 10737418, 15800111, 24293408, 29350196, 33176474,
-37527812, 39187820, 40920836, 42649024, 42935716, 42518564, 39662412, 39084204, 36958192, 34553548,
-31209380, 29785598, 24390582, 18534394, 11311870, 5504538, -2037425, -8892193, -15265924, -22412750,
--31423054, -37441916, -43879532, -47260748, -50237696, -51478940, -51516524, -49303004, -47184512, -42711304,
--38785164, -32626182, -25567940, -15730855, -8205535, 2355253, 10057740, 17258252, 23497766, 29421600,
-30994632, 33355252, 32648730, 30091078, 25649008, 22355304, 16324097, 11494406, 7216619, 4673462,
-1080721, 195421, -782221, -639950, -1612760, -823023, -1232119, -561567, -988916, 27917,
--376347, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--512175,
-11112691, -5488432, 399969, -3257733, -293668, 4756677, 2197413, 3000035, -2619393, 3706557,
--3826816, 4156455, 2018098, 5000953, 2055679, -899796, -5635534, 6063420, 4114042, 1569811,
-672162, 602369, -2414845, -2681133, 3077881, 1950989, 1999307, 3032247, -3072512, -190589,
-2771328, 3365107, -467078, -2437394, -4746476, 59056, 847719, -2807835, 1034013, 799938,
--4280472, -2256469, -354872, 2199560, 17180, -2029909, 3936338, 780073, -1371705, -2896956,
--682900, 387621, -5576478, 2600066, 3448322, -1890859, 4424353, 3683471, -604517, 3053185,
-1756642, 5931887, 1831804, 1139777, -940598, 2256469, -4765266, 646393, 2252174, -2314451,
-2582349, 3174518, 3428458, 2186138, 4512937, -938987, -2771328, -1395328, -1182727, 634581,
--1066226, -3488050, 1653026, -1628330, -1869921, -2103460, 798327, 30602, -1097901, -820876,
-1389959, 137439, -174483, -344671, -150861, 694174, 930934, -119722, -65498, -766115,
-214748, -1404454, 129386, 994822, 1266479, -875100, -971200, 254477, 824634, -809064,
--10548977, -7434589, -1020592, -4799089, -4045322, 1973538, -5994164, -5844377, 1704565, -2666101,
--2330020, 2384781, -1870995, -4150549, -418222, -345208, -1133335, -1917166, -1082332, -4755603,
--265214, -3439195, -2434710, -163746, 4249870, -972273, 6128382, -3205656, 3693135, 4176319,
--4701379, 1614371, -1171452, 882079, -3321620, 1624571, 2190433, 3213709, -1643899, -4003447,
--1357747, -2210835, 1293859, 1506997, -4790499, -639413, -3282966, -2689723, 925565, -3976603,
--6293738, -1216013, 6220724, 1339493, 2189897, 306553, 1444720, 817118, 2301029, 2420751,
-6972880, 491237, -3073049, -4020626, -840740, -1930051, -497679, -8100309, 1688996, -602369,
-2592013, -1107028, 730681, -1953673, -931471, 7873212, 1598265, 7217156, -2445984, -1347546,
-565862, 2034204, 714575, 2430415, -2398739, 2641405, -2798708, -1767379, 1450088, 1016297,
--96100, 102005, 67646, -632971, 206158, -1096290, -91805, -392453, -169114, 446140,
-554588, -616865, -1017370, -657667, 71941, 17717, 178241, 317291, -421444, -489089,
--430034, 89121, -163746, 568546, 8607114, 9916006, 7635915, 5663452, 8026757, 3251827,
-3489661, -734439, 2281702, 8442295, 903554, 2573222, -3136400, -2095407, 6474127, -4345433,
--7916162, 2392834, -6613713, 5706401, 1348083, 6847789, -2180233, -434329, -1687922, 2247342,
-2745021, -100932, -6738267, -1394791, 5775658, -3848291, 2604898, 1522566, -1300301, -1666447,
-6417755, 4832375, 11194295, 4473746, 930934, 2674154, -944893, 673236, 3526705, 2094870,
-9541270, -4093104, -2721399, 656593, 2457795, -1510218, 4422743, -4150549, 860067, -281320,
--3179887, 979789, 958315, -4320200, -5832029, -3619584, 4618701, 2227478, 19864, -386010,
-3485903, 252329, 1155883, 6033356, 2982855, -1453310, -962610, 5361730, -4660577, 604517,
--4201552, -1903744, -5430450, 1466195, -1130650, -3233037, -2109366, 3136400, 1942399, 549219,
-1850594, -3030100, -506806, -272194, 2335925, 53150, 166430, 417149, 697395, 1703491,
-1927904, 1505923, 117575, 797790, 1744831, 83215, -1586990, 1453310, -805306, -329102,
-357019, -282931, 1282048, 1150514, 584116, -18254, -445603, -477815, 550830, 718333,
-267899, 1104344, -2266669, -1465121, 1135482, -96637, -893353, -126165, 1211718, 95026,
--835908, -1069447, 714038, -1055488, 90194, 18685256, -325881, 9153112, -1654099, -1434519,
-9827959, -9615358, -3322157, -750009, 4859756, 3370476, -2049773, 1872606, 918049, -8706436,
-2212982, 4661114, 4148402, -9757092, -3420942, 1104344, -6987375, -1921461, 547608, 319438,
-964757, -1072131, 4471598, -3148748, 3558917, 7322383, 7323993, -2119566, -4179540, -744640,
-8249559, -466541, -428960, 66572, 824097, -4272956, 745714, 3471407, 533650, 828392,
-3331821, -2191507, 2247879, 1304060, -891743, 5797669, 583579, 4611185, 923955, -1535451,
-2024003, 3085397, 2669322, -126165, -4513474, -4114042, -5437966, -2420751, -177704, 13959,
--623307, 4064650, 3501472, -2628520, -5332739, 180926, 2791192, 3350075, -3256659, -599685,
-3173444, -273267, -422517, 4209068, 1981054, 2000381, -1551020, -1340030, -235686, 1821066,
-2712809, 71941, 2057289, 746251, 183610, 405338, 693637, 2522220, 1899986, 2837900,
--1419487, 1344325, 204548, 367757, -398358, 306016, 432181, 136365, 379568, -451508,
-1363115, 1336809, -1219234, 337692, 765578, 844498, -392990, 2627446, 1023813, -379031,
--4952098, -14006962, -3583613, -4789963, 946503, 2252174, -2333778, -2864206, -26261040, 453119,
-8477729, -6213207, -9817221, 7290707, -11116449, -1765232, -4966593, -5937793, -3627100, -3760781,
-403727, 4385162, -814433, 2406792, -2844342, 3284576, -2585034, -4072166, 1749662, -1581085,
--6296422, -8119636, 3828963, 294742, 3778498, 1072668, 8467528, 1109712, 2926483, -4164508,
--7078106, -2138357, -3524021, 6963216, -3313031, 92879, 1810866, -3593814, 9841918, 6444062,
-116501, -7950522, -9996000, -3476239, 3291556, -9087614, -253403, -4468377, -8590471, 702764,
--13435731, -3058017, -1458141, -5078799, 8981313, -649614, -1453310, -239981, 5611912, 7112466,
-2130304, -7306276, -2369748, -1918777, 3848291, 1727651, 2192581, -4145180, -5206037, 3960497,
-2721399, 926639, 1322313, -345208, 2273648, 552440, 3446175, 899259, 770410, -386010,
--146029, 466004, 2204929, 3114925, 1923609, -874563, 1233193, -4099010, 2027225, 2296197,
--717260, -425739, 689879, -994822, -298500, -311922, -1280974, -1386201, -754841, -471910,
-706522, 1502165, -297427, -1938641, -60666, -2700998, 840740, 3492882, 1488206, 2026151,
-1447941, 5503464, -14974403, -22257594, 2765959, -5159330, 4986994, -6305012, -10969346, 172336,
-10168872, 1966558, 6255620, 4857071, 3886946, 2358474, -3506841, 2607045, 6772090, -10645613,
--4890894, -3612604, -2317672, 3755949, -822486, 1222455, 7027104, 5974837, -2422362, -6052146,
-1445793, -3436511, -2486249, -5870147, -3949759, -8883603, 2168422, -3387656, -12885, 7689065,
--1498407, 1388348, 2122251, -5696737, 4761508, 4539781, 6560563, -5804112, 10323491, -1774358,
--7444789, -6444062, -8149701, 7549479, -2829310, -8824547, 2711198, -1443646, -6088116, 6447283,
-8854612, -3135863, -7285339, 5352603, 1787780, 4175245, -579821, 11732777, 7011534, -7000797,
--3368328, -3354906, -2634426, 3853660, 5470715, 6924561, 42950, 834297, 2749316, -2881923,
-2617783, -861678, 4590247, 6352257, -8691940, -3998078, -4356708, -2841121, -4452808, -439697,
--3142306, 1384053, -146029, -370441, -345745, 1083942, -2125472, 5383742, -658204, 2246805,
-848793, 1053341, -1045825, 132070, 169651, 244276, -1826972, 309775, -1183264, -1992328,
--2868501, -926102, -158377, -550293, 120796, 273267, -574452, -456877, -1074279, -1071594,
-1726040, -65498, 584116, -1258425, -20787104, 60666, -3834869, 1449015, -108985, 7893076,
-5662378, 8173860, -1381906, 11122355, -5200132, 7590281, 9126269, 1777043, 9097278, 2063195,
-2318209, -2483565, -998580, -3765076, 7202660, -360240, -886374, 10321880, 6122476, 188442,
-2699924, -776852, -399432, 6749004, -3859028, -6485401, -60130, -814970, 3326452, -18514530,
-11142756, 12175695, 4715874, 2451353, 270583, -5815386, -12461848, 8304856, -5049808, -5539971,
--3826279, 7467338, -5228586, 4648765, 4566087, -4301410, -2962991, -10611790, 4894652, -6863895,
-4097936, 802085, 3666828, 6628745, 10365904, 4576288, -4837744, -11331734, -2054605, 7118372,
-11431055, 8723615, -1772748, -2158758, -7405598, -12138651, -1330903, 8597451, 3751654, 2793876,
--2750927, 11373610, -413391, 3905736, 1060857, -2058900, 1036698, -5625334, -2824478, -2785823,
-1888175, -1323387, -4129074, -2301029, -2859375, -2945811, 1205812, -4242354, -1838783, 964757,
-732829, 3501472, 159988, 605054, 561567, -789200, 2739116, -740882, 3118683, 1262184,
--913754, -2277943, -139586, 3155727, 2138357, -248571, -2958696, -643708, 2594697, 2470143,
-322659, -397284, -364535, -1648731, -1334661, 2077690, 7845295, 27154394, 14717242, -1217086,
-2554432, 2506650, 5954972, 10805064, -1500554, 2214593, 18107582, 1966021, -788127, 11042361,
-7626788, -7416872, 4505958, 1220845, 7298760, 5143760, -12563853, 9704479, -5807333, -695785,
-1096290, 7630010, 1363115, 2168959, 5721970, 6679748, -6214281, 6859600, 20031728, -3384434,
-9133248, 9489730, -4948339, 7476465, 1968169, -4662724, -5180805, 3707094, -4626754, -12288975,
--1578401, -428423, 1312113, -15770583, -3855807, 5051419, -10041634, -6628209, -16560320, 5644124,
-7670812, -11191611, -4012573, -5317170, 12048457, 447213, -6837051, -4655208, -7617662, 4002910,
-10089952, -6987375, 3911642, -2879776, 4884452, 11525545, 4811974, 9114457, 9140764, 11511586,
-1774358, -6204081, -6315213, 4712653, 7230578, 1201517, 4870493, -4926865, 2072859, -460098,
--1542967, -5178657, 771484, -2206003, 344671, 4512400, 1878511, 1999844, 1509144, 4968204,
--2939905, 341987, -765041, 1598802, -524523, 336081, 2091112, 715112, -1651415, 2744484,
--521839, -3515968, 2338073, -2460480, -2070174, -2556579, -5496485, 3172370, -1226213, 2712272,
--248571, -344671, 788127, 4300873, 2822331, 3857954, 1760937, 132070, 1557463, 4421669,
--1673427, 4008278, 27974196, 7341710, 1273995, -1705639, -3891240, 74625, 5348845, -3476776,
--6295885, -9623411, 854699, 6706055, -8338679, 4073240, 5709086, -2483565, 18923090, 6548752,
--4543002, -3301756, -1279900, 6655589, -2649995, -6358699, -6766184, 4227859, -14924474, 440771,
--4122095, -5589363, 4938676, 976568, -5398237, -3495567, -5184563, 7423314, -2362769, -12006044,
--1334661, 188442, 999654, -6998649, -9616969, 834834, -1712618, -1403917, 3406983, -2144263,
-9210557, 1799591, 5533529, -5897527, 13359496, 3771518, -6529424, 8699456, 16872242, -4894115,
--4037806, 8518531, 8021925, 3230352, 4913980, -10428717, -2677912, -11268384, 3374234, 10428181,
-4829691, -13196287, -2592550, 4090956, -12896176, -20410758, -1690607, 604517, 5849746, 18413062,
-1544041, -2165737, -5704254, -4433480, 2959233, 4624069, 3995393, -344134, 2143189, 121333,
--4022237, 2472828, 3244311, -5258114, -4918812, 5552319, -1826972, 3241627, 2552284, 1607928,
--1366337, 1152125, -96637, 1889249, 513249, 2899103, 116501, 2556579, 1858110, 536334,
--2370822, 5379447, 1755568, 4908611, -1016834, -1700270, 1829656, -3361886, -546535, 2316598,
--3105798, 765041, 1813550, 1065152, 1188095, 2617246, -1038845, -4866735, -62277, -539555,
--5127654, 723702, -2156074, -637266, 2048163, 1656247, 1856500, -21657372, 10212358, 28646358,
--11752104, 20084878, -4503273, -4406637, -6259378, -10474888, 7765838, 227096, 5313412, 5146982,
--18817326, 178241, 8804683, -7718056, -4014721, -11950747, 21041044, -13184476, 10392747, 9706626,
--12488691, -5233418, -4346507, 8736500, -9990094, -4165045, 10204305, -1858647, -2711735, -5047124,
-12439299, 2103997, -1997160, -5196911, 340913, -9543417, 10254234, -1306744, 4722317, 25450902,
-17154636, -14803142, -10396505, 3915937, -1318018, 10587631, -5866389, -8725226, -3057480, -16134582,
--6180458, -2008971, -12304008, -7144141, 27313308, 6404870, 102542, -1453310, -296890, 7923141,
-9624485, -2145336, 9505836, 645319, -5216775, 908922, -14566918, -1218697, -13499082, -7413651,
-8136279, 11793980, -17901960, 7137162, -4589173, -5812165, 8671002, -1402307, -8243653, -603443,
--3234110, -6591701, 3305514, 2259153, -4511327, -11248519, -5359583, -1250909, -885837, 8645232,
-2597918, 2059437, -4792110, -54761, -1981054, 4573067, 5254893, -2950106, 2237141, 3839164,
-4318053, 3270081, 4910758, -2085744, 326418, -3522410, 251256, -4081293, -2121714, 1374390,
--1114544, -3320010, -778463, 1556926, -5294621, -2727304, -2886218, -1714766, -2042794, -2527588,
--333934, 2835752, 189515, -369904, 3373160, -23025320, 4034585, 21110838, -5476084, -5546951,
-4694400, -6721087, -5275294, 5864778, -700080, -1323387, -163209, -14542222, 24553792, -26131654,
--2412698, -725850, 8997956, 5230197, 406411, -10001905, -7010997, 2980171, 19187766, -1684164,
--8339753, -5890548, -13475997, -1055488, -7882876, -6467684, -2713346, 4119411, -374736, 504122,
--9104794, 1714229, 2681670, 5738077, 4958540, 5778342, -12387223, -75162, -2470680, 8058433,
-2146410, 16485695, 3663070, -3978750, 1539209, -9169218, 1611, 7126962, 9435506, -14394046,
--10995116, -1166621, 14952392, -23412940, 6184753, 26756036, 14850386, -7312182, 2555506, -14570677,
-6165426, 13159780, -22660248, 4966056, -11004243, -3244848, -30746060, 44560, -12911745, 11902428,
-901406, -14430553, 9594420, -1024887, -18396956, -2572149, -11606075, 7514582, -6432251, -9753871,
-13214004, -2641942, 2407329, -4479651, -5616744, -1658931, 5694590, 4097399, -3073586, -896574,
-320512, -3351685, 2126009, 3092377, 4730370, -4794257, 1939715, 2392834, -5487358, 254477,
-2542084, -4093641, 476741, -2683281, 6263673, 3212099, 7603703, -3651259, -2709588, 2422362,
--7058242, -852551, -1956895, -1214402, -274341, 1429687, -3914326, 170188, -433792, 1317481,
-1483911, 167504, -3946001, -2408403, -6229850, -17361868, 27473296, 8081518, 14374182, -16176994,
--18252000, -3233574, 4815732, -4937065, -2457258, 9371619, 2517388, 3019899, 8137353, -20071992,
--2226404, 431644, 5132486, -13905493, 1840930, 2563022, -9796820, -5233418, -13491566, -9965935,
--75699, 4507032, -10916196, 993211, -4947803, -9525701, 3770981, 153008, 7750269, -21265994,
--22388054, 4819490, -1920924, 8578123, 18781356, 2255932, -11812771, 16940424, -8363912, -15625091,
--12147778, -5047124, 1350767, -16602733, -6466074, 16595217, 22348862, 9554692, 6264747, 4784057,
--2572686, 14355391, 8057359, -16504486, -9055939, 202937, 1672353, 15700790, 10034117, 2607045,
--2383707, -1823751, -7635915, 10457708, 8138963, 18105972, 4134443, 5348308, 2208687, 32430224,
-3687230, 12626130, -13356811, 1254131, 12313671, -29195578, 2426657, 3974992, 8279087, -2938831,
-4415764, -3728569, -965294, 5127117, -2403571, 15628849, -6205691, 9178882, -2368138, -5410585,
--2924336, -5859946, 199716, 2532957, 3078418, -1138166, -2969970, 6576669, -1911261, 4435628,
--2275259, -2377801, -4694936, 4967130, 5341866, 1232656, 537945, -3872987, -6830609, 3296924,
--569620, 310311, 8181913, -2208150, 7171522, -1016297, 4202626, 2915209, 5529771, 1326071,
--5063230, -883153, 18686328, 1072131, 23179938, -991064, -10548440, -11817603, -21633750, 3754338,
--9109089, -834297, 1884954, 7561290, 11385421, 18956376, 19914152, -3316252, 17728552, -1557999,
--1522566, 6455336, 14939507, 6254010, 4190278, -23995446, -12182138, -19558744, 9799505, 19105088,
-3768297, -8602283, 13519483, 19164144, -2617246, 2769717, -4535486, 16073378, 13797582, 11460046,
--6920266, -12551505, -1952600, -3438121, -27386858, 4535486, 3752191, 2197950, -6961068, -3879429,
--30544196, -11054172, -27723478, -5097053, -20761872, -11005854, 20029044, 5071283, 21100638, 1160715,
--17272748, -8644159, -17973902, -34580392, 4851166, -21459804, -6190122, 20022600, 8455180, 7738994,
-1672890, -4075387, -1479616, 3764539, -14783814, 11644730, -25222732, -26214870, -1441498, -2421288,
--3246995, -19304804, -4342749, 25081536, -1378148, 1397475, -6736656, -22023518, 11116449, -14856829,
--5778342, -14788109, -9058623, -6985228, -4675072, -5413807, -3258270, 216359, 2595771, -13834627,
--5907191, 2528125, 2455111, 7556995, 3587908, -4669167, -5780489, 4904316, -9269613, -1504312,
-2867965, -7197292, 2250563, 2066953, 5163625, -4941897, -1690070, -2675765, -376883, 3349538,
--2030983, -384400, -2725157, 5379984, 7540889, -2560338, -1216013, 1965484, 2532420, 4671851,
-6682432, 1163399, -1137630, -1671816, -1585917, 10853919, 21787832, 19012746, 20429548, -11764989,
--20550344, 15808164, -9356049, 16337519, 4874251, -26181046, 6579890, 4905390, -29532732, 15887084,
--13463649, -13712757, 8042863, 9001715, 1403381, 10681047, 800475, 554588, -6928319, -3974992,
-6475737, -4076998, -10125922, 701690, -19022948, 6896107, -24181202, -14676440, 898185, 9617506,
--3301219, -9973988, 3750043, 7591355, 5630702, 468688, 19473918, -44736916, -10165114, -12233677,
--14868640, 19446002, -15658914, -2114735, -36107792, -10073846, -4290673, 1910187, 24074902, -5781026,
-3042984, -14510547, 12208981, -18060874, -11719892, 9431748, -41926396, 6132677, 22403624, 29135984,
-22225918, 14107357, 32724430, 18108656, -396748, -8062728, -8408472, -12625593, -28227598, -3025268,
-2631204, -39877696, -15800111, -12030740, -9016210, 12814035, 33429878, 39101920, 25865904, -13070122,
-10666014, -8411157, -1840394, 8886287, 6003291, -3365107, 2103997, 2954401, -787590, 1389422,
--6152541, 3560528, 10958072, -5114233, 1453846, -9627706, 2367601, -4485020, -670552, -428423,
-8459475, 15068356, -5400922, 991064, 3640522, 6167573, -9102646, -14009646, 250182, 10999948,
-3164317, -8915815, 8382703, 4475356, -9134859, 6444062, 4060355, -3450469, -2819646, -915365,
--1726577, 1709934, 3388192, -3137474, 6109054, -38489888, 119185, 6360310, 27023398, -8819178,
-12537010, 11294690, 6050535, 6155225, -41941968, 33122250, 18154826, 41051836, 15176267, -1802276,
--15173046, -9707163, -9463960, -14892262, 10719701, 7801808, -15010374, -17186848, 9186398, 12321724,
-21563958, 6011881, -13220983, -19906100, 4329864, 3374771, 1488743, 2393371, 38221452, 12902082,
-7401840, 12553116, 13907641, 15519864, 481036, -24169392, 17143898, 53159884, -5303748, -14799920,
--32219234, -6948184, 42991548, 5017059, 17869748, 5946382, -59122908, 12233677, 10774462, 1255204,
-6229850, -4134980, 1050120, 12103218, -31758598, -13227426, 27217208, 10059887, 3858491, -24003498,
-17314086, 6386080, -21495238, -23477364, -15617575, 21536576, 44900124, 41663332, 46028628, 46547780,
-2018635, -20691542, -16874390, -40647032, -13166222, 12895639, -32833952, -257698, -26718992, 404801,
-36338108, 14137422, 15082851, 18002356, 11399380, -10976863, -3469797, -13545790, 19855096, -11832098,
--10287520, 3606699, -2072859, -7010461, -12786655, -3714073, 13606993, 12682502, -5668820, 19578072,
--681289, 568546, -8614631, 2954938, 10309532, -2468533, -7428683, -7364259, 5270999, -4037806,
-11252277, 7027640, 9163313, 13087302, -12999792, 3465502, 1414655, 6052146, -2487860, -5583995,
-11969000, 2898029, 9824201, -5054640, 3769371, -7704635, -2285996, -11889006, 19034758, 38774428,
--78578576, -27715960, 6136435, -45901388, -42101952, -18212808, -25567404, 2929168, -18826990, 49820548,
--5297842, -17626008, -7151121, -38094748, -10564546, -30731564, -12809740, 5417565, -39675296, -6604049,
-30729418, -25687126, -7409356, 8917963, -152471, 12885439, 2690260, 110059, 11461657, 4320737,
--19713900, -3622805, 17548162, -8797704, -24554864, -7990787, -29777008, -14581951, -52161304, 5174899,
--35532800, 17249126, 6345814, -12934831, -46012520, 4361003, -4903242, 56802552, 22531936, 1154809,
-30766998, 13450764, 284005, 25130390, -29513942, -13921600, 2204929, 22240952, -24447490, -14734422,
-82184736, -7753490, 42569032, -33089502, -81068, -23611582, 17865454, -8319352, 27870042, 43858596,
-1162326, -30967788, 26590142, -32999308, -15007689, 11155104, -34294240, -22908282, -10935524, 24923696,
-47547972, -56572772, 47668768, 9543954, 13936632, 5266704, 6692096, 5080410, -7039989, 8616778,
-24693378, -12486544, 4334696, -2426120, 3226057, -26801132, -4811974, -8214662, 8082592, 8262980,
-26381300, -16485158, -9550934, -12854300, 18306224, -23401666, 5632313, 8602283, 7942469, 8674223,
--38513508, -9199283, 13893682, -6659347, -16456704, -2194728, 4549981, 939524, 16330539, 8227547,
-12965433, -13020730, -11560978, 13093745, 3874061, 8783208, -8665633, 8834748, 6081137, 1622961,
-3328600, -3706020, -3988414, 108985, -19028852, -18533858, -29606284, 61269856, -35167728, 22497576,
-20187420, -31967442, 17576080, 9595494, 6972343, -5711233, 24314346, 12493523, -30752502, 21843130,
-25536802, 4926328, 4403952, 15374909, -310311, -30677340, 39950176, -22765474, 9117679, -16930224,
--3799436, 5006322, -7358353, 32476396, 7411503, -4291746, -7694434, -1695975, 6483253, -33049774,
-10604274, -17128330, -11450920, -7923141, 56908, -16206522, -7576859, 3955128, 34461744, 386010,
--7046431, -21846352, 9290551, 6060736, 1177358, 26659398, -6311455, -2746095, 31857920, 9997610,
-2024540, -30537218, -15814070, 19770272, 11226508, -28596966, 1111860, -65038688, -32032402, 58401356,
--13461501, 31618476, 41566692, 11822971, 7261179, 18781356, -7751879, -22788022, 12516608, 3920768,
--1237488, 26405458, 17375290, -18835042, -45175004, -9322227, 18788872, 5988795, -818728, 14825153,
--16876000, 25588342, -12188043, 9641665, 12212203, 5321465, 17816062, 13382581, 21541408, 2523293,
--5161477, 7796440, 20921860, -5264556, 18379238, 10925860, -11249056, 3764002, 9982041, 6578280,
-4379256, 13055627, 11265699, 4880157, 22042310, -6688875, 2983929, -2959233, -851477, -5328444,
-19699942, 15977815, 13294534, -5825050, 3061238, 22707492, -5202816, 16690780, 15553150, 199179,
-26611618, -23225036, 4100620, 35631048, 5399848, 10209137, -6466610, 25121800, 5789616, 9629854,
-34842384, -10768557, -58167280, 9878425, -6992207, 20031728, 6152004, -19738596, 10251013, 12007118,
--22466974, -24697136, -16506096, -41233832, -41475964, 28566364, -6589554, -42634528, -13049184, 4384625,
-14139569, 13525389, -26096222, -28303298, 2813204, 39438536, -18822158, 15240691, -26489748, 9456981,
--29887604, 19518478, 20595978, -14630269, -30758946, -21143588, -3400540, 12128451, -13183939, -8664560,
--10970957, -39120172, -33819648, 17804786, -28387586, -5753646, 10162966, -23408646, -37869800, 14540612,
-19926500, -2467459, -45597520, 20491826, 17945448, 57795764, 303869, 15243376, 11334956, -24551106,
-9476845, -7554848, -49842560, -7525320, 30524870, 7379291, -25200184, -62459560, 39560944, 50662896,
--14993731, 41015328, 47590920, 2610803, 2175401, 37760280, -24330990, 2069101, 62978716, -46225660,
-27008364, -39557184, -10908143, -3017215, 27118960, -8971113, 3940096, 15458124, -479426, -34931504,
-38763692, -6755984, -4560719, 6256694, 16173236, -26141856, 11563126, 7144678, -4020626, 8419747,
-9391483, -24145770, -3365644, 6116571, 12834436, 27194122, -2320893, -23051626, 11873974, 27946816,
--21949430, 27295590, -12792560, -2335389, -9533754, 30771830, -21023328, 7738458, 18751290, -12465606,
-4590247, 3962644, -17594870, 4473746, 7329899, -2618320, -13440026, 9334038, 10749229, -5385889,
-21580064, -32021128, 7811472, 10424422, 146029, 2864206, 4154844, 22796612, -5309654, 12883828,
--26446262, -82738784, 22180822, -9375377, 61703112, -21123722, -13872207, -24698210, -71238472, 32631550,
--41631120, -24023900, 987843, 61740, 54465016, -39031052, -27709518, 36183488, 21171504, 18918258,
--7095823, 18072686, -12996571, -17952426, -16931834, 42378444, 34855808, 55059332, -17807472, -20495584,
-652298, -3558381, 19858856, -33033130, 6766721, -34731252, 18250390, 34170760, 11373610, -28059022,
-18804978, -24739012, 55433532, 28432684, 7538742, 7536057, -8982387, -43734580, 24354612, -59338732,
-12021077, 11054172, 28614146, 23010824, -51654496, 15452755, -32688996, -19184008, 13560285, -5110474,
-18724984, 12228846, -47286516, 19128174, 42640972, 56893820, -16945256, 16780974, -23678692, 39906688,
--57200912, -3051038, -10785200, 17864380, 36893232, 53561464, -43386148, 10619307, -57908508, 36845988,
-75211320, -19312858, -52052320, -4246649, -39381092, 49588620, 12124693, -25489558, -7672959, 2763812,
--8999567, 35358320, 12858058, -20198158, 18585398, -28549722, 1328219, 26478474, -6089727, -32901596,
-35751308, -52405044, 14595373, -8072928, 20325932, -1514513, 12410845, -12249784, -7008850, 5093831,
-4015258, 5311264, 24193014, -25580826, -21875342, 929324, 5123359, -6117644, -27030376, -19605452,
-38100120, 10151692, -17823040, -20142322, -44806708, 52586504, 40779640, -16448651, -14816027, -31188442,
-523986, 39176544, 6932614, -16959216, -6606197, -9154186, 5728950, 3877819, 1476395, -5181878,
--2567317, 7073275, -1131187, -4376572, -3366718, 4583804, 1416802, 9460202, -4684736, -66025460,
-47392816, -6887517, -975494, 14627048, 13820131, 17579302, 5956583, 8176007, -22106734, 20938502,
-6767258, -24191404, 16583942, -10105521, 426812, 20453708, 13108240, -34077880, 19489488, -16546898,
-28512678, -20983062, 7806640, -11110544, 13691819, -10626823, 6720550, -15436112, 32673964, -3612068,
-1657321, 8701067, 11476153, -16936666, -2579128, 6507413, 11420855, 8931921, -10427107, 3265786,
-1250372, -33170570, -1910724, 7632157, 12701292, 4417374, 8422431, -29917668, 5424544, -2461016,
-3723737, 5942624, -4986457, 5577552, 5646809, 1985349, -6263136, -7348152, -1462973, 32981054,
--11077258, 5951214, 13331042, -7831336, 12725451, -14331769, 12294344, 5203353, -8289287, -14418742,
-9376987, -9160092, 7528004, -13051869, -9797357, -5640903, 16310675, -4791036, 2298881, 2305324,
--312996, 2892124, -11470784, 8485782, -7109782, 19600084, -18173080, 8049306, -10507101, 9322227,
--8426189, 7282117, 1060857, 12947179, -11110007, 5584531, -5270462, -175020, 3288334, 7257421,
--7727183, 1115081, -8400419, 12192338, -10120554, -3979824, 7504919, 1777043, -4483409, -2537252,
-8376260, 3994857, -17219598, 9157407, 1796907, -870268, -1003949, 2674691, -1345399, 934155,
--478889, 1340030, 1538135, 3704946, -4183298, 11914239, -15506443, 4250407, -2011655, 2531883,
--2132988, 3706557, -1333587, -2991445, -562104, 1373316, -3438121, 51835424, -3731790, -16790100,
--25591026, -11638825, -14362371, 18807124, 10884521, -13673565, 1147830, 1612760, 6152541, 845572,
-13032541, 4497905, 10267656, -3514357, -358093, -3074123, 4820564, 11123965, -10310606, -60130,
--5095442, 369367, 13571023, -7682623, 1337882, -3467112, 5358509, 2766496, -7418483, -2747169,
-7999377, -2440615, 13031468, 9266392, -13553306, 4364761, 2902861, 7136625, 3036542, -12816719,
-8711804, -2386928, 8474507, 6774237, -15289010, 4220342, 75699, 3467649, -1677722, -6708739,
-10954851, -2663954, 4991826, 282931, -3244311, 5078799, -6483790, -891743, 9147207, -6233608,
--7470022, 15209553, -9762461, 14191646, -1432909, -11445014, 23520852, -21525840, 18786724, -6614250,
--11185705, 11904576, -10987063, 3304441, 3875134, -10765336, 9146670, -1909113, -643171, 5844914,
--7455527, 9865003, -3128347, -716723, 2479807, -1636383, 3511673, -1604170, 616865, 2909304,
--2704756, 4627291, -471910, -2565706, 5703180, -8694624, 4712116, -3840238, -1726040, 5498632,
-526670, -1593433, 2901251, -2024540, 2882997, 1483911, -3974455, 2766496, 629213, -865973,
--610422, 2506650, 609885, 4582730, -3483755, 1345399, 668404, -2498597, 5105643, -1392643,
--704375, -25298432, -43661564, 55049668, 157315520, 24978456, 15157476, -114990768, -142377088, -45506788,
--28068686, 96324304, 146695680, 75618808, 21789980, -49328772, -106307416, -96799976, -81243600, 6495601,
-121512680, 101782136, 58229556, 19874424, -52140368, -67434208, -53709640, -51753284, -18371186, 24640764,
-33679524, 69919920, 49918796, 12196097, -17032230, -9906342, -56323128, -27259620, -28508382, -38434052,
-22825066, 43255152, 24890410, 62943284, 16614007, -14875619, -24247238, -41751376, -33130304, -5116917,
--10304700, 12896176, 25936234, 23242216, 16481937, 11341398, -5804112, -22898082, -16314970, -19034222,
-6067178, 22327924, 7266548, 5529234, -9746891, -19909858, -3813394, 10201, -367757, 16230681,
-14410152, 16268799, 6324876, -5528160, -17451526, -25116968, -25837450, -16699907, 17784922, 26491896,
-32720134, 22734872, -5778342, -12766253, -13680545, -26926224, -11989938, 9904731, 5115306, 4945118,
-7796977, 3835943, 2946348, -4123169, -5485210, 4315906, 9302362, -140123, -880468, -6396817,
--8946417, -4558034, -5461588, -3112241, 6880001, -1168231, 14466524, 18000744, 10307922, -6157373,
--10259066, -11367705, -14500883, -10495289, -14350559, 7701950, 19622632, 18016314, 10569915, 11274826,
-4184909, -10974178, -21633750, -22013854, -11273215, -2219424, 6925098, 15789374, 23040888, 19011136,
-3513820, -12138651, -20381230, -14836965, -4997732, 207769, 5508833, 3605625, 8662949, 11211475,
-3253438, -4759361, -6631967, -3634616, -2797098, -2614025, -810138, 856846, 5131412, 3191161,
-310311, -6979, -373662, -967978, -2421825, -2735894, 886374, 2241436, 1613297, -320512,
--107374, -259846, -778463, -897111, 475131, 438087, 727460, 233002, 355945, -464930,
--589484, -1054415, -642098, 246424, 1287953, 281320, 518080, 476741, 131533, -660351,
-18254, -678605, -1860795, -1241782, 1226750, 1447941, 1504849, 761283, 38118, -990527,
--404264, -636729, -335007, -603443, 261993, 47245, 219580, 94489, 739271, 363998,
-710817, 58519, -84289, -674847, -530428, -1053878, -476205, -245350, 821413, 700617,
-1255204, 605054, 204548, -974421, -830539, -923955, -242666, -271657, 722628, 524523,
-583579, -68719, 97174, -347892, 54761, -282394, 124017, -255551, 161598, -164819,
-217970, -199179, 176094, -146566, 273267, -143345, 193274, -186831, 167504, -221728,
-181999, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--2850785,
-10916733, 1292248, 2952253, 1063004, 1553168, -2618320, -6614787, -1257889, 3488587, 1264868,
--3275450, -440771, 2668249, -670015, -3941706, 1207960, -4541928, -2793339, -142271, 1270237,
--1291711, -1003949, 2814277, -3893388, -93416, 519691, 1894618, 1524713, 1442572, 4807679,
-2161979, -5923297, -1514513, -2679523, 755377, -129923, -446677, -3719979, -4877472, 6490770,
--2980707, 1606318, 1886564, 1646583, -6131066, -3461744, -1602023, 703301, -475131, -164819,
--557272, 1061931, 2346663, -3180423, -537, 1748589, 2009508, 2418604, 887985, 74088,
-2321967, 851477, -995359, -264141, 3765076, -2756295, -2939905, -1559610, -1173600, 3241090,
-1906429, 797253, -1188095, 3125663, -1368484, 1636383, -3645354, -314069, 292595, 795106,
-769873, -2916283, 810675, 2124935, 1063541, 390305, -252866, 2770791, 1315871, -237834,
-1766305, 1079647, 470299, -361851, 603443, 510564, 397821, -481036, 683974, 228707,
--530965, -395674, 966905, 250719, -71404, 54224, 59593, 202400, -860067, 676457,
--223338, 541166, -668941, -6176700, -3781182, 2685965, -6119792, -8559333, 1632088, 776315,
-1020592, 1293859, 1169842, -7354058, -1248225, 2182380, -4728222, 4960151, 4745939, 4143570,
--1703491, 412317, 1069447, 3180960, 674847, -73014, 576063, -2105071, 1941862, -739271,
--823023, -972810, 6028524, -3590593, 2057289, -2255395, -2014340, -2022393, 1566053, 3352222,
--3590056, -1736777, -1966558, 2461016, 2241973, 3722663, 2462627, 522375, 3188476, -2727304,
-1897302, 767725, 796716, 6804839, 1554241, 3377992, -5611375, -1475321, 2244657, -2756832,
-2589329, -1177358, -2097018, 750009, 4016331, 2767033, 1824824, -971200, 781147, 3054259,
--3719442, 4861366, -711891, 3987340, -1663763, 3293166, 3852586, 3310346, -1890859, -4859219,
--7256884, -4845797, 415538, -2533494, 4702989, 807991, 689879, 1291175, -3452080, -1034013,
--1583769, 1725503, -976031, -637266, 2038499, -2544231, -962073, 1028645, -1479079, 132607,
--1644973, -1253594, -1064078, -271657, 933082, 284005, 117575, -1731409, 10483478, 7463043,
-6187438, 5075041, 5805185, 2392834, -417686, -171262, -2105071, -683437, 7623030, -3357054,
--3378529, 5189394, 3920232, 4986457, -3486440, 1475858, -1298691, 1088237, 2273648, 3092913,
-490163, -2345052, -1675574, -3003793, -1026497, -1876901, -5354214, -705985, 4558034, -3581466,
--587874, 1620813, -2748242, -2567317, 2587181, -1440962, -3571265, -1983738, 2070711, -3129421,
--3933116, -1862405, -1153736, 1275068, -2739116, -5777805, 424665, -1002875, -782221, 1595044,
--4675609, -2347200, 103079, -2020782, 2603287, -719407, 1132261, -8485245, -2538863, 4708358,
--1864016, -4699231, 1396401, 762357, 1320166, -1787243, -6669548, -3093987, 7530152, 450972,
-2782602, 1529545, -1069984, 2230699, 3142842, 1255741, -1547262, -3659312, 1074, 834834,
--2717104, 1170916, -3525095, -424128, -2246268, -1163936, -2976949, -630286, -1700270, -2226941,
--1667521, 266825, -741419, 321049, -814433, 233539, -1504312, 1012002, 576599, -477278,
--278636, 1334661, -36507, -568009, -1341640, -751619, -612570, -166430, 120796, -32212,
--1549410, 14756971, 9152038, 8559333, 212601, 813896, 747861, -3572339, -7780334, -3004330,
-5980205, -4515621, 2741263, 7962870, 707059, -2573759, -939524, -1657321, -786516, 3201361,
-4663261, 131533, 1418413, 1846299, 3061775, 150324, -4150012, 1269700, -6725919, -2072859,
--796716, -1914482, -1171989, 820339, -1563368, -3586835, -2716030, -1305670, 353798, -1551020,
--4056597, 4873178, -1777580, 337692, -1213865, -3226057, 4075387, 11166915, 2749853, -3904662,
-6665253, 1499481, -1988570, 2002529, -1097364, -4318590, 64961, -1816234, 1714229, -3741454,
--6417755, 245887, 1116155, -7844758, 2383170, 1613834, 4420058, 2480344, 5827734, -1966558,
--3865471, -2299418, -1175210, 2813741, -991064, -5042292, 3475702, -2460480, -4543539, 3126199,
--4538707, -2508798, 1487669, -1657857, 1626719, -1093606, -1849520, 1518808, 3926674, -898722,
--1872069, -695248, 38655, 1363115, 2773475, 787053, -754841, -1016297, -957778, -329639,
-690953, -1973538, -649614, -578747, 3038153, 1526324, 2163053, -351650, 209917, 1644973,
-1147293, 797790, -46708, 283468, -299574, 854162, -511101, -406411, -7558069, -12109660,
--3636764, -6091338, 8691940, -2035278, -996432, 3166465, -7908646, -5680631, 4840428, -3928285,
--3527779, -266825, -268972, 780073, 3206193, -1395328, 1488206, -2148021, -1491427, -219580,
--1314260, -3563749, -261993, -823560, 3697430, 3617436, 3288334, -4400194, 2057289, 1388348,
-6096706, -3125126, -178241, -2151242, -4581120, 6512244, -6206765, -3148748, -2390149, 1475321,
-5513128, -5142687, 5701032, -693637, 3092377, 4634270, 806917, 3553012, -6694781, 1402844,
--2500208, 266288, -7094749, 51540, -2420751, -6470368, -4870493, 300111, 4750234, 163746,
--3399467, 5281736, -1808181, 3020973, -388158, -6716792, 9313637, -5879274, -1115618, -3382824,
-2351495, 3678103, 2526515, 3386045, 7544647, 5644661, -928250, 1107565, 3578245, 2143726,
--2645163, 3723200, 3002182, -656056, 1718524, -3839701, -5136244, -649077, -1637456, 2803540,
--3001645, -729071, -2885144, -773094, -1312649, -535260, 894964, 974958, 616328, -233002,
--709743, 1637456, 906775, -1908576, 1322313, -24159, -4452808, -510027, -1591285, 2444910,
--666257, -416075, 948651, -605590, 904091, 1888712, -120796, 1182190, 1400696, -389768,
-528818, 2706366, 467615, 3145527, -8428336, -12265353, 1467805, 920734, 787590, 7741142,
--2435783, -8636642, 1008244, 894427, -2148558, -590558, -7402913, -1582159, 1040456, 1016297,
-8506720, -1569811, 7634305, -1919314, -1837709, 529892, -7366943, 3089155, -2711198, 4451197,
--1154273, -2022930, -2670933, -1457605, 371515, -5688148, 9766219, -6797323, -10759430, 3146064,
-603980, -7732015, -2150705, -14745160, 357019, -5318244, 32749, -5765994, -4489315, 689342,
-623844, 2417530, -4527433, 3591667, -5122286, -10217190, 1308354, 2691871, -2960843, 3204583,
--1630477, -5719823, -4838818, -6932077, -3135326, -838056, 1220845, -2153926, 6432788, -93416,
--1874753, 435939, 484794, 1202054, 1087164, 627065, -5972152, -5797132, 1305133, 3905736,
-2478733, 546535, -1239635, 4878009, 2849711, -2452426, -1620276, -5719823, -2212982, 2371896,
-1275068, -3177202, 1326608, -978179, -806917, -1559610, -1672890, -741419, -2238215, -1899986,
-1053341, 329639, 1487132, 2269353, 279710, 1972464, 193810, -1529008, 2085207, 1111860,
--316754, 151398, -1056025, -1285269, 53687, -41876, -1194538, -88047, -306553, -207769,
-70867, -428423, 1384590, -2243584, -250719, -777926, 188979, 566936, 1416802, -105764,
--18823768, -4697621, 721018, -4778688, -3532611, -5983427, 1520418, 2124398, 4248260, -3215320,
--4041027, -4523675, 2234457, 5068062, -2552284, -2152316, -1321776, -767189, 2362769, -10472741,
--2625299, 5932424, 1893007, -3061775, 1083406, 5254356, -554588, -1330903, 1795296, -323196,
-12826383, -5529771, 3106335, 1041530, -5461051, 1788854, 1167694, -6159520, 4309463, -8754754,
--896038, 7756711, 1658931, -221191, -1677722, -5984500, -5217849, 1385127, 3286187, -2251100,
-1575716, 6425808, 3134789, -2664490, 3910031, -5698348, -13460428, -1772748, -5940477, 3732327,
--3824132, 9526237, 4717485, -437013, -1615982, -12349642, 3842385, 4721243, -3841848, 7547868,
--5917928, 2303176, -9881109, 4560182, 3393561, -11192148, -7176891, -2296197, 2710661, 3716757,
-8102456, -1133335, -447750, 5293547, 1173600, 26307, -2416993, 1210644, 1173063, 1588601,
-1682554, 431107, -271120, -1021129, -1212791, -3022583, -2562485, 2005750, 1371705, 1030255,
-2441152, -1016834, 1151051, 1264331, -688805, 2139431, -340913, -27917, -565862, -2438468,
--585726, 2786360, 574989, 2065879, -826244, 751619, -1154809, 3311957, 262530, 2775086,
-1177358, -1381369, 673773, 4627291, 8022999, 18249852, 19654308, 3840238, 5960341, -23622,
-2896956, 98784, 2167348, -5307506, 2537252, -3327526, 4443681, 4030290, 10181757, 1481764,
--1920924, 6241661, 4669703, 7523172, 494995, 4656819, 2867965, -2405719, 2486786, 11236171,
-1923609, -4939750, -2502355, 8302172, 5300527, 3964792, 7907035, -6036577, 2467459, 9212168,
--9096741, -11087995, 3785477, 5864778, 9762461, -4219806, -7039452, 5776731, 2255932, -919123,
-3764539, -1503775, -730681, -97711, 13846438, -4994510, 2929705, -3344169, -1967632, -1651952,
-7298760, -981937, 16099148, 7610145, -7492034, 8876087, 2106682, 4122095, 2081985, 1906429,
-2341831, -2945274, 5549635, -12634720, -3157875, 5747740, -12666395, 4376572, -10199474, 2418604,
-11636677, 2815351, 106837, 3132642, 1277753, -3097208, 962073, -3289408, 569083, 2630131,
--7524783, 4416300, -1206886, -1842541, 718870, 2391223, -1823214, -3078955, 1242856, 2782602,
--1263794, -2600603, -2353105, -1501091, 1283658, -1832877, -1431835, 1742146, 2640331, 1142461,
--1059246, 1590749, -918049, -3963718, -1571421, -46171, -1793149, 1153199, 1058710, 1685238,
-2946885, 3993246, -1638530, 5625871, -1717987, -3249680, -867583, 2013803, 680752, -3300146,
--1905355, -2389076, 30449708, 5063230, 4958003, -9058086, 13241384, -4532801, -370978, -3629784,
-924492, -8679592, -445066, 3811247, 1151051, -7107634, 8804146, -2269890, -4271345, 1051193,
-2893734, -9092446, -12312061, 4999342, -4970888, -7576859, 1647120, -226023, -3602404, 6331856,
--6373195, 1981054, 6534793, -1307818, 9433896, 2727841, -11515881, -12422656, -5040681, 610422,
-2421288, -9854266, 3690451, 3338800, 2033667, 2932389, 4463545, -10234907, -4823249, 2736968,
--11017665, -4234838, -73551, -11789685, -6025839, -4149475, 2546916, -6125697, -12426414, -6162741,
--6548752, 14446123, 7260106, -1371168, 2197413, -4095788, 11824045, 13777718, 1765232, 9176198,
-7017977, 2517925, 1880122, -5575405, -973884, -4945655, 6976638, -9099962, 502511, -2327872,
--13488882, -4329864, -1771137, 7248831, -6572374, 3542811, 3402151, 1209033, 919660, 3037079,
--3067144, 2385318, -1767379, 2668249, -517007, 4035659, 1444720, 171799, -2007360, -1014686,
--5138929, 2673080, -531502, 4350265, -4153234, -204548, -238908, 2512556, -263067, 2222646,
-1242856, 1117765, 1505923, 482647, -2709051, 3180423, 4522601, -2394444, -2884071, -3840775,
--1287417, -444529, -1086090, 160524, -755377, -20623896, 13919989, 22358526, -16778826, -9985799,
-4594005, 4010426, -3416110, 7342784, 1981591, -6255620, -7655779, -163209, -2474438, -5462125,
-2769717, -2517388, 333934, 6171331, -8342974, 1737851, 1089311, -4954782, 680752, -7861401,
-1503239, 11498164, 5843840, -1173600, -3733400, -965831, -6607807, -7022272, 3408057, 5799817,
--1874216, -3249680, -2332704, 3456375, 5764383, 2756832, 10593000, -5754183, 4334159, -2790655,
-1003949, 6600828, -2431488, -2134599, -12702903, -1976759, -9848360, 4888747, 3314641, 12563853,
--10854993, -4024384, -10509785, -17253958, -2947421, 7134478, -11944841, 2588792, -1377074, -8723079,
--10288594, -12942347, 17243220, 598611, 10212895, 7500087, 8664023, -4012573, -11584601, -8776766,
--10848014, 3701188, 8369281, -8134131, 3730716, 8941048, -6178311, 962073, 7221451, 8322036,
-1932735, -3082713, 3511673, -1582696, 1831267, -9029095, -912144, 3351148, -3131568, 1060320,
-459025, 294742, 1902134, 3280281, -3643206, -1361505, 1949378, 2906082, 736050, 1357210,
-2825015, -739808, 3058554, -2783139, 2055679, 3095598, 3457449, 278636, -1480153, 2673080,
--2406792, 565862, -649077, -2070174, -1097364, -2048163, -660888, 758062, -2511482, -6682969,
-2154463, 3420405, -16327855, 11842835, -1662152, -5870684, 9785009, 3703336, -9924596, -13749264,
--5585605, 205085, 73014, 831076, -5178120, 15977815, 6336151, 4930623, 3427921, 5120675,
--5043902, 1337346, 2910914, 2448131, 13975287, 1611150, -21422760, 2733210, 8568460, -7781407,
--12159589, -2406792, -6721087, -3710315, 732292, 15081778, 8706436, -1417876, -611496, -4420595,
--13388487, -4345433, -11110544, 7820599, 10300405, 216359, -6162741, -2065342, -2719251, 4923643,
-6443525, 7215008, -16821240, 3250217, 268972, 1517734, 11183558, -6650220, 4394826, -6068789,
--4723391, 1257352, 7199976, 13573170, -2469606, -8716636, 2506650, -15724412, 12253005, 6820408,
--1895154, -6486475, 3060701, -3621731, -8124468, -6455873, -7402913, -3357054, -1836099, 483184,
-6306086, -5092221, 17968532, 766652, -3154117, 1049583, 5096516, 239444, -586800, 5932961,
-3709778, 3048890, -159451, -2907156, -2624225, -715112, -803696, -2695629, -7841000, 3898220,
-3336653, -2856690, 625992, -4180614, -3496640, -1484448, -1220308, -170725, 6142877, -1420560,
--2477659, -1139777, -808528, 3947612, 6871948, -2472828, 3658775, -1200980, -5007932, 5180268,
--5392869, -4106526, -3093987, -4151086, 401043, 2988224, 1121523, 3059091, -425202, -1333051,
--776315, -3413962, 1472100, -2027761, -4248797, 2659122, -1977296, -2020782, -1938641, -261993,
--1565516, -128849, -1367410, -1098438, -215285, -514322, -7397545, -1302449, 7330973, -13463112,
--4345970, 9386114, -11687143, -751082, -1532230, -1096827, -13545790, 13460964, 5247913, -8683887,
--1976759, -3491809, -3744138, -19554450, -3214783, -8714489, -22944790, 5219996, 3070365, -9842991,
--8891119, -11672110, -14166413, 12123082, 6194954, 12741020, 18254, 26292180, 797790, 13925895,
-18188112, -1753957, 5267241, 19573776, -13337484, 6315213, -8206609, 13590350, -4568235, 26086020,
-11243688, -7594576, -12504797, 2406256, 5524939, 11113765, 2448668, -8890582, -2575370, 8903467,
-18651970, -7573101, 12364137, -4264903, 7373385, -14545980, 5459441, -7727183, 5467494, 1373853,
-1524177, -2314987, 11351599, 16869020, -30378840, 9480603, 5783711, 4846334, -5913633, 4338454,
--21928492, 2230699, -76236, -2948495, -8664023, -6729677, -7558606, -1667521, 14852534, -8424041,
--5648956, -12013024, -17180, 11407433, -5987185, -5759015, 8051990, 85899, 5714991, 1770063,
--1995549, 545998, 2248952, -5532992, 2516851, 1591285, -5587216, -3874597, -2986076, 1888712,
-2957085, 3948686, 9881109, -704912, 7358890, 4261145, 2054605, -4791573, -2126009, -7437273,
--4053376, -908922, -3146064, -3322157, 3827890, 2921652, 4670240, 7064148, 715649, -1107028,
--1387811, -3863323, 2044941, -797790, -521302, 2615635, -3500935, 14851997, 15925202, -3527242,
-16555488, -915365, -3370476, 1233729, 9338333, -3539590, -4131222, -1994476, -11651709, 1854889,
--3291019, 18392660, 12219719, -8868571, -9255655, -17595944, -6350109, 12658879, 22997402, -10504416,
-7150047, 1466731, 3084324, 12422119, 9006546, -18025978, 3633006, -6480032, -3583077, -7477001,
--3982509, -7887171, -17242146, 2963528, 11639361, 4368519, 27174258, -6658810, -3673808, 18765786,
--6802155, -1118839, -4138738, 4921496, -20621748, -13344463, 7252053, 15406048, 22613540, 26847304,
--19717122, -10330470, -975494, 8936216, -825171, 30472256, 8562017, 4497905, -23633058, 1577864,
-235686, 11391864, 15015206, -11209328, -3631932, 4607963, -4795331, -66572, 17051558, 6063420,
--16732656, 4317516, 8922795, -8130373, 26483306, -9201431, -14063334, -19896436, 14724222, -3237332,
--16581258, -13258027, -2957085, -677531, -6558415, 333397, -7145752, 1343251, -9973988, 644245,
-4971962, -3520263, 3929895, 711891, -6004901, 624918, -28454, -1218160, 715649, -4174708,
-5055714, 2147, -2477123, 5658083, 5860483, 217433, -1528472, 2508798, -5388037, -2308008,
--4314295, -862215, 4576825, -3580929, 2044404, 4412005, -8135742, -2961917, -1618129, 1330366,
--1476395, 3519189, 8025684, -2261300, -4674535, -2327336, 5212480, 1451699, 563178, 4115116,
--2304787, -1703491, -1415729, -2309082, -1845762, 3610457, 31375272, 14790257, -8170639, -2705293,
--28840706, 2190970, 7700877, 1955284, 43151536, -5511517, -3215320, -18996104, -16313896, 6650757,
--13333726, -8236674, -8931384, -6102612, 10744934, -7062537, -12263742, -10678362, 992137, 10733660,
--13878650, 3060164, 6315213, 1321239, 15575162, -1880659, 1241782, -15883326, -22229140, -9240622,
-10210748, -12354473, 2991445, -10388452, -38830264, -20998632, 11651173, 745177, -22251152, 3342558,
-31005368, -1523103, -804770, -12199855, 6780680, -13455059, -23950886, 505196, 3630858, -9393093,
-4586488, 8909373, -2232846, -7936026, 6445136, 8273718, 15538118, -9061307, 11669963, 14870787,
-6291590, 25944286, 2900714, -16320876, 18977312, 1028645, 3153580, -3584687, -3855807, 11620034,
--11652246, -1791001, 28880434, 22553948, -14070850, 14390288, -4229469, 26707180, 11266236, -9431211,
--21472688, -1060857, -7880728, -9432822, 5998459, -8513162, -302258, -2277407, -7541426, -12681965,
--2510409, 10489384, -11485816, -71941, -7157563, 954557, 4414153, -4760971, -13437879, -2494302,
--6398965, 8006893, 4859756, -3397856, -8925479, -3815005, -9601399, 5592048, -4759898, 2972117,
-3654480, 5320391, 4271345, -7547332, -5341329, -8462159, 2360622, 5192616, 593779, 10480257,
-11164767, 5973763, 4466229, -3062312, 5901822, -854162, -3010772, -22802518, -23571318, -28825674,
-39631812, -22069690, 5479305, -1500554, -12195560, 19677930, -23171348, 9870372, 42135776, 25455734,
-6284611, -34190088, -1591822, -22652194, -11033234, -20706574, -1622424, 5532455, -3357054, 15793668,
--7399155, 2403034, 8268886, 22185654, 3453691, 2836826, 27507654, -18149994, -2200097, 11727945,
--4903779, -14129369, -8879308, 13440563, -11592654, 5493263, 23609436, -6721087, -41589780, -2806761,
-10850161, -51756504, 31440772, 23732378, -19185082, 31712428, 22014392, 14023605, 33504504, 483184,
-17393544, 1736241, 2374043, 11715060, -20699058, 20798380, 28924458, 21755084, -22306450, -4654134,
-31758598, -15447924, 25262460, 22605486, 53716084, 31967978, 2214056, 3485903, -6514392, 6489696,
-9675488, -31117574, -43856984, -15606837, 4237522, 1458678, -5967320, 34433828, 16717623, 6336688,
--14826764, 13546327, -10387915, -13856638, -6582038, 15497316, 18669150, 3348464, -2875481, -3687766,
-962073, -21617644, -4660577, -5703717, 7362111, 3825742, -10703595, -8637179, -89657, 16756815,
--4277788, -6667937, 888521, -6896644, -16691854, 8433705, -3246459, -6843494, -9594957, -75699,
-6150393, 988379, -30000884, -1854889, 15482283, -2403034, 1077500, 2388002, 4835597, 12662637,
-10656351, 336618, 355945, -5012227, -1077500, 2487860, 24160802, 29552060, -58117888, -53505628,
-23430658, -15476915, -16644609, -7133941, -20145544, 7080791, -32732482, 41408316, 15786689, -17435956,
--199179, -17054778, -12557948, -13767518, -15444702, -10241886, -39502960, -35770100, -6467147, -8207146,
-2456185, 3282429, 7089918, -2605972, 5254893, 6548752, 17853106, 19462644, -7177964, -9969693,
--11379516, -9906879, -22253300, 33341832, -11597485, 8076686, 25026238, 23387708, -8693014, -10118406,
--18484466, -12341589, -15137075, 25626460, 2954401, 3113315, -31567472, -11327439, 46167676, -4505958,
-42999600, -8687645, -15800648, -10151155, -17888538, -18593450, -3173444, 170188, -25279640, 2112587,
-12430172, -1060320, 9823127, -58910844, -23557358, -16505022, 31515396, -7486665, 5393942, 10674067,
-49342196, 13923747, -4272956, -5000416, 42529304, 25540024, 6493454, 8259222, -1903207, 33581276,
--13727252, -19119046, 10615012, 15803332, 28287192, 26098906, -15002321, 17728552, 13508209, 14300094,
-4520990, -10140955, -19847044, -17034914, 10933376, 14817637, 8171176, 5375152, 17715666, -1641214,
--4524748, -913754, -1153736, 9164386, 5751498, 11939472, 21006686, 14718853, 23989002, 6506876,
--20981452, 6881612, 6005975, 18639084, -27917, 14643691, 6514392, 14097693, 653909, -26616450,
--3124052, -5712844, -1455994, -11895449, -6794639, -30775588, 63933808, -20638928, -12850542, 37904160,
--24039468, -36267240, 33628520, -48824652, -14139569, 11512660, 8366060, -34060700, -13379360, 29234232,
-167504, -5767068, -19037980, 22939958, -22787486, 1498944, 18041546, -6041409, 16563005, 103079,
--8217346, 5538361, 3914863, -9912248, 15745887, -8702677, -3544422, 4683662, -338766, 950798,
--2990371, 4649839, 9981504, 16145319, 23265838, 11385421, -9649718, -2728378, -14803679, 13610214,
--4942434, -21399674, 4985920, 33823, -12189654, -29242284, 20522428, 1494112, -13531831, 32920924,
-1872606, -10280541, -5975910, 48783848, -45727980, -49279916, 29979946, 46747496, -86427624, 333397,
--32003948, -29131690, -12872554, 31343598, -24303610, 41507100, -5904507, -1136556, 55906516, -15904801,
--43300788, 53631792, 63303524, -61614528, 68728064, -23294292, 1692754, 56680148, -19014358, -21891986,
-15587510, 15118285, -7297687, -3032247, 10560251, 1932198, 1364726, -13699872, 18711562, -74088,
--1193464, 166967, 2543695, 8244190, 5149129, -7024419, -7405598, 7644505, 18689550, -16358994,
--14894947, -4253092, 19583440, -926102, 10502806, -3080029, 4434017, -181462, 4545686, -2495913,
--3318936, -23337778, -9562745, 5485747, -8196945, -2626909, -8048769, -12774306, 19644644, 11850352,
--33735356, 13194140, 17779554, -3806415, 76773, -12319577, 17642116, 37699612, -17431662, -24453396,
--6270116, 5694590, 39033736, 28547038, -9734543, -3416647, 12443057, 31134754, -10113574, -2096481,
-19674708, -25067576, -20893942, 16629576, -10914049, -8752606, -10018011, -1259499, -16749299, 1053878,
-12137041, -7517804, 9465034, -8374650, -4671314, -5388574, -23300734, 3236258, -9197136, 14240501,
-31432182, 1427540, 15870441, 12545063, 1594507, 5587216, 10124312, 32648194, -22874996, 15638513,
-14412837, -17128866, 11708081, 10720238, 3934727, -15227807, -29488708, -30523796, 10420128, 10590852,
--10982768, -50831476, 41575284, -14107894, -21700860, -13056701, 41829760, -19717658, 45705432, -253940,
-15668578, -42838540, 40727564, -18694382, 18316424, -5702643, -57773216, -18615462, 11973832, -36244156,
-37511708, 3722663, -52907556, -60317448, -30389042, 41502804, 10838887, -37536404, 45989972, -49138184,
--1865090, 88028040, 13760538, 4771172, 9336722, 6446209, -22603876, 23884850, 2365990, 12086575,
--14967424, 22951768, -12219719, -12456479, -9632001, -1540820, -24696, 6787122, -1705102, -3648038,
-5187247, -8319889, -16075526, 14976551, -4960151, -2848637, -19174344, 8834748, 5086852, 8375186,
-3050501, 9701257, -6658810, 2114735, 28169080, -3420942, 1023276, 14326400, -14851460, -3508452,
-1570347, -1782411, 11458436, -11259257, 12785581, -4406637, -30219390, 1795296, -7277822, 13682155,
-10668699, 9286256, -10496363, 12161737, -19442244, -36686536, -17180, -38984344, 10567230, -3352222,
--7178501, 13211319, 21432960, -13737453, 2917894, 23875186, -18803904, 32335198, -4489315, -35330936,
-30212410, -14518600, -6703370, 27182848, -34892852, 9247601, 383326, 12687333, -5658083, -12640089,
--53157736, 12234751, -22067542, -53097608, 64071784, -43198780, -18251464, -8515310, -14861124, -32594506,
-18104360, 44438952, -27692876, 12518219, -40069360, -22473416, -22935126, 20107964, 3368865, 58271968,
--10261751, -4810900, -17618492, -50180788, -194884, 24453934, -18818936, 20527260, 24390046, -20775294,
-1814087, -17717814, -74457552, -38903276, -23104240, -77945064, 49556408, 65650184, 30598958, -66100084,
--53413288, -118582976, 16860430, 140959216, 64918432, 24890410, -37352256, -130084896, -29840896, 30083562,
-88599272, 89115200, -60890288, -51290500, -24110872, 11587285, 5825587, 96792992, 1307281, -11864847,
-7558069, -9669582, -23977192, 33994128, 5781563, -7390028, 18513994, -15539729, -26720066, 18599356,
-15831786, -45024144, 29896194, -6838662, -10256919, -24058796, 25040734, -24317568, 28708098, -14458471,
-29386704, -35260072, 13656922, -9981504, 70867, 25193204, 41103372, 11565810, -15835008, -11174968,
--3003256, 22719304, -4092567, 32751810, -26232586, -20557860, 9051107, 32434520, 3394098, 19652696,
--26386668, -7839926, -8767639, 20141250, -1759326, 2996814, -6166500, -56150792, 40827960, -8283918,
--8521215, 667331, 18577344, 9664, -3149822, 13157632, 4984847, 4160213, 21857088, -13964012,
-195958, 10838887, -3546032, -2360622, 13912473, -12922483, -2705293, 3486440, 21672404, -14422500,
--9652402, 11608760, -210990, 6374269, -20767778, 27378806, -6250251, 9024800, -5700496, 3245922,
-15451682, 6321655, -3192235, 12666932, -4593468, 12807056, -9992778, -1094143, 13901199, -3440806,
--5284958, -27668716, 3122441, 20823612, 2560338, 9592273, -13499619, -4709432, -7945690, -9012452,
--3223910, 14980309, -5240934, 9007620, -11709155, -14710800, -5837935, 3113315, 28308130, -11037529,
-13059922, 531502, 3124589, -13979045, 7813083, 14210973, 1124745, -13522705, 10558103, -9111773,
-7191923, -5676873, -3545496, -5442798, 2240899, 9882720, -4783520, -2911451, 5056250, -907312,
--7387881, -1952600, 7947837, 6153078, -6357089, 845035, 7296076, -6442, -3867618, 827318,
--6394670, 4765266, -59593, 2295123, -2704219, 1029182, 4786204, -2495376, 5546951, 704375,
-5094905, 3319473, -7257421, -8031589, -2245731, 13263933, -8242579, 9130027, 7917772, -5782100,
--13598403, 10324565, -8588861, 11703249, -723165, -2263985, -4529580, 1722282, 2397129, -1000727,
--1192390, 746251, 1615445, -5630166, 53195316, 10498511, -28427314, -20284594, -31403190, -10028212,
-6105833, 16653736, -5167920, -6804302, -5766531, -5656472, -5250598, 7585449, -3828427, -1117765,
--1634772, -5584531, -1275068, 8344048, 1248225, -2475512, -8342974, 9584220, -12445741, 7296613,
--4416837, -12305081, 95563, 5544803, 6328635, 4876399, -7201587, 1572495, -2281702, -4007205,
-14805289, -13187697, -2360622, -573378, -870268, 1347009, -2162516, -7759396, 6538014, -12275017,
-11709691, -1743757, -8163122, 2799782, -4194573, 10354629, -6039261, -3701725, 11246909, -10075993,
-3529926, -4836133, -1070521, 8575439, -6107444, -2464238, 7742753, -5312338, 2062658, 773631,
--6225018, 15206332, -13263396, -1152662, 5895380, -3398930, 9764608, -4428648, -2110977, 2530810,
-3248069, -1063004, 2194192, -874563, -4274030, 3854196, 34897, 366146, 2159295, -288300,
-3076807, -3075197, 932008, 600222, 723702, -387084, -1853815, 2474975, -316217, -664109,
--1756105, 2187749, 3620658, -1221918, -1791001, 1108638, 2133525, -2644626, 2224256, -1996623,
--1672890, 5722507, -834834, 2107755, 3062312, -3971234, 9790378, -3207804, -467615, -498753,
--5581847, 5814312, -3591130, -5836861, 5229660, -25178172, -37771016, 49514532, 154568896, 13208098,
-13481902, -105378096, -133237400, -27790050, -28198070, 78477104, 133639520, 68540696, 13228499, -48365628,
--94039384, -66421668, -47443820, -2485176, 65125664, 95101312, 51438140, 11759084, -33318208, -59299004,
--33160906, -31955630, -29876866, 18885508, 38789996, 38180648, 38517268, 9234717, -16648367, -6863895,
--25319906, -39709120, -4362076, -11852499, -7974144, 35823248, 20744692, 29925184, 18197240, -13589813,
--32622960, -7880728, -21189758, -3293166, 14886894, 4536559, 8062191, 16183437, -8170102, -11503533,
--2603824, -6763500, 6578280, 10446434, 609885, 12898861, 7703561, -13562970, -12993887, -20784958,
--17721572, 780073, 21479132, 32480690, 15695958, 4101694, -7505456, -21755084, -3684545, -24528558,
--14996415, 11540577, 9108015, 27460948, 9303436, -6994891, 8144332, -14243722, -24656870, 4345970,
-6318971, 8282308, 7711614, -1548336, -3033321, -2365453, -10218264, -7874823, 5445482, 8382703,
-8489540, 8555038, -2311229, -8268349, -5420249, -3173981, 280784, -170188, -9290014, 2398739,
-11843909, 6359773, 7396471, -2178085, -11785390, -6881075, -6928319, 2743947, 8384313, 5492190,
-5209259, 2232846, -1621350, -8979703, -11766600, -5408975, 804770, 7337415, 11763915, 7169911,
-7284802, 4563403, -7343857, -13770202, -17611514, -11453067, 5042829, 9943386, 12964359, 17875118,
-5523865, -5325760, -8915815, -7279970, -5322002, -5087926, -5100274, -1471026, 4103305, 7919383,
-7060390, 5502927, 3918621, 926102, -4853313, -8600135, -8225399, -4184909, -49929, 3730179,
-5093831, 4672925, 2487860, 1524713, 624381, -717260, -3099893, -3832185, -3122978, -1045288,
-1347546, 2326799, 1929514, 481036, -499290, 372052, 323196, 528281, 221191, -743566,
--1465658, -465467, 770947, 235149, -1199370, -609885, 351114, 301185, -155156, 956167,
-2083059, 1921998, -816581, -2188286, -1661079, -549756, -84826, -14496, -187905, 651761,
-1414655, 1401233, 214212, -270046, -246424, -579821, -1079647, -862752, -547071, 243203,
-555661, 992674, 790274, 294205, -211527, -266825, -624918, -544924, -489089, 25233,
-382789, 657130, 253940, 87510, -261993, -265214, -382252, -9127, 214212, 388695,
-97711, 89121, -155693, -163746, -266825, 10201, -2684, 128312, 16106, 113817,
--43487, 49929, -78920, 36507, -69256, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
-1235877,
-3443490, 2669859, -881005, 2043868, 987843, 5901822, -1023276, -165893, 752693, 4316979,
--847719, -4520453, -2091112, -4339528, 1061931, -1549946, -355409, -554588, 1052267, 410706,
-885300, 2502355, 4618164, -2057289, -1129576, 914291, -2172180, -307090, 3602941, -1961190,
-4452271, 452045, -1592359, 2947958, -4029753, -1038845, -2806761, 3937948, -114890, -1461363,
--1069984, 42950, 3667365, 143881, 4413616, 1690607, -3623879, 2932926, -1583232, -2711735,
--2211371, 3015604, -627602, 9616969, 1022739, 2415919, 1752347, -4485557, 68183, -663572,
-1175210, -2547989, -1719061, 5011153, 4108673, 369904, 1709397, -460635, 2558190, -4137127,
-424665, 3104725, 1960653, 315143, -316217, 2212445, -3505230, -1618666, 3739306, -2457258,
-798864, 1817845, 2213519, 677531, -2801393, -1871532, 1482838, 325344, 1470489, -446677,
-426276, -1402307, -74088, -699543, -408022, 797253, 1542430, 645856, -888521, -348429,
--599685, 360777, 945430, -557809, 699006, 507880, 983548, -140123, 1178432, -477815,
-298500, 719407, 924492, -7346005, -6619082, -4129074, -3748970, -3259880, 1252520, 4624069,
-9445170, 1802813, 2439005, -27917, -6735583, -2829847, -2500208, -6063420, 9423695, 2494302,
-3744138, 2576981, -2081985, 949188, 9021042, 3590056, -2121714, -184684, -2188286, 178241,
--4174708, 2499671, -1317481, -1882269, 356482, 4781373, 505732, 1660005, 3002719, 4143033,
--7447474, 83752, 1890323, 4320200, 6657736, -3717831, -752693, -1808181, 5552856, 2995203,
-3580392, -606127, 1659468, 11094437, -7017977, 1393717, 652835, -4704600, 1997160, -6567542,
--883153, 1668595, -1420024, -9895605, 2769717, 669478, -2673617, -2752537, -459025, -1500554,
-3335042, -3148748, -1391033, 959388, -107374, -3063922, -150861, 2484639, -4141959, 352724,
--1133335, -1006633, -1292785, -744103, 625992, -2427730, -1823751, 343061, -1450625, -1924145,
--1970316, -688269, -1311576, 2384781, -2123861, -613643, 331249, 1190243, -148713, 66035,
--747324, 129923, -1278290, 937377, -859530, -852014, -255014, -1868848, 9994389, 833224,
-3610994, -456340, -2632815, 171799, 7033546, 3537443, 4552129, 7188165, -3155727, 31139,
-7058242, 2202781, 3121904, 357556, 901406, 4072166, -3686693, -1138703, 5257577, -3594888,
-2077154, 2930778, -2188823, 2143726, 7036230, -3358128, 2621004, 515933, 308164, 50466,
--1422708, -4816269, -1445257, -4041027, -387621, 1636383, 3386582, 3506841, -605054, -6029597,
--517007, 8713952, -3213709, 1731409, -1541356, -9240622, 5405217, 1317481, 4020090, -701690,
-4573604, 4399121, -7808788, 3097208, 259846, 2905546, -560493, -5521718, -243203, -802085,
--991601, -1062468, 3521873, -41876, 700617, 7087770, 1393180, 5631239, 197032, 527744,
-1097364, -3121368, -4870493, 3325915, -3682935, 2180770, 1385127, -208306, 2342368, -2483028,
--1391569, 1549946, 93416, -4730907, 1533303, 544924, 623844, -966368, 2058900, 183610,
--804770, 2268280, -507880, -206695, -1885491, 668941, -935229, 318901, 25770, -288837,
-466541, -729071, 1242319, 276489, -472983, 349503, -279173, 127775, -45634, -762357,
--61203, 16333761, 9126269, 13981729, 4495757, -5750425, 2934537, -2556043, 366683, 1388885,
--11916387, -3135326, -3297461, 3106872, 4651450, -1889249, -294742, 1608465, 357556, 8549669,
--956167, -8884677, 2890513, -5119064, 3950296, 4566087, 3595425, 5313949, -1280974, -1777580,
-2126009, -1533303, -2086280, 1565516, -1395864, 3212636, 4522064, -1905892, -6879464, 2267206,
--6689949, -4250944, -846645, -13848585, 132070, -2290291, 5449777, 5260798, 2512019, 8579197,
-8570607, 3860102, 1909650, -556198, 419296, 549756, -3884261, 8023536, -1057099, 2836289,
--2517925, -2961917, -1087701, -4472672, 4017942, -2027225, -1673427, 7879118, -6488622, -1915019,
-1664837, -2899103, -889058, -156229, 2749316, 3313567, 2183991, 5644124, -1801202, -1421634,
--786516, -3403225, 1869385, 3664144, 4922570, 9664, -715112, -936840, 88047, 1163936,
-1063004, -1360968, 1661079, 92342, 1209033, 1114544, -162672, -266825, 2143189, -484794,
-1103807, 991064, 1021129, 998580, -556735, 920197, 3602404, -129386, 227096, 556198,
-2676838, 612033, -532576, -1722819, 1433445, 1159641, -570157, 617938, -6043556, -14448270,
--4947266, -1644973, 2185602, -1925219, 4480188, -1099512, 7138773, -6440304, 3846680, -1700270,
-13003550, 5251135, -2677912, -5647345, 3106872, -7975218, -4066260, 2889976, -2638721, -4808216,
-9028558, 3583613, -393526, -4238059, -5446556, 3651259, 3019899, 2696166, -129923, -1503239,
--3323768, 5124433, -6729140, -3047816, -208306, 4751308, 3830574, -459025, 5470178, 569083,
--2400887, 986232, -2391223, -2705830, -2911988, 3675418, -2663417, -188979, 5099200, 7358890,
-7737921, 3032784, 2810519, -586800, 4428648, -1824287, 6323266, -1164473, 4070555, 2974802,
--2453500, 240518, -2697776, 2946885, 2746632, 983548, -852551, -5299990, 3801046, -5760088,
--572304, -6225018, 2378338, -520765, -471910, 1108638, -5108327, 181462, 1484985, 8433705,
-2881386, 1374926, 2141578, 3260954, 1590212, 1670205, -2399813, 1858647, 1577327, -3524021,
--161061, 146566, 875636, 1450088, -1582696, 1067836, -976568, 205622, -74625, 2114735,
-362388, 241592, 396748, 695785, -307090, 1919850, -922344, 707059, 897648, 1852742,
-1035624, 2581275, -1737851, 949725, -297963, 2981244, 1298691, 1053341, -239444, -435402,
-385473, -598611, -472983, -1997697, -6672232, -13990856, -11310260, 716186, -9664750, -4745402,
--13684303, -7269769, -8343511, 3330747, -4461398, -5910949, -2035815, 340376, -3524558, -13267154,
-3561065, -2333241, 1329829, -5995775, 5990943, 2238752, 132607, -5331128, -2384781, 6816650,
-4634270, 321049, -1012539, -4540854, 2844879, 1495722, 2946885, -5439576, -505196, -4414153,
--3976603, -4316979, 455803, 8829916, -7177427, 177704, -6836514, 724239, 3194382, 4019553,
--7207492, 7283191, 8822400, -2880849, -2085207, -1512902, -336081, 2827162, 3569118, 906775,
-2433636, -4269735, -820339, -1568737, 7598334, -2347737, 8408472, -187905, -2558190, 6722161,
--680752, -3977140, 1451162, 7282117, 8374650, -598611, -2593624, -4521527, 2900177, -6044093,
--579284, 4094178, -3087545, 1860795, -190589, -8053, -2475512, 84826, -1912871, -3009162,
--282394, 2601140, 1387811, 2592013, -1117228, -797253, -2019708, 833761, -1625108, 2699387,
-1388348, 3759170, 385473, -834834, -297427, -624381, -1284195, 1743220, -1130650, -634581,
-737124, 610959, -1796907, -600759, 531502, 97174, -972273, -1735167, -68183, -1596117,
--1088237, -643171, 2191507, -112206, 789200, 690416, 139586, -1234266, -334471, -105764,
--10721312, -10856604, -12337294, 3559991, -9973988, -4287988, 9772124, 4621922, -10835129, -832150,
-200253, 4704600, 7238631, 12108587, -3210488, -4486630, -11909944, -14829985, -8613557, -3063386,
-6096169, -6075768, 2979097, -8588324, 8910983, -6470905, 7172596, -3388192, 1078574, 1747515,
--1340567, -6385006, 10037875, -8696772, -354335, -4687957, 1296006, -5444945, 1305670, -21628918,
-423054, 9918153, -12741020, 2826625, 8824547, 3044595, -6604586, -840740, 10605885, -13084618,
-20938, 5218922, 5162551, 4900021, -1813550, -1976222, -8339753, -4264903, 3500398, 5634997,
-9183177, 11033771, -16334834, 6139119, -4892505, 1103807, -11502996, -4796405, 9568650, 2225867,
-1358283, -6445672, 56371, 6039798, 4515621, 2639794, -5675263, -3798899, 6003291, -1682554,
--2479270, -1390496, -4169340, 3489124, -653909, -3432216, -1235877, -1246614, 897648, -2257542,
--2252710, 686121, 849330, 810138, -1271310, -2009508, 1656247, -1324461, -4322885, -492848,
--1269700, 2527588, -1995012, 25233, 230854, 942745, -2704219, -1643362, -967441, 175557,
-2905546, -453656, -676994, 1665374, 42413, 1634235, -819802, -2057289, -725850, -3406446,
-745177, -148713, -2285996, 1273995, 12867185, 21449066, 11940546, 13977971, 2133525, 4956929,
-18820546, -599685, 565862, 12869333, -6294812, 19864, 3706557, 6409702, 10627897, -8659191,
--12328704, 6785512, 3776887, -7172059, 1537061, 4385162, -2745021, 2514703, -6637335, -1513439,
--7752953, 2372433, 8450885, 2614561, 7402376, 5710159, 6024229, -14676977, 769336, 17055852,
--2030446, -317828, 15907485, -2109366, -562641, 2343979, -2096481, -479963, 8805220, 13817984,
--13587666, -2228014, 2711735, -4184372, 6414534, -2173254, 630823, 994285, -2962991, 12162811,
--1560147, -4449049, 4562329, -4613332, -7597261, 2605972, 8296266, 3121904, -923418, 1666447,
-7937637, 4132832, 7110855, 2130841, 883153, -96100, -6978785, -1459215, -5468567, -1265942,
--2298344, -12444131, -5385352, 785979, 8011725, -3310346, 3094524, -2146947, -6577206, 2900177,
-707596, -2106682, 1025423, -4019553, 192737, 978179, 2447058, 3479997, -847182, 2236067,
--3029026, -4487167, -5363341, -584652, 4823785, -892279, -399432, 1598802, 243203, 515396,
-2582349, -1282048, -508954, -1442035, 3719442, 68183, -590021, 421444, -985158, -2018635,
--2441152, 972810, 2086817, 2632815, 1416266, 1031866, -519154, -191126, -15569, -886374,
--3751117, 1180579, 36203888, 5024575, -781147, -216896, -17388712, -5083631, 1665374, -4055523,
-7653632, 3369402, 12412455, -1588601, 537, -2689723, -5274757, 8327942, 1545115, 3177739,
-4657355, 6513318, -6165963, -6199249, -7174743, -4992363, -4124779, -1815161, -9849971, -1949378,
-15817291, 7448010, -3053722, -1099512, -1904281, 1293322, 5573257, -2778307, 22609782, -3972845,
--664109, -10319196, 4060355, 9845139, -1751273, -7607461, -1035087, 3764002, 7531225, 3231426,
-10607495, 15883326, 5129802, -389231, 9401147, 7679402, 2825552, 5921150, -19924890, 4552666,
-455267, -17630304, 6382859, -472446, -7645042, 4889821, -8105140, -7878044, 9240622, 7264937,
--4220342, -15616501, -7119445, 3664144, -9022116, -1894618, 3821447, 15198816, -2566243, 3011846,
--8052527, -16857746, -9104794, -8120173, -3738769, 7935489, 998580, -5651103, -1788317, -3555696,
--3489124, 5041218, 4162897, 1560147, 3537443, 4236985, -3750580, -2764348, -2816962, 491237,
--3081102, -4501126, -4394289, 1765232, -1569811, -727460, 485331, 1488206, -3757023, 1965484,
--908922, -536871, -1738388, -689342, -2415919, 5624260, -3669513, -1337346, 881005, -3782256,
--3680250, -2803540, 79994, 2804614, 2273648, -19421842, 12317966, -2452426, -12167642, -718870,
-11476689, -13088913, -2496987, -10595684, 7091528, 2006824, -3602941, -4638028, -1376000, 6685117,
-5494874, 2746632, 7395934, 6089190, 854162, 7399692, 8949101, 3399467, 5046050, -9121437,
--4151086, -6415071, 5717675, 6973417, 2771865, 2011655, -4022237, -3307662, -2387465, -2506650,
--7362111, 6717866, 1792075, 243739, -7893076, -2623688, 13060459, -9463424, -9681930, -15358266,
-5492190, -11568494, 16695075, 18886044, 13347685, 7497939, 931471, 14721000, -7693360, 11528229,
--1333587, -8560944, 809601, 488553, -17757542, -8182987, 6926172, 833224, -2850248, 2517925,
-15243376, 10102837, -17112760, -4570382, -73551, -651761, 5173288, 7172596, -166430, -14067629,
-5764383, -8244190, -25554518, -7681549, -5055177, 7796440, 13178033, 4197794, 830002, 474057,
-575526, 970663, 9441412, -154082, 1561758, 1005022, 4863514, -8374650, -246424, 2331094,
-6298570, 7173669, 2798171, 4185983, 6710350, 8410620, 11276437, 4050691, 5683316, 5235565,
-474057, -682900, -1806034, -1543504, 260919, 2084670, -6272800, -1777043, 3985193, 5900212,
--441308, 1532767, -618475, 2380486, 256087, 3725347, -412317, 3566434, -2563022, 4615479,
-314606, 4350265, -16077136, 1586454, 1808718, 10050223, 2187212, 25704842, 4113505, -10632192,
--3416110, -8954470, 16273094, -20867098, -1844152, 14398341, -31477278, -12445205, -10609643, -11025181,
--20871394, 1961726, -3643206, -8972724, -1122597, 9870372, 1262720, 1299228, -6142877, 2439005,
--2065879, 2425046, 32212, 1553168, 8077223, -1966021, -479426, 16383153, -10581726, -2141578,
-2851858, 14112189, -7392713, 20153060, -6082748, -8146479, -17237852, -22458384, -6532646, -16716013,
-8172786, -5072357, -12530030, 1714766, 2047626, 9248138, 7840463, 3272228, -1568737, 28533078,
-15808164, -1795296, 2802466, 9776956, 7323456, 4753992, -3843996, -546535, -5100274, -6639483,
--6133750, 4313221, 22267794, -15540802, -3791383, -8842801, 16051903, -4206384, 4986457, -2268280,
-7546258, -17597018, -13160854, -4526896, 7505992, 2398739, 6483253, -3870839, 4005594, 6060736,
-5312875, 2543695, -1035624, -7482907, 4748623, 1802276, -6363531, -4438849, 4008278, -4156992,
--3163780, -92342, 4313758, -3952981, 5194226, -3198140, 7413651, -4072166, 841277, 2632278,
-1359357, -3515431, -6748468, 5295695, -2019708, -1462436, -517007, -644245, -2127620, 5034776,
-6212670, 4372814, 3804804, -668941, 2196876, 7192460, -3832185, 2889976, 1242319, -88584,
-1573032, -378494, 389231, -2488397, 3307662, 1048509, 3155727, -929324, 1383516, -538482,
--2585570, 1888712, 479426, 2225330, 3221762, -478889, -12877386, -12272869, 6895033, -5475010,
--23144506, 11484206, -6934225, 9179419, -6692633, 11541114, 7781407, 9601399, 15262703, 2518462,
-12907450, 5242545, 3302830, 8826695, 2993592, 2442226, 587337, -338766, -8269960, 7357816,
--16749299, 7335804, 1705639, -4763119, -9044664, -213138, 6419903, -7439420, -3156264, -11135776,
--4361540, -13713831, 830539, 7577933, -176094, -1762010, -8753680, -15145665, -11049340, 11869679,
-3920232, -4923107, -8747238, -2117956, -732829, -14809047, 12518219, 11441256, -14637785, -14175003,
--23289460, -3524021, -27858768, 7512435, 10803990, 5717139, -1766305, -3537979, -2905009, 11434277,
-11515881, 13335337, -8706436, -6886443, 8880382, -3834332, -4184909, -16304233, 7218230, 13343390,
-15238007, -3585761, 8333847, -4684199, 2484639, 8361765, 4281546, -5873368, 2736968, -10062572,
--6158446, -4168803, 1471026, 4262755, 3621731, -3981972, -3686156, -1479079, -4542465, -882616,
--6248641, -7739531, -4095251, -3221762, -2404645, -1025423, -2283849, -3073586, 646929, -135828,
-4460861, -1548873, 5705327, -1505923, 4547297, 314069, -2621004, 1173063, 11563126, 3594351,
-5877663, -2670933, -4725538, 956704, 4179540, -4050691, 8366060, 8453569, 2374580, 3968550,
-1713155, -9673340, -5144834, -4734128, -690953, -260919, -4231080, 22275312, 25614112, -10101763,
--637803, 6977175, -20840256, -3810710, 25755308, 940598, -28213640, 3124052, 8565239, -642098,
-9687836, 23136988, -9571335, 20912196, 11220602, 17849348, 4894652, -13631152, -14652818, 11674795,
--13312251, -20713016, -6139656, -24616068, 5295695, -1648731, 8615704, 7522635, 5242008, 2783139,
--1133335, 693637, 12369506, 6107444, -24297166, -2831457, 7929584, 15515032, 8486855, 19219978,
-17177184, 13572097, -6598681, -2335925, 3413425, 34992172, -14848239, 2543158, 7228430, 13707925,
--5858873, -19491098, -4289599, -4939213, -11931419, -21561810, -23725936, 6415608, -13410499, -9995463,
-5851356, 18465138, 22567368, 381178, -1535451, -330712, 17265232, -11940546, -6331856, 20673826,
--22869090, 2442763, -18130130, -12046310, 1050656, 23972896, -4189741, -16524350, 21150566, -22033720,
-590558, -26586384, -2647847, -3416110, 7488276, 14650133, -11236171, -6298570, -8047695, 1884954,
-203474, -8312373, 4313221, -2535105, -2676302, -3611531, -3194919, -9834938, 1814624, -4799089,
-3063922, 2503429, -1101122, -2272575, 5504001, -122407, -322659, -11595338, 1296543, -1109712,
--812823, 10560788, 631897, 2882460, -4920422, 1587527, -3044058, -6376416, 2254858, -12848932,
-3747896, -4530654, 9011915, -7712688, -1544578, 1598265, -1590749, -2137283, -4501126, 6902013,
--5230734, 7526930, -3307662, -4931696, 4837207, 4159139, 12458626, -14579803, -31368830, -7891466,
--10696616, -10864657, -6188511, 1070521, -10509785, -9616969, 3405909, 6665253, -6467684, 16398722,
--1463510, 10847477, -5332202, -1089311, 10052908, -14280229, -8327405, -5142687, 14816563, -3917547,
--15547782, -6433861, 2740189, -8141648, 6935299, -11092290, -10380936, 15131170, 4854387, -12783970,
-7820062, -1935420, -9401683, -1394791, -15804406, -14321032, 3069291, 23721104, 10063108, 7073811,
--19065896, 14464376, -1406602, 10970420, -6447820, -13959717, 6862821, -25356414, 21086142, -34167000,
--21056078, 7325067, 18843632, 954557, 22501870, -10202158, 6113886, -15902116, 21120502, 6206765,
-15778099, 6638946, 3919695, -5389110, -4914517, -10676215, -3278671, -1114544, -17683454, -11229192,
-1839857, -27727236, 1796370, 30048664, 9373766, 10488310, 3202435, -14388140, -10181220, -3353833,
--3093987, -1515050, -5141076, -7828115, 6334003, 3459059, 5767068, 8092792, -8483634, 5121749,
--3078418, -5262409, -3325379, 7134478, -2372433, -8948027, -12482786, -651224, -7430294, -4170950,
--7626788, -2752000, -4929549, -3668439, 12173011, -7116224, 2941516, 3120294, -9396315, 10357314,
-300111, 5950141, 8818105, -4612795, 4454955, 1324997, -201863, 2051921, 7399155, -4801774,
--3911642, 6021544, 743029, 2619930, -1847910, -2542084, 391379, 5025112, -23607824, -22515292,
-2454574, 8915815, -10996727, -50611356, -10268193, -515396, 6838662, -17290464, 1729261, -9755481,
--1723356, -13827647, -14894410, 13201656, -14477798, -18337362, -2800856, -12912819, -13659607, 4533338,
--19959250, -6950331, 12453795, 27674622, 22818088, -1336809, -13508746, 4568772, 20564304, -1198296,
-13762149, -4136591, 17268990, 9306120, -17220672, 27553288, -20944408, -11456825, 18977850, -20890720,
-6481643, -5001490, -15271830, 1569274, 23788750, -5144297, -13577465, 8551280, 11803644, -593242,
-5034776, -34106872, 8427800, 1154273, 17331266, 8006893, -14591615, 14484240, -7655243, -1546188,
--13504451, 7050189, 20086488, -4347581, -3670050, -20589536, -28496034, 16093242, -1826435, 12914967,
--15469935, 11700565, 9813463, -20726438, 1432909, 17954038, 10660109, -9819906, -16199006, 14633490,
-2681133, -13052406, 12384538, 1735167, 5660767, 1172526, 5277441, 673236, 13806709, -82678,
-4917201, -1190243, 811749, 11763915, -3631932, 22549, 2985539, -3434900, 2443300, 796180,
-8560407, -712428, -9009231, -1427003, 1421097, -5797132, -1396938, 297427, -3454764, 12165495,
--2701535, -7456063, 1029718, 7621420, 3965329, -739808, 4755603, 314606, -4955856, -979789,
-13329431, 8607651, -8630737, -6831146, 2116882, -3081102, 19081466, 18939196, -51244328, 19255950,
-26126286, -6725919, 18205292, -285615, 9482751, -4271882, -10459856, -6924024, 11019275, 2472291,
--14733885, -9739375, -1273995, -7061463, -3700114, -1699196, 31858994, 6279779, 7130183, -19755776,
-13772886, -14098230, 303869, 2353642, -21374978, 9920301, -7864085, 1010928, -8597451, -15632070,
-518617, 10195179, 29527364, 10474888, 3154654, 18094698, 7802882, -2308545, 3087545, 347355,
-5234492, 2870649, 20059644, 8624294, 6130529, 3180423, -2464238, -6319508, -19557670, -16616155,
-2388002, -2474975, -12030203, 1605781, 14838575, -22605486, 21822192, 5480379, -7905961, -1022739,
--5720897, -1923072, 13256953, 5632850, 4384625, -15403363, -3010772, -21008832, -6346351, 5691906,
-7733089, 7484518, -8946954, -7386807, 16284369, -2036351, -26138634, 3641059, -382252, -416612,
--15394773, 4947266, 11682848, -1732482, 16773458, 11110007, -5511517, -444529, -7136088, 8869644,
--681826, 2829847, 1464584, -3931506, -3072512, -836445, -3187940, 3509525, -7089381, -849867,
-521302, 3738769, -3606699, -4459250, -5033702, 129386, -1154809, 2709051, 1745367, -306553,
--3107409, 3316789, 2726231, 353261, 3901978, 530965, 2819646, 2353105, 3709778, -1166084,
--13058311, -667331, -3650185, 2625836, -6031208, -45653892, 70745624, -69940856, -31597538, -15992311,
--4745402, 40897216, 12052215, 45788108, 11468100, -9368934, 36118528, 15610596, -12178380, 16915728,
-15350750, 8564702, 14367739, 13897440, -12337294, -19988240, -14190572, 2317135, -13043279, 6921877,
-4157528, 8973797, -1343251, 6208375, 2146410, 22505628, 5389110, 2136746, 6979859, -5220533,
--256087, 7961796, -14047764, -20037096, -13577465, -11643656, 2061584, 5983427, -14078903, -2268817,
--8442832, -34745748, 17590038, -6247567, 8939974, -18253074, -6139119, -16901234, -23147190, 8822937,
-6239514, 22652732, -890669, 19967840, -8344048, 16738561, 2055679, 23868208, -16770774, 14795625,
-17790292, 9859634, 10362682, 942208, -7130183, 27952720, 18757732, -1769527, 33735896, 8138963,
-4047470, 14484777, 21790516, 353798, 10082973, 12611098, 5838471, 5564130, -2392297, 1204738,
--19532438, -4927401, -2524904, 3229816, 4254702, 3995393, 13202193, 5888937, 6798397, -5006858,
--578210, 5252745, 685047, 549219, -4529043, 5495948, 4704600, 2711198, -3497177, 6958921,
--885837, 1349157, -5142150, -4784594, -1816234, 679142, 770410, -3078418, -10645076, 2653216,
-2517388, -2779918, -367757, -2619393, 994822, -3801583, 2846490, -3650185, 351114, 9862856,
--2565706, -9434433, 6433324, 4698694, 3994320, -2128693, -1080721, 43309376, 3600793, -25885768,
--38356744, -20151986, -16094316, 5238250, 31480500, -420370, -13535589, 28391344, 2166274, -22780506,
-20400020, 22397180, -4265977, -347355, -2349347, -20177756, 22306450, 1324997, 12578885, -7087770,
--18209588, -31436476, 5526549, 4010963, 4653060, -4414690, 9673340, -10447508, -353798, -20162724,
--25376814, 8835285, -3424700, 8000987, -3881577, -9336185, -23021024, -35350804, 17858474, -19770808,
-7835094, 16962436, -1465121, -9137006, -17631914, -12549894, 40396316, 9190156, -2151242, 5223754,
--5677947, -16520055, -5708012, 23512262, -23130010, -38470560, -13733695, -12280922, -54114976, -42126648,
--22967338, -23483270, 5427765, -368293, -19071802, -36010080, -14560476, -17097192, -12549358, -9964324,
--7607461, -21618718, -20960514, 16103980, -18665390, 980326, 2367064, -22671522, -4351339, -16602733,
--20982526, -5194226, -3777424, 9334038, 3575560, 12615393, -13579613, 3157338, 7103339, -285078,
--18128520, -10235981, -12322798, -1395328, 5294084, -6260989, -9081708, 15062450, 8636105, 10760504,
--18563922, 2801393, -9297530, -1285269, 250719, 1516124, -2685965, 17959942, 908386, -3513820,
-1770063, 6087043, 8668318, 7261179, -1763084, 10489384, -8355322, -4488241, -3930432, -14491220,
--988916, -4673462, -18782966, -15582141, 2022930, 389768, -921807, -5043366, -4634270, -1770063,
--3324305, 29300266, -3157875, 27896886, 42199664, -8069170, -45041324, -44302052, -9141838, 20718922,
-3200288, -34840236, 27388470, -6248104, -22297860, 27443230, -51920248, -11312944, 544387, -9582072,
--7738458, 63009856, -26286810, 59029492, -2683281, 12168716, -4144107, -23760296, 38261716, 9781788,
-39771396, -27390618, -26458610, 8331700, -42825656, -13196287, -6693707, -30231738, 62512712, -5711233,
--64409476, -1264331, -28599650, 8142185, 16119012, 25637196, 21243446, -25793962, -15779710, -39980776,
--11444477, -18655190, 17207786, 10994579, -1973001, 11457899, -7770133, -28421410, -11364483, -33121714,
-33890512, -25658672, -17403744, 30039538, 7325604, 50947440, 24971476, 4268124, 27173184, -36393944,
--13348221, -37563784, -36154496, -5783711, -5127654, -45771468, 47159276, -8439611, -36323076, -54466628,
-3711389, -10923712, 39942660, -2675228, 2217277, 5214091, -6982006, 7425999, 9101573, 18568754,
--12364137, -12708808, -7919920, 472446, -2146410, -2704219, -11678553, 13111461, 8293045, 15663209,
--3564286, -8572218, -7154879, -2839510, 3081102, 21028160, 22519050, -3685619, 1358820, 12140799,
--3267933, -28072444, -13502303, 1743220, 3974992, -2202245, -17769890, 6277095, -2013266, -4233227,
--20375324, 8057359, 7038915, 24445344, 4098473, 6066642, -1103270, 10104447, 1856500, -5737003,
--10763725, -775242, 1302449, 7991861, 3744675, -4575214, 782221, -84434760, 43488692, 10273562,
--18504330, -13590350, 26776974, 15047418, -16578037, -4284767, -40075804, -16505559, 16706886, -34283504,
-1088774, 6333466, -10759967, -22826678, -15916075, 31071404, 12182675, -6082211, -44712220, 15182173,
-27733140, 16270410, -34684008, -22826678, -110595, 37582576, 3081639, -8965207, 5643587, 1306207,
-18884972, -49845780, -43468292, 53557168, 8024073, 22453552, -51133196, 11160473, -2567854, 37359772,
--33709588, -6316823, -51270100, 17907330, 36462660, 8688182, -22941030, 14676977, 53043384, -23835994,
--25733296, -19894826, 7286412, 2287607, 46485504, -13911936, 3287798, -25169046, 7975755, -27608050,
--1212791, 17812840, -34864932, 33095944, 9721658, -23953570, -37696928, -22649510, -2201171, 33381022,
--60625072, -13094282, 54263692, 7233262, -24935506, -11534672, -17682380, 51445656, -6015639, -53846540,
--6578280, 9127, -13604846, 21997748, -4088272, -7529615, 16347719, -1480153, -11375221, -14105209,
--1801739, -12437688, 3461744, 9165460, 11780558, -10826002, -8304320, 11217381, -7674570, 10621991,
--5957120, -10802916, 14484777, -8129300, 13009456, 18369038, 849330, -26625040, -2152852, -15873662,
-6263673, 9824201, 6074695, -18613314, -159988, -14060112, 12781286, -3962644, -8410620, -5381057,
-2484102, 4488241, -10306848, 4556424, 55711096, 28860032, 12746926, 13153874, 13305809, -8687108,
--8934606, -18665928, 2246268, 6271189, 4806069, -928250, -32294932, 15577310, 6179921, -22185116,
--19105626, -9525701, -11227581, 8484171, -8422968, -9334038, 2624762, -640487, -17211008, 22029424,
--15842524, -4948876, -16457778, -14679661, 10521059, -6187438, -2276870, 5625871, 6822556, -1672890,
--21863532, 5291400, 33774012, 7344394, -53298932, -3263102, -11668352, -16432545, 11075647, 12087649,
-27400818, 13341779, -34810172, 37702296, -9444633, -25994752, 78216184, -15711527, -6830072, -25767120,
--62407484, 28594282, 31506806, 10505490, 11813844, -53179212, 15348603, -4099546, -13036836, -9315247,
-1996623, -5002563, 8195335, 10195179, 2061047, -7841537, -15383499, 16208133, 20143396, 28309204,
--14120779, -2812667, 5855114, -4108136, 14658723, -36499704, 3384434, 6511708, -17286706, 2876554,
--14431090, 5635534, 94489, 4525285, -2527588, 1044751, 1236414, -705985, -667331, -4838818,
--3968550, 9786620, -5580773, -347355, 7037841, 1619740, 140660, 11949673, -10036802, 7320772,
-8381629, -528281, -1913408, -10110353, 7987566, -18905910, -5505611, 12326019, 3360275, -5169530,
--12990129, 3852049, -3179350, 15328201, 1974074, -32019518, -75758392, -128835600, 10741713, 130523520,
-12851616, 277747488, 281244672, 101683352, 282243776, 163164736, -47176456, -4716411, -25176024, -213886688,
--176745424, -124573376, -221391600, -212068848, -60050624, -133543952, -115755272, 26121454, 37507412, -28927678,
-41635412, 60364692, 316754, 4109747, 120961848, 80277768, 31115964, 89006216, 167162816, 78376712,
-92341800, 206156816, 82069312, 37010808, 178858000, 171901232, 8021389, 109941496, 195097280, 333934,
-49908056, 115344032, -4023311, -94321776, 47221016, -19685446, -180954496, -169230832, -154954896, -302198208,
--446173024, -310969600, -434073568, -579060928, -408065920, -331177952, -447165152, -285944416, -137048656, -132619464,
--24606942, 133470400, 269739520, 304795584, 408446016, 555062272, 545955328, 515991456, 581759744, 580354240,
-474490816, 381565984, 409119808, 271596000, 97252552, 129553928, 32440424, -238121584, -152527168, -161809664,
--331832928, -280684160, -201229424, -236272064, -272879680, -170083920, -148028736, -206746304, -169966352, -88458072,
--141257184, -186792960, -111631032, -79064440, -147512256, -83426520, 20434918, -46120968, -52147884, 59876676,
--1134945, -74912816, -8647917, -47011100, -169132048, -117944632, -88434448, -157402496, -69536056, 39788040,
-76739792, 140245184, 233785808, 270999552, 285020480, 318847648, 340082496, 334289120, 308949344, 286983808,
-244514640, 193994544, 120013200, 89642944, 12015171, -75082472, -131315944, -211596928, -303880736, -296107936,
--251233040, -228165312, -197125584, -135089072, -112981800, -101404712, -72184440, -47499652, -41632728, -17080548,
--9271761, -6615860, 2203318, 19368156, 32132260, 40164924, 47959752, 54702852, 53946400, 52291764,
-45088568, 44095892, 31992674, 25121264, 12984760, 7540889, -5583458, -14230837, -19115288, -18086644,
--23982024, -23631984, -23475754, -23972360, -27299886, -19643032, -20133196, -12510703, 391379, 16029892,
-23229868, 37631428, 44074956, 48703320, 51840792, 59017144, 55560232, 53575424, 51616380, 45845556,
-30826054, 26853210, 21355652, 13776108, 4422206, 4271345, -6287296, -12198781, -18655728, -24482388,
--35243428, -37953552, -45371496, -50705312, -55515672, -54788212, -59144920, -57855356, -54980952, -47741784,
--41799160, -28247464, -18182744, -5893769, 2178085, 14578730, 20051054, 26979910, 29865592, 33560876,
-31608812, 33571612, 29987462, 30001420, 25057376, 23674396, 18112950, 15127949, 8839580, 7357279,
-2134599, 1916629, -1234803, -295279, -3041374, -1414118, -3238405, -1148904, -2823404, -493921,
--2150168, -537, -1699733, 513249, -1098975, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
-10289668,
--462246, -504122, 3228205, -1289027, 3693135, -1934883, -4823785, 1726577, 4772246, 752693,
--782221, 6429566, 181462, 307627, -2214056, -1171452, 9918690, 1428614, -6790344, -4952098,
-6986301, -595390, 7246684, 555661, -1416266, -640487, 5465883, 1133335, 11511049, 5128191,
-3146601, -576063, 2533494, 5267241, -1314260, -3846143, -4918812, -891206, 4378183, 3836480,
-5851893, 1698660, -3316789, -3374234, -1451699, 2502892, -815507, 1398012, -696858, -5187247,
--4066260, 1648731, 3795677, 2399276, -1918777, -2112587, -170725, 5754183, 2879239, -578747,
--1300838, 2693481, 1762547, 1182727, -2933463, 1510755, 2714419, -303332, 4158065, 4980552,
--8637179, 3212636, 1739999, 5672041, 1677185, 495532, 2547453, -1091995, -4035659, -1444183,
--2438468, -759136, -516470, 2494839, -140660, -1909650, 13422, 337155, 1444720, -1222992,
-222265, -197569, 507343, 796180, 508954, 1013612, 84289, 645319, -1299765, 2907156,
-4461398, 9722732, -7909183, 1799054, -1756642, 134218, -10155987, 1039919, 6067178, -8987756,
--1894081, 6041945, 15949361, 2311229, -135291, 1157494, -10033044, -301721, 7349226, 6568079,
-152471, -187905, 580357, 3456375, 5726802, 6083821, 6527814, -2909304, 1389959, -380641,
-2500745, 726386, 1602560, -10136123, -2810519, 1600949, 802085, -5598490, -207769, 3847754,
--4494684, 3543885, 3228205, 6026913, 2787434, -2283312, 2972654, 6732898, -3790309, -6052683,
-2007897, 1421097, 1156957, 3197603, -2718178, -4893042, -7340636, 5918465, -1116155, -1370632,
--2407329, 2603287, -119185, 3841312, 7543573, 1542967, 486405, -397284, -1856500, -5896990,
-9156870, 2269890, -1125281, 4756140, -775242, -5436892, -4816269, -1056025, 1778117, -7933879,
-625455, -4701379, -918049, 2428804, -166967, 1278827, -1450088, -2593087, -580894, 1315334,
-1769527, 1335735, -305480, -795106, -76773, 1298691, -714038, -1321776, -1017907, 252866,
--529892, -4781909, -4100083, -5185636, -7303055, 4075387, -68719, -3529926, -1368484, -1817845,
-1615982, -2937758, -5007395, 1116155, -3247532, 8567923, 11451993, 9008694, -6229313, -269509,
--388695, 2388002, -3447248, 7060926, 4469987, -1042066, 3456912, 5347771, 458488, 1273458,
-1899449, 5194763, -476741, 1913408, 6275484, 606664, -48855, -2761664, 4521527, -6825777,
-2767570, -982474, -1374390, 4497368, -4353486, -583579, 176094, -5937793, 2476049, -1222455,
-2757369, -222265, -2531883, 1762547, 1900523, -343061, 5268851, -406411, 6074695, -122943,
--4003447, -1823214, 252866, -2779918, 5419175, 2784750, 4654671, 5223754, -2277407, -5236102,
--3380139, -39192, -945967, -1142461, 4303557, 5372467, -788663, -2995203, 1900523, 1441498,
--2051921, -2860448, 989453, -4093641, 1008780, -112206, -108448, -1121523, -3825205, 834297,
--1495186, 124017, 1738388, -35433, -1945620, 950262, -2675228, -83215, 190052, -652835,
-243203, 481573, -1455994, -9127, 195958, -1780264, 386010, -559956, -91805, -952946,
--9664, 451508, 1542967, -15125264, -3554086, -4716411, -8164196, 2778307, 2152316, -981400,
-3813394, -533113, 3220689, 4525285, -1978906, -5291400, -6649146, -2546379, -6190659, 482110,
-701153, -2706903, 3538516, -3040300, 1905892, -1390496, -3522947, -9411884, -3644280, 836445,
-1498407, 2471217, -3479461, 2496987, 3802657, 1251446, 8604967, 2135673, -198642, 6646999,
--4676146, 3839701, 654446, -2234994, -3158412, 4287988, 600222, 1356673, -10109816, -1866700,
--3324305, 10184441, 4389457, 3670587, 4158065, 4677757, 3725347, 5187247, -2716030, -1107565,
-3204583, 5096516, -657130, 5952288, -3172907, 1306744, -1261110, 5043366, 7573638, -11778948,
-3118683, -2909304, 406948, -5553393, -2828236, 936303, -1657321, -2381023, -4686346, -2119566,
-2253247, -106837, 5077725, -523449, 1977833, 4381404, 6983617, -251792, 1869385, -805306,
-3269007, 527744, 1608465, -2148558, -724239, 239981, 1513976, -954020, -1540820, 86436,
-123480, -1210107, 221728, 716723, 66035, 2037425, -853625, -936303, 268435, 1777580,
--676457, 51540, -602906, 1064078, 1666447, -214748, 1596117, 1715303, -372052, -719407,
--263067, 5914707, 3607236, 2151779, -1136556, 496606, 625992, 7631083, -6069326, 7654169,
--1032940, 4174708, 7817378, -4897874, 6051609, -3789772, 3095598, 1192390, 9190156, 4077535,
--5151277, -8440684, 1900523, -6328635, 5183489, -1298154, 6761353, -5057861, -848256, -4051228,
-2313377, 1504849, 1913408, -511101, -750009, -7375533, -3262028, 6054294, -4860293, -988379,
-3908957, 178241, -3813394, 1223529, 307627, -858993, -3311957, 6613176, 2078227, -9447317,
--4292283, -7630010, -1369021, -6749541, -11649025, -2661269, 5030481, 14289356, 3090766, 1163399,
-6703370, -197032, -5316633, -4633733, 3725347, 1446867, 2501819, 4107599, -10161893, -2510945,
--9350681, -2068564, 2570538, -3713536, -8647380, 846645, 3684545, -1866700, -3241090, -1542430,
-1455457, -1305670, -402116, 1858647, -1222455, -1301375, -1777580, -1292248, -3984119, 1383516,
--1069984, 1787243, -710280, 1034013, 2447058, 321586, -715649, -261456, -2146410, -1423782,
--3374234, -3056943, 417686, 333397, -44560, 1156420, 1904818, 1332514, -44560, 1210107,
-1004486, -942208, 718870, 761283, -1782411, -753230, 16357920, 4006668, 11818139, -5493263,
--867583, -3882651, -1009854, 12744242, -10887742, 3712462, 1132261, 16661252, 8731132, 11086384,
-1915555, -2647311, 5096516, -3530463, -13835163, 2700461, 686658, 1698123, 10733660, 1115618,
--6458557, -475668, 188979, 3519726, 3652333, -241055, -1514513, 4504347, -5273146, -1343251,
--2718178, -1245541, 1239635, 280247, 9442486, 1455457, 7393250, 8716099, 2292439, 7696582,
--662499, 2600603, 4531728, -4919348, -7562901, 1014686, 7419556, -11933030, 3476776, -9139690,
--8710194, -5206037, -2486249, -8033737, -7953206, -8239895, -4362613, -1995012, 5482526, 208843,
-6587943, 1085553, -5607617, 8505646, -8868034, -3254512, -3729642, -3530463, -4748087, -6051072,
-8652748, 6879464, -3926137, 3413962, 2654827, 6987375, -73014, 5065914, -2556043, 6349573,
-3073586, -3639448, 115427, -3282429, 3901441, -3754875, 325881, 3157875, 137439, 2431488,
--771484, 446140, 1547799, -486942, -1777043, 1624571, -547071, 335007, -3326989, -2616709,
--2673617, -1953673, -433792, -1064078, -2326799, -40265, 375273, -988379, 171262, -14496,
--1392106, 348429, -8904004, -8906688, -5283347, -5457293, -2950643, -2230699, -10675678, -8531953,
--7262253, -1078037, -650151, -1309428, 7362648, 775242, 3788161, 5702106, 6606197, 1075889,
-12940200, 16269336, -365072, 4734665, 3634616, -1939715, 7072201, 3882651, -14623827, -455267,
--5079873, 877247, 11254425, 4523138, -11700565, -3068217, 5160940, 5184026, 681289, 14971719,
--6222334, 6055904, 6063420, 6686727, 3860639, 7783555, -13182328, 4848481, -5165772, 7842611,
-256624, 3396246, -9906342, 7278896, 5215164, -1243393, 5048197, -821949, 1382980, -66035,
--5185100, 1369558, -3328600, 3253438, -4098473, 5084168, 1552631, 12687333, 9426916, -2954401,
-3343632, -10409390, 9050570, -2827162, 5535676, 9843528, 9607305, 477278, 9813463, 6828461,
-4620848, 5020817, 9013526, 918049, 1916092, -7373385, -1321776, -2103997, 1658394, -5314485,
-759136, -3868692, 1170916, -3854196, 1145146, -1407676, -2462090, -2269353, 1558536, 180389,
--1262184, -901406, -3183645, -1005022, 513249, -903554, -2308545, 347892, 2306398, -5385352,
--3381750, -2967823, 2133525, -3299072, 1990181, 32749, 1123671, -2731599, -4085051, -900869,
-747324, 8596377, -7664906, -1971927, 6791954, -3610457, 11656541, -3705483, -8295193, 15561740,
-21082920, 4718559, -8373039, 5857262, -4433480, 8698919, 5009543, -1868311, -8879308, -5760625,
--15072651, 3959423, 6370510, -13240310, -1619203, 7732015, 1970853, -621160, 274341, -1603633,
--7223062, 1767916, 8865349, 386010, 1883880, 3245385, 12574054, -8289824, -268972, 9188546,
--8421357, 12334072, 606127, 17325362, -14431090, -12952548, 7107097, 664646, -1758789, 3743601,
--1220845, 4842039, 2928631, 9647570, 9139690, -7551090, 1358820, -4925254, -3015604, 5785858,
--742493, -2935610, -1307281, 302258, 8583492, -16413754, 12506408, -3896072, -5622112, 9328132,
--7529078, 7485591, -10121627, -5640366, -1896228, -7467338, -2615635, -5262409, -8419747, -5622112,
-1813013, -1878511, -2039573, -86436, -3932580, -1213328, -602369, 5243618, -288837, 793495,
-2076080, -2155537, -877247, -1818382, 1243393, 2587181, 676994, -1007707, 6098317, 76773,
-4519380, -4887136, -3205656, -2883534, -2127083, 2379949, 1115081, 213675, 3538516, -2602213,
-2696703, 1124208, 2506650, 1481764, 335544, -3075197, -10413685, -8028905, -3461207, -7532836,
--11357504, -2441689, 4192962, 13958107, 2319282, -8495982, -15612743, -3311957, 4900558, -2782602,
-16855600, 5245766, -5903970, -11934104, -14817637, -28192702, -2255932, -3149822, 10827076, 7934952,
--5723044, 688805, -4418448, -2479270, 10164040, -310311, 581431, -1276679, 11525545, 1901597,
--3402151, -613643, -381178, 3063922, -10405095, -3335042, -4065724, 16488916, 3899294, -17431124,
-4529043, -9067213, -5034776, 2517388, -16137803, 4992363, 11710228, 10302553, 8113193, 1926830,
-3303904, -566399, 1763621, -10247792, 3752728, -16019691, -3020973, 9108015, 3390340, 9331890,
-9292162, 7602629, -5186710, -11834782, -10268730, -8018704, 2637110, 3150896, 5504538, 5385889,
-1222992, 3586298, 11579769, 16111496, -3830037, 5717675, -3975529, -4382478, 4982162, -7125888,
--2464774, 255014, -4452808, 4167729, -3863860, -3435437, -1833951, 975494, -986769, 2254858,
-78383, 3279208, -746251, -2043868, -892279, -2001455, -5068062, 1333051, 2778844, -279173,
-1838783, -525597, 2502355, 4671851, 4544613, 3477850, -3577171, -1862942, 3503620, -1087164,
--1352915, 296353, -548145, 3456912, -753230, -229781, -503048, 8207146, 14605573, 16855062,
-12236362, 20843476, -9737228, 14806900, -12678743, -9988483, 11016054, 14021994, 16616155, -17139604,
--69793, 4293357, -12651363, 5987185, -5545340, -9002788, 10274099, -13346074, 14492830, -13717589,
-13579076, -9849434, -3593277, -914828, -17889076, -2501282, 19790136, -5065377, -14089640, 3010235,
-9206262, -10307385, 5134097, 21356188, 11521250, 4318053, 9484898, -11308112, 7580081, -6794639,
--19430968, -5909338, -5058398, 1440425, 8858370, 10901701, -4798016, -8536248, 7802882, 53150,
-5979668, 3713536, -3139621, 1064078, -7710540, 1178432, 2493766, -103079, 2572149, 17577690,
--2146410, 1739999, 5058935, 1050120, 2194192, -8938364, -9750113, 6799470, -11612518, -15819975,
--16563005, 12911209, 8393977, 2489471, -860604, -1917166, 6203007, -973347, -4616553, 5919002,
-16297253, 10992432, -4255776, -2759517, 5078799, 2914672, -1095754, -2572149, 1884417, 2296734,
--635118, 670552, 8873939, 2117419, 1312113, 3463891, -2820183, 650151, 2861522, 5890011,
--512712, 428960, -5696737, 1872069, -2937758, -2178622, 6067715, 4833986, 372588, 3791383,
--3202435, -1564979, 1867237, 45634, -1668058, -3302830, -3515431, 2303176, 1096290, -1542967,
-2126009, -13518410, -21475374, 7644505, 27878096, 13653164, -5236639, -21563420, -7502771, 1376000,
-2998424, -4190814, 10574209, 7141994, -7849053, -4055523, -1066763, -14272176, 19808390, -9035001,
-7044283, -1660542, -4693326, -17391396, 5676336, 3604015, -2188823, 2093797, 7765301, -2849174,
-19364934, -4351339, -2981244, 16159814, -1829119, -11621108, -10405095, -20068234, 2733210, -4467303,
--6254546, -4388920, -14737107, -6179921, -13802951, 1451699, -12152073, 10939282, -6878927, -247497,
-3383897, 1337882, 6305549, -5848672, -14913200, 6455873, -1739462, 3678640, -3353833, -1529545,
-417149, 14313515, 21435644, 5802501, -6760279, 7388418, 7767449, 8496519, -3528316, -7203197,
-10921028, 5152350, 14602352, 3373160, 3885335, 386547, 4377109, 13138842, 17960480, 8818642,
-3017752, 6726993, 2825552, -3786551, -12334072, -7840463, 1384053, 5939403, 924492, -339302,
--4629438, -1739999, 2511482, 1686312, -9751723, -1876364, 2182917, -437550, -4863514, -4083440,
--5434744, 998580, -970126, 3666828, 6884296, 4028679, 213675, -2326262, 4207994, 5046587,
-328028, 1664837, -6808060, -282931, -2312303, -7001334, 1458678, 1234803, -6232535, -676994,
--1464584, 2310693, -2423972, 5819144, 27917, -1424319, 7854959, 41753524, 924492, -11023034,
-34548716, 17670032, 15231565, 30259656, 29904246, 8709120, 9466645, 7661148, 32508070, 1792612,
--11556683, 14183593, 2944737, -12614856, -14381161, 12640089, 12089259, 23517094, -2351495, 1800665,
-258235, 3306051, -13966697, 15752329, 10835129, 4902169, -10861972, 16664473, -5080410, -787590,
--22064858, -4716948, -1723356, -1312113, -11666742, 7685307, -10856604, -6095096, -6386080, 3220689,
--7541963, -10056129, -14111652, 14921790, -10757282, 15863999, 6914361, 13041668, 3935801, -13117367,
--737661, -21135534, -9901510, -11489574, 4352950, -14659260, -8122857, -2610803, 3221, 15342160,
-1472100, -2330557, -24581172, 9752260, 8143795, -519691, -378494, -12320114, 9326521, 1086627,
--10792179, 29006062, 6332393, -3721052, -534723, -11620034, 1745367, 14553497, -4031901, -1157494,
--16294032, -9491878, 5640366, -2215666, -7852811, 9431748, 5537287, -9549860, 8320963, -3286187,
-2488397, -3177739, 8134668, 1832340, -1537061, 261456, 1797981, -11518565, -103616, -4239670,
-3190624, 3983045, 5410048, -4717485, 3879966, 3123515, 2232846, 4262218, 4749697, -341987,
-3599720, -5538361, 9506910, -4400194, 8000987, -5699422, 3394098, -12678743, -23252416, 7141457,
-7002408, -7194070, 15134391, -16734803, 18177912, -13114146, -7638600, 5851356, 4205847, 46917148,
-18330920, 7028177, -29279328, -779000, -6950868, -15518254, -4510790, -5672041, -5138929, -1737314,
--24349780, -468688, -9214852, 301721, 11850352, -12915504, 15378130, -5042292, -17027398, -15187541,
-12182138, 9347996, -3811247, -8385387, 15538118, -8386461, -7925289, 12217034, -354335, 3759707,
--12592307, -424128, -7406134, 15669651, -2368675, 22478248, -8414378, 3378529, 6766184, -642098,
-852014, 6857989, -14500883, -2323577, 18462454, 1498944, 5061619, -171262, -14987825, 6403260,
--10465762, 5325223, 16137803, 20950314, 22836342, 24054502, -5201206, 8442832, -205085, 12908524,
-29139742, -32017370, 24879672, -14802068, 6677064, 20012400, -12641162, 1289027, 6269579, 5457830,
--1509144, 13929116, -5412733, -4404489, 5874979, -3340411, 13402982, -1990181, 5070209, -10815801,
--1774895, -323196, -8730058, -3665218, -11008538, 114890, 3160022, 1068373, 12184822, -4028679,
-804770, 1316408, 5168457, 1275605, 5213017, -7233799, 5423470, 1671816, -326954, 3877819,
-5316096, -6082748, 5522254, -11696270, -10357314, 7212861, -3487514, -8297877, -1215476, 3395172,
--5355288, 9415642, -11256036, -24722368, -4832375, 5019743, 322123, 5819144, -18398030, -2472828,
--3786014, -26129508, -20268488, 10424959, 10835129, 5050345, 7463043, -13359496, -6593312, -9458592,
-28570122, 6903623, 763430, 21461952, 12298639, 10814728, 9666361, 8469676, -15126875, 10907606,
-4371740, -4587025, 8497593, -7557532, -7555921, 14997489, -6529424, 9476308, 19683298, 757525,
-3738232, -278099, 1238024, -4218195, -11613592, -14539001, -23801098, 9817758, -20168092, 7640747,
-7787313, 10214506, 23085, 706522, -2864206, -15391015, -7396471, 7963406, -5416491, 8216810,
-19689204, -5964636, 15050639, 7023882, 1629403, -752156, -5432060, -14230300, -652298, -19266150,
--6779606, 20881058, -11143293, 3414499, -34302832, 16380468, -6392522, 5362804, -26480084, -23386096,
-2174864, 6436546, 12046310, -27154394, -2936684, 478352, 18549964, 15372225, 17164836, -5348845,
-317828, 2756832, 8953933, 2289755, 4903242, 14374719, 8031052, -5272609, 5114769, 1541893,
-970663, -151934, -3069828, -11585137, 4079145, -5524939, 1709397, 4821101, -197032, 1216013,
--206158, 4839355, -2946348, 19360102, 5162014, -576063, 10650982, 6664716, 841277, 3398393,
--377420, -8373039, 11195369, -3492345, 1460289, 13643500, 7417409, -3997541, -2684, -5157182,
-8799851, 6343130, 7504919, 6675453, 20433844, -48400524, -11907797, -28752122, 9699647, -25822954,
--8657580, -29264834, 7824894, -15265924, -11705933, -2510409, -24850680, -9047885, -26626112, -13458280,
--30828738, 6635188, -28522878, -11290932, -14820858, -8318278, -7836168, -6676527, -27227946, -15583215,
--20715164, -10644540, -5985037, 11740830, -1705102, 8759586, -16946868, -2775086, 975494, -19541028,
-3773666, -1385664, 1654099, 5096516, -19764366, -1134408, 7289097, -2462090, 8216810, 16393353,
-29733522, -24717536, 1518808, 33031520, 160524, 16204912, -11584064, 20462298, 3743601, -4909148,
--27478664, -16199543, 22818624, 14068165, 22282290, 797253, -15542950, 5659693, 8051990, 15916612,
--29880624, 196495, 5661304, -16512539, -5496485, -7148436, -10002979, -23964844, 37035504, -6822019,
--11898133, -7617662, 7679402, 8875550, -20929912, -19472844, -771484, 6180995, 971736, 48318,
--4081830, -7085623, -89657, 18644990, 11563126, -136365, -15367393, -10649908, 1727114, -5942624,
-4072166, 4912906, 2512556, -1633161, -7926899, 3229279, 3930432, -2205466, 5950141, -3473018,
--13646185, -6495065, -779000, 3951907, -1013612, -4401805, -19968376, -7995619, -4572530, 1497870,
-2506114, -8642548, -15467788, 6047314, 9290551, -8218420, 372052, -7226820, 7824357, -2532420,
--13719199, 20590074, -34749508, -365609, -6883759, 15025943, -7646116, -21415780, 18715856, -37593848,
--32413582, -26754426, 15353434, -7954280, 871878, -14585172, -13802414, -16129750, 9084393, 7867307,
-26230976, 12353400, 5324149, 24424942, -6468758, 8869644, -8777839, 7652558, 4440996, 14565308,
-23536958, 12304544, -4861366, -14352170, -8548059, -2908767, 13234942, -4325569, 3716221, 530965,
--6033892, 12520903, -756451, 10286984, 7646116, -19981262, 16547972, 30373472, 4763656, 25415468,
-24601572, 11182484, 8172249, 102005, 13019120, -8036958, -29461328, -9558450, 21953188, 264141,
--10806138, 11337103, 31161062, -7051800, 2426657, -22462678, 22228066, 19946902, -1400159, 6461242,
--10116259, 51125144, -31996432, -27755690, -26209502, 2295660, 981937, -7656316, 22814866, -31894428,
--496069, -20355998, 7864085, 9140764, -1386201, 22272626, 5167920, -1787243, -11958263, -52076,
-5657546, 16263967, -11023034, -14159433, 6007049, -8392366, -2177549, 2087891, 3938485, 1436130,
-154082, -949725, -13351443, 1398012, 3282966, 9342091, -7873749, -4373351, 5264556, 2581275,
-3683471, 455803, -8699456, -858457, -9883793, -7444789, 10085120, 5217312, 5710696, 4057134,
--269509, 2084133, -2641405, 6208375, 906238, -2583423, -514859, -8602283, -3212099, -5665599,
-3605625, 56146496, -12625056, 31411244, 53327388, -17985712, 25399362, 11656004, -34111704, 31150860,
-4365298, -14500346, 22434762, 9965935, 21057688, 82678, -18367964, 17329120, 5544266, 350040,
-5047661, -4907000, -19415936, -11125039, -9469329, -16264504, -12593381, -2874944, 12362526, -11120744,
--7166153, -16020228, 3109020, 1644436, 2267206, 22584012, -13710072, 5632313, -12745315, -6760816,
-12476880, -9992241, -23264764, -29204168, 33566244, 15311558, -8761733, 23624468, -21853868, -18596134,
--11800960, -1647120, 3084860, 398358, -20370494, -14485851, -16006806, -34186864, -21858162, -18311594,
-6294812, 11781095, -1302449, 20218022, 3444564, -20365124, -18120468, 27194660, -23479512, 3471944,
-23272818, -2894271, -41038412, 28625420, -15358266, 4714801, 1478006, 23708756, -6008123, -8886287,
--1547799, -13346611, 6708739, -23123568, 7558606, -29774860, -19503446, 11691975, -13033078, -3546032,
--1990181, -17641578, 5471789, -10264435, 8157217, -2611877, -670552, 1002338, 10723996, -7900056,
--6704981, 2035815, -11565810, -4872641, 1366337, -7247758, -8202851, -5325760, -3684545, -8471823,
--5118528, 12148315, -10158671, 4735739, 6947647, -1694365, 7453379, -10319196, 812286, -7234336,
-14847165, 2913062, 5126581, -10562398, 12998719, 9233106, 9871445, 4376572, 971736, 3330747,
-7089381, -7229504, 462783, -6010270, -27130772, 16314970, -7689065, 27520540, 18867254, -43670692,
--5509370, 4770098, -26657788, -4217121, -4362076, 32467268, 23342074, 21734682, 26920318, -872952,
--18862960, -14475114, -15014132, 844498, -41787348, 5149129, 35786204, -32488744, -58886148, 6129992,
--22035330, 43576200, -289910, 1557999, 29127394, -13215614, 5984500, -1218160, -7913477, 25426744,
--7298760, 12927315, 42526620, -31168040, -17861158, -28397250, 14199699, 2493229, 28470802, -16203301,
-11216844, 1640678, 25930866, 15396384, -12681965, -8321499, 9810242, -4573604, -1155883, -18204218,
--18068928, 9596031, -4034048, -5216775, -10275172, 23589572, -8908299, -9327595, 39385388, 42210940,
-27274652, -35679904, -3176128, -11144903, 13903346, 52536040, -6633040, -39860516, -2617246, -16363289,
-23542326, 10631118, -26780194, 14205067, 10404021, 13858786, -25838524, -9215389, 1923072, 22985592,
-1417339, -3588445, 3760781, -7751879, 1811403, 22969486, 11118597, -9435506, -11438572, -2512019,
-7219303, 9240085, 12096239, -11334419, -4328254, -20850456, -4380867, 13345537, -13136694, -1977833,
--8109435, -7439420, -12338367, -2498597, 8424041, -1793686, -881005, 2195802, 5374615, -5466957,
--15742666, -16254841, 9879499, 7677791, 13798656, -6793565, 10131291, 29702920, 1570347, -17627620,
--2833605, 1699733, -1573032, -10991895, -4508642, 3362960, 8637716, -1745904, -25593710, 3745212,
--20978768, 19320910, 11311333, -20750598, 35316980, 53223772, 1644973, -2583960, -18114562, -18559090,
-3244311, 2984466, -8855686, 48147120, -4208531, 35892504, 28975996, -36424008, -1000191, -12262132,
--38730404, 9731859, 9159018, 21166136, 36531380, -1169842, -10241350, 11902965, 13345537, 28579786,
-12150462, 2569464, 23732916, 24759412, 8697846, -5761162, 21783000, 9586904, 26146688, 5515812,
-7659001, 16210280, 27688580, -4635344, -21644488, -25259240, -8056285, -8807367, 43465068, 23686744,
-66998804, -3149822, -33499672, 29620778, -9991168, -11569031, -9909563, -22759568, 3549254, 12744242,
--296890, -12756053, 47674136, -9496710, 56225952, -15357192, 30354682, 2626373, -9249749, -30579630,
--43438764, 40928892, -3741990, -6990596, -12320651, 38045356, 209917, -39908836, 73418168, 23024246,
-8203925, -8383240, -30487288, 15413564, 1064078, 15518791, -14041859, 11082089, 5806259, -6869800,
--10308995, 1935957, -12509092, -5940477, -14241038, 1744831, -2298881, -136902, 5051419, 12015171,
--11915313, 4743255, -5690295, -295279, 16317118, 10782515, -5494874, -20033874, -389768, -1115618,
-2930778, 18445810, -11654931, -6956774, 4871567, 11612518, -16460462, 1205812, 11288248, -162135,
--1020592, -17368848, 9325448, -455267, 8520678, -18144626, 2344515, 7844221, 6395743, 9140227,
--17220672, 14839112, -18262738, 11761768, 49823232, -29701846, -18738942, 3798362, 9163313, -5839545,
-35314296, 27115202, 27821724, 9104794, 13835700, 23009214, 14544370, -8632884, -13648332, -31413928,
--4858682, 16925930, 6054830, 3489124, -11434814, -29721174, -8429947, -4351339, 30272540, 205622,
--3413425, 22612466, -3444564, 6106370, 5048734, -51025284, 13212930, 13524852, -8701067, -21929566,
-4309463, -28862180, -14412837, -44098576, 13450227, -36851356, -72482408, 8237748, -820876, 50969452,
--1585380, 17184164, 42418708, -7118909, -10780905, 18575734, -202937, -37058588, -12712029, 4650913,
-6308233, 27004070, 11489574, 24026584, 21150030, -15280957, -11125039, 10128607, 31042950, -13049184,
--6311992, -28541668, -19413252, 7337415, -38112468, 10910828, -42829412, 7982734, -11178189, 30330522,
--13170517, 21446382, -45916960, -9570261, 6446746, -27599996, 7078643, 4678293, 4886062, -20859582,
-11006391, -20427938, 5921686, -1724429, -8484171, -3874597, -1890859, 6306086, -6922414, -3397319,
--5527623, 13016972, -8446590, 7541426, -19325206, 10089415, -1000727, -1717987, 2914672, 18697066,
-6675990, 7908646, -22431540, 2794950, -9130564, -27991376, 11301670, -9058086, -6976638, -10421201,
-10487236, -5143224, 5110474, 5720897, -2592013, 1108638, -6732361, 1850057, 5794985, -1439888,
-964220, -845035, -10672994, 39035884, 41475964, 97137664, 11383811, -54258320, -40846748, -29954712,
--34712464, 68021544, 90636160, 30826590, -8702141, -28438052, 960462, -34431144, 37940132, 35999880,
-10612864, 5289252, -22541598, -3168612, 41758892, 9838159, 16755204, 14244259, 43823700, 36998996,
--14261976, -32519344, -43154756, -28964722, -4356708, 12117713, 39400420, 23753316, -8260833, 21475374,
--29958470, -10083509, -67331128, -10523744, 66218196, 51307680, -10334228, 134342816, 42083700, 4050154,
--73618424, -12426951, -6335614, -17147120, 18778134, 10555956, 15909096, 28294170, -60071560, -64566780,
--32520418, -43515536, -6243809, 14910516, 54322208, -32366874, 19867444, 84825064, 42330124, 14881525,
-23735600, 17421998, -51163796, -84526568, 43301860, -20802138, 18643916, 45486924, 50162532, 4575214,
--30338038, -39827232, -32590748, 35201552, 20269562, 6260989, 34992708, -34722664, -6054830, -5431523,
--15431817, -17894444, -1533303, -360240, 11359115, 3684008, -4997195, 258235, -430570, 743566,
-3006477, 6647536, 10118943, -9945534, -13794361, -47216188, -25915832, -23255638, 27986006, 16722455,
-10014790, -38626252, -37971804, -61038464, -16681653, 24223078, 30775588, 40193376, 15720654, 11870753,
-4691178, 4038343, -1125818, 9148817, -2125472, 28835874, 20327544, 4234838, 251256, 362388,
--4901632, 95026, -3437585, -20665772, -88855360, -21197812, 49562312, 94849520, 83600464, 200366672,
-104897600, 71143448, 62631896, 28474022, -11193222, -101255464, -127066608, -189608304, -145167216, -148958592,
--56646860, 721555, 57047368, 106081400, 87547536, 90435904, 62362388, 85089744, 66643396, 94214400,
-44893684, 35119412, 16821240, -24260660, -37267432, -57130580, -34507916, -124069256, -52380348, -117431920,
--84691384, -134404016, -79864920, -125110784, -44407816, -62033824, -20174536, 9552544, 63513440, 166483664,
-158586832, 222144304, 150401168, 102548784, 133221296, 181897776, 160131952, 134443216, 93853088, 11283953,
--90948616, -90345176, -111925240, -213090512, -235185424, -256234528, -255807712, -280960640, -242934624, -204712096,
--180480976, -117586008, 13536663, 133675488, 232635824, 307434304, 383318304, 426441920, 297354016, 283510240,
-184050080, 111439368, 105385616, -6365142, -34787624, -163440688, -313117088, -337312768, -273761760, -211687120,
--124660352, -100955352, -102715752, -56740812, -88209504, -35779760, -9798431, 67680096, 128664872, 105603584,
-137536656, 147721104, 157682752, 139170368, 185894240, 138049920, 113196544, 58380416, 12022150, -31498216,
--144003808, -127659312, -170960640, -226791984, -205370304, -235537088, -241945712, -70679056, 7909719, 122815664,
-150490288, 160145376, 186028992, 194166352, 164831712, 143226960, 109942032, 83212304, 30141544, -21665426,
--64131916, -115826144, -169924480, -159350272, -142110272, -106482976, -50061600, -22230750, -10474351, -6448357,
-15658914, 32527934, 39698384, 42518564, 35276712, 28041304, 30631170, 24751360, 18669686, 33991980,
-38386808, 29316374, 14464376, 7485591, 12199318, 15668041, 6249178, 3095061, 6237903, 836445,
--11827266, -35400196, -42541116, -28210956, -21598854, -24828670, -23589572, -14520748, -20495584, -23381266,
--20064476, -8260833, 1870995, 10173167, 14108431, 18976776, 21678310, 20010790, 17019882, 19320374,
-19576998, 17012902, 11996381, 8338142, 2926483, -1067299, -2303176, -3824132, -7774428, -4822175,
--2280628, -4078072, -5760625, -3799436, -747861, 3356517, 2638721, -446677, -3553012, -2975339,
--5353677, -9904195, -12313671, -11530913, -10953240, -9507984, -10278394, -8945343, -3889093, 282394,
-1404991, 7608535, 16209207, 19364396, 16056198, 14565308, 14669461, 12628278, 7373385, 3803731,
-2605435, -46171, -4412005, -6541235, -7711614, -7814156, -7621420, -7081328, -5683853, -4032438,
--3651259, -3367254, -2847027, -1453846, -804770, -248571, -53150, 542240, 504122, 650688,
-344134, 396211, 47245, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
-12934294,
-573915, 2186138, 1808181, -5255966, -2726231, 7173133, 12464532, 2024003, 6643241, -2678986,
-1261647, -326954, 5629092, -4437238, -10154376, 4129074, 4765803, -5904507, 6880001, 3404299,
-6278169, 2005213, 1502702, -2713883, -863288, 351650, 4191888, 402653, -6275484, 303332,
--493384, 1388348, -859530, 1149441, 1527398, 3778498, 2739652, 925565, 1192927, 403190,
-1860258, -1905355, -3115999, -6935836, 1369021, 1565516, 587874, 5372467, -1866163, 4183298,
-1171989, -1620813, -3264712, -2094870, 7504919, 1637456, 4201552, 732292, 1675037, -1398549,
-286152, 538482, 2180770, -607738, -2754148, -1468879, -5766531, 683974, 1167157, 5000416,
--1558536, 3832185, -624918, 2523293, 80531, 2277407, 1773285, 1084479, -890669, 2613488,
-3586835, 2520072, 2357400, -37581, 542240, 622770, -1917166, 867047, 484258, 1768453,
-932545, 754841, 962073, 1278290, -650151, 790811, -484794, -24159, -203474, 4871567,
-4546760, 2192044, 1811939, 2607045, 2979097, 4603668, -2053531, 4774930, -27917, 5095979,
--1180042, 9010841, 2954938, 3030100, -6167573, -775242, -1460826, -7841537, 4248260, 3725347,
--2581275, -10297184, -4804458, -1481764, 4975720, 7031399, 4306242, -2704756, 1404991, -4372814,
-132070, 461172, -3701188, -1727651, -9464497, 849330, -1257352, -3854733, 328565, 615791,
--1352378, -223338, 8902393, -2085207, 7236483, 1498407, -5735929, 493921, 468688, 4188667,
--1928440, 1241782, 893890, 389768, 5521181, 2018635, 5670431, 4304094, -3033321, 5318244,
-2471754, 3903052, 278636, 1324461, -1425392, -2421825, -4818417, -5759015, 5992553, -5986648,
--4757750, -4939750, 2726231, 2610266, 1034013, 1172526, 3477313, -2223183, 2596845, -1661079,
--2509335, 3958349, -3661460, 673773, 1736777, -2943663, 646929, 507343, -552440, -402653,
--348429, 2109366, -752156, 829466, -987843, 1635846, -520765, 945430, -1167694, -1118302,
--1125818, -8057359, -7562364, 1656784, 112206, -1597191, 4471598, -560493, -824097, 4712653,
--5193153, 1040456, -4539244, -2883534, -1665374, 78920, 7605850, 8715562, -4078608, 3431142,
--6301791, -571768, -2495376, 8465917, -2542084, -452582, 836445, -11860015, -2115808, -5845451,
--1983738, -1433982, 4377109, 5903970, 2358474, 7971460, -1069984, -3598646, -3725884, 4611721,
-11876121, 8360154, -4706748, -5421323, 5913096, -5334887, 964220, 1922535, 9718974, -3579855,
--4872641, 1082332, -3044058, 1886028, 2434173, 6229850, -6861747, -4398584, 3933116, 7521025,
--747861, -3470871, -4480725, -10601053, 3971234, -6979, 3106872, 507343, 219043, -1658931,
-1890859, -2700998, 1624035, 2301566, 2254858, -3760244, 2709051, -683974, -2704219, 259846,
--5633924, 3498788, 466004, 446677, -2276333, -757525, -1936493, -3884261, -3013993, 2068564,
-130460, 837519, -788663, 272730, -284005, -1112933, -942208, -1626182, 104153, -934692,
--762357, -231928, 299037, -292058, 465467, -305480, 1885491, 748935, -1203128, 1320703,
-732292, -1536525, 1013612, -19744502, -6420439, -1104880, 3418794, 2192044, 4958003, -9465034,
--2754685, -492848, -9687836, -7031399, 2507724, 5828808, 3519189, 6439230, -773094, 3669513,
-8722005, 7577933, 7242926, 4074313, -2712272, -2272038, -4394826, -2040110, -4415764, 9179419,
-4356708, -1488206, -4043175, -2567317, -4129611, -6162741, -6520297, -8328479, 5034776, 3500398,
--9115531, 2094333, -431644, 6262063, 1012539, 3048890, 4145717, -8731669, -1309428, -385473,
-1185411, 4481262, 6940667, -2831457, -965294, -2093260, -5421860, 1612223, 1122597, -639413,
--1457068, 5172215, 316754, -2956011, -949188, 2420214, 3377455, -1412507, -120796, 815507,
--4714264, 3460670, -337692, -7187091, 848793, -8759049, 1410897, 6410239, -2130841, -318364,
--9743670, -4827007, -7232725, -4463008, -575526, -806917, 4537096, 824097, 5322002, -3230889,
-1810329, 2821794, 984084, 2776696, 352187, -1951526, 1120450, -898185, 932545, 37581,
-399969, -402116, -1320703, -538482, 1214402, -1334124, 908922, 2199560, 1163399, 540092,
-74625, 37044, -457951, -906238, -1433982, 1043140, 1444720, -882079, 952946, -928787,
--671089, 10902238, 3976603, 1923609, -2797098, 8056285, 2988224, 4594542, 12513924, 13753022,
-424128, -2123861, -4941360, -7330436, 2627446, 5490042, -2892661, -462246, 671089, -1209033,
--4461934, 5211406, -5111011, 2452963, -14558865, -1998234, -3622268, -3423626, -7247221, -1402844,
--1029182, 197032, -3767223, -5143760, -4227322, 657667, -2837363, -5464272, 3209951, 4850629,
-280784, -4469451, -5218922, 1958505, -4045322, 4576288, -5735392, 3704946, 1198296, 9664,
--8127152, -7340636, 1604170, -5298379, 8607114, 1635309, 7202660, -3718368, 7248831, 1510755,
-4622459, 1687922, 4371740, -4066797, -6046777, -48855, 9349607, -855235, -6513318, -3315178,
-3999688, -2581275, -3781719, 1029182, -10313290, 6942278, 8143258, -449361, -7202660, -8847633,
--415538, 7562364, 5272073, -4182761, 5607617, 661962, -986769, -1059783, -746251, -421444,
-1430761, -2455111, -2331630, 251792, 701153, -1832340, 529355, -829466, -427886, 2046015,
--964757, -378494, 154619, -3089155, 1494649, 467615, 115964, 777389, 821413, -86436,
-91268, -568009, -787590, -425202, -542777, -820339, 15410343, 3307125, 8416525, -3224447,
-6278706, 4887673, 9838159, -7234873, -5367099, -1551557, 470836, 7208566, -3428458, 10874320,
--902480, 6240051, 5167383, -2865817, 2065879, 6321118, 5616744, 1602560, 1479079, 5771363,
--11744588, 2042257, 8905078, 7176891, -6395207, 7997229, -9383967, 5777268, -8289287, -3994320,
--2255395, 8665097, -1849520, 9066676, 1874216, 2060511, 330176, -165356, 3421478, 5377836,
-11520176, 1964411, 9926206, -4804458, 7224672, 9800042, -419833, -1598265, -3602404, 3872987,
--13925358, -1010928, 1245004, -5035313, -8310762, -324270, -637266, -970663, 3500935, -8300025,
-4151623, 3858491, 5246840, -13165685, 4464619, 3337190, -7980049, -785442, 4220342, 9930501,
--12520367, -1397475, 837519, -11584601, -1146219, 1863479, -3367791, 7847442, -1835562, 811749,
-2056753, -1207423, -496069, -383863, 1267015, -2892124, 347892, -1431298, 827855, 420907,
--1831267, -44560, 2029909, -800475, -528818, 199179, -2579665, -795106, 384936, -804233,
--1228361, -207232, 377957, -1225139, -675384, 1882806, 2240899, -2854006, -171799, 642635,
--68183, -341987, -13764296, -16957068, -13506062, -12271795, -380105, 8580271, -17816062, 12673912,
-8256001, -20086488, 12663174, 5322002, 4354560, 1956358, 1975685, 4508105, -3117610, -3301219,
--6556805, -223875, 7726646, 6476811, 3823595, -11445551, 7837242, -8187819, 256624, -7202660,
-8990977, -4771172, -3670587, 2804077, -13394929, 1317481, -4414690, -4038343, -1398012, 938450,
-13242995, -6251862, -1988033, -5049808, 10080288, -6131603, -3258270, 3073586, 3055869, 2811056,
-3590056, -4190814, 4880694, 1213865, -10980621, 15122580, 6060199, 2425046, 1614908, -98784,
--7021198, 8645769, 7298223, 3012920, 9753334, 1013075, 4312684, 9746355, 5009543, 2079301,
--6699075, 8026757, -3500398, 15354508, -1644436, 386547, -4165582, -16153909, 2137283, -3934190,
--1890859, 8256001, -676994, -8773008, -4959077, 7093139, 5978595, 906775, 6922951, 1796370,
--5046587, 2384244, -466004, -1718524, -1388885, 539018, 4103841, -1952600, 522912, 703301,
-2315524, 850404, -1839857, 2964064, 451508, 774705, -161598, 751619, 384400, -1188632,
-1723356, -1200980, 1421097, 1081258, -857920, 3343095, -445066, 809601, -1132261, -781684,
-9854802, 6717329, -1141924, -6180458, 16196859, 25755308, -3401077, -3573413, 12453795, 3032784,
-4108673, 3307662, -18547280, 2047089, -11992622, 9599789, 13684303, -3585761, -6606734, 2241973,
-8668855, -5195300, 10471130, -4101694, 20207284, -5900748, 3912715, -983011, 5486821, 14401562,
--5430450, 1426466, -1266479, 4172561, -5333276, -2567317, 8198019, 17667348, 1480690, 12937515,
--4780836, 1793686, -2425583, 4321811, 9454834, 14103062, 10991358, 10449119, 10857140, 6877317,
--1975685, 1688996, -1487669, 288300, 2161979, -7033009, -2024003, 11369852, -9966472, 3992172,
--4378719, -2609730, -5177046, -20533164, 2305861, 11165841, 7061463, -2513093, -9739375, -23666880,
--3808026, 9665287, -1984275, 3830037, -7374996, 5537824, -6800007, 6284611, 13443248, -5867999,
--7252589, -13373991, 4056060, 1686848, 2213519, -10565620, 778463, 98247, -3195456, 645319,
-5014911, 256624, 3452617, 1562294, 2241973, 2760590, -454193, 4321274, 1039382, 475668,
--872415, -1349157, -1163399, 4123706, 1393717, -97711, 2757906, 1483911, 1996086, -335007,
-2286533, 2809446, 3762391, -1517734, 419833, -1475858, -17674328, -14102525, 1854889, 8262980,
--7931731, -5248450, 1060857, -4314832, -26476326, -22897544, 9995463, 9153649, 1722819, 1321239,
--9674414, 15176804, 18510772, 11363947, -9496173, 8866960, 12164958, -1919850, -15354508, -6972880,
-21303574, -6349036, 2168422, 1263794, 11984569, -9617506, -17047262, 3677029, 7885560, -4232691,
-5058935, 11036992, -5335960, -4283693, -468151, -23893440, -6875706, 8176544, -4498978, -15977278,
-2921115, -456340, -4983236, 3135863, -1473174, -15151034, -12782360, -22661858, -17952964, 3474629,
-7960185, 705448, -5353140, -7587060, 216896, -5199058, 4857608, -10906533, 399969, -3885872,
--3109020, -3717831, -953483, 4212289, -4913443, -21743808, 3287798, -3160559, 5389647, 5916318,
-436476, 4100083, 5058398, 1563905, -1214402, 2610803, -3059627, 1185948, -6742562, -3617973,
--3011309, -3753802, 1565516, 5948530, -3106335, 912144, -7669738, 856309, -747324, -5730023,
-2511482, -1844152, 1461900, 2306398, 1360968, 1013075, 4869419, 1030255, 650688, 1588601,
-31139, 635655, 688805, -1414118, -3651796, -758062, -3698504, 1724966, -2810519, 4134443,
-58519, 5936719, 2762201, -3623879, -2361695, -1989644, -209380, 8647380, 27790050, 24688008,
-19298898, -2054605, 18871012, 6125160, 26335128, 11160473, -521302, 32126892, -6662568, -1663226,
--20424180, -5373004, -390305, -14397804, 8660802, 12914967, -4159139, -151398, -11577084, -19879256,
--11714523, -15146202, -4393752, -9133248, -2849711, -1403381, 9162239, 2357400, -1857573, -8159364,
--2791729, -5428839, 2956548, 266288, -8086887, 4351876, 5451924, 2193118, -6237367, -8194798,
-2804614, 7693360, -1038308, -217970, -14545444, 26248156, 4444755, -4905390, -660888, 2398739,
-11259794, 9593883, -9791452, 5633387, -3794604, 1275605, -1605244, -2398739, -14905684, -13265543,
--17859548, 2804614, -692564, -3690988, 11307038, -3483755, 31814970, -3032784, -1654099, -7723962,
--3435437, 4221416, 5522791, 3941169, -206158, 13771813, 9859634, -1914482, -6549289, 1920387,
--3879429, 95026, 1349157, -4285841, -1388885, 234613, -1413044, 2269353, -5346161, 3345780,
-6113886, -1724429, 3240016, -1737851, -1423782, -2310156, 1064615, 3485366, -1356136, 4634270,
-920734, 1726040, 6284074, 2816962, -755377, 6666863, 3013993, 4668630, 5958194, 4682588,
-574452, 131533, 4432406, -3858491, 208306, 2808909, 1530619, 3195456, 2891587, 1675574,
-3689377, -16760036, -24307904, -13240847, 17748416, 14292577, -12521440, -12585328, 19045496, 11782169,
--12375411, -16461536, -2948495, 2974265, 1612223, 2495376, -9925669, 10280541, -7466801, 19990388,
--3332358, -13820131, 2996814, 5217312, -377420, 1657857, -6408091, -8936753, -766652, 8211441,
--5211943, 6287296, -10026064, -25928180, -21421150, 13535053, -16747151, 13349295, 3580392, 1684701,
--5784784, 7901129, 2208687, -1923072, -4059281, 3776350, 7660074, -7023346, 21783000, -5425081,
-7141457, -6510634, 1660542, -1725503, -8932458, 21446382, -16953846, 23318452, -1123671, -11377905,
--17804250, 9100499, 2854006, 3052111, 744640, 9566503, 6029597, 8684424, -18319646, -5319854,
-198642, 395137, 4268661, -13517873, -6905771, -4365298, -2623688, -16959216, -3773666, -5610301,
--19521164, -923418, -11190537, 2908767, -5398774, 1559610, 2205466, 8527121, 4709969, -3122441,
--813359, -6978248, 3627100, -408559, 3112241, -8208756, 183610, -3242700, 1737314, -7561290,
-1233729, 1818919, 113280, -1625108, 2407329, -4414153, 3158412, -6928856, 2416456, -4947266,
-2182917, 1398012, 3169149, -2535105, 8533026, 3528316, -132607, -5237176, -4638565, -769336,
-5611912, -1145146, -3138011, -2676838, 3763465, 337692, 3548180, 41249940, 13763760, -9197672,
-21196200, 19740206, -10204305, -13003013, 31870804, -2852932, 7012608, -18897856, 46393700, 1622424,
--12985297, 6737193, 2325188, 22528178, 395674, 28450938, -20438138, 443455, -22325240, 1727114,
-15707769, 736050, -13675176, 19397682, 10373957, 5717675, 4678293, -6769942, -6527277, 1772748,
--9674414, 12704513, -11310796, -15086073, 13337484, 5057324, -17498234, 9516574, 1162326, -12722230,
--7130183, -4247723, 6703370, -1497333, -7661685, 9356049, -11310796, -4484483, -3875134, 15656230,
--10269804, 7568806, 12026982, 5568962, -7103876, -14620069, 9277129, -12501576, 16916802, -21299280,
-28106266, -8314520, -3947075, -3991098, 12799539, -920197, 4647155, 7652558, 4610111, 10875394,
--10609643, -20207822, 1421634, 17179332, -11458436, -5424544, -11976516, -7185481, 3163244, -1182190,
--3442416, 7434052, 5352066, 3932043, -1883343, 11332271, 6941741, -5255966, -2766496, 2239289,
-610422, 9598178, 6086506, -772020, -3115462, -2425583, 10480257, 978716, -5362267, 6642704,
-1996086, 287226, 5541045, 2522220, -967441, -5633387, 1585380, 6898255, -5100274, -1258962,
-7854422, -490163, -1611150, -1956358, 4640712, 916976, 141734, -2064806, -24671902, -3053185,
-22560926, -6585796, -14068702, 6243272, -6604586, -1202591, 10230075, -24492052, -14393509, 9487046,
-12611635, 17207786, -1213328, -3230352, 6932614, -1641751, -24222004, -16572668, 28501940, -2144263,
--24960202, -14474577, -10041097, -8237211, 2325188, 8404714, 461172, -4146791, -12452184, -19035296,
-2573759, 2559264, -659814, 15608985, -10627897, -29871498, 12133283, 8821326, -34909496, 20877836,
--5639829, -17607218, -14521284, -1285806, 19881940, 4779762, -6573985, -7170448, 5684389, 10473815,
--14696841, 11286637, 1822140, 8322573, -6359236, -15267535, 13578539, 73551, 15226733, -47229608,
-6015102, 7329899, -6983617, 13166222, 15261629, 44960792, 1279900, -29634200, -13671955, -7716983,
--28827820, -28271086, 1474784, -16039555, 212601, -10645613, 10593000, -10833518, -10681047, 18997178,
-4657892, -602369, -1041530, 11167989, -2350421, -1069447, 6444062, 5335960, -4093104, 3661460,
--10141492, -2186675, 2822867, -1867237, -2949569, -4836133, -5203890, -2616172, -6416681, 2622078,
--8154533, 1816771, -1418413, 7693360, -1810329, -3936875, -3401077, -4543539, -4930623, -1263257,
--3451006, -5930276, -4437238, 4437775, -5939940, -2997350, -10612864, 3328063, 4243428, 11002632,
-2454574, -1345935, 660351, -20680804, 3349538, 12650826, 11389716, -18362596, 32622960, 22632868,
--10400263, 13508209, -26326538, -5923297, -8793409, 41566692, 26720066, -9985262, -15843061, -19507742,
--4275640, 1032940, 7692824, 27860916, 5985574, 4675609, 6085969, 700617, -9168145, 1052267,
--1700807, 12800076, 17416092, 21952652, 14380087, 9269076, -2120103, -4140349, 3548180, 19894826,
-3208878, 3473018, -20248624, -10388452, 34331284, 13843753, 10361072, 184147, 20594906, 10899553,
-43336756, -2495376, 44681620, 3097745, -13777718, 14370424, -11984032, -9086003, -1505923, -8310762,
-568546, 8208756, 17928804, 3029563, -3719442, -19625854, 6392522, 1540283, 12984223, -15410880,
-4180077, -6849936, 2406256, -19582904, 10001368, -17241072, -1984812, -23440320, -32027572, -5439576,
--4914517, 26377004, 7236483, -903554, 5068062, 8172249, 10424959, 1665374, -278636, 346282,
--18502182, 5819144, 387084, 17272748, -6922951, -930397, -4514548, 12250320, 2586644, 11182484,
--1074, -13173738, 6518150, -762357, 4470524, -10035191, -4362076, 2305861, 2891050, -7482907,
-857383, 6699075, 4372814, -6594923, -7079717, 12664248, -12680354, 5261335, -3801583, -10557030,
-3479997, 2306398, 3511136, 4263292, -4626217, -699543, 6295349, 399969, 4438849, -1905355,
--4718559, -5093295, -10979547, -16604880, 5011153, -19061602, -107911, 23138062, 7170985, 19724638,
--22937272, -10519986, 11118060, 2317135, 32620814, -16612397, 19469086, -7394323, -9995463, -24376086,
--9569187, -13107703, 16246788, 3814468, -21824340, 27200564, -14175003, -13107703, 2529736, 10581726,
--8069707, 18797462, -9249749, -13112535, -6866042, 6217502, -2428804, -3630858, 1905355, 18722300,
--12853763, 34298000, -13474386, -491774, 31673774, -6441377, 5451387, -43455404, 1773285, 7700340,
--9956271, 19084150, -34985728, -42661372, 15999827, -7628399, 23384486, -17659832, -16785270, 1819992,
--5645198, 36131948, -4594542, -1742683, 7878044, -33727304, 1720134, -34084860, -13818520, 1865090,
-7919383, -42536820, -19153944, -5310190, -2285460, 13634911, -18425946, 21625698, -9147207, 2334852,
--28111634, -1522029, -24867860, 9197136, 5099200, 18223546, 23134304, -8824010, 15086073, 1955821,
--5261335, 7715909, 4651987, -7648263, -7873749, -13599477, -740882, -8143258, -8640400, 2775623,
--2238215, 11484743, -15862925, -2852395, -10073846, 3732864, 5415417, -5558225, -995359, -8444443,
--8562017, 9169755, 15006079, 17052094, 3256122, 963683, -4904316, 3112241, 2563559, -6654515,
--10638634, 3390340, -5740761, -7749195, 11341398, 7944616, 6500970, -10801306, -12592844, -26562226,
-21714818, -19069654, -5097590, 16913044, 39598524, -11381126, 32511828, 11286100, 8617852, -15130096,
-35989680, 5456219, 16963510, 1428077, -20605642, 7492034, -20691004, -21036750, 13389561, -20954608,
--4160750, -4987531, 21472688, 1710471, -6761353, 6750615, 9742060, -4452271, -19598472, -4769561,
-15675020, 37051608, 8898635, -21009906, 2642479, -4102231, 9243843, 11193222, 19171660, -8405251,
-770947, 12113955, 3147674, -715112, 25182466, 22364432, 27059904, 9144522, 22789634, 3001109,
-13799730, -10640245, -1562294, 2913599, -20567524, 1509144, 35651448, -4554276, -7430831, 7372848,
--222801, 9439801, -20742544, 27787902, -17175574, -7864622, -4486630, 1368484, 3573413, 3525631,
--30314952, 38556996, -8085276, -12410308, -4291209, 32735704, -3452080, 6774237, -25654376, -18098456,
-805843, 13597330, 12820477, 20919712, -33416994, -10594074, 32529546, -11628087, 3834332, 27565100,
-6847252, 6000606, -1526861, 913217, -10271951, -855235, 2905009, 7844758, -4501663, 6526203,
--11894912, -6866579, 925029, -3466576, -1829656, -28330678, -21661668, 1765232, 14504105, -13389024,
--22605486, -9374303, -18524194, 5238250, 1066763, -7218230, 18238042, -5212480, 7588671, 8214125,
--9570798, -6940131, -1412507, 2187212, -503585, 13572097, 14496, 842887, -6361921, -1498407,
--10139344, 63247152, -3848828, 12773770, -676457, -6373195, 1629403, -29083372, -12619151, -8870718,
-11188927, 8201240, 14116484, 1730335, -15532749, 16188805, -13223667, 18645526, 13478144, -14939507,
--16280610, 1990181, 22513682, -23211078, 9554155, 10793790, -13502303, 5982890, -1926293, 8184060,
--1245541, -33891052, 18817862, 11742977, -28823526, 34548180, -18518826, -4357245, -11556683, 27886686,
--5761162, -23665806, -287226, 383863, 22775674, 23434952, 1302449, -18036716, 25997438, -4223027,
-4378719, -33288144, 25962540, 10703059, 1320166, -19098646, -14740865, -2028298, 8855149, -15352897,
--27721330, -11683385, 21410948, 13440026, -3485903, 35202624, 1819992, -5720360, -25675314, 31061740,
--29156386, -9321153, 31431644, 10023917, 3819837, -11933567, 4632659, 31272730, 6644852, 13711146,
-19501300, -51172924, -11514807, -8502425, -4545149, -21223580, -4072703, -2515777, 30773978, 8425652,
-1785633, 15803869, 21894132, 15559056, -11328513, 5930813, 12969727, -2631204, 4815732, 5737540,
-6771553, 4595615, 21747566, 11956115, 1044214, -6422050, -10278394, -19116900, 2453500, 26844,
-4831838, 6283001, 2649458, 33239826, -4897874, 12027519, 6865505, -9039832, -26721140, -4260608,
--10110353, -16423418, -18060338, 3066070, -3271691, -21378736, -277562, 8162049, -2461553, -2078764,
-7122667, -5255966, -16708497, -7258495, -25813290, 1306207, -28842316, 26996554, 40889164, 19717658,
-23030152, -35667020, -32758252, -24847996, 1882806, 45280228, -8855686, 17118666, 28572270, 15135465,
--16669305, 1404991, 20693690, -27013196, -23529442, -19256486, 21698712, 15965467, -29385092, -40220220,
-54492936, 34398392, -39927628, 18195092, -5232344, 16697759, 1098975, -11498701, -27946278, 25313464,
--1329292, -19853486, -30957588, 8129836, 6411850, -7283728, 127238, -2436857, -15632607, -6207302,
--8565239, 14416595, -27242978, 29641716, -20732880, 1430761, 45373644, -44108240, -11445014, 42304356,
-2344515, 10151692, -6955163, -12810277, 12443057, -4559108, -19233938, 2714956, -42931956, 71854264,
--7779260, -78614008, 29118268, 78124384, 45175004, -95924872, -28742458, 18473728, 6195491, -14388677,
--22950158, 12259447, 28631862, -35952096, -10768020, -62918048, -11674795, 22043382, 7175280, -19077170,
--32399086, 12652437, 26910654, -381715, -9338870, -14947560, 21213918, 13286481, 8141111, -1667521,
--7463580, 2802466, 11475079, 9731859, -3076807, -25144886, -16608639, 26491896, 10432476, -13421773,
--10063645, 19034758, 5450851, -2507724, -39269424, -17477832, -20031728, 21667574, 5014375, 4818954,
--4890357, 642635, 20051054, -4175245, -4649839, -18222472, 2694018, -5851893, 28325310, 6269042,
--7507603, 3606162, 28581396, -3812320, -12253542, 2431488, 222265, -1478006, -20315196, 4955856,
-19278498, 46232640, -19572702, 15311558, -24610700, -63960116, 34389804, -15836081, -35511864, -24021752,
--36293548, 17613660, 11678016, -48030620, 30767536, -16503949, -1515050, -226023, -25130928, 19524384,
-18801756, 17199196, -1873680, 22388054, 11233487, -12990665, 946503, -27229556, -10261214, -24116242,
--17338246, -836982, 39537320, -32873680, -7350300, -6800007, -30032022, 17827336, -33840048, 17770964,
-14852534, -22439056, 17743046, -36293548, 10299868, -31507880, 20454782, -11576547, -17073032, -17108466,
--26200374, -6642704, 12865038, 23010824, -26584774, 17986250, 9662066, 27944130, 33709588, 20024212,
--28392956, -12731357, -53213036, -13040594, -15592879, 17987324, -62064424, -11382200, -36991480, -2840584,
-36721972, 34324304, 22138408, 8258149, 49518288, 54789824, 48275432, -16302085, -21966074, 18768470,
-47255916, 88065080, 6159520, 20883742, 10519986, -4351339, 16039018, -15468325, 9387725, -3768834,
--403190, -9848897, 16280074, 19371914, -6811818, -15400142, -12107513, 14754286, 6209449, 16685411,
--9133248, 6672769, -3412352, -6916508, -4840428, 16569447, 31927714, 15664819, -16816408, 8791798,
--5922760, 11815992, 4976794, 6002754, 15530602, -9796820, -21299280, 2069101, 16080358, 13052942,
-4207458, -2850248, -7449084, -28726888, 28350006, 8272644, -6891275, -29887604, -7232725, -20448340,
-10166724, 11840688, -10009958, 7344931, 57498876, -33996812, 21504902, 26100516, -12069395, 2357400,
-10023380, -3221226, 27901182, 1413581, 20207284, -25830470, -3631395, 22431004, 3719442, -35041564,
-22697828, -14003204, -11379516, -13389024, -3452080, -13058311, 13309030, 18547280, 9067213, -3252901,
--9716290, 16091632, -5216775, -25739740, 21104932, -43448428, -10904922, -8956617, -9504226, 24773372,
-27171574, 48645336, -14224932, 20805896, -722091, 9374303, 31952946, -2334852, 3467112, -21279416,
--66959612, 33179160, 6455873, -32360432, -22107270, 3273839, 17592722, -3084324, -18916110, 9854802,
--19395536, 25617870, 14366129, -11153493, -23273890, 46437724, 5191005, 2483028, -4170413, 6459094,
-3369402, 2051921, -15517180, -32963874, 9219147, -4796942, -11645267, -30369714, -7380365, -857383,
-27224188, 11233487, -34064460, 19973208, 3660386, -1243393, -3678640, 11173357, 14354318, -2756295,
--6268505, -2354716, -5923297, 5333813, 8586176, -295279, 4980552, 9583146, -3376381, 13803488,
-5964099, 4306779, 7342784, -3762928, 17313014, 3005940, -3495567, 11324755, -13412646, 4482872,
-7949448, -3088082, -5646272, 15600395, 22446572, -19815368, -3535832, -6886980, -6675453, 8121783,
-7074348, -12377022, 7111392, 5739150, 5145908, 6007049, -11075647, 8224326, -679142, 4932233,
--13851806, -3422552, 2910914, 64133524, 32263258, 64531884, -59616832, 5420786, 30535070, -11669426,
-34820372, 68070400, 36894844, 2450279, -18564996, -18545668, 3211025, 29662654, 31154082, 7432978,
--383326, -46496244, -9947144, 46417324, 14956687, -12585865, 25172266, -21395916, -30631170, -8048769,
--2333778, 35947804, 46275588, 42129872, 15546708, -15948287, -25254408, -45995880, -46323908, 40350144,
-16492674, 3557844, 61577484, 4022237, -19267760, -25056302, -26050588, 12788265, 26124676, 21314312,
-40279276, 3150896, 28892782, -1648731, -5571647, 15064061, 26725434, 20050518, 16865800, -15164993,
--6168647, -11906723, -27760522, -21719650, -40309880, -13123809, 10392210, -6306623, 28760174, 35225712,
--898722, 586800, -14647449, -25308094, 4941897, 34042448, -2279017, 18953690, 7869991, -2203855,
--10919417, -4619238, 2756832, 12045236, 8862665, -8784282, -19252190, -23138600, -22279070, -8259222,
-8575439, -2042257, -14127758, -6815040, -9906879, -7850127, 4185983, -985158, 12613245, 18771154,
-3821984, -22304838, -11926587, -13270375, -3405909, 15436649, 3330747, 3969087, -18773838, -17231946,
--20237886, -9991168, 17029546, 12057047, 14653892, 8276939, -7595113, -8762807, 6024766, 5970542,
--1891933, 4114579, -7946227, -5912023, 4182761, 3383361, 5924371, -3460670, -7898982, -3286724,
--6131603, -900869, 11530913, -33986076, -66058208, 26021060, 107920720, 109580184, 92893704, 67180808,
--41432476, -47412144, -51079508, -68108520, -104039144, -83944600, -72773392, 33749852, 78339128, 58133992,
-125942400, 97210144, 50799264, -18786186, -33848636, -84683336, -65983044, -65478924, -13300440, -40149356,
--32476396, 9636296, 17781702, 35581120, 35854388, 49021684, 48766132, 62751620, 36711232, 16045461,
--9070434, -10677826, -27572080, -41895796, -50438484, -61814244, -40372692, -75906032, -50458348, -37990060,
-38028176, 71904728, 77682536, 53626960, 36652716, 57239568, 43916576, 54932632, 43290048, 15088220,
--20346334, -96369936, -68038728, -69489888, -107670000, -67655936, -58430344, -56837988, 20706038, 57052736,
-90764472, 74615928, 106691280, 95626912, 93638880, 66646080, -36340792, -33020782, -74828528, -99111200,
--109069624, -89577448, -42900816, -12264816, -22553948, 29467770, 78161424, 54994372, 37258304, 62573380,
-52706764, 18752364, -12335146, -12559558, -4006668, -15394237, -41972568, -26475252, -29975650, -16293495,
--13418015, -31374200, -11548093, 10727755, -10448582, 34622804, 45832668, 50224272, 53252224, 3255048,
-15931107, 15470472, -4490925, -72931232, -58095876, -45493904, -40524628, -32009854, -30252676, 33497524,
-50167364, 54412940, 52183316, 42931956, 29529510, 26482768, -347355, -7900593, -42089604, -56925496,
--50884088, -42523396, -27047556, -17671642, 2111513, 25613574, 52068964, 38919920, 24835112, 17923436,
-4974109, -355409, 85362, -10384694, -13491566, -11211475, -13181792, 3173444, -4919348, -18185966,
-2458869, 8731669, -3183108, -4514548, -3712999, 2094870, 3476776, -4705674, 1084479, 11889543,
-7484518, 3519189, 7367480, 7103876, 1269700, -1352378, -2207613, -4722317, -6667400, -4943508,
--3567507, -4542465, -3773129, -1718524, -672162, 1036698, 2218888, 2260227, 2063195, 3573950,
-2892661, 3187940, 1329829, -1216550, -1475321, -122407, -1378148, -2658048, -1705102, 1177895,
-2739652, 3427921, 2703682, 2628520, 653909, -1366873, -2885681, -4315369, -5814312, -5432060,
--4786204, -2977486, -1274532, 1124745, 4128001, 7341710, 8199093, 8187819, 6595459, 4103841,
-905701, -2011118, -5883032, -7658464, -8315057, -7165616, -5158793, -2477123, 567473, 3425773,
-4170950, 4918812, 4330401, 3130494, 1515587, 643708, -164819, -436476, -811749, -824634,
--1003949, -541166, -633508, -495532, -646393, -278099, -359704, -59056, -209380, 69256,
--157840, 78920, -113280, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--3398393,
-3420942, 2815888, 6496675, -8848706, 1939178, 5733245, 10643466, -1203665, 6017786, -310848,
-5468030, 1248762, 8361228, -228707, -2647847, 5538361, 8014409, 7487739, 4502737, 1158567,
--3027415, -2483028, 794032, 3792456, -1911797, 1731946, 519691, 4320200, -2074469, -179315,
-1135482, -5282810, -2995203, -1592896, -5414880, 1250909, -1499481, -100932, -701690, -4596689,
-3576097, 5362267, -1081258, 382252, 536871, -917512, 5785321, -7026030, 16106, 2834679,
-810138, 870268, -1639604, -5826660, -1441498, 2197413, 2691334, 2904472, -491237, 53150,
-71404, 1123134, -949188, 6001680, 200790, -578747, -3934190, 489626, -2809446, -2235531,
-2416456, 2554969, 6265821, 175557, 6161131, 652298, 693100, 368830, -3212636, 156766,
--1124745, -1691143, 690953, 1919850, -1211181, 750546, -1254131, 1516124, -1598802, -545998,
--807991, 860067, -492311, 801011, -700080, 951872, 1771137, 829466, -824634, -268435,
--411243, -464393, 525597, 332860, -396211, 6951942, 11244761, 1516660, 5592048, -2024003,
-3316789, 4354560, -1348083, -3474092, 5890548, 10189273, -2007897, 1139777, 3926137, -4864588,
-3022583, 4355634, -8910983, 2512556, 857383, -1992865, -10737, -9257802, 365609, 2605435,
--4417374, 824634, 144418, 5945309, 4228932, -2219961, -645319, -555125, -6321118, -4233764,
-682363, 2557653, 559420, 2840584, -4180077, 637803, 2070711, 438624, -3870839, -2817499,
--866510, 1351304, 3111167, 3237332, 2142652, 3777961, 3679176, -4134980, -1278827, 175020,
-5234492, -791348, 3752728, -2468533, -2573222, -786516, -4725001, -2168959, 955093, 2757369,
--4034048, 3944391, -1124745, -1169842, -796716, -1589138, -2045478, 819802, 3053185, 1147830,
-5102958, -7088307, -5729487, -1254667, 2109366, -70867, -1176284, 1088774, 149250, 1319629,
-2148558, 3618510, 54761, -209380, 846645, -332323, -61740, 560493, -1669669, -868657,
--3443490, 1372242, 6522982, 9238475, 5347235, -2310693, 3956202, -2407329, -1631014, -7881802,
--6287832, 2857764, 6038187, 5924371, 6156299, 1388348, 328565, 3831648, -5092221, 5134634,
-4142496, 398895, 3558381, 9164923, 6220187, 1761474, -6576132, 209917, 2207613, 1437740,
-1083406, -7182259, 1723356, 1345935, 4819490, 5341329, -1672353, 3438658, -2591476, -2854006,
-3874061, 2220498, -6894497, -6501507, -2858301, -3642669, -2728915, -2888366, -7964480, -7183333,
--652298, 2626909, -45634, -734976, -5366025, 741419, 6370510, -1761474, -2011655, 2426657,
--11811, 4635344, 2317135, 2382633, -2971044, -3639985, 6841883, 3159485, -2736431, 4536559,
--598074, 3543885, -2968896, 584652, 5051956, -1886028, -1634235, 3673271, 448824, 1482838,
-2170569, -2479270, 2835215, -1146756, 2323577, 2371359, 1810329, -1576253, 593779, -767189,
--1366873, -1717987, 101469, 245350, 1145146, 1016297, 268972, -52613, 899796, 317291,
-627602, -12730283, -7526394, -2330557, 2397666, -5235565, 1583769, -1417876, 3650722, -870268,
--7157563, -5657009, 4920959, 4063576, 10197863, 9043054, -1388348, 6549289, -9838159, -1575716,
-7617662, 2323577, 1754494, -983011, -3224447, -1472637, 1040456, -852014, -313533, 3888556,
--4830765, 1099512, 1735167, -90194, 3025268, -3284039, -2726767, 1775432, -2123861, 2745021,
--5395553, 920197, -3246459, -1244467, -3613678, -2667175, -4103305, -6038187, 3707094, -10737,
-6329171, -5900748, -5088463, -12348, 1203665, -667331, -1229434, 449361, 3809636, 1859721,
-812823, -2578054, -2525978, -1396938, -4745402, 784368, -1235340, 586800, -230854, -5066988,
--435402, -372052, -5406290, 181462, -1024887, 660351, -916439, -5979668, 537408, 2735357,
--1199370, 4006131, 1095217, -2090575, 1670742, 4202626, 1369558, 754304, 941672, -848256,
-517007, 3296924, -255014, -481573, 1201517, 1376537, 519691, 1117765, 234076, 491237,
--2178622, 280784, -170188, -1030255, -780073, -747861, -1107028, 210990, -907312, 4509716,
--6888591, 2850785, -7693897, -1252520, 339302, -5571110, 5283347, 4139275, -11403138, -1067299,
-1875290, -966905, -5008469, -6582038, 1340030, -3270618, -5581847, -2649995, 3253975, 3003256,
-8028368, 10574209, -945430, 9459129, -5780489, 3774740, 4050691, -744103, 3990025, -2216740,
-57445, -521839, -1959579, -912681, -2189897, 7897908, -465467, -5729487, -1416802, 4001299,
-2405182, 3218004, 599148, -2629057, 5681705, 11716671, 702227, 1264868, 659278, -772020,
-1819456, -687195, 6622303, -4985384, 6334003, 4499515, -4057134, 2165737, 4119411, 2929705,
--4857608, -5143760, -10375567, -1596117, -996969, 1413044, 3985730, -874563, 2589329, -780610,
--2769180, -2641405, 5331665, -1118302, 5657009, -8266202, -3318399, 2028835, -5323075, 1485522,
-5692443, 649077, -54761, 528281, 1204202, 893890, -3228205, -918586, -535260, 580894,
--581431, 1160178, 1454383, 869194, -940061, -2045478, 2359011, 1029718, 914828, 736587,
-682363, 290447, 55298, -924492, 983011, 585726, 382789, 293132, 1034550, 817118,
-1241246, -1319092, -878858, -1568200, -1573569, -293132, 1246614, -861141, -591095, 814970,
-274878, 638340, -265751, 230854, 2898566, 1447941, 42950, 4161823, 11630771, 13954886,
--3699041, -200790, 2812667, -1971927, 8861591, 8868571, -5606543, 8697846, 6642167, 2720862,
-3813394, 3620658, 1692754, -625455, 532576, 1279900, -4821638, -5660230, 1430224, -1490354,
--158914, 1132798, -5202279, 5296232, 10282689, -189515, -6302865, 10271951, 1151051, 447213,
-3899830, -1642825, -3118683, 1613297, -3889630, 1661079, 10275709, 4575751, -150861, 3842385,
-5553393, 14752139, -2461553, 6447283, -1325534, -6208375, 4104915, 523449, -2180770, 3018825,
-8890582, 2444910, 1526324, 14496, 3522947, 13079249, 5735929, 1763621, 1250909, 3551938,
--3789235, 6764574, -1764695, -12652437, 1503239, -1224603, 7657927, 9232569, 3877282, -3734474,
--3580929, -3163780, -506806, 2975876, 216359, 2063732, 1256815, 2156611, 5746130, 2656437,
--4640176, -1844152, 593242, 1752347, 252866, 35970, 131533, -2371359, 2627983, 780073,
-501974, 440771, 502511, 397821, 1960116, -662499, 1420024, -1304060, -464930, -2145873,
-428423, -730144, -158914, 287226, 929324, -15742666, -1642825, -6752226, -7714298, -2199023,
--5472325, 139050, 4903779, -7465727, 7703024, -16360067, 2406256, -4937602, -8550206, -11741904,
-12208981, 5911486, 871342, -10423886, -6637872, 3700651, -13270375, -9481140, 3255048, 2692945,
-13648332, -1906966, 1209570, 9904731, -5901822, 9724343, 3463354, 3467112, -1851131, -6099928,
--624381, 8067559, -4365298, 542777, 10394358, -3928285, -2978560, -5157719, -6068789, -5465883,
--3912715, -8504572, -957778, 2338610, -2796024, 1665374, -2672544, -4439386, 5862094, -7619272,
-4583267, -6504728, -7922604, 208843, 6619619, 246961, -1923072, 2422362, -5270462, -2868501,
--7406671, -13482976, -6231461, 1701344, -3981435, 14994268, 6088653, -10795937, -5297842, -1770063,
--3778498, 4677220, 10340671, 6564321, -4943508, 4560182, -5871221, 3349001, 572841, 4567698,
--5196911, -1453846, 501437, -2520072, -4430259, -3955128, 729071, -464930, -1005559, 2121714,
-932008, 139586, -1446330, 1174674, -260919, -1379758, -3220689, -306016, -1642288, 49392,
-1474784, -1308354, -3587908, -660351, -1509144, -6090264, -842887, -1889249, 16748762, 11166915,
-11409581, -3229816, -16617765, -1168231, -8597451, 2251637, 3473555, 8986145, -4330401, 4016331,
--6939594, 1287953, -6142877, -15156940, -8428873, 5982353, -5763309, -11984569, -11578158, -10462003,
--16729434, 2188823, -5980205, -12463458, -11518565, 2118493, 15743203, -2000918, -2844879, -5198521,
--9845676, 2121177, -4030827, 1184337, -12236899, 894964, -12738873, 1877438, -1207423, 6869800,
-5040144, 5738613, 2700461, -352187, 4476430, -2958159, 8985072, 2700998, 4457639, 2905546,
--3182034, 3386045, 9055939, -1086090, 4978941, -1192927, 14347875, 1990181, 5279052, 828392,
--8325794, -6116034, 108448, -2770791, 1700807, -1992328, 4638028, 4408784, 5420249, -2457795,
-3016678, -11031623, 5756867, 16409996, -8032126, -1540820, 4159139, -9270687, -813359, 5983963,
--3854196, -469762, -2119030, 5218386, -5408438, -1136556, 1253057, -2815351, 1253594, -904628,
-1990181, -2598455, -2868501, 3119757, -1520418, -2866891, 1942936, -1066763, -97711, -4097399,
-3054259, 1184337, -857383, -590558, 1672890, 756988, 1618129, 1399086, 160524, -1699196,
--3334505, -825707, 1726577, -8201777, -23663660, -3953518, -8244727, -12499965, 6735583, -23829552,
--3066607, -8499740, -4590783, 6834367, -7558069, 10027138, 8694624, 1343788, 7841000, 653372,
-4151623, -6243809, -10933376, -12094628, -6731288, -11089069, 8621610, 11237782, -475131, -5989869,
-3265786, 3205656, -4147328, 781684, -18813030, -10001905, 8757438, -4848481, 258235, 8536784,
--812823, 5260261, 4547834, -2503429, 5202816, -115964, -10032507, 11113228, -7853348, 481036,
-614717, -6221260, 4102231, 6600291, -3930969, 7548405, 852551, -654983, -6959458, 8533563,
--52076, -7027640, -2310693, -14015552, -5856188, -8031052, -1012002, 9526774, 2765422, -980326,
-155693, -9097278, 2026688, 6874632, -9112310, 452582, 13942538, -5813238, 1364189, 984084,
--9919764, -6038724, 6340446, 5239860, -16138876, 3175055, 12061342, -136902, 1435593, -6442,
-2903935, -1000191, 7611756, -1824824, -321049, 893890, 1458141, -3537443, 871342, 2599529,
-822486, 4441533, 1658394, -183073, -1668058, -3653407, -1035624, 1605244, -2213519, 1511829,
--2269890, -156766, 3131031, 1591822, -2216740, -3093450, 150861, 6442, 6669011, -2789581,
-540629, 3555696, 1471026, 3506841, 42270532, 9308268, -5456756, -8546985, -751619, -2759517,
-7545184, -1750199, 6386080, 11881490, -4765803, 517544, -7860327, -5507759, 2601677, -1393180,
-6204081, -11916387, -6880538, 5495948, 11905112, 7737921, -320512, 2719251, -2859911, -7213935,
-5193153, 9175661, 9759776, 11635603, -9673340, -2393371, -5533529, -12140262, -1486059, 532039,
--2604898, 5442798, 7339562, -112206, 3638374, -2258079, -12770012, -7063611, -17090748, -17469780,
--5042829, 5722507, -2514167, -7792682, 14586246, 5408975, -569620, -13754096, -601832, -4305168,
--9744744, 23085, -4448513, -6426345, -13504451, -1833414, -4977867, -14968498, 13422, 11276437,
--7627862, -3724811, 4216048, -6495065, 2558190, -6436546, 9277666, -3064459, -8941048, -13997835,
--22817014, 4413616, 3869229, 17353278, 7033546, 5950141, -74625, 5206037, -4097936, 5523328,
--510027, 1890859, 2801393, 6569153, 3054796, 183610, -1211718, -415001, 2643552, 1563905,
-6922414, 5345624, 3636227, 1100049, -1403917, -3736622, 2000381, 4407174, 404801, 207769,
--838592, -3312494, -554588, -556735, -1548336, -1227824, -2494839, 2006824, 3055332, -2934000,
--2909840, -235686, -379031, 1527935, 9427453, -33365454, -19110994, 17790292, -4665408, 1208496,
--9241696, 7803419, -3224447, -12825846, 6146635, 17991082, 2250026, -15598784, 4376572, -3334505,
--3630321, 10396505, 10655814, -1359894, -2216740, 22643604, 5003637, -3156801, -13900125, 6228777,
--19918448, -16273631, -15113990, 6212134, -2882460, -1522566, 12933220, 5266704, -13190918, -10903311,
-2840584, 12902619, 4361540, -1358820, 707596, 8639327, -6185827, -13798119, 18128520, -5223754,
-1868848, 7436199, 1118839, 2626373, 18648212, 438624, 11876121, 652835, -12512850, 1928440,
-2663954, -2472291, 2378338, 8613557, -6328098, -1796907, 2167348, -24592982, 6554120, 5179731,
--144955, 6058588, 4620848, -9042517, 4347581, 34076808, 14593762, 8518531, 2463164, 8377871,
--26096758, -12237436, 13212930, 664109, -114890, -9877351, 8834211, 10823318, 8955544, 1632088,
-1886028, -3440806, 155156, -6065568, -2243047, 5048197, -1091459, -2983929, 2564096, 348966,
-2462090, -3470871, -1517197, 1366873, -641561, 2627446, -4312147, -1343788, 3104188, -3302293,
-2514703, 1060857, 341987, 251792, 50466, -2644089, 1421097, 2744484, -1277216, -1144072,
--2980707, 1475858, -162672, -22269942, 15607374, 16975858, 5301601, 9422621, -6357089, 27016954,
--3290482, 10385768, 6886443, -12272869, -5214091, -5595269, 15497316, -9163850, -3017215, 9968082,
-8153996, -9006010, -2600066, -26275000, 4814659, -2803540, -7872675, 2408403, 593779, 2071785,
-2306934, 9060234, 244813, 9912248, 1044751, 4893042, -2650532, -8386461, -9190693, 17177722,
--6198175, -12235288, -10520522, -4596689, -5843303, 7518341, 4469451, 5816460, 7421704, 2377801,
--9472550, 5473399, -15370614, -4876399, -13447006, 9280351, -16205448, -11429445, -3538516, -5304285,
-4677757, 10929081, -8722542, 10323491, 16686485, 8458401, 16069620, -6684043, 21614422, 2099165,
-18292266, 10555419, 2164664, -9711995, -24832428, -16577500, -13699872, -7596187, -7736847, -2309082,
--11633993, 8783208, 14315126, -5444408, -11207717, -9987946, -8126078, -14916958, 9334038, 6961605,
--4128537, -3759707, -5972152, 886911, -3442953, 8216810, -114354, 2193118, -4456029, -3590593,
--6226629, -1005022, -7431904, -6887517, 7040525, -389231, 738198, 295816, 2492692, -2747169,
--411243, -4186519, 3758, 142808, -329102, 2333241, 93416, -3405372, -2455648, -2411087,
-565862, -3668439, -4264366, -5088463, 1265405, -1293322, 12483859, 6360847, -7101729, 21014202,
-2376191, -20516522, 25617332, 1713692, -10912438, 9037148, -21041582, -4032438, -13397614, -4188667,
--2374580, -4117263, -9578851, 2675765, -18182208, -7039452, -6558952, -24539832, 2975876, -17800492,
--12650289, -19969988, 4000225, -15071577, -4551055, -5003100, 157840, 7577396, -6126234, 10671920,
-547071, 14164802, -3308736, 12317429, 15537044, -18673444, -285615, 4984310, 11404212, 424665,
-13713294, 4572530, 13222057, -301185, -10114648, -6380174, -979253, 8535174, -1978369, -3965329,
--867047, 15825881, 10001905, -3800509, -13075491, 4348118, 7170448, 5070746, 14050449, -18864570,
--13938243, -4016331, 1318555, -5340255, 142271, -5446019, -11782169, 32991792, -16325708, -18979998,
-14126684, 8095477, 12271795, 3719979, 4506495, 2491081, 7171522, -6838125, 18967650, -3373160,
-4646618, -3725347, 2532420, 1079647, -1047435, 12036646, 1508070, 995359, -11934104, 5334887,
-1777580, -1819456, -9720048, -1066226, -2015413, 182536, -3099356, 8638790, 2010045, 2356863,
--7025493, 4712653, -3341485, 891743, 4198331, -261993, -2080375, -2344515, -6250251, 3540127,
-6382322, -3134789, -709207, -2354716, 947577, -3727495, -8409009, -2648384, -284005, -5867999,
-5970542, -629213, -811749, 1903744, -5651640, -6518150, -1808718, 2513093, -4290673, -5714454,
-16763257, 12151536, 19800336, -6670084, -4769025, -27159762, 31510028, 14279156, -41722388, -22502944,
-13506598, 18501108, 18832894, -12148852, -9664213, 22543746, 5476084, 5081483, 15811385, 12579422,
--23029614, 6965900, 9843528, -1853815, 11010686, 1975685, -2877628, 2137820, -7437810, 38487200,
-10201084, 4903779, -971736, -4902169, -2507724, -22029424, 4286378, 6308233, -5071820, -7310035,
--35372276, -17069810, 7503845, 6051072, -11556146, -11513734, -1527935, -17012902, 7059853, 6133214,
--2381559, 6916508, 14053670, 566936, -656056, -4614406, -7402376, -2579128, 1322850, -26271242,
--3412889, 6000606, 15999290, -28423556, 6346888, 9998147, -2163053, -13457206, -11960947, 21215528,
-21169894, -3230889, -13121662, -25151328, 5322538, 9884867, 5305895, 270583, -27210766, 11355894,
-24870008, -8549132, 2854006, 7648800, -10160819, -16438987, -8565775, 2335389, -5008469, -1444720,
--7635915, -6768869, -5567888, -2529736, -2169495, 3164317, -559420, -650688, -6962142, 2731599,
--3254512, 1349694, 83215, 2107755, 4269198, 4787815, -7788923, 2984466, -6015639, -10322417,
--5319854, 1303523, -1009854, 4286914, -969589, 2737505, 6017786, 145492, -265214, -5426691,
--2931852, 7794829, 4041564, -3481608, -2027225, -927713, -5054640, 12414066, -9137543, 3364570,
--7613367, -6766184, 1189169, 8399345, 16850768, -31044024, -40450000, -28159416, -36188856, 31392990,
--20959440, 12615930, -3539590, -25469156, 4552129, -6942815, -9450002, -33057290, -30247844, -22629108,
--8625368, 1134945, -17508972, -5113696, 4611721, 14172855, 1112933, -8891656, 18254, -9506373,
-13622563, -17210470, 23696946, 20388210, -4915053, -6556268, -28156194, -16458315, -17136920, 2004139,
-3747896, -4640176, 22950694, 6492380, 18595060, 3614752, -2237678, -8514236, 16720308, 11515881,
-5215701, -16899086, 8968965, -28535762, -3229279, -3088082, -18954228, -3177202, 179852, 21705690,
-14370424, 346819, 10011569, -469225, -21527986, 10865730, 2972117, 17834852, -10205916, -20729660,
-12252468, -37194952, -8589398, 13062606, -5650567, -5987722, 9013526, -2498597, -7402913, 6795712,
--3182571, -23901494, -21035140, -3548180, 9710921, 15762530, 22198538, 22247930, -9567040, -7679402,
-4294968, 8009577, 7198365, 2963528, -10032507, 8636642, 55298, -1935420, 1013075, 5321465,
-8941585, -2735894, 1409823, 8475044, -2108829, -260382, -8769786, 4228932, -2014340, -688269,
-6992744, -1484448, -3322157, 3111167, -9969156, -3723200, 9846749, 2775623, 3090766, -3619047,
--2485176, -1561758, -7996156, -1117228, -4531728, 5864241, -17204566, 203474, 12631499, -40703404,
--3524021, -26000658, 1832340, -19209778, 17517560, -13785234, -1189169, 3167539, 6699612, 20590610,
-7236483, -9647570, 22739168, 6786049, -38009924, 6104759, -22702124, -1828046, 4632659, -3396246,
-19152870, -5784784, 3697967, 4602058, 1930588, -12448426, 19441706, -11272142, -784368, -22593676,
-253403, 3641059, -3273839, -8048769, -10014253, -11872363, 29344290, 1012539, 15329275, -26034482,
-3199751, -469762, 9166534, 15309411, -17522392, 31481036, 45806364, -2214593, 4672388, -16026134,
-7564511, 10467372, -8517457, 2142652, 8848706, 17545478, -302795, 920197, -5206574, -15489263,
--22818088, 11648488, -17045652, -7430294, -11072426, 4903242, 15819438, 13838921, -2493229, 5133023,
--31068720, 20604032, -3591130, 4407174, -8937827, 20134270, -27858232, 33455110, 24676198, 27859842,
--11034845, -760746, -27302570, -15035607, -9994389, 8971650, 7914014, -22905598, -16486232, 551903,
--5570573, -16731045, 179315, -11604465, -13449690, -5199058, -1826435, 976568, -8819715, 1542430,
-3267396, 13753022, 12589086, -1992865, 11878806, -5810017, -14357002, -8124468, -2916283, -7404524,
--919660, -5515275, 8442832, 2443837, 32020592, 4162360, -10769630, -3805341, 3039226, -16668768,
--10202695, 3929358, 845572, -4335233, 1836635, -8053, -17992154, -1918240, 12324946, -8970576,
-12924630, 51155208, 14185740, 37294276, 11464341, -38196756, 15151034, 11038603, -13156559, 2942053,
-24559696, 1422708, 23493472, 21415244, -25062208, 13935021, -25072408, -16407849, -2670396, 50070728,
-14973330, -22153442, 20886962, 13966160, -27711666, -11782169, -2194192, 28156194, 3794604, -25177636,
--14652818, -493384, -7297687, 15766288, 21990232, -7763691, 19303730, -12335683, -17420388, -286152,
-40104256, 4065187, -23523536, 13509283, -1403917, -2002529, 11001559, -26036092, -23075786, -21307870,
-15529528, -13847511, 4799089, 7052337, 23855858, 12267500, 24533926, 2960843, -1381369, 20574504,
-36887328, 22422414, -37096168, 1081258, 3271691, -5913096, 6793565, 10526428, -28715614, -3962107,
-5325760, 5244155, -34142844, -31752156, -18285286, -19165754, 33302102, 12753369, 1260573, 15148887,
--27712740, 11641509, 7295539, 5337034, -2720325, -5950677, 22920092, 14276471, -9581535, 4292283,
--7297687, 15477452, -4663798, 1386738, 2891587, 2569464, 11005854, -1467805, -18637474, -450435,
-3151969, 5135171, 9150428, -2238752, 557272, 7385733, -14510547, -8108899, -1607392, -25556130,
--4255239, 7493108, -2201171, 3125126, 14525579, -1794223, -10613938, 2530273, 3304977, 9945534,
-11198053, -10752451, -7124277, -411780, -9701257, -5804649, -18331458, -21149492, 5673652, 674847,
--9971303, -7773891, -10172093, -19220516, 14369887, -38513508, 27851252, 31336082, 8556112, 34117608,
--34939024, -16935056, -9517111, -49957448, 28131498, 2942590, 17387102, 23087596, 22385370, 1855426,
--775778, 22958748, -3680250, -26988500, -28215250, 17171816, -31868120, 31176094, -8965744, 6941741,
-30701500, 27875412, -14009110, 42377904, -24532854, 2880313, -25504590, 4264366, -8743480, 16779900,
-5611912, -17908404, 16167868, 24788404, 36149664, -20759188, 7710003, 22376780, -30547418, 1575179,
--12290586, -43963824, -19010598, 11956652, -24260122, 8811662, -20366734, -310311, 29706142, -13919452,
-12578885, 34432752, 24447490, 9356049, 45526116, -70727912, -13370233, 23879482, -2734821, 14003741,
--21963390, -38120520, 46563888, -456877, -23451058, 10265509, 29473140, 73338712, 27699854, -55071680,
--30172682, 19071266, 20464446, 9103720, -38606924, -3127273, 8488466, -11691438, 26100516, 9581535,
-16670379, 20072530, 14891725, -9882183, 11506217, -30419106, 4442607, 16662326, -1948305, -16008954,
-9535364, -9664750, 16298327, 18267570, -7673496, -14698452, -4012573, 33495376, -5920076, -3607773,
--12990665, 15308337, -12899397, -7675107, 9621800, -5904507, 31309774, -2090039, -7729868, 31768262,
--2794413, 7653095, 19289772, -1160178, -1628866, 2155537, 2879776, -14490146, 6743636, 1127966,
--21453898, 14914811, -6645925, 28001040, -15062987, 8657043, 2605435, 37443524, -32885490, -2972117,
--15693810, -19490562, 30054034, -11652783, 39454108, -3876208, -30338576, 47305844, 68390376, -9703405,
--21748640, -32952600, 7925289, 36361192, 7224135, -7580618, -22552874, 5454609, 5443871, -4931160,
-5699959, -3141232, -11020886, -11259794, 10573673, 15021111, -1029718, 20274394, -19321448, 41473816,
-31286152, 18085570, -1373853, 2585570, 6027450, -21751324, -19012210, -21072720, -11003706, -5662915,
-13404056, 11796665, 22602266, -10672994, -2510945, -9431748, 25703232, 50020800, -11589969, -31872952,
--20458002, -1110786, -43212204, 33949568, -58757300, 17219060, 25186762, 25882546, -25489020, 6221260,
-26230976, -59463284, -28002650, 12492449, -6091874, -29669098, -26176752, -3168075, -13600014, 44654776,
-19284940, -15992848, -14715095, -24372866, 68266360, 14901926, 35793720, -2259153, 10647224, 13156559,
-15526844, -21938692, -2566243, 28562070, 19757924, 11973832, -9037148, -11788611, 303869, 9146133,
-13334800, 9183714, -17234630, 2857764, 502511, 4905390, 12968117, 13045963, -18042084, 8929774,
--10986526, -13511430, 1802276, 14756971, 6191196, -8267275, 2333778, -852014, -2262374, -7000797,
-27529130, -7645042, 452582, -15857019, 4201552, -5615670, 18300856, 6193880, -3434900, -9167608,
-10593537, 8862665, -12081206, 1285269, -19918984, -7588671, 5256503, 8810589, 11940546, 315680,
-12495134, -2455648, 2433636, 6405407, -25191594, 7248294, 39902392, 820339, -12960064, 32602560,
-24004572, -7215545, -20787642, -32471026, 6532109, 62753768, 14273250, 31999654, -2442226, 2465311,
--2155537, -7779260, 396211, 2542621, 15684147, 4701379, -11870216, 10159208, -10342281, -12150462,
--12968117, -5906, 13051332, 2413772, 10509785, 10537165, 9159555, -9202504, -15287936, 4646081,
--10481868, -27456116, -7672422, 5847061, -9105331, 31404800, -32369022, 26338350, -8094403, -97174,
-39766028, -6475200, -736050, 51197620, -7569343, -21237540, 4118337, -18234284, -3746822, -17227114,
-57671212, -16491064, 14154065, -14044543, -5862094, -8121783, 9836549, -14688788, -34846680, 15266998,
--3730716, -39242580, 20704964, -10459856, 22005264, 48744656, -24249386, -756451, -2226941, -7469485,
--26117696, -4821101, 24470576, 9499394, 15125264, -22426708, 6881612, 3762928, -21201570, -6024229,
-5068062, 10886668, 14068702, 980326, 2914672, 8851928, -1873143, -10829223, 15824270, -6269042,
--4439386, 14023068, 2185065, -4020626, 21348672, -1519882, -1333051, 72478, 7146289, -6425808,
-10901701, -8304856, -3856881, -6574521, 5793911, -251792, -520765, 2990908, 10037339, -11698417,
-2774012, -1618129, 7270306, 2044404, -1997160, 11974369, -7075959, 6451041, -1828582, 3531537,
-1071594, 8979166, -1068910, -13750338, -186294, 65972308, 33182918, 69208568, -38788924, -9780177,
-22610318, -21328808, 16328392, 71198208, 16683264, 10512469, -18850074, -17389786, 20213726, -10492605,
-28637232, -4458176, -6665253, -8075613, -40876276, 10092636, 48962628, -25632364, 29582660, 26149908,
--16674137, -4718559, 20343112, -32304060, 16201154, -2017024, 24526410, 8621073, -20441896, -6269579,
--41064720, -20732880, 19182398, 14774687, 31829466, 50044960, 5268315, 1103807, -43105904, -25997438,
--25753698, -20858508, 11243151, -17246442, -5058398, -3707631, 12868796, -32565516, -5339181, 17369922,
-8768176, 27461484, -3653944, -12649752, 26960584, -4544076, 16520055, -20430622, -12556874, -2865817,
--6952479, 13585518, 19620484, 28103582, 7830263, 2644626, -19170050, -5034776, -9840307, 23600308,
-254477, 35189740, 6053220, 26598732, -25512642, -8776766, -177704, -252866, 18997714, -2646774,
--9438191, -4760971, 4672925, 1695975, 4948339, 9164386, 7864085, -4440460, -5669357, 748398,
--3345780, 7794829, 7926362, 2245731, -6602439, 682900, -8660265, -3241090, -1881733, 15369004,
-5386963, -1552094, 3923453, -9613747, -11806865, -7598334, 3777961, 8626442, -7018514, -284542,
-157303, 6542846, 3442416, -518080, 6568616, 1445793, -293668, -6021544, 3139621, 2318209,
--2585034, 1101122, 2016487, -8922258, -17722646, -67881960, 2110977, 108304040, 98347768, 91809760,
-39410620, -39497056, -53908284, -54155780, -47757888, -88673360, -62717796, -61828200, 47894256, 72704672,
-59939488, 94730336, 79441328, 16435766, -3339337, -34368328, -65949760, -39905080, -69315944, -38170984,
--22984518, 34897, -8981850, 17134772, 30221538, 50466404, 32288490, 53041772, 40955196, 42075112,
-3617436, -35254164, -15589658, 882616, -37835976, -50724636, -65216932, -64749316, -45383308, -6761889,
-32287416, 12309376, 46832860, 32585916, 53370336, 46923056, 51760260, 59367724, 32424856, -4908611,
--9334038, -39297340, -31593242, -105557408, -83882320, -67791224, -52431352, 5820755, -22719304, 1173600,
-72179608, 88445728, 121742992, 76478336, 46470472, 31098248, 7633768, -46848968, -42348376, -65186868,
--83562880, -71349608, -65961032, -31414464, 5057861, 33250564, 55479704, 54183696, 46675020, 28934658,
-31419834, 13048648, 8674760, -1823214, -25482578, -22770842, -20219096, -23164906, -11874511, -25852482,
--17977660, 5998996, 2468533, -15163382, 8352101, 20716774, 12235288, 23682450, 37696392, 38603168,
-17457432, -24376624, -10121627, -3684545, -48795124, -52086144, -44863616, -19155554, 14295262, 21858700,
-18776524, 30779346, 35443144, 43070468, 29066728, 17439178, -6361384, -29384556, -29272886, -33239826,
--44056700, -31784906, -17182016, 14857366, 24358908, 15302432, 9760313, 27823872, 19276350, 11260331,
-2960306, -4459787, -8688182, 659814, -10488847, -13080860, -4423817, 4080756, -7173669, -5834176,
-1503239, 5574868, 1040456, -3068754, -3556233, 4147328, 283468, -2434710, -4254165, 1362042,
-6297496, 7384660, 1348083, 6340983, 6000070, 3050501, -1664837, -1547262, -5073967, -4910758,
--7512435, -4217658, -4878546, -1313186, 649077, 1353452, -466004, 2975876, 3819300, 5734855,
--1509144, -677531, 1962800, 2957622, -2404645, -217433, -770947, 363998, 1316944, 4271345,
--274878, 1339493, 771484, 955093, -2640868, -3868155, -6614250, -4076461, -5286568, -3925063,
--4258460, 1277216, 3405372, 6363531, 6594923, 10074920, 7926362, 7090454, 2738579, 459025,
--4954245, -6372121, -9303436, -8071854, -8845485, -5111548, -3101503, 838592, 1890323, 6354941,
-5394479, 6966437, 5550709, 5234492, 962610, 907312, -1959042, -1920387, -4365298, -2586644,
--3185255, -829466, -1946157, 120259, -849867, 1138166, -242666, 1372242, -259846, 1190243,
--397284, 1078574, -589484, 840740, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
-1065689,
--1229434, 4410932, 5027796, 2650532, -1900523, -7579544, -6891275, 2477123, 4005594, -1500017,
-7452305, -1469953, 4458713, -5304822, -4618164, 1994476, 215285, -1401770, 1992865, 4778688,
--2063195, 634581, -2719251, -308164, 287763, 1938641, 1867237, 2437931, 441308, 1438277,
-5528160, -2154463, -2540473, -2809446, -4947803, 1399623, -1015223, 9075266, 1802813, -718870,
-749472, 5493263, -477815, -1237488, -1376537, -3273839, -561567, 4216584, -620086, 1729798,
-4330401, -1381369, -275415, -6943889, -4028679, -6335077, -1199370, -1862942, 964757, 311922,
-942745, 2216203, -1476932, 1054415, 104690, 525060, 995359, -2332167, 2210835, -776852,
--2585034, -364535, -2607045, -836982, 282394, -4150012, 1126892, 155156, 3210488, 301721,
--19327, -1923609, 461172, 3132642, 1583769, -819265, 388695, 672699, 806917, 2382633,
-325881, 119722, -545998, -394063, 280247, 64961, -209917, 1563368, 906775, 916439,
-711891, 467078, 243203, 451508, 893890, 5130876, 12100533, 4779762, 2863133, 3364033,
--7110855, -833761, 3068754, -961536, 1200443, -6485938, 6378564, 8642011, 1490354, 3861713,
--1819456, -5059472, -7841000, -8583492, -5708012, 6807523, -6423661, -4079682, -5436355, 1745904,
-4521527, 856846, 613107, 2530273, -256087, 1599875, 5572183, -779537, 4632659, -4409321,
-4226785, 2944200, 2687576, -2321430, -7206419, -1530619, 4126390, 2447058, -2014340, -237834,
-1427540, -301185, -3477313, -725313, 2948495, -1007707, 326954, -1713692, -381178, 218506,
-985158, 5093831, 2128156, -2603824, 439697, 425739, -1728724, 933082, -2517388, -289910,
-4128001, 1348620, 4631586, -3303904, -2840584, -1693828, -732829, 2363306, 5250598, -3023657,
--3799972, 4525822, -425202, -81604, 156229, 1565516, 1116692, 3804804, -1069984, 1777043,
--2317135, -2163053, 170188, 1033477, -160524, 83752, 872415, 957241, 740882, -1972464,
-2214056, -467615, 3553012, 1503239, -3976066, -3757560, -4261145, -670552, -3477313, -7337415,
--6982006, 7212861, -151934, 1518808, -47782, 4393752, -6493454, 9657771, 8582955, 444529,
-463856, 13422, 261456, -953483, 3365107, 2613488, 219043, -5496485, 2389076, -1705102,
-2649995, -765578, 5864241, -1364189, -3402151, -1544041, -912681, 2171106, -30065, 3622268,
--5808407, 3136400, 1021129, -3227131, 9158481, -1453310, -1303523, -191663, -136365, -2412161,
--772557, 4885526, 4005594, -8577050, -4039417, 4361540, 1262720, -2050847, 7470022, 273804,
-1679869, 7348689, 3041374, 5769752, 1636919, -2214593, -2989297, -5771363, -5586142, 813896,
-2983392, 7151658, 279173, -2914672, -3642132, 1245541, -60130, -1996623, 2327336, -805306,
--1828582, 1674500, 3882114, 1257352, -1937030, 1944010, 2025077, 2532420, 1630477, 129923,
-248034, -2399813, -498753, -31675, 1236951, 1038845, 1980517, 1910724, 1592359, 603980,
--149787, -9793599, -3407520, -4766877, 4450660, -3257196, 2892661, -3521336, -1449552, 8297877,
-4063039, -5514738, 2518998, 7914551, 1166084, -2779918, -5555004, -6684043, -4574140, -6720550,
-4465156, 1010391, 2460480, -1293859, -3033858, -3211562, -5910412, 303332, -176631, 1401233,
--1435593, -5385889, 95026, 5743445, -1265942, 61740, -2856153, -5735929, -8472897, -734976,
-6120866, 2216740, 652298, -2880849, 791885, -4606890, -1497333, -3467112, 450972, 777389,
--5229660, 5910949, -3320010, 7522099, 2858838, 710280, -3408594, -1800128, 1946694, -436476,
-1843078, 4036196, 834297, 1597728, -4459787, 2636036, -2234457, 6914898, 8584566, 3926674,
-5774584, 2676838, -863825, -6016713, -3866544, 491237, 4446365, 4460861, -3555696, 463856,
-4227322, -5510980, 5455146, 344134, -2771328, 1787780, -1152125, -267899, -3083250, 604517,
-899259, 530965, -2469069, 654983, -1738388, -2340220, -794032, 161061, 1053341, -1528472,
-399432, -665183, -2142115, 227633, 1808718, 744103, -1525787, 999117, -1141388, 3279745,
--7905424, 1040456, -8454106, -35433, 1292248, 787053, 3808562, 382252, 601295, 14948634,
--1878511, -6604586, -7125351, 7506529, 5026186, -5668283, 1364726, -6322192, -2713346, 206695,
-7144678, -8870718, 2578591, -352187, 1406602, -683437, 9070971, -4702453, 2552284, -1428614,
--2411624, 1371168, -444529, 2712272, -2787434, -2589329, -7691213, 1194001, -2561411, -1664837,
-598074, -2732136, 2254858, -4345970, -2590402, -7638063, -241592, -6783364, -2869575, -8065949,
-5970542, 1200443, -2481954, 5244692, -6114423, -46171, -11639361, -641561, 4006668, -333397,
-3433290, 7381975, -2610266, -1058173, 9244380, 3889630, 3561065, 5635534, -2938831, -8574365,
--920734, -5141076, 3725884, 8506183, -1547799, 2482491, 4524211, 3799972, -466541, -734976,
-1043140, 144955, -1589138, 2277943, 2045478, -3568044, 1168768, 2980171, -1518808, -1100049,
--5284958, -1241246, -2230699, -746787, -2313914, 446677, -570157, 396211, -249108, 342524,
-1349694, -1569811, 539555, -654446, -1595580, -229244, -280784, -497142, 106837, 887985,
-1484985, -1488743, 506269, -1262720, 210453, -161061, -1666447, -673236, -1275068, -252866,
--2020245, 475668, 98784, -1154273, 4301410, 4698694, 1806034, -2951716, 2145336, 1178432,
-9172440, -1453310, -1875827, -12335146, -3389266, 9158481, 9084930, 5728413, 4643397, 13066364,
-889058, -15743739, -3942780, -2675765, -3720516, 8297877, -1247688, -3102577, 9824201, 1461900,
--3940633, -1455457, 3969624, -3520263, -1287953, 1129576, -1166621, -5522254, -2398202, -316217,
--5199595, -2478196, -2137283, 3626563, -2398202, 7041599, 6983080, 613107, 6646462, 4548907,
--2883534, -1066763, -2168422, -10247792, 1229434, 2049773, -9611600, -1446330, -2663954, 3418794,
-8944269, 1296543, -8898635, 1268626, -3376918, -6105296, 4990215, -1466195, -6347425, 2870649,
-2566243, 7066295, -478352, -926102, 5330592, 6153078, 6906308, -7039452, 5032628, -933619,
--1095754, 1801202, 7450158, -365609, -1870458, 2294050, 1215476, -6271189, -728534, 8537858,
-1985886, -577673, -978716, -3893388, 2857227, -1443646, -1661079, 271120, -155693, 1964948,
--31675, -2674691, -1808181, 3557307, -343061, 1399086, -1509681, 1720134, -1228361, -997506,
--1213328, 898185, 2007897, -935766, 6285685, -16067473, 6701760, -1772748, -3632469, -3316789,
-2780991, -1543504, -9484362, -10152229, 1268089, 15788837, 4387846, -11516418, 2627983, 9363566,
--6713571, 1202591, -1669669, 5578626, -1074, 5148055, 13863081, 10057203, 6323803, -246424,
--1104880, -6402186, -6808597, 2715493, -17874044, -2841658, 8532489, 942208, -864362, -8587250,
--3016678, -372052, -346282, -4175245, -8827232, 9935870, -3391414, -2183991, -1557999, -8222178,
--9198209, -293668, -4464619, 639950, 4447439, 3367791, 3771518, -7337415, -1858110, -3604551,
--2245194, 11800960, -1196148, -5386426, 428423, 15134928, -8024073, 2546379, 11189464, 350577,
--2507187, -5610838, 3441343, 648003, 8074539, -4309463, 6841346, 5516886, 10561861, 5094368,
-7924752, 842887, -5099737, 1117765, -157303, -2962454, 4811974, 6784438, -5561983, 3709778,
-2083059, -5037997, 720481, 1809255, 1474248, 1852205, -2828236, 1655710, -3104725, -936303,
--815507, 241055, 652298, 1381369, 1791001, -336618, 2654290, -170725, -1095217, 921807,
-1788317, -560493, 1110786, -2677375, 1137630, -853625, 1772748, -1963874, 9264244, 13196287,
-8126615, 1307818, -2802466, -4997195, -10958072, -3225521, 7289633, -14999636, -6102075, 13581760,
--18846854, -3460670, 10586021, 13210246, -1332514, -13356275, 1872069, -5139465, 17830556, 7846905,
--12203613, -7920457, -1856500, -7595650, -15366319, -7751342, -6805913, -5622112, -12440910, 6218039,
-2234994, 7645042, -4723391, -2354179, -10942503, -1177358, -9492415, 935766, -6303402, 1344862,
-3346317, -14745160, -4803921, -5648956, -3879966, 3107946, 3154654, -4747550, 14498199, -997506,
--3768297, -2775623, 1416266, -3459596, -1178432, 5327370, 4607426, 5970542, 7962870, 7479149,
-613643, 4883915, -2396055, 11234561, 12099997, -6139656, -3145527, 7353521, -197569, -18391050,
-858457, -9371082, 5696737, 5732708, 10378788, -7927436, 4425964, -11098732, -1059246, 6241661,
--2681133, 9785009, -2553358, -1264331, 1990717, 581968, 1394791, -716723, 592169, 4124242,
--3092913, -857920, 4038343, -684510, 3173444, -4777078, -4085051, 2709051, -647466, 805306,
-449361, -625992, 736587, -2882997, -726386, -553514, -1216013, -1969243, -652298, 1433982,
-1808181, -151934, -1903744, -10231149, -12224014, -6091338, -11806328, -17017734, 12065100, 1119376,
-6784438, -9433896, -9672803, -13507672, -9018358, 4085588, -9892920, -9016210, 12271795, -3115999,
-652298, 2887292, 7045894, -5477157, -4028143, 1952063, -3208878, 1846836, -537945, -6077916,
--11439645, -18094160, 6043556, -13011603, -11796128, 570157, -3047279, -886374, -6601902, 2970507,
-3523484, -14755360, -235149, -3279745, -5668820, -8224863, 4735739, 945430, 14783277, 1704565,
--8156680, -559420, 1455457, 6015102, 2628520, 12985834, -1027034, -14223858, 6162205, -3051574,
-6498823, -8520678, 1944010, 4770635, -24975772, -11949136, 8960912, -808528, -2592550, 3813394,
--1175747, 15796890, -455803, 9992241, 8816494, -12868796, -14790794, 833761, -16395501, -411780,
--707596, 303332, 2507187, 10312216, -252329, -6524056, 6040872, 7754564, -7150584, 1248762,
-2454574, 7802882, -3709778, 250719, -3761855, 2624762, -94489, 1636383, 2725157, 4197257,
-4392678, -148713, -3976603, 165356, 3162707, 936303, 766115, -3762928, 539555, -3767760,
--417149, 2019708, -467615, 3677029, 2877091, -167504, 920197, 2978560, -2630131, 5260261,
-35433, -2314451, 2512556, 8653285, 35062504, -8604430, -23681376, -2064269, -10405095, 25585120,
-1889249, 14346265, 7643968, -4416837, -11390790, -5035849, -12405476, -3137474, 17100950, -19131394,
-714575, -15605227, 4143570, 1323924, 7532299, 1788317, -7602629, -12648679, -14874009, -2721936,
--14596446, -11325829, 1742683, 3389266, 10656351, -10060961, -21122650, -4388383, -7414724, 2531346,
--9999221, -6662568, 2901251, -5250061, -8486319, -564251, 780073, -4269735, 20333986, -4194573,
--3497177, 5171141, 5207111, -6074695, -2724620, 15142981, 12556337, 8334921, 15824807, 12505871,
--126165, 5235029, 8919573, -6752763, -6501507, 1859721, 6378564, 10619844, 4192962, 21554830,
-2197950, 14450954, -4268124, -8354249, -5552319, 30588758, 5260261, -3978214, -3869766, -10995116,
--10696616, -7583302, -7559143, -8807367, 3323231, 7037841, -7686918, 2394444, 7408282, 3762391,
--7119445, 1383516, 7553774, -1964948, 4084514, -3899830, -1301912, 1708323, -1533840, -901943,
--2550674, -4982699, -999654, -4519380, 2142652, 3710852, 1677185, -3780645, 4722854, 3176128,
--2993592, -3315715, -5317707, -1561221, -1655173, 1277753, -1366873, 2300492, 1491964, 377420,
--763967, 18790, -4316979, 1615982, 6535867, -30669824, -11547020, 15553150, -3797825, -15606301,
--14873472, -4849555, 16595217, 9032316, -13569949, 7575249, -18018998, -7213398, -2290291, -11621645,
--16205448, 13635447, 7274601, -14178761, -5195300, 30988190, 7009924, -13498008, -18942954, 524523,
-9948755, 1925756, 1564979, -21304112, -810675, -2214593, -15637439, -8788040, -6422050, -12148315,
--6054830, 3824132, 284005, -12834436, -13269301, 1908576, 8004746, 26307, 10794327, 18671834,
--13174275, 11664594, 8393977, 3876745, 2261837, 14136348, 4101694, 8810589, 5494874, 7964480,
--2840047, -1427540, 15611669, 25038586, 3856881, -5524939, 2786897, -3323768, -9649718, 16021839,
--7974681, -13059385, -21296596, -6987912, -24774982, 12494060, -10268193, -3989488, -1706713, -3285650,
--9091909, -1228361, 9470940, -10917270, -1275068, 5390184, -3500398, -10640781, 5165235, 1132261,
-2737505, -482110, -1597191, -3650722, -736050, -1775969, 5519570, 1777043, 1297080, 1190243,
-1586990, 321586, 2647847, 2255932, 4843650, -6994891, -1180042, 840740, 4463545, -1738925,
-3660386, -4120484, 1166084, 1308891, -1290638, -2171643, 3845070, -1665374, -686121, 2661806,
-388695, 481036, -6238977, -13614509, 11578158, 6879464, -2004676, 7671349, 5765994, 16375637,
-12691091, -26703422, -8808441, 29626684, -23325968, -6931541, -14113263, 21106544, 9455907, 9715216,
-4149475, 3076807, 8507793, 22396106, 10719165, -9889162, -143881, 726386, -576063, 8858370,
-10027675, 1199370, 5957120, 5630702, -5088463, 6933688, 4228396, 13840532, -6593312, -13328894,
--11381663, -8920647, 2698313, -1166621, 5349919, 6000606, 6100464, 12193949, -5285494, 2571612,
--5327370, -9512816, -3787624, 1010391, -10897406, 14008036, 17016660, -18418968, 6345278, -12757663,
-10489384, -2081985, 4118874, -1394791, -10129680, -2479270, 11798275, -9169755, -2754148, 2082522,
--18737868, -7181722, 4010963, -14540612, -939524, 23284092, 11646878, -1560684, -5255966, 18582712,
-4950487, 13386339, -4133369, -5991480, 19466402, -6571837, 6127845, 2593624, 2829310, -3980898,
--2850248, -3556233, -2394444, -6511171, -3954591, -4531728, 729608, 4215511, -1468342, -9145596,
--2867965, -1242856, 1114007, -257161, -2203855, 65498, 2665564, 4504347, -3493419, -78383,
--9804337, 1706713, -1151588, -1831804, 6750615, -79457, -560493, -3893925, 4162897, 1165547,
-6125160, -2015413, -268435, -3999152, -357019, -5777268, 18556406, -1540283, -4289062, -15425912,
-691490, 1438277, -4113505, -353798, -7119445, 2682744, -22095460, 20171314, -4054986, -7164006,
--13973676, -15825344, -1606318, 19247896, -3464428, 5326297, -11873437, -6886980, -3291019, -11596949,
--13953275, 12779675, -7867307, -6442451, 11370926, 11018739, -15549392, 5430450, 5934571, 13498545,
-11191074, -4070555, -9822053, -6220187, -15111842, 16682190, 11016591, 5543192, 11943767, -12309913,
-8485245, -1778117, 7784092, 8580271, -8012799, -623844, 27199492, 22767084, -17143362, 6905234,
-14151917, -10811506, 3416647, -25346750, 7663296, -13703630, 11411728, -7939784, -8702677, -6175626,
-30351998, 1758252, -8749922, 2714419, 10259066, 1369558, 6135361, -16285979, -1778653, 27231704,
--811212, -10644540, -16549583, 552440, -12226161, 7727183, 7933342, 9548249, -16898548, -17699560,
--4643397, 3033321, 5930813, 1901060, 190052, 485868, 6568079, -4300873, -1643899, -1293322,
--2755759, 3244311, 2807835, -5368172, -3629247, -8276402, 5209796, -2995203, 2341831, 3716221,
-5482526, 4334696, 1960653, 8444979, 652835, -1880659, 4133906, -6150393, 3601867, 2486786,
-1831267, 5621576, 6070400, 1180579, -691490, 3585224, 534187, -453119, -6415608, -8501888,
--1486596, -573915, -923418, -16651588, -701690, -1897839, -2915209, 5122822, -24552180, -11016054,
--13860396, 11731703, -6007586, 17339320, 10186052, 22010634, -11014444, -664646, -17293148, 14754823,
-26230440, -7995619, -21180632, 2296734, -4476430, 32670206, -8171712, -12479564, 12180527, 7058242,
-4997195, 12460774, 3982509, -40511204, -23622, -2486249, 15748571, 28881508, -27212912, 1323924,
-7947837, -12719009, -2792266, -36702108, -8528194, 19106162, -30575872, -17942226, -9494562, -11639898,
-11969537, -7104950, -10994579, 16553878, 4796942, 6207302, 16638166, 2118493, -5932961, 12219182,
-17467632, -16867948, -12925167, 26492432, 17877802, 6361921, 8179229, 6475200, -11949673, -16755741,
--169651, 510027, -3651259, 5654325, -10460930, 7610682, -14430016, 6085432, 33195802, -15226196,
--12967043, 18633178, 5140539, -5946382, 11458973, 16417512, 11837467, 14545980, 6915434, -6933688,
-5734855, -17269526, 9256728, 4294968, 4828080, -8605504, -2803003, 2183991, -969052, -1461900,
--2815351, 6093485, 11155641, -4086662, -11046656, 7249368, 12923557, 7152731, 4999879, -15130096,
-9228811, 1343251, 4931160, -2138894, -5432060, -891743, 7758859, 1066763, -1596654, -6323266,
--686658, -3537979, -2060511, -2727304, 3374234, 7821136, -4628364, 658204, 4568235, -1477469,
--962073, -3706557, 600222, -2358474, -3188476, 7044820, 2369211, 9690520, 8708046, 14256607,
--33018634, -60918744, -28118614, -4267050, 20696910, 1467268, 22822920, 21118892, -6441377, 3411815,
--5231807, -11605002, -19112604, -11110007, -13819057, -8026757, 21653614, -28272160, -4986457, -23574538,
--29272886, -5156645, -29547228, -23753854, 2809982, -6257231, -3497177, 5298916, 25751550, 1737314,
--18868866, 996432, -2363306, -5724118, -24480776, -1682017, 28919088, 2595771, -623307, 11669963,
-22428320, 15084999, 3808026, -9296994, 7723962, -7832947, -20827370, -38044284, 35921496, -4693863,
-29893510, -2663954, 236760, -10939282, -17532594, 31532576, -18174690, -14779519, -1699196, -23241678,
--21870510, 17864916, 13035226, 6767258, -2495913, 9006010, -16212965, 6044630, -13200045, -18538690,
--20232518, -15815680, -6652905, 15307263, 767725, 5361730, -9488120, 5272073, -12349642, 8603356,
-6624987, 6056441, -4187593, -743029, 7571491, -2371359, -9705015, -7384660, -9614284, -1067836,
--7167227, -1865626, -2690797, -2790118, 2494839, 853625, -3988951, 1316944, 4639639, -1588601,
--3406983, -7634305, -341987, -5347235, -979789, -1132798, -3776887, 8240969, -8338142, -7863548,
--3859028, 4210142, -7425462, -7512972, 714038, -6344741, -359167, -1427003, 3033858, -1148367,
-803159, -5211943, 1625108, -10408853, -5389110, -1904281, -21522082, 4497368, -5136781, -15904264,
--23083838, -656056, -22068078, -26506390, -4021700, -12342662, -28266254, -40101036, 4875862, -15446313,
-7691213, -3300146, 15244986, 32977296, 2051921, 3011309, -16601122, -18600430, 15460272, 7985955,
--11936788, -394600, 10193568, -23071490, -17059074, -1686848, 29009282, -25132538, 643171, 119722,
-13515188, -21543020, 22259742, 11051488, 6517613, -1055488, -8857296, -24937654, 33286, -6340983,
-9118216, -13763223, -32176822, 26239028, -19287088, -9217000, -1107565, 25657598, -19649476, 8668855,
--16102369, 9615895, -5684389, -24579560, 11740293, -31179852, -6543383, -9325448, 10927471, 24599962,
--14330158, 8769786, 25667798, -20928838, 3562139, 5608691, 6172942, 6978248, -36967856, -11674258,
--6114423, 12818330, 2977486, -619012, 6944962, -7095286, 14979235, -3271691, 3519726, -14858976,
-12509092, 2601140, -22774064, -11028939, 10901164, 12912282, -1803349, -4021163, -8859981, 12053289,
-1684164, -386547, -23740968, 3288871, -11390790, -18636400, -5397700, -4240207, -2275259, -11222213,
--13629005, 4296041, -3121368, -7344931, 3946001, -2000381, -1955821, 166967, -3668976, 664646,
-7350837, -14533096, 1367410, 1967095, -4624606, 9358734, 9263708, 9949292, 4187056, 5735392,
--6778532, 2104534, 240518, 2359011, -3162707, -556735, -342524, 3736085, -2858301, -6923488,
-5850819, 43455404, 4551055, 18290656, 50070728, -23477902, -13014288, -19696184, -7191386, 22890566,
-1617592, 28220082, 7726110, -1172526, -10484552, 21282100, -13258564, 4718559, -8829379, 8688182,
--14055817, 16169478, -7859254, -3984656, -9242233, 12386686, 8697846, -14011257, -3203509, 13045426,
-4083440, -9066139, 971200, -11609833, -37448356, 16082505, -19637664, -29064044, 17920752, 7700877,
-19374060, -2024003, -18717468, -7246147, -4958003, 10984379, 15048492, 16424492, 27850716, 27174794,
--12089259, 3546569, -28939490, 57445, -21055004, -37981468, -3649112, -31013958, 10045392, -24821152,
--16115791, -16525960, -22986664, 2027225, -5404143, 1681480, -6801081, -3173444, -1953673, -40176196,
-6433324, 5796059, 9163850, 18886044, -3561602, -32007170, 18435610, -20830592, 11936251, 11430519,
-25977572, -14354318, -12825309, -8812736, -4967130, -18714246, 7460895, 3962644, 2411624, -4705674,
-6606197, -9494025, 9429601, -1830730, 2033130, 2472291, -11282342, -356482, 4560719, 10970420,
--2854006, -7082401, 5057324, 7505992, 9774272, -6336688, 190589, 5106179, -530428, -1342714,
--3458523, -7468948, 5192616, -437550, 3367254, -4305705, -420370, 6284611, -4226785, -7042136,
--3730179, 760746, -2731062, -12145631, 19203336, -5141613, -3779571, 1353452, 3797288, -3485903,
-3655554, 4274030, -1717987, -651224, -2441152, -4014184, 31324808, 58100708, -31830540, -26038240,
--45010184, -92026120, -22582402, -9822590, 20653424, 12198781, -7822746, -17932562, 25207700, 30448634,
-2767570, -1702955, 280784, -24450712, -14184129, -17410724, -13098040, -25858924, -255551, -6710887,
--3007551, 17340394, -23983098, 19042274, 18174154, -5896990, 9391483, -1311576, -42754788, -30771294,
--16962436, -15861314, -7122667, 3114925, 16564615, 5078799, 8926553, 41076532, 37650756, 8235063,
--27896886, -14820322, -1180042, -14654965, -26461294, -66420596, -55541444, -25296284, -5934571, 2424509,
-14494978, -46180564, -26417806, 23475218, 27612882, 32822676, -30198452, -36992016, 11951283, -22696754,
-54415624, -27768038, -3131568, -16481937, -8740795, 7176354, 16088411, -8373576, -21521008, 19628000,
-19360638, -4744865, 22175990, 19367082, -43130600, 38206956, -25023016, -250719, -7388418, -26145614,
--7269769, 12667469, 9685151, -2483565, 4992900, -16110959, 310848, 7499013, 10604274, 16411070,
--12694313, 2139968, -3679713, -7283191, -17961016, -2627446, -17311940, 14759118, -2893734, -18760954,
-2820720, -21433498, -1509681, 2063195, -4983773, -9550934, 498216, 1192390, 2068027, 6345278,
--1435056, -833761, 12090333, 3466576, -12500502, -14688788, 3692598, -9939091, -20141250, -7421704,
--18968724, 5592048, 5738613, 14154065, 1994476, -15187541, -10915123, 10807211, 54783380, -18240726,
-17663590, -747861, -24378772, 3789772, -49221400, -11060615, 10596758, 998580, -28638842, 16996796,
-50210852, 35243428, -15504832, -31388158, -13352516, 3573950, 52774412, 7138773, 1369021, 247497,
-24429774, 25121264, 6604049, 19219978, 15599858, 29528438, -8341364, 3420405, 18895708, -17129940,
--26094074, 14755360, 43347496, 9438191, 21050172, 2071785, 12959527, -57863948, 10810433, -2200634,
-13179107, 56854628, 23017266, 7744900, -5532992, 25518012, -5701032, -11866458, 9112310, 15884937,
-33548526, -10704669, 20904680, 3854196, 5900212, 13222594, 17056388, -456340, -21985938, -13666586,
-5332739, 42908332, 29506426, 22866406, 24852828, 20736638, -5744519, -52968220, -37918120, -72688024,
--826244, 22259204, 42084772, 6594386, -30348238, 10165651, -18696530, 6142877, 14688251, 4446902,
--8629126, -4843650, 390305, -4034048, 11979201, -7976828, -20906290, 472446, 7306276, 9478456,
--13415330, -6146635, -25172804, 6373195, 11365020, -9717364, -8482024, 6424198, -4679904, -6233608,
--5188321, -19730542, -3920232, 20461224, 13121125, 18527416, -9611063, -20868172, -15142981, 13616657,
-11084237, -4887136, -538482, -1239635, 4204236, -5855114, 12674448, -13930190, -7453379, 991601,
-2765422, 8052527, -16781510, 3571265, -12186970, 33643552, -9374303, 7330436, -10465225, 3866008,
-338766, 3142306, -1240709, -7994008, -20573968, -9014063, 45056356, -2102387, -20656646, 4842576,
--3775813, -17294222, -13547937, 2222109, 23850490, 63986960, 29004988, 56686052, 29939144, 25029996,
-24244016, -17215840, -14037564, -16482474, 7260642, 46409804, 15155329, -39294656, 16957604, -42225436,
-21122650, -26881664, -5524402, -23631984, -24974698, -1486059, 3359201, -650688, -31275414, 40626096,
--8180302, 15091441, -39584028, 10354092, -9102646, -12511240, 20723218, -17141752, 41315436, 4576288,
--16103980, 1843615, -12096775, -17145510, 11726871, -28178744, -5851893, 34803192, -7518341, 14090177,
--1753957, -25677462, 28002650, -15269682, -57723824, 6955700, 4488241, -479426, 6522445, -8223252,
--11128260, -3478387, 26345330, -49971408, 29541858, -11961484, -6768869, 32489816, -19981262, 9390409,
-12232067, 47279536, 16702054, 20775294, -3205656, 28167470, -22513682, 22299470, 3869766, -8919036,
-6207839, 1140314, 1115081, -12478491, -2997887, 1980517, -5033165, -9389335, 19504520, 119185,
--1180579, -5896453, 6647536, -7776039, 17426292, 9807021, 9476845, 1932735, 146566, -1834488,
-14641544, -11738146, -14543296, 5493800, 7805030, -900869, 13192529, -5742908, -2325188, 462246,
--4125316, -14577119, -14105746, -1546188, 5123359, -7338489, 2808372, 4418448, 5466420, -4065724,
--6442, 9257265, -4025458, -13540421, -24250996, 39779452, 36911484, 128837208, 51993264, -70030512,
--32937030, -34240552, -53868552, 37693168, 115778360, 46476376, 22010096, -28870234, -7926362, -1789928,
--1294933, 55736328, 38149512, 24421720, 83715352, -99963216, 6622840, 52552684, -12574591, 10972031,
-54986856, 9834938, -15528991, 29815662, -55083492, -110566952, -10413685, 11131481, -42799884, -4621385,
-59557776, 10274636, 3689914, 22839026, -46672336, -95190432, -87005296, -39399884, 29081760, 57043608,
-125942936, 31885300, -15817828, -15492484, -33801928, -74854840, -22569516, 55337968, 55642912, 58409944,
-56922276, 35897872, 29797946, 8899709, 13211856, -47943648, -29352880, 7558606, 13852880, 25149182,
-30700426, 75093744, 19917374, 43878996, -28251222, -27827630, -50319300, -10608569, -38385732, -8828842,
-78288128, 100456064, 2567317, -3612604, -61887256, -71380208, -40036612, -16617765, 40329744, 21715892,
--3935801, 15300284, -5082557, -9789304, -18341658, -17297444, -1921461, 5022428, 4160750, 22493280,
--1113470, 42950, -10758356, 907849, -13500156, -4167192, 559956, -20095616, -8768713, 999117,
--5093295, -882079, 12641699, 11317239, 25805238, -10518375, -3981435, -24958054, -20084878, -15082315,
-26768384, 17208860, 8853001, 9331890, -7428146, -22049288, -17620640, 1497870, -12192875, 22908818,
-33711200, -528281, -7171522, -22667226, -7802345, -92177512, -56281788, 32668058, 86888800, 100357280,
-210000816, 127497176, 87159920, 76317808, 60034516, -10698227, -90412816, -99729144, -192505264, -205443312,
--194047696, -124608816, -42981884, 42912092, 75094816, 124100936, 122654600, 85487032, 85157928, 108008760,
-104366632, 92957048, 59581932, 40830108, 36735928, -3994857, -5866389, -120255864, -85031224, -107628120,
--129500240, -54943368, -126447056, -102744744, -186508960, -163917968, -115524960, -77787224, -11062225, 96962648,
-118286080, 98985576, 106548472, 97919352, 182476512, 236658064, 212241712, 209745264, 185847536, 178668496,
-133554696, 132726304, 29045254, -90016608, -186213136, -178899888, -266694928, -223225024, -324016096, -386887968,
--343030432, -326582880, -195870912, -137057776, 25600690, 64553360, 153186448, 226628240, 350367328, 302690496,
-437952448, 377502944, 271227712, 265872976, 121760712, 8508867, -23691576, -95106144, -164907952, -198085504,
--235736256, -205097040, -184948272, -179319712, -144844016, -150151520, -122494616, -108622408, -32347546, -23364086,
-30482994, 69508680, 80850072, 104324216, 149424592, 179727744, 192560032, 200594304, 148203760, 121882048,
-119082264, 43663176, 29694868, -67014376, -159148400, -213157072, -217159984, -244045408, -154161408, -176853328,
--117088864, -85226112, -22772454, 42069204, 84035328, 126450816, 132184600, 197736000, 204031344, 195104800,
-166320992, 148402928, 59906204, 14995878, -36223756, -84079888, -159335776, -188798176, -155959920, -106448616,
--93170192, -65768296, -59151900, -31368830, -2874944, 8151848, 6787659, 28993176, 33787432, 51832204,
-45134736, 41385768, 39642548, 44386340, 32503238, 30578020, 35675072, 37160592, 22272090, 14761803,
-2409477, 1009317, 6252399, -2629057, -19440632, -14954002, -20917028, -26305600, -34731788, -30588220,
--25763898, -16822850, -20348482, -15826418, -13462575, -3526168, -7865159, -5773510, -2894271, 6385543,
-1772748, 6390375, 10907606, 17753784, 13412646, 17358110, 14151380, 19922206, 16814796, 13439490,
-4458176, 6264210, 2451353, 2217277, -5274757, -3982509, -5122822, -1787780, -6752763, -3617436,
--6681359, -4328790, -5618354, 1537598, -1545115, -2152852, -6394133, -3369402, -5775121, -3454764,
--9378598, -6380174, -5711770, -981400, -3026341, 1549410, 632434, 4584341, 2607045, 7270306,
-5428839, 7226283, 3569655, 5640366, 2413772, 5518496, 2407866, 4931696, 1526861, 3433290,
--510027, 1289027, -2632278, -290984, -3603478, -694174, -3555696, -360240, -2972117, 301721,
--2369748, 894427, -1761474, 1389959, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--5146982,
--13877039, -1143535, -2240899, -1867774, 176631, -2287070, 833761, 1379758, 5645735, -1895691,
--259846, -5215701, 353261, 5281736, 332860, 3821984, -1156957, 1613834, -2233920, -3289945,
-75162, 3631395, -501437, -4517232, -224949, 4400194, 1392106, -1868311, -1605244, -195958,
--642635, -1015760, 12885, -733903, -1549946, -185220, 860067, 620086, -241592, -3446175,
-5090073, 6995965, 183073, 817118, -2867428, -1603097, 512175, -3650185, -4093641, 2421288,
--3333968, 2391760, 3058554, 3087008, 1115618, -470836, 793495, 641561, 2289218, -5029944,
-390842, -654983, -3700651, -4955856, 102005, 2463701, -1927904, -271120, -617938, -359167,
-3445101, 1718524, 424128, 1353989, -1181653, -4085588, 1539209, 645856, 3444027, -4202089,
--3216931, 2346663, -1917703, -889595, -3163244, 688805, -1877438, -1721208, -2147, -1385127,
--1531156, 387621, -849867, -398358, -1738388, 1021665, -257698, 74088, -499827, 828392,
--210453, 250182, -351650, -294205, -30602, -581431, -79994, -12768401, -2916283, 4861903,
--682363, -3982509, 1676648, -9486509, -3616363, -1436130, -1690070, -4940823, -5133560, 2710124,
-4281009, 3600256, -4800700, -7156490, 811749, -4219269, -7556458, 1662152, -471910, 2072322,
-8513699, -2869575, -888521, -5440650, 7357816, 498216, 3675955, 2462627, 6042482, 2998424,
-1875290, -6056978, -669478, -5574868, -1508070, 170188, -2301566, 1779190, 1573032, -2674154,
--5098663, 3184182, 5338108, 1428077, -2524367, -4016331, -2434710, 1192927, -4427038, -5697274,
--1585380, 2713346, -1537061, 1301912, 3554622, 2163053, -2608119, 5056787, 479963, 4296578,
--3636764, -3151432, -1760937, -2222109, 3073586, -1786706, 207769, 5106179, 1869385, 59056,
--4871030, 1264331, -1924682, 3561065, 5306432, -979789, 469225, -2478196, 2033667, 4573067,
--1611687, 2823941, 1350767, 545998, 2428804, 883153, 157303, 1839320, 765041, -221191,
-54224, 775778, 816044, -927176, 687732, 576599, 1024887, -665183, -2612951, 3293703,
-4502737, 1845762, -2834142, 1992328, -1334124, 1387811, 8481487, 5259188, -7174743, 4891968,
--3949223, -1919850, -1040456, 171262, 3607236, 165356, 9927280, 2899103, -3810173, -2471754,
--2471217, 7024419, 1647120, 6767795, 2212445, 4568772, 7028714, 8093329, 3069828, -871878,
--799401, 1254667, -6449967, -5967857, 1927367, -4519380, 2601140, 1288490, -1535988, -629213,
-1904818, 6768332, -2190970, -2238215, -3444564, 8636642, -1147830, -10663330, -5328981, -4197257,
--3880503, 4475893, 4270808, 3792456, 5617281, 2538326, 3529390, -101469, -314606, -102005,
-5653251, 1887638, 3327526, -7396471, 513785, 404264, 430570, 554588, 3272228, 2336462,
-969589, -3547643, -3566970, 2158221, 1773822, -995359, -190589, -2840047, -3663607, -2951180,
-2094870, 3654480, 476205, 282394, 1289027, -959925, -88584, -740882, 692027, 714575,
-418759, -411243, 1121523, 1804423, -205085, 257698, 430034, -184684, 506269, -618475,
-1307818, 103079, -187905, -714575, 1164473, -2063732, 1276142, 456340, 976568, -56908,
--1222455, 352724, -561567, 18983756, 4050154, 3003793, -2382096, -1180579, 1745904, 1446867,
-4946192, 6780143, -389231, 9922448, 3824132, -3331284, -3318936, -124554, 4603131, -430570,
--2642479, 5307506, 644245, 14250165, 3615289, 2916820, 498216, -1245541, 581968, 2256469,
-2655901, -523986, -55298, 7698192, 976031, 8462159, -4282620, -3896609, 2669322, 12646531,
-3546032, 3141769, -1171452, -5306969, -2215130, 1806571, 287763, -12885, 374199, -7580618,
-459562, -3274376, 2995203, 2535641, -3121904, 1877975, 2612951, 1920387, -3699041, -3605088,
-798864, 1418950, -73551, -4666482, 1163399, -1752884, 2976949, -336618, 511101, 2046015,
--820339, 1176284, -1787780, 625455, 10915659, 1347546, 3813394, 231928, -3114388, 1907502,
-572304, 3507378, -6203544, -4165045, 2007897, -798864, 1172526, -1496259, 2245731, 2051384,
-161598, -2613488, -1109712, -3591130, -741419, -753230, 2284386, -1606318, -535797, 494995,
--410706, -793495, -972273, 781684, -1027571, -1147293, -99321, 136902, 579821, -2406256,
--1054951, 719944, 277025, -2629057, -745714, -95026, -3578782, -1388348, -459562, 2841121,
--4218732, -656056, 4169876, -2075543, -6615860, 25770, 10764799, -682363, 8441221, 4420058,
-11699491, 1484448, 1048509, 4341675, -3350075, -6941204, -9258876, 2237678, -4733591, 10901701,
-6159520, 7721815, -1472100, -3119220, 928787, 1785096, 3555159, 10209674, 1191853, 4293357,
--4656819, 3298535, -3308736, 1453310, -1791538, 3406446, 5791227, 851477, 5533529, 2101850,
-2763812, -1539746, -1352378, 7486128, -1743220, -1790465, 5580773, -3278671, -323196, 864899,
--2454037, -3178276, 2469606, -3654480, -716186, -4683662, -10138270, -1070521, -1542967, -199179,
--10561861, -3967476, -3223910, -2670396, 3971234, 10470593, -2649458, 3408594, 5444408, -1453846,
-1027571, 985695, 622770, -3725884, 4144644, -4743255, 1263257, 3520800, 9759239, 3113315,
-2896956, 951872, -118112, 3007551, -3513820, 35970, 2024540, 1019518, 186831, -3882114,
-2370822, 2944200, 2909304, -481036, 2171643, 1239635, 627602, 2029372, 1155346, 302258,
-1132798, -204548, 885837, 624381, 751619, 1203128, 1447404, 1748052, 1193464, 1196148,
-1292785, -677531, 1174137, -13617194, 1096827, 7455527, 3787624, -7599945, -669478, 449361,
-1724429, 2905546, -530965, -5897527, -5820755, 976568, 9625559, 4703526, 5673115, 9859097,
--6702834, 7057705, 12816182, -1107028, 2822331, -7240778, 2427730, 2716030, -6362994, -3308199,
--1438277, 3041374, -6426345, -8304856, 1523103, 981937, -7259569, 629213, 2190970, -1412507,
-15219217, -822486, -10908680, -695785, 3674345, 8651675, 3107946, 3897683, -7016366, 1952600,
-2128693, -6168647, -470836, -1030255, 10555956, 6521908, -1825361, -3627637, -8286603, 3562139,
-3238405, -4843113, -225486, 1983201, 3161633, 3316252, -4245575, -108448, -969589, 9971303,
--8428873, 1035624, -2235531, 8978092, -697395, -2190970, -3815005, 1126892, -3945464, -9136469,
-203474, 6948720, 2030446, 4355097, 1037772, -3293703, -1355599, -1663226, 5871757, 2347200,
--1652489, -224412, 5330592, 4013647, -1559073, 571768, 805306, 1153199, -143881, 2147484,
-1453310, 1310502, 99321, -759136, -380641, 420907, -806380, 249108, -1109175, -363462,
-847182, -2802466, -692027, 5303748, 4654671, 1755031, -3578782, 1050120, 2174327, 16126528,
-10557566, 8049843, 11200201, 4626754, -1087164, 1655173, 4069482, -11362336, 5730023, 200790,
-6165426, -4571456, -2455648, -7329362, 1954747, 12961674, -12802224, -8031589, -13605383, 6825777,
--3218541, 426276, -6280853, 783295, -2442226, -6144488, 2180770, 2989297, -9738301, -1327682,
-1561221, -2134062, 4879620, -13907641, -6901476, 14171781, 1240709, -280247, -1593433, 468151,
--7406134, -7695508, 257161, -11183021, -2772402, 1082869, 2783139, -4835060, -1309428, 13790603,
--1102733, 4808753, 10081362, -9639517, -3548717, 2200634, 2220498, 1792612, -3160559, -6911140,
-7635915, -926639, -7539278, 5313949, -1540283, 1197222, 1821603, -4013647, -2617783, -1739999,
--3214783, -4349728, -5377299, -5019206, -6544457, -1986959, -2901787, -703838, -1048509, -159988,
-602906, -2681133, -2294050, 1405528, 1524713, 2801393, -392453, -1264868, -3955128, -1146756,
--4537633, -2842732, -814970, 746787, -548682, 484794, -1326071, -738734, 2965138, 1137093,
-1983201, -2262911, 328028, 419296, 598611, -4483409, 85362, 1197759, -235149, 2225867,
--610959, -790274, 237834, 623307, -26830660, -14705968, 11905112, -4511327, -5820218, 7429757,
-6207302, -11276437, -15547245, -4813585, -5646272, -5671505, -1181116, -10480257, -7777112, 3995393,
-282394, -14142790, -15851114, -8695161, -4440460, -684510, 7919383, -471373, -6002217, 4526896,
--13216688, 500364, -743029, 660888, 4439923, 2612414, -9664750, -7073275, 5592048, 2100776,
-21144660, 5313949, -7212324, 1052804, 565325, 302795, 5491116, 1156957, 2221572, -2107218,
--4799626, 1463510, -12355547, -2212445, -5454609, -6400038, 1291711, -9665824, 11225434, -1393717,
-4624069, 8181376, 2291365, 4366908, -644782, -5203353, -336618, -614717, -6660421, 8578660,
--3638911, 15217606, -606664, -287763, 600222, -3876208, -8312373, 2615635, -6543383, -2554969,
-8779450, -11410654, -11370389, 7610682, 7092602, 6220187, -9646497, 6947110, 2782602, 4073240,
--377957, 1814087, 1789928, 5413807, 2204929, 1371168, 3896072, -475131, -323733, -3206193,
--2610266, -468688, 2633352, -3447248, 409096, -347892, -2127620, -1213865, 832687, -4452271,
--2816425, -3307125, -650688, 1510218, -79994, 3397856, -1174137, 3551938, 252866, 1356136,
-506269, 2763812, -2149094, -1646583, 3073586, -1362042, 380641, 291521, 5387500, 19833622,
--11080479, 9474161, 3858491, 7077033, -2828773, -10711112, 1522566, -2757369, -10084046, 20471962,
--1450625, -5596343, -20121384, 12437688, 3423626, -144955, -7522635, -8617315, 224949, 20798380,
-7706245, -721018, -2049773, -8801999, -7242926, 6069326, 2642479, -6862284, -4897337, 7321309,
-1803886, -205085, 6211060, 9659918, 1502165, 12723304, 14319958, 8791261, -3304441, 3257196,
-1168768, 2465848, 7472170, -10510859, 11166915, -665720, -5677410, -8499203, 52076, 7439420,
-5136244, -10047002, 2227478, 8135205, 1235340, -7244536, -15862388, -14318347, 3808026, 6495601,
-1077500, -5480915, -740345, 11643119, -5282810, -8580808, -16747151, 1890859, 3260954, -12378633,
-4705137, 12619151, -5675263, 9844065, 3389803, -11450920, -8568460, 1024887, 11903502, -1107565,
-12505334, -2040646, -4362076, 2758980, 6385006, 1826972, -2114735, -3221762, 2159832, 5777268,
-4601521, 908922, 7438884, 1509681, 5343476, 1459215, 7299834, 1236414, 4516695, 64961,
-3614215, 2075543, -1773285, -5179731, 481573, -6078990, -846109, -2402497, 999654, -668404,
--214748, -5376762, -493384, 2734284, -2675228, 511101, -629213, 545461, -340376, -3840238,
-636192, -689342, 23946590, 15640660, 3629784, -4846334, -2500745, -3403762, -16343424, -6692633,
--155693, 10410464, -7480760, -4278325, -3467112, 119185, 17334488, -13489955, -3537979, -804233,
-8172249, -2868501, -9857487, -16668768, 6008123, -11536282, -5185100, -7219840, -7678328, 2373506,
--12939126, -6381785, 11610370, 17220134, 867047, -10880763, -9568113, 15876347, -1702418, -8698383,
-16721918, 453656, 1107565, 638876, -18061948, 7321846, -6635725, 6535330, 6191196, -12401718,
--1251983, -12578885, 4959077, -12200391, -1969779, 5022965, 7000797, -4117800, 4295504, -14791867,
-10242960, -1208496, 7022809, 5744519, 4307316, -3333432, -2975339, 14618995, -10043781, 7228967,
--2379949, -12564927, -7427609, -898722, 13314935, -7617662, 6305012, 1709397, -3941706, 104690,
--14574435, 18524730, 11559904, -2261300, -4922570, 9045201, 4088809, -2747169, -4628364, 965294,
--3035468, 4629975, -830539, 2403571, 7866233, 2708514, 6262599, -74088, 2326262, 841814,
--976031, 97711, -403727, 5216238, 2250026, 7263327, 1401233, -4173098, 5519570, -2205466,
-24159, 3947612, -3680787, -1341104, -1854889, -1712081, 3497714, 1955284, 1909650, 2859911,
--152471, -891206, 7030325, -2370822, -2157147, 9166534, 1962263, -6359236, -14010720, -950798,
--18262200, 2998424, 1817845, 8843338, -7188165, -1934346, 4957466, 3804804, 5435818, -12651900,
-17819820, 12341052, 2480881, 9079561, -3996467, -17948132, 4371740, -7657390, -8150238, 8204462,
-20625506, 3408057, -5465346, -7585986, -16228534, -134755, 938987, 25054692, -9752260, -563714,
-931471, -934155, -15020038, -17314086, 13749801, 368830, 7889855, -2370822, -19246286, -11349451,
-1726577, -3412352, -3932580, -5708549, 12886513, -2845953, 8432631, -9069360, 17880486, -21069498,
-10525891, 10683731, 6643778, 5575405, 5416491, 16384763, 8675297, -1357747, 3704409, -25770,
-16519518, 24408836, -2659122, 1808718, -7045894, 10125922, 16667157, -11434277, 3638911, -28576564,
-18751290, 19038516, 12976707, 17702244, -7965017, -14394046, -851477, -2211908, -4039954, -3131031,
--8376260, -6078990, -2989297, -885300, -4610111, 2733210, 5393405, 1901060, -7861938, 1479616,
--4292820, -4816269, -2797098, 3233574, 3262028, -1518808, -1831267, -811212, -1225676, 766115,
--7603703, 2492155, 1292248, 4942434, 1291711, -421444, -60130, 1022202, 4569845, 1444720,
--3857418, 3136937, 168041, 396211, -20685100, -3058554, -26454852, -13572097, 10397042, -10828686,
--23527830, 2183991, -12691091, 583579, 447750, -15084999, -14345191, 6483253, 13839458, 4177930,
--16109349, 7702487, -18118856, -6351183, -6679748, 5668820, -7449084, -3393024, 8697846, 1487132,
--5966784, -12894029, 13646722, 13237626, 17199196, 2246805, -1919850, 608812, 5508833, -1300838,
-7051800, -7762080, 9273371, -3651796, 10683731, 8571681, 6448894, -3105261, 441845, -16626892,
-5657546, -4185983, 12505334, 2275796, -29072634, 4466229, 14328011, 19275276, -11088532, -15146202,
-18127984, 8230768, 12745315, -22705882, 11225971, 28426242, 29940754, 1906429, 710817, 17038672,
--11792906, -15712601, 10065256, -17396228, 6531572, -8101382, -6847252, -3841848, -37473588, -21638046,
--18250926, 13464722, 5107790, 3786551, -13312788, -5413270, -10057740, -1902671, -5403606, 14716705,
-3496640, -5851356, -13074954, -2909840, 8465381, -1350230, -3616899, 2601677, 8861591, -3154117,
--5237176, -2509335, -1943473, -601295, 6892349, 6925635, 6016176, -6077379, 7885560, -399969,
-2253784, 9015673, -4050691, -4065187, 7859790, 14110041, -3299609, -4605816, -2246805, 1698660,
--2543695, -9718974, 1569811, 7099581, 1915019, -9786620, -9374303, 4422206, 3178813, -522912,
--599685, -1709934, -6970732, -4772783, -15569256, -29901562, 22863184, 2387465, 7682086, -3882651,
-16193637, 419296, -13795972, 10670309, 4355634, -4900558, -8324184, -6543383, 2065879, 3888019,
-14343043, -8175470, 11257646, 3569118, 20447802, -29343754, -7864085, -4662724, 3783866, 11959336,
-17380658, 3930969, -14103062, 9513353, 13675176, 11491185, -3212099, 3999152, 834297, -4833986,
--1967095, 816044, 4428648, 1574642, 10110890, 1648731, -12745315, 11892764, -13215077, -16895328,
-2626373, 12181601, -5931887, -4399121, 4436701, 5934034, 10518912, -6028524, 4987531, 23732916,
--9479530, -25266218, -32697050, -16547972, -22155052, 10038412, 19226422, 12272332, 4698158, 11541651,
-6796249, 12758200, -10947872, 14424111, 7504382, 5835250, 15056008, 19541564, -6095096, -4400194,
-5342940, -1317481, 17608830, 6789807, -2697240, 2937221, -21496312, -15065135, 2970507, -884763,
-3812320, 1410360, 4507032, -4057670, 11316165, -6026376, -6924561, -6722161, -11314018, -4146254,
--2247879, 3666828, 3004330, -1739462, -9722195, -614717, 3200288, 1031866, -3912178, 2247879,
-119185, 3699578, -4079145, 1615445, 765041, 4470524, -2180233, 6908455, -4329864, -5024038,
-1457068, -904091, -3652870, 1092532, 4793184, 349503, -761820, 29894046, 2917357, 4668093,
--6183679, 10839424, -34195456, -15135465, -23363548, -24169392, 9609452, -21096342, 20732344, 23538568,
-1058710, 5076115, -3605088, 4277251, -22357990, 9160628, 24790552, -14150843, -28792388, 3769371,
--10814728, -9235253, -28085864, 4821101, 10343355, -159451, -3793530, 8988293, -16010564, -2724620,
-10447508, -5807870, -14189498, 1660542, -7074348, 14624364, -9713069, -5465346, 13769128, 11866995,
-25411174, 3295314, 6145562, -2407866, 6832756, 8972187, 15701864, -4599373, -503585, -9831180,
-20709258, -26169772, 28037546, 915365, -11164767, 13047574, -10180683, -7589207, 25784836, -37305012,
-6076305, -7944616, 7285339, -14533096, 6955700, 14665703, -7644505, -1464584, -3928821, -6266358,
--3308199, 27327266, -31120796, -10734734, 52306260, -19803020, -23095650, 22532472, 13540421, 15000173,
--13182865, 925029, -13105556, -7450158, -2068027, -15075335, 3260417, 1896765, -3913789, 5261872,
-4799089, -6903086, -12742094, -3401077, -1091995, 4869419, -11250667, -8016020, 273804, -1260573,
-2809446, 6867653, 16632261, -7719130, -404801, -1968706, -1768990, 4642860, 1853278, -10058813,
--7504919, 7806103, -6481106, 2850248, 2025614, -6193880, 2268817, -1547799, -10162429, -8475581,
-4940823, 3095061, -1563905, -361314, 6300180, -14996415, -22873922, 2122251, -8605504, -7895224,
--12830141, -16316581, 20547124, 8688182, 1404991, 9488656, 24317032, 14203994, -1554241, 4838818,
-16383153, 20671140, -18332532, 8511551, 17495012, 7470022, 6478958, 23891292, 11668889, 4910222,
--622770, 10700374, -1097901, 12122008, 10201621, 5432060, -11122355, 21128554, -17331804, -2269890,
-26671746, 26175678, -6142340, -23369990, 8877161, -440771, 22899692, 39134132, 8876087, -6090801,
-2887829, -22585086, -2543695, -6027450, -4722854, 371515, 20129438, -8667244, 8923868, 24005110,
-4205847, -22353158, 14856829, -1213865, 9493488, 22554484, 31983010, -9062381, -8333311, -2804614,
--25125558, -37031208, 1129040, -16878684, -2601677, -20446728, -1972464, 590021, 2897492, 15063524,
--302795, -10596758, -17390322, 12736726, -5278515, 10890963, 529892, 20338818, 7691750, 7472170,
-204548, -6396280, 11586748, -8793946, -9994926, -3102577, -7481833, -2998424, 715649, 762357,
--2601677, 3093450, 4629975, 330176, -1022202, 5898064, -4968741, -7274601, 4561256, 5193689,
-1182727, -6290517, -7386807, -4421132, 6201933, 8127689, 1209033, -1177895, 9175124, 2450816,
-4451197, 3726958, 6601365, 1801202, -1050120, -4788889, 2736968, 5133023, -10448582, 8371428,
-24996710, -46860776, 25793426, -19752018, -46162308, -13705778, -11622182, -1668595, -10639708, 5572183,
--12761422, -28644748, -17273822, -8591008, -2604898, 3242164, -11775727, 11475616, 22421340, 791885,
--1409823, 6103686, 1374390, -4226785, -8329016, -4739497, 6057515, 6618545, -2001455, 6288906,
-27528592, 7530689, -8069707, -27379342, -4383551, 19246286, -23528904, -11113228, -8979166, 220654,
--1823214, 14762876, -4924180, 1708860, 20378010, 7216082, 22607098, -3261491, -10729365, -4986457,
--5851893, -5951751, 10877005, 1101659, 7336878, 13715441, -24322936, 3476776, -6479495, -15197742,
--11453067, 23614804, 17019344, 767189, -11643119, 4697084, 9944460, 940061, 6857989, -16396038,
--40341016, -18757732, -14819785, 14642617, 1416802, -1960653, -6882685, 2783139, -4625680, -12832825,
--13283797, -6987912, 16207059, 12203076, -18283676, -22841710, -8980240, 1479079, 13701483, 5479842,
--4502737, -6208375, -4780836, 3107946, -10190347, 1396938, -6995965, 471373, 10300942, 11003706,
-2832531, -5861557, 3470871, 7897908, -382252, -1833414, 5811628, -8275328, 11241540, 10078141,
-3838627, -303869, -598611, -1261110, 9398462, -3854733, -5163088, -5862094, -8310762, -8139500,
-2443300, -3079492, 3325379, -2421288, 1588064, 5893232, -3096135, -5920613, -8577050, -2461553,
-3763465, -6118181, 13143674, -18101676, 21843666, -1401770, -35512936, 7548405, -17321066, -3134253,
--2928631, -3788698, -22760106, 7406134, 780610, 18095234, -38646652, 979789, 18466212, 2627983,
--9475772, -19005768, -1906429, 11451457, 16109349, -13369696, -5297306, 9255655, 18461380, 17567490,
--17047262, -3064459, -27383100, 12896176, 13273596, 8797704, -8105140, -1794760, -7761006, -2557653,
--9416179, 2900714, 19243600, -6993281, -8179229, -6458557, -11591580, 22619446, 18757732, -1593433,
-26589606, -950798, 9161165, -23596014, 19144280, 8971650, -27295590, -8424041, 30273076, 12993887,
-7862475, 6222334, -14933601, -11160473, -15983184, 26912266, -14287209, 20834350, 20842940, -23986318,
-55497956, -11787001, 34226596, 1716913, -8371428, -14806900, 25577604, 10255845, -20764020, -12193949,
--44030396, 17569638, -6509023, 20170240, -27324582, 30086782, -23494008, 8978092, -9454834, -6732361,
-19127636, 1968169, 1259499, 11084237, 7097434, -4934918, 12328704, -1493575, 3190087, -8934069,
-1148904, -1165010, -6327024, -8999030, -302795, -10004589, 4181151, 4368519, -2997887, 8719320,
--3775276, -5207648, -7956964, 5129265, 394063, -1216550, -15091978, 6514929, -3557844, -17388712,
--6218039, 4944044, -5624260, -9036074, 5303748, -4943508, 4244502, -9221295, 3582540, -9409200,
--2360622, -1510755, 4296578, -2321430, 156229, -3167002, -3990025, 12985834, 23484344, 1470489,
--18865106, 8924405, -36849208, -10324565, -33428268, -47303696, 2077154, -18418968, 6514929, -3854733,
--6869264, -18218714, -11788075, 10128607, 28740310, -23895050, -4552129, -40904732, -35100084, 9472014,
-14777372, -22609782, -22796612, 1130113, 5683853, -38008312, 2531346, 479963, 20110110, -17234630,
-1275605, 15913928, -10040560, -19930258, -21405044, -10918344, -19467476, -16711181, -20343112, 28943248,
--36629092, -23355496, 34160560, -1379758, 10030359, -28439126, -4363687, -8321499, 1293859, 47091632,
--6164352, -1225676, 5236102, 21910238, 1074279, -21280490, -8743480, -15423764, 5663988, 56417616,
-11592117, -20272246, 43300248, 30594126, -26865020, 31565862, 52837760, 168577, -19825032, 35291748,
--5606543, 37146100, 34299072, 2559801, -1175747, -10321343, 24124832, 18878528, 11482595, -20241644,
--6066642, -13156559, 30407832, -4035122, -19925964, -10238128, -20032802, -9119289, 20990042, 2077690,
--10176388, -3892851, -12585865, -2442226, 18830748, -9027484, 5069672, -2047089, -16832514, 18647138,
-2863670, 7363185, 9735617, -12355010, 4348118, 17134772, -2504503, 501437, -8702677, -214212,
-2020782, -5875516, -4639102, 3111704, 13490492, -8422431, 5716602, -11186779, -4633196, 513249,
--3036542, 12521440, -4224101, 416075, 1862942, 4501663, 1076426, -6158983, -765041, -3537979,
-26796300, -67444944, -40074192, -43944496, -14557255, -29390462, 36430448, 13323525, 29928942, -4732517,
--56892212, -9068287, 9577240, 39005284, -1331977, 8790724, 36429376, -13873818, -25883084, 2313914,
--1478006, 45304924, 29987998, -15294915, -20471962, 48132624, 3668439, 23882166, 11953431, 44857176,
-39344584, 29730838, 3421478, -25992068, -13691282, -19972672, 38042672, -18632106, -25650618, -14587856,
-1574106, -1578401, 16920560, -16952772, 6195491, -77420008, 8806294, 11380053, 12811351, -32731408,
--29650306, 8594230, 27237072, -33798172, 13069049, -19497004, -14576582, -22927610, -1875827, 22982906,
--15723875, 25302726, -6503654, 9496710, -47841640, -31508416, -1127429, 24770688, 17877264, -35578436,
--37526204, -18174154, 3579318, 39118024, 16450262, -4585952, -27969900, -33065880, -10971494, 5969468,
-28192166, -3275986, 9337259, 18080202, -7246147, 6001680, -18722836, 10755135, 6607807, -12404402,
--9664750, 163746, 14413910, -14781667, -633508, 22169010, 3526705, 2467459, -99858, -7492571,
--15796890, 3082713, -17546552, 19498078, 17382806, 12362526, 1410897, -2607045, -20580410, 11901891,
--4324495, 22823994, -5997385, -27972048, -16841640, -4389994, 25966298, 6321118, -5907728, -3760781,
--21430814, -11297375, -8847633, -2396055, 11494406, 10273025, -21691732, -12921409, -13466333, -13953812,
--5084705, 2784213, -2289218, -8521752, -13506062, -14590004, 1213865, -1995549, -7152731, 12634720,
-86019072, 9521406, -47151760, -103507104, -10263898, 62524524, 14716169, 27675158, -3683471, 38301444,
--7168301, 17229798, -9568113, 21999360, 29198798, 16716013, -15426986, -33726768, 39638252, 46649788,
--11205570, -44850732, -28569048, 5425618, 25645250, 9469866, 8639864, 2340220, 5912023, 3690451,
-5848672, -8310762, -53594748, 325344, 31754840, 25697326, -11230803, 3153043, 19218904, 44557064,
-26146150, 22149146, -26749056, -17500382, -5272073, -4190814, -40153112, 28413894, 15686294, 29487634,
-58237608, -29826938, -20313584, -2168959, -17196512, -13642427, -26633630, 46336792, -28581396, -29423210,
--31601296, -10215043, 57713088, 15481210, 22011708, -744640, -5680631, -13040594, 35605816, 29879550,
--15819438, -33681672, 11070815, -3999688, 13358959, -31568010, -13201119, -18178986, -24992414, 15239618,
-23444078, 4949413, 234613, -12477417, 6503118, -4628901, 21750788, 2201171, -8360691, -4049081,
-6809671, 14777372, 15181099, -8827768, 9188009, 5501316, 4461398, -383863, -17499844, -1875827,
--14310831, -5134634, 180926, 2597918, 4024921, 5187247, 5062693, 14981920, 21153250, 19714974,
--2328946, -4551055, 1945083, -9306657, 11443403, -13191455, -2119566, 11074573, -1151051, -2486786,
--22238804, 11025718, -22178674, 7364795, -5333813, 3550864, -2349347, 2570538, -1466195, -13424457,
-7122667, 6719477, -1548873, 4524211, -1181116, 3849365, -2185065, -3568581, -1045288, -1199907,
-387621, -792421, 440234, 380105, -4894115, -2135673, -1187559, 2762738, 629750, -1434519,
--2834142, -2985002, -149787, 681826, -1438277, 53150, -1887101, -578210, -2106145, -24770150,
-1938104, 66831840, 50955492, 8282845, 3606162, -35897336, -69956968, -60684668, -30140470, 50235548,
-54354420, 57013008, 31121870, -8089034, -36495948, -33167884, -22290880, 14517526, 21804476, 39082592,
-3182571, -29329794, -25402048, -5237713, -25453586, -11440719, 5067525, 40457520, 56983480, 37417220,
-17310866, 16508244, -36407364, -4042638, -72764800, -80631032, -51093468, -24177444, -22660248, 38006164,
-58741732, 65831648, 58848032, 51592220, 20809654, 3673271, -25298432, -6621229, -40463960, -70664024,
--6369974, 6812892, 6381248, 23736136, 13510357, 24078124, -79897128, -43162272, -28910498, -45767708,
--20062866, 34269544, -20870856, 23153632, 2603824, -20726976, 16339666, -17280800, 18434000, 22385370,
--17477832, -33833604, -70900784, -67900208, -51468740, 25156160, 8156143, -9502615, 12512313, 3926674,
--397284, -32276680, -23509040, -60274496, -20738250, -22057342, -3107946, 44515188, 46649252, 7189776,
-23750096, -14395120, -33512556, -58617176, -39511552, -36106716, -1994476, 18281528, 9568650, 14955613,
-15053324, -10565083, 8825621, -9943923, 9176734, 2786897, -1125818, -1843078, 7432978, 7566659,
-14878840, -3244848, -4487167, 15001784, 12927852, 2964601, -5480379, 11759620, -119309360, -60833916,
--31849866, 40246528, 9195525, 153073168, 156662160, 118302728, 152738160, 160276368, 145409344, 104582456,
-94716912, 105336760, 41785736, -6118718, -65190088, -100480760, -139128480, -134955392, -201452224, -122057064,
--79568568, -63006632, -89864136, -47113644, -13028783, -67160944, -52323976, -55054500, -12548284, -33013266,
--11874511, -44739064, -22854058, 26861800, 27622546, 8393977, -8352638, 29263222, 23536420, -67754184,
-14044543, 46009300, 100413648, 73819752, 95597920, 39356932, 37953552, 159487168, 86237040, 163203392,
-54554676, 153072640, 105552040, 133657768, 180063280, 170729248, 138299024, 155481568, 172550304, 187961728,
-160385888, 185284352, 126290832, 187939712, 150763552, 133922984, 142627808, 78012176, 159681520, 77401216,
-46859704, -58645096, 3831111, -86686936, -97592928, -149089584, -176182784, -270648448, -264419120, -249642288,
--233574816, -220045136, -186074096, -226881648, -279401056, -275435712, -228578704, -241840480, -227540928, -228216304,
--194886832, -212116624, -203505744, -151722944, -167687328, -128749696, -120354648, -110850960, -70779984, -91317448,
--20917564, -33929168, 15564961, 21195664, 66430796, 98413808, 103022840, 119105888, 105656192, 159401264,
-180569552, 179025504, 206770464, 216062624, 213958096, 163228080, 145611200, 127885872, 118441776, 115426712,
-118368224, 111352392, 84659712, 54601920, 61908732, 47909824, 37137508, 24814710, -19449222, -25184078,
--26603564, -32422708, -39746700, -44625784, -31571768, -34623340, -27844810, -28302224, -24712704, -17761300,
--21416318, -17484812, -17161616, -20827370, -19353122, -21348134, -17069274, -14030584, -18937584, -21628918,
--9842454, -4809827, -6780680, -6110128, -1192390, -1637993, -3699041, -3831648, 1607392, 7614977,
-8061654, 8319889, 8273718, 7771744, 11042361, 11637751, 11705933, 8059506, 5695127, 4402342,
-7358890, 7926899, 4695473, 1319629, 1571421, -1038308, 3386582, 2667712, 2806761, 2032593,
-2815351, 2374043, 2372433, 5411659, 10991358, 7640210, 8026757, 7113003, 8857296, 8302172,
-6351183, 3989488, 3930432, 1739462, 1496796, -2151779, -4176319, -7874286, -7199439, -11671574,
--14554034, -15828565, -16342887, -18933826, -18862422, -19845434, -19585588, -19192598, -20475720, -20874078,
--19996830, -18028662, -15984258, -14809584, -10718628, -9844065, -8116415, -7822209, -3862249, -2450816,
--21475, 1051193, 2760053, 3244311, 5326833, 5631239, 6084358, 4725001, 4923643, 3707094,
-3661460, 2369211, 2406792, 1288490, 1366337, 364535, 533113, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
--7670275,
--15194521, -2656437, 201327, -3478924, -7151121, -2356863, 5238787, -8405788, -4646081, -2781528,
--1647657, 2672544, -1202054, 2975339, 1359357, 2605972, -291521, 3225521, -2813741, 526670,
--1235340, 611496, 8109435, -1724429, -500901, -4019016, 5012227, 3113851, 2411087, 6257231,
--3199751, -1816234, 2138357, 5602785, -1512365, -372052, -4522601, -4952098, -3314104, 3539053,
--4398584, -3769371, -476741, 5040144, -6818798, -1448478, -5697274, -2761664, -1630477, 785979,
--513249, -4081830, 5235565, 895501, 4711579, -1902671, -1194538, -5867999, -127238, -2056753,
--2213519, 3385508, 1901597, -1049046, 1821066, 3746285, -1065689, 1611150, -2680597, -1545115,
--648003, -2525978, 2246268, 784368, 1710471, -4008815, 2880313, 1660542, 6496675, 3866008,
--1063004, -4125316, -336081, 901943, 514322, 1286343, -190052, -1395864, 57445, -947577,
-9127, -1147293, 411780, -1116155, -73014, 1254131, 424128, 648540, -798864, -559956,
-594853, 862215, 392453, -125628, 65498, -16106, 539555, -12516608, -4474282, 3587372,
--3293703, -1498944, -1384053, 1686848, -621697, -3308199, 5222680, 4647155, 1571421, -593779,
-2429878, -6427956, -922881, -6352257, -3178276, 4671851, -762894, 827318, -622233, -734439,
-125091, 9783936, 8982924, 3997541, 4804995, 5666136, -1074279, -658741, -1932735, 4999342,
--466541, -1904281, 1428614, -2920578, 2023467, 3597572, -1818382, 4056597, 4611721, 8948027,
--3477850, -4227322, 3858491, -2317135, 154082, 1882806, -5177583, 309775, -2695629, -3055869,
-6924561, 4050154, 4992900, -2840584, -3712999, 2625836, -4326643, 3056943, 13338558, 749472,
-944893, 2987687, 1331977, 1224603, 7607998, -4056060, -994285, 1387811, 1022739, -3775813,
--2736968, -3854196, -1793149, -1410897, 3519189, -596464, 3535295, 3582003, -3559454, -3852049,
--953483, 2426657, 3412889, -4038343, -744640, -1202591, -2732136, -341450, -2585034, 681289,
--132070, 1400696, -759672, 535797, -975494, -262530, -738734, 613643, -3633542, 3935801,
-6391985, -3081102, 3173444, 10011032, 3366718, 2273648, -7006166, 5792301, 1538672, -9052717,
-3838090, -2557653, -5412733, 2160906, -745714, 2081449, 5254356, -5534066, -5782100, -2599529,
-7880191, 197569, 3914863, 8128763, -12116640, -9802189, 1598265, 5951214, -4374961, 363998,
-8100845, 2065342, -1037235, -2455648, 9692667, 1164473, -2349347, 1335198, -8777303, 978716,
--4836670, 4456566, 792421, 4734665, -2384781, -1210644, 2158758, 125091, 634581, 256087,
-4571456, 3654480, -4994510, 2847563, 4047470, -6887517, 828929, -3113315, 1300301, -1592896,
--5299453, 68719, 4589173, 3961034, 8844948, -5489505, 6851010, -4540854, -899259, 4039954,
--4417374, -6616397, -2374580, 295816, -405874, -353261, -701690, 1291711, 2827162, -3855270,
--38118, 1813013, -341450, 1554778, -3134789, -1821066, -1236414, -2327872, 690416, -515933,
--1800665, 979253, 1039919, -1532230, -2311229, -137439, -529355, 2381023, -108448, -405874,
-449898, 500364, -406411, -732292, 1622424, 521302, -1277216, -665720, -975494, 130997,
-1660542, 148713, -566399, 20186346, 9036611, 12232067, -998043, -3371549, -4415764, -4409858,
-2397129, -3701725, 5620502, -627602, 7715372, 477815, 4079145, 5081483, 3913789, 3367254,
-4439386, -14977625, -4436701, -1397475, -3163780, -2761664, -4722317, -10664941, 477278, 7328288,
--4505958, 4405026, -3618510, -5315559, -4023848, 621160, -3395709, -1246614, -3481608, -227633,
-8822400, 485331, 3966402, 5592048, 7254200, -3392487, 1700270, -1606855, -5596343, 6373732,
--3555159, -242666, -5538361, 4067871, -51540, 110059, -1526861, -2561411, 1879585, 5698348,
--2379412, 3219078, 3034395, 2567854, 9770514, -9807558, -4150549, 258235, -5407901, -6992744,
--2778307, -8562554, 1291175, 10084046, -6938520, -3291556, -7924215, 533113, -2492155, -3771518,
--9290014, 5484137, 7137162, 2844342, 4989142, -2508798, 806917, -1853278, 2072322, 110059,
-4938676, -1254667, 2128693, -77846, -1257352, 1741072, 1185948, 2284923, 1902671, -300111,
-460635, 1261110, 506806, 989453, -76236, -919660, -1775432, 911607, 471373, -1195612,
-885300, 995896, -294742, 448824, 1179505, -331786, -1052804, -370978, -319438, 6200322,
-9011378, -5025112, 4716411, -4115116, -1906966, -1676648, -11041287, 7993471, -2298344, -1253594,
-12850542, 7889855, 8604430, -3552475, 374736, 1454383, -1925756, 2775086, -6482717, -247497,
--4422743, 5151814, -5036923, -3575560, -491237, 814970, -6230387, 1130650, 705448, 8161512,
-98247, -11336566, 6525666, 5999533, 8697309, -1455457, 2216740, -6307160, -4659503, -2047089,
--4523138, 1707786, 1225676, -1782948, -650151, 4626754, 7370701, -10129143, -2137820, -90194,
--4086662, -4377109, 6669548, -5430450, 2537252, -5332739, -6916508, -5261335, -3401614, 2310693,
-1006096, 12332462, -2071785, -3425237, 3734474, -3823595, -1060857, -3405372, 3493419, -3159485,
-4493073, -2326262, -2023467, 2972654, 7492571, 1977833, -6975564, -55298, -3422552, -7203734,
-2046015, 4930086, -1640678, 1063541, 1783485, 147103, -734976, 2487323, 82678, -2983392,
-51540, -1141924, -507880, -1603097, 2392297, -665720, -1909650, -2185602, 319438, 2076080,
--950798, -258235, -2884071, 161061, 551366, 870805, -499827, -2579665, -1256278, 2048699,
--855772, -2778307, 1103270, -15467788, 14878840, 7931194, -8822400, -8968965, 3695819, 11745662,
--137976, 3418794, 13755170, 4562866, 4162897, -2358474, 7183333, 6496675, 7563975, -13623636,
--8313446, -8281771, 6535867, 5572183, 7184407, 300111, -8264054, 3366718, -1231582, 3708168,
--11893301, 4562329, 7246147, -5635534, 3147137, 5797669, 1660005, -220117, 1275605, -1919314,
-10456635, 7044820, 5604396, 162672, 3646964, 8006893, -7169911, -3915400, 373662, 10601590,
-6831683, 4142496, -8004746, 248034, 5469641, 6310918, -2222646, 1923072, 6226092, 7643431,
-2442226, 7063611, 2835752, -844498, -6552510, -91268, -10921565, -4527970, -5234492, 865973,
-3613678, -6382322, -2557653, -11612518, 5036386, -3260954, -77846, 6084358, 8948564, 10755672,
-1345935, -1174674, -6701760, -2054605, 3426847, 3640522, -7113003, 2182380, -3201361, 2556043,
-475668, -2454574, 43487, 1218160, -2258616, 956704, -600222, -2746095, -1389422, -1749125,
-1690607, 2015413, -370441, -1617592, 1108102, -1255741, -872952, -2150168, -301185, -505732,
--2452426, 1886564, 1528472, 1941325, 13162464, 4014721, -2131915, -6011344, -15408732, -7595650,
-9595494, -3405372, -14154065, -3878356, -2160369, 2106682, 7983271, 11971148, -601295, 3476776,
--2652679, 5932961, -6613176, -7221451, -7593502, -13749264, 7417946, 4101157, -11323144, 288837,
--8239895, -3248606, 7483444, 4113505, 6127845, -1754494, -1474248, -2024003, 13109314, 10060961,
-10835129, -4937602, -9061844, 7194607, -1126892, -3308736, 9351754, 1588064, 9202504, -348429,
-5191542, -6450504, -228707, 4514548, -19392852, -3000035, 1043140, -14332306, 3806952, -3696893,
-13424457, 8434779, -8059506, 586263, 12265353, -1319092, 6299107, -4143033, 8461622, -3945464,
-1750736, -3285113, 303869, 5797132, -7823820, 8492224, 4482335, 4852776, 1495722, 11305965,
--4365298, -13059922, 2348273, 8959839, -4170413, -8133058, -5733245, -4181688, 9424769, 144955,
--3900904, 332323, 322659, -1869385, -1690607, 529892, 1892470, -1098438, -1125281, -734976,
-2097018, -1100585, -3409130, 926102, -3784403, 3495567, 2406792, -100932, -300111, 892279,
--1032403, 1517734, 250719, 1034013, 306016, 428423, 4221953, 1384053, -2065879, 1109175,
-583579, 1890859, -512712, 421981, -31396748, -6652368, 16855062, -13612899, -4920959, 14300094,
-5397700, -4552666, 1518808, -11865384, 10577431, -1357747, -19100794, 1349694, -1002338, 7201587,
-7084549, -3816615, -14967424, -6434398, -5718749, 293668, -7986492, -4410395, -10183367, -2952253,
-11080479, -9137543, -4585952, -3532611, -5937256, -6287296, -8505646, 5764383, 1161789, 7175817,
-1243393, -5357972, -8247411, -8160975, -1694365, 5367636, 7959648, -2861522, -7297687, 7595650,
-3152506, -11483669, -12773233, -26038240, -2327872, -8352101, -5054640, 3803731, 3918084, 2327872,
-11641509, -1270774, -5612449, -758599, -6047314, 13258027, 7037841, -2648384, 7074885, -7552700,
-3689914, 3001645, -7368017, -3281892, -6614250, 4628901, 3252364, -12158516, 7922604, 12158516,
--855235, -659278, -12433930, -4894652, 5393942, -3921842, 3541738, 12045236, -4119948, 2586644,
-1161789, 859530, -3904662, 629213, -692564, -5150203, -3120831, -549756, 1726577, 204011,
-1341640, -5373541, 551903, -2922188, 1262720, -3154117, -3037616, -1898376, -263604, 567473,
--2345589, 595927, 1207960, -419296, 450435, 2143726, 1176284, -4304631, -2854543, -1422708,
-352187, 1453846, -765578, 1473711, 228170, 1232119, -1049046, 213138, 5405217, 21036750,
--9923522, 8122857, -5292474, 157840, 11756936, -3237869, -5503464, -2606508, -1294933, 2312840,
-7938710, 27663884, -1690070, 1870995, 7439420, 1993939, -47782, -12623983, -13536663, 2276870,
-1655173, -8175470, -4456566, -1714229, 7437810, -3149285, 1308354, 49929, 3154654, -3211025,
-15862388, 9128416, -7652558, 9044664, 7821136, -9467719, 1533840, 4360466, 3049964, -2464774,
--3445101, 13583908, -11846057, 5181878, 14609868, -4911832, 1683627, 9700721, -1186485, 8467528,
-4377109, 362388, 4373888, 7299834, 9568650, 6347425, 643708, -121333, -6843494, -7177427,
-135291, 1059246, -23440858, 15452755, -3717831, -6968048, -8237748, -16844324, -19439022, -12293807,
-2203855, 9794136, -3636764, 1422171, -1695975, 9735080, -3680250, -7442105, 4233227, 2524367,
--3337727, 1411971, 6340983, -6016713, 1116692, -7716446, -2799782, -3328600, 1778117, -682900,
-3963181, 2787434, 737661, -905701, 1955821, 3041911, -192737, -5521718, 3107946, -39192,
-4800163, 4946192, 2222109, -2121177, 4145180, 1172526, -791885, 90731, 134218, -3614215,
-4164508, -156229, -2947958, 4356708, 8116415, -1393717, -1866700, 4461398, -1774895, -2709588,
--1207423, 3881577, 28335510, 28196460, -676457, -23565412, 4705674, 4680978, -2565706, 6024229,
-3650185, 1933809, -141734, -4079145, 23013508, 4122095, -3552475, -25600690, -14202383, 5917928,
--1454920, -8966281, -15158550, 2039036, 2721936, 3831648, -3681324, -16854526, -17751636, 19291382,
-18477486, 5635534, 16980154, -14491757, 2091112, 7460895, -2903398, -9218074, -16290811, -8206609,
-3036005, -778463, -7574175, 7848516, 282394, 7616051, 6374269, 350577, -17524540, -10341744,
--8171712, -1502165, 1949915, 2258616, -2870112, -5073430, 1349157, 2775623, -15657303, -4053376,
-2715493, 3475166, -7036767, -19828790, -4478577, -5041755, 14719390, -643708, 6697465, -6681359,
--4878009, -8919573, -9747965, -5865315, 1728188, -818191, 12378096, -7355132, 2257542, 14072460,
--854162, 6990060, 6466074, 13668197, 3186329, -4073240, -6908992, -6270653, -2291902, 8230768,
-1417339, 8297340, 4587025, -738734, -93952, 328028, 809601, -3819300, -4555350, -69793,
--1031866, -534187, 1488743, -992674, 1193464, -5527623, -1139777, 3257733, -70867, 2028298,
--9192304, -1131724, -252329, -1907502, 2027225, 1363652, 1315871, 1533303, 2246805, 2283312,
-2588792, -907849, -4195646, 5014375, -3198140, 12199855, -6236830, 2063195, -4680978, 866510,
-3302293, -7814693, -5155572, -13885092, -15183783, -10108742, -3852049, -788663, 452582, -8533563,
--7752416, -15912854, 7679939, -15949361, -20336670, 13084618, -12164958, -15666967, 14569603, 2656974,
--3205119, 15456514, 9045738, -12188580, 11242077, -30922690, -2018098, -8024610, -3223910, -14595373,
-25427818, 11769284, -7362648, 3614752, 8058970, -5420249, 8890045, 19864, 456340, -7362111,
-8634495, 9757629, 13412109, -21026550, -662499, -264677, 6255083, -9601936, -3553549, -9773198,
--9419937, 16492674, 5436355, -12577812, 6478958, -7832410, -8106751, -13501230, -24237038, 6211597,
-16116865, 952409, 16233903, 21822728, -1247151, -9138617, -20761336, 1479079, -2609193, 1184874,
--5138929, 4153234, -9092983, 19512036, 10944114, 17046726, 3542811, -2276333, -5177046, 6863895,
-8173860, 3499862, -1428077, -2624225, 824097, 9088688, -1578937, 3711926, -5783174, 2348810,
--9592273, 766115, 1242856, -4421132, 9145059, 5082020, -2287607, -6164352, -5182415, -1912871,
--434865, 2732136, -6076305, 1390496, 1145146, -645319, -4184372, 1402307, -9133785, -2063732,
--2130841, -2771328, 1633698, -379568, -17723182, 2486786, -39373576, -26235808, -19029926, 10357851,
-19335942, -27634894, 6311992, 19812684, 12028056, -151398, 7075959, 18687940, -8653822, -979789,
--5534602, 677531, -12188043, 8703751, 48855, 1144072, 3038689, 25006910, -1389422, -10844792,
--10819559, 6060199, 18184892, -7266548, -18679350, 5636608, 18455474, 10980621, -2638184, 9155797,
-5965710, 8826158, 1801739, 7496866, 12476343, -1442572, -21388938, 1197222, 6424198, -19789598,
--14675903, 19619410, 15158550, -14914274, -9990631, 4892505, -1140851, 9691594, 23567022, -4961761,
--4719632, 4639639, -1358283, 8907225, 4250944, -8505109, -6919729, -3126199, 6808060, 6440841,
--6440841, -17040282, -3164317, -25710212, 24321326, 4259534, -4622459, 2463701, 9999221, -388695,
--11494943, 4356171, -5074504, -7231115, 5621039, -1408212, -11376295, -18350248, -6174016, -7400229,
-15133317, -2296734, 4903242, 3044595, 1732482, -1297080, -1461900, 2522757, -4234301, 807454,
-5395016, -525060, -3026878, -1513439, -12738873, -3748970, -471373, -2222646, -9309342, -8095477,
--3590593, -1739462, -956704, -2550137, -615791, 302795, 6783901, 2594697, -1264868, -2656974,
-960999, -2331630, -2217814, 4638028, -2383170, -5206574, -1694365, -3883724, 364535, -4811437,
-23622, 3444564, 921271, -4720169, -1640141, -15107547, -701153, 2681133, -18628346, -4822712,
-13935021, 18241262, 12828530, 33986612, 20427402, 30806726, 11444477, 8173860, -15906411, 17327508,
--5830418, -1861868, -12736726, -8383240, 16649978, -5371394, 37788196, 17678622, 10897943, -1929514,
-8733279, -5852967, -17651778, -8826158, -10955388, 8068633, -10327786, -129923, -11048803, 6577206,
-15385110, 13993540, -905701, 20190642, 16782584, 902480, -5826660, -7548942, -13740674, -4606890,
-31669478, 12401181, 36456756, -11614665, 209380, -1104344, 8523363, 29377576, 10050760, 839666,
-18832894, 21684216, 22789634, -1917703, -13407277, -4796405, -3671660, -3731790, 15129022, 10448045,
-14362908, 22004728, -13575855, 33206540, -22143778, -41496900, -6385543, -12832825, 8551280, 20269024,
-9903658, -11081016, -1082869, -12044699, -9063455, -5873368, 227096, 16809966, 2881923, -4529580,
-2682744, 1427540, 5068062, 5491116, 3704946, 6700149, 1857573, 4286914, 1587527, 4738423,
-385473, -13220983, -5085778, 59593, -12422119, 1584843, -12970801, -6666863, -7829189, -7126962,
--6083821, -4322348, -1633161, 981400, 3877819, 14001593, 1995012, -8483097, 4121558, 1054951,
-12586402, -2112587, 5510443, 147640, 297963, -6426882, 1716913, 19982872, 31828392, -15721191,
--12902619, 11791296, -9932112, -1508607, -4858682, 4558034, 13676786, 15358803, 21943524, -24266566,
-27139362, -9729175, 1983201, -12513387, 10930692, 21055004, 7953206, 4052302, 845035, 25595320,
-5626944, -660351, -9030169, -3700114, -26756572, -3353833, -13357348, -31251256, 2003602, -1722282,
-12142409, -32559074, -7115150, 7839389, 11390253, 27404576, -8217883, 8091719, 14138495, 2398202,
--4537633, 7854959, -7992934, -1713155, -41634876, 3736085, -18165028, -20330764, -23561654, 9363029,
--37369972, 12216498, -14449881, -18254148, -25650082, 22672058, 23783382, 24173150, 4414153, 4530117,
-22290880, -31423054, -3368865, -9609989, 12516072, -37360308, -13175349, -3762391, 11743514, 9636833,
-7443179, 15243913, -14278082, 5648419, -17180406, -4881231, -10402948, -3861713, -3706020, 573378,
--16291885, 7432441, 9817758, -1625645, 454193, -7749732, -2711735, 7823820, -10595684, -97174,
-4836133, -12696460, 5629092, -11365557, -88047, 7305203, 1486059, -9296994, -6402186, 3755949,
--5452998, 5956583, 3884798, 6854231, -1072668, -8128226, 15528991, -7351374, -3966939, -10051834,
-6829535, -3342558, 816581, -9316321, 1085553, -11344619, -1989107, 8534637, -2820720, -4742718,
--12187507, 1519345, 1455457, -1466731, -15936476, -29631516, -566399, -10595147, 35036732, 7285339,
-24768002, -8164733, 33820720, -21329344, -39936752, 8947491, 6708202, 4489852, -19885162, -22652194,
--17756468, 6554657, -17887466, 7763691, -9522479, 26505316, -8741869, -4092030, 19090056, 514322,
--47813724, -19918448, -728534, 31368830, -3701725, -9953587, -27460410, 4661650, -6849936, -23642722,
--27991376, -3327526, 5005785, -9696962, -10729365, -28007482, 18166102, -7021198, 6452652, -13993540,
-492311, 8182987, 4929549, 24539296, 119185, -8579734, -32165546, -11397233, 15342160, -22030498,
--11322608, 8018167, 17475686, 13650480, 34979824, 26708792, 348966, 20243792, 20699058, 7003481,
-658741, 12104292, -10582263, 52926344, -24559696, -58015880, 15224585, -49399104, -2086817, -38689604,
--450435, 47105052, 5727339, -22594750, 7291244, 7923678, -14892799, -12177843, -16829830, 3508452,
--5234492, 15027017, -12158516, 10011569, -20225000, 5496485, -895501, -3374771, -4776541, 13610751,
-25993142, 8109972, 10418517, 18034030, 5283347, -18200460, 5028333, -6805913, 11860552, -3859565,
--5898601, -783295, -1492501, -4955319, -15187004, -9877351, -6884296, -907312, 1846836, -1165547,
--9745281, -21423296, -13638669, 3136400, -4061429, -448287, -8468602, 2806761, 15115064, 5932961,
-21872120, -33318746, -22703198, -13570486, -12137041, 13856101, 20679730, -12028593, 1075352, 19071266,
--38273528, 3131031, 8569533, -28302224, 14503568, -9206799, 12757127, 5248450, 14418205, 1923609,
--18878528, 19538880, -24505472, -4941897, 46498928, -18888192, 16828218, -10822781, 18953154, 17899814,
--6470905, -20214264, 21494164, 57082800, -31427886, 8403640, -41603736, 21203180, 12233677, -22041772,
-24448028, 2646774, -49890340, 7435662, 2109366, 22945326, -6397354, -3196530, -26367878, -25032680,
--13334800, 62192200, -9773198, 31712964, -27917288, 20956220, 9798431, -5417028, -21536576, -3673808,
-17139604, 35065188, -12927315, -11431055, -4002910, 7071664, 29976724, -7450695, -7477001, -22258668,
-6597070, -33634424, -15385110, 24383604, 28949154, 3506841, -2731062, -15676094, -26328686, -75346072,
-46840912, 18115636, 26777510, 2854543, -24873766, 27224188, -15516643, 11619497, 15809238, 15855409,
-36103496, -516470, 8218957, 10228465, -4353486, -15769509, -5558762, 26753888, 16138340, -14745160,
--3520263, -9978820, -2859911, 12578885, 3427384, -17285096, -11519102, 16848082, 3651259, -5114769,
-8421357, -14593225, -9222905, -2905009, 7068443, 11944304, 7431367, 2420751, 9090298, -7330436,
--10072772, 1932198, -1159104, -13086228, 1424319, -13501230, -685584, -8189966, -2150168, 2305861,
--7177427, -12912282, 4239133, -31490700, 21914534, 22075058, -43397424, 4384088, -22937272, 3014530,
--47735340, 47912508, 41202160, -4039417, -21922050, -7297687, -8946417, 23368918, -23998130, 30079804,
--39932996, -22775674, 11060615, 14282914, 2975339, 13801341, 37550900, 11118060, 17198122, 4872641,
-17886392, 13120051, -8713415, 4009889, 15123654, -830002, -1510755, 30421790, 13346611, 39854612,
--3819837, 22821846, -128312, -28724742, 29442538, -15071040, -3504693, 9378598, -27645094, -18328772,
-10496900, 43349640, 23381266, 15810311, -55707872, -12692702, -39105140, -143881, 62143880, 41208064,
-46982112, 3918621, -45871324, 14442364, 46248208, 9957882, -11747272, 41509248, 4330401, 27821188,
--71246528, -58780924, 42280732, -2847563, -19261854, -44978508, -9963787, -16752520, 19219978, 18137110,
-21059836, 21960704, -9077950, 7001334, 39189428, 36526548, 37853156, 3377455, 54439248, 27445914,
--9752797, -21362094, 256087, -10403485, 3167539, 27975806, -4442070, 1460826, 20124606, 22513144,
-2080912, 362925, 8564165, 24921010, 8625905, 11828877, 16726750, 6256157, 13004087, -351114,
--7415798, -2930242, -2863670, 1322850, 17300666, -6340983, 3014530, -13906030, 20949240, 10486700,
-9130027, 61740, 10547366, 324270, 35930084, 9573482, 36888400, -9663676, 32260036, 15156403,
-4719096, 14405857, 13845901, 16122770, -4279398, -2550137, 22033720, 7139847, 18525268, -41124848,
-24249922, 32445256, 2443837, 11089069, -29350196, 22928682, -13357348, 10997801, 1052804, 112206,
-19386946, -5982890, 12626667, -4043175, -23532662, 6302328, -1617592, 26338886, 23008140, 32748588,
-10931229, -25036438, -20655034, 21264920, 23898272, 11063299, 2137820, 7566122, -6476811, -20521890,
-3544422, -7591892, 29123100, 20326470, 17796734, 23057532, 23702314, -32618666, 36005248, 35342212,
-25969520, -17528836, -15527381, -22675280, 31397822, 18321794, 51510080, -31284542, -30878668, -23931020,
--45346264, -11834782, 49250928, 7839389, 38713760, -41129680, -43861280, 9617506, 28093382, -38461968,
-6190659, -30630634, 12384001, -35358856, -2617246, 16824998, 17969606, -32151052, 12888660, -24455544,
--48531520, -1603097, 57926224, 29894582, 23602456, -16118475, -41059352, 62746788, 50983408, 14263050,
--56140592, -2200634, -12989592, 40186936, 20795694, 24910810, -29034516, 22036940, -12863964, 14433774,
--19996830, 7186017, -22392886, 32828582, -6168110, 5391258, -38852812, 11338177, 5248987, -1832340,
--8432095, 7943542, 4479651, 4075924, -23880556, 10182294, 25111600, 1530619, 15272367, 12559021,
-10781979, 1605244, 5319317, 471373, 1784022, 1038308, -7266548, -937377, 8268349, -194884,
-16056198, 13109314, -6513318, -1448478, 7728257, 3000572, 12580496, -22695144, 15319075, 1519882,
--92879, -79750024, -15636902, -2177012, 1543504, 27562952, -73362872, -8558259, 34040836, -54659364,
-12866111, -12533251, 64100240, 33501818, -38308960, 9473087, 43291660, 4255239, -16501264, 13994614,
-10777684, 5531381, -310311, -4344897, 3787624, 6914898, 15143518, 43945032, 35716412, 38424388,
-26741540, 48410188, 24024436, 49504328, 20820928, 43912284, 1017370, 27255862, 24948928, 27014270,
-21085606, -2024003, 8473434, -33770256, -19749334, 64188824, 1191317, -25689274, -6806450, 20138028,
-34220152, 69094216, -8957154, -38048580, -18766860, -28047210, 39756900, 45035952, 50838456, 15668578,
--1447404, 34148748, -57629336, 52824340, 20401632, -27834072, -129923, -90240488, 2531346, -59635620,
--82346872, -20569672, -48237852, -21075404, 94121520, 85565416, 80816792, -63240708, -6090801, -7168301,
-63634772, 99160056, -21683680, -27908698, 55310588, 56473988, 48929340, -5698885, -7415261, -27361626,
--34130496, 5109938, -12289512, 15294379, 24261734, 20833276, 14802605, 1506460, 9739912, 26627186,
-4964982, 248034, -7089918, 1605244, 2236067, 7321309, 5886790, 5523328, 27881318, -2291902,
--15923054, 16924318, 20379082, 4780836, 32296006, 7654706, 15844671, 34979288, 47050828, 34227668,
-25371982, 10218264, 5117454, 13727252, 32372780, 14201846, 33170570, 24432996, 16136729, 22995254,
-8818105, 31176630, 27511414, 22228066, 34080564, 19495930, 6674916, 9526774, -22592064, 57437136,
-68490768, -56627532, -53075596, 18249852, 59802052, 2095407, -28900298, 795643, 15794742, 18722836,
--50549616, 19173808, -7266548, 26969710, -28028956, -12595528, -32743220, 34541200, -5234492, -14388140,
--30662308, 22635014, 12383464, -4582730, -26017838, 12505334, 10625749, 6627672, -23072564, -2603824,
--1759863, 26592290, -20202990, -4121558, -29255706, -6876243, 9245991, 23440858, -30429306, -10701985,
-31060130, 27838904, -9010841, -18521510, -804770, -9106404, 25811680, -14449881, -9059160, 13534516,
-8914741, 16911434, -15268609, 5327907, -20777978, 23900956, 26659936, 13748190, 3526705, -20674362,
-23585812, -16462073, 36915244, -26767846, 29508036, -46688980, 31302796, 4876936, -3532611, -32564442,
--10738492, 11734924, -9315784, 4132832, -9051107, 10355703, -4980552, 11502996, -11217381, -13360033,
--9934259, 11021960, -96100, -252866, -3362423, -6890738, 4056597, 12807592, -6988449, -425739,
--188442, 2705830, -1565516, 3224447, -3045669, 9681930, -724239, 12236899, -11044508, 3077881,
--5670968, 12411382, -13108240, 12282533, -13518410, 8698383, 2527052, 15285789, -4452271, 14583561,
--13324599, -8260296, -3228742, 22899156, -11700565, 18038862, -7256884, 3830037, 983011, 13263396,
--6516539, 7536057, 780073, 1729798, -2309619, 5686000, -2847027, -5694053, 13309030, -7097434,
-749472, -5251135, 3009162, -4782446, 5880884, -8202314, 10023380, -7387344, 8101382, -10732050,
-9461813, -14097156, 13513578, -7526930, 8747238, -9209484, 9279277, -9168681, 9538049, -8071854,
-8538932, -11131481, 9348533, -9041980, 9575630, -10489921, 11053635, -10041097, -1828582, -12332999,
-55098524, 58624692, -34492344, -20437066, 11632382, 55987584, 34792456, 20863878, 20076288, -8913668,
--23419382, -7088307, 13166759, -199716, -5508296, 16707423, 302258, 11777874, 1455994, -6255620,
--20979304, -5564667, -1214402, 1558536, -816581, -17047262, 19055696, 3187940, -7649337, -418759,
--572841, 281320, 12308303, 22591528, 9645960, 2297808, -8112657, -11670500, -3013993, 7352447,
-15152645, 20397336, -11356430, -11215233, 2561411, 20621212, 9311489, 4614406, -9288941, -18676666,
-15967078, -3267396, 468151, 1105954, 5157182, 4949950, -2247879, -657667, -12171400, 1897302,
-10770704, -5080947, 6443525, -3576634, -8667244, 5545877, -1629403, 3013993, -643171, 9378061,
-6361921, -13908715, 4132832, 697395, -25266218, -33571076, 984084, 2000918, 7677791, 20496120,
-2263448, -8974334, -8798777, 8096550, 8822400, 13393856, 9126269, 610422, 3905736, -1391033,
--10123775, -4174171, 1567126, -13880261, -13303124, 8626979, 9133785, -169114, 10270341, -14482093,
--2617246, -631360, 744103, -4438849, 2323577, 7903277, 10914586, 5368172, 9194451, -5747740,
--11377905, 6742562, 1085553, -2739116, 7810398, 4391067, -5354751, -19363324, -72814728, 30981746,
-112008992, 103488848, 88138632, 35310000, -83840448, -52303576, -75383656, -84247928, -75528072, -21863532,
-16202764, 63683628, 66120484, 79417168, 52431888, 53088480, 1212791, -55625732, -53327388, -65519728,
--51432232, -28475096, -2025614, -18309982, 19849728, 24687472, 39764956, 43875240, 44372380, 26589068,
-2144799, 11865384, -9889699, 6399502, -30531848, -22035330, -28242632, -45919104, -36596344, -27888834,
--19845970, -32626720, 4450660, 55927452, 63005560, 35310000, 65884260, 16436840, 38409356, 19883552,
-11217918, -16508244, -35313220, -48192756, -67894840, -51918100, -77440408, -31957242, -34529928, 22273164,
-22141630, 64768644, 74465608, 66464620, 59034864, 57873072, 36075576, 4503810, -20329690, -61770756,
--38885024, -80710488, -68968048, -95735360, -15601469, -8522826, 23514410, 30368104, 54506356, 64295660,
-53657564, 48058000, 35497904, 21053930, 2867428, -17790828, -25806310, -34571804, -53561464, -37509024,
--46648176, -32327146, -16708497, -4747013, 10441602, 10313827, 50965692, 47128676, 46549928, 36436356,
-26584774, 3225521, 16485158, -18457622, -30777736, -23852100, -66495220, -77350752, -15051713, -5177046,
--3471407, 37786048, 30787400, 41234372, 28753732, 37683508, 11363410, 9766756, -3040300, -15916612,
--20639466, -26479010, -29490320, -18043158, -3933653, -22881976, -12215961, 18338974, 25977036, 17541720,
-22480932, 15463493, 11075110, 2938831, -2190433, -7938710, -11372537, -8688719, -14183593, -7342784,
--2923799, -5259725, -7289097, 1619203, 5247913, 1210644, 8076149, 10526428, 7740068, 5596343,
-4801237, 2540473, -843424, -4862977, -4938139, -6886980, -5145371, -5315559, -3452080, -2793876,
-455803, 1325534, 2407329, 2004676, 3343632, 3434363, 2711735, 2054605, 2003602, 1465121,
-1769527, 362388, -2085207, -3311957, -1641751, -2939905, -3384971, -2922725, -1828582, -803159,
-1318018, 2040110, 2360622, 1582696, 3055869, 1952063, 1197759, 665720, 360240, -1198833,
--1299765, -1545651, -597537, -1179505, -1069984, -1098975, -169651, -463856, 324807, 254477,
-1044214, 762357, 1269163, 671089, 807454, -110059, -280247, -572304, 315143, -583042,
--417149, -1090922, -371515, -380641, 491237, 285078, 807991, 301185, 447750, -395137,
-53687, -317828, -108448, -675384, 62277, -245887, 280247, -6979, 428960, -128312,
-376883, -137439, 236223, -261993, 207769, -248034, 214748, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
--5177583,
--5267778, -4377109, 1221381, -2516851, -390842, -728534, 2542084, 10096394, -2692408, 1004486,
--9618579, -5273683, 2947421, -4591320, -3559991, -1364189, -4056597, -1090922, 8399882, -3616363,
--5360656, 9051107, 7267085, -2574296, -1671816, 8283918, 2371359, 3204046, 1612760, 392453,
--2112587, -3510599, 3299609, -2618856, 2468533, 878858, 957778, -1175210, -2841121, -2251100,
-2036888, -2589329, -4057134, -1848447, -1807644, -5195300, 5874442, 9046812, -5201206, 2943126,
-261993, -2048163, 1447941, -238908, 86436, -3048890, 5616207, -3339337, -4095251, 4649302,
-1435593, -258772, -512175, 2547989, 174483, -88047, -1596654, -822486, 4937065, -7208029,
-2460480, 1307818, -1737851, -1735167, -2499671, -3676492, 40265, 3516505, 3621194, 1035624,
--56908, 801548, -1993402, 2612414, -984621, 1530619, -1107028, -737124, -528818, -672162,
--511101, 1196148, -45097, 483721, 746251, 428423, 1272921, 1574106, -513785, -384400,
--700617, -510027, -1000191, -317291, -663036, -572841, -1017370, -424128, -103079, 618475,
--387084, -15932181, -2506114, -5825587, -1422171, 1280974, -4331475, -9711995, 7125888, -2388002,
-1667521, 4758824, -1502165, -488553, -581431, 2190970, -1671816, 8011725, -319438, 6180458,
-9076340, -10878078, 2293513, 7558606, 534187, 1507534, 5245766, 9670119, 1396938, -2172180,
-4881231, -1291175, -2505577, 2183991, 1735704, 2160906, -2707440, 9856950, -4531728, 2491618,
-3691525, -38655, -465467, -4800700, 798864, -5563057, 4695473, -5682242, -4352413, 3160022,
--5287642, 3647501, -3686693, 1538135, -2972654, 2032593, 4305168, 8406325, 2594160, 962073,
-4103305, 74625, -7239168, 976031, 2055679, 2775086, -1808718, 394600, -983011, 1394254,
-4063576, 2456721, 5545340, 1924145, 751082, -3352759, -1706176, 3275986, 2553895, -3208341,
-3882114, 1909113, 4243965, -1302449, -1002875, -1305670, 207769, -799401, -3382287, -603980,
-570694, 587874, 2202781, 266288, -641561, -812823, 936840, 491774, -1649268, -223338,
--114890, 40265, 677531, 209380, -760746, -79457, -719944, -5772973, 4298189, 2821794,
-869731, 5475547, -290447, 3076807, 7434052, 4623533, 9749039, 1902671, -1435056, -9962177,
-1577327, -6100464, -2039036, 789737, 2258079, -3811784, 7516, 9620727, -4901095, -234613,
--4893579, 2355790, 58519, 1887638, 3930432, 4646618, -2898029, 3492882, 3593814, 6969658,
-277562, -6786049, 674310, 7387344, -710817, -432181, -1003949, 4977867, -5749351, 514859,
-3794067, 4982699, 5946382, -2202245, -3872450, -465467, 8541616, 830002, 3093987, -6902550,
--3089155, 1719598, 1445257, -1150514, 4532801, -274341, -924492, 2574833, -4349728, 316754,
--671626, 3020973, 4590783, -6700686, -1499481, 2225330, 4525822, -2843805, -2757369, 1915019,
-5361193, -427349, 3606699, 2597918, 3697967, 1596654, 4124242, 6247030, 253403, 1786706,
--1700270, 2574833, 1815697, -1130113, -2780455, -473520, -1966558, 703838, -1796907, 840740,
--811749, 491774, -1454920, 93952, -130460, 364535, -868120, 1439351, -1302449, -513785,
--573915, -646929, 185757, 837519, 821949, 505732, -380105, -230854, -598074, 1927367,
-357556, 17353816, 8363375, 6865505, -6477885, -1096827, -9024263, -6380174, 9610526, 914828,
--6108517, -2785286, 2039573, -5708549, -542240, 9847823, 3900904, -360777, 3127810, 14421963,
--9589588, 2341831, -1810866, -4603131, 8250632, 4247723, 4274566, -3170760, 3689914, 4794794,
--1472100, 3094524, -980326, -4050154, 844498, 1589138, -720481, 4918275, 1195075, -1708323,
-5381057, -2410014, -2542621, -3069291, 1509144, 2117419, 389768, 3920232, 517544, 12221329,
-799401, 45634, -2826625, -2486786, 2920578, -9003325, 377957, 5486821, 4320200, -4835060,
-7174743, 176631, 3212636, 5784784, -1619203, 4491462, 3448859, -1519345, -5159330, -3888019,
-3248606, 8200167, 2332167, -3483755, -1731946, -1949378, 5614596, -4690641, -258772, 4682588,
-5374615, 800475, 687732, -1423245, -2231236, 156766, -508954, -1823751, -375810, -797253,
--920734, -1386738, -714575, 1967095, 1308891, -317828, 2484102, 793495, 1012539, -254477,
-857920, -368830, -198642, -33286, 303332, 373125, 709743, 1410897, 360777, 224412,
--390305, 4216584, 1078037, 11373610, 2795487, 6800544, -326954, 1548873, 1879048, 1935957,
--1890859, 6959458, -2922188, 7526930, -3679713, -2832531, 1952063, -4875862, -1416266, -1490891,
-2105071, 3172370, -1976222, -7161321, 3295314, -8671002, -3517578, -1414118, -187905, -1297617,
-1727651, 7907035, 4446902, 608275, -8120710, -7747584, 297427, 5362804, -2759517, 909996,
--966905, -3386582, -5197448, 628676, 3582003, 7643431, 6855842, -782221, 2232846, -9378061,
-3281892, 6389838, 7196755, -783832, 6568616, 1496796, 9541807, 5716602, 1867774, 4399121,
--377957, -2374043, -1632088, -854162, 6014028, -2174327, -3312494, -4041027, 6006512, -1324461,
--10386305, 2194192, 4012573, 5971079, 7630547, 13066901, -5374078, -4320737, 7716446, 8220031,
-6436546, 2862059, -1290101, -1347009, -4999342, -5534602, -1530619, -1913945, 1745367, -97174,
--1600412, -95026, -3085934, 812823, -373125, 1613834, 246424, -2254321, -150861, 398358,
--353798, -73014, 1180042, 2268280, 2182917, 1897839, 513785, 590558, -3155727, 302258,
-2281702, -1296006, 1275068, 430570, -855772, -602906, -357019, 2370822, 1700270, 503585,
--158377, 1378148, 146566, 985158, 523986, -573915, 744103, -276489, -292595, -14833206,
-7100118, 10510859, 1185411, 8783745, 1007707, -7482907, -899259, -3382824, -2066416, 8125005,
--10481331, -2669859, 3434363, 4254702, 9157944, -1634235, 3866008, -14416058, -7607461, 3948149,
-8482560, -5488432, -4253092, -5898064, -7525320, 4056060, -1075352, 280784, 2575907, 1542967,
-2695092, 11552388, -7037841, 11216844, -779537, 2459406, 2272575, 2601140, -3491809, 4037806,
--7960185, -1273995, -4413616, -613643, -5956583, 7223598, 1069984, 19636590, 452582, -1036161,
--5086852, 1068910, -4287451, 10362682, -6436009, 1555315, -11533598, 8733816, 7676181, -9200894,
-5582384, 6050535, 2266132, -4889821, -5353677, 8763344, 2046552, -12167642, 5770289, -5666673,
--3351148, 3009698, -3250753, 1318018, 2344515, 3546032, -6602439, -15471009, 2126546, 3730179,
--637803, -3159485, 6034966, -2458869, -2160369, -2692408, 3964255, -4863514, -2155537, -2673080,
--2284386, 1487669, -2084133, 2902861, 242666, -4300336, 3161633, 646929, -2458332, 73014,
-2836826, 1183264, 1074, -188979, -960462, -2179159, 60130, 875100, 163746, -28454,
-1229971, -2492692, 158377, 725850, -3147674, -2078764, -2679523, 6600291, 1284195, -133144,
--5574331, -9376987, 3321620, -5033702, -2024003, 9067750, -12355010, -5153961, -9103720, -933619,
-7809325, -732292, -6441377, -8948564, -10038949, 3903052, 10617696, -3053722, 6632503, 9976135,
--2768643, -2317672, 3907347, 5540508, 11851425, -1734093, 6659347, 950262, 14090177, 10349261,
-2829310, -3338263, 1415192, -7834557, 13677323, 3160022, -6048388, -6723772, 7881265, 6643241,
-4786204, 3393024, 2330020, 7060390, -3077881, 3099356, -4704063, 648540, 366146, -7146289,
--9526237, -3404299, -6735046, 4284767, -4119948, -3079492, -10392210, -6560563, 1966021, -3580929,
--1266479, 4946729, 10365904, 13063680, 6788196, 5382668, -4856535, -10712722, 158914, -7511898,
--17278116, 105227, -1242319, 6388227, 4310000, -4270808, -9642738, -5274757, 4616016, -281320,
--1104880, -4032438, 2092186, 2138894, 1700807, -1080184, -5509906, 1096827, 681826, 475131,
--1276679, -734439, -780610, 620623, -2720862, -2821794, -332860, 269509, -2272038, 127775,
--490700, 1990717, 2706366, -3045669, -155156, 2084133, -413391, -1324461, 453656, 235149,
-2934000, -1006096, 1867774, 1426466, -1336272, -1206349, -20002736, -6047851, 983011, 9792525,
--7092602, 4828080, 2989834, -318364, 14486388, -1875827, 13624710, -8016020, 3914326, 4424890,
-47782, -12484396, -5317170, -4618701, -14388140, 4935991, -3677029, 3093450, -1021665, 5237176,
--151398, -5516349, 2842195, -9117679, 6638409, 4023848, 15497853, -606664, 333397, 14337138,
--12760348, 11141145, 13448079, -8448738, 8608188, -3605088, -4252555, -7086159, 1653026, 1686848,
-9516037, 6255083, -2643016, -3987340, -8369818, 4534949, 4970888, -9397925, -4395899, 8843338,
--15620796, 1463510, -12104292, 6760816, 496606, -220117, 3447248, -4046933, 1206349, 14251775,
--6042482, 3118146, 6763500, 4374424, 589484, -7514046, 3145527, 2780455, -4548371, -12179990,
--47782, -2786360, -9831180, 7309498, -2813204, 2689187, -573378, 1382980, 2882997, 2982855,
--5583458, 1357210, -732829, 1228361, -628676, 3633542, 1620276, -907312, -870805, -5266167,
--412317, -3604015, 422517, 585189, 3601867, -5572720, 1855426, 2990371, -2322504, -3468186,
-1021129, -517544, -2261300, 1653026, -664109, -2177549, 542777, -750546, -2725157, -719407,
--1848447, -3367791, 1344862, -1047435, 71404, -1858647, -627602, -1901597, 646929, 3554086,
--723165, -2209224, -8232916, 23741506, -8893267, 4671851, 3296924, 8520141, 2551211, 5199595,
-11705933, -9050570, -5711770, -674310, 16324097, -6263673, -7095823, -8075613, 3955665, 2818036,
-8885214, -18680960, 71404, 469762, -1380295, 9711995, -2445984, 7505456, 13681618, -9950902,
--4605816, 4000225, -7630010, -9388799, 6252399, -8717173, 12856985, -2144263, -13460964, -1695975,
--7777112, 4310000, 10464688, -135828, 5237176, -586800, 1942936, 12669617, 273267, 9207873,
-3496104, -6778532, 7016903, 6169184, 726386, 5192616, 17965312, -2933463, -8251706, 4363150,
--10413148, 871342, 17153026, 5930813, 2604361, -3227668, -5070209, -3265786, -6235219, 10477573,
--6965900, -1760937, -4389994, 11879880, -21849572, 7493108, 7531225, 13135621, 2975876, 1056025,
-11392938, -3198677, -5109401, -6463389, 36507, -5367099, -670552, -4610111, 3652333, 406948,
--4288525, -4328254, -3801046, 1454383, 4377646, 3668976, 650151, 318364, -2048699, -4694400,
--1712618, -1174137, 1829119, 2051921, -923418, -1121523, 803159, -2799245, -136902, -2716030,
--1522566, -3591667, -5032091, -1321776, 1548873, 5493800, 749472, -1473711, -1584843, 2177549,
--654446, 5265093, 2234994, 945967, 604517, 2026151, 34920768, 10443750, -6388227, -8471286,
--7170985, 25326348, -21838834, 1746978, 8518531, 1272921, -11854647, -2668249, 5907728, -1262184,
-1347546, 10503879, -10900090, -9127342, 4445291, 13686450, 8399345, 3532074, -6670621, -6486475,
--6280316, -7276749, 6737193, 2683818, 9670119, 7781944, 4394289, -10323491, -4949413, -10998874,
--2228014, -7223062, -16641925, -3110630, 7363185, 1627256, -7749732, -7782481, 141197, 3988951,
-10330470, 1292785, 5209259, 1475321, 20010790, -17446694, 11333345, 2102923, -17834852, -3245922,
--5421860, -4434554, 2663954, -7820062, 4627291, 3372623, 7888245, -9746355, 3365644, 15490336,
-7204271, 24637006, -5596880, -665720, -6144488, -3158949, 593242, -548682, -23488640, 10375567,
--1066226, -1431835, 6267431, 6221260, -6722698, -10036802, -10997801, -4123169, 7655243, 3229816,
--2637647, -6516539, 5591511, -10206453, 5209796, -1739462, -4684736, -5807870, -6316823, -2327336,
--2174327, 897648, -2699924, -1844689, 1179505, -1953136, -1848447, 980863, -5191542, -2413772,
--467078, -1829656, -3023657, -1401233, -5276368, 623307, 3742527, 5097053, 5986648, -4549981,
--5558225, -3970161, -5039608, 65498, -139586, -3136400, -3560528, 1191317, -589484, 3264712,
--1190243, -382789, 2495376, 2498597, -2259690, -11547556, 2700998, 6511708, -383863, -7034620,
--5125507, -15379741, -18593450, 3986804, -8313446, -3738769, 2586644, 4832, -2058900, -8075076,
--4213363, 84289, 6358699, 7074348, -10260677, -5649493, 6266358, -8915815, -4578972, -14708116,
-14291504, -1701344, 12866111, 1311039, 4758824, 13967234, 10314901, -5943161, 3036005, 7193534,
--7467875, -2814277, 6729677, -2348273, -16627966, -2884608, -11677479, 17182016, -1889786, -4318590,
--9805410, -13979582, 4991289, 3201361, 3257196, 7192460, 79457, -2383707, 7236483, 2071785,
--1477469, 2779381, -4167192, 11435887, -2726767, 7293928, 20891258, 4885526, 3869229, 5122822,
-7669201, -18031346, -14832670, 5840619, -16180752, 11383811, -2333778, 13013214, 3324305, 25161530,
-9740986, 1924682, -7295002, -2985539, -12869333, -632971, 3958886, 2738579, 2687576, 4644471,
-11344619, -4493610, -9261023, -2966749, -2593624, 3826279, 10302016, 3899294, -2510409, 3227668,
-3012383, -279710, -2399813, -5755256, 395674, 935766, -2937221, -3716221, -758062, -6110128,
-4476430, 2805688, -2987150, -701153, -6316823, -2829310, 2947421, 5819144, -2757906, -2291365,
--85362, -4802847, 5432597, 33286, 3929895, -4970888, 53150, -5156645, 3249680, 5780489,
--6316287, -1620276, -29613262, -20998632, 7899519, -8448738, -17052094, -26277146, -466004, 1948841,
--4893042, -4306779, 25107842, 6413460, -17843978, 3647501, -10813654, -9373766, -8742406, -16215112,
--2464238, 1372242, -21970906, -21101174, -7772280, 3368328, 2274185, 12619151, 10976863, 6592775,
--5122822, -299574, 5139465, -11457899, -6115497, -3963181, 3992709, -10761577, -6292664, 7224672,
-4657892, -361314, -1399623, -2062658, 6329708, -15445239, -8516383, -7631620, 10457708, -11977590,
-8362838, 13615046, 18983218, -1291175, 5654325, -4480725, -8660802, -11761768, -2883534, 11526618,
-4629438, -21017960, 1215476, 21698174, -14134201, 682900, -2782602, 1143535, 5465346, 11068131,
--1989644, 3514894, 13608604, 9145596, 6173479, -10169409, -11924977, 8959302, -8534637, -16757889,
--15780247, 17573396, 7019587, 9721122, 4504884, -2734284, -3035468, 8410620, 6287296, 1619203,
-8426189, -3171297, -10208064, -5408438, -6997576, 3018288, 11069741, 5271536, 1677185, 6398965,
-3902515, 5976984, -732292, -2949032, 4035659, -1233193, -3685619, -3393561, 3233037, -9667971,
-2570001, 5833640, -3015067, 7198365, 5295158, -290447, -329102, 6805913, 1279363, -1413044,
--3797288, -4042638, 1636919, 3667365, 1278290, 2988760, -3757023, -2913599, 1850594, -2455648,
-2002529, -1439888, -17039210, 9243843, -13720810, -25462176, 4897874, -15615964, -8501351, 29322278,
-2387465, 21872658, 20364050, -4347581, 21429202, 28795072, 21094196, -26385058, -3095061, -12437152,
--11881490, -7827578, 912681, -11061688, 23125714, 6439230, 12870943, -10958072, 12340515, 8884140,
-3460133, -13863618, -10142565, 21339546, -3544959, -20484310, -964757, -23658828, -2956548, 6213744,
--7961796, 238371, -18649284, 8485245, 17712446, 9097278, -2120103, -9620190, -3064996, -2612414,
--2811056, -9018894, -22991496, 15580531, 9341554, 8027831, 10359461, -13549548, 21114596, 2368138,
--5795522, -4832375, -16032039, -7485055, 11132555, 6394670, 18135500, -2116345, -19786914, -35738424,
--1634235, -449898, 602369, -13001403, -17439714, -3601330, 12317429, -6433324, -6773164, 4530117,
--1124745, 17874580, -3084324, -16224776, -5264556, 16641925, 1560147, 3033858, -15866683, -5969468,
--2592550, 6610492, 9252970, -4474819, 3548180, 526670, 7063611, 4142496, -148713, 2785286,
-9302899, 2008971, 371515, -3048353, 1522566, 5679558, 341450, 2829847, 10588705, 1360431,
--2903398, -7550553, -259309, 5286031, -4591320, 2649995, -1745904, -1690607, -2855617, -4566624,
--2793339, -21475, 6946573, 4860829, -6131066, -12479564, -3045132, 4549444, 2302103, 1596117,
-1280974, 38182796, 23584740, -3087545, -22368726, 4945655, 10692858, 6640557, 15768436, 24429774,
--10956462, 2287070, -21876416, 6405944, 1468879, -8071318, 38551088, 15023259, 33220498, 14137959,
-8337069, -28924994, 137439, 16588774, 2656437, -15263777, 6260989, -23487566, -9598715, 1921461,
-6849399, -6835978, -4940286, 5437966, 3884261, 1999844, 20734492, 13362180, 3144453, -8148627,
-14179298, -9149891, -7093139, -13584982, -4939213, 18362058, -28893318, -161598, 12496207, -13979045,
--4809290, 5713380, 4494147, 26656178, -1848983, -24696, -12643847, 26066694, -11821361, 3528316,
-2376191, 18131742, -4499515, -6180458, 16668231, -28419262, 7142531, 3016678, -12228846, 23205172,
--29008210, -3372623, -9924059, -18986440, -9974525, -1445793, 7820599, 18283676, 29378650, 14762876,
-19295678, 30176978, -12519830, 5774584, 7176354, -12524125, 16947940, 601832, -23257784, 12275017,
-5998996, -8131984, 447750, 17945448, 13021804, 4199405, 10200010, 3392487, 3090766, 9964324,
--2091649, 4379793, 8321499, -1866163, 1554778, -1342177, -841277, 6366216, 861141, 895501,
--5707475, -2944200, -4062502, -7332046, 1296543, -3943317, -12462921, 4884989, 6914898, -2270964,
--482110, 3483219, -4543002, 84289, 12436615, -1709397, -3937948, -7864622, -36939404, 10394358,
-1699196, 44554916, 9885941, 8546448, -1463510, 21830246, 5585605, -32303522, -5247913, 34968548,
--10567230, -7134478, 2663417, -2222109, 513249, -6154688, 35931696, 41371272, -22442814, 10167261,
-10797548, 6184216, 11402601, -17978196, -25356414, 19430432, 4984310, -13710072, -24267638, -7050189,
--8458938, 22039088, 17569638, 10177462, -20614770, 11273752, -9130564, 7227356, 865973, 9523016,
-20293720, 4860829, -46538120, -14047227, 8109972, -18400714, 5246303, 19683836, 6198712, 34203508,
--11681237, -51166484, -1583769, -20354386, 17425220, 15547245, -6003828, -10834592, 15415174, -24550570,
--4822175, -13241921, 11186779, 16076063, 13241384, 14933601, -11552925, -20815560, -62539556, -29644938,
--36595804, 5737540, -24962886, -11841762, -5472325, -26910654, 13942001, -48469244, 14593762, -34856344,
--25778930, 24870008, 28849832, -9028021, -1726577, 15907485, 20166482, -28467580, 63351, 4644471,
--4658966, 4999879, 14722611, -1979980, 6178848, -1325534, 5380521, -12619151, -7204808, -5781026,
--8902393, -1849520, 11373073, 4933307, 10164040, 346282, -12086038, -10448045, 1140314, 6230387,
--3045669, 6615324, 6288906, 16775605, 947577, 5712307, 1113470, 3925600, -8159364, -2372433,
-2337536, -6135361, -455803, -2873870, -67646, 3013457, 16813724, -1741609, -11258183, -11708081,
-319438, -1149441, -17904644, -11280732, 8134131, -12583180, -75699, -624918, -47482476, -7521562,
-32510754, -38400228, 4379256, 13750338, 1069984, 9520332, -2159295, -30485678, -1823214, 15982110,
-6212134, 24017458, 17257178, -26181584, -27191438, -4089883, -11347304, -4337380, -45268420, 16842178,
-18985366, 31831076, 15389405, 28950764, -11913702, 3684545, 30866320, -9839233, 33533494, 8800925,
-18104898, 5546414, -7563975, 15896211, -19105626, 675921, 42209864, -32439888, 3759707, -42098732,
--18037252, -30344480, -19651086, -5527623, 3009698, -10138270, -31061740, -6006512, -52124796, 59558312,
-21804476, 121870, -7268159, -14678588, 4153770, -26532160, 5705864, -39642548, 1749125, 1813550,
-9668508, 25086904, 37267968, 1080184, -60203092, -28225988, 27047556, -13473849, -11314554, -14934675,
--7229504, 30005178, 7168838, -17048872, 13564044, -28403156, 5848672, -5462662, -11632382, -28650654,
--15235323, 17990544, -7648800, -6985228, 10683194, -10676752, -2338073, 17942762, -20051592, -14297409,
--5145371, -4404489, 23597624, 10528575, 7157026, 13373454, 6288906, -2190433, 11479911, -197569,
-8724152, 10962904, 18101140, -6559489, 975494, -1820529, 13671955, 19163608, 8221641, -4469451,
--202400, -5660767, -12648679, 24525338, -5934034, 12729746, -5959267, 4058207, -6385543, -5319854,
-7525857, 13320304, 660351, -4360466, -2358474, 11683922, -24481850, 17531520, 26642220, 10716480,
--13151190, -15962246, 7283728, -20801064, 33268280, 28914794, 42342472, -30051350, -38480760, -8866423,
--1555315, -18501108, 24613920, 31313532, -23390928, 530965, -41170484, -11344619, -19864224, -35945120,
-10864657, 30759482, 17579302, -23163296, -9903658, 3372623, 19634442, 3626026, -2157147, 8215199,
--2979097, -9703942, -33434710, -21638046, 7762617, -2490544, -18500572, 19910932, 16525960, 11530913,
--34207268, -30011620, 28239946, 18021146, 20819854, -21270288, -56540024, -9999221, 22846542, 23904178,
--6396280, 57054344, -7695508, 57346940, -86078120, -105357160, -44179644, -63266480, 77846, 25384868,
-12419972, 69508144, -8512625, -4004520, 12177843, -13285408, -55110872, -47995724, -54646480, 43627740,
-34652868, -12877923, -4333085, -89792200, 24465744, -717260, -40975060, 17175574, 25131464, 40329208,
-30596810, 14896557, -3474629, -26395258, 99858, 1737851, -8214662, -11138461, 31139050, 20025822,
-11683922, 32851668, -25730076, 6351720, -7732015, -15135465, 19598472, -2835752, -36245764, 107374,
-10445897, -12392054, 16086800, -6429029, 3738232, -7526394, 38631084, 31090732, 35724464, -30472256,
--7784628, 38113540, 27158152, -26531624, -17396766, -26736172, -16752520, 22339198, 24228984, -8544301,
--3398930, 42409580, 914291, 4160213, -6412386, 7767985, 6387690, -1183264, -21705154, -5304285,
--5213017, 6811282, 12234214, -41001368, 35798552, 27214524, 11224360, 33700996, -19766514, 12422119,
--55763172, -26965952, 14719390, 20619602, 9507447, 7216619, 6988449, 14461692, -6733435, 63525252,
-5775658, 39574904, 11410654, -19037442, 48440252, -6540162, 19056234, 1053878, 17398376, -1776506,
--984621, 10684268, 24340116, 7137162, 17798882, 1311576, -3595425, 38268160, 4412005, -7979513,
-724239, -2928631, -19160922, -5422396, 10830297, 7189239, -43027520, -10443750, 5521181, 10061498,
-45146548, 36820216, -44486736, -24466282, 3766686, -9767293, 49715856, 4944581, 45864884, -32123134,
-23138600, 4753455, 2640331, 21369072, 47143708, 30637612, 6386617, 41704132, 16456167, -19463718,
--41819560, 36884104, -33324114, 22349936, -43920336, 303332, -69720208, 72599440, -17799956, 2604361,
--48775260, 44112000, -16940962, 14033269, -35745940, 42616276, -22017612, -19889456, -14391362, -26627724,
-8465917, -14875082, 12838194, -13782013, 23453206, -25996364, 23501524, -27372900, 15315853, -32067300,
-25900800, -11008001, 28732258, -9859634, 15154255, -12033961, 9853729, -13741211, 711891, -15024869,
-17536352, 7195681, 5123896, -5921686, 1896228, -11967389, 9542880, -12294881, 22080964, -17964238,
--21314848, -9589051, 8958228, -25463788, 20010252, -6191732, 11107859, -7144141, 6437619, -11637214,
-5773510, -5937256, 6866579, 8506720, -1548873, -70432096, -16990890, -5887327, 7875897, 5825050,
--43038256, -25747792, 39869644, -15700253, 15041512, -17843978, 4381404, 49015776, 80228376, 5113159,
--2284923, 39621612, 17999134, 16183437, 49905372, 724776, 30443266, 35861368, 35366372, -14004278,
-15625091, 30966714, 44198972, 35341140, 54230404, 29953638, 69093672, 72351408, 53135724, 57632556,
-40112312, -4633196, 19969988, 9976135, -14370424, -15120969, 12035035, 33556580, 8358007, 1290101,
-461709, 16463147, 51023136, 38911868, 85249736, 16821240, -43246024, 17306034, 1530082, 17711372,
--21876416, 33414846, -60647624, -79304960, 22815940, 79352208, 35310000, 15714212, -97885528, 403727,
-38199440, 59411744, 80742704, -34151968, 5693516, -138068704, -90195920, 36730560, 52434572, -76937360,
--64770792, -40973452, 76203992, 50211924, -89407800, -116577760, -22760106, 47378856, -54930484, 26477400,
--7719667, -20205674, -29280940, 4129074, 12811351, 19589882, -2648921, -48232484, -40833328, 5142150,
--12108587, 20242718, 3650185, -4990215, -17424682, -12110734, 8543227, -1036161, -39133056, -20125680,
--29372744, -15625091, 6459631, -15387257, -10361609, -35792108, -46693272, -65610456, -64578056, -55283208,
--45997488, -51809116, -50516868, -39297340, -53311820, -57550416, -47942572, -55251532, -34628712, -9359807,
--30546882, -46035072, -29348586, 1824824, -15487115, -8813273, -9610526, 24503326, 27148488, 1336809,
-13028246, 13716515, 9131100, 8070781, 1649268, 6434935, 6009196, 5952825, 4459250, 6941741,
-2534031, 5660767, 2572686, 2167885, -310311, 1459752, -12943421, -2404645, -25675314, 65765612,
-74876312, -84359064, -34395172, 31914292, -22994718, 15774341, -30278982, 27632208, -25573310, 6174553,
-391379, -12712029, 6827925, 1298154, -7561290, -6074695, -20365124, -5682779, 4956393, 2397129,
--20762408, 19978578, -19014894, -6851547, -16440061, 1775432, -15721191, 32702418, -382252, 8525510,
--8529805, 8489540, -9090298, 9176198, 20387136, 27124330, -7111929, 8966818, 10376641, 23766202,
--14687714, 15200426, -13070659, 28575492, -7339562, -16670379, 9633075, -7504919, -8452496, 2955474,
--2267206, 12031814, -6322729, -16831440, -15697032, 2097018, 3382287, -29058138, 9007083, -4886599,
--2561948, 4472672, -7775502, -5375152, 3226594, -5093295, 4267050, -15950972, 18381386, -51746304,
-27348204, -22405234, 34631396, -23582054, 31047782, -1002338, 17023640, 9042517, 13912473, 5577015,
-2631741, 5229660, -727997, -22255446, -4138738, 304943, -8348343, -4792110, -4181688, -3042448,
-1611150, -8953396, -260919, 2325725, -358630, -14208826, 14861124, -3189550, 8157754, -15114527,
-7394860, -9665824, 6400038, -11170136, 12424267, -15986405, 22042310, -4964446, 3543885, -23101018,
-15986405, -2017561, 11810623, -22043920, 5985037, -9810242, 3955128, -5355824, 2721399, -14941654,
-7624104, -3933653, -7808788, -295279, 18016314, -20656646, 2084670, -8868571, 10980084, -14946486,
-13836774, -12307766, 4398047, -9276056, 10880763, -5180268, 6365679, -5686537, 7032472, -9357660,
-5451924, -5226975, -601295, -2597918, 4673998, -3182571, 2500208, 151398, 3530463, -4391604,
-1714766, 573378, -2002529, 2812130, -2643552, 1512365, -3767223, 3187403, -4074850, 2299418,
--3038153, 2733210, -2217814, 2360622, -2996814, 3821447, -3767760, 3324305, -3528316, 4008278,
--3062312, 4036196, -4028143, 4740570, -4981625, 4315906, -5147519, 4202089, -4096862, 4968204,
--5756867, 5255966, -4980015, 4649839, -6388227, 5134634, -6193343, 5432597, -4622459, 4992900,
--4686883, 4253092, -4955319, 4454955, -5487895, 3221762, -13464722, 63453848, 38643432, -21047488,
--23996520, -2203855, 79073032, 32902134, 11183558, 21771190, -19033684, -24256364, 6852084, 15247134,
-4117263, 1310502, -8288213, -6629819, 7553237, 7500624, 18508088, 8108899, -9783936, -4439923,
--4771172, -10057740, 20938, 1697586, 5030481, 6171331, 326418, -2711198, 7475391, -21252036,
--7914551, 9374840, 13662291, 16711718, -9291088, -5538361, -9884867, 17099876, 12009802, -3289408,
-5598490, -19855634, -16995722, 15784542, 12459700, 3847217, -29873646, -15471009, 1392643, 4974646,
-19925964, 14105209, -2056753, 5789079, 7186554, -9406515, 8749385, 9294846, -2585570, -5741298,
-5703717, -10060424, 1113470, -1725503, -6878390, -10770167, 15116674, 3054259, 3487514, 20583094,
-25215752, 8870181, 20442970, 18976240, -2811056, -5111011, -5517423, -3642132, 8096550, 12958990,
--4835060, 4006668, -11427297, -4197257, -380105, 2794413, -6142877, -7531762, 8024610, 15016816,
-6677064, 4199405, 6475200, -7150047, 791348, 7180112, 1603633, -2179159, 2007360, -669478,
--8511551, 17827872, 6003291, -14135274, -13202193, 5481452, -2439005, 14089640, 7638063, -1700270,
-5460514, 1895691, -2664490, -543850, -3811247, 4213363, 6663642, 1112933, -1439888, -5438503,
-5007395, -972810, -4417911, -43487, -22725208, -62944356, 21849572, 115550192, 90984584, 86991880,
-27906550, -80997176, -48477296, -71810240, -71901512, -65655556, -22823994, 35314296, 45668388, 71666896,
-64316060, 38640748, 6570763, 6266358, -31016106, -49197776, -70275328, -27097486, -19026706, 6283537,
--3895535, 35668628, 24186034, 10222559, 47805132, 26771068, 20501490, -4198331, 17996986, -32443646,
--24368570, -20238960, -23535884, -31121334, -18668612, -12433930, -31561030, -21907018, 8463770, 46511812,
-44990320, 51003812, 40143448, 58319752, 10157598, 14919106, -38726648, -28741384, -24566676, -58217208,
--57895084, -52022256, -24525338, -30494804, 7199439, 22542672, 32538672, 65272228, 64191508, 61373472,
-55128588, 48183092, 10341744, -28356448, -46116136, -82468200, -70792336, -51678120, -70365520, -32692218,
--14664092, 3085397, 69113000, 54127324, 79495016, 78480864, 57379688, 16035797, -15830176, -23491324,
--27196270, -24291798, -46761992, -57884884, -40415104, -27639726, -24408300, 3055332, 16263431, 25849798,
-22287122, 46531140, 50889456, 38444788, 30588758, 5098663, -10771778, -21965536, -35923644, -30869540,
--21909702, -34474628, -46715284, -4944044, 2673080, -7691213, 40192840, 53087944, 33940980, 29841432,
-2181844, 8434242, -5580237, -9351218, -23276576, -27288074, -17978196, -20396800, 2832531, -8140574,
-2553895, 403727, 18234284, 9860171, 9364102, 17135308, 17386028, 35433, -4702989, -12428025,
--12525198, -3532074, -2925947, -5995775, -6067178, 1192390, 1365263, -1463510, 2862596, 3314641,
-2930778, 927713, 11160473, 4163971, -426812, 1773822, -621160, -4090420, -4307852, -4912369,
--5885179, -5176510, -1663226, -890669, 318364, 4896263, 6327561, 4913980, 4652524, 2456185,
-427349, 69256, -807991, -4698158, -2812130, -33823, -3035468, -4320200, -2272038, -503048,
-1955284, 1388348, 41876, 1182190, 3136400, 2243584, 1388885, 3139621, 1510218, -199716,
--1432909, -2407329, -1995549, -2024540, -1692754, -1196685, -916976, -79457, 227096, -11274,
-542240, 1161252, 1073742, 1734093, 2356327, 1202054, 314069, 637803, -437013, -1038845,
--1635846, -1818919, -1676111, -1313186, -657130, 46708, 64961, 932545, 1189706, 718333,
-846109, 1579474, 1020055, 208843, -450435, -348966, -376883, -853625, -1220308, -637803,
--333397, -4832, 125091, 314606, 209380, 341450, 147640, 158914, -8053, 117038,
--33823, 57982, -71404, 66035, },
-{
--3223910,
--4303557, -6033356, 1952600, -2881386, -6213744, -3766150, 2638184, -7556458, -4388383, -9270150,
-3137474, 4329864, 5217849, 3046206, -3418794, 7251516, -5004174, 1568200, 19864, -894964,
--5280663, -2509335, -5794985, 351114, -2537252, 3302293, 1971927, -2573759, -992674, -488553,
--5328981, -87510, -1284195, 2440615, -220654, 4833449, -1802276, 6081674, -2705293, 205622,
-830539, -4217658, 2893734, -1204738, -1796370, 620623, -1303523, 2406256, -9237401, 4348655,
-5360119, 894427, 2991982, 1796907, -4159139, -439160, -4502737, 6066105, -1702418, -3636227,
-3477313, -5398237, 118112, 2195265, -6342056, 810675, -1575716, -2306934, 2027761, 525060,
-458488, -2887829, -1989107, -9951439, -1324997, 2210298, -1696512, 528281, 1162862, 5369783,
-4478577, 306016, 1443109, 679679, -908386, -706522, -1383516, -676994, -466004, -986232,
--955093, -6442, 941672, 680215, 627065, -1513976, -28991, -18790, -457951, -75162,
-350040, -189515, 35433, -714038, -609885, -634045, -46708, -592706, 915365, 1206349,
-1236414, -14256070, -8574902, 1585917, -4634807, 883153, -4781909, -8189966, -5459441, 9297530,
-5405217, -1440962, 6291054, 1481764, 1541356, 1765768, -3058554, -832150, 5111548, -4123169,
-2317135, 3732327, -4002373, -6320045, 2887292, -5166846, 566936, 2957622, 7577396, -1712618,
--3666292, -3203509, 1173063, 4123169, -5614059, -49392, 4602058, 1813013, 476205, -308164,
--441308, 5986111, -238371, 5483600, 3596498, -1397475, 3583077, -1269163, -337692, -565325,
--10028749, 3462281, 5651103, -3282429, -1879585, 1374390, 1529008, 1602023, 871878, -551366,
--1222455, 331786, -2533494, 6851547, -3089692, 790274, 3710852, 2969433, -2467459, 2700461,
-841277, 1756105, 3747359, 3312494, -4991826, 5143760, 5692979, -1945620, 79994, -369367,
-3711389, -4573067, -2392834, 994285, 634581, 166967, 228170, -979253, -1553168, 911070,
--744640, -398895, 246424, 1300838, -989990, -235686, 9127, -1797444, 590558, -1068373,
--1120987, -867583, 648540, 90194, -536871, -1076426, 232465, -5650567, 7225746, 4728759,
-11179263, -1854352, 1204738, 3424163, -5425081, -1125281, 2172180, -2241973, -7369627, -436476,
-804233, 4953708, -5950141, -14557255, -11745662, -7238631, 2811593, 6925098, -6956774, 3922379,
--3405372, 5351530, 4168803, 3628174, 6424734, 3575024, -5015448, -4638565, 883153, 3432216,
--252866, 295816, 8982924, -67109, 1573569, 4469987, 4726075, 785442, 145492, 11095511,
--765578, -4162897, -1242319, 2523293, 3246459, -2148021, 5974300, 1173063, 3212636, -4264366,
--3769908, -1453846, -2488397, 1447941, -1971390, 6497749, -7483981, -6688338, 8116415, -847182,
--327491, -9418863, 2939905, -4566624, 5095979, -3917547, -10423886, -476741, 5380521, -4465692,
-6951405, -4172024, 3207267, 6485938, -1823214, 2714956, 6536940, -424128, -4807679, 406411,
-3198677, 1480690, -2321967, 4498442, 308701, 2373506, 902480, 648540, 1711545, 311385,
--668941, -44560, 245887, 690416, -1804960, -919660, -936840, 1729798, 217970, 1763084,
-1840930, -1699733, 428423, 449898, -972810, -726386, -340913, 335007, -881542, 367220,
--921807, 17395154, 4096325, 4641249, 1990181, -3970161, 8346732, -3944928, -2364916, 10625212,
--800475, 8546448, -902480, -9758703, 3453154, -3305514, 10772852, 5680094, -752693, -9637907,
--6747394, 8920110, 10567767, -12328704, 6180995, 4954782, 3715684, -798327, 1196685, 1037772,
--937914, 12225624, -556735, -2085744, -3370476, -4090956, -5231270, -1717450, -280247, -7033546,
--2509335, 1844152, -4907537, 279173, 280247, 7317551, -2744484, 235149, 3398930, 294742,
-6987375, 3161096, 7264937, 3599183, 2210835, -7679939, 805843, -5689221, -5326833, 1279363,
-7408819, -284005, 6362457, -2662880, -4815195, -1112397, 302795, 1878511, 4367445, -2015413,
--42950, -2385854, 2438468, 1676111, -6271189, 1224603, 1297080, 836982, -1768453, 6562710,
--700617, -1277216, 697932, 3081639, 1346472, -2150168, -701690, -869194, -1582159, 1291711,
--1890323, 3097208, -1872069, -365072, 370441, -1459752, -425739, 1722282, -2031520, -460098,
--2186675, 849867, 905164, 1757179, -2388002, 475131, -981400, 1206886, -819802, -2849174,
--923418, 4906464, 3438121, 3945464, 11186242, 5852967, -4854924, -4340602, -12040404, -782221,
--267899, -6425271, 2442226, 9662066, 1170916, -7612830, 7068980, 6717329, -700617, 2685428,
-6808060, 1613297, -6186364, -955093, 14424648, 7095823, 1491427, -9516574, -3406983, 8680666,
-2986076, -1297080, 4887673, 4370129, 4576288, -37044, 8952859, -81604, -1149441, 2255932,
--4449049, -5828808, -295816, 985695, 3327526, 1827509, -5447629, 5530308, 9706626, 4982162,
--268435, 7208566, -8210904, 4680978, -4893042, 5143224, -1373316, -5908802, -302795, -7697119,
--12600360, -4600447, -5009006, -616328, -56371, -6598144, 1276142, -2029372, 3823058, 2522220,
-4528506, -725850, 1820529, -6353867, 1097364, 1002875, 8847096, -3422552, -282394, -3076270,
-1865626, 7956427, 4087198, -4626217, -7397545, 2333778, -2961380, -1017907, 3843996, -548145,
-1289027, 900869, -4407174, 206158, -3364033, 951335, -3195993, -2153389, -1167694, -137976,
--434329, 576599, -2049236, -216896, -693637, -1634772, -1381906, 486405, -363998, -849867,
-212601, 752693, 2442763, -872415, 1426466, -1064615, -2472291, 1822677, -2704756, 2588255,
--251256, -1746978, -302258, 858993, 1893544, -1408749, -192737, 403190, -485331, -11795591,
--7793755, 16679505, -3645890, -3663607, 984621, -587874, 17891224, -5231270, -9644349, 233002,
--9513889, 2370822, 7598871, 8159901, 2587181, -16603270, 13653164, -10744398, 5714454, -7346005,
--5574331, -4113505, 6820945, 7323993, -10976863, 867047, 4805532, -3411815, 2208150, 3221762,
--3962644, 505196, -9038759, -6082748, -13955422, 8266202, -1944547, 14074071, -6549289, 3052648,
-9409200, -2351495, -2783139, -4164508, 10782515, 7863548, -13219372, 3770981, -7472706, -2515240,
--2896956, -7432441, 4472135, 2363843, 11659226, 8196408, -14624364, -2401961, -6276558, 8546985,
-2984466, 732829, -8529268, 1276142, -889595, 7182259, -1191853, 896574, -9811853, -227096,
-6980933, -6433324, 1087164, -2032056, -1909113, -5200132, 1053341, -687195, 12368969, 5448166,
-5660767, -2266132, -1374390, -2150705, -3361349, -1809255, 2763812, -3786014, -1198296, -3713536,
-2811056, 2353642, -2013803, -1138166, 2613488, -3496104, 1736777, 529355, -935229, -1112397,
-940598, -99321, -314069, -672162, 2284386, -3372086, 450972, 302258, 1710471, 1845762,
-1850594, -1711545, 507880, -1207960, 2470680, 678068, 586800, 1806571, 4070019, -4483946,
-307090, -9453223, -1181653, -10908680, 1707786, -2732673, 6262599, -440771, 5313949, -7471633,
--14066555, 2986076, 9467719, 1237488, -1139240, 7384123, 4971425, -11502996, -181462, -4335233,
-14567992, -644782, 1699733, 1147830, 153545, -452045, -5221070, 11547020, -976031, -16356846,
--3067144, 9921374, -6383395, 1660542, -255014, 1332514, -2042794, 1586990, -3003793, 3919158,
--6269579, 5919539, 8298414, -6491306, -1650878, -3838627, -11387032, 4571993, -8082055, 7051263,
--7102802, -12284143, -3352222, 7319161, -2275259, -4380330, 4893042, 6769942, 3873524, 7419019,
-12678207, 10218264, -649614, 2000918, 1736777, -6783364, 1305133, -7093139, -7736310, 4242891,
--5899138, 1939178, -340376, 4472672, 4537633, -5861020, 6840273, -1851131, -2790655, -1241246,
-4813585, -863825, -4424353, -3004867, -6270116, 7201050, -3592203, -922344, 1249299, -276489,
--2648921, -2244121, 494995, 973347, 326954, -1233193, 1670742, 1242856, -1399086, 153008,
-1080721, 677531, -846645, 4295, -1141388, 476205, -1919850, -1755031, 1109175, 580357,
-2404645, 2643552, 239444, 1827509, 39192, -102005, -16072304, -13477607, 7867843, 14402636,
-24696, -852551, 2774012, -6925635, -3330210, -16646219, -8836895, -4716411, -132070, -12108050,
-17340394, 3441880, 9659381, -11038603, -13150116, -9907416, -3839701, 2636036, -14932528, -6694244,
-6938520, -2965675, -18168786, -6167573, 2462090, 191663, 11288785, 3792456, -3534758, -8623221,
-10737418, -6228240, -619012, 8085276, 2399813, -8806830, -4514548, -685584, -14711874, 3704946,
-11451457, -4984310, -6310918, 1667521, -7442642, -2753074, 1487669, -4750234, -3621731, 3877282,
--5545877, -11743514, 5813775, -6698002, -8747238, -12033961, -6004901, 1196148, -4793721, 1996623,
-14811195, 8356396, -1787780, 14105209, 14343043, -6206765, 2009508, 3977677, -7406671, -4820027,
--15704548, 1619203, -5017059, -12713640, -107911, 6693707, 11851962, 7281044, 3495567, 1320703,
--10662793, -1339493, -2413772, 2800856, -4016868, -467615, 277025, -153008, 2601140, 499290,
--939524, 2295660, -920734, -3367791, 2741800, -2257542, -2991982, 460098, 1142461, 1014149,
-272194, 3281892, -301185, 2100776, 1263794, 251256, 696858, -18790, -2517388, 575526,
--3473555, 814970, -5568962, -1394791, -212064, -3694209, -4356708, -575526, -4306779, -807991,
--891206, -4952634, -10247255, 26097296, -1032403, 16005196, -8054138, -22831510, 6519224, 1985886,
--907312, -10693395, -1053878, -7036767, 18090940, 13273596, 11837467, 8679592, -14194330, -63888,
-1943473, 12617540, -21546240, -2424509, -5279052, -6275484, 3228205, -7077033, 2758980, 4816269,
-3560528, 3852586, 4986457, -1480153, -2125472, -10457708, -2500745, -1583232, 10281615, 15569,
--9422621, -2199023, 11188927, -1288490, 6507949, 8383776, -6072010, -3576097, -13879187, -8050916,
-27151710, 7166690, 12081206, 6507413, 1570884, 1034013, -17212618, 10212895, 1610613, 3006477,
-8784282, 9594957, 14918569, -17163226, -7094212, -9519795, -1205275, 2393908, -2269353, -4802311,
--2819646, -14392972, -18103288, -11745662, -16966194, -2191507, -11089069, -18985366, -8029442, 6184216,
-10406169, -3946538, -16245714, -565862, -2452963, 3859565, -4466229, 1057099, 9339943, 441845,
--684510, -568009, 1190243, 1655173, -2757906, -2469606, -6527277, -7306813, 3900904, -1996623,
-3491272, 3168612, -1188632, 2161979, 2880313, 5272609, 3735011, -2274722, 1159641, 6716255,
-1294933, -6766184, -5601174, -3048353, -1410897, 523449, -2379949, 3894462, 4286378, -1016834,
-6466610, 865436, -1796907, -1372242, 1507534, -3733400, 35032436, 7936026, -5062156, -7266548,
-1120987, -11239929, -21977884, 16181826, 68719, 10417443, -7873212, 7539278, 17986786, -1770600,
-2006824, -4520990, 15656230, 13191992, 5115306, -21204790, 1535988, 3132642, 13112535, 19092740,
--5631776, -3893388, -2522220, 5128191, 6815040, 5677410, -9648107, 4422743, -11121281, 8522826,
-11363410, -5417565, -11247982, 7116224, -12239583, -11187316, -467078, 3265249, 15953119, 1938104,
--2182917, 13601625, -2517925, 12219182, 22558778, 11318313, 260382, -14310294, -1359357, -8237748,
--6683506, 14423574, 5634997, -14512158, -165893, -11091216, -2811056, 19117974, 8791798, 2798708,
-8185134, 11520176, 5971079, -15391552, 7945153, 12866648, 4412005, -10514080, 4346507, 1235340,
-2209224, -8224326, 12712566, -3484292, -3047816, 15292231, 16200617, 2401961, 4615479, 17620104,
-1042603, 8706436, -6167036, -173946, 10149545, 5890011, -4483409, 5250061, 9162776, -2463701,
-83215, 11684995, 2420214, 4984310, -3443490, -5815386, -1758789, 3275986, 1707786, 2704756,
-2771328, -1888175, -1810866, -1495186, 913754, 3519726, 4242354, -2815351, -838592, 7295539,
-1082869, 9774272, -1736241, 2680597, -1305670, 1275068, 4409858, 2709051, 375810, -39192,
--4108673, -2869038, -2067490, -4385699, 5634997, 5064840, -8513162, -440771, -10876468, -25597468,
-8840653, -10202695, 2830384, 896574, 17935784, -12366821, -10931766, -4601521, -5004174, -6615860,
-13245679, -11752104, -16581258, 4945118, -30982820, 897648, -5842230, -13113609, 16653736, -1079111,
--994822, 7000260, -6614787, 5258114, -1686848, -18512382, -20208358, -213675, 4251481, 11825656,
-5704254, -1360431, -2144263, -11646878, -5526549, 11669963, -18285824, 25195352, 14955076, 3356517,
-18622978, -12455405, -5349919, -11404212, -11668889, -5050345, 8492224, 23791972, 191663, -12311524,
--2092186, 1147293, -1352915, -1287417, -7586523, 6405407, 5871757, 16034187, -321049, 18131204,
-9324911, 4971962, -482110, 3856344, -27131846, 14277545, -3478924, -15875273, 11286637, -28991,
-14865956, 6596533, -25149182, 19472844, 15180562, -13158169, 21120502, 8126615, 15769509, 6250788,
--2234994, -896574, -702227, -2975876, -5571110, -1712081, 2299418, -5550709, -8457864, 61740,
--5531918, -9906342, -5947456, -7423314, 4655745, -4568772, 5734855, 1530082, 5851893, 2773475,
--690416, -3169149, 973347, 548145, -488016, 808528, -1784559, -4118874, 1940252, -389231,
-2376728, 2599529, 69793, 2195265, 993748, 3795141, 3236795, -5971615, -3610457, -5356361,
--9992778, -7022272, -48070348, -3587372, 28226526, -5126044, 673773, 24903294, -5932424, 382789,
-2855617, 6708202, -7636452, 6691559, -2743947, -8194261, 7817378, 9510131, -28175522, 3388192,
--25096568, -597000, -13092134, -13999446, -3273302, -4156992, -13858786, 6921340, 2071248, 8710194,
-11593727, -16922172, 21184926, 1543504, -20194400, 1708860, -14001593, -6912750, -15046881, -13462575,
--6030134, 14230300, -12401181, 6808597, 14149233, -8545911, -15495705, -14061186, -20884278, -22264574,
--13302051, -6306086, 1542430, -3329137, 5951751, 4270271, -13429289, -927176, 14682346, 8586713,
--22192096, 8672076, -1875290, -6089190, -20580410, 13789529, -7517804, 19017042, 23802708, 660351,
-22626962, -12537546, 13033615, -9863929, 14029511, 18163416, 1355599, -23848342, -956704, -32556926,
-10330470, 7078643, 12716861, 6161131, -12992276, -11081016, -432718, -7426536, 7144678, -8036958,
--499290, -486405, -8235063, -6259915, 5278515, -3127810, -9289477, -852551, 2598992, 6765647,
-3400004, 14664092, -1746441, 1242319, -4589173, 10286447, -1680943, -2223719, 8792335, -493384,
-1121523, 2149094, 11928735, -1952600, -5177046, 1262720, 8165270, 7936026, -8224863, -775778,
-5312338, -9257265, 4938139, -1494112, 6391448, 392453, -8115341, -4387846, 3613141, 4138201,
-4905390, 3743064, -22801444, 18434536, -43478492, -2560338, -4169876, -3614752, 4002910, -24934432,
-1716376, -4902169, -2164664, 11402601, 4448513, 13265543, -10270341, 9393093, -4920959, -22145388,
--8965744, -16249472, -10151155, 10748693, -19391240, 2558190, -7205345, -14634027, -2651069, 14361834,
--19276886, -18478560, 7544110, 11154030, -656056, -8722005, 10343892, 11003169, 13392782, 11608223,
-4763119, 15877957, 18735722, -10039486, 2781528, -8847096, 23514946, -1865626, -16324097, 19685446,
-8584566, 4766340, -9360881, -12345883, 2864743, 7525857, 7488813, -613643, -10283762, 7841537,
--11970074, 391379, -11812771, 36424544, 5582384, -10408316, 29843580, -3608846, 9107478, -7693360,
-14973330, 22360136, -13892072, 21363168, 22586696, 29582660, 22646826, 2167885, 16810502, -13151727,
--2639258, 3219615, -7350300, 13088376, 552440, -792958, -1335735, -3750580, 6320045, 3255048,
-17863842, -5822902, 6579353, -3892314, 79457, 3417183, 5244155, -7499013, 2748779, 7536594,
--3287261, -8422968, -1676648, -13539348, 4667556, 4275103, 3650722, -3537979, 2217277, 7173133,
-3991635, -1680406, 6815576, 3118683, -4488778, -2228551, -1458141, 11232950, 14530948, 7793218,
-3338263, 2663954, 4958540, 8696235, -5807870, -2282775, 3892314, -863825, 780610, 4040491,
--3461744, 44935560, 11553462, -7482907, -6664716, 10554882, 2873333, 4584878, -1170379, -17749490,
-14952392, -40715216, 4407174, 9126806, -1868848, -7318625, -15724949, -7046968, 1821603, 12267500,
-18485540, -10820633, -23837068, -19084150, -2779381, 854699, -14069776, 28985124, -13498545, -8667244,
-11863237, -3910031, 2098629, -2443300, 24705188, 4273493, -24856586, 9971840, 3103651, 17313014,
--6171868, 1999307, -10302553, 8669928, 3741990, 21787296, -5313949, 9907416, 10233296, -12949863,
--14463839, 1163399, 13109851, -25349970, -30175366, -8737574, -12411919, -1495186, -4403415, 3129958,
-6805913, -5980742, 1005022, -34675956, -29591250, 23640574, 24950538, -30020210, -23194970, -28889024,
--15211164, -11889006, 15017353, -15716359, -27998892, 943819, 1187559, -16995186, -3665218, 24488830,
--3693672, 1474248, 7818451, -130997, 1376537, -956704, -8644159, -10586021, -593242, -2922188,
-6995965, -1014686, -690953, -7634841, 3869766, -11874511, -297963, 3775276, 3963181, 5874979,
-6514929, 1321776, 3685082, -2559264, 606127, -5996848, 2209761, 720481, -6900939, 7169911,
-7055021, -10987063, 679142, 8196408, 6681359, 12611098, -2597918, -14446659, 4041564, 4846871,
--7176891, 4709969, -7989176, -3673271, -1235877, -2441689, -6781754, 2551748, -24827596, -3143916,
--5927055, 7402913, -11701638, -3310346, -38659000, 34237332, 22174380, -3817152, 47195248, -4711043,
--25704306, -2464774, 10687489, -16042777, -20939040, -4506495, -14253386, -754304, 4127464, -21711060,
-31878858, 986232, 3543348, -20032264, -5625334, 2083059, -5575405, 5026186, 7364259, 26037166,
-4809827, -1397475, 21229486, 17342542, -6029061, 10205379, -13183939, 3701188, 11942693, 11416560,
-29656750, -29233158, 18080738, 54069880, 543313, 8834748, 18670222, 2067490, 3837017, 8696235,
-6896107, -18133888, -21398600, -7883413, 17497696, 5124970, -22238266, -12177843, -816044, -10801843,
-20088098, 1789928, 15555298, -34207804, -20995410, 9927817, 23613194, 14321032, 9620727, 32458678,
-19160386, -13678934, 22565758, -16895864, -3249143, -2454574, 12771085, -2679523, -13777181, 12104292,
-5472325, 1135482, -15822660, 11071889, -48855, 193810, -6950868, 9330816, -7429757, -6176700,
--5647882, 4440460, -5899675, -11748883, 4145180, 811749, 128849, -6397354, -1028108, -8006893,
--6630893, -6403796, -3813931, -2473364, -2782065, -2436857, 1360431, 228170, -14920180, 10183904,
-4248797, -4785668, -10969883, -15966004, -141197, -8691403, -5610301, 5783174, -3952444, 9912785,
-5201743, -3469797, 2001455, 9279277, -3878892, -1513976, -4154844, 7831336, 2143726, 3276523,
--7584376, 16019691, -45107896, 959388, -308164, -1445793, -5730023, 21066278, 1656784, -12120935,
--22626424, 22896470, -20347408, 531502, 14673219, 11829414, -16007343, -4274030, -25764436, -106837,
-7328288, 8987219, 10375030, 2750390, -16799764, -20876762, 17131550, 8881992, 8504572, 3380139,
-8651675, 2625299, 12597139, -22512608, -38186556, 10590316, -5818607, -8102456, 21208012, -3710315,
--11403675, 18824304, 17671642, 14749991, -1427003, -9571335, -16472810, -4219806, -21766358, 51015620,
--4421132, 18382996, 3868692, -16916802, 13830868, -6459094, -16309601, 15950435, 12570832, -28033788,
-19486804, -2972117, 27059368, -27431420, -20794084, 27704150, -1210107, -22395034, 22818624, -8382703,
-39030516, -16583942, -13514651, -23592792, 14919106, 2793876, -19287088, 7683697, -25045564, -18210124,
-1571421, 16216723, -14395657, -8743480, -28436978, -25687126, 30107720, -3458523, 13086228, 21195126,
-28566364, 164283, -2956011, -2193655, 7504919, 11523934, 2092186, 5304822, 17577154, 7756174,
-9666898, 5797669, 4377646, -3417183, -1676648, 10882910, 8223789, 14253923, -6764574, 9409736,
-9860708, -15477452, 3929895, 3947075, -8483634, -4279935, -47782, 3954054, -6894497, 11230803,
-596464, -2532420, -3209414, 9543954, 343061, 3016141, 852014, 2719788, 2139968, -8626979,
--4333085, -6433324, 782221, -75162, 4756677, 6197638, -5541045, -12905840, 33430952, -7626252,
-22633404, -35421132, -6245420, -822486, -42293080, -9296994, 6096169, 20762946, -10429791, -9920838,
-893353, -3270081, 29644938, -2834679, -14949171, 31459024, -3935264, -1634235, 5907191, -12582107,
-27166206, 1787243, -5582384, 13019120, 11131481, -14853608, -5120138, -6898255, 21146272, -42341936,
--756451, -8220568, -14972256, 7237557, -15222975, 24634858, -6494528, -30515742, -3196530, 46335180,
--28142774, 20296942, -31372588, -9035001, 31181462, 22795002, -16859894, 7905961, -20555714, -26996554,
-5722507, -11879880, 11742977, 3386582, -1907502, 4578435, -39545376, -15469398, -20169704, -28904594,
-13403519, -10982231, -8064875, -16034724, -28101972, -23629300, 18482854, -3709778, 57686780, 10104447,
-5310190, 20593294, 36273148, 4734665, -26200912, 31826782, 24077050, -20378546, 5369783, -5178657,
--20304458, -16004659, -13727789, -1593970, -12533788, 4679367, 8475044, 2937221, -9771051, 16919486,
-2618320, 7793755, -2345052, -3001645, 8006893, 4873714, -8149701, -7355132, -7048042, 7729868,
-3680250, 9347996, 9939091, 327491, -5374078, 7504382, -4343286, 16165720, 7662222, -19564650,
--3879966, -14453639, 1710471, -4792110, -6980933, 20237350, -1121523, -6424734, 5171678, 6274947,
--7439420, -1611687, -10222022, 4406637, 7323456, -1548873, -3256659, 1018444, -6892886, -1950452,
--1102196, 9410810, 22501334, -13341242, -16915728, 19013284, -30223684, -3605625, -6158983, 1739462,
-21436718, -14017163, 23783382, 10110353, 5483063, 7039452, -38565048, 26234198, 5011153, -27226872,
-10755672, -28876138, 5035313, 38679400, -4684736, -22938884, -24263880, 10386842, 17708688, 14176613,
-7698729, -25550760, -17351668, -7927973, -4602058, 33048700, -20787642, -12575664, 49386220, -27374510,
--1949915, 19502910, 259309, 20547124, -2829310, -16590922, -10934987, -30141006, 15573015, 21423296,
--31957778, 48063368, 16201690, -36254892, -32861868, -31532576, -37575596, -30562450, 1793149, 15093589,
-3190624, -25464862, -9406515, 16997334, -219043, -15952582, 17799418, -34273304, 2433636, -7890392,
--31425738, -29571386, 5387500, -11766600, 22635014, -41004052, -5240934, -14523969, -29744260, 2052994,
-48631376, 12399034, -21100638, 10391673, -26040386, 10690174, -10394895, 932545, 1757715, 13690208,
--1148904, 4684199, 17551920, 183073, -9212168, -4390531, 14150307, 9782325, 6708202, 3382824,
--26776974, -2756832, 2415919, 15202574, 7969849, -14057428, 114354, 1617055, 24091008, 1329829,
-8010114, -7320772, -4261682, 3504157, 8152385, -964757, -6569690, -13294534, 2391223, -5031554,
--8749922, 4543539, -5957120, -6561100, 9649718, -7358353, -10130217, -14671071, -12486544, -2388539,
-4336307, 64425, -10765872, 9419937, 23890756, -59210420, -53983980, -47558172, -30081950, 11886322,
--12504797, 60175176, 16362215, -6925098, -13562970, -8123931, 17485886, -39906152, 46476376, 60589640,
-24577950, -4182761, 48570176, -15826418, 29474214, 54989540, -9870909, 2537789, 10646687, 73330128,
--18495202, -5206037, 44123272, 16099685, 14326937, -12671764, -44817448, 2530810, -35489852, 16438987,
--44033080, -52374980, -450972, -3576097, -35990752, -2539400, -17435420, -37691024, -29479582, -48998596,
--2179696, 48686140, -15633681, -10130754, -45400488, -25074556, -16669305, -16319265, 15475841, -11871826,
-82228760, -20180978, -1085553, -30746598, 62051540, 50191524, -36003636, 40662604, -14478872, -61022896,
--10763725, -6590628, 12670690, -14817637, -13695040, -8398272, -24458766, 6229313, 30184494, -36581312,
--5134634, 9476308, 6200322, -42374148, 26922466, 18172006, 62221192, -27435714, 17004312, 25428354,
--1662689, 6375879, -916976, 8240432, -7030862, 19377282, 8438000, 15550466, 13837311, 435402,
-14245870, 3770981, -5527623, 14439680, -1061394, 1847373, 1493038, 9872519, 7635915, -11862163,
--8917963, -14872935, 21447456, -15336254, 3029563, 12566537, 5393942, 23354422, 20456930, 35152160,
-24322936, 19665044, 1184337, 12704513, -19060528, 16595217, 12690018, -4949413, -18347564, -34833796,
--13553843, 9183714, -19253802, -7859790, -14055817, -34166464, -29232084, -14479945, -21832392, -13649943,
--18838264, -24445344, -25312926, -8628052, -7490960, -12050068, -18683108, -10973105, -16718160, -12257837,
--13703093, -4560182, -6568079, -5917928, -7117298, -6387690, -9249212, -5163088, -18581640, 24885040,
-104487968, 12195560, -65514896, -16246251, -23169202, 5046587, 32613298, 58655296, 16750909, -49192408,
--950262, 34086472, 7393250, 770410, -1538672, 8917426, -4715337, -5952825, 40475236, 25402584,
-22601728, -34395172, -22351010, 23452668, 9043591, 13856638, -11962558, 4336307, 45090716, 1083406,
-38227892, 20122996, 20841866, 37402724, 5388574, -19834696, 4562866, -22719304, 5668283, 15835544,
-3987877, 61139396, -20449414, -39417600, -38038916, 47212964, 21731460, 25138444, 17139604, -27072252,
--34014532, -20715702, -1228898, 10255845, -7492034, 16633335, 31222802, -2196876, 22617298, 20567524,
--31781684, -6337761, 8942659, -14926622, -13506598, -15674483, -52385180, -8929237, 22512608, 1894081,
-45533632, 30320858, -22259742, 16029892, 126165, -15309948, -12950937, -25431038, -56633440, -30291330,
-2166811, 862215, -12652974, -3546569, -6025839, 17902498, 18719614, 9584220, -3585761, 1175210,
-14147085, -7321309, 8814884, -25704842, -12268574, -3599183, 13469017, -3806415, 5202816, 8636105,
-8616778, 851477, 24211268, -19921668, -17880486, -18152680, 12519830, -11922292, -18668076, -18607408,
-12677133, -6471979, -13660680, -7467875, 9476308, 1968706, 13974213, -24324010, -15863462, -3335042,
--1761474, 4123706, 10830297, -5874442, -9630390, 15307800, -8556112, -10720238, -8988293, 14691473,
--4293357, -9008694, 4414153, -1850594, -8582955, -799938, -11389180, -8104067, -5164698, -1768990,
--3637301, 1419487, -2934000, 82678, -1082869, 716723, -5811091, -360240, -2148558, -273804,
--3255048, -62277, -5091684, 467078, -3877819, 336081, -3296924, 321049, -1396401, 1210107,
--2267206, 519691, -3026341, 12348, -3240553, -866510, -4192425, -593779, -3076270, -783832,
--2767033, -638876, -1737314, -743029, -2878165, -489089, -1251983, -237834, -1704028, -77309,
--2339684, -280247, -1575716, -784368, -981937, -636192, -1603633, -455803, -1211181, -1102196,
--729071, -566936, -1012002, -377957, -969589, -6983617, -24307368, 1739999, 83454976, 20071456,
-35704064, -18327162, -74075840, -39244188, -54263152, -19776176, 38222524, 84169544, 39097088, 8358007,
--39521752, -39344584, 27919972, 41310068, 22078816, 50411640, -1153736, -34830036, -48302276, -25130390,
--6586333, 37171332, 5720897, 21021180, 20746302, 2230699, 52177948, 34770444, -2919504, -5996311,
--46127948, -12581033, 22012, -118648, 28041842, 47164648, 30562450, 22080964, 46337328, 25082072,
--45988364, -38885560, -10770704, -30711164, 32465658, 20270636, 47538844, 35147864, 42174968, 11095511,
-8332774, -34846680, -34272764, -34237332, 12771622, 15831249, 985695, -5566278, 74403328, 17506286,
--3958349, -7986492, 51298016, -54562728, 12359842, -102933184, -21677774, 24439974, -34529388, 32212254,
-19940996, -530428, 74345344, 33686504, -40446244, -83734144, -38656852, -38500088, -19218368, -14960982,
--9553081, 35112968, 24101208, 47731044, 7010997, -36942624, -23586886, -38713224, -33911452, -35896800,
-16564615, 2230699, 16401943, 19753092, -8633958, 18191334, 11360188, -14462229, -384400, -15909096,
--3592740, -33177548, -32810328, -13776108, -13563507, -459025, -30644592, 15933255, -1050120, 4861366,
-10190884, -22334366, -42841224, -40967008, -862752, 7711614, 10430865, 25202868, 7841537, -14225469,
--23509578, 7208566, -8080444, -13438953, 6310381, -119384520, -72192496, -40111236, 35506496, 9510131,
-162694432, 172609360, 105664784, 191458368, 157327872, 165532864, 115457312, 139977280, 114410416, 1617592,
--53896472, -77961712, -74036112, -156113472, -186343600, -195622336, -135817600, -107627048, -41735808, 6955700,
--54739360, 33214592, -69104952, -25645250, -4344360, -22010096, 16900160, -64315524, 88144544, 14474040,
-80391048, 50872276, 30320858, 20380156, 44668196, 28321552, 45799920, 103909752, 99657200, 78623672,
-97401808, 122196648, 112113680, 104817600, 193642352, 67280664, 136372720, 176667568, 122163904, 160429920,
-85856936, 114169896, 90058488, 107139032, 116895592, 42634528, 75835160, 56688736, 71004936, 67791224,
-19077170, -13871134, -73614664, -27907624, -98354216, -86814176, -145681536, -165876464, -166155104, -351912992,
--297200992, -319987424, -316638400, -370377568, -373796384, -231253920, -268156288, -200403168, -236552848, -180594240,
--170225664, -148993488, -148671904, -86150064, -37489696, -54989004, -54770496, -45528264, 8941585, 70666704,
-37590628, 147844592, 128107600, 187028640, 193133936, 177332752, 222504544, 205272592, 238769584, 185783648,
-228462736, 241082416, 270541600, 235679344, 141533136, 140538848, 141366160, 142544592, 132476656, 92199528,
-87331184, 35435628, 25957172, -3813394, 4635344, 16865262, -48468168, -72948944, -77669112, -49035104,
--42195368, -81222128, -92899072, -109922712, -78565688, -101880920, -92745520, -79727480, -83905408, -87261928,
--85525144, -23619636, -19656992, -11857331, -18693846, 9898826, -1969779, -3438658, -17435420, -7825431,
-7204271, 10196252, 4879083, 14689325, 12035572, 18049600, 1626719, 1876364, -1473711, 8926016,
--681826, 2204929, 1800128, 5888400, 1277753, 1185411, -7686918, -220654, -1375463, 1868848,
--4836133, -788663, 202937, 2099165, -3825742, -6979, -2946348, -535260, -6324340, -3790846,
--4212289, -840740, -6054830, -4639102, -9749039, -3193845, -3563749, 140660, -4489315, -5297842,
--10674067, -9229348, -12710419, -7653632, -10162429, -9287330, -13991930, -10663330, -11245835, -6436009,
--8775155, -5345087, -7621957, -3775813, -4050691, 1909113, 3398393, 8987756, 7508677, 11869142,
-11892228, 18670222, 19341848, 20696374, 19800336, 22946400, 20059108, 21065204, 17728552, 17413944,
-12492986, 11454678, 5028870, 4989142, -250182, -1066763, -5357435, -3964792, -6171868, -4177930,
--6397354, -3896609, -5478231, -2580202, -4044786, -1175210, -2981781, -365072, -2284923, 224949,
--1702418, 750546, -1279363, 1044751, },
-},
-{
-{
-5495411,
-107911, -2041183, -466004, -4917201, -3379603, 2188286, 194347, -3094524, 3853660, 2585570,
--834834, 237297, -522375, 3105261, -4303021, 1620276, 3226594, 2850248, -6192269, -4335770,
--3074660, 4167192, 1010928, 1365263, -1721745, 4445291, 1671816, -1093606, 122407, -1256278,
-876173, 1671279, -980326, -1267552, -3723200, 3978750, 6618008, 791885, 4206384, -768799,
-853625, 1518808, 1834488, -5004174, 361851, -5228049, -1193464, -731755, 1658394, -2631741,
--76773, 1158567, 537408, -3043521, 130997, 357556, 2510945, -3236258, -4063576, -537945,
-5541045, 8881455, 30602, 1464047, 629213, -1889786, -5317170, -1345935, 3732864, -1690607,
-3718368, 1446867, 3787088, -193274, 1483374, 1347546, -3165928, -4292820, -434865, 1638530,
-2491618, 1211181, 1125818, 753230, 853088, -1462436, -2328946, -1588064, -1257352, -600759,
-68719, -871342, -96637, 802622, 1296006, 1137630, -151398, 94489, 781147, -1611,
--903554, 2574296, -5616207, -1210644, -5328981, 3103651, 289910, -2379412, 11197517, -4343823,
--8112657, 666794, 3681861, -628676, -6117644, -1675574, -2688113, -941135, -2928094, -893890,
-4121558, -240518, -2774012, 4839355, 652298, 4702453, -1288490, -1090385, 1737851, 172872,
-2032593, -819802, 4337917, 7223062, -2026688, -4769561, -3583077, 3010235, -58519, -10990821,
--1098975, -4348118, -1687922, 5458904, -3823595, -2814814, 3679713, -2384781, -581968, 5011153,
-1662152, -3856344, 1703491, -2762201, -6570763, 2139968, 2512019, -4897874, -2914135, -1376537,
--2129230, 10201, 2076617, 3438658, 5075578, 5783711, -1413581, 643171, -2306398, 2527588,
-1527398, -1214402, 2352568, 3737159, -3558917, -1733556, 548682, 129923, 1372779, 4285841,
--577136, -1072131, 3788161, 622770, -2700461, -1603097, -244276, -1570347, 1130113, -615791,
--1510755, 663036, -1708323, -1250909, 787053, -1612760, -1174137, 111669, 1071594, -2010045,
-199716, -440234, -761283, -935229, -131533, -1553168, -497679, -1483911, -9034464, -4620848,
-2804077, 3991098, 1585380, 4332012, -3701188, 4535486, 5610838, -1589675, 6207839, -862752,
-4578435, -2184528, 162135, -1960653, 5849746, 2257005, -213675, 5188858, -2749853, -2218888,
-3833258, -9060770, -1551557, 479426, -1902134, -8075613, -4900558, 3329674, -3134789, -2115808,
-139586, 6292664, -1490891, -4427575, -324270, 1610076, 3590593, -554588, -5693516, -3698504,
--1027034, -2942053, 976031, -4989679, 2498060, -4694936, -6858526, 209917, 2440078, 2789581,
--2175938, -1591822, -4491462, 5835787, 3407520, 806917, 87510, -171262, -1956895, -1072131,
-2005750, 2488397, 8849243, -1000727, 2250026, 572841, -234613, -4324495, -3251827, 5972689,
--2540473, 583042, 1515050, 860604, -907849, 4514548, 271120, 161061, -4871567, 4735739,
-2690797, -1835562, -1058173, -534187, -1391569, 652298, 3451543, -48855, 1391569, 1032940,
--445603, 791885, 1800665, -185220, 37581, 542777, 858457, 707596, 1044751, 1827509,
-720481, -1340030, 1442035, 652835, -949188, -771484, -122407, 211527, 27380, 2218888,
-2672544, 2435247, 5738613, -3802657, -5739150, -4591320, 2859911, 6393059, -1224066, 4899484,
--4384625, -5273683, 4329864, -2189897, 409096, 1639604, 5433671, 2040646, 8653822, -3784403,
--4684736, 2035815, -2617783, -2420751, 4881231, -7691213, -4794794, 772557, -1538672, 3505230,
--2665027, 964220, 6132140, -5761699, 4246649, -3479461, 2731062, -3260954, -983011, -530965,
-6352257, 1199907, 169114, -4699768, 170725, -5592585, 2033667, 1369021, -3793530, -100395,
--1607928, 9660455, 1238024, 606664, -8458938, -4935455, -7145752, 5513665, -3674882, -415001,
-2845416, 12321187, 8640937, -3501472, -7662222, -3181497, -6663642, 6949257, -1410897, -1948841,
--3125126, -2048163, -648003, -3209414, -2187749, -554588, -2662343, 1832340, -1887638, 2578054,
--9677635, 629213, -875100, -3058017, -1506997, -3246459, -731755, -5063230, 323733, -2114198,
--258235, 3032247, -1058710, -1104344, -2244121, -2419677, -765578, 658204, -230854, -231928,
--954557, -396211, -1112933, -190589, 144955, 569620, -820876, -875100, -1246614, -1067299,
--980863, -1584843, 540629, -534187, -130997, -1610613, -4788889, 3417720, -4958540, -9024800,
-9200894, 4059281, -9511742, 9506373, -1469416, -631360, -13395466, 7943542, 5410585, -10960220,
-3306051, -1868311, 4190814, 882616, 4818417, 2978023, 1277216, -5135707, 536334, 1793686,
--6633040, -2924336, -7839389, -1425392, -4850629, -2699387, 957778, -6257231, -2219961, -9187472,
-3506841, 836982, 844498, 732829, -3864934, -8007430, -2422362, 2724083, -1231045, -755914,
-8368207, -12399571, 5236102, 6230387, -860067, 327491, -2346663, -1044214, -3945464, -6161131,
--4103841, -4869419, -3161096, 2990908, 1741072, 2654827, 4207994, -1062468, -2172180, 5866389,
-11385958, 7929584, -126702, -9725417, 2696166, -1552631, 1461900, 10155987, -26307, 10231149,
-9233643, -1334124, -3045669, -2544768, 755914, 815507, 3461744, 10373957, 2818572, 342524,
--1043140, -6550362, 798864, 1924145, -2166274, -393526, 355945, -158914, 1227287, 834834,
-760209, -887448, 1284732, 1084479, 1148367, 1212791, -3492345, -637266, -2506114, 927713,
--1956895, 754304, -551366, -979789, -2099702, 323733, 532576, -3148211, -975494, 644245,
-88047, 14436996, 3812320, -2676302, -608275, 4376035, -1431835, 13982266, -1399086, -2257005,
-17933100, 17180, 9114994, -3447785, 343597, -872415, 1563905, -2376728, 1334124, -374199,
--414464, -9773735, -830539, -2401424, -1636919, -4128537, 6291054, 2801929, 3782256, -5524939,
--506269, -8675834, -3339337, 1516124, -602906, -5312338, -1511829, 2771328, 6569153, 3821447,
--1956895, -8074002, -183610, 2174327, -1244467, 4129611, 2904472, 5632313, 7995082, -2666101,
-44023, -8616778, -10259603, 9675488, 5344550, -452045, -338766, -423054, -3680787, -4240744,
-15032, 7725036, 4618164, 1320703, 9643812, -7418483, 2243047, -6103149, -4534412, 4006668,
-4316442, 3373697, 14477798, -620623, -6401112, 1027571, -6272800, 2783676, 1775432, 5150203,
--2738579, -19864, 746251, -4933844, -764504, 3276523, -406411, 772020, -1999844, -1175210,
--216359, 2235531, -1137093, 1373316, -2126546, 103616, -2778307, 815507, -1428614, -1093606,
-560493, 1347009, -1680943, 1819456, 1333587, 2244121, 245350, 1286880, -499827, 743566,
-529355, 752693, -791885, -127238, -734976, -228707, 526670, 1106491, -959388, 383863,
--206158, -7991324, -10699300, 4145717, -9999221, -10737, 11158862, -11675869, 4281546, 5221607,
--3115999, -14408005, 202937, 8406862, -9300752, 5778342, -639413, -4141422, -12064563, -352724,
--8701067, 1530082, -4412005, -6803228, -8464307, 3471944, -1190243, -508954, 8069707, -4888747,
-6809671, -5175436, -2054068, 10402948, 3582003, -5569499, 4288525, 2502892, -4807142, 2529199,
-2632278, -1860258, -2046552, 405338, -2311229, -2757906, 1717987, 1895691, 14186277, -13356811,
-2170569, 840740, -4771172, 9585293, 5473399, -3303904, -10335302, 910533, -1035624, -3134253,
--6518150, -7660074, 9346386, 6042482, 786516, -943819, 4985384, 2513093, -2246805, 3967476,
-2871186, -2599529, 9944460, -3698504, 6088653, -4077535, 3036005, 3112241, 2252710, -311922,
--5512054, 5269925, -4287988, -4489852, -3059091, 1527398, 5369, 643708, -5226439, 2836826,
-2218888, -3330210, 358093, -142271, -1641214, 300648, -1081795, 2522757, -714038, 376347,
-2138894, -974421, -1592896, 1396938, -1818382, 1472100, -310848, -32212, -2094870, -958851,
--51540, -2321967, 2299955, 1279363, 536334, 1500554, -467615, 1018444, -555125, 4712116,
--10787884, 7912941, -4505421, -1996623, -6185290, -4464082, 3792993, -3561602, 3105261, 12097312,
-4160213, 6646462, -15420006, -10217190, -5484137, -3694209, 1687385, -72478, 2680060, -12957379,
-6951942, 2888366, 1749662, 12359305, 226560, -7007239, 11621645, 4565014, -5159867, 2369748,
--6636262, 6097780, 2893734, 8127152, -6947647, -4947266, 2078764, -7044820, 8904541, -8147553,
--121870, 7895224, 7293928, -15038828, -403727, 734439, 1771674, 2485712, 16451335, 3792456,
-1050656, -5028870, -4129611, -8882529, -4785131, 12144020, 319438, -14499273, 245350, 3355980,
--8207683, -9062918, 1103807, -5878737, 2438468, 13310641, 6560026, 5601711, -5432597, -14223858,
-1175747, -2434173, 6558415, -1278827, -11883101, -1448478, 3139084, 3282966, 3248069, -1004486,
-10118943, 1905892, -6383932, 8323647, -581431, 4982162, -132607, -1240709, -4296041, 6152004,
-4265977, 2407329, -3107946, -1225676, -789737, -2073396, 1205812, -10201, -2633889, 1334124,
-849330, -1498944, -1948841, -824634, -1461900, -214748, 1912334, -1908039, 1007170, 2357937,
-2861522, -718870, 1247151, -1493038, -19019188, -5684926, 5398237, 14697378, 2113661, 7620346,
-26131118, 4335233, 4471598, -4043175, -12504260, 7092065, -6055904, 6535330, -1559610, 17273284,
-12606266, -6667937, -14129369, -11250130, 8548059, -7494181, 10475425, 4595615, 3422552, -3616899,
--1364726, 12430172, -2439542, 10969346, 10996190, 5672578, 7717520, -8543227, 8355859, 4494684,
--4459250, 12147241, -5342940, 11035918, 843424, 1245004, -16186658, 9760313, 905164, -3048890,
-8014946, -11294153, -4468914, 6762963, 5541582, -10406169, 1687385, -6657736, -3814468, 10301479,
-1395328, 3107409, -1079111, -11870216, 7976291, 7560753, 527207, 5977521, 2692945, -5259725,
--5513128, -448824, 6338298, -10749229, -379568, 688269, 475131, -103616, 4713727, 6179384,
-12702366, 7123204, 428423, -17840220, -5858336, -6680285, -590558, 1319092, -5004711, -10576357,
--3324842, -4766340, 2794950, 408559, -3008088, 1129040, -3085397, 4915590, -1763621, -2107218,
--2911451, 53150, 1423782, -6361384, 3992709, -4093104, 1660005, -1054951, -2346126, 108448,
--3917010, 1262720, -3534221, -2579665, -505732, -2046015, -1882269, 2178622, 3757023, 2246805,
-3616899, 4704600, -981400, 693100, 23588498, 6888054, 3148748, -8753680, -21223580, 15345381,
-4800163, -14102525, 4212826, -1545651, 3620658, 2961917, -10174778, -21792664, -17040820, 5723044,
-13343927, -2678986, 14007499, -6528887, 10926934, 13305809, 18072686, -4028143, 13351980, -11904576,
-4514548, -6516539, 1597191, 7155953, -324270, -3905736, 3236795, 8992588, -6468758, -12084427,
--12194486, 25435334, 21475, -1332514, -11530913, 11758547, 3814468, -23592792, -13659607, 5208185,
--3348464, -4238059, 9146670, 3034931, 22722524, 12494060, -855772, -13312251, -13036836, -7456600,
--5393405, -15098421, 13818520, -10357851, 10919954, 9342091, -9567577, -12352326, -11909944, -17390322,
-4138738, -396211, -6288369, -7933342, -12760885, -4657892, -12573517, 2511482, 1427003, -4374961,
-1614371, 10111964, -26234734, -10285910, -21429202, 10635950, 7405061, -9299678, -3191161, 4238596,
--4131222, -282394, 4946192, -4114042, -8656507, -1112933, -2580202, -2859375, -230318, -1282585,
--3758097, -34360, 623844, 4378719, -6435472, 1482301, 3317325, -584116, -2753611, -4234301,
--1326071, -820876, 740345, -1602560, -504659, -2663417, 1038308, -1203128, -4192425, 6931541,
-565862, 1928977, -5702106, -12931610, -24124294, -5688148, -6049999, 1089848, -5376226, 802622,
-2871723, -2874407, 10783589, -13760538, -3790309, -13066364, -313533, -6619619, 15174119, 16382079,
-13597866, -18752900, 13469554, -6910603, 10313827, -4046396, 7707319, -6359773, -7577933, 2649995,
--9884330, 6383395, 8280697, -1178432, 5117991, -9565429, -822486, 15688442, -12259984, 423591,
--3379603, -5351530, -9805410, -738198, 16056198, 20500952, -12660490, 6087580, -1254667, -12693776,
--12435541, -13922136, -5913096, 26017302, 16189879, -5028333, 8797704, -5685463, 7677791, -14441828,
-8815420, -551903, -7418483, 19798726, 10675141, 3957276, 6923488, 5596343, 19061602, 2373506,
--15407121, 6347425, 12492449, 9371619, -27194660, 16782584, -11298448, -10500658, -4731444, 1651415,
--10405095, 11871290, 26903676, -4653060, 4225174, 13480829, 2742874, -2255932, 3666828, 1348620,
-8170639, 6911140, 4631586, 12671764, 6969122, -3546032, 9102646, 5363341, -3346853, -7720741,
-4832375, -1058173, 5196911, -2195802, 1894081, 3865471, 1998770, -1068373, -459025, 1777043,
-6441914, 1348620, -899259, 1375463, 5073430, -1942399, 756451, 7773891, 3489661, -1961190,
-4733591, 1420560, 1648731, 3273839, 453119, 2729989, -669478, -4778151, -3911642, 3959960,
--1808181, 17306034, 10850161, 46470472, 12667469, -7461969, 2721399, 8075613, -48855, 15688442,
-11208791, 10965052, -13970992, -22629646, 22713398, -12680354, 1953673, 8255464, 24952686, 10419054,
--15466714, 14078903, -14007499, -2535641, -19174344, -24578488, -2998961, 7037841, 6502581, 5328444,
-6142877, -1650878, -17292076, -5996311, 5290326, 6095096, -9247601, 19292994, 11836393, -11042361,
-6096706, 9773198, 3510062, 909459, -10679973, -967978, -7544647, -4005594, 891206, 12139188,
-29185376, -7632694, 2491081, 4672388, 10773389, -10165114, 37051072, -2870649, 3429532, 3461207,
--17072496, -16216186, -26913876, -11004780, 14467597, -4771172, 7192460, 6286759, 25452514, 4458713,
-4432943, 1719598, 20026896, 10117332, -8602819, 18898392, -17026860, 3078955, 16918950, 22396106,
-20109574, 8369818, -11704860, -18459770, -8286603, -5638755, -13910862, -7275138, -7977365, -1782948,
--11700028, 3313567, -4120484, -1498944, -10213969, -785979, -6419903, 10359461, 890669, 2582886,
--9094593, -1319629, -12436078, 1267552, 5129802, 20938, 8869644, 6096169, -104690, 4143570,
--1987496, -5122286, -3375308, -2062121, -10654740, 1408212, 1999307, 2951716, 3042448, -4768488,
-7346005, 8512625, 3463354, -5800890, -4294431, -1630477, 1730335, 4919885, 2341831, -3720516,
--2225867, -1619203, -4672388, -19415936, 11006927, 4938139, 13464722, -3782793, -29229936, 2122788,
--19565186, -17711372, 5322538, 3946001, 8315057, -5349919, 6010270, -1287417, -9947144, 15759846,
--2489471, -5566278, -6328635, -11508365, -9556839, 5553930, -12073690, 2687039, -7709467, -5626944,
--3305514, 15423764, -3045669, 16571594, 10576894, -4728222, 5621576, 5528697, 11996381, -8589935,
--11303817, 1381906, 7056632, 8878771, 15814070, -17790828, -16957068, 6927246, 5621576, 19176492,
--9638443, -1743220, 9670119, -296890, 2692408, -3966402, 12745315, 15679852, 7334731, -2415919,
-10042170, 33275796, -7475391, -10211285, 12461311, -1778653, 19618336, 4322348, 9127879, 10668699,
--3647501, 7336878, 22692460, -6635188, -27390080, 18792630, 5552319, -9448391, 2553358, -42103564,
-27706298, -734976, 17141214, -11404749, 8897025, 795643, -16704202, -16312286, -2282775, 2581812,
--12386149, -433792, 1764695, -2763275, -4211753, -3074660, -13561359, -2755759, -8203925, -419833,
--4366908, -1762010, -4988068, 7524783, -6164889, -5138929, -8840116, -4760435, -10070625, -2405719,
-2019172, -6091874, -827855, -5107253, -5128191, -5935645, -549756, -5030481, -3516505, 954020,
--1656784, 3651259, -3316252, -6972343, -7171522, -625992, 927176, -5033165, -1167694, -2654290,
-1832340, -9995463, -167504, -18402862, -288300, 27136678, 14202383, -36327372, 6052146, -7053410,
-3559454, 5229660, -1290638, -19032610, 3011309, -3470334, 16431471, 30404610, -4703526, 9363566,
-20869782, -1545651, -5329518, -5884642, 8498130, 30348776, -235149, -2790655, 25870736, -11013370,
-7253126, -583042, -45634, -7299834, 9956808, -29092498, 1252520, 8345659, 21139830, 21434034,
--17829482, 107374, 20319490, -1870995, 37515464, -14155675, -17862768, 1830730, 27346594, 4097936,
--20378010, -10390600, 6496675, -747324, 12103218, -30865246, 4042638, 685047, -5961952, -22575958,
--19070728, 4487167, -5552856, -2020782, 1438814, -23477364, -23579370, 4414153, 4097399, -24848534,
--7839389, -16387985, 14425185, -38896296, -14118094, 11868068, -22855668, 12028593, -5919539, -10006200,
-13013751, -4599373, 19376744, 17370458, 4409858, 10509248, -4742181, 1566589, -13139916, 13863618,
--10115722, 7955353, -13786308, 9710384, 1048509, 3920232, -885300, -673236, -7783018, 8906688,
--10310606, 1088774, 1547262, 4672388, -11352135, 5304822, -4399121, -4041564, 4009889, -3257733,
--5160403, 7078643, 3633006, 7613904, 4024384, -1660542, -3640522, -4810900, -750546, 766115,
--5245766, 1152125, -3746822, 1150514, -10897943, -6675990, -4285841, 4918812, 6934762, -4519380,
-1789391, -2505577, 3160559, -9727027, 20573968, -383863, 11556683, -21467858, -1189169, -20342576,
-21296058, 8873939, 27741194, 18892488, -9322763, 3307662, 21989158, 10715407, 11377905, 6666863,
--17981418, -5634460, 9396852, 1068910, 11028939, -23795192, -17005386, 10198400, 35422744, 4391067,
--11232950, 21764746, 6669011, 13457206, 4016331, 2320356, -19434728, -20542828, 703838, -57982,
--34301756, 2407866, -6777996, -2180233, 11299522, -13920526, 8620536, 26811334, 3189550, -44771276,
--31572842, -5610301, -9494562, -11445014, -9664, 7661148, 7349226, -11297375, 12611098, 11235098,
-10879152, -7288023, 9404368, -5435818, -11236708, -3162170, 10459856, -33546916, -7260642, -15388331,
--16967806, -7313793, 4954782, -9237938, -617938, 36017596, 21028696, -14464913, 409096, -41876,
--6005438, -6955700, 3483219, 23998666, 9217000, 3243774, -7311108, -5969468, -12419972, -15096273,
--15326591, -4044249, 2266669, 4367982, -5199058, 3848828, -1038308, -4039954, -1092532, -4662187,
--13440026, -3899830, 127238, -3952981, -11596412, 1007707, -4043175, 12416750, -6281927, 3874597,
--1072131, 4828617, 176094, -10953777, 1129040, 12022687, 2151779, 10759967, -2873333, 5254893,
--3376381, 3144453, -547608, -8280160, -3216931, -1353452, -1164473, -2065342, 166430, -2879776,
--5530844, 7329362, 14439143, -20045686, -4927938, -8599061, 5401458, 41366976, 6672232, -20623896,
-5510980, 18170396, -3838090, 16964584, 21929030, -11455215, 5255966, 10836739, 7614440, 302795,
--3125126, -6941204, 3344169, 12761958, 6761889, 11905649, -18043694, -28125594, -2889976, 12276090,
-11071352, 8760123, -3099893, -25963614, 8381092, 5526013, 38683160, 40399536, 9720585, -30392262,
-21921514, -11693585, -30794916, -7407745, -36459976, -28024124, -12218108, -13602698, -28261958, 4742718,
--11352135, -32633162, -29618632, 8381629, 19334332, -3375844, -24997246, 7250442, 775778, 7820062,
-15829639, 15174119, -19333796, 24824374, 17243220, 1986959, 6961605, 17213156, -863288, 45338212,
--32424856, -15722802, -1046361, -37243272, 30444876, 2019708, 38256884, 11600707, 8586176, -2132988,
-7605850, 15998753, 666257, -15281494, -215822, -8250632, 6088116, 5635534, 10951630, -4784594,
--13937169, -292595, 12986907, 5937256, -8262980, -4340065, 6834367, -9497783, -30065, 2684,
-11921755, 4462471, -6483253, -3022046, -7369090, -12139725, -10334765, -768799, 2272038, -6115497,
--4340065, 1197222, -5960341, 9167071, 4571993, -301185, 5630702, 18711562, -7185481, -3781182,
-2135136, 4894115, -10192494, 10899553, -3731253, -515933, 1889249, 8034810, 14186814, -20491288,
-5557688, -40672804, -10709501, -2757906, -9705552, 44122736, 14224932, -12043625, -27643484, -14392435,
--11241540, -17920752, -12728672, 6526740, -40468256, -9023726, 30103962, -3798899, -3128347, -31360778,
-29888678, 14436459, 892816, -12060805, 12864501, 6002754, -6861747, 13269838, -20795694, -5848135,
--10515691, 5753646, -4691715, -13516799, 15250892, -11571716, 6485401, 155156, -20205136, -12995497,
--2975339, -25837450, -24881282, -33880312, -8464307, 15122580, -11074036, -6444062, 19588808, -23934242,
--19233938, 20662014, 33823, -1508607, 19072340, -20401, -15948287, -9574556, 6567542, 13349295,
--20666308, -6856379, 25587804, 10669773, 24696062, 12394202, -4821638, 12597676, -792421, -33493228,
-10617696, -25415468, 18386218, 2868501, 6863895, -10881300, -28512678, 5724655, -4093641, -25228638,
--9796820, 10858214, -12455405, 200253, 4112968, 7814693, -7925826, 111669, 1395328, -2476049,
-5386963, -4066797, 3097745, 9883793, -1704028, 3164317, 2868501, -6966437, 2273648, 4559645,
-2975876, -5295695, 6910603, 4315906, -309775, -7283191, -13983877, 2559801, -11026792, 8746164,
--11262478, 7143605, 9554155, 75162, 725850, -100395, 5509370, 453656, -4694400, 10645076,
-9001715, -4752382, -2973728, -7070590, -11407433, 30144228, 10711648, 974421, 3835406, -8054138,
-12144020, 18516678, 47413216, 41146860, 3704409, -18328236, 8542153, 23794118, 6974490, 18389976,
-13502303, 8826158, -13885092, -18148922, -21498996, -1662689, 8161512, 15075872, 30838938, 16095927,
-19821274, 11294690, 18385144, 9054865, 17713518, -11911018, 3437048, 33042258, -774168, 25381110,
-6888591, 20493974, -32663226, -5498632, -9547175, -9827959, 7759396, 12596602, 23854786, 38235948,
-32284196, -11578158, 5824513, -42827804, 10470593, 9644349, 37688876, -30054034, 23874650, -7937100,
--20837570, 15866683, 5057324, 13210246, 23644868, -7845295, -30046518, 15417322, -19281718, -26768384,
--12533251, 35369592, -30769682, -44008920, -22013854, -7454990, 23206782, -2609730, -15661061, -30440044,
--22737020, 14259828, -1973001, -769873, 19680078, -21543020, 6191196, 21700322, 8622684, 14456323,
-21307870, -14584635, -7154879, -12361453, 16316044, 3385508, 8441221, 5694590, -14522358, 17914846,
-4564477, 2647847, -7074348, -26749594, -25254408, 2291902, -11979201, -5240397, -11359652, -10186052,
--4289599, 4429722, -77846, -11433203, 14357539, 11719892, -1539209, -12953084, 2152316, 7386807,
--9004399, -4375498, -5142687, -163209, 6240588, -3125126, -6206228, -5359046, 4406100, 3345780,
-7027640, 8392903, -4490925, -4138738, -5113159, 4835060, 5505075, 29584808, -9236327, -32948842,
-2442226, -13827647, -46790448, -23850490, 61696668, 8499740, -27649388, -30626338, 3588445, 443992,
-12867722, 15882789, -21369610, -14388140, -34181496, 7907035, -12294344, -8330626, 52649856, 11188390,
--7088844, -54248120, -3325379, -28999082, 28845000, 35342212, 3893925, 27485106, -32273458, -12832289,
--20319490, -4901632, 53787488, 66693324, 10855530, -17866528, -23638964, -48237316, 862215, 6192806,
-58472760, 32479080, -8304856, -95820184, -49402324, 8217883, -8977019, 84109416, 28424094, -40401148,
--16572131, -72105520, -22581864, 2527052, 47390668, 48642116, 54863376, 2599529, 13190918, -5742372,
-4972499, 67192080, -24533390, 49362596, -11685532, -50662360, -14900852, -53701588, -16979080, 70370352,
-32269164, 50258096, -16358457, 39424580, -43807592, -6991670, 10788421, 21040508, 42091216, -14053133,
--593242, 2689723, -3637301, 6514929, 11474542, -11890617, 2155000, -12501576, -22394496, 10297184,
-18822158, 10381473, -2042794, -13566728, -30056718, -29867202, -15431817, 10235981, 28376312, 15880642,
-22043382, -29340532, -38216620, -29665876, 3748970, 33943128, 37967512, 28981902, -16822314, -73403672,
--46834472, 1574106, 37455872, 80064096, 31412854, 6726993, -35927940, -47772920, -16187732, -15082315,
-42362872, 46466176, 17796196, -2554969, -39662948, -29931090, 9698573, 14046154, 34599184, 16772921,
--17053704, -12094091, -20512226, -9796820, 10481868, 9293235, 10623065, 13127568, -2254858, -3598109,
--42487428, 47144784, 269509, -12513924, -73339248, -19971062, -19661286, -33349348, 71384504, 592706,
-32094144, -48824116, 27220428, 22523346, -21687974, 14086956, -4000225, 12579422, 202400, 36268316,
-13074954, -35479116, 21553756, 17468168, 97174, 24453934, -17964774, -9466645, 31077310, 21508122,
-20771536, 10146860, 18102750, -53372484, 46705084, -26839250, -16788490, 10069551, -37121404, 54458036,
--15295989, 5390721, 39611408, 1308891, -5779416, 21369072, 22116398, 38574712, -9210020, -35883380,
--36318244, 4037269, -12976170, 16910896, -21880174, -10757819, -14743012, 10932302, -68434400, 1122597,
-51189568, 14113799, 20971788, -1906429, -5390184, 13448616, -17903034, -20720532, 13011603, 7121056,
--22123376, -24813636, 94836096, -10197863, -30539364, 8637179, 44571560, -1192927, -34711388, 14432164,
--6331856, -13180181, 28774670, 36295696, -26300770, -43349640, 10040560, 10508174, -9786620, -25898652,
-1522029, 13157632, -3762928, -4151623, -1488743, -4407710, 7197292, 7808788, -8682276, 1057099,
-4130685, 2026151, -5126581, 2079838, -60130, -11933030, 8897562, 3791383, 16993574, 8407935,
--6118181, 6941741, -3069828, 9975062, -461709, -2457258, 13908715, -3274376, 9607305, -2618320,
--10499048, -806380, 12545599, -3322694, 14246407, -13123273, 17824114, 4277251, -12386686, 5464272,
-525597, 6625524, -1879585, -4919885, -1030792, 4426501, 14099841, -37022620, 13423383, 57549876,
-91532192, -40630928, 30093762, -60501056, -17351132, -36971080, -4600447, 55722904, 59861108, 46959024,
--1064078, -38007240, -22386444, 20273856, 1983738, 10044318, 31521302, -820876, 15926812, -39790724,
--9617506, -23108534, -27382564, 15068893, 13227426, 649614, 28363964, -23864986, -340376, 6082211,
--32840930, -1106491, 2867428, -21263846, -7422777, 7741679, -13540958, 31256088, -9718974, 47435768,
-36550708, -23597088, -6010270, -32738388, -36688148, -48518100, 16070694, 22200686, 65293168, 49236968,
-23664732, 31264140, 6627672, -35715876, -22926536, -20033874, -23622320, -5217849, 14230300, -1359894,
--16012712, 4299799, -16151761, 10545218, 24781424, 4678293, -24456080, 19639812, -11356967, -12800613,
--24453396, 13030931, 11879343, 5731097, 3816079, 57070452, 44334800, 35697084, 6805913, -8227547,
--47555488, -10058277, -4279935, 47588776, 28008018, 12466143, 15153718, 41248328, -5760088, -16288127,
--21423296, -18504330, -7946763, -4043712, 4575751, 638340, 1132798, 21506512, -1636919, -12595528,
--6962679, -4205847, 1318018, 10748156, 19925428, 8536248, -1528472, 12000675, -18836652, 7929047,
-19031000, 7627862, 36648420, -14412837, 1154809, 6361921, -13984950, 4158065, -22783728, -946503,
-9247065, 579284, 10623065, 5844914, -1671816, -282931, -3534758, -369904, 5712844, -6225018,
--99629816, -56693568, -33673616, 57530012, 26042534, 152055264, 141695808, 147659904, 148116240, 159964448,
-111466752, 59090160, 84242560, 51567524, -26058104, -46632072, -73427832, -140927536, -128137128, -131635912,
--96489128, -96582544, -72662792, -59163176, -32428076, 3716221, -56710748, -28170690, -12350178, -8388608,
--31039728, 8251169, 37126236, 42950748, 15083925, 50655380, 63181116, 16254841, 11815992, 13049184,
-62054760, 65847756, 81843824, 92858800, 80160192, 92209728, 138712416, 56902948, 108121504, 148969872,
-94772208, 113148768, 87891136, 44741212, 52166136, 58911920, 51282448, 71094056, 68924560, 43574052,
-7606924, 21791054, 40251896, -2325725, 3892314, -19532974, -23656142, -69901664, -32472100, -121322088,
--153617552, -122124712, -140250544, -189429536, -184022176, -108413024, -205451904, -185438432, -170323904, -191462656,
--162617120, -123230128, -155881536, -113927768, -32573032, -75659608, -94646048, -36992552, -38039452, -30433602,
--34628172, -14936286, 8209830, 19231790, 36326296, 48377436, 54410256, 62463856, 63529008, 91105384,
-54784992, 107318888, 119145080, 57133264, 110571784, 106077640, 66247724, 81231792, 117017456, 80155904,
-132209296, 100470560, 125277752, 88282512, 79267920, 83147344, 76735496, 60887604, 68874632, 60604672,
-46972984, 35913980, 34154116, 28337120, 11151346, -9550934, -8391829, -5737003, -43425340, -69110856,
--67138928, -68184752, -74896176, -68870336, -77496776, -55952688, -58488328, -47590920, -36050880, -28045600,
--32283122, -31396748, -24658480, -17442936, -19481434, -24896852, -13947906, -7675107, -15295452, -22257594,
--13764833, -10359461, -13959181, -16862578, -8163122, -1174137, 4849555, -214212, 3379603, 10998338,
-11212549, -1090922, 3333968, 7406671, 4938139, -1600949, 1415192, 4003447, 3063922, -3249143,
-187905, 2680060, 4547297, 2450279, 4648229, 915902, 2747705, 5120138, 9188009, 2951716,
-1758252, 781147, 3065533, 819802, 2236604, -123480, 1125818, -2683818, -4330938, -7386807,
--2957622, -4794257, -3964792, -6763500, -1947231, -3599183, -2213519, -2121177, 2818036, 865973,
-2314987, -579821, 4716411, 4029216, 7420093, 3398930, 8617315, 9112847, 11089606, 6109054,
-10105521, 9527848, 9742596, 5087389, 7626788, 5652177, 8081518, 3922379, 4998805, 2237141,
-4919348, 603443, 2341831, -515396, 1217086, -2415382, -983548, -3289408, -992674, -3783329,
--1522566, -3686156, -732292, -2981781, -195958, -2371896, 531502, -1712618, 1080184, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
-10821707,
-521302, -665720, -413927, -800475, -5559299, -5552856, 5318244, 1334661, -3243237, -4842039,
--2394444, -3647501, -6410239, 8199093, 948114, 3001645, 4025995, 11791296, -338229, 1925756,
--2865280, -992674, -2211908, -7601019, 1672353, -2288681, 720481, 5372467, -2135673, -469225,
-1123671, 617402, -1298154, 303869, -7103876, 1522566, -202937, -2481417, 2179159, 1071058,
--4791573, 7568269, 231928, 1137093, 6958384, -2655901, -3049964, -6833830, -3522410, 4817880,
-268972, 5132486, -2515240, -5578089, 2423435, -5194763, -2379412, -10081899, 4141959, 3608310,
-2134599, 3112778, 6931541, 1864553, -3082176, 3815005, 5753109, -3721589, 2835752, 38655,
--1245541, -1901597, -1582159, 3954591, -812823, 4382478, -2209224, 1795296, -1372242, 1629940,
-3126736, -1649268, 1125281, -1120450, 2523293, 2126546, 1722819, -817118, 583042, 127238,
--1439351, 767189, 2466922, 498753, 824097, -1411434, 958315, -743566, 560493, -1068910,
-229244, 1486059, -4308926, 1196148, -2683281, -5359046, -571231, -6338298, -7784092, -4845797,
--3750043, -8494372, 303332, -3037616, -1758252, 2675228, 9059697, 881005, -2200634, -994822,
-1424855, -128312, 3741990, 6509023, -583042, 7303055, -871342, -422517, -904091, 4183298,
--5494874, 903554, 627602, -1286880, -345208, -3206193, -5458904, 7509751, -2568927, -498753,
--1360431, 3345780, -3577171, -2995203, 1268626, 1163936, 5178120, -3513283, 4260071, -2447058,
--4322348, -278636, -1801202, 1226213, 2310693, -32212, 3007551, 1504849, 2186138, -2811593,
--3401077, -5532992, -4135517, 588411, 6659884, 907849, 5405753, 1473711, -2814277, 3797288,
-1752884, -3965329, 7052873, 1246077, -6675990, 1803349, 3001645, 666794, 1989644, 1801202,
--4731444, 1790465, 1639067, 1234266, -282931, 3544422, 1157494, -816044, -1148904, 48855,
-1380295, 34360, 1878511, 15569, 85362, 1163936, -456340, -958851, -670015, 265214,
--923955, -906238, 1212791, -36507, 1165547, 1103807, -282931, -20401, -7878581, -7091528,
-1539746, 744640, 5942624, -4615479, 6111739, -3147137, -1331440, -9605694, -591095, 558883,
--3256122, -649077, 5135171, 4744865, 7263327, -1855963, -1093069, 4433480, 2135136, 3970697,
--9824201, 9646497, -2091649, -234076, 1551020, -1292248, -71941, -976568, -669478, 5938866,
--174483, 7828652, -1364726, -3360812, -6602439, 658204, -2991445, -2733747, 4560719, 3411815,
-4767414, 41876, 585726, -7150047, -5076652, -196495, 6395207, 2092186, -832150, 2019708,
--2676838, 6694244, -374199, -6013491, -7485055, -2795487, 8367133, 6203007, 6459094, 2879776,
-233002, -7136625, -3143916, -1116155, -4111894, 4196183, -747861, -2088428, 3685619, -10110890,
-2980171, -1403381, 2363843, -890669, -2865817, 4427575, 1713155, -4847945, -5037997, 2449742,
--1313723, 2874407, 804233, -2251637, 1548873, 1792612, -85899, 629750, 2147, 119185,
--841277, -111669, -1387274, -81604, -1208496, 1886564, 1086090, -1602560, 758599, -482110,
-528281, 435402, 694174, -1217623, -972273, 258772, 738734, -2157684, -1165547, 1946157,
--2203318, -4399121, -665183, -3418794, 1593433, 5398774, 2188823, 141734, -2167885, -12720083,
--8297340, -323733, 3722663, 4387309, 310848, 846645, -1732482, 4350265, 2005213, 3476239,
--5466420, 5188321, 3063922, -6002217, 2288681, 5412733, -242129, 1717987, 947577, 4904316,
--3789772, 2892661, -442919, -713501, -4675609, 244276, 5129265, -3277597, -2280628, -4479651,
-6011344, -624918, 1220845, -4708895, -13237626, -3920768, 2018098, 1184874, 4979478, -3580929,
--2120103, -2058900, -822486, -4316442, 200790, -3900367, 8784282, 3026878, 7178501, -7239704,
--1349157, -3025805, 6732898, -2066953, -1157494, -5583458, 3513820, -151934, -3635153, 5636071,
-1831267, 656593, 6580964, 1357210, -5629629, -832687, 766652, -1585917, -1848983, 8053,
--4767414, 9580461, 4041027, 1364726, 6071473, 2568391, 2448668, 4371203, -1179505, 3694746,
--2053531, 611496, 468151, 193810, -1028108, 644245, 373662, -381715, -564788, -650151,
-548682, -518617, 130997, 3162707, 423591, -118648, 36507, -66572, -339302, 2506650,
-746787, 1619740, 202400, -1641751, -310848, 3579855, -2858301, 2288681, 173409, -1411434,
-5974837, 4620311, -499827, -8154533, -10976863, -8409546, 3098282, 52613, -4758287, -1184874,
-523986, -1027034, 12284143, 2176475, -8924405, -2314451, -2685428, 500364, -4212289, 7018514,
--5228049, -6767258, 6354404, -2624225, 1730872, 1750736, -2935073, -7973070, 1053341, -4220342,
--3797288, -3872450, -505196, 6315213, -877247, -1353989, 9228811, 1760400, 1404991, -11857331,
--1339493, 6425271, 7436736, -4050154, 2013803, 1086627, -11769821, -1505386, -724776, -1129040,
-2961380, 204011, -6600828, 932008, -5277441, 5133023, -1794760, 6587406, 1301375, -7400229,
-3315178, 14103062, -5444945, 198642, -10450729, 2609193, 8799314, -15686294, 2255932, -1044214,
--1358820, 3995930, -2536715, -4037806, 7405598, 7151121, -6104223, -663572, 4642860, -1982127,
-1105417, 2262911, 1384590, 528818, -1770063, 4025995, -88047, 2660732, 126165, 3607773,
-2419140, 2307471, -166430, 844498, 3946001, 508417, -784905, 1464584, 1245541, 552977,
-3286724, -1721745, 1063541, 609349, -697932, 325881, 1206349, 909459, 426812, -219580,
-175020, 10685879, 1173600, 4871030, 7336341, -9069897, -2962454, -6885907, 3404299, 4227322,
-7983808, 15858093, 2343442, -11829951, -1248225, -2859911, -1369558, -5027259, -105764, -424128,
-5815923, 4884989, 1599339, -265214, 118112, -1684164, -1489280, 6967511, -2335925, -746787,
-4970351, -472446, 2882997, -339302, 6360847, -4771709, -9895605, 12343199, -826244, 3063922,
--9266392, 850940, -2892124, 13682155, 2024003, 6293201, -1380832, 5602785, 3547643, -12038256,
--2025614, -6677064, -5997922, 1011465, 8517994, 1270774, -1824824, 13562433, -1509144, -7362111,
--5860483, -3757560, 6473590, 20400558, -129386, 5806259, 1363652, -6236293, -1498407, 315680,
-5912023, 9390409, 763967, 7590818, 6506339, -11884711, 323196, -1947231, -383863, 6278169,
--2779918, 1793686, 2790118, -710817, -6282464, -4088809, -9142912, 2397129, 3549791, -228170,
-1330903, 1566589, 1038845, 123480, -2879776, 833224, 1276142, 79457, 1178969, -1230508,
-2359548, 35970, 1159104, -420907, -489089, -917512, 254477, -374199, 374736, 2254321,
-3160559, 2913062, 354335, 956167, 1920387, 1358283, 17717, 1379758, 352187, -32749,
-2383170, -3445638, -15752866, 3684545, -1730872, 5498632, 3274376, 14665166, 2765422, -2606508,
-3321620, 11252814, 12138651, 5217312, 8500814, 8998493, -7036230, -5203890, -11300596, -11898133,
-1148367, 5322538, -10348187, -7109245, -724239, -11645267, -9933186, 5077188, 1410360, -5105643,
--3659849, -7600482, 6236830, 4807679, 10368051, 20169704, -2405182, -5566815, -2323577, -9764608,
--301185, -7584376, -8705362, 10387378, 985158, 1525250, -13389561, 13743358, 2520072, -8382166,
--2918430, 7124814, 279710, 1626182, -424128, 1245541, 3795677, -6400038, 7434052, 270583,
--5552319, -1395864, -9375377, 1526861, -9621800, -8265128, 7027104, 7558069, -7696045, -11815455,
-2829847, -5650567, -1064078, -3084324, 3799972, -3321084, 5079336, 1780801, 6191732, -1364189,
-4570382, 2549600, -10901701, -3655554, 2415919, 1488743, -23085, -5203353, -3199214, -1499481,
-3315715, -1963337, -1992865, 235149, 2610266, 2278480, -344134, -76236, -3288334, -1574642,
-365072, -649077, -534187, 2587718, 48318, -102005, -2480344, 2241436, 464930, -750546,
--666257, -1445793, -519154, -1609002, 2057289, -497679, 820876, -595927, 4031364, -6037114,
--6407018, 7756174, -2333778, -1954747, 4625143, -6652905, -6808597, 7816304, 10678899, 63351,
--566936, 3469260, -9043054, 15438797, -9475772, 1005022, 7518877, -3664681, 7018514, 8266739,
-2836826, -8944269, 9570261, -1547262, 3637837, -7043747, -1227287, -13276281, 4585952, -7942469,
-3072512, -13662291, 8000987, -10024454, -6847252, 5521181, 7896298, 2500745, 922344, 190589,
--8451959, -8028368, -4992363, 20445654, 11341935, -3373697, -19026706, -2825552, 5402532, 10964515,
--6242735, 769336, -13145284, -4663261, -1600412, 3295851, 1958505, -3089692, -214748, 5651640,
--6502044, -489626, -7416335, 3917547, 4878546, 14093935, 6053220, -7037304, 2945274, -3974455,
--10734734, -1483911, 6222334, 758062, 17712446, -10257993, -4939213, 2612414, -9221295, 4586488,
-1480153, -1863479, 8996346, 2103997, 3973382, -53150, 326418, -1525250, 4446365, 6503654,
-1597191, -2032593, 4856535, -2656437, 1522566, -4696010, -1532230, -133144, -6023692, -228707,
--2348273, -1192927, -2345052, -4031364, -1814624, 1213865, 1512365, 922881, -1279363, -321049,
-2647847, -4529043, 445603, 248571, -13652627, -1912334, 2703145, 8094403, 3820910, 10543071,
-1827509, -12417824, 7882876, -10491531, -11398306, 402653, -1103270, 8704825, 10638634, 9942312,
-14297946, 3604551, -14897631, 16325708, 8807904, -6465537, 12423193, -1519345, 1459752, -10858214,
--3852586, -3061238, -4917201, 10569378, -17648020, -3877282, -8320963, -7756174, 1398549, 8582418,
--4067871, -10048076, -10819559, -13918915, -14227079, -7097971, -2459943, 6222871, -11176042, -14321032,
--8572755, -3527242, -7124814, -4625143, 12528956, -6958384, 1141924, 6781754, -11443940, -6665789,
--7723962, 12492986, -5318780, 8176544, 17703856, -1611150, 3946538, 1846836, -5469104, -7013682,
--4904853, 8494908, -1279900, 9710384, 547608, 7359964, 1659468, -12067784, 15064061, -6393596,
--1952600, -12825846, 7915625, 17095044, 2842732, -2206003, 4482335, 2085744, -10893111, -4951561,
-619549, -2450279, -1191853, -4562866, -4605279, -635655, 788663, 799401, 7872138, -792421,
-983548, -3789235, 2980707, 445066, 5914707, 2697240, 2660732, 1243393, -728534, -2432562,
--2168422, -3425773, -786516, -2550137, 1766305, 1032403, -71941, -1740536, -1587527, -1243930,
--552977, 738198, -645319, 3370476, 25282324, 15727096, 11671574, -8471823, -17974438, -5019206,
-11152956, -17281874, -9213779, 197569, 13600014, 9520332, 7955890, -10071161, 7626788, -2812130,
-7624104, -2101850, 19604378, 11537356, -833761, -18051210, -1716376, 13438416, 11680700, 340913,
-23737210, 10537702, -4615479, -151398, 1759863, -2935073, -6463389, -9235790, -1300301, -25673168,
-7362648, -8902393, 1342714, -1044751, 6796249, 9351754, 368830, 2381023, -11264089, 7970386,
--4011500, 16755204, 515396, 2265059, -41052372, -1920924, 11115375, 5521181, 11814381, -4159676,
--11403138, 6253473, 2363843, -9599789, 9120363, 1668595, -8927090, -22549, 515933, 3002182,
--3199751, -15233175, -14976014, -779537, -5305895, 4903779, 5452461, 2078764, 5794985, -18621368,
--6200322, 787053, 4221953, 4291746, -7221988, 5631776, 1481764, -2809982, 2080375, 5061619,
--3347927, 532039, -993211, 1991254, -3407520, -5706401, -1737851, 6405407, -4844723, 523986,
--3586835, 2457258, -1406602, 2153389, 3925600, -639413, -3640522, 2904472, -505196, -4599373,
--2681133, 1398549, 2175938, 53150, -1647120, 686658, -222801, 2528662, -1147830, 5081483,
--1665374, -538482, 3202435, -17410186, -27923730, 4475893, 9709847, 10018548, 267899, 23198728,
--16496433, 5413270, 3208878, -4748087, -14641544, -6215892, -8315594, 9817221, -4298726, -9072582,
--14903537, -1417876, -5492190, -2891050, -11235634, 5965710, -681826, -5310190, 6089190, 7681549,
-9162239, -11905112, 21698174, 1277216, -3093987, -13353590, -12492986, -2585570, -1622424, -13026636,
--13515188, -10430328, 8749385, -6059125, 14495515, 4594005, 24174224, 8247411, 9187472, -3142842,
-12969191, -2296734, 3132105, 18312666, -5581310, 6616397, -22059488, -28147068, 6137509, -1372242,
--17830556, 1068910, 447750, -24299852, 6832219, -7189776, -4794257, -9517648, 9156870, -8895951,
-506806, -1022202, 4414153, -20938, -13276281, 7747048, -1914482, 3058017, -16746077, -23159538,
--20579336, 1099512, -4881231, -23448910, -4928475, 22442278, 11849278, 5172215, 4286914, -10436234,
-343061, -2428804, 1005022, -3464965, -2770254, -163209, -256087, 854162, -33286, -7298223,
--1746978, 1873143, -1363652, 3456912, 5733782, 4765266, -52613, -845572, -2493766, 7578470,
-4387309, 4975720, 4177930, 3035468, -565862, -2937758, -2609730, 5907191, -4598836, 3510599,
-4999342, 1920924, 2466385, 374199, 1478006, -4044249, 366683, -1187559, -3440806, 1631014,
-2306934, 4565550, 16954920, 22275848, -664109, 5987722, 13997298, 11592654, -1199370, -28173912,
-19332184, -1810866, 5254893, -5661304, 9911174, -591632, -12235825, 3556770, 22236120, 3523484,
--14595373, 12987444, 9197672, 6150930, -10970420, 11971148, 8785892, 1185411, 14148696, -5487358,
-3799972, 22925998, 16614007, 833761, 5272073, 11353746, -21469468, -4157528, -1348083, -3177739,
--18802830, 5016522, 5722507, 1285806, -14569066, -20401, -24960740, 1550483, -17824114, -3313567,
-9241159, -7399155, -10769630, -8466454, 5352603, 4600447, -9926206, 4194036, -3548717, 12570296,
--6358699, -6993281, 6484864, 11772505, -1047972, 5276904, 4517769, -27034672, -559956, -1746441,
--13843753, 1713692, 17850958, 5691369, -4905390, -1914482, 13074417, 9396852, 5768141, -3383361,
-20702816, 499827, -17004312, 2594160, 20728050, 10997801, 10588705, 6499896, 1256278, -4773856,
--5698348, 4041027, 3495030, 5224828, 7887708, -1585917, 6266358, 4062502, 767725, -705448,
--462246, 3091303, -2614025, -716186, -2584497, 301721, -1119913, 3394098, -6025302, 1449552,
-2318209, 1059783, 4950487, -8005819, -3296924, 1830730, 1828046, -425739, 5081483, -1362042,
--1382443, -1896228, 796716, 3571265, 3929358, -4221953, 946503, 2631741, -4025995, -2244657,
--2097555, -1680943, 11267847, -25412784, 11030550, -26303990, -30310658, -20287814, 1703491, -17374754,
-16908212, -5622112, -20253992, -1145683, -4853850, 2354716, 4245039, -5269925, -2272575, 13167833,
--3675955, 4739497, -7036230, -7853885, 22064320, -7763691, -2105071, -1117765, 5322002, 12891344,
--26838176, -2314987, 14957224, 13597330, 13573707, 1262720, -4555887, 27522150, 9873056, 8339216,
-11309186, 4485020, -3575024, -297427, 16866336, 4836670, -11286637, 5668820, 30741228, -16541530,
-21358336, 7189776, -31695248, 7252589, 21902186, -2848637, 10053982, -632434, -23936926, 11768747,
-30623116, 1195612, 20941186, -12979391, 18567680, 14542759, -127238, -3244311, 17070348, 8331163,
--21617108, 21448530, -5076115, -5542656, 13688061, -6985765, -7550016, -10335302, 3779034, 607738,
-4010963, -1459215, -4103305, 15966541, -14405320, 2000381, -2711198, -5366025, -11715597, -11988327,
-7076496, -1423782, -7095823, -10762651, -8243116, -15100031, -10008348, -1138166, -6833830, -4848481,
--750009, -8110509, 3482682, -7212324, -6543920, -2431488, 1986959, 1834488, -3148748, -1017370,
--10428717, 3679713, -10957535, 7992398, -2598992, -1316408, -4652524, -3291556, -278636, 12253005,
-6714645, -1935957, 3329674, 8233453, 5071283, -5475547, -2049773, 2844342, -4154307, 6588480,
-1864553, -3426847, 2698313, -10006737, -17003238, 41217192, 20802138, -48654464, -19670950, 4861366,
--7747584, 13703093, 16727287, 17382806, 20470352, -12683038, 38538740, -6033356, 1239098, -12800613,
-14693620, 18941342, -13575318, -16071768, -3049427, -9373229, 1975148, 7388418, 1458678, -10220948,
--3482145, 15481746, -979789, 7685844, 2200097, 18685256, 28699508, 10503879, -13386876, -32298690,
--2406256, -5714991, 3886409, -7690676, 10846403, 17468706, 1888712, -6860137, -14345191, 34725884,
-30898532, -4344360, 15234786, -8615168, -10900627, -34005940, 18927920, -16019691, -3338800, -1293322,
--10251550, 5622112, 21002390, 2881386, -8849780, 9543954, -3939022, -14208826, 21470542, 4012573,
--29061360, 37322192, -25188372, -13939853, 14836965, 14637785, 12803298, -78920, -31059056, -2990908,
-3047279, -2115272, -10007811, 5778879, -5092758, 1925219, 4187593, -13310641, 15331423, 10177999,
-5334887, 1722282, -5874979, -4869419, -10201, 5006322, 757525, 3791919, -2165737, -10383620,
-3342558, -15080704, -4393215, 4395362, -4076998, 7776575, -6558952, -1320166, -5529771, 6131066,
-851477, 7610145, 9497246, 6018860, 555661, -7289633, 5350993, 8251706, -1408212, -1319092,
--8892193, -4369056, 10944114, -3964255, 7484518, -948651, -3720516, 3452617, 3864397, -547608,
--5759015, 10679973, -5542119, -13366475, 1504312, 19072340, 5675263, -25914758, -20758650, -4989679,
-32416266, 3370476, -15547245, -41812580, -11614128, -1916092, 9936407, 28748364, 22050362, -3095598,
-284542, 18905372, 15411416, 697932, 4233227, -56419764, -35550520, -17348446, -27857158, 2401424,
--15535434, 24936044, -5705327, -1978906, -114354, -10073846, -11469710, 18061412, 11275900, 6377490,
--2550674, -8635569, -7707319, 8984535, -20205674, -7597797, 3579855, -7032472, -9838696, 8404177,
--29209536, -40903120, 9725953, 12746926, 15868294, -23896662, -12690018, 13191992, 5020817, -39875552,
--34997540, 2100239, -16936666, -17548162, 6518687, -32220308, 16338056, -12480101, 13427142, 12856985,
--7986492, -18171470, -41929620, -14725832, -12597676, 23509578, -20344186, -13294534, 7175280, 24033564,
-14024142, 108448, -8191040, -2719788, 7197292, -7240241, 24312736, -15090904, -11811160, -5731097,
--2115272, 6662031, -17913772, 10526965, 8084739, -7525320, -12544526, 2896956, -729071, 12192338,
--15666967, -20451024, -5185100, 3216394, -11305428, -1717987, -13670881, 577136, 3333432, -6163278,
-9536438, -2580202, -6759742, 2953864, -4569309, 2776160, -3892314, -14204531, -623844, 1041530,
-13558138, 10634876, -6523519, 53687, -727997, -8008504, -10253161, 4986994, -2601677, -3724811,
-3103114, 16624745, 22834730, -3651259, -30718142, 13916768, -4612795, -12814035, -26491896, 7903814,
-11315628, -39276404, 14817637, 13955959, 35404488, 3199751, -8900246, 2187749, -43376484, -12600897,
--5299990, 551903, 7895761, -14835354, 26524644, 10618770, 32790464, -6622303, 28829968, 18517752,
-11355357, 26294864, 13257490, 17335562, 22290880, 933082, -29382408, -27690192, 5531381, 31586800,
-22746146, -42223288, -1335735, -7208566, -6058052, -4498442, -29348048, 7403987, -20952998, 18644990,
--14072997, 42170672, -11275900, -60719028, -6614787, -20990578, 11882027, 8899709, 17089138, 39237748,
-8604430, -5457293, 21349208, -12835510, 43761960, 7278896, 29204704, 13702556, 2465311, -11276437,
--10308995, 72018552, 198642, -49946712, -10253698, 39663488, -24038396, 5073430, -11231339, 17323750,
-36287104, 20947092, -42446624, -2883534, -41799696, 5604933, -6017249, -24749212, -3201898, -6818261,
--11198053, -237834, -21582748, -23523000, 7750269, 8637179, -1496259, -26312580, 18530100, -23338852,
--36207112, -15461345, 8559333, -9084930, -16354699, -20769388, 3390877, 8495982, -19064822, -14460081,
-6505265, -8469139, -15483894, 12094091, 9384504, -1104880, -2333778, 487479, -3904662, -6382322,
--7037841, 2171643, -14389214, 7929047, -5467494, 2865280, -18192944, 19422378, 9040906, -41660644,
--15025406, -47251620, 7572564, 40818296, -29967598, -28954522, 27698244, 12372727, -46229956, -44668196,
-14611479, 1893544, 6923488, 14606110, -1412507, -13726179, -6322192, 27808302, -19804094, 34442416,
-6113886, -8623221, 7885023, 19706384, 357019, -6489696, -36916856, -16843252, 4572530, -20467666,
-17692580, 25334402, 2287070, 3812857, -26293252, 31405338, -10765872, -14702747, 26409218, -10444287,
-476205, -19098108, -1472100, -13564044, -45504640, 15302968, -4725001, 33676300, 44203268, -1103807,
--7399692, -28215788, -8357470, -8189429, 42079944, -40075268, -27549530, -66123168, 1950452, -27648852,
-7948374, 22312356, -11874511, -3895535, 45197016, 28418188, 20832738, 3057480, 2452426, 33520072,
--36456220, -2080375, 10870025, -4831302, 20738786, 9280351, 86831888, 13186623, -23216982, -1809255,
--15786689, -43084964, -16494822, 1098975, 7624104, -8694624, -8449274, -8556112, -30056182, -876710,
--2126546, -16656957, 4687957, 10354092, -25720412, 1211181, -17332340, 6434935, -839129, -6650220,
--3144990, 1010391, 15741592, 8468065, 1052804, 16522739, -10102300, -2717641, -4618701, 15515032,
-11083163, 7110319, 16836272, 7151658, -11406896, -6167573, -1574642, 7642895, -14447196, -4340602,
-826781, -17224966, 18562312, -5073967, 2954401, 40034464, -29463476, 10241886, -10197326, -14207215,
--14024142, 60440928, -8245264, 29679834, -24107114, 41226316, -14467060, 611496, 22020834, 23795192,
-56642028, 2697776, 9082245, 8321499, -24367496, 29311004, 8851928, -17289928, 28347858, -12002823,
-35755604, 27462020, -8793409, 23878944, 820876, 22282828, 4196183, 37831684, -23467702, 18833432,
--38643432, -9677098, 12528420, 40991168, -2152852, 3228742, 17333952, -230318, -14224395, -49555868,
--30961346, 8349417, -21636972, -1050656, 15206332, -43218108, 25942676, -2017024, 30919470, -15059229,
--29786672, -5259188, 80583248, 18252000, -74228312, 12829067, 18278308, 4425964, 79734992, -5027259,
--59636696, 61138860, -21225192, -4155381, 66600448, -7428146, 43605192, 6898255, -40498320, 1466731,
-68055904, -56271052, 28806346, -34587372, -39347268, 28446642, 16645146, -35699232, -13634911, -22287122,
--12612708, -13157095, 5728950, -21995602, -5151277, 8342437, -22958748, -16289737, 10843182, -26426934,
--7087233, 8874476, 2869575, -6365679, 18816788, -8835821, -7406671, -9836549, -18511310, 8218420,
--12237972, -13571560, -3942243, 1875827, 25272124, -310848, 6526203, -22009024, 1326608, 27231166,
--6080063, -3763465, -3121904, 870268, 979789, 18826990, -11206107, -12412992, -6934225, -19026706,
--22984518, 5276368, -11991549, -9779104, 12961138, 3848291, 8131984, -3820910, -58302032, -5498632,
-10304700, -23152022, -5318780, -63218160, 40555764, 59536836, -25441238, 7604777, -44894756, -135379520,
--24564528, 5269925, 69392712, 56319368, -54955180, -50978040, -49257368, -42382736, -28075128, 34586296,
--4995584, 77374376, 54227184, -16764868, -63642824, -163069712, -103739032, 6325413, 181086016, 135910480,
-26263188, -71600864, -175885888, -182378800, -12018392, 104603928, 164545568, 178100480, 19654844, -58943596,
--72132904, -98258648, -86379848, 4852240, 61733176, 111725520, 78820704, 61002496, -79630304, -100080792,
--115169552, -141153568, 16868484, 166899744, 166695200, 32629940, -58611272, -158563744, -205415408, -70887360,
-17037598, 75745504, 189576640, 68350648, 631360, -105001752, -83983256, -36880348, 43899936, 72644000,
-130430104, 32771138, 68586872, -6544457, -85787680, -72896336, 5005785, 82432768, 92081952, -42650100,
--78362752, -98303752, -23482196, 14754823, 23898808, 13685913, -47706888, -43186968, -16593069, 29883308,
-772557, -683437, 7695508, 23654532, 20822002, 14307610, -7809325, -60369524, -38610684, 3206730,
-31199716, 55274080, 28061706, -17208860, -36811628, -50813760, -30370250, -21180094, -25311852, 55392732,
-59875064, 63684700, 54601384, -26386132, -103004056, -89175336, -46748572, 38631620, 131573640, 125579472,
-7672422, -81559280, -124838056, -114272440, -6840273, 61240864, 59483688, 27192512, 26386132, 29528,
--33195266, -41850700, -50584516, -9192304, 48083232, 56997436, 41795400, 3748970, -38836704, -36971080,
--16478179, 29433410, 21726628, -50476604, 53150, 26752278, -21569862, 29518774, -1673964, -4786204,
--2572149, 6376953, 21554294, -8125542, 25490094, 18197776, 10101226, 12293270, 8449274, -1706713,
--15333033, 24830816, -788127, 15366856, -9293235, 13746580, -4989679, -1336809, 8522289, -11455215,
--13110388, 2426657, -5883032, 20226074, 19002010, -17238924, 8465917, -10035191, 11803644, 831613,
-7612293, 3630858, 10008348, -12098386, 8391829, -14008036, -6725382, -1437203, -2035815, 12376485,
--22644678, -3803194, -9566503, -19219978, -2127620, -7189239, 4371740, 19479288, -6033892, -25567940,
-3853123, 16851842, 31343060, -777389, 2445447, -16469052, -13325136, 15377057, 1002338, -4974109,
-111132, 26499948, 11122892, 8795019, 13647795, 24476482, -27343910, 11422466, -4932770, -39674224,
--5012764, 31838056, -6094022, 28401544, -1547799, 17888002, -20703890, 13269838, -14176076, -3462818,
-27037356, -7192460, 2229625, 1242319, -405874, 10664941, -324807, -3416110, -2604361, -74088,
--2208687, 5688148, 7566659, 12141336, 1027034, -9107478, -4684736, -11973832, 4501663, -12435541,
-6833830, 6106907, -4317516, 8060580, 2086280, -12907987, -37581, 697395, 4089883, -22665616,
-7916162, 5912023, 1790465, 91805, -6710350, 8387535, -12076374, 12667469, -1179505, -695785,
-2963528, -4962298, 9835475, -10552198, 2920578, -5477694, 6081137, -19013284, 47965120, 81512576,
-7423314, -53997404, 18413598, -4435091, 66858684, 30808338, 65733400, -6538551, -30572114, -8833137,
-14940044, 27050778, 21933324, -12487617, 2577517, 11267847, 8936216, 25543782, -17642652, 3993246,
--23955180, -4334696, 843424, 5908265, 13242458, 2425046, -9917079, 19487340, -1316408, -17914846,
-24466282, -4457639, -8039105, 5997922, -3028489, 18283676, 30275762, 376347, 8311836, -10353556,
--5693516, 16856672, 13014288, 13903346, 3386582, -9373766, -18132278, -19531364, -20288888, 16362752,
-18923626, 17654464, 27404576, 28407450, 13015362, 1199370, -24495810, 15067819, -2088965, -23088670,
-28744068, -2372970, 19117974, 9395778, -27579596, 7504382, -7751879, 5735392, 19703700, 3275986,
--22933514, -17028472, -13259101, -24988656, 15696495, -1793686, 26620208, -539555, 4895726, 250719,
--13364864, -9296994, 5596343, -21458730, 7079717, -475668, -3439195, 7389491, -11097122, 6922414,
-5346161, -1197222, -9279277, 12840878, -2605972, 11367168, -18888192, -14666240, -7808788, -7823283,
-9973988, -4125853, -1699196, -2716567, -9074729, -5544803, -5288179, -194884, 18903224, 2217814,
--3863860, -496069, -9805947, 7501161, -5111011, -1227287, -3250753, 8437463, 36507, 959925,
--1038845, -6425808, -3441880, 9241159, -2515777, 6572911, -1159104, 3429532, -5109938, -28552942,
--65011308, 4744328, 89210768, 118767656, 101303248, 70457328, -3311420, 4706748, -52125332, -61282740,
--103879688, -77898360, -83468928, -26594438, 6691022, 27429272, 45172320, 113286208, 93643168, 63633700,
-20170778, -9615358, -41155988, -30057792, -42777876, -53644680, -30360050, -30530776, -38336880, -17348446,
--25334402, 5649493, 17346836, 15196668, 47790636, 44765908, 39090644, 26130044, 29532196, 19139448,
-35432408, 8970039, 30615064, 1728188, -8398272, -53625352, -23795192, -64705828, -75954888, -84239344,
--66636956, -49464600, -17974438, 13127031, 48308180, 52161840, 40531608, 84412216, 67822904, 73169064,
-67132488, 63282584, 24959128, 41055592, -16630650, -40123048, -42747808, -99572912, -100165080, -96122440,
--102972912, -84306448, -29242822, -13888314, 22510460, 57677652, 62144956, 76663016, 91600912, 82349552,
-63603096, 58426588, 42465416, 16350940, -1871532, -34019364, -50906636, -50676856, -58525908, -48484812,
--55070072, -56734908, -48487496, -37178848, -19087372, 2595771, 24607478, 48290464, 44605920, 44634912,
-51929376, 58048092, 44393856, 45098768, 19713364, -20613158, -15583752, -36516348, -47173236, -38810400,
--32452772, -22283900, -28722594, -20259898, 2254321, 6353331, 9755481, 25691420, 22063246, 14522358,
-3287798, 9918690, 9507447, 3262028, 12091407, -7295539, -8662949, -6455336, 4447439, -1017370,
-48855, -303332, -1787243, -8840653, -6584722, -2343979, 8702141, 304943, 3943317, 1676648,
--4942434, -5567888, -3158949, -3806415, 1180579, 121333, 1454383, 1299228, 2029909, -1902134,
-2105608, -1127966, 479426, 1888712, 5562520, 2669322, 6485938, 1168231, -132070, -1556389,
--1404454, -4114579, -375810, -2189360, -1153199, -3153580, -266825, -1472100, 671089, -2884071,
--455803, -5906, 2117419, -1343788, -422517, -2056753, 1153736, 119185, 2778307, 2760053,
-3805878, 1225139, 2491081, -123480, 122943, -1189706, 1217623, -846109, 855235, -763967,
-435402, -2466922, -1672353, -4452808, -2128693, -2601677, -443455, -1707786, 783832, -439697,
-1525250, 427349, 3149822, 1668595, 3381750, 1658931, 3090766, 1318555, 2245731, -209380,
-202937, -2684355, -1382980, -3191161, -1843615, -3696893, -1268626, -2251100, 301721, -311385,
-1885491, 256624, 2110440, 423054, 1921461, 91805, 1635309, -373662, 1122060, -771484,
-727997, -1044751, 649614, -1047972, 668404, -1016297, 721555, -921271, 821949, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-{
-{
-10429791,
-5484137, -584652, 3586835, 943819, 788127, -11341935, -4990752, -5599564, 4393752, -573915,
--3737159, 4066260, 4121021, 308701, 3954591, -1634235, -178241, -200253, -2508261, -1250372,
--5510980, 2859375, -8127689, 3409667, -4260608, 3475166, 6384469, 2966749, -1268626, -1785633,
-4705674, -734439, 175020, 4526896, -4861903, -109522, -1675574, -2743410, 543313, -644782,
-949188, 4638028, 7546795, -2384244, 89121, 6336151, 431107, 1687385, -2371359, -3506841,
--568546, 1087701, -6007586, -1537598, 3063922, 431107, 1074279, 1875290, -906238, -1836635,
--1813013, -2063732, 2253247, 1912871, -1151051, -3389803, -4250407, 2098092, -15569, -3461207,
-3623342, -780073, -297963, 583042, 983548, -1716376, 2144799, -2319819, -846645, 2897492,
--2042794, 1167157, -3419868, -2552284, -1295470, -813359, -272730, 474057, -1414655, -1679869,
--229244, -949188, 320512, -341450, -367757, -446140, 298500, 116501, -417149, -678068,
--479963, -243203, -126702, -360777, -303869, -516470, 423054, -763967, -545461, 627602,
--3748433, -1012539, 16106, -3524021, -3592740, -2132988, 8575976, -6018323, -2493229, -4197794,
--7683697, 2879776, 1302986, 313533, 6572911, 6249715, 6236293, 2033130, -1180579, 981937,
-4698694, -1999307, 2020245, 2394981, -5567888, 7927973, 1524177, 2476586, 5840619, -2234994,
--5848672, 409633, 3955128, -2779381, -1277753, -3710852, 3937411, -85899, -411780, -6460705,
--289910, -771484, 3978750, 2052994, -3560528, 7101192, 2606508, 1490354, 2473901, -1139777,
-3964792, -1531693, 188979, -4928475, -5914170, 4751845, 3701725, 6576669, 634045, 1786170,
--5086852, -7847442, -3866544, -2343442, -2296734, -3616899, -3134789, 1637993, -915365, 2402497,
--2956548, -1114544, 1292785, 1484448, -891206, 4019553, 1212791, -2988760, 6039798, -2353105,
-1856500, 7640747, 1624571, 1062468, -2364916, 122943, -2596308, -3084860, -500364, 1771674,
--34897, 242666, 95563, -824097, -267899, 93416, -760209, 1804960, 1148367, -651761,
--162135, 68719, 472983, 270583, -1183800, -624381, -281320, 149250, 535260, -535797,
--848793, 752156, -432718, 580894, -298500, -456340, -585726, -7383586, -6905234, 4051765,
-908386, 5669357, -8756365, -1221918, -3488587, 951335, 10400263, 5954436, -9117142, 3456912,
-852551, -3785477, -4235912, -5152887, -8396124, 309775, 993748, -3098819, 1478006, -1781875,
-309238, 2538326, 1942399, 5414343, -4740034, 8519068, -5200669, 4950487, 3908957, -3179887,
-2282775, 419833, 3525095, -1408749, 1836635, 3251827, 1072131, 511101, -1312113, 2535105,
-747324, -1124208, 6043019, -7909719, 533113, -4789426, 9520332, 3371013, -8332774, 3239479,
-10886131, -10238665, -4896800, 1238561, -854162, -3880503, 3235721, -1357210, 7243463, -6101001,
--622233, -2015950, -437550, -367220, 6997576, -6504191, -2178085, -703301, -6739341, 3626026,
-2784213, 7252053, 2931852, 6174553, 5543192, 916976, -2267743, 1749125, -219043, -773631,
--1697049, -158914, -2587718, -1025423, -604517, -3588982, 2254321, 188979, -2530273, -426276,
--2057289, 185757, -116501, 1377074, -513249, -815507, 140123, -1159104, -71941, 1185948,
-405874, -268435, -843961, 3273839, -5071820, 622770, -3181497, 3349538, 1219771, -5153961,
-14828911, -9452686, 2974265, 16015933, -11334956, 5248450, -301721, 5213017, -1399623, -9735080,
--2131915, 7970923, 7167764, 1946157, -80531, 4013647, 1974074, 103079, 3340411, 3326989,
--2803003, 4249334, -1211718, 6723235, -5476620, -8471286, 1775432, -7403450, 2514167, 83752,
--2127620, -2408940, -3383897, -5060545, 942745, 1704565, 148176, 1211181, 1424855, -3148211,
--6489159, 5011153, 1101659, 766115, -353261, 7391102, 1462436, 3053185, 7842074, -4914517,
-1867774, 241055, 2334315, 5442798, 4279935, -7271380, -6349573, -1705102, -3649649, -910533,
-206695, -3181497, 1593433, -5838471, 228170, -5622649, 2681133, 2619930, -3261491, -4301947,
-410169, 2216740, 368830, -4961761, 624918, -2884071, 2029372, 1633698, 714575, -1014686,
--1431835, 863825, -209917, -629750, -102005, -1362578, -1127429, -3449933, -901406, 2931852,
-1255741, -987843, -682900, 2008434, -811749, 520228, -1024887, -82678, -321586, -9127,
--1297617, -928787, -551903, -472983, -529892, -633508, 5369, -464393, -862752, -761283,
-301185, 1420024, 461709, 4479651, -1802813, 4037806, -601832, 1913408, -2237678, 91805,
--1402307, 1207960, -573378, -9445170, 7217693, 4306779, 11777337, -7800198, 4937602, -9603547,
--1421634, 5535139, 6401112, -6801081, 2081985, -7847442, 759136, -9166534, 3129421, -6918119,
--8140574, -7659538, 3935801, -6228240, 452582, -7269769, 1110249, 833224, -874026, -5377836,
-3438658, 4334696, 2895345, 1908039, -5337571, 2800856, -5607080, -2041183, 3747896, -92879,
--614180, -1770600, -34360, 3469260, -4087198, -8456254, -1553704, 2327336, -1553168, -6325413,
--5993627, -8980240, 2285460, -2741800, -8020852, 5656472, -5073430, -5374078, 10109279, -3800509,
--1770063, 596464, -1609539, -3452080, 988916, -5660767, -2509872, -4797479, -3424163, -1721208,
-3142842, 7291781, 568546, 4294431, 564251, 3148211, 2527588, 5846524, -257161, -359167,
-810138, 2019708, -1050120, 35433, -409633, 4211753, 10201, 1917166, 503585, 627602,
--576063, 763430, -2540473, 2745021, 251792, -171799, -2043868, -796716, -2825015, 1194538,
--1355599, 788127, -224949, 2765959, -1282048, 357556, -2434173, -2334852, -16106, -1151051,
-907849, 1675037, 561030, 723702, -1136019, 242129, 7623567, -10997264, 1950989, 9698573,
--3616899, 10619307, 2913599, 712965, -3098282, -7337415, -4887673, 12639552, -6790344, -6979,
--2362769, 1037235, 7554848, 6863358, -4147328, 9891847, 9801115, -4569845, -2439005, 6042482,
--5069135, -4360466, -330712, -6729677, -164819, -1938641, 867047, 11868605, 4020626, 707596,
--5414343, -15622944, -1916092, 8894340, 2163590, -5805722, 4512937, 7247758, 6265284, 7655243,
--12398497, 2590402, 609885, -6070400, 3345780, -5452461, 3956739, -3036542, 4907000, 11093364,
-14556181, 9271761, 4234301, -5936182, -1645509, -7101729, -7547868, -1493038, 8549669, 2200097,
-159988, 2112050, -8317741, 2275796, 1068373, 33823, -4191351, 2372433, 4602058, -4714264,
--9063455, 20842940, 2717104, -3593277, 1320166, 2352568, 9487583, -1777580, 2644626, 3345780,
-4736275, -3132105, -1548336, -3389266, 1726577, -840740, 1900523, 1856500, -1164473, -1787780,
-3576634, 610959, 993211, -525060, 2190970, -3498251, -2531346, -1604170, -574989, 4205310,
-1567126, 2865817, 2144799, 2283849, 231391, 634581, -818191, -2388539, 2585570, 772557,
-1146219, -1607392, -521302, 49392, 1170379, 3338800, 915902, -5555004, -1760400, -3350611,
--1491427, 2804077, -3757023, 16493748, -1769527, 4750771, 11575474, 1678259, -1907502, -7537668,
-4155381, -4008815, -5342940, -15381352, -7096360, 3252364, -982474, -2874407, -11359652, 4038343,
-6018323, -8696235, -4766340, -2248416, -9388799, 3796751, 498753, -4767951, -4169876, -1568737,
--12634720, -4335233, 6025302, 10479720, -8015483, -9711995, -3011309, -470836, -8137353, -6453725,
-2335925, 4468377, -8901857, 17599702, -76236, 7212324, -4145180, 6780143, -4692252, 2105071,
--12586939, -2529199, 4908074, -12340515, 3248069, -2725694, -6492917, -14030048, -475131, 7907572,
--47245, -14809047, -2410014, 2778307, 5825587, 10986526, -4180077, 4951561, 12589086, 4320200,
-1396938, -5741298, -1262720, -3562675, 595390, -4260608, 826781, -8098698, -1242319, 6292664,
-1621350, 1258962, -3710852, -6277095, 3345780, -1128503, 3456375, -1308891, 308701, -787590,
--1992328, -1650878, 2183991, 942208, -639950, -810675, -93952, -2435783, 977642, -2491618,
--3308199, -1960116, 929860, 158914, -164283, -2362232, 1680406, -294742, -1404454, -3349001,
--1236414, 204548, 256624, 1349157, 3371013, 1115081, 636192, 1773822, -699543, -257698,
--1118302, 2757906, 4655745, -1405528, -5005785, 6060736, 898185, -8923331, -14388677, -11488501,
--14887430, 12830678, -7856032, -1763621, 4023311, -13815836, -5934571, -9574556, -4467840, -2978023,
-6163815, -12094628, -6667400, 4009889, 4690105, 7162932, -258772, 350040, -2330557, 88584,
--3021510, 1859184, -9839233, -5102958, -8672076, 6020471, 2782602, 4686346, 5783174, -11674795,
--1004486, -1167694, 10559714, -3926674, 3216394, 5936719, -2355253, 6348499, -4254165, 7065758,
-9614821, -3725347, -837519, 8484171, -7336341, 11694122, -5134097, -18355616, 2700461, 9647570,
--3819300, 1191853, -489626, 7421167, 9016747, -9233643, -4238059, 2267206, 6152004, -10878615,
--8504035, -6571837, 13108777, -229244, -15422154, -3221762, -6524592, 5293547, 500364, 4017405,
--5910412, 9503689, 210453, 1770600, 2525441, -8631811, -3158949, 730144, -1285806, -2115272,
--2730526, 2518462, -2611877, -2275796, 1644436, 2856690, 1225676, -5043902, -664109, -1966021,
--1700270, 2196876, 1680406, 4372814, -799401, -2042794, 1436667, -4737886, -779537, 31675,
--3351148, 498216, 81604, -1122597, 381178, -5401458, -1213865, -590558, 396211, 763967,
-2072859, -227096, 2353642, 1527935, 1102733, 236223, -556198, -8592619, -3428458, 5845988,
-2214593, 8391829, 2928094, 4091493, -16499654, -6508486, 6497749, -4382478, -3075734, -5534066,
-1741072, 8596914, 2309619, 2034741, -11031623, -3765613, -1970853, 4093104, 9785546, -11833172,
-5627481, -9646497, -2505040, -8873402, 1196148, 1220308, -391379, 3696893, -8213588, -2388002,
--7691750, -3191161, 205085, -358093, -9672266, 5585068, 6320581, -2325188, 7489349, 14597520,
-1567663, 11061151, 14250165, 1125818, 533650, 3432216, -2904472, 4713727, 1039382, -3086471,
--4698694, 17826262, -1771137, 10427644, 4684736, -5226975, -6009733, -4217121, 5062156, -4039954,
-6554657, 15715285, 8039105, -2051384, 343061, -13118978, -8972187, -7987566, 12438762, 19418084,
--8412230, -33823, -7774965, -1255204, 11947525, -3702799, -622233, -18646064, -2401424, -3356517,
--1882269, 7146826, 605054, 1528472, 2265059, -3695283, 3081102, 1644436, 2758443, -2178622,
-3951907, -1786706, -317828, -4670240, -1010391, 4189741, -1408749, -52613, -695248, 4030827,
--892816, -2793339, 1788854, 1836635, 1123134, 1465658, 1575716, -1470489, 518617, 2881386,
-4956393, 4281546, 2837363, 1563905, 420370, 464393, -2896419, -173409, 2034741, -1750199,
-2137820, -575526, 826244, 2738579, -1008244, 4908074, -399969, 11367168, 30846456, 13701483,
--4393215, -897111, -5939940, 14479408, -14499810, -7958575, -22075058, -69793, 10625749, 13618268,
-2246805, -5150203, -13301514, -9423158, 9504226, -1780801, 15197205, 140660, -5105643, 7438347,
-2473364, 54224, -3990025, 10218801, -2032593, 8853538, -305480, -4536559, 18740552, -4333622,
-7502771, 18774912, 6369974, -595390, -9248675, -1522029, -14960445, -17144972, 3610994, 11293080,
--2827162, 1747515, -19083614, -7002944, 10799695, 6131066, -5064840, 3815542, -5773510, -2530810,
--8788577, -14309220, 716723, -3229816, -10399190, -16543677, -14593225, -4507032, -13416941, 6295349,
--6093485, 2297271, 1560684, 92342, 164283, -1953136, -3125126, 8781061, 16913044, -11309723,
-1932735, -4639639, 6019934, -6226092, -403727, -4440996, -2244657, 15899432, 11263552, 2770254,
--1914482, 357556, -6568079, 2419677, 6250788, -1016834, -5698348, -2972117, 5395016, -6506876,
-471373, 3063922, 2543695, -2155537, -2281702, 2604361, 2878702, -2105071, 3455838, 2284923,
-2843805, -111132, 3800509, -210990, 2354716, 1433982, 1330903, 1115081, -1001801, 4839892,
--4683125, -463856, 861141, -1155346, -1286880, -1929514, 1932198, 397821, -4051765, -1260573,
-2435783, -2605435, -12668006, -14573361, 3869766, 5441187, 17471390, -14773077, 4806606, 4401268,
--24303072, -1231045, 304406, -20509542, -10986526, -7313256, 5346698, -1723356, 1375463, -5849746,
-8745627, 13442174, 7277822, -2007897, -20576114, -9109626, -11115375, 4127464, 1427540, -9171366,
--547071, 7062537, -5873368, 12259984, -10954314, -404801, -6315750, -20791936, 3701725, -8891656,
--9777493, 7644505, 11613592, -12910135, 5140002, 15084462, -4776541, 6572374, 5371394, -3619584,
-2239289, -16888348, 25640954, 9960029, 6208375, 24256364, -29501056, -2288144, -3927211, 3086471,
-12293807, 12520367, 5015985, 5939940, 15736760, -1544578, -10384157, -18420040, 7296076, -7004018,
-874026, 4907000, -3482682, 7445326, 20116554, -12355010, 9477919, -6020471, -5517423, 15008226,
-1334124, 4640176, 14807973, 12002286, -5113696, -6169184, -12667469, -3306051, 260382, 6646999,
-7231651, -41339, 1869385, 954020, -53150, 1346472, 1824287, 486942, 4179540, -2040110,
-806380, 2803003, 1799054, 779537, -1568200, 3792456, 2723009, 532576, -1970853, -3127810,
--7065758, 4302484, -66572, -710817, 2434710, -3547106, -189515, 2386928, 3579318, 4990752,
-3073586, 1341640, 1631014, -96100, 1772748, 3711389, 15887621, 18747532, 4647692, 11571179,
--7553774, 5458367, 5258651, -30715996, 8653822, 9973451, 2057826, -9781251, -271657, -18961206,
-22273164, 13451838, -7062537, -7506529, -11145977, -5795522, 16099148, -16349867, -9417253, -2456185,
--2782065, -3531000, 2298881, -10834592, -11099806, -6518687, -8563091, -2314451, -11123428, -1541356,
--7483981, -24311662, -15561203, -6015102, -3913789, 3378529, 4003447, -151934, 657667, 7021735,
-3330747, 3586298, 17046726, 3554622, 5723581, 10650982, 22913650, 19616190, 980326, -7790534,
--15127949, 13700409, -3431142, 37055904, 7429757, 16598438, -1870995, 2090039, -14790257, -613643,
-12808129, 7407745, 9694815, -11165841, -7420093, -14341970, -27216134, 15646566, -24026584, -2960843,
-31547072, 2073932, 12607340, 5999533, 9257265, 245887, -17124572, 16552804, -344134, -15029164,
--13472239, 450435, 5162014, 11116449, 2932926, -13188771, 629213, -2657511, 2604361, -5225902,
--4372277, 2273648, 2054605, -4128537, 335544, -1373316, -438624, -5425618, -2030983, -1774895,
-2429341, -1495186, -3347927, 4234301, -2714956, -1126355, -7663296, -8126078, -44023, 115427,
--3387656, -2188823, 2572686, 1895154, -3440806, -5471789, -397284, -5686537, 3292093, -21721260,
-6244346, 8502962, -14958297, -11145977, -9127, 9306120, 21220360, -862752, -16783658, -16463147,
--1117765, -9214315, 2560874, 3277060, -18712098, -15701327, -30420180, -8681740, -8995272, -20312510,
--14165876, 97174, -9798968, -5769752, -5653788, -1446867, -20553030, -10664941, -12731357, -5949604,
-6010807, -17041894, 1039919, 14615774, 16866336, -3782256, 4428648, 10029822, -17193828, 9809168,
--7592966, 15298137, -7550016, 1611150, -8117488, -1474248, 29644938, -5908802, 10994579, -21618182,
--3881040, 224949, -21004538, 19602230, 471910, -6849936, 13625784, -5448703, 3302830, 27704150,
--11167452, -14787572, 10077067, -2619930, -31124018, 12787191, -41171556, -21701396, 16128676, 13059385,
-2349347, 8922795, -231391, 34897, -31130996, -16329466, -7547868, 3077881, -17817134, 4574140,
-2150168, 7493644, -11734388, 943819, 8563628, 6985228, 4802311, 850940, 3901978, -9783399,
--6716255, -6517613, -2183991, -1132798, -1180579, 8367133, -4451734, 4516695, 7802882, -3720516,
-2209761, -6173479, -5194226, -40802, 1792612, -5519570, 2243584, -6984691, 6065031, -2288681,
--1569811, 541166, 5412733, -1532767, 1988033, -4825933, 4276714, 3728569, 10249939, 2750927,
-8368207, -8276939, -3154117, -9897215, -3158949, -5264556, -5113696, 41482404, 22677964, 60666,
--21366926, 10994579, -22279070, -18077518, 3271691, 18443126, 36382132, -5699422, 18385682, -6551973,
-13047037, 22093848, 12323872, 14132053, 7548405, -4103305, -18072148, -18656264, -5668283, -17629230,
--5207648, -3214246, -3986804, 14146012, -2416456, -36244692, 2118493, 8778913, 8370355, 21726092,
--2248416, -43259448, 24609088, -19343996, 6330782, -4211216, 14558865, 21238614, -23608898, -1626182,
--11798812, -20553030, 14894410, -10208600, -25348896, 9974525, 14800994, 24392194, 6450504, -3771518,
-2663954, 19975892, -16051903, 31518080, -9898826, -8747238, -2831994, 19217832, -19959250, 1867774,
-2440615, -55533392, -8235063, 17231408, -7994008, 2915746, 7722351, 4066797, -2719251, 4555887,
-19065360, 22797150, -18014704, 6537477, -13193066, -2215130, 22539988, -442382, -2333241, 871878,
--1510218, -11639361, 3230889, 823023, -6804302, -17255568, 248034, -4089883, 5304822, -7944616,
--7450695, -9352291, 7984344, 1887101, 4903779, 3973919, 353261, 2947958, -3809099, -7871065,
-12140262, -1163399, -5845988, -129923, -4205310, -2594160, -4858145, 681289, 1524713, -650151,
-3391414, 8891656, -297427, -2080912, -3568044, 872952, -4444218, -2470680, 5090610, -3787624,
--3171833, -4649839, -11631308, -6454799, 1672890, 7646116, -6053757, -1717450, 23853712, 15663746,
--44080860, -25212532, 30347702, 34966404, -18757196, -6487548, -49618148, -27577448, 7249368, -2357937,
-6698539, -26526792, -16470663, -18214420, 26911728, 39755292, -1854889, 10653666, -6407018, -3600793,
--425202, 9044664, 17354352, 4092567, -6072547, -3418257, -3978214, -23925116, -13428752, -24323474,
--3144990, 7368017, -10104984, 14820858, -10990284, -4261145, 23250806, -11355357, 13096966, 8933532,
--4183298, -22448720, -16097001, -13433584, 4087735, 41620916, 7411503, 22321482, 26517128, 20581484,
-15390478, 13594645, -22971096, 423054, -3711389, 30770220, 14740328, 17941152, 32318018, -15972983,
--21647172, 7831873, 27341762, -46374372, -779537, 3550864, 21561810, -37531572, -56298432, -10163503,
-15846819, 3804267, 6442988, 17528298, 1184337, -12639015, -18442590, 472983, 2596845, 3515968,
-17118130, 25147034, 12020540, 1730872, 147103, -423591, 2144799, 2393908, -6325413, 9178882,
-1225676, -8687108, -14958297, 1704565, -6338835, 3066070, 1705102, -1516124, 1021129, -6386617,
-6539088, -3506841, 4414690, -6859600, -4254165, -12106976, -11698417, 383863, 6278706, -5459977,
-12494060, 151398, 3781719, -3928285, 13354127, 919660, 6172405, -6758131, -3491272, -2290828,
--2301029, -8439611, -1422171, 8752070, -15288473, 11725798, -427349, -11541651, -19924890, 7368554,
--9633075, -19796042, 14252849, 26984206, 8452496, -10507637, 16241419, 27141508, 10201621, 5527086,
-2035815, -3119220, 12928925, -22842784, 1450088, -32816772, 17590576, -26501022, -2130841, 14142254,
-7942469, -15149423, 3266860, -17518098, 35849556, 4562329, 11680700, 18578418, 39534636, -16361678,
-12887049, -18951006, 6890738, 14127221, 31789200, 7422777, -6386080, 32448478, 4452808, -2345589,
--18653042, 1176284, 20432770, -6961068, 19639274, -24173686, 37205692, 38470560, -46277200, -1274532,
--2879776, 10053982, -7852811, -6146098, 19965156, -16887274, -49384608, 517544, 43971340, -34746824,
-17435956, -8096550, -4373351, -21204254, 48527760, -3224984, 8046085, 4364761, -32613298, 42152420,
-3314641, 37473588, -74335144, 6977175, -6987375, -22530324, -6021008, 12941810, -17315698, 11514270,
--15611132, -10516764, -20548198, 25786984, -9974525, 1633161, -21919366, 803696, -16113644, -5638755,
-7443179, -11253888, 5146445, 528281, -14889041, 13247290, -6134287, 1746441, -6403796, 11997454,
--9217537, 1726577, 783295, -3584150, 16059420, -9516037, -11373073, -6743099, -12743168, -17840220,
--8945343, 1491427, 1003949, -12914967, -7311645, -8752606, -12396886, -9950902, 4131759, 2630668,
--509491, -5440650, 31035434, 4013110, -24242406, 2714419, -49017924, -10862509, 2187212, -9186935,
--39129836, -4051228, -25780004, -6087043, 23127326, 5675263, 30405148, 12975096, 11307575, 7434052,
--10738492, 24843164, -12757663, -15569, 11355357, 5580773, -15348066, 12444131, 4735202, 29352344,
-11724187, -5018133, 17350594, -13795435, 23521388, 8368744, -26383448, -26696980, 13654775, 17667884,
-7016366, 3032247, -12938052, -17025250, 5019206, -16751983, -25820806, -7677254, -4559645, -23342610,
--8980777, 8964670, -16325171, -26351772, 7249905, 9989557, 699543, -3096135, -1772211, -4354023,
-9297530, 45299020, 8985072, -1330366, -1933809, -15814070, -25979720, -11293617, 36958192, 40064528,
-20255066, 3926674, 36040680, 17561584, -8402030, -50293532, -38647728, -31525596, -60428580, -34974456,
-8332774, 49060336, -21872658, 16675211, -24430848, 8048232, -2165737, 16931834, -8034273, -2724620,
--21808234, -12306692, -5435818, -19184546, 24483462, -3733937, -12989055, -5988258, 2405182, -13852343,
-9880572, 7482370, 15820512, 3772055, 4395899, -15566035, -18403934, -2018098, -13612362, -8422968,
--15844671, -22606024, 1122060, -5831492, 1358283, 1742683, 17347910, 17498234, -6528351, -3355980,
--7745437, 16908750, 11103564, 7414188, 2589329, -3317325, 9593346, -13188771, -5311264, -2057289,
--15226733, -29378650, 15488189, -433792, -9466645, -9113384, -5435818, -4094178, 11003706, 21037824,
--9100499, 27067958, -30996778, 25014964, -3333432, 33350958, -21721798, 19294066, -31953482, 27738510,
--25861608, -10781442, 38331508, 8935679, 30749282, 44257492, 4351876, -3528853, -18639622, -1444720,
-27875412, 7098507, -10144176, -31065498, 2460480, 6164889, 14492830, 8997420, 12029667, 7650948,
--18342732, -28918014, -12481175, 28027882, 10529649, 89391152, -28600188, -23873038, 28938952, 45893872,
-9418863, -776852, 11861089, 3043521, 14522895, -13482976, 5109401, 21457120, 23491324, 15828565,
-69159176, -8803072, -9168681, -4504884, 35582192, 21401822, -18354006, 18754512, -601295, 6120866,
--15148350, 31771484, -31893354, 2214056, 48780092, -36066452, 104969000, -48281876, 50132468, 46167676,
--45522360, -41430328, 46604692, 2018635, -27187142, -11419781, 25668336, -71017824, 10963441, -8351027,
--45880452, 29927332, -35953172, 2842195, 2537789, -14421963, -35481800, 9599789, -2854006, -1580548,
-6700149, -7295002, -11773579, 6346351, 14733885, -5623186, 2159295, 11536282, -10908143, 16052440,
-12273406, -25566330, 3573950, -14359149, 6423661, -1012002, 1982664, -13081397, 5338645, 3427384,
--171262, -6560563, 19665582, 4465156, -826244, 18877456, -13451838, -12186970, 1913945, 8150774,
-1932198, 9081708, 4581657, -26317948, -13750875, 6788733, -15577310, 22651658, -10292889, -12859132,
--617402, -8904541, 17933636, 22846004, -53821844, -23084912, 33314450, -69844224, -42980276, -29282014,
-48949204, 103781976, 28929826, -81630688, -18192408, -83393232, -43268576, 67782104, 40773200, 63720136,
-35303020, -48390324, -76418744, -58506044, -13807783, 34470872, 39504036, 23543936, 13463649, -20357608,
--83552680, -100847440, -21598316, 77022720, 137754096, 93148176, -17364016, -64644628, -92390656, -68816112,
--55351392, -73014, 22413286, 74995496, 80412528, -43557412, -26968100, -100986496, -93543848, -33860448,
-9463960, 97219272, 143976432, 63656248, -42221676, -150803824, -111461920, -82071456, 39791260, 85651848,
-53759032, 33743412, 29028610, -90038080, -16301012, -51408076, 19268834, -7254737, 53455700, 83532816,
-66653596, -78270408, -157379952, -118611424, 13363254, 91975648, -2058900, 127596496, 5535139, -33045478,
--38216084, -28374164, 584116, 92143688, 79881560, 14474040, -31492310, -11494943, -5621039, 48283484,
-53680112, 6255620, 2550137, -8498667, -1190243, -10434086, -12810277, -8768713, -4514548, 18378166,
-29136522, 23500988, -34645892, -39706972, -15007689, -16558710, -15432891, 35864052, 29676614, 37722160,
-11368242, -16427713, -28223304, -55225764, -34846144, 22928146, 48846664, 73462192, 50680076, 4028143,
--113313584, -100014216, -33769716, 40834940, 64117420, 85204096, 64638720, -5220533, -64335388, -95354176,
--91603064, -16945794, 100217696, 103283760, 52864068, -25128244, -68827384, -48386564, -32146220, 2691334,
-20949240, 27271968, 24539296, 14758044, 1286880, -15699716, -19223200, -20015084, -15890842, -18526878,
-36842768, 11479911, -29845190, -28161026, 86973, -45373108, -5610838, 6722161, 5189931, -3945464,
-1133335, -15258945, -1903207, -1793149, 7828652, -5265093, 20913806, -5552856, -4026532, -5840619,
--6567542, 13037373, 3730716, -6289980, 20255602, 1281511, -36009004, -17981418, 9919227, 17621714,
--5997385, 2146947, 24676734, -608812, 3368865, -20185810, -9015136, 6214281, -4386772, -4486630,
--2678449, 16324634, 5912560, -6393596, -19314468, -7693897, -1131187, -17617956, 1688459, -20121922,
--13463112, -9365713, -17878338, 28032178, -5048197, -12687870, 11862700, -197032, -27551678, -1614908,
-27531278, 22321482, -12785044, 17282412, 2914135, 16488379, -18399104, -27151172, 10419054, 11964168,
-10557030, 9130027, -10238665, 10078141, -20236812, 13707925, -27609124, -24322936, 17980344, -14235132,
-12277164, 16813724, 1243930, -13016972, 4205847, 4747013, -1074279, -1076426, -420370, 10948409,
--9172976, 7105487, -9586367, 12833899, -11221139, -6147709, 4759361, -3906810, -377420, 5061082,
-1258425, 3375308, 9937481, -7920994, -4655208, 5654325, 3450469, 11294690, -9146133, 3121904,
--1063541, -7101192, -7062537, 2881923, 1870995, -7027640, -10358924, 2974265, 194347, -1983201,
-6706592, -9990094, 11587822, 3415036, -9897215, -11140608, 9350144, -15643345, 10761041, -1795833,
-7481296, -843961, 2627983, 13962939, -22236656, 44463648, 67676872, -8779450, -25109990, -21449604,
-62396212, 28306518, 60387240, 32675038, 45634, -27979028, -6304475, 15506979, 28346784, 13669807,
--13183939, -3150359, 13529147, 20078972, 2442763, 4577899, -14013941, 2643552, -6781217, 9203578,
-10187662, 26538602, 22749904, -12006044, 1951526, -13487271, 3513820, 12163347, 18000208, 1431298,
--8600672, 64961, -15520401, 13031468, -3595425, 5433671, 12055973, 349503, 16066936, -7824894,
--4432406, -3670050, -16567299, -9819906, -25258166, -4681515, -28798292, 2064269, -9917079, 23782308,
-3506304, 7071664, -22268332, 9501005, 148176, -9807558, 16305843, -8708046, -4591320, 4147328,
-10781442, -1205812, -5921150, 36781028, 11931956, 8577587, 13774497, -9839233, -491774, -3218541,
-19178640, 26750130, 25608742, -15184320, -16706886, -2183454, -6644315, 6796786, 17262010, 18029198,
-794569, 10148471, -1202054, -2644089, 5872831, 11533598, -1087701, 9084393, -7521025, 1724966,
-135828, 3234110, -2579665, 10162429, 5850819, -964220, -2811593, 3146601, 1784022, 11043435,
-619549, -6371047, -7025493, -3937411, 3087545, 3826816, 7016903, -8411157, 1189169, -2231236,
-5639292, -4074850, 7955890, -2586107, 2973191, -4367982, -3711926, 2628520, -6932077, 142808,
-7682623, 2030983, -3160559, 824097, -373125, -25181930, -55021752, -7299297, 72427104, 111955304,
-93776312, 74310448, -5114769, 8835285, -54608900, -61691836, -100874824, -57897232, -63571960, -19874424,
-7873749, 43988520, 31128312, 95633888, 83060376, 27586038, 5703180, -14711874, -32563368, -51214264,
--18898930, -52499532, -14119705, -25489020, -16658031, -12164958, 2673080, 1013612, 17744120, 25927644,
-39144868, 42632384, 50954956, 44176960, -5402532, 4395899, -641561, 8386998, -25370372, 10321343,
--27109834, -67441184, -33259152, -50453516, -85051624, -24799678, -7480223, -34320008, 11566347, 26228292,
-59229208, 70016016, 103106056, 65271692, 53030500, 52897892, 32757178, -10123238, 5277441, -51964272,
--44936096, -75303664, -89720256, -103415296, -75458816, -57983132, -6136972, -2714956, 8129300, 30345554,
-51123532, 92331600, 91140280, 90912112, 72744936, 31324270, 46906412, 7464653, -23668492, -35436700,
--84074520, -76296336, -67724120, -58253180, -46796888, -28164784, -17231408, -5771363, 4124779, 28372018,
-33469606, 44299368, 36536748, 52494164, 47364900, 31140124, 35687420, 24128590, -6616397, -19338090,
--22496502, -53373020, -46432356, -41659036, -31359166, -16965120, -719407, -1985349, 13578539, 21104396,
-16284369, 19581830, 12377022, 3981972, -493384, 5719823, 1248225, -6490233, 6966437, 8556112,
-516470, 4623533, -1365800, -1854352, 707596, 3210488, -208306, -7208566, -9728638, -9415642,
--11026255, -7376607, -2294050, -2502892, 3114388, 1289564, 856309, 3709241, 4181688, 3405909,
-4519916, 7180112, 6049462, 3466039, 4128537, 1422171, -1560684, -492311, -1960653, -2914135,
--1450625, -2626909, -2525441, -3056406, -3860639, -4205847, -4065187, -2284923, 1074, 207769,
-2246268, 2316598, 1701881, 1283658, 2190433, 2204392, 3651259, 2461016, 3070902, 1580011,
--697932, -1678795, -667867, -2088965, -296890, -114354, -942208, -558883, -700080, -2057289,
--1542967, -1327145, -543850, -661962, -85362, -142271, 152471, -636192, -678068, -1054951,
-811212, 1258425, 3054259, 3034395, 3484829, 2530273, 1742146, 650688, 0, -952946,
--1112933, -2601140, -2313377, -2705830, -2338610, -2667175, -1591822, -1093606, 1611, 78383,
-1122597, 906775, 2121714, 2124935, 2464774, 1824287, 2156074, 1105954, 827318, -354872,
--548145, -1396401, -1118302, -1494112, -841277, -1156957, -347355, -623844, 66035, -290984,
-325881, -119185, 389231, -160524, 290984, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-{
-7448547,
-2763275, -3663607, -679142, 2626909, -504122, 2792266, -6819871, -4780299, -1229971, -5654862,
-2344515, -1221918, -674847, -3804804, -1764158, 3631932, 3534221, -1354525, -1135482, -2328409,
--5517959, 6151467, 3585761, 205622, 598074, -286152, 134218, 4963909, -2534568, 950798,
--7904888, -6397891, -1655710, 632971, -5520644, -969589, 1906966, 519691, 57982, -2702608,
--2156074, 5190468, -2421288, -2145336, -762357, -677531, 2226941, -1140851, -3406983, -71404,
-2916283, -4160750, 144418, -4459787, 279710, -3253438, 4967667, -237297, -5310727, -720481,
--548145, 675921, -7566659, -863825, 591632, -4988068, 2282775, 155156, -5836324, 2686502,
-3534221, -3049964, -3587372, -6330782, 3307125, 1974074, 5885179, 2965138, -911607, 1195075,
--852551, 1838783, 1850594, 4127464, 1009317, -1735167, -92879, 522375, -162672, 2376728,
-576599, -760746, -1162326, 1178432, 879931, 1792075, 847182, 722628, 1021665, 993211,
-366683, 631897, -135291, -258772, 349503, 290447, 421444, -204548, 501974, -668404,
--18254, -5511517, 2505040, -6866042, -1879585, -986232, -3431679, 3262028, 7671349, -3158949,
--998580, 329639, -3144453, 2167348, -458488, -2604898, -4352413, -2355253, 6918119, 6630893,
-3761855, 7707856, 4571993, 2430415, 7304129, -4562866, 1618129, 3083787, -131533, 1222992,
--2153926, 1363652, -10076530, 181462, -576599, 3608846, -2275259, -1316944, -695785, 2755759,
--3186329, -550830, 914828, 1929514, 1919314, -572841, -3419868, 612033, 1203665, 2434173,
-1869385, 2836289, -3216394, -1949915, -586263, -5750961, -673236, 1479079, 4912906, 5444945,
--750009, 2985002, 2253247, -448824, 2037425, 2387465, 3544959, -1461363, -47245, -2697240,
-459025, -2330020, 1575179, -3430605, -3202972, 1880122, -20938, -6373195, -594316, -4784057,
--1287953, -717260, -802085, -6337761, 605590, 2176475, -1858110, -1841467, 1085553, 748935,
-455267, -1293322, -3383897, -222265, -1482838, 1236951, 46171, 41339, -379031, -1448478,
--1553168, -1807644, 124554, -811749, 762357, -1153199, 435402, 212064, -1004486, -75162,
--1118839, -457951, 64961, -48855, -995359, -296353, -169114, -6964290, -6482717, 2384244,
--724239, 5379447, 5493263, 409633, 172336, 10443213, -2793876, -286689, 8846559, 328028,
--5050345, -7491497, 5451387, -2216203, 74625, -4651450, 1473174, -3331284, 3716757, 16336982,
--5934571, -4840428, -5861557, -6417218, 1209033, -5237713, -12855911, -352724, 1335198, 4832,
--5085778, -1104880, 4232691, -5292474, -3064459, 7626788, 2562485, -1970853, -1780264, 4904316,
--2399813, 3505767, 3266860, -7003481, -4587562, -4154307, 4613869, -3559991, -2061584, -1942399,
--2279554, -381715, -4663261, 24696, -1375463, 1151051, -605054, -10241350, 4791036, -5730560,
-4559645, 833761, -8360154, 1699196, 5665599, 1726040, 9403831, -3963718, 558883, 1089311,
-2234994, 3346317, -3646427, 1396938, 1279363, -5441187, 7502234, 536334, -1013612, 3167002,
--1027034, 1420560, -1319092, -2838974, -154082, -1826435, 2493229, -632971, 508954, 2913599,
-1050656, 1112933, -602369, 1589138, 325881, -420370, 1089848, 2123325, -1484985, 145492,
--1568737, 1017370, -479963, 3149285, -4392678, 2094870, 2154463, -2287607, 1014686, -1100585,
--9439801, 2950643, 8773544, 7397545, 8225399, 1506460, -1826435, -7041599, -3764539, -3279208,
--2719788, 7396471, 10153840, 789737, -732292, 7324530, -11829951, 285615, -984621, -158914,
--3875671, -3914326, 4267587, 5356361, 144418, -1129040, 2093260, -5686000, -4367445, 4438849,
--4810900, 9201431, 8273181, 1430761, 5085242, 4358318, 850940, -3708168, 1275605, -164819,
--6491306, 6311992, -581431, 2970507, 5079873, -6036577, -2381559, -7180649, -1655710, 1682554,
-6745246, -6918656, -2785286, 5102421, -1093069, -4417374, 7401303, -6158446, -13022341, 2216203,
--7346542, -3245385, 3511673, -3117610, 600222, 798864, -3198677, 5571647, -5106179, -5740761,
--6952479, -745177, -3031710, 477815, 1811939, -4213900, 1090922, 1233729, 283468, -1999307,
-1090922, 922881, 2866891, 453119, -962073, -1969779, -1309965, -865973, -550293, -686658,
--1264868, 390842, 532039, 854162, 230318, -372588, -1019518, -379568, 1407139, -1456531,
--1569274, -442919, -76236, -122407, 1067836, 1317481, 1187022, -749472, 394600, 275415,
-447750, 257161, -446677, 2813741, -1386738, 153008, -11738682, 2488397, 11090679, 875100,
-1744831, 3347390, 10387378, 1404991, -9972377, 11057930, 4874788, 3981972, 6750615, 5832029,
-53687, -2091649, 6365679, 4844186, 1668058, -4596152, 5535139, 2583423, 8191577, 9532143,
-3636227, -2378338, 219043, -92879, 3981972, 12103218, 7204271, -6754373, 11734924, 445603,
--1449015, 1525787, -8660265, 9592273, -1287953, 146566, -1156957, 2425046, -1308891, 4938139,
--6991133, 9796820, 8367670, -344134, -1578401, -5495948, -10427644, -3605088, 4115116, -2457795,
--3924526, 5488432, 6461779, -4426501, -3932043, -13391171, -4656282, -1690607, -676457, -14982993,
-7581691, 795643, -8928700, -7357279, 2422362, -3513820, 875100, -2254858, 444529, -3979287,
--904091, -3556233, 2496450, 4941360, -1451699, 3746285, 408022, -1632088, 4425427, 1503239,
-178778, 3627637, -474594, -1738925, -2367601, -2673080, -2779381, -2653753, -3242700, -2394444,
-108448, -1352378, -3050501, -1546725, 242666, -708133, -1174674, 570157, 1150514, 512712,
--1432372, -2025614, -2488397, 183073, -2366527, 2040646, -1334124, -1404991, -1320703, -39728,
--966905, 122943, 493384, 936840, -1159104, 1153736, 5376762, -6827925, -192200, 202400,
-120259, 11372000, 6045167, 29528, 13877576, 6600828, 12514998, 3142842, 4144107, 13624710,
--5475547, -8879308, -5827197, 12744242, 2955474, -7006166, 9496710, -2520609, -5756867, 8720931,
-20296942, -5160940, 893890, 3374234, 3774740, -5205501, 542777, 11355357, 1075889, 13937169,
--3143379, 14956687, 10377715, 3659849, 8679055, 5679021, -5418101, 3791383, -1488206, -1226750,
-1289564, 1102733, -1090385, 4010963, 2586107, 9687836, 6339909, -7934415, 2673080, 3700114,
--6049999, 437550, -14099304, -18023294, 7122667, -4558034, -11957189, -2460480, -6495065, 7874823,
-1587527, -3602404, -9056475, 7068443, -6587943, 4338454, -7377680, 1134408, -3044058, 11036992,
-1922535, -4219269, 4101157, -9294309, 8397198, 1447404, -8169565, 424665, -956167, -2254321,
--1090922, 1198833, 2253247, -2291365, 3797288, -823023, -1671279, -1737851, -1514513, -3422552,
--411780, -1191853, -3489661, -1204202, 1074816, -2048699, 2013803, 362925, -1330366, 599148,
--2369748, -389231, -1697049, -170725, -208843, 126165, 961536, 1359894, 1355062, 84289,
-615254, -61740, 587874, -1096827, 811212, -770947, 543850, -8061654, 1202054, 181462,
-2239289, -4967130, 5602785, 5897527, -515396, -4156992, -13776644, -12056510, -9041443, 4148939,
-1377611, 2089502, -11271605, 7102266, 5235565, 8869107, -9644886, 9150965, 7266011, -5742372,
--4526359, -2964064, 9578851, 6391448, -4022237, 809601, 14425185, 7117298, 3821984, 8156680,
-5823976, 2101313, -4599910, 944893, 789737, -2139968, -5122286, 12569759, 6060199, -11942693,
-8118562, 7818451, 8041790, 6075231, 1802813, -7492034, 355945, -1108102, 11202885, 1344862,
-5080947, 9927280, -1669669, -11100880, 2571075, 5784247, 11317239, -15037217, -8276939, 3962107,
-290447, 1251446, -8699993, -2307471, -8432631, -1315334, 4205310, -2943126, -4551592, -5820218,
-2549063, -1537061, -2710661, -7168301, 393526, -9555228, -40802, -1040993, -4643934, -5440113,
-6189048, -2209761, -1375463, -3138011, -5675800, 1928977, 2933463, 1811939, 2324651, 1462973,
--3077881, -1873143, -846109, -919660, -2886218, -5790690, -2382096, -274878, -1792612, -300648,
--2905009, 130997, -1518271, -1291175, -2078227, -2610803, -1174137, 2340757, -1665374, -999654,
-496606, 864362, 777926, -1344862, 2005213, 2683818, 2972117, -928250, -52076, -200790,
-466541, 351114, 5240934, 730144, -9293772, 9460739, 6007586, -2776160, 3697967, 5713380,
--6300180, -2077690, 24055038, -752156, 9354976, 6609955, -20159502, -10661719, -1177358, -814970,
--280247, 11454678, 2519535, -5531381, 11761231, 7281580, -1524177, -1912334, 3722126, -1896765,
--4219806, -8940511, -10671920, 5901822, -2377265, -4984310, -566936, -16531866, -3125126, 1112397,
-9086540, -10918881, -3211562, 1433445, 687195, 2401961, 767725, 11688753, -13651017, -4515621,
-2979097, -430034, -8075076, -1683627, 10543071, 9114994, 7828115, -2163053, -13594645, -6176163,
-4857071, -1538135, 9052717, -527744, -222265, -6752763, -4231617, 7945153, -9761387, 6652905,
-5156645, -7007776, -3520800, -1632625, 1081795, -7547868, 3630858, 2606508, -3744138, -1162326,
--10330470, 3721589, 7923678, 11373610, 962073, 3049427, 5359583, 1660005, -9028558, 6163278,
--2190970, 1009317, -6979, -2899103, -3134789, -1675574, 4152697, 735513, 3464965, -393526,
-541166, -5012764, -1737314, -2312303, 3745212, -395137, -1660005, 2601677, -1956895, 2034741,
--1257889, 321586, -4168266, 953483, -998043, -875636, -2686502, 933082, -455267, -2353105,
--4309463, -977105, 388695, -1741609, 1694902, -470836, -2839510, -18292802, -1086627, 2455111,
-12315819, 1483911, -460098, 7374459, -5337571, 16050830, -16035797, -1592359, -3405372, 2640868,
--747324, -1367410, 4166655, -3081102, -5429913, -3707631, -3195993, -9707163, -1493038, 6796249,
--1542967, -4350265, 10237055, -223338, 12306155, -12074227, -6849399, 15125801, -1517734, -995359,
-933082, -9637907, -1083406, -12015708, 3525631, -14409615, -334471, 10577968, -3452080, 7182259,
-9576703, 5470178, 7545184, -9776419, 9685688, 989990, -25243134, -4332549, 3701188, -2150705,
--2787971, -10921028, 8566312, -9322763, -1793686, -10562398, -9804873, -15299210, 13585518, 3758,
-15830176, -7968238, 11935714, 15705622, -10364830, 12778601, -15823196, -13269838, -14323179, -5086315,
--10089415, 3141232, 4779225, -656593, -1853815, -184147, -11329587, 785442, 137976, 6447283,
-2601677, 2461016, 4670240, 2530273, -2458332, -205622, -4610648, -2859911, 128312, 1778653,
-86436, 2023467, -1512902, 2182380, -691490, 1101659, -7028177, 315143, 2685428, 1928977,
-3911105, -2337536, -3102577, -4239133, -98784, -469225, -3292629, -3702262, 368293, -701153,
-597537, -100395, -1053878, 1743757, 5592585, -1497333, -1318018, -838056, -1539209, 4902169,
-188979, 474057, -1755031, 2855080, -3279745, -766115, 2157147, 11860015, 20163798, 2813204,
--5279589, -10926397, 6819335, 18451716, 245350, 5242545, 1026497, 7324530, 5167383, 5606543,
-10160282, -12228309, -896574, -4582730, 15972983, 11742441, -510564, 18250390, 9746355, 1582159,
--17153562, -8596377, -13063680, -6127308, 1401233, 4898410, -4642860, 651224, 18687940, -3531537,
-83215, 912144, 19200652, -11731703, -4641786, -4798552, -1810329, -11477226, 13247827, 850940,
-8908299, -13758928, 1938641, -1523640, -8107825, -3278671, -15081778, 4726612, 355945, 3165391,
--1792075, -943282, -17518098, -6000606, 6940667, 11157788, -3173444, 2905009, 23451596, -1537598,
-1426466, 4276714, 10611254, -9925133, 2345589, 11831561, -6953552, 8597451, 2600066, 8961986,
--11858942, -6084358, 1694902, 2721399, 6121939, 6834367, 6630356, -4505958, 1976759, 4030827,
-8007430, 12341589, 5804649, -5881958, -2653753, -4632122, 2075543, 2595234, 5465883, 4879083,
-3040300, 5156108, -5485747, -1133335, -5595806, 4877472, -6422050, 6580427, 4831838, -4953708,
-3007551, -614717, -2925947, 721555, 1086627, -1788854, 1596117, 8178155, -160524, -25233,
--4942434, 2570001, -127775, -171262, -4476430, 4682588, -3792456, 1459752, 2121177, 3712999,
--311922, -1777043, -10919417, -16663936, 4631049, -1799054, -16804596, 4591857, 1696512, 15220827,
-13477071, -12516072, -14992120, 3337190, -11447162, -6053220, 474057, 22676890, 323733, -2918430,
--20296404, -10198400, -1756105, -15174119, -23003844, 15742129, -5932961, -7304129, -1324997, 17072496,
--5357972, 1828046, -3434363, -3482682, -9947681, -5352066, 1667521, -24077586, -15457050, -4493610,
--8773008, -8191577, -2813204, -9483825, 8164733, 3683471, 2614561, -5808944, 4128001, -34745212,
-32245540, 18866180, -3274913, -4466229, 18137110, 1025960, -10863583, -15526844, -1976222, -5495411,
--6445672, -9373229, -9509594, 11792370, 11063836, -5096516, 24317032, -13610751, -11124502, -10112500,
-48318, 7861938, -28508920, 8334384, -9024800, 14803142, -16161962, 6991133, -1480153, -5564130,
-11133629, -21086678, 19710142, 1020055, -279710, -4550518, 565325, -396748, -9980967, 1846836,
--2775086, 5091147, 6618545, -6206228, 3015604, 4120484, 9293235, 214212, -3063386, -644245,
--857920, -3829500, 2700998, -1576790, -2262911, 2249489, -3731790, -1310502, 867583, 2543695,
-3157875, -7583839, -5739150, -5078799, 797790, 2901251, -49392, 1860258, 1684164, 4833986,
-2548526, -4201015, 3696893, 585726, -4687957, 16515223, 1363652, 38507604, 12546136, -780610,
-1656784, -14899778, -19300510, 24050744, -7122130, 2726767, 31932008, -8319889, -1539746, -6830609,
-24902220, 4789426, -10290742, 14699526, -5342403, 21835076, 11465415, 5440113, 3238405, -2418067,
--8354785, -2724620, -2263448, -23407034, -5876052, -3769908, 12954695, -7248294, 2447595, 4308389,
--16765405, -24981678, -885837, 21575768, -1434519, 19168440, -3313031, -26779658, -10365367, 1225139,
-6077916, 4852776, -21780316, 192200, -6229850, 15832323, -16160351, 20013474, 29590714, 19193136,
--6012954, 3588982, 11943230, -4243428, 23188528, 26836030, 23661512, 7744900, 25944824, -868657,
--10438381, 3369939, -13551159, -17103096, 9355513, -7328288, 21205864, 10973105, 5632850, -7256884,
--26086020, -23637352, 16618839, -10450729, -21105470, 14125611, 28168544, 16954384, -9016747, 13470628,
-8266739, -2894808, -6641630, 8011725, -9997073, -3004867, -1060857, -6860674, 927176, -1449552,
-5810017, 3551938, -1331440, -9137543, 5135171, 4707821, 3228205, -1938104, 313533, -8530879,
-707059, -34360, 2241973, 2071248, 237297, 5170067, -1768990, 7134478, 8000987, 2131378,
-6500433, 660888, -5117454, -12102681, 2770791, 369904, 2636036, -2009508, -8722005, -19463182,
-11388643, 14221710, -220654, 6945499, 4683662, 6868190, 5716065, 2596308, -1562294, 3331821,
--4099546, 7358353, -13241384, -36883032, -14809047, 20147154, 1131724, -6060736, -12374875, -124554,
-16938814, 21629992, 4570919, -13372381, -2405182, 17284560, -21060372, 1935957, -2685965, 15454366,
-17641042, -14278619, 26798986, 5139465, 981937, 37893960, 91805, -11990475, 13194676, -6422587,
-1788317, -8195335, 2706366, 25145960, 2789045, 32053878, 13438416, -28158342, -30854508, -6810208,
-7847979, 17067126, -23968064, -8529805, -3598646, 28829432, 26342646, -22807886, -1045288, -13966160,
-8573828, -4902169, 30120068, 266288, -6847252, 19755238, -4239670, -23658290, -12068321, -3997004,
-24226836, -21809844, 12903692, 37806988, 17759690, 25321516, -7043210, 10196789, -7101729, -15932181,
--15389942, 7793755, -11017128, -903017, -4120484, 6747931, -437013, 15234249, -3731253, -7287486,
--2796561, -3285650, 3508988, -2646237, 5645735, -10780368, 7512435, -7203197, -3503620, 1968706,
--3097745, -3512210, 4609037, -4863514, -2096481, -1603097, -4177393, -13232794, -7684770, -1494649,
--1882269, -4078072, -5463199, -1438277, 3498788, -2510409, 1896765, -2251637, -515396, 2698850,
--10387915, 850404, -1817845, -7805566, -711354, -18296024, 13734769, 19252190, 16775069, -28921772,
--13222594, 17627620, 54956792, 2926483, 12225088, -16229071, 5294084, -1166084, -2200097, -15263777,
-4859219, -5614596, 26549878, 20393578, -27031450, -12512850, 29294362, 14315663, 10747619, 2697240,
-15982647, 17856864, 6147709, 10526965, 10385768, -13593035, 2281702, -13319230, -5473399, 3194382,
--2214056, 1832340, -10843719, -10388989, 8083666, -2425583, 11023034, 8069707, -24990804, 18557480,
-4103841, 14872935, -16765942, 9449465, 15694347, -12265890, -19195282, -20006494, -21294984, -21984864,
--17595408, 6102075, 32301912, 8148090, 10175851, 14840186, 1381369, -589484, -12156368, 21115670,
--26844082, -54802708, 18988588, -12737799, 2689187, -46530600, 11738682, 14436996, 2837900, 8991514,
-8102456, -7078106, -11510512, -18561774, 6127845, 3871913, -13677323, 10031970, -5010616, -23859080,
--12609487, -446140, -3928821, 2331630, 1904818, 6857989, 3580392, 1110786, -155156, 5413270,
--3120831, -7718593, -13125420, -8216810, -8376797, -3171297, -4491462, 4806069, 7892003, 5524402,
--10402948, -1035087, -4207458, -81068, 6459631, 1723893, -9163313, -17668422, -1205812, 586263,
-1751810, -6393059, -2347200, -6677064, -1030255, -8679055, -8679592, 5656472, -8475044, 3464965,
-1769527, -4685273, -1493038, 5407901, -4751308, 1971927, -6474663, 13002477, 9284646, 12419435,
--17715130, -9142912, -2535641, 11353209, -23627152, 39261368, 18585934, -3175055, 21344914, 12883291,
-20337208, -10700374, -13785234, -13316546, 24642374, 8792872, 4400731, 22295712, -19567334, -63136020,
--4270271, 4231617, 7449621, -35537096, 27484570, 20043002, -38237020, -29375966, 874563, 15736223,
-1268089, 8939974, 20167018, -5364951, 12495670, -18439368, -21182778, -16834662, -22003118, -34149284,
-9443559, 3534758, -22996866, 30260192, 11693048, -7401303, -7286949, -17873506, -13453448, -31140124,
--16982838, 11059004, 27550604, -10537702, 2697240, 11347304, -24575266, 17661442, 23864448, 3507378,
--6209449, 20434918, 5528697, 2276333, -14740865, -17183628, -1331977, 30554398, -9481140, -28264642,
--570157, -36009544, -37541772, -39069172, -18787798, -20638928, -13223667, 16728898, -2430415, 15029701,
--3190087, -5043902, -14192183, -3862249, -4232691, 8032663, -6276558, -9101036, -1855963, -3622805,
-1255741, -13244069, 2421288, -6156836, -5337034, 6864432, -6372121, -2203318, 2211908, -4792110,
-10185515, -6612102, 1471026, 16514686, 1978369, 9592273, -3776887, -5973763, 16802986, 2387465,
--8988293, 181462, 117575, 1158031, 2342905, -4944581, 10485089, 471910, -839666, -5267241,
-945967, -5352603, -13828721, -23897734, -12525735, -12841415, 15557982, 30622044, 11304354, -13973139,
--29535416, 31671088, 17047262, -15290620, -8242579, -8165270, 1771674, 7444789, -9768366, 16449725,
-15301895, 843424, -10301479, -9769440, -9197672, -1196148, 5939403, -4646081, -10183904, -24215026,
-7435662, 21247740, -12238509, 18780282, 548145, 12593918, -10577968, 14003741, 40680856, -15294915,
-17732310, 35327716, 6100464, -6235219, -9863392, 10210211, 717260, 18000744, -13861470, 48479444,
--15076946, -32647658, 7425999, -14913200, 38343320, 12521440, -12080669, 2132988, -23244364, -31863288,
-38920992, 4375498, -10580652, 38442104, -20045686, 4928475, -11366094, 22232362, -28586228, -32078574,
--22923852, 6984691, 13639742, 25458418, 10810433, 26907434, 42249056, -5344550, 8400419, -5730560,
-5223754, -1494112, 1571958, -31292594, 1020592, -43162272, -14507863, -8640937, 7459822, -1623498,
-9256728, -3585224, -13032005, -13699872, -3272228, -9127879, -10097468, -17343078, -196495, -1998234,
-12824235, 5345087, -10769094, 9429601, 4300336, 7735236, 10292889, -13937706, 3605088, -5931350,
--2834142, 13499082, -4828617, 6597070, 9035537, -5808407, -15154255, -7869991, 5196374, -24809878,
--7920457, 270583, -3732864, -5837398, 10815265, -11895986, -13093208, 8672613, 14623827, -7157563,
-12163347, -8581882, 29442000, -4103305, 549219, 35958540, 3554086, -19211926, -22982906, -19735912,
-36271000, -24326158, 14186814, 17411798, -12105902, 3740917, -20474110, -4370666, 15991774, -14409615,
-11446625, -4728759, -25649008, -55358372, -5322538, 50044424, 20551956, 5224828, -10226854, -14917495,
--3065533, -19614042, 6053220, -27694486, 32926294, 2529736, 3695819, 2790655, -11538967, -33433636,
--13127031, 26941792, -22280680, -5585068, -15516643, 12053826, -11209328, 37245420, -6325413, 7706782,
--13893145, -34710316, 7368554, -26499412, -6307697, -2311229, -48979808, -41021232, -39126616, 12895102,
--7493644, -20995410, -14003204, -13431436, -12735115, -18744848, -12994960, -3253975, -44029320, 12200391,
-4529043, 16100222, -10045392, 37945500, -4340065, 7311108, -13544716, -5242545, 20080046, -40531068,
-16818556, 26535382, -27645630, -17661442, 1240172, 4274030, -7619272, -13125957, -21760988, -1341640,
-56371, -12893492, 10495826, -9522479, -17446694, -9432285, -7764227, 10721312, -773094, 314606,
--871342, 7985418, -21413634, -6051072, -3024194, -4130148, -1967095, 289373, -25601226, 722091,
--8659728, -6692633, -2708514, -11315091, 2514167, -3280281, 1680943, 363998, -2772402, -2893197,
--6861211, -1136556, -5755793, -1311576, 2867965, -5804649, -9832791, 154082, -2878165, -2187749,
--6424198, -10318122, -7615514, -2766496, -2006287, -2012192, 2872260, -7604777, -8224326, 14804215,
-9437654, 17977660, -6583648, -38278360, 11260331, 253403, 63377612, 64263448, 8114267, 347892,
-15514496, 7342247, 16552804, 27575300, 10691784, 28645822, 44019656, -11158862, 6051072, -36174900,
--4772783, 4434017, -4323959, -10948409, -21452288, -18571438, 10462003, 9822590, -47390132, 33793340,
-9519258, 47798156, -2608119, -9751723, 16030965, -3561602, 50898048, 12650826, -2271501, 9503152,
-10325638, -13787382, -30569430, -24434068, -11826192, 37549288, 819802, 41297720, 5417028, 40374840,
--11390790, -56031068, -20577188, -16404091, 29214904, 3326989, -26819386, -39495444, -27150098, -5660230,
-34249144, -29720100, -25419764, -17128330, 30594662, -15101642, -8531953, -39299488, -38641284, 12119324,
-6865505, 52269752, 13762686, -5701032, -13906030, 16295106, 17297444, 55832428, 1286343, -18272402,
--23978266, -1690070, -2236604, 1153199, 8961986, 7939247, -12789339, -3062312, 4468377, 11558294,
--12283606, -10273562, 15960635, 23066658, 10992969, 6994891, 9224516, -9863392, -3951907, -6241125,
--1076426, -1394791, 5279589, -13959, 30418570, 6270116, -1124208, -9309878, -15715822, 15111306,
-24690156, -8938901, 539555, 913217, 3193845, 14015015, 6236830, 10410464, 10758893, 2692408,
-8382166, 2712809, -455803, 2733210, -7423314, -2524904, 1866163, -4496294, -3022583, -9777493,
--592706, 3172907, 652298, 38765836, 14474040, -18606872, 36184564, -2112587, -71667968, -21626234,
-44863080, 50203336, -35452272, -35156456, -36086852, 20122458, 30429844, 61389040, 18308908, 8004746,
--35204772, -3464965, -2414845, 13860396, 30408368, 22342956, 1530619, -37017788, -72307384, -19043884,
--36729488, 54232016, 57090316, 100179576, -30302604, -96304440, -21304648, -33084134, 74538624, 25465398,
-75594648, 19552302, -25718802, -73406896, -49974092, 2645700, 8777839, 82247016, 33056216, -2905546,
--68097784, -118192672, -31272730, 2462090, 54187992, 124231928, 26691612, 37400576, -80514528, -122829088,
-4883378, 28087476, 97311608, 57354456, 40635224, -22797150, -79533664, -64821792, -1080721, 18117246,
--2157684, 49200460, -41206452, -38277284, -9920838, -87373056, 13148506, 4024921, 23313620, -17697950,
--35748088, -19146428, -15400679, -40087616, 8671539, 11477763, -13265006, -2204929, -37957312, 5137318,
-10348187, 12124693, 16938814, 5350993, -19686520, 6503654, -6568079, -3538516, 2312303, 30187178,
-4733591, -1196685, -8268349, -23377506, -5034776, -9484362, 8440684, -4443681, 9414031, 6197101,
--21691196, -48267380, -24155432, -35530116, 28311888, 28770912, 33978560, 19527606, -45287208, -40633076,
--62951336, -15344308, 50108848, 55755116, 54089744, 2407329, -60765196, -45383308, -35624068, -1015760,
-89338544, 62050468, 24930674, -48483740, -56547540, -42315628, 20157892, 21059298, 30641370, 16030429,
--10039486, -14208289, -26972932, -11766063, 7537131, 919660, 9026411, 12805445, -850404, -41779832,
-55261732, -1971927, 8709120, -23714662, -51065012, 30115774, -51425792, 54552528, 8752606, 4167192,
-12364137, -34033856, 33675764, 2467996, 23613730, -32660006, 11939472, -482110, 40290016, -16528108,
-10401337, 25672630, -29399052, -18092012, 3547106, -28169080, 45138496, -10720775, -17722108, 39288752,
-46625092, -13033078, -33426120, -9114457, -29390462, -6249178, 19144280, -3598109, -36754184, 3764002,
-20713016, -13843216, 23285702, -19480898, 9357660, 23633594, -9153649, 15350213, -41941428, -43483324,
-44156020, 23612120, 67825584, -3421478, -16489453, 56419764, -32000190, -29631516, 20568598, 18635864,
-32911260, -30005178, -13482439, 8082592, -5708549, 31717796, -25306484, -80679352, 21356724, 44205416,
-1126355, -37685652, 7553237, 22228066, -8419747, -10266582, -29354490, -10204305, -24137716, 24275692,
-6577743, -17970144, -4182761, 29109140, -20503638, -8017094, -18478024, -2760053, 14920716, -21414706,
-11700565, 30462592, 12421582, -943282, -8283918, -2242510, -10915659, -14943802, 23978802, -10280541,
-11199664, -3777961, -11398843, -581431, 3114925, 1736241, 9110699, 9845676, -17307644, -5926518,
-9489730, 6988986, 18353468, -2823404, -14778982, 5615133, -17303350, 8101919, -15703474, -9630390,
-926639, -3977677, -10305774, 24698746, -10332618, 4725001, 11633456, 1921998, 9277666, 16259672,
-380105, -3404835, 1519345, -1395328, -21291764, -13073344, 81109384, 22217328, 22563074, -68700152,
--17145510, -53813256, -45434848, 41050224, 43206296, 85499376, 39537860, -11342472, -16416976, -9836012,
-27096948, 18900004, 709743, 41661184, 8240969, -16405701, -19488414, -15670725, 29998200, 212064,
-26255672, 12386686, 15908559, 4141959, -6413997, 3250753, -31139, 4132296, -6657200, -1516124,
-8697309, 7409893, 56121264, 45271104, 36972688, -3020436, 10206453, -22597434, -3637301, -13975824,
--25566866, -26586384, 8226473, 14827838, 21414706, 26299158, 21645562, -13254806, -34232500, 52493092,
--37219112, -16130287, -9441949, 18165564, 2454037, 25819196, 26780732, 23592792, -31354872, -11041287,
-4372814, -12125766, -50639276, 34169148, -11824582, -8904004, 19246286, 39620000, 44754632, 32840930,
-31970126, 27801860, -29335700, 4065187, -7481833, -8901320, 16814260, 13552769, 17908404, 8916889,
--8151848, -14424111, -21202642, -22728430, -46074800, -18186502, 6791417, -2408403, 28066000, 173946,
--12834436, -4061965, -18377092, 7182796, 2092723, -1138703, -297963, 12144557, 26262114, -3016678,
-1238561, 14717779, 972810, 380641, -5362267, -1512365, -6358699, -5819144, 1467268, -12334609,
-5464272, 7378754, -9357660, -13450764, 3637301, 2947958, -5108327, 13586055, 17816598, -2259690,
-2538863, -5659157, -18329310, -7471633, 3639448, 3265249, -104901352, -52183316, -72059888, 52071108,
-11438035, 148937120, 153804928, 153387776, 175138032, 172605616, 123903368, 77227272, 96633544, 42856256,
-8967892, -81463184, -71035000, -178050560, -155815504, -139755552, -82431696, -103877544, -79259864, -6384469,
--25336548, -10095321, -12509629, 766652, -203474, 4855461, 20315196, 21950504, 20830592, 61567284,
-63050120, 66960688, 47747688, 133797360, 34961032, 56332256, 93586800, 104457896, 38800196, 105128992,
-126355256, 99761888, 86526408, 88099976, 9723269, 52818436, 106365400, 105218648, 67760088, 88332448,
-77139760, -867583, -28472948, -19908784, -52489868, -64666640, -8272107, -72696080, -111094160, -86439976,
--103465760, -152930896, -69998840, -103335304, -114671872, -162318096, -132064336, -149668880, -171130832, -113867096,
--193507600, -228822432, -229763040, -124867584, -155431104, -195800576, -38412040, -87065968, -40840308, -21749714,
-64385316, 28841242, 94410896, 50309636, 89199488, 85028008, 55901684, 44205952, 69210176, 128147864,
-130287296, 130842424, 133536440, 138847168, 168559216, 150701808, 125078576, 153855936, 173469968, 138782208,
-104387032, 124616328, 104819752, 67877128, 85562192, 58022324, 28947006, 12674985, 26656178, 8070244,
--10463077, -7090991, -13562433, -32936494, -50367080, -50033684, -54591180, -46575164, -58360552, -92010008,
--82702280, -95079304, -107303312, -125062472, -124727464, -103203768, -103657960, -84851376, -53694072, -60605208,
--41089416, -28736552, 3779571, 113280, 869194, 5590437, 19352586, 22138946, 7961796, 17643188,
-27967754, 22295712, 10387378, 11760157, 21060910, 12521440, 5887327, 8785356, 12328704, 11211475,
-7853348, 9605694, 15520401, 14835354, 7014756, 2393371, 5186173, 9203578, 5516349, 3758,
-3732327, 6972343, 5464809, 2654290, 4760435, 5076652, 3954054, 3482682, 1747515, 1334661,
-3897146, 3122978, 3411278, 1404454, -2167348, -2742874, 1567126, 3263102, -705448, -2262911,
-617402, 2147, 659278, 1937030, 1363115, 2318746, 4214437, 3942243, 6271189, 8435853,
-9817758, 7620883, 7777649, 8529805, 7134478, 5009006, 5712844, 6808060, 5264556, 2521683,
-3285113, 1961190, 1528472, -106300, -2600066, -2378338, -3318399, -6832219, -9496173, -9353902,
--8200703, -10675141, -10042170, -9166534, -8208756, -7983271, -6602439, -5299990, -3601330, -3008625,
--1858110, -1100049, -278636, 94489, 845572, 851477, 1544578, 1047972, 1236951, 774168,
-1088237, 488016, 637803, 130997, 282931, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, },
-},
-};
-const Word32 CRendBin_Combined_BRIR_coeff_re_32kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][2819] ={
-{
-{
--4883915,
-5020817, -1855426, 3221, 4694936, -2680060, 1831804, -344671, 656593, -3192235, -6675990,
--1378685, 2623688, -1717450, 1596117, 2311229, 1965484, -1469953, 1113470, -4134443, -757525,
-1030792, 1708860, -143345, -93952, 510027, 1019518, -3462818, -2873333, 1208496, 2392297,
--1198833, 2504503, 4777614, -6426345, 910533, -3075197, -2086280, 1433982, -801548, 3948149,
--1226750, 3555696, 1866163, 581431, -256624, 1900523, 111669, -388695, -2005750, 5763309,
--4003447, -1213865, 2024540, 2238215, -102005, -1949378, 1106491, -2156074, 2234457, 430034,
-812823, -45634, -766115, -711891, 2985539, -7693360, 1804423, -989990, -4466229, -756451,
-3760781, 1820529, 2334852, -3367791, 2707977, -1172526, 1702418, 1038308, 1324461, -1422171,
-561030, 2026151, -1344325, -3005940, 1225139, -2790118, 537945, 2049236, -3221, -1008244,
--1167157, 550293, 1094680, -452582, 1315334, 62277, 941135, 812286, -370978, -190052,
-355409, -433792, -268435, -336081, 361851, -601832, 295816, -882079, -225486, -826781,
--125091, -259309, -945430, -201327, -8958228, 6958921, -3354370, 1549946, 1292248, 210453,
--1925219, -155693, -5038534, -6266894, 1705639, -1201517, 1949378, 1977296, 5639292, -4614406,
-667331, 3847754, 3712999, -3741990, -4006131, -2110977, -3479997, 332323, -1169842, -2688650,
--2089502, 30602, -6345278, -6032819, -1285806, 1224603, -556735, 522912, -732829, 1397475,
--3337190, 3865471, -1363115, 2210298, -484794, 1568200, -3045669, 1053878, 2099165, 2564096,
-1092532, 510027, 901406, -1065689, -2527052, 5142687, 3861713, 1645509, -1926293, 6372121,
-4289062, -1784559, 4031901, -302258, -3171833, -756451, -1152125, -2801393, 1825898, 2136209,
-1006096, -2145336, 4475893, -2945274, 2617246, 3815005, -740345, 412854, -5600101, -2454037,
--6026376, 904628, 2848100, -2859911, -875100, 1147293, -2734284, -736050, 1313723, -131533,
-938450, -594853, -1461900, -3931506, -1951526, -683437, -965831, -296353, -97174, 276489,
--503585, -636192, -1466731, -630286, 28454, 351114, 299037, -766652, -149787, 13422,
-198105, -143881, 205085, -44560, 385473, -31139, -728534, -1153736, -1250909, -82141,
--748398, 257698, 7541963, 3467649, -2860448, 1309965, 1009854, 12002286, -3503083, 3456912,
-5868536, -1104344, 5343476, 2189897, 3646964, -4718559, -1724966, -5533529, -2537252, 3766150,
--74088, -2622078, 668404, -3874597, -270046, -2530273, 3594351, -1541893, -454730, -1387274,
-1927367, 850404, 77846, -438624, 1589138, -5836324, -4474819, 2029909, 572841, -552977,
--2932389, 6985765, 2037425, -884226, 2339147, 2773475, 40802, 1378148, 690953, -3434363,
-3158949, -4090956, -3066070, 3687766, -4341138, 3785477, 1729261, -3300146, 5718212, 3075197,
-2219424, -1545115, 5185636, 1204202, -667331, -1495186, 1605244, 601832, -863288, -6077916,
--843424, -1190243, 1892470, -3574487, 4851166, -1684164, 3981972, -4136591, 175020, -442919,
-4950487, -2304250, -1577864, 883153, 1864553, -72478, 1000727, -763430, -4488778, -519154,
--284542, -247497, -581968, -99858, 56908, -630823, -834834, -942745, -1028645, 69793,
--381715, 10737, 652835, -768799, 518080, 592169, 1373853, -1619740, 1089311, 474594,
-853088, -107911, 1273458, 460098, -569620, -989453, -256087, -474594, 12512850, -10373957,
--9105868, -2929168, 9582072, -1330366, -5182952, 6563247, -4362613, 3104725, -233539, -7130183,
--4847945, 6025839, -3892851, 2989297, -4062502, 3984656, -1764695, -1094680, -446677, -3926137,
-2085207, 2891050, -3947075, 979253, -2002529, 826244, 1816234, -566399, 2601140, 795106,
-2130304, 3370476, -4299263, -3156801, 3905199, 213675, 3035468, 2963528, -2721936, -4056597,
--1606855, 720481, 5374615, -5771899, 2407329, -6446746, -7858180, -1835025, -4485020, -734439,
--5316633, -10131828, -5356898, 4733591, 4424890, 2879239, -3358665, 9741523, -2967286, 1661616,
--5349919, -5047661, 1360431, 22012, -468688, -6376416, -2065879, -343597, -1269163, -1219771,
--3421478, -2749316, 736050, -862215, -1864553, 239981, -3314104, 622233, 1928977, 3347927,
-1880122, -2780991, 2977486, -1910724, -157840, 3333432, 1430224, 513785, -1056562, 1729261,
-1977833, 1553704, 366146, -825171, 318901, 2381023, 1239635, 1545115, 676457, -852551,
-1287417, 272730, -115427, 388695, -640487, 255014, 374736, -667867, 1321239, 1954210,
-2295660, -116501, -143345, 361314, -1432909, 2144263, -112206, 1350767, 16019691, -5257577,
-7490960, -1999307, 10068477, -1953673, -1570347, 1705639, 2020245, -1699733, -11601244, 1149441,
--1138166, -3073586, -199716, -542777, 4097399, -1309965, 9833864, -1289027, 1086627, -691490,
-5550709, -1080184, 1896228, -4594005, -206158, -3149285, -3336653, -925029, -990527, 61203,
-3542811, -6309307, -1916092, 2170032, -777389, 4400731, 955630, -1087164, -2958696, -2864743,
--3141232, -5768678, 2124398, 2475512, 2105608, -10070625, -1545115, 7147363, 3937948, -1595044,
--382252, -3103651, -6997039, -7327751, 7264937, -2243584, -4992363, -2729989, 3915400, 3193845,
-294742, 3577708, 1403917, 3460133, -1766842, -7186017, -2524904, -3228205, -3744675, 5319317,
-3438658, -573915, 5836324, 8848170, -2171643, 3757560, -3481608, -423591, -7516, 3859565,
--362925, 974958, 814970, 1205275, 2991982, -3026341, 2333778, -1568737, 185220, -1924682,
-274341, 1027571, 2117956, 1584843, -96100, 572304, 86436, -230318, 1072668, -2856690,
--448824, -2279554, 483721, -405874, -409096, -996432, -642635, -1188095, 1236951, 605054,
--24026584, 13134547, 4753455, -1153199, -1114007, 18254, -3699041, -6726993, -1498407, 3219078,
-10103374, 6775848, -9300752, -1811403, -5552856, 3720516, -518080, -12541305, -3735548, 7629473,
-4691178, 2582349, 6456947, 3900904, -711891, -860604, 1874216, -4795868, -2858301, 1059246,
-5626944, -2425583, -4818417, -6941741, -3524021, 3415573, 11130945, 744103, -2002529, 2338073,
--2347737, -8317741, 573915, -5880347, -4646618, -5488968, 3359201, -362925, -7812546, 1421634,
-2901251, 3009162, -8448738, -4693863, -3172907, -2117956, -958315, -3138547, -1545115, -4048544,
--8201777, -984621, -6971806, -8352638, -5197984, -1504312, 1392106, -4985384, -7352447, 2122788,
-5823439, -340913, -1120450, -730144, 4224101, -6415608, 4725538, 7498476, 7277822, 5735392,
-9803263, 90731, -4101157, 2618856, 397284, -1075352, -960462, -22012, -2290828, 3224984,
-123480, 213138, -2046015, -581968, 1027571, 1197759, -1210107, -1094680, 578747, 3330747,
--482110, 1248762, 1088774, 2844342, -2375117, 120796, -93416, -2618320, 347355, 334471,
-2151242, 215822, 408022, 1862942, 1148904, -3254512, 1165547, -1180042, -9922448, 3738232,
--4909685, -850940, 1291711, 2923262, -413391, 5124433, 122943, -1037235, -13916768, 6445136,
--2589329, -2960843, 4988605, -8069170, -11092290, 4519916, -3889630, -5204427, -1646046, 10005663,
-6291590, -3669513, -2165201, 4651450, -1391569, -506269, 1343251, 4539244, 8338679, 5304822,
-6746320, -1043677, -296890, 156229, -4453344, 1127966, -1879048, 11352135, -8690329, -5041755,
--4598836, -4310000, 2728915, 1531156, 4065724, -686121, -5741298, -7692824, -2225867, -9575630,
--13329431, -2683281, 357019, 10341208, 2048163, -8219494, -2111513, 7749195, -3294240, 2587718,
-2332167, 4342749, -6172405, -9262634, -4096325, -4721780, 14924474, 1653562, -4791036, 3234647,
-2486786, -1116155, 1877438, 3400004, -418222, 6610492, -8776766, -7873212, 2545842, -3645354,
-7955353, -3696356, -208306, 4263829, -1315871, 3775276, -233002, -209917, -264141, -1309428,
--140660, 3394635, 1265942, 3297461, 1860795, 1636383, 117038, -1233729, -542777, 1369558,
--435402, 401579, -679142, 2361695, -1971927, 1366873, -1766842, 2381559, -2292439, 200253,
--221191, -265214, 1709397, 2243584, -2398202, 1659468, 922881, -823023, 3521336, 8611946,
-2764885, -642098, 5971079, -1056562, -7290170, -1306744, -586800, 7305740, -4025995, -918049,
--2149631, 1229971, -2179159, 505196, 2434173, 3480534, 5008469, 3292629, 1632625, 12765180,
-5079336, 4233227, -474594, -9969693, 726386, -8295730, 2617783, -5608154, 1453846, 75162,
-3295851, 15685221, 4508642, -2378338, 5690295, -4371203, 4858145, -2694555, 8220031, -4405026,
-22012, -6081674, 3793530, 6252936, -7208029, 14746770, -3545496, 1132261, -2199023, -3896609,
-1640141, -4352950, -12537546, 2198487, -3097745, -631360, -7719130, 1917703, -2691334, -12898324,
--5809480, -3548180, -11401528, 6584185, 16591996, 20103132, -19014894, -14494441, -8010114, 890669,
-4824859, -5807870, 2803003, -6600828, 1832340, 9329206, 14334453, -9736691, 16042777, 5207111,
-1947768, 2818036, 2962991, -3445638, 5560372, 5146445, 6186364, 4789963, 2051384, 7211250,
-115964, 2333778, -46171, 85899, 3940633, -1031329, -4570919, -1154809, 3135863, 2470680,
-1051730, 73014, -205085, -288300, 3162170, 2566243, 1176821, -2626373, 791885, 886911,
-144418, 3393561, 1525250, 2153926, 84826, 2572686, 1517734, 2601140, 3533684, 3700651,
-332323, 259846, -1692754, 4072166, 3631395, -282394, -976568, 526670, 2649995, 7444252,
--13361106, 19958714, 639413, 11780558, 4411469, -3830574, -3963718, 10931229, -6081137, 6988449,
-8567923, -852014, -5637145, 556735, 8855686, 5084168, 4663798, 4076461, -540629, 1611687,
-3131031, 11162083, 7937100, -5623723, -4756677, -671089, -2296734, -993211, -5506685, -3611531,
-5729487, 9865003, 2701535, 14769856, -3824132, 16129750, 961536, 7707856, 17770964, 12628278,
-4221416, 3794604, 8164733, -1522566, -6844031, 164283, 7700340, -4093641, -7885560, 506806,
--1046898, 16228534, 13122736, 39728, 18365280, -1412507, 9987410, 5341329, 7951595, -812823,
--6006512, 8325794, -1391033, 9705552, 6761353, 20298016, -10993506, -1743220, -22450868, 5017596,
--10910828, -1329829, 10700374, -4095251, 4546760, -1679332, 12470438, -3027952, -8256001, -453656,
--2637647, 3845606, -287763, 6109591, 7209103, 2028298, -1564442, 5692979, -948651, 2570001,
-296353, -3461744, 2777233, 2752000, 5104569, 2701535, 5689221, 2613488, 176631, 399432,
--1395328, 251792, 5589900, -1710471, -3716757, 2488397, 1074, 973347, 4636954, 1176821,
-1358820, 2002529, 3186329, -729608, -230318, 2110977, 3825742, 5852967, 5512054, 179852,
-2778844, 238371, 72478, 2661806, 3980898, -13140989, -9638443, 4751308, -7782481, 4469987,
--4685810, 1292248, 12120398, -2069101, -11393474, 3074123, -4769561, 11628624, -12171400, -8542690,
-4996121, 5582921, 8538395, 265751, -810138, 5449240, -3305514, -8389145, 5220533, -3482682,
--6616934, 1937567, 6560563, -4841502, 12299713, 4897337, -400506, 1538672, 6049999, 2550674,
--20883742, 8474507, -2095944, -2296197, -3562139, 11046119, 117575, 11763915, 548682, 943282,
-1360968, -3232500, -1216550, 5657009, -6645388, 1485522, 19090056, 1566589, 14057965, 973884,
--2777770, -1647657, -9351754, -19687594, -14178761, 6353331, 9062381, -3998615, 15061377, 6277095,
--10608569, -6359236, 13807783, 9615358, 9190156, 2653753, -4108136, -15032, -638876, -8572218,
--2484102, -5075578, -22901840, -10053445, -405874, 15308874, 3576097, -3735548, 1796907, 13113072,
--3153043, 507880, 225486, 3194382, -4209068, -2262911, -3102040, -2049236, -991601, 3010235,
-10201, -756988, -31139, 2310693, 2175938, 3706020, -2578054, -4513474, 1742683, -4769025,
--2330557, 370441, 1856500, 322659, -598074, 4562329, -2016487, -1639067, -5306969, 1879585,
--4771172, 3716757, 1967095, 2386928, -3992709, 144955, -489626, 1821066, -2191507, 1362578,
--1927367, 2382633, -4430796, -85362, -5232344, 6077379, 12774306, 5026186, 4454955, 14627585,
-12272869, 10285910, 653909, 3990562, 1033477, -2075543, -2547453, 2613488, -889595, -8352101,
-2136746, 8702677, 152471, -2178085, 2862596, -20781200, 7251516, -8123931, 5469641, 7383586,
-6680285, -7645579, 4507032, -558883, 75162, 12711493, 9359271, 377420, 5130339, 3867081,
--1437203, -6860137, 1987496, 6335614, 374199, 9128953, 2915209, 8281771, 16082505, 1080721,
-6646462, 7031399, 8745627, -102005, -5172751, 13928042, -5028870, 11293617, -12738336, -10436234,
-15249818, -496069, 5218386, 9091909, 13342316, 17169668, 7398618, 2586644, -7988103, 3981972,
--1421634, -14858439, 13102871, 8256538, -12103755, -468688, 1044214, -15234786, 5485747, 12593918,
-7559143, 164819, 5014375, 3643206, -6943889, 13760001, 1573569, -2372433, 7230578, 13614509,
-5519570, -261993, -4381404, -3381750, -1320166, 2557653, 4044786, 5790690, 2080375, 1232656,
-2005213, 6721624, 6038187, 7442105, 191126, -475131, 3127273, 6414534, 306016, 854162,
--944356, 3118683, 789737, -418759, -2028298, 1751810, -4132296, -7594576, -73014, 4720706,
-173409, 3425237, -3471944, 2700461, 458488, 3028489, 715649, -1831267, 2080375, -1138703,
--875100, -202400, -4480725, 3686156, -1465658, 1705102, 2939368, 443455, -390305, -1902134,
--2798171, -34899292, -21716428, 7033546, 7378754, 14271103, 23651312, -6576669, -3740380, -7604240,
--7021198, -8963597, -9562745, 708670, 3796214, 2928631, 14922864, 579821, 14645838, -818191,
-5028333, 6708202, 5199058, 10832444, 7767985, 464393, 9603010, -211527, -1146756, -5632313,
-6499360, -972810, -14323179, -12484933, 7773891, -1898376, 17081084, 10089952, 10987600, 3952981,
--21478058, 5063767, 13521094, -2191507, 3943854, -3414499, 2696703, 16843788, -572304, 14092325,
-23728620, 1198296, -8924942, -392990, 275415, -15025406, 20154670, 9441412, -2640331, -1300838,
-14616847, 6714645, -17634062, -14554570, 5712844, -6431714, 8493298, 5922760, 2724620, -7178501,
--12503724, -793495, 3235721, 2165737, 13641890, -18446884, 2728915, -1458141, -15397458, -7592966,
--15482820, 13353590, -4546760, 18541374, -14689325, 1135482, -7027640, 10424422, 4723391, -4866198,
--807991, 9575630, 702764, 2808372, -5602248, -3297461, -4720706, 8440684, 4425964, -314069,
-2418604, 2325188, -7883413, 245350, -2143189, 2499671, 1777043, -2037425, -8049843, -3164317,
--5914170, 6877317, -5242008, 839129, -1321239, 6790880, -1386201, -1596117, -2413772, -4801774,
--136902, -3315178, 2966749, 7493108, 6988986, -867047, -7049115, 8727910, 24712704, -29417842,
--8232379, -14340896, -606127, 4663261, 775778, 19722490, -20357072, 9623948, -2783139, 3931506,
--2468533, 10831371, -5976984, -10076530, -847719, -2935073, 7650411, -635118, 5170604, 11476689,
--2393908, -8596914, -1156957, 12906914, -7598871, 3080029, 2895882, 515933, -1178969, 12819941,
--491774, -3301756, -21413096, 6890738, -5304822, -13514651, -11771432, -3119757, -13048648, -7678328,
--11332808, 5377299, -13372918, 13339095, -12275553, 8272644, -6348499, 16171089, -15671262, -9090835,
--2371359, 9373229, 3843459, 86436, -6458557, -12823699, 1289564, 5022428, 18304614, 9613211,
-3983045, -10469520, 6217502, -9286256, -10499048, 9155260, -10193568, 4857608, 11854647, 9913858,
--2659659, -3776350, -8584566, 14294725, 1377611, 13681618, 22080426, -4315906, -11617887, -5170067,
--3883187, -7953206, 3475166, -13206488, 5733245, 4320200, 3946001, 10460930, -7413651, 396748,
--1371705, 2659659, 9477919, 286689, 7446937, -2702071, -208843, 948651, -4269198, -1506460,
-4458176, 2382633, -6091338, -7903277, -3795677, 3500398, 3096135, -3467649, 11265699, 3318936,
--8302709, 4172024, 6000606, 15074261, 12199318, 6871948, 2494302, 1460826, -6370510, -4948876,
--255014, -5014911, 903554, -2907156, -9287867, 5100274, -3109556, -1285806, 1039382, 5026186,
-63888, 16460999, 22759568, -23894514, 17719424, 12373801, 694711, 8930311, 30218316, -8390755,
--8577050, 2938295, 8965207, 12586939, 4222490, -11680164, 13407814, -4813048, 26715234, -624918,
--4290136, 8687108, 7098507, 6997576, -180389, 25057912, -20648592, 5140002, -270046, 6933688,
--8550206, -17202954, 8704825, 6853157, 7121056, -5973763, -4489852, 20956756, 7943542, 26316876,
-2510945, -9634685, -930397, 5905580, -2169495, 27314918, -3314641, 14905147, -2527588, 24515136,
-9027484, 6665253, -5814849, -1302986, 13573707, 323196, 14527190, 10947335, 12852153, -16838420,
-2834679, 12151536, 14649597, 10917270, 8441758, 19621558, 24119462, -18235894, -2069101, 36538896,
--8642548, -9810779, 23732378, 31891206, 731218, -253940, -17090748, -14106283, -797253, 16046535,
--2202781, -2949569, 862752, -1160715, -4297652, -12206297, -4341138, -867583, -7120519, 558883,
-7572564, -4086662, 9646497, -9546639, 8522289, -1887638, 7442642, -7140383, 389231, 5468567,
-3318399, 9308805, -1488206, -4811974, -2005213, 2819646, 8600672, 2570001, -2868501, 11738682,
--3483219, 6221797, 6328098, -995359, -1148904, -2571612, 17195438, -6154152, 2346663, 4416837,
-6496138, -3016678, -10890426, -6342593, -1765232, 12945031, 6398965, -900333, 932545, 4647692,
--665183, 221728, 4719632, 2481954, 1327145, 178241, 10069551, 22585086, -1319092, 7094212,
--19186156, 18393734, -9706089, -5943161, -16801376, -10853919, 34561600, 550293, -24283208, -10771241,
--702227, 170188, -3193308, 26774826, 12479027, -2201708, -11146514, -980326, 7018514, -3224447,
-35554812, 7645042, 15622407, 5478768, -8031052, -20048370, 4708895, -137976, 3122978, -15507516,
--1691143, -10439455, 11948599, 173409, 1917703, 12553653, -11326903, -8152922, 2395518, 659814,
-3631395, -17114370, -13612899, -29402272, -15524696, 1395328, -16947404, 2390686, -12327093, -7195681,
-21825950, 7030325, -10766409, 6706592, 2377265, 52613, 20975010, -3468186, 25428354, 9925133,
--11125576, -31033286, 5303211, 5128191, 17132088, -9174587, -22552336, -7820599, 6342056, 1282585,
--5506148, -15955267, -5347771, -22610856, -26134340, 8290361, -1626182, 26781806, -8697309, -16022912,
--14285061, -1110249, 18605798, -821949, 6719477, 12265353, 9027484, -3927211, 5909875, 8456791,
-2528662, 8666707, 8067023, -5660230, -1091459, 12065100, -2594697, 1880122, 11014444, -1905355,
-6426345, -8080981, 2986076, 6720013, -4074850, 4119411, 3427921, -7516193, 10040023, -9490804,
-4696547, 5456219, 7895761, -1755031, -5954972, 11300059, -1781338, 8437463, -12088185, -5420249,
--8974871, -6964827, 739808, -5674726, 4110284, 937377, 1496796, -11443403, 16091095, -18048526,
--1185411, 27169964, -5976984, 7971460, 2727304, 3513820, -25668872, 21132850, -2232309, -20551418,
--12105902, 10641318, -3185792, 5283884, -259309, -8568460, -6459094, 3600256, -6471442, -1558536,
--500364, -29734596, -7899519, -19963544, 4251481, 6988449, -328028, -8832600, 3368865, -4267050,
-11479911, -26321170, 1605781, 4496831, 14861124, -11506217, 13834090, -11335492, 8745090, 2302103,
-10726681, -17214766, 5086852, -8570607, -18376554, 11758010, -14902463, -29705068, 4189204, -2861522,
-23192824, -11357504, 3104188, 10648298, 15331960, 17457432, 1725503, -6098854, -11210402, 263604,
-8193187, 11465415, -23249194, 25777856, -365609, -17555142, -13221520, -23329188, 9298067, 5549098,
-9087077, 3996467, 24479702, -8849780, 26619670, -14634564, 6106370, -6007049, -12611098, -37428492,
-20900922, 3930969, -10065256, -25444996, -1640141, 4592931, -2337536, 9164923, -7002408, -8258685,
--1486596, 3835406, -7284265, -7140920, -4663798, -1433445, 3754338, -2331630, -2432562, -10177462,
-7284802, 102542, -5675263, 4463008, -4167192, 7613367, -2578054, 3734474, 4964982, 9432285,
--3486440, 8548059, 785979, 328028, -9576703, -7540889, 2113661, 3369402, 1113470, 328565,
--2010582, -6325950, -3604551, -3098819, -6907381, -3270081, 11535208, -6061810, -6873559, 3454764,
--14854681, -22018686, -138513, 12067247, -4871567, -23842438, -3847754, -34819836, 16785270, -38475928,
-22879290, -26614302, -23251880, 6564321, 19836844, 14824080, -13280039, 13906030, 24968256, 4409858,
-3664144, 5852967, 2179159, -14795089, 17881560, -30185030, -18815714, 1658394, -1953673, -1968169,
--4096862, -7544110, 3933653, 27717034, 7082401, 3828963, 2505040, -13081397, 16015933, -2937758,
--28015534, -4321274, 499827, 579821, -19200652, -13512504, 14592151, -4804995, 25112136, 4663798,
--88047, -20532628, -11356967, 7554848, 3148748, -5601174, 21496848, -17104170, -10498511, -747324,
--1374926, 20393042, 1547262, 23858006, -104690, -19485730, 4742181, -16609175, 12550968, -2319819,
-17142826, 32658932, -50352048, 17135308, 6841883, 9223442, 18906982, 4742181, -23154706, -5317707,
--2203318, -4135517, 11664057, -23562190, 2127083, -6141267, -3470334, -16217260, -8849780, -24552718,
-2633352, -1500554, 2427194, 6828998, -10090489, -1749662, 11844446, -7297687, 2240899, -4033511,
--12226161, 5701032, 7224135, -8427800, -995896, -13353590, -889058, -19348290, 6883222, 4850629,
--2522757, 2164664, -5001490, 903554, 3853123, -3023120, -3724274, 11190000, 13465259, -2950106,
-4401805, 2289755, 13823889, 6296959, -17620104, 2435783, 9962714, -5602248, 10067940, 3397319,
-4584878, 41149008, 35566624, -10129680, -13700409, -778463, -26986890, 15818365, -1500017, 5988258,
-2146947, -13632226, 41059352, -17591650, -72296112, -10558103, 14485851, -48673252, -8296803, 15269146,
--41205380, 5750961, 26911192, -18939196, 26848378, -25706454, 23074712, 28584618, -18190260, 7800198,
--2578054, 640487, -7674033, -11281268, -2028298, 17598628, -11275363, -18844706, -10246718, -15173046,
--1550483, -11907260, -1890323, 6313065, -2778307, 17184702, -15093052, -18602578, 14894947, -19679004,
--29152090, -37446748, -12989055, -881542, 7348152, 20881594, -8654896, 9364102, 9844065, -6863895,
--3164317, 34400004, -22675280, -872415, 23606750, 7303592, 18577344, -4622459, 6816113, 26118232,
-13494787, -1417339, -3116536, -16095390, 6670084, 26270168, -24356760, 18581640, -24102282, 7056095,
-34249144, 7879655, -19127636, 19434728, 3159485, -12266963, -9504763, 23517094, 7814693, 10143639,
--1343788, 1779190, 6525129, 7713762, -627065, -2356863, 10078141, 8724689, 1913408, -11625403,
-12870406, 1580548, -4338991, 3144990, 4460324, -8466991, -2171106, 6524592, 1334124, 10869488,
--13353590, 20192788, 15722265, -2785286, -12734578, -5207648, 13533442, 15388331, 24901146, -774705,
-4845797, 4055523, 13676786, -20728050, -10995653, 20774756, 13057774, 1396938, -3307662, 1772748,
-5789616, -10859288, -8471286, -7310571, 1555315, 6612102, -3320547, -11778411, -8421357, 36103496,
-24460376, -34862248, -7054484, 31077846, -9496710, -19296214, -13625247, -19363324, -11431055, 31371514,
-19133542, -2573222, 14236206, -3474629, 17359720, -10981158, -6096169, 34852584, -14549202, 6257768,
--10124312, -3824132, -420907, 9492415, 28372018, 10887205, -19268834, -5701032, -909996, -2973191,
-15961172, 2077690, 28572270, -8489003, 4920422, -3012383, 8327405, -24034100, 14386530, -22176526,
-14955076, -1238561, 21959094, -5801427, 16280074, -7585449, 5116917, 9278203, -9500468, 9613747,
-22173306, 27631672, -14689325, 28312962, 11923903, 33602212, -9684614, 6268505, -1271847, -4233764,
--6473590, -2415919, -11169599, -55309516, -34782792, -10792716, -718333, 7738458, 3869229, 12659953,
-20774756, -30488900, -1735704, -12378096, 45967960, -3324842, -14035953, -4107599, -40397388, -33872260,
-50808388, 20566450, 11327976, -7955353, 15888158, 1203665, -37002216, 7437273, 2459406, -14179835,
--14472966, 2202245, 153545, 3809636, -7792145, -4061429, -18166102, -15450071, 6427956, 7923678,
-6944962, 5264020, -9486509, -13976360, -8507256, -18046378, 11247982, 3711926, -31913218, -3924526,
--9318468, -2360085, 15477988, -14826227, -20692078, -4700842, 13204340, 4324495, -14405857, 8346732,
-18289044, -34418796, -9330280, 12002286, -747324, -2803003, -6667937, -1588601, 5825587, 10022843,
-2266132, 27487254, -39482560, 37381784, -10768557, -11015517, 9705015, 17462800, -30896384, -6095096,
-653909, 6307697, 1778117, -773094, 15662672, -9324374, 2103997, 8286603, 9161165, 13083544,
-10841034, 3697430, -16910360, -3318936, 23247584, -22371948, -19119584, 24091008, 8291971, 17052094,
-26320634, 40758164, -9118752, -25750476, 34491272, -13784698, -5705864, 35949952, 11362873, -13051869,
--37304476, -24588688, -3658239, -13710072, 17693654, 35431868, 18204218, -12021077, 36385888, 12312597,
--13048648, 10115722, 40593348, 11825656, 7946763, -8435853, -32342714, -43443596, -34517580, -2388002,
-26346404, 8136816, 16683800, 62194884, 30693984, -37044092, -24928528, 16589311, -51339892, -23514946,
-44462576, 15970299, -57053272, -47575352, -22022444, -36393944, -34215320, -20412906, 31209916, -8729521,
--6415071, 81292992, 13749801, -23234162, -6369974, -25113210, 43233140, -8964670, 9471477, 3110630,
-718333, -23493472, -9036074, -1724966, -11869679, 2975339, 9343701, 21249350, 2838437, -14224932,
--534187, 58519, -9386114, 4499515, 6207302, 7289633, -18640158, 4945118, -17265232, 3156264,
-9169218, -880468, 13902272, -3211562, -843961, 14151380, -2814814, 7979513, 15589658, -5128191,
-4677757, 10882373, 11724724, 9761924, 1964948, 2570001, 8160438, -8408472, -3275986, 5769215,
--55371256, 38477000, 16551730, 12497281, 15498389, -5877663, 19000936, 15626702, 22262962, -4143570,
-30507690, -19067508, 23152022, -8346732, -17648558, -5545340, -28981902, 3083250, -10618233, 10327249,
--7328825, -11172284, 27877558, -31922882, 20670604, -1029718, -13910325, -5521181, 12360379, 14014478,
-10096931, 26419954, 21264384, -15201500, -3172370, -13593035, 11854647, -12040404, 9245991, 12760348,
-5818070, 7187628, 4724464, -7452305, 29097330, -2665564, 8648454, 2964601, 13404593, 7496329,
--34799972, 2312303, -20823076, 5364951, 15349139, -2792803, -14752139, -13450764, 32409286, -34213172,
--27737436, 50939384, -21643414, 13254269, 5033702, 16399796, -7708930, 8608725, -35449588, 2481954,
-34360812, -18366354, -13947369, 29709900, -2068027, -24530706, -18252000, 10989748, -9692131, -5657546,
-18340048, -13497472, 4521527, 22977538, -25880400, 1763621, 15048492, -8313446, -5207111, -6677601,
-9227737, 2637647, 3674882, -3320547, 5200132, 4046933, -5163088, 468151, 823023, 13749264,
-6794102, -12740484, 15579994, 4005594, -8090645, 4662187, 4677757, -1333051, -4793184, 11332271,
--108448, 3882651, 1275605, 14634564, -6891275, -5373004, 8680129, -12954695, 16275779, -1130113,
--9451612, -1422708, -1169305, 2087891, -374199, -6201933, -1145683, 8682813, 16917340, -33296198,
--133538584, -144016688, -5728950, -82831128, 72360536, 262967968, 114325584, 158387664, 200176080, -76316736,
--54129472, -21854404, -180769808, -126582888, -41391672, -198159056, -86655800, -18097918, -81309640, 18751828,
-185025040, 168054560, 181899376, 235933824, 141960480, -13314935, 52640728, -53497576, -210872688, -114791592,
--85074176, -175296400, -120353040, 6186364, -135085856, -44795436, 29203630, -134963440, -69459824, 100114080,
-38526932, 108614888, 271280864, 220455296, 178168672, 320967744, 232829104, -4465156, 33058364, -60588028,
--288547168, -275825472, -284534592, -442900256, -300178496, -185716528, -181822064, 1661079, 143129248, 161299648,
-226247600, 342817856, 317198912, 267728400, 264304240, 151151712, 52784076, 7910256, -16838956, -120864136,
--207668112, -254826848, -272832960, -368158144, -306171040, -236220512, -115888416, 122686816, 363162560, 338246400,
-370649248, 259796128, 31206158, -35900556, -111983760, -153708288, -104126648, -51354924, -51825224, -23244364,
--24068996, -37835440, -284005, 4848481, 26501022, 84107808, 76287744, 56124484, 77304040, -7900056,
--50851876, -7302518, -59614684, -51641076, 31113816, 33757908, 7384123, 7334194, -90561000, -230745504,
--218571424, -186180928, -140436848, 67604392, 209500448, 256379488, 323928032, 290386496, 178890752, 124091808,
-43705588, -52121040, -108837152, -129674728, -168087296, -206096688, -232428064, -271307168, -241328304, -83675088,
-58921584, 139241232, 180591568, 196377712, 147273360, 102186936, 51091856, -2022393, -6049462, 24994026,
-39906688, 43802224, 47631724, 39638792, 3680787, -32318556, -70068096, -125386736, -120377192, -96618512,
--78635480, -38289096, 3576097, 27172110, 24034636, 15705085, 9292162, 7614440, },
-{
--7769596,
-3768297, -8835821, 1731946, 642635, 554051, -6028524, -2137283, 1660005, -1321776, 1964948,
-3140158, 1896228, -82141, 2475512, -6815576, 165356, -265751, -166967, 3743601, 5696737,
--5975374, -1340030, -3624953, -1181116, 2125472, 3909494, 631897, 970126, -1473711, -1946157,
--1586990, -1208496, -2721399, 1487132, -2743410, -1851131, 3117610, -2664490, 2237678, 369904,
--6746857, -2286533, -3719442, -891743, 2863133, -1995012, -592169, -1962263, -2030983, -1419487,
-2798708, 4258460, 782758, 2367601, 1879585, -2263448, -4291746, 2301029, 1893544, -938987,
--3693135, -3081102, 2777770, 561567, 2077154, 988916, -5676336, -1875290, -2114198, 3129421,
-1264868, -5708549, 1500017, -3026878, -938450, -298500, -2070174, 1626182, -1889249, 435402,
-2175938, 2246268, 1379758, 1548336, 1013075, -183073, 1081795, 1331440, 125628, -1109712,
-1523640, 314069, 12348, -451508, -1023813, 489626, 960999, 171799, 788663, -305480,
--521839, -13422, -801548, 840203, -148176, 993748, -192200, 191663, -96637, 923418,
-485868, -49392, -389231, 584652, -10961830, 7269769, -5234492, 734976, -690416, -1993939,
-5572720, -4885526, -3244311, 4832, 5890548, -2174327, -326954, -623307, 4875325, -2925947,
--7783018, -1723893, -3996467, -5440113, 217433, -425202, 915902, 3160022, 5205501, 3245922,
-517544, 7947300, 3106335, 278099, 5677947, 5947993, -461172, -3190624, 242129, 2632815,
-2113661, -36507, -1129040, -4599373, -4048007, -1986959, 4558571, 1890323, 7839389, 4438849,
--334471, 2628520, 3202435, 1075889, -4849018, 5274757, -2074469, 2762738, -195421, 1676648,
--5784247, -915902, -1829656, 2061047, -1756105, -2179159, 6066105, -408022, -4529580, 1807108,
--3443490, 2836289, -1935957, 4546760, 3925063, 4361540, 1480153, -4180614, 2321430, -624918,
-2288681, -1802813, 664109, 5970542, -2281702, 2906082, 3935264, -576599, 254477, -166967,
--698469, -1571958, 1005022, -81604, 1505386, -19327, 1219234, 89657, 114354, 872415,
-1466195, 618475, 1408212, 1565516, -279173, -1118839, 2032593, 235686, -41339, 171799,
-1245541, -315143, -1091995, 602906, -251256, 336081, 59056, 1227287, 410706, 675384,
-414464, 2190970, 2462627, 124017, -2135673, 2296734, 897111, 693637, 1088237, -8685498,
-2812667, -5537287, 917512, 1785633, 1883343, -2545305, 4609037, 723165, -1708323, -804233,
-5379984, 3852586, -2343979, -3023657, -2473364, 2070174, 3817152, -2321430, -2524904, 732292,
--9842454, -39728, -4201015, -1675574, -4179003, -5495948, -674310, 4967667, 1373316, -4483946,
--1185411, 4248797, 1291711, -2760590, 4831302, -2124398, -6736656, -2029372, 3783866, -1694365,
-4477504, 8532489, 6921340, 933619, -93952, 2393908, -1048509, -5074504, 54761, 1877438,
--3615289, 3022583, -7171522, -1099512, 447750, -3073049, -2340757, 3096672, 6256157, -4928475,
--5114769, 3151432, 3202435, 5858873, 1900523, -3468186, 4706211, 4029216, -1349157, 4495220,
--5004711, 5040144, 1233729, 3405372, 698469, -2728915, -1541356, -522375, 1120987, 71941,
--2459406, 813896, 29528, -1476932, -1178969, 296890, -361314, 1068910, 68183, 1806571,
--1332514, -1014149, -64425, 198105, 1601486, -849330, -1591285, 685047, 62814, -377420,
-1090385, -287763, 662499, -761820, 667867, 925029, 130460, 1524713, 14785425, -5742372,
--2528125, -945430, 10660109, -1059783, 8062191, -5859946, 7104950, -7029251, -6167036, 1484985,
-3365644, -4149475, -1018444, 2121714, -541703, 2766496, -4278861, 4942434, 1788317, -5296232,
--199716, 2128156, 1661079, 949725, 10028749, 7994545, 6254546, 2147, 4060355, 383326,
-1172526, 3005940, -9251896, -1411971, 5640903, 3672734, 4378719, -100395, -1637993, 2046015,
--362925, 11312944, -1710471, 1910724, 1137093, 556735, -3343632, 6786049, -769336, 7055558,
--3883187, -4070019, 2923799, -2710124, -9411347, -4332549, 1897839, -890132, -6731288, 1883343,
-22012, 8766028, 769873, 764504, -2676302, 3194382, 3237332, -714038, -508954, 7700877,
-5659693, 5623723, -3708704, -5277978, -4609037, -9019431, 753230, -6384469, -2155000, 407485,
--3481071, -3970697, -2212982, -444529, -1354525, 2128693, 3963181, -736587, -456340, -1774358,
-919660, -1283658, -1486059, 638876, 1087701, 22012, 1400696, -811212, 52076, -783295,
--528281, -425202, 816044, -482647, -487479, -285615, -1280974, -1453846, 91268, -155693,
--1763084, 1505923, 1504849, 1834488, -33286, -1271310, -746251, 1443109, 10844792, -8636642,
--242666, -9032316, -5943698, -3533684, 7788387, 4560182, -10908680, -14902463, -5753646, 5224828,
-3707094, -2254858, 5070209, 24696, -1293859, 554588, -7849590, 2330557, -1057636, 628139,
-2444910, 504659, -55298, 3261491, 2857227, -5222144, -5209796, 5892159, -1901597, -2934537,
-3596498, -10200547, 2398739, 2101313, -9404368, 3389266, 9678709, 5856188, 6635188, 1343788,
-3649649, 9193377, 1703491, 1734630, -10597295, 5561446, 7943542, 6499896, 1227287, 6603512,
--7558069, 7398618, -2252174, -7429220, -11444477, -131533, -7289097, -5877663, -2537789, -6979322,
--17383344, 735513, 879395, -599148, 2676838, 8522826, 3186866, 3427921, 2252710, -6218576,
-883153, 2884608, 2464774, 2186138, 2500745, -6381248, -1913408, -8039105, -3644817, -592169,
-1848447, -2948495, 2827162, 556735, 481573, -2023467, -344671, -1080721, -2684, -1166621,
-1056025, 335007, 796180, -307627, -1483911, -1236951, -1223529, 1220308, 776852, -14496,
--580357, -1121523, -1217086, -1182727, -3629247, 533113, 493384, -2753074, -1443646, -1007170,
--23475754, 11538967, 1474784, -9131637, 2201708, -1020055, -2704219, -1879585, -5178120, 2754148,
--2661806, 524523, 3367254, 3096672, 10151692, -4131222, -9726490, 5262409, -12329777, -5334350,
-1997160, 1669132, 1392106, 3963718, 4930623, 4231080, -101469, 5607617, 355409, -2268280,
-7474854, 4608500, -2291365, 4421132, -7753490, 14598594, 542777, 2688650, -1381906, -12594992,
--2184528, -4709969, -4409321, 1913945, 10460393, 259846, 431107, -1387274, -2895882, -6817187,
-2138357, -1156957, 3741990, -8582418, 2876554, 4511863, 1997697, -6369974, -2252710, 1627256,
-812823, 5086852, 1003412, 17746268, -5081483, -7623567, -8621073, -2649458, 178241, 6308233,
--8586713, -1155883, -3682398, 3879966, -12534862, -588411, -3397856, -5290863, 1559610, -1566053,
-3415573, -489089, 6278169, 3933116, -19864, 1292248, 484258, 748398, 7281580, 833761,
-5207111, 1846836, -1316944, 92342, 186294, 1463510, -958851, 732292, -279710, 2164127,
-408022, -1689533, -2396055, 1897302, -922881, -2895882, -1257889, -1541893, -663036, -913217,
--53150, 3491272, 60130, 954020, 426812, 1387811, -1396938, -817654, -3034931, 10569378,
--3438121, -2558727, 2251100, 3096672, -8580271, -8658117, -7921531, -7448547, -12162811, 7612293,
--7131793, 2110977, 2912525, 10990284, -1858110, -2656974, 8600672, 1963874, 1773285, -10177999,
--6680285, 4946729, 2128156, 3924526, 5925445, -10721849, 80531, 4518843, 10155450, -147103,
-924492, -1579474, -32749, -7013682, -1359894, -2212445, -13003550, -1087164, 3921305, -7487202,
-3144453, -8141648, -88047, -5648956, -1193464, -1797444, 688805, 10402948, -3091840, 86436,
-5313949, -3049427, 3093450, -8730595, -15508590, -8456791, -4734665, -2247879, 1598265, 10256919,
--4901095, 2705830, 2461553, -7484518, 2456721, -5779952, -2063732, 3711926, 10413148, -1674500,
--615791, 3274913, -293132, -9899900, -9362492, -3976603, 9230422, -1192927, -13987635, 908922,
--9211094, -4137664, -1960653, -1047972, 3032247, -3604551, -1128503, 3384971, -1043677, 3987877,
-3461207, 2464238, -1716913, 3901441, -3620658, -2761127, -2585034, 512712, -480499, -856846,
--908922, -779537, -1299765, 699006, -393526, 2474438, -1850057, -1228361, 1008780, -1645509,
--985158, -4126390, -4944581, -535260, 309775, 2289218, 244813, 1337882, 34897, 10321880,
-10834592, -3311957, 1009317, 11365557, -11555073, -10279467, 8696235, -2077690, 1189706, 7898982,
--1559073, -2153926, 7886097, -14601815, 6223408, -652298, 2472291, 7117298, 7332046, -8172249,
-1548873, -11230803, 3455301, -3374234, -1206349, -7812009, -404264, -11201275, 1082332, -9707163,
-6801081, -3398930, 1283122, 12138114, 5619965, 5441187, -9686762, 1795833, 11238319, -2646774,
--15984795, 8590471, -1957431, 1579474, -3150896, -7394323, 10549513, 3811784, 8594766, 2166811,
-1239098, -7077569, -9217000, 3337727, 4304094, 4641786, 6120329, 14163192, -476741, -10944650,
--7145215, 8535711, -1233729, -9403294, -2485712, -556735, -2576444, -11904576, 183073, 1655173,
-2974265, -4297652, 6870874, -326954, 755377, 9806484, 4998268, 10210211, -10023380, -4163971,
-1846299, -5480915, 4560719, 2829310, 2792803, -392990, -1276142, -813896, -156229, -3920768,
-5044976, -1822140, 3093450, -790274, 3603478, -1411434, -1789928, 250719, 2070174, -1750736,
--69256, -414464, -1990717, -971736, 912681, -2157684, -683974, -4613869, -3627637, 1996623,
-3206193, 1702955, 1460826, -449361, -380641, -2137283, -349503, 2431488, -3102040, -401579,
-1431835, -584652, 2509335, 2475512, -1736777, -657667, 2243584, 1602023, -1167694, 8219494,
--10004589, 11718281, -2637647, 12395276, -10122701, 9174587, 1010391, -969589, 15439871, -8065949,
-925029, -7829189, -2331094, 23530516, 11358041, 4996121, 3407520, 6692096, -3757023, -31675,
--19889994, 3694746, -827318, -8603893, 9543417, 7155416, -293668, 1698123, -11491185, 10129143,
--5363878, 10756746, 7054484, 5742908, -8242579, -1452773, -6929393, 10328323, 2384781, -3764002,
-18315888, 8749385, -2058900, 958851, -15162308, 2572686, 710817, 12045236, -5405217, -15432354,
--2647311, -4272956, -2991445, -21810380, -10858751, -23230404, -11823508, -8305393, 2742874, -5844377,
-10975252, 1362578, -12530030, 7561290, -8380018, 11854647, -10562398, -8578660, 6190122, 10559177,
-10416906, 30065, -9747965, -7792682, 4783520, -6391985, 250719, -3230352, 3941706, -4388383,
--6434935, 11361799, 5281199, 1549946, -1799054, 4280472, 2432562, 5269388, -485331, 3568044,
-1274532, 5917928, 125628, -280784, 343061, -2918967, 112206, 1511829, 734976, 647466,
-166430, 4557497, 2098629, -3601330, 406948, 2072322, -1130113, -1376000, -863288, 273804,
-877784, 2294586, -569083, 1564442, 2673080, -555125, -2699924, -238371, -2944737, -1296006,
--2719251, -1755031, 2368138, 162135, -1519882, -14412300, -17111686, -11342472, -1632088, -220117,
--2219961, 4067334, 6190659, 4298189, -2684, 2304787, -5430986, 3563749, -11024107, -15368467,
-482647, 11781632, 2063195, -4150549, 9428527, 5578626, 9125732, 15359877, 1994476, -4745939,
--9789841, -7841537, 4488778, -8987756, -6230924, 2309082, -7111392, -15677704, -8593156, -870805,
--1819992, 3660386, -3526168, 8676908, 2521146, 3288334, 12015708, -1931125, 1424855, 2779918,
--9591199, 11307038, 1862405, -10468983, -17119740, 4350265, 1538672, -12446278, 13166222, 8542690,
--11532524, 3898220, 11067057, 6221260, 2966749, 9185861, -4206921, -3714073, 694711, -5097053,
--8150238, 13941464, -12437152, -1393180, 5201206, 1188095, 21675626, -18824842, 5738613, -2412161,
--91805, 6055367, 241055, 1292248, -5064840, 2862596, -11167989, -23679228, -1338956, -294742,
--12175159, -7743826, -1702955, 4468377, 3894999, 1661616, 992137, -3950833, -130997, -5531918,
--2795487, -1079647, -3218541, -4988605, 1694365, -956704, 835908, -2558727, -1881196, 1166084,
--4076998, -8646306, -3037079, 571231, -2363306, -8338679, -4670240, 3441880, 2344515, 1625645,
--1676111, -3212636, -4017942, -753230, -2033130, -4740034, -3946001, -5586679, -2941516, -3774203,
--3800509, -125091, -955093, 1496259, -1509681, -1062468, 3049427, -4175782, -11172284, 9836549,
--20196546, -14342506, 10631118, -497679, -18396956, 9430138, -10768557, 20817706, 4153234, -27399744,
--3498788, 2491618, -6935836, 2062658, 4760435, 9727027, 8310762, -15913391, -715649, 1491964,
--3319473, -14581951, -2275259, -3022046, -5031018, -4443681, -232465, 1086090, 12392591, 13608604,
--4239133, 7333657, 6303938, 6193343, 13531294, 181462, 3621731, -15604153, -5390721, 5514201,
--3111704, 7551626, 18582712, 2755759, -16310138, -36280124, -106837, -11173357, 10282152, -6842957,
--3721589, -7112466, -19632296, 8555575, 26186416, 1558536, 6844568, -20537460, 4231617, -2304250,
--9286793, 2390149, 10027138, 5259188, 8085813, -8820252, 12981539, 7665443, -15186467, -22479858,
--1461363, -17082696, -16047608, -10166724, -11839077, 1587527, 21087752, 8159364, 750546, -2768107,
-13568339, -6864432, -10149008, -1560684, 2090575, -1528472, 2477659, 2175401, 97711, 2204929,
-5176510, 1988033, -589484, 467078, -2041720, -1919314, 5430986, -1564979, 5342403, 222265,
--3069828, 755377, -1629940, -2167885, 6462315, -1461900, 3482145, -7869454, -1051730, 3993783,
--70867, 1706713, 6599754, -4860293, 6027450, -483721, 639413, 1991254, -2075543, 4774930,
-636192, 417686, 776315, 374199, 2075543, 6124624, -2536715, 2253784, 2300492, 2484102,
-2593087, -39564164, -24974698, 17972828, 14476187, 23538032, -62277, 9288404, 2317672, 7446937,
--277562, 4811437, -10397579, -12466679, -7733089, -11158325, -7195144, -7941932, 9589051, 22630182,
-4959077, -27557048, -6531035, 4860829, -7303592, 6765111, -15746424, -1249299, -511101, 944893,
-7708393, 5855651, 1101122, -1870995, -3502009, 6448357, 12498355, -9972377, -15495168, 10350871,
-4934381, 13568339, 6200859, 19711752, -13598403, -4749697, 12584791, 18796388, 16323023, 9683541,
-4605279, -3995393, 1249299, -2334852, 84289, 6534256, -24508694, 13211319, -1921998, 3601867,
--1611150, 18650896, -5673115, -246424, -4075387, 11839077, 10033580, -20890184, 15015206, -17765596,
--894427, -8994198, -8946417, 8157217, 1489280, -27710056, -2455111, -2157684, -5116380, -3198677,
--650151, -3510062, 14413373, 1449552, 13786845, -4327717, 16302085, 7723962, -8420820, 3620121,
--2104534, 969589, 1056562, 1570884, 2195802, 874563, -3163244, -5186710, 8105677, 3630321,
-6651831, 1892470, -3963718, 7694971, 294205, 438087, 5769752, -16141561, -7505992, -7152731,
-2266132, -180926, -10996727, 514322, 1838783, -469225, -2072322, 10737, 3769371, -3979287,
--170725, 4419522, 2174327, 5378373, -4673462, -2244121, 1318555, 5832566, 21975200, -24447490,
--562104, -13895830, -39199092, -4634270, -14467597, -30939870, 6183679, -199179, -6012418, 1946157,
-16628503, -1074816, -17575544, 6033356, 710817, -5646809, -4227322, -3132105, 890132, 19164680,
--4299263, -702764, 8702677, 6433324, -2756832, 9281961, 8493298, -4088809, -4021700, -7694434,
-10666014, -2544231, -18357764, 2808909, -1212255, 6314676, 24064702, -16054051, -25756382, -16240882,
--7518341, 3569118, 8600672, 4574677, 18321794, 9160628, -12899934, -7444789, -17597554, 15252503,
-9388799, 1705639, 3247532, -10091563, 1075889, -10677289, 18474802, 18126910, 1306207, -8428336,
--4679367, 1801202, 16822314, 33556044, 20659866, -3161633, -7475928, 478352, 10696079, 4651450,
-9875204, 13607530, -13442174, -610422, -25943750, -17482128, -16661252, -11159936, 7009387, 15963320,
-10980621, 1757179, -3147674, -1470489, -14425185, -18149458, -4556424, -9629854, -9073655, 2114735,
--1809255, -2294586, 135828, 614180, 4191351, -4597763, 9330280, -9407589, 4032974, -11981348,
--3980898, 12885, 2274722, -323733, 2164664, 4638028, -3206730, 578747, 11092290, 13513578,
-16280074, 8943733, 10223096, 4641249, 1999307, 801011, 357019, 658204, -2765422, -8714489,
--8507793, -1376537, 6752763, 44023, 1114007, -3532074, -2458332, 1083942, 8258685, 5206037,
-9843528, 6957310, 8390219, -19150722, -2259690, -9921911, 14396730, -15912854, 3073049, 1387274,
-28167470, -17437030, -5116917, -17934172, -3887482, -17714592, -14890652, -10747619, 5542119, -19054086,
--13828184, -20718922, -5299990, -3126199, -6349036, -9368397, -23092428, 6023692, -16326244, 6584185,
--17128866, 21088826, 3238405, 9446781, -4083977, -19912006, 10650982, 6164352, -6710350, 10648298,
-14899242, -8067559, -21455510, -11492796, 28732794, -12289512, -947577, 734439, -4886599, 6313602,
-18619220, 3300682, 7914014, -6003291, 13318157, 183610, 10489384, 3197066, 3555159, -326954,
-1067836, 22790708, 6899865, 54564340, -33313914, 21263846, 29894582, -7899519, 674310, 15425375,
--11184632, -3272765, 25029996, 9921374, -4181151, 13292387, -5694590, -24241332, -17942226, 6090264,
-969052, -32388886, -9021042, -3306051, -16829830, 8652212, 5037997, -10930155, -8961986, -6597607,
-943819, 2989297, 6853694, -5677410, 803696, 4013110, -1795833, -7191923, 1984275, 1521492,
-2267743, 6747394, 1198296, -4091493, 545461, 7817378, 6918656, 3377992, -7744363, -155156,
-14251238, -4052302, -3006477, 7923678, -7740068, -13383655, -3818226, 751082, -1741609, -6859600,
--2112587, -395137, -7584912, -1552631, 814970, -2083059, -7870528, -12959527, 4940823, 13986561,
-5057324, -260919, 511638, -2582349, -8253854, -6565395, 30640296, 34205120, 775778, 24771224,
-24680492, -1058710, 11282879, -24239184, -7288560, 22007950, 2385854, 21731460, 30325154, 25001004,
--4642323, 16411607, -24810416, -38918308, -16445430, -14384382, 9780714, 347892, 10443750, 11212012,
-23963770, 18564996, 6718940, -18418968, -1927367, 18963354, 6364605, -8905615, 12378633, 26039850,
--2548526, 9234180, -20676510, 10329396, -16246251, -4245039, -10183367, -21556978, 13732084, 1761474,
-6881612, 26360362, -13763760, -15630997, 9783936, 27299886, -20903068, -13987098, 9155260, -6629282,
-38579008, 28526100, -26533234, -9926206, -20899848, 1364726, 23678154, -10600516, -15836618, -7169374,
-1790465, 5826660, -19025632, 4847945, 39319888, 3023120, -25690884, -39580808, 32455994, -38178500,
--31853624, -18658412, -16116865, -27580132, 7765838, 7218230, 44971528, 11319923, 19958176, -9706089,
-21672942, -2465848, -8800388, 8194261, 1301375, -1929514, 22218940, 2911451, 11522860, 14055280,
-7858717, 16823386, -4439923, 4620311, -3310346, -1260036, -3289945, -13971529, -10085657, -11527155,
-13693966, 4846871, 12230456, 14824616, -2945811, 8906152, 19452980, 6949794, -5874979, 9924596,
-11800960, 3991635, -2383170, -13848585, -12151536, 12444131, 5567352, 8282845, 16671452, 36328980,
-15936476, 9172440, 6987912, 10281615, -5104569, -1211718, 18622978, -11780558, 6689949, -6545530,
-6323803, 3681861, -35524748, -20596516, -26735634, 6997576, 14719927, 5149666, 22632868, 20334522,
-28725816, 8880382, 31373662, 13983340, 20218022, -10047539, -4019553, -10093710, -24332600, -17466558,
--37592776, -22316114, -7303592, -21922050, 4730907, -905701, -665720, 8909910, 7274064, 3358128,
-18061412, -4606353, -15148887, 21691196, 1911797, -28789166, -12495134, -3142306, -34647500, -26254598,
--25585120, 2330557, 12226698, 3315715, -13361106, -1698660, 14352170, 8873939, 34299072, 6393059,
--46342160, -15434502, -8088497, 7367480, 7131257, -5333276, -12358232, 17124034, -25706990, -4764730,
--20628192, 15557445, -40454296, -25016038, -33006824, -26453778, 1180042, -14918032, -11600170, -26539140,
-13269838, 47679504, -1312649, 30821222, -17182016, 7559680, -22717692, -92342, 33883532, 8096014,
--16132434, 1800665, 12994960, -22937272, -35606888, -19127100, 9007620, -27635968, 11797201, -407485,
--845035, 17737142, 9182103, -4734128, 20506322, 20498806, 16376173, -5407364, -5738613, -3591130,
--320512, 14288282, 10195715, 7216619, 290984, 14901389, 8186745, 2298881, 1885491, 11040750,
--4669703, -3772055, 7614440, -11471321, 10302553, -9963250, -9879499, -11725798, 20486994, 12801150,
-19040664, 6997576, 7141457, 1697586, 1282585, 9338870, -14387604, -23070954, 1759863, 6452115,
-5718212, -9440875, 26409218, 10785737, 26641682, -43562780, 18854370, 32673426, -3211562, 37637336,
--19997904, -57510684, -29775398, -438087, -5767068, 6305549, -20622286, 19825032, 28047748, -25324200,
-22271016, -13892609, -16986058, -40174588, -16421271, -23105314, -15263777, -18489834, 18066780, 2658048,
--35997732, -46090368, 34748432, 7826504, 12432857, -10810433, 2750927, -12505334, 292595, 10537165,
-16012712, 14506252, 38909720, 1208496, -27992450, 37738804, -4041027, -9855876, -17584670, 15904801,
--31122944, -20912196, 17591112, -16203838, -24253144, -30419642, -26665304, -5723581, 3512210, 2842732,
--8266202, 32724966, 27839442, -2724620, -15946677, -27426050, -31490164, 7728794, 6582038, -6216429,
--3121368, 44939316, 2982855, -13147969, 19377282, 9306657, -29688962, 23557896, 42742976, -46947212,
-75754632, 20233590, 21832392, 8289824, 21986474, -6037651, -46864536, 32044750, 2670933, -5830955,
-33251636, -39536248, 6856916, 6934762, -289910, -3830574, 1594507, -3095598, -10995653, 5823439,
-11614665, -9743133, -1326071, -14407468, -16596827, 21415244, -4829154, -10522133, 4825396, -5741835,
--13234405, -23835994, -5574331, -8109972, 20753282, -20001662, -2128156, 24549496, -5315559, 19615652,
--7131793, -17177184, 8803609, -3474092, -8289824, 10149008, 2262911, 27040040, -3764539, -435402,
-17815524, 54350664, 23877870, 1275605, -18184354, 25967910, -421981, 1887638, -12452721, 23699630,
--27472758, 20076288, 19294066, 20333448, 9842454, -7428146, 26949846, 33803540, -6877854, 13980119,
--20928302, 34012920, 14521821, 11404212, -21656836, -47345572, 9460739, -14481556, -10803453, -19183472,
--24204288, 14685030, 6595459, -11724187, 2736968, 1193464, -12772696, -57854820, -3583613, -12239046,
--5909338, -832150, 40845676, 27924266, -13576928, 10577968, -26856968, 3062312, 20158430, -30668214,
--28472948, -23376970, 36980204, -26500486, 7719667, 29717416, -39957156, -37104224, 34254512, 27263916,
-28760712, 38416872, 14229227, -49066780, 11112154, 14552960, -4305168, 80217640, -8257612, -12183212,
--36203888, -31303332, 16201154, -28853590, 18861886, 6577206, 21329882, 43945032, -28145458, -19209242,
-53524956, -32567664, -35935456, 23518704, -46293840, 33704756, -35191352, 8033200, 12156905, -25511568,
-10624675, -29619706, 20656108, 37780680, -1503239, 6550899, 7804493, 1393180, -11503533, -10896869,
--2432025, 10937671, -4833986, 7371775, -7625178, -23453742, 10090489, 2047089, 15979426, 7868380,
-13960791, -4776004, -4592931, -23270670, 16360067, -3175592, -21163452, 4918812, 43736724, 12039867,
--11103564, 12798466, 23580982, -11707007, 2630131, 17987324, -8999030, 17931488, 6172942, -5702106,
--28037546, 4708895, -10675678, -749472, 35101156, -16086263, 1921998, -9327595, 12139188, 40338332,
-3468723, -34213172, 49101676, 12007655, -3158949, 35035660, 17417166, 28366648, 10663867, -41888816,
--9134322, -15585899, 19874962, 49069464, -30921618, 8035884, -14788109, 21930104, 25152402, -32890322,
-27672474, -26388280, -23760296, 12282533, 22798224, 1114007, 7641284, 17825188, -26629334, 23760296,
-1967632, 28965260, -4993973, -7451769, 9513889, 42819212, -19031000, 34626028, -16555488, 7108708,
-9140227, 34602940, -1896228, -2077154, 11982422, 52074868, 3553549, -40421548, -3163244, -48696876,
-29477972, 266825, 80233744, 17309256, -23278186, -6947110, 17847736, -17564806, 28271622, 52427592,
-35931160, 941672, 15352897, 22796612, -2434710, -24173686, -3199214, -5383205, -83471616, 52279416,
-39040716, 36025648, 8806294, -36079336, -10699837, 27444304, 14287209, 23917062, 12958453, -79946520,
--28492276, 49295488, 13651017, 15994458, 42474544, -29885456, -857920, -4115653, 24106040, 6161668,
--2258616, -6444062, 19018652, -4878009, -21745420, 10911364, -10438918, -12457553, 11438572, 16696148,
--12197707, -3793530, -352724, 13175349, -16713865, 13683766, -14755897, 7043210, -25575994, -26228828,
-26139170, 3414499, 2390149, -2988760, -18873696, -5816997, 17535814, 1890859, 6019934, 29053306,
--4404489, -22042846, -2029372, -12529493, 10005663, 10868952, -10400263, -8912057, 11556683, 24045374,
-30529702, 31479426, -19498614, 32030792, -29353418, 4917738, 15315317, -15103789, 2131915, 5996311,
--8042327, -15772194, -29687350, 45157288, -10150081, -8937827, -15096810, -2568391, -6244883, 14651207,
--30408368, -8804683, -19035296, 6485938, -19133542, 18309982, -138513, 9414031, -21095268, -38458748,
-1802813, -28123982, -29343216, 13242995, -22509924, -19087908, 37120328, -13785234, -21714818, 2735894,
--22326850, 10429791, 14016626, -4130685, -18234820, -5365488, 10626823, 9309878, -8291435, -829466,
-32737314, -5878200, -20204600, -25706990, -3690988, -11294153, -38632156, 36206576, 12538620, -44404592,
-27318676, -2017561, -18596672, 85270136, 48050484, 39239360, 20856362, 11945915, -20247012, 3114388,
-9390946, 10011569, 3826816, 37313604, 8377334, -11123965, -18391050, -75511432, 15407121, 9876277,
--363998, -14769319, -28420872, -5659157, -18306224, -16436840, -1172526, 23791434, -16327855, 41187124,
-6055367, -8264054, -2876554, -3548180, 3295851, 17305496, -6718940, 4309463, 12189654, 4160213,
-2359011, 9447854, -15360951, 7440494, 2792803, 24079734, -8360154, -6066105, -6613176, -6134287,
--19122268, -10473278, 7015292, -20956220, 15627239, -4278861, -9947681, 14317273, 9169755, 12032888,
--4470524, -1950989, 1648731, 2246805, -13169980, 6876243, 998580, -685584, -1134408, 8560407,
--39060044, 65988416, 8433168, 21641266, 11814918, -16337519, 12295954, 18600430, 4662724, -1872069,
--15910169, -2775623, 4536559, -7435662, -5624260, 2785286, 7447474, 19210852, -13249437, 8091182,
-826781, 15335181, -5362267, 3053185, 5095442, -17577154, 14358613, 2334315, 3595961, 5153424,
-5341329, -11133092, 11944841, -9594957, 2494302, 11401528, -6140193, 11178189, -4758824, 14085345,
-10976863, 6362457, -17383880, 13064217, 9975598, 7956964, 21811454, -20890184, -1762547, -173409,
--4378719, 6414534, -10733660, -17304960, 11954505, 13456133, 6811818, -1640141, 2928094, -1846836,
-7066295, -6060199, 2915209, -12848932, 11790222, -19958714, 18937584, 10534481, -6250251, -267362,
-7912941, 569620, 7102802, 151934, 881542, -660888, -6688338, 9688372, 13208098, -11564199,
--2570001, 2429341, 7371238, -5250061, -5422396, 1537061, 2490007, -1310502, 1410897, -4248797,
-1704028, 5405217, -4107599, 1156420, 3278134, -4355097, 3833258, 4734665, -332323, -1521492,
--2150705, 923418, 9903658, -3688303, 1373316, -9097278, 647466, 10098542, -7042673, 7517267,
--3369402, 571768, 16824460, -2931852, 434865, -353261, -5054640, 8658117, 3650185, 3718368,
-3651796, -2735894, 2340757, 9482214, -2659122, 6455873, -4103841, -719944, 12753905, -52625160,
--122606824, -19586662, 71805944, 65180424, 160488976, 83813600, -43142408, -13246753, -88809720, -150803824,
--10371809, -68522984, -9509594, 109915728, 46970836, 84924392, 130380712, -15144592, -19054086, -66186520,
--112542104, -89491552, -5730023, -33614024, -12705050, 93552440, 29700236, 60861296, 110603464, 18134962,
--413391, 11467563, -67214088, -101802000, 17530982, -105197168, -68800008, 23377506, -10547366, 17128330,
-135453600, 15562277, 51946020, 110599168, -22000434, 3456375, 24684788, -106575856, -88871464, -31478352,
--121298464, -46964392, 15484431, 22470732, 83584360, 117725056, 83919368, 59248536, 51615844, -19576460,
--71051104, -58331560, -87848184, -92284888, -39557184, -23360328, 630286, 77509664, 92438432, 28973312,
-72234904, 21104932, -22857816, 15239081, -50332184, -69939248, -13689135, -32464584, -21749714, 39495444,
--1460289, 27559194, 49070540, -13415867, -1079647, 52076, -24839944, -7596187, -1713692, -18570902,
-20781200, 7590818, -4843113, 34013992, 10826539, -4804458, 32625646, -11399380, -34973380, 758062,
--53425100, -37321656, 11537356, -35474820, 7592429, 41255844, 30258044, 56211996, 61210800, 22373022,
-21633750, -2493229, -50493248, -70471824, -72613400, -75746584, -48209936, -3548180, 24310588, 52456048,
-90927144, 97675608, 80999328, 63506996, -3823058, -59535228, -85520312, -109204376, -111530640, -59366112,
--17980880, 46760384, 98652176, 89492624, 53832584, 40014600, 11560441, -8215199, -13448079, -39270496,
--45605036, -34097744, -28732258, -20415590, -4365298, 4234838, 16190416, 24474872, 24661166, 23924578,
-20991116, 9780714, -1379758, -7547332, -7346005, -5318780, -2968896, -2348810, },
-},
-{
-{
--4409321,
-4645544, 1169842, -2513093, -1113470, -5609228, -1494112, 4714264, -2479270, -1804423, 1459215,
--723702, -166967, 308164, -1490891, -1195075, 5713917, 2785823, -683974, 290984, -838056,
--1690607, 796180, 2050847, 3149285, -788663, 1211181, 1461900, -5037997, -1535451, 1074,
--989453, 3107946, 294742, -1051730, 2800319, -2114735, 955093, 4337380, -2386928, 285615,
-592169, 3295314, -1253057, 4540854, -6410776, -2333778, 2807298, -1263794, -5432060, 399432,
-1105417, 1821603, 1874216, -580357, -2334315, 209917, -2117419, -1439351, 644245, 2703145,
-2491081, -3621194, 3202435, -3963718, 3555696, 209380, 3118146, -1204738, -2568927, -1134408,
-2098092, -397821, -522912, -623844, 2902861, -3117073, 1610613, 768262, 783832, 995359,
-2321967, 745177, -1489817, -1682017, -930397, 1265405, -272730, -1234266, 238371, -1490891,
--330176, -102005, -1525787, -607738, -860067, 202937, 821413, -1028108, -740882, 427886,
--211527, -1471563, -15569, 804233, -573915, -73014, 300111, -135828, 576599, 420907,
-41876, -1111860, -373662, 41876, -505732, 30602, -124554, -779000, 436476, -1320703,
--15288473, 5019743, -5557151, -2214056, -4549981, -4671851, 2656437, -1557999, -3944928, -2119566,
-5366562, 7975755, -4361540, -1623498, -387084, -5743982, -5397164, 404801, -545461, 3509525,
-1182727, 2614025, -2302103, -1441498, -2982855, 840740, 5148055, 2234994, 1001264, -3318936,
-2517388, 761283, 1540820, -2166274, 192200, 760746, 1156957, -2943663, -2152852, 805843,
--4063576, -4154307, 1782948, 3151432, -3542274, -1782411, -1365263, 255014, 3141769, 2532957,
-1096290, 477815, 8125005, 3190624, -2565706, 3163780, 2253784, -2257542, 3838627, -1430224,
--962610, -21475, -1673427, 3411278, -1920387, 896038, 2056216, 1647657, -3036005, 1196148,
-566936, 614717, -1061931, -1505386, -632434, 4765266, 317291, -1412507, -1021665, 1124745,
--4287988, 830539, 2553358, -165893, 1653026, -944356, -1545115, 1036161, 944356, -399969,
-1606855, 827855, -458488, 1140314, 1194001, 1996623, 259846, 6979, -141197, -600759,
--849330, -85899, -152471, -531502, 587874, -188979, 1990181, 11633456, 4636417, -812286,
-525060, 2665027, 1391569, -788663, -5030481, 161061, 4458713, -4577899, -513785, -8590471,
-2252174, 3496640, 230854, -2047626, 6276558, 4413079, -4049081, 1954210, 235149, -3549791,
-5600638, 3087545, -367757, 2261300, 5336497, -1656784, -1105954, 355409, 28991, 126165,
-1279363, 6554657, 1317481, 977105, -10602664, -562104, 479963, 1264868, -4799626, 1108638,
--3871913, -2971581, -4095251, -2675765, 21475, 1229434, -2503429, 2498060, -6092948, -3499862,
--374736, -82678, 1950452, -2442226, -571231, -2211908, 1319629, 3296388, -1997697, 352187,
--1729798, -316217, 5110474, 4003447, -1618129, 3751654, -1801739, -3202435, -4001299, -302258,
--374199, -2698850, 2434173, -430570, 692564, -301185, -891206, 180926, -577136, -2188286,
--141197, -3485903, 391379, -1717987, -1123134, -2928631, 3393024, -1043140, 1155346, 2317672,
-917512, -1183264, -275952, -1328219, -98784, 583042, -1306744, 1346472, -111669, 146029,
-192737, -481036, 790811, 458488, 248034, 99321, 1918240, 921271, -619549, -1308891,
--1193464, 1159104, 1560684, -5906, 397284, 18367428, -7986492, 1513976, -667331, -3384434,
-2921652, 5151277, -3338263, 5537824, -299574, 5906654, 1641214, 2087354, -2539400, 3349538,
-1298691, 3430068, -7220377, 3874061, -4267050, 1340567, -3583077, 4536559, -1232119, 4569845,
--2678449, 1684164, -1753420, -392990, -195958, -457414, 1801202, 9492951, 426276, 2789581,
--2619930, -4395899, 192737, 88584, 193274, 1447941, -3041374, 6228240, -387621, 5221607,
-371515, -2253247, -2845953, -7824894, 3854733, 2553895, -3651796, 411780, 3146601, 1670742,
--9108552, 5449240, -297427, 3875134, -5466420, -5893232, -2851322, -5740224, -1043140, 6642704,
-1392643, -2540473, 408559, 3759170, -1250909, -3010772, -1553168, -3376918, 2433636, -5121749,
--889058, -3928821, -1488206, -14496, 4423817, 2076617, 499827, 1380295, 5551245, 2913062,
-695248, 2028298, -1545651, -612033, 389768, 106300, 905164, 467078, -933082, 546535,
-1974611, -130997, 444529, 733366, -920197, -1272921, 1249299, -1523640, 1841467, 1079647,
-1708860, 45634, -617938, 1039919, 1693291, 441845, -665183, 550830, 4801237, -11261404,
-2295123, -3550864, -10289668, -7931194, 4216048, 4702453, 6188511, -3063386, -1592359, 4260608,
-2035815, 6367289, 2073396, -710280, 651224, 4064113, 7918309, -2027225, 2308008, -96637,
-6416145, 1476395, -392453, -1286343, -4896263, -7444252, 80531, -1069984, 2237678, -420907,
-1752884, 1305133, 454193, 478352, 1482301, -2541010, 285078, 3541201, 5538361, -2709051,
-658204, -2387465, -3182034, 4576825, -3511673, -8744017, -3438658, -2238752, 4202089, 352187,
-4636417, 4240207, -2246268, 188442, -3628711, -503585, -1557999, 5430986, -6838125, -196495,
-2304787, -7240241, -8150774, 127238, 2518998, 5163625, -3598646, -8621073, 4501663, -7954280,
-9303436, 5259188, 1531693, 3968013, -93416, -3828427, 11826192, -1073742, 5724118, -216359,
-8272644, 5689758, 3024731, -840203, -1612223, -2772402, -1021665, 1253594, 300648, 2289218,
--2338073, 1428077, -1241782, -843424, -877784, -952409, 1123671, -591095, -19327, -1748052,
--79457, 1087164, 1996086, -1999844, -2450279, 351650, 1086090, -10201, 1305670, -725850,
-154619, -953483, -308701, 683437, 1234266, 1519345, 906775, -1183800, -24921548, 5126044,
-1252520, -12519830, -15799037, -2546916, -12199318, 9904195, 2830384, -7357279, 451508, -3427921,
-1094143, -5025649, 634581, -294205, 49929, 6979859, -2505577, -1636383, -2922725, -2578054,
--6598681, -4424890, 6602976, -2736968, 4172024, -3688303, 1800128, 104690, 3768297, -3850975,
-2851858, -3868155, 1675574, -1483911, -2420214, 2386391, -6170258, 2362232, -3146064, -1132261,
--4487704, 10817412, 5142150, 9484362, -4054449, 3998078, 3211562, -1887101, 1679869, -4496294,
-4759361, 10401874, 8217346, -5731097, -1542967, 2436320, -4155918, -2787434, -7270306, -13591961,
--4617627, 6969658, 2500208, -3353833, 1372779, 715649, -3709778, -6455336, -6522445, 4634807,
-534723, -9989020, 1058173, 966905, -493384, -744640, 3311420, 7247221, -740882, -4832,
-1012002, -3758, -1906429, -6601902, 2185602, 2230162, 1358283, 3090229, 1868311, -2822331,
-728534, -1775432, 368830, -1500554, -606664, -1660542, 42950, 379031, -199716, -1200443,
--1170916, -349503, 515396, -33823, 2428804, 873489, 2267206, 2458332, 2656974, -3177202,
--3230352, -1205812, 2440615, -823560, 896574, -945967, 1348620, 1418950, 913754, -1545115,
--874026, -9754408, -4061429, -2529736, 7379291, -1940252, 1758789, -7597261, -7928510, 406411,
-2311229, -4633196, -2652142, -4345970, 9042517, 2008434, -3016141, -6573448, -6491843, -6340446,
--1756642, 3076270, 9083319, 2965138, 5138929, -4049081, 9672803, 5541045, 1792075, 134755,
-9948218, -5777805, 961536, 3173981, 6740415, -10850698, -5519033, 4777078, 1932198, -1470489,
-11361799, -4924717, 3231426, 6874632, 2150705, 1185948, 5022428, 2068564, 2513093, 2584497,
-1111860, 2973191, -139050, 4362613, -973884, 10638634, -7676181, 8763344, 6959995, -5994701,
-6892886, 1312649, 5863167, 5947456, -12927315, -297427, -490700, -3855270, 2100776, -3472481,
-3620121, -1423782, 8289287, -852014, 1324997, 3436511, 2348273, 3328600, -5243082, -1717450,
--5359046, -4936528, -2837363, 8073465, 1221918, -2500745, 2392297, 2266669, 1043677, -1296006,
-857383, -899259, 3182034, 1257889, 1023813, -1469416, 993748, -2950106, -258772, 3564286,
-1843078, -505196, 1182190, 1305133, -963146, 1541356, 1009854, 3462281, 1887101, -1824287,
--735513, -1054951, 1051730, -2953327, 895501, 13029320, -3384434, -1966558, -3135863, 9292699,
-4901632, 1034550, 3574487, -6207302, 13874355, 4626217, -1044214, 5265093, 6726456, -11243688,
--709743, 2717104, 1368484, 28991, 9601399, -4549444, -5753109, 13191455, 2035278, -889595,
--1258962, 6913824, 574989, -955093, -1241246, -3149285, 3475166, -1937030, 4619238, 3257196,
--8234526, -7808251, 1034013, 15560667, -134755, 3208878, -9523553, 4766877, 6424198, -3921842,
-4776004, 5903433, -9656160, -5887327, -1168768, -12396349, -6548752, -7384123, 2233920, -2507187,
--2706903, -1328756, 8796093, -11954505, 5348845, 2641405, -3839164, 7355669, -4634807, 737661,
--10020696, -177167, 6140730, 5504538, 11514270, -13514651, -3316252, -15008763, -3177739, -275952,
--3528853, 1714766, -686121, 13708999, 10671920, 6038187, -6761353, 372588, 2673080, 6691022,
-8258149, -168041, 84826, -1150514, 222801, 4684199, -178241, -388695, -140123, 97174,
-283468, 579284, 1943473, -1916629, -557809, 1960653, 374736, 1811403, -14496, 206158,
--1524177, 2480344, 1576790, 34360, 2376728, -1179505, -99321, 2172180, 632434, -374736,
--2646237, -185757, 658204, 386010, -911607, 2777233, 4720169, -861678, -78383, -2116345,
-1595580, 8907225, -9888625, 377957, -6040335, 17067664, -7141457, -4081293, 14803679, 11172284,
-2113661, -20521890, -4962298, 9516037, 821949, -937377, -2874407, -1569811, -1548336, 1488206,
-3243237, 2957085, 2821794, 18278844, -3745748, -2595234, 73551, 2429341, -5374078, 3252364,
-1995549, -632434, -5919539, -3711926, 6645388, 7096360, 13408351, 3458523, -5428839, 3418257,
--107374, 3463354, 314069, 7449621, -6103686, -9160628, -9421011, 6255620, -2637647, 1341104,
-2538863, -3349001, -561030, 15881715, 5478231, -13320841, 9572945, 3077344, 16108275, -8301098,
--7793755, 4681515, 8704288, 6006512, 3395709, -1435056, 573378, 4167729, -5156645, -1460289,
-241592, 6851010, -4867809, 13722957, -424128, -147640, -7004555, -7936026, 15715822, 4691178,
--12769475, -2965138, 10854993, 7518341, 1562294, 2747705, -6465000, 2085207, 1813550, 2142115,
-1268626, 2373506, -2931852, -3614752, 563714, -74088, -2936147, -962073, 2880849, 2789045,
--3949759, 1102733, 79457, 1794760, 2499134, -634581, -619549, -956167, 1717987, 4848481,
--3391951, 2687576, -132070, 153008, -1947231, -440771, -1423782, -993748, 2403571, -762894,
--1241246, -3090766, -6979, -1735704, -12320114, -10470057, -4148402, 3668976, 3762928, 18720152,
-18159658, -2238752, 1349157, 700080, 9664, -315143, -3912178, -12379169, -9547175, -4967130,
-4209605, -3526705, -10814728, -3127810, 1889249, -893890, -16509317, -4911832, 3481608, -1773822,
-1404991, 1032403, 4772783, 7109782, 1017907, -5318244, 5163625, 5442261, 3740380, -309238,
-7019051, -14445049, 4655208, -12807592, 15695421, -11336566, 4173098, -12021077, -2139431, -13419088,
--7209640, -8393440, -9156870, 6087043, -8073465, -1606318, 2616172, -178241, -4384088, -3112778,
--1553168, -13117367, 257698, 780610, 6298570, -20432770, 307627, -599148, 9323300, 11348377,
--7929047, -4829691, 253940, 8705899, -17016124, 10723996, -7752416, -5071283, 639950, -16445967,
--1033477, -1387274, -2752000, -2990371, -2237678, 16369731, 6507949, 3317325, -4131222, -3748970,
--4315369, 458488, 3831648, -6635725, -383326, -1199370, -1977296, 826781, 4645544, -1859721,
--3323231, 3023657, 1671279, -112743, 3193845, 1799591, 2639258, -1781338, -2430415, 4093104,
--3209951, 1025960, -4141959, -784905, -53150, -828392, -1716913, -3489124, -4039417, -4063576,
-739808, -244813, -1120450, -2932389, -2995740, -1144072, -1698123, 893353, 3857418, 2967286,
--9756018, -25290914, -10154913, -4878009, 4305168, 6730751, -8361228, -3208878, -10496363, -9257802,
-4746476, -8142721, 8211978, 3306588, 5869073, -1073742, -8286603, 14220100, 5574868, 7928510,
--10334765, 4254165, 1752884, -14981383, 9093520, 5432597, 426276, -10228465, -4028679, 4915053,
-5181878, -333934, 1701344, 7132867, -7209640, -5323612, 8375723, -17062294, -16874390, -22086870,
--5083094, 6968585, -19452444, -16210280, -9926206, 217970, 6789270, 2109903, 1799591, 228707,
--5747203, -7807714, -18391586, 9513889, 2547989, 21988622, -5454609, 474057, -13852880, -16465831,
-1903744, 10459856, 550293, -10428717, 6633040, 2654827, 14882062, 1372779, 1710471, -7397545,
--1571421, 6280853, -14966887, -27712202, -7888245, -6999186, 1296006, 7153268, -13416404, -6795175,
-4117263, -4720169, -1270774, 4220342, -2755759, -2315524, 5480915, 1306744, -716186, 2710661,
-4207994, 4842039, 733366, -3390877, -8990440, -885300, -5571110, 1374926, 755377, 1047972,
-3419331, -3216394, 3085934, 4457639, 2801929, 2498060, 2310156, -6565395, -6189048, -2311229,
--5366025, 521839, 1228361, 1680406, 5859946, -1473711, 3635153, 2345052, -2811593, -1360968,
--3985193, -5073430, -1625645, -6672232, -2418067, -1515050, -23607824, -18145700, -8351027, 12451110,
--1092532, 21324512, 4210679, -1857573, -11978664, 4250944, 21978958, -23024246, -20717848, -6860137,
--3445101, -14448807, 13673565, 3985193, 7410429, 8827768, -14452028, -1746978, 5805722, -9137006,
-17059074, 217970, 3844533, -4999879, 4219806, -11307575, -6416681, -3915400, 6427419, 3000035,
-10383083, -17040282, 1540283, -182536, -12641699, 13769128, -8243116, -20274930, 4020626, 7223598,
-1497333, -6103686, -1439888, -8487929, 1420560, 6817187, 2962454, -13893682, 5448166, -3227131,
--15312632, -9154186, -18818936, 335007, -2894808, -589484, 2491081, 11478837, 14426795, 11866995,
--6069863, -10531797, 3502009, -2757369, -1702955, -8171176, 15021111, 12255689, -2594697, 22865332,
--14593225, 7544647, 14559402, 15479599, 493384, 9793599, -6345278, -2660732, -12785044, -5575942,
-7775502, -2754685, -9934259, 6110665, -5651640, 6424198, -2837363, -6984691, 3670050, -1504312,
--3811784, -3133179, 2728915, -3481608, 2398739, 4475356, -4751308, 6122476, -649077, -3578245,
-2467996, 591095, 537945, -3008088, 3809099, -5754183, 2049773, 1928440, 385473, -3904662,
--234613, -2392834, 3003793, 5013301, 11426760, 5523865, 9168681, -644245, 102542, 4431870,
--5545877, 1352378, -7587597, -3360275, 8602819, -20468204, 2574296, 220654, -12945568, 1864016,
--28779502, -24899000, -5970005, -240518, 1058710, -649077, -10239739, -382252, -2937221, 9176198,
-1783485, -605054, 1715303, -21757230, 7501698, 4028143, 12051678, 4978404, 5214627, 14142254,
-7047505, 2022930, 35442072, 7554311, 13630079, 18781892, 870268, 13236552, 3315178, -7400229,
-8605504, 577136, 4138738, -7250442, 529892, -4717485, 2998424, -4704063, 9964324, 1163399,
--6212670, -7793218, 1059783, -21077016, 12220793, 8208756, -1079647, -1948305, 4799089, -5636608,
--4647155, -6948184, -8339216, 6906845, -6653978, 11442867, 13366475, 13054553, 13932874, -3287798,
--21129628, 284005, 8909910, 21248814, -4948876, -841814, 10086731, 14820858, 21915608, -2902861,
-9651328, -6549825, -3766686, -17678086, -13743358, -6070400, -6241125, -5099200, 3670587, 693100,
--7561290, 8483634, 5391795, 6648610, 12048457, 4747550, 4511327, -1518271, 6979, -1866163,
--3458523, 17717, 2167348, -77309, 6353867, 4992363, 3101503, -457414, -5226439, 205085,
--3757023, -4254165, 2644626, 3120831, 956704, -6612102, -1475858, -9569724, -2315524, 2967286,
-4669167, -3154654, 3877819, -5535676, -6302865, -3316789, -3809099, 3354370, 1797444, -5680094,
--3825742, 17408040, 22578644, -16698833, -17476758, -23106924, 20958366, -2110977, -8340827, 7339026,
-7110319, 19632296, 16386374, 1173600, 17959406, 25475598, 7348689, -12779138, 12293807, -11814918,
--6535867, -2331094, -8200167, -9891847, 5374615, -4915053, -4810364, -11962021, 27759984, 3612068,
--14500883, 162672, -1804423, 12523588, 13251585, 5326297, -8400956, 13350906, -3379603, 8310762,
--25031606, 1504849, 10693395, -10643466, 3833795, -11580306, -9382356, 26239566, 11033771, 8046621,
--1606318, -22891638, -5392332, 6873022, 5191542, 3928285, -5254356, 18560164, -12691628, 10400800,
--5845988, 6947110, 7661685, 14747844, 19885162, -22638236, -373662, 11939472, 5927592, 16702054,
-16224776, -22571126, 287763, -6101538, -11577084, -539018, -12117176, 5281199, 9679246, -4399121,
-17352742, -3653407, -10008884, -12219719, 10887742, 12443057, 12406550, -3147137, 2347200, -505732,
--17455284, -16906066, -15823733, 10136660, 5220533, 3372623, 8206609, -335007, -4249334, 12269648,
-1877975, 117038, 7613367, 11893301, 7297150, 1078574, 1498944, -3271691, 7326141, 3740380,
-15179488, -1214402, 2025077, 10711112, 8744017, 3124589, -1278290, 6919193, -3758, -1201517,
-12032351, -9279277, 717260, 7493108, 789737, -1994476, -3350611, -1609539, 187368, 8083666,
-1697049, 770947, 8898635, 6541772, -5385889, 17271674, 34621196, 1280437, -16852378, 4491999,
--11338714, 6994891, -9881109, -10639171, 31417686, -24217174, 39500816, 24108188, -6055904, 7795903,
-18992882, 2576444, -30118458, 11553462, -24422794, 5568962, 1984812, -12176769, 343061, -1834488,
-17151416, -8866960, -1030255, -870805, -5427765, 36383740, -2255395, -5704791, 4565550, 12115566,
--12614856, -26539140, 20637318, -3535295, -1726040, 23473070, -14061723, -4067871, -16712791, 4220342,
--11715060, 13159780, 12217034, 24988120, -7341173, 6825240, 16729434, -24120536, 2823404, -15451682,
--24152748, -30967788, -16271484, -33467458, -37478420, -5460514, 2330557, -17825188, -19016504, 11491185,
--1408212, -10855530, -20485920, 14487998, -10975252, 3592740, 18447958, -35144108, -10135586, -6659884,
-15433428, 41492604, -19805704, 964220, -12586939, -18776524, 8938901, -22422950, 17820894, 30852898,
--8907762, -14796699, -15436112, -4153770, -3707631, 31139, 10078141, 7153805, -8207146, 7967165,
--1039382, 6205691, 373662, -7829726, -2144263, 8833674, -15115601, 6818261, -7908646, 1794760,
--6430103, -2777770, -9076877, 1774895, -8716636, -13908178, -6501507, 2911988, -10047002, -335007,
-3107946, 14602352, -8551280, -5355824, 4982162, 5821292, -10687489, -7051800, 3161096, -3263102,
--5638219, 10072772, 1942936, -8488466, 7402376, 1711545, -12443057, 2116345, -10230075, 11168526,
--5106179, -16229071, -23997056, -18205292, 20045686, -16488379, 8060043, 19100794, 8115341, 12255689,
--22893786, 32797444, 20583094, 17875654, -13278965, 23500988, -2655901, 15534360, 10145250, 3435974,
-8400419, 11400454, 6870874, -3855807, -5943161, -5255966, 2277407, -15830713, -18749142, 10481331,
-4533338, 6080600, -15446850, 4171487, 4561792, 11482058, 17013440, 25756918, -14670535, 3894462,
-36531380, 7901666, 3804804, 3541201, -7686381, 2689723, 36361728, 10588705, 23499914, 6740415,
--25441776, -10535018, -18571976, 52997748, 21376052, -20480552, -12992276, -18265422, 2921652, -11984569,
--28969018, 6617471, -21987012, 32454384, -2462627, -26859114, 35174708, 28676960, 3896609, -7791608,
-4636417, -16345572, 21575768, 38924752, -10626286, 18463528, 43301324, -6846715, -7307350, -4952634,
-26264798, -1920924, -14866492, -13732084, -14215268, -229781, -1976222, -12167642, 708670, -5098663,
-13084081, 3335042, -13120588, -8084739, -14914274, -1580548, 1694365, -2371359, -10554882, -11412265,
--8446053, 7168301, 11713450, 1893544, -12896713, -1815697, 15597174, 133681, 14251238, 7698192,
--8584566, -725313, -13125420, 12506408, 5173288, -16387985, -31295816, 2844342, -2441152, -9350144,
-9678709, -74088, -5866926, -4391067, 2665564, 842350, -1742146, -25120190, 9963787, -3449396,
-24899000, -52100100, -35747012, 20605106, 9856950, 7452842, 17495550, -17781164, -23175106, -12764643,
--19088446, 10777147, -20480552, 5966247, 13591424, 22327388, 737661, 18710488, 10897406, 3070365,
--5974837, -19588272, -13820668, 11402601, -23949274, 12181601, 2814277, 20388746, 15560130, -7638063,
--29806536, -19386408, -1803886, -1498944, -7883413, 20390894, -36029944, -2803540, 1257889, -37740416,
--730144, -4657892, -3010772, 4027069, 22091164, -21537114, -59304372, 22126598, 24169928, 14394046,
-46261628, -38096360, -4885526, 25685516, 19663434, -23917062, -11101954, -6608881, 36442796, 7157026,
-34786552, -50331112, 7348152, -60038276, -35940824, -34813396, 41266044, 13054016, -26603564, 24202678,
-2842195, -23365158, 23756538, -34943852, -36643588, 5457293, -38056096, 11274826, -65016140, 9907416,
-20539070, -27724550, 30476014, -13836774, -7323993, 20340966, -7008313, -5623723, -14485851, -1089311,
-4820564, 11204496, -1313186, 10409927, 20540144, -15468325, -1657857, -12307766, 7335268, -8053601,
--2095407, 4436701, 2563559, 2707977, -2661806, 21087752, -6965363, 1665374, 9089761, -18697604,
--16359530, -18158048, -8380555, -30549566, -13948980, -11202885, 26337276, 5151277, 23450522, 10020696,
-4792110, 10575283, 7481296, 901943, 8927090, 1828582, 18282602, 44980120, 16646219, -16108275,
--10515154, 6208912, -11420318, -13401372, -1590212, 20929376, -3628711, 3911642, -22243636, -4602058,
-30741766, -22428856, 17009682, 40137544, 20080582, -1706713, -7650411, -13201656, -25658672, -18879066,
-22130356, -12606266, 20767778, 14955076, 7136625, 974421, 8117488, -6406481, -32631014, -11331734,
-23374822, 18503792, 19432042, -20663088, 35665408, -9185861, 13882945, -26358752, 24157580, 41525356,
--8331163, -14808510, -1504312, 1509144, -9205726, 9059697, 18199388, -34099356, 22405234, 21680458,
--5277978, 25134686, 13372918, 10831371, -15917686, 3268470, 22546430, -47553340, -42282880, -17661980,
-11257646, -21911850, -64287608, 26923540, 17700098, -8383240, -10868952, 449361, -3725884, -22079890,
--59044528, -3620121, 42016056, 10139881, -7412577, -5069672, 9118752, 34315180, 27427124, -40395780,
--16588774, 26859652, -5641977, -10878615, -46061376, -2754148, 25361782, 8339753, -7041599, 15528991,
--5738077, 1577864, -17310866, -2925947, 10633265, 15792595, -8952859, -3342558, 3330747, 9096741,
--5617281, 5567888, 821413, -11356967, 6841883, 19211388, 3389803, 5674726, 3676492, 8623757,
--9016210, -16028818, 1625108, 17147656, -14049912, 6099391, -4698694, 1453846, -13625784, -26483306,
--14281840, 9738301, 32196148, -3372623, 15247134, -21363704, -9276056, -14473503, 8964670, 6155225,
-10207527, -7346005, -10937671, -865973, 2374580, -1056562, 21913996, 29035052, 683974, -32659468,
-43335148, -12127914, -30188788, 27120034, -4312147, -16409459, 20970714, 5637682, -4343823, 17692580,
--24173150, 22996866, -8167417, 804770, -7002408, -5981279, -33714420, 13398150, -12846247, 5349919,
--13493177, -1084479, -10049687, 9696426, -5872294, 36509368, 6484327, 23895050, -9247065, 5997922,
-15123117, -6376416, 10463614, -2038499, 18258442, -887448, -6086506, 28834800, -25703768, 14389214,
-19723564, -11528766, 22318798, -13615583, -520228, 11489574, -8684424, 26217554, 23488102, 4900558,
-39064340, -24031416, -55079196, -9253507, -34044060, -22524420, 80519360, -2028835, 24725052, -3736622,
--33938296, -854699, 33845416, 47907140, 29145648, 48257180, -25920664, -7744363, -11599633, -27524834,
-18291192, -7715909, -16973710, -1758789, -33401424, -61081416, 15404437, 21524766, -18058726, 12191802,
--3780645, -18212272, 19477140, 14341433, -7100118, 20055886, -7344931, -17882634, 9213779, -8873939,
-23786066, 2247342, 1794223, 13437342, 4495757, -15131170, -6334003, 7803419, -4971962, 14804752,
--20622822, 13326747, -21625160, -5501853, 5406290, -15348066, 9810779, 627065, -23043574, -3725884,
-1493575, -6180995, -53150, -4298726, -16909824, 6935299, 5073967, -2681670, 16981764, 26045218,
--14192183, -20293184, -1303523, -9671729, 28159416, 28940026, -17054778, -10782515, 24560234, -25841208,
-31070868, -18720152, 4296041, -38118, 3242700, -23838142, -3670587, -21558588, -17835926, 87510,
--7019051, -16256988, -6475200, 11965779, -13882408, 11029476, -6547678, 33411624, -15441481, 10000294,
-2047089, -8271034, -26783952, -9804337, 20442434, 3719442, -6659347, 26798448, -19782620, -19965692,
--2704219, 25591562, -23225036, -3220689, 4582730, 6966974, -25869124, 7823820, 9013526, -9226127,
--27052926, 517544, -21003464, 8938901, 4800700, 8096014, -41362684, -17656610, 23620710, 63696512,
--28806882, -3949223, 5145908, -10713259, -17961554, -320512, 53201760, 12291123, -5404680, -4638028,
--14042932, -3230352, -10750303, 20668994, 1098438, -13131863, -14128832, 781147, 9556839, -21166136,
-16577500, 4951024, 18071074, 765578, 22979686, 9694815, -15984258, 21609054, 20599200, 50972672,
-16237124, 4003983, 5281199, -18542984, 6252936, 16714939, 17256104, 6007049, -1155883, 723165,
--2025614, 6489696, 7221988, -1617055, 9317395, -2314987, -894964, 17666274, 7531762, 3102577,
--5203890, 5290326, 13378286, 14099304, 16167868, 5932961, 5977521, -8937827, -1074, -433792,
-3018825, 9197136, -304406, -7115687, 8336532, -7459822, 6950331, -232465, 8189966, 1319092,
--6585259, -1743757, 623844, 1967095, 4119411, -856846, 2975876, 2301566, -20401, -40421012,
-53762252, 7452305, 12267500, 12923557, -12372190, -14274324, 552440, -5484137, 7679402, 17725330,
--24817932, 8253854, -5202816, 6487011, 6089190, 4234301, 14206141, 11108396, -10557566, 9988483,
-8705362, -8578123, -14800457, 4558034, -5224291, -12291123, 7417409, 6074158, -997506, -8030515,
-272730, -5849746, -2806761, 585726, 3246459, 5670968, -11054709, -1635309, 8937827, -3955128,
-8027294, 1539209, 5805722, 11681774, 3502546, -11908334, 1298691, 11145440, -6270116, -576063,
-5450314, -18940268, -1097364, -4680441, -17606144, 24427090, -6156836, -1018444, 14551886, 2486786,
--10842108, 4301947, -10358924, -2104534, 8123931, -9767293, -3470334, 18054432, -19114216, 2046015,
-1788854, 6558952, -8456791, 5804649, -2858838, 5408975, -7243463, 333934, -1698660, 18183818,
--8230768, -827855, 4816269, -9199283, -810675, 12584254, -2582886, 8108362, -5464809, -5229123,
-1019518, 4869419, -4716948, 9277666, 19327, -2048699, -1934883, -2949569, -2835215, 7909719,
--6660958, 7741679, 4337917, -10218801, 2552284, -1052804, -770410, 5992553, -8392366, -3432753,
-1348083, -5681705, 6002754, -5844377, -743029, 9589588, 1843078, -1820529, 4497368, -4849555,
--3719979, -2364380, 4795331, 7993471, -2345052, -2331094, 1008244, 12678207, -53141092, -108196128,
--13875966, 68014032, 52310556, 150069376, 72237056, -34910032, -30489972, -71061848, -124499288, -15686831,
--48227116, -14926085, 88015152, 56127708, 59914792, 114534432, -3943854, -25276956, -43110736, -113146616,
--62423056, -20043002, -20966956, 3214246, 51605104, 39977020, 42436960, 79962088, 46821584, -29311004,
-42665668, -44688596, -104346232, 13426605, -70007432, -97436168, 38101728, -8307004, -17994302, 119955752,
-39348344, 31936840, 103408856, -11025718, -20253456, 31518618, -69177424, -85980416, -23068806, -73613056,
--65775812, 14023068, 14348412, 29837138, 90232968, 79915384, 48446696, 57337812, 11153493, -45105208,
--48569636, -60146724, -82680264, -38579544, -20929376, -28058484, 25088514, 79808544, 52138220, 51483236,
-42349988, -29742648, -248034, 8473970, -68223408, -28097140, -17042430, -19937238, 31403190, 16087874,
--3851512, 25670482, -5867999, -5274757, 4455492, -18371186, -13819594, 9151502, -11340861, 18617610,
-23424214, -8651675, 12737262, 23848342, -13800804, 15639050, 7873749, -46439872, 8305393, -15043660,
--50401440, 828392, -28751048, -25751550, 36792836, 39786428, 38449620, 71159552, 22749904, 22677964,
-24196236, -31077310, -62017180, -69293392, -88681408, -66090956, -19865834, 11611444, 53906136, 89234928,
-98915248, 77219216, 56332256, 11134703, -52264384, -78809432, -96182032, -89429272, -46296528, -2950106,
-25303262, 64063732, 59192164, 32273994, 32499480, 12581033, -866510, -256087, -9987946, -19697256,
--16267189, -20473036, -24694988, -18291728, -13554380, -3812320, 6594923, 16110422, 19504520, 20598664,
-16960288, 9419400, 2436857, -2137820, -2969970, -1813550, -957778, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--1056562,
-2688113, 4654134, -3479997, -3011309, -4655208, 4212826, 2098629, 365072, 6233072, -625992,
--79994, -1909113, -1544578, 1350767, -1669669, -3251827, 1826435, 525060, 5205501, 7114077,
--1854889, -4189741, -5160403, -327491, -2951716, -2844879, -1952063, -398895, -4110821, 3954591,
--1473711, -1555315, -2720325, -2006824, 756451, 4443681, -465467, -1285806, 1341640, -4370666,
-3274913, -2727304, -9797894, 4855998, 3226594, 5394479, 5596343, 1063541, 2945811, -2925410,
-828929, 4240207, 328565, -53150, -1023276, -565862, 2274722, -2071248, -1494649, 104153,
-2162516, -1798518, -2238215, -3278671, 4190814, 1662689, 515933, -1023813, -4196720, -147103,
-3134253, 1945620, -599685, -796716, 3139621, -383863, -231391, -1370632, -1294396, -1919850,
--2271501, 139586, 477815, 1076426, -2337536, -927713, 1298154, -1620813, 1401770, 376883,
-627602, -607738, -39192, 302258, 683437, 169651, -272730, 426276, -298500, -801011,
--259846, -1324461, 877247, 448824, -378494, 16106, -598611, 785442, 811749, 259309,
-80531, 302795, 287763, -825171, 29528, -163209, -200790, -324807, -111132, 457951,
--14710800, 7640210, -745714, 195421, 2642479, 3732864, -5495411, -718333, -1006096, 3100430,
-1164473, -3371013, 10423349, -1142461, -671626, 4625680, 3791919, 1225139, 2623688, 8505646,
--4245575, 245887, -2176475, 832150, -2649458, 191663, 242129, 937914, -4759361, 386547,
--1161789, -1801739, -227633, 2956011, -1665374, 2747169, 4002910, -6968585, 911607, -2844879,
--793495, -4298189, 2109366, -2558727, -461172, -1453310, -4372814, 1642288, -2942590, 1963874,
-1064615, -2170032, -3190624, 82678, 2913062, 2193118, 5315022, 2450279, -2335389, -6577206,
--467078, 1138703, 8244190, -2582886, -1283658, -109522, -1639604, -4329327, -2084133, -4031364,
--569083, 3312494, -781684, 3947075, 2525441, 2031520, 2850248, 501437, -5202279, -1226213,
--3358665, -2134062, -5774584, -212064, -1666984, 757525, 1528472, 663572, -885300, -1187022,
-166967, 1501091, -1326071, -373125, 5369, -485331, -151934, -547608, 578210, -1992865,
--709743, -484258, 26844, -209917, -398895, -11811, -2814277, 10711112, 5579163, -1750199,
--4333622, 6123550, -7182796, -1211181, 3971771, -2976949, -2149094, -3104188, 7067906, -2515240,
-2173254, 572841, 2146947, 9653476, -9735080, 2869575, 4853850, -3264175, -9010841, -4716948,
--629750, 536871, -1290638, -1654636, 3755949, 5453535, -466004, -3913789, 279710, -4952098,
-1453846, -3121368, 1726040, 5825050, 2134599, -5913633, -166430, 329639, 8756365, 1609539,
-4379256, -1291711, 1938104, 1506460, -10604811, 141734, 5015985, 2297271, 5611375, -5001490,
--3059091, -4980015, 1341640, 3149285, -1014149, 1054951, 273804, -2512019, 943819, -1893007,
-1688996, 1568737, -361851, 2569464, 536334, -409633, 1149441, 6279242, 1162326, 3266323,
-4109747, 2245731, 103616, -120796, -5907191, -35433, 6307697, 2203318, 2801929, -142808,
--427886, 3939559, -2952790, 306016, -262530, 1991791, 1080184, -2684, -2559801, 404801,
--1287953, -401579, 448287, -845572, -594316, 603443, -62277, 2021856, 870805, 1846836,
-911070, 551903, 1027034, -771484, -999654, 103616, 134755, 2313377, 1446867, 328565,
-826244, 2198487, -352724, 206158, 709743, 22122840, -5714991, -2069101, -3358665, 4523138,
-3019362, 7525857, 2987150, -1115081, 3606699, -164283, 4034585, 1556389, 5608154, 111132,
-4706748, 6117644, -6795712, 1210107, 1756105, 1124208, 1069984, 1508070, -4039954, -20938,
--4651987, -683974, -168041, -7893613, -5355288, 1961190, -33286, -289910, 3139084, 3062849,
--1602560, -6809134, 2039573, 6111202, 4036733, 5698348, -1536525, 3072512, 5672578, -9459665,
-2998961, 4136591, -4662724, 5825050, -4064650, -872952, 581968, 1132798, -3138547, 2745021,
--823560, -1084479, -3265249, -2691334, 3279745, 3269007, 1488743, 3218004, 5042829, 2740189,
-7008850, -1494649, -7875897, 7607461, 1252520, 3722663, 1592359, -1321239, 1999307, 1432909,
-340376, 5213554, -1592359, 5143760, -7402376, -1726040, 969589, 2276870, 513785, -4074850,
--1859721, 651224, 243739, -451508, 260919, 1542430, -1976759, -1158031, -1110249, -1471563,
-860604, -462783, -535797, -1204738, -843424, 2223183, -523449, -770947, -14496, -819802,
--637266, 1113470, -436476, 1190780, -241055, 68719, 969052, -304406, 9791452, -11266236,
-7469485, 1568200, 7649337, 1762547, -4330938, 1403917, 5890548, -7066295, -1506460, 795643,
--7967165, -1584843, -6126771, -3753802, -4467840, -4897874, 2060511, -7608535, -4731980, -6064494,
--1557999, 5834713, 2094333, -7293392, -2851322, -7627325, -1898376, 1650878, 10919417, -8818105,
-3595425, -2252174, -3245922, -6574521, 289373, 1109175, 6992207, 3674882, 863288, -5961952,
--10353556, -161598, 3008625, 8106751, 2808372, 2594160, -6023692, 2179159, 5063230, 384936,
-767725, -3220152, -3208341, -1082332, 2935610, 522912, -2087891, 55835, -6624987, -950262,
--5587753, 3500935, -1194538, 3500398, -5475547, -4617627, -7529078, -874026, -4852776, -2080912,
-1893007, -7284802, -3171833, 837519, 3984119, -8749922, 5075578, -4118874, -4446902, -4650913,
--3913789, 2626909, -2639794, 1216550, 1480153, -2321967, 303332, 1819456, 1383516, 92879,
--2107218, -311922, -1029182, -2348273, -444529, 1735704, 999654, -1162326, 1557999, -1361505,
--1065152, -258772, 510564, -1749125, 90731, -213675, 1155883, 932008, 1927367, -1577864,
-433792, -357019, -703838, 610422, -1848983, -638340, 894427, 497142, -27346056, 4402879,
-3117073, -7897908, -1760937, -38655, 270583, -1517197, -2626373, -2026688, -8128763, 6248104,
--3939022, 856309, -6770479, -2413772, 9789304, 8864276, -5629092, -3405909, 281320, -166967,
--4620311, -5397164, -3820374, 629213, 418222, 150861, -556735, 2270964, -6672769, 2070174,
-228170, -11784853, -1414118, -3537443, 5381594, 7847442, 1228361, -1400696, 376347, -6915434,
--8638790, 4614406, 8547522, 9498857, -2566243, 1716913, 5553393, 5709622, -2966212, 5265630,
-8614094, -381178, 7252053, 6124624, -7221988, 2344515, 420907, 7748658, -4760971, -5100274,
-4481799, 5867462, -1807644, 504122, -8508867, 5969468, -4757750, 6302328, -10582263, 1125818,
-2524367, 5028870, 352724, -4457103, -9024800, -5564667, 7605314, -7530689, -344134, 825171,
-4108136, -2296197, -1593970, 3171833, -6027450, -5284958, 2167885, 1412507, -428423, 4292820,
--1990717, 999117, 1127966, 1129576, 1648194, 325881, -1668595, 1022202, 2243584, -952409,
-325881, -478889, -1105954, 880468, -2777233, -424128, -2995203, -606127, -550293, -1013612,
--1526861, 596464, -873489, -71404, -2321967, 907312, -403190, 784905, 976031, 327491,
-417686, -10597832, 3753802, -9365713, 11846594, 11392938, 347355, -15438260, 6389838, 873489,
--2881386, 10650445, 43487, -9199820, -980326, 11578695, -14528264, 457951, -3636227, -11465952,
--3190624, 207769, -2259153, -5872831, 3379066, -4865124, 3952981, -4144107, -7769596, 4140349,
--583042, 5949067, -11567958, 4719632, 9099425, -3659849, 746251, 9149891, 13378286, -3558917,
--2734821, -11275900, 657130, -9302362, -761820, -6475737, 319438, 907312, 5403606, 2590939,
-4938139, -3565360, 906238, 3062312, -588947, 12349642, -8199630, -4048544, 16245714, 16319802,
--3223373, -1029182, -10244034, -5235029, 519154, -2841658, -6780680, 9858024, 3037079, -2567317,
-14462229, 2804077, -6942278, -191126, -13284334, -6661495, -7531762, -6453725, -1766305, -10369662,
--7486665, 4274030, 3949223, -761820, 2329483, -3076807, 3471407, -2310693, -3395172, 587337,
--4887136, -2232309, 6273337, 502511, 3125663, -1676648, 641024, 481573, 1471026, 1360968,
--275415, -124554, -3106872, -35433, 661962, 502511, -876173, -880468, 2095944, 624918,
--449898, 74625, -535797, 70867, 1161252, 13157632, -3456375, -113280, 9073655, -2124398,
-5379984, -2894271, -11429445, -707059, 54224, -2320356, -6754373, -7546258, 3991098, -5970542,
-10660646, -3228205, -7659538, 6606197, 13370233, -3276523, 3780108, -3548717, 7744363, 204011,
--16151761, 5802501, 9042517, 931471, -2651606, -9385040, 7944079, 5319317, 5132486, 1069984,
-3252901, 10604811, -7415798, 1353452, 2115272, -5848135, -11340324, 10880763, 6080063, 20221242,
--983011, 8939438, -2921652, -6309844, 1123134, -958851, -242129, -1772748, -6533182, 14529874,
-379568, 1165547, 2095944, -1989107, 11970611, 1548873, 10029286, 4203699, 1722282, 10711112,
--4996121, -11934104, -2323577, 2246805, 1586990, -4915590, 5887864, -3508988, -16710644, 1551020,
-3364570, -9216463, 4347581, -924492, 1843078, 58519, -3768297, -4168266, 15569, 1622424,
-5144297, -424665, 1465658, -1935957, -1433982, 2347737, 1546725, -252866, 1592896, -1666984,
--165356, 155693, -2267206, -3268470, 2090039, -3642669, -926639, -1567126, -3192771, -855235,
--404264, -1155346, 1426466, -509491, -1331440, -360777, 6180458, 2455648, 2371359, -1202591,
-901943, -1886028, -2483028, -780610, -843424, 1112397, -1637456, 3022046, -3843459, -1174674,
-845572, 10630581, -17624936, 2893734, 7894687, 11751567, -12343736, -1778653, 8368744, 5832566,
-7141994, 1261647, 15074798, 2794950, 6250788, -1874216, 892279, 6220187, 3411278, 7180649,
-569620, -9969156, -14545444, 7714298, 3733937, -2769180, 1711008, 4338454, -13609141, 127238,
--8587787, 4017942, -467078, 8920110, -2858838, 3984119, -2059974, 2310156, 1221381, -379568,
-5023501, 6703907, 2403571, 3881577, -10661719, 4411469, -1877438, -18596134, -12352326, 3164854,
--13576928, -937377, 11224897, -8191577, 22296248, 8056285, -4488241, 12095702, 569620, -3965866,
--8995272, -8916352, -12377559, -1928977, 7239168, -8862128, -1097901, 8028368, 3670587, 4531728,
-16338592, 2011655, 10683194, 75699, 2099165, -17541184, 4859756, 1314260, -15958488, -15116137,
-8721468, -5769752, 1017370, 4583267, -2600603, -4115653, 925029, -920197, -1090385, 915902,
--2852932, 2561948, -2050847, 566399, -5036923, 2731599, 849330, 1108102, -270046, 6214818,
--5036923, 429497, -1409286, -1259499, 1260036, 1268089, 1741609, 2989297, 4999342, 3083250,
--3208878, 775778, -402116, 4547297, -1495186, 2932926, -4657892, -3545496, -2682744, -2262911,
--305480, -256087, 2318746, 2703682, -9143449, -222801, 5831492, -25770, 4108136, -9366787,
-7373385, -522375, 2181307, 6878390, -12665859, -8686571, 2358474, -115427, 7026030, 14450417,
--1288490, 3647501, 15506443, -5683853, -10430328, -543850, 11372537, -2395518, -12998182, 1105954,
-4863514, -2505040, -4035122, -900333, 16811038, -3133716, 14477261, 10960220, 13212930, 784905,
-1122060, 7750806, 2629057, -2611877, 2760053, -10365367, 7905961, 13245142, 8323110, 1191317,
-7405598, -5725729, 5697811, -5568962, 8310762, -7394323, 188442, -536334, -535797, 23513872,
--3466576, -1253594, -1999844, 3317325, 6510097, 12408161, 14143327, -7648800, 3420405, 14093935,
--7830799, -9716290, 5919002, -4198331, 6100464, 26851062, -12622909, 1870458, 2543695, -6920266,
-3056943, 8804146, 6167036, 784368, -5455146, -13141526, 6286759, -5699422, 7266548, -4903779,
-1047435, -6478422, -1404454, -10874320, 962073, -3414499, -3838090, -1305133, 1352378, 2815351,
-5446019, 2348273, -3084860, -724239, 5549098, -3209414, -2843268, 442382, 411243, -4925791,
--46171, -2460480, -1217623, -888521, -877247, 1960116, 1210644, 3963718, -2491081, -2464774,
-313533, -2962454, 1421097, 6195491, -3068217, -3240553, -6109054, 3176128, -1539209, -1550483,
--9080098, -14316737, -11020886, -14898168, -5738077, 1674500, 11930882, 8838506, 3202972, 12563853,
-3779034, 7675107, 7065758, -3406446, 10897406, 11810086, 8341900, -15939161, -8931921, -9230958,
-3479461, -6365679, 445066, 4540854, -4629975, -11246909, 7279970, -5331665, 2586107, 2421825,
-11479911, -11964168, 18611168, -18376018, 19012746, -38655, 9540733, -9219684, 3360275, -20540682,
--11437498, -9992241, 9061307, 4175782, 13135621, -1301375, -42413, -6660421, -16465831, 10758893,
--8989367, -4669703, 7841537, 18687940, 18083960, 8484171, -1198296, -12226161, 7204271, -18779208,
--1452773, -10660646, 6062883, 20278688, -19444390, 7102802, 9044127, -12089796, -1185948, -2056753,
-6798933, -8012799, -11536282, 2307471, -4656819, -16959752, 8630200, -1669669, -15921981, 11844446,
-15672873, -5154498, 545461, 2219961, -6719477, 10176925, 4733591, -2869575, -2507724, -6665253,
--3788698, 8165807, 4696547, 4663261, -328028, -7344394, -2188286, -2487323, -8140037, -1730872,
-2485176, -482110, -2361158, -733366, -5791227, 773094, -1946157, 3974455, 2241436, 836982,
--6711960, 5582384, 557809, -2907156, -1663763, -1098975, -293668, 3316252, -2443300, -1025960,
-2580202, 6863895, 3493419, 2035815, -4095251, 5478768, -13685913, -15979963, -4518306, 10286984,
--12236899, 8079907, -16807280, -3009698, -6467147, -5929203, -13325136, -1198833, -4975183, -8014409,
-6407018, -8928700, 9601399, 2019708, 7500087, -11795591, -22046068, -1841467, 4548907, -9241159,
--6757594, 3596498, 2878702, -10807211, -5120675, 15351287, 7462506, -2033667, 8409009, 22050362,
-790274, 2787971, 2267206, -1685238, -354872, 3242164, 2962454, -16962436, -6155762, -20724828,
--6539088, -19328964, -9098351, 1041530, 22581864, 10524817, -11161546, -13130252, 8425652, 17815524,
-11280732, -7988103, 13675176, -5215164, -1020592, -23945516, -7108708, -3097208, -2944200, -16382079,
--26220238, 8395587, -53687, -19202798, 4896263, 30008400, 3921842, 3384971, -18957448, -1721208,
--268972, 4187056, -21287468, 19648402, 3112241, 5418101, 10878078, 4186519, 11799886, -916976,
-5542656, -4643397, -9215389, -7693360, 4060355, -6201933, -1955821, -8281771, 2776696, 6736120,
-129923, 5670968, 639413, -2302639, -99321, -4769025, 3301219, 3388729, 609349, 603980,
--3236258, -1342177, 1807644, 4924180, 3591667, -4370666, -1546188, -1815697, -9956271, -13830332,
--10165651, -3353833, -1278290, 1581622, -2376191, -3935264, -4238059, -30065, -2841121, -3706020,
--6187438, -3384971, 9970230, -6197638, 12112345, -18402324, -3794604, 4327717, -8880919, 21087216,
--17499308, -18014166, -14659260, 20390894, 9080098, -11905649, -10740103, -7184944, -2285996, -6481106,
--6667400, 947040, 7574712, 20140712, -2297271, 8545374, 7434589, 7220377, -13550085, -16900160,
--12159589, 14057428, -2511482, 17093970, 5635534, -1969243, -23534274, -19209778, -2042257, 1483911,
--13674639, -8591545, -6455873, -6611029, -30848066, -6769942, -7578470, -11176579, -5491653, -7339562,
--14186814, 9852655, 19157702, 10596221, 479963, 11261941, 14377940, -5225365, 4526896, 3586835,
-1382980, -682900, -3715684, 10036265, 4038880, 16887274, -3982509, 1591285, 6017249, 33337536,
--427349, 17681306, 22445500, -2045478, -19624780, 1602560, 19494856, 2782065, -16712791, -15042586,
--19152332, 12392591, -15647640, -4326643, 22369264, -9716290, -15014132, 4544613, -4123169, 345745,
-6105296, -9488656, -4226785, 1774895, -2814814, -4355634, -852014, 1623498, 11181410, -1142998,
--5807333, -5094905, -48318, -4399121, -3528853, -3234647, -5634460, -2772402, 2127083, -2789045,
--533650, -7765301, 1975148, -831076, 1552631, 7560753, 4800700, -4624069, 2097018, 1562294,
--6753836, -10406169, 3855807, 4013110, 594853, -10635950, -11374684, -1906966, -7945153, -2702608,
--1161789, 18866180, 13743358, -31657668, 10040023, 12627741, -5550709, 9171366, 30079804, 2473364,
-6694781, -10508174, 6971269, -11105175, -7096897, -5916855, 2208687, 7740605, 10821170, -1551557,
-4460324, -3273839, -1843615, -5806796, 7963943, 28395102, -9274982, -9153112, 10180146, 7181186,
-1025423, -20649130, 13384729, -16462073, 9444633, 11853036, 1315871, 3013457, -3411815, 19537270,
-14782741, 177704, 9942849, -7810935, 12538083, 2107218, 14158897, 20694226, -465467, 5255966,
--2705293, -7616051, -533650, 9026948, 10160282, -19750944, -12014097, 4643934, 21459804, -10391137,
-14241038, 9557913, 2760053, -23012972, 2787971, 3599183, -27473296, 16202227, -15381888, -18263812,
--34772056, 8478265, 21081846, -9536438, -19407884, 4038880, 23365696, 14928769, 2593087, -3032247,
-318901, 8262980, -7160784, 11020349, 17943836, 17127256, -1275068, 7269232, 17752710, -2780991,
--247497, -1952063, 15284178, -2243584, 3750580, -7145752, 3877819, -4394826, 582505, 220117,
--1209570, -3460133, 3340411, 9014599, 3028489, 2565169, -8148090, 2074469, -8412230, 2554432,
-13226889, -4817343, 195958, 1746978, -6289443, -8185671, -9432285, -2138357, 5970005, -2768643,
-1595044, -5701032, -590558, 217970, -17452600, -4476967, -748935, 3670050, 4442070, -3623879,
-6182069, 3277597, 3299072, -5174362, -5073967, 7744363, 21812528, 15812459, -5468030, -42627552,
-5005248, 21329344, 10177999, 4632659, -18700288, -118112, -12913356, 2996277, -1252520, 3528853,
-6410239, 8930848, 3804804, -23178864, 13412646, -3231963, 4054986, 17591112, 6767258, 3282966,
--6313065, 21821118, -784905, 21688512, -26375932, -7762080, 8392366, -15374372, -13292387, 917512,
--3488587, -12037720, 1386201, 19160386, -663036, 1258425, -10104447, -20975010, -13389561, -6004901,
-8653822, -2325188, 1988033, -10326712, -11247446, -5518496, 16634408, -11489574, 9562745, 6432251,
-5363341, 1836099, -17293148, -24619826, -2046552, 16436840, -20478940, 9844602, -17639968, 10992432,
--18555332, -961536, -18296024, 25848186, -23666880, -14134201, 6053220, 4223027, 11803644, 9840844,
--6173479, -3288334, -6212134, 3186329, -311385, 15397458, -19212462, -7615514, -24672440, 12697534,
--8806294, 933619, -1088237, 6689412, -5508833, 2487860, -10133438, -15351287, 9785009, -7950522,
-188442, 2496987, 13016972, 5188858, -9455371, 1972464, -3242700, -12131672, -2299418, 2797634,
-3751117, -10974178, -5399848, 12028593, -1290638, -10206990, -4520990, 14121316, -16687559, -5689758,
-3335579, -3911642, 5865852, -1295470, -7369627, -9892920, -3211562, -4460861, -3119757, -3287798,
-2638184, -819802, 6113349, -6569153, 3364570, 1135482, -3017752, 6594923, -36378372, -5168457,
-10863046, 2648384, -8687645, -12991202, 1175747, -12349642, -1176821, -19063212, 17809082, -7144141,
-11134703, -24783036, -14085882, -524523, 30325154, -24861956, -2195802, -19463718, -15515569, -4742718,
-18979998, -4438312, 8398272, 8885214, -10147934, -21589726, 30345554, 13215614, -17446158, 3352222,
-2178622, 8368207, -16980690, 15156403, -1403381, -31805306, 3299609, 6344204, 8134668, -26355530,
--6371584, 3303367, 23134842, 4398584, 12859132, -33993592, -20724290, 10407780, -69793, 22159884,
--6013491, -3758097, 1626182, 11258720, 10252624, 3929358, -43276092, 12160126, -5105106, 9876814,
-22950694, -7293928, -2125472, -26323854, 8461086, 11891154, -13917305, -8225936, 23748484, 37620156,
-9760850, 6126771, -10739029, -4422206, -20636780, 1563905, 166430, -25378962, 9164386, -767189,
--7518877, -1938641, 11849815, -9721122, -6642704, -1133871, -2812667, -915365, 10448582, -4548907,
-114354, 6073621, 2319819, 8355859, 6935836, 5354214, 3671660, 10004589, 11602854, -15658377,
-4875862, -9771587, 7643968, 1169305, -10022843, -6715718, -3968550, -3273839, -6615324, 6027450,
--3429532, -6415608, 10661719, -1688459, -3534758, 6160594, 10980084, -19327, -4109747, 3085934,
-10233296, 11273215, 6952479, -3655017, 1762547, 2119030, 9188546, -31213674, -20424180, -7045357,
--343061, -17786534, 14090177, -36881420, 1772211, -22646826, 11720966, -8405251, -25178172, -2239826,
--6802155, -8875550, -28677496, -20924006, 5958194, 22577032, -15197205, 27873264, -23796266, -15640660,
-5060545, -2340220, 12625056, -7919920, -8329552, -11551315, -3266323, -39170100, -11313481, 1110786,
--1750736, -6548752, -15462956, 12270185, -13690745, 20885890, -6535867, -2630668, -14884746, -13676250,
--25993678, -11311333, 9515500, 3926137, -1625108, 1689533, -9387188, -7055558, -12085501, -10101763,
-5221070, 7688529, 3551401, -22537840, 25694104, 3474092, -11264089, 20601348, 14654428, 24556476,
--4766877, 14318884, -33779916, -18231600, -31927176, 32350768, -10566693, -22610856, -21855478, -46147276,
--19426674, 31893890, -2236604, -16213502, 11531987, -31499290, -21196738, 7876433, -2007897, -26288958,
--25813290, -333397, -14909442, 3916473, 5316096, -19558744, 18866180, -11652246, -17250736, 1460289,
--10305237, 27181238, -10671920, 12202539, 1760400, 16516297, -8613020, -4859219, 1396938, -7561827,
--476205, -15881715, -12210055, -3082713, 6405944, 295816, 10790568, 4414690, 7949985, -7145215,
--255551, -13823889, -3599720, -5000953, 3911105, 13151727, 5859946, 5265093, 6057515, 5430450,
-1235340, -18007724, -5565204, -12440910, -3319473, 2055142, 8244190, 40263708, 51555176, -4908074,
--22920092, -5462125, -8672613, -23157390, 9953587, 634581, -16785270, 49277232, 17088064, -11684459,
--34186328, -3070365, 8228084, 8983998, 9998684, 23568634, -6796249, -11664594, 11061688, -42776800,
--28592672, -11180337, -3081639, 4580046, -22851374, -20871394, 21984326, 17484274, -13466333, -25897042,
-16415365, 471910, 28968480, -23604604, -5431523, -8058970, -1481764, -18664318, -27800250, 23328652,
--17243756, -10902774, -21247740, -4769561, 14017700, 13160854, -8571144, 1834488, 2461553, 17592186,
-26968100, 19840602, -34570192, -16634408, -20509542, -5158793, 11793443, 4286914, -23629300, -34002184,
-28805272, 1795296, -28222230, -46882252, 23632520, -6136435, 12721156, 11707007, 12440373, 1614371,
-9188546, -18459232, -6962142, 12591233, 2321430, -8672613, 5252208, -2250563, -24813636, 12470974,
--31507880, -2124398, -1506460, -5559299, -11286100, -4476967, 13920526, -1023276, -3118683, 7038378,
--10139344, 30637076, -2360622, 2660195, -2210835, 207232, 7734163, -578210, 7458748, -15783468,
-3479461, -2984466, -10853382, 1006633, 5325223, 10115185, -5067525, 2736968, -26071526, -8690329,
--1334124, -13841069, 11768747, -1708860, -3048890, -7514582, -10666551, -16053514, -22197464, 6603512,
--2113661, 16189342, 19531900, 12187507, -13080860, -18549964, -23172960, -8922258, 21556440, 17293686,
-3147137, 7977902, -7337415, -13643500, -10080825, -9829033, 4538707, 18041546, 22355842, -27849642,
--23379118, 66219268, -5401458, -6535330, -10005126, -20970714, -2343442, 23861764, 38356744, -17742510,
--10756746, -3944391, -17552458, -4395362, -9929964, 15231028, -15874199, 17442400, 8257612, -6038724,
--22116398, -1651415, -9160628, 33042258, -18257906, -475668, -34360, -3325915, 14870787, -9557376,
--1344862, 6853694, -4627291, -32322314, 16375637, -14758044, -17167522, -3948149, -18306224, -10590852,
--33176474, 31623844, 1345935, -21095268, -38860328, 22546430, -22970022, -22334366, 188442, -17398912,
-7727183, 14295799, 43957380, -12547210, 17139066, -3726421, -21434034, -18124762, -5413807, 66292820,
--58612344, -4294431, 60764660, -55730960, -21268678, 31367756, -4765266, -25191594, 58751932, -29165512,
--12250320, 27020714, 6563784, 11523397, -17599702, 19508278, 27315456, 12854300, -7172059, -1822677,
-27582280, -4057134, 15712064, -391916, 10915659, -15895137, -2232846, 7300908, 4295504, 3047816,
-564788, 1117765, 11364483, -5310190, 2800856, 4268661, 3719442, -24931748, -10451266, 7978439,
--21306260, 6350109, 11849815, -8927626, -9616432, -7269769, 4838281, -10219875, 11865384, 10245644,
--1557999, 5937793, -7735773, -15018427, -14874009, 29116120, 5005248, 18166102, 3488587, 3597035,
-11260331, -9917616, -2607045, 18474802, -11244761, -25173878, 18605262, -2523293, 31513248, -39693552,
-36044976, -5900212, -22044456, 19480362, 6985228, -3360812, 4257387, 2834679, -4086662, 7241852,
--7487739, -9768366, -4326643, -13615583, -11306501, -25762824, -9727027, 22567906, 21289616, -32083942,
-11024644, 17365090, 14585709, -5334887, -31675920, -2668249, -15569793, -37125160, 23773180, 60029148,
--34112240, -3503083, 42722040, -11854647, -14936286, 34733936, 25851408, 12862353, -13703630, -27597850,
-9503689, -11115912, -17353816, 62770412, 46261092, -37522444, -27560806, 34001644, -61391724, -21465710,
--17221746, -10416906, 43313672, 28862180, 19074486, 20905216, -72164040, -25045564, 69226280, 40189084,
-8418673, -18195092, 24009940, -24074902, -48948668, -32573568, 24240258, -17727478, -3613678, 28079960,
-51845088, -5995775, -28815472, 3952981, 20653960, -34957276, -12774843, 36864240, 33224794, 33254858,
-23200876, -6360847, -20667382, -10165114, 28285580, 8320963, 12061879, -5159867, 3435974, 12984760,
-1414118, -4852776, -5669894, -7778186, 6535330, 4747013, 27165132, 7765838, -5003100, -10473278,
-2966212, 1576790, -3627100, -9164923, 2994129, 21023328, -21756156, -6376953, 20318416, -4325569,
--173946, 13515725, -4728222, 10064719, 4509179, 11780558, -21967148, -2954938, 5071283, 25691420,
-6538551, 12456479, 11014981, 6131603, -4483946, 8659728, 12453795, -13324599, 7133404, -61268784,
-26558468, 331786, -6247567, 31439160, -5307506, -23684598, 11960410, 10896869, 30750892, 17430052,
--16571058, 918586, 4789426, 21067888, 4922033, -24199456, -889058, -1364189, 4986994, -22511534,
--24526410, 35629440, -12783433, -37220188, 19207094, 33071248, -18544596, -6313065, 2224793, 22673670,
--26982596, -35496832, 9802726, 29997662, -6442451, -12776454, -7353521, -7303592, 13107703, 5564667,
-7857106, 75590352, 4239133, -9657771, 1095754, 2375117, 40890236, 1291711, -14443975, 9196062,
--31845036, -18746458, 8345659, 158377, 35156456, 27849642, -17955648, -5283347, -16969952, 803696,
-12655658, 3185792, 3980361, 12577812, -8958765, -37168648, 9540196, 25074020, -11777337, 22126060,
--34324304, 16188269, 10459856, -30169460, 5247913, 587874, -13069585, 1369558, -5540508, 14986215,
-14719390, -25281788, -15495168, 33709588, -25648470, 12390981, -2319819, -9901510, 7491497, -1014149,
--15051176, 8614631, 5321465, 6164352, -378494, -2580739, 1774358, 4665945, -5672578, -5484137,
-4685273, 3281355, -3089155, -281857, 7565048, 12550431, -7326678, -5079873, 1714229, -2248952,
-4508642, -3113851, -1571958, 2907156, -32212, 7543573, -2264522, 3724811, -9645423, 5940477,
--6689949, 6280853, 11167989, -974421, 338229, 1542967, -12567074, 21321292, -39366596, -129994704,
--153868272, -13640816, -106646720, 42198052, 260760880, 140367040, 211834224, 223225552, -24021752, -64063196,
-19283330, -162230576, -198335680, -61143692, -218355600, -175270096, 44725640, -126021856, -34170224, 251806416,
-91316376, 178082768, 307539520, 183100896, 82037096, 62457952, 22011708, -136706128, -170201504, -56047176,
--232546704, -232748032, 30930206, -174011136, -142734656, 86126976, -146353152, -150543440, 114015272, 46413028,
--20571820, 268790336, 251757568, 160793376, 341240512, 321543808, 110016128, 128091496, 99921880, -161630896,
--161975568, -204945632, -405914144, -479237824, -344579328, -343098624, -252981632, 8850317, 23626616, 167358240,
-289322944, 356492480, 324891712, 376936000, 323047040, 190562336, 128242888, 42798812, -63411972, -142835040,
--203224432, -174645712, -253262944, -283750784, -235234288, -275115200, -206328624, 32909114, 66457640, 160562528,
-321951296, 256349952, 197674256, 149405808, 59020368, -48597020, -39573292, -80473192, -100683696, -76896024,
--87436408, -84533544, -35874252, -34111704, 2164664, 52511344, 37479496, 73653856, 88517128, 15577310,
-64287072, 61702572, -16800302, 20645370, 14656039, -46595564, 2299955, 15355045, -53863184, -58930708,
--82276544, -169632960, -189603472, -147516016, -140883520, -46046344, 69653632, 125216016, 203660912, 307008032,
-331532288, 307394016, 215565488, 65954056, -69013144, -148154896, -221248256, -273264064, -268667392, -209836000,
--143895904, -68214816, -20581484, 9103720, 25472914, 63021664, 103716480, 106873280, 99418832, 101996344,
-72934984, 65732328, 57207892, 23780160, 6444599, 15372225, 13837848, 9188546, 6893960, -11006391,
--32198296, -46876348, -53939956, -44794360, -26738856, -17313550, -15388868, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--8929774,
--10633265, 5459977, 321586, 8239895, 2979634, 3637301, 2328409, 3346317, -105764, -109522,
--1868311, -5405217, -3132642, 1436667, -283468, -997506, -657130, 2874407, 2221035, 32212,
-2575370, -2423435, -6164352, 1959042, -1449552, 689879, -3154117, 2460480, -2587181, -1283122,
--1036698, 4407710, -1062468, -48855, -1864016, -506269, -5000953, 1677185, -868657, 2688113,
--2393371, 317828, -1146219, -3995393, 1238024, -398358, -1110786, 1777580, 3253438, -681289,
--2045478, -5842766, 499827, -3474092, 1578937, 56908, -2284386, -91805, -1000727, -817118,
--4249334, 2725694, -3772055, 2064269, -1506460, -2495376, -2160369, -4489315, 2437394, 229244,
-1195612, 2700461, -2916283, -4603668, 2913062, -4411469, 105764, -2939905, 901406, -2275796,
-1966021, -1151051, 1020592, -1963337, 317828, -911070, 1141388, -941135, -1074279, -1002875,
--987843, -1761474, 216359, 433255, -346819, -1387811, 920734, -1047972, 106837, -700617,
--1241246, -442919, -470299, -193810, -306016, -176094, -1032940, -536334, 109522, -594316,
--359167, -318364, -15739981, -189515, -2106145, 4116189, 59593, 1572495, -1318018, 2038499,
-382789, 1780801, -1835562, 10130754, -2223719, -1445793, -4373351, 1442572, -5276904, -1706176,
-379568, -2574296, -49392, 3707094, 2119566, 1398549, 2495376, 3600793, -4415764, -1697049,
--97174, 2283312, -4166118, 4035659, -3488050, -1769527, 3235184, -630286, 740345, -2596308,
-2988760, 3122441, 3357591, -5184563, -1584843, 5572183, -80531, -856309, -1257889, 6076305,
-3966402, 4697621, 81068, -1116155, -1411971, -348966, -129386, 677531, 1820529, -5902359,
--532576, -2756832, -3479997, -470299, 1003412, -3069828, 817654, -2349884, -853625, -959388,
--68719, 2022930, 1891396, -1082332, -693100, -1350767, -4772783, -1148367, -2956011, 61740,
--3900367, 1041530, 72478, 3930432, -1352915, 522912, -3412889, 278099, 493921, -1617592,
--1628330, 1655710, 70867, 423591, -142271, 1153736, -289910, 465467, -178241, -296890,
-1450625, 629750, 621697, 193810, -132607, 5335960, 6320581, -4410395, 558346, -3763465,
-5790153, 1056025, -2406256, -3407520, -3016141, -638876, 725850, 1527935, 7705708, -4598836,
--740345, -1832877, 3012920, -8627516, -1020055, 5484137, -163746, 4606353, 2029909, 3692598,
-3841848, 1665374, -766652, -4057134, 1322313, -1143535, 500364, 6415071, 1606855, 5502390,
--2910914, -1518808, 406948, -7429220, 854699, 5531381, -1643362, 505732, -4651450, 3490735,
--92342, 1544041, -5502390, 3218541, -3700651, -2066953, -3864934, -4534949, 2592550, 874026,
--1480153, -2326799, -2204929, -1621887, -1109175, 2550137, -2551748, -4606353, -7093676, 6540162,
-5013838, 261456, -7096360, 2142115, -3409667, 2780455, -2308008, 498216, -4352413, -2742337,
--5665599, -2565169, -802085, 5513128, 3278671, -6169721, 2662343, 129923, -544924, 2688650,
--374199, 2134062, 4376572, 223875, 916439, 2902324, 593779, 576063, 2867965, -510027,
--82678, 216359, 368830, 607201, 709207, -644245, 828929, -603443, 207232, 141197,
-733366, 168577, 1815697, 1588064, 111132, -88584, 1782411, 910533, -1343251, 255014,
-642098, 26761942, -9898826, 12004970, -9486509, 844498, 2871723, 2838437, -7826504, -2640868,
--2609193, -13126494, -42413, 721555, -4711043, -741419, -27917, 9429064, 1767916, -6534793,
-4819490, 5253819, 1196685, 9557913, -7059853, -2570538, -3759170, 2036888, 7666517, -530428,
-511101, 2864743, -1336272, 3435974, 1570884, 8748312, -1287417, 3442953, -5686537, 5238250,
--3972308, 5845451, -74625, -6067178, -884763, 8818105, -359167, 5973226, 3602941, 5745593,
-540092, -4508642, -3655017, 115964, -2708514, 4720169, 3147137, -4629975, 672699, -3613141,
-6234682, -1666984, 5008469, 5963025, 1072668, 6146098, -250182, -2949569, -977105, -3764539,
-206158, 8069707, -5014375, -5148055, -1920924, 2305324, -3503083, -2171106, 1593970, 3886946,
--1570884, 1440425, -7770670, 1941862, 542777, -538482, 2770254, 193274, 772557, 1876901,
--200790, -991064, 878321, -1779190, 601295, -730144, 263604, 359704, -239444, -607738,
--1522566, -105227, -1204738, -757525, -485868, -2671470, -22262426, 2440615, -6553583, -4685810,
--7187628, -8713952, 3440806, 7796977, -1172526, 3033321, 1236951, 4005057, 909996, 295279,
-2418604, -4770098, 11064373, -573915, -6438156, 7261716, -2217814, 3083250, -7257421, -4516158,
--5142150, 2228014, 1352915, 5681705, 173409, -3529926, 594853, -3151969, -3464428, -3844533,
--1335735, -5352603, -2712272, 4985920, -4642860, -330176, -3632469, -5681705, -2531346, 708670,
-1818919, 3601867, -2860985, -2626373, 3562139, 617938, 1340030, 941135, 2204392, 3337727,
--5437966, -1826972, -554051, -7627325, 2017024, -544924, 4459250, -4476967, -3415573, -4185983,
-716186, 4714801, 3653944, 8324721, 5590974, -5166846, 2089502, -2349884, 3941169, 2454037,
--5576478, 4000762, 1076426, -6200322, 792958, -1145146, 526134, -1179505, -4228396, 753230,
--3034931, -3207804, 1163936, -1775432, 729071, 2244121, -1523640, -2049773, -2110440, -3174518,
--590558, 2403034, -648003, 2499671, 16643, 1678795, 1155883, 859530, -1131724, -472446,
-429497, -1129576, -1231045, 256624, -1188095, -489626, 318901, -2247879, 1240172, -1168231,
--387621, 219043, -79994, 140123, 714038, -1024350, 635118, 1447404, -28349468, 7783555,
--8455180, -7044820, -5066988, 955630, -1474248, 16699370, 1645509, 3995393, -1860258, 63888,
--6859063, 6812355, 1991254, -993748, 1370632, 8893267, -4453344, -1541356, 2055679, 613107,
-4467840, -3890704, -1745904, 4902705, 1804423, 4515621, 543313, -4804995, -3140158, 2697776,
--464930, -1638530, -2994129, -1739999, -195421, 8419210, 2131378, -1537061, 179315, 609885,
--2555506, 6059662, 4651987, -1462973, -6378564, 1580548, -3376381, 5761699, 4491462, -4523138,
-1759863, -5852430, -5195837, -4593468, -5733782, -2007360, 1267552, -3476776, 286689, -3838627,
--3227131, 6626061, 4234838, -5672578, -7614977, 821413, 6488085, -5043366, -3714073, 5443334,
-4313758, 6212670, -4031364, -218506, 1767379, 2535105, 7026030, 1853815, -919660, -317291,
--5120138, -818728, -93416, -4445291, 320512, -1347546, -2006287, 31675, -594853, 2110977,
--521302, -903554, 1028108, -717796, -1831804, -1265405, 383326, 1686848, -839666, -720481,
-51540, -501437, 3289945, 523986, 4265977, -3092377, 768262, 145492, -1782948, -119722,
--151398, -2366527, 576063, -520228, -2535105, -2434173, -1233193, -2333778, -1722282, 503585,
--1126892, -14919643, -1469953, 2524367, 7270306, -1403381, -3795677, 1713692, 10678362, -13425531,
-3123515, -2714956, -2487323, -6036040, 3642669, -10755135, -7004018, 3716221, -5624260, 3420405,
-15347529, -2699387, 6205691, -7199439, 7413114, -1909113, 2213519, -6454799, 3024731, 1854889,
--3465502, 1542967, -697395, -3310346, -220117, 4233227, 6606734, -5152350, -8247948, -6516539,
--6054294, 805306, 4843650, 12851616, -146566, 8662412, 9023726, -8373039, 6455336, -12324946,
--4515621, 805843, -5493263, -5094905, 3424163, -11933567, -2364380, 8345659, -3591130, -3103651,
-1096827, -3627637, 3399467, -3598646, 5833103, 7565048, -2091112, 2369748, 310848, -7605850,
-653909, -4912906, -3409130, -6002754, 3427384, 2652679, -5796595, 498753, 4313758, 4041564,
-5111011, 5300527, -809601, -4982699, 4151623, 2203855, 2485176, 1387811, 3001645, -310848,
--101469, 470836, 1233193, 1486596, -2055679, -600759, -1658931, -1069984, 2408940, 2102923,
-2325725, -4195110, 862215, -496606, -1744831, -2010045, 2178622, -1314797, -2311766, 618475,
-545461, -727997, 5141076, 1740536, -1010391, -1104344, -2390149, -627065, 2101313, 3236795,
-804233, 42950, 3222299, 35440460, -1652489, -13935021, -1694902, -555125, 1399086, 4517232,
-1876901, -1561758, -1393717, -6986301, -3278134, 4010963, 8704825, -7023346, -4396436, 5834176,
-529892, -2014877, 2374043, -500901, -8139500, -8287140, 11429445, -994285, -659814, -1833414,
-5902359, -386010, 680752, 3784403, -6161131, 6674379, 2814277, 1145683, 2589329, 6672232,
--15812996, -7038378, -3795141, 14705431, 1957431, 1167694, -4438312, -4893042, 4449049, -586263,
-5147519, -1734093, -10080288, 1163399, 1309428, -1461900, 5001490, 2290291, 1393717, 8189429,
-19844896, -1488206, -1602023, 7609072, 2357937, -2258079, 5243618, 15467788, -1658931, 3024731,
-5640903, 4558571, 4072166, 4170413, 4641249, 3606162, -4000762, 6222871, 11043435, -2455648,
-4275640, 142808, -1316944, -7512972, 4802311, 1876901, -554588, 2384781, 2697776, 712965,
-368293, -2474975, -2882460, -1074279, -5804112, -2520609, -3913789, 5184026, 2558727, 2025077,
--766652, -679679, 359704, -3284039, 66035, 1328756, -4600447, 4174708, -1973538, 817118,
--1369021, 314069, 1603097, 1949378, -3576097, -3499862, -2937758, 498216, -566399, -902480,
--224412, 2613488, -614717, 359167, -1442572, -3096135, -1692754, 7154342, 7966091, -10118406,
--2925947, -8588324, 8529805, 15964930, -7626252, -1782948, -8750996, -3801046, -10591926, 7570417,
--6460168, -2625299, -670552, 82678, -4205847, -5189394, 9540196, -8637179, -3177202, 994822,
-6516003, 6945499, -9946071, -2923799, 3849901, -8564702, 4887673, -6794102, -2749853, 2509335,
-221728, -3716221, -1013075, 2051921, 11155104, 1379758, 2537252, 4832, -9494562, 10401874,
--5077188, -7797513, 6266894, -5558762, -6263673, 8198019, -3681324, 1049046, -1785633, 1101122,
-10802916, -1844689, 2444910, -9423158, -710280, 10966125, 2483565, 10864120, 9335111, -3065533,
--2349884, -12644384, 1974611, -2129230, 8413841, 10263898, -5869073, 2551748, -18533858, -5084705,
-6187974, -6423124, 9659918, 638876, 2116345, -3416647, -681289, -4464082, 827318, -3080565,
-6834904, 6671158, -263067, 2264522, -61740, 3764002, 1672890, 2722473, 5784784, -1743220,
--6416145, 2950643, 1515050, 4078072, -1020592, 4327180, -841277, -1526861, 1142461, -2632278,
--1687922, 424128, -4490925, 1248225, -1529545, 4004520, 1792612, -318901, -803159, -2678986,
--3971771, -346819, 602369, 1610076, -1421097, 875636, -3729105, -78383, 287763, -2028835,
-2601677, 227633, 122943, 1050656, -1174674, 167504, 90194, 6406481, -8133595, 2793339,
--7605314, -823560, -10275172, 16896938, -4964982, 1155346, -5325223, -15400142, 8890045, 3117610,
--11489574, 7125888, -5171141, -3806952, 4030827, 15993921, -7970386, 15451145, -293668, -10849087,
-467078, 3615289, -9540196, 10550050, -5519570, 7814156, 16983374, 1666447, -7914551, -2211908,
--890669, 3897683, -6728067, -3675418, -894964, 8371965, -2970507, -3352759, -11092827, -369904,
--13117367, -2413772, 14901926, -3331821, 8494372, 812286, 2281165, -19498614, 289373, -12473122,
-10077604, 17488570, 5417028, 4402342, 1110786, 2630131, -10167798, 3604551, 5473936, -4529580,
--1242319, -4013647, -2534568, 7891466, 210453, 9569724, 29316910, 10710038, 2957085, -10044318,
--9313637, -6044630, 5790690, -9944997, -828929, -892816, 2076080, 5650030, -5425618, -1014686,
-5484673, 5995238, 1270774, 1036161, 4107599, 5164698, 4340065, -32749, -911070, -950262,
-496606, -2111513, -2611877, 2348810, -1298691, 3642132, -4393215, -1388885, 3115462, 2625299,
--217433, 2373506, -2237678, 1090922, 1663226, 2204929, -2460480, -2451353, 3523484, 2498597,
-2000381, -882079, -1699733, 857383, -4892505, -1283658, 844498, -2619930, 1256278, -1814624,
--1232119, 573378, 455803, -404801, -925565, -3669513, 30596274, -16569447, -454193, -8233989,
--15529528, -20725902, 5737003, -6649146, 6075231, -19618874, 3841312, 6982543, 6282464, -8249559,
--18012556, -14191109, -11917461, 131533, -6941204, -13160854, -9062381, -4624069, -10751914, -7514582,
-1753420, 13515725, -403190, 1891933, -539018, -11967926, 7281580, -1132261, 2088428, -2710661,
--7957501, 6660958, -9908490, -13807783, 12240657, -13472776, 2567317, -181999, -18891414, -11294153,
-7256884, -400506, 8943733, -6073084, -20066624, -147640, 588411, 7382512, 7850127, 18589156,
--10924249, -38511360, -13559749, -13182865, 8486319, -25117506, -8593693, -4250407, -23079006, -7725036,
--519154, -4445828, -4436701, 4937602, -6322192, -620623, -5939940, 5321465, -13631689, 4793721,
-10715407, -13739600, -7004555, 6657200, 5158256, 4468377, -14125611, 3251290, 33286, -2051921,
-7289097, -1942936, 5971079, 5318244, -1342714, 1602560, 1044214, -1763621, -4789426, 7569343,
--2639258, -5452461, 35970, -289910, 3961571, 1374390, -116501, 1198296, -4164508, -4201552,
-334471, 1367947, 2324114, 4301410, -639413, 1923072, -561567, 1691143, -4825396, -2120640,
--3385508, -3080029, -619549, -722091, 1604170, -5411122, -2542084, -4071092, -2951180, -5666136,
--6978785, -6180995, -775778, -637266, 625455, -3834869, -4932770, -17763448, 6977711, 8732205,
--2961917, -3444564, -8876624, -9779641, 22493280, 8185671, -21070572, 7260106, -11498701, -1108638,
--10451803, -21618718, 6303938, -11269994, -4755066, 886374, 590558, -5505075, -18318572, -11333345,
-8922795, -11203959, -352724, -9908490, -15253576, -5915781, 16844862, 2717104, 2962991, -14713484,
--4982162, -3000572, -1964411, 6003291, 7358353, 9564355, 11767137, -5741835, 6612102, 2356327,
--6868727, 4220879, -11512123, -9955197, -8681203, 3762928, -10022306, 523449, -15046881, -13111461,
--6824703, 15603079, 12102144, 11871826, 12993887, -11944304, 16292422, 607738, 7481833, 22531398,
--4662187, -4060355, 3613141, -10734734, 4414153, -4993973, -14013941, 1915555, 11365557, -13394929,
--9669045, -1547262, 12214887, -10144176, 1119913, 3898220, 7320772, 1974074, -3110093, -6863358,
-1817308, 5364414, -2936684, 810138, -3683471, 1309965, -3507378, 1534377, 149250, 2097555,
--1384053, 1506997, 2398739, 6514392, -897648, 47245, 423591, 3144453, -4804458, -1758252,
--5283347, -1241782, -1272384, -5718212, 1004486, 5602785, -603980, -6835978, -1327682, -401043,
--6277632, -6670084, -10239202, -3929895, 3730179, 898722, 2593087, -1251983, -1966021, -3340948,
--684510, -8582955, -1775432, 5633387, 8299488, -110595, 2378875, -4704063, -8392366, -19698868,
-22737020, -17595408, 23542864, 13214004, 9028558, 5108864, 9311489, 10094784, 9351754, 25285546,
--8720394, 1862405, -1582696, -4264903, -662499, 3206193, -2237678, 4928475, -1530619, 7960185,
-6716792, -1342714, -4258997, -25041270, -8840653, -18145164, -733366, 9676561, 9798968, 3151969,
-5046587, 7308961, 6094022, 7084549, 18100602, 26894012, 18112950, 3692061, -3299609, -5123896,
--7589744, 9445170, 9676024, 10775536, -7857643, -6230387, -9773198, -1583232, 13191992, 175557,
-15785615, -9454297, 8511551, 5099737, 14180908, -29350196, -20928302, -8580808, -11691975, -12046846,
-3750580, -4898410, 18624588, 5524402, -20500416, -1670742, 33503430, -11224897, 10536629, -5018670,
-13845901, -6367826, -4043175, 512175, -5537287, -7429757, -404264, 5625871, 8390219, 5769752,
--2034741, 6502581, -1593970, 3010772, -8369281, -5783711, 5585068, 3466576, -8413841, -3727495,
--3492882, -1150514, 2262911, -2257542, -4053912, 1921461, 518080, 1387274, -534723, -2433099,
-3934727, 1219771, -2013803, 5001490, -564788, 1451699, -797790, 5895380, -4895726, 5243082,
-2455648, -4997195, 3417183, 133681, 1015760, -5217312, -14954539, 5606543, 270046, 1036698,
--1591285, 5690295, -1256815, -2759517, 1979980, 4421669, 3867618, -2306934, 4762045, -14501420,
--7264937, 11994770, 5235565, 8841727, 23098334, 1956358, 15432354, 22551262, 15668578, -10241350,
--22967338, -799938, -10548440, 24729884, 7120519, 19312858, -2771865, -10401337, -3828963, -11348377,
-4457639, -8742406, 1042066, -9735617, 5039071, -7125351, -2989834, -15614354, -15440407, -1575716,
--22115860, 12060268, 8332774, -6663642, 11311870, -5439576, 4393215, 12548821, -13986561, -18375480,
-3248069, -4059818, 30746598, 13008382, -33765960, -9174587, -9594420, -17477832, -18447958, -37769944,
-6632503, -13578539, -3553012, 5335423, 1355599, 7690676, -1513439, -4536023, -28594818, 3322157,
--13009993, 3433290, 16738561, 3447785, 11218455, -17107928, -22619446, 4485020, 13996225, 9349070,
-5247377, 8876624, 14552960, 18135500, 18727668, -16751983, -10042170, -12095702, -8595840, -14107357,
-19761144, 11491722, 11138998, 2950643, 8517457, 7201050, -702227, 10230612, -15933255, -5709086,
--1904818, 1202054, -3449396, -11403675, 644782, -2396055, 1471026, 3556770, 11551851, 528818,
-5408438, 5301601, 871342, 5633387, 198105, -3601330, 714575, -8786429, -3510599, 4505958,
-6673843, 1925756, 1234266, -10724533, -1011465, 246424, -5079336, -3661997, 1592896, 3267396,
--9709847, -10903848, -4886599, 3514357, 3153043, 5356361, 1345935, -3579318, 2447058, -11290932,
--9878425, 40805948, 26949310, 37439768, 2421825, -7427609, -25447682, -7508140, 4246649, 5900748,
--6075231, -19662898, -7117835, 32349694, 13364864, -4477504, 9895068, -732829, -11901891, -3474092,
--7772280, 22056804, -1712618, 1292785, 9502615, 623844, 10784663, -114354, 15273441, -14075145,
-17600776, 3566970, -8230231, -4967130, -9114994, 15907485, -22069152, -23805930, 15027554, 24893630,
-1140314, 17183628, 23605140, -26615376, 8826695, 5435818, -1494112, -245350, 3917010, -9992778,
-18520972, -11265699, -8989367, 7492571, 905701, -2017561, -4357781, -5553930, 2633889, -17584670,
--5309654, 14149770, -17388712, -4002910, -11762842, 431107, 35041564, -11033771, 2202781, 9379672,
-118112, -8091182, -21978422, 21406118, 9931575, -44164076, 10878615, 11098195, 8150774, -9915469,
--4679367, 22537840, 941672, 1644973, 5709622, -15705622, 523449, 9962714, -4158065, 5747740,
--1337882, -5121212, -13165685, 1969779, -1810329, 12096775, -1223529, -543313, -8807904, 9574556,
--3333968, -3371013, -13909788, -6973417, 4742718, -8924405, 619549, -4420058, 5401995, -5246303,
--11228655, 5563594, -12090870, -3329674, -5571110, 505732, 588947, -4548371, 11777874, -1537061,
-15926276, 9740449, -1773822, 1616518, 10123775, -7209103, 1672890, 1138703, 9696426, -9029095,
--5483063, -17971216, -43437152, 39140036, 23439248, 12586939, 8933532, 19466402, -43833900, 18366354,
-20631412, 8979703, -27964532, 15967078, 28809030, 13485124, 31739808, 11734924, 807991, -994285,
--716723, -5107253, 13605920, 22611930, 21567178, 7695508, -6272263, -10858214, 2927557, -9864466,
--11567421, 12702366, 8837432, 2616709, -11593190, -11302206, -2263985, -9795747, 5392869, 25938918,
--4296578, -8070781, 8946954, 4893579, 7887171, 9209484, -1693291, -4954782, 20920786, 13891535,
-7023882, 9339943, -1391033, -20293184, 5032628, 13885092, 2043331, -15050639, 20709258, 5548561,
-28700582, 1272384, 25827786, 2946885, -8104067, -2509335, 6401649, 36588828, -4323959, 13283260,
-9236327, 17393544, 9275519, 280784, -834297, 11412802, 52032456, 2617246, 21036212, -17355962,
--12837657, 6765647, 8407398, 10275709, 4416837, 1839320, -25173340, -9883793, -26409218, 1632088,
--4317516, -8637716, -7196755, -2796024, -10992432, 1580011, -907849, -11671037, 8719857, -13624173,
--6437619, -12289512, -8252780, -669478, 1622961, -9808632, -11299522, 2917357, 7592429, 8709657,
--1497870, -3153580, -14615237, -19303194, 2185602, 2495913, -8614631, 17792976, 17346836, 25424596,
-9116068, -5470178, 3691525, 7915625, 9812390, 11592117, 1923609, -11916924, 3248069, 15453829,
-8096014, 858457, 6368900, -28547038, 31158378, -542777, 27574764, 610959, 1822677, -25162602,
--7761543, -11365557, 19126026, 4797479, 8457327, 4983236, -19299972, 1821603, 1515050, -17007534,
--24244554, -24839406, 8362302, -9295920, 22528178, 1198296, -7162932, -5953899, 4855461, -8834211,
-1452773, 6500970, -9483825, 5216238, 7604777, 2476049, 2180770, 16935056, 28682866, -5737003,
--213138, 14281840, 11813308, 17127256, -12780212, -5147519, 5221607, -17288318, 1699733, 1356673,
--22756348, 29233158, -1410897, 14685030, 12826920, 8835285, -17299592, 1501628, 14847702, -12193412,
-26400090, 7099044, -9598715, 21656836, 16478179, 11323681, -36659692, -7622493, 7351911, -12678743,
-2021319, -20617454, -5077725, -31171262, -8827232, -4893579, -8517457, -34529928, -3398930, -9538585,
-51717848, -7591892, 10579578, -5460514, 8326331, -4491462, -8369281, 5428839, -7004018, -1246614,
--3732327, 13723494, 5062156, 5945846, -22231824, -20113332, -14824080, -6365142, 4041564, -28210956,
--4420058, -2416993, 2203855, 10109279, 7881802, -999654, 10998874, -9981504, 345208, 430034,
--16027744, -22473416, 4537096, -6688875, -20559472, -5840082, -9601936, 1249836, -21977884, -2688113,
--9501541, 12903692, 386010, -9609989, -3266323, 3907347, 5352603, -2280628, 10182831, -10269804,
--6077916, 12779138, 12555800, 16088411, 14131516, 10531260, -7634841, 6588480, 17639968, 17034378,
-7501698, -20534238, -23833848, 10620380, -3263102, 7690139, -4369056, 20272782, -15080704, -3087545,
--5187247, 17689360, -13242458, 30986578, 38071128, 38845832, 2415919, -7154342, 6327024, -4997732,
-9521942, -1609002, -187905, -11323681, -31118648, -10326175, -29801168, 17150878, 16124381, -18331994,
--13730474, -18377092, -8584566, -2609730, 40699112, 529892, -20718386, -22239878, -1314797, 28491202,
-13619878, -56948044, -11599096, -10022306, 7530152, 21482890, -24724516, -7783555, -14710263, 6535867,
--33749852, 16864190, -5601711, -699543, 9409200, 1459215, -16510928, 33415920, -3308199, 15938087,
-35736276, 73256576, 43923020, -992137, 24690694, 37403260, 48037060, 52111912, 14923401, 31957242,
-9154723, 501974, 19604378, -15304042, 32139778, 13857712, -13915157, -47759500, -34778496, 4645007,
--13567802, -9709847, -8788040, -5194226, -5828271, -19601156, -12853227, 852014, -2993592, -958851,
--6147172, -1620813, -10211285, 12888123, -21213918, -8570607, 6233608, 4062502, 1989644, -5348308,
--6581501, -3607236, 4366371, -3235184, 11048803, -12724914, -16093242, -16034187, -9908490, 12513387,
-13919989, -5005248, -2330020, 5226975, -2559801, 23146116, 5062693, 2219961, 18473192, 11731166,
-10605348, 26275000, 17219060, 19826642, 6203007, 9672803, 21604760, 8531953, 8972724, -7183333,
--16262894, 18925236, -23647016, 39813272, -4610111, -7207492, 814433, 31722628, -21053392, -3650722,
--843424, 510027, 11560441, -8108899, 16636556, 5829881, -3037616, 3925600, 1977833, 13088913,
--39737576, -12475806, -1142998, 4292283, -3863860, -28936806, 23883776, -1243930, 3328063, 8697309,
--18860812, -8556649, -43856984, 11707544, -10227391, 8485782, 32136556, -8734890, 6786049, -4072166,
-15351287, -26169236, -35035660, 30798674, -2835215, 2699924, 5255966, 30976914, 22580254, 26891864,
--419296, -35868884, 21356724, 10062572, -8449811, -12656195, 20412906, -3677566, 25798794, 42672112,
-33166274, 5694590, 2921115, 31493384, -6172942, 9707163, 25901874, -17566954, 29943976, 18361522,
-10693932, -21097954, -10419591, -28169616, -794569, 9733470, 42039676, 17747342, -38981124, -3551938,
-25259776, -3651796, 12312597, 16950088, -27635430, -6794102, 13543106, 3301219, 7585986, -12040941,
-9012452, 15269146, 2014340, 261993, 22326314, 4292820, -4770635, -5750425, 7434052, -1932735,
-12012487, 1923609, 9099425, 10341744, -1531156, -10660646, 21976810, -3124589, -6702834, -1387274,
--14870251, -14958834, -9811316, -10354629, 7159711, 13016435, -13034152, -11169599, 2629057, 19543712,
--28168006, -6823630, 10910291, -3330747, 91805, -3827353, -3027415, -20253456, -265214, -5392332,
-5631239, 1568737, 3388729, 237297, 1771137, -1603097, -55188184, 12604118, -9155260, -2200097,
-43050604, 18478024, -13526463, -10499048, -180926, -27904940, -34149284, 2841658, 284542, -19253802,
-20372104, 2421288, -19709068, 12400644, 37046240, -5018133, -21350282, 13350369, -12571906, -13759465,
-6916508, 30032558, -9794136, 4344360, 8257612, -9346386, -22395570, -14767171, 29726542, 10386305,
--29286308, 24990268, 9844602, -20153598, -10478646, 41195716, -13406740, -31755378, -16255914, 54774792,
--54134840, -25187298, 32160178, -14632954, -17389786, -51697984, 40287332, -33138358, 11861626, 1618666,
--6164889, -58376660, -17190606, 49777596, 31490700, -39532488, -10757282, -17182016, -8036958, 7973607,
-10878078, 12873628, -68801080, 37543920, 28923920, 30187178, 521839, 15744276, -33634424, -30070676,
-58980100, 24053964, 6586333, 23601920, -31656056, 6258304, -13969918, 15029701, -8500814, 41216116,
--16789028, -14506789, 5805185, 4857608, -15569256, 9281424, 4619774, 3384434, -2873333, 1956895,
-3405372, 3226594, -3793530, -2379412, 8741869, 354872, -4509179, 17947594, 5418101, -16232292,
-1858647, 15370614, 4134443, -15451145, 20613696, 36699420, -18025440, -21283710, -5640903, -4922570,
-12594992, 26840862, 8272107, -25148108, -8231842, -3797288, 3815005, 7435126, -4112968, 10880226,
--7885560, -1122060, 6552510, -45426796, 7956964, 56883084, 17827336, 6168110, 1622961, 4337380,
-24431384, 33423436, -7563975, 6298033, 8691940, -5677410, 20184198, -10543608, -2785823, -7964480,
-15520401, 11540577, -6253473, 10615012, -15095199, -12290586, 15496779, -9866077, 17022566, -11251204,
--4963909, -274878, 9330816, -524523, 6957310, 2849174, 17333414, -12307766, -2416993, 357019,
--6818798, 16734803, 14526653, -11904576, -4189204, -7297150, 3888556, -15374372, 8375186, 4808753,
-7691750, -6114423, -4625680, 19040664, -22769770, -3899294, 9681393, -6144488, -4099010, 9982041,
--27996208, 6818798, -10101226, 1723893, -9890773, 24300924, -7845832, -10430328, 10008348, -5462662,
--15849503, 30892626, -803696, 3206193, -6845104, -11833172, -13950591, 15608985, -17434882, -8382703,
-17839146, -24237038, -10531260, 3180423, -2231236, 3029563, -335007, 3514894, 10860899, -3837017,
-4285304, -4902705, 11394548, 6267968, -435939, 1013612, 6960532, -6022081, 5071283, 870805,
-5573257, -2446521, 8637179, -4325569, 2357400, -7423851, -6406481, -10160819, 1953136, 651761,
-3464965, -4952098, 11472395, -3719979, -1915555, 9851044, 8688719, 4683662, -3969624, -6525129,
-5945846, 7866770, 4947803, 3426847, -56908, 7114614, 7710003, 3437048, 6556268, 905164,
--5001490, 14734959, -42477764, -119853744, -98487360, 51880520, 14797236, 118887376, 212517136, 31457414,
-66920960, 24263344, -169716704, -53757960, -115171696, -139164992, 3789772, 22075596, -58116276, 83915072,
-109881368, 61611844, 175317344, 101045552, -22690312, -41772852, -81528680, -158582544, -125250376, -37015100,
--111701896, -15683073, 96156800, 15943455, 22291418, 145415776, 74132208, 45796700, 151633280, 23246510,
--42012296, 59192704, -79595944, -157556576, -65996468, -132951248, -166342480, -2565169, -34831648, -43888660,
-110586280, 121865936, 77517720, 183938416, 148405616, 69927976, 63248224, 36550708, -123118992, -113288888,
--143406816, -189333440, -151813136, -64151244, -44088912, 3741454, 108652472, 132120176, 138337136, 132578664,
-122876328, 26090852, 2172717, -21033528, -93864360, -102871448, -59475096, -107861128, -45431628, 9248138,
--23607824, 53902376, 97165584, 29590178, 40993852, 18125298, -26652956, -16721381, -40745280, -53049288,
--6448894, 14721537, 325344, 43472584, 40182104, 4415764, 38681012, -145492, -49143552, 43142948,
-12961674, -43791488, 30595200, -32478542, -65641596, 29792040, -46732464, -115732192, 1753420, -51037096,
--33719788, 114390552, 51774220, 54308252, 163842272, 108506440, 60254632, 71389872, -17882634, -103752992,
--131733088, -178965920, -197857872, -125675040, -80234824, -13973676, 75252656, 167494592, 185031488, 171438992,
-178644336, 95409480, 4387846, -45678588, -117630568, -150588000, -97391608, -108795280, -86541984, -17474074,
-3308199, 11541114, 42762840, 36324148, 31913218, 56554520, 56602300, 47831440, 56633440, 39530880,
-14287746, -2864743, -21993454, -52027088, -54877872, -40637908, -32021666, -13900125, -4604742, -3220689,
--3836480, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--10573136,
--12868796, 6489159, -2356327, 5675263, -2819109, -2884071, -5756867, 1356136, 1220308, -258235,
-93416, -646393, -4403415, -512712, -2517925, -2896956, -2744484, -106837, 330712, -221191,
--495532, 2181844, -606127, -6664179, 4145180, 2057826, -2269353, 663036, -64425, 68183,
-935766, 4279398, -2386928, 249645, -7549479, 3759170, 743029, 1695438, 2609730, 4236449,
--2370822, -1807108, -857383, -3801046, 304406, -576063, 3281892, -1769527, -224949, -1842541,
--2105608, 3991635, -3012383, -1461363, 375273, -2739116, 2282775, -107374, -1284195, 2466385,
-4533875, 279173, -176094, -642098, 3876208, -3857954, 33823, -607738, 2028298, -954020,
--1765232, 4211216, -74625, 884226, -1171452, 869194, 2267206, -1823214, -2542621, 122943,
-2213519, 3712462, -1674500, -1139777, 914828, 195421, 568009, -1711545, -550293, 1011465,
--230318, 709207, -1349157, -425739, -832687, -1169305, -842887, -788127, 591095, 98784,
--590558, 587874, 407485, -539555, -166967, -137439, -731755, -1319629, -369904, -5369,
-270583, 706522, -15343771, 2608119, 1813013, 5377836, -2108292, 1629403, 6252936, -2422362,
-1708860, -3794604, -5567352, 2036351, -3790309, -4326643, -4340065, 1305670, 1655173, -7405598,
-4352413, 2884071, -1260036, -2712809, 1731946, -675921, -1686848, 534187, 2454037, 1813013,
-3920232, 754304, -1194001, 4033511, -2030446, 8799851, 1981591, 5420786, 2090039, 4755603,
-2118493, 3276523, 1774895, 389231, 182536, 6658273, 1129576, -1072131, 440771, 3514357,
-2605435, 380105, -297963, -1372242, 742493, 8123394, 2331094, 3752728, -3926137, -2024003,
--4140885, -2622078, -4019553, 3015604, 1906966, -2573222, -1829656, 1805497, -1915019, 2015413,
--900869, -614717, -2779918, -4693863, 2019172, -7620883, -1075352, -1632625, -1926293, 406411,
--1777043, 348966, 2869038, 1380832, -1952600, 345745, -1548336, -3325379, -535797, 1581622,
--161598, -2570538, 932545, 459562, 973884, 1742683, 70330, 234613, -1203128, -741956,
--176094, -32749, 632971, -1398549, -1182727, 8637179, 11900818, -3645354, 3200825, -5910949,
--311922, 353798, 15205795, -1554241, -4014721, -6551973, 156766, 4363687, 6997039, -1575716,
--9173513, -2639258, -3494493, -2505577, 3124052, -672699, 5844914, 651761, -3297461, -7422241,
-2232846, -695248, 1731409, -894964, 845035, 3638374, 1341104, -9339406, 1131724, 6009196,
-2962454, 739271, 1445793, -1500554, 4170950, -5522254, -531502, 4555887, -3134789, 537,
-7409356, -3418794, -341987, -2508798, 4561256, -4789426, -3546032, 2216203, -4958540, -2449205,
-6470905, 3798899, -5767068, -2130304, -858993, -1433982, -2624225, 2073932, -2251100, 2378875,
--62277, 353798, 1051193, 4877472, -545998, 6724308, 3484829, -5164698, -2370822, -2521146,
-4049081, 1203128, -262530, -2075543, 5418638, 2083059, -90731, -117575, -1342177, -1241782,
-1615982, 622770, 1791538, 4219269, 1544578, -228170, 287763, 340376, 1380832, -280784,
-533650, 2017561, 451508, 2496987, 96100, 884226, 1291175, 1530619, 562641, 969589,
-1124208, 914291, 1449552, -438624, 456877, 984084, 1484448, -125628, -1102733, -1314797,
-339302, 28390270, -10488847, 5761699, -8010114, -831076, 283468, -581968, -4245575, 2327336,
-3267933, 796180, -3088082, -6575595, -245350, 4020626, 2856690, -2890513, -4950487, -397284,
-4435628, 8100309, -4367982, -586263, -3297461, -7087233, 794569, -3565360, 2152852, -2639794,
-5515812, -9678709, 6536940, -428960, -5761162, 1403381, 2428267, -683437, -3049964, 188442,
-7573638, -286689, 1249299, -1072131, 2900714, 1333587, -1785096, -2845953, -6221797, 4033511,
--1299765, -1835025, 2397666, 38655, -10459856, 8036421, -11258183, -6504191, -7971996, 1714766,
--930934, 4775467, -2607582, 2537252, -4796942, 2303176, -1251446, -1970316, -5292474, 3237332,
-3735011, 6368900, -1544578, -618475, 1734630, -1946694, -1137630, 1218697, 3693672, -4888747,
-2420751, 3494493, 3903589, -6193343, -5043902, 2107218, -3149822, 1600949, -43487, -382789,
-553514, 765041, -252866, 1446330, -1789928, 862215, -548145, 3601330, 227096, 871342,
-826244, 216359, -1410897, -139050, 367757, -411780, -22416508, 2263448, 216896, -1921461,
--3474629, 3899830, -3058554, 2588792, -824634, -57982, 3600793, 4695473, -2919504, 3454228,
--1032403, -1932735, -6302865, -325881, -8508867, -6249715, 7452305, 2649458, -2913062, -1074279,
--896038, 5169530, 2717641, -2683281, 4709432, 3129958, 1835562, 1620276, 1994476, 3586298,
-3081639, 3044058, 8336532, 7504382, 3230352, 819265, -5209259, 5767068, -7730941, 1511829,
--2165201, 6248641, -4735739, -6153078, 10539313, -2471217, -5669357, -5055177, 7841000, 4810900,
-274341, 4027069, 5688148, 2603824, 9207873, -561567, -1468879, 5220533, 3185792, 295279,
-193810, -4809827, 2864206, 2980171, 7430294, 3017752, 4621385, -2873333, -3838627, -8139500,
--1881196, -4408247, -3509525, -3714610, 4090956, -159451, 301721, -2393908, -2768107, -778463,
--2437394, 737124, -1647657, -2707977, 1088774, -279710, 84289, -2535641, -384936, 89121,
--3191698, -450435, -774168, 196495, -1444720, -1664837, -1040993, -627602, 37581, -545998,
-483721, -759136, 867583, 197032, 764504, 1725503, -420907, 1822677, 356482, 1191317,
--864899, 358630, -1612223, -609885, -290447, -1933809, -615791, -960462, -29869350, 7989713,
--6392522, -9442486, -9336722, 5761162, -6935299, 5086315, -8706972, 4763119, 4065187, 2491081,
--9164923, 6244346, -131533, 3772055, -7596724, 4198868, 8942122, 6830609, 227096, -3231963,
-1240172, -1957431, -9684078, -1978906, -4664872, 2189897, -6098854, 5197984, 5098663, -2044404,
--245887, 7160784, -1595580, 4851166, -3942243, -6283001, 3241627, -130460, 3354906, 8813810,
-5356361, -352187, -15425912, -7408282, -2160369, 2115808, -2391223, 8461622, -13404593, 4214437,
-1795296, -157303, 4174171, -1756642, 6478958, -14052596, -6570226, 5413807, -14122389, -2636573,
-6558952, 2334315, -3136937, -9427990, 3470871, 6047314, 4431870, -1702418, -9890236, -874026,
-52613, -1142998, -549219, -4855461, 2167885, -7753490, 4731444, 645319, -4608500, 883690,
--5538897, 395137, -6620692, -1870995, 2290828, 2408940, 192737, -659278, -2296197, -1739999,
-439160, -3901978, 3100430, 214748, -1898376, -12885, -3369402, -2665027, 724776, -1402307,
-1793149, -1788317, -1005022, -1181116, -1290638, -2290828, -403190, -1290101, -523986, 607201,
--549219, -1047972, 811212, -438624, -894964, -921807, -2027225, -1434519, 247497, 1033477,
--324270, -14036490, 1513976, 2340220, 10994579, -10384157, 12004970, 3404835, -971200, -2818572,
--1298691, 1116692, -8783745, -1677722, 2808372, -2880313, -5159330, -1387811, 8297340, -8573292,
--1874753, 8601209, 29528, -3400004, 3020973, -4172024, 6313602, 2790118, -92879, 3173444,
--3684545, -5768141, -427349, 454193, 4717485, -10121627, -5481452, -4458176, -3148748, -2987150,
--3090229, 1537598, 477278, 861678, -7584376, -7747048, -6189048, 245350, -9739375, -5344013,
-5794448, -3911105, 1259499, 645856, -210453, 2455648, 3423089, 3317325, 3877819, 5763309,
--1045288, 6234145, -430034, 3169686, -552440, -3947075, -271657, -6386080, 3932580, -7479149,
-6980933, -8348880, -167504, -8611409, 780073, -8651138, -8404714, 4002910, 11471858, 3522410,
--7470559, 5345624, -46171, -3232500, -2006824, -3387656, 4532264, 4000762, 5583458, 1070521,
-4341675, -3652333, -450435, 4363150, 454193, 1391569, 795643, -2029372, 2525441, -167504,
-905164, 3882651, 1061931, -879395, -2337536, -975494, 1515050, 1633161, 1183800, 519154,
--1837709, 217970, -440771, -3913789, 3817689, 534187, 1353989, 270583, -1015760, -1800665,
-1297617, -1835025, -992137, 39034272, 471373, -11252814, 1777580, -6109054, 15565498, -2545842,
-4383014, 1139240, 759136, -13675176, -7004018, 7583302, 6670084, -10776073, -1887101, -328565,
-9596031, 4714801, 3655554, 9401683, 1486059, 614717, 8169028, -2857227, -12424804, 1836099,
-9512279, 5624797, -3593277, 186294, 6635188, 4038343, 1818919, -358093, -6968585, 3389803,
--7580081, 750546, -14276471, 3739843, 4405026, -1161252, -6566468, 9062381, 4774930, -1884954,
-7058779, 3246459, -5939403, 10880763, 1180579, -3865471, 2534568, 11157251, 1745367, -294205,
--9306657, -5439039, 1313723, 3779034, 12730820, -4200478, -5034239, 1097901, 6953015, -4491999,
--5507222, -501974, 9256728, 6615324, -2295660, -7104950, -362388, 8072391, -3205119, 16769700,
-3665755, 2502355, -8575976, 7283191, 451508, -1859184, -4352413, 426276, -2425583, 445603,
-10386842, 4727686, 3792993, 1978906, 1214939, 170188, -658741, 959388, 2103460, 3741990,
-595927, 673773, 1393717, -2841658, 79457, 1232119, -621697, 3258807, -2291902, -64425,
--1112933, 1283658, 5529234, 1887101, -1702955, -408022, 1332514, 471373, 1859721, -351650,
--2356863, 2203318, 1990181, -1854889, -483721, 4867809, 1681480, 8798777, 4672388, -13883482,
--1445793, -7026030, 13937706, -5244692, 6491306, 1231582, 8724152, 3431679, 1285269, -732292,
-3538516, -4003447, -5934571, -16429324, -12155294, 3998615, 10798622, 14486925, -5346161, -7103339,
--6242735, 3218004, -3425237, -758599, -594316, 1934346, 2201708, 9664750, -5166846, 889595,
-2379949, 4709432, -4689031, -3497714, -7733626, -5259188, -5392869, -9221832, -23351200, -293668,
--3131568, -10055592, 2249489, -1154809, -12665322, 4231617, -10740103, 2731599, -1305670, -902480,
-5447629, 7035157, -202937, -10494216, 3084324, -6595459, -7252053, 10059350, 9106941, 10132902,
--3310346, 1624035, 1351841, -5202279, 808528, -2510409, 15909096, -2647847, -1631551, -1596654,
--107911, -9730785, -12016245, 2838974, -870805, -913754, 2725694, 17285632, -2128156, -8128226,
--3409667, 9065065, -1312113, -2967823, -2601677, -205085, -7357279, 1763621, -1400696, 1358820,
--3707631, 144418, -4667019, -416075, -278636, 1875827, -1945620, -984084, -2841658, 3847754,
-268972, -2860985, 657667, 1258962, -3011846, 753767, 1225676, 4707821, -954020, 1069447,
-3381750, 2044404, -1697586, 1979443, -3564286, -5905580, 753767, 530965, -2182380, -5508833,
--1081258, -1383516, 4900558, 1766305, 3304977, -595390, 4115653, 4501126, -15300284, 5615133,
-1836099, 16104517, -10882910, -6174016, -3633542, 8587787, -8251169, -7925826, 7107634, 4779225,
--8346732, -8412767, -8243116, -18403934, 12037183, 11305965, 11983496, -5194763, 3769371, 11900281,
--17304960, 4295, 11312407, 10495826, 4742181, -45634, -5559299, 1138166, -2692408, -14964740,
-1867237, 4079145, 2166811, 9898289, -8765491, 926102, -16358457, -2087354, 3200825, -8987219,
-3442953, 2742874, 7277822, 8916889, 12396349, -2553895, -4904853, -15009300, -10731513, 4614406,
-22005264, -6848326, -943819, -10166188, -5407364, -8067023, 4719632, 4871030, -1721745, 711891,
--16152298, -2135673, 10886131, -8720394, -7580081, 6467147, -2938831, 9467182, 2314987, -6966974,
-1093606, -10522133, -3060164, -2782065, 20258286, -2034741, -5971079, 4440460, 4110284, -1785096,
--3482682, -1038845, -2806224, -3773666, -3544422, -2688650, 1392643, 1575179, 3238405, -845572,
--84289, -1956358, 1948305, 513249, -5239860, 1393717, -80531, -563178, 1847910, -115427,
--2877628, -2811593, -6762426, 2244657, -2152852, 1988570, 2534568, -3161633, 1410360, 921271,
--709743, 2555506, -25233, 7296076, 987843, -1318555, 138513, -2114198, -417149, 1276142,
-170725, -629213, 557809, -2843268, 2245194, -9569724, 21889838, -10900090, -5649493, -513249,
--802622, -15664819, 927176, -11553462, 8222178, -21650930, -3221762, -6967511, 7290170, -7490423,
--7546258, -18325552, 12228309, -7570954, 4980552, -5936182, 3603478, 9663140, -7139310, -12031814,
--4098473, 8137353, 16927002, 5408438, 7043747, 788663, -17198660, -9222369, -9306120, -4799626,
-2919504, 15473157, 6616397, 8990977, 8404177, -2424509, -3690988, -5271536, -14388677, 727997,
--10063645, 15447924, -7161321, 10624675, 2211908, -5634997, 3504693, -3767760, -4927401, -8490077,
-12658342, 3286724, 21437256, 4661114, -23225572, -5822365, 7349763, 5973763, 3314104, -1358820,
-1980517, 24178518, 12045236, -4146791, 2534568, -6575595, 17485348, -724239, -762894, 6782827,
--15541339, -6728067, -5334887, -16596291, -19673634, 3835406, 6915434, -1886028, -9737228, -2580739,
--3156264, -7638600, 34360, -1602560, -6090264, 5916318, 9074729, -2068027, -1440962, -1440425,
--3692598, 2570001, 519154, -1102733, -1949915, -1655173, -1184874, 2958696, -1872606, -4377646,
--1161789, -272730, 1272384, 796716, -2750927, 6409702, -2243047, 3866544, -885300, 3216931,
-1609539, -1116692, -4531191, -4299799, 1325534, -1222992, -6789270, -2521146, -1771137, 2373506,
-483184, -574452, 1722282, 2976412, 891743, -1902671, -2887292, -13333726, 8060580, 17949742,
--1707786, -722628, -362925, 16687022, 5202816, 4039954, 2891050, 2019172, 2876554, -6501507,
-1266479, -20558398, 3001109, -9879499, 8652212, 21131776, -2699387, 1588601, -16593069, 22274774,
-10814191, 9495099, -2732673, -12164958, 1504312, -4114579, 11307575, 8142185, -10071698, 595390,
-5978595, 4261682, -7791608, -6886443, 32583232, -7493644, -5650030, 6920803, -8265128, -5986648,
-10375030, 10200010, 422517, 3961571, 3707094, -12541305, -6249715, -477815, 4311074, 11092290,
-2743410, 2666101, -14219026, -1283122, 4213363, -19366008, 4271882, -5341866, -1951526, -3520800,
-5724118, -5716065, -10538239, -11210938, -17837000, 2319819, -7226283, -3419868, 11433740, -3808562,
-3711926, -20064476, -35433, 18608482, 4337380, -9295920, -5571647, 11331197, 5772973, -12283606,
-6930467, -8876087, -6897718, -2875481, -1734093, 4275103, -1200443, 796716, -1917166, -2394444,
-1486059, 2313377, -3148748, 2741800, 8179229, 1337882, -1127429, 3572339, 5164698, -2134062,
-3510599, -2238215, -3189550, 959925, 2330557, 6867653, 1783485, -599685, 2463701, -971200,
-3498788, -1917703, 3214783, -2393371, 1059783, 2905546, 813896, -4640712, -2694018, 8698919,
--3674345, -6840273, 3391414, 1870995, 2524904, -1753957, 11043972, 3293166, -10327786, -10369125,
-24533926, -14740328, 3798362, -9434969, 28929826, 6121402, 5319854, -9293235, -10993506, 1022202,
-8238284, -8913668, -14198088, -8448738, -20629264, -8055211, -12127914, -52613, -27713814, 1908039,
-14954539, 9201967, 12215961, -8581882, 3157875, 13276818, -1580011, 9620190, 3549254, 15009300,
--7581154, 12513924, 9934259, 7105487, 16256451, -9148817, 9668508, -5008469, -5832029, -3866544,
-3564823, -31614718, -10141492, -19657528, 22695680, -14343580, -16210280, -3476776, 12790949, 344134,
--5818070, 17867600, -6429029, -5681168, -13015362, -31967442, 1513976, 2961380, 13282186, -13407277,
-2684, -8176007, -10816338, 17086454, -3487514, 8558796, -18622442, -18096308, -11322608, 14246407,
--1504312, -9024263, -9614284, -380105, -15800648, -10759967, 1495722, -6607807, -11793980, 17344688,
--23834922, -22669912, 5893232, 105227, 9980967, 1160715, -1131724, -7302518, -6497212, 1078574,
--11289858, -4518306, 9549323, 1293322, 1605781, -5541045, 5638755, 2131378, -6183143, 2906082,
--4593468, -904091, -4709432, 4096862, -6253473, -1525250, 4197794, 8283918, 886374, 377957,
--9015673, -2674691, -650688, 1350767, -1361505, 7691750, -354872, -2873333, 4854387, -5640903,
--5265630, 3280281, 6949794, -1901597, -4986994, -6662568, 5343476, 4397510, 8628052, -11963631,
--165893, 15846819, 2007360, -4900021, 8134131, -13025025, 25678536, 16091095, -242129, -11865921,
--13416941, 5478231, -3447785, -1287953, -795643, 23420994, -11631845, 353798, -8121247, 8569533,
--14696304, -13468481, -26441430, 6026913, -10802380, -14892799, -1902134, -25133612, -12404402, 6994891,
-5247377, -3514894, 12949863, 1140314, 15716896, -7056632, -21885542, -3387119, -16059420, -3118683,
--4890357, -20968568, 2637647, 16950626, -48029008, 5999533, 24696, 11818676, -2473901, -14989436,
--28538448, 11272142, -3585761, 10531260, 6252936, -3531537, 16506633, -20711942, 28855200, -7323456,
-16056735, 33717104, 13423920, 23974508, 9358197, 6249178, -3372086, 12495670, -4760435, -13191992,
--17796196, -11485279, -687195, 9912248, -1723356, -7783018, -11080479, -9882720, 13284334, -6007049,
--4912369, 11946988, 2094333, 8988293, -1023276, -1352378, -3733400, 2084670, 4452271, -6172405,
--1082332, -15044197, -10927471, 7342784, -3742527, -411780, -2273648, -314606, -5812702, -9011378,
-6429029, -5433134, 8379481, -8665633, -4058744, -981937, -6140730, -3067144, 4180077, 1751273,
-10178536, -2594697, -6204081, 3859028, -12330314, 192200, 1414655, -1913945, 718333, -1372242,
-5951214, 8683350, 1400159, -313533, -4274566, -7268159, -3601330, 418759, 14148696, 7131257,
--7256347, 40425304, 32943472, 29687350, -6747931, 89121, -25183004, 18844170, 23369990, 7960722,
-22574884, 9023726, 7681549, 7935489, -3976066, 3136400, 6253473, -5738613, -24264418, -14722611,
--888521, -16112033, -18786724, -44126492, 9707163, 7644505, 11514807, -8436390, -3011309, -5857799,
-318901, -13788993, -389231, -10502806, 12226698, 10188199, -6299644, -8542153, -23272280, 39223252,
--12239046, 7758859, -13422, 2542621, 6259915, -16189342, 19552302, -9841918, 6684043, 4401805,
--14609331, -15036681, -2787971, -1297080, 9082245, 41401876, -3457986, 6175626, 1371705, 12503187,
-8882529, 9321153, -7311645, -2157147, 3578245, -19975356, 4065187, -17090212, -27332098, 9549860,
-867583, 2193118, -20010790, -48067128, 20797306, 21751324, 14969572, -27247272, 25967910, 27624156,
-10208064, 8036958, 243203, -7917236, -18166638, 13631152, -12801687, 863288, 223875, -7174743,
-5485210, -13009456, -1366337, -2512019, 6452652, -3577171, -6013491, -8065412, 12421045, -6769942,
--2967286, 3286187, -11174968, 6257231, 5073967, -3815542, -3918084, 1137093, -10382547, 9650792,
--3491272, -2536178, -878321, 872415, 7063074, -5512591, -13127031, 3968013, -7323456, -2201171,
--7505456, -6575058, 1012002, -5302674, -2474975, -4933844, 16830904, -7394860, -13702556, 2233920,
--4927401, -23708756, -47311212, 39245800, 6303938, 6959995, -15766288, -11353209, -50333260, 13904957,
-35982700, 11028939, -31880468, -15953656, 5170604, -12414066, -7881802, 14744086, -16598438, 9262097,
-8264054, 6834904, -18476950, 6594923, 5713380, -8673686, -17292076, -10012643, -6659347, -4479114,
--16495359, -14228153, -7827578, -17009144, 13406740, -6352794, -21950504, -7583839, 13460428, -2789045,
--15221901, -8382166, -7770133, -57445, -12066174, -7279970, -19992536, -18996640, 8085813, -6760279,
-24937116, 16389058, 1601486, 14881525, -21805012, 14095546, -20697984, 17390860, -2982855, 8895951,
--9233106, 30904438, -7708930, 17307108, -4431333, 25421374, 10234907, 6186364, -26240102, 28460600,
-22778360, 9921911, 10583336, -20463372, -3908957, 8378945, 13981729, -3624416, 3374234, -22602802,
-14503568, 24800752, -547071, -17748416, -1036698, -11734388, -10053982, 4862977, -59056, -4896263,
-5729487, -12948790, -3048890, 507880, 3688303, -8923868, -12266427, 4731444, -5976447, -11565273,
--20772610, -1511292, 6445672, -1713692, -10462003, -12592307, -3875134, 8048769, -8677445, 3354370,
-4646618, 1338419, 3415573, -1038845, -5583458, -4676146, -1569274, 5834713, 1941862, -2205466,
--7798587, 10728828, -6905771, -5983963, -5041755, 2202781, 12422119, -8340827, 12232067, 10393821,
--4118337, 3838090, 6514392, -32829656, 28046674, -3228205, 13476534, -18068928, -5818070, -4432943,
--4152160, -4145180, 16408923, 574989, -13533979, 11053098, 1952063, 8010651, 13916231, 14088566,
-799938, -11951283, 49597744, -13458280, 38157564, 437013, 2347737, -21415780, -9365176, 3745748,
-18513456, 9297530, -5922223, 15288473, 3160022, -20649130, 3567507, 3258807, 21537650, -574989,
-12929999, -15590194, 96100, 14748918, 7313793, 12386149, 32314260, 26058640, -3930432, 13642427,
--1918240, 25606058, -20231980, 17206176, 6979322, -624918, 15304579, -7708393, 39567924, -6499896,
-19172198, -14031658, -12659953, 979789, 42146516, 14024679, -38912940, 34936336, -581431, 12472048,
--29299730, 10350871, 3517041, -58573152, 24864102, 45370960, 17424682, -18463528, -11716134, 9481140,
-44580688, 25617332, 34020436, -11945915, -16279537, -14637785, 7300371, 9583146, -1336809, -16569447,
--7346542, 21420076, 3971771, 5182415, -7035694, 10060961, -2248952, 4790499, -4289062, -5302137,
--6531035, 13103408, 21578990, 21049098, 4925254, 11370926, 19857782, 13379360, 14078366, 19195820,
-10931766, 18353468, 13959717, 5349382, -26927298, -4909685, -12424267, 8023536, 16176994, -17756468,
--6150393, 21809844, 12064026, 2841121, -4665945, 18527416, -13861470, 3689377, 19085760, 15127412,
-8558259, 10288594, 11790759, 9917616, 11691975, 7698729, -8935143, -4364761, -15902653, 20333986,
-3195456, 13576928, -10773925, 27122718, -9361955, 12703976, 4294968, 5734318, 4068408, 2486249,
--28151900, -16248935, 287226, 2678449, 19429358, 16071231, -22943178, 2469069, -12589623, -11423002,
-5798743, 1530619, -7787313, 9643275, 37418828, -24625732, -1858110, 57242252, -34665216, 4187593,
-20517058, -10379325, -8296266, 11927124, 18963892, -20448876, 10239739, -37165424, -3885872, 55640228,
-2567854, 15817291, -5739687, 30438970, 30665530, -8360154, -375273, -14353244, 3677566, -10598369,
--26933204, -17365090, -32163400, -23809152, 36144296, 14508400, 10817412, 47889960, -33740728, -20047834,
-6291054, 17951352, -13131326, 8735427, -14075682, 26503706, 16112570, 9170292, 19696184, 69403448,
--16193100, -5451387, -19128174, -22376780, -1153736, 29152090, -22575958, -3010772, 21099026, 22258132,
-26743150, 15352361, -17524540, 4524211, -9533754, -2194728, 15757698, 4918812, -946503, 11460046,
--20647518, 1332514, 774168, 5618354, -4311074, -5493800, 13222057, -4812511, -2735894, 14055817,
-18618684, 14423574, 6840809, 6060736, 12450573, 3466576, 1393180, 8200703, 1307818, -4860293,
-4126390, -231928, -787053, -23785528, 6232535, 15133854, 25426744, -5943698, -6563784, -8369818,
-13197361, 14173929, -31609886, 3661997, -13788993, -2244121, 2310693, 1867237, 5508833, -8137890,
--16961362, 13558675, -4235375, 31180926, -28660854, 7038378, -2245194, -9283572, -8478802, -4261682,
-9414031, 5774584, 6332393, -1646046, 17335562, 2938831, -23131620, -18190260, -2689187, -10736344,
--13391171, 2892124, 14296336, -2149094, -3496104, -21130702, 10151155, -3473018, 21310018, -7414724,
--41590852, 4975720, -12479564, -6320581, -148713, -33645164, -17870286, -28907278, 303869, -2164664,
--8311299, -38237020, -15750182, -3393024, 19733764, 22016002, 1543504, 1641751, 10516764, 2405182,
--26469346, 22968948, 31077310, -13619341, 4491999, -13641353, 5408975, -124554, 23609972, -26794690,
--19691352, -61269320, -21992916, 15446313, 24427090, 17573396, 15673409, -15080704, -5281199, 12244415,
-11454678, 26616986, 12328704, 11393474, 20183662, 5213554, -22837414, -24104430, -33050848, 13733158,
--21235928, 1897302, -18662706, -28230820, -43188044, 6155225, -12736189, -13331042, 3501472, 4132832,
--1953673, -6085969, 559420, 14229764, 9470940, 3728569, -5804112, 10333154, 22708566, -4967667,
--12955232, -10207527, 10952703, -5874979, -5542119, -20426864, -20270098, -15154792, -34383896, -1716913,
--284005, -13442711, 5645198, 9379135, 6319508, 17144972, 4292283, 20211042, 912144, 5727339,
-21648782, -10515154, -1013612, 3539053, -597537, -15057082, -987843, -2687039, 26148298, -1423245,
--11465952, 8616778, 2874944, 8086887, 16579648, 5830955, -49035104, 20628728, -14633490, 1868311,
-34892316, 29226716, -11558294, -4854924, 17967996, -11154030, -11784317, -9771051, 2408403, -3332895,
--1327682, 4211216, -3858491, 17234630, 40954660, -17258252, -32133334, 32104344, -24906516, -6670084,
-192737, 40056476, 3042448, -12059731, 11718281, 11201812, -41925860, -12257837, 6834367, -1577864,
--19958176, -1449552, 7779797, -61438972, -28543816, 30506078, -30431990, -33718176, -20955146, 24925842,
--32408750, -50516868, 50806780, -14940044, -31976032, -1803886, 19771346, -19446538, -34319472, -800475,
-15450071, -1715303, -44120052, 10403485, -766652, -19646792, 46141372, 43639016, -3425773, -17670032,
--34454764, 53194244, 7274064, 9467719, 18226768, -12975633, -51650204, 23306640, 39278012, 31627602,
--19633370, 11483669, 42862164, 25068650, -29845190, -6446746, -23435490, 10602664, 6339372, 27172648,
-26594974, -31977106, -1213865, -3224447, 4716411, -12338904, 12792560, -8028368, 7369627, 6904160,
-5368172, -8884677, 6940131, -13353053, 22276922, -11157788, -5796059, 14421963, 12328704, -12707198,
-1983738, -5810017, -15137075, -7821673, 5987185, 12129525, 7199976, -11927661, 6781754, -7562901,
--18801220, 1214939, 3301219, -2701535, -1584306, 13077639, 765041, 1741072, 5968394, -1384590,
-3198677, -19746650, 15066745, -50758460, 5582921, 47869020, 26055956, 6707129, -625992, -8649527,
-12422119, -16860968, 39728448, -3016678, 10570988, 14702747, -13710072, 555125, -1760400, -15123654,
--96637, 5771363, 22261352, -51540, -13881334, 6908992, 17900350, -2938295, 28395102, -22056804,
-4565014, 6446746, 7370701, 24697136, -13562433, 2212982, -989453, -32135482, 4508642, -10477036,
--17647484, 7567733, -6760279, 25336012, 18147848, -13216688, -28933584, 13758928, 2710124, 5831492,
-16034187, 35152160, -6075768, 7328288, -14350559, 20200842, 14317273, 15118285, -16834662, 23132156,
--8027831, -10011569, -20298552, -1743757, -8085813, 29940754, -22377316, 1680406, 7279970, -6740415,
--13702019, 41787348, -1930588, 9979357, -3935801, 5108864, -3574487, 11780558, -1562294, -4995584,
--3462281, -4384088, 13840532, 9786620, 13022341, 7401840, 4107063, -8892193, 9605694, 870268,
-5303211, 4722854, 11704323, -1550483, 365609, 2008434, 3714073, 4006668, 8707509, -7131257,
-5474473, 4938676, 4259534, 3738769, 2937221, 8693551, 3264712, -11121818, 6773701, 7933342,
-8121783, 3686693, 8727910, 2549600, -594853, 5101348, 2811056, 6453189, -558346, -5464272,
-1341104, 8888435, -4483409, 3778498, 410706, 9669045, 8522289, 3463891, 5975374, 9006010,
-4098473, 16758962, -44322452, -124505736, -118375744, 51528872, 5108327, 113922400, 241282672, 52872120,
-97284768, 51912732, -178860160, -80035640, -120267672, -176675088, -11775190, 20932596, -83414168, 74243880,
-126297808, 77334648, 217448832, 133450536, 1306207, -20072530, -76833208, -191960880, -155448832, -66990216,
--147242752, -43445204, 84325776, 25062208, 21416318, 199131328, 76914272, 48517024, 184385632, 8739185,
--9211631, 84969488, -42204496, -151926944, -73450920, -151816352, -221653600, -24566676, -100628936, -82245400,
-71108552, 137661216, 63807108, 243256752, 193936032, 112380504, 147317920, 49868864, -72028216, -111203144,
--148099056, -237423648, -190202096, -127729640, -108671264, -33877092, 82819320, 125566056, 140120624, 188135680,
-158572336, 74216496, 27159226, 40767828, -63394256, -97437240, -69020664, -145565568, -109362216, -18890340,
--65227668, 25909928, 106700944, 38029788, 54522464, 77349680, 8389145, 4588636, -18709952, -72961296,
--38030860, 562641, -28956132, 22456774, 31050466, -12600897, 39333848, 33607584, -52625696, 40310416,
-47283296, -33292438, 76962592, 11638825, -75373992, 52791592, -41255844, -147731312, -24206972, -89821728,
--108755016, 67185096, 8735963, 17026324, 142314816, 90204512, 100758856, 161437088, 119086024, 39277476,
-17263084, -112615656, -204296560, -203641040, -203811232, -193120528, -117455008, 5947456, 111295488, 162829184,
-223603520, 207243984, 196269264, 154291872, 26627724, -71069896, -77388328, -163993664, -202383696, -122074784,
--108815144, -60921964, 11917461, 29442000, 36089536, 69954816, 62122944, 57802744, 82423640, 67642512,
-43942348, 37842420, 10064719, -22348862, -38424924, -44301512, -45687716, -26032334, -13195750, -9221832,
--8396661, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--5057861,
--1954210, 1161789, -951872, -2919504, -227096, 6715182, -3470871, 771484, -1473711, -89121,
--2590402, 4829691, -2529199, -2690797, -3041911, 5757941, -3448322, -911070, -1639067, 1611150,
-2646237, 3365107, -4782446, -23085, 4543002, 2006824, 762357, -263067, -588411, 2049236,
-4631586, 1111323, -5990406, -3089692, -3231963, 5203353, -552977, 3968013, -2519535, 1833951,
-5197984, -2552284, -3948686, 1386738, -1489280, -272730, -3535295, -1429150, -2646774, 989990,
--4786741, -1582159, -1239098, -161061, 6432788, -2114198, -988916, -238371, -1709934, -676457,
--628139, 3898220, 2002529, 2388002, -3374771, 2455648, 2567854, -2292439, 1051193, 1527398,
--1745904, -2350421, 2725157, -4117263, 2887292, 1751273, 751082, -3815542, -1338956, 1417876,
--354872, -794569, -1045825, -91268, -2062658, -2376728, -382789, -392453, 267899, -893890,
-3221, 1407139, -70330, 523986, 183610, 278099, -2147, -275415, -1045825, -619549,
-687732, -365609, 18254, -140660, -3170223, 3351148, 390842, -1446867, -2164127, -591095,
--1102196, 3758, -2681670, -2057826, 1512365, -424128, -1034550, -4678830, -705985, 4351876,
--2940979, -733903, 3270618, -1890859, -3519189, -2678449, 2226941, 19327, -352187, -674847,
--3376381, 1133335, -1509681, -790274, 3794604, -2093797, -5169530, -1537061, 273804, 1546188,
-1342177, 443455, -3931506, -904091, -4786741, -4336843, -1182727, 4545149, -801011, -8981313,
--419296, 3026341, 2611340, -1853278, 1751273, 1933272, 164283, 2673080, -4855461, -3423626,
--471910, 1406065, 204011, 1002875, -539018, 1268089, 1130650, 1870995, -300648, 1154273,
-1077500, -901406, 1836635, -457951, -4738423, -3864397, -2525978, -1992328, -2139968, 646929,
--1095754, 3658239, 3001109, -557272, -1480153, -1268626, -698469, 1100585, 1704028, 220117,
--1031329, 186831, 219580, -997506, 1276679, 9664, -321586, -498216, -131533, -741419,
-497679, -144955, 76236, -858457, 491237, -540092, -16643, 8053, 333397, -141734,
--432181, -164283, -831613, -313533, 60130, -396748, 47245, -672162, 4108673, 2295123,
-6155225, 405338, -1218697, -764504, 4352413, -1194001, 2331094, -3998078, -432181, -113280,
-2280628, 1585917, 3901978, 2746095, -2021319, -3946538, -3228205, 2192044, -1382980, 2997350,
-1877438, 392990, -207769, 2490544, 1745904, -1825898, 2044941, -4248797, -605054, -3939022,
--3381750, -4738960, 1363115, 2688650, -518617, 3743601, -2935610, 3467649, -7058779, 2698313,
-1180579, 5198521, 1506997, 1862405, 2789581, -133681, -1815697, 1937567, 4524748, 1538672,
-2181307, -741419, -100395, -6452652, -449361, 1018444, 1219771, -952946, 3417183, 6453189,
--2181844, -4655745, 3074660, 678605, -3315178, -59593, -1548873, -3323768, 386010, 4641786,
-1140851, 1684701, 760746, -501974, 1744294, 1086090, -114890, 1523640, 72478, -427349,
--367220, -882616, 876710, -1293859, -185220, 2154463, -493921, -54224, 799938, -512712,
-1446330, -2060511, -951872, 28991, -847719, -900333, 192200, -506806, 679679, 1578937,
--622770, 891206, 211527, 91805, -5906, 219043, -1804423, -459025, -430570, 347892,
-1433445, 863288, 2265059, 3387119, 3258270, -3156264, 4973036, -1770063, -3306051, -4885526,
-1132261, -6461242, -405338, 670552, 1785633, -4121558, 2661269, -67109, 591632, 1724429,
-1058710, 1459215, -5562520, -374199, -1260036, -3629247, 2119566, 1066763, 832150, 3112241,
-10954314, -808528, 562104, 1561221, 2706366, 1071058, -8993662, 1867237, -1494649, -1033477,
-4924717, 143881, 2450279, 3551938, -4437238, -2477123, -1280437, -4305705, -9229885, 434865,
--3479461, -557272, -804770, -191126, -2139968, -4518306, 1282585, -4323422, -1372242, 973347,
--4818417, 4987531, 1722282, 1417339, -2024003, -370441, -788127, 991064, -1552631, 2560338,
--3951907, 1312649, 6011344, 4977867, -1738925, 2531346, -2365990, 1072668, -4480725, -148713,
-2790655, 3216931, 2880849, -497142, 5362267, 489089, 2681670, 2392297, -91268, 1114544,
-587337, 199716, -903017, 537945, 838592, -323733, 98784, -605590, -1468342, -230854,
-1012002, -789200, 2166811, -599148, -1117228, -958315, 764504, -541166, 952409, -181999,
--902480, 541166, -244813, 1115618, 687732, 654983, 456877, -1937030, -448287, 263067,
-839666, 29528, 171262, -519154, 7312719, -9306120, 379568, -5735929, 2913599, 4210142,
-5136244, -813896, -4907537, 110059, 5059472, 1067299, 955630, -3830574, -526134, -6696391,
-8864812, -486405, -6852084, 7387881, 1838783, 2179159, -497679, -2685428, -888521, -3541738,
--3494493, 2720862, 3866544, -805843, 3647501, -3033858, -1902134, -14496, 5096516, 4825933,
--1373853, -2742337, 3964255, 2525978, 357556, 3356517, 786516, -3973382, 4150549, 2586644,
--328565, -1389422, 1134408, -4281546, 11356430, -601832, -422517, 8461086, -786516, -5196911,
--2828236, -624381, 2049236, -5400385, 3671123, 1101659, 111669, -4903779, -4138201, -8657580,
--779537, 4022237, 1991791, 4880694, -2726767, -1930051, 10227391, -2855617, 1697049, -1432909,
--4259534, 318364, 1858647, -4438849, -7871602, 318901, -4859756, -4896263, -2404645, 2543158,
-213138, -746251, -3019362, -1036698, 329639, -1131187, -850940, 796716, 2783139, 387084,
-689342, -1987496, -1025960, -212601, -33823, -2800856, -2062658, -1780801, -119722, 670015,
-258772, -916976, 53687, -184684, -296890, -1472100, -551903, -218506, -574452, -773631,
--9816685, -150324, -4153234, -4692252, 1365800, -5627481, 113280, 3776887, 2036351, 7960185,
--13394929, 8528731, -1467268, 3704409, -2603824, -1956895, -7062000, 6203544, 5465346, 1341104,
--6283537, -388695, -3655017, -476205, 6445136, 4475356, 947040, 6142340, -137439, 272730,
-557809, -261456, -4379793, 9205726, -977642, 40802, 10699300, -6981470, 2520609, -3353833,
--749472, 3351685, -1518271, -5516886, 10296647, 8020852, -340913, 2573222, 4287451, 11131481,
--1497333, -2059974, -6113886, 1017907, 2075006, -6462852, -6892886, -6065568, 7172596, 121870,
--3008088, 4916127, 3482682, 22012, -1759326, 1573032, -3940633, -1036698, -4283693, -993748,
-3971234, -7878581, 1822140, -1683627, -5463736, 3291556, 5196911, 2198487, 5413270, 4687420,
--4023311, -6423661, -3216394, 2788508, -2543158, -4942971, 3170760, 5349382, -3920768, 646393,
-1132798, 581968, -3661997, 2110440, -1636383, -1303523, -2353105, -1240709, -1843615, -195421,
--213138, 695248, 1122060, -936840, -807991, -367757, -1464047, -858457, -399432, -588947,
-1150514, 1443109, 367757, 2128156, -1977833, 1437203, -1716376, -781147, 1472637, 7350300,
-7799124, 1292785, -6720550, -924492, -6382859, 2662343, 16794396, 4145717, 11637751, 4276177,
-149250, -10854456, -2664490, 1788854, 10512469, -4647155, -2311766, -4047470, 1011465, 8449274,
--6180458, 4137127, 7315403, 1626182, 2695092, -4783520, 9039296, -1934883, 11771432, -110059,
--3593277, -11041824, 1358283, 41339, 13175349, -3973919, -1068373, 8352638, 67109, 1106491,
--2709588, -8634495, 931471, 4973572, -6194954, -4889284, 1297617, -10355166, 5689221, 5748814,
--1740536, -673236, 2927557, 5863167, -490700, -3608310, -130997, 8609799, -1093606, -1323924,
--3250217, 11146514, 11292543, 763430, -2041183, 1758789, -476205, 2942053, 5222144, -431644,
-7540352, -2935610, -4180614, -6099928, 2067490, -500901, -9272834, -6693170, -3847217, 7294465,
--2130304, -3417183, -937377, 1074, -3143379, -4754529, -1665911, -1395328, -2834679, 462783,
--1777043, -1564979, 1499481, -3022046, -3111167, 976568, 2498597, -1507534, -2003602, -1520418,
--2613488, -1257352, 815507, -907312, 449898, 1374926, -459025, -778463, -2305324, 1421097,
-200253, -7406134, 7508677, 5712844, 442382, -4913443, -5517423, -2401424, -10961293, 12730820,
-9576703, -2052458, 3549791, 1148904, -2091649, 9652939, -774168, -4489315, 14289893, -15483894,
-3999688, 6670084, -53150, -6332930, 6810745, 1051730, 9847823, -3811247, -1058173, 2623688,
-3934727, 663572, -1345935, 14325327, 6180995, -6551973, -9891310, 6879464, -9895605, -2874944,
--11392938, -1479616, 17057462, 6975027, 8246337, 56371, -9049496, -1510218, -4421669, -1970316,
-12757127, -1991791, -14058502, -1139240, 2759517, -8948564, -1483911, 5763846, 4539244, -6016713,
--3140695, 6156299, 8153996, -2374043, 8494372, 147103, 2136209, 3174518, 720481, 3332895,
-5095979, 4926865, 4799089, -2529199, -10199474, -11272679, 2810519, -2268817, 8057896, -1447404,
-9563282, 3231426, 4449049, -5098126, -4545149, 3403762, -176094, 693100, 893353, 419833,
--4571993, -2100239, -707596, -3803194, -111669, -3267933, 587874, -1847910, 1409286, -464930,
-2441152, -5369, 1336272, 426276, -1227287, -1074279, -1470489, 3018825, 347892, -898185,
-960999, 1559073, 1307281, 291521, -2236604, -6256157, -3543885, 22012, -3025268, -76773,
-6189048, -877784, 5767604, -11780022, 4110821, 3243237, 1635846, -7742753, -6492380, -8242042,
-6278169, 3228205, -5915244, -5901822, 7913477, 2518998, -725850, -4980552, -8179765, -3384971,
-3204046, -5264556, 529355, -9800042, -2809982, 1051193, 3237869, 6263673, -1116692, 3965329,
-5439039, -5730560, -13600014, 9205189, 331249, -2238752, 8752606, -1464047, 255014, -6062347,
-7679402, -5070209, -6412923, -2569464, 6277632, 9574556, 8030515, 2423435, 1538672, -17186848,
-7662759, -1145146, 3164854, -6010807, -1216550, -6714108, -2394981, -1730872, -8876624, -4532801,
--3697430, -4917201, 8995272, -3040300, 11729556, -1526324, -766652, 7309498, 8365523, 14154602,
-9684078, -310311, -4726075, -655519, -78383, -6956774, 1629403, -4532264, -7605850, 14470282,
--9360344, -9951976, -1524177, 5368172, 709743, 1646046, 633508, 6059662, -175020, 1628330,
-2102923, -2427194, 286689, 3710315, -2165737, 1501091, 2645163, 2163053, 4648765, 1008780,
-20401, 2543158, 410706, -918049, 1697049, 2635499, 1015223, -37044, 780610, 398895,
-5405217, 412317, 4394289, 2921115, 633508, 4625143, 5073430, 490163, -171262, 669478,
-683437, 603980, -461172, -624918, 1271847, -3187403, -4567698, -18160732, 4028143, -12496207,
--7475928, 11832635, 9206262, -20737176, -19010598, 646929, 8124468, -4820564, 5017059, -6843494,
--761283, -12038793, -3139084, -10868415, -772020, -2974265, 354335, 4176856, 3429532, 6767795,
--834297, -5772436, 5021354, -6884296, -2754148, 2207613, 440771, 3506841, 7187628, -1162862,
-910533, 1650341, -2910914, -765041, -10518912, -12465606, -12062416, 9127, -12134893, 4064113,
-1598265, -4800163, -5645198, -2432562, -2020782, -1047972, -7227356, -11418171, -651224, 18113488,
-9980430, -2562485, -10831908, -11188390, 12498355, -11750494, -3883724, -2099702, -7847979, -5957657,
--7999914, -9361418, -13019656, -17609902, -2543158, -2850785, -2518462, 5881421, 5564667, 1445257,
-4873714, -4011500, -4903779, 16252156, 6868727, -4362613, -12016782, 3699041, -7121056, -8446590,
--55298, 13623099, -2739652, -144418, 9360881, -1090385, -6288906, 231928, 2206540, -228707,
--2594160, -2508798, -102542, 2268280, 1092532, 1500554, 913217, 4625143, -1404991, 2466385,
--6772090, 3071439, 1597728, -1255741, 1395864, -1462436, 2444910, -1267552, -1996623, -1179505,
-2217814, 1897302, 223875, 2556043, -3856881, 3778498, -1939715, -2362769, 1159104, -14951855,
-1668058, 7480223, 8129300, 7534983, 3158949, 14899778, -5942088, -10921565, -2890513, 1871532,
--2248952, 4708895, 9898289, 20030116, 12580496, 7314866, 9305047, -7798587, -14871324, -5138392,
--11153493, 12539157, 2799782, -2717104, -9059160, 14235132, 12224551, -4612258, -969052, -127238,
--7470022, -6247030, -11207180, 3242164, 3776350, 6275484, -10601053, 893890, 2938831, -4865661,
--10303627, 230854, 5882495, 7792145, 1260573, -20108500, -7230578, -9959492, 4031364, 11869142,
--80531, -11318849, 2605435, -10929081, 5939403, -2713883, 887448, -7776039, 16085726, 12681965,
--4077535, -3818763, -9404368, -710280, 12842489, 2890513, 15800111, 15229954, 12681965, 7425462,
-2539400, -10295573, -5774047, -13674102, 15622407, 15706695, -1336272, -12084964, 7665443, 18259516,
--293668, 2276333, -4489852, -477278, -12087112, 1869921, -9545028, 6465000, 2229625, 9113384,
-9055402, 4910758, 704912, 779000, 5581310, 2032593, -1367947, -3736085, -1263257, -5683853,
-940061, 4367445, -3771518, -2122788, -4308926, 3077881, -1005559, 6600291, -6327024, 1674500,
--256624, 6286222, -3091840, 2073932, 3784403, 684510, -244813, 223338, 1080184, -2901251,
--1199370, 3767223, -9881109, -2465311, 7269769, 12656732, -13233868, -16072841, -13888314, 15312632,
--6336688, 10242423, -150861, 185757, 24614994, -2947958, 1810866, -10873247, -16985522, 4265977,
--2536178, 4609574, 2984466, -1331440, -9720048, 2783139, 3627637, 1738925, -9177808, 6111739,
-4417911, 17992692, -8283382, 1268626, 9810779, 10077604, 387621, 10176388, -2561411, 446140,
-9054865, 7693360, 2049773, -3912715, -14452028, -10918881, 8479339, -197569, -3308199, -2831994,
-2151242, 19448148, -1196685, -6742025, 9885404, -4728222, 9343701, 2282775, 28003724, -5464809,
--899796, -48318, 4164508, 9580998, -1864553, -3244311, 6230387, -13125420, 10721312, 19720880,
-5841693, -4119948, 11001559, -4179003, -578210, 22306450, -12873628, 4948876, 8761196, -3729642,
-18572512, 4463008, 3991098, -7117298, -10688563, 1916629, 4862977, -11460583, 11678016, 1074,
-2957085, 77846, 3409130, 10781979, -2443300, 10879152, 5160403, 3595425, 6062347, 5416491,
--3155190, 6866579, 6383395, -5576478, 2117419, 4732517, 8702141, 2075543, 2510945, 4358318,
-5097053, 7748121, 794032, 278099, -459562, 5310190, 4493073, -4856535, -73551, 3518652,
-4951024, 3900904, -2900714, 7386270, -199179, 2573222, 911070, 6104223, 3109020, 2858301,
-2923262, 4232154, 2381023, 2822331, 4878009, -13969918, -3978750, 9625559, -4614406, -7272990,
--6487011, -6656126, 1244467, 9680856, -1183264, -21363168, 59593, -16221555, 6373732, 7042136,
-182536, 3354906, -7106561, -866510, 8696772, -20455318, 5266704, -4422743, 11496554, 7982734,
-5199058, 957241, -8125005, -18453326, -933619, -16119012, 10057740, 204011, -4836670, 17115444,
-8893267, -6724845, -5342403, -3473018, -2547453, -4683662, -9129490, 1737851, 2685965, 24731496,
--780073, -17540646, 39192, 12128451, 937377, -8986145, 5776731, -13600551, 9192841, -5693516,
-6106907, -7879655, 3730716, -13909788, 36914708, 1488206, 25516938, -2371359, -6942278, 6709276,
--8179229, -7978976, 14234595, 13902809, -12058658, -31984622, 30575872, -10618770, -8339753, -3915937,
--4256313, 4139812, -2779918, 2461016, 13188234, 3246459, -10620380, -8515846, -6427419, 4022774,
--6720013, -892279, 6142340, -16566226, -1415729, 1132798, -2593624, -4815732, 1883880, -3394635,
-9088688, -3534221, 4050154, -4003447, -2945274, 272194, -4213363, 2496450, 2162516, -1698660,
-2288681, -3834332, 1901060, -981937, -294742, -1700807, 52076, -6914898, -5093831, -947577,
--2838437, -5654325, -7548942, -4204773, -1843078, -2978023, -642635, -5015448, -5906, -4451734,
--1295470, -5811628, 3140158, -3215320, -1800128, -15748571, -5591511, -4791573, -13540421, -23845658,
--5885179, 374199, -12664785, 6190122, -5419175, 10596221, -9138080, -3827890, -13020193, 31026306,
-26249230, -5898601, 5853504, 18022756, -18961206, 19216758, -7998840, -8022462, 6928319, 2528662,
-3284576, -2838437, -4181151, 531502, 6222334, 5366562, -8431558, 9648107, -9086003, -15124190,
-10965052, 9642202, -12590160, -15648176, -18080738, -2659122, -2997887, 5049271, -11809013, -14803142,
--7558606, 24748138, 8662412, 8412767, -10608569, 9539659, 13028246, -10181757, 24322936, 4503810,
--8705362, -11419781, 6509560, -9594420, -20802674, 5051419, -237834, 450972, 11370389, 10573136,
--9142375, 1720134, -26659936, -3330747, -10514617, 22044994, 1316944, 3091840, -12859132, 10416369,
--22648436, -2774549, 8860518, 2532420, -2462627, -2607582, 2745558, -1069447, 2554969, -3411278,
-636729, 1855426, 5388574, 1313723, 1717987, -1255204, 3199214, -3347390, 1029182, 10029286,
--1975685, 427886, -3216394, 4454955, 2086817, -561030, 5265630, -5564667, -5258651, 5688684,
--4796942, -1806571, -4394289, 2394981, -6427419, -2927557, -2092723, 5136781, 5181341, -8295730,
-1305670, 4202626, -2839510, -9352291, -4500052, 6880001, -4510253, -11534135, 14614163, 15399068,
-13935558, 9400073, -119722, 12763569, 11574400, 1935420, -2191507, 5143224, 34360, -13014288,
--1548873, 4940823, -10174778, 14532022, -15152108, 12133819, 13215077, -3802120, -2980707, 5601711,
-17633526, 13209709, -15935939, -3479461, -4264366, -1271847, 3984119, -7435126, -7784092, 17297980,
-434865, 24841554, -16222091, -15387794, 12508555, -8287677, 4512937, -9751186, 8352101, 9528922,
-6292664, -3893925, -14251775, 1410360, 4746476, -11857331, -21774410, -753230, 1992865, -12857521,
-23539642, -2686502, -6660421, 31261994, 29456496, 2939368, -4080756, -1099512, -6271726, 7087233,
--15428059, 14471892, 1928440, -8399882, 17501454, 2804077, 3560528, -4990752, -9478993, -23481660,
-5171141, -7999377, -3854196, 10828686, 4408247, -5156645, -15328201, -4246112, -17457432, 7464117,
-15738371, -2223719, -11855183, -8305393, -11821897, 130460, 6400575, 7639673, -1597728, -8389145,
--4348118, -4578972, 1121523, -2544231, -4005057, 3371013, -616865, -2481417, 4152697, -9483288,
-2723546, 2445447, 14666240, 1323924, -3237869, -7504919, 6473590, -7840463, -1015223, 5478768,
--10401874, 9699110, 2083596, -421981, 1996086, 6557342, -3303904, -10290742, 250182, -3061775,
--1294933, 9882183, 9427990, -25803626, -59762860, 20028506, 18977312, -6685117, 4234838, -14391899,
-25785910, 16489453, -14622216, 4163434, 3506841, 367757, -6580964, -4744865, -30822296, 13034152,
-15215459, -3518652, -9664, -1730872, 10239739, -7730941, 19542102, 5789079, -23227720, -13166759,
-29498910, 19362250, -19222664, -4525822, -6831683, -11775727, 1840930, -4705674, 4210142, 38318624,
-10451266, 40148816, 22943178, 25872882, 23590108, 46243912, -3026878, -4296578, 11071352, -3271691,
--38784628, 31447750, -13616657, 18032420, -25632902, -20395726, -38289632, 7603703, -3514894, -12861816,
-9358197, -18006650, 82141, -25722560, -25673704, 7203197, 15018964, -20876762, -5521181, -14475650,
--20080046, -22569516, -16195785, 12339978, -9774809, -28177670, 40484900, 25356414, 40819368, -5328981,
--8765491, -8124468, -14380624, -23145042, -1461900, -5089000, -17493402, -5848135, 5172751, -12408161,
--11167989, 1291175, -1813550, -5530844, -4517232, 10066866, 10748693, 337155, 2729989, 7628399,
-9584220, 1945083, -777389, -1472100, 4522064, -1915555, 1151588, -1762010, -6700686, -181999,
-6379100, -6610492, 8704288, 10959683, 4660577, 357019, 1821603, 1156957, -7277285, 601832,
-4195646, -3760781, 89121, -1719061, 1232119, -2607582, 1009854, 4076998, -5561983, -4766877,
-8859444, 3598646, -1075352, 1345399, -21578990, -56873956, 24888798, 29694330, -13180181, -5640903,
--1299228, 33602212, 1261647, 7327214, 7237020, -7679939, 6828998, 15749108, -2934000, -14794015,
-3919695, 28606092, -14877767, -9246528, 6416681, -3790309, 21468394, -5149666, 9781788, -10789495,
--12984760, -12978317, 14137959, -4022774, 12571906, 14615237, -3541201, 2079838, 277025, -11616813,
-4098473, -10521596, 12819941, 31114354, 51002736, -456340, -1261110, -21341692, 11815455, 16802986,
--312459, 18849000, 26894548, 11404212, 15374372, -23256712, -13879187, 19634980, 50960324, -9131637,
--29615946, 7763691, -9718974, -370978, 13953812, 424665, -13405667, -6336688, -6827925, -34368328,
--14245333, 388695, 5917928, 12206297, -1794223, -13118441, -7459822, 3417720, -5194763, -13176960,
-13930726, 33380486, 14562623, 18052822, 2022393, -4379793, -26831198, -5820755, 7864085, 6131066,
--5862631, 15481746, -4145717, 8730058, -18724446, 1247688, -6333466, -5294084, 369904, 5399848,
-5334350, -5188321, -10101226, 10105521, -3714073, 8327942, 922881, -1921461, 863288, 1899449,
-7759932, 393526, -1013075, -3775276, -4147865, 6658810, 2349347, 6147172, -12680891, 9097278,
-5368172, 2575370, -4475356, -1569811, 9536975, -989990, 557809, -7070053, 863288, -10919954,
--2145873, 3332358, 9558987, 4781909, 8466991, 18117782, 6019934, 9492951, 3718905, 27307402,
--8613557, -3438658, -10735271, 6322729, -6666326, 5990406, 30998390, 6101001, -32836098, -8039105,
--9575093, -28123982, 17859548, 8398272, -3245385, 3932580, 1760400, -12656195, -104690, -941672,
--12513387, -3808026, 27067420, 39711804, 18777598, -13925895, -21905944, 10280541, 18191334, 1959579,
-14558865, -10197326, -6988986, 14854144, 4743792, 125091, -33348810, -43604656, -1378148, -25542170,
--14744623, 9004399, 36444408, 7791608, 1844152, -10657961, -12557948, -18357228, -16007880, 2875481,
-11025181, -4013110, -18040474, -29242284, 11620034, 638876, -16163573, -27275190, -18329310, -30013768,
--53864260, -32679870, -4807142, -6600828, 64882460, -8076149, -2377801, 37193880, 4435628, 1946157,
-22524420, -13571023, -32723892, -38276748, -5855114, -18423262, -20141786, -21658446, -23440858, 4418448,
-21305722, 33545842, 20117626, 3954054, 2269353, -8860518, 17488570, 3395709, -5198521, -21948894,
-4572530, 15627239, -676457, -268972, -7713225, 4157528, 8884140, 14259291, 4189204, 5935108,
-5663988, 7018514, 9102646, 9143985, -2515777, 6899865, 1584843, -5224828, -11250130, -13820668,
-1517734, 3018825, -13414793, -6869800, -12890807, 4036733, 6877317, 10133438, 15362561, 25422986,
-19261318, 19330038, 11818676, 7399692, -4495757, 1835562, 294205, -12201465, -18206366, -14083198,
--15509664, 20462834, -29096256, 7315940, 4592394, -12686797, -40793064, 27710056, 8210367, -2649458,
--41304164, 10956462, 6382859, -21827560, 3622268, 19091130, 11729019, 5536750, -18709414, -3841848,
--6996502, 3260417, -7057168, 1695975, -14495515, -20857434, 22819162, -15809775, 34688304, -21449604,
--19412178, -13175349, -24398098, 2105071, -489089, 36419712, -27035208, -28531468, 14669461, 9345849,
--23606750, -31411244, -3500398, -17719962, 20306606, 4283156, -25990994, 16811576, -4457103, -39972188,
-26191248, -17857400, 17087528, -29755534, -7293928, -879931, -12515535, -5175436, 3396782, 37440304,
--10146323, -3566434, -10804527, 10650982, -17774186, 13823352, 29275034, -1861868, 29435558, 23077396,
--3545496, 47161424, -2793339, 5396090, -1415729, 13266080, 47581260, -3980361, -13193066, -50958176,
-39396660, 13995688, 33633352, 11388643, -26460756, 11701638, 7539278, 4781909, -23493472, 13347148,
-2734284, 3803731, -12634720, -3750580, 16063178, 13697724, 598611, -1728188, -1651415, -1918240,
-3927211, 10019085, -20633022, -6160057, -2863670, 3223373, -4224101, 4512400, 4440460, 6436009,
--4822175, -11032160, 17023102, 26587996, 9330816, -13742822, -11746736, -5121212, -4006668, 7151658,
-3626026, -2732136, -16838420, -12123619, -13642964, -1398012, 13073880, 5686000, 11023034, 4154844,
--18362596, -3348464, 8028368, 27936078, -53846540, 2061047, -60601452, -20307680, -10295037, 18443664,
-55959664, 47562468, 17518098, 28080496, -18249316, -15375983, 2704756, -4129074, 12950400, 4103305,
--12656732, 18771154, 27638652, 22970558, 17165910, 14514305, -482110, 2584497, -9417253, 26157424,
-12200391, -5015985, -16148003, 5389110, 10719165, -2863133, 34221224, 35754528, -20707112, -15307263,
-739271, 27773406, 17296370, 4440996, 3377992, -6651294, -12559558, 6907381, 42684996, -17316234,
--21182778, -23030152, 22282290, 9101573, -12850542, -19922742, -31947040, -37795176, 4096862, 8259759,
-6766721, -8352638, -2848637, -10414759, 7398081, -30153354, -49567680, -22340810, -3513820, -8443906,
--19400368, 24748138, 41329396, -9341554, 21285322, 45680736, 29744260, 10560788, -31604516, 5064840,
-5589363, -27925340, -15505369, -4491999, -22292490, 24205362, 34453692, -2124935, -8063264, -4322885,
--10173167, -5676873, -14208826, -13893682, -5191005, -6933151, 4864051, -3163244, -3937411, 6733972,
--21072720, -2614561, 1605781, 21209622, -21907554, -3624953, -5087926, 3958349, -13998372, -4958003,
-4107063, -7678865, -12955232, -2196339, -1116692, -12664785, 14664629, -20379082, -2426120, -7581154,
-4361003, -2252174, -6117107, -11948599, 238371, 5842766, -4376035, -34298000, 27553288, -3564286,
-23664196, 14334453, 487479, 15677704, -6963216, -1822140, 13486197, 16552267, 2495913, 32212,
--609349, -15170898, -9886478, 3990562, -21139830, 516470, -7989176, 462246, -17935784, 2996814,
-927713, -16306917, 13506062, 5725192, 9118216, -20465520, -5583458, 3802657, -1142461, 1431298,
-11638825, 2545842, 3205656, -2389613, -4602058, -3242164, -1752347, 7516730, -3499325, -13079786,
-10481331, -17969070, -5709086, -6191196, 2069637, -8815420, -10480257, 13611288, -1822140, -13730474,
-8286066, -19133006, 15214385, 4722854, 636729, 15720654, 17450988, 2401424, 4911295, -13200045,
-16923244, -8356933, -11725261, -1035624, 2427730, 32126356, -14540612, -23777476, 20256140, -7770133,
-20238960, -3469260, 1242856, -8915815, 12220793, -20662550, -17213692, -6801618, 7993471, 4808753,
--1345399, 9869835, -12370580, -12439836, -8346732, 2918967, 3494493, 718870, -632434, -3771518,
-2030983, -17149804, 3371013, 3484292, -4234301, -1596654, 5066451, -2757369, -7427072, 8856223,
--4528506, 1090922, -481573, -2248952, 5876589, 2586644, -6321118, -712428, -1584843, -5556614,
--1306207, -2055142, -11521250, 3488050, 6862284, 5578626, -5291400, 5211406, -8437463, -2588792,
-96100, -5378373, 16521665, -7661148, -89492088, -170450608, -60821568, -133515504, -152109488, 36950676,
--5376226, 50716048, 196624672, 213190896, 150468816, 214711328, 176432432, 58385248, 61624728, 45514304,
--118897040, -122442536, -68225552, -118865368, -128453344, -43220256, -38052336, -108335720, -81677392, -13497472,
--48501992, -59281288, -14930380, -45439680, -80135496, -45774152, 14602889, -32337346, -39768712, 46630460,
--8257075, -44718124, 40188008, 74639552, -17628156, 18429168, 115857280, 15693810, -37532644, 76766632,
-67045512, -67080408, 37950332, 84633408, -26781268, 8968965, 146903984, 111984296, 56291452, 206418272,
-229885984, 117372328, 211695184, 273406336, 171520048, 161774240, 224769600, 144372112, 91763584, 101602824,
-52755084, -62214748, -120024472, -162727728, -277481184, -337613408, -382675680, -432752864, -426673856, -462485824,
--413162976, -306823872, -306766432, -241950544, -21989158, -12880607, 5908802, 172845584, 136513920, 45199164,
-90481000, 134757824, 49706732, 59921236, 136903696, 99535328, 20047834, 81960864, 115858888, 49562312,
-62275416, 142525264, 53216792, -23032298, 65582004, 45725832, -31964758, 61845380, 137756784, 64633352,
-101482024, 219956016, 182951648, 173267568, 258502272, 238642880, 164461808, 142896784, 128157528, 47743392,
--2170032, 6535867, -27303644, -86391120, -85927264, -98708552, -168664432, -188726768, -180856784, -202928608,
--243339424, -213241376, -206064480, -219896416, -170239616, -115214648, -90120224, -56909392, 1956358, 22580790,
-18983218, 31466004, 34665756, 17690434, 16227997, 31777390, 27537720, 18664318, 22523346, 26280904,
-19871740, 25792352, 39473972, 43389908, 41404560, 47466368, 46247136, 32323924, 26185878, 17865454,
-13853417, 13482976, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--4371203,
-3634616, 3891240, -1843078, 3905199, -2352032, -512175, 5196911, -2124398, 2473901, 1511292,
--5755256, -2593624, 4327717, -1679869, -821413, 2725157, 1804960, 1943473, 523449, 6663105,
-1141388, -1705639, 1496796, -2295123, 4129611, -1181116, -2263985, -979253, -5386963, -1818919,
--3966939, 1309965, -64425, 1466195, -1587527, 2268817, 1071594, -238908, 695248, 371515,
-525597, 738198, -2847563, 7128572, 1053878, -2585570, 5277978, -1260036, -4549444, -4983236,
-4872641, -960999, -385473, 3230889, 366146, -830539, 2522757, -262530, 1463510, 428960,
-1859184, -958315, 2024003, -902480, 2404108, 3494493, 1900523, -2053531, -2113124, -1033477,
-942208, -2194728, 1558536, -1073742, 1933272, 2520609, -3112778, -1751810, 2724620, 817654,
--854162, 4202089, 2436320, 2010045, -203474, 1114007, -78920, 568546, -478889, 646929,
-253940, 312459, -947040, 1563368, 515396, 120259, -263604, 641024, 1021665, -523449,
-1099512, -31675, 4567161, 899796, 1040993, 3833795, 49392, 2767570, 1318555, -309775,
-296890, -2989297, 1402307, 243739, 4697084, 1665374, 1542967, 215285, 1391569, 5153961,
--4856535, 2755759, 731755, -3204046, -1431835, -1983738, -644782, -1840394, 1309965, 5951214,
-3748970, 4446365, 3534758, 6067178, 4423280, -5492727, -9968082, -1256815, 476205, -2426120,
-5265630, -215822, 7882876, -3669513, -3678640, 3402151, 195958, 289910, 3127810, -5743982,
-1488206, -4110821, 5461051, 3218004, -8053, 8286066, 381178, -784368, -1012539, -1446867,
--2040646, 3927211, 2108829, -2009508, -646393, -5757404, -2519535, -754841, 6058052, 4131759,
-755914, 3047279, 130997, 3244848, 23622, 1345935, -3442416, -2228551, 861678, 456340,
--161061, -1748589, 1644436, 1914482, -463856, -1797444, -306553, 1928977, -280247, 1029182,
--897648, -530965, -702764, 616865, -612033, 113280, -20401, 976031, -782758, 942208,
-1481764, -686658, 369904, 120796, -5369, 1752347, -537408, 445066, -628676, 696322,
-539018, 297963, -179315, 1536525, -50466, 74625, 679679, 3628174, 8248485, 2421288,
-365072, 258235, 2326799, 2168959, 495532, 1303523, 1871532, -125628, -170188, 2359548,
-9336185, 3122441, 7285875, -4126390, -3361886, -1366337, -4367445, -5120675, -2038499, 3788698,
--6309307, -883690, -734976, -9935870, 2007360, -10037339, -3325915, -1337346, 2396592, 32212,
-2106145, -1959579, -85362, -6774774, 2505577, -2246268, -3768834, 715112, 1921998, -315143,
-514859, 2898566, 5156108, -8650601, 2385854, 587874, -2537252, -2755222, -539018, 1195612,
--1137630, -5203890, -1204738, 1417339, 2733747, -356482, 6478422, 571768, 308164, 2641942,
--4115653, 6117644, 1970853, 3636227, 1641751, 3042984, -619012, -579821, 1827509, 1063541,
--834297, -1845762, -1480153, -3051574, -67646, -4096325, 290984, 2388002, -195958, -1744294,
--3193845, 2852395, -1692754, 1156957, 450972, -506806, -3038153, 254477, -274341, 748935,
--921807, -887448, 272730, -987306, -1665374, -905164, -689879, -168577, -1093606, -192200,
--617402, 1434519, -256624, -780610, -249645, 762894, -297963, -1304060, -1380832, 1481227,
-34897, 126702, -869731, 4925791, 5382668, -165893, 5937793, 379031, -766115, 734439,
-504122, -1092532, -48855, -4132296, -2352032, 3703873, 4359392, -5083094, -1203128, 2124398,
--3381750, -9731859, 2436857, 3611531, 4247186, -2228014, -2568391, -3463354, 5326833, 6067715,
-1053341, 2400887, -4742181, -3840775, 4516158, 1712618, -3550327, 6264210, -6252936, 1053341,
-615254, 5875516, 2171643, -1286343, 973884, -2020782, 3235721, -7638063, -2248952, -11009612,
--4793184, 5592048, -448287, 8568997, -1147830, -7132867, 4542465, 1007707, -2901787, -326954,
-366146, -2879776, 1917166, 5138392, 5793911, 172336, 2779381, -251256, 6589554, -3330747,
-2860448, -602906, -96100, 228707, 2292976, -657130, 8239358, 842350, 763967, -1253057,
-4862440, 1677722, -1614908, -3439732, 94489, 3332358, 1163936, 994285, -2128156, -87510,
-684510, -305480, -551903, -564788, -1127429, 922344, 95563, 419833, 719944, 1764158,
--660351, -1765768, 1999844, -501974, 217970, 69256, -214748, -201863, 805843, 750546,
-979253, -313533, 914828, 9664, 537408, 922881, -185757, 146566, 778463, 1185948,
-648003, 761283, 249645, 125091, 6022081, -8165270, -1122597, -5531918, -5745056, 2068027,
-1122597, 11906723, 628139, 4388920, -9922985, -2364916, 2201708, -5148055, 3419331, 1007170,
-850404, 2915209, 3368865, 7818988, 3485903, -1220308, 2480881, -3874597, 1145146, 3165928,
--205085, 670552, 3472481, 4493073, 10809359, 2131378, -1596117, -7369090, -301185, 5632313,
--8735963, 991064, -632434, 2774012, -4373888, -5141613, 9363029, -5948530, 1940788, -347892,
--5845988, 13545790, 3500935, 7117835, 3831111, 7781407, -1410897, -2881386, 4953708, -4517232,
-3811784, -3591130, 2081449, 5379984, 2966212, -2354716, -391379, 2770791, -4709432, -3455838,
-292058, -515933, 8014946, -4350802, -7466801, -1074279, 4170950, 6785512, -4161823, -7029788,
--1541893, 9896678, 1314797, 42950, -3505230, 533650, -192200, 3094524, 3138547, -143881,
-1508070, 1730335, -4788352, -1049583, 1666984, -177167, 2816962, 1176821, 294205, -1973538,
--201327, -215822, 1088774, -263067, 2938831, -505196, -291521, -1387811, 335544, -1770600,
-95026, -134755, 741956, 1774358, 70330, 1497333, -81068, -1652489, -332860, 238908,
--3153043, 3588445, -12938052, 7332046, 2153926, -2893734, 3933116, -10572599, -8825621, 1145683,
--4358855, 10009421, 8888435, 9452686, -6310918, 3676492, 137976, 9423158, 664109, 6663105,
-2665564, -2815888, -8483097, -7685307, 2449742, -10241350, -157840, -2416993, -4981625, -6839199,
--4023848, 62814, 8236674, 33286, 3208341, -11716134, -6551436, -1242856, -7353521, 514322,
-7348152, -7953206, 3278671, -95026, -2727841, -737661, -1713692, 8100309, 4337917, 4038343,
--1953136, -2463701, 11142756, -3371013, -3053185, -9193377, 6703370, -13052406, 1774358, -4291209,
-2025077, 4639639, -3159485, -6965363, -4323959, 477278, 9446781, -4754529, -1064615, -6140730,
--4966593, 3063386, 3267396, 7479686, -8757975, -69793, -4649839, -3050501, 1809792, -3451543,
--6887517, -3917010, -632971, 6286759, 6373195, 2217814, 313533, 934692, 2889439, 250719,
-420907, 1328756, -1845762, 187905, 2615098, -790274, 275952, 3237869, -834297, -119185,
-478889, 2357937, -56371, 370441, 815507, 404801, 1935420, -2330557, -2628520, -169114,
--987843, 31139, 1394791, -624918, 2633352, 1682017, -12078522, 3218004, 1097901, 2004139,
--16623671, 14829448, 291521, -343061, -306553, -5409512, 1732482, 174483, 5303211, -4671314,
-5947993, 1684164, -3724274, -6413460, -8009577, 3994320, 699543, -711354, 539018, -4634270,
-4974109, 3700651, 9185861, 5442798, 3627637, 5050345, -1206886, -5100274, -3810710, 278636,
--2680060, 3949759, -4495757, -6822556, -7456063, 406411, -10196789, 4620848, 5326833, -6126771,
-6209986, -7393250, 3690451, -10891500, 1457068, -2033130, 788663, -2926483, -168041, -10138270,
--1695975, -3518652, -6410776, -1762547, -5009006, 1546188, -4514548, -2645700, -6477885, 2813741,
--6194417, -503585, 9922985, -1742146, 293668, 3171833, -2209224, -10132902, -11502996, -1970853,
--8042863, 343597, -2194728, 7444789, 546535, 2766496, -7576859, 612570, -1709397, -1435056,
-5475547, 1298691, -652835, -3042448, 1488206, 2065342, 769873, 2826089, -120796, 1549410,
--864899, -361851, 427886, 440234, 1030792, -341987, 3182571, -970126, -2715493, 1048509,
--37581, 752156, 1050656, 609349, -395137, -1465658, 809064, -2523293, 949188, 4756140,
-3252901, -10346039, -366683, 1800128, -9637370, -10960757, 5935108, -10760504, 2042794, 7117835,
--5239323, -12360379, -5319317, 261456, 8099235, -3331284, 14315663, -1016834, -1167157, -8311299,
--5921150, -1005022, 2863670, 781684, -2998424, -2516314, -707059, -3117610, -6186901, 5037460,
--5134097, -3150359, 5345087, 1567126, -8719320, -9263171, -8537858, 7318088, -7944616, -8559870,
-13877576, -8767639, 6097243, -1248225, 3708704, -12589623, 5695127, 692027, -2098629, -647466,
--2510945, 4029753, 2914135, 11804718, -3048353, -2278480, 5550172, 11406896, 3077344, 2273648,
--5486821, -3610457, -9501005, -2037425, -312996, -134755, 6759205, -2186675, 3578782, 11942157,
--1919314, -476205, -1474784, -272730, -12256763, -13955422, 629213, 9147743, 33823, -18512920,
-4748623, -6505802, 3022046, -11576011, -7264401, -1839320, 250719, -4268124, 1773285, 4222490,
--606664, -615254, -493384, -2020782, 1811939, -2298344, 1802813, 234076, 525060, -2013266,
--1443109, -2792803, 1184874, 147640, -952409, -2682207, -685584, -843961, -1792075, -2000381,
-1083406, -2267206, -957241, 1829656, 457414, -1129576, -273267, -4295, -2931315, 237297,
-5150203, -812823, 6092948, -881005, -2511482, -3659312, 5179731, 3205656, -2806224, 2368138,
-5273683, -2702071, -17706540, -7693360, -3430068, -1944547, 7989176, -13894219, -10161356, 8572218,
-5361730, 21530134, 6125697, 4981625, 5978058, 2748779, -3787088, 450435, -3990562, 6869264,
-377420, 6932077, 281320, -182536, -9366250, 4907537, -6328635, 4982162, -907312, 5222680,
-2143726, 7005629, -10843182, 1282048, -7496329, 9114994, 639950, -9145596, 12171937, 8937290,
-5828271, -5483063, -18320720, 5295695, -1908039, -2290291, 9113384, -879395, 4269735, 8710194,
--1828582, -11070278, 7516, 4948339, 3329137, -2983392, -1127429, -8121783, 3119757, 1091995,
-1823214, -1235877, 1258962, 6955700, -4233764, 3161096, -1033477, -289373, 12684112, -3403762,
-5890548, 4117263, -3844533, -4451197, 1686848, 914291, -1994476, 1022739, -2079838, 1986422,
--1843615, 4743792, 559956, 4531191, 1005559, -163209, 5887864, 1995012, -1576790, 1566053,
--1219234, -1851131, 967978, 2235531, -2044404, 1401233, -988379, -2301029, 35970, 2221035,
--913754, -2561411, 907849, -1238024, -3712999, 1591822, 156229, -2050847, -1016297, -732292,
--2034741, -270046, 3005403, 4006131, -3721589, 4614943, -5037997, -20020454, 4126927, 4909148,
-20354386, -4231080, -3228742, 9645960, 12663174, -20552492, -11702175, 11277510, -5801427, 408559,
-4655208, -13080323, -28676960, -11245298, 16370268, 13011603, 11030550, -3306051, 6205691, -3321620,
-5720360, -5954436, 2047089, -14460081, 3601867, -5083094, 7480760, 7251516, 306553, -6810208,
-6818261, 4294431, 11733851, -1177895, -7192460, -3578245, -18341120, -9376450, 4570382, -1200980,
--12265353, 8395587, 11526618, -16221555, 15776489, -1472100, -1668058, 9911174, 2094870, 9371619,
--1166621, 3368865, -3493956, -1873680, 4792647, 18801756, -6728067, 11979201, -941672, 1141388,
-4561792, 10433012, -9560060, 1139240, 15319611, 4570919, -6929930, 4084514, 6089727, 1425392,
-12054363, 8679592, 15137075, -1349157, 4388383, -124017, 590558, -8370355, -5753646, -6653978,
--3164854, -4832, -1335198, -2688650, -2321967, 4509179, 6585259, 2994129, -3292093, 5252745,
--1461900, -835371, -3080029, -2524367, 3379066, 1101659, -1132798, 214212, -3423089, -2960843,
--3367254, 80531, -1850057, 3060701, 1948841, -1294933, 1424855, 3582003, -2117956, 1647657,
-2161442, -1910724, -1656784, -2035278, -261456, -583579, 2297271, -756988, -860067, -12996571,
--3260417, 13558138, 8637716, 10240813, -6526740, -3253975, -989990, -1348620, 14515379, 1940788,
--14792941, -6550899, -4476967, 9608379, 1928440, 2127083, 8163122, 17803176, -26140782, 17455284,
--3388729, -3025805, -6711960, 5246840, 5408438, 10290205, 1648731, 9810779, -949725, -2523293,
-3078955, -1552631, 5031018, 9028021, 1115618, -597537, 11825656, -8676371, -1574642, 2950106,
--974421, 10453950, -12199855, 1194538, -10433549, 1782948, -11065983, -1490354, 388695, 6172942,
-15095736, -8702141, -4795868, -9023726, -489089, -13225815, -8606041, -8669391, 5944235, 10949482,
-175557, 21616034, -13619878, 19325206, -13534516, -3094524, 5972689, 4456029, 19110456, 11075647,
--14257681, 7545184, -5962489, -19673634, -470299, -12443057, 15807090, 24058260, 15282031, -2899640,
--8473970, -3051038, 13435195, -1917166, 7010461, 891743, 3115462, 4817880, 1515050, 1966558,
-1595580, -5772973, 4076461, 151398, 1723893, -2178622, -1923072, -5474473, -3105261, -1832340,
-3416110, -1620276, 2288681, 2969970, -1096290, -627065, 72478, 3372623, 2081985, 1303523,
-6123550, -7516, 6396817, -5611912, -2528662, 4209605, 3957276, -2297808, 1341104, -1912871,
--4183835, 580894, -13309567, -8424041, 8590, 16798154, -2922188, 7582765, 15613280, -12713640,
-5855114, -20494510, 12792023, -12474733, -5994164, 20367808, 7052873, 21938156, -9041980, 404801,
--9600863, 6528351, 28025198, 7403450, 9638443, -13790603, -2487860, 955093, 10907606, 9717900,
-18002892, -14214731, -4833449, -15490873, -13169980, 1258962, 1285806, 9598178, -8930848, 6802155,
--21202642, 13684303, 10371272, 5104032, -3442416, -2262911, 1571958, 6635725, 2284923, 2064269,
-67646, 14821932, 12642773, 5661841, 1291175, -10740639, -10675678, 30303142, 1283122, 4025995,
-16907138, 7687992, -4571456, -3256659, 10814728, 21903260, -15504295, -6245420, -17493938, -16127602,
-21316996, 9750113, 382252, -3868155, 7176354, 16374026, 10430328, 16887274, 4799089, -7120519,
-12189654, -8302172, -21845814, 6803765, 948651, 666794, 213138, 9518184, 16088411, -2947958,
-8589935, 9678709, 8686571, 1310502, 2048699, 8522826, 259309, -2243047, -1646583, -3148748,
-8181376, -4364224, -1187559, 2320356, 4680441, 957778, -599148, 8877161, 1937030, -1517734,
-6600828, 8506720, 3919695, -3120294, 104690, -1232656, 2661806, 381715, 163209, 77846,
--1758252, 3164317, 1233193, 1031866, 2914672, 3964792, -518617, -3668439, -1414655, -199179,
-4963372, 2016487, 831076, -663572, 6529961, -13982803, -10441602, -4072166, -13013214, 14706505,
--1637993, -3707631, -12394202, -2028298, -11540577, -28572806, 4978941, -3482145, -9020505, 6512781,
--15170898, -874026, -8291435, -22888954, -5255966, -9899900, -10870025, 18385682, -4913443, -6563784,
--3343632, -365609, -4664872, -6417218, -1056025, 4897337, 15495168, 11754252, -467078, -838056,
--26061862, 1658394, 3525095, 10742787, -6045167, -5338645, 39462160, -6713034, -19351512, -18688476,
-16339129, -10894721, 4682588, -22159884, 5485747, -6158446, -11950210, -10205379, -25346750, 4148402,
-7210177, 18074296, 5237176, -9652939, 14118631, 1767379, 13275744, 14914274, 42643656, 11548630,
-2903935, -16510391, -18672908, -4905390, 1919850, -2274722, -16909824, 7668127, 19468550, 4619774,
-13826573, 21637508, 19221052, -8080444, -15518254, -10445897, 1285269, 3536369, -1969243, -16275242,
-3083250, -13211856, 3996467, -5796059, 788663, -7237020, 4748623, -1096827, 2988224, 527744,
--3229816, -7389491, -1818382, -52613, 4312147, 6242198, 4726075, 7176891, 310311, 6164352,
-10422812, 397821, 1896765, 6068252, 1945083, -5177046, -3146064, -8920647, -2786360, 5612986,
-2978560, 835371, -1306207, 3623342, 1832877, -1748589, -4350802, -7757248, 931471, 1428077,
--1240709, -2414309, -710817, -2615098, -5699959, -17220134, -7433515, -2644089, 5349382, -6278169,
-10288057, -5299990, -7029251, 19945292, 10391137, 22677428, 324807, -6554657, -8902930, 24042154,
--20590074, -7671349, 28067074, -16885664, 5644661, 5859946, 7314330, 1672890, 15794205, -4888747,
-14219563, -5352066, 3146064, 3412352, -7243999, 10554345, -15908559, -11086921, -10305774, -4737886,
--14133664, -26120380, -4709432, -7807714, 4209605, -6717329, -34685620, 9676561, 21874268, -1240709,
--4589173, 34171296, -42253352, -9137006, 23656142, -5765994, 18371722, -13435195, -8290898, 6374805,
--40318468, 13081397, -13689135, 20211580, 14899242, -21449066, 42439644, 6273337, 2312840, -2151779,
-16764868, -30639222, 12620225, -1421097, -4798552, 8238821, -19746650, 28074054, 25535728, -47036336,
-6835978, -9343701, -44096968, -7581691, -19645180, 10895795, 2864206, 7682623, -17756468, 27748174,
--2636036, -7414188, 12885976, -503585, 9178345, -1908576, 14445049, 376883, 7243999, 2261300,
--547608, -1495186, 8114267, -5777805, -6440304, 179315, -7579544, 11516955, -2420751, -5914170,
-704912, 5320928, 2625836, 5487895, 2202245, 13361106, 3245385, -7200513, 13902272, -7448547,
-7948911, 11937325, -3227668, 2720862, 8436390, -5696737, 8297340, 1344325, 25973814, -11578695,
--33418066, -33528126, 2697776, 4203163, -14720464, 8803072, -18636400, 6036577, -8427263, 17314624,
-22166326, 766115, 21447456, 19520090, -10785200, -228170, -13807783, -3429532, -3209951, 7567196,
--1316944, -2088428, -2278480, -22378928, -33872260, -13586055, 17746804, 13736916, -14506789, -16690780,
-9824738, 9958955, -22010634, 11182484, -14627048, -2679523, 17119740, 23756000, 222265, -13988172,
-9128953, 1868311, 14828375, 2623151, 12384001, 12787728, -3531000, -48535276, 5571110, 1343251,
-19731616, -7089918, 20123532, 19950660, -13228499, -65786016, -8760660, 2772938, -7839389, 39688720,
-41633804, 29070486, 41371808, -10602127, 19496468, -16209743, 27679990, 19429358, -32442572, 41181220,
--42405824, -36101884, -34027952, 10934987, 25752624, 21461414, 7258495, -26554710, 24693914, 3524021,
--8740795, -11313481, 1547799, 23327578, -17875118, -7089381, 35584340, 6664179, 16327855, 3218541,
-1825361, 8850854, -13305809, 7334731, -5377836, 386010, 3739306, -3309272, -6845641, -4463008,
--5978595, -13358959, 3125126, 12620761, -2385318, 12903692, 10004053, -8060043, -6373195, -5942088,
-8006893, 5084705, -16334834, -9399536, 963683, 936303, -2344515, 2316598, 10889353, -128312,
-8680666, 1026497, -6244346, -25970056, -49162344, 10479183, 18284212, -2536178, 25090662, 9680319,
--30969936, -7728794, 6725919, 7763691, 8673686, -6169184, 14525043, 1340567, -9157944, -4141422,
-5248987, 20611012, 26866094, 20327006, 32196686, -30735322, -8444443, -7895224, -31434328, -7458211,
-5548561, 1714766, 3631932, -12469364, -14107894, 16148003, 36172216, -16960288, 18731426, -12077448,
-4962298, -11132018, -1802276, -28004260, -10111427, -1509681, -38807712, -22670448, -37977176, -32076426,
-21443698, 50331648, 40214852, 1264868, -2398202, 221728, -8910983, -17191680, -60797948, -20279224,
--8615704, 5055714, 2731599, -21413634, -14899778, 7984344, 26934814, 16076063, 8767102, 17614734,
-30195230, 11856257, -29972966, 23111220, -17701708, -9256728, 17963700, 40227736, 8767639, 51556252,
--12151536, -53436372, -6068252, -17193290, -32693828, 49573048, 14161581, 16183974, 18254, -4321811,
-14434848, 11903502, 800475, -1920387, -8477192, -1648194, -2438468, 13610751, 16445430, 19600620,
--2107218, -633508, -676457, -620623, 12899934, -5400922, -4179003, -7423314, -5786395, 7359964,
--1383516, -139050, 2270964, 4730370, 7625715, 9400610, -1194001, -5427765, -9564892, 4937602,
-1917166, 4664872, 12182675, 10699300, -5262946, 2784750, 5545877, -9273908, -2783676, -2037425,
--8924405, -4029216, -295279, 8314520, -21051246, -34443492, 21228950, -3394098, -20825222, 9968619,
-22514218, 19487340, -40233644, -34765612, 8604967, -16185047, 4049617, 19583978, -10747619, -7940858,
-32411434, 8750459, -4591857, -10395968, -9287867, 12124156, -7377143, -1499481, -1028645, -13288092,
--5183489, -22068078, -29364154, 10390063, 15913928, -18568218, 13444858, 9178345, -6468758, -12904766,
-1897302, 23080080, 13251585, 4098473, -23249194, -25987236, -12708808, 6931004, 28933048, -21816286,
--11594801, -9957882, 17245368, 46675556, 12291123, -45788108, -10241886, -5449240, 23396834, 460635,
-12079059, -6039798, -10927471, -10197863, -25971130, 24059334, 25480430, 10232760, 26944478, -8530879,
-17397838, -8167417, -19589346, -21659520, -23164906, 4013647, -43299176, 45251240, -2212445, -17275970,
--25068114, -20513300, -1463510, -13454522, -4125853, -23851028, -14770393, -42330124, -11839614, -27910308,
-10189273, -9950902, 8152922, 9416179, 10082436, -7044820, 23285166, -5363341, 16848620, 569620,
-4001299, -1376000, 7291244, -3666292, -9431211, 1867237, 2619393, 8646843, -14044543, -4937065,
-3549791, -13838385, -17717, 5006322, -17286170, -7592429, 4056597, -2440615, -13255343, -20445654,
--12312061, 7405598, -3937948, 9320616, 2201171, 321586, 13785234, 921271, 11850889, 4572530,
-7366943, 27734214, 16589311, -7842074, 4184372, 35009352, 26261578, 10012106, 5141613, 16452946,
-14889041, -23845658, -34368328, 11627550, 26725434, 38292316, 139586, -8624294, -24023362, -14114873,
-16023449, -504659, -20526722, -41261212, -41300944, 8644695, -12485470, 23076322, -47576964, -15721191,
-9130564, 6799470, 8931921, -15060840, 6787122, -1307818, -9030169, -1800128, -22395034, 20528334,
-25242596, 18821620, -30118458, -16060493, -838056, 10152766, 14966350, 16133508, 12831215, -3410204,
--2259690, -4080219, 21340618, 59531468, 37484328, -31016106, -30618284, -19399830, -39408472, 46275052,
-24566140, -14349486, -40878424, -39055212, 44288628, 27315992, 5827734, 34170760, -35618700, -3926674,
-2079301, -9144522, 3340411, -13224741, -36035312, 8922258, -27573690, 36710696, 34586296, -13249437,
--6293201, 401579, 3857418, 39071316, 39851928, -63382444, -35478040, -20365662, 7868917, 17812304,
-17112760, -24553792, -26456998, -31108448, -3969624, 32270236, 600759, 6429566, -7481296, -34405908,
-7811472, -14419816, -18131742, 7876970, 60157460, 20395726, -11409581, -15426449, -14570140, -11904039,
-15700790, 18845780, 21637508, -3890704, 13912473, -21301964, 5020280, 7808251, 9575093, -7646116,
-4008278, 17859010, -4770635, -5012227, -3134789, 17635136, 11276974, 27436252, 6740415, -9696962,
--7526930, 10198400, 33694556, 27627914, 5574868, -20249698, -25163676, -7978439, -6192269, 5990406,
--12450573, 23312546, -38139848, 33227478, 48988932, 53179748, -59977608, 11013907, -1905892, -5150740,
-25354802, -10827613, -17847736, 17576616, 8912057, 36453000, -3770445, -28857886, 813896, -13165685,
-21475374, -33155536, -11808476, -15576773, -22164178, 30285962, -22216256, -3135326, 20776368, 12119324,
--7429757, -11567421, -31115428, 4030290, 40795748, 24919400, -1846836, 12182138, -9314173, 33419140,
--22603876, 15454366, -12523051, 20775294, 34367792, -7624104, -22499186, 11092290, -30647276, 50616188,
-5815386, -26798448, -9310415, -41831908, 5216238, 60031832, -11052025, -35242356, -24785182, 36828272,
-10845329, -19252190, -1123671, 9537512, 20488604, 50604380, -41384156, 18434000, 41275708, -6209986,
--49125836, -47346108, -27926952, 83122112, -60949344, 20666846, -64188824, -30693984, 133539120, 12936978,
--58486180, -55940340, -64764884, 81541568, 10302553, -15316390, -64906084, -15452755, 20020990, 66015796,
--23839752, 7272454, -28724204, 9900973, 39816496, 24526410, -36048736, 17019882, 6336151, 15636365,
-13537737, -36253284, 993211, -8506183, -14024679, 7344394, -13616657, -26673894, 10009421, -7761006,
-34596500, 5345087, -32389958, -36488968, -11977590, 1187022, 27808302, 21333102, 4618164, -16916802,
-6901476, -510027, -13963476, 1184874, 17540110, 15965467, 3513820, -26780732, 6355478, 10784126,
-16722455, 15469935, 10601590, 21766358, -56346748, 9863392, -50626928, 22338662, 23922430, 47257524,
-20907364, 10828686, 12352326, -14744086, -36152352, -25150254, -23746874, 10122164, 5872294, -6171331,
-21592948, 33324114, -14936286, -20955682, 23133230, 4101694, -30861488, -7109782, 13946296, -25458956,
--4518306, 5604396, 12928925, 6887517, 18294414, 31389232, 5520107, -20044076, -2341294, 6033356,
--15936476, -7128572, 14653892, -11171747, -20171850, 27997282, -6790344, -6956774, -11180874, -11028402,
-18126910, 4610111, 4117263, 24160802, -11590506, -18694918, -1119376, 1782948, -7958038, 6166500,
--1352378, -6668474, -1240172, -23570244, 5215701, 4597763, -4045322, 12677670, 8531953, 4421669,
-5635534, -24342800, 28765006, -10801843, -10464151, 8811125, -26387742, 8564165, -19772956, 2283312,
--15652471, 5057861, 6838662, 10653130, 907312, 9448391, 14223858, -5520644, -3267933, 7903814,
--532039, -5030481, 4299799, 997506, -3338800, -5061082, -4638028, -3042984, 10249939, -9859097,
-9939628, 678605, 2653753, 4991289, 2920578, 7274601, -463320, -205085, -4511327, -988916,
--6196564, 12381317, 846109, -5559835, -9126806, -2966749, 4734128, -8860518, 11675332, -5706401,
--14987825, 846109, 6252399, -865973, -513249, 1530619, -7132330, -26132728, 42376296, -2136746,
-24011014, -21688512, 2743410, -3882114, 7617662, 6896107, 12890271, -6502044, 9497783, -5819681,
-5253282, -888521, 4164508, 10264972, -1221381, 15888695, -6320045, 12018929, 668404, -449898,
--4437775, 7717520, -6062347, 6977711, -4037269, 542777, -3343632, 3848291, -2724083, 9064528,
--2775623, -6248641, 14468134, -9921911, 7580081, 6137509, 2253247, 7058779, -8815957, -6080063,
-6656663, 6260452, -3862249, -765578, 7095286, -566936, -9816685, 4400194, -4974646, 5133560,
-6888591, 3301219, 2376728, 2290828, -10572062, 5250598, 3013457, -3131031, 3904662, -4920959,
-2444373, -2413235, -457951, -1265942, 3723737, 7204808, -9863929, 8894877, -1723356, -3412352,
-5094368, -6809671, 3283503, 4922033, -1176284, -2423972, 3405909, -1277216, 2007360, -853625,
--3503083, -470836, 3799972, -930934, 1478006, -705448, -2567854, 1745367, 1540283, 2741800,
--3731790, 3080029, -247497, -1473174, 3557307, -3889630, 6204617, 3230352, -2316061, 6398428,
--480499, -2420214, 255014, -2416993, 3782256, -4059281, 4336843, 1832340, 2333778, 1174674,
--2493766, 2177549, 974421, 579284, 392453, 261456, -1018444, 1227824, -2612414, 3262565,
-1263794, -2889976, 10449655, -35759360, -111293344, -16433619, 53932980, 27856084, 131200512, 24330990,
-28149752, 17680232, -35443144, -49896244, -35565552, -63940252, -54955716, -31216896, -12846784, 36457292,
-99621768, 78989816, 68032816, 38626788, -30762704, -50018116, -36817532, -68898792, -65253976, -20082194,
--9229885, -15310485, 25184614, 39412768, 26053808, 48085916, 37156836, 11291469, 34170224, 6876243,
--5182415, 3049427, -20742544, -54444616, -46282032, -39361764, -55173688, -23181012, 15995532, 10948409,
-35175244, 39821328, 34808564, 35711044, 36487896, 23073102, 22573274, 2368675, -20426328, -38086696,
--26024818, -35860828, -47352552, -23387170, -21779780, -17766670, 6587406, 17812304, 17051558, 33292976,
-41648296, 20088636, 29329258, 25014964, -7077569, 2807835, 11193759, -13973676, -12661027, -22353694,
--40098888, -40257804, -31987842, -33121178, -6584185, 13799193, 9174050, 26213796, 39355860, 31019328,
-28635620, 29444686, 19611894, 6410239, 1766305, -9224516, -17289928, -18564460, -27628988, -34916472,
--37164352, -31993212, -28748364, -16441135, 3605625, 18033494, 41303088, 54681912, 47960828, 39767104,
-33712808, 19489488, 3999688, -16940962, -34868692, -47509316, -49798000, -54880556, -40511744, -16920024,
--4352413, 11444477, 32559074, 42089604, 45386532, 46777024, 39070244, 16564078, -1279900, -12120935,
--26682484, -34649112, -32581086, -28914256, -20886962, -8549132, 995359, 11500849, 14865419, 11462194,
-12537010, 10005663, 6784975, 5341866, 5468567, 1833414, 1801202, -470836, -2814277, -3337190,
--2980707, -4291746, -5121749, -5400922, -4730907, -3991635, -2706366, -787590, 926102, 956167,
-603980, 410169, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--3556770,
-2687039, 1690070, -3508988, -618475, 4480188, 1328756, 1105954, 2470143, -584652, 675384,
--1165547, -4686346, -1841467, -233539, -1034013, 1345935, -1450625, -455803, -3969087, -6442,
-684510, -2804077, -609885, -3539590, -1258962, -1129576, -4282620, -1969243, 1363115, 1862942,
-4799626, 2837900, 6131603, -670552, -1000191, 892816, -2115808, 5325223, 313533, 2511482,
-4226248, 733903, -1712618, 1721208, -2259690, -3012920, -756451, -1308891, -1665374, -5558225,
--1797981, 14496, 862752, 1642825, 459562, 2807298, -3152506, 2474975, -25233, 604517,
-1755568, -2205466, -4909685, -2129230, 2083059, 3048890, 2319819, 179315, 2365453, 1780264,
-3218541, 1602560, 1387274, -2146947, 161598, -363462, -432181, -1831804, -2245194, -987843,
--522375, -223875, -1731409, -4832, 244276, 654983, 157840, 1221918, -674310, 544387,
--1083942, -1656247, 808528, -260919, -41876, 1112933, 793495, 971736, 70330, 70867,
--946503, 537945, 176094, 308164, -139050, 1513439, -329639, 55835, -661425, -566936,
--743566, 624918, -501974, -1437203, -2571075, 2444910, -3954054, -2429878, 6368900, -1031329,
-5630702, -2879776, 548145, 2785286, 1240172, 186831, -3778498, -5360656, -5592048, 602906,
-145492, -1582696, 760746, -4950487, 9863392, 1115618, -5483600, 1460289, -2871723, -3128884,
-2944200, 4182225, -60130, 941672, 1999307, -302258, 23622, 3283503, -1797444, -802085,
-199179, 5979132, -115964, -699006, -2257005, -3532074, 1844689, -871342, -3623342, -1637993,
--4362613, 585726, -3956739, 89657, -2995740, -990527, -2634426, -5487895, -2247342, -344671,
-5184026, 762357, -1496259, 2825015, 4747013, 716186, -6458557, 2976412, -14496, 1207960,
-2125472, -1502165, 4098473, -2042794, -3653944, -3812320, -6749541, 631360, -2302639, -2396592,
--3039763, -3187403, -181999, -3476776, 1103807, -543313, -1972464, -731755, -2228551, 47245,
--96100, -2557116, -1061394, 1036698, -370441, 165356, 575526, 239981, 439697, 324807,
--693637, -2289755, -411243, -859530, 646393, -293132, 271120, -438624, 19864, -35433,
--495532, -1437740, -1180042, -195421, -520228, -554588, -462783, -1077500, -397821, -4952098,
-8290361, -2076080, -7517804, 582505, 2578591, 245887, 2377265, 1941325, -5949067, 2137283,
--1376537, -231391, 255014, -1079111, 4563403, -1394791, -2941516, -247497, 3650185, 2300492,
-1364726, 2149631, 8829916, 2338610, -3009698, 3993246, -3677029, 1234803, -2964064, 8299488,
-1307281, -2686502, -1609539, -2693481, -922881, 5509370, -4374961, -3690451, -1113470, 4564477,
-2625299, -4203163, 1204738, 958851, -2452426, 129923, -9014063, 3011846, -2067490, -1716913,
--5711233, 8682276, 496069, -4518843, -3546569, -4435091, 348966, -954557, 491237, -24159,
--5199058, 6873022, -3876208, -3557844, 2724620, 736587, 2705830, -1927367, -401579, -4227859,
-387084, 924492, -5369246, -4008278, 396748, -3741990, 1353989, -3346853, -944893, -943819,
-2392834, -4322885, -4491999, -918586, -712428, -1072668, -289373, -1937030, -491237, -1409823,
--1162862, -913754, -1401233, -1694365, -153545, -2275259, 603980, -1509681, -5906, 144955,
--547608, -856846, -118112, -603443, 1174137, -178778, -992137, -58519, -1753420, -343597,
--1075352, 86436, 235686, -1202591, 7194607, 223338, 1556389, -5951214, 1830193, 3419331,
-2495913, -249108, -2984466, 7737384, 1344862, -1541356, 3710852, 3032247, -3616899, 4741107,
--3187403, 7818451, 1108638, 6978248, -761283, 1231582, -2736431, -7900056, 855235, 162135,
-271120, -1365263, 1626182, 4172024, -1046898, -4057134, -2685965, -5770826, -1596117, -2841658,
--3052648, 532039, 1989107, 3134789, -3710852, 2589865, -2483565, -3085934, -416612, 2649995,
-496606, 657667, -5770826, -5567352, -1055488, -1650878, -4219269, 9196062, 4268661, -580894,
-1773285, 3696356, -9276592, -4692789, 6222871, -3468186, 5836861, 1324997, -1214939, -6225018,
--4594005, 7403987, 3923453, 7000797, -7351374, -509491, -5098126, -406411, 1814087, -2717641,
-867047, 545461, -4576288, 4112968, 461709, 623307, -745177, -8152385, 886911, -1962263,
--2564632, -2551211, -492311, 1418413, -1312113, 632434, -2866354, -607201, -1312113, 1833414,
--351650, -220654, -928787, 66035, -970663, 626528, -1617055, -775778, 537408, -461172,
--98784, -102005, -10201, 753767, 472446, -134755, -1133335, -1181116, -1228898, 1062468,
-487479, 1548873, 816581, 628139, -12179454, 582505, -1620813, 3218004, -7396471, 2282238,
--2537789, 12184822, -3315178, -6409165, -2389613, -5386426, 1592896, 4484483, -1517734, 8498667,
-809064, -2588792, 1995549, 981400, 2161442, -3095598, -603980, 3125126, 4955319, 1927904,
--1073205, 2350958, -4558571, -1460826, 6248641, 4458176, 7349226, 5206037, -197032, -3835943,
--7988103, 5403606, -938987, -5832029, 2923262, -1584306, -8939438, 172872, -7465727, -645319,
-6607271, -1193464, -5045513, -2347737, 6306623, -5589900, -9127879, 9131100, -1807108, -2291365,
-2078764, 1109175, 1013075, 2152852, 2138894, 1166621, -6747394, -2590939, 5078799, -752156,
--2054605, 1503775, 8771934, -4541928, -4988068, -2296197, 3547106, 1787780, -8051990, -3598109,
--2819646, -3531000, 2545305, -524523, -679679, -3016141, -2426120, -6361384, -3708168, 1472100,
-132607, 954557, -330712, 3690988, 3794067, 629213, 1337346, -1990717, 369367, 139586,
-1505386, -2439542, -1171452, 253940, -19327, 1074279, -122407, -1402844, 1314797, 475668,
--2731599, -560493, 692564, 436476, 376883, -705985, 276489, -1331977, -1352378, -1142461,
-596464, -605054, -729608, -229781, -10652056, -254477, 2814277, 10200010, 10543071, -3435437,
-5237176, -6829535, 2210298, 4465156, 6763500, -2010582, 10158135, -1947231, 8612483, -4753992,
-7212324, -3671660, -12063489, -2768107, 2981244, -4189741, 4622459, -2641942, -2916820, 1266479,
--13219909, -4303557, -297427, -2332167, -818728, -6416681, -2228014, -2315524, 2073396, 13411035,
-7728257, -7864085, 4252555, 10715407, 2643016, -3816615, 2656974, -2881923, -3227668, 7700877,
-5364414, -5428839, -747861, 5477157, 11515881, -3758097, 6254546, 17087528, 7349226, -7938710,
-3169149, 1947768, -9565429, 1385664, -7907572, 3480534, -8614631, -2069101, 338229, 4021700,
--5627481, -1595580, -2797634, -5142687, 6575595, 5619428, -324807, -3781719, 1006633, 963683,
-920734, 1549410, 4884989, 921271, -6522445, -153545, 7902740, 213138, 1768453, 1560684,
-2391223, -2501282, -1156420, -3999152, -1692754, -3682398, -307627, 2144799, -478352, -2097018,
-1157494, -446677, 455267, -1147830, -774168, 1447404, -110595, 3498788, 863288, -774168,
-1861868, -64961, -826781, -1349157, -1792612, 765041, -946503, -501437, 924492, -107911,
-1654099, 80531, -2153389, 4686346, -2295123, -10729902, 2501819, -8615704, 1415729, -2841121,
-11188927, -5648956, 1597191, 2958159, 1129040, 4073777, -1620276, 12243878, 979789, -7907035,
--1453310, -5825587, -915365, -1882806, -5450851, -6852621, -1742146, -4406637, -2069101, 7839389,
-2930242, -6593849, 2602213, -7878581, -1474248, 5762773, -10755135, -9497246, 5437429, 5102958,
-2659122, -308701, -6522982, 2607582, -3205656, -6169184, -2835215, 346819, 1978906, 10246181,
--4014184, -1147830, 563714, 4782446, 2535641, -3536906, -4554276, -8198556, -2482491, -1811403,
--4492536, -5257577, 3376918, 6845104, -10737, -4365835, 7595113, 1461363, -3715147, 935766,
--1085016, -978716, -2585034, -1471563, 4939750, -3905199, -5837398, -3375308, 3091840, -4529580,
-8028368, 3588982, -1298154, -3281892, -3700114, 2278480, 4997732, 10190884, -2918430, 5217312,
-200253, -16106, 585189, 1639067, -1848983, 49929, 1287417, 2147484, -1315871, 1503775,
--1125281, 4941360, 1915555, 3716757, 75699, 2527052, -102542, 2244121, -412317, -199716,
-2644626, 993211, 351650, 1388885, 341987, 2586644, -1878511, 610422, 1800665, 2378338,
-2082522, -782758, -2585570, -35433, 1687922, 365609, 339302, 2138357, 5562520, 10612864,
--7915625, -276489, 7226820, -3457986, -5187784, 6646462, -10486700, -639950, 1937567, -1363115,
--3912715, -4614943, -2221572, 1816234, -564788, 5021891, 2527588, -1676648, -3997541, -2914135,
-8260833, 325881, -10103911, 4712653, -6392522, -6260989, 3836480, 7279433, 7415261, 5633387,
--181999, 3808562, 2586107, 3595961, -3314641, -163209, -2989297, -7269232, 3054796, -1873680,
--401579, -1599875, 704375, -1197759, 8031052, 14952392, 2458869, -2587181, -47245, -10672457,
-10358387, -7275138, -4728222, -7000797, -8587787, 14535780, 791348, -8070244, -2928631, 10031970,
-5166309, -7593502, -5683316, 11498701, 925029, 1193464, 14856292, -7090454, 4078608, -5323075,
--14750528, 6937983, 7097434, 1194001, -8517457, -1186485, -1852742, 1771674, -3698504, 5408975,
-3321620, -11651173, 4947266, 5598490, 7117835, 1243393, -6240051, 10440529, 1764158, -912681,
--807454, -3481608, -3684545, -1305670, 652298, 3164317, -15569, 273804, -344134, -2786360,
-1170379, 1281511, 546535, -1267552, -783832, 2126546, 741956, 2419677, -1579474, 586800,
--3668439, 435939, 3435437, -4602058, 625992, -3600256, 4201552, -1733556, -115427, -2797098,
--36507, 2465848, -312459, 3354370, -11811, 5010616, 6408091, 11894375, 10891500, -453656,
-9284109, 4161287, 9468255, 9145596, -15250892, 5500243, -4944581, -6609418, -4822712, -1458678,
--9729712, -2055142, 2362769, -8326331, -17064442, 3879966, -1212255, -15381352, -11286637, -10082973,
--5633924, 528281, -2896419, 3629247, -2037962, 6088116, 11902965, -6839736, 4042638, -2700461,
--5466957, -3990562, 718333, -1187559, -501437, 8856223, -375273, 8928163, 11584601, 3445638,
-4983236, 7656853, -1013075, 1536525, -11454678, 10684268, -9343701, -3302293, -2982855, 932545,
--2588792, -8923868, -7858180, -17226040, 15586973, -17596482, -17049946, 2866891, 16346646, 5788006,
--2120640, -4128001, 7514046, -8268349, 9400610, -2761664, 1189706, 955630, -6251325, 6541235,
--7384123, -6040335, -715649, 2347737, -7054484, -1125818, 3775813, -581968, -1942399, 5024038,
--3346853, -6350109, -1470489, 3171297, -4209068, -2476049, -2886755, -664646, 1891933, -1384053,
-556198, -1076426, -2317672, 629213, -1497870, 1439351, -1564979, 2095944, -660888, 3934190,
--590558, 1504849, 2138357, -1402844, -2703682, -311385, -681826, -186831, -853625, 1811939,
-68183, 2352032, -2161442, 810675, -4604742, 173409, 167504, -1711545, 1357747, 7137699,
-9298604, 9294846, 10117869, 23848342, 10714870, 13631689, -6730214, 22075058, -12597676, 610422,
-4872104, -96100, -8295730, 2760590, -2287607, -18811420, 7138236, -4734665, 2028835, -1757715,
--6226092, 17180, 5604933, -7592966, -3935801, -1178969, 4434554, -11471858, 7282654, 2752000,
--10510859, -815507, 4300336, -9526237, 3582003, -11425687, 5287642, -973347, -3688303, -436476,
--7458211, 9613211, 11361799, -10813654, -6173479, 4917201, -3843459, 3029026, 2749853, 736587,
-375810, 13106630, -3292093, -8745627, 8122320, -324807, -6880001, -5779416, -10871099, 2107755,
-2980707, 5450851, 5237176, -5020280, -8443369, 4741107, 2377265, 16380468, 1737314, -2020782,
-425202, 1103270, -4820027, -2152316, -6045704, 6715182, 3887482, 4376572, -1273458, -10456635,
--9529996, -3118683, -837519, -3750580, -6601365, 1869385, -2885144, 4328790, 769873, -691490,
-2696703, 2793876, 4444755, 4164508, 3358665, -18790, -989990, 1191317, 2989834, 2311229,
--1322850, -1252520, -832150, 768262, -2147, -816044, 59056, -5144297, 639413, 3371549,
-2586107, -4007205, -2881386, 5760625, 3087008, 5712844, 2261837, -4164508, 3969624, -1013075,
--3147674, 620623, -4495220, -2467996, -1140851, 1729798, -897111, -12882218, -14477261, 24143622,
-16834124, 21583284, 1373316, -13860396, 4876936, 11261404, 8016020, -3540664, -8771934, -2585570,
--3228205, -4260071, -7553237, -3034395, -6345278, 16093242, 2567317, 2652142, 115964, 932008,
-1703491, -5958194, 10649371, 6010270, -642098, 3868155, -1524713, 10961293, 2014877, -978179,
--17951890, -1334661, 1120450, 1702955, -3367791, 2237678, -8507256, 14559402, 11792370, 11381126,
-9932649, -7822746, -10828686, 8296803, 2552284, 4053376, -718870, -12605192, -9119289, 721018,
--7110855, 77309, -5973226, -2602750, 7551626, 2398739, -5401458, 1925219, -13934485, 420370,
--23619636, -12006044, -22316114, 19258096, 17357036, 18526342, 22454626, 10871099, -3721589, -9968619,
--3027952, -557272, 3219078, 17787070, -5881958, -13524852, 10307922, -8609799, 4486630, -1976222,
--1950452, 4167192, -4013647, -7318088, -2074469, -9009231, -1916092, -8101382, -1866700, 1129040,
--720481, -981937, -2206003, -2830920, -5597953, -90731, 2927557, 452045, -2823404, 978179,
-4877472, -664646, 3258270, 1784022, 1925219, 1365800, -6471979, 5653788, -2507724, -2058900,
-3789772, 1302986, 4190814, 421981, -5390184, -1007170, 106837, 929324, -3303367, -8567386,
--11528229, 10162429, 13186623, -6478958, 12243341, 1725503, -5201206, 4923107, -17749490, -5508296,
-5004174, -5656472, -10885595, -20515448, 10077067, -8816494, 2371359, 13287018, 3187940, 15493021,
-11851962, 6737193, 2542621, -9151502, -2687039, -4791573, 836982, 8628052, 4496831, 1780264,
-7365869, 21065204, -1101122, -17918066, -7868917, 2894271, 4300336, -1027034, 443455, 1695438,
--7643968, 469762, -16865262, 3792456, -17643188, -6433861, -13662291, 6725919, -6816113, -11210402,
-17104708, 4796942, 1393717, -7699266, -10262824, 2561948, 4066260, 1506997, 5573257, -8746701,
-19229642, -23350126, 6073621, -9732933, -14173929, -7940858, 12238509, 3688303, -13287555, 9386651,
--10581726, 25936234, -2418067, -2847027, -12617003, 1510218, -16831440, -9029632, 22453552, -9038759,
--10197863, -6658810, 6713571, 843961, 9517111, 4744328, 4975183, 6937446, 3769908, -636192,
-716186, 3309272, 1417339, -1833951, 5574868, -1750736, -1942936, -4201015, -3773666, -1694902,
-2057289, -3307125, 243739, 1618129, -1365263, 1411434, 260919, 5502390, 2882997, -6442,
--1122597, 10201, -400506, 3288334, -2923262, 2983392, -825171, 1321239, 4609037, -1458678,
-241055, -635118, -2319819, 5646272, -795106, 24395414, 25103546, 23678154, 5052492, -6350109,
--3961034, -15255187, 12387223, 363998, 7268696, -4565014, 2336462, -5578626, -4291746, -8821326,
-4765803, -9185324, 15083388, -39366060, -11461657, 281857, -11911018, 8460549, -12242804, 2517925,
--4730370, 12380243, 2203855, 11917461, 864899, -2813741, -190052, 4362076, -13790066, -9909026,
--10726681, -1519345, 13424994, -26479010, 9189083, 23025856, 2832531, -16943110, -665720, -14270566,
--13677323, 9470940, -1790465, -11658689, 6481643, 967441, -4344360, -6588480, 3770445, 9570798,
-5816997, -13542032, -9884330, 7742216, 11674258, -9535364, -12596602, 6206228, 13079786, -15908559,
--549756, -14203457, -19489488, 23181012, -3859028, 3578245, -4350265, 14366129, -3389803, 3514357,
--7724499, 12495670, 6933688, 11496554, 13293461, -13252658, -14626511, -5961952, -2803540, -8784819,
--22006876, 2422362, 1196685, -14496, -1621887, -3575024, -2961380, 6320045, -556735, -2731062,
-5837935, -6440304, -3426310, 2389076, 11464341, -3482145, -3540664, 559956, -1450088, 3960497,
--1388348, -639950, -2019172, -3223910, -8053601, -11557220, 2043868, -819265, -8804683, -4403952,
-2316598, -3068754, -9975062, -5553393, -670552, -1737314, 795643, 2834142, 1189706, -22549,
-8176544, 2822331, 12869870, -4784057, -638340, -19092204, -9030169, -4583804, -16227460, -23199266,
--4536559, -7920457, 21370146, 6243272, 31897112, 5556077, -9482751, 3995393, 5851356, -26526254,
-1256815, 22816476, 14405857, -15559056, 1852742, 11281268, -21351356, -3632469, -10810970, 8723079,
--8513162, 5667746, 1188095, -4410932, 901406, -291521, -7031935, 6956237, -14585172, -5836861,
--6404333, -18239116, -4029216, -2607045, 37044, 1061394, -5159867, -5904507, 32584306, 9645960,
--13008919, -23475218, -8685498, 2126009, 23475754, -5986111, -3351685, -13501230, -3804267, -9570798,
-19194208, -16061030, 17091822, 21772800, -22520124, 14450417, 5270999, -9682467, -8689793, 5143760,
-10013179, -48785996, -6726456, -336081, -6969122, 12539694, -6876780, -36532992, -14439680, -10830297,
--16726213, -16244103, 2480344, 2866354, -9637370, -8514773, -15471009, 1292785, -5970005, 1023276,
--6939057, -7942469, -9073118, 1735167, -2148021, 5011153, -7917236, 3401614, -1329292, -7969849,
--16450798, -4297115, -1360431, 4910758, -2685428, -21621402, 3940096, 10060424, 3696893, -762357,
--7930657, 7313256, -1522566, -2743410, -13354127, -2485176, -4919885, 10391137, -2108292, 1432372,
--423591, 2017024, 6282464, -5224291, -98784, 71941, -2872796, 292595, 2397129, -15560667,
--13654775, -5296769, -11154567, -7700877, -3499325, -7027640, -9034464, -7031935, 5352066, 32123134,
--1119913, -37751152, -21204790, -23408646, -4525285, -13000329, -710280, -19219978, 31157840, 18515068,
--3532611, 24538758, 545998, 26471494, 6186364, -15426986, -21099026, -13265006, -17065516, -7617662,
-3921305, 11386495, -3945464, 3683471, -14149770, 2320893, -20324858, -1875827, -1380295, 6853694,
--7786776, 32161252, 3915937, -881542, 21122650, -8337606, -15414101, -8926016, 12837120, -1029182,
--8876624, 3566434, -395674, 27384174, 6480569, 71404, -10924786, -16546898, -42080480, 2705830,
--33498598, 16821776, 56625924, -40679784, -9025874, 9242233, -7340636, -7141457, -11739756, 9556839,
--12050068, -39325256, -10815265, -39206072, -8571681, -1099512, -24974698, -3428995, -35786740, 15426986,
--3932580, -22388054, 54812372, 4360466, 22117470, 18953154, 30056718, -18616536, -1655173, -11185169,
--4486094, -7534447, 14050986, 9290551, 12575127, -26718992, -5824513, -14481556, -19297288, -15677704,
--10132365, -1990181, 10043781, 8810589, 5558225, 7805030, -2600066, 2619930, 14545444, -2631204,
-14380624, 4531728, -13373454, -3374771, 4126390, -5417028, -2684892, 17635136, -217970, -5127654,
-19055160, -8870181, -1880659, -15904264, -4441533, -11031623, 7926899, -8378945, -4366371, -3049964,
-2689723, -3588445, 7080254, 419833, 7330436, 2449205, -3537979, -11910481, -66410932, -7089381,
--17114370, -18710488, 23934778, 18955302, -23399518, -18524730, 45294188, -5330055, 14565308, 2172717,
--2570538, -5417565, -5140002, -14942191, -360240, 5083631, 7947837, 5333276, 16060493, -12939663,
--511638, -12612708, -7621420, 4879620, 22865870, 14672145, 20164872, 18118856, -4312147, 6459094,
-10750840, -125091, -18916110, -3554622, 25688736, -4784057, -37227164, -16451335, 3832722, -31503586,
--13793287, -32278826, -22318260, -20224464, 29457570, 20172924, -6698002, 20193862, 7569343, 28543816,
-19013284, 9091372, -50719268, -11396159, 2003602, -44475460, -32711008, -12585865, -8902393, -52065740,
-10915123, 28599114, 38225208, 46017352, -15809775, -30194156, -623844, -30459908, -22863184, -42250132,
--47153908, -33210834, -28191092, 30926448, 1043677, 6120329, -28675886, -29847338, -26982596, -2784750,
-40368936, 51525648, 1024350, -19082540, -14929306, -20962124, -54604604, -24365350, -24543054, -6814503,
--2485176, -12449500, 13772886, -214748, -4675609, -19488414, -25662966, -13349295, -14687178, -22424024,
--5434744, -5849209, -2686502, -6162205, -10710038, 13276818, 7777649, -1597728, -12817793, 8689793,
-14143327, 915365, -13147969, -6806987, 9725417, 2616709, -3368328, -12268037, 9708774, -2625299,
--4518306, 1005022, 7403450, 1875827, -2885681, 1075352, 5609764, -20352776, -49432388, 19510426,
-2560338, -33547452, 31678068, 15848966, 9878962, -7148973, -29992294, -7355132, 1070521, 29628832,
-39228620, 2556043, 10734734, 2811056, 1394791, -1545651, 5451924, -16037408, 55151676, 13523241,
--17789218, -17634062, -7835094, 2762738, 27027692, -12662100, -3932043, 363998, 13742822, -12689481,
-7301445, 1299228, -2905546, -45017164, -14105209, 14970109, 23652384, 8779450, -4955319, -12666932,
--29874182, -2829847, 5001490, -6669011, 616865, -7354058, -19237158, 19949586, -4408784, 7458211,
--20587388, -3824669, 52938692, 4495220, -5797132, 6709813, 6962142, 5531918, 26678190, -9199820,
--11988864, 20426864, -2201171, 12358232, 7395934, 17898740, -6644315, -19044958, 9982578, -8450885,
-1600412, 75348224, 71971304, 32968706, -6376416, -3030636, 9131637, 34534220, 15687368, -9385040,
--1093606, -3765076, -19072340, -19581292, 11159936, 6317360, 2912525, 17655536, -2232309, -8687645,
-10075993, 5020280, 14858976, -20798380, -17561584, -21130702, 3282429, -9041980, 1249836, -3571265,
-7950522, 9693741, 18424336, 11534135, -19523310, -13536126, 7034620, -11132555, -6842420, 2406256,
-6372121, -7164006, -19221590, -1213865, 673773, -707596, 8540542, 3247532, -15521475, 5783174,
-25109452, 29877940, 21509734, 25671556, 17628694, 23279796, -5996848, -279710, 19184546, 35546760,
-3842385, -39765492, -11254962, 7474317, 4684199, -10378788, 28115392, 13403519, 10279467, -10774999,
-33080912, -3172907, -229244, -10309532, 17142288, 10944114, -27227946, -39323108, -11753178, 5272609,
-1142998, -8441221, -36163624, -4648765, 11470247, 1698123, -12879533, -6000606, -11623255, -14635638,
-7180112, 8855149, -23588498, -26361972, -9850507, -32429150, 7409356, 26308822, -25171192, 25247428,
--13514651, -15692200, -28135794, -38758320, -43490300, -41189272, -21778706, -1152662, 14029511, 5881421,
-13953812, -22269942, -48412336, -19755776, -46589120, -80714248, -31536334, 62977644, 108591272, 63234804,
--28167470, -22775138, -98852968, -88778048, 59692528, 9513353, 78796544, 81817520, 84949624, 27913530,
--35690640, -43817256, -48958868, -55614456, -9242233, 53196392, 90516976, 28276990, 8204462, -5284421,
--47152300, -68229848, -46654620, 7681012, 62023624, 28530930, 39663488, 32351304, 10831371, -25151328,
--28183038, 76773, -16291348, 4083977, 29532196, 31857920, 22724136, 3753802, 10795400, -567473,
--22492744, 3369402, 6934762, -4381404, 1958505, -7064685, 43321188, 25021942, 26823682, 16122770,
--17276506, -40717364, -57894548, 7343857, 17742510, 36765456, 36290864, 47937204, 21980568, -37462316,
--47266652, -56312928, -11730093, -1255204, 27839978, 16005196, 7303055, 14925548, -29713658, -82689392,
--56781080, -51486996, -13798119, 5148592, 16405701, -6380174, -13462038, -20138564, -3547643, 7641284,
--24974162, 34968012, 16813186, 31047782, -68272800, 15462956, 9242233, -21020644, 15320685, -15734613,
--7738458, -4717485, -9744744, 29375428, 54209468, -15779710, 10913512, -7589744, 13008382, 27511414,
--8403640, -5077725, -14974940, 7865159, -9488656, -29951492, 21858700, 36791228, -4814659, -19370302,
--17641578, -38903812, -10642392, 29348586, 20048370, 10162966, -42696808, -24917252, -18577344, 37725920,
-32913946, 28679108, -83398600, -55686400, -6668474, 41145248, 88236344, 217433, -105890272, -39073464,
-3652870, 35600984, -2801393, 19471234, 14957760, -46450608, -20144470, -12966506, -27625230, 1757179,
--51984672, 7983271, 20800526, -63189708, -40169756, -19840064, -7889855, 69535520, -229244, -107248016,
-10482941, 14867029, 16550656, 41944112, 19885162, -45964204, 2530273, -2000918, 91822104, 64355788,
--53449256, 48680232, -28365574, 19200652, 50849192, 17905182, -27469000, 25116432, -10803990, 6223945,
-17849348, -2186138, -18469970, 34320008, -21939766, 25058450, -11541114, 13318694, -3798362, 27520540,
--9373766, 21539260, -37780680, -6969658, -31139, -5408438, 12714714, 23336704, -23822036, 48530984,
--18694918, -17289928, -32896766, 23989002, 51968568, 9697499, -67282272, 4991289, -14711874, 32456530,
-16773995, 14338211, -26677116, -2422899, -16753594, 15855946, -6449431, -11470247, -3345780, 21658446,
--4701379, -14345191, -16090558, 11970074, 2684892, 11347840, -6748468, -409096, -12130061, -1708860,
--1904281, 5333276, 2784750, 12815646, 23630374, -56464860, 8009577, -41460392, 7550016, 35193500,
-31114890, 10187662, -20179904, 4037269, -11993696, -2969970, -14880988, -10995653, 7636452, 2054605,
--21660594, -2496987, 11260867, -2410014, 1265942, 4076998, -13819594, -13685913, -364535, 9049496,
-1196148, -22024592, 1830730, 11289322, 3541201, 2621004, 23030152, -2543158, -6148246, 8253317,
-8814347, -15585899, -17283486, 12806519, 2473364, -13272523, 8902930, 3853123, 4310537, -9286793,
-3733400, 10436234, 1253594, -13066901, 17713518, -2157684, -19870666, 593779, 15538655, 4840965,
--13005698, 11823508, 3914326, -18129056, 7446937, 927713, 18500034, -16777216, 1505386, 12744242,
--29372744, 932545, 12676059, -492848, 8784819, -4888210, -18804440, 2491618, -19897510, 18670222,
-9640054, 5260261, -7395397, -7800735, 15425912, -13301514, 13765370, 15117748, -21626770, -7023882,
-925565, 16740172, 261993, -9711458, 6202470, -11761231, -704375, 1699196, 9887015, 672699,
-1626719, -6079526, 10291279, -3447785, -12005507, 10916733, -4847408, 4706211, -2718178, 7870528,
-9948755, -11426224, 2001455, -6193880, 2695092, -6293738, 22121766, -6256157, -12404402, 9975062,
--5584531, -1883343, -6307697, 6519761, 6028524, -8950712, 5013301, 8705362, -4500589, 574989,
--12336757, -27938226, 45817100, 6478422, 20728586, -17812840, 7931731, -3845070, 5557151, 5027259,
--7623567, 3100967, 8421357, -4804458, 18295486, 853088, 635118, 6243809, 6014028, -644245,
--4607963, 7834021, -1161252, -5345624, -1055488, 7873749, -8402030, 1853278, 3882114, -10711648,
-13502840, -2623688, -6415608, 20695300, -8434779, -12096775, 9548249, 5305895, -5632850, 9018894,
-7233262, -2418067, -2835752, -1531156, 2761664, 5226975, 3086471, 48855, -3491809, 10716480,
--11249056, 10281078, 1667521, -1150514, 2918967, 3325379, 3382824, 559956, -10003516, 2930242,
-8763344, -6080063, 46708, 113280, 6693707, -557809, -2495376, 10107132, -5003637, 5480915,
--10282152, -3718368, 10110890, -9429064, 9723806, -2383707, 6428493, 7873749, -8722005, -2865817,
-10964515, -8968429, -404264, 1269163, 3368328, 941135, -1166621, 532576, 886374, 5158256,
--4218732, 1240172, 3275450, -188442, -2149631, 694174, 1951526, -298500, 716723, -1761474,
-2334315, 3272228, -5411659, -733903, 9549860, -4451734, 2774549, -559420, 5470715, 1672353,
--2923262, 747861, -525060, -3015067, -2127620, 11326366, -1839857, -2422899, 1664837, 1390496,
--809064, 2521146, 4670240, 291521, 1260036, 573378, -921807, 835908, 1413044, -1984812,
-1545115, 8590, 10660109, -37832220, -120885072, -6185827, 65093452, 29196114, 138708112, 11800423,
-29266444, 1187559, -40491876, -50996296, -34554084, -62139048, -43487616, -27359478, 954020, 47391208,
-93382256, 68718400, 59799368, 19458886, -32556388, -47795468, -42979736, -50644644, -56171192, -22781580,
--10801843, -4932770, 27354110, 36331128, 27379880, 50802484, 32779728, 12150462, 34064996, 773094,
--14861124, -9822053, -30663382, -62810676, -38213396, -36779416, -37527276, 1941325, 17414482, 12051141,
-46097348, 37824704, 26032334, 37204080, 39528732, 11202348, 11815455, -4227859, -34138548, -47387448,
--36257576, -47494284, -33822868, -11800423, -8411693, 2922188, 25799332, 20236276, 18209588, 36506148,
-30118458, 22183506, 37643776, 10334228, -7799661, -1559610, -15196131, -32760936, -19117974, -41445360,
--52455508, -30878668, -26141856, -11322071, 30341260, 41053444, 38206420, 44167296, 36264020, 20668456,
-19840064, 9667435, -4351876, -11218991, -21153788, -31132070, -31261994, -35234300, -37091876, -31636730,
--10875931, -3725347, 12364137, 31836446, 35336844, 35067872, 40862320, 32592896, 24300924, 20308216,
-6562710, -15809238, -28300076, -45917496, -58760520, -54905788, -43640624, -21888764, 5446556, 29463476,
-40306656, 46540804, 48375292, 41862508, 29458644, 15112916, -9759776, -23766738, -31585726, -36478232,
--32076426, -24023900, -16726750, -6840273, 7540352, 10192494, 13710609, 15955267, 14025216, 11304354,
-8856759, 6091874, 5172215, 2390149, -1968706, -3034395, -3290482, -4902169, -5582921, -6993281,
--8396124, -9071508, -7470022, -5532455, -3078418, 76236, 4412542, 5966247, 4590783, 2843805,
-1946694, 1621350, 0, 0, 0, 0, 0, 0, },
-{
--2763275,
-666257, 3242164, -281320, 294205, -4798016, -2411087, 713501, 6369974, -4101157, 1333587,
--6607271, 6790880, 452045, 2491618, -775242, 1080184, -1268626, -2324651, -5742372, 2439005,
--5757404, -2687039, -3244848, 3278134, 2608119, 1260036, 2718178, 5120675, 343061, -4633196,
-3062312, 507343, -208306, 2511482, -911607, -1673964, -6774237, 1111323, -1932198, 1495186,
-2863133, -3670587, -1452773, 3364033, 1066763, 410169, -3441880, 8726300, 5266704, 866510,
-4231617, 3478924, 3378529, -7950522, 514859, -758599, -2090575, 1968706, 1340567, -1262184,
--1467805, -411780, -2362769, 2367064, -878321, 4651987, -149250, -1167157, -2177012, -4037806,
--718333, 3140695, -111669, 732829, 3699578, 1022202, 4275640, -66035, 670015, -419296,
-4595615, 4076461, 4124779, 911607, 22012, 1843078, -64425, 583579, 113817, 227096,
--314069, -1248762, -1048509, -214748, -1204738, 606127, 652298, -504659, 1368484, -507343,
--360777, -253403, 579284, 175557, 1227824, 126165, 46708, 119722, 1584306, 787590,
--88047, -394063, 102542, -194884, 410706, 1633161, 378494, 2076080, 7222525, -3497177,
-2413772, -1988570, -3126736, -1280437, -2164664, 3947075, -3255048, -6040872, -1541893, 1596117,
--5036386, -3040300, 5691369, 9834938, -1655710, 3762391, -3369939, -3543885, -156229, 1042066,
--431644, -95563, 3649112, -6227166, 2034741, -453119, -1305670, -5247377, 457951, 129923,
-2960843, 893890, -4111894, 5431523, -4316442, 5068599, -569083, 926639, 2057289, -586263,
--2532957, 3966402, 971200, 5296769, 803696, -4651987, 8452496, 6731825, -2345589, -678605,
--1631014, -5864778, -3180423, -956167, -1015223, 2385318, -3238405, 273267, 2313377, 24159,
--93952, -360240, -561030, -3193308, 5106179, 181462, -117575, -1594507, -576599, -4671851,
--4178466, 1400159, 3404299, -408559, -893890, 18790, -44560, -2379412, 4570919, 651761,
-1505386, -1165010, 1239098, 812286, -201863, -54224, -213675, 93416, 1072668, -571231,
-674310, 767725, -156229, -150861, 553514, 1260573, 1078574, -746251, 287763, 415001,
--622233, -301721, 1701881, -201327, -103079, -1306744, -1259499, -2028835, -788127, -7576323,
-9218074, -2070711, -1138166, 6571300, -2637647, 3364033, 14666240, -1817308, 389768, -5681705,
--4595615, -7065221, 4016331, -2949569, 1937030, 3811247, -4466229, -3826279, -2815888, 262530,
-1401233, -5506685, -2186675, 2328409, 1995549, -2217277, -936303, 3276523, -3487514, 481573,
--1757179, -676457, -2442763, 1987496, -2245194, 851477, 1905355, -955630, 6138045, 205622,
--887448, -4627828, 497142, 6560026, 865973, 2178085, -6101538, -8698383, -3189013, -7490960,
--6615860, -227633, -2882460, -312996, -8015483, 6759742, -7424388, 1029182, 5007395, -4620311,
--7755101, -5536750, -1666447, 5064304, 4495220, 6796249, -4079682, -3594888, -2882997, -2483028,
-4909148, 1222455, -2095944, -1150514, 2312840, 2632278, 769873, 1185411, 1673964, -424665,
--2895345, -513785, -1931662, 664646, 202937, 577136, 525060, 102005, 1154809, 112743,
-1353989, 91805, -1092532, 1379221, -1689533, -1118839, 293132, -477278, 1388885, -911070,
--691490, -327491, 151398, -602369, -1027571, 872952, -349503, 634045, -872952, -841277,
--1026497, -1185411, -757525, -1081795, 8020852, 832687, -3226057, 453656, -2670396, -595927,
-5613523, 9414031, -3219615, -3296924, -8543764, 1079111, 2145336, 4858682, -3221762, 5238787,
-831076, 8069170, -6476811, 1034013, -12230993, -1351841, 1462973, -2995203, -2749853, -1086627,
-4510253, -3699041, -6427956, 1817308, -9431748, -2064806, -4529043, 2072322, -1001264, 3182571,
-423591, -7202124, -7764764, 202937, 4143033, 7681012, -1522029, -3140695, 6448357, -7115687,
--3857418, 3416647, 3070365, 5078262, -4850629, 168041, 1978369, -3078418, -1022739, 2992519,
--4399657, 5731634, -2487323, -1083406, -6118181, -5112085, 2476586, -28991, 131533, -883153,
--3746822, 3542274, -2348273, 4408247, -57982, -5872831, -6123550, 2229088, -3069291, 1078574,
--8722542, -8369281, -1309965, 7840463, 79457, -1640678, 416075, 1112933, 865436, -381178,
-1282048, -4119411, 793495, 669478, 1272921, 1556389, 1782948, 900869, -2265595, 144418,
-2059974, 911607, 581431, -1168768, -1366873, 301721, 34360, -496069, 1942399, -63888,
--92342, -1346472, 2417530, 1931662, -73014, 144418, -1123671, 656593, 788127, 301721,
-155693, 753230, -1006096, 4831302, -13042742, 3058554, -5651640, 4830765, 5515275, -6151467,
--11433203, 1637456, -1505923, 7286949, -4337380, 10540387, -4403952, 6984154, -8581345, -3161096,
-3617436, 5200132, 1471563, -9127, -5256503, -665720, -4131222, -5164162, 2900714, -4403415,
-1755031, 1045288, 2157684, -2491081, 4913980, -890132, 4232154, -921807, -8041253, -1316408,
--2558190, 843961, 8070781, 536871, -672162, -389231, -3242700, 2815351, -3055869, 4281546,
-4619774, 1701344, 1789391, 8142185, -1988033, -1433982, -6468758, 4654134, 4097399, 891206,
-1070521, 886911, 360240, 2408403, 4962835, 3337190, 1905892, 1836099, -1237488, 6481106,
-2219961, -1292248, -4931160, 2552821, -1449015, 9448391, 5364414, 1227824, -4316979, -1579474,
-7194070, -2745021, 963683, 4198868, -2288144, -2845953, -5668820, 765578, 2107755, -407485,
-2765422, -2185602, -809064, -1693828, 2036351, -128849, -604517, -2686502, 685047, 745177,
-1670205, 1979443, -622770, 365609, 2168422, -119185, 2200097, -105764, 688805, 3235721,
-695248, 3324842, -213138, -670552, -169114, -240518, 147103, 278636, -2436320, 964220,
-2019708, 253403, 837519, -549756, -16821240, -9130027, 3398393, -3272228, 6788196, 6773164,
-10213432, 4235375, 4140349, 2531346, -12257837, -2731062, -1684164, 1115618, -1217086, 3833795,
-2724083, -4702453, -3756486, 3166465, 5985574, 7552700, 6508486, 8577050, -4684736, -4669703,
--6215892, 6616934, -3811784, 5469641, -1375463, -269509, -5822902, -3477850, -3329674, 4969814,
-6111202, 1092532, 6108517, 8753680, -3471407, 2224256, 10257456, -5144297, 3329137, 3492882,
-383863, 7726646, 9881646, 7529615, 17139604, 3198677, -2436857, -3160022, -2942590, -171799,
-3012383, 5211943, -954020, -1665374, -1820529, -4580046, 1921998, 2496450, 4434017, -10687489,
--1478006, 2720325, 7089381, 4964446, -9151502, -6757594, 1715303, 1723356, 7394860, -6509560,
-398358, -645319, 769873, -9268003, -2527052, -3183108, -2269890, -3800509, -1620813, 306553,
-3544422, 6979, 180926, 1403917, 1683627, -3530463, -582505, 279710, -8590, 1281511,
--1248225, -2301566, -1597728, -1753420, 2496450, -2410551, -1197222, -2776696, 670552, -582505,
-1762547, -2539936, 1040456, -848793, 1020055, 973884, 145492, 2232846, -2141041, 1109712,
-1179505, 387621, 2540473, 4088809, 8159901, -1026497, 1688459, 6979859, 10236518, 5775658,
--11240466, 63351, -11960947, -8476118, -5121749, -970126, -7307887, 8784282, 3267933, 5210332,
--14884746, -1043677, 9783936, 4987531, -4347044, -6243272, -3799436, 3830574, -11379516, -639413,
--7301982, 11253351, -1448478, -3256659, 1227824, -374736, -1893544, 2007897, -2935073, 5239860,
-3740380, 7519414, -522912, 408022, 11600170, -3634616, 7776039, -1232656, -1326608, 20401632,
-2462090, -2160369, -4567161, -15737834, 1697049, -16130287, -2682744, 17033304, -4764193, -3283503,
--11783780, -3443490, 457951, -6331319, 3454764, -595390, -8625368, 9227200, 3332358, 3018825,
-2572686, -6388764, 7071664, -10965588, 3218541, 4240744, 504659, -1434519, -4405026, -3473555,
--4487167, -1432909, 3692598, 4715874, -1140851, -3821447, -2229625, 5254356, 2193655, 10038949,
--129386, 775778, 4126390, -396211, -1797981, -1368484, -1217086, -1086090, -1603097, 1196685,
--1836635, -53150, 2094333, 769336, 2135136, 2030983, 1668595, 199716, 3077881, 2206540,
-1359894, 948114, 972273, -3141232, -2625836, 2312303, 385473, -1930051, 406411, -2197413,
-701690, 2551211, 985695, -408559, 993211, 2190970, 551366, -1740536, 1008244, 6735046,
--13292387, 5866389, -4629438, -6674379, -6358699, 5180805, 6593312, 3884261, 11364483, 8410083,
-1774358, 3487514, -8742406, 1887638, 4071629, 8836895, 1784559, -4097936, 3286187, 4179540,
--7827041, 1253057, -8031052, 6435472, 5870147, 7533373, -7137162, 4515621, 8056822, -3503620,
-2146947, 10669236, -233539, -6445672, -5119601, 2456185, -1658931, -6551973, -2646237, 226023,
-1641214, 3713536, -4494684, 7479149, 4574677, -1584843, 8994198, -996432, 3466039, 11775190,
--12316356, 22997402, -10448582, 3251290, 6992207, -2284923, -1188632, 3003256, 15595026, -740882,
--2058363, -357019, -3593814, 7639673, 8539469, -2600066, 3703336, 3110630, 2843268, 5280126,
-6743099, 655519, 7284802, 1658394, -6094559, -9408126, 2361158, 1044751, 4451197, 1970853,
-14440217, -1340567, 8103530, 6572911, -4361540, -8070244, -872415, 1035624, 2208687, -2112050,
-3779571, 1846836, -3437585, -855772, -3278671, -1129040, 2181307, -972273, 3179350, -674847,
-1194538, 901943, -1352378, 1748052, 1961726, -2747169, 2001455, 1385127, 682900, 784905,
--15569, 661425, 3518652, 1177358, -1133871, 727997, 1028108, 1806571, 2199023, -543313,
--2291902, -580894, -1992328, -1451699, 2622615, 7561290, 9972377, 6111202, -10686952, 20352240,
--6459094, 3816079, -15010374, 5896453, -13277891, 10197863, 1024887, -2906082, -7526930, 9634149,
-1263257, 6123013, 6355478, 3212636, -11181947, 5634997, -6779606, -1305670, 5003100, 5401995,
-1246614, -2146410, -11198590, 1483374, 10268730, 1074816, 6640557, 7374459, -11688217, 6347425,
--5951751, -5938329, 8591545, 9454297, 4939213, 5281736, 1472100, 5057324, -12039330, -5454609,
--3853123, 253940, 12790413, 6051072, 5061619, -1042603, 5618354, -385473, 14092325, 5104032,
-5340255, 2052994, -795643, -20969104, 7728257, 4824322, -1936493, -1589138, -15584289, 29528,
--5958731, 3606162, 13566191, -2399813, -7766912, 15697569, -708670, 8807904, -5272073, -77309,
--9867687, -1049046, 195421, -17236778, -5078799, -3092913, -7681549, -3713536, -1502702, 926639,
-8578123, 478352, -190052, -1813550, -4402342, -874026, 810675, -1792612, 629750, 38655,
-2318209, -4186519, -1554241, -717260, -3665755, 16106, -2364916, -1700270, -1176821, -3179887,
--1501628, 3299072, -1132798, 418222, -916976, 3582540, -128849, 1502165, -2420214, -5773510,
--1638530, -470299, 2447595, 766652, 3467649, -469225, -1030255, 2655901, -3527242, 4278861,
--75162, 13392782, -11476153, 1711008, 4892505, 6077379, -19942606, 13291313, 3738232, -14168560,
--9048959, 7782481, 17833242, -6235219, -3202435, -12263205, 25516938, 9931575, 1619203, 4277788,
--13349295, -8632884, -530428, 1144072, 13250511, 2899103, 10222559, 11488501, -468688, 742493,
-8010651, -2071785, -8480950, -8108362, -2040646, 11373073, -6097780, 14379014, -6626061, 21100638,
-9399536, 17024176, -4574140, 2779381, 13666586, -10587631, 6385006, 6183679, 5811628, -6051609,
-7289097, 1786706, 2341831, 6227703, 12993887, 10931766, -11041824, -2561948, 5721970, -10767483,
--6834904, -2825015, -22069152, 5936719, -10899553, -6822556, 2149631, -2714956, 7579544, 14103062,
-9041980, 5714454, -7588134, -1775969, -448287, -14926085, 2745021, 1289027, 18487686, 3994320,
-4166118, -3987340, 14283987, -112743, -401043, 57445, -4638028, -2110440, 603443, -840203,
--5029944, 474594, -1292785, 919123, -6002754, -6504728, -2139431, 5197984, -863825, 2026151,
-1963874, 1607392, -431107, -1376537, -1803349, -3608846, -6029061, 2068027, 308164, -1476932,
--7125351, 5239860, 3563212, 2024003, -600222, 437550, -2436857, 1778653, -1294396, -2351495,
-818728, 3025805, 1821603, -1893007, -477815, -777926, 2218888, -15928960, -23499376, 12692702,
--9574019, 10402411, 3399467, 5025649, 6163278, -15799574, -28711856, 2520072, 4148939, 16152298,
--15950435, -17512192, 15091978, -6055367, 6866579, -3328063, 3597035, 2361695, 3984119, -7998303,
-3853660, -1184337, -2486249, 9933722, 3733937, -1474248, -12939663, -1810329, -357556, -2430415,
--602906, -7056095, -17161616, -7684234, 12628814, -5422396, 6238440, -9792525, 7237557, 3661997,
--105227, -4962298, -21281562, 11718281, 11461657, 14638322, -10251550, -4422743, 20014010, 17593260,
-8193724, 3726958, 11329050, 4082903, 10185515, -5520644, 8854075, -16923782, -1028645, 4621922,
--4342212, 19968376, 827855, 10879689, -6489696, -10862509, 23222888, -479426, 9251360, -3158412,
-382789, -27349278, -2237678, 5699959, -10458782, 12739947, 9799505, 2295660, -5513128, -20868172,
--376883, -4331475, 5242545, 6194954, 1124208, -2644626, 4957466, 97174, 2474975, -1441498,
--6201396, -2423435, -5653251, 9914395, 3165928, -339302, -122943, 1118302, 9368934, -1748052,
--2131378, 1285269, -633508, -35433, 4260071, 2113661, 3842922, -2842195, -246961, -4459787,
-942208, -103616, 4029216, 3739306, -4228932, 6822019, 7239704, -5749888, 555125, -11770358,
--15421617, -4474282, -3608846, -26411364, -24774982, -6487548, 125091, 18656264, 15177341, 15021111,
--5802501, -2408940, -3753802, 16037945, 6893960, -6722161, -1185411, -5350993, 11601244, 9006010,
--6688338, -9368934, -8598525, -17568026, 7344931, 495532, 503585, 3841312, -2622078, 6670084,
-24719148, -14061723, 7457137, 1480690, -9519258, -5448703, -11303817, 4294431, -5020280, -5675800,
-12803298, 1578401, -4261682, 12927852, -1750199, -5697811, 4504347, 9434433, -5181878, 10138807,
-18205292, 17558364, -11988327, -158914, 4393215, 9898289, -15183246, -3157338, -4186519, 18938122,
-8076686, -2032593, -11503533, -12767864, -11349451, 17105780, 14168560, -27074936, -22586160, -17127256,
--12058658, 4096862, -10874320, 6621229, 1817308, 2698313, -21776022, -6972880, 19712290, 15205795,
--6585796, -13970455, 13622563, 7144141, -1622424, 239444, -1720671, -3301756, 7750806, -6924024,
-1709934, 1203128, -271120, -4998268, -9131637, 1782948, 7454990, -713501, 837519, -3180423,
-7082938, 7747048, 781684, -1007170, 2627983, -258772, 3148211, 3389266, 4891968, -6515466,
--603980, 2414309, 25770, -4034048, 1116155, 8216810, 7655243, -2882997, 5874442, -8923868,
-2274185, -2862596, -2449742, -3557844, -5556077, 21782464, 17156784, 10626823, 1605244, -14322105,
--7465727, -2260764, 5814849, 9010305, -12679280, 3227668, 731755, -10842645, -5156645, 8631811,
--6464463, 6847789, 2918967, 8063264, -10124849, -103616, -22543210, 3307125, -28498718, 11636677,
-11508365, -11114838, 13000866, 15502684, 400506, 4363687, -18396956, 10746545, 1020055, -7684234,
-9881646, -2420214, 81604, -251792, 1156957, 19087908, -2226404, -108448, 23449984, -316217,
--10924249, -31144418, -25611426, 28308130, 17609366, 6912750, 7075422, -11961484, -24010478, -11843909,
-3717831, -9279277, 18644454, -1088237, 2412161, 20110110, -4221953, -6360310, -4618701, -12809740,
--21686364, -17245904, 48760228, -23808614, -10820633, 13923210, -24817394, -17904644, 17633526, 24753508,
-8100845, -4611185, 29148870, 14029511, -23601920, -8251169, -13218836, -12903155, 26491358, 1829119,
--17791366, -12327630, -13867913, 3783329, -2930778, 8007967, -286689, -4184909, -6552510, 498216,
-7266548, -4059818, 3309272, -3958886, 3573413, 3231426, 10152766, -4095251, -1586990, 8684424,
-606664, 4386236, 4482872, 6165426, 1080721, -3779034, -2158758, -1052267, -1570347, 3733400,
--1292248, -4225174, 8157754, 8420283, -4813048, 2059974, -5466957, 1823751, 1899449, 5146445,
--1443646, -645856, -2757906, 2590939, 6003828, -20007032, -14753750, -10281078, -18305150, -1606318,
-17434882, -1212791, 3623879, 8606578, 5728413, -14725832, -7104413, -12161200, -6489159, 15705622,
--4736275, -1660542, -2099702, 9541807, 9515500, 28307056, 4549981, 20849918, -1168231, 7067906,
--11283416, -8485782, 7502234, -14370424, -15982647, 573378, 5097590, -8179765, 6628745, -9584756,
-2986613, -25296820, 14194867, 7964480, 11618423, 1488743, -10258529, -21187610, -7527467, -1846836,
-17552994, -13289166, -7847442, 4937065, 40082784, -11020349, 40746892, -24922622, 9904731, -9161165,
-17905718, -7038378, 30925376, -29000692, 44269300, -4138201, 9139690, 19185082, -32753420, 29286308,
--34988416, 23686744, -57039312, 30988726, -29301878, 26045756, -38240780, 33697240, 1174674, 21857088,
-9482751, -17809618, 15566572, -12741557, 38717520, -17578228, 6405407, -23039278, 6287296, -1506997,
-4275640, -8216273, 10771778, -10562398, 7640747, -3719442, 2484639, 3291556, 3449933, 4515621,
--2601140, -6064494, -4918275, -5810554, -13393319, 7785702, 2014877, -9194451, -4265440, -2759517,
-6001680, -10240813, 9788230, -7838852, 1969243, -4192962, 4771172, 1609539, -73014, 14848776,
--13120051, 8042863, -12677133, 19139984, -3623342, 18697604, -7347079, 5847598, 8455180, 2835752,
-2922725, -10201, 8956617, -13347685, 14645302, -10181757, 9639517, -17569100, -15916612, 18538690,
-31975494, -26477936, 40533216, -2346663, 2684, -1552094, 7046431, -12053826, -8850317, -18061948,
--4028679, 582505, 52613, -92342, 15943455, 2728378, 17478906, 17095044, -10858214, 6289980,
-36441724, 11898670, 7820062, 5460514, -31575526, 1605244, -5101348, -3965866, -28954522, -6136435,
-16675211, 4694936, 5561446, 8364986, 21123186, 5493263, -6483790, -2175401, -1791001, 7898982,
--14330158, -8852464, 21814676, 13502303, 10174778, 16820702, 12470974, -7350300, -3643743, -25143812,
--11002632, 10197863, 8096550, 18946712, -13636521, -6833830, -4759361, 13919452, 8200167, 12491912,
-5207111, -9940702, -9161165, 31337156, -9552544, -30508764, 7089381, 22016002, 15154255, -434865,
--2590939, 2688113, 5098126, 3080565, 28066000, -33782604, -28766080, 3310883, 11432666, -14565308,
--7441568, 2412698, -11375221, 5369783, -5528697, -1487669, 3073049, -2240899, -7617662, 233002,
-6447283, -4161287, 133681, -11229192, -1881196, -9889699, 7304129, -3189013, 6707665, -4070019,
-4224637, 1651952, 5680094, 8674760, -8782134, -4057670, -2556043, 6817187, -4207458, -8101382,
--14593762, -139586, -5767604, -2287607, 2341294, 1372779, 530428, 2783676, 4930086, -1051193,
-14944876, 1721745, -1060320, -11585137, 2120103, -2229625, -506269, -12412992, -64105608, 17726940,
--7802882, -4062502, 15737834, -10860899, 16887274, -2265595, -27775016, -5060009, 2710661, 9760313,
-12417824, 2893734, -19680078, 19492710, -7634841, -1767916, -12090870, -5437429, 10459319, -2084670,
-9331353, 15717433, -3627637, -20288352, 4512937, 22272090, -20723754, 7631083, 17297980, -3141769,
--13703630, -25588342, -17255568, 18054432, 46277200, -14244259, -18444738, 52128556, -3394098, -7504382,
-37528352, 21844204, 18653580, 15064598, 6195491, -11029476, 19072876, 17752710, 12245489, 5662915,
--34482144, 21545704, 19084688, -36420248, -21047488, -13086765, -10184978, -10035191, 39758512, 19840602,
--22707492, 21239688, -8395587, -21251498, 9271224, 10807748, -9371619, -9009768, -33319820, 3744675,
-5710696, 24379844, 11698417, 3013993, 20405390, -16207059, 42193760, -44841068, -52284784, 36916316,
--22556094, -1407676, 25914758, -16327855, -11215770, -3238942, -3067681, 3209951, 15905338, 7791071,
--12995497, -810138, 6202470, -1569274, 8842801, -364535, 4894652, 937914, -6892886, 3689377,
-14112189, 9692667, -603980, 1867774, 9439264, -1537061, -1112397, 2369211, 21845278, 11184095,
--3499862, 4749697, -19359566, -874026, 5115843, -8946417, -12002823, 11300059, -5188321, -365072,
-11649025, -10142565, 4480725, -1760937, -2895882, 14420353, -8177081, -17141752, -69851200, 21368000,
-39265128, -24485072, -5171141, -19061064, 40400072, 27138288, 17003776, -3321620, -14254996, 2816425,
-16225850, 7505992, -7140920, -1642825, 22230214, -1563905, -8324721, -30012694, -14283987, 25142738,
-14571750, -16016470, 12650826, -11625403, -3757023, 7473243, 7000797, -7043747, 4482872, -26327612,
-7402376, 35355632, -4613332, -7012071, -34953516, -21048024, 16792786, -27590334, -15044197, 6181532,
-6878390, -8609262, 22723062, 21443698, -22309670, 8176544, 12256226, 35617628, 32615982, -5289789,
-10592463, -988379, 37305548, 16147466, 15060303, 35340064, -15949898, -23286776, -11984569, -29778618,
-24892020, 11673721, 12099997, 6369437, 42322072, -28226526, -6680822, 17996450, -10143102, 19984482,
--1093069, 2222646, 9240085, -24669756, -37329172, 4553202, 7043210, 40787692, 31016644, 614180,
--30314952, -4913980, -33100240, -333397, -1166084, -9406515, -8572755, 4329864, -2974265, -2632815,
--8487929, -5589900, -7553774, -4585415, 1016834, -8990977, -8192113, -1503775, 8106214, 4041027,
--10847477, 9579388, -5559299, 17918066, -5789616, -16251083, -6025302, 7833484, -5117454, -12374875,
-13809394, -3180960, -12846784, -19867982, 2915209, -3351148, 2188823, 4161287, -7691750, -6660958,
--17360258, -4023848, -4680441, 1010928, 3064996, 6142877, 5380521, -13336947, 16343424, 27683212,
-24183350, 24907590, 32028644, -18237504, 25256018, -48977124, -21324512, 18702436, 4546223, 35976256,
-16503412, 30696668, -13174275, 4161287, -26414048, 18129056, 29879014, 27166206, 2862059, 19284404,
--47017544, -30601106, 29408178, 8628589, -29252486, -15081241, 3733937, 43348032, 13494250, -17501992,
--22070226, 4499515, -6343130, 26694832, 28860032, -2746632, -4528506, 5793911, -8009577, 34492884,
-10027138, -8075613, 7069516, -16291885, -9581535, -77009840, -26069378, 13822279, -11924977, -11460046,
--243203, -13831405, -13793287, 35409320, 23775328, -17722646, 32356136, 66867272, 13865228, 47648904,
-6707665, 9740449, 35032976, 23125714, -18670222, -21254182, -37401112, -23260470, -2337536, -36958732,
-13852880, -4392141, -35721244, -25646324, -25522306, -32169306, -19433116, -12891881, -17013976, 5131412,
-30718142, 37405408, 19821810, -3827890, -27103392, -3419868, 1203665, 2373506, -13127568, -2322504,
--8817568, 7345468, 10667625, 1212255, 7854422, -202937, -5140002, 8971113, -9483288, 1256815,
-8650601, 18329846, 2675765, -136365, 12502113, 5253819, 33258616, -8265128, -26756572, -1363652,
-18346490, 3263102, -7152195, -8188355, -21713744, -20688320, -11546483, -8228621, -3626026, -12419435,
--17765596, -19087908, -10272488, -1538672, 2831994, 25296820, 18508088, -6786049, 29644938, 52326660,
-36423472, 25478820, 16143708, 9997073, -12641162, -8347269, -12603582, -11652246, -454730, 30668214,
--3143379, 26079578, -16570521, 7086159, -57247084, 16365973, -8539469, 29709362, -7157563, -34163244,
-34726420, -12790413, 5475547, 19851338, 14891188, 31813360, -4636954, 5012227, -5827734, 36245228,
--7468412, 7046431, 25294136, -28723668, 24944634, -7030862, 15335181, 24223616, -6269042, 5610301,
-4214437, 2704756, -7546795, 10929081, 10580115, -3991098, -13907641, -2357937, -16244640, -5133023,
--2924873, 13711683, -6701223, -25924960, -17022566, 27828166, 28106266, -26103200, -21849036, 33274722,
-39064340, -14756971, -3612604, 28225988, 1371705, 14643691, 20604568, -46760920, -13652627, -2940979,
-45802068, 4430259, -2987150, -44548476, 9148280, 17850420, 11791833, 1844152, 12314745, 4883915,
-6482180, 57365732, -1491427, 3244311, 33894808, -19903952, 22612466, 4423280, 17130478, 11237245,
--25642028, -8309151, 31096100, 20644298, 12085501, -7077033, 11054709, 5614596, 272194, 4327717,
-8137353, -3517578, 13724568, -8609262, -2080375, 14093935, 8494372, 3036542, -28768764, 2837363,
-14666776, -10694469, 5427228, -25597468, -16052977, 18351322, 9134322, 15126875, 13331578, -10070625,
--27949500, -7671886, 10033580, 24849608, 15327665, -3455838, -5076652, -8442832, 20642686, -178241,
--3692598, -8076149, 11134166, 4722317, -4016331, -20374788, -12597676, 13196824, 13409425, 9430138,
--13715978, -19694572, 10409390, 26356604, 12678207, 1924682, -12663711, -3056943, 6609418, -233002,
-1020592, 1533303, -2685428, -6043019, 33007898, -55984360, -3893925, -47370804, -43910672, 10998874,
-9220758, 8008504, 1068910, 41718628, 23753854, 53720376, 58784144, -6492917, -28964722, 6124624,
--7894687, -5392869, 12703440, 5680094, -4759898, -27089970, -29659970, 32080722, 14780593, -3657702,
-4864051, 5214091, 2891050, 5909875, -3093450, -7681549, -43845172, 964757, 25052544, -7360500,
--33822868, -11060078, 27615566, -51386064, -17772038, 32517734, 19568408, 38833484, -1229971, 2857227,
--35903780, -36107792, -45645300, 38366944, 54154704, -71448928, -35755604, -3696356, 36169532, -28311888,
--4764730, 65614216, 26520886, 16689169, 43242268, 31769336, 47480864, -17139066, 47202764, -7144678,
--37321656, -54567024, -12985834, 21007222, -43465068, -8395587, 9133785, -9052180, -15432354, 9322763,
-8165270, -29679298, 21986474, 10950556, 32035624, -7660611, -31799400, 39497592, 7748121, -35803384,
--19327, -8242042, 14741402, -15782394, -16545288, -8250632, -1906429, -394600, -12608950, -14848776,
-11387569, -15493558, -380105, -15306190, 8240969, 14817100, 2057826, 22086332, 14801531, -21946210,
--8492761, 165356, -20148766, 3490198, -3634616, 8065412, -5513128, 7134478, 18928994, 229244,
-3428995, -13289703, 20374788, 13327820, -14900852, -4103305, 14443975, 14047764, -2336999, -21055004,
--3056943, -41513008, 31920734, -2742337, 9736691, 12335146, 11941083, 359704, -14016089, 22631256,
-5645735, 21843666, -4744865, -46437724, -4253628, 13365938, -15296526, -17021492, -10440529, -15691663,
-18865644, -4890357, -16535624, -970126, 17548162, -23671712, 16520055, -8233989, 8772471, -23318988,
--5839545, 9408126, -2033667, -2177549, 2841658, 13042742, -2347737, -2143189, -16304770, 8085813,
--4497368, 2594160, 5005785, 1690607, 12036109, -17679696, -13516799, 18478560, 15923591, -22193706,
-10550050, -17938468, 20645908, -17331804, 7772280, 5322002, -14687714, 32478006, 3133716, -36166308,
-16637630, 4363150, -27986006, 15675557, -10289668, 16696685, -24266028, 12429098, -25702694, 11777874,
-18249316, -16552267, 9466108, -17586280, 593242, 587337, 1659468, -11557757, 206158, 8794482,
--511101, -15874736, 11957189, -9947681, -21378736, 9200357, -9501005, 4650913, 9930501, -7560216,
--4584341, 1788317, -1418413, 6457484, -3404835, -2357937, 5746666, 7325604, 2445984, -7366406,
--4413079, 7074885, 4219806, -16670379, 15205258, -2183454, -5710696, 2123861, -1209033, 3600256,
-8149164, -2015413, 15447924, -4563940, -6740415, -7536057, -3041911, 1488743, -7327751, 1949915,
--2499134, -2978023, 1851131, 2501819, -3056406, -69256, -874563, -3232500, 3147137, 2126546,
--3587372, 9670119, 20732344, -9463960, -110973368, -200787040, -66302484, -155467616, -153792576, 83845280,
-17956184, 116351736, 262075680, 236206560, 193795904, 236546928, 145019040, 32918776, 46062988, -32902134,
--174462112, -172430592, -128863512, -167526272, -114657912, -23223426, -77175192, -106736376, -45950780, -12767864,
--55155432, -25900264, -431107, -27255862, -49018460, 11100343, 43574052, -13881871, 60214904, 89604296,
-2846490, 17825188, 120952720, 60271812, 1391033, 113373176, 92836792, -20972862, 44311176, 105891344,
--1346472, 9254044, 149197504, 80427024, 33837364, 180249584, 198587472, 97966056, 188301568, 233979616,
-61855584, 31953482, 95691872, -37376952, -112261320, -65275448, -146273168, -260020544, -259424080, -294641184,
--392551424, -395449440, -379395936, -388260736, -347292128, -297739488, -238337936, -156064624, -79091824, 38930120,
-172355424, 227028752, 276987808, 374867968, 329790144, 294760928, 329285472, 243121456, 113817704, 133605696,
-150991728, 55975236, 73049880, 151125936, 74445208, 14232985, 65090768, 58520540, -32891396, 121333,
-40793064, -59744604, -76190576, 17442936, -15067282, -24873766, 84329536, 72316512, 7628399, 65733936,
-95432024, 16763257, -7106561, 5338108, -97590248, -176729312, -184493536, -235586480, -296375840, -281000928,
--251261488, -229061888, -204137648, -150024288, -142177376, -155504656, -103988136, -34077880, 9470403, 38356204,
-102005472, 122057064, 138254464, 247564064, 288730240, 266666464, 246146720, 195955200, 124162672, 106183936,
-90483688, 55253144, 39558796, 36326832, 14534169, -3498788, -4943508, -10708964, -21847424, -27338004,
--22399328, -31034896, -42196980, -40799504, -39538932, -44727252, -42505680, -32320166, -25908316, -19180250,
--15596100, -14795625, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--8479339,
-937377, 5580773, 1907502, 3636764, -5305359, -2907156, 239444, -940061, 1421097, 4420058,
--10628970, -74625, 3493419, 2098629, 3220152, -3077344, -4296041, 4645544, -78920, 1294933,
-2895345, 3843996, 1417339, 802085, 3456912, -510564, -1107565, -2987687, 1609002, -840740,
--486942, -1551020, 1986422, 5056787, 20401, -1050656, 2378875, -3234647, -4840965, -2675228,
--981937, -3139084, 281857, -725850, 2031520, -1958505, 563714, -3927748, -379031, -3229816,
--155156, -1479079, -1276679, 1644436, -1864553, -189515, 2657511, -1397475, 3169686, 3842385,
-278636, 5193689, -2656974, -177167, 2482491, -898185, 1675037, 2360622, 1275068, -2731599,
-1074816, 1250372, 878321, 166430, -2284923, 3031173, -818191, 1448478, -499290, -627602,
-190589, -3153580, -260919, -2450279, -1142998, -107374, -427886, -83752, -244813, -1316944,
-1567126, 183610, 438624, 110059, 875100, -534187, 1105417, -81068, 470299, -180926,
--482110, 623844, 60130, -184684, -13959, 880468, 188442, -153545, 542777, 285615,
--113817, 14093398, -3992172, 1350230, -3084860, -259846, -1294933, 1615445, 1084479, 4826470,
-1474784, 836982, 1861332, -1179505, -9757629, -9336185, -2927020, 1236951, 2842732, -2376191,
-518617, -3041911, -1095217, 142271, 1639067, -4147865, -4518843, -1342714, -301721, 2419140,
-784905, -1023276, -3266860, 562104, -1806034, 79457, 2261300, -3311420, 1569811, 2918967,
--2304787, -6068789, -1596654, 2188823, -376347, 1774895, -311385, 1534377, -297427, 1687385,
-315680, -5666136, 1096827, 2298344, -908922, 1553168, 250182, -341450, -1135482, 42413,
--3344706, -311385, -929324, -4218732, -723702, -147103, 3718368, -3708168, 6126234, 7128035,
-5606543, -2452426, -1155883, -1313186, 2710124, -1050120, -1556926, 1688996, -4060892, -3693135,
-434329, 3245922, -117038, -1666984, -3633542, -2151242, -2773475, -1469953, -2560338, 936303,
--1539746, -422517, -1614908, -854699, 73551, 834297, 57445, 858993, -602906, 51540,
-677531, 348966, 531502, 539555, 310311, -684510, 679142, -13308493, -86436, -2052458,
-918049, -459562, -6890202, -1318018, -1455457, 2153389, 3347390, -4612795, 3682935, -1174674,
-2536715, 2549063, -1388885, 5540508, 334471, 245887, -965831, 962610, -1379758, 1022739,
--1549946, 206695, -3624416, 389231, 3986804, 537, 1676648, 4204236, -4138201, -4355634,
-1813550, -1977833, 3358128, -3401077, -1031866, -7111929, -5489505, -4752382, 2069101, 613643,
-2522757, -2583423, -1846299, -536334, 4457639, -4937602, 2033130, 862215, 360777, 2505040,
--1730335, -2261300, -2979097, 1816771, 958851, -4367445, -4822712, -5598490, -170725, -1201517,
-1816771, -252866, -1065689, 526134, 745177, 2507187, -6701223, 830539, 3802657, 5657009,
-5798206, 4800700, -854162, -3535832, 5195837, 1592359, 1001264, -2595771, 1494649, 1078574,
-149250, -640487, -1548873, -223338, 1770600, -1371705, -2284923, -926102, -989453, 388158,
--200790, -549219, 1541893, 129386, 1971390, -178241, 559956, 1332514, 1234803, 977642,
-693100, -783295, -886911, -276489, 774168, -144955, 755914, -530428, 1330366, 1135482,
--1180042, 80531, 81068, -1899449, 1431298, -7771207, 4826470, -4118337, 5751498, 7489349,
-4669167, -79457, 2223719, 512712, 6133750, -3341485, -3356517, 1761474, -931471, 2516314,
-4721243, -6738804, 2146947, 6058588, 2857764, -433255, -47245, 738198, -2811593, -40265,
--2656437, -3704409, -965831, 5740761, -2150705, 2669322, -1986422, -3500398, 6871948, -5985037,
-4614406, 5047661, 1000191, 3201361, -4434554, -1211181, -1755031, -1398012, 3204583, 971200,
--4769561, 779537, -460098, 907312, -1028108, 1721208, 1651415, 5724655, -5986648, 2885681,
-2278480, -602369, 2263448, 633508, 3522410, 3295851, 2089502, -1934346, 2806761, 4954782,
--124554, 2903935, -2097018, 5873905, 6062883, 6654515, -1912871, -4661114, 1504849, -650151,
-2374043, 1712618, -25770, -353798, -6667400, -1745367, -1546725, -528818, -1367410, -2002529,
-2289755, 876173, 723165, 2682744, -159451, 2712809, 1714229, 877247, -380105, 465467,
--594316, -1140851, 803696, 200790, 1315871, -398358, 316754, -90731, -886911, 1475858,
--55835, -1272921, 518617, 1195075, 140123, -1656784, 412317, -768262, 2273112, 1661079,
-1657321, -190589, 512712, 1293322, 133681, 663572, 10902238, -999117, -3404299, 10370735,
--4095251, 4660577, -2492155, -9903121, 1768453, -2844342, 315143, 11884175, -4597763, -5615133,
-457414, 6252936, -10044318, -3717294, 7537668, -2637647, 2435783, 3576634, -2688650, 3257196,
--2101850, -3464965, 700080, -964220, -1222455, -1271310, 4198868, -3348464, 8177618, 2058363,
-174483, -4670777, -1393717, 5021891, -5742372, 1243393, 1985349, -873489, -8006893, 5498095,
-1452236, 1370632, 705448, -1078037, 4125853, -2426120, 5642514, 3242164, -2201708, -9726490,
-4334159, 2645163, -249108, -2733210, 2348810, 6327024, 6387690, -668941, 3775276, -5718212,
-4170413, -985158, -1993939, 2522757, 4937602, -3439195, 4887136, 913217, -2081449, -1692754,
-3983582, -3307662, 9474161, -4843650, 3913789, -3241090, 839129, -2891587, 3781182, -3364033,
-154619, 2203318, -673236, 455267, -2947421, -957778, -420370, 57982, 782221, -1231582,
-1628330, -120796, -1167157, 1721745, -3383897, -3349538, -1959579, 103616, -354872, -632434,
-74088, -2267743, 2810519, 231391, -212064, 2035815, -1656247, -279173, 2211908, 1013612,
-756988, 3615289, 3241090, 10240813, 1357210, -2577517, -13080323, 4052302, 7431367, 4449586,
-2910377, -1096290, 3785477, 14248554, -1723893, 6589554, 651761, 3690988, 1410360, 271120,
-2863133, -1180579, -6076305, -1689533, -4515085, -1165547, -6371584, 2313377, 195421, 7483444,
-1473174, -3463354, 2478733, -1047435, -1817308, 4801237, 1729261, 3591667, 2100239, -2055679,
--8324721, 528818, 4859756, -317291, -1586454, 2189360, -4392141, -1859721, -7752416, -9605694,
-5000416, 5564667, 4350802, -1345399, -1562831, 87510, -144418, 2854543, -470836, 3125126,
-2806761, -76236, 2892661, -2655901, 795643, -1393180, 1726577, 2107218, 9061307, 43487,
-7420093, -2757906, -7579544, -670015, -999654, -2870649, 6090801, -462246, 2536715, 587337,
--4293894, -5176510, -1801202, -1074279, 619012, 5375689, 1797444, 600759, 2304250, 3615826,
--1470489, 2736431, -273804, 2334852, 1491964, 617402, 3241627, -306016, 1915019, 1107565,
-1014149, -541703, -794032, -1821066, -795643, 1919850, 2940442, -669478, 303869, -1579474,
--182536, 161598, -1560684, 1200443, -2982855, 169651, -96637, 44023, 4712116, -11611981,
--382252, 11824045, 16256451, -6757594, 1824287, 2578591, -5650030, -3298535, 636729, -4715337,
--4912906, 11376831, 1588064, -7554311, -1207423, -4932770, -2811056, 7396471, -2332167, -3288871,
-6713571, 4142496, 6782827, -2892124, 1392106, 6615860, 286689, -3987877, 1808718, -586263,
-820339, -8399345, -5725192, 2496987, -604517, 1985886, -7733089, 3615826, 2816425, 1795296,
--13626857, -7984344, -3462281, -1714229, 1924682, -5966784, -3995930, 1322313, 10423349, 6864969,
-3682935, -1861868, -1160715, -3959423, 2998424, -1155883, -7738458, -5911486, -731755, -130460,
-10915659, 6047314, -5436355, -6060199, 7539278, 1502702, -4581657, 38118, 6761889, 2566780,
-177167, -8837432, 9701794, -3428458, 6458557, 8500814, 8923331, 789737, -3331821, -2688113,
-4569845, 5269388, -4639639, 3705483, 4967667, 3532611, -1557999, -1184337, 674847, 3038153,
-2451890, -2637647, -4126390, -3847217, 1865626, -1844152, -1253057, -2668249, -571768, -1911261,
-947040, -1576253, 1136019, 937914, -354872, 8053, 2147484, -1593433, -3306051, -583042,
-2949569, -1799591, -1663763, -1702418, -1270237, -207232, -115964, -2010045, -112743, -1461363,
--768262, 563714, 1949378, -1309965, -114890, -420370, -948651, 1841467, 2233920, -3149285,
-4818954, -6154688, 7031935, -644245, -1900523, 3739306, -7095286, 2423972, 3869229, 777389,
-2704756, 3349538, -1916092, 7834021, -3682398, -13369159, -7949448, -1758789, 528818, -2832531,
--5706401, -6247030, -4234301, 13132399, -3638911, -1036161, 1902134, -2729452, 1574642, 10773389,
--5175973, 5113696, -3352222, -6925635, 6213207, 4482335, 2871186, 9655623, 226023, 4547834,
--412317, 1153199, -367757, -3171297, 2138357, -733903, 7005092, 1399086, -4807679, -1238561,
--1378685, -329102, -7843147, 3159485, -7732015, 1884954, 10433012, -6793028, -13013751, 3026878,
-1818919, 5977521, -2627446, -117575, 6110665, -3757023, 3002182, 4499515, 1276679, -2728378,
-6034429, 1304060, 7744900, 1647120, -4783520, -4541391, 5039071, 8453569, 2987687, -70867,
--6929930, -1396401, -2216203, 5019743, 1287953, -9482751, 1514513, 2529736, 717260, 972810,
-3711389, -1656247, 1579474, -2577517, 1648194, 1497870, 1214939, 1959042, 874563, 1301912,
-1202591, -2177549, 742493, -650688, -318364, 2170569, 930934, 1219771, 2454037, -714575,
--7588134, 763967, -479426, 590558, -660351, -437013, 2158758, 1431298, -1194001, -1406602,
--10411538, 23913842, -5627481, 10725070, 976568, 4457103, 3213709, -97711, -13458817, 11387032,
--16770237, 5379984, 3977140, 15047418, -7108171, 6760816, -10684268, 6915971, -3483755, -11501386,
--5534066, 2662880, 2895882, 4151086, 2090039, 5986648, 3902515, 9094056, -2873870, -7516193,
--6782827, 2588255, -126165, -3731790, 6065568, 2629594, -1299765, 3606162, 7517804, -735513,
-1909650, -1168768, 3692061, 2163053, -9735617, -4252018, -12741020, -2960306, -2206540, -332323,
-6040335, 5383205, 754841, -3543348, -122943, -1948305, -3067681, 1655173, 17801028, 1566589,
--446140, 5636608, -484258, 6463926, -2848637, 42950, -4297115, 17872432, 4166118, -7406134,
--8485782, -5674189, 642635, -419833, -11515344, 602369, 2302639, 749472, 12439836, -3279208,
-1776506, -7785165, -2604361, -21095268, -3707094, 1062468, 739271, -8123394, 2050847, -3921305,
-2574296, 1197222, -3897683, -499290, 2699387, 4250407, 7883413, 2069101, -2965138, -2748242,
--6470905, -2510945, 527744, 1044214, -3753802, -1430761, 3394098, 1208496, -1031329, -904628,
--2803003, -2569464, -1312649, 708670, -5406290, -3790309, 919123, 2112587, -56908, -1393180,
-1242319, 4349728, 650688, 332860, -449898, -1931662, 49929, -6254010, 12577812, 1133335,
-10479720, 6379637, 10278394, 3477850, -10297721, 10199474, -6571300, 17609366, -11297375, -3309809,
--15646029, -3268470, -1612223, 7027104, -7249368, 10289131, 8314520, -4929549, 636192, 11756936,
-16540456, -5210332, 469762, -2113124, 5221070, 117038, -1874753, 2428267, 4572530, -7822209,
-5979132, 1161789, 6847252, 2626909, 1090385, -13386876, -2115272, 15602006, -1810329, 5240934,
-11989938, 3473555, -874563, -4139812, -5446556, -3267396, 598611, -5093295, -3018288, 9049496,
-8397198, 2641405, 13910862, 9228274, -2849711, -1363115, 1950452, 3230352, -4182761, -11031087,
-14464376, 6359236, -2905009, 13202193, 13844290, 15380815, 6718403, 2327872, -5521181, 396211,
--7747048, -6250788, -3929895, -15413027, 6242735, -1953136, 13200582, -3119757, -10282152, -1948841,
-1040456, -1537598, -13733158, 2196876, 3725347, 6266358, 6691022, -4667556, 2185065, -3192771,
--8915815, 1746978, 3515968, -705985, -2605435, -6783364, 7137699, 3984119, -6280316, -7201587,
--3977140, 4090956, -689342, -2070174, 1959579, -3223910, 2029372, -856309, 1266479, 3061775,
--4535486, -2175938, 2088428, -1021665, 120259, 9139154, 3046743, 558346, -586800, 2123861,
--3020436, -1801202, -261993, 2939368, 13697188, 780073, 2478196, -2090575, 1103807, -1789391,
--20830054, 2383170, -233539, -3766150, -1584306, -10248866, 11695733, 12003897, 13415867, -21851182,
-7011534, 4489852, 511101, 21503290, 8801462, -10730439, -1285806, 21231098, 2471754, 3771518,
-4299263, -6264747, 3511136, 4362613, 13158169, 6680285, -10131828, -16618302, 6240588, 3919695,
--8407935, -1589138, 766652, -10220948, 1120987, 12446278, 5264020, 6971269, 10077604, 16381005,
-1505386, 14427332, 2806761, -5744519, -881542, -8555575, -4521527, 3567507, 4839892, 3732864,
-7207492, -10283225, -4696547, 18394808, -1415729, -3962644, -10339060, 8720394, 7851200, 2732136,
-3245922, -149787, 5014375, -8008504, 13080323, -6628745, -7905961, -6396817, -4458176, 17811766,
-4735202, 3705483, -19459960, -10666014, -16013786, 1154809, -1785096, -1583769, -15201500, -21009906,
--693100, 9430674, -5279052, 2682207, -1477469, -1446330, 5172215, -7322919, -3237869, -3343632,
-6260989, 1049046, -4796942, -82678, -872952, -127238, -2343979, -4412542, 970126, 7015292,
--3549254, -2316061, -4636417, -2057826, -3291556, -1556389, 2934000, -1044214, 4716948, -1612223,
--1200443, -2794950, -2216203, 7378217, -918586, -504659, -3654480, -568546, 4200478, 1188095,
--5541045, 1206886, 237834, 1553704, 19372450, 22798760, -5905580, 6365142, -1720134, -6738267,
-1270237, -15365246, -9509058, -730144, -3132105, 30593588, -13841606, 3867618, -19523848, -2917357,
-11838540, -5051956, -10887742, -11429982, -4206384, 4633196, 6009733, -818728, -1020592, -12840342,
-2970507, 8892193, 4475356, 5429913, 1593433, 1944547, -7505456, -2500208, 4962298, 1779727,
--54224, 508954, -9044664, 3955128, -9516574, -1592359, -291521, 2699924, -10562398, -1139240,
-5114233, 7494181, -12029667, -6343667, 21240760, -8235063, -16823924, 14045617, -13697188, -4361003,
--6085432, -2508261, -10526965, -7327751, -2248416, -10616622, -15118822, 24245090, 13361643, 10773389,
-7363722, -9498857, -3738232, -6426345, 6781217, -11497627, 8056822, -6163815, 3436511, 8084202,
-5261335, 1592359, -15570867, 15152108, -18591840, -4924717, -18026514, -7358890, 11785390, -748935,
-6664179, 13542569, 4274030, -1442572, 2598455, -4813585, 212064, -1510218, -5197448, 6082748,
--2192044, -2907693, 6971269, 3664144, -1920924, 418759, 265214, 1057099, -3226594, 3000572,
-903554, 1589138, -3850975, 2526515, -1821603, 6601902, -3046743, 4647692, -1490354, -2388002,
-6997039, -4787278, -2121177, -4289599, 2779381, 6922951, 3153043, -2056753, 3233037, -2882997,
-3303904, 4798016, -5348308, -12776454, -1011465, 32073742, -14435922, 13919452, -28753732, 7852811,
--18295486, -3464965, 10129680, -951872, 6475200, 10616622, 8456254, -12565464, 9286793, 1883343,
-6849399, -2734821, 9524627, 8838506, -2014877, 1822140, 5700496, 6455336, -9281424, -3206193,
--13508746, -1704565, 11787538, 279173, -5700496, 1182190, 4315369, 790274, -4963372, -9625022,
-2367601, -6521371, 6126234, -6163815, 22774600, -2184528, -12499429, -14062260, 3085934, -7741142,
-7117835, -15767362, -12382391, -16018617, 3600256, -13537200, -3293166, -19408958, 13763223, 2788508,
-9235790, 5690832, -20959440, 1546188, -1942936, -7879655, -11747272, -3253438, -10014790, -12598213,
--6992744, 5746666, 8184060, 11955041, -7008850, 1613297, 5129265, -17613660, 7975755, -12091407,
--1173600, 9824738, 4132832, 3924526, 1759863, 20255602, -11728482, -4356708, -4514011, 5252745,
--17429514, 1293322, -1491427, -257161, 11179263, 6452115, 5486284, 1921998, -4312147, 591632,
--2182380, 8093329, -3245922, -1158031, -4702989, 9184788, 3635690, -3368328, 2461553, -8340290,
-5575405, 2772938, 4366908, 600222, -1734630, 5089536, 9376987, 3099356, -4693326, -6412923,
--2660195, 2267206, -6498286, -1597191, -9834938, -7243999, -3929895, -148713, -5452998, 3766686,
--4318053, 9404368, -7629473, -312996, -139050, -26712550, -7680476, 30117384, 26656714, 15009300,
--12801150, 13238700, 19954954, -13094282, 17636746, -14099304, 16289737, 3894999, -1017907, 5415954,
--279710, 8607651, -12746926, -3572339, -5713917, 6574521, -12083354, -10844792, 17154100, -1574106,
--3495567, 1687385, -16448651, -293668, 26630408, 14561013, 3085934, -177167, 5724655, 25210384,
-10790568, 460635, 4298726, -6877854, -2923799, -5908802, 10859825, -5519570, 7272990, 1440962,
-12958453, -15203110, -262530, -837519, 451508, -4226248, 7255811, 11668352, -2674154, -3212099,
-11746736, 1427003, 1503775, 26579406, 4220342, 448824, -12087649, 5449240, -8978629, 12359305,
--14139032, -12479027, 1973538, -12290049, -13191992, -20120312, 5461588, -6651294, 10474888, -3329674,
-5928666, -29427506, 6058588, -9886478, -17870822, 9432285, 12403866, 6579890, 3863860, 2352032,
-5223217, 8003135, -3787088, -4461934, -5403069, -237297, -5930276, 3847217, 813359, -8412230,
--5865852, 5013838, 2940979, 511101, 8750996, -2923799, -886911, -6817724, -1449015, 180389,
-3638374, 2424509, -5817533, -3433290, -1595044, -6898791, -1311576, -6467684, 2677912, 1940788,
-7871065, 5507222, -541166, -3025268, 10737, 208843, -2229088, -326954, -8196408, -1299765,
-3370476, 3808026, 1047972, -1218160, 7915088, 1486059, 22325776, -34360812, 14414447, 15025943,
--24427626, -2493229, -20931524, -6908455, -18792092, -8500277, 21489868, -7360500, -1577327, -15117211,
--2937221, 3468186, -22408992, -876710, 14305462, -27666568, 1008780, -18891950, -10204842, 374736,
-2028835, -12513387, -10057740, -10486163, -3031710, -9016210, -591095, 4795868, -2731062, 7013145,
--13507135, -8608725, 18015240, -8439611, 9749576, -10733123, 10143639, 9291088, 1571958, 2476049,
-9446244, 443992, 13466870, 17059074, -3233037, 2523293, 25334402, 1502702, 13009993, -918586,
--10107132, -19989852, 3338800, 13879187, -22072910, 288837, -12987981, -6815040, -28618440, 12357158,
-18850074, -4933844, 9071508, -4632122, 20500416, 22713398, -1848983, -22491134, -21877490, 31169114,
--24300388, 9093520, 3573950, 3239479, 23294292, -9928891, 37965900, -632971, -8644159, -9900436,
--6882685, 6078453, -2411087, -2896419, -260919, 9816685, -2468533, -6167573, 8194798, -2960306,
-4117800, -7550016, -4589710, 7189239, 522375, 10741713, -3574487, 4576825, -7932268, -2249489,
--10843719, 2245194, 4372814, 5371931, 1007707, 5519033, 492311, -1677185, 5824513, -9146670,
-6026376, -7756174, -2806761, 4727149, -9578851, -2398202, -5512591, -16001438, -4328254, 1065689,
-5749888, -7808251, -4114579, -6864432, -2280091, 1694365, 6299107, 37312528, 42050952, -2485712,
--31717260, 31323734, -34675420, 4884452, 14702747, 3642132, -3712999, -16000901, 18013630, -8068096,
--6457484, -16294569, -9477919, -5083094, -20337744, -11193222, -9090835, -5090073, -3343095, 14119168,
--207769, 12203076, 89657, -5280663, -17814450, -19519552, -4929549, -716723, -263067, -2967823,
--7297150, -8435853, 9336722, 22472880, -12214350, 7737384, -7626788, -7864622, 8929237, -8712341,
--14105746, 31550830, -3485903, 2896419, 1547799, -17637284, -3878356, -3703873, 8937827, -22783728,
--10088878, 24089398, 3874061, -10249939, 13094282, 24482388, -13930190, -17253958, 8959839, -14627585,
-236760, -27371290, 8833674, 23261006, -2381559, 12128451, 7086159, 4061429, 26692148, 8369281,
--118112, 15381888, -2233383, -2143726, 9421011, 10084046, -38708928, 3528316, -16833588, 13677860,
--629213, 514859, 9630927, -2925410, -3694746, -5104569, 5189394, 1964411, -3782256, 5158256,
--5534602, 549219, -2935073, -7483981, 3441880, -3753802, 8373576, 4589173, -127775, 25770,
-2308545, -2232846, 4964446, 2416456, 1562294, 2011118, -1388348, 1821066, -3331821, -6501507,
--3545496, -1697586, 909996, -8453569, 6887517, 4603668, 360240, 2496450, -5651103, 7899519,
-983548, -4712653, 2892661, 3402151, -10095321, -2105608, 1034013, -824097, 164283, 1833951,
-1286343, -51167020, -35837208, 14963666, -15180025, -14304389, -43524124, -12553653, 9295920, 3608846,
--8563091, -24197308, -299037, 12287365, -884763, 1682554, 12729209, 22596896, -19572702, 51424716,
--13217762, -17052630, -5182415, -2871186, 246961, -20328080, 478889, -3563749, 10873783, -6852621,
-15384036, -6345814, -13066364, 5382131, 6350646, -11662984, 12764106, -39139500, 324270, -3115462,
-15641734, 18913426, -13676786, 17638894, -6753299, 5057324, -8413841, -2807835, -5170604, 14117021,
--1877438, 18581102, 29010356, -25224342, -7048578, 13628468, -17000018, 10309532, -19313394, -10647224,
--9612674, -11304354, -19717122, -10103911, 9193377, 7514582, 15129022, 19638202, 14263586, -23775866,
-2971581, 4405563, 5657546, 4808753, 15197205, -7438347, -16086263, 9207336, -4192962, -12568685,
-2443837, -21533892, -8922795, -18758806, 1702418, 11055783, -6848862, 10625749, 5686000, -642635,
--4093641, -317828, -16738561, -6277095, 5515275, 2779918, 3625489, 1151588, 1848983, 1487669,
-5165772, 1401233, -11257646, -1582696, 1655710, -1144609, 2864206, -5158256, -4743255, -10989748,
-2778844, 9690520, -11067594, -7770133, 5616744, -2814277, -11296301, 7384660, -5532992, -4531728,
-6666863, -536871, -2168422, -3473018, -5060009, -6700149, -7123740, -1864016, -6076305, -3629247,
--3169686, 4789426, -417686, 7146289, -10640781, -34854732, 26303454, -44617196, 31354336, -4498978,
--19958714, -17031156, -19010062, -12875238, -10023917, 953483, 22985054, -1867237, -19275814, 20467130,
-29008746, -44532368, -11896523, 3098819, -3690451, -6953552, -2237141, -6185827, -7921531, -12952011,
-16510928, -5801964, -12371116, -21195664, -21068426, 20738786, 5392332, -3808026, -2306934, 8053,
--4658429, -5661304, 4558034, -18649284, 10139881, 21198348, 15819438, 9865003, 20236276, 23552526,
--13566191, 5007932, -19520090, 21068962, -12089796, -3485366, -145492, -30772904, 9953050, 25303800,
-4279935, -10429254, -8496519, 33086280, -13367012, -14317810, 9251896, -33792264, -3987877, -16774532,
-682900, -33043330, 13756780, 5714454, 13480829, -53601728, -45995880, 7486128, -16103980, -10798085,
--6702297, -35908612, 11828877, -21240760, -23189602, 17428978, -15624017, -9220221, 7394323, -3787088,
--7060926, -1319629, -1997697, 7485055, -17749490, -8377871, -17128330, 13422, -7558606, 3406983,
--2505040, -13517336, -5593121, 4734665, -938987, 955093, 3543885, -14799384, 1822677, -18745922,
-8562017, 2822867, -13659607, 4312684, -16235513, -3502546, -5988258, 1199907, 8498130, -6395743,
-8795019, -4743255, 15023796, -6919729, 9412421, -5304285, -1753957, -493384, -1913945, 3059091,
--1639604, -11811, -1317481, -3433290, -51003, 5417028, -1598802, -2336999, -1972464, 1732482,
--2006824, -2037425, -1535451, -967978, 375810, -964757, -751619, -862752, -1945620, -807454,
-933082, -42413, 3280281, 39715024, -54683524, 56120728, 16663399, -1654099, 4861366, -40119288,
-8587787, 19184546, -6839199, 47834124, -13303661, 20818780, -16494822, 52669184, -1612223, -6844031,
--19772418, -7119445, 7944079, -5071820, 21562884, 16727287, -5280126, 1628866, -20329154, 8076686,
-21366388, 21538188, -22936736, 9931038, -4294431, 22979686, -5872294, 15006079, -13456669, -10604274,
--30691836, 2272575, -19334870, -28843390, 41489920, -18101140, -3326989, -7693360, -9575630, 5721434,
-3720516, 14705968, -6568079, 22509924, 2418067, 40734008, 15912317, 45071388, 38515120, -3691525,
-25861072, 19622632, -6400575, 23061290, 31538482, -13302587, -30837328, 17842368, 11838004, 25603374,
-13432510, -2429878, 24159, -33253784, -2823941, -9753871, -11756936, 44394392, -4734665, -440234,
-55413132, 36870148, 20185810, 24641838, 13016435, 1612223, 6663642, 31982474, 763430, -8349417,
-9858024, 26874148, 13016435, 15327128, 7960185, 18598282, -594853, 5364951, 7328825, 13024488,
-4853313, 3314641, 2747169, 1483374, 10950019, 15821586, 7155953, 20906828, 1950452, 12904229,
-13246753, 23567560, 92342, 16132971, 14777909, 3060164, 12545063, 672162, 3165391, -3989488,
-5475547, 6553047, 3746285, 3393561, 1370632, -2818036, 1196148, 5516886, -2384244, 2996277,
-11260867, -2362232, 17067664, -38375532, 73679088, -9994926, -8200167, -4698158, 53602804, -32916092,
-26883810, -36037996, 34144992, 6917045, -6666863, 879931, 19994684, -8586713, 18639622, -8656507,
--177704, 37667400, 11534672, -9630390, -164819, 9415105, 7364259, -36509908, 9710921, -13285944,
--3358128, -19226958, 18564996, 17721572, 2698850, 8419210, 31372588, -10398653, -50119048, 12005507,
-32687386, -12658879, -32999308, 8791261, 23365158, 7998303, -99858, -39355860, -19039590, -23272280,
-21762062, 8961986, 22413286, -47374028, 2867965, -8662412, -52623548, -13493177, 7519951, 23863376,
-32824288, -17457968, 61477624, 12139725, 838592, -12582644, -25145422, -17078938, 11374147, -28434830,
-57898308, -18456548, 2108829, 34593276, -22965728, 21188684, -22450868, -12490302, 47940424, -24234352,
-31312996, 29386704, 10256382, 13510357, -42163692, -4777078, -2570538, -14386530, 19293530, 18006114,
-6803228, 5667210, 18742700, -4291746, 7047505, -2029909, 5281736, -7948911, 6338835, -1124208,
-5269925, 4757750, 783295, -13935558, -2941516, 2284386, -5636608, -1347009, 9628780, 5987722,
-16208133, -7249368, 2957085, -27074400, -23654532, -2947958, -2015413, 16746077, 11667279, -7383049,
--6383395, -21480742, -718333, 7984344, -4198331, 413391, 4560719, -6441377, 4235375, -15681999,
-214748, -4942434, -7036767, 11146514, -43320652, 24714852, 15812459, 24719684, -9877351, -7035694,
-10007811, 59593, 2843805, 912681, 4881767, 1155346, -6820945, 31977642, -7473780, -22071836,
-9319005, -594853, -19432580, 6747394, 4478577, 13187697, -8972187, -14712947, 15789910, -12723304,
--1750199, -3801583, 12956306, -22390202, 7619809, -13896904, 11320997, -19726248, 6985228, -6626598,
-3370476, 43184284, -29735132, 5614059, 9480603, -26796300, 9688909, 12326019, -19873350, -4152160,
--7632157, 35913444, 2992519, -41576356, 24846922, -33611876, 6072547, 17374216, -16162499, 19876034,
--24112484, -19866372, 27282170, -4663261, 11569568, -40963252, 7625178, 8835285, -2219961, -6332393,
--388695, 16602196, 577673, -54469312, 32937030, -3445638, 12617540, -14319958, -16703665, 51912732,
--1438277, -33228014, 2820720, 16754667, 3774203, -50507204, 1737314, 46821048, -8635569, -21681532,
-5067525, 22641994, -3090229, 61740, -4053912, -2356863, 3173444, -8210904, -4859219, 15370077,
--6752763, -435402, -9125195, 9010305, 13653701, -2476586, -2140504, 14525043, 4683125, -10004053,
--2458332, 6251862, 4112431, -8499740, 4467840, 9991168, -8431021, 2136209, 2420751, 6434935,
--15626165, 977642, 9657771, 3666828, -10916733, 600222, 7575249, 1255204, -8127152, -5432060,
-20485920, -7113540, -107075680, -227823856, -90900832, -171527568, -208907216, 73983496, -857383, 75884016,
-288629856, 252064112, 143390704, 276215776, 154007856, 17377438, 95428808, 58706836, -104518568, -73883104,
--21790516, -115852984, -140099680, -46664284, -70968968, -110911088, -27918898, -5094368, -141215296, -97320736,
--14810121, -85860152, -111140872, -32447942, -54588496, -120822264, -23268522, 12206297, -67799816, -51719996,
-50965692, -18460844, -72706280, 15149960, 47976396, -35919348, 29376502, 105641160, -15632607, -28304908,
-104542192, 55764780, -26240640, 173695456, 236126032, 146938880, 248988384, 372514848, 286524800, 272667072,
-398497792, 345453344, 254232000, 311948832, 283574688, 180363936, 159536016, 85826328, -29753386, -124581968,
--222852432, -316567552, -376702976, -472311104, -504623776, -532122816, -602827648, -602401344, -455308416, -465896032,
--424299808, -191122816, -147904720, -143854560, 63703492, 121643136, 2567317, 126785824, 175977696, 60209536,
-83857088, 165034656, 123339112, 71798968, 116486496, 144235744, 61284888, 89785216, 179014240, 106449688,
-70076152, 164971312, 123714384, 49942416, 107213656, 122490856, 15721191, 63251448, 147455360, 84536768,
-101431024, 207883392, 195565424, 206089712, 266861344, 268735552, 215572992, 203900896, 174033680, 106267152,
-76625440, 40767828, -6388764, -41973104, -113781200, -155447744, -210108720, -279958848, -311737856, -352222752,
--410007232, -390456000, -350705024, -309728896, -226481680, -148488832, -78776144, -29069950, 12165495, 25860534,
-31632972, 40833328, 43250320, 36562520, 39009040, 43104828, 41725072, 46758772, 60379188, 67723584,
-72143104, 80195096, 81867984, 80804440, 77153720, 57716844, 36150740, 23155780, 19529216, 19545322,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--7162395,
-207232, 5693516, 3911105, 3934727, 2473901, 1562294, -2245194, 85362, -2554969, 6091338,
-3726958, 1462436, 880468, 879395, -77309, -1927367, 2989834, 4190814, 4025995, 2467459,
--3070365, -4425427, -4846871, -4598836, -487479, 2400887, -4738960, 3950833, -957241, 6906308,
--1156420, 4387846, 52613, -5728413, 1633698, -737661, 4628364, 319975, -547071, -2337536,
--3929358, 353261, 2209224, -5029944, -6883222, 4803921, -3989488, -3671123, -3470871, 2707440,
--2739116, 1151588, -1227824, -339302, -4056060, -1223529, -2761127, -4027606, 1321239, 3125126,
--1165547, -4430796, -869194, -904628, -2227478, -3830574, -299574, -3115999, -3672734, -664109,
-250182, 862752, -1246614, 538482, -682900, -5179194, -1145683, 637266, -1433445, -1329829,
--1626719, 1655710, -1985886, 1705102, -143345, 294205, 653372, -1268089, 1243930, 10201,
--694174, 307627, -341450, -1076963, 174483, 805306, -555125, -471373, -52076, 1301912,
-587337, 182536, 200253, 701690, 475131, 815507, 230854, 1049583, -876173, -386547,
--396748, 13487808, -4713727, -3085934, -4202089, -2887292, 314606, -9025874, 1523640, -4478041,
--8836358, -1888175, 7573638, -5447093, 1476932, -643171, 2541010, 3825742, 4093104, 6615324,
--1416802, -3790846, 1687385, 1597728, -3038689, -439160, -2053531, -1336272, 813359, -3473018,
--2171106, -505196, -4372277, -5131949, 2622078, 3967476, -2353105, -5897527, -1034013, -1382980,
-834834, 4764730, 315143, -1974074, -317291, 6379100, 795106, -3903589, -3764002, 1651415,
-1207960, 5091684, 2891050, -333934, -4861366, 272194, -286152, 4179003, -4474282, -1502702,
-2457795, 4857071, -1369558, 431644, -3679176, -2065879, 2254858, 140123, 475131, 1319092,
--1430761, 1768990, 523986, 2164127, 1330903, 836982, 8444443, 2587181, -346282, -1138166,
--2489471, 3621731, 2246805, 3914326, 2787434, 982474, 1037772, -817118, 775242, -1581085,
--1688996, -1296006, 443455, -597537, -413391, -255551, 1362578, 226023, 1780801, 168577,
--564251, -222265, -170725, -245887, 580357, 418759, 719944, -9894531, -2320356, -4665945,
-4539781, 1154273, 117038, 3230889, -1905892, -7646653, -4027069, 5094368, -268435, 5247913,
--380105, -2957085, 5817533, 2190970, 12741020, -2386928, 5537824, 816044, -5986648, 1520418,
--5083094, 3309272, 1180042, 1308354, -5432597, 2734821, -936840, -1913408, 2246268, 8677445,
-3234647, -38655, -6942278, 6041945, -1258425, 38118, 4279935, -6315213, -1170379, 4374961,
--2574833, -2246268, -7128572, -7787313, -580894, 4735202, 2793876, -3117073, -74088, 3088618,
-3867618, 1546725, -779537, -1490891, -6830072, 3229816, 8524973, 3882651, -2443300, -1189706,
-2706366, 4072703, -308164, -1257352, 1024887, -5621039, -1032403, -3936338, -1833414, -354872,
--2413235, 6497749, 5666136, -1679332, 2848100, 2109903, -1072668, -3823595, 912144, -2957622,
--1114544, 884763, -3817152, -807991, 390305, -1102733, 1095754, 1645509, -2439542, -870268,
--155156, 172872, -1912871, 513785, -882079, 1452236, -1695975, 1604170, -1158031, 390842,
-267362, -825171, 649614, 290984, -614717, 565862, 632434, 652298, -1257889, -588947,
-31139, -1785096, 239444, 1063541, -350577, -7442105, 8316131, -7164543, 7594576, -69793,
--6052683, -14278082, -5621576, -4096862, 2142115, 7487739, 5862631, -1800128, -1143535, -1737851,
--4092030, -1176821, -4598836, 1582159, 1699733, 2840584, 4713190, 2795487, 9011915, 32749,
-1825898, -3167002, -734439, -2142652, 3317325, 1007170, -4180077, -6052683, 258772, -4343286,
-555661, 4125853, -6845641, 4840428, -11525008, -3164854, -8545374, 1477469, -513785, 160524,
--3340411, -4506495, 1614371, 4107599, 2946348, 1101122, -6861211, 2119566, -4733054, -1786706,
--1345935, -9349070, -3639985, 2832531, 3645890, -295816, -6433861, 1139777, 2474975, -1219771,
--1258425, 804770, 5647882, 2049773, -1234266, -1772211, 1020055, -13327284, 992137, 3420405,
-3210488, 9447854, 1335198, -5244692, 5946919, -2035815, 922881, 2114735, 1992865, -1327145,
--4367445, 284005, 2617783, 2503966, 4034585, -1219234, -1279363, 734976, -731755, -470836,
-668404, -1104880, 406948, 952409, -519691, -2115808, -1619740, -49929, 281857, 598074,
--1001801, 2069637, -1034550, -555125, 1341640, 1565516, -420370, -2348273, -1226750, 980863,
--1184337, -617402, -709743, 543313, 1879585, -313533, 9509594, -2461016, 99321, 6261526,
--3285650, -3071975, 9380745, -7211250, -17013440, -11178189, -6600291, 10164040, 4304094, 1377074,
--9869835, 10371809, -4525822, 2882460, -2731062, 4052302, 4973572, -447750, 91268, -128312,
--1728724, -5417028, -4377646, -1357747, 528818, 4689568, 2640868, 7345468, 3487514, -3257196,
--1756642, 6534256, -4768488, 8025684, -6487011, 1698123, 3502009, 2250026, -5268315, 7070590,
--731218, 7599945, 10024991, 1506997, -4059281, -3934190, 4214974, -4875325, -10264972, -2671470,
-2107755, -6597070, 3704946, 3003793, -2219424, -4114579, -1781875, -1593970, 1927367, -821413,
--5799280, -2224256, 9901510, 7962870, 4261145, -11876658, -11678016, -6387153, 11121818, 5630702,
--920197, 1529008, -5551782, 7029251, -361851, -5512591, -1951526, 705985, -586800, -2775086,
--446677, -2202781, -1198296, 2065879, 3034931, -1826435, -76236, 252866, 473520, 420370,
--3103651, 3495567, -288300, -3516505, -2111513, -506269, -1131187, 39728, -297963, -457951,
--408022, 814970, 132070, -1631551, -146029, 600759, -433792, -2523293, -1743220, -2355790,
--857920, 1651415, 4787278, 7050189, -394600, 2717641, -11097122, -3745748, 1811939, 3795141,
--13762686, -1524177, 5918465, -4145717, -8956617, 5577015, -10417443, -7639136, -4134443, 909996,
--3787088, -2570538, -346282, 7737921, -6583111, 1716376, -2093797, -2734284, -5543729, -1529545,
--8089034, -2408403, -250719, 1540820, -5660230, -1194001, -3576097, 511638, -1831804, -2507187,
-1469416, 6366216, 1604170, -3319473, 3150359, -4862977, -1222992, 1862405, -1866163, 3171833,
--1051730, -359167, -22427246, 1487132, -7784628, 3792993, 3224984, 4950487, -12351789, -12584254,
-1681480, 439160, 2922188, 82141, 6689412, -2720325, 3628174, 4514548, -2168959, 10530186,
--3312494, -6857452, -1479079, -5676336, -214748, -11230266, 148176, 5554467, 2585034, 8381629,
--2340757, -2295123, 3684008, -4433480, 1031866, 2727304, 5393405, -2900177, 3086471, -4400194,
-853088, 172872, 564788, -2170032, -1050656, -1618129, 1708860, -2012729, -3215320, -67646,
--1527398, -2000381, -736050, -1567663, -701153, -986769, 896574, -1568200, 889595, -3164317,
--355945, -1894618, -821949, 252329, 193810, -449898, -1531156, 137976, 8677981, -17501992,
-4685810, 746251, 4857608, 7044820, 1275605, -6789270, -14910516, 1061931, -6029061, 11323144,
--4612795, 2335925, 821413, 2418604, 8541616, -3774203, -263604, -3964255, -2234994, 2231236,
--2157147, 8015483, 5969468, 1712081, -1701881, 110059, 5365488, -552977, 2589865, -124017,
--4424353, 3910031, -1137630, -3313567, 4738960, 8027831, 22012, 3138547, 562104, -5327907,
--3322694, 9747965, -4708895, 4662187, 7100655, -9422085, 6720550, 3593277, 3411815, -4183835,
-6891812, 1983738, -1191317, 8813810, 325881, -110059, -4131222, -2355790, -4295, -3861176,
--9429601, -2486249, 9630927, 7258495, 7923678, -890669, -8356396, 3461744, 10103374, -1893007,
--7154879, -373125, -5055177, -1305133, -839129, 7859790, -753767, 4031364, -1035087, 357556,
--5545877, 1457605, -954557, 2166274, 2155000, -3829500, 2594697, -6055904, 595390, 2167885,
-158914, -1570347, -104153, 1189706, -4190278, -783832, -3943317, 1217086, -2493229, -1580011,
--2415919, -4056060, -2668249, -1047972, 585189, -1250372, -98784, 1269163, 428423, -1069984,
--751619, -1224066, 2319819, 66572, 838056, 1492501, 934155, 1046361, -542240, 1969243,
--300648, 34897, 824634, -788663, -1089311, 507880, 2088965, -8311299, -2452963, -13399224,
--3919158, -7773354, -9165460, -8690866, -3080029, 11686069, 12716861, 17521856, 3916473, -6689949,
--4117800, 14502494, -57445, -3387119, 11110007, -1168768, 481573, -17368848, 7849053, 4362076,
--11590506, 16049756, -2240899, 7206419, -1953673, 3764002, 7132867, 8053, 12613245, 4830228,
-3576097, -1469416, -4479651, 1202591, 7639673, -2059437, 2265595, 3572339, 10119480, -482647,
--3069828, 6518150, -7672959, -4826470, 3461744, 11166378, -4960151, -5999533, -1896765, 9200357,
-77846, 1293322, -3446711, -1582159, 3297998, 4848481, 423591, -3981972, -12743705, 1502165,
-3746285, 12117713, 3517578, -986769, 9307194, 16634408, -3434363, 5822365, 3921842, 6886980,
--1348083, -5860483, 3423626, -13806709, -3758633, -2100776, -4482335, -2798708, 7177964, 2471217,
--8939438, -5280126, 248571, -2925947, -325881, -6844568, -214748, -2350958, -1728724, -948651,
-680215, -1912871, -482110, -937377, 1457605, -544924, 1336809, -1876901, -62277, 280784,
-615791, 2765422, 77309, -1072131, 2582886, 3776887, -309238, -2329483, -1472100, -3278134,
--2866354, 3921842, -673773, 1053341, 1433982, 1385127, 1294396, -3019362, 1466195, -1100585,
--15169824, 21242908, -10710038, 4822712, -786516, -7327214, 16192027, 3812857, 2009508, -17114908,
-4442070, -6826314, -7789997, 1901597, -7603703, 8658654, 5240397, -1455457, 1735704, -4193499,
--1894081, -6219650, -3999152, -7470022, -11535208, -2842195, -8071318, -2166811, 4391604, -3262028,
--4344897, 9134859, 5740761, 9168145, -7516730, -847719, -1510218, -8257612, 81604, -4390531,
--20556788, 1800128, 371515, -3178813, 7132867, -744640, 7868917, 6666863, 2460480, 12368432,
-11004243, -10865730, -2978560, 91268, -401579, 3868155, 1479616, 10516227, -2245731, 16796544,
--22549, -9904731, -8038568, 1286343, 3031173, 3436511, 12208981, 3207804, 3056406, 11477226,
-15282567, 625992, -9376450, -8879845, -840740, -2979097, -2166274, 19745038, 1415729, -8967892,
-6415071, -7851737, 7506529, 1239635, -1558536, -2347737, -6032282, 1679332, 1996623, -893890,
-1765232, 3330747, 1853815, 2269890, -886911, -839129, 217970, -1103807, -930934, 2238215,
-884226, 1588064, 1996623, 3539590, 200253, -1662152, 3294240, 1873680, 635655, 753230,
--682900, 500364, -125628, 3525631, 5501316, -2970507, 2624762, -651224, 2287607, 297427,
-487479, 4692789, -244813, 454730, 402653, 3855270, 2558727, 2820720, 12743168, 976568,
-8587787, -9400610, 4203163, 752156, -699543, 5671505, 13474386, -3719442, -1226750, 12406013,
--16411607, -9148280, -7169374, -18799072, 3689377, -5964099, -2652679, 2253784, -12833362, 14053670,
-10596758, 14928233, 6693707, -9300215, 871878, 592169, 11164767, -2070174, -369367, -439697,
--6947647, 552440, -4090956, 6241661, -7371775, -2788508, -2495376, -3186866, -8633421, 4050691,
--12656195, -1934346, -906238, 7937637, 4685810, 1054415, 119722, -2218351, 907849, 117575,
-6574521, 1523103, 1894081, -1056562, -19809462, -9205726, 2277407, 8201240, 9817221, -15507516,
-10357851, 3077881, -6124087, 1490891, 3339337, -3675955, 15003395, 139586, 2863670, -3542811,
--20944408, -7179038, -9547175, -2481954, 369367, -5806796, 2996814, 4456566, -4312147, -897648,
-13444858, 380105, 6844031, -8253317, 1030255, -134218, 7733089, 6842420, 4918275, -1863479,
-1589138, 5618354, 3402151, -247497, 5912560, 5749351, 6278706, 817654, 2389076, 2157147,
-1014686, -814433, -813359, 5433134, 1016834, -2865280, 478889, -416612, 2984466, -2084670,
-944356, 2834679, -2212982, 4406100, 1519882, -601832, 362925, -3803194, 2794950, 2825015,
--459562, -843424, -2335925, -3149822, 19393388, 3082176, 7833484, -11696270, -10590852, 6075231,
-10060961, 1169305, -3572876, 18610630, 5848672, 62277, -5168457, 4041027, -1454383, -2073396,
--704912, -3215857, 857920, -6209986, -14781667, 4852776, 1506997, 4488778, 1454920, 8195335,
-2487860, -8850854, -17993228, 455267, 1333587, -1458141, -15748034, -7692287, -2380486, 4395362,
--3448859, 1750199, -13777718, 658741, -3089155, 76773, 1365263, 3809636, -1499481, -12962748,
--11928198, -7434052, 4988068, 3688303, -3191161, -2699924, -20783346, -11761768, -437550, -20261508,
-18621368, -19130858, -5272073, -12390981, 19972134, 6400038, -14104673, 7072201, -1656247, 7547332,
--12022150, -3984656, 500364, 8121783, -11415486, -4566087, -3896609, -11593727, 797790, 7683697,
--1476395, -2137820, 13833016, -21971442, 17267380, -2879239, 3626563, -9914932, 6924024, -1123134,
-5510443, -5036386, 253940, 4379793, 4745402, -1386201, -2435247, 14496, 459562, 564788,
--1646583, 5401458, 5651103, 3999152, 1013075, 4054449, -420370, 4986994, -1877975, 907312,
--252866, -1892470, -1963337, 335544, -4163434, -5000953, -1488743, -319438, 5015448, -314069,
--868657, -1392106, -3529390, 2447595, -1163399, -1830730, -1298154, 2598992, -597000, -5667746,
--805843, 2004676, 428960, -546535, 17034378, 37327024, -5081483, -11712913, -10979547, -9698036,
--13892072, 2230699, -23611582, -263604, -18268106, -8475581, 5550709, 11370389, 6492917, -8254391,
--1188095, 10812580, -809601, 12488154, -7541963, -7612293, -6725919, 5856188, -4454418, -5791227,
-1946694, -6931004, -7061463, 8443369, 20024748, 7515119, 8527121, 3738232, -11894912, -2872796,
--9664750, -9143985, -1506997, -1715303, -7609072, -12152073, -24329380, -2342905, -8874476, 3066607,
--4547297, 9012452, 8364449, 4705137, 8757975, 6126771, -996969, 16912508, 24182814, 5714991,
--28456842, 5697274, -5150203, -16711718, 2253784, 8041790, 3975529, 636729, 7740605, -556198,
--13589277, 736587, 6353867, -13651017, -7181186, -12797392, -23609972, 18440978, 2506114, -1471026,
-12883291, 10005126, 666794, 651224, 12734041, -17480516, -7617125, 1854889, 9381282, 7866233,
-12075301, 8638253, -7212324, -4252555, -1630477, -2856153, -1078037, -1835562, -3519726, -4655208,
--7107097, -7221988, -5133023, -2821794, -796716, 3411815, -1954210, -1545115, -8133058, -5644124,
-810675, 4152697, 2903398, 1650341, 1685238, 1110786, -1165010, -4245575, -2037425, -2689723,
--2322504, 695785, -4483409, 815507, -3202435, 3273839, -402653, -1279900, -3067144, 2686502,
--2821794, -1002338, 5608154, -2435783, -193274, 27567248, -20399484, 23830090, -1989107, -2851322,
--12119861, -4471598, -12040404, -10229001, 12733504, -11309723, 6586869, 28579250, 10631655, -4221416,
--12883828, -10810970, 12754442, -10404558, -17621178, -7248831, 1819992, 1699196, -20118700, 1444183,
--6094559, 10516764, -6346888, -277025, 2347737, 30056182, -7249905, -9575630, 14586783, -11578695,
-17520246, -10215043, 12833362, 2170569, -9242770, -8451422, 16287590, -20993264, 16025060, -9037685,
-1658394, -5011153, 8762807, -7248294, -3694209, -267362, -6455873, 30654256, -8791798, 20923470,
-8128226, 9604084, -130997, 7926362, 13429289, 15042586, -4109210, -14565845, 93416, 12421582,
-5014375, -2205466, -18321794, 24522116, -5118528, -16217260, -4482872, -9945534, 7683160, 10586021,
-442919, 17746268, -4784057, 9100499, -20155208, -3568044, -21507048, -6706592, -7860864, -494995,
-1207423, -4156455, 7696045, 2515240, -5795522, -9914395, -7339026, -2141041, -907312, -4976257,
--1055488, -1770063, 6090264, -1813013, 271120, -2318209, -9306120, -2831994, -3733400, 1129040,
--1540283, -5248987, -8127689, 3208878, -5490579, 2524367, 3624953, -5713917, -13939853, -3352222,
--2175938, -3741990, -4968204, 548682, -2317672, 1478543, 1646583, -6361921, -811749, -6405407,
-5928666, 3607236, -3337190, 1573569, -5572720, -31242128, -13332115, 19185618, -3777961, -7838852,
-22299470, 2151242, -11562052, 8469676, 12147778, 10307922, 1626182, -19210314, -7924215, 2958696,
-2861522, 10073846, 6674379, 11361262, -9798968, -7732015, 3832722, -2641942, 9320616, -18054432,
--3033321, -19530290, -6295885, 3570192, -2667712, -2425583, 20953534, 4391067, -15479599, -2319819,
-1272921, -15811922, -2120640, 812823, 9550934, 24098524, -8513699, 8081518, -13405130, 2061047,
--7878044, -10133438, 9829570, 21082384, -16656957, 1651415, 18766322, -8426726, -1712618, -6997576,
-12287365, 2999498, -15226196, -148176, -5311264, -4908611, -1504312, -7450158, 11368778, -26912266,
-5719286, 2296734, -11324755, 15135465, 23161148, 16384226, 44111460, 13414257, -11305428, -15626702,
--12943421, -7033009, 16195785, -5803038, 22487376, 2100776, 27381490, -32503238, -20867636, 9838159,
--5345087, -3331821, 13132399, -8829379, -1010391, 14001057, 6223408, 10394895, 15298137, 11985643,
--2594160, 4912906, -9362492, 367220, -367220, -6538551, -7194070, 4818954, -9911174, -816581,
-14967424, 1394254, -8952322, -11651173, 2159832, -14646912, -5415417, 15817291, 8191577, -2557116,
--3631932, 3066070, -2943663, -4957466, 1045288, -3613141, -5632313, -941135, -7728794, 5476620,
-4715874, 5245229, -2888903, -2035278, 3319473, 8095477, 22090090, -51231980, -1883343, 29466160,
--38884488, -1613297, 7842074, -40169756, 18219252, 5086315, 32485522, -3061238, 11582453, 9701794,
--35333624, -29218662, -11286100, -2676302, -17608292, -21674016, -11400991, 20359218, 14309220, 12403329,
-1458141, 2448668, 6530498, 1425929, -25616796, -9472550, -32928978, -10394358, 18646064, 5678484,
-12644384, 41776612, 10967736, 15897285, -508417, 8501888, 36786396, 27730456, 7829189, 18255222,
-16740172, 36735392, 30179662, -39654896, 25089588, -2047089, 24016384, 24480776, 10266046, 44070660,
-38915624, -21180094, 19331110, -83752, 18428630, -31871342, 3267933, 3664144, 1340567, -7055558,
-20463908, 22206592, -21174726, -7009387, -12380780, 7943005, -17531520, -21731998, 20762946, 35389992,
-13044889, 36823440, -10416906, 49961208, 48845588, 13833553, 25677462, -7239168, -12659953, 11671037,
-11426224, 5687074, 3996467, 3203509, 6689412, -6721087, -12444668, -8782671, -23481124, -24529632,
--9870909, 11751567, -199716, 10388989, 1903207, 6412923, 15140833, 18652506, -5863167, 8675297,
--786516, -7402376, -6222334, -5198521, -15447924, -6929930, 340913, -13219372, -4675609, -11875585,
--6608881, 2841658, 16988206, -7746511, 6160057, 5003637, -2789581, 9570261, 5517423, 7363185,
-259846, 12637404, 8012799, 5642514, -4915053, -7272990, -16315507, 23956254, 43021612, -5750961,
--58559196, -18611168, 6049999, -4451197, -9660992, -12735115, 260382, -33398202, -20054812, -27698780,
--4439386, -7976291, 9341554, -19712826, -5664525, 5539971, 9365176, -43487, 10409927, 20462834,
-4230543, 29444148, -18798534, 7259569, 1209033, 28114856, 7346005, -5239323, -28073516, 18911814,
--4817880, 25691958, -21352430, -16713865, -16174310, -8367670, -25881472, -3291019, -4469451, -24093692,
-13434658, 28043452, -13418552, 4414153, -36031016, 34956740, -10923712, -18547280, 15826954, 14166950,
--20602422, 2138357, -12837657, 4885526, -9400610, 43729748, -1588064, -3349538, -10675678, 76937360,
-1975148, -10001905, 32821604, 26730266, -27801324, 22126060, -34067144, -18526342, -35603132, 27643484,
--24499030, 13573707, 18719614, 15347529, -31569084, 40315784, -7187091, -51733416, -59533616, -22982370,
--7329362, -16806744, 13873818, 14168560, 23546622, 4366908, 2046015, -17186848, 17782238, 28441810,
-40920300, 11315091, -11751567, 4525822, 34810708, 6353867, -19256486, -4195646, 37141804, 9098351,
--22024056, -5117454, 18305150, 11199664, 16659104, 11853573, 23487566, 815507, 12870406, 5229660,
-16592532, 8535711, 26415122, 9465571, 16652662, -2605435, 5157719, 1938641, -2077154, 7767449,
--2465311, 9885941, 16393890, 3244848, 9460739, 1978369, 12328704, -27420144, -6700149, 22565758,
--16466905, -78799232, 5681705, 50727860, -30573188, -20366198, 40739912, -29553670, -1879048, -8352638,
-39101384, -67020816, 37539624, 22318260, -18891950, 7067369, 36672040, 26227754, -12794171, 15039902,
-6753836, -10147934, 17260936, -296353, 10475962, 15933792, -6736120, 3911105, -1685238, 7645579,
--9682467, -7730405, -598611, 13696651, -39756364, -19601156, 19804094, -4375498, -26356066, -31055834,
-5411122, 38857104, -16799764, -24661702, 19072876, 29015188, -6310381, 7376070, -5097053, 27038430,
--14614163, 40490804, -5450851, 190589, 22136262, 585726, 5102958, -28562070, 45081588, -23178864,
--28221156, 21527986, -29884382, -9753871, 5056250, 15034533, 41648296, -14646912, 25969520, -5157719,
-13595719, -70398808, -53948548, -9772661, -21029770, 10910291, 9747428, 26921392, -4227322, -5469641,
-31942208, -34833260, -775778, 22523346, 22095996, -7985418, 24618216, 3260417, -5247377, 35970,
--5467494, 23744190, -13104482, -1173063, 22980222, 5452461, -5216238, 9237401, -11419244, 3124589,
--875100, 579284, 9282498, 4536559, -13065827, -2794413, 4036733, -9962177, -14919106, -1074,
-10896332, 19384262, -16203301, 18949396, 6398965, -18515068, 15516643, 17998598, -8973260, -20991116,
-19488950, -9463424, 3577708, 10974178, -10710575, -27857158, 9162239, 7794829, -15574625, -14453102,
-1063004, 10867341, -12366821, -5913633, -26510148, -12553116, 19080930, -33013802, 31912680, -28142236,
--35243964, 19601694, -17153026, -11665668, 20032802, -15432891, 16694001, -12184822, 7641284, 39239896,
--35549980, -2791729, -5630702, 33013266, 4253628, 2886755, -31853624, -29928406, -10794327, -8927090,
--4862977, -9829570, 5616744, 1469416, -3488587, 4657892, 6875169, 3151969, 5279052, -6372658,
-15288473, -10362682, 14617384, -28388124, 737124, -23050016, -29791504, -17689360, 39003672, -17200808,
--17536888, -13117904, 8761196, -8105140, 17211008, 25177098, -26976690, 23634668, 4014721, -37205692,
--18763638, 76042936, 39318816, -58137752, -11165304, 36469640, -18913962, -21403970, 14519137, -18539226,
--40258340, 28418188, 12815109, -54660440, 22106734, 27259620, -32251984, -21399674, 32176284, -8239358,
--24702504, 5280126, 15820512, -39701604, 7173133, 6657736, 11040213, -30383672, -9251896, -2930778,
--9946071, -2396592, 1644436, 3015067, -18721226, 2564632, 26852136, 9072582, 1387811, 8605504,
--803159, -4863514, -15264851, -4992900, -8419747, -11339251, -25912612, 6446746, -14936823, -4436165,
-31048856, -28153510, -18491982, 22740242, -17071422, -6477348, -7588671, 10018548, -18469970, -6995965,
-28587302, 14908368, -14484777, 15844134, 8766028, -12482786, -8005282, 38955892, -31820876, -24895242,
-41561860, -673236, -33816424, 4142496, 20269562, -20263118, -42142220, 27422830, 3071975, -46788300,
-7590818, 12459700, -34216392, -1202054, 22332220, -6809671, -15444166, 11470784, 9104794, -23787140,
--2774549, 16692927, 48168596, 68131600, -26939108, 76244800, -5781026, -20592758, -15879568, -25523380,
--1951526, 12987981, 45060112, 1762010, 14024679, -11171210, -38472708, 948651, 1626719, 25712358,
-5051956, -29023242, 54573464, -23009214, 10362145, 24643448, -26888106, -21787832, -38459820, -16732119,
-24092620, 29969744, 36980204, -13685913, -89778240, 20145544, 47188804, 60421600, 51977156, -617402,
--25556130, -31743566, 11090679, 30891016, -19391778, -10202158, -79516488, -48686676, 43058656, 72255848,
-14999100, -1835562, -17294760, -31408558, -7183870, 20136954, -27708444, 11068668, -3755949, 45710264,
--1738388, 17899814, -88938576, -11212549, 1312113, 54871428, 42656004, -1043677, -26485452, -7266011,
-65371548, 29542396, -76237816, -94635848, -36768140, 19127100, 147301808, 15978889, -25315074, 20336670,
--39137352, 104565808, 32133872, -83118352, -51801600, -10297184, 74028592, 11154567, -30480310, -28407988,
--26085484, 21082920, 39981312, 19989314, -42538428, -3484292, -14453639, 35394288, -3566970, 21435108,
--7241315, -8930311, -28116466, 11134166, -8423505, -2953864, 22352084, -34612068, 20557860, -5166309,
--5007932, 225486, 16305843, 34474628, 17680232, 2406792, -6498286, 7354595, 0, 14033806,
-4900021, 15477988, 4139812, 3962644, -17127256, 8163659, 9511742, 6334003, 446140, 5221607,
-3570729, 15323370, 7540352, -12324409, 31393526, -36105104, 1153736, -14501957, 8379481, -22341346,
-21034602, 5851893, -11895449, -22530862, -11068131, -4236985, 6595459, -30760018, 7129109, -15038828,
--5853504, -24071144, -11341935, 19611358, -20558934, -7216619, -2812667, 9620727, 6483253, -7951595,
-11092290, -17590038, -1389959, 287226, 9493488, -11493332, 16790638, 12604118, -12751758, -14694157,
--5638219, 23948200, -17172352, 7625715, 17736604, 4047470, -17273822, -6520297, 7443715, -10746008,
-8058433, 892816, 3900367, -15850577, 3358128, -12865038, -561567, 12185359, 15239618, 11985106,
--8814347, 11445551, 1432372, -14057428, -2107218, 102005, 16950088, -4510253, 3570192, 14887967,
--3184718, -19040664, 26808112, -10732586, 15852724, 11805254, 2720862, 3928285, -11347304, -13717052,
-18455474, 3046743, 16231218, 5142150, 8828842, 4754529, -546535, -599685, -14248017, 1870995,
-3756486, 5285494, 5566278, -1474248, 6487011, 1414655, -918049, 2096481, 761820, 7069516,
--1928977, 5588290, -6612102, -1344325, -96637, 848793, -3770445, -1748589, 12446815, 8252243,
--2246805, -8635032, -10283762, -3412889, -4227322, 11848741, 1024350, -3094524, -7723962, -3527779,
-934155, -5921150, 13089450, 1617592, -5527086, 2655364, -408022, -1996623, 3574487, -3467112,
-11324218, -10391137, 7719667, -10091563, -29118804, 54577760, 4990215, 3022046, -21992916, 12693239,
--1817845, 14356465, 10947335, 16795470, 1887101, 4312147, -9386651, 2758980, 15391552, -1460826,
-8440148, -1291175, 2714419, 3441880, 6267431, -6461242, 11661910, -7869991, 1110249, -1229971,
-3984656, -992674, 2380486, 8883066, 9738838, -4638028, 4322885, 1936493, -2123325, -4118874,
-12956843, -3922916, 2779381, -3626563, 6799470, 5906, -6138045, 13024488, -8018167, -2745021,
-3491272, -6056978, -3643743, -1847910, 590558, -2288144, 274341, -1195075, -3298535, 4460861,
--8296266, 5319317, 3632469, -2806224, 5599564, -4154307, 6622840, -3323768, 1326608, 1341640,
--3878892, 6520834, 78383, 960999, -1967095, 8762270, -10254234, 11077258, -7725036, 1388885,
-1976222, -236760, 2119030, -1685775, 6456947, -5914707, 511638, 5553930, -6514929, 4220342,
-3826816, -894427, 906238, 3817689, 1868848, -1654099, 2582886, 759672, -753230, 597000,
-2280091, 341987, -2682207, 841814, 1235340, -1337346, 3295314, -615791, 2726231, -1604170,
-531502, 2163053, -1255204, 427349, 1526861, -1969243, 3605088, -243739, 1832877, -358093,
-3789772, -1212791, 541703, 3554622, -2933463, 4097936, -2209224, 1835562, -2274722, 4027606,
-10452877, -49754512, -123906584, 19286014, 94407136, 87718264, 152150832, -38801808, -40703404, -103553272,
--141403744, -29131152, 51161652, 54757076, 103089416, 56020332, 4435628, -26736708, -71944464, -51126752,
--8820789, -7977365, 25654376, 23817742, 13762686, 8809515, 6924024, -3762391, -17673254, -1338956,
-20434380, 189515, 4305168, -1136019, -15311558, -11693048, -26046292, -25486872, 11576547, 10716480,
-23675470, 36039072, 26975078, 13216688, 4766340, -38825432, -27491012, -21227876, -21312702, -23728084,
-4958003, 15198279, 26346404, 33705828, 27843736, 6113349, -3298535, -22285512, -22805202, -13502303,
--6611029, 2233920, 3745748, 7596724, 653909, -7244536, 2462090, -11591043, 6062347, 9943923,
-1122060, 19857244, 23931558, 7459285, -4563940, -26288422, -34711924, -13916768, -6418292, -3992709,
-17632988, 13733158, -3617436, 15568183, 16818018, 9479530, 11612518, -6382859, -12527883, -9996536,
--14411226, -11361799, -2145873, -10903848, -4361540, 658204, 8768176, 12484933, 17889076, 15531675,
-14228690, 11385421, -5916318, -13368623, -22573274, -27722940, -16201154, -11996917, 1531156, 13312788,
-19492172, 22701050, 17861158, 16547972, 10589779, -13969918, -25078314, -22542672, -11098732, -3172907,
--1065152, 1757179, 9526774, 8489003, 3990025, 1979980, 7786239, 4502200, 6767795, 1959579,
--10533407, -11460046, -7624104, -2997887, 3562139, 2608656, -3848291, -2097555, 3539590, 1918777,
-1499481, 4835597, 7638063, 3541201, 120259, -3833258, -4506495, -3730716, -4631586, -5951214,
--4598836, -458488, 3103114, 4300873, 4996121, 4050154, 1229971, 60130, 96637, 234076,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--5836861,
--78920, 1278290, 969589, 4165582, 547608, -510027, -2685965, 6121939, 3781182, 199716,
--754304, 6081137, 2064269, -1942399, -5333276, 3403762, -1536525, 2643552, -5076115, 328028,
--1214402, -3770445, -1023813, -1896765, -703301, 289910, 23622, -2748779, -1690070, -435939,
--531502, -1708860, 1829656, -175020, -1831804, 3262028, -5426691, -2572149, 2587718, -3256122,
-446140, -2020782, -2980707, 2026688, 1836099, -1596654, 2034204, 3926137, 2206540, -2034204,
--2384781, 430570, 768799, -2398739, 2596845, 4330401, -3695283, -1177895, 2127620, 1596117,
--882616, -1127966, -1806034, 2387465, 722628, -2856690, 3248069, 1585380, -2674154, -1999844,
-3415573, -2576981, -3299609, -6209449, -5404680, 2943126, 3397319, 275952, 1489817, -586800,
-1218697, -2297808, 3485366, -287226, 1611150, -1596117, 897111, -1453310, -1141388, 58519,
-2231773, -490163, -573378, -997506, 329102, -752693, 150324, 265751, -466004, -539018,
-67109, -25233, -185220, -591632, 298500, -215285, 7792682, -747861, -1573032, -3189550,
-4988068, -2654290, -282931, -4051765, -4323422, -5437429, -2558190, 4265440, -4413079, -1649804,
--1552631, 1479079, -1098975, -6058052, 3157875, 1518271, 11778948, -1202591, 5510980, -1098438,
--290984, -533113, 608812, -2483028, 4561792, -1197759, -918586, -2752537, -504122, -984084,
-7068980, 1312649, -715112, -6624450, -676994, -1273995, 1998770, -4210142, -1165547, 1139777,
-950262, -1164473, -710817, -2616172, -985158, -3144453, -1415192, 6103686, -1796370, 1932735,
-3407520, -824634, -3317325, -4352950, 1130650, 1021665, 1314797, 2705830, 3207267, 2641405,
-1526861, -1209570, -1173063, -1399623, -6128382, -1465658, -623307, 2968359, 2530810, -1514513,
--148713, 3260417, -3400004, 1340030, 97174, -849330, -1967095, -2996814, -37044, 1783485,
-1803349, 1899986, -794032, 781147, -709743, 158914, 2672544, 1083942, 207232, 23085,
--407485, -63351, 170725, 532039, -339302, -373125, 1159641, 594316, 1181116, 1210644,
-248571, 672699, -173409, 194884, 88047, -541703, -1371705, -249645, -10328859, -2523830,
--209917, -2211908, -1535988, 3609920, -7258495, -6084358, -3565897, -2379949, 1024350, 8143795,
--1778117, -25233, 971736, -5852430, -1538672, -4889284, -765578, 8625368, -676994, -4210142,
--2742874, 99321, 1750736, 1720134, -2433636, -10946798, -5246303, -1473711, -4233227, 379031,
-186831, 4419522, -2870649, 3923990, 949188, -2035278, -5869073, -4916127, 6771553, -5616207,
-3715684, 1079647, -3605088, -1357747, -3220152, -2314451, 3183645, -6031208, 3103651, 1048509,
--106300, 999654, 412854, -609885, 125628, -3061238, -4193499, 290447, -1283658, -3099356,
--1256815, -4787278, 5546951, 3794604, 952409, 4538707, 532576, -1942936, 5637145, -2987687,
--1875827, -1926293, 4289599, -4203163, 1859721, 3011846, 163746, 1862942, 4672925, 1707250,
--146029, 289910, 992674, 771484, -926102, -566399, 55298, -246424, 1498944, 724239,
-1585380, 1175747, 450972, -1438277, -1683090, 1009854, -61203, -101469, 1534914, -1076426,
--855772, -30065, 367757, 499827, -153008, -1731946, 1436667, 380641, -6940667, 8510478,
-9656697, 2647847, 2600603, -2760053, 4507568, 2260764, -5636608, 1770600, 3641596, -6739341,
--5878737, 5925981, -5149129, -743566, -3314641, 5972689, 1315334, -676994, -2182917, -38118,
--3854196, 3599183, -1916092, 2182917, -915902, -23622, 3898220, 1534377, 562641, -1495186,
-3820910, 2425046, 1149978, -317828, 3952444, -297427, 737661, -2472828, 4814659, 1088774,
-1931125, 3521873, -9615895, -3118146, -1881196, -3437585, -3335579, 990527, 5394479, -2307471,
--1415729, -2929705, -1298154, 1176284, 2384781, -6616397, -378494, 2332167, 290447, -509491,
-2902324, 1893544, -6194954, -1722282, -1331440, 3864397, -4066797, 5451924, 5901285, 3095598,
-1235877, -2724083, -122407, 487479, 3953518, -1037235, 496069, 489626, 618475, 5826660,
-658204, 6207839, 2309619, 106300, -2942053, -1680406, 2560874, -504659, 19864, 262530,
-176094, 580894, 2607045, 752693, 1032940, 114890, 998580, -2047626, -151934, 667867,
-845572, -513249, -308164, 28991, 843961, -599148, -431107, 878321, 853088, 1578401,
-747324, 1461900, -836445, 130460, 193274, -554588, 1389959, 10682121, -1991254, -159451,
-3896609, 2520609, 1884954, 3598109, 9487046, -2655364, -877247, -9154186, 175020, -7867307,
--9976672, 347892, 4242891, -12885439, 4366371, 4205310, 2304787, -3918084, -3096135, -4272419,
--1622961, 239981, 267362, 4087735, 5405753, -748935, -5328981, -3239479, 4001299, -5731097,
--2851322, -4845260, 1040993, -7825431, 3892851, 610422, -531502, 1249299, -253940, -1796907,
-4832, 5025112, -5811628, 7028177, -5345087, -631360, 1296006, -3552475, -2898029, 2745021,
-1355062, -1130650, -2718178, 5242545, 2189360, -3669513, -7334194, 841277, 1696512, 4282083,
--178778, -1907502, 369904, 2263448, -1746441, 10189273, -3413425, -1669132, -7275675, -4831838,
-11507291, 4660040, -2556579, -670552, -4000762, -4491999, -357556, 1588064, 306016, -2187749,
-2485176, 1353452, 3444027, -379568, -2490007, 989453, 103079, -1152662, 1008244, 955093,
--260382, 431644, 1362042, 431644, -322123, -1052267, 571768, 338229, -960999, 1872606,
-1597728, 497679, -938450, -2444910, 176094, -211527, -91268, 1050656, -1195612, 759672,
-1276142, -782758, 2943126, 6882148, -9192841, -5430986, 6428493, -4817343, -5130339, -5632313,
--6733435, 4838818, -1702418, -200790, -1550483, 252329, -7492034, -1496259, 3425773, 3746822,
-849867, -3956202, -5750961, -4772246, -6068789, 1228898, 7233262, 973347, 2338073, 2478733,
-2410551, -4255239, 4455492, 2772938, -3189550, -2564632, -9826348, 1509144, 2187212, -7715909,
--618475, 2370822, -1454920, 951872, -703301, -8278013, 7030862, -7712151, 6054830, 324807,
-3046743, -8680129, -4864588, -7772817, -6137509, 1129576, -2195802, -2763275, -3464965, -26844,
-3854733, -7192460, -135291, 2084670, -2335389, -8019241, -5033702, -1680943, 1496796, 3887482,
-1675574, -6605660, 7031935, -2275259, -1554778, 7000260, -9204652, -3028489, -1847910, -1647120,
-10981695, -4016868, -204548, -4168266, -3467112, 1991254, 1497333, -259309, 1159641, -887448,
--1568737, 2044941, 10737, 829466, 861678, 2647311, -1059783, 763430, 572841, 172872,
-679142, -3035468, 3921305, 3565897, -1239098, -628676, 542240, -529892, 657130, 103079,
--294742, -1466195, 874026, -763430, 327491, 3469260, 2204392, 1858110, -1452236, 2471217,
-972273, -1017370, 1111323, 365072, 817118, 14220100, -12597676, -6620155, -8378945, 6125160,
-2331630, -4256850, 2896956, -23622, 8475044, 574452, 124017, -8094403, 5784247, 9359807,
-9808632, 8169565, -4493610, -649077, 1290638, -5149129, -3519189, 1411434, 625455, -7438884,
--3634079, -3106872, 3693135, -517544, -5621039, -2551748, 1894081, 4549444, 590021, -1516124,
-106300, -3921842, -77309, -192737, 646929, -8507256, 5035313, 5950677, 1251446, 3096672,
-3547643, -6873559, 9958955, 8996883, 1693828, -6110128, 3589519, -2120640, -9120900, -2265595,
--2843805, -71404, 615254, -102005, -5487358, -4874251, -11339251, -9423158, 191126, 5835787,
--5159867, 2505577, 805843, -3443490, -9223442, -837519, 5493800, -3517041, 4938139, 9672803,
-2981244, -3869229, 5599564, 71941, -509491, 2714956, 4376572, -279710, -674310, 1291711,
-2853469, -1434519, -6167573, 463856, -97711, 767189, 854699, 2198487, 4650913, -1530619,
--723165, 3562675, 3218004, 785442, 537408, -2108829, 4488241, 611496, -213138, 2757369,
-911070, 1081258, 532039, 2500745, 2204929, 2490007, 3979287, 432181, 2410014, 454193,
-2674691, 1357210, 1556389, 1134945, 2538863, 2290828, -13496935, 1444720, -5030481, -18082886,
--13909788, 3498788, 142808, -3102577, 3239479, 8724689, -1371168, 5236639, 4635344, 2706903,
--1374926, -4690641, 3860102, -3991635, 498216, -3423626, 5455146, 9978820, -8941048, -2556043,
-569083, 3642669, 980326, -2764348, -1613834, -3310883, -244276, -4103305, 5277441, 1184337,
--6281927, 7034083, -7008850, -2219424, 8614631, 7607461, 6408628, -7275138, -4779762, -6514392,
-7598334, 10308995, -139050, -2102923, 8170102, -11986180, 1491964, 3246995, -1146219, -10067403,
-9096741, 3209414, 4630512, 8552354, 468151, -12152073, 3212636, 5027259, -3102577, -879931,
-8410620, -8674760, -8152385, -7021735, 868657, 10849087, 5866389, -1534377, 12405476, -16456167,
--6065568, 222801, 7946763, 3722126, -2367064, -13072270, -2029372, -5226975, 1474784, 5012764,
-12782360, 2206540, -3588445, 1702955, -2157147, -818191, -4205847, 51540, -3462818, 1225676,
-3498788, 2008971, 3222299, 3656091, 1167157, 813896, 45634, 680752, -1733019, -1791538,
-182536, 3859565, 1461900, -425739, 696858, 1580548, 3088618, 454193, -1005022, 570157,
--981400, 2514167, -4543539, -2718178, -1996623, 2912525, 2496450, -14540075, 14723148, 5992016,
--345745, -1481764, 1250372, 2541010, 7982734, -1497870, 893353, -2535105, -1826972, 4510790,
-2330557, 5235029, 2310693, 3029026, -9927817, -4104915, 16693464, 1705102, 4970888, 7024956,
-2644626, -5637682, -10474351, 3281355, -4363150, 410706, 3701188, -5203890, -6126771, 7495792,
-8791261, -4557497, -3238405, 6816113, -8344585, 3675418, -6419903, 2911451, -6213207, 9050570,
-1269700, -1181116, 3189013, 15538118, 4291746, 6027987, -1743220, 804233, 2654827, 11477763,
--985158, 16443282, 496069, 7819525, -276489, 14843944, 5257040, 11081016, 8406325, -1855963,
--4956929, -1328219, -5663988, -6246493, 8700530, -1748052, -3394098, 1356673, 130460, -4440996,
--2163590, 1360968, 3894999, 1082332, -7437810, -7368017, -3828963, -7522635, -195958, -155693,
--2211371, 2087891, -148176, 3062312, -448824, -3067144, 634581, -1294396, -5670431, -3575024,
-811212, 7587597, -3197066, 2810519, -856846, -79994, 3517041, -2636573, 1195612, 1724966,
--1926830, -1313186, -947577, -2169495, 1069447, -2713346, -3541201, -1348620, -3837017, 4812511,
--1351304, 295279, -413927, -284542, 508954, -1591285, 710280, 1219771, 624918, 1963337,
-2602750, 463856, 1939715, -1447404, -4151623, 831076, -1150514, 1743220, -1698660, 17060146,
--4481262, -151934, -21030308, -751082, 11235634, -5887864, 9762461, -13380971, 1938641, 1337882,
--391379, -17743584, -804233, -29561724, 1389422, -3267933, -12383464, -2168422, 1653026, -6496138,
-1118839, 7459822, 1142461, -6777996, 1249836, -2108292, 6547141, -7288560, 416075, 9462350,
-2128156, 768799, -1421634, 7246684, -4683662, 744640, -37044, 5556614, 1069984, -9993315,
--5320391, -7055021, 8239358, -18703508, 9035001, 7414724, 6380174, 3546032, 1385664, -8200167,
-5820755, -12134356, -2875481, -2568927, -2518462, -559956, 761283, 3864934, -9320616, -3684008,
-15708843, 6559489, -5734318, -6687264, 1705639, -2794413, 4787278, -3222299, -971736, -5113696,
-14246407, 7229504, -4891968, 863825, -7257958, 1654099, -5479305, -1923072, 5657546, 5248450,
--1646046, 10368051, -4085051, 5127654, -6812355, 7228967, 1061394, -4256313, -5735929, -8571681,
-2166274, -972810, 3892314, -1127966, -2522757, 1531693, 1596654, 2547453, 2085207, 4729833,
--180389, 1495186, -3679713, 2936147, -2641405, -1369021, -1981054, -432181, -4684199, -847182,
-1833414, 4191351, -4025458, -1988570, -2908230, 2860985, 2239826, -1905892, -362925, -3176665,
-2412698, 10828149, 10940892, 6352257, 5672578, -5318244, 6309844, 10517838, -7812009, -278636,
--20275466, 11618423, 7928510, -2887829, 4697621, -1303523, 1621350, 7234336, -4539781, 11315628,
--10202158, 985695, 12741020, 5581847, 784368, 9835475, -3477850, 4519916, 2593087, 5270999,
-8705899, -5141076, -1042066, 16058883, 8028368, -348429, 2217277, -10875394, 14776835, -12437152,
--783295, 12942347, 4016868, 13933948, -8742406, 2237678, -565325, -3405372, 1869385, -13452911,
--9439264, 12687333, -6317360, -2713346, -4290136, -14306536, 10162429, -3369939, -2370822, -6336688,
-6251325, 14544907, -11464341, -2330020, 9803263, -10764799, -4698694, 8763881, 12220793, -20199232,
--5390184, -1729798, 8619999, -302258, 10066866, -2441689, -7378754, 493921, 5357435, 13049721,
-6577206, -8764418, -459025, 6422587, -13007845, -7958575, -2492692, -6657200, -6775311, -792421,
-6168647, -5833103, 1441498, 6437082, 1784022, 1158031, 4494684, -1107565, 2892124, 2801393,
-2736968, 1581622, -518080, -3910568, -1340567, -1083406, -3575024, -1606318, 547608, 467078,
--542240, 566936, 3929895, -3238405, -1060320, -2403034, 1877975, 1858110, -783295, -2680597,
--5962489, 3010772, 2255395, 3878892, 1045288, 955093, -435402, -3686693, 1475858, -1475321,
--1708860, -1065152, 10573136, 22405770, 4331475, -13243532, -4720169, 4399657, -29387776, 928787,
-179852, -4599910, -1442035, 13577465, -22179748, 4880157, 10369125, -8155069, 9189619, 17144436,
-4250407, -15838229, 4288525, -3986267, -287226, -15524696, -4690105, 14166950, -1591285, 12990665,
--3418794, -4548371, 2125472, -10986526, -6179384, -7907572, -5867999, -4319127, 10597295, -11704323,
-1903207, 20461224, 13810467, 4618164, -20795694, 3461744, 13644037, 5715528, 811212, -7410966,
--9030169, -22194780, -15337328, 3177739, -7590281, -7582765, -438087, 9492415, 6717866, -6667400,
-290984, 13503377, -5196374, -2276333, 612570, 17751100, 674310, -883153, 9023189, 2835752,
--20193326, 5674189, 5848672, -88047, -16723529, 7068980, 9795210, -7338489, -5243618, -13699872,
-3650185, -5019743, 5190468, 2623688, -3230889, -5796595, 3784403, 1755031, 5843840, -2888903,
-9114994, 3245922, -6257231, 776315, -326418, -8564702, 159451, 723702, -31675, -146566,
--4530654, -3887482, -1826435, -75699, 5713380, 1931662, 2986613, 4665408, -2117419, -2706903,
-2194728, -4431333, -4010426, -124554, -225486, 1440425, -1328219, 1060320, 2810519, 3045669,
-370441, -1722282, -429497, -178241, -506806, 92342, -745714, 418759, -103079, 3958349,
--2238215, -2728378, 7094749, 5151277, -685047, 2047089, -6592775, 23167054, 1289564, -4651450,
--300648, 10251550, -4913980, 2841121, -2469606, 2438468, 8795556, -15975668, 16921098, 19163070,
-5410048, 8125005, -6461779, 10879689, 25228638, 847182, -2859911, -4611721, 10756746, -3769371,
--6069863, -2092186, 3834332, -12516072, 5616207, -11018739, 12679280, 2915746, 12768401, -7951058,
-11641509, 3500398, 15228343, 2561948, 3233574, -5393405, 9497246, 2418067, -2966212, 13698798,
--5282810, -9677098, 19346680, 15451682, 5728413, 14608258, 21166136, 25655988, -7924752, -7976828,
--8996883, 3253975, -11720966, 13927505, -1676111, -1213865, -19648402, 4627828, 22382686, 22808424,
--838056, -2925947, -15573551, 301185, 14873472, -7516193, -9207873, 8447127, 1362042, -8031052,
-2916283, -1255204, -4893579, -1056562, -4190278, -111132, 8650601, 6460168, -1705102, 1600412,
--2033667, -8533563, -11155641, -2025614, 5630166, 2324114, 7948374, -1527398, -7398081, -1971927,
-8240432, -3784403, 4709969, 7611756, -7543573, -1953136, -692027, 1998234, -362925, 5106716,
-3737695, 1891933, -7519414, 1988570, 4189204, 1330903, 1749125, 2808372, -6667937, -3062312,
-49929, -268972, -3517578, -8639327, -2782065, 847182, 4560719, 1075889, -3529926, -4080219,
--30380452, -21248276, 11064909, 4254165, -15961709, 1571421, 6951405, -14556718, -9190693, -6317360,
-17196512, 7673496, 5445482, -5561446, -4297652, -4434017, -10838350, -14420890, -25361246, 13104482,
-11200738, -5427765, 28470264, 13655312, 27333708, 18753974, 1676648, -8835821, 7188165, 3313567,
-12391518, 14271639, 15752866, -2326262, -2859375, 6697465, -7231115, -1704565, -6382859, -11882027,
--19531364, -5716065, 19734838, -4951561, -7987566, -11256036, 7804493, 11955578, 7905961, 750009,
-11596949, 22721988, -13654775, -6229313, -10529112, -7616051, -22009560, -5397164, 5464809, -10011569,
--7888781, -25286620, -36046588, 3912715, -23778550, -37317896, -27064200, -11378442, 24055574, 8318815,
-14646912, 11020886, -24943022, -10519449, 2062658, 12439836, -12437152, -14670535, -14246407, -4430259,
-7307350, -8443369, -31070330, -19522774, -4549981, -6300180, -2323577, -4618164, 17399986, 15947214,
-16453483, 16858820, 5519570, -161061, 6247030, 1753957, -628139, 4973036, -14056891, -5408975,
-5964099, 8160975, -474594, -4559108, -5145908, 2041183, -7700340, -11060078, 10055592, -8242042,
--4272956, 907312, -9711995, -9073118, -16498580, -6405944, -3955665, 1161789, 13593035, -3525631,
--2135136, -4344897, 6880538, -3687766, 272194, 6671695, 433792, -4712653, 2960306, 6656663,
--4193499, -997506, -319438, 3524558, -57669064, -9054328, 18529562, -19633906, 8053601, -7653095,
--31289374, -9751186, 33492692, 42184096, -22407382, 777926, -7725573, -34428996, -27423366, -25912612,
--27657442, -14790257, -18066780, -1501628, 5893232, -4825396, 7033546, 6484864, -11336029, -3115999,
--15550466, 6501507, -24473798, -22049826, 5258651, 3774203, -6691559, -8104067, 19149112, -5680631,
-26601954, 5854578, 24654722, -16752520, 10714870, 6936909, 29868276, 15937550, 10444287, 2809982,
-4482872, -3597035, 8741869, 12264279, -9721122, -13556527, 20883742, -2959769, -26322780, -50470160,
--60679296, -43781288, 7185481, -150861, -56516400, 18258442, 9532680, 14047227, -19331648, 2354179,
-6553583, 2422362, 28869160, 29417304, 58891516, 19495930, -31553514, -40491340, -24925306, -22419192,
--25925496, -23087060, -913754, 12466679, 16816408, -11024644, 22172232, -19246286, -26808112, -20893406,
--13919989, -10515691, -20983600, 12924630, -1584843, 12353937, 9454834, 1292785, 21755084, -11647951,
--5167920, -21964462, 7181186, 11441256, -1986422, -2149094, 6423661, -21110302, 595390, -7649337,
-3820374, -10289131, -14547054, 8489003, -602369, -6196564, -2469606, 10012106, -8249022, 5063767,
--7694971, 5796595, 5039071, -3196530, -7645042, 4450123, 4928475, -15661061, 6209986, -4181688,
--4756677, -4997195, 3095598, -10262824, -4698694, 32355600, -8655433, -61085172, -17468706, 50333796,
--6975027, 11251741, 7160784, 9429601, 17609366, 14468134, 5022428, -9925133, -3717294, 2547453,
--10895258, -2479270, 18460844, -16486232, -9871982, -16522739, -3995930, 2919504, 2102387, 4463008,
-8616778, -12539694, 11216844, 27623620, -522375, -15993921, 1443646, -10432476, -3651259, 16429324,
--17260400, 2044941, 5424544, 20078972, 28915868, -18300318, -10523207, 11316165, 1524177, 3273302,
-3338800, -12093554, -31200790, -5456756, -14532559, 28490666, -53893788, -35302484, -14599668, -5748814,
-15549929, 3386582, -19035832, -3077881, -21929030, -23539642, -8489540, -16983374, 3105261, 14179298,
-64756296, 12138114, -9644886, -41539312, -34280280, 10299868, -1070521, -38981124, 21095806, 21143050,
--39814884, -603980, 10327249, 11635066, 42885248, 18994492, 8937290, -42261404, -21898428, -29112362,
-26603564, -2529199, -8763881, -4582193, 8274792, 28255516, 23810224, -12397423, -25206090, -36603860,
-8877161, 21926344, -7722351, -3591667, 19108846, 11135240, 16645683, 4414690, 5892695, -13971529,
--4293894, -6498286, 7155953, 7739531, -2058900, -3074660, -2191507, 10375567, 11324755, -16457778,
-9580998, 7557532, 13696651, -8602819, -6234145, 8894340, 2960843, -11802033, -1361505, 14417668,
-2577517, -10206990, -21426518, -72515688, 10282152, 11188390, -2464774, -1225139, -5648419, -20915954,
-8118562, -4654134, 36888400, -38203736, -7859254, 38875360, -1874216, -26397406, -3318936, 22903986,
-27858768, 17086454, -5107790, 19917374, -15211700, 13426068, -6235219, -5266704, -13178033, 21821656,
-14814416, -14405320, -6687264, -2193655, 22125524, -2207613, 2252710, -14391362, 14869714, 9612137,
--16582869, 29752850, 1217086, -26988500, 23607288, -29311542, -15522549, 26451630, -56852484, -36283348,
-30713312, -19721952, 22734872, -36095980, 7888245, 13060459, -19906636, 622770, -1693291, -37252936,
--8749922, 38198364, 40324376, -46169288, -15420006, 13915157, -37047852, 47522740, 47589848, 6701760,
--68454264, -35993436, 72507640, -38511360, -7794829, 58788976, -34710852, -70666704, -15966004, 63578400,
--13849659, -46630996, -11561515, -85021024, -4006668, 68650760, -25192668, -68745784, -7102266, -19391778,
--9372692, 20312510, -2566780, -919123, -25130390, -16472273, -8091182, 27391154, -35029752, 1611150,
-5489505, -11040213, 1118839, 32625108, -21053930, -26421028, -3593277, 9120363, 20426864, -8269423,
-10228465, 15549392, 1691143, -23861764, -12780212, 441308, -19040664, -9301825, 36140004, -13772350,
--35458712, -9576166, 20524574, 8437463, -2772938, 4490925, -32072132, -18531174, 24260122, 35989140,
-4288525, -26847304, -13152264, 1061394, 9466645, 17995376, -10561325, -40075268, -37822020, -1156957,
--47663936, -14195941, -20425790, -19201188, -14594836, 30654256, -3648575, -10026601, -13274133, 5869610,
--16906066, -39692476, 30370250, 9490804, 26204670, 8142721, 27113592, -11029476, -17147656, 5923297,
--28849832, 22085258, -26147224, -5627481, 16857210, -19811074, -4370129, -12088722, -31593242, 4582193,
--23901494, -17246978, -20876226, -15469935, -9646497, -21192980, 3524021, 23179402, -15964930, -5772973,
-2707440, 21346524, -9963787, 7461969, -22207666, 35650376, 11047193, 15197205, 9662066, 34183644,
--2158221, -40523016, 8770323, 14494978, -11345693, -295279, 21126944, -28242094, -27959700, -32752346,
-28030030, 8169565, -40183176, 15445239, -26550950, -5344550, -37493992, 16374026, 26485452, 5319854,
--41512468, 23082228, 19154480, -5478768, -36486284, 9636296, -22034256, -7723425, -1634772, -11326366,
-17997524, -16491601, -29581588, 14456323, -6629282, 12189117, -193810, -1329829, -219043, -8252243,
--9220758, 6008123, 26356604, -3453154, -37266356, -10554345, 15495705, -18664854, -7852811, 17627082,
--6743099, -2831994, -14895483, 28951300, 17169132, -8888435, 13149579, -2613488, 5918465, 23422604,
--4279398, -21048024, 8699993, 13241921, -10684805, 16787954, -2731062, 10241350, 1255204, -8028905,
-14304389, 20447266, -11836930, -22167400, 8612483, 13123809, -10718091, -2500745, 12541305, 3995930,
-35314832, 66304096, -15899969, 32900524, 6442451, -15614890, -29567092, -17223356, 38592428, -12593918,
-7210177, 14994805, -3841848, 35563404, -5173288, 27916214, 29196650, -35734664, 18490908, -9333501,
-926639, 13152800, 10946261, -1187022, 5873368, 10650982, 35738960, 36715528, 28367186, -20685636,
--6999186, -48734456, -1401770, 11547020, 22080426, 5105643, -40273372, 17703856, -24142012, 31331786,
--28195924, -19748260, 2122251, -23636278, -3977140, -13636521, 48272748, -26313118, -12808129, -50482508,
--16342351, -26494042, 71402760, 43375412, -14936823, -48023640, -51418276, -30593052, 35571456, 46309948,
-23569170, 6842957, -61711700, -28685550, 20418812, 17362942, 2793339, 22374096, -12719009, -40679244,
-19368692, -69022808, 75196288, -7012608, -48423608, 112950120, 16315507, 39310224, 67810016, -112115824,
--80661632, 22382686, -6536940, 17146046, 24677808, -70092256, -5065377, 14149770, 1537061, 58721328,
-4296041, -30749818, -3080565, 31561030, -18187040, 13786308, 16355772, 639413, -12706661, 15431281,
--40674952, 31144418, -7825431, -13008919, 17723720, 4670240, 1392643, 18439906, -4218195, 11036992,
--2118493, 7074885, -5185100, -21460340, 13155485, 9037685, 12448963, -151934, 511101, 8400419,
-4837207, 3239479, 25103010, 27685896, 1739999, 18127984, -16934520, 2539400, -11070278, 20964272,
-19316078, 2918430, -5394479, -12666932, -29463476, 2429341, -29357712, 19871204, -41475964, 25678536,
--17064978, 42136852, -18996640, -1957431, 24012088, 4270271, 2116882, -10860899, -9392020, 1096827,
--16121697, 17779018, -2055142, 18879066, -14783814, -14595373, 4989142, 743029, -14985678, 9458055,
--1867237, 8253854, -4581120, -4059818, 7918309, -7531762, -582505, 5879274, -3026878, -3597035,
-29931090, -2057826, -9973988, -5358509, 14235669, -1301375, -16243566, 8639864, 17537426, 3531000,
-464393, -10359998, 3723737, -8391829, 8069707, 21250424, -7495255, 9713069, -7960722, -2396055,
--8723615, -4159676, 5663988, 6867116, -12362526, 7477538, 2283849, -1588601, -12357158, 2121177,
-4580583, -9216463, 13415867, 11187316, -22369800, 5719823, -20525112, -23423678, 16173236, -8348880,
-19521164, 10576894, 666257, 9947681, -3029026, -12093017, -2806224, 709743, 13633837, -6126771,
-4236449, 5567888, -7701950, -1432909, 4794257, -2368675, -1414655, 7826504, 537, 2990908,
--6371047, 2682744, -569083, -6683506, 12720619, 1093606, 10403485, -5053566, 8563091, -4256850,
-696858, -6663105, 5762236, -3246459, 12606803, -3913252, 11929809, -12173548, 2802466, 780073,
--2441689, 401043, 1600412, 9381819, -296890, -11077258, 7431367, -6252936, 1301375, 6683506,
--6725919, 11698954, -24361592, 51601348, 9773198, 12713103, -6512244, 4763656, -1458678, 9816685,
-3121368, 22022444, 1550483, -11870216, 7274601, -7727183, 3426310, 4552666, -10045929, 587874,
-2472828, -10845866, 9977746, 2605435, -4434554, 13421773, -4738423, 5338645, -4048544, 2546916,
-2589329, 1279363, -1639604, -3894462, -1784022, 1929514, 372052, -2168422, -6459094, 4912906,
--4323959, 2481954, 4312147, -4386772, 987843, -4092567, 1235877, -6527814, -10639171, 11095511,
--5880884, -2795487, 4727149, 2217277, -1838246, 1319092, 9530532, -10392210, 4571993, -3876745,
-8263517, -8723615, 5049271, 2528125, -1501091, 1988033, 257161, 183610, 4071092, -5493263,
-3181497, 2819646, -1455457, -479426, 7232725, -1040456, 2498597, -8267812, 11292006, -8650064,
--79994, 5688148, -5018670, 3903589, 1309965, 1421634, -5249524, 4348118, 4509179, -2732136,
-1818382, 2279554, -3724274, 1395864, 1914482, -752156, 3966939, 239444, -31675, -354872,
-3566970, 2772402, -2171106, 3117073, -1512902, 1432909, 1602023, -317291, 4423280, -1902671,
-90194, 2851322, -3392487, 340913, -291521, -2376191, 404801, 2558727, -679142, -1986959,
-4407174, -2714419, 9754408, -45804752, -113715168, 24567750, 94564976, 63926832, 133378600, -43619152,
--37289444, -76732808, -122642792, -12117713, 38227356, 50395000, 65765612, 33160906, 3637301, -10746545,
--28434830, -40550396, -6144488, -10827613, 3993783, 9315247, -483184, 2345589, 4903242, 2182380,
-16060493, 19078244, 11851425, -2179696, 2202245, -14105209, -29614336, -31549220, -15476915, -20689932,
-17043504, 31428424, 33343978, 36621040, 20061256, -5910949, -14462765, -26898306, -28432684, -19742354,
--11120744, -1266479, 7172059, 13817447, 14812805, 12479564, 10733123, -1829656, 2878702, -3161633,
-1415192, -2371359, -1479079, -837519, -10089952, -10545755, -7662759, -15903727, 9664, -2978560,
-1994476, 27105538, 35668628, 12068321, 12079059, -9762998, -19623706, -13530758, -23627152, -18938658,
-6671158, -1599875, -11461657, 8829916, 9411347, 11272142, 26692148, 11147588, 11700028, 2950643,
--14396194, -14135811, -11617887, -12621835, -16047072, -13647259, -8172249, 2565706, 17818208, 26927298,
-25154012, 10253698, 5066451, -6506876, -12207371, -10909754, -12099997, -13897440, -6401649, -5753109,
--498753, 4764730, 3593814, 10902774, 14368813, 10471667, 7074348, 2563559, -933619, -6751689,
--7075422, -10926397, -12399034, -9655623, -8703214, -2121177, 9212168, 13889924, 14851997, 13303124,
-5356898, 2531883, -6673843, -10450192, -5654862, -7698192, -10627360, -7919920, 1420024, 7295002,
-6718403, 3897683, 4257923, 3983582, 2929168, 984621, -800475, -1020592, -2873870, -3522947,
--3422015, -3826816, -4690105, -2426120, 1854352, 3567507, 3937411, 2598992, 1114007, 340376,
-282394, 299574, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--6425271,
-817654, 2046015, 1981591, 10121627, 2752537, 2140504, -2994129, 390842, -5127654, 1207423,
-4716948, -2387465, 228707, -991601, -2522220, -4063576, 3143916, -6799470, -3429532, -3411278,
-3693135, 4044786, 2133525, 970126, 2930778, 2420214, 4838281, -1676648, 1696512, 3010235,
-642635, 993748, -3521336, -1516124, -1469953, -1323924, 3272765, -6254546, 1051193, -2165201,
-6562710, 159988, -1175747, -1641751, -2698313, -897111, -2816425, -8250096, -2607045, -1612760,
--1327682, -1847910, 858993, -1543504, -382789, -528818, 2895882, 1295470, -367757, 1848983,
--1610613, 3546032, -2315524, -3839164, 3717831, 3893925, -1675037, -3687230, 360777, 2024540,
-1532230, 1759863, -1740536, 24159, 1433445, 1927367, 847182, -526670, 242129, 2394981,
-4616553, 2234457, -562641, -53150, -1086090, -1153199, 970126, -1519345, 942745, 1140314,
--440234, -148176, 510027, 444529, -456877, 386010, 270046, -2115272, 342524, 166967,
-663572, 378494, -803159, 767189, 612033, -53150, 9155797, -1711545, -875100, 984084,
-2527052, -6744710, 4202089, -8005819, -360240, -3874597, -569083, -2560338, -603980, -622233,
-4025458, -3390340, 4359929, -4542465, -4963372, 2106145, 6663105, -7851200, -2180233, -3796214,
-56371, -1973538, 2124398, 2819646, 1425392, 2872260, -4562866, 169114, 6407018, 2519535,
-817118, -4647155, -6641630, -3994320, 1020592, -3395172, -1917703, 1301375, 4315369, -3884798,
--3828963, 1555852, -2799245, 4958003, 1661079, -506269, 3495030, 3321620, -2684, 5572183,
-2756295, 1747515, 1476932, 3654480, 5748814, -3781182, 1100049, 1583232, -4039954, 363462,
-3284039, -1273458, 8302172, -2559801, -2201708, -1724429, 3062312, 4227859, -5382668, -2189360,
-1466731, -973347, 1322850, 523986, -2358474, 1056562, 504659, -1734093, -2852932, 1179505,
-801011, 2621004, 220654, 811212, 1202054, -113817, -856309, 1921998, 114890, -4832,
-1653562, -893890, 801011, 2208687, -185757, -474057, 417686, -326954, 681289, -1348620,
--423591, -626528, 89657, -202937, 863288, 93952, -845035, 40265, -11768747, -1913408,
--2631204, -2105071, -1063004, -1448478, 6245956, 7468948, -1718524, 6092948, 2317135, -3382287,
-1579474, -5121212, 890669, 1073205, -6884296, -1025960, 1056025, 1192390, 4741644, -923955,
-4116726, -2776160, -5284421, -5574868, -1605781, -2825015, -4235375, 4362076, -1727114, -853625,
--779000, 904628, 2364916, -6751689, 11811, 932545, -3211025, 8027831, 614180, -1990181,
--1757179, 8572218, -628676, 1081795, 5060009, 142808, 3086471, 1199907, 271120, 4727149,
--42950, -3320547, 4234301, 2272575, 2714419, 3845070, 1257352, -3135326, 2211371, 3154117,
-3053185, 4735739, 11811, -4399121, -3528316, 5555004, 7724499, -7072201, 1402307, -1876364,
--1262720, 1615445, 2938831, 2830920, -2277407, -915365, -2201708, -3650722, -3204046, -1176821,
--2043868, -3138547, 695785, -861141, 1169842, 1005559, -992137, 556198, 172336, -2551211,
-839129, -1727114, -3111167, 200790, -932008, -1305670, -1409286, -401579, 537945, -477278,
-869731, -600759, -1065689, -1439888, -1347009, -576599, 214212, 1015223, -8646306, 9238475,
-8559870, 6455336, -4484483, 5048734, 9108552, -2277943, 7121056, 2685965, 1080184, -1097364,
-7850664, 3714610, -1822140, -5612449, 3273839, -2320356, -2992519, 3184718, 3764539, 1654099,
--5566815, 914291, 5025649, -2436320, 1714229, -10969883, 1596654, -875636, 5304822, 1301375,
--2261837, -3302830, 6784975, -5820218, 488553, -4699768, 566936, -1435056, 3798362, -782221,
--1215476, -5761162, -1365800, -1011465, 7178501, 362388, -6532109, -237297, -343597, 2244121,
-3442953, -2910377, 31675, -3715147, 3988951, -867047, 4817343, -2585570, 7162932, 3550864,
--7863548, 8356933, -1184337, -5769215, 1002875, 7635915, 1571421, 1176821, -6153078, -401579,
--2371359, -3336116, -3213173, 294742, 2932389, 3759170, 2064269, 2054605, -2388002, 1813550,
--2066416, -238371, -89657, -964757, -379031, 2172180, -3410204, 934692, -312459, 300648,
-1176821, 937377, -69256, 1491964, 186831, -2260764, -2423435, 1436667, 686121, -99321,
--1591822, -320512, 413927, -219580, -681826, -1576790, 1017907, -28454, -956704, 1090922,
--628676, -433792, -1232656, -775778, -449361, -1595044, 1145146, 9941239, -3456375, -7241852,
--402116, -10848014, -38655, -9325448, -3259880, 6366216, -6660958, -7347079, 2166274, 580894,
-629213, -1742146, -2425583, -5325760, 3559991, -10395968, -3215320, 1024350, 6401649, 351650,
-6495601, 2291902, 14303852, 5462125, -176094, 603980, 6799470, -1657321, -2068027, -1309428,
-1107028, -4544076, -2268280, -7642358, -556735, -3526168, -2120640, 9352291, 129386, 5840619,
--2374043, 2365453, -614717, 3473018, -1193464, 3230889, -3244311, -4019016, -664109, 1099512,
--4049617, -4057134, 334471, 2043331, 4338454, -657130, -2058363, -917512, 4116189, 7021735,
-368293, -4832375, -6890202, 68719, 1867237, 689879, 9356049, -5907191, -338766, 4168266,
--1571421, -4953171, 6588480, 2996277, 1153736, -3301756, -3549791, -5904507, -2321430, -660888,
--3066070, -1556926, -2658585, 470836, 663036, 1437203, 169114, 403190, -3295314, -1727651,
--3531537, -1253057, -1033477, -2709051, -1720134, 888521, -330176, -1164473, -322659, 837519,
--2217814, 1068910, -1604707, -214748, -679679, -1235340, -440234, -63351, 973347, -1585380,
--2323041, 1159641, 602369, 8894340, -6857452, -1407676, 549756, -547071, -272730, -5645735,
--4354560, -622770, 3717294, 1344862, 1480153, 1559610, 3906810, -819265, 3570729, 2899640,
--9287867, -3571265, -10897406, 2810519, -3853660, 5462662, -3548180, -4811974, -3546032, 2835215,
--7272990, -6034429, 8396661, -4608500, 9105868, -2167348, 2720325, -3223910, -6178311, 6769406,
--5245229, -5864778, -616328, -3192771, -6912750, -5305895, -8709120, 353261, 5547487, 3207267,
--3405372, 9635759, 3501472, -3546032, -4512937, -6977711, 270046, -2616172, -4914517, -2462627,
--2105608, -3438121, 1800128, 7711614, -503585, 505732, -5261335, 2454037, 2573759, -4544613,
--3646964, 1845225, 9336722, 3737695, -2365990, -1240172, -2010582, -9652939, -7641284, -6407555,
-6667937, 7133404, -1078037, -3329674, 3076270, -2124398, 2695629, -1417876, 1254131, 224949,
-98247, -3127810, 2054068, -1828046, -1358283, -489089, 1832877, 1410360, -229244, -2610266,
-1617592, -376347, 1176284, -881542, -624918, -2303176, -1051730, -80531, -326954, 451508,
-403727, -289373, 350040, -1909113, 817654, 194347, 234613, -686658, 2334315, 1519345,
--144418, -932008, 191126, -1449015, 2645163, 12802761, -2414845, -15032, -2092186, 8337069,
-7903814, 2735894, -13153337, -2179159, -15977278, 9475235, 4006668, 277025, 16517370, 7822209,
--1439888, -7382512, 6815040, -3149822, 1700270, 2327336, 1085553, 5426691, -4794257, 9265855,
-3532611, 919660, -2786360, -4684199, 6286222, 5308580, -1004486, 3460133, -7858180, 1499481,
--10497437, 4311074, 607738, 5387500, -8617315, 1816234, -2804077, 1933809, 9837623, 8348880,
-409096, 2434710, -6088116, 8050916, 244276, 17102560, 18066244, -2367601, -4797479, -4888210,
--3890167, -10435160, -2909304, -13636521, 845572, -1111860, -741956, -2755759, 4820027, 8111583,
-12679817, 11800423, 9082782, -14870251, -10611254, -432718, 768262, 15669114, -10989748, 8435853,
--566399, -3121368, -1592359, -346282, -3075197, -8622147, -5641977, -1593433, 2556043, 852014,
--194884, -2321967, 1388885, -3029026, -273804, -1590749, 3341485, 3743601, -870268, -661425,
-3477313, 2675765, 469225, -468151, 1292785, 266288, 545998, -630286, 1518271, -71941,
--842887, -1348083, 465467, 1526324, 2240899, 4817880, 3744138, -1762547, 478352, -3346317,
--609349, 1563368, -246424, -625455, 124554, 740345, -4617627, 9197136, 1984812, -6772627,
--3738769, 17262548, 16975858, 19024558, -1854352, -788663, -3223910, 3213173, 9314710, 10716480,
-3120831, -4581120, -9138617, -18598820, 5535676, -10995653, -2400887, -1104344, -2367601, 1277216,
--539555, -3394098, -394600, -10768020, -4258997, 673773, -1980517, -12034498, -5070746, 1060857,
-8781061, -2447595, 270046, -9572408, -3221762, 148176, 6376953, -3863323, 3927748, -10699300,
--2971581, 2532420, 4089883, -2904472, 14431090, -2924336, -1810329, -7466801, -2458869, 5843840,
-1992328, -617938, 7536057, 10456635, 12166032, -2099165, -6067178, -6853694, 112743, 1483374,
-2864743, -4850092, 3933653, 5218922, 4366371, 4292820, 12163884, 8245801, 5441724, -603980,
-2746095, -12048994, -2255932, 1323387, 6205154, 9847286, -1846836, -5480915, 1736777, 3424700,
--2820183, 5072893, 4039417, 5480915, 850940, 2426657, -250719, -377420, -3920768, 3127273,
--1220308, 2073932, 1801739, 625992, 2885144, 310848, 4639639, 3330210, 2101850, 1366337,
-1309428, 70330, -593779, 435939, -1930051, -76773, -2414845, -3830574, -1546188, 868120,
-682363, 1755568, -796180, 1177358, -1600412, 795643, 2054605, -17603998, 21971442, -589484,
-3256122, 12027519, 244276, -4182225, 661962, -21380884, -12993350, -6096169, 3455838, -4191888,
-2481954, -9986873, 6968048, -3474092, -54761, 13231184, -12840878, -8548059, 12399571, -3853660,
--18070538, 1303523, -11126113, 2326262, -886911, 6801618, 2962454, 3437048, 1421634, -2170569,
-8092792, -882079, 10385768, 6337224, -3634616, -6191732, -5774584, 2828773, -2815351, 2845416,
-2045478, 6100464, 1822140, -11419244, 720481, 3894462, -3905736, 494995, -7837242, -1742146,
-741956, 523449, 18146236, -3154117, 12907987, 15397995, -4187056, 8245264, -2486786, -447750,
--8515310, 5442798, 13138842, 9153649, 2081449, 3599183, 8162586, -527207, 6773701, -2735357,
--3709241, -6531572, 3610994, 16727824, 3790309, -2162516, 1376000, -11762305, -3929895, 279710,
-11120207, 8077760, 3539053, 7172059, -2011118, 7043747, -27380, 4430259, 605590, -345745,
--801548, 4908611, -477815, -3099356, -1859184, -1234803, -705448, -1253057, -2426120, 3540664,
--2251100, -3077881, -843424, -4041027, -2726231, -3451543, -1927367, -2414309, -3038689, 1035087,
-770947, 1305133, 1149441, -1840930, -901943, -3191161, -4099010, -392990, -2258616, 1335735,
--1056025, 333934, 2078764, 2104534, 1518271, 3628711, -928250, -348966, 2830920, 21039434,
-3062849, 5246303, -4973036, -2522220, 14292041, -9432285, -2174327, -18562848, 17392470, 9081171,
-1258425, -6308770, -17513266, 1770063, -4654134, 2142652, -19637128, 7003481, 10385768, -11420855,
--2720862, 1703491, 1219771, 3794604, 11274826, 13853954, 57445, -34897, 2611877, 523449,
--8385924, -9614821, -6349573, -12669080, -6212670, 10783052, 5042292, -4042638, -5326297, -3544422,
--22234508, 4827543, 5367636, -10427644, 17075716, 602369, 12743168, -4590783, 8275328, -2733747,
--10981158, 983011, 10159208, -5600101, 5590437, 6493454, 18141404, 5004174, 5721434, 17350058,
-9941239, 6562173, -23989002, 4959077, 3710315, 4645007, 525060, -9818295, 17447230, -12950937,
-9968619, 10390600, -15631533, -3443490, 21480206, -19119584, 3280818, -4497368, -2026688, -6903086,
-8389145, -3601867, -7087233, -6113349, 3775276, 8089034, -7530689, 9396852, -7772280, -3446175,
-10763188, 3921305, -839666, -4743792, -4972499, -164283, -1945083, -8184597, -891206, -1766305,
--2237141, -772557, 6489159, -577673, -5890548, 519691, 2565706, 6114960, 3898757, 4851703,
--1908039, 2545842, -3489661, 141197, -1148904, 2536178, 5174362, -3817152, 2413772, 2383707,
--212601, 1374926, 1117228, -11361799, -16969952, -7668127, -7270843, -22669374, 14890652, 2056216,
-15918759, 602369, 2025077, -8058433, -4329864, 7584912, -898722, 7854422, -8417062, -2915209,
-1168231, -3996467, -6941204, 9427990, -10226317, 11293617, -4350802, 3458523, -2790655, -8207146,
--7369627, 3069291, -2848637, -408559, 5706401, 22926536, 1391033, -3295851, -8121247, 3022046,
-18490908, -3770981, -3338263, -11242614, -4042638, 1254131, -10602664, -4091493, -15011448, 9175124,
--18316424, -32956894, -3678103, 738734, 15315317, -16422881, 14696841, 9433896, -7904351, -15520401,
--2679523, 2202245, 4206384, 251792, 9209484, -6612639, -2602750, -32518808, -4545686, 32977832,
-3018825, -5884642, -4654671, -17541184, 12742094, -5832566, -5135171, -4544076, -2716030, -7753490,
--11337640, 3051038, 6180458, -607738, 4663261, -9651865, -17373680, -890132, -9255118, -2861522,
-104690, -9213779, 1872606, -6789807, -11714523, -8777303, -4350802, 3453154, 5065914, -1259499,
--13819594, -3662533, 660351, -6962679, -3189013, -825707, -6443525, -3917547, 1467268, -528281,
--5109938, -2208687, 2047089, 581431, -6727530, -2842195, -62814, 5761699, 6459094, 1541893,
--2225330, -2678449, -998580, 4234838, -1181116, -686121, 139586, 1445257, -5686000, 4847945,
--1338419, 3190087, 15620259, 13969381, -4265977, -5506685, -1213328, -22041772, 14780593, -13886166,
--11407433, -8830453, 5662915, 2374580, 13720810, 1783485, -7256347, -8560944, -8821863, 7108171,
--3295314, -4703526, 12559558, 13956496, 4873178, -9208410, 11589432, 18525804, -6873559, -3925600,
-16110422, 4204236, 3354906, -10294500, 145492, 15257334, -22199076, 15494631, -3185792, 2181307,
-9398462, 11232950, 74088, 5654862, -10365904, -8515310, 5959267, 21270826, 5849746, 5250061,
-8195872, -10612327, 2420751, 9482214, 5617281, -1687922, 7748121, 4778688, -12529493, 10392747,
--12205760, 2851858, 9235790, -9777493, 7672959, -11948599, -4600447, 2256469, 620623, 7729868,
--4735739, 6635188, -4845260, 974958, 2642479, -2194728, -4741644, -9669582, 26141318, 2808909,
-7969849, -11281268, -26294326, 18716930, -17817672, -7785702, 77309, -4141959, -2522220, -1554778,
--7261716, 4647692, 3920232, 2008434, -6696391, 8505646, 6715718, -2846490, -2741800, 2503966,
--2221035, 2353642, -2241436, 9011378, 3490198, 830539, 6567542, 6735046, -3744138, 20401,
-3403225, 4670240, 2090039, 2220498, -4074850, -5591511, 4655745, 5790153, 8594766, -1197222,
--7483981, -1121523, 911070, 3747359, -11607686, 4408784, -3735548, -1774358, 2952790, 2717104,
--2705830, 4046396, 556735, 3201361, -1671279, 7718593, -14532559, 15519864, -5622649, -15217069,
--19750944, -5477694, -1948841, 11708618, -17377974, -2741263, -1983201, 9238475, 17396766, 14425185,
-9002251, 1435593, -4376572, -2606508, -1715839, 12268037, 10084583, -2286533, 1651415, -2583423,
-7915088, -18875844, 11372537, 6309844, 8916352, 3084324, 2105071, 16414828, -6374269, -13821205,
-140660, -4493073, 1015760, -19200114, -10611254, -1047435, 16183437, -10803990, -3379603, 2742337,
--587874, 561030, 15905875, 6474127, -2395518, 1494112, 7813620, 5218386, 18520436, -5327907,
-8492761, 9495099, 5082557, -2885144, 3081639, -19985020, 8650064, -3646964, 972810, -4498978,
--10998874, -14750528, 3082713, -6973417, -20129438, 4965519, -17094506, -12502113, -2908767, -25742960,
--15613817, 3995930, 11091216, -12791486, 2844342, 1156957, 29770566, 28315646, 26654568, -675384,
-1550483, -13859323, -8383240, 11235634, -5947456, -3803194, 1890859, -3423626, 6293738, -7514582,
--3751654, -142808, 2424509, -4457639, 5776731, 5891622, 316754, -2312840, 1641214, 5765994,
--4499515, -5867999, -1479079, 5207111, -6787122, 11741904, 6725382, -376883, 5321465, -1691680,
--4741644, -7475391, -4077535, -6607271, -3600256, 4137664, 770410, 11870753, -2648921, -3556770,
--26189100, -28976534, 17293148, 15544024, 5236639, 16840566, 28176060, 8041790, -10699837, 9120900,
--4243965, -7905424, 12899397, 965294, -11497091, 7114077, 9291625, 2179159, 3286187, 746251,
-1455994, 25811142, -530428, 5558225, 2426120, 16033113, 965831, 25605522, -97711, -11210402,
-20470352, 4221953, -9021579, -3152506, 10847477, -2201171, -170188, 8516383, -15527381, 15556372,
--3259343, -22679574, -6345814, 2273112, -22698902, -2503429, -2356327, 10032507, 9671729, 17132624,
--11969537, 2653216, 2734284, 3600793, 7318088, -10836202, -12251394, 6478958, -288837, 13110388,
-10635413, 3331821, 27299886, -4500589, -4180077, -18602040, 27854474, 4971962, 19332722, 11880953,
--31054224, 4508642, 2841121, 19099182, -10087268, 8173860, 190052, -8209830, -1012539, -6623914,
-15359877, -29343216, -3558381, -2054068, 131533, 1386201, 4737349, 7251516, -91268, 13629005,
--518080, -1887101, -4344897, -2763812, 890132, -4664335, 1611150, -1232119, 4108673, 2929705,
--1388885, 1190243, -1580548, -8144869, -435939, 464930, 2087354, -8320426, 4490389, -1669132,
-4715874, 3774740, 6659347, -6730751, 7780334, -4172024, 2514703, 5666136, 5073430, -1687385,
-180926, -3007014, 4391067, -208306, 2138894, -51003, -912144, 11370389, 6339909, 212064,
-5240934, 1623498, 5443334, 17149804, -36230732, 21507048, 21883932, -9345312, 5200669, 3036542,
-5921686, 143345, 17424682, -12713640, -2742874, -13639742, -111669, -7715372, 1231045, 3647501,
--19869592, 8923331, 21599390, -14877767, -14230300, -14558329, 28758564, -12584791, -7046431, 2649458,
--9838159, -29819422, 5251672, 21599928, -29680908, -13485124, 10277857, 15902116, 4343286, -4548907,
-6896107, -10570451, -4916664, -586263, 14728517, -20244866, -16045461, 11368242, 18496276, 7233262,
--23052700, -7512972, 601832, -1113470, -3981435, 12006044, -3548180, 18144090, -14771466, -3277060,
-10201, -16998944, 10783589, -19782082, -13529684, 6245956, -8781061, 19130858, 27786828, 16316044,
--18302466, 9667971, -5347771, -5553930, -12900471, -4087198, -21055540, 16085189, 11938398, 5686537,
-694174, -10042170, -5542656, 6467684, -21971442, 17726940, -4137127, -3089155, 9376987, 1599339,
-8548596, -2461016, -1256278, -7585449, -2097018, 659278, 1584843, -5963025, -1990717, -2872796,
--2039036, 9936944, 1150514, -219043, -4691178, 4005057, 4071629, -3603478, 2295660, 4523675,
-1122597, 7653632, -2657511, -5480379, 1218160, -8901857, 4677757, 3243774, 1250372, -328565,
-3634079, -805843, 5869073, 1792075, 4214974, -7053947, -1991791, 6473053, 486405, 2605435,
-3467649, -6579890, 1081258, 6652368, 21021718, 35051764, -267362, -26563836, 5609228, -31694174,
-5411122, 14369887, 6747931, 1892470, 19030464, 14064944, -865973, -2922725, -26201448, -14133127,
-374736, -12277164, 35460324, -6492380, -8056285, -15336791, 1896765, 13320841, 9322763, -507880,
-6846178, 10371272, -15748034, 5362804, 30425012, 10755135, -20900922, -14749991, 9872519, -10354092,
--1422708, 7390565, -4640712, -17265232, -4128001, 2067490, 28991030, -6303402, 6432788, -7742753,
--23443542, 4074850, 29412472, -7939784, -17646946, 5114233, -10810433, 7176891, -6180458, -7204808,
-20212652, -5196374, -2313377, 9867687, -17431124, 6267431, 21392158, -8876087, 1835025, -12562242,
-37620692, -6863358, 4482872, 12195023, -8743480, -2108829, -10050223, 5262409, -11356430, -9592273,
--8959302, 14401562, -19565186, 2861522, -2900177, -5843840, 15202574, 334471, -5197448, -6464463,
-791348, 5702643, 4435628, -8715562, -1589675, 388158, -2435783, -10783589, -6488085, -1964948,
-2561411, 864899, 862215, 1506997, 8773008, -8866960, 9222905, 1820529, 2657511, 617938,
-7310035, -4152697, 12009265, -2646774, -198105, 9209484, 12062953, -6324340, 7881265, -3952444,
-2632278, -7010997, 6089190, 5122822, -10434623, -528281, -4185983, -1436130, -5228586, 3759170,
--6431177, 5761699, -10212358, -58040576, -20332376, -1046898, 18554796, -9729175, -29046326, -10940355,
--4250407, 14235132, 3709778, -3875134, -14361297, 15178414, 26949846, -12227772, 20374788, 5113696,
--38565048, 14393509, 18112414, -6350109, -15677704, -2935610, 23778550, 25373594, -2094333, -19232326,
-1351304, -2191507, -2480344, -16026670, 3971234, 7319698, -25428354, 17563196, 14932528, -17933636,
-3333968, -20120312, 7138236, 49196168, -43939664, 45485316, 20586316, 2063195, 27827094, 13834090,
--28437516, 17113834, -21379274, -4787278, 23390392, 1107565, 6714108, -11935177, -20818780, 63392644,
--14872935, 932545, 24989730, -12046310, 4893042, 1925756, 15448460, 35720708, 33946348, 32130650,
-2023467, -607738, -5143224, 1650878, -8653822, 2430952, 27269822, -7196218, -9429064, 2745558,
-3793530, 15839839, 18451180, 5275831, 5192079, 13115220, 5588290, -9976672, 3288871, -5135707,
--14778446, -6624987, 7806640, -11132555, -16044387, -12179454, -534723, 1496796, -9186398, 4753992,
-10452340, 1647120, -3346317, -595390, -11716134, 13943611, -2018635, -3006477, 9665287, -7938710,
-6580964, -5935108, -4743255, 16408386, -27380, -12129525, 15556372, -9503689, 9392020, 4416837,
--6058052, 4708358, -2107218, 11340861, -5147519, 3980361, 593242, 979789, -1165010, 12070469,
--6146098, -1377074, -834834, 2177549, -1711545, 5284958, 14854681, -3930432, -42831024, 19451906,
--31119722, 43751760, 5154498, -38045896, 8571144, 340913, 17852032, 8432095, -9225053, 32379758,
-7885560, 1651415, 21600464, -17275970, -24055574, 794569, 12562779, 43641700, -6161131, 124017,
--4594005, 31457952, 3399467, -24962886, -14789720, 4743792, -2792803, 13937706, -24300924, 11678553,
-3930969, 7208029, -2201708, -9464497, 5490579, 9778030, 63888, 29237990, -47144784, 4142496,
--16654809, -10300942, -6120329, -34417720, -50096500, -51782272, -37710888, 4027069, 142271, -30020748,
--294742, -5443871, 3186866, -18615462, -48278652, 47556024, -909996, -6982543, 9620727, -47106128,
--3302293, -11699491, 8782671, 13886703, 64666100, 48285632, -5480915, -552440, -1600949, 12757127,
-19496468, 11919071, 8850854, -1770063, -7900056, -45820320, 8578123, -900869, -17976048, -7974681,
-29870424, -4165045, -5560909, 14350023, -1311039, 15737834, -6205691, 7930120, -982474, -3226594,
-10971494, 13591424, -6292664, 1957968, 5881421, -2476049, 2706366, 758062, -293668, 9305047,
--4055523, -4639102, 7516193, -8875013, 11704323, 2147, 6262599, 9938554, -5103495, 2520609,
-8441221, -1987496, -5808944, -2009508, 802085, -1479616, 2182917, -11571179, -914828, -9144522,
-9535901, 1538672, 6356015, 4731980, -1583769, 387621, -836982, 4537096, 5845451, 5068599,
--12159589, 58932320, -56114284, 9695352, -10749229, 2247879, 23847806, -17277580, 6018323, 971200,
--60714732, 1574642, -6742025, 3018825, 7107634, -27093190, -10044855, -44895832, -11506217, -2130304,
-2542621, -16955458, -12707734, -19522774, -8078834, 19492710, 4322348, 39307004, 9698036, -13213467,
--13834627, 24175298, -26736708, 46224584, -35982164, 10564009, -29011430, 657667, 27865748, -50394460,
-47623672, 8451959, 5588826, -34587908, -6830609, -6513855, 98784, 16685411, 16692390, 20987358,
--39901320, -949725, -15628849, -13567265, -15297600, -21502216, -14813879, 817654, 23015656, -24405078,
-6694781, -44987100, -14969572, 11461120, 13524315, 2505577, -51147692, -27666032, -18154290, -26040924,
--21515638, 1891396, -16925392, 27350352, 8302172, 13746043, -9342628, -14053133, 45830524, -15244986,
-12409234, -9100499, 3682935, 34426312, 4726075, 6295349, -19098108, 19609210, 11467026, -7963943,
-18255758, -13495324, 5137855, -4937065, 12410845, 2572149, -3947075, 6773701, 15773804, -5219459,
-5155572, 5684389, 4837207, -1722282, 4371740, -2094870, 10888816, -3411278, 1956358, 10292352,
--1929514, -3799972, 3307125, 4548907, -6802155, -1381906, -19216220, 12332999, 8491150, 249645,
--10568304, -4221416, 1162326, 4252018, 15005005, -2229625, -3841312, 5360119, 4015795, -2015950,
-15188615, 3049964, -18036178, 4992900, 18277234, 25606596, -47421808, 72998336, -54465016, -5488968,
--32755032, 6787659, 983011, -19688130, -27981712, 33326262, 22473954, 10657961, -14156212, 14860587,
-4788889, 31484258, -24435142, -16042240, 19652696, 32720134, -41135588, 16988744, -1235340, 19945828,
--14679124, 6021544, -18105972, 4036196, -34132640, 11533061, 37091336, -976031, -2601140, 46056008,
-8207146, -20868172, -44515188, 38516192, -20000588, 17509508, -16201690, 45994268, 20402706, -4779762,
-4920959, -26227218, 3752728, 11639361, -12575664, 13029320, -55143620, 21973052, 50417548, 39510476,
--21520470, -22292490, -22454090, 25666724, 2260764, -7794829, 2261300, 65102040, -31431644, -14504105,
-25311316, -21328808, -58341764, 25138980, 13291850, -41567232, 23678154, 40801116, 35953172, -10646150,
--15790447, -28258200, 15499463, -17329120, -11087458, 26288422, 17892834, 8331700, 23003308, 13171054,
--8648454, -7926362, -29266980, 7177964, -12195023, 10512469, -10741713, 21318070, 14674830, 3524558,
--3780108, 20291572, -10760504, -1225139, 2734284, 7994545, 4780836, 9557376, 8614094, 1024350,
--4680441, -2530273, 7246147, 4092567, 2990371, 1325534, 11318849, 36531920, -971200, -2503966,
-5523865, -12212203, 4567698, 13388487, -18544596, 8575976, 9743133, -6766721, -5137855, 8884140,
-4871567, -10378788, -46938624, 25035364, -2776160, 6518687, -17227650, 15001247, 278099, 8225936,
-2454574, 2724083, -9822590, 7472170, 25339234, -32410896, 27805618, -4752382, -17176648, 5740224,
--11709691, 7558069, -11999065, -9783399, 8164733, -25829934, -2738042, 34463892, -49811420, 14057965,
-2274722, -8283382, -15384573, -18036716, -11864310, 36178656, -29868276, -4210679, 11562052, -30175904,
-7549479, 16656420, 10972031, 5749888, 5097590, -16981764, 13291850, -44397076, 481573, 39023536,
--16429324, -4285841, -8888972, -10889353, -468151, -31378494, 16523276, 12759274, -26196616, 24536612,
-6630893, -29553134, 12029667, -5635534, 21342766, 18895708, -27786290, 9778567, 30467424, -28732794,
-15964393, -20412368, 15993384, 18914500, -29529510, 16680579, -2327872, -15368467, 22157736, 1357210,
--35490388, 11026792, 15465103, 4930086, -10038412, 1910724, 26504780, -12156368, -25236690, 26823144,
--1364726, 2240899, -1401233, -3124589, 16123844, -11980274, -6105833, 11826192, 4182761, -2600066,
--12237972, 17923972, -6973953, -11314554, 697395, 9569724, -5816460, -4009352, -3038689, 14093398,
--11050414, -5274220, 709207, 7803419, -6930467, 5694590, -557272, 14017163, -8966281, 2510945,
-839666, 1700807, 24089398, -8378945, -106415864, -234564272, -92240864, -155486400, -212211120, 81916304,
-29929480, 70902392, 318740256, 265725872, 175572896, 273875584, 186482656, 23269596, 47242492, 34529388,
--144333984, -92707408, -63526324, -165281072, -168730480, -45921792, -46419468, -104464880, -30429844, -21673478,
--126058904, -108241232, -34498788, -59095528, -119012472, -28282896, -19160386, -93015032, -9922448, 66413080,
--27414776, -21930104, 97543536, 60239064, -38458748, 86545200, 142094160, 16731582, 80344880, 174187232,
-85668488, 44741748, 187810336, 137587664, 102572944, 227844800, 307889568, 243753360, 282925600, 366358016,
-239577040, 157158224, 205816976, 132957152, -35803384, -8074002, -89920512, -224297152, -317518880, -341648000,
--457647008, -520731488, -552917952, -534852288, -513977664, -511009856, -426680320, -326364352, -306217760, -199535056,
-16931834, 85929944, 111173616, 335034304, 328798016, 227063104, 334043776, 306245664, 166558832, 161895568,
-213347136, 129408440, 61351996, 149486880, 152477248, 68977712, 123349848, 185794384, 123454536, 73828344,
-158160016, 131148976, 26970784, 80641232, 116485952, 13713294, 22687628, 127436512, 78206520, 42454676,
-135013376, 133860168, 49293340, 106783624, 92249456, -23176718, -65720516, -68127312, -157736432, -213777696,
--211134144, -243776432, -268844544, -278795456, -272988672, -280032416, -311534912, -322285760, -308402816, -344053184,
--294648704, -200646384, -153515552, -52246128, 88911728, 186234080, 272623584, 352035936, 357820704, 306426592,
-278176992, 228533056, 172809088, 139306192, 116966992, 94453312, 73554000, 66612260, 61385820, 45123464,
-37513856, 33026152, 15964930, -3494493, -15859704, -34508452, -52265992, -54976120, -43868260, -32267016,
--24082956, -21229486, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--3984119,
-2426657, 3886946, -1370095, 3454228, -561030, 3645890, 1834488, -801548, -1427540, 3693135,
-312459, 736587, -4197794, -673236, -301721, -187368, 5740224, 2804077, -208843, -4306242,
--3131031, -1852742, 526134, -98784, 1243930, 2638721, 804233, 973347, -4345433, -668941,
--4229469, 169651, -2338610, 2769717, 2766496, -1103807, -2281702, 2895345, 620623, -1087164,
--3910031, -531502, -2507724, 701690, 2392297, -3968550, -1935957, -664109, -1551557, 10126996,
-2413235, 5845988, 426276, 1917166, -42950, -2927557, -2713883, -3456375, 1633161, -2851858,
-2051384, 62814, 2503966, 2559264, 6219113, 1874753, -514859, -316754, -3693135, 6021008,
-5542119, 966905, 1709397, 1567663, 1715303, -353798, -3091840, 918049, 1788854, -1165010,
-517544, -955093, -2826089, 1341640, -2357400, -1604707, -734439, 183610, -1054951, -1148904,
--1343788, -34360, -75162, -216896, 270583, -477278, 898185, -506806, -841277, -88047,
-1126892, 417686, -463856, -1523640, -448824, 1395328, 92342, 624918, 552977, 13995151,
--3311420, -2928094, -1137093, -2772402, 642098, -6654515, 518617, 1324461, 338229, 4521527,
-517544, -934692, -3995930, 2557653, -5632850, -4856535, 1752884, -2369211, -1132798, -840203,
-938450, 3795677, 5195300, 389768, -806380, 6175626, 2226404, -360240, 224949, -2524904,
-77846, 6778532, 2684, -3151432, -2548526, -732829, 2299955, -3138011, -3867081, -3950833,
--3231963, 3092913, -3040837, 1156420, -3694746, 1299228, 4472672, 291521, 3178276, -1352378,
--2522220, -1248762, 2204929, -135291, 3412352, 4990215, 731755, -1510755, -2582349, -130997,
--382252, 227633, 158377, -4401805, -464930, -2057826, -2238752, 2131378, 452045, 1367410,
-1620276, -5237713, -2918967, 2168959, -979789, 3868155, 702764, 3258807, -666794, -833224,
--900869, -1897839, -445066, -2090039, -840203, 57982, 3051574, -738198, -68719, -529892,
-966905, -28454, 1176284, 233539, -257161, -772020, 947577, -1500017, 6979, 76773,
--851477, 701153, 897648, -1267015, 424128, -626528, 545461, 528281, -3758, 897648,
-96100, -469225, -9992241, -4937065, -2165737, -6834904, -2381559, -6562173, 1906966, -594853,
--4095788, -4720169, -720481, -3859565, -113817, 3171297, -261993, -5861020, -2190433, 66035,
--2306934, -1913408, 1668058, 5483063, 7030862, -1156957, -1906429, 3941706, 4482335, -1424855,
--1068373, -918049, -3205119, 948651, 1445257, -2886755, -2171106, -687732, 2697240, 6002217,
-370441, -2048699, -20401, -3056406, -1142998, -4847945, -2295660, -2162516, -7659001, -831613,
--3489661, -2426120, -8406325, 5183489, -3673271, -3255585, 1466731, -541166, -628139, 1078574,
--6988986, -1828582, -2521146, -571231, -4046396, -568009, -1919314, 1828046, 2393371, -2285460,
--1235340, -3347390, 1155346, -514859, -705448, -6442, -5182415, -137976, -4686346, 700080,
--341450, -1483374, 1350230, 5652177, 2675765, -1347009, 282931, -1003949, -2228551, 206158,
-852551, -1119913, -183610, -1384053, 12348, -576599, -1733019, 676994, 634045, -1809792,
--867583, 479963, -780610, 236760, -1199370, -923955, -979253, -1690070, -1847910, -148176,
-438624, -936840, -1125818, -8053, -545998, -237834, -620086, -17717, -363462, -619012,
--1530619, 802085, -557272, -727997, -758062, -18480170, -1451699, -9104257, 8192650, -4735739,
-14740328, -9415642, 9295383, -8344048, -493921, -112206, -6430103, 5021891, 192737, -2385854,
-1517734, -2085744, -834834, -6257231, -49392, -4717485, 3757560, 1327145, 4597763, -2674154,
-6855305, 6179384, -5972152, 1701881, -5076652, 5432597, 59056, -3762928, 326418, -512175,
--186831, 3993246, 591632, -5883032, 2445447, 4271882, -272194, 5041218, -2325725, 4115116,
--6114423, -3091840, 4024384, -3497714, 1024350, 5427765, -4909685, 8008504, 3165391, -7860864,
-1924682, -7571491, 2740189, 4261145, 2870112, 4103841, 5873368, 2005750, -714575, -447213,
-395674, 1884417, 4223027, -1430224, 7973607, 1571958, 5465883, 2992519, 1592359, 419296,
-5483600, 1016834, 1365800, -3109556, -4267587, 2210835, 2961380, 353261, 4714801, -525597,
--32212, -838056, 5597416, 1724966, -1993939, 1303523, 958851, 841277, 1910724, 328565,
-3484829, -508417, 1203128, 695785, 1335198, -842350, 667867, 367757, 82141, 348429,
--1182190, -1028645, 443992, -1275068, -581968, -1385127, 913217, 20401, 12213276, 68719,
--3323768, -1114007, -4555350, -5438503, 8919036, -1730872, -1298691, 8186208, -634045, -1579474,
-3619584, 6371047, 1816771, 3165928, -163746, -6949257, -1843078, 5228586, -7924752, -7844221,
--2944200, 1723356, -5589363, -3353296, 108448, -777926, 5486821, -2111513, -1207423, 5794985,
-8048232, -6971806, 1819992, -1656784, 2933463, 810138, -3102577, -666794, 3343632, 5143224,
--1385127, -7238094, -1637993, -630286, -1919850, -3607773, 518080, -450435, 1312649, -988916,
-999654, 6782290, -5017059, 658741, -3823595, -3082176, -5252745, -1570347, -3039226, -7237557,
--270046, 507343, -2832531, -544924, -2997887, 2807298, 3510599, -542777, 1036698, -2599529,
--736587, 8763344, -1170916, -3617973, -11895986, -5399848, -170725, -4049617, 2727304, -1141388,
-1006633, -3221, -2404645, -440771, 3443490, -2913062, 662499, -814433, 317828, 16643,
--2507187, -1832877, -1067299, -1911261, -403727, -3031173, -654446, -1715303, 315143, -1194001,
--415001, -1630477, -1788317, -1727651, -468151, -177167, 600222, 455803, -261993, 503585,
-380641, -86436, 1673964, 1480690, -47245, 881005, -725850, -914828, 184684, 15832323,
-17791902, 3386582, -6470905, 4053912, 7016366, 7037841, 3972308, 5317170, 2382633, 8703751,
--878321, -1061931, -3544422, 5465883, -3197603, -7655243, -10550587, 1221381, -5056787, -4349728,
-3739843, -1101659, -2801393, 8894877, -630823, 11048803, 124554, -4350802, -2975876, 3886409,
-2580739, -2160369, -8731132, 12620225, 7297150, 89121, 6842957, 4097936, 4453881, -4115116,
-5027796, 2580202, 1020592, -1502165, -2237678, -5536750, -7830263, 2241436, 3810710, -6087043,
-2468533, 5305895, 7890392, 2113124, 7130183, 3332358, 6077379, -8876087, 2664490, 853625,
-1808181, 259846, -590021, 3819300, 3457449, 3379066, 4878546, -1566053, 2381023, 1436130,
-7010461, 8600672, -4306779, -5029407, 789737, -2025614, -4525822, 1951526, 4763119, -2882997,
-2032593, -8517457, -6263673, 1495722, -4314832, -1996623, -1377074, -3843996, 40802, -4832,
-521839, -45097, 1729798, 2065879, -105764, 1068910, 380641, 1576253, 1652489, 72478,
-152471, -52076, 1804423, 950262, 1012002, 2244121, -346282, -1064615, 1684701, -420907,
-28991, 2570001, 1586990, 2436320, 3294240, 563178, 1497870, 933082, 2195265, 14540075,
-4598836, 6422587, -5314485, 2110977, -13156022, 712965, -9502078, 7206955, 4853850, -4001836,
-6072547, 3449933, -6429029, -1593970, 9322763, -300111, 6424734, -1752347, 1302986, 7430294,
--9220758, -708670, 1530082, 2717641, 636729, 2989297, 409096, 9009231, -4154307, -2587181,
--2699387, 6811818, 888521, -3198140, 4160213, 11485816, -7994545, 1419487, 1572495, -697932,
-4664335, -2323577, 8803072, 2947958, 2251100, -7196755, -681826, -1910724, 4101694, 3055869,
-4429185, -4946192, -3190624, 4174171, -8579734, -4833449, 1994476, 9259413, 5658620, 8186745,
--8894877, -2840584, -9038759, -2364380, 2800856, -788127, -8523363, 1110786, -5203890, -90194,
--9329206, -11382737, -4590247, -8222178, 523986, 2881386, 1688996, -3529926, 4591320, 7264401,
-2102923, 2127620, 4251481, -1341640, -6924024, -451508, -4742181, 2487860, 865973, -499290,
-1369021, 623307, -5049271, -2647847, -1384053, 2535641, 444529, -1829656, -539555, -191663,
--670552, 387621, -962073, -513249, 442919, 2299955, 678605, 719407, 616328, -497679,
-780073, 1519345, 898185, 1989107, 702764, 1007170, 218506, 1563905, -2406792, -17141752,
--15458661, -11124502, 3373697, 3416647, 12809203, -5685463, 12164421, -4996658, -20118164, -1811403,
--1889786, -7799124, -13024488, -4772783, -306553, -8041253, -91805, -12359305, 878858, -13028246,
-7421704, -3301219, 5399848, -2580202, -256624, -4071629, -4719632, 7998303, 1547262, -2371896,
-9080098, 985695, 1437203, 3092913, 8353175, 7326678, 5583995, 103616, -9954124, -1075352,
-4735202, 1404454, 6049462, -2959233, 2676838, -14614700, 4573067, 8741869, -11070815, 6448357,
-2234457, 10347113, 7914551, -75699, -2785286, -315680, 7015829, 3417183, -9342628, -7631620,
--12903155, -6293738, -8677981, -2028298, -10727218, -2348810, -3632469, 10806675, -5129802, 5301064,
--2875481, -1669669, -3602404, -7603703, -4079682, -2499134, -2563559, 6769942, -20649130, -4473209,
-9569187, 355945, 1785096, 5066988, 9689446, -6209449, 1100585, 2499134, -520228, -186294,
--1496259, 2575370, 3965866, -1859721, 258235, -491237, 4437238, -1770600, -207232, 4440460,
-855235, 1497870, 2026151, 2029909, -823023, 278099, -1292248, -1868311, -1078037, -3231426,
-825171, 1942936, 1336809, 714038, -4147865, -92342, -621697, -300111, -1988570, 1020592,
-1738925, -1094143, -280247, 2042794, 2205466, -22512608, 17440252, -4793184, 10349261, 6059662,
--324807, -14860587, 11872900, 1694365, -945967, 7530689, 5365488, -6087580, -17717, 12776454,
-4296041, -5647345, 9089761, -4846334, -3881577, -2637647, 2972117, 141734, -1564442, 1301375,
-3942243, 3532074, 3630858, -9265855, 5851893, -7685844, 10640245, -6494528, 10590316, 3457986,
-1078037, -10239202, -10406169, -3402151, -3419331, 12306155, 3531000, 9855876, 4175245, -8672076,
-404264, -1921461, 4265977, 306553, 3764002, -1026497, -5813775, -3378529, 6277632, 15568720,
-11245835, 1319092, 3907347, -1064615, -2109366, 8012799, 6737730, -2794413, 9883793, 13909788,
-19430968, 469225, -11039140, -13320841, 4728222, 2480881, -496606, 3419331, 132607, -4230006,
--432718, 11759620, -2065342, -5056250, 20908974, 5323612, -3457986, 6190122, 212064, -154619,
--586800, -3239479, -396748, 6406481, 3218541, -1964411, -2976949, 4517769, 3676492, -217970,
-8542153, 2527588, 1676111, 1003949, 3881577, 1551020, 3642669, 2547989, 1330366, 809064,
-4570382, 2590402, 2479807, 770410, 4539244, -454193, 1837709, 2772402, 1941325, -224412,
-5064304, 5821828, 1860795, -767189, 6039261, 624918, -2615635, -299574, 4451734, 418222,
--221728, -718870, -635655, 423054, 1279900, 3015604, 10501732, -15330886, 12924630, 5326297,
--10466835, 24552180, 3701188, -12504797, 2915746, 6856916, 667331, 4961761, 17619566, -16809966,
-11004243, -6777996, 9761924, -3680250, 2094333, -15560667, 2665027, -1651415, 6283537, -5935645,
-884763, 1245004, 175020, -9107478, 8799314, 978716, -943282, 4197794, -1745904, 4139812,
--2173790, 12451110, 9781788, 12328167, 12204686, -1904818, 4265440, 5357972, 541703, -6335077,
-8628052, -10153303, 3156801, 10227391, -6038187, 5460514, -11341935, 3710315, -996432, -2605972,
--989990, 964220, 3490735, 3470871, 11927124, -7732015, -398358, 8009577, 16996260, -14975477,
-3844533, -3594351, 5148055, -2659122, 24823838, -15178951, 5428839, -8403104, -4759361, 2345052,
-2565706, 1504312, -21769578, -11324218, 17916456, 9978820, -2017561, -9569187, -11285027, -4308926,
-3963181, -11937325, -6650757, 6105296, 3272765, -86973, -405338, -8296803, 1517734, -2293513,
--3257196, 4045322, -2152316, -2433099, -1072668, -7221988, 2429341, -1732482, -2601677, -2502892,
-3275450, -3376918, 4006668, -445066, -1162326, 1610076, 1338956, 5522254, -5598490, -954557,
--4297115, -671626, 2518998, 2237678, 6825777, -2057826, 3690451, 1095217, -2720862, 11457899,
--15131707, -3231426, 21337398, -6439230, -452582, 11418707, 2662880, 7036230, -15968152, 15269146,
-971736, 1116155, -4072166, -9618579, -1344862, -1511829, -10297184, -6226629, 11368242, -3649649,
-2163590, -5620502, -25071872, 8452496, 1115618, -7765838, 4760971, 9673877, -932008, 1043677,
--1981591, 2411624, 6553047, 2063732, 10543608, 7206419, 1632088, 9207336, -7464653, -7360500,
--10460393, 3912715, 6012418, 1724429, -16579648, 4663798, -14169097, 20467130, -4881767, 7253126,
-17467632, -6925635, 11091216, 2740726, 12077448, 4838818, -5858336, -17986786, -12905840, -10078141,
--1403381, -10578504, -2124398, -9252433, -6001680, 18020610, 3896609, -7735773, -6852084, 3605088,
-6691559, -1607392, 2603824, -32871532, 13201119, 2197413, -10547366, -12986370, -3391414, -21725018,
-2327872, 10737418, 1178969, -9359807, 5745593, 4809827, -7668127, 3790309, 2269353, -1953673,
-245350, -4947803, 1280974, 1660005, 1261647, -6436009, -3506304, 2581275, -4012036, 878321,
--2425046, -1590749, 1534377, 5341866, -6837051, 2335925, 5305895, -6407018, -5995775, 745177,
--5502927, 1220308, -3655554, 3750043, 2050310, -6416681, 3568581, -4230006, -2714419, 4352950,
-1016297, 9852118, 3062312, -60130, -622233, 731755, -2595234, 7099581, -20359218, -24948392,
-14945412, -12293807, -14292577, -4144107, 9353902, 19340238, -12859132, 955630, 9172976, -2869575,
--4102231, 4910758, 3176665, 14513768, 4813585, -14136348, -607201, -7217156, -556735, -8439074,
--11075110, 1599875, 10936060, -902480, 4838281, -9226663, 2605972, 10790568, 8365523, 1180579,
-787053, 6705518, 6381785, 4015795, 9885404, -12701292, 13737990, 9838696, 3324305, -10517301,
-688269, 7926899, -8315594, 9225053, -6619619, 10461467, -2899103, 13690208, -21760988, 22907208,
-5310727, 21595096, 1313186, -4701379, -1604170, 7730405, 425202, -18229452, 617402, -1396938,
--18894098, 5828271, 13262859, -17954038, 14768245, -15819975, 4793721, 5945309, 3156801, -19770272,
--9591199, -9766756, 1787243, 1342177, -11589432, -16950626, 3176128, -14923938, 9982041, -7269769,
--3997004, 4963909, -9357123, -7248831, -9599789, -4024384, -5409512, 169114, -7706782, -5773510,
--7045357, -10349797, -5117991, -2261837, -2454037, -2711735, -3129421, -2110440, -5021354, -5458367,
-3383897, -6509560, -3629247, -1762010, 4779762, -2531883, 3221, -8280697, -6041945, -2786360,
--315143, -1978906, -7133941, -1090922, -763430, 5539971, 3481071, -4714801, -4474282, 801548,
--2469606, 4054449, -2511482, 2115808, -4485020, -11515344, 17443472, 3520263, 11479374, 11126650,
-3122978, -8591545, 1893007, 29444148, -20253992, 4872104, -3565897, -11059541, 653909, 3953518,
-4748087, -140660, 67646, -5801964, -8509941, -13238700, -6695854, 10001368, -8393440, -13300977,
-7644505, -4766340, 2929705, -1759326, 5939940, -5661304, 12524125, -4517769, 1352378, -281857,
-1321239, 11547020, 3924526, -5356361, 6152541, -4901632, 9456444, -5686000, 3877282, -13533979,
--9898289, -7247221, 2362769, -6759742, -11812234, 4978941, 8751533, 2574296, -6284074, 4051228,
-6180995, 7036230, 18924162, 26126822, 35485020, -3584150, 5655935, 8607651, 5015448, 4834523,
-5703180, -7204271, 14081050, -1925756, 18382996, 22752590, 16642461, 6823630, 9368397, 3219078,
-31733902, 9219684, -5810554, -4929549, -4511327, -1711008, -2042794, 1804423, -2533494, -5802501,
-5307506, -9256191, 2792803, -1978906, 2946885, -4515085, -3733400, -2761127, 7196218, -6830072,
--6739878, -315143, 2967286, -3340948, -8652748, -2681133, 498753, -3911642, 4621385, 8978629,
--4996121, -340913, 1865090, -642635, 2950106, 5332202, -2368138, -5790153, -991064, 3206730,
--2938831, 8217346, 9473624, 6070400, -2690260, -6095096, -814433, 9571871, 1088774, 67646,
-4170413, 1636919, -49392, -1208496, 2347737, 2708514, -6229850, -276489, 35423280, 28350006,
--12381854, -5713917, -14765561, 8472897, 4130685, 17324824, -3068217, -7555385, -3412352, -11288248,
-2525978, 389768, 16363825, -6175089, 6097243, -22084184, 12136504, -1777043, 8541616, -157840,
-7741679, 1268626, -12544526, -6527814, -10759967, -8227547, 9066676, 21792664, 9523016, -2658048,
--6769406, -357019, -1829656, 5387500, 7392176, -14038101, -265214, -4938139, -4663261, -15241765,
--11703786, -24659554, 468151, -1307818, 8879845, -7445326, 15781320, -12051141, -5251672, 31473520,
-31267898, -21688512, 4851166, 18037788, -10489921, -5102958, 9347996, -3569655, -13178033, 35005056,
--8705899, -53404160, 17772038, -778463, -27448062, 20932596, 22484690, -8059506, 15755551, 19877108,
--9401147, 600222, 12713640, -13835163, 5793911, 10903848, -19608674, -2816962, -6431714, 955630,
--7141457, -8590, 2812130, -8432095, 6759205, -9761387, -4375498, 4563940, 9564892, -5609764,
-610959, 1772748, -1357747, 3091303, -6866042, 10070625, -5113696, 10640245, 10530186, -403190,
-625455, 6933688, -5098663, 1377074, -186294, 8717173, -6555194, 5215164, 1740536, -20973400,
-4126390, -2772402, -3801046, 944893, -474057, 2039573, -11627550, 1411971, -2938831, -10566693,
-1903207, 17591112, -16605417, 5296769, 9898289, -14501420, 71404, 7590818, -13328357, -6648073,
-2406256, 6136972, 11695196, 5639829, -9622337, -1865090, 8625368, -10114648, 9930501, -5098663,
--12921946, 11421392, 5848672, 5623723, -3320547, -3353833, -4655208, -760746, 9586904, -20193862,
-9848360, -561567, 16610786, -10701985, -88584, -13273060, 5592585, -21512418, 2236067, 807454,
--8626979, -6585259, 3299609, -14532559, -24986510, 14916421, -1527398, 4384088, -14835354, 8869644,
--2516314, 9541807, 10242423, 5009006, -10507637, 8429947, -5113159, -2415919, -19353122, 2624762,
--13816910, -15138149, -22028888, -9125195, 3359738, 5927055, -22736484, -11307038, 1070521, -8231305,
--30485140, -24201604, -24881820, -5272073, -14937359, 12958453, 18304076, 4915053, -18438832, -21352966,
--24884504, -2462090, -1989107, 13342853, -12096775, -20769388, -10297721, -13885092, 4507032, 99321,
-4715337, 2305324, -6976638, 1306744, 4858145, -5492727, -2432025, -4679367, -3031710, -3427921,
--6790880, -471373, 7968238, 113817, 2183454, 2218888, -1623498, 5972152, -4197794, 9323300,
-8298951, -3525095, -7859254, -544387, -3153580, -4436701, -5028333, -4430259, 6621229, 138513,
-6221260, -6885907, -7525857, -1497333, 3323231, -11847667, 1777043, 1011465, -8791261, 1711008,
--7281044, -15429133, 9170292, -3806415, 925565, -2695629, 1353452, -7968238, -2287607, -15480136,
-26925150, 29920890, -7077569, 20207284, -5610301, -7770133, -7721815, 19681688, -16955458, -3796214,
--8009577, 31157304, 1295470, 11481521, 4204773, -2769717, 15612743, 8811125, 12808129, 4146254,
--1833951, -5275294, 12264816, -1860258, -11747809, 15006616, -259309, 13165685, -14384382, 10304700,
-3747359, -14606647, -11259794, 27157616, 17666274, -1474248, 9822053, 8269960, -17005924, -11059541,
-5822902, 4512400, 12142409, 1695438, 2779918, 4888210, 14784888, 6235219, 3903052, -14377940,
-40492952, 27303644, 3257733, -17933100, 9172976, -5888937, 5171678, -3933653, 8789114, -5716602,
-1509681, 22489522, -15278809, -7214472, -20585778, 6023155, -5499169, -3408057, 19094888, 6203544,
-2545305, 1872606, -7683160, -15221901, 11317776, 220654, 348966, 12259984, 12050068, -709743,
--8655970, -9934796, 19719806, -1798518, -1039919, -3566970, 14846091, -939524, -10210748, 7007239,
-5568962, 9490804, 4291746, 3519726, 13711146, -2525441, -4905390, 5021354, -273804, 824097,
-1259499, 6533719, -3464428, 246424, -4436701, 1762010, 6604049, -2762738, 1593970, 8519605,
--2872260, 2058363, 6008659, 714575, -1603097, -12395276, 8269960, -6798933, 5421323, -8174397,
--1853815, 3743064, -5353677, -1806034, 12085501, 9118216, 1024887, -1545115, 11283953, 2588255,
-5373541, 5356361, 2510409, -1683627, 4825396, -9709847, -21046950, 54731840, -61380452, -7084549,
--32293322, 39696772, 10720775, 7017440, -15394237, 3734474, -12553653, 35561256, -6224482, -2265059,
-3703873, -1745367, -13836774, 5330055, 8146479, 10765872, -23923504, -12583717, -12282533, 4938139,
--7186554, -6447283, -689342, -210453, 15831249, -8113193, 869194, 11906723, -1391033, -15819438,
-2086280, 12528420, -1400696, -24944634, 18751290, 2247342, 446140, -34360, -10425496, 8231305,
--46062988, -32235878, -4387309, -11544335, 2213519, 3531000, -21505438, 33996812, -13345000, 46833396,
--6484864, -16405164, 16172162, 2674691, 14452565, 21680458, 7019587, -22289806, -6030134, 25028922,
-58273044, 1918240, -14705431, 24210194, 2259153, 28554554, 4791036, 38659536, -9808632, -1570347,
--863825, 9011378, 1520418, 14835891, 27373438, 1584843, -5552319, -4880694, 8861054, -7415261,
--2966212, 17704392, 13180718, 1906966, -3096672, -6739341, -7290707, -4649839, -5881958, 12735115,
--7679402, -5573794, 6576132, 2211371, -2184528, 5655935, 6772090, -3704946, 5851356, 9002788,
--4437775, 507880, -12604118, 16165720, 199179, 12975633, 1154809, -13751948, 378494, 1296006,
-3883187, 1333051, 301185, -11851962, -10545218, -796180, -5997922, 8497593, 3492345, -4161287,
--68183, 6638946, 1734093, -4101157, 736587, 4750771, 413391, -2565706, 2226404, 79898200,
-24674588, 8687108, -2698313, -8769249, -11677479, 25972740, 23789824, -27792196, 16206522, 12277164,
-2631741, -8507256, -14882062, -37839200, -14345191, 11885785, 3690451, -12279848, 22519050, -7551626,
-8973797, 8949101, -5739687, -5489505, 23502598, 464393, -9286256, 14668387, -13185013, 28981366,
--14540612, -8839580, -1845762, 11203422, 5770826, 29313152, -9332964, -17795660, -6537477, 7627325,
-1750736, 15627239, 4060355, 1218697, -6702834, 12558484, 55051816, 23351738, -20852604, 17580912,
--11078331, -16974248, 13357348, -788663, 3683471, -1297080, 9534291, -14851460, -22606560, -59310816,
--15871515, 20892332, -8126615, -20497732, 8551817, -4939750, 8512088, -23896662, -21081846, -10002442,
-8576513, 9198209, 27870580, 4734128, -2326799, -22310208, -31587336, -4124779, -14396730, 2483028,
-10911364, -15137075, -15667504, -3542274, -19408958, -32042604, -10938208, -8699456, -17367774, -4217658,
-9068287, -9128416, -5060545, -10458782, -2759517, -22910430, -14816563, -14687714, 20401, 1835562,
-7798050, -12936441, 6732898, -17355962, 311922, -10333154, -1712081, 5018133, -5690832, 7754564,
--22882512, -4741644, 7227893, 2913599, 6605123, -3148748, -6569690, 10705206, -2625299, -2594160,
-7231115, -11539503, -9378061, -1970853, 1651415, -15219753, -7559680, -8444443, -5019206, -1601486,
--683974, 928250, -7220914, 328565, -12486007, 17802640, -14169634, 48931488, 41087804, 19277960,
--11148661, -17138530, 29390462, 25200184, -32877974, -6611566, -20114406, 28394028, -4718022, -40101572,
--17421998, 14403710, 25223270, -46370616, 18743238, -32076426, 12021077, -18902152, -4806606, 22450330,
--7418483, 3499325, 14400488, 29885456, -19376744, -32617592, 7450695, -2482491, 3691525, 30631170,
-7827041, 22881976, -28744606, -5242545, 9405978, -25680146, 42248520, -4827007, 25376814, -3437048,
--5767068, 20782810, 20844014, -11816529, 46530064, -10777147, -20024748, 22459458, 40008156, 2346126,
-7384660, 2017024, 17744120, -18663244, 14271103, 60564408, 27997282, -1807108, 26599806, 32632624,
--23926190, -73909408, 5797132, 44705776, 50633908, 13882945, -4658966, -21719650, 26394722, 55794848,
-26225070, 13667660, -54363548, 10385768, -30690762, -19180250, -47889960, 40993852, 9156333, -14025216,
--18888730, 14467597, -13571023, 7872138, 5770289, 7341173, -17548700, -3716221, -1916092, 9607842,
--5833640, 8135205, 7358890, -8049843, -4922570, 11266236, 833761, 12087649, -4748087, 4538170,
--7508140, 4336843, 23051090, 4345970, 4648229, -2808909, -23962160, -12268037, -14624364, 8114804,
-41517840, 38778724, 35459248, -2680060, -24999394, -24051280, -10991895, 16312286, 18654116, -1305670,
--7952669, -12996571, -18451180, 5049271, 11157251, 8866423, 8861591, 6523519, 723165, 33820184,
--67343480, 51163260, 10522670, -30957050, 303869, 28542206, -19221052, 657130, 15801722, -20168630,
-1591285, -18146236, -11525545, 18826990, -16419123, -9455907, -34367256, 14650670, 33199560, 9170292,
--15074261, -25624848, -4158602, 18891950, 10243497, -21931176, -665720, 25934624, -3548180, 1549410,
--9005473, -6644852, 61385820, -29752850, -7606387, -7115150, 10254771, 28280212, -30421790, -17318382,
-40373768, -5072893, -2663954, -48708688, -40080636, 16428787, 27136678, 14533632, -49627272, 33636572,
--967978, -7942469, 7045357, -35811436, -9876277, -4978941, -17617956, 31491238, -24943022, -14232448,
--26812944, -15878494, -35336308, 10219875, -55222544, -15911243, 6431177, -27924804, 6752226, 14822469,
-6678138, -869194, -9921911, -20330228, 29180008, -6835978, -2840584, -11011759, 17665738, 34904124,
-5305359, -48394080, 4214974, -21862458, 3188476, 3877282, -8735963, 2775623, -14331232, -5419175,
--1206349, -11449309, 214748, -3711926, 8429410, 6884833, -2601677, 3152506, 15688979, -7711077,
--5598490, 15366319, -11598559, 9971840, -5604933, -6072010, 1229434, -7496866, -3239479, 9053254,
--18944028, 5017059, 4538707, 6326487, 13681618, -10311143, 1715303, 9422085, 3795141, -4231617,
--8875013, -2560338, -2058900, -552977, -9085466, 1956358, -1478543, -38579544, 23527830, -635655,
-30430918, -6174016, 31474594, 4013110, -3926137, 14116484, 36508296, 17521856, 9422085, 7355132,
-4740570, 14403173, -18246094, -1414118, -13661754, -14367739, 22489522, 14011257, 8660802, -6375879,
--5543729, -2585570, 23516556, 3657165, -10285910, -16872780, -687195, -3939559, 17706540, 2747705,
-14821395, 27748710, -7631620, -70057360, 4686883, 57057568, 6024766, -41737420, -5338645, 16169478,
-12716324, 22456774, 20423644, -1595580, -13161927, -13489955, 17879412, -10768557, 2048699, 6305549,
--72768024, -12556874, -13955959, 11631308, 57273924, -979253, 4634807, -13214541, 3923990, 11871290,
-24040542, 12608950, -14164802, -7396471, -35332548, -2075006, 24324010, -10655814, -5033165, 9020505,
-24703042, 20081656, -5317170, -25060060, 158377, 9245991, 2802466, -16626892, 2065342, 2099702,
--1265942, -14343043, -18692772, 16306917, 13326210, -598611, -2928631, -14023068, 11178189, 4706211,
-2542621, 4430796, 3560528, 6564858, 412854, -15537044, 8732205, 523449, -983011, 990527,
-4152160, 2079301, -2123325, 73551, 602369, -5024038, -3036005, -21505974, 3391414, 15382962,
--10743861, 5567888, -17506824, 9979357, 4551592, -2474975, -4852776, -1632088, -1733556, 2207613,
--3860639, 19588808, -2420214, -115112640, -216399248, -87050400, -146506704, -168368080, 104485280, 36430988,
-95991448, 288896672, 189061776, 152517504, 228663520, 114071112, 7255274, 90339272, 22410066, -91710440,
--64458332, -73116984, -167773776, -136342656, -58970436, -122106456, -134511936, -55723444, -82837032, -138922864,
--71840304, 10570988, -87389696, -80032960, 17497696, -17469242, -79701168, 89006752, 58093192, -67019208,
-66034584, 100189776, 15087146, 57204132, 201543488, 95589328, 60335164, 237037104, 166104096, 96052648,
-233728368, 313306592, 193965024, 280924672, 363995808, 260001216, 172434352, 227247264, 119601416, -116052160,
--76428408, -153231552, -356656224, -357711712, -362243456, -546825600, -539878976, -542499456, -565066816, -533560576,
--518955008, -408637152, -327060672, -247448096, -102014600, 29774860, 79170744, 201628848, 350529984, 296884768,
-398152064, 566101376, 475904384, 444356256, 541167488, 400782176, 205583984, 222685472, 209030160, 78274168,
-55764244, 112037984, 41405096, -10045929, 37473052, 13161927, -78136192, -69956424, -42159936, -139772192,
--160428304, -70185672, -122082832, -168148512, -69500088, -44829260, -91661048, -1542967, 29429116, -30469034,
--4674535, -22543210, -128282080, -184868816, -207100096, -258740112, -304497088, -273414944, -249868848, -232778096,
--174697264, -111378704, -79285632, -14591615, 61543660, 95661272, 138835888, 228612512, 278014304, 324187360,
-347507424, 329170592, 293462752, 224423312, 153472064, 85607824, 11964705, -14595373, -24757802, -40394704,
--45456860, -46375448, -53682260, -57008176, -51444044, -46326592, -51407000, -55174760, -52517248, -55126444,
--60093572, -57780732, -54537496, -42010684, -24932286, -15557982, -3936338, 4896263, 3944391, 1649268,
-438624, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--6948184,
--644245, 6500970, -5812165, 2239826, -9788767, 96100, -3546569, 3928821, -3310883, 889595,
--2247879, -4098473, -1058173, -396748, 2964064, 3712999, -3535295, -6157373, 3216394, 1093606,
-2246268, 1352378, 2540473, -3570192, -2683818, 632434, -687732, 3200825, 2302103, -2732136,
--595390, 2437931, 4525822, 2784750, 25770, -3565897, 1903744, -618475, -1904818, 2495376,
-1072668, -3275986, -2745558, -2226941, 1816771, -3209951, -1732482, 2681670, 1025960, -105764,
--3362960, 1224603, -2893197, -7439957, 721555, -2539400, -4807142, 2193118, -1377611, -1379758,
--1657321, 93416, 3640522, 2192044, 1218160, 1656784, 2744484, -5606006, 2901251, -2236067,
--2164127, -1247151, 1842541, 346819, 3912178, 5706938, 2216203, 433255, 632971, -94489,
-3638911, -1553704, -149250, 1778653, 111669, -1522566, -1567126, 510564, -59056, -1717450,
--874026, 528281, -105764, -234613, -697932, -853625, 550830, 359167, 598611, -258772,
-197569, -181462, -1602023, -618475, 704375, 1260573, -730681, -846109, 268972, 14862197,
--1241246, 2734284, 3280281, -1508607, 1551557, 5928129, -4601521, -803696, 1702955, -2282238,
--440234, 4358318, -1392643, -967441, -290447, 1697049, -819802, 2105608, -1457605, -1431298,
--654446, -3358128, -5747203, -1071594, -1836635, -759136, 3401614, -6085432, 7507066, 59056,
-140660, 271657, 1425392, -166967, -2872260, 468151, 2320356, 5672041, 291521, -26844,
--852551, -1893007, 3769908, 1801202, -1365263, 2090575, -3738232, 654983, 1203665, -2819109,
--9732396, -3033321, -236223, -556735, -456877, -840740, -1233729, -689342, -1845225, 2404108,
-7183870, 4084514, 320512, 4832, -186294, 2527052, -1462436, -6526203, -221191, -3389803,
-2150168, -3848291, 2192044, -9425843, -54761, -1325534, 3211562, 5167383, -784905, -1205275,
-776315, -1074, 2770254, 1036161, 466004, 3768834, -2759517, -342524, 477815, 1363115,
-8053, 1389959, 77309, 898185, 400506, -157840, 280247, -312459, -40265, 811749,
-1190780, 168041, -326954, -439160, 156229, -179852, 673773, 510027, 327491, -194884,
-122943, 482647, -13077102, -12610024, -4745939, -1867774, -1799591, 10737, 3189013, 761283,
-2590402, -5921686, 2928631, 3689914, 3565897, 4181688, -3235184, 899259, 9839770, -6085969,
--214748, -4335233, -6287832, -752156, -446677, 5451924, -2644089, 573915, -4696547, 3011309,
-1880659, 2364380, -10528575, 1624035, -1925756, -3692598, -994285, -50466, -7811472, -5057324,
--4362076, -350577, 6526740, 2264522, 2161979, 3136937, -2920041, 1846836, -2619930, 5581310,
-8585640, -803159, -789737, 2442763, 600759, 2222109, 4824322, -2261837, 4991289, -779537,
--153545, 2955474, 4042638, -1527935, -5840082, -5370320, 2075006, -732292, -1003412, -2365453,
-2651069, -4471061, 1662152, 3356517, 5665599, -3291556, 5432597, 3551401, 1766842, 2718714,
-655519, -916439, -3659849, 2607582, -1722282, -3413425, -4317516, 1794760, -1423245, 2607582,
-457414, -1658394, -2015413, -1023813, 858457, -1060857, -380105, -1364726, -605590, -77309,
-1327682, 703301, -42950, 776315, 2617246, -246961, 6979, 1534914, -826781, 436476,
--576599, -441308, 752693, 1107028, 1107028, 715649, -16643, -337155, 816581, 395674,
-1791538, 2153389, -1709397, -169651, 942208, -14339285, 6152541, -6439230, 11455215, -10736881,
-8369818, 4249870, -4482335, -5592585, -3130494, 2157147, 1938641, -3035468, 6739878, -2472291,
--6514392, -1354525, 6972343, 4772246, -7127498, 1102196, -926102, -7458211, -3114388, -4807679,
--1154809, -5716602, -1549410, -2401424, -7872675, -2821794, 3939559, 5679558, -1139777, -6741488,
--1396401, 4734128, -1500554, 141197, 286689, 83215, -6714645, -221191, -836982, -1716376,
--351114, 1156957, -4818954, 2710124, -5157182, -133144, -71941, 85899, 3761855, 58519,
--1802813, 1528472, 2597382, 6258841, 2830384, 1408212, -1854889, -3913252, -3705483, -1546188,
--4043712, -2898029, 2326799, 4091493, -3059627, -5083094, -3499325, 1588601, 852014, -4768488,
--1663226, 574452, -4024921, -1853278, 520228, 1206886, 1590212, -1860795, -2238215, -3049427,
-83752, -387084, -1194001, 921271, -1028645, -359704, -2340757, -533113, -805843, 2013803,
-973884, -843961, 968515, -139586, 288300, -1007170, 89657, -605054, -73551, -840740,
--1564979, 1091995, -130460, -1487132, -943819, -158914, -1367410, -1579474, 17548162, 7016366,
--1110249, 4022237, -2747705, 9860171, 4207994, 17714056, 399969, -17027934, 4449049, 10417443,
--6091874, 1870995, 7204271, -5428839, 5102958, -4392141, -890669, -5428839, -5145908, -1600412,
-1527935, -516470, 2444910, -2299418, 7652021, -4478577, 2222109, 1445257, 5009543, -8981313,
--4621922, -3513820, -981400, -3151432, 939524, 5555540, 4022774, 8795556, -1189706, -607738,
--4894652, -1598265, 5617817, -5349919, 4657892, -5003100, -2022393, 8072391, 11699491, 8353175,
-1559610, -6083821, 4394826, 3226057, -3155727, 6789807, -4351876, 1366873, 1173063, -12306692,
--537, -11664594, -4599373, 1896765, -2984466, -5552856, -4657355, 1005559, 8149164, 2033130,
--3168075, -4052839, -3474092, 834834, 1421634, 3869229, -5966784, -5458367, 497142, -1034550,
-488553, -1554241, -779000, -958315, -398895, 1842541, 600222, 855772, -661425, -1249299,
--1103807, 375810, 3339874, 1084479, 2466385, 755914, -3536369, 2784213, 1387274, 517544,
-683974, 1612760, -221191, 1390496, 419833, -25233, -995359, -839129, -1430761, 472983,
-1684164, -290984, -594853, -858457, -5054640, -585189, -475131, 177167, -654446, 10864120,
-21988622, -9557376, -7099581, -1914482, -2571612, 7671886, -7306276, -13318694, -4612795, 943282,
--3257196, 3838627, 1817308, 6652905, 2791192, -2650532, 9562745, 8967355, -4123169, 659814,
--6158983, -1038845, 344671, -3788161, -731755, 6693170, 9598715, 391916, 1583769, 3954054,
-2528662, 1549946, 660888, -3624416, -6888054, 800475, -9910100, 363998, 2281702, -3153580,
-3898757, -2505577, -5477157, -421981, 5340792, 2367064, -2387465, 16197932, -43487, 5228586,
--9635759, -2144263, 6617471, -3093987, -7133404, 4203163, -8360154, -7496866, 1713155, 9189619,
--7512972, -4224637, -2216740, 384400, -3399467, -3389266, 12398497, 7250979, -1117228, 692027,
--5828808, -4178466, -2367064, 3726958, 4905927, 430570, 3934727, 2541010, -790274, 3648575,
--3346853, 12374875, 7019051, 1364726, 403727, 1141388, -2084133, -799401, -2074469, -2196876,
--57982, -79994, -1996086, 1068910, -3015604, -910533, 2366527, -846109, 2425583, 1379758,
-2295660, 96637, 1588064, 1803349, 1645509, 310848, 2724620, 893890, 390305, -1962263,
-210453, -726923, -13959, 135291, 991601, -130997, 905701, -1870995, -62814, 8677981,
--15627775, -2124398, -11744051, -6699075, -10641318, -2727304, -1655710, -1619740, -4106526, 4720169,
--14983530, 7669201, -5126581, 4552129, 1975148, 6221260, 325881, 2568927, -6054294, -2578054,
-2770254, -6025302, -4383014, 7333657, 2004676, 3311957, 2931315, -769873, 1955284, 10926934,
--3944928, 1037772, -4955319, 8785356, -5335960, -19565186, 6032819, 3062849, 8209293, 4435628,
-11320997, -7671349, -3054259, 6833830, -2863133, -6560563, -3112241, 3551401, -9517648, 9378598,
--345745, 6248104, -8036958, -3529926, -2927020, -8705362, -1784022, -6922951, -3164317, 727460,
-10002442, 8055211, -921271, -12288438, -7010997, -2268817, 9716290, 8038032, 5850819, 5413270,
--3455301, -14222784, -3645354, -424128, 3321620, -4497368, -1404991, 7264937, -1396938, 8588324,
-102005, 5947456, 2273648, 278099, -2200634, -237297, 3236258, 856309, -1513976, 286689,
--3931506, -683437, -230318, -5264020, -3150896, -3368328, -1642825, 1028108, -2116882, 841277,
--2835752, -378494, -832150, -1546725, 2299418, 1104344, -488553, -3586835, -1389422, 1417876,
-2342905, 30602, -3481071, -1852742, 788127, 1784022, 494995, 857383, 264141, -20565378,
--24823300, -14068702, 10043781, 720481, -4713727, -5334350, -7999377, -930397, 2579128, -13886166,
--1418413, 8620536, -5423470, -3878356, 9633075, 2470680, -6514929, 2364916, -6307697, 14350023,
--4760435, -3519726, 4574140, -7595113, -4803921, -4489315, 2348273, -5298916, -2048163, 2334852,
-1649804, -17035988, 7486665, 7306276, -4976794, 13047574, 4953171, 1174137, 12497818, 7109245,
-2157147, 1687922, 13521094, -1430761, -2411087, -989990, 8274792, 4608500, -12422119, 4711043,
-3777424, -160524, -6656126, -19972672, 8698919, -1377074, -4985384, -12548821, -7126962, 7604240,
--1707786, -3699578, -8391292, -16251619, 1562831, -2302639, -8667244, -3677566, -15378667, -2504503,
--3512747, -2950643, -726386, 5435818, 11682848, 4985920, -4000762, -8455717, 3191698, 540092,
-4835060, 3037616, -1964411, 3537979, 1240172, -431644, -4623533, 376883, -7482907, -483721,
--1697586, 1192927, -2932926, 3467112, 1999844, -853625, -675384, -739808, 438624, -1712618,
--498216, 1986959, -863825, -764504, 3767223, -1533840, -1048509, 3055869, -2433099, 1839857,
--6271189, -4052302, -2346663, -3313567, -398895, -3290482, -4433480, -3269544, -988379, -685047,
-1410360, -162135, -2734821, 1545651, 515933, -21169356, 17037598, 959925, 8710194, -1549946,
--704375, 1607928, 9409200, 938450, -1164473, -12781823, 4558571, -1394254, -9876277, 2595234,
--6450504, -4952634, 18349710, 5227512, 5655398, -3944391, 6577743, 7946227, 7674570, -4432943,
-6702297, 3491809, -7713225, 5050345, -7501161, -2574833, 4807679, 2294586, -766652, -4145180,
--3905199, 12221866, -3537979, -5332202, -3417720, 2518462, 2663417, -5801427, -9827422, -688269,
--10545755, -1216550, -9507447, -3561065, -2248416, 1905892, -4839892, -8206072, 10422275, -4265977,
--11455215, 7372848, 12247636, -5882495, -3911105, 6238440, 4506495, 12178917, 7856569, 1279363,
--106300, -12416750, 3022583, 12007118, 9622337, -8430484, 9174587, 9981504, -6626061, -18458158,
--5964099, -16524350, 2799782, 9584756, 4809827, 1220308, -4970351, -6639483, -738734, 949188,
-2889439, -1438814, 5436355, -2354716, -1904281, 2210298, 5755256, -8375186, -1117765, -984084,
--2573759, 150861, 2317135, -380641, -261456, -1238024, -163209, -1248762, 476205, -4295,
--179852, 913754, 3004867, -2494839, -1496259, 1832340, 1931125, 6437619, -613643, 2764885,
-2495913, -2593087, 2256469, 1146756, -2371896, 754304, 934692, 884763, 2568927, 5657546,
-1178432, -1702955, 3695283, -998580, -2058900, 472446, 4145717, -33678988, 16247324, 4655745,
--1513439, 22843320, -1270237, 11601244, -10102300, -2305324, 1870995, 223875, 13089450, 8356396,
--17599702, 11116986, 907849, 6707665, -15845745, -541166, 9273371, -15546171, 19626926, 5379447,
--136365, -6903623, 1241782, 8551280, -13947906, 1374926, 3653944, 2561948, -8572755, -3119220,
-8251706, 4711043, -807991, 1299765, -5615133, -9642738, 4094715, -16358994, -611496, 23638426,
-23065584, -7278359, 2920578, -929324, 6651294, 16631187, 1461900, 7996156, 2697240, -8616778,
--586263, -1584306, -24911884, -11206643, 15527381, 787053, 4833449, -5961415, -1466731, 5569499,
-7551090, -610959, 19308026, 347355, 15074261, 1938104, 3229816, 2028835, -9760850, -12275553,
-15264851, 3588982, -7864622, 11098732, -8974871, 885837, 9397925, 1579474, -2327872, 4413079,
--3947612, -3784940, 4735739, 6472516, 519691, -8532489, -4075387, -9197672, -3246459, 2353105,
-3044595, 1555852, -3522947, -1620276, -6601902, 4871030, -18254, -2631741, -1157494, 2082522,
-1182190, 6025839, 5406827, 3518652, 3538516, 1235877, 4308926, -2791192, 2019172, 2333778,
-2240362, -2431488, 4354023, 2315524, -569083, -721018, -1046361, -1009317, -1886564, 11305428,
--24597814, 9882720, 15497853, -2145873, 4609574, 6972343, -3761855, -2383707, 9564355, -3605088,
-14513768, -13816910, 7550553, 17939542, -19226958, 775242, -9143985, 11330124, 4784057, 9396315,
--9728638, -7604777, -110059, 24242942, 281320, 12263205, -5440113, 737661, -1666447, -2160369,
--10761041, -422517, -3017215, 4932770, -4802311, -6989523, -5861557, -453119, -2039573, 10945724,
-1888712, -6066642, -5488432, -5586679, -2035815, -2667712, 17888002, 767189, 8987756, 602369,
--4287988, -3927211, 14879914, 11082089, -4274030, -14025753, 7921531, 5427765, -30878130, 1777580,
-17438640, 16980154, 3974992, 13498008, -18624052, 30516816, 2691334, 5824513, 6054830, 14545980,
--1128503, -13079249, -3955128, -15450608, 17573396, -7785702, -5186173, 15297063, -441845, -6052146,
--4645544, -11549167, 10937134, -18835580, -2740726, 1782411, -438624, 2648384, -3879429, -8104067,
--5116917, 2478196, 2093797, -3848828, 1006096, -3673808, -3898757, -2933463, 3485903, 1770063,
--4427575, 4114579, 875636, -5465346, 2493766, -1035624, -1872069, -4183298, -4660040, 844498,
-2324114, 9687836, -4224637, 5715528, 752156, -1997697, -653372, -1206886, -2517925, 1427540,
--224412, -2965675, -917512, -2077690, 839666, 1903744, 1651952, 9299678, -18372260, -14714558,
-12912819, 10846940, 26673358, -9584756, -7218230, -4900558, 4923107, -11501922, -1500554, 4323959,
--929860, 14277545, 9148817, -11664594, 912144, 3245385, 8192113, -13267154, 13664975, -363998,
-5979668, -2462090, -6428493, -13911936, 4731444, -2521146, -5948530, 2638184, -8592619, -8357470,
--1982127, 4186519, 16581795, -25024090, -15196668, -13560822, -15220827, -4415764, 17198660, -10392210,
--615254, 16929688, -2647847, -7839389, -14941654, -4136591, -6519761, -30751428, -23902030, -6848862,
-5223217, -3068754, 5207111, -6944962, -5046050, 14390288, 8632347, -15452219, -8051453, -17277580,
--6957310, 1256815, 6707129, -3218004, 1687385, -14765024, -11842299, -10823854, -448287, 2345589,
-774168, -13982803, 304943, 18455474, 7881265, 21088826, -16877074, 25807384, 2151779, -16289737,
--2829847, 593242, 4409858, -2860985, 6924024, -10021232, 4540318, -8893267, 3979824, 5820755,
--2027225, 13140452, -1255204, 2985002, -3728569, -4953708, -2851858, 234076, 2862596, -5231270,
--1046361, 1557999, -1271847, 4959614, -1669669, -2703145, -8723615, 3650185, 411243, 4349192,
-1772748, -3022046, -8215736, 2464238, -10464151, 2482491, -2820183, -565325, 965831, -2357937,
-681826, 1491427, 7042136, 2674691, -3236258, -13123273, 2500208, -1446330, 30200062, 3290482,
-14537391, -12603582, -8574365, -3100967, -14245333, -9039296, -13761075, -6394670, -8924942, 16392280,
-4101694, 4137664, 16875464, -448287, -983548, 7635378, 15181636, 23771570, 17358648, -3564286,
--6470905, -27361626, 7523172, 8587787, 3319473, -17056926, 19712290, 7881265, 11572253, -3223910,
-1075352, 11228118, 24625732, 24019068, 13817984, 2921652, 25603374, 683437, -7675107, 8339753,
-15514496, 12647605, 23023172, 12202539, 486942, 2800319, -13940390, 6059125, -34798360, -5932424,
--3525631, 7738458, 27293980, 15407121, 3994320, 19887846, -14459007, -13041668, 2770254, -33712272,
--8107288, 1428614, 6429029, 7854959, 8879308, -1990181, 14763413, 1893544, 7609072, 27391154,
--16894254, -8713952, -4711043, 5255966, -3268470, -25770340, -4941360, 17648020, -1345399, 22371410,
--12053826, 660351, 9164923, -2116882, 2516314, -9272298, -4643397, -7188702, -4908611, -7981123,
--6674379, 1791538, 1287417, -16058883, -7577933, -9029095, -2523830, 3010235, 4761508, -7139847,
--408559, 2193655, -11445551, 1725503, -4678293, -7385197, -4015258, 614717, 2639258, -5056787,
--1424319, -7755637, -759136, -2057826, -2682207, -5651103, -8499203, 2138357, 2604361, -4522601,
--3338800, -3314641, -2710661, 1535451, 5328444, 1575716, 1557463, -23238994, -7289097, 4283156,
-17659294, 32396938, -12953621, 619549, 5397164, -5883569, 30032022, 5364414, -14718853, 26317948,
--5366025, -8767102, 18854906, -17015586, -9927280, 1195075, 1700270, 2389076, 12368969, 6635188,
-10048076, -3013457, 5355288, 15105937, 972810, 10313827, 1938104, 440234, 16695075, -21690122,
--7845295, -7327751, 14539001, -11036992, -2826625, -6485401, 14399415, -6046777, 31968516, 23381802,
--21692806, 10695542, -26075820, 3791383, 9492415, 5125507, 5699422, -33259152, -6410776, -32075890,
-4311074, 2689723, 3966402, -5032628, -5771899, 15401216, -27685896, 9578314, -11959873, -52206940,
--19513648, -17061220, 8648454, -7572564, 7998840, 26186952, 27928024, 15829639, 14718316, 13652627,
-4010963, -20738250, 21864068, 73014, -24079734, -19166292, -30275224, -40135932, -20666308, -4031901,
-32182190, 11616813, 2008434, 12344273, -9763534, -195958, 6233072, 5168457, -2534568, 4741644,
-1574106, 3298535, 1399623, -9901510, 8067023, 5352603, 3990025, 1625645, -5137855, 2849174,
--7665443, -2727304, -11936788, 10015864, 7596187, -1621350, 1144609, 8018167, 12745315, -5682242,
--12325482, -3728569, 10137733, -2211908, -7335268, 10799158, -875636, -6232535, 7490960, 3008088,
-542777, -1825361, -219043, -5290326, 3689377, -3366718, -1469953, 7741142, -41836204, -19655918,
--14792404, 7250442, -32010392, 10918344, -19299436, 26495654, -31834834, -40261560, -9039296, -6145025,
-30853972, 14867566, 13516799, -8420820, 3237332, -19720342, -15940234, 3218004, 6149857, -25302726,
--23574002, -16639240, -2474438, 12169253, 8639327, -17881560, -22470196, -13185013, -13431436, -30304216,
--17678086, 12855374, -8733279, -576599, -4520453, 9334038, 15031849, -4440996, -45212584, 18534932,
-37090800, 13601625, -1213328, -45346800, -11116986, 19246286, -5980205, 49890340, -5746666, -40895068,
-6313065, -7204271, 2983929, 741419, -8474507, 10505490, 13106093, -43126304, -11777874, 1971927,
-14785425, -8321499, -22135188, 19027242, 1593970, -14877767, -42953432, -49795852, -25783762, -3537979,
-3307662, 39205536, 55581708, 28431072, 21608518, 9204115, -32749662, 11463805, -455803, -17330730,
--5174899, -53803592, -11542188, -721555, 127775, 1516660, 23035520, 8380555, 6684043, -9960029,
--3336116, 19879794, -14062797, -599148, -1101122, 3552475, -10499048, -17229262, -19109920, 7994545,
--9046275, -3445638, 10796474, 29528, 1547262, -14750528, 4631049, 4279398, 2261837, -12207371,
--6225018, -8167954, -12665322, 1302986, -7445326, 13020730, 5023501, -9511205, 1517734, -3757560,
-9023726, -12947179, -1879048, -925565, 6349573, 5539434, 2813204, 6769942, -328028, 3410741,
-75163000, 69035160, -29177324, 35800700, 31707060, -8952322, -5412733, -16511465, -8961449, -19402514,
--13669807, 57280904, -3167002, 33367064, 351114, 1615445, 386010, -22619982, 5331128, 4681515,
--49766860, 7403987, 11965779, -26147224, -5542119, -8055211, -3645890, 7366943, -1567663, 1531156,
-21801254, 8895951, -10748156, 6770479, 34797824, 604517, 15978352, -830002, 13015898, -19206020,
--23344220, -12969727, -42769284, 11451993, 4660577, -18917720, -51952460, -33818036, -48581984, 35347580,
--25287694, 5558762, 8613020, 8072391, 6602439, 37725384, -36378908, 270583, -20452634, 39936752,
--89593552, 18418430, 6769942, 28681792, 25893820, 202937, -8404177, -13616120, -4108136, -25918518,
-18930068, 52771188, -4170413, 10958072, 33103998, -23144506, 13049721, 16298864, -29430726, -20204600,
--54435488, 45037564, -8904004, -39502960, 26390964, -6564321, 17175574, -1124745, 14860050, 2647311,
--11817603, 18701898, 17651778, 2979634, 10029286, 17017734, 9875740, -11304891, -5087926, -11039140,
--5119601, 14355928, 27113054, -1122060, -5267778, -1049046, 17319456, -27598922, 15633681, -7442105,
-36727876, 7387344, -22255984, -4416837, 16149077, -8536248, -11816529, -8579197, -6948184, -8434779,
-8714489, 6449431, 23337242, -19713364, 915902, -2223719, 12603045, 894427, -2003065, 7729868,
-8986682, 7242389, 15014669, 1968169, 17348446, -26094610, -24743306, 30555472, -62287228, 42921220,
--25697864, -17964774, -11305965, 3894999, -18046916, -14053133, 19509352, -6011344, -42606612, 14678051,
--2625299, 7521562, -9605694, 37848864, -30909806, 1298691, 15705085, -10742250, 11894375, -25228102,
-2067490, -21709986, -10996190, 23579908, 3024731, 9441412, -13405667, 22795002, -6566468, -10656351,
-8753680, -13978508, -11617350, -7474317, -7672422, -23559506, -31524524, -8788040, 17530982, 270583,
--9849434, -31499290, 1244467, -24896852, -1624035, 10022843, -24592446, -6063957, 18174690, 18409304,
-13411572, -30567820, -14425185, 21076478, 6910066, -584116, 17125108, -100325064, -23159000, -11178726,
--45525580, 4497905, 12582644, -2661806, 8472897, 21527450, -12338367, -21310554, 5502390, -19343996,
--5797132, 20905754, 33195802, -12540231, -39917964, -24106040, 2665564, -21307870, 3412889, -16521665,
--15550466, 4203163, -31958852, 420907, -19912006, -6100464, -10870562, 4535486, 8189966, -3127810,
--19753092, 4447976, -1217086, -12465606, 15629386, -587874, -14513768, -4965519, -3717831, -5443334,
--10015864, 5581310, -9130564, 7678328, 10644540, -4036196, 1355599, -6056441, -13706851, -19479288,
-3670587, 2742337, 9266392, -22547504, 4959077, 68183, -14442901, 11462194, -5840619, 8270497,
-18691698, -41000832, 8584566, 6024766, 12226161, -6600291, -3896072, 13875966, 766652, 67275296,
--8640400, -18760418, 2459406, -7614977, 33282776, 6170258, -2930778, 31585726, 32061930, 10441602,
-12344810, 17514340, -39743480, -22058952, 32789390, -4634807, -32640140, -16617228, -14864345, 22276922,
-11922829, -12101607, -47090560, 14453639, 7283728, 6070937, 7627862, -5840082, 4683662, -35426500,
-31435940, 21705690, 11545409, -17847736, -15078556, -259846, 15705085, -3649112, 16338056, 6948720,
--37245420, -16746614, 5812165, -37642168, 2160906, 6933151, -32981590, -46619724, -6544994, 13770202,
--27012660, -56569016, -24710020, -14989436, 36535676, -22457848, 41239204, -8752606, 1923072, 17386028,
-2405182, -63376536, -4211216, 2384781, 29492466, -56438016, -77640664, 5370320, -5052492, -49746996,
-27951110, 12900471, -1833414, -419833, 45722612, -65658240, 53707492, 11090679, 7221988, 21508122,
--23500988, -21588654, -4036733, 9890236, -13336410, -1236414, 27620934, -23608362, -18651432, 24120536,
--13711146, -7120519, 10305774, 6466610, -27231704, 13669270, -9048959, -2734821, 9780714, 9245991,
--28990492, -4984310, -22505628, 12421582, 17768816, 921807, -37306624, 26282516, -6328635, -842887,
-16202764, -4274566, -13470091, -2710124, 21374978, -32182190, 22014392, 946503, -2212982, 7776575,
-4421669, -20224464, 9434433, -335544, 1140851, -26286810, 18130130, -17295296, 19997904, 2712809,
--23610508, 1722819, 3238942, -7082401, 3506841, 31629750, 12401181, 74435544, -31120796, -32464048,
--13430363, -1174137, 70697312, -9660455, 58564564, -40860172, -16019691, 24883966, -44531296, -14565308,
--41896868, 7094212, 42760156, -58508192, -21420076, -4843113, 17880486, -292595, 6609955, 16465831,
--4062502, -37001144, -34286188, 1946157, 24354612, 65446712, -14405320, 17915382, -18688476, 32428076,
-1169305, 4000225, -8944269, -38263328, 1350767, 35741644, -6022081, -1837172, -13169443, -33340758,
-44314936, 17088064, 29595010, 39773008, -1857573, 2575907, 24628954, -62885300, 21913460, -31619550,
-74839272, -6791417, 7455527, 11490111, -21706228, -21744346, 7616051, -31516470, 47535088, -27454504,
--34840236, -35081828, 49705120, 17098802, 28851442, -6109054, 28825136, 29395294, -29586956, -8291971,
--27430346, -14247480, 51806432, 36885716, 4977330, 10307385, -78096464, 53918484, 70570608, 8378408,
--5511517, -13095355, -41826004, 61079804, -3358665, 4392141, -11774116, 2042257, -26327612, 57191784,
--13387413, 28021440, 4637491, -9592809, -3098282, 55106040, -30071750, 27302034, 9242770, -22974854,
-3463891, -7186017, 15370077, 4656282, 22461068, -8945343, 2597918, 4491462, 25770, 22306450,
-37961068, -11301133, -1617055, 4625143, 21005612, 6239514, -28642064, -19106162, 41111428, 8276402,
-20342576, -39675296, -47714404, 44741748, 29852170, 14198625, -3032247, -36896992, -405874, 6597070,
--55509768, 37976636, -39477192, 4795331, -18190798, 14657113, -1532230, 20884816, -3359738, -18065170,
-31116502, -10926397, -4352413, 4786741, -13061532, -11351062, 35924180, -8476118, -4932233, -4206384,
--1842541, 16482474, -12566001, 3882114, -9193914, 8227547, -8026220, -6121402, -19265076, 28180354,
--17401596, 9343701, 4526896, 19522774, -21929566, 4905390, -8963060, 22144852, 2917357, 1755568,
-17536888, 5215701, -29038274, -4303557, -4967667, 8062191, 12733504, 10621991, -26394722, 11297375,
--19934554, 14095546, -11355894, 2984466, -6507949, 13913547, -5432060, 4018479, -29524142, 6962679,
-14374182, -13562433, 13455059, 1812476, 4965519, 8345122, -11884175, 20394116, 8091182, -1176821,
--6394133, 9893994, -6187438, 18494130, -15473157, -4659503, -14723685, 19149112, -18942954, 17389786,
--15782394, 21153788, -17979806, 11075647, -17724256, 15549929, -1169305, 1582159, -5089536, 804233,
--3038689, -2778844, -5405753, 9224516, 3693135, -1313723, 3105798, -2863670, -4926865, 9262634,
-1505386, 3491272, -5937793, 335544, 9372692, -10754061, -2532957, 6189585, 223338, -3238942,
--6816113, 16808354, -5243082, -8535711, 4475893, 1476395, -2584497, 1753957, -877247, 1597191,
--2777233, 2373506, -4874251, 8220568, -6754910, 9485972, 4262755, -23131084, 46692200, 3883187,
-5858873, -18696530, -13776108, -29676614, 19868518, -8341364, -6074158, -12911209, -525597, -11514270,
--1451162, -1542967, 5192079, 5803575, -937377, -1407139, -8455717, 7830263, 7321846, -7023346,
-3271155, -15906948, 6301791, 3054259, -2806761, -2499671, -5325760, 5021354, 1086090, -11340861,
--3064996, -3352222, -9410810, 15353971, 1586990, -9869298, 1476932, -3892314, 13383655, -4691715,
--6298033, 2561411, -8027831, 15613280, 424665, -8695161, 2452426, -3568044, 7629473, -9912785,
--1983201, 3215320, -3613141, 6835978, -3940633, 1950452, 3095598, -8946954, 1222455, 8809515,
--13553306, -929860, 4082903, -12599287, 22855132, -20971788, 10425496, 3743064, -11977590, 23611046,
--16114180, 3755412, 2998961, -10045392, 7777649, -4129611, -7737384, 7502771, -9214315, 5939940,
--4243428, -3158949, 6781217, -5698885, 2169495, -2335925, -84289, 1284732, -3107946, 1410897,
--185220, -3060701, 6413460, -5513128, 4777078, 136902, -4509179, 4355634, -7944079, -806380,
-2078227, -1347546, -1104880, 1078574, -4134443, 5012764, -2573759, -1838246, 528281, 484258,
--3226594, -527207, -1867237, 1706713, 2529199, -3670050, 3161096, -3505230, -679679, 3310346,
--2508798, 10911364, -50020264, -115479856, 30309048, 106904424, 90385440, 121281824, -59779504, -77469400,
--116504208, -119077968, 8200167, 88793080, 98035848, 107392440, 35723928, -23358716, -85183160, -141038144,
--77262704, 35891968, 55603720, 94081792, 71322224, 19494320, -12621835, -29701310, -70636104, -45766636,
--43544524, -7971460, 37249716, 57088168, 30065844, 38117296, 19295678, -21452288, -3325379, -45891724,
--63880124, -10918881, -14878840, 11286637, 60317984, 34758632, 29956324, 8858370, -22555020, -23236310,
--20008642, -33078228, -8640937, 1484448, 14226005, 17333952, 28867012, 8239895, -985695, -14541149,
--26819386, -2278480, 9695352, 9941239, 16939352, -4293357, -13453448, -6451041, -13471702, -10572599,
-2904472, 7627862, 21689048, 18389976, 17576616, 1039382, -9394704, -35173096, -32698660, -13311714,
-2121177, 27216670, 29190746, 12058658, 12390981, -1358283, -23500450, -14370961, -1676648, -5487358,
-1284732, 2503966, 5677410, 4752918, -3021510, -7650948, 4561256, 7118372, 5833640, 6075231,
--534187, -4393215, -2738579, -11911018, -4902169, -6559489, -11219528, 6678674, 16325171, 19062676,
-6314139, 6896644, -3696356, -4418985, -17041894, -25295746, -9762998, 2932926, 7919920, 9874667,
-20774220, 19352586, 9365176, -7623030, -16259136, -18296024, -17172352, -12654047, -869731, 15446313,
-23834384, 18951006, 5470715, -8948027, -10819023, -10735271, -6268505, -4066797, -4714801, 4726612,
-10892574, 8103530, 1710471, -1356673, -878858, -2743410, -3231963, -4454418, -2032593, 2703145,
-2148021, 1435056, 1441498, 1399086, 956704, -1888175, -1979443, -308701, 120796, -30065,
--62814, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--5540508,
--4885526, 6077916, -1243393, 4852776, 1415729, 7217693, -1682554, -3734474, -2572686, 4409321,
-122407, -1605781, -427886, 4985920, -1328219, 904091, 1749125, -3351685, -2550674, -1093606,
-919123, -3478924, 883153, 703838, -4029753, -1313186, -2411624, 336618, -1762547, 639950,
-6569153, 3364033, -1924145, 307090, -3122978, 2389076, -842350, 3876745, -8061117, -891743,
-1243393, -2876018, 512712, 3897683, 2977486, -3636227, -2687039, -2925410, -545998, -2320356,
--1177895, -3550327, 1347009, -324807, -4099546, -2134599, -1658394, -221191, 839129, -909459,
--430570, 1745367, 691490, -1948305, 1006633, 4345433, -2245194, -595390, -4696547, -1805497,
--371515, 1923609, -1990181, 545998, 783295, 633508, 1505386, -3642132, -129923, -2061047,
-1709397, -1326071, -3504157, -1013075, -119722, -79457, -1554241, -1643899, 1690607, -785979,
--324270, 611496, 982474, 28991, -240518, 175557, 579284, 21475, -399969, 758599,
-127238, -694711, -632971, 707596, -271120, 245887, -477278, 637803, -618475, -409096,
--114354, -148176, 216359, 7539815, -2809982, 2458332, 6305012, -5101348, -5756330, -838056,
--1433445, -59593, 3213709, 1797981, -8005819, 1263257, -4591857, -6311992, -403727, 2331630,
-2512019, -2050310, -264677, -662499, 3445101, -699543, 2833068, -1308891, 331786, 635655,
-863825, -3990025, 1686848, 3113315, -1451162, 3963718, -2185602, -414464, -4932770, 3524021,
-885837, -1286343, -3825205, -3774203, -1720671, -1277753, 1916092, -399969, 1654636, 1654636,
--3393561, 2133525, -4559108, 1650341, 2655901, 5052492, 4847945, -4158602, 2071785, -247497,
--1103807, 2966749, -2248416, -2663954, -2019172, 2422899, 1197222, 3152506, -3113851, 4736812,
--1529545, -217970, 1421097, 802622, 2767033, -2072859, 3942243, 4998268, 8708046, 4065187,
-2769717, -5120675, -941135, -3333968, -2428804, 3186866, -416075, 3932580, 1597191, -287226,
--782221, -654983, 2257005, -1686312, 1799591, 2154463, -1682017, 1044214, 777926, 251256,
-1285806, -770410, -239444, -1660005, -9224516, -9926743, 1133335, -812823, 2362769, 2205466,
-6558952, 2968359, 3134253, 1589675, -3205119, 1240172, 8286066, -5531918, -617938, 260382,
-6652905, 4005057, 930397, 2954401, -521839, 2283849, 3069291, 6820945, 3781182, 3833258,
-2061584, 1647657, 3326989, 1212255, -4744865, 2924873, 3928821, -1386738, 2858838, 3775276,
--1306744, 1195612, 4710506, 1749662, -1125818, 1701881, 4807679, -233002, -44023, -933082,
-1326071, 4510790, -1319629, -2521683, 1308891, -1543504, 2386391, 2837363, -3338263, 734439,
--2152852, 189515, 1381369, 3799972, 3125126, -7946763, -6442, 3915400, -2015950, -3302830,
-458488, 625992, 3933116, -311385, -8483634, -3697430, 2763275, -2345589, 4014721, -1096290,
-34360, 1032940, 5032091, 3164854, 2141578, -2566780, 4135517, -477278, 2538326, 1257889,
-512175, 880468, 872415, -47245, -646393, 569083, -343597, -2043331, -860604, -830539,
--248571, -457951, 5906, -605590, -1477469, 758062, 326954, -740882, 181999, 1418950,
-1038308, 501974, -186294, -219043, -136902, -58519, 1340030, -16789028, 2364380, 1744294,
-7845295, -293668, 6127845, 3149285, 1568200, -9834938, 23085, -140660, -7628936, 1233729,
-5719286, 1095217, -100932, -710817, -3038153, -3484292, 1568200, 2262911, -261456, 1512902,
-1764695, 6870337, 795643, 3047816, 3212099, -3590056, 787053, -839666, -983548, -451508,
-2536715, -383326, -1709934, -2742874, -1636383, 887448, -4874788, -3463891, 2068027, -3879966,
-1280437, -6378027, -7633768, -1945083, 9463960, -2494839, -547608, 5583995, 1880122, 415538,
-5979132, -842350, 677531, -754304, 1760400, 3838627, -1490891, -5966247, 3823595, -3477850,
--6613713, -2638184, -1842541, -6442, 2446521, 7173669, 59593, -71941, -2796561, -266288,
-4243428, -2001992, -2177012, 5115843, -4311074, -332860, 2352568, -5232881, -1013612, -1814624,
--1758789, 583579, -2791192, -3948149, 254477, 2448668, -1126892, -1704565, -2225330, -2261300,
--304943, 1631551, 746251, -223338, -650688, -1759863, 94489, -589484, -2137283, -3160022,
--2685428, -37581, -335544, 1276679, -2086817, -100932, -295279, 1016297, -153545, 436476,
-14968498, 497679, -900869, -5666673, -3257196, 7902740, -3189013, 6171868, 5311264, -6014565,
--974421, 4631049, -3364570, -1618129, -1569274, -2174327, 999117, 1669132, 290447, 2897492,
--1306207, 464930, 1096290, -1197759, -2824478, -2939905, -3328600, 279173, 3901978, 1709934,
--3286187, 322659, 1545651, 7446937, -2190970, 6668474, -6046777, 2760590, 4807142, -3145527,
--1919314, -6159520, 2929705, -40802, -4324495, 4319664, -5364414, 6053757, -316217, 8559333,
-1976222, 955093, 2079301, 3579855, 1910724, -2732673, 4225711, -756451, -4480188, -7004555,
--1900523, 3012920, -3510599, -2257542, 2759517, -3903052, 7728794, -7388955, -21475, 4993973,
--4222490, -1649268, -7769596, -548682, -3035468, -1672890, -2323041, 6770479, 2663417, 722091,
-290984, 5846524, 588947, -461709, 4670240, 3870303, 3505767, 7255811, -1525787, 743029,
--2019172, 2078764, 2393908, 525597, 711354, -1177895, -33823, -1683627, -846109, 209380,
-668404, 1190243, -552977, -208843, 2334315, 1121523, -851477, 4518306, -229244, -1068373,
--1821603, -1157494, 1655173, -1491427, 169114, -140660, -1554241, 738734, 494458, -379568,
-1148904, 1228898, -1176284, 1273995, 7224672, 12786118, -3730716, -5558225, 1470489, -2265059,
-3530463, 11642046, 77846, -2669859, 3698504, 2011655, 3451006, 2098629, -6325950, 248034,
--5645198, 3162170, 2739652, 1677722, 10643466, -495532, 7936563, -194884, -188979, 2428267,
--60130, 8361228, 1110786, 5270999, -1934883, 7135552, -3204046, 3812857, 14110578, -2290291,
--3554622, 9960566, 2098629, 6495601, -152471, -6165426, 1933272, -3549254, 4268124, -7431367,
--990527, -3853123, 4207994, -613107, 872415, 7701950, -3728032, -7704098, 2168959, -646929,
--358630, 6267968, 1213865, 909996, -2812130, -5060009, -5379984, -1780264, -4440996, -3338263,
-4610111, -2297271, -432718, -1661616, 547071, 46171, 4115653, 2594160, -4702453, -6772090,
--1583769, 241055, 1878511, -1829119, -1662689, 5609228, 3190087, 2775623, 816581, -4523675,
--2097018, 2487323, 112743, -1475858, 1995549, -599685, 1219234, -1451162, 125628, -819265,
--2575370, -3033858, -806917, -2680597, 723702, -372052, 273267, 1888712, -488016, -1421634,
-2289755, 525060, 1462973, 887448, 149787, -814970, 1134408, -248034, -254477, -47782,
--243203, 135828, -464393, 674847, 1453310, -1734630, 486405, -2051384, 328565, -971200,
-17539572, -9206262, 6154688, 240518, 3033858, -4235375, -3319473, -1928977, 3813394, 4912906,
-1043677, -2691334, -5099737, 2666638, 4848481, -947577, 1521492, -2593624, 5285494, 1960116,
--9936407, -3261491, 3195993, -577673, -4225174, -197569, 4517232, -3315178, 1531156, -6457484,
-3766686, 8172786, -3385508, 8644695, 289373, -1571421, 5752572, -245887, 439697, 5209796,
--11250667, 1691680, 3404299, 4787278, 3228205, 3740380, -5052492, -3910031, -182536, 1795833,
--5471789, 1808718, 5305359, 4771709, 1759863, 14564234, -4594005, -1823751, -6599218, -2822867,
--4328790, -6059125, 7496866, 3132642, 7321846, -1144072, -11735461, 6830072, -4147865, 3754338,
-3355443, 1640141, 2015950, -9260486, 10968273, 2398202, -5095442, -8886287, -5578626, -5566278,
-770410, 4540854, -4147328, 347892, 2782602, 2385854, -4295, -1927367, 447213, -192737,
-1723356, 1848447, 1975148, 1384053, 1302449, 686121, -3241090, -2897492, 131533, -1063541,
-1047972, 1320703, -1511829, 2106682, -520228, 770410, 1730335, 753767, 1340567, 404264,
--3447248, -235686, -55835, 1215476, 882616, 419833, -788127, -923418, 1848447, -541166,
-4517232, 784368, 1947231, -21022254, -17696876, -16316044, 3640522, 3351148, 1365800, 732292,
--1165010, -1270774, 436476, -2783139, -5920613, -4115653, -10364293, -4578435, -5031018, 6193880,
--7966628, -3526705, -4510253, 1336809, 90194, -2067490, 2323041, -692027, -8271570, -168041,
-7588671, 980326, -7378754, -6522445, 2849711, -2638184, 6368900, 4478577, -6971806, 6881075,
-10861972, -9107478, -9328669, -4989142, 3426310, 8635032, -6152541, -6361921, 3266860, -3673808,
-671626, -818728, -792958, -9907416, 1891933, 5997385, -3080029, 3433826, -4926865, -5858336,
--5815923, -2878702, -10018548, 17157320, -3638374, -1158567, 2995740, 1866163, 3654480, 2336462,
-5352603, 2443837, 4647155, 10619307, -13706851, 9590125, -3270081, -2606508, -471373, -15298137,
--700617, 4680978, 424128, 602906, 4274030, 1563905, -379568, 2543158, -5172215, 5987722,
--2165201, -3486440, 3250217, -2120640, -1913408, 612570, 2652679, -2047626, -3247532, 1104344,
-2574833, 100932, -1103807, -2830920, -1556926, 390305, -4002910, -2674691, -1397475, 1908576,
--906238, 143345, 2109366, 35970, -3987877, -908386, -3396246, -3019899, -2849174, -1758789,
--3147674, 2664490, -941672, 175020, 5714454, -1140314, -1743757, -1546725, 3090229, 775242,
--1065152, -20672752, 15845208, 4198331, 3453691, -3827353, 15509127, -2441152, 7306813, -22012,
-6573985, -9230958, 3652870, 3621731, 1411434, -4541391, 13804562, -3743064, 4206921, 3176665,
-14326937, -9667435, -630823, 3986267, -2493766, -7093676, 4278861, -6672232, 1723356, 1828046,
--7838852, 3033858, 638876, 395137, 15756624, 9854802, -1323387, -6447820, -5043902, 3518652,
--842887, -9450002, 2677912, -830002, 2778844, 7118372, 10478110, -7197292, 7123204, 3570729,
--4730907, 3408057, 2736431, -7443715, -4034585, -4666482, 7498476, -8112657, -6898791, -18595598,
--13634911, 3778498, -2568391, -2674154, -7173133, -14428406, 5525476, 1112397, -436476, 7069516,
-6009733, 8502425, 5037460, 2057826, -255014, 1360968, 9597641, -7096897, 13146895, -4836670,
--3740917, -12018392, 1906429, -2206003, -6138045, -1084479, 1453846, -3022583, 3491809, -1451162,
-142271, -1477469, -488016, -1268626, -301185, 2173790, 3435974, 278636, 2835215, -3204583,
--2289218, -1623498, 1175210, 2475512, -3278671, -1228361, -1533840, 481573, -1834488, 1473711,
--340376, 1283122, 2164127, 36507, -3495030, 4930623, 4723927, 1974611, 21475, -2126546,
--145492, -1107028, -526134, 5576478, -24987582, 23119272, 16607565, -6772627, -5717675, 6243272,
-56908, 569083, 11033771, 7809861, 321586, -1624035, 4444218, -2563022, -1595580, 3115462,
--4944044, 6213207, 4258460, -5159867, 6698002, -716723, 1807644, -483184, -11011222, -609885,
-8018704, 8313983, 3263638, 3564823, 4458176, -5124970, -6487011, 2808909, 4997195, -202400,
--2501819, -5652177, 2355790, -1653026, 7083475, 8341900, -926102, 9615358, -4992900, 10715407,
-5807333, 12913356, 937914, 1893007, -3709241, -5264556, -992674, 9913858, 16181826, 989990,
-12336220, -5305359, -11818676, 1592896, 4474819, -10327786, 10785200, -3550864, 3819300, -22764400,
--9785546, -134218, -5462125, 4424890, 7544647, 15835544, 3309272, 134755, -7735773, -13731010,
-3563212, 610422, -11522860, 4749160, 2513630, -8308078, -2349884, 2011655, 9135395, 228707,
-2774012, 2813204, 4770098, 3925600, -7699266, 2771865, -118648, -1510218, 187368, -354872,
--1218697, 3308199, 3124589, -3191161, -1305670, -17717, 2237678, -1205275, 3183645, 500364,
-2325725, 2084670, -2492155, 1924682, 2332167, 5980742, 564251, 3430605, 3747896, 951335,
-4396436, 1619740, 2280091, 1038308, 577136, 1618129, 5162014, -2160369, -4706748, 1190780,
-6153078, -9710384, 16675211, -7154879, 2004676, 12465069, 12899934, -952409, -7412040, -3974992,
--3930432, 956704, -9581535, -7600482, 8025684, 2017024, 5159867, 6288906, 7432441, -3322694,
-4821638, -1821603, 5773510, 24049670, 5664525, -11592117, 11259257, 12931073, 563714, -2131915,
-683437, -6395207, -8817031, -4613869, 13186086, 8857296, 7301982, 11216307, 2273648, -1930588,
--5155572, -14242648, 6601365, 7514582, 4171487, -2255932, -1763621, -4912906, 1981591, 11596949,
-7990787, -13285944, 8777303, -11201275, 11810623, 2522220, 4421669, 5281199, -1976222, -6330782,
--1926830, 4755603, 20434380, -3252901, 10206990, -4538170, -9241159, 10851235, 9766756, 2479807,
-2233920, 9840844, 3441343, 580894, -1122597, -6255083, -1930051, -9176734, 2947421, -7124277,
--3568044, 14483703, -767189, 395137, 286152, 6681896, -2183991, 1995012, 4420058, 6729140,
-7271380, 6066642, 2374580, 3188476, 3323768, 6096169, -944356, -4862977, 6885907, 2739652,
-3795677, 4185983, 174483, -482647, 428960, -3034395, 1890323, 6535867, 731755, 842350,
--1377074, -2422899, 5454072, 5873905, 1137093, 10409390, -1293859, 4494684, 7961259, 514322,
-2208687, -1147293, -3051574, 826781, 1728188, 2889439, 5733245, 2508798, 4294968, 1604707,
-1028645, 5980205, 8505109, -4292283, 8644159, 11042898, -12664785, 8529805, 4935991, -3061238,
-789737, 5868536, -5299990, -11187853, 16806744, 3633006, 3218541, 3141232, 9976135, 2907693,
--10039486, 10726144, -14397267, -16819628, 1495722, 2024003, -9287867, -3044058, -27509266, -19477676,
--14668387, -4955856, -15090904, -7430831, 5724118, -13566191, 9520869, 8757438, -11049877, 14268418,
-7611756, -2790655, -1435593, -7383049, 320512, -13184476, 28934658, 8461622, 4509179, -14441291,
-3518115, -4458176, 19187766, -3858491, -499827, -17511118, 17137456, 1147830, 6711960, 5563057,
-9994926, 5666136, -3880503, 5731097, -8534100, 8664023, -3132105, 5107253, -13661217, 30942018,
-4720169, -14343043, 7785165, 9038759, 7063074, 10532870, 8986682, -13929116, 11109470, -272730,
-8958765, -7045894, 2662880, -17923972, 7541426, 7819525, 2268817, -4298189, -13561359, -872415,
-9283035, -12030740, -1643362, -1414655, -57982, 3690451, 2793339, -2704219, 5216238, -294205,
--2557116, 4133369, 3170760, -3757023, -3039226, -7852274, -492848, -7304129, 4394289, 1239635,
-733903, 5767604, 8871255, 5638219, 4173635, 2834679, -3156264, -1219234, 91268, -5695664,
--4719632, -1293859, -1911797, 3106872, 7204271, 2294050, 4556961, -1016297, -89121, -22364432,
-6277095, -3061238, -2173254, 13280576, -2439005, -2260764, 1292785, 11890617, -3091303, 6936372,
--5800354, -6841346, -8742406, -11087458, 19270444, 10047539, 6996502, -6048925, -17637284, -21648782,
-10431939, 7185481, -7675107, 5163088, -5212480, 519154, 19181860, 8377871, -5424007, 10344429,
--3478924, 5369783, -6373732, 6493454, -14145475, -20809116, -8072928, -9280887, -1562831, 24359444,
--19810536, 11468100, 6605123, 4981089, -4363150, 9590662, 4300336, -19033148, -24193014, -8614094,
--11022497, 27420682, 19898584, -6637335, -12204150, -1016297, -12523588, -2648384, 19983410, 18487150,
-10513006, -16302085, 3549791, -12734041, 20037096, 9504763, -2085744, 71404, 6767795, -11819213,
-2690260, 17653390, 9622874, -15968152, 17384418, -8854612, 10404558, 27545236, 10553808, -6485938,
--8118025, 23574002, 2640331, -1436667, -10667088, 4153234, -5005248, 1516660, -3106872, -556735,
--652298, -11742441, 1529545, -1462973, -3298535, 5163088, -860604, -4154844, 799938, -2470143,
-705985, -3066070, -4519380, 4067871, -5014911, -3245385, 2459406, 6127845, -247497, 4326643,
-3629247, -817654, 42413, -5906654, 871342, 1996086, -4938139, 6703370, 3374771, -4095251,
--2679523, -2860448, -1205275, -6596533, 3968550, 6245420, 357556, -4913443, -2778844, 3241627,
--1351304, 3115462, 4481799, 313533, 1700807, -17768280, -6956774, 29768956, 13785771, 17157320,
-4190814, -24723442, 7648263, -20057498, 13202193, 37205156, 13232257, 23345832, -10500121, 6746320,
-10850161, -1112397, 2806224, -9535364, 2441689, 14636175, 782221, -3891777, -13196824, 7279433,
-5466957, -13448616, 7032472, -5101348, 10312216, 14713484, 15645492, 18844170, 1906966, -14596446,
-3968013, 8909373, -146566, 25653840, 2275259, -29464550, -18475876, 8398272, -7480223, -34775276,
-1283658, 14839112, 5493800, 1567126, -3142842, 18335752, -14374182, -17838072, -3424700, -6379100,
--17351668, -952409, 1296006, -10108206, -14936286, -9150965, 763430, 2178085, -21585968, 6466610,
--8983461, 5267241, 24977382, -3395172, -8644159, 17398376, -2993592, 14487998, -13678934, 9360344,
-644245, -15855409, -17683990, 31988916, 3147137, 4331475, 1551020, 46171, 32096828, 26208428,
-8316668, -2398739, 12610561, -6145025, 4331475, 7508677, -1344325, 9863929, 4278861, 2885144,
--14561550, 8706972, 4709432, -803159, 1374926, -4927938, 4255776, 11331734, -1822140, -3654480,
--6227166, -6833830, 6859063, 8047695, 490700, 56371, -6130529, -6619619, 1246614, -9515500,
-1416266, -3148211, 10063645, 3590593, 496069, -6277095, -10966125, -2479270, -5286031, -7397008,
-4355634, 4482335, 8647917, 25170656, 3271691, -34470872, -15591805, 21391084, -30829812, 17522930,
--29176250, 2374043, -4658429, -42198052, -5558762, 18997714, 38841536, 12372727, -5640366, 9431748,
--14894410, -4993437, -33880312, -1883343, -23010824, -3313031, -5036386, -15904264, -16874390, -5603859,
-9701794, -15285252, 10537165, 19398756, -19989314, 7249368, 6458557, 3433826, -21272974, -3248069,
--217970, -22286586, 5814849, 28389196, -2152852, -41213968, 14599668, -24893094, -63546724, 17922362,
--26278758, -32682554, 1744294, -14965814, 4539781, 11235098, -6259378, 16734803, -13984414, 14618458,
--11537893, -28440736, 170725, 20351166, 19514184, -36956584, 5441187, -4420058, -27507654, -7358353,
--6812355, 47873852, 23905252, 28083180, 12799003, 12213813, 29631516, 42561516, -9711995, -20164872,
--22000434, 3863860, -27334246, -8411157, 14157286, 22992570, 3235184, 2088428, 19967840, -4621922,
--11324755, -15411416, 12031814, 13643500, 13406740, 3129958, 15379204, 6376953, -9426916, -2094333,
--9130564, 14024679, 2268280, -1639604, -15726023, 4772246, 12607876, 1384053, 241055, 12316356,
--9827959, -6575595, 6819335, 695248, -4958540, -9468255, -3020973, 14492830, -697932, -32087700,
--2977486, -793495, -7348689, -6256694, -8472360, -5194763, 6998649, 6258304, 3729105, 2221572,
--5268851, -6656663, 55716464, 60232084, -35359392, -14008573, 26891328, -12200391, 10846940, -16780438,
-5019206, -17241072, -32293860, 44000868, 6415071, 13817984, 11316165, 4120484, 5779416, 1322313,
-8916352, 10933376, -31249108, -25761750, -22570590, -21308406, -15963320, -10060424, -8339216, -16753057,
--9491878, -14198088, 16145319, 12277164, 6207839, -7823820, 3280281, -33063196, -16612934, 8994735,
--30048664, -2777233, 14625437, 25942140, 3802120, 5028333, -11098195, -19403052, -22886806, 18387292,
--2488397, 18204218, -64170568, 4009352, -7460895, 7389491, 39237748, 4820564, 6549289, 4429185,
--11492796, -13215077, 361314, -2607045, -36026184, 7733089, -13212393, 32319628, 2156611, -35403416,
--48195440, -29943976, -6083821, -33843804, -33143188, -20561620, 23378044, -6052146, -22824530, -30775588,
-25724170, -3305514, 15222975, -17313014, 9342091, 25365004, -16840030, -24417426, -10255845, -12605729,
-26527328, 5595269, -11629161, 10457172, 7784628, 23088670, 14328548, 6725919, -20495584, -20424180,
--4488778, 2403571, -5360656, 3705483, 14220637, -3098282, -1189706, -10363219, -7597261, -5645198,
--10787347, -2019708, 4441533, 6542846, 33530810, 2261300, -8395050, -2640331, 4496831, 10507637,
--594316, 16623134, 6971269, 38341708, 5950677, -252866, 1417876, 7049115, -10610180, -16483011,
-62755376, -36376224, 23831700, 44472776, -21304112, 6334540, 35544612, -44917304, 1833414, 5098663,
-21923124, -50377820, 2849174, 3462818, 16632798, -21945672, 328565, 9104794, -29617558, 4484483,
--2202245, -5475547, 16387985, -4837207, -4423280, 6974490, -3834332, -4976794, 16079284, -14900852,
-4475893, -6098317, 4153770, -9520869, -5254893, -11627550, 230854, 2348810, 31419296, 10496900,
-15304579, -3097208, 426276, 23312008, -910533, -8718247, 13108240, 9679246, -10397579, -30348776,
-27960238, -30246770, 5044976, 14632954, 19199578, -29764660, 31967442, 51311976, -27921046, -51991652,
-69785168, 24716464, -34323768, 16000901, -33036888, -41052372, -20412368, -7434589, -42874512, 34879968,
--59804736, 18083422, 28701118, -23690502, -79981952, 75848584, -13065827, -19437948, 50596864, -50227496,
-26120380, 43182676, -12802224, -11724187, 13499619, 14897094, -7964480, 5434744, 4543002, 13758928,
--6613176, -4867809, 15416785, 63351, 3557307, -1519345, 3004867, 12329777, 9183177, -1559073,
--10780368, 18023294, 19523310, -3565897, -16517907, -1666984, 8362838, 1881196, 12092480, 161598,
-10603737, 4533338, 15483894, 11436424, 13037373, -19016504, 5084705, -265751, 951872, 178778,
--11491185, -20550344, 30412664, -4776541, -27759984, 10264435, 6976101, 3023657, -4403415, -19206556,
--15238544, 34819300, -23038742, -18430242, -36750424, -16944720, 21767968, 16884054, -9840307, -12259984,
-11571179, 28875602, -12477954, 21772800, 26074210, -18585934, -2714419, 15911780, -4185446, -143881,
--5330592, 1328756, -26742076, 7245610, -5974300, 834834, 6373195, -5437429, 5450314, -11144903,
--22409528, -10647224, -38976828, 4799626, -141734, -5875516, 7162932, 3641059, -2593624, -8938901,
-15588584, 24654186, -26035554, 37918656, -4339528, 5006322, 5448703, 33512020, 15352897, 24506010,
--30888868, -7709467, -5838471, 43707736, -40900436, -14015552, 19913616, -1532767, -47222092, 3136400,
--9784472, -8124468, 21481278, 23544474, 1604707, -17770428, 38060928, -16111496, 63508072, 785979,
--29541858, -92879, -5171678, -33420214, 63807644, 12782896, -9574019, -75647256, -37828460, 21251498,
--27875948, -25092810, 29556892, -110861160, 2748242, 21796422, 15988553, -9004936, 31120796, -19107236,
--2517388, 110059, 16189879, -4645544, 3274376, 22053584, -1583232, -5598490, -7030325, -7972533,
--390305, 2451890, -1510218, -3366718, 14232985, -20003274, -4518843, 2359011, 3299072, -11986717,
--20281910, -5166846, -6248104, -2909840, -1717450, 3911105, -22491134, 1719598, 17011828, -10619844,
-13004624, 9985799, -9811316, 611496, -7185481, 2839510, 4777078, -10466835, 29417842, -14281840,
--13191992, -17027398, 14239427, 19317152, 11791833, 48008072, -9225053, 10887742, -4577899, -24752970,
-12429098, -15771657, -8877697, 9910637, 21544092, -22691922, 24821152, 2863670, -1233729, 50586660,
--10255308, -5608154, 37924560, -24225764, 33504504, 14461692, -7919920, 13366475, 14124000, 31253404,
-32502702, 9447317, -26357140, 55205364, -55356224, 1873680, 50407348, -27116276, 11178189, -5975910,
--6510634, -58372364, 39660800, 10490994, 17617418, 18596134, -12108587, -29055990, -21831318, -17705466,
-2784213, 55472188, 394063, 43509628, -14455786, -33483566, 1859721, 12512850, -27485106, 44647796,
-18178450, 21940840, 44110388, 28552942, -47160888, 17997524, -67653784, -83598856, 1767379, 70399344,
-44163540, 5696737, -49787796, -177893792, -32693828, 55009404, 62872416, 89085672, -4512937, -112974816,
--63712620, -58852864, 90339808, 69042672, -12451647, -45145476, -26402238, -54900956, -6994354, 70731136,
--6849936, 16546362, 11826192, -11598022, -25608742, 38548944, -15628849, 21506512, 15781857, -1462436,
--35782984, 49090404, -19342386, -9268539, 14230300, 12738336, -26553098, 443455, -8309688, -10023917,
-3403225, -954557, 19676318, -35107064, 18625662, -42251740, -6657200, -7043747, 50258096, 1497333,
-13655849, -30659088, 16056198, -11526082, 22226992, 26558468, -12816182, -30494268, 11018202, 7902740,
-25736518, 7217156, -43612172, 36628016, -27421218, -4743792, -17755932, 17024176, -19945828, -848793,
--2097555, -5411122, 4093104, 18756660, -19812148, 8717710, 1555315, -4587025, 276489, 13226889,
--16747688, -4581657, -2454574, 27471148, -27819576, 7377680, -12191802, 18203682, -20310364, -5778342,
-6964827, -3934727, 3856344, -13140452, -2323577, 11880416, -3608310, 4589173, 3770981, 2484639,
-14865419, -13771813, 9328669, 10715943, 13272523, -1866163, -30778272, 3940096, 3666828, 12534325,
-11463805, -2248416, 3083787, -5194763, -13982266, -2392834, 6432788, -2649995, 18716394, -15235323,
--5020280, -30389578, 9091372, 3267933, -4769561, 6771016, 5950141, -455267, -15666430, 4870493,
-15355045, -3005940, -2209224, 6003291, -6159520, 11424613, -7034083, 1918777, -14374182, 6789270,
-2755222, -2319819, -3909494, 8311299, -3956739, -6083285, -8650064, 9041443, -327491, -4592931,
--1901597, 8994198, -3528853, 3951907, -4960151, -3061238, -421444, 278099, -41339, -5017596,
-599685, 103616, -4126927, 4225174, -3911105, 11749957, 1938641, 1525250, -16278463, 4555350,
--256624, -6583111, 7480760, 13791677, -9964324, -2326262, -300111, -7292855, 11069204, -1895154,
-1660005, -7314866, 3884798, -1623498, 1449552, -4704063, -24839406, 60313152, 16461536, 14921790,
--7944079, -19275814, -18538690, 5295158, 11735998, 1869921, -656056, -41876, -8774081, -1581085,
-4267587, -2313914, 1858110, -922881, -8786966, -440234, 4407710, 6904160, -6102612, 1708323,
-4451197, -8776766, 14472429, -8746701, -7604240, -7581154, 2015413, 4234301, 6739341, -7294465,
-9386651, -13447006, 8965207, 7967165, -5879810, -600759, -381178, -1536525, 7000260, -7474854,
-2232309, -2383170, -9634685, 13732084, -7616051, -250719, -5628018, -1768453, 9619653, -12481175,
-5137855, 3469260, -5399848, 4594005, -10599442, 3096672, 4489852, -7911330, 248571, 4256850,
--7262253, 7353521, -10046465, 2806761, 10418517, -15159624, 4425427, -5793374, 1110249, 5954436,
--4461934, -2321430, 1138166, 1294396, -838056, 4253092, -3168075, -2799782, 2149094, -2504503,
-1435056, -970663, 1865090, 1670205, -2371896, 1215476, -386010, 2189897, -1940252, -584116,
-1568200, 30602, -1083942, -3543348, 2317672, 2316598, -438624, -2458869, 2414309, -144418,
--1001801, 2366527, -4924180, -1049046, 2935610, -3650722, 5364414, -3260954, 348966, 8699993,
--2436320, 6255620, -3470871, -389231, 7056095, -4911295, 9025874, -46599860, -109318192, 30926986,
-106989784, 73576544, 116342072, -64791728, -68966440, -94036696, -108853800, 2326262, 83965536, 86750288,
-90569584, 17772038, -29945586, -59407988, -85263688, -72267656, 5616207, 56120728, 66568236, 59896540,
-14321568, -16564615, -10351945, -46788300, -52334176, -22083112, -1438814, 20115480, 44105556, 21540872,
-15989626, 22088480, -11049340, -26251914, -4311611, -41962904, -19695646, 451508, 6643778, 31963146,
-37214280, 3293166, -5657546, -3507915, -27490476, -7454453, -402116, -5727339, 9493488, 18386218,
--3941169, -1470489, -7239168, -11498701, 2338073, 1123671, -1272921, 20746840, 14033806, 5180268,
--548145, -19588808, -28324236, -22395570, 1596654, 21053930, 18065706, 23721642, 3208878, 604517,
-5378373, -29469382, -16785806, -13864691, -2538326, 22588844, 5091684, 7569880, 21066278, -12182675,
--17724256, -4134980, -3042448, 6523519, 7582228, 2364380, 4224637, 1845225, -10887742, -11274826,
--2765422, -16643, 8079907, 11706470, 3827353, -1668595, -2562485, -3347927, 2918430, -3301756,
--13837848, -2182380, 3242164, 6392522, 13745506, 3339874, -2869575, -6624987, -11331197, -2486786,
-1126355, 3678103, 6459094, 8076686, 6357089, -3274913, -9817758, -10344429, -9030706, -1043140,
-4477504, 4962298, 13284871, 13642427, 6645388, -2953327, -16789028, -17755394, -8233453, -6224482,
-6267968, 16568373, 12277701, 5311264, 70867, -1313723, -2155000, -5058398, -8322573, -7997766,
--3400540, 1205812, 3506841, 5606006, 8131984, 7780870, 3052648, -2842195, -6265284, -6518687,
--4183835, -918049, 641024, 546535, 176631, 75699, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--4398047,
--2920041, 1234803, -1123671, -1386201, -2139968, 525597, 4264366, -1364189, 21475, 438624,
-7299834, -140660, 1401233, -2997887, -2079838, -742493, -1958505, -2107218, -1975148, -1343251,
--1876364, -2482491, 2096481, 3469797, -1898912, 529892, 147640, -3933116, 118112, -85362,
--2785286, 5270462, -2684892, 2997350, 1149978, -806917, -3015604, -2792266, 2718178, -1409286,
--1012539, -4161823, -1052267, -386010, -1955284, 5557151, -1205275, -349503, 2331094, -405338,
--4621922, -2379412, -4073240, -2742337, 6344204, -1781338, 7054484, -30065, -282394, -1278827,
-830002, 294742, -4179540, -4466766, 3262028, 368830, 2221035, -301185, 2585034, 1578937,
--4049081, -28454, 1362578, 2187749, 4832, 1846299, 3376918, -4488778, 1195075, 1152125,
--2234457, -2684, 1031866, 3218004, 2132451, -2246268, -667331, -124017, 765578, 1022202,
-791885, 840740, -577136, 435939, -1209033, -784368, -5906, 1637993, 733903, -50466,
--105227, -1113470, 665720, -86973, -367220, -96637, 594316, 244276, 430570, 1055488,
--338229, 463320, 1284732, 9656697, -723702, -1136019, -2439005, -5237713, -6467684, -5915244,
-690416, 5323612, 1881733, 7098507, 2458332, -3182034, 883153, -8390219, -7101729, 3339874,
--2477123, 4693326, -409633, -3714073, -1836099, 9294309, 2096481, 3944928, -151398, 3026878,
--1355599, -1112397, 1861868, -1250909, -4021163, -272194, 1508607, -445603, -216359, 5921686,
-3673271, -6310918, 171262, -3993783, 6704981, 3975529, 305480, -2346126, -2413235, 3099893,
-1740536, 5010616, -4602058, 7938174, 9732933, -2647311, 9483825, 13422, 4982699, 3107946,
--1722819, 1665911, 7606387, -860067, -5089536, 4407710, 1439888, -29528, -562641, -873489,
-350577, 4450660, -2816425, 1634235, 1212255, 2369211, -3641596, 4197257, 991601, -341450,
-1344862, 633508, 430570, -150861, 967978, 2477659, -1704028, 1014686, 675384, 1057099,
--1553704, 137439, -2508261, 466004, 1213865, -1438814, -912144, 361314, 722628, 848793,
-252866, 774705, 21475, 37044, -8361765, -6541235, 2030983, -3710315, 2615098, -4632122,
--6577206, -6075768, 823560, -4541928, 4122095, 3024194, -5840619, -1210107, 2345589, 543850,
-2889439, -1726040, 2989834, 3702262, -5188321, 1643362, 1676648, -4156455, 2413772, 418759,
--4917738, 3626026, 3479461, -1746441, 3803731, 543850, 3099356, 2824478, 1156957, -1844689,
--483721, -5871221, -1795833, -2920041, 3062312, 3250753, 1256278, -9402757, 1767916, 3960497,
--2153389, 6608881, -5433671, -7170985, 517544, -2127620, 2263985, -5119064, 9306120, -490163,
--3154654, 915365, 85899, 5317707, -334471, -3099356, -238371, -2103460, -2901787, -3630321,
-1675037, -6563784, 640487, 242666, 1893544, 4391067, 1408212, 3125663, 4800700, -3304441,
--620623, 1084479, -4175782, 2831457, -1449015, 2413772, 1882806, -1277753, -1018444, 3551938,
--1192390, -3229816, 416612, -338766, -163746, -1740536, 2539400, -1987496, 937914, 972273,
-1271310, -510027, -584116, 161598, -1039919, 393526, -728534, 67646, -471373, -969589,
-1215476, -490700, 226560, -169114, 28454, 22549, 175020, -20105816, -448824, -2561411,
-13957570, 186831, 727460, 2881386, -2086280, 6970195, 1625645, -7705708, -4203163, -9019431,
-1454383, -747861, -3180423, -2699924, -3386045, -2203318, 10827613, -5166309, -2617246, -2980707,
--8476118, -483721, -2179159, 2722473, 4013110, -1483911, -186294, 2311229, -2690260, -826781,
--1220308, -3151969, 3215857, 6620692, -941135, -1246077, 5203353, -7190849, 4452808, -5767604,
--11507291, -7336341, -11461657, -1853278, -6593312, -4466766, 1058173, 4393752, 2159295, 3104725,
--1804423, 3793530, -4945655, -1210107, 3973382, -139050, 5569499, -2500745, 1625645, -4117800,
--3151969, 2845416, -7053410, 1737851, 5069135, -6864969, 577136, -1903207, -3250753, -4541928,
--4109210, -1438814, -1869385, 955093, 4738423, -2455648, 1413581, -4173635, -4449586, -3519726,
-1551020, 2206540, 513785, -1177895, -1362578, -1928440, 911070, -1650878, -1458141, -729608,
--1359894, -265214, 151934, -2308008, -603980, -367220, -1759326, -536334, -834834, -95026,
--373125, -3114388, 286152, 1165547, -654983, -1287417, -204548, 1767916, 884763, -832150,
-12785581, 69256, -7154342, -6878927, -2365990, -5022965, -1941862, -3782256, 967441, 600759,
--5657009, -3342022, -6211597, 11737072, 4978404, 1064078, -673773, 6354404, -9521942, -172872,
--206695, -6036577, -8011188, 7143068, 142808, 5088463, -8033737, -3540664, -2798708, 2763812,
--284542, 3403225, -5538361, 1644973, 2273112, -6027987, -5763846, -5250598, 1256815, -1752347,
--1605244, 5032628, -1473711, 525597, 106837, -1037235, -5711770, -3529390, -641561, -8645232,
--5603859, -4574140, 2417530, 1606855, 3464965, -892816, 1532230, -140123, -852551, 3960497,
--3078418, 6931004, 1011465, 2065342, -884763, -2352032, 2813741, 2108292, 5549635, -1714229,
-904628, 3313031, -1945083, 15032, -7233799, 3374771, -5556077, 3495567, -4092567, -4087198,
--7797513, -1589675, 2044941, 802085, -1266479, 1769527, 853625, 3526705, 647466, -1152125,
-3205656, 1653562, -2728378, 620623, -2203855, 2403034, -925565, 351650, -548682, -352187,
--1928440, -142808, 192200, 309238, -1094143, 865973, -1600949, 591095, -220654, -914828,
--1403917, 313533, -911607, 2040110, 690953, -642635, -832687, -934692, 1744831, 1017370,
-1675574, 76773, 279173, 735513, 15052787, 14245870, 10618233, -3677566, 3850438, 5340255,
-3110093, 2985002, -5374078, -4704063, -7014756, 6121402, -6586333, -872952, -4808753, 8142185,
--9176734, -6876780, -3460133, -1545651, -5083631, -7620346, 2086817, 318901, 374736, -9225053,
--5107253, 2308545, 1849520, 2514703, -2547989, -3717294, 219580, 2666638, 3445638, -2660732,
-3273302, -4942434, -1358820, -11973295, 4286378, 1341104, -2117956, -2344515, -8836895, -4097936,
-1031329, -2221035, -12383464, 6547141, 2667175, -112743, -3400004, -2684355, -5284421, 1489817,
--1925756, 3442953, -853088, -1875290, -7079717, -1462973, -782758, -3968550, 7606387, -5688684,
-21475, 4449586, -2001455, -6146098, -3475166, 5068062, 7429757, 3594888, -661425, -345208,
-3889630, -8227010, 3213709, -983548, -482647, 249108, 1656784, -594853, -427886, 275952,
--1676111, -5025112, -1413044, -1629403, 1400159, 907849, 474057, -2032593, -1088237, -2327872,
--2791192, -812823, -196495, 3087545, 212064, 296353, 304943, -1271310, -749472, 1339493,
--1792075, -412854, 486942, 780073, -2122251, -126702, -275952, 1038845, -1552631, -502511,
--955630, -1570884, -3211562, -1589138, -249645, -1515587, -96100, -1611, -250182, -1883880,
-18321256, 6164352, -2642479, -2105071, 6453725, -12330851, -2294586, 10035191, 5050882, -6950331,
--120796, -4708358, 1967632, 7721278, 18940268, 6263673, 14761266, -5194763, -1056562, -14305999,
-4901632, -4160213, 4073777, -6256157, -288837, 622770, -2190970, 5159867, -2260764, 2471754,
-6374805, -4836133, 2902324, 8097624, -2157684, 2716030, 56908, 3260417, 4476430, 4559645,
--24256364, 8895951, -2758980, -11376295, -1938104, 6955700, 2178622, -8789114, 4796942, 6933688,
--14260902, 1150514, -3986267, 8422431, 1978906, 6956237, -1644436, -5012227, -9995463, 612570,
--6022618, 18971944, 3565360, -3125126, 6385006, 788663, 6180995, -14942191, -1905355, 2293513,
-4690105, 1087164, -6923488, -1115081, 2615635, 6629282, 5671505, -4651450, 188979, 6519224,
--220117, 3058554, -2214056, -1146219, 4650376, 423054, -291521, -650151, 297427, 2221572,
--2097555, -985695, -208843, 1717987, 1761474, -252866, -535260, 4488778, -1371168, -808528,
--2316061, 280247, 1295470, -1223529, 152471, 1352378, 1914482, -1653026, -666794, -2720862,
-268435, 2074469, -945967, 347892, 1049046, 1050120, 3714073, 416612, 1854889, -164819,
--1512365, 2323577, 653909, -21703006, -23802172, -8147016, -1851131, 441845, 5066451, -10164577,
-3216394, 11990475, -6868727, 6383395, 8308078, -5780489, 188442, -2814814, 10160282, 14158360,
--6770479, -7991861, 7131793, 685584, -6784438, 3218541, 127238, 1774895, 2039036, -3634616,
--2632815, -15128485, -762357, -4327717, -331786, -448824, 10302553, 3052648, -18445810, 308701,
-8921184, -10099079, 2677375, 10859288, -2369748, 3821984, 239981, -2850785, -6996502, 13960791,
-11770358, -8936753, 4699768, -3324842, -441845, 4343823, -3078418, 3642669, -5506685, -632434,
-11818139, -3352759, 2518462, 5568962, -4004520, -9697499, -391379, 3326989, 1746978, -4661650,
-640487, 2611340, 4220342, 8623221, 5363878, 9489193, 5042829, 1831804, 4440996, -1560684,
-8587787, -282931, -6737193, -9110163, 1146219, 2954401, -1566589, 6806987, -3491809, -3680787,
-2734821, -861678, 756988, 342524, -4183298, -592169, -2509872, 3092377, 1416802, 2485712,
-4887673, 601832, -1692754, -7054484, -514859, 1631551, -1773285, -733366, 739271, -1575179,
-1533840, 1561221, 228707, -1668058, -1155883, 3444564, -459025, 1613834, 886374, 1110249,
--2443837, -2627983, -1516660, 594316, 1218697, 2058363, 1563368, 1003412, 994822, 2588255,
--648003, -23369454, 26096758, -1501628, 16796006, 1293322, -9721658, -2904472, -5622649, -6821482,
--871878, 479963, 12157442, -1906966, 8361228, -8376260, -419833, 2087354, 1950989, 972273,
-10574209, 10536629, 3875134, 1697586, -1296006, -2025614, -569083, -1726577, -17533668, -5963025,
-8135742, 5260261, -1918240, 924492, -8274255, 4242891, -10154913, 2266132, 16248398, 1798518,
-3564286, -13437879, 7245073, 6318434, 1779727, -9001178, -3904662, -4173635, 793495, -8074539,
-8349954, 10179072, 6174016, -851477, 15247671, 5434744, 22291418, 8739185, -5883569, 18574122,
-482647, -6700686, 13474923, -2128693, 4495220, 8508330, -6031208, -5164698, 12474196, 13392782,
-7949985, -10755135, 4184372, -42950, -4920422, -8821326, 6671158, 11862700, 7211787, 17196512,
-2445984, -3710852, -3732864, -10492068, -3915400, 6609955, 1112397, -1866163, 514859, -6518687,
--4515085, 992674, 1789391, -150861, 7192997, 5672041, 2593624, 299037, 2186675, 3432753,
-1846299, -3212099, -1212255, 1037235, -634581, -1056025, 3108483, 343061, -715112, 2475512,
-1046898, 843961, 1076426, -2094870, 689879, 6278169, -2669322, 3985730, 1968706, 239444,
--2642479, -3026878, -1433982, 5740224, -12565464, 16683264, -4832912, -10983842, 3663607, 7245610,
--7286949, -3707094, -15379204, 6420439, -5641977, -1874753, -14096620, -6215355, -4783520, -2433099,
--6357089, 3301756, -2853469, -3496104, 3314641, 4631049, 8207146, 8016557, -3478387, -2934537,
--11355357, 4447976, 220117, 7446937, 2055679, 1973538, -2571075, 2961380, -7095823, -6045167,
-3345243, 1670742, 3396246, -13887240, 4641786, 9026948, -25233, -12237972, -12735115, -9967008,
--29372208, 4113505, -3377992, 14178224, -6952479, 11770895, 3800509, 760746, 15241228, 2274722,
--1748589, 10899553, 4064650, -14977088, -7407745, 1733556, -4747550, -8525510, -5138929, 19191524,
-8868571, -9113384, -1083406, -5143760, -2470143, 2756832, 13611288, 190052, -3628711, 17923972,
--6423124, -16394427, -15563888, -18546742, -3260954, 1354525, -459562, -3313567, -2237141, -7966628,
--1528472, 2251637, -2425583, -2402497, 1589138, 1450088, -11595338, -4842576, -9073655, 370978,
--3053722, -3012920, -4841502, -1589138, 1336272, 6995428, 107374, 8593693, 4295504, 6294812,
-710817, 2931315, -2932389, 5734318, 1074, -4234301, -6190659, 3527242, 607201, 1925756,
--1590749, 1081258, -1923609, 1945620, -667331, 2318209, -460098, -1076426, 1572495, -382252,
-7329362, -12034498, -2995203, -3197603, -1542430, -802622, 32114544, 5288179, 11767674, -5654862,
-10283225, 20702280, -17671106, 26883810, 15961172, -7150047, 285615, 1660005, -9608916, -16163036,
-1161252, -9359271, -14401562, -6447820, 1333051, 51540, -1726040, -6468758, -1035624, -6298033,
--388158, -7286412, -480499, 5034776, -11301133, 6262599, 9618579, -7421167, -6862821, 4958540,
-3787624, -626528, 28858422, 2563022, 19258096, -13780403, -1277753, -16713865, -12222940, 2980171,
--12258374, -16897476, -11216307, -12829604, -2737505, -3402688, -14203457, -15488726, 20304994, 3196530,
-1341640, -2724083, 10553808, 5838471, 12716861, -1236414, 12025372, -6665789, 2797634, -22345642,
-18345416, 8851391, 1511292, -12265353, -849330, 5563057, 1242319, 2153926, 9105331, 12606266,
--9672266, -12521440, -8171176, -1946694, -126165, 1387274, -7281580, 855772, 2195265, 5203353,
-6830609, -838056, -4080756, 7043747, 3560528, -5231807, -271120, 2553895, -3044595, -5530308,
-1094143, -1866700, -1733019, -155156, -2336462, 6458020, -6701760, 3754338, -96100, 7142531,
--7345468, -1792075, 1352378, -1874216, -2734284, -1181653, -5797669, -6472516, -1122060, 696858,
-2022393, 2370822, -4295504, 4483409, 3487514, -2636573, 4103841, -766115, 2407329, 217433,
-2386391, -1780801, 15586973, -6415608, -5237713, 17405892, -14721537, -11235634, -2782602, -8945880,
--1461900, -17523466, 3882114, -10805601, 8221641, 1123671, 2777233, 9952513, 2833068, 7011534,
-9651328, 9157407, 7556995, 12848395, 1489280, 8719320, 7814156, -9453760, 16237661, 3941706,
-7482907, -8830453, 12661564, 5679021, 8877697, 2211371, 3138011, -1698123, -11764989, 2932389,
-6580427, 7762080, 8487929, 1783485, -14299020, -9065602, 10203769, 5523328, 2283849, -5472325,
-7047505, -5238250, -14333380, 20914344, 12757127, 9304510, -8121783, -4031901, -10691784, -33219962,
--1055488, -4691715, 4229469, -7809325, -8377871, -14687714, 2533494, 4624069, 18505404, -14703284,
-5883569, 204548, 8491687, -12955769, -15869367, -9703942, 10166724, 3047816, 3145527, 5361730,
--4392678, 1741072, 11926587, 4190814, 6015639, 7574175, -3104188, -2856690, -5071283, 51540,
-5185100, 6413997, 193810, 2615635, 1260573, 978179, 4869956, -3117610, -2662880, -4367982,
--2461553, -4518843, -186294, -6825240, -2771328, -7212324, -448287, -4371740, -1282048, -1061394,
--2522757, 1972464, -1833414, -9245991, -1422708, 3587908, 3957276, 7470559, -1181116, -4573067,
-2088965, -1856500, -6730751, 6067178, 5147519, 4913980, 11615202, 7558069, -705985, -26699128,
-15480136, 16469052, -8049843, 14057965, 4898947, -22501870, -3898220, 29790966, -4128001, -19658066,
--2989834, -1802276, -17064978, 12115029, 2597382, -8557722, 13054016, 8694088, 30728344, 18050136,
-580894, 2354716, 28998008, -7308424, 7420093, -11700565, -16878684, -4962298, -11430519, 2704219,
--731218, 5928666, -769873, -1967095, -4773320, 22879828, 1220308, -17839684, -14121316, -3135326,
--3573950, -533650, 7556995, 20892868, 13407277, 4500589, -12489765, 16276852, 29673930, -6140193,
-13550085, 12670154, 35733592, 6882685, 6921877, 10878615, 15310485, 8526047, -12084427, -11639898,
-8333311, -21716966, -13006235, -15531675, 14980846, 13095892, 9218074, -3433290, 11085847, 22962506,
--12882218, 18314814, 18274548, -2321967, 17968532, -16631187, -7235946, -5724655, 37480568, -18101676,
-18505940, 11591580, 6924024, 5336497, -16348793, -1514513, -12817256, 14071387, 13430363, -85899,
-1161789, -6542846, 10093173, -3754875, 1181653, 3860102, 4256313, 97174, 6242735, -4042101,
--2040646, -1533303, -3944928, 2013266, 3857418, -2951180, 1881733, 4421669, 7785702, 1291711,
--6753299, 3087008, -7335268, 1484985, 7048042, 4577362, 7445863, -1118839, 11867532, -4476967,
-8827232, -2120640, -2542084, -1398549, 730144, 9511205, -6568616, 4634270, 53687, 4693326,
--5294084, 1590749, 2522757, -2408403, 12593918, 5956583, 20477868, 36502928, 3943854, -3748433,
-3893925, -1930588, -5972152, 1112933, 3846143, -8878234, -11830487, 4058207, -6122476, -3333432,
-9337796, -432718, 18304076, -9576703, 17948132, 8825621, 1814624, -10359998, 3437048, 17884244,
-5229123, -9037685, 3592740, -2126009, 571768, 10518375, -14456323, -7652558, 16287590, 376883,
--3928285, 14111115, -614717, 5014911, 3284576, -13441637, -24474334, -5168457, 8611946, 15775952,
-3498788, -12047920, 15819975, -5117454, 31994822, -16115254, 21566104, -12505871, 7789460, 18440978,
--27084064, -28075664, -72478, -7922067, 7386270, 8999030, 1418950, -4103841, -16499117, 11245298,
--2273648, 19990926, 9160628, 18616536, 5215701, 10848551, -4384625, 14299020, 5308043, -8508867,
-1893544, -217970, -40955196, -1193464, 7402376, 9970230, 17560510, 14766098, -4631049, 1258425,
--2877091, 2774012, 170725, -4558571, -10716480, 4748087, -6172942, 14270029, 1873143, 2791192,
-7202660, 4155381, -4285304, 4121021, 10540387, 9066139, -2876018, -1638530, 1698123, -2189360,
--1274532, -6445672, -944356, -13508209, -1651952, 4634807, -11038603, 7819525, -8270497, -6905234,
-2263448, -7023882, 7395397, 2772402, -2437394, 4662724, -284542, -777389, 3256122, 9916006,
--6630893, 1539209, 1758252, 23791434, 30776662, -6739341, -1206349, 10842108, 40719512, 1120450,
--24107652, -9663676, 4888747, 4611185, -7628936, 7762617, -5512054, 12597139, -20443508, 1047435,
-12721156, -8560407, -9225053, 1748589, -20204600, -6254546, -6584185, -32190244, -27158688, -15768972,
-11850889, 13915157, -2447595, -22921166, 2576444, 776315, -808528, 4549444, -11489574, 27436788,
--7840463, 3460133, 30444338, -26687854, 12853227, 4464619, -9290551, 11028402, -7195144, -21649856,
-454193, 18648212, -8357470, -13619341, 7793218, 2474975, 17830556, 89657, -27464168, 2153389,
--16233366, 27020176, -9810242, 4045859, 6664179, 3198140, -3878356, -17620104, 7347079, 18382996,
-5364951, 18967650, -27843736, -15384036, -4580046, -301185, 3010235, -21547850, 19260780, -2698313,
--20477868, -6889128, 12971338, 12004970, -11334419, -15812459, 15575699, -12599287, -7844758, -345745,
--1912871, -1770600, -1000727, -4642860, -852551, 7754027, -1755568, 7121056, -8203925, 5647345,
-7517804, -2070174, 4072166, 1166084, -1493575, 44560, 1048509, 13314399, 733366, -2610266,
-1176284, 2920041, -6637335, 2343442, -8496519, -727997, 9922448, -3595425, -7731478, -2922188,
-4478577, 103079, 377957, 5789616, 520228, -7834557, -3994857, 14157286, 10429254, -3458523,
--546535, -21110302, 31081604, 905164, -53181896, 21330956, -7292855, 4165582, 5448703, 7162395,
-13080323, 4780299, -9612137, -2308008, 13172665, 8911520, -10543608, -547071, -8361228, -4327717,
--26111254, -3316789, 12597676, 15636902, 3531537, -6181532, 17322676, -17805860, 19735374, -11341935,
--6359773, 2366527, -6096706, 5272609, -15706159, -21216602, -23740968, -7590281, 12326019, -4737349,
-141734, 14486388, 4040491, 2543158, -432718, 505732, -4983236, 208306, 15618649, 9614821,
-16481400, 13972602, 16534550, 11248519, -9795747, -6250251, 4079145, -1040993, -18952616, 12769475,
--3411278, -17918604, 22527640, -245350, 3681324, -618475, -8162586, -2695092, 9474698, 13697188,
-11412265, 353798, 6999186, -22958748, -3237332, -8180839, 12520367, 4315369, -6375342, -7304129,
-28942174, -8815957, -9880572, -3135326, 4689568, -7162932, -19028852, -1080721, -3237332, -10303627,
-17886928, 3635690, 6750615, -5499169, -927176, 4146791, 1102196, 5238787, 5694590, -1872606,
-3504693, -3457449, 3968550, 1478006, -3126199, -2415919, 2949032, 4082367, 1151051, -3660923,
--2978023, -3296924, -2374043, 49929, 2079838, -2996277, -3545496, 810675, -244276, -687732,
-3141769, -1500017, 4954782, 1439351, 14432164, -1272921, -1759326, -3232500, -6194417, -8096550,
-72334768, -71203576, -3646964, -77408192, -12050604, -29493004, -3663070, 18780282, -9669582, -21496312,
-33653752, -9224516, -5961415, 1017907, 10315438, -1306744, 27955942, 18461916, 11042898, -16656420,
-1018981, -11397233, -11573863, -7786239, 332323, -3640522, -3185792, -9455907, -2170032, 15392089,
-1819992, 10149008, 10152229, -934692, 13581760, 19811610, 977105, -4195110, -10490458, -12533788,
-4871567, 5326833, -10399190, 16770237, -22409528, -22688702, 2391223, -8016020, 11973832, -21044266,
-8832600, -40361956, -21551072, -32335198, -2899103, -16019154, -1548873, -9822590, -12213276, -10646150,
--1072668, 2614025, -31589484, 3474629, -7005629, 3499325, 31139, -14664092, -25720948, 17597554,
--15523622, -2859911, 15730318, -1713692, -5083094, 10376641, 13019656, -2814814, 12969191, 8463770,
-15695958, 8618926, 15884937, 7477538, -9596031, -2739116, -8466991, 284005, -7029788, 1383516,
-5684926, 8101382, 8866960, -4076998, 4061965, 2905009, 5778342, -1486596, -2355253, 2987687,
-6950331, 844498, 1535451, 7699266, 3887482, 7930120, -1247688, 289373, -930934, 3830037,
-5444408, -1085016, -9322763, 4981625, -1640141, 1891396, -2994129, 1211718, -2719251, -1431835,
-386547, -7750806, 29528, 10459319, -6672769, -7001871, 813896, 3532611, 3573413, 1184337,
--6903086, 58997280, 29798484, 14583561, -13860933, -7016366, -30294014, 7078643, 24894704, -4467303,
--5508833, 40556304, -6877317, -8620536, 20244866, 29774860, 5426155, 30358976, -7187091, 4692252,
-18067316, 20345260, 31957242, 25885232, -1022739, -11110007, 9833328, 11823508, 11218991, 13843753,
-23983634, 11861626, 30413200, -11389716, -475131, 9070971, 8490077, 25746182, 15136002, 27569932,
--19363860, -5935645, 11221676, -20961052, 17458506, 17651242, 16993574, 7344394, -21060372, -7573638,
-40877888, 10674604, 27664422, 22911504, 25193742, -4883378, 33287608, 51831664, 18097382, 4762045,
-36530308, 25218974, -13620952, -8389145, -17212082, -13832479, 15559056, 17895518, 1853815, -14752676,
-623307, -13178570, -310848, -5800890, 9043591, -31238908, -3277060, 3319473, -15600395, 12139725,
-2424509, -9674951, 8691403, -19632832, -12551505, -21772800, -7022272, -10448582, 8040179, 2515240,
--9884867, 2405182, 14602352, 4313221, -4391067, -8608725, -13220446, -5147519, 4771709, -19063750,
--8631811, -1576790, 15661061, 5205501, -6248641, 3255585, -10031970, -2796024, -2892661, -8524436,
--5238787, 14383309, -3047279, -1016834, -3241090, 3381750, 9451076, 6512781, 8131447, 19786378,
-277562, 15930034, 993748, 1576790, 10256382, 8497593, -12927852, -7720741, -803696, 2974265,
-1619203, -8053, -18720152, 9063992, -22537840, 39040180, 55475408, 32251446, -14447196, -30711700,
--11438572, 27382564, -8332774, -22921166, 41289668, -28874528, 24579024, 13856101, -32774896, -13625247,
--3621731, -53893248, 1932198, 6068252, -26144002, 52874804, -18416282, 49105436, -37081672, 5374078,
-2144263, 35887136, 52766896, -4446902, 17767742, 24946780, -29532732, 19594714, -39897560, -10999411,
-75120048, -4299799, -21036750, -4122095, -42425688, 1780801, -13533979, 47118476, 17672180, 21922050,
--7492571, -12481712, -23744190, -21734146, 5196374, 3000572, -155693, 31394064, -7904351, 5994701,
--32862942, -16879222, 21477520, -48512728, -19420768, -14573898, -16884054, 45344116, 3002719, 48994840,
-34803192, 15650861, 18474802, -10930692, -26183732, 21980032, -35531192, -21460878, 43133820, 13262859,
--26495116, -43097312, -26451630, -30645128, 24337970, -26438208, 13414793, -19066970, -2017024, -16357920,
-17156246, 10308995, 1170916, -14168023, -3018825, -9747428, 2513093, -19290846, -13845901, -7193534,
-3867081, 10953240, -805306, -7780334, -11478837, -17894982, -13336410, 11587285, 15206332, -4787278,
-10340671, 22092238, 10021769, -20227686, -6480032, -7334194, 12387759, -12272332, -8694088, -2762201,
-4228932, -16168941, -22611392, -15518791, -5788542, 9257265, -852551, 2241973, -3693672, 12622372,
-3303367, 35417376, -58496380, 62438088, -1465658, 4899484, -19877108, 50437948, 11911555, 32517734,
-12341589, -21149492, 7334731, 18105972, -30724586, 21656298, 466004, 14403173, -41045928, -3107946,
-10162429, 37965364, -15719043, -31134218, -1296543, 37759740, 19945828, -14286672, -32397476, -1500017,
-27260158, 3660386, 1962800, 7641284, 19835770, 50016504, -70294656, -11500312, 6866042, 39242044,
-8827232, -21212844, -5215701, 15018964, 35883916, -3505767, 1808181, -67368176, 19603304, 10662793,
-18474264, -48847200, 43368432, 37404872, 14105209, -22032108, -2185065, -24389508, 18388902, 32053878,
-13467407, 15065135, -2717104, 24328306, -35209068, 33567316, -9832254, -11807939, 39385924, 32521492,
-2165201, -12121471, -32249298, 23796266, 25982942, -69102264, -5413270, 39938900, 9992778, -310311,
--24684788, -10525891, 67747744, -5052492, -23072028, -2798171, -12407087, -14925548, 22578106, -18893024,
-6940667, 10408316, 13806172, -9368934, 1420024, -9513889, -11515881, -7586523, 10440529, 10529649,
--10536629, -1977833, 5254893, -8279623, 20543366, -19517942, 5192616, -3393024, -6303402, 7422777,
-33978024, 2373506, 131533, -5295695, -11869679, 204011, 18530100, 4549981, -787053, -3427921,
--8619999, 15870441, -3985193, -766652, -9154723, 9167608, -52147884, 25677462, 5065914, 16405701,
-19749334, 28663002, 10262287, 9326521, -13441100, 14863271, 2859911, 33996276, -3737695, -9921911,
-26737782, 20587388, -4314832, 1948841, -11210938, 545461, 8576513, -2424509, -6634114, 15364709,
--11922292, 1768990, 20685636, -4223027, 12004434, -20711942, -4111894, 3016678, -8464307, -3111167,
-2549063, 15193984, -3656628, -24794310, 1133871, 50149112, 10494216, -26795228, 8232916, -27318676,
--18733036, -13971529, -3715684, 32126892, -3313567, -25088514, 51651276, -55427628, 9611063, 57191784,
-6167036, 40303972, -30407832, -56697328, 18554796, 2283312, 45592152, 2741263, -25469156, 21442624,
--5586679, -4372277, -10744398, -1460826, -15791521, 8330089, 2374043, 12520903, -19316078, -16368120,
--6505265, 20540144, 26072062, -8254927, 13954349, -1683090, 21852794, 15761993, -27122182, 22209812,
--5422933, 3651796, -4453881, -8050916, 85362, 309238, 3138547, -1646583, 2479270, 2401424,
-1737314, 3583077, -8808978, 914291, 5208185, -7064685, -782758, 5264020, -4621385, 6765111,
-7148973, -9803800, 12596065, 5528697, 13040594, -2370285, 6152004, 10838887, -19380504, 258772,
-6189585, 11931419, -6803765, -4683125, -6537477, -4351876, 22156126, -10135586, -106493176, -244153856,
--97014720, -147111216, -215228864, 115087944, 31514860, 66060356, 305528928, 235443664, 137154944, 251477312,
-187502704, 31738198, 61700428, 51320564, -119776976, -102499928, -50463720, -182902800, -174986624, -67205504,
--90123984, -126987152, -53385368, -45837500, -129331664, -107922864, -9384504, -61624192, -104951824, -36230732,
-32875290, -76236744, 22398254, 112650016, -9066139, -16517907, 152976000, 122218664, -5825587, 178953568,
-207263840, 84055728, 194702144, 273553440, 162918848, 141645344, 328174144, 261996224, 196725072, 233493216,
-309586080, 110580912, 43506408, 129544264, -102869296, -294081792, -213476512, -325214912, -526698816, -471585248,
--500714272, -581980416, -593386752, -511484448, -445680704, -446705600, -314376576, -139270224, -94665376, -14501957,
-151785216, 279665184, 282040288, 350556320, 504142176, 440926720, 402742848, 557059968, 442388608, 250142112,
-364811840, 255635376, 98792840, 89697704, 117497960, 11982422, -37787660, 22746684, 2836826, -82906288,
--44630080, 7207492, -66430260, -122240672, -59158880, -83909168, -178365696, -112239304, -43852688, -133041984,
--89887760, 17794586, -42775728, -62180924, 29912300, -36818072, -146983984, -112297824, -180297360, -303956992,
--286713216, -274494048, -285630368, -250611344, -168907104, -131568272, -79719424, -15364172, 66423280, 118810072,
-181738864, 229998720, 285086496, 297256832, 314661664, 351279456, 332600672, 305599808, 288465568, 191623728,
-66986456, 6649683, -29064044, -81466936, -96795144, -83759912, -95332168, -106209712, -94211184, -94285808,
--93087512, -77677168, -76464376, -79218528, -77041512, -66199404, -55065240, -45322104, -28477780, -13413720,
-3209951, 10022306, 13147432, 9614284, 5858873, 4073777, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--8562554,
-5064840, -6513318, 790274, -2760590, -862752, 2532957, -4039417, -7337952, -1877438, 619549,
--4208531, -2426657, 3556770, -2112587, 1644436, -9188009, -791348, 6214281, 3308199, -10279467,
--3543348, -2697776, -2734284, 3470334, -1503775, -5354751, -3367791, -3828427, -3900904, 6772090,
-2113124, 4361540, -2831994, 5729487, 5203353, 3711389, -2066953, -4863514, -3825742, 403727,
-964757, 7794829, 2758443, 1483374, -3677566, 847182, 331249, 891743, 3083787, 1830193,
--5298916, -4500052, -2331630, 2849174, 657667, -996969, -5664525, -1729261, 2213519, 2563559,
--2289755, -862752, 119722, 2714956, -592169, -2993592, -3758, 433255, -3868155, 8221641,
-509491, -5576478, -16643, -857383, 5268851, 426812, 3562675, 4934381, 1839857, -333397,
-228170, -1787780, -1178969, -1187022, 3121368, -1005559, -417686, -1409286, 1067836, 383863,
--621697, -122943, -833224, 171262, -134755, 643171, 621160, 1054951, -5645198, -5108327,
-5800890, 5320928, -4297115, 3205656, 324807, 1654636, -14120779, 5468030, -2095407, -9640591,
--12573517, 344671, 9098351, 555661, 5900748, 226560, -11370926, -3919158, 1316408, 3986267,
--1998234, -965831, -4784057, 642635, -864362, 8048232, 4092567, 1716913, 1449015, 2193118,
-2798171, 7339026, 4449586, -6467684, -542777, 1514513, 1574642, -7694434, 2513630, -2282238,
--4864588, -1370632, -198105, 5277978, 1363115, -2936684, 5345624, 8326868, -1753957, -3147674,
-2020782, -587874, 4558034, 4645007, 3640522, -5554467, -4224101, 3997004, -1673964, -1389422,
--4255776, 469225, -6325413, 3780645, 3411278, 4472672, 1159641, 5196911, -5604396, -3521336,
-7303592, 388158, 2716567, 8616241, 3340948, 853625, -3453691, 5056787, 621697, -2556043,
-1459215, -6081674, 188979, -635655, 923418, 1640141, -678068, -2706903, -1469953, -436476,
-1344325, 1248225, 438087, -744640, 761820, 1723893, 322659, -564251, 7201050, 649077,
-2796024, -6038187, -5127117, 2956548, -1412507, -2199560, -2798708, -2615635, 2196339, -6988449,
--4002373, -8633421, -10377178, -1908576, 8660265, 5590974, -3481071, -958851, -1189706, -1998770,
--7471096, 5405217, -1866700, -1907502, 484794, 3538516, -1674500, 328028, -247497, 5117991,
--4705674, 5134097, 2805151, 6152541, -2082522, 4763656, 2121177, -2920578, 4290673, -2887292,
-2474438, 4565550, -3423089, 4794257, -2843268, -2286533, -712428, -1397475, 2415382, -1375463,
--3624416, 1477469, -3145527, 708670, 438087, 508417, 7213398, 1416802, -1648194, 57445,
--2946348, -4105452, 2138357, -976031, 6885370, 7030862, 2851858, -1930051, -1075889, -32749,
--2757906, -3180960, 3544422, 5576478, 185220, -587337, 3425237, 3706557, -476205, 1321239,
-1190243, -2663417, 2548526, -468688, 3655017, -1792075, -694711, -119722, -1516124, -147640,
-2662880, -563714, 807991, 798327, -1878511, 608275, -343597, -360240, 760746, 715649,
--1203128, 1391569, -464930, -570157, 99858, -134755, -227096, -1077500, -816044, 13702019,
--5815923, 5609764, -7005092, -5894306, 15569, -1646046, -1500554, 1897839, -2953864, 5917391,
-5774584, 4944044, -1500017, -660888, -2594160, -6344741, 978179, -3817689, -714038, 679679,
--2130304, 3592203, 1354525, -447750, -10458782, -4377109, -6594923, 231928, -4317516, -6638946,
--2911451, -3675418, -4057134, 6578280, -5276368, 4632122, 396211, -1886564, 2596845, 2221035,
--4729833, -1309965, 91805, 5076115, -490163, -6978248, -8837969, -9211094, 2388002, -3375308,
-198105, -745177, 1326608, 3091303, 5107790, -3547643, -1872606, 1665911, 1755568, 637803,
-6408091, -3602941, 3962644, -7380365, 14431090, 1757179, -1536525, 2788508, 1381906, 2742337,
--4010963, -724239, 1097364, -462246, -861678, -7299834, -2418604, -4966593, -1469953, -596464,
--3564823, -3505767, 2597382, 3011309, 928787, 578747, -326418, 2542084, 1511292, 2921115,
--1462436, 243203, 100395, 2683281, -1072668, -174483, -153545, 285615, -2124398, 510564,
--1533303, 765041, 1091995, -526670, -1784022, 344671, 570157, -569620, -602369, -1948305,
-528818, -239981, -967978, 1207960, 1425392, -192200, -6662568, 1022202, 1291175, 492311,
--1013075, -3969624, 2436857, 1960116, -6014028, 7165616, -8830453, 10998874, -1028108, 3702262,
-1661079, -176631, -1133871, 2300492, 10310069, 11560978, -2161979, 2120103, -1343251, -1587527,
-1570347, 2491618, 7939247, -954557, 2436320, -3947612, 4372814, 1008780, 6269042, 3063386,
-5874979, -8358007, 3590056, 3113315, -2601677, -38118, 6374805, 77309, 541166, 1976222,
-3896609, -1256278, -501974, 12261058, 5856725, 1132798, 1158031, -2501282, 5590974, -7327751,
--10766409, -13038984, -759136, 6933151, -165356, 3482145, 9352291, 3728569, -1601486, -3222836,
-5007932, -913217, 12012487, 5428302, 1821066, 1722819, -6484864, 1438277, 4977330, -2461016,
--7307350, 1341640, 2691871, -270583, -2508261, -888521, 1297617, -2339684, 1429687, 1411434,
-1296006, -425739, 1488743, -2295660, -2137820, -671089, -1340030, 798864, -2145873, 1316408,
-2199023, 1462436, 1670205, 1673427, 559956, 1090385, -2976412, -2506114, -904628, -1293322,
--1532230, -281320, 1060857, 606664, -61203, 1940252, 1075889, -99858, 2437931, 1530082,
--15933792, 1724966, -1189706, 10956462, -8174397, 4817880, -16872242, 6664179, -1577327, -8591008,
--9440338, -6598681, 5060009, 3957276, 12836047, 1719598, 4287451, 12288975, -2114735, -8908299,
-1358820, -6859063, 1700807, 10024991, 1879585, -2784213, -1171989, -1893007, 2961380, 3897146,
--804770, 2612951, 5174899, -3194382, 1652489, -6025839, -449361, -7546795, -1167694, 1058173,
--3570729, 5612986, 3835406, 4787815, 9511742, 634045, 11507291, 8822937, 4272419, -5946382,
-13193603, 5698348, 2333241, 11575474, -1248225, 287763, 979789, 3861713, -2390686, -3342558,
--7895224, -7626788, -6231998, 99858, -4914517, 10162429, -6092411, 4223027, 6338835, -3519189,
-338229, -2871186, -1686312, -9919764, -11381663, 5245229, -1975685, -3787088, -3368865, 1010391,
-1342177, 807991, 2239289, -3942780, 9324911, 695785, 2809446, -1869921, 524523, 2815888,
--4536559, 1574106, 179315, 1614371, 2115808, 32749, 1653026, 3229279, 9664, 964757,
-2295123, 2579128, 3297998, -89657, 565862, -1637456, -469762, 220654, -788127, -2334852,
-169114, -634045, -1033477, 317828, 13381507, 539555, 192200, -1204202, -2579128, 2429341,
-585189, -6781754, -8699993, -11800960, -6170258, -12348568, -7842074, -4186519, -9131637, -5762773,
--3978214, -4730907, -12355010, 8524973, 5348845, 345208, 4503810, 2087354, -3413425, 15406048,
-970126, -5281736, -2765959, -10390600, -4459787, 11481521, 579284, -9575093, -9582072, 1432909,
--9699647, 3148748, 3429532, -7538742, 319975, 2400887, 557272, 11303817, 3394635, -5110474,
-1157494, -6133750, 5707475, 846109, 2537789, -13743358, 9521942, -4698158, 3978214, 357556,
-1861332, 2301566, 373125, -3973919, -299574, -5341329, 28991, -10823854, -42413, -11679090,
-15469398, -2586107, 9848360, -7187091, -3363496, -1509681, -7443179, -4122632, 6054294, -172336,
--213675, 4519380, 5820755, 975494, 9494025, 8249559, 11414949, 6116571, 2440078, 1438277,
-5193153, 2812130, 1740536, 2154463, 1191317, 2590939, -696858, 4201552, 745177, -214212,
--852014, 3286187, 1336809, 2355253, 1176284, -1464047, 1126892, 1332514, 1094143, -2446521,
-4798016, 2631741, -439160, -3587372, -374736, -489089, -2596308, 1015760, 501437, 2778844,
--2208687, -4973036, -6855842, -35433, 5032091, -13160854, -10737, -5692979, -4558571, 9308268,
--15178951, -14338748, 3729642, 19103478, 484258, 1810866, 1464047, -2918967, 10458782, 10154376,
-5864241, 2876018, -2761127, -15540265, 9202504, 71941, -12451110, -4022237, 2880313, -635655,
-98247, 1265405, -3003256, -12261595, -696858, 494458, -2246805, -5127117, 3670587, 10622528,
--13720273, 8524973, -5148592, -2589865, 807454, 6762963, 22275312, -14418205, -3639985, 1407139,
--1437203, -2645163, 727997, -5532455, 1913945, -4997195, 15311022, 5260798, 2860985, 4219806,
--3247532, -892279, 8099772, -1282585, 3514894, -6750615, 11751031, 514859, -8335995, 16441135,
--10492068, 7565585, 2147484, 3727495, 11951820, -4776541, 5082557, -590558, 12348, 1433982,
--812823, -8083129, -4289599, -527744, -3581466, -1275605, -1957431, -4961761, -5074504, -3810173,
-2347200, -4345970, 2486786, -1167694, -190052, -3814468, -2616172, -2816425, 2225330, -5263483,
-514859, 500364, 3177739, 4983773, -1970853, -958315, -4507568, -3847217, 255551, -3385508,
-936840, -634581, -3003256, 47782, -920197, 1351304, 1783485, -1262720, 16307991, 1283122,
-4259534, 4844723, -2718178, -9373766, -7347079, 1136556, 16314433, 9251360, 2018098, -14571213,
-2113124, -8010114, 60130, 16321413, 15700790, 7933879, 10617159, -9558987, -19801946, -10366977,
--14267881, 7927436, -128312, -2405719, -40802, -10799695, -3194919, 3351148, -2016487, -4099010,
--3980361, 11566347, -732292, 3152506, -3270081, 7585449, 1622424, -4365835, -9176198, -7054484,
-20940650, -894427, -4714264, 6691559, -11938935, 3755949, -6825240, -20885352, -4668630, -2712272,
-6342056, 2428267, 5574331, 1769527, 8286603, 315143, 594853, 4581120, -20397336, -3221226,
--5463736, -1453846, 2004676, 11729556, 12975633, 4672925, -3367254, -8928163, -11710765, -3935801,
--6880001, 1482301, -3409667, -3655554, -8056822, 12093554, 8739185, 3544959, 11144366, -2644626,
-4466229, 6822019, -4316442, 4064113, -2770791, 891206, 4082903, -1232656, -2661269, -1116155,
--1456531, -1054951, -64961, 275415, 4048007, 163209, 509491, 1235877, -2202245, -6179384,
-280247, -1439888, -770947, -1117765, -3604551, -412317, 1245004, 5497558, 4551592, -2550137,
-668404, 3617436, -731218, 833224, -1264868, 830002, 3506304, 437013, 3844533, -23621784,
--15449534, -3588982, -5636071, 12045236, 8269423, -1992865, 20753818, -21005074, -4908611, -7936563,
-22169010, 10628433, -7303592, 8164196, 3098819, -8647917, 15307800, -16910360, 8353175, -7794829,
-1309428, 1829119, -5651103, 14781130, -10408316, 9072045, -4340602, -21777632, -3620658, 15192910,
--9214315, -14872398, 194347, -1864553, -22244710, -4168803, 8914205, 3773129, 11851425, 8710731,
--2519535, 21378736, -5124970, -6596533, -10525891, -9804337, -9480067, 5862094, 7981660, -6894497,
--7772280, 2553358, -6742025, 8959839, -2474975, 4859756, -3646964, -5568962, -4272956, -130997,
--12590697, 3401077, 9073655, -2129767, 3922916, 5447629, 6442451, 11613055, -8318815, 3731790,
-9059697, -1174137, -19302656, -20551418, 2261837, -1957968, 1526861, -7524246, -3122978, 1510218,
--7441031, -13505525, -4124242, 10187126, 8269960, -4063576, -1642825, 3134253, 2798708, -1609002,
--3275986, 244276, -427349, -5308043, -1961190, 5644124, -1615982, 4536023, 826781, -1407139,
--2768643, 3646427, 3600793, 4220342, 517544, -2359011, 2460480, -6316287, -3779571, 3127810,
-1472100, 2686502, 4942434, -2503966, 1039382, 1947231, 2421825, 476205, -2866354, -4134443,
-1879585, -2241973, -1359357, 17055852, -10550587, -26788784, 249108, 19338628, 24639154, 4725001,
--8906688, -6634114, 2647847, -4226248, -3743601, 10921028, 11052025, -5201743, 10668162, -13208635,
--1509681, 9801652, -4580583, 11837467, 5619965, -1457605, -15941308, 6310381, -3637301, -3651796,
-945430, -1030792, -1590749, 22212498, -10717017, 11423002, 19006304, 13276281, 7011534, 423054,
--12368432, 12669080, -6875706, 12081206, -6599218, 2934000, -13012140, -2340220, -12293270, -7956427,
-1986422, -11352135, -3090766, -3828427, -373125, 10478110, -12009802, -10216117, -3702799, -5778879,
--2360085, -10120554, -13245679, -16489990, 1781338, 13163538, -804770, -8015483, 1480153, 2979097,
-10384694, -11104638, -6390375, -3391414, -196495, 7946763, 228707, 2394444, -7718056, -3020973,
-4168266, 15881178, 7107097, 11054709, 12664248, 16587701, 6461779, -1945620, -5635534, 4256850,
-5155572, 7492571, 3231426, 987306, 169114, 10204842, 3710852, -3359201, 957241, 5869073,
-2415382, 1668595, -3461744, -3227668, -2360085, -4612795, 514322, 5017059, 4673998, 1335198,
--2480881, 6876243, 3954591, 8622684, 4505421, 610422, 5726802, 441845, -4107063, 6714645,
-142808, -476205, -2224256, 1645509, -1324461, 269509, 5739150, -45168560, -21471078, 15068893,
--36881956, -25567940, -1646583, -15049565, -10315438, 11253888, 12876312, 3941169, -2360622, 4659503,
-36840620, -4518306, 5900748, 14176076, 16169478, -16802448, -8706972, -7960722, 13611288, 14839649,
-7471096, 2726231, 13917305, -4092567, -6950868, 9756555, 18832894, 1332514, 6099391, 19129784,
-14137959, 11502996, -8567923, 3616899, 5821828, -46171, -289373, 12273943, -4000762, -204011,
--1213865, 8192113, 337692, -13447543, -8960912, 2681670, -18210124, 13807783, -4017942, 30522722,
-1253057, 16732656, 3359738, -748398, -9808632, -491774, 3955128, -12933757, -6606197, -15107011,
--1864016, 7695508, 10557030, -4610648, -24506010, 8868034, -3855270, 8347806, -8755828, -10546292,
-7756711, -15935402, -12119861, 23666344, 406411, 10878615, -2180770, -10300942, 2903935, 13918915,
-3455838, 11058467, -17929340, -938450, -1161789, -3028489, -15403900, 15047955, -8943733, 1055488,
--1702418, 1767916, -5672041, -617938, 3235721, 4568772, -3762928, 9830643, -2372970, -3224447,
--5727339, -5008469, -4932233, 4688494, -1854889, -3563749, -1397475, 1188095, -3734474, 6844568,
--1997697, 7753490, -4833986, 3248606, 1282048, 3050501, 5141613, 953483, 18333604, -8333847,
--21175800, 9108552, -11052561, 4655208, -266825, -10529112, 19515258, -26058640, -1062468, -31460636,
-782221, 25466472, 35609036, 16865262, -6099391, 16483011, -1235877, -2254321, 1782948, -2760590,
-8766028, -1050656, -16646756, 1008780, -23138600, 8186745, -7152731, -5126581, 15538118, -277562,
--17790292, -19863686, 4626217, 2789045, -9906342, -8221105, 14918032, -21532818, -105227, -4308926,
-7625715, -5745593, -4669167, -17213156, -7326141, -7571491, -3210488, 12492449, -14748918, 5363878,
--1788854, -2507187, 1948305, 5418101, -24974162, -2602750, 3398930, -2149631, 9255655, -7812546,
--11029476, -4975183, -27946816, -12271258, -12177306, 648003, 11948062, 18037788, -8490613, 13666586,
--23300734, 37436008, 2575907, -6642704, 19563040, -23116050, 19634980, 8841727, -5233418, 479963,
-6561637, 594316, 3149822, 17948668, -7627862, 7704098, -4123706, 5597416, 8929774, 8859444,
-10744934, -3614215, 9062918, 2218888, 1375463, -1414655, -12020540, 547071, -8523363, 4028143,
-5565204, -1757715, -1317481, 1704565, 1240172, 6121939, 2803540, -4259534, 6557342, 24696,
-794569, 8183524, 5544803, 3346853, 14681272, -11919071, 119722, 5487895, 46708, -9327058,
-2329483, -5876589, -5642514, 22841172, 1219234, -16447577, -446140, -2556043, 10551661, 6930467,
--10066330, 11456825, 131533, -25838524, -28133646, -2759517, -8530342, 6929393, -1284195, -9977746,
--25366076, -22127672, 11952357, -18836652, -4290673, 1122597, 5862094, 1340567, 17950816, 1450088,
--9193914, 12020003, -1683627, 1708323, 11076184, -14753750, -1042603, 3131568, -15076946, 9041980,
-12384538, 5381057, 11012296, 5741298, 17098264, 4639102, 12427488, -17616346, -5560909, -2850248,
--23656142, -172872, -2624762, 9826348, -1652489, 11271605, -1959042, -13730474, -9390946, -748398,
--21882322, 9522479, 532039, -4277788, 12684649, 8040716, 10525891, 10956462, 3297461, -1357210,
-9184788, -29610042, 8904541, 3689377, 13176423, -5263483, -20943872, 13115756, -3217468, 22566296,
--33394444, -11898670, -23404350, 15942919, -6866579, -21485038, -23977192, -15784542, -7135015, 7596187,
-5945309, -6589554, -6852621, -3595961, -484794, -7271917, -2799782, 12178917, 1843615, -1188632,
-3535832, 2647847, 2192044, 6605123, -5181341, -6823630, -215285, -11840688, -42413, -4166655,
--1726577, -7646653, -2095944, -10428181, -9359807, 11793443, -6629819, -435402, 3941169, 5677947,
--1028108, 9900436, -8267812, -2669322, 4076461, -9715753, -2680060, 11366631, 4070019, 2547989,
--3898757, -5869073, 4386772, 15659988, 14518600, 53112104, 40129492, 5439576, 11634530, 3374234,
-30830886, 854162, 15005542, -13998372, 36513664, -14457397, 33112588, -1480153, 21149492, -2451890,
-14923401, -14837501, 3570192, 7471096, -8149164, -2647847, -4384088, -3411278, 9866614, 255014,
--8537858, -11722039, -17737678, -22516366, -10854993, -3771518, 119185, 7118909, -19008452, 8077760,
--10471130, -16091095, -3375308, -11747809, 5357435, -2837363, -24733642, -5843840, -12589086, -14853608,
--15662672, 14239427, 18943490, -39637180, 8971650, 3568581, 11113765, 3976603, -5034776, 24051280,
-13471702, 12609487, -33239826, -14810658, -471373, 8238821, 27456652, 1083942, -3755412, 1386738,
-23251342, 20978768, -19866908, 22447110, 1617592, 5086315, -3832722, 13198435, -28304372, -9838696,
-29078002, -4409858, -1943473, -11155641, 19369766, 12754442, -10096394, -16931298, -2987150, -665183,
-1666984, 319975, -3696356, -15776489, -5483600, 12421582, 16130287, 10110890, -9012989, -2296197,
--2688113, -7592429, 2414845, 2633889, 7413114, -1573569, -5366562, 4758287, 1732482, 2898029,
-14580340, 2066416, -4164508, -5497558, 2434710, 5339718, 11328513, 2371359, -11195369, -5856725,
--8432631, 3387119, 4157528, -9105868, -19662360, 6407018, -1704565, -3211025, -6943889, -11969537,
-14304389, -6045704, 12428562, 19485730, -22603876, 6658810, -13034152, 36959804, -22325240, 20762408,
-19112068, -7656316, -35065724, -20521890, -2575370, -9532680, -1316944, -16225850, -25623238, -33993056,
--19607062, -22727356, 9405442, -19478750, 7712688, 2005213, -2492692, -2264522, -16098074, -5166846,
--16530792, 4489852, 14227079, 18733574, 56371, -5616207, -16965120, -4251481, 1367947, -10191957,
-2538326, -13952738, -9209484, -2232309, -13876502, 10473278, -12291660, -35685808, 1015223, -1368484,
--11996917, 14821932, 11521250, 16927540, 6294275, 13262322, 27071178, 4336307, -27545236, -6484864,
-12505334, -6258304, -22952842, 12385075, 17631914, 5782100, -442919, -30888332, 27040578, -1569811,
-22010096, -18795850, 22291418, 55151676, -5228586, -1850594, -27393838, 14317273, -22346714, 18319646,
-9109626, -12377559, -3043521, -30181808, 6561100, -16574816, -79457, 11263015, 11200738, -663036,
--8076149, -6933151, 7885023, 20003274, -10178536, -1828582, 2766496, -9074729, -2920578, -3031710,
-3899294, -1223529, 8153459, -4134443, -10072772, -5636608, 2584497, 7423314, -9979893, -3234647,
--512175, 1085553, 6785512, 1308891, -2787434, 2315524, -16697759, -9589051, -1361505, -1732482,
-3034931, 736050, 968515, -529892, -3179350, 8114804, -804233, 5994164, -762894, -2016487,
--6390912, -4358855, -43503188, 14866492, -57081724, 37812356, 13590350, -9700721, 40301824, -3801583,
--20410758, 35742716, -13659070, -1881733, 7626252, 12540231, 33066954, 1402307, -2596308, 23343684,
-9976135, 19611358, 24033026, 17811766, 1738388, 12465606, 2064269, -1195075, -13004087, 8441758,
-12669080, 3086471, -642635, -14101451, 6908455, -13208635, 16076063, 15794742, 2861522, 18651432,
--11332271, 12329240, 19424526, 12352863, -25900800, -27939836, 33022930, -3143916, 20710870, 31976032,
-902480, 74088, -3175055, 6321655, 18603114, 17570174, 1986959, 14601815, 168577, -16572668,
--20574504, -30677878, 705985, -12435004, 608812, 17448304, 16474958, -28699508, 2639258, 11180874,
--25028922, 4218195, 35241280, -15177341, -17313014, 18849000, -20047834, 4685273, -5502390, 36797668,
--10506027, 22736484, -11082089, 19110456, -1604707, 7111392, 15447924, -24008868, -7124277, 9163313,
--15719043, 11676405, -14086419, -3948149, -7868380, -7348152, 1229434, -3948149, -6347962, 3849365,
-11134166, -5505611, 3191161, 3988414, -9281424, 1673427, 1502702, -2445447, -6500970, -2775623,
--4972499, -15440944, -5918465, 3302830, -20055350, 7327751, -10174778, 7810935, -4505958, -1975148,
--13998909, -7441031, 388158, 3913789, -6060199, -13878650, 2527052, 926639, 7657927, 3175592,
-235686, 8994198, 7451232, 741956, 4134980, -19990388, 4418448, -23153632, 47499652, 11634530,
--25421912, 9633612, -5933498, -22623740, -26669600, -27048094, 7957501, -1351841, 23801098, 35346508,
-16949552, 8551280, -4334159, 11728482, 1069984, -44521632, 19464254, 46213848, -30325154, -31825170,
--27540404, -38896296, 28056336, -38300372, 17164300, 228707, -4861366, -270046, -12510703, -14829985,
-18920942, -39402028, 40403832, 23207318, 5290863, -25933550, -19666118, -17185238, 3539053, 6736656,
--16854526, -2348810, -12471511, 27849104, 12540768, -5064304, -942745, 11432666, 2474975, 13053479,
--22899692, -9062381, -2289755, -4073240, -21312702, -14958297, 12487617, -40365712, -23906862, 3034395,
-47035260, 22715008, -14485314, -1001801, -35965520, 17403744, 54569172, 1897302, -11889006, -8257612,
--25961466, 33652680, -10966662, -13050795, -1270774, 19935090, 12403866, -17352742, -15759846, -5611912,
-17448304, -4722317, 5005785, -1400696, -14115947, -4555350, 22138946, 12739410, 1671279, -10366977,
--1808718, -1590212, 17223892, 14136885, 6920803, 6377490, -20781200, 7872138, 7257958, -3098282,
-4510253, -3235721, -3118146, -18060874, -2089502, -929324, -2729989, -5763309, 4665408, 6622303,
-3299072, -21230024, -18451180, -8997420, -242666, 1302449, -21604222, 7652558, 26739392, 5443871,
--7656316, 526134, 3985193, 108985, -37044, -22217866, -15334644, -44321916, 9574556, -32682016,
--48816060, 11355357, 26852136, 6536940, 7144141, -20718922, -25885768, -6799470, -38308960, -18880676,
-9895068, -32085554, 50302656, 9711995, -12469364, 10735271, -24237038, -47831440, -16098611, -36607616,
-5706401, 10562398, -13480829, -26068840, -13257490, -16124918, 13914083, -19154480, -7041062, -2580202,
-21473762, -15706159, -2942053, -7404524, 5418638, 8901320, 1549410, -6561100, 22157200, 28980828,
-18514530, -15013058, -12299176, -42909944, -23907398, -9900436, 11244224, 71781792, -12376485, 725313,
-31920734, -3027415, 13543642, -16478179, -17115444, -13892072, 15098958, -40718436, 216896, -5509906,
--607201, 34997540, -15534360, 53043920, 4618164, 40164924, -51446192, -15537044, 14774151, -1154273,
--22369800, -18911814, 41601592, -43105364, -35529580, 51007568, 8932995, 44268228, -17715666, -3095061,
--3158949, 14151380, 6040335, -4214437, 15052250, 15005542, -884226, 6981470, 4711043, 1457068,
--5315022, -9710921, -2234994, -6475200, -8529268, 7748121, 4539244, -7327214, 5103495, -15831786,
--1586454, 10934450, 19315542, -1698123, -12227235, -1070521, -13909788, 7795366, 13276818, -9422085,
--7646116, 7324530, 8857296, -19969988, 7087770, 729608, 12932683, -8576513, -8687108, -241592,
-4112431, 5879274, -22292490, 3479461, -9429064, 17550846, -6140730, -2648384, -44131324, 20992726,
-32353452, -23495618, -19319300, -6614787, -21219822, -25556130, 6799470, 7539278, 19821274, 858993,
-17316234, 30840012, 32170378, 21351894, 7367480, -23620172, 2292439, 12263742, 16255377, 25020868,
-232465, -12967043, -18882286, -7130183, 25349434, -10424422, 9946607, 22047678, 2131915, 43330852,
-4952634, -27666032, 23860690, 23605140, 6761889, 10177462, 21856552, 3500398, 1804423, -25386478,
-54788212, -58460412, -43036108, -49867256, -16571058, 10324028, -29379186, 15066745, 32642826, -9692667,
-3135326, 28851980, 9142375, -31241056, -10925323, -24174224, -3547643, 1814624, 1508070, 27902792,
-27331562, -6286222, -7013145, 17536888, 42126648, 7347616, 34637836, -29272350, 30775052, -13522705,
-10129680, -6152004, -19807852, -13683229, -3235721, 14003204, 8445516, 34478924, -44704168, 22717692,
--17769354, -10984916, -8821863, 16540456, -7995619, -1522566, 3447785, -17851494, 11049340, -8722542,
--761283, -13544716, 4032974, -2720862, 428960, -15256261, 2093260, -1376000, 2871723, -1468879,
--16846472, 6681359, -9682467, -8612483, -4131222, 12447889, 14176613, 15921981, -13848048, 27352500,
--20811264, -6180995, 1333051, -2196339, -15452755, -8147016, -1123671, -11375758, 3010235, -903554,
--755377, -1317481, -11545409, 1496796, -2158758, -24957518, -50216756, -50544248, -36580236, 7511898,
-93910536, 23737210, -12948790, -28388124, -67853504, -95444912, 21553756, 39535712, 47460464, -9982578,
-4117263, -27984934, -48688288, 14042932, 8844948, 15847356, 2294050, -40832256, -12472585, 9980430,
--8205535, -1608465, -7721815, 53209812, 46726560, 31507880, -2878702, -22835804, -38783556, -25672630,
--23206246, 36347772, -6017786, 26598196, 12032888, 12458090, -16345572, -88406536, -60863980, 30061012,
--47890496, -16342351, 102009232, 70140040, 52707300, -39944268, 28872380, -27664422, 2032056, 2030983,
-14812805, 43272868, 76263584, -29189672, -2709588, -50273664, -40613748, -66535484, 7232725, -2739652,
--71636832, -17155174, 46163384, 17257178, 32225140, 43673376, 78692392, -57303992, -34386044, 4562329,
--46768972, -6016713, 26175678, 61300996, 31173946, 9584220, -37382320, -35842040, 24224690, -10193568,
-36138392, 31774168, -8553427, 14567992, 5865852, -6090264, -11994770, -6975027, -4509179, 10809896,
-3153580, -251792, 3781719, -1094680, 5240934, 169114, 22886270, 18822158, 29824790, 5398237,
--16342351, -34441344, -28130962, 11494406, 26805964, 30706332, -3809636, -19563040, -79255032, -40711460,
--37497212, 940598, 4059818, 8144869, -238371, 5950141, -8933532, 4295, -13240847, -11832635,
-16818018, 14847165, 8651138, 8740258, 4418448, 2033667, 23262616, -37721088, -124932008, -116255640,
--66723928, -72566160, -18080738, 120370752, 61170536, 123842160, 109904456, 172254496, 123032560, 105828528,
-17095044, -45919104, -103823320, -166393472, -141293680, -142310528, -74359840, -35695472, -8359080, 1201517,
-4119411, 29395830, 39298412, 99050000, 60176248, 116887536, 76168024, 100197296, 36280124, 96815544,
-33664492, 23692114, 22945326, -5750425, -27140972, -65525096, -75586592, -140383152, -96135328, -177893792,
--140714944, -215911760, -127972848, -101573296, -24471114, 59337656, 31598074, 5333276, 59273768, 126608120,
-169169632, 221744864, 264361136, 226169760, 165264976, 206039776, 170046880, 95297272, 42902964, -10572062,
--70841192, -164007616, -194742944, -260862352, -336744224, -389762912, -351673536, -309996768, -220571808, -150638992,
-46195056, 145269760, 177118016, 272665984, 227720784, 284360128, 298912544, 293163744, 338026272, 221853312,
-57685704, -55870008, -108266464, -134084048, -86757800, -125577328, -107594840, -125680408, -170003392, -172029552,
--200196480, -118600688, -92260192, -78731584, -43933756, -2707977, 11866458, 48595408, 132080448, 139081776,
-197581376, 171901776, 225963056, 166077792, 111059800, 114491480, 43718472, -30105036, -48995912, -217961008,
--280880672, -261649952, -230791136, -135231344, -106036840, -58089432, 5114233, 58809912, 89801320, 121946472,
-145718576, 173156432, 164531072, 155421984, 136944496, 76417128, -304406, -38872676, -90344104, -94649272,
--80968720, -66227320, -68890736, -69854960, -54808076, -39465380, -23320062, -9865003, -8927090, -6482717,
-1961190, -6857989, -7970386, 9463424, 22465900, 24951076, 16435229, 11529303, 19292456, 23252416,
-17068200, 15530602, 14453102, 9055402, 6154152, 5211943, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--12016245,
-4409858, -6861211, 3652333, -3889630, -7934415, -13678397, 2362232, 363998, 3390340, 2976949,
--992137, -1042603, 989453, 8204462, -5894843, -10487773, 3422015, -4362613, -7042136, 82678,
--1086627, 4284767, 1500017, 3044595, -3188476, -822486, -2105608, 6982543, -1959042, -2880849,
--2545305, -1279900, -1741609, -2862059, -2536178, -1770600, 1344862, 553514, 872415, 197569,
-1781875, 2938831, 1466195, -2696703, -7978439, -121870, -5563057, 758599, -423054, -2555506,
-3499325, 198105, -24696, -7945690, -3278134, 1014686, -669478, 2716567, 151398, 2412698,
--2345052, 974958, -1045825, 4831302, -1779190, 2522757, -4413616, -4387309, -5542656, 228170,
--1355062, -1646583, -15569, -1963874, -86436, -2282775, 423054, 54224, -995359, -3503083,
-293132, 314606, 1937567, 1706713, -34897, 1821066, -249645, -1493575, -529892, -729608,
-675921, -60130, 50466, 1007170, 712965, -179315, 907312, -687195, -8598525, -1796370,
--1148904, -2456185, -1120450, -2956011, 2819109, -1186485, -1018981, -272730, 42950, -202400,
--2083596, 7569343, 4871567, 7911867, -3734474, 7873749, -4698158, -3319473, 3060701, 8721468,
--206158, -5344550, -7849590, -5668283, -1095754, 6203544, 2441152, 2072859, 2759517, -2784750,
-4238059, 498753, 3164854, -1592896, -7150047, 1898376, -4949950, -3431142, -3474629, -872952,
--9073655, -469225, 421444, -3839164, 8463770, -1658931, -2743410, -3457986, -89657, 879395,
--3633542, 68183, -4454955, -1732482, 119722, -1893544, 6087580, 129386, -1642288, 3352222,
-2187212, 5580237, 2267206, 6719477, 1671279, 5481452, -6323803, 1577864, 5058935, -1796370,
--4514548, -6288369, -117575, -556198, -1238024, 1460826, 1836635, -1391569, 4854924, -4242891,
-1618666, 1619203, -3097208, 2193655, 520765, -2349347, 1228898, -651224, 492848, -2209224,
-675921, 185757, 411243, -320512, -133681, 970663, 290984, 1865626, 9737765, -4380330,
--3363496, 1000727, -2134062, -1581622, 4900021, -3761318, 4720169, 2179159, 135291, 2421288,
--3108483, -2966212, -5477157, -5910412, 7856569, 3724811, 2786897, 4209605, -2700461, -1800128,
--1976759, 9905268, -3784403, 10838887, -325344, -2726767, -2563559, -5701569, -6118181, -7448010,
--419833, -1858110, 1395328, 7245073, -571231, -3360812, -10025527, 374199, 8046621, 11767137,
--5464809, 3054259, 2211371, -2966212, -2608656, 3084860, 11176579, -2634963, 1802813, -934692,
--1572495, -1023276, 5390721, 7722351, -5779952, -3147674, 2443837, 10118406, 1741609, 7171522,
--5788542, -5404143, -239981, -879931, 2105608, 1550483, -71941, 649077, 1107565, -2616172,
-1287953, 3284576, 2571612, -1963874, 6518150, -1632088, 4120484, -2106682, -2163053, 2438468,
-2103997, 2205466, 557272, 2298881, 502511, -3343632, -2215130, 665720, -96100, 1249299,
--565325, 1860258, -15569, 1043677, -934155, -175020, -22012, -481573, -1097364, -96100,
--642635, -168577, -785979, -721555, 1894081, -16643, -807991, 1990181, 108448, 15882252,
--11045582, -2500208, -4633196, 1171452, 4175245, 7587597, -7735236, 5176510, -2074469, -8185671,
--13186623, -2765959, -5643050, 852014, -1322313, -5625871, -2902324, 2978023, 3170223, 10172093,
-5623186, 5135707, 472983, 1542967, -5376226, -3678103, 8177618, 6227703, 4222490, 1904281,
-3893925, 765041, -22012, -6961605, -9789841, 6432251, -2650532, -6633040, -3177202, -4199941,
-3430605, -3708704, 8221641, 1828582, -4817880, -2404645, -3701188, -3246995, 3993246, 5995775,
--569083, 4014721, -3050501, -3433290, -22012, 739808, -3247532, -1327145, 4733054, -24159,
--2014877, -2431488, 2559801, 2819109, -410169, 3424163, 446677, -2564632, 8213051, -1257889,
-869731, 315680, -9980430, 3797825, 3080565, 5078262, 3325379, -3722663, -869194, -9051644,
--4160213, -8313983, -3056943, -3774203, -3758, 700080, -5461588, 151934, -1346472, -70330,
-2276870, -908922, -1036698, -268435, -1537061, 179852, -801011, 532039, -958851, -2113124,
--1054415, -603980, -3427921, -400506, -191663, 610422, -245350, 323733, -219580, -12348,
--1847910, -2442763, 202400, -438087, -1081795, 343597, -10811506, 2880313, 187905, -3151969,
--5887864, 2564632, -5623186, -973884, 9922985, 14992657, 7421704, 8273181, -540092, -4072166,
-6241125, 5589900, 2404645, 3016678, 7428146, -1016297, 5422396, 5255430, 7705172, 7381975,
--5916318, 4969277, -312459, 1785633, -5507222, 1764158, -673236, 5062156, -1862942, -1354525,
--3867081, 3699041, -6036577, -4905927, 566936, 5310727, 2942590, -3109020, -1569274, -920197,
--2021856, 3228742, -7277822, 6817724, 40265, 8466991, -11872363, 895501, -10685342, -3344169,
--3356517, 2985539, -1053341, -2400887, 2433636, 938987, 2971581, 4696010, 7699803, -898185,
--6055367, 1364726, 10350871, 2145336, -2903398, -706522, 6410776, -3297461, 3930432, -3184182,
--10909754, 6394670, 6805376, 6288906, -5353677, -8100845, -5799817, 6950331, -665720, -1009854,
-4962835, 1852742, 1283122, 886911, -267362, 1947231, 2624762, -803696, -1313186, 1482838,
-230318, -435402, 943819, -1330903, 478352, 2265059, -839129, 2376728, -898722, -1682554,
-901943, -5369, 92879, 1225676, 986232, 1243930, 1022739, 906238, 17180, 1202054,
--16406238, 251792, -3659312, 1482301, -9201431, 1095217, 1486596, 12137578, -9760850, 99321,
--13084618, 2951716, -7919383, -1945083, 448287, -4296041, 3741990, 1650878, -6868727, 107374,
--138513, 6301791, -4166655, 10163503, -159988, -8841190, -4541928, 10819023, -1081258, 4322348,
-2844342, -1803349, 6438693, -7183870, -6826314, -5292474, 699543, -6879464, 7257421, -4033511,
-4639639, -6660421, -121870, -8089571, 5263483, 701153, 6313065, 5671505, -5428302, 10673531,
-9063455, 8592619, 1654636, 9023726, 7374459, -7669738, 6529961, 3136400, 557809, -7119445,
-3229816, -6059125, 5953362, -2607045, -4827007, -584652, 8905615, 3184718, -10364830, 9829033,
--864899, -3479461, -5947993, 10013179, 8607651, -7466264, 7332046, -535260, -8957154, 110059,
--5116917, -2775086, 4833986, -4287451, 3432753, -356482, 1484448, -2051384, 2597382, -363998,
--340376, -589484, -1053341, 949725, 447213, -2484102, 817654, 1248225, -75162, 933082,
-1013075, -2329483, 428423, -271120, -28991, -1961726, 621160, -797253, -1273995, -2612951,
-2937758, 642635, -1514513, -392990, 23383412, 3978214, -927713, -8056822, -15139760, 3870839,
--2225330, -22225382, 19507742, -9444096, -14101988, 2985539, -894964, 2632278, -904628, 3784940,
-5630702, 78920, -351650, -11356430, -936303, -1073742, 13403519, -2442226, 356482, 4934918,
--2341831, -1644973, -5441724, 11443403, -8572755, 8269960, -2029909, -6849399, 1293322, -7657927,
--3884798, -12439836, 2203318, 5718212, -3353833, -6204081, -4902705, 7527467, -11652783, -2753611,
--5740224, -157840, -1659468, 1524177, -10106595, 9863929, -13803488, -9443022, 3762391, 1673964,
--509491, 3696356, -7151658, -10306311, 1293859, -2798171, -456340, 5069135, -6148246, 4596152,
-3211562, 11382200, -3134789, 1639604, -858457, 171799, 15791521, 1329829, 15635828, -3762391,
--5845451, 1788317, -8012799, -707596, 8002061, 651224, -9323837, -8171176, 2316598, -859530,
-59056, 8026757, 648003, -1496796, 3354906, -446140, -297963, -3733937, 1413581, 1765232,
--1854889, -39192, -897111, 3108483, -1371168, -613643, 1620276, 425739, 996969, -279173,
-1805497, -568009, 42950, 961536, -1926830, 2454037, -1508607, 920197, 2086280, 1133871,
-1974611, 551366, -17235704, -2330020, -3570729, -13998372, -24041080, 7305740, 12361990, -8863739,
--4301947, 6955163, -2662880, 14843944, -1739999, -8057896, -4828617, -22413824, 7474854, 2438468,
--2108292, -15768436, 3636764, -8806830, -2370285, -7741142, -3990025, 11066520, -10767483, 4531728,
--15909096, 10062035, 1954747, 120796, -4636417, 1116155, -2134062, -8937290, -16744467, 3156264,
--34360, 3491272, 6931541, -4133906, -1398012, -10810970, -5579700, -2955474, 4484483, 2991445,
-7851737, 12548821, 9819369, 4999342, 7479149, 2208150, 7798587, 6984154, -6942815, 8012262,
-9091909, -1964411, 12196097, -1361505, 14319421, -6444062, -15495168, -2609193, 9799505, 10755672,
-12408697, -2491081, -21597780, -2251637, -1193464, 729608, -775778, -5386426, 3045132, -15810311,
-12196097, 7632694, 7378754, -8321499, -7821136, -1805497, 4510253, -646929, -8742406, -13422,
--4291746, -7165079, -2882997, -1262720, -3426847, 224949, -2902324, 1340030, -1825361, -1071594,
-2231236, 333397, 996432, -1222992, -3147137, -3543885, 2371896, -2847027, -134755, -1102196,
-1445257, -1220308, -741419, -1210107, 3580929, 1816234, 1069984, -1226213, 22947474, -5043366,
--5505075, 7654706, 12358232, -884763, 5754720, 14307073, 10340671, -23487028, -21575768, 176094,
--2068564, 3164854, -9640054, -17136382, 4075387, 13734769, 9082245, -9949829, 16167331, 13053479,
-12264279, -20591146, 5837398, 10791642, 563178, 1636919, 9199820, 21203180, -4090420, -9702331,
-6443525, 4800163, -2879776, 11455752, 17125646, 3187403, 17741436, 7741679, -13298829, 1490354,
-14714558, -1598265, -6026913, 7605314, 1240709, 2885144, 15444166, 9896678, 5262409, 1817308,
--17906256, -18267570, -1514513, 2878165, 4780299, -5648419, -782221, -4735739, 1615445, 2260227,
--6823630, 2572149, -4184372, -1083406, -5796059, 636192, 11418171, -6765111, -16462073, -2594697,
--13999446, 3064996, -4986457, -388158, -1865090, 6592775, -2459406, 4765803, -45097, 4082367,
-1959579, -1935957, -2216740, -2886755, -8109972, 2927557, 1079647, 2003065, 293132, -6322192,
-3182571, -4955319, -4113505, -1472637, -5288179, -1161252, -1712081, -2026151, -1646046, 3406446,
--1500017, 2254321, -187368, 1802813, 357019, 4407174, -1894081, 1153199, -3565897, -968515,
--3053185, -2877091, -554051, -2138894, 6885907, 2827699, 293132, -1020055, -929324, -38486128,
--24070608, -7408819, 6793565, -2524367, -9735080, 1536525, -9492951, 26647050, -11039677, 17029008,
-26298622, 14170171, 12864501, -10545755, 9198746, -5331128, -12465069, 10497974, 12298102, 8077760,
-17646946, -94489, -1123134, -8087961, -8268886, -7110319, -11313481, -11042361, -7630547, 3939022,
-1292248, -315680, -7196755, -4030827, -10987063, 4271345, -9520869, -8683887, -3999688, 4290673,
--275952, -5934571, -15901043, 1654636, -4867272, 5455146, -18716930, -14543296, 15982110, -2706366,
--3371013, -7734163, -4838281, 11921755, 3699578, -2752000, 6421513, -2056216, 6691022, 5266704,
-7668664, -5914170, -9576166, -23751170, 1387811, -23044110, -1796907, -19545322, -3034931, 18006650,
--2555506, 2985539, -13273596, -5889474, -6972343, 1206886, -8616778, -5119064, 7967165, 9954660,
--1315871, -1299765, 904091, -4925254, 1473174, -795106, -4834523, -2142652, -4175245, -1810866,
--2486786, -10850698, 1583769, -2048699, -1636919, 377420, -3157338, -3706020, -7543037, -1984812,
--4475356, -5311801, -1205275, -6618545, -3213173, 762357, -4236985, -4905390, 312459, -4150549,
-1027034, 1213328, 4295504, -3047816, 2924873, 1218697, -4416837, -1864553, -1258425, -2223183,
-573915, -1219234, -1464584, 26376468, 506269, -19113678, -16217260, 16549046, 12962211, -12232604,
--11835856, 22194780, 14081587, 818191, -13196287, 1597191, -5565741, 10533407, -8203388, 1262184,
--3494493, -2410551, 22914188, -3230352, -6284611, 4273493, 3867618, 6880538, 7049652, 800475,
--9097814, 6878927, 3426310, 7880728, 17704928, 8152922, -25602836, -7287486, -4215511, -19535658,
-7524246, -3367791, 347355, -10874320, 9162239, -4206384, 1706176, -14147622, 9559523, -11517492,
-889058, 11419244, -1890323, 12045773, -9441949, 15015743, -19268834, 9630390, 148713, -6879464,
-25049860, 6739878, -5296232, -14939507, 6442988, -3037616, 1990717, -2233920, 9112847, 13749801,
-18388366, -11644193, 8221105, -4589173, 16435766, 6100464, 2277407, -1475321, 9818295, 1813013,
--6649683, 8091182, -5805722, -9621264, -4279935, -13101261, 78920, -14682346, -1345399, -9878962,
-11258720, -3552475, 7202124, -7898982, 199716, -4401268, 6788196, -2137283, -763430, -4357245,
-2222109, -3255585, -5434744, -3017215, 2195265, -5087389, 3009698, -4020090, 1801739, -2584497,
--2674691, -2581812, -5790690, -3250217, 21475, -4085588, -3883187, 5291937, 4421132, 2523830,
--2758443, -6609955, -835371, 2953864, -369367, -5115306, -3213709, -38540888, -25012816, 20515986,
--15315853, -14379551, 7802882, 17943836, -29964914, -5097053, 6955700, 1779190, -15715285, -23472534,
-43664248, -19029926, 5804112, -21616570, 11690901, -7620346, 20338818, 18064096, 1692754, 3089692,
--24480776, -167504, 11360725, -9995463, -14654965, 11400454, 3120831, 12303471, 9739912, -2196876,
-4005594, -2867965, -1693291, 18210124, -15734076, -9291088, 14567992, -726386, -11912092, 15448460,
--612570, -3543885, -10662256, -4765266, 5608154, -8337069, -1076426, 5366025, -10580115, -10813654,
--7099581, 7783018, -22801444, 10718091, -1174137, 21451214, -20393042, 6636798, -15541339, 5589363,
--9385040, -11894375, 19305342, -10838350, -4867809, -10551661, 8269960, -12054899, 6941741, -4159676,
-14083735, 14490683, -1963874, -22817550, 8948564, 9371619, -1222992, -808528, -13109851, -9055939,
--2288144, -11267310, -9126269, -3246459, -400506, -5645735, -7526930, 8380555, 2703682, -5354214,
--4549444, -5467494, -5839545, 6080600, 2138357, 1414118, -8710194, -3342558, 7244536, -4354560,
--5397164, 3398393, -3902515, -31675, 2554432, 4243965, -1890859, -7151121, 1285806, 4185446,
--9615895, 172872, 2326799, 183610, -5131412, -2893197, 110595, -2289218, 19300510, 9376987,
--21734146, 7406134, 23381266, -2067490, 53150, 10783589, -6993281, 16386374, 14837501, -19625316,
--12028056, -3627637, 10362145, 18709952, 3327526, 9934796, 21134998, 15800648, -22224308, -2405182,
-35322348, 8701604, -2347200, -4191888, -6640020, -10397042, 3121368, 8630737, 9652402, 8951249,
--6307697, -15108621, 4065187, -7870528, 8294656, 24350854, -6469832, -24510304, 29314762, -8864812,
--16129750, 23703924, -4266513, -7113003, -25393994, -4611185, 10520522, 4970888, -5504001, -10769094,
-9833864, 1000191, -11754789, 10045929, -2343442, 23115514, -17029008, 2365990, -3310883, 26485990,
-9063992, -37758668, 11841225, -15813533, -6593849, -13538811, 16331613, 53905060, 19736986, 3069291,
-12510166, 15643345, -19879794, -8512625, -5577552, -11435350, -6851010, -12651900, 11901891, -27792196,
--7322919, 2423972, 3339337, -9168681, 1751810, 4799626, -2685965, -3609920, 9456981, 1638530,
-6323803, 5135707, -5655398, 1508070, 4691715, 1673964, 3929895, -2953864, 2424509, -5496485,
-751082, -1747515, -5120138, -2837363, -1134945, 8325257, 503048, 2065342, 380641, -1888712,
--1699733, 574452, -718870, -7971996, -912144, 1124208, -1824824, -6185827, -14047227, -5267778,
--4234838, 8135742, -1405528, 1656247, -8164196, -28502476, -12089796, 2018098, -11533061, -35893040,
-31244814, -5929203, 14119168, 2712809, -16419123, -28308130, -27266064, 30709554, 18735722, 7088844,
--10741713, -20450486, -15293305, -24295020, -6189048, 9131100, -3719979, 2039036, 3954054, -3947612,
--12544526, -12080132, -20627654, -7380365, -3905736, 10223096, 7175280, 11234024, -5477157, -9221832,
--3809099, 14668387, 2157147, 12990665, -43198244, -10154913, 20401, 9536438, -13727789, -569083,
--15900506, 12560095, 11107859, 2143189, 53539452, 881005, 16790638, 22028888, 1040993, 7135015,
-421981, -3819300, -6339909, 11113228, 16364899, 21309480, -385473, -3995393, 1556389, 14005888,
-12802224, 474594, 10397579, 8917963, 7030862, -2829847, 21021718, -6019934, 26948772, -26526254,
--13171591, -32630478, -10068477, 5849209, 885300, -8450348, 1845225, -105227, 14715095, -2959769,
-17610976, -8012262, -6409165, -8804683, 4618701, 9844065, -1507534, -4782983, -5222680, 6076305,
-178241, 20422570, -3149822, -1402307, 3750043, 5733245, 8504035, -7062000, -544924, 2737505,
-4240744, -9748502, 3474629, 3718368, 12606803, -12393128, 7130183, 4726075, -5197448, 10629507,
--5913096, -7282654, 126702, -2469606, 5529771, 2728915, -4289062, -129386, 4558571, 1042603,
-10994579, -508954, 7219303, 20288888, -3740917, 894427, 5343476, -27765890, 1164473, 3984656,
-17478370, 26663156, -22691386, 5027259, -14305462, 19005768, 17230872, 2182917, 33079838, 10320806,
-13174812, -12054899, -1937030, -21111374, 33051384, -19203872, 5166846, 20225538, -4809827, -13001403,
-10215580, -2968896, 5170067, 21714280, 566399, -6876780, -1996086, 4077535, -681826, -12872554,
-9543954, -1223529, -3650185, 37071472, -28477780, 26824218, 17317308, 33472828, 13639742, -23648090,
-18315888, 381178, 17020956, 44077640, -31778464, -13159243, -4082903, 867583, 29968672, -17762910,
-1568200, -19075560, 1508070, 33793340, -3796214, 35068944, 9891847, 6008123, 15949361, -21402896,
--3532611, 15426449, 21829708, -35435092, -1252520, -30359514, 13618804, -15781320, -511101, 7198365,
-9905805, 766115, -10792179, -8594766, -33196876, -3765613, -23580444, 19147502, 1669132, -1481764,
-14913200, 846109, -63888, 14323716, 10697153, 7207492, 188979, -4815195, 6764574, -11207717,
--825707, -7685844, 7706782, 8016557, -6766184, -1296006, -14398341, 6399502, -883153, -5906,
--382252, -13981192, -16849694, -5572183, 5465346, 12794708, 6514392, 5777268, -2026688, 10717554,
-7461432, -466004, -5444408, 9324911, -13269301, -3727495, 2774549, 15030238, 12429098, 2695092,
--6045704, -21467320, 6030134, -37565396, -33108292, 478352, 446677, -21028696, 17053168, 4930623,
--5751498, -19514720, 26515518, -6195491, 39475044, -5781563, 8469676, 14241038, -19276350, -6434935,
-5971615, -22937810, -12964359, -20062330, 17151952, -16077136, -4436165, -5293011, 14833206, -13558138,
--22949084, -31917512, -1027034, 26502096, 1485522, -14647986, -6337761, -18539764, -6320581, 130997,
-10939819, -20877836, -2460480, -4571456, -15000173, -20520280, 842350, 3397856, 13112535, 4515085,
-22630182, 6288906, 28592134, -12017855, 23579370, -6078453, -18678276, -4861903, 38435664, -16695075,
-17430052, -12246026, 28155658, -15004468, 9393630, 17940616, -1235340, -7435662, 3263102, -10271414,
-25581898, -23622320, -9064528, 25680684, -3337190, -21466246, 838592, 19628000, 10744934, 19630148,
--20017232, -16879222, -10894185, -2187749, 19190988, 23415088, -41653668, 2185065, 11819213, -22767622,
-3569655, 14368813, 11001559, 10540923, 10108206, 6882685, -3366181, 758062, 7698729, 8828305,
-6999186, 17719424, -5574331, 9317932, 3740917, 19183472, 11220065, -14803142, -18919868, 5966247,
-19949586, -5731634, -5784247, -12831215, -22084722, 2528662, -18879602, -5858336, 4066260, -12420509,
-11385958, 3331284, -4096325, -10253698, -2190433, -10628433, -1084479, 5924908, 2574833, 1688459,
--2081449, -2590402, -35620848, 39280696, -12983686, 33457258, -6896644, 26889180, 2330557, -8318815,
--18257906, -12894566, -2340757, 475131, 19789598, -7430294, -1428614, 5725729, -17840758, 29032368,
-10914049, 1156420, -23735064, 16428250, 8712341, -18937048, 18709414, 1702955, -2807298, 4774393,
--455267, 24523726, -5472325, -30645128, 33333778, -17041894, -2565169, 24765856, -10763725, -5317170,
--14618458, 39043400, -17326434, -4738960, -24235426, -4660040, 3113315, 34907348, -16173236, 6628745,
-11236171, 20784420, -5304822, -22025130, 24221468, 14680735, 19692426, -9470940, -4536023, 2537252,
-21805548, -11940009, -25251724, -28278602, 15249281, -19785304, 5236102, 21255794, 19821274, -13780403,
--4585415, 28585692, -45318884, -1013075, 6440304, 15794742, -1942936, -16536698, -3148211, 26074746,
--4884989, 53473952, 21068426, -15213848, -1893007, 1639067, -6262599, -19276886, -23523000, -17283486,
-15029164, -11167989, -4427575, -387084, 23471460, 10162429, -7892540, 10348724, 7699266, -251792,
-3610457, 4393752, -98784, 3301756, 24041616, 19718194, 19174344, 13010530, 2014340, -11673721,
-6528887, -9105331, 11631845, -14042932, 15538118, 22483616, 7650948, 28461138, 30813170, 12497281,
--83215, 16146393, 5735392, -2852932, -9540196, 16782584, -4138201, -13283260, 36507, 8174397,
--3604551, 7126962, 13357348, 5070209, 13629005, -7598334, -8668318, -50306416, 17134236, 9794673,
-44865764, 39315056, -5813238, -14511621, -46227268, 1362578, 15483894, -19785840, 15124727, 27080306,
-26346940, -12196097, 31715650, 28351616, 1377611, -17090748, -18301392, 28950764, 24777666, -35150012,
--47914120, 63750200, 3352222, -4493073, 8418673, 4743792, 23700704, 23528904, -9392020, -8018167,
-33272038, 15820512, -5873905, -22048214, 13464722, 2690797, 1870995, 11864847, 1745367, -1000191,
--13164612, 7479686, -3874061, -16199006, 29921964, -47421272, 33208150, 27514634, -44844828, -3081102,
-23029614, 5834176, 26262114, -6077379, 3791383, 24004572, -3040300, 12284680, -22048214, -35057132,
-98967856, -40377524, -56731148, -12375411, 110207248, 47591460, -46802260, -10560251, 19564112, 13507672,
--880468, -28275918, 41514080, 23228256, 17487496, 4156992, -55755116, -9101573, 9218074, 16712791,
--22827752, -37888056, 3473018, 12084427, 5371394, -17835926, -18847928, 9214315, 5225365, 13851270,
--2431488, -4522601, -1261647, 14798847, 18803904, 13007308, -28016072, -10773925, 19967840, 14746770,
--14059575, 174483, 16301548, 28875066, 11346230, -15042049, -20422570, -26714696, 12780212, -8458938,
-11893301, -22555020, 12861280, 6749004, 14475650, -10247255, -5377299, -18067854, -7636989, 18134426,
-3400540, -14775761, 8361228, 27331562, 7212861, -19659676, -12409234, 24756192, 42871828, 2995203,
-71201432, -31570694, -12141873, 41319732, 2040110, -2325725, -21248276, -42415488, 35262220, -22085796,
--24075440, 18336290, -26725434, 13303661, -25341918, -28023588, -4735739, 6200859, 3971771, -6553047,
-33728916, 8519068, 20564304, 9947144, 568546, 597000, -15248208, -32318556, 10351945, 32382442,
--26396332, 22640920, -26908506, -2718714, -1489817, -41523208, 29603062, -14335527, 11518565, 902480,
--12261595, 798864, -30110406, 31000000, -21806622, 10421738, -35053912, -21196200, -45974940, 17457968,
--21508660, -24063628, -19560892, -9943923, -6442, 49008260, 17459042, 24288040, -6731288, -22766012,
--28984050, 7755637, 1727651, -49741088, -23255100, -87550760, -41318660, -33790656, -5150203, -40284108,
--33332168, -7212324, 32013612, 36683316, -29827474, -37512780, -43337292, 21898428, 51662016, 2755222,
-41530724, 1182727, 25049324, 10207527, 2958159, 12242804, 4376035, -874026, -15106474, 21613886,
-17666812, 9679246, -18035642, -6978785, -2494839, 9337259, 9572945, -3431142, 10396505, -4495220,
--12168179, -20904142, 2503966, 29417304, 10426570, -3328063, 8132521, -9306120, 15562814, -5602248,
-20378546, 20016696, 2207076, -21248276, 3408594, 4915590, 23106388, 5813238, 26278758, -17548700,
--11048266, 24528022, 25120190, 6900402, -6764037, -4466229, -25179246, -11764452, -50134616, 11805254,
-17702782, -43410844, 24063628, 4795331, -12596065, 2597382, -12275553, -1213865, 9343164, 12673375,
-22216256, -26148834, 2545842, 30151744, -3350611, -14374182, 27116812, -11917997, 1899449, -16057809,
--6517613, -32063542, 8358543, 772557, 18115098, -12654047, 1343788, 22523346, -10662256, 360240,
-23241678, -45625976, 2967823, -52231096, -16616692, -34992708, 27935542, 9876277, -2049773, 11718281,
--10249939, 12784507, 35503272, 9547175, 55122684, -30719216, -35241280, 32469952, 8840116, -23834384,
--22372484, -9139154, 20354924, -19569482, -755377, -16925930, -21849572, 12815646, 16042777, -32583232,
--18941342, 27992450, -497679, 9874130, -6071473, 15333570, 6810745, 28254980, -16468515, -12236899,
-7166153, 6500433, -8178155, -29564408, -21609592, -23396298, 31272730, -14561013, -24217174, 6996502,
--6341519, -8003672, -15967615, 5992553, 7150584, -2684892, -4756140, -8715562, -14717242, -2608656,
--3345243, -10763188, 383863, -5291937, -10102300, 6082748, -5966247, 5592585, -5887327, -5034776,
-14760192, -5903433, 6971269, 5122822, -14078903, 6228777, 1852205, -5740761, -17071958, 23145042,
-15234786, -6635188, 3587372, -11468100, -8685498, 7009924, -214748, -14718316, 5117991, -5937256,
-13294534, -3635153, -2484639, 2485712, 6191196, -33851860, -68504192, -34213172, -13007308, 30036316,
-39127688, -74772696, 12953084, -29657822, -40523016, -8258149, 46896748, 30023968, 25588342, -16072841,
--18017388, -21510270, 23667954, 16750372, 36499704, 4838818, -47347720, -18477486, 35639100, -5387500,
-10470593, 31981400, -15229417, -22000434, -34635152, -34616364, 231928, 22705882, 48842904, 36250060,
-23983098, 9909026, -49948860, -53127136, 18613852, -36623188, 8674760, 46992312, 18653042, 3280281,
--23665270, -42347304, -7279433, -18189724, 14239964, 11194832, 7951595, 29502130, -4596689, -5580237,
-7710003, 21444234, 34571804, 35949412, 12127377, 32028108, 10702522, 11580306, -7057705, -35624068,
--14074608, -15381888, -29353954, 22191560, 20575578, 15462419, 15206332, -6679748, -35243964, 5959804,
-10451266, -421444, 23356570, 15203647, 12209518, -2647311, 1538135, 3587908, 24042690, 24437828,
-18371186, 5499706, -4532801, -17683454, -3388729, 10548440, 2938295, -5121212, -187368, -14012868,
--6693707, -8040179, -9415642, 7505992, 26239028, 13105556, -4933844, -2494302, -19814832, -1868848,
-6781754, 13467407, 14651207, -4493073, -6431177, -30515206, -17859548, -4274030, 81068, 12499965,
-10123238, -5875516, -7536057, 5142687, 1808718, 3350075, 7405061, -8393440, -3212636, -1542430,
-4862977, 8346732, 624381, -2689723, -2457795, -12662100, 21192442, -60351268, -121411744, -62691492,
-11719892, 47356848, 115472344, 112976432, 47042240, 48051020, 34483756, 1840394, -57573500, -97520456,
--146939952, -43881680, -61496416, -10729902, 59907276, 106827112, 89801864, 79313552, 43687332, -1005559,
--28019830, -37553584, -8069707, -65017752, -51657720, -49057652, -32174674, -26396870, -12279311, -2324114,
-22341346, 52674552, 54220204, 53317188, 39007968, 50794432, 26911728, 29049548, -9542880, -2131915,
--24014236, -62963148, -91231008, -110187920, -53413824, -21487722, 17113298, -2839510, 11607149, 25624312,
-33469606, 71484360, 82386064, 109236048, 69641824, 7041599, 31807990, -16495896, -60360396, -52765820,
--105075304, -122541320, -91645472, -56626460, -24384140, -19188304, 44069584, 49824840, 138174464, 113186344,
-82778512, 81086296, 38805028, -4942971, -54932096, -79373144, -57985280, -69497400, -95481952, -45326400,
-2607582, -9320079, 2682744, 41748692, 58132384, 42999600, 22393422, 21742198, 37032280, 15838229,
--2781528, -4425427, -18204218, -3043521, -16246251, -42748884, -22641994, -31874026, -51835424, -9098888,
--9021042, 41435160, 37704980, 22743462, 40567576, 70300560, 50260244, -12310987, -8513699, -33862060,
--30198988, -70717176, -73410120, -35460860, -15011984, 6133750, 24862492, 29518236, 43898324, 50099184,
-48352740, 50866372, 12934294, -5132486, -27078696, -32990180, -43663712, -48249664, -48510580, -20837570,
-10845329, 14587320, 21026012, 22070764, 15260019, 16369194, 17044578, 5551782, 3984119, -5629629,
--6033892, 10413685, -6889128, -16646756, 1023276, 3924526, -2014340, -4838818, -6873022, 720481,
--1183800, -6866579, -1421634, 733903, 66035, -76773, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--4551055,
--7092602, -5158793, 2002529, -785442, -12138651, -6896107, -530428, 1733556, -3736085, 1276142,
--4507568, 877784, -3258270, 8514773, -6942278, -3049427, -3053722, 5424544, 3746285, 8668318,
-2287070, 1799054, -3967476, 4088272, 520228, 1105417, -485331, 3279745, 4500052, 331786,
-4485557, 4254702, -2073396, 2377265, -2534031, -2828236, 315680, -2312303, 1443109, -3624953,
--6555731, 1762010, 2340220, -1633161, 1823751, -3136937, 2951180, 4013647, -6924024, 1344862,
--382789, 2597918, 2226404, 356482, -6833830, -2056753, -3003256, 2258616, -80531, 679142,
--2193655, 1257889, -3505230, 160524, 3803731, 2419140, 257698, -1953136, 1259499, -5598490,
--3138011, -4115116, 744640, 697395, -348966, 5898064, 28991, 5140539, 75162, 537945,
-481573, -25233, -2788508, 2085207, -168577, 1028645, -596464, 660888, 978179, -384936,
--972810, -384936, -292058, -300648, -161598, -1502165, 258772, 1544041, 894427, 15032,
-175020, -423054, -678068, 653372, -14011257, -446140, 738198, 198105, 2298344, -4947803,
-3628711, 2035815, -2598455, -8352638, 5488432, 5628018, -1329292, 4682588, 3380139, -4632659,
-9192841, 1910187, -4166118, 4936528, 352187, 4612258, 674847, -8017094, 3040837, -1525787,
--2968359, -3118146, -2435783, 5237176, 4062502, 321049, 4250944, 1531693, -4023848, -4985920,
--456877, -1171989, 2139431, 1447404, -3917547, 926102, 2035815, 1917703, -3444564, -2894808,
--4562866, -1609002, -1139777, 906775, -1118839, 6113886, 2618856, -956167, -3104188, 1139777,
-2547453, 1312649, 6590628, -1107028, 3319473, -399432, -2168422, -4012573, 2823404, -914828,
--1857573, 3858491, -1193464, 1279363, -864362, -808528, -4449586, 969052, -1261647, 5223217,
-6473590, -3904125, -3962107, -2791729, 1089848, -2506114, -1275068, -1619740, -1610076, -1748052,
-1036698, 2405182, -156766, 616865, 719944, -259846, 77309, -1187022, -2645700, -4149475,
--9535901, -5700496, -2082522, 6831146, 867047, 1267552, 4173635, 1120987, 1788317, -9989557,
--9180493, -5848672, -1552094, -46171, 4205310, -3005403, 3285113, -1721745, -6181532, 1914482,
--925565, -4227859, -91805, 5904507, 8575439, 3889630, -3962644, 2299418, 250719, 6190122,
--52613, -4942971, -193274, -2888366, 6072010, 2658585, 2835215, 6163278, -1090385, 445066,
-8257612, 7231651, -295279, -38655, 546535, -463320, 2181307, 602369, -6055367, -8015483,
--2848100, -1021129, 5369, -2659122, -8946417, -952409, 2455111, -4866735, -2390686, -3171297,
--2724083, 942745, 1126355, 2942053, -6240588, -4983236, 4781373, -2034204, -1104880, 986769,
--388158, 3126199, -6010270, 2371896, 2204929, -2384244, -2301029, 2390149, -2635499, 3812320,
--1515587, 33286, -17180, -1505923, 740345, 2817499, 1552094, 317291, 1698123, 483184,
--796180, -1540283, -860067, -888521, 335007, 430034, -272194, -226560, 406411, -139050,
-12744779, -4890357, -3874597, -620086, 218506, -4765803, 42950, -3334505, 6130529, -1500017,
--7580618, -10558103, -2711198, -6993818, 9745818, 791348, 6915971, 5826123, -9241159, -520228,
-3879429, 2805688, 4912906, 914291, -594853, -838592, 2304787, -3063386, 3529390, 1948841,
--3295851, 2039036, 150324, 2381023, 5299453, -2861522, 2105608, -338766, 3027952, 2605435,
--1084479, 3591130, -1017370, 3123515, -2386928, 2848637, -7485055, -3182034, -2733210, 2105608,
-6473590, -4755066, -3142306, -1755031, 394600, -2173254, -2867965, -1519345, 2621541, 2123861,
-3744138, -1242319, 2134062, -2205466, -2324114, -217970, -1396401, 2590939, -34360, -3910568,
-2199560, -2283312, -3849365, -1429687, -2394444, 1693291, -2808909, -7623567, -1080184, -3295851,
--3248606, 1653562, -2103460, -4589173, -933619, 970663, -329102, 276489, -45097, -2881923,
-92342, 1521492, -1089848, -1204738, 306016, -58519, 550830, 489089, 1495722, 434865,
--1298154, 862215, -230318, -460635, -501974, -1290101, -1209570, -1315871, 2166274, 3345243,
--1291711, 5071283, -7919383, 3560528, -4727149, -5219459, 7687455, 2869038, -9036074, 957241,
-74088, 2743947, -6497212, -4154307, -550830, -5261872, -9604084, -9301289, -6129455, -9282498,
-4015258, -953483, 1431835, 5053029, -8144869, 5398237, -2286533, 2536178, 1682017, -813896,
-865973, -1163936, -1152125, -5306432, -3166465, 6971806, -2542084, -5767604, -5299453, -501437,
--2367601, 2183454, -5064304, -7861938, 1229434, 7337952, -1090385, 4453344, -2509335, 2433636,
--3910568, 2998961, 1246077, -5371931, 7939784, 1421634, -1642288, 1859721, 7303055, 6725382,
-3554086, -711354, -8097624, -1364189, -6746320, 1955284, -1464584, 1133871, 1193464, 1891396,
--6131066, -47245, -438087, 2973728, 6304475, -7865159, 1064615, -2302639, -7351374, -832150,
-2166811, -752693, -164283, -707059, 2437931, 475668, -2126009, -1466731, -1535451, -943282,
--2534568, 86973, -202400, 1425392, -3058554, -2155537, -227096, -411780, -373662, 139050,
--228707, 490700, -1106491, -1153199, -290447, -196495, -803696, -209380, -212064, 1362042,
-1277216, -26307, 37581, -1422708, -2296734, -823560, 121870, -9019968, -8642011, -5614059,
--9517648, -11278584, -10752451, 4555887, 4975720, -6916508, -1832340, -6261526, -10220948, 5471789,
--2683281, -8863739, 3040300, -602906, 444529, 901406, 3002182, 988916, -329102, 2284923,
-3056406, -5095979, -4911832, -1317481, -5987185, -421444, -6381785, -11015517, -892279, 6673843,
--7997229, -6112812, 4303021, -4205847, 477278, 1700270, -4135517, -3311420, -3512210, -11867532,
--5174362, 2554969, -3428995, -3929895, -7518877, 3345780, 6641093, -2411624, 10260677, -5698885,
--2729989, -43487, -2529199, -8702677, -658741, 1996623, -333934, -1830730, -7648263, -1250909,
-7433515, 3773666, 2157147, 3882651, 2724083, -1968706, 14258218, -4496294, -5608691, -5290863,
--6400038, 2525441, 8077223, 5552319, 569620, -1320703, -4160213, -1468342, -178241, -1925219,
-290447, -2582886, 941135, 5961952, 3799436, -2928094, -680752, -1060320, 2092723, -1234803,
-2282238, -2477123, -1311039, 372588, 413927, -615254, 734439, -1430224, 1483374, 61740,
-1154273, 1004486, 661425, -696322, -1212791, -295816, -1225139, 16069083, 10945724, -454193,
-9999758, -794032, 1500017, 1949378, -5402532, 9124121, 139586, 8055211, 7719667, -6165963,
-10014253, 196495, -7565585, -12503724, 11494943, 5595806, 11419781, -9497246, 6575058, 3586835,
--10469520, -10335302, -6110128, -2905546, 11002632, -10405095, 9283572, -856309, -1007707, 6704981,
-6312528, 8604967, 3175055, -4644471, 4207458, 8090108, -4860293, 8088497, 12259984, 5243618,
-7444789, 3123515, 2113124, 2123861, 327491, -6629282, 2474438, 714575, 499290, 5655398,
--3960497, 3390340, 3759707, -1588064, 10693395, -6228240, -3801583, -2373506, 9235790, -1638530,
-7627862, 3896609, 5156645, 4667556, 898722, -13000329, -2020782, -10412611, -5676336, 13630616,
-7090454, -6017786, -364535, -7428146, -6691559, -3441343, 11298985, 1058710, 3889630, 2258616,
--1768990, 2374043, 4045859, 7139310, -2007360, 4201552, 2980707, 2626373, -2439005, -1486059,
-1118839, -1195075, -61740, 1999307, 2610803, 1157494, 1126355, 3221762, 3076807, 1224603,
-85899, 1588601, -667331, 2749316, 4072703, 2018635, 106837, 4559108, -14037027, 8929237,
-8573292, 25295746, 1030255, 2224793, -1229434, -3426847, -1613834, 8580808, 7820062, 6820945,
-9852655, 4019553, 15538655, 4574140, -6112812, 1517734, 13545253, 5371394, 1400696, 2132988,
--6922414, -9966472, 6436546, -4935991, -9768366, -20712480, -305480, 8279623, -610959, 4893042,
--7161321, -3776887, -2663417, 1574642, -2254321, -6194954, -3016141, -16681116, -4342212, -14156212,
-1213865, -7453379, 5713917, -8115878, 3112241, -7802345, -2701535, -477815, 250182, 1221381,
-1597728, -10342281, 5019743, -1548873, 2307471, -5400385, 155693, 8276939, 3338800, 11435350,
-6409165, -3478924, -668404, -2347737, -1159641, -2673617, -3630858, -170725, 4697084, 3045132,
-3492882, 2251100, -16338592, 10799695, 10596221, -3953518, 6070937, 4757750, -8633958, 4180077,
-2595771, 569083, -1829656, 1530619, 5587216, -4883915, 3258807, -1356136, 287763, -350040,
-1235877, 3020436, -2492155, -1081795, 4149475, -2896956, 212601, 174483, 1576790, -1872606,
--3466576, 2173254, 140123, -1032940, -1034013, 582505, -121333, 2037962, 2298344, 2633352,
-38655, -2683281, 27225798, 9816148, -4545149, 13449153, -8829379, 9381282, 6239514, -12809740,
-2734821, -16114717, 331249, -5471789, -11348377, 6079526, 207232, 4655745, 6657736, 8266202,
-13254806, 5542656, -940598, -3410741, -9022653, -16240882, 5769215, 6383395, 1768453, -5658083,
-8786429, 1163936, 9283035, 5539434, -16952772, -6416145, 2285460, -12454868, 644782, -872415,
--2368138, 3696356, 2757369, -2915746, 12502650, -7196755, 497142, 7035694, -6160057, 4842039,
--2688650, -7552163, 5084705, -30602, -978179, 7233799, 4767414, 301721, -3737695, 14941654,
-668404, 8422968, 846645, -4604205, -5165772, -12453795, -4825396, 5261872, -327491, 4498442,
--1410897, -9689983, 3894462, 3266323, -14270029, 4203699, 7368554, -3757023, 7859254, 1906429,
--8096014, -8189966, 9370008, -127238, -18738406, 2412698, 2029909, 867583, -1895691, 1184337,
--2564632, 551366, 5610301, -1632088, 909459, 1495722, 1665911, -4634270, 1439351, -1598802,
-1315871, 3577171, 3702262, 2752000, 1295470, -3004867, 1423782, -174483, -264677, 1351841,
--3440269, 58519, 2385854, 3350075, -2141041, -1209570, -4031364, 825171, 4268661, -4068408,
-1723356, 1608465, -28284508, -9389872, 29560112, 8208220, 4720169, -4447976, -795643, -4541928,
-6029061, -9555228, 12922483, 7395934, 6058588, 6228777, -4577899, -445066, -533113, 4159676,
-8697309, -13085155, -7770133, -4177393, 9944460, 3595961, 5546414, 5975374, -1366873, -9379135,
-3074660, 738734, 18054968, 14216879, 3732864, 10798085, 586263, -5196374, 2233920, -1485522,
--2481417, 6963753, 8548059, 7048042, 17468168, 8449274, 6850473, 7683697, -7929047, -12971875,
--6092948, 5928129, -11074573, -5465883, 10755672, 11485279, 6288906, -5178120, 10147934, -3986267,
-1102196, 2443300, 5827197, -2972654, -6338298, 3643206, -5716602, -17891760, 773631, 5805185,
--9765682, 1290101, -1764158, -2515777, -1791538, -5779416, 14564234, -1505386, 8323647, -20871394,
--19872276, -16811038, -7678328, 1729798, 2040110, -531502, 1147293, -338766, -4441533, 2195265,
--4882304, -1420560, -2142652, 5111548, 805306, 1860258, -3922379, -706522, -3491809, -1248225,
-2765959, 4418448, 4722854, 4558034, -67109, -3022046, 2466922, 4017942, 2472291, 4000762,
-1389422, -361851, 1678795, 589484, 818191, -1179505, -2735357, 3234647, 3587372, -1167157,
--1034550, -777389, -604517, 14556181, 22890566, -33740188, -4788889, 1999307, -272730, -4055523,
--8426726, 9223442, -10812580, -17172352, -1762547, 16741783, -2416456, -9810242, 3093987, -13719736,
--7461969, 529892, 8780524, -14380624, 1578937, 15661598, 16069083, 402116, 5680094, 14035953,
--8051990, -12569759, -17564806, 1684701, -17508972, -3754338, 7349226, 6909529, -15495168, -14623290,
--8894877, 6272800, -4128537, -2746632, -4080756, 13936632, -20750060, -6083285, 3210488, -11199664,
--3872450, 19864, -13096966, 588411, 5364414, -731755, 17133162, -1180579, -6962142, 1436130,
--884226, -5652177, 3273839, 8419747, -7825431, 12015171, -5961952, -22426708, 1035624, -8766028,
--4815195, -643708, -2414309, -29580514, -4980015, 13529147, 11684995, 8164196, 17628156, 17952426,
--24338506, -2754685, 1552631, 5033165, -7082938, -12135967, -242129, 5468030, 6469295, 5516886,
-4306242, 2034741, 3471407, -6523519, 23622, 3852049, -2058363, -1536525, 711891, 1227287,
-3491809, -3912178, 703301, -1607928, 1631014, 2240362, -5201743, 704375, -541166, -3613678,
-1511292, -868657, 674310, 110595, -95563, -4560719, 2295660, 259846, 1195075, -3060701,
--2258079, -2051384, -1905892, -32273458, 8995272, -6016176, 10984916, -10339060, -122407, 16858284,
--5657546, 23958938, 5499706, 4604205, -10320806, 4519916, 11871290, -7338489, -1501091, 15489263,
-9979357, 11654931, 1637993, -17940616, 11387032, -11588896, -1093069, -6991670, 1763621, -8923331,
-5173825, -2336462, 5042292, 4798552, 8565775, 8684424, 9640591, -11453604, 2724620, 18262200,
-3893388, -3292629, -3671660, -9187472, -7406134, -49392, 671089, 3278671, 15371151, 1315334,
-8479339, 8210904, -580894, -3928285, -3741454, 13943611, -16296717, -3555159, -14421426, -11891691,
--3338263, 89657, -24196772, 6279779, -7606924, 14809047, -3069291, 635655, 10284836, 2093260,
-24845848, 20510616, 29595546, 11181947, 1257889, -3451006, -3000572, -5004174, -1451162, -5949604,
--16291885, 11024644, 13510357, 6424734, -2202781, 1493575, -11472395, -15628312, 7257421, 1912334,
-2164664, -5052492, -2145873, -5481452, -2945811, 4766877, 1597728, 6254010, -401579, 1357747,
--3587908, 4345433, -12921409, -3463354, -441845, -571768, -2419140, 2216203, 605590, 773094,
--878858, -3217468, -618475, -1381906, -849867, 3959960, 495532, 425202, -2641942, 787053,
-664646, -287763, -5752035, -4281546, -9451612, 12746926, -3721052, -2775623, 29734058, -6124624,
--6527814, 33059974, -460635, 18814642, 13888314, 1112933, 7797513, -4434017, 6117107, 5741298,
-3651796, 4660040, 15285252, -10528575, 18417894, -10136123, -301721, 3772592, -2476586, -13349295,
--11913166, -355945, -19345606, -6186901, -21134460, -1461363, -12550431, -9402757, -6867116, -6044093,
-3166465, -17012366, 19753628, 3094524, -12809740, -9577777, -597000, -2487323, -3127810, 5102958,
-2723546, 19407884, 2240899, -224949, -9905268, 1631014, 4034585, -732292, -10567230, -4588099,
-12194486, 13279502, -774705, -11288785, 4628364, -2226404, 17339320, 19293530, -7524246, -4997195,
--3553012, 2188286, -7400229, 7798050, -24005110, -2257542, 28399934, -25616796, -12612708, -5938329,
-1851668, 2265595, 3399467, -2319819, 7612830, -4541928, -1269700, 13821205, -2167348, 10016937,
--6771016, 10091026, -8825621, 6911676, 5641440, 13718662, -278636, -2320893, 5799817, 9030706,
-808528, -2162516, -1415192, 919123, -4902169, -1495186, 4625680, 6095633, 1921998, -1975685,
-5922223, -4624069, 4866198, 4063576, 4440460, 2444910, 163209, -7209640, 7250979, 4285841,
-3357054, 1592359, 3421478, 6343130, 1460826, -4976257, 2484102, -4055523, -3124052, 5250061,
--1276679, 4545149, 4926865, -1922535, -3582540, 2027225, -17297980, -9479530, -2705830, 13387413,
-16136729, 11059541, -10268193, -26353382, 45624364, 11477763, -28632400, -28727426, -4304094, 6956774,
-19432042, -24992952, -4412005, 4667019, -361314, -3594351, 26146150, 5610301, -15349139, 8195872,
-1079111, -733903, 13765370, -2511482, 7522635, -17040820, -5773510, 29944512, 11061151, 23613730,
-7451232, 21349208, 3731790, -7841537, 15009837, 13681081, 21442088, 10559714, -24218784, -9183177,
-5235565, 12517682, -9730248, 3692598, -9375914, -15658914, 1580011, -1810329, -9373229, 7284802,
-10142565, 8808978, 6431177, 6039261, -4622459, 16207059, -133681, -16102369, -11697880, 14576582,
-7896834, -25289842, 10991895, 4489852, 8124468, -22097606, -15111842, 14209362, 21943524, 12409234,
--4941360, -23630910, 5339718, -1045288, 20143396, -6728067, -27101780, 11356430, 15796890, -5990406,
-16441135, 13538811, 5572183, -10821707, 1409823, -142808, 3153043, 1186485, -745177, -5757941,
--2430952, -7226820, -760746, -1428077, 3764539, -4414690, -2660732, -1483374, -3321084, -2019172,
--1772211, -2018098, 8383240, 2524904, 85362, 8169028, -2044941, -7707856, -5192079, -4131222,
--3348464, 354335, -5637682, 2360085, 3400004, 2887292, 2132988, -7403450, -2896419, 6211597,
-5105643, -766652, 10897943, 21285322, 8205535, 22471268, 3767760, 10310069, 7679939, 37430640,
-50927036, 3984656, 10193568, -32407676, -10296647, 19607062, -16514149, 38554848, -7670275, 6080063,
-10386305, 22580790, 12524662, -5376226, -16356846, -19170586, -6326487, -3151432, -24041616, -11393474,
--9566503, 15428059, -8946954, 4595615, -15420006, 2055142, -6063957, -22496502, 23380192, 16217797,
-18821084, 8291435, -11482058, -11115912, -26188564, 483721, -23606750, -7170448, -2017024, 3112241,
-12071542, 9525701, -7672959, -5435818, 9996536, 22111028, 5924908, 8454106, 16123307, -20565378,
-14555107, -11681774, -10815265, -20764020, -9117679, 9495099, 8007967, 1323387, 24254754, -5315559,
--9028021, 3718368, 6327024, 33348274, -10996727, 13368623, 13144211, -32058172, 8590, 4005594,
--7093139, -4724464, 11054172, -6362457, 913754, 13583371, 6990596, -19729470, -23710366, -22867480,
--10735271, -8512088, 19040126, 16623134, -4589173, -7268159, 944893, 2110440, 12549894, -1419487,
--3965866, 7801808, -1464584, -1301375, -3326989, 5651103, 7721815, -4109210, 7391102, 6984691,
-7148436, 1262184, -3043521, 6319508, -4381941, 3786014, 8050380, 593779, 4800163, 6445136,
--10949482, -477815, 5327370, 5957657, 8024610, 944356, 7184407, 378494, 462783, -2469606,
-4125316, 6041409, 31903554, -7567196, 4663261, -14266808, -4087198, -19018652, 15111306, -27362700,
-1257352, -22033720, 4359929, 9433896, 3423626, -13188771, 45197016, -3176128, -6080600, 4103841,
--25724170, 1475858, -17381732, 597000, 4884452, -5211943, -592706, 10644003, -9445707, 405338,
-13678397, 1116692, 3460670, -22136262, 2818036, -1873143, -1380832, -5609228, -27460410, -15285789,
-6785512, 2242510, 12191802, -31822486, 3469260, -29617558, 15015743, -20201378, -32309428, 16357383,
-29788820, 5131412, 14652281, -22317724, 22095996, -5484137, 3298535, -13691282, 18403934, 7408282,
-19110456, 5994701, 23186918, -21012590, 4012036, 1152662, -3601867, -16663399, -13583371, -15663209,
-17768280, -4742718, 24148454, -15016816, -11518565, 2692945, 3216394, -13434658, 6971269, -7908646,
--31454730, 13810467, 20837034, 34586296, 12099460, 24527484, -14184666, 26307, -15992311, 26275000,
-8862665, -5061082, -10480794, 12460774, -8993125, -2555506, 1329292, -7960722, -13394929, -8953933,
--6352794, -5352066, -17838610, -7793218, -14870787, 11421392, -2843805, 6769406, 13340705, 3479997,
--10123238, -1021665, -10131291, -4399121, -15136538, -8413841, -16021839, -2863670, 26208428, 5284421,
--2025614, 5820218, 7844221, -15239618, -6995965, -958315, -2057826, -6371584, 6633040, -3070902,
--23232014, -2084133, -5367636, -52807160, 6482180, -16870094, 48863844, -9197672, -24679956, 9811316,
--1419487, -24587078, -4214974, 4092030, -14811732, 36892160, 5228586, 3539053, 16729971, -20747376,
--31947040, -19682224, 45009648, -3593814, -9596031, 29753922, 16756278, -14192183, -14139032, -7950522,
-35668628, 5004711, -8750459, -13963476, -6785512, -27888834, 18769008, -3249143, 7577396, 17940616,
--6395207, -28882582, -3590593, 37249176, -1654099, -9290014, 17893908, -8156680, 22217866, 14625974,
--1951526, -27523224, -14085882, -3773129, -25538950, -14948097, -14737643, 1998234, -3554622, 21510270,
--15018964, -5186710, -142271, 55300388, 19175956, -9516574, 11149735, 6524056, -3293166, 28085864,
-13615583, -10624675, 4365835, 22708566, 25617870, -15652471, -11206643, -37548216, -30183956, 17166984,
--11292543, 18532248, -534187, -22073984, 5375152, -1743220, 6983080, -14685567, -11233487, 20794622,
-5235029, 2762201, -2084670, -2424509, 13785771, -6620692, 7091528, -3528316, 8595303, 17470854,
-4625680, -12620761, 2064269, -4847945, 9501005, 7862475, 2589865, 11373610, 17666812, -6942815,
-14249091, -1379758, -18945100, -4895189, 592169, -10585484, 4250407, 13791140, -272194, -6979322,
-843424, -2579128, 17974438, 15420543, 1561758, 7299297, 9258339, 4843650, 12006044, -15411953,
--11476689, 5516349, 3095061, -3275450, -1370632, -2537252, -5765994, -5684926, -59680720, 20480014,
--12782896, 31747324, 32278290, -18722836, 15235860, -31965294, -47995724, 1163936, -33758980, 4429722,
--4236985, 26101054, -19398220, 18620830, 15971910, 26178900, -39882528, 4342749, -24414204, -22369800,
-2406792, -28876138, -18634252, 26196616, -7661685, 9943923, 30586610, -6075231, 10064182, -25218438,
-2889976, -27804544, 25761750, -23048942, -15311558, -17015050, 28738164, 23036058, -16511465, 31501438,
-20855824, -6666326, 31257162, -1743757, -33085744, -9141838, -3904662, -25776246, 5801427, -54536956,
-5468567, -13874355, -26179436, -21137144, 24375550, -14559939, 50542100, 37563248, -56511568, 25770,
--1478543, 2714419, 26121992, -44361644, -30942556, 30522186, -25433186, -31774704, -36597952, 2481954,
-75163536, 37371048, -34979288, -22007950, 3047816, 27374510, 10460930, -36557152, 5439039, -24414204,
--14358076, -1273458, -4403415, 1437203, 24127516, 5733245, 14307610, 9516574, -28135794, 7592429,
-12632036, -3942780, -10138807, 1521492, -24008868, 21409876, 7762080, 5880884, -31843424, 5352603,
-16428787, 4673998, -7521562, -5916855, 14122926, -23194434, -1495186, -17286706, -9580998, 22805740,
--24059334, -943819, 14344654, -12032888, 11247446, 13701483, 3558917, 2088428, 10030359, 3318399,
--12801150, 18737332, -14424648, -11258720, -6545530, -19704774, -6808597, -18464602, -17700098, 6441377,
-27705224, -31722628, 15244986, -52969832, -8336532, -20909512, -18252538, 27302570, -36308580, -56439092,
-32251984, 48736604, 11502996, -10035191, -45134200, 2535105, 17087528, 16998406, -7909183, -18435610,
-1834488, -4940823, -6259378, 5177046, -6991133, -15537044, -29681446, 3182571, -18014704, 3833258,
--16186658, -33934000, 20365662, 14726906, 25133074, 351114, 27217208, 14911053, 3783329, -9503152,
--14465987, -23549842, -16761110, -9807021, 6177774, 15297063, -10975789, -5750425, -38395396, 35163436,
-42000484, 22991496, -21893058, 22036404, -29772714, -1025423, 6485401, -64990908, 4981625, 5852967,
-30182346, -39003136, 49371184, 18953154, -35807680, -20685100, 14715632, -6731825, -26287348, -32471026,
--34639448, -47457240, 34333432, -15293842, 5234492, -72285376, -28754806, 3920768, 597000, 15973520,
--11619497, 2421288, 12075837, 12390981, -34459596, -8358007, 5414880, 18523120, 13640816, -3445101,
--13322452, -6110665, -2994666, 17259326, 2886755, -11596412, -1451162, -9121974, -3461207, 15923054,
-7415261, -8611409, 17419850, -17943836, -10317585, -13514115, 16853452, -7227356, 1965484, -8281771,
-7346542, -24772298, 3558917, 9674951, 3807489, -4734128, -10632192, -9602473, -12427488, 11839077,
-2647311, -4573067, -14209362, 14245870, 833224, 609885, 2107218, -25211994, -12131672, -16657494,
-2123861, -8650601, -5191005, -49203684, -6680285, 17721036, -23166516, -21619254, 20138564, 20377472,
-4060355, -19556596, -66505420, -9937481, 12884902, 7735773, 28697360, -818728, 16646219, -4524748,
--510027, -8558259, 1156957, 17374216, 1948305, 507880, 17000018, -4776004, -4195110, -22671522,
--2142652, -3841312, -2582349, 3624953, 13560285, 18371186, -3715684, -244276, 14548128, -3562139,
--28192702, -2196876, -25030532, 3368865, 3357591, -33028298, 23708756, -45410152, 10064182, 12132209,
--19828790, -1687922, 58486716, -16869020, 19724100, -12663711, 10427644, -44146896, 4700305, 25335476,
--710280, 21810380, -5173288, 1971390, -1444720, 27953794, -18219788, -22220014, 25097642, -23550380,
--28645822, -733366, -45744624, 30147986, 25373056, -9541807, 9797894, 3833795, -268435, -39352636,
--6406481, -3383361, 17177184, 6027987, -16414828, 15046881, -1100049, -20272782, -13440026, -12776991,
-2659122, 2247879, -2682744, -900869, 12474196, -12755516, -3506841, 8107825, -13079786, -7558069,
-10132365, -13937169, 927176, 11440182, 794569, -3838627, 5232344, -957241, 1236951, 9906342,
--3741990, -3670587, -7893076, 2964064, -4956929, -5311801, 4631586, 5192079, -11119670, 1296543,
--10375030, 9596031, -11818676, 6113349, -2147, -2654290, 1276142, -3134253, -1298154, -1010928,
--24344412, -73437496, -34567508, -11567958, 23879482, 53955528, -49584324, 10736881, -14407468, -50005232,
--7064148, 44777180, 12000139, 36872296, -31261994, 9196062, -10866267, 2102387, 21749178, 3611531,
-11792906, -7140383, -63677724, 18786724, 3073586, -27084600, 27679454, 21090974, -19274202, 19491098,
-2308545, -20795694, 6314676, -12878459, 39758512, 4809290, 16085189, 696322, -40853728, -32772212,
--11042898, -24304146, 26548266, 38097972, 39226472, 31512712, -10946798, 4332549, -32097902, -4915590,
--3239479, -13582297, -16917876, 2649458, 3092377, -44178572, -12920872, -17325362, -1216013, 19662898,
--21701932, -5098126, 7625715, -47245, 22699440, -25248502, -1024887, -28591598, -14975477, -21165062,
-11605002, 7471633, 22677428, -3177202, -2358474, -26966490, -8054138, -12869870, -3382287, 11218455,
-15530602, 31785442, -20477330, 5679021, -17743046, 6232535, 11955041, 3192235, -9766756, -4144644,
--3433290, -4148939, -1451162, 8264054, 8860518, -2688650, -1047435, -4440996, -6289443, 3919695,
-8818642, 2806224, 978716, 2199023, -7445326, -8864812, -8112657, 13202193, -383863, 9066139,
-7648263, -1492501, -10449119, -11423539, 1665374, 2910914, -8671539, -3003256, -7547868, 5342940,
--5470715, 1664300, 1581622, 5586679, -2953864, -3687230, 1423245, 1856500, 19069654, -30870078,
--121735480, -64207612, 13144211, 51173460, 114566640, 87520696, 49303540, 16576426, 25710212, -8192650,
--48204028, -93235152, -124003760, -31402116, -35947804, 1829656, 60381872, 86106576, 57753352, 77144592,
-17760226, 16320876, -9034464, -39085812, -44229572, -35800700, -38006704, -47027744, -37682432, -16148540,
--2424509, -619549, 30116310, 39039104, 74721696, 35265440, 11625403, 30636002, 47688632, 15158013,
-9101036, -38524248, -52668648, -86129664, -39782136, -45198088, -32673964, -19499688, -15266461, 6323266,
-10608032, 36142148, 74115568, 59569048, 65069828, 48119204, 59035400, 43867724, -35504348, -32614908,
--82030120, -63602560, -46495704, -104545944, -80806592, -49507552, 3929895, 63265944, 60369524, 71256728,
-89193584, 76190576, 41084584, 49425408, 1976222, -19454592, -52309480, -76060648, -76292576, -63052268,
--37826852, -8249022, 10888279, 18323942, 21182778, 35179540, 25507274, 41162968, 26134876, 10223633,
-6768869, -1685238, -4026532, -1090922, -28506772, -20043538, -3994320, -13382581, -34053720, -9693204,
--12197170, -12805445, -2317672, 25358560, 48223356, 39826156, 4258460, 39140036, 27724550, -5282810,
--32276680, -51323784, -47537772, -21697102, -23513336, -14889041, -8125005, 13423920, 29911762, 41248864,
-47119012, 33740728, 13318694, 14351096, -8957154, -25884694, -43292196, -39007428, -17136382, -1905892,
--12637404, -4318590, 12534325, 15674483, 16426102, 15391015, 4071092, 6305549, 10040023, -1909650,
--8971650, 105764, 3290482, -6816650, -7377143, -1222455, 3005940, 1996086, -4589173, -2531883,
-2313377, 876173, -3190087, -4255239, -1751810, 462246, -71941, -90194, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--1562831,
--2220498, -4257923, 2469606, 3956739, 7029788, 1888712, -4956393, -8808441, 1897302, -4122095,
-338229, 2747705, 1063004, 7102802, -5896990, -1464047, -811749, -481036, -5063767, 3098282,
-1307818, 635118, 125628, -2482491, -1908576, -1802813, -586800, 231928, 1180042, -1876901,
-2700998, 6356015, -213138, 2814814, -4527433, -2638721, -5416491, -2625836, 5734318, 258235,
--1180579, 1004486, 6084358, 639950, 3055869, -786516, -2866891, -913754, 3470334, -3006477,
-5450851, 3343632, 6147172, 3020436, 384936, -1902134, -4087198, -2280091, -3553549, -565862,
--2594697, 1005022, 222265, -1414118, 897111, -1218160, 2196876, -571231, -610959, 3089155,
--312996, -244276, 412317, -3033858, 1369021, -2226941, -3554622, -2069637, -1563905, 1522029,
--294205, -271657, -4030290, -695248, 1050656, 767725, -1600412, 125628, -1581622, 682900,
-1133335, 817118, 320512, -306016, -641561, 158914, -1242856, -701153, 278099, 157840,
-557272, 510027, 503048, 81604, -12274480, -2782065, 5031554, 879395, 6860674, 3657165,
--5651103, 1486059, -124554, 2244121, -2024540, -9427990, 5438503, 3328063, 6231998, 7785702,
-6707129, 2346126, 89657, -9606768, -991064, 4402342, -4378719, -3805341, -10026601, -680215,
--1678259, -1167157, -2552821, 1180579, -5985574, 2721936, -1050656, 2524904, 744640, -4031364,
-3104188, 2582886, 6953015, -817654, -5570573, -2885681, 3013993, 1203665, -1394254, 279710,
-2218888, 279710, -4070555, -47782, 856846, -442919, 257698, -2578591, -1126355, -3430605,
--704375, 4201552, 1505386, -1449552, 1799591, -558346, -216896, 628139, -4887136, -460635,
--242129, 2721936, 5292474, -1576790, -533113, -3425773, -2643016, 1338956, 6022618, -5341866,
--833224, 1355062, -288300, -1460826, -91805, -1424319, 1962263, 2044404, 1089848, 3332358,
--1589138, -1043677, -340376, 772020, -762894, 124017, 544387, 461709, -395137, -1422708,
-1050120, -1416802, 6787659, 2547453, 2294050, -2276333, 178778, 638340, 650688, -11654931,
--6302328, -528281, -2899103, -3607236, -178778, -3037079, -11860015, 7068980, 1626719, 3199751,
--1246614, 2434710, -3134253, 150324, 428423, 6111202, -2171106, -1287417, -1019518, -1032940,
--975494, -432718, 6624987, -1282585, -97174, -3772055, -209917, -1821066, 2153926, 1089311,
--6415071, 4976257, -6493454, -124017, 5696737, -815507, 213675, 434329, -130997, -3979287,
--2827699, 6539625, 3781719, -8104067, -4330938, 1282585, -4758287, -3452617, 3468723, -5832566,
-1133871, 1413044, 3335579, 6965363, 5339718, 3266860, 2495376, -4745402, -4947803, -4236449,
-1377074, 6061273, 2342905, -1039382, -2706903, 1987496, -2288144, -997506, 1411971, -2246805,
--3405909, -457951, 2730526, -494458, -2324651, 309775, 22549, 2660732, 1108102, 2457795,
-559956, -1126355, -1155346, -923955, -482647, -308701, 790274, 1546188, 1837172, 1932735,
-8908836, -2181307, -2276870, -2670396, 2512556, -2987687, 4356171, -8450348, -1082869, 6268505,
-3281892, -6355478, 4702453, 7719130, 7284802, 4645544, 890669, -289910, -4764730, -6144488,
-2605972, -591095, 6158446, -483721, 3682398, -3838627, -2554432, -2059974, 609349, 1961726,
--349503, -7503845, 1582159, 2598455, 1887101, 3234110, 1983738, -4072703, -10027138, -3229279,
-1467268, 1932735, 470836, -431107, 1901060, -4114579, -68719, -7471633, 3490198, -7708930,
--2034204, -3269544, -5073430, 3699578, 1634772, 1568200, -4430259, -2155000, -1305133, -4443144,
-418759, -378494, 2371896, -1905355, -3741454, -2856153, -8873939, 2816962, 1026497, 3809636,
-5618354, 7176354, 2799782, -2829310, -4228932, -1996623, 3898220, 3889093, -4407174, 4803921,
-202937, -3125126, 6926709, -1344325, 1561221, 1174674, 2031520, -124554, -1548873, 448824,
-2151779, 772557, -341987, 2331630, -1222455, -957241, -1693291, 799401, 209380, -865973,
-1274532, -1236951, -2230162, -935229, 1689533, -406948, -389231, 609349, 4460324, 4121021,
--706522, 2918430, -8606578, 1023813, -4108136, 462783, 1286880, -5402532, 1980517, 15855946,
-1736241, -1387811, -8915278, 12767327, -24159, 5370320, 638340, -252866, -6927782, 6745783,
-1731946, -3707094, 884226, 523986, -2763812, 2736431, 7099044, -2049773, 7548942, -2218888,
-3230889, -104690, 4978941, 4436165, 4958003, 69793, -2697776, 3897683, -2843268, 3434900,
--976031, 3462818, 3354370, 3227668, -416075, -972810, 1289564, -2773475, -4030290, -10290205,
-6735583, -6648073, 4661114, 610422, 1963337, -1187022, -12290049, -2646774, -3317325, -5972689,
-814970, 3740380, -7894150, -2483028, 3564286, 672162, 5585605, 9763534, -265214, -2624762,
--2330557, -10119480, 3109556, 1975148, -2264522, 546535, 4025458, 4142496, 1197222, 1067299,
-2914672, 350040, -445066, 4361540, 2563022, -2374580, 4449586, 3266323, 4368519, 1356673,
--741419, 329639, -281857, -278099, -1611150, 586800, -977105, 1029182, -1235340, 2052994,
-734976, 212601, 1691143, 166430, -507880, 493384, -360240, -128849, -574989, 2044941,
-1247151, 433792, 1451699, -439160, 2307471, 319975, 743566, -4495220, -5429913, -526670,
-2924873, -1739462, -2619393, -3958886, 1158567, 7198902, 3231963, 1131724, -16364362, -7515119,
--2277407, 3346317, -1949378, 5535139, 18685792, 5807333, -6853157, 1063004, -8108362, -2633889,
-5695127, -6465537, -1633161, 8329016, 2019708, -2090575, 1194001, 4708895, -2825015, 2281165,
-2487323, 2442763, -4626217, 2114735, -2159832, -2654290, -6839199, -2670933, -3993783, -7633768,
-3347927, 259309, -508954, 7699803, 5635534, 1971390, 6194954, 33823, -7825431, 6594386,
--737661, -5369783, -4223027, -7794829, 363462, 9380209, 650688, -4134980, 3997004, -6991670,
--4365298, 3613678, -5645198, -7529078, -3943317, -2375654, 4252555, -6652905, -2044941, -3098282,
-8559870, 1230508, -2957622, 4192425, -2558727, -3120294, 492848, 6770479, -1265405, 447213,
-3755949, 2144263, -8638253, -330712, 5280663, 2507187, 3080029, -704912, -1671816, 3877819,
--2308008, 668404, -1891396, 1105417, 1461900, 2004676, -4378183, 25770, 459025, 1103270,
-270046, 46708, 2051921, -384400, -389768, -1933809, 1508070, 5688148, 4107599, -10622528,
-10069014, -3799972, 923418, -4646081, 8622684, -1228898, -5819144, -18964428, -2535641, 9834401,
-2430952, -14785962, 6731825, -15032, -3033321, -4744865, -3847754, -1464584, -8798777, -1487669,
-7101192, 9250823, 11006927, 6681896, 10036265, -3294777, 7903814, 3809099, -15620259, -372052,
-4056597, 5541582, 2697240, -5386963, 299037, -1127429, 5502927, -9362492, -3373160, 6954089,
--2305324, 3908957, 2046015, -6237367, -6933688, -3578782, -10385231, -2956548, -3196530, 4257923,
-1535451, -6005438, -1389422, -12821014, -3242164, 5231807, -3757560, -12669080, -201327, 7192997,
--15381352, 4456029, 2544231, 4883378, -7300908, -3389803, -6940667, 534723, -2095407, -7849053,
--2080912, -1321239, 4702989, 2661806, 11475079, 728534, 103616, 1831267, -890669, -5824513,
-7245073, 2531883, -3012383, 6365679, 1132798, -3164854, 1026497, -199179, 3848291, 887448,
-735513, 2411624, -2090039, 87510, -2243047, -5369, -1794223, 1771674, -751082, 767725,
-2141578, 309238, -1410897, 2018635, 470299, 2148558, 543850, -620086, -11756399, 2643016,
-9449465, 12170864, 9075803, 9268539, 3591667, -6398965, 6498286, 11249056, -16604344, 8355322,
-8355859, -17791366, -4653060, 4393215, 19224810, -1480153, -1202054, -4559108, -5361730, 23778550,
-11800960, 3321620, 2991982, 12341052, -205085, -1859184, -4587025, 1858110, -10667625, -9633612,
--2182917, 3002719, 7170985, 3259880, 1643362, -3627637, 712428, -7832947, 3286187, -11616813,
-11416023, -1262720, -5655398, -6673843, -7607461, -11720966, 2050847, -11345693, -3796214, 7806640,
--1787780, -3879429, -3714610, -1808181, -9688909, -6739341, -4353486, -4130148, -2193655, 3580929,
-2018098, 600759, 542777, -8574902, 14802068, 8501888, 231928, -1079111, 19461570, -2335389,
--3332895, -4763119, -9824738, -2690260, 6522982, 6257231, -936303, 7612293, -15091441, 4479114,
--5741298, 1455994, 5843303, -2018635, -110059, 955093, 519691, 1874753, -2353642, 2824478,
-3645354, -3395172, 1426466, 1915019, 2385318, 6185827, -4622996, -417149, 676994, -108985,
-1468342, 692027, 1532230, 1953136, -1665911, 1256815, -505732, 155156, -3291019, -710817,
--759672, 2822331, 21895206, 7478612, 4633196, 10627360, -11993159, -7216619, 6861211, 7298223,
-16252156, 2352032, 4533338, -10940892, -624381, 5399848, -14341970, -4627828, 5768678, -4796405,
-199179, 3923990, 10632192, -3606162, 4166118, 2166274, 2353105, 9054328, 7910793, 9649718,
--7588671, -5098663, 10481331, -13291313, -4395899, -4418985, -877247, -3612604, -8473970, 8238821,
--285078, -9178882, 443455, -3631932, -9532680, -11912629, -6604586, -7152731, 14056354, -4502737,
--3569655, -8352638, -685047, -4266513, 2178085, 16538845, -3100967, -5449240, 2822867, -1013075,
-9560060, -11123965, 18775450, 3733937, -18065706, -13163538, 4763119, -12190728, 197569, -13050795,
-57445, 2753074, -1669132, 14033806, 17624936, -8413841, 2133525, -3488050, -13049721, -4904316,
--7110319, -8543764, -1964948, 6373732, -4435091, -10063645, 6633577, 401579, -5442798, -4625680,
-2180770, 3687766, -1627256, -1086627, -5126581, 241055, -4734665, -985695, -2376191, 3258270,
-3711926, 853088, -4702453, 461172, 292058, 2990371, -78383, -1203665, 241592, -5931887,
--659814, -3364570, -2371896, 414464, 1314797, -3139621, 2391760, -1846299, -1701344, 3955128,
--1613297, -3948149, -19105626, 7332583, 39757440, -6784975, -373662, -17289390, -7225209, 11864847,
--1632088, 22836878, 13751412, 12711493, 170725, 9828496, -18539764, 17027398, 8865886, 886911,
-2299418, -10713259, 4776541, -76236, 17358110, 9720585, 11595338, -4102768, 1207423, 3088082,
--11517492, -9278740, -4177930, 5383742, 20235202, -5504001, -6715182, -6778532, -3751117, 2700998,
--12724377, -3638374, -758599, -6775848, -13473312, -2784750, -17114908, -6175089, 10215043, -11882564,
--5135707, -2276870, 1058173, -19306952, -11593727, -2447595, -1927904, -3620121, 12328704, 5459441,
-915365, 7459285, 12699681, -7669738, -3103651, -10490994, 4924717, -8232379, 7197292, 8220568,
-9890773, 17854716, 5156108, -13290776, -2056753, 29866666, 9825275, 16830366, 8200167, 5172751,
--1023813, 2123861, -6919193, -8919036, 4196183, 3059091, -8812736, 2470143, 6386617, 5743982,
--8453569, 6815576, 2430952, 4937602, 5767068, 50466, 2860448, 4776541, 2075543, 5592048,
--406411, 1279900, -1582696, -3627100, 954557, 4894115, 870268, -2000381, 7901666, 5035849,
-4375498, 264677, -774168, -1177895, -38118, 359167, -1095217, 2815351, 2291902, 2237678,
-2526515, 1288490, -3952981, 20482162, 22446036, -22628036, 5566278, 16626892, 10053445, -6300717,
--12030203, -10408853, 23395224, 1930588, 8814884, 12274480, -6962679, 3473018, 5152887, -14294725,
--15183246, 12370043, 4222490, -22125524, -5087926, 28786482, 13820131, -47245, -16393890, 5395016,
-4340065, 17507360, 5806796, -8524436, 11476153, 2034204, -4796942, -1656784, -3440269, -13645111,
--6429566, 2096481, 2380486, -16290811, -17563196, -10406706, -5021354, -19348828, 11527692, -1207960,
--13717589, 2622078, 355945, -5962489, -1635309, 4154844, -79457, 4372814, 5107790, 7796977,
--7618735, -9081171, 12030740, 24324010, 11048803, 6640557, 17779018, -3332358, 9705015, 23640036,
-14495515, 2222109, 2678449, -7398618, -14433774, 14060649, -13747117, 6187974, -5482526, 4294968,
--18006650, 8648454, -195958, -5908802, -3364033, 10249403, -9689983, -4905927, -2480344, 1551557,
--197569, 3026878, -3820910, -497142, -6909529, -1770600, -369367, 1268089, -2045478, 2395518,
--2568927, 2076080, -2296197, 7858717, 2497524, -2031520, -3619584, 2969970, 367220, 2723546,
-2509335, -1887101, 2263985, 2890513, -1902134, 754841, 3616363, -1086090, 1305670, 3933116,
-4179540, 7190849, -4619774, -21237540, 5958731, -10239739, -4723927, -7915088, -1336809, 18177912,
-18002356, -36427764, 11266773, 11559368, -11320997, -18533320, -24167780, 4261145, -7105487, 4471598,
--8441221, -6635725, -3931506, 22546968, 5701032, -1965484, -398358, -3593814, -6751689, 5701569,
-3738769, -107374, 9032853, 1964411, -1921998, 3220689, 8195872, 23269596, 2325188, 2863133,
--11515344, -4924717, -5460514, -5791764, -722091, -1940252, 7690139, 11130408, 509491, 12859132,
--3007551, -2177549, -2656437, -1436130, -22578644, 25437480, 634045, 1799591, -1894618, -6616397,
-6729140, -1746978, 10304700, 582505, -9900973, 2670933, 10925860, -7792145, 10144713, 2470680,
--15581604, -2659122, -3352759, -28297392, -9687299, 7232725, 7284802, -11563663, -6673843, 6752763,
-914828, 18910204, -15093052, 6862821, 8418136, -1224603, 7358890, 6856379, 8344585, 3221762,
-3700114, 3383897, 2748779, -1259499, -1569274, -4884452, 1921461, 7067369, 1231582, -5185636,
--2045478, -2930242, 1647120, -2272038, -1951526, -3454228, 4546760, 2595771, 3090766, 333934,
--8266739, 3288871, -8402030, 641561, 1304596, 2952790, -4005057, -1916092, -1277216, 2709588,
-4974646, 2266132, 2074469, 703838, -5935108, 18496276, 5288716, 5660767, -13650480, 10079215,
--5499169, 9600326, -7650411, 12397423, -11404212, -9314173, 17064442, 2068564, 4316979, -10268730,
--22884660, -2255395, 6605123, 1700270, 9728101, -8225936, 1202054, -188979, -17103634, -12362526,
-5578089, -19327352, -12673375, 6054830, 19327, -20207822, -2939368, -10113574, 12764106, 7605314,
-2253784, -4781909, -12665859, -26879516, 9387188, -12093554, 14601815, -4519380, -4960687, -2578591,
--7169374, 3980361, 3778498, -21511344, -9512816, 20980378, 18373334, -19140522, 24677808, 1177895,
-18154826, -4468377, -4435628, -2399813, -7253663, 9363029, -7150047, -20081120, -10675141, 23631984,
--5382668, -4878009, -1395328, 7247758, 4641249, 11886322, -27341762, 7941932, 18496814, 14526116,
--6049999, -1635846, -5957120, -12453795, 1315334, 11226508, 17513266, -10913512, -11028402, -12498355,
--1345935, -2132451, 1065152, -6053220, 2988760, 2988224, -2189897, -980326, -2751464, -5523865,
-5184026, 2684, 702764, -8330089, -7020661, -1955821, -9075266, -3606699, -4604205, 889595,
--3292093, -102542, 6804839, -2916820, 2774012, -213138, -6558952, 1144609, -3364570, -960462,
-2663417, 5938866, 744103, 2417530, 5549635, 5504538, 7354058, -2499671, -2148558, -1488206,
-7541963, -1320703, -12496207, -835371, 12792023, 9925133, -9677098, -16480863, -13827647, -8127152,
--16022912, -903554, 7566122, 17563196, -3054259, -852551, -29430190, 17607756, 21932250, -3493956,
--11941620, -12138651, -7523172, 33014340, -20125144, -87510, -2384781, 8898635, -1490354, 38033548,
-918049, -20727512, -5461051, -19699942, 25679072, 22316114, -18035104, 20990578, 5256503, 16892644,
-6320581, -31787052, 9958419, 16971564, -22006338, -6129455, -24968792, -12502113, 863288, -23026394,
--19625316, -588411, -15899432, -252866, 5592048, -5723044, -15768972, 12918188, 11743514, -25999048,
--19842748, 10822781, 4585415, 6943352, 13172665, 17166984, -6320045, -9371619, -524523, -6087580,
--317291, -1966021, -8698383, 3421478, -36034240, 12246026, 17550310, -18632642, -15303505, 11588896,
--11712913, -10672457, -5049808, 6467147, 942208, 22331682, 199716, 13031468, -1255741, -9151502,
-4885526, 6709813, 7035157, -5918465, 188442, 686658, -784368, -3812857, -8885750, 5857799,
-9440338, -4849018, -15665893, 3968550, 1397475, 16616155, -1551020, -6540699, 5192616, 1823751,
-8373576, -37581, -5025649, 95563, 6843494, 5033702, 1749125, -1815697, 1341640, -3122978,
--2545842, -7843147, 3982509, 3717294, -5282273, 2560874, 2425583, 1410897, -836445, -2653753,
-753767, -7519951, 8381092, 20337208, 37970196, 59759100, 2063195, -23768886, -30681098, -6992744,
-1499481, -7121593, 29157460, 21923124, 15254650, 25366614, 18543522, 15028627, 1266479, 12157442,
--15193447, 22003118, 25425132, 1958505, 26441966, -10526965, 2421825, 6318434, -24135568, -16163573,
--5509906, -14272713, -16831976, -2288681, 27174794, -117575, -4904853, 3597035, 6034429, -3399467,
--36175972, -4751308, 9829570, -5136781, -10879689, 4744328, 14398341, 25280178, 6474127, 13005698,
-18020072, 22071300, -29844654, -20667382, 12162811, -8522289, 38661148, -3738769, 33287070, -26349624,
-16044387, 27125940, 1335198, 4621922, 16443819, -28827284, -13193603, 1015760, 16930762, 727997,
-19442244, 8013872, 7515656, 19743428, 7365332, -2321967, -7872675, -22759032, -4992900, 1600412,
-6447283, 727997, 846645, 779537, -12208981, 6797323, 4728759, 11143830, -3397856, 8448738,
-13726179, 8214662, 3736085, 222801, -1247151, 3088082, -4276177, 3006477, -4071092, 401579,
-3109020, 2991982, -3558381, 6274411, 6177237, 7576859, 1174674, 846645, 3414499, -2357937,
-5340255, -3454228, 5390184, 11813844, -1047435, -1954210, 1241246, 10305774, -5821292, 2626909,
--846109, -1230508, -1553704, 1638530, 3123515, 4779225, 3787088, 3706557, 9659381, -6299107,
-11395622, -5129265, 42939472, 14498736, 15281494, 31390842, -1972464, 6897181, 13842143, 20277614,
--21904334, -17510582, -7263327, -19236084, -3115462, -25950730, 13815299, 21271900, 15625628, 21127480,
--13714904, -7479686, 16402480, 12807592, -8479339, 21423296, 13003013, -4546223, -25515864, 14663555,
-16023449, -12823162, -1654099, 7851200, 4020626, -20513300, 24297166, 6730214, 26058640, 14382772,
-10387378, -13677323, 12308303, -7111929, 39556648, -30613990, 3672197, 12186433, -5597416, -19642496,
-13027710, 12847321, -2181844, 12647605, -11704323, 32368484, -14576045, 8788577, 7227893, -19983946,
--8562554, -27725088, 12195023, 8574902, -20635170, 19854024, 16924318, -14095546, 12203613, -1196685,
-32729798, 10979010, -16019154, -11551315, -11406359, 10598906, -6554657, 9092446, -3933653, 2292976,
-11092290, 7249368, 5634997, -10318659, 28132036, 3474629, -10645076, -15500537, 13679471, 7101729,
-12916040, -6893960, 3898220, 10506027, 21238614, 5753646, -3325379, 17945984, -4599373, -4691715,
--2355790, 2117419, 4861366, -10091563, -9088688, 4392141, -7849590, -4447439, 1092532, -3422015,
--1018444, -952946, -7724499, 5846524, 3202972, -14695231, 3688840, -10882910, -6979322, -3189013,
-5577015, 3361886, 10423349, 4958540, -295279, 3355443, 3830574, 4842039, 399432, 1655710,
-2379412, 9250823, -2899640, -38056632, 16586627, -32500554, 33107218, 39826156, -2399813, 6757594,
--32858648, -545998, -7544647, 3081639, 18680424, 19154480, -6010270, 9818295, 15489800, 2260227,
-6354404, 4311074, 6272263, -4359929, 22712860, -3440269, 4970888, -13042742, 25601764, 5367636,
--2657511, -1078037, 23030152, 8683887, 10761577, 25489558, -5940477, -16106664, 31367756, -33767568,
--14682346, -6030671, 7259569, 22003654, 4996658, -9332427, -9542344, -16407849, -485868, -3156801,
-6314676, 35414688, 34484292, 21799644, 31108984, -3034395, 46909096, -15891916, 13022878, -11333345,
-1043140, 14628122, -7299834, 1587527, -14162118, -18351858, 272730, -11579769, 9583146, -15677704,
-23200876, -17589502, -28144384, -11758547, -7228967, -2660195, 33847028, -20552492, -4713190, -2998961,
--21246130, -5471252, 12385612, 26507464, -2332704, -1259499, 1046361, -8825621, -18243410, 644782,
--771484, -2877628, -1869385, -91268, -10519986, 8404177, -8998493, 10405632, -4128001, -8139500,
--8789651, 2085744, 8396124, -5967320, -7515119, -2757906, 6977711, 7581691, -5483063, 3517578,
-4683125, 2652142, 4673998, -4465156, -3885335, 2067490, 533650, 4751308, -5869610, 4168266,
-7767449, -411243, -2430952, -4028679, 6822019, -13728863, -6347425, 13431436, -8063801, -1015223,
--2045478, 2553358, -8279087, 6023692, -2559801, 12380243, 10734734, 176631, -13336947, 58553288,
-81298896, 24929600, 63377612, -13875429, -44066900, -30888332, -21584358, 10690710, 11662447, -14696304,
--23663122, 20509006, 27597312, 16113107, 27533962, 21223044, 5252745, 8438000, 4169876, -1388885,
--18097918, 7980586, -21447992, 15110769, 150324, -20100446, 23296976, 14068702, 11150272, 40200356,
-24729348, -11551851, -7755101, -14499273, -17150878, -21036750, -8284455, 805306, -16613470, -5185100,
-34751656, 52674016, 38830800, 5285494, 26502632, 28233504, 43215424, 19757386, -22894860, -37628744,
--23444616, -24022826, 14200236, 11891691, -51395188, -35285840, -9073655, 21636434, 46774880, -35065724,
--1384590, -30440580, -3948686, 38196756, -21044802, 14368813, -30529164, -5019206, -9123584, 25743498,
--28618440, -16350940, 461709, 11341398, -23236846, 53303764, -12572443, -883153, 30324616, -13377749,
-22793392, -7324530, -18853832, -14697378, 8842801, 816044, 7533910, 4670240, -16842178, 399969,
--7130183, 20366734, 11926587, 3536906, 11125576, 12658342, 664109, -240518, -4095251, -12824235,
-25995290, -8143258, 5401995, 118648, -15161771, 512175, 1582696, -4867809, -10001368, -2263985,
--5910412, 1329292, 3786551, -4542465, 784368, 17635672, 12567611, -2412698, -2968359, 16693464,
--7168301, -2268280, -14341970, -20610474, -7820599, -5559835, -2439005, -5774047, -23241142, -44906032,
-5250061, 24711094, -20918638, 38393788, -15609522, 15161771, -5366562, -44740676, -23061826, -2325188,
--26461830, -60330868, -17121350, 21553756, 33135672, -16447040, -26016764, -53841172, -16222628, 15705622,
--10940355, -15701864, -26949846, 6198175, -6300717, -4654671, -5288179, 10722386, 21288006, -16905528,
-16389595, 14095546, -17246442, -49119932, 3716757, 3859565, 12359842, 5808407, 31768800, 3140158,
--49014168, 229244, -53951232, -335007, 18321256, 22379464, -4468377, 2897492, 24620364, -13113609,
--9816685, -16872780, 15818901, 11680164, -8051453, 19179176, -6331319, 8043937, 8623757, 31438624,
-3860102, -11231876, -34057480, -11663521, 17145510, 15138149, 26417270, 38963408, 67159864, 33571612,
-15878494, -17626546, -68166496, -18624052, -10163503, 51803212, -9092983, 3191698, -612033, -16391743,
-1830193, 15168751, 6853694, -388695, 332323, 254477, -324270, 25117506, -9503152, -7508140,
--8775692, 17424146, 6236293, 8812736, -7308424, -21445846, 6612102, 9066676, -10226854, -1437740,
-4984310, -1225139, 1184874, -3794604, -31321050, -10095321, -2971044, 14170171, 21678310, 2667712,
--18961744, -17963700, 7713762, 3036542, -2224793, -3001645, 479426, -1853815, -1456531, 16542067,
--18675054, 2378338, -16137803, 16565152, -9633075, 449361, -23008140, -3409667, 14515916, -4595615,
-7541426, -12758200, 3543348, -43776992, -13377749, 30306362, -15038291, -12641162, -3306051, -9893994,
--35098472, -39043936, -57045756, -18084496, 51003, -4508105, 37243272, 10164577, 48664664, 29956860,
-15035070, -6908455, -18053358, -3461744, 68274408, 4135517, 19645718, 10991358, -8622684, 33931852,
--14247480, 27365920, -30048128, -3096135, -21664352, 25744570, -36471788, -7789997, 11094974, 11355357,
-11656004, -31958852, 22622666, -36563056, 7369627, -17974976, -12261058, 36145372, 2113661, 2262374,
-12453795, -13888850, -839129, 9354976, -44255880, 1068910, 10176388, -6560026, 28469190, -12876849,
--5596343, 47800840, -18176838, -40007620, 83215, -15192373, 3209414, -3151432, -2114735, -32141388,
-17096118, -5347235, -43671764, 26142930, -54083840, 10362145, -12407624, -21548924, -34190624, -4547834,
-9238475, 15581068, 1387274, 12588012, 15761456, -18807662, 32934346, -7769059, 8797704, -588947,
-15715285, -867583, -1785096, -5506685, 9290014, -19840064, -2550137, 6287296, 4250944, -7809861,
--135828, -8725226, -11410654, 5709086, 4657355, 8506720, 5542656, -2650532, 6682432, 19424526,
--9703405, -10358924, 3403762, -1124208, 3821447, 14360760, -2092723, 7747584, 7386270, 7335804,
--9882720, -12000675, -2943663, -1126355, -12414066, -882616, -2474975, 5066988, -13559749, 3879429,
--18924700, -66735200, -68579352, -58546308, -29519310, 120998896, 37888056, -15138686, -15801185, -59913720,
--126835216, -14335527, 34027416, 42469712, 18218714, -19573240, -14664092, -37444060, -41227392, 30874372,
--29726006, 76229224, 57132192, -89101248, 28690918, 11587285, -18758806, 6805376, 63791540, 9029632,
-43967580, 87352656, -19175418, -71963248, 3234647, -12386686, -67085780, -18399104, 32200444, -3093987,
-39667244, 64164128, 5596343, -55910812, -109313896, -93885304, -83936544, -8967355, 81027776, 22978612,
-21504364, 12040404, -22231288, -109589312, -68625528, -35221416, -13508746, 6541235, 24562382, 23851028,
-30692910, 31455804, 39150776, -47317116, -17146584, -38776576, -3451006, -42396696, 26091926, 26068840,
-53616224, 59569584, 28363428, 746787, -16098611, -11184095, -73804720, -58764816, 51298552, 80371720,
-54670640, 64195804, -15650861, -28877750, -58440548, -33304788, 17036524, 8590, 3807489, 17969606,
-5898064, 4449049, -14299557, -18851686, -9447854, -14267344, 345745, 14082124, 3854196, 5390721,
--3413425, 8171712, -15578920, 10214506, -4769561, -14428943, -14212047, -4359392, -23524610, -7304129,
--14440217, 14703821, 16574816, 7981123, 6327024, -15337328, -31370978, -31025234, 8084202, -3015604,
-13921600, 12253005, 6466074, -22636626, -11580306, -21558052, -33183992, 9820980, 22939420, -8871255,
--121768232, -136324944, -92743376, -95395520, -25590488, 106556528, 71724880, 114979496, 128088272, 194632880,
-129216240, 133721656, 86231136, -6813429, -96453152, -166669424, -196809360, -170889776, -134812576, -97623000,
--23740432, -5173825, -14254996, 4721243, 42157252, 69490424, 96552472, 83866752, 114467320, 110504136,
-142940272, 130662032, 36607616, 87620552, -19233938, 23784456, 17546552, 4716948, -12320651, -127836480,
--153313696, -196057744, -229834976, -209082768, -116224496, -103421736, -85016728, -106574248, -123169464, -26641146,
-29941290, 76948632, 113022600, 163536784, 195575088, 250975872, 331434560, 321683392, 244395984, 198096784,
-164973456, 87024624, 138521280, -56552908, -113223392, -270952320, -310038112, -385605376, -370272896, -338864864,
--320932832, -310228704, -190948336, -118580824, -64470680, 172683984, 176159696, 269123200, 346027808, 299740928,
-270986144, 273855712, 215344288, 163902928, 90142776, 11492259, -1463510, -51218560, -61929132, -90070296,
--116286776, -160002560, -172614192, -157502896, -181144544, -140391200, -128580584, -121756952, -106627392, -55441584,
--10983305, 56186224, 116709296, 109102368, 170671264, 188196336, 208002048, 245097680, 198619696, 115471272,
-57822608, -35779224, -90550256, -91090888, -175111184, -162739536, -222120144, -177416512, -184124176, -118828320,
--123693448, -72920488, -9342091, 61786324, 93720480, 164700192, 192387696, 186087504, 181366800, 176068960,
-135773584, 47742320, -31244814, -45542760, -58606440, -65387656, -73498704, -87575992, -80851688, -60436096,
--64958696, -59369868, -51081120, -37298568, -16554415, -11860552, -8407935, 1801202, 10766409, 6766721,
-10054518, 25705916, 30918932, 27554362, 18340584, 12511240, 9405442, 9110163, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
-13406740,
-1573569, -5842766, 2067490, -3676492, 1025423, -2377801, -1482301, -3195456, 2348273, 4016868,
-1200443, 1285269, -7240241, 1482301, 179315, 2319282, 2834142, 1577327, 4240744, -833224,
--2290291, 493384, 5058398, 82678, -3781182, -334471, 4315369, 2367064, 513785, 93952,
-1254667, -56371, 381178, 877784, -79457, -1468342, -123480, 91268, 1730335, -2441689,
--5812702, 4386772, 4384088, 3836480, 3599720, -127238, 1990717, 3438658, -3501472, -744640,
--34897, -4678830, 1128503, 405874, 4346507, 503585, 2462627, 132070, 5450851, 2798171,
--730144, 3849365, 2350958, -1167694, -4343823, 1163936, 1209033, -1100585, 389768, -2437931,
--594853, 2316061, 1629940, 1935957, 4505958, -673236, -1341640, 672699, 2704219, 6169721,
--3528853, 1693828, 1710471, 1845225, -123480, -343061, 1946157, -985158, 111132, 962610,
--1089311, -130460, 233002, 388695, -690416, -1063541, 773094, -207769, 199716, -344671,
-1175747, -71404, 1387811, -246424, 11334419, -7558606, 2563022, 6385543, 1499481, 4504347,
-5449777, -4932770, 1046898, -439160, 2124935, -6256694, -4970351, -914291, 4881767, 6622303,
--2527052, -2173790, 3173444, -5350456, -7170985, -1309428, -8434779, 2905546, 2803540, 780610,
--5240397, -5318244, 1898912, -3088618, 722628, -140660, 5561983, 5887864, 5302137, -845035,
-3715147, -5791764, 2527588, -3408057, -316217, 325344, 4536023, -4881231, -4353486, 51003,
-5966247, 2478733, 2328409, -3597035, 2018098, 1497333, -1764158, -7442105, -1214939, -2512556,
--3283503, -2932926, 3414499, -3120831, -1021665, 796180, 2116882, 5376226, -2061584, -107374,
--4050154, -1938104, 828392, -5578626, -356482, 1550483, 3820374, -1194538, -2914135, -1444720,
--5841156, 2783676, 1698123, 362388, -487479, -5013838, 2061584, 442919, -1808718, 1859184,
--731218, 473520, 1656784, 193274, 331786, 1972464, 852014, 431107, 36507, 1588601,
-558883, -263067, 627065, 945430, -4001836, -7248831, -1810329, 1243393, -2238752, -3671123,
--2036888, -7226283, -4072166, 7630010, -311385, -3388729, 4042638, -6120329, -1406602, -7632694,
--1591285, -6016176, -3149285, 7056632, 364535, -1443646, -7974144, -4975720, -1804423, -3420405,
-1342177, -4248797, 409096, 2632815, 8441221, 4137664, 3162170, 3652333, 6832219, -5751498,
--73014, -1726577, -4435628, 1823751, -911607, -1729798, -4642323, 2413772, 4868883, 507343,
--3545496, -2272038, 12472048, 50466, -3590056, -4996121, -7486128, -9972377, -1248762, -5171678,
-1193464, -1014149, 2782065, 517007, 1343788, -4582730, 681826, 748398, 6034429, 2039573,
--4519380, 252866, -1407676, -1342177, -1079647, 2157684, 3234647, 3169686, -2960306, -2880849,
-1814624, 862215, 1186485, 1305670, -1152662, -4422743, -5194763, -614180, 935766, -1239635,
-539555, 35970, -705985, -1095217, -1628866, -632434, -313533, -978179, -1809792, 153545,
-588947, -978716, 343061, -861141, 170188, -1077500, -540629, 212601, 282931, -1298691,
-192737, -494458, -2334852, 242129, -821413, 1311039, -17431662, 6905234, -3114925, 2921115,
--7211787, -2900714, -5645735, -5162014, 354872, -1621887, -3536369, 8887361, 2305861, -818191,
--5383742, -1698123, 2501819, -6164889, -3263638, -5871221, -3267396, 8494908, 830539, 5666136,
--537945, -52076, -1422171, 1609539, 1572495, -4498978, 59593, 1353452, 2543158, 9216463,
--4811974, -5579163, -1100585, 10193568, 3211025, 10848014, 963683, 1001264, -1912334, 5359046,
--925565, 7900056, -797790, -918049, -1414655, -3285650, 3362960, 1019518, -2812130, 2296734,
-2981781, 5484137, -3162707, -277562, -976568, 4883915, -1988570, -824097, -1830730, -1250909,
-1184337, -1600949, 576599, 823560, -1184337, 1207423, -8081518, 773631, 5267778, 1843078,
-7052337, 569620, 758599, 1693828, 4497905, 7182796, -4741644, 687195, -362388, 1693828,
--212601, -182536, 2166274, 4655745, 1806034, 2282238, 265214, -812823, -1198833, 628139,
-2376728, -831613, 1089311, 1074816, 1134408, -48855, 500901, 1976759, -328565, 517007,
--56371, 2281165, 1352378, -746251, -113817, 2454037, 1280437, -744103, 1829656, 999117,
--3731790, -1841467, -79457, -8618926, -1440425, 81068, -4290136, -15254113, -3699041, -3289408,
--6647536, -1297080, -1709934, 9552544, -3314104, 7224672, 3383897, 5211406, -9808632, -4406637,
--9911711, -9207873, -8053, 1733556, 5765994, -2780455, -4333622, -2663417, -6703907, 1435056,
-3049427, 3510062, 2159832, -2030983, 2495913, -4471598, 480499, -8066486, 2910914, -2079301,
-1102196, 1779190, 3011309, 3218004, -3085934, 122943, 7810935, -4186519, 3783866, 3976603,
--263604, 2382096, 3840238, -1584843, 1509681, 3789235, 202937, 6680822, -3503083, -4621922,
--2243047, 2185602, -24696, -8877697, -4511327, -9836012, -10714870, -1823214, 2890513, -8725763,
-3884261, -1416266, -161598, -2987150, 2916283, -5191005, -838592, -1813550, -7335804, -6459094,
--2148558, 3837553, 115427, 3291019, -1393180, 2130304, 1695438, -4054449, 13959, -803159,
-2284923, -2733210, -4583804, -1495186, 613643, -3221, -1770600, 779000, -1102196, -415538,
-719944, -243203, 41876, -93952, -1049046, -227096, -1018444, -675384, -661425, -23085,
-462246, 55835, 1291711, 500364, -638876, 4925254, -14198088, -684510, 4411469, 2784213,
--7536057, -917512, -4795331, 1234266, 1439888, 1030792, -8230768, -11017665, -7510824, 1290638,
--6004365, 6572374, 2079301, -10608032, 7665443, 6723235, 5317707, 4765266, -5273146, 8643085,
-2281165, -61740, -3363496, 2923262, 5177046, -4741107, -6968585, 2582886, -2629594, -8630737,
--1153736, -8327942, -3038689, 15098421, -4027069, -6776385, -8412767, 477278, 1374926, 6012418,
-2391223, -5518496, 5027796, -633508, -4342749, -5737540, -6104223, 9308268, 4160213, 5869610,
--4430796, -6054294, 2736968, 1514513, -6242735, -306016, -3828427, 6021544, -1160715, 545998,
--7377143, 4720169, 3941706, -4185983, -2702608, -2594160, 8347806, 110059, 1224066, -2402497,
-5719823, -5834176, -9940702, -4425427, 858993, -1894618, 5411659, -1103807, -629750, -5784784,
--3064459, 2518462, 324807, -4114579, -2701535, 3528316, 1889786, -1110249, 143881, 60666,
--10737, -1127429, 1516124, 686121, 2362769, 385473, 399432, 91805, 1014686, -478352,
-1470489, -1941325, 2020245, -7623567, -335007, 1877438, -1915019, -6095096, -9043591, -7246684,
-7286949, 843961, 8934069, 10668162, 10357851, 1566589, 14219563, 3410204, -1585380, 6575595,
-5017059, 13143137, 1890323, 7556458, -10378788, 17075180, 12559021, 6072547, -5187784, -4110284,
-6165426, 1425392, 4422206, -2537252, 7360500, -2196876, -1915555, 6627672, 5377836, -6739878,
-4538170, -1799054, 7168838, 7797513, -15286862, -2811593, 9421548, 2849711, 5130339, 4049617,
-9329206, -4497368, 3743064, 186294, -7854422, -3818226, -214748, 1651415, -11533061, -962073,
-7297150, -5746666, 12248173, 9196062, -3696893, -88584, 2351495, 4614943, 7153268, -2747169,
--2305861, 11609297, -2733747, -214212, 5047661, 263067, 6782827, 5424007, 2234994, 3758097,
-3912715, 3754338, 1731409, 1613297, -1607928, -2674691, -1130650, -2433099, -285615, -1689533,
-1289564, 1191317, -2450279, -1907502, -287226, 1903744, 3794604, 3199751, 1800128, 397284,
-1889249, -3223910, -1467268, -1713155, 729608, -1229971, 1695438, -3751654, 419296, -24159,
-3278134, 1351841, 168041, 611496, 3397856, 1086090, -2921115, 1016834, -264141, 840740,
-29695940, -15530602, 2165201, 12246562, -1177358, 445066, 16207059, 17772038, 2109903, -1348083,
-3738232, -846109, 4015795, 5114769, -6495065, -1979443, 10490458, 9276592, -4329864, -8431021,
--9033390, -9356049, -5064304, 7808251, -6001680, 3435437, 412854, -10933376, -744640, -7259032,
--883690, 3162707, 4796405, -14181982, -6687264, -11286100, -3526168, 17164836, 2455648, -1517197,
-1507534, -1524713, 829466, 5092758, 2952790, 8588861, -477815, 6427956, 3789772, -5931350,
-3764539, -9043054, 236760, -9082245, -9529996, 3633542, -10484015, 4442070, -143881, 5370857,
-4216584, 3886409, -5609228, 6555731, -9512279, -153008, -4396436, -1432909, 11887933, 474057,
-5937256, 5956583, -1238024, -2213519, 4580046, -9796820, 3917547, 9425843, -13987098, -10203769,
--2876018, 7143605, -684510, -8521215, 3211025, -1191317, 3651259, -3097208, 1100585, -1731409,
-6129992, -1083406, 5633924, 3201361, 5258651, 1903207, 1436130, -2709051, 3550327, 1670742,
--154082, 2182380, 1781875, -948114, 2638721, 2181307, -1335198, -1315871, -4598836, -861141,
--2641405, 1074, -149787, -1449552, 2312303, -705448, 1340567, 602369, 4728222, -3662533,
--17729088, 3300146, 4282620, -11975443, 5409512, -78920, 12553116, -3311957, -6386617, 5315559,
--15519864, -5334887, 13084081, 5745056, -7971460, -19160922, 8525510, -2662343, 4678293, -12222403,
--16215649, -10991895, 14011257, 1155883, 7723425, -1340567, -7439420, -11011222, 5183489, -2930778,
--9605157, -11203422, 795643, -9999221, -7713762, -4190278, -1997697, -10833518, 6056978, 7261179,
-9787694, -4679904, 8697309, -7009924, 13775034, -2554432, -757525, 10522670, 5387500, -2591476,
--7088307, -3528316, 10126996, 2359011, -7563975, 3617436, 10758356, 10204842, 4359929, -12444668,
--13778792, -1218160, 2651606, 868657, -9925133, 2981244, 10908143, 3178276, -4680978, -17605070,
-4687957, -7652021, -17207786, 550830, 896574, -9698036, 13946833, -996432, -5767068, -19035832,
--139050, -5593121, -906238, 7165079, -4286378, -7271917, -510027, 1653026, 1705639, -5762773,
--5876052, -5801427, 2126546, -5006322, 296890, -893890, 801011, -1384053, 1388885, 2571612,
-2257542, 2937758, 1430761, 5272073, 6671695, 388158, 1950452, 1239098, -2625836, -717260,
--2143189, 830002, 715649, 404801, -6515466, 778463, -570157, -2359548, -328028, -2120103,
-1941325, -2593624, -2750927, -21936008, 13775034, 10627360, 11699491, 1673427, 12364674, 1270774,
--7902203, -9142375, 1404991, 9928354, -6815040, 2328409, -14769856, 10174241, 10790032, -5390721,
--3025268, 2520609, 11815455, 8632884, -6054294, -5402532, 8093866, -9629317, 3387119, -13178033,
-27917, -3849365, -17680770, -18233210, 3602941, 10622528, 4949950, -15553150, -8367670, 12021077,
--13181255, -5415417, 10674604, -2777770, 13331042, -4578972, -9199283, 3580392, -13406740, 15607374,
--1580548, 2843268, -7194607, -3592203, -559420, -14459544, -8818105, 1267552, -2289218, 1551020,
--4636954, -15349676, 2988224, -12691091, 5794985, -3123515, 9322227, -15316390, 7029251, 2739116,
--4297115, 11592654, -1357747, -7796977, -15055471, -1940788, 3426310, -12122545, 9127342, -8158827,
-5956046, -15993921, -16364362, 7926899, 6332930, -6482717, -5091147, 5326297, 3653407, -3403762,
--2848100, -4337380, -5628555, -431107, -9099962, -880468, -1255204, 779537, 2612951, -1610076,
-2640868, -1679869, -506806, -4873178, -2399813, -1259499, -586263, 7413651, -2117419, -940061,
-4285841, -4489315, 3221762, 1915555, -1726577, -1022202, -4559645, -4175245, -145492, -2405182,
--2910914, 7178501, -6950331, 2396055, 8545911, 12598750, -3302830, 1407139, -4442070, -16798690,
--3562139, -3591130, 7332046, -14758044, -11811, -8513699, 9195525, -10325638, -14047764, 9367324,
-4338454, 6091874, 19435264, -3201361, -5521181, 5468030, -12381317, -14496588, 1238561, 18554796,
-5692979, 10412074, -7357279, -9122511, -14708116, 2937758, 18900004, -8460012, 9906342, 2249489,
-14711337, -22437446, -7069516, -394063, 2694555, 12750684, 6222871, -17108466, -4563403, -7953206,
--610959, -19698868, -3024731, -7108171, 1430224, -10382547, -615254, 2374580, -28646894, 3260954,
--8928700, 1731409, -11289858, -653372, 7144678, 3572876, -3783866, -3677029, -15061913, 15188615,
-14718853, 4785668, 3737695, -13183939, 20155744, 6945499, 10436771, -3994320, -31489090, 12266427,
--984084, 23649700, 22359600, 6974490, -2756295, 9758703, 624381, 8538932, 570694, 933619,
--5478768, 2622078, -4992900, -2782065, -1307818, 10276246, -28991, 568546, 2774549, -712428,
--5454609, -2928094, 1077500, 4130148, -1844152, 2025077, -3142842, 4298189, -3291556, -5331128,
--2543695, -826244, 2602213, 887448, -987306, -984621, -1010391, 6748468, -1340030, 322123,
-1280437, 3328063, 27215060, 9607842, 18631568, -18045306, 4216048, 18997714, -5686537, -6822019,
-2700998, -11718818, 8979703, 2289218, -13689671, -17930414, -1330903, 15242302, -376347, -1207960,
-9978283, -14854144, -3772055, -12224551, 6894497, -20845624, 361314, -4442070, 7605850, -21772262,
--15038291, -9503152, 6403796, 7031935, 4871567, -7049652, 5312338, -5239860, 6477885, -4294968,
--1891933, -1481227, -6102612, 4165045, 9660455, 5761162, 9724880, -780073, -9401147, 1361505,
--9360881, 25001542, -6298033, -24554864, -7639673, 6736656, 21361556, -21344914, -8792872, -1372779,
-13741211, 898722, -30218854, -3692598, 13969381, 28837484, 1083406, 20082194, 28919626, -2130841,
-9320079, 13677323, -3764539, 24652576, -3294777, 29766270, 4752918, -8152385, -25782152, -16138876,
-207769, 7779797, 3721589, -3905736, -4998268, -7995619, -10926934, -9702868, 11847667, 3482145,
--129386, -16940962, -1902134, 645319, -3082176, -9625022, 2531346, 5127654, -1447404, -4977867,
--3634079, -9429601, -5694053, -2757369, 5966247, -1145683, -5133560, 5178657, -7380902, 5337034,
-5377299, -4610111, -8949101, 8210367, 12175159, 1884954, 382789, 762357, 7097434, -2091649,
--8464844, 1022202, 8223789, 6829535, -8405788, -7119982, 1318018, 1372779, 127238, 2457795,
--1310502, 11460583, 13868449, -23730768, -23086522, 6149857, -5368709, 760746, -9174050, 21599928,
--9664750, -6162741, 7518877, 5435281, 230854, -9828496, -7195681, -11967389, 4859756, -660351,
--5781563, -922344, 14365055, 21573620, -23269596, -1451699, -22699440, -2384781, -5850819, 22560926,
--9488656, -9053791, -4353486, 13744969, 4575214, 3819300, 5771363, 5522791, -4045859, 307627,
--2925410, 3698504, -2665027, 21124260, -5468567, 5635534, 14872398, -7693360, -17015586, 3831648,
-5833640, -5954436, -6509023, -1384053, 3531537, 10737418, -14570140, 19605988, 28798830, 19372450,
--8048232, -11599096, -26612154, -34333432, -12620225, -86973, -6191732, -1697586, -3887482, 8265128,
--686121, -13231720, 6999723, -5833103, -1238561, 12663711, 21068962, -5102958, 5939940, -3652870,
-1178969, 19208704, 9703942, 16436840, 16705275, -13277355, -4075924, -3000035, 499290, -250719,
-5962489, 466541, 3664681, 16858820, 724776, 7909719, -3535832, -3626026, -6856379, -2048699,
-1003949, 7718593, -2099165, -6300180, -2969970, 3754875, -2619930, -1353989, -1947231, 2403034,
-632434, -2392834, -1308354, 1800665, 877247, 964757, 9716290, -3877819, 266825, 1350767,
-167504, -5248987, 2472828, 3119220, 6215355, -12217571, 23172960, 10440529, 13198435, 19793894,
-30566746, -11698954, 15834471, -31405338, -3834332, -14070313, -30856118, 12535936, 7353521, 9440875,
-4169340, 12278238, 3775276, -22202296, 18762028, 33108830, -4911295, -5291400, 8138963, 3316252,
--6871411, -29460792, 2454574, 132070, -2643016, 425739, 10071698, -21056078, 4603131, 6013491,
--4298189, -12135430, -5890011, -13528610, 13840532, -30248918, -4351339, -19448148, 10852845, 4399121,
-11005317, -3831648, 3025268, -7719667, 18566070, 5598490, 15248208, -13817447, 14988899, -319438,
--14598594, 30254824, -4971962, 3721589, 20459614, -19603842, 22928682, 13697188, -17900350, 7587060,
--6818798, 10075993, -24813636, 18183280, 2616172, 6399502, -2291365, 5898601, -20142322, 12866648,
-22961432, -45521820, 4696010, 43935904, -28326920, -9093520, 3144990, 21422224, 15227270, 5293547,
-13310104, -5976984, 8043937, -3320010, -9670656, 4817880, -2128156, -1622961, 8304856, 11994770,
--982474, -4649839, -3951907, 3556233, 7690676, -10133438, -3754875, -6932077, -4272419, -9060770,
-9118752, 11989938, -2479807, 5524402, -3361886, 2248952, 7675107, 8616778, -9864466, 852014,
-3721589, -5195837, 7932268, 415538, -106300, 7148973, 3702262, -8575439, -7130183, 2451353,
-1198833, -2582349, 1517734, 18386754, -11215233, -13495324, -479963, -12923557, -5901822, -34055332,
--29070486, -4070019, -16698296, -20047296, -14463302, 8805220, -5180805, -10186589, -16292422, 14931991,
-963146, -24616068, -3914326, -215822, -11722039, -3752728, 9921374, 7080254, -1765232, 9664,
-428423, -6242198, 5200669, 11375221, -4330938, -2818572, 17558900, -33135136, -5416491, 9215389,
-35210680, -14680735, -9172440, -13236552, -17912162, 7710540, 37369436, 6854231, 23139136, 4691715,
--3829500, -2047626, -2791729, -18138720, 3932580, 3988414, -14711874, 3159485, 29189672, -4835060,
--9028021, 4800700, -10506027, -2505040, 25750476, 37993280, 10266046, 22768158, 26418344, -9481677,
--11049877, 2909840, -8743480, 1399623, -26154204, -337692, -20381230, 6090264, 4245575, 12306692,
--21214990, -8034810, -7239168, -8420283, -6644852, -7548942, 11811160, 2433636, 15225659, -3979824,
-5806259, 15107547, -2793339, 423054, -2203318, -6161131, -4854387, -945967, -3665218, -5675263,
--86973, 2184528, -2865817, 905164, 7122130, -7253126, -6476811, 367220, 5346161, 2643552,
--3409667, -10690174, -10261751, -1384053, 2433636, -6394133, -3471407, 2091649, -2103460, 983011,
-779537, 7101729, 2457258, 1712081, -7885560, 8640400, -3651796, 27110370, 30617748, -12203613,
-69198904, -9444096, 1641751, -12735652, 8199630, -5354214, 8093329, 17814988, 5090610, -16503949,
--8936216, -17246978, -229244, -11690901, -21378736, 2936147, 13967234, -2291365, 4105989, 6663105,
-8214662, -63351, -6127308, -8016557, 4163971, 11274, -10630044, 4260071, 29779692, 21074330,
-11999602, -25139518, 18156974, 14218489, -6591164, -7623030, -7656853, -10013179, -4285304, 8241506,
--18195092, 1818382, 2327336, 11025718, 28388660, 5548024, 5925981, 1618129, -3339874, -5655935,
-12340515, -7371775, 28665148, 9285719, -2716030, 12615930, 2432025, -19202798, -13824426, 16352014,
-18804978, 7056632, -4643397, 12560632, 13465796, 19206020, 37402184, 4102768, -10691247, -19108846,
--12781286, 9804337, 2158758, 3245922, -1729261, 13244069, 1443109, -1489817, -17387102, -8481487,
-18205830, 20481088, -7210713, -13721884, -16478179, -4669167, 8917426, 5705864, 1682554, -5465883,
-1487669, 125091, -7267622, 203474, -16111496, -4064113, -564788, 11742977, -2036351, -3364570,
-141197, 9557913, -5579163, 6896107, -3446175, -7432441, 6630356, 9456981, 6044630, 6740415,
--783832, 7208566, 13413720, 5997922, 5766531, 4000225, -4862440, -2051384, 437013, -1008780,
-4080756, -3578245, 6621229, 8645769, 5072357, 809064, -6356552, 2727841, 2414309, 7021198,
-11217918, -10737955, 49445812, -7349226, 2102387, 5483600, -3728569, -684510, 12404939, -9190156,
--10865194, -5701569, 16008417, 14295262, -38200512, 7379291, 6563784, 15643345, -9745281, -15073188,
--14333380, 10945187, 9933722, -15400142, -8374650, -6315213, 25776246, 12955769, 7291244, -4974109,
--26574574, 7565048, 6782290, 13752485, -3221226, 7317014, -7306276, 2614025, -23056996, 9629854,
-9563818, 355945, -5638755, -14500883, -28682866, 18685792, -12016245, 9615895, 9965398, 16510391,
-2423435, -17526688, 29325500, 5734855, -28408524, -13225278, 17221208, 4079145, 22507240, 9473087,
-3840775, -20329154, -9895605, 11368778, -35219804, 38115688, -27044872, 1552094, 23038742, -6135361,
-45507324, 6803765, 8404714, -16412144, 52993992, 5514738, 34550864, -23315230, -10232760, -7332046,
-13617731, -1414655, -5132486, 23966454, -19568408, 23115514, -27189828, 5928129, 3052648, 5028333,
--5043366, 20381230, -2168959, 10402948, 9433359, 13547401, 7978976, 3999152, 9765145, 10588168,
-676457, 3916473, 1482301, -7093676, 9364102, 320512, 6541235, 12812424, 6727530, 863288,
--321049, 9822053, 10841571, 5306969, -5655398, 21442088, -637266, -4236985, -3839701, 13778255,
--10100152, 4813585, -1975148, 7423851, 792421, 3103114, 4382478, -2894808, -2018098, 2127620,
-4427575, 3581466, 4617090, 5541582, -6131603, 17343614, 40761924, 13534516, 25595858, 32631014,
--1403917, 37420440, -28841242, -10326175, -10865194, -9532143, 3991635, 6116034, -2487323, -12730820,
--24819006, 23802708, 22434762, 9539659, 20257214, -33226940, -28815472, 9720585, 13707388, -15348603,
--21624624, 13812078, -6857989, -30959734, -11447698, -5876052, 15263777, -28458454, 15697569, 10735271,
-12418898, -13292924, -874563, -13145284, -5871221, -37906844, -9333501, 18434536, -60224032, -19013284,
--2397666, -1303523, 1984812, -36131948, -9102109, -54437100, -4643397, 10815801, -15620259, -16996796,
--7161321, 16443282, -5649493, -19590956, -22517976, -56792352, -20389820, 26667452, -25283398, -38203196,
-31911070, -9999221, -43147780, 13074417, 38723964, -20712480, -9558450, 4769025, -28352152, 35072704,
-15388868, 22478248, -11876658, -2411087, 11356967, 33413234, 15373299, 5332739, -10844792, -2250026,
-37660420, 3762391, 5717675, -2697240, -22484154, -9817758, 17577690, -304406, 922344, -3522410,
--20121922, -1416266, 8407935, -12256226, 14445586, -18951006, -12449500, 4030290, -6918656, 10014253,
-3779034, -17223356, 6880538, 8834211, 4438849, 3438658, -7293928, 4288525, -434329, -4094715,
--12568148, 6267968, 4723927, -1276142, 8996346, -13481902, 1242856, -12894566, 49392, 3642132,
--4937602, -2078227, -979253, 5354214, 418759, 47595752, 65606164, -9679246, -1520955, -24999930,
--25162602, -43725988, 19250044, -7008313, 65527244, -13229036, -27649926, -38662220, 2746095, 12682502,
--14006962, 12775917, 42996380, -16363825, -7122130, -29214368, -13060996, 29255706, 33626372, -32937030,
--9030169, 17586818, -6782290, 8038568, -9550934, 42239928, 33913060, 71675488, 23630910, 31957778,
--13597866, 23045720, 48566416, 16084653, -2659659, 11688753, -1212791, 31845036, 16827682, 46229416,
-13306882, -45714020, 16625818, 18287434, 38440496, -20827370, -17713518, 22501334, 24299852, -10919417,
-38636452, -12903692, 16079284, -41548440, 26998702, -9371619, 14985678, 15454903, 33921116, 29543470,
--22709640, -23616952, -7361037, 35653596, 35930624, -12887586, -19331648, -37341520, -3917547, 27187680,
-30626338, 20667920, -8454106, -24517820, -23310934, -3517041, 16843252, -15810311, 23331336, 6269042,
-16401943, 3460133, -7821136, 18816788, 11847130, -2103460, -7388955, 6346351, 15801722, -21746494,
-9357123, 11872900, 15397995, 8927090, 21628918, -6359773, 7823820, -9302899, -14316200, 9143985,
-18240726, 16476031, 24380918, 463856, -49392, 7950522, 6659884, 43728672, 8489540, -1100585,
--18580028, 826781, 27710592, 14714558, 21438866, 13114146, -439160, 1119913, -4620848, 562104,
-26593900, 22705882, 2400887, 8956617, -2604898, -3611531, 1012539, 11918534, 8495982, 8160975,
--5734855, -4853850, 6363531, 1636919, -15897285, -52763136, 3762928, 81046568, 48425220, -11223286,
--118620016, -16892106, -12009802, 9363029, -13470091, 2331094, 12406550, -4447976, 5369246, -25729538,
-16510928, 19931870, 36696200, -26423712, -33491082, 34765612, 54913304, 13943074, -24392730, -32399622,
--6979322, 8275865, 3077344, 8790187, 208843, 12194486, 4867809, 35955856, -11449846, -49115100,
--21335250, 15945603, 5792301, -16909824, -21549998, 2983929, 23213762, 41351408, 37831684, -690416,
-629213, 15643345, -14635101, -42359652, 12904229, -26373784, 51005956, 56084220, -1144072, 15940771,
-7989713, 11304354, -24751896, -3409130, 53179212, -19883552, 473520, -72110888, -9622337, 8348880,
-16698833, 15917149, 14942728, -17707614, -11274289, 32913946, 47877076, -8254927, -2097555, 4859756,
-19259170, 23591718, -10897406, 8086887, -26103738, -30554398, 3120831, 8680129, 11366094, -3518652,
--4853313, -5583995, -6662568, 21282100, -162672, -3685082, -11108396, -616328, 12951474, 12050068,
--6350109, 16387985, 3643743, 24797530, 1972464, 4619774, 756451, -8329552, -7407745, -4021700,
--5776194, -1375463, -7457674, -4861366, 1807644, 20692616, 23000086, 7159174, 11908334, 4820564,
-4107599, 20248086, -14483167, 15450608, 5357435, 25141664, -6761889, 6800007, 4460324, -9771051,
-7753490, -4480188, 7911330, -2489471, 13583908, -4511863, -8684961, 7127498, 2840584, 3651259,
-5258114, 3753265, 9573482, 2208687, 3465502, 2101313, 3238942, 3721052, 2735357, 6669011,
-4394826, 1012002, 645856, 1705102, 5940477, 4809827, 4429185, 5477694, -6285685, -53438520,
--22168474, 42549168, 46921980, 44537736, 60453276, 10289131, -26148834, -80000208, -60723860, -11544335,
-16848082, 50502372, 55006184, 25916906, 1159641, -26953604, -23276576, -10444824, 17138530, 47114180,
-26793616, -6383932, 1670742, -4011500, -25999048, -35676144, -29110214, 5283347, 43481176, 32517198,
-65407520, 42381664, 42112156, 59117004, -17303350, -41166724, -46642272, -62105764, -76261976, -28982976,
--9013526, 22431004, 41960756, 60401200, 56638272, 45806364, 29117194, 58001924, -11399917, -37063420,
--1733556, -9630927, 15408195, 17362942, 69524784, 60442000, -22573274, 10616085, -15806553, -46768436,
--13708462, 12054899, -27972586, 42913704, -17289928, 14060649, 3697967, -5240934, 37404332, 51622284,
-41442140, 28819230, -21559126, -52861920, -59757492, 16726750, -25179246, 4257387, -2852932, 33392834,
-5299453, 18740016, -16101296, -37175628, -34133716, -53997404, -46603616, 19435264, 11180337, 26633630,
-40685688, 31258772, 1242319, -24336358, -38580080, -52765820, -28628104, -13780403, -19250044, 8237211,
--6980396, -6493454, -6185290, -16325171, 168577, -7490423, -10548977, -13060459, -8020852, -2130304,
-8383776, -15719580, -9545565, 22308060, 2232846, -119464512, -125736776, -130787120, -134055592, -177140560,
--19223200, -50107236, -12120398, 16551193, 80706192, 91716880, 94836632, 132741872, 183504624, 175827904,
-172805856, 138838576, 100291248, 72878080, 21925808, -83719112, -40156332, -49458696, -30610768, -100545184,
--16660178, -41609644, -45818712, -83195664, -63918776, -65040300, -58906012, -61546344, -108156400, -95783680,
--56499756, -51095080, -64177548, -88938576, -13483513, -77876880, -147614272, -126491616, -111038328, -58529668,
--75420160, -13453448, -152784864, -67647880, -67648960, -31255550, -22764400, -78668768, 3539590, -78816944,
--9468255, 12314208, 37006512, 3340411, 38034084, 56727928, 89203784, 95056216, 130791416, 85453744,
-205208704, 129667208, 238850640, 162376064, 237952464, 275961856, 327714592, 269165056, 271026944, 305413504,
-274085472, 278319776, 270913120, 234870288, 135953424, 108615968, 76703288, 55919400, 65488588, 97633736,
-53890028, -19767050, -33867964, -39142184, -67223216, -87312928, -106416944, -98044440, -161110672, -156117232,
--160748816, -194795552, -171485152, -216383680, -191542656, -224826512, -230847520, -217517552, -239963584, -217045632,
--242307024, -192364608, -188419680, -156209568, -166662992, -171856144, -120736360, -108163384, -82571280, -42059004,
-14302241, 46119896, 40519260, 51621748, 46302968, 52185464, 60047400, 85623392, 102984728, 93013960,
-83799640, 102304512, 95332168, 117667608, 107268952, 78353624, 71478992, 62064424, 54842976, 34498788,
-26384520, 24437290, 15589658, 16940962, 6990596, 11067594, 9880572, 6725382, 9915469, 7137162,
-4484483, 1649804, -3459596, -496606, 87510, -10295573, -16087337, -9226127, -7261179, -6651831,
--4581657, -3251827, -2968896, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
-17045114,
-2260227, -5585605, 2661806, 3018288, 1051193, -7075959, 3245922, 5035849, -5403606, -1613834,
--6622840, -1449552, -2807835, -2422362, -944356, 375810, -219043, 683437, 2396592, -2946885,
-1333051, -6787122, 2350421, 4185446, 900333, -1778117, -5499169, 3610457, -2409477, 5833640,
-4980552, -205622, -2302103, 4757750, 5547487, 4461934, 4514011, 1127966, -3442953, 1090922,
-4270271, -1779190, -3598109, 3249680, 5146445, -2247879, 2691871, -5837935, -472983, -5120138,
-3508452, -6817724, -1834488, -1264868, 2345589, 3409667, 2419677, -188442, -3609383, 449361,
--4996658, -3297461, 924492, -613643, -3009162, 1655710, 1704028, 437013, 3167539, -2806224,
-1367947, -3792456, -1499481, -1609539, 2101313, -1963337, -4013110, -1795833, -1490354, 5539971,
-4764730, 1214402, -2517925, 335544, -286689, 974958, 1917703, 359704, 115427, 345208,
--70867, 89657, -703838, 561567, -2110977, 108448, -154082, 882079, 464393, -644782,
--919660, 201863, 389768, 413391, 9718437, -9793062, 372052, 173946, -2478733, -2938295,
--3129958, 1015223, -5518496, -5443334, 770410, 2645700, -201327, 3135863, 2443837, -2991982,
-1234803, -10740639, -2626909, -2399276, -2498597, -3384434, -3733937, -9465571, -7354058, 1012539,
-2218351, -505732, 5128191, 4102768, 1727114, -1820529, -1018981, 4806069, -1851668, 599685,
--696322, -5039071, 1691680, -1683627, -3432216, -1322313, 4128001, 9969693, -3795141, 1118839,
-2429878, -1836099, 3142306, 1409286, -3476776, 2037425, -8228621, -3804804, 98247, 3375844,
-5236102, -3198140, -1481227, -350040, -11927661, 2047089, 6176163, 341450, 902480, 3384434,
--1935420, 5278515, 7112466, -890132, 2026151, 4279935, 4061429, 814970, 228707, -1972464,
--2844342, -1771674, 1265405, -2704219, 5941014, 3997004, -126165, -2891050, -1479616, 3427921,
-4026532, -2002529, 3126199, -1890323, 854699, -1927367, -1167694, -1318018, 380641, 99858,
-236760, 275952, -215822, -634581, -2573222, -8390219, 1941325, 304406, -8115341, 1240172,
-4545686, 6689412, 1717987, -4816269, 11340861, -1524713, -2234994, 5328981, -3295851, -3212099,
-545461, -4144107, 5054640, 5050345, -2044941, -7633231, -3770981, 3794604, -4912906, 10786810,
-9310952, -7445863, -9107478, 323196, 1703491, -8669391, -567473, 3578245, 2430415, -4245575,
--2467996, 9944460, -1056025, 6844031, -679679, -2226941, -2312840, -5126044, 892279, -731218,
-5367099, -4584341, 1242319, -1204202, 997506, -2701535, -354335, 4524748, 3599183, -5673115,
-8834211, 726923, -39728, -143345, -809064, 2393908, -1217086, -7910793, -1122060, -4178466,
-6889128, 2883534, 180389, 8459475, -4680441, 5658083, 5567352, 509491, -4116726, -843961,
--875636, -91805, -1170916, -1708860, 2341294, 2477659, -3738769, 1791538, -220117, 2622078,
-2318746, -768262, 363462, -1161789, -1756105, 1251446, -1615982, -1366873, 694174, 1772211,
--1632088, -1219771, -2124398, -914291, 1279363, -813896, -308701, 23085, 649614, -1180579,
--668404, 1634772, 544924, -351114, -514322, -1845762, -20218022, 4638028, 1080184, 14401562,
--782758, 5785858, -7752416, 1665374, -5810554, -1392643, -2849711, -918049, 2641942, -1560147,
-2466922, 4853313, 3703336, 13674102, 9433896, -6211060, 3131031, -335007, 2519535, 1612223,
--1750736, -13589813, 3435974, -695785, -137439, 5156108, -814433, -3791919, -2641405, -643171,
--4225174, -2269890, -10864120, -2549063, 280247, -3837017, -687195, 4499515, 6435472, -2084670,
-7953743, -5956046, 1304060, 2717641, 1036161, -1848983, -4196720, 2962454, -1059783, 1823751,
--3120294, -4432406, 819802, 2577517, -4479651, 4263829, -3063386, 10157061, 10772315, -3279745,
-3928285, 4136591, -566399, -1400696, -1454383, -13171054, 5496485, 5348845, 155156, -2219424,
--5507222, 574989, -1621887, -6713571, -15038828, 983011, -3733937, 3852049, -8053, -64961,
--2518462, -1704028, -2837900, -286152, 1533840, -1966558, 2281702, -2420751, -1407676, -1025423,
--608812, 1222992, 1013612, -820876, 464393, 331249, 816581, 1334124, 1028645, -711891,
--1602560, 1122597, -681289, -1198833, 429497, 379031, -711354, 827855, 1352378, 454193,
--4327180, -6606734, 6594923, 3757560, -574452, 7622493, -4086662, 6838125, -7700877, -7393250,
-3600793, -11798275, -4178466, 2976949, 7184407, 9388262, -1637456, 7007776, -242129, 6674379,
-2469069, 1085016, -1096827, 365609, 6661495, -3174518, -699543, 1211718, 579284, -6562710,
--815507, -3560528, 13570486, -6486475, -6572374, -1596654, 6396817, 6435472, 5528160, 7393250,
--1278290, 1357747, -1638530, -3670587, 2800319, -331786, -697932, -4197794, 10645076, 6562173,
--3287261, 2027225, 3147674, -5614596, 1194538, 4135517, -1045288, 7981660, -3221226, -1037235,
--8675834, -3275450, -7376070, 328028, 10180146, -4007205, 2876554, 1742146, 353798, -2779918,
--940061, 88584, -2485176, 4884989, -5019743, -2370822, -443455, 10728828, 1702418, -67109,
-3391951, -2924873, -8048769, 1993402, 813896, -1285806, 586263, 1974074, -529892, 403190,
-3916473, 737124, -311922, 926639, 59593, -528818, -932545, 3628174, -175557, 299574,
--3320010, 2010045, 515933, 2000918, -489626, -1372779, -407485, 1012539, 1647120, 1057636,
--2705830, 125628, 1919314, -601832, -3413962, -2212982, -19057844, 13824426, 1457605, -7010461,
--16831440, -1675037, 428960, -9957882, -897111, 4639102, 3954054, 365609, -2877628, 3672734,
-12033425, 12206834, -5228049, -5737540, -13234942, 2646237, -2384781, 12858595, -5238250, -284005,
--3015604, 4839892, -1440962, -13180181, 4330401, -618475, -7809325, 7516, 1235877, -1069984,
--1328756, -5417565, -7540889, 4585415, 1137093, 5996848, -5209796, 10093710, 4793721, -2085207,
--8939438, -1775969, 3236258, 9871445, 3066070, -5583458, -2542084, 4587025, 2966212, -2867965,
--1395328, 4835060, 3965329, 5104032, 9787157, 10916733, 5340792, 5812165, 6717866, -3931506,
-980863, -7227893, 7233799, 1138166, 3659312, -5163625, -8019778, 1833414, -10254234, -3699041,
--4467303, 7532836, 7905424, 8265128, 2181844, -2344515, -2610266, 7720741, 1580011, -1081258,
-1954210, -2434173, 4941897, 255014, -64425, 1619740, 2034741, -768799, 4052839, -3221,
-694711, -1940788, -1157494, 1113470, 3164854, -194347, 1154273, 1826435, 1062468, 608275,
--941135, 1509681, -1252520, -6855305, -406948, 12825309, 7885560, 10842645, 2063732, -11864847,
--3910568, 12592844, -3631932, -7980049, -8311836, -8186208, -8658654, 4760435, 4839892, 3104725,
-2846490, 2936684, 12118250, -1500017, 5260261, -10409390, -11709155, 7839926, -415538, -6394133,
-459562, -16316044, -5325760, -5499169, 2005213, -577136, -1504849, -11480448, -7511361, 1269163,
-7927436, 12874701, -5106716, -5057861, 6864432, -8849243, -632971, -457414, 2961917, 5629092,
-4598836, 8921184, -4790499, 12936441, 6107981, -13993003, 6990060, -7781407, -9274445, -7723962,
--11219528, 10149545, 2389076, -11969537, 1370632, 2515777, 1111860, 1886564, -2190433, 8414915,
--4884989, 6466610, -10404558, 7884486, -5277978, -4820027, 1031329, 3493956, -403190, 5693516,
-16340740, -1381369, -8759049, 5167383, 10710038, 845572, -1161252, -8498130, -3700651, 7876970,
--1337882, -540629, 271657, 1583769, -2208687, -1277753, -192737, 2319282, -1345399, -287763,
--1546188, 4439923, -3257196, 678605, -3061238, -3837553, 1011465, 1227287, -1195612, 590558,
--1109175, -846645, -240518, -439160, -92342, -1628866, -956167, 4558034, -235149, 26307,
-26589068, -23968064, 11085847, 11567421, -10772852, -1944010, 15906948, 5767604, 10102837, 3021510,
--3499862, 23929948, -960999, -4476967, -25770, 81604, 11486353, 18001282, 6815040, -122943,
-361851, 2703145, 6184753, -84826, 3281892, -12579959, 5956583, 9808632, -2056753, 4001836,
-1074, 1823751, -8110509, -6326487, 456877, -276489, 11107322, 5488968, 4594542, -4676146,
--5753109, -5744519, 6393596, 9295383, 78383, -2985539, 18149994, 9403831, 12128451, -6534256,
--13542569, -2575907, -14181982, -9327595, -4272956, -5910412, -814970, 10619307, -3359201, 412854,
--8684424, -9269076, 10577431, -530428, 4933844, 5285494, -5517959, 10166188, 2646237, 914828,
--3531000, -6801618, 7977365, -2440615, -14125074, 8169565, 6900402, 8542153, 3850975, -9947681,
--2086280, 930934, -10388989, 5940477, 5959267, -969052, 4500052, 3764539, 4022237, -972273,
-6357089, 948114, -250719, -3221762, 1579474, -62814, 5064304, 1093069, -141197, 1036698,
--48855, 3725884, -1585380, -459025, -2468533, 1265405, -658204, -1933809, 420907, 520765,
--734976, 576063, 4102768, 3097208, -1773822, -1156957, -2646774, 688269, -570157, -355409,
--18583786, 2284386, 6135361, -9127879, 7612830, -15771657, 3602941, 4810900, -2075543, -6245420,
--8014946, -9344775, -15823733, 2021856, 17996450, -5918465, 8680666, 4828080, 13383655, 7112466,
--5056787, -11488501, 5922223, -2896956, -4085051, -11905112, -1779190, -1593970, -4750771, -5093831,
--2738042, -8361765, -10994043, 12833899, -1258425, -7432978, 10064719, 3563212, -8778376, 1333051,
--644245, 5739687, -11664594, 3303367, 4010426, -17210470, 5755256, 5645735, -8870718, 2571612,
-672162, -2764885, 6366216, 614180, -1200980, 787590, 4312684, 11650099, 9250823, 11888469,
-8192113, 4255776, -3070365, 17683990, -4488241, -9014599, 19581292, 1333587, 11834246, 2573222,
--3795141, -18149458, -16800838, -4148402, 1063004, -6613713, -3216931, -5187247, 11553462, -10091026,
--2946885, -1692754, 2820720, -9848897, 7128035, -757525, 2254321, -825171, -3830037, -6400575,
--4311074, -5035849, -4099010, -1195075, 654983, -3087545, -2208150, -1712618, 4225711, -4890357,
--4323422, -3510062, -4162897, -152471, 3390877, -1480153, -1659468, 2448131, 595927, -1206886,
-1658931, -3052111, -3375844, 2610266, -3936875, -6323266, 2232846, 5706938, -3020436, 636729,
-3819300, -1283658, -3139084, -30940944, 15134391, 26657252, 1851668, -15128485, 6893960, -2794413,
--1060320, 4370129, 2574296, 6862284, -8075076, 932008, 23882166, 18354006, 16044387, -17520782,
--751082, 4305168, 9158481, -8406862, -9425843, -2399276, 3013457, 8303246, 4117263, -22531936,
--25583510, 7957501, -855235, 14412837, 14763413, -9531069, 12217571, 9842991, 13050795, -889058,
--7792682, -8101382, 6234145, -8579734, -3297461, -2684, -374736, 7813620, 16596827, 9337796,
--4549981, -3917010, -8225399, -2094870, 728534, 4494147, -1773822, -2924336, 8158291, 5140539,
--12541305, -166430, 518080, 15074261, -7587060, -8652212, -16438450, -5577552, 2814277, 1102733,
-8490077, -1829656, 2124398, -7349763, -10922639, -9904195, -10008348, -5756330, 4776541, -20623360,
-2463164, -2887829, -3236795, -4359929, 4079682, 11298448, 8229158, 1309428, -1849520, -10476499,
--3342558, -964757, -2131378, 6922951, 3533148, 2114198, 1523640, 3599720, 4199941, -1604170,
--1756642, 107374, -1902671, 367220, 462783, 1383516, 2308545, -6700149, 1034550, -865973,
-5084168, 1381369, -6740951, -375273, -4268124, -3269544, -1683090, -1504849, -1791001, -850404,
-3810710, 3490735, 2943126, 5042292, 15592342, 1273995, 13530221, -1851668, 17562658, 8761733,
-13695040, 8418136, 3990025, -6782290, -686121, -4245039, 9386651, 2764885, 8243653, -7871065,
--1376537, 14564234, -17952964, -10034654, 13993540, -23680840, -10440529, 1766305, -4520453, -11725261,
-23849416, -4262218, 16474421, 6609955, -14352170, -2195802, -5397700, -17352742, -22541062, 18005040,
--163746, -6558952, 4453881, 328028, -2992519, 6557342, 2573222, -2324114, -8291971, 1592359,
-17009144, 14421426, -11894912, 4720706, 934155, 13454522, -6124624, 9119289, -19339164, -4680441,
-13204877, 4437238, -4426501, 15759309, -5012764, 11048803, -21470004, -24755654, -8925479, 485868,
--17538498, 18953690, 13375065, 19254876, -8827232, -6496138, -6676527, 1002875, -9764071, -99858,
--14923401, -13545253, 620623, 3821984, 13827110, 6540699, -1455994, -5094368, 4351876, 7987566,
-5234492, 3196530, -4915590, 5776731, 5157182, 6510097, 4819490, 3528316, 5216238, -7155953,
-6038724, -4327180, -2196876, 9469866, 8368744, 5631239, -995359, 341987, -2527052, 4858682,
-1523640, -1987496, 2637110, 4929012, 744640, 3832722, 3722663, -4927938, 1637993, -3723737,
--1089311, 1172526, 21589726, 15525770, 24328306, -21605832, -16239808, -37012416, 15947750, -4121021,
--31628676, -6134824, 3000572, 4658429, -11818676, 12875238, 10877542, 1221381, -143345, 2010045,
--5240934, -11013370, 2427194, -6263673, -10307385, -135291, 23977728, 744103, -3639985, -19174882,
-8088497, 15141370, -7834557, -23135916, -4197794, 7798050, 2765422, -4911295, 5041218, 1647657,
-8321499, -2339684, 13725105, 20976084, 7934952, -13947906, 15808164, 7117835, -17865454, -19011672,
-20664698, 9994389, -8048232, -9277129, -459562, -16851304, 12334609, 16250546, -387621, 915902,
-4091493, -2081449, 17784386, 5979668, 4622996, -7374996, 2873333, 6005438, 21961778, -5272609,
-8414915, -17016124, -19383188, 17282948, -2608656, -1616518, 1784559, 16473884, 360240, -775778,
-10395431, -4975720, 2071248, 9540733, 11643656, -5570036, -7256884, -15631533, -7714298, 5105106,
--6909529, 5440113, -177167, 5772973, -3131031, 4257387, 878858, -2408940, 1872606, 8738648,
-2149631, 8698919, 2618320, -5508296, 347355, 3628711, 3004330, -5405753, -4961224, -5266167,
--2268280, -4138201, -4056060, -6431177, -2778844, 3577171, 2263985, -658741, -1059246, 1953673,
--4284767, -108448, 5484673, -1554778, -907849, -2652142, -2248952, -1160715, -8168491, -1151051,
--3182034, -3502546, -5104032, -7267622, -25049324, -2065342, -16390132, -33248416, -34266860, -14812268,
--26163868, -11862700, -4227322, 4699231, 14631880, 16324097, 1671279, -8833137, 17581986, -8939974,
-8665633, -32826436, -3229816, -22519588, -15115064, 15252503, 10707890, 10419054, 3463891, 21964462,
--2221572, -1374926, -15822660, -5485210, -3187940, -10769094, -10877005, -26975078, -10609106, -2979097,
--4351339, -16689706, 14756971, 5877126, 8804146, -7348152, -2831457, -40935332, -11800960, -11283416,
-9477382, 20979304, -12927852, -1982664, -23851564, -1722282, 12271795, -3908957, -8056822, 5365488,
-17601312, 30039002, 6311992, 952409, -1663226, -8058970, -12026982, 8032663, -7925826, 27247810,
-5356361, 11731703, 55566140, -11059541, -9460202, -14038637, -19479824, -2643016, 18981608, 8544837,
-2712809, 6316823, -8029978, -6225018, -16954920, -4059818, 9530532, -1556926, -3750043, -1591822,
--3954054, 1997697, -625992, 3695819, 3744675, 3820910, 5013838, 5490579, 14153528, 8641474,
--5246840, 8238821, -220117, 526134, 5920613, -6847789, 128849, -7900593, -4779225, -10814191,
--8033737, -11279121, -9361955, -6271189, 12367895, -7697119, -4345433, -9079024, 566399, 2698313,
--1964948, 3728569, 1499481, -228707, -7672959, -27808840, 15775415, 26007638, -15397995, 775242,
-5826123, -9003862, -2177549, -19459960, -416075, -10924786, 28234042, -26844, -5347235, 22655952,
--5782100, 6568079, -26042534, 13472239, 4001299, 17561048, -8236137, 13069049, 23095112, 24812026,
-13914083, 22363358, 11445014, -3597572, 21735756, -10570988, -14361834, -4628364, 8706972, 14721537,
--35458176, -2457795, -22935126, 18132278, 8194798, -492311, 6220187, 25407952, 1056562, 22670984,
-9666898, 34354368, 3060164, -3959960, 15030775, 4936528, -17572858, 3728569, -2080375, -23570780,
-16474958, -14233522, -23000624, -47004660, 3610457, -5831492, 27585502, -15426986, 36927592, 12159052,
--656593, -5693516, 14379551, 15164456, -27078696, -11588896, -20021526, 6927782, -9056475, 20266876,
-6420976, 6792491, 9774809, -4710506, 1702955, -7142531, -2509872, 539018, -2715493, -20922396,
-8213588, -66035, 6150930, 176094, -6192269, 644782, 8501351, -13926431, 11945378, -5118528,
--75699, 1339493, -11712376, -1018981, 7016903, 3550327, -8424578, -3486977, -2066416, -9855876,
-3265786, -2821257, 14296336, -11511586, 5069672, 9976135, 3546032, -4254165, -3182034, 4846334,
-2346663, 3003793, -2578054, 5025649, -15369004, 4094715, 3644280, 6580964, -4689031, -7176354,
-511638, 6441914, 861678, 17859010, -11941083, -13361643, -13145284, 17173964, 8909910, 22363358,
-6208375, 69186552, -20547660, 372052, 520765, 32205276, 13335873, 14911590, -21125870, 9278203,
--8329552, 598074, -9771587, 2150705, 23277112, -6125160, 7383586, 44978508, 14120779, -20371566,
--23852100, 2774549, 29334626, 15298137, 5576478, -11349988, 24973088, 4239670, -3703336, -27440546,
-8391292, -4359929, 11828340, -24910274, -15202574, 1298691, -6334540, 3278671, -23226110, -801011,
--14166413, 6582575, 20598126, 16464220, 5391258, -31871342, 271657, 3151432, -28718298, -25651156,
--16996796, -14024142, -13998372, 22733798, 5196374, -650151, 14826227, 23638426, 6310918, 20472498,
-558346, 13554380, 90393496, -20623896, 14898168, 10377178, -15879031, 3365107, -60224568, 1214402,
-29912300, 7829726, -16565689, 23028540, 5555540, 8761733, -15023259, -3409667, -12833899, 4514011,
-1124745, 1146756, 5164162, -18660022, 6915971, -10234370, -7439957, -25549150, 6350109, 5874442,
-5101885, 6585796, 31991600, 4836133, 3430605, 3679176, 2511482, 19124952, 2255395, 8080981,
-6696391, 14592688, 5872831, -867047, -3222299, -2644089, 2429341, 9259413, 11050951, 3277597,
--16782048, -7702487, -3713536, -3710315, -5543192, -17524004, -4256850, 13467944, 36599564, -17013440,
--865973, -24550570, -17829482, 5816997, 16043850, -20310364, 24260660, 10175851, -31825708, 19589882,
--12880607, -15761456, -1307281, -19062676, 4497905, -8528731, 24622510, -14171781, -1109175, 13558675,
--47501264, 6817724, 14761803, -14327474, 11716671, -28698434, 28716688, 3150896, 4960151, -54316304,
-49052820, 21041582, 16120623, 1094143, -30962420, 28414966, -1795296, -14057965, 50164144, -9971303,
--22001506, -11586211, 6075768, 14526653, 13759465, 3673808, -8434242, -59027884, -6648610, 14785962,
-882616, 21693880, -30971546, 32003412, 3270081, 10831908, -31479962, -9089761, 5093831, 40787156,
--16934520, 9543417, -29163364, 25831544, 14492830, 24378234, -9371082, 10811506, 4234301, -31884764,
--30440580, 16770237, 13716515, 26003342, 5594195, 33367600, -50232328, -65747896, 10528575, -13861470,
-37187976, -24230058, -5222680, 4297115, -27974196, 1398549, -16688095, 14576045, 20684562, 2076080,
-16789028, 18452254, 5509906, -16644609, -8378408, 29677150, 15473157, 3861713, 5224828, -8886824,
-747861, 18073222, 10165114, -14612016, -8225936, 16816944, -2335389, 10482941, 10572062, -6453725,
--8538395, -8662949, 121333, 8978629, 4112431, 11483132, 16503412, 1361505, -463856, 13431436,
-890669, 2709588, 4306779, -5603322, 4661114, -9807021, 5657009, 2026151, 295279, 4126390,
--4891968, -45965276, 41857140, -9073655, -10152766, -16379395, -4811974, -36250596, -67662376, 23325430,
-19382114, -3008088, -13977434, -27577986, -4585952, -8570607, -14685030, 26623966, -60512868, -25867514,
--31961536, -9543954, -46081776, -4265440, -6968048, -1671279, -7743826, -9358197, 7391102, -474057,
--20408610, -6400575, -487479, -27907086, -14924474, -8243116, 2012192, 21457656, -11038603, 43023224,
--22504554, -3233574, 18079664, -19202798, 11655467, 2440078, -29512868, -44139380, -10830834, 11265699,
-40240084, 17454210, -30842160, -13048111, -88525720, -29626148, -6391448, 18622442, 48063904, -2548526,
--51496656, 2863133, 27963996, -10289131, -2437394, 29654602, 31205622, 71602472, -79115984, -15336791,
-11212549, 20024748, -24972014, -29644402, -42304892, -41997800, -23496692, -19524384, -5500780, -3002182,
--48875656, -20253456, -17913234, 18097918, -9224516, -4813048, 44024488, 33347736, 2676838, -6283537,
--2017024, -27189290, -1207960, 9692667, -19645180, -10521059, 3726421, 12426951, -8326331, -9623948,
--6512244, 13866839, -9170829, 14531485, 1041530, 15007689, 10663330, 10819023, -8260833, 5479842,
--20591684, 10634339, -2705293, 6273337, -18205830, -14093935, -2039036, 4714801, -10248329, 278099,
--23076860, -4035659, -2764885, 9894531, 12228309, -14678051, 30142080, 642098, 11189464, 6722698,
-21840446, 21905406, -1055488, 13941464, -26118232, 6114423, -10652593, -62904092, 14060112, -10879689,
-18409840, -17497696, -17999134, 1177895, -26393648, 4315906, -26610544, -696858, -4748623, -10545218,
-12602508, -19929186, -25901338, -23702314, -30391188, -5243618, -3438121, 33362770, 7295002, -24664386,
--36511516, 4587562, -893890, 8469139, -7211250, 20133196, -24048058, -9709310, -33721936, -21711596,
--9780714, 907312, -14304389, 34797288, -12351789, -30135638, 9179956, 36121212, 26254598, 10549513,
--25808458, -16953846, -2731599, 32774896, 63065688, -795643, 12327630, -12333535, -61920008, -13796509,
-5516886, 23099408, 52655764, -29432874, -35872640, 20775294, 9867150, -12636331, 1578401, -19871740,
-12054363, -52468932, -6102612, 2782602, 12607876, -31718334, 36265632, -51318416, -58244588, -53910428,
-27036820, -11228655, 51117092, -71570264, -31161062, 5528160, 72803992, -6050535, -13033615, -40285720,
--14736570, -4875325, 35089344, -3168075, -203474, 1916629, 6060736, 516470, -563178, -15352897,
--12967580, 16591996, 7368554, 1861868, -38190848, 9397925, -9840307, -4680441, -19777788, 726386,
--1789928, -3772055, -44921600, 3993783, -9947681, -5298916, -3898220, 7459285, -156229, 2625836,
--308164, 118648, -143881, 57982, -16378321, -3319473, -10536629, -9189619, 7823283, 7997766,
--13133473, 361851, -9353902, 12093017, -4516695, 37345816, 11457899, -66524748, -11754252, -45882600,
-20562692, 3889630, -91495152, 6295349, -28106266, -59261960, -46082852, -67636608, 41965052, -20599736,
--53208740, -23896124, 17389248, -31704374, -27335320, -21332028, -12619688, -23522462, -23338852, -43174084,
--31194884, -59251220, -33368674, -30104500, -9862856, -27861990, -5614059, -12984223, -676994, 2369211,
-8032663, 16743393, -16227997, 13951664, 1830193, 30594126, 13427142, 19165218, 19365470, -55489904,
--14463302, 44837312, -7498476, -27509266, -31032750, -22939958, 18069464, 72281080, -4606353, -892816,
--48185240, -49149996, -10233833, 10388989, 43290048, -2755759, 39475044, 14766634, -47327320, 85985784,
-1830730, 66966056, 357019, -16802986, 36027796, -47805672, -61877056, -39533028, -137296144, -83176336,
--27164058, 63257352, 38845296, -54899344, -36097588, -84030496, 42000484, 56057912, -42880416, -42805256,
-10095321, 37150392, 52669720, 15010374, 30285962, -27676232, -15216532, -20771536, -31878322, -12790413,
--2736431, 3463891, 1471563, -17111150, 2892661, 12356621, 4059818, -2326799, -12552042, -8136816,
--14327474, -4912369, -21245592, -4086662, 13310104, -20285668, -33665028, -4420595, -22049288, -14561550,
--2485712, -27980638, -21925808, -5163088, 13782013, 14776298, 15883863, 322659, -12066174, -1352378,
-5224291, -6565932, 21299816, 1780801, 15731391, 1731409, 69793, 16452946, 12228309, 18410914,
-38111392, 24876988, 28465970, 24698210, -23368918, -56748868, 65997004, 63108100, -39907224, -51781200,
--240518, 56625924, -6137509, -3287798, -17640504, 49516140, -5487895, -13216151, -1203128, 13674639,
-25426744, 680215, -19085760, -21729314, 30558692, 2267206, -13124883, -32678258, 18586470, 10249939,
--3707631, -25757992, 8107825, 11078868, 9207873, -16294032, -9765682, 2873333, 25218974, -7420093,
-9066139, -37089192, -10307385, 53687, 24436216, -51628192, -9208410, 5015448, 37171868, -17866528,
-5777268, -26385594, 3612068, 10911364, -18126910, -13841069, -2133525, 6026376, 11349988, -11777337,
-814433, -46018964, 24916716, -7704635, 43119860, -26738856, 19248970, -18204218, 20012936, 3721052,
-13429289, 11349451, -33462628, 37852620, 7508140, 21829708, -36934036, 10251550, -9378061, 5853504,
--10512469, 1445257, -2536178, 5015448, 12577812, -1996086, -14749455, -8812199, 3800509, -2018098,
-952409, -5782637, -14367202, 4795331, 3848828, -4496294, -4049617, -301185, -4488241, 643171,
--7803956, -285078, -3800509, 6431714, 3799972, -2718714, -5787469, 1974611, 181999, -5145908,
-3756486, -15827491, -121333, -1889786, 7054484, -303869, 18214956, -12114492, -12257837, -4220879,
-9625559, -13114683, 19536732, -16440061, 8298951, -8081518, 17810692, -15962783, 19593640, -11164231,
-15322296, -13869523, 23807004, -22436910, 17243756, -5196374, 12979928, -12099460, 12754442, -13692893,
-14385456, -13771813, 11541114, -9204652, 12751758, -9868761, 10635950, -9786083, 3100967, -3188476,
-6408628, -4757750, 5177583, -4076998, 4045859, -2652142, 5296769, -19353122, -43012488, -57189100,
-41679972, 27649388, -32624572, -46478524, -22788560, 21502216, 11264625, 28607704, 30787400, 6025839,
--15557445, -4538707, 10755672, -10604811, -891206, 6365142, 1723356, 17238924, 12031814, 5222144,
--15548318, -581431, -9638980, 10001905, -16290274, -14095009, 11782169, -3758633, -6648610, -6505802,
--11335492, -15503758, 1156420, 12658342, 11522860, 9684078, -3710315, -12783433, -11133629, -7766375,
-13776108, 18778134, -8783745, -13127031, -5709086, 15582678, 8018167, 20847234, -14767708, -5606006,
-8206072, -3930432, 656056, -2234994, 7369090, 4436165, 5946919, 1254131, -14133127, 5837398,
-2594160, -522912, 10894721, -5674726, -2818572, 1884954, -2040646, 1399623, -4110821, 18504866,
-4627291, -1498407, 17608292, 17660368, -17973902, -27180164, -9982578, -18616536, 536334, 12310987,
-3498788, -11135776, -13450764, -3584687, -2610266, 10698227, 5090073, 6667400, 10006200, 6116571,
--5608691, 6193343, 4377646, -13084081, -17548700, 5249524, -4639102, 8722005, 6388764, -9618042,
--2585570, -3268470, -3538516, -11176042, -6143951, -696858, 3518652, 5334887, 14849313, -7401303,
--5548024, 3805878, -3462818, 19608136, -47631188, -125398016, -46098956, 22492744, 65234648, 137780944,
-92198456, 23731304, 34942244, -18410914, -56084220, -93134752, -81039592, -64423972, -18583786, 2482491,
-44819596, 49421116, 105191800, 51074676, 33668784, -2637110, -22430466, -50629612, -26300232, -40938556,
--47225848, -29067264, -24348170, -1809792, 13145821, 39364448, 24320790, 28258200, 25669946, 25964688,
-39031052, 3377992, 27039504, -5008469, -12156905, -32939178, -19644106, -49126908, -72341744, -63189708,
-732829, -10739566, 19822348, 33990372, 18620294, 52427056, 45756436, 66259536, 37698000, 44940928,
-2210298, 2221572, -35442072, -57870388, -67656472, -81190992, -53390200, -66349728, -5597953, -250182,
-31928250, 33521146, 80197776, 63027036, 89585504, 36383204, 41872708, 17485886, -396748, -53451404,
--87235080, -58386324, -69696584, -43393128, -47201152, -4392141, 7275675, 27861990, 36508832, 49514532,
-50501300, 48601312, 31788126, 34808024, 9033927, -6285685, -11977590, -39158292, -35747548, -46886012,
--33174864, -46868832, -35757212, -3709241, 8346195, 24740086, 37287832, 33309082, 34276524, 56542172,
-20436528, 34531536, 26462368, -35618164, -64539936, -27949500, -56913148, -35844724, -19550154, -4046933,
-5035313, 18134962, 32790464, 22864258, 35276712, 22429930, 19188304, 7769596, -2204392, -20501490,
--6782290, -9608916, -36036388, -33621540, -9318468, -3789772, 1864553, 11841225, 13784161, 17557826,
-13964012, 13880797, 5147519, 4683662, -265214, -7879118, -3991635, -2893734, -8113730, -12856985,
--4488778, -6484864, -7667054, -1001801, 3180423, 3663070, 5330055, 5941014, 5523328, 2313914,
-1056562, 714038, 734976, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
-7651484,
-815507, -2067490, -2163053, 1333587, -3695283, -53687, -7201587, 5168993, 6554120, 4579509,
-6449967, -7733626, 628676, 1772748, -2756295, -2121177, -1883880, -9058086, -1522029, 5391258,
--9273908, -7535520, 4391067, 3980898, -5958194, -2075543, 3948686, 509491, 4800163, 2059437,
-4999879, -3133716, 958851, 696858, -1324997, 2331094, 1831804, 3396246, 1426466, -1493575,
-328028, 3794067, -1022202, -1719061, -638876, -4578435, -10112500, 6018323, 2921652, -3160022,
-4439923, -1772211, 493384, -150861, 2064269, -2664490, -692027, 5981279, -5626407, -2252174,
-1956895, 980863, -869194, -272730, 2621541, 304406, 2320893, -4006668, 4083440, 2105071,
--5228049, 4170950, 370978, 1514513, -623307, -1549946, -6102612, -1883880, -455803, 3142306,
--804770, 2571075, -1533303, 309775, 765578, 312459, 1821603, -319975, 126702, -217433,
--1235340, -558346, 243739, -658741, 88047, -25233, -280247, 1674500, 1679869, 878858,
-700617, 613643, 217433, 11811, 224949, 97174, -253403, -739808, -836982, 11946988,
--6880538, 2092723, -7604240, 908386, 1771674, -7665980, -9692131, 2413772, -10515154, 2310693,
--2746632, -731218, -6451578, -940061, -7243999, -3726421, 23085, -7663296, 8131984, 2859911,
--12707198, 1200980, -705985, -2305861, -5443334, 2726231, 6583111, 125628, -492311, 6179921,
--3641059, 73551, -2320356, 4093641, -4808753, 1402844, 5774584, -5038534, 5048734, 1772211,
-5461588, -475668, 1232656, -834297, -2318209, 7158637, -8902393, 2045478, -3946001, -1716376,
--1170379, -3244848, -2404645, -7096360, -4466766, -1115081, 4604742, -400506, 1721208, 6452652,
--163746, -5609228, -733903, 194884, 1738925, -2742337, -5906, -5517423, 102005, -2251637,
-1805497, 2855617, 4197257, 1493038, -2393908, -3103114, 4119411, -1392643, -1910724, 763430,
-2283312, 4755603, 563714, 1358820, -328028, 2784750, -559956, -2221572, -1148904, -1103807,
--117575, 1886028, 352724, -133681, -1023813, 1826972, -21475, -695785, -531502, -477815,
--551903, 864362, -384936, -99321, -1078037, -2876554, -9896678, -117038, -5964636, -1882269,
--972810, -6955700, -953483, -1620276, 3450469, 8112120, 8157754, 970126, -3489124, 3262565,
--7904888, -1130113, -3026341, 2755222, -11779485, 4158602, 1992328, -430034, -3391414, -5077188,
--2323577, -4188667, -3606162, 2203318, -791348, -4514548, -1320166, 914291, 7686918, -296890,
--7772817, 608275, 3342022, -97174, -2449205, 644782, 2921652, -8442832, -660888, -3671123,
-5927592, 3611531, 1001801, -7805030, 878858, 3006477, 4782446, 4478577, -5133560, -2412161,
-229244, -1603097, -1611687, 4172024, -2592013, 2553895, 697395, -3279745, -743029, -4505958,
-5425618, 2039036, -5366562, -3699041, 903017, 2846490, -4257923, -5366562, -915902, 266825,
--3571802, 768262, -1467268, 1811403, -3404299, 5058935, 2707977, 3813931, 1088237, 503585,
-3429532, 4642323, 540092, 1319629, -444529, 660888, 77846, -192737, 517544, 391379,
-537408, -732292, 25770, 357556, -259846, 82678, 1546188, -899259, 352187, -1076963,
--864362, -721555, 158914, 587337, 394600, 54761, -1002875, -663036, -16843788, 5437429,
-4862440, 8147016, -2122788, 5113159, -14529337, -3979287, 4542465, 530428, -7191386, -1881196,
--2399276, -12731357, -5164162, 1279363, -593242, -9080635, 5655935, 8039642, -8277476, 6263673,
--10837276, -3695283, -981400, 3714610, -68719, -4403952, 2960306, 1466731, -733903, 4823785,
--2352568, -3132105, -983548, -1794760, -3215320, 4743792, -3668439, 1331977, 3552475, -741419,
--2843268, -5333813, -657130, -3811247, -1170916, -4431333, -1206349, 9802726, 188442, 5953362,
--5493263, 4992363, -1578401, -8041790, -4747013, 4424353, -2929705, -4099010, 2917357, -4816806,
-3982509, 1056025, -1488743, 5205501, 4704600, 2063195, -5195300, -5885716, -418759, 7792145,
-1540283, 1165547, -4440460, 1134945, 2794413, -5977521, -2193118, 1918240, 4149475, 2045478,
-3511136, -217970, 23085, 1278290, 155693, -689342, 202937, -528818, -762357, -2655901,
--2117419, 622770, -1277216, -774705, 879395, 381178, 641561, -185220, 1071594, -718333,
-45097, -947577, 4295, -1145683, 557809, 173409, 766652, -1488743, -9048422, -8603356,
--5699959, 1022202, -1484448, 3468186, -3143916, -34360, 580894, -2596308, -1010928, 2118493,
--2574296, 9979893, -6614250, 4599373, -1766305, -727460, -4707821, -1325534, -687732, 7263864,
--5034239, 610959, 1371705, -7210713, -4426501, -4939750, -4206921, -8352638, -2908767, 2944200,
-5588826, 3525095, -6679748, -9402220, -2101850, 241055, -4811437, 827855, -3284576, -4927401,
--11630235, -5868536, -8166344, 4632659, -2148021, 3755412, -4711579, -11339787, -6036577, 511638,
--2348810, -3752728, -1734093, -4494147, 5982890, 493384, 3462818, 4651450, 1141388, -242666,
--3965329, 125628, 5057324, -929860, -3830037, -5289789, 8355322, -7041599, -9812390, -6944962,
--4021163, -5472862, 6064494, 9707700, -7826504, -5413270, 1148904, 4684199, 7224135, 5703717,
-4441533, 4381404, -1619203, -1985886, -2262911, -2341831, 1750736, -1453846, 439697, -1763084,
--2809446, -1174137, -2037425, 1409823, -1291175, -2508261, -1486059, -1468879, -2521146, -2781528,
--1759326, -737661, 497679, 445603, 1237488, 117575, -4293894, 457414, -701690, -1753957,
-451508, -788127, -1330903, -2828773, -2342368, 32212, -40802, -980326, -1122597, -43487,
-2309082, -18480708, 5698885, -1313723, 3266860, 10126996, 3974455, -2514703, 3426847, -7633231,
-4712653, 5524939, -10069014, -2159295, -5099737, 5668820, 4937065, 7695508, 8934069, -11621108,
--5984500, 1904818, 9972914, -3794067, 4635881, -11111080, -3355980, -3903052, -2357400, -6730751,
-1663763, -11001022, 7614440, -2167885, -1952063, 5555004, -332860, 1261110, 5913096, 151398,
-4840428, 3233574, -1370095, -1917166, -653372, -7727183, -5657009, -7061463, -444529, 14652281,
-3406446, 2826089, -342524, -2057289, -120796, 8752070, -1871532, 2732136, -16902844, 15546171,
--3767223, -2788508, 896574, 9517648, 3470334, -1605244, -5793911, 16658031, -3211025, -213138,
-5343476, -4233227, -23622, 2378875, -3751654, 3281355, 3272765, 13754096, -6847252, -8633421,
--1581085, 4108673, -5177046, 1143535, 3563749, 1126355, -3022583, 1352378, 3654480, -2314451,
-332323, -3950833, -1231582, -1170379, -3211025, 4213363, -3053722, -2607045, 1937030, -134755,
--3621194, -340376, 884226, 1547799, 185757, 1823214, -1307281, -1137093, -1063541, 1220308,
--1332514, 2179159, 249645, -938450, 1013612, 2275796, -51003, -1050120, 7998303, 4487167,
-8900783, -3558381, -2114198, 5130339, -8207146, 7393250, 8436926, -4223027, -707059, -13249437,
-632434, 4566624, 3696356, -2801929, -9012989, -18289044, 299037, -3104725, -8677981, 2030983,
-5841156, -7937100, -3380139, -8657043, 4387846, 503048, -1285269, -2874407, -3751654, 9346386,
-10902774, 4245039, 5197448, -2421825, -5466957, 15203647, 3784403, -2584497, -8919573, 6585259,
-279710, 8745627, -765041, 10806138, 5408438, 7564511, 6398965, 3265786, 8414378, 10500121,
--294205, 1947768, -3343632, -100395, 5733782, 2405182, 3121904, -9270150, -3398930, -1948305,
--8071854, -7716446, -5080947, 4337917, 8927626, 11671037, 15267535, 3408594, 1344325, 12306692,
--4890357, -9254044, -3216931, -4679367, 7969312, 6518150, 2503966, -8761733, -2378338, 1583769,
-1287417, -1688459, -4031901, 1259499, 1046898, 5099737, -1202591, -2785286, 603980, 1011465,
-1261110, 121870, 90731, 1035624, 2345052, -1614908, -1581622, 184147, -179852, -2276333,
--508417, -2911451, 3240553, 1069447, -2189360, -58519, 2207076, -1107028, -168041, -1712618,
-993748, 1186485, -744103, 2827699, 2149094, 14127758, -13378823, -6286759, -1789391, 5417565,
--12514998, 7927973, -12329777, 6081137, -28991, 6451578, 10211822, -4168266, 9327595, 10198937,
-9698573, -5608154, 8182450, -8792335, -7007239, -1082332, -5413270, -78383, -4653597, 8014946,
--5917391, 1768990, -5841693, -10266582, -4778151, -2157147, 12427488, -10404558, 9790915, 4311611,
--14409615, 16546898, 4086662, 1851668, 11629161, 2069101, 535797, -6573448, -19864, -3668439,
-13259101, 5599564, 9298604, -3611531, -2177012, 6397354, 11047193, -11527692, 11447698, 2093797,
--1843078, -2145336, -10848551, 5242008, -5111011, 2216740, 499290, -9843528, 3342558, 8343511,
--7558069, 5294084, 3481608, 11676405, 1257889, -783295, 7101729, 10211822, 847719, -5852430,
-6871411, -7898982, -4099546, 2111513, -3183108, 2136746, -2548526, 1018444, 4430796, 3227668,
--3207804, 2820720, -1642825, 2274185, -2246805, 7110319, 734439, 6788733, -797253, 1702955,
--1416802, -587337, -2149094, 4302484, 1824287, -3544422, 3724274, 4311074, -459562, -592706,
-2648921, -187905, -205622, 3588445, -92342, 880468, 2334852, 1514513, -539555, 2739652,
--2250563, -419296, 546535, 739271, 628139, -157303, -306016, -2733210, 1316408, 4057134,
--11404749, -8158827, 12411382, -15892990, 4009352, -8457864, 9449465, -10094784, 15433965, 5356361,
-1496259, -13382044, 6826851, 11343545, 2997887, -6874632, -4473209, -3930432, 10524817, 5734318,
--14685567, 2088965, -10390063, -560493, 1189706, -8866960, 11642046, 11700028, -5306432, 2576981,
-7926899, -9666898, -1474784, -2965138, -8019241, 17065516, -6199786, -3796751, -8589935, -14324790,
--2279017, 283468, -4960151, 2149631, -11874511, 1065689, 833224, -2359548, 9377524, -1935420,
--7304666, 3821447, -11811, -5440650, 4679367, 20234664, -4050691, 4836133, 1095217, -13704167,
--2239826, 12275553, 5515275, 12187507, -1253594, 7058779, -9695352, 4377109, 4274566, 1461363,
--8242042, 7644505, 2683818, -21330956, 1658394, -3825742, 14280229, -5451387, 11086384, 10310606,
-8252243, -986769, 3162170, 522912, 824634, -1352915, -2362232, 5621576, 2244657, -34360,
--3711926, -5133023, -1214939, 2261837, 3615826, 2643016, 4641786, 210990, -1268626, -1870995,
--1508607, 1733019, 2770791, -204548, 2183454, 1493575, 393526, 2068564, -398895, 2161979,
--3504693, -4260608, -5699959, -208843, 2573222, 1238024, -2686502, -905701, -1887101, -2002529,
-3458523, 1131187, 1529545, -24959128, 28223304, 3328600, 11141145, -20476256, 11180874, 14549202,
--16765942, 6389838, 8303783, 6423661, -10832981, 1422708, 1914482, -3656628, 6328098, 13032541,
--10459856, -8705362, -3182034, 11047730, 9556302, 13510893, -649077, 5706938, -10065256, -2637647,
--2612951, 2209224, 6353867, 17268990, 10285373, 6277632, 3286724, -573378, 8252780, -3054796,
--14816027, -2878702, 4359392, 4731980, -8669928, -6569153, -10737955, 2073396, -850404, 3769908,
--7038378, 12607340, 12328704, -10674604, 25381110, 1162862, -2329483, -145492, -5280663, -1143535,
--1622424, -10263898, 172872, 30065, 6739878, -21357262, 5234492, -7570954, 15516106, 18734110,
-8112120, 7783018, 3503083, 1249836, 16916266, -3173981, -12504797, 10702522, -5630702, 2868501,
-8358007, 15237470, 2143726, 1502165, -12197170, -532039, 3571265, 9671193, -4201015, 5252745,
-2536178, -3704409, 9825811, 1656247, 4406637, -2864206, -903554, -2838437, 482110, 1127966,
--1495186, -87510, 2961380, -1635846, 3001109, 2017561, -2090039, -224949, 1395864, -887448,
-241592, -2015413, -6623377, -1907502, -1005559, 6924024, 8578660, 838592, 1265942, -2467459,
--2864206, 718333, 940598, -3590056, -2779918, -1867774, -1618129, 2298344, -3965866, -196495,
--2913062, 10264435, 1964948, -7147900, 6655052, 9988483, 8675834, 5475010, 10350334, -12595528,
--8036421, 1397475, -11395085, -2847563, -1945620, 2500208, -2961380, -7403450, -9302899, -5599027,
-4533875, 7790534, -13729400, 2866891, -1475858, -400506, -16535087, -14850923, -2624762, -11528229,
-5381057, -13142063, 799938, 6972343, 10041097, -8975945, 11940009, 3016678, -1228361, -2685965,
-17729624, -4996658, -923955, -14324790, -8067023, 11595338, -925029, 4361003, -13780403, -15093589,
--4150549, -8538932, -1515587, 608275, -5587753, -7167227, 4198868, -6657736, 548682, -9788230,
--5296769, -301185, -16078747, 1424319, 10532870, 1959579, 5519570, 11447698, 19687056, -19079318,
-3441880, -11794517, -11436961, -6440304, -8695698, -5629092, -5140539, 19232864, 10594611, 10619844,
-2199560, 3078418, -13964549, 623307, -4928475, 2172717, -6070937, 8478265, 11256572, 1043140,
--5116380, -3525631, -9635759, 813896, 5908265, 3216394, -2338073, 6043019, 2935610, 6400038,
--1394791, -1249836, 1054951, 4140349, -2686502, 1729798, -3948149, -5546951, 3959423, 1359357,
-814433, 814433, -7470022, -4511863, -38655, 5670968, -4835060, 2803003, -6478422, -2239826,
--1034550, 2222109, 1559073, -2005213, -1579474, -8690329, 19815906, 21010444, 23088134, -17266306,
-1203665, 12422656, 9773198, -10113037, -19287624, -2301029, -2920041, -15191299, -8800388, 28651190,
-2208687, 1898912, 10695005, -1308354, 4545149, -4022774, -11439645, 7438884, 6225555, -15484431,
--21962852, -17047798, -13542569, -12920335, 1189706, 3672734, 6475737, -8615704, 8333311, 1941325,
--4238596, -9114994, -347355, 437013, -14010183, -11002632, 1561221, -2592013, 1864553, -8532489,
-6800544, 2060511, -8010651, -17161616, -6799470, -5840082, -22774600, -7237020, 2081449, 11163694,
--1132798, 13232257, -2394444, -1192390, -19415936, -4190814, 7568269, 3558917, -32458678, 9217000,
-2762738, -9111236, -5541582, -9501541, -10686416, -499827, 445603, -10355703, -3358665, 6487011,
-9408126, 14811732, -11426224, 469762, 8359080, -453119, -24830816, -19833086, -272194, -5303748,
-6162741, -257161, -6140193, -8949638, 4052839, -2630668, 3678103, 10058277, -316217, -5085242,
--8486319, -15567109, -5327907, 871342, -2605435, -2686502, 976031, 941672, 6849399, -3603478,
-682900, 2516851, 1328756, -5670968, 610422, -1494112, -13516262, 1306207, -5022428, -6157910,
-2156074, 1587527, -4115653, -1352915, 4827007, 1343788, 1263257, -5050345, -5672578, -2053531,
--450972, 227633, 3434900, 7945153, -6739878, 22556632, -19305342, -11885248, -3925063, -36501316,
--19067508, -100395, -23269596, 18067316, -8185134, -7541426, 2065879, 41372348, 19963008, 1278290,
-8491687, -1925219, -11108933, -1107565, -17185774, -12436615, 5908802, 6001680, 7416872, -11943230,
-15289010, 9358197, 17297980, -17589502, 2818036, 25642028, 2389076, 1046898, 5051419, -24598352,
-6267431, -6220724, 4034048, -9909026, -23232014, -1428614, 9370545, 11429445, 2946885, -3635153,
-1671279, -1073205, 7678328, -17544404, -25535192, 4554813, -9332964, 15222438, -6115497, -6353867,
-19877646, 4466766, 8536248, 1575716, -16843788, -6913824, -2035278, 9063992, 26222922, 20184736,
--6053220, -23218594, -505732, -2685965, 8566312, -14323179, -17954574, -10197326, 8459475, -18185428,
--2867965, -15262166, 63351, 12263742, -408559, -22866406, -5058398, 3011309, 5975374, 2828773,
--14279693, -9622337, -15280420, 2343979, -3236795, -6643778, -5126044, -6640020, 1252520, -2780455,
--6366752, -1813013, 4426501, -42950, -247497, -7769596, -228707, -745177, -4978941, 390842,
-9482751, 3168612, 1686312, -9829570, 3765076, -1102733, -1183264, 1518808, -285615, -214748,
--2071785, -5861020, -6568079, -5367636, 6553583, 5749351, -2744484, -14592151, -5457830, -5430986,
--1258425, -41510860, 16047608, 13171054, -6079526, -27430346, -6040335, -10557030, -11111617, 12123082,
-14975477, -1513439, 4107599, -31166968, 11005317, -39012800, -9855876, -3364570, 7798050, 19668266,
-31217432, 12975633, -18034030, 4229469, 21818434, 2932389, 6654515, 11860015, -18330384, -7048578,
--2872796, 5604933, -12906914, -6918119, -3897146, -9674414, -7385733, 13290239, 13028246, 3381750,
-1106491, 22473416, -4195646, 10519986, -25336012, 16864190, 4835060, -22945862, 2374043, 7417946,
--21589726, -2738579, -21114596, 7125351, 8929774, 9552007, -14207752, -1165547, 14235669, -11784853,
-192737, -1849520, 23481660, -13824963, 17306570, 8818642, -21827560, 19252728, -16064251, 12414603,
-16297790, -16367583, 9300752, -13953812, -17418240, -26227218, -21911312, -23976118, -5715528, 4362076,
--7211787, 21100638, 21864068, -9158481, 19272056, -2876018, -4029753, 24551644, -5418101, -16322486,
-11439109, -2381559, -12782360, -9774272, 9702868, 1802276, 5042829, 7745437, 1382443, 6389301,
-9761387, -2508798, 10941966, 7597797, 5471789, 6300180, 938987, 3909494, 9302362, 7573638,
-9430674, 1511829, 7835094, -1349694, 569083, 6922951, -3346853, -12123082, 5820218, 2075543,
-40802, 378494, 5557688, -10708427, 5589900, 7757785, 6216429, -7048042, 6820945, -32802276,
--15469398, -16103443, 28835336, 943282, 10826002, -4606353, 40860708, 6510097, -27166742, 2065879,
-30043296, -11030013, 6751689, -4880694, 2675228, -17447230, -23551990, 37554656, 26757646, -10200010,
-20556250, 8115341, 26716308, 30354144, -8776229, -7088307, 27011050, 19807316, 2266132, -8455180,
--13310641, -13987098, 12545599, 23811836, 11241540, -4279398, 16040629, -8345122, 15227807, -6727530,
-22171158, 39197484, 29880088, -31832686, 14639396, -5386426, -12920872, -376883, 11173357, 10775536,
-71567576, -7178501, -686658, -11599633, -12633646, 13968307, 25890600, -6287296, 19694572, 16809428,
--2196339, 635655, -13864691, 14216879, 11966853, 38081328, 38737384, 47022376, 19566798, -11959336,
--9678172, -21556978, 21126408, -31903018, 23147726, -29944512, 17661980, -10540387, -17993766, 13070122,
--48506288, -38367480, 7030325, 7574175, -13859323, -13438953, 22671522, 11315628, -20798380, 3124589,
--4716948, -11375221, 3758633, 5866389, 1806034, 5944235, 6977711, 12258910, -5640903, 2413235,
--6826851, -12109123, -7393786, 2935073, 1076426, 16802448, 3601867, -4029216, -13573707, 2186138,
--5369783, -4343823, -6027987, 4722854, 10133975, 3614752, 8797704, 7390028, 11625403, -4850629,
-8861054, 1202591, 2595234, -762357, 775242, -6789807, 8172249, 19503446, 10465225, -2021856,
--2152852, 15508590, 12999792, -11950747, 3837553, 7813083, -5992016, 22433152, 5067525, -52586504,
-12059731, 6888591, -39119636, 2302639, -6713034, 1619740, 14326400, -1902134, -36158256, -6426345,
--11530913, -2032593, 25589952, 30720828, -17498234, -4416837, -14689862, 7556995, -27710592, -53739704,
--19263466, -16238734, 2807298, 868120, 24417962, -36745592, 17485348, -8560407, -4079145, 15066745,
-7066832, 25523380, 5802501, 9810779, 27307402, -31255550, 38945152, 30910342, 16108275, 28987808,
--11296838, 10984379, -27211302, -5449240, -13711683, 24001888, -21338472, 5099200, -45788648, -56791816,
-37853696, -1804423, 24412594, -17289390, 16149614, -11317776, 3479997, -6521371, -37211060, -11822434,
--24886652, -11872900, 13427678, 55043228, 19643570, -48721036, -11041824, 12786118, -11307038, -7384123,
--32171452, -16727287, 24790552, -9409736, 5976984, 4765266, -20062330, 12549358, -2958159, 849330,
--41140956, -12105902, -905701, -18928458, -10689100, 1413044, -27851252, 2750390, 6197101, -22669912,
--17741974, -31947578, -23730768, -2379412, -13156559, -6470905, 766115, -9291088, -9010305, -3927211,
--14067092, -6934225, 1774895, 9342628, -12410845, -4643934, -21228412, 7267622, 5178657, 12241731,
--8807904, 12732967, -27457726, -1869921, -34897, -2180770, 4158065, -4720169, 2871723, -12998182,
--13390097, 3850975, 3308199, -32236414, 17130478, 17114908, 30323006, -14668924, 11165841, -16872780,
--19628538, 8879308, 40237400, 65157876, -3975529, -4220342, 1447404, -1349694, -28916404, 45624364,
-21946210, 24314884, 18744848, -13086765, 15882789, -25566330, -36870684, -6283001, 27740120, 18089328,
--13146895, -8437463, -1762547, 22480932, 1015760, 16413754, 16053514, 26602490, 8904004, -16580721,
--15770046, 15252503, -17762374, -13197898, 7913477, 29211146, 26903676, -30572650, -23664196, 15917149,
-18931142, 57332444, -13228499, -31067110, -32244466, 27487790, -20616380, 25941066, 29272350, 58992988,
-125030256, -27844810, -15879568, -46733004, -74512312, -23676008, -37502044, 4406100, 51884280, -7515656,
-27497454, 39262444, 25706990, -14367739, -46141372, -75521096, 42256036, -2865280, 48056924, -24568824,
--65544960, 22999550, -38831872, -51652352, -26540214, -16362752, 16522739, 16365436, 29525216, -2080375,
--14323716, -2166274, -1177895, -26666378, -25928180, 13328894, -9167071, 26584236, 24131810, -11404212,
-24024436, -18792630, 541703, 23789824, 2554432, -36718212, 9838159, -18428094, -3224447, -5838471,
--4938676, -27031988, -22236656, 4456566, 32223530, 34676492, -32350768, -3688303, 39342976, 37815576,
-44560, 8093329, -35633196, -18763102, 5273146, 20973936, -30807800, 8035884, 23985782, 12215961,
-9068823, 2893197, 15121506, -25233470, 4694936, -23002234, -63432372, 15969225, -26503706, 26326002,
-3870839, 14697915, 12883828, -58030376, -41111964, -20365662, -12785581, -13492103, -23716272, -7380365,
--39400956, -25100326, 18953154, -25660282, 48831632, -36335960, 3738232, 10059887, -3861713, 4290136,
--2095407, 11662984, -11324218, -12212203, -2112587, 8737037, -1537598, 20936354, -19766514, 4452271,
-30601642, 9797357, 4589173, 15573015, 1931662, -12475269, -7940858, 24821690, 5568962, -39260832,
--17403208, -31859530, -14499810, 42194296, 39355860, -40668508, -4498442, -46238544, -11142219, -3856881,
-10660646, 23163296, -37868728, 25246892, -32239636, -5469641, -21842594, 48581448, -9825811, 34259880,
-32057636, 71331888, -32869922, 29407642, 4787815, 27939300, 9760850, 21310018, -35756140, -32862942,
-47662864, 2303176, -1799591, -33777772, 38481296, -13052406, 19740206, -35553204, 74673376, -40039296,
-41539312, -50127100, 19789062, -37791416, 20855824, -34821984, 25789132, -22069690, 15146202, -12338367,
-8338679, -18787798, -11599633, -8921184, -2346126, 6584185, 1148904, 5297842, 428423, 5202279,
--2842195, -9628780, -15175193, 6816650, 7529615, 2117956, 6896107, -5738077, 2681133, -4566087,
-2818036, 25597468, -6494528, -18514530, 2578591, -10534481, -19695646, 6146635, -10773925, 7740605,
--9042517, 6408628, -17218524, 6849936, -22252226, 31101468, 4785668, -57204668, -25195888, -35458712,
-1929514, -8322036, -77232104, -35095788, -20277078, -41168336, -25653840, -77829104, -65706556, -12037183,
-27894738, -42905648, -25666724, -6378027, -36561984, -8515846, -3070365, -35390532, -9557913, 7046968,
-1577864, -46920372, -26770532, -26840862, -14992657, -16732119, -4955319, -32635308, 26874148, 17453674,
-38438348, 55988120, 48664664, 12287365, 51459612, 20509006, 9004399, -23156854, 17885318, 18611168,
-14668924, -6197638, -17915382, -8414378, 12712029, 22761716, 117880208, 15800111, 24100672, 17142288,
-48061220, 18474802, 42179800, 77001248, -37512244, -75856104, 9154723, 48088600, 86057184, 38024420,
--74822624, 9839770, -18871012, 108656768, 79860624, 97182224, 89071720, -77888696, -51504176, 63425392,
-76182520, -22580790, -44769128, -53954988, 120296664, 80039400, -5525476, -104097656, 24522116, -4274566,
--23455354, 28296318, 7315940, -9382356, -22682796, -739808, 15927886, 44486196, 31411780, -27064736,
--11237782, -7518341, -6230387, 24954834, 17882096, 19268298, -272194, 10153840, 40736692, 27593554,
-5207111, 16091095, -11943230, 20159502, 26041998, 34547644, 44014824, 34377992, 26060250, -163209,
--6766721, -9570261, -3775276, -20331302, -11695196, -9976135, -25400436, -32472100, -37142876, -63242856,
--36386428, -23783918, -38579008, -70343512, -49387828, -41647760, -48752172, -57642220, -61092688, -21170430,
--23972896, -33595772, -19364934, -21106544, -14496588, -19844896, -19596326, -19148038, -18945638, -55890948,
-89661200, 72392208, -62634044, 14002130, -1418413, 10076530, -2406256, -6205691, 23117124, -23205708,
-22583474, -9205726, 124554, 8892730, 7312719, 8019778, -18790, -13176423, -8354249, 14382235,
--11798275, -1564442, 13962939, -7642895, -7870528, -11106249, -20156818, -20383378, 14937896, -7488276,
-5619965, -12861816, 2647311, -27196270, -4794794, 7320772, 17552458, -11202885, 3920768, 11835319,
-19225884, -4713727, 15945066, -12992276, 50530828, -18873696, 17519708, 2152316, 9991168, -9621264,
-13518410, -5546951, 36074504, -6063957, 11293617, -25289304, 33127082, -17550846, -1156957, -5105106,
-4989679, -10077067, 19988778, -23081692, 18802830, -21187610, 27380416, -28686086, 34670588, -23186918,
--12135430, -14657113, -6988986, 1059783, -22429392, 14442364, -13194676, 12614319, 1290638, 17551384,
-6991133, 12015171, 22058416, 9032316, -7310035, 5480915, 5597416, -3511673, 4190814, -7241315,
-8161512, -4265977, 326418, -7126962, 15644955, -15631533, 1736241, -1856500, 12768938, -2867428,
-2901251, -3419331, 5355824, -7717520, 5899675, -6699075, -2837900, 11158862, 10989211, -3795677,
--10209674, 6240588, 9806484, 9411884, -8745627, 7152731, -5884642, 5175436, 1939178, 1522566,
--9356049, 9811853, -3345780, -13223667, 10919954, 8975945, -7709467, -2566780, -1132261, 1789928,
--7387881, 10380936, -9762998, 2929168, -10705206, 9300215, -7476465, 7775502, -5807870, 9751723,
--11068131, 11932493, -10848014, 5125507, -8821326, 8772471, -10209137, 7920457, -6080063, 10378252,
--11773042, 12176232, -10335302, -21983790, -45426260, -49982144, 42490112, 10733660, -13156022, -67734320,
--27228482, 37728068, 7690676, 27246198, 30393336, -10982768, -19103478, 889595, 7201587, 5575405,
-5037997, -11997454, -8805757, -6673843, 31675, 18301930, 9901510, -914828, 4120484, -5310190,
--8862665, -5691906, -4639639, 295279, 5413807, -4204773, 6986838, 7295002, -24871618, -11094974,
--11003169, 13235479, 9245991, -885300, -11573326, -15709380, 13648332, 2957622, 9155797, 12671764,
--23057532, -15413027, 4220342, 18519362, 9393093, -26310432, -16163573, -21388400, -10159208, 5424544,
-4832375, -8850317, 9663676, -4034048, -9186398, 4042101, 8810589, -6643778, 2110440, -335544,
--8202851, -834297, -2885144, -18718542, -18795850, -1246077, -20050518, -15142981, 658741, 5996848,
--4350802, 22053584, 16383153, 9222369, 730144, -2218351, -9822053, 12171400, 6047314, 7059853,
-6954089, -6302328, -2566780, -568009, 3567507, -11705396, -14076755, -2047089, 6274411, 818728,
-7929047, 5385352, -7305203, 2324114, 4397510, 2951180, -2299955, 7771207, -9731322, -5949067,
-18129594, 10269267, -11022497, -8446590, -5564667, -10008348, 11054172, -470836, 1672353, 4930623,
-3363496, -217970, -306016, -7483981, 4823785, 2716567, 6590091, -3741990, -942745, 4103305,
-17636210, -43859132, -119562760, -45428944, 27266064, 57630408, 135865920, 79868136, 21749714, 28464358,
--23499376, -43932684, -96171832, -64838972, -49699752, -16244640, 19762218, 52981104, 41190884, 51434380,
-49704584, 33699388, -11311870, -39169028, -33899640, -34845608, -27991912, -40399000, 12461848, -25531434,
-1924682, 18824842, 34791384, 19636590, 32570884, 42917460, 855235, 12816182, 1003949, -645319,
--23916526, -3158412, -21274584, -41620380, -65672196, -36594732, -19995220, 5314485, 5061082, 39090644,
-54299660, 52166672, 62135292, 9049496, 40799504, 16158204, -3609920, -38183868, -37361384, -50787988,
--66627292, -45459008, -51613160, -32715302, 261993, 16028281, 37202468, 59999084, 88428544, 70812200,
-64216204, 34744136, -13167296, -13075491, -34616900, -73785928, -56622700, -93243736, -61241940, -27159226,
--20604032, 29145648, 56052008, 76715632, 54221816, 41464152, 25283936, 28739774, 25337622, -4039417,
--28968480, -27709518, -43621300, -48371532, -38409356, -26340498, -24399172, -23283018, 10753524, 22667764,
-40219148, 47613472, 39157752, 34317324, 19684908, 672162, 1089848, 4420058, -28839632, -49107044,
--20013474, -42891692, -48499844, -1661079, 12253005, 27064736, 28120224, 17882634, 29715804, 17179870,
-23796266, -5028333, -393526, -20816632, -12393665, -11077258, -13642427, -15788300, -12594455, 2056753,
--5181341, -15032, 14536317, 19968914, 12717935, 10924786, -2667712, -3567507, -76236, -367220,
--5999533, -7295002, -1095217, -4362613, -4267587, -2720862, 178241, -4603668, -1415729, 8649527,
-3157875, 3783866, 5685463, 4010963, 1215476, 197032, -997506, -1186485, -715112, -471373,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
-8075613,
-5168993, 141734, 270583, 6361384, 1582696, -3165928, 2160369, 4234301, -2147484, -3509525,
--12622909, 675384, -4248260, 8429947, -4185446, 4228932, 3401614, -435402, 2748242, 4667556,
-1267552, 1095217, -2306398, -2765422, -2153926, -3485366, 3036542, 1823214, -1656784, 2752000,
--1905892, -2782065, -3343632, -1598802, -2644626, 236223, 30602, -478352, 5761162, -3325915,
-4709432, -1691143, -1215476, 3186329, -1978906, 1007707, -1980517, 3493956, -1043677, -9844065,
-2914135, 366146, 1190243, 4983236, 2542621, 381178, -1148367, -3237869, 8419747, -4439923,
-3258270, 1745904, -3520263, 3583613, 1553704, -4097399, 3242700, -4225711, 212064, -407485,
-3690988, 647466, 3857954, -1465121, -8750459, -1826972, -2141578, -4101694, -3748970, -3633542,
-2966212, 1366873, 1010391, 1870995, 1779190, 409096, 818191, -974421, 562104, -704912,
--396211, -2077154, -80531, -654446, 1557463, -103616, -565862, -270046, 113280, -1045825,
-318901, -420370, 535797, -291521, 47782, -1209033, -222801, -1524177, -1043677, 15338402,
--7602092, 830002, -481573, -469762, 3471944, -2784750, -11052025, -10186052, 4760435, -3237332,
--966905, 2573222, 537945, 2539936, 2833605, -4865124, 2587718, 1781338, -3459059, 3991635,
-6019934, -3974455, -1329292, 274341, -6560026, -2978023, 623844, 7772280, -1293322, -468151,
--6536940, 3816615, -33823, -5861557, -2530273, 1996086, -923955, 1101122, -5083094, -154082,
-302795, -2088428, 5347235, 1330366, 1167694, 5170604, -584652, 6725382, -2315524, -8627516,
-3427384, 3329137, -3069828, -1353989, -1098975, 1031866, 338766, 2360622, -2014340, 1550483,
--4733591, -244276, 3033321, -4517232, -572841, 2604361, 791885, -2377801, 1497333, -1808181,
-440234, 4367445, 1538135, -6078990, 7303055, 2727304, 2662343, -657130, 4187056, 4667019,
--2076617, -318364, 1003412, 1181116, 1438277, 1955821, -234076, 139050, 1445257, -234613,
-181999, 903554, 2260227, -389231, 2302639, -108985, 534187, 1173063, 285078, -695785,
--218506, 796716, 766115, -154619, -1067299, -3751117, -8999567, -1111323, 923955, 9847823,
--3808026, 8434242, 2085744, -331249, 486405, 7540889, -1802276, -2117419, -2232846, 5301601,
-10817949, 2800319, -7523172, -10201621, -14488535, 1850057, -3811784, -6119792, -3371013, -9465034,
--80531, -4416837, 675384, 4479114, 4730370, -5416491, -4844186, -3462281, 570694, -8039105,
--905164, 2440078, -3652333, -1363652, 808528, 3177202, -4522064, 1126892, 10535555, -483721,
--542777, -3940096, 4371203, -2006287, 360240, 3311957, 4348118, 6454262, -1065152, 913217,
--1984275, -133681, -1136556, 813359, 10126996, -11325292, 227633, 2145336, 5974837, -2542084,
--3007551, -710817, -2840047, 8063264, -4489852, -10679973, -756451, -3220689, -4471061, 2591476,
--10542534, 3840238, -1143535, -2971044, 195958, 7383049, -2217814, -2844879, -2881923, 3513283,
--3355443, -956704, 615254, -354872, 1270774, 67646, 490700, 2155537, 170188, 525597,
--559420, 1722282, 383326, -404801, -2006287, -1127429, -155156, -1102733, 2054068, 1200443,
--1174674, 1482301, 155693, 174483, -1088774, 519154, -475668, -5369, -16508244, 6166500,
--5163088, 6920266, -6218576, -564788, 4792110, -9549323, -1638530, 2910377, -2597382, 13910325,
--5835250, -1765232, -5566278, -4659503, 7151121, 7945690, 3080565, -9370008, -11300059, 10448045,
-1757715, -10599979, 3962644, 382252, 5018670, -3150359, 4789426, -6347425, 3097208, 10222022,
-4235912, 4371740, 2331630, 167504, -2595771, 2124935, 807991, -6995965, 127775, -2229088,
--5117991, -5135171, -1931662, 4026532, -7348689, 986769, -5311801, -565862, -798864, 2409477,
-4383014, 9223979, 3281892, -76236, 3991635, -4965519, -7252589, -154619, 1714229, 729608,
-8806830, -2026151, -1051193, -2837363, -1219234, 1220308, 4291746, -1188095, 1809792, -4389994,
-7136625, -1897839, -2456185, -1674500, 2333241, -3893388, 151398, 4362076, -281320, -1298154,
-682900, 3455838, 2786360, -583042, 2253784, -1929514, 1440962, -1183800, 584116, 2459406,
--842887, 1026497, 1104880, -1750199, 1755031, 1005022, 424665, -777926, -1508070, -418222,
-1962263, 1226750, -622233, 721555, -324270, 3092913, -235149, -929324, -8236137, -1909113,
--5340255, -530965, 10976326, 7021735, 4910758, -817118, -9630927, 1362578, -6331319, -10208600,
--3378529, 7375533, -5759551, -9050570, 2384244, 794569, -4501126, 985158, 5175436, 1437203,
--12069932, -3409130, 7609609, 8961986, 4476430, -9999758, -3619047, 4580046, -1692217, -2140504,
-664109, 3368865, 554051, 1254667, 10292352, 34897, 6231461, 4833986, -64961, -4613332,
--99858, -2715493, 6141803, -3489661, -5832566, 27917, 9627706, 554051, 9564355, 5162014,
-939524, 6185290, -1027571, 13274670, 1082869, 6573985, 7486665, 705448, -6167573, -934692,
--7381438, 3787624, -5286568, -2958696, -4873714, -3209414, -2333241, 2439542, 832150, 3665755,
--140660, -4212289, -3666292, 1385127, 6840809, -2012729, 1699733, -7321309, 2332704, 6345278,
-9735617, -3340411, -715112, 1619740, -3336116, -244276, 3219078, -975494, 5906654, 396748,
-1350230, 155156, 287763, 2182917, -1431298, -927713, -760746, -437013, 601832, 736587,
--1105417, 970663, -333934, -1172526, -1429687, 490700, -1357747, -892816, -1703491, 833761,
-1184337, -244813, 3328063, -2155537, 587337, -234076, -1886028, 3166465, -914291, -449898,
-9999758, -14951318, -2758443, 12517145, -6220724, 2287070, -9667971, 4254165, 17607218, -2384244,
-923418, -745714, -12453258, 1004486, -802085, 18690088, -5907728, -914828, 8159901, -5151277,
-11573326, -7809861, -1178969, -11807939, 13339632, 185220, -5267241, 171262, 4878009, -6206228,
-9268539, -985158, 8211978, -56371, 4294431, -12904229, -8322573, -6018323, -1951526, 7784628,
--11714523, 6257768, 4814122, 1636919, -4861903, -7047505, 16064251, 3201361, -1844152, 6245956,
--5703717, 3389803, -7587060, -7423314, -3119220, -4981089, 17347372, 5196374, -3475166, -5153424,
--6650757, 5470715, 4485557, 1652489, -6138045, -736050, -2503429, 7432978, 643171, 6015102,
--14055280, 7641284, -1259499, 389231, -1591285, 2480881, -6222871, -2864743, -9759776, -3169686,
-3505767, 5950141, 6239514, 2336462, 2251637, 1481227, -3516505, 2092723, 1392106, -240518,
--2371359, -3866008, 2036888, 1957431, -3007014, 1551020, 171799, -2430415, 1569274, 466004,
--1087701, -560493, 115427, 496069, -1845225, 1275068, 653909, -2799782, -699006, -1427540,
-190052, 2007897, 1323387, -277025, 44023, -1287953, 153545, -1187022, 6329171, 3114925,
-5215701, 1541356, 56371, -1989107, -8012799, -2496450, -5171141, 3144453, -308701, 12030740,
--10127533, -13042742, -3310346, 4041564, -4085051, -3172907, 10225243, 2034204, -5686537, -6548752,
--6790880, 11180337, -5679021, 7546795, -3686693, 8259222, -8302709, 1789928, 12687333, 4323959,
--17376364, 3958349, 348966, -2255395, -1586454, 1743757, -2115808, 1646583, -2874944, 1351304,
--750009, -7786776, 7714298, 7922067, -2420751, 8779987, -7572028, -1343788, -2215666, -3624416,
-9659918, -7028177, -12429635, -6979859, 2281165, -10139881, -9456981, -4744865, -3225521, -6510097,
--587337, 8242042, 8677981, 1294396, 9359271, 2900177, 1214939, 7088307, -7674033, -1381369,
--45097, -6307160, -109522, -6111202, 7298223, -2151242, -1388348, 6068789, -1167694, -1962800,
--1310502, 7253663, -938987, 2506650, -7147363, -2557653, 3924526, -4645544, 290984, 90194,
-741956, -3549254, -2472828, -1885491, 68183, -1961726, -2334852, 694174, -396211, -2097018,
--949188, 231391, -264141, -678605, -744640, -1221918, 332323, -3849365, -2698850, -2604361,
--2588255, -3758, -188442, -940598, 883690, 19327352, -9545565, -9188546, 6222871, 15707769,
-3053185, 14147085, 8074002, 12848395, 5691906, -2403571, -5835250, 4601521, -9605157, -7306276,
-10721312, 8968429, 22405234, -577673, 3116536, -8299488, 8653285, 3920768, -9987946, -2367601,
-12688944, -41339, -13982803, -5647345, -7892003, -2677375, 7798050, 7164543, -5304285, -2570001,
-9727027, -9424769, 4328254, 8199630, 9795747, -5226439, 8432095, -3558917, -12736189, 4504347,
-11689827, -3119757, 3375308, 2863133, -3962644, 1438277, 3503083, -3622805, 1304060, 9479530,
--5574331, -2932926, 8737574, -1860795, -1765232, -14474040, -5128191, -8732742, -14377940, -9666898,
-7218230, -4694936, -6146635, 12477417, 12456479, -3124052, 13397077, 5395016, 8801462, -2446521,
--6928319, 5818607, -7184944, -14323716, -8645769, -3659312, 7080254, 3297998, 11869142, 2129767,
--2561411, -1888712, -8053, 2095944, -3693672, 275952, -2148021, -272730, 2080375, -321049,
-330176, 3881577, -1399623, -653372, 3811784, -2763812, -1443109, -1815161, 1121523, -2028298,
-1385127, 900333, 586800, 2057289, 2558190, 1216550, 4624069, 619012, 3156264, 1132261,
-2368138, 2790655, -2415919, 2233920, 2322504, -1628866, -540629, -179315, -3375308, 1031866,
--9757629, -10438381, 14139032, -2354716, 32300302, -13302051, -6255083, -740882, 7881802, -4502200,
--4399657, -13305272, -15397458, 6956774, 1336809, 21259552, 6886443, -2165737, -2427194, 14124000,
-14413910, -11905112, 8651138, -11371463, 2990371, -4893579, -5866389, -3484829, 2419677, -1843078,
-7484518, 3761318, 8375186, -1035087, -4001836, -7856569, -1526861, 9167071, 815507, -12154221,
--1535451, 2972654, -5200669, 9650792, 8137890, 1708323, 2827699, -26550950, -10181220, 9299678,
--627602, 14927696, 4156455, 16824998, -1893544, -9074192, 8968965, -5064840, 6116034, 1112397,
-24480240, 20272246, 2384244, 5754183, -3344169, 8078297, 8534637, 9263171, 9977209, 16268799,
--305480, 2945811, -6234145, -5392869, 5078262, -7561827, -18843632, -13932874, -337155, 11735461,
--5915244, -10615549, -6130529, -5706401, -649077, -12678207, -523449, 2403571, -98784, -1670742,
--1264868, 1363652, 2732673, -300648, 2055679, -9451076, -5840619, -2985002, -6751689, 646393,
--2450279, -3873524, -2658048, -1547799, 3826816, 1626182, -3629247, 1236414, 8486319, 4435091,
--1818919, -2974802, -3896072, -2193655, -3146064, -6591701, 2420214, -2503429, -559956, 4895726,
-1554241, -889595, 904628, -28055264, 22111028, -651224, 2501819, -7783018, 12390444, -26637924,
--17080012, -5396627, -6851547, -660888, -23883776, 4656282, 475131, -657667, -10914586, -11110544,
-4500589, 15194521, 2342905, -20316270, -4413079, -16638166, 13117904, 8458401, 647466, -7375533,
--3493419, -3773129, 10808822, -1558536, -230318, -2359011, -14718316, 7628399, 10299332, -6179921,
--3302830, 8005819, -16018617, -11680164, -17671106, -5998459, 4434017, -11278047, -5388574, -491237,
--18298172, 5578626, 11275363, 19962472, 2868501, -1993402, 1219771, -13146358, -10308995, 15282031,
--1097364, -5822365, -3619584, -23420456, -12568148, 4574140, -4952098, -2738042, -1831804, 15311022,
--2662880, -14564234, 1162326, 11336566, -297427, -7146289, -146029, 778463, -6020471, -10213432,
-8016557, -18774376, -9293772, -143345, 9069897, -11475616, 7254200, 4804995, 6609418, 7042673,
--7209103, -1823751, 8643085, 1653026, -5285494, 4959077, 7153805, -6687801, 2486249, 6417755,
-6061273, 9521406, 643708, -2908230, -1625108, 1563905, 132070, 4188130, 3529926, 327491,
--862752, -3036005, -1030255, 2100776, 4256850, -7031399, 916976, -1329292, 2924336, 6799470,
-348429, 4765803, -2524367, 3170760, 3899830, 5738613, 4479651, 5602248, -396748, 3224984,
--1011465, 2741263, 14862197, 13649406, 4966056, 23115514, -10306311, -4798016, 3764539, -6029061,
--1759326, 7564511, 24768540, -3971234, 5051419, -132070, -1496259, -386010, 27315992, -13200582,
-14188961, -121870, -17865990, 5956583, -17722108, -10823854, 10290742, -9325985, 7292318, 418222,
-1018444, 12256763, 9833864, -14674830, -16627966, -12494597, -4156455, 4797479, 4854924, 1830193,
-3344169, -19993610, 3112778, -10719165, -25176562, 17211008, -4918275, 16187195, 17311940, 1032940,
-6497749, -9183177, -11183021, -19826642, 4611185, 18246632, 3260417, -7955890, 1125818, -3984656,
-2838974, -10657424, -8706436, -10640781, 1893007, -1252520, -3439732, 11778948, 10600516, 6400575,
-17140140, 1974074, -17929340, 23284092, -16920024, -5170604, -4204773, -4434554, 19517942, -3052648,
--27828166, 23778550, -9212168, -5611912, 6554120, 6083285, 18331994, 11739756, 7706782, 9003325,
-8133595, 6180458, 406948, 7750269, 9289477, 2528125, 183073, 9968619, -1697049, 1231045,
--9026948, -2099702, -2834679, -4636417, 820339, -644782, 6025302, 4432406, 1835562, -648003,
-2936147, 1335735, 2157684, 4123706, -1178432, -1438814, 907849, -1412507, 3059627, 1508607,
-1464047, 2489471, 1435593, 9247601, 6742562, 2024540, 21172042, 23928874, 5592585, -44973140,
-1632088, 12733504, -14840723, 9071508, 18011482, 914291, 4905390, 11395622, 8753680, 3427384,
-16190953, 3711389, -2223719, 30430918, 11326903, 4026532, 13157632, -9980967, 16136192, -11225971,
--961536, -1204202, -3700651, -16587164, 5609764, -11709155, 21671868, -1844152, -4234301, 31911070,
-4272419, 4748623, 10611254, 1299228, 6124624, -7036230, -13849122, -1470489, 9378598, -16311749,
-19077170, 17319992, 12715788, 3446711, 7577396, -11228118, -11775727, -18579492, -8247948, -9965398,
--9604084, 4581657, -1802813, -18182744, -8111583, 16247861, -261993, -14971182, 8580271, -694174,
--10281615, -24389508, 1722819, -37037652, 21630530, -12509092, 19675246, 1107028, 5496485, 799938,
--7295002, 10050760, 33265058, 3215320, 9490267, -5651103, -25906706, 2464238, -2785823, 19134616,
-11049877, -4291209, -905164, -3749507, -2037425, 6628745, -7406134, 6237903, -862215, -6332393,
--6554657, 7194070, -8030515, -7723962, -11137387, -2053531, -8004746, 2724083, 7024419, 685584,
--2017024, -4986457, 10251550, -9385577, 2537789, 1471026, 875100, -5405753, 4088809, 10318122,
--433792, -4762582, -1212255, 9449465, 9556302, -7385733, 9150428, -389231, -2374580, 1738388,
--575526, 10409390, 2637110, 12400107, 9224516, 24508694, -33712808, 13282723, -19748260, 16815870,
--8387535, -14176076, -4072166, -16325708, -6869800, -3662533, 5877663, 7486665, -4772246, 23529978,
--1122597, -4085588, -3177739, -21369610, -2377801, 56371, -17972290, 5725192, -15329812, -19337554,
--6267431, 11588359, -31987842, -21736292, -14527190, 1607928, -22437446, -19075024, -15448460, -7786776,
--6283001, -2983392, -15176804, 16149614, 2742337, -1619740, -11338177, -11668889, 21859236, -19096498,
--13067975, 5706938, 5798206, 7822209, -11107322, -15439334, -6540699, -2905546, 7126425, -11102490,
--4478041, -4572530, -13242458, -22557706, -28493350, 26871462, -29523068, -1687385, 2054068, -5193689,
--5486284, -26413512, 10179072, -6371047, -27688580, -680752, -6103686, 25983478, 6417755, 18478024,
-17601850, -5299453, 6877854, -2945274, -5055177, 12986907, -3314104, 7443715, -10009958, 734976,
--10080288, 8545911, 6701223, 1183264, 6133750, -2669859, -967978, 6476811, 3105798, -6408628,
-4706748, 10589242, -1644973, 2416993, -5786395, -13637595, -1433982, -1229434, -454730, -9474698,
--2048699, 1482838, -1363115, -5061619, 6456947, -1207960, -3632469, -11033234, -11126113, 143881,
-6135898, 3586298, 2389613, -761283, 8053601, 9096741, -4053912, 1955821, 2247879, -611496,
-2763812, -29996052, 34702264, 5495411, 3499862, -6017249, 17619030, 217433, 29011430, -7911330,
-19900730, 10729365, -28617368, 12403866, 4687420, 13586055, -2348273, -7619809, -11406896, -4192962,
-13962939, 30758408, 3238405, -4491999, -19476602, 7350300, -21065204, -3325915, 21221970, -19186692,
-9664, 1355599, -3335579, -7237557, -8187282, 34093988, -7388418, -8364986, -4158602, 7738994,
-11407433, 4294431, 536871, -6937446, -129923, 5111011, 20679194, -4744865, 29596620, 17327508,
-8796630, -7113540, 25792352, 29358786, -2449205, -7763691, -1570884, -9528385, 2887829, -9433896,
-14770393, 5060545, 21293910, 16498580, -26154740, -29410326, 35261144, 26250304, 4129611, -4968741,
--14038637, -19359028, -7617662, 19903416, -18742164, -20205136, -2890513, -5426155, -32413582, -7172596,
-7146826, -12498355, 1692754, -33823, 1673964, 2684892, 5340255, -9488656, -5927592, -9750113,
--3598646, 22549, 1405528, -5284421, -2596308, -872415, -16027207, -5239860, -7661685, -3434363,
--482110, 1501628, 603980, 2768643, -1089848, 689879, -8471286, 4940286, -7305203, -8251169,
-5879810, 2668785, -15057618, -1509144, -4765266, 7520488, 14201309, 439160, -12259447, 9909563,
--2866891, 2697776, 3330210, -3804804, -2945274, 1048509, -6606197, -8424578, 15343771, -12607340,
--4096862, -2668249, 3018825, 464930, -18937584, -54842976, 27453968, -26381836, 10731513, 39107824,
-5962489, -16411607, 11279658, 13620415, -5703717, -12418361, -2586107, -27022324, 8907762, -28085864,
--17058000, 11256572, 1154273, 4846334, -25374130, -5178120, -18318572, -15561740, -22601192, -7900593,
-7731478, -13471702, -13664975, 13259101, 1827509, -1130650, 4214974, -26004416, -1606855, -20228222,
-17299054, 4756140, -49475876, 12441983, 26504244, -5684389, 15807627, 13289703, 8974871, 7182259,
-25312390, 19830938, 722628, -18141404, -3841312, 20042464, 13011067, -16816944, 1198833, -19641422,
--6332930, 1299765, 14220100, 19028852, -35002908, -27697170, -15500000, 2919504, -10414759, -3875671,
-32541894, 5327370, 7694971, 25323664, -10302553, 5201206, -6482717, 25910464, -13220983, 1028645,
-2572149, 19185618, -5368709, -2073396, 7019587, 7853348, -1016297, 3816079, 12537010, 464930,
--409633, -551366, 12206834, -6231998, -3974992, 2900714, 5272609, 3547643, 1595580, 5719286,
--2697776, -23622, -5613523, -208306, -4181688, -670552, -5752035, 9316321, -7090454, -10449119,
-9780714, 6369437, 6726456, -7399155, -9458592, -75699, -16946330, -4716411, -8747238, -8946417,
-3415036, -183610, -9058086, 2943663, 3646964, -1096290, -5373004, -5262946, 3897683, 2333241,
-8035884, 18126372, 17517024, -30652644, 6363531, -6629282, -8096550, -7147363, 20492900, 10878078,
--15029164, -8576513, 15624017, -28187334, 1547262, 10222022, 15650861, -3366181, 3422015, -32883880,
--178241, -14576045, 10937134, 4025995, 18183280, -28916404, -14638322, -4216048, 3506841, -2496987,
-5585068, 2060511, 15705622, 29710436, -18875308, -24306830, 6340983, -25328496, -7530689, 10608032,
--18475876, -17883170, 1428614, 11026792, 15402290, 10984916, -6977711, -1544041, -32316408, -21729850,
-28561532, -19853486, 38576860, -16368120, 7796977, 5681705, -377420, -28377386, 35512400, -16545825,
--3448322, -6366216, 13816373, 26840324, -27192512, -15378667, 31742492, -23510650, -134218, -8843338,
-6412923, 36887864, 114354, -2654290, -22887344, 28237262, -9279814, 7392713, 9217537, -17750026,
--21589726, 2175938, 12292196, -6353867, 6248104, -50899656, -23884314, -7209640, -26108032, -12723841,
-4234838, 16995722, -3671660, -4534949, -13407277, 461709, -1383516, -9600863, -3469797, 6088116,
-379568, 8123394, 3628711, 7711614, -10148471, -1287417, -2229088, 10688563, 8214125, -6165963,
-19209242, 7295002, -7924752, 11901354, 3076270, -980326, -6270116, 4627828, -4578972, -3962107,
-8494372, 941672, -3957812, -3189550, 7087770, -1784022, 6388764, -1256815, 11749957, 2728378,
-1561221, 1737851, 17754858, -19897510, 5756330, 16793322, 16594680, 37465000, -23553064, 34431144,
--5883569, -22265110, -21807160, 5815386, 14461155, -9744744, -4434017, -15267535, -6211597, 29208462,
--20336134, -1717987, 23483270, -7358890, 14072460, -9130027, -4304094, 24939802, -736050, 1455457,
-24018530, 16747151, 5981816, -2745021, 20303384, 27730456, -27927488, 26074746, -24656870, 13315472,
--17766670, 3946001, 21453362, 7502234, -48325900, 21715354, 13870060, 52076, 24672976, -38241852,
--7318088, 26368952, 22366580, 3942243, 35087200, -18386754, 508417, -4248797, -5305895, 15234249,
-6298570, 26442504, 21936008, -16148540, 14583025, -30176978, -9335111, 2672544, -1464047, -2119566,
--4864588, -47356848, -26189636, -36517960, -24888798, 27588722, -16931298, -3868155, 3190624, 45016624,
--10645076, -15506979, 35989140, 22264036, -991064, 29351270, 4463545, 5778879, -13554917, 328028,
--11333882, -11744051, -6156836, 9711458, -11464341, -5726802, 5597953, 2433099, 9029632, -3312494,
--1496259, 11926050, 6785512, 998043, -9194988, -7122130, -1137093, -2545842, 6928319, 11918534,
--862215, 2390149, 2682207, -4366371, 28890098, 9268539, 2045478, 1509144, -9460202, 8039105,
--16900696, -892816, 14531485, -648003, -3873524, 10926934, 6014565, 3616363, -284542, -9027484,
-6231998, 7235410, 2222109, -11940009, 11514270, 29552060, -16320339, 11400454, 14586783, -21307332,
-2728378, -26204132, 9960029, -2808909, -13966697, 20740934, 605590, 32358284, -1990717, -24241332,
-40967544, -7379291, 4083977, 5640366, -38459820, 11562052, 33097018, 11788611, -14395657, -25196962,
-2617246, 6124624, 28303834, 18239116, -9231495, -5523865, -22056804, 193810, 32027034, -43550968,
-13211856, 30418032, -27381490, 10031433, 2844342, 10534481, 32039920, 10681584, 12367358, -5950677,
--31457952, 32556388, -6045167, -16670379, 68305552, 33590404, 17429514, 2973191, 1553168, -32159104,
--26351772, -11971148, 20084340, -697932, -18644454, -13182865, 25334402, -15489263, 17452062, 9882183,
--12503187, 18619756, 8542153, -27076548, -13508746, -15893526, 4463008, 16916266, -33838436, 11107322,
--34672736, -43840340, -27547920, 42005316, -14525579, 8664560, -9822053, -14622216, -2092723, -17425756,
--12048457, -9292699, 2149094, -16707960, 1968169, 9738301, -9127, -14716169, -10900090, 5096516,
-1664300, 18625126, 2507187, -21524228, -8342974, -12358232, 17643188, -3638911, -7132330, -17053704,
--215285, 10149545, 4660577, 11569031, -5891085, -1976759, 3441880, 11778411, 7549479, -401043,
--6718940, 8746701, -8228084, -936303, 4785668, -7746511, -204011, 13166222, -430034, 2374043,
--14571750, -10340134, -11089069, 6505802, -11798275, 41917808, 69837776, -11564199, -2267743, -57142392,
--19145354, -41991896, -27991376, 39072928, 2817499, 10683194, -32337882, 10592463, -28390270, -63919312,
-9381819, 30857730, -2489471, 4085588, 33158758, -43782896, 50151260, 25088514, 15686831, -24713778,
-33732672, 65077880, -12869333, 20206210, 49373332, 41783588, 73546480, 16107738, 26433376, 20141786,
-17941152, 63279364, -16378858, -7345468, 23318452, 13986024, -6808597, 34889628, 2145336, 7490423,
--20547124, -56196424, 2244657, 37814504, 5785321, 22992034, -40636296, 2746095, -54053236, 328565,
--58094264, 4239670, 40852656, -4929549, -17275970, -55199992, 72691248, 13458280, 4937065, 75487808,
--840203, -16918414, -12631499, 4166118, 15114527, -3867081, 335007, -5672578, -39707508, 23876260,
-9224516, -24625194, -15214922, 20002200, -23965380, -41282152, -20234664, 9358197, 39832064, -41324564,
-33170032, -1346472, 17719962, -6994354, 14469745, -9706626, -1415729, 3868692, 4090956, 13604846,
-12137041, 2756832, 25451976, -1079111, 10466835, 13629542, 7825431, 6091874, 6077379, 22182970,
-16350940, 8120173, -8590471, -3397856, 19051938, -25183004, 9772661, -14962592, 3623342, -5472325,
-17178796, 20004348, 40274444, 22683332, 37988448, 21940840, 7952669, 40088152, 41401876, 39583492,
-22552874, -6658810, 23600308, 26312580, 16106127, 31643172, 23734526, 98247, 7155416, 5467494,
-5153961, 9323300, 6672769, -8026220, -8174397, 430034, 6585796, -1926830, -21905944, -72838352,
-3676492, 98816464, 14500883, -19930796, -18915036, -44733696, -29227790, 1556926, 61727808, 11077794,
--41000832, -2719788, 16908750, 4295504, 1357747, -3788161, 10834055, -29113972, -10910828, 15314243,
-34238404, 34732328, -32383516, -12163884, 2583423, 4932770, 8771934, -37012416, 3700114, 6467147,
--9750113, 27260158, -195421, 31409632, 46779712, 22762252, 9754944, 20760798, -26423712, 24523726,
--21327196, 36479840, 63733020, 21420612, -34307124, -29189672, 28933048, 11023034, 54339928, 41293964,
-12552042, -9653476, -12078522, 2212982, 2917894, -18322868, 21188684, 19043884, 3608846, 49616536,
-33660196, -3894999, 24027120, 27296128, 12536473, 27314382, 1232656, -45952392, -5683316, -10547903,
--10696616, 53723600, 24508694, 9322227, 42252816, 25707526, 26958436, 33753076, 11475079, -32925220,
--16655346, -18254, -539018, -11094437, -9826885, -19627464, 12766253, 9035001, 19862076, -8451422,
-22153978, 7069516, 22935126, 16203301, -5025649, -10789495, 3477313, 7094212, 258235, 3561065,
-16803522, 2575907, 26265336, 36094904, 10102300, -1970316, 2614561, 26246546, 5849209, -6976101,
--6675990, 20987894, -1012539, -5149666, -3848828, 7658464, 14176076, 29327110, -14855218, 3385508,
--9627169, 3466039, 1142461, 24202140, -12349642, 12560632, 13973139, 9532143, -10471667, 4462471,
-16254304, 3314641, 477278, 17004850, 2146410, 10798085, 5934034, 2928631, -3047816, 4225711,
--2214593, 5015448, 1114007, 5290326, 901406, 9165997, 2126009, 4663798, 1585917, 7167227,
-1376537, 7495792, 1595580, -526134, -14556718, -69439960, -15044734, 38685308, 20892332, 84694608,
-4583267, -12350178, -38033008, -74446816, -81748264, -13673565, 35172560, 39511016, 25324200, -41345504,
--54573464, -468151, -6723235, 21676700, 56847652, 28869160, -5381057, -34214248, -46319612, -29198262,
-1860795, -28612536, 11072426, -23972896, -11807939, 37783900, 31343060, 27759448, 10886668, -39133596,
--10883984, -37452652, -28683940, -15182709, 21994528, -4352950, 23363548, 57309896, 60016264, -25272662,
-6912213, -44560824, -30288110, -21428128, -3831111, 7981123, 34821448, 36822364, 51210504, 36068060,
-13092671, -25684978, -23324894, -5952288, 16485695, -42178728, 3080029, 48491256, 39017092, -10623065,
-52867288, 46732464, 26651882, 48841832, -93347360, 21747566, -26499412, -29281476, 16081968, -15953119,
--1284732, 93679144, 79765592, 27713276, -24553254, -2753611, -37397892, -7951058, -50310712, -18499498,
--8393440, 18810346, 61791156, 31678068, 13025025, 10321343, -9853729, -31667330, -39782672, -609885,
--26227754, 20338280, -2193118, -919123, 23776938, 18556944, 7415798, 19222126, 7203197, 30465814,
--21725018, -1313723, -23961086, 9117679, -20819854, -20136954, 3498251, -6757594, 16798154, 28609850,
-1962263, -28447180, -46036680, -14965814, -26616450, 1995549, 12173011, 20769924, -17689896, -7483981,
-23580444, 2032593, -119969176, -136030736, -146262960, -147783376, -200384384, -11873974, -71760848, -23181012,
-26607860, 66992364, 94001800, 96944392, 198101616, 212397408, 172939008, 128635880, 136284688, 129933496,
-50126564, -19303730, -89222040, -89418000, -137203264, -44578540, -74321728, -55431920, -5118528, -116489712,
--33435246, -104045584, -28242094, -119557392, -112658064, -52023864, -92994096, -9478456, -46922516, -43421584,
--69514048, -46044732, -105008728, -74268576, -39382164, -36158792, -55503324, -34037616, -3990562, -44966160,
-15251966, 67266704, -52278340, 79570176, 47782584, 106202728, 106757320, 93149248, 114941376, 97045320,
-160286032, 159140352, 126995744, 169804752, 145689056, 222382672, 219070176, 258062032, 200934672, 216196848,
-235676128, 212816160, 254544464, 188563024, 275626304, 220218544, 84031032, 107686640, 28484224, 42661912,
--148963424, -125099512, -139563888, -148647200, -156631552, -202496976, -190563936, -209574000, -230017504, -270531392,
--226011376, -207048560, -230041136, -250996272, -299143392, -240052160, -265689360, -267551760, -202892640, -228866464,
--131945688, -163920112, -112076632, -104183560, -55062556, -40372156, -57016764, -9896678, 27023934, 129907192,
-123240864, 89353040, 101184064, 108689520, 147529984, 150953072, 163422976, 172185776, 148242400, 150448944,
-110693120, 156531696, 160251136, 121903520, 85893440, 66139812, 96290480, 95058360, 74155832, 44241920,
-24610700, 37218040, -9754408, 4849555, -17558900, -14202920, -71130024, -65409132, -47492136, -33187750,
--43352864, -33563020, -15937550, -13494787, -17284022, -32502702, -29576756, -15161235, -19100794, -13125420,
--10730976, 1491964, 4895726, 316754, -4364761, -1374926, 435402, -1043140, -1068910, -1057099,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--2838974,
-5248450, -212064, 2153926, 833761, -4591320, -3453691, 1197759, -3111704, -4616553, 2632278,
--546535, 686658, -2649995, 1946157, 187905, -4090956, -185757, 4719096, 3835406, -2937758,
--5174899, -4716948, 694174, -1088237, -924492, -4014721, 4366908, -1163399, 1230508, -1832340,
--1111323, -402653, 1656247, -1189706, -2298881, -8810589, 2995740, -671626, 2847027, 1686848,
-1196685, -231391, 5872831, 1099512, 1173600, 815507, -3004867, -1925756, -278636, 427349,
--3008088, -716186, 1170916, -418222, -2842195, -1501091, 104690, 2775086, -4351876, -5907728,
--7315403, 2585570, 4191351, 419296, 3466576, 2538863, 486942, -6710887, -174483, -1759863,
--2352568, 111132, 374736, 2773475, -598611, 3949223, 2799782, -1256278, -4016331, -1959042,
--717260, 1020055, 307090, 1290638, 1504849, 2755759, -58519, -270046, -1300301, -1132261,
--1076426, -485331, -2240899, -1064615, -1267015, 690953, -148176, -288300, -688805, 1044214,
--1577327, 3165391, 4140349, -963683, -63351, -5941014, 5283884, -6803765, 2617246, 11435887,
--2460480, -4269735, 641024, 5961952, 625992, -1708860, -836982, -1722282, -1091995, -5389110,
--2103997, 2640331, -4280472, -2453500, 233539, -248571, 4711043, -2893197, 872952, -1126892,
-1022739, -611496, -2765422, 5215701, 8880919, 2240899, -514859, -1677722, 9612137, 437550,
--4031364, 258772, -7182259, 16106, 3737159, -5516349, -707059, 1171989, -4405563, -1332514,
-5059472, 712965, -550830, 4881231, -3259343, -5149666, 2903935, 1923072, -3597035, -1786706,
--3850438, -4512400, -4853850, -2688113, -2777770, 3924526, 2789581, 765041, -116501, -2731599,
-2521683, -595390, -1866163, 3325379, 3674882, -2629594, -529355, -1245541, -1679869, 513249,
-4211216, -2131915, 940061, 4015795, 2653216, -924492, 1015223, -704912, -114890, 1701344,
--245350, 25233, 1731409, -1856500, 748935, 380641, -597537, -1710471, 1306207, 149787,
--767189, 402116, 184684, -613107, 192200, -314069, -572304, -998580, 5847061, -8523899,
--5627481, -2029909, -1240172, 287763, 1096290, -8128226, 5644124, -2567854, 1844152, 1162862,
-1878511, 3549254, -25770, -1177358, -2705293, 5849746, -462783, 3802120, 7225209, -1569274,
-6143414, 5239323, -4543539, 3035468, 3072512, 3295314, -8017094, -798864, 478889, -2521683,
--5042829, 76236, 5883032, -1383516, -2520609, -1981054, 1799054, 5452998, 2693481, -2789581,
--46708, -2301029, 230854, -733903, -2719251, 5092221, -6585259, -5443334, -4998268, 1542967,
--703301, -182536, -6143951, -6489696, 1579474, -139586, 366146, -642635, -345745, -4845260,
--2866891, -5297306, 1036698, 4534412, -1415192, 4023311, 753230, 3576634, -7733089, 30065,
-1116155, -2582886, -1167694, 1029718, -2756295, -341987, 2024540, 2184528, -1716376, -5175436,
-4552666, 710817, 110595, -1146219, -661962, -4144644, 181999, 282394, -729608, 744103,
-133144, -1464584, 623844, 667331, -418222, -599148, -206695, -250182, -280247, 224949,
-2179696, 33286, -654983, 1801202, 804770, -145492, -601832, -181999, -2920578, 720481,
--586263, 5018670, 7982734, 506269, -3035468, -6788196, 3106335, 2015950, 1883880, 8456254,
--5528160, 195421, 1030255, -1532767, -2765422, 1250909, 533650, 5097590, 11246909, -989990,
-1947231, 4702989, -2038499, 4195110, 7310571, -5100811, -189515, -1900523, -104690, 3261491,
--5692979, 6152541, 1373316, 72478, 3244848, -532576, 4492536, -2433636, -1032403, -1263257,
-7056632, 3289408, 4495220, -850404, 3704409, -6845641, 7917236, -3062849, 3115462, -7206419,
-2911451, 5234492, 9649181, 3543885, 1804960, -6345814, -2427730, 1755031, -4801774, -5713917,
--1352378, 11399380, 13202193, 2533494, 3109020, -3763465, -1669132, 7383049, 1443109, 3234647,
--442919, 2249489, 1981591, -972810, 1691143, -1076963, 1275605, 892816, 4665945, 3797288,
--5851356, 5219996, -1709397, 2685965, -1840930, 1975148, -1553168, -2173254, -38118, -3471407,
-548145, 2546916, 581431, 1315334, -1231582, -1532230, -788663, 639413, 111669, 584116,
--222801, 406411, -979789, 369904, 376883, 1855963, 111669, 1265405, -592169, 1133871,
-5567888, 156766, 695785, 7811472, -6576132, -7741679, 12072079, -3124052, -1929514, 7894687,
-4726612, 586800, -13843753, 14963129, -2735894, -1886028, -1567126, -810138, 599148, 929860,
-4682588, 6984154, 4602595, -995359, 7835094, 4974109, 2521683, 2114735, -2874407, 3582540,
--5622112, 4503810, -852014, 1891396, -4757750, -6914361, 896574, -865436, 2548526, 4188667,
--2048699, -6616397, -3858491, 1644973, -7945153, 5157182, 1609002, -12670154, 5743445, 892816,
-3290482, 839129, 1985349, 2172180, -504122, -3558917, -3091840, -8637716, -6345814, -3512747,
--4405563, -952946, 533650, -6314676, -8951249, -1313186, 5851893, 10077067, -493384, -6665789,
-1132261, -10496900, 743029, -689342, -4118337, 8909910, 8370892, 2842195, -300648, -2114198,
--610959, -4631586, 2215666, 8547522, 4575214, 7070590, 1442572, -3175592, 3295314, 1737314,
--215822, 709743, 404801, 243739, 1541893, 1604170, 1529545, -438624, 2669322, 754841,
-5250061, 2080375, 1421097, 285078, 468151, 1418950, -358093, 2492692, 921271, 989453,
--1381369, 3091303, 779000, -1047972, -439697, -13585518, 7031399, -2587718, -4828617, -3828427,
--4618701, -6455336, 12463995, -15857019, 3750043, 3840238, 5199595, 7758859, 1282585, 2160369,
-2928631, 2106145, 1625108, 2632815, 6831683, 1237488, -3745748, -1611, -649077, -4878546,
--4407710, 2266669, 4581120, 4923643, 677531, 3511673, -8254391, -956704, -107374, -450972,
--7821136, -4687957, -2809446, 5122822, 4604742, -78383, -8560944, 49392, -4632122, -3321084,
--1674500, -2305324, 5394479, 7326678, 2234994, 7621420, -12183748, -8519068, 4067334, 2490007,
-425202, 1612760, 808528, -3954054, -7659538, -5300527, 4076998, -3435437, 6228777, 6121939,
--2220498, 5800890, -9220221, -4565550, -2586107, -3115999, 686121, 16811038, -2405719, 4753455,
--2671470, -2435247, -1701344, 3566434, 3836480, -447213, 3099356, 2108292, -5232881, 1444183,
-413391, 2248952, 500901, 273804, -2632278, 1692217, -97711, 1714766, 561567, 886374,
--476741, -1006096, 514322, -1534377, -2194728, 747324, -1195612, -1899986, -548145, 565325,
-762894, 746787, 836445, -113280, 604517, 1187022, 1006633, 330712, 303869, -397284,
--623307, 1107028, 13911936, -2665564, 388158, 5863704, -13227426, 9106404, 4622459, -7451769,
-8289287, 9273371, 3118683, -14281840, 8843338, 392990, -1339493, 7242926, 7823283, -434865,
--2299418, 236760, -5537824, 5198521, -3024194, -5275831, -11108933, 2605435, -12075301, 3253438,
--2953327, -1342714, 3492882, -9837086, -4037269, 8195335, -707059, -3812857, 5018133, 341987,
--4289062, 3717294, 1352378, 373662, -1834488, 2837363, -5986111, -619012, -8745627, 8291971,
-8288750, -10299332, 6897718, -7344931, -2768643, 7128035, 9961640, -712428, -4951024, 3019362,
--617938, 1445257, -12159052, -9609989, 1928977, 1736777, -2623151, -2490544, 3163780, -365072,
--4304631, 5153961, -4963372, 1752884, 3729642, -841814, 5844914, -5840082, 5910412, -30602,
-9398999, -3211025, 2858838, 5311801, 607738, -3357054, -950798, -339302, 2762201, -909996,
--4411469, 3735548, 817118, -1843615, 1654099, -1236951, -48318, -1729798, -490700, 1282585,
--1472637, 963146, 2582886, -1325534, 634581, 188442, -845572, 1639067, 443992, 1396401,
--2067490, 853088, -2116882, -2420751, 912681, -377957, 995896, 1034013, 315143, 3847217,
-1676111, -5063767, 9760850, -3343632, 4748623, -9858561, -700080, -2603824, -8950175, 309775,
-6319508, 11232950, 14697378, -8374113, -236223, -10437307, -782221, -6648073, 5931887, -6225018,
--12307766, 794569, -7888781, -741419, 10202158, -6052146, -6037651, 10947872, 336618, 1879048,
--1147293, -6441914, 2732673, 2333778, 13194140, -9108552, 6469832, -7725573, 1923072, 2559264,
--7622493, -4694936, 12669617, 3462281, -9428527, -2437394, -3451543, -7570954, -321586, 12418361,
-6651294, 8640400, 1973001, 3452617, -11339787, -1643899, 14414447, 1138166, -8963060, 4790499,
-4763656, -6579890, -5729487, -3173981, -14814416, -2288681, 4395362, 7313793, 13001403, -3263638,
--7117835, -2062658, -4431870, 10553808, -3931506, -9222369, -6285148, -2727841, -1262184, -2860985,
--5332202, 11490111, -6592238, -805306, 1057099, 544924, 3748970, 2335389, -3390340, -4552129,
-3411815, 4096862, 4333085, -998043, 1957968, -1207423, -721018, 1933809, -430570, -2021856,
-2039573, 952409, -63351, -1326071, -446677, -3365644, 308701, -839666, -2893734, -1481227,
-1309428, 1138166, 49392, 1337346, 6324340, -21955872, -15133854, -9700721, 1158031, -18396418,
-2749316, 13674639, 4524748, 14079977, -7555921, -3484829, -1529545, -7318625, -2739116, -10986526,
-19526532, 11148124, 7784628, -16497506, -3189013, -5310190, -10734197, 3711926, -1130113, 3480534,
--13332652, -918049, -1195075, -9575630, 5569499, 1584306, 9784472, 3934727, -8182987, 12890271,
--6096169, 5230734, 2714956, -110059, 10201084, 9479530, 2391760, -12303471, 15006079, -7598871,
-10759430, 4903242, -5568425, -6194954, 12065100, 1768453, -1406602, 3138547, -10192494, -3656091,
-5877126, -855772, 10669236, -6171331, -9647033, 3951370, 2729452, 324807, 10610717, 4569845,
-2157147, -6773701, 7721815, 3024731, -5919539, -818191, -635655, -3406983, -2476049, -2873870,
-4644471, 11650636, 19640348, 9123584, -3313567, 992674, -4509179, 4514548, 6043019, -100395,
--5018670, -2956011, -6550899, 4035659, -3579318, 954557, -3095061, -852551, 4357781, -522912,
-471910, -3992172, 4261682, -2254858, -1912871, 2335389, -3920232, 4289599, -3003793, 2294050,
--2123325, -406411, 961536, -2930778, -2081449, -1288490, -4769025, -4794794, -2102923, -257161,
--1690070, 3787088, 3499862, 2041183, -13863081, 18636400, 7727720, 21311090, -9553618, -11442867,
-20308216, 690416, -2091649, 4455492, 1562831, 11891691, 15843597, 2071785, -14704894, -23554674,
-3315715, -6497212, 1448478, 673773, -10188199, -645319, 12846247, 10502806, 8264591, 16534550,
--3720516, 14011257, -9824201, 12409234, 4094178, 9616432, -6427956, 16935056, 9759239, 12368432,
--19602768, -86436, 17861696, 10169946, 3257196, -4225174, 26861800, 11340861, -10508711, -6479495,
-6564858, -10231686, -978179, -4907000, 1403381, 22551800, 23629836, 17156246, 6317360, 207232,
-8908836, -7827041, -1959042, 9683004, -10001368, 23880018, 14904073, 11725798, 4639639, -908922,
--11250130, 14183056, 536871, 12373264, -5500780, 4814659, -7931731, -4548907, -180926, 6246493,
--9333501, 22233972, 9601936, -2432025, -10865194, -20928838, 10329933, 1848447, -6784975, -627602,
-2621541, -4879083, 3070365, 8098698, -1371705, -2765422, 281320, -1697586, -2056216, 1842541,
--2500745, -1837709, -3437048, 3639448, 2094333, -5244692, 2986076, 3390877, 3300146, -93952,
--1529545, -579284, -13422, 1761474, -423054, 1305133, -3089155, 5142150, -6415608, 118112,
-2246268, 5763309, 22985592, -1382980, -11419244, -5169530, -8962523, -380641, -14354318, 3673808,
--12376485, 6943352, 1541893, -3366718, -9752260, -11631308, -17627620, -18267570, -5462125, 15778099,
--1233729, -10353019, 4206384, -9874130, 7495792, -8441221, 14761266, -15257334, 3504157, -10833518,
--11105712, -2067490, 1824287, -3263102, 6937983, -21942988, 8763881, 2070174, -5335960, -1557463,
--1512902, -10881837, -17440788, -18671296, 13342853, 6584185, -7346005, 11558294, 308701, -4884452,
--13771276, -28849832, -23783918, 13390097, -4212826, 257698, -2918430, -1400159, -1444183, -19556596,
-7346542, -23095112, -12368432, 1009854, -798864, -4977330, -3175592, -3120294, 23695334, -7406671,
--7831873, -6501507, 24793236, -4540318, -10074383, 15708306, -12453258, -7923141, -10279467, -8645769,
--32168768, 6367826, 5046587, -10810970, -1654099, 7436199, -4282620, -2950643, -6079526, -5548561,
--877247, -2935610, -2946885, 11129334, -1032403, -1272384, 7378754, 8839043, -4516158, -3297998,
--845572, -1641214, 2156074, -5505075, 497142, 562104, 892816, -3300682, -4113505, -1704565,
-3524558, -1553704, -3094524, -473520, 2182380, -7076496, -1242319, 3910031, 122943, -2856690,
-3628174, -2500745, 3198677, -73551, 3049964, 3342022, 3337727, -6189585, -769336, -33990908,
--25667262, -14683419, 29677150, -1512365, -4947266, -3626563, -2340757, -9780714, 10502806, 8119099,
-26560614, -24512988, -4779225, 7548405, -17931488, -7176354, -6344741, 30595200, -448824, 7052337,
-15573551, 1408749, 14988362, -16185584, -20344186, -13614509, -3745212, -3461207, 2427194, 9560060,
--471373, -17136920, -11825119, -878321, -9149891, -19225348, 17157320, -2869575, -9590662, -122407,
-5507759, 5449777, 3203509, -8688719, 1748052, -17877802, -7829189, -26512834, 12455405, 8008504,
--3138547, -8325257, 9796284, -13210783, -3379066, 28600188, -3016141, 24238112, 10838350, 6498286,
--6352257, -30443802, -12666932, -5856725, -16396038, -12256226, -7819525, 13625784, -6236830, 310311,
--12241731, 25958246, -9290551, 10707353, 7254737, -17711908, -7137162, 3905736, 16402480, 29967060,
-24919400, 10801843, -1713692, 10289131, 62814, 894964, -5891622, 3027952, -6090801, -4224637,
--128312, 1764695, -3685619, -4868346, -8796630, -6991670, 3709241, 2881386, 3018288, -3233574,
--1381906, -17439714, -366146, -8042327, -3817152, 3159485, 2379412, 1008780, 7166153, 179315,
--1065152, 719407, -2959233, -12653511, -1253057, -7191923, 3546032, -6381785, -7010461, 813359,
-8007430, 3682398, -2370285, -4725538, -4450123, -2076617, 4260608, 1140314, -2036351, 17648558,
--816581, -9993852, 10902238, 6263673, 36871756, 1315334, 459025, 13032541, -16555488, -11409581,
--3237869, 3083250, 6025302, -4408784, 15650324, -9507984, 2243047, 14710800, 6676527, 5492190,
-5515275, -10758356, 2136209, -260919, -5199595, 2311229, -7755101, -13898514, -7192997, 1175210,
--13651017, 17860084, -1189169, 1857037, -2328946, 12319577, 13922136, -2525441, -10072772, -849867,
--3129421, 16375637, 21027624, -14769319, -10083509, -7419019, 5361730, 15625091, -13748727, 4743255,
--469225, 3365107, -7079180, -9561134, 3177202, 10350871, 2052458, -12539157, 11608760, 33770256,
--10740639, 6389301, -2383707, 2731062, 13145821, 3808026, 15471009, 12942884, -3218004, 19767050,
-35836132, 1588601, -13042205, 35084516, -550293, 33554968, -11414412, -16199006, 15552077, 6096706,
-23467702, -3631395, 32990718, 10536629, 7754564, -9669045, 15695421, 1983201, 1692754, 3828963,
-12839805, 2850785, 14643691, 1948305, 3732864, 684510, 2311766, 2513630, 4764730, -1279900,
-5325223, 12412455, 5245766, 5791227, 1861332, 3481071, -6669011, 6177237, 2431488, 2942590,
-4522064, 2542084, -299574, 129923, 3558381, -3207267, 1319092, 386010, 3180960, 8944806,
-3269544, -55835, -4280472, 4828617, 929324, 1344325, -689879, 4725001, 2753074, 6876780,
--23116588, -7454453, 36093296, 6043556, -16664473, 4976794, -12622909, 4685810, 6926172, -2918967,
--19084688, -7168301, -28534152, 11859478, 9797357, -10956462, 10626823, 16592532, 3415036, -4432943,
--16665010, 3822521, 26675506, -12738336, 16011101, 15308337, 2420214, 11522860, 10663330, 523449,
-13297756, 8894340, -25397216, -3570192, -10232760, 25987774, 17220672, -18076444, 11144903, -2051384,
-13707925, 43316892, -4086125, -7289633, 4334159, 38989712, 16004122, -2363843, 4991826, 7090454,
-22498112, 19879794, -13566191, 23858544, 10939819, 22119618, -15631533, 2405719, 4443144, 4733054,
-13667660, 20301236, -13180181, -10455024, 16068010, 8055211, -5445482, -5709086, 65498, 24360518,
--45873472, 10830297, -16303696, -12020540, 2222646, -15698642, -14595909, -2080375, -25079388, 18133888,
--5322538, 19158238, -678605, 16761110, -11040750, 6754373, 418222, 5560372, -503048, -6436009,
-5085242, 3590056, 4065187, 8187282, -3972845, 4152160, 5650030, -4677220, 453119, 7823820,
-2914672, -4187593, 8728984, -5718212, 1190243, 4554813, -5578626, -4210142, 1800128, 1752884,
-9735617, 8053064, 5786395, 2932389, -901943, 6283537, 1440425, 2772938, 2798708, 5215164,
-6366216, -5247913, -4363687, -8493298, 6726993, 2653753, 575526, 2119030, -8945343, -8573292,
-5996311, 7803956, 8240969, -10150618, -12122545, -31379032, 1490354, -17498770, 28650654, 3519189,
--7358353, -4218195, 17222282, 4971425, 27927488, 11274289, -7162932, 1188632, 5954972, 12715788,
-21030844, -23415088, -20223390, -4227322, 35321276, -10826539, 4575751, 10086731, 15521475, 18766860,
-26868242, 23175106, 2115272, -5481989, 25099788, 1979980, -15862388, 8519068, -14710263, 10723460,
-2747169, -13144747, 12145094, 47095392, 26295400, -16579111, -12502113, -1671279, -12972412, -12896713,
--11101954, 8123394, -6288906, -10966662, 2531346, 12991202, 7820599, 4337380, 18571976, 5004711,
--4394826, 19573776, 16529719, -14067629, 9663676, -15886010, -12367895, -14079977, 42950, -34074124,
--10021232, 23790898, 17604534, -8076149, 11847667, -2821257, 925565, -20925618, 4795868, 12627741,
-20064476, 11279658, 13316009, 7299834, 6415608, -8907762, -7807714, -9477382, 5419175, -2021319,
-824634, 4080756, 4255776, -404801, 10407780, -3223910, -4489852, -4910758, 7318088, -9469866,
--3794604, -11687143, -581431, 2321430, -5009543, 471910, -2754685, 7320772, -1365263, -15424301,
-271657, -1051193, 4636417, 6045704, 1990181, 6868190, -403190, 11162620, 2312303, -881542,
--271657, 1218160, 497679, 566936, -12811351, 10594074, 8552354, -16271484, -6954089, -35381940,
--2815351, 29511794, 370978, -21618718, 3502009, 1017370, -14508936, 19673634, 11391327, -7901666,
-5618891, 8919036, 12164421, 6753836, 2124398, -8730058, 4780836, 7004018, 18821084, 28102508,
--7698192, -18912352, -9944460, 5363878, 5866389, 23128398, -8826158, -18111340, -14097156, -14490683,
-27994596, 51287816, 18640158, 2574833, 56273736, 3384971, 23337778, 13311714, -4723927, -11795054,
-10011569, -15969762, -10636487, 11405823, 776852, -33896956, -35102768, -8781598, 14674830, -18315352,
--22969486, -12648142, -17004312, -14001057, 11871290, -9750113, -26046292, 11716671, 1035624, -7593502,
-6102075, -5869610, 13142600, 52789444, -32331440, 26613228, -36761160, -20846160, -12183748, -8318278,
-20445118, 8260833, 9806484, -3970697, 11360725, 23691576, 5929203, 555661, 310848, -6872485,
-3260954, 6496138, 18983756, -1140314, -9403831, -1403381, 14501957, 9322227, -4096325, 5500780,
-6582575, -5232881, -179852, -2237678, 18197776, 6594923, 8628589, 6405944, 5207648, -7491497,
--5310190, -1177358, 4671851, -9167071, 1349157, -9040906, -6237367, 1475858, 969589, -10391137,
-10198400, 13934485, -1363652, -1773285, 8476655, 125091, -3638911, 12335146, -5059472, 8560407,
-798864, 28574418, 18377628, 16569447, 24336358, -28398860, 10922639, -29744796, -1192390, 38876432,
-34575024, 14739254, 537408, 6727530, 4393215, -11148124, 9010841, 11194295, -48985176, 3003793,
-7202660, 14897631, -17949742, -27581744, 20234128, 9573482, 5149666, -11788611, 23999740, -3370476,
-18656802, 15502684, -1846836, 2368675, -5418101, 18894098, -11207180, 5769752, 11369852, -987843,
-24146306, 13981729, -1348083, 12389907, 14078903, -722628, -10893648, -36741836, -6771553, 3929358,
--21755620, 2109366, 17369922, -33387466, -14810121, 5129265, -14348412, -2317672, 17631378, 1030255,
--12459163, -16262357, 7253663, 7070590, -33750928, -11247982, -2792803, 149787, 21216064, 10399190,
-2383170, 37056440, -4655745, -1190780, 1475858, -21121576, 20029580, 181462, 32861868, -12722767,
--5477694, 9893994, 4978404, -27987618, 928787, -3853660, -11184632, -9036611, 3519189, 1174674,
--7884486, -687732, -4890357, -3447248, 1039382, -11963095, 3476776, 1661616, -1653026, 4600447,
-1282585, -7890392, 1636919, 2281702, 2127620, -7632694, 11203959, 2215666, 14570677, -10706817,
-1384590, -9018894, -3159485, -1643899, -16069083, 3443490, 1529545, -654983, -2144263, -2889976,
-6001680, -7237020, -5561446, 7028714, 9413495, -9306120, -34672196, -30218854, 5537824, -15552613,
--4867272, -23284628, -29007136, -30520038, -20055350, 21777632, 29727080, 802085, -24465208, 1948305,
-1151051, 338766, 11307575, 18978386, 18977850, 484258, -12284143, -30447560, -17454210, -26650808,
--5710696, 129386, 2263448, 2767570, 3765076, 7360500, 9536975, 17961554, -28161564, 12382928,
-4939750, 6234145, 15130096, 26743688, 30026116, -17275970, 13389024, -23884314, -7450695, -21671868,
--2100776, -8441758, 49908056, 17711908, 35957468, 1521492, -19269370, -8278013, 23032298, 24921010,
--14629732, 46033460, -19270444, 2874944, 2036351, 7997229, 16919486, 51208360, -3571802, 12540768,
-28525026, 6512781, -22582938, 14358613, 52405044, -9562745, -12668006, -30902290, -2564632, 19328964,
-11941083, 1621887, -29656750, -22476100, 3786014, -23453742, 7074348, 1037772, -29524142, -3348464,
-3052111, -4644471, 21343304, 20033874, 455803, -5850819, -12712029, 13868449, -5871221, 24102820,
--5483600, 311922, 16525424, 16571594, 23598698, 18216566, -13297219, -5221070, 3192235, -4408784,
-1627256, -10151155, -9737765, -9885941, 5184563, -12106976, -14077829, 8361228, 10950556, 983011,
--12087649, 7705708, 4326643, -2988224, -3051038, -8247411, -127238, 4702989, -2042794, -7374459,
--9552544, -1832877, -6256157, 7879118, 4478041, -4090420, -5290326, 10084046, 46531140, -2442226,
--289373, 19723026, 3806952, -64277408, -20220706, 45590004, 15151571, -13423383, -25621090, -3629784,
--16936666, 23490250, 12192875, 4380330, -13588740, -30449170, 6495065, -52421688, -6430640, 25578140,
-34936336, -4077535, -29721710, -20264192, -61336964, 17956184, -10675141, 23969676, 18116708, -17464410,
--12711493, -54444080, -40893996, 21233782, 57941256, 23106924, 27504970, -19352586, -34490736, -33111514,
--13894219, 49228916, 66342212, 34572340, -77173048, -28325846, -59144384, -31654982, 73260328, 17821966,
-16225850, -9776419, -70604432, -57835492, -58016420, -10827613, 5598490, 36506148, -13593571, 27760522,
--55994564, 34754340, 13900662, 4199941, 70351024, 4476430, -6523519, -3409130, -95494304, -29213294,
--6505802, 30029338, 15663209, 13705778, 42119132, -45089104, 2886218, -29850560, 32491428, 23439784,
-2236067, 6451041, 6909529, -5360119, 19319836, 10322417, 5125507, 16422344, -11236708, -21021718,
-5091147, 15018964, 22858352, 18806588, 12429635, -15793132, -25545928, -35830228, -3204046, 2521683,
-28958280, 35851704, -5405217, -27370752, -46979964, -22594750, 3350611, 35866736, 57643292, 14977088,
--56385940, -57922464, -59074052, -694174, 48194900, 42381664, 44775036, -15087146, -21800180, -42074036,
--42408508, 15494631, 28681792, 37330244, 18991272, -29693256, -27988692, -15897821, -4413079, 34633544,
-18415210, 5669894, -1547799, -21342766, -15317464, -3241627, 4268661, -27590334, 52947284, 22723598,
-24268712, -65591668, 13151727, -91370064, -20199768, -275415, 12898324, 5230734, -58566176, 31687194,
--16267726, -10576894, -11059541, -12491912, -14395657, -18146774, 38287484, -11010149, -32992866, 10472204,
--9380209, 3986267, 18432926, -37246492, -13370233, -2342368, 15544560, 1551557, 42121820, -3636764,
--24188718, 55632176, -47182364, 27488328, -43759812, -14509473, 21266530, -35556424, 2542084, 25681220,
--13485124, -3121368, -2696703, 33083060, 50514720, 29196650, -17063906, -7064685, -7953206, 3144990,
-16195248, -6765647, -10105521, 9770514, 5165772, -91743720, -3737159, -3461207, 13299903, 11322608,
-554588, 75162, 26038240, -28933048, -7458748, -2891050, 19834158, -73680704, -10360535, 66432408,
--17089138, -26920318, -282931, 50247360, -9307194, -12144557, 13672492, -19918984, -20783884, 30992484,
-48118128, -17555142, -24507084, 8184060, 14406931, -7755101, -25831544, -676457, 3715147, -5383205,
--3782793, -8211441, -11259257, 5135171, 344134, -10475962, -1881196, -555661, -393526, -9674951,
-5466420, -12903155, -13511430, -8078297, -8258685, 12321187, -1826435, -2823404, -294205, -7321846,
-10328323, -13712220, 3901978, 180926, 978179, 9162239, -433792, -16449725, 1874216, -4510253,
-3062312, 1992328, -14595909, 22780506, -6041945, -2416993, -2188286, 1868311, 5859409, -785979,
--5348845, -12221866, -22310744, -67123360, -55140936, 48186848, 41077604, 3758633, 43885440, -48110612,
--2922725, -92759480, -33041720, -16550120, 44715980, 40695888, 24888798, -37435472, -12973486, -1791001,
--17926120, 8642011, 16079821, 20918102, 27991912, -21612812, 15625628, -40227736, -25500832, -6499896,
--8668318, 911070, 26381300, -31792958, 27180700, -12379169, -17719962, -7145752, 2434710, -39873404,
--1010928, -36114232, -13558138, -14119705, -34313032, 46849504, 21456046, 10524817, 11365020, -9241159,
--48062296, -71184248, -41641320, -41924248, 28233504, 6635188, 30441654, 42484744, 35006668, -11643119,
-8310225, -24672440, -18966576, -22550188, 17466558, -23891292, -1251446, -22807350, -23567560, -14883135,
-27558658, -22415434, -6392522, 2116882, -3293166, -32270774, -34713000, -21106544, -12514461, -46750184,
--27857694, 6926709, 27963458, 29180544, 37263136, -2567317, -30575872, -39592620, -30466888, 15353434,
-4851166, -5023501, 18084496, 45932528, 12128988, 12159052, -11754252, -8871792, -15262703, -9385040,
--4985384, -14805289, -3491272, 17342542, -3850975, -7866233, -14292577, -15906948, -17867600, -5431523,
-8586176, -4911832, 3638911, 1998770, -32106492, 3314104, -15338939, 13255343, 25695178, -13129715,
-17736604, -2423435, 4291209, 441308, -25391310, -4197257, -8295730, -6752226, 23113366, -14740328,
--99975568, -135506752, -128042104, -121785944, -146004736, -24419574, -40365712, 25920128, 41320268, 130760816,
-84006872, 110859552, 152775200, 167980464, 114683680, 145937088, 83072720, 38725572, -5827197, -27396522,
--37221796, -61609696, -60469920, -83566104, -35329328, -30740154, -78617232, -58704688, -56209848, -63931660,
--104020888, -70853000, -54539104, -43803296, -80052288, -11157251, -23970212, -33285460, -77518792, -71603544,
--59025200, -50471236, -36640904, -14903537, -49276160, 14271103, 25593174, -38579544, 43280924, 60108604,
-57759256, 104812768, 85182088, 65615824, 72219872, 72659576, 72108208, 110221744, 124031680, 121886344,
-83422760, 131459288, 129814312, 135242080, 137529152, 156161792, 138625440, 146378928, 194237216, 99092408,
-100071664, 101423504, 94518808, -4447976, 43201464, 54335096, -31084288, -16762184, -53597432, -98354752,
--89000848, -94003952, -169333920, -124311920, -75579616, -132449816, -140167872, -115754736, -123284352, -122127928,
--146591536, -134413680, -135646880, -127032248, -118471304, -108113992, -100013144, -100224136, -83204792, -70188352,
--110928264, -16963510, -49847392, -57363584, -12874164, -7123740, -56115360, -7131793, -21639656, -8070781,
-20755430, 24841018, 65246996, 38691748, 54559508, 60465088, 65846680, 59726888, 83419536, 81347752,
-86646136, 80821624, 97010424, 99584184, 97806072, 79061224, 102270152, 107405320, 83400752, 56191596,
-54465016, 32988570, 28629178, 7789460, -3415573, -3235721, -17642116, -15925739, -12101607, -7037841,
--15665893, -16919486, -15651935, -7326141, -15650861, -20058572, -11640435, -3979287, -13694503, -18891950,
--15096273, -12797392, -20027432, -20374788, -15313169, -9833864, -8535174, -8010114, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--6308233,
-7975755, -615791, 3212099, 1615982, 3783329, -6770479, -3656628, 4343286, 2100239, 44023,
--3766150, 767189, -10504416, -6765111, -368293, -4034048, -4562329, 1868311, 8203925, 1373316,
-6246493, -1451699, 6172942, -3692061, -3295314, -415538, -5578626, 1102196, 2767570, -2019172,
--139050, 1442572, 258235, 2510945, -303332, -5971079, 2130304, -3703336, -2793339, 1669669,
--3680250, -5572720, 5533529, -5847061, 5265630, 4915590, 3234110, -272730, -6860674, -3997004,
-763967, -1304060, 8812199, -5410585, 2136746, -708133, 1156957, -6687801, -11156714, -1979980,
--3357054, -3733400, -887985, 4696547, -1032940, -5040144, 4397510, 1858647, -2246805, 3668439,
--731755, 1089848, -5143224, -438624, -1293859, -99858, 1952063, -2366527, 1578401, -4711579,
-3154654, -754841, 322123, -1735167, -1567126, -3221, 1910187, 681289, -82141, 715649,
--49929, -2850248, 801548, 204011, 1761474, -312459, 46171, -34897, 26307, -207769,
--1028645, 4281546, 4270271, 605054, 7701413, -87510, 3325379, 4138738, -50466, -3758633,
-392990, -5340255, -6840273, -2596308, -7794829, -8045011, -2621004, 5288179, -1891933, -1832340,
--4190814, -1060320, -7326678, 3579855, -2053531, 1808181, 4394826, 1490891, -1544578, 3022046,
-2864206, -3575560, 2481417, 329639, 661425, 2679523, -6391985, -2757906, 4524211, -2902324,
--213675, -1846299, 5021354, -6437619, -537945, -5391795, 3493419, -320512, -397821, 4871030,
--2107755, -2340757, -1685775, -4552666, 323196, -2062121, -363998, 301185, 3096672, 3148211,
-1058173, -1398549, -5376226, -8791798, -2727841, -610959, -2174864, 4725538, -1908576, -2710661,
-3770445, -2429878, -3773129, 8343511, -1815161, -4667019, -421444, 766115, -1400159, 4115653,
--535260, -3678640, 52613, 161598, -794569, -1108102, 3272228, 739271, 461172, -1952600,
-406411, -594853, 220654, 1276679, -287226, 723702, 1518271, 191663, -308164, -327491,
-643171, -1854889, -693637, -370978, -856309, 771484, 639413, -304406, 8938364, -5683316,
--2679523, -4112431, 3321084, 643708, -398358, 6447820, 1553168, 1890323, -9341017, 1724966,
--4353486, -5069672, -6584722, -105764, 245350, 7828115, -6387153, 2962454, -2673617, 9678709,
--3480534, -3204046, 6894497, -2630668, 2386391, 1040993, -446677, 1139777, -4606353, 752156,
-228707, 1954747, 9106404, 3171833, 861141, -3881577, 3194382, -7066295, -1949378, -1351841,
-3883724, 3310883, 5507759, 3606162, -4107599, -6058588, -2631204, 4632122, -554588, 2405719,
--960462, -666794, 9260486, 2183454, -687195, -11034845, -4908074, 289373, 3854733, 5907728,
-8325257, 4656819, -1991254, 1492501, -2019708, -2821257, 5978595, -3754338, 6155225, 282931,
--5525476, 2000918, -2838974, 4794257, -4096325, -468151, 4182225, 4782446, -4775467, -1836099,
--884763, -1961190, 2897492, -642098, -2030983, 1330366, 712965, 732829, 826781, 1160715,
-646929, 694711, 327491, -343061, -397821, -1772748, 2780455, -105227, 185757, 318364,
-62814, 441308, 1494649, 1435593, -44560, -374199, 1858647, 1401233, 1119376, 4686883,
--1122597, -785442, -1729798, -5486284, 213138, 3940096, 3925063, 7342247, 3365644, -9642202,
--8054138, -6989523, 288837, -1184337, 511638, -3808026, -2365990, -592706, 2927020, -39728,
--6177774, 6674916, -954020, -6202470, 1269700, 1464584, -127238, -595927, 2683281, 3534221,
--2212445, 5401995, 267899, 3164854, -7368017, 5240934, 1864016, 3022046, -5071283, -557272,
-3707094, 3172370, 8046085, -301185, -11112154, -3039763, -5323075, 2603287, 1799591, -461172,
--2967286, 847719, -4557497, -1615445, -8298414, -4884989, -280247, 4619774, 5156108, -3724274,
--3187940, -3263638, 5299453, -1810329, -653372, -7969849, 4801774, -7866233, -2732136, -343597,
--1663763, -2138357, 8366060, -714575, -1945620, -2241973, 1659468, -5045513, 579821, -8748312,
--7030862, 2559264, -2455111, -1308891, 3124589, -1586454, 4168803, 819265, 1914482, 2933463,
--785442, 1415729, 956704, 539555, -617402, 1070521, 433255, 261993, -651761, -690953,
-170188, -2565169, -48855, 1604707, 384400, -102005, 303869, -1575716, -509491, 957241,
--471373, 2231236, -2899640, 4105989, -3301756, 3221, 5667210, 10318659, 7138773, 1532230,
--8079371, -6062347, 2168422, -1387274, -5181341, -1701344, -6674379, -2870112, 13411035, 1549946,
--1428614, -2498597, 8053, -3121368, -2158221, 9067213, -9409200, -1110249, 929324, -2013266,
-2362232, 5484137, -2520072, -3098282, 1387274, -3854196, -3760244, -8749385, -3240553, 2356327,
--7832410, -1313186, 3886946, 5900212, 2099702, -12286828, -3707094, 2468533, 6193343, -4820564,
-10688026, -1246077, -5424544, -3026878, -2313914, -4224101, 5810017, -4345970, -1159104, -5739150,
--4502200, -2107218, -4578435, 6142877, -2261300, -12317429, 4704063, 8262980, 110059, 2985539,
--14969035, 11680700, 211527, -9816148, 989990, -6631430, -1406602, 1035087, -7124277, -8359617,
-5550709, 2593087, -7238094, -498753, 179315, -4482872, -567473, -1660542, 1112397, -3979824,
--2053531, -792958, -1982127, -1014149, -2925947, 950798, -199179, 1493575, -3181497, 738198,
-1787243, -54761, -1811939, 1152662, -1759326, 1656247, 1351304, -1356673, 1317481, -260382,
--936303, -446677, 453119, 625992, 374736, -11076721, 2500208, -8153459, 8719320, 2225867,
--3313031, -6579353, -11533598, -5007932, -8348880, 2894271, 16143708, 2765422, -4180614, -230854,
--2199023, -2468533, -7256347, -4764730, -7471096, 2047089, -548682, 1664300, -2604898, 1264331,
--7895761, -520228, 1824824, -5355824, -1967095, 703301, -2918967, 801548, -2685965, 11941083,
--14548128, -2567317, 1194538, 3944391, -1489817, -5955509, -8918500, -6308233, 4803384, -1247151,
-5327370, -4505958, 13817447, 1838783, -2666101, -105227, -8190503, -10455561, -5286568, 4008815,
--8941585, -509491, 10523207, -258772, -4970351, -9945534, -16865262, 736587, 8664023, -2360622,
-9940702, -862215, -3107946, -6194954, -5508296, 1006096, 3949223, -3142842, 14412300, 4393215,
--4625143, 2258079, -5920076, 2217277, 2725694, -1940252, 3124052, 5881421, 2482491, 311385,
--3868155, -10549513, 712428, -2364916, -1067836, -1575179, 761820, 268972, -139050, -4640712,
-738198, -2644626, 878858, -2604898, -879931, -650151, -244276, -199716, -512712, -1859721,
--1702955, -2041183, -3062312, -3216931, -1364189, 205622, 856309, -1670205, -52613, 137976,
-316217, -1261647, 9472014, -4160213, -10955925, -2996814, -8182987, -4258997, -3556233, 11605002,
--2917894, -3884798, -4900558, 7461432, 6700149, 5923834, 16365436, 17153026, 7936563, 10664404,
--4020626, -4928475, 7086159, 10523207, -4573604, 4629975, 3241090, -9128416, -8654896, 5113159,
--1275068, -105227, -8637179, -10953777, -2616709, -8877697, 10049150, 18808198, 3875134, 7428683,
-2153926, -2202245, 6709276, -12832825, -3439732, 2681133, 7149510, -4219269, -10378252, 15154792,
--35433, -4641786, -3707631, 6224482, -1862942, 5550172, -3792456, 8704825, -733366, -217970,
-10737418, 3348464, 4951561, 1939715, -1640141, 8032126, -12222940, -4892505, 4570919, 13835700,
--8412230, -971200, -1716376, -1941862, -5764383, -1263794, -2990908, -3958349, -565862, 935229,
-3908957, -1619740, 11101954, 4050154, -6370510, -1532767, 832150, 4242354, 1503239, -1922535,
--3841848, -835371, 2456721, -2470143, -2161979, -1889786, 2280091, 1421634, 2252174, 1175210,
--2040110, -807991, 71404, -2061047, -351114, 1615982, 1005559, -253940, -2287070, 3032247,
--408559, 1887638, -1272384, 926102, -2657511, -257698, -383326, 128312, -1768453, 6856916,
--6709813, -2596845, 6191196, -4805532, 2684892, 4668630, -9159555, -9773198, 2804614, 7516193,
--2538863, 6862284, -4968741, -2184528, 13055090, -14771466, 8927626, -4192962, 117575, 416612,
-16117939, -3563212, 3193308, 5140539, 8885750, 5209796, 7785702, -1273458, -1238561, 2557116,
-1262720, 1312649, -7763691, 12103218, -16106664, -3531000, -4231617, 9021579, -1803886, 10990284,
--492848, 1052267, -19167902, -5246303, 11704323, 19894826, -169114, -9849434, -8299488, 8180839,
-6579353, 4954245, 4697621, -8441221, -3858491, -4880157, 2596308, 376347, -5183489, 3077344,
-2684355, -2409477, -2647311, -11558294, -3037616, -4231080, 16557636, 1531156, 3133179, 6287296,
-512175, -12936978, 661425, -7782481, 6482717, 15462956, -8174397, 4792110, -2340757, -8002598,
-3893388, -6706055, -1146219, 2819109, 2094333, 3550864, 1509144, -545461, -2921652, 3359738,
-7257958, 1231045, 3604551, 5970542, 2667712, 6748468, -2019172, 6383395, 335007, 162135,
-1403381, 724776, 1845762, -183073, -3116536, -1730872, 149250, 1717450, 1809792, -1213865,
-3101503, 2936147, -2449742, 4146791, 6984154, -12017855, -4626754, -4521527, 2284386, -693100,
-17877264, -2247879, 620623, 11348914, -10126996, -7352984, -9495099, -9938017, -2417530, -366683,
-4457103, 19123878, -1760937, -11010149, 19794430, 324270, 5528697, 13535589, 9321690, 12632036,
--3320547, 9978820, -6461779, 13224204, 11546483, -3137474, 6007049, -5325223, -4962835, 4993437,
-15115601, 6814503, 5961415, 2141578, -4854924, -8366597, -8539469, 1379221, 10380399, -6060199,
--7320772, -8959302, -3432753, -17757006, -4198331, 3401077, -13081934, 6305549, 890132, -5954972,
--15363098, -10247792, -24159, -20328618, 6328098, 4496831, -498216, 5660767, 3633006, -1986422,
--10641318, -6418292, -1248225, -6712497, 6201396, -7034083, 16773458, -11337103, 537408, 7388418,
-587337, -5070746, -19491636, 3381750, 9451612, 2302639, 485331, 10532870, 5738613, -6041409,
--69793, -704912, 709207, -432181, -3439732, -6845641, -2128156, -7395397, 328028, 1847373,
-814970, -1916629, -3913252, -1772748, -2645163, 3210488, 872415, 4201015, 2895882, 2412698,
-824634, -347892, -1561221, -1301375, -3456912, 1542430, 107374, 1536525, -1733556, -223338,
--2921115, 178778, -2313914, 865973, -24816858, 8718784, 11337640, 19942606, -54224, -14808510,
-4185446, 7137699, -15328738, -15944529, -9960029, -391916, 8521752, -438087, -6238440, -324270,
--5457293, -3677029, -9877351, 16510391, 12904766, 4857071, -20233054, -6063420, 3267933, -1149441,
--4495220, 25629144, 9402757, 8055748, 7557532, 12167105, 9141838, 2226941, 9571335, -647466,
--15891916, 8613557, -16347719, 5005248, -16183974, 13690745, -4265440, 16530255, -8998493, 4021163,
--7274064, 5961952, 9687299, 25229174, 5353677, -32068910, -1677185, -4458176, 6910603, 14021458,
--2813741, -6223945, 10324028, -1814624, -5033165, 13812078, 900869, -606664, 726923, 5918465,
-11070815, 8751533, -9463960, -7050726, -5960341, -9623411, 2285996, -885837, 10947335, 7852811,
--14702210, -3548717, -8303246, 7153805, -4025995, -3931506, 2611877, 483184, -5643050, 4872641,
-1221918, 812823, -803159, 2771865, 2903935, 459562, -8303246, 2331630, 1494649, -1069984,
--1431835, -2771865, 147103, -3709241, 1761474, 4185446, -1231582, -1243930, 4149475, 641024,
--3785477, -2937221, -645856, 1998234, -1623498, -401579, -2309619, 628139, -1528472, 15569,
-3993783, -2647847, 27016954, -10253698, -18022220, -5745056, 7026567, -4465156, 12978854, 18781356,
--7568806, 17223892, 11082089, 8652212, -2857227, -2090039, -3482682, 16706349, 3048353, 2001455,
--9742596, 4224101, -5095442, -439697, -16084653, 10880763, -14760192, 54224, -10413148, 17426830,
--8921184, 375810, 17224430, 13085155, 8848170, -1067836, -6846715, 7995619, -257698, -1562294,
--22011708, -6549289, -13297756, -10813117, -8434779, -3988414, 11436424, 7175817, 6667400, 13959,
-16834662, -8933532, 17814450, 15653008, 16803522, 29389388, -11373073, -8885750, 12922483, 2419677,
--11414949, 17727478, -5843303, -8580808, 5750425, -2209761, -6160594, -5094368, 7612293, -10305774,
-4657355, -6391985, 16284905, -6949257, 243739, 4738960, 11870216, 16131897, 1279900, -14124000,
--15340013, 4989679, -10226317, -32905892, -17328046, 5225902, -391379, 9489730, 1194001, -5414880,
--648003, -3154117, 1372242, -5729487, -2536715, -3941169, -1676111, 423591, -739808, -10298258,
--2730526, -6755447, -6077916, -4774393, 2052458, -505732, 379568, -7509214, -5254893, -311922,
--329102, 1427003, 3811247, 3134789, 2304787, -5415417, 212064, 1192390, -7013145, 2415919,
-355409, 2990908, 1319092, 3824669, 2116345, -1617592, 3204046, -2537789, -1927367, -25209848,
--21310554, -1031866, 4474819, -14551349, 643171, 1285269, 23431194, -15287936, -17490718, 5665062,
--7373385, -31139, -12781823, 12169790, -12986370, -17396766, -10528039, 20098836, -13717589, -11206107,
--2587181, 8158291, -6017786, -14421963, 4466229, -5842766, 77309, 6558415, -19026706, -1436667,
-10525354, 16924318, -2580202, 25871810, 11336029, -2952253, 1141388, 11764452, -4855461, -10524817,
-1986959, 14013941, 1552631, 6726456, 304943, -11480984, 3957812, -25201258, 2283312, 1366873,
--3220152, -14844481, -13484050, 1633698, -6156299, -10193031, -6835978, -8206609, 9634685, -16598975,
--9483288, -4788352, 7210713, -9767829, 20340428, -3066607, -17114908, -1484985, -10193568, -27137750,
--8126615, 1793149, -836982, -17631378, -9423695, -4027606, 4007205, -10480257, -5211406, 17388712,
--6198712, -23741506, -8362302, 3069291, 1806571, 7797513, 6588480, 4918812, -5525476, -6900939,
--1653562, -4823249, 3455301, 1039919, -3053185, 5076652, 2108829, 2982318, -2061047, 2442763,
-1825898, -19327, -1019518, -1762547, -2211908, 38655, 1369021, -8443369, 1800665, -4860829,
-5415954, 2003065, -6249715, -5532992, -490163, -4380867, -648540, 1775969, -1590212, -2959769,
--4637491, -3525095, 2433099, 897111, -5251672, 1952600, 538482, -3496640, -2977486, 19248432,
-17204028, 5158793, 35217660, -6540699, -12300786, -11020886, -5161477, -18969796, 25633438, -15352897,
--5603859, -12435004, -6415608, -5843840, 3026341, -18039936, 283468, 211527, -2486786, 5132486,
--19071266, -4840428, 13086228, -12982076, 716186, -16800838, 16135655, 104690, -28656022, -14860587,
--5187247, -603980, 7971996, -17393544, -9757092, 11965242, -2040646, 8269960, 7597261, 7510824,
--10441602, 1183264, 12680354, 4705674, -23655070, 15273441, 11016591, -12764106, 36339720, -617402,
--26075820, 7263864, 8244190, -530965, 19396072, -5892159, -32395328, 9194451, 4650913, 9769440,
-11504607, -14745696, 23447300, 8892730, 7295539, -5499169, 35505956, -2646774, 617402, 24308978,
--4134443, 11135776, 19182934, 6660958, 2865817, -4513474, 9222905, 490700, 16219944, -7027640,
-15788837, 14579803, 887985, 14429480, 8581345, 11520713, -5812702, 75162, 13104482, 9557913,
-7041062, 4336307, 4486630, -8529268, -1010391, 544387, -4035122, 673236, -1462973, -3574487,
-7594039, -7661685, -1475858, -7511361, 6618008, -3114925, 7930657, -6610492, 1105954, -4557497,
--6675453, 4794257, -2546916, -12348, -6515466, -9514963, -7181186, 7651484, 716186, -2914135,
-789200, 9490804, 6760816, -2643552, 3278671, 306553, -2617246, 9819369, 340376, 7093676,
--25128244, -24663312, 50577000, 16311212, -31601296, -15896211, -14499273, -28941638, -2157147, -15278809,
-21061982, -11921219, 97174, 26268020, 558346, 4354023, -19359566, 24217174, 18051748, -329639,
--5851893, -1904818, -15052250, 1126355, 1905355, 3055869, -20681342, -3028489, -1202591, -6242198,
--4609574, -14271639, 13496935, 26728118, 32125818, -2637647, -13020730, -5450851, -6660421, -4524748,
--19725174, 6687801, 7701950, 7051263, -20554640, -27454504, 29648696, 11175505, 16603807, 21514564,
-20195474, -8779987, -13811004, 19465328, -19835232, 10036802, -14845554, -11414412, -6622303, 23163296,
--7687992, 4685273, 7973607, -4255776, -18752900, 38748660, -23443542, 2377801, 28094454, -25458418,
--11499775, 2959233, 10284299, 28846074, 5186173, -16782584, 492848, 3486440, -3907883, -7067906,
-4175782, -11766600, 9010841, -9747428, -13613973, 7318088, 4160213, 10355703, 4705137, -419833,
--4702453, 1132798, 2941516, 3165928, 11152956, -684510, 1575179, 6864432, -16421807, 2323041,
--7376607, 1762547, 1877438, -2705293, -6187974, -7769059, -1843078, -7797513, 3087008, 4159139,
-9558450, -887985, -6316823, 6014028, 7421704, 4433480, 4558034, -11898670, 467078, 2932389,
--2883534, 10137733, -3768834, 711354, 1141388, 9355513, -4432943, 2758980, 13125420, -8449811,
-8221641, 33676840, 20285130, -3073049, -21614960, 2231236, 34534760, 27492086, 5767604, -27388470,
--10566693, -23649700, -1791001, 18457622, 22807350, -1704565, 8651138, 27113054, 28856812, 44793288,
-45090176, -22558242, 9788767, -24357296, -4429722, -19751480, -7115687, 15520401, -3511136, 6777996,
-6083285, -14043469, -10296110, 11413339, 12728136, 16523813, 11735461, -589484, 12099460, 18241262,
--9704479, 9222905, 10744934, 3178813, 10492605, 34927748, -26304528, -22648974, -5125507, 21570400,
-20666308, -12330314, -191126, 33153926, 26804890, -18837726, -12577812, 11372000, -23002234, 6356015,
--11088532, -20866024, 6694781, -24511378, 25392384, 9308805, 28131498, -11864847, -16517907, -31858994,
--6930467, 10361609, -27929098, -23892366, -13107703, 12424804, 7332046, 5826660, -12331925, 5293011,
--8841190, 3343632, 25854630, -11066520, 2987687, -14735496, 11067594, -6101001, -12400644, 8668855,
-12032351, -6772627, -3541738, -4030827, 8619462, 19273666, -6257231, -13040058, 212064, -289910,
--4886062, -2117956, -18084496, 2440078, -9648644, -4347044, 6440304, -5939940, -3289945, -597000,
--5082557, 7871065, -8004746, -12548821, -11404749, -9603547, 10029822, 5257577, -2422899, 4405026,
-2909840, -8164733, -8936753, 3203509, -15760919, 13298292, 33883532, -2178085, -10481331, 21760452,
-4479114, -1242856, -32248226, 28342490, -13978508, -30634928, -10406706, 2087891, 35334160, 3398930,
-25322590, 10278930, -29976188, -6503654, -26555782, 4279935, -26470420, -19022410, -11361799, 1349157,
-5572720, -20504710, 20145008, -6482717, 12243878, 13173202, 13027173, 24449638, 44573708, 26169772,
--8500814, -21907554, -762357, 46945604, 29241212, -15962783, 23367306, -8985072, 28542206, -14161044,
-2775086, -10597295, -5262409, -1582159, -8015483, 70547520, -13414257, -19451370, -22500796, -31631360,
--12173548, -24376086, -1084479, 27273580, -10853919, 8066486, -9073655, -13895293, 24799142, -6882685,
-41775536, 7754564, 33416994, -40803264, 16816408, 71718976, 26097832, -39978628, 23815056, 21818434,
-1321239, 4641786, -12250320, 13675176, 62954020, 33490008, 14135811, 19108310, -19680614, 36448704,
--3800509, 5617817, 5792301, 9012989, 4237522, 23982560, -19786378, -4922570, 1739462, 30570504,
--5140539, 7513509, 35401268, -2762738, -19672024, -4529580, 13030931, 2171643, -8307004, -19934016,
-11632382, 8352101, -13719736, -8048232, 9549323, -16858820, -14020384, 4593468, 7055558, -30602,
-4911832, 3347390, 5739687, -6158446, 6003291, -3737159, -5005248, 5542119, 2400350, 7657390,
-1186485, 49008260, 22868016, 5441724, -1563905, -53556632, 24910810, 33598992, -24274618, -17652852,
-41486700, 27067958, -33318746, -35330400, 1170379, -20656646, 8903467, 3405372, 8491150, -33199560,
-8586713, -6458557, -16624745, 29488708, -2150168, -4909685, 9814000, 24734180, 22117470, 15212774,
--28513214, 631360, -13975287, -30259118, 10910828, 8588861, 18523120, -6373732, -14250165, 38766376,
--27950574, 12312061, 13313325, 10981695, 8167954, -4772783, 22741314, -21190832, -36839544, -6111739,
--42180872, 36932960, 22488448, 36246840, -3105798, 7184407, -29407104, 30457224, 38131792, 13817984,
--16499654, -42881492, -10088878, -56591024, 618475, -10476499, -38656852, -32530620, 14697378, 2467996,
-23404350, -18202072, 26858042, 22893786, -32408750, 6905234, -19468550, -5340255, -29316910, 3792456,
-84306984, 21201032, 24536612, 31092878, 13538811, -23898808, -3591667, -233002, 19769734, -4495757,
-20316806, -9230958, -13024488, 617402, -1756642, -23594940, 20066088, -3650185, -6147172, -7233262,
--16952772, 2512556, -8187819, -10483478, -15790447, -12021613, 7180112, -8644159, 7018514, 8548596,
--6282464, -9749576, -13703630, 6248104, -2779381, 5830418, 20030116, 12863427, -606664, -1540820,
-6158446, 12909061, -12992813, 11407433, -13100724, -5520644, -33506650, 15107011, 11596412, -15636365,
-5883569, -7935489, -50529216, -13197898, 12910672, -5666136, 5947456, -28071906, 37314676, -48410724,
-4200478, -35402340, 25129316, 27539330, 9288404, 23081154, 2918967, -23271744, 40480604, -18493592,
-4622996, 836445, -22659710, 38253664, 3056943, 10080288, 8753680, 12085501, 6757058, 28714540,
-34033856, 11559368, 39696772, -33888904, -2173254, 241592, 50641424, -9367324, 40473624, 22572738,
-55449640, 11054709, -12002286, -17296370, 22323630, -40871984, 39278012, -23164906, -13355738, -6263136,
-8311836, 29656212, -6395743, -53059488, -14325863, 86611776, 6890738, -54118736, 13931263, -35752380,
-11202885, 85340464, -22907208, -23030688, 59559384, -63459752, 32691144, 14886357, 19760608, 55674588,
-35548372, -48991620, 61152280, 40231496, 2350958, 64951180, -26051662, -8554501, 47342888, 31210990,
-6138045, 12935368, 488553, -257698, 6210523, 16456167, -13961328, 17374754, 17993766, -14105209,
-8126078, 12233141, -20213190, -1499481, 8355859, -1508070, 4539244, 26825292, 1028108, 18028126,
--8681203, 707596, 13360033, -7519951, -6035503, -16836272, 3591667, 16302622, 11190537, 15389942,
--27205934, 16089484, 18838264, 8788040, 3838627, 8083129, -619549, 17121888, 30251066, 7824357,
-14948634, 14123463, -6155225, -7155953, 14775224, 21540872, 29281476, 55824912, 27797028, -26767846,
-35700304, 10699837, 32209034, -9278203, -59617904, 60617556, 52640192, 32345398, 99380712, -9269076,
--83374976, -43110196, -39342976, 88140248, 64801392, 15665893, -5589900, -16109349, -58282168, -27692876,
--18869402, -33502356, 89719720, 72771776, 101192112, 1877975, -115698368, -180230784, -87856776, 100417944,
-135552928, 138379008, 55832964, -114705152, -210686944, -129230200, -65155728, 97231616, 165390608, 93891208,
-51142860, 13663365, -74477416, -100207496, -74891344, -5651103, 58247808, 117871080, 141021488, 25061672,
-27691264, -111823768, -185217776, -98826120, 92532384, 155081600, 147162224, 91807072, -53748832, -180289312,
--116565952, -151182848, 766652, 102634688, 111126376, 55604796, -43793096, -94926832, -83909168, -66519380,
-19963544, 63216012, 44739064, 127896072, 46518252, -28635620, -75277352, -28093382, 85600312, 124496072,
-42426224, -4904853, -75780400, -15532749, -16687022, 49100604, 19110994, -12628278, -52147884, -15904264,
-3488587, -8591008, -15222438, -3584687, 13094818, 26485452, 45679660, 21543556, -43631500, -39674224,
--36269388, 8672076, 48150880, 52459804, 25184078, 5390184, -32849520, -14789183, -65118684, -58641336,
--4144644, 17026860, 73496552, 108803336, 42464340, -38333120, -88883808, -112429896, -45936824, 87628608,
-146404704, 99345816, 31524524, -73296840, -117599960, -58635968, 991601, 21235928, 22835804, 50174880,
-27216670, 10764262, -28748900, -64632816, -46846820, 6252399, -12566537, -32347010, 37434400, 5425081,
--54120348, 7030325, -14050449, -21668110, 16345035, -16573205, -6578280, -28881508, 1734093, -10951093,
--21590264, 8816494, -2385854, 7421167, 3571802, 18177912, -17601850, -5756867, 5516349, 2178085,
-8432095, -7311645, 18211736, -12550431, 12576201, 6177774, -5768141, -13179644, -5686000, -24903830,
-27509802, -2195802, 1048509, -4467840, -6407018, 1819992, -665720, 1031329, 10720775, 6648610,
--179315, 15708306, -13150653, 5092758, -12483859, 14170171, 8563091, -10071698, 7456063, -12368432,
--14230837, -11243151, -22014392, -2033667, 16745004, -14799920, -29995514, -20264192, 1888175, 18705656,
-454730, 14034343, -28559386, -7186554, -3270081, -2277943, -27938762, -6698539, 973347, 4391604,
--10000294, 29468308, 11761768, -9168145, 26897232, -2416993, -48115980, -1768453, -7020124, -4097936,
-9250286, 6320581, 12750684, -14822469, 20633022, -35156992, 10152766, 6458020, -1557463, 197569,
--2378875, -2235531, 11768747, -2027225, 1998770, -5128191, -632971, -10178536, 2530810, 262530,
-20523502, 10201, 9015673, -9338333, 1012002, -4603131, -12348031, 3959423, -465467, -5867999,
-14562087, -2621541, -3997541, -5789079, 10620380, -3926137, -20643760, 4381941, -4256313, 6509023,
--8932458, 1104880, -2764348, -12311524, 11275900, -10870025, 7673496, -10375030, 5315022, -777389,
--4255239, -29228326, -47957068, -75341776, 2769180, 62201864, -23771034, -38155952, -40783936, -38536596,
-8071318, 8012262, 71694816, -10356240, -10268193, -31875100, 3595425, 9716827, 22591528, -23956790,
-12165495, -17419314, 28088550, 8966281, 9212168, 3395709, -17447230, -9484362, -11365020, -3741990,
-10178536, -10513543, -9263171, 19814294, -18064632, -11261941, 16372415, -15557982, -5716065, -13353053,
--21809308, 7727720, 14320495, 2646774, 13491566, -20502564, -5224828, -593242, 11895986, 14749455,
-18253074, 1291175, -1920924, -30842160, -31718870, -11715060, -10296647, -6926709, 14542222, 19957640,
-28144384, 3118683, -12880070, 28245852, -20200304, -9009231, 12537010, -8830990, 37044628, 1898912,
--6213744, 6292664, -13585518, 10764799, 25643640, 21059836, -7647190, 7975755, -25007448, -16282758,
--9315247, -6152541, 18452790, -2388539, 18010946, 4814659, -6028524, 2182380, 3161096, -21626234,
-12787728, -16005196, 9863929, -7341173, -4614943, -1116692, 11697343, -11230803, 1287417, 1994476,
-10189273, 18094698, -9336185, -2688650, -14522358, -5770826, 4817343, -5646809, 3789772, -4412005,
--6060199, -9978820, -15880642, -8637179, 14121852, -5608154, 6847252, -10281615, -2603824, -809601,
--3489661, -9216463, -4394289, 1056562, -1324461, 141197, -243739, -13948980, 19636054, -48543868,
--113477328, -86721832, -10009421, 37539088, 97904856, 82649664, 78922712, 80581640, 53192632, 22388590,
--29042568, -51546588, -98342400, -72493144, -71200896, -71025336, -44149580, 42811160, 57751740, 84813792,
-65161096, 54539104, 18029198, 36365488, -8167417, -9470940, -11410117, -19961934, -37220188, -30565134,
--62704912, -22904524, -49791556, -23795730, -11748883, 16256451, 3301756, 23283554, 5441724, 32631014,
-24084030, 39484172, 52624624, 65243776, 41826004, 27992986, 46466716, 3507915, -15741055, -57412976,
--67177584, -92573192, -82385528, -77167680, -29472602, -50680616, -26412976, 3010772, 14016089, 32560148,
-62366148, 66298188, 74277704, 111997712, 63181116, 85779088, 59629180, 13469017, -9038759, -35306240,
--89620400, -98213016, -93321584, -103745472, -76013944, -53199076, -42516420, -11780558, 21907018, 36452460,
-46553152, 69005632, 73498168, 77189152, 73128800, 45408540, 31883690, 14984604, 1750736, -324270,
--21952652, -36188320, -52003464, -62095028, -65673272, -62372588, -43633648, -19781546, -17519172, -6798397,
-11775190, 30865246, 38734700, 73016056, 51687248, 40594420, 40818832, 14555644, -1588601, -10691247,
--12872554, -13911399, -35380328, -31999654, -22934052, -24275156, -17552994, 2208150, 5609228, 6886443,
--4195110, 11512660, 416612, 13644574, 14296872, 4525822, -4839892, -716723, 3125126, 1840394,
-2273648, 6394670, 1486059, -3404835, -10267119, -2488934, 2340220, -383326, 6375879, 4872641,
--1081795, -1055488, -4389994, -3587372, -2379412, -1650341, -1961190, 1397475, -1194001, -930397,
--272730, -2176475, -2898566, 275952, 583042, 886911, 636729, 428423, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--9297530,
-7221988, 367757, 3323768, 3297998, 9343701, 4401805, -3434900, -4341138, -6060736, 4363150,
--5300527, -3850975, 879931, 1349157, 587337, 5486821, -1776506, 5129265, -1298691, 4605279,
--4337917, 2026688, -1909650, -4636417, -316217, -8854075, 1341640, 2187212, 3976066, -3227131,
--40802, 3470871, -2535105, 3897146, 3669513, -2185602, 2638184, -2932926, -1358820, -2165737,
--3169686, -4029753, 3628174, 5354751, -3989488, 2382096, 4307316, 3488050, 5270999, 671626,
--780610, 3074123, 2334852, -5551782, -202937, 653909, 363462, 1775969, 3614215, 818728,
-1315871, -1920387, -1213865, 2561948, 3590593, 2007360, -1890859, -3312494, 3701188, -2989297,
--967441, 2077154, -616865, -125628, 1580548, 382252, 106300, 3357591, -3272228, 2503429,
-1363115, 1644436, 3097208, -1236414, -354335, -1037235, -430034, 135828, 1517734, -1194538,
--216359, -823023, -476205, 57982, -116501, -476741, -340913, 347892, 449361, -2684,
--195421, -328565, 49392, -100395, 52076, -474594, -107911, 487479, -1068910, 3682935,
--1955821, 2697776, 256087, -230854, -7508140, 1202591, 6391448, -3927748, 2639794, -7973070,
--8067023, -2660195, -6560026, -5726802, -863825, 1180042, 4503810, 714575, -2172717, 1017907,
-3064996, -3966939, 5491653, -3724274, -4027069, 4651987, -2317672, 5359583, 6813429, 941672,
--4916664, 3437585, 2246805, 1376537, -2502355, -1815161, 2861522, 2388002, 485868, -5558225,
--1603633, -5134634, 4635344, -4634807, -3021510, 3410204, 161598, 2959769, 848256, 1134408,
-5045513, 851477, 5659157, -7297687, -3744675, -1688996, 3616363, 5109938, 5844377, 7947837,
-864899, -2267743, -759136, -1069984, -241592, -5170067, -2260764, -2251100, -626528, 794569,
--4188667, -2485176, -943282, -1788317, -3274376, 3934190, -3936338, -1347009, 2625836, -6753299,
-2043868, 3675418, 4085588, 2143726, 1187559, 2441689, -1194001, -2622615, -655519, 700617,
--276489, 700617, 134218, -733366, 57445, -1054415, -1227824, 1497333, 682363, -144955,
--4832, -17717, 1147830, 523986, -438087, -472983, -457414, 78383, 851477, -1008244,
--159988, -63351, -177167, 549219, -18254, -413391, 8549669, -6314676, -2361158, -1233729,
-5261872, 4751845, -4768488, -421444, -8863202, -1924145, 10776610, 4070555, -4316442, 7743826,
-2535641, 2988224, 802622, -2575907, -8458401, 1154273, -3801583, -2398202, -1534377, -5146982,
--1813550, -3980361, 2803540, -1792612, -2325188, 4850629, -9104257, 8405788, -2943126, 1209033,
--2841121, 2634963, -325881, -821949, -211527, 3586835, 191126, 2273112, -3244848, 6300180,
--4873714, 7333657, 1573032, -709743, -4083440, -4792647, 9961640, 1729261, -9310952, 9550397,
-9002788, -4867809, -1774895, 2835752, -3666828, -672699, -2254321, 2269890, 5747740, -3475702,
-1324997, -2600603, -2373506, 951335, 7732552, -7066832, 4308389, -7284265, -5595806, -5258651,
--916439, 153545, 9664, 4423817, 6847252, 1791538, 1671816, 3344706, 2719788, 1501628,
-1709934, 2007897, -727460, 2160369, -972810, -2112050, 3649649, -178778, 513785, -657130,
--1066763, -630286, 36507, 1540283, -376883, 346819, 166967, -1367410, 25233, 758062,
-980863, -111669, 859530, 2437931, -3271691, 395674, -6462852, 6227703, -9084393, 387621,
-9549860, -17251274, 12074227, 4850092, -4559108, 3829500, -312996, 10531797, -1057099, -8636105,
--6022618, 3571265, 4108673, 1214939, 331249, 4505958, 1379758, 783295, 6094559, 2528125,
-1777580, 4413079, 3185255, 15004468, -4058207, 4035659, -161598, -2395518, 3934727, 2471217,
-1574106, 1959042, -2392834, -4076998, 331249, 56371, 271657, 2226941, 4620311, -4590247,
--4884452, 2199560, -1125281, -1826435, -2900177, 6149320, -4306779, 8858907, 4191888, 455803,
-2124935, 810138, 2464774, 11239393, 9446781, 783295, 592706, 2216740, -2184528, 4252018,
--857383, 3842385, 1225676, 318364, 70330, -4691715, 4628901, 3565897, -952946, -2663417,
-446140, 4468914, 498753, -1154809, 319975, -3246459, 2478733, 988916, 3140158, -731755,
-982474, 1372242, 1354525, 1163936, 1916092, 963683, 896038, -3966939, -159451, 1671279,
-2353105, -1298154, 1555315, 1452236, 1293322, 1460289, 663572, 1152662, 1407139, 1580548,
-317828, 667331, 511638, 778463, 299574, 481036, 1009854, 459025, -91805, -796716,
--1087701, 2228551, -1000727, 4868346, 132070, 5616744, -2121177, 4984847, -3733400, 10399726,
--7916699, -2935610, -3769371, 10723996, 6070937, 3959960, 6806450, -6109591, -1226750, 9899363,
-5615670, 4661650, 4806069, 2587718, 3305514, -1101122, 9478993, -953483, -4347581, -3209414,
-3330210, -3539590, 2179696, -8921721, 3326452, -1684701, 185757, -9587441, 4158065, -2030983,
-9040369, -1440425, 2867428, 2510945, -3797288, -912144, 4122632, 600222, 2829847, -2001992,
-5016522, 7135552, 905701, -4919348, 1909113, 5028870, 3577708, 696858, -3388729, -6945499,
-5857262, -7736847, -3284039, 4396436, -10304163, -2323041, 6398965, -4723927, 1348620, 128312,
--576063, -1338956, 2604361, -5100274, 288300, -8542690, -4440460, -11689827, 890132, -3248606,
-261456, -2230162, -361851, -2940442, 2691871, 2615098, 1040993, -1809255, 2485176, -235686,
-971736, -3335579, 865436, 739808, 1086627, 788663, 2325188, -251256, 2623151, -1100049,
--172872, 1869921, 2462090, 433255, 1363115, -1532230, -597000, -396748, -612570, -1085553,
-766115, 1970316, 524523, 2076617, -1919850, -1100049, -1075889, -2611877, -3059091, 2805688,
--18962818, 3308736, -5982353, -3485366, 4337380, 3279745, 2306398, 810675, -13933948, -1495722,
-4329864, -7511361, -1967632, -10266582, -5218922, 2247342, -1224603, -9459665, 9804337, 5881421,
--3010235, 1014149, 7712151, -5037460, 2065879, -3466039, -5395016, -3730179, -9750650, -3696356,
-7337952, 3399467, 9379135, -4819490, -15374372, -6710887, 3743064, -5004711, -10027138, -1771674,
--1899986, 9059697, 4642860, -10744398, 7096897, -7633231, -488016, -5541045, -5282810, -5085242,
--11829951, -7077033, 823560, 7488276, 11396696, 7235410, 2084670, 4460861, -5279052, -8854075,
--5463199, 5442798, -2739652, 5877663, -1867774, -5666136, -339302, 410169, -2750390, -6372658,
-325344, 4620848, -15401216, -10237591, 14249091, -4749160, 224949, -7994545, 3713536, 2019172,
--995359, -717260, 5170604, 3767760, 1110786, -1742683, -2021319, -462246, -2250026, 1124745,
-1472100, -3133716, -1595044, 1015223, 272194, -105227, 828392, 2869038, -3248606, -1571421,
--5882495, -2476586, -946503, -1198833, 218506, 714038, 1576790, 4295, 2042794, -2628520,
--1879585, 331786, 437550, 731218, 7244536, -203474, 3666292, -4968741, 3644280, -6790344,
--477815, 11792370, -5556077, 11140071, 11298985, 13925358, 3487514, 5572720, 12014634, 9402757,
-6925635, -9310952, 1218160, 2945811, 8060580, -1584306, -6901476, 8945343, 9075803, -2570001,
-6049999, -3007551, -3150896, 5689758, 4919885, -685584, 5836861, 517544, -9518184, -7612830,
-8250096, 11958800, -929324, -4134980, 2536178, 372588, -5686537, -10679436, 5589900, -10098005,
--4906464, 7731478, 1648194, 6840809, 303869, 10950019, 1532230, 12024298, -13967234, 12688944,
--2450816, -471373, 3832722, 6712497, -5365488, -11559368, -3271155, 10620917, -2052994, -12369506,
--7303592, -7573101, 2064269, 4496831, -10771778, 5470178, 6252399, 11221139, 3462281, 3547643,
-52613, 3172370, 594316, 2486786, 1711008, -8148627, -892279, 3913789, 2747705, 6634651,
--4319127, -1311576, -55835, 558346, 3172907, 427886, 2624225, 1079111, -1248225, -541166,
-2502355, 2302103, 897648, 2507187, 714038, 1113470, 3300146, 51003, -1743220, -904628,
-740345, 1608465, -201863, -755377, 2672544, 1372242, 611496, -2711735, -852551, -1550483,
--1332514, -125628, 2854543, 158377, 2717104, 3763465, 12053826, 1552094, 5039608, 14328548,
-15444702, 4607963, 3893925, -11403138, -5747203, 12613245, -9346386, 12890271, 3655554, -48855,
--2547453, -4503273, -7425462, 1367410, 5733782, -13861470, -6251325, -5895380, 3104725, 2784750,
-3068217, 427886, 2386928, -507880, 4212289, 3394098, -3642132, -6504728, -11950210, 2109366,
--6438693, 10816875, 473520, -6012954, -7501161, -2311766, 5067525, -9418863, 5934034, -3156264,
-1987496, -117575, -6657200, 6648073, 8475044, -5788542, 7140383, 2012729, -493384, 20199768,
--5030481, -13123809, 2540473, 4915053, -3220689, 1078574, -5646272, 13706851, 8043937, -1380832,
--2871723, 9726490, 9378598, -1971390, -7873212, -5790153, 19161460, -1782411, -2557653, -7724499,
--4924180, -1563905, 1932735, -2025077, -5003100, 8195872, -2525441, 9730248, 2911988, -3107946,
--995359, 1714229, 29528, -1705639, -1619203, 3403762, -4254165, -1102196, -1075889, 5602785,
-607738, -1267552, -50466, -2915746, -2589865, -398358, 664109, 5871221, -1294396, 3462281,
-1440425, -1968706, 1313186, 195421, -2764885, 2160369, -1324997, 3000572, -193810, -3170223,
--2189360, -1833414, -2201708, -90194, -621697, -1040993, 1170916, 1031329, 1766842, 4924180,
--10581189, -3029026, -3362960, 828392, 4437775, 10336376, 9029632, -14552960, 287763, 1656247,
--1513439, -4378183, -10036265, -1073205, 3326989, 5887864, 4786204, -9225053, -1642288, -11681237,
-10855530, 425202, -1124745, 5185100, -5223754, -1002875, -12429635, 2022930, -7437810, 5048734,
--1011465, -2133525, -4232691, -8282845, -8039105, -1010928, -9905805, -16142098, -3033858, -7393786,
--15498389, -1324997, -1374390, -8527658, 5492727, 8414915, -1101122, 3970697, -1117228, -1421097,
-2254858, 2427730, -12562242, -3770981, 6817187, -6113349, 14922864, 2620467, 3946538, -9745281,
--140660, -4449049, -9904731, -1138703, 13849122, 6356015, 10511932, 5774047, -4648765, -11296838,
--17559974, 11664057, 12004434, -1530619, 6181532, -13750875, 6492380, 5497022, 9767293, 1381369,
--11732777, -1601486, -10939282, -3878892, 861678, -3637837, 2267743, -2525978, -3658775, -1043140,
-1011465, -646393, -1225139, 3104725, -1042603, 1138166, -7951595, 33823, -692027, -1363115,
--3630321, -1637456, 2333241, -3446711, -3918621, -1511292, -1437203, -1717450, -61203, -1066226,
--4332549, -3580929, -2183454, 1088237, 1388348, 2388539, 1148904, 2179696, 743566, -3229279,
-579821, -641561, -1956358, 1017370, -3645890, 1394791, -1998770, -27109834, -6783364, 21555904,
-7203734, 8792872, -5618354, 8880919, 15027554, 1106491, -2534568, -25035364, -5846524, -1173600,
-14348412, 4042638, 5748277, -18754512, -5057861, -6971806, -4474282, 11665131, -6590091, -2279554,
-2013266, 3343632, -5933498, -2584497, 3002182, -5235565, 11454678, -12847321, 1381906, 8476655,
--11027329, 9046812, 15356656, 17903572, 8580808, 8766028, 11733314, -8047158, -14787572, 5905043,
-6405944, 9777493, 7754564, -16687559, -4769025, 8784282, 5051956, 3201361, 10459319, 2364380,
-12185359, -4529580, -2652142, 6995428, 6433861, 1959042, -10776610, -5737003, -11575474, -13216151,
--794569, -14455786, 741419, -8411157, 573915, -7649337, -4552666, -18571976, 12792560, 3393561,
--2795487, -3321620, -2124935, 2495913, -6910603, -954557, -16207059, -8852464, 5589363, 7326678,
-2972117, 2465311, 587874, -8472897, 3837017, 3881577, 2964064, -8096014, 1802276, 322123,
--6503654, -2171106, 1067836, 1022202, -3381213, -4839355, 1536525, -2376728, -3030636, -731755,
-636729, -600222, -433255, 1646583, -1577327, 2290828, -463856, 3266323, -1520418, 2918430,
-4494147, -3243237, 2467996, 224412, 1690607, -1999844, -280247, 2639258, 2034204, -3995930,
-2034741, 2095944, 16995722, -8292508, -7096360, -6291590, 11700028, 14853071, -9339406, 23841364,
-4999342, -10210748, 12199318, 3466039, -9948755, -11694659, -9438728, -780610, -5074504, -3490735,
--15574088, 6219113, 6468221, 21494164, 2900177, -3696356, -9725953, -10199474, 2561411, -1231045,
--13625247, 2384781, -5063767, 624381, 10493142, -8160438, 13882408, -12231530, -10270341, -724239,
--15979426, -19129248, 3081639, -2221035, -22058416, 1492501, 235686, -10522133, 5488432, -5128728,
-2763812, -14929306, -24338506, 15933792, -14899242, 24703578, 13485660, -17716204, -2285996, -17951890,
--4851166, -2308008, 7416335, -6490770, 11329587, 14272176, 13566728, -9845676, -8012799, 1232119,
--12045773, -1162326, -3940096, -15912317, 9470940, 6988449, -8471286, 12451647, -18577882, -1825361,
-1098975, -4904316, -3142306, 16081968, 11900281, 7885560, -984084, -8464844, -6831683, -6393059,
-2782602, 2551748, -522375, 1778653, -498753, -794032, 334471, -726386, 644782, 3167002,
--3837017, 1478006, -276489, 3489661, -2068027, -420370, 2044941, 4679904, 1876364, 3767223,
--4550518, -5019743, 2363306, -3360812, 802085, -72478, -5301601, -3012920, -3161633, 4295,
-1743757, 1522029, 1071594, 1191853, -14448807, -10988137, 7209640, 8733816, 9655086, 16321949,
--6010807, 30029338, -919660, -15534897, 6801618, 14807973, 4074850, 7787313, -6557342, -16638166,
-25062744, 13914620, 10288594, 4874251, -8638790, 8077760, 20883204, -7650411, 4507032, -193274,
-4427038, 3607773, 14893873, -4262218, 5092221, -5226975, 4560719, -1395864, -754304, 9243843,
-2006824, -18398566, -12310987, -17239462, -11779485, -9133785, -4502737, -13191455, -7430831, -6465537,
--11410654, -7937100, 5107253, -11936251, -4075387, -9259949, 22262426, 11325829, 19389092, -17488570,
--1591822, -15976741, -3328600, 17966386, 9922985, 21161840, 10133438, 13109314, -13836774, 6308233,
-6222334, 19600620, 19928648, 5982890, 18037788, -15451682, -7337415, 11563126, -40564356, 762357,
-6738804, 879931, 10147934, 6544457, 22971096, -1742146, -3104188, 24850144, 7562901, -2172180,
--11049877, -193274, 257161, 20370494, 2767033, 580894, 1711008, 4144644, 6410239, -1102733,
--1086627, 6596533, 3223373, 2168959, 3539053, 4798016, 3755949, -210990, 879931, 683974,
-6863895, -1168231, 3658775, 6588480, 4910758, 7346542, -3120294, -2393371, 1817308, 2405182,
--2383707, 243739, 4299799, 6825240, -332860, 2064269, 17480516, 11359652, -11475079, 22353158,
-13254269, -1140851, -5604933, -2820183, 13404593, 33028836, 17622788, 4744328, 1349157, 10849624,
--2685965, 26665304, 15040439, 16655883, 639950, -8490613, 5611375, 2008434, -14226005, -3494493,
--941672, -3349538, -4091493, 5416491, 2900177, -11631845, -5630166, -20555176, -2162516, -6387690,
--26506928, -11876121, 748935, 9903658, -13669807, 17029008, -4772246, -4062502, -2376191, -4153234,
-12324946, -8330626, 8596377, -27118960, 8332237, 11835856, 9066139, 18076444, -17911088, 15480136,
--16086263, -11962021, 13326210, -7842611, -2449205, 11244761, -18236968, 16117939, 25760676, -522375,
--3824132, 32959042, -7168301, 6350109, 18505940, -39605504, -20352240, 1351841, 1130113, 5380521,
-9451612, 19276350, 11510512, -15141370, -12218108, -3587372, -4411469, -20454244, -2081985, -4070019,
-4961761, -21371758, 155693, -6433324, 8604967, -3217468, 10980084, 2983929, 2147, -6321655,
--4746476, -5943161, -6405407, -4820564, 4258460, -12985834, 9217537, -1536525, 5086852, 331249,
--934155, -8858907, 4768488, -6286759, 1505386, -6679748, -3759707, -28991, -3069828, -7665980,
-460635, -2390686, 740345, -5212480, -5879810, -6132140, 1000727, 1337882, 7677254, 8336532,
--177167, 208306, -6032282, -31468688, -18950470, 23074712, 22943178, 2416993, -5496485, 19448148,
--31565326, -16972100, -34149284, 14856829, 4082367, 1458678, 6555194, -15568720, 7800735, 10734734,
-14092861, 23918672, 24586004, 20642686, -891206, 4623533, 215822, -9066676, -1917166, -7580081,
--3940096, 28513214, -6727530, -26329224, -6695317, -5464809, 2294050, 41106596, -14939507, -14818711,
-13874892, -22355304, 7651484, -24800214, 32258962, 9069360, -964757, 8227547, -12530567, -15844134,
-22080964, -26994406, -21576842, -19418084, 5301601, 8024073, 10009958, -18021682, 18354542, -5757941,
-1320166, 28313498, -2007360, -4895726, 8286603, 22835268, -14898168, 37915972, 1338956, -43845712,
--5396627, -1756642, -14688788, -4290673, -81068, -4171487, -12010876, -10119480, 21463026, 14355391,
--5377299, 13887777, -25218974, 6977175, 11193222, 6931004, 737661, 13368623, -2293513, -679142,
-4958540, 13065291, -5523328, -5821828, -4563403, 518080, 4891431, -2621541, -10450729, -11238856,
-467615, -5324686, 3788698, -226560, 2648921, 5826123, -7337415, -4889284, 12453795, -2991982,
-2182917, -1063004, 245887, -4378183, -4855461, -2514167, -1688996, -6765111, 3132642, 5990406,
-3321084, -222265, 474057, 2641405, -5211406, 1063004, 5737003, -698469, 4905390, -2952790,
--9198209, -12437152, 186294, 5459441, -8862665, -4029216, 41791644, 24776056, -33660196, -27191974,
-33641940, 32073206, 20075750, 23057532, -40080096, -8777839, -11034845, 10604274, 3912715, -16163036,
--29599840, -44837848, 13143137, 11866458, 3497714, 12366285, -6110128, -2225330, -10629507, 8935679,
-15546708, 13966697, 3659849, 18547816, 5957657, -2068564, -7533373, -27241904, -1449552, -11443403,
--9492951, 9516037, -29241748, 2652679, 1196148, -13620415, 11964705, 10984379, 5429376, -19654844,
--18299782, -48228724, -12269111, 375273, -15446850, 2757906, 10209674, 10188199, 27002460, 13277355,
--11909407, -8325794, -17919678, 22733262, -9529459, 39323648, 32846300, 9133785, -20965346, 43412456,
-19972134, -17539572, 2705293, 21829172, 50481436, -20820928, -38562364, -19868518, 543850, -13879187,
-6103686, 13952738, 11635603, -10091563, -15761993, -8683887, -13116293, -14384919, 4017405, 15717433,
-12542378, 7084012, 6256694, 2323041, 10551661, 1468879, 1708860, 15369004, 12033961, -663036,
--5021891, 3505230, -7974144, 8569533, -3030100, 8771397, -4461398, 3536906, 2292976, 5812702,
-7443715, 4422743, 3467649, -7192460, -14248554, 1735704, -7231115, -3621194, 4305168, 1335198,
--2105071, -2719251, 10302553, 3442416, 13936095, -4421132, 7455527, 7542500, -9478456, 9903121,
-519154, -7917772, 16753594, 6030671, -5754720, -16114717, 13639742, -27361626, -25299504, -9057012,
-19756312, -11198053, -14345728, -55835, 22752052, 2483565, 23508504, -7744900, 28361816, 3357054,
-15241228, -9813463, -6528887, 9045201, -29056528, -8025147, 11104101, -5086315, -3810710, -23350126,
--22049826, 10415296, -13401909, -9581535, 18305150, 25061672, -3537979, 16530792, -29358248, 1939178,
--7871065, 38441568, -15654619, 12899934, 23616952, 22494354, 6691022, -15428059, 10096931, 7295539,
-6960532, 12536473, -37547676, 69806104, 22449258, -5932961, 3862786, 7999377, 19541028, -5178120,
-15093589, 40797356, -2099165, -49999324, 21203180, 17675402, -17605070, 23795730, -4967667, -10306848,
--26684632, 52235392, -26556856, 58135604, -37908992, 14543296, -495532, 63143000, 28159954, -26668526,
-26051124, 1351841, -16464757, 12871480, 2212982, 5918465, 14334453, 6219650, -15915001, -3976603,
-19452444, 5375152, 11125576, -8603356, 12270185, -20068772, 7815230, -912681, -6285148, 12858595,
--6738804, -3717294, 9366787, -1316944, 1637456, -1371705, 15561203, -9776419, 15192910, -8577050,
-14076755, 19523848, 7454990, 5458904, 10955925, -2551748, -7303592, -7162395, 9492951, 3416647,
--1241782, 93416, -2113124, -13640279, -10368051, -1930051, 723165, -8450885, 47631724, 5566815,
-25796648, 13086228, -26422638, 1494112, 15454366, -4842039, -23026930, -4536023, -50055696, -14128832,
--18733036, -10922639, 10761577, -1622424, 17732310, -8923331, 1802276, 17236778, -15643882, 1504849,
-9794136, -1155346, -17149804, -209917, -11820287, 34257196, -6166500, 19771882, 3107946, -531502,
-35194036, 25242060, -15672873, -18460306, 8834211, 15776489, 19265076, 23320062, -554051, 8081518,
-22203370, -1440425, -9098351, 6756521, 664646, -20024212, -567473, 12790413, -19583978, -26479010,
--2596308, -1844689, -2925410, -9066139, -9586367, -31519154, -126165, 30404074, 9345312, 16785270,
-9982578, -4408247, -40485972, -29917132, 7864622, 25834228, 8440684, 12899397, 52964464, 54776940,
-46526844, -4029216, 23081692, -15110232, -39225400, -65594888, 11265699, 7696045, -2989297, 8706972,
--20716238, 4061965, -5102958, 23547696, -1869921, 18827526, -23713052, 11256036, -29102698, -6027987,
-12192338, 1676648, -14849313, 3052111, -12241731, -13603235, -5686000, 3054796, 11028939, 13887777,
-18773302, -4990215, -1085016, 4412005, -5232344, 5591511, -19591494, -17132088, -11655467, -16071768,
--15105400, -16411070, 10281078, 7034083, -2727841, -10952703, -15997679, 9166534, 92342, 14771466,
--3819837, 13023951, 9909026, 76236, 4219806, 15699716, -19527068, -18815178, 11093364, -2208687,
--14444512, -30776126, 9231495, -18315888, 9505299, -7756711, -21602612, -6445672, 255014, 11261404,
--8893267, 5910949, -31880468, 30577482, -67258112, -6400038, -16494285, -13492103, 9489730, 39104604,
-6650757, 14429480, -32898376, 7849053, 12724914, 26999238, -13409962, -21166672, -14511621, -6926709,
--568009, -190052, 16554415, 12105902, -9035001, -48489644, -22748294, -39358544, 5083631, 70491152,
--49117244, -19248970, -7145215, 40909028, -13063680, 17528298, -12458090, 19928112, -7237020, -11425150,
--24665998, 13391171, -28661928, 27398670, 49238580, 6678138, -8474507, -8694624, 40933724, 11143830,
-155693, 21788370, 7537131, 8148090, -7253126, 47153908, -72927472, 53613004, -44224740, 21671868,
-53057880, -41717016, 85703928, 58454504, -21286932, -6863358, 59119152, 21809308, -5005248, 38997228,
-35128000, -44546864, 60990148, -36134096, 11318849, 12003360, -15629923, 12081206, 20322712, -11787538,
--21536040, 7605314, -11334419, 5551782, 5662378, -5652177, -16744467, 7337415, 6791954, -6667400,
-7896298, 6296959, -13343927, 34656628, 4334696, 1141388, 1338419, -6503654, 5852967, 5043366,
-2434173, -10720775, 6426345, 2003602, -4243428, -9346923, 21772262, -7567196, 17834314, 20053202,
--1340030, -6834367, 5837935, 5260261, 8275865, 24082418, 21020644, -17830556, 9169755, -6985765,
--390842, 10639171, -1634235, 49753440, 47438452, -40207336, 39534636, 36369784, -33879240, -51261508,
--75781480, 17819282, 114192976, 46966004, 369904, 23648090, -108848432, -44917304, -3697430, 16720308,
-82184200, 80347560, 14024142, -30840550, -60226716, -35316444, 4271345, 26001196, 39391292, 63184876,
-38280508, -50770272, -119998704, -97881768, -9435506, 109086264, 118790744, 74998720, 23090818, -25121264,
--48212080, -73109472, -41515152, -44451836, 87456808, 72645080, 46080704, 40652404, -61495880, -86425480,
--100117296, -89820648, 34839164, 121734408, 150086016, 50689204, -45168024, -106667664, -127728568, -34802120,
-20842940, 13234942, 80325016, 31422518, -29996588, -17933100, -61378304, -13459891, -70204464, 30502320,
-83800720, 156241776, -9223442, -83566104, -181222928, -7122667, -61089468, -6551973, 87278568, 17200808,
--7699266, -38856032, -81468552, -53637700, 39560408, 63340568, 21158082, -11132018, -27547384, -33413234,
-32807108, 37284076, 23393614, 19929722, 9262634, 18573050, -1476932, 1687922, -17820894, -8492761,
-2406256, 47040092, 41564008, -2229625, -17324288, -4689031, -41719164, -28373090, -704912, 15953119,
-43882756, 33411624, 24173150, 2044404, -58228484, -52937620, -35339528, 13703093, 56965760, 109462608,
-67546952, -50705312, -90574416, -80554792, -31936304, 2113661, 75537200, 94286344, 70966816, 12212740,
--55582784, -127587912, -79746808, 25726318, 79597552, 90094992, 26947698, -13459354, -34496640, -41760504,
-707059, -10460930, 51341504, 30015378, -4581657, 10883447, 5512054, -36643588, -3876745, -3017215,
-3937948, 1101659, 2872796, -13423383, -5411659, -4975720, -3429532, -6125697, 21844740, -7904888,
-9348533, -16522739, -1724966, 6774774, -846109, -5041218, 37766184, 5206037, -21488796, -24919400,
-5163088, 5204964, -14700599, 4031901, 18929532, 9844602, 17810692, -18331994, 5463736, -671626,
-4217658, -12910135, 2369748, 14276471, 20161114, 5104032, -5358509, 5915781, 2199560, -4736275,
-13712220, -20412906, 4510253, -33236068, -10499048, 13700409, -11374684, -13370233, 17956722, -11540577,
--31113280, -24021752, 21148956, -2673617, -4328790, 4865661, 10654203, 26914950, -17682918, -22899156,
-849330, -3163244, 18112414, 112206, 10534481, 4857071, -1938641, 27958090, -36587216, -5366025,
--5288179, -21434034, 5338645, 11956652, 382789, -12779675, 5510443, -2907693, 3485903, -11055783,
-7940321, -605054, 1161252, -1012539, -2860985, 14155675, -14428943, 1069984, -2604361, -5171678,
--4731980, 1614908, -6348499, 6464463, 8178692, -8735427, -2383707, -3373697, 7471096, 8428336,
--4461398, 10399190, 834297, -1561758, -7242389, 7479149, 2405719, -3047279, -11856794, 5436355,
--10782515, 6742562, -5929739, -5196911, 9426916, 9556839, -13385266, 1499481, -3320547, -12974022,
-3927748, -7621420, 8190503, -7514582, -30088930, -33182918, -78932376, 22812718, 22565222, -1613834,
--66542464, -43021612, -6335614, -10923176, 44452912, 29982630, 14417668, -29465624, -12166032, -7817378,
-27831924, 3045669, -7941932, -17301202, 11407970, 5056787, 13841606, -773631, -5666136, -7090991,
--15934866, -7968238, -9647033, 26579942, 14207752, 3114925, 3979287, -17530982, -947577, 2111513,
-24271398, -1772748, 11308112, -9041980, -6297496, 4929012, -10016937, 6594923, 2895882, 7094212,
-23676008, -2092723, 20775830, -294205, 13338558, -10344966, 867583, -15203110, -19666118, -20700132,
--17710834, 5812165, 3060701, 1504312, -26077430, 12861280, -22698366, -2579665, 1171452, -14231374,
--15402826, -8147553, 272194, -27115202, -18342732, 16818556, -8189966, 15657303, 2484102, -4364224,
--14660871, -16935056, -1107028, 23990614, 29743722, -7428683, -3054796, -11206643, -14919643, -10310069,
-9478456, 5025112, 3642669, 9292162, -1847373, -6183679, 6442451, 3539053, 5361193, 8127689,
--4570919, 2729452, -908386, 173409, -6209986, 10744398, 3404835, 2438468, -3232500, 1543504,
--234613, 16757889, 2136746, 5016522, -9409200, 620086, -6092411, 10963978, 758599, 157840,
--3863860, 2538863, -1262720, 130997, 5255430, 491237, 6888054, -4690641, 2238752, 719407,
--8826158, -483184, 5049271, 1935420, -1815697, 17746804, -38152732, -94612224, -90687160, -13756780,
-27435714, 91260536, 78864728, 74349640, 79859552, 44466332, 10760504, -40305584, -40502080, -84171696,
--65369404, -57303992, -36354212, -45721536, 62989452, 51831664, 68209984, 39351564, 55751360, -2004139,
-14686104, -8937827, -21746494, -12420509, -26001732, -30228516, -30131344, -29702920, -35187056, -25738666,
--20921860, -2350421, 5542656, 49473728, 41502268, 21897890, 23503672, 32647658, 30276298, 14609331,
-70395584, 9185861, 920197, 13238700, -26297548, -80736792, -23109608, -64712272, -69442104, -73332272,
--51901460, -46185392, 2305861, 38361576, 39095476, 47794396, 86872160, 62565864, 76235672, 74968120,
-47801376, 51445120, 17547088, -18049064, -58700392, -76968496, -87997440, -57198228, -78978544, -66318592,
--75833552, -44202728, -5293011, 20817170, 61349312, 58597848, 59436980, 99037112, 68961072, 81874424,
-50959252, 8522826, -9623948, -24745454, -40991704, -45844480, -48641580, -47334836, -54641648, -46769508,
--34274912, -20999168, -10922102, -8198556, 23685670, 22563074, 31714576, 51331840, 57765164, 36694052,
-44125956, 27271432, -1708860, -11966316, -26683558, -33286534, -28613608, -24642374, -29909078, -10888816,
--7439420, 695785, 8391292, 9402220, 2312840, 1302449, 8213051, -1187022, -7259569, 6633577,
-3852586, 4733591, 7246684, 2183454, 1877975, 4459250, 10094247, 8725226, 3910031, 852014,
--2333778, -8684424, -6696391, -7903814, -6986838, -2757906, -5435281, -4656282, -2718714, -2073396,
--3004867, -828929, 3099893, 3169686, 3795141, 6293738, 4003447, 2831457, 3544959, 927713,
-641024, 338229, 5906, 26307, 64961, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--4422206,
-7414188, 2582886, -1357747, 1876364, 2378875, 4445291, 7424925, -3573950, 2461553, -3045669,
--2370822, 1486596, 9664, 614717, -5254893, -2555506, 1842541, 3695283, -501437, 3112778,
--5634460, -4997732, 3134253, 2003602, 855772, 2280628, -1929514, 4025458, 4504347, 4374424,
-6274411, -3491272, -2888366, 218506, 789737, -6030671, -389231, -528818, 1646046, 586800,
--3777961, -934692, 5122822, -2747169, 996969, -3150359, 1498407, 1579474, 1017907, -4690105,
-3772592, 339839, 843424, -651224, -1549410, -1948841, -3204583, 6790880, -1206886, -1258425,
--1533303, 3012920, 695248, -6433324, 1624035, -2941516, -4420058, 2597382, -2735894, -6963753,
-2767033, 1015760, 295816, -6417218, -7785165, -3181497, -3841848, 3600256, -1054415, -15032,
--1767916, -2107755, -1758789, 48318, 3176128, 574452, -1430224, -120796, -1494112, -664646,
-1403917, 424665, -1354525, -1825898, -639413, -751619, 691490, -461172, 255014, 252866,
-754841, 194347, 1085553, -461172, 249645, -255014, 762357, -49392, 699006, 4347044,
-517544, 375273, 3867618, -5771363, 966905, -4815732, -6096706, 1760400, 5720360, -3535295,
-2716030, -2660195, -1285269, 1154809, 288300, -2828773, -8406862, -8347269, 150861, -2111513,
--75162, 4370666, 701153, 5350456, 7226820, -3805341, 6241125, 783295, 6335077, 403727,
-7517267, 960999, -4204773, -1152662, 424128, 3427921, -925565, -1125818, 747324, 2602213,
--3122978, -185757, -963146, 2302639, 2801929, 158914, -2845416, -197569, -514322, 1648731,
-2942590, 5274220, -1837172, 3424163, -1539746, -4581120, -4092567, -2763812, 2596308, 2820183,
--1547262, 4563403, 151934, 1660542, 239444, 5548024, 3677566, 4089883, 1661616, 2411087,
-1487669, 2237678, 4531728, -955093, -231391, 6403260, 1286880, 191126, 1333587, -2372433,
-358093, 1894081, -141734, -5972152, 1876901, 642635, -957241, -2068564, 1384590, 415538,
-3258807, -1195612, -590021, -1239635, -1010928, 830002, 238371, 1312113, 619012, 308701,
--1174674, -926639, -548682, -572841, 514322, -1547799, 1371168, -552440, 406411, -369904,
--553514, -856846, 529355, -689879, -523986, -1686312, 6424198, -6649683, -4496294, -3700114,
--5393405, 1649268, 2261300, -4344360, 953483, 8794482, -6482180, 4439386, 7575249, 7494718,
--4693863, -1313186, 3688840, 675921, 1112397, -3422552, 1809792, -11506217, 8958765, 14070313,
-2452426, 4715337, -2338610, -227633, 7446937, -3973382, -9095130, -1539746, 89657, -60130,
--7356205, 509491, 1773285, -8720394, -4128001, 4001836, 1322850, -3120831, -849867, 2982318,
--4283156, 8968965, 2762201, 388695, -5820218, -597000, 3058554, -1986422, 146566, -2087354,
--161598, -884763, -4672388, 265214, -4520453, 6729140, -6569153, -4365298, -1507534, -7834557,
-5190468, -4225174, -10920491, -2021319, -4736275, 1307281, 4953171, -5101885, 586263, -3470871,
-3504157, 470836, -3638911, 3062312, -3939022, -5167383, 5687611, -3723200, 1592359, 119722,
-476205, 1984275, -1176284, -1769527, -1999307, -3154117, 1007170, -4449049, 209380, -915365,
-1349694, -1336272, -151934, -11811, 75699, -2369748, 2064269, 84289, 354872, -1284732,
--933619, -966905, -108448, 1398549, -5071283, 3238942, -146566, -993211, 3844533, -3637837,
--12781286, -2495913, -784368, 5587753, 7914551, 7010461, 3373697, -2750927, -858993, -7881802,
--6679748, 2308008, 8993125, -2573222, 9212705, 5859946, -5679558, 3055869, -870268, 3195456,
--6347962, -4284230, 1051730, 4588099, -576063, 2735357, 3826279, -7181722, -1436667, -3313567,
--9774809, 6081674, 974958, 2208687, 4246112, 7756174, 2711735, 363998, 6091874, -1422708,
--3104188, 6256694, -3286724, 10574209, 4882304, 4204236, 230318, -3042984, -3689377, 5182415,
-7056095, -5237713, 1284732, 6724845, -1182727, 2185065, 14873472, -4497368, -1777043, 2885681,
--7437273, -304943, 1347546, -3325915, 3634079, -2410551, 2246805, 7372312, 273804, -1703491,
--5006858, -418759, -6221797, 2632815, -2298881, -3071975, -1262184, 1178432, -1777580, -1804960,
--1495722, 332323, 2315524, 1693828, 485868, -539018, -678068, -536334, -326954, -1043677,
--1817845, -364535, -550293, 962073, 24159, 479426, -1837709, 777926, 1001264, -704912,
--1606855, -615254, -1685775, -912144, -738734, 1249836, 159988, -281320, -107374, 283468,
--2547453, -505732, 920734, -3192771, -18236432, -1417876, -321586, -3594351, -5611375, -1791538,
-9885404, -6892886, -10351408, 3980898, -4167192, 1559073, 1917166, 6660421, -4434554, -1285269,
-1358283, 6198712, -2806224, -3951370, -1144072, -3389266, 4576825, 8345122, 4223564, 147640,
--623844, -4665945, -224412, 13088376, 2349884, -1541893, 15097884, -824634, 11243688, -3303904,
-149250, 7666517, 2363843, 1963874, 2768107, 1408749, 4234838, 2510409, -7083475, 13355738,
-8128226, 10981695, 7369627, 4893042, -7208029, 3293166, 3758633, 640487, -4397510, 12408161,
-7520488, 11218455, 2041720, -2137820, -2685965, 8284455, -3939559, -8383240, 10020159, 3201898,
--5413270, -3088082, 554051, -2474438, 1034550, -1072131, 1466195, -3370476, -886911, -7926362,
-3136937, -899259, -147103, 3033858, -924492, -1411434, 4776004, -222801, 3724811, 4997195,
-4085588, 2682207, 2640331, 1127429, 1569811, 115427, -954020, -842887, 2217277, -512175,
--1253594, -1280437, 1089311, -1455994, -335544, -212064, 2750390, 1216013, 1990717, -1704565,
-639413, -1347009, -437550, 1952063, -179315, -654983, -523449, -387621, -4587562, -609885,
--11943767, -4680441, -13363791, -9135395, 1043140, -8655970, -6802692, 872415, -1475321, 9047349,
--5923297, 10020696, 12272332, 1321239, -10329933, -7229504, 11027865, -5502927, -2951180, 6226092,
--7985955, -14200772, 5770289, 12387223, -6285685, 3218541, -179315, 5444408, -14836965, 3042448,
--5931350, 3672197, 350040, -6170258, 10429791, 4821101, 4433480, 13899588, 6492917, 2934000,
-7881802, 1647120, 2585570, 4024921, 1367410, 708670, 2186675, 1966558, 15791521, 8931921,
-12348, 13287018, 8320963, 9829033, 15291694, -7714298, -6462315, 13432510, -4610111, -435939,
--7885560, -3278134, 4793721, 7164006, -5999533, -632971, 2054605, -1630477, 3720516, -6317360,
--1161252, -7319161, 14416595, -4567161, 7889318, -2152316, -3804804, 10654203, 1888712, -3015604,
-3471944, -1226213, 333934, -2909304, 4031364, -670015, 1470489, 4366908, 2486249, 1365263,
-2442763, 273804, -357556, 1805497, 462783, -2841121, 656056, -525060, -1344862, 2743947,
-20401, 1388348, 1108102, -503585, 527207, -1626182, 376883, -1476395, 150861, -545461,
-1935420, 609349, 1664300, 544387, 4553739, -4858145, 1569274, 706522, 1555315, -6977711,
-9082245, 5277978, 12338367, 2397666, -1668595, -13914620, -7441568, -5209259, 3556770, -7222525,
--12054363, -3346317, 3090766, 1354525, -13462038, 10940892, 841277, -803696, -11467563, -6581501,
-2705293, 1430761, -12741020, -3944928, 4656282, 534723, 1284732, 6550362, 7628399, 4478041,
--1973538, 3868155, 1188632, -4547834, -9432285, 16273094, -4081293, -7888245, 153008, 4057670,
-5248987, 12176769, 1993939, -191663, -4569845, -105764, 6733435, -820339, 8413841, 16165183,
-1350767, -3464965, 483721, 13924284, 17365626, -8622147, 2418067, 2462627, 9385577, 5002027,
-1649268, 2928094, -6924561, 4350265, 4471598, 4515085, -2997887, 298500, 3402151, 5216775,
--739271, 1822140, 1185948, -5829881, 2823941, 325344, -5309117, -3802120, 5607617, -2473901,
-3875671, -5587216, -4320200, -1870995, 1266479, -33823, 5055714, 2370822, 893890, 304943,
-2519535, 2397666, 719944, -4221953, 169651, -1737851, 667867, -1292785, -1063004, 10737,
--450435, -544387, -1478543, -4129074, -1187559, 523986, -2850248, -1731946, -1816234, 147103,
--1819456, -2885144, -718333, 1477469, 2254858, -4488241, 6431177, -5662915, -10304700, 7203197,
--801011, -2478733, 2764348, 6138045, -17314624, 1108102, 13344463, -1503775, 23974508, 11478837,
--7265474, -5323075, -2200097, -6871948, -3027415, 10726144, -4067334, -3463354, 10752451, 8732742,
-2915209, 5025112, 10053982, 6664179, 7536057, -5448166, -3706557, 9542344, -1818919, 8641474,
-104153, -10233833, -6555731, 2820183, 8170102, -11135240, 748935, -5927592, 3180960, -6780143,
-9548786, 9508521, -9192304, -946503, 2755759, -261993, -12447889, -5568425, 2200634, 8328479,
-13700409, 4675609, -10050223, -2193118, -2400887, -1149441, 8640937, 1400159, 6936909, -10302016,
-4702989, 741419, -8135205, 9744207, 4188667, -1276142, -2112587, 1711545, -301185, -8327405,
-6364605, -1901060, 3821984, -6465000, -11425150, -6339372, 2785823, 5160403, 191126, 2863670,
-10384694, 137976, -2568391, 6518150, -1938641, 6136972, 431644, 2013266, -5168457, 565862,
-210990, 2830920, 3154654, 4356708, 2825015, -1036698, -1190780, -1984812, 5208185, -2374580,
-2750927, 587337, 1691143, 2131915, 2953327, 1293859, -904628, 2615098, 1098975, 893353,
--912144, 3508452, 1731946, 756451, -3374771, 1284732, -1276679, -11274, 2456721, 11126650,
--13597866, -2118493, -4307316, 14050986, -6200322, 11586748, -3544422, 10820096, 14653355, -6418829,
-4660577, -3660923, 8371428, -3107409, 6979859, 5801964, 5473936, -1187022, 5754720, -2822331,
--7185481, -3425773, 8143795, -9408663, 1554241, 19327, 7261716, 14640470, -13290776, 523449,
-13131863, -266288, 12011413, 1685775, 5310727, -1596117, -955630, 3279208, -18380850, 1868848,
--383863, -7284265, 4937602, 3071439, 13441100, 6710350, -1270774, 25465398, 6391448, -13344463,
-3601867, 1333587, 8934606, -5724655, 1762547, 7545184, 649614, 4612795, -1277216, -14585172,
--14925548, 71941, -5007932, 12079059, -20305532, 26220776, -97711, 14614700, 16728361, 4045859,
--4361540, -3295314, -7776575, -10341744, -833761, 3379066, -2577517, 5271536, -3449396, -8324721,
--5223754, -4195110, 1556926, -1280974, 973347, 5629629, 2870649, 2680060, 2105608, -2321967,
--2829310, 183610, -560493, 1622424, 432718, 661962, 1815697, 3266323, 1989644, -6477348,
-1232119, -1217623, 4769561, 4768488, 2801929, -434329, -1335198, 1872606, 1534377, -2292439,
--2374580, -598611, -1610076, 454730, -1723893, -3143379, 1294933, 5244155, -1311039, 2110977,
--3983045, 516470, 2358474, 2401961, -79994, 1539209, 3419868, -24267638, -1764695, 8190503,
-1307281, -9148817, -22539988, -64425, 2518998, -3999688, -991064, -6678674, 3435974, -5570036,
-11534135, 4030290, -6951942, -8688719, -14832133, 11011222, -4764193, 699006, 14362908, 19758998,
-12035035, -1898912, 992137, -13648332, -5856188, -5523328, 3606699, -19340238, 4996658, 5209796,
-1063004, -9971303, 9479530, 14747844, -2425046, -316754, 1689533, -8649527, -9119826, 5170604,
-3544422, 11141145, -12345347, 13304735, -7070053, 7307350, -11429982, -9055939, -4538170, -350577,
--1379221, 4818954, -2486249, -19988240, -14972793, -4265977, 505732, -20042464, 254477, 9823127,
--5311801, -2370285, 3007551, 8342974, -17602386, 8922795, -3111704, -2707440, -103079, 7119982,
-8957154, -10627360, -5406290, -7167764, -3462281, -2632815, 5205501, 1663226, -6383395, -2930242,
--4896800, 3319473, 11679090, 7629473, -68719, -412854, -6531572, 171799, -3991635, 5424007,
--1003412, 9517111, 3202435, 3268470, -3446711, 119722, 114354, -7758859, 8195872, 528281,
--1443109, 4185983, -1509144, -1385127, -384400, 540092, -6649683, 2835752, 4062502, 4204236,
--684510, -1669132, 1468879, 2332704, -2371896, -1513439, 2371896, -5166846, 571231, -230318,
-4768488, -472446, 21748640, 530965, -4409321, 16915728, -3692061, -6875169, -1815161, -1552094,
-20980916, 23992224, -3116536, 5107790, 6120866, -3059627, -11382737, 5612449, 22313428, 17017734,
-14557255, -5277978, 6315213, 11981885, -15535434, -11574937, 13590887, -6925635, -7595650, -519691,
-16989280, -2553358, 15641197, 1029718, 14038101, -8392366, 19284404, 5865315, -5960341, -9826885,
-3536906, -13904420, 1689533, -16499654, -5609228, -5917391, 9467719, -9446781, 15586436, -19053012,
--32944010, 20601884, 9243306, -4050154, 197569, 22723062, 10695005, 1805497, -5938329, 4908611,
--2619393, 272194, -14739254, -14981383, 8844411, -5031018, 4900021, 28209346, -7351911, 6066105,
--18388902, 21795886, -7266548, -9740986, -4634270, -3051574, 9134322, -18480170, 15480136, -18114024,
-13092134, -9329743, -12593918, 12593381, -511638, 4121021, -5084705, 7444252, -4054986, -5708549,
--2513093, -8649527, 5986111, -294205, -5589900, -2404108, 2136746, 9200894, 1782411, 1299765,
-2496450, -248571, -1535451, 4660040, -2594697, 2094870, 1989644, -2415382, -639413, -558346,
-6655052, 5759015, -2090575, -3228742, -6883222, -159988, -1375463, -1027034, -1090385, 171799,
-6381248, 1869921, -726386, 7967701, -24724516, -18378702, -17820356, 24875376, 831613, 10676215,
-6359236, -21916144, -19164144, 12881681, -34190088, 9988483, 10149008, -2197950, -13606993, -12511240,
-21293910, -11455215, -1510218, -3583077, -11045045, 16199006, 5152887, 14656039, 8517994, 10111964,
--3212636, 16456167, -1521492, -10762114, -12680354, -2917357, 7134478, -9607305, 12771085, 8204998,
--9641128, -34610456, -2915209, -2842732, -864899, 25149718, 562104, -19698330, -11696270, -12044699,
-10318659, -7591355, -16413754, -18306762, -11398843, -8900783, -40820444, 980863, 5081483, 13410499,
--21327734, 6983080, -17624398, -14408005, -4944044, 17065516, 4353486, 15840376, 29894046, 9004399,
-6852084, 19508816, -15215995, -1935420, -7233262, -8335995, 15613817, 14457934, 22942104, 11289322,
--21032992, -13993540, 16494822, -24823300, -27368606, -8591545, 19917374, 3170223, -4888747, 13602698,
-11076184, -105227, 3148748, 11536282, -7559143, 6829535, -5575942, -1051730, -5810017, -1065689,
-1501628, 8085276, -5143224, -6470905, -34360, 4568235, 1438814, 4155381, -664646, -6468221,
--1570347, -4279935, 317291, -3573950, -725313, -494458, -7313256, 5928129, 883153, 6033892,
-7546795, 10473278, -3948149, -5552319, -464930, 1023276, 12047383, -10572062, -22408992, 6523519,
--35970, -154082, 1124208, 3447248, 5104569, 10237591, 3524021, 8659728, 4901095, 10207527,
-26016764, 1122597, -33260764, -12023761, 8772471, 588947, -6704444, -21300354, -13930190, 4790499,
-17740900, 7022809, -16443282, 9188546, 7350300, -18647138, -3310883, -23119808, 18595060, -9495099,
--11937325, 17175038, -16159814, 4817880, 35544612, -3911642, 5987722, 10647761, 173946, 5367099,
--20456930, 5255966, 3885872, 3569655, 46610596, 31621696, -3234647, -15963857, -10482405, 14789720,
-17134772, -18377628, -10139344, -24737402, 39808980, 11120744, 4802847, -6174016, -4101694, -8629126,
--4675609, 28669980, -7406134, 7897371, 28649042, 4968204, -7813620, -20924544, 753767, 8624294,
--42232952, 9405978, 4849555, 29189672, 20030116, 15635292, 26114474, 14807973, -4926328, 2709051,
-9242233, -2781528, 1473711, -1693291, 4323959, 2423972, 24415816, -568009, 10153303, -4140349,
-9816148, -685584, 13034152, 2833605, 3791919, 11783780, -731755, 4948339, 8089034, 306016,
-6584185, 9076877, 4181151, 7252589, 10683731, 6098317, -3675955, -673773, 2538863, 2648384,
-326418, -4115653, 2318746, 2815888, 1479079, 5634460, -536334, 8795019, 4981089, -3504693,
-9321153, -1173600, -5903970, -27122182, -3881040, 18710488, 10491531, -30383672, -40066676, 4626217,
-27205396, 11018202, 16627429, -9429601, 12842489, 2173790, 344671, -14522895, -5201743, -22626962,
-33643016, 11300596, -27312234, -18712636, 12226698, 1327145, 6738267, -8145406, 16779364, 9835475,
-11548630, 22054658, 19501300, 4056060, 19064822, -9999758, 10940892, -12348, 13298829, 6156836,
--3208878, -7976291, 9171903, -11864847, 31368294, -8380555, -5954436, 6491843, 15493558, 15399605,
--10416906, 27096412, 26763552, 15646029, 6451578, 2316061, -8653822, -20288888, -34875672, -5585068,
-12345347, -671626, 15113990, 16608639, 17663590, 6258304, 9814537, 57942332, -28506772, -12329240,
-5662915, 11277510, -1540283, -45061724, 10515691, -6915434, 6680285, 8121783, 19918448, 4132296,
-236223, -18035104, 18725520, -6615860, 2599529, 16634945, 7369627, -17464410, -3940633, -9747428,
--3517578, -7444789, 1088237, 853625, 6935836, -1534914, 8488466, 8665097, 11052025, 62277,
--285078, -6642704, -3267396, -8949101, -6372121, -2534031, 11726871, 4017942, -2113124, 1007170,
--4924717, 1930051, 10231149, 11973832, -2609730, -10652056, -476741, 881005, 4796405, -2778844,
-3215857, -4933307, 7656316, -14973330, 1216013, -4430796, -5708549, 239444, 2662880, -9554692,
-4365835, -1613297, 4304631, -5071820, -8919573, 3413962, 15158013, 14920716, -8206072, -11167989,
-3339337, -10730976, -34408056, 35601520, -10368588, 10020159, 3314641, 29863444, 23816668, 14972793,
--14216879, -2338073, 20437066, 10849087, 24050744, 64064268, -3943854, -25232932, -6558952, 19161996,
--2836826, -29806536, 45585708, 23622320, -16041703, -24953760, -3055332, 5609228, -7910256, 18107582,
-15401753, 17767206, 34038688, 5705327, 9634149, 6089190, -13151190, -31654982, 18640158, -21538188,
--16160888, 24999394, 13124883, 14104136, 7422777, 5155035, -1406602, -31259846, -27728846, 523449,
-16626892, -20664698, 19606526, -9164923, -23157390, 7316477, 20369956, -3755949, 3943854, 20207284,
-19937776, 20674362, 1551557, -12612171, 11810623, 49118856, 5951751, 19975892, 28087476, 1373853,
--8867497, -24682104, -9953050, -38898980, -13311714, -9736154, -4771172, 8842801, 1539746, -1767916,
--11152956, -7366406, -6466074, 9610526, -9976135, -1999844, -8798241, 2874944, -5578626, -9584756,
-408022, -13795435, -4836670, 235149, -12433393, -2356863, -10829760, -6270653, 1225676, -19921132,
--1903744, 934155, -198642, 9411884, -12656732, -4177930, 13619341, 264677, -5334350, -590558,
--4554813, 2618320, -5821828, -4418448, 6788196, -467078, 478889, 18168248, 14977088, 530428,
--11720966, -17381196, -30827128, 5687074, 19188304, 26189636, -21982716, -23448374, 29105382, 13157632,
--985158, -2782065, -11857331, 5667746, -5447629, -12385075, 13426605, 16336445, 11349451, 1226213,
--2210835, -8908299, 2092723, 6946036, 4260608, -10084583, -36003636, 8209830, -8077760, -10705743,
-2152316, -4533338, 3172370, -35884452, 16937204, 13308493, -25798258, 18293340, 24246164, 20311438,
--5272073, 3521336, -3084324, 13292387, -2833068, 64425, 64538328, -19200652, 5496485, -17127792,
--9880572, 36504536, 13448079, 12557411, 23407034, -29477972, -24373940, 36703180, -23004918, 18799072,
-23230942, 2343442, 6303938, 8920647, 41626288, -13965623, -15699179, -37936908, -8011188, -16263431,
-13040594, -23692650, 40462352, 22069690, 24773372, 12258910, 21671868, 11416560, 38633232, 9599252,
-18668076, 14261439, -18762564, -8932458, -7162932, 3486440, 2347200, 18974092, 8378408, 105764,
--726923, 4421132, 1915019, -7213398, -14256070, -7577933, -10662793, 13729937, -4631049, -7647190,
-4558034, -2894808, 16969416, 7878044, -2824478, 9543954, -10647761, 5302674, 8628589, -2949032,
-16443819, 16729971, 11279121, -7689065, 13913010, 8012799, -13382044, -2502355, 1581085, -8091182,
-1095217, 11978127, -13464722, -15654082, 7122667, 3232500, -1341640, -10349797, 26659398, -15407658,
-14107894, 45291504, 22506166, 17154100, -25273198, 7159174, 25241522, -21509734, 35723928, 12826383,
-19128710, 17126182, -10945187, 17740362, 15285789, 6456410, 35418448, 26855894, -1999307, -60508572,
--7063611, 28168544, 27176406, 27933930, 6724845, 15611669, 1417339, 7882339, -1965484, -18705656,
-38816304, -964757, 36988260, 16689169, 26706644, -37244344, 25351582, 12659953, 11439109, -9725417,
-8845485, -6897181, 8447664, 37179920, 14865956, 48496088, 2462627, 10766409, 28381144, -5665062,
-44572096, 21983254, 3981972, -29416768, -18337362, 16276852, 1957968, -4864588, 1072131, -4982162,
-3595961, -21427054, 14460618, -22820772, -33939368, -12705587, -1792075, -11339251, -8659728, 28883118,
--3325915, 26305600, -24898462, 28900298, 3999152, -31935230, 31765042, 26444114, -9774272, -4445291,
-7681549, 13892609, 9040369, -1325534, -14381161, 9156333, -6135361, -922344, 18384070, -3730716,
--2865280, -14766634, -3813394, 4081830, 2988760, -995359, 13858786, 12152073, -9460739, 3283503,
--92342, 503048, 12759811, 3854733, -13623636, 9259413, -11633993, 5964099, -9385040, -3825742,
--2884608, -2165201, 1748052, 2634426, 1811939, 711891, -2598455, 2297271, -6484864, 4558571,
-5379447, -1146756, -5297306, 4006668, -1105417, 6811282, -3723737, -3313567, -9417253, -452045,
--8351564, -27005144, -25817586, -10389526, -11183021, 20903606, -33804076, -42122356, -45798312, -55315956,
-24714316, 27135066, -1580011, -4461398, -172872, -13169443, 3205119, 6861211, -11662984, 37642168,
-35469452, 23162758, 25373594, -23382338, 15526307, 1262720, 18489834, -7307887, -9527311, -34564288,
-30903900, -31236224, -37811280, -9958955, -7943542, 40552008, -22297860, 5428839, -21048024, -5913096,
-39121784, 7230041, 12377022, 19343996, 35929012, 2183991, -4023848, -43921408, -8101919, -3546032,
--1247688, 24023362, 12928925, 81713904, 4093641, -2552821, -27111444, -2205466, 32494648, 29781304,
--2685428, -14391899, -40385576, 10066866, 25567404, -13118978, -29452202, -12499429, 25198574, -7713225,
-18496814, -58531816, -32745368, -46790984, -12661564, 18780282, 9974525, -20383914, -19457812, -22903986,
-9188546, 48209396, 14589467, -206695, -17107928, -1383516, -13327820, -3637837, 5698348, 5703180,
--15346455, -6927782, -1379221, 10466835, -26081726, -17733384, -6099391, 12828530, -1794223, 16877074,
-5386426, 2005750, -5903433, -2893197, -11750494, -2466922, -17701708, -3914326, 19414862, 7006166,
-8831527, -13535589, -24476482, 12144020, 11470247, -7051800, -29528, -10052371, -1904281, 3102040,
--1348083, 9204115, 5662915, 6041409, 11611444, 6512781, 9163850, 9984188, -2003065, 8033200,
-4246649, -6693707, -16349330, -8483097, 39759048, 1304060, 231928, 70380552, 6968585, -52121040,
--40023728, 49353468, 43810276, 2788508, -34715684, -43120396, -24729884, 8619462, 42618960, 38004556,
-25460030, -15458124, 5045513, -15526307, 13952738, 32366874, 49885508, 54507428, -6759742, -28972776,
--45889580, -68576672, -652298, 36761700, 148871088, -19289772, -7877507, -71757096, -29685204, 6231461,
-17242684, 88737248, 63971392, 39658116, -44936096, -25307558, -43903692, -2469069, 74257304, 68743096,
-83689584, -22934588, -82261512, -59792924, -83060376, 20948702, 76348952, 67188856, 123729416, -58929100,
--71775880, -62857384, -10439992, 54813448, 72966128, 102040368, 46205260, -21308944, -39608188, 9501005,
--2980171, 29111288, 81609744, -17832704, 50732692, -17988396, -46887084, 790811, 7368017, 44277356,
-2136746, -4001299, 4242354, -11458973, -40550932, 17042968, -5562520, 13944685, -11448772, -33298344,
--8070244, -7772817, 3794067, 22296786, 3120831, -6304475, 8552354, -8002061, -10386305, -1848983,
-32360968, 8319889, 29717416, -2062658, 3407520, -8388071, 3884798, 3525095, 6016176, 23044648,
-39699456, -1065152, -10701448, -36237712, -47964584, 2005213, 2913599, 58187144, 37473588, 6404333,
--20088098, -81723024, -46030240, -6939594, 37085432, 72536632, 37641632, -21808770, -26973468, -84726816,
--31462246, 40558448, 74592848, 60280404, 3972845, -38293928, -43384000, -4215511, -1481227, 35291208,
--6411313, -36407900, 47585552, -11111080, 56196964, -51873540, 529892, -22701586, -53886272, 39304856,
--28339268, 36381056, -28980828, -11208254, -2694018, 18702436, 4080756, -20687246, -11118060, -953483,
-29036126, -27156542, 33321430, 23934778, -18354542, 4131222, -23017266, -23081692, 38814692, -38472708,
--19502910, 25810606, 59354836, -475668, 7907572, -5504538, -26199838, -7330973, 24129126, -8460549,
--39464844, 5519570, -8760123, -6693170, 11686606, -35873176, 17877802, -143345, 12189117, 27591944,
--62658204, -46271292, -15521475, -1428614, 64121716, -34144992, 23107998, 50538880, -27960774, -16438450,
--1958505, 27403502, 39758512, -21873194, 11345693, -8067023, 15615427, 62227632, -23324356, -70180304,
-14715095, 32116692, 8143795, -37512244, 23180476, 9806484, 23270670, -7355669, -1275068, -26203596,
--21026550, 15413564, 3697430, -27924266, 7977365, 19286550, -9581535, -143345, -31199180, 4540854,
--7930657, -34049428, -1408749, 15236933, 12986907, 5499706, -1147293, 8444979, -23506356, -5738613,
-8000987, -11272679, 17627620, -10873247, -4804458, -10278930, -229781, -10951093, 16841640, 3138011,
--13793287, -11565810, -828392, -459562, 27940372, -9821516, 9715216, -5085778, -838056, 6196564,
--12499965, -10752987, 1546725, -23837068, -6947110, 7046968, -20656646, 1009317, -4115653, -6983080,
-4023848, 13344463, -366683, 2011655, -7471633, -4850092, -72426568, -22986128, 31092342, 42567956,
-35347044, -36126580, 11518029, -100852808, -65582540, -55731496, -8877161, 47190416, 30370788, -2150168,
--22175990, -27405650, 13359496, -16783122, -1716913, 36062692, 9830106, 1651952, -35752380, -17251810,
--3644280, -16964584, 10921028, -3029026, 19378892, -5126581, -197032, -6396280, -1153199, -4664872,
--20408074, -15497316, -34252900, -24235964, 17499844, 33480344, 36536212, 20279762, 31843962, -4886062,
-27099634, -6368900, -12379169, -42811696, -1620276, -23665806, 18343806, 6970732, 54135380, -43717400,
-15555298, 30292404, -16668768, -23250268, -13411572, -10860362, -11046656, 3885872, 38477000, 24656334,
--10186052, -1476932, 27639188, -31959926, -35211752, 14529874, -40876276, -31563178, -27413702, 3389803,
-13370770, 15856482, 47595216, 32245540, -5062156, 23992224, -13738527, 927176, 6036577, 17769354,
-28936268, 31111670, 22038014, 18152680, 14748918, 1214402, -39808440, -11335492, -20498806, -5197984,
-23431194, -1044214, 3657702, -8730595, -17646946, 1945083, -8651675, -7292318, -19222126, 8511551,
-14670535, -6496675, 5748277, 12835510, 7236483, 8359080, 1628330, 8229158, -5557688, 5650030,
--2531883, -10207527, 7938710, 9716290, -7833484, -11739219, 1205275, -7941395, -13472776, 10509785,
-11528229, 4399121, 14805826, -1346472, -13288629, 22968412, -9435506, -86497960, -127776888, -156829664,
--123946312, -184840896, -32807108, -67602248, 20294258, 38631620, 133545032, 77936480, 138346800, 140676816,
-192649680, 140579104, 142914496, 105228848, 4383551, -30681098, -55955908, -34471408, -115299472, -78845936,
--62824636, -64205468, -63529008, -63410360, -61546880, -66406636, -72856064, -54349588, -84688704, -69283728,
--60394220, -27199492, -71184784, -22092774, 25999048, -52927420, -25636660, 14063334, 11456825, -44828184,
-37118716, 47732120, 60490320, 82091320, 83453360, -6693707, 49570364, 80692768, 114590264, 90278064,
-180574384, 169572832, 149770880, 121324240, 153663200, 76215272, 122317448, 148902224, 114664352, 73267848,
-124370440, 40256728, 41703060, 76340896, 76609872, 54346368, 15683073, 44399224, -14942728, 2514703,
-38873212, -44534516, -111682032, -166882560, -66003448, -228427296, -199794896, -175768320, -203199200, -226096736,
--189498784, -164084400, -158253440, -109153376, -143444384, -73741368, -91112360, -96892848, -146812176, -118706992,
--85592792, -70172248, -59370944, -55713780, -34911640, 13703630, -222265, -3491809, 41261212, 86177448,
-71929968, 72772856, 116196584, 99258304, 103241888, 131006704, 123636536, 105097312, 100065760, 119936960,
-102216464, 98993088, 105182136, 109018616, 92835184, 81045496, 74702368, 69687992, 91281480, 71452152,
-53732188, 56017112, 42037528, 24381456, -14480482, -30367030, -39531416, -71105864, -60648696, -63018444,
--74770552, -79284024, -72722920, -47602732, -53134652, -48323752, -48862768, -25378962, -27830314, -33794952,
--22845468, -7496329, -8087961, -15794742, -9655623, 993748, -5212480, -7736310, -5793374, -299037,
--398895, -436476, 399432, 703838, 124554, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-};
-const Word32 CRendBin_Combined_BRIR_coeff_im_32kHz_fx[HRTF_LS_CHANNELS][BINAURAL_CHANNELS][2819] ={
-{
-{
-5241471,
-2590939, -3527242, 5304822, -3109020, -1074816, 81068, -1825361, -2042794, -4123706, 986769,
-6240588, 641024, 1112933, 2654827, 637266, -2216203, -696322, -1316944, -1335735, 3787624,
-1032940, 498216, -1298154, 700080, -164283, -1438277, -2364916, 3671123, 2816425, 525060,
--788663, 4257387, -5930813, -2205466, 2515240, -2453500, 5091684, 522912, 3591667, 463856,
-409096, 2330557, -2049236, -849867, -77309, -56908, -1600949, -1274532, 2243047, -112206,
--5470178, 5125507, -727460, 872415, -4621922, 2193118, -2050310, 1816771, 132607, -158914,
--1740536, -178241, -2675765, 2754685, -5195837, -586800, 3788161, -3008088, 1408749, 5661304,
-1717450, 567473, -2823404, 298500, 1505386, -1069447, 1887638, -1191853, -825171, -1598802,
-1708323, -1864553, -2979097, 943282, 494995, -749472, 3644280, -928250, -790811, -893890,
-1209570, 1323924, -95563, 141734, 658741, -734439, 652835, -1412507, -580894, -237834,
--294205, -765578, -26307, -51003, -156229, -453656, -33286, -768799, 404264, -391916,
-878858, -584116, 654983, 883153, 10931766, 2019708, -1530082, 3341485, -1651415, -1366873,
--1750199, -711354, -4104378, 5811091, 3357054, 2508798, 2700998, 2569464, -2692945, -3628711,
-4891431, -1051193, -3795141, -7225209, 1183264, -2138894, 2267743, 45634, -613107, -1617055,
-2274185, -2676838, -1352915, 3571265, 6783901, 1767379, 3086471, 588411, 3411815, -706522,
-3629784, 2290291, 410169, 2030446, 180389, 596464, 186831, 4958540, 1050120, 1304596,
--1120450, 734439, -351650, -693637, 4023311, 4605816, -1656247, -1695438, 928250, 4238596,
--6899328, -361851, -1874216, -5106716, -2078764, 710280, -2177549, 2269890, 1838783, 151934,
--3114388, 1449015, -664109, -2978560, 3820374, -5273683, -2493766, -5624797, -2784750, -799401,
-836445, 5674189, -2454037, -1479616, 1753420, -896038, -1350767, 2687039, -446140, -111669,
--1228898, -1903744, -2361158, -630823, 2003602, 797253, 973347, 929324, 710280, 70330,
--336618, -147103, 158914, 1414118, 687732, 744103, -485868, 115427, 484794, 399969,
--1074, 90194, 3221, -108985, -196495, -991064, -761820, -515396, 545998, 457414,
--223338, 3299072, 1460826, -6663105, -619549, 981400, 4744328, -1432909, -8250096, 6648610,
--7794829, 408559, -3396246, -2710124, -8265665, -5507759, -3214783, -2093797, 3424163, 1148904,
--5435281, 766652, -2898566, 36507, -173946, 2240362, 477815, -2386391, 408559, 577136,
-1358820, -1688996, -1143535, -510564, -2677375, -4103305, 5568425, 2565706, 773631, -772020,
-4747550, 4078608, -4640176, 1297080, 467615, -898185, -2694018, 606664, -4794257, 1072668,
--893353, -3945464, 4882304, 70867, -354335, 6070937, -5261872, 4772246, 1790465, -724239,
--3892851, 1124208, -542777, -4153234, -3426310, 16106, -1487669, -1874216, -5697274, 248571,
-1243930, 2664490, -1637993, 2476586, 781147, -1030255, -775242, -3399467, 2943663, 578210,
-450435, -5636608, 2967823, -514322, 421981, -2923799, 112743, -5181341, 649614, 1079647,
-718333, -471910, 530965, -128312, 61740, -927176, 306553, -297427, 1160178, 618475,
-497142, 1017370, 41876, 326418, 1080184, 600222, -702227, -330176, 1699733, -625455,
-359704, -609885, 653372, -1954747, -448824, -622770, 817118, -383326, -12273406, -11628624,
-4508642, 7691213, 4661650, -10475425, 7460895, -2536715, -950262, 656056, -4846871, -3686156,
-8801999, -126702, -10737, 664646, -205622, 2868501, -4372277, 2653753, -2314451, 2378338,
-4031901, -2673617, -719944, 2330020, -667331, 4196183, -1304596, 1821603, 368293, -431107,
-354872, -3582540, -4975183, 4697084, 617402, -908386, 42950, -4669703, -5806259, -164819,
-113817, 3022583, -5397700, -4605816, -980863, -9597641, 3726421, -759136, 1958505, -740345,
--2309082, 1464584, 12293807, 6820408, 3568581, -3687230, 4845797, -58519, -6313065, 15032,
--6589554, 5596880, 772020, 658204, -3754338, 31675, 3832185, 1399623, 766115, 476205,
-428423, 4111894, 2870112, 523986, 2796024, 1657321, 2232846, 6019934, 2500745, 2958696,
--2793876, 2258079, 1687385, -727997, 4748623, 1434519, -14496, -434865, 1417339, 2517925,
-308164, -40265, -938987, 598611, 2083059, 1141388, -476205, 195421, -1713692, 481036,
-429497, -774705, 164819, -118112, -34360, 1154809, -227096, 1205275, 1671279, 590558,
--984621, -1903744, 308701, -1205275, 909459, 808528, -1203128, 477815, -17632988, -1342177,
--4241817, -616865, -2947421, -10002979, -426276, -2690797, -4124242, -9377524, -1156957, 6657736,
--4653597, 4379256, -776315, 6174553, -2093260, 5016522, -1654636, -4968741, -1334124, 533113,
--2180233, -4467840, -3590593, -4392141, 140660, -4007741, 1459215, 471910, 399432, 1894618,
--3015604, -4037806, 5822902, -532576, 1725503, 59056, -4574677, -2902324, -3230352, 155693,
--2319819, 4059281, 4125853, 680215, -5603859, -1837709, 10302016, 2561948, -4361003, -3469260,
--2209224, -3821447, -2021319, 8048232, 4896263, -5846524, 3573413, 4746476, 7007776, -1810866,
-2847027, -432718, 59593, -2840584, -5839545, -1058710, 4304094, 440771, 8338679, 5916318,
-393526, 1934883, 7033009, -5605469, -2570001, -1655173, -3453154, 2477659, 1088237, 1135482,
--3026878, 2052994, -2199560, 2275796, -4303021, -202400, -398895, -1689533, -105764, -370441,
-2112587, 576599, 473520, -1845225, -1247688, -595927, -1737851, -75162, -2506650, -1459752,
-101469, -195958, 1561758, -1066763, 427349, -516470, 849867, 613107, 2160906, -1786706,
-22600654, 15170361, -4670777, -851477, 58519, -615254, -2582349, 3156801, 7739531, 6532109,
-3394635, -11855720, -5266167, 1524713, 691490, 5038534, -8921721, 1804423, 12104292, 8145406,
--1386201, 2902324, -1059783, -4085588, -5575942, 311385, -4750771, -2774012, 1395328, 3757560,
--3481071, -6489696, -3081102, 1115618, 5963025, 8322036, -1581085, -8801462, -1859184, -3147674,
--8827768, -533113, -264141, -4239670, 1463510, 2377801, 5164162, -7408819, 3029026, 3818226,
-835908, -7165079, -5318244, 2437931, 316217, 1857037, -778463, -703838, -245887, -3973919,
-1959579, 2070174, -2770791, 4968204, 5883569, 8038568, 1932735, 598074, 7579007, 12347494,
-1974611, 1685775, 2107218, 7259032, 824634, 4293357, 12196633, 3613678, 2248416, 331786,
--2302103, -10427644, 1395328, -285078, -1692217, -2001455, 1282585, -1453846, 2576444, 1137630,
--1378685, -768262, -352724, 2093260, 1338419, -590558, -405874, 1421097, 3097745, 12885,
--777389, 1071058, 118112, -1458678, -2881923, 2079838, -2713883, 1642288, 1145683, 2000381,
--136365, -349503, 41339, 643171, -3785477, 94489, 551366, -374736, 11893838, 263067,
-2478733, 2893197, 5735929, -2236067, 3652870, -3090229, -1971390, -9797894, 3910568, 6696928,
--6062347, 5083631, -2508798, -8584029, 8943196, 5311801, -1592896, 5370857, 10473278, 7349226,
--5401995, -3004330, 5279589, 1683627, -1192390, 4080756, 3730716, 5455682, 344671, -2365990,
--4670240, -8278013, -272194, -6868190, 847719, -2225867, 3846143, -5458367, -12592307, 2787434,
--3123515, 5829881, 1465121, 474057, -3485366, -7400229, -6225018, -569083, -637266, -5575405,
-7878044, 10212358, 10581189, 4297652, -7577396, -646393, 10025527, 985695, -1729261, 4689031,
--1312113, -2506114, -9518184, 5264556, 2757369, 13815299, 6376416, -9350681, 3146601, 3543885,
--992674, -151398, 3347927, -2259690, 767725, -3995930, -9870909, 8942659, 1632088, 5339181,
-2576444, -4631586, 7552700, -1654636, 1800128, 429497, -1670205, 310848, 231391, 623307,
-3951907, 1331440, 754841, 363998, -1349694, -1565516, -2063732, -1196685, 1363115, -630286,
--103079, -763967, 1249299, -1131724, -603980, 144955, -150324, 555661, -2175938, 2556043,
--1064078, 2252710, 736050, -1136556, -1435056, 3169686, -2870112, 2550674, -695248, -3663607,
--6111202, -1648731, -1560147, -10549513, 529355, 1295470, 5281736, -1994476, -4544613, 1894081,
-578210, 2497524, 85362, 5732708, 2305324, 3959960, 679679, -441308, 3411278, 1995012,
--10383083, -3208878, -14845018, 674310, -2762738, 1717450, 2639794, 200790, 7105487, 1808181,
-10142565, 1247688, -12039330, 247497, -4838281, -1991254, -562104, -1804960, -608812, -9549860,
-2090039, -4596152, 11518565, -11942693, 6640557, -2592550, -10192494, -1905892, -7162932, -1540820,
--2172180, -10853382, 3129421, 3330210, -1975148, -1792075, -679142, 3847217, -8610336, 224412,
-8102456, 1500017, 11266236, 18379238, 7606924, -16633871, -22192096, 10779294, 4842039, 16593606,
--3419331, 7966628, 1717987, 7912404, 11086384, 14262513, -7559680, 4119948, 10625212, -8676371,
-1635846, -1107028, -1072131, 807991, 7593502, -1144609, 2608119, -4896263, 1796907, -3772592,
--3970161, -1751273, -3312494, 561030, -1944010, -5591511, -185220, 3729105, 2335389, -1029718,
--1014686, -820339, 104690, 1743220, 1842541, -1434519, -2160906, -953483, 3245922, -773631,
-3146064, 509491, 485331, -776315, 783832, 940598, 291521, 879931, 180926, -2633352,
--2551748, -1660005, 858993, 2695629, -3740380, -2490007, -1157494, 1584843, -1739999, -20310900,
-15164993, 2818036, -2702608, -270046, -9225590, -7517267, 7904888, -2098629, -2604361, 8250096,
--6133214, -6544994, 344671, 8207146, 3456912, -2598992, 221728, -4636417, -651224, 686658,
-4361003, 238908, -10411538, -10283225, 2302639, -1335735, 2469069, -984084, 4130685, 8078297,
-14947560, -183073, 9263708, -2232309, 2598992, 6456410, -6253473, 12277701, -1783485, -7539278,
--10759430, -1992328, -8932458, -11169599, -3138011, 5236102, -3503083, -8660802, 4324495, 6281390,
-9684078, 12618077, -10271951, 3970161, -2887292, -9347996, 3498251, -10455561, -1969243, -17114908,
-6833830, -5053566, 2516314, -3019362, 2681133, -18402324, -18449568, -11100343, -4350802, 10306848,
--9936944, 19492710, -6866579, 2020245, -1825898, 3711389, -1788317, -13635447, 1974074, 1702955,
-3735011, 3290482, 1597728, 5425081, -3063386, -4604205, 8590, 326418, -4596152, 2198487,
--5912023, 3459059, 1972464, 2828773, -876173, 132607, -1811403, -4432943, -3323231, -1741609,
--2066416, 3166465, -2050310, -5375152, 1900523, 2498060, -1021129, 3883724, -319975, -955630,
--26307, 1035624, -1610613, -1415192, 1985349, 2872260, 2027761, 1082869, -4014184, -2698850,
--870805, -3007551, 1180579, 479963, -37581, -2675228, 17060146, 1104880, 6374805, 4625143,
-1704028, 10109816, 1275605, -13904957, 6644315, 2114198, 6338835, -532039, -10480794, 14948097,
-7918846, 6200859, -1513976, -4399121, 1799591, -979789, -8341900, 5433671, 3606162, -4475356,
-5849746, 9549323, 132607, 3659849, 9283035, -10134512, 2334315, -3345780, 4095251, -19153944,
-5754720, 9371082, -3365107, 2571075, 9155797, 5069135, 14496, 3172370, -9777493, 2586107,
--5813238, 536871, 2652679, 1631551, -4545686, 18552112, -3464965, -3392487, -4464619, -15987479,
--6691022, -9754944, -11591043, -2094870, 15691663, 17512730, -1887101, 5484137, 6787659, -14432701,
--4882841, 11922829, 9571335, -5667210, -4268661, -14212047, -4850629, -5309117, -7103339, -7968775,
-1951526, -14500346, 2200634, 13828184, 18960134, 6012418, -5850819, -281320, 9955197, -3444564,
--7132867, 786516, -1104880, -2927020, -4862977, 801011, -699543, 2388002, 2812130, 1879585,
--1881733, 1003949, 1391569, 1386201, -500901, -2680597, -6362994, 1869385, -616865, -2381023,
-4410932, 1580011, 2367064, -2484102, 3705483, -2669859, -2389613, -3020436, 2881386, 750009,
-2059437, 4741644, -655519, -2250563, -1542430, 2443837, 774705, -70867, -144955, 770410,
-392453, -134755, -1206349, 2483028, 2870112, 3998078, -1569811, -5404143, 3377455, 912681,
--7196218, -10644003, -11464341, -4558571, -11208254, -4636954, -4545686, 204548, -10661183, 2415382,
-4490925, 528818, -12167642, 3821447, -15094663, 4705674, 8438537, 281857, 13112535, 442382,
--3885335, -2343979, 8851391, -3128347, 12179454, 4384625, -4188667, -4110284, 2164664, -6138582,
--3324305, 525597, 11528766, -314069, 6109054, 3533684, 1075889, 8150774, -3584687, -7315940,
-3317862, -5213017, -2420214, -14366666, 8184060, -4987531, -4230006, -2835752, -15892453, 19161996,
-4992363, -2173254, 8352638, 2818036, 4093104, -8337606, -12636868, -14332843, -6915971, 861678,
--14530411, 5553393, 10633265, -16250009, -5913096, 6118181, -7469485, 4068408, 18249316, 701690,
--2879776, -4712116, 4174171, -9763534, 6536940, 3617973, -8853001, 3054796, 6410776, -3471944,
--10493679, -8901857, -4655745, -202937, 2966212, 2603824, 2052994, -1700270, -2567317, -1170916,
-2409477, 270583, -1416266, -5825587, -7042136, -1799054, 568009, -4936528, -6020471, -4061965,
--2484102, -2174327, -5270462, -4457103, -2403571, -3168075, -6749004, 1350767, 6494528, -484258,
--519691, -2405182, -1857573, 2305861, -2324651, 659278, -5300527, 373125, -1476932, -2717641,
-74088, -2535105, 1764695, 2695092, -2176475, 3984119, -2566780, -848256, -2655364, -15032,
-521839, 11679090, 28790240, 30438970, 9095130, 18931678, -12979928, -12918188, -3114925, -1808718,
-1015223, 4394826, 9601936, 17538498, 5632313, 16244103, 1703491, 5008469, 2317672, -4318590,
-7272990, -53687, 2847027, 1388885, -8297877, -874026, -4493610, -8750459, -5634460, 290984,
-795106, -11649025, -4955856, 15022722, 10617696, 7885560, 12495134, -7645042, -15032, -21456582,
-906238, 18720152, -3722126, -3529926, 2129230, -1823751, 14422500, -983548, -2525441, 11370926,
--13466333, -21478058, -8833137, 2113124, -11749957, 8790187, 11943767, -16869558, -6565395, 328565,
--427349, -24283208, -15694884, 8036421, 3273839, -1635309, 7766912, -10481331, -6665789, -14911590,
-3481608, 5062693, 1141388, 1257889, -10156524, -16451335, 13669807, -22442814, 6504728, -8081518,
-21521008, 2478196, 8903467, -5938329, -8665633, 6517613, 2803003, 9943386, -9356586, -1421634,
-6453725, -182536, -5238250, -4517232, -5152350, 743566, 4931696, 5827197, -6349573, -2323577,
--1138166, -8012262, -3070365, 1787243, -1034013, 1009854, -4467840, -6987375, -1161252, 479426,
-5574868, 2065342, -3654480, 4706211, 627065, 2548526, -8147553, 1953136, -4916664, 4122095,
-581431, 4350265, 6321118, 2319819, -4651987, -8703751, 2704756, 3367254, -28179818, -20266340,
-14038101, -2923262, 25526064, -6219650, 21014738, -16902844, 508954, 7558606, -1674500, 914291,
-2468533, -1309428, -12687870, 4458713, 4773856, 5561446, 6323266, -3895535, 10429254, -9469866,
--6998113, -5410585, 14669461, -8090645, -2728915, 1321776, -306016, -7610145, 6541235, -8492224,
--10116259, -19063212, 1739999, 3500935, -12950937, -6037114, 6238440, -2616172, 3333968, 1040993,
-15060303, 1053341, 11334956, 5060009, 488016, 9088151, 2063732, 3151432, -17082158, 17598092,
-6231461, 13789529, -8376797, 3665218, -9168145, 14305462, 10849624, 17452062, 2782065, -4562866,
--12680891, -782221, 2236604, -10786810, 15333033, 2480344, 2384781, 16519518, 3694746, -4939213,
--6592775, -527744, 9815611, 11857868, -3852586, 14785962, -17678622, -18510236, -8105677, 4319127,
--5646809, 8091719, -2014340, 4351876, 14154065, -614180, 7025493, -5876589, -5389647, 6207302,
--545461, 9946071, -3068754, -44023, -3048353, -6110128, 1242319, -3585761, -1436130, 4114042,
-1389422, -5549098, -5109401, 3007551, 7512972, 7826504, -790811, 6417218, 6930467, -9691594,
-4532264, 9226663, 7226283, 4112968, -7265474, -8760660, -9178882, -9208410, -9184788, 808528,
--3209414, -1245004, 1034550, -6718940, 4796405, 4399121, -3484829, 5228049, 1837172, 2499134,
--6438693, 12986907, -30627948, -1392106, 15961172, -10194105, -3400540, 11767674, -12746926, -25892748,
-5160403, 4414690, 4027069, -3362960, -15305116, 3886409, 4372277, 1177895, 8527121, -27428198,
-12621835, -6350109, 6583111, -15613817, 12757663, -19762756, -12610024, 7720204, -5151814, -2266669,
--15010911, 11864310, 15604153, 1611, 1778653, -7114077, 23392002, 5839545, 6416145, -4186519,
--20146080, -4286378, 11215233, -1970853, 16758962, 206158, -5986111, 4099010, -1097364, 10546829,
--19912542, -2336462, -15251429, 16658568, -6091338, 5643587, -378494, -500901, -18024368, -6267968,
-16007880, 5182952, 1523103, -4691715, 573915, 2140504, -23107998, -23926190, 25708600, -11245835,
--27679990, 11433203, 13256953, -22252226, -29153164, -20301774, -19493782, 3622268, 7918846, -2310156,
--18724446, -466541, -9957345, -4601521, -13530758, -608812, 1520955, 1534377, -2579665, 13111461,
--6876243, 5261335, -5810017, -121333, 3712999, -3117610, -336618, -7471096, 10285373, -2170032,
-3728569, -5416491, -7999377, -1494649, 4155381, 4749160, 1620813, -7759396, 4930086, -920734,
--6197638, 6491306, -9482751, -1697586, -5776731, 9974525, -4048544, -10541997, 4938139, -4020626,
--4406637, -14074608, -498753, 3483219, 12288438, 5194763, -6823630, -3355443, 1473174, -1637456,
--3486440, 2510945, -249108, -2444373, -2380486, -635118, 12252468, -17054242, -9112847, -17820356,
--1372242, 3329674, -23332946, 3503083, -11282879, 32523640, 1976759, -29795262, -6533182, 14025216,
-9002251, 6691022, 15119895, 14651744, -21047488, -5731097, -7987029, 19674708, -6767258, 23018878,
-223875, -13775571, -10473815, -21155936, -23645942, 1105417, 3041374, -4227859, -12057047, -5569499,
-1873680, 3460670, 8470749, -12024298, 6206765, -14084808, -15899969, 2819646, -3177202, -4649839,
--16589311, -16339666, -7421167, -5287642, 23190140, 1768453, 7982197, 12520367, -109522, 28449864,
-11964705, -9959492, 1779190, 14468671, -5499706, 18412524, -4638565, 1985886, 1599339, -25863756,
--25785374, 3478387, 18543522, 10201, -5379984, -28896004, 2142652, 9356586, 6429566, -10172630,
--7658464, -6059125, 3795141, -12707734, 30592516, 16687022, 18879602, 3293166, -21068962, 7381975,
-10064719, 29761440, 7264401, 2687039, 12420509, 4777078, -4611185, -121333, 9589051, -1258425,
-1573032, 2604898, -7344931, -5765457, 9332427, -142271, -6980933, 9097814, -5581847, -2583423,
--4205310, -4779225, 8749385, -5850819, -2135673, 4074313, -8792872, 3424700, -526134, -5599564,
-11432129, -4415227, 300111, -14602352, 8973260, -4738423, -3404835, -9557376, -12712566, 1660005,
--4952634, 8757438, -6442, 5034776, 3788161, -190589, -5130876, -245887, -14172855, -12931610,
-27304180, -8470749, -10105521, -1454920, -7519414, -18606872, 404264, 12843563, -31894964, -569620,
-8284455, 10157598, -10873247, 7203197, -18260054, 1372779, -4708895, 5680631, -16354699, 10146323,
--27851790, 4525285, 768799, 15737297, 14846628, 7341710, -10401874, 11549167, -3391414, 12904229,
--14104136, 2176475, 16517370, 13036836, -7755101, 2632815, 414464, -3721052, 8011725, -3178276,
--9618579, -10783052, 7638063, -19429896, 12787728, 2916820, -20767778, 19488950, 18720688, 17542258,
-6351720, -9236327, 22656490, 2640331, 9730785, -14003741, -12085501, -13430900, 4132296, 5077188,
-8110509, -18810884, 1805497, 13661217, -35938676, 1240709, -11812771, 22405234, 14506252, 11191074,
--3195993, 14805826, -14107357, -867047, -9830106, -21735218, -928787, -20030116, -16667157, 9600863,
-26521960, -25094958, -5945846, -4708895, 26623428, -6744173, 11628624, -7800735, -4707821, -1186485,
-9396315, -5742908, -2359011, 594853, 6387690, 4551592, 3339874, -3736622, 934692, 2593624,
-13159243, -10640781, 10972031, -2597382, 8012262, -188979, 2093260, 2597382, 5021891, -7125888,
--1619740, -1560147, -8644695, -7901666, -7679939, 5054640, 4187056, -1803886, -3486977, -4668093,
--6078990, -3973919, 427886, -2928631, -140660, 7689065, -266825, -14817637, 6746320, -8787503,
--1385664, 23739894, 5152350, 12020540, -34206192, 15855946, -19119584, 25897042, -2547989, 10069014,
-19678466, -21219822, 37845640, 27086748, 20503638, -9324374, 5580237, 25873420, -6427419, -8377871,
--5965710, -1417876, -19495394, 5128191, -10331544, -23809688, 23084376, 7543037, 6412923, 2813741,
-5426155, 8831527, 24299314, 5011153, -14992120, -1367410, -15560130, 3018825, 2368675, -27627378,
--1064078, 14911590, 1202591, -2059437, -8295730, 29190208, 6147172, 12378096, 6561637, -15901043,
--11179263, -8734353, 18312130, 10645613, -3526168, 10943040, -1505386, -20042464, 19469624, 2253784,
-22301080, 2350958, 2404645, 335544, -29317446, 3907347, 906238, 3150896, 18430778, -7347079,
-28933584, -43888124, -7647190, 32536524, -13093745, 10686416, -14776835, -23419382, -18641232, 13405667,
--12699145, 12489228, -20035486, -4438849, 3532074, -5089536, -7792145, -2676302, -2234994, 8673150,
-20421496, 2013803, 12178380, -4065187, -1876364, 14659797, -2003602, -4358855, 4246112, -7532299,
-6731288, 12742631, -8448738, -1458678, -3194382, 2216203, 2583423, 5968394, 23075786, -4306242,
-8242042, 265214, 5681705, 8176544, 4360466, 1136019, 12937515, 13637595, -3658775, -2093797,
-5893232, 2835752, 5132486, -17904108, -1262720, 16694538, -3563212, 3337190, 6835441, -1105954,
-17394080, 6135361, -35447440, -42407972, -3748970, -19875498, 2690260, 12077985, -16974248, 4957466,
--25926034, 11282342, -14280766, -70875552, -4566087, 43247636, -18641768, -8007967, 43447352, -10188199,
-2341294, 52064132, -12458090, 11520713, 4866735, -7591355, 41918344, -33741800, -4359392, -908386,
--5939940, -6777996, -6911676, -822486, 13652627, -7665980, -22874458, 278636, 456877, 6781217,
-8339216, 1537061, 18824842, -695248, 8662949, -5111548, -22695144, 15849503, -2786360, -23335094,
-897111, 13510893, 41291280, 20922934, 34712464, 767725, 8548059, 16608639, 3917010, -1984812,
-32451700, -1667521, -12639552, 38031400, 6641093, 6760279, 278099, -5311801, 21709986, 41876,
--12617540, -14201309, -2943126, -2768643, 32870996, -22238804, 2888366, 4285304, -5832029, 38649336,
-333934, -24629490, 4156992, 12671227, -18121004, -807454, 18494130, 15312632, -9309342, 1532767,
--10521596, 8973797, -2820720, 1294396, -10351945, 9722195, 148176, -977105, -15052250, 6322729,
-5179194, -9743670, 804770, 3658775, -5046587, -3257733, 11686606, 1917166, 6536940, -4179003,
-3461207, 20290500, -18276696, -8244727, -5958194, 21939230, 8193724, 11672110, -13123273, -11924977,
--4831838, -1321239, -15921444, -17828946, 21622476, 8844948, -12550431, -11633993, -7108708, 26844,
--12435004, -10832444, 284542, 3496104, 8302172, -1934346, -3868692, 2123325, 24089934, 19452444,
--39756364, -19417010, 30521648, -5610301, -29804388, -261456, 588411, 10797548, 32273994, 28739236,
--17724794, 5326833, -4051765, 261993, -340376, -18596672, 27983860, -8315057, -18421114, 6544994,
--13239774, 15928960, 1342714, 22649510, -7032472, -21480742, -19473918, 17160542, -8317741, 22339736,
--6058588, 14470819, -14753213, -11420318, -7050726, 1599875, -18504866, 4520453, 907849, 300111,
-17955648, -211527, 5951751, -12525198, 8864276, -19765976, 21082920, -19015968, 12501576, 6385543,
-17709760, -29759828, 941672, 2498060, -9068287, -21505974, -36495948, -6103149, -31155156, -11959873,
--24948392, -11596412, -45532024, -14136348, 20544440, 26107496, 14136885, 15194521, -2537789, 16508781,
--32465658, -7414724, 4942434, 20907900, 5688148, -44551160, -1841467, -19590956, -13120051, 52068964,
-34918084, -24701968, -10136123, -17348984, 5719286, -45913200, 2734821, 9570261, -13208098, -13629005,
-8262980, 2673617, 355945, -8822400, -7825431, -7556995, -7739531, 14320495, 13058311, -945967,
--3769908, -14136885, -16304233, -3452617, -4150549, 5454609, 13925895, -27370216, -2163590, 13684303,
--146566, 17513802, -6207302, -16791712, 8973260, 18930606, 9480067, -11389180, 1299765, 17517560,
--22414898, -15911780, 29501056, 1613297, -1116692, -3028489, 4589173, 6802692, 8886824, -3745212,
--7315940, -52413632, 15336791, 8163122, -27528056, 10817412, 10282152, -20067698, -15323370, 23471460,
-2965138, 12473122, -6284611, 15493558, -4908074, -2519535, 12295954, 5863167, 4063039, 277562,
--8230231, -14282377, -8621073, 22187264, -7797513, -19361712, 32852742, 20205674, 2645700, 14904073,
-4494684, -17015050, -50046568, 20451560, -1615445, -27144194, 22789096, -2476049, -36458368, -30790620,
--15903727, 23899882, 9690520, 24774446, 31384936, 9280351, -25234544, 7934952, 9179419, -32303522,
--5122822, 18088254, -9977746, -35193500, -26555782, -42884712, -27203250, -6262063, 27149562, 39094940,
-18972482, -2662343, 27074400, -6802692, -66017944, -52503292, 11630771, -26484916, -31224412, 44863080,
-6064494, -60498372, -46582680, 15899969, 2934537, 10291279, 22623740, 54077932, 31199716, -4589710,
-60432336, 19185618, -63061932, 539018, -13302587, 32670206, 10002442, -20771536, 10350871, -15593416,
--9052180, -13564044, 20764020, -3806952, 15244986, 12610561, 16500191, -3638911, -16095927, -5293011,
-11476153, -7027640, 9696426, 6099928, 7067906, -14161044, 1973001, 5746666, 576063, 25493316,
--570694, 11334956, 2814277, -4203163, 13940927, 3300146, -1693291, 15161771, -6892349, -2294586,
-9633075, 3824669, -1061394, -6126234, -8195872, 992674, -9456444, -7312182, 5714991, 7305740,
-49609020, 47986596, -15019501, 16663936, -19601156, 11971684, 776852, 6898255, -23379118, 1803886,
--19951734, -17976586, 316754, -41448044, 1169842, -17676474, 4763656, 12104828, -164283, 14033269,
--20180978, 30768608, -15079630, -620086, 21493626, -20155744, 8018704, 15316927, 19093278, 2647311,
-7010997, 4603668, -29542396, -16628503, -4607963, 4299799, 4789963, -4513474, 19914690, -6452652,
--63351, -3859028, -8323647, 6873022, 4138738, -23610508, 7138236, -18995566, 5393405, -45496052,
--1979443, -1237488, 119185, 18431852, -7259569, -16656420, -7175280, 16922708, 163746, -43979928,
-61604864, -5474473, -11521787, 13269301, -2461016, -9141838, -11289322, -12332462, -12941273, 41996192,
--16065325, -24499568, 21085068, 1930051, -33013802, -7949448, 14104673, 10943040, -10741176, 22601728,
--3790846, -6337224, 21219286, -15574625, -13996225, 26458072, -11546483, -4306779, -1237488, 11151883,
-5650567, -380105, -1658394, 556198, 5233955, -5560909, -207769, 5101885, 5726265, 6500433,
--16097537, 4104915, 8425115, -15952045, 1539209, 3221762, -2618320, -6514392, 6598144, 1721745,
--5534602, 822486, -348429, -2768107, -19780472, 11253888, -11627550, 3486440, 3573950, -18167712,
--817654, 790274, 79457, -350040, -5917928, -985695, 5308580, -829466, -38969312, -57749592,
--55357296, 122641184, 101938904, 115883584, 262156752, 68487008, -65593816, 20633022, -210137712, -222957120,
--55097988, -140153376, -108246600, 66185984, -34381752, 13735305, 167053824, 82813952, 123842160, 237672752,
-158519728, 41356240, 34524020, -70143792, -216390656, -165457712, -126530808, -255796448, -103424424, 6067178,
--45216880, -20437602, 129417568, 34237868, 17426292, 160160944, 19899658, 38252052, 227676224, 167276624,
-106005160, 215132768, 107243720, -37846180, -3214783, -68190120, -335209312, -292626848, -236352592, -367449472,
--279888512, -99262600, -132587248, 29817274, 255129104, 227741712, 315354752, 398032352, 296237312, 230945216,
-224735232, 124215288, -42115912, -80267568, -182861984, -261174272, -256440144, -222319312, -254577200, -260610032,
--209494544, -117306296, -85012432, 31417686, 199468480, 287551808, 410650944, 461801856, 275661728, 66695472,
--39724152, -278681088, -265160000, -202181296, -157153392, -58733140, 29127932, 21408802, 28007482, 35067336,
-16197395, 41336912, 58304716, 43080132, 70458936, 39763344, -18660022, -22736484, -63227288, -115181360,
--32059784, -36568424, -42036456, 35124780, 30054034, -39760124, -50971060, -94142464, -153156384, -64932928,
-85897200, 146859968, 285884832, 345068416, 234268992, 144892864, 37933152, -131108168, -191228592, -216287040,
--252678288, -237629264, -182725088, -148447488, -123167312, -75435728, -20340966, 61395484, 217233008, 303904896,
-269475904, 193068448, 118275344, 23935316, -49637472, -74557944, -93976568, -67868000, -20431160, -6199249,
--22164178, -34699576, -53975392, -84289808, -108737832, -105415144, -106363256, -64825016, 3194382, 30339112,
-60224568, 79373680, 71092984, 40979356, 15219217, 4548907, 1192927, 832687, },
-{
-8950175,
--1191317, 726386, 7012071, -891743, -344134, -2033667, 7650411, 461709, 3710315, 2278480,
-2238215, -3151969, 1571421, -4888747, -552977, 3810173, 750546, 2235531, 3557307, -6040872,
--4247186, 1449552, -322123, 4499515, 2712272, -224412, -2514703, -1560147, -3106335, -483184,
--434865, -455267, 830539, 1181116, -2707440, 4507568, -1059246, -695785, 1513439, -5731097,
--1349694, 2488397, 852014, 5667210, -47782, -409096, 1079111, 390842, 2329483, 3924526,
-4956929, -284005, -542240, 93952, -2895882, -3635690, 1980517, 3253975, -2311229, -2186138,
--1508607, 4147865, 2411624, -568546, 615791, -4886599, -1438814, 2542621, 2076080, 3615826,
--5287105, 1194001, 1956358, -1095754, 3674882, -238908, 3198677, 1537061, 1006096, 4097936,
-2000918, 1032940, -537, 481036, -1011465, 341450, 535260, -326418, -1491427, 716186,
-673773, -1082332, -186831, -732292, 725313, 1173600, 11274, -156766, -103079, -1099512,
-499290, -393526, 870805, 420907, 241055, 185757, -526670, 286689, 95563, 456340,
--907312, -424665, -231391, 107374, 11616813, 3238405, -2698850, 5969468, -2916283, 6212670,
--2084133, -2784213, 3114925, 5812702, -205085, -2823404, 1516660, 1248762, -263067, -8192113,
-1902671, 2447058, 635655, 5176510, 6895033, 3751654, 6790344, 4670777, 4129611, -1068373,
-4589173, 2261300, -3515431, 1350230, 2110440, -4460324, -5735392, -835908, 2235531, 132607,
--2079838, -2720325, -2708514, -1290638, 3069291, 6227703, 5222680, 2023467, 4009352, -6444599,
-397284, -1607928, 51540, -7402376, 2752537, -666257, -1766842, -238908, -2031520, -3631932,
--2596308, 2665564, 618475, 2057826, -2722473, 5137318, 1301912, -5832029, 2428267, 803159,
-1633698, 3282429, 976568, 5976984, -1889249, 707596, -6912213, 1373853, 667867, 258235,
-165893, -1240709, 4920959, -1442035, -2281702, 3793530, -3859565, -1822140, -1589675, -654446,
--1794760, 1312113, 338229, 716723, -40802, -103616, 74625, -637803, 435939, 716186,
--236760, -233002, -19327, -1208496, -2071248, 840740, 271657, -1574642, -200790, -108985,
--340376, -1920387, 531502, 65498, -42413, 212601, 370441, 293132, -732292, 48855,
--1349157, 647466, -2427194, -2303713, -836982, 2230699, -4057134, 1230508, -7945690, 1542430,
-1418950, -853088, 5560372, 420907, -694711, 570157, 2913062, -4765803, 622233, 1542430,
-3016678, -6806450, -3546569, -2529199, 2452426, 1093606, -2222646, -6878927, 1617055, -6842420,
--489089, 2804077, -1345399, 2150705, -1258962, 4715337, 6833830, 3708704, -3636764, 732292,
-5163625, 3293166, -3299072, 2778844, 744103, -5318780, 1826972, 7460358, 3404299, 2543695,
-8185671, 803159, -3196530, -6250788, -340913, -3481071, -4315906, -1950989, 4472135, -4243428,
-1438277, -2507187, -2469606, 5351530, -757525, 940598, 4150549, 5807333, -2615098, -5208722,
-6644852, 5213017, 3221226, 376883, -4096862, 709207, 5237713, -5311801, 1573032, -3438658,
--181462, 3347927, -3144453, -106837, -5992016, -1497870, -586263, 966905, -380105, -2176475,
--332323, 1200443, -1815161, -386010, 747324, 746251, 443992, 556198, -155693, -364535,
--2403571, 1325534, -193810, 1363652, -970663, -1471026, 479963, 1297617, -872415, 1154809,
--250719, -1074, -163209, -171262, 1234803, -686658, 439697, -693637, -15617575, -5695664,
--2417530, 8552354, -3254512, -1267552, -5058398, -4252018, -743029, -11236708, 6293738, 2100776,
--332860, -4140349, 6197101, -1730872, 3141232, -2497524, 1979980, 3977677, -4959077, 541166,
-5448703, 3104725, 2188286, 5858873, 5212480, -3257196, -4189204, -5193153, -96100, -6833830,
-1627256, -9032316, -1742146, 6689949, 3498251, -2274185, -712965, -6788733, 3086471, -2889439,
-5996848, -3435437, -6169721, -1242319, -2546916, -5039071, 1955284, -1135482, -3229279, -3259343,
--10922639, 1517734, -3279745, -8064338, -2157684, 5015448, 2553895, -4157528, 3452080, 4472672,
-4289062, 1622961, -5585068, -901943, -1242856, 3894999, -3925600, -1478006, 2033130, 2098629,
--6111739, -7245610, -13069049, -2204392, -7591355, 2529736, -295279, -1780801, 3841312, -779000,
--1749662, 1708860, 2619930, 2552284, 1957968, 4583267, -1942399, -1564979, -1228898, 704375,
-229244, -997506, 1254131, 1842541, -401043, 462246, -796180, -994822, -192200, -631897,
-188979, 436476, 54761, -1105417, 178778, -731218, -295279, 695248, 1467268, -608275,
-1757715, 2184528, 338229, -574452, -1857573, -328565, 1251983, 879395, -13560285, -5450314,
--2414845, -4041027, 4637491, 6020471, 5710696, -11357504, -8449811, 3240553, 13828184, 8145943,
-7516, 1945083, 3948686, -4986994, 3289945, -4625680, 3335579, 4883915, 768799, 3914326,
-1239098, -299574, 2052994, 1187559, -3694209, -4715337, 6489159, 2602213, -4725001, 4615479,
--2574833, -505196, 11147051, -5345087, 6312528, 12428562, 5087389, -738734, 483184, -4520453,
-5826660, -5977521, -3250753, -10028749, 1885491, 7682623, -193274, -7108171, -2523293, -10065793,
--5097590, -1894081, -14276471, -7798587, -1414655, 1481764, -6254010, 3134789, -1661616, -4966593,
-5337034, 15745887, 1460289, 8009577, 5448703, 4695473, -5004711, 2066416, -8521752, 874026,
-2435783, 1873143, -3318936, 41339, -8655433, -3046743, -3046743, -650688, 4184372, 4464619,
--218506, 1715303, 2430415, -1273995, -963683, -834297, 788663, 62277, 584116, 433792,
-1357747, -770410, -70330, -2112587, -280784, -361851, 1454920, 806917, -936840, -1292248,
--1236414, -1216550, -425202, -1485522, 487479, 2619930, -2137820, -316217, 878321, 1471026,
-21109228, 13502840, -7392713, 2820183, 6726993, -2718178, 3807489, -1227824, 6267968, 3288871,
-1938104, 5874979, 3166465, 2955474, -1901597, -14095009, 6694781, -2320356, -3331284, 11200201,
-6771553, 3933653, 5019743, 3898757, 2724083, -2076080, 1543504, 547608, -3735011, 3031173,
-4700842, -7909719, 1430761, -5085778, 3727495, 4527970, -12618077, -110595, -14996952, 351114,
-1757715, 1358820, 3962107, 10255308, -1346472, -5172215, -2685428, -2733210, -4021163, 3018825,
-3045132, 1076963, -1758252, -1733556, 9769440, -3183108, -2081985, -5298916, 8665097, -1240172,
-7264401, -3377992, 7770133, -7495792, -16062104, -4650913, 889595, 3320547, 5283347, -5280126,
--4112431, 2277943, 1327682, -2399276, -4272956, 10064719, -4016331, 9578851, 2393371, 6794639,
-2525978, 4974646, 4002910, -1626182, -761820, 2008971, -399969, 5265093, 15032, -1625645,
-352724, -5712844, -1270237, -1254667, 281320, -1851131, -865973, -565325, -261993, -581431,
--3168075, -2381559, 613643, 297963, -3542811, -118112, 375273, 590558, 1264331, 679679,
-3229279, 236760, -1266479, -49392, -590021, -1470489, -1971927, -639950, 9893457, -3760781,
--6628745, -274341, 1014149, -9398999, -7407208, -2323577, 2527588, -1381906, 12202002, 7368017,
-283468, 11708618, 4173635, 3438658, -10061498, 9415642, -1803886, -2343442, -8496519, -3803731,
-7452305, 7419019, -2162516, 4923107, -10212895, -1419487, 6770479, 5146445, -3854733, -7208566,
--4110284, -4453881, -5626407, -4628901, 1048509, -7581154, -796716, 10481868, -5112622, 1210644,
--464930, -2413235, 4016331, -1673964, 6776922, 5369, 9585293, -2485176, -6162741, 3487514,
--4887136, -4773320, -4889284, -13723494, 1510755, 5667210, 8082592, 5874979, 10646150, -1113470,
--4214437, 6187974, -7714835, 1757715, 1087701, -1162862, 6860674, 6469832, -1765768, -8304320,
-1559610, -4300336, -7988639, -7333657, 3929895, 7059853, 4336843, -15348603, 3350611, 1606855,
--868657, 7202124, 3794604, 5887327, 2128693, -603443, 7650948, 1013075, 3413425, 2788508,
-498753, -3518115, 451508, -1977296, -4387309, 777389, 1175747, 1990181, -634045, 513785,
-353798, 338229, 1392643, 949725, 919123, -202400, -2827699, 1865090, -1224066, -1255204,
--1151051, -1964948, 3380676, 3933116, 3236258, 1314797, 228170, 529892, -958315, 2574296,
--12070469, -7066295, 1275068, -6895033, -17866528, 13540958, -295816, -887448, 1716376, 1072668,
--11815992, 8268349, -12318503, 1102196, 5639292, -1616518, 2057826, 1992865, -13251585, -4457639,
--5900212, -1220845, 2729452, -4349728, -2755222, -530428, -768262, 1222992, 5560909, 2979634,
-11944304, -4320200, 16390669, -1137093, 462246, -10697690, -1570347, 7968775, -1560684, -16458315,
-6671695, 7667054, -4878009, 4061429, -6128919, 11424076, 6339909, -313533, -645856, -7313793,
--4645544, -8004746, 7536057, 7419019, 3287798, 855772, 3413425, -6451041, -16962436, -6204081,
-5993627, 2622078, -12568148, 329639, 1531156, 1737314, -6003291, 4348118, 9001715, 4635344,
-235686, 3637301, 6213744, -3468186, 9229348, 154082, -184684, -9081708, -11548630, 7468412,
--3474629, 3707631, 3839701, -627602, -2417530, -2541010, -1868848, 1183800, -2780991, 3763465,
-952409, -1049583, 1043140, -1348620, 238908, -4756677, 1280974, 355945, -731218, -2660732,
-986769, -2358474, -25770, 731218, -377957, -1557463, 81604, -1564442, 5850819, 4332549,
-1747515, -704375, -369904, -1697049, 158377, -696322, 3795141, -1278827, -358093, 3451543,
-956167, 1410897, 2702608, -1851668, -827318, 2559264, 1724429, -796716, -257698, -18791556,
-10087804, -2531346, 3687230, -5536213, -3088618, 7958038, -9207873, 8944269, -5586679, -10648298,
-4794257, -5721434, 22731652, 3419331, -8012262, -11034308, -2037962, -13692893, -6359773, -14751065,
--923955, 9916006, -7063611, 6128919, 9920838, -9217000, -26307, -10763725, 5996311, 2159832,
--457414, 6390375, -6793565, -9651328, -8239895, 588411, 1760400, 8158827, -11775727, 8363375,
-1565516, -17267916, -9583146, -13932874, -5801964, 5330055, -4776004, -4633196, -26640072, -528818,
--5906654, -2408403, -17115982, -5909338, -2328946, 1344325, 13821742, 12690018, 10640781, 6190659,
-13319230, -14397267, 11162083, 1585917, 5163088, 3802657, -10380399, 16044924, 9853192, 6342593,
--7121056, -9433359, -6886980, 9324374, 989990, 64425, 4956929, 2455111, 5215701, -4640712,
-13996225, 7420093, -1591822, -2273648, 3075734, 2865817, 1635309, -818728, -942745, 1332514,
--306016, -222801, -5918465, 368830, -3456912, 236223, 1770063, 671626, -440234, 54761,
-1068373, 1043140, -5639292, -1445257, 1876364, -1581085, -2259153, -105227, 653909, 943282,
-984621, -777389, -1243930, 993748, -2517388, -4086125, -1138166, -988379, -1443646, 797253,
--421444, 3712999, 1621350, -1440962, 1515587, -820876, 7124814, 13223131, 14324253, 5861020,
-10020696, 8119099, 4846334, -2623151, 1069984, -3912178, 330176, -1351841, -8662412, 11023034,
-17486422, 6968585, -4791036, 7836705, 7447474, -310311, 4622996, -8257612, -15911780, -10589779,
--7247221, 4594542, -1933272, -8320426, 6205154, -2867428, -7443715, -104690, 12879533, 6482180,
-9540196, 3330747, 7021198, 7793218, -1795833, 7135552, -2789581, -8192650, 3442416, -9485972,
-3526168, 3749507, -13933411, -9066676, 5702643, 14409615, -7487739, 10034654, 14026826, -11624866,
-471373, 12774843, 1376000, -4701916, -1086090, -6590628, -11482058, 111669, -3492345, -6048925,
-7873212, 364535, -13143674, 16796006, -6968585, 13614509, -16164109, -11077794, 7870528, -9968082,
-5465346, -6717866, -4895726, -9368934, -5738613, -7636989, -19086298, 3095598, 11610907, -5424544,
--903017, 8025147, 8573292, 6063957, -1249299, -755377, -4990752, -1609539, -2225867, -2649458,
-1988570, -592169, -1877438, 2720862, 2455648, -1270774, -326954, -3496104, 1414118, -3089692,
--5549635, -475131, 5013838, -52613, -2949569, -858993, 8333847, 4115116, 191663, -2638184,
--3159485, -2347200, 409096, 464930, -2674154, -1080721, -11811, 872415, 3245385, 678068,
-5182952, 3053185, 3676492, 1315334, 1577327, -921271, 420907, -12042015, 7776039, -5239860,
--12796855, 18496814, 9699647, -13150653, 9432822, 8324184, 2611877, 15580531, -31925028, 2246268,
-13374528, 4464082, 1372779, 13937169, 738198, 7598334, -18377092, -2576444, 5250598, 163746,
--9099962, 3552475, 7669201, 3541738, 3737695, 9824201, 8434242, 13079786, 10538776, -4132296,
--4025458, 10103911, -6058052, 7064685, -11323144, -6339372, -14542759, -6796786, 8342437, 2763812,
--3195456, 12048457, -14177687, -19510962, -31252866, 9687299, 11077794, 8435853, 6863358, -7504919,
-5213554, -4391604, 12095165, 31657130, -4734128, -6782290, -13601625, -4473209, 12097312, -8193724,
-7022272, 11612518, 2119566, -355409, -9012989, -2765422, 4580583, -22092774, -20109036, 1941862,
-2956548, -7908646, 11359115, 8417062, 16259672, 25884694, 10559714, -6147709, -2960306, 5374078,
-60666, -14452565, 7020661, 5899138, 5325760, 1578937, 6884296, -397821, 3903589, 2949569,
-2267743, -3394098, 474057, -474057, -243203, 5175436, 1784022, -233002, 2985002, -5849746,
-1836635, 862752, -510027, 5447629, 1322313, -1808718, -743029, -3641596, 10169409, 486942,
-1922535, 4000762, -1252520, -1670205, 5822365, -6262599, 5792837, -4633733, 4840428, -505196,
--172872, -1270774, 2104534, -1130650, 4998268, -4128001, -1389959, 1261647, -651224, -1555852,
--2774549, 3268470, 47640316, 26867168, 17199734, -4437775, -4800700, -636192, -4005057, -4940823,
--7332583, -8938901, -15220290, 632971, -1028108, 3688303, 6710887, 12645457, 19242528, -2605972,
--24914032, -9801115, 21481278, -3380676, 8083666, -2814814, -307090, 14236206, 4997195, 10801306,
-6431177, -486405, -590021, -239981, 7262253, 9170292, -3519189, -14101988, 18471580, 13159780,
-9431748, 3412889, 4832375, -7515119, -13881334, 19160922, 10769630, 4904853, -8851391, -9946607,
--13849122, -8600672, -2415382, -8736500, 4876936, -17826798, 2518462, 13090523, -8482024, 4592931,
-853625, 1886028, -20245938, 7157026, -8659728, 14775761, -32551020, 5557151, -8462696, -11050951,
-2760053, -6684043, 6768332, 6319508, -21184926, 192200, 14914274, 2182380, 4417374, 9303973,
-3874597, 15457587, 6383395, 3239479, 1100049, -2285996, 10043244, -19756850, -313533, -1189706,
--1748052, 738198, -505196, -188442, -1654099, -2939368, -3730716, 6097780, 5199595, -2735357,
--379031, -9479530, 988379, -627065, -9258339, -80531, -13762149, -10540387, 4719096, 1723356,
-7337415, -8250096, 3591667, 7118909, 1640141, -343597, 1916629, 3800509, 384400, -2095407,
-7638063, 19864, 2525978, -4482872, -3279745, 3118146, 4603131, 769336, -29209536, -15059766,
-2196339, -25735980, 5928666, 18619220, -8943733, 22640920, 26633630, 3349001, 13322989, 16370268,
-7389491, -15777025, 10304163, 12482786, -584116, 3128347, 8863739, 7773891, 18804978, 3167002,
--7205882, 11949136, 4329327, -1901597, 303869, 7997766, -10943040, -5001490, -4613869, 6665789,
-3506304, -15516643, 4600447, 12889197, 374199, 15542413, -14709726, -27882390, 2253784, 12452184,
-18918258, 17480516, 9071508, 8272644, 6688875, -18960670, -5509370, -834834, 14221174, 22397718,
--7729331, 4789426, -8233453, 5263483, 3595425, 13615583, 21182242, -8201777, -9245454, -1889249,
-11616813, 14842870, 20876226, 465467, -22510998, -21301964, -3445101, 2702608, 90731, -9792525,
-243739, -25675852, -16518981, -15193447, -17216914, 7299297, 2667175, 20598664, 16522739, 6172405,
--9850507, -9904195, -9156333, -8383240, -14300630, 6705518, 4505958, 2600066, 9650255, 10657961,
-79994, 9085466, 1895691, 9705015, -3375844, 8040179, -2568927, -785442, 2419677, -3026878,
-13553306, 6045167, 8053064, 3580929, 9654013, 2105071, 4636954, 13771276, 12002286, 6366752,
--758599, -5356361, -4532801, -9833864, -5480379, -6474663, -3821984, -5975374, -7167764, -4205847,
-4187056, 9159555, 2565169, -2215130, 344134, -1420024, 5761699, 6751689, 5651640, -654983,
-2542621, 12390444, -27371826, 2492155, -5495948, 15001247, -8060043, -1233729, 4600984, 11364483,
--15300821, -25682294, -4502200, -10058277, 679679, -11586211, 6786049, 6749541, 629750, -13856101,
-8610873, 871342, 23111756, -3695283, 12634183, -10700374, 23867670, 6898255, 14874545, 10024991,
-16231218, 23947664, -5893769, 9292162, -16813724, 17666812, 17116518, -399969, 5520644, 17299054,
--11138461, -10702522, -1830730, 34827888, 5596880, -9746355, 17229262, 2257005, 13196287, 19064286,
-5490042, -1299228, 1722819, 2965675, 12510703, -4415764, 13420162, -9330280, 13096429, -7307350,
-29655138, -4336843, 25487946, -23210004, -25553982, 35423816, -29761976, -15900506, 1104880, -9579925,
--18513456, 16170015, -2258079, -22859426, -10907069, -11754789, -33695628, -12486007, 4036733, 7520488,
--26026964, -6650757, 15610059, -3172907, 8914741, 15477988, -11202885, -2564632, 2403571, 10090489,
-7143605, 7603166, -2644626, -1503239, 6132140, -585726, -4310537, 3402151, 7084012, 1329292,
-4875862, -192737, -4812511, -57445, 6509023, 2471217, -3560528, -8433168, -5233418, 9780714,
--4687420, -13261785, 2971581, -7633768, -14564234, -41339, 5236102, 456340, -3913789, -1118839,
-3763465, -3068217, -2684, 5119064, -481036, -2462090, -3299072, 9269613, 17690434, 922344,
--6514392, -5284958, -3132642, -8503498, -2034204, -3595961, 3519189, -22922240, -15318538, 4492536,
--30008400, -17469242, -20848308, -21173116, 25856776, -594316, 901943, 7748121, -7520488, -32934346,
--24656334, -24111946, -49260052, 3626563, 5630166, 21368536, 12488691, 7456600, 10673531, 7452842,
-2356327, -15472083, -22803056, -13075491, 17830020, -2151779, -13303124, -5297306, 17478370, -20940114,
--13500156, -21507048, -10660646, -1730872, -20645908, 7837242, -17121888, 18760954, 13175349, -2761127,
-13005698, -12542378, -25947508, 11531987, 15329812, -13309030, -29779692, 22689238, -1803886, 16480863,
-13856101, -42621644, -30243012, 455803, -6779069, 28031104, -15810311, -18293340, -4786204, 10458782,
-1755031, -2387465, -9513353, 37184216, -17951890, -29926796, -40531068, 29415158, -6766184, -33333242,
-15848429, 16124918, 9663676, 33935072, 36308044, 37260988, 16095927, -8177081, -3149822, -5510980,
-12560095, -23468776, 15511811, 3152506, 3260417, 11807402, 11468100, -9529996, 14614163, -10975252,
-5089000, -15687905, -8775692, -5927592, -7943005, -3020973, -8571144, -1937030, 6472516, 17023102,
-19832012, 1103270, 15647103, -8844411, 2594697, 9328669, 1604707, -16646756, 2482491, 4466229,
--4283693, -12276627, -7637526, -7423314, 20648056, 12918188, 6994891, 9859097, 17519172, -2341831,
--19836306, -12412455, -11183021, -14226542, -18364206, 3695819, -15301895, -27330488, -6254010, -5621039,
-4532264, -27398134, -10439455, 12259984, 20846160, 41420128, 7179575, 21497386, 10918881, 10194105,
--9203041, -3411278, -7800198, -23272818, -26600344, -38160784, -13441637, -34416108, -13071196, -18191870,
--6344741, 17930952, 4809827, 12082817, 21829708, -340913, 14845554, 3856881, 1044751, -868657,
--2541010, -29105382, 10756209, -3964792, -32166620, -20478404, 9774272, -21211232, -7703561, 7201587,
-23853174, 28212030, 10233833, -6330782, 4218195, 18756122, 10524280, 3648038, -289373, -57013544,
--11146514, 12136504, 14642617, 5342403, -1898376, -19487340, 13506062, -17429514, -12576738, -3750580,
-3736085, -9872519, -29987462, 15763067, -3619584, 37219648, 14559939, 12451110, 14705431, 27250494,
-62286152, 537945, 1298154, -3019362, -18240726, 10611254, -12586939, 44697724, -3786014, -16603270,
--14334453, 18644990, -24252070, -16950626, -3004867, 38165080, 1504849, 17984638, 28719372, 5327907,
-23286776, 17065516, -2988760, 15609522, 17591650, 141734, -11690901, -13246216, 3774740, 3965329,
-14777372, 8928700, -446677, -2631204, 2768107, 5487895, -10652056, -2712809, -2488934, -1875290,
--16815334, 10239739, -12165495, 3852586, -2349347, -7828115, 2196876, 20214264, 18220326, -426276,
--1085553, -13619341, -5252208, -13542032, -1835562, -15685757, -21585968, 5892695, 15132780, 561030,
-946503, 31472446, -4080219, 5537824, -34466576, -11952894, 40824200, -27289686, -7191923, -23662586,
--69057168, -10056129, 21425982, 17309792, 3543885, 4817880, -3568581, 38585988, -41646152, -258235,
--11871290, -28178744, -23507966, -3747896, 8105140, 6742562, 9516574, 24826522, 16412144, -17971754,
--17894444, 49604188, 40869836, -3508452, 4918275, -5703717, 13421236, -435402, 29207388, 10339597,
-15592342, 4106526, 2392834, -51775832, 21502754, -2464238, -29548302, -15364172, 3077344, -8250096,
--29410862, 28192702, -4889821, -21287468, -4271882, 2850248, 25336012, 27980102, 21592412, 8029978,
-25263534, 26610544, -20061792, -22312356, -13987098, -3862249, 26166014, 34578244, 6083285, 12300249,
-33509872, 19811610, -31208306, 22886270, 8527658, -7153268, 1341640, 63988032, -42436424, 32481764,
-37592776, -38001332, -2111513, -24793236, -7820599, -54481660, 15692200, 23710904, -32556388, 19426138,
--28161564, -20681878, 24780888, -15662672, -2201708, -9532680, 1271310, -13859859, 4248260, 5967857,
--10223633, -14838038, -1082332, -16094853, 20747376, 3412889, -19389092, 3940096, -3225521, -10875394,
--10168335, 6362994, 13223131, 16232829, 6812355, -15231565, 38132332, -7387344, 3803194, -2813204,
--20175608, 7357279, 10996727, -10588705, 16242493, 3789772, 12120398, -3202435, -19552838, 6213207,
-29246580, -18847390, -27409944, -44365400, 8761196, -8487929, -14178761, -17938468, 9793599, -10883447,
--5180805, 29199336, -9170292, -1628330, -22961432, 1880122, 14544907, -32065688, -20323786, -19179714,
--9517648, 11681237, -43335684, -24050206, -62508956, 10874857, -714575, -15844671, -7042673, -9204115,
-13256417, 20061792, -22261352, 850940, -7829189, -7490423, -39089572, 8596914, 29849486, 7937637,
-22559316, 28452548, 25382720, -34176128, -10552198, -10306848, -16108275, 28792388, -29496762, -16930224,
-937914, 41802380, 9345312, -14642617, 42004780, -23645406, -22328462, 50244140, 47998408, 4668630,
-12161200, -13638132, -45650672, -13987635, 45816564, -22214644, 41518912, -14969035, -65569120, -17223892,
--30703648, 34971236, 244813, 7879118, 31230318, -4940286, 25740276, -33620468, -39762808, 30604864,
--8021925, -66823248, 41259604, -21223044, 11220065, 13641890, -23446226, 44467944, -30351998, 16190953,
--508417, 11915850, 44913008, -11316165, -14239964, 1865090, -9393630, -12077985, -10188736, 5259188,
-10079751, 2660195, -6473590, 5862631, -21432960, 19489488, 13474386, 11075110, 4270808, 366683,
--10030359, -10641318, -10433012, 9343164, 17544942, -16927540, 15214922, 35762044, 11903502, -30087856,
-2934000, 11403675, -11293617, -19754702, 18884434, -16676284, -389231, -1162862, -18163954, -23050552,
--243203, 13660680, -7761006, 30894774, -10246181, -19816980, 14103062, 11967926, 23112292, 1726577,
--41636488, 24561844, 28305446, -34397320, 18802830, -181999, -12460237, -14710263, -49646600, -21885006,
-17423608, 3156264, 45530948, -36558224, -20701206, 8586176, -5047661, 29232622, -40605696, 80531,
-4154307, -34264176, 34295312, 18854906, 10462003, -16037945, 23487028, -27753542, 15366856, 12010339,
-7229504, -1913408, -15530065, 6512781, 31207232, -16335908, -5966784, 6180458, -24422794, 25005300,
-991064, 6615860, -33461554, 18149994, 4457103, 6229313, -78541528, 10870025, -22298934, 36817532,
-30452392, 32373852, 16550120, -63805496, -11159936, 13799193, 1430224, 4348118, 45081052, -6604049,
--27020176, -32392106, 1396401, -36037460, -31635118, -27986544, 13626857, -52617108, 37579892, 71818832,
--18693846, -8470749, -55852828, -12068321, 21565030, 13375065, -18486076, -3674882, -67579160, -23629836,
-68140728, 29120416, -20946018, 20077362, -38248296, -28191092, 7669738, 1715839, 4777614, -25815974,
--8843338, -5231807, 176094, -37504728, 8331700, -4600447, -11614128, 5280126, 15820512, -20344186,
--10087268, -2954401, 7675644, -15549929, -3975529, -2430952, -14707042, 528281, -27450210, 36527088,
-11970611, -9165460, -3368328, -10313827, -1195612, 23582592, 7271380, -3935801, 12468827, -7170448,
--34172372, 1965484, 1930588, 7673496, 15671799, -8644159, -6120866, 15454366, 18568218, 8178692,
--16225850, -51269024, 13932874, -22482544, -15300284, 15573551, -12560095, -18030810, 14267344, -23707146,
--1460826, -27023934, 39017632, 684510, -28536300, -8425652, 644245, -2869575, 9061844, -19058380,
--13218299, 4278325, 7841537, 4578972, 3801046, 14810121, -17191144, -6587406, -39505648, 14650670,
-3647501, -12054363, 28458990, 15598784, -11754789, 43650288, 9596031, -27425514, 20622822, 3593277,
-13379897, 28829432, -2798708, -7044283, 4373888, 23770496, 13276281, 563178, -2578591, 25432112,
--2420751, -29466696, -5280663, 5488432, 23118198, -10285910, 39927088, 44373456, -28347322, 23198728,
-49606872, -13389024, 75428216, 42773580, -19173808, -17149268, -28744068, -32179506, -18481244, 10164040,
--5895917, -5645735, -1256815, -4824322, -53134116, -20391968, -52467320, 12322261, 46523624, -17413408,
--3112241, -25356950, 12398497, 3265249, 8737037, 13161390, 38980048, -1834488, 17553532, 18352932,
--29777008, 1365263, -353798, 6544994, 12612171, -1564442, -7271917, 12371653, -2110440, -6678138,
-1254131, -12104828, -3237332, 9106941, 1380832, -5131949, -28533078, 1564442, -13321378, -945430,
--11281268, 23716272, -8244727, 11630771, 13871134, -11126113, 16802448, 11114302, -170188, -5961952,
--11134166, 2790655, -1584306, -6040872, -1454383, 11865384, -9432285, 5233955, -3658775, 8594230,
-66728224, 17685602, -23957864, 2723546, -31445066, -4060355, 10974178, -12981539, -16725676, -18547280,
--7087233, 7221988, -4138738, -5913633, 8457327, 4961761, 11476153, -11799886, -7473780, 8632884,
--3095598, 1604170, -17368848, 11851962, -20327006, 9831180, 6699612, -4295504, -916439, 830002,
--11796128, 2066416, 2402497, -9311489, 16989280, -9047349, 4115653, 188442, 596464, 8683887,
--8374113, -12932147, -3905199, 19734300, -14555644, 9721122, -26697516, -15782394, 5089000, -5669894,
--403190, -1656784, -16057272, 17170206, 13654775, 1355599, -11744051, -467615, -7125888, 3628711,
--8898098, -163746, -8535711, 6548215, -2323041, 1799591, 21659520, -18155364, -1506997, 3374234,
-1380295, -3834869, 579821, -8540006, 565862, -7134478, 4523138, 8667244, -13011603, -10731513,
-6354941, 954557, -3012920, -10215580, 4567698, 1530082, -340913, -2211371, 199179, -2232846,
-7327751, -4657355, -1218697, 3506304, -2299955, -238908, 5909875, -3717831, -2411087, -1330903,
-1369558, 6129992, -1893007, -6564321, 555661, -4168266, 15710990, -6117644, 2075006, 3722663,
--3783329, 12579422, -1607392, -10585484, 4040491, -5967857, 7840463, 3944928, -1509681, -471910,
--2654827, -2743410, 7767985, -4806606, -2065342, -616865, -6382322, 8702141, -32014150, -47329464,
-32984276, 151562960, 66400732, 69463576, -443992, -140291888, -101536248, -52824876, -110555680, 53674208,
-65971772, 34287260, 142995568, 64288680, -6190122, 47411072, -92502320, -117978456, -67315024, -82653960,
--17791366, 63887100, 65465504, 27396522, 109962976, 54550916, -7610145, 52865140, -48622252, -83513488,
--47840032, -62832688, -98535136, 36286032, -793495, -35416300, 106236016, 63903208, 36060008, 108657304,
-26369488, -55233816, 53630184, -78741248, -89627912, -18407156, -94270240, -95809984, 38001872, -15889232,
-23294828, 120698784, 82862808, 86045376, 81384800, 9805410, -45368276, -52679384, -87928184, -115650584,
--60450056, -32998770, -23736674, 44084080, 69021736, 64581276, 91729768, 82614768, -12550968, -14678588,
--14654965, -84959824, -25242596, -41880228, -62860604, 14037027, 26101054, 4112431, 59032176, 26160646,
-782221, 36742372, -28080496, -31283468, 1120987, -20360292, -6120866, 15292231, -2895882, 16987132,
-23080080, -12629351, 18223546, 7231651, -27258546, 2546379, -12837120, -52391620, -428960, -13360570,
--22001506, 50452980, 15469398, 18919330, 66676684, 26255136, 19824496, 14560476, -32525788, -48153564,
--44212932, -74928928, -60845728, -27301496, 2984466, 33668248, 77463496, 81564112, 75357888, 66368520,
-41458784, -16333761, -46511812, -93714040, -118250648, -91647088, -54499912, -19357954, 50539416, 92627416,
-106973136, 109150152, 53195856, -12895102, -35276712, -44001404, -56310244, -40934260, -41545756, -33894808,
--4146254, 10802916, 17840758, 29476360, 32159104, 29174640, 27214524, 15092515, 5302674, -2956011,
--12589623, -20225000, -17219060, -10948409, -3455301, -1072668, 845035, -561567, },
-},
-{
-{
-4808753,
-2767033, -4361540, -995359, -1613297, -139586, 6528887, 375273, -2796024, 3442416, 699543,
-352187, 1146756, 723702, 55835, 4913443, 2767033, -3324305, -1284195, -381178, -1170916,
-1378685, 2094333, 1409286, -1427003, -2123325, 813896, -4277788, -1948841, 3213709, 279173,
-2587718, 1320703, -2086817, 1577864, 28454, -1846299, 4512400, -3022583, -1418950, 572304,
-1552631, -2068027, -542240, -2968359, -5867462, 5485210, -1100585, -3064459, 323733, 5042292,
-5369, 1948305, -2508261, -1471563, -1034550, 1546188, -1983738, 4031364, 637803, 3636764,
--5286568, 2231773, -1373853, 878858, 2245731, -916976, -588947, -3911642, 27380, 2106682,
-479426, -1094143, -184147, 1874216, -994822, -1046898, 2962991, -1357747, 940598, -569620,
--177704, -3652870, -1498407, -1001264, 1330903, -280247, -1625645, -287763, -331249, -1032940,
-970126, -1234803, 80531, 266288, 623844, 980326, -433255, -892816, 928250, 177167,
--668941, 111132, 1581622, -223875, -153008, 621697, 54761, 199716, 256624, -496606,
--856846, -504122, 676994, -174483, 76236, 317828, -459025, 425202, 10737, -295279,
-13784161, 4725538, -1090922, 3732327, 190589, 6801081, 4273493, -954020, 3496640, 6106907,
-7987566, -4714801, -4614406, 1962800, -1861868, -1542967, 5711770, 4616553, 4396973, 3139084,
-591095, -179852, -1994476, 2179696, 1522029, 7276749, 736050, -157303, -3218541, 1515050,
-2130841, -414464, -992137, -1138166, 1973001, -288300, -1173600, -2664490, 2825552, -948114,
--956704, 4018479, 5700496, -1469953, -699543, 3296924, 2949569, 5223217, 3235184, 1435593,
-536871, 4447439, 2515777, -6131066, 5369, 1882269, -3533684, 92342, 576599, -4373888,
-2226404, -2123861, 3278671, -707059, -567473, 1764695, 566399, -3017215, -270583, 1675574,
--594316, -746787, -877247, 325344, 3488587, 615791, -3515968, -835908, 824634, -1048509,
--448824, 5163088, -1047972, 627602, -607201, -1321239, 1165547, 1920387, -499827, 872415,
-938450, -957241, 454193, 858993, 198642, -637266, -1815697, -564251, -1093606, -508417,
--134218, 574989, -339302, 692027, 377420, -158377, 4769025, -371515, -9002251, -4190814,
--1746441, -1948305, -4900021, -4501126, -2826089, 4879083, -5360656, -2503429, -2545305, 981400,
-8140037, -1221918, -645319, 1990717, 4659503, -7123204, -1160715, 1453846, -3143379, 2515240,
-3984119, -4392141, -269509, 566399, -2552284, -6465000, 1126892, -2721936, 878858, -2506114,
-3702799, -4463545, -4164508, -10260677, -2763275, 3528853, -569620, -3936875, -1937030, -494995,
--4123706, 208306, -692027, 2835752, 2246268, -1062468, 132607, -1049583, -4352950, 5320928,
-931471, 3596498, -1315871, 13422, 940598, 1556389, 4126390, -1320166, -990527, 1219234,
--111132, 4499515, 2410014, -3889630, -1538135, -970126, -6153078, -692027, -576063, 3664144,
--2354179, 3339337, 580357, -116501, -336081, -587874, -658204, 712428, -2478196, 1154809,
--1425929, 1255204, 1078037, 483184, 315143, 3586835, 2639794, -658741, 3273302, -443455,
--1091459, -1037235, 647466, -233539, 2243584, -578210, 1404454, 1133335, -189515, 950262,
-8590, 995359, 993748, 288300, 347892, 1077500, 728534, -1473711, -801011, -155156,
-1825361, 2021319, 16643, -214748, 1108638, -19805168, -6204081, -1748589, -1602560, -1653562,
-7642895, -7051800, 3391951, -1642825, 1549410, -2011655, -1642825, -5675800, 926102, -2065879,
-423054, -8240432, 158377, -836445, -1484985, -125628, 1541356, 1258962, -790274, -554588,
--3316252, 1031329, -2664490, 1758252, -13422, 1503775, 5140002, -1335198, -5912560, -2510409,
--6921877, 971200, 1234266, -610959, 1184874, -2397666, 2303176, 1207423, -3073049, 282394,
--8319352, -1752347, -5568425, 3060164, 5481452, -4819490, -391916, 1597191, 830539, -7902740,
-1309965, 4097399, -3817689, -1787243, -9055939, 3094524, -1320703, 3764539, 6686727, 3846680,
--5397700, 1169842, 1260573, 325881, -6000070, 1577864, -2565169, 4019016, -1624035, -158914,
-1858647, 1661079, 4699768, 5397164, 3654480, -233539, 1344325, 3233037, 1603633, -3117073,
--661962, -2064269, -2128156, 1009317, -101469, 562641, 42413, -579821, -186831, 1979980,
--643708, -581968, 47245, -493921, -1427003, 1804960, 60130, 885837, 2114735, -205085,
-229781, -1608465, 1070521, 803159, 165893, -1614371, 549756, 89657, -12217571, 1311576,
-2234457, -4431333, -502511, 11948062, 9351754, 5016522, -1297617, -2211371, 6005438, 3704946,
-1952063, 2224256, -4767951, 1611687, 507343, 5602248, -5337571, -2492692, -985158, 676457,
--1059246, -6240051, -4167192, -4400731, -5121212, 2827162, 3503620, 2194728, 1576790, 81604,
-1541893, -810675, -629213, 363998, -1837172, -566399, 2760053, 2092723, -4179003, -4734128,
--399432, -4748087, 2865280, -1459752, -7943005, 938450, 4096862, 5725729, 4016868, 199179,
-3797288, -5718749, -1793149, -2566780, -362925, 379031, 2589865, -1983738, -5181341, 6331319,
--5730560, -2782065, 3962107, 9164386, 2203855, 1797444, -8935143, 9681930, 1191317, 6743099,
-10442676, -2315524, 1140851, 1196685, -4233227, 8608188, 2047626, -2843805, 2407866, -1222455,
-4283693, -7109245, -3754338, -7264401, -1381369, -3230352, 2932389, -1853815, 1262184, -3413425,
--845572, -679142, -2157147, -162672, -796180, 875636, -134755, -964757, -479963, -444529,
-1737851, 447213, -1284195, -2966749, 1672353, 1621887, 322123, -18254, -27917, -1240709,
-542240, -835371, 1810329, 318364, 1027571, -1043677, -1168231, -2359548, 18537078, 13058848,
--4655745, -6803765, 10293963, 6711960, 10834592, 15912317, -8016557, 5521718, 2668785, 4628364,
-2090039, 2785823, 6597607, 1649268, 6737193, 234076, -4274566, 1817308, -1365800, 2278480,
--779000, 12356621, 2105071, 2732136, 1693291, 499290, 4340065, 1846299, 272730, -784368,
-3111704, -2378338, 5925981, -4597226, 7130720, -3352759, 4320200, 2257542, 2647847, 2092723,
-10459319, 7986492, 519691, -2243047, -5641977, 6190659, -6881612, 1736241, -3000035, 3047279,
-6553583, 789737, -10923712, -8877161, 934155, -5522791, -5974837, -3454764, -6892349, 2465311,
-11989938, 6009196, -4395899, 277025, 1395328, -3139084, -3517578, -585189, 5892695, 6538014,
--6928319, 3285650, 7686381, 1525250, 2534568, 3701725, 5989869, -1035624, -4078072, 1585380,
--1752884, -355409, -3913789, 3615826, 5660230, 857920, 1016297, 774168, -3963718, -584116,
--65498, -452045, 402116, -635655, 652835, 474057, 1938104, 190589, -35970, 165356,
-1243930, 2123861, 1112933, 2248952, 1234803, 398358, 662499, -501437, -3697967, -3850438,
-773631, 2797634, 717260, -863825, 681826, -518617, 1774358, -1446867, -1316408, -2425583,
-1039382, 8117488, 1600949, 11772505, -994822, -185757, -3876745, -3211025, 4012036, 8899172,
--2560874, 2327872, 690416, 9646497, 4060355, -4553202, -4112968, 593779, 2086817, 8763881,
-8688719, 13102871, 2447058, 3619047, -2246268, 5320928, 6153615, -2401424, -2952790, 4686883,
--3558381, -5068599, 4797479, 1393180, -5759551, -7181722, 10941966, 5418638, -290984, 6903086,
-1432372, -4898947, 10400263, -2448131, 397821, -279710, 2763812, -3787088, 2765422, -3791919,
-2695629, -3523484, 3251290, -2885144, 4393752, -3630858, -3569655, 9589588, -11940546, 655519,
-1527398, -4155381, 906238, -13545790, -6545530, 6447283, -5289252, 3955665, -1332514, 2664490,
-1284732, 2283849, 1534914, -6146635, 3411815, -3577171, -295279, -7802345, -4106526, -1960116,
--1744831, 2212445, 7464117, 4245039, -5794985, 2279017, 1280974, 48318, -2717641, 401579,
--410169, 1440962, 816581, -1502702, -1869385, -783832, -416612, -1138166, 4391604, 792421,
--1479616, -908386, 1167157, -1736241, 337155, 863288, 214212, 244276, -4325569, -1803886,
--954020, 693637, -1080184, -162672, 3011846, -9571335, -8298414, -1074, 3562139, 6760816,
--7859254, 2289218, -7064148, 5851356, 4433480, -9641128, -2027761, 1077500, -11369315, -6416681,
-6889128, -855235, -511101, 1676111, -733903, -11840688, 10846940, 742493, -7713762, -3702262,
-1428077, -951872, -7413651, -2171106, -4267050, 1276142, -386010, -2309619, 2357400, -10253161,
--4592931, 2712809, 13458280, -2201708, -7929584, -5546951, -4421132, 9223979, -9780714, -1899449,
--689342, -10384694, -13019656, 3257196, -9026948, -1376537, 1338956, 6917582, 3828963, 621697,
-1480690, 8250096, -3541738, -2495913, 12138114, -8047695, 6322192, -2719788, -3035468, -1171452,
--1465658, 13023415, 303332, 5105106, -13334263, -9609452, 328028, -1865090, 14908368, 551903,
-10168335, 4350802, 12715788, 7781407, -1917166, -8773008, -3315178, 6019397, 2603287, 4089346,
--4897337, -5459977, -1519345, -1788854, 2646237, -1291711, -3562139, -573378, -855772, 39728,
--425202, 555125, -1444183, -1903207, 2442763, -103079, 171262, -606127, -1058173, -769873,
-679142, 2138894, -2150168, 561030, -1310502, -1901060, 1420024, -516470, -1814624, -2079301,
--393526, 2088965, 236223, 328028, 790811, 3714610, -3055332, -2498060, -1539746, 361851,
-1504849, -15947214, 1510218, -1562831, 10891500, 1270774, -11601244, 13816373, 4418985, -8105140,
--17808546, -7403987, 17537962, 876710, -2259690, -2936684, 1780264, 583579, 5389110, 2873870,
-5776194, -1256278, 10339060, -5348845, -12247636, 521839, 539555, -2905546, -470299, 4583804,
--3163244, -1864553, -1089311, 9775882, 7562901, 3932043, -743029, -13301514, -277025, -689342,
--573915, -2206003, -233002, -5816997, -10869488, -1694365, 7449621, 7269232, -2747169, 7809861,
--2531346, 3378529, 8564165, 8212515, -18125836, 6222334, 6525129, 2720862, -4425964, -15874736,
-9628243, 5701032, 3072512, -5654325, -3175055, -6403796, 3554622, -7104950, -1326608, 142808,
-6480032, -4006131, 3298535, 1812476, -11618423, -1581085, -7765838, 12750147, 5905043, -14935212,
--3171297, 11876658, 5908802, -6135361, -3073586, -6778532, -2295123, 3570192, -2073932, -789200,
--2593087, -3235184, -5682242, 1138166, 454730, -1789391, -572304, 2955474, 1973538, -3550327,
--1264331, 2682744, -689342, 2063732, -2357400, -1598265, -450972, 581431, 3063386, -3190624,
--2288681, 1686848, -3663607, -235686, -2578591, 1629403, -2042794, 3586835, -1227824, -573378,
--1796370, 2310156, 1539746, 4082367, 1271310, 9846213, 12270185, 12350715, 9648644, 12106976,
--15260019, -10167798, -5196374, -5106179, -7253663, -5760088, -12229383, -4305168, 933619, 7230041,
-93416, -7184407, -231391, 7221988, 456877, -6220187, -2762201, 16586627, 1717987, 6153078,
-2021319, 6775848, 1499481, 2107755, -10193031, 5599564, 472446, 2236604, -10691784, 3587908,
--16468515, -151398, -5154498, 3956739, -1436667, -12241731, -216359, -12186970, 2280091, -10154376,
-9204115, -5337571, 14426258, 290984, -196495, 7075422, 1621350, -2435783, -2047626, 2765422,
--4844186, 3226057, 8919573, 4365835, -6531572, -3616899, 19042812, 1286343, 15199352, -14207752,
--2898566, -1657857, 11068668, -12421582, 1780801, 5696737, -12137041, 8338142, -7607461, 2054605,
-11889006, 1104344, 6714645, 2981244, 15517717, 6522982, -6385006, -5236639, -6152541, 753767,
-621697, 6325950, -3843996, -922881, 4274030, 111669, 3299609, 4269198, 638876, -3780645,
-4302484, 3091840, -404264, 1135482, 1449015, -1781338, -1278827, -5284958, 3398930, -2639794,
--2280628, -1205812, -2647311, 2277943, -1808718, -826244, -2843268, -914828, -656056, 3356517,
-2532957, -345208, -601832, -443992, 1999844, 2218351, 2119566, 4357781, -569083, -4679904,
--15323370, 2284386, 15000710, 11165841, 12264279, -4098473, -3110093, 3028489, -2088965, 15106474,
-5102421, 7178501, 12792560, -958851, 4811437, -8701067, 12741020, 6313065, -3162170, -7830799,
--7211787, 8486319, -14709726, 5717675, 8524973, -6206228, -8197482, -4749160, 7952669, 2910914,
--2954938, -5457293, 141197, -9148280, -13630616, 2424509, -13082470, -19616726, -2425046, 683974,
-19841138, -8621610, -6721624, 8740258, 14624901, 14523969, 7810935, -978179, 3417183, -6393059,
-1155883, -6700149, 16342887, 14292577, 9358734, -770947, -16658031, -215822, -14224932, 15602542,
-12235288, 7465190, -11807402, 9630927, 5576478, 6622840, -2193655, -10166724, -7272990, -8166344,
-2739652, -11424613, -20628728, 3891777, 14011794, 7235946, 13755707, -4365835, -3776350, 13701483,
-4634270, 1684164, 9235790, 2856690, 271657, 7748658, 5004711, -947040, 3631932, 3235721,
-2087891, -2852395, -4562329, -6249715, 1607392, 3654480, 2248952, 7786776, 197032, 5476620,
--1816771, 2098629, 4514011, 371515, -2092723, -1495186, -6678674, -5978595, 1988570, 1182190,
-2632278, 6693170, 1005559, 5017596, -2029372, -1444183, 886374, -5393942, -4050154, -1775969,
--4345970, 1746978, -1465658, 1352915, 3847754, 5149129, 7653095, 12665859, 26687316, 12115566,
-9191230, 8915815, -16829292, -2442763, -6279242, 21429202, -21798570, -20322174, 5674726, 14042932,
--590558, 17136382, 15193984, -574989, 5720897, -10024454, -7554311, 16294569, -6571837, 11244224,
-3713536, -7024419, -3962644, -3029026, -3770981, -7337952, 6052683, 6845104, 5380521, 672162,
--8598525, -10627360, 13728863, -13574244, 10580652, 1140314, -17131550, 8665097, 15897821, -186831,
--4599910, -1906429, 1086627, 1065152, 10773925, -442919, -8491150, -3314641, 9132711, -16919486,
-3890704, -2728378, 13638132, 14756434, 9538049, 11577084, 14845554, 10959146, 3710315, -9674414,
--11275363, 5461051, 7123204, -409096, 6138582, 8807904, 22741852, -12847858, 14304389, -8501888,
--5741298, 15921444, 2174864, -9326521, -8462696, -8597451, -14408542, -4729296, -7164543, 11453604,
-42413, -8959302, 4731980, 3258270, -2171643, 5430450, -11046119, 7167227, 224949, -906775,
--1399086, 6103686, 799401, 1682554, 6023692, -2503966, 784368, 4674535, -7160784, 4978404,
-40802, 1914482, -3335579, 3985730, -1624571, 549756, 5099737, 110059, -1532767, 1451699,
-3358665, 4631049, 7341173, 6266894, 2008434, -3432216, -3170760, -10712185, 2134599, -8911520,
--2913062, -3841312, -3954591, 4327717, -17890686, -3190624, 10407243, -12841415, 405874, -8077760,
--14133127, 20557324, 17569100, 14694694, 6962142, 3833258, 5779952, 15093589, 8333847, 15474230,
--5730560, 12961674, -9764071, 15697032, 21075942, 13220983, 10534481, 5369783, 10881300, 10968273,
--3259343, 21821118, 5237176, -13153874, 6241125, -13317620, -9163313, -2726231, -20720532, 359704,
--4418448, -5614596, -10073846, -5235029, -2894271, -643171, -2044404, 903017, 865973, -11889006,
--7854959, 2467996, -6280853, 4942971, 20405926, -10284836, -830539, -1935957, 754304, -9751186,
-5257040, -4682588, 15796353, 3365107, 9435506, 14775224, 2522757, -977642, -9742060, -21686900,
-2864743, 16149077, 11720966, -3052111, -14454176, 12182675, 1284732, 7340099, -18504866, -13283797,
--12184822, -18350248, -11360725, -13424994, 6256694, 1988033, 4700842, 6127845, 8475581, -4141959,
-8627516, 9808632, 312996, 5273683, -3143916, -6511171, -6699075, -7049652, -2816962, -5140539,
--308164, 1548873, -673236, 463320, 1314260, -5967320, -5508296, -9447854, -3228205, -2195265,
--5245229, 2070711, 792958, -2797098, -8533026, -3938485, -3142306, -2214056, 7138236, 2167348,
--3100967, -3952981, -1424319, -10266582, 2810519, -2104534, 5310727, 587874, -3214783, -6065031,
-6321118, 8983998, -30671436, -19676856, -9319005, 21912386, 16006269, -11907260, 13722957, 12337294,
-10573136, 10302553, -10260140, 1035624, 5991480, -10253698, -30890478, -5658083, -8540542, -18973018,
-1759326, -6477348, -4806606, 5793911, 3498251, -4223027, 961536, 14496051, 15558519, -28512678,
-6834367, 1454383, 13247827, 4494684, 777926, -17751636, 5480915, -4546223, -4871030, -12203076,
--9019968, 22856206, -10307385, -398358, 2787434, -6024766, 25333864, 12014634, -11182484, -6786049,
--19704236, -2831994, 18968724, 5571110, 5789079, -6179921, 11618960, -2691871, -4907000, 10661183,
--6218039, 17658758, -4061429, 13166759, -26681410, -9025874, 15420006, 3811784, -2374580, 4358318,
--29521458, -13955422, 4593468, -11765526, 4619774, 1257352, 3386582, 18220862, -6697465, 7390565,
--1335735, -14695231, -2459943, 11244224, 16287053, -447750, -6673306, -12438762, 455267, -17393006,
--5572720, 1592896, 20669530, 18424336, 2622615, 7792145, 2429341, -2983392, 10311143, 7785165,
--3910568, 8538932, 6514392, 3480534, -6939057, -396211, -3526168, 6264210, 4456029, 5586142,
--302258, -8272644, 8050916, 466541, -3735548, -8048232, -220117, -548682, -7522635, 5513665,
--5413270, -8783745, 10242960, -3901978, -3200288, -4377646, 2452426, 1555315, 8275865, 1898376,
--1142998, 3468186, 5227512, -8885750, 2738579, 5987722, -13793287, -38021196, -3682935, -4229469,
--4591320, 6287296, -15767899, 30518964, -5935645, 1722819, 32788318, -38732016, -4512400, -7282117,
--4176856, -44426604, 2047089, -6577743, -9115531, 15538118, -15839303, 2700998, 2473364, 7578470,
--1875827, -15993921, 10697690, -10397042, 22804128, -3689914, -26868778, -1634235, -1371168, -13013214,
--27074936, 12242267, 13049721, -21968758, 17687750, -19844360, -16156056, -9351218, 1256278, 1896765,
-2494839, 13129715, -2947421, -11992086, -29504814, 6174016, -39710192, -20575578, -13995688, -31163746,
--19127636, -8812736, -2456185, -14508936, 21921514, 23331336, 4598300, -6734509, 24968256, 11725261,
--3453691, -5535676, 17819282, 13756780, -6816113, 24496882, -20942260, -10248866, 26002806, 12693776,
-36693516, -20147154, -23460186, 6123550, -17979806, 18949396, 1446867, 6720013, 34835404, -19327352,
--21496312, -7511898, 6778532, 8271570, 8334921, 9255655, 9670656, -10705206, 3723200, 1863479,
--1370632, -1066226, -7904351, -5628555, 9724343, -10985453, -1174137, 2455648, -6022618, 1588064,
--6168110, -209917, -1231045, 2511482, -9592273, 4755066, 10529649, 3490735, 2036351, 12527883,
-8411693, -689879, -12588549, 11090679, 2083596, -3959423, -9580998, 11497627, 981937, 512175,
-6174016, 8938901, -12052215, 6021544, 2923799, -7960185, -4131222, -12829604, 8270497, -1736241,
--14047764, -7316477, 3735548, 29721174, 17149804, -2957085, 40585832, -4849555, 16740172, -19288162,
-23742042, 22069690, -1899986, -18049064, 2010582, 6272263, -9853192, 10376104, -14435922, -419833,
--4351876, -4961224, -16421271, -12280922, -7405598, -1191317, -5236102, -13175886, 19427748, 13071733,
-3704409, -5570573, 3414499, 18415210, 8875550, 13489955, 8719320, -10334228, -15610596, 31616864,
--4038880, -17531520, -7118909, -7618735, -4028679, 22844932, 1114007, -17877802, -6645388, -44214540,
--10725607, -5310727, 27277874, 18606872, -53429392, -23207318, -12899934, -407485, 2818572, -21514564,
-15874736, 8290361, 13833553, 26735634, -35001836, 34250752, 24816858, -11289858, -23461258, 1385664,
--5752035, 9037148, 31429496, -16324634, -18009334, 25411174, -29921426, -33743412, -13414793, 3344706,
--9504763, -36961416, -14779519, -12011413, 694174, 1933809, -10427107, -826244, 1712081, 365072,
-3262565, -23379118, -8069170, -7791071, 1617592, 6446209, -1613834, -7514582, -4224101, 2419677,
-12006044, 12656195, -1657321, -11087458, -2761127, 16125992, 1069447, -4250407, 3479997, -21978958,
--6354404, -10383083, 1555315, 3767223, -21180632, -21712670, 5509906, 18851686, -8004746, 12337830,
-3910568, -6082748, -1674500, 5013838, 3884261, -1777043, 3858491, 27977416, 3863323, 10465225,
--21819508, -34675956, 50068044, 24947318, 2355253, 3195993, -11161546, -29512330, 10408853, -2374043,
-25318832, 5559835, 9448928, 27584964, 15385110, -397284, -2869575, 4591320, -16787954, -13960791,
--17855252, -10097468, 16684874, -4634807, 1128503, 20676510, -3489661, 9020505, -28765544, -26004416,
--17505750, 14891188, 6171868, -1051730, 6938520, -9265318, -25861072, 32651416, -31030602, 14238353,
-14863808, 11549167, 5272073, 19728932, -12716861, -31918586, 23596014, 66597228, -11687143, 32161252,
--38742216, -21049098, 24061480, 13933948, -35964984, -10266046, -2972654, 31170726, -7713762, -3510062,
--48928804, -31615254, -11190000, -36106716, 30146912, 31929860, 50657528, -44937704, 19326280, 5475547,
--24850144, -1574106, -1117765, -51903608, 36981280, -15518254, 17495012, -5462125, 2937758, 69902200,
--18858128, 24147380, 16127065, -17131550, 30602178, -210453, -5810017, 1692217, 7952669, 19551764,
-12153147, 7666517, -614180, 18488224, -17426292, -8820789, 1561758, 4471598, 8760660, -5005785,
-15181636, 1817308, 6803228, -3162707, 11535745, -1193464, -16642998, 9392557, -20463372, -12402792,
--4662724, 8566312, -2068564, 10268193, 24206972, 36911484, 26975616, 7109245, 17413944, -10252624,
-8943196, -926639, -580894, -1887101, 3783866, -8018704, 10390063, -9882183, -44627396, -25302726,
--922344, -6758668, -14957760, 5422933, 14388677, 1493038, -15808701, -793495, -15154792, 41043780,
--12607876, 944356, 31110058, -1744294, -31919124, -22201222, -21817896, -9659918, -11617350, 34195992,
-3541201, 5645198, 17040282, -9365176, -9545028, -5738613, -9730248, -20845624, -4901632, 39198556,
-12645457, 9322763, -26047902, 9617506, 2039573, -18543522, -2166811, -9287867, 42526620, -33627984,
--29038810, -10223633, 5303748, -10011032, 1295470, 11492796, -22141094, -5936182, 36025112, -29018410,
-5098126, -7262253, -17649094, -30778272, -23528904, 1154809, -42876660, -51833276, 12305081, 10634339,
-8324184, -46315316, 35775468, 43476344, -14759655, -12572980, 2709051, -1797444, -9800578, -24057722,
-17437030, 65597572, 17022566, -16193637, 314606, 10424959, 21876416, 5936182, -38816840, -34603476,
-37494528, -7171522, -15351287, -22603340, 7779260, 42874512, 13121662, -13547401, 7895224, -1658394,
--7642358, -3744675, -2302639, 18973018, 10477036, -6444599, -10503343, 8589398, 4968741, -1591285,
--4354023, 6943889, -10160282, 6306086, 16425029, -1510755, -9108015, -2731599, -5870147, -9949292,
--18422726, 2685428, 14031658, -9397925, -11627550, 5735392, -14509473, 85899, -23591718, 11317776,
-14674830, 37556804, -11977590, -5115843, -15573551, -15952582, 4483409, 8275328, 15600395, -1881733,
--3405372, -15748571, 6308233, 3877819, 4699768, 9933722, 11427834, -14187888, -37455872, 10375030,
-14631343, -55451784, 30376694, 1328756, -15811385, 5341329, 20236276, -28643674, 17701170, -26594974,
-7184407, -1514513, -13422310, -7424925, -3636764, -19568944, 14039711, 12323872, -573915, 6813429,
-852014, 10908143, 14179835, 13755707, 20338280, 17516488, -10814191, 2764348, -22193170, 23571318,
--18194556, 5806259, -3506304, 4842576, 1154273, -16761647, 15289010, -8471823, -16243566, 34129420,
--27267136, 8240432, -7859254, -13501767, 13761075, -3497177, 4089346, 21289080, -25661892, 1093606,
--31442918, -61914636, -1568737, 19801946, -7429757, 79709760, 16232292, -31072478, 8768176, -43371652,
-15099494, 31124554, 36719824, -12563316, -7219303, -48223356, -55319716, -4600984, -34478924, 8229694,
--2153389, -30059940, -7025493, -14857366, -32937030, 27064736, 53167400, -14858439, 3780645, 11519102,
--14062797, 16495896, 20984674, -14500883, 2469606, 105764, -26421028, 13268765, 2270964, 8087424,
-9720585, -18641232, 7361037, -9865540, -14958297, -16939888, 14492830, -10492068, 5988258, -16374026,
--5876589, -1068373, -19983946, 19676318, -12646531, 3977140, 6046777, -18619220, -2983392, 14444512,
--1641751, 2101313, 3269544, -5404680, 8910983, 18629420, -2153389, 10841034, 12794171, -15829639,
--30061012, 10241886, 4296578, 17448842, 20932596, -27201102, -26673358, 4728222, -39508332, 8123394,
--2848100, -23068806, 10400800, -14986215, -10074383, -18621368, 9517648, -20275466, 25973278, -2777233,
-9639517, -5998459, 34878892, -9484898, 19173270, -329102, 22852984, -6382859, -11480448, 7436736,
--12997108, -13789529, 1915555, 25948582, 16738024, -17681844, 18924162, -13263396, -20252382, 5718749,
-27814746, -10685342, -11265162, 14848776, 6716255, -13833553, 1603633, 18893024, -7821673, -18174690,
-9960029, 7579007, 11668889, 21279416, 4522064, -12833899, -4161287, 46743204, 49159120, -13562970,
--40596032, 31192736, -13530221, 8807904, 4490389, 52641804, 7305203, -27300960, -9910637, -6602439,
-1556389, 8164733, 12780749, 17126718, -20240034, 6553047, 4704600, 30539902, -7526394, 21528524,
-23217520, 12838194, 11121818, 6703370, 18511846, -17615272, 19915764, 25262460, 18294414, 3123515,
--35633196, -5288179, -22942104, 1125818, 15584289, 5260798, -7766375, -12493523, -7236483, -1937567,
--794032, 6620155, -7285339, 2080375, -649077, -5532992, 11009612, 4318053, -9631464, -4527433,
--2376191, 13377213, 125628, 2808372, -12666932, -9076877, -16844324, -7904888, -896038, -1523640,
-374199, -2868501, -15074261, 4020626, -5050882, -2395518, 2414845, -4146791, -57445, -13085692,
--2979634, 664109, 372588, 394600, -3195456, -3207804, -981400, -5108327, -7243463, 55684252,
-23128398, -24858196, 5847598, -25978110, -14406931, -1596117, 9269076, -3980361, 20126754, -24008330,
--956704, 9751723, -1017907, 10134512, -1647657, 3687766, 2120103, -17146046, -5652714, 4764730,
--16393353, -16099685, 1167694, 4405026, -11716671, 8451422, 7757785, -4642323, -8341900, -1087701,
-1561221, -2636036, 6637335, 1972464, 5185636, -6931004, -3234110, 12908524, -193274, 874026,
-5928129, -3875134, 6580964, -6252399, -12225624, -7583302, 12212740, -9639517, -7454990, 999654,
--9982041, -10332081, 14902463, -14796699, 23674934, 5472862, -10787347, 10695542, 1457605, -17456894,
-1345935, -2924873, -3304977, 8649527, -472983, -10138270, 20111184, -11935714, -4931160, 10769094,
-3178276, -4172561, 321049, 3509525, -539555, -597000, -2302103, 4932233, 8237748, -63351,
--14280229, 10342818, -7463580, -824097, 11844446, -528281, -3888556, -226560, -10612864, 5304822,
-3400540, -889595, 27380, 4517769, -10339597, 1009854, -3677029, 1294396, 3990562, 1349694,
--4512400, 10213432, -15316390, 2254321, 1582696, -799401, 1668058, -1949378, -8737037, 9687299,
--4571993, 6999723, -90731, -822486, 8664560, 3589519, -7626788, 3081102, -3946001, -2953864,
-1500017, 5893769, 5513128, -1962263, -7530689, 4030290, -4372277, -33574832, -40375912, 34054796,
-137916768, 53965728, 63273460, 869194, -129125504, -95083600, -49707804, -75767520, 34001644, 65270080,
-26913876, 115376784, 65284576, -4322885, 27121108, -58306864, -117659016, -46937012, -81719808, -13043279,
-56630756, 47723528, 43191800, 71928888, 44377748, 12225624, 19767050, -5328444, -83713744, -36973764,
--30141006, -115656488, 21472688, 15196668, -51357072, 83361560, 82481088, -2780455, 104355360, 51337208,
--48446696, 32411970, -48163228, -100250440, -7935489, -60540784, -87738664, 15548318, 9411347, -5200132,
-81851336, 78947408, 47149616, 70283920, 42714524, -27271432, -30760018, -54695336, -93787056, -69177424,
--33005214, -30909270, 16856136, 53028352, 36238788, 58257472, 87923888, 34253436, -11530377, -10939819,
--60773252, -49038864, 4533338, -56297356, -25558814, 30642444, 7570417, 38345468, 30822832, -15623480,
-10299332, -3092913, -20959978, 4721243, -9336185, -9412958, 19477140, 6826851, 8272644, 25963078,
--14822469, -5679558, 14105209, -19196894, -15781320, 7432978, -46141372, -7581154, 15913391, -37124624,
-18300318, 23379118, 2555506, 58543088, 55650428, 12910135, 22645216, -16091095, -49568216, -24765318,
--65993784, -74876848, -42454676, -17945448, 14334990, 71711456, 83000776, 87012280, 77242304, 44232796,
--9462350, -48297980, -76620608, -106884016, -91475824, -50193672, -12891881, 43451648, 77698104, 77627240,
-69367480, 45273252, -8191040, -13551159, -21918828, -33120104, -23543936, -20556250, -24495272, -12923020,
--6561637, -5403606, 5477157, 15188078, 19863150, 25978110, 23922430, 19169512, 8951249, 2305324,
--7988639, -10641318, -11562052, -6452652, -3611531, 23085, -782758, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
-536871,
-3439732, -4676683, -3805878, -653372, 3687230, 5433134, -2558190, 3172907, -1756642, -4524748,
--1240172, -2529199, 1487669, -622770, -2186138, 2004676, 3043521, 681826, 3679176, -6740951,
--7283191, -4679904, 678605, -18254, -1244467, 351114, 2224256, -728534, 3003256, 2480344,
--3180960, 1210644, -237297, 3888019, 3586835, 1351841, -3809099, 2497524, -2268817, 1269700,
-2501282, -6088653, 6653441, 9768366, 1280437, 4425964, -3595425, -727997, -3375308, -1756105,
-3028489, -1013075, -3490735, -927713, -2196876, 1681480, -2142652, -1951526, 198105, 1784022,
--1775969, -2009508, -867583, 3468723, 3127810, -2643552, -969052, -3123515, 721555, 4121021,
-1148904, -1512365, -1967095, 1548873, -550830, -2812130, -1022739, -1899986, -269509, -1020055,
-1633698, 1523640, 823560, -905701, -1241782, 2776696, -373125, 753230, 1446330, -417149,
--34897, -579284, 852014, 109522, 217433, -816581, 119185, -260919, -803696, 36507,
--120796, 597000, 1468879, -817118, 345745, -161598, 717796, 869194, -206158, -362925,
--177704, -48855, -775778, -331786, 355945, -303332, 154619, -21475, 657667, 137439,
-15028627, 6916508, -521839, 3146064, 2856153, -3605625, -1768990, 4166655, 1894081, 4534412,
--3299609, 6594386, 2475512, -6512781, 5163625, 271120, -120796, -3439732, 3776887, -7042673,
--6043556, -1299765, -2151779, -1175210, -2161979, 807991, -1314797, -2934000, -2121177, 2440078,
--2678449, 1700807, 1073742, 675384, -2956548, 4129074, -8671539, -1536525, -55298, -1532230,
--1097364, 732292, 1608465, -2794950, 2200634, -3384434, 3212636, 1002875, 694711, 3305514,
--2356327, -584116, 1334661, 5181341, 1275068, 2160906, -1212791, -4535486, -6318434, 1137093,
-3408057, 4445291, -1847373, -7073811, 1032403, -2907156, -1983201, -1656784, 1937030, 180389,
-6874632, -231928, 2301566, 1324461, -1063004, -1822677, -1942936, -7230041, -2136746, -1206349,
--1001264, -1408212, 1317481, 3577708, 984621, 3391951, -61740, -354872, -1118302, 909459,
-1222992, -376347, -1420560, 1181116, -744640, 444529, -636192, 597537, -1061931, -673236,
-949725, 282394, 522912, -409096, 309775, -696322, 8085813, 1894618, -6847252, -7743289,
-2115272, -2348273, -6435472, 7310571, -3591667, -1174137, -1005559, 5738613, 1194001, -3293703,
-4003983, -3089692, 6056978, -8361765, -5540508, 6701223, -6976638, -7011534, -2833068, 5731634,
-2492692, 2756832, -678605, 5138929, 3088618, -507880, -6763500, 1850057, -1887101, 2454037,
-2134599, 1864016, 5854041, 1595580, -5785858, 555661, 4012036, 5930813, 1981591, -3209414,
--773631, -4745402, 2031520, -8437463, -339302, 9167608, 482110, 1007707, -4696547, -5775658,
-883690, 1296006, 6716255, -1433982, 572304, 738198, -1000191, 722628, 2229088, 432181,
-4724464, -1249836, 3136937, 499290, 845572, 603980, 5545340, 267899, -776315, 1062468,
--1185411, -3714073, -1999307, -3829500, -89121, 7025493, 1466195, -2245731, -783295, -3946001,
-2270964, -3079492, -2189360, 802085, 120796, 279173, -1794760, -2502892, -520228, 678068,
--848793, 1510218, -154082, 46171, 1440962, 945430, 1452236, 1242856, -3758, 526134,
--1156420, 119185, -1023813, -1059783, 798327, 993748, 1669669, 1257889, -783295, -146566,
-893890, -581968, -1243393, 776852, 202400, -18589692, -12195023, -2648921, 1991254, 3027415,
-280784, 6442, -7144141, -407485, -1583769, -1158031, 121333, -1777043, -854699, -5225902,
-2694018, -11031087, -4080756, 1026497, -2257542, -3346853, -1973001, -6260452, -3228742, -2579665,
--3024731, 1429687, -4911295, -2643552, 6004365, 3976066, 373125, 2939905, 2097018, -1938641,
--4081830, 2442226, 8984535, 1063541, 1097364, -3513820, -3210488, 2694018, -7756174, -4068408,
-8529805, -7783555, 2334315, -1822677, -3976603, 1853815, 548145, -2132988, 479426, 1359357,
--2736968, 70867, -563178, 5327370, 4659503, 738198, 1237488, 2336999, -179315, -983011,
--1845762, -10817412, 5238787, 3329137, -2980707, -70867, -4568235, -1189706, 627065, -3277060,
-1489280, -3985730, -2262911, -4647692, -6984154, 4632122, -1342177, 255551, -5904507, -1420560,
-746787, 1027034, -1566053, -220654, -338229, -1573569, -3060164, 539018, -1576790, 1364726,
--253940, -715649, -637803, -265751, 1480690, 313533, -2266669, 482110, -688805, -132070,
-716186, 394063, -596464, 589484, -1780264, 1007170, -1618666, -444529, -16087337, 2477123,
-3774740, -1016834, -1409286, -8910983, -3644280, 2439005, -7953743, -7627325, 1557999, -7256347,
--3732864, -191126, -4377109, 2463701, -3450469, 5432597, -2870649, -1893544, 1717450, 3795677,
-7038378, 4388920, -7844758, -437013, -582505, 3855270, 5799817, 9842454, -4380330, -3888019,
-5107790, -5398774, 1248762, 1530082, 8326331, 3036005, 4647155, -6214281, -2740189, -8478802,
-6692633, 6989523, 8055748, -147640, -1733556, -5420249, -1132798, 5393942, -2513093, -3500935,
--3204583, -4262755, 915902, 971200, 1270774, -5826660, -77846, -5710159, -307627, -878858,
-2315524, 1971927, -1744294, -2609730, -7202660, -453119, -577136, 4405563, -2782065, 7342247,
--4205310, 884226, 3419331, 6665789, -5184026, 1513976, 3512210, -6060736, 3017215, -39192,
-7416872, 2434710, 1660005, 4519916, -462246, 1207960, 3506304, 1377074, 37044, -1338956,
-56908, 1435056, -479963, 1833951, 2871723, 2305324, -1088774, 1257889, 180926, -826781,
-1148367, 1465658, -2684, 644245, 1837172, 1302449, 1481227, 660888, -724239, -1247688,
-1415729, -1336272, 1409286, -794569, 102005, 1717987, 1346472, -476741, 19902878, 17075180,
--620086, 513785, 8873402, 1217086, 4342212, -2657511, 4867272, -3750580, 8957691, 3074123,
-6442, 1835025, 617938, 11353209, 7655243, -7435126, -6204081, 2416993, 1190780, -2379949,
--1625108, 1443646, 5432060, 4044786, 2473901, 587337, 2862059, -1891396, -161061, 6256157,
--6881075, 2761664, 8337069, 6266894, 11338714, -1113470, -1739999, -986232, 702227, -3620121,
-12322261, 11311333, 8064875, -3757560, -1140851, 4811974, 3901978, -3448859, 753767, 6475200,
--2437394, -3027415, 4099546, -11989938, -1413044, 666257, 1744294, -4056597, -7860864, 3204046,
-5341329, -6375342, -2397129, -6933151, 2561948, 489626, -1482838, -1489280, -6075231, 10139881,
--2695092, 1365800, -10339060, -2446521, -4952634, 12057584, -2158221, -1654099, 5337571, 2484102,
--66572, -3845606, 3534221, -2529736, -3628711, 5591511, 5168993, -76773, 3213173, 119722,
--1524177, 2967823, -503048, 1159641, -1005022, -1306744, -376883, 2309619, -1759326, -1305670,
--124554, -1747515, 574452, -1575179, -963146, 152471, -340913, 2295123, 16106, 675384,
-1405528, 1473711, 329639, 763967, 1148367, 3058554, 517544, 2882997, 421981, 1429687,
-2029909, 13103408, -499290, 8278013, 11330661, -5987185, -13932874, 578210, 10613938, -8215199,
-7455527, -2223183, -10081362, -4664335, 10171019, -9934796, -8756365, 6377490, -10126996, 3369939,
-4840428, 3969624, -2869038, 6132140, 1736241, 1146756, 3954054, -6479495, 8827232, 4336307,
-3835406, -1827509, -980863, 16440061, -5755793, 1015223, 4283156, 8269960, -11245298, -9265318,
--8623757, 326418, 638340, -583579, 5233955, 1622424, 9342091, 3753802, 5474473, -886374,
-731755, -4625143, 8348343, -3787624, 8233989, -4498442, -7106024, 12246026, 9949292, -14097156,
--12439836, -8182450, -6397891, 4429185, 698469, -2860448, 6478958, 7143605, -8586176, 5045513,
--700617, -17185774, -5682242, -8668855, -7864622, 2968359, -2682207, 5635534, -1307818, 841277,
-10268193, 10460393, -980863, 2746632, -921271, 1622424, 1469416, -3547106, 2936147, 853625,
--145492, 8825621, 2642479, -69793, 252329, -1584306, 2597382, -295816, 1705102, -1918240,
--118648, -2022930, 523986, 2291902, 710817, -13959, -290447, 2004139, 1280974, -1277753,
-159451, -62814, 287763, 1014149, 434865, -7471633, -10411538, 6240051, -5972689, -4431870,
--3697430, -12159052, -1241782, 5394479, -3247532, -754304, -4396436, 9980967, 1583769, 6350646,
-4904316, -8078297, 8320426, 12377022, -3754338, -5079873, 1379221, -2168959, 5399311, -15343771,
-5921150, 13262322, -1714766, -4358318, -3732327, 5761699, 11945378, -2832531, 3057480, -5316633,
-8202851, -9826885, -3704946, 1900523, -1476395, -7625715, 14086419, 9883257, 7469485, -3129421,
--10505490, -1306207, -14949171, 2589329, -1026497, -483184, -246424, -2266669, 8206072, 6889128,
--10361609, 5830418, -6175089, 8628052, -719944, -1748589, -643171, -9137543, -1671279, -8335458,
--18382996, -836445, 2237141, 1460289, -7007776, -236760, -1947768, -13783624, 360777, 11979201,
--7483981, 3140158, 3992172, -1511829, 935229, -3536906, -2010582, 2819646, 3496104, 3764002,
--864899, -2394981, -827318, -2574296, 2204929, 1047972, -2084670, -617938, -1908576, -2168422,
--194347, -1947231, -2879239, 1844689, -522912, -2266669, 1905355, -1583232, 1589675, 2291365,
-1062468, 2203318, 1651415, -9127, 1567663, 4959077, 2487860, -2441152, -1582159, -2804614,
-118648, -3633542, 2042257, -194884, 2937758, -730144, 2316061, -357556, -1438814, 4687420,
-2364916, -19313932, 1288490, 11377368, 6099391, -8761733, -7255811, 14244259, 3201898, 3257733,
--2865280, 3739843, -217433, -9405442, -2543695, -9882183, 4636954, -5857799, -978179, -9626632,
--10808285, -14360760, 8959839, 6169721, -4701916, -5072893, 3984119, -13181255, -1281511, 1072131,
-3130494, 5899675, 2774012, 446677, -4657892, 2003065, -4283156, 3572339, -4111358, 2384781,
-1156420, -4123706, -5523865, -10313290, -6924561, 2702608, -17798344, -4758287, 9656160, 5250061,
--2208687, 23217520, -3420942, 10795400, 10534481, -16793858, 1029718, -2167348, -14317273, -7379291,
--7910793, 322123, 1599339, 16067473, -2643016, 1611150, 10772852, 8114804, -1959579, 10870562,
--5187784, -3889630, -7282654, -9496173, -14001593, -5221070, 7883950, -15102716, -7807714, 11803107,
-8486319, -5039608, 10656351, -4698694, -804770, -401579, 5093831, -3278671, 5076652, -3136400,
-4334696, -1194538, 1755031, -1986422, 3496640, 3491272, 1418950, -520765, 3955665, -2515240,
--3001645, 3218541, -936840, 3505767, 2437394, 1782411, 2251100, 1491964, 599148, -5764920,
--1138703, 32212, 1576253, -1468342, -2529199, -1975685, -5657546, 2215666, -170188, 3627100,
-1941325, 3534221, 2565169, 825707, 1140851, 13302051, -2288681, 4273493, -6478422, 3818763,
-5623186, -3432216, 4816269, -7400766, -8069707, 12345883, 6780680, 7969849, 9904195, -54224,
--8067559, 10665478, -9299678, -12563853, 229781, 11776800, -1640678, -10207527, 1448478, 13862007,
--1942936, 3806415, 1399623, 19449222, 1288490, 4163434, 9657234, -1219234, -4904316, -9315247,
-1381906, -1289564, -8887898, 295279, -5207111, 3575560, 13257490, 136365, -7879655, -2353105,
--7299297, -3919158, -1071058, -3105798, 1864016, -9825811, 10640245, -5569499, 17920214, -4488778,
--12873628, 751619, 717796, 6340446, 2792803, 3437048, -13201656, -10763725, 7882339, -11208254,
--15532749, 4500052, 3202435, -3535832, 16997870, -13732621, -18951544, 7147363, -12905840, 1269163,
-1904818, 392990, -12402255, -7595113, -16160888, 5603859, -1522029, -872952, -2394444, -7220377,
--3138011, -5470178, -2592013, -2105071, 6338835, -4722854, 4901095, 1768990, 5058398, 857383,
-773631, -6608344, -2283849, 1837709, -1995549, -7213398, 1575716, -1139240, -2679523, -2514167,
-2460480, -2874407, 3271691, -1628866, 3942243, -687195, 2090039, -3740917, -3545496, -81068,
-450435, -1305133, 5885179, -4950487, -4579509, -3086471, 2950106, 3051574, -3670587, 883153,
--10432476, 5819144, 519154, 14220637, 14780056, 21497922, 9718974, 4625143, 2914135, 7143605,
--7338489, 8246337, -12965433, 6369974, -1322313, -1009317, -24800752, -9489193, -4118874, 8510478,
--1114544, 2128693, 2626373, 2328409, -12702366, 13168370, -550830, 5409512, 380105, 12295418,
--13178033, 9203578, -6505802, -232465, 9840307, -11155104, -5075578, -12163884, -4927938, -13554917,
-12363063, 9205726, 16627966, -741956, 3892314, -15119359, 3405909, -15678241, 15252503, 4406100,
--2543695, 14572287, 14738180, 7634305, -8872329, -13089450, -19013284, -769873, -6768332, -9484898,
-10230075, -2762738, 23896124, -17677548, -6528351, 13761075, -14343580, -5615133, 3234110, 315143,
--2141578, -13651017, 6202470, 2392834, -7519951, 6847252, 14379014, -12351789, 13877039, 17410724,
--5255966, -9133248, 7087770, -6998113, 6543920, 4277788, -7325604, -5604396, -1502165, -2209224,
-10116259, 3483755, -1787780, -4891968, -8140574, -4522601, 2498060, -5122822, 2415382, 4946192,
-3084324, -3433290, 2601140, -2804077, 3824669, 2564096, 4274566, 2661806, 144418, -4525285,
-2929168, 4584878, -4656282, 217970, 1534914, 1723893, 3875134, 385473, -561567, 4355634,
-5267241, 1063004, -2480344, -4132832, -154082, 3704409, 4491462, 3149285, 22266184, -5068062,
-3116536, -1168768, -7377143, 10021769, -3693135, 3726421, 1166084, 14344117, -4543539, 16722455,
-242666, 8334384, 7344931, -1298691, -5453535, -16248935, 7683697, 16951700, 847719, -97711,
-11709155, 9984725, -766652, 1855426, 20113332, 12642773, -3700114, 4402879, 13205414, -3329674,
--14731738, 360777, -10712722, -1671816, -6812355, 630286, -20361904, -6058052, -7457137, 347355,
-4189204, 4277788, 19689204, 21828634, 11448772, -15103252, -8973797, 12265353, 17147120, 3635153,
--15788300, -2590939, -3793530, -16404091, -10424422, -12424267, 15101105, -5683316, 2007360, -15446313,
-22378928, 16556025, -1939715, 6834904, 37192808, -1903207, -7720741, -14347875, -949725, 9884330,
-7759396, -5790153, 11149735, 22277458, -9644349, 14198625, -6571300, 4628901, -9047349, -4890894,
--7821673, -10152229, -5302137, 6591164, -127775, -2262374, 1511292, 2710124, 11922829, -1376537,
-1088237, -187905, -5674726, -652298, -2105608, 1062468, 4745939, -3207804, -1618666, -3964255,
--1982127, 1305133, 1348620, -1478006, -8082592, -7487202, -2684892, -9208410, -8126615, -1527935,
-6934762, 6191196, 5260261, 1132798, -1411971, 236760, 2854006, 2433636, -1152125, 1643899,
-1071594, 11319386, 907849, -7062537, -9737228, -15964930, 20779588, -12985834, 15634218, -11394011,
--17415556, 973884, 21526376, 14078903, -16189342, -10588705, 3543348, 3321620, 7172059, -1141388,
-14296872, 7825968, 18889804, -6829535, -3359738, -556735, -3860639, -18246632, -13708462, -4127464,
-18986440, 4097936, 1329292, 755914, -18032420, -20223928, -15892453, 8222178, 9097278, -6851547,
--4769561, 1874753, 2020245, -10744398, 2939368, 20301774, 3358128, 12750684, 12254615, 9033390,
-21499532, 31222802, 10033580, 627065, 4289599, 12378633, -6693707, -3375308, 8073465, -2725157,
-4224637, -2799245, 13245142, 4845260, 9321153, -2570001, -3783866, 6905771, 17759690, -1235340,
--14940044, 9499931, -23264228, -26670674, -9371082, 13901735, -9148280, -26378078, -16388521, -6663642,
-9433896, 6657200, -14526653, 25725780, -8477729, -17932026, 4467303, 7080791, -6150930, 8974871,
--9519795, -3599720, 3086471, 2463164, -5123359, 4584878, 605054, 8145406, -4738423, -9638980,
--5898064, 1659468, -2407866, -1918240, -1042066, 107374, -1057636, 6606197, -1410897, 1123671,
--2949032, 3059627, 5137855, 1086090, 4910222, 1641214, -8389682, -3555159, -270583, -6976101,
--8570070, 3992709, 5497022, -4520990, -9128953, -9683541, 3644280, 1619740, -750009, 6258841,
--3956739, 8410083, -37284076, 1984812, 18926310, -3520263, -4414690, 22918482, -12287901, -12752295,
--16187732, -5417028, -5458367, -10845329, 3219078, 5213017, 8863202, 6200859, -5168457, -4142496,
--1814087, -4637491, 1552094, 4267587, 18700824, -8067559, -24195162, 12883291, 114354, -776315,
--20122996, 8911520, 3918621, -2152852, 22944790, -6635188, 2502892, -2197413, 10122701, 12127377,
--13412646, -1395864, -7522635, -952409, 6866579, -5155572, 10510859, -16462610, -13674102, -8734890,
--14610405, -2623688, 1331440, 2182917, -20437066, -13518946, 9730248, 16400333, -7827578, -9306120,
-8666170, -18791556, -16957604, -16500727, 18034568, -30531312, 9880572, -1737314, -17966386, -5828271,
-15151571, 38597796, -5197984, -10791105, 12741020, 29569240, 10644540, -6805376, -7215545, -1472100,
-8104067, -671626, 3767760, 17551384, 1134945, -6724845, -12509092, 10232760, -14754286, -10165114,
--7365332, 5081483, -6110128, -10791105, -6794102, -6615324, -137439, -7995082, 2653216, -6225018,
--597537, -2125472, 7436199, -5794985, -4514548, -11742977, -3528853, -2194728, -3984119, 10902238,
--8211441, -10572062, -748398, -9295383, -8463233, -3965866, 1153736, 8134668, -1176821, -3673808,
--1692754, -5613523, 3764002, -11187316, -1061394, 11281268, 5322538, 7332583, -3000035, 2691871,
-3539590, -2889439, -4466229, -6381248, 2088428, 5355288, -2363306, -20855288, -33608656, -1828046,
-38245612, -6031208, -2888366, -25264608, -2058900, -1589138, 2498060, 8498130, 1009317, 7079717,
-353261, -319975, -18228914, 2668249, 16302085, -11019275, 20253456, -8513699, -1415192, -18006650,
-11435887, -8931384, -6009733, -20796768, -28453622, 14529874, -13968307, -13528610, 4809827, 2972117,
--6249715, 1455994, 15869904, -4693326, -15446850, -9439264, -19736986, -2346126, 5444945, 13607530,
-2626909, -3945464, -3508988, -8068633, 4546223, 14123463, 2180233, -8778376, 15870441, -15310485,
-1495722, -26410828, -7937100, -5154498, 32444720, -20578262, 6512244, -6672769, 4134980, -3779571,
--3786551, 644782, 13109851, 4030827, -24197846, 26455388, 7934952, 9451612, 3271691, -10535555,
--8200703, -3016678, 3196530, -585726, 5134634, -14302241, -15049029, -2433636, 7109782, 16067473,
--10107669, 13625784, -3509525, 5305895, -10930155, 6131066, -17717276, 19633906, 696858, 2176475,
-6281927, 8845485, 691490, -12277701, -6089727, 3285113, -11806865, 3132105, 5287105, 4886599,
--7099044, -4328254, 11587822, 2116345, -12141336, -1764695, 10019085, -3893388, -14899242, 16600049,
--4723391, 6379100, -3012920, -4843113, -8041253, 5050882, 1206886, 5251672, 595927, 8861591,
-848256, 6342593, -3336653, 341987, 3808026, -2379949, -3759707, -16653736, -9628243, 35494684,
--4250944, 2941516, -18313740, 16556562, -9396315, 12187507, -9483288, 21437256, 2342905, 2174864,
--10222559, -8544837, 12714177, 27788976, -11357504, -16951162, 8214125, -6678674, 18563922, 23156316,
-11661373, -3483755, 14573898, -9523553, -8605504, 19454592, 27043798, -29982092, 2719788, 4472135,
-5344013, -10146323, -436476, 12105902, -30030948, 9107478, 17983028, 6664716, -13205414, -3727495,
-22022444, 17811766, 6201396, -10236518, -13087302, -26226680, 37697464, 6774774, 19521700, -2798708,
--7680476, 4190814, 11485279, 353261, -314069, -30481920, 5012764, 28751584, -4844723, 27551142,
--16236587, -7426536, -11230803, 6423124, 26217018, -8169028, -449898, 23440858, 28932510, -9345312,
--20619602, -18671296, -15966004, -7584912, -6564858, 16464220, -19856708, 10977400, 12735115, -4593468,
-1743220, 12897787, -2178622, -7452842, 8089571, 5472325, 4467303, 11853036, 2939368, -2152852,
-11087995, 3805878, 4883915, 5413807, -1513439, 600759, -2110977, 4605279, -19433116, -5555004,
-1180042, -3925600, 8053601, -14926622, -1329829, 96100, 5624260, -448287, 8732742, 5732171,
--3637301, 11772505, 6422587, -4241280, 8939974, 9171366, 462783, -6118181, 4898410, 8914741,
-5869610, -1478543, -8334384, -4376035, 2674691, 1234803, 1797444, 14156749, 10413685, 24984362,
--7557532, 18095234, -9577240, -3819300, 16817482, -566399, 22923314, -27668716, 17335024, 3160022,
-7698192, -11130945, 8389682, 20640002, 40135932, -9243306, 10189273, -567473, -26646514, 24414204,
-2459406, 9538049, -4884452, -12480638, -4653060, -1036161, -10358924, -6514929, 34055332, 2362232,
-13077102, -9777493, 24124294, 106300, 11682848, 4920959, -14172855, -3048890, -8761733, 222265,
-4318053, 28519120, 14483167, 1159104, 3331821, -1063004, -2435247, 4627291, 2781528, 17829482,
-14490146, 7268696, -8589398, 12353400, 26036628, -24747064, 22804128, 3592203, 6785512, -24879672,
--11880953, -31245350, -25252798, -5065914, 16640851, 13873281, -43314208, -438087, -19616190, 10104447,
-42959872, 21498996, -27885612, 15013058, -11572789, -14458471, 23578834, 11838540, -12392591, -6977175,
-20713016, 16938814, 9159555, 26406532, -7381975, 16116865, 14140643, -17163764, 23517094, 6305012,
-27323508, 8176544, -2807298, 16000901, -1946157, 3994320, -19633370, 14323179, -9721658, 7330973,
--7313793, 3088618, 8680129, 21689048, 5441724, 13071196, 3049427, 3980361, -7551090, -1920924,
--2930242, 1495186, 10654740, 9105331, 16191490, 5810554, -2386391, 2325188, -4290673, -2515240,
--17064442, -3139621, 3710852, 4918812, 13845364, 12390981, 11230803, 14028974, -36266704, -55672976,
--14601815, -6265284, -13826573, 3097208, 18711562, -19624780, 28263032, 10372883, -40940704, -31345746,
--6376953, 22349400, 709207, 1876364, -4374961, -12944495, -39646844, 1632625, -33329484, -27519466,
-13385266, 10718091, 9652939, -4646081, -13001940, 29971892, 17843442, -12710956, -26036092, 19792284,
-9875204, 4668630, -12320114, -30335354, 11406359, -14236206, 4417374, -25837450, 31279710, 792421,
--12729746, 3080029, 7760469, 25929792, 16048682, -6622840, -1453310, 9092446, 8818642, 10002979,
--6065568, -40517648, -32048510, 6467147, -4561256, 23746338, -4728222, -10159208, -28782724, 33246268,
-12563853, -23128936, -24078660, 34105260, 31752156, -310848, 23238994, -3105798, 607201, -9659918,
--6091874, -18280992, 22381074, -4150012, -5337571, -9756555, 9101573, -28778428, 13374528, -8406325,
--5638755, 20491826, -673773, 3265249, 4910758, 18813568, 9372692, -7633231, 13706851, -4128537,
-16594680, 6680822, -19146964, 4726612, -9844602, 9002251, -8035884, 223338, -12805445, -6426345,
-6658810, -12408161, 5043366, 4279935, 5187784, -11090679, -8196408, -14279693, -12773233, 16699370,
--6258841, 10786810, 6535867, -10205379, -1683090, -8924405, 122943, -5659157, 20859046, 17796734,
-11814918, 16623134, -4318590, -18449032, -21365852, -3026341, 6160057, 30745524, 18547816, -7099044,
--5978058, -8286603, -15546708, -949725, 6721624, 3106335, 19530290, 1913408, -13764833, -35365296,
-55763708, 1405528, -43133820, -3264712, -16057272, 7294465, 21401286, 19439558, -23997592, -38509212,
-6577743, -18431316, 5873905, -3755412, 16979080, -5574331, 2429341, 10087268, -15731928, -19291382,
-2038499, 5063767, 16811576, -385473, -26896696, 17691508, -15001247, 13903883, -13038447, -8876624,
--1468342, -4268661, -28916404, 5432060, 8079371, -27958090, 11826192, -10988674, 5601174, -9329206,
-27011050, 21031918, -27236536, -14457397, 18602578, 23309324, -27870580, 36792836, 2386928, 29625610,
-21525840, 34959960, -10814728, -14838575, 7850664, -29011430, 4430796, 3664681, 50939924, -15794742,
--47884052, 80834504, -38193532, -29381872, 46605228, 21049098, -27193048, 45282912, 5039608, -36888400,
-45871860, 5535139, 4106526, -8021925, 6738267, 30434676, -7448010, -10620917, -15850040, 22657026,
--8259759, -5822902, -3191161, -9165997, -9780177, -14234058, 13598403, -2057289, -1282048, -5182415,
--3519189, 1681480, -6152541, -10718091, 1343251, -8686571, -16030965, -16715476, 20686710, -9062918,
-1902671, 19047644, -9222369, -8839043, 1321776, 9400610, 4053376, 3949223, 18358838, -11449846,
-2629594, -8471286, -5254356, -3795677, 30378840, 14976551, -4977867, 4199405, -16155519, 5033165,
--14789720, -9302899, 7093139, -4054986, -30488900, 18610094, 7627325, -5825587, -50255948, 7009387,
-14988362, -37600292, 17184164, 10033044, -13254806, -3691525, -706522, -9159555, -3071975, -5334350,
--16829292, 548682, -8410620, -1767916, -4155381, 8262444, 29965986, 25195352, -23167590, -2467996,
-31541702, -5439039, -5942624, -32192390, 3719979, 10694469, -5288716, 27610198, 65951908, -22087406,
--27797566, 47060492, -3132642, -25216290, 29308320, 19398220, -15191836, -22637162, -28101434, 8683887,
-15095736, -12409771, 44265008, 28985124, -55169928, -52842592, 30900142, -24806120, -32256278, 41998336,
-6767795, 56181932, 26934276, -6671158, -7508677, -40316860, -31507344, 92204896, 25456808, -19618874,
--44518948, 1379221, -18116172, -39654360, -6163815, 46761992, 19870666, 738734, 38416336, 33695092,
--10590316, -42572788, 6669548, 25769804, -10561861, -9832791, 53525492, 30911416, 5362804, -5451924,
--27449136, -26787174, -6909529, 25637734, 10315975, -10165651, -4851166, -11788611, 10070088, -7510287,
--10251013, -6453725, -1221918, 7847979, 10348724, 9337796, 3881577, -24255828, -8494908, -4575751,
-9285182, -9288404, 1745904, -2299418, 22552336, -14277008, -10036802, 23481124, 6548215, -11498164,
-18370648, -6118718, 5415417, 1722819, 4238059, -13741211, -3722126, 19410568, 18800146, 8082592,
--7354595, 5324149, -8453033, -6541235, -5168993, 10370735, -15610596, -2952790, 12537546, 49995568,
-41503880, -11044508, 29477972, 3130494, -22994718, 14770929, 25171192, 8516383, 10851772, -32958506,
--6788196, 3963718, 6626598, -4773856, -28797756, -10257993, 10302553, -6903086, -3116536, -24217174,
-37261524, 4772783, -30863098, 17546552, 43755516, -22512608, -13250511, 6518687, 14380624, -14026826,
--27674084, 23781770, 39779452, -3081102, -15757698, 5291937, 11199664, 18274548, 25448754, 1799591,
-46395848, -920197, -51864952, 525597, -5924371, 17010218, -5515275, -42149200, -1267015, -18132816,
--17929878, 25502978, 13242458, 14601815, 18130130, -37758132, -19916300, -6523519, -606127, 15430207,
-434865, -7612830, 966368, -12837657, -25922812, 2639794, 40061308, -20511154, 3725884, -15908022,
--11586748, 27603754, -33881388, -237297, 14743012, -11807939, 5442261, 4355634, 8305930, 9878962,
--17947058, -21231098, 35851704, -7331509, -11772505, 18668612, -18564460, 11707544, 2201708, -7440494,
-5550709, 15709380, -3073586, 2250563, -7788387, 3891240, 850404, -884226, -6971269, 8652748,
-4128537, -703838, -857383, 7283728, 5796595, -6486475, -12097312, 6694244, -862752, 3484829,
-550293, -2947958, 6021008, 328028, 4967130, -1825898, -1126355, -3319473, 812823, 5936719,
--1456531, 14567992, -6018323, -4210142, 486942, -6113886, 3826816, -43223476, -62003760, -54831164,
-110295832, 105287368, 105076376, 296649088, 105393664, -12213276, 19523310, -205112608, -249850064, -83937080,
--140196864, -194280704, 24983824, -10773925, -32512902, 213981712, 130604584, 54570244, 334143072, 157770784,
-29167122, 152371488, -36135172, -181773760, -174100256, -165839424, -229861824, -225025152, -52853868, -81204408,
--132513696, 154775584, 71257800, -55684788, 223462320, 72227392, -26243860, 252712112, 230200048, 53080964,
-238889296, 242449824, -9298604, 60250876, 27439472, -233230688, -270818624, -201627232, -381252448, -360993088,
--216846992, -289538784, -217855776, 24761024, 179109792, 203320528, 436755232, 397176576, 350167616, 377354208,
-278284352, 141373680, 43154756, -30522722, -212568672, -256203920, -274342112, -309107712, -293347872, -249975680,
--161589024, -117308440, -114790520, 22028350, 69610144, 136782368, 325055488, 337662272, 230827648, 288598720,
-121995328, -39716100, -95506648, -147853168, -202782048, -146757424, -98203888, -97641248, -33684356, -9064528,
-838592, 52167748, 66122632, 63123136, 96505768, 60898880, 39327940, 48821432, -28745680, -26458610,
-8225936, -78065328, -55330452, -20219632, -75537200, -46500000, -5207648, -75889384, -80305152, -53165252,
--78797080, -51562692, 59413356, 111162344, 176562352, 260577280, 243059184, 208193168, 195572416, 105966504,
--32239636, -162426544, -287866976, -341674304, -308279872, -249395872, -188383712, -88151520, 28366648, 112104552,
-157007904, 169647456, 149630224, 133777496, 124294744, 125515048, 87298432, 41714868, 19335406, -10277320,
--35206920, -31514322, -57379152, -61457224, -43352328, -31918586, -42579768, -40274984, -51890184, -58089968,
--54074712, -36619428, -17319992, 7194070, 10759430, 7631083, 514859, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--3671660,
-13821205, 7314330, 6095633, 3394635, -1464584, -435402, -1415729, -2878702, -3990562, -2825552,
--4078072, -1725503, 3882651, 1322313, -202937, -5369, 2545305, 1183264, -1610613, -1734630,
--1305670, -7206419, 2986613, 754304, 69793, -1487669, 935229, 126165, -1991791, 1038845,
-2637110, -11274, -3290482, -838592, -1422708, -1532230, 405338, 3169686, -821413, 747861,
--3767223, 2417530, -4654671, 2965138, 656593, 175020, 35433, 2949569, -3573413, -2653753,
--4869956, 1290638, 874563, 237834, 2778307, -3005940, 647466, -413927, 78920, -2193655,
-1927367, 877247, -1616518, 2997350, -4789426, 2188823, -2615098, 4873178, 2219424, 852014,
-345745, -982474, -5975910, 4542465, -1437203, -157840, 776852, 1261110, 1080721, 1192927,
-1434519, -446140, 413391, -677531, 1399623, -117038, 793495, -1826435, 609885, -299574,
-387084, 707596, 1937030, -127775, -341450, 639950, 760209, -807454, 995896, -1209570,
-971736, 188442, 863825, 44560, 553514, -333397, 210990, 739271, 365072, -153008,
-568009, -154082, 13207561, 6292664, 8622684, 2362769, 2932926, -500364, 3374234, 354872,
-2998961, -2210298, 5847061, -1482838, -6682432, -1830730, 135828, 368293, -2122788, 5125507,
-281857, 2003065, 4949950, 2425583, 54761, -4832, 1177895, -4515085, -2990371, 1797444,
-2152316, -1641214, 469225, 2211371, -4483946, 6321118, -651761, 933619, -1006096, 2348810,
-3256122, 165893, -3430068, -3492882, 6851010, 155156, -2007897, -288300, 3943854, 2921115,
--2044941, -2749853, -6052146, -1875827, -2486249, 252866, -2246268, 541166, -5880884, -2399813,
-674847, -2393908, 1286343, 2369748, -1197759, -157840, 1105417, -1492501, 2305861, -169651,
-2902861, 35970, -1008780, -3380139, 375273, -4192425, 1311039, 76773, 2365990, 42950,
-2429878, 3141232, 2668249, 102005, -1746441, -132607, -644245, 3467112, -943282, 444529,
-2208687, 2319282, -170725, 1307818, 459025, 1195075, -498216, 1446867, -557272, 2132988,
-479426, 408022, -185220, 191126, 207232, 2793339, -8916352, -2873333, -2039036, 1555315,
-1746978, -6087043, -2743947, -1202591, 1449015, 3243774, 1006633, 4445828, -3678103, -5292474,
-1521492, 185757, -964220, -3622805, 11758547, -607201, 3118683, 709743, 353798, -257698,
--1826972, -4468377, -3526168, -1092532, 2994666, -2492692, 6150393, -2079301, -587874, -5043902,
--6025302, -510027, -3847754, -2124398, 8185671, -4473209, -1255204, -4342212, 1581622, 216359,
--1590749, -4562866, -884226, 47782, -5202816, 622233, -2806224, 4162360, 2717641, -2379412,
--1284732, -1309965, 1259499, -215285, 3285113, -1693828, -2179696, -2212982, 7464117, 6764574,
--2330020, -6490233, 869194, 2026151, -221191, 1925756, -2713883, 547071, -3145527, 2251637,
-158377, 7195681, 4414153, 6842420, -6228240, 2708514, 4146791, 177704, 3143379, 2292976,
-456877, 4714801, -877247, -479426, 1189169, 673236, -1942936, 1894618, -1491964, -1243930,
--147103, 500364, -225486, 735513, -1118839, 574452, -156229, 171799, 593242, 890132,
-396748, 1028108, 922881, -688269, -962610, 772557, 257698, -1659468, -707059, 1388885,
--845572, -29295972, -4744328, -8441758, -9577777, 2577517, -3241627, -8327405, -6903086, 1159104,
--6800544, 969589, 10140955, -2516314, 4353486, 3303904, 8551280, 2228551, -5954972, 1372779,
-9294846, -4330401, 4628364, -6848326, -6248104, 2059974, 2668249, 7315940, 431644, -4467303,
-4243965, -2991982, 3257733, -361851, 4612795, -3891240, -2531883, -4341675, 60666, 812286,
--1704028, 3370476, -7689602, 1013075, 7764227, 1704565, -2195802, 3013457, -3962644, -1985349,
--9708774, -2850785, -317291, 1548873, 169651, 5248987, -7793755, 788663, -1064615, 3961034,
-2107218, -1475321, 5563057, -4839892, -649614, -3876208, -7488276, -3120831, -1717450, -2080912,
-5643587, -5007932, -8090108, 360240, 2660195, -769336, -2327872, 2828236, 3104188, -2220498,
--1818382, -3102040, -1290638, 6564858, -3017215, 3642669, -1066763, -62814, -589484, -166967,
--3366718, 881005, -2011118, -41876, -228170, -430034, 91805, -719407, -1045825, -977642,
--272194, 391379, -639950, 1145683, 494995, -14551349, 8291971, 9394167, -530965, 5283347,
-2369211, 11092827, 14688251, 1917166, 1904281, 4249334, 1807108, 2474438, -2111513, 2939905,
--2445447, 3894999, 4480725, -12573517, 6510634, -1353989, -2356327, -3871376, -5124433, 2087354,
-3561065, 5763846, 1099512, 1002338, -7379828, 346819, -2168959, -2433636, -1111323, 1007170,
-403190, -540629, 7212861, -354872, -2422899, 2411087, -2833605, 3728032, 4865661, 5486821,
-2818572, 618475, -3067144, 6125160, 1916629, 839666, 615254, 820876, 416075, -3517578,
--5003100, 4535486, -4665945, 4344897, 3925600, 2916283, -668941, -3265786, 2930242, 3859565,
-8504035, 3951370, 3190624, 2010582, -8379481, -2558190, 992674, -1355599, 3558381, -7223062,
-328565, 2395518, -6801081, -631360, 2232309, -1635309, 828929, -3962644, 1457605, 511101,
--1732482, 3119757, 1794223, 122943, 3379603, -1552094, -1550483, -347892, 667867, 1393180,
-5142687, 840740, 1726577, 1215476, -91268, 1123134, -899259, -995359, -1438814, 902480,
--812286, -677531, 537408, 535797, -682363, 1742146, -1077500, 1211718, 1084479, -536871,
-1654099, 469225, 675384, 826781, 62814, 157840, 1927904, -170725, 27029840, 8152385,
-1998234, 5288716, 13511967, 5446556, 16292958, 3992709, -3595425, -1168231, -1367947, -1554778,
-4420058, 6984154, -3246995, 1500554, 4866198, -1809255, -6774774, 5382131, -639950, 2559264,
--2309619, -3398393, 5534602, 1292248, -511638, -1574642, -6172942, -3050501, 3338263, 839666,
--2126009, -1080721, 930934, 2324651, 6203544, 1963874, -5724655, -1310502, 365609, -1794760,
-2054068, 2945811, -5769752, -6957310, -409096, 1749125, -743566, 5382668, -9927817, -2102387,
--4506495, -5579163, -619012, -426276, 1459752, 5320391, -59056, 805843, 1710471, -853088,
-7079717, 4529043, -5825587, -5097590, 3876745, 8591545, -751082, -4010426, 8458938, 4484483,
-1953136, -3716757, -4049081, 4191888, 205622, 3172370, -1928440, -6143414, -3402151, -4179540,
--2665564, 2435247, -3443490, 478352, 1452236, -1227824, 1407676, 1039382, 1196148, 718333,
--2234457, 1236951, -717260, -1163936, -556198, 1660542, 1277753, 224949, -1924145, 1699733,
--773631, 2931315, -480499, 407485, -2812130, -3584687, 1171989, -3374234, -680752, -518080,
--1935420, -914828, 384936, -3029563, -1292248, -307090, 307627, -632434, 2105608, 302795,
--839666, 13263396, 6443525, 11942693, -4029216, 95563, -3037616, 12031814, -12379706, -1760937,
-3170760, -2374580, -2451890, 4025995, -1391569, -3819837, 10558103, 5964099, 1216013, 17835388,
--4875325, -1191853, -3776887, 131533, 2945811, -4609574, -593242, -2394981, 6807523, -5761699,
-1531693, 395137, -1809792, 615791, 4001299, 2723009, -5417565, -9453223, 221728, 1938641,
-7821673, 9174587, 9136469, 827318, -5269388, 6568616, -15948824, -2630131, -6264747, -9287867,
-6491843, -2141578, -3007551, 5056250, -1839320, -2725157, 13915157, 159451, -4108136, 4840428,
-372588, 3681861, 2716030, 1808718, 8429947, -5061619, -3102577, 488553, -7239704, -64961,
-1368484, -1844152, 2481954, 4160213, 8864276, -3352222, 2955474, 7649337, 4649302, 2260764,
-1445793, -2646774, -5597416, 2855080, 4270808, -941135, 428423, -896038, -714575, -3198140,
-625455, -988379, 548145, -2988224, -1498407, -2684, -520765, 2745021, 1200980, -2684,
--3832722, -1752884, 1905355, -2252710, -38655, 1460826, 1505923, -2606508, 2410551, 1860795,
-620086, 2463701, 2238752, -4460861, -789737, -1730872, 1207423, 2379949, 2932389, -638340,
--1632625, 354872, -886374, -20679730, -31088048, -5237176, 1534377, -535797, 853625, -1451162,
--6239514, -3508988, -4974646, -1333587, 5048197, 6032819, -5478768, -8069170, 6898791, 1433982,
--4436701, 364535, -739808, -4918812, -4132832, 11470247, 5834176, -6160057, 3131031, 1301912,
-4904853, -5975910, 6657200, -6646999, 4575751, 2995740, -1407676, -3097745, 2956011, -12396886,
--6154688, 7603703, 12237436, 6797323, -8563091, 207232, -6071473, 8142721, 1684701, 2116882,
-580357, -6698539, 3258270, 9961640, 1127429, 7533373, 5332202, 3454764, 5760625, 12219182,
--3384434, -12285754, 5965173, 43487, -2907156, 635655, 10573673, -4307852, -7340099, 3613141,
--1939715, -1240709, -2775086, -1640141, -3299609, -5735392, -2882997, 7099044, -9652402, -6047314,
--3556233, -6923488, -6743099, -388158, 4199405, -6345278, -107911, -2335389, -2678986, -5713380,
--3616363, -6562710, -344134, -5039071, -383326, -99858, 4638028, 3320547, -2337536, -2478733,
--3354370, -983548, -2369748, -2236604, 2817499, -4445828, 1707786, 434865, -2843268, 360777,
--1855963, 1136019, -954020, -3615289, -4476967, 18254, 1194538, 1926830, -836982, 856846,
-1435056, 68719, -2329483, -246424, -2988224, 389231, 1411434, 1374926, -11956652, -7790534,
-2020782, 1915555, 15943992, -13936095, -9534291, -5381594, -2633352, -1727114, 5158256, 4984310,
--7377143, 7585449, -1755031, 3440806, -5312338, 11307575, -2195265, -4256313, 7311108, 5274220,
-4254702, -7685307, -7230041, 9572945, -5007932, 2828236, 2342905, -3462281, 8136816, 2480881,
--4832, 1815161, 5973763, 7670812, 2364380, -6804302, 1588601, -9713069, 5805185, 2546379,
--10882910, 7730405, 1799054, -5648419, 9972914, 3185255, -2698313, 5830418, -900333, 11026792,
--2515240, -2739652, -2331630, -1423782, 14328011, 3044595, 248034, 3918621, -12036109, -7498476,
--8178692, 919123, 7623567, 1038308, 9454834, -12194486, -5024575, -7728257, -7186017, 17856326,
--1814624, 6398965, 4570919, -3794604, -894964, -2451353, 1349694, 973347, 4866735, 3003256,
-9748502, -5221607, 807991, -1630477, 2116882, -31139, -193274, 7516, -2081985, -9167071,
-3424163, 2186138, 1361505, -2406256, -870805, -1142998, -5142150, -287763, -1844689, -3299609,
-1864016, -2777770, 1195075, 1685775, 1285806, 2151779, -3582540, -1903207, -2430415, -2157147,
-1275068, 2601140, 1491964, -799938, -493921, -589484, -1124208, 3762391, -1289027, 2692945,
-1642288, -959388, 1105417, -682900, -11274, 979789, 982474, -16135118, 5031018, -6924561,
-3919695, -4840428, 13032005, 2208687, -9150965, 1448478, -9328669, 7570954, 14405857, -12282533,
-8108899, 3018288, -372588, 5956583, 15356656, -5864241, -27380, 4713190, -16791174, 997506,
-7622493, -4650376, 5461051, 5973226, -3071975, 15074261, -7515656, -13605920, -5868536, 1657321,
-355409, -2770791, -5881958, 4123169, 3794604, 24696, -9598715, -2232309, -2436857, 6428493,
--4206921, 25274272, -3181497, 3636227, -1166621, -1052267, -12257837, 1279900, 9084393, 7374459,
-24627880, -2625836, -2386928, -5078262, -973347, -6910603, -526670, 9900973, -5259725, -996969,
-1788317, 2354716, 9710384, 7926362, 2234994, 19092204, -3606162, -17634598, -17678622, -12443057,
--2566780, 5603859, -1742146, -4615479, 8413841, -485868, 7471633, -4577362, -872952, 6092948,
-5149666, -1843078, -1803349, 646929, 1579474, -1934346, -4125316, -5906117, -1997697, -2493229,
--744640, -4202089, 3167002, -1242856, 954557, -2113124, -3038689, 4106526, 1831804, -2052458,
--559420, -1676648, -1811403, 1809255, -1126355, -1988033, -4012573, 3204583, 1262720, -1693828,
--3037616, -4013647, -752156, -2749316, -2805151, 3447785, -2015413, 712428, 145492, -1438277,
-1474784, 701690, -546535, -718870, -887448, 28727426, -20703890, -15705622, -5025112, -9923522,
--11349451, 13935558, 5653788, 2794950, -4378719, -2778307, 16908750, -4905390, -7103876, -20219632,
--2916820, -486405, 9553618, 3537443, -4102768, 1261110, 8378408, 3800509, 5243618, 12964359,
-16266115, 4523138, -6046777, 4201015, -9753871, 6706055, 5492727, -3481071, 338229, -7553774,
-3063386, 212601, -14657650, 14299557, -1279363, -6645925, 8827232, -13561896, -3133179, 14930917,
-8517994, -186831, 561567, -18791556, 6599218, 10501732, 5992553, 3489661, -1028108, -13871134,
--40761388, -3252901, 8309688, 11454141, -1046361, -11956652, 20137492, -9329743, 9190693, 15244450,
-12562242, 2334852, 15196668, 1727114, 5415954, 3214246, 9221295, 1811403, 2924873, 19354734,
--6494528, -4232154, 16363825, 8529268, 4433480, -6767795, 1637456, 13308493, -1454383, 10661719,
-2441689, 2315524, 6706055, -3624953, -342524, 700080, -718333, -3027415, 5218922, 2414309,
--7303592, 3980361, 2698313, 3830037, 1875290, -2119030, -34897, -2350958, -2698850, 3191698,
-4066797, 1671279, 2447595, -2210835, -2158221, -1487132, -2647847, -3472481, -5180268, 700080,
--3344706, 2392834, -1265942, 1363652, -4800700, -3188476, -1066763, -1624571, -1478543, -2240899,
-534187, 4474819, 4675609, 1695438, 290447, -2761127, 3668976, 14352170, 13651017, -3611531,
--6997576, -1360968, -4129611, 15703474, 10207527, -27426588, -3009162, 2195802, -12865575, 5060009,
--18765786, 14208289, 3446175, -2261837, 7784092, 3815005, -3951907, -6363531, -4606890, 20073604,
-802622, -226023, 4449049, -2799245, 8063801, 23653996, 9663676, -3546032, -4196720, -3570192,
-13741748, 4798552, 13914083, 9536975, 6941741, 3914863, -6063420, -6766721, 6206228, -14191646,
-2406792, -7590281, -6259915, 368830, 9729175, 1251446, 782758, 3371549, -3061238, 16159278,
-21114596, 24038932, -113817, 10902238, -14342506, 5411122, 8311836, -6709276, 12295418, -9971840,
--19643570, 2471754, -10292889, -1682017, 930397, -10582799, 2631204, 14132590, -8667244, -8613557,
-7200513, 13077102, -579821, -5020280, 12175159, 926102, 2737505, -8515310, -1711545, -734976,
-10055592, -5256503, 836445, -2525441, 2223719, -364535, 1971390, 2371359, 1814087, -163209,
-1020592, 2006287, 2857227, -2477123, -4515621, -1012539, -643708, -4422743, -5115306, -599685,
--2329483, 3477850, -3442416, 2586107, 4919348, -567473, -8003135, -1103270, 1638530, -3114925,
--3739306, 259846, 2305861, 12246562, 4258997, 3553012, -308701, -33286, -1000727, 3331821,
--809064, 3562675, 10612864, 9237401, -1141924, -920734, -1699733, 108985, -17106318, 31129386,
-1944010, 8109972, 23763518, -8768713, 2409477, -4516158, 6250788, -6836514, 6843494, -16718160,
--19870666, -584116, -11775727, -876710, -1115618, -1309965, -3371549, 1293859, -5520644, 4984310,
--15796353, -6284074, -21304112, -1051730, 4871567, 10236518, 22982906, 12775380, 3966402, 2962454,
-6595459, 5124970, 3874061, 9315784, 9729175, -3060701, -19456202, -19254876, -13228499, -7871602,
-1930051, 6535330, -7127498, -11271068, -19734838, 606127, -7538742, 18047452, -8031052, 4563940,
--13692893, -6568616, -2397666, -5590437, -26459682, -27529130, 7566659, 2863670, 722091, 14179835,
-8075613, 11391864, 9155260, -17131550, -3726958, 32266478, -5956046, -12142946, 4750234, -7043747,
-3307662, -19839528, 8075076, -9074192, 1377611, -1257889, 13095355, 826781, 5267241, -11261941,
-2172180, -6325950, -2845416, -7706245, -5844914, 4115116, 4582730, -10286447, -3436511, 810138,
-1995549, 2636036, 1411434, -3947612, 4573604, 1933272, 1607392, -470836, -231928, 1492501,
-4645007, -4850092, 4696547, -1157494, -85362, -1677722, 3019899, -2818572, -1606855, 4149475,
--7580081, -76773, 1595044, -4591320, -1504312, -10672457, 7846369, 9214315, -504122, 2241973,
-2554432, 3202435, -4663261, 5180268, 3391951, 4066260, -3345780, 2266669, 3221226, 4711579,
-18467822, 14069776, 1833951, 14949171, -2799245, -6077379, 8180302, -11372537, -22275848, -33263448,
-2788508, 739808, 12869870, 9441412, -12411382, -6315750, -32526324, -2149094, -15149960, 3569655,
--7625715, -3604551, -6260989, -2377801, -2537252, -11264625, -5085242, -13134010, 10501732, -2612951,
-8986682, 23332410, -12309376, 6733972, -1913945, -5757941, 6002217, -12441447, -21205328, 10203232,
-4980015, 10147934, 6332393, -44394392, -20163798, 5939403, -14785962, -1235877, -12633109, 18604724,
-22389128, -1082869, 24748676, 3504693, 11242077, -3256659, -819802, -13833016, 8767639, 17901960,
-3876745, 29801704, 703838, 4109210, -8748848, -13089987, 17634598, 27966142, 9759776, 5435281,
-2755222, 10579041, 912681, 2025614, -26167626, -19189378, -1987496, 1398549, 3468186, 19678466,
-21160230, -3894999, 1389959, -7262253, 4406100, -13551696, 346819, -14341970, -12151536, 6274411,
--354335, 1580011, -8067559, 5179194, 6334540, 4261145, 6415071, 7575786, 657130, -4300336,
-3323768, -5874442, -1433982, -3625489, -8609799, -2473364, -4762582, -3834332, 7145215, 3946001,
--2546379, -5662378, -8527121, -5585068, 5754183, -5667746, -560493, 455267, 3938485, -8047158,
--6426345, 2849711, 9991705, 6367289, 2571612, -16106, -6010270, -736050, -3653944, -6968585,
-11900281, -17418776, -8582955, -32544578, -40553620, -30071214, -13728863, 9196599, -259846, -7132330,
--14812805, 32212, 26769458, 13107703, -23404350, -3851512, -4832375, -16542067, -2942590, 1225139,
-11275900, 8302172, -17456358, 12555263, -9856950, 5332739, -9181029, 2789045, -13369696, -4996658,
-6642167, -24172076, -4606890, -9110163, 7956964, -6012418, -22321482, 26286810, 25361782, 350040,
--10218801, 14322642, -34212100, -10719701, 10222022, -11514270, -7248294, -878321, -11038066, 2199560,
--2820720, -22944790, 9880572, -2918967, -7022272, -7845832, -6027987, -1430761, -6249178, -9725417,
-19080392, -9061307, -8963597, 9063992, -201863, 31256088, -6212134, -19367082, 11121818, -10111427,
--8550206, -15108621, 10528575, 19279572, -37556268, 2957622, 31794032, -5158256, -1915555, -12553116,
-21694416, -1525250, -11708081, -1560147, -10987063, -8860518, 15736223, -9411884, -731755, -5221607,
--6491843, -10998338, 4716948, 3684545, 5799817, -1306744, -8804683, -6080600, 390305, 1561758,
--13441100, -3867618, -8620536, 13448616, -4421669, 965294, 1986959, 1669132, 1503239, -10924786,
-7454990, 374736, -4095788, 9812927, 1599875, 12838194, -2190433, 14833206, 3524558, 5992016,
-7349226, -9590125, -6238440, 4696010, -7801271, -6153615, 2442226, 45097, -5449777, -12963822,
-6444599, -25663504, 51269024, 36568964, -695785, -9774272, 8138963, -30735322, 516470, 38264400,
--6737193, -13292387, 636729, 43370044, -6196564, 9531606, -9208410, -19594714, -15841987, -3993783,
--7227356, 8010651, 11107322, 625455, -16294032, -22821308, -20992726, -3365107, -4591320, -11303280,
-10649908, 8629126, -9152575, -11170673, -12195023, 6926709, 2440078, 8507256, 21721260, -78383,
--18444738, 12623446, 5018133, 4303021, 1386738, -284542, -8846559, 16104517, 8291971, -6352794,
--7576859, -5010616, -20936892, 5876589, 15504295, 4758824, -14625437, 17315160, 12738336, 7215545,
-2030983, -8960912, 4855461, -29882772, 4807142, -1768453, 26869316, -9508521, -13108777, 5778342,
--6772627, -455267, -19184008, -3394098, -5035313, 26080116, -16732119, -31376884, -20374252, -40804336,
-8190503, -8210367, -2550137, -21720724, -13770739, -36042292, -15847892, -12521440, -1692217, 8998493,
--11494943, -1911261, -2021319, -1705639, -3026878, 7893076, -13370770, 6035503, -5128728, -10412611,
-1845762, -2896956, 9934259, 5178657, 423591, -5141076, 12777528, 11870216, 7310035, -4371740,
--6008123, -6034966, -5465883, 13333189, 21788906, 2698850, 20052666, 21923660, 7532836, 567473,
--19151796, -1897302, 3930969, 3038153, -1512902, -5148055, -16139413, -175557, 11391864, 1978906,
--12014097, -2931852, -8935143, 48922900, 1705102, 8294119, -8356933, -15773267, -21721798, -6904697,
-5847061, 14470819, 11584601, -10122701, -290984, -21301964, -8092792, 7900056, -18345416, -9520332,
--7100118, 26478474, 13485124, 14658187, 13436268, -15051176, 2564096, 5712844, 5972689, -1288490,
-17498770, -3726958, 7569880, 13936095, 5031554, 3996467, 11384885, 16140487, -9654550, -18603650,
-12302934, -1872069, -191663, -19677930, -18719614, 4406100, -9492951, -7031399, 15967078, -16564615,
-21197274, 13998909, -9785546, 11442867, -12838194, -12534325, -15612206, 22298934, -15800648, 7117298,
-6499360, -25266218, 2141041, 3064996, -20316270, -34429532, -31160524, 22613002, -23490786, -322123,
--21151640, -4723927, -15204721, -1166084, 9375914, 5990943, -15472620, 15821586, 18003966, 38289632,
-9725417, -25648470, 8788040, -15771657, 8290361, -22565758, 11857868, -9646497, 1428614, -4614406,
-8983461, -2775623, -9462887, -21683142, -21900038, 2413235, 1817308, 13695577, -10030896, -937377,
-21100100, 6043019, 14543833, 4479651, -4144107, -1653026, -5354751, -14330158, 4857608, -17288854,
--10467372, 3671660, 14025753, -18884434, 10220948, 1916092, 13245679, -4645007, 7292855, 13589277,
-14748918, 15046344, -7164006, 7296076, 11500849, 12632036, 2205466, 7496329, 3686156, -5911486,
-23159538, 10746545, 11536819, -9826885, 880468, -21431886, -340376, 3600256, 4188130, -18901614,
--19663970, -31130460, 21627844, 2209761, 7450158, -5129265, 11475079, -8534100, -8360154, 6424734,
-16484084, 3845606, 10852845, 33501282, -4815732, -20244866, -42945916, -6134824, -16568373, -8186745,
--10193568, -19981798, -14017700, -29841432, -3414499, -476205, 10495826, 30917322, -25691958, -9926743,
--4176856, 10121627, 11017128, 30635464, 4234301, -35003448, -7968775, 7177427, 27447526, 7184944,
--42315628, -16995722, 38448012, 3498251, 38357816, -22513144, 1326071, 3005940, 23259396, -2143189,
-21176874, 31780074, 4594542, 26967562, 19006304, 4594005, 37427956, 31917512, 10457172, 49760416,
-38312184, 23988466, -40176736, -2575370, 15910169, 9215389, -345208, -29161218, -34794604, -18010946,
--49856516, -7836168, -37038724, -14111652, -9419400, -53446036, -50636592, -35252016, 17604534, 634581,
--11583527, -535260, -3697967, -978179, -9718437, -5126581, 12617540, 5082557, 2328946, -1560147,
-2155000, -2296734, 7894150, -1149441, -13177497, 23388244, 3943854, 5763309, -6706592, 1307281,
--617402, 12365211, -425739, 7300371, -3980361, -12495134, 5308043, 10061498, 25926034, 23079006,
-1742146, 21475, 16642998, 8432095, 19407346, 16210817, -4842039, 18665928, 10539850, 4020090,
-11808476, 7799124, -6280853, -2631741, -14421963, 9358734, -12836584, -5459441, 7301982, -27711666,
-29579976, -12831215, 19377818, 9430138, -24779814, 3600793, 15479599, -9846749, -25884158, 17084306,
--6971806, 14597520, -8644159, 3650185, 6061810, -16077673, -1821603, -7146826, -269509, -26244398,
--20474646, 25314538, 1243930, 10173704, -19980724, 20677046, 18659486, -14092861, 11922292, -20409148,
--4269735, -11483669, 14832670, 36033164, -533113, 43744780, -10989211, -2219424, 2218351, 4361003,
--2868501, -24874304, 43179452, 27931246, -3205656, 23437100, 18599356, 24332600, -9119289, -708133,
--43549356, 19622632, 20780662, -5842230, -7279970, 27213986, 14668387, 14273787, 34269544, 5533529,
--17277042, -21264384, 6617471, -6794639, -24918864, 20643760, -28898688, 1067836, 6713034, -20900922,
--32118840, -22202296, -7990250, 2117419, 26391500, 17324288, 8607651, -49827528, -13680008, 29696478,
--2097555, -11009075, 9109089, -27100170, -16485158, 22416508, 178241, 115964, -9268539, -66035,
-14057428, -4481262, -9848360, 7602629, -3208341, -19347218, -10095321, 1666984, -1127429, -1389422,
-614180, -8611946, 327491, -13357885, -17358110, 2164127, -1327682, -29286308, -2953864, -17823578,
--9846749, -3449396, 4715337, 5088463, 16259672, -14921790, -9690520, 2999498, 15852724, -16493211,
--17097728, 24289114, -3507915, -1600412, -4366371, -375810, -9960029, 4149475, 11796665, 6092411,
-10307385, 495532, 4062502, 34897, 1740536, -36783172, 20883742, 32648730, -714038, 37613712,
-11264625, -32523640, -20172388, -2490544, -11437498, -19752018, 20875152, 24609088, -2461553, 17153026,
-22902914, -18080202, 16125455, 27657442, -1775432, -37152004, 14527727, -971736, -7487739, 10364293,
-28021440, -8890045, -14264123, 6993281, -12430172, -16052440, -1228361, 24811490, 20998632, -34998076,
-11059004, 15128485, -23672786, -14951855, 28349468, -7629473, -41477572, -5163625, 34693672, -11225971,
--59882580, 62836984, -17936320, -7092602, -31008054, 40657772, 13106093, -13806172, 29381334, -17171816,
--13044353, -7398618, 75343928, 25352656, -31668404, -27764280, 28846074, -6519224, 42032160, 967978,
-31526670, -43321188, 34687228, 60143500, 5578089, -6244346, -10645613, -10253698, -24007256, 56767120,
-37934224, -33618320, 9412421, -35344360, -6174553, 4061965, 7328825, 5226439, 10409390, 1224066,
--39068096, 18479096, 2291365, -3803194, -929860, 18171470, -7861938, 4222490, -5782637, 9549323,
--3782793, 2659122, -6321655, 11967926, 377420, -2088428, 6570226, 9672803, -21433498, 2854006,
-13349832, 5394479, -15472620, 8494908, 24077586, -23397908, -36866388, 7511898, 4472135, 14687714,
-14019310, -1645509, -33310692, -10942503, 8993125, 4895726, 9254044, -4709432, 1301375, -1031866,
--11179263, 9983651, -8766565, 27043262, 61847528, 11956652, -23916526, -5699422, -5866389, 10845866,
-9306657, -19313932, -27538256, 7344394, -23304492, 4632659, -14507326, -16687559, -3628174, 2821794,
-7904351, -18599356, -7512972, -7377680, -23145042, 19406272, -7281580, 1246077, -3435437, -15444166,
-6124087, 4339528, 536334, -3339874, 171262, -569620, -9129490, -19646254, 8399345, -9754408,
-8519068, 5986111, -19634442, -15898358, -1806571, -2287070, -2238215, -4221416, 16004659, -11075647,
-1637993, -20853676, 17804250, -20431160, -10813117, 10158671, 288300, -16373489, 13020193, -22014392,
-1680943, 6631967, -578210, 2413235, 10557030, 5013301, -22680112, 11488501, 1620276, -13681618,
-19471234, 7675644, -21520470, -2346126, -17155174, -2248952, 7007776, 5768678, -21906480, 27939836,
--14744623, -8094940, 15566035, 10335839, 2571612, 10401874, -833761, 14549202, -6430640, 3002182,
--1762547, 7059853, 5531918, -4137127, -4996121, 5624797, -6924024, 780610, 1260036, 967441,
--4041027, 736050, -3762928, -6250788, -3355980, -6802692, -290447, 5200669, 9046275, 3394635,
-1147293, 4807679, 5959804, -8101382, 12674448, 3369939, -298500, -8214125, -4606353, 4018479,
-10060961, -1859721, -88047, -4808753, 1760937, 1515587, -3972845, -5482526, -4810364, -12868259,
--4586488, -37123548, -46348064, -16995186, 140025600, 112070728, 74327096, 135528224, -53813792, -128220344,
--41096932, -207234864, -80744312, 5864241, -48556216, 95051384, 129866928, 21242908, 82568600, 141779024,
-3122441, 39082056, -9192304, -166630768, -137820672, -104167992, -103435160, -50987168, 79103096, 42489036,
-61226908, 174037440, 73867528, 10805064, 104263552, 48442936, -59626496, 20330228, -50007376, -168875968,
--40581000, -88238496, -173916112, -28923384, 4083440, -42518564, 117759952, 135847664, 53641996, 159742176,
-161722704, 30163018, 62375812, 28030030, -102149888, -114591872, -107188424, -192924032, -170415712, -64983928,
--79121352, 16672526, 103380400, 141463344, 116963232, 180706448, 134122168, 71931576, 9993852, -22582402,
--104210400, -127000576, -93730144, -111598816, -93020400, -4106526, -5240934, 21129628, 100411504, 48358648,
-61341260, 96148752, -2008434, -30012694, -15902116, -60358248, -34495568, -20273320, -22270480, 24645596,
-50837380, 19662898, 28128814, 31978716, -23396834, -8398272, -9985262, -61582852, 8438000, 25622702,
--66715336, -888521, -6235756, -67350456, 24927990, 11272679, -76272712, 48027936, 71595496, 16767552,
-144330224, 89754616, -1946694, 76768784, 13698261, -97773320, -81282256, -127298536, -180623232, -135613600,
--88377544, -47559784, 61372936, 133379672, 156292784, 194695168, 190727152, 135007472, 29628832, -14517526,
--97274032, -177209808, -172392464, -153183760, -128762584, -27935004, 13528610, 22120692, 88153128, 93741960,
-64961380, 66937064, 51891256, 22429392, 31666258, 22938346, -5954972, -11979201, -28184112, -56296820,
--61058864, -60413548, -61165704, -45817100, -9196599, 4551592, 16142098, 19381040, 10968273, 4398047,
-1093069, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--5063230,
-15737834, 6034966, 3824132, 1245541, -3338263, 45634, 3016678, 5682779, 75699, 554588,
-329639, -2076080, 550293, 1931662, -391379, 1886564, 2901251, 3874597, 1621887, 1592896,
-2035278, 1813550, -3562675, 3613141, 6772090, -3209414, 1919850, 1068910, 1884954, 354335,
-4005594, -2609193, -940598, -2347737, 2306934, 6725919, -1142461, 3266323, -101469, -1513976,
--5550709, 2077690, -2881923, 2558190, 1280974, 2857227, -331786, -1710471, 886911, -1176821,
-3834332, 501974, -3064996, 3911105, -871878, 3053722, 2335389, -118648, 2240362, 4408247,
--1258425, -1538672, -1269700, 2195802, -1821066, -2370822, 2719788, 36507, 1818382, -2929168,
-4310537, 260919, -1243930, -504122, -503585, 1729261, -1647120, -2595771, 1511829, 2330020,
-2178085, -2058363, -3105261, 1242319, -134755, -364535, -1213865, -1123134, 1514513, -399969,
--255014, -952946, -1161252, 226560, -843961, 353261, 207769, 1143535, 762357, -338229,
-377957, 651761, -721555, -285078, 10201, -312996, -561030, 397821, 1071594, 633508,
-791348, 16106, 12225624, 9594420, 4808753, 707059, -1816771, 5563594, -3260417, -3485903,
--812286, -6094559, 3677029, 255551, -2541547, 1453310, 3533148, 6098317, -2836826, 3521873,
-7898982, -2247342, 41339, 1823751, 4098473, -1024887, 4466229, 3184182, 4518306, 1057099,
-3446711, -3510062, 6026913, -707596, 5814312, 2906619, -659814, 740882, -983548, -118112,
--2126546, -978179, -2623151, -1902134, 2013266, -528818, -5667746, -1249299, 577136, -139050,
--3172907, -3236258, -1675037, -1388885, 4393752, -1749125, -4874788, -6460168, -7158100, -2441689,
--3167002, -236760, 1074279, 3464965, -4691715, -2099702, 519691, -453119, -2117956, 538482,
--4937602, -444529, -5814849, 3111704, -3179350, -1516660, 3984119, -565325, 2725694, 813896,
-973884, 3126736, 745177, -2483028, -1176821, 266825, -2471217, 1316944, 2453500, 1224603,
--1942936, 1454383, 2046552, 423591, 1094680, -592706, -1155346, -768262, -1155346, 817118,
--148176, 750546, -970663, -679679, 766115, 6478958, -14046691, -3777961, -7113540, -1328219,
-1611, 7731478, -3757023, -12601434, -4430796, -327491, 4803384, 1489817, -4664872, -10940892,
--2805688, 2991982, -1217086, 6154152, 251256, 2694018, -599148, -4858145, -5270462, 3178276,
-3894462, 451508, 1272384, -195958, 2386928, 548145, -6483253, 343597, 9163850, 1229971,
--2258079, -845572, -2414309, 559956, -2079838, -3975529, 6142877, -1904281, -2532420, 5560909,
--2889439, -4934381, 246424, 34897, 181462, -7116761, 5809480, -2203318, -115427, 5342940,
-4879083, -7629473, -1912334, 1482301, 1877975, -670552, 4206921, 1158031, 2102923, 2905009,
-460098, 2323041, 3530463, 770410, 48855, 3275450, -8679055, -1920387, 248571, 4445828,
-2491618, -1063004, -849867, 3236258, 3037079, -3462818, -463856, -1226750, 139050, 1919850,
-2465311, 496606, 3039226, -292595, -2120103, -1007170, 277025, 235149, 321586, -797790,
-2129767, -417686, 789737, -306553, -915365, 629750, 9127, -402116, -742493, 187368,
--695785, -106837, -1278827, -1003412, 311922, -185220, -990527, -2017561, -703301, 460635,
-1762010, -27909772, -11086384, -5578626, -7984881, 2561948, -2791729, -2610803, -379031, 3599183,
--3250753, -3754875, -5600638, 1182727, 4944581, 1181116, -3853660, -4662724, 1367947, 4231617,
-3809099, -5309654, -7968775, 667331, -7452842, 4018479, -93416, 2825552, -252866, 2728915,
--2959769, -1154809, 7705172, -9306120, 4270808, 2258079, 1005559, -3255048, 2028835, 4689568,
-1188095, -5641440, 1109175, -3552475, 2750927, -7726110, -338766, -6992207, 5395553, -504659,
--1444183, -1932735, 2951716, -11782706, 5425618, -3345243, -7219303, 2943663, 5733782, 6605123,
-3808562, 1469416, -504122, 852014, -632434, 4290673, -2443837, 1270774, 3277060, 8240432,
-1264331, 239981, -5899675, 3817152, -2951180, 747324, 128312, 4424890, -3889630, 307627,
-3956739, -273804, -4769025, -6439767, 5357435, 535260, 978179, 2801393, -592706, 1406065,
-1131187, 44023, 942208, -370978, 132070, 1532767, 1312113, 1512365, -2396592, 1017370,
--1806571, -685047, -1526324, 1487132, -1727651, -15913928, 7796977, 12402255, 2424509, 967978,
-6912750, 2316598, 2122788, 3760781, 530428, 3935264, 3983045, -3218004, -576599, 524523,
--3889630, -2432562, -39192, 1904818, -2289755, 12896176, 6870874, -1898376, 934692, 4085051,
-5173288, 5878200, -2456185, 4134980, 4843650, 257161, 1420560, 1378148, 2762738, 1979980,
-1224603, 2713883, 2616709, -5601174, -4307316, -8615704, 940598, -3061775, -4289599, 4409321,
--1248225, 2770254, -10645613, 11718818, -842350, -5595269, -1026497, 9286793, 6740951, -1497870,
-250182, 4489315, -2132988, 1922535, -3420942, -7337952, 871342, 670552, -5876589, -2342905,
--5792837, 1021665, 2152316, 1297617, -2812130, -5141076, -7805566, -9323837, -6686727, -2622615,
-542777, -2278480, 914291, 3078955, 2751464, -3883187, -408559, -4233764, 1547262, -1483911,
-1218697, -68719, -1717987, 1220845, 1415729, -1254667, -580357, -1629940, 2187749, -2599529,
-569083, 817118, 772557, -273804, -596464, 541166, 1165547, 1147830, 955093, 717796,
-983548, 310311, 1865626, -438624, 2066953, -1295470, 657130, -392453, -523449, -1489817,
--1139240, -994285, -1335198, 519691, -1071058, -153008, 987306, 318901, 29315300, 7773891,
-2174327, -1086627, 17668958, 2073932, 8395050, 1733019, 5583458, 9203578, 3246995, -5108327,
-5429913, 6326487, 996969, -461709, 1348620, 11580842, 799938, -3957812, -7044820, -2068564,
--216896, -8044474, 1344862, 2386928, 4611185, 1966558, 3252901, 8869107, -2776160, -1411434,
-5442798, -854162, -2411087, -462246, -7940858, 5128191, 3351685, 178778, 5094905, -2554969,
--6957310, -15022185, -5509370, 5541582, 6120866, 187368, 4292283, -4248797, -4618701, 12211666,
--7083475, 5529234, -6239514, 1291711, -9090835, -9541270, 10331007, -3962644, -3733400, 14259291,
-1060857, -1616518, -6719477, 5217849, 8228084, 387084, -4458713, -8422968, -1336809, 6092948,
--1973538, 2052458, -3732864, 2988760, -1433445, 952409, 6490770, -7047505, 2175401, -2012729,
-412317, 783295, -833224, 7496329, 2329483, 1078037, -2262911, 46708, -1800128, 3138547,
--1566053, 2480881, 2490007, -2677912, -19864, -459562, -1751273, 3537979, 562641, 1633161,
-92879, -1303523, 681289, -27380, 19864, 978716, 1537598, 544387, 2029372, 606664,
--210990, 1118302, 738734, -860604, 195421, -402653, 396211, 1801202, 1999307, 277025,
--252866, 14890115, 5004711, 12335146, -7537131, 2456721, 6964290, -9446781, -3172907, -3701725,
-1033477, -4782446, -2851858, 7305203, -2173254, -1396938, -463320, 9146133, -3291019, -4265440,
-9844065, 1567126, -6863358, 2901251, -1459215, 1547799, 3758097, -5631239, -1236414, -4236985,
--7509751, 900869, 250719, 1417876, -7387881, -7779260, 3062312, -695785, 2982318, -337692,
-4310537, 1225139, -134218, -4980552, -4738423, 1301912, 4841502, 2294050, -1337346, 14015552,
-3395709, 2370822, 6444599, 2330020, 4808216, 4799089, 3222836, 1905892, 2484102, -2077154,
--1049046, 1030255, -5901822, 1537598, -9548249, 2583960, -6301254, 4937602, -3519189, 2692945,
--1184874, -4701379, 1624035, -1275068, 5070209, -4411469, 13469017, 11260331, 5272073, -9710921,
-3092377, 4250944, -4072166, 1739462, 1249836, 6531035, 6305549, 2574296, -88047, -947040,
--1291711, -3872450, 5879274, -493384, -652298, -37044, -1624035, 579821, 1995012, -1658931,
-3085934, -1213328, -2449742, -2674154, -44023, 1726040, 1782411, -541166, -577673, -2127083,
--844498, 1025960, -2433099, 2699924, 2904472, -1884417, 558346, -2368675, -714575, 320512,
-975494, -1824287, 3074123, -18502720, -35604204, -1518271, -7135552, 6176700, -1835562, -9856413,
--955630, -7981123, -8804146, -7545184, 11644193, 6047851, -7776575, -4468377, 8862665, 5135171,
-7909719, -5437966, 5116380, -4822175, -4873714, -1497870, -2128156, -15052250, 4116189, 8608188,
-3706020, -8944269, -2054605, 1597728, 2297808, -7976291, -1775969, -11451457, 2534031, -5421860,
--503048, -3980361, 2199023, 12281459, -1315871, -2262911, 6153615, 8984535, -5416491, 2465311,
-3397856, -7542500, 4059818, 3796751, -8871792, 1419487, 5758478, -1333587, -9341017, -5867999,
--6020471, 8521215, 3305514, 8346195, -4907000, -9582072, 2295660, 4826470, -2027225, -6847789,
-4591320, 6758668, 6393059, -7853348, -4080756, -1599875, 12769475, -2668249, 7632157, 2280628,
--8947491, -7264401, -1371168, 5050345, -8475581, -454193, -1554778, 4727149, -994285, 10594611,
-1350767, -2358474, -3117610, -2613488, -3005403, -1909650, -996432, 1031329, 9127, -1174137,
--3827890, -307627, -3719979, -1575716, 1582696, -1242856, 652835, -1017907, -2799782, 1791538,
--417149, 4593468, -836445, -3585224, -2534568, 1525250, -643708, 250182, -977105, -2267743,
-850940, 2624762, -2200097, -612033, 3499325, 1698123, -2076080, 2858838, -18214420, -17180,
-504122, 10504416, 2544231, -4188130, 6212134, -2985002, 2717641, -9865003, -2905009, -6248641,
--3470871, -12473122, -4738960, -7446400, 17204028, 9895068, 10484015, -12234751, -10484552, -5007932,
-5859946, -551903, -144418, 366683, 3515431, -824097, 4991826, -7112466, -6127308, -103616,
--1748589, -8776229, -8858907, -7058779, -5140539, -3799436, -3536906, -11121281, 5096516, 13673565,
--2977486, 6422050, 8759586, -6405407, 7578470, 4835597, 1788854, 12491912, -614717, 10467372,
-3855270, 1379221, -9822590, 3964255, 4820027, -2538863, 14338748, 11496017, 2208150, -4217658,
--7183870, 4202089, -7063074, 2907156, -166967, 8555038, -48855, -12590697, 882616, -4919885,
--2046015, -9414568, 11052561, 5821828, 3985193, 2710661, 12337830, -3485903, -12999792, -1954210,
-8115341, 303869, -6715718, -1638530, 888521, -2804614, 1540283, 4005057, -80531, 208843,
--877247, 1359894, -260382, 4809290, 1395328, 1495186, -1160715, 1916092, 2444910, 4376572,
--3651259, 2463164, 2428267, 59056, 726386, 4408784, 2334852, 1209570, -2678986, 3761318,
--1135482, -2037425, -2537789, -70867, -6501507, 4165582, 2011655, 832687, -3110093, 3685082,
-3536906, 6477885, 3926674, 1182190, 1045825, 424128, 5235029, -16489453, 7431367, 5449240,
-7049652, -7704635, -13674102, 3952444, 4100083, 675921, -11532524, 11011222, 3155190, -5894306,
--10158135, 4568235, -4498442, 17633526, 20541754, 3019362, -3299072, -7685307, 11659762, -13298292,
--4764730, 16371342, 4064650, -3207267, -8875550, -8189429, -4630512, 267899, -10852845, 2420214,
-11537356, -1494649, 4326106, -8491150, -7745437, -2647847, -6406481, 16757889, -6175626, 7509751,
-6185290, 6782827, 1782948, 3316789, -11655467, -11703786, -11207717, -2527588, 8383240, 19320374,
--7814693, -14015015, -3248606, -6477348, 3564286, 2967286, 10758893, -6620155, -155693, -8760660,
--1679332, 15462419, -1999307, -8479876, 11072426, 3595425, 1775432, 5784247, -12455405, 1859184,
--4230006, 1161789, 5674726, 13585518, 3793530, -15880105, 5770826, 1342177, -2474975, -6645388,
-290984, -1734093, -883153, -473520, 2217814, 3602404, 4370666, 1405528, 281320, -2606508,
-810675, -844498, 3132642, -5428302, 1993939, 2038499, -133681, 418759, 884226, -4125316,
--127775, -2757369, 4414690, 4057134, 1004486, 4882841, -1949378, 621697, 3753265, -859530,
-2969970, 668941, 2747705, 863825, -6274411, -452045, -2256469, -426276, 828392, 295816,
--2226941, 136365, -2619930, -76236, -1286343, 26761404, -11611981, -9166534, -2755759, 5607080,
--15641197, 6234682, -4198331, 7872675, -7003481, -3251827, 9754944, 7164006, 2776160, -4941360,
--1745367, 13261248, 13120588, -2770791, 11458436, -3370476, 16835198, -7912941, -4108136, 2962454,
-17632988, 12808129, 4276714, -9497783, -644245, -19621558, -2940979, 2996814, 9012452, 10423886,
-18575196, 4801237, -328565, -962610, -7116761, -12267500, -868657, -10650445, 7659001, 2331094,
-11838540, 6516003, -4039417, 11658689, -13965086, 6241125, -3114925, 937377, -2430415, 14856292,
-8747238, 4198331, 2658048, -27180164, -4318590, 15996606, 8108362, 919123, -512712, 736587,
-12952011, 5420249, -20508468, -6766184, -7922067, 1838783, 426276, -20446192, 780073, -19118510,
--12640626, -1734093, -8200703, -8948564, 11880416, 14943265, -1635846, -7383586, -823023, 4533338,
--1862942, 3856344, 6132140, -577673, 6814503, 9929964, -3219615, -5655398, 908922, -2457795,
-3012920, 1893544, -1595044, -1476932, 115964, 71404, 2813204, -383326, -3459596, 624918,
-3394098, 1190780, 3014530, -2709051, 4579509, -76236, -1702955, 1054951, -2916820, 1091459,
--5834176, -3803731, -4567161, 2280091, 213138, -4400731, -872415, 3635690, 2429878, 3146064,
--2139431, 1701344, 26844, -788127, -5575405, -2929705, -5909875, 9710384, 18914500, -4787815,
--7692824, 1058710, 7319161, 4167192, -11563663, -754841, -9367324, -549756, -12751221, -1444183,
--10958609, 465467, 11362336, 841814, 25077240, -10576357, -5024038, -9001178, 10247792, 16641388,
--13345537, -4534949, -20709258, 3838627, -140660, 5605469, 5146445, -11677479, -6849936, 9007620,
--3358665, -2631741, -11241540, 22687090, -2988224, -24419574, 6903086, -6484327, -7177427, 8695161,
-6887517, -7106024, -7690139, -2422899, -14002667, -8526047, 4770635, 3080565, 4976257, -4361540,
--10088341, -11877195, -11747272, 9704479, -17292076, 203474, 4305168, -5439576, 573915, -185757,
--2236604, -13880797, -2427730, -5686537, 8918500, 11165304, -1950452, 17398912, -858457, -255014,
--5217312, -1192390, 25271050, 2359011, -11203959, -4609574, 9917079, 7201587, -13805636, 205085,
-2135136, -9538049, 8032126, 1773822, 8973797, 1286880, 1488743, 1276679, 834834, 3772055,
-5461051, 392453, 2808909, 8469139, 811212, -3133716, 1635309, 4022237, -3102040, -1013612,
-634581, -4100620, 3861176, 3342558, 4439923, 757525, -4511327, 983548, -1447404, 679142,
--830002, -956167, 559956, -2711198, 3864934, -2019172, -2416993, -3214783, 7661148, -24696,
--7991861, 5850819, 4812511, 1913945, -382252, 4450660, 3592740, -9165460, -12147241, 30758946,
--7871065, -2763275, 2792266, 13078175, 9492951, -20071456, -8112657, -19072876, 4220879, 1027571,
--5833640, -20990042, 914828, -9836012, 4392678, 4539244, 10608569, 465467, 7733089, 36134632,
-7912404, 8963060, -5644661, -2087891, 15849503, -1458141, 1281511, 4113505, 1069984, -2402497,
--8228084, 14505715, -15446313, 6362994, -22980222, -7089381, -10736881, -14292041, -12178380, -111132,
--25114822, -8646306, 3478387, 14307610, 8307541, -24793236, 14034879, 9229885, 10233296, -15779173,
-11553462, -7452305, -17966386, -6213744, -17877264, 8650601, 21412022, 5319317, -2036351, -14055280,
-11327976, -14964203, 22356916, -4217658, -2399276, -13530758, -14707042, 2118493, 17458506, 5705327,
--12006044, -4909685, 2926483, -2515777, -4806069, 11412802, 5903433, -5353140, 14774151, -1219234,
--20975010, 26278220, 13993003, 10817412, 4961761, -3553549, -1297080, -2201171, 7851737, 1777043,
-1151588, 17295296, 6753299, 303869, 824097, 2453500, 9031779, -7246147, 5091147, 493384,
-1699733, 1652489, 5815923, 2843268, 358093, 9746355, 7456063, 648003, -3411815, -3467112,
--1282048, 7977365, 3990025, 4476967, 4300873, 5305895, -6602976, 6598681, -1756105, -1764158,
-6112812, 9586904, -1398012, -2670933, -64425, 9124121, 10510859, 4021163, 6475200, 4962835,
-16905528, 3151969, -10803453, 4893042, -3116536, 5042292, 18542984, -26087094, -11802033, -20976084,
-11942157, -4229469, 2090575, -6925635, 15139760, -14873472, -14963666, -6830609, -3461744, -10712185,
--18527416, -8962523, 3515968, 12185896, -17045652, 11263015, -6393059, 1348083, 22168474, 16938814,
--245350, 8927090, 4318053, -3523484, -2637110, -30048128, 4205310, -3049427, 2998424, 5852967,
--2324114, 819265, 30396558, -27254788, 2601140, 32886028, 4325569, 9082782, -12862890, -3521336,
-17224966, 30189862, 1560684, 26773216, -10409390, 24220932, -8483097, 17928268, 18209588, -4500052,
-35460324, -5897527, -1476395, -10524817, -15991774, -16969416, -7765838, -10186052, -24635932, -11508902,
--5214627, 9118752, 9035537, 1156420, -12649216, -2115808, -3563749, 15857556, 4931696, -8268349,
-13594645, 3058017, -1673427, -1916629, -9884330, -1522029, -3928285, 4138201, -10009421, -4786741,
--6981470, -6947110, 12637941, 4879620, -4195646, 3816615, -3230352, 2414845, -7607998, 11325292,
-531502, 3176128, -302258, -7637526, 6986301, -930397, 2559801, 8044474, 5567888, 3426847,
-617402, -11883101, 5661304, -4558034, -565325, 10218801, -244276, 3783866, 2424509, 4879083,
-6845104, -2483565, -5574868, -3677566, -4474282, 2126009, 6133750, 10519449, 6042482, -12297565,
--1602560, -13472239, -11390253, -39062728, -27616102, -19650550, -1852742, 26421566, -17279190, -2256469,
--13274670, -19374598, -15896211, -19792284, -20485384, -8195335, -24194624, -26494042, -22897544, 6461779,
--15784005, -8344585, -19697794, 18815178, 30975304, 2633889, -3481608, -10931229, 2612414, -1969779,
--736587, -2524367, 9810242, 2008971, 21146808, -18411452, 1684701, -15668041, 32101660, 7817378,
--18711562, 14720464, -13389561, 11951820, -18003430, 10561325, 1623498, -10853382, 9782325, -17148730,
--5645198, 5398774, 17576616, 7623567, 31142270, -6995965, -19968914, 1859184, -5650030, 2344515,
--13209709, -11523397, -21316996, 2688113, -22667764, -4584878, -3490198, -19945828, 13381507, 16850768,
--9747428, -1085016, -29248728, 33687040, 40939092, 6535867, -16063178, 5569499, 36034776, -16893180,
--7599408, -19265612, -11152419, -21146272, 8745627, -1025960, -11857331, 9217000, -11877732, 4958540,
--7367480, -3425773, 4953171, 2556579, -28454, -7930120, -1516124, 6931541, 4110821, -13216151,
-10495289, -9211631, 4871567, 6024229, -4094715, -7781944, 4239670, -6297496, 5208722, 3696356,
--8147553, 2991445, -1050656, 3151969, -4830228, -13332652, 3693135, 2309082, -5408975, 3426310,
--4839892, 9459665, -88047, 3851512, 1150514, 12298102, 1694365, -16558173, 9373229, 6108517,
-2873870, -31477278, 57612156, 21807160, -4732517, -17359184, -4849555, -18436684, 19824496, 49993956,
-1082332, -33157684, -15183246, 18039936, 6702834, -6594386, 23820426, -4601521, 2988224, 13667123,
--1440425, -13746580, -4483946, 11257646, -14413910, -13096966, -5323075, 4686883, 711354, -2492155,
--6052683, 10608032, 1101659, 15699179, 12392591, -16169478, 7947837, 19295140, 10794327, -14943265,
-5776731, 3209414, 13012677, 336081, 4537096, 3511673, 5367099, 27202176, 25743498, 15955804,
-34891776, -17187386, 17987324, -20707648, 13220983, -228707, 12082817, 15152108, 4886062, 3941169,
-18397492, 8551817, -4896263, 11678016, 71941, 15663746, -16608639, -9497783, 1450625, 37759740,
--26046830, 2519535, -32753420, -3892851, 3810173, 12905303, -15931644, -3151969, -16419123, 4250407,
-20267414, -12424804, -29283624, -6246493, -2870649, -7959112, 7123740, 5091147, -8279087, 2923262,
--7080791, -6940131, 6582575, -1060857, -3941706, -13243532, 7197292, -576063, -8368744, -6726456,
-6269042, 17814988, 1743757, -5129802, -2357400, 6478958, 16019154, 3178813, 1402844, 13323525,
--377957, 3613678, -1231582, -2642479, -602369, 4820027, 7589207, 4535486, -2134062, -2850785,
-6762963, 4793184, -10033580, 9525164, 2592013, 18525268, -4606890, 4690641, 11173894, -7674570,
--4686346, 6270653, -10528575, 48233020, 3953518, 3496104, -10618770, -6762426, 7975755, 7368554,
-4398047, 18611168, 7754564, -7845832, 9827959, 19858318, -832150, 21771190, -2155537, 10574209,
--22204980, 40162776, -6026376, -4704063, 6685117, -30396020, -7873212, -14632417, 21369072, 11771968,
-12073690, -14198088, 5115843, 5128728, -18963892, 5246840, 16124381, 13764296, 4675609, -4677220,
-1879048, -9102646, 30465276, 4620311, 13735305, 11253351, 16406775, -27169964, -2236604, -8182450,
-4999879, -10080288, -11982422, 22514756, -21532282, 16502875, -13694503, 17372606, -3991635, -18184354,
--1810866, -27328876, 16844862, 15691126, 18903762, -56528748, 16218333, 10217727, -17470316, -11629698,
--16250009, 29136522, -41735272, 25012816, 58469536, 1130113, -28052042, -11192685, 16899622, 34391412,
-9402757, -11716671, -25287694, -42323680, -3500935, -216896, 16736951, -12645994, -5797132, -9681930,
-28951838, 1901597, -915902, -8278013, 5975374, 1713692, -89121, 1196685, -373662, 5501853,
-18453864, 22672596, 11884711, -3308199, -1869385, 9062918, 2237678, -5502927, 2642479, -8898098,
--5453535, -10854456, -15947750, -33374044, -13254269, 5258114, 1626182, 18946174, -13401909, -9406515,
-24139326, 9099425, -6262063, -9815611, 7864085, -2285996, -9200894, 24041080, 2816962, -960462,
--7470559, 882616, -9490267, -12644921, 7949448, -27215060, 3782256, -16236587, 24575266, 2248416,
-6480569, -13654238, 10722386, -3469797, -10337449, 5177583, -10627360, -5588290, -9061307, -21664888,
--13099113, 16757352, 13184476, 10899553, 11181410, -26302916, -8094403, 5761699, -8234526, 16186658,
-10759967, 1423782, 9143449, 27135604, -8334384, -26908506, 51730732, -22305912, -29455960, 32679332,
--15944529, -8760660, 6866042, 16977468, -19724638, -5664525, 1662152, -12324946, 67472864, -162135,
--11395622, -3851512, 300111, 17307644, -33502892, -24810952, -14467597, -12840342, -1442035, -28156732,
--343597, -2076617, 10231149, 43402256, 43061880, -16310675, 33223720, -32380296, -29569240, 18216566,
-26844620, -8764418, 7233799, 3996467, 18318572, 23594940, -228707, 2083596, 30043296, -26508002,
--54018876, -5398237, -21676700, 12555263, 25074020, -1897839, -17231946, 35112432, 9992778, 7572564,
--9558450, -27692338, -16120623, 3703336, -12505871, 16914654, -1694902, -9519258, -1689533, -10849624,
--12067784, 16826608, -5416491, 7212861, -12068858, 17891224, -1715303, -311922, 10808285, 17202418,
--2026688, -2694018, -11503533, 2209224, -9919227, -8081518, -7047505, -2089502, -17146046, 785442,
--7911330, -2083059, -17190606, 5753109, 19400904, 8291435, -12178917, -23974508, -2040110, -1359357,
-13173202, -32568200, -7057705, 8757438, -7013682, 16499117, -438087, 10397579, 2518462, -19599010,
-21180632, 201863, 12978317, -13397077, -20365662, 18910742, -20161114, 6187438, -4580046, 17765058,
-179315, 3833795, -10668699, 3317325, -7508677, -26492432, -20716774, 8726300, -1513976, -833224,
-4443681, 19500762, -8678518, -6172405, -16376710, 6948184, 6207839, -2220498, -3101503, -44423384,
-2193118, 12230993, -15643345, 10795400, -24330452, -4833449, 1805497, 15094126, 19573240, 2093797,
--9054328, 5899138, 35108672, 30196842, 30501248, -1659468, -2576981, 6176700, 3840238, -14233522,
-9218610, 37997040, -27110908, -9225053, -7712151, -267362, 1656784, 4615479, -20109036, -31341450,
--11434277, -2232309, 62594852, 31322660, 21386252, -3323768, -5261335, -16312823, 27333708, 3519726,
-17565342, -6843494, -8227010, -13025025, -10945724, -46555300, -20242718, -24780350, 19317690, -2243584,
--8813273, -1910724, -18751828, -9317932, 20226074, 29706678, -4539781, 26137560, 14502494, 10679973,
-1774358, 12138651, 16085189, 12934294, -3240553, -1316408, 344671, 17661442, -14231911, -18988588,
--8830990, 9468792, -1606855, -13502840, -8361765, -13526999, 7807714, -3437048, 16611323, 32425930,
-6277095, 19810536, 26475252, 12366285, 16454557, 7762080, 5277978, 6805376, -12002286, 16895864,
--14248017, -10087268, 3891240, 1001801, -10158135, 4771709, 9457518, 16968878, 7171522, -20476794,
-11037529, 7961259, 2189897, 8829379, -5383205, -42719892, 24018530, 20854750, -1084479, 34332356,
-15537044, -23579908, -23095650, 9953587, -9451076, -21053392, 1416266, 1958505, 9441412, -5336497,
-12301860, -3168612, 11650636, 14671071, -13604846, -55350856, 29714732, -8471823, -17242684, 12446815,
-19648938, 559420, -37033892, -4993437, -1440962, -38301444, -23766202, 19975892, -5749888, -15640660,
--13062069, 8505646, -37092412, -26496726, 50256488, -4404489, -29055990, 11282879, 27336930, 11565273,
--41184440, 58851252, 23922968, -36483600, 20282984, 26536456, 4333622, -24750286, 25638808, 28427852,
-17439714, -22821308, 21521008, 39871256, 2231773, 40279276, 50058380, -26874684, -15874736, -18751828,
-47301548, 29959008, -20441896, 11402064, -12333535, -30172146, 25936770, 58773408, 8567923, -17822504,
--14730127, 35265976, -3246459, -39717712, -28292560, 7096360, -1413044, 32693828, -5793911, 25233470,
--49174156, -7647726, 2022393, 8358007, -10197326, 10356777, -413927, 922344, 5694590, 1312649,
--12818330, 3823058, -6078453, 7863548, 3156801, -17997524, 15712064, 5037997, -14893336, -10726681,
-2876018, -13006772, 2565169, 11774116, 13041668, 1791001, -12210592, -4032438, 4038880, -16822314,
-9803800, 12361453, 4044786, 983011, 12412992, 4494684, -5578626, 6005975, -4500589, 992674,
--8577587, 5363878, 19854560, 34739844, 55672976, 22512072, -23155780, -8467528, -19429896, 11911555,
--9473624, 15336791, 10051297, -25540560, 12978854, -26025354, -8817568, 256087, -9627169, 1516660,
-13573170, 10696616, 720481, -20732344, 4658966, 16755204, -6348499, 2543158, -7551090, -24252606,
-24583856, -14623827, 17019882, -24975234, -14777909, -3466039, -20574504, -6045704, 20886426, -20310900,
-27540940, 1854889, 22461068, 8934069, -11188927, -30059402, 24715926, 15397458, 10295037, 6415608,
-25484188, -18805514, -9591736, -10850698, 7971460, 9640054, -2490007, -23710366, -1068373, -3207267,
--24013700, -9445707, 3810710, 6589017, 18974628, -2170569, -16862578, 22600654, -4318053, -3810173,
-27097486, 12979928, -22188338, 7305203, -13586055, 8732205, -7107634, 10712722, -19154480, 10853919,
--6618545, 21368536, 3683471, 8286066, -7169911, 82141, -15532212, 6375342, 1051730, 842350,
--364535, 4609037, -6233608, -5679558, -711354, 2682207, -1701881, 4250944, -7877507, -1354525,
-6124087, -1296006, -242666, -1099512, 206158, 553514, -12451647, 2561411, 10075993, 402653,
--1409823, -2488397, -1176284, -9071508, 722628, -2099702, -1098975, -4595615, -7609609, -1486596,
-7577396, -4099010, -2242510, 3772055, 1657857, 6012954, -5660230, -1935957, -794569, -4277251,
--6615860, -41258528, -48598092, -26026964, 144189568, 126756296, 76713488, 168197360, -35840964, -126346128,
--44422308, -238212304, -124871880, -2457258, -61648888, 85207856, 156161792, 21930640, 91764120, 178922432,
-30035244, 62448824, 5979668, -183727968, -153493536, -135514816, -149296816, -90467584, 74131672, 31441844,
-74226160, 193390032, 116533200, 30236570, 143471776, 65557844, -87885768, 47815872, -64135672, -168209168,
--20748988, -103965592, -191249520, -86223616, -19843286, -100211248, 111897320, 120471688, 57008712, 191822368,
-216646736, 82292112, 107134200, 101164736, -112692960, -73342472, -144118704, -225082592, -207087216, -132682280,
--133310416, -38168300, 86586544, 112165216, 149781072, 211168512, 189587904, 110932024, 80908056, 14693620,
--87850336, -127601328, -93598608, -121483688, -150190704, -50711216, -56702696, -27418534, 93711888, 65073588,
-69247760, 145929024, 37215892, -6254010, 24070070, -40108016, -63005024, -34879968, -63667520, -18914500,
-40859636, 15763067, 22525492, 51873540, -12111271, 11030013, 28192166, -47307456, -4731444, 60054916,
--56549152, 5197984, 9531069, -112512040, -5695127, -1864016, -134712192, 11098195, 47505560, -16942036,
-138870256, 126500208, 23171886, 135353216, 66657892, -5469641, 22497038, -35960688, -145471072, -151259616,
--187569280, -213129696, -107540616, -16962436, 43333000, 134529120, 222994704, 256076688, 203566960, 151034672,
-69009920, -27580670, -84715544, -186134224, -233558176, -171529712, -137841072, -130813968, 8683887, 65208340,
-79403208, 130254544, 116043576, 76997488, 75474384, 54920284, 17861696, 22657564, 560493, -39524436,
--45617384, -57357676, -73910480, -64209224, -43142408, -24988120, -2066953, 14066018, 8092256, 5173288,
-249645, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--527744,
-6460705, -673773, 1967632, -1189706, 8621073, -3393561, -827855, -316754, 1074279, -1533303,
-3951907, -694174, -2653753, -484258, 5400385, 387621, -2724083, 2516851, 1869921, 3539053,
-1460289, -2718178, -1783485, 6015639, 843961, -1557463, -1187559, -1242856, 1189706, 1269163,
--773094, -7691750, -1918240, 355409, 5303211, 1879048, -653909, -37581, -3054796, 4204773,
--4307852, -5748814, 744640, 39728, -1940252, -1336809, -1599875, 803696, 523449, 489089,
--2006287, 4989142, 153545, 6692096, -1080721, -3213709, 1470489, -374199, 958315, 1539746,
-3389803, 2288681, -868657, -1860258, -1571421, 4334696, -4434017, 154082, 122407, -797253,
--3804267, 3333432, -1919850, 423591, 2907156, -2069637, -2751464, -2304787, 2947421, -292058,
--925029, -840203, 91805, -573915, -1204738, 1445257, 1495186, 1075889, 676994, 354335,
-2044404, 310311, -51540, 410706, -210453, 52076, -484258, -276489, -256087, 1364189,
-323733, -949188, 1178969, -2560874, 2239289, 1325534, -2985002, -1663226, -217970, 265751,
--140660, -456340, -1503239, 2703682, 540629, -1183800, -1572495, -93952, 5638219, -799401,
--2622078, 3586298, -1380832, -3401077, -323196, 2866891, 2172717, -1868848, 530428, -2332704,
-1374390, 1307281, -1085016, 2863133, -761283, -5206037, 989453, 2677375, 2537789, 339302,
--358630, -3778498, -1242319, -510564, -1622424, 3383361, 4800163, 2207613, -6482717, 2188286,
-7691213, 3154654, -345745, -66572, 3558381, -1761474, 1184874, -3246995, -2893197, 2950106,
-3382287, 1600949, 927713, 576599, 703838, 1567126, 331786, -320512, -1124745, 787053,
--2246268, -446677, -950798, -4666482, -2294050, 956167, 1759326, 1409286, 3176128, 2463164,
-2643016, 3744138, -2370285, -1532767, -667331, 1176284, 1406602, 2201171, -448824, -763967,
--393526, 1336272, -959925, 1207423, 332323, -531502, -388158, 385473, -203474, 727460,
-331249, 99321, -287226, 392990, 397284, -184684, 624918, 129923, 172336, -513785,
-128312, -160524, 34360, 767189, 110059, 312996, 310848, 4453344, -311922, 1835562,
--2867965, -4285841, -2674154, 2324651, -1945083, -1992328, -2109903, -2831994, 2725694, 378494,
-2000381, -887985, 590021, -5818070, -3733937, -2660732, 3729105, 703301, 831076, 2029909,
--2056753, -1054951, -462783, 664109, -4403952, -860067, -2971044, -3249143, 187905, -2867965,
-1921461, 1799054, 7681549, -1921461, 3906810, -2609730, 1614908, -1794760, 402116, 6706592,
-1077500, 2899640, -3182034, 2036351, -2862596, -1371168, -443455, 4256313, -2106682, -1108638,
--3797825, -2028835, -4484483, -613643, 4236985, 1001801, 314069, 723165, 3884261, -3841848,
--6720550, 1545651, 2113661, -4398047, -324270, 578210, -1089311, 1760400, 5251672, 1088237,
--1336809, 110595, -1873143, 338766, 317291, -1509681, -453656, -485868, -2126546, -507880,
--1214939, 442382, -463320, -843424, 1736241, -336081, -1713692, 727460, -1221381, 48318,
--1321239, -1925219, 1116155, -352187, -140123, 608275, 816044, 245350, 1779727, -848793,
--149787, 297427, -641561, -274341, -202400, -887448, -465467, 1465658, 489626, 2088428,
-256087, 937914, -828392, 2471754, -6861747, 1145683, -2402497, -5046050, -3655017, 2059437,
--1013075, -226023, 5006858, 1671816, -700617, 446677, 4257923, -1995012, 3143379, -1417339,
-938987, -4496831, -796180, 3065533, -1028108, 3805878, 4256313, 1412507, 2681670, 5586679,
--1304060, -7839389, 1786170, -3481608, 245350, -9604084, 263067, 3099893, -1927367, 3602941,
-510564, -3455838, 1248225, -7218767, -4626217, -1750199, -1775969, -5987722, 3043521, 3342022,
-197032, 3111704, 239444, 855772, -1944547, 2823404, 2140504, -1106491, 6624987, -1229434,
-5473399, 4704063, -268972, -745177, 14496, 1518808, 2236067, 731218, 2502892, 852014,
-850404, 7348152, 2798171, -3182571, -1471563, -25233, -1765768, 1106491, -1277753, 7412577,
-1234803, 3492882, -2655901, 3020436, -33286, -1437740, 635118, -2372970, -1559073, -390305,
--1718524, -1036698, -1040993, 927176, -1612760, -355945, -1136019, -564788, -553514, 2052994,
--866510, 1080721, -292058, -1707250, -288300, 1091459, 428960, 212064, 664646, -1022202,
-893890, 609885, 523449, 1025423, -576599, 262530, -1691680, -96637, 1296543, 1188632,
-281320, 244276, 161598, 976568, -13087302, 42950, -31675, 3358665, 5753646, 2018098,
--2888366, -4784057, -756988, 6223945, -1173600, -1185948, -4604205, -106837, -1911261, 4609037,
-5485747, -9402757, 6143951, 3919695, -3557307, -762894, -4922570, 31139, -1479616, 117575,
-3240016, 6254010, -2339684, 1445793, -1628866, -2139431, 2329483, 4315906, 2917357, -2711198,
--4443681, 3103114, 2161442, -1602560, -802085, 543850, -5729487, 2086280, 1743757, -2296734,
--3828427, 1483374, -2907156, 5102958, 2253784, -8960376, 4098473, -3837553, -9860171, -2861522,
--729071, 1979980, -4038343, -187905, 2186138, -4358855, -4284767, -4486094, -1363115, 1123134,
-9376450, 1472637, 1791001, -2016487, -4885526, 6380711, -1925756, -7494181, 381178, -7563975,
-582505, -734439, -2745021, -8286066, 2537789, 110595, -1809255, 2023467, 5038534, 2303713,
--941135, -860604, -11274, 2738579, 457414, 667867, 1556389, 2666101, -217433, -1256815,
--1584306, -1660542, 656593, -136365, -1287953, -1336809, 1229434, 1162326, 2351495, 482647,
--37044, -143345, 890669, -420370, -22012, -383863, 1494649, -181999, 807454, -231391,
-8153459, 2177012, 1771137, 3555159, 5131949, -1147830, 12534862, -1838246, 8968429, -10593000,
-3641596, 6165963, -2240899, 845572, -2981781, -300648, 4827543, 8799314, -2501282, -4395362,
--1296006, 4092030, 867047, 8947491, 4231617, -983548, 1279363, -81604, -4201552, 817654,
--945967, -1315334, 3906810, 5130876, -8133595, 9364639, -7152731, -3900904, 1583769, -2908767,
-4713190, 105764, -2726231, 6610492, 9277129, -6936372, -1261110, -692564, 2864743, -6568616,
--10805601, -5051956, -3312494, 3158949, -7497939, -4339528, -884226, 7736847, 4864051, -5422933,
-3850438, 2034741, -2956548, -4460324, -716723, -2752537, -3182571, 302795, -2121714, 5779416,
--4401805, -935229, 4897874, -3914326, 5294084, 6324340, 851477, -677531, 544924, -7860864,
--6972343, -1760400, 4356171, 166430, -3062312, 2865817, 6427419, -4316442, -2012729, 1730872,
--593242, -3074660, -28454, 802622, -2970507, 136365, -827318, 1302449, 380105, 2305861,
-311385, 1804423, -1176284, -508417, 73551, 186831, -134218, 1612760, 688805, 1884954,
-1811403, 154619, 532039, -302258, 1229971, 1874216, -947577, 4778151, 3884261, 5219459,
--5042292, -6671158, -3606699, 4531728, 204548, 18763638, -1434519, -466004, -4539244, -8487392,
--12473659, -2758980, 4096325, 6591701, -4136591, -7989713, 1012539, 63888, 7976828, -2685428,
--3304441, 9869835, -5409512, 635655, -7645042, 4872641, -1556389, 31139, -1723356, -11609297,
--7310571, 609349, 6407018, 4297115, 492311, -12029130, 7951058, -4865661, -4991289, -5194763,
--6906845, -1084479, 6502044, -5335960, -5901285, 4026532, -1951526, 2309082, 11996917, -5260261,
-226023, 590021, 5074504, -3569118, -3295851, -1670742, 7610682, -1731946, -4068945, -718870,
-5926518, 7737921, -7722351, -8750459, -3009162, -1302449, -2963528, 1851131, -6174016, -2177012,
--5829881, -11558831, -4600447, -2676302, 1499481, -10630581, -2983392, 158377, 7479149, 219580,
--6575595, -128849, -313533, -2005750, -3657165, 159988, 1508070, -695248, 1106491, 1054951,
--1484448, 2159832, -934692, -2157147, 2304787, 2873333, -1286880, -2757369, -127775, -542240,
-440771, 2301029, 817654, 41876, 1580011, -875636, -1428614, -1108638, -1563368, 2246805,
--6123550, 5189931, 6342056, -4664335, -5645735, -4775467, 2587718, -483184, 9190693, 16004122,
--8981313, 590558, -369367, -1119913, 1496259, 4627828, -13139379, 11800960, -9257265, -4588636,
-11888469, -2754685, -5675263, 3932043, 4398047, 259846, -656593, -9176198, 5732708, -1314260,
-1996623, -6076305, 7575786, -701153, -12641162, -13512504, 4523138, -2485176, -6966974, 3416647,
--569620, 20914880, 3519726, -3834332, -6220187, -12345347, -4365835, 2387465, -2993055, 9626632,
--2029372, -14377403, -1380832, 9871982, -4306242, 1286343, 8548059, 5757404, -4833449, -913754,
-6925098, 9227737, -4201015, 1796370, 1331440, -4464082, 2014877, -2061584, -604517, 1366873,
--2134599, -2611877, -8887898, -9747965, -8215199, 8199093, 4601521, 5337034, 2278480, 51003,
-3293166, -7116761, -3908957, -9955734, 4955856, -1269700, -1353452, -2036351, -1461900, -5086852,
--2990371, 1024350, -2040646, 289910, 405338, 340376, 1975148, 236223, 2365990, -274341,
-1751273, -2328946, 1349694, -3484292, 317828, -1665911, 2915209, 119722, -1803886, -562104,
-940598, -1511829, -1655173, -4072703, -4039954, -2275796, 4167192, 252866, 1490891, 2578054,
--10722386, 4066797, -11574937, 448287, 4214437, -1872069, -8661875, -4076998, -1765768, 7756711,
-6163278, -4619774, -4780299, 8271034, 3452617, -4792110, -5168457, -4034048, -545998, 7997766,
--1356136, 725313, -444529, -98784, 10276783, 5092221, 6889128, -483184, -492311, 3544422,
--5301601, -8944806, 7321309, 11761768, -7940858, 10111427, -2949569, -1024350, -4515621, 5210869,
-340376, -5660767, 3469260, 9562208, 7504382, 3456375, -7157026, -2943663, -14513768, 2416993,
-7601019, -4671851, -1138703, -5754183, 1536525, -3424700, 5674726, -3587908, 1915019, 6738267,
-3875134, 12693239, 6673843, 4294968, 8153459, -6806450, 12221329, 3775276, 7446400, -2430415,
--8356396, -12946642, -2418067, -2167885, -3336653, -3034395, 4869419, -8897562, 13514115, -2303176,
--10842645, 6213207, 10115722, 4185446, 1349694, 2112050, 3831648, 1289564, -2176475, 2597382,
--1987496, -23085, 4286378, -3221, -98784, 4638565, 725313, 2548526, -321586, -2157684,
-771484, 468688, -1779727, 1458141, 1965484, 518080, -1244467, 1130113, 460635, 3598646,
-869194, -636729, 2347737, -3054259, 981400, 718333, -3263102, -4873178, -1281511, -1894618,
--1168768, -2404645, -1619203, -999117, -324807, 6007586, -12783433, 9402757, 3255585, -1932198,
-13877576, 10739029, -17622788, -11799886, 11119670, 19087908, -1762547, 2820720, -1624571, -2404108,
--1906966, -787053, 4831838, 2878702, 11536282, 2845953, 11039677, 3124052, 4804995, -1493575,
--6236830, 2683818, 865973, -5085242, 8451959, 875636, 3391414, 1980517, -1745367, -7830799,
-1023813, -8884677, -2997350, -10283225, -6880001, -4155381, 8650601, 1241782, 4263829, 10592463,
--4574677, -878321, 1247688, 3808562, 1149978, 265751, -2968359, 7843147, 17274358, 8315057,
--13746043, -9796284, -10172630, 11933567, -1807108, -11045045, 6454262, -6189048, -674847, -1804423,
--767189, -848256, 378494, 10462003, 17291002, 6540699, 14892262, 9552544, 4830228, 1941325,
-3752191, -4792110, 15850577, 5131949, -8315594, -11133092, 4917738, 3664144, -3051038, 7943542,
-14988362, 3459059, -5788542, 9339406, -876173, -6867653, 1424319, 5237176, 850404, -909459,
-593779, 2876018, 5052492, 2243584, 2237141, 574452, 3295314, -1398012, -651224, -1945620,
--562641, 6914361, -3677029, 2559264, -1089848, 1649268, 162135, -1843615, 1023813, 2451353,
-3003256, -1429687, 1225676, -2791192, -85362, 1389422, -5006858, 2123325, -7150047, 1994476,
-17193828, 3285650, 6038187, -5516349, 4406100, -8470212, -14982993, 347355, 7969849, 2392297,
-6393596, 9030706, 9903658, 591632, -10875931, -9211631, -14397804, -22244172, -419833, -2677912,
-9803800, 7313793, -8383776, -4652524, 5735929, 11638825, -14595909, -9394704, -2833068, -7975755,
--5469104, -2979634, 4472672, 9038222, 373662, -5487358, -6776922, 9133248, -7327214, -3069828,
--251792, 12855374, -936840, 1056025, -20212116, -1522566, 4891968, 10369125, 13438953, 2905009,
--13032541, 6135361, 224412, 6106370, 8447127, 1429687, 4226248, 9749039, 16994112, -11324218,
--4514011, -995896, 5178120, 18124226, 7590281, 6055367, 10124312, -3487514, -6029061, -10878615,
--13746580, -8132521, -572304, 8796630, 20136418, -12583180, -9290551, -1290101, 19745038, -11075647,
--6473053, -9892383, -1860795, -8865886, 2797634, 1694902, 4669703, 10513006, 1901060, 6735583,
--4407174, -4329864, -5638755, 456877, -2865280, -6553047, -5919002, -2866354, -1586454, -1357210,
-6643241, -5000416, -1549410, -1879585, 4741107, 1208496, 3445638, -2251100, -2318209, 4786204,
-1553704, 1270237, -4028143, 6166500, -3144453, -157840, -2205466, 1966558, -2285996, 649614,
-4022774, 4904853, 8951786, 5057861, 12610561, -14915348, -10645076, -1661079, 21887154, 8849780,
-555661, 11842835, -7371775, 17770428, -4169876, -15599321, -3020973, -15501611, 12607876, 7532836,
-4950487, 4909148, 297963, -4970888, 6109054, 9084393, 4582193, -3164317, 8145943, 10880763,
-9752260, -1212791, -8446590, 14743549, 3481608, -899796, -2461553, 1774358, -9605694, 9568650,
--1796907, -2649458, -12246026, -6669548, -7553774, 17200270, 6147172, 187905, 2286533, 8893267,
-12786655, 6521371, -16492138, 15035607, -1752347, 8700530, 3727495, 13214004, -3007014, -17277042,
-5446019, -780073, 7178501, -3059091, -7042673, 6441914, -2727841, 4376035, 21794812, -2629594,
--9989020, 68183, 2896419, -10545755, 17575544, -7783018, -10541997, 15498389, -8970039, 7916699,
-1088774, -11188927, -7925826, -11190537, 3585761, 9429064, -5546951, 5479305, 10471130, -5750961,
-7407745, -2354179, 12385612, -4330938, 3744675, 4065187, -3315178, 96100, 556198, -5537287,
--643708, 5159867, -7757785, -1453846, 5852967, 3017215, 271657, -4729296, 2495913, -1217623,
-2046015, -4944044, -4758287, -2645163, 1146756, 1329292, -5743445, -3570192, 5600638, 816044,
-2518998, -5856725, 2857227, 631897, -2567317, 1300838, 981400, 2053531, -3032784, 362925,
--1404454, -199716, -6242735, 4671314, -14404783, -3122441, 7761006, 1553168, -14087493, 3477313,
--4937602, 10128607, 2518462, 5071283, -23530516, 6954626, 447213, 8893804, 15185931, 558346,
--1910724, 1018444, -7648263, 15155866, -14636712, 4517232, 9269076, 6081137, 8535711, -4147328,
--7053947, -8448738, -15149423, 5749888, 2309619, 8568460, 16090558, -6332930, 13797046, 7252589,
--13311177, -7839926, -208306, 1186485, 707059, -389231, 6823630, 11574937, 10957535, 4362076,
--27811524, 6603512, 8254391, 7953743, -18331458, 10808285, -9416179, 9339406, 1138166, 4798552,
--2506114, 6929930, -2238215, 23349590, 11335492, -10873247, 1306207, -30019138, 4971425, -9066139,
--9019968, 8039105, 5978595, -15246597, -29599840, 18388902, 11502996, -28090696, 10851235, -6604049,
-10628433, -2655901, 2558190, 4018479, 303869, -19042812, -6976101, -3048890, 5952288, -518617,
--4710506, 7523172, -9981504, -4293894, 10421738, -1251983, -875100, 3260954, 2198487, 3724811,
-1899986, -5937256, 2349347, -8704825, 5224291, -4019016, 3007014, 1842004, -2165737, -1644436,
--1447404, -3344169, 1589138, -5171141, -701690, -4442607, -2937221, -7081864, 3510599, -2389613,
--1701881, -4247723, 1855426, 2935610, 2297271, 1402844, 746787, 576599, 2627446, -581431,
-2847027, 1879585, 6504728, -3843996, -3449396, -6016176, 10919954, -8339753, 92342, 1622424,
-28033788, -3811247, 20246476, 4985920, 15248745, 969052, 4363687, 4951561, 27030376, 27078158,
--13978508, -12780212, 15475304, -19614042, 24159, 5306432, -19547470, 11137924, 1584306, -1560147,
--3543348, -5959804, 2371359, 2110440, 3680787, -12015171, 113280, -2930778, -15786689, 8064875,
-11023034, -17653390, -13128104, -6453725, 9536438, 9248675, 8868034, -951335, -3564286, 8304320,
-28147606, 15166066, -5521718, -3663607, -3817689, 18992346, -15170361, 7017440, 4042101, -23685134,
--9800578, -1064615, 3240553, -20074678, 13843753, 9006010, 4045322, 3823595, 9605157, -19010598,
--2289218, -15768972, 714038, 9791452, 16480326, 10140955, -10407243, -5537824, -817118, 555125,
--11959336, 26775900, -2119566, 3567507, -6306623, 9188009, -2032593, 5375689, -2421288, 3344169,
-2522220, 5831492, -679142, 105764, -2182917, 1389422, -415001, -1499481, 7894687, -2348273,
--5829345, -327491, -657130, 4049081, -5943161, 1365263, -4931160, -7715909, 4760971, -1422708,
--5289252, 442382, -115427, 930934, -4660040, 6186901, 1586454, 7594576, -9385040, -631360,
-4375498, -2345052, -7627325, -120259, 8175470, 3722126, -2525441, 12914430, 20024748, -1394791,
-1302449, -12402792, 1042066, -546535, -8865886, -14810658, -2843268, -6857989, -11098732, -8113730,
-12550431, -10638634, 9101573, -3206730, -2540473, 17577154, -12169790, -6789807, 2684892, 7090454,
-1030792, -23255100, -14295799, 2660195, -3752728, 3772592, -3260954, -7299297, 14817637, 3175592,
--1289027, -6089190, -33454038, 20084340, -6062347, -364535, -2860448, 1278827, 9573482, -5570036,
--9139154, -15608985, -1487132, 6892349, -9651865, -12367895, 5083631, 19638202, -3350611, 18263812,
-13430363, -13368086, 24570972, 16254841, -16232292, -25052544, -7223062, -10917807, 1324461, -7937637,
--1964948, 12001212, -20966420, 10262824, -3422552, -11769821, -13164075, -13129715, -15930034, 3317325,
-9533754, -8547522, 13630616, -1773822, -7983271, -16409459, 250719, -1837709, 6328635, 19588272,
--7099044, -14838038, -5196374, 434865, 5019743, 13406740, 3509525, -1657321, -11001022, -79994,
-395137, 4989679, 2058900, 31139, 3688840, 5495948, -4131759, 6860674, -3966939, 3144990,
-7944616, 7181186, 421981, -11214160, -4626217, 1716376, 2753074, -7793218, 12649216, -7668664,
-5773510, 6856379, -5212480, 693637, 1376537, -2954938, -10751914, 2296197, 4805532, 869194,
-9005473, 6309844, -6150393, -21228950, 38631084, 54366768, -5245229, 6623914, 3491272, 13167833,
-26363584, -25164214, 303332, 4359392, 500901, -9075803, 1362042, -11212549, 13235479, 32386200,
--6834904, 695248, 1851668, 9810242, 904091, 3802120, 12460237, -24955370, -1854889, 24482388,
-25161530, -29403346, -6233608, 4227322, 4145717, 8748848, 22148072, 6226629, 44668196, 7430831,
-13790066, 6576132, -7008313, -9270687, -525597, -31345746, -45076220, -15269682, -14622753, -46976204,
-7362648, -1124745, -26223996, -12809740, -43936980, -4815195, -6040335, 29944512, -29339996, 18299782,
--20045150, -1644436, -13179107, -10420664, 11793980, 26907434, -20734492, -7795366, -1870458, -6152541,
--2190433, 11343009, 21594558, 23032298, -16434155, 46338940, 31102006, 4038343, -17568026, -38151120,
--8641474, -14208289, -10399726, 2505040, 12259447, -8017094, 4580583, 14377403, 2347737, -4578972,
-14632954, 9723806, 5026723, 6402723, 15362561, 15469935, 134755, 1254131, 6222871, 5791764,
--2512019, -4625680, -2635499, 2819646, -363998, -1963337, 985695, -3093450, 2158221, 10084046,
--415538, 3550864, 12345883, -3234110, -4396973, -4728222, -500901, -6855305, -1354525, 5833640,
--3180423, -1880659, 1207423, 31139, 1078574, -981937, 4878546, -3294240, -3367791, 7974144,
-5679558, -6235219, -290447, -3340948, -19413790, 35566088, 59204512, -13906030, -3015067, 10546829,
-26513370, 8959839, -15373835, 9681930, -13127031, 3459059, 8405788, -3124052, -17709224, 5393942,
-18905910, -4646081, -26976690, 21203716, -6160057, 17322676, -6340983, -4198331, -6614787, -10856067,
--384400, 19240380, 10764799, 3248069, 15560667, -7283728, -6081137, 5989332, -8214125, 10813117,
-6325413, 16499117, 28195924, 24734716, -17672716, -32952600, -11989938, -1982664, 25937844, -9806484,
-4680441, 10525354, -10168872, -15130096, -24276766, -24919938, 19801410, 21124260, -16698296, -60122564,
-5075041, -4133906, -8157754, 4786741, -5904507, -24052890, -11177116, -5555004, -16683264, -7070590,
-25745108, 9825811, 14890115, -5675800, -8269960, -5322002, 14370961, 2518462, 2792803, 12380780,
-35682052, -2974802, -5094905, -17827872, -16853452, -24665998, -2534568, 14166413, 9713605, -9986336,
-7560753, -4539244, -5747740, -10205379, -9264781, 8705362, -7136088, 8498130, 4081293, 4862440,
--5145371, -7590281, 8880382, 5545877, -2018635, 6736656, -8942659, 3979824, -1063541, 5578089,
--2832531, -5057324, -2760590, -2432025, 6320581, 3190624, -88584, -6248641, -1311576, 12971338,
--8974871, -79457, -8704825, 11154567, -5708012, -2312303, -8012799, 1340567, -3295314, 1341104,
-9553618, 9546639, 2186138, 310311, -3328063, -12590697, -1873143, -10380936, 5513665, -14761266,
--24550034, -5179194, -4205310, 4697084, -8458938, 18991272, -11318849, -38155952, -20898238, 13452374,
--18187040, 21486648, 18901078, -8221105, -3013993, 2951180, -11809549, 251792, 6112812, -1472637,
-3273302, 27168352, 22362820, -5796595, -35850092, -26900990, 1899449, 19132468, -14479408, -5970542,
--16994648, -21423296, 1873143, -5901822, -25467008, -27406724, -40615360, 16485695, 5462662, 1089848,
-23236846, 31534724, -1352915, -23228256, -17906256, -18752364, -10831908, -6519224, 7005629, 12321187,
--10949482, -17062294, -21169356, 11339251, 9694815, -20507396, -19832548, -7745974, -3561065, -11906186,
-7343857, 50964620, 30379378, 59490128, 19714436, -31396748, 36840620, -1484448, -19051938, 1956895,
--17944374, -38801272, -16226923, 9035537, 18436684, -4283693, 16974248, 9968619, 37655588, 41310608,
-33793876, 11332808, -9657234, -5903433, -5720897, 7250979, 9458055, -14268418, -5431523, 2417530,
-30681098, -4250407, 2529199, -3318936, 11013370, 11246372, 13039521, -644782, 124554, 236223,
-2729452, -1194538, 1728188, -11222750, -3732327, -3841848, -10661183, -10877005, -5165235, 3946538,
-12893492, -8429410, 1830193, 4565014, 14669998, 20038706, 13587666, 12805445, 14137959, 3141769,
--5494337, -11041287, -16031502, -19791210, -15716359, -9215926, -18910204, -19098646, -7524783, -3382824,
-35376036, -20088636, 2306934, 10405095, -4464082, -26219702, 26520886, 25340308, -14579803, -20045150,
-2738042, 35087736, -18402324, 10011569, 22471268, 6896107, -8469139, -16741783, -11023034, 7803419,
--2678449, 5954436, -9838696, 6573985, -21779780, 31876710, -3094524, 7184407, -1519882, -40111236,
-12492449, -11077794, 20683488, 12504797, 22100292, -8599598, -38729868, 27837294, 12495670, -13121662,
--24119462, 19969450, 10659572, 21234318, 21376590, -18622442, 8567386, 22407918, -32811402, 30090540,
-14768245, -911607, 9535901, -16962974, 37616936, -4202089, 24748138, 11162083, 43683040, -3024731,
--7686381, 6194954, 17756468, 11842299, 12351789, 44189308, 2568391, 10831371, 25777856, -17022030,
-17681306, 2133525, -29388314, 10970420, -9921374, 33247878, -24487220, -29356638, -30617748, 26167626,
-42871828, -13657459, 10892037, -50549080, 4794794, 2473901, -1961726, -23653996, 3930969, 10062035,
--7853348, -6476811, -6391448, 16061567, 7480760, -10071698, -10937134, -6256157, -2609193, -3130494,
-4561792, -17402670, -10492068, 9307194, 3789235, 3338263, 521302, 8025684, -1401770, -883690,
--10286984, 13781476, 17095044, -7283191, -26714160, -17977122, -240518, 77846, 5068599, 1398549,
--8458401, -13060459, -7248831, 4996658, 7651484, 21429740, 7175817, 1174137, 301721, -15879031,
--3330210, 16620987, 9726490, -64912524, 3564823, -7966628, 2028835, 50225884, 41371808, 59481540,
-31433256, -15845745, -12112345, -24675124, -32855962, 11545946, 2891050, 8606578, 10457172, -9598715,
-14966887, 25347824, 4671314, -6818261, -8591008, -17995912, -11945378, -10886668, 4963372, 8056285,
--25805774, -15292231, -3558381, 17288854, -7815767, 11125576, 13854491, -36697812, -36132488, 6827388,
-10472204, 8019241, -27275726, -12568148, -24499568, -11886322, -11218455, 23596014, -31053150, -43262132,
--16256988, 8545374, 7347616, -33376728, -26781806, -21077016, -15946140, 17986786, 25393458, 1111323,
--8634495, -10588168, -5896990, -5663452, -11484743, -37050536, 12168179, 27769648, 25262460, 7827041,
-34507376, 46639048, -4078072, -6047314, 35730368, -8701067, -21767432, -49213344, -16762184, 6650757,
--26998702, -18113488, 12623446, -4469451, 17508972, 30611306, -18685792, -29019484, -9611600, -12483859,
--7213398, -7917772, -7820062, 3205119, 4423280, 3525631, 6214818, -10465225, 9054865, -14434848,
--1752347, 8875550, 11951283, -12907450, -17948668, 10196789, -4113505, 596464, -12539157, 14717779,
--8693014, -3185792, -3481071, 13613973, -11619497, 14773614, -6627672, -7006166, 9784472, 2513630,
-7784628, -6276558, 653372, 2829310, 15963857, -1957968, 3758097, 42610908, 14971719, 3436511,
-15572478, -17681306, 1165010, -9041443, -13186623, 7865159, 3127273, -11043435, -18305688, -10556493,
--16990890, -13861470, 5599564, -10703059, -5180805, 7970923, -5254893, 1782411, -5849746, 21161304,
--16540993, 17342004, 6344741, 1924145, -15996606, -6944425, 12832289, 5149129, -251256, 10182831,
--1772211, -4281546, -6524056, -5582921, -4357781, 1868848, -40265, 2098629, -18743238, 9822590,
--7811472, -7420093, 6597607, 4437238, 2503966, -3608310, 13231720, 11281805, -16396575, 14650133,
--2011655, 9913858, 19902878, -4242891, 10794863, 10157598, -9825811, -7117835, -13111998, 1094143,
-2313377, -21188148, 8758512, 3113851, 16479790, -6562710, -37381784, 23375896, 1472100, 585726,
-532039, -16621523, -5171678, -4453881, -5539434, -24184960, 13765907, 6795175, 14842870, -10837276,
-6559489, -12146168, -10937134, 394063, 9438191, 7470022, 293132, -1497333, -3333968, 716186,
--5479842, -1257352, 16005196, -6608344, 3216394, 1608465, 4576825, -9922448, 10668699, -522375,
--1979980, 2359011, -1015223, 2298881, 3601330, -9046812, -1187022, 16106, -1633161, -1777580,
-4909148, -5839008, 7144678, 10176925, 3932580, -6592775, -287226, -1501091, -5971079, 7374459,
--2056753, 3955665, -21979496, -62221192, -92652112, 19484656, 72727216, 3061775, 199157632, 183672128,
-126109904, 217009664, 166875584, 22737556, 3547643, -22484154, -159137664, -162250448, -123415888, -212531088,
--198250864, -56649008, -66169340, -66847408, 15864535, 40253508, -33210298, -11047730, 63720136, 40621800,
--2214056, 47418048, 32847910, 2487860, 39664024, 93978176, 61793840, 21552146, 96267400, 71271760,
-5556614, 82744152, 112146968, 26933204, 12138114, 114417392, 31335544, -44549012, 57605712, 88132728,
--45041860, 20586852, 123179128, 11701102, 20353314, 148707344, 116867136, 9869835, 92727808, 122989608,
--42707544, -25306484, 34996468, -100618736, -168106096, -113456392, -185379376, -275375040, -252932768, -282906816,
--360331104, -380201248, -336338880, -355431616, -334764256, -251346320, -200756976, -104570104, -26079042, 59113784,
-206190640, 239972704, 260528960, 404256832, 395223968, 265348448, 341647456, 266976784, 106180720, 117365888,
-165971488, 81170048, 52882860, 124010200, 88442504, -566936, 42354820, 96364032, 23981486, 6656663,
-71806488, 16535087, -74924096, 24137180, 58799712, -17300666, 52645024, 140332144, 55506548, 31452582,
-123509840, 67342400, -24438364, 14312442, -32136020, -148364816, -181694304, -180536272, -227627360, -257132176,
--212735632, -204527424, -233190960, -210472192, -174064816, -200471360, -183533616, -123744448, -98538896, -94358824,
--38999912, 21944062, 26232050, 83369072, 141111680, 148402400, 146712320, 165781440, 153117728, 109302624,
-92571040, 82350096, 56575992, 46007688, 56799332, 50285476, 33621004, 34934728, 38308960, 31956704,
-31077310, 40149356, 34928820, 23197118, 17160542, 12417287, -5382668, -11112154, -11217381, -10800232,
--5050882, -1528472, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
-3755412,
-5177583, -3042448, 206695, 171262, -3719979, 4968204, -1986959, -1937567, 1413044, -5119601,
--2303176, 5493263, 1240709, -2234994, 3896072, 1211181, 828929, -801011, 1896765, -30065,
--6574521, -310848, -2443837, -292058, -149250, -6285685, 91268, -4039954, 213675, 637803,
-2801929, 3360275, 1102196, 836445, 610959, 2903398, -1593970, 994285, 179852, 457951,
-600759, -868657, 2587181, 3878892, -7452305, 3462818, -1952063, -4476967, -2869038, 5717139,
-2861522, -1927367, 3241627, 947040, -2051921, 2016487, 40265, 0, 296890, 393526,
--779000, 46708, 420370, -326954, 2454037, -1524177, -3442416, -3330210, -22012, 1124208,
--212601, 163209, 1877438, -737124, 3296924, -3481071, -1040456, 2685965, 2895345, -1988033,
-3264175, 1151588, -845035, -2199560, -1021129, -937377, -877247, -868657, -433792, -121333,
--478889, -915365, 281320, 662499, -1309965, -339302, -420370, 684510, -1138703, -256624,
-164283, 2767570, 198642, -2206003, 1379221, -1188095, -1768990, 435402, -3721589, -444529,
--2790655, 977105, 1734093, 1672890, 1323924, -2901787, -211527, -2404645, 2567317, -4961224,
--2822867, 2502892, -5444945, -615254, -367220, 1385664, 1184874, 2670933, 5633924, 2601140,
--712965, -21475, -2029372, -1576253, -9976672, -9179419, -624918, 6787659, -1698123, 5420786,
-463320, 1546725, -1698660, -7719667, 3978214, 1216550, -2333241, 1895691, -4101694, -837519,
-2304787, 1015760, 7221988, -4969277, 4377109, -2280628, -5710159, -2652142, -1566053, -1570884,
-2005750, 1696512, -4605816, -2055142, -2627983, -983011, 4424353, 4728222, 5081483, -3738769,
-627065, -2347200, -316754, -1975148, -2520609, -3056406, -3432753, 1884954, 531502, -533113,
--1250909, 447213, 1921998, -1968169, -1728724, -885300, 2202781, -770947, -424128, -967978,
--1120450, -282394, 480499, -32212, -187905, 364535, 482647, -147103, -214748, 1409286,
--1116155, -708670, 541166, -687732, 1090385, -689342, -758599, -155156, -139050, 681289,
--359167, -347892, 408559, 85899, -1111323, 357019, 259309, 3708704, -3513820, -4534949,
--3939022, 117575, -1560147, -1253594, -3118146, 678068, -3482682, -248571, -1437203, 5337571,
--3439195, -3758633, -8400956, -10890963, -2643552, -4852776, -4474282, -1062468, 2248416, -2761664,
--6545530, 4059281, -9490267, 2855080, -1600949, -1698123, 6123013, 4330401, 2259690, 855772,
--1065152, -968515, -2314987, 1000727, 4152160, -3339874, 3936875, 3655554, 1050656, 551903,
-1633161, 2804614, -6175626, -2660732, 5869610, -4543002, 374736, -75699, 3586835, -433255,
--1379221, 699006, 6090264, 3397319, 2114198, 1988570, 3390340, -5364414, 4151623, -4373888,
-3843996, 2561411, -1151051, -747861, -1841467, -2388002, -3930432, -173409, -1232656, -3099356,
--3468723, -1920924, -2020782, -323196, -240518, -921807, 4624069, -1884417, -874563, -3119757,
-3203509, 46171, -716723, 711354, -1356136, -2239826, 44023, 1309965, -158914, -191126,
--1479079, 454730, -492311, -1295470, 81068, 326418, 724776, -136365, 474057, 434865,
-1082332, 408559, -1191853, 82678, 608812, -140660, -1045825, -620086, 1521492, 821949,
--827855, -328028, -331249, 2185602, -5772973, -137976, -2709051, -5302137, -2465848, -986769,
--3696893, -1248762, -3410741, -1330903, 2685965, 3613678, -5990406, -3408057, 1962263, -1193464,
--6544994, 4353486, 7795903, 1634235, -1836635, -3644817, 862215, 3765076, 7052337, -3586298,
--1494112, -4521527, -3625489, 3897683, 3912715, -5487895, 3223373, -1754494, -3500935, 5544803,
--14496, 3023657, -7596187, 522375, -4871030, 1101122, -6051609, -3801046, -988916, -1414118,
-12621835, 4005057, 3272765, 2462090, -9397388, 5253282, 3656091, -2077154, -236223, 4095788,
--581968, 4327717, 5011690, 4982699, -2891050, 363462, -1613834, 2651069, -2369211, -2507724,
-1650341, -2355790, 1112933, 1557999, 86436, 2933463, 1164473, -5575405, -673773, -712965,
-1751810, -6319508, -2030446, -1606318, 4454418, -1359894, -740345, -3417720, -903017, 219043,
--321049, -1594507, 46171, -1036698, 1152125, 403190, 10201, 180926, 425202, -821949,
--2349884, 1240709, 526134, -1357210, 652835, -744640, 281320, 285078, 843424, -194347,
--281857, -595927, 540092, -978179, 918586, -1112397, -56371, -97174, 733366, -740882,
--284005, -1073742, -615791, -991601, -7810398, -4358855, 3197603, -3422552, 9165997, 4029753,
-8973797, -139586, -4384088, -4676683, -6294812, 9576166, -2345052, 4373351, 4894652, 1009317,
-3446711, 3122441, 3048890, 1209570, -6323803, -365072, -2442763, -951872, 4339528, -397821,
--386010, 3018288, 1911261, 3126199, -2747169, -9982578, -5950677, -3784940, 7348689, -6644315,
--2007360, 4494147, -505196, 831076, -5566815, 9654550, 528818, -3769371, 7631083, -4693863,
-11820287, 6100464, -2665564, 1361505, -3365107, -2308545, -10885595, 3852049, -4957466, -777389,
--423054, -2389613, 4669167, -1826435, -4750234, -4638565, 1082332, -4238596, -4658429, 2657511,
-417149, 3355443, -1816234, -9943386, 3438658, 4315906, 5561446, -5351530, -6011881, 780610,
-9859097, 1583232, -5085778, -2336462, -855235, 2699924, 501974, 2875481, -2888903, -1100585,
--559420, -3565360, -2908230, 4379256, -717796, 1717987, -367757, -1247151, -2774012, -267362,
-124554, 1089848, -504659, 1013612, -705448, -2266132, -891743, -311922, -33286, -408022,
-1726040, 99321, 1867774, -620086, -109522, -284005, -1987496, -2684, 1066763, 1044751,
-7885023, -7255274, 3623342, 9255118, -6672769, 1830730, -3749507, -7276749, 10769094, 4022774,
-10008884, 9215389, 1359894, -7356742, -4494147, 3813931, -468688, 1588601, -7945153, 829466,
--14125611, -5944772, -11016054, 6795712, -6253473, -230854, 2042794, -1828046, -2842195, 3340411,
-3368865, 9771587, -1347546, -2175401, -7472170, -6401112, 6260989, 1337882, 2170032, 11687680,
--3520800, 75699, 6241661, -2799782, 2895882, 2137820, 6247030, 5598490, -3862786, -614717,
--7919383, 8252243, -5401995, -7171522, -6871411, 4355634, -2535641, -3783329, 8151848, -2539400,
-8449274, -5194226, -3924526, -1084479, 5542119, 7152195, -520228, -7737921, 2816962, -4948876,
-10087804, 2079301, 5936719, -8104604, -3551401, 2161979, -2051921, 4872104, 745714, -2764348,
-2945274, 6459631, 9148280, 7031399, 132607, -1657857, -83215, 1514513, 168577, -1589138,
-1097901, -1339493, -195421, 2594697, 164819, -1286880, 2813204, -899796, -1457068, 721018,
-1001801, -58519, -1725503, 637266, -1180579, 243739, -2357400, -2947958, 759672, 1104344,
--61203, 2276870, -802622, 1027571, 4663798, -12346420, 4294968, 3688840, 2447595, -9330280,
-7118909, 11783243, -11493869, 4388920, -7074885, 4643397, 606127, 4173635, -3420405, -241055,
-2692945, -7796440, -3893388, -3351148, 6166500, 6513855, -2151242, 3068754, -1607392, 4817880,
-6110128, 2405182, 1833414, -6197638, -2349884, -7743826, -8613557, -5996848, 559420, -2863133,
--419833, -3578782, -8577587, -2887292, 1724966, 789200, -539555, 12967580, -10505490, 3878892,
--5243082, -1500017, -3275450, -3289408, 5485210, -3274913, 399432, -3969624, -2677912, -4824859,
-6587943, -6068789, 5400385, -1403381, 5394479, -483184, 797790, -552977, 5213017, 3034395,
--175020, 11246372, 423591, -5623186, 2936684, -5057324, -6243809, -7489886, 7267085, 2586107,
-6470905, 6629282, 7740068, 4570382, -959388, -1385664, -1427540, 7476465, -1122597, 8381629,
-1760937, -352724, -1304060, 2878165, 4240207, 1120450, 1727114, 592706, -593779, 838592,
--1433982, 2256469, 75699, 1935957, -600759, 1837172, -224412, -2922725, 1423245, 2017561,
--30602, 1641751, -545461, 95563, -1721745, 1417876, -434329, 695248, 3076807, 3102040,
--12988518, -1032403, 1680943, -3008088, -10230612, 11696807, -762357, 426276, 9935870, -2787434,
--10240276, 3601867, 6699612, 12686797, -822486, 5355824, 1091459, -11184095, -3290482, -5820218,
-5682779, 3230889, 2965675, -4194036, -770947, -483721, 1015760, -3791383, 5291937, 1457068,
--4504347, 6544457, 917512, -7353521, -6171331, 1700807, 7928510, 7108708, -9953587, 19442780,
--972810, 352187, 5345624, -788127, -2562485, -188979, 12498892, -6273337, 6178311, -1523103,
-8650601, 2595771, 7752953, -2962991, -6109591, 4294431, 6628745, -3304441, -7425462, -8077760,
--7110319, -3226057, -1439888, 7387881, 178778, 6420439, -776315, -2130841, 6377490, -5577552,
--10764262, -2869575, -6874095, -6476274, -11969000, 8921184, 7785165, 3196530, -18559628, 4358855,
-3907883, -1392106, -545461, -6476811, 8866960, 4538707, 3510599, 2166811, 8143258, -710280,
--583579, 600222, -83752, 1891396, 923418, 36507, 2495913, -1504312, -337692, -1921461,
-557272, 645319, 2749853, -1924682, -302258, -756988, 2118493, -982474, 787590, 1253057,
-1695438, -1472100, 4068945, -11274, -125091, -1499481, 1588064, -2550674, 898185, 104153,
--3725884, -874563, -618475, -7399692, -499827, 576599, 5389647, -7787313, 395137, -1194001,
--3250753, -16176457, -1960116, 7652558, 5905580, 7841537, 906238, -8687108, 22981834, 9681930,
-15629923, 1647657, -6844568, -2714956, -2221035, -9736691, -615791, -3809099, 4897337, 47782,
-505732, -3103651, -4172561, -8227010, 2779918, 838056, 405874, 4283156, -352187, 1834488,
--823023, -7141457, -5566278, 4366908, 26307, 10471667, -13195750, 10593537, 6480032, -4625680,
--9540196, -14868640, 3153043, 11797738, -6018860, 11421929, -891743, -470836, 2619393, -3304441,
--13225815, 1627256, 6257231, 2829847, -5742372, -1462436, -3600793, 2968359, 6419366, -292058,
-1642825, -825707, 6181532, -2720325, -2103997, 4261145, -3649112, 9767829, -2592013, -4875862,
-3620121, -8751533, -4483946, 124554, 3489124, -3763465, 1643362, -1335735, 1945620, 118648,
-2310693, 2054068, -779000, 1250372, -4165582, 2318209, -564251, -5575942, -1954210, -1537598,
--3388192, 59056, 985695, -2574296, -1883343, -61740, -3569655, 320512, 915902, -714038,
--3778498, 402653, -56371, -2790118, 1176821, 2180770, -2323577, -80531, 679679, 299037,
-1101122, 3410204, 2776160, -2789045, -2298344, 2561411, -17788144, 12727599, 11475079, 13552232,
--4380867, -12084964, 4214974, 4859756, -18100602, -16432008, 15892990, 1742146, -7815230, 6028524,
--11324755, -12836584, 1792612, 33440616, 15489800, 6207839, -9124121, 150861, -3280281, 264141,
--3854196, -1858647, -4276177, 1204738, 9479530, 1888712, 11696807, -4649302, -3930969, 2149631,
-8161512, -1567663, -1224066, -17485348, -784905, -9847823, -566936, 13558138, 9631464, -3584687,
-9413495, 18814104, -8999030, 5434208, 15545634, -11446088, 16433619, -1373316, 6738267, -3906273,
-658204, -2226941, 2251100, 3818226, 16303159, -6262599, -2095944, 4248260, -7648263, 4803921,
-2491081, -4383551, -7451769, 16094316, -1097364, -8838506, -2952790, 9980430, -4227322, 6774774,
--72478, 487479, -10644003, -11559904, -5586142, -9860171, -8936216, -9660455, -610959, -2302103,
-4680978, -606664, 831613, -881005, 5898064, 3765613, 410706, -7322919, 258235, -1370632,
--5458904, -1556389, -2814814, 2862596, 1082869, -3722663, -1253057, -2854543, -2245194, -262530,
-2040110, 1997697, 2087354, 3585224, -2206003, 455803, 2248416, -1558536, -2148021, 2633889,
--3708168, -1458678, -1139240, 1661079, 710817, 2667712, 466004, 273804, -1047435, -2679523,
-21697638, 3886946, 3074660, -11292006, -6532109, 562641, 2510409, 4384625, 5044439, -21524766,
-984084, 1351841, 15555835, 2479807, 3968013, -1484985, 14153528, -23113904, 725313, 11829414,
--13748727, 3436511, 2714956, 11139535, 2208150, 1180579, -3766686, 352724, -11800423, 3997541,
--2932926, 2088428, 3233574, -2029909, -8944806, 3275986, -7056095, -12317429, 6971806, -6966974,
-4594005, -11581379, -7276212, -1230508, -3568044, 2758443, -4896263, 12683575, -122943, 12093554,
--12749074, -10802916, -3439195, 171799, -187368, -3760781, 10915659, 8887361, 22739168, -3651796,
-14555644, -8517457, -1429687, 4373888, -17209934, 19669340, -497142, 12244952, -453656, -17180942,
--10322954, 7226820, -22958210, 11967389, 3336116, 17470316, 22057342, 2862596, -16296180, -12355010,
--5059472, 12543452, -1500017, -3040300, 724776, -4600447, 698469, -3367254, -4918812, -1711545,
--7931731, -391379, 386010, -3693672, -3294777, -4507568, -3187403, -1546188, 2025077, 3831111,
-1447941, -635655, 3521873, -2400887, -1314797, 816581, 1872606, 2237141, -2215666, 2830920,
--2893734, -1366337, -4233764, -7431367, 4617627, 797790, -4206384, -4254165, -799938, -5898601,
-820876, 62814, 4397510, 11016054, 17063368, 5839545, -7018514, 16094853, -17290464, -1884954,
--5290326, 2063195, 13864691, -12594455, 31208842, 4052302, 7753490, -9268003, -12547210, 4265440,
-135291, 26402774, -3770981, -9257802, -15111306, -10289131, 7409893, 4652524, 4345970, -1994476,
--14874009, -23065048, 1752884, -13937169, 18462990, 2323577, 15000173, -9330816, 6291054, -6062347,
-7789460, 21539260, -3556233, -2365990, -3231426, 5567352, 7223062, 3621194, 1619740, 2157684,
-9419937, 8364449, -4824322, -7493108, -6640020, -7503308, 24757802, 9691057, -14461692, 11109470,
--3259880, -11931419, -8475581, 4298726, 9088151, -16977468, -22028888, 2398739, -9814537, 28923384,
-15101642, -5042292, -3253975, 6076842, 13117367, 3282966, -2174327, -3916473, -19966230, -1001264,
--4854387, -21787832, 8276402, 13619878, -2172717, 6791417, 3841848, 13893682, -7618735, -2121714,
-5063767, -2237678, -6245956, -7174743, -137439, -4356171, -10544682, -2244657, -4828617, 4555350,
--2000918, -5913096, 4117263, 1562294, 644782, -3685619, 4109210, 1057099, -6593849, 2257005,
-2707440, -3163244, -9177808, -4606890, -1627793, -1053341, -50466, -3541201, -397284, -2640868,
-1347546, 1041530, -1746978, 369904, -71404, -2816425, -5657009, -807454, 1297080, 3278134,
-1755568, -4373351, -2739116, 1029182, -8122857, -13793287, 7967701, -4635344, 12035035, 5354214,
--12809203, -5536213, -6425808, 2692408, -17292612, 11699491, 16588774, -6796786, 10391673, -2587718,
--4416300, 7927973, -12076911, 7500624, 13499082, 3604551, 23196582, 11130408, -9545028, 9789304,
-4311611, 8593693, 525597, 12340515, 10917270, 16558173, 6393596, -6595459, -7676181, -10386305,
--854699, 25728464, 679142, 10832981, -16122770, 33636036, -9875740, -26519276, -12367358, 21203180,
-1814087, -3056943, -2789581, -1653562, 15996606, -11748346, 9319005, -2463701, 20109036, 30422864,
-15840913, 14617921, -10715943, 17258252, 10623602, 10210748, 11933567, 17256642, -3478387, -30403536,
--19306414, -22115860, 5848135, 7742216, 6421513, -5210869, 10388452, 26656178, 2014877, 1976222,
-6662031, -1602560, -23333484, -25352656, -8497056, 4915053, 2834142, -1178432, -14295262, 3571265,
-859530, 1088774, 7727720, -1774895, 4967667, 1549410, 9506373, -2457795, 6399502, -5049808,
-1271847, 879931, 11011222, 4884452, 10992969, 1119913, 5675263, -2042257, 1376537, 4544613,
--2844342, -7158100, 1785633, -4308926, -7789460, -6371047, -1572495, -1823214, 10735271, 2110440,
-136902, -3315715, 1818919, -45634, -3645354, -4426501, -2997350, 2294050, 6925098, -955630,
-796716, 753767, 3204583, 2034741, -6931541, 4402879, 11159399, 13067438, 4746476, 6127845,
-10206453, -8047158, 23714126, 9331353, 4596689, -6779606, -18163416, -7350837, 9932112, -1005022,
--25746718, 34674344, -12167642, -6815576, 10705206, 507880, -3447785, 2496450, -6720550, -8162586,
--1763621, -18893024, 4682051, -20302310, 574452, -16098611, -18094160, -3651259, -3840238, -3990562,
--13234405, 5791764, 14190572, 3782793, 10867878, -18846316, 18574122, 33805688, 3511136, -13604309,
-21141976, -17355426, -27452894, 45698988, -4682051, 3223373, -3175055, -20467130, 15780784, -18556944,
-8029978, 27913530, -551903, 38346540, -29936996, 28880970, 8429947, -19011136, -9944460, 3598646,
--18240726, -9117679, 20332376, -19959250, 13242458, -13430363, 7350300, 21210696, -46618648, -20574504,
-21475374, -40040368, 14146549, 12382391, 22894324, 20214800, 9117679, -1653562, 13440026, 20050518,
--21796960, 21758304, -401043, 7511361, -1143535, 6808597, 1771137, -4170413, 1508607, -6353331,
--2071248, 1607928, -1122597, -10996190, 6912750, -1962800, 9002251, 5359583, -7762080, 6107444,
-7513509, 5428839, 2265059, 3878356, 2360622, 4949950, -15229417, 8519605, -1988570, -4179540,
-10829760, -8714489, -7062000, 3620658, -8993662, -7354058, -8862665, 4904316, -13435731, -40099964,
--10435697, 13137231, 30958662, -9863392, 15632607, 424665, 7385197, 16031502, 10386842, 27766964,
--7177964, 1169842, 7635915, -24616068, -15817291, -7348689, -7951058, 5645735, 427886, 2069637,
--12814572, -2138894, -16967806, -13822279, 6649683, 34289408, 19749334, -9037148, -10968810, 16333224,
-19602768, -11685532, 5184563, 15056545, -5956046, 32796370, 11181410, 4802311, -25298968, 15600932,
-3227131, 12289512, -2580739, 3158412, -4159676, -5473936, -39898636, 10562398, 27625766, 13618804,
-3715147, -793495, 13942538, -22473954, -41447508, 3063922, 55005108, 13210246, 43642236, 41334228,
-574989, 3587372, -26277146, -23582054, -2487860, -20233590, 27564026, -60043104, 11368778, -22510460,
--47904992, 10624138, 22468048, 47896400, 4329864, 2367601, -30507152, 9948218, 14462229, -21379810,
--1959042, 1480153, 22429930, -6036040, -14249628, 33867428, 7215545, -12150999, -394600, -19659676,
-2632278, -18611168, -3704409, -678068, -9031779, 2784213, -7285875, -7829189, -4207994, -127238,
--3655554, 6231461, 17624936, -1041530, 260919, 6499896, -15846819, -9665824, -1853278, 4760435,
-5091147, -13907641, -7776039, 10942503, 6549825, 3769908, 2718178, 11555073, -373662, 134755,
-1263794, -7912941, 1489817, -10405632, 29235842, 51306068, 1251983, 14089103, 9154723, -26816166,
--7710003, 26946088, 8385387, 11936788, -6811818, 7903277, 4500589, -9418326, 348966, 14031658,
-14693083, 18103824, -8029442, -2115808, -39858908, -37226092, 5074504, -22979148, 725850, 20117090,
-4772246, 2480881, -6985228, -4362613, 12769475, 31428424, -22832046, -12970264, -3046206, -22025666,
--1688459, -21224654, -6705518, -22538378, 19923280, -27332636, -2310693, 5036386, 13211319, 48063368,
-63883880, 16662326, -16896938, -34024732, -3091303, -23241678, -9241696, -36193688, 5350993, 35095788,
-25736518, 21102784, 2445447, 5191005, 35778152, 34927748, 25508884, -1991254, 16071231, 6069863,
-7900056, -41179608, 12370043, 4676146, -9604621, 25001542, 33718716, -4591320, -657130, -16492674,
--70618928, -1257352, 20776904, -10139344, 48740900, 34793532, -16208670, 3337190, -18061948, 12254079,
-3283503, -6435472, -10844792, -4802311, -1087164, 7693360, 9350144, 14553497, 318364, -8590471,
--18896246, 1202054, -8959839, 7289097, -8460012, -11360188, -2944737, -2866891, 8427800, 3677029,
--3315715, 4591857, 2379412, 3667902, 750546, -6408091, -10478110, -5150740, 3835406, 8819715,
--842350, 7214472, -176094, -10298258, -10921565, 3134789, -13346074, -7348689, -57445, -5709086,
--1709934, 3852049, 5348845, -4824859, -12460774, 31922344, 22778896, -15224585, 15429133, 23709830,
-2685965, -29725468, -35461936, 33123324, 11289858, 7655243, 26097296, 569083, -11348377, 27988154,
-7391102, -21254182, -10766409, -7714298, 9463960, 575526, -12706661, 4902705, -14057965, -1430761,
--6334003, -6865505, 19091130, 35537632, -12088185, 7356205, 16775069, -8350490, -7135552, 6851010,
-20265266, 6454262, -15520938, -19696720, -23655606, 12681965, 13368623, 32251984, -15267535, -14518600,
-11359652, 19204410, 30114164, -882079, -55706264, -11959873, 17999672, 17893908, 8096550, -10917270,
--386010, -22321482, 3380139, -9667435, 23199266, 33174864, -10011569, 694711, -19423452, -21111912,
--8109435, -42719356, -8563628, -21737904, 18951544, -17405354, 19658066, 24317568, -49372260, -4161287,
--20877300, 21122112, -8684424, 7423851, -15343771, 2469606, -13067975, 14536854, 16253230, 27989228,
-27075474, 13365401, 26050050, 12041478, 1563905, 13729937, 8871255, -3927748, 11603391, -12917651,
-6219650, -6627672, 5385889, -16273094, 9629854, 35433, 7627862, -11997454, -6787659, 7708930,
--3119757, -4056060, 13975824, -11054709, -2528662, 11264089, 5590437, -7658464, -2405182, 4555350,
-25790204, 13793287, 11241003, 15139760, 1028645, 16462610, 5565204, 4987531, 8638253, -65498,
-13865765, 3767223, -23866596, -11230803, -6379637, -11727408, -16201690, -26793616, -6073621, -14905684,
--27178554, -41064720, 20088098, 21264384, 12539694, -27438936, -37344740, -28675886, -16259136, 6732898,
--1219234, -36371932, -21703544, -24924232, 35325568, 10997264, 15406048, -11102490, -20062866, 44762148,
-11103027, 13969381, -8525510, 2662343, 13270912, -9141301, 10560251, -3283503, 21398600, 30171608,
-1388348, -24319716, -19468550, 23906324, 16443819, 20944944, 6128919, 5270462, -10697690, -4705674,
-3556770, 14646912, 31692564, -239444, -58819576, -54595476, 910533, -13316546, 35492536, 36011152,
--39887900, -27003534, -16684874, 49859200, 44536664, -24002424, 7254200, -31443456, -30176978, 18546206,
--13781476, 251256, -4470524, -21792664, 15809238, 16101296, 12960601, 50525460, -36764384, -9868224,
--3204046, 13019656, 4336307, 20846698, -73593192, -42818140, 15701327, 23270132, 23138600, 6601365,
--24103894, -24806658, 718870, 14849313, 42973832, 10496900, -13895830, 4499515, -27314918, 17274358,
-15255187, 1000727, 24236500, 51366200, 12643310, -37459632, -19364396, -2522757, 4685273, 24887724,
-21879100, 10344966, -10943577, -4458713, -7410429, -8723615, 22683870, -2455111, 2460480, -8698919,
-22028888, -9836012, -3727495, -367757, 19194746, 8426189, 7126962, -3750043, -23118736, -8212515,
-8144332, 19062676, 3740380, -25916906, -35806604, -29993368, -206158, 4699768, 6138582, 3969087,
-49425948, -32813014, 30838402, 30768072, 19640886, -71599256, -28770912, 24052354, -19480898, 13940927,
--5122822, -29703994, 19053012, 5794985, 5676336, -13095892, -47438452, -4435628, -1449552, 242666,
--6773701, -34497716, 25834766, -21293374, 44123808, -4594542, -3859028, 21559126, 16003585, -21032992,
--1957968, -15905338, 23576150, 37204080, 28266790, -31259846, 7022809, -20896626, 18900540, -18141942,
--7475928, 3165928, -1595580, 20252918, -18543522, -43428024, 11187316, -15488726, 16243566, 17032230,
--55048060, -9271224, -10499584, 2080375, 60956860, -16363825, -44362180, -11716134, 38743288, 18673980,
--24024974, -7812009, 24034100, -27380, 29672318, -44557064, -23574002, 26931592, -28016608, -67973224,
--20074678, -9201431, 77653544, -21111912, -40119828, 21420612, -46283640, 122176784, 11562589, -113368880,
--30205968, -19958176, 80524192, 43666932, -50622096, -26645978, -657667, 59585692, 47456168, -7325604,
--37314140, 14698452, -12623983, 53746684, -5196374, -26884884, -22321482, 35233764, -28139552, 18292802,
--53884124, -171262, -2064269, -3068217, -3163780, 11397233, -29831232, 28958280, 2397129, 21258478,
-855772, -33960844, -26140244, 19452980, 22935126, 36099200, 13449690, -3606699, -23523536, 3204583,
-5853504, -6144488, 1542430, 23682986, 3676492, -1054415, -26909580, 5241471, 19115288, 7125888,
-788127, -7808788, -19353122, -65553012, 18389976, -1058173, 22408454, 54184232, 17386028, 7450158,
--30533996, -12688944, -30515206, -36579164, -12230993, 7173133, 20915954, 27640262, -3083787, 16069083,
-19501300, -16987670, -34390876, 18209588, 6564321, -27980102, -9489730, 26543434, -9025874, -2994666,
-24320252, 13603772, 10818486, 3361886, 13830868, -13249974, -31948114, -13922673, 9118752, -13120588,
--7542500, 11682311, 795643, -22538378, 23476828, 5040681, -20839718, 2646237, -5022965, 20169166,
-11251204, -8176544, 9495099, -12475269, -28009092, 3728569, 6826851, -2573222, 74088, 5901822,
--12232067, 3843996, -10473278, 6265821, 19996294, -2145873, 8744017, 9217537, -7723425, 474594,
--19071802, 6503118, 11258183, -34692060, 20131586, -21646636, 6823630, 979253, -96100, 9528385,
-3872987, 22602802, 4132832, 6373195, -3266860, 11551315, -12162811, -8035347, 2805688, 1912871,
--10642929, 3807489, -948651, -3124589, -6147172, 2166811, -1211718, 12216498, -3136937, 1430224,
-8770860, -6188511, 6094022, -3826279, 2138894, -6194417, -5371394, -6187438, -1617055, -2804614,
-4632122, 3265249, -14354318, -3966939, -4194036, 9951976, -5923834, 3692598, 1716913, -16037408,
-5320391, 10331007, 681289, -3947075, 1730335, -4752918, -2369211, 53062712, -1931662, -1765768,
--14733885, -14492293, 10923176, -644245, 9456444, 162672, -5185636, -7016903, 3596498, -9820980,
-9954660, -9249749, 14504105, -11741904, 8451959, -9940702, -2211908, -1613297, -9245454, -7082401,
-2091112, -4188130, -2919504, -85899, -6951942, 904628, -1380832, 2201171, -1634772, 4039417,
--13937706, 12680354, -4771709, -4175782, 9622337, -7738458, 515396, -9660992, -8449274, 6135361,
-5418101, -6792491, -4381404, 2717641, -438624, -11811160, 3019362, 2063195, -11274, 7736310,
--2876018, -3339874, -3184182, -8067559, -2194728, 8443369, -8993662, 2307471, -4362613, -1114544,
-572304, -2741800, 1978906, 42950, 5905043, -8595840, -746251, 5540508, -11094437, 6456410,
--4999879, 69256, 5063767, -2463164, -5057861, 2282775, -900333, -1453846, -379031, -3613678,
--95026, 3743064, -249645, -1765232, 650688, -3131568, 2158221, 1576253, 916976, -2529199,
--761820, 3243237, -4155381, 4138738, -1902671, 1798518, 4600984, -5548561, 1319092, 370441,
--7000797, 1269700, -2234457, 2878702, -998043, 207769, 4233227, -2798708, 808528, -4506495,
-768262, 646393, -1130113, -1090385, -547071, -1627256, 311922, -824634, 178241, 3115999,
--4567698, 1991791, -24917790, -42071352, 15599858, 134742784, 33703684, 74294344, -2939905, -72384696,
--23528368, -71231496, -60878476, -21531208, -14697915, -4994510, 40325448, 54178864, 71619120, 90486368,
-39031588, -23211078, -41968272, -88926224, -84546968, -34493956, -28285044, -18869938, 36458368, 49733036,
-29701310, 46104328, 55294484, 18677740, 15121506, 10293426, -28742994, -13253195, -20601348, -44813688,
--24767466, -33312304, -49348100, -26882200, 6044630, 5217849, 27468464, 66728224, 45624364, 37962680,
-36983428, 11339251, 2673617, -3862786, -19291920, -27497992, -34785476, -49700824, -43947716, -24603720,
--7763691, -16833588, 13779329, 25659746, 21796960, 37652904, 41984916, 26928908, 24391120, 23833848,
--3791383, -11799886, -5958731, -34308736, -28424094, -7332046, -28135258, -30109332, -19083076, -27092654,
--13190918, 7634841, 17203492, 31152472, 50001472, 30964030, 28713466, 31755914, 11715597, -3879966,
--5873368, -17193828, -28355374, -29469918, -28071906, -30815854, -21428666, -19755238, -16398722, -6837051,
-7608535, 18880140, 29344290, 44281648, 46665892, 45452028, 38643968, 12141873, -10161893, -20864952,
--33481418, -44344464, -50033684, -50003084, -39577588, -22399866, -5398774, 13573170, 40905804, 45449880,
-45578192, 47685412, 39457864, 20635170, 6519224, -11373610, -31998044, -44806172, -39498128, -37031208,
--29146722, -13701483, 1115081, 10712185, 21919366, 24741696, 24450176, 19325742, 8734353, 3875134,
-1481764, -3832185, -4310537, -4444218, -5719286, -7172059, -5539971, -7909719, -5350993, -4576825,
--3178276, -4049617, -1530619, -928787, 1657321, 1683090, 3795141, 3054259, 2889976, 344671,
-848793, -466541, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
-3117610,
-3112241, -2801929, -496069, 4461398, 1465121, -2306934, 481036, -2548526, -2270427, -1824287,
--3999152, -1387811, 2437931, -195421, 1350230, -672699, -1133871, -1107028, -485868, 3362423,
--2123861, 211527, -151934, 148713, 2667712, -85899, 1835025, 5850819, 4560719, 4588636,
-2376728, 1043140, -740345, -5404680, 2219961, -2015413, 3468186, 1233193, -1835562, 1635309,
--2414309, -4684199, -1444720, -1808718, -4438849, 192200, -545461, -631360, -2079301, 286152,
-4632659, 2057826, 3148748, -45634, 1936493, -1807108, -130460, 2426657, -2001455, 1626719,
--2481417, -2637110, 268972, 5457830, 3593277, 2098092, -1060857, 915902, 585189, 319975,
--984084, -2090039, -3202435, -2318209, 73014, -1984275, -993748, -2136746, 709743, 330712,
-1108102, -627065, 911607, 1292785, 1059783, 142808, 665720, -487479, -533650, -12885,
--1333051, 1409286, 1153736, -130460, 1457605, 433792, 293668, -653909, -414464, -836982,
-280247, 475668, -15032, -260919, 503585, -318364, -1236951, -345745, -827855, -45634,
-242666, 309775, -1295470, 236223, 1999844, 1028108, -3454764, 8158827, -177167, 491774,
--865436, -4310537, 3183645, -2250026, -2155537, -5023501, -3871913, -1630477, 3114388, 4479651,
--911070, 2647847, -1035624, 4859219, 5042829, -10080288, 1840394, 42950, -992137, 3403762,
-5356898, -1660542, -787590, 102542, -336081, -2566780, 2101313, -2587718, -2046552, -215822,
-2679523, -1527398, -5674726, -2526515, -3860639, 443455, 333934, -5039071, -606664, -2203855,
-1034013, -158377, -769873, 1227824, -1687922, 1698123, -2708514, 2636573, 3860639, 5937793,
-2457258, -2608119, 2118493, 2485712, -948114, -6742025, 425739, 3496104, -2719251, 2011655,
--3918621, -54224, -2506650, -6849936, -2099702, -3587372, 1717450, 2531346, -2324651, 1079111,
--1102733, 3216931, 235686, 1879585, 2686502, -1164473, 1097364, 536334, 1122060, 2316598,
--566399, 775778, 2889439, 1642825, 369367, 1725503, 287226, 739271, -147640, -51540,
--1607928, 830539, 971736, 1307281, 872952, 284005, 395674, 28991, 471373, -221728,
--474594, -137976, 1038308, 887448, 243203, 793495, 156229, 919660, 766652, 6669548,
-1837172, -9086540, 3231426, 4647155, 1708860, -798327, 2374043, -5713917, 811212, 2516851,
--1272384, 2433099, -384936, 2966749, 722628, -3862249, 2422362, 3506304, 3479461, -1024350,
-1663226, 1888175, 1321239, -10289131, 1443646, -4387309, -1294396, -1468342, 2399813, 1097901,
--8386461, -3034931, -1879585, -1606855, 3409130, -3138011, -5869610, 1432909, 2718714, 1679869,
--5840619, -2761127, 1868848, -5527623, -447213, -6106370, 892279, 2971044, -3124589, -966368,
-3482145, 4422206, -10355166, -782221, -2878702, 3118683, 1280974, 499290, 892279, -2932389,
-2633352, 2262911, -8042863, 6157910, -831613, 1501628, -4105989, -1734093, -3473555, -451508,
-899796, -3238405, -4472135, 3946538, -1444720, 1614371, -226560, -828392, 1145146, 1326071,
--1635309, -4154307, 2296734, 2064806, 525597, 945967, -135291, 289910, 684510, -55298,
-681826, 456877, -98784, 1566053, 220654, 1193464, 1441498, 57982, 2034741, -80531,
-392453, 524523, 907849, 708670, 1008780, -1553168, 686121, -720481, 300648, 650688,
-488016, 1173600, -421444, -389768, -4362076, -4093104, -3404299, -2157147, 6780680, -2368675,
-921271, -5509370, 5839545, 392453, -3964792, -1041530, 3381213, -7055021, 2390686, -2080912,
-1585917, 1140851, -3235184, -2291365, -8397735, -2257542, -9457518, 1225676, 2126009, -1012539,
--1290101, -862215, 1422708, -3697967, -6743099, -3129958, -2483565, -1038845, 2469606, -1551020,
-4007205, 1783485, 3069828, -4175245, -240518, -205622, -3498251, 971200, 2747169, -272194,
--1747515, -4093104, -3792456, 2551211, 3808562, -122943, 7546795, 5990943, -5415954, -1376537,
-8053, -5708549, -6538014, 9872519, -167504, 271657, 3089692, -6273337, -2070711, -4064113,
-9742060, 2634426, 499290, -7762617, -6171331, 828929, -2547453, 5037997, -2592013, -55298,
-1374390, -3046743, 1098438, 3040837, -4574677, 50466, -7290707, 795106, 2734821, -2103997,
-1057099, 875100, 3564823, -512175, 566936, -705448, -144955, 1546188, 1582159, 1484448,
--1106491, 474594, -77846, 666257, 42950, 652835, -1069984, 2298881, 13959, 659278,
-341987, 725850, 534187, 664109, -619012, -596464, -525060, 506806, 1537061, 1817308,
-317291, 824097, -1504312, -11388643, 5701569, 3231426, 5813775, -3117073, 3187940, 3334505,
-5974837, 1418413, -11367168, 2843805, 493384, 4523675, 8256538, 438087, 3587908, 3144453,
--6805913, 2396055, 634045, 947040, -1847373, -942208, 4228932, 2804614, 175020, -4161823,
--47245, -1983738, -2153389, 6816113, 3150359, -281857, -909459, -8228084, -7058779, -8083129,
-2154463, 2189897, -8380018, 599148, 570157, -8302709, 524523, 1286880, -1108638, 9551470,
--1175210, -4688494, -1178969, 5486821, -452045, -8501888, 9243843, 4792110, -5879274, 4501663,
-897111, 867583, -151934, 521839, -2283312, -4268124, -4041564, 7391102, -490163, -2154463,
--343061, 5316633, -4922033, -8691940, 311922, 1983201, 1631014, -7597261, -3935801, 2929168,
--683437, 4251481, 1619740, -1347009, -1270237, -1158567, -603980, 150324, 6752763, 3937411,
-2441689, 2163053, 2610266, 3934190, -1878511, -625992, -2129767, -646929, 748398, 195958,
--1178969, -1900523, 1984812, 304406, 894964, -31139, -1214402, 435402, 1048509, -2401424,
--408559, 1924145, 415538, 114354, -883153, -264141, -574452, -1042603, 257161, 975494,
-777926, -703301, 793495, 68719, 3410204, 13167296, 3894462, 10564009, -11620571, 463320,
--5748277, 202400, 3829500, 4457639, -5981816, 2621004, -3474629, -3038689, -4165045, -6720550,
--1010928, -15852187, -173409, 5257040, -722091, -1064078, 1722819, -8309688, 2908230, -7924215,
--2528662, 8192650, 1634772, 2837900, 172336, 2421825, 6951942, 6324340, 12128451, 6326487,
--9210020, -751082, 10214506, -1418413, -7511898, -1124208, 928787, -3408057, 6837588, 5097590,
--5912560, -1706176, 6556805, 7015829, -2513093, -4434554, 11077794, -4558034, -14979235, -10093710,
-3277597, -15032922, -318901, -4489315, 55298, -1381369, -4224637, 5652714, 1593970, -1456531,
--4936528, 4320200, -2964601, 7995619, 5434744, -2164127, -5307506, 1152662, 2069637, 759136,
-282394, 1903207, -1118302, -5849746, -1715839, 8185134, -961536, -3304977, -899259, -1698660,
--4237522, -4083977, -2289755, -1953136, 469762, -20401, 4076998, -339302, -1490354, 592169,
-1449015, -965294, 840203, -1389959, 2767570, -71404, 1694365, 273267, -2690260, -253403,
--304406, -2793339, -772557, -1692754, 1267015, 101469, -446677, 984084, 420370, -263604,
-488553, -3126199, 670552, 915365, -12826920, 6088653, -1129040, 3261491, 4254165, 6956774,
-1559073, -6072010, 8287140, -3058017, 3690451, -3678103, 3075734, -534187, -15067819, -3092377,
--2575370, -1743757, 1035087, -3588982, -2485176, 2045478, 3310883, 1172526, 8144869, 3788161,
--7866233, -547608, 20938, -4399121, 9370008, -5567888, -5410585, 9895605, 10391137, -1256278,
--117575, -6430103, 2336462, 1442035, -3367791, 1760937, 6437619, 4010426, 7740605, -1887101,
--6070937, 3816615, 907312, 1896228, -7237020, -3714073, -4250407, 1744831, 4148402, 1555315,
-1112933, 7471633, 8913131, 1367947, -4231080, 5109401, 4157528, -6242735, 880468, 1127429,
--715112, 771484, -140123, 5357435, -578210, -4117263, 2121714, 7050189, 3120294, 4154844,
-8691940, -5887327, 1061394, -1978906, 8248485, 4759898, 8834211, -4214974, -1127429, 1505386,
--3135863, 496069, 872415, -965294, 10737, 2083059, 2366527, -849867, 1294933, 954020,
-3068217, 2739652, -359167, -192200, -1374390, 428423, -1384053, 768262, -2440078, 2459406,
--35433, -901406, -31675, -167504, 102542, -824634, -1897839, 2733210, -330712, 484794,
--3004867, -2432562, -658741, 2627983, -267362, -237297, 260919, -259309, 5373004, -11148124,
--6640557, 4408247, -2584497, -10414222, 5309654, -5457830, -4728222, 6688338, -2012729, -2238752,
--1641751, 1711545, 4989679, 2560874, 2695092, 2729452, -4113505, -2492155, -838592, 6024229,
-3135863, -10641855, 3406983, 3294777, -4431333, 9976672, 9194988, 4917201, 380105, -3648038,
--2326799, 519691, -3091303, -3754338, -6128919, 877247, -7000797, 5084168, 1987496, 45634,
-1139777, 2675228, 2356863, 5443871, 8549669, -3246995, -13471165, -2370822, -9164386, 3151969,
-1304060, -12239583, 4466229, -5148592, 15381888, 5077188, -9635222, -349503, 9799505, 5073430,
--7970923, -4786204, 10251550, 5848672, -7057705, 8708046, -7243999, -9621264, 1523103, -14558329,
-8813273, 9420474, -2126546, -8771397, -1530082, 3419868, 1819992, 1445793, 923418, 6744710,
--9464497, 3039763, 10632192, 156766, 409633, -9349607, 4687420, 2585034, -8566849, -2171106,
--4301947, -2082522, 386547, 2671470, 2204392, 281857, -2544231, 239981, -2728915, 1126355,
-1703491, -379031, -1293859, -953483, 1747515, 512712, -493384, -1480153, -2721399, -344134,
--2655364, 5375689, -5012227, -43487, -483184, 2041720, 1452236, -2949569, 944893, -936303,
-4651987, -610959, 1356136, 101469, -2585034, -296353, 2948495, -31675, -8721468, -6441914,
-206158, -10472204, 31139, -24622510, -7750269, -2830920, -13455059, -4712116, -2818036, -5899675,
--4560719, 3211562, -6485938, -12313134, 3278671, 7727720, -12577812, -3476776, 3875671, 6314139,
-10849087, 6927246, 6390375, 7011534, 2534031, 12426414, -7395397, -3164317, 2630131, -6148246,
-2338610, 3522410, 6503654, 855772, 10635413, 2235531, 2621004, 7344931, -3246995, -6296959,
-111132, -9654013, -6176163, -11143293, -469225, -512175, -14653355, 5283347, -6640557, 2998961,
--13841069, 1656784, -10475962, 15626165, 781147, -13928042, 16709570, 20473572, 5743445, -6862821,
--5090610, 5312338, -1789391, -676457, 6041945, -9778030, 6362457, -10099079, 5338645, -4027606,
--5698885, 2405182, 5361193, -2921652, -321586, 6299644, 1640678, -3115999, 3535295, -1563905,
--5791764, 752693, 5383742, -1045288, -2148021, 2136746, 1554778, 4388920, 864899, 141197,
-1879048, -1485522, 3049964, 764504, 2522757, 867583, 2000381, 1619740, 1628330, 1311576,
--1900523, 2105071, -2550674, -2362769, 210453, 1376000, 436476, 681826, 1501628, 991064,
-97711, -835908, -1924682, 6979, -2022930, 5326297, -2674691, 4798016, 7240241, 1066226,
-6681896, -3778498, 10444824, -8122320, -7565585, -19903952, -4425427, -10321343, -24285356, 6091338,
--14005888, -8505109, -11294153, 3097745, -21879638, 5848672, 1773822, -4203163, -500364, -6293738,
--2237141, 5241471, -7469485, -5316633, 270046, 3994320, -6537477, -509491, 7459285, -12006044,
--2798708, 7000260, -6685117, -411243, 39192, -1902134, 10120554, -8875013, 6000606, -4039417,
-8227547, 8702141, -8883066, -11833709, 11045582, -1199370, 2386928, 2891587, 970663, -2541547,
-6209449, -3380676, -13707925, 3568581, 2762201, -11855183, -1349694, -4243965, 7099581, 8672613,
-4269198, 1462436, -3437585, -8421894, 8593156, 5330055, 7683160, -528818, -12164958, -2837363,
--1856500, -5296769, -3018288, -1413044, 3482145, 5412196, -4714264, -3980898, -12087112, -5721434,
-2303176, 4983773, 1320166, -1015223, 5500780, 5217312, 3092377, 6404870, -1989107, 5026186,
-2251100, 3442953, 554588, 57982, -3350075, -2523830, -633508, 1633698, -814970, -2808909,
--3570729, -92342, -607738, 772020, -2436320, 599148, -2900714, 935229, 4786741, 1123671,
--2780455, -2794413, 6098854, 3526705, -781147, -326954, -7769059, -831613, -114354, -6511171,
-144418, -2611340, -2056753, 1610613, 2017024, 545998, -776315, -5984500, 29561186, 17069810,
-1137630, -9383967, -22384296, -2729452, 10408316, -4902169, -9043591, -16783658, -980863, -3622805,
-542240, -5758478, 5382668, -95026, 14612016, 5792301, -6157910, -435939, -2657511, 1105954,
--3063922, 3025268, 9041980, -10644003, 2019708, -6416145, 4189204, -4571993, -7797513, -15166066,
--1264331, 8673150, 2869575, -1899449, 3162170, -1129576, 8237748, 13089450, -4609037, -2989834,
--15209553, -16451335, 4507032, 2435247, -6995428, -6019397, -13700409, -9394167, 5370857, -1776506,
--15569, 690953, -1098975, 6237903, 3529926, -11249593, 429497, -10252624, -933082, -5532455,
--3224447, 10880226, 22396106, 36958732, 1351304, 11886859, -11194295, -14207752, -20002200, -1054415,
--110059, 4044786, 4188130, -2731599, -25273736, 10472741, -4330938, -3484292, 1546188, -6616934,
-719944, -3598109, -10321343, 128849, -4155918, 97174, 984621, 394063, 7257958, 1060320,
-791348, -392453, 261456, -304943, 3093987, 6882685, 1995012, -242666, 1431835, 6241125,
-130997, 80531, 2309082, -2064269, 736050, -5702106, 1912871, 2988760, -5400385, 5487895,
-293132, 481036, -1625108, -5961952, -1959579, 2678986, -8590, -599685, -1525787, 214748,
-10821707, 18009872, -8901320, 22549, 3475702, -14709726, 148176, -9501541, -9184788, 13834627,
--4063576, -3488050, -7430831, 15889232, 13985487, -16643, 22969486, 2570001, 7181186, 5039608,
--6389838, -7511898, -11940009, -6308233, 2809446, 96637, 10298795, 785442, -1112933, -1890323,
-7279970, -10524817, -25669946, -9019968, 7582765, 2357400, -2100776, -7669201, 464930, -12373264,
--1847910, -11274826, -769873, -1429150, -7923141, 7582228, 3784403, 14419816, -11920145, 22348862,
-6012954, -4373351, -7909719, -4087198, 3531537, 12882218, -3964255, 7361037, -11395085, 9191230,
--10347650, -11676405, 11497627, -16689706, 10930155, 9153649, 17735530, -18076444, 13725642, -1737314,
-12236899, 4751308, -18965502, -3345243, -4452271, 5264020, -10061498, 29840360, -1465121, -10572062,
-4240744, 13775571, 9380209, 6437082, 7131793, -971736, 3399467, -1251983, -3955128, -2550137,
-1056025, -163746, -3923453, 1095754, -1150514, -6090801, -1255741, -2347200, 2551748, 3161096,
-1743757, -871342, 5900212, -993211, 3267396, 1269163, 4176319, 1531156, -2103460, -2662880,
-719944, -352724, 2881386, -1206349, 280784, 2400887, -1473174, 4140885, -1971927, -2352032,
-1174137, -1775432, 4374961, 1535988, -1273458, 1286343, -12487617, -16750909, -34305516, -10536629,
--20145544, 5608154, -920734, -6870337, -9979893, -9505836, -8588324, -9312026, -9118752, 943819,
--7436199, -1351304, -16156593, -24792162, 30344480, -9476308, 16436303, -3162170, 4233227, 5221607,
-8852464, 5827734, -1565516, -520228, -13124883, -2988224, -3138547, -8839043, -13766444, 5341866,
--1574106, 19401978, -13478681, 327491, 26851598, -6509023, -22362284, -7237020, 856309, -10156524,
-15695421, 7192997, -8670465, 6344204, 8414378, -5245766, -209380, 4208531, 10476499, -432181,
--10397042, -10236518, 12543452, 8955544, -6656663, -14388140, 9108552, 10546829, -9501541, -12954158,
-8996883, -16416439, 31271120, 6686727, -2611340, 1225139, 7607998, 1675037, -5570573, 452045,
-2193655, 11191611, -7439420, 2194192, -22317724, -20106352, -2304250, 1135482, -2252174, -9792525,
-7016903, 16489990, -530428, 4176856, -1624571, 3470871, 4933844, 5903433, -6473590, 7110319,
--3393024, -1981054, 4680978, 8766565, -2688113, -8948027, 2449742, -896038, 1399623, -886911,
--4841502, -1403381, -5003637, -3131031, -6157373, 6165426, 6309844, -3923990, -99321, 7603166,
-2346663, -3347390, 1515587, 9543417, 6239514, 6855305, 6903086, 6092948, 2197950, 8734890,
-4558034, 3582003, 3173444, 8264591, -12912819, 27917, 4774393, 3672197, -8462696, 20390358,
-14376866, 29351270, 16209743, 10930155, 4247186, -25670482, -2120103, 3500935, -15137612, -4026532,
-29021094, 2232309, -16850768, -16598975, 15022185, -22873922, -5960878, 1009854, 6100464, 2633352,
--4394826, 7433515, -10364830, -13422, -2128156, -6504191, -1474784, -4526896, -14984067, 7875360,
--12996034, 7596724, 6717329, 8841727, 1547262, 5860483, -5473936, 24154896, 3175592, -25650618,
--22624278, 2070174, 10047002, 19632832, -6554657, -15409269, -6914361, -2041720, 2124935, 11528766,
-2413772, -9096204, 26466126, -32569810, -5527086, 6164889, -22767084, -11737609, -6074695, 3346853,
--36829344, -17388712, 26169772, -9970230, 7552163, -8551280, -29772714, -11227581, 14141180, -4387846,
-5424544, 9069897, 18606336, -8950175, 1921461, -5622649, 11589969, 5298916, 4901632, 721018,
--624381, 274341, 10065793, 5209259, 5884642, -1628866, -399432, 3738232, -7030862, -6334540,
-2553895, 11783243, 5375152, 4539244, -11745662, 6739878, 21447456, -177704, -431107, -8381629,
-5661304, 882616, -5242008, -6828998, 695248, 6319508, 7296613, 5337571, -6922951, 4398584,
--4725001, 5002027, -8868571, -4871567, -1991254, -4671314, -5870684, -1844152, -14313515, -13485124,
-1920387, -1107028, -2488934, 4602595, -456340, -1453846, -176094, 4552129, 15224585, -6714645,
--47055124, -12598213, 2956548, 12864501, 13244069, 11370389, 12129525, 20935818, 38648264, -22345642,
-16353088, -5941551, -416612, -6021544, -31228708, -23920820, -4211753, -1797444, 7027640, 11979738,
-16422881, -5454609, -279173, -8690329, 322123, -1857573, 90194, 16304233, 9166534, 5197448,
-13064754, 14814953, -26378078, 12836047, -15230491, -19996294, -5570036, 12315819, 3882651, -13622026,
-4612258, 1249299, 9717364, -1263257, -25640954, -18891950, -21227876, -21712134, 3016678, 17328046,
--3098282, 63722284, -41689100, -31935766, 19498614, -5999533, -12657269, -4683662, -3318399, 350040,
--39058968, 3789772, -2707440, 5043366, 30169998, -2446521, 10650982, 11247982, 14461155, 48959944,
--18165564, 62001612, 17482128, -2039573, 8341364, 3234110, -25482040, -23046258, -281857, -5914707,
-3328600, 9288404, 7787850, -4787278, -21836150, -18455474, 7372312, -12568685, 8079371, 8329552,
-19583440, 18516140, 17441862, 2996277, 6175626, -635118, -708670, 12379169, -1960653, -1504312,
-4236449, -18851148, -4238596, 7406134, 147103, -2260764, 11930882, 4058744, -17029546, 11461120,
--9448928, -13822279, -7318625, -4562329, 3507915, 5179194, 6029061, -7575249, 8638253, 3150896,
-5626944, 1960116, 7354595, -3380139, 4527970, -11554536, -2121177, -28176060, 10267119, 44988708,
-1320703, 46948288, 24839944, -2930242, -18136036, 52952116, 7986492, -9029632, 6885907, -12190728,
--3537443, -1934346, -3238942, 6570763, 14823543, 10177999, 1971927, 6665253, -10634339, -10448582,
-3232500, -3299072, 17450988, 18747532, 12048994, -5033702, 1203128, -23171348, -14421426, -4457103,
--15774878, -25062744, -14805289, 11646878, -14442364, -44069584, -20282446, 13182328, -17721572, -12729209,
-627602, -3457449, 20635708, 30104500, 39873404, -21364242, 11336029, -555125, 1308891, -8840116,
--26374320, -52894668, -34653408, 17996450, -35115116, -18692234, 9578851, 17561048, -13007845, 19835770,
-57707716, 11862163, 11181410, -43912820, -58496380, -12962748, -18212272, -31508954, -8913668, -26374858,
-18611704, 10294500, 52310016, 21264384, -6063957, -10886668, -18177912, 12063489, 23766202, 47082504,
-33141042, -23123568, -47892108, -23701240, -15288473, -28656558, -5301064, 23827942, 11563126, 29544544,
-1261647, 20906290, 8438000, -7248831, -8973260, -10606422, 5742372, 12631499, 3195993, 16531866,
-21023328, 12371116, 14974940, 6548215, 22702660, 19623168, 771484, -806917, 9917616, 22185654,
--2281702, -6441914, -3455301, 18853296, 5843840, 502511, -5806259, 11621645, 9162776, -3387656,
-7587597, 9096741, 4638028, -2535641, 2007897, 6371047, 750546, -11464341, 24106040, 47805132,
--25517474, 36192080, 29050622, -4895726, -7565048, -16487306, 4835060, 32249298, 23928874, 37853696,
--16711181, -7744900, -7932268, -2594697, -10410464, 9717900, -12748537, 27700928, 11687143, -46186468,
--20023674, 124017, 6699612, 19556060, -9680319, -17644800, 4948876, 5144834, -7592429, -8851391,
-4945655, -13326747, -20222854, -9348533, 43060804, 17655536, 7111392, -22226992, -7319698, -18900004,
-10671920, 20727512, 6845104, 1131187, 12182138, -7618198, 27401354, 15426449, 1425929, 8919036,
--1226213, 54475216, 11096585, -23549306, 8697846, 9216463, 5246303, 12151536, 519691, -22478786,
-26173530, 5580773, 4327180, 10118406, 4609037, -260919, -16540993, 18640694, 21296596, 10900627,
-61481920, 43639016, -23853174, -47808356, -33501282, -3474629, 3970161, -5061082, -40652940, -20271172,
--14524506, -16847010, -16764331, 14871324, 11636140, -4423280, 2367601, -3791919, -22822920, 6388227,
--4312684, -1391033, -23375896, -22503482, -4140349, 9360344, 10995653, 1252520, 11734388, 4954245,
-14834817, 2059974, 2894271, -25469156, -15162308, 10714870, 2871723, -7107634, 13238700, 5574868,
-2313377, -12271795, 11760157, 16168404, 11371463, 11730093, 14843944, -3320010, 16457241, 32993402,
-26022134, 5866926, 3605088, -4228396, -5755256, -16967806, -21448530, 5641977, -2357937, -8938901,
--55867324, -7334731, 13858786, 15622407, -12870943, 19532438, 5946919, -8077223, -21052320, 4483946,
--5286031, -31256624, -10151692, -11220602, 2017561, -42992084, -33784212, -5919002, 20724290, -3045669,
--6823093, -26112328, 161061, 21940840, 683437, -15621870, -9255118, -3562139, -9094056, 5252745,
-6961068, -22181896, -24854438, 3543885, -1261110, 4990215, 39902932, -24944096, -2987687, -1846299,
--39735964, -12149926, -29194504, -4817880, -2856153, 27504970, 30911954, 38056632, 10560251, 6167036,
--15010911, -33942052, 918049, 13297219, -12096239, 46783468, 109790640, 105502112, 15014669, -68137512,
--62648540, -24790014, -39560408, 129475008, 79903032, 50057308, 65168612, -1476395, -35230008, -92965640,
--59742460, -23409182, -5399848, 36839544, 74978856, 66718560, -8426726, -55988120, -34078956, -50755776,
--39982388, 6535330, 54178328, 79152488, 30423938, -4829691, 4016331, -31077310, -36588828, -36477156,
-12129525, 5071283, 8957691, 31439160, 16670379, -3815005, -20917028, -18349174, -12128451, -28679644,
--5996848, 11814918, -10852845, 123480, -4227859, 18875844, 14304389, -26737246, -16609712, -53397180,
--42813308, -38366944, 23790898, 42049340, 15903190, 10401337, -15835544, -28012314, -83099024, -61882964,
--37087580, 6427956, 22641456, 14055280, 3091303, -31093416, -25740812, -48826260, -80191872, -32101122,
-8966818, 22689776, 40568112, 18256296, -338229, -23165442, -8599598, -15602542, 28831578, -28202366,
-32521492, 6686191, 3249680, -51775292, -17261474, 46268072, -31066572, 13106630, -320512, -9896678,
-13778255, 5738613, 24099062, 39135204, -23012972, -29812978, 7601019, -17955648, 23886460, -31166968,
--16982838, -19520626, 2020245, -4911295, -18684718, 8830453, 36524400, -28394028, -32298154, -23124104,
--7723425, -6424198, 49148384, 3512210, -1753957, -48176112, -12821551, 5047124, 41252088, 18508624,
--7625178, -69670272, -50451908, 48051556, 51667384, 50630148, -23201414, -116545552, -23204634, 52867288,
-43682500, 6990060, -13635984, 7711614, -47302084, -27880780, 15904264, -13654775, 14395657, -8419747,
-1917703, 49733036, -36817532, -19163608, 41056668, 32525788, 61951684, 26458610, -82691544, 26069378,
-89352496, 19387482, 45256072, 11579232, -25060598, -566399, 56872884, 39257612, 75527000, -99027984,
-13606456, -472983, -11203959, 39507256, 538482, -51380156, 4413079, -2063732, -10769630, 7809861,
--413391, -31352724, 27399206, -12828530, -992137, 1617055, -7721278, 1600412, 3895535, -8533026,
--11737072, -16968342, -25524454, 25059524, -1545115, 9383967, 20816632, -23858544, 11145440, -627602,
--44217764, 463856, 13217225, 47602196, -12948790, -65412888, -8260833, 31721554, 7872138, 28103044,
--22303766, -17915382, -24532854, 11478837, -4873714, 17412334, -25961466, 13110925, 5688684, 8169565,
--28858960, 3510062, 5194226, 20543366, -8775155, 4934381, -17972828, 7087770, -11120744, 17869748,
--4068945, 14529874, -5345087, 6612639, -58281096, 6585796, 10422812, 5555004, 57461832, 9678709,
--4313221, -36686536, -6272263, -3611531, -8596377, -368830, -6944425, 14698452, 6860137, -10818486,
--1853815, 22813792, 70330, -1289027, 2423435, -5717675, -9794673, 12799003, 11320460, 8586713,
--14267881, 7493108, 21346524, 8364986, -1227287, 13762686, -2508261, -16346646, 4319664, 4133369,
--13163001, -14312979, 14249091, 13868449, -13700946, 8770323, 8475044, -129923, -4991826, 92879,
-10832444, -607738, -12103218, 6288906, 7379291, -22486302, 5745593, 16611323, 5434208, -14623290,
-2273648, 10306311, -18937048, 5134097, 8869107, 3736622, -4928475, -18061948, 21246130, -23011362,
--2035815, 22126060, 355409, -3826816, 483184, -20813412, 9203041, -316217, 11878269, 22002580,
--9967008, -1594507, -12728672, 16825534, -3534221, -1891933, 17254494, -22550726, -9918690, 12503724,
-10204305, 4470524, -18335216, 6325413, -4035659, -1162862, 8781061, 6670084, 1250372, -4677220,
--2355253, 839666, 4964446, -16011638, 11648488, 2367601, -2232846, 4505421, -2106682, 10110890,
--15060303, -2738579, 301185, 874563, 1492501, 6955163, 4602058, -25573310, 13508209, -2741263,
--2981781, -1074279, 5192079, 6979859, -6344741, -2567317, 11883638, -10184978, -1315871, -7793755,
-5645735, 53852448, 4723391, -6572374, -18009334, -11969537, 6309307, -8026220, 6944962, -10712722,
--853088, 8532489, -4827543, 4011500, 3929358, -14929843, 4122095, -4890894, -3252901, -12305081,
-3469797, -3486440, -7762617, -3620121, 5943161, -5372467, -5320928, 7589744, -8436390, 4266513,
-7215545, -14959908, 14740865, -3736085, -17600240, 9335111, 9284109, -8208756, 2848637, 5322538,
--7437810, -6660421, 39728, 990527, 4787815, -2421825, -911607, -7405061, 6783901, -5801427,
--1882269, 8519605, -10300942, 2967286, -1877438, 26307, -4857071, -6641093, -2717104, 11583527,
--7933879, -3018288, 1859184, 2461553, 319438, -7020661, 5331665, -3146601, -6074695, -172872,
--11123965, 16242493, -7189239, 3292093, 3571802, -3339874, 5619428, -9660455, -7893613, 9891310,
--4871567, -6700149, 6611566, -439697, 1835562, -4464082, 1166621, -984621, 3017215, -3559454,
--2800319, 3754338, -2188286, -2592013, -709743, 2373506, -1551557, -209380, -1261110, 638876,
-2245194, -3157875, -3199214, 9313637, -2747705, -3318399, 2907156, -1054951, 2702608, -7451232,
-497679, -1227287, -232465, -1962263, 8722542, 132607, -7676181, 2534031, 849330, -309775,
-67646, 3416647, -2188286, -2183991, -970126, -1966021, -994822, 989990, -2396055, -27917,
-728534, -301721, -26739392, -43719544, 19992536, 150777504, 23133230, 75307960, -17661980, -76678048,
--27823872, -74729208, -49151068, -15658377, -8187819, 3504157, 44393320, 53282828, 74076376, 73485280,
-23393076, -29124174, -47028820, -86385216, -66111356, -34844532, -13527536, -8881455, 26677116, 44685376,
-34590592, 47084652, 45702212, 16784732, 14826764, 5535139, -33415920, -12473659, -28729574, -49810348,
--30063160, -29122026, -43118788, -9237938, 20173998, 15265924, 44015900, 57611616, 30034706, 38356744,
-28922310, -4117800, -1243930, -2764348, -31003758, -38262788, -34055332, -51375324, -43698072, -15517180,
--2554432, 6142877, 35617628, 32708324, 31599686, 39724152, 29722784, 10146860, 18787798, 10229538,
--11570105, -5587753, -21398600, -45119704, -27084064, -25632364, -35471600, -17167522, -11361799, -20021526,
-16876538, 31833224, 36849744, 58693948, 55381992, 23298586, 13754633, -849330, -20066088, -23904178,
--24569898, -35863512, -32764158, -30173756, -27583354, -17323750, -6845104, -140123, 13436268, 31406948,
-39256000, 36418100, 44050260, 30415348, 14788109, 6150393, -5115843, -22700512, -25531970, -35694400,
--46444704, -46923592, -37205692, -31182536, -4738960, 18469970, 41553272, 55597276, 60287920, 46454904,
-30328374, 13320841, -3651259, -23476828, -34227132, -46366320, -45914812, -32997160, -21588116, -6720550,
-8288213, 16398722, 21910238, 27285928, 23644868, 14607184, 12456479, 4246112, -368830, -4604205,
--5756867, -7623030, -7311645, -10666014, -8605504, -6968048, -5687611, -5888400, -3838090, -3960497,
--1025960, 1182190, 5236102, 6003291, 8458401, 8270497, 7847979, 2549600, 786516, -1102196,
-179852, -684510, 0, 0, 0, 0, 0, 0, },
-{
--1141388,
-6170258, -3467112, 1032940, -5153961, 1443109, 580357, 7864622, -4709432, 15569, -2477123,
-3941706, 4025458, -2567317, -488016, -2206540, -1264868, -2579128, -3210488, 2369748, 775778,
--2099702, 4391604, 3998078, 6833830, -201863, 2589329, 1359357, -112206, -6172405, 1607928,
-2572149, -2434710, 1545115, -1794223, -2091649, -3385508, 1760937, 4363687, 453656, 5091684,
--2073932, -430034, 5135171, 2688650, 418759, -59593, 4878546, 7326141, -5439039, 1224603,
--1874216, -839129, -8468602, -3003256, 3433290, -2627446, 2381559, 1102196, -1236951, -2050310,
-1207960, -697932, 2652679, 1440425, 1241246, 1360431, -4389994, 173946, -2105071, 2714419,
-4500052, 3156801, -628139, 4871567, 43487, 2071785, -632434, -1071058, 273267, 2448668,
-2824478, -908922, -1904818, -3950296, -496606, -1736241, -1859721, -1045288, -1579474, -1129576,
--1862405, -972810, -29528, -13422, 61203, 1574642, -1063004, 829466, -371515, -747861,
-62814, 728534, 282931, 583042, 22012, -511101, 32212, 744640, 265214, -1062468,
--811749, -27380, 35433, 450972, 89657, 815507, -1052804, 3673271, -4502737, -4709969,
-178241, -6343130, 1164473, -1997160, 3082713, -1699196, -5031554, 572304, 4932770, -753767,
-170188, 6868190, 8632884, -3725347, -3961034, -1125818, -6417218, 2741800, 586263, 1599875,
--2256469, 3426310, -4471061, -814433, 3062312, -2516314, -916976, 469225, 5563057, 358093,
-4025458, -5304822, 5212480, -568009, 754304, 3374234, -2910914, 2815351, -1321239, -1347009,
-2425583, 3199751, -541166, 1830193, -7035157, 4255239, 4130685, -7458211, -6564321, -1854352,
--5443871, -1525787, 2077690, 1354525, 1983738, 114354, -1813550, 4589710, -1535988, 168041,
--1833414, 1081258, -2777770, 3905199, 958851, -3004867, -1678259, -1189706, -1739999, -1541356,
-3956739, 5181878, -244813, -1056562, 203474, 1659468, -1075889, 3620121, 2057826, -1479616,
--275952, -924492, 1576253, -1517734, -40265, -400506, 242666, 573378, -86436, -445066,
-984621, -760209, -249645, 203474, 658204, 51540, -1311039, -907312, 257161, -865973,
--722091, 868657, -456877, -1606855, -1030792, -1292785, -339302, 204548, 1549410, 11094974,
-2119566, -4102768, 5143760, 654983, -3492345, 10134512, -6800544, -9741523, -5709086, -5906654,
--1988570, 2882460, 3555159, -3366718, 5116380, -6419366, -3500398, -776315, 2128156, 1601486,
--1955821, -2522757, 5724118, 1102196, -390305, -3208878, 4272956, -3125126, -723165, -6442,
--362388, -448824, 1663763, 889058, -881542, 3568044, -1682554, 2175401, -153545, -5820218,
--2283849, -2324651, 6189585, -3431142, -4172561, -7558606, -8832063, -1613834, 449361, -3526705,
-6702297, 905164, 3600256, -2706903, 5801427, 2474438, -3364033, 9355513, -4239133, -4529580,
-724239, 5864241, 8596377, 6087580, 2015413, -2994129, -6765647, 2695629, -83215, 6667400,
-2681133, -1905355, -230854, 3400004, 2731062, 49929, -637266, 280247, -1331977, -2808372,
--265751, 884226, 695785, 2427730, -86436, 1472100, -515396, 1161789, -295816, 221728,
--250182, -1643362, 154082, -299574, -2107755, 1693291, -389231, 1037235, -572841, -1132798,
-156766, 201327, -82141, -740882, 780610, 313533, -557272, -170188, -1621887, 210453,
--915365, 817654, -304943, 1753420, -792421, -10478110, 1628330, -3794604, 2422362, 723702,
-7532299, -9689446, -5557151, -7104413, 3806415, 3199751, 4571456, -5058935, 1738925, -1481227,
-635655, -7895761, -6772627, -4929549, -4925791, 8039105, -3236795, -928787, -156766, 2762738,
--1287417, -8390219, 3540664, -3315715, -1112397, 3934727, 2917357, 4511863, 277562, 2430415,
--5914707, -2403034, 5283347, 8831527, 5148592, -343061, -6726456, 4828080, -2174864, -5760088,
-8002598, 2420214, 2746632, -4888747, -2884071, 2792266, -1822140, -2702608, 4219269, -3288871,
-1462436, 255014, -5593121, -1139777, -3703873, 5912560, 2980171, -768262, 993748, -2651606,
-3468723, 629213, -106300, 1079111, -6691559, -3435437, 3766686, 1868311, -1096827, -813896,
--4759361, 7843147, 9642202, 5376762, -4428648, 4005057, 676457, 3425773, -1476395, 2824478,
--2126009, 1845762, 3520263, 1949378, 1685775, 1329292, 63888, -1138703, -401043, 3504693,
-175557, 278099, -1302449, -199716, 720481, 2126546, -264141, 2490544, 397284, 110595,
--94489, 2030446, 2433099, -1016834, -469762, -226560, 375810, 1789928, -103079, 517544,
-127775, 464930, -877784, -15846819, 5287105, 804233, 3941706, 4268661, -3094524, -11207180,
-8637179, 3669513, 8498667, -1562294, 4505421, -88047, -3058554, -209917, -7921531, 9693741,
-2213519, 919123, -4989142, -2865817, -3379066, 2896419, -4449049, 7424388, 326418, 2556579,
-4136054, 2286533, -476205, 2398202, 2290828, -1733556, 1927904, -8252780, 2146410, 3764002,
-3850975, 7413651, 2574296, -4948876, 2481954, -2492692, 5041755, 979253, 3668976, 5645198,
-925029, -1232119, 4422743, -3039763, -4805532, -1772748, 3085397, 7823820, -1853815, 497142,
-140123, 940598, 1535988, 3281892, 1112933, -2050847, -368830, -2768107, 2014340, 656056,
--4955856, -4356171, 1741609, 2759517, 2760053, 4920959, -7568269, -4063576, -5516886, 6500433,
--2862596, -4019016, 2103997, -3703336, -5394479, -1938641, 150861, 5787469, -2041720, 1880122,
--2299418, -1336272, -335544, 1773822, 764504, -1031329, -876710, 1123671, 2869038, 988379,
-1654099, -779000, -545461, 1964948, -77309, 153008, 731218, -1336272, 2563022, -779537,
--178778, -1177358, -3268470, -484794, -719944, -218506, -36507, -1204202, 128849, 2953864,
--731218, -256624, -558883, -1056025, 3910031, 16094316, 8539469, 7646653, 11149198, 3034395,
-2036888, -6818261, -223338, -12751221, -2297271, 4859756, 3526705, 2268280, 2950643, 3512210,
--2752537, -1862942, 7311645, 6594923, 5656472, -425739, 794032, -9104794, -7888781, -2983929,
-5765994, 1869921, -1196148, 3135863, -5305359, 506806, -2736968, 6346888, 4981625, 11143830,
--1105417, 4207458, 3501472, -1787243, -5841156, 10485089, -6093485, -1377074, 4745939, 233002,
-2697776, 7561290, -2412698, 2823941, -7305740, -15611669, -8661875, -5175973, -2097555, 730144,
--623307, -4020626, -8394514, -1742683, -6027450, 1858110, -139050, 751082, -9466645, -4303021,
-6138045, 2126546, -368293, -10487773, -9496173, 5659693, 1016834, 3448322, -6957310, -5545340,
-374199, -2825552, -5935108, -4212289, 3336116, -1280437, 1537598, 446677, 4172024, 3063386,
-1433445, -2113661, 1130113, -372052, -2525441, -2487323, 2402497, -1019518, 713501, -1606318,
--2436857, -418759, -191663, 2174327, -236223, -2104534, 576599, 818728, 2403034, 476741,
-584652, -1008244, 3007551, -1133335, 3423626, -1876901, 2542084, -2233920, 401579, 1333587,
-128312, -157303, 559956, -507880, -891206, -8137890, 6157373, -3616899, -305480, -21188148,
--5009543, -7829726, -5187247, 867047, 6991133, -1387274, 9245991, 4906464, -553514, -9108015,
--3780645, 13570486, 2261300, -8111583, -5941014, -2673617, 6351720, -4950487, 68183, 4381404,
-6911140, 7814693, -8567923, 5768141, 772020, 1637456, 2436857, 3171297, 2744484, 7835094,
-206695, 2383707, -6868727, 9600863, -4829691, -2253247, 1602560, -7958038, 9842454, -1553704,
--19267760, -6360847, -15473157, 951335, -236760, -4666482, 20956756, -3661997, -10394358, -3516505,
--2565706, 9641665, -1333051, 4602595, 5636608, -3928285, 7182259, 9936944, -5060009, 3786551,
--8841190, 4311074, -3179350, -2488934, 10183367, -3726958, -988916, -4527970, 258235, 179315,
-3877282, 5763309, 6089727, -1621350, -1742683, 246424, 7892003, 3753802, 4097936, 164283,
--6463926, 2598455, -3143916, -3505767, -1938104, -57982, -188442, 425739, 1427540, 1513439,
--386010, 4301410, 689879, 1884417, 741956, 856846, -1205812, 1146219, 431107, -1261647,
--1883880, -1213328, -3236795, -2520609, 2226404, 1804423, -2739116, 756988, -149250, 780610,
-3092913, 668941, -1208496, 348966, 999117, 82141, -2498060, 1121523, 9632538, -13450764,
-2685965, 2753074, -4261145, 1809255, 10137197, 10870025, 4029753, 3890167, 5182415, -8404177,
--1464047, -8973260, -190052, 5739687, 3629784, -1885491, -7103339, -2295660, 4798552, -9301289,
-315680, -658204, 4294431, 8870718, 838592, -4770098, -3641059, 9492415, -6096169, -2934537,
-5458904, -3387119, -11212012, -4051765, 2552284, 1908039, -4482335, 1061931, 5841693, 4043712,
-5634997, -648003, 4249334, 8076149, -3550864, 4031901, 3469797, -5495411, 11963631, -11477226,
-6859063, 3037079, -15972447, 15313169, -9888088, 2194728, -1759326, 12226698, -5172215, -8627516,
--1832340, 101469, 2223183, 9401683, -7958575, -363998, 580894, 577136, -1421634, 2805151,
--6467684, -920197, -4607963, -8597451, -9546102, 5185100, 4191888, 4019016, 111132, 6087580,
--2771865, -6959458, 1840394, -12351789, -10308995, -1907502, 3052111, -68183, -1886564, -1561758,
-1512365, -6742562, -2232846, -1388885, -1069447, 3189013, -290984, 561030, 296890, -2186138,
-1158567, -2461553, 235149, 1235340, -2665027, -535797, 2352032, -1748589, 69256, -1213328,
--45097, 894427, 144418, -3675955, -520765, -4832, -114890, -597000, -2201708, -3784403,
--841814, -193810, -449361, 3153580, 2391223, -10718628, 8497056, -24561844, 13445932, -9778030,
--6720013, -12010339, 1316408, -1445793, 2076080, 8567923, -7242389, -2776696, 6791417, 6235219,
--2101850, 2421288, -3363496, -11259257, -1140851, 2825552, -5840619, 9070434, 1450088, -1066763,
--5479305, -5315559, 1142461, 13980655, 484794, -1972464, 3723200, -12098386, -2202245, 4411469,
--8310762, 11746736, 7345468, -427886, -3722663, -3943317, -4656282, -8043937, -10062035, 8347806,
-490163, 14833743, 1217623, -773094, -6799470, 1231582, -2744484, 3330210, -338766, -9351754,
--7444789, -9529459, -16184511, -2235531, 14019310, -13531831, -964757, -14169097, 2130841, 3993783,
-3163244, 10115722, -1243393, -14565308, 10324565, -1009317, -7182259, -5874979, -12721156, -4306779,
--9703942, 5253819, -14831059, -2445984, 5650030, -107374, 991601, 7037304, 3454228, 8451422,
--92342, -4563940, -1931662, -3125126, -281857, 3124589, -986769, 553514, 303869, 345745,
--2578054, -3571802, 2133525, -2498597, 970126, 461709, -634581, 1130113, 252866, 481036,
-4951561, 929860, -421981, 979789, 1482301, 1138703, -2676838, -370978, -5499706, 2035815,
-2660195, 4228932, 1391033, 1469416, -207232, -2702071, 1512902, -100395, 10517301, -3825742,
-9349070, -9119289, -4887136, 6454799, 2026151, -12318503, 772020, 16117939, -18545668, 1136019,
-8625905, 20857434, -8922795, -5248987, -2302639, 16163573, 15802795, -16678969, -805843, -12801150,
--6171868, 8420283, 8400956, 11074573, 6243272, -2135136, 7734699, -9531606, -5182952, -907849,
--1487132, -13818520, 1216550, -261456, 18343268, -2781528, 9036611, 2241436, 5354751, 12347494,
--7445326, -3258807, -18132278, 12546673, -15979963, -2780991, 3667365, -2101313, -9228811, -2258616,
-2621541, -6505265, 1800665, -1013075, -1395328, -20313584, -14427869, 1069447, -10458782, -14243722,
-2644626, -13163538, 4219806, 8669928, -7758859, 14846628, 3113851, 9552007, 10190347, 2677375,
--7538205, -8887898, -11127187, 5792837, -11545409, 7022272, 8375723, 11597485, 2056216, -8142721,
--5254356, 299574, 1139240, -15227807, -352187, -9834938, -1659468, -2729452, 644782, -7179038,
-981400, -1584306, -76236, -4633196, -3405372, 1207423, 7665443, 888521, -697932, 1120987,
--1054415, -2741800, -2747705, -2972117, -1309428, -3541738, 3976066, 2973728, -233539, -2910914,
-4719632, 7110319, -1520418, -1116155, -1618129, -612033, -194884, 1834488, -2620467, 2899103,
-2630668, 1890323, -2490007, -263067, 1505923, 2165737, 4877472, -9814537, 25395068, 10645613,
-4378183, 13121125, -5030481, 2793339, -13533442, -17352204, 10937134, 22402550, 6634114, -63888,
--22119082, 26709864, 3835943, 3324305, 3806952, 1029182, 4803384, 1562831, -3839164, -124554,
-6716792, -4094715, 8445516, 1664837, -6680822, -9206262, -2541010, 8484708, -2330020, 2794950,
--3835406, -3352759, 127775, 23965380, 3857418, 3497714, 3219078, 2055142, 14329085, -5309117,
-4114579, -9233643, 17075716, 23835994, 6193343, -1339493, -8482560, 24903830, 11680164, 396748,
--9633075, 3666828, -5781563, -863825, -11049340, -4121558, -7374996, -10099616, 16364899, -4886062,
-12059194, 2554969, -9412421, -116501, -20136954, 19160386, -1390496, -9134322, -7153268, -11648488,
--14381698, -7846369, 22269942, -6924024, 8022462, 10133975, -9000641, -8548596, -16068010, 2437394,
-10834055, 3733400, 10359998, -2375654, -2044941, 477278, 2947421, -4408247, 1241782, -7992934,
-2605435, -363998, 9091372, 6416681, -4907537, 500901, -262530, 5410585, -1829656, -7195681,
-1605244, -222265, -576063, 2676838, 505196, -1128503, -3599183, -4039417, -766652, -965831,
-4286914, -165356, 4300336, -5888400, 1435593, 4437238, -8335458, -6088116, 2212445, -2656974,
-6269579, 7528541, -5606006, -5959267, 23675470, 23209466, 28672128, 17252884, 5694053, -7293392,
--7569343, 4287988, 8330089, 10188199, -15234786, -453119, -1813550, 7640747, 6038187, -10576357,
--13036299, -53150, -4937602, 12426951, 14629732, -8590, 7756711, 2550137, 3102577, 16889422,
--10313290, -13676250, 10787347, -17909476, 1551020, -5521181, 9887552, 5041755, 185757, 11557757,
-10615549, -9650255, 12027519, -28454, -5141613, 2842732, 13065827, -5051956, 5591511, 9683541,
-4386772, -20875152, -12065637, 2054605, 1106491, -14193256, -9693204, 4712116, 6756521, 5738077,
--19332184, -13507672, -13452374, -1069447, 8384850, 12221329, -30712774, -22577032, 3760244, 4718559,
-17745732, 6254546, 6510097, 12916577, -1387274, -3316789, -4685810, 31712964, 10967199, -5005785,
--16592532, 15160698, 9908490, -4960687, -4505421, 2339147, -4564477, 8097087, -2922188, -1736241,
-4771172, -1183264, -1899449, -2501819, 5010616, 12998719, 93416, 922881, 457414, 5651103,
-7262790, -1853815, -4568772, 1961190, -424665, 1458678, 853088, 1109175, -6164352, -3370476,
-4371203, 438087, -2507724, 2126546, 6082748, 4728222, -8156680, -1839320, -5422396, -5230197,
-3872987, -6243809, 2447058, -3371549, 6059662, -7225209, -10075456, -19494856, -18979460, -15596100,
-6016713, -2006824, 8800925, -17195976, -2838437, 805306, -6639483, -8046085, 13977971, -5354214,
-2827162, -210453, 969052, -14020384, -5164162, -11988864, 1591285, 1585380, 3111704, 33153390,
--12918725, 9158481, 13951664, -7080791, -6687801, -10028212, -2030983, 15488189, -15804943, 10821170,
--1040456, -2630668, 1448478, 1590212, 8485782, 956704, -16767015, 12825309, -10446434, -24054502,
--19478214, -9752260, 32561220, 27635968, -15024869, -4319127, -20624970, -17204028, -6800007, 20123532,
-518617, 13881871, 7248294, -9458055, 10573136, -7199439, -21467320, -1812476, -13019120, -2646774,
--6979322, 42372000, 382252, -35062504, 27528056, -11104101, -7824357, 27825482, 28267864, 100932,
--12386686, 5523865, 6908992, -38074348, -16391206, 1018981, -5604933, 19947438, 8434242, -28880970,
--4329864, -2309619, 13091060, 8341900, 5695664, 5189394, -6022618, 1040456, 2291902, 12099460,
--1503239, 1673427, 2368138, 2076080, 7102266, 3380676, 157840, -8244727, 10445897, -935229,
--52076, 497142, 10737, -4449586, -6960532, -4757213, 944893, -1709934, 3039226, -462246,
--3085397, 3333968, 7707856, -10245644, -3336653, -3118146, -1472100, 2935610, -199716, -2920041,
--5783174, -2156074, -1494649, 5223754, -16862578, -10484552, 5126044, 4002373, 9173513, 28868086,
-4981625, -731755, 6759205, 1515587, -11996917, -7365332, 6473053, 1494649, 23574002, 5575405,
--1460826, 8536784, 12661027, 12836047, 13813689, 757525, -9674414, -2675228, -22111028, -2994129,
--24967182, 13944685, -15190226, -5871757, 84826, 20237350, -11712913, 11267310, -8222178, 6833293,
--10314364, 12921946, 19520626, 1343788, -4111358, -10482941, -15121506, 8484171, 9715753, 24752970,
--3337727, 1255741, 10916196, 39637716, -9230958, 5953899, -6397354, -22054120, 15511274, -3145527,
-11035382, -1354525, 2749316, -13281649, 36702108, -55004572, 40520332, -63114008, 27235998, -32552094,
-10140955, -25522306, 9218074, 16940962, -4023311, 12590697, -6448357, 46057620, -27906550, 30583926,
--47353088, 23912768, -18556944, 23005992, -15430744, -16719771, -8165270, -4228932, 11632382, -3177739,
--2030446, 1162862, 727997, -5911486, 8279087, -8919573, 8748848, -6445672, 2689187, -10258529,
--5731097, -7579007, 1371168, -6968585, 8638790, 9205726, -8711267, -138513, 3499325, 8448738,
--1267015, 3030100, 6930467, -6487011, 11454141, -3184182, 15146202, -9023189, 18141942, -12936441,
-4671314, -1063541, 10120554, 8395587, -1603633, 4915590, -13973139, 15932181, -10944650, 3871913,
--11121281, 8053601, -14836428, 5098126, -1249299, -5439039, 5609228, 14039711, 11213623, 44458816,
--30917322, 12972949, 8119636, -26612692, -748398, -5189394, -7585986, -13648332, -742493, 1627256,
-17670570, 6646462, 9244380, 13340705, 10749229, 458488, 14733348, -16940424, -2455648, 20540682,
-2275796, -28049358, -6468221, -36723044, -6882685, 6475737, -6823093, -8513699, -1607928, 32940252,
-8304856, 2580739, 4009352, 8293045, -2486786, -18797998, -5782100, -2030446, 3497177, -4285841,
--8817568, 23872502, 12811351, -4858145, -1138166, -5052492, -21534966, -17608292, -12917114, -10667625,
-24024436, 5853504, 8864276, -14416595, -14068702, 4589173, 9776419, 9087077, -4074313, -2781528,
--16335371, -10724533, 14254996, 710817, -39533028, 13970992, 21561272, 6968585, -17231946, -10530186,
--8588324, 2899640, -12408697, 6190659, -29100550, -38823284, 16089484, 14093398, -7780334, -14232985,
-10903848, -6337224, 2818036, 3441880, -5736466, 6287832, -3556770, -3595425, -2114735, 9410810,
--6659347, -1903207, -7284802, -42950, 603443, 6310381, 6468221, -670015, 3809099, -4538707,
-7559680, -5216775, 6174553, -14251775, -6519224, -1919850, 4126390, -4625143, -9338870, -7108171,
-3405372, 7421167, -281320, 9573482, 2672544, 3813931, 581968, 6247030, -3512210, 5971079,
--1433445, -11744051, -9069360, -3432753, 5365488, -6588480, 3899830, -36660232, 32088774, 39051452,
--3675418, 28391882, 1136556, 4335233, 12350178, -25087440, 9102109, 18559090, 18297634, 7679939,
-5654325, -18142478, 13248363, 7799124, -11023570, 5851356, -2207613, 21625160, 5944772, 5524402,
-12765717, -5138929, -14752676, 4247723, 27538794, -9884330, -5383205, 24879134, -9165460, -11149198,
--9088151, 8559333, 31995896, 44511968, -2789581, -28896004, 43656196, 15028627, -28782724, 32561220,
-12457016, -8090645, -8370355, -12227772, -20285130, -1162862, 10632192, -17399450, -11398306, -36742372,
--5000416, 21374442, -44508748, -24111410, 7019587, 7167764, 8772471, 26990112, 23884850, -39553964,
-321586, 1511292, -27992986, 7812009, 13316009, -14364518, -10252624, -12128988, 8109972, 31078384,
-9725953, 16161962, -21253646, 10829760, -24064702, 2104534, -16183974, -65751116, 50287088, 12923020,
--18352396, 34039228, -11744051, -15510738, 9156870, 6956237, 8757975, 13310104, 5383205, -13371307,
--4246649, 13058311, -429497, 5024575, 2105608, -2144263, 3205656, -5865315, 4343286, 12200391,
-4404489, -7199439, -5326297, 3724811, -3267396, -6532109, 2489471, 7611219, 4423280, -22741314,
--6877854, -16748225, -8689793, 9761387, -7467338, -9361418, 8909910, 5756867, -9816685, 12469364,
--9210020, -4030290, 4478577, -7228967, 8196945, -3646427, -13492103, -20862266, 24039468, 79703856,
--25447144, 702227, 6124624, 35986996, 31905164, -10442676, -13852880, -20099910, 855772, 15243376,
--507880, -10276246, -10569378, 14384919, -7849590, -19335406, -17285632, -3491809, 29287918, 20542828,
--23291608, 1564979, 423591, -10155450, 11545409, 4271882, -8312373, -2743947, -6538014, -3123515,
-37387152, -13923210, -24831354, -17380658, -14113799, 33064268, 913754, -7667591, 30445950, 20928838,
-8318278, 15493021, 29938070, -18210662, 4614406, 29127932, 17029546, 22251688, -25282324, -7129646,
--948114, 10656351, 10038949, -23933168, 2279554, -31442918, -47288664, -2498597, -12514461, 21951578,
-24413130, -6411850, -1944547, 4950487, -17199196, -45808512, 30817464, -22203908, 4758287, -8556649,
--15496242, -8997956, -17969070, -36318780, 21432424, 19068582, 23142894, 4453344, -28864864, -50706920,
--15063524, -14042932, -6214818, 16002511, -10384157, -2558727, 3045669, 2125472, -8080444, -3715147,
--6495065, 754841, -2904472, 5326833, -3200288, -3969624, 5859946, 7611756, 6037651, -12306155,
-3993783, 653909, -1132261, 99858, -26972394, 1254667, 3700651, 3911105, -17783312, 11500312,
--2576444, -14846628, -12127377, 7115150, 9474161, -1849520, 5611375, -9193377, -6449431, -6296959,
-683437, 10924786, 2749316, 10423886, -302258, 4771172, -15706695, -2544768, 3780108, 2078764,
--12459163, -3775813, -39140036, -22436910, -18248242, -46079092, 53204444, -1219771, 28021978, -6394670,
-1392643, -32116154, -17566416, -16571058, 3707094, 25164750, -1159104, -26201984, -19602230, -37455872,
--41704132, 35763656, 13187160, -32457604, -10082436, 16014322, 29773788, 4172561, -36970004, -22473416,
-7275675, 10340134, 9165460, 21577378, -22991496, -21808234, -3361349, -7739531, 3032247, 6426345,
--44427140, -8185671, -30991410, -19839528, -41329396, -15661598, 56581364, 9760313, 1773285, 13883482,
-14017163, 4435091, 42041288, 33298344, -11026255, 11313481, 56810068, -14885820, -13293998, -13571560,
--42355892, -1631014, -23201414, -52585432, -55175296, -28913182, -28494960, 12885976, -21347062, 1866700,
-11161009, -37470904, -13758391, 238908, -187905, 9674951, 24477018, 16295643, 29520384, 40018356,
-29003378, -3574487, -21162914, -30655866, -2637110, 12688407, 3710315, -4313221, -409633, 8692477,
-6993818, 18849000, -2148558, 3005403, 307627, -6280853, 6134824, 974421, -3063922, 16107201,
-6939057, 3656628, -15127412, 10159208, -5449777, 7661685, -14359149, -39756900, -1898376, 15698105,
--3002719, -21103322, -13581760, -15444702, -11686069, 5036386, 6892886, 7883413, 2110977, -1413044,
-5873905, 15557982, 25927106, 24531242, 30456686, 26115012, -2550137, 17559436, 39727372, 2822867,
--17523466, -24922622, -25156698, -34163244, -27809376, -13284871, -14970109, -2090039, 35221952, -23026394,
-6957847, -26669062, -9042517, -29083908, 3735548, 35279400, -811212, 21805012, -43616468, 38343320,
-12850005, -7857106, 30392262, 4261682, 13826573, -12155294, -14347338, -272730, 9312563, 7137162,
--30455076, 27960238, -33749852, 4135517, 9446781, -11457362, 19894826, -20977694, -11916387, -2316061,
--7484518, -10619307, -2342905, 4502200, -15583752, -18369038, -5950677, -3214246, -4508642, 11162620,
-6067178, 4548907, -22282828, 5930813, 27114128, 35941360, -26511760, -13357885, 30561914, 41794864,
--25338160, -15671262, 17627082, 7398081, -20122996, 16709570, -47270948, -9309342, 19267224, 37790880,
-4920959, -23442468, -21195126, 5736466, 45296336, 3948686, 6794639, 1359357, 15035070, -2901251,
-33666100, -368293, -37234144, 23502598, -24291798, -7450695, 10314364, -14219026, 3409130, -30316026,
--11288248, 28111634, 12958990, -12594455, -17993766, -9851044, 2366527, -14615237, -4395362, -3222299,
--8940511, -5491653, -4305168, -18975702, 12040941, -7092065, -8397735, -27485644, -6906308, 20219096,
--13961865, -7721278, -7261716, -15697032, 30262340, 12410845, 1201517, -992674, -16749836, -25160456,
-1660005, 22507240, 18526878, 6199249, -18866180, -11057930, -8391292, 10980621, 2075006, -16828756,
--4099010, 1093606, 6710350, -14968498, -9996536, -8829379, 23551454, 12037720, 1604170, -14539001,
--12512313, 13161390, 28309740, -282931, -12048994, -17365626, -5794985, 7849053, 716186, -4001836,
-1104880, -3464428, -2565706, 2673080, -56834764, -15902653, 9708774, -19330574, 56313464, 41024992,
-27085138, 14196478, 38018512, 26644366, 9004399, 18095770, -44542032, -60117732, -8256001, 404801,
--15349676, 7850664, -2784750, -15832323, -19582904, -16209743, 31150324, 26865558, -21567178, -2957622,
--2936684, -5614059, -7615514, -11460046, -16304770, -23124104, -4299799, 40349072, -12874701, -22687090,
--10665478, 37860672, -17678086, -17655000, 58954332, 20772610, 10003516, -14487998, -32240172, -22748832,
--33257006, 8855149, 27630062, 74175696, -65212636, -27864674, 38434588, 52910776, 9373229, -3277060,
-68245960, 32516124, -21383568, 21586506, -7730405, 145492, -47068008, -23906324, -16372415, -77454368,
--32689532, -12564390, 41769632, -22608170, -12914967, 30988190, -1947231, -4196720, 7556458, 21793200,
--21012590, 15391015, 23779624, 493384, -4380867, -43728672, 20276004, 15615427, -50363324, -3686693,
-5590437, 3246995, -4172024, -22436372, 6094022, 3790309, 6429029, -3561602, -6354404, 16134582,
-3571802, -3379066, 11258183, 4607426, 29799020, -4069482, 9859634, 1869921, -23438710, -20536386,
-14541149, -11433740, 8890582, 11078868, 7002944, 6840273, 324807, 19609210, -6130529, -4912369,
--7608535, 5627481, 15408732, -23007066, -8429410, 11049340, 5266167, -13034689, -23336168, -5998996,
-6577206, 49292264, 18099530, -4116189, 12794171, -2502355, -4552666, -18168786, 8727374, 7524246,
--14321568, -6982006, -52141440, -2122251, 21483964, -5037460, -21738976, 9519795, -4878009, 23463944,
-4696010, -11365020, -174483, 25119116, -14292577, 4042638, 9079561, -7641284, -215822, -13587666,
-27741194, -1664837, 4132832, 445066, 13408888, -6068789, -5216238, -8669391, 5548561, 10425496,
--4564477, 12385075, -5358509, 7632157, -13007845, -10248866, 15799574, 20259898, -26170310, 1224603,
-39192, 2454574, 8253854, -16466368, 25266756, -22626424, 20337208, 2848100, -35321812, -1924682,
-27576374, -35955856, 17162690, 158377, 4652524, -8631811, -5379984, 7268159, -10424959, 36826660,
--27236536, 4074313, -7304666, -3302830, 9088151, 517544, -4464619, -843961, 11141682, -345745,
--12773770, 3602941, 6491843, -21392158, 16648904, 7515119, 789200, 15346455, -5612449, -4745939,
-7229504, 3353833, 4587025, 2609730, -4229469, 8664023, 3733937, 642635, -9356049, -1545115,
-4575214, 8304320, -14202920, 7434052, 8853001, -12554726, 5958194, 1842541, 2139968, 6626061,
--3733937, 1480153, -2340220, -18211198, -273804, -4403952, 7955353, -5130339, 3037616, 1997160,
--751082, 2428267, 4609037, -3018825, 4295, 819265, -130997, 1315871, 5534066, -5647345,
-5185100, -4125316, -26274462, -74187504, -105962208, 35633196, 94238560, 20808042, 261197360, 215122032,
-145350288, 245979760, 128133368, -8739185, -30689152, -97119408, -224258496, -185192016, -180112672, -250465312,
--185173216, -54378580, -40103184, -6555731, 87158312, 40580460, -10827076, 55288040, 91443608, 44781476,
-42848204, 83224120, 49582712, 38241316, 75406744, 118406880, 49300320, 69510288, 111144624, 19077708,
-7546258, 98209792, 58076012, -37649684, 47359532, 61028800, -63678260, -18997178, 70382168, -14176076,
--42127724, 90914256, 48194364, -56398828, 48798344, 64725156, -86312200, -80798000, -34509524, -208447648,
--276600736, -173480704, -244529136, -325952576, -227131296, -232436656, -300528000, -237652896, -164791456, -178677088,
--106789528, 10205916, 66716412, 145021184, 237282992, 295772384, 364217536, 404668608, 442085824, 468772608,
-420947072, 331012064, 305788800, 196009952, 59263568, 46551540, -31323196, -150494576, -118199648, -50157700,
--111970336, -115118008, -24298240, -81093816, -155436480, -93868656, -68067712, -139036688, -118374664, -41826004,
--105197704, -124978176, -9959492, -6238977, -56297356, 22367652, 13051332, -90618440, -67170064, -38986492,
--129012768, -177761712, -145357264, -198545056, -246279872, -182703072, -146731120, -139179488, -60919816, 28548110,
-74086576, 109913584, 151769648, 171272560, 153622384, 200292048, 256780528, 266178992, 248589488, 253168992,
-244185536, 198255152, 223857984, 202116336, 86896312, 11434814, -49597208, -109308528, -115546968, -95266672,
--112528144, -110007536, -95225864, -93947576, -100153808, -82252384, -73451456, -70123928, -66205848, -51005420,
--48302812, -50069656, -39617852, -25890600, -23276038, -14841796, -1594507, 6151467, 6395743, 7705708,
-2896419, 1775969, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
-4054449,
-9705015, 164283, 397821, -4638028, -3712999, 2798171, 1709934, 250719, 3958349, -5982890,
--2035815, 9687299, 654446, 1883343, -2555506, -3277597, 4550518, 3805341, -1604707, 3745212,
-151934, 605054, -3704409, 1323387, -3373697, -2634426, -3314104, 1117228, 125628, -1085016,
--380105, 1123671, 2874407, -1386738, -5276904, 81604, -3764002, -4810900, -1267015, 2155537,
--746251, 1923072, 1219771, 1762010, -764504, -685584, -910533, -787053, 1614908, -66035,
-3328063, -458488, 4122632, 676994, 927713, 3919158, 1393717, 996432, 5076652, -2076617,
-1675037, -1777043, -3600256, 3288871, -1197759, -1074, 1212255, -613643, -2990371, -931471,
-2143189, -1402844, -81068, -2909304, 1394791, 181999, -1938641, 222265, -3090229, 451508,
--2964064, -278636, -44560, -410169, 1708323, 812823, 446140, 928250, -325881, 1714229,
-1251446, -156229, 383326, 370441, -64961, 46708, 572841, -740882, 396211, -942745,
-791348, 69256, -146029, -57445, 655519, 151398, -605054, 191663, -31675, -367757,
--913754, -12736726, -6614250, -2976412, -2764885, -13422, 31675, 945430, 179315, -715649,
--5219459, -2368675, -5348845, -8376797, -6998113, 3947612, 4869419, 4925791, -1943473, -585726,
--557272, -1102733, 1812476, 755914, -1784022, -3797825, 2732136, 2331630, 3413962, 891206,
--1151588, -2080912, 967441, 1628866, -390842, 3467649, -1690070, -100395, 3370476, -2583960,
--4097936, 323196, 5663988, 1298691, 1251983, 789737, 47782, 722628, -878321, 1004486,
--4478041, 726386, 4643934, -1067836, 67109, 456877, -1586990, -891206, -645856, -759672,
--1244467, 2837900, -2668785, 2785286, 2374580, 5213017, -363462, 2928631, 6659347, -1233193,
--5369783, -6021544, -291521, -790811, 322659, -5111548, 1479616, -3589519, -2669322, 1222992,
-3725347, -1538135, -2846490, -3409130, -667331, -377957, 936303, 296890, 2139968, 1263257,
--121333, 1077500, 309238, 2109903, 1596654, 1001264, 456877, 457414, -373662, 1410360,
-64961, 420370, -176631, 26307, -1069984, -4295, -209380, 8849780, 6982543, 2968359,
-3580392, -2310693, 1621350, 6119255, 3008088, 6590628, -2557653, 2656974, 3788161, -191126,
-4854387, -2507187, 3039763, 551366, -3084860, -788127, -571768, -194347, -865436, 361314,
--1541356, 485868, -1124208, 6027987, -1373853, -333397, -2684, -2720862, -7652021, 4360466,
--1805497, 1683090, -3031173, -2881386, -3243774, -2159832, 2004676, 5782637, 4575214, 1920387,
--316754, -1243393, 1847373, 4155918, -911607, -1365800, 5160403, -2282238, 2476586, -2567317,
--2001455, -1231045, 1927367, 2038499, -3607236, -2490544, 108985, 3868155, 5021891, 2719251,
-3915937, -538482, 3668976, 1438277, 3852586, -2164664, 1549946, 8792335, 4105989, 3731253,
--894964, -2473364, -5989332, 3480534, 1505923, -2474438, -2477659, -815507, 1836099, -1821603,
--834834, -1639604, 61203, 1258425, -528818, -2468533, 719944, 851477, 1422708, 1462973,
-205085, 2071785, 1025423, 861141, 645319, -678605, 1466195, 135828, 0, -710280,
--1077500, -1185948, 293668, 851477, 356482, 54761, 267362, -71404, 1317481, -1795296,
--423054, 543313, -712965, 717796, 2754685, 10166188, 1449015, 3689377, 7364795, 139586,
--4208531, -1805497, -1262720, 290447, -2651069, -7227356, 2902324, 243739, 157840, 3020973,
--4792647, -2215130, 7550553, -1850057, -2849174, -4472672, 155156, -4226248, -703838, -1410360,
--1269700, 542240, 6101538, -196495, -1912334, 1789391, -4847408, 6505265, -827318, -1462973,
-8135205, -4685810, 388695, -5537287, -2529736, 471373, 260382, 2128693, 2569464, -4940823,
-1473711, 2070711, 1687385, 474057, 2335389, 1693291, 3409130, -3127810, -1668058, 6418292,
--2667175, 2452963, 615254, 1844152, 1661079, -545998, -2171643, -336618, 4537633, -2698850,
--296353, -1434519, 1054415, 4047470, -2270427, -5048734, -9748502, 609349, -397821, -839666,
-42950, -3750580, -2623151, -5439576, -2138357, 2707977, -86436, 1685238, -642098, 3388729,
-2352568, -31139, 1764695, -135828, -205085, 1176821, -2110977, -1129576, -1712081, -10737,
--2044941, 1224066, -68183, 584652, -755377, -656593, -79994, -736050, 478889, 775242,
--1892470, 909996, 776852, 450972, -1803886, 964757, 650688, 1717450, 1813550, -158377,
--615791, -940061, 909996, -471373, -324270, 344671, -4330938, -10963978, 5577552, -3653407,
--6138582, 209917, -11588359, 2443837, 3634079, -1358283, 8585103, -3333968, -10186052, 2385854,
-3961034, -3644817, -7186554, 12322261, -710280, -817654, 3218541, -2818572, -1520418, 1189169,
--6001680, 3480534, -577136, 1674500, -1204738, 5720360, -1400159, 3172370, 2923262, -5805722,
--2743410, -3306588, 6020471, -3042984, -1714229, 4446365, -1513976, -3445101, 2688113, 8221105,
--4152697, 3966939, -4292283, 5378373, -2947958, 2798171, 613107, -3012383, -8434242, 4674535,
-6179384, -648540, -1893007, 3442416, 4348655, 4089346, -5788006, -740882, -5099737, -548145,
-1872606, -3673271, 1442572, 3974992, -4251481, -163209, 882616, -4190814, -2952790, 3791919,
--2707977, 2983929, -1745367, -5361193, 1126355, -5199595, 1379758, -2007360, 1841467, -5718749,
-5259725, -4325032, 576599, -4024921, -93952, -303869, 1107565, -476741, 9664, -1296543,
-1409286, -3888019, 1376537, -3193845, -2494839, 19327, 2337536, 1044214, 456877, 668404,
-176094, 1326071, 2965138, -2515777, 2469069, -1641751, -305480, 1509681, 1263794, -1796907,
-6979, -4398584, 5557151, -6121939, -6093485, -10421201, 4381404, 11029476, 1666447, -1970316,
--964220, -1848983, 9587441, -5750425, -5257040, -1233193, -5794448, -1770063, -6294275, -2706366,
--4421132, -8721468, -2460480, -1917166, -316754, -950798, 2255395, 5216238, 1850594, 2587718,
--8028905, 1003412, -139050, -2501819, 2774549, 1494649, -2346663, -1022739, -5717139, -6319508,
--932008, 7031935, -2064269, -3597035, -779537, -2327872, -4937065, 97711, -5154498, 10547903,
-8879308, 2314451, -2718178, -2450279, 926102, 1602560, 1816234, 1752884, -643708, 3938485,
--3721052, 1752884, -3273302, 120259, -39192, 2220498, 1539209, 4962835, -2142115, -3016141,
--2769717, -11418707, 357019, 2405182, -1155346, 4169340, 1794760, -3419331, 996432, -5981816,
--2231236, 521839, 4600447, 1983738, 6294812, 1289027, -752693, 61740, 2334315, -2580739,
--328028, 627065, -1079111, 1636383, -2255395, 1212255, -1717450, -1378148, -278099, -1900523,
--1886564, -2331094, -1239635, -660351, 1773285, 1501628, -1744831, -2469069, -755914, -1881196,
-1330366, -2101313, 1052804, -1209033, -345208, 2159295, 155693, 1811939, -10768557, 1743757,
-10979010, 10347650, -11121281, -10151155, 2622615, -8078297, -4290673, 1155346, -567473, -3306588,
-8331163, 3680787, -11748346, -966368, 696322, -125091, 7501698, 2773475, -5460514, 7883950,
-2942053, 1019518, -4239133, -4532801, 3377992, -2916820, -7959112, -1475321, -1040456, -3581466,
--4750771, -6445136, 6830609, 452582, 1008780, -4474282, 109522, 4817343, -3820910, -8103530,
--8184597, 8560407, 1930051, 8078834, -1291711, 2292976, 5973226, 12124693, 3924526, -1558536,
--6204081, -2698313, -3092377, 1813013, 658741, -4874251, -1964948, 7034083, 4993437, 9568650,
-4497368, -6678138, -6353867, 7909719, 4226785, -4214437, 49392, 8147553, 641024, -498753,
--6356552, 6985765, 5266167, -1291175, 9780714, -1504849, -2816425, -10263361, -1347546, 466541,
-5444945, -7099044, -433792, 3101503, -1720134, -5121749, -4759361, -690416, -471373, -977642,
--5950141, -5314485, -3117610, 1850594, -108448, -2473901, -809064, -380105, 530428, 442382,
-891206, -559420, 2012729, -1704565, -410169, -5369, -1177358, -3992172, 270583, 2231236,
--705985, -3533148, 307627, -894427, 1248762, 147103, -429497, -367757, 1153736, -593242,
-2126546, 1036698, -55835, -1982127, 1441498, -1575716, 1456531, 1793149, -4409321, 1745367,
--1649804, -889058, 5393942, -8987756, 5403606, -5893232, 1062468, 4711579, -62277, -2396592,
-1760937, -6171868, 245350, -4807679, -13950591, -4270808, 5899138, 3813931, 2146410, -3398393,
-2841658, 1268626, 14886894, 2550137, -5051419, 5531381, 1081258, 1169305, 9892383, -2866891,
--2800856, 3430068, -6997576, 8382703, 7740068, -202400, 4371203, -1654099, -4291209, -581431,
--5389110, 425739, -5277441, 2028835, -91805, 1493038, 589484, -9051107, -1875827, -1190780,
-483721, -4575214, 1951526, 1975685, -1751273, 11876121, -5217312, -10609106, 6298570, 10382010,
-2345589, 2663417, -4613869, 8904004, -3064996, 1474784, 3995393, 1144609, -4065724, 4234301,
-1828582, 484794, -44560, -8185671, -2898566, 3978750, 7231651, -2834679, -5377299, -7449621,
--2435783, 2474438, 1355062, 3689914, -9172440, 1701344, 6155225, 790274, -367757, 2341831,
--1921998, -1061394, -265751, -517544, 3226057, -929860, 1020055, -981937, -678605, -725313,
--2349347, -1336809, 1104344, -1659468, 2221572, -370978, -406411, -1094143, -1321239, -6969658,
-651224, 3702262, -190052, 1281511, -671626, 2289755, 774168, -1376537, -1605781, 1276142,
-30389042, -8327405, 183073, -3066607, -1944010, -6772090, -153545, -17808008, 9247065, -6402723,
--452582, 10300942, 5086852, -6842957, -7342247, -2752537, -6279242, 5659693, -14732812, 2712809,
-6095096, 8419747, 1650878, 2503966, 332323, 1364189, -1955821, -4640176, -13470091, -1999844,
-1694902, 6179384, -4862440, 5957657, 2314451, -2464774, -881005, 4609574, -4892505, -4625680,
--2672544, -3540127, -544924, -11934104, -5596880, -2863670, -357019, 9421011, 2087354, 8986145,
-3076270, -434865, -5684389, 667331, 533113, 1349157, 3089155, 12602508, 1447404, -11846057,
-3022583, -4661114, -360240, -4485020, -5022428, -2365990, 4804458, 3102577, -20969640, -7886097,
--6263136, 3936875, -935766, -4526359, -2920041, 11787538, -4890357, 9048959, -8593156, -6465537,
--9302899, -5087926, -9887015, -1576790, 13116830, 3041374, -1627793, 1534377, 5551245, -153545,
-6852084, -3923453, 2614025, 3812857, 4633196, 1803886, -871878, -9171366, -3431679, -4734128,
-18790, 2908767, 2503966, -1896228, -708133, 3798899, 1548873, -3064459, -1316408, -2166274,
--985695, 112743, 1931125, -1657321, -1622424, 4840428, 4076461, 1246077, -637803, 1713692,
-3323231, 188979, -3059627, -358093, -3121904, 719944, -2809982, 1559073, -4690641, -5100811,
-3808562, -9479530, 557809, -22160420, 5369246, -7236483, 2138894, -7522099, -16397648, -2490007,
--3836480, 11651709, 4900021, 4218195, -417149, 15455440, -11613055, 2868501, 4356708, 11951820,
--13748190, -7791608, -2740726, 1175210, -941135, -3854196, -1296543, 4160750, -7411503, 1556389,
-4351876, -799401, 577136, -5916318, -6849936, -4179540, 18420040, 219043, -4499515, 7224672,
--4444218, -9222369, -7614440, -4972499, -1345935, 3326989, 670552, 695785, 10226854, 9417790,
--1699733, 3395709, 2249489, -11764989, -8126078, -450972, -953483, -3032784, -8074002, 9976135,
-11966316, -9749039, 6459631, 6136435, -1921998, -9312563, -15145128, -14609868, -11322608, -6598681,
--13069049, 1261647, -10698227, 6486475, 5773510, 1026497, 129386, -18187040, 1196148, 415001,
-1347546, -9284109, 3147137, 10453950, 1400159, 2710661, -8266202, -5046587, -1009854, -8636642,
-2035815, 5505075, -2566780, -3155727, -3997541, 3470334, 5534602, -9592809, -5288179, -393526,
-6465537, 2477659, -2805151, 2352568, -328028, -17180, 2916283, -1772211, 3755949, -4203699,
--1498407, 3224984, 2744484, -974421, 7267085, 558346, -4529043, -3766686, -632971, -3084324,
--2856690, 487479, 2065879, -1250909, -9032853, -7677791, -5236102, -6020471, -1839320, -13604846,
-635655, 14735496, -5182415, 7730941, -3085934, 14689862, 12526809, 5092758, -15308874, -4013647,
-20509006, -5378910, 15208479, 2291902, -14539538, -7470022, 17179332, 277025, -11523934, 177167,
--9823664, -1447941, 3496640, 1314797, -1955821, -17202954, -15184857, 4101157, 11007464, -9867150,
--850940, 4193499, -724776, 1587527, 18276696, 3271155, 2669859, 1490891, 6047314, -8178155,
--5723044, -4240744, -19245748, -6622303, -7218767, -5071820, 5087389, 3310883, -1212255, -2000918,
--7611756, -11622718, 15069430, -3325915, -13233331, -6280316, 2695629, 10014790, -7994545, -2580202,
--8485782, -1668595, -10139881, -2026151, -2159295, -20454782, 1872069, -6935836, 14121852, -3706020,
--11474005, -21687974, -14256607, -2761127, 1795296, 7531762, -5592585, -5173288, -11780558, 10733123,
-18228378, 1880122, -2160906, 6158446, -4761508, 6817187, -5141076, -2524904, 2346663, 5208185,
-3783329, -6402723, 221728, 1296543, -84289, -484258, -1600412, 1696512, 6471442, -2736968,
--5690295, -268972, -1276679, 2946885, -47245, 6277095, 435939, 2288681, 221191, -3867618,
-1009854, -1552631, 6754373, 387084, -4308389, -818728, -1049046, 4519380, 442919, -4949413,
--767189, 3487514, -1618666, 855235, 7036230, -24910810, -12749610, -8559333, -13653701, -7281044,
--5600638, -14122389, 14839649, -4289599, 22408992, -11310260, -16947404, -3283503, -11385421, 19313394,
--6666863, -10172093, -4737349, 5184026, 9791989, 8435853, -2061584, -2259153, -4448513, 2134062,
-15889768, -418222, 1493575, -5119064, -2034741, -8329552, -2749853, 3701188, 2714419, -6885907,
-304406, -10191957, 2019172, -3042448, -3078955, 4168803, 1911797, -4744328, -1931662, 8718247,
-3246459, -7212861, -9526774, 15856482, -785979, -25239376, 13100187, -2796024, -10759430, 5090610,
--1593970, 1162326, -2498060, 8785356, 3353833, 904628, 24206972, 23944442, -8494908, 2619393,
--18044232, -3818763, -3510062, 7649337, -2807298, 1248225, 7336341, -5439576, 13794898, -5848672,
-1464584, -18754512, 7732015, -4876936, -13192529, 6600828, -3101503, 26420492, 6224482, 5041755,
-9705552, 1100049, -9290014, -727997, -3873524, -2260764, 2574833, -3263638, 5306969, 3307125,
--4112968, 6739878, 3738232, -4408247, -1238561, 412317, 599685, -1802813, 1355062, 2370822,
--720481, -1969243, 373662, 2109903, 1153736, 1601486, -4338454, 4324495, -8599061, 7570417,
--5094368, -2910914, -674847, 3954591, 5529771, 1521492, -6562173, 78383, -2713883, -1534914,
-1440962, -6193343, -11389716, 3335579, 29972966, -22464290, -7180112, -14201309, -9440875, 11394548,
--12914967, 27544700, -3206730, 8453033, 1547799, 6733972, -17073032, 3189550, 4511863, -1208496,
--2547453, -1446330, 5077188, -10448582, -6345278, -1434519, -2949569, -12928388, -11506754, -3039763,
--5308043, 15735150, -4060355, -7383586, -5347235, 5442261, -8029978, -3361349, -13917305, 6577206,
--5302674, 5801427, -4911295, 7363185, -3710852, -24004572, -12228846, 3594888, -1853278, -1429687,
--7480223, -14281303, -802622, 6349036, 4262755, -3218541, 4741644, 7403987, 22825066, -9747428,
-10823854, -25632364, 1636383, 3801046, -3031173, -7342784, 5223217, 993211, 1206886, 5791227,
-18145700, 12327093, 9306657, -4836670, -5834176, 8995272, -10911901, 2711735, 9188009, -6477885,
-22694608, -329639, 7053410, -6169184, 13094282, -12432320, -12250320, 416612, 4602595, -5609764,
--1363115, 14180908, 139586, 12911745, 4722854, -1982127, -2032593, -7349226, -587874, -379568,
-3644817, -469225, -5912023, 1035624, 2663954, 7320235, -10674067, 1847910, -5417028, 2260227,
-6098854, -2083596, -165893, -5571647, 1837709, 2083059, -3611531, -12855374, -8049843, -5080947,
-2495376, -6794102, -3859565, -4556961, -4082903, 2585570, 4967667, -142271, 4121558, 1582696,
-2195802, 752693, -9295383, 7886097, -6860674, 12038256, 35474820, 25130390, -6750615, -15731928,
--10660109, 21538724, -25599078, 1370632, -6489696, -6278169, 10467372, -18764712, 2501819, -9599789,
--237297, -13057237, -10073309, 1522029, 683437, 524523, -12608950, 20099910, 4072703, -8993662,
-3645354, -2656974, 1766842, 29968134, 9469866, -8367670, -7361574, 1453846, 9300215, 2507187,
--22405234, -5517959, -15487652, -5174362, -7248294, 7568269, -4173635, -2129767, -143881, -773094,
--10981158, -12758737, 8316668, -4833986, 2256469, -600759, 11162620, -9061307, -6470905, 2837363,
-4669167, -11995844, 13396540, -8391829, -19522774, -18213346, -6500970, -5229660, -7888781, -4083440,
--27757300, 9800042, -13166222, -4183298, -10989748, 15391552, 5010080, 7363185, 4295, -2365990,
--13418015, -4064650, 18139794, -14931991, 21980032, 16769700, 5909875, -3960497, 776852, -3106872,
-3176665, -9712532, -7786776, -4849018, 1360968, -1333587, 1417876, 4096325, -7026567, -1759863,
-7125888, 7392176, -2881386, 4592394, -3900904, -6346888, -2765959, -2002529, 4734128, 1246077,
-1806034, -6280853, -4066260, 2139968, -2278480, 1987496, 2656974, 4424890, 8847096, 3473018,
-4991826, -5950677, -3346317, -2065342, 2655901, -2918430, 1258425, -2706903, 1316408, 8888972,
-4296041, 2375117, -1628330, 5569499, 1872069, -2394981, -34999688, -4329864, 23318988, -28592134,
--11374147, -688805, -8740258, 10372346, -5928666, 32329830, -3222299, -7023346, -5320391, -1424319,
-9505299, -6419366, -6197638, 26382374, -19281182, -2346663, 6192269, -4268661, 16560320, 9310952,
--1091459, -2068564, 7067906, 9379672, 10271414, 8369281, 17525078, 5564667, 7580618, 4544076,
--5594732, 29214904, 3751654, 5452998, 7459822, 4344897, 21167746, -1512902, 5283347, 7263327,
-6175089, 3438121, 13993540, -8248485, -6567542, 13841069, -2469069, -13997298, -3515431, -24464670,
--8240432, -4708895, 23222888, -21925808, -2760053, 935766, -679142, -1277216, 13722421, 37376952,
--6456410, 4672925, 4345433, 5653788, 17908404, -19351512, -19783694, -18060338, 31908922, 2339684,
--11913702, 29220810, -11086384, 25473452, -13660680, 9763534, 1140314, -33916284, -4866198, -8492761,
-9771587, -718870, -2861522, 201863, 6163278, -926639, -10223633, 5524402, 208843, -4814122,
--39192, -9038759, 12187507, -1322313, 4410932, -5775658, -5147519, -5165235, -6834904, -665183,
-249108, 11558294, -471910, 1267015, -4583804, 1277753, -10923712, 3481071, -10528039, -1970853,
--2240362, -9457518, 5051419, -7489886, -7476465, 1644973, -10446434, 3216394, 8427263, 7821673,
--3908957, -3698504, 2059974, 3170760, 7330436, 9298067, 20734492, 1889249, -20896626, -61448096,
-12311524, -14756971, -23753854, 26623428, -15943992, -8203388, -23392002, 6077916, -4626754, -22852448,
--7398081, -13566191, 6416681, -12562779, 645319, 4909685, 10313827, 5245229, 17447230, 2758443,
--89121, -1792075, -14623290, -11238319, -10401337, 8463233, 13054016, 6071473, 4665945, -355945,
-5066988, 10226854, 23836532, -11249056, -6227166, 4193499, -10770704, 11471858, 2530810, -10394895,
-24260122, 8863202, -20342038, 8075076, -19566260, 2343442, 3790309, 10347113, -5529234, -6602439,
-30835718, 11986180, -13195750, 8062728, 16334297, -12608413, -26801670, 14936286, -2111513, -277562,
-2253247, 6568079, 41712184, -3842922, 5260798, 8017630, -82678, 9612674, 5647882, -22069152,
-4744328, -11722576, -10229001, -6149857, 5092758, -35662188, -4292820, 11191074, 1820529, 17795660,
--12991739, 12620761, -8468065, -3685619, -4744328, 5681168, 2524904, -4319664, 88047, 46708,
--6273337, 5105106, -7933342, 8457327, 1178432, 5909338, 5035849, -3551401, -2915746, 1531693,
--2172180, 1280974, 2001992, -3446175, -1214939, -3968550, -2774549, -2583960, -7106561, 194884,
-1048509, 4225711, -2257542, 4072703, 9767293, -5033165, 1639604, -5050345, 2615635, 3144990,
--8137353, 144955, 2674691, -7676181, -3799436, 6787122, 110059, 1395864, 1535988, 310848,
--19010062, -21875880, 46920372, 10037339, -3032784, -5647882, 10582263, 42406360, 19449760, 5079336,
--1229434, 14221710, 35408784, 8818642, 12206834, 11050414, 25244744, -16267726, 16350404, 7277822,
--48476760, 14369350, -6857452, 14382235, -15097347, 11411728, 7567196, 15069430, -122407, 6399502,
-2357937, -13744432, 6855842, 13651554, -11446625, 6868190, -11115375, -6671158, 34750580, 3565360,
-30767536, -21883396, 9579388, -1107565, -4408247, -675384, -2678986, 4795331, 11274826, 7837779,
--861678, 17596482, -28032178, -26405996, 19160922, -15023796, -3879966, -3507915, -18130668, 9148817,
--4783520, 5168457, 2804614, 29795798, 14457934, 15706159, 5887864, 4221416, -27097486, -6228777,
-13318694, -248034, 331786, -20938, -8700530, -23563264, 4502200, 2180233, -17651242, 2493766,
--8486855, -6973417, 7396471, 4984310, 26723286, -3835406, 6787122, 6382859, -5159330, -6913287,
--764504, -6572911, -2545305, 15739981, 6565932, 2838437, 770410, -306016, 358630, -215285,
--957241, -10709501, -3288871, 6513855, -1891396, 638876, -3988951, -5420249, -2228551, 1714766,
-12754979, -8540542, -8263517, 7495792, 3657165, -9592809, 6721624, 4048007, -6818261, 8513699,
-673773, -5145908, -2420751, -3575560, -1644436, -1670742, 4203699, 2107755, 2081449, 4829154,
-7025493, 5214627, -1414655, 12181064, -42531988, 36284956, -15293842, 7169374, 23478438, -34000036,
--887985, -2732136, 8287140, 12954158, 14776835, 25667798, 4304094, -16168941, 9039296, 27325118,
--38501696, -22428320, 25861072, 1556389, -199179, 1452773, 2215130, -464930, -665183, 13451838,
-8108362, -18258980, 1174137, -4968741, 32160178, 19684908, -6576669, 2180233, 3864397, 4236449,
--215822, 11924977, 1168768, 9217000, 32822140, 4768488, 3452617, -4727686, 8422968, -30983358,
--13526999, -12888123, -1405528, 3536906, -27557584, 11044508, -24460912, 8450348, 25334402, -5383742,
--22834194, -12093017, 9426379, -4337380, -46627776, 12857521, -32548872, -6999186, -4061429, 1149978,
--13059922, 3375844, 16409459, -13438416, -30931818, -46416784, 36294084, 11078331, -5702106, 10386305,
--10996190, 11097122, 20125680, -20912732, 36080948, 4978941, -3846143, 16765942, 9511742, -5814312,
-9315247, 682363, 10055592, -9786083, -5213554, 2716030, 7265474, 12521440, 3721052, 11286637,
--7473780, 6406481, 11726334, 10407243, -1745904, 9474161, -10183904, 4032974, 960462, 4359392,
-19551764, -13064754, 7770670, 1063541, -745714, 15260019, 4166118, 19895362, -2624762, 9827422,
-2599529, 7752416, 2216203, -4092567, 5951751, -10282152, 8870718, -3810710, 7344394, -1763084,
-1967095, -834297, 1474784, -148176, 7689602, -1758252, -1918777, -1045825, 3274913, -383863,
--862215, 359704, 1599875, 1101659, 1327682, -964220, 1326608, -1131724, 1253594, 881005,
-1402844, -2665564, 51849920, -55794848, 22557706, 28368258, -34955664, -10785200, -18817862, -10368051,
-51481624, -23176180, 36536212, -17150342, -4916664, -9289477, 11978127, 4466766, -44513040, -8513699,
--11778948, 19084150, 1006633, 7926899, 15503758, -21889300, -4005594, -14048301, 7834557, 17969070,
-11332271, -28268402, -4829154, 5411122, 3838627, -1978369, -13139916, -5692979, -25238302, -4868883,
--3417183, 23096724, -20577726, 50705848, 11340324, -15112379, 22601728, 576063, 29320132, 15714212,
-27836756, 6585259, 25446608, 20431696, 24902220, 25905096, 4122095, 25062744, -32196148, -5788006,
-6958384, -21525302, -3532611, 13222057, -24932286, -36954436, 14950244, 23682450, 940061, 5331665,
--25549686, -7089381, -21339546, -993748, 24780888, 1891933, 46139224, 20700668, -11410654, 48364016,
-25862146, -14409078, -5339718, -10323491, -15190762, -9879499, 12099460, -7003481, -23635206, 3832185,
-16938278, 549219, -7600482, -6337761, -4739497, -8083129, -14220637, 2483565, -3103651, -1959042,
--10909217, -1071594, -3673808, 4863514, 8227547, -2456721, 1862405, -3238942, -8432095, 5634460,
--2040110, -6771016, -16175921, 7628936, -22397718, -3192235, -15422691, -9616432, -12474733, -3329674,
--1677185, -4666482, -8614631, -4429722, -9868224, -1910724, -814433, -785979, -6485401, 10416369,
--7896834, 4930623, -72444824, 66055524, -14985141, -21896818, -19305342, 45788648, -34743600, -5507759,
--9978283, -303332, 24504936, -27210766, -2507724, 10947335, -8248485, -3500398, 621697, -15336791,
-21906480, 1441498, -35865124, -8838506, -8728447, 2416456, -39306468, -127775, 4617627, -7586523,
-275952, 10936597, 24162412, -9818832, -6183143, 5389647, -16285442, -50299436, 4307852, 40317396,
--20524038, -30874910, 2071785, 32571422, -15166603, -9434969, -41966124, -6585796, 788127, 30090004,
-13792214, 4017942, -31664110, -17869748, 24807732, -29637958, 10474888, 49550500, 27864138, 38466264,
--18524194, 22498650, 14165339, -42717208, -15808164, -22869628, -5694053, 25404194, -1215476, 27458262,
-22151830, -42450384, 47469052, -28755880, -137976, 2567317, -21830782, 47036872, -3188476, -10773925,
-37654516, -30516280, -5308580, -43592308, -14920716, 20081120, -6245956, 18177376, 19390704, -4416837,
--7683697, 3409130, -10741713, -12288438, -3507378, -9024263, -5515812, -7294465, 3102577, -9094593,
-1775969, -11497627, -11453067, -10056666, 8476655, -5900748, -1047972, 5995238, 1407676, -2010045,
--12504260, -19389092, -12584791, -25303262, 18629958, 7809861, 16122770, 5878200, -13807783, -13962402,
--7364795, -1902671, 20476794, -4225711, -141734, 2792803, -3307662, -3311957, -1770600, -7652558,
-14258755, -8950175, 18296024, -94489, 43173548, 30640296, 4515621, -8260833, -22429392, 13139379,
--1762010, -2000918, -1424855, -736050, 95026, -8570070, 10871636, -206158, -38528004, 9684614,
-3453154, -13310104, 508954, 16663936, -5613523, 1134408, -27860380, 20307680, -9913858, -2983929,
--2809446, 11570642, -15098958, -536334, 3433826, 481573, 3190624, -7138773, 20634096, -10790032,
-36373004, -22355304, -23862838, 22515830, -25214680, 1355062, 18797998, -17377974, -7771207, 10054518,
-11703786, 15535434, -55486144, 17707076, -527744, -12652437, 35184372, -17615808, 2158758, 224412,
--29878476, 38338488, -1826972, -1625108, -20132122, -3584687, 31584116, -7317014, -1189706, 1305133,
-9105868, 5301064, -39005820, 19284404, 34756484, -18206366, 13925358, -27152784, 45565308, 2103997,
--42527692, 628676, 23722714, -2342368, -26419418, -5892159, 62081604, -9614284, -25572236, 4354023,
-27387396, -7030325, -8560407, -3169686, -1214939, 1662152, 1235877, -6905771, 18079664, -2877091,
--4247723, 1066226, 6175626, 15202037, -4522601, -7346542, 8346195, 1934883, -14010720, -5067525,
-7520488, 1773285, -5852967, -3095598, 12079059, -10929618, -2209224, 1933272, 1738925, -10318659,
--4187056, 13474386, -725850, -9607305, -4088272, 9780714, -2858301, -7201050, -6155225, 8553964,
--24212342, -80252536, -121662464, 8208756, 105224552, 1657321, 275283776, 249527392, 149385936, 288067744,
-189007552, -31211528, 10933913, -36941552, -226762464, -128756680, -99783904, -221475360, -182144192, -53716620,
--106925360, -122781840, -10005663, 7328288, -51941724, 11409044, 46994460, -59993712, -51007568, 80447424,
-16457241, -19468014, 56136296, 75351440, -95026, 77290624, 130810208, 46902652, 35880156, 133387728,
-90148680, 10921565, 97915056, 144494512, 63469952, 73898136, 164641136, 62550828, 22469658, 157276864,
-154773440, 47864728, 186415536, 265127264, 98820216, 108856480, 184854320, 56422448, -59852516, 10631118,
--61479236, -222722512, -212468816, -226881648, -364529440, -393987552, -421357760, -498292448, -521311872, -509161408,
--495585536, -436274176, -391560352, -320140960, -211549680, -150965952, -52153252, 143920592, 233397648, 230576928,
-426933696, 455305728, 354357344, 431855200, 452352928, 242871808, 253343472, 310701152, 150802208, 122003376,
-201604160, 146323632, 68690488, 95245192, 127449400, 54249196, 44214004, 128094176, 67640904, -11609297,
-70111584, 54817740, -40045740, 5582921, 50444928, -33292438, -14607184, 94714232, 37373732, 3594888,
-91035592, 59886340, -9008157, 4949950, -39962524, -134073848, -182550064, -201753936, -264710112, -283097408,
--282916480, -306338528, -309315488, -323811552, -324899776, -296906784, -295007872, -247531312, -191290320, -151409952,
--63475860, 55115168, 118241520, 197481520, 246926800, 261653696, 249303520, 227543616, 193117840, 156853824,
-136414608, 119386136, 97623000, 88011400, 85248656, 77701864, 72557032, 75857712, 70376264, 58717036,
-49600428, 38540352, 20977158, 8018704, -12636868, -28193776, -28339804, -18241262, -8790187, -2099165,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
-2938295,
-9543417, 2138357, 1384590, -2166274, -790274, -4711043, -202937, -1203128, 3533148, 3134253,
--3160022, -2272038, -1909650, -1809255, -2250563, 246961, 2811593, -2234457, -2403034, -7866770,
--5793374, -4255776, -199716, 423591, 5768678, -3178813, 2858838, 1768990, 1469416, 346819,
--4310000, 1104880, -9188546, 1120987, 283468, 433792, -630823, -5666136, -2583423, -4884452,
-299574, 314606, -2954401, -7584912, 5214091, -366146, -4439923, -20938, 2958696, 644245,
--1531693, 1078037, -2528662, -1090385, -2386391, 1837172, -2539936, 3576097, 2891587, -573915,
--5054103, 264141, 697395, -449361, -1852742, 1279900, 898185, -1152662, 2730526, 2974802,
-2052458, 196495, 12885, 951335, -2745021, 380641, 4224637, 493921, 807454, 782221,
-3121904, 1199907, 981400, 2801929, -692027, 2206003, -862752, 1439888, 1010928, -384400,
-598074, 813359, -249108, 1029182, 1577327, 376883, 33823, 1118302, 1486596, 1187559,
--178778, 451508, 487479, 580357, 170725, 93952, -114890, -370978, -1174674, 765578,
-85899, -10144713, -11386495, -808528, -4500589, 3477850, -5578089, 1401770, 2582886, -3804267,
-3113315, 11394548, 643171, -1048509, 6249715, 846645, 6275484, 97174, 2867428, -4484483,
--5938329, -321586, 2261300, -4132832, -1324461, -419296, -1159641, 1131724, -1207960, -2182917,
-2072322, -1029182, -858457, 4476430, 6391985, -1990717, -3423626, 1270774, 5117991, 1939178,
-6557342, 273804, -910533, -168577, 5853504, 375273, -4168803, -2296197, 4598836, 3326989,
-3580929, 970663, -2263448, -4721780, 947577, 2221572, 2772402, -1017907, -2458332, 5103495,
-3445101, -847719, -2838974, 170188, -1969779, 5319317, 1651415, 974958, 1720671, 593779,
-1126892, 3267933, 602369, 3282966, -610959, 5233418, 667867, -5180268, -2020245, -1805497,
-2602750, 3197603, -483721, 853625, -3591667, -1319092, -3342558, -1027034, -2166811, -1876901,
--759672, 1097901, 83752, 28991, 178241, 1447404, 266288, 328565, -143881, -1555315,
--402653, 80531, -114890, 627065, 276489, 267899, -552977, 5978595, 4192962, 6295349,
-6554657, -1571421, 3285113, -1404991, -3711926, -346282, 9709310, 4249334, 2170569, 3453691,
--4043175, 6919729, 2972117, 4636417, -1362578, -7682086, 3234647, -11986180, 2438468, -3061775,
-2416456, 1888712, -218506, -4126390, 1002875, 2691871, -1596117, 2524367, 6085432, -436476,
--5029944, -6867653, 1081258, 3069291, -6312528, 3514894, -5931887, -3876745, 4322885, -2507187,
--5012764, -2448668, -3533684, 5548024, 7627862, 4314295, -2731062, 32749, 4078608, 2430415,
--336081, -3114388, -1469953, -2733210, 2909304, 9422085, -66572, -5111011, -4027069, 2185602,
-775242, -1915555, -5571110, -103616, -4771172, -1877438, 759672, -819265, 3799436, 708133,
-4769025, 5541582, -4854924, -1789928, 278636, -3794604, -4547834, -728534, 28454, -2787434,
-2676838, -2532957, -309775, 2108829, 430034, 151398, 2089502, -2561948, -880468, 606664,
-968515, -1160178, 835908, 454730, 943819, -142808, -16106, 960999, -1304596, 1675574,
--1306744, 820339, 260382, -372052, -99858, 745714, -535797, -872415, -1476932, 925565,
--1083942, 406948, 1414655, -194347, -900333, 13376139, -3593814, 1304060, 1909650, -8822937,
--7517804, 195958, 8742406, 6670084, 10567767, 3485903, -2982855, -4547297, 779000, -2610266,
-2083059, 1009854, 3570729, 6564858, 2091112, 4840428, -136365, 2870112, -2913062, -6114960,
--3205119, -4680441, 63351, -1306744, 1427003, -7449621, -3719442, -996969, 2756295, -3682398,
-7719130, -8698383, 1866163, -5477694, -4443144, 2529199, 2216203, 7447474, -827318, 1882269,
--2126546, 5216238, 5512591, 1532767, -1188632, -5604933, -777926, 1934346, -4297652, 4307316,
--4730907, 2029372, 7820062, 6554657, 96100, -2525978, 1224603, 7818451, -977642, 1921998,
-1214402, 6388764, 62814, -1706176, -3968550, 2785823, -5980205, 2175938, 12436615, 3056943,
-5855651, 579821, -8229694, 2974265, 1527398, -3248069, 3356517, -1043677, -897111, -4105452,
-1714229, 4036733, 1801739, 775242, -1876901, -4041027, 932008, -805843, -631360, 258772,
--206695, -765578, 1299765, -1379221, -1255204, -1188632, 1829656, 731218, 1439351, -814970,
-1327145, 72478, -1313723, 1404991, 765041, -1166621, -2226941, -813896, 1827509, 111669,
--484794, 917512, 828392, 1986422, -96637, -782221, -4876936, -8341900, 4207994, -5947993,
--6132140, 1263794, -2972117, -19624242, 1901597, 3032247, 17962626, 5820218, 1329829, -8154533,
-7485055, 3246459, -3260954, 3926137, -682900, 6531572, -3942780, -2018635, -1329292, -1730335,
--2708514, -1168768, 4634807, 4062502, 7014219, 2514703, 3439195, -64425, -4571993, -4932770,
-6643241, -3633006, 1472637, -591095, -4699768, 6752226, -1132261, -2913062, 1169305, 4918275,
--3272765, 7463043, -9454297, -7807714, -9588514, 2330020, -5405217, -8191577, -1896228, 7674570,
--3258270, 2309082, 4537633, -3288334, -4336307, 357019, 695248, 2572686, 456877, -2384244,
--288300, 9885941, 4177393, -4020626, -12447889, -9927817, 3617973, 11758547, 9867687, -7704098,
-181462, -5025112, 2210298, 1956358, -8442832, -667867, 1651952, 986232, -2305324, 504122,
-485868, 256624, 2837900, 2614561, -1703491, -2055142, 1380295, -999654, 634045, -2940979,
-1183800, 877247, -4714801, -1058173, 984621, 710280, 361851, 919660, -315143, 339302,
-321049, 463856, -1739999, -243203, 574452, -549756, -2109903, -1045825, 251256, 320512,
-2234457, -3506304, 5814312, -9774809, -1626719, -12113418, -3509525, 1795833, 4269735, -11041824,
--2705293, 7562901, -867583, -11052025, 5772973, -3537979, -6276021, 3462281, 5844914, 1312113,
-1260573, 1998234, 7622493, -3596498, -3102040, 1980517, -3710315, -1915019, 145492, -426812,
-296890, 6073621, 3160022, -706522, -488016, 3549254, 1532230, 4359392, -337155, 4921496,
-5251135, 2076617, -5646809, 821949, -757525, -4045859, 5514738, -3104725, 2332167, -3758633,
--1343788, -13534516, 1275605, 10987063, 1006633, 11680164, -2120103, -2625299, -11992622, 14113263,
-6683506, 8041790, 1350230, 6591701, -42413, -51540, 5532455, -3215320, 2021856, -22549,
--13455059, 3094524, -3133716, 3563749, -2002529, 3216394, 12546136, 3775276, 3326989, -151934,
--7574175, 5705327, -3059627, 1144609, 2889439, 3761855, -4160750, -1105954, -1708323, -2265595,
-2467459, -1424855, -1069447, -1779727, 310848, 456877, 207232, -3501472, 1422708, 607201,
--768262, 1010391, 505732, 881005, 746251, 1663763, 30602, 354335, -198642, -804770,
-2110977, -394600, 2968896, 459025, 1243393, -910533, 1639067, 545461, -15541339, -512712,
-11682848, -2560874, 6914361, -7457137, -5145371, -13425531, 7663833, 3978750, 8898635, 4160213,
--4393752, 7503308, -1903744, 7179038, -4734665, -4372814, 536871, -1605244, 6210523, 1304596,
-5235565, 5864241, -3523484, -2997350, -2085207, 3862249, -806917, -2492692, 783832, -5280663,
-2715493, 1870458, -2792803, 3907883, 6849399, -2746095, -3130494, -827318, -5201206, -2517925,
-7873749, 1073742, -4903242, 9592809, -10563472, 1671816, 5631776, -2413235, -3490198, -773631,
-4486094, -8043937, 4013647, -3263102, -6929930, -5174362, -4195646, 157840, -1993939, -4397510,
-1879585, 11915313, 6549289, -1606855, -4115116, -11503533, 1195075, 6417218, -3780108, -12713640,
-314069, -1977296, 611496, 1628330, 5812165, -317291, -3000572, -1103807, -4679367, -2716567,
--2229625, 3535295, -2917894, 3283503, -6818798, 604517, -3148211, -2040110, 4096862, -1932198,
--1982664, -2335389, 810675, -4298189, -1767379, -957778, -204011, 969052, -3113315, 912681,
--2477123, 1391033, 1577864, 3608310, 633508, 1332514, 1842004, 1481227, -1057636, 623307,
-188442, 2697776, 1501091, -226023, 1555852, -86436, 106300, -1043677, 130460, 55298,
--1912334, 603980, -1330366, -947577, 102005, 1455457, -428423, 5170604, -2277407, 1315334,
-7642895, 496606, 8953933, 9706089, 21658984, 14770393, 9057549, -2302639, -11473468, -4002910,
-10510859, 4544076, -11082626, 8267812, -1934883, -5501316, -6782827, 1008780, 18724984, -12695923,
-13540421, 5281199, -2919504, 4443681, -3663070, 9686225, -3723200, 5113696, 1016834, -6731288,
--4713727, -6558415, 248571, 5536750, -1604707, -3701188, 3568044, 454730, -1122597, -12674448,
-3831111, -7103876, -5374078, 3487514, 8346732, -6174553, -8885214, 307627, 7534983, 614180,
--5066988, -1895691, -3017752, 3429532, 2502892, -2922188, -4789426, -7198902, 4444755, 11527692,
-7065221, 3636227, -6696391, 3462818, 7299297, -8202314, -10703595, 1865626, -8837969, -4233227,
--17324824, 217433, -11897596, -6203544, 3198140, -1500554, -1145683, 5261335, 895501, -9711995,
--6733972, 4371203, -1344862, 524523, -3022046, 280784, 2833605, -427886, 1877975, 1885491,
-388158, 173409, 1393717, 1626182, 1082332, 122943, 335544, -984084, 2563559, 62814,
-2359548, -426276, -1570884, 759672, 2196339, -2760053, -4049617, -2070174, -586263, -1273458,
-4604742, 1728188, -1449015, 2041720, -1166621, 302795, -3710852, -338766, 269509, -1705102,
-23699092, 530428, -9276592, 10445897, -11426224, 13224204, 1072668, -8055748, -13795435, -3344169,
-6769942, -10969883, 9735617, -1555315, 6277095, 7473243, -6415071, -2672007, -3860102, -5113696,
--1985886, -4777614, 798327, -5839008, 6075231, 3833258, 5099737, 10337986, 5325760, -1544578,
-12336757, 6284074, 2282238, -6622303, -7215008, 3696893, -5522254, 1268089, 3901978, -8239358,
-7056095, 18787798, 1437203, 13361106, 6331319, 6462852, 9546639, 552977, 5062156, 5337571,
--12158516, -8253317, 8397735, 558346, 7926362, 1407139, 8321499, -1346472, 2997887, 2066416,
--17418776, -1150514, 4485020, 11656541, 2611340, 10223096, 1047972, -2413235, 3364033, 4585952,
--9772124, -16542603, -8719320, 2273112, 4082903, 551903, 12152610, 4279398, -19016504, 4842576,
--2747705, 100395, 5489505, -7638063, -245887, -4115653, 3518652, 4920422, 316217, 1062468,
-3578245, 144955, -13959, -1648731, -1804960, 647466, 380641, 122407, 2994666, 2158221,
-772020, 1791538, 1178969, 85362, -2889976, 2334315, 1935420, -1141388, -226560, -396748,
-173946, 1711008, 1447404, 4519916, -3753265, -1065689, 1729261, -913217, 2406256, -1867237,
-3999152, -923955, -1162326, 580357, 2312303, 1631014, -507343, -232465, -11432129, -1044214,
--10172093, -4860293, 4369593, -5224291, 2365990, 3445638, -6068252, -15291157, 4963909, -15149423,
--17293686, 3725347, -8462159, 7620346, 11013907, -2844342, 12839805, -3134789, 12687333, 17131014,
-112206, 967441, -17256642, -3326452, 1978369, 2922725, -1928440, -11476153, 898185, -9725417,
-1336272, -2655901, 2739652, -3763465, -6308233, 1409823, -1038308, -3579855, 4174708, 360777,
--2541010, 12365211, 4713727, 9272834, -5781563, 1673964, -4858145, 3506841, -1003412, 4838818,
--1531156, -3722663, -4653597, -11021960, -6373195, 17671642, 7277285, 11706470, -13489419, 2822331,
-10159208, -8606041, 184147, 6528351, -3452617, 6551436, 1047972, -11911555, -2979634, -18314814,
--2153926, 7332583, 3917547, 12229383, 1495722, 8110509, 8799314, 2980707, -437013, 15856482,
-1454383, 375273, -2616709, -1610613, 8527658, 4890894, 8162586, -998043, -1544041, -2103460,
-5995775, 1152662, -1108638, 1544578, 4153770, -1012539, -2253247, -4726612, 289910, -3783866,
--1527398, -3237332, 2811056, -441845, -5332739, -1079647, 544387, 329639, -126165, -2660732,
-3864397, -3093987, 1096827, 1323387, -3977140, -854162, -2605972, 472446, 3456375, -3031173,
--2240362, -1922535, -1637993, 1750199, -11148661, -10152229, -10554345, -15652471, 10706280, 6755447,
-1047435, -10572599, 9551470, -203474, -13103408, -10914586, -3675418, -2811056, -8360154, -3452617,
--4922570, -4373351, -3039226, -12332999, 6196027, 7024419, -552440, -1263794, -2146947, -4640176,
--14420890, -15947750, 562641, 6733972, -4100083, -9875204, -5396627, 7282654, 5529771, 224412,
--2973728, -4323959, -4167192, 9241159, -4703526, 6453189, -4447439, 52076, -15699179, -3579855,
--1173063, 11759620, 3341485, -2935073, -8799314, -6314139, -12344273, 19880866, -9146133, 18872086,
-2488934, -8351564, 12613782, 12203076, 21417928, -21100100, 8732205, 3325915, 2883534, -4319127,
--5960878, 9096741, 4850092, -1758252, -9773735, 10757819, -5684389, 11576011, 9751723, 9018358,
--8269423, 17966386, -13343927, 7282654, 11744588, -6914898, 1511829, 153545, 10209137, -2886755,
-4563403, -5488432, 10904385, -535797, 1952063, -6426345, 5003100, -540629, 5158793, -1683627,
-6936909, 3168612, 2218888, -4275640, 1347009, -3616363, 241055, -3113315, -3870839, -1001801,
--3414499, -2523293, -326954, -1978369, -3403225, 2138894, 2910377, 3994320, 1024350, -4175782,
-413391, -2897492, 2711735, 879931, -1896765, 280247, 1907502, 878321, -4400194, 623307,
-4496294, 1499481, -660888, 1028645, 16922172, -28350542, -30653182, -19094888, -3302830, -13282723,
-8122857, -10908143, 1043140, 5580237, -909996, 20215874, 14413910, 5230734, -5988258, -4390531,
-13995688, -2261300, 2092723, -5673115, -12660490, 132607, 5000953, 3467649, -7000260, 6189048,
-781684, -723165, 11843909, 16528108, 1089848, -10409390, -4613869, -20056960, -7900593, -5115306,
--6141803, 1002338, 3435437, -7233799, -3022046, -10155987, 10951093, 13342316, 10951630, 12463995,
-9634149, 16282221, 1890859, 5646809, 3748970, -2850785, 6145025, 9739375, -9780714, -33382634,
--7890929, 11206107, -17442400, 8927090, 10833518, 4038880, -5378373, 923418, -4271882, -13357885,
--3765613, 8830453, -10858751, -9016210, 3120831, -7306276, 21679922, 22242026, -8321499, 14348949,
-3653944, -2020782, -9820443, 6897718, -13208098, -10751377, 11787538, 9067750, 6184216, -772020,
--1272384, -15883863, -11593727, -2039036, -3754875, -2910377, -2514167, -4659503, -4037806, -4341675,
--2333241, 632971, 3634616, 3027415, 4858682, -373125, -2509335, -2345052, -1762547, 7239704,
-6549825, 3497177, -755914, -420907, -1675037, -2658048, -4325569, -1817308, 617938, -1210644,
-2769180, -1518271, 952409, 1409823, 1089311, 2768643, -3349001, -43487, 502511, 2343442,
--4009352, 6646999, -2901251, -1676111, 27279484, -22953378, -476205, 3941169, -22059488, -6452115,
--9345312, 3360275, -6775848, 19145354, 2395518, -191126, 23776938, -1304060, -21210696, -16901234,
--10453950, 8213051, -1320166, -20443508, 5155572, 5750961, 10667625, -12144020, 6084358, 10412074,
-8910983, 7293392, -2615098, 12434467, 13264470, 4570919, -29956324, 21853868, -10828149, 8450885,
--2309082, -3045132, 5575942, -13163538, -7697119, 14076218, -6561637, -1774358, 12527883, -14131516,
-12597676, -4874251, 11682311, -15571941, 20690468, -9217000, 32097364, -4165582, 1853815, 8361765,
--7320235, -5237713, -4108673, 2693481, -1845225, -16175921, -20600274, -5568425, 11644193, -6043019,
--7619272, -20715164, 9366250, 2222109, -28627568, -329639, 156229, 4282083, 14387067, -9837086,
-4334159, -12658342, -11391864, -16818556, -17110612, -2901787, -10115185, 12301323, -2287070, 12018392,
--6073084, 6888054, -1221918, -7537668, -10888816, -1124208, 990527, 5288179, -2807835, 2383170,
-758062, 4345970, -715649, -5540508, -1114544, -8433168, -696858, 1482301, 1583769, 580894,
--3546569, -4038880, 4376572, 2273112, -1733556, 5437429, -7038915, -8840653, -498753, 8044474,
--155156, 2404108, 2795487, 5535676, -28454, 6183143, -5310727, 2058900, 848256, 5047661,
-8003135, -5104032, 971200, -1118839, 984084, 10377178, 31868658, 15681462, -9511742, 21720724,
-7348152, -14096083, 5531918, 13991930, -2028835, -4939750, -19324132, -5408975, 12177843, 7727720,
-5880347, 3414499, -3350075, -7938710, -18226230, 9671729, -6103686, 4762045, -13953812, -7758322,
--183610, -2287070, 18255222, 5341329, 3054796, 13739600, 6821482, -21055540, -2275259, 7558069,
--3752191, 333397, 18045842, 5780489, 20923470, -12176769, -7438884, -3502009, -7560753, 8044474,
--7887171, 15531139, 15738371, -6934762, -15015743, 25368224, -12916577, -5380521, -2865817, 7494718,
-4067334, -14288819, -4048007, 9002788, -6562710, 11443403, -5261335, 16250009, -8290898, 3605625,
-25170656, -584116, 17792438, 30387430, 4054449, 14882062, -7527467, -36728412, -24632712, -4836133,
--1359357, 20749524, -468151, 6888591, 1983201, -5255966, -16764868, -37898256, 28840706, 1903744,
-1066763, 9288941, 4684199, -9296994, 21382494, 988916, 4693863, -332860, 1653562, -18723374,
--6699075, -12366285, -7189239, -668941, -6700149, -7010997, 4569845, -1575179, -4534412, 13586055,
--2301029, -13943611, -9679246, 3426310, 932008, -4085051, 21386790, 6323803, -6815040, -8225936,
-2454574, -1953136, -4118337, 638876, 2210835, -4807679, 5286031, -207769, 7517804, 9357660,
-2119030, -926102, -2556043, 6265821, 6394670, 5472325, -41344964, -9958419, 43298640, -16637093,
--18471044, 38144680, -24419574, 21488258, 28833726, 11345156, 4041564, -21846888, 8454643, -38307352,
--18767396, 8386461, 20025822, 2264522, 4712116, 14536854, 38871600, 26219164, 8319352, 1480153,
-96100, 4353486, 3348464, -14986215, 475668, 9646497, 12284143, 51773684, 29315300, 19999516,
-37515464, 15338402, -5164698, 11307575, -514859, 35871568, 13145284, -2817499, -5762236, 15060840,
--2092186, 17285096, -53121768, 2432025, 18589692, -965831, 22459994, -8170639, 6111739, 11996381,
--49417356, -19031000, -3642132, -15734613, -20316270, -24071682, 22957674, -14649060, 4797479, -4345970,
-23051626, -37110664, -9961103, -5049271, 12001212, 44560, -3142842, 27737436, 48275968, -3758,
-15230491, -8844948, 4347581, 33814276, -35388384, -20961052, -29563334, -37444060, -2978560, -1242319,
--14536854, -15720654, -14799920, -14103062, -18198850, -26615376, -11402601, -17160004, -10342281, 4976794,
-23983634, 7850664, 3921305, 3850438, -2005213, 5567888, 2640331, -16502875, -14788646, -4052302,
--20975546, -8167954, -9055402, -7017977, -8054675, 10067940, -7415798, 921271, 1793149, 4534412,
-12084427, 18238578, 136365, -4186519, 13348221, -6267968, 8631274, 3515431, 2151779, -3157875,
-2710124, 1993402, -7307887, -9766756, -10598906, -1165547, 22807886, 19432580, -18272402, -66247188,
--11587285, 26682484, 6460168, -7683160, -4984847, 1720671, -8887898, -12417824, 14754286, 10521596,
-30190936, 10588168, 18238042, -7074348, 40101572, 6896107, 25505126, -3863323, 37011880, -14265197,
-24192478, -23638964, 434865, 2294586, 17352204, -7028177, -12541305, -31165894, 17437030, 1986959,
-3765613, -15207942, -27460410, -1973001, 3462818, -3685082, 8741332, 17571248, 2949569, 12490302,
-45825152, -19441170, 4827007, -15273977, 23795192, 20164872, -22600654, 21338472, 24907052, -17856864,
-6524056, 5557688, 17343078, 8196945, 34964792, 10697690, -12039330, 1851668, 45113800, 13984950,
--51002736, 14908368, 9453223, -44346612, -11994770, -14348412, -30900142, 2041183, 19517942, 20890720,
--12241731, 37736656, -9488656, -16668768, -8216273, 19870666, -74187504, -9277129, 1358283, 59880972,
-8234526, 50750408, 24738474, 35571992, -730681, 12102144, -6573985, 30127584, 30999464, 27420682,
--6400038, -18519898, -7237557, 30114700, -3284039, -19906636, -8315594, 35716948, 5276904, -22427782,
--7349226, 32220844, 9526774, 13355738, -156766, 12112882, -8961986, -735513, -418759, 5202816,
--581968, 5639292, -4213363, -10570451, -12143483, -15256798, -1721745, -11147588, 275952, -2028835,
--4048544, 10689637, -11941083, -5032091, -11836930, -4512937, -21958020, -16586090, 22749368, 398895,
--40840308, 33114198, 71446784, 4757750, -39609800, 61536680, -13791677, -920197, 8865886, 34893388,
--19991462, 1476395, 69994008, -34677564, 16739098, 23535884, 22692460, -31015570, -3030636, 5539971,
--15093052, 2635499, 7387344, -12615393, 12510703, -21381958, -5957120, -8567386, -1511829, -12840342,
--11123428, -4153234, 6841346, -23315230, -21675626, 32747516, 6058052, -20523502, -5262946, 19477140,
-47405164, -4127464, -22941030, 24669218, 36386428, -10540387, -2572686, 940598, 13253195, 98247,
-158377, 16491064, -39934604, 27484032, -22983980, 295279, -32631014, 18387292, -2434710, -48932564,
-24282672, -3492882, -18803904, 33022392, 4013647, 32652488, -27485644, -10576894, -11024107, -25546466,
--39508332, -52441012, 44644576, 18196702, 32902134, 30215632, 18835042, 7294465, -18719614, 28611462,
--14081050, -12040941, 38872676, 12935905, -7150047, -3474092, 11950747, -27456116, 7220377, -10850161,
-18327162, -6984154, -11588359, 17346836, 3100430, -20409684, 1802276, -9671729, -5525476, 4317516,
--4291746, 3733400, -949725, -14703284, -7262790, 6356552, -4720169, -9274982, 9365176, 14460618,
-14386530, -11428371, -4494147, 16622597, -28021978, 8455717, 10524817, -12098923, -27838368, 14089103,
-1958505, -12658342, 8968429, -13551159, -21616570, 5718749, 19788524, -16227460, -6780680, 6904697,
-17307108, -4716411, -1907502, 931471, -11731703, 38742216, -15791521, 11476689, 8929774, -40184788,
-36098664, 12632036, -10366440, 31018790, 2551748, 2064806, 15120969, -13485124, 39537860, -31793496,
--17067126, 14745160, 13575318, 6720550, -29616484, -18015240, -32998234, 18177912, 4304094, 16598975,
--47782, 17826262, 7125888, 5943698, 632434, 15185931, -6956774, 8339216, -15149960, 11243151,
--14015552, -174483, -18475876, -13113072, 658741, -16406775, 7538742, 38893612, 9190156, -29275570,
-15106474, 11645804, 20526722, 501437, 34216932, -29613800, 4367982, 13618804, -28646358, -6742562,
-57328688, 32266478, -76258752, -32412508, 40296456, -11162620, -36288180, 14119705, -3890704, -27978490,
-20229296, 34475704, -47119548, 9141838, 41442676, -28371480, -25560960, 33915748, 4333085, -28191628,
-4738960, 21981106, -24755654, -3578782, 26604102, -4128537, -12243878, -19432042, 24300388, -6693707,
-13417478, 2983392, 13624710, -9758703, 8704825, 24582246, 9471477, -18505940, 1165547, -13313862,
--9193914, -18656802, -2018098, -5166309, -1667521, -12636331, 12279311, 10626823, -4703526, 28074590,
--7570954, -30427158, 35878008, -4599373, -7315940, 6385543, 12280385, 1391033, -3806952, 30302068,
-16383153, -21845278, 1359357, 8370355, -16087337, -13253732, 21665426, -11776800, -42505680, 40105868,
-4654671, -41328860, -1723356, 21170430, -15918759, -34840776, 19323058, 26102126, -43011948, 5812702,
-31408022, -19193672, -3855807, 34529928, -3174518, -14786499, 7616588, 14272713, -19772418, -5788006,
-19931332, -5268851, 33157148, -72130752, -5623723, -12389370, -81151800, -13991393, -25345138, 8368207,
-13424994, 24332064, -11101954, -31029528, -12344273, -44976896, 5639829, 16714402, 8964670, 7669738,
--36980744, 22878218, 3121368, -43457016, 31644782, -46764140, -19746112, -17252346, 12393128, 34638376,
-39209832, -2781528, -9341554, -75953272, 32403918, 77858096, 27797028, 2253784, -42926588, -61822832,
--25999048, -4781909, 32136020, -38539816, -23717346, -39603356, -13175349, 72769632, 77541880, -13099113,
--36334888, -30481382, -16888886, -7749195, 38865160, -18177376, 11354820, 8668855, 25726318, -6694781,
--17989470, -45035416, -20135344, 69836704, 29317446, 46643880, -42712376, -22981296, -19984482, 47656956,
-591095, -76229760, -74381856, 41947872, 70997424, 120196272, 20579872, -101145408, 16658031, -26336740,
-34223372, 33849712, -124907312, -39190504, 23990076, 66180076, 15621333, -62846644, -14542759, -5777805,
-36518496, 32032940, 8072928, -50202264, -8281234, 11745125, 22308060, 11884711, -13574781, 2806224,
--28432684, -2916283, -809601, 27828166, -18935438, 36907728, -23460186, 11027865, 20699594, -7972533,
-17114370, 16158204, 28114320, 2200097, -14136885, -15641197, 2236604, 2158221, 4481262, 3762928,
--1279363, -1107565, -10631118, -10041634, -2498060, 18811420, -4959614, 1353989, -4088272, 6882685,
-1021129, 10911364, -36348308, 30974230, -32389958, -7456063, 1527398, 7938174, -5862094, 7082938,
-13024488, -21441014, -17808546, -758599, 5088463, 13176960, -14957760, 1789928, 11957726, -9413495,
-7567733, -5064840, 35979476, -876710, -5102958, 20144470, 11517492, 17859010, -8941048, 11268384,
--3427921, -864362, 15310485, 10314901, 2778844, 4111894, 20549272, -19287624, -5435281, 1648194,
-27628988, -816044, -5884105, 25061672, -6190122, -11436961, -10730439, 20698522, -4720706, 8825084,
-5920076, 2825552, -7118909, 3403225, 8505109, 2517925, 24095840, 11428908, 7060390, -10700374,
--1248762, 8689256, -16676284, 5728950, 6781217, 17146584, 561030, -2479807, 10251013, 1792075,
--19397682, 21800718, 7118909, -5585068, 18773838, -12922483, -1211718, -9749576, -7830799, 17736068,
-13625247, -1671816, 6995965, -11259794, 2881386, -15037217, -1033477, -13809930, 3349001, 8210367,
-3512210, 1175747, -2532957, -2292439, 2927557, -8443369, 2703145, -3918621, 4170950, -5727339,
--1475858, -5339718, -5834176, 2541547, -693637, -891206, -1904281, 8117488, 3718905, -11382737,
--10979010, -8255464, 2798708, 3064459, 8712341, 4428112, -10073846, -2057826, -3532074, 9123047,
--1991254, 9874667, 4731980, -9017821, 493384, 4095251, -4414690, 6109591, -3456375, 6971806,
--4823249, -2212982, 2877091, -4758824, 57496192, 4593468, -21199958, -17617418, 2882460, 12959527,
--766115, 11827803, -4487167, -3211562, -15910169, -3538516, -11134166, 17706540, -11072963, -937377,
--6982006, -3338800, -4086662, 1912334, -11766600, 1779727, -5056787, -8337606, 2464774, -1350230,
-693100, -2275259, 4179540, 1978906, -9835475, -6359236, 20938, -6709813, -5790690, 4871567,
--1568737, -10099616, 699006, -5623723, 4327717, -14907295, 7472170, -6488085, -11270531, 3420942,
--5149129, -5872294, 1559610, -109522, 733903, -2488934, 2530810, -4564477, 5068599, -3135326,
-565325, 8294656, -5961952, 2779381, -1546188, -886374, 2297808, -6870337, 6279779, -7221451,
-6270653, -1511829, -265214, -4624606, 5931887, -6936372, 496606, 2446521, -9072582, 9088151,
--5506685, 3855807, -4158602, 3684008, -3192771, -4028679, 6805913, -4242891, -785442, 6642167,
--4237522, -63888, 606664, 1049583, -4687420, 376347, -363462, -2075543, -1267552, 1138166,
--1423782, -2559264, -1199907, 2893734, -2575370, 2167885, -675384, -306553, -772020, -1966558,
-1928977, -1329829, -1462436, 1986422, -1995012, 1570347, 820876, -1257889, 401579, -328028,
-645319, -4016331, 3944391, -4131222, 813896, -613643, -2058900, 547608, -1085016, 2806224,
--27634356, -44680008, 47362752, 164437648, 31579820, 49323940, -101259224, -140924864, -58798640, -73826728,
-57007100, 132004208, 75981728, 50914152, 5156645, -72858752, -64381024, -64512020, -26299696, 36478232,
-31237298, 33237678, 30000346, -1081258, -4791573, -7725573, -10326175, -15362024, -2006287, 20110648,
--1735167, -11823508, -4540318, -17042968, -9474161, -3043521, -4154844, 32319628, 30198988, 17730162,
-19196356, 883690, -23344758, -23968064, -43723304, -29271812, 4088272, 3470871, 9012989, 25737592,
-36881420, 21985938, 18615462, -954557, -20762408, -29111826, -24955370, -21117280, 3092377, 7377680,
-13568875, 9201431, 6281390, 1228361, -7501698, 2859911, 827318, 3054796, 18387828, -1835562,
-8199093, 8196408, -13504988, -25853018, -26385594, -24012626, 6450504, 19454592, 14305462, 21297670,
-19002546, -6471979, 4860829, 11548630, -7419019, -7198365, -16355772, -21368536, -8130910, -5158256,
--2088428, 8843875, 4320200, 4707284, 14433238, 13460964, 14211510, 7890392, 3720516, -7206955,
--8615704, -21964462, -23791434, -17112224, -12306155, 5242545, 15757161, 19505594, 26515518, 18693308,
-12176232, 22012, -8036958, -13057774, -27117886, -29067802, -10052371, 5010080, 13991930, 10882910,
-9791989, 10893648, 8153459, -693637, -1879585, 1011465, 482110, -4954782, -4115653, -14765024,
--9398462, -560493, 5490042, 7046431, 5912560, -2326799, -29528, 5161477, 4407174, 176094,
-3142842, 2426657, -1449015, -7011534, -5933498, -6081137, -1101659, -1687385, 172872, 1158567,
-6395207, 6658273, 6322192, 2576981, 1786706, -2451353, -1755568, -1751810, 297963, -704912,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
-2178622,
-6312528, 533113, 4223564, -972273, -621697, -2283312, 4503273, 2844342, -2654827, -3499862,
-2265595, -896574, -5377836, -6229850, 1469953, 302795, -2107218, -2129767, -4195646, 2667175,
--4934381, 1252520, -492848, 1107565, 398358, 1046898, -2221572, -332323, 866510, 1406602,
--513249, 1722819, 1257352, -2197413, 1640141, -1334124, -4209605, 5954972, -1154809, 259846,
-1413044, -760209, 3281892, 4194573, -911607, 1566053, 3153043, 252866, -3366181, -2583423,
-832687, 1986959, -1028108, 1079647, 3871376, -3431679, -3089692, 3210488, 603980, -1294396,
--2091112, -106300, 726386, 2430952, -3926674, 1909113, 986769, -3072512, -3315178, 2802466,
--1808718, -4066797, -1740536, -399432, 6102612, 7040525, -619549, 1151588, -889058, 1064615,
--1174137, 1854352, 1131187, -1187022, -401043, -1259499, 594853, -1672353, 1547262, 1364726,
-307627, -1955821, 221728, -116501, 834834, -525060, 1299765, -704375, 226023, 57982,
-804770, -207769, 275415, 209380, 831613, -69256, -7766912, -3353296, -5359583, 3512747,
--2601677, -3635690, -2468533, -3260417, -652835, 1204738, 5868536, 1014686, -3142842, 4958540,
-188979, 5111011, -4916664, 7915088, 3667365, 8586176, -1546188, -2923262, -595927, -4725538,
--408022, -338229, -1717987, 1604170, 152471, -3753265, -916439, -15569, 1155346, 3723200,
-852551, -5611912, -4679367, -1774895, 3143916, 206695, 147640, -2846490, 4663798, -130460,
-334471, -2018098, 587337, -1220845, 2443300, -798864, 7779260, 61740, -1034013, 2946885,
--1975685, -3508988, -1459752, 2632815, 4690105, 774168, 2868501, 702764, 475668, -2479807,
--2426657, -3969087, -187905, -4114579, 1009317, 3338263, 3559454, 2502355, -1283658, -1828582,
-3193845, -2283849, -963146, 1993939, -1843615, -330712, -965294, 2063732, 3673808, 1893544,
-1067836, -941672, -427886, 656056, -381715, 2459943, 405338, -1214402, -728534, -562641,
--180926, 336618, 292595, 30065, -397284, 1134945, 712428, 46171, 428960, -903017,
--583042, -723165, -847719, -306553, -948114, -927176, -213675, 1161789, 5428302, 5872831,
-3100430, 9664, 4788352, -2580202, -4074313, 3976603, 4126390, 5244692, 7707856, 751619,
--4910758, 2876554, -4683662, -282931, 1567126, 1158567, 8584566, 716186, -6912213, -278099,
-1233729, 2947958, -499290, -2301029, -7610145, -1447404, 6458557, 2282775, 4247723, 5026186,
-4134980, 1204202, -719944, 4473746, -5653251, -120796, -3843459, 10366440, -559420, 340913,
-4591320, -3773666, -601832, 1664837, -578747, 6203007, -950262, 1909113, 5886790, -1095217,
-1845762, 538482, -285078, -9664, -774705, -1653562, 2544231, 3464428, -827318, 3448322,
-1239635, 6776385, 7691213, -363998, 2056216, 1317481, -3884798, 3856881, -951335, -3195456,
-1356136, 3798362, 1060320, -937914, 6815576, -927176, 1850594, 2086280, 1009317, -3420942,
--200790, -667331, 549756, -1788854, -377420, 245350, 723702, 767725, 1254131, -404801,
-613107, -1662152, -1153199, -2070174, 1603633, 565862, -313533, 672699, -290447, -1694365,
-1086627, 199716, 787053, -496606, -605054, 334471, 2026151, -2071248, 8581345, 8387535,
--3295314, -4818954, -4190814, -2895882, 2171106, -9192304, -876173, 1260573, -4374424, -8144332,
-7918309, -1718524, -1962263, 1251446, 3666292, 3229816, -4000225, -1615445, -131533, -452045,
-1933272, 2767033, -1493575, 3406446, -2522220, 5230197, -586263, 201327, -2639258, 2757906,
-1067836, -808528, -2626909, 1260573, -1469416, -2349884, -1915019, 460635, 1779190, -4964982,
-479963, -9361955, -5353677, 3360812, -1352378, 1114544, 2147484, 6158446, -1924682, -3105261,
--155693, 194884, 2653753, 2493766, -2821794, -1266479, 6868727, 263067, 1103807, 582505,
-3093987, -5670968, 258772, 2879776, 5356361, 1114544, 2341831, 8047695, -1908576, -751082,
--4283156, 63888, 1395328, 2822867, 64425, -1727114, 2529736, -203474, 4538170, 52076,
--105764, 558346, -5578089, -2901787, -3272228, 3159485, -477815, -898722, 9664, 428423,
--162135, 1666984, -461172, -926102, -1180042, -595390, -1696512, -1124208, 1372242, 98784,
--426812, -870805, 461709, 366683, 166430, -761820, 1506997, 644245, 966905, -193810,
--41876, -995896, -1067299, 761283, -488016, 1021665, 1355062, -5434208, -8507256, 3651796,
--2777770, 174483, -4379793, 3411815, -9820443, -8048232, -9261023, -3103651, -1960653, -6449967,
-3305514, 8871255, -6513855, 1384590, 10402411, -2387465, -2829847, -4765266, 852551, -9127,
-4614943, 1524713, 3320010, 2339684, -3375308, -6586869, -3134789, 3963181, -2230699, -4022237,
-1029718, 1686312, 1308891, 856309, 9059160, -4254702, 4936528, -2340220, 2483565, -2617246,
-7539278, -5587753, 3083250, -445066, -4465156, 4187593, -1651415, -1464584, 4498978, 2404645,
--377420, -1966558, 4089883, 2027761, -4190278, -5015448, 3452617, 5579700, 3140695, 142808,
--2414845, 295816, 3556770, -1517734, 4297115, -997506, -8730595, 287226, -3831111, 12451647,
-4349728, -7068980, -3982509, -1386738, -3200825, 3218541, 3115999, 2367601, -1521492, 2736968,
-2200634, 781147, -520765, -3646964, 726386, 1265405, -1042066, 849330, 1274532, -481573,
--152471, 811212, -230854, -1078574, -906238, 94489, 956167, -984084, 904628, 1072131,
--1368484, -1741072, -2202245, 77309, 1309965, -592706, 1163399, -940598, -90194, 890132,
--625992, 376883, 3262565, -7239704, -8828842, 7606924, -1585380, -7203734, 652298, -1853278,
-7438347, 3678640, -1824824, 1378685, -309775, -1096827, -1257889, 8589935, 1744831, 469762,
--5793374, -2668785, -1304060, 3018825, 3839164, 11564199, 358630, 391916, -284542, 798864,
--5010080, 242129, 2169495, -6303938, -4390531, -4078072, -448824, 8456791, -6799470, 1182727,
-3925063, 1683627, -3142842, 3528316, -8504572, 7022272, -1449552, 11811, 3874061, -4325032,
--5013301, -7866770, 1736777, -2567317, 7528541, 2603287, 249645, 1430761, 2334852, 5862631,
--2524367, -1280437, 6177237, -1248762, -3424700, -121333, 6180995, 6207302, 5716602, 3067681,
--3705483, 3637301, 5175973, -6038187, 7793755, -4723927, -4363687, 7016903, 791885, 10121627,
--75699, -5675263, 2550137, -2526515, 6754373, 3201898, 1896765, 454730, 2347200, -1180579,
-4261682, 1469953, 1721208, 1273458, 2513630, -197032, -164283, 1930588, -30065, 1417339,
--715112, 2336462, 4817880, -2780991, -1236414, 841277, 638340, 306016, 1254131, -242129,
-421444, 980863, 2379949, 169651, 4437238, 1046898, 549756, -1978369, 536334, 1453846,
--1941325, 429497, 899796, -120259, 599685, -15849503, -10442139, 2807835, 5091684, 10837276,
--6604586, 5815386, 1083406, 6124624, -312459, -2859911, -3722663, 3781182, 11228118, 947040,
--983011, -10714333, -8960376, 54761, -6585796, -3878892, 384936, 1346472, -6749541, -2025077,
-1640678, 3960497, 2118493, -4372277, -9664, 5034776, 4108673, 847182, -4136591, 760209,
--2528125, 1215476, 1420560, 2305861, -3182571, 3995930, 9786620, -1000727, -720481, 1891396,
--5442798, 2567854, 7885023, -7769059, -9146133, -4743255, 769336, -11862700, 307090, 332860,
-1668595, 108985, -159451, -5635534, -3018288, -3662533, -482647, 8060580, 11926050, 331249,
-802085, 5804649, -2415919, -1001801, 2716030, 13392782, 1713692, 4810364, 9430138, 1713692,
--6084358, 2527588, 2834679, -2824478, 2917357, 2415382, -605590, -2920578, 1397475, 850940,
--607201, -4985920, 2221572, 4564477, 1736777, 3324305, 1886564, 4013110, -841277, -1514513,
-3728569, 3067681, -923418, -210453, -1075352, 2640868, 2901787, -2320356, 2883534, 762894,
-384936, 712965, 1582159, 2137820, 312996, 1867774, -1232656, -680215, 25770, -337692,
-801548, -1249299, 225486, -376883, 586263, -1682554, 8201240, 5070746, -7483981, -372052,
-16224776, 14247480, 3077881, 8575976, 10722386, 2648921, -91805, 6959995, -3103114, 37581,
--6289980, 5154498, -371515, 218506, 2403571, 2725694, 8859444, -7457137, -6706055, 6685654,
-1436667, 3030636, -5222680, 912144, -1789391, 3418257, 107911, 4814122, 4828080, -4901095,
-4096862, 3329674, -5531918, 14292041, 2561948, 2743947, -11068668, -3618510, -839666, 9244380,
-8718247, -936840, -9494025, 6181532, -8248485, -2636573, 7326678, -270046, -5834176, 7042136,
-8980777, -2334315, 3063386, -3654480, -12460774, 10201, 8078297, -3752728, -4226785, 5214627,
--5949067, -9181029, 2319282, 6115497, 11317776, 5838471, -8386461, 3467649, -9861782, -11753715,
-10837813, 5003100, 3999688, -7329899, -7785165, -1247151, 8182450, 2642479, 11667279, 5082557,
-2983929, -12412992, 2047626, -3508452, 521302, -2951180, 2620467, 705985, 3161096, 5144834,
-2772938, 394600, 2350421, -2124935, -967441, -2164127, 17180, -2030983, -537945, 701690,
-3936875, 609885, -1578401, -767725, 1287417, 102542, -306016, -4041027, 258772, -2101850,
-792421, -2895345, -3070902, 1998234, 2489471, 3810173, -3779571, 16782584, 10765872, -7274601,
--1992865, -277025, 2934537, 2367064, -1063004, -6561100, 1586454, -4498442, 6977175, 217433,
-2685965, -2283849, -1043677, -6847789, -3650722, 14426258, 4763119, -8798777, 4157528, -8595303,
--6077379, -13444321, 5836861, 222801, 200253, 3183108, -382252, -6097780, 10125385, 5796595,
--2248952, -10215580, 10214506, -7014219, 2684892, -266288, 3336116, 2017024, 6484864, 7494718,
--1765768, 4149475, 11863773, 1522029, -3744138, -3401614, -2119566, 1843615, 7913477, -2181307,
-3206193, 622770, -7282654, 277562, -1806571, 3542811, -10945187, -184684, -18234820, -11044508,
--10182294, -2572686, -10062035, 6752763, -2528662, -8313446, -2254858, -934155, -6752226, -2924336,
--258235, 676457, -4058207, -8734353, -8768176, 471910, -1919850, 2137820, 4886599, -781147,
-2435247, 1223529, -59593, -142808, -4785131, -202937, -117575, -3825205, -334471, 3607773,
-6912213, -1197222, -3335042, 2600066, -4311611, 3633542, -3602941, -1333587, 671626, -2605972,
--3240016, -16643, -2029909, 505732, -769336, -3235184, 1575716, -126165, 4024384, 2729452,
--2872796, 2448131, -1613834, 2277943, -1328219, 1551020, 1401770, 1111323, 62277, 1628866,
--1908039, -1001801, -2118493, -4217658, 537408, 1548336, -462783, 933619, -3342022, -11431592,
--14370961, -6723235, -9565966, 24769614, -11993159, 5669357, -11326366, -3177202, 1190243, -1760400,
--16876538, -281320, -8021389, 671089, 19868518, -6287296, 8334921, 11009612, 3949223, 4518843,
-11948062, 3629247, -4656819, 3469260, 4682051, 5115306, 2136746, -2413235, 13905493, 601832,
--1122597, -2259690, 3767223, -1118302, -4846871, 4777078, -1797444, 3446175, -13479755, 631360,
--2610266, 12259447, -4817343, 4001299, 18271864, -1525250, 376347, -4394826, -7560753, -367757,
--1246077, -7664906, 9702868, -2027761, 7038378, 811212, 6646462, -3799436, -724776, 14671608,
-7141457, -11287711, -5947456, 3150896, 3505230, 1794760, 3107409, -3260417, 4127464, 5412733,
-12130061, -15538655, 930397, -6617471, 3171297, -237297, 1775432, 5783174, 8330089, -5525476,
-5883032, -3991098, -2744484, -2213519, -2086280, 4735202, -10615012, -2051384, -4903779, 6115497,
-4913443, 2128156, 2528125, -3527242, 4058207, 1889249, 2920578, -392453, 2315524, -3129958,
--1773822, -3932580, -336081, -629213, -3552475, -46708, -369904, -943282, -49392, 4210142,
-2579665, -2317135, -3799436, 1982127, 1439351, 4824859, -3723737, 290447, -1343251, 2164127,
-2461016, -2024540, -3831111, -8199630, -7264937, -7932805, 8596377, -16594143, -4827007, -10411538,
-5215701, 17124034, -9286256, 468688, 545998, -3397856, 6678138, -5559835, 2721399, -1749125,
--7005092, 15276125, 825171, -5024575, 282394, -2269890, -6710887, 5313949, -5126581, 4987531,
--9629854, -4531728, 6600291, 4776004, -16131360, -2930778, -13727252, 4088809, -2247879, -13282723,
-16231218, -4540854, -255551, -12287365, -13397077, 768799, -12072616, -1597728, -10422275, -8960912,
-10646687, 1160178, -13574781, 4466766, -12144020, 10872173, 3991635, -5279052, 475668, 3493956,
-11487964, -8846022, -12452721, 12656732, -8781598, -5042829, 6692633, 9555765, -17672716, -8722542,
-10139881, 7496329, 3968013, -928787, 1305670, -12736726, 4432406, 4247723, 7083475, -2241973,
--13420162, -9769977, 4825933, -11627013, -10125385, 4291746, -618475, 159988, 4301410, 9821516,
-68719, -411243, 9200894, 850940, -1434519, 1568200, -1192927, -1859184, 2024540, -2404108,
--1644436, -4615479, -4365835, -3150896, 865436, -2621541, 91805, 1870458, 1542430, -255014,
--2147, 2001992, -2261837, -3660923, 1156420, -119185, 3554086, -3372623, -909459, -3823595,
-4495757, 4690641, 1066763, -232465, -2838974, -1172526, -4014721, 350577, 714575, -2279554,
-765578, 928250, 8433705, -13015898, -21220896, -17139604, 7722351, -20492362, -991064, 15512885,
--1374926, 1102733, 11139535, -7407745, -6301254, 24660628, -9772124, 5759015, 9388799, -1757715,
--22368726, -1876901, 2359548, -5640903, -3100430, -5222680, 20871394, 182536, 236760, -1045825,
--15034533, 2733210, -8656507, -4369056, 936303, 2494302, 4455492, 12099460, 2692408, -3144990,
-23847806, 2488397, -5898064, -21829172, -3182571, 15973520, -3471944, -10030896, -13420699, -11844983,
--10094247, -6376416, 16963510, 6570763, 975494, 9402220, 14172318, 7877507, -3087008, -2513630,
-14649060, -2919504, -4492536, 4227859, 11202348, 1567663, -11511586, 2618320, -1161789, -17236778,
--1300301, 13663902, -6782290, -7941395, -1925756, 18379238, -14652281, -2968359, -8176007, 8377871,
-4879620, 3865471, 5887864, -2444910, -3157875, 6202470, 4975720, 3411278, -1005559, 737661,
-3915937, -10848551, -1999844, 1386201, -5601174, 113280, 5913633, -629750, 1091459, -2356327,
--674847, 3211025, 4176856, 6240051, 3520800, -1080721, 2228551, -3614752, -4573604, 1281511,
--897648, -3746822, 4136054, 2173790, 3128347, 638876, 1513976, 3191161, 1778653, -954557,
--2303176, -629750, 1301912, -16106, 1319629, 248034, 1636919, 973347, 2802466, 337692,
--2698313, 5935645, 4871567, -4604742, -1555315, -2215130, 17365090, 1741072, -15501074, -578210,
-4657355, -564251, -7062537, 6725919, -5223217, 13800804, -10613401, 9482751, 20744692, -5614059,
--5515812, -4890894, -4305705, 18510772, -13710609, -15081241, -11495480, 4198868, -5992016, -9708774,
--4454418, 6649146, -9293235, 5146445, 1232656, 7262790, 10798085, 1327145, -1364189, -2070711,
-10644540, -2739116, 3771518, -13029320, -100395, -4640176, 10380399, -13845901, 11387032, -4782983,
--7120519, 11449309, 19853486, -11149198, 5662915, -2461016, 4041564, -29782376, -23597624, -14324253,
-2083596, -9086003, 3943317, 974421, -11046656, -8736500, 980326, 23745800, 5616207, -14790257,
--22100292, -11666205, -8147016, 14555644, -10064719, -14402636, 3471944, 3170223, -13303124, -830002,
--194884, -6600828, -1491427, -340913, -527207, 6533182, 1637993, -7648800, -6765647, -3723200,
--9767293, -5323075, 1666984, 11054172, 1897302, 2086817, -3150896, -9038759, -1353989, 7440494,
--301185, -4191351, 6875706, -10306848, -5020280, 1579474, 1697049, -143345, 1209033, 757525,
--3427384, -7204271, -2535641, 5551782, -3142306, -2542084, -2822331, -6423124, -7072201, 2709051,
--2491081, -1525250, -6653978, 1701881, 4499515, 5383742, -145492, -3173444, -3666828, 3892851,
-3546569, 29823716, 19563576, -5156108, 2012729, 19283866, -7577933, 629750, 8342437, 20875688,
-12313671, -3680787, -4611721, -7269232, 1931662, -4024384, 376347, 484794, 22073448, 36377300,
--2079838, 25076704, 15924128, 3198140, 3995393, -17964774, -17710834, -2078227, 4762045, -1341104,
-4413079, -6746857, -13247290, -22508850, -1876364, -14508400, -12162274, -8158827, -12591770, -9154186,
--444529, 20770998, -609349, -15894600, -1278827, 4427038, 15525770, -4935991, -3875134, -9526774,
-7074348, -28451474, -25440702, -12350178, -12665322, -13714904, -8217883, 8956081, -11417634, -15987479,
--13321378, -23869280, 12243341, 6433324, -21082920, 10740639, 21400212, 41756208, 23139674, -363998,
-7691750, -24190866, -9805410, 12861280, 11008538, -6280316, -16247324, 2010045, 3468186, 14702210,
--1836635, -15325517, -2612414, 24141474, 15542413, 17445620, 14016626, 24349244, 23086522, 6793565,
-6311992, -5511517, -9632001, -2820183, -795106, -8406325, 20938, -9697499, -7088844, 10982768,
-4984847, -3149822, -9597104, -3806952, -1103270, -282931, -10688563, 10577431, 187905, -9114457,
-5431523, -5669894, -4601521, -1506997, 3402688, 14639933, 7282117, 17541720, 129923, -3615289,
-2072859, 6611566, 4551592, -2406256, 9382893, 319438, -2953864, 1251446, 7779260, -3932580,
--3201898, 2747169, -590558, -31003222, -2796561, 49465676, -3496640, 1637456, 12520367, -18285286,
-10293963, 35012572, 32605782, -32986960, -31322122, -199716, -33994128, -13112535, 59056, 3734474,
-12548284, 18523658, 16630650, 29001766, 6998113, 11285027, 11733314, -5166309, -1996086, 2948495,
-3941169, 8391292, -15590194, 34874596, 15145665, 16146930, -2983392, 35410396, 4495220, 21238614,
-8977019, 6461242, -8335995, -5724118, 18245558, 6716255, 8510478, -19450296, -10200547, -16294032,
--9296994, -11935714, -11274, -23503134, -25164214, -1779190, -9672266, -47854524, -35356708, -32360432,
-9167608, 34331820, 44903348, -25120726, 30962420, 47779900, 8227547, 3723737, -3050501, 32764694,
-2537252, 29603062, 12891344, 13669270, -19962472, -66432944, -52325048, -12187507, -1786706, 1024887,
-2312840, 24037322, 23067196, 19705310, -12541305, 1209033, -6565932, -34473020, 3403762, 2292976,
-17078938, 2225867, 25132002, 22320408, 5577015, 19350976, -8448738, 12952548, -11972221, -13846975,
--5027259, 4842576, 21791590, -5410048, -6272800, 2734284, -10948409, -5807333, 10954851, -3664144,
-7520488, -14319421, 18639084, 5152350, 32749, -1844689, 14281303, -4115653, 827855, 1785633,
--483721, 9236327, -7304666, -4225174, -320512, 8829916, -14291504, 1252520, 4769025, -7499013,
-792421, 1910187, 1473174, -3758633, 24251532, -5446556, -43361988, -3970161, 69448008, 12526809,
--12780749, 17726404, -5531381, 11488501, -5347771, -7655779, -22613002, -8726837, -2280628, -3964792,
--10718628, 16238198, -14595909, -16052977, -882079, 2392297, 14726906, 6376953, 4208531, 6042482,
--5704791, -20938, 21889300, -11218991, -25601764, -5320928, 2492155, -8871255, 18260590, -9578851,
--5847598, 15045270, 4502737, 11324218, -26452704, -30204358, 10231686, -5950677, -9982578, -13022341,
--15634755, -33244658, 338766, -3052648, 11300059, -21340082, -43934832, 32950990, 9367861, 30963492,
-3726958, -10189810, -9101573, 7949448, -16371342, 25647934, 5403606, 30814242, 21880710, 45824616,
--4275103, -44306884, -34053184, -19672024, 25675314, 25373056, -19136764, 20114942, 40477920, -23854248,
--3384971, 43067784, 6989523, 33042258, -4667019, -17141752, -44713832, -17660906, 5333813, 28525026,
-25286620, -14960982, 12826383, 11638288, 23991688, 8005282, -23420994, -28189480, -10799695, 19166292,
-41342280, -1229971, -3481071, 21195126, 11496554, 1752347, -3335579, -9197136, -10909217, -9165997,
-7212861, 4103841, 13218299, -5658620, -1324997, 1041530, 8061117, 9955197, -12842489, 30602,
-14906221, -1871532, -4125853, -16543140, 12030740, -225486, -6869264, -5217849, 16590385, -973347,
--10396505, -5843303, -36529772, 37874096, 51391432, 8949101, 2333241, 11412802, -7844758, 22418656,
-12541305, 23427972, -4752918, -24757802, 54984172, 306553, -20675436, 2532420, 37176164, 17012902,
-7283728, -23573464, 2545842, -12629351, -9221295, 3670050, -17539036, 1462436, 4702453, 21115132,
--30026116, -5130339, -3615289, 17826798, -6808060, -11113228, -10572062, -171262, 11358041, -23369990,
-1677722, 6114960, -47771848, 6543920, -12969727, -33693480, 22094922, -24916716, -43661028, 57560076,
--488553, 3284576, -4588636, -16077136, 34715148, -24650964, -2363306, 5114233, -15925739, -1365800,
-43873092, 22644678, -38815232, -42008000, 41295036, -19821274, 24028194, 39621072, -35710504, -61422328,
--42539504, 70717712, -4291209, -55629492, 50675244, -37131068, -70527120, -1231582, 60632052, -2753611,
--73196440, -1180579, -24715926, 527207, 89997280, -13901199, -66475356, 9475772, 35182760, 590558,
-41161892, 2239289, 678605, -13237626, 1535988, 9271224, 33190970, -7152195, -9148280, 32819456,
--4571993, 7679402, 22959284, -4159676, -33833068, 21764210, 15755014, 25520158, -8158827, -818728,
-8969502, -7634305, -24965034, -11152419, 10037339, 538482, -5070209, 32411970, -1177358, -36580236,
-8287677, 29433410, 17010218, -12904766, 1423782, -14757508, -8286603, 35733592, 29991220, -8152385,
--34840776, -11387032, 13991930, 11285027, 9206799, -6838662, -1504312, -24237038, 37248640, -7216619,
-10973641, 24420110, 16769163, 18585934, 43892956, 19528142, -11373073, 7343857, 10446434, 14806363,
--16566763, 42999600, 39825620, 5930813, 13459354, -9546102, -532039, -43249784, 19513110, -22687628,
-15011984, -1460289, -16524350, 23928336, -9910100, -17307108, 8941585, -24570972, 16006806, 1024350,
--5247377, 7193534, 9805410, 15770046, 15305116, 15375446, 44661216, -4116189, 4403415, 14605573,
-29918742, -2667712, 7569880, 441845, 23284628, 28586228, -9732933, 7136088, -1781875, -4271345,
--52151640, 4478041, 21482352, -11996917, -13158169, 11788075, -22038014, -31656594, 2327872, 18521510,
-37613712, -48637284, 18224620, -2146410, -1901060, 585726, 18632642, 41437844, 200790, -29599304,
-9410273, 33698852, -18586470, -25992606, 2019708, 14993731, -14664629, 26766774, -5669357, 20660940,
-1232656, -19856170, 24350854, 20385526, 2866354, 16161962, -9436580, 10235444, -5377836, 5592048,
-7602092, 24425480, -5645735, -28770376, -4297115, 34153044, 2069637, -3912178, 29470454, 6652368,
--682900, 7606387, 20283520, 31353262, -20419886, 8023536, 3698504, -1086090, 14673219, -4036733,
--23088134, 7806640, 20969104, -8805757, 5082020, 7719667, -7515656, 8773008, -14872398, 10624138,
-8661338, -12093554, -27531814, 11938935, 14842333, -6706592, -10367514, 14760729, -1603633, -8295730,
-23213224, -44100724, -34886944, -323733, -53669912, -18033494, -20048908, 41394896, -1491964, -14921253,
-18613314, -9409736, 10184978, 2971044, -20671678, 24616068, -55305220, -4940823, 3047279, -13476534,
-9851044, 2732673, -11025181, -1682554, 1329292, 14134737, 547608, -15854872, -53661860, -38655244,
--29939680, -14476724, 32810328, -6431177, 969589, -53178136, 3732864, -3452080, -7509214, 1957431,
--51944944, 27945742, -25352656, 13004624, -10529649, 35464620, -19473382, -33812668, -16648367, -22549,
-25275346, 46810848, 48644800, -60065116, -44897440, -30531848, 20558934, 49848464, 59755344, -10188199,
--15299747, -52538188, -19823422, 47291348, 28496572, -287763, -213138, -842350, -44847512, 30137248,
--9181566, 29099478, 69561288, -77671264, 94272384, 26979910, -51383916, 14605573, -102807560, -99976104,
-73813848, 31872416, 7108171, 22371948, -38160248, -17941690, 68790880, -2323041, 46209552, -4247186,
--37461240, -11857868, 40810780, -13320304, -1060320, 13615046, -3444564, -23565948, 13162464, -19069118,
-8829916, 26455388, -27300960, 26066694, 8518531, -3111704, 9626632, -1232656, -6219650, 4630512,
--9524090, 5199595, -19385334, 17479980, 17775796, 4010426, 536334, -5569499, 9097814, 3725884,
-3615826, 9238475, 17131550, -20895016, -7220377, -19360102, -15096273, 1969243, 768799, 17391396,
--22034256, -16466905, -21221970, -12992276, -5665062, -44542568, 36820756, -22075596, 22588306, 12036109,
-14204531, 8458938, -28632400, 31212602, -4771709, -11070815, -10366977, -12286828, 9398999, -6426882,
-13431973, 8134131, -1929514, -3204583, -23998666, 13913547, 5495411, -6068789, 5155572, 12635257,
--3741454, 7195144, -12276627, 14372571, -5494337, 1895154, 5658083, 6146098, -6537477, 22126060,
--1025960, -20678120, -1543504, 9628780, 4551055, -15803869, 7544647, 18536542, -3643743, -8911520,
--8933532, -1151588, 4916127, -2177549, 21527986, -14534706, -5757941, -5124433, -11070278, -864362,
--3494493, 8013335, 5587753, -8910983, -1516660, 8400956, -8934606, -4452808, -2779918, 13474923,
--8455180, 5812165, 8859444, -20735028, -8528731, 6717866, -21837224, 32952600, 8650064, 10525354,
-15037217, -9570798, -392990, -2791729, -15074798, 3055869, 4802847, 12065637, -2507187, -4999879,
-7202124, -7539278, -3240016, 7253663, -33823, -1719598, 5974300, 1907502, -3995930, -127775,
--4398047, 9648107, -9184788, 14615237, 550830, 3254512, -6170258, -500901, -2301029, -4511863,
--2482491, 3510062, 1673964, 4236449, -162672, -3389803, -2374043, -11241540, 11328513, -9018894,
-5098663, -2110977, 6596533, -3684545, -10583336, 743029, 5419712, -8594230, 12919262, -10251550,
-5636608, -3889093, 51510616, 6703370, -17445620, -13565654, -10151692, -998043, -1649268, 1114007,
--1395328, -2008971, -29116658, 615254, -5791227, -6744710, 3705483, -11457362, -5180268, 5282273,
--7964480, 2248416, 9048959, -12240657, 7712151, -4545149, -6471979, -1058173, -6472516, 3010235,
--6005438, -3230352, -7077569, -1406065, -88047, -186294, -4242354, -4447439, 1361505, 2302103,
--5073430, 6874632, -8465917, -772557, -3361886, -1101122, -1568200, -6756521, 9262634, 5648419,
--9233106, 11252277, -1113470, 2388002, -5057324, 10797548, -10770167, 798327, 966368, 2844879,
--1745904, -2811056, 8111583, -5364951, 1243930, 418222, -1596654, 2571612, -3463891, -495532,
-4556961, -2273648, -2007360, 5101885, -1937030, -2234994, -4689031, 2462627, 2380486, -10519986,
-12650289, -7110319, 2908230, 863825, 234076, -4076998, 1803886, 5177583, -3777961, -1949378,
-2840584, -3872987, -181462, 3171297, -1239098, 1263257, 759672, -2870112, 569620, 370978,
-2649458, -4660577, 454730, -525597, -1766305, 1948305, -2221035, 1122060, -1413044, -4076461,
-2355253, -3533684, -1960116, 1312113, -2140504, 820339, 2127620, 228707, -3010772, 3278134,
--554051, -2017024, -25169582, -40950364, 45730128, 153798480, 15653545, 35328252, -83669720, -127949760,
--32150514, -66827544, 52081312, 107227080, 56507276, 35751308, -8010114, -41578504, -40898288, -30758946,
--28565290, 10227391, 18294950, 10596221, 19691888, 2628520, 1580548, 7796977, 2236604, 8848706,
-7039989, -5222144, -19582904, -14465987, -17258790, -23287850, -12305081, 13168370, 16972100, 31524524,
-44500156, 16151225, 6449967, -14752139, -35255776, -34103116, -23822572, -16515223, 3403762, 13167296,
-18895172, 20172388, 16996796, 11483132, 1347546, -1309428, -11193222, -7715372, -4930623, -5577552,
--2168422, -6307160, -1806034, -7484518, -7322383, 2747169, -572304, 9772124, 16033113, 9547175,
-23838142, 21247740, -10186589, -20888574, -20937966, -31170726, -8763344, -7478075, -1657321, 19235548,
-17143362, -2988760, 14911590, 18602578, 6324876, 13007308, -1140314, -14951318, -10835666, -25690346,
--16171089, -6067715, -1570884, -1874753, 4672388, 12171937, 19283330, 24317568, 20585778, 6887517,
--11181947, -18344880, -17546552, -19585588, -8764955, -4963909, -1989107, 4359392, 9715216, 7704098,
-13575318, 7413114, 8934606, 8097624, 118112, -6673306, -8691403, -10926397, -10706817, -9567040,
--5032628, -5268851, 3118146, 5536213, 11178726, 16149614, 15633681, 5940477, 1159104, -8870718,
--10735271, -12714177, -12694313, -3730716, -497679, -2449742, 3126199, 9918153, 13003013, 6391448,
-1512365, -696858, 283468, -2609730, -2826625, -4890894, -2901787, -3724811, -2519535, -1631551,
-183073, 1611, 3009162, 5558225, 5997385, 2678986, 1183264, -1540820, -776852, -1169842,
-238908, -545461, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
-3988414,
-6492380, 1704565, 5732708, 98784, -5909875, -4076461, -4303557, -669478, -2954401, 6932077,
--5181341, -1316944, -2350958, -828392, -4154844, 3998615, -2448668, -1918777, 3365644, 5577552,
-6313602, 973884, -448287, 1314260, 338229, 892816, -2851322, -3071975, 1507534, -2784750,
--2786897, -3737695, -3927748, 1202054, -2599529, 3482682, -4335770, -587337, 1920924, 1825361,
-1612223, -6729140, -1202591, -3730716, -643171, -1563368, -4099546, -79994, 4909685, 1496796,
-2389076, 2260227, 2658585, 343061, 3333432, 2097555, 3719442, -2093797, 2486249, -1212255,
-1720671, 203474, -3415036, 4013647, 4540854, -2420214, -3029563, 1345399, 4174708, 1001801,
-1123671, -1385664, -261993, 2266669, 1423245, 373125, -812286, 285078, 1918777, 2330020,
--268435, -3613141, -2204392, -1211718, -1529545, 849330, -333397, -321586, 1734093, -1260573,
--411780, 537, 316217, -852014, -233539, 135828, -1359894, -150324, 1699733, -242129,
-905701, -1213328, 718870, 366683, -69793, -795106, -10142565, -2664490, -4575214, 3356517,
--9508521, 2083059, -4191888, -2215130, 1347009, 186831, 1061394, 1419487, 1069984, 4123706,
--1836635, 428960, -419296, -5023501, 3698504, 6179921, -5034776, -4726612, 3586835, 919660,
-4428648, 1401233, 5950141, -830002, 2003065, -3155190, -963146, 6066105, 481573, -3963181,
--4888210, -5280126, 220117, 4366908, 2215130, -32212, 4969814, 3961034, 152471, -4070019,
-6356552, 1620276, 4901632, 4983236, -876173, 3173981, 3751117, -458488, 2215130, 2570538,
--2477123, 507880, -770410, 2442763, -5591511, -3580392, 1801202, -3461744, -1336809, 4789426,
--1942399, 2630668, -1125818, -7523709, 1266479, -38118, 3950833, -6196564, -3333432, 2798708,
-706522, -597000, 1596654, -2921652, 847182, 743566, -894964, -1842004, 2532420, 2302103,
-1592359, 288300, -954557, 611496, -707059, -1116155, 833761, 716186, -1511292, 1089311,
--845035, -642635, 1359894, -978179, -2011118, -30602, -750009, -246424, -952946, -1047435,
-420907, -78383, 612570, -5369, 601295, -1482301, 430570, -431644, 6379100, 6734509,
-2962991, 4981089, 3890167, 6744710, 7687455, -2860448, -825707, 2587181, -7681012, -258235,
--2532957, -1466731, 3515968, -4472672, -523986, 5681705, 1049583, 3641596, -1802813, -1318555,
--1915019, -7224135, -1184337, 489626, 3819300, -1163399, 6572911, 2588792, -1136556, 2626373,
-1361505, 3376381, -2443837, -512175, 7675107, -1029182, 7250979, 3401614, -3183645, 759136,
-6385006, 3322694, -4214437, 5819144, -1599339, 390842, 300648, -1178969, 1115081, 643171,
--5266704, 3354906, 2452426, -458488, 188442, -1179505, -4758287, 0, 2670396, -550293,
--563714, -3208341, -6995965, -2410014, 2600066, 5862631, -8920110, -4762582, 1664300, -3900367,
-2281702, -189515, -44023, -5376226, -4075387, -2394981, -3488050, -1730872, 194884, 591632,
--1252520, 2010045, 1606855, 317291, 1480690, -1644973, -606664, 26307, -2405719, -540629,
-235686, -3064996, 1277216, 719944, -586800, 71404, 634045, 1446867, 162672, 187368,
-23085, -1504312, -190589, -470836, 1085553, 731755, 1486059, -1079111, 9400073, 10040560,
--2024540, -4172561, -4608500, 9628780, -8355322, 253940, -1381906, -3858491, -5297842, 1902671,
--1471563, -7159174, -8764955, 359167, -678605, -4540854, 1633161, 2451353, -3235184, -4816269,
--4539781, 6414534, -6913287, -804770, -8075076, 122407, 4467303, 1556926, 750009, -4489852,
--4363687, 3983045, -3069828, -4589173, 557272, -1651415, 2810519, 86436, 1126892, -4575214,
--1717450, -1269163, 4407174, 3061238, 3060701, -9087614, 1429150, 2571612, 2069637, 2600603,
--2612414, -1630477, 315143, 1879048, 3595961, -594316, 2372433, -2607582, 7030325, -12740484,
-4477504, 395674, -6804839, -260382, 7503308, -2241436, -3531537, -6816113, -2318746, 564788,
--1910187, 24159, 3073586, 3952981, 3269007, -938450, -547608, -3996467, -827318, -1000191,
--2033667, 588947, -828929, -767189, 1633161, -2006287, -946503, 1997160, -985158, 1300301,
--303332, -781147, -710817, -512712, -2951716, -1813013, 1282048, 1476932, -1401770, -1102196,
--954020, 1115618, -697395, -393526, -1159104, 785979, 804770, -1351304, 551903, -168041,
--1256815, -271657, -711891, 836982, -417686, 1232119, 1705639, -4459787, -14147085, 2587718,
--6456410, 1421097, 1170379, -810138, 10019622, 562641, -6430640, 8577587, 4116726, 2949569,
--1302449, 1782411, -2624225, 6724845, -1130650, 770410, 10105521, 9884330, 4211753, 4529043,
-4335233, 4922033, 3265786, -9759776, -3067681, -133681, -2586107, -8308078, -935229, -1969779,
--2216203, -4464082, -107374, -1311576, 7126962, -2296734, 12512313, -78920, 1033477, -2326799,
--1838783, 90194, -385473, -1009854, -2217277, -1476395, -6168647, 1487132, 979789, -742493,
--3202972, 4279398, 3149285, 3707094, -1333051, -2702608, 44560, 3227131, 3480534, -2837900,
--8053064, -4113505, 837519, 6673843, -954557, 5452461, -4374424, -6327561, 4681515, -2225867,
--5213017, 2990908, 3110093, -5829881, -4626754, -6414534, -2158221, -2225330, 3636764, -2024003,
-1082869, -436476, 2412161, 1487669, 1319092, -1235340, -719944, -3356517, -1709397, -919660,
--78920, 1443646, -323196, 67646, 2725157, 1044751, -176631, -9127, 1735167, -1207423,
-438624, 472446, -981400, 1029718, -876173, 662499, 506806, 743566, -548682, -2115272,
-1962800, -3532611, 5196374, -6154152, -6729677, 3238942, -1927904, -563178, -3533148, -2019708,
-3450469, 4904316, 2556579, -1102733, 751082, -552440, -1117765, -4620848, 1576790, -12507482,
--3628711, -3958886, 3476239, 4341138, 375273, 2175938, -7794829, 2173254, 1220845, 2164127,
--7024956, 13342853, -581431, 2514703, 1764695, -6244346, 1012002, -8971650, 5810554, -1877975,
--7525857, 1566589, 598611, -3740917, 432718, 869731, 5983427, 10772852, 4667019, -2127620,
-3497177, 4450660, -9962177, -3626563, -4552129, 2821794, 2307471, -1617055, 1604170, 3519726,
-2237678, 4520990, 8391829, 236760, -3092913, -817654, -335544, 6614787, -4706748, 66035,
-3053722, 8905615, 52613, -5858336, -5736466, -471373, -7050189, -922344, 2695629, 10896332,
-9366787, -1052804, -4949950, 4037269, 311385, 1202591, 1025423, -342524, 1382980, -348966,
--1361505, 1213865, 1569811, -1506460, 2194192, 2051384, 1981054, -545998, -1596654, 1285269,
-1763084, -267362, 526134, -1340567, 217970, -281320, 2555506, 941135, 1595580, 1236951,
-398895, 830002, -11274, 1003412, 2284923, 479963, 938450, 1631014, 2222109, -1065689,
--558346, 530428, 660888, 1673427, 2609730, -13028783, -3544422, -4843113, 5573794, 159988,
--2673617, -16741783, -2201708, -2273648, 6928319, 16506633, -4760971, 11076184, 1915555, -9822590,
--9991168, 1698123, 2543695, -5726265, 6269042, -4534412, 5052492, -6263673, 3015604, 2108292,
--5914170, -5018133, -3797288, 1928440, 6476274, -8477192, 316754, -8911520, -493384, -3412352,
-2165737, 6441914, 682900, -2839510, -2478733, 6976101, -19864, 10653130, 3284576, -4065724,
--3876745, -3130494, 1531693, 6672232, -137439, 11083163, -19796042, -14634027, -11813308, -2767570,
--10075993, 620086, -3792456, 3550864, 8992051, 1581085, 3722126, 5732708, 9518184, 4860829,
-1457068, -6598144, -16386911, -17302812, 9268539, 593779, 11765526, -8413841, -6032282, 5122822,
--12129525, 208306, -4332549, -489626, -7822746, 276489, 2610266, 7036230, 1277753, 1112933,
--2255395, 2517388, -516470, 812823, 1974074, 3170760, 4120484, -1146756, -1730335, 2972117,
-1519345, -1169842, -2172717, 430034, -362388, -288837, -920197, 439160, 31675, -1203665,
--401043, 1207960, 2228551, 1765232, 1531156, 777389, -5024038, -2786360, -1921461, -1806034,
-2699387, -437550, -832150, 5369, 769873, 181999, 7848516, 3428995, -6251862, -170725,
-14944876, 12669617, -1170916, -10951093, -18478024, -2108292, -6486475, 6609955, -5537287, -5450851,
--20925080, -8978629, -18742164, 6917582, -612570, -4567161, 4995047, -656056, 115427, 1358283,
--6014565, 532039, -6908992, -1226750, 4201552, 3125663, -7046968, 2541547, 7199439, 11715597,
--1768990, -1636919, -3892851, 668404, 6086506, 8637179, -1234266, 1279363, -1855963, -1492501,
-10293426, 7490423, 308701, 7726110, 2244121, -9458592, 1794760, -947040, 12251931, 4791573,
-1551557, 5915244, 7953206, 2194192, -6978785, -11961484, -2752537, 2505040, 6431714, 3287798,
-411780, 2516314, 9506373, 2101313, 3099893, 4383551, 2566780, -6092948, -6886443, -5984500,
--6802155, -6228240, 10568304, 1497870, 8164733, -7156490, -6313065, -1206349, 6826314, -4254165,
-3642669, 2096481, 1098438, -3611531, -2289218, -3336116, -2278480, -3803731, 1531693, 1241782,
--1031329, 2517925, -1641751, 1191853, -656056, 285615, 1155883, -3365644, -2086817, -3377455,
--2182917, -4116726, -1175747, -3411815, -1628330, -1973538, -2594697, -160524, 3002719, 987306,
-1258425, -1062468, -281320, -364535, -702764, 2341294, -1093069, 26212186, 5743982, -8078297,
-4683662, -4700305, -15537044, -3135326, -15240691, -8339753, 7893613, 10533944, 4070019, 2194728,
-897648, 1982664, 9982041, -7036230, 14120242, -9069360, -9274445, 11325292, 5015985, -18104360,
-7965554, 4721780, 5779416, 12070469, 5927055, 9007620, -588411, 4937065, -2828773, 7715909,
-2016487, 1747515, 5095979, -10120017, -5516349, -3011846, 6586869, 2991445, 2378338, 5361730,
-1544578, 1998234, -9233643, 244276, 10050223, -1643899, 1266479, 1425929, 1326608, 12150999,
-4655745, 16293495, 3761855, -2127083, 15372225, -13016435, -1670205, -1909113, -5217312, -1023276,
-3262565, 15380278, 1511292, -3037616, -5850283, 3332895, -6153078, -2461553, -3938485, -8122320,
--1275605, 2427194, 13060996, -876710, -12495670, -3271155, -7474854, -3572876, 9142912, 7534983,
-8570070, -6555194, 1472637, -7314866, -1068373, -2335925, -4468914, -2320356, -6153615, -3403225,
--1093069, -2435247, -8096550, -3002719, -2266669, -1433445, -1769527, -2635499, 445603, -1144609,
--6347962, -95563, -3009162, -1618666, -448824, 161598, 1229971, 27917, 2985539, 3073049,
-591095, 747861, -1963337, -1564442, -378494, -1937030, 3062312, 2004139, 2884071, 2875481,
-1239635, 3932580, 2553358, 1176821, 1828046, -248571, -1392643, 2864206, 3848828, -9395778,
--14583025, -5211943, -14358613, 10322954, -12256763, -8952859, -7234336, 6539625, 16345572, -16584479,
--5939403, -18695456, 5328444, 2654827, 1719061, -5342403, 1423782, 21133386, -11076184, -1813013,
-7948374, 5495948, 4138738, 7460895, 4902169, -6898255, -11764452, -2150168, -6534256, -8809515,
--10865194, 213675, -2566780, 2705830, 13897977, 8865886, -7870528, -4189741, -918049, -4003983,
-3370476, 26549340, -9041443, 18532248, 5749351, 3148211, -1255741, -2957622, 3083787, -10114111,
-4815195, 14433238, 564251, 2338610, 11474542, 7515119, 4412542, -9673340, 8078297, -5752572,
--8699456, -23373748, -7414188, 15250355, -8695161, 3981972, -16524350, 11831561, -6249715, -6454799,
-10257456, -16390669, -12190728, 18650896, -13309030, -12453795, 7425999, -8531416, 1692217, 67646,
-5289789, -13438416, 4203163, 390842, 13405130, -9965935, 3304441, -1382980, -7634305, 10000294,
-1989644, -8256538, -6041409, -5677410, 851477, 14496, -4199941, 147103, 5176510, -400506,
-3663070, 4179540, 3269544, -7432978, 4132832, 3837553, 5978058, -118112, 427349, -5397700,
--2183454, -2640868, -2828773, 1286343, -637803, 3505767, -4949950, -3085397, 1853815, -4749697,
--4037269, 1730335, -10584947, -7891466, -1073742, 12032351, -5703180, 21150566, 19701014, 3858491,
-6306086, -11460583, 1410897, -9285719, 14783277, -2986076, 4347581, -7093139, -4585415, 2487323,
-1979443, -6817187, 11318313, -3242164, 2382633, 4191888, -7452842, 2771328, -9505299, -1611,
-5359583, 6412923, 117038, 8490077, 10736881, -856309, -20221242, -3448859, -6015639, 14391899,
--12239046, -15204721, -10855530, -7290707, 2050847, -8644159, -6796786, -4381941, -1298154, 2595771,
--29641180, 18615462, 14501957, 21230560, -6832756, 3351685, 14206141, -13712220, -12707734, 2430952,
-9255118, 6053757, -1676648, 2800856, -7547332, -8982924, -11445551, -3420405, 39268884, 3080565,
--21886616, -3987877, -12029667, 7415798, 5798206, -13611825, 2812667, -4245039, 1030255, -6770479,
-8329552, 8480413, -1369558, -4460324, -5254893, -17241610, 5070746, 2653216, -785442, 6964290,
--3515968, 1015223, 2648921, -8248485, 3015067, 4734128, 11126113, 5842766, 597537, -9790378,
--34897, 8676371, 409633, -142808, 6484864, -9127, 2141578, 6347962, 5394479, -1161789,
-2900177, 5340255, 4966056, -2592550, 2105071, 6434398, 7976828, 5807333, -304943, -4435091,
--1100049, 537, 4939213, -206695, -1591822, 143345, 1720671, -3383897, 1728188, 2939368,
--3244848, 1798518, -5686537, -11259794, -21733072, 1755568, -18155900, 8551280, 2927557, -14614163,
-8242579, 9483288, 13219909, 3823058, 5224291, -15167140, -310311, -3025268, 14119168, 6571837,
-616328, 13206488, 14709189, -1773822, -7057168, 1680406, 18139794, -11819213, -9372156, 9350144,
-5097053, -12023224, -2682744, -11125576, 20745228, -17720498, 4901095, 11036992, -6703907, 10143639,
-3630858, -5069135, -5412196, -5455682, -8485245, 11613055, 15625628, 3116536, -12050068, 1236414,
--13306882, -5068062, 8588324, -1655173, -6639483, -4855998, 2159832, -17663590, 471910, -1868311,
--10242423, 13763223, -13642964, -935766, -3205119, -10062035, 10558103, -863288, 6069326, -5128728,
--1139777, -625455, -6528887, 4931696, -6025839, -1122060, -5936719, 15915538, 6743636, -18949932,
--4268124, -31210454, 17885318, -73551, -14181982, 12584254, 1234803, 1846836, 4480188, 204011,
-7091528, 8813810, 1853278, -2310156, 4721780, 9480067, -5577015, -3365107, 3702799, 1358283,
-2184528, 2782065, 4658966, 6457484, -4387846, 3365644, 1881196, -5126044, -4848481, 4099010,
-686658, -537408, -3593814, -3112778, -5760625, 5526549, 5531918, 958315, -3911105, -11769821,
-71941, 1058710, 3649649, -7559680, 647466, 5975374, -3461207, 6914361, 2936684, -456877,
-1729261, 3760781, 137976, 1367410, 1891396, 4622459, 19021336, 716723, -14482630, -6225555,
-8553964, 13855028, 14849313, 533650, -3494493, 20877836, 9081171, 23204634, 2818572, 1967632,
--11189464, -4602058, -6641093, 6190122, 3344169, 12549894, -14399952, 971736, -8579197, 7697655,
--12486007, 4735202, 13787382, -2080912, -440771, -7218230, 1931662, -7265474, -24820616, 3401077,
--3839701, 1719061, -11104638, -2440615, 9651328, 18714784, -1973001, -6805913, 10865730, 5115306,
-2626373, 12880070, 4458713, -6889665, -3318936, 8312373, -1173063, 7586523, -9090298, -8088497,
-2779918, -7601555, -14565308, -6731288, -16585016, -3707094, 5565741, -13023415, -1883343, -14956687,
--6550362, -114890, 5870684, -17822504, 7785702, 1315871, -10605885, 13269838, -4737349, 3510599,
-23527294, 26637388, 1709934, 9364639, 19481972, 23296440, 23125178, -2283849, -15418396, -23638964,
--8591545, -15673409, 14799384, -3190087, -6978785, 3784403, -379568, 1612223, -276489, -7008313,
-7522099, 2120640, 2825015, 542240, 10170483, -5690832, -99321, -3125663, 7061463, -6548215,
--2773475, -697932, 10049687, -2619393, 6078990, 8274255, -7577396, -1629940, -3187940, -8603893,
--3451006, -1974611, 3741990, 294205, 11780022, 3187403, 7985955, -756451, -7530689, 2114735,
-234613, 31835908, 36827196, 1775432, 11893301, 11099806, -1406602, -26541288, -559956, -1209033,
--9872519, 7294465, 7040525, -14515379, 7963943, 9909026, 1797444, -3973382, 5599027, -3817152,
-18817326, -3355980, -8617852, -26844, 4370666, -1907502, -1110249, -482647, -29667486, 8454106,
--560493, -20723218, -8417599, 3415573, -1821066, -14166950, 4984310, -16693464, -1385127, 1486059,
--26452704, -4892505, 11509439, -8666170, 1348083, 16618302, 10379325, 12681428, 4099546, -7354595,
--12298102, 12621835, -6475737, 7013145, -11679090, -6289443, 8575976, 14194867, 2210298, 17030620,
--11392401, 14717242, -12452721, -15259482, -10695542, 14669461, 15602006, -14433774, 7521562, -39634496,
--3492882, 11489574, 3790846, -6323266, -15627775, 7129646, -22135724, 3469797, -11353209, 10432476,
--17064978, -11087458, 17361868, 270046, 8792335, 1841467, 7682623, -3994857, 3253438, -2069101,
--12745852, -2447058, -5869610, 3894462, -4013110, 2175401, 657667, 2029372, 1182190, -2951180,
--3765613, 432718, -8002598, 2797098, 2471754, 4571456, -5066451, 4539781, 4490389, 2742874,
-3888019, 2630668, -5444408, 484258, 2897492, -4253628, 7671886, -785979, -2729452, -4396973,
-139586, 560493, 3751654, -2838437, 3570729, -2745558, 8074002, 3358128, -6456410, -1838246,
--1460289, -3241090, -2604361, -28981902, 2132988, 35885524, -24260660, -2269890, -2106682, 1917166,
--9600863, 4592394, -15306190, -15658914, -5173825, -4269735, 3784403, -3932043, 8159901, -11735998,
-383863, 23087596, -18918794, -16681653, -4053912, 20204600, 2815351, -25275346, 10757819, -9372156,
--10824391, 2523830, 34748432, -19543174, -10910828, 24753508, 18315888, 1604707, -10244034, 689879,
--3817152, -7847442, 7067906, 6473590, -4226248, -20040318, 25672630, 12074764, 4846871, -27285390,
--4194036, 8490613, 9430138, -3384971, 14338748, -2306934, 4866198, -6248641, -16457241, 10724533,
--11747272, 7047505, 3635153, -14399415, 27199492, 4195110, 19583978, 19659676, 3491809, -29554744,
--5684926, 288300, -11753178, -5947993, 1108638, -936303, 12831752, 24142548, -6982543, -2355253,
--10657424, -4752382, 10023380, -6764037, 5823439, 17950816, -15693810, 17842368, -3507378, 5365488,
--6784975, -3634079, -5695664, 774705, 3330210, 3940096, -2985002, 99858, 4071629, 2321430,
-9430674, 4427038, -4759361, 405874, 860604, 8603893, -4766340, 2504503, 3974992, 1342714,
--335007, 304943, -11218991, 5514738, -4129074, 5399311, 7040525, 946503, -1136556, 3581466,
--367220, 2741800, 933082, -1167694, -4142496, -4214437, 8367133, 1431298, -1955821, 2349347,
--5204964, -979253, 8530879, 11190537, 1545115, -10300405, -51554640, 3386582, -13435195, 1777580,
-25844966, 2466385, -4955856, 4704600, 1023813, -17515414, -18874770, -17029546, -16316581, 21271362,
--4229469, 25389162, 2286533, -23987392, -809601, 2645163, 20584168, 4045859, -3285650, -4085588,
-5906117, -12917114, -4911832, 22726282, -4596152, -29515016, -22505092, 13471165, -2891050, -6135361,
-6824703, -2118493, -15163919, 4584341, 8973797, 20463372, -4079682, -16988206, 277562, -21425982,
-8289824, 24255290, -3835943, -29769492, 9419937, -340913, 1723893, 7175817, -9327058, 18321794,
-1425929, -12359842, 9663676, -6691559, -4084514, 26181046, -13357885, -4502200, -4348655, 16496433,
-6682969, -28956132, 14746770, -23333484, -5513128, -12588012, 3065533, -7675644, -7020124, -2405719,
-13356275, -4318053, -8138963, 15744813, -9119826, 16163573, -26844, -8528194, -5077725, 4028679,
-4507568, 3212099, -9651328, -3202435, 2448668, -530965, -6291054, 156229, 6056978, 9240085,
-3908420, 4763119, 818728, 9086540, -5066988, 2966749, 7237557, -2699924, 968515, 2950106,
--1723893, 1459752, 2910377, -8853001, 7575786, 3232500, -8866960, -7290707, 591632, -10475425,
-988916, -7706245, 10108742, -18097918, 34897, -3788698, 1985886, -4667019, 5738613, -2962991,
-2713883, 2098629, -25188372, 5157182, 41580116, 27087822, 12387223, -20632486, 15458124, 19551228,
-28922846, 13972602, 3415573, 1029182, 18118856, 31284004, -7062537, -3808562, 17712446, -35019016,
-12742631, 31251256, -6481643, -10817949, 8108899, 24267638, 19538344, -13056701, -22383222, -1307281,
-11257109, -3782793, 2711198, 372052, 26249766, -14976551, 16816408, 25409564, -10163503, -3053722,
-17927730, -2667175, 62862216, -26339424, 11319923, 43051140, -24775518, 8147016, 2881923, -34854196,
--1079647, 6544994, -15380278, 34155728, 2585570, -4648229, 2658585, -14150843, 46786152, 12947716,
--37491308, 36229660, -15117211, 1394791, 11108396, 13494250, 24017994, 11767137, -6479495, -23376970,
--31523986, -11770895, -12631499, -2097018, -9667971, 19896972, -12048457, -20826834, 2350421, 5852967,
-4268661, 7694434, -11818139, -11446625, -6984691, -7539815, -24842090, -10415296, -8446590, -17077326,
--8235600, 6241661, -7283191, -16002511, -750546, 6360847, 10835666, -2442763, 5110474, 11885248,
--653372, -7885023, -471373, -4735739, 6582038, 9511205, -13146895, 11711302, -6797860, 270583,
-1768453, -5983963, 12205223, 4834523, -17074106, 10669773, 1628866, -5933498, 12664785, -14224932,
-5799817, -2534568, 6208912, -3267396, -3962644, 2566243, -2315524, -1284195, 4482335, -2418604,
--9765145, 4739497, -873489, 3188476, -390842, 8412230, 10298258, -48389248, 28187870, 1261110,
-17042968, 28054190, -46380816, 10584410, 23885386, 5386963, 17825188, -17889076, 19622094, 5695664,
--18176302, 244276, -11451993, -33996276, 18654654, 10555419, 31073552, -17213156, -22744536, -7987029,
-7298760, -4764730, -38502236, -19044422, 11853573, -2913062, 5776194, -16298327, -5024575, 12771085,
--10843719, -5466957, -16427713, -3898220, 6006512, -18269180, 1939178, -39844412, -32726040, 10066330,
--34041912, 2907693, -35615480, -25041270, -17169668, 16702591, 33290292, 40888088, -9666898, 18131204,
-22231824, 10678899, 9657771, -15968688, 45629196, 46405512, -31554050, 31601832, -24815784, 15860240,
-32753420, 30988726, 37948720, 45122928, 32112396, -36063768, -25489020, -355409, 960999, 13517336,
--8501351, -7004555, -21487722, -12038256, -31907312, 6937983, 26929444, -10935524, 6662031, 27944130,
-13294534, -19289772, 21626770, -1416802, 7706245, -2197950, -3712462, 6127308, -6680822, 9443559,
-8151311, -7242389, -8548596, 8136816, -5790153, 197569, 367757, -771484, 2463164, 720481,
--11411728, 10636487, -4774393, 5035313, 6286759, -4377109, 6764037, -8330089, -5909875, 5357972,
--6478422, -8601746, -3627637, 3279208, -3199751, 1999844, -7555921, 164283, 2966212, 6969658,
-10746008, -2629057, 6117107, -7133941, 148176, -1418950, 3359738, 2330557, -486405, -5550172,
-59872916, -43826384, -22296248, 23605678, -14051522, 22549116, -17580374, -19614578, 6621766, -46351824,
--2098092, 31156766, -7524246, 16010564, -26585848, -6540699, -10499048, 1049583, 33238216, 10045929,
-7384123, -5940477, 18242874, 5862631, 45413372, 11164767, 26511222, 1879585, -20739324, -19616190,
-26422638, -12861280, 12215424, -265751, -34114924, 24581172, -30397094, 59008020, -44004088, 26845156,
-24035174, -25272662, -21241834, -15696495, 21785148, -1678795, 22798224, -302795, 2962454, -40373228,
--21701932, 9373229, -19852412, 6549825, -12113418, 11834782, 6714645, 30974768, -18438832, -6366216,
--7875897, -15217606, 42003168, 7755101, 3933653, -39165808, -12701292, 21024938, 12400644, 13380434,
-36375152, 23267448, 32162326, 37119256, -1112397, 16420197, -15480673, 49381388, 3688840, -8191577,
-17975512, -4257387, 37888592, 651224, -7670275, -7871065, 4508105, 26625040, -20262582, 13734232,
--6476274, -2233383, 7872138, 5255966, 10337986, -6568079, 6713571, 12396886, -3315178, -4792110,
-8381092, -1432909, -1372779, -1013075, 2212982, 1310502, 4000225, -9122511, 11803107, -7066832,
--3934727, -1996623, 7187091, -10326712, 964220, -7418483, 9844065, 17871896, -6090801, -5068599,
--2471754, 12234751, 5980205, 12779675, -1127966, -7602092, 5797669, 6072547, -1946157, 6009733,
-4682588, -17632988, 2605972, 19901804, -2794950, -90372552, 62827856, -38934952, -27227946, 699006,
-12917114, 16255377, 2952790, -14426258, 48926656, 24847996, 6867116, -24415816, 16079821, -767189,
-18277234, -23302882, -16105590, 12582644, 36602784, -41836740, 1767916, 13668197, 4512400, -10227928,
--6140730, -5187784, 1744831, -2033130, 9529459, 46183248, 3036005, -20723754, 31061740, -7129109,
--29888678, -38544648, 36886252, 12153147, -5039071, 13828184, 8587250, 30749282, -41489920, -4281009,
--21061982, -5879810, 23841900, -17388176, 9341017, -20066624, 9831717, 63661616, 4889284, -36219996,
--40731324, -2376728, 19520626, 19225884, -16280610, 4101694, 30993558, -12826920, -59771988, 34280820,
--20561082, -33881924, 15017353, 56917980, -39143260, 28763396, 39644160, 13812615, -34206192, -28436442,
--17549236, 14451491, 12444131, -11654931, 35587564, 17534204, -2160369, -812286, 2202781, -29438780,
--11257109, -20764020, 10873783, 9816685, 7120519, 9924596, 7341710, 22114250, -10866804, -5063230,
-4250407, 368830, -16818018, 14876156, -587337, 9452686, -4166655, 7215545, -10816875, -2981244,
--6506876, 10641855, 1994476, 2501282, 331249, 6592238, 16075526, -5916855, -30582314, 2959769,
--15087683, -2482491, 9171903, -12463458, -8405788, 17911624, -16258062, -3084324, 141197, 8915815,
--17415018, 1831267, 52217140, 16742319, 3774740, -4136591, 8558259, 14265734, -4318053, 6478422,
--7524783, -405874, -5877663, 24035174, -27014270, -3403225, 16677895, -38312720, 12621298, -9599789,
-3190624, -4776541, -10304163, 6460705, -2610266, -15797963, 41941428, -32089848, -8613557, 29220810,
--18617610, -3223373, -5653251, 6176700, 29553134, 1951526, -28200756, 38769596, -20803210, 13608604,
-24676198, 10533944, -8785356, 1839857, -21163452, 4932233, -12695923, -10545755, 52665964, -12481712,
--20564304, 6506339, -9440875, 12120398, -7831873, 13339632, 33995204, -18838800, 11457362, 25425132,
--29952028, 13549548, 16768626, 7220914, 20911122, -23798950, -5885716, 35683664, -24538222, -5787469,
-10581726, -10384694, 34644816, -34427384, 6103686, 11985106, -15458661, 11649562, 13430363, -32801738,
-11870216, 27377196, 5906, -8646306, -1000727, 17497160, -3374234, -30822832, 25107306, 11441256,
--13094282, 4761508, -7076496, 10678899, -3979824, -13975287, 16386911, 571768, -3183108, -12192338,
-11485279, 1798518, -15500000, 5331128, 10922102, -2513630, -4854924, 1993402, 10124312, -1772748,
--9852655, 10084583, 7139847, 950262, -184684, 8380555, 2008434, 2733210, -11763915, 15057082,
--8130373, 16080894, -29304024, -78957072, -124177704, 11333882, 118946968, 9832254, 269277792, 278022368,
-138430016, 291076928, 194143264, -40121436, -4071092, -63851668, -233445968, -204847936, -126589328, -238421152,
--186597536, -54069880, -116843512, -97733592, 34941168, 58971512, -28166396, 15653545, 52679384, -40058088,
--23347442, 74197168, 65900904, 7896834, 73643120, 125495184, 42152956, 90908352, 171538304, 82629800,
-43786116, 153811904, 128603672, 17562658, 92493728, 180210928, 36024576, 42825120, 145635360, 63077500,
--15236396, 103179608, 97373352, -8501888, 86041080, 110995376, -1336809, -80329312, -37193344, -189463888,
--313381760, -278604320, -297155904, -454059648, -407854400, -381576160, -464255904, -451000032, -369962048, -333497760,
--300032992, -173482848, -66462472, 59311888, 125695976, 240323280, 358060160, 390899456, 435348608, 567958976,
-560492160, 441139328, 482507904, 426700704, 176867824, 192731824, 163821856, -6374805, -26262114, 47860968,
--6117107, -72679440, 9965935, 49776524, -47006808, -18303540, 44027708, -22453552, -92481384, -30144228,
--24634858, -134018552, -94858112, -25123412, -105031816, -118967912, -7724499, -41801844, -120361088, -57508000,
--54153096, -169387072, -160614064, -145444240, -262729584, -284023488, -236774560, -252527440, -272568832, -195046816,
--166292000, -144168096, -104231880, -55759948, -24739012, -6111739, 22801444, 94352376, 128515624, 197865392,
-322125216, 364261536, 402918944, 470593120, 459937312, 405423968, 345721792, 243185344, 106091064, 28623810,
--21842056, -74117712, -87450368, -85623392, -86521040, -88280904, -81964080, -73420320, -79135312, -80620832,
--75550088, -80783504, -88265872, -82670608, -77054400, -70557184, -50822348, -23611582, -5479842, 1469416,
-2094870, 474057, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
-1627256,
-6451578, -3213709, 1780801, -667331, 367220, 302258, -2611877, -2961380, 1931125, -542240,
--2381559, -3036542, -1876364, 2673617, -286152, 3588982, 747324, -4556424, -4711579, -3341485,
-1365263, 1162326, 2431488, -365609, 2783676, -2135136, -402653, -4927401, -765578, -919660,
-1008780, 1852742, 1851668, 3637837, -1819992, -2436857, 1960116, 1110249, -2383707, -2423435,
-104690, 1692217, 802085, 4039417, -1546725, -1280974, 4569309, 1399623, 8574365, 3648575,
--2420214, -82678, -5295695, 98784, -6034966, -397284, -2265059, 4161823, 427349, 2233920,
-3036542, 1649804, 2910914, 1944547, 402653, -5053566, -574452, -2532957, 3471407, 5085778,
--3579855, -2539400, -1546725, -2058900, -2705293, -4332549, -996969, 1299228, -2566780, -2111513,
--912681, -3561602, 400506, -716186, -2417530, 768262, 115427, -13959, -1196685, 212601,
-210990, 1324461, -380641, 854699, -452582, 618475, -184684, -799938, 205622, 1040993,
-163209, -933082, -973347, -98247, 1760937, 411780, -356482, 286152, -534187, -10131828,
--10831371, -860604, -3106335, 417149, -2350421, -638340, 6026913, -1077500, 3240016, -1489280,
--2896956, -4003983, 735513, -827855, -4782446, 5513128, 1656247, 379031, 2938831, 2804077,
-4545686, 3202435, -301721, -3382287, 3157875, 736050, -4559645, -2014340, -2056216, -1365800,
-4075924, -1395864, -6953552, -2354716, -795106, 1452236, -2161442, -4524211, 147640, -441308,
-5255966, 779000, -42413, 1920387, -120796, 7092065, -1223529, 652835, -1567663, -2813741,
-2684, 3045669, 1377074, 831076, 2878165, -2640331, -4400194, -3147137, -633508, 579284,
--1026497, 126165, -3302830, -731218, 1730872, -1053341, 3445101, 1797981, -194347, 639413,
--3230352, -2750927, 5346161, 1214939, 2277407, 1551020, -950262, -314069, -4060355, 286689,
--2319819, 996969, -790811, 1034013, 1102196, 3143916, -326418, -1098975, 185757, 673773,
-421444, 112743, 111669, -947040, -744640, 381715, -341450, -816044, 1278290, -646393,
-657130, 972273, -919660, -274341, 736050, -277562, 1319092, -792958, 655519, -631897,
--458488, -1647657, 1516660, 7004555, -387621, 3594351, 2110977, 4793184, 5873368, -1335198,
-477815, 3622268, 3569655, 2395518, 6719477, 1369021, -2206540, 297963, 5877126, 2076617,
-2770254, 5108864, 6852621, 4533875, -1569274, -4698158, 3296924, 2260764, -2734821, -4538170,
-230318, -2648921, 1192390, 1742683, -1677722, -2263985, 2262374, 1807108, 4031364, -2710661,
--5551245, -2771865, -2418604, -3684545, -1306744, -4209068, 2491081, -5762236, 2443300, 490700,
-1298154, -2563022, 5466957, 4195646, -3928821, 4833986, 1778117, -716723, 1551557, -3506304,
--1162862, 3304441, 1131187, 1383516, 820876, 3946538, 1553704, 4879620, -2444373, -296890,
--366146, 1892470, 2777233, -1129576, 1830193, -2565706, 1244467, 1712081, 1489817, 5353677,
-144955, 3994320, 4425427, 2511482, -4135517, -787053, -692027, -1071058, 307627, 2266132,
--998580, 67109, -226560, 256087, 766115, -670015, 909996, 1560684, -1153736, -588411,
-1428614, 48318, -45634, -79994, -908386, 367757, -472983, 118112, 1090922, 1879048,
-19864, -260382, 888521, 723702, 236223, 432181, 300648, 456877, -133681, -266288,
-773631, 1016834, -1009854, 532039, -405338, 19370302, 161598, 17151416, 1381369, 10863046,
--2330557, -1870458, 2977486, -8108899, 8868571, -5040681, 5951751, 4385162, -3237869, 2588255,
--229781, 328565, -1489817, 2465311, 3513283, 4343286, 7173133, 1744831, 2298344, -281857,
-8435853, -9675488, 250719, -744103, 2337536, 4100083, -5071283, 1941862, 2315524, 1175747,
-3387656, 1816234, -3907347, 1862942, 7557532, -1422171, 2327872, -1282585, -1149978, -372588,
--5389110, 8331700, -105227, 797253, 6265821, -893890, 507880, 7722888, -11331197, 3096672,
--185220, 3375844, 9220758, 2719251, 2251637, 3160022, -965831, -2597918, -1707786, 2217277,
-871878, 4904316, -1751273, 4023848, 1927367, -1418950, 869731, -3281355, -2067490, 392453,
--912681, -4517769, -2806224, -4621922, 2753074, 4002910, -1047972, 1202054, -905701, -3090766,
--82678, 1627256, 1735704, -5509906, -176094, 457951, -787590, 256087, -1071058, 58519,
--1153736, -2682207, 5369, -1793686, -1343788, -2226404, 154619, -2178622, -598074, -2114735,
--1506997, -119185, -682363, -1150514, -52076, 224949, 1065689, -1157494, -7730405, -9527311,
--3762928, -1442035, -3550327, 7602092, 3266860, -6092411, 6789807, -963683, -4930086, 1461363,
-2964064, -2767570, -4504884, -4084514, -8576513, -4351339, 3720516, -5461051, -8709120, 2442226,
-3541201, 683974, -3196530, 6517076, 819802, 6024229, -366683, -1410897, 3463891, 5705327,
--8130910, -3900904, 2231773, -1848447, 2007897, -5349382, -375273, 1410897, 1941862, -4570919,
--8257612, -2355790, 2426657, -1428077, -1029182, 473520, 2687039, -848256, 1497870, -2818036,
-4810900, -6328098, -4694400, -1679332, -4598300, -1416266, -1232119, 1803886, -3369402, 2522220,
-5223217, -486942, 1238561, 1367410, 2514703, 5049808, -1918240, -1014686, -948114, -2149631,
-5311801, -2193655, -9204652, -5929203, -3878892, 8818642, 172336, 5040681, 2350958, 726386,
-1392643, -657130, -178241, 4220879, -1396938, -1017907, 1402307, -794032, 708133, -1957968,
--1136556, 929324, -235686, 1026497, -252329, 584652, 1623498, 1097364, 1519345, -41876,
-1065689, -284005, 1556926, 1628330, 2757369, 1656247, 2194192, 459562, 1473174, 1189706,
-923418, 1239635, 1823214, -870268, 166430, -408559, -739271, 686121, 1088774, -2210835,
--8369818, -19458886, -1811403, 1348083, 212601, -6308770, -2788508, -7159711, -1839857, -8444443,
--9666898, -7558606, -1745904, -5006858, -10894185, -6820945, 2265595, 3374234, -3002719, 6560026,
-3638911, -2425583, 8099235, 1733556, 679679, 1301912, -11060078, -405338, 1855426, 4170950,
--3468186, -3081639, 6609418, 12836584, -9589051, 3456912, -2811593, -493921, -8449274, -743566,
--82678, -4313758, -5461588, -3974455, -4643934, -2477659, 2784213, 9426379, -4387846, 3537443,
-6382859, 5767604, -1931125, 656056, -2048163, -1825898, -8672613, -4296578, 4939213, -3128347,
-1083942, -2986076, 2498060, 1323387, -942745, -323196, -4037806, -3337190, 778463, -1200980,
-1801202, -10274099, -10858214, -1162862, -1573032, -4664335, -6979, 3458523, -5328444, -4105989,
--4540318, -7903277, 5614059, -563714, -1166084, 2159295, -289373, 1939178, 3712462, 1293322,
-2072859, 1185948, 2734284, -798327, 510027, 454193, 642635, 913217, -682363, -657130,
-177167, 854699, 1075352, -650688, 886911, -954020, -1832877, 1032940, 760746, -713501,
-2458332, 1124745, 191663, 963146, -1443646, -1566053, -387621, -817118, -633508, -12083890,
--2380486, -14550812, -3263638, -10307922, -1232119, 1946157, 2623688, 11195369, -6984154, 2507724,
-3020436, -6067178, -2742337, 9009768, 954020, -2624225, 1130113, -7409356, 6727530, -9495636,
--3139621, 4243965, 2635499, -981937, 1621887, -1869385, 3111704, -4047470, -7138773, 494458,
-3452617, 2834679, -5709086, 1590749, 6414534, -6589017, -8363375, 6673843, -5703717, 4360466,
--4105452, 2436857, -170188, -5925445, -7723425, -4746476, 2102387, -299574, 2883534, -4024921,
--3936338, -9848360, 5137855, -7056632, -3232500, 3847217, 8746701, -1125818, -1817845, -12894566,
--10168872, -3379603, -3626026, 4861903, -1377074, -7550016, -1213865, 408559, -4207458, -1024350,
--9032316, 6026376, 2335925, 7597261, 9264244, 4893579, 376883, 4045859, 8263517, -678605,
--1909650, -556198, -2531883, -8208220, 454193, 616865, 1766305, 4413079, -1794760, 983011,
--8590, -3222836, -1755031, 3015604, 2886755, 2745558, -2110440, 835371, 1133871, 1054415,
-1007170, 1214402, 391916, 2298344, 2267206, 1557463, -466004, 1065689, -394600, 915902,
-1634772, 593779, 656056, 51540, -571768, -500901, -38118, -1415192, -667867, 7177427,
-3761855, 20844014, 10084046, 13503914, -4178466, -513785, -225486, -20558398, 1077500, 8884140,
--4076461, -1584843, 703838, 12976170, -2200097, 7522635, -1541893, 7204808, 3948149, 8895414,
-12484396, 1617592, 8333847, -2571612, 7211787, -966905, 13360033, 7121593, -230318, 7614977,
-6134824, -2241973, 5855651, 3537443, 5055177, -3992709, -3216931, -10794327, -668941, 7665980,
-1465658, 981937, -2522757, -4034048, -3234110, -3556233, 18799608, -12091944, 4785668, 5719823,
-3230352, 1630477, -7232188, -9599252, -2469069, -1427540, -458488, -16636019, -8267812, -8551280,
-393526, -391916, 4930623, -545461, 4377646, 5897527, 10638097, 1956358, -2763812, 3583077,
--6728603, 1832340, -4941897, 1789391, 4100620, 2327336, 6764574, -4590247, -5236102, 24410984,
-3317862, 4423280, 3062312, 8278550, -5895380, -3044595, 5186173, -618475, -175557, 946503,
-1682554, 4771172, -2412698, -381715, 864899, 2738042, 589484, -2543695, 4594542, 151934,
--1138703, 84289, -583042, -2505577, -2373506, -1113470, -2636036, -32212, -1065689, 1101122,
-3267933, -336618, -382252, -3686693, -828929, 1776506, -464930, 186294, 274341, 2845416,
--1557463, -466541, 859530, 1049583, -3259880, 31934156, 3443490, 4751308, 3615826, -2004139,
--12931073, 8730058, 9251896, -5184563, 4067871, 4141959, -7735773, -1098975, 7636452, 4356708,
--13642427, 3469797, -3661997, -7016366, -73551, 4008815, 1182190, -140123, -156229, 5902359,
--1741609, 3326452, -10578504, 4279935, -981937, 4203163, 2537789, -1949915, 7742216, -10390600,
--4345970, -10260677, 9063992, 4230006, 14705431, 7208029, 96100, 3133716, -11668352, -97711,
-3599720, 3771518, 3750580, 792421, 2238752, -3122978, 3526705, 10470057, 14256070, 6104223,
--6247567, -3531537, -1277753, -2779381, 5421860, 7129109, -4759898, 4220342, 8058970, 2423972,
--10671920, -21437792, -10392747, 4311074, 9585830, -4035659, 3023657, -804770, -1757715, -68719,
-10009958, 1802813, -7853348, 13258027, 6230387, -15355582, 955093, -1839320, -4693326, -1713692,
--2078764, -1074, 5589363, 2250563, -3873524, -2189360, 3428458, 5739687, -2263985, 4371203,
-1416802, -3554086, -625455, 588947, 448287, -648003, 620623, -1748589, -974421, 1298154,
-687195, -1546188, -1359894, 133681, -748935, -2580739, 1976759, -874563, -1009317, 783295,
-3093450, -2885681, -4261145, 12885, -293132, -6749541, -783295, 1750199, 397821, -4048007,
--77846, -1455457, 1737314, 1032940, 2574296, 1761474, -19536196, 5826660, 9364102, -10545755,
-6846178, 11384885, -27827630, 5965710, 1265942, 6063420, -10331007, 15700253, -21937620, -254477,
--1496796, -1864553, -2176475, -6471442, -8239895, -1428614, 7974681, 745177, 304943, -4264366,
-5641440, -932008, -2629057, 4123169, 9829033, -6522445, 7116761, -1342714, 4360466, 2072322,
-6694244, 10049150, -2235531, 2595771, -12996034, -6627672, -2597918, -5027259, -11822971, 1219234,
--4232154, -7829189, 11576547, -10806138, -3460670, -5130876, -5683853, 7764227, -8764418, 4913980,
--2979097, 7980049, -4110821, 8745627, -11493869, -3371549, 1646046, 10604811, -18638010, -7151658,
-855235, -75162, -3177739, 7407208, -9579388, -19187230, 4320737, -16859894, 8686034, -6084358,
-237834, -17625472, -6673843, 18800682, 10881300, -14329622, -11703786, -10184978, 786516, 5616207,
--2282238, -6486475, 12492986, 4264903, -1960116, -2808909, -4413079, -1097364, 5029407, -4651450,
-5393405, -758599, -3379066, 502511, -2530810, 1741609, 4595078, -2772938, 2159295, 3040837,
-2494839, -558346, 5311801, -5015985, 5029944, -1541893, 4454418, -5811091, -2684892, 645856,
-605590, 5632313, 2201708, 3303904, -1727114, -3547106, 2173790, -6643778, -379031, -14475114,
--6213744, 18236432, 767189, -15037754, 14155138, -6626061, 937377, -15680926, 2406792, 6220187,
--13841069, -3376918, -12371116, -85362, 779537, -4165582, -3441343, 12073690, 1848447, -8175470,
-2041183, -17518634, 10519449, 16696148, -5409512, 6973417, 11832098, -883153, -2429878, 1458141,
-1427003, 6938520, 1172526, 1604707, 3630858, -9793599, -717260, -11258720, -11516418, -4719096,
-4824322, 6831683, -372588, -13546327, 2658048, 3551938, 6653978, 14482630, -14861124, 21734146,
--18035104, 794032, -3642669, -3125663, -8727374, -16727287, -22575422, -8754754, -2594160, 5744519,
--1722819, 932545, 3309809, -169114, 15881178, 7513509, -16314970, -2549600, -343597, 10398653,
--11279658, 745714, -22721988, 4247723, 17732846, -15868294, -6238440, 2238752, -184147, 4429722,
-24852828, 363462, -3292629, 1284732, 12647068, -8606041, 3377992, 4617090, -1891396, -930934,
--179852, -346282, 5622112, -1856500, -1307818, -4892505, 8192113, -1793149, 2401424, 810138,
-1430224, 2033130, 5952288, -4171487, -1082869, 6305549, -4604742, -6487548, 5319317, 238371,
-2587718, 3576634, 2011118, 6519761, -5106179, 3021510, 3597572, -2289218, 9235790, 3150896,
-5641977, 2048163, -5595269, -2064269, -966905, -999654, -1010391, -9310415, -18886044, 22574348,
-9644886, -11063299, 14656039, 14664092, 20829518, -7683697, -7190849, 15202037, -2234994, -3010235,
-5301601, 6758131, 2700998, 3231426, -20717312, -2202781, 66572, 170725, 1149441, -2346126,
-8792335, 17037598, 1731946, 1161252, -283468, 810675, 15703474, 4165045, -1098975, -3433290,
-4026532, 3466576, -2455111, 1795296, -8949638, -1876901, 13656922, -13553843, -6577206, -11690364,
-15258408, -13985487, 7012071, -5732708, 4493073, -3048353, 3624416, -11241003, 2576981, 16938814,
--11151346, 874026, -29584808, -1329829, -10451803, 785979, -27614492, -1238024, -1360968, -8535711,
--5935645, 22523882, -24197308, 4016331, -6545530, -9048422, 6501507, -8209293, -18906446, -13280576,
-1824824, 972273, 3890704, -9390946, -12737262, 7218767, 597537, 1386738, 8460012, -14141717,
-10557566, -10297184, -4838281, -4446902, 2492155, 329639, 2994129, -1861868, -3628711, 840740,
--2078227, 2930778, 6552510, 3792456, 2388539, 1814624, 1744294, 1695975, -751619, 7110319,
-1310502, -1429150, 5294084, 5431523, 1999844, -3110630, -365072, -4511327, 7075422, 2465311,
-5674189, -2881386, 5821828, 5176510, 7638600, 3714073, -2258616, -4110284, 6401112, 1232656,
-5521718, 1184337, 1419487, 1384590, 1574106, 18934900, 6665789, -2500745, 4099010, -9484898,
--9987410, -8194261, 18454400, -16483011, -20480552, 9823127, -19053548, 7082401, 762357, 5208722,
--8501351, -2048163, -10352482, -4393752, -7983271, 3871913, 9516037, 6554120, -15372225, 17921824,
-2207076, 6269042, 1672353, 8636105, -1816771, 8296266, 2071785, -3688840, 5328981, 1938641,
-7050189, 4834523, -11651709, 4705674, -3386582, 3307125, -2340220, -4349192, -3575024, -8198019,
-7691750, 8198019, 8606041, -1593970, 15709380, 18726058, 7533910, 2458332, 8540542, 19408958,
-9621800, 21172042, 13642964, 15783468, -16914118, -17068200, 3516505, -3462818, -4552129, 1333051,
--8501888, 7099581, 5352603, 3337727, 16161962, -3787624, -10386305, -8739722, -7669738, 1874753,
--3636227, -34615824, -15017890, -13474923, -4855461, -6999186, -3595425, -5254356, -9787157, 357019,
--5866926, -5662915, 2336999, -5681705, -1741609, -8732205, 558883, 448824, -1332514, -12441983,
-5182952, -43487, 648540, -9362492, 2886218, 3313031, 3670587, 1010928, 10924786, -7030325,
--2604898, 2203855, 1266479, -806380, 4556424, -4984310, -4133369, -921807, 7789997, -808528,
-5695664, 6361921, -1271847, -8043400, -7084549, -892279, 8137353, 595390, -5642514, 788127,
--1152662, -3939022, -2806761, -1271847, 576599, -6024229, -4969277, 15397458, 10457708, -33719788,
--24904904, -7755101, -325344, 11113765, -4636954, -790811, -26848378, 3801583, -14069776, 10042707,
--1969243, 13305272, -11425687, -2835752, -13557601, 2353105, 11004780, -5276368, 3183108, -7740605,
-536871, -18116708, -5076652, -865973, 1246077, 13448616, 17425756, 617938, -16125455, -11287711,
--5262946, 1660005, -4321811, 5123359, -18535468, -5715528, -2618856, -4776541, -10459856, -2415919,
--4877472, 12581570, 18131742, 12320651, 4387846, 7535520, 7530689, -8770323, 30346092, 18496276,
--24145770, -20752746, 22252762, -17571784, -10292889, 3481071, 2336999, -17054242, 16409996, 1111860,
--51740936, 13845901, 32219770, -22373558, 22145926, 29894046, -10120017, -3055869, 15768436, -18604724,
--12537010, 6260989, -10348187, -11621108, 13332652, -22580254, -7085623, 2944737, 308164, 1323387,
--2398202, 8326868, -6146098, 3580392, 991601, -5973763, 11740293, 6150393, -629213, -7604240,
-8997420, -5770289, 6885370, -6145562, 8426189, 927176, 1547262, 8812199, -7063074, -7621957,
-2050310, -7031399, -4602595, -315680, 493384, -4678830, -8723615, 4024384, -20127828, -537,
-8876087, -7326678, 5113159, -2243584, 2428804, -8318815, -82678, 4556961, -4181151, 2983392,
-17542258, -7943005, -7765838, 17537426, -12981539, -2133525, 14445586, -10521059, -6655052, 11059004,
-6828998, 7252589, -1789391, -10857140, -8667781, 10208064, -8152385, -775778, 3042448, -15352897,
-9979893, 8121783, -6207302, -5050882, -11969537, 289373, -7406134, 10311143, -16807818, 1243393,
-6440304, -933082, -7998303, -17460652, -3923453, -7621420, -1699196, -13524315, 18379238, -17999672,
-3138011, -6575595, 4616553, -25475598, 26200374, 4932233, 2611877, -10539313, 5966247, 4216048,
-1136019, 2328409, -4691715, -20120848, -3489661, -8745090, -12881144, -17299054, -6236830, -4409321,
--17141752, -6621229, -820339, 11768210, 5433134, -15575162, -13575318, 8279087, -3585761, -19756312,
--8521752, 4762045, 16168941, 16025060, 16334297, 26052734, -5062693, -17801566, -16977468, -1158567,
-11434277, 20267414, 9102646, 4285841, -20806970, 11594801, 4298189, 19759534, 13734769, 8899172,
-6743099, -96637, 1700270, 11581916, -2842195, 709207, 1999307, 3263638, 3943854, 3641059,
-5569499, 13906567, 4332549, 889058, 4742718, -483721, 4414690, 1144609, 736050, 8556112,
--10678899, -7692824, -2901787, 3760781, -5463199, 3287798, -2450279, 10778220, 295816, 1622961,
--5850283, -7342247, 498216, 6170258, -6165426, -919123, 7287486, -6365679, -490700, 3224447,
--10759967, 12696460, 6824703, -2592013, 2962454, -780610, -286152, -3422015, 7191923, 12145631,
-32870996, -28993176, -838056, -11569031, -15337328, -9206799, 15042586, -8256001, -8928163, 7676717,
-19372450, 12160663, -14533632, 9360881, -15250355, 11184632, 636729, -1754494, -7370164, -11418171,
--9160092, 1890323, 2108292, -18037788, 11442867, 1845225, -1599339, -6875706, -7609609, 12739410,
--17438640, -870268, 19044422, 22307524, -20000052, -1387811, -3941169, -13027710, -16741246, 18312130,
-4227859, 11622182, -3549254, 1374390, -1532230, 11569031, -4469987, 574452, -14333916, 20588462,
-17279728, -25224880, -30697742, -6579353, 441845, -10186052, 1110249, -7586523, 2438468, -15677704,
-16642461, -20139638, -17493938, -6623377, 3002182, 13792214, -7134478, 20013474, 2229625, -7237557,
--6745246, -5337034, -12515535, 12167105, 9268539, -3393024, 7864085, 6000070, -9753334, -9957882,
--8238284, 15493558, 4270808, -11207717, 1642288, 4318590, 5476620, -16680579, 8797167, 6565395,
-3464965, -244276, -4318590, 2142652, -4748087, -14849313, 3445638, -2037425, -2291902, -1801739,
-1859721, -4551055, -5234492, -378494, -1627793, 7313793, -3508988, -2121714, 4706211, -2044941,
--6513318, 5762773, -6483790, -2332167, -11624329, 6399502, 1771674, -1787780, 2639258, -5483600,
-11263015, -741419, 2350421, 12093017, 9239012, -3418794, -3415573, 5799280, 3830574, -4210142,
-2910377, -3862786, -2947421, -771484, 3321084, -44487808, 65910032, -45283988, -11583527, 11925514,
-35582732, 28926604, -10704132, -11583527, 1859184, 1651952, 18330384, 6769406, -24335284, 7292855,
--5297842, -8535174, 2335389, 9943386, -191663, -18210662, -16117939, 8503498, 6881612, 11260867,
--6225555, 13939316, 3180423, 16348793, -1767916, -5570036, 12022687, -1457068, -13005698, 2261300,
-14944876, -635655, -17224430, 8521752, 19888382, -18391586, 7182259, -19756312, 7741142, -24966108,
--16401406, 27518930, 25563646, 12066174, 33314988, -6398428, 39786968, 14841259, 15288473, 21437256,
--36197984, 30474404, 10312753, 12344273, 13968307, 3391951, -17719424, 2906619, 33554968, 38358352,
--551366, -43346420, 21227338, 1219234, 8972724, -1454920, 925029, -9401683, -32810866, 6657736,
--5544803, 7425999, -6208375, 16258599, -18500572, -19649476, -13990319, 2934537, -6103686, -8795556,
-10425496, 4240207, -14249091, -14860050, -11952894, -8704825, -1721745, -2237678, 7649874, -96637,
--12250320, 9693741, 1730335, -2846490, 360777, 4863514, -6206228, -2809446, 5822365, -10435160,
--4696010, -7067369, 6026913, 8005819, -9100499, 2896419, -24083492, 752156, 973347, 1609539,
--4870493, -4161287, -10986526, -7761006, 5260261, 3884798, 5032628, 8742406, -8174397, 1064615,
-3016678, 2564096, -8021389, 498216, 1724966, 194884, -6631430, -440234, 43660492, -1674500,
--51773684, -26273388, -30448096, -11724187, 346282, 17040282, -44117368, -9965935, 7031935, -20669530,
--23643794, -21674016, -23603530, -3889093, 26223996, 13351980, -10283225, 12484933, 5230734, -12058121,
-13569412, -15212237, -3270618, 6221260, 9006010, -30137786, 15174656, -14877230, 8682813, -6011344,
--24058796, 6598681, 7574175, 3619584, 4041564, -10140955, -34187404, 1265942, 7143605, 7333657,
-410169, 4139275, -14158897, -309238, -1153736, 30964566, -4732517, -51310900, -23064512, -5712844,
--42456824, 9519258, -12943958, -11011759, -20448876, -9341554, -30565134, -30165166, -36766532, -3841848,
-38754564, 5135707, -24492052, 11098195, 355409, -2915209, -13776108, -19579146, 8142185, 15740518,
-12146704, 6382322, -7341710, -31598074, -22388590, -31814970, 4636954, 3216931, -1117228, 10981695,
--16655346, -20382842, -2858301, -7743826, -20583094, 4176856, 11811160, 1312649, 4302484, 19429896,
--3593277, -4456566, -3418257, 927713, -7132867, -4320200, 8786966, 13111998, 14717242, 9539122,
--4140349, 244276, 2247879, -6601902, 13612899, -6046777, 19889456, -7474854, 9298067, -9989557,
--2728915, 19783156, 6640020, 2288144, -181462, -8433705, 7893076, 1226213, -9955197, 3942243,
--8535711, -11383811, 3039226, 2703145, -6805913, -7073275, 6805376, -194347, 9606768, 1519882,
-6505802, -4193499, 2804077, 2143726, 28492276, -3134253, 22783190, 29993904, -25400974, -31233002,
--33435246, 8996883, 11348377, -45185204, -26546656, 1204738, 1027034, 13995688, -53173844, 5957120,
-11950747, 36988260, -42651172, 5324686, 6670621, -4973036, 23090282, -13143674, 40672804, -1939715,
-3330747, 12664785, 15627775, -15161771, -33355252, 19593104, 23075786, 5706401, 29271812, 6057515,
--4033511, -10725607, -25273198, 39018168, -17585744, 37000068, 14210973, -2375654, 10579041, -15164456,
-19557134, 19945828, -13947369, 14927159, 7181186, -38088308, 27761594, 28876676, -3850975, -19238232,
-3466576, -576063, 1007707, -6541235, 52697100, -600222, -30955440, -16820166, 5775658, -43937516,
--58299348, 8358007, 72428184, 16472810, -5347771, -45977624, -11989401, -7276212, 49299784, -33428804,
--21903796, -81117976, -12016245, -14475114, -19416474, -14832670, 29773788, 32474784, -32077500, -11895986,
-10327249, 4932233, -6018323, 13652627, -5792837, -9546639, -10212895, 11859478, 4342212, 4226785,
--4235912, 11661910, -11633456, -3316252, 9618579, 5111011, -816581, 163209, -8715562, 4767951,
--5835250, 21785148, -5944235, -10838887, -9580461, -17416630, -6291590, 14646375, 15615964, 43717936,
-16223702, -4153234, -32942400, -44612900, -21376590, 1448478, 18425410, 15804406, -12229383, -17253420,
--9297530, -6571300, 11128797, 20369956, 4200478, 1975685, -2561948, -6069326, -6003828, -72405096,
-21020644, 35044248, -46631532, -3986267, 26137560, -11042898, -20983062, 18959060, -20246476, -10854456,
-1534914, -14998563, 24581708, -8058970, -11237245, -4058207, 12984223, 44719736, -6937446, -20252382,
--22891102, 8486319, 21253646, 12956306, -20234664, -2943663, 24188718, 895501, -18343806, 6318434,
--16376173, 41375568, -18626200, -44332116, 15363098, -7260642, 21240760, -29622390, -29407104, 29727080,
--2412698, -37983080, -20357608, -36282272, 47240884, 23035520, 12704513, -49579492, 8804683, 20799452,
--34988416, 2297808, -25154012, -18785650, 19448148, -16677358, 22323630, -13734769, -30419642, -6607271,
--7594039, -4246649, 10355166, 3885335, -19044422, 59170152, -7350837, 26392574, 26679264, 16578574,
--8144332, 6471979, -13501767, 33399814, 8027831, -8089571, 3817152, 14345728, 22842246, -5449240,
--50164680, -3126199, 15417859, -4705674, 26228292, -10921565, 8924405, -3754338, 491774, 11142219,
-2430415, 6884296, 13262322, 8244190, 15425375, -3502009, 4857071, 8525510, 852551, -15822660,
-19016504, -7752953, -130997, 3215320, -9880572, 5187784, 732292, -2335389, 13128104, -5828271,
-714038, 19566798, -480499, 10988674, -9745818, -5898601, 10154913, -2259690, -7495792, -9943923,
-223875, 1555315, 2112050, -3216931, 2162516, 6194954, -2508798, 52382496, 10928007, 22605486,
--1787243, 5345624, 8466454, -19258096, 8559333, 18182744, 324270, -22136798, -11613055, -16463683,
--6534793, -22185654, -21120502, 2501282, -16804596, 24718610, 8207146, -5958731, -17864380, -8804683,
--5774047, 13240310, -3983045, -20992190, -17041894, 4192962, 4631586, 11774116, 4689568, -4764730,
-5705864, -18329310, -55143084, 2139968, 67267776, -2141578, -48619028, -8103530, 32105954, 8719320,
-5382131, -1079111, -21020106, -26584236, -15620259, 5834176, -1446867, -24604258, 9199283, -49304076,
--8607651, 45316736, 13576392, 58346056, -7508677, -23278186, -6780680, -5337034, 15867757, 3224984,
--239444, -32105954, -15857556, -15451682, -1950989, 36863168, -4774930, -9246528, 12399034, 14820858,
-2614561, -19905562, -30562450, -2413772, 12688407, -1558536, -15056545, -4103305, 8825621, -6666863,
--5522791, -10268730, 18811420, 19423990, -9629317, -5361730, -8826695, 7784092, 11809013, -5560909,
-1912871, -2252174, -1371168, -3862786, -14472429, 1422708, 8650064, -9120363, 2450816, -2345589,
-914291, -8186745, -2437394, -3560528, -4984847, -6259915, -5970542, -1966558, 26540214, -13244069,
-415001, -5334887, 1706176, 14345728, -9557376, -1572495, -2547453, 4392141, -413927, 3980361,
--7275675, -23177254, -77510736, -119378616, 28063854, 107094472, 33621004, 261784160, 246326576, 109751448,
-253993632, 107470816, -46210628, -639950, -76565848, -208953920, -114287472, -109355776, -214424624, -155889056,
--89741192, -134854464, -90902984, 19876572, -8020315, -43067248, 51022600, 47952236, -354872, 51397872,
-139037216, 58558656, 26063472, 133361416, 119061328, 40173512, 141861696, 173888736, -437013, 103062032,
-175019920, 66469988, 69870528, 178709296, 106525928, -14016626, 139211696, 97948880, -38175280, 54832772,
-110692048, -49526880, -88164944, -19764366, -186136896, -312066944, -302403808, -335934080, -537761024, -465206176,
--384055968, -497368480, -426716800, -273993152, -325097888, -248219040, -68926712, -22103512, 104955040, 195820448,
-322470976, 432388864, 471352256, 550111232, 597182976, 558135296, 528369024, 560839488, 426398976, 338322080,
-401059744, 218930048, 34744136, 50596324, -81301048, -296434880, -249188640, -184152624, -266078592, -271801088,
--169854688, -193007248, -243695904, -178406496, -162540352, -228993168, -205757920, -134005664, -170757168, -183092304,
--60250876, -57679264, -108396384, -11425150, 40776420, -31009128, 5458367, 40754944, -58700928, -75530224,
--72015864, -157022400, -173702432, -121460064, -91613800, -66606352, 22042310, 106140456, 144018304, 204564464,
-261873280, 273772480, 290104640, 321181952, 304293056, 276854656, 288044128, 261059920, 193701952, 132891120,
-34321084, -52053928, -133230424, -193299296, -216880272, -228179264, -204051744, -156315872, -137408896, -115732192,
--95217816, -82114408, -72873248, -54766200, -43184284, -39674760, -39241504, -27759984, -21966610, -17820894,
--8230768, 5494874, 16648367, 31831614, 31901406, 30655330, 27302034, 17678086, 6714645, 3770981,
-200253, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--553514,
-11153493, -5529771, 440234, -3299072, -253403, 4714264, 2237141, 2957622, -2580202, 3663607,
--3787624, 4112968, 2056216, 4956929, 2093797, -943819, -5597416, 6019397, 4151086, 1525250,
-708670, 557272, -2378338, -2726767, 3114388, 1904818, 2035278, 2986076, -3037079, -237297,
-2806224, 3318399, -432181, -2484639, -4712116, 11274, 881542, -2855617, 1067299, 751082,
--4247186, -2305324, -322123, 2150168, 49929, -2079301, 3968550, 730144, -1340030, -2947421,
--651761, 336618, -5545877, 2549063, 3478387, -1942399, 4453881, 3631932, -574989, 3001109,
-1785633, 5879274, 1860258, 1086627, -912681, 2203318, -4737349, 592706, 2279554, -2368675,
-2609193, 3119757, 3454764, 2131378, 4538707, -994285, -2746095, -1451162, -1157494, 578747,
--1041530, -3544959, 1677185, -1685775, -1846299, -2160906, 821413, -27380, -1074816, -879395,
-1411971, 78383, -153008, -403727, -129386, 634581, 951335, -179852, -45634, -826244,
-234076, -1465658, 148176, 933619, 1284732, -936840, -953483, 192200, 841814, -10582263,
--7401303, -1053878, -4765266, -4078608, 2007360, -6026913, -5810554, 1671816, -2631741, -2362232,
-2419677, -1903744, -4115653, -450435, -310311, -1165547, -1882269, -1114007, -4720169, -296890,
--3403762, -2465848, -128312, 4218732, -936303, 6097780, -3169686, 3661997, 4212289, -4732517,
-1650341, -1202054, 918586, -3352222, 1661079, 2160369, 3250753, -1673964, -3966402, -1387811,
--2173790, 1264331, 1544041, -4820027, -601832, -3312494, -2651606, 896038, -3938485, -6322729,
--1177895, 6192269, 1378148, 2161442, 344671, 1416266, 855772, 2273112, 2459406, 6944962,
-530428, -3100430, -3981435, -868120, -1890323, -525060, -8060580, 1662152, -562104, 2565169,
--1066763, 704375, -1913408, -957778, 7913477, 1571958, 7257958, -2471754, -1306744, 540092,
-2075543, 688805, 2471754, -2423972, 2683281, -2823941, -1725503, 1425392, 1058710, -120259,
-144418, 42950, -590021, 181999, -1053341, -115964, -349503, -192737, 489626, 531502,
--573378, -1040456, -613643, 49392, 61740, 155693, 361314, -443992, -444529, -452045,
-134218, -185220, 585189, 8590471, 9932649, 7619272, 5680094, 8010114, 3267933, 3473018,
--718333, 2265059, 8458401, 886374, 2588792, -3153580, -2079301, 6456947, -4329864, -7933342,
-2408403, -6630893, 5721970, 1330903, 6863358, -2197413, -418759, -1705102, 2262911, 2727304,
--85899, -6755447, -1379758, 5757941, -3832722, 2587181, 1538135, -1318018, -1651415, 6400038,
-4847408, 11176579, 4489315, 912681, 2689187, -963146, 688269, 3508988, 2109903, 9523016,
--4078608, -2739652, 671626, 2439542, -1495722, 4404489, -4136054, 841277, -266825, -3198677,
-994822, 939524, -4305705, -5850819, -3605088, 4599910, 2241973, 537, -371515, 3466576,
-266825, 1136556, 6047851, 2963528, -1438814, -981937, 5376226, -4679904, 619012, -4220879,
--1889786, -5449777, 1480153, -1149978, -3218541, -2129230, 3150896, 1922535, 563178, 1830730,
--3015604, -526670, -257161, 2316061, 67646, 146029, 431644, 676994, 1718524, 1907502,
-1520955, 97174, 812823, 1724429, 98247, -1607392, 1468342, -826244, -314069, 336618,
--267362, 1261110, 1165547, 563178, -2684, -466541, -462246, 529892, 733903, 246961,
-1120450, -2288144, -1449015, 1114007, -79994, 18690088, -331786, 9156333, -1661079, -1432372,
-9819906, -9614284, -3331821, -750009, 4849018, 3368865, -2062121, 1869385, 904628, -8710194,
-2198487, 4656282, 4132296, -9763534, -3438121, 1096827, -7005629, -1930588, 527744, 309238,
-943819, -1083406, 4449049, -3161633, 3535295, 7308424, 7298760, -2134599, -4205847, -760746,
-8221641, -483721, -457951, 47782, 793495, -4293357, 713501, 3449933, 500364, 805843,
-3296924, -2215130, 2211908, 1278827, -929324, 5770826, 544924, 4583267, 883690, -1564442,
-1982127, 3054796, 2625836, -157840, -4558571, -4147328, -5484137, -2455111, -225486, -22012,
--672699, 4027606, 3449933, -2666638, -5385352, 140660, 2736431, 3308736, -3313031, -642098,
-3115462, -317291, -482647, 4163434, 1919314, 1953136, -1614371, -1388348, -301185, 1770600,
-2646237, 19864, 1988570, 693100, 112743, 350577, 621160, 2465848, 1825361, 2779381,
--1496259, 1284195, 125628, 306016, -479426, 242666, 348966, 70867, 294742, -518617,
-1275605, 1268089, -1308891, 266825, 673773, 771484, -487479, 2552821, -5022965, -13935558,
--3653944, -4718022, 877247, 2324651, -2402497, -2791192, -26329224, 526670, 8410083, -6139119,
--9884330, 7365332, -11182484, -1689533, -5032628, -5861557, -3692061, -3684008, 339302, 4461934,
--878321, 2484102, -2907156, 3362423, -2647311, -3993783, 1687922, -1502165, -6357626, -8040179,
-3768297, 374736, 3718905, 1152662, 8408472, 1190780, 2868501, -4082903, -7135552, -2056753,
--3580929, 7045357, -3369402, 176094, 1755568, -3510599, 9787694, 6527814, 63351, -7866233,
--10048613, -3391414, 3240016, -9002251, -304406, -4382478, -8640400, 788663, -13485124, -2971581,
--1506460, -4991826, 8933532, -562641, -1500017, -152471, 5566278, 7200513, 2085744, -7217693,
--2413235, -1829656, 3805341, 1816771, 2150705, -4055523, -5246840, 4050691, 2682207, 1016834,
-1283658, -254477, 2236604, 643708, 3410204, 990527, 734976, -294205, -179852, 558346,
-2172717, 3207804, 1892470, -781684, 1202591, -4005594, 1998234, 2390149, -745177, -331786,
-664109, -900333, -323196, -217433, -1304596, -1291175, -776852, -376347, 686121, 1597728,
--316217, -1842541, -77846, -2604898, 825707, 3589519, 1474248, 2123325, 1436130, 5578626,
--15049029, -22181896, 2692408, -5082557, 4913980, -6227703, -11041287, 250182, 10096931, 2045478,
-6184753, 4935991, 3816615, 2438468, -3576097, 2688113, 6703370, -10564009, -4959614, -3529926,
--2385318, 3839164, -889595, 1306207, 6960532, 6059125, -2488397, -5966784, 1380295, -3350611,
--2550674, -5783174, -4013647, -8795556, 2105071, -3299072, -75699, 7778723, -1560147, 1478543,
-2060511, -5606006, 4700842, 4631586, 6500433, -5711233, 10263898, -1680943, -7503845, -6349573,
--8208220, 7644505, -2887829, -8728447, 2653753, -1346472, -6145025, 6545530, 8798777, -3036542,
--7341173, 5452998, 1732482, 4276714, -634581, 11834782, 6957847, -6897718, -3422015, -3250217,
--2687576, 3958886, 5418638, 7030862, -9127, 941672, 2698313, -2773475, 2566780, -752156,
-4539781, 6462852, -8741332, -3885872, -4406100, -2727841, -4501663, -325344, -3190624, 1500017,
--193274, -253403, -392990, 1202054, -2172180, 5503464, -704375, 2368138, 803159, 1175747,
--1090922, 256087, 125091, 369367, -1871532, 436476, -1227287, -1864016, -2911988, -795643,
--201863, -418759, 77846, 406411, -616328, -322123, -1116155, -934692, 1684701, -20713554,
--13959, -3762391, 1373316, -37581, 7816304, 5732708, 8096014, -1312649, 11043435, -5131949,
-7510287, 9193377, 1695975, 9163313, 1980517, 2383170, -2566780, -935229, -3849901, 7265474,
--446140, -824634, 10234907, 6183143, 100395, 2759517, -865973, -340913, 6658273, -3801583,
--6577206, -3758, -907849, 3381750, -18609020, 11196980, 12080132, 4769025, 2355253, 322659,
--5913633, -12410845, 8205535, -5000416, -5640366, -3777424, 7365332, -5180805, 4545686, 4612258,
--4405563, -2917894, -10717554, 4938676, -6970732, 4140885, 694174, 3708168, 6519224, 10406706,
-4465156, -4798016, -11443940, -2015950, 7004018, 11467563, 8608188, -1737314, -2275796, -7371238,
--12257300, -1297617, 8477192, 3783866, 2672007, -2720325, 11250130, -383863, 3781182, 1088774,
--2185602, 1063004, -5753646, -2799245, -2915746, 1911797, -1455457, -4106526, -2434710, -2838437,
--3081639, 1225139, -4380330, -1820529, 825171, 749472, 3359738, 175557, 461709, 575526,
--934692, 2750927, -889058, 3128884, 1112397, -904628, -2430415, -133144, 3001109, 2143189,
--405874, -2954938, -803159, 2596308, 2308008, 322659, -562641, -366683, -1816234, 1995549,
-7925289, 27070642, 14795089, -1302986, 2630668, 2419140, 6029597, 10715407, -1428077, 2122788,
-18177912, 1872606, -719407, 10947335, 7693360, -7514046, 4570919, 1121523, 7361574, 5042292,
--12503187, 9601936, -5748277, -800475, 1153199, 7523172, 1418413, 2059974, 5775121, 6568616,
--6162741, 6746857, 20080582, -3499325, 9180493, 9372692, -4903242, 7357816, 2011655, -4783520,
--5140002, 3584150, -4587562, -12414066, -1541356, -555125, 1347009, -15899432, -3822521, 4920422,
--10010495, -6761353, -16531329, 5508833, 7697655, -11329050, -3987877, -5456756, 12071006, 305480,
--6816650, -4799089, -7599408, 3856881, 10106058, -7135552, 3925063, -3030636, 4896263, 11373073,
-4821638, 8959302, 9147743, 11354283, 1779190, -6363531, -6312528, 4550518, 7230578, 1036698,
-4868346, -5093831, 2068027, -629213, -1549946, -5350456, 762357, -2380486, 332860, 4335233,
-1864016, 1819992, 1492501, 4786204, -2959233, 156766, -787053, 1411434, -549219, 145492,
-2063732, 521839, -1680943, 2548526, -554588, -3714610, 2302639, -2662880, -2108829, -2761664,
--5537287, 2964601, -1269700, 2501282, -295279, -558883, 738198, 4083440, 2769717, 3637301,
-1705102, -92342, 1498944, 4193499, -1735704, 27827630, 7488276, 1127966, -1559073, -4036733,
-221728, 5203890, -3329137, -6440841, -9475772, 710280, 6854231, -8483097, 4221416, 5564667,
--2335389, 18779208, 6696928, -4686346, -3153043, -1422708, 6804302, -2792803, -6209449, -6908992,
-4377109, -15066208, 590558, -4263829, -5439576, 4797479, 1126355, -5538897, -3345243, -5324686,
-7573638, -2502892, -11855720, -1474248, 338766, 860604, -6847789, -9755481, 985695, -1851131,
--1253057, 3269544, -1993402, 9073655, 1950989, 5396627, -5746130, 13223667, 3922916, -6664716,
-8850854, 16737488, -4742718, -4172024, 8670465, 7888245, 3382287, 4780836, -10276783, -2810519,
--11116449, 3242164, 10580115, 4698694, -13044353, -2723546, 4242891, -13025562, -20258824, -1819992,
-756451, 5721434, 18564460, 1416266, -2013803, -5830955, -4281546, 2833068, 4775467, 3870303,
--192737, 2019172, 272194, -4145717, 2623688, 3122441, -5107253, -5040144, 5703180, -1947231,
-3391951, 2433636, 1758252, -1483911, 1301912, -213138, 2039036, 397821, 3048353, 2684,
-2705293, 1745904, 684510, -2481417, 5527086, 1646583, 5055714, -1124208, -1553704, 1723893,
--3216394, -650151, 2461553, -3207267, 908922, 1714229, 1208496, 1090922, 2758980, -1133335,
--4726075, -153545, -399969, -5216238, 861678, -2240899, -21597244, 10154376, 28708098, -11808476,
-20148228, -4558034, -4341675, -6311992, -10407780, 7714835, 296353, 5264020, 5217849, -18865106,
-251256, 8759049, -7642895, -4059281, -11874511, 20998632, -13105556, 10351945, 9787157, -12527883,
--5151277, -4384088, 8820789, -10026064, -4078608, 10170483, -1770063, -2743947, -4956929, 12409234,
-2196339, -2025614, -5102421, 314069, -9446781, 10229001, -1207960, 4698694, 25551834, 17132624,
--14700062, -10416906, 4021163, -1336272, 10695005, -5883032, -8615704, -3071975, -16022375, -6193880,
--1894618, -12315282, -7027104, 27303644, 6523519, 94489, -1331977, -302795, 8047158, 9620190,
--2019172, 9503689, 774168, -5217312, 1040456, -14565845, -1084479, -13495861, -7276749, 8141111,
-11933567, -17895518, 7279433, -4580583, -5667210, 8681203, -1254667, -8231305, -452045, -3219615,
--6437619, 3321620, 2416456, -4493610, -11087995, -5339718, -1087164, -863825, 8812199, 2622078,
-2229625, -4765803, 119185, -1952600, 4750234, 5285494, -2768643, 2269890, 4023848, 4352413,
-3459059, 4947803, -1893007, 365609, -3325379, 293132, -3879966, -2077690, 1580011, -1067836,
--3109020, -729071, 1772211, -5243082, -2506650, -2831457, -1489280, -1985349, -2296734, -22871238,
-3881040, 21264920, -5629629, -5392869, 4541391, -6566468, -5428302, 6019397, -852551, -1168768,
--315680, -14387067, 24401320, -25975962, -2564632, -570157, 8846022, 5385889, 254477, -9845676,
--7162395, 3136400, 19036368, -1527398, -8491150, -5733782, -13627394, -898185, -8033737, -6310381,
--2864206, 4277251, -525060, 662499, -9255118, 1872606, 2531883, 5896453, 4808753, 5937256,
--12537010, 83752, -2620467, 8217883, 1997160, 16645146, 3513283, -3819300, 1389959, -9009231,
--147640, 7287486, 9286256, -14233522, -11143830, -1006096, 14803142, -23251880, 6035503, 26917096,
-14701136, -7150584, 2406256, -14409078, 6016713, 13321915, -22809498, 5127654, -11153493, -3082713,
--30894774, 207232, -13060459, 12065100, 752156, -14267344, 9445170, -861678, -18546206, -2408940,
--11755325, 7678328, -6582038, -9590125, 13063680, -2478196, 2257005, -4315906, -5767068, -1495186,
-5543729, 4261682, -3224984, -732829, 169114, -3187403, 1974074, 3256122, 4577899, -4629975,
-1786706, 2556579, -5640903, 418222, 2388002, -3929895, 321586, -2519535, 6107444, 3375844,
-7446937, -3488050, -2867428, 2585034, -7217693, -689879, -2117419, -1052267, -436476, 1591285,
--4077535, 330712, -599148, 1477469, 1316944, 326418, -4115116, -6231998, -17362406, 27469000,
-8078297, 14367202, -16182363, -18261664, -3241090, 4803921, -4947266, -2471217, 9358734, 2500745,
-3004867, 8118025, -20089172, -2248416, 411780, 5108327, -13927505, 1814087, 2538863, -9825811,
--5260261, -13523241, -9994926, -110059, 4475356, -10953240, 958851, -4987531, -9561671, 3728569,
-114354, 7705172, -21306796, -22435836, 4776004, -1971390, 8532489, 18728204, 2208150, -11868605,
-16889422, -8422431, -15678241, -12209518, -5102421, 1286343, -16660715, -6533719, 16535087, 22278532,
-9491878, 6191732, 4719096, -2648921, 14287746, 7978439, -16574816, -9138080, 130460, 1586990,
-15625628, 9945534, 2529199, -2474975, -1904281, -7730941, 10374494, 8040716, 18020610, 4032974,
-5260261, 2103997, 32339494, 3578782, 12532715, -13469017, 1158031, 12198781, -29294362, 2308008,
-3873524, 8156680, -3043521, 4289599, -3835406, -1095217, 5017059, -2537252, 15516106, -6343130,
-9063455, -2509872, -5529234, -3069828, -5981816, 49392, 2408403, 2924336, -1265942, -3128347,
-6446209, -2074469, 4301947, -2442763, -2515240, -4866735, 4826470, 5165235, 1089311, 356482,
--4020090, -7016903, 3146064, -761283, 156229, 7984881, -2365990, 6969122, -1177895, 3994857,
-2749853, 5316096, 1157494, -5282810, -1056025, 18524730, 1234266, 23019414, -827855, -10707890,
--11653320, -21792128, 3919695, -9266392, -668404, 1728188, 7727720, 11229729, 19123878, 19760070,
--3147674, 17575006, -1388348, -1675037, 6625524, 14788109, 6425271, 4039954, -23823646, -12331388,
--19385872, 9651328, 19278498, 3621194, -8428336, 13373991, 19339164, -2762201, 2945274, -4678830,
-16249472, 13655312, 11637214, -7062000, -12373801, -2092723, -3259343, -27525908, 4714801, 3614215,
-2377801, -7097971, -3699041, -30680026, -10873247, -27857694, -4915053, -20894480, -10823318, 19896972,
-5254356, 20970178, 1344862, -17402134, -8460012, -18101676, -34395708, 4724464, -21274046, -6315750,
-20208894, 8330626, 7925826, 1549946, -3888556, -1600949, 3951907, -14904073, 11832635, -25341380,
--26026964, -1559073, -2232846, -3362960, -19116362, -4457639, 25270514, -1491964, 1586454, -6848862,
--21834004, 11005854, -14667313, -5887327, -14598594, -9166534, -6795175, -4781909, -5224291, -3364033,
-405874, 2492155, -13645111, -6009733, 2717641, 2354179, 7746511, 3488050, -4479651, -5879274,
-5093295, -9366787, -1316408, 2772402, -7009924, 2156074, 2253784, 5070209, -4755603, -1781875,
--2490544, -468151, 3534221, -2121177, -201327, -2813741, 5561983, 7453379, -2379412, -1302986,
-2144263, 2445984, 4849018, 6596533, 1337882, -1222992, -1499481, 10827613, 21814676, 18986976,
-20456930, -11790222, -20521890, 15783468, -9327058, 16312823, 4903779, -26205206, 6609955, 4881767,
--29501594, 15863999, -13431436, -13735842, 8075613, 8979166, 1436667, 10658498, 835371, 532576,
--6892886, -3997004, 6512244, -4098473, -10088341, 680215, -18984292, 6874632, -24141474, -14697915,
-938987, 9596031, -3259343, -9995463, 3792993, 7569880, 5675263, 447213, 19519552, -44758392,
--10118406, -12255152, -14819785, 19423990, -15608448, -2136746, -36056252, -10095858, -4237522, 1887638,
-24129664, -5804112, 3099356, -14533632, 12267500, -18084496, -11659762, 9408126, -41864120, 6108517,
-22467510, 29111826, 22291954, 14082661, 32792076, 18082886, -326954, -8089034, -8336532, -12651900,
--28152974, -3052648, 2707977, -39905616, -15721191, -12059194, -8934606, 12784507, 33514166, 39072392,
-25952876, -13100724, 10756209, -8442295, -1747515, 8854075, 6099391, -3397856, 2202781, 2920041,
--685584, 1354525, -6046777, 3524558, 11067057, -5151277, 1566589, -9665824, 2483565, -4523675,
--550293, -468688, 8583492, 15027017, -5273146, 948651, 3773129, 6124087, -8965744, -14054207,
-391916, 10954314, 3310883, -8962523, 8534100, 4427038, -8978092, 6394670, 4222490, -3500935,
--2651606, -966368, -1552631, 1657857, 3568044, -3190624, 6295349, -38429756, 52076, 6413460,
-26948772, -8773544, 12455405, 11333345, 5961952, 6186901, -42038068, 33146410, 18051748, 41068476,
-15065672, -1792612, -15291157, -9704479, -9589588, -14897094, 10586558, 7789997, -15150497, -17205638,
-9038759, 12295418, 21408802, 5978058, -13383655, -19946902, 4159139, 3326989, 1311039, 2338073,
-38035692, 12839268, 7208566, 12482786, 13706314, 15442555, 271657, -24254218, 16926466, 53067544,
--5529234, -14900315, -32452236, -7056095, 42749956, 4901632, 17620104, 5822902, -59381144, 12102681,
-10508174, 1116155, 5954972, -4282083, 766652, 11948062, -32051194, -13390634, 26916024, 9888625,
-3547643, -24182814, 16994648, 6198712, -21823802, -23673322, -15955804, 21332028, 44552232, 41450728,
-45671608, 46326056, 1651952, -20921860, -17251274, -40886480, -13553306, 12647068, -33231236, -514859,
--27127014, 137976, 35919348, 13861470, 14653355, 17716740, 10958609, -11272142, -3921842, -13850733,
-19391778, -12147241, -10763188, 3281355, -2560338, -7346005, -13286481, -4059818, 13094818, 12326019,
--6194417, 19210852, -1219771, 190052, -9166534, 2565169, 9743670, -2869575, -8008504, -7776575,
-4676146, -4461934, 10642392, 6590628, 8537858, 12638478, -13640816, 3003793, 757525, 5577552,
--3161633, -6071473, 11278047, 2397129, 9115531, -5568962, 3042448, -8232379, -3031710, 18506478,
-39304320, -79104704, -27183922, 5612449, -45367204, -42624328, -17676474, -26087632, 3467649, -19345070,
-50361176, -5814312, -17083232, -7665443, -37550364, -11076721, -30185030, -13320304, 5966784, -40184252,
--6053220, 30222612, -25134148, -7914551, 9473087, -655519, 13443248, 2189360, 670552, 10962367,
-4882841, -20211042, -3058017, 17053168, -8230231, -25048250, -7421167, -30268246, -14009646, -52650392,
-5749888, -36020280, 17826262, 5860483, -12355010, -46495704, 4943508, -5384279, 57388280, 22052510,
-1742683, 30289720, 14041859, -191126, 25724706, -29986924, -13324599, 1733556, 22841172, -24916716,
--14130979, 81717656, -7146826, 42104100, -32479080, -543850, -22997402, 17404818, -7701950, 27411556,
-44479756, 705985, -30342334, 26135950, -32370094, -15459735, 11788075, -34744136, -22270480, -11383274,
-25565792, 47102368, -55925844, 47225312, 10195715, 13495861, 5923297, 6254010, 5742372, -7475928,
-9284646, 24259586, -11813308, 3903589, -1746441, 2797098, -26115012, -5238250, -7522635, 7659001,
-8961986, 25959856, -15778099, -9969693, -12139725, 17890150, -22679038, 5218386, 9333501, 7531225,
-9414568, -38922604, -8448738, 13487271, -5898601, -16860430, -1423245, 4148939, 1722819, 15931644,
-9024263, 12569759, -12210592, -11953968, 13918378, 3483219, 9623948, -9053791, 9692131, 5696201,
-2499134, 2945811, -2809446, -4368519, 1028108, -29680908, 61337500, -35249332, 22557706, 20098300,
--31913754, 17479444, 9641665, 6868727, -5671505, 24203214, 12526272, -30871152, 21869436, 25410638,
-4945655, 4269735, 15387257, -452582, -30671436, 39799852, -22766012, 8959302, -16937204, -3965866,
-4992900, -7532836, 32456530, 7228430, -4317516, -7886097, -1728188, 6283001, -33088428, 10395431,
--17173426, -11668889, -7974144, -170188, -16263967, -7813620, 3891777, 34215320, 316217, -7301982,
--21922050, 9025337, 5979132, 902480, 26571888, -6596533, -2839510, 31562104, 9898289, 1718524,
--30642444, -16131360, 19659140, 10899016, -28714004, 772557, -65161096, -32382980, 58272504, -13823889,
-31484258, 41191956, 11683385, 6874095, 18635864, -8151848, -22938884, 12104292, 3764002, -1663226,
-26243324, 16935592, -19002546, -45628120, -9494562, 18320720, 5811091, -1301912, 14642617, -17374216,
-25400436, -12702366, 9448928, 11681774, 5123359, 17268990, 13179644, 20976620, 2316061, -5744519,
-7584912, 20320028, -5480379, 17758080, 10705743, -11890617, 3539590, 9319542, 6350646, 3694746,
-12824235, 10557566, 4645544, 21310554, -6926172, 2226941, -3199214, -1634772, -5570036, 18888730,
-15734076, 12454331, -6069863, 2189897, 22462142, -6106907, 16445430, 14614163, -44560, 25635586,
--23467164, 3084860, 35392680, 4341138, 9975598, -7570954, 24894168, 4635344, 34817152, -10747082,
--58195732, 9895605, -7023882, 20044612, 6117107, -19729470, 10212895, 12011413, -22508312, -24697136,
--16550120, -41238664, -41522672, 28557238, -6638409, -42649024, -13100724, 4364761, 14085882, 13500693,
--26151518, -28333900, 2755759, 39402568, -18881214, 15198279, -26550414, 9408663, -29949880, 19463718,
-20532628, -14691473, -30823370, -21211232, -3466039, 12053826, -13250511, -8746701, -11037529, -39209292,
--33886756, 17708150, -28455232, -5858873, 10095858, -23521388, -37936908, 14419279, 19859392, -2597382,
--45664092, 20352776, 17879948, 57647588, 239444, 15086073, 11271605, -24718074, 9415105, -7732015,
--49902688, -7713225, 30466350, 7181186, -25256556, -62668940, 39507256, 50442244, -15044734, 40782324,
-47543140, 2365453, 2130304, 37502580, -24372328, 1798518, 62941136, -46510200, 26975078, -39855684,
--10936597, -3330210, 27095338, -9299141, 3921842, 15114527, -491774, -35291208, 38757248, -7132330,
--4560182, 5862631, 16180752, -26554172, 11578158, 6713571, -3997004, 7969312, 9423695, -24617142,
--3323768, 5623723, 12886513, 26679264, -2258079, -23589572, 11948062, 27384174, -21862458, 26707718,
--12692702, -2950106, -9419400, 30129196, -20893942, 7066832, 18897320, -13168370, 4753992, 3227668,
--17411798, 3704946, 7532836, -3423089, -13214541, 8490613, 10998338, -6270116, 21855478, -32947768,
-8114804, 9451612, 479963, 1843078, 22563610, -5069672, 12657269, -26199300, -82958368, 22434224,
--9587978, 61962956, -21329882, -13605383, -24897388, -70965208, 32439352, -41350872, -24209120, 1274532,
--116501, 54758148, -39202852, -27409408, 36019208, 21478058, 18760418, -6782827, 17922362, -12677133,
--18096308, -16605954, 42241540, 35188668, 54930484, -17467632, -20617990, 998580, -3673271, 20211580,
--33140504, 7125888, -34831112, 18615998, 34078420, 11746199, -28144384, 19184546, -24816322, 55819544,
-28362890, 7931194, 7473780, -8582955, -43789340, 24760486, -59385440, 12433930, 11016054, 29033442,
-22980222, -51228224, 15430207, -32255742, -19198504, 14000520, -5116380, 19171660, 12230993, -46832860,
-19138912, 43101608, 56913148, -16477642, 16809428, -23204098, 39943732, -56719340, -3005403, -10296110,
-17919678, 37389300, 53625888, -42883636, 10692858, -57398480, 36928664, 75728328, -19220516, -51527796,
--4144644, -38849588, 49700288, 12663711, -25367150, -7126962, 2895882, -8446590, 35501124, 13418552,
--20044612, 19153406, -28385438, 1903744, 26653494, -5506685, -32715840, 36341864, -52207476, 15192910,
--7863548, 20931524, -1293322, 13023951, -12016782, -6388227, 5339181, 4643397, 5568962, 24828670,
--25310242, -21232170, 1212791, 5774047, -5821292, -26372172, -19295140, 38765836, 10475962, -17149804,
--19804094, -44125956, 52938692, 41467372, -16082505, -14120779, -30808338, 1226750, 39571144, -65168076,
-46535972, -6029597, -1832340, 15484968, 12962748, 18437758, 5099200, 9034464, -22964116, 21797496,
-5909875, -23331336, 15726560, -9244917, -431107, 21314848, 12249784, -33216204, 18631032, -15684147,
-27653146, -20119238, 6947110, -10245644, 12831215, -9760850, 5859409, -14568529, 31811750, -2743410,
-794569, 9570798, 10612327, -16065325, -3444027, 7380365, 10554882, 9806484, -11294153, 4141959,
-381715, -32292786, -2780455, 8512088, 11829951, 5298916, 7549479, -29033442, 4549981, -1575179,
-2847563, 6830609, -5864241, 6468221, 4767414, 2878165, -7144678, -6452115, -2346663, 33879240,
--11963095, 6852084, 12443057, -6927246, 11834782, -13424457, 11401528, 6113349, -9184788, -13504988,
-8478802, -8243116, 6627135, -12131135, -10700911, -4716411, 15403900, -3862786, 1388885, 3237869,
--1226213, 3828427, -12387223, 9426379, -8029978, 20545512, -19097036, 8999030, -11435350, 10276783,
--9358197, 8242042, 125091, 13912473, -12050604, 6555194, -6215892, 801548, 2338610, 8239895,
--8681740, 2103997, -9360344, 13187697, -11085311, -2977486, 6534256, 2785823, -5459441, -1520955,
-7393786, 5019206, -18207976, 10189810, 802085, 170188, -2005750, 3723737, -2354179, 1992865,
--1494649, 2407866, 514859, 4782446, -5214627, 13001940, -16545825, 51849920, -3747896, -16776679,
--25608742, -11626476, -14381161, 18817862, 10864120, -13663902, 1125818, 1620813, 6129455, 852014,
-13008382, 4502737, 10241886, -3510599, -384936, -3071439, 4792110, 11125039, -10340671, -60666,
--5126581, 367757, 13538274, -7685307, 1303523, -3470871, 5323075, 2760590, -7456063, -2753611,
-7960722, -2448668, 12991202, 9256728, -13595182, 4354023, 2859375, 7124277, 2991982, -12830141,
-8665633, -2401961, 8426726, 6757594, -15337865, 4202626, 24696, 3448322, -1730335, -6729677,
-10900627, -2685965, 4935991, 259846, -3301756, 5054103, -6542846, -918049, 9086540, -6260989,
--7532836, 15180562, -9826885, 14161581, -1498944, -11477226, 23453206, -21559126, 18716930, -6649146,
--11257109, 11868605, -11060615, 3266860, 3799972, -10804527, 9069360, -1949915, -722628, 5802501,
--7536594, 9821516, -3211562, -762357, 2394444, -1683627, 3424163, -1653026, 527207, 2859375,
--2796561, 4575214, -565862, -2619393, 5607080, -8749922, 4613869, -3897146, -1826972, 5440113,
-423054, -1654099, 2795487, -2086817, 2774549, 1420024, -4085588, 2700461, 515396, -933619,
--726923, 2436857, 490700, 4511327, -3606162, 1271847, 542777, -2574296, 4977330, -1470489,
--835908, -25397216, -43562780, 54951424, 157414304, 24879672, 15255724, -115089016, -142278304, -45605572,
--27970438, 96225520, 146793936, 75520024, 21888228, -49427556, -106209176, -96898224, -81145352, 6397354,
-121610392, 101683352, 58327268, 19775640, -52042656, -67532992, -53611392, -51851528, -18273476, 24542516,
-33777232, 69821672, 50016504, 12097849, -16935056, -10004589, -56225416, -27357868, -28411208, -38532300,
-22922240, 43156904, 24987582, 62845036, 16710644, -14973867, -24150064, -41849088, -33033668, -5214627,
--10208064, 12797929, 26032870, 23144506, 16578574, 11244224, -5708012, -22995254, -16218870, -19131394,
-6162741, 22230750, 7362111, 5432060, -9651328, -20007032, -3718368, -86436, -273267, 16134045,
-14504641, 16172162, 6418829, -5624260, -17357574, -25213068, -25744034, -16796006, 17878876, 26396332,
-32813550, 22639310, -5685463, -12861816, -13588203, -27021250, -11897596, 9809705, 5207648, 4850092,
-7888245, 3741454, 3037616, -4217121, -5394479, 4221953, 9392557, -233539, -790274, -6490233,
--8856759, -4651450, -5372467, -3205119, 6969122, -1260573, 14554570, 17908404, 10395431, -6248641,
--10171556, -11458973, -14414447, -10586021, -14265197, 7611756, 19707458, 17926656, 10654203, 11185169,
-4268661, -11062762, -21550536, -22101902, -11191611, -2306934, 7006166, 15702937, 23120882, 18925236,
-3592203, -12224014, -20303384, -14921253, -4921496, 124017, 5583995, 3523484, 8735963, 11130408,
-3325379, -4839355, -6562173, -3712462, -2729452, -2689723, -744640, 784905, 5194763, 3124589,
-372052, -63888, -309238, -997506, -2262911, -2369748, 716186, 729608, 443992, -177704,
-214748, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--2868501,
-10933913, 1274532, 2968359, 1044751, 1568737, -2637647, -6599754, -1277753, 3503083, 1244467,
--3261491, -461709, 2681670, -691490, -3928821, 1185948, -4530117, -2815888, -130460, 1247151,
--1280974, -1028108, 2824478, -3917547, -83215, 494458, 1903744, 1498944, 1451162, 4781373,
-2170032, -5949604, -1506997, -2706903, 762357, -157840, -440771, -3748433, -4872104, 6461779,
--2976412, 1576790, 1890323, 1615982, -6127845, -3492345, -1599339, 672162, -472983, -196495,
--556198, 1029182, 2347200, -3213709, -1074, 1714766, 2008971, 2384244, 886374, 38655,
-2319282, 815507, -998580, -300648, 3761318, -2793339, -2944200, -1597191, -1178969, 3202972,
-1900523, 758062, -1195075, 3085934, -1376000, 1596117, -3653407, -355409, 282931, 753230,
-759672, -2958696, 799401, 2081985, 1051730, 346282, -265751, 2725694, 1301912, -283468,
-1751810, 1033477, 454730, -408559, 587337, 462783, 380105, -529892, 665183, 179852,
--550830, -445603, 946503, 199716, -93416, 2684, 36507, 149787, -883690, 622770,
--248571, 486942, -695785, -6215355, -3741990, 2647847, -6080063, -8597451, 1672353, 738734,
-1060857, 1256815, 1210644, -7391102, -1206886, 2146410, -4686346, 4924717, 4787815, 4108136,
--1661079, 377420, 1112397, 3146064, 717796, -106837, 619549, -2138894, 1985886, -772557,
--778463, -1005559, 6073084, -3623342, 2102387, -2287070, -1969243, -2054068, 1611687, 3321084,
--3543885, -1767379, -1919850, 2430415, 2289218, 3692598, 2510409, 492848, 3236258, -2756295,
-1945620, 739271, 845572, 6776922, 1603633, 3350611, -5561446, -1502165, 2294050, -2783139,
-2639258, -1203128, -2046552, 724239, 4067334, 2742337, 1876364, -995359, 833224, 3030636,
--3667365, 4837744, -659278, 3964792, -1610613, 3271155, 3906273, 3288871, -1836635, -4880157,
--7202660, -4866198, 470299, -2553358, 4758824, 788663, 745714, 1272384, -3395709, -1052267,
--1527398, 1708323, -918586, -654446, 2096481, -2560338, -903554, 1013075, -1420560, 117575,
--1585380, -1267552, -1003949, -285078, -1690607, 10443750, 7504382, 6148783, 5117454, 5767068,
-2436320, -454730, -127238, -2141578, -638340, 7587597, -3311420, -3413425, 5236102, 3886946,
-5034239, -3518652, 1524713, -1330366, 1138166, 2243047, 3143379, 460098, -2293513, -1704565,
--2951180, -1054415, -1823214, -5381594, -651761, 4531728, -3526168, -613643, 1676648, -2772402,
--2510409, 2563559, -1382980, -3594351, -1924682, 2048699, -3069828, -3954054, -1801202, -1173600,
-1336809, -2758443, -5714991, 406411, -938987, -799401, 1660005, -4691715, -2281165, 88047,
--1953673, 2589329, -651224, 1118839, -8416525, -2551211, 4778688, -1875290, -4628364, 1385664,
-834297, 1311039, -1713692, -6677601, -3019362, 7523172, 526670, 2776160, 1606318, -1074816,
-2308545, 3138547, 1334661, -1549946, -3579318, -1074, 916439, -2718178, 1253057, -3524558,
--340376, -2245194, -1079111, -2974265, -544387, -1697049, -2139968, -1662689, 355409, -735513,
-410706, -806917, 324270, -1495722, 1104344, 586800, -383326, -267899, 1429687, -24159,
--471373, -1328219, -653909, -597537, -67109, 136902, 68183, 14810121, 9098351, 8611946,
-158377, 865973, 693100, -3520800, -7835631, -2953327, 5924371, -4465156, 2684892, 8012799,
-650151, -2524904, -996969, -1608465, -844498, 3249143, 4604742, 178778, 1359357, 1893007,
-3002182, 196495, -4210142, 1315334, -6786049, -2028298, -857383, -1870458, -1233729, 864362,
--1625108, -3543885, -2778307, -1263257, 290984, -1509144, -4119948, 4914517, -1841467, 377420,
--1278290, -3186866, 4010426, 11205570, 2684355, -3867081, 6599754, 1536525, -2054605, 2039036,
--1163936, -4283156, -2147, -1781338, 1646583, -3707094, -6485938, 279173, 1047972, -7812009,
-2313914, 1645509, 4350265, 2511482, 5757941, -1936493, -3935801, -2269890, -1246077, 2842195,
--1062468, -5014911, 3404299, -2434173, -4615479, 3151969, -4610648, -2484102, 1414655, -1634235,
-1553168, -1070521, -1923072, 1540283, 3852586, -877784, -1946694, -675384, -36507, 1381906,
-2697776, 804770, -830539, -999654, -1034013, -314606, 614180, -1959579, -726386, -565862,
-2960843, 1538672, 2085207, -340913, 131533, 1654636, 1068373, 806380, -125628, 290447,
--7620883, -12045773, -3698504, -6026913, 8631274, -1969779, -1056562, 3232500, -7967701, -5613523,
-4781909, -3860102, -3585224, -198105, -325881, 849867, 3150359, -1324461, 1433445, -2076617,
--1545115, -147103, -1367410, -3490735, -314069, -749472, 3645890, 3692598, 3237869, -4323959,
-2007360, 1465658, 6047851, -3047279, -226023, -2072322, -4628364, 6592238, -6252936, -3067681,
--2435247, 1557463, 5468567, -5059472, 5657009, -609885, 3049427, 4719096, 765041, 3639448,
--6735583, 1489817, -2540473, 354335, -7133941, 141197, -2458869, -6380174, -4907537, 391379,
-4713727, 256624, -3434900, 5375152, -1843078, 3115462, -421981, -6620692, 9280887, -5782100,
--1147293, -3284576, 2320893, 3777961, 2496987, 3486440, 7516193, 5746130, -955630, 1210644,
-3551401, 2248416, -2670933, 3828963, 2977486, -549219, 1694902, -3731253, -5158793, -539018,
--1658931, 2914135, -3021510, -616328, -2903935, -659278, -1330366, -419833, 878858, 1091995,
-601295, -114890, -724239, 1757179, 893890, -1787780, 1311039, 98784, -4463008, -385473,
--1599875, 2571075, -673773, -288300, 942745, -476205, 899796, 2019708, -123480, 1315334,
-1399623, -255014, 529892, 2842732, 3246995, -8528731, -12162811, 1367947, 1023813, 688805,
-7844758, -2533494, -8531953, 910533, 999654, -2245194, -484258, -7499013, -1474784, 945430,
-1124745, 8412767, -1460826, 7540889, -1809255, -1930588, 641024, -7458748, 3201361, -2802466,
-4564477, -1245004, -1909113, -2761127, -1342714, 282394, -5571647, 9677635, -6680285, -10846940,
-3264175, 516470, -7612830, -2237141, -14624901, 271120, -5196911, -52076, -5643587, -4573604,
-813359, 539555, 2542084, -4610648, 3717294, -5204964, -10089952, 1226213, 2820183, -3042448,
-3334505, -1711545, -5588826, -4919348, -6799470, -3215320, -704375, 1141388, -2018635, 6354404,
-42950, -1952600, 573378, 406948, 1341104, 1009854, 767725, -6048925, -5654862, 1229434,
-4049617, 2403034, 691490, -1314797, 5025112, 2775086, -2304250, -1694365, -5569499, -2286533,
-2523830, 1201517, -3023120, 1253594, -822486, -879931, -1402307, -1745367, -581968, -2310156,
--1738925, 981400, 492848, 1415729, 2434710, 208306, 2140504, 122407, -1358820, 2014340,
-1283658, -387621, 325881, -1126892, -1108102, -16643, 137976, -1264868, 94489, -377420,
--22549, 0, -240518, 1313723, -2052458, -321586, -584116, 118112, 763967, 1344862,
--18781356, -4739497, 763967, -4818954, -3489124, -6023692, 1564979, 2085207, 4292820, -3253975,
--3995393, -4561792, 2280628, 5031018, -2505040, -2188823, -1274532, -802622, 2411087, -10507637,
--2576444, 5898064, 1942936, -3095061, 1133335, 5222144, -504122, -1362578, 1846836, -354335,
-12878459, -5559835, 3158949, 1012539, -5407901, 1760400, 1221381, -6186901, 4363687, -8781598,
--840740, 7730941, 1714766, -245887, -1621350, -6008659, -5160940, 1362042, 3343632, -2273112,
-1633698, 6404870, 3193845, -2684892, 3969624, -5718212, -13400835, -1791001, -5880347, 3714610,
--3763465, 9510131, 4779225, -452582, -1553704, -12363600, 3905199, 4707821, -3778498, 7535520,
--5854041, 2291902, -9817221, 4549981, 3457986, -11201275, -7111392, -2304250, 2776160, 3709778,
-8168491, -1138703, -381178, 5288716, 1241246, 22549, -2349347, 1208496, 1241782, 1587527,
-1751273, 431107, -201327, -1019518, -1142461, -3019362, -2491618, 2010045, 1443109, 1035624,
-2512556, -1009854, 1222992, 1272384, -616328, 2149631, -267899, -17180, -492311, -2426120,
--511101, 2800319, 649614, 2081449, -751082, 768799, -1078574, 3330747, 338766, 2795487,
-1254131, -1359894, 751082, 4720706, 7927436, 18341658, 19556596, 3929358, 5861020, 63888,
-2795487, 184147, 2064269, -5224291, 2431488, -3245922, 4336307, 4109747, 10071698, 1559610,
--2032593, 6317897, 4555887, 7597261, 379031, 4728759, 2749853, -2335925, 2366527, 11304354,
-1801202, -4873714, -2627446, 8366597, 5173825, 4027069, 7777649, -5976447, 2336462, 9270687,
--9230422, -11031087, 3649649, 5919539, 9624485, -4167192, -7179575, 5827197, 2113661, -870268,
-3619584, -1457068, -878321, -52613, 13696651, -4951561, 2777233, -3302830, -2122251, -1612760,
-7141457, -944893, 15939697, 7645042, -7654169, 8909373, 1941862, 4153234, 1914482, 1935957,
-2171643, -2917894, 5376762, -12609487, -3333432, 5770826, -12845173, 4398047, -10380399, 2437931,
-11452530, 2832531, -79994, 3148211, 1087701, -3083787, 769336, -3277597, 373125, 2639794,
--7723425, 4423280, -1409286, -1837172, 513785, 2394444, -2031520, -3077881, 1030792, 2781528,
--1479079, -2604361, -2571612, -1506460, 1061394, -1840394, -1657857, 1731946, 2410551, 1130113,
--1292785, 1576790, -1155346, -3980361, -1813013, -64961, -2038499, 1131724, 808528, 1661616,
-2692945, 3967476, -1897302, 5597416, -1981054, -3280281, -1135482, 1980517, 408022, -3335579,
--2182917, 30239790, 5273146, 4748623, -8848170, 13032005, -4322348, -580357, -3419331, 715112,
--8469139, -654446, 4021700, 941672, -6896644, 8595303, -2058363, -4480188, 1262184, 2684892,
--8880919, -12520903, 5211406, -5179731, -7364795, 1438277, -13959, -3811247, 6543920, -6581501,
-2193655, 6326487, -1094680, 9225053, 2940979, -11724724, -12208981, -5249524, 824634, 2212445,
--9640054, 3481608, 3553012, 1824824, 3147137, 4254702, -10019622, -5032091, 2952253, -11226508,
--4019016, -282931, -11573326, -6235219, -3932580, 2337536, -5908802, -12635794, -5945309, -6758668,
-14664092, 7050189, -1152662, 1988033, -3876745, 11614128, 13996762, 1555315, 9396315, 6808060,
-2738042, 1669669, -5354214, -1184337, -4723927, 6765647, -8877697, 290984, -2105071, -13700409,
--4106526, -1983201, 7473243, -6784438, 3767760, 3190087, 1434519, 707059, 3263638, -3280281,
-2612414, -1980517, 2895882, -730681, 4264366, 1230508, 401043, -2222109, -784368, -5353677,
-2904472, -746787, 4582730, -4369056, 28454, -455267, 2746632, -479963, 2457795, 1025423,
-1354525, 1288490, 719944, -2927557, 3419331, 4303557, -2153926, -3103651, -3599183, -1508070,
--201863, -1307281, 405338, -20629802, 13928042, 22355304, -16768626, -9987410, 4606353, 4010963,
--3401614, 7346005, 1998234, -6250251, -7636989, -156229, -2452963, -5452998, 2793339, -2506114,
-359704, 6184753, -8315057, 1753957, 1119376, -4936528, 712965, -7841537, 1537598, 11520713,
-5880884, -1148904, -3693672, -938987, -6566468, -6992744, 3452080, 5831492, -1828046, -3215857,
--2283849, 3491809, 5815386, 2794950, 10646150, -5713917, 4389994, -2748242, 1062468, 6645925,
--2370285, -2087354, -12639552, -1927367, -9782325, 4940823, 3383361, 12618077, -10783589, -3968013,
--10436234, -17194902, -2870649, 7195681, -11865384, 2652679, -1294933, -8657043, -10203769, -12873628,
-17330730, 670015, 10303090, 7574175, 8756901, -3935801, -11488501, -8697846, -10749229, 3782793,
-8471286, -8049843, 3835943, 9028021, -6069863, 1051730, 7333120, 8414378, 2047089, -2987150,
-3629247, -1484448, 1952600, -8928163, -787053, 3455301, -3003256, 1167694, 591095, 404801,
-2037962, 3393561, -3504157, -1244467, 2092186, 3025805, 883153, 1480690, 2976412, -612570,
-3213709, -2652679, 2215130, 3229816, 3621731, 416612, -1312113, 2814814, -2233383, 711891,
--471373, -1920387, -914828, -1894081, -473520, 916439, -2318209, -6519761, 2353105, 3587908,
--16137803, 11657078, -1468342, -6052146, 9983115, 3525631, -9722195, -13922136, -5378910, 35970,
-284005, 666257, -4963372, 15816754, 6555194, 4773856, 3651259, 4968204, -4816269, 1189706,
-3142842, 2304250, 14212047, 1471563, -21182242, 2597918, 8813273, -7912404, -11909944, -2533494,
--6467684, -3833258, 990527, 14963666, 8968965, -1531693, -344671, -4530117, -13116830, -4450660,
--10834592, 7719667, 10581189, 120259, -5877663, -2157147, -2429878, 4836133, 6737730, 7132330,
--16522202, 3171833, 572841, 1444183, 11492259, -6719477, 4708358, -6133214, -4405026, 1197759,
-7523172, 13517873, -2141578, -8766565, 2840047, -15769509, 12591770, 6780143, -1551557, -6521908,
-3409667, -3652333, -7770133, -6481106, -7042673, -3376918, -1470489, 468151, 6676527, -5101348,
-18344880, 762357, -2771865, 1050656, 5484673, 246424, -192737, 5945309, 4109747, 3067144,
-246424, -2883534, -2211908, -685584, -384936, -2659659, -7415798, 3940096, 3768297, -2808909,
-1064615, -4125853, -3051038, -1423245, -767725, -103079, 6602439, -1345399, -2010582, -1058173,
--333397, 4036733, 7355132, -2376728, 4149475, -1097364, -4508642, 5291400, -4885526, -3986804,
--2577517, -4023311, 926639, 3124052, 1656247, 3203509, 119185, -1179505, -222265, -3251290,
-2036888, -1855426, -6988986, -1709934, 7741142, -13870060, -3935801, 8979703, -11275363, -1156957,
--1119376, -1501628, -13132399, 13056701, 5661841, -9087077, -1561758, -3894462, -3328063, -19956566,
--2797634, -9115531, -22526030, 4818954, 3489661, -10242960, -8470749, -12071542, -13744432, 11724187,
-6617471, 12342662, 442382, 25894358, 1222992, 13528610, 18614388, -2150168, 5695127, 19177566,
--12908524, 5919539, -7776039, 13195213, -4136591, 25691420, 11676942, -7989176, -12070469, 2012192,
-5960878, 10720238, 2886218, -9283572, -2136209, 8511015, 19092740, -7965554, 12806519, -4656819,
-7817914, -14937896, 5905043, -8118562, 5915244, 983011, 1973538, -2705293, 11802570, 16478716,
--29925184, 9090298, 6238977, 4456029, -5456219, 3948686, -21468930, 1840930, 385473, -3337727,
--8200167, -7119445, -7092602, -2056753, 15321222, -8813273, -5178120, -12402255, 456340, 11018202,
--5510980, -6148246, 8530879, -303332, 6196564, 1381369, -1510755, 156766, 2736968, -5922223,
-3008088, 1201517, -5093295, -4263829, -2488397, 1498944, 3457986, 3558917, 10385768, -1095217,
-7867843, 3870303, 2567317, -5182415, -1609002, -7828652, -3532074, -1300301, -2619930, -3714073,
-4358318, 2529199, 5206037, 6671158, 1256278, -1500554, -841277, -4257923, 2596845, 14920180,
-15857019, -3458523, 16487306, -846109, -3438658, 1302986, 9270687, -3470871, -4198868, -1925219,
--11718818, 1924682, -3358128, 18461916, 12152610, -8798777, -9322763, -17526150, -6416681, 12729209,
-22930294, -10434623, 7083475, 1537061, 3017752, 12492986, 8940511, -17955110, 3566970, -6409165,
--3649112, -7406134, -4048544, -7816304, -17307644, 3034931, 11573863, 4439923, 27108760, -6586869,
--3739306, 18837726, -6867653, -1046898, -4204236, 4993437, -20686710, -13272523, 7186554, 15477988,
-22548578, 26919782, -19782082, -10257993, -1040456, 9008694, -890132, 30544734, 8497056, 4570382,
--23698018, 1650341, 170725, 11464341, 14950244, -11136850, -3696893, 4679904, -4860293, 5906,
-16986596, 6135898, -16797618, 4389994, 8857833, -8057896, 26418344, -9129490, -14128832, -19824496,
-14658723, -3165928, -16646756, -13186623, -3023120, -606127, -6624450, 404264, -7211787, 1414118,
--10040560, 714038, 4904853, -3450469, 3862786, 781147, -6072547, 693637, -96100, -1149978,
-647466, -4107063, 4987531, 68719, -2546379, 5723581, 5791227, 282394, -1598265, 2572686,
--5458367, -2245194, -4385699, -800475, 4504884, -3520800, 1971390, 4470524, -8209830, -2905546,
--1692754, 1385664, -1552094, 3572339, 7949448, -2210298, -4752382, -2279554, 5133560, 1496796,
-483184, 4156455, -2386391, -1664837, -1498407, 3672734, 31316218, 14855218, -8227010, -2637647,
--28894392, 2261300, 7649337, 2028298, 43103220, -5435281, -3260954, -18917184, -16356846, 6732361,
--13373991, -8152385, -8968429, -6015639, 10710575, -6972880, -12295418, -10586021, 963146, 10829223,
--13904957, 3158412, 6291590, 1422171, 15554224, -1776506, 1224066, -15776489, -22244172, -9131100,
-10198400, -12242267, 2981781, -10273025, -38836704, -20879984, 11647414, 866510, -22252226, 3466576,
-31008054, -1396401, -799938, -12069395, 6788733, -13321915, -23939610, 641024, 3644817, -9253507,
-4603668, 9051644, -2212445, -7790534, 6468221, 8422431, 15564425, -8909373, 11700028, 15025943,
-6324340, 26102664, 2937221, -16159814, 19017042, 1193464, 3196530, -3416647, -3809099, 11791833,
--11602317, -1616518, 28933584, 22732188, -14013941, 14572287, -4168803, 26892400, 11330124, -9242770,
--21404506, -868657, -7809325, -9236864, 6074158, -8313983, -222265, -2073932, -7457674, -12474733,
--2422362, 10699837, -11393474, 142808, -7060926, 1173063, 4515085, -4538170, -13332115, -2267743,
--6288369, 8237211, 4975183, -3163244, -8804683, -3576634, -9474698, 5834713, -4628364, 3219078,
-3791919, 5571110, 4414690, -7291781, -5191542, -8202851, 2517388, 5456756, 757525, 10748693,
-11335492, 6245956, 4645544, -22498650, -23877870, -28525026, 39322036, -21771726, 5166309, -1205812,
--12511240, 19969450, -23490250, 10159208, 41813656, 25741350, 5959267, -33907156, -1919850, -22371948,
--11365020, -20429548, -1957431, 5806796, -3695283, 16065325, -7740068, 2672007, 7924215, 22451942,
-3105261, 3099893, 27156542, -17889612, -2554969, 11985106, -5262409, -13874892, -9241159, 13692356,
--11958263, 5742372, 23240068, -6474663, -41962368, -2563559, 10473815, -51515984, 31060130, 23970212,
--19569482, 31947578, 21626234, 14256070, 33112588, 712428, 16997334, 1962800, 1974074, 11938398,
--21103858, 21019034, 28515362, 21973052, -22719304, -4438849, 31341450, -15235860, 24840480, 22814866,
-53289808, 32174674, 1782948, 3689377, -6950331, 6690486, 9235253, -30920006, -44302588, -15411953,
-3787088, 1650341, -6423124, 34622268, 16256451, 6522445, -15293305, 13728863, -10859825, -13677323,
--7059853, 15673946, 18185428, 3521873, -3365107, -3517578, 466541, -21451214, -5162551, -5540508,
-6853694, 3985730, -11218991, -8480950, -611496, 16909824, -4807142, -6518150, 351650, -6750615,
--17235704, 8575976, -3798362, -6704981, -10154913, 59056, 5581847, 1119376, -30578020, -1727651,
-14895483, -2280628, 481573, 2506650, 4229469, 12776991, 10040023, 446140, -271120, -4907537,
--1715839, 24009940, 29700236, -58271968, -53360672, 23273354, -15335181, -16805134, -6995428, -20308752,
-7216082, -32898912, 41539848, 15617038, -17307108, -372052, -16929688, -12733504, -13645648, -15623480,
--10123775, -39684424, -35655208, -6651831, -8095477, 2268280, 3390340, 6899328, -2501282, 5061619,
-6649683, 17656610, 19559818, -7377680, -9875740, -11581916, -9816685, -22458920, 33427730, -11805791,
-8158827, 24814710, 23466628, -8907225, -10043244, -18701362, -12270722, -15357192, 25693568, 2731599,
-3176128, -31793496, -11268920, 45938972, -4451197, 42768212, -8637179, -16035260, -10104984, -18126372,
--18551574, -3413962, 207232, -25523380, 2145336, 12183748, -1031866, 9573482, -58887224, -23810224,
--16486232, 31259846, -7472706, 5135171, 10683194, 49080740, 13928042, -4537633, -5001490, 42261404,
-25534118, 6222871, 8247411, -2177012, 33564632, -14004815, -19142132, 10334765, 15775415, 28003186,
-26064546, -15289547, 17688286, 13217762, 14253923, 4227322, -10193568, -20143934, -17093970, 10632728,
-14751602, 7866770, 5302137, 17407502, -1721208, -4836670, -1001264, -1469416, 9069360, 5432060,
-11836393, 20682416, 14607721, 23660974, 6387153, -21314312, 6752763, 5668820, 18501108, -369904,
-14496051, 6167036, 13939853, 301185, -26785564, -3482682, -5893232, -1820529, -30786862, 63946696,
--20648592, -12836047, 37896644, -24022826, -36273148, 33646236, -48828408, -14120242, 11511586, 8386461,
--34059628, -13357348, 29237452, 190589, -5761162, -19013284, 22948548, -22762252, 1509681, 18067854,
--6027450, 16589848, 119185, -8189966, 5557688, 3943317, -9889699, 15774878, -8677445, -3514894,
-4712116, -308701, 982474, -2960306, 4684736, 10012106, 16183974, 23295902, 11427834, -9619116,
--2682207, -14773614, 13659607, -4912369, -21345988, 5015448, 91805, -12160663, -29180544, 20550882,
-1560147, -13503914, 32991254, 1899449, -10205379, -5949604, 48863308, -45703284, -49195628, 30003568,
-46837156, -86405616, 428423, -31983548, -29031832, -12853227, 31449362, -24286430, 41618232, -5889474,
--1019518, 55919400, -15781857, -43290584, 53761180, 63311040, -61478700, 68732360, -23152022, 1693828,
-56829396, -19017042, -21735756, 15581068, 15282031, -7307887, -2860985, 10545218, 2111513, 1345399,
--13512504, 18687402, 121870, -1222992, 372052, 2507724, 8458401, 5106716, -6801081, -7454453,
-7878581, 18633178, -16115254, -14958834, -3998078, 19510962, -659814, 10421201, -2801929, 4342749,
-108985, 4444218, -2192581, -3431679, -23021024, -9687836, 5816997, -8335458, -2281165, -8201777,
--12412455, 19476066, 12228309, -33921116, 13589813, 17575006, -3391414, -148713, -11884711, 17394618,
-38050188, -17785460, -24105504, -6626598, 6039798, 38674032, 28889024, -10097468, -3077344, 12076911,
-31471372, -10482941, -1763084, 19302120, -24736328, -21269752, 16958142, -11293617, -8426189, -10400800,
--935766, -17135846, 1374926, 11746736, -7198902, 9070971, -8058433, -5069135, -5075041, -23701778,
-3547643, -9602473, 14549202, 31022548, 1734630, 15457050, 12850005, 1176821, 5889474, 9702331,
-32948304, -23301272, 15936476, 13982266, -16833050, 11272679, 11014444, 3494493, -14936286, -29933238,
--30234422, 9970230, 10878615, -11437498, -50545860, 41115720, -13824426, -22165790, -12774843, 41359460,
--19437412, 45229764, 24159, 15187004, -42562052, 40240084, -18420040, 17823040, -5429913, -58272504,
--18344880, 11468100, -35974648, 36999532, 3990025, -53426172, -60051696, -30914638, 41766408, 10306311,
--37273872, 45449880, -48877264, -2412698, 88286808, 13205414, 5028333, 8773544, 6701760, -23175106,
-24138254, 1786170, 12338904, -15555835, 23202488, -12817793, -12207371, -10239202, -1293322, -641561,
-7033009, -2332167, -3403762, 4549981, -8077223, -16724066, 15217069, -5619428, -2609730, -19845434,
-9072045, 4403415, 8610336, 2354179, 9934259, -7368017, 2345589, 27445914, -3192235, 285615,
-14552423, -15604153, -3285113, 802085, -1561221, 10673531, -11041287, 11983496, -4191888, -31039728,
-2005750, -8117488, 9125195, -10331544, 12004970, -19273666, -36839544, 155156, -39133056, 10743861,
--3497177, -6998649, 13070659, 21617108, -13874355, 3105798, 23742042, -18612240, 32206350, -4294431,
--35455492, 30411590, -14638859, -6500433, 27066348, -34686156, 9135932, 594316, 12579422, -5443871,
--12743705, -52939232, 12135430, -21845814, -53192096, 64297272, -43289512, -18022220, -8601209, -14628122,
--32676112, 18341120, 44362180, -27451820, 12446278, -39824548, -22540526, -22686554, 20045150, 3621194,
-58214524, -10005663, -4864051, -17358648, -50228568, 68719, 24410984, -18551038, 20490216, 24661702,
--20807506, 2090039, -17744658, -74177840, -38924752, -22820234, -77961176, 49844168, 65639448, 30890478,
--66104380, -53117472, -118581896, 17160542, 140966192, 65222300, 24903830, -37044092, -130065032, -29527900,
-30109868, 88916024, 89147952, -60568704, -51250772, -23785528, 11633993, 6155762, 96846680, 1641751,
--11803644, 7897371, -9600863, -23633594, 34070364, 6129992, -7305740, 18867254, -15446850, -26361436,
-18700288, 16195248, -44914084, 30264488, -6719477, -9883257, -23929948, 25419764, -24179056, 29092498,
--14308684, 29777008, -35100084, 14052596, -9810242, 472446, 25376814, 41511396, 11761231, -15420543,
--10966125, -2581275, 22942104, -3663607, 32989106, -25796648, -20305532, 9495099, 32703492, 3846680,
-19938848, -55810952, 40487048, -7945690, -8863202, 1005022, 18234284, 345745, -3493956, 13492640,
-4639102, 4494147, 21510270, -13631689, -151934, 11170136, -3894999, -2030446, 13562433, -12593381,
--3056943, 3814468, 21319144, -14095546, -10006737, 11934640, -566936, 6699075, -21124796, 27702540,
--6608344, 9347459, -6060199, 3567507, 15090904, 6642167, -3554622, 12986370, -4957466, 13125420,
--10358387, -776852, 13534516, -3125126, -5653251, -27354110, 2752537, 21137144, 2189360, 9904731,
--13872207, -4398047, -8319889, -8702141, -3599720, 15289547, -5617817, 9315784, -12087649, -14403710,
--6218039, 3419331, 27925878, -10732586, 12676059, 835371, 2739116, -13676250, 7425999, 14512694,
-735513, -13222057, 10167261, -8812199, 6798933, -5378373, -3940096, -5145908, 1844152, 10178536,
--5181878, -2617246, 4656282, -613643, -7789997, -1660542, 7543037, 6443525, -6763500, 1134408,
-6887517, 281857, -4278861, 1114544, -6807523, 5050882, -475131, 2579128, -3121904, 1312113,
-4365835, -2214056, 5124970, 984084, 4669703, 3597572, -7684770, -7755101, -2675765, 13538811,
--8674760, 9403294, 7482907, -5510980, -14035953, 10593537, -9028558, 11970074, -1165547, -1999307,
--4974646, 1984812, 1949378, -740882, -1642825, 1003412, 53126060, 10568304, -28496034, -20215338,
--31471910, -9958419, 6036577, 16723529, -5236639, -6734509, -5835250, -5586679, -5319317, 7654706,
--3896609, -1047972, -1703491, -5514738, -1343251, 8413841, 1180042, -2405719, -8410620, 9654013,
--12513924, 7366943, -4484483, -12235288, 27917, 5614596, 6261526, 4946192, -7268696, 1642288,
--2348810, -3937411, 14738180, -13117904, -2427194, -503585, -936840, 1416802, -2228551, -7689602,
-6471979, -12205223, 11643656, -1673964, -8229158, 2869575, -4260071, 10423886, -6104223, -3631932,
-11181947, -10006737, 3465502, -4766877, -1135482, 8644159, -6171868, -2395518, 7678865, -5243618,
-1998770, 842350, -6288906, 15275051, -13326747, -1083942, 5832566, -3330747, 9701794, -4360466,
--2173790, 2598992, 3185792, -995359, 2131915, -806917, -4335770, 3921842, -26307, 433255,
-2098629, -221191, 3016141, -3008625, 871342, 666794, 663572, -321049, -1913408, 2541010,
--375810, -598611, -1815161, 2253247, 3561602, -1156957, -1849520, 1173063, 2075543, -2580202,
-2166811, -1932735, -1730335, 5786395, -891743, 2171106, 3005940, -3908420, 9734007, -3145527,
--523449, -436476, -5637145, 5876052, -3646427, -5775658, -25152402, -37796784, 49539764, 154542592,
-13232794, 13455059, -105353400, -133264784, -27765890, -28225452, 78500728, 133611600, 68563784, 13200045,
--48343080, -94068376, -66399120, -47472812, -2462627, 65096136, 95122792, 51408076, 11780558, -33348810,
--59278064, -33192044, -31935230, -29908542, 18905372, 38758320, 38200512, 38485056, 9254044, -16681116,
--6844568, -25353728, -39690328, -4395899, -11834246, -8008504, 35840964, 20709796, 29942902, 18161806,
--13572634, -32659468, -7864085, -21226802, -3277060, 14849313, 4552666, 8024073, 16199006, -8208756,
--11488501, -2643552, -6749004, 6538551, 10460393, 569083, 12912819, 7662222, -13550085, -13035763,
--20772072, -17764522, 792421, 21435644, 32492502, 15651935, 4112968, -7550553, -21744346, -3730179,
--24518358, -15043660, 11550241, 9060234, 27470074, 9254581, -6986301, 8094403, -14235669, -24707874,
-4353486, 6267431, 8288750, 7658464, -1542430, -3087545, -2360085, -10273562, -7870528, 5388574,
-8386461, 8431558, 8557722, -2370822, -8266739, -5481452, -3172907, 218506, -170188, -9354439,
-2397129, 11777874, 6357626, 7328825, -2181844, -11855183, -6885907, -7000260, 2737505, 8310225,
-5484137, 5132486, 2222646, -1700807, -8991514, -11849278, -5422933, 719407, 7320772, 11674795,
-7150584, 7191923, 4540854, -7441031, -13795972, -17713518, -11482595, 4935991, 9909026, 12851079,
-17835926, 5404143, -5371394, -9043591, -7332583, -5459441, -5149666, -5248450, -1543504, 3941169,
-7832947, 6881612, 5398774, 3718905, 799938, -5079336, -8754754, -8478265, -4339528, -273267,
-3159485, 3179350, 1852742, 339302, 267362, -92879, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
-1260573,
-3418794, 2694018, -905701, 2068027, 963146, 5925981, -1047972, -141734, 727997, 4341675,
--872415, -4496294, -2115808, -4315369, 1037235, -1525787, -380641, -530965, 1027034, 434329,
-860067, 2525978, 4592931, -2033667, -1154273, 937377, -2197413, -284005, 3578245, -1938104,
-4427575, 475131, -1617592, 2971044, -4054449, -1016297, -2831457, 3960497, -139586, -1438814,
--1094680, 64961, 3642669, 165893, 4388920, 1712618, -3648575, 2954938, -1607928, -2690260,
--2235531, 3036542, -651761, 9637907, 998580, 2436857, 1728188, -4465156, 44560, -643171,
-1151588, -2527588, -1742683, 5031018, 4085588, 389768, 1685775, -441308, 2535105, -4118337,
-401579, 3123515, 1937567, 333397, -338766, 2230699, -3527779, -1600412, 3717294, -2439542,
-776852, 1835025, 2191507, 694711, -2822867, -1854889, 1461900, 341450, 1449552, -430570,
-405874, -1386738, -95026, -683974, -427886, 812286, 1522566, 660351, -908386, -334471,
--619012, 374736, 926639, -544924, 680752, 520765, 965294, -128312, 1161252, -466004,
-281857, 730144, 907849, -7336341, -6628209, -4118337, -3757023, -3248606, 1245004, 4636417,
-9438728, 1816234, 2433099, -13422, -6740415, -2814277, -2503966, -6047314, 9420474, 2511482,
-3741990, 2594697, -2083059, 967978, 9020505, 3609383, -2121177, -164283, -2186675, 199716,
--4173098, 2522220, -1314260, -1859184, 360240, 4805532, 510564, 1685238, 3008088, 4169340,
--7441031, 111132, 1897302, 4348655, 6665789, -3688840, -744103, -1777580, 5562520, 3026341,
-3590593, -573915, 1670742, 11127723, -7006166, 1428077, 665720, -4669167, 2010582, -6531035,
--868657, 1705639, -1404454, -9856950, 2785823, 709207, -2656437, -2711735, -441308, -1458141,
-3353833, -3105261, -1371168, 1003412, -86973, -3018825, -129386, 2531346, -4119411, 400506,
--1110249, -957778, -1269163, -693637, 650688, -2376191, -1797981, 395674, -1424319, -1869921,
--1943473, -632971, -1283658, 2441152, -2094870, -555661, 360777, 1249836, -118112, 126702,
--715649, 191663, -1246077, 1000727, -1787780, 9912785, 914291, 3528853, -375810, -2715493,
-251792, 6950868, 3616899, 4468914, 7267085, -3239479, 109522, 6973953, 2280628, 3037079,
-435402, 816044, 4149475, -3772055, -1061931, 5171678, -3518652, 1990717, 3006477, -2275796,
-2218888, 6949257, -3283503, 2533494, 590558, 219580, 124554, -1511292, -4742181, -1534377,
--3968013, -477278, 1709397, 3295851, 3579318, -695785, -5958194, -608275, 8785356, -3305514,
-1802276, -1633698, -9170292, 5312875, 1387811, 3926674, -631897, 4479651, 4468377, -7902740,
-3165928, 165356, 2974265, -655519, -5454072, -339302, -734976, -1088237, -995359, 3425237,
-24696, 602906, 7153805, 1294933, 5696737, 98247, 593242, 998043, -3056943, -4970351,
-3389803, -3783329, 2244657, 1284195, -144955, 2240899, -2420214, -1493575, 1612223, -9127,
--4669167, 1429687, 606127, 519691, -905701, 1954210, 244276, -909996, 2328409, -614180,
--147640, -1992328, 727997, -1042603, 377420, -82141, -230854, 357556, -671626, 1132798,
-333934, -583579, 405874, -390305, 184147, -157303, -707059, 16291885, 9166534, 13938243,
-4534412, -5795522, 2971044, -2603287, 401579, 1340030, -11883101, -3185792, -3266323, 3054259,
-4680978, -1943473, -266288, 1552631, 383863, 8492224, -932008, -8944269, 2913062, -5180268,
-3971234, 4503273, 3614752, 5248987, -1263257, -1844152, 2142115, -1601486, -2072322, 1495722,
--1383516, 3140695, 4532264, -1979443, -6870874, 2192044, -6683506, -4328254, -841814, -13927505,
-135291, -2370822, 5450851, 5178120, 2511482, 8494372, 8568460, 3773666, 1905355, -644782,
-412854, 459025, -3892314, 7931194, -1067299, 2741800, -2529736, -3058017, -1101659, -4570919,
-4002373, -2127620, -1691143, 7777112, -6508486, -2019172, 1642825, -3005403, -913217, -264677,
-2723546, 3202972, 2156074, 5531381, -1831267, -1535988, -819265, -3520263, 1835025, 3544959,
-4886062, -111669, -754304, -1060857, 46708, 1037772, 1019518, -1489280, 1615445, -38118,
-1160715, 981400, -213138, -402653, 2090039, -622770, 1048509, 850404, 963146, 855772,
--617402, 774705, 3539590, -277562, 161598, 404801, 2608656, 457951, -603443, -1879585,
--6206228, -14286135, -5110474, -1483911, 2021856, -1764158, 4315369, -939524, 6973417, -6280853,
-3680250, -1541356, 12836584, 5408975, -2844879, -5489505, 2938831, -7817914, -4234838, 3046206,
--2807835, -4652524, 8858907, 3738769, -564251, -4083440, -5617817, 3804804, 2847563, 2849711,
--302795, -1350767, -3497177, 5276368, -6903086, -2896419, -383326, 4902169, 3654480, -308701,
-5293547, 718870, -2578591, 1134945, -2568927, -2557116, -3090766, 3823058, -2843268, -41339,
-4918812, 7505456, 7556995, 3178813, 2628520, -441308, 4246112, -1679332, 6139656, -1020055,
-3886409, 3118146, -2638721, 383326, -2883534, 3089692, 2559801, 1125281, -1040456, -5158793,
-3612604, -5619428, -761283, -6085432, 2188286, -381715, -663036, 1247151, -5299990, 319438,
-1291711, 8571144, 2687576, 1511829, 1946694, 3396782, 1394254, 1806034, -2596308, 1993939,
-1379221, -3389266, -359704, 280784, 675921, 1583232, -1783485, 1200443, -1178432, 337692,
--277562, 2245731, 158914, 372052, 191663, 825707, -513249, 2049236, -1129576, 835371,
-689342, 1980517, 826244, 2708514, -1948305, 1076426, -510027, 3107409, 1085553, 1178432,
--453656, -310848, 169651, -474594, -2021856, -6649146, -14017163, -11288785, 688805, -9644349,
--4773856, -13665512, -7299834, -8326331, 3299609, -4445291, -5943698, -2021856, 306016, -3511136,
--13302587, 3572876, -2369748, 1339493, -6033892, 5998996, 2199560, 139586, -5371931, -2379412,
-6774774, 4638028, 277562, -1010391, -4585415, 2845416, 1449552, 2945811, -5486284, -507880,
--4462471, -3980361, -4366908, 449898, 8778913, -7185481, 125628, -6846178, 671089, 3183108,
-3964792, -7220377, 7227356, 8807367, -2937758, -2101850, -1571958, -354335, 2767033, 3549254,
-845572, 2411624, -4332012, -844498, -1632625, 7572028, -2413235, 8380018, -254477, -2588255,
-6654515, -712965, -4046396, 1416266, 7211787, 8337606, -670552, -2632815, -4594542, 2858838,
--6118718, -623307, 4018479, -3133716, 1783485, -238908, -86436, -2526515, 4832, -1966021,
--3090229, -338766, 2518462, 1328756, 2507724, -1178969, -883153, -2084133, 746251, -1692754,
-2610803, 1318018, 3668976, 311922, -926102, -374199, -717796, -1364189, 1648731, -1214402,
--731218, 650151, 513249, -1887638, -700080, 437013, -3758, -1069984, -1838246, -170188,
--1700807, -1194538, -749472, 2080912, -220654, 674310, 579821, 19864, -1347009, -459025,
--10846403, -10730439, -12461311, 3687230, -10097468, -4160213, 9649718, 4751308, -10956462, -702227,
-79457, 4835597, 7118909, 12240657, -3329137, -4354023, -12027519, -14696304, -8730595, -2928631,
-5979668, -5940477, 2863670, -8451959, 8796630, -6332930, 7058779, -3249680, 965831, 1887101,
--1452236, -6244346, 9926743, -8555038, -464393, -4545149, 1187022, -5301601, 1197222, -21484500,
-315680, 10064182, -12847321, 2973728, 8719320, 3192771, -6709276, -691490, 10501732, -12934831,
--82141, 5370320, 5060545, 5052492, -1915019, -1822677, -8440148, -4109747, 3401077, 5791227,
-9084393, 11191074, -16432545, 6297496, -4989142, 1263794, -11599096, -4635344, 9473624, 2388539,
-1264331, -6282464, -36507, 6204617, 4423280, 2805688, -5766531, -3630858, 5912560, -1513976,
--2568927, -1219771, -4257923, 3660923, -741956, -3259343, -1322313, -1071594, 811749, -2080912,
--2338073, 863825, 765041, 989990, -1354525, -1828582, 1574106, -1141924, -4403952, -308701,
--1349694, 2713346, -2074469, 213138, 153008, 1132261, -2781528, -1452236, -1043677, 368830,
-2830384, -258772, -751082, 1862405, -30602, 1833414, -892279, -1855963, -797253, -3202972,
-675384, 56371, -2355253, 1309965, 12831752, 21485038, 11905649, 14014478, 2099165, 4993973,
-18786724, -562104, 532576, 12907450, -6327561, 57982, 3673808, 6448357, 10595684, -8619999,
--12359842, 6824703, 3746285, -7131793, 1506997, 4425427, -2774549, 2554969, -6666326, -1472637,
--7780870, 2413772, 8423505, 2655901, 7376070, 5751498, 5997922, -14635101, 744103, 17098264,
--2055142, -274878, 15883863, -2066416, -585189, 2386928, -2119030, -436476, 8783745, 13862007,
--13608067, -2183991, 2692408, -4139812, 6396280, -2128693, 613107, 1038845, -2979097, 12207908,
--1575716, -4403952, 4548371, -4567698, -7610682, 2651606, 8284455, 3168075, -934155, 1712618,
-7927973, 4179003, 7102266, 2177549, 876173, -49392, -6984691, -1412507, -5472862, -1219234,
--2301029, -12396886, -5386963, 833224, 8012262, -3262565, 3096672, -2099165, -6573448, 2947958,
-713501, -2058900, 1032403, -3971771, 201863, 1026497, 2458332, 3528316, -834297, 2284386,
--3013457, -4438849, -5345087, -535797, 4844186, -843424, -376883, 1647657, 268972, 564788,
-2610803, -1232656, -477815, -1392643, 3753802, 117575, -552440, 470836, -943819, -1968706,
--2396592, 1022739, 2135136, 2682744, 1468879, 1081795, -462246, -140660, 46171, -835908,
--3684545, 36210332, 5020280, -772557, -219043, -17377974, -5083631, 1678259, -4053376, 7668664,
-3373697, 12429635, -1582159, 20401, -2681133, -5253282, 8338679, 1568737, 3190624, 4683125,
-6528351, -6138045, -6182069, -7144678, -4972499, -4092567, -1793686, -9815611, -1925756, 15853798,
-7474317, -3015067, -1071058, -1862942, 1323924, 5616207, -2745558, 22655416, -3937411, -616328,
--10282152, 4109747, 9884330, -1699196, -7565585, -981400, 3808026, 7587597, 3278134, 10666014,
-15932181, 5190468, -338229, 9463960, 7732552, 2891050, 5976984, -19857782, 4610648, 525060,
--17569638, 6454799, -409633, -7570417, 4954782, -8028368, -7810398, 9319542, 7334731, -4139275,
--15544024, -7035694, 3739306, -8936216, -1817308, 3909494, 15278809, -2475512, 3094524, -7959648,
--16772384, -9009231, -8032663, -3641059, 8025147, 1098438, -5558225, -1685775, -3460670, -3383897,
-5139465, 4270271, 1660542, 3647501, 4340065, -3637837, -2658585, -2702071, 599685, -2963528,
--4389994, -4274566, 1879048, -1447404, -610422, 610422, 1607392, -3629247, 2087354, -778463,
--412317, -1605781, -561567, -2280628, 5754720, -3532074, -1204202, 1021129, -3646427, -3537979,
--2665027, 224412, 2945811, -19191524, 12086575, -2223719, -12400107, -491237, 11242614, -12862890,
--2732673, -10370735, 6854768, 2230162, -3841312, -4415764, -1615445, 6905771, 5253819, 2966212,
-7153805, 6307160, 610422, 7616588, 8703751, 3615289, 4799089, -8907225, -4399657, -6201933,
-5468030, 7185481, 2520609, 2222646, -4275103, -3098282, -2641405, -2298344, -7618198, 6925098,
-1534377, 449898, -8152385, -2418604, 12799539, -9259949, -9943923, -15155866, 5228049, -11367705,
-16429324, 19085760, 13080323, 7696582, 662499, 14918032, -7964480, 11724187, -1606318, -8366060,
-535260, 682363, -18034030, -7990787, 6648073, 1024350, -3130494, 2707977, 14961519, 10291279,
--17396766, -4382478, -359167, -465467, 4884989, 7357279, -456877, -13884019, 5471789, -8061654,
--25848724, -7500087, -5352066, 7976828, 12879533, 4377109, 528818, 652298, 272194, 1147830,
-9135932, 21475, 1254131, 1179505, 4553202, -8201240, -558883, 2503429, 5982890, 7344931,
-2480344, 4356171, 6389838, 8579734, 10953240, 4218732, 5357972, 5402532, 145492, -517007,
--2137820, -1378685, -73551, 2248416, -6609955, -1614371, 3644817, 6062347, -784368, 1693828,
--965294, 2540473, -93416, 3885335, -765041, 3725347, -2918967, 4773856, -44560, 4508642,
--16095390, 1604170, 1789928, 10067403, 2168422, 25721486, 4093641, -10616085, -3435974, -8938901,
-16252693, -20852066, -1864553, 14412837, -31498216, -12431246, -10631118, -11012296, -20892868, 1974074,
--3664681, -8960912, -1144609, 9881109, 1240709, 1309428, -6165426, 2448668, -2088428, 2433636,
-9127, 1561221, 8054138, -1959042, -502511, 16389058, -10604811, -2136746, 2828236, 14115947,
--7415798, 20156282, -6106370, -8144869, -17261474, -22457848, -6555731, -16716013, 8149701, -5073430,
--12553653, 1712081, 2024003, 9244380, 7816841, 3266860, -1592359, 28526636, 15785079, -1803349,
-2779381, 9767829, 7300371, 4743255, -3866544, -558883, -5122822, -6652905, -6156299, 4298189,
-22245784, -15557445, -3813394, -8861054, 16030429, -4226785, 4965519, -2290291, 7525320, -17621178,
--13181255, -4553202, 7485591, 2370822, 6463389, -3900904, 3986267, 6028524, 5294084, 2508798,
--1053878, -7519951, 4730370, 1762547, -6381248, -4480725, 3991098, -4201552, -3180423, -139586,
-4297652, -4003447, 5179194, -3251290, 7399155, -4128001, 827855, 2573222, 1345935, -3577171,
--6761353, 5230197, -2030983, -1531693, -528281, -716723, -2137283, 4958540, 6204081, 4292283,
-3796214, -753230, 2189897, 7104413, -3838090, 2797634, 1236951, -185757, 1568737, -479426,
-385473, -2594160, -12823162, -12326556, 6950331, -5527086, -23089208, 11432666, -6877854, 9128953,
--6635188, 11490648, 7839389, 9552007, 15322296, 2470143, 12968117, 5194763, 3364033, 8779450,
-3055869, 2395518, 650688, -384936, -8205535, 7312719, -16683800, 7291244, 1772748, -4807142,
--8977019, -257161, 6488622, -7482370, -3085934, -11178189, -4290136, -13755707, 903554, 7536594,
--102005, -1802813, -8678518, -15185931, -10972568, 11829951, 3998615, -4962298, -8667781, -2156611,
--651224, -14847165, 12600897, 11403138, -14553497, -14212584, -23203560, -3561065, -27770722, 7475928,
-10893648, 5681168, -1675037, -3573413, -2811593, 11399380, 11610907, 13300977, -8608725, -6920266,
-8979703, -3868155, -4083440, -16337519, 7322383, 13310641, 15344308, -3617973, 8442295, -4716411,
-2595771, 8330089, 4395362, -5904507, 2853469, -10093710, -6039261, -4198868, 1592896, 4232691,
-3746822, -4011500, -3557844, -1508070, -4410932, -911070, -6113349, -7767449, -3956739, -3249143,
--2262374, -1052267, -2137820, -3100430, 797253, -162135, 4614943, -1574106, 5863704, -1530619,
-4711043, 289910, -2452963, 1149441, 11735998, 3571802, 6055904, -2692945, -4541928, 935229,
-4369056, -4071092, 8562017, 8433705, 2576981, 3949759, 1922535, -9691057, -4928475, 22184580,
-25709674, -10188199, -537408, 6895033, -20735028, -3888019, 25865366, 868120, -28098750, 3055869,
-8685498, -705985, 9812927, 23078470, -9441412, 20857434, 11355357, 17799418, 5034776, -13676786,
--14507863, 11633456, -13161390, -20750060, -5983963, -24648280, 5456756, -1677185, 8781598, 7499013,
-5413807, 2763812, -956167, 678605, 12552042, 6096169, -24108726, -2837900, 8123931, 15512348,
-8687108, 19221590, 17383344, 13578002, -6386617, -2326262, 3631395, 35006132, -14624364, 2561948,
-7458211, 13730474, -5622649, -19464254, -4046933, -4908611, -11681774, -21526376, -23469848, 6454799,
--13147432, -9951976, 6120866, 18512920, 22844394, 433255, -1251983, -274878, 17556752, -11880416,
--6033356, 20738250, -22563074, 2510945, -17816598, -11973832, 1372242, 24049132, -3860102, -16443819,
-21488258, -21949430, 936840, -26497800, -2292976, -3323231, 7851737, 14746770, -10864120, -6198175,
--7665980, 1990181, 594316, -8203388, 4714264, -2421825, -2265595, -3494493, -2774549, -9713605,
-2245731, -4673998, 3505767, 2632815, -648003, -2139431, 5968394, 14496, 153545, -11454678,
-1785096, -964757, -311922, 10709501, 1145683, 3034931, -4393215, 1743220, -2502892, -6216429,
-2809982, -12685186, 4318053, -4363687, 9597641, -7541963, -942208, 1771674, -971736, -1960116,
--3864397, 7081864, -4575214, 7710003, -2633352, 4552129, 12068321, -14183593, -31756452, -7492571,
--11081016, -10463077, -6570226, 1474784, -10888816, -9210020, 3029563, 7074885, -6841346, 16811576,
--1834488, 11263015, -5700496, -671089, 9687299, -13858786, -8689793, -4718559, 14456860, -3490735,
--15904801, -6003828, 2385854, -7708930, 6584185, -10656888, -10729365, 15569793, 4508642, -12342662,
-7477538, -1490891, -9741523, -947040, -16141561, -13870060, 2734821, 24174760, 9731859, 7530689,
--19394462, 14923938, -1731946, 11433203, -6770479, -13493714, 6542846, -24887188, 20769388, -33694556,
--21370146, 7800735, 18532784, 1433445, 22194244, -9719511, 5808944, -15416248, 20818780, 6695854,
-15479599, 7131793, 3623879, -4893042, -5206574, -10176925, -3568044, -612033, -17969606, -10722923,
-1556926, -27217208, 1517197, 30562450, 9097278, 11005854, 2929168, -13866839, -10451266, -2828773,
--3360275, -986232, -5403606, -7295539, 6074695, 3996467, 5510980, 8633958, -8735963, 5667210,
--3326989, -4712653, -3570192, 7688529, -2613488, -8390219, -12720619, -88584, -7664369, -3604015,
--7857106, -2180233, -5155572, -3092377, 11950747, -6534793, 2723546, 3706557, -9610526, 10948409,
-90194, 6546067, 8612483, -4011500, 4253628, 1931662, -398358, 2663954, 7206419, -4184372,
--4100083, 6644852, 558883, 5282810, -23865522, -22257058, 2196876, 9173513, -11253888, -50353124,
--10525354, -257161, 6581501, -17031692, 1472637, -9496710, -1979980, -13568875, -15151571, 13460428,
--14734422, -18078054, -3057480, -12652974, -13916231, 4793184, -20215874, -6689949, 12197707, 27935542,
-22562000, -1075889, -13764833, 4830228, 20308216, -936303, 13506062, -3874597, 17013440, 9568650,
--17476222, 27816356, -21199958, -11193222, 18721762, -20627118, 6226092, -4736812, -15527381, 1834488,
-23533736, -4878546, -13833016, 8817568, 11548093, -325881, 4779762, -33839512, 8172786, 1422708,
-17076254, 8276402, -14846091, 14754286, -7909719, -1275068, -13758928, 7321846, 19832548, -4074313,
--3923990, -20315732, -28749438, 16368657, -2079838, 13191455, -15722802, 11978664, 9560597, -20447802,
-1180579, 18234284, 10407780, -9538049, -16450798, 14916958, 2429878, -12767327, 12133819, 2021856,
-5410048, 1461363, 5027796, 963683, 13557601, 210453, 4668630, -894964, 563714, 12061342,
--3878892, 322659, 2739116, -3131568, 2197950, 1102196, 8316131, -403727, -9252970, -1115081,
-1178969, -5481452, -1638530, 617402, -3694746, 12489228, -2939905, -7128035, 792958, 7954280,
-3730179, -402116, 4522064, 657667, -5187247, -631360, 13100187, 8962523, -8857833, -6469295,
-1893007, 18979460, 19041738, -51345796, 19358492, 26025354, -6622840, 18103824, -183073, 9381819,
--4168266, -10560251, -6820408, 10918881, 2576444, -14834280, -9635222, -1373853, -6956774, -3800509,
--1593970, 31758598, 6385543, 7030325, -19649476, 13673028, -13991930, 204011, 2461016, -21474836,
-10027675, -7963406, 1119376, -8696772, -15523622, 419296, 10304700, 29427506, 10584947, 3055332,
-18204756, 7703024, -2197413, 2987687, 459025, 5134634, 2982855, 19959250, 8737574, 6030134,
-3294240, -2564096, -6205154, -19658602, -16500727, 2287070, -2359011, -12131135, 1722819, 14737107,
--22487912, 21721260, 5599027, -8007430, -903017, -5822902, -1802813, 13154411, 5754183, 4281546,
--15280957, -3113851, -20885890, -6449967, 5816460, 7628936, 7609609, -9051644, -7260642, 16179142,
--1908576, -26244398, 3769908, -488016, -286152, -15501611, 5078799, 11575474, -1599875, 16665547,
-11243688, -5619965, -308701, -7245610, 9006546, -791885, 2968359, 1352915, -3791919, -3184718,
--695248, -3301219, 3652870, -7203197, -704912, 405874, 3885335, -3723200, -4310537, -5151277,
-280247, -1273458, 2861522, 1625645, -151934, -3228742, 3473555, 2603824, 512712, 3777961,
-692564, 2693481, 2516851, 3582540, -999117, -13187160, -498216, -3781182, -45634028, 70723080,
--69924216, -31622770, -15978889, -4773320, 40907952, 12021077, 45795624, 11434814, -9364102, 36082020,
-15612743, -12218108, 16915192, 15308337, 8560407, 14322105, 13890461, -12385612, -19997904, -14241038,
-2304250, -13096966, 6906308, 4101157, 8955007, -1402844, 6186901, 2084133, 22480932, 5323612,
-2108829, 6911676, -5251672, -327491, 7927436, -14121852, -20074140, -13654775, -11684459, 1981591,
-5939403, -14161581, -2315524, -8528731, -34795676, 17500918, -6301254, 8848170, -18309982, -6234145,
--16961900, -23244900, 8759586, 6138582, 22585622, -994822, 19897510, -8451422, 16664473, 1945083,
-23790898, -16884054, 14714558, 17673254, 9774809, 10242960, 853625, -7252589, 27860380, 18631568,
--1866163, 33606508, 8038568, 3914863, 14380624, 21654688, 245350, 9943923, 12498892, 5696201,
-5447629, -2538326, 1083942, -19681688, -5051956, -2677375, 3100430, 4098473, 3861713, 13042205,
-5750425, 6635188, -5150203, -744640, 5104569, 514859, 396211, -4702453, 5338108, 4526896,
-2548526, -3678103, 6790344, -1071058, 1175210, -5330592, -4963909, -2008971, 493921, 574452,
--3270081, -10844792, 2455648, 2313377, -2983392, -574989, -2829847, 783832, -4019016, 2631741,
--3874597, 132607, 9631464, -2787971, -9673340, 6207839, 4451197, 3765613, -2384244, -1313186,
-43176768, 3740917, -26011396, -38210176, -20270636, -15940234, 5127117, 31641560, -524523, -13367549,
-28294708, 2341294, -22870164, 20582558, 22315040, -4076998, -422517, -2152852, -20245402, 22509924,
-1264868, 12788802, -7140383, -17992692, -31481574, 5750425, 3972845, 4884452, -4444755, 9911711,
--10469520, -108985, -20177220, -25124484, 8828305, -3165391, 8002061, -3615289, -9327058, -22747758,
--35334160, 18138720, -19746112, 8122320, 16995186, -1170916, -9096204, -17330730, -12501039, 40705016,
-9247601, -1835562, 5289252, -5355288, -16445967, -5377836, 23594402, -22792854, -38379292, -13389024,
--12181064, -53763328, -42018200, -22608708, -23365696, 5793911, -242129, -18698676, -35874788, -14179298,
--16952772, -12161200, -9810779, -7211787, -21456046, -20556788, 16276315, -18254684, 1162326, 2785823,
--22479858, -3924526, -16401406, -20548198, -4982699, -3335579, 9555765, 4025458, 12847321, -13121662,
-3399467, 7568806, -32212, -17655000, -9972377, -11840151, -1120987, 5784784, -5975374, -8582418,
-15358803, 9143449, 11068131, -18047990, 3120831, -8772471, -954020, 784368, 1859184, -2143726,
-18315352, 1460289, -3146064, 2331094, 6467684, 9238475, 7654169, -1182727, 10895795, -7765301,
--4068408, -3330210, -14057428, -378494, -4226248, -18161270, -15120432, 2655364, 865973, -278099,
--4551592, -3978750, 29667486, -3526705, 28262496, 41829224, -7705708, -45412836, -43940200, -9514963,
-21079162, 2825552, -34482680, 27012660, -5892159, -22675280, 27796492, -52298744, -10961830, 164819,
--9233106, -8119099, 63356672, -26667988, 59373628, -3065533, 12510166, -4527433, -23421530, 37877852,
-10117869, 39386996, -27057220, -26843546, 8662412, -43211128, -12869333, -7079180, -29908004, 62126164,
--5390184, -64796024, -946503, -28986734, 8456254, 15732465, 25948044, 20856362, -25486872, -16166257,
--39677444, -11831024, -18355616, 16821776, 11289858, -2359011, 11749420, -8155606, -28134184, -11749420,
--32838784, 33506650, -25380036, -17787070, 30313342, 6942815, 51216412, 24589762, 4531728, 26792542,
--36134632, -13727789, -37309844, -36532456, -5535139, -5504001, -45528264, 46784540, -8202314, -36696200,
--54235236, 3339874, -10698227, 39573292, -2456185, 1850057, 5426691, -7346542, 7631620, 8739722,
-18767934, -12723841, -12517145, -8276402, 656593, -2499671, -2527588, -12028593, 13280039, 7946763,
-15823733, -3907347, -8420283, -7493108, -2696166, 2747169, 21161840, 22189412, -3561065, 1034550,
-12255689, -3586835, -27967216, -13815299, 1837709, 3667902, -2119030, -18070538, 6349573, -2306934,
--4173098, -20661478, 8105677, 6760816, 24481314, 3828963, 6089190, -1363115, 10113574, 1606855,
--5742372, -84701584, 43760348, 10011032, -18227842, -13848585, 27057758, 14794015, -16292422, -4533875,
--39785356, -16750372, 17002164, -34524020, 1388885, 6097243, -10455024, -23058606, -15606301, 30844308,
-12497281, -6305012, -44392244, 14963129, 28057948, 16056198, -34354368, -23036594, 224412, 37376416,
-3422015, -9166534, 5989332, 1108638, 19235548, -50039052, -43112344, 53368188, 8385924, 22268332,
--50765976, 10979547, -2195265, 37182604, -33331094, -6489159, -50886236, 17739288, 36852432, 8523899,
--22545358, 14516989, 53444964, -23992224, -25325812, -20046760, 7700340, 2139431, 46905876, -14055817,
-3714073, -25308632, 8408472, -27743342, -773094, 17681306, -34418796, 32968706, 10174241, -24076512,
--37237368, -22768696, -1734630, 33266132, -60151016, -13204877, 54744728, 7126962, -24447490, -11637214,
--17186312, 51347944, -5512591, -53940496, -6067178, -80531, -13085692, 21912924, -3561065, -7610682,
-16882980, -1556926, -10831371, -14177687, -1249299, -12505334, 4022774, 9102109, 12350715, -10885058,
--7725036, 11163157, -7086159, 10572062, -5359046, -10848014, 15093052, -8169565, 13627931, 18333068,
-1477469, -26656178, -1513976, -15899969, 6913287, 9802726, 6735583, -18629958, 512175, -14071923,
-13465259, -3969087, -7714835, -5381594, 3192771, 4492536, 55988120, 28586766, 13028246, 12884365,
-13590350, -8952322, -8645769, -18926848, 2538863, 6014028, 5102421, -1181653, -31994822, 15328201,
-6483790, -22429930, -18797998, -9766219, -10916196, 8247411, -8107825, -9565966, 2943663, -868657,
--16888886, 21805548, -15516643, -5167920, -16128139, -14894410, 10853919, -6397891, -1939715, 5420249,
-7162932, -1873680, -21519396, 5094905, 34121368, 7152731, -52947820, -3449933, -11313481, -16614544,
-11433740, 11910481, 27762132, 13169443, -34445100, 37535328, -9075803, -26156888, 78588240, -15868294,
--6454262, -25918518, -62027916, 28447716, 31889596, 10364293, 12199855, -53314504, 15737834, -4229469,
--12643847, -9439264, 2392834, -5120675, 8595303, 10082973, 2464238, -7947837, -14976551, 16107738,
-20553566, 28214714, -13707388, -2900714, 6272263, -4189741, 15079093, -36574332, 3808562, 6443525,
--16858820, 2815351, -13999983, 5581310, 528818, 4478041, -2090039, 1005022, 1677722, -738198,
--222265, -4863514, -3520263, 9769977, -5129265, -355945, 7492571, 1619203, 599148, 11957726,
--9575093, 7337952, 8847096, -502511, -1444720, -10074920, 8460012, -18860812, -5029407, 12380780,
-3839701, -5104569, -12507482, 3927748, -2692945, 15414638, -31584652, -76201848, -128408784, 10289668,
-130941208, 12390444, 278156576, 280774912, 102083856, 281765408, 163556656, -47663936, -4332549, -25672094,
--213511952, -177250080, -124206696, -221905920, -211710752, -60574072, -133194456, -116287848, 26462368, 36965708,
--28595892, 41084048, 60687352, -244813, 4424353, 120390616, 80583248, 30535070, 89302568, 166571712,
-78663936, 91740504, 206434912, 81456736, 37279244, 178235232, 172160544, 7387881, 110191680, 194452496,
-573915, 49251464, 115574352, -4691178, -94101120, 46541340, -19474992, -181646512, -169031120, -155659280,
--302008672, -446889728, -310791360, -434803712, -578893440, -408809472, -331022272, -447922688, -285800000, -137820672,
--132487392, -25393458, 133590128, 268937440, 304902400, 407628352, 555155648, 545121024, 516071456, 580908288,
-580420288, 473622144, 381617504, 408232896, 271632512, 96346856, 129574328, 31514860, -238117280, -153473136,
--161822016, -332800384, -280714752, -202219408, -236321456, -273893824, -170152640, -149067584, -206835424, -171030960,
--88569208, -142349168, -186926640, -112752016, -79222280, -148663856, -83610664, 19250580, -46332496, -53366580,
-59635620, -2390686, -75184480, -9943386, -47316580, -170468864, -118286080, -89816896, -157783680, -70967352,
-39364448, 75255880, 139774880, 232244448, 270479328, 283416288, 318271584, 338409600, 333651840, 307201280,
-286277824, 242683376, 193212320, 118089592, 88774824, 9987410, -76047768, -133461280, -212672288, -306159232,
--297311584, -253665056, -229517680, -199735312, -136616464, -115801448, -103142032, -75254808, -49491444, -45008036,
--19389092, -13026636, -9327058, -2040646, 16123844, 27232778, 36182952, 42131480, 49587544, 45695768,
-41121092, 24771224, 17101486, 3621194, 4120484, -1491427, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
-10251550,
--424128, -542777, 3265786, -1328219, 3730179, -1974074, -4786741, 1686848, 4809290, 712965,
--746251, 6389301, 217433, 266825, -2178622, -1212255, 9953587, 1387274, -6755447, -4993973,
-7020661, -637266, 7280507, 513249, -1382980, -682900, 5499169, 1090385, 11543798, 5085242,
-3178813, -619549, 2565169, 5223754, -1283122, -3890167, -4887673, -935229, 4408784, 3791919,
-5881958, 1653562, -3287261, -3418794, -1422708, 2457795, -786516, 1352378, -668404, -5232881,
--4038880, 1603097, 3823058, 2353105, -1891933, -2158758, -144418, 5708012, 2905009, -625455,
--1275605, 2646774, 1787243, 1136019, -2909304, 1464047, 2737505, -351114, 4180614, 4932770,
--8614631, 3164854, 1762010, 5624260, 1698123, 447750, 2567854, -1139777, -4015795, -1492501,
--2419140, -807454, -497679, 2445984, -122943, -1957968, 30602, 288300, 1461363, -1271847,
-237834, -246424, 522912, 747324, 523449, 964757, 97711, 595927, 2881923, 4487167,
-9698036, -7882876, 1774895, -1730335, 110059, -10129143, 1016297, 6094022, -9011378, -1867237,
-6018860, 15976741, 2288681, -107374, 1134945, -10005126, -323733, 7377680, 6546067, 181462,
--209380, 609349, 3435437, 5756330, 6063420, 6557878, -2929705, 1420024, -399969, 2530810,
-707596, 1633161, -10154913, -2779381, 1582696, 833224, -5616744, -176094, 3830574, -4463008,
-3526705, 3260417, 6010270, 2819646, -2299418, 3005403, 6717329, -3757023, -6067715, 2041183,
-1406602, 1190780, 3183645, -2683818, -4906464, -7306276, 5905043, -1081258, -1383516, -2372433,
-2591476, -83752, 3829500, 7579007, 1532230, 522375, -408022, -1820529, -5906654, 9193377,
-2260227, -1088237, 4747550, -737661, -5444945, -4778688, -1063541, 1816234, -7940858, 663572,
--4707821, -879395, 2422899, -128312, 1273995, -1410897, -2596845, -541166, 1312113, 1809792,
-1333051, -265751, -796716, -35970, 1297617, -673236, -1322313, -976568, -4754529, -4126927,
--5158256, -7329899, 4102768, -95563, -3502009, -1394791, -1789928, 1590212, -2909304, -5033165,
-1145146, -3273302, 8596914, 11426760, 9037685, -6254010, -240518, -413391, 2417530, -3471944,
-7090454, 4445291, -1011465, 3432753, 5377836, 434329, 1304060, 1875827, 5225365, -500364,
-1944547, 6251862, 637803, -71941, -2729989, 4498442, -6793565, 2744484, -949725, -1396938,
-4530117, -4375498, -550830, 154082, -5904507, 2454037, -1189169, 2735894, -188442, -2552821,
-1796370, 1879585, -308701, 5247913, -372052, 6054294, -87510, -4023848, -1787780, 233002,
--2744484, 5399311, 2820720, 4635344, 5259725, -2296734, -5199595, -3398930, -2147, -964220,
--1104880, 4285304, 5410048, -806917, -2957085, 1882806, 1480153, -2069101, -2821257, 972273,
--4054449, 992137, -72478, -125091, -1081258, -3841312, 875100, -1511292, 165356, 1722819,
-6442, -1961190, 992674, -2690260, -40265, 175557, -609885, 228707, 525597, -1469953,
-35433, 182536, -1735167, 372588, -514322, -104690, -906775, -22012, 498753, -15112916,
--3567507, -4704600, -8178155, 2790118, 2137820, -970663, 3798362, -522375, 3205119, 4535486,
--1995012, -5282273, -6665789, -2537252, -6207839, 490700, 683437, -2698850, 3520263, -3033321,
-1887101, -1384053, -3542811, -9405978, -3664144, 841814, 1477469, 2476049, -3500935, 2501282,
-3780645, 1254667, 8582418, 2138357, -221728, 6649146, -4699768, 3841312, 629750, -2233920,
--3183108, 4288525, 574452, 1356673, -10136123, -1867237, -3351148, 10183367, 4362076, 3668439,
-4130148, 4675072, 3696893, 5184026, -2745021, -1111323, 3175055, 5092221, -687732, 5946919,
--3204046, 1300838, -1293322, 5036923, 7540889, -11785927, 3085397, -2916820, 373125, -5561446,
--2862596, 927713, -1692217, -2390686, -4722317, -2129767, 2216203, -117575, 5040144, -535260,
-1939715, 4369056, 6944425, -265214, 1829656, -819265, 3228742, 512712, 1567126, -2164127,
--766115, 223338, 1471026, -971200, -1584306, 68719, 78920, -1228898, 176631, 697395,
-19864, 2017024, -900333, -957241, 220654, 1755568, -725313, 28454, -652298, 1040456,
-1615982, -239444, 1545115, 1689533, -424665, -746251, 5900212, 3622805, 2138894, -1119913,
-485331, 644245, 7620883, -6049999, 7645042, -1012002, 4166655, 7838852, -4904316, 6074695,
--3794604, 3119757, 1188632, 9215926, 4075387, -5124433, -8441221, 1928440, -6328098, 5212480,
--1296006, 6791417, -5054103, -816581, -4046396, 2346126, 1510755, 1947231, -503048, -715112,
--7366406, -3226057, 6065031, -4822712, -976568, 3947612, 191663, -3773666, 1239098, 348429,
--841814, -3270081, 6631430, 2121714, -9426916, -4248260, -7608535, -1323387, -6725919, -11602317,
--2636573, 5078799, 14316200, 3139621, 1191853, 6753836, -166967, -5265093, -4601521, 3777424,
-1480690, 2555506, 4143033, -10107132, -2473364, -9294846, -2028835, 2627446, -3672197, -8588861,
-890132, 3744138, -1821066, -3180423, -1495186, 1517197, -1256278, -339302, 1910187, -1158031,
--1247688, -1712618, -1236414, -3917547, 1441498, -1002338, 1847910, -641561, 1096827, 2516851,
-386547, -644782, -193810, -2073932, -1353452, -3300682, -2983929, 492848, 409096, 31675,
-1234803, 1982127, 1413581, 33823, 1293859, 1084479, -855235, 799401, 850940, -1700807,
-16449725, 3915400, 11910481, -5584531, -774705, -3973382, -916976, 12654047, -10794863, 3622268,
-1225676, 16571594, 8824547, 10996727, 2009508, -2736431, 5191005, -3619047, -13740137, 2612414,
-781684, 1610613, 10829223, 1028108, -6362457, -562641, 285078, 3432753, 3748433, -326954,
--1417876, 4418448, -5176510, -1428614, -2621004, -1330903, 1336809, 195958, 9539659, 1371168,
-7490960, 8631811, 2390686, 7612830, -564251, 2517388, 4630512, -5002027, -7464117, 932545,
-7518877, -12014634, 3576097, -9220758, -8610873, -5287105, -2386391, -8114267, -7853348, -8319889,
--4262755, -2075006, 5582384, 129923, 6688338, 1006633, -5507222, 8427263, -8767102, -3332358,
--3628711, -3608310, -4647155, -6128382, 8753680, 6802692, -3825205, 3337190, 2756295, 6911676,
-28454, 4990215, -2454574, 6274411, 3175055, -3714073, 216896, -3356517, 4002910, -3828963,
-427349, 3084860, 238908, 2358474, -670015, 373662, 1649268, -558883, -1676111, 1552631,
--446140, 263604, -3226057, -2687576, -2572686, -2024540, -333397, -1134408, -2226941, -110595,
-475668, -1058173, 271120, -83752, -8826695, -8984535, -5206037, -5535139, -2872796, -2308008,
--10597832, -8609262, -7184407, -1155346, -572304, -1387274, 7440494, 697932, 3866544, 5624797,
-6684580, 998580, 13018583, 16191490, -286689, 4656819, 3712999, -2017561, 7150584, 3805341,
--14544907, -533113, -5000953, 798864, 11333345, 4444755, -11621645, -3146064, 5240397, 5105643,
-761283, 14893336, -6142877, 5977521, 6143414, 6607807, 3941169, 7704635, -13101798, 4769561,
--5085242, 7763691, 337155, 3317325, -9825275, 7199976, 5296232, -1322850, 5129802, -901406,
-1465121, -146029, -5102958, 1289564, -3245922, 3173444, -4015258, 5004174, 1635846, 12606803,
-9510668, -3034931, 3427921, -10489921, 9134859, -2908230, 5621039, 9761924, 9692667, 396211,
-9899363, 6746857, 4707284, 4938676, 9100499, 835908, 2003065, -7455527, -1234266, -2186675,
-1746978, -5397700, 848256, -3952444, 1260573, -3937948, 1235340, -1491964, -2370822, -2353642,
-1650341, 95563, -1169842, -986232, -3090229, -1090385, 607201, -989453, -2213519, 261456,
-2401961, -5471789, -3285113, -3054796, 2231236, -3386582, 2088428, -54761, 1222992, -2819646,
--3984656, -989453, 799938, 8543764, -7612830, -2025077, 6843494, -3664144, 11708081, -3759707,
--8244190, 15507516, 21132850, 4663798, -8323110, 5801427, -4383551, 8642548, 5058935, -1924682,
--8829916, -5818070, -15023796, 3901978, 6419366, -13298829, -1570884, 7672959, 2018635, -680752,
-322123, -1663763, -7175817, 1706713, 8912594, 324270, 1931125, 3183108, 12621298, -8353175,
--221728, 9124658, -8374650, 12269111, 652835, 17259862, -14384382, -13018583, 7153805, 597537,
--1712081, 3675955, -1174674, 4773320, 2974802, 9577777, 9185861, -7621957, 1404991, -4997195,
--2969433, 5713380, -696322, -3009162, -1261110, 227633, 8629663, -16489453, 12553116, -3973382,
--5575405, 9250286, -7482370, 7406134, -10074920, -5720897, -1849520, -7548942, -2568391, -5345087,
--8372502, -5705864, 1860795, -1964411, -1991791, -173409, -3884261, -1301912, -554051, 5153424,
--239981, 702227, 2124935, -2248416, -827855, -1912871, 1292785, 2491081, 727460, -1105417,
-6148783, -23085, 4570382, -4988605, -3154117, -2987150, -2075006, 2274185, 1168231, 105764,
-3592203, -2712272, 2750927, 1012002, 2561948, 1367410, 391379, -3192235, -10470057, -7973070,
--3517578, -7476465, -11413339, -2385318, 4136591, 14014478, 2263448, -8439074, -15668578, -3255048,
-4844723, -2725694, 16799764, 5302674, -5959267, -11877195, -14872935, -28135258, -2311229, -3092377,
-10771241, 7992398, -5778879, 746251, -4474282, -2421825, 10108206, -252329, 525597, -1218697,
-11469710, 1959579, -3457449, -555661, -437013, 3122441, -10460930, -3275986, -4121558, 16547972,
-3843459, -17372068, 4473209, -9008157, -5090610, 2576981, -16193637, 5051956, 11654394, 10362682,
-8056822, 1987496, 3248069, -505732, 1707250, -10187126, 3696356, -15959025, -3077881, 9169218,
-3333432, 9393630, 9235790, 7664369, -5243618, -11772505, -10326175, -7956427, 2580202, 3213709,
-5447629, 5449240, 1165547, 3650185, 11521787, 16175384, -3888019, 5781563, -4034048, -4318053,
-4923643, -7060926, -2523293, 319975, -4511327, 4233227, -3922916, -3369402, -1893544, 1041530,
--1046361, 2321967, 18254, 3346317, -806917, -1976222, -952946, -1933272, -5129265, 1401770,
-2717641, -209917, 1777043, -455803, 2440078, 4742181, 4481799, 3548717, -3639985, -1791001,
-3440269, -1014686, -1416802, 369367, -612570, 3530463, -818191, -155693, -568546, 8240969,
-14570140, 16887812, 12199855, 20875152, -9774809, 14837501, -12718472, -9959492, 10975252, 14049912,
-16574279, -17112760, -113280, 4318590, -12695923, 6010807, -5591511, -8980240, 10226854, -13324599,
-14443975, -13697188, 13529147, -9830643, -3644280, -897111, -17942226, -2484639, 19735912, -5050345,
--14145475, 3024194, 9149354, -10294500, 5075041, 21368000, 11461120, 4327717, 9423158, -11299522,
-7516730, -6787122, -19495930, -5902896, -5124970, 1445793, 8790724, 10905459, -4867272, -8533563,
-7731478, 54224, 5907191, 3713536, -3214246, 1062468, -7786776, 1175747, 2415382, -107374,
-2492155, 17571784, -2228014, 1733019, 4975183, 1041530, 2108829, -8948027, -9837623, 6787659,
--11701638, -15832860, -16654273, 12896713, 8300561, 2473901, -956167, -1934346, 6105833, -992137,
--4715874, 5898601, 16195785, 10970420, -4359929, -2783139, 4971962, 2889439, -1204738, -2598992,
-1773285, 2268280, -748935, 639950, 8757438, 2084670, 1192927, 3429532, -2941516, 614180,
-2736968, 5851893, -639950, 389231, -5827197, 1830193, -3070902, -2222646, 5931350, 4787815,
-233002, 3743064, -3345243, -1615445, 1721208, -6979, -1817845, -3358128, -3668976, 2245194,
-939524, -1603097, 1964948, -13536663, -21455510, 7627862, 27899034, 13638132, -5213554, -21576842,
--7478075, 1364189, 3024731, -4201015, 10602127, 7133404, -7820062, -4062502, -1036161, -14277545,
-19840064, -9038222, 7077569, -1662152, -4658429, -17391396, 5712307, 3606162, -2151779, 2097555,
-7804493, -2843268, 19405200, -4344360, -2939905, 16168941, -1786170, -11609833, -10361072, -20054812,
-2778307, -4452271, -6208375, -4371740, -14689325, -6160594, -13754096, 1473174, -12102144, 10962367,
--6827925, -222265, 3436511, 1365263, 6359236, -5819144, -14858439, 6487548, -1683627, 3711926,
--3296924, -1493575, 475131, 14351633, 21494164, 5842766, -6700149, 7431367, 7828652, 8541616,
--3466576, -7155416, 10983305, 5202279, 14665703, 3425773, 3949759, 441308, 4442607, 13196287,
-18026514, 8878234, 3084860, 6789270, 2893197, -3721589, -12265890, -7772817, 1452773, 6009196,
-993748, -266288, -4559645, -1664837, 2582349, 1764695, -9680856, -1795296, 2254321, -353261,
--4792110, -3996467, -5362804, 1088237, -897648, 3759707, 6956774, 4124242, 286152, -2228014,
-4280472, 5148055, 399969, 1770063, -6735583, -175020, -2240362, -6890202, 1530082, 1348620,
--6161668, -559420, -1394254, 2431488, -2354179, 5942624, 96100, 8131447, 41477572, 1202054,
--11297911, 34826816, 17395154, 15510201, 29985852, 30183956, 8435316, 9746891, 7388418, 32788854,
-1520418, -11274826, 13911936, 3227668, -12885976, -14097693, 12368969, 12373801, 23246510, -2065879,
-1530619, 545461, 3036005, -13678934, 15482820, 11124502, 4633196, -10571525, 16394964, -4788889,
--1056025, -21772262, -4985920, -1429687, -1580548, -11371463, 7416872, -10560251, -6362994, -6087580,
-2952790, -7242389, -10324028, -13810467, 14653892, -10454487, 15596100, 7218767, 12773770, 4241817,
--13385266, -430034, -21403432, -9592273, -11758010, 4664335, -14927696, -7809861, -2879239, 317828,
-15073188, 1788854, -2599529, -24262270, 9482751, 8464844, -789200, -55298, -12589623, 9651865,
-816581, -10464688, 28735478, 6663105, -3991635, -201863, -11891154, 2080375, 14281840, -3694209,
--1429687, -15953656, -9764608, 5983963, -2489471, -7505992, 9157944, 5886790, -9824738, 8673150,
--3561602, 2843805, -3453691, 8493835, 1555315, -1174674, -16106, 2163590, -11797201, 265751,
--4518843, 3564286, 3702799, 5788006, -4998805, 4261682, 2841121, 2618856, 3978750, 5140002,
--625992, 3994857, -5823439, 9906879, -4686883, 8405788, -5986648, 3803731, -12678743, -23251880,
-7140920, 7002944, -7194607, 15134928, -16735340, 18178450, -13114146, -7638063, 5851356, 4206921,
-46916612, 18331994, 7028177, -29278256, -779000, -6949257, -15518254, -4509179, -5672041, -5136781,
--1737314, -24347632, -468688, -9212168, 301721, 11853036, -12915504, 15381352, -5042829, -17023640,
--15188078, 12185359, 9347459, -3807489, -8385924, 15542413, -8386998, -7920994, 12215961, -348966,
-3758633, -12586402, -425202, -7400229, 15668578, -2362232, 22476638, -8407398, 3376918, 6773701,
--643708, 860067, 6855842, -14492830, -2325725, 18471580, 1496259, 5070746, -173946, -14977625,
-6400038, -10455024, 5322002, 16149077, 20946556, 22848152, 24050206, -5188321, 8438000, -191663,
-12903692, 29154238, -32022740, 24894704, -14807437, 6692633, 20006494, -12624519, 1282585, 6287296,
-5450851, -1490891, 13922136, -5393405, -4412542, 5895380, -3349001, 13424994, -1999307, 5093295,
--10825465, -1750736, -333397, -8704825, -3675955, -10981695, 103616, 3188476, 1056025, 12214887,
--4041564, 836445, 1302449, 5201743, 1260573, 5247913, -7249368, 5459977, 1655173, -288300,
-3860102, 5356361, -6101538, 5565204, -11716134, -10311680, 7191386, -3439195, -8320426, -1165010,
-3371013, -5301601, 9389872, -11156178, -24824374, -4734128, 4915590, 418222, 5713380, -18303540,
--2580739, -3693672, -26239566, -20177756, 10313290, 10924249, 4936528, 7550016, -13475997, -6507949,
--9577240, 28653874, 6782827, 845572, 21339008, 12379169, 10689637, 9745281, 8341900, -15049565,
-10777684, 4446902, -4719096, 8571144, -7692287, -7483444, 14860587, -6458557, 9336722, 19752554,
-615254, 3805878, -423054, 1304596, -4365835, -11548630, -14689325, -23737748, 9664750, -20105816,
-7485055, 7847979, 10056129, 82678, 545461, -2806224, -15555298, -7339562, 7795903, -5360656,
-8046621, 19743964, -6138045, 15104326, 6847789, 1681480, -932008, -5381057, -14412837, -602369,
--19452444, -6730751, 20691542, -11095511, 3221226, -34255584, 16183437, -6346351, 5162551, -26434450,
--23590108, 2219424, 6228777, 12089796, -27365920, -2893734, 263067, 18591840, 15153181, 17206176,
--5571647, 358630, 2529199, 8994198, 2057826, 4943508, 14138495, 8070781, -5513128, 5153961,
-1297080, 1009854, -401579, -3031173, -11839077, 4117800, -5783711, 1748052, 4557497, -157840,
-947040, -166967, 4565550, -2907156, 19080392, 5202279, -860604, 10691247, 6374805, 882616,
-3102577, -335007, -8674223, 11238856, -3799436, 1505386, 13330505, 7464117, -4316979, 45634,
--5481989, 8850854, 6011881, 7396471, 6784975, 20326470, -48289392, -12014097, -28639916, 9594957,
--25709674, -8761196, -29151016, 7722888, -15151034, -11806865, -2393908, -24950002, -8930311, -26723824,
--13339632, -30925376, 6754910, -28618440, -11170136, -14914811, -8196945, -7928510, -6554120, -27318676,
--15459735, -20804284, -10520522, -6072547, 11865921, -1791538, 8885750, -17031156, -2647847, 892279,
--19413252, 3692061, -1256815, 1574642, 5225902, -19842212, -1004486, 7212861, -2331094, 8142185,
-16524887, 29660508, -24585466, 1447941, 33164664, 91268, 16338056, -11651173, 20596516, 3678640,
--4773856, -27542552, -16064251, 22756884, 14204531, 22223234, 933619, -15600395, 5796059, 7996692,
-16054051, -29933774, 333934, 5610301, -16374563, -5545340, -7009924, -10049150, -23826332, 36990944,
--6683506, -11940009, -7479149, 7639673, 9014063, -20966956, -19333796, -805843, 6320045, 940061,
-186831, -4110821, -6946573, -115964, 18783502, 11539503, 1611, -15388331, -10512469, 1709397,
--5805722, 4057670, 5049271, 2500745, -1497333, -7934952, 3364570, 3925063, -2071248, 5948530,
--3339337, -13644574, -6362994, -773094, 4082903, -1003949, -4271882, -19954954, -7867307, -4555350,
-1624571, 2528125, -8517457, -15441481, 6170258, 9321690, -8097624, 407485, -7108171, 7865159,
--2482491, -13771813, 20636780, -34804804, -321049, -6941204, 15067819, -7705708, -21376590, 18653580,
--37557340, -32478542, -26720602, 15285789, -7923141, 802085, -14557255, -13874892, -16104517, 9009231,
-7889855, 26153666, 12373264, 5244155, 24441586, -6550899, 8883603, -8862665, 7663833, 4354560,
-14573361, 23447838, 12309913, -4953171, -14350023, -8642011, -2909304, 13138842, -4329327, 3617973,
-523986, -6134824, 12510703, -858993, 10273562, 7540889, -19997904, 16440598, 30353608, 4654134,
-25392384, 24489904, 11156178, 8058433, 72478, 12903155, -8070244, -29579440, -9594957, 21832930,
-224412, -10928544, 11294153, 31036508, -7098507, 2299955, -22513144, 22099754, 19892678, -1530619,
-6403260, -10249403, 51063940, -32131188, -27821188, -26346404, 2226404, 843424, -7729331, 22674206,
--31971736, -638340, -20437066, 7719667, 9055402, -1532230, 22183506, 5019743, -1880659, -12108050,
--149787, 5505611, 16161962, -11177116, -14265734, 5851893, -8502962, -2334315, 1973001, 3779571,
-1316408, -6442, -1073742, -13513041, 1269163, 3119220, 9208410, -8039105, -4511327, 5098126,
-2438468, 3515431, 307627, -8869107, -1011465, -10054518, -7602629, 9912785, 5054103, 5537287,
-3889093, -443992, 1910724, -2817499, 6030134, 729071, -2767033, -693100, -8791261, -3391414,
--5859409, 3425237, 55830280, -12306692, 31096636, 53647900, -18298172, 25722022, 11345693, -33786896,
-30842160, 4692252, -14806900, 22763864, 9660992, 21388938, -219580, -18034568, 17028472, 5879810,
-51003, 5385352, -5204427, -19075560, -11420318, -9127342, -16558173, -12248710, -3166465, 12709882,
--11410117, -6816650, -16308528, 3460670, 1358283, 2621004, 22299470, -13353053, 5349382, -12386149,
--7042136, 12838194, -10271951, -22900228, -29481730, 33932924, 15035070, -8392366, 23349590, -21481816,
--18869402, -11426224, -1918777, 3462281, 127775, -19990388, -14754286, -15624017, -34454228, -21472688,
--18577344, 6682969, 11516955, -911070, 19954954, 3838627, -20626580, -17723182, 26934276, -23079006,
-3212636, 23676544, -3152506, -40632000, 28368796, -14948634, 4459250, 1890859, 23454280, -5592048,
--9139154, -1128503, -13598940, 7131793, -23374822, 7984881, -30025042, -19073412, 11442867, -12599823,
--3794604, -1553168, -17889076, 5912560, -10510859, 8602283, -2857764, -221728, 756988, 11176579,
--8144869, -6248104, 1792075, -11104638, -5115843, 1831267, -7490960, -7733626, -5568425, -3210488,
--8714489, -4640176, 11906186, -9675488, 4493073, 7436199, -1937030, 7947300, -10561861, 1311039,
--7477538, 15351824, 2669859, 5636608, -10806138, 13515188, 8988293, 10394895, 4131222, 1501628,
-3084860, 7626252, -7476465, 1007707, -26993332, 16175921, -7554311, 27379342, 18999862, -43814036,
--5378373, 4625143, -26528940, -4364224, -4235375, 32318556, 23466628, 21583822, 27042724, -1025960,
--18742700, -14629732, -14896557, 687732, -41671384, 4990752, 35899484, -32649268, -58775016, 5967857,
--21926344, 43412456, -183610, 1392106, 29231548, -13383118, 6085969, -1387811, -7814156, 25255482,
--7202660, 12754442, 42620572, -31343060, -17769354, -28573344, 14288819, 2314987, 28557238, -16383153,
-11300059, 1459215, 26011932, 15213311, -12604118, -8506183, 9885404, -4760435, -1083942, -18392660,
--17999672, 9405978, -3968013, -5408438, -10211822, 23396298, -8848706, -9522479, 39442296, 42013908,
-27328340, -35878008, -3125663, -11345156, 13950591, 52334176, -6589017, -40063992, -2576981, -16568373,
-23578834, 10424422, -26747446, 13996762, 10433012, 13648869, -25813290, -9426916, 1944010, 22771916,
-1434519, -3803731, 3773666, -7968775, 1820529, 22750978, 11123428, -9655623, -11438572, -2733747,
-7215008, 9016747, 12087649, -11559904, -4342212, -21077552, -4399657, 13116830, -13160854, -2208687,
--8138426, -7672422, -12372727, -2733210, 8383776, -2030446, -927176, 1957431, 5322002, -5706938,
--15801185, -16497506, 9814537, 7433515, 13727252, -7039989, 10052908, 29454348, 1484448, -17878876,
--2927020, 1446867, -1674500, -11247446, -25740276, 3888019, -21129092, 19460496, 11157788, -20614770,
-35159676, 53355840, 1484448, -2455648, -18278844, -18434000, 3076807, 3106335, -9026948, 48265232,
--4383551, 36006860, 28797756, -36313412, -1182190, -12155294, -38916160, 9834938, 8970039, 21265456,
-36339180, -1073742, -10437307, 11995307, 13145821, 28668370, 11947525, 2653753, 23526220, 24839944,
-8487392, -5683853, 21568788, 9659918, 25929254, 5585068, 7438347, 16275779, 27464168, -4574140,
--21873194, -25201794, -8288213, -8754217, 43229384, 23736136, 66759360, -3104725, -33742872, 29662118,
--10238128, -11531987, -10160282, -22726282, 3294777, 12773233, -555125, -12731357, 47412144, -9476308,
-55959664, -15341623, 30084636, 2637647, -9524090, -30573188, -43716324, 40931040, -4023848, -6993281,
--12606803, 38037840, -79994, -39920648, 73123968, 23007066, 7905424, -8405251, -30790084, 15386183,
-756988, 15486578, -14353244, 11044508, 5490042, -6912750, -10628970, 1887638, -12833899, -5994164,
--14570140, 1685238, -2632815, -202400, 4713190, 11943767, -12258910, 4665945, -6038724, -379031,
-15963857, 10691784, -5853504, -20131048, -753767, -1219234, 2561411, 18334678, -12029667, -7074885,
-4491462, 11486353, -16847010, 1072131, 10895795, -304406, -1419487, -17519708, 8920647, -615791,
-8108362, -18314278, 1925756, 7664369, 5969468, 8950175, -17655000, -18492518, 11992086, 49593452,
--29471528, -18967650, 4029216, 8934069, -5608691, 35086124, 27346056, 27593554, 9336185, 13608067,
-23240604, 14317273, -8401493, -13874892, -31182536, -5084168, 17157320, 5829345, 3720516, -11659226,
--29489782, -8653822, -4119411, 30049202, 437550, -3636227, 22843858, -3666828, 6337761, 4827543,
--50794432, 12992276, 13755707, -8920647, -21698712, 4090420, -28631862, -14630806, -43868796, 13232794,
--36621576, -72698760, 8466991, -1036161, 51198156, -1800128, 17412872, 42205032, -6890738, -10993506,
-18803366, -414464, -36831492, -12922483, 4876936, 6098854, 27229556, 11281268, 24251532, 20942798,
--15057082, -11330661, 10351408, 30838402, -12827457, -6515466, -28320478, -19615652, 7557532, -38313792,
-11129334, -43028592, 8199630, -11376295, 30546344, -13367549, 21660594, -46112380, -9357660, 6252399,
--27388470, 6885907, 4887673, 4694936, -20651814, 10817412, -20221780, 5733782, -1520418, -8670465,
--3672734, -2075543, 6505802, -7105487, -3200288, -5708549, 13211319, -8626442, 7733089, -19502910,
-10277857, -1176284, -1532767, 2740726, 18879066, 6504191, 8086887, -22601728, 2969970, -9298604,
--27820650, 11135240, -8891656, -7141457, -10259603, 10324565, -4986457, 4949413, 5872294, -2750927,
-1254131, -6890202, 1989644, 5639292, -1306744, -907849, -10611254, 38970924, 41536092, 97071096,
-11441793, -54326504, -40790380, -30024506, -34657700, 67949600, 90689848, 30753040, -8650601, -28513214,
-1010928, -34508452, 37988984, 35920960, 10660109, 5207648, -22495428, -3251827, 41803452, 9752797,
-16798154, 14157286, 43865576, 36909876, -14221710, -32611150, -43116104, -29058674, -4319127, 12022150,
-39436388, 23655070, -8226473, 21375516, -29925722, -10186052, -67299456, -10628433, 66248796, 51200844,
--10305237, 134233296, 42111616, 3938485, -73592120, -12541305, -6310381, -17264694, 18801756, 10436234,
-15931644, 28171764, -60050624, -64691872, -32500554, -43643312, -6225555, 14779519, 54339388, -32500554,
-19883014, 84688704, 42344084, 14741938, 23748484, 17279190, -51151988, -84672592, 43312060, -20951388,
-18652506, 45334452, 50169512, 4419522, -30332132, -39986144, -32586454, 35038344, 20272246, 6094559,
-34993784, -34892852, -6055367, -5605469, -15433965, -18072148, -1537061, -542240, 11353746, 3497714,
--5004174, 68183, -439697, 548682, 2995740, 6448357, 10106595, -10149008, -13808857, -47424492,
--25933012, -23468238, 27966680, 16504486, 9993315, -38849588, -37995428, -61266636, -16708497, 23989540,
-30746598, 39954472, 15688979, 11625940, 4655745, 3787624, -1163936, 8892193, -2167348, 28573344,
-20281910, 3965866, 201327, 86436, -4956393, -187368, -20646444, -88874144, -21176874, 49544596,
-94871536, 83583824, 200390288, 104882568, 71168144, 62617940, 28500866, -11206107, -101227544, -127078952,
--189579312, -145178480, -148927456, -56657060, 753767, 57038240, 106115224, 87538952, 90471872, 62354872,
-85127328, 66636416, 94253592, 44887240, 35160748, 16816408, -24217710, -37271728, -57085484, -34511672,
--124022552, -52383568, -117383064, -84693536, -134352480, -79866528, -125057096, -44408888, -61977988, -20175072,
-9610526, 63513440, 166544336, 158587376, 222207648, 150402240, 102614288, 133222904, 181965952, 160133568,
-134514080, 93855776, 11358041, -90945936, -90268400, -111922016, -213010512, -235181664, -256151312, -255803952,
--280874208, -242930336, -204622448, -180476144, -117492592, 13542032, 133772128, 232641200, 307534688, 383323680,
-426546624, 297359904, 283619232, 184056528, 111552112, 105392592, -6248104, -34780644, -163318272, -313109568,
--337186080, -273754240, -211555600, -124652832, -100818448, -102707704, -56598544, -88200912, -35631584, -9789304,
-67833640, 128674000, 105763568, 137546320, 147887536, 157692944, 139343232, 185904432, 138229760, 113206744,
-58567784, 12033425, -31302796, -143992000, -127455840, -170948832, -226579920, -205357952, -235316432, -241932816,
--70449272, 7923141, 123055104, 150504240, 160395024, 186043488, 194426720, 164846752, 143498608, 109957608,
-83495240, 30157112, -21370684, -64116344, -115519048, -169909440, -159030832, -142096304, -106151728, -50050864,
--21888228, -10467909, -6097243, 15657840, 32884954, 39683888, 42875584, 35240744, 28387050, 30558692,
-25065966, 18533858, 34237868, 38134476, 29416768, 13982803, 7261179, 11187316, 14527190, 3441880,
--623307, -1331977, -4027069, -6428493, -2675228, -1762547, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
-12924630,
-582505, 2175938, 1815161, -5267241, -2720325, 7160784, 12469364, 2010045, 6646999, -2693481,
-1263794, -342524, 5630166, -4454418, -10153840, 4110821, 4764730, -5923834, 6877854, 3383897,
-6274947, 1984275, 1498407, -2736431, -869194, 328028, 4184909, 377957, -6283537, 277562,
--502511, 1361505, -869731, 1121523, 1515587, 3749507, 2726767, 895501, 1178969, 372052,
-1844689, -1937567, -3132642, -6969658, 1351304, 1531156, 568546, 5337034, -1886564, 4146791,
-1150514, -1658931, -3287798, -2134062, 7480760, 1597191, 4175245, 690953, 1647657, -1440425,
-257161, 494995, 2150705, -652298, -2785286, -1514513, -5799280, 637266, 1132798, 4952098,
--1594507, 3782793, -661962, 2472828, 41876, 2225867, 1733019, 1031866, -933082, 2559801,
-3543348, 2465311, 2311766, -93952, 495532, 565325, -1965484, 807991, 434329, 1708323,
-880468, 693637, 907849, 1216013, -705985, 726923, -542240, -89121, 4791036, 4626754,
-2111513, 1891933, 2525978, 3058554, 4522601, -1974074, 4692789, 51003, 5014375, -1101659,
-8928700, 3033321, 2947421, -6089727, -857920, -1382980, -7924752, 4326106, 3642132, -2503966,
--10380399, -4727686, -1565516, 5052492, 6947647, 4382478, -2789045, 1480690, -4457103, 207232,
-376347, -3626026, -1812476, -9389872, 764504, -1182727, -3939559, 402653, 530428, -1278827,
--308701, 8975945, -2171106, 7309498, 1412507, -5663452, 407485, 541166, 4102231, -1856500,
-1154809, 965294, 302795, 5592048, 1931662, 5740761, 4217121, -2963528, 5230734, 2541547,
-3815542, 347355, 1236951, -1356673, -2509872, -4750234, -5847061, 6060199, -6074695, -4690641,
--5027796, 2792803, 2521683, 1100049, 1083942, 3542811, -2311766, 2661806, -1750199, -2444910,
-3869229, -3597572, 584652, 1800128, -3033321, 709207, 417686, -490163, -492311, -287226,
-2019708, -691490, 739808, -927713, 1545651, -461172, 855772, -1108638, -8093866, -7525320,
-1620813, 150324, -1632088, 4510253, -594316, -784368, 4679367, -5152887, 1008244, -4497905,
--2914672, -1623498, 48318, 7648800, 8685498, -4034585, 3402688, -6256694, -599685, -2449205,
-8438537, -2495376, -479426, 883690, -11885785, -2066953, -5870147, -1934346, -1457605, 4427575,
-5880884, 2410014, 7948911, -1017370, -3620121, -3672734, 4590783, 11930345, 8339753, -4651987,
--5440113, 5969468, -5353140, 1021129, 1904818, 9776956, -3596498, -4813585, 1066763, -2984466,
-1870995, 2495376, 6215355, -6800007, -4412005, 3996467, 7508677, -683437, -3482682, -4415227,
--10611254, 4037806, -17180, 3174518, 498216, 287763, -1666984, 1961190, -2707977, 1695438,
-2295123, 2327336, -3765613, 2782602, -688269, -2629594, 256624, -5557688, 3496104, 543850,
-445066, -2197413, -758599, -1855963, -3884261, -2932389, 2070174, 213138, 839666, -704375,
-275952, -197569, -1108638, -854699, -1620813, 193274, -928787, -671626, -224949, 391379,
--284005, 559420, -296353, 1981591, 759136, -1105417, 1332514, 832150, -1523640, -19680614,
--6484864, -1042603, 3353833, 2253784, 4891431, -9403831, -2821794, -432718, -9756018, -6972343,
-2439005, 5887327, 3449396, 6496675, -843961, 3725884, 8650601, 7633768, 7170448, 4128537,
--2785823, -2218351, -4469451, -1986959, -4490925, 9231495, 4280472, -1437203, -4119948, -2516851,
--4207458, -6113349, -6599218, -8280160, 4954782, 3547643, -9196062, 2140504, -513249, 6307160,
-929860, 3093450, 4061965, -8688182, -1394254, -342524, 1100049, 4522601, 6854231, -2790655,
--1052804, -2053531, -5510443, 1650878, 1032940, -601832, -1547799, 5208722, 225486, -2920578,
--1041530, 2455111, 3284039, -1378685, -215285, 847719, -4809827, 3491809, -434329, -7157026,
-751082, -8729521, 1312649, 6438693, -2230699, -291521, -9844602, -4801237, -7334731, -4438312,
--678605, -783295, 4432943, 846645, 5216238, -3209951, 1703491, 2841658, 876173, 2795487,
-243203, -1933809, 1009854, -882079, 820876, 52613, 287226, -388695, -1435056, -526134,
-1098975, -1323387, 791885, 2209224, 1044751, 548145, -45097, 43487, -579284, -900869,
--1556926, 1046898, 1320166, -879931, 827318, -928250, 10799695, 4080219, 1822140, -2691871,
-7955890, 3094524, 4495220, 12621298, 13654775, 532576, -2220498, -4831838, -7426536, 2738042,
-5395553, -2780991, -555661, 784368, -1301375, -4347044, 5120138, -4995584, 2362769, -14441828,
--2087354, -3504157, -3511673, -7128035, -1489817, -908386, 111132, -3644817, -5229123, -4103841,
-573915, -2712809, -5546951, 3336116, 4769025, 408022, -4549981, -5090073, 1879048, -3914863,
-4497905, -5603859, 3627637, 1331440, -66572, -7992398, -7415798, 1739999, -5372467, 8744553,
-1561758, 7341173, -3790309, 7389491, 1439351, 4764193, 1618129, 4515085, -4135517, -5901822,
--117038, 9496173, -922344, -6365679, -3381213, 4149475, -2646237, -3630858, 965294, -10160282,
-6879464, 8297877, -511101, -7046431, -8908299, -257698, 7502771, 5431523, -4241280, 5769215,
-604517, -823560, -1116155, -581431, -477278, 1597728, -2509872, -2162516, 198105, 871878,
--1884954, 702227, -880468, -252866, 1995549, -787590, -427349, 333934, -3136937, 1676111,
-420907, 299574, 731755, 1007170, -131533, 279173, -612033, -597000, -467615, -350577,
-15533286, 3183645, 8539469, -3347927, 6401112, 4764193, 9961103, -7358890, -5244692, -1675574,
-593242, 7084549, -3306588, 10749766, -780610, 6114960, 5289252, -2990908, 2187212, 6196027,
-5738077, 1476932, 1600412, 5645735, -11623792, 1916092, 9026411, 7050189, -6274411, 7870528,
--9263171, 5650030, -8168491, -4122095, -2134599, 8537321, -1729261, 8938901, 1994476, 1931662,
-450972, -294205, 3541738, 5248450, 11640435, 1835025, 10046465, -4934381, 7344931, 9669582,
--299574, -1728724, -3482145, 3741990, -13805099, -1142461, 1365263, -5167383, -8190503, -456877,
--517007, -1103807, 3621194, -8433168, 4271882, 3724811, 5367099, -13299903, 4584878, 3202972,
--7859790, -920734, 4341138, 9795210, -12399571, -1533840, 958315, -11721503, -1025423, 1726040,
--3246995, 7709467, -1714229, 673236, 2178622, -1347009, -374736, -523449, 1388885, -3032784,
-469762, -1572495, 949725, 279173, -1708860, -186831, 2152316, -943819, -405874, 54761,
--2456721, -940061, 508417, -950262, -1104344, -354335, 501974, -1372779, -550830, 1734093,
-2365990, -3003793, -46171, 491774, -13803488, -16917876, -13545790, -12233141, -420370, 8618389,
--17856864, 12711493, 8214125, -20049444, 12620761, 5358509, 4311611, 1992865, 1932198, 4543539,
--3161633, -3266323, -6601365, -188979, 7681549, 6511171, 3777961, -11412265, 7791071, -8154533,
-209917, -7169911, 8943196, -4738960, -3718905, 2835752, -13443785, 1348620, -4464082, -4007741,
--1447941, 969052, 13191992, -6221797, -2039036, -5020280, 10028212, -6102612, -3310883, 3102577,
-3002719, 2838974, 3536369, -4162897, 4825933, 1241246, -11035918, 15149423, 6003828, 2451890,
-1557999, -72478, -7078643, 8672076, 7239704, 3038153, 9693741, 1038308, 4252018, 9771051,
-4948339, 2103997, -6760816, 8050916, -3563212, 15378130, -1707786, 409633, -4230543, -16130823,
-2071785, -3912178, -1957431, 8278013, -744640, -8751533, -5027796, 7114614, 5908802, 927713,
-6852621, 1816771, -5118528, 2404645, -539018, -1698660, -1462973, 558883, 4028679, -1933272,
-447213, 722628, 2238215, 869194, -1918240, 2982318, 371515, 792421, -242666, 769336,
-301721, -1170916, 1639067, -1183264, 1335735, 1098438, -944893, 3359738, -533650, 826244,
--1222455, -765041, 9861245, 6709276, -1136556, -6189585, 16200617, 25745108, -3397856, -3584687,
-12455942, 3019899, 4109210, 3293703, -18547816, 2032056, -11993696, 9583683, 13681618, -3603478,
--6610492, 2222646, 8664023, -5215701, 10465762, -4123706, 20200842, -5923834, 3905199, -1007707,
-5478231, 14375792, -5440650, 1399086, -1277216, 4143570, -5345087, -2597918, 8185134, 17635672,
-1466731, 12904229, -4795868, 1759326, -2441689, 4285304, 9438191, 14064944, 10973641, 10409390,
-10838350, 6836514, -1995012, 1646046, -1507534, 243739, 2141041, -7079180, -2046015, 11322071,
--9989557, 3942780, -4402342, -2661269, -5201206, -20586316, 2280628, 11110544, 7035694, -2570001,
--9766219, -23725400, -3835406, 9604621, -2012192, 3767760, -7403987, 5473399, -6830072, 6218576,
-13413183, -5936719, -7283728, -13444858, 4024384, 1614371, 2181844, -10640245, 745714, 20938,
--3229279, 566399, 4981089, 175020, 3418257, 1478543, 2207076, 2674691, -489626, 4232691,
-1003949, 384400, -908386, -1442572, -1199907, 4027069, 1357210, -196495, 2720862, 1382443,
-1959042, -439160, 2249489, 2702071, 3724811, -1627256, 382252, -1588601, -17794050, -13981729,
-1735704, 8384850, -8049843, -5126044, 943282, -4191888, -26593364, -22773528, 9879499, 9278203,
-1607392, 1446867, -9788767, 15302968, 18396956, 11491185, -9609452, 8994735, 12052752, -1791538,
--15466177, -6843494, 21192980, -6218576, 2058363, 1394791, 11875048, -9485435, -17155710, 3809636,
-7777649, -4099010, 4952098, 11171210, -5442261, -4148402, -573378, -23757074, -6980933, 8313446,
--4603131, -15838766, 2817499, -317291, -5085778, 3275986, -1575179, -15010374, -12883291, -22520124,
--18053358, 3617436, 7860864, 849330, -5451924, -7442105, 118648, -5053566, 4760435, -10759967,
-303332, -3738232, -3205119, -3569118, -1048509, 4362076, -5007932, -21592948, 3194382, -3008625,
-5296769, 6069326, 344671, 4254165, 4967130, 1719598, -1304596, 2767570, -3149285, 1343788,
--6831146, -3459059, -3098819, -3593277, 1478543, 6110128, -3192235, 1075352, -7755101, 1020592,
--831613, -5564130, 2428267, -1677185, 1379221, 2475512, 1279363, 1183264, 4788352, 1202054,
-570694, 1762010, -47782, 811212, 610959, -1237488, -3729105, -579821, -3774203, 1905892,
--2885681, 4316979, -15569, 6121402, 2689723, -3437048, -2433099, -1800665, -279710, 8654359,
-27779848, 24691230, 19286550, -2054068, 18855444, 6122476, 26316338, 11154567, -543313, 32117766,
--6687264, -1675574, -20452098, -5388574, -420907, -14416058, 8626979, 12892955, -4196183, -176631,
--11616813, -19907710, -11757473, -15177878, -4439386, -9168681, -2898029, -1442035, 9110699, 2315524,
--1911797, -8204998, -2849174, -5477694, 2896419, 214212, -8149701, 4295504, 5385889, 2134062,
--6306086, -8258149, 2732673, 7626788, -1112933, -288300, -14622753, 26174068, 4364224, -4982699,
--744103, 2317672, 11173894, 9508521, -9880035, 5544266, -3885872, 1182727, -1699196, -2495913,
--15002321, -13366475, -17959406, 2699924, -795106, -3799972, 11201275, -3597035, 31706522, -3150359,
--1765232, -7845832, -3549254, 4095788, 5406290, 3810710, -325344, 13637595, 9737765, -2053531,
--6673843, 1777043, -4007205, -53150, 1219234, -4438849, -1522029, 77309, -1548873, 2107218,
--5484137, 3178813, 5973226, -1896228, 3096672, -1915019, -1569811, -2492692, 915902, 3297998,
--1506997, 4441533, 767189, 1527935, 6128382, 2613488, -914291, 6457484, 2852932, 4453881,
-5794985, 4461934, 409096, -95026, 4264366, -4090420, 38655, 2570538, 1358820, 2951180,
-2717641, 1424855, 3513820, -17089674, -23978802, -13571023, 18076980, 13961865, -12192875, -12916040,
-19373524, 11450920, -12047920, -16793858, -2621004, 2641942, 1938641, 2161979, -9599789, 9946607,
--7140920, 19655918, -3007014, -14155138, 3321620, 4881767, -52613, 1321776, -6083821, -9273908,
--442919, 7873749, -4888210, 5949067, -9702868, -26267484, -21098490, 13195213, -16424492, 13008382,
-3902515, 1343251, -5463199, 7558606, 2530273, -2266132, -3738232, 3432753, 7981123, -7368017,
-22102976, -5771363, 7461432, -6857452, 1980517, -2073396, -8613020, 21097416, -16635482, 22968412,
--805306, -11729019, -17486422, 8748848, 3171833, 2698850, 1061931, 9212168, 6346351, 8328479,
--18003430, -5676873, 514859, 36507, 4583804, -13877576, -6590628, -4726612, -2309082, -17322140,
--3459596, -5974837, -19207630, -1289564, -10877542, 2541010, -5086315, 1190243, 2516851, 8155606,
-5021354, -3496104, -503048, -7353521, 3936338, -785979, 3420942, -8588861, 491237, -3624416,
-2043868, -7945690, 1540283, 1432372, 418222, -2014340, 2711735, -4806069, 3461207, -7323993,
-2718178, -5345087, 2483028, 996969, 3468186, -2939368, 8830453, 3120831, 163209, -5648419,
--4344897, -1184874, 5903433, -1564442, -2848100, -3100430, 4051228, 3535295, 41260140, 13748190,
--9190693, 21177946, 19744502, -10225243, -13001940, 31846646, -2854543, 6985765, -18902152, 46363636,
-1614908, -13018046, 6726993, 2289755, 22515292, 357556, 28435368, -20479478, 425202, -22369800,
-1705639, 15660525, 711891, -13725105, 19370302, 10320806, 5687611, 4622459, -6803228, -6586333,
-1736777, -9736154, 12665859, -11375758, -15127949, 13269301, 5012227, -17569638, 9468792, 1088237,
--12773233, -7207492, -4301410, 6622840, -1554241, -7744900, 9295920, -11397233, -4547834, -3964792,
-15589658, -10362682, 7499013, 11930882, 5496485, -7203734, -14695767, 9174050, -12580496, 16810502,
--21381958, 27996744, -8399882, -4060355, -4080219, 12683038, -1012539, 4526896, 7556995, 4486094,
-10776073, -10736881, -20310900, 1290638, 17072496, -11593190, -5535139, -12115029, -7299297, 3020973,
--1299765, -3588445, 7312719, 5202279, 3806952, -2037425, 11202885, 6783901, -5389110, -2928631,
-2101850, 444529, 9456444, 5916318, -918049, -3289945, -2575907, 10301479, 824097, -5545340,
-6483253, 1808181, 122943, 5348845, 2353642, -1164473, -5807333, 1383516, 6719477, -5306432,
--1443109, 7642895, -679679, -1827509, -2151779, 4419522, 716186, -84289, -2253247, -24482924,
--3240016, 22750978, -6772090, -13877576, 6058052, -6412386, -1386738, 10423349, -24675124, -14199699,
-9305047, 12807056, 17027398, -1017370, -3409667, 7129646, -1819992, -24024436, -16750372, 28700582,
--2320356, -24760486, -14650133, -9840307, -8411157, 2527052, 8231842, 663572, -4318053, -12248710,
--19205484, 2778307, 2390149, -454193, 15440944, -10421738, -30037928, 12340515, 8655970, -34701188,
-20714090, -5430986, -17769890, -14311368, -1447404, 20092930, 4619774, -6361921, -7329362, 5896990,
-10316511, -14483167, 11130408, 2036888, 8167954, -6143951, -15420543, 13794898, -77846, 15444166,
--47379932, 6233072, 7181186, -6764574, 13019656, 15481746, 44815836, 1500554, -29777546, -13449690,
--7858717, -28605020, -28411746, 1698123, -16178068, 437550, -10782515, 10818486, -10968810, -10454487,
-18864034, 4884989, -733903, -812823, 11038603, -2121177, -1196685, 6674379, 5210332, -3861713,
-3538516, -9908490, -2308008, 3056406, -1985886, -2714956, -4952634, -4967667, -2730526, -6179921,
-2509872, -7916162, 1706713, -1178969, 7585986, -1569811, -4041564, -3159485, -4645544, -4687420,
--1362578, -3206193, -6026913, -4191351, 4344897, -5692443, -3088082, -10363756, 3240553, 4494684,
-10918881, 2706903, -1427003, 589484, -20609400, 3279208, 12723304, 11319923, -18289582, 32553704,
-22706418, -10468983, 13582834, -26394722, -5847061, -8861054, 41643468, 26652956, -9907416, -15910169,
--19428822, -4342749, 1113470, 7626252, 27941984, 5919002, 4757750, 6019934, 784368, -9234180,
-1137093, -1766305, 12885976, 17350058, 22040698, 14314589, 9358734, -2186138, -4049617, 3482145,
-19987168, 3142842, 3566970, -20314658, -10292889, 34264712, 13941464, 10294500, 284005, 20528334,
-11001022, 43269648, -2391760, 44613972, 3203509, -13845901, 14478335, -12052752, -8975945, -1575179,
--8198019, 498753, 8323647, 17858474, 3146601, -3790846, -19505594, 6320581, 1663226, 12911745,
--15285252, 4106526, -6721624, 2331630, -19451370, 9925669, -17106854, -2061584, -23302882, -32105418,
--5298379, -4993973, 26521960, 7156490, -755377, 4986457, 8324184, 10341744, 1821066, -363462,
-506269, -18588618, 5983427, 299037, 17441326, -7012608, -756988, -4606353, 12428025, 2492692,
-11365557, -97174, -12985834, 6420439, -569083, 4369593, -9836012, -4465156, 2510945, 2785286,
--7271917, 748935, 6916508, 4261682, -6371047, -7194070, 12895102, -12798466, 5499706, -3922916,
--10311143, 3354906, 2559801, 3382287, 4525285, -4758824, -428423, 6158446, 680215, 4297115,
--1614908, -4865124, -4792647, -10887742, -16693464, 5105643, -19147502, -10201, 23054848, 7271917,
-19644644, -22833120, -10597295, 11225434, 2243047, 32730872, -16683800, 19581830, -7463043, -9879499,
--24442122, -9449465, -13171054, 16369194, 3754338, -21698712, 27143120, -14046154, -13161927, 2661806,
-10530186, -7934415, 18748606, -9111236, -13158706, -6723772, 6174016, -2283312, -3671660, 2054068,
-18684182, -12701829, 34262564, -13319230, -524523, 31832686, -6471442, 5613523, -43482784, 1939178,
-7675644, -9787157, 19061602, -34812856, -42681236, 16176457, -7645579, 23564874, -17674328, -16601122,
-1808181, -5457830, 36122284, -4403415, -1749662, 8072928, -33731600, 1919314, -34086472, -13615583,
-1865626, 8126615, -42533600, -18943490, -5304285, -2070711, 13643500, -18206904, 21635898, -8923868,
-2347737, -27884538, -1506460, -24636470, 9214852, 5334887, 18243410, 23374286, -8801999, 15330349,
-1980517, -5012764, 7742753, 4905390, -7618735, -7615514, -13568339, -478352, -8109972, -8373039,
-2811056, -1966021, 11522324, -15585899, -2812667, -9791989, 3774740, 5702106, -5514738, -703301,
--8398809, -8265128, 9217537, 15308337, 17101486, 3563749, 1015223, -4590783, 3165928, 2882460,
--6599218, -10314364, 3447248, -5410585, -7690676, 11677479, 8005282, 6842957, -10739029, -12244415,
--26271242, 21422224, -18779744, -5392332, 17201344, 39302172, -11093901, 32214402, 11571716, 8318815,
--14846091, 35689032, 5738613, 16661252, 1708860, -20908974, 7771207, -20995948, -20759188, 13083007,
--20678656, -4468914, -4713190, 21163452, 1982664, -7072201, 7021735, 9429601, -4182761, -19912006,
--4501663, 15359877, 37317896, 8581882, -20745766, 2324114, -3839701, 8924405, 11454678, 18850612,
--8145943, 448287, 12371653, 2823941, -459562, 24857124, 22618372, 26732414, 9396315, 22461068,
-3251290, 13469554, -10391673, -1894081, 3160022, -20900384, 1753957, 35316980, -4311611, -7766912,
-7613367, -560493, 9678172, -21081846, 28024662, -17516488, -7630010, -4829154, 1600949, 3229279,
-3755412, -30660160, 38785164, -8432095, -12184822, -4640176, 32959042, -3802657, 6995428, -26006026,
--17879412, 452582, 13813689, 12465069, 21133386, -33774012, -10383083, 32170378, -11419244, 3474092,
-27770722, 6484864, 6204081, -1891396, 1113470, -10638097, -658204, 2536715, 8039105, -4871030,
-6717329, -12266427, -6678674, 551366, -3281355, -2205466, -28149216, -22039624, 1942936, 14123463,
--13215077, -22987738, -9203578, -18909130, 5405217, 679679, -7056095, 17848274, -5054103, 7196218,
-8368207, -9965935, -6790344, -1810329, 2332167, -904628, 13711683, -389768, 977105, -6769942,
--1369558, -10551124, 63107564, -3704409, 12639552, -526670, -6502581, 1784022, -29207926, -12459700,
--8989903, 11353209, 8086887, 14286135, 1620813, -15358266, 16084116, -13043816, 18545668, 13662828,
--15034533, -16090558, 1899986, 22708566, -23295902, 9754408, 10714333, -13297219, 5908265, -1715839,
-8114267, -1030255, -33955476, 19039054, 11683922, -28597502, 34493420, -18287434, -4406100, -11319923,
-27843200, -5519033, -23704462, -39728, 350577, 23028540, 23406498, 1561221, -18059800, 26261578,
--4240744, 4648765, -33300492, 26237956, 10696079, 1601486, -19100256, -14454176, -2024540, 9147743,
--15343234, -27422830, -11668889, 21715354, 13460428, -3175592, 35228932, 2136209, -5688684, -25352656,
-31099322, -28827284, -9277666, 31766652, 10072772, 4161287, -11878269, 4980552, 31333398, 6999186,
-13778255, 19862614, -51099912, -11147051, -8423505, -4170413, -21138218, -3690988, -2423435, 31163208,
-8523899, 2181307, 15908559, 22297322, 15670188, -10917807, 6048925, 13387950, -2506650, 5242008,
-5869073, 7205345, 4733591, 22189412, 12101607, 1493575, -6269579, -9820443, -18956912, 2920041,
-193274, 5306969, 6457484, 3133716, 33421824, -4405026, 12216498, 7367480, -8842801, -26209502,
--4055523, -9589588, -16210817, -17529910, 3286724, -2731599, -21150030, 272730, 8398809, -1901060,
--1834488, 7693360, -5003637, -16127602, -25305410, 802622, -28329604, 26497800, 41407244, 19223736,
-23553064, -36156108, -32230508, -25332254, 2415919, 44800804, -8317741, 16643535, 29115046, 14665703,
--16121160, 940061, 21246666, -27473832, -22971096, -19712290, 22262426, 15514496, -28816546, -40666360,
-55066848, 33957084, -39348344, 17758080, -4647692, 16265578, 1688996, -11926050, -27350352, 24890410,
--727997, -20271708, -30350924, 7715909, 7023882, -7692824, 745177, -2841121, -15008763, -6606734,
--7935489, 14021994, -26607322, 29251948, -20091320, 1045825, 46021112, -44488344, -10791642, 41929080,
-3004330, 9781251, -6288906, -13175886, 13115220, -4919348, -18554796, 2359011, -42246372, 71503688,
--7087233, -78959216, 29817274, 77783472, 45880452, -96259880, -28030030, 18143552, 6914898, -14713484,
--22223234, 11939472, 29365766, -36266704, -10026601, -63227288, -10925860, 21740050, 7931731, -19375134,
--31634582, 12360379, 27683212, -667867, -8558259, -15228343, 22002580, 13011603, 8938364, -1935957,
--6657736, 2540473, 12288975, 9475772, -2253784, -25393994, -15776489, 26249230, 11273752, -13657996,
--9212705, 18806052, 6311992, -2729452, -38398620, -17692044, -19151260, 21461414, 5905043, 4620311,
--3988951, 452582, 20963736, -4356708, -3725884, -18394808, 3629247, -6015102, 29271812, 6116034,
--6548752, 3463354, 29552596, -3943854, -19952270, 4591857, 19639274, 45867028, -19213000, 14944876,
--24252070, -64328408, 34746824, -16205985, -35156456, -24392730, -35939748, 17241072, 12030740, -48404820,
-31118648, -16879222, -1165547, -602906, -24783036, 19145890, 19148574, 16819628, -1529008, 22006876,
-11577084, -13372918, 1288490, -27612882, -9920301, -24501714, -16998944, -1223529, 39875012, -33261838,
--7014219, -7189239, -29697014, 17437030, -33506650, 17379586, 15184857, -22832046, 18073222, -36688148,
-10628433, -31903554, 20782274, -11973295, -16746614, -17506286, -25875568, -7042136, 13188771, 22610318,
--26262652, 17584670, 9982578, 27540940, 34029024, 19619948, -28075128, -13136694, -52896280, -13446469,
--15277199, 17580374, -61750892, -11790222, -36678484, -3250217, 37033356, 33914136, 22448720, 7847442,
-49826988, 54377508, 48583060, -16714402, -21659520, 18355080, 47561932, 87650616, 6463926, 20468204,
-10823318, -4767414, 16341814, -15884400, 9689446, -4185446, -102542, -10266046, 16580184, 18954228,
--6512244, -15817828, -11809013, 14336601, 6507949, 16267189, -8835285, 6255083, -3115462, -7334194,
--4544076, 16151761, 32224066, 15247671, -16520055, 8375186, -5625871, 11400454, 5273683, 5588290,
-15827491, -10210211, -21001854, 1657857, 16378321, 12642773, 4506495, -3257733, -7149510, -29131690,
-28651190, 7871065, -6589017, -30285426, -6928856, -20841866, 10472204, -10135049, 7466264, 57370564,
--33879240, 21373368, 26214332, -12205223, 2467459, 9884330, -3114925, 27758910, 1516124, 20060718,
--25731686, -3781182, 22526030, 3565897, -34950832, 22541062, -13916231, -11539503, -13305809, -3615826,
--12979391, 13141526, 18622442, 8896488, -3182034, -9890773, 16158741, -5394479, -25676926, 20924006,
--43389908, -11089606, -8901857, -9692131, 24823300, 26980448, 48690972, -14419816, 20847234, -920197,
-9411884, 31751082, -2302103, 3262028, -21250962, -67168456, 33202782, 6243809, -32341104, -22322556,
-3287798, 17373680, -3074660, -19138374, 9859634, -19621022, 25617870, 14136885, -11158862, -23506356,
-46427524, 4955319, 2467996, -4410395, 6438693, 3126199, 2026151, -15763604, -32995012, 8968965,
--4833986, -11898670, -30411590, -7637526, -905164, 26963804, 11180337, -34328064, 19913616, 3393024,
--1308354, -3949759, 11101954, 14079977, -2834142, -6546604, -2438468, -6205154, 5243082, 8301098,
--392453, 4691178, 9478993, -3669513, 13692893, 5667746, 4189204, 7042673, -3888019, 17009144,
-2873333, -3802657, 11184632, -13724031, 4334696, 7634305, -3243774, -5965173, 15436112, 22123914,
--19987168, -3862249, -7067906, -7005629, 7931731, 6739878, -12575664, 6773701, 5531381, 4803921,
-5789616, -11421392, 7997229, -1029182, 4694936, -3716757, 3206193, 63839856, 32560148, 64239288,
--59319404, 5129265, 30833570, -11959873, 35119948, 67781024, 37195492, 2161442, -18263812, -18833432,
-3513820, 29375966, 31457414, 7147363, -78920, -46780784, -9642202, 46133856, 15262703, -12868259,
-25479356, -21677236, -30323006, -8329552, -2024540, 35668628, 46585900, 41851236, 15857556, -16225313,
--24941948, -46271832, -46010376, 40074728, 16806744, 3284039, 61892628, 3749507, -18951544, -25327960,
--25733834, 12517682, 26443040, 21044802, 40598716, 2882997, 29212756, -1915555, -5250598, 14798847,
-27047556, 19786378, 17188996, -15428059, -5844377, -12168716, -27435178, -21980568, -39983460, -13383118,
-10719701, -6564321, 29088740, 34969088, -569620, 331786, -14317273, -25561498, 5273683, 33790120,
--1946694, 18702972, 8203388, -2452963, -10584947, -4866735, 3092913, 11798812, 9199283, -9029095,
--18913962, -23381266, -21939766, -8500277, 8915815, -2281702, -13786308, -7052873, -9564892, -8085813,
-4529580, -1219234, 12958453, 18538690, 4167729, -22535156, -11579769, -13498545, -3058017, 15210627,
-3679713, 3745212, -18423262, -17454210, -19886236, -10210748, 17382270, 11839614, 15007689, 8062191,
--7240241, -8974871, 6381248, 5761699, -1534377, 3908420, -7587597, -6115497, 4542465, 3183108,
-6285148, -3657702, -7537131, -3480534, -5768678, -1090385, -33910916, -66134444, 26095148, 107843408,
-109653200, 92815320, 67252744, -41511932, -47341276, -51159504, -68038184, -104120208, -83875880, -72855528,
-33817500, 78255912, 58200564, 125858112, 97275640, 50713900, -18721762, -33934536, -84619984, -66070556,
--65416648, -13388487, -40088152, -32566052, 9695889, 17690970, 35639640, 35762584, 49079128, 48673792,
-62807992, 36617280, 16100759, -9165460, -10624138, -27668180, -41843720, -50535660, -61763240, -40470940,
--75856104, -50557672, -37941740, 37927784, 71951440, 77581072, 53672060, 36550172, 57283052, 43812424,
-54974508, 43184824, 15129022, -20452634, -96331288, -68146632, -69452304, -107778984, -67620504, -58540404,
--56804164, 20594906, 57084948, 90651728, 74645992, 106577464, 95655368, 93523448, 66672388, -36457828,
--32996086, -74947176, -99089192, -109189880, -89558120, -43022688, -12247099, -22676890, 29482266, 78036336,
-55006720, 37131604, 62583044, 52578452, 18759344, -12465069, -12555800, -4138738, -15393163, -42106248,
--26477400, -30112016, -16299401, -13556527, -31383326, -11688753, 10714870, -10591389, 34605088, 45687176,
-50202264, 53104048, 3228742, 15780247, 15439334, -4645007, -72967736, -58252640, -45535780, -40685152,
--32058172, -30416958, 33442226, 49999324, 54350664, 52010980, 42861628, 29352880, 26404386, -529355,
--7988639, -42276972, -57024280, -51077900, -42633456, -27248346, -17794586, 1903207, 25476672, 51852068,
-38766376, 24608016, 17751100, 4735739, -548682, -166430, -10603201, -13758928, -11458436, -13467407,
-2892124, -5226975, -18506478, 2125472, 8365523, -3543885, -4925254, -4093104, 1682017, 3077344,
--4189204, 799938, 4656282, 1343251, 504659, 18254, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--3324305,
-3346317, 2889976, 6421513, -8774618, 1864016, 5806796, 10568304, -1130650, 5942088, -237834,
-5392332, 1321776, 8284992, -155693, -2724620, 5610838, 7937637, 7559680, 4425427, 1229971,
--3105261, -2411624, 716186, 3863860, -1990181, 1802813, 441308, 4391067, -2152852, -108985,
-1056562, -5212480, -3074123, -1523103, -5494337, 1320703, -1579474, -31675, -782221, -4527433,
-3495567, 5431523, -1161789, 450972, 455803, -848793, 5704254, -6957310, -66035, 2902861,
-727460, 938450, -1722282, -5759015, -1524177, 2264522, 2608119, 2971581, -574989, 120259,
--12885, 1189706, -1033477, 6068252, 115964, -512712, -4019016, 556198, -2894808, -2169495,
-2330557, 2620467, 6179384, 241055, 6074158, 717796, 605590, 433792, -3300146, 221728,
--1212791, -1626719, 602369, 1984275, -1300301, 814433, -1343788, 1580011, -1688996, -482110,
--898722, 923955, -583579, 864362, -791348, 1014686, 1678795, 892279, -917512, -205622,
--504122, -401579, 432181, 395674, 6939594, 11257109, 1504312, 5604396, -2035815, 3329137,
-4342749, -1335735, -3485903, 5902896, 10177462, -1995549, 1127966, 3939022, -4875862, 3034931,
-4343823, -8898635, 2501282, 870268, -2004139, 2147, -9269076, 378494, 2594160, -4404489,
-813359, 156766, 5934571, 4241817, -2230699, -632971, -565862, -6308233, -4244502, 695248,
-2546916, 571768, 2829847, -4167192, 627602, 2083059, 428423, -3857954, -2827699, -854162,
-1341104, 3123515, 3227668, 2155537, 3768297, 3691525, -4144107, -1266479, 165893, 5246840,
--800475, 3765076, -2477659, -2560874, -795106, -4712653, -2177549, 967441, 2748779, -4022237,
-3936338, -1112933, -1177895, -784905, -1597191, -2033667, 812286, 3064459, 1140314, 5114769,
--7095823, -5717675, -1261647, 2120640, -77846, -1165010, 1082332, 160524, 1313186, 2159295,
-3612604, 66035, -215285, 857383, -337692, -51003, 555125, -1649804, -889058, -3424163,
-1351304, 6541772, 9217000, 5365488, -2332704, 3974455, -2429878, -1613297, -7904888, -6270653,
-2834142, 6054830, 5900748, 6172405, 1364189, 344134, 3806415, -5076652, 5108864, 4157528,
-373125, 3572876, 9138080, 6234145, 1734630, -6562173, 181999, 2221035, 1409286, 1095754,
--7211250, 1735704, 1316408, 4831302, 5311801, -1661079, 3408057, -2580202, -2885144, 3884798,
-2188823, -6884296, -6534256, -2848637, -3675955, -2719251, -2922188, -7955353, -7217693, -643708,
-2592013, -37581, -770947, -5358509, 704912, 6378027, -1797981, -2004676, 2389076, -5369,
-4596689, 2323041, 2343442, -2965138, -3679713, 6847252, 3118683, -2731599, 4495220, -593779,
-3501472, -2965138, 541703, 5055714, -1930051, -1631014, 3628711, 451508, 1437740, 2172717,
--2525441, 2837363, -1194001, 2325188, 2323577, 1811939, -1625645, 594853, -817654, -1366337,
--1768990, 101469, 193274, 1144609, 963146, 268435, -106837, 898722, 261993, 625992,
--12756590, -7500624, -2357400, 2422362, -5263483, 1607928, -1446867, 3673808, -899796, -7135015,
--5687074, 4942971, 4032974, 10218801, 9011915, -1368484, 6517076, -9818832, -1608465, 7635915,
-2289755, 1772211, -1017370, -3207804, -1507534, 1056025, -887985, -298500, 3852049, -4816269,
-1061931, 1748589, -128312, 3038153, -3322694, -2714956, 1735704, -2112587, 2704219, -5385889,
-878858, -3237332, -1286343, -3605625, -2710124, -4095788, -6081674, 3713536, -54761, 6334540,
--5945846, -5083631, -58519, 1207423, -713501, -1226750, 401579, 3811247, 1811403, 813359,
--2626909, -2526515, -1446330, -4746476, 733903, -1238024, 535797, -234613, -5119064, -440234,
--425202, -5412196, 127775, -1031866, 605590, -924492, -6034966, 528818, 2679523, -1209570,
-3949223, 1083406, -2148558, 1657857, 4144107, 1355599, 694711, 926639, -908386, 500901,
-3235721, -272730, -543313, 1182190, 1313723, 499290, 1053878, 212601, 426276, -2201708,
-214748, -194884, -1097364, -806380, -816044, -1134945, 141734, -936840, 4430796, -6810745,
-2770254, -7617125, -1333587, 414464, -5653788, 5357435, 4054986, -11330124, -1152662, 1947231,
--1053341, -4938139, -6669548, 1409286, -3359201, -5513665, -2740189, 3321084, 2911988, 8093866,
-10481331, -880468, 9365176, -5717139, 3679176, 4112968, -840740, 4051228, -2314451, 117038,
--621160, -1901060, -1013075, -2132451, 7795903, -409096, -5833103, -1362042, 3896609, 2458869,
-3112241, 651761, -2736431, 5733245, 11608223, 752156, 1154809, 708133, -883690, 1867237,
--800475, 6668474, -5099737, 6379100, 4383551, -4013110, 2048163, 4161823, 2810519, -4816269,
--5264556, -10335302, -1717987, -958315, 1289027, 4023311, -1000191, 2625836, -907312, -2734284,
--2769717, 5365488, -1248225, 5689221, -8398272, -3287798, 1895154, -5293547, 1350767, 5720360,
-512175, -27917, 389231, 1229971, 753767, -3204046, -1060857, -512712, 436476, -560493,
-1014686, 1474248, 721555, -921807, -2195802, 2375654, 877784, 929860, 582505, 695785,
-134755, 67646, -1082332, 993748, 425739, 391916, 130997, 1042066, 652835, 1247151,
--1485522, -874563, -1737314, -1570884, -464393, 1247151, -1035087, 117038, 3010235, 1332514,
-153008, 4044786, 11738682, 13835700, -3592203, -321586, 2917357, -2094870, 8964134, 8744017,
--5505611, 8571144, 6741488, 2592550, 3910568, 3490198, 1788317, -757525, 625992, 1145683,
--4729833, -5796059, 1520418, -1627793, -70867, 993211, -5116380, 5155035, 10367514, -332860,
--6220187, 10126996, 1232119, 300111, 3978750, -1792075, -3041374, 1462436, -3814468, 1508070,
-10349261, 4420595, -78920, 3685082, 5622649, 14593225, -2393908, 6286222, -1259499, -6371047,
-4168803, 358093, -2119030, 2851858, 8950712, 2275796, 1584306, -156766, 3579318, 12905840,
-5790153, 1588064, 1302986, 3374234, -3739306, 6584722, -1716913, -12834436, 1549410, -1408749,
-7701950, 9046275, 3919158, -3923453, -3541201, -3354370, -468688, 2783139, 252329, 1868311,
-1290638, 1958505, 5777805, 2456721, -4610648, -2046552, 620086, 1547262, 277562, -171799,
-154082, -2581275, 2648921, 567473, 520228, 226023, 518617, 180389, 1974074, -882616,
-1431298, -1526861, -455803, -2371359, 434865, -958315, -155156, 773094, -15583752, -1796907,
--6591164, -7866233, -2035815, -5622112, 304406, 4756677, -7298223, 7558069, -16190416, 2263448,
--4765266, -8690866, -11567958, 12070469, 6088116, 735513, -10245108, -6771553, 3881577, -13401909,
--9298067, 3125663, 2878165, 13521631, -1719061, 1085016, 10094247, -6023692, 9916543, 3343095,
-3661460, -1968706, -5902896, -739808, 8266202, -4478041, 744103, 10284299, -3724811, -3085934,
--4952098, -6174016, -5257577, -4015258, -8294119, -1058173, 2551748, -2893734, 1880659, -2768107,
--4221953, 5769215, -7399155, 4493073, -6282464, -8010114, 433255, 6534793, 474594, -2005213,
-2652142, -5350456, -2636573, -7483981, -13248363, -6306086, 1938641, -4053376, 15234249, 6019934,
--10553272, -5363878, -1525250, -3841312, 4924180, 10280541, 6813966, -5000416, 4813048, -5925445,
-3604551, 521839, 4825396, -5245229, -1192927, 456340, -2256469, -4472135, -3688840, 690416,
--195958, -1040993, 2393908, 899259, 414464, -1475858, 1452773, -286152, -1098975, -3243237,
--22012, -1660542, 336081, 1459215, -1018444, -3599183, -367220, -1517197, 16913044, 11003169,
-11574400, -3393024, -16451872, -1330903, -8431558, 2089502, 3640522, 8825084, -4163434, 3855270,
--6772090, 1127966, -5974837, -15316390, -8260296, 5823439, -5594195, -12142946, -11408507, -10619307,
--16559783, 2032056, -5810017, -12619688, -11347304, 1962800, 15914464, -2156074, -2673080, -5352603,
--9673877, 1967632, -3858491, 1031866, -12064026, 743566, -12565464, 1726577, -1033477, 6719477,
-5214627, 5588826, 2874944, -500901, 4651450, -3105798, 9160628, 2554432, 4633733, 2759517,
--3005940, 3241090, 9232569, -1230508, 5155572, -1335735, 14525043, 1847910, 5456219, 687732,
--8148090, -6256157, 286689, -2909840, 1879048, -2129767, 4816269, 4272419, 5599027, -2593624,
-3195993, -11165841, 5936719, 16276852, -7852811, -1672890, 4338991, -9401147, -633508, 5854578,
--3674345, -598074, -1938104, 5092221, -5228049, -1261647, 1433982, -2938831, 1434519, -1026497,
-2171106, -2718714, -2687039, 3000572, -1338956, -2984466, 2123861, -1182190, 83752, -4211216,
-3235721, 1072668, -675921, -700080, 1854352, 649077, 1799054, 1293322, 341450, -1802813,
--3153580, -927176, -8148090, -23716272, -3899294, -8296803, -12445205, 6684043, -23773718, -3117073,
--8443369, -4640712, 6891812, -7607461, 10084583, 8645769, 1402307, 7792682, 712428, 4103841,
--6184216, -10980084, -12034498, -6777459, -11027865, 8575976, 11299522, -520228, -5927055, 3221762,
-3269544, -4190278, 846109, -18855980, -9936944, 8715026, -4782446, 216896, 8603356, -853625,
-5327907, 4507568, -2435247, 5163088, -47245, -10071161, 11183021, -7891466, 551903, 577136,
--6149320, 4065187, 6672769, -3966939, 7621957, 817118, -580894, -6994354, 8608725, -85899,
--6951405, -2343979, -13938779, -5889474, -7952669, -1044214, 9605694, 2733747, -900333, 124554,
--9016747, 1996623, 6956237, -9141838, 535797, 13914083, -5729487, 1336272, 1069447, -9947144,
--5952825, 6313602, 5326833, -16164646, 3263102, 12036109, -47782, 1410897, 84289, 2879776,
--908386, 7588671, -1731409, -343061, 988379, 1436667, -3441880, 850404, 2696166, 802085,
-4540318, 1639067, -83215, -1686312, -3551938, -1053878, 1708323, -2230699, 1616518, -2286533,
--50466, 3115462, 1699733, -2231236, -2983392, 136902, 118112, 6656126, -2676302, 528818,
-3671123, 1459752, 3586835, 42191612, 9388799, -5535139, -8465381, -829466, -2677375, 7467875,
--1666984, 6309844, 11965242, -4841502, 601832, -7935489, -5422396, 2527588, -1306744, 6130529,
--11828877, -6953015, 5583458, 11833172, 7826504, -391379, 2808909, -2930242, -7123204, 5123359,
-9266929, 9690520, 11727945, -9741523, -2300492, -5601174, -12046310, -1553168, 626528, -2671470,
-5538361, 7273527, -15569, 3572876, -2160369, -12834436, -6964827, -17154636, -17370458, -5106179,
-5822902, -2576444, -7691213, 14524506, 5511517, -630823, -13650480, -662499, -4200478, -9804873,
-128849, -4507568, -6320045, -13563507, -1725503, -5036386, -14859513, -44560, 11385958, -7684770,
--3613678, 4159676, -6382859, 2502355, -6323266, 9222369, -2950106, -8995809, -13881871, -22871238,
-4530654, 3815542, 17471390, 6980933, 6069863, -127238, 5326833, -4150012, 5645198, -561567,
-2014340, 2750390, 6694244, 3004330, 310311, -1262184, -287226, 2593624, 1693291, 6873559,
-5476620, 3587372, 1232656, -1452236, -3602404, 1952600, 4542465, 357019, 345208, -885837,
--3173444, -601832, -415538, -1595044, -1085553, -2541547, 2151242, 3008625, -2787434, -2956548,
--87510, -425202, 1678795, 9491878, -33430952, -19048716, 17723182, -4604742, 1139777, -9182640,
-7733089, -3167539, -12898324, 6202470, 17916992, 2303713, -15675020, 4428648, -3411815, -3580392,
-10317048, 10704132, -1440962, -2169495, 22561464, 5048734, -3241090, -13856638, 6142877, -19876034,
--16361678, -15073725, 6123013, -2844342, -1613297, 12970264, 5173825, -13156022, -10997801, 2873870,
-12805982, 4392678, -1457068, 737661, 8540006, -6157910, -13899588, 18154290, -5327370, 1893007,
-7331509, 1141388, 2519535, 18669150, 329639, 11895449, 542777, -12495670, 1815697, 2679523,
--2586107, 2391760, 8497593, -6316287, -1915019, 2177549, -24712704, 6562173, 5058398, -138513,
-5935108, 4625680, -9168145, 4349728, 33949568, 14594299, 8389145, 2462090, 8246874, -26099980,
--12371116, 13208098, 529355, -121870, -10014253, 8825621, 10684268, 8944806, 1490891, 1873143,
--3584687, 141197, -6211060, -2259690, 4900558, -1109712, -3133716, 2543695, 197032, 2440078,
--3624953, -1541356, 1210644, -667867, 2468533, -4340065, -1504849, 3074123, -3465502, 2483028,
-894964, 308164, 83752, 15032, -2814814, 1383516, 2571612, -1316408, -1319629, -3020973,
-1297617, -205085, -22415972, 15753940, 16830366, 5448703, 9277666, -6209449, 26872536, -3142306,
-10241350, 7035157, -12416750, -5064840, -5738077, 15647103, -9306120, -2866891, 9826348, 8304856,
--9147207, -2449205, -26415660, 4966056, -2944200, -7720204, 2268817, 746251, 1932198, 2459943,
-8921184, 398358, 9773735, 1198833, 4755066, -2495376, -8523363, -9035537, 17041356, -6042482,
--12371116, -10364293, -4732517, -5686537, 7383049, 4626754, 5681705, 7579544, 2244121, -9314710,
-5339718, -15212237, -5009006, -13288092, 9148280, -16045998, -11560978, -3378529, -5435281, 4838281,
-10798622, -8562017, 10193568, 16848082, 8329552, 16231218, -6812892, 21776558, 1970853, 18454400,
-10427644, 2327872, -9839233, -24668682, -16704202, -13536126, -7722351, -7572564, -2434710, -11469173,
-8658654, 14479945, -5568425, -11042361, -10111964, -7960722, -15040439, 9499931, 6838662, -3962107,
--3882114, -5805722, 765041, -3275986, 8095477, 53150, 2072322, -4288525, -3710852, -6059125,
--1125281, -7263864, -7006703, 7209103, -507880, 906238, 177167, 2661269, -2865280, -242666,
--4304094, 172872, 25233, -160524, 2216203, 262530, -3522410, -2287070, -2527588, 734439,
--3784940, -4095788, -5204964, 1433982, 12482249, 6362994, -7102266, 21017422, 2376728, -20511690,
-25618406, 1719598, -10910291, 9044127, -21038360, -4024921, -13393856, -4179540, -2369748, -4107063,
--9572945, 2687039, -18175228, -7027104, -6550899, -24526410, 2984466, -17785460, -12640626, -19953882,
-4010426, -15053860, -4540318, -4984310, 169651, 7597261, -6113886, 10692858, 560493, 14187351,
--3294777, 12341052, 15551540, -18648212, -270046, 5011153, 11419781, 452582, 13729937, 4602058,
-13239237, -270046, -10096931, -6347425, -960999, 8568997, -1959042, -3929895, -847182, 15862925,
-10022306, -3761318, -13054553, 4388383, 7191923, 5113159, 14071923, -18821084, -13915694, -3970697,
-1341104, -5293011, 165893, -5397164, -11758547, 33042794, -16301548, -18927384, 14150843, 8150238,
-12295954, 3776887, 4531728, 2549600, 7196755, -6776922, 18992882, -3310346, 4672388, -3660386,
-2558727, 1146756, -1021129, 12105902, 1534377, 1066763, -11907797, 5408975, 1803886, -1743220,
--9693741, -987306, -1989107, 264141, -3073049, 8723079, 2036351, 2443300, -6999723, 4802311,
--3315715, 983548, 4223564, -167504, -2055679, -2247342, -6226092, 3640522, 6405944, -3031173,
--686658, -2247879, 969589, -3617436, -8388071, -2535105, -263604, -5751498, 5989869, -510027,
--794032, 2026688, -5635534, -6391448, 2623688, -4400731, -5602785, 16653736, 12264279, 19691888,
--6556268, -4876399, -27045410, 31403190, 14394046, -41827612, -22386444, 13401372, 18618146, 18728742,
--12031277, -9767293, 22662394, 5373541, 5201206, 15709917, 12700218, -23130010, 7087233, 9743670,
--1731946, 10911901, 2099165, -2975339, 2261837, -7534983, 38612292, 10104984, 5029944, -1067299,
--4774930, -2602213, -21901648, 4192425, 6437082, -5164698, -7180649, -35464080, -16939352, 7412577,
-6182606, -11646341, -11381663, -1617592, -16879758, 6971269, 6267431, -2469606, 7051263, 13966697,
-702764, -742493, -4477504, -7487739, -2441152, 1238024, -26132192, -3496640, 6140193, 15916612,
--28283434, 6264747, 10139881, -2244657, -13314935, -12041478, 21358872, 21089900, -3087008, -13200582,
--25006374, 5244692, 10030896, 5228586, 417149, -27287000, 11503533, 24794310, -8400956, 2778844,
-7798050, -10235444, -16289200, -8638790, 2486249, -5080947, -1293322, -7707856, -6616934, -5638755,
--2376728, -2239826, 3317862, -628676, -496606, -7030325, 2886218, -3322157, 1504849, 16106,
-2263448, 4203163, 4944044, -7854422, 3140695, -6080600, -10166188, -5383742, 1460289, -1072668,
-4443681, -1032403, 2894271, 5956046, 301721, -325881, -5270462, -2991982, 7950522, 3981972,
--3326452, -2085744, 12441983, -9162776, 3395172, -7635915, -6732898, 1169305, 8434779, 16833588,
--31005906, -40464496, -28118078, -36200668, 31436476, -20968568, 12662100, -3545496, -25420838, 4548907,
--6891812, -9450539, -33003602, -30245160, -22572738, -8619462, 1193464, -17500382, -5052492, 4622996,
-14236206, 1127429, -8825621, 35970, -9438191, 13643500, -17140140, 23721104, 20461224, -4887673,
--6480569, -28125594, -16380468, -17103096, 2084133, 3784940, -4557497, 22990960, 6577743, 18638548,
-3702262, -2190433, -8424578, 16770774, 11608223, 5269925, -16804596, 9026948, -28439126, -3167539,
--2989297, -18888730, -3076270, 249108, 21809308, 14443438, 452582, 10088878, -360777, -21446920,
-10976326, 3056943, 17947594, -10116795, -20614770, 12345883, -37077916, -8491687, 13182328, -5548024,
--5865852, 9119826, -2374580, -7291781, 6921877, -3066607, -23772644, -20914344, -3417183, 9836549,
-15895674, 22328998, 22383222, -9431211, -7541963, 4436165, 8149164, 7345468, 3105261, -9880572,
-8781061, 213138, -1788854, 1176821, 5470178, 9111236, -2585034, 1585917, 8628052, -1926830,
--105764, -8580808, 4385699, -1818919, -529355, 7195681, -1323387, -3112241, 3274376, -9751723,
--3557844, 10072235, 2942590, 3323768, -3449933, -2244121, -1391033, -7745974, -944356, -4272419,
-6039261, -16936666, -40449464, -3780645, -25750476, 1571958, -18962818, 17254494, -13540958, -1455457,
-3408057, 6429566, 20827908, 6963753, -9412958, 22462678, 7016903, -38289096, 6332930, -22985054,
--1603097, 4346507, -3174518, 18862960, -5566815, 3404835, 4816806, 1634772, -12236899, 19142132,
--11063836, -1087701, -22388054, -53150, 3842922, -3584150, -7850127, -10327786, -11676942, 29027000,
-1204738, 15008763, -25846040, 2876018, -284542, 8838506, 15491410, -17853642, 31659814, 45471356,
--2039573, 4333622, -15854335, 7221988, 10635413, -8864276, 2307471, 8498130, 17706540, -657130,
-1077500, -5564667, -15335181, -23180476, 11798812, -17411798, -7284265, -11443403, 5046050, 15444702,
-13977971, -2872260, 5268315, -31452046, 20735028, -3979287, 4534412, -9330280, 20257750, -28254980,
-33574296, 24274082, 27975270, -11441793, -649614, -27713814, -14928769, -10410464, 9074192, 7492571,
--22807350, -16913044, 645319, -6002754, -16642461, -257698, -11519639, -13892609, -5119064, -2274722,
-1051730, -9273908, 1612223, 2807298, 13817984, 12122545, -1932735, 11406359, -5755793, -14835891,
--8075076, -3401614, -7361037, -1411971, -5477694, 7943005, 2476049, 31513786, 4188667, -11283953,
--3785477, 2517388, -16654809, -10732586, 3936875, 307090, -4334696, 1289564, -14496, -18547816,
--1931662, 11759620, -8990977, 50797116, 14543296, 36935108, 11821897, -38556460, 15507516, 10678899,
--12800076, 2581275, 24916180, 1061394, 23849416, 21053392, -24706262, 13572097, -24716464, -16770774,
--2314987, 49706192, 15328201, -22518514, 21242372, 13600014, -27356794, -12149389, -1838783, 27788438,
-4149475, -25546466, -14297409, -863288, -6942278, 15394773, 22345642, -8135742, 19659676, -12709345,
--17064978, -661425, 40460740, 3688840, -23167054, 13131326, -1046898, -2382096, 11358578, -26417270,
--22718766, -21690658, 15887621, -14231911, 5157719, 6665789, 24215026, 11879343, 24893630, 2570538,
--1021129, 20182588, 37248104, 22028350, -36734320, 685047, 3634079, -6311455, 7157026, 10125385,
--28351080, -4365835, 5690832, 4837744, -33776696, -32161252, -17918066, -19577534, 33670396, 12338904,
-1630477, 14731201, -27341762, 11220602, 7667591, 4912369, -2346663, -6378564, 23295366, 13844290,
--9205189, 3856344, -6919193, 15037217, -4283693, 942208, 3273302, 2120640, 11389180, -1921998,
--18252000, -909459, 3539590, 4670240, 9540196, -2709588, 949188, 6908992, -14116484, -8591545,
--1210644, -26045756, -3855270, 6995428, -1798518, 2619930, 14930917, -2307471, -10205379, 2007897,
-3716757, 9413495, 11613055, -11294690, -6705518, -964757, -9278203, -6369974, -17904108, -21727702,
-6105296, 82678, -9534827, -8381629, -9730248, -19330574, 14476187, -38626788, 27954332, 31219044,
-8655433, 33997352, -34842924, -17059074, -9424232, -50085224, 28221156, 2811593, 17473538, 22952842,
-22468584, 1716913, -696322, 22816476, -3604015, -27134530, -28142236, 17022030, -31798328, 31022548,
--8899172, 6783901, 30764850, 27713814, -13948980, 42212548, -24475944, 2710661, -25450902, 4090420,
--8693014, 16601659, 5659693, -18090940, 16212428, 24601572, 36191004, -20950314, 7748121, 22181358,
--30511984, 1374926, -12258374, -44168368, -18981608, 11747272, -24233816, 8597451, -20343650, -528818,
-29726006, -14143327, 12595528, 34203508, 24461450, 9121974, 45536316, -70967352, -13362717, 23635206,
--2729989, 13754096, -21962316, -38376068, 46562276, -717796, -23455890, 9998684, 29465624, 73065448,
-27689118, -55350316, -30186104, 18786186, 20447266, 8812199, -38626788, -3425237, 8465917, -11996381,
-26074746, 9269613, 16641925, 19753628, 14859513, -10208064, 11471321, -30752502, 4404489, 16320876,
--1989107, -16358457, 9491878, -10022306, 16251619, 17901424, -7722888, -15073725, -4064650, 33111514,
--5975374, -4000762, -13048648, 14905147, -12960064, -8087961, 9558987, -6328098, 31243740, -2524367,
--7798050, 31323196, -2864743, 7196218, 19217294, -1628866, -1703491, 1674500, 2803540, -14984067,
-6666326, 620086, -21532818, 14392972, -6725382, 27464168, -15079093, 8664560, 2580739, 37442988,
--32917704, -2981244, -15734613, -19508278, 30005178, -11678553, 39397200, -3911105, -30403000, 47262356,
-68317896, -9756018, -21829172, -33013802, 7836705, 36290864, 7128035, -7660074, -22656490, 5366025,
-5332202, -5029407, 5580773, -3249143, -11147588, -11377368, 10439455, 14894410, -1171989, 20138028,
--19471234, 41326712, 31128850, 17928268, -1538672, 2418067, 5855114, -21929030, -19192062, -21261162,
--11191074, -5862094, 13209172, 11586748, 22399866, -10894721, -2721399, -9664750, 25485262, 49776524,
--11815455, -32129040, -20691004, -1378685, -43453256, 33669324, -59005872, 16925930, 24930674, 25577068,
--25752624, 5902896, 25959856, -59794536, -28281822, 12147778, -6379100, -30027726, -26471494, -3541201,
--13903346, 44267692, 18973554, -16394964, -15033996, -24790014, 67938864, 14469745, 35458176, -2707440,
-10303090, 12692165, 15174119, -22420266, -2927557, 28063854, 19388020, 11457899, -9416179, -12322798,
--83752, 8593693, 12937515, 8612483, -17641042, 2266669, 86436, 4293894, 12542378, 12414066,
--18478024, 8276402, -11432666, -14186814, 1345935, 14058502, 5723581, -8988830, 1854889, -1597728,
--2753074, -7771744, 27026618, -8442295, -62814, -16681116, 3672734, -6467147, 17758080, 5313412,
--3992709, -10077604, 10020159, 7922067, -12671227, 312459, -20527260, -8594766, 4628364, 7771207,
-11290932, -758599, -25681220, 7734699, 39410084, 1304060, -13455059, 33083596, 23506892, -6737193,
--21288006, -31996432, 6028524, 63225676, 13766981, 32468342, -2951180, 2930778, -2666638, -7316477,
--118112, 3002182, 15167140, 5157719, -12389370, 10612327, -10864120, -11700565, -13492640, 440771,
-12524662, 2856690, 9980430, 10976863, 8627516, -8766028, -15822123, 5078799, -11018739, -27027156,
--8211441, 6272800, -9647033, 31826782, -32912872, 26757110, -8640937, 317291, 39217884, -6064494,
--1286880, 51604568, -8122320, -20834350, 3562675, -17834852, -4304094, -16831976, 57111252, -16100222,
-13591424, -13657996, -6426345, -7738994, 9270150, -14310294, -35415228, 15640660, -4301410, -38873212,
-20132122, -10094784, 21430276, 49104896, -24826522, -401043, -2806224, -7118909, -26699128, -4475356,
-23887534, 9840307, 14540075, -22091164, 6294275, 4093641, -21790516, -5698885, 4476967, 11206107,
-13475997, 1294933, 2320356, 9160628, -2469069, -10526428, 15226196, -5972152, -5038534, 14313515,
-1584306, -3736085, 20746302, -1241246, -1937030, 344134, 6540699, -6160057, 10295037, -8046085,
--4464619, -6322729, 5185100, -6979, -1130650, 3228742, 9426916, -11468100, 2163053, -1395864,
-6658273, 2258616, -2609730, 12181064, -7688529, 6649683, -2441152, 3722126, 459562, 9160628,
--13980119, 40265, 65739308, 33405182, 68971272, -38569880, -10020696, 22825604, -21573084, 16539919,
-70950176, 16891570, 10260677, -18645526, -17644800, 20414516, -10750840, 28834262, -4720169, -6471979,
--8341900, -40686764, 9823127, 49148920, -25905632, 29765198, 25873420, -16495359, -4999342, 20518132,
--32588064, 16372952, -2304787, 24693914, 8329016, -20277614, -6564858, -40904732, -21032454, 19338628,
-14471892, 31982474, 49737868, 5417028, 793495, -42960948, -26312044, -25612500, -21176874, 11380590,
--17568564, -4925254, -4034048, 12998182, -32895154, -5214091, 17035988, 8889509, 27123256, -3536906,
--12991739, 27073326, -4890357, 16629040, -20780662, -12451647, -3220152, -6851547, 13226889, 19717122,
-27740656, 7923141, 2277943, -19082002, -5405753, -9756555, 23224498, 333934, 34809636, 6128382,
-26214332, -25442312, -9165460, -111669, -646393, 19059454, -3044595, -9381282, -5163625, 4725001,
-1289027, 4995584, 8752070, 7907035, -4857608, -5631239, 326418, -3313031, 7368554, 7954280,
-1814087, -6578816, 245887, -8642011, -3682935, -1868848, 14921790, 5395016, -2004139, 3926137,
--10071698, -11809013, -8062191, 3770445, 8157217, -7031935, -759672, 138513, 6062347, 3417720,
--1004486, 6538551, 953483, -329639, -6519761, 3097745, 1813550, -2632815, -18079664, -67524936,
-1752347, 108659992, 97988608, 92165168, 39050916, -39142184, -54268524, -53801444, -48118668, -88320096,
--63079648, -61475476, 47531328, 73056856, 59576028, 95081984, 79076792, 16786880, -3704946, -34017752,
--66315904, -39555040, -69683160, -37821484, -23352810, 384400, -9350681, 17483738, 29851634, 50814832,
-31916976, 53389664, 40582608, 42422464, 3244311, -34907348, -15963857, 1229434, -38211788, -50378892,
--65593816, -64403572, -45761264, -6416681, 31907848, 12654047, 46452220, 32930588, 52988084, 47267188,
-51376936, 59711320, 32040456, -4565014, -9720585, -38954280, -31981400, -105214352, -84272088, -67448704,
--52822728, 6162741, -23112292, 1515050, 71785008, 88787712, 121346248, 76819784, 46072116, 31439160,
-7233262, -46508052, -42750492, -64845952, -83967144, -71009232, -66367984, -31074088, 4648765, 33590404,
-55068460, 54523000, 46261092, 29273960, 31002684, 13387950, 8255464, -1484448, -25905096, -22432614,
--20644298, -22826678, -12303471, -25514254, -18409840, 6337224, 2033130, -14825690, 7912941, 21053930,
-11791833, 24020142, 37248640, 38939784, 17005386, -24040006, -10578504, -3348464, -49256832, -51750060,
--45331232, -18820010, 13822279, 22193706, 18297098, 31113816, 34957276, 43404404, 28573880, 17772038,
--6861747, -29052770, -29781840, -32909114, -44574244, -31455266, -17709760, 15184857, 23820426, 15628312,
-9210020, 28147068, 18712636, 11580306, 2381559, -4144107, -9283572, 970663, -11103027, -12775917,
--5059472, 4378719, -7834021, -5544803, 814970, 5854578, 321586, -2796561, -4303021, 4425964,
--463320, -1953673, -4393752, 1906429, 1319629, 2702071, -1252520, 1613297, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
-1097901,
--1261647, 4443144, 4995047, 2682744, -1933272, -7547868, -6924024, 2508798, 3972308, -1468342,
-7419019, -1438814, 4425427, -5273683, -4651987, 2025614, 181462, -1371168, 1959042, 4809290,
--2097555, 664646, -2753611, -278099, 252866, 1968706, 1832340, 2467996, 406411, 1467805,
-5493263, -2124935, -2575370, -2780455, -4983236, 1428614, -1050656, 9104257, 1767379, -689879,
-713501, 5521718, -513785, -1209033, -1412507, -3245922, -597537, 4244502, -656593, 1757715,
-4293894, -1353452, -312459, -6916508, -4065724, -6307697, -1236414, -1836099, 927713, 338229,
-905164, 2242510, -1514513, 1080721, 67109, 550830, 957241, -2306398, 2172180, -751082,
--2623688, -339302, -2645700, -811749, 243739, -4124779, 1087701, 179315, 3170760, 326418,
--58519, -1899449, 421444, 3156801, 1543504, -796180, 348966, 695785, 766115, 2405719,
-285078, 142271, -586800, -371515, 238908, 86973, -251256, 1584843, 865436, 937914,
-670015, 488016, 201327, 471910, 5119064, 12112345, 4767951, 2874944, 3352222, -7099044,
--846109, 3080029, -973347, 1211718, -6497749, 6389301, 8629663, 1501628, 3849365, -1808181,
--5071820, -7830263, -8595840, -5697274, 6795175, -6412923, -4092567, -5425618, 1733019, 4532264,
-843424, 623307, 2517388, -245350, 1586454, 5582384, -792958, 4642860, -4422743, 4236985,
-2930778, 2697776, -2334852, -7196218, -1544041, 4136054, 2433099, -2004139, -251256, 1437203,
--315143, -3467649, -739271, 2958159, -1022202, 336081, -1728188, -371515, 204011, 994285,
-5079336, 2137283, -2618320, 448824, 411243, -1719598, 918049, -2508798, -304943, 4137127,
-1333587, 4640712, -3318936, -2831994, -1708860, -724239, 2347737, 5259188, -3039226, -3791383,
-4510253, -417149, -97174, 164283, 1549946, 1125281, 3789235, -1061931, 1760937, -2309082,
--2179696, 178241, 1016834, -152471, 67646, 879931, 940598, 734439, -1966021, 2207613,
--461172, 3546569, 1509144, -3982509, -3751654, -4267587, -664109, -3483755, -7330973, -6988449,
-7218767, -158377, 1524713, -54224, 4399657, -6499896, 9663676, 8576513, 450435, 457414,
-19327, 255014, -947577, 3358665, 2619393, 212601, -5490579, 2382633, -1699196, 2643552,
--760209, 5857262, -1358283, -3408594, -1538672, -919123, 2176475, -36507, 3628174, -5815386,
-3141769, 1014149, -3221762, 9152038, -1447404, -1310502, -186294, -142808, -2406792, -779000,
-4890894, 3998615, -8571144, -4046396, 4366908, 1255741, -2045478, 7463043, 279173, 1672890,
-7354595, 3034395, 5775121, 1629940, -2209224, -2996277, -5765994, -5593121, 819265, 2976949,
-7157563, 272730, -2909304, -3648575, 1250909, -67109, -1990717, 2320893, -799401, -1835025,
-1680406, 3875671, 1263257, -1943473, 1949915, 2018635, 2538326, 1624035, 135291, 241592,
--2393908, -504659, -25770, 1230508, 1044751, 1974074, 1916629, 1585917, 609885, -155693,
--9784472, -3417183, -4757750, 4440996, -3248069, 2882997, -3512747, -1459752, 8306467, 4052839,
--5506148, 2508798, 7922604, 1155346, -2771865, -5565741, -6675990, -4584878, -6713034, 4454418,
-1017907, 2448668, -1285806, -3045132, -3204046, -5922223, 310848, -188442, 1408749, -1447941,
--5378373, 82678, 5750425, -1278827, 68719, -2869038, -5729487, -8485782, -727997, 6107444,
-2223183, 638876, -2874407, 777926, -4600447, -1511829, -3461207, 436476, 783295, -5244692,
-5916855, -3335042, 7528541, 2843268, 716186, -3424163, -1794760, 1930588, -430570, 1826435,
-4041564, 817654, 1603633, -4476430, 2641405, -2252174, 6920266, 8566849, 3932043, 5756330,
-2681670, -882079, -6011344, -3885335, 496069, 4427575, 4465692, -3575560, 469225, 4207458,
--5505611, 5434744, 348966, -2792266, 1792612, -1173600, -263604, -3105261, 609349, 877247,
-535797, -2491618, 659814, -1761474, -2335925, -818191, 165893, 1029182, -1524177, 374736,
--660888, -2167348, 231928, 1782948, 748398, -1552094, 1003412, -1168231, 3275986, -7900593,
-1037772, -8448201, -37581, 1298691, 785979, 3816079, 382252, 609885, 14949171, -1869385,
--6602976, -7115150, 7509214, 5037460, -5665062, 1376537, -6317897, -2700461, 212064, 7158637,
--8864812, 2593087, -345208, 1422171, -674847, 9087614, -4693326, 2570001, -1418413, -2392834,
-1382443, -425202, 2724620, -2767033, -2576444, -7670275, 1207960, -2538863, -1649804, 621160,
--2716030, 2279017, -4329327, -2565169, -7619809, -215822, -6764574, -2842732, -8046085, 5997922,
-1221918, -2453500, 5267241, -6084895, -22549, -11609297, -616865, 4038343, -307627, 3465502,
-7408819, -2576981, -1030792, 9278740, 3918621, 3596498, 5665599, -2902861, -8543227, -883690,
--5108864, 3764539, 8540006, -1508607, 2517388, 4564477, 3835943, -425202, -697932, 1085553,
-183610, -1545651, 2318209, 2090039, -3527242, 1214402, 3022583, -1472100, -1056025, -5237713,
--1196148, -2181844, -700080, -2264522, 494995, -519154, 445603, -197032, 393526, 1402844,
--1517197, 593779, -600222, -1540283, -173946, -223875, -439697, 164819, 946503, 1544041,
--1428077, 566399, -1200443, 271657, -97174, -1603633, -607738, -1076426, 4223027, 4776004,
-1727114, -2874944, 2066416, 1255204, 9092983, -1377074, -1955821, -12259447, -3469260, 9233643,
-9004399, 5803575, 4562329, 13140452, 807454, -15670188, -4024921, -2602213, -3803194, 8370892,
--1330903, -3030100, 9740986, 1534377, -4024384, -1384053, 3885335, -3448859, -1372779, 1200443,
--1251983, -5451924, -2483565, -246424, -5285494, -2408403, -2223183, 3695819, -2484639, 7109782,
-6895570, 681289, 6558952, 4616553, -2971581, -999117, -2257005, -10180683, 1140314, 2115808,
--9701257, -1380832, -2754148, 3484292, 8853538, 1361505, -8989367, 1333051, -3468723, -6041409,
-4897874, -1402844, -6439767, 2933463, 2473364, 7128572, -571768, -864362, 5236639, 6214281,
-6811818, -6978785, 4937602, -873489, -1191317, 1860795, 7354058, -306553, -1967095, 2352032,
-1118302, -6213744, -825707, 8594766, 1887638, -521302, -1077500, -3837553, 2757906, -1388348,
--1760937, 325344, -256624, 2018635, -132607, -2621541, -1909650, 3609383, -445066, 1450625,
--1612760, 1770600, -1331977, -948114, -1317481, 947040, 1902671, 6259915, -16042240, 6675453,
--1748052, -3659312, -3292629, 2753074, -1519882, -9512816, -10129680, 1239098, 15810848, 4358318,
--11494943, 2597382, 9383967, -6744710, 1222455, -1701344, 5597953, -33286, 5166309, 13830332,
-10074920, 6289980, -229244, -1139240, -6385543, -6843494, 2731599, -17909476, -2826625, 8496519,
-956704, -900869, -8573292, -3054259, -359167, -383863, -4162897, -8865886, 9947144, -3430605,
--2173254, -1597728, -8212515, -9238475, -284005, -4505958, 648003, 4405563, 3375308, 3729105,
--7330436, -1901060, -3598646, -2288681, 11806328, -1240709, -5382131, 383326, 15138686, -8069707,
-2549063, 11143293, 352724, -2554432, -5609764, 3393561, 648540, 8026220, -4310000, 6791954,
-5515275, 10512469, 5091684, 7874286, 839666, -5150740, 1113470, -209380, -2967823, 4759361,
-6778532, -5615670, 3702262, 2029372, -5046050, 665720, 1800128, 1418950, 1842004, -2884071,
-1644436, -3161633, -948651, -873489, 227633, 593779, 1366873, 1732482, -352187, 2594697,
--187368, -1155883, 904091, 1727114, -579821, 1048509, -2697776, 1074816, 9222369, 13238700,
-8085276, 1350767, -2843268, -4953708, -10998874, -3182034, 7249368, -14955613, -6142340, 13626321,
--18886044, -3415573, 10546829, 13255343, -1371168, -13310641, 1833951, -5093295, 17792438, 7893076,
--12241194, -7873749, -1893544, -7548405, -15402826, -7703561, -6841883, -5574331, -12476343, 6266358,
-2199560, 7693360, -4758287, -2305861, -10976863, -1128503, -9526237, 985695, -6337224, 1394791,
-3313567, -14694694, -4836670, -5598490, -3911642, 3158949, 3123515, -4696547, 14467597, -945967,
--3798899, -2724083, 1386201, -3406983, -1207960, 5379984, 4578435, 6023692, 7934415, 7532299,
-585726, 4937065, -2423435, 11288248, 12073153, -6085969, -3171833, 7407745, -223338, -18336290,
-832687, -9316321, 5672041, 5788006, 10354629, -7872138, 4402342, -11042898, -1082332, 6297496,
--2703682, 9841381, -2575370, -1207960, 1969243, 638340, 1373853, -659814, 571768, 4181151,
--3112241, -800475, 4019553, -626528, 3155190, -4719096, -4102768, 2767033, -664646, 863825,
-433255, -567473, 721018, -2824478, -741419, -494458, -1230508, -1910187, -666257, 1493038,
-1794760, -92342, -10160819, -12294881, -6022081, -11878269, -16950088, 11992086, 1185948, 6710350,
--9367861, -9747428, -13442711, -9094056, 4149475, -9970230, -8952859, 12193949, -3053722, 573378,
-2948495, 6965900, -5417028, -4109210, 2011118, -3291019, 1905355, -621160, -6020471, -11523934,
--18037788, 5957657, -12956306, -11883101, 624381, -3134789, -833224, -6691022, 3023120, 3433290,
--14703821, -326418, -3229279, -5761162, -8175470, 4642323, 993748, 14688251, 1752347, -8252780,
--513249, 1357747, 6060736, 2529736, 13030394, -1127429, -14179835, 6060736, -3009162, 6396280,
--8478802, 1840394, 4811437, -25080998, -11909407, 8854612, -770410, -2700461, 3850975, -1285269,
-15833397, -566936, 10027675, 8704288, -12834436, -14904610, 867047, -16510928, -379568, -824634,
-333934, 2389076, 10342281, -372052, -6495065, 5919539, 7782481, -7274064, 1275068, 2330020,
-7828652, -3836480, 274878, -3890167, 2647847, -224949, 1657857, 2593087, 4218195, 4258997,
--129386, -4112431, 183610, 3025268, 952946, 626528, -3747896, 397821, -3753802, -560493,
-2032056, -613107, 3688303, 2728915, -157840, 770410, 2986613, -2782065, 5267241, -118648,
--2309082, 2355790, 8559870, 35158604, -8695698, -23583128, -2152852, -10304163, 25499220, 1992865,
-14262513, 7750269, -4498442, -11282342, -5114769, -12294344, -3213709, 17214766, -19205484, 831076,
--15676631, 4262218, 1255204, 7653632, 1721745, -7478612, -12712566, -14747307, -2783676, -14467060,
--11384885, 1874753, 3332358, 10790568, -10115185, -20985748, -4440460, -7275138, 2481954, -9856950,
--6709276, 3046743, -5294084, -8338142, -606127, 930934, -4308926, 20487530, -4231617, -3340948,
-5136781, 5366562, -6106370, -2562485, 15113990, 12721693, 8308614, 15992848, 12482249, 44560,
-5214091, 9094056, -6771553, -6324340, 1843615, 6558952, 10606422, 4376572, 21544092, 2384781,
-14443438, -4078072, -8359617, -5359583, 30586072, 5456756, -3978214, -3670050, -10991895, -10493679,
--7577396, -7352447, -8798777, 3533684, 7049652, -7473243, 2408940, 7625715, 3779571, -6898791,
-1403917, 7778186, -1941325, 4313221, -3872987, -1069447, 1737851, -1297080, -869194, -2310156,
--4946729, -755377, -4480188, 2391223, 3753265, 1930051, -3735011, 4980015, 3225521, -2732136,
--3263102, -5051419, -1505386, -1384053, 1336809, -1091459, 2363843, 1772748, 443992, -478352,
-89121, -4026532, 1690607, 6812355, -30944702, -11268920, 15279346, -3518652, -15878494, -14592688,
--5120138, 16877074, 8762807, -13286481, 7306813, -17734456, -7480760, -2004139, -11887396, -15917149,
-13370770, 7563975, -14442364, -4904316, 30726196, 7302518, -13759465, -18648748, 264141, 10244571,
-1666447, 1862942, -21562346, -511101, -2471217, -15336254, -9043591, -6119255, -12403329, -5749888,
-3570729, 590558, -13086765, -12960601, 1657321, 8315057, -224412, 11106785, 18422726, -12859669,
-11416023, 8710731, 3629247, 2580202, 13889924, 4422206, 8565239, 5817533, 7720204, -2514703,
--1671279, 15939161, 24795920, 4186519, -5766531, 3118683, -3564286, -9315247, 15782394, -7637526,
--13298292, -20956756, -7225746, -24432996, 12257300, -9923522, -4225711, -1359357, -3520800, -8741332,
--1462436, 9824201, -11150809, -919123, 5157719, -3141232, -10872173, 5527623, 901406, 3103114,
--711891, -1227824, -3879966, -363998, -2004676, 5895380, 1549410, 1676648, 963146, 1970316,
-95563, 3034931, 2030446, 5234492, -7219303, -784905, 616865, 4862977, -1962263, 4064113,
--4342749, 1574642, 1087164, -877784, -2392834, 4262755, -1886028, -263067, 2441689, 817118,
-261456, -5805185, -13565117, 11527692, 6928319, -2055679, 7719667, 5714454, 16422881, 12638478,
--26656714, -8862128, 29672318, -23380192, -6886980, -14168023, 21150566, 9400610, 9758166, 4093104,
-3118683, 8450885, 22437446, 10661183, -9848897, -202400, 765578, -634581, 8897025, 9968619,
-1236951, 5896990, 5667210, -5149129, 6969122, 4167192, 13874892, -6655052, -13295608, -11443940,
--8888435, 2635499, -1135482, 5286031, 6030671, 6036040, 12222403, -5350456, 2598992, -5392869,
--9486509, -3853660, 1035624, -10964515, 14031658, 16949552, -18396418, 6277095, -12736726, 10420664,
--2062121, 4050154, -1376000, -10198937, -2462090, 11727945, -9154186, -2825015, 2097018, -18808736,
--7169374, 3939022, -14529874, -1012002, 23293218, 11573863, -1553168, -5329518, 18588618, 4876399,
-13390097, -4208531, -5989332, 19390704, -6571300, 6051609, 2592013, 2753074, -3985193, -2927020,
--3562139, -2472291, -6519761, -4032974, -4541928, 650688, 4202626, -1547799, -9160628, -2947958,
--1260036, 1032940, -277025, -2285460, 42950, 2583423, 4478577, -3576097, -106837, -9888088,
-1675037, -1235877, -1866700, 6665789, -117038, -646393, -3935264, 4075924, 1120450, 6037114,
--2063732, -357019, -4051228, -447213, 18521510, -1506997, -4325569, -15394773, 652835, 1467805,
--4153770, -325881, -7161321, 2708514, -22139482, 20195474, -4100620, -7141994, -14021458, -15804943,
--1655173, 19266686, -3515431, 5342940, -11926587, -6871948, -3345780, -11583527, -14010183, 12790949,
--7925289, -6432788, 11310796, 11026792, -15611132, 5436355, 5870684, 13502840, 11125039, -4068408,
--9889699, -6219650, -15181099, 16680579, 10945187, 5539971, 11870753, -12314745, 8410083, -1785096,
-7707319, 8571144, -8091719, -634581, 27118424, 22754200, -17226040, 6890738, 14067092, -10828149,
-3330210, -25365540, 7575249, -13724031, 11320997, -7961796, -8795019, -6199786, 30258044, 1731946,
--8846559, 2686502, 10160819, 1339493, 6034966, -16317654, -1880659, 27197344, -915902, -10681047,
--16655883, 514322, -12334609, 7686918, 7822746, 9506373, -17011292, -17743584, -4758287, 2987150,
-5814312, 1852742, 70867, 435402, 6446746, -4353486, -1767379, -1348083, -2881386, 3187403,
-2680060, -5427228, -3759170, -8337069, 5077188, -3058017, 2206540, 3651259, 5345624, 4267587,
-1821066, 8375723, 510564, -1952063, 3989488, -6223945, 3454764, 2410551, 1682017, 5543729,
-5918465, 1100049, -845572, 3503083, 377420, -537945, -6575058, -8588861, -1648194, -663036,
--1087701, -16742856, -868657, -1991791, 4880157, -24310588, -11260331, -13619878, 11486890, -5768141,
-17092896, 10424959, 21763136, -10776610, -913754, -17056388, 14504641, 26466126, -8246874, -20946018,
-2043868, -4242891, 32416266, -7939247, -12734578, 12412455, 6802155, 5228049, 12202539, 4212289,
--40770512, 205622, -2747169, 15976205, 28619514, -26985816, 1060320, 8174397, -12983686, -2566780,
--36968932, -8303783, 18838264, -30351998, -18211736, -9271224, -11911018, 12191802, -7377680, -10772315,
-16279537, 5018133, 5931350, 16858284, 1840394, -5713380, 11939472, 17686676, -17149268, -12706661,
-26209502, 18095770, 6077379, 8396661, 6188511, -11733314, -17044578, 46708, 219580, -3435974,
-5361730, -10245644, 7315940, -14215805, 5789079, 33410014, -15524696, -12753369, 18332532, 5354214,
--6249178, 11672110, 16112570, 12050068, 14238890, 7128035, -7243463, 5946919, -17581448, 9468792,
-3980361, 5039608, -8922258, -2591476, 1864553, -757525, -1783485, -2603824, 5769215, 11367168,
--4414153, -10835129, 6919193, 13135621, 6820408, 5211943, -15465640, 9441412, 1005022, 5143224,
--2480344, -5218922, -1235877, 7971996, 719407, -1382443, -6673306, -471910, -3891240, -1845225,
--3084324, 3590593, 7460895, -4411469, 295279, 4786741, -1844152, -742493, -4076461, 821413,
--2731599, -2965675, 9670656, 8733279, 14242112, -32988570, -60928408, -28082644, -4271345, 20737712,
-1468342, 22868554, 21125334, -6389838, 3424163, -5175436, -11587822, -19051402, -11087458, -13752485,
--7998840, 21725018, -28238336, -4909685, -23535348, -29190746, -5112085, -29460254, -23703388, 2902324,
--6201396, -3400004, 5360656, 25853556, 1804960, -18762028, 1069447, -2250563, -5645198, -24363738,
--1597191, 29041496, 2686502, -495532, 11766600, 22561464, 15187541, 3946001, -9188009, 7866770,
--7718056, -20679730, -37922952, 36074504, -4566624, 30051350, -2530273, 399969, -10799158, -17364552,
-31679142, -18000744, -14626511, -1520955, -23082228, -21686364, 18031346, 13224204, 6940667, -2301566,
-9185861, -16013786, 6231461, -12995497, -18344880, -20022600, -15614890, -6438156, 15515032, 987843,
-5576478, -9262634, 5494337, -12119324, 8833137, 6860674, 6293738, -3946538, -497679, 7817378,
--2118493, -9453223, -7124277, -9357123, -799401, -6905234, -1588601, -2423435, -2505040, 2767570,
-1147293, -3710852, 1619203, 4923107, -1277753, -3118146, -7314866, -47782, -5018670, -680215,
--795106, -3471944, 8587787, -8027831, -7507603, -3543348, 4575751, -7104413, -7137699, 1040993,
--5959804, -27380, -1031866, 3370476, -743029, 1145146, -4796405, 1972464, -9982578, -5036386,
--1467805, -21164526, -15495705, -23486492, -242129, -22465364, -26086558, -4413616, -11917461, -28652264,
--39670464, 4494684, -15010374, 7315940, -2858301, 14875619, 33423972, 1688459, 3463891, -16959216,
--18142478, 15108084, 8449274, -12283070, 74088, 9853192, -22597434, -17393544, -1207423, 28680718,
--24647744, 320512, 609885, 13198971, -21046950, 21949430, 11552925, 6213744, -548682, -9155260,
--24424942, -258235, -5822902, 8833137, -13239774, -32455458, 26767846, -19559282, -8682813, -1372779,
-26197690, -19908248, 9214852, -16354162, 10167261, -5929739, -24021752, 11502459, -30616674, -6774237,
--8756365, 10703595, 25174950, -14546517, 9351218, 25458956, -20341502, 3360812, 6201933, 5979132,
-7577396, -37153076, -11069204, -6292127, 13429826, 2808372, -1074, 6784438, -6470905, 14826227,
--2641405, 3375844, -14221174, 12374338, 3245385, -22900228, -10378252, 10784663, 13569949, -1910724,
--3356517, -8957154, 12724914, 1596654, 292058, -23818278, 3974992, -11457362, -17942762, -5453535,
--3539053, -2320356, -10513006, -13662291, 5012764, -3142842, -6620155, 3936875, -1267552, -1952600,
-908386, -3652870, 1415192, 7379828, -13774497, 1410360, 2734821, -4567161, 10136123, 9336185,
-10736344, 4275103, 6532109, -6674379, 2911451, 361314, 3177202, -3024731, 272194, -186294,
-4576288, -2682744, -6071473, 43771084, 4236449, 18607946, 49758268, -23159000, -13325136, -19375672,
--7500624, 23212688, 1309965, 28543816, 7420093, -847182, -10788958, 21608518, -13561359, 5046587,
--9130027, 9017284, -14354854, 16500191, -8156680, -3652333, -9537512, 12720083, 8404714, -13676786,
--3495030, 13381507, 3793530, -8728447, 682900, -11271068, -37734508, 16422344, -19922206, -28722594,
-17638894, 8043400, 19093278, -1680406, -18995566, -6901476, -5233955, 11330661, 14774151, 16771310,
-27578522, 27523224, -12359842, 3896072, -29207926, 408022, -21321292, -37629820, -3912715, -30661234,
-9783936, -24467354, -16375637, -16171626, -23243826, 2382633, -5659693, 2037962, -7054484, -2816425,
--2204392, -39818104, 6184753, 6154688, 8917426, 19245212, -3805341, -31646930, 18194018, -20469278,
-11697343, 11791833, 25740812, -13992467, -13059922, -8449811, -5199058, -18351322, 7231115, 4326643,
-2183991, -4342212, 6381248, -9129490, 9206799, -1466195, 1813013, 2836826, -11500312, 8590,
-4345433, 11335492, -3067144, -6717329, 4846334, 7871065, 9565966, -5971615, -16106, 5471252,
--734439, -978179, -3659849, -7104950, 4992900, -74088, 3169686, -3942780, -615791, 6646462,
--4420058, -6681359, -3921842, 1120987, -2920578, -11787001, 19014894, -4784594, -3966402, 1709397,
-3612068, -3132105, 3470871, 4625680, -1901597, -470836, -2617246, -3830037, 31152472, 58289148,
--31998580, -25845502, -45173928, -91829088, -22741852, -9621800, 20497732, 12404402, -7974144, -17723182,
-25060598, 30662308, 2624762, -1484448, 141734, -24228448, -14318884, -17184164, -13228499, -25628070,
--381715, -6475737, -3129421, 17579838, -24101208, 19286014, 18060338, -5648419, 9281961, -1059246,
--42859480, -30514132, -17062832, -15599321, -7218767, 3381213, 16472810, 5349919, 8839043, 41352480,
-37568080, 8515310, -27975270, -14535243, -1253594, -14365055, -26530012, -66125852, -55605868, -24996710,
--5994164, 2729452, 14439680, -45870788, -26468272, 23790360, 27567784, 33143188, -30238718, -36666136,
-11915850, -22365506, 54385024, -27431420, -3157338, -16139413, -8761196, 7524783, 16073378, -8019778,
--21530672, 19987704, 19356344, -4378719, 22177064, 19739132, -43123620, 38585448, -25010132, 134218,
--7369627, -25753698, -7245073, 13065827, 9715753, -2077690, 5029944, -15697569, 353798, 7919920,
-10653666, 16839494, -12637941, 2575907, -3616899, -6838662, -17890686, -2174327, -17235166, 15220827,
--2809446, -18289582, 2912525, -20952998, -1409823, 2553895, -4875862, -9050033, 614180, 1704565,
-2193118, 6868727, -1301375, -298500, 12233141, 4014721, -12348031, -14127221, 3855807, -9363029,
--19967840, -6830072, -18784040, 6199786, 5935108, 14779519, 2004676, -15200963, -10908680, 10790032,
-54786064, -18260590, 17663054, -770947, -24383066, 3764002, -49229452, -11090142, 10584410, 966905,
--28655484, 16961362, 50190452, 35205848, -15529528, -31428424, -13381507, 3530463, 52741124, 7093676,
-1330903, 199716, 24387362, 25071334, 6556805, 19167366, 15547782, 29473676, -8398272, 3363496,
-18833432, -17188996, -26161182, 14694157, 43274480, 9375377, 20972326, 2007360, 12875775, -57930520,
-10721312, -2268817, 13084081, 56785372, 22915798, 7674033, -5640366, 25445534, -5814849, -11940009,
-8992051, 15810311, 33421288, -10780368, 20770998, 3777424, 5759551, 13145284, 16908750, -534723,
--22141094, -13745506, 5170067, 42828340, 29335700, 22785876, 24674588, 20656108, -5931350, -53048752,
--38113004, -72768560, -1030255, 22178138, 41872172, 6513855, -30569966, 10085657, -18927920, 6062883,
-14447196, 4367445, -8880382, -4922033, 128849, -4111358, 11707007, -8053601, -21189222, 396748,
-7012071, 9404368, -13721347, -6219113, -25491168, 6302328, 11033771, -9785546, -8825621, 6358162,
--5037460, -6297496, -5559835, -19791746, -4306242, 20402706, 12720083, 18472654, -10027675, -20919176,
--15575699, 13568875, 10634339, -4930623, -1006096, -1278290, 3717831, -5888937, 12168716, -13958644,
--7978976, 969052, 2218888, 8035347, -17350058, 3561065, -12778601, 33640332, -9990631, 7335268,
--11106785, 3878892, -20858508, -8732205, 44769128, -1823751, -20946556, 5119064, -4068408, -17020418,
--13842680, 2493229, 23553064, 64255396, 28704340, 56952340, 29635274, 25293062, 23938000, -16954920,
--14346265, -16224239, 6949257, 46664820, 14841259, -39041788, 16640314, -41975252, 20802674, -26634702,
--5847061, -23387708, -25300578, -1243930, 3030636, -411780, -31607202, 40862856, -8514773, 15325517,
--39922256, 10584947, -9443559, -12283070, 20379082, -16916802, 40968620, 4799089, -16454020, 2063195,
--12450573, -16928614, 11370389, -27965068, -6212134, 35014184, -7881802, 14297946, -2121177, -25472378,
-27632208, -15067819, -58098024, 7154342, 4110821, -283468, 6141267, -8029978, -11513734, -3288871,
-25956098, -49784576, 29148870, -11778411, -7166153, 32670206, -20382842, 9567040, 11826192, 47452948,
-16291885, 20944944, -3620121, 28333900, -22932978, 22462142, 3445638, -8759586, 5778879, 1296006,
-681289, -12326556, -3437048, 2128693, -5477694, -9244917, 19054622, 259846, -1636383, -5760088,
-6185290, -7643431, 16958678, 9935333, 9002251, 2056753, -334471, -1715303, 14153528, -11623255,
--15038828, 5603859, 7301982, -795106, 12681965, -5642514, -2844342, 558346, -4653597, -14486925,
--14642617, -1460826, 4576825, -7259032, 2251100, 4492536, 4898410, -3997541, -585726, 9319542,
--13623099, -24177444, 39688184, 36976448, 128737352, 52049100, -70138960, -32889786, -34357592, -53830436,
-37567544, 115807888, 46342160, 22031034, -29013040, -7915088, -1941862, -1292248, 55576340, 38143068,
-24253144, 83699784, -100140384, 6597607, 52366388, -12608413, 10777684, 54943368, 9632001, -15581604,
-29603598, -55146308, -110787608, -10485626, 10902238, -42881492, -4858682, 59466508, 10028212, 3588982,
-22584012, -46783468, -95454040, -87126096, -39672612, 28950228, 56761752, 125801200, 31594316, -15969762,
--15792058, -33964600, -75163000, -22742926, 55020680, 55458764, 58083528, 56726856, 35562328, 29591788,
-8554501, 12994424, -48297980, -29582124, 7194607, 13612362, 24776056, 30447560, 74711496, 19653234,
-43486544, -28527710, -28229746, -50608672, -11020349, -38687456, -9250823, 77973520, 100024416, 2240362,
--4054449, -62228172, -71832256, -40390948, -17080548, 39961448, 21242372, -4318053, 14816563, -5479842,
--10284299, -18753438, -17803176, -2348273, 4505421, 3718368, 21965000, -1571958, -496606, -11232950,
-356482, -13991393, -4730370, 51540, -20671140, -9294309, 411780, -5637145, -1481764, 12079596,
-10704669, 25223270, -11143830, -4583267, -25596394, -20706574, -15734076, 26125750, 16543140, 8188892,
-8652748, -8114804, -22742926, -18330384, 789737, -12926778, 22186190, 32952600, -8517457, -91468304,
--57002804, 33371896, 86161872, 101055208, 209268528, 128189208, 86421720, 77004472, 59290412, -10017474,
--91162832, -99053760, -193261184, -204773840, -194810048, -123944704, -43750148, 43570296, 74320648, 124753232,
-121874528, 86133960, 84371408, 108649784, 103573672, 93591632, 58783068, 41459320, 35929548, -3372086,
--6679211, -119639000, -85850488, -107017160, -130326488, -54338852, -127279744, -102146136, -187348624, -163325264,
--116372136, -77200960, -11916387, 97542464, 117423872, 99558416, 105678744, 98485744, 181598736, 237217488,
-211356416, 210297712, 184953632, 179213952, 132652216, 133264784, 28134720, -89485640, -187132800, -178376432,
--267623712, -222709088, -324954016, -386380096, -343978016, -326083040, -196828688, -136566544, 24632712, 65036544,
-152207200, 227101760, 349377344, 303155424, 436951168, 377958208, 270214112, 266318576, 120735288, 8944269,
--24729884, -94681480, -165959680, -197671568, -236801408, -204694928, -186028448, -178929408, -145939760, -149774096,
--123605936, -108258408, -33475512, -23013508, 29337310, 69844224, 79685600, 104644728, 148240800, 180031072,
-191355296, 200879920, 146976464, 122148872, 117831888, 43910136, 28419262, -66788888, -160451392, -212955216,
--218491424, -243868784, -155523984, -176704080, -118485264, -85106928, -24205898, 42155104, 82562160, 126500744,
-130667400, 197745120, 202465840, 195067744, 164701792, 148314880, 58227408, 14848776, -37970732, -84294104,
--161159520, -189090768, -157872256, -106834088, -95185600, -66264904, -61289720, -32001264, -5160403, 7349763,
-4319127, 27973122, 31084826, 50520088, 42119132, 39662948, 36180268, 42039140, 28331752, 27146340,
-29990146, 30527016, 11153493, 3393561, -7248831, -1510218, -4686883, 2255932, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--5173288,
--13850196, -1168231, -2212982, -1891933, 205622, -2310693, 863288, 1357210, 5676336, -1917166,
--228170, -5236102, 386010, 5262409, 366683, 3803194, -1122597, 1596117, -2198487, -3307125,
-111669, 3615289, -463856, -4532264, -186294, 4386236, 1431298, -1881196, -1564979, -208306,
--601832, -1027034, 54761, -744103, -1506997, -194347, 904091, 612033, -196495, -3453691,
-5136244, 6989523, 230318, 811749, -2819646, -1607392, 561567, -3653407, -4043712, 2419140,
--3282966, 2390686, 3110630, 3086471, 1168768, -470299, 847719, 643708, 2344515, -5027259,
-447213, -651224, -3643206, -4951024, 160524, 2469606, -1868311, -264141, -557272, -351114,
-3506841, 1727651, 486942, 1364189, -1117765, -4074313, 1604707, 658204, 3510599, -4188667,
--3149285, 2361158, -1848983, -873489, -3093450, 705448, -1806571, -1703491, 69793, -1365800,
--1457605, 408022, -774705, -376883, -1662152, 1044214, -179852, 98247, -420907, 853088,
--129923, 276489, -270046, -266825, -12686797, -2997887, 4943508, -763430, -3901441, 1595580,
--9404905, -3697967, -1354525, -1771137, -4859219, -5214627, 2791729, 4199941, 3682398, -4881767,
--7074885, 731218, -4137664, -7637526, 1743757, -552440, 2153926, 8432631, -2787971, -969589,
--5359046, 7276749, 579821, 3595425, 2544768, 5961952, 3080029, 1794760, -5974837, -749472,
--5492727, -1588601, 252329, -2381559, 1861332, 1492501, -2592550, -5178657, 3266323, 5258114,
-1510218, -2604898, -3934190, -2514703, 1275068, -4507032, -5614596, -1665374, 2795487, -1617055,
-1384053, 3475166, 2245194, -2688113, 5138929, 400506, 4378719, -3716221, -3068754, -1840394,
--2139968, 2994666, -1704565, 128312, 5188321, 1790465, 141197, -4949950, 1347009, -2003602,
-3643206, 5227512, -897648, 390305, -2395518, 1954747, 4655208, -1690070, 2906082, 1272384,
-628139, 2350958, 965831, 78920, 1921461, 687195, -138513, -23622, 858457, 738198,
--844498, 609885, 658741, 947577, -2592013, 3271691, 4522601, 1822140, -2815888, 1967095,
--1316944, 1361505, 8497593, 5231807, -7159711, 4862977, -3935801, -1950452, -1028108, 139586,
-3617973, 132070, 9936407, 2864743, -3801583, -2507187, -2464238, 6987375, 1653026, 6729140,
-2216740, 4529043, 7031935, 8051990, 3071975, -914828, -798864, 1210644, -6451041, -6013491,
-1925756, -4566624, 2597918, 1240172, -1540820, -679142, 1898912, 6717329, -2198487, -2291365,
--3452617, 8582418, -1157494, -10719165, -5339718, -4254702, -3892314, 4417374, 4257387, 3731790,
-5602785, 2476586, 3513283, -164819, -332323, -166967, 5634460, 1821066, 3307662, -7464653,
-492311, 334471, 408022, 483184, 3248069, 2262911, 944356, -3622268, -3593814, 2081449,
-1745367, -1073742, -220654, -2920041, -3694746, -3033321, 2062121, 3570729, 442382, 197032,
-1253594, -1047435, -125628, -830539, 653372, 622770, 379031, -505196, 1080184, 1708860,
--248034, 160524, 385473, -284542, 460098, -719944, 1260036, -1074, -236760, -820339,
-1114007, -2172180, 1224066, 345745, 922881, -169651, 18855980, 4178466, 2876554, -2253247,
--1306744, 1875290, 1321239, 5076652, 6655052, -258235, 9797894, 3955665, -3455301, -3186866,
--247497, 4736275, -552977, -2508798, 5185100, 778463, 14128832, 3750580, 2796561, 633508,
--1365263, 718333, 2137283, 2792803, -642635, 82141, 7580081, 1114544, 8344585, -4143033,
--4013647, 2808909, 12530030, 3686693, 3025805, -1029718, -5422396, -2072859, 1692217, 430570,
--126702, 518080, -7693897, 603980, -3387119, 3140158, 2423435, -2975876, 1766305, 2759517,
-1809792, -3551401, -3715147, 947577, 1309428, 75699, -4775467, 1313186, -1861332, 3127810,
--444529, 663036, 1939178, -667331, 1069984, -1633698, 520228, 11070815, 1242319, 3969087,
-127775, -2957622, 1803886, 729608, 3404299, -6044630, -4267587, 2167348, -900869, 1333051,
--1596654, 2407329, 1951526, 324270, -2712809, -945967, -3689914, -576599, -850940, 2450816,
--1703491, -368830, 398895, -242666, -889595, -802622, 686658, -856846, -1241246, 73014,
-43487, 753230, -2499134, -880468, 628139, 453119, -2720325, -568009, -185220, -3400004,
--397284, 2777233, -4158065, -721555, 4229469, -2142652, -6557878, -42950, 10821170, -752693,
-8495982, 4348118, 11752641, 1410897, 1100049, 4266513, -3300146, -7017440, -9210557, 2159295,
--4686883, 10821707, 6204617, 7640210, -1428614, -3202435, 970663, 1700270, 3595425, 10123238,
-1230508, 4205310, -4619238, 3208878, -3273302, 1362042, -1757715, 3313031, 5823439, 756988,
-5564667, 2005213, 2793339, -1637993, -1324997, 7385733, -1717450, -1892470, 5604933, -3382287,
--300648, 759136, -2433099, -3285650, 2488397, -3763465, -698469, -4794257, -10122701, -1183264,
--1529008, -314069, -10549513, -4083977, -3213173, -2789045, 3979824, 10349797, -2642479, 3286724,
-5449777, -1577864, 1030792, 858993, 624381, -3854196, 4144107, -4873714, 1260573, 3388192,
-9754944, 2978560, 2890513, 815507, -126165, 2868501, -3524558, -105227, 2012192, 876173,
-172872, -4027606, 2354179, 2796024, 2890513, -631360, 2150705, 1087164, 604517, 1874216,
-1130113, 144955, 1105417, -364535, 855772, 461709, 719407, 1038308, 1412507, 1580548,
-1156420, 1025960, 1253057, -850404, 1131724, -13722957, 1202054, 7348689, 3891777, -7707856,
--566399, 340376, 1826435, 2795487, -429497, -6008123, -5720897, 864899, 9724343, 4590783,
-5770826, 9745281, -6605660, 6943352, 12911745, -1222455, 2917357, -7357279, 2521146, 2598455,
--6270116, -3426310, -1346472, 2922188, -6335614, -8425115, 1612760, 861141, -7170985, 507343,
-2278480, -1535451, 15305116, -945967, -10823854, -820339, 3758097, 8526047, 3190624, 3771518,
--6934762, 1825361, 2209224, -6296959, -391916, -1159104, 10633802, 6391985, -1748589, -3758633,
--8211441, 3430605, 3312494, -4975720, -152471, 1850057, 3233037, 3182034, -4175782, -243203,
--900869, 9835475, -8361228, 898722, -2169495, 8840116, -632971, -2328946, -3752191, 987306,
--3883724, -9276592, 263604, 6808060, 2089502, 4213363, 1095217, -3436511, -1299765, -1806571,
-5925445, 2202781, -1600412, -369367, 5381057, 3867618, -1510218, 424665, 852551, 1005022,
--98247, 1998770, 1496796, 1160715, 141197, -909459, -340376, 270046, -768262, 97711,
--1072668, -515933, 881005, 5214091, 4747013, 1668058, -3483755, 965831, 2272038, 16044924,
-10657961, 7970923, 11303280, 4550518, -981400, 1582159, 4177930, -11433203, 5841156, 132607,
-6279779, -4636417, -2338610, -7391639, 2074469, 12901545, -12679817, -8088497, -13480292, 6771553,
--3090766, 374736, -6149857, 734439, -2308545, -6190659, 2317135, 2945811, -9598715, -1367947,
-1703491, -2171643, 5024575, -13942538, -6753299, 14140106, 1391569, -309238, -1439351, 442382,
--7249368, -7719130, 416612, -11203422, -2609193, 1065152, 2949032, -4849555, -1140314, 13778792,
--930397, 4800700, 10256919, -9644886, -3370476, 2198487, 2401961, 1793149, -2975876, -6906845,
-7824357, -919660, -7348152, 5324149, -1345399, 1210644, 2020245, -3996467, -2415919, -1720134,
--3009162, -4326106, -5168457, -4991826, -6331856, -1956358, -2685428, -670015, -828392, -122407,
-826781, -2639794, -2066416, 1450088, 1756105, 2850248, -157303, -1212255, -3715684, -1090922,
--4293894, -2782602, -567473, 810675, -296890, 552977, -1069447, -666257, 3226057, 1213328,
-2248416, -2181844, 598074, 505196, 872952, -4393215, 365072, 1292785, 49392, 2325188,
--26616986, -14918569, 12118787, -4723391, -5605469, 7218230, 6423124, -11487427, -15331423, -5024038,
--5429376, -5881421, -963683, -10689637, -7559143, 3787088, 500901, -14351096, -15631533, -8902393,
--4220879, -891206, 8139500, -677531, -5781563, 4321274, -12994960, 295816, -520765, 456340,
-4663261, 2408940, -9440875, -7276212, 5816460, 1898376, 21369610, 5112085, -6986838, 852014,
-791348, 102542, 5717675, 957241, 2448668, -2306398, -4571456, 1265405, -12127377, -2410014,
--5225365, -6597070, 1521492, -9862856, 11455215, -1589675, 4854924, 7985955, 2522757, 4172561,
--412854, -5397164, -104153, -807991, -6427419, 8385924, -3404835, 15025406, -372052, -479426,
-835371, -4067334, -8076149, 2425046, -6307160, -2745021, 9016210, -11599633, -11132555, 7421704,
-7330436, 6032282, -9408126, 6759742, 3022046, 3886409, -138513, 1627793, 2030446, 5228049,
-2445984, 1185948, 4138201, -659814, -81604, -3390340, -2367601, -652298, 2877091, -3630321,
-652835, -530428, -1882806, -1395864, 1078037, -4634270, -2570001, -3488587, -404264, 1328756,
-166967, 3216931, -926102, 3371549, 501437, 1175747, 754841, 2583960, -1899986, -1826435,
-5506148, 19712826, -10964515, 9351218, 3972845, 6951942, -2716567, -10838887, 1632088, -2887292,
--9976672, 20339892, -1345399, -5731097, -20018306, 12300786, 3524558, -284542, -7423851, -8759049,
-321586, 20654498, 7800198, -867583, -1957431, -8951249, -7152731, 5917928, 2729989, -7016366,
--4811974, 7165079, 1887638, -363998, 6292127, 9498320, 1581085, 12559021, 14397267, 8624831,
--3229279, 3087545, 1241782, 2294050, 7542500, -10685342, 11235634, -842887, -5611375, -8679592,
-116501, 7256347, 5198521, -10232760, 2287607, 7946227, 1293322, -7435662, -15806553, -14513231,
-3861713, 6298033, 1129040, -5681705, -690953, 11439645, -5235565, -8787503, -16702054, 1681480,
-3303904, -12591770, 4745939, 12402792, -5636608, 9624485, 3426310, -11673721, -8534100, 798864,
-11935714, -1337346, 12534862, -2273648, -4334159, 2522220, 6410776, 1586990, -2091649, -3466039,
-2180770, 5529771, 4620311, 657667, 7455527, 1254131, 5357435, 1199370, 7312182, 972810,
-4526359, -202937, 3621731, 1803349, -1767916, -5455682, 484258, -6359773, -845572, -2687576,
-998043, -958315, -218506, -5671505, -499290, 2434710, -2683818, 207232, -639950, 236760,
--353798, -4154844, 621160, 23737210, 15847892, 3418794, -4641249, -2713883, -3200288, -16558173,
--6491306, -372052, 10610180, -7699803, -4080756, -3687766, 315143, 17112224, -13296145, -3762391,
--612033, 7945690, -2677912, -10085657, -16480326, 5777805, -11349451, -5417028, -7034620, -7912404,
-2556043, -13175349, -6200322, 11372000, 17399450, 627065, -10703059, -9810242, 16051903, -1946694,
--8524973, 16475495, 624918, 858993, 808528, -18312130, 7489886, -6888054, 6701223, 5936719,
--12237436, -1508607, -12416750, 4700305, -12040404, -2230699, 5181341, 6737730, -3961571, 4030290,
--14637249, 9975062, -1055488, 6752763, 5895917, 4035122, -3184182, -3249680, 14766098, -10320270,
-7373922, -2658585, -12422119, -7708393, -756988, 13031468, -7478075, 6019397, 1846836, -4230006,
-239981, -14865419, 18658412, 11266773, -2129767, -5218386, 9175124, 3790846, -2619393, -4929012,
-1090922, -3338800, 4753455, -1136019, 2525441, 7558069, 2828236, 5951214, 43487, 2012192,
-957778, -1292248, 211527, -722628, 5327907, 1928440, 7373385, 1076963, -4065187, 5192616,
--2099165, -305480, 4051765, -4013647, -1239098, -2190433, -1611687, 3158949, 2053531, 1568200,
-6854768, -2195802, -2332704, 9341554, 1786706, -6183679, -14185740, -775242, -18437220, 3173981,
-1642825, 9018894, -7363185, -1758789, 4782446, 3980898, 5260798, -12475806, 17645336, 12517145,
-2306398, 9255655, -4170950, -17772038, 4197257, -7481296, -8324721, 8381092, 20451024, 3584687,
--5639829, -7409356, -16403017, 41876, 764504, 25231322, -9926743, -387084, 756988, -756988,
--15193984, -17136920, 13575318, 545461, 7715909, -2193118, -19420232, -11172284, 1552631, -3234647,
--4106526, -5530844, 12712566, -2668249, 8258685, -8891656, 17707076, -20891258, 10352482, 10861972,
-6470368, 5754183, 5243082, 16563541, 8501888, -1178969, 3531537, 153008, 16346646, 24588150,
--2831994, 1988033, -7218230, 10305237, 16494822, -11254425, 3466576, -28396714, 18578954, 19218368,
-12804371, 17882634, -8137353, -14213657, -1023276, -2030983, -4211216, -2950106, -8547522, -5897527,
--3160559, -703838, -4780836, 2915209, 5222680, 2083059, -8032126, 1662689, -4462471, -4633196,
--2966749, 3416647, 3092377, -1335198, -2000381, -627065, -1394254, 950798, -7772280, 2676838,
-1124745, 5128191, 1124745, -235686, -227096, 1209033, 4403415, 1631551, -4023311, 3324305,
-2684, 584652, -20667382, -3076270, -26437672, -13589813, 10413685, -10846940, -23511188, 2165737,
--12674985, 564788, 463856, -15104326, -14329622, 6463389, 13855028, 4158065, -16093779, 7682086,
--18103824, -6371584, -6664716, 5647882, -7434589, -3414499, 8712341, 1465658, -5952825, -12916040,
-13660680, 13215077, 17213156, 2223719, -1905892, 585726, 5522254, -1324461, 7064685, -7786776,
-9286793, -3677029, 10696616, 8546448, 6461242, -3131031, 454193, -16653199, 5669894, -4212826,
-12517145, 2247879, -29060822, 4438312, 14339822, 19246822, -11077258, -15175730, 18139258, 8200703,
-12756053, -22736484, 11236708, 28395102, 29950954, 1874753, 721018, 17005924, -11782706, -15745887,
-10075456, -17430588, 6541235, -8136816, -6837588, -3877819, -37464464, -21675090, -18241800, 13426605,
-5116380, 3747896, -13304198, -5453535, -10049687, -1943473, -5395553, 14674293, 3504157, -5894306,
--13067975, -2954401, 8472360, -1395864, -3609920, 2554432, 8868034, -3202435, -5231270, -2559264,
--1937567, -652835, 6897181, 6872485, 6021008, -6132140, 7889855, -456340, 2257542, 8957154,
--4047470, -4125316, 7862475, 14048301, -3297461, -4670240, -2245194, 1632088, -2542621, -9788230,
-1569811, 7028177, 1914482, -9861245, -9375377, 4345433, 3177202, -602906, -602369, -1793149,
--6973953, -4754529, -15586973, -29882772, 22846542, 2407329, 7666517, -3862249, 16178605, 440771,
--13810467, 10692321, 4341675, -4877472, -8337069, -6519224, 2053531, 3912715, 14331769, -8150238,
-11246909, 3595425, 20438138, -29316374, -7873212, -4634807, 3775813, 11988327, 17373680, 3960497,
--14110041, 9543417, 13669807, 11522860, -3216931, 4031364, 830002, -4800700, -1970316, 850404,
-4425964, 1609539, 10109279, 1684701, -12745852, 11929272, -13215077, -16857210, 2626909, 12220256,
--5930276, -4359392, 4439386, 5974837, 10522670, -5986648, 4992363, 23775866, -9474161, -25222196,
--32690606, -16502875, -22147536, 10084583, 19234474, 12319577, 4707821, 11589969, 6806450, 12807592,
--10936597, 14474577, 7517267, 5886790, 15069430, 19594178, -6080063, -4345970, 5359046, -1261647,
-17626008, 6846715, -2678986, 2995203, -21476984, -15005542, 2990908, -824097, 3834869, 1473174,
-4530654, -3993783, 11341398, -5960878, -6898255, -6655052, -11286100, -4076998, -2218351, 3737159,
-3035468, -1667521, -9689446, -540629, 3235184, 1107565, -3875134, 2325188, 158377, 3779034,
--4038343, 1697049, 807991, 4553739, -2134599, 6993818, -4282083, -4935991, 1507534, -814433,
--3599720, 1184874, 4849018, 443992, -702764, 29956324, 2857764, 4731980, -6241661, 10905459,
--34251292, -15067819, -23417772, -24099598, 9557376, -21024938, 20682416, 23612120, 1010391, 5152350,
--3651796, 4355097, -22402550, 9240622, 24748138, -14068702, -28833190, 3853660, -10853919, -9148817,
--28122372, 4909148, 10307922, -69256, -3826816, 9080635, -16041703, -2629594, 10417980, -5710696,
--14216879, 1759863, -7100118, 14725832, -9736691, -5361730, 13747653, 11973295, 25391310, 3403762,
-6127845, -2297271, 6816650, 9085466, 15687905, -4483409, -515396, -9712532, 20699058, -26048976,
-28028956, 1038845, -11171210, 13173202, -10184978, -7460358, 25782152, -37174016, 6075231, -7810935,
-7286412, -14396194, 6958921, 14805289, -7639673, -1322313, -3921842, -6121402, -3299072, 27475442,
--31109522, -10583873, 52319680, -19648938, -23080618, 22689776, 13557601, 15160698, -13164075, 1088774,
--13084081, -7282654, -2045478, -14904610, 3285113, 2070711, -3886946, 5439576, 4828080, -6721624,
--12710956, -3215857, -1058710, 5058935, -11215770, -7822209, 310311, -1063004, 2848100, 7069516,
-16673063, -7512972, -361851, -1757179, -1723893, 4858682, 1899986, -9838159, -7456600, 8032126,
--6431177, 3082176, 2077690, -5957120, 2322504, -1304596, -10107132, -8225936, 4997732, 3351148,
--1505386, -98247, 6359773, -14866492, -23005456, 2250563, -8738111, -7767449, -12963822, -16190953,
-20411832, 8812736, 1268626, 9611600, 24179592, 14326400, -1692754, 4959614, 16243029, 20790862,
--18473192, 8630200, 17352742, 7586523, 6335077, 24006720, 11523934, 5024575, -768799, 10813117,
--1245004, 12233141, 10053445, 5542119, -11272142, 21237002, -17482128, -2163053, 26519812, 26281442,
--6295349, -23265838, 8723079, -338229, 22744536, 39235064, 8719857, -5991480, 2729989, -22486838,
--2702608, -5931350, -4882841, 466541, 19968376, -8573828, 8761733, 24096378, 4042638, -22263500,
-14692546, -1125281, 9327595, 22640920, 31816580, -8977019, -8500814, -2721399, -25294674, -36949604,
-959388, -16798690, -2772938, -20368346, -2144799, 666794, 2724083, 15137612, -477278, -10524280,
--17565880, 12807592, -5455146, 10959683, 352724, 20405926, 7512972, 7536594, 24696, -6333466,
-11405823, -8733279, -10176388, -3044058, -7664369, -2941516, 532039, 817118, -2786360, 3145527,
-4444755, 380105, -1208496, 5945846, -5156108, -7229504, 4372814, 5236639, 993748, -6249715,
--7576859, -4383014, 6010807, 8163659, 1017370, -1144609, 8982924, 2481417, 4258460, 3755412,
-6407555, 1826972, -1243930, -4765803, 2542621, 5152887, -10643466, 24938728, -46798500, 25739740,
--19685982, -46212236, -13635447, -11667816, -1594507, -10681584, 5650567, -12799003, -28562606, -17307108,
--8505109, -2633889, 3332358, -11800960, 11569568, 22400402, 889595, -1426466, 6205691, 1362042,
--4121021, -8337069, -4629975, 6053757, 6731825, -2000918, 6406481, 27533424, 7652558, -8060580,
--27254252, -4369593, 19375672, -23510650, -10980084, -8956617, 357556, -1796370, 14904073, -4892505,
-1853815, 20414516, 7364795, 22647900, -3108483, -10683731, -4829691, -5801427, -5791227, 10932302,
-1266479, 7397545, 13884019, -24257438, 3649112, -6409165, -15021111, -11377905, 23795192, 17099338,
-951872, -11557757, 4885526, 10034654, 1132798, 6953552, -16199543, -40240084, -18556944, -14713484,
-14847165, 1528472, -1751810, -6765647, 2996277, -4502737, -12615930, -13154948, -6766184, 16341277,
-12428562, -18143552, -22611392, -8833674, 1713155, 13853417, 5718212, -4344897, -5965710, -4616016,
-3354370, -10019622, 1648194, -6818798, 726923, 10484552, 11263552, 3022583, -5597416, 3667365,
-8166344, -178778, -1560147, 6022081, -7997229, 11458973, 10359998, 4063039, -16643, -367220,
--969589, 9637370, -3558917, -4917201, -5561446, -8056822, -7834557, 2704756, -2769717, 3594351,
--2106682, 1864553, 6212670, -2811593, -5596343, -8284992, -2132451, 4063576, -5783174, 13517873,
--18470506, 22223234, -1764695, -35128000, 7190849, -16930224, -3486440, -2532420, -4134980, -22357990,
-7065221, 1187559, 17759690, -38233800, 649614, 18884434, 2303176, -9051644, -19324668, -1476932,
-11137924, 16544751, -13677323, -4855998, 8953396, 18908594, 17270600, -16594143, -3355443, -26924614,
-12611098, 13737990, 8517994, -7634841, -2068564, -7284802, -2826089, -8934069, 2638184, 19732154,
--7249905, -7684770, -6709276, -11090679, 22374632, 19264538, -1832340, 27102854, -1183264, 9680856,
--23822572, 19670414, 8750996, -26763014, -8638253, 30812096, 12785581, 8407935, 6019934, -14381161,
--11355894, -15424301, 26723286, -13721347, 20651814, 21416318, -24162412, 56078316, -11956115, 34814468,
-1554778, -7776575, -14962592, 26179974, 10107669, -20154134, -12335683, -43412456, 17435420, -5883569,
-20043538, -26691074, 29967598, -22852448, 8866423, -8804683, -6836514, 19785840, 1872069, 1926830,
-10996190, 7773354, -5014375, 13013751, -1564979, 3884261, -8996883, 1852742, -1219234, -5614059,
--9044127, 420370, -10040023, 4914517, 4342212, -2254321, 8702677, -3020973, -5214091, -7191386,
-5133560, 1170379, -1202054, -14304389, 6540699, -2757906, -17351132, -5406290, 4993437, -4799626,
--8974334, 6141267, -4868883, 5095442, -9133248, 4447439, -9307194, -1481764, -1394254, 5190468,
--2188823, 1065152, -3018288, -3065533, 13429826, 23036058, 1910187, -19317152, 9359271, -37305548,
--9893457, -33889440, -46876884, 1611687, -17996986, 6045167, -3437048, -7343321, -17804786, -12266427,
-10537702, 28257126, -23489714, -5039608, -40503688, -35591856, 9868224, 14281303, -22217866, -23297514,
-1517734, 5178657, -37624988, 2021856, 858993, 19595788, -16859894, 756988, 16284905, -10564009,
--19563576, -21932788, -10556493, -20000588, -16353625, -20880520, 29296508, -37171332, -23007066, 33614024,
--1035624, 9478993, -28099286, -4920422, -7985955, 732292, 47422880, -6730751, -899259, 4664872,
-22231824, 498216, -20963198, -9324374, -15110769, 5077725, 56725780, 11000485, -19968376, 42703788,
-30892626, -27466852, 31860068, 52230560, 457414, -20437602, 35576288, -6224482, 37425808, 33675764,
-2834679, -1804960, -10051834, 23490250, 19143206, 10842108, -19981798, -6713034, -12901545, 29756070,
--3785477, -20584168, -9993852, -20696910, -8880382, 20319490, 2311229, -10852845, -3664681, -13268228,
--2219424, 18141404, -8810589, 4374424, -1835562, -17535278, 18853296, 2154463, 7562901, 9019968,
--12161200, 3624953, 17322676, -3234647, 682900, -9440338, -38655, 1275605, -5706401, -5391795,
-3273839, 12729746, -8266739, 4947266, -11038066, -5410585, 654446, -3823058, 12655121, -5019206,
-542240, 1058173, 4619774, 261993, -6048925, 26369488, -67005784, -40488656, -43492448, -14959371,
--28926068, 36040680, 13800267, 29551522, -4242891, -57256744, -8566312, 9225053, 39520140, -1671279,
-9317932, 36101884, -13333726, -26197690, 2866354, -1780264, 45870252, 29698626, -14716169, -20748450,
-48724256, 3404299, 24486146, 11702175, 45475112, 39106216, 30361660, 3195993, -25347824, -13903883,
--19315542, 37842956, -17961016, -25836912, -13903346, 1400696, -879931, 16760573, -16240882, 6049462,
--76694160, 8673150, 12119861, 12692165, -31977642, -29755534, 9363029, 27145804, -33015414, 12991739,
--18699214, -14639396, -22114786, -1924145, 23810762, -15758235, 26146150, -6522982, 10355166, -47846472,
--30633854, -1117228, 25660818, 17903034, -34672196, -37485400, -17251274, 3636227, 40057548, 16523276,
--3629784, -27880780, -32091996, -10865730, 6960532, 28314572, -2266669, 9476845, 19107236, -7088844,
-7047505, -18548354, 11819750, 6800544, -11320460, -9453223, 1267552, 14643691, -13657459, -383863,
-23313620, 3795677, 3633006, 189515, -6305549, -15487115, 4291746, -17215840, 20730196, 17735530,
-13617194, 1786170, -1328219, -20182052, 13205951, -3902515, 24152748, -5551245, -26616986, -16370268,
--3008625, 26463440, 7730405, -5383742, -2323041, -20879446, -9830106, -8267275, -898185, 12104828,
-11802033, -21050708, -11360188, -12792560, -12359305, -4377646, 4414153, -1547262, -6855842, -12727599,
--12887586, 2030446, -255014, -6504728, -6391448, 11878806, 86785184, 8770323, -46380816, -104252816,
--9488120, 61783640, 15496779, 26940182, -2898029, 37571836, -6378564, 16505559, -8773544, 21280490,
-29998200, 16002511, -14622753, -34433828, 40446780, 45948632, -10392747, -45546516, -27751394, 4736275,
-26466662, 8786429, 9465571, 1662689, 6742025, 3018825, 6682969, -8975408, -52755620, -333397,
-32597728, 25045564, -10384157, 2507724, 20069846, 43918724, 27000848, 21517786, -25890062, -18124762,
--4409321, -4807679, -39286604, 27804008, 16556562, 28885802, 59111636, -30421790, -19435800, -2755759,
--16315507, -14221174, -25748328, 45765560, -27692876, -29985852, -30709016, -10769094, 58609124, 14935749,
-22910966, -1280974, -4778688, -13567802, 36510980, 29362008, -14910516, -34189552, 11982422, -4497905,
-14273250, -32056026, -12283070, -18656802, -24071682, 14772540, 24367496, 4493610, 1160715, -12921946,
-7431904, -5061619, 22682260, 1780264, -7427072, -4457103, 7745437, 14382235, 16119012, -9209484,
-10127533, 5133560, 5402532, -737661, -16557099, -2214593, -13366475, -5457830, 1126355, 2290828,
-4971425, 4896800, 6009733, 14708652, 22100828, 19459960, -1381906, -4786741, 2892124, -9522479,
-12389907, -13385802, -1174674, 10902238, -207769, -2636036, -21297670, 10901164, -21240224, 7267085,
--4399657, 3480534, -1419487, 2529736, -541703, -13433047, 8040179, 6744710, -639413, 4586488,
--281857, 3951370, -1297617, -3422015, -172336, -1005022, 1242319, -542777, 1272921, 690953,
--4089883, -1752347, -420907, 3235184, 1342714, -843424, -2201171, -1486596, -25388088, 2558727,
-66215512, 51577724, 7667591, 4229469, -36512052, -69332048, -61297772, -29513404, 49622980, 54983096,
-56402048, 31751620, -8699456, -35864052, -33777772, -21657372, 13908715, 22440130, 38474316, 3819837,
--29937532, -24762634, -5844914, -24812026, -12046846, 5711770, 39851392, 57629872, 36811628, 17959942,
-15903190, -35756140, -4647692, -72111424, -81236088, -50437412, -24782498, -22001506, 37401112, 59403156,
-65227132, 59512140, 50987704, 21476448, 3068217, -24628416, -7226820, -39790724, -71269080, -5693516,
-6206765, 7060926, 23130010, 14193256, 23470922, -79211008, -43770012, -28221156, -46375984, -19369228,
-33660196, -20173998, 22543746, 3304977, -21337934, 17044578, -17893370, 19143206, 21771190, -16764331,
--34448324, -70183520, -68517080, -50746648, 24537686, 8883066, -10122701, 13243532, 3304441, 338766,
--32900524, -22767084, -60900488, -19992000, -22686018, -2355790, 43884364, 47406776, 6556268, 24513526,
--15031312, -32743220, -59256592, -38735772, -36749352, -1212791, 17635672, 10357314, 14305999, 15848429,
--11218455, 9627706, -10601590, 9986336, 2124935, -308701, -2509872, 8258149, 6894497, 15712064,
--3922379, -3645354, 14318884, 11638288, -119188024, -60955248, -31728534, 40125732, 9317395, 152951840,
-156783488, 118181392, 152860032, 160154496, 145531744, 104460584, 94839856, 105214888, 41909216, -6241125,
--65066072, -100603704, -139003936, -135078336, -201327136, -122180544, -79442936, -63131188, -89737440, -47238196,
--12901008, -67286568, -52195128, -55180128, -12418898, -33139968, -11743514, -44866304, -22721988, 26733488,
-27756226, 8265665, -8217883, 29133836, 23672786, -67884640, 14182519, 45878304, 100553240, 73687680,
-95739656, 39223788, 38096896, 159353488, 86382528, 163068640, 54702316, 152937344, 105701832, 133520872,
-180215760, 170591808, 138453632, 155343056, 172707616, 187822672, 160545872, 185144224, 126454040, 187798512,
-150929984, 133781248, 142798000, 77869368, 159854928, 77257872, 47036872, -58789512, 4012573, -86831888,
--97406640, -149234544, -175992192, -270794464, -264223696, -249788320, -233374032, -220191168, -185868464, -227027680,
--279189504, -275581760, -228361264, -241985968, -227316512, -228361264, -194655440, -212261040, -203266848, -151865744,
--167440368, -128891432, -120099096, -110990008, -70514776, -91454352, -20642686, -34062312, 15850577, 21065740,
-66728224, 98288712, 103332616, 118985624, 105979928, 159287984, 180908320, 178919744, 207125872, 215965984,
-214331760, 163141648, 146004736, 127811784, 118857848, 115367656, 118808456, 111309984, 85127328, 54579908,
-62406948, 47911972, 37671160, 24845848, -18876382, -25119116, -25985090, -32317482, -39075076, -44471700,
--30838402, -34409668, -27037892, -28014998, -23817742, -17382270, -20411832, -16988206, -16018617, -20175072,
--18025978, -20480552, -15482820, -12837657, -16935056, -19777788, -6792491, -1621350, -1369558, -512175,
-1505923, 8590, 653909, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--7687455,
--15177341, -2673617, 219043, -3496104, -7132867, -2373506, 5257040, -8422431, -4627828, -2797634,
--1629403, 2656974, -1183264, 2959769, 1378148, 2590939, -272194, 3210488, -2793876, 511638,
--1215476, 597000, 8129300, -1738925, -480499, -4032974, 5032628, 3099893, 2431488, 6243272,
--3178813, -1829656, 2159295, 5589363, -1490891, -384936, -4501126, -4964982, -3292629, 3526168,
--4376572, -3781719, -454730, 5027796, -6796786, -1460289, -5674726, -2772938, -1607928, 774705,
--490700, -4092567, 5258651, 884763, 4735202, -1913408, -1170916, -5878200, -103616, -2066416,
--2189360, 3375844, 1926293, -1058173, 1845762, 3737159, -1040993, 1602560, -2655901, -1553704,
--623307, -2534568, 2271501, 776852, 1736241, -4016331, 2906082, 1653562, 6522445, 3859565,
--1036698, -4131759, -309238, 896038, 541166, 1280437, -162672, -1401233, 84826, -952946,
-36507, -1152125, 439160, -1120450, -45097, 1249836, 452045, 644782, -770410, -563178,
-623307, 859530, 421444, -127775, -12489228, -4502200, 3614752, -3322157, -1472100, -1413044,
-1713692, -650688, -3281892, 5193153, 4673462, 1541356, -568009, 2399813, -6402723, -953483,
--6327024, -3209414, 4696547, -794569, 852014, -653909, -710280, 92879, 9808095, 8950712,
-4021163, 4772246, 5689221, -1107565, -635655, -1966021, 5021891, -500364, -1881733, 1394254,
--2898566, 1988570, 3619584, -1853815, 4078072, 4576288, 8968965, -3514357, -4206384, 3821984,
--2296734, 117038, 1903207, -5215164, 329639, -2733747, -3036542, 6885907, 4069482, 4953708,
--2821257, -3752728, 2644626, -4366908, 3075197, 13298292, 767725, 904091, 3005403, 1290638,
-1242319, 7566122, -4038880, -1036698, 1404991, 979789, -3759170, -2780455, -3837553, -1837172,
--1394791, 3474629, -580357, 3490198, 3597572, -3605625, -3837017, -999654, 2441689, 3365644,
--4023848, -792421, -1188095, -2780455, -326954, -2634426, 694711, -181999, 1414655, -810138,
-549219, -1026497, -249108, -790274, -3657165, 3959423, 6368363, -3056943, 3149285, 10035191,
-3343095, 2297808, -7030325, 5816460, 1515050, -9028558, 3814468, -2533494, -5436355, 2185065,
--769336, 2105608, 5230734, -5509906, -5805722, -2575370, 7857106, 222265, 3891240, 8152922,
--12140262, -9777493, 1574642, 5975374, -4398047, 388695, 8077760, 2089502, -1060857, -2430952,
-9669582, 1189169, -2372433, 1359894, -8800388, 1003412, -4859756, 4480725, 769336, 4759361,
--2407329, -1185948, 2135673, 149787, 612033, 280784, 4548907, 3679176, -5017059, 2872796,
-4024921, -6862284, 806380, -3088618, 1277753, -1568200, -5322002, 93416, 4566624, 3986267,
-8822400, -5464272, 6828998, -4516158, -921271, 4065187, -4438849, -6591164, -2396592, 321049,
--427349, -328028, -723702, 1317481, 2805688, -3829500, -59593, 1838246, -362925, 1580011,
--3156264, -1795833, -1257352, -2302639, 669478, -490163, -1821603, 1005022, 1018981, -1506460,
--2332167, -111669, -549756, 2406792, -128849, -380105, 429497, 526134, -426812, -705985,
-1602023, 547608, -1297080, -639413, -995359, 157303, 20176682, 9045201, 12222403, -989453,
--3381750, -4407710, -4421132, 2404108, -3713536, 5626944, -639950, 7721815, 464930, 4084514,
-5068062, 3919158, 3353296, 4443681, -14992120, -4432943, -1412507, -3160559, -2777233, -4719632,
--10681047, 479426, 7311108, -4503810, 4387846, -3617436, -5333276, -4022774, 602369, -3395709,
--1265942, -3482145, -248034, 8821863, 464393, 3964792, 5570573, 7252589, -3414499, 1698123,
--1629403, -5599027, 6350109, -3558381, -266825, -5542119, 4043175, -55835, 84826, -1531156,
--2587718, 1874216, 5671505, -2385318, 3191698, 3028489, 2539400, 9763534, -9836549, -4157528,
-228170, -5415417, -7023346, -2786360, -8594230, 1282585, 10051834, -6947647, -3324305, -7933879,
-499290, -2502355, -3805878, -9300752, 5448703, 7125888, 2807835, 4977330, -2546379, 795106,
--1891933, 2059437, 70867, 4925791, -1294933, 2115272, -118648, -1271847, 1699196, 1171452,
-2241436, 1887638, -344134, 444529, 1215476, 490700, 943282, -92342, -966905, -1792612,
-862752, 454193, -1245004, 867583, 944893, -313533, 396748, 1160178, -384936, -1072668,
--389231, 6270653, 8941585, -4954245, 4647692, -4043712, -1975685, -1604707, -11108933, 8065949,
--2365990, -1180579, 12783433, 7963406, 8537858, -3477850, 308701, 1529008, -1991254, 2850785,
--6548215, -171262, -4487167, 5228049, -5100811, -3498251, -555125, 892816, -6294275, 1209570,
-642098, 8240432, 35433, -11256572, 6463389, 6080063, 8635569, -1374390, 2155537, -6225018,
--4720706, -1964411, -4583804, 1791001, 1165547, -1698660, -710280, 4711579, 7311108, -10043781,
--2196876, -3758, -4145180, -4290136, 6611029, -5342940, 2479270, -5243618, -6974490, -5171678,
--3459059, 2400887, 949188, 12423730, -2128693, -3333432, 3677566, -3730716, -1117228, -3311957,
-3437048, -3064459, 4437238, -2230699, -2079301, 3069291, 7436736, 2075543, -7030862, 42950,
--3477313, -7103876, 1991791, 5031018, -1695438, 1165547, 1728724, 249645, -789200, 2590939,
-28454, -2878702, -2147, -1035624, -561567, -1495722, 2338610, -556735, -1963337, -2075543,
-265751, 2187212, -1003949, -146029, -2937221, 274878, 498216, 986232, -552977, -2463164,
--1309965, 2166811, -909459, -2658585, 1049583, -15432354, 14843944, 7967701, -8856759, -8931921,
-3661997, 11783780, -170725, 3456912, 13722421, 4602058, 4131222, -2318746, 7152195, 6536940,
-7533910, -13582834, -8342974, -8240432, 6506876, 5614596, 7156490, 343061, -8291435, 3409667,
--1257889, 3752191, -11919071, 4606890, 7220914, -5589900, 3122978, 5843840, 1636383, -173409,
-1252520, -1872069, 10434623, 7092602, 5582921, 210990, 3626026, 8055748, -7189776, -3866008,
-354872, 10651519, 6813429, 4193499, -8022462, 299574, 5452998, 6362994, -2238215, 1975148,
-6211597, 7696045, 2428267, 7116761, 2822867, -790274, -6564321, -36507, -10932302, -4472672,
--5244692, 921807, 3604551, -6325950, -2565706, -11555610, 5029407, -3203509, -84289, 6142340,
-8943196, 10814728, 1342177, -1115618, -6704981, -1994476, 3424700, 3701188, -7114077, 2243584,
--3201361, 2617783, 477278, -2392297, 45634, 1280974, -2254858, 1020055, -595390, -2682207,
--1383516, -1684164, 1698123, 2080912, -361851, -1551557, 1117765, -1189706, -861678, -2083596,
--288300, -438624, -2437931, 2027225, 13076565, 4100083, -2217814, -5925981, -15495168, -7510287,
-9509058, -3320010, -14240501, -3792993, -2247342, 2192044, 7896298, 12056510, -688269, 3561602,
--2739652, 6018323, -6700686, -7136088, -7681012, -13664438, 7329899, 4185983, -11411728, 373662,
--8327942, -3163780, 7394860, 4198331, 6038724, -1669669, -1563368, -1939178, 13019656, 10145786,
-10744934, -4852240, -9152038, 7279433, -1217623, -3223910, 9261023, 1672890, 9111236, -263067,
-5100274, -6365142, -320512, 4599910, -19484656, -2914672, 950798, -14246943, 3714610, -3610994,
-13331578, 8520678, -8153459, 672699, 12171400, -1232656, 6204617, -4056597, 8367133, -3859028,
-1655710, -3198140, 208306, 5884105, -7920457, 8579734, 4385699, 4940286, 1398549, 11393474,
--4463008, -12971875, 2250563, 9048422, -4269198, -8043937, -5832566, -4092030, 9325448, 234613,
--4001299, 422517, 221728, -1778653, -1792075, 620623, 1790465, -1007170, -1228361, -642635,
-1993402, -1007707, -3513283, 1018981, -3889093, 3589519, 2301029, -6979, -405874, 987306,
--1139240, 1613834, 143345, 1130113, 197569, 525597, 4112968, 1482301, -2175938, 1207960,
--31410706, -6636798, 16843252, -13594645, -4930623, 14319958, 5389647, -4530654, 1512902, -11841762,
-10573673, -1331977, -19102404, 1377611, -1001801, 7231651, 7086696, -3784403, -14963129, -6400038,
--5712844, 329639, -7977902, -4372277, -10173167, -2911988, 11092827, -9095130, -4571993, -3488587,
--5920613, -6241125, -8487392, 5812702, 1182190, 7226283, 1265405, -5305359, -8223252, -8106751,
--1667521, 5424544, 7988103, -2802466, -7267085, 7656316, 3185255, -11420318, -12738336, -25972740,
--2290828, -8284992, -5015448, 3872987, 3959423, 2399813, 11684995, -1196685, -5566815, -682363,
--5999533, 13336410, 7087770, -2567317, 7126962, -7469485, 3744138, 3087008, -7311645, -3193845,
--6555731, 4718559, 3313031, -12065637, 7985955, 12253542, -789737, -562104, -12366285, -4795331,
-5464272, -3819837, 3614215, 12149926, -4044786, 2694018, 1239098, 969589, -3825205, 741419,
--610422, -5034776, -3036542, -432181, 1813550, 324270, 1430761, -5250598, 643708, -2796561,
-1356673, -3025805, -2940979, -1766842, -164283, 701690, -2244121, 732829, 1312649, -279173,
-557272, 2287070, 1285806, -4158065, -2742874, -1272921, 467078, 1606318, -648003, 1629403,
-5607617, 20832738, -9722732, 7917236, -5092758, -48855, 11955041, -3446175, -5306969, -2816425,
--1099512, 2101313, 8132521, 27451284, -1497870, 1656784, 7630010, 1778117, 141734, -12841415,
--13348221, 2057826, 1842004, -8396124, -4271345, -1936493, 7621420, -3372623, 1490891, -175020,
-3335579, -3438121, 16042240, 8900246, -7474317, 8814347, 7997766, -9699647, 1709397, 4126927,
-3224447, -2699924, -3272228, 13346611, -11674795, 4942971, 14779519, -5152350, 1851668, 9458592,
--1019518, 8223252, 4542465, 116501, 4538170, 7052337, 9731322, 6097780, 804770, -372588,
--6684043, -7431367, 293132, 804233, -23284092, 15195594, -3562675, -7227356, -8084202, -17105780,
--19286550, -12557411, 2354716, 9528385, -3487514, 1154273, -1548336, 9465034, -3533684, -7714298,
-4377646, 2250026, -3194382, 1134945, 6482717, -6296422, 1256815, -7998303, -2661269, -3612604,
-1915019, -970126, 4098473, 2498597, 871342, -1197759, 2087891, 2747169, -62277, -5819144,
-3236795, -339839, 4926865, 4642860, 2347737, -2427730, 4268661, 863288, -670015, -221728,
-254477, -3929895, 4282620, -475668, -2831457, 4034048, 8230768, -1720134, -1754494, 4131222,
--1664300, -3042984, -1098975, 28195386, 28336584, -816581, -23424752, 4566087, 4821638, -2705293,
-6165426, 3510599, 2075006, -281320, -3937948, 22874458, 4263829, -3691525, -25458956, -14341433,
-6059662, -1593433, -8824010, -15297063, 2181307, 2583423, 3974455, -3819837, -16711718, -17890150,
-19434728, 18339510, 5779416, 16842178, -14347875, 1953136, 7605314, -3041374, -9073655, -16428250,
--8061654, 2898566, -632971, -7711614, 7994008, 144955, 7762080, 6236830, 496606, -17661980,
--10195179, -8308614, -1355062, 1813013, 2406256, -3007014, -4925791, 1212255, 2924336, -15793668,
--3904662, 2579128, 3624953, -7172596, -19679004, -4614943, -4890894, 14583561, -492311, 6561637,
--6529424, -5013838, -8766565, -9883793, -5712307, 1592896, -664109, 12242804, -7200513, 2122251,
-14228153, -988916, 7146289, 6331319, 13824963, 3052111, -3915400, -7043210, -6111739, -2426120,
-8390755, 1283658, 8458401, 4453344, -577136, -227096, 491237, 676457, -3655017, -4687957,
-95563, -1163936, -367220, 1356673, -824634, 1061931, -5357972, -1270774, 3428458, -201863,
-2200634, -9322227, -957241, -381715, -1731409, 1897839, 1541893, 1187559, 1713155, 2119030,
--4275103, 5094905, -3276523, 12281459, -6314139, 2145873, -4756677, 950798, 3227668, -7728794,
--5229123, -13798119, -15256261, -10020159, -3923453, -699006, 382252, -8442295, -7821673, -15820512,
-7611756, -15855409, -20403780, 13179644, -12230993, -15570330, 14504641, 2755222, -3269007, 15556372,
-8982387, -12087112, 11180337, -30819612, -2079301, -7920457, -3284576, -14489609, 25368762, 11877195,
--7421167, 3723737, 8001524, -5309117, 8833137, 133144, 400506, -7247221, 8579197, 9874130,
-13357885, -20908438, -716186, -144955, 6202470, -9480067, -3605625, -9649181, -9471477, 16618302,
-5385889, -12450036, 6429029, -7702487, -8156143, -13369696, -24285356, 6345278, 16069083, 1088774,
-16186658, 21961242, -1294396, -8997956, -20807506, 1621887, -2654827, 1330366, -5184026, 4300336,
--9137543, 19661824, 10899553, 17199196, 3498788, -2121714, -5220533, 7021198, 8130910, 3659849,
--1471026, -2461016, 781684, 9254581, -1620813, 3880503, -5825050, 2520072, -9634149, 940598,
-1201517, -4243428, 9103720, 5262946, -2328946, -5980742, -5223754, -1725503, -476205, 2922725,
--6117644, 1584306, 1103807, -447750, -4226248, 1603633, -9176198, -1858647, -2173254, -2562485,
-1591285, -166967, -17593796, 2357400, -39244728, -26365730, -18900540, 10227928, 19465328, -27764280,
-6441377, 19682762, 12157442, -281320, 7204808, 18558016, -8524973, -1109712, -5406290, 547071,
--12059731, 8573292, 177704, 1013612, 3167539, 24875914, -1261110, -10975789, -10691247, 5929739,
-18313204, -7397545, -18551038, 5505611, 18583786, 10849624, -2509872, 9024263, 6094022, 8694624,
-1930051, 7364795, 12604655, -1574642, -21261162, 1064615, 6551973, -19922206, -14548128, 19486266,
-15286325, -15047418, -9862856, 4759361, -1013612, 9557913, 23694260, -5095442, -4592394, 4505421,
--1231045, 8773008, 4378183, -8639864, -6792491, -3261491, 6935299, 6305549, -6314139, -17176112,
--3037616, -25846576, 24448028, 4123169, -4495757, 2326799, 10125385, -526134, -11368778, 4218195,
--4948876, -7369627, 5746130, -1546725, -11251204, -18489834, -6048925, -7540352, 15257871, -2436857,
-5027796, 2903935, 1856500, -1438277, -1337882, 2380486, -4110821, 664109, 5517959, -668941,
--2904472, -1657857, -12617003, -3894462, -350040, -2369211, -9188546, -8242579, -3470871, -1887638,
--836982, -2699387, -497142, 152471, 6902013, 2443300, -1147830, -2810519, 1076426, -2486249,
--2103460, 4481799, -2270427, -5364951, -1582696, -4043712, 474594, -4973036, 132070, 3280281,
-1027571, -4772246, -1591822, -15162845, -656056, 2622615, -18586470, -4884452, 13973676, 18176302,
-12863964, 33918432, 20459614, 30734786, 11473468, 8098698, -15880642, 17249126, -5807870, -1944010,
--12717398, -8469139, 16666621, -5459977, 37801080, 17586280, 10907606, -2025614, 8740258, -5952288,
--17648020, -8929774, -10954851, 7961796, -10329933, -240518, -11054172, 6462852, 15375983, 13875429,
--917512, 20068234, 16767552, 776852, -5844914, -7678865, -13762149, -4740570, 31645320, 12263742,
-36429376, -11755862, 178778, -1249836, 8490077, 29227790, 10013716, 685584, 18793166, 21525840,
-22746684, -2079838, -13453448, -4963372, -3721052, -3903052, 15076409, 10272488, 14307610, 21824876,
--13634911, 33022392, -22205518, -41686416, -6451041, -13026636, 8483097, 20070382, 9831717, -11284490,
--1157494, -12253005, -9141301, -6086506, 146029, 16591459, 2797634, -4753455, 2595234, 1198296,
-4977330, 5256503, 3610457, 6459631, 1759863, 4041564, 1486596, 4487167, 281320, -13478144,
--5193153, -203474, -12532715, 1315871, -13085155, -6942278, -7946763, -7408819, -6205154, -4610648,
--1757715, 686658, 3749507, 13699872, 1863479, -8791798, 3986267, 739271, 12447889, -2435783,
-5368172, -183073, 152471, -6765111, 1567663, 19730542, 32081258, -15973520, -12649216, 11539503,
--9678172, -1759863, -4604205, 4307316, 13931800, 15108084, 22198538, -24516748, 27394376, -9978820,
-2238752, -12761958, 11186779, 20806432, 8209293, 3804267, 1101659, 25347824, 5884105, -907312,
--8772471, -3947075, -26498874, -3599720, -13099113, -31496606, 2261837, -1967095, 12401181, -32803886,
--6856379, 7595650, 11649025, 27161374, -7959112, 7848516, 14397804, 2156074, -4278325, 7612830,
--7733089, -1954747, -41375568, 3495030, -17905718, -20571820, -23301808, 9123047, -37110664, 11976516,
--14190572, -18493056, -25390236, 22433152, 24042690, 23934778, 4673462, 4292283, 22550188, -31660352,
--3110093, -9846749, 12774843, -37597068, -12916577, -3998078, 12001749, 9401147, 7701413, 15008763,
--14020384, 5413807, -16923244, -5115843, -10146323, -4095788, -3449933, 339302, -16036334, 7198902,
-10072772, -1859184, 708670, -7982734, -2457795, 7590818, -10342818, -330176, 5087926, -12929462,
-5879810, -11598022, 161598, 7072201, 1734093, -9529459, -6155762, 3522947, -5207648, 5723581,
-4128001, 6620692, -831076, -8361765, 15768972, -7585986, -3729642, -10286447, 7064685, -3578245,
-1049583, -9552544, 1315334, -11581379, -1762010, 8296803, -2597382, -4982162, -11967926, 1278827,
-1671279, -1708860, -15724949, -29685204, -508954, -10645076, 35097936, 7238631, 24832964, -8207146,
-33889440, -21368536, -39864276, 8912057, 6784975, 4458176, -19804632, -22680648, -17671642, 6529961,
--17798344, 7742216, -9429064, 26486526, -8644695, -4107063, 19191524, 502511, -47707424, -19927038,
--618475, 31363462, -3586835, -9955734, -27341224, 4662724, -6725382, -23638964, -27862526, -3320547,
-5139465, -9686762, -10590852, -27994060, 18308908, -7005092, 6600828, -13974750, 645319, 8204462,
-5087926, 24563992, 282931, -8551817, -31996432, -11366631, 15516643, -21997212, -11142756, 8054138,
-17660906, 13689135, 35170952, 26749594, 545998, 20287278, 20901996, 7049652, 867583, 12153147,
--10367514, 52977884, -24337970, -57962196, 15452755, -49343268, -1852205, -38631084, -208843, 47165720,
-5975910, -22531936, 7546258, 7988639, -14630269, -12110734, -16559783, 3577708, -4956929, 15097884,
--11873437, 10084046, -19931870, 5571110, -594316, -3299072, -4466766, 13688598, 26311506, 8188892,
-10746008, 18114562, 5619428, -18118856, 5374078, -6723235, 12215961, -3775813, -5533529, -699006,
--1116692, -4869956, -14800457, -9791989, -6487011, -821413, 2255395, -1079647, -9324911, -21337398,
--13205951, 3221226, -3616363, -363998, -8010651, 2889439, 15586973, 22196390, -33643016, -22378390,
--13894756, -11812234, 13532368, 21005074, -12352326, 1401233, 18748070, -37948184, 2807835, 8895414,
--28625420, 14829985, -9529459, 13083544, 4926328, 14744623, 1601486, -18551038, 19217294, -24177982,
--5263483, 46826416, -19209778, 17155710, -11143830, 19280646, 17578764, -6142877, -20535312, 21822192,
-56761752, -31099858, 8083129, -41275708, 20882668, 12561706, -22362284, 24776592, 2326262, -49561776,
-7115150, 2437931, 22624814, -6068789, -3517041, -26039850, -25353192, -13006772, 61872224, -9445170,
-31392990, -27589260, 20635708, 10126459, -5737540, -21209086, -3994320, 17467096, 34744136, -12600360,
--11752104, -3676492, 6750615, 30302604, -7772280, -7151121, -22580790, 6922414, -33956548, -15060303,
-24060406, 29272886, 3183645, -2407866, -16000364, -26006564, -75670880, 47162500, 17790292, 27098022,
-2528125, -24554328, 26897232, -15198816, 11291469, 16125455, 15526307, 36418640, -847182, 8532489,
-9896678, -4041564, -16102369, -5248987, 26419418, 16446504, -15081241, -3214783, -10317048, -2556579,
-12238509, 3727495, -17627620, -11221676, 16503412, 3945464, -5461588, 8711804, -14943265, -8936216,
--3258270, 7350837, 11587822, 7709467, 2061047, 9363566, -7693897, -9805410, 1564979, -897648,
--13457743, 1679332, -13877576, -437550, -8571681, -1910187, 1918777, -6945499, -13305272, 4551055,
--31807990, 22220550, 21751862, -43097312, 4054449, -22642530, 2678986, -47445968, 47571056, 41485624,
--4387309, -21644488, -7651484, -8674223, 23008676, -23731304, 29713120, -39672076, -23148264, 11316702,
-13903883, 3226057, 13415867, 37796248, 10726144, 17438640, 4473746, 18121540, 12714714, -8483634,
-3597572, 15348603, -1249299, -1291175, 29995514, 13561359, 39421356, -3609920, 22382148, 76773,
--29171954, 29642790, -15525233, -3309809, 8916889, -27454504, -18797998, 10682121, 42872900, 23561654,
-15326054, -55531780, -13184476, -38933880, -643708, 62310848, 40700184, 47144784, 3403225, -45712948,
-13918915, 46402288, 9426379, -11597485, 40969692, 4475893, 27273042, -71105328, -59337656, 42417632,
--3412889, -19128710, -45552424, -9834938, -17335024, 19345070, 17545478, 21181168, 21359946, -8960376,
-6391448, 39303244, 35907536, 37963752, 2749316, 54546084, 26808112, -9649181, -22009560, 356482,
--11060615, 3264712, 27307938, -4347581, 783295, 20216412, 21825414, 2170569, -335007, 8651675,
-24212878, 8710731, 11110007, 16809428, 5526549, 13085155, -1091459, -7335804, -3681324, -2784750,
-560493, 17379048, -7113540, 3092377, -14690399, 21027086, 9691594, 9207873, -744103, 10626286,
--492848, 36010616, 8745627, 36971080, -10502806, 32345936, 14306536, 4809290, 13544716, 13940390,
-15251429, -4179003, -3431679, 22141630, 7098507, 18557480, -41175316, 24273008, 32386200, 2456721,
-11021423, -29346974, 22852448, -13363791, 10912975, 1036698, 19327, 19361176, -6084358, 12590160,
--4152160, -23579908, 6185290, -1675037, 26213796, 22939958, 32615444, 10851772, -25177098, -20745766,
-21117280, 23796804, 10908143, 2024540, 7403450, -6601902, -20691542, 3406983, -7768522, 28973850,
-20142860, 17634598, 22867480, 23528368, -32815698, 35817880, 35139276, 25769266, -17738214, -15741055,
--22891102, 31170188, 18099530, 51268488, -31512712, -31134754, -24165096, -45616848, -12074764, 48965312,
-7594039, 38413112, -41380400, -44177496, 9360881, 27761058, -38723964, 5842230, -30897458, 12018929,
--35630512, -2998961, 16548509, 17570174, -32432372, 12471511, -24741160, -48967460, -1893544, 57471496,
-29600378, 23128936, -16416439, -41552196, 62444528, 50470160, 13957033, -56674776, -2509872, -13545253,
-39873940, 20218022, 24595130, -29634738, 21718576, -13487271, 14112726, -20644298, 6862821, -23065048,
-32503238, -6865505, 5064304, -39576512, 11009612, 4498442, -2161979, -9210557, 7613367, 3672197,
-3745212, -24717536, 9851581, 24244016, 1200443, 14372571, 12229383, 9848897, 1277753, 4352413,
-145492, 781684, 715112, -8305930, -1256815, 7190849, -510027, 14938433, 12799003, -7672959,
--1752884, 6525129, 2703145, 11332271, -22984518, -694174, -79154640, -16244640, -1588064, 929324,
-28145458, -73983496, -7981660, 33414308, -54089744, 12233141, -11969537, 63461900, 34058552, -38953744,
-10023380, 42640972, 4799089, -17157858, 14532022, 10115185, 6061810, -978716, -3820910, 3113315,
-7431904, 14463302, 44455596, 35030292, 38927972, 26049514, 48906792, 23327042, 49993956, 20117626,
-44395468, 308701, 27731530, 24234352, 27482958, 20365662, -1562294, 7747584, -33315524, -20480014,
-64636036, 454730, -25248502, -7547868, 20571282, 33472828, 69519952, -9709310, -37630356, -19524384,
--27636504, 38994544, 45439680, 50070728, 16064788, -2220498, 34537444, -58406724, 53204980, 19619410,
--27460948, -916976, -89874872, 1739462, -59278064, -83143584, -20219632, -49039400, -20733418, 93315680,
-85899880, 80006648, -62914292, -6905234, -6849399, 62816580, 99470904, -22505628, -27606440, 54484880,
-56768732, 48099876, -5412196, -8247948, -27082990, -34965864, 5380521, -13127568, 15557445, 23420994,
-21088290, 13959717, 1753420, 8894877, 26866094, 4118337, 478889, -7937637, 1828582, 1387274,
-7537131, 5037997, 5732171, 27032524, -2090039, -16770774, 17119202, 19532438, 4969277, 31452046,
-7836705, 15003931, 35155380, 46214384, 34398392, 24540906, 10384694, 4293357, 13889924, 31556736,
-14361834, 32364726, 24591372, 15343234, 23153632, 8039105, 31336618, 26750666, 22392348, 33341294,
-19667728, 5961415, 9709310, -2107755, -22002580, 56847112, 69080256, -57219164, -52486648, 17656610,
-60392072, 1500554, -28310276, 198105, 16386374, 18122614, -49956376, 18570364, -6671695, 26362510,
--27431420, -13207024, -32142998, 33925408, -4631049, -15008763, -30055108, 22009024, 12994960, -5214091,
--25402048, 11867532, 11246372, 5983427, -22446036, -3255048, -1127429, 25933012, -19564112, -4788889,
--28610388, -7552163, 9898826, 22755810, -29768418, -11396696, 31729070, 27133992, -8332774, -19236622,
--117575, -9833328, 26509612, -15188078, -8351564, 12783433, 9634149, 16147466, -14537391, 4549981,
--20034412, 23108534, 27416924, 12940736, 4297652, -21497386, 24371256, -17301738, 37715720, -27625230,
-30324616, -47564080, 32136556, 3982509, -2681133, -33478734, -9868761, 10799695, -8426189, 3176128,
--8140574, 9375914, -4048544, 10499048, -10262824, -14388677, -8955544, 9967008, 907312, -1335735,
--2332167, -8002061, 5114233, 11665668, -5901822, -1598802, 928787, 1498944, -416075, 1983201,
--1862405, 8404177, 494458, 10920491, -9787694, 1720671, -4374424, 11011222, -11770358, 10837276,
--12136504, 7205882, 3956202, 13742822, -2973728, 12987981, -11793980, -9912248, -1642288, 21188148,
--10055055, 16264504, -5548561, 1988570, 2758443, 11350525, -4669703, 5546951, 2703145, -340913,
--303869, 3527779, -753230, -7945690, 15497853, -9450002, 3040837, -7713225, 5412733, -7363185,
-8406325, -10912438, 12682502, -10239739, 10908143, -13741748, 12432857, -17282948, 16669842, -10912438,
-12116103, -12826383, 12898861, -13064217, 13468481, -12328704, 12906377, -1834488, -12327630, 55091544,
-58628452, -34500400, -20433844, 11623255, 55989732, 34782256, 20864952, 20065550, -8914205, -23431194,
--7089918, 13153874, -201863, -5521718, 16703665, 287763, 11773042, 1440425, -6261526, -20995410,
--5571647, -1232119, 1549946, -834834, -17056926, 19036906, 3177202, -7669201, -431107, -593242,
-267899, 12286828, 22577032, 9623948, 2281702, -8135742, -11688217, -3038153, 7333657, 15127949,
-20376936, -11381663, -11236708, 2535105, 20598126, 9284646, 4589710, -9316858, -18702972, 15938624,
--3294777, 439160, 1076963, 5127117, 4919885, -2278480, -689879, -12202539, 1863479, 10739029,
--5116380, 6410776, -3613678, -8699993, 5507222, -1663226, 2973728, -677531, 9336185, 6327024,
--13952201, 4097936, 652298, -25302190, -33618320, 947577, 1952063, 7640747, 20444582, 2226404,
--9027484, -8836358, 8041253, 8783745, 13336947, 9087614, 550830, 3866544, -1452236, -10162966,
--4238059, 1527398, -13945759, -13342853, 8559333, 9092983, -239444, 10229538, -14554570, -2658585,
--706522, 702764, -4516158, 2281702, 7823283, 10872710, 5285494, 9152575, -5833103, -11419781,
-6654515, 1043140, -2829847, -19475530, -72702520, 30869540, 112121728, 103376640, 88251376, 35198332,
--83727168, -52414708, -75270376, -84359064, -75414792, -21974664, 16316044, 63572496, 66234300, 79306032,
-52545704, 52977348, 1327145, -55736328, -53213036, -65630320, -51317344, -28585692, -1910724, -18420040,
-19964618, 24577414, 39879844, 43765716, 44487808, 26479010, 2260227, 11756399, -9773735, 6290517,
--30415348, -22144314, -28126130, -46028092, -36479840, -27997818, -19729470, -32735166, 4567698, 55819004,
-63122596, 35201552, 66001836, 16328392, 38527468, 19775640, 11336029, -16616155, -35194572, -48300664,
--67775656, -52025476, -77321224, -32064616, -34410204, 22165790, 22261352, 64661808, 74585864, 66357780,
-59155660, 57766772, 36196372, 4397510, -20207822, -61877056, -38763152, -80816256, -68845640, -95841120,
--15478525, -8628052, 23637890, 30262876, 54630372, 64190972, 53781580, 47953308, 35622996, 20949776,
-2993055, -17894982, -25680146, -34675420, -53434224, -37612640, -46520940, -32430224, -16580184, -4850092,
-10570988, 10211285, 51095616, 47026672, 46680388, 36334348, 26716308, 3124589, 16617228, -18558554,
--30644054, -23951958, -66360464, -77450608, -14915885, -5276368, -3333968, 37687264, 30925912, 41136124,
-28893318, 37585796, 11504607, 9670119, -2896956, -16013249, -20494510, -26574574, -29343216, -18138184,
--3783866, -22975928, -12064026, 18245022, 26132192, 17448842, 22638772, 15371151, 11236171, 2847027,
--2025614, -8031052, -11204496, -8782134, -14011257, -7438347, -2748242, -5360119, -7111929, 1508607,
-5422396, 1076963, 8237211, 10339597, 7846905, 5226975, 4565014, 1374390, -846109, -2950643,
--749472, -1116692, 394063, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
--5164698,
--5280663, -4364224, 1209033, -2503966, -403727, -715649, 2529199, 10109279, -2704756, 1017907,
--9630927, -5260261, 2934537, -4578435, -3572876, -1351304, -4069482, -1078037, 8386998, -3602941,
--5373541, 9064528, 7254737, -2560338, -1684164, 8297340, 2359011, 3218004, 1600412, 406411,
--2125472, -3496640, 3287261, -2604898, 2456185, 892816, 944893, -1161252, -2853469, -2236604,
-2024540, -2574833, -4070019, -1833951, -1820529, -5180805, 5861557, 9061307, -5214091, 2957622,
-249108, -2033667, 1434519, -224412, 73014, -3033858, 5602785, -3324305, -4108673, 4664335,
-1422171, -243739, -525060, 2563022, 161061, -72478, -1610613, -806917, 4923107, -7191923,
-2446521, 1323924, -1751273, -1719061, -2513630, -3659849, 26307, 3533148, 3607236, 1052267,
--71404, 818191, -2007897, 2629594, -999117, 1547799, -1121523, -719944, -543850, -654446,
--526134, 1214402, -60666, 501974, 730681, 446677, 1257352, 1592896, -529355, -365609,
--716723, -491237, -1016297, -297963, -679679, -553514, -1034013, -404264, -120796, -15923591,
--2515240, -5817533, -1432372, 1287953, -4342212, -9705552, 7114077, -2382633, 1655710, 4764193,
--1515050, -484258, -594853, 2194192, -1686312, 8014409, -334471, 6182606, 9060770, -10877005,
-2276870, 7559143, 517007, 1507534, 5228049, 9669045, 1378148, -2173790, 4861903, -1293859,
--2525978, 2180770, 1714766, 2157147, -2729452, 9852655, -4554813, 2486249, 3668439, -44560,
--489626, -4807679, 774168, -5570573, 4669703, -5690832, -4379256, 3150896, -5315559, 3637837,
--3714610, 1527398, -3001645, 2021319, 4275103, 8393977, 2563559, 949188, 4071629, 61203,
--7271380, 961536, 2022393, 2759517, -1843078, 378494, -1017907, 1377611, 4027069, 2439005,
-5508296, 1905892, 712965, -3372086, -1745367, 3255585, 2514167, -3229279, 3841312, 1887101,
-4202089, -1324997, -1045288, -1329292, 164283, -823560, -3426847, -629750, 524523, 561567,
-2156074, 239444, -689879, -840740, 887985, 462783, -1699196, -253403, -166430, 9664,
-624918, 177167, -814433, -112206, -774705, -5814312, 4338991, 2779918, 909996, 5433134,
--250719, 3033858, 7473243, 4580046, 9787694, 1858647, -1396401, -10006200, 1614908, -6145025,
--2001992, 744640, 2294586, -3857418, 43487, 9574556, -4866198, -281320, -4858682, 2309082,
-92879, 1840394, 3964255, 4598300, -2864743, 3444564, 3626026, 6920803, 309238, -6834904,
-705448, 7337952, -680215, -482110, -973884, 4927401, -5719823, 463856, 3823058, 4931696,
-5974300, -2253784, -3844533, -517544, 8568460, 777389, 3119757, -6955700, -3063922, 1665911,
-1470489, -1204202, 4556961, -328565, -900869, 2520072, -4327180, 261993, -649614, 2965675,
-4611721, -6755984, -1479079, 2169495, 4545686, -2900177, -2738579, 1858647, 5379447, -484258,
-3623879, 2540473, 3714610, 1539209, 4140349, 6189048, 268435, 1728188, -1686312, 2516314,
-1829119, -1189169, -2768107, -532576, -1955284, 644245, -1786706, 780610, -802085, 431644,
--1446330, 33286, -122943, 303869, -861678, 1378148, -1296543, -574989, -569083, -708133,
-188979, 775778, 824097, 443992, -379031, -293132, -598074, 1865090, 17311940, 8404714,
-6822556, -6437619, -1139777, -8984535, -6423661, 9649718, 870268, -6069863, -2829847, 2077690,
--5754183, -504659, 9802189, 3937948, -407485, 3163780, 14374719, -9554155, 2294050, -1775969,
--4651450, 8284992, 4198868, 4308389, -3220689, 3723200, 4744328, -1439888, 3044058, -948651,
--4101694, 875636, 1537598, -690416, 4865661, 1224603, -1761474, 5410048, -2463701, -2514167,
--3123515, 1537061, 2062658, 417149, 3864934, 543850, 12164958, 824634, -10737, -2801393,
--2543695, 2944737, -9060770, 401579, 5428302, 4342749, -4894115, 7196755, 117038, 3234110,
-5724655, -1598802, 4430796, 3469260, -1580011, -5140002, -3949759, 3266860, 8138426, 2349884,
--3546569, -1714766, -2012192, 5631239, -4754529, -243203, 4618164, 5389110, 736050, 701690,
--1488743, -2218351, 91268, -496606, -1889786, -364535, -863825, -909996, -1454383, -704912,
-1898912, 1318018, -386010, 2492155, 724776, 1020055, -323733, 864899, -438624, -192737,
--103616, 308701, 302258, 714038, 1339493, 363998, 152471, -387621, 4168266, 1124208,
-11323144, 2839510, 6747931, -285615, 1494112, 1918240, 1879048, -1853278, 6899865, -2887292,
-7465727, -3646964, -2896419, 1982664, -4941897, -1387811, -1559073, 2131378, 3102040, -1952063,
--7233799, 3316789, -8745627, -3498251, -1490891, -170725, -1377074, 1742683, 7825431, 4459250,
-524523, -8110509, -7833484, 304943, 5274757, -2754148, 819265, -964220, -3478924, -5196911,
-533650, 3579855, 7546258, 6851547, -881542, 2225867, -9480067, 3272765, 6285685, 7184944,
--890132, 6554120, 1387811, 9525164, 5606006, 1848447, 4285841, -399432, -2490007, -1656247,
--972273, 5987185, -2294586, -3342558, -4163971, 5974300, -1450088, -10421201, 2066416, 3974992,
-5840619, 7590281, 12934294, -5417028, -4456029, 7670275, 8082055, 6387690, 2721936, -1342177,
--1489817, -5053566, -5680094, -1588601, -2062121, 1684701, -248571, -1664300, -248571, -3152506,
-656056, -442919, 1454383, 173409, -2415919, -227096, 233002, -433255, -240518, 1097364,
-2097555, 2097018, 1723893, 424128, 413391, -3248606, 122407, 2185065, -1479079, 1174674,
-244276, -959388, -792421, -464393, 2178085, 1589138, 307627, -273804, 1178432, 27917,
--15039365, 7305740, 10304700, 1391569, 8577050, 1213865, -7689065, -693100, -3589519, -1860795,
-7918309, -10275172, -2876554, 3640522, 4048007, 9364102, -1840930, 4071629, -14623290, -7401840,
-3741454, 8688719, -5695127, -4047470, -6104759, -7319161, 3848828, -869731, 73551, 2781528,
-1335735, 2900714, 11344619, -6832219, 11009612, -573378, 2251637, 2478196, 2393371, -3285650,
-3829500, -7754564, -1482301, -4207994, -821949, -5750961, 7014756, 1275605, 19427748, 658204,
--1245004, -4881231, 859530, -4081830, 10153303, -6230387, 1345399, -11327976, 8524436, 7881802,
--9410810, 5788006, 5840082, 2471754, -5100274, -5148055, 8552890, 2252710, -12378633, 5975910,
--5877663, -3145527, 2798171, -3044595, 1105954, 2550674, 3334505, -6396280, -15683610, 2332704,
-3517041, -431644, -3372623, 6241125, -2672544, -1954210, -2906082, 4170413, -5077725, -1949378,
--2887829, -2078227, 1272384, -1877438, 2687576, 448824, -4516158, 3367791, 430570, -2252174,
--143881, 3042984, 965831, 207232, -406948, -754304, -2397666, 266288, 656056, 369904,
--248571, 1436130, -2713346, 363998, 504659, -2941516, -2690260, 6612102, 1274532, -119722,
--5582384, -9362492, 3314641, -5018133, -2030446, 9084930, -12360379, -5135707, -9107478, -914291,
-7807177, -711891, -6442988, -8927090, -10039486, 3926137, 10618770, -3029563, 6634651, 10001905,
--2765422, -2290828, 3911642, 5568425, 11857331, -1704565, 6666326, 980863, 14098767, 10380936,
-2838974, -3304977, 1425392, -7799661, 13688598, 3195993, -6035503, -6686191, 7895761, 6681896,
-4801237, 3433290, 2346126, 7102266, -3060164, 3142306, -4685273, 692564, 386547, -7100655,
--9505299, -3357591, -6712497, 4333622, -4095788, -3029026, -10366977, -6509023, 1992328, -3527779,
--1238561, 5000953, 10394358, 13119514, 6818261, 5440113, -4825396, -10653130, 191126, -7451232,
--17244294, 167504, -1206886, 6452115, 4346507, -4205310, -9605157, -5207111, 4655208, -212064,
--1064615, -3961571, 2134062, 2211371, 1743757, -1006096, -5465346, 1172526, 727460, 553514,
--1229971, -654983, -732292, 702764, -2670933, -2738042, -281320, 354872, -2218888, 215285,
--436476, 2080375, 2761664, -2954401, -98247, 2177549, -355409, -1228361, 513249, 333397,
-2995203, -905701, 1930588, 1529008, -1272384, -19889456, -6159520, 1097901, 9682467, -6976101,
-4719632, 3107946, -425202, 14606110, -1981591, 13746043, -8120173, 4037269, 4322885, 172336,
--12585328, -5190468, -4717485, -14260365, 4838281, -3547106, 2997887, -890669, 5143224, -18254,
--5609228, 2976949, -9208410, 6774774, 3934190, 15636365, -694174, 472983, 14251238, -12618614,
-11056320, 13591424, -8531416, 8753680, -3686693, -4105452, -7165616, 1801739, 1609002, 9666361,
-6178848, -2490544, -4061965, -8215736, 4461934, 5127117, -9469329, -4237522, 8773544, -15460272,
-1395328, -11942157, 6694781, 660888, -284542, 3613141, -4109747, 1374390, 14190572, -5872294,
-3059091, 6936372, 4316979, 763967, -7569343, 3322157, 2727304, -4369593, -12232067, 133681,
--2835752, -9647570, 7261716, -2626909, 2643016, -384400, 1338956, 3073586, 2940979, -5389647,
-1317481, -536871, 1190780, -430034, 3598109, 1821603, -941135, -666794, -5297306, -205085,
--3633542, 632434, 558346, 3815005, -5597416, 2071248, 2968359, -2103460, -3488050, 1242856,
--534723, -2035815, 1637993, -435402, -2189897, 775242, -759672, -2489471, -726386, -1608465,
--3372086, 1588601, -1048509, 318901, -1857037, -375810, -1897302, 903554, 3562139, -462246,
--8130910, 23639500, -8790724, 4570382, 3400004, 8419210, 2654290, 5099200, 11809549, -9150965,
--5607617, -773631, 16428787, -6362457, -6991133, -8174397, 4060892, 2719788, 8990977, -18778670,
-177704, 372588, -1273995, 9614821, -2339684, 7408819, 13788456, -10047002, -4498442, 3905199,
--7522635, -9483288, 6360310, -8811125, 12965433, -2238215, -13352516, -1788854, -7668127, 4217121,
-10574209, -227633, 5346698, -678605, 2052994, 12578349, 383863, 9117142, 3606699, -6868190,
-7128035, 6080063, 837519, 5104032, 18076980, -3021510, -8139500, 4275640, -10300942, 784905,
-17265232, 5844914, 2717104, -3312494, -4956929, -3350075, -6121402, 10394358, -6852084, -1843615,
--4275640, 11798275, -21734682, 7412040, 7646116, 13055090, 3090766, 976568, 11508365, -3277060,
--4993973, -6540699, 152471, -5443334, -554051, -4685810, 3768834, 332860, -4172024, -4401805,
--3684008, 1382443, 4495220, 3598109, 767725, 248571, -1930588, -4763119, -1593970, -1242319,
-1947768, 1985886, -804233, -1186485, 922344, -2862596, -17717, -2778307, -1403381, -3652333,
--4912369, -1381369, 1669132, 5435818, 869731, -1530082, -1464047, 2123325, -534187, 5212480,
-2355790, 895501, 725313, 34939560, 10427107, -6367826, -8485782, -7148436, 25313464, -21814676,
-1736241, 8544837, 1263794, -11826729, -2675228, 5937793, -1267015, 1379758, 10500658, -10865730,
--9128416, 4481262, 13687524, 8437463, 3535295, -6630356, -6481106, -6238440, -7269232, 6780680,
-2692945, 9716290, 7793218, 4442070, -10310069, -4900021, -10983305, -2176475, -7205345, -16588237,
--3091303, 7419019, 1648731, -7692287, -7758859, 200790, 4014721, 10392210, 1321239, 5272609,
-1505386, 20076288, -17413944, 11400991, 2137820, -17765058, -3208878, -5350456, -4395362, 2737505,
--7778186, 4702989, 3416110, 7965554, -9700184, 3445101, 15538655, 7285875, 24688008, -5513128,
--612570, -6058588, -3103114, 680752, -490163, -23398982, 10436234, -974421, -1369021, 6361384,
-6286759, -6626598, -9969156, -10900090, -4052839, 7755637, 3302830, -2535105, -6440304, 5695664,
--10128070, 5316096, -1657857, -4576288, -5724118, -6206228, -2240362, -2061584, 987306, -2585034,
--1751810, 1296006, -1858110, -1729798, 1079111, -5070746, -2312303, -344134, -1725503, -2898566,
--1293859, -5149666, 733903, 3871376, 5210869, 6117644, -4432406, -5425618, -3849365, -4905390,
-189515, -3221, -3009162, -3422015, 1322313, -449361, 3399467, -1048509, -244276, 2638184,
-2640868, -2114735, -11694659, 2843805, 6362994, -243203, -7185481, -4986457, -15532749, -18456548,
-3832185, -8178692, -3895535, 2718714, -154082, -1928977, -8236137, -4085051, -78920, 6484864,
-6908992, -10136660, -5816460, 6388227, -9084930, -4459250, -14879377, 14408542, -1874753, 12981002,
-1136019, 4871567, 13790066, 10425496, -6122476, 3144453, 7012071, -7361574, -2997350, 6833830,
--2533494, -16526497, -3071975, -11578695, 16992502, -1793149, -4510253, -9711458, -14173392, 5083094,
-3005940, 3346317, 6994891, 165893, -2583423, 7320772, 1869921, -1395864, 2575370, -4088272,
-11229729, -2650532, 7085623, 20964272, 4675072, 3940096, 4909685, 7736847, -18246632, -14768245,
-5623186, -16119012, 11164231, -2274722, 12790949, 3379603, 24937654, 9793599, 1698123, -7245610,
--3214783, -12823162, -864362, 4001836, 2505040, 2726767, 4408247, 11380590, -4733054, -9228811,
--3208341, -2564632, 3582003, 10326712, 3652333, -2489471, 2977486, 3029026, -532039, -2386928,
--6010807, 404264, 677531, -2933463, -3977677, -758062, -6374269, 4471061, 2538326, -2997350,
--971736, -6331856, -3103651, 2927020, 5541582, -2783676, -2572686, -117038, -5087926, 5395016,
--255551, 3885872, -5263483, 2147, -5453535, 3192235, -6471442, -1468342, -29772714, -20850456,
-7736310, -8304856, -17219060, -26137024, -636729, 2084670, -5068062, -4174708, 24928528, 6541235,
--18026514, 3772055, -11000485, -9253507, -8932995, -16099148, -2659122, 1484448, -22169548, -20992726,
--7975218, 3473018, 2067490, 12719546, 10765872, 6688875, -5337571, -207232, 4920422, -11369852,
--6338298, -3879429, 3765613, -10681584, -6524056, 7300371, 4422743, -289373, -1639067, -1995012,
-6086506, -15381888, -8764418, -7573101, 10205379, -11923366, 8106214, 13665512, 18722300, -1245004,
-5389110, -4438849, -8930311, -11724724, -3157875, 11559368, 4350802, -20989506, 932545, 21721798,
--14421963, 702227, -3074660, 1158031, 5168457, 11077794, -2291365, 3519726, 13302051, 9145596,
-5862094, -10174241, -12241194, 8949638, -8856223, -16772384, -16106664, 17553532, 6687801, 9696426,
-4167729, -2764348, -3377992, 8375186, 5939403, 1578937, 8072928, -3217468, -10566693, -5459977,
--7362111, 2961380, 10699300, 5208722, 1300838, 6330782, 3520263, 5902896, -1120987, -3029026,
-3640522, -1319629, -4087198, -3486440, 2825015, -9766756, 2155537, 5728413, -3436511, 7086696,
-4866198, -408559, -765041, 6680822, 835371, -1545115, -4248797, -4181151, 1176821, 3521873,
-810138, 2835752, -4233764, -17400524, 9601936, -14085882, -25107842, 4529580, -15264851, -8873402,
-29669634, 2012192, 22216792, 19985556, -4006668, 21046950, 29132226, 20708184, -26051124, -3484829,
--12106439, -12274480, -7500624, 515396, -10737955, 22725208, 6759205, 12466679, -10641318, 11932493,
-9197672, 3048353, -13553843, -10558103, 21646098, -3964255, -20181514, -1387811, -23359254, -3383361,
-6509560, -8392903, 530965, -19084688, 8774081, 17273284, 9382356, -2563022, -9338870, -3512210,
--2334315, -3262565, -8744553, -23447300, 15851651, 8881455, 8294656, 9895605, -13285944, 20645908,
-2627983, -6268505, -4575751, -16509854, -7232725, 10650445, 6643778, 17648558, -1871532, -20278688,
--35497904, -2130841, -212601, 100932, -12767864, -17945984, -3372086, 11805791, -6208375, -7289633,
-4751308, -1646583, 18090940, -3612068, -16012175, -5797132, 16850230, 1021665, 3237869, -16410533,
--5769752, -3142306, 6805376, 8696772, -4284230, 2986076, 712428, 6495601, 4323422, -723702,
-2961380, 8722005, 2180233, -216359, -2881923, 927713, 5840619, -260919, 2986076, 9979357,
-1510755, -3520263, -7405598, -883690, 5425081, -5223754, 2783676, -2385854, -1562831, -3504693,
--4445291, -3450469, 93952, 6280316, 4969814, -6806450, -12377559, -3730179, 4645007, 1607392,
-1684701, 37877852, 23890218, -3391414, -22062174, 4642323, 11000485, 6338298, 16076599, 24128590,
--10647224, 1986422, -21566104, 6106370, 1780264, -8370892, 38863548, 14725295, 33534030, 13840532,
-8651675, -29221884, 453119, 16292422, 2973191, -15559056, 6578280, -23782308, -9280351, 1627793,
-7168838, -7129109, -4619238, 5145371, 4206384, 1707786, 21058224, 13070659, 3469260, -8439074,
-14505178, -9439801, -6766184, -13874355, -4610648, 18073222, -28563680, -449898, 12827457, -14266271,
--4476430, 5426691, 4828080, 26370026, -1513976, -310311, -12306692, 25781614, -11483132, 3244311,
-2716030, 17848274, -4158065, -6463926, 17011292, -28702192, 7487202, 2734821, -11882564, 22923852,
--28660316, -3653944, -9574019, -19267224, -9622874, -1725503, 8173860, 18004502, 29734058, 14484240,
-19653234, 29898342, -12160126, 5496485, 7538205, -12801150, 17311940, 325344, -22891638, 11998528,
-6367826, -8407935, 818728, 17670032, 13395466, 3924526, 10576357, 3118683, 3469260, 9690520,
--1710471, 4107063, 8705899, -2138894, 1941862, -1613834, -450435, 6095096, 1254667, 624918,
--5310727, -3214246, -3661997, -7601019, 1700270, -4211216, -12054899, 4617627, 7326678, -2537789,
--66035, 3217468, -4123169, -179852, 12861280, -1973001, -3508452, -8126615, -36710696, 10171556,
-1933809, 44338020, 10126459, 8335458, -1217086, 21625160, 5837935, -32502702, -4989679, 34774740,
--10302553, -7322383, 2934000, -2404645, 790274, -6331856, 36215164, 41199472, -22152904, 10001368,
-11093901, 6024229, 11705396, -18133352, -25047176, 19280646, 5299990, -13853954, -23944980, -7188702,
--8129836, 21905944, 17905718, 10049687, -20271708, 11151346, -8780524, 7110319, 1222992, 9411884,
-20657718, 4754529, -46166604, -14148159, 8488466, -18496276, 5632313, 19593640, 6591701, 34118684,
--11280195, -51246476, -1175210, -20428476, 17841832, 15477988, -5579700, -10898480, 15847356, -24609088,
--4381941, -13295608, 11635066, 16027744, 13698798, 14891188, -11087458, -20853140, -62065500, -29677150,
--36113160, 5710696, -24471114, -11863237, -4971425, -26927298, 14452028, -48480516, 15113453, -34861712,
--25249576, 24869472, 29388850, -9023189, -1177895, 15917149, 20725364, -28452548, 632434, 4664872,
--4079145, 5025649, 15312632, -1948305, 6779606, -1288490, 5992553, -12577275, -6581501, -5733245,
--8267275, -1796907, 12020003, 4991289, 10822781, 409633, -11414949, -10379325, 1824287, 6305012,
--2348810, 6695317, 6998649, 16860968, 1670742, 5803575, 1850594, 4022237, -7407745, -2270427,
-3103114, -6027987, 324270, -2760590, 727460, 3132642, 17623862, -1617055, -10432476, -11577621,
-1161252, -654983, -18408230, -10794863, 7621420, -12106439, -596464, -156229, -48012364, -7062000,
-31971736, -37949796, 3831648, 14191646, 513249, 9953587, -2724620, -30061550, -2397666, 16397111,
-5628555, 24423868, 16665010, -25784836, -27793270, -3701725, -11957726, -3958349, -45888504, 17212618,
-18356690, 32192390, 14751065, 29302414, -12561169, 4027069, 30209190, -9505836, 32866700, 9124658,
-17428440, 5860483, -8250096, 16200617, -19801410, 970663, 41504416, -32154810, 3044058, -41823856,
--18763102, -30079266, -20387136, -5272073, 2263448, -9893457, -31819266, -5771899, -52893060, 59782188,
-21026012, 335544, -8057896, -14475650, 3353296, -26339960, 4893579, -39461624, 925565, 1983738,
-8833137, 25245280, 36420784, 1227287, -61062624, -28090696, 26176216, -13350369, -12199318, -14823543,
--8126615, 30103962, 6258304, -16962974, 12640089, -28330142, 4910758, -5402532, -12584254, -28603946,
--16201690, 18023294, -8630200, -6966974, 9686762, -10672457, -3350075, 17931488, -21079700, -14323179,
--6190122, -4446365, 22535694, 10470593, 6077379, 13298829, 5190468, -2282238, 10362682, -307090,
-7587060, 10835129, 16944182, -6706055, -202400, -1986959, 12472048, 18976776, 6998649, -4677757,
--1449552, -5891085, -13921063, 24271934, -7232188, 12452721, -7285339, 3755412, -7740605, -5648956,
-6139656, 11019275, -23813446, 16870632, 27314382, 10059350, -12475806, -16615618, 7963406, -21450678,
-33951716, 28268938, 43029668, -30693446, -37789808, -9505299, -860067, -19135690, 25312926, 30682710,
--22688702, -96100, -40464496, -11968463, -19153944, -36564668, 11578695, 30144228, 18297634, -23775328,
--9181566, 2764885, 20360830, 3022046, -1426466, 7614977, -2244657, -10299868, -32695976, -22230214,
-8505646, -3078418, -17753248, 19326816, 17277580, 10951093, -33451352, -30587684, 29000156, 17449378,
-21584358, -21837224, -55770688, -10562398, 23620710, 23345832, -5617817, 56500296, -6912213, 56797184,
--85290000, -105902080, -43386148, -63807108, 875636, 24849608, 13223667, 68977176, -7704098, -4530654,
-12991739, -13806172, -54291608, -48511656, -53821844, 43117176, 35483408, -13383118, -3497177, -90292024,
-25307022, -1211181, -40127880, 16687022, 25985090, 39846560, 31456878, 14419816, -2608119, -26865558,
-972810, 1273995, -7335804, -11595338, 32024886, 19575388, 12576738, 32408212, -24830280, 5915781,
--6824703, -15564425, 20513300, -3256659, -35323960, -305480, 11375758, -12796855, 17024714, -6825240,
-4684736, -7913477, 39586176, 30712774, 36688148, -30840550, -6812355, 37755448, 28139552, -26879516,
--16406238, -27073326, -15752866, 22012782, 25238302, -8858907, -2379949, 42107324, 1942936, 3870839,
--5374078, 7490960, 7435662, 6911676, 12130061, -40904196, 35690640, 27307938, 11113228, 33791192,
--19881404, 12508555, -55881284, -26883274, 14597520, 20697984, 9382356, 7291781, 6860137, 14533096,
--6864969, 63592360, 5640903, 39638252, 11272142, -18977850, 48298516, -6484327, 18911278, 1105954,
-17250200, -1728724, -1136019, 10727755, 24185498, 7176891, 17641578, 1347546, -3755949, 38299832,
-4248260, -7952132, 557272, -2905546, -19331110, -5403606, 10657424, 7203734, -43203612, -10433549,
-5341866, 10067403, 44964012, 36821292, -44671956, -24469502, 3578245, -9774809, 49524196, 4932233,
-45670536, -32140314, 22941568, 4731980, 2440078, 21342230, 46940772, 30606474, 6180995, 41668164,
-16247861, -19504520, -42031088, 36837936, -33538862, 22298934, -44137232, 247497, -69940320, 72538240,
--18022756, 2537789, -49000744, 44040596, -17169132, 13955959, -35976792, 42534136, -22251152, -19976966,
--14627585, -26721140, 8227010, -14974403, 12597139, -13886703, 23209466, -26106958, 23255100, -27489402,
-15067282, -32189170, 25649544, -11136313, 28478854, -9993852, 14898168, -12174085, 9595494, -13887240,
-450972, -15177341, 17273284, 7036767, 4858682, -6087043, 1629403, -12139188, 9273908, -12473122,
-21810380, -18148922, -21587580, -9779641, 8683887, -25661356, 19734300, -6396280, 10830834, -7355132,
-6159520, -11854647, 5494337, -6161668, 6586869, -2030446, -69959648, -17481054, -5423470, 7377143,
-6280316, -43545600, -25300578, 39353176, -15261629, 14516453, -17413944, 3847217, 49437220, 79685064,
-5526013, -2837363, 40025872, 17437568, 16579111, 49334140, 1111860, 29862908, 36239860, 34775812,
--13634911, 15024869, 31327492, 43588548, 35692788, 53609780, 30296700, 68462856, 72685344, 52494700,
-57957364, 39460548, -4317516, 19306952, 10282152, -15044734, -14824616, 11349988, 33843268, 7661148,
-1567126, -246961, 16729971, 50302120, 39168492, 84515832, 17067664, -43992812, 17541720, 770410,
-17935784, -22649510, 33627984, -61435212, -79102560, 22014392, 79542256, 34493956, 15892990, -98717672,
-569620, 37351720, 59565292, 79878872, -34011848, 4813048, -137941472, -91093568, 36843840, 51518668,
--76838576, -65705484, -40889700, 75249976, 50280108, -90382216, -116525144, -23755464, 47414828, -55947316,
-26495654, -8759586, -20204600, -30343944, 4111358, 11723650, 19552838, -3762391, -48289928, -41973104,
-5063767, -13276281, 20141786, 2452963, -5114769, -18652506, -12259447, 7282654, -1210107, -40427452,
--20327006, -30702574, -15854872, 5092221, -15647103, -11768210, -36083632, -48142288, -65935264, -66071092,
--55643984, -47536700, -52207476, -52105468, -39735964, -54952496, -58031452, -49638548, -55778204, -36383204,
--9934796, -32364190, -46662136, -31232466, 1142461, -17441326, -9554692, -11639361, 23698556, 25040196,
-464393, 10836739, 12772159, 6851547, 7050189, -721555, 5334887, 3546569, -26832272, 66924716,
-73720968, -83197808, -35548908, 33078228, -24147916, 16941498, -31431108, 28802588, -26725970, 7348689,
--761283, -11534135, 5674726, 2480881, -8715026, -4887136, -21520470, -4489852, 3799972, 3595425,
--21921514, 21182778, -20176146, -5640903, -17603460, 2993055, -16887812, 33927020, -1552631, 9757629,
--9704479, 9730248, -10269267, 10424959, 19203872, 28381680, -8300561, 10233833, 9182103, 25043418,
--15888158, 16487843, -14277545, 29874182, -8553964, -15360414, 8411157, -6183143, -9682467, 4290136,
--3505767, 13379897, -7570954, -15469398, -16954920, 3473018, 2113661, -27666568, 7727183, -3479461,
--3853123, 5896990, -9079561, -3933653, 1909113, -3633542, 2935610, -14471892, 17034914, -50247360,
-25985626, -20885352, 33252174, -22040162, 29650844, 562104, 15607911, 10631655, 12477417, 7191386,
-1176284, 6870337, -2205466, -20586852, -5639829, 2003065, -9874130, -3063386, -5733782, -1281511,
-31675, -7158637, -1869921, 4156455, -1998770, -12339978, 13188234, -1280974, 6449967, -13164075,
-5649493, -7670812, 4615479, -9127879, 10597295, -13894219, 20170240, -2819109, 1624035, -20899310,
-14015015, 244813, 9783936, -19717658, 3899294, -7415261, 1806034, -2887292, 503585, -12394202,
-5332202, -1301375, -10181220, 2428804, 15556372, -17833242, -470299, -5937256, 8320963, -11896523,
-11062762, -9127879, 1496796, -5953362, 7838316, -1698660, 3164854, -2026688, 3651796, -5495948,
-1864553, -1134408, -4429722, 1763621, 558883, 1500554, -1970316, 5234492, -1410360, 1239098,
--4015795, 7402376, -9881109, 3321620, -13566728, 63551556, 38538740, -20952462, -24102820, -2110977,
-78964048, 32992328, 11072426, 21859236, -19147502, -24171002, 6736120, 15329812, 3999152, 1391033,
--8408472, -6551973, 7430294, 7575786, 18383534, 8181913, -9911174, -4369593, -4900558, -9990094,
--111132, 1762547, 4896800, 6233608, 190589, -2652142, 7336878, -21195126, -8055211, 9429064,
-13519483, 16762720, -9436043, -5490042, -10031970, 17145510, 11860552, -3246459, 5447093, -19815368,
--17149268, 15821586, 12304008, 3881040, -30031486, -15439871, 1232119, 5002563, 19763292, 14129906,
--2221572, 5811091, 7019587, -9388262, 8580271, 9309878, -2756832, -5729487, 5529771, -10052371,
-937914, -1720671, -7056632, -10769094, 14936823, 3052111, 3304977, 20577188, 25031070, 8860518,
-20255602, 18962818, -3000035, -5127654, -5709086, -3663070, 7902740, 12934294, -5031018, 3977677,
--11625940, -4230006, -580894, 2756832, -6345814, -7573638, 7818988, 14970645, 6468758, 4148402,
-6264747, -7205345, 578210, 7119982, 1388348, -2244657, 1789391, -739808, -8732205, 17752710,
-5779952, -14215805, -13427678, 5395553, -2667175, 13997835, 7406671, -1797444, 5226439, 1792612,
--2901787, -652835, -4051228, 4097399, 6420439, 991064, -1686312, -5567352, 4757213, -1108638,
--22798224, -62870804, 21777632, 115624280, 90913184, 87067040, 27836220, -80922016, -48547088, -71734008,
--71970232, -65578780, -22892176, 35391604, 45601280, 71744208, 64250028, 38718592, 6505802, 6344741,
--31079994, -49118856, -70338144, -27018566, -19088446, 6362457, -3955665, 35748088, 24126978, 10302553,
-47747152, 26851062, 20444582, -4118337, 17942226, -32363652, -24422258, -20158966, -23587960, -31040802,
--18719078, -12353400, -31609886, -21826486, 8416525, 46592344, 44944684, 51084340, 40099964, 58400280,
-10115722, 14999636, -38766376, -28661390, -24604794, -58137216, -57931056, -51942260, -24558622, -30415348,
-7168838, 22622130, 32510218, 65351148, 64165200, 61452392, 55104968, 48260936, 10320806, -28279138,
--46134392, -82390896, -70807368, -51601348, -70377336, -32615982, -14673219, 3161096, 69107096, 54202488,
-79492328, 78556024, 57380764, 16109885, -15825344, -23417772, -27187142, -24218784, -46749644, -57812408,
--40397924, -27568322, -24387362, 3126199, 16289200, 25919590, 22317724, 46600396, 50925428, 38513508,
-30630096, 5166309, -10724533, -21898428, -35871028, -30802968, -21850110, -34409132, -46649252, -4879083,
-2746632, -7626788, 40273372, 53151832, 34029564, 29905320, 2279017, 8497593, -5473399, -9287867,
--23160074, -27224724, -17851494, -20332912, 2971044, -8076149, 2704756, 469762, 18398566, 9927817,
-9543954, 17205638, 17582522, 109522, -4488241, -12349105, -12289512, -3447248, -2666638, -5901822,
--5779952, 1298154, 1684701, -1341640, 3221226, 3459596, 3337727, 1105417, 11629698, 4390531,
-126165, 2072322, 37581, -3620121, -3052111, -3062312, -1673964, -1042603, 250719, -383863,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
--3353833,
--4174171, -6163278, 2082522, -3011846, -6083821, -3896609, 2767570, -7686381, -4258997, -9400610,
-3266860, 4199405, 5347235, 2915209, -3289945, 7120519, -4875325, 1437203, 149250, -1025960,
--5151814, -2640331, -5666136, 219580, -2408403, 3170760, 2100776, -2705830, -863825, -620086,
--5200669, -219580, -1155883, 2308545, -92342, 4701379, -1673964, 5949067, -2576981, 73014,
-958315, -4350265, 3022046, -1337882, -1668595, 486942, -1175747, 2273112, -9109626, 4215511,
-5487895, 760746, 3119757, 1662689, -4031364, -573378, -4374961, 5931350, -1574642, -3770981,
-3605088, -5532992, 245887, 2059974, -6214281, 675384, -1447941, -2442763, 2155537, 389231,
-586263, -3024194, -1861332, -10088341, -1197759, 2073396, -1568737, 390842, 1290101, 5232344,
-4606353, 168041, 1570884, 541166, -780610, -845572, -1255741, -816044, -338229, -1125818,
--827318, -146029, 1069447, 539555, 754841, -1654636, 98784, -159988, -329639, -216896,
-477815, -331786, 163209, -856309, -481573, -776852, 81068, -736587, 1043140, -14274324,
--8556112, 1568200, -4616016, 865973, -4762582, -8206609, -5439576, 9281424, 5425081, -1457068,
-6311992, 1466195, 1562294, 1750736, -3036542, -846645, 5133560, -4137664, 2339684, 3718368,
--3979287, -6334003, 2910914, -5180268, 590558, 2944737, 7602092, -1724966, -3641596, -3215320,
-1198296, 4111894, -5587753, -60666, 4628901, 1802276, 503585, -318901, -413391, 5976447,
--209917, 5473936, 3625489, -1406602, 3612604, -1278290, -307627, -573915, -9998147, 3454228,
-5682242, -3290482, -1847910, 1367410, 1561221, 1595044, 905164, -557809, -1188632, 325881,
--2499134, 6846178, -3054796, 784905, 3746822, 2964601, -2430952, 2695629, 878321, 1751810,
-3784940, 3308199, -4953708, 5140002, 5732171, -1948841, 119722, -372052, 3752191, -4575751,
--2351495, 992137, 676994, 165356, 271120, -980326, -1509144, 909996, -700080, -399432,
-292058, 1300838, -943282, -235149, 56908, -1796370, 638876, -1067299, -1071594, -865973,
-699006, 92342, -485331, -1074279, 284542, -5602785, 7177427, 4774930, 11129871, -1809255,
-1154809, 3468186, -5476620, -1081258, 2120103, -2199560, -7422777, -394600, 750546, 4994510,
--6004901, -14516989, -11801496, -7199439, 2754685, 6963216, -7014756, 3959423, -3464428, 5388037,
-4108673, 3663607, 6363531, 3608846, -5077188, -4605279, 819802, 3464965, -316754, 327491,
-8917963, -36507, 1507534, 4499515, 4658966, 814433, 77309, 11123428, -834834, -4136054,
--1312649, 2549063, 3175055, -2123325, 5901285, 1196685, 3138547, -4241280, -3845606, -1431835,
--2565169, 1468879, -2049236, 6517613, -7562901, -6669548, 8036421, -829466, -409096, -9402220,
-2857227, -4551055, 5011690, -3903052, -10509248, -462783, 5293547, -4452808, 6862821, -4160750,
-3117610, 6496138, -1914482, 2724083, 6444062, -416612, -4902169, 413391, 3103114, 1486059,
--2419677, 4502200, 209917, 2376191, 802085, 650151, 1609002, 311922, -773094, -45634,
-139586, 687732, -1912334, -923955, -1046361, 1724429, 106300, 1756105, 1727651, -1708323,
-312996, 439160, -1090385, -738198, -460635, 321049, -1003949, 351650, 17353278, 4138201,
-4598836, 2032056, -4012036, 8388608, -3986804, -2322504, 10583336, -758062, 8504572, -860604,
--9800578, 3495030, -3346853, 10814728, 5638219, -710817, -9679783, -6705518, 8878771, 10609643,
--12370043, 6222871, 4913980, 3757560, -839666, 1238561, 996432, -896574, 12184822, -515396,
--2126546, -3329137, -4131222, -5189931, -1757715, -238908, -7074348, -2467996, 1803886, -4866735,
-239444, 321049, 7277822, -2703682, 195421, 3439732, 255014, 7027640, 3121904, 7305203,
-3560528, 2251100, -7718593, 845572, -5727876, -5287105, 1241246, 7448010, -322123, 6401649,
--2700461, -4776004, -1149978, 341450, 1841467, 4406100, -2051921, -4832, -2422362, 2476049,
-1640141, -6233608, 1188632, 1334661, 801548, -1731409, 6527277, -663572, -1312113, 734439,
-3047279, 1382443, -2183991, -666257, -902480, -1546725, 1258425, -1855426, 3064459, -1837709,
--396748, 404264, -1491427, -392453, 1691680, -1998770, -490700, -2154463, 819802, 936840,
-1728188, -2356863, 446677, -950798, 1178969, -790274, -2876554, -894427, 4908611, 3436511,
-3948686, 11185169, 5856188, -4855461, -4336843, -12039867, -777389, -266825, -6420439, 2443837,
-9667971, 1173063, -7606387, 7071664, 6724308, -697395, 2692945, 6811818, 1621350, -6181532,
--945967, 14430016, 7105487, 1497333, -9506373, -3400004, 8691940, 2993055, -1285269, 4895189,
-4381941, 4584341, -24696, 8961986, -68183, -1139240, 2269890, -4438849, -5814312, -284542,
-1000727, 3339337, 1843615, -5435281, 5546951, 9720048, 4999879, -254477, 7226820, -8196408,
-4699768, -4877472, 5162551, -1357210, -5888400, -286152, -7676181, -12582644, -4578972, -4990215,
--593779, -37044, -6574521, 1296006, -2005750, 3843996, 2546916, 4549981, -700080, 1843078,
--6327561, 1120987, 1030255, 8871255, -3394635, -257161, -3047279, 1891933, 7986492, 4114579,
--4595615, -7369090, 2365453, -2932389, -985695, 3874061, -514859, 1320166, 935229, -4374961,
-241592, -3330747, 987306, -3161633, -2116345, -1131724, -99858, -397821, 616328, -2011118,
--176094, -654446, -1593433, -1341104, 529355, -322123, -805843, 256087, 797790, 2487323,
--825171, 1472637, -1016834, -2424509, 1872606, -2655364, 2639258, -200253, -1694365, -249645,
--11778948, -7809861, 16695612, -3662533, -3646964, 968515, -571231, 17875118, -5214627, -9660455,
-249645, -9529996, 2387465, 7582765, 8176544, 2571612, -16586627, 13637595, -10727755, 5698885,
--7329362, -5589900, -4096862, 6805913, 7340636, -10991895, 883690, 4790499, -3395172, 2193118,
-3238405, -3977140, 521839, -9053254, -6066105, -13969918, 8282845, -1959042, 14090714, -6563247,
-3068754, 9395241, -2335389, -2796561, -4148402, 10769630, 7879118, -13232257, 3787088, -7485591,
--2499134, -2909304, -7416872, 4459787, 2379412, 11647414, 8211978, -14636175, -2386391, -6287832,
-8561480, 2973728, 747324, -8540542, 1290638, -899796, 7196755, -1202054, 911070, -9821516,
--213138, 6971806, -6419903, 1078574, -2018635, -1917703, -5186710, 1044751, -673773, 12360916,
-5461051, 5653251, -2253784, -1381369, -2138894, -3367791, -1797981, 2757906, -3774740, -1203665,
--3702799, 2806224, 2363843, -2018098, -1128503, 2609730, -3486977, 1733556, 538482, -938450,
--1103807, 938450, -91268, -315680, -664646, 2283312, -3365644, 450435, 308164, 1710471,
-1851131, 1851668, -1707250, 510027, -1204202, 2473364, 578747, 1813550, 4061429, -4477504,
-297427, -9448391, -1192927, -10904385, 1695975, -2729452, 6250251, -438624, 5300527, -7470559,
--14081050, 2986613, 9452149, 1236951, -1155883, 7382512, 4953708, -11505681, -200253, -4338454,
-14548128, -649077, 1679332, 1142461, 131533, -457951, -5243618, 11540040, -999654, -16364899,
--3091840, 9912785, -6409165, 1650341, -281857, 1321776, -2070711, 1575179, -3033321, 3906273,
--6299644, 5905580, 8267275, -6505802, -1683090, -3853660, -11420318, 4555350, -8116952, 7034083,
--7138773, -12302397, -3389266, 7299834, -2313377, -4400194, 4853313, 6749004, 3833258, 7397008,
-12636331, 10195715, -692027, 1976759, 1692754, -6808060, 1260036, -7118909, -7783018, 4216048,
--5946919, 1911261, -389768, 4444218, 4487167, -5890548, 6788196, -1881733, -2843805, -1272921,
-4759361, -896574, -4480725, -3038153, -6327561, 7166153, -3651259, -958315, 1189169, -312996,
--2710661, -2281165, 431644, 934692, 261993, -1272384, 1604707, 1202591, -1467268, 111669,
-1010928, 635118, -918049, -39192, -1213865, 432181, -1994476, -1800128, 1032940, 534187,
-2326799, 2595771, 159451, 1779190, -42413, -16176457, -13372381, 7764227, 14508936, -77309,
--745177, 2673080, -6817187, -3430605, -16536698, -8936216, -4606353, -230318, -11996381, 17243220,
-3554086, 9562745, -10925323, -13245679, -9793062, -3934190, 2751464, -15025943, -6577743, 6846178,
--2848100, -18260054, -6048925, 2371359, 311922, 11199664, 3913252, -3622805, -8500814, 10649908,
--6104759, -705448, 8209293, 2314451, -8681203, -4598836, -558883, -14795089, 3832185, 11369315,
--4855461, -6391985, 1797444, -7522635, -2622078, 1408212, -4618164, -3700114, 4010426, -5622649,
--11608760, 5737540, -6562710, -8822400, -11897059, -6078453, 1334124, -4866735, 2136209, 14739254,
-8497056, -1858647, 14246943, 14273250, -6063420, 1940788, 4122095, -7474317, -4674535, -15771120,
-1765768, -5082557, -12565464, -172336, 6842957, 11788611, 7431904, 3433826, 1472637, -10723460,
--1186485, -2473364, 2955474, -4075387, -311385, 219580, 4295, 2544768, 658204, -994822,
-2456185, -974958, -3206193, 2689187, -2094333, -3042984, 624918, 1092532, 1180042, 223875,
-3449396, -348429, 2269353, 1218160, 420907, 652298, 153008, -2560338, 748398, -3514894,
-989453, -5608691, -1218697, -250182, -3516505, -4392678, -396748, -4341138, -627602, -923955,
--10186052, 26036092, -971200, 15943992, -7992398, -22892712, 6580964, 1925219, -845035, -10753524,
--991601, -7096360, 18153216, 13214004, 11900281, 8619999, -14131516, -122943, 2006824, 12559021,
--21482890, -2483028, -5215701, -6333466, 3292093, -7135015, 2822331, 4758824, 3623879, 3795141,
-5049808, -1537061, -2062121, -10514080, -2437394, -1639067, 10345502, -40265, -9358734, -2254321,
-11252814, -1343251, 6571837, 8329552, -6008123, -3630321, -13815836, -8104604, 27215598, 7113540,
-12145094, 6454799, 1634235, 981937, -17149268, 10161356, 1673964, 2955474, 8847096, 9544491,
-14981920, -17213156, -7031399, -9569187, -1142998, 2344515, -2207076, -4851166, -2757369, -14440754,
--18041546, -11792906, -16904992, -2238215, -11027865, -19031536, -7968775, 6138582, 10466298, -3991098,
--16185584, -610422, -2393371, 3816079, -4407174, 1014149, 9398462, 399432, -627065, -609349,
-1247151, 1614371, -2701535, -2509872, -6471442, -7345468, 3955665, -2034741, 3545496, 3131031,
--1134945, 2125472, 2932926, 5237176, 3786551, -2309619, 1210107, 6681896, 1344325, -6798933,
--5553393, -3080565, -1364726, 492311, -2334852, 3864397, 4330401, -1045825, 6509023, 836982,
--1756642, -1399623, 1546188, 35039952, 7927436, -5056250, -7277285, 1125818, -11251741, -21974664,
-16168404, 70330, 10402948, -7872675, 7523172, 17985712, -1788317, 2004139, -4539781, 15652471,
-13171591, 5109938, -21226266, 1529008, 3109556, 13103945, 19068044, -5641977, -3919695, -2533494,
-5101348, 6802155, 5648956, -9662603, 4392678, -11137387, 8491150, 11345693, -5450314, -11267310,
-7081864, -12259984, -11223286, -489626, 3228205, 15929497, 1899986, -2208150, 13562433, -2544768,
-12177843, 22530324, 11275900, 230318, -14353781, -1391033, -8282845, -6716792, 14377403, 5599564,
--14559939, -202400, -11140608, -2849174, 19067508, 8752070, 2746632, 8143258, 11467026, 5927592,
--15445776, 7900056, 12810814, 4365298, -10570988, 4298189, 1176821, 2159295, -8284455, 12660490,
--3545496, -3100967, 15229417, 16145319, 2338073, 4558571, 17554606, 984084, 8639864, -6227166,
--242129, 10087804, 5820755, -4547297, 5179194, 9097278, -2535641, 16106, 11611444, 2351495,
-4909685, -3513820, -5891622, -1831267, 3198677, 1633698, 2626373, 2695092, -1968169, -1888175,
--1576253, 834834, 3437585, 4161823, -2899103, -920734, 7210713, 999117, 9687836, -1821603,
-2593087, -1392106, 1186485, 4322348, 2618856, 286689, -130460, -4198868, -2961380, -2158758,
--4479114, 5595269, 5106716, -8550206, -396211, -10910291, -25550224, 8809515, -10152766, 2801929,
-949188, 17910014, -12312061, -10954851, -4544076, -5024575, -6555731, 13228499, -11689827, -16595754,
-5010080, -30994094, 964757, -5850283, -13043816, 16648904, -1006633, -996969, 7074348, -6613713,
-5334887, -1682554, -18432926, -20200842, -132607, 4262218, 11909407, 5718212, -1274532, -2126546,
--11558831, -5505611, 11760157, -18261664, 25288230, 14982457, 3451543, 18654654, -12358232, -5314485,
--11304891, -11630235, -4948876, 8534637, 23895588, 237834, -12205760, -2042257, 1255204, -1298691,
--1176821, -7528541, 6518150, 5934034, 16149077, -254477, 18248242, 9395778, 5091147, -406948,
-3977677, -27052388, 14401025, -3394635, -15749645, 11375221, 98247, 14959371, 6725919, -25050396,
-19604916, 15284178, -13023951, 21228950, 8262980, 15882789, 6388764, -2116345, -755914, -577673,
--2833605, -5441187, -1567126, 2435247, -5403606, -8316668, 210453, -5384279, -9754944, -5793374,
--7270306, 4816269, -4413079, 5901285, 1687922, 6025302, 2934000, -510027, -3006477, 1161252,
-712965, -293132, 976031, -1581622, -3949223, 2150705, -216896, 2595771, 2774549, 297427,
-2372970, 1229434, 3975529, 3482145, -5788542, -3355443, -9680319, -7333120, -47755740, -3896072,
-28542742, -5433134, 992137, 24598352, -5611912, 79994, 3178276, 6407018, -7311645, 6391985,
--2416993, -8492224, 8145943, 9213779, -27844810, 3093987, -24763708, -890132, -12756590, -14290430,
--2936147, -4446365, -13518946, 6633577, 2413235, 8423505, 11937862, -17206712, 21531744, 1260573,
--19845434, 1427003, -13649943, -7192997, -14692546, -13741211, -5673115, 13952738, -12042015, 6532646,
-14511621, -8820252, -15130633, -14334453, -20517058, -22536230, -12932147, -6576132, 1915019, -3598109,
-6327024, 4002910, -13050258, -1193464, 15064061, 8322036, -21807160, 8408472, -1487669, -6351720,
--20189568, 13528073, -7123740, 18757196, 24199994, 401579, 23028004, -12795781, 13437342, -10120554,
-14436996, 17907330, 1766842, -24103356, -541703, -32810866, 10748693, 6825777, 13138842, 5909338,
--12566001, -11331734, -2684, -7676717, 7578470, -8286066, -61203, -734439, -7792682, -6507413,
-5725729, -3374771, -8837969, -1098975, 3054796, 6520297, 3860639, 14418742, -1280437, 997506,
--4118337, 10042170, -1205275, -2466922, 9273371, -736050, 1608465, 1906429, 12421582, -2194728,
--4678293, 1020592, 8669928, 7694434, -7713762, -1017907, 5829881, -9498857, 5462662, -1735704,
-6922951, 150861, -7575786, -22575958, 18204218, -43256764, -2794950, -3952981, -3853660, 4215511,
--25177636, 1924682, -5150203, -1960116, 11150272, 4648765, 13008919, -10074920, 9131637, -4729833,
--22411140, -8778376, -16519518, -9968619, 10473815, -19213000, 2278480, -7031399, -14918032, -2480881,
-14072460, -19111530, -18772228, 7705708, 10855530, -498753, -9025337, 10496900, 10695005, 13541495,
-11295227, 4907000, 15560130, 18875844, -10362145, 2917357, -9175124, 23646480, -2198487, -16196859,
-19347218, 8707509, 4423280, -9242770, -12694313, 2978560, 7171522, 7598334, -973347, -10178536,
-7476465, -11869142, 20938, -11716134, 36048196, 5674726, -10790032, 29931090, -3995930, 9190693,
--8086887, 15051713, 21961242, -13817984, 20957830, 22655952, 29171418, 22711788, 1750199, 16870632,
--13575318, -2583960, 2789581, -7299834, 12651900, 598074, -1236414, -1294933, -4200478, 6356015,
-2798171, 17894982, -6287296, 6605660, -4364224, 100932, 2938295, 5260798, -7985955, 2760053,
-7041599, -3281355, -8925479, -1676111, -14049912, 4662724, 3755949, 3641059, -4065724, 2202245,
-6636262, 3970697, -2226404, 6789270, 2563022, -4520990, -2793876, -1495722, 10657961, 14487462,
-7207492, 3288871, 2067490, 4902705, 8088497, -5869610, -2901787, 3824132, -1495186, 705985,
-3396782, 44707924, 11780558, -7710540, -6438156, 10326175, 3099356, 4356171, -944893, -17978734,
-15176804, -40944460, 4631049, 8897025, -1645509, -7548942, -15502684, -7277285, 2043331, 12037183,
-18706194, -11051488, -23617488, -19315004, -2560874, 623844, -13852343, 28754270, -13282723, -8898098,
-12077985, -4140885, 2312303, -2674154, 24917790, 4042638, -24645060, 9741523, 3313567, 17082696,
--5963562, 1769527, -10095858, 8440148, 3947075, 21558052, -5110474, 9678172, 10434623, -13178570,
--14264123, 934692, 13307956, -25577604, -29979408, -8964670, -12218108, -1722282, -4211753, 2903935,
-6995428, -6206228, 1192390, -34900904, -29406568, 23416698, 25132538, -30243550, -23015120, -29111826,
--15033996, -12110734, 15190762, -15937550, -27828166, 724239, 1355062, -17214228, -3500398, 24270860,
--3532611, 1257352, 7976291, -346819, 1530619, -1171452, -8494372, -10799158, -447213, -3134253,
-7137699, -1225139, -553514, -7844221, 4002373, -12082280, -170188, 3568581, 4086125, 5669894,
-6631967, 1118302, 3797288, -2761127, 712428, -6196564, 2309619, 521839, -6807523, 6973953,
-7141994, -11181947, 758062, 8003672, 6753299, 12420509, -2534031, -14635638, 4096862, 4660040,
--7130720, 4525285, -7952132, -3855270, -1209570, -2621541, -6766184, 2374043, -24939264, -3034931,
--6041409, 7509751, -11818139, -3206193, -38778184, 34339336, 22052510, -3717294, 47071232, -4613869,
--25831008, -2369748, 10558103, -15950435, -21071110, -4415764, -14388140, -665720, 3990025, -21625160,
-31738198, 1069984, 3399467, -19950124, -5771899, 2163053, -5724655, 5103495, 7211787, 26112328,
-4654671, -1323924, 21071110, 17413944, -6190659, 10274099, -13348221, 3767760, 11774653, 11481521,
-29485488, -29169808, 17906256, 54130548, 365609, 8893804, 18488760, 2124398, 3651796, 8751533,
-6707665, -18080738, -21590800, -7831873, 17301738, 5174362, -22437982, -12130598, -1019518, -10756209,
-19880330, 1833414, 15343234, -34166464, -21211232, 9967545, 23393076, 14359149, 9396315, 32494648,
-18931678, -13644574, 22332220, -16863652, -3486977, -2423972, 12528420, -2651069, -14024679, 12131135,
-5219996, 1160178, -16080358, 11094974, -311922, 215285, -7219303, 9350144, -7703561, -6159520,
--5927592, 4456029, -6185290, -11735461, 3853660, 823023, -169114, -6388227, -1332514, -7999914,
--6942278, -6398965, -4132296, -2470680, -3106872, -2436857, 1027571, 226560, -15260556, 10179072,
-3900367, -4792647, -11326366, -15976205, -506269, -8704288, -5985037, 5767068, -4336307, 9893457,
-4807679, -3492882, 1596654, 9252433, -4294431, -1545115, -4582193, 7795903, 1704028, 3235721,
--8036958, 15736760, -44826572, 674310, -28991, -1732482, -5452461, 20777442, 1932198, -12411919,
--22352084, 22603876, -20075214, 236760, 14943265, 11532524, -15738371, -4573067, -25497610, -407485,
-7593502, 8684424, 10638634, 2445447, -16537772, -21184390, 17391396, 8572218, 8763344, 3067681,
-8908836, 2310693, 12852690, -22829362, -37933152, 10271414, -5566278, -8424041, 21458730, -4034585,
--11154567, 18497888, 17919140, 14420890, -1181116, -9903121, -16227997, -4554276, -21523154, 50678468,
--4179540, 18043158, 4108673, -17259326, 14069776, -6804839, -16072841, 15602006, 12806519, -28385438,
-19720880, -3326452, 27292370, -27788976, -20562692, 27342836, -980326, -22759568, 23047332, -8749922,
-39257612, -16954920, -13289166, -23967528, 15143518, 2415919, -19064286, 7301445, -24823838, -18595598,
-1791538, 15826954, -14176613, -9137006, -28219546, -26084948, 30324080, -3860639, 13300977, 20789252,
-28780038, -246424, -2743947, -2609193, 7715909, 11103564, 2302103, 4879620, 17785460, 7326141,
-9874130, 5362267, 4583267, -3857954, -1472100, 10436234, 8427263, 13801341, -6562710, 8951249,
-10060961, -15942382, 4128537, 3475702, -8285529, -4758287, 148713, 3468723, -6699075, 10738492,
-790274, -3032784, -3016678, 9035537, 534187, 2499671, 1041530, 2194728, 2328409, -9161165,
--4146254, 6160057, -5499706, -12939126, 33475512, -7656316, 22681722, -35447440, -6193343, -844498,
--42237244, -9315247, 6155762, 20748988, -10366440, -9931038, 959925, -3275986, 29715268, -2837363,
--14875619, 31460636, -3857954, -1628330, 5987722, -12571906, 27250494, 1801739, -5494337, 13037910,
-11222750, -14830522, -5025112, -6870874, 21244518, -42309724, -654446, -8184060, -14867029, 7278359,
--15113990, 24680492, -6382322, -30465814, -3080565, 46389940, -28023588, 20356534, -31249646, -8970576,
-31307628, 22864796, -16729971, 7980586, -20422570, -26917096, 5859409, -11795054, 11882564, 3476239,
--1764158, 4673998, -39398808, -15369004, -20019380, -28798830, 13557064, -10870562, -7907035, -15916612,
--27941446, -23505820, 18647138, -3580392, 57854820, 10240276, 5481452, 20735028, 36448168, 4882841,
--26022134, 31981400, 24259586, -20217484, 5555540, -5010616, -20114406, -15829639, -13533979, -1412507,
--12336757, 4868883, 8675834, 3133716, -9566503, 17123498, 2827162, 8005819, -2132451, -2781528,
-8223252, 5101885, -7929047, -7118372, -6823630, 7975218, 3908957, 9602473, 10171556, 590558,
--5137318, 7777112, -4102231, 16448114, 7908109, -19271518, -3630321, -14150843, 1964411, -4478577,
--6722161, 20562156, -857920, -6088653, 5440113, 6622303, -7166153, -1251983, -9943386, 4778688,
-7607461, -1163936, -2967286, 9713605, 22195854, -13040594, -17223892, 19311246, -30534534, -3309809,
--6471979, 2032593, 21121038, -13726715, 23465016, 10398116, 5162551, 7325067, -38888780, 26517128,
-4685273, -26946624, 10427107, -28598040, 4704063, 38954816, -5018670, -22666154, -24600498, 10656888,
-17369384, 14444512, 7356742, -25285546, -17696876, -7664906, -4949950, 33309082, -21138218, -12317966,
-49032956, -27118960, -2306398, 19755238, -99858, 20797306, -3191698, -16343961, -11300059, -29896730,
-15204721, 21664888, -32328756, 48302276, 15827491, -36018668, -33239826, -31299038, -37956236, -30332132,
-1408749, 15321222, 2803540, -25239912, -9797357, 17219060, -613643, -15733539, 17401596, -34057480,
-2032056, -7677254, -31831076, -29361470, 4978404, -11559368, 22222160, -40800040, -5657546, -14323716,
--30165166, 2250026, 48206712, 12592844, -21529598, 10582263, -26474178, 10877005, -10832981, 1115618,
-1315334, 13869523, -1596117, 4859756, 17099876, 355409, -9669045, -4221953, 13688061, 9946071,
-6240588, 3543348, -27249956, -2600603, 1937030, 15354508, 7485055, -13910325, -376347, 1759863,
-23593866, 1467805, 7506529, -7187628, -4772246, 3632469, 7634841, -841814, -7094749, -13176960,
-1858110, -4919348, -9291088, 4649839, -6506876, -6461242, 9091372, -7264937, -10698227, -14583561,
--13064217, -2308008, 3747896, 136902, -11365020, 23485954, -58794344, -54376972, -47129748, -30462592,
-12326556, -12874164, 60627220, 16004659, -6460705, -13909252, -7647190, 17150878, -39416524, 46153180,
-61091076, 24266028, -3668439, 48269528, -15299210, 29185376, 55529632, -10148471, 3090766, 10380399,
-73896520, -18750216, -4626754, 43879532, 16692927, 14094472, -12064563, -45038636, 3150896, -35699768,
-17073568, -44231720, -51726440, -638340, -2913062, -36166844, -1861868, -17599702, -36998460, -29633126,
--48290464, -2321430, 49409304, -15764141, -9392020, -45519136, -24320252, -16776679, -15548855, 15380278,
--11084774, 82144472, -19377282, -1157494, -29926258, 61991412, 51029044, -36051956, 41518376, -14514842,
--60149408, -10787884, -5698348, 12658879, -13906567, -13694503, -7468412, -24445880, 7179038, 30210264,
--35611720, -5096516, 10466835, 6251862, -41362684, 26986890, 19204946, 62299036, -26380762, 17095580,
-26506390, -1557463, 7477538, -797790, 9366250, -6897718, 20527796, 8585103, 16726213, 13999446,
-1637456, 14422500, 5000416, -5335423, 15697032, -853625, 3133716, 1716913, 11188927, 7876433,
--10514617, -8660802, -13493714, 21721798, -13923747, 3321084, 14013405, 5703717, 24837260, 20786032,
-36672580, 24671902, 21223580, 1553168, 14303852, -18670760, 18236968, 13101261, -3263638, -17913234,
--33101850, -13095892, 10963441, -18771692, -6029061, -13547401, -32282584, -28696288, -12540231, -21267068,
--11651173, -18241800, -22384832, -24683714, -6502044, -6825777, -9855339, -17978734, -18128520, 24444270,
-104953432, 11767674, -65037616, -16661252, -22679574, 4643934, 33114198, 58265528, 17264158, -49568216,
--425739, 33724084, 7929584, 421444, -991601, 8582418, -4156992, -6273874, 41044320, 25095494,
-23182086, -34687228, -21759914, 23175106, 9645423, 13594108, -11350525, 4088809, 45713484, 851477,
-38860864, 19906100, 21485038, 37201932, 6041409, -20019380, 5225365, -22887344, 6340983, 15684684,
-4669703, 61005180, -19757924, -39534100, -37337760, 47114180, 22441204, 25057912, 17859010, -27133992,
--33286534, -20758650, -492311, 10232223, -6746857, 16629576, 31976568, -2180770, 23379118, 20604032,
--31012348, -6279779, 9720048, -14847165, -12721693, -15572478, -51592756, -8804683, 23312008, 2042257,
-46339476, 30493194, -21446920, 16227460, 944893, -15087683, -12125766, -25182466, -55802364, -30015916,
-3002719, 1165547, -11812234, -3214246, -5180805, 18264348, 19568944, 9977209, -2733210, 1599339,
-15002321, -6864432, 9672266, -25213068, -11409581, -3072512, 14328548, -3242700, 6062883, 9237938,
-9476308, 1493575, 25068650, -19237696, -17025788, -17425220, 13370233, -11149198, -17823040, -17786534,
-13514651, -5600101, -12831752, -6542846, 10294500, 2949569, 14779519, -23283554, -15073725, -2231773,
--990527, 5294621, 11579769, -4631586, -8906688, 16627429, -7861938, -9318468, -8329552, 16182363,
--3675418, -7420630, 4983236, -156229, -8071318, 1010928, -10945724, -6163815, -4802847, 316217,
--3374771, 3669513, -2793339, 2523830, -1095217, 3383897, -6021544, 2586644, -2631741, 3051038,
--4184909, 3944391, -6660421, -5881421, -25411174, 2840584, 82349016, 21170968, 34595960, -17229262,
--75185016, -38147900, -55374476, -18682034, 37109056, 85262080, 37982008, 9449465, -40638444, -38254200,
-26800596, 42398844, 20957830, 51498804, -2276870, -33743948, -49428096, -24045374, -7713762, 38254736,
-4591320, 22102976, 19614042, 3311957, 51043540, 35850092, -4056060, -4917738, -47267188, -11503533,
--1119376, 957241, 26897232, 48240000, 29415694, 23155242, 45187352, 26154740, -47141024, -37813964,
--11926050, -29640106, 31307090, 21340618, 46377592, 36216776, 41010496, 12163884, 7165079, -33779380,
--35443680, -33171106, 11596949, 16896402, -191663, -4501663, 73222216, 18569828, -5143224, -6923488,
-50109384, -53500796, 11167452, -101871792, -22874458, 25500294, -35729832, 33272038, 18735722, 528281,
-73136312, 34744676, -41660108, -82677048, -39875012, -37442988, -20441360, -13904957, -10781442, 36168456,
-22868016, 48785996, 5771899, -35888748, -24831354, -37659884, -35161824, -34843996, 15308337, 3282429,
-15139223, 20804284, -9903121, 19241990, 10084046, -13412646, -1667521, -14860587, -4883915, -32129040,
--34109020, -12729209, -14870251, 587337, -31959926, 16979080, -2374580, 5905580, 8857296, -21290690,
--44185012, -39924944, -2216740, 8752606, 9065602, 26242250, 6464463, -13187697, -24899000, 8244727,
-5826660, -118897576, -72671920, -39620536, 35030292, 10004589, 162220912, 173107584, 105195024, 191960336,
-156860800, 166039136, 114993456, 140487840, 113949240, 2132988, -54354420, -77442016, -74491912, -155588416,
--186796720, -195092976, -136268032, -107092328, -42184096, 7495255, -55185496, 33758980, -69548408, -25094958,
--4786204, -21454436, 16460462, -63753420, 87706456, 15042049, 79955112, 51446192, 29886530, 20960514,
-44235480, 28907814, 45368276, 104502456, 99227704, 79223360, 96973384, 122803312, 111686328, 105432320,
-193216080, 67902360, 135947520, 177297328, 121739240, 161067184, 85433344, 114815752, 89635432, 107793480,
-116473608, 43298104, 75413184, 57360900, 70583496, 68472520, 18655728, -13179644, -74035576, -27205934,
--98775656, -86102816, -146102976, -165154384, -166577088, -351179616, -297622976, -319242240, -317061472, -369621120,
--374219968, -230485664, -268580960, -199622032, -236978576, -179799680, -170652480, -148185504, -149100320, -85328112,
--37919728, -54152560, -55202676, -44676788, 8507256, 71534288, 37153616, 148728272, 127667904, 187929520,
-192691568, 178250800, 222058944, 206208896, 238320224, 186738736, 228009072, 242057920, 270083648, 236674704,
-141070352, 141555680, 140898016, 143583440, 132002600, 93261992, 86850144, 36521716, 25468620, -2702071,
-4138738, 18002356, -48973900, -71785544, -78185048, -47844324, -42722576, -80002896, -93439160, -108674480,
--79120280, -100603704, -93316752, -78420200, -84495432, -85924040, -86137176, -22252226, -20294794, -10461467,
--19361176, 11321534, -2672007, -1993402, -18178986, -6362994, 6412386, 11666205, 4030290, 16151225,
-11121818, 19476602, 642098, 3317325, -2473364, 8277476, -2481954, 4155918, -3249143, 3853123,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
-5507222,
-95026, -2029909, -478889, -4906464, -3393561, 2198487, 179852, -3085397, 3838627, 2594697,
--850940, 245350, -538482, 3112778, -4320200, 1626719, 3208878, 2856690, -6210523, -4330401,
--3093987, 4172024, 991064, 1369558, -1742146, 4449049, 1650341, -1090922, 100395, -1254131,
-853625, 1672890, -1003412, -1266479, -3747359, 3979287, 6593312, 791348, 4181151, -769873,
-827318, 1516660, 1807644, -5006858, 334471, -5231270, -1221918, -735513, 1629403, -2636036,
--106837, 1153199, 506806, -3049427, 99321, 351114, 2478733, -3243237, -4096325, -545461,
-5507222, 8872866, -4295, 1454920, 593779, -1899986, -5353140, -1356673, 3695283, -1701881,
-3680787, 1434519, 3748433, -206158, 1443646, 1333587, -3206193, -4307316, -476205, 1623498,
-2449205, 1195612, 1082332, 736050, 808528, -1480153, -2374580, -1606855, -1303523, -620086,
-20938, -891206, -144955, 781684, 1246614, 1115618, -201863, 71941, 729071, -25233,
--956167, 2522220, -5564130, -1262720, -5277441, 3051038, 341450, -2432562, 11248519, -4396973,
--8061654, 613643, 3732327, -681826, -6067178, -1729261, -2637647, -994822, -2878165, -948114,
-4170950, -294742, -2724083, 4784594, 701690, 4647692, -1239098, -1145146, 1786706, 117575,
-2081449, -875100, 4386236, 7167227, -1978369, -4825933, -3535295, 2953864, -11274, -11047193,
--1051730, -4405026, -1641214, 5401995, -3776887, -2872260, 3725884, -2442226, -535797, 4953708,
-1707786, -3914326, 1749125, -2820720, -6525666, 2081449, 2556579, -4956929, -2869038, -1435593,
--2084670, -49392, 2120640, 3379066, 5119064, 5724118, -1370095, 583579, -2263448, 2467459,
-1570347, -1275068, 2394981, 3676492, -3517041, -1794760, 590558, 68719, 1414118, 4224101,
--536334, -1133871, 3828427, 560493, -2660195, -1665374, -204548, -1633161, 1169842, -679142,
--1472100, 599685, -1669669, -1315334, 825171, -1677185, -1136556, 46708, 1108638, -2075006,
-236223, -505732, -725313, -1001264, -96100, -1619203, -462783, -1550483, -9055939, -4599373,
-2782065, 4012036, 1562831, 4352413, -3724274, 4555350, 5587753, -1570347, 6183679, -843961,
-4554276, -2165737, 137439, -1942399, 5824513, 2274722, -239444, 5206574, -2775623, -2201708,
-3806952, -9043591, -1578401, 495532, -1928977, -8059506, -4927938, 3345243, -3162707, -2100776,
-111132, 6307697, -1519882, -4413079, -353261, 1624035, 3561065, -541166, -5724118, -3685619,
--1057636, -2929168, 944893, -4977330, 2465848, -4683125, -6890738, 221191, 2407866, 2800856,
--2209224, -1581085, -4525285, 5845988, 3373160, 816581, 52613, -162135, -1991791, -1063004,
-1969779, 2496987, 8812736, -992674, 2212982, 580357, -272194, -4317516, -3289408, 5979668,
--2578591, 588947, 1476395, 866510, -947040, 4519916, 231391, 165893, -4912369, 4740034,
-2649995, -1831267, -1099512, -530965, -1433445, 655519, 3408594, -46708, 1348083, 1035087,
--489626, 792958, 1756105, -184147, -8053, 543313, 812286, 707596, 998580, 1826972,
-673236, -1341104, 1394254, 651224, -998043, -773631, -171262, 208843, 2193118, 2699387,
-2410551, 5767068, -3825742, -5709086, -4613332, 2891050, 6372658, -1191317, 4880157, -4350802,
--5291937, 4364761, -2206540, 445066, 1624035, 5471789, 2026688, 8692477, -3797288, -4645007,
-2024540, -2576444, -2430952, 4924180, -7699803, -4750771, 765041, -1493575, 3498788, -2617783,
-959388, 6180458, -5765457, 4296041, -3481071, 2781528, -3261491, -930934, -530428, 6405944,
-1202054, 223875, -4696547, 227096, -5587216, 2091112, 1375463, -3734474, -92342, -1547799,
-9669582, 1299228, 617402, -8396124, -4923107, -7081328, 5527623, -3608846, -399432, 2913062,
-12337830, 8709657, -3483219, -7592429, -3161633, -6591701, 6970732, -1337882, -1925756, -3050501,
--2023467, -571768, -3183108, -2110440, -526134, -2583423, 1861868, -1807108, 2609730, -9595494,
-662499, -791348, -3023120, -1421634, -3209951, -644782, -5024575, 412317, -2073932, -168041,
-3074123, -966905, -1060320, -2150705, -2374043, -670552, 705985, -133681, -181999, -855772,
--344671, -1012539, -136902, 246961, 624918, -716723, -817654, -1140851, -1007707, -872952,
--1531156, -4867272, 3497714, -5036386, -8943733, 9124121, 4140885, -9587978, 9588514, -1545115,
--548682, -13470091, 8027294, 5336497, -10875931, 3232500, -1783485, 4118337, 967978, 4747013,
-3063922, 1206349, -5049271, 466004, 1881196, -6702297, -2836289, -7907572, -1336809, -4918275,
--2610266, 891206, -6167573, -2285996, -9097278, 3441880, 927713, 780610, 824097, -3927748,
--7915625, -2484639, 2816425, -1291711, -663036, 8308078, -12305618, 5177046, 6324340, -918049,
-421981, -2403571, -949188, -4001299, -6065568, -4158602, -4773320, -3214783, 3087545, 1688459,
-2752000, 4156992, -964757, -2222109, 5964636, 11337103, 8027831, -174483, -9626632, 2649458,
--1453310, 1416266, 10255845, -70330, 10331007, 9190693, -1233729, -3087008, -2443837, 716186,
-916439, 3423089, 10475425, 2781528, 443992, -1079111, -6448357, 764504, 2026688, -2199023,
--290447, 324807, -55835, 1197759, 938450, 732292, -784368, 1258425, 1188632, 1124208,
-1316408, -3514894, -533113, -2527052, 1031866, -1975685, 858457, -568546, -875636, -2114198,
-428423, 519691, -3043521, -985695, 748935, 14532022, 3717294, -2581275, -703301, 4471061,
--1526324, 14077292, -1494112, -2161979, 17838072, 112206, 9019968, -3352759, 248571, -777389,
-1468879, -2281165, 1239098, -278636, -509491, -9678172, -925565, -2305861, -1731946, -4032974,
-6195491, 2898029, 3686693, -5428839, -601832, -8579734, -3434900, 1612223, -698469, -5215701,
--1607392, 2867965, 6473053, 3918084, -2052994, -7976828, -280247, 2271501, -1340567, 4226785,
-2807835, 5730023, 7897908, -2568391, -52613, -8518531, -10356777, 9774272, 5246840, -353261,
--435939, -323733, -3778498, -4141422, -82678, 7824357, 4520453, 1420560, 9545565, -7318088,
-2144263, -6002217, -4633196, 4107599, 4217658, 3475166, 14378477, -518617, -6500433, 1129576,
--6372658, 2886218, 1675037, 5252745, -2838974, 83752, 645319, -4830228, -865973, 3380676,
--508417, 876710, -2101850, -1069447, -318901, 2341831, -1240172, 1479616, -2229625, 210453,
--2882460, 922881, -1533303, -985158, 455803, 1455994, -1786170, 1929514, 1227824, 2354716,
-139050, 1398012, -606664, 855772, 421981, 865973, -900333, -13422, -843424, -114354,
-417686, 1221918, -7977902, -10713259, 4159676, -10012643, 3221, 11145440, -11661910, 4268124,
-5235565, -3129421, -14394046, 189515, 8420820, -9314173, 5792837, -652835, -4127464, -12077985,
--338766, -8714489, 1544578, -4425427, -6788733, -8477729, 3486440, -1203665, -494458, 8056285,
--4874251, 6796249, -5160403, -2067490, 10417980, 3568044, -5554467, 4274566, 2517925, -4821101,
-2544768, 2618320, -1844689, -2059974, 420907, -2324651, -2741800, 1704028, 1911797, 14172855,
--13340705, 2156611, 857383, -4785131, 9601399, 5459441, -3287261, -10349261, 927176, -1050120,
--3117073, -6532646, -7643431, 9331890, 6059662, 772020, -926102, 4970351, 2530810, -2262374,
-3985193, 2856153, -2581812, 9928891, -3680250, 6073084, -4059281, 3020436, 3130494, 2236604,
--293132, -5528160, 5288716, -4304631, -4470524, -3075734, 1546725, -11811, 663572, -5243618,
-2856690, 2201171, -3309809, 339839, -121333, -1660005, 321586, -1100585, 2544231, -733366,
-397821, 2119030, -952946, -1613297, 1418950, -1838783, 1494649, -331786, -9664, -2116882,
--935766, -74088, -2298881, 2276870, 1302986, 512712, 1524713, -491774, 1042603, 4728222,
--10803990, 7928510, -4522064, -1981591, -6202470, -4449049, 3775276, -3547106, 3087545, 12111271,
-4141959, 6659884, -15439334, -10204305, -5503464, -3681861, 1668058, -60130, 2659659, -12945031,
-6931541, 2900177, 1728724, 12370580, 205085, -6996502, 11599633, 4575214, -5181878, 2379949,
--6659347, 6107444, 2870649, 8136279, -6971806, -4938676, 2054605, -7036230, 8879845, -8139500,
--147103, 7902740, 7268159, -15031312, -430034, 741419, 1744831, 2492692, 16423955, 3798362,
-1022739, -5023501, -4158065, -8877161, -4814122, 12148852, 289910, -14494441, 215285, 3360275,
--8238284, -9059160, 1072668, -5874979, 2406792, 13313325, 6527814, 5604396, -5465346, -14221710,
-1142461, -2432562, 6524056, -1277216, -11917997, -1447404, 3103651, 3283503, 3212099, -1004486,
-10082436, 1905355, -6421513, 8323110, -619549, 4981089, -171262, -1242319, -4335770, 6150393,
-4225711, 2405182, -3148748, -1228361, -831613, -2076617, 1163399, -13422, -2677375, 1330366,
-805306, -1503239, -1993939, -829466, -1508070, -220117, 1865626, -1913408, 959388, 2352032,
-2812667, -725313, 1197222, -1500017, -19041738, -5662915, 5376226, 14719927, 2092186, 7642895,
-26109644, 4358318, 4450660, -4019553, -12525198, 7116224, -6076842, 6558952, -1580011, 17297444,
-12586402, -6643778, -14149233, -11225434, 8528731, -7469485, 10456098, 4620848, 3403762, -3591667,
--1383516, 12455942, -2458332, 10995653, 10977936, 5698885, 7699266, -8516920, 8338142, 4520990,
--4476967, 12174622, -5359583, 11063299, 826244, 1272384, -16203301, 9788230, 889058, -3020436,
-7999377, -11265699, -4483946, 6791954, 5526549, -10377178, 1672890, -6628209, -3828963, 10331544,
-1381369, 3137474, -1092532, -11839614, 7963406, 7591892, 514859, 6008659, 2680597, -5228049,
--5524939, -417149, 6327024, -10717017, -390305, 721018, 464393, -69793, 4704063, 6213207,
-12693239, 7157563, 419833, -17805860, -5866389, -6645388, -598074, 1354525, -5011690, -10539850,
--3331284, -4729296, 2789581, 446140, -3013457, 1167694, -3089692, 4954782, -1767379, -2067490,
--2914135, 93416, 1421634, -6320045, 3991098, -4050691, 1660005, -1011465, -2345589, 152471,
--3915400, 1307818, -3531537, -2533494, -502511, -1998770, -1877975, 2226941, 3762928, 2296734,
-3623342, 4755603, -973347, 745177, 23540716, 6939594, 3105261, -8698919, -21263846, 15403900,
-4763656, -14039711, 4180077, -1479079, 3591667, 3031710, -10200010, -21719112, -17062294, 5800890,
-13326210, -2596845, 13993540, -6443525, 10916196, 13395466, 18065706, -3934727, 13348758, -11806865,
-4514548, -6415071, 1601486, 7261179, -316754, -3796214, 3248606, 9105868, -6453189, -11966853,
--12175159, 25556666, 44023, -1206886, -11504607, 11888469, 3844533, -23458574, -13625784, 5346698,
--3310883, -4095788, 9188009, 3181497, 22767622, 12645457, -806917, -13156559, -12983686, -7296613,
--5336497, -14934138, 13879187, -10188736, 10984379, 9516037, -9499394, -12173548, -11838004, -17206712,
-4214974, -207769, -6208375, -7740605, -12677133, -4460324, -12485470, 2713883, 1519345, -4167729,
-1710471, 10324565, -26134340, -10068477, -21325050, 10858751, 7514046, -9071508, -3078418, 4472135,
--4014184, -43487, 5068062, -3869229, -8530342, -862752, -2450279, -2603287, -95563, -1020592,
--3619047, 233002, 767725, 4652524, -6286759, 1762010, 3470871, -297963, -2595234, -3942243,
--1163399, -522375, 908386, -1297080, -331786, -2351495, 1216550, -884226, -4008815, 7256884,
-754304, 2261837, -12658879, -24401856, -5420249, -6332393, 1352915, -5662915, 1061394, 2580202,
--2621004, 10487236, -13511430, -4091493, -12822625, -620086, -6380711, 14863808, 16616155, 13282723,
--18524194, 13149042, -6686727, 9989020, -3827353, 7377680, -6146098, -7912404, 2858838, -10223633,
-6586869, 7937100, -979789, 4769025, -9372156, -1175747, 15876347, -12618077, 606664, -3742527,
--5173825, -10173167, -566399, 15683610, 20667382, -13037910, 6249178, -1636919, -12538083, -12822625,
--13771813, -6305012, 26161720, 15792595, -4889821, 8396124, -5552856, 7270843, -14314589, 8403104,
--431107, -7835631, 19913616, 10253161, 4065724, 6496138, 5698885, 18628884, 2469606, -15844671,
-6437619, 12049531, 9454834, -27642946, 16859358, -11751567, -10430328, -5190468, 1714766, -10869488,
-11928198, 26433914, -4603131, 3750043, 13523241, 2261837, -2220498, 3180423, 1376537, 7678328,
-6931004, 4133369, 12684112, 6465537, -3541738, 8592619, 5359583, -3862786, -7732552, 4310000,
--1078574, 4668093, -2224793, 1359357, 3827353, 1457605, -1115081, -1007170, 1721208, 5887327,
-1283122, -1460289, 1299765, 4505421, -2027761, 180926, 7677791, 2907156, -2068027, 4144107,
-1302986, 1051193, 3144453, -151934, 2588255, -1282585, -4932233, -4532801, 3793530, 16977468,
-11176579, 46139224, 12991202, -7795903, 3042448, 7739531, 269509, 15349676, 11525008, 10623602,
--13657459, -22973244, 23023710, -13027173, 2261837, 7906498, 25258166, 10067940, -15163919, 13725105,
--13707388, -2892124, -18877456, -24937116, -2704756, 6676527, 6793565, 4964982, 6431177, -2017024,
--17006460, -6364605, 5572720, 5724118, -8967892, 18919330, 12113418, -11418171, 6370510, 9394704,
-3780645, 528818, -10412611, -1351304, -7280507, -4391604, 1152125, 11750494, 29443612, -8023536,
-2745558, 4278861, 11024644, -10561325, 37299108, -3269544, 3673808, 3060164, -16831440, -16619913,
--26676578, -11411191, 14701673, -5179731, 7422777, 5874979, 25679072, 4044249, 4655745, 1302449,
-20245938, 9697499, -8388071, 18475876, -16815870, 2653216, 17125646, 21967684, 20311974, 7938174,
--11506754, -18894634, -8092256, -6076305, -13721347, -7715372, -7792145, -2226941, -11519639, 2866354,
--3944928, -1948841, -10043244, -1239098, -6254546, 9902584, 1051193, 2122251, -8939438, -1783485,
--12286828, 799401, 5273683, -450435, 9007620, 5620502, 27380, 3664144, -1861868, -5606006,
--3255585, -2550137, -10541460, 915902, 2105608, 2454574, 3141769, -5270462, 7437810, 8005282,
-3548180, -6314139, -4217658, -2149631, 1799054, 4394826, 2401961, -4252018, -2174864, -4858145,
--19223736, 10827613, 5136244, 13291313, -3578245, -29396904, 2333778, -19725712, -17494476, 5167920,
-4169876, 8166881, -5120138, 5867999, -1051193, -10082973, 16002511, -2618856, -5317170, -6452115,
--11253351, -9673877, 5815386, -12184285, 2954938, -7814156, -5352603, -3403225, 15704548, -3137474,
-16858820, 10492068, -4434017, 5543192, 5829345, 11924440, -8283382, -11369315, 1695438, 6998113,
-9199283, 15761993, -17463874, -17002702, 7260642, 5582384, 19516868, -9670656, -1395864, 9644349,
-57445, 2673617, -3605088, 12733504, 16048145, 7329362, -2040646, 10043781, 33658584, -7466801,
--9822053, 12476880, -1381906, 19640886, 4726612, 9157944, 11080479, -3610994, 7756174, 22736484,
--6208912, -27338540, 19226958, 5611375, -9006546, 2619393, -41653668, 27780386, -277025, 17222818,
--10938745, 8986145, 1269700, -16607565, -15830176, -2178085, 3072512, -12272869, 65498, 1885491,
--2254858, -4082903, -2557653, -13423920, -2230162, -8058433, 115427, -4213363, -1217623, -4825933,
-8078297, -5994164, -4576288, -8660802, -4187593, -9882183, -1823214, 2216203, -5499169, -621697,
--4503810, -4912906, -5321465, -325344, -4405563, -3282429, 1589675, -1413581, 4298726, -3063922,
--6313065, -6908992, 45097, 1198833, -4349728, -886911, -1957968, 2122788, -9286256, -17807472,
--879395, 27736362, 13615046, -35723392, 5468567, -6445672, 2980707, 5841693, -1865626, -18416282,
-2440615, -2849711, 15864535, 31029528, -5266167, 9992778, 20310900, -912681, -5884642, -5247377,
-7947300, 30990336, -781684, -2144799, 25328496, -10363219, 6714645, 71941, -580357, -6640557,
-9426379, -28428926, 725850, 9013526, 20617454, 22106734, -18347564, 784368, 19805168, -1189169,
-37005440, -13469554, -18368502, 2521683, 26844620, 4793721, -20875688, -9690520, 6003291, -42413,
-11613592, -30155502, 3557844, 1399623, -6442988, -21857088, -19547470, 5211406, -6025302, -1291711,
-970126, -22743462, -24043226, 5153424, 3637837, -24104430, -8294656, -15638513, 13974213, -38141992,
--14564234, 12628278, -23298050, 12793634, -6357089, -9235253, 12580496, -3823595, 18947786, 18152142,
-3985730, 11296301, -5162014, 2359548, -13554917, 14662481, -10525891, 8759586, -14191646, 10520522,
-648003, 4736275, -1280437, 148713, -8173860, 9735080, -10696079, 1923072, 1166621, 5513128,
--11727408, 6152004, -4769025, -3188476, 3645354, -2398202, -5519570, 7945153, 3279208, 8486855,
-3676492, -781147, -3983045, -3923990, -1087164, 1659468, -5575942, 2052458, -4071092, 2058363,
--11215770, -5761162, -4597226, 5840619, 6630356, -3590056, 1491964, -1568737, -9321153, 20170778,
-24159, 11156178, -21056614, -1587527, -19929186, 20900384, 9290014, 27347668, 19311246, -9713069,
-3728569, 21600464, 11138998, 10991895, 7093139, -18364744, -5206037, 9016210, 1500554, 10650445,
--23360864, -17381732, 10635413, 35049080, 4830765, -11604465, 22207128, 6300180, 13902272, 3650185,
-2768107, -19798726, -20092394, 342524, 395674, -34660924, 2863670, -7134478, -1721208, 10945724,
--13458280, 8268886, 27276264, 2840047, -44303660, -31919660, -5139465, -9838696, -10971494, -351114,
-8137890, 7009924, -10817412, 12273943, 11718281, 10544682, -6802155, 9072582, -4946192, -11566347,
--2669322, 10132902, -33050848, -7584912, -14889578, -17289390, -6811282, 4635344, -8732205, -934692,
-36527088, 20714628, -13952201, 97711, 474057, -6314139, -6436009, 3176665, 24521578, 8913668,
-3770981, -7612293, -5439039, -12718472, -14562087, -15622407, -3506304, 1974074, 4910222, -5489505,
-4395362, -1325534, -3489661, -1377611, -4107599, -13721884, -3340948, -151398, -3389803, -11872900,
-1575179, -4316442, 12988518, -6551973, 4451197, -1339493, 5409512, -88047, -10368051, 868120,
-12613245, 1893544, 11355357, -3128347, 5855651, -3628174, 3750043, -796180, -7668664, -3462281,
--737124, -1405528, -1443109, -71404, 7482370, 14288282, -19891604, -5077725, -8443369, 5253819,
-41523744, 6526203, -20464982, 5366562, 18330920, -3980898, 17126182, 21787832, -11292006, 5116917,
-11001022, 7477538, 468688, -3260954, -6773701, 3210488, 12930536, 6630356, 12075837, -18174154,
--27954332, -3018288, 12449500, 10945187, 8934606, -3224447, -25788058, 8258685, 5703180, 38562900,
-40577776, 9602473, -30213484, 21805012, -11513197, -30909270, -7226283, -36572184, -27841052, -12327630,
--13419088, -28369870, 4927938, -11457899, -32447404, -29721710, 8568997, 19233400, -3187403, -25096030,
-7439420, 679142, 8010114, 15735150, 15365246, -19425600, 25016038, 17154100, 2179696, 6874632,
-17406428, -947577, 45532024, -32506996, -15527917, -1126355, -37047852, 30367566, 2215666, 38182796,
-11797201, 8514773, -1935957, 7536594, 16196322, 599685, -15083388, -279173, -8052527, 6027450,
-5833640, 10894185, -4585952, -13991930, -93952, 12934831, 6135898, -8311836, -4141959, 6788196,
--9299678, -73014, 200253, 11882027, 4660040, -6519761, -2825015, -7402913, -11944304, -10364830,
--573915, 2245194, -5921686, -4363687, 1389422, -5980742, 9357123, 4554813, -112206, 5616207,
-18898392, -7196755, -3597035, 2127620, 5075041, -10196789, 11076721, -3732864, -341987, 1890859,
-8283382, 13939316, -20240570, 5311264, -40421012, -10954314, -2504503, -9948755, 44377212, 13982803,
--11787538, -27884002, -14134201, -11480984, -17661442, -12967043, 6787659, -40705552, -8760660, 29867740,
--3534221, -3362960, -31095026, 29655138, 14704357, 660888, -11791296, 12633646, 6274411, -7092065,
-13543106, -21024938, -5572720, -10743324, 6030671, -4918275, -13237626, 15024869, -11290932, 6260452,
-438087, -20429012, -12710956, -3198140, -25550760, -25103546, -33590940, -8685498, 15413564, -11294153,
--6150393, 19369766, -23638426, -19452980, 20959978, -184147, -1207960, 18855444, 282394, -16164646,
--9269613, 6352257, 13656385, -20881058, -6546067, 25373594, 10982231, 24482924, 12709345, -5034239,
-12915504, -1005022, -33172716, 10405632, -25092272, 18175228, 3194382, 6652905, -10552198, -28722594,
-6056441, -4303021, -24893630, -10006200, 11196443, -12664248, 541166, 3904125, 8159364, -8134131,
-459562, 1187022, -2124935, 5178657, -3711926, 2890513, 10241886, -1911797, 3526168, 2661269,
--6600828, 2066416, 4929549, 2768643, -4922570, 6703370, 4693863, -516470, -6901476, -14190572,
-2945811, -11234024, 9137006, -11469710, 7538742, 9346923, 475131, 518617, 304406, 5302137,
-863288, -4902169, 11060078, 8794482, -4332549, -6929930, -11546483, 30285962, 10573673, 1117765,
-3697967, -7909719, 12008192, 18662706, 47278464, 41293964, 3570729, -18179522, 8410083, 23943906,
-6843494, 18540836, 13372381, 8978629, -14013405, -17995376, -21626770, -1507534, 8034810, 15232102,
-30713848, 16253767, 19697794, 11454141, 18262738, 9215389, 17592186, -11748883, 3316789, 33205466,
--892816, 25545928, 6771016, 20659866, -32779728, -5331128, -9662603, -9658845, 7645042, 12767327,
-23741506, 38408280, 32172526, -11404212, 5713380, -42652248, 10361072, 9821516, 37580428, -29875256,
-23767812, -7756711, -20943334, 16049219, 4952634, 13394392, 23541252, -7659538, -30149060, 15604690,
--19382650, -26578868, -12633646, 35560720, -30868466, -43815644, -22111566, -7260106, 23110682, -2412698,
--15756624, -30240864, -22830972, 14461155, -2065879, -565862, 19588272, -21336860, 6101001, 21908628,
-8533563, 14666776, 21220360, -14371497, -7241315, -12146168, 16230145, 3603478, 8356933, 5915781,
--14605036, 18138184, 4482872, 2874407, -7154879, -26519812, -25333864, 2524904, -12057047, -5004174,
--11436424, -9946607, -4365835, 4672925, -151934, -11186242, 14283987, 11970611, -1611150, -12698071,
-2081449, 7646653, -9074192, -4111358, -5211406, 105764, 6172942, -2850785, -6272800, -5078799,
-4340602, 3631395, 6963216, 8684961, -4553739, 4962298, 5374078, 29707752, -9371082, -32829120,
-2303713, -13711683, -46932720, -23738284, 61550640, 8608188, -27799176, -30521648, 3434900, 544924,
-12710419, 15979963, -21530672, -14294725, -34346852, 7996692, -12463458, -8244727, 52476448, 11270531,
--7266011, -54169740, -3506304, -28924458, 28660316, 35413080, 3704946, 27551678, -32466194, -12768938,
--20516522, -4842576, 53586160, 66748624, 10649908, -17814988, -23848880, -48189532, 648003, 6236830,
-58254252, 32518808, -8527658, -95784752, -49629420, 8249559, -9208410, 84136800, 28187870, -40377524,
--16813186, -72086192, -22827214, 2542084, 47140488, 48652852, 54608360, 2605972, 12931073, -5740224,
-4707821, 67189928, -24802900, 49356152, -11960410, -50673096, -15181099, -53717156, -17264158, 70350488,
-31978716, 50233400, -16654273, 39395052, -44109316, -7026030, 10481331, 21001316, 41777684, -14097156,
--912144, 2639794, -3962644, 6460168, 11143293, -11950747, 1816771, -12566537, -22738630, 10226317,
-18471044, 10305237, -2400887, -13648869, -30422328, -29955250, -15804406, 10142028, 27996208, 15780784,
-21655762, -29446832, -38612292, -29778618, 3344169, 33823940, 37554656, 28855738, -17244294, -73536816,
--47265580, 1433982, 37015100, 79915920, 30961346, 6571300, -36389648, -47936128, -16660715, -15253576,
-41878616, 46286324, 17299592, -2743410, -40172440, -30128122, 9175124, 13839995, 34061240, 16557099,
--17607218, -12319577, -21082384, -10031970, 9893994, 9047885, -42673720, 47327856, 79994, -12333535,
--73531984, -19794430, -19857244, -33175938, 71185328, 762894, 31891742, -48657148, 27015882, 22687090,
--21895744, 14247480, -4211216, 12736726, -11274, 36422396, 12858058, -35328792, 21334176, 17614734,
--125628, 24596740, -18190260, -9327058, 30848602, 21643950, 20540144, 10279467, 17868674, -53243636,
-46468324, -26714160, -17028472, 10190884, -37363532, 54575612, -15540802, 5504538, 39363912, 1418950,
--6029597, 21474836, 21863532, 38676716, -9465571, -35785132, -36576480, 4131222, -13237089, 17001628,
--22143778, -10671383, -15008763, 11014444, -68702832, 1200443, 50918448, 14187351, 20697984, -1837172,
--5666136, 13513578, -18181670, -20659866, 12731357, 7177427, -22406308, -24761560, 94551024, -10151155,
--30826590, 8679592, 44281648, -1154809, -35003448, 14464913, -6626061, -13152264, 28478318, 36318780,
--26598732, -43331388, 9740449, 10521059, -10088341, -25891136, 1218160, 13160317, -4068945, -4154307,
--1796907, -4415764, 6888054, 7795366, -8993662, 1037772, 3818226, 2001455, -5440650, 2049773,
--375273, -11969537, 8580808, 3749507, 16675747, 8359617, -6437082, 6887517, -3389803, 9914395,
--782221, -2523830, 13587129, -3347927, 9285719, -2698313, -10821170, -893353, 12223477, -3416647,
-13924821, -13224204, 17503066, 4168803, -12706661, 5348308, 207232, 6502044, -2196339, -5051419,
--1344862, 13749801, -36681168, 13063680, 57882200, 91163904, -40308268, 29716342, -60186988, -17737142,
--36666136, -4995584, 56018720, 59456308, 47245712, -1477469, -37729676, -22809498, 20542292, 1552094,
-10303627, 31079994, -570694, 15476378, -39549668, -10077604, -22877144, -27851790, 15291157, 12749074,
-862752, 27875948, -23661512, -837519, 6276558, -33347736, -921271, 2350958, -21088290, -7948374,
-7907572, -14076755, 31412318, -10264435, 47582868, 35996120, -23460186, -6575058, -32610612, -37262600,
--48400524, 15486041, 22308598, 64698852, 49334680, 23060216, 31351650, 6012954, -35638564, -23551990,
--19966766, -24257976, -5161477, 13584445, -1313723, -16669305, 4335770, -16819092, 10569915, 24103356,
-4692252, -25144886, 19643032, -12057047, -12808666, -25164750, 13012140, 11156714, 5700496, 3081639,
-57028040, 43589088, 35642860, 6047851, -8293045, -48324824, -10136123, -5061082, 47498580, 27214524,
-12364137, 14347338, 41133440, -6578816, -16415902, -22254910, -18644990, -8791261, -4198331, 3717831,
-470836, 261993, 21325050, -2521683, -12791486, -7861401, -4416300, 405338, 10522670, 18998250,
-8295730, -2470680, 11745125, -19793356, 7657390, 18059264, 7340099, 35661112, -14717779, 151398,
-6039798, -15005005, 3818226, -23820426, -1304596, 8193724, 202400, 9552007, -6873559, -98972152,
--57332444, -33006824, 56899728, 26718454, 151434640, 142380848, 147048400, 148809872, 159362080, 112170048,
-58497456, 84954456, 50984484, -25337086, -47205448, -72698224, -141491248, -127397856, -132189968, -95741264,
--97126392, -71905808, -59697360, -31661962, 3192235, -55934968, -28683940, -11565273, -8892193, -30245696,
-7758322, 37929928, 42469172, 15897285, 50184544, 64004140, 15795279, 12648679, 12600360, 62896576,
-65410204, 82695304, 92433600, 81021872, 91796336, 139584288, 56501904, 109003584, 148580640, 95664488,
-112772960, 88794152, 44378288, 53079892, 58562416, 52206940, 70757976, 69860328, 43251932, 8553964,
-21483426, 41210212, -2618856, 4862977, -19811074, -22673132, -70164200, -31477278, -121568512, -152609312,
--122353952, -139229424, -189642128, -182987616, -108608448, -204403936, -185615072, -169261984, -191619968, -161540704,
--123368640, -154789552, -114045880, -31465468, -75756240, -93522376, -37067716, -36899136, -30486214, -33470680,
--14964740, 9385577, 19228032, 37520836, 48399988, 55624120, 62513248, 64763812, 91183232, 56041272,
-107426792, 120423904, 57272316, 111874768, 106249976, 67575408, 81439024, 118371448, 80400176, 133591736,
-100753488, 126689184, 88607320, 80711024, 83516712, 78212432, 61304216, 70387536, 61072824, 48525076,
-36436356, 35748624, 28918552, 12790949, -8905078, -6702297, -5021891, -41681048, -68319504, -65333968,
--67308576, -73023568, -67900208, -75548472, -54877336, -56453052, -46395312, -33914672, -26711476, -30027726,
--29898342, -22257058, -15744813, -16895328, -22944790, -11113765, -5379447, -12097849, -19443854, -9938017,
--6550362, -8323110, -9280351, 1234803, 3693672, 5188321, 603980, 1806571, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
-10777147,
-565325, -710817, -370978, -846109, -5516886, -5599027, 5360656, 1287417, -3201898, -4889821,
--2353642, -3695283, -6370510, 8149701, 987843, 2952253, 4065187, 11740830, -299574, 1874753,
--2827699, -1044214, -2174864, -7653632, 1708860, -2341831, 756988, 5318780, -2099702, -523449,
-1158567, 562104, -1263794, 248034, -7070053, 1466195, -169651, -2538863, 2211908, 1013075,
--4758824, 7509751, 263604, 1077500, 6990060, -2716567, -3019362, -6895033, -3491809, 4756140,
-298500, 5069672, -2485712, -5641440, 2451890, -5259188, -2351495, -10147397, 4169340, 3542274,
-2161979, 3045669, 6957847, 1796907, -3055869, 3746285, 5778879, -3791383, 2860985, -32212,
--1220845, -1973001, -1557999, 3882114, -789200, 4308926, -2186138, 1720671, -1349694, 1554241,
-3149285, -1726040, 1147293, -1198296, 2544768, 2047626, 1743220, -897111, 603443, 46171,
--1419487, 685047, 2486249, 415001, 842887, -1496259, 976568, -828929, 578210, -1155883,
-246961, 1439351, -4263292, 1148904, -2638721, -5406827, -526670, -6386617, -7740605, -4894652,
--3707094, -8543764, 345745, -3088082, -1716376, 2624225, 9100499, 829466, -2160369, -1046898,
-1464584, -180926, 3781182, 6455336, -544924, 7248831, -833761, -477815, -867583, 4127464,
--5459441, 847182, 662499, -1343788, -310848, -3264175, -5425618, 7451769, -2536178, -557809,
--1328756, 3286187, -3546032, -3055332, 1299228, 1102733, 5207648, -3575024, 4289062, -2509335,
--4294431, -341450, -1774358, 1162326, 2336999, -96637, 3032784, 1439888, 2210835, -2877628,
--3377455, -5599564, -4112431, 521302, 6681896, 840203, 5427228, 1404991, -2794413, 3728032,
-1772211, -4035659, 7071127, 1175210, -6658810, 1731409, 3018288, 594853, 2004676, 1728188,
--4717485, 1716376, 1652489, 1159641, -271120, 3469260, 1168231, -892279, -1139240, -27917,
-1389422, -43487, 1886564, -62814, 91805, 1084479, -450972, -1038845, -666257, 184147,
--921271, -988379, 1214402, -119185, 1165547, 1020592, -284005, -105227, -7925826, -7044283,
-1493575, 792421, 5896990, -4567161, 6066105, -3098282, -1376000, -9556302, -635118, 608812,
--3299609, -598611, 5092221, 4796405, 7220914, -1804423, -1134945, 4485557, 2093797, 4023311,
--9865003, 9699647, -2131915, -180389, 1511292, -1237488, -110595, -921807, -708133, 5994164,
--212601, 7884486, -1402307, -3304441, -6638946, 715112, -3027415, -2676302, 4524748, 3469797,
-4732517, 100395, 551903, -7090991, -5110474, -136902, 6361921, 2152316, -864362, 2080375,
--2708514, 6755447, -405338, -5951751, -7515656, -2733210, 8337069, 6265821, 6430103, 2943663,
-204548, -7072738, -3171833, -1051730, -4138738, 4261145, -774168, -2022393, 3659849, -10044855,
-2955474, -1336272, 2339684, -823023, -2889439, 4495757, 1690607, -4779225, -5060009, 2518462,
--1334661, 2944200, 783832, -2180770, 1529008, 1863479, -104690, 701690, -15569, 191663,
--858457, -38655, -1403381, -8053, -1224066, 1960653, 1071058, -1527935, 744640, -406411,
-515933, 512175, 682363, -1140314, -983548, 336618, 729071, -2079301, 1998770, -2255932,
--4347044, -718333, -3367791, 1539746, 5449240, 2134062, 191663, -2223183, -12671227, -8353712,
--275415, 3665755, 4435091, 253403, 893890, -1790465, 4396973, 1946694, 3522410, -5526013,
-5233955, 3003793, -5957120, 2228014, 5456756, -302795, 1762010, 885837, 4947803, -3852586,
-2935073, -506269, -671626, -4738960, 285615, 5064840, -3237332, -2345589, -4439386, 5945309,
--585726, 1154273, -4670240, -13304735, -3882651, 1950452, 1222455, 4910758, -3543885, -2189360,
--2022930, -892816, -4280472, 129923, -3865471, 8712341, 3061238, 7106561, -7205882, -1422171,
--2992519, 6658810, -2034204, -1232119, -5551245, 3438658, -120796, -3711389, 5666673, 1753957,
-686658, 6502581, 1386201, -5708549, -804233, 687195, -1557999, -1929514, 34897, -4849018,
-9607305, 3958349, 1390496, 5988258, 2593087, 2364380, 4395362, -1264331, 3718368, -2139968,
-634581, 381178, 216359, -1116155, 665720, 284542, -360777, -654446, -629750, 457951,
--499290, 38655, 3181497, 330712, -100932, -57982, -49929, -434329, 2523293, 650151,
-3537443, -2817499, 2245194, 212601, -1456531, 6012954, 4573604, -463320, -8202314, -10941966,
--8458938, 3131568, 2147, -4726075, -1237488, 554588, -1080721, 12313671, 2121177, -8896488,
--2370822, -2659122, 442382, -4187593, 6958921, -5204964, -6828461, 6375879, -2687039, 1750736,
-1686848, -2916283, -8038568, 1070521, -4287451, -3781719, -3941169, -490700, 6245420, -864899,
--1425392, 9240085, 1687385, 1414655, -11931956, -1331440, 6349573, 7443179, -4126927, 2018635,
-1008244, -11766600, -1585380, -723165, -1211181, 2961380, 120796, -6602976, 846645, -5281199,
-5046587, -1800128, 6498823, 1294396, -7490423, 3306588, 14011794, -5455682, 105764, -10463077,
-2514167, 8785356, -15782931, 2240362, -1142461, -1377074, 3896072, -2556579, -4139275, 7384123,
-7047505, -6127845, -768799, 4617090, -2088965, 1077500, 2153926, 1355062, 418222, -1801739,
-3913252, -121870, 2546379, 90731, 3491272, 2381023, 2188823, -206695, 724239, 3904125,
-386010, -828929, 1340030, 1198833, 426276, 3237869, -1850594, 1012539, 478352, -751082,
-192737, 1150514, 773631, 368293, -357556, 10545755, 1312113, 4729296, 7472706, -9213779,
--2827699, -7031399, 3537443, 4080219, 8115341, 15709380, 2473364, -11980811, -1119913, -3011846,
--1242856, -5181341, 19327, -579821, 5938866, 4727686, 1721208, -424665, 237834, -1845225,
--1370632, 6804302, -2219424, -911607, 5085242, -638876, 2996277, -507880, 6472516, -4941897,
--9785009, 12170864, -717260, 2889439, -9159555, 674847, -2786897, 13503914, 2127620, 6112812,
--1278827, 5420786, 3648038, -12222403, -1926830, -6863358, -5900748, 823560, 8613020, 1080721,
--1730872, 13370233, -1416802, -7556458, -5770289, -3954054, 6562173, 20201378, -41876, 5605469,
-1449015, -6439767, -1414118, 110595, 5994164, 9183177, 844498, 7380902, 6585259, -12097312,
-400506, -2161979, -308164, 6061273, -2705830, 1574642, 2862596, -933082, -6212134, -4313221,
--9073655, 2170032, 3616899, -457951, 1396401, 1334124, 1102733, -111669, -2817499, 595390,
-1336809, -161061, 1238024, -1473711, 2416993, -210453, 1214402, -670552, -434865, -1170379,
-307090, -629750, 425202, 1995549, 3209414, 2651069, 402116, 690953, 1966021, 1089848,
-61740, 1107028, -3595961, -15602006, 3535832, -1578937, 5350456, 3427384, 14518600, 2919504,
--2752000, 3476776, 11107859, 12294881, 5073967, 8657580, 8855686, -6877854, -5345624, -11141682,
--12038793, 1308354, 5182952, -10187126, -7247758, -562104, -11782706, -9769977, 4940823, 1574642,
--5240934, -3494493, -7734699, 6403260, 4674535, 10535555, 20037634, -2236604, -5697811, -2153926,
--9894531, -130460, -7713225, -8533563, 10260140, 1158031, 1399086, -13215614, 13617731, 2695092,
--8506183, -2742337, 7001871, 456340, 1504312, -246424, 1125281, 3974992, -6519761, 7614440,
-151934, -5370857, -1512902, -9192841, 1410897, -9438191, -8380018, 7211787, 7444789, -7509751,
--11927661, 3016678, -5761162, -876173, -3193845, 3989488, -3428995, 5269925, 1673964, 6383395,
--1469416, 4763119, 2445447, -10707890, -3758633, 2610803, 1387274, 173409, -5303748, -3001645,
--1598265, 3514894, -2059974, -1792612, 139586, 2811593, 2184528, -141734, -168577, -3084324,
--1665374, 570157, -738198, -328028, 2500208, 255551, -187905, -2270964, 2157684, 675384,
--832687, -454730, -1526324, -306016, -1687922, 2272038, -574989, 1036698, -671089, -5950141,
--6492917, 7844758, -2418604, -1865090, 4541391, -6562173, -6891812, 7908109, 10597295, 156229,
--647466, 3563212, -9122511, 15533823, -9554155, 1101122, 7441568, -3567507, 6942278, 8364986,
-2761664, -8844411, 9496173, -1446330, 3564823, -6941741, -1299228, -13173202, 4515085, -7838316,
-3003256, -13557064, 7932805, -9918153, -6914361, 5629092, 7830263, 2609730, 857383, 300648,
--8515846, -7917236, -5054640, 20558398, 11280195, -3259880, -19086834, -2710661, 5343476, 11081016,
--6300717, 886911, -13201656, -4544613, -1656247, 3415573, 1904281, -2968359, -267362, 5774584,
--6553583, -365609, -7466801, 4042638, 4829154, 14220100, 6005438, -6909529, 2899103, -3844533,
--10779831, -1352915, 6178311, 890669, 17669496, -10124312, -4980015, 2747705, -9261023, 4723391,
-1441498, -1725503, 8959302, 2243584, 3937948, 88047, 292058, -1381906, 4413079, 6648610,
-1566053, -1886028, 4827007, -2508261, 1494112, -4545686, -1559610, 18790, -6048925, -74625,
--2371896, -1037235, -2367064, -3873524, -1835025, 1373316, 1493038, 1085016, -1296543, -157303,
-2632278, -4362613, 431644, 417149, -13570486, -1995012, 2784750, 8011188, 3901978, 10459319,
-1907502, -12502650, 7962870, -10576894, -11319386, 316754, -1024887, 8618389, 10716480, 9855339,
-14375256, 3517041, -14821395, 16237661, 8883603, -6554120, 12497818, -1608465, 1533840, -10947872,
--3779034, -3151432, -4844186, 10478646, -17576080, -3969087, -8249559, -7847979, 1469416, 8490077,
--3997541, -10140955, -10750303, -14012331, -14158360, -7192460, -2392297, 6127845, -11108933, -14416058,
--8506720, -3622805, -7059316, -4721243, 12593381, -7055021, 1205812, 6684580, -11381126, -6763500,
--7662222, 12394739, -5257577, 8077760, 17764522, -1710471, 4006131, 1747515, -5410048, -7113540,
--4846871, 8394514, -1222992, 9609452, 603443, 7258495, 1714229, -12169253, 15118285, -6496138,
--1899449, -12928388, 7967701, 16992502, 2893734, -2309082, 4532264, 1982127, -10844256, -5055714,
-667331, -2554969, -1145146, -4667556, -4559645, -740345, 833224, 694174, 7915625, -897648,
-1025423, -3894462, 3021510, 339302, 5953899, 2591476, 2698313, 1137093, -692027, -2538863,
--2133525, -3531537, -752693, -2656437, 1797981, 926102, -41339, -1846836, -1559073, -1349694,
--525597, 632434, -620086, 3264712, 25151866, 15858093, 11541114, -8339753, -18103824, -4887136,
-11023570, -17148730, -9342628, 330712, 13471165, 9654013, 7827578, -9936407, 7499013, -2677375,
-7496866, -1966021, 19477140, 11673721, -960462, -17914308, -1842541, 13576392, 11553999, 478889,
-23611046, 10676752, -4741107, -11274, 1634235, -2794413, -6589017, -9094593, -1425392, -25530896,
-7237557, -8759586, 1218160, -900869, 6671695, 9496710, 244276, 2526515, -11388643, 8116952,
--4136054, 16902306, 390842, 2413235, -41176924, -1771674, 10990821, 5671505, 11689827, -4008278,
--11527692, 6405944, 2239289, -9446244, 8995809, 1823214, -9052180, 132607, 390842, 3158949,
--3324842, -15074798, -15101105, -620086, -5431523, 5064304, 5326833, 2240362, 5669357, -18458158,
--6325950, 951335, 4095788, 4457639, -7348689, 5798743, 1354525, -2641405, 1953136, 5231270,
--3476239, 703301, -1121523, 2164127, -3536906, -5531918, -1867237, 6581501, -4975183, 702227,
--3717831, 2637110, -1538135, 2334852, 3792993, -456340, -3773666, 3089155, -638876, -4412542,
--2815888, 1587527, 2040110, 243739, -1784022, 879395, -360240, 2723546, -1286880, 5278515,
--1805497, -338766, -17376900, -27957016, 4509179, 9677098, 10051834, 234613, 23232014, -16529719,
-5446556, 3175592, -4715337, -14674293, -6182606, -8348880, 9849971, -4332012, -9039296, -14936286,
--1385127, -5524939, -2858301, -11268384, 5998459, -715112, -5276904, 6056441, 7714298, 9128953,
--11872363, 21665426, 1310502, -3126736, -13320841, -12525735, -2552821, -1655173, -12993887, -13547401,
--10397579, 8717173, -6026376, 14463302, 4626217, 24142012, 8279623, 9154723, -3110630, 12936978,
--2264522, 3099893, 18344880, -5612986, 6648610, -22091164, -28115392, 6105296, -1340030, -17862232,
-1100585, 416075, -24268712, 6801081, -7158100, -4825933, -9486509, 9125195, -8864812, 475668,
--991064, 4383551, 10201, -13307419, 7777649, -1945620, 3088618, -16776679, -23128936, -20609938,
-1129576, -4911832, -23419382, -4959077, 22472342, 11819213, 5201743, 4257387, -10406706, 313533,
--2399813, 975494, -3435974, -2799782, -134218, -285078, 882616, -62277, -7270306, -1775969,
-1901060, -1392106, 3484829, 5705327, 4792647, -81068, -818191, -2521683, 7605314, 4359392,
-5002563, 4150549, 3061775, -592706, -2911988, -2636036, 5932961, -4625143, 3535832, 4973572,
-1946157, 2441152, 398895, 1452773, -4019553, 342524, -1163399, -3464428, 1655173, 4502200,
-17013440, 22207666, -609885, 5915244, 14047227, 11515344, -1154273, -28256590, 19372986, -1897839,
-5290863, -5753109, 9942312, -688269, -12208981, 3455301, 22258132, 3417183, -14577656, 12876312,
-9211094, 6034966, -10961830, 11849815, 8789651, 1059246, 14148159, -5618354, 3795141, 22789634,
-16604344, 692027, 5258114, 11207180, -21488258, -4309463, -1371168, -3334505, -18830748, 4853850,
-5690295, 1117765, -14606110, -193810, -25002078, 1371705, -17870286, -3498251, 9190156, -7589207,
--10824928, -8662412, 5292474, 4399121, -9991168, 3986804, -3618510, 12357158, -6432788, -7212324,
-6405944, 11547020, -1131724, 5045513, 4429185, -27272506, -653372, -1990717, -13942001, 1463510,
-17747342, 5434208, -5013838, -2178622, 12960601, 9126269, 5649493, -3660386, 20578798, 215285,
--17133162, 2302103, 20594368, 10698227, 10449119, 6193343, 1111860, -5087926, -5848135, 3718905,
-3339337, 4894652, 7726646, -1924145, 6099391, 3716221, 595390, -1059783, -640487, 2727841,
--2798171, -1088237, -2775086, -79994, -1316408, 3003256, -6227703, 1049046, 2109366, 649614,
-4734665, -8426189, -3519189, 1399623, 1598802, -867583, 4845260, -1814624, -1625645, -2360622,
-545998, 3094524, 3670587, -4711043, 680215, 2130304, -4300336, -2760053, -2381023, 10858214,
--24999930, 10623602, -25888990, -30714922, -19870130, 1301912, -16953846, 16509317, -5198521, -20650202,
--718870, -5247377, 2784213, 3854196, -4838281, -2660732, 13602698, -4061429, 5177046, -7419019,
--7413651, 21684216, -7320235, -2482491, -671089, 4947803, 13340705, -27210228, -1862405, 14588393,
-14052596, 13207024, 1721208, -4919348, 27983860, 9512279, 8803609, 10951093, 4952634, -3930432,
-173409, 16513612, 5310190, -11636677, 6145562, 30393872, -16061567, 21014202, 7673496, -32036698,
-7738994, 21563420, -2359011, 9717900, -139050, -24270324, 12265890, 30292942, 1695975, 20613696,
--12475806, 18243410, 15049565, -448824, -2733210, 16751983, 8845485, -21932250, 21966610, -5388574,
--5021354, 13378823, -6460168, -7856032, -9805410, 3475702, 1141388, 3710852, -921807, -4400194,
-16507707, -14699526, 2546379, -3001645, -4816269, -12002823, -11434277, 6792491, -865436, -7376607,
--10200010, -8520678, -14532022, -10282152, -565862, -7103876, -4271345, -1016834, -7528541, 3219078,
--6624987, -6803228, -1839320, 1730872, 2432025, -3401077, -414464, -10677289, 4288525, -11201812,
-8606578, -2839510, -696322, -4888747, -2665564, -511101, 12885439, 6487011, -1297080, 3105798,
-8879308, 4852240, -4823249, -2263985, 3504157, -4363687, 7255811, 1659468, -2751464, -9733470,
--17276506, 41490456, 20529406, -48380660, -19943680, 5135171, -8019778, 13976897, 16455093, 17657148,
-20198158, -12408697, 38267084, -5759015, 966905, -12525198, 14421426, 19216758, -13847511, -15796353,
--3321620, -9097278, 1703491, 7664369, 1187022, -9943923, -3753802, 15758772, -1251446, 7963406,
-1928440, 18963354, 28427852, 10781979, -13657996, -32020054, -2677912, -5435818, 3614752, -7410966,
-10574746, 17748416, 1617055, -6579353, -14616847, 35007204, 30626874, -4062502, 14962592, -8333311,
--11172821, -33723008, 18655728, -15736223, -3610994, -1009317, -10524280, 5906654, 20729122, 3166465,
--9123047, 9830106, -4212289, -13922136, 21197274, 4300336, -29335164, 37610492, -25462176, -13650480,
-14563160, 14927159, 12528956, 211527, -31333934, -2699387, 2771865, -1823214, -10283225, 6072010,
--5368709, 2219424, 3911642, -13015362, 15054934, 10473815, 5058398, 2019708, -6152004, -4570919,
--287763, 5305895, 479426, 4092567, -2443837, -10081899, 3063386, -14777372, -4672388, 4699768,
--4357245, 8082055, -6839199, -1012539, -5810554, 6439767, 570157, 7920457, 9215389, 6330782,
-272730, -6976101, 5067525, 8566849, -1691680, -1002338, -9176734, -4050691, 10659035, -3643743,
-7198902, -625455, -4006668, 3777424, 3577708, -220117, -6046240, 11009612, -13350369, 1488743,
-19088446, 5660767, -25897580, -20773146, -4972499, 32402308, 3388729, -15560667, -41794328, -11627013,
--1897302, 9924059, 28767690, 22038550, -3075734, 273267, 18925774, 15400679, 718870, 4223027,
--56398288, -35560180, -17326972, -27866284, 2423435, -15544024, 24958592, -5713380, -1955821, -121870,
--10050760, -11476689, 18085034, 11269457, 6401649, -2557116, -8611409, -7713225, 9009768, -20211042,
--7572564, 3575560, -7006703, -9842991, 8429947, -29213294, -40877352, 9722195, 12773233, 15865072,
--23870354, -12692702, 13218299, 5018670, -39848708, -34999152, 2127083, -16938278, -17521320, 6517613,
--32193464, 16337519, -12453258, 13426605, 12884365, -7986492, -18144626, -41929080, -14698989, -12596602,
-23536420, -20343112, -13267691, 7176354, 24059870, 14025216, 134755, -8189429, -2694555, 7198902,
--7215008, 24314346, -15066208, -11809013, -5706938, -2113124, 6685117, -17911624, 10549513, 8086887,
--7503308, -12542378, 2917894, -726923, 12212203, -15664819, -20432770, -5183489, 3233574, -11303817,
--1701881, -13669270, 591632, 3334505, -6150930, 9537512, -2569464, -6759205, 2962454, -4568772,
-2782602, -3892851, -14200236, -624381, 1042603, 13556527, 10633265, -6525129, 48855, -730681,
--8017094, -10256919, 4974646, -2605972, 16578574, 22886270, -3692061, -30660160, 13882408, -4548907,
--12843026, -26422102, 7880728, 11391327, -39294120, 14899778, 13943611, 35492536, 3193308, -8806294,
-2186675, -43276092, -12596602, -5193153, 561567, 8008504, -14820322, 26643830, 10639171, 32916092,
--6595996, 28962576, 18548890, 11494406, 26331370, 13402982, 17376900, 22443352, 979789, -29222958,
--27638114, 5697811, 31644246, 22919556, -42161008, -1154809, -7140920, -5870147, -4425427, -29152628,
-7481833, -20750598, 18728204, -13863081, 42258720, -11057930, -60625612, -6389301, -20892332, 12115566,
-9003325, 17330194, 39346196, 8854075, -5344013, 21606906, -12717398, 44028248, 7401840, 29479044,
-13830868, 2748779, -11143293, -10016937, 72156528, 499827, -49803904, -9943386, 39811124, -23718956,
-5226439, -10902238, 17481590, 36625332, 21109228, -42098196, -2716567, -41441604, 5776731, -5648956,
--24572044, -2823404, -6636798, -10808822, -51540, -21182242, -23331872, 8162049, 8832600, -1073742,
--26111790, 18964428, -23133230, -35760436, -15251429, 9017821, -8870181, -15883863, -20550344, 3874061,
-8719320, -18568218, -14231374, 7015292, -8236137, -14959908, 12331388, 9922448, -863288, -1781875,
-733366, -3338263, -6132140, -6456410, 2426657, -13791677, 8188355, -4853850, 3129421, -17563196,
-19862614, 8601746, -41219340, -15463493, -46809236, 7136088, 41261212, -30403000, -28509992, 27263378,
-12817793, -46663208, -44222056, 14179298, 2340757, 6492917, 15054934, -1842004, -13276818, -6750615,
-28258738, -20231444, 34893924, 5688148, -8170639, 7460358, 20160040, -66035, -6035503, -37338836,
--16387448, 4151623, -20010790, 17273284, 25791816, 1869385, 4271345, -26709864, 31865436, -11181410,
--14242112, 25995826, -9982041, 63888, -18635326, -1882806, -13100187, -45913736, 15767899, -5132486,
-34142304, 43797392, -636192, -7803956, -27747636, -8760123, -7719667, 41678900, -39604432, -27948962,
--65650724, 1553168, -27175868, 7553237, 22786948, -12267500, -3419868, 44805100, 28895466, 20443508,
-3535832, 2065342, 34000036, -36841692, -1599339, 10486700, -4348655, 20357608, 9764608, 86453400,
-13671955, -23593330, -1321776, -16160351, -42596412, -16866336, 1589675, 7254737, -8201777, -8815957,
--8061654, -30419642, -380641, -2487860, -16158204, 4329864, 10854456, -26075820, 1714229, -17685064,
-6940131, -1188632, -6142877, -3491809, 1520418, 15397995, 8981313, 712428, 17038672, -10439455,
--2198487, -4952634, 16037945, 10751914, 7636989, 16508244, 7682086, -11731703, -5632313, -1896228,
-8182450, -14766098, -3795677, 511101, -16674137, -5153424, 3046743, 39967356, -29358786, 10187126,
--10080288, -14249628, -13894756, 60410864, -8102993, 29662118, -23952496, 41220948, -14300094, 619012,
-22200686, 23814520, 56834764, 2729989, 9287867, 8366060, -24148990, 29367376, 9083856, -17220672,
-28592672, -11921219, 36013300, 27555974, -8522289, 23985244, 1105417, 22402550, 4494147, 37963752,
--23156316, 18978386, -38318088, -9519258, 12867722, 41161356, -1799591, 3412352, 17701170, -33823,
--13842680, -49345952, -30565672, 8572218, -21226802, -814433, 15631533, -42968464, 26382910, -1753957,
-31374200, -14782204, -29316374, -4968741, 81069656, 18556406, -73726872, 13147969, 18796388, 4758824,
-80268640, -4679904, -59086400, 61500712, -20658256, -3779034, 67184024, -7036767, 44205952, 7305203,
--39879844, 1889249, 68692096, -55832964, 29460792, -34133716, -38674568, 28916404, 17336636, -35212828,
--12924093, -21783538, -11882564, -12636331, 6479495, -21457656, -4380867, 8898098, -22167400, -15715822,
-11656004, -25834766, -6252399, 9485972, 3726421, -5734855, 19696720, -8184597, -6503118, -9164923,
--17583596, 8910983, -11285027, -12857521, -2964064, 2612414, 26276610, 448824, 7557532, -21226266,
-2385854, 28039158, -4991289, -2930242, -2004139, 1730335, 2128693, 19714436, -10024454, -11496017,
--5719286, -18080202, -21735218, 6255083, -10706280, 4831302, 7155416, -2831457, -59272160, -4502737,
-9341017, -22149684, -6276558, -62209380, 39604968, 60552060, -26386132, 8626442, -45832668, -134351408,
--25496536, 6305012, 68467144, 57360900, -55874304, -49930068, -50170048, -41327784, -28981366, 35647692,
--5895380, 78442208, 53333292, -15690052, -64530272, -161987920, -104619496, 7413651, 180211456, 137005696,
-25395604, -70498664, -176747024, -181269088, -12873091, 105720080, 163697312, 179224160, 18813568, -57812944,
--72967736, -97120488, -87207704, 5997922, 60911228, 112878184, 78005736, 62162672, -80438296, -98913096,
--115971096, -139978352, 16073915, 168083008, 165907600, 33821256, -59391880, -157364912, -206188496, -69681016,
-16271484, 76959912, 188817504, 69573640, -120796, -103770704, -84727896, -35640712, 43162812, 73891688,
-129699960, 34027952, 67864776, -5279052, -86502248, -71621800, 4298726, 83715888, 91382408, -41357852,
--79054240, -97001840, -24165634, 16066399, 23223426, 15007153, -48373680, -41856068, -17251810, 31224412,
-122943, 667867, 7054484, 25016574, 20189568, 15680389, -8432631, -58986008, -39224864, 4601521,
-30595736, 56680684, 27466852, -15790984, -37396280, -49383532, -30944702, -19737522, -25875568, 56848188,
-59322088, 65154116, 54059680, -24903294, -103533944, -87678000, -47266116, 40143984, 131068984, 127107408,
-7181186, -80014704, -125314800, -112710680, -7301982, 62820876, 59038620, 28792388, 25959320, 1650341,
--33602212, -40205724, -50968376, -7521562, 47725676, 58698780, -15966541, 28918014, 22234508, -50995756,
-556735, 26229366, -21069498, 28992102, -1177358, -5317170, -2079838, 5842766, 22042310, -8664023,
-25974888, 17655536, 10581726, 11747272, 8925479, -2257005, -14860050, 24277302, -318901, 14809584,
--8828305, 13185013, -4528506, -1902134, 8979703, -12024835, -12657805, 1853278, -5434208, 19648938,
-19447076, -17819820, 8906688, -10619844, 12240120, 242666, 8045011, 3038153, 10436771, -12695386,
-8816494, -14608794, -6305012, -2041720, -1619203, 11767674, -22232898, -4416300, -9158481, -19836844,
--1723893, -7810398, 4771172, 18854370, -5638755, -26197690, 4243428, 16218333, 31729608, -1415192,
-2827162, -17111150, -12948253, 14730664, 1374926, -5624797, 479426, 25844966, 11486890, 8135742,
-14006962, 23812372, -26989574, 10754061, -4582730, -40346924, -4668093, 31160524, -5753646, 27719182,
--1212255, 17201344, -20373714, 12578349, -13850733, -4159139, 27357868, -7894150, 2544768, 536334,
--95026, 9953587, -19327, -4132832, -2304250, -796180, -1913408, 4961224, 7856569, 11409044,
-1311576, -9845139, -4406100, -12717398, 4774930, -13185013, 7102266, 5351530, -4054986, 7299297,
-2342905, -13675176, 213675, -76236, 4335233, -23445690, 8156143, 5124970, 2024540, -702764,
--6482180, 7585986, -11853573, 11857868, -962610, -1513976, 3175055, -5789079, 10041097, -11388106,
-3120294, 5666673, -18602578, 47546360, 81918984, 7001334, -53594748, 17987324, -4036196, 66428648,
-31203474, 65299072, -6147172, -31010200, -8445516, 14497662, 27434640, 21486648, -12107513, 2127083,
-11644193, 8481487, 25916370, -18101676, 4362076, -24417962, -3969624, 375810, 6269579, 12771085,
-2782602, -10392747, 19841676, -1796907, -17564806, 23981486, -4110821, -8528194, 6340983, -3521873,
-18622978, 29777008, 711891, 7809325, -10021769, -6200859, 17184702, 12502113, 14227616, 2869575,
--9052717, -18654654, -19214074, -20816096, 16675747, 18391586, 17963700, 26867168, 28713466, 12473122,
-1501628, -25042880, 15365782, -2641405, -22793928, 28186260, -2081985, 18554258, 9683004, -28148678,
-7787850, -8326868, 6015102, 19123342, 3551938, -23519778, -16756278, -13851270, -24720758, 15097884,
--1529545, 26015690, -278636, 4284767, 506806, -13981729, -9044127, 4971962, -21210160, 6448894,
--230854, -4076998, 7630547, -11741904, 7159174, 4694400, -964757, -9938554, 13069585, -3272765,
-11591580, -19562502, -14445049, -8491150, -7606924, 9283035, -3913252, -2398739, -2508261, -9782862,
--5340255, -6004901, 5369, 18176838, 2413235, -4599910, -304406, -10551661, 7688529, -5866926,
--1044751, -4017405, 8615704, -741419, 1133871, -1828046, -6256157, -4242891, -28952374, -64612416,
-4344360, 89608584, 118366616, 101700528, 70055208, -2914672, 4304094, -51729660, -61686468, -103484552,
--78303160, -83074328, -26999776, 7085086, 27022860, 45565844, 112878720, 94036160, 63225140, 20563230,
--10024991, -40764072, -30468498, -42386496, -54056460, -29969208, -30943628, -37946036, -17762374, -24944634,
-5234492, 17736604, 14780593, 48179332, 44348220, 39479340, 25711284, 29920352, 18719078, 35820564,
-8548596, 31002684, 1305133, -8011188, -54050016, -23408646, -65131568, -75568872, -84667224, -66250944,
--49894100, -17588428, 12695923, 48693656, 51729124, 40917080, 83977888, 68207840, 72732584, 67517424,
-62844500, 25343528, 40615360, -16246788, -40565428, -42363948, -100017440, -99781216, -96569120, -102589048,
--84755272, -28858960, -14339822, 22893786, 57223460, 62527744, 76206680, 91983704, 81889992, 63985884,
-57964880, 42847668, 15886010, -1489280, -34487512, -50524384, -51147692, -58143656, -48959404, -54687820,
--57213260, -48105780, -37660420, -18705656, 2109903, 24988656, 47800840, 44987100, 44140988, 52310016,
-57549876, 44773960, 44595720, 20092930, -21121038, -15204184, -37029596, -46794204, -39329552, -32074278,
--22808960, -28344636, -20791400, 2631204, 5814849, 10131291, 25145960, 22437982, 13969381, 3660923,
-9356586, 9878962, 2691334, 12460237, -7876433, -8296803, -7046968, 4810900, -1621350, 408022,
--920197, -1432909, -9473087, -6236293, -2992519, 9042517, -363462, 4274030, 986232, -4624069,
--6285148, -2857227, -4555350, 1460826, -666794, 1704565, 460635, 2238752, -2809982, 2257542,
--2128693, 613643, 453656, 4232691, -520765, 2398739, -1600412, 1698660, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-},
-{
-{
-10392210,
-5522254, -621697, 3624953, 906775, 827318, -11378442, -4951561, -5636071, 4433480, -609885,
--3697430, 4030827, 4161287, 273267, 3995393, -1669132, -137439, -234613, -2466922, -1284195,
--5468567, 2826089, -8085276, 3376381, -4217658, 3442416, 6427956, 2934537, -1225139, -1817845,
-4749697, -766115, 219580, 4495757, -4817343, -140660, -1630477, -2774012, 588947, -674847,
-994822, 4607963, 7593502, -2413235, 135828, 6307160, 478352, 1658931, -2324114, -3534758,
--520765, 1059783, -5959267, -1564442, 3112778, 404801, 1123671, 1848983, -856309, -1862405,
--1762547, -2088965, 2303713, 1887638, -1099512, -3414499, -4198868, 2074469, 36507, -3484829,
-3675955, -803159, -245350, 560493, 1037235, -1738925, 2198487, -2341294, -792421, 2876554,
--1988033, 1146219, -3364570, -2572686, -1239635, -833224, -216359, 454730, -1357747, -1698660,
--171799, -967441, 378494, -358630, -309238, -463320, 358093, 99858, -357019, -693637,
--419833, -258235, -65498, -375810, -242129, -530428, 484794, -777389, -482647, -3735011,
--1026497, 29528, -3537979, -3579318, -2147484, 8588861, -6032819, -2480344, -4212826, -7670812,
-2864743, 1315334, 298500, 6585259, 6234682, 6248104, 2017561, -1168768, 966368, 4709969,
--2014877, 2031520, 2379412, -5556614, 7911867, 1534914, 2460480, 5851356, -2251100, -5838471,
-393526, 3965329, -2795487, -1268089, -3726958, 3946538, -102542, -402116, -6477348, -280784,
--788127, 3987877, 2035815, -3551938, 7084012, 2614561, 1473174, 2481954, -1156957, 3972308,
--1548873, 195958, -4946192, -5907191, 4734128, 3708168, 6558952, 640487, 1768453, -5080947,
--7865696, -3861176, -2361158, -2291365, -3635153, -3130494, 1619740, -911070, 2384781, -2952790,
--1132798, 1296006, 1466195, -887985, 4000762, 1215476, -3007551, 6041409, -2371359, 1858110,
-7621957, 1625645, 1044214, -2364380, 104690, -2596308, -3103114, -500364, 1752884, -35970,
-223875, 94489, -842350, -270046, 74625, -762357, 1786170, 1145146, -670552, -165356,
-49929, 468688, 251792, -1188632, -643171, -286689, 130460, 528818, -554588, -855235,
-733903, -440234, 562641, -306553, -474594, -594853, -7397545, -6890738, 4037806, 923418,
-5655935, -8740795, -1234803, -3472481, 938450, 10416906, 5942624, -9100499, 3445101, 869731,
--3796751, -4218195, -5163625, -8378408, 299037, 1012002, -3108483, 1497333, -1791538, 328565,
-2529199, 1962263, 5405753, -4719632, 8511015, -5179731, 4942971, 3930432, -3186866, 2304250,
-413391, 3547106, -1415192, 1859184, 3246459, 1095217, 506269, -1288490, 2530810, 771484,
--1128503, 6067178, -7913477, 557809, -4792647, 9545565, 3368865, -8307004, 3237332, 10912438,
--10240276, -4869956, 1237488, -826781, -3880503, 3263638, -1356673, 7271917, -6100464, -593242,
--2014340, -408559, -365072, 7027640, -6501507, -2147484, -700080, -6708202, 3629784, 2815351,
-7256347, 2964064, 6179384, 5575942, 922344, -2234457, 1755031, -185220, -766652, -1662689,
--151398, -2552284, -1016834, -568546, -3579855, 2290291, 199179, -2493229, -415001, -2019708,
-197569, -78383, 1389422, -474594, -802085, 179852, -1145146, -31675, 1200980, 447213,
--251792, -802085, 3296388, -5092758, 646929, -3200288, 3375308, 1202591, -5126044, 14813342,
--9423695, 2960843, 16047072, -11346767, 5281199, -311385, 5247913, -1407676, -9698573, -2138357,
-8009041, 7163469, 1985886, -83752, 4054986, 1973001, 146566, 3340948, 3372086, -2800319,
-4296578, -1207423, 6772090, -5470715, -8420820, 1783485, -7351374, 2523830, 137976, -2116345,
--2353105, -3370476, -5003100, 958315, 1763621, 165356, 1272384, 1444183, -3084860, -6468221,
-5076115, 1124745, 832687, -328028, 7459285, 1489817, 3123515, 7870528, -4842039, 1898912,
-315143, 2367601, 5519033, 4314832, -7193534, -6312528, -1625108, -3610994, -828929, 247497,
--3098282, 1636383, -5752572, 273267, -5535139, 2728378, 2709588, -3211562, -4210679, 461709,
-2310156, 423054, -4866735, 680752, -2786360, 2087891, 1733556, 775242, -913217, -1369021,
-967441, -144418, -523986, -34360, -1255204, -1057636, -3339874, -828929, 3043521, 1330903,
--873489, -605590, 2124935, -732292, 638340, -942208, 38118, -236760, 113817, -1210107,
--803696, -461709, -345745, -436476, -503585, 101469, -332323, -763967, -627065, 402653,
-4677220, -1999844, 4235375, -798864, 2111513, -2433636, 289910, -1598265, 1406602, -769336,
--9246528, 7022272, 4505958, 11582453, -7600482, 4742718, -9403294, -1615982, 5735929, 6206765,
--6599754, 1888175, -7645579, 564788, -8964670, 2935610, -6715718, -8334384, -7456600, 3742527,
--6024766, 259309, -7065758, 916976, 1037772, -1066763, -5172751, 3245922, 4540318, 2703145,
-2114198, -5530308, 3007014, -5799817, -1833951, 3555696, 114890, -806380, -1561758, -226560,
-3678103, -4279398, -8246337, -1745904, 2537789, -1745367, -6114423, -6185290, -8768713, 2093260,
--2529199, -8213051, 5869610, -5265630, -5160403, 9916543, -3586298, -1962800, 811212, -1802276,
--3236258, 796180, -5443871, -2702608, -4580046, -3617436, -1503239, 2949569, 7511361, 375273,
-4514548, 370441, 3368865, 2333778, 6068252, -450972, -136365, 615791, 2243584, -1245004,
-259846, -605054, 4437775, -185220, 2143726, 307627, 855235, -772557, 992137, -2736968,
-2974802, 54224, 59056, -2241973, -564788, -3023657, 1427540, -1555315, 1022739, -424665,
-3001109, -1482838, 594316, -2636036, -2096481, -218506, -911607, 704912, 7662222, -11038066,
-1987496, 9656160, -3582003, 10575283, 2946348, 666794, -3067144, -7385733, -4858682, 12589623,
--6763500, -59056, -2337536, 983548, 7577933, 6807523, -4125853, 9834401, 9819906, -4629975,
--2421288, 5980742, -5053566, -4424353, -317291, -6795712, -153008, -2006287, 876710, 11798812,
-4028143, 636192, -5408975, -15696495, -1912871, 8818105, 2164664, -5883569, 4512400, 7167764,
-6263136, 7573101, -12403329, 2506114, 602906, -6156299, 3337190, -5541045, 3946001, -3126736,
-4894115, 11000485, 14541149, 9177271, 4217121, -6033356, -1664837, -7201050, -7568806, -1594507,
-8526047, 2096481, 134218, 2006287, -8345659, 2167348, 1038308, -76773, -4224101, 2259690,
-4567161, -4829154, -9100499, 20725364, 2677912, -3713536, 1278827, 2230162, 9443559, -1902671,
-2598455, 3218541, 4687420, -3262028, -1599339, -3521873, 1672353, -976031, 1844152, 1718524,
--1223529, -1928440, 3514894, 467615, 929324, -671089, 2124398, -3646964, -2601140, -1755568,
--646929, 4050691, 1491964, 2707977, 2066953, 2122788, 150324, 470299, -901943, -2555506,
-2498597, 601832, 1056562, -1781338, -5709622, -1603633, -3503083, -1331977, 2653753, -3595425,
-16345572, -1606318, 4605279, 11740830, 1534377, -1739462, -7679402, 4325569, -4147865, -5170604,
--15518254, -6922414, 3117073, -805843, -3007014, -11180874, 3907883, 6199249, -8824010, -4583267,
--2374580, -9203578, 3673271, 686121, -4889284, -3980361, -1687922, -12443057, -4451734, 6219650,
-10365904, -7819525, -9823664, -2812667, -579821, -7936563, -6560563, 2538863, 4364224, -8696772,
-17497696, 131533, 7113003, -3935264, 6683506, -4480188, 2010582, -12372727, -2621004, 5124433,
--12430172, 3467112, -2812667, -6271726, -14114336, -251256, 7825968, 178778, -14887430, -2181844,
-2702071, 6056441, 10912975, -3946538, 4881231, 12824772, 4252555, 1634772, -5806259, -1022202,
--3624953, 839129, -4319664, 1072668, -8154533, -993748, 6239514, 1872606, 1209570, -3456912,
--6323266, 3601867, -1171989, 3715684, -1349157, 570694, -824097, -1727651, -1684701, 2451353,
-912144, -369904, -837519, 179315, -2458869, 1253057, -2510945, -3029563, -1975685, 1211718,
-147103, 120259, -2370285, 1968169, -299037, -1114007, -3349001, -942745, 208843, 554051,
-1357210, 3671123, 1127966, 940061, 1791001, 4835060, -1583769, -4825933, 5883032, 1079111,
--9099962, -14207215, -11664057, -14704894, 12655658, -7672959, -1937567, 4207458, -13989245, -5749888,
--9747428, -4282083, -3149822, 6350646, -12265353, -6480032, 3840238, 4878546, 6993818, -69256,
-181999, -2140504, -78920, -2830384, 1692754, -9647570, -5268851, -8479876, 5855651, 2975876,
-4522601, 5977521, -11837467, -809601, -1329292, 10755672, -4087735, 3412889, 5776731, -2157684,
-6189048, -4055523, 6907381, 9814000, -3882651, -637266, 8327942, -7135015, 11538967, -4931696,
--18510236, 2903935, 9494025, -3615289, 1039382, -284542, 7269769, 9222905, -9383967, -4031364,
-2117956, 6359773, -11027329, -8295193, -6719477, 13318694, -375273, -15211164, -3366718, -6313065,
-5149129, 712965, 3874597, -5696201, 9361955, 425202, 1629940, 2741263, -8771397, -2942053,
-591632, -1067836, -2252174, -2511482, 2382096, -2391760, -2410551, 1866163, 2723009, 1448478,
--5175973, -440234, -2097018, -1475321, 2067490, 1906966, 4244502, -571768, -2169495, 1665374,
--4863514, -549219, -92342, -3119757, 375810, 314069, -1243393, 615254, -5520644, -978179,
--708133, 633508, 648003, 2311766, -340913, 2593624, 1415729, 1344325, 125628, -8558796,
--3464428, 5878737, 2176475, 8422431, 2888903, 4120484, -16540993, -6481643, 6454262, -4357781,
--3120831, -5510980, 1694365, 8617852, 2260764, 2053531, -11082089, -3747896, -2022930, 4108136,
-9731322, -11819750, 5572183, -9635222, -2562485, -8863739, 1137093, 1227824, -452045, 3702262,
--8276402, -2384781, -7756174, -3189550, 139050, -358630, -9740449, 5581847, 6250788, -2330020,
-7417946, 14590541, 1494649, 11052025, 14175003, 1114544, 456877, 3418794, -2982318, 4698158,
-959388, -3104725, -4780299, 17806398, -1854352, 10405095, 4599910, -5251672, -6096169, -4244502,
-4973572, -4069482, 6464463, 15683610, 7947300, -2085744, 249645, -13155485, -9067213, -8026757,
-12341589, 19376208, -8511015, -78383, -7875360, -1301912, 11845520, -3752191, -726386, -18698140,
--2507187, -3411278, -1989644, 7089381, 496069, 1467805, 2154463, -3758633, 2968896, 1578401,
-2644626, -2247879, 3836480, -1858647, -435402, -4745402, -1129576, 4111358, -1529545, -134218,
--817654, 3946001, -1016834, -2881923, 1663226, 1745367, 995896, 1370632, 1446867, -1568737,
-387621, 2779381, 4824322, 4175782, 2703682, 1454383, 285078, 351114, -3033321, -290447,
-1896765, -1871532, 1998234, -700617, 685584, 2609193, -1150514, 11188927, 31024160, 13522168,
--4216584, -1076963, -5763846, 14298483, -14324790, -8140574, -21900576, -252329, 10799158, 13434658,
-2419677, -5334350, -13129715, -9608379, 9675488, -1966558, 15367393, -46171, -4935991, 7250979,
-2642479, -134218, -3821984, 10029286, -1865626, 8663486, -138513, -4727686, 18906446, -4525822,
-7668127, 18582176, 6534256, -789200, -9085466, -1716376, -14798310, -17340930, 3773129, 11096585,
--2666101, 1549946, -18923090, -7201587, 10959146, 5931350, -4905927, 3615289, -5615670, -2732136,
--8631274, -14511621, 872952, -3433290, -10244034, -16748762, -14438606, -4712653, -13263396, 6088653,
--5940477, 2089502, 1712618, -116501, 315680, -2163053, -2974265, 8569533, 17062832, -11521787,
-2081449, -4853313, 6168110, -6440841, -256624, -4656819, -2098092, 15682536, 11409044, 2551748,
--1770063, 137976, -6424198, 2198487, 6393596, -1239635, -5556614, -3195993, 5535676, -6732361,
-611496, 2837363, 2683281, -2383707, -2143726, 2375117, 3016141, -2336462, 3592740, 2051921,
-2979634, -345745, 3934727, -447213, 2488397, 1196148, 1463510, 875636, -870268, 4598836,
--4552129, -707059, 991064, -1400159, -1158031, -2176475, 2059974, 149250, -3925063, -1511292,
-2561948, -2858301, -12782360, -14460081, 3753802, 5553393, 17353816, -14662481, 4687957, 4510790,
--24423332, -1123134, 182536, -20402706, -11110007, -7208029, 5222144, -1619203, 1249299, -5746666,
-8617315, 13543642, 7148436, -1907502, -20707112, -9010305, -11247982, 4225174, 1293322, -9074729,
--682900, 7158100, -6010807, 12354473, -11093364, -311385, -6456947, -20699594, 3558917, -8800925,
--9921911, 7734163, 11467563, -12821551, 4992363, 15171972, -4926328, 6658810, 5219996, -3534221,
-2085744, -16804060, 25485262, 10043244, 6051072, 24338506, -29659970, -2207076, -4088272, 3167002,
-12130598, 12599287, 4850092, 6017786, 15569256, -1467268, -10554345, -18343806, 7124277, -6928856,
-699543, 4981625, -3658775, 7518877, 19937776, -12281996, 9296994, -5948530, -5701032, 15079630,
-1147830, 4710506, 14619532, 12072079, -5304822, -6099928, -12861280, -3237869, 63888, 6714108,
-7032472, 25233, 1667521, 1020055, -257698, 1411971, 1616518, 551903, 3969087, -1975148,
-592706, 2867428, 1582159, 843424, -1787780, 3855807, 2499671, 595927, -2197413, -3064459,
--7295539, 4365298, -300111, -647466, 2197413, -3484292, -430570, 2449742, 3333968, 5054640,
-2823941, 1405528, 1377611, -31675, 3642669, 15959562, 18682034, 4722854, 11509439, -7474854,
-5399311, 5340792, -30771830, 8739185, 9921374, 2146410, -9830106, -179852, -19006304, 22367652,
-13410499, -6964290, -7545184, -11044508, -5829881, 16203838, -16381005, -9309878, -2484102, -2670933,
--3555159, 2413235, -10855530, -10982768, -6535867, -8442832, -2327872, -10999411, -1551020, -7356742,
--24317568, -15431281, -6017249, -3780645, 3380139, 4139812, -146566, 796716, 7031399, 3473555,
-3599183, 17192218, 3571802, 5872831, 10672457, 23066122, 19641422, 1135482, -7761006, -14969572,
-13733695, -3269544, 37093484, 7594576, 16639777, -1702955, 2135673, -14618995, -563178, 12982612,
-7462506, 9872519, -11106785, -7239168, -14278619, -27031988, 15714212, -23839216, -2888366, 31737660,
-2151242, 12801150, 6081674, 9454297, 332323, -16924318, 16644609, -140660, -14932528, -13265543,
-551903, 5371931, 11223286, 3146064, -13077102, 845572, -2540473, 2823941, -5103495, -4149475,
-2401424, 2280628, -3994857, 564788, -1234266, -206158, -5280663, -1795833, -1624035, 2668249,
--1338956, -3106335, 4396973, -2469606, -957778, -7415261, -7951595, 206695, 296890, -3133716,
--2001455, 2829310, 2088965, -3181497, -5271536, -134755, 3604015, -22033720, 6556268, 8189966,
--14646375, -11459510, 302258, 8992588, 21531744, -1176821, -16472810, -16777216, -806917, -9528922,
-2871186, 2961917, -18401788, -16016470, -30109868, -8997420, -8685498, -20628728, -13856101, -219043,
--9489730, -6086506, -5344550, -1763621, -20244328, -10982231, -12422119, -6267431, 6318971, -17360258,
-1348083, 14296872, 17174500, -4101694, 4736812, 9709847, -16886200, 9488656, -7285875, 14977088,
--7242926, 1289564, -7810398, -1796370, 29952028, -6231461, 11301133, -21941378, -3574487, -98784,
--20698522, 19277424, 777926, -7175280, 13931800, -5775121, 3608310, 27377196, -10862509, -15115064,
-10382010, -2948495, -30819612, 12457553, -40867152, -22031034, 16432545, 12728136, 2653216, 8591008,
-71941, -297427, -30827664, -16663399, -7245073, 2743410, -17514876, 4238596, 2451890, 7156490,
--11432666, 605590, 8864812, 6645925, 5103495, 510564, 4202089, -10125385, -6416681, -6860674,
--1884954, -1477469, -882079, 8021389, -4153770, 4168803, 8099772, -4069482, 2506114, -6524056,
--4898410, -392990, 2087354, -5873368, 2537789, -7340636, 6358162, -2646237, -1277753, 181462,
-5703717, -1894618, 2277943, -5189394, 4565550, 3362960, 10537165, 2383170, 8653822, -8647380,
--2870112, -10269804, -5290863, -5088463, 41455024, 22702124, 32212, -21343304, 10965052, -22256520,
--18108118, 3293703, 18411988, 36403068, -5731634, 18405546, -6585259, 13065827, 22059488, 12342125,
-14096620, 7565585, -4139812, -18056042, -18693846, -5653251, -17667884, -5193153, -3253975, -3973382,
-14105209, -2404108, -36287104, 2130304, 8735963, 8380555, 21681532, -2238752, -43305080, 24617678,
--19390704, 6338835, -4259534, 14565845, 21189222, -23602456, -1676648, -11793443, -20605106, 14898705,
--10261751, -25345676, 9919764, 14803679, 24335822, 6452115, -3828963, 2664490, 19916838, -16052440,
-31457414, -9900436, -8808978, -2834679, 19154480, -19963008, 1802813, 2435783, -55599964, -8240969,
-17162690, -8000987, 2845953, 7714835, 3995393, -2728378, 4482335, 19055160, 22721450, -18025978,
-6460168, -13205951, -2294586, 22526030, -523986, -2348273, 788127, -1526861, -11724724, 3213173,
-734976, -6823630, -17345762, 227096, -4182225, 5282810, -8039105, -7474317, -9449465, 7959112,
-1787780, 4876936, 3871913, 325344, 2843268, -3839164, -7978439, 12108050, -1274532, -5879810,
--243739, -4241280, -2710661, -4896263, 561030, 1484448, -773631, 3349001, 8764418, -341987,
--2211371, -3615289, 738734, -4494147, -2608656, 5037997, -3929895, -3227668, -4796405, -11689827,
--6605660, 1611150, 7490960, -6149320, -1620813, 23759222, 15761456, -44174276, -25113748, 30255360,
-35066260, -18848464, -6386617, -49708340, -27475442, 7159711, -2254858, 6610492, -26422638, -16558173,
--18108656, 26825292, 39862128, -1940788, 10762114, -6491306, -3491272, -508954, 9155797, 17271138,
-4204773, -6154688, -3304977, -4059818, -23810762, -13509283, -24207510, -3224984, 7485055, -10183904,
-14939507, -11068668, -4140885, 23173496, -11233487, 13019656, 9057012, -4259534, -22323630, -16172699,
--13307419, 4012573, 41748692, 7336878, 22450868, 26443040, 20712480, 15316390, 13727252, -23044110,
-557272, -3783866, 30906048, 14667850, 18079128, 32246078, -15833397, -21718576, 7973070, 27270358,
--46231028, -850940, 3696356, 21490406, -37384468, -56369300, -10014790, 15775952, 3955128, 6372121,
-17681306, 1113470, -12483859, -18513994, 629750, 2525978, 3675418, 17046726, 25308632, 11949136,
-1895154, 75162, -257161, 2072322, 2562485, -6398428, 9350144, 1152125, -8513162, -15032922,
-1881196, -6413997, 3245385, 1628866, -1334661, 943282, -6201933, 6460168, -3319473, 4334696,
--6669011, -4336307, -11913702, -11782706, 580894, 6192806, -5259725, 12406013, 354872, 3690988,
--3721052, 13260175, 1130650, 6075231, -6542846, -3592203, -2071785, -8256538, -1600412, 8939438,
--15462419, 11917997, -596464, -11344619, -20089710, 7569880, -9793062, -19589882, 14097156, 27195196,
-8301635, -10292352, 16095390, 27361626, 10059887, 5752035, 1898912, -2889439, 12796318, -22608708,
-1321776, -32577326, 17467096, -26257282, -2249489, 14390825, 7828115, -14896020, 3157338, -17259326,
-35744864, 4825933, 11580306, 18846854, 39439076, -16088411, 12796318, -18672908, 6804302, 14410689,
-31707596, 7711077, -6462852, 32742146, 4380867, -2047089, -18720152, 1480153, 20369956, -6652368,
-19581292, -23859618, 37152540, 38789996, -46324980, -949725, -2922725, 10384157, -7890929, -5810554,
-19931870, -16546362, -49412524, 863288, 43948788, -34395172, 17418240, -7738994, -4385699, -20841328,
-48520244, -2856690, 8043937, 4738960, -32610076, 42531988, 3323231, 37859064, -74320648, 7368554,
--6967511, -22133040, -5995775, 13345000, -17284560, 11923366, -15574625, -10101763, -20505784, 26207890,
--9925669, 2060511, -21864604, 1236414, -16052977, -5199595, 7510824, -10808822, 5219996, 979253,
--14808510, 13704167, -6047314, 2209761, -6309844, 12466679, -9116605, 2202245, 891206, -3102577,
-16174847, -9028021, -11249593, -6249715, -12612171, -17340394, -8805757, 1996623, 1151588, -12404402,
--7154879, -8236137, -12230456, -9430138, 4307852, 3156801, -322659, 31423592, 3623879, -23854786,
-2324651, -48631376, -11252814, 2573222, -9577777, -38744364, -4443144, -25395604, -6479495, 23511188,
-5282273, 30788474, 12581570, 11690364, 7039452, -10356777, 24448028, -12377022, -411243, 11735461,
-5184563, -14969035, 12046846, 5113696, 28954522, 12102144, -5416491, 17726940, -14194330, 23897198,
-7969312, -26008174, -27096948, 14028437, 17266842, 7389491, 2630668, -12566001, -17427904, 5389647,
--17155174, -25451440, -8080981, -4191351, -23746874, -8613020, 8559333, -15958488, -26758184, 7614977,
-9582609, 1063541, -3504157, -1409286, -4762582, 9658845, 44889924, 9344775, -1739999, -1575179,
--16224776, -25622702, -11704860, 37314140, 39652212, 20608864, 3513283, 36392868, 17147120, -8051453,
--50709068, -38298760, -31942208, -60081760, -35391604, 8677445, 48642116, -21529598, 16255914, -24089934,
-7627862, -1827509, 16510391, -7698729, -3147137, -21474836, -12730820, -5105106, -19609746, 24811490,
--4160213, -12663711, -6416145, 2726767, -14281840, 10199474, 7051263, 16135655, 3339874, 4707284,
--16000364, -18096844, -2454574, -13309030, -8860518, -15546171, -23046258, 1415729, -6273337, 1647120,
-1299228, 17631378, 17052094, -6250788, -3804804, -7474317, 16457778, 11368242, 6960532, 2846490,
--3774203, 9842454, -13647795, -5070746, -2519535, -14995878, -29844118, 15709380, -903017, -9256728,
--4327180, 11241540, 20809654, -8856759, 26845156, -30748208, 24797530, -3078955, 33138358, -21462488,
-19086298, -31688268, 27536110, -25590488, -10979547, 38607996, 8742406, 31031676, 44069048, 4640176,
--3712999, -18345416, -1623498, 28175522, 6924024, -9837623, -31235686, 2772938, 5998996, 14811732,
-8836358, 12355010, 7494718, -18010946, -29070486, -12142946, 27879706, 10874857, 89247808, -28248536,
--24012088, 29298120, 45759120, 9785009, -907312, 12234214, 2916820, 14903537, -13605383, 5497558,
-21339008, 23886998, 15714212, 69562904, -8913131, -8756901, -4610648, 36002028, 21299816, -17926120,
-18656802, -164819, 6026913, -14702747, 31681290, -31439698, 2128156, 49242872, -36148592, 105441448,
--48360260, 50614044, 46093052, -45030584, -41500660, 47106128, 1951526, -26674968, -11483132, 26190710,
--71077416, 11497091, -8406862, -45336064, 29875256, -35396972, 2793876, 3105798, -14466524, -34901976,
-9557913, -2261837, -1618666, 7305203, -7329362, -11155104, 6315213, 15366319, -5650567, 2806224,
-11512123, -10246718, 16031502, 12949863, -25584046, 4266513, -14373108, 7132867, -1023276, 2709051,
--13089987, 6082211, 3422015, 591095, -6563247, 20447802, 4465692, -23622, 18881214, -12627741,
--12181064, 2760590, 8159364, 2802466, 9092983, 5477157, -26304528, -12828530, 6803765, -14626511,
-22668838, -8334921, 17365626, 23416698, -54388244, -22512608, 32749126, -69270304, -43543988, -28705950,
-48386564, 104359656, 28368796, -81051400, -18752364, -82812336, -43826920, 68365144, 40215928, 64305324,
-34746824, -47802988, -76973864, -57917096, -14361834, 35061964, 38951060, 24137180, 12911745, -19762218,
--84104048, -100249368, -22148610, 77622944, 137204880, 93750544, -17912162, -64039572, -92938264, -68208912,
--55897924, 536871, 21867826, 75608064, 79867064, -42942692, -27513024, -100368016, -94087704, -33239826,
-8920647, 97843112, 143433648, 64282776, -42763916, -150174064, -112003624, -81438488, 39250632, 86288040,
-53218404, 34382824, 28488518, -89395448, -16840566, -50761680, 18729278, -6604586, 52916680, 84186728,
-66115116, -77612744, -157918432, -117950000, 12825309, 92641368, -2596845, 128265976, 4997195, -32371168,
--38754028, -27695560, 46171, 92826592, 79344152, 15161771, -32029718, -10801843, -6158446, 48981416,
-53142704, 6958921, 2012729, -7789460, -1727651, -9720048, -13347685, -8048232, -5052492, 19104552,
-28598576, 24233816, -35183836, -38967164, -15545097, -15812459, -15970299, 36617280, 29138668, 38483444,
-10830297, -15658377, -28761248, -54448376, -35383552, 23714126, 48309256, 74257304, 50142668, 4832912,
--113850992, -99198712, -34306588, 41661720, 63581084, 86042688, 64103460, -4369593, -64869576, -94489280,
--92136176, -16065862, 99686192, 104180336, 52334712, -24212878, -69352984, -47449724, -32668058, 3652870,
--18343268, 36658084, 11662447, -30030412, -27979028, -99858, -45192184, -5798743, 6902013, 5000953,
--3766686, 943819, -15080704, -2094333, -1615982, 7636989, -5088463, 20720532, -5377299, -4220342,
--5665599, -6762963, 13211856, 3533684, -6116571, 20057498, 1454383, -36208184, -17809082, 9718974,
-17793512, -6199249, 2317672, 24473260, -438624, 3164317, -20016158, -9221295, 6383395, -4594542,
--4318053, -2887292, 16492674, 5701569, -6226092, -19527068, -7526930, -1345399, -17450988, 1473174,
--19955492, -13680008, -9200357, -18097382, 28196998, -5268851, -12523051, 11640435, -32749, -27776090,
--1451162, 27304718, 22485228, -13013751, 17446158, 2683818, 16651588, -18631568, -26987964, 10184441,
-12127377, 10320270, 9292699, -10477573, 10240813, -20478404, 13871134, -27852862, -24160264, 17733920,
--14071923, 12028056, 16976932, 992137, -12853763, 3950833, 4910222, -1331440, -913217, -680752,
-11112691, -9436043, 7269769, -9853192, 12998719, -11491185, -5982353, 4486094, -3740917, -654446,
-5227512, 977642, 3542811, 9652939, -7752416, -4944044, 5823976, 3157875, 11465952, -9443559,
-3294240, -1365800, -6926709, -7369627, 3058017, 1559073, -6849399, -10676752, 3155190, -129386,
--1799591, 6377490, -9803263, 11251741, 3605625, -10240276, -10946261, 8999567, -15444166, 10402411,
--1590749, 7114077, -632971, 2251100, 13797582, -22073984, 44296684, 67837400, -8949101, -24950538,
--21620866, 62552976, 28133110, 60542932, 32499480, 199179, -28156732, -6153078, 15327128, 28496572,
-13487808, -13035763, -3334505, 13675176, 19892142, 2587718, 4388920, -13870597, 2452426, -6640020,
-9009768, 10327786, 26342108, 22887880, -12205223, 2087891, -13688598, 3648575, 11959336, 18133888,
-1224603, -8468602, -144418, -15389405, 12819941, -3466039, 5218922, 12183748, 132070, 16193637,
--8045011, -4307316, -3893388, -16443282, -10045929, -25135222, -4910758, -28676960, 1831804, -9796284,
-23547158, 3626026, 6833293, -22149684, 9259413, 265751, -10052371, 16422344, -8956081, -4475356,
-3896072, 10896332, -1460289, -5806796, 36522792, 12045236, 8316131, 13886703, -10104984, -379568,
--3487514, 19290308, 26477400, 25719874, -15460809, -16596291, -2464238, -6533719, 6511708, 17372068,
-17740362, 904628, 9855339, -1091995, -2941516, 5982890, 11231876, -977642, 8777839, -7410429,
-1414118, 246961, 2918430, -2467996, 9841918, 5963025, -1290101, -2698313, 2815351, 1898376,
-10707353, 734976, -6713034, -6908992, -4284767, 3206193, 3473555, 7137162, -8770860, 1311576,
--2596845, 5763846, -4447439, 8083666, -2964601, 3103651, -4753455, -3578245, 2235531, -6794639,
--257698, 7823820, 1622424, -3014530, 407485, -25323128, -54880020, -7439420, 72568840, 111815176,
-93918584, 74171400, -4971962, 8696772, -54465556, -61829812, -100730944, -58034136, -63427540, -20010790,
-8018704, 43852688, 31273268, 95498600, 83205864, 27451284, 5848672, -14845554, -32417340, -51346872,
--18752900, -52631604, -13973139, -25620016, -16510928, -12295418, 2820183, 884226, 17891760, 25799332,
-39293044, 42504608, 51103132, 44050796, -5253819, 4270271, -492848, 8262980, -25221122, 10198400,
--26960584, -67563592, -33109902, -50574312, -84902376, -24919400, -7330973, -34438660, 11716134, 26110716,
-59379532, 69900056, 103255848, 65157340, 53180284, 52785148, 32907502, -10234907, 5427765, -52074332,
--44785772, -75412112, -89569392, -103521600, -75307960, -58087824, -5986111, -2818036, 8280697, 30244086,
-51274392, 92231736, 91291680, 90814400, 72895792, 31228708, 47057808, 7371775, -23517094, -35527432,
--83923128, -76384920, -67572720, -58339616, -46645492, -28248000, -17079474, -5851893, 4276714, 28294170,
-33622076, 44224204, 36689220, 52422224, 47517908, 31071940, 35840428, 24063628, -6462315, -19399294,
--22342420, -53430468, -46277736, -41712184, -31204012, -17013976, -563714, -2029909, 13735305, 21064668,
-16441672, 19546934, 12535936, 3952444, -333397, 5696737, 1409823, -6507413, 7129646, 8545911,
-682363, 4620848, -1197759, -1849520, 878858, 3223910, -33286, -7184944, -9549323, -9382356,
--10842108, -7331509, -2103460, -2444373, 3313031, 1362578, 1064078, 3798362, 4400194, 3513820,
-4752382, 7309498, 6298570, 3618510, 4395362, 1596654, -1280437, -325881, -1672353, -2568391,
--923418, -1391033, -412854, -525597, 149787, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0, 0, 0, 0, 0, 0, 0, 0, },
-{
-7398618,
-2813204, -3714073, -630286, 2575907, -455267, 2740726, -6771016, -4831838, -1181653, -5706938,
-2391760, -1274532, -627602, -3857418, -1717450, 3578782, 3580929, -1407676, -1089311, -2382633,
--5472325, 6096706, 3630858, 150861, 643171, -341450, 178778, 4908074, -2490544, 894964,
--7861401, -6454262, -1612760, 576063, -5478231, -1026497, 1949378, 462246, 99858, -2760590,
--2114735, 5132486, -2380486, -2204392, -721555, -737124, 2267206, -1200443, -3367254, -130997,
-2955474, -4220879, 183073, -4520990, 317828, -3315178, 5005785, -299037, -5273146, -782221,
--511638, 613107, -7530689, -927176, 627065, -5051956, 2318209, 91268, -5801964, 2622078,
-3568044, -3114925, -3554086, -6396280, 3340411, 1908039, 5917928, 2898566, -879931, 1127966,
--821413, 1771137, 1881733, 4059281, 1039382, -1803349, -63351, 453119, -133681, 2307471,
-604517, -831076, -1134408, 1107565, 907312, 1720671, 873489, 650688, 1046898, 920734,
-391916, 558346, -111132, -332860, 373125, 215822, 443992, -279710, 523986, -54224,
--5474473, 2469606, -6828998, -1914482, -948651, -3466039, 3300682, 7637526, -3120294, -1031866,
-369367, -3177202, 2207613, -490700, -2563559, -4384088, -2313914, 6886980, 6673306, 3731253,
-7750806, 4542465, 2473901, 7275138, -4518843, 1589675, 3128347, -159451, 1268626, -2181307,
-1409823, -10103374, 228170, -602906, 3656091, -2300492, -1268626, -721018, 2804614, -3210488,
--501437, 891206, 1979980, 1896228, -522375, -3442416, 663572, 1181653, 2486249, 1848447,
-2889439, -3237332, -1896228, -606664, -5696737, -693100, 1534377, 4894115, 5500780, -768262,
-3041374, 2235531, -391379, 2020245, 2445447, 3528316, -1402307, -63351, -2637110, 443992,
--2269353, 1560147, -3369402, -3216931, 1941862, -34360, -6310381, -607738, -4720169, -1300301,
--652298, -813896, -6272263, 594316, 2243047, -1868311, -1773822, 1075352, 817118, 446140,
--1224066, -3392487, -151934, -1490891, 1308354, 38655, 113280, -385473, -1375463, -1559073,
--1733556, 119185, -736587, 757525, -1076963, 431107, 289373, -1008244, 3221, -1121523,
--378494, 62277, 31675, -996969, -215285, -170188, -6911676, -6536404, 2436320, -779000,
-5430450, 5437966, 459562, 115427, 10492068, -2851322, -238908, 8788040, 374736, -5109938,
--7445326, 5390721, -2171643, 13422, -4607963, 1410360, -3288334, 3652870, 16378321, -5999533,
--4799626, -5927592, -6377490, 1142461, -5199058, -12923557, -315143, 1266479, 41339, -5156108,
--1069447, 4161823, -5258114, -3136400, 7660074, 2488934, -1938641, -1854352, 4935991, -2474975,
-3536369, 3190624, -6974490, -4664872, -4125853, 4534949, -3533148, -2141041, -1916092, -2360085,
--357019, -4745402, 48318, -1458678, 1173600, -689342, -10219875, 4705674, -5710696, 4473209,
-853088, -8447664, 1716913, 5576478, 1742683, 9313637, -3948149, 467615, 1103270, 2142652,
-3359201, -3740380, 1408749, 1184337, -5430450, 7405598, 545461, -1111323, 3174518, -1126355,
-1427540, -1419487, -2834142, -256087, -1822140, 2390149, -630286, 404264, 2914672, 944893,
-1112397, -710280, 1586990, 216896, -423591, 979253, 2118493, -1597191, 139050, -1682554,
-1009317, -595390, 3058554, -4300873, 2004139, 2246268, -2377801, 1107028, -1190243, -9346923,
-2860985, 8866960, 7308424, 8319352, 1417876, -1732482, -7130183, -3670050, -3367254, -2624762,
-7308424, 10249403, 702764, -636729, 7237557, -11733851, 199179, -887985, -244813, -3778498,
--3999688, 4365298, 5270999, 242129, -1213865, 2191507, -5770289, -4268124, 4354560, -4711579,
-9117679, 8373039, 1347546, 5185636, 4275103, 951335, -3790846, 1377074, -246961, -6389838,
-6229850, -478889, 2888903, 5182415, -6117644, -2278480, -7261179, -1552094, 1602023, 6849399,
--6998649, -2680597, 5022965, -987843, -4496294, 7507066, -6237367, -12916577, 2137820, -7239704,
--3323768, 3618510, -3195456, 708133, 721555, -3090766, 5494874, -4997732, -5817533, -6842957,
--821413, -2922188, 402116, 1922535, -4289599, 1202054, 1158567, 394600, -2073932, 1203128,
-848256, 2979634, 379031, -849330, -2042794, -1196685, -938987, -436476, -759672, -1150514,
-318901, 647466, 782221, 345745, -443992, -903554, -450972, 1523640, -1527398, -1452236,
--512712, 41339, -192200, 1185948, 1248225, 1305133, -818191, 513785, 207232, 566936,
-2841121, -1412507, 181999, -11762842, 2518998, 11068131, 907312, 1724429, 3380676, 10368051,
-1440425, -9990094, 11094437, 4859219, 4020626, 6736120, 5871757, 40802, -2050310, 6354404,
-4887673, 1658931, -4551592, 5527086, 2629594, 8185134, 9579925, 3631932, -2328946, 216359,
--41339, 3980898, 12155831, 7204808, -6700149, 11737609, 501437, -1444720, 1583232, -8654359,
-9651865, -1279900, 207232, -1147830, 2487323, -1297617, 5002027, -6977711, 9862319, 8382703,
--276489, -1561758, -5426691, -10408853, -3534758, 4135517, -2385318, -3901978, 5562520, 6486475,
--4350802, -3905199, -13313862, -4627828, -1611150, -646393, -14901926, 7614440, 878321, -8894340,
--7272990, 2458869, -3427384, 913754, -2166274, 485331, -3889630, -861141, -3464428, 2541547,
-5034776, -1403917, 3841848, 457414, -1534377, 4477504, 1602560, 233002, 3729105, -418222,
--1635309, -2308008, -2567854, -2717641, -2546379, -3178276, -2285460, 175020, -1241246, -2981244,
--1432909, 314606, -592706, -1100049, 687732, 1228361, 632434, -1351841, -1903207, -2405182,
-307627, -2280091, 2167348, -1245004, -1276142, -1228361, 91805, -871342, 5510980, -6960532,
--55835, 71941, 258235, 11242614, 6184753, -97711, 14018773, 6475200, 12658342, 3018825,
-4289062, 13502840, -5328981, -8999567, -5679021, 12625593, 3105798, -7122667, 9648644, -2635499,
--5602785, 8607651, 20452634, -5272609, 1051193, 3264712, 3933653, -5313412, 703838, 11249056,
-1238561, 13832479, -2978560, 14854144, 10544682, 3559454, 8847633, 5580237, -5247377, 3694746,
--1315871, -1321776, 1463510, 1009854, -914291, 3919695, 2764348, 9598178, 6519761, -8021925,
-2855617, 3614215, -5865852, 354335, -13913010, -18104898, 7311108, -4637491, -11766600, -2537789,
--6302328, 7799661, 1782411, -3675955, -8859444, 6997039, -6388227, 4269198, -7176354, 1067299,
--2840047, 10972031, 2128693, -4281546, 4310000, -9354439, 8608188, 1389422, -7955890, 368830,
--740345, -2308008, -872415, 1147830, 2474438, -2339684, 4021163, -869194, -1444720, -1781338,
--1285269, -3463891, -179852, -1229971, -3255048, -1240172, 1313186, -2081985, 2254858, 332323,
--1086627, 571768, -2122251, -413927, -1446867, -192200, 44560, 107911, 1218697, 1344325,
-1615982, 71941, 879931, -70867, -7922604, 1064078, 321049, 2102387, -4827007, 5466420,
-6038724, -651224, -4014721, -13911399, -11913702, -9175661, 4292283, 1243930, 2233920, -11404212,
-7247221, 5103495, 9015136, -9776419, 9297530, 7135552, -5594732, -4655745, -2815351, 9450002,
-6540699, -4150549, 959388, 14297946, 7268159, 3695283, 8308614, 5698348, 2254321, -4725538,
-1098438, 665183, -1985886, -5245766, 12724914, 5937256, -11786464, 7996692, 7975755, 7920457,
-6233072, 1682554, -7333120, 236223, -948651, 11083700, 1505386, 4962835, 10088878, -1787243,
--10938208, 2454574, 5947993, 11201275, -14872935, -8392366, 4127464, 176094, 1417876, -8813273,
--2139968, -8545374, -1146756, 4093104, -2773475, -4662187, -5649493, 2439005, -1365263, -2820183,
--6995428, 285078, -9381282, -148176, -865973, -4750771, -5264020, 6082748, -2032593, -1480690,
--2959233, -5779952, 2108829, 2829847, 1992865, 2222109, 1644973, -3179350, -1689533, -947040,
--734439, -2986076, -5604396, -2481417, -87510, -1890323, -111669, -3002182, 321586, -1614908,
--1098975, -2173254, -2417530, -1268089, 2536178, -1758789, -803159, 404264, 1063004, 686658,
--1144609, 1914482, 2885144, 2882460, -724776, 5284958, 686658, -9248138, 9418863, 6054294,
--2816962, 3745748, 5673652, -6251325, -2115808, 24105504, -789737, 9405978, 6573985, -20106890,
--10696616, -1123671, -848793, -225486, 11422466, 2575370, -5562520, 11818139, 7251516, -1465658,
--1941325, 3781182, -1924145, -4159139, -8966818, -10610180, 5876589, -2314451, -5007932, -503048,
--16554415, -3060164, 1091459, 9152575, -10938208, -3143916, 1415192, 755914, 2384781, 837519,
-11672647, -13580150, -4529580, 3051038, -443455, -8002598, -1695438, 10617159, 9104794, 7903277,
--2171643, -13518410, -6183679, 4934918, -1544041, 9131100, -532039, -142808, -6755984, -4150549,
-7943542, -9679246, 6652905, 5239860, -7006166, -3436511, -1629403, 1167157, -7543037, 3717831,
-2612414, -3656628, -1154809, -10241886, 3730716, 8013872, 11384348, 1053341, 3061775, 5451924,
-1673964, -8934606, 6178848, -2095944, 1027034, 89121, -2879776, -3037616, -1654099, 4250944,
-758599, 3564823, -368830, 642098, -4985920, -1635309, -2283849, 3848828, -364535, -1555315,
-2633889, -1851131, 2069101, -1151051, 357556, -4060355, 991601, -888521, -835371, -2576444,
-974958, -343597, -2309082, -4196720, -930934, 502511, -1692754, 1810329, -419833, -18180596,
--1197759, 2569464, 12206834, 1600412, -567473, 7492571, -5442798, 16170552, -16139413, -1471026,
--3506841, 2764348, -847719, -1242319, 4068408, -2954401, -5526549, -3578782, -3290482, -9576703,
--1585917, 6928319, -1634235, -4216048, 10147934, -87510, 12218645, -11936251, -6935299, 15265388,
--1601486, -854162, 850940, -9494025, -1163936, -11870216, 3447248, -14262513, -410706, 10726681,
--3526705, 7333657, 9503689, 5623186, 7474317, -9621800, 9616969, 1146756, -25310242, -4173635,
-3636227, -1990181, -2851322, -10758356, 8505109, -9157944, -1853278, -10395431, -9862319, -15130633,
-13530221, 174483, 15776489, -7794829, 11884711, 15880642, -10414222, 12956306, -15870441, -13090523,
--14368276, -4904853, -10131828, 3325379, 4738423, -470299, -1892470, 4295, -11365557, 976031,
-104153, 6640557, 2570001, 2656437, 4640712, 2728378, -2485712, -4832, -4634807, -2656437,
-106300, 1984275, 67109, 2231773, -1530082, 2392834, -705985, 1315334, -7039989, 531502,
-2676302, 2148021, 3904662, -2115808, -3106335, -4014184, -99321, -241592, -3290482, -3471407,
-374199, -467078, 606127, 137439, -1041530, 1984275, 5607617, -1252520, -1299228, -590021,
--1517197, 5153961, 215285, 729608, -1724966, 3114388, -3245922, 11993696, 20028506, 2945811,
--5415954, -10795400, 6681359, 18581640, 106300, 5370857, 886374, 7451769, 5025649, 5732708,
-10017474, -12103755, -1040993, -4459787, 15827491, 11863773, -657667, 18370648, 9598178, 1700807,
--17302812, -8478802, -13214541, -6011344, 1249299, 5012764, -4796405, 763967, 18533320, -3420405,
--72478, 1022202, 19043884, -11623255, -4800163, -4691715, -1969779, -11372000, 13087302, 955093,
-8746164, -13656922, 1775432, -1423245, -8272107, -3179350, -15247671, 4823785, 188979, 3260954,
--1960653, -849330, -17687750, -5908802, 6769942, 11247982, -3345780, 2993592, 23278186, -1450625,
-1251446, 4361540, 10435697, -9841381, 2168422, 11912629, -7131793, 8676908, 2420214, 9039832,
--12039867, -6008659, 1512902, 2794950, 5938866, 6905771, 6445672, -4436165, 1791001, 4098473,
-7820599, 12406550, 5616207, -5819144, -2843268, -4570919, 1884954, 2653753, 5273683, 4935455,
-2847027, 5210332, -5680094, -1081258, -5791227, 4926865, -6619082, 6626598, 4633733, -4909685,
-2808372, -573378, -3126199, 760209, 884763, -1753420, 1393180, 8210904, -363998, 4295,
--5146982, 2596845, -333934, -147640, -4683662, 4702989, -4000225, 1476395, 1912334, 3726421,
--521839, -1767379, -10999948, -16581795, 4552129, -1715303, -16881906, 4677220, 1620813, 15308337,
-13403519, -12427488, -15064598, 3427921, -11517492, -5960878, 405338, 22770842, 256624, -2822867,
--20361366, -10101226, -1819456, -15075335, -23065584, 15842524, -5993090, -7202124, -1382980, 17176112,
--5414343, 1933272, -3488587, -3375844, -10000294, -5243618, 1616518, -23967528, -15505906, -4381941,
--8819715, -8077760, -2858301, -9368934, 8121783, 3799972, 2573222, -5690295, 4088809, -34624952,
-32208496, 18988050, -3309809, -4342749, 18103824, 1151588, -10894185, -15399605, -2005213, -5366562,
--6471979, -9242770, -9533754, 11924977, 11041824, -4961761, 24297166, -13474386, -11141682, -9973988,
-32749, 8002061, -28521804, 8476118, -9035001, 14947023, -16170015, 7137162, -1485522, -5415954,
-11130945, -20936354, 19710142, 1171989, -277025, -4396436, 570157, -239981, -9972914, 2005213,
--2764348, 5252208, 6631967, -6043019, 3032247, 4286378, 9312563, 382252, -3040837, -473520,
--832150, -3656628, 2730526, -1400696, -2230699, 2428267, -3695819, -1129040, 906775, 2727841,
-3200288, -7396471, -5692979, -4888210, 848256, 3095061, 4832, 2057826, 1742146, 5035313,
-2610266, -3996467, 3762928, 794032, 16538845, 1338956, 38529076, 12519830, -760746, 1628866,
--14881525, -19330038, 24067386, -7153268, 2741800, 31899796, -8306467, -1573569, -6818798, 24867324,
-4799089, -10327249, 14707579, -5379984, 21840982, 11426224, 5444408, 3198140, -2415382, -8396661,
--2724083, -2306398, -23408646, -5920613, -3773666, 12909061, -7254200, 2400887, 4300873, -16813186,
--24991878, -934692, 21563958, -1484985, 19153944, -3364033, -26796300, -10417980, 1206349, 6024229,
-4831302, -21835076, 168577, -6285685, 15806017, -16216723, 19984482, 29532732, 19161460, -6071473,
-3554622, 11883638, -4280472, 23127862, 26796300, 23600308, 7701950, 25882546, -914291, -10501732,
-3321084, -13615046, -17154636, 9290551, -7383049, 21140366, 10915123, 5566278, -7318088, -26153130,
--23701778, 16550656, -10518912, -21174188, 14054207, 28098750, 16879222, -9087077, 13391171, 8195872,
--2977486, -6713571, 7924752, -10069014, -3096135, -1133871, -6956237, 853625, -1549410, 5735929,
-3447248, -1406065, -9246528, 5060009, 4594005, 3152506, -2057289, 237297, -8654896, 630286,
--164283, 2165201, 1935957, 159451, 5028870, -1846836, 6987375, 7923141, 1977833, 6422050,
-500901, -5196374, -12269648, 2691334, 195958, 2556579, -8739185, -19440632, 11376831, 14249628,
--226560, 6978785, 4683125, 6906845, 5720897, 2640868, -1551557, 3381213, -4082903, 7413114,
--13218836, -36822904, -14781130, 20212652, 1165547, -5989869, -12335146, -48855, 16984448, 21711060,
-4622459, -13285944, -2347737, 17376364, -20996484, 2033130, -2616172, 15556372, 17717276, -14171245,
-26881126, 5252208, 1070521, 38012072, 186831, -11866995, 13296145, -6294275, 1896228, -8061654,
-2820720, 25285010, 2910377, 32197760, 13566191, -28009630, -30719754, -6656126, 7989713, 17226576,
--23819888, -8364986, -3442953, 28999082, 26505316, -22632868, -875100, -13785771, 8751533, -4716411,
-30305290, 457414, -6654515, 19951734, -4038880, -23456428, -11859478, -3790309, 24443196, -21597780,
-13128641, 38024420, 17992154, 25543782, -6802155, 10424959, -6852084, -15698642, -15131707, 8032663,
--10749766, -658204, -3843996, 6997576, -150861, 15489800, -3435974, -7026567, -2491618, -3019362,
-3823595, -2374043, 5970542, -10502806, 7847442, -6919729, -3157875, 2257542, -2741263, -3217468,
-4976257, -4563403, -1717987, -1297080, -3787088, -12921409, -7282654, -1177358, -1467805, -3754875,
--5036386, -1109175, 3937948, -2175938, 2349347, -1911261, -48855, 3045132, -9907416, 1202591,
--1323924, -7447474, -17706540, 13146895, 19843822, 16188805, -28328530, -13806709, 18223010, 54374284,
-3524558, 11644730, -15629386, 4714801, -564251, -2777233, -14659797, 4283156, -5008469, 25975962,
-21001854, -27604292, -11901891, 28723668, 14928769, 10177999, 3313031, 15414638, 18474802, 5581310,
-11147588, 9820443, -12970264, 1717987, -12693776, -6036040, 3821984, -2775623, 2462627, -11403675,
--9755481, 7524783, -1789391, 10465225, 8708583, -25547540, 19199040, 3548180, 15517717, -17320530,
-10096931, 15140833, -11615739, -19748260, -19352586, -21846888, -21328270, -18146236, 6762426, 31751620,
-8811125, 9626632, 15506979, 832150, 80531, -12704513, 21788906, -27391154, -54125716, 18441516,
--12057584, 2142652, -45846628, 11192685, 15124727, 2291902, 9683541, 7556995, -6382859, -12055973,
--17862768, 5582384, 4575214, -14222784, 10740103, -5556077, -23147190, -13154948, 270583, -4474282,
-3052648, 1358820, 7583302, 3033858, 1840930, -702227, 6148246, -3668439, -6978785, -13674102,
--7472170, -8926553, -2421825, -5041755, 5560909, 7340099, 6284611, -10956462, -269509, -4762045,
-690416, 5903433, 2501282, -9721658, -16885128, -1766305, 1374926, 1189169, -5597953, -2913062,
--5875516, -1598802, -7871065, -9251360, 6471442, -9050570, 4286378, 1190243, -3856344, -2076617,
-6243809, -5339718, 2815351, -6425808, 12955232, 9335111, 12373801, -17663590, -9186935, -2483028,
-11310796, -23572928, 39220032, 18641232, -3214246, 21401286, 12845710, 20395190, -10735808, -13726179,
--13350369, 24702504, 8761196, 4461934, 22265648, -19505058, -63164472, -4206921, 4205310, 7514046,
--35561256, 27550068, 20020990, -38170448, -29395830, 941672, 15718507, 1335735, 8924405, 20235738,
--5377836, 12564927, -18450106, -21112448, -16843252, -21932250, -34155192, 9514963, 3531000, -22924924,
-30259118, 11765526, -7399692, -7213935, -17869212, -13380434, -31133144, -16909286, 11068668, 27624156,
--10525354, 2771328, 11363410, -24500640, 17680232, 23939074, 3529390, -6134824, 20459614, 5603322,
-2304787, -14666240, -17151952, -1257889, 30589830, -9407052, -28225452, -496069, -35967128, -37468220,
--39023000, -18714246, -20589000, -13150653, 16783122, -2357937, 15087683, -3118683, -4981625, -14121852,
--3795677, -4162897, 8103530, -6207839, -9025337, -1788317, -3542274, 1322313, -13158706, 2486249,
--6066642, -5273683, 6960532, -6310381, -2102387, 2272038, -4685810, 10243497, -6499896, 1526861,
-16632798, 2032056, 9716827, -3725884, -5842766, 16851304, 2524904, -8943196, 325881, 159451,